diff --git a/docs/docker.md b/docs/docker.md index 7a8c69623a8..c8eac606e89 100644 --- a/docs/docker.md +++ b/docs/docker.md @@ -3,7 +3,7 @@ if you have the rights you can download Matchbox as a docker container: ``` -docker pull europe-west6-docker.pkg.dev/ahdis-ch/ahdis/matchbox:v3.5.1 +docker pull europe-west6-docker.pkg.dev/ahdis-ch/ahdis/matchbox:v3.5.2 ``` ## Configurable base image: diff --git a/docs/matchbox-engine.md b/docs/matchbox-engine.md index 087d4e19f60..c117962e675 100644 --- a/docs/matchbox-engine.md +++ b/docs/matchbox-engine.md @@ -45,7 +45,7 @@ You can add the matchbox-engine dependency in your `pom.xml`: health.matchbox matchbox-engine - 3.5.1 + 3.5.2 ``` diff --git a/matchbox-engine/pom.xml b/matchbox-engine/pom.xml index 3f9a4ffa2b3..8090b4d4453 100644 --- a/matchbox-engine/pom.xml +++ b/matchbox-engine/pom.xml @@ -6,7 +6,7 @@ matchbox health.matchbox - 3.5.1 + 3.5.2 matchbox-engine diff --git a/matchbox-frontend/package-lock.json b/matchbox-frontend/package-lock.json index a2314f24342..1f9d44a84ad 100644 --- a/matchbox-frontend/package-lock.json +++ b/matchbox-frontend/package-lock.json @@ -1,12 +1,12 @@ { "name": "matchbox", - "version": "3.5.1", + "version": "3.5.2", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "matchbox", - "version": "3.5.1", + "version": "3.5.2", "license": "MIT", "dependencies": { "@angular-devkit/build-angular": "^16.1.4", diff --git a/matchbox-frontend/package.json b/matchbox-frontend/package.json index 5939ab916ab..d71bafe547e 100644 --- a/matchbox-frontend/package.json +++ b/matchbox-frontend/package.json @@ -1,6 +1,6 @@ { "name": "matchbox", - "version": "3.5.1", + "version": "3.5.2", "license": "MIT", "scripts": { "ng": "ng", diff --git a/matchbox-server/pom.xml b/matchbox-server/pom.xml index 3b59a01b47a..4393bbf20dc 100644 --- a/matchbox-server/pom.xml +++ b/matchbox-server/pom.xml @@ -5,7 +5,7 @@ matchbox health.matchbox - 3.5.1 + 3.5.2 matchbox-server diff --git a/matchbox-server/src/main/resources/static/index.html b/matchbox-server/src/main/resources/static/index.html index e97295c3cb4..68e829f5c6f 100644 --- a/matchbox-server/src/main/resources/static/index.html +++ b/matchbox-server/src/main/resources/static/index.html @@ -11,5 +11,5 @@ - + diff --git a/matchbox-server/src/main/resources/static/main.84ea47fd48af7504.js b/matchbox-server/src/main/resources/static/main.84ea47fd48af7504.js new file mode 100644 index 00000000000..567587f4f4a --- /dev/null +++ b/matchbox-server/src/main/resources/static/main.84ea47fd48af7504.js @@ -0,0 +1 @@ +(self.webpackChunkmatchbox_formfiller=self.webpackChunkmatchbox_formfiller||[]).push([[179],{9473:(Se,X)=>{"use strict";Object.defineProperty(X,"__esModule",{value:!0}),X.Ucum=void 0,X.Ucum={dimLen_:7,validOps_:[".","/"],codeSep_:": ",valMsgStart_:"Did you mean ",valMsgEnd_:"?",cnvMsgStart_:"We assumed you meant ",cnvMsgEnd_:".",openEmph_:" ->",closeEmph_:"<- ",openEmphHTML_:' ',closeEmphHTML_:" ",bracesMsg_:"FYI - annotations (text in curly braces {}) are ignored, except that an annotation without a leading symbol implies the default unit 1 (the unity).",needMoleWeightMsg_:"Did you wish to convert between mass and moles? The molecular weight of the substance represented by the units is required to perform the conversion.",csvCols_:{"case-sensitive code":"csCode_","LOINC property":"loincProperty_","name (display)":"name_",synonyms:"synonyms_",source:"source_",category:"category_",Guidance:"guidance_"},inputKey_:"case-sensitive code",specUnits_:{"B[10.nV]":"specialUnitOne","[m/s2/Hz^(1/2)]":"specialUnitTwo"}}},1995:(Se,X,g)=>{"use strict";X.R=void 0;var p=g(9473),C=g(4864);class b{constructor(v){if(0===p.Ucum.dimLen_)throw new Error("Dimension.setDimensionLen must be called before Dimension constructor");if(null==v)this.assignZero();else if(v instanceof Array){if(v.length!==p.Ucum.dimLen_)throw new Error(`Parameter error, incorrect length of vector passed to Dimension constructor, vector = ${JSON.stringify(v)}`);this.dimVec_=[];for(let a=0;a=p.Ucum.dimLen_)throw new Error("Parameter error, invalid element number specified for Dimension constructor");this.assignZero(),this.dimVec_[v]=1}}setElementAt(v,a){if(!C(v)||v<0||v>=p.Ucum.dimLen_)throw new Error(`Dimension.setElementAt called with an invalid index position (${v})`);this.dimVec_||this.assignZero(),null==a&&(a=1),this.dimVec_[v]=a}getElementAt(v){if(!C(v)||v<0||v>=p.Ucum.dimLen_)throw new Error(`Dimension.getElementAt called with an invalid index position (${v})`);let a=null;return this.dimVec_&&(a=this.dimVec_[v]),a}getProperty(v){return this["_"===v.charAt(v.length-1)?v:v+"_"]}toString(){let v=null;return this.dimVec_&&(v="["+this.dimVec_.join(", ")+"]"),v}add(v){if(!v instanceof b)throw new Error(`Dimension.add called with an invalid parameter - ${typeof v} instead of a Dimension object`);if(this.dimVec_&&v.dimVec_)for(let a=0;a{"use strict";X.DP=function c(s){const l=s&&s.config;if(l){if(l.length&&s.data){const d=b(l);return s.data.map(v.bind(null,d))}return s.data}return s};function b(s){return s.map(l=>Array.isArray(l)?l:[l])}function v(s,l){let d={};return s.forEach((r,u)=>{let h=d;for(let m=0;m{"use strict";Object.defineProperty(X,"__esModule",{value:!0}),X.Prefix=void 0,g(9473),X.Prefix=class p{constructor(b){if(null==b.code_||null==b.name_||null==b.value_||void 0===b.exp_)throw new Error("Prefix constructor called missing one or more parameters. Prefix codes (cs or ci), name, value and exponent must all be specified and all but the exponent must not be null.");this.code_=b.code_,this.ciCode_=b.ciCode_,this.name_=b.name_,this.printSymbol_=b.printSymbol_,this.value_="string"==typeof b.value_?parseFloat(b.value_):b.value_,this.exp_=b.exp_}getValue(){return this.value_}getCode(){return this.code_}getCiCode(){return this.ciCode_}getName(){return this.name_}getPrintSymbol(){return this.printSymbol_}getExp(){return this.exp_}equals(b){return this.code_===b.code_&&this.ciCode_===b.ciCode_&&this.name_===b.name_&&this.printSymbol_===b.printSymbol_&&this.value_===b.value_&&this.exp_===b.exp_}}},8902:(Se,X)=>{"use strict";Object.defineProperty(X,"__esModule",{value:!0}),X.PrefixTables=X.PrefixTablesFactory=void 0;class g{constructor(){this.byCode_={},this.byValue_={}}prefixCount(){return Object.keys(this.byCode_).length}allPrefixesByValue(){let b="",o=Object.keys(this.byValue_),v=o.length;for(let a=0;a{"use strict";Object.defineProperty(X,"__esModule",{value:!0}),X.default=void 0;var n=new class g{constructor(){this.funcs={},this.funcs.cel={cnvTo:function(C){return C-273.15},cnvFrom:function(C){return C+273.15}},this.funcs.degf={cnvTo:function(C){return C-459.67},cnvFrom:function(C){return C+459.67}},this.funcs.degre={cnvTo:function(C){return C-273.15},cnvFrom:function(C){return C+273.15}},this.funcs.ph={cnvTo:function(C){return-Math.log(C)/Math.LN10},cnvFrom:function(C){return Math.pow(10,-C)}},this.funcs.ln={cnvTo:function(C){return Math.log(C)},cnvFrom:function(C){return Math.exp(C)}},this.funcs["2ln"]={cnvTo:function(C){return 2*Math.log(C)},cnvFrom:function(C){return Math.exp(C/2)}},this.funcs.lg={cnvTo:function(C){return Math.log(C)/Math.LN10},cnvFrom:function(C){return Math.pow(10,C)}},this.funcs["10lg"]={cnvTo:function(C){return 10*Math.log(C)/Math.LN10},cnvFrom:function(C){return Math.pow(10,C/10)}},this.funcs["20lg"]={cnvTo:function(C){return 20*Math.log(C)/Math.LN10},cnvFrom:function(C){return Math.pow(10,C/20)}},this.funcs["2lg"]={cnvTo:function(C){return 2*Math.log(C)/Math.LN10},cnvFrom:function(C){return Math.pow(10,C/2)}},this.funcs.lgtimes2=this.funcs["2lg"],this.funcs.ld={cnvTo:function(C){return Math.log(C)/Math.LN2},cnvFrom:function(C){return Math.pow(2,C)}},this.funcs["100tan"]={cnvTo:function(C){return 100*Math.tan(C)},cnvFrom:function(C){return Math.atan(C/100)}},this.funcs.tanTimes100=this.funcs["100tan"],this.funcs.sqrt={cnvTo:function(C){return Math.sqrt(C)},cnvFrom:function(C){return C*C}},this.funcs.inv={cnvTo:function(C){return 1/C},cnvFrom:function(C){return 1/C}},this.funcs.hpX={cnvTo:function(C){return-this.funcs.lg(C)},cnvFrom:function(C){return Math.pow(10,-C)}},this.funcs.hpC={cnvTo:function(C){return-this.func.ln(C)/this.funcs.ln(100)},cnvFrom:function(C){return Math.pow(100,-C)}},this.funcs.hpM={cnvTo:function(C){return-this.funcs.ln(C)/this.funcs.ln(1e3)},cnvFrom:function(C){return Math.pow(1e3,-C)}},this.funcs.hpQ={cnvTo:function(C){return-this.funcs.ln(C)/this.funcs.ln(5e4)},cnvFrom:function(C){return Math.pow(5e4,-C)}}}forName(C){C=C.toLowerCase();let b=this.funcs[C];if(null===b)throw new Error(`Requested function ${C} is not defined`);return b}isDefined(C){return C=C.toLowerCase(),null!==this.funcs[C]}};X.default=n},6361:(Se,X,g)=>{"use strict";Object.defineProperty(X,"__esModule",{value:!0}),X.isNumericString=function p(o){let v=""+o;return!isNaN(v)&&!isNaN(parseFloat(v))},X.isIntegerUnit=function C(o){return/^\d+$/.test(o)},X.getSynonyms=function b(o){let v={},c={};if(c=n.getInstance().getUnitBySynonym(o),c.units){v.status="succeeded";let s=c.units.length;v.units=[];for(let l=0;l{"use strict";Object.defineProperty(X,"__esModule",{value:!0}),X.ucumJsonDefs=X.UcumJsonDefs=void 0;var n=g(3407),p=g(8902),C=g(5744),b=g(7894),o=g(5601).DP;class v{loadJsonDefs(){const s=g(8210);if(s.prefixes=o(s.prefixes),s.units=o(s.units),0===b.UnitTables.getInstance().unitsCount()){let l=p.PrefixTables.getInstance(),d=s.prefixes,r=d.length;for(let _=0;_{"use strict";X.n=void 0;var p=g(8929),C=function o(l){if(l&&l.__esModule)return l;if(null===l||"object"!=typeof l&&"function"!=typeof l)return{default:l};var d=b();if(d&&d.has(l))return d.get(l);var r={},u=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var h in l)if(Object.prototype.hasOwnProperty.call(l,h)){var m=u?Object.getOwnPropertyDescriptor(l,h):null;m&&(m.get||m.set)?Object.defineProperty(r,h,m):r[h]=l[h]}return r.default=l,d&&d.set(l,r),r}(g(6361));function b(){if("function"!=typeof WeakMap)return null;var l=new WeakMap;return b=function(){return l},l}var v=g(9473).Ucum,a=g(7894).UnitTables,c=g(4206).T;class s{constructor(){0===a.getInstance().unitsCount()&&p.ucumJsonDefs.loadJsonDefs(),this.uStrParser_=c.getInstance()}useHTMLInMessages(d){void 0===d&&(d=!0),this.uStrParser_.useHTMLInMessages(d)}useBraceMsgForEachString(d){void 0===d&&(d=!0),this.uStrParser_.useBraceMsgForEachString(d)}validateUnitString(d,r,u){void 0===r&&(r=!1),void 0===u&&(u="validate");let h=this.getSpecifiedUnit(d,u,r),m=h.unit,_={};return _=m?{status:h.origString===d?"valid":"invalid",ucumCode:h.origString,unit:{code:m.csCode_,name:m.name_,guidance:m.guidance_}}:{status:h.origString&&null!==h.origString?"invalid":"error",ucumCode:null},h.suggestions&&(_.suggestions=h.suggestions),_.msg=h.retMsg,_}convertUnitTo(d,r,u,h,m){void 0===h&&(h=!1),void 0===m&&(m=null);let _={status:"failed",toVal:null,msg:[]};if(d&&(d=d.trim()),(!d||""==d)&&(_.status="error",_.msg.push('No "from" unit expression specified.')),(null===r||isNaN(r)||"number"!=typeof r&&!C.isNumericString(r))&&(_.status="error",_.msg.push('No "from" value, or an invalid "from" value, was specified.')),u&&(u=u.trim()),(!u||""==u)&&(_.status="error",_.msg.push('No "to" unit expression specified.')),"error"!==_.status)try{let M=null,x=this.getSpecifiedUnit(d,"convert",h);M=x.unit,x.retMsg&&(_.msg=_.msg.concat(x.retMsg)),x.suggestions&&(_.suggestions={},_.suggestions.from=x.suggestions),M||_.msg.push(`Unable to find a unit for ${d}, so no conversion could be performed.`);let w=null;if(x=this.getSpecifiedUnit(u,"convert",h),w=x.unit,x.retMsg&&(_.msg=_.msg.concat(x.retMsg)),x.suggestions&&(_.suggestions||(_.suggestions={}),_.suggestions.to=x.suggestions),w||_.msg.push(`Unable to find a unit for ${u}, so no conversion could be performed.`),M&&w)try{if(m){if(0!==M.moleExp_&&0!==w.moleExp_)throw new Error("A molecular weight was specified but a mass <-> mole conversion cannot be executed for two mole-based units. No conversion was attempted.");if(0===M.moleExp_&&0===w.moleExp_)throw new Error("A molecular weight was specified but a mass <-> mole conversion cannot be executed when neither unit is mole-based. No conversion was attempted.");if(!M.isMoleMassCommensurable(w))throw new Error(`Sorry. ${d} cannot be converted to ${u}.`);_.toVal=0!==M.moleExp_?M.convertMolToMass(r,w,m):M.convertMassToMol(r,w,m)}else _.toVal=w.convertFrom(r,M);_.status="succeeded",_.fromUnit=M,_.toUnit=w}catch(L){_.status="failed",_.msg.push(L.message)}}catch(M){_.status=M.message==v.needMoleWeightMsg_?"failed":"error",_.msg.push(M.message)}return _}convertToBaseUnits(d,r){let u=this.getSpecifiedUnit(d,"validate"),h={},m=u.unit;if(h.msg=u.retMsg||[],m){if(m.isArbitrary_)h.msg.push("Arbitrary units cannot be converted to base units or other units.");else if(0==h.msg.length){let _={},M=m.dim_?.dimVec_,x="1";if(M){let A=a.getInstance().dimVecIndexToBaseUnit_;for(let T=0,O=M.length;T0&&(r=h.retMsg),m){let _=null,M=m.getProperty("dim_");if(M){try{_=M.getProperty("dimVec_")}catch(x){r.push(x.message),"Dimension does not have requested property(dimVec_)"===x.message&&(_=null)}_&&(u=a.getInstance().getUnitsByDimension(_))}else r.push("No commensurable units were found for "+d)}else r.push(`Could not find unit ${d}.`);return[u,r]}}X.n=s,s.getInstance=function(){return new s}},2207:(Se,X,g)=>{"use strict";X.ng=void 0,g(9473);var C=g(9741).n;X.ng=C,g(7894)},5744:(Se,X,g)=>{"use strict";Object.defineProperty(X,"__esModule",{value:!0}),X.Unit=void 0;var n=function o(d){return d&&d.__esModule?d:{default:d}}(g(5568)),p=function b(d){if(d&&d.__esModule)return d;if(null===d||"object"!=typeof d&&"function"!=typeof d)return{default:d};var r=C();if(r&&r.has(d))return r.get(d);var u={},h=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var m in d)if(Object.prototype.hasOwnProperty.call(d,m)){var _=h?Object.getOwnPropertyDescriptor(d,m):null;_&&(_.get||_.set)?Object.defineProperty(u,m,_):u[m]=d[m]}return u.default=d,r&&r.set(d,u),u}(g(6361));function C(){if("function"!=typeof WeakMap)return null;var d=new WeakMap;return C=function(){return d},d}var c,v=g(9473).Ucum,a=g(1995).R,s=g(4864);class l{constructor(r={}){this.isBase_=r.isBase_||!1,this.name_=r.name_||"",this.csCode_=r.csCode_||"",this.ciCode_=r.ciCode_||"",this.property_=r.property_||"",this.magnitude_=r.magnitude_||1,this.dim_=null==r.dim_?new a:void 0!==r.dim_.dimVec_?new a(r.dim_.dimVec_):r.dim_ instanceof a?r.dim_:r.dim_ instanceof Array||s(r.dim_)?new a(r.dim_):new a,this.printSymbol_=r.printSymbol_||null,this.class_=r.class_||null,this.isMetric_=r.isMetric_||!1,this.variable_=r.variable_||null,this.cnv_=r.cnv_||null,this.cnvPfx_=r.cnvPfx_||1,this.isSpecial_=r.isSpecial_||!1,this.isArbitrary_=r.isArbitrary_||!1,this.moleExp_=r.moleExp_||0,this.synonyms_=r.synonyms_||null,this.source_=r.source_||null,this.loincProperty_=r.loincProperty_||null,this.category_=r.category_||null,this.guidance_=r.guidance_||null,this.csUnitString_=r.csUnitString_||null,this.ciUnitString_=r.ciUnitString_||null,this.baseFactorStr_=r.baseFactorStr_||null,this.baseFactor_=r.baseFactor_||null,this.defError_=r.defError_||!1}assignUnity(){return this.name_="",this.magnitude_=1,this.dim_||(this.dim_=new a),this.dim_.assignZero(),this.cnv_=null,this.cnvPfx_=1,this}assignVals(r){for(let u in r){let h="_"===!u.charAt(u.length-1)?u+"_":u;if(!this.hasOwnProperty(h))throw new Error(`Parameter error; ${u} is not a property of a Unit`);this[h]=r[u]}}clone(){let r=new l;return Object.getOwnPropertyNames(this).forEach(u=>{"dim_"===u?r.dim_=this.dim_?this.dim_.clone():null:r[u]=this[u]}),r}assign(r){Object.getOwnPropertyNames(r).forEach(u=>{"dim_"===u?this.dim_=r.dim_?r.dim_.clone():null:this[u]=r[u]})}equals(r){return this.magnitude_===r.magnitude_&&this.cnv_===r.cnv_&&this.cnvPfx_===r.cnvPfx_&&(null===this.dim_&&null===r.dim_||this.dim_.equals(r.dim_))}fullEquals(r){let u=Object.keys(this).sort(),h=Object.keys(r).sort(),m=u.length,_=m===h.length;for(let M=0;M0){let u=r.replace("/","!").replace(".","/").replace("!",".");switch(u.charAt(0)){case".":r=u.substr(1);break;case"/":r=u;break;default:r="/"+u}}return r}_concatStrs(r,u,h,m,_){return this._buildOneString(r,m,_)+u+this._buildOneString(h,m,_)}_buildOneString(r,u,h){let m="";return m=p.isNumericString(r)||"("===r.charAt(0)&&r.endsWith(")")||"["===r.charAt(0)&&r.endsWith("]")?r:/[./* ]/.test(r)?u+r+h:r,m}power(r){if(null!=this.cnv_)throw new Error(`Attempt to raise a non-ratio unit, ${this.name_}, to a power.`);let h=this.csCode_.match(/([./]|[^./]+)/g),m=h.length;for(let _=0;_=0;L--){let A=parseInt(M[L]);if(!s(A)){if(("-"===M[L]||"+"===M[L])&&L--,L{"use strict";X.T=void 0;var p=function b(d){if(d&&d.__esModule)return d;if(null===d||"object"!=typeof d&&"function"!=typeof d)return{default:d};var r=C();if(r&&r.has(d))return r.get(d);var u={},h=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var m in d)if(Object.prototype.hasOwnProperty.call(d,m)){var _=h?Object.getOwnPropertyDescriptor(d,m):null;_&&(_.get||_.set)?Object.defineProperty(u,m,_):u[m]=d[m]}return u.default=d,r&&r.set(d,u),u}(g(6361));function C(){if("function"!=typeof WeakMap)return null;var d=new WeakMap;return C=function(){return d},d}function o(d,r,u){return r in d?Object.defineProperty(d,r,{value:u,enumerable:!0,configurable:!0,writable:!0}):d[r]=u,d}var v=g(9473).Ucum,a=g(5744).Unit,c=g(7894).UnitTables,s=g(8902).PrefixTables;class l{constructor(){this.utabs_=c.getInstance(),this.pfxTabs_=s.getInstance(),this.openEmph_=v.openEmph_,this.closeEmph_=v.closeEmph_,this.bracesMsg_="",this.parensFlag_="parens_placeholder",this.pFlagLen_=this.parensFlag_.length,this.braceFlag_="braces_placeholder",this.bFlagLen_=this.braceFlag_.length,this.vcMsgStart_=null,this.vcMsgEnd_=null,this.retMsg_=[],this.parensUnits_=[],this.annotations_=[],this.suggestions=[]}useHTMLInMessages(r){void 0===r||r?(this.openEmph_=v.openEmphHTML_,this.closeEmph_=v.closeEmphHTML_):(this.openEmph_=v.openEmph_,this.closeEmph_=v.closeEmph_)}useBraceMsgForEachString(r){this.bracesMsg_=void 0===r||r?v.bracesMsg_:""}parseString(r,u,h){if(""===(r=r.trim())||null===r)throw new Error("Please specify a unit expression to be validated.");"validate"===u?(this.vcMsgStart_=v.valMsgStart_,this.vcMsgEnd_=v.valMsgEnd_):(this.vcMsgStart_=v.cnvMsgStart_,this.vcMsgEnd_=v.cnvMsgEnd_),this.suggestions_=void 0===h||!1===h?null:[],this.retMsg_=[],this.parensUnits_=[],this.annotations_=[];let m=r,_=[];if(r=this._getAnnotations(r),this.retMsg_.length>0)_[0]=null,_[1]=null;else{let x=null;for(x in v.specUnits_)for(;-1!==r.indexOf(x);)r=r.replace(x,v.specUnits_[x]);if(r.indexOf(" ")>-1)throw new Error("Blank spaces are not allowed in unit expressions.");_=this._parseTheString(r,m);let w=_[0];(p.isIntegerUnit(w)||"number"==typeof w)&&(w=new a({csCode_:m,ciCode_:m,magnitude_:w,name_:m}),_[0]=w)}return _[2]=this.retMsg_,this.suggestions_&&this.suggestions_.length>0&&(_[3]=this.suggestions_),_}_parseTheString(r,u){let h=null,m=this.retMsg_.length>0,_=this._processParens(r,u);m=_[2];let M=[];if(!m){let x=this._makeUnitsArray(r=_[0],u=_[1]);if(m=x[2],!m){M=x[0],u=x[1];let w=M.length;for(let L=0;L=0){let T=this._getParensUnit(A,u);m||(m=T[1]),m||(M[L].un=T[0])}else{let T=this._makeUnit(A,u);null===T[0]?m=!0:(M[L].un=T[0],u=T[1])}}}}return m||(null===M[0]||" "===M[0]||null==M[0].un)&&0===this.retMsg_.length&&(this.retMsg_.push(`Unit string (${u}) did not contain anything that could be used to create a unit, or else something that is not handled yet by this package. Sorry`),m=!0),m||(h=this._performUnitArithmetic(M,u)),[h,u]}_getAnnotations(r){let u=r.indexOf("{");for(;u>=0;){let h=r.indexOf("}");if(h<0)this.retMsg_.push("Missing closing brace for annotation starting at "+this.openEmph_+r.substr(u)+this.closeEmph_),u=-1;else{let m=r.substring(u,h+1);if(l.VALID_ANNOTATION_REGEX.test(m)){let _=this.annotations_.length.toString();r=r.replace(m,this.braceFlag_+_+this.braceFlag_),this.annotations_.push(m),u=r.indexOf("{")}else this.retMsg_.push(l.INVALID_ANNOTATION_CHAR_MSG+this.openEmph_+m+this.closeEmph_),u=-1}}if(0==this.retMsg_.length){let h=r.indexOf("}");h>=0&&this.retMsg_.push("Missing opening brace for closing brace found at "+this.openEmph_+r.substring(0,h+1)+this.closeEmph_)}return r}_processParens(r,u){let h=[],m=0,_=!1,M=this.parensUnits_.length,x=0;for(;""!==r&&!_;){let w=0,L=0,A=r.indexOf("(");if(A<0){let T=r.indexOf(")");if(T>=0){let O=`Missing open parenthesis for close parenthesis at ${r.substring(0,T+x)}${this.openEmph_}${r.substr(T,1)}${this.closeEmph_}`;T0&&(h[m++]=r.substr(0,A));let O=0,E=A+1;for(;E0&&(L=r.substr(0,w-1));let A=r.lastIndexOf(this.parensFlag_),T=null;A+this.pFlagLen_=0){let E=this._getAnnoText(L,u);if(E[1]||E[2])throw new Error(`Text found before the parentheses (${L}) included an annotation along with other text for parenthetical unit ${_.csCode_}`);this.retMsg_.push(`The annotation ${E[0]} before the unit code is invalid.\n`+this.vcMsgStart_+(r+=E[0])+this.vcMsgEnd_)}else this.suggestions_?h="succeeded"!==this._getSuggestions(L):(this.retMsg_.push(`${L} preceding the unit code ${r} is invalid. Unable to make a substitution.`),h=!0);if(T)if(T.indexOf(this.braceFlag_)>=0){let E=this._getAnnoText(T,u);if(E[1]||E[2])throw new Error(`Text found after the parentheses (${T}) included an annotation along with other text for parenthetical unit ${_.csCode_}`);r+=E[0]}else p.isNumericString(T)?(r+=T,_=_.power(Number(T)),this.retMsg_.push(`An exponent (${T}) following a parenthesis is invalid as of revision 1.9 of the UCUM Specification.\n `+this.vcMsgStart_+r+this.vcMsgEnd_)):this.suggestions_?h="succeeded"!==this._getSuggestions(L):(this.retMsg_.push(`Text ${T} following the unit code ${r} is invalid. Unable to make a substitution.`),h=!0);return h||(_?p.isIntegerUnit(_)?_=new a({csCode_:_,magnitude_:_,name_:_}):_.csCode_=r:_=new a({csCode_:r,magnitude_:1,name_:r})),[_,h]}_getAnnoText(r,u){let h=r.indexOf(this.braceFlag_),m=h>0?r.substring(0,h):null;0!==h&&(r=r.substr(h));let _=r.indexOf(this.braceFlag_,1),M=_+this.bFlagLen_=this.annotations_.length)throw new Error(`Processing Error - invalid annotation index ${x} found in ${r} that was created from ${u}`);return[r=this.annotations_[w],m,M]}_getSuggestions(r){let u=p.getSynonyms(r);if("succeeded"===u.status){let h={};h.msg=`${r} is not a valid UCUM code. We found possible units that might be what was meant:`,h.invalidUnit=r;let m=u.units.length;h.units=[];for(let _=0;_=0){let m=this._getUnitWithAnnotation(r,u);h=m[0],h&&(u=m[1])}else{if(r.indexOf("^")>-1){let m=r.replace("^","*");h=this.utabs_.getUnitByCode(m),h&&(h=h.clone(),h.csCode_=h.csCode_.replace("*","^"),h.ciCode_=h.ciCode_.replace("*","^"))}if(!h){let m="["+r+"]";h=this.utabs_.getUnitByCode(m),h&&(h=h.clone(),u=u.replace(r,m),this.retMsg_.push(`${r} is not a valid unit expression, but ${m} is.\n`+this.vcMsgStart_+`${m} (${h.name_})${this.vcMsgEnd_}`))}if(!h){let m=this.utabs_.getUnitByName(r);if(m&&m.length>0){h=m[0].clone();let _="The UCUM code for "+r+" is "+h.csCode_+".\n"+this.vcMsgStart_+h.csCode_+this.vcMsgEnd_,M=!1;for(let L=0;L"+S+"",csCode_:N+S,ciCode_:R+S,printSymbol_:j+""+S+""})}}else h=null,this.suggestions_?this._getSuggestions(m):this.retMsg_.push(`${m} is not a valid UCUM code.`)}}return[h,u]}_getUnitWithAnnotation(r,u){let h=null,m=this._getAnnoText(r,u),_=m[0],M=m[1],x=m[2];this.bracesMsg_&&-1===this.retMsg_.indexOf(this.bracesMsg_)&&this.retMsg_.push(this.bracesMsg_);let w=this.retMsg_.length;if(M||x)if(M&&!x)if(p.isIntegerUnit(M))h=M;else{let L=this._makeUnit(M,u);L[0]?(h=L[0],h.csCode_+=_,u=L[1]):this.retMsg_.push(`Unable to find a unit for ${M} that precedes the annotation ${_}.`)}else if(!M&&x)if(p.isIntegerUnit(x))h=x+_,this.retMsg_.push(`The annotation ${_} before the ``${x} is invalid.\n`+this.vcMsgStart_+h+this.vcMsgEnd_);else{let L=this._makeUnit(x,u);L[0]?(h=L[0],h.csCode_+=_,u=h.csCode_,this.retMsg_.push(`The annotation ${_} before the unit code is invalid.\n`+this.vcMsgStart_+h.csCode_+this.vcMsgEnd_)):this.retMsg_.push(`Unable to find a unit for ${M} that follows the annotation ${_}.`)}else this.retMsg_.push(`Unable to find a unit for ${M}${_}${x}.\nWe are not sure how to interpret text both before and after the annotation. Sorry`);else{let L="["+_.substring(1,_.length-1)+"]",A=this._makeUnit(L,u);A[0]?(h=A[0],u=u.replace(_,L),this.retMsg_.push(`${_} is not a valid unit expression, but ${L} is.\n`+this.vcMsgStart_+`${L} (${h.name_})${this.vcMsgEnd_}`)):(this.retMsg_.length>w&&this.retMsg_.pop(),r=1,h=1)}return[h,u]}_performUnitArithmetic(r,u){let h=r[0].un;p.isIntegerUnit(h)&&(h=new a({csCode_:h,ciCode_:h,magnitude_:Number(h),name_:h}));let m=r.length,_=!1;for(let M=1;M{"use strict";Object.defineProperty(X,"__esModule",{value:!0}),X.UnitTables=void 0;var n=g(9473).Ucum,C=new class p{constructor(){this.unitNames_={},this.unitCodes_={},this.codeOrder_=[],this.unitStrings_={},this.unitDimensions_={},this.unitSynonyms_={},this.massDimIndex_=0,this.dimVecIndexToBaseUnit_={}}unitsCount(){return Object.keys(this.unitCodes_).length}addUnit(v){v.name_&&this.addUnitName(v),this.addUnitCode(v),this.addUnitString(v);try{v.dim_.getProperty("dimVec_")&&this.addUnitDimension(v)}catch{}if(v.isBase_){const c=v.dim_.dimVec_;let s;for(let l=0,d=c.length;null==s&&l=1&&(c=v.substr(a+n.codeSep_.length),v=v.substr(0,a));let s=this.unitNames_[v];if(s){let l=s.length;if(c&&l>1){let d=0;for(;s[d].csCode_!==c&&d0&&(c+=a),"dim_"===v[_])c+=null!=m.dim_&&m.dim_.dimVec_ instanceof Array?"["+m.dim_.dimVec_.join(",")+"]":"";else{let M=m[v[_]];c+="string"==typeof M?M.replace(/[\n\r]/g," "):M}c+="\r\n"}}return c}printUnits(v,a){void 0===v&&(v=!1),void 0===a&&(a="|");let c="",s=this.codeOrder_.length,l="csCode"+a;v&&(l+="ciCode"+a),l+="name"+a,v&&(l+="isBase"+a),l+="magnitude"+a+"dimension"+a+"from unit(s)"+a+"value"+a+"function"+a,v&&(l+="property"+a+"printSymbol"+a+"synonyms"+a+"source"+a+"class"+a+"isMetric"+a+"variable"+a+"isSpecial"+a+"isAbitrary"+a),l+="comment",c=l+"\n";for(let d=0;d{"use strict";Object.defineProperty(X,"__esModule",{value:!0}),X.AppComponent=void 0;const n=g(655),b=(g(7088),g(9515),n.__importStar(g(5879))),o=n.__importStar(g(9515)),v=n.__importStar(g(7088)),a=n.__importStar(g(4505)),c=n.__importStar(g(617)),s=n.__importStar(g(6718)),l=n.__importStar(g(1274)),d=n.__importStar(g(5187));X.AppComponent=(()=>{class u{constructor(m,_){m.setDefaultLang("de"),m.use(m.getBrowserLang());let M=location.origin;if("http://localhost:4200"===M)console.log("note: using local dev mag system for"+location.origin),_.changeFhirMicroService("http://localhost:8080/matchbox/fhir");else{let x=M+location.pathname+"fhir";_.changeFhirMicroService(x),console.log("fhir endpoint "+x)}}}return u.\u0275fac=function(m){return new(m||u)(b.\u0275\u0275directiveInject(o.TranslateService),b.\u0275\u0275directiveInject(v.FhirConfigService))},u.\u0275cmp=b.\u0275\u0275defineComponent({type:u,selectors:[["app-root"]],decls:53,vars:1,consts:[["color","primary","role","header"],["routerLink","/",1,"home-link"],[1,"logo-container"],["src","assets/matchbox_logo_color.png"],[1,"example-fill-remaining-space"],["mat-icon-button","",3,"matMenuTriggerFor"],["menu","matMenu"],["mat-menu-item","","routerLink","/"],["mat-menu-item","","routerLink","/CapabilityStatement"],["mat-menu-item","","routerLink","/igs"],["mat-menu-item","","routerLink","/fhirpath"],["mat-menu-item","","routerLink","/mappinglanguage"],["mat-menu-item","","routerLink","/transform"],["mat-menu-item","","routerLink","/validate"],["mat-menu-item","","routerLink","/settings"],[1,"mat-typography"]],template:function(m,_){if(1&m&&(b.\u0275\u0275elementStart(0,"mat-toolbar",0)(1,"div",1)(2,"div",2),b.\u0275\u0275element(3,"img",3),b.\u0275\u0275elementEnd()(),b.\u0275\u0275element(4,"span",4),b.\u0275\u0275elementStart(5,"span")(6,"button",5)(7,"mat-icon"),b.\u0275\u0275text(8,"more_vert"),b.\u0275\u0275elementEnd()(),b.\u0275\u0275elementStart(9,"mat-menu",null,6)(11,"button",7)(12,"mat-icon"),b.\u0275\u0275text(13,"home"),b.\u0275\u0275elementEnd(),b.\u0275\u0275elementStart(14,"span"),b.\u0275\u0275text(15,"Home"),b.\u0275\u0275elementEnd()(),b.\u0275\u0275elementStart(16,"button",8)(17,"mat-icon"),b.\u0275\u0275text(18,"info"),b.\u0275\u0275elementEnd(),b.\u0275\u0275elementStart(19,"span"),b.\u0275\u0275text(20,"CapabilityStatement"),b.\u0275\u0275elementEnd()(),b.\u0275\u0275elementStart(21,"button",9)(22,"mat-icon"),b.\u0275\u0275text(23,"info"),b.\u0275\u0275elementEnd(),b.\u0275\u0275elementStart(24,"span"),b.\u0275\u0275text(25,"IGs ..."),b.\u0275\u0275elementEnd()(),b.\u0275\u0275elementStart(26,"button",10)(27,"mat-icon"),b.\u0275\u0275text(28,"search"),b.\u0275\u0275elementEnd(),b.\u0275\u0275elementStart(29,"span"),b.\u0275\u0275text(30,"FHIRPath ..."),b.\u0275\u0275elementEnd()(),b.\u0275\u0275elementStart(31,"button",11)(32,"mat-icon"),b.\u0275\u0275text(33,"search"),b.\u0275\u0275elementEnd(),b.\u0275\u0275elementStart(34,"span"),b.\u0275\u0275text(35,"FHIR mapping language ..."),b.\u0275\u0275elementEnd()(),b.\u0275\u0275elementStart(36,"button",12)(37,"mat-icon"),b.\u0275\u0275text(38,"search"),b.\u0275\u0275elementEnd(),b.\u0275\u0275elementStart(39,"span"),b.\u0275\u0275text(40,"Transform ..."),b.\u0275\u0275elementEnd()(),b.\u0275\u0275elementStart(41,"button",13)(42,"mat-icon"),b.\u0275\u0275text(43,"Validate"),b.\u0275\u0275elementEnd(),b.\u0275\u0275elementStart(44,"span"),b.\u0275\u0275text(45,"Validate ..."),b.\u0275\u0275elementEnd()(),b.\u0275\u0275elementStart(46,"button",14)(47,"mat-icon"),b.\u0275\u0275text(48,"settings"),b.\u0275\u0275elementEnd(),b.\u0275\u0275elementStart(49,"span"),b.\u0275\u0275text(50,"Settings"),b.\u0275\u0275elementEnd()()()()(),b.\u0275\u0275elementStart(51,"main",15),b.\u0275\u0275element(52,"router-outlet"),b.\u0275\u0275elementEnd()),2&m){const M=b.\u0275\u0275reference(10);b.\u0275\u0275advance(6),b.\u0275\u0275property("matMenuTriggerFor",M)}},dependencies:[a.MatLegacyButton,c.MatIcon,s.MatLegacyMenu,s.MatLegacyMenuItem,s.MatLegacyMenuTrigger,l.MatToolbar,d.RouterOutlet,d.RouterLink],styles:[".example-fill-remaining-space[_ngcontent-%COMP%]{flex:1 1 auto}mat-toolbar[_ngcontent-%COMP%]{padding-left:0}mat-toolbar[_ngcontent-%COMP%] .home-link[_ngcontent-%COMP%]{height:100%;display:flex;justify-content:center;align-items:center;cursor:pointer}mat-toolbar[_ngcontent-%COMP%] .logo-container[_ngcontent-%COMP%]{display:flex;height:100%;width:160px;justify-content:center;align-items:center}mat-toolbar[_ngcontent-%COMP%] .logo-container[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{height:calc(100% - 1.2em)}main[_ngcontent-%COMP%]{width:100%;margin:0 auto}@media screen and (min-width: 1020px){main[_ngcontent-%COMP%]{padding:3rem 0;width:1000px}}"]}),u})()},8629:(Se,X,g)=>{"use strict";Object.defineProperty(X,"__esModule",{value:!0}),X.AppModule=X.createTranslateLoader=void 0;const n=g(655),p=g(9862),C=g(5187),b=g(9515),o=g(5061),v=g(6401),a=g(6938),c=g(7171),s=g(6459),l=g(5389),d=g(3835),r=g(6208),u=g(1037),h=g(9949),m=g(7154),_=g(9936),M=g(6381),x=n.__importStar(g(5879)),T=(n.__importStar(g(5187)),n.__importStar(g(9515)),n.__importStar(g(6381)),[{path:"",component:s.HomeComponent},{path:"fhirpath",component:c.FhirPathComponent},{path:"mappinglanguage",component:l.MappingLanguageComponent},{path:"CapabilityStatement",component:a.CapabilityStatementComponent},{path:"igs",component:u.IgsComponent},{path:"settings",component:d.SettingsComponent},{path:"transform",component:m.TransformComponent},{path:"validate",component:_.ValidateComponent}]);function O(D){return new o.TranslateHttpLoader(D,"./assets/i18n/",".json")}X.createTranslateLoader=O,X.AppModule=(()=>{class D{}return D.\u0275fac=function(j){return new(j||D)},D.\u0275mod=x.\u0275\u0275defineNgModule({type:D,bootstrap:[v.AppComponent]}),D.\u0275inj=x.\u0275\u0275defineInjector({providers:[{provide:h.HIGHLIGHT_OPTIONS,useValue:{coreLibraryLoader:()=>Promise.resolve().then(()=>n.__importStar(g(6548))),lineNumbersLoader:()=>Promise.resolve().then(()=>n.__importStar(g(1035))),languages:{json:()=>Promise.resolve().then(()=>n.__importStar(g(5454))),xml:()=>Promise.resolve().then(()=>n.__importStar(g(5149)))}}}],imports:[r.SharedModule,p.HttpClientModule,h.HighlightModule,C.RouterModule.forRoot(T,{useHash:!0}),b.TranslateModule.forRoot({loader:{provide:b.TranslateLoader,useFactory:O,deps:[p.HttpClient]}}),M.OAuthModule.forRoot()]}),D})()},6938:(Se,X,g)=>{"use strict";Object.defineProperty(X,"__esModule",{value:!0}),X.CapabilityStatementComponent=void 0;const n=g(655),C=(g(7088),n.__importStar(g(5879))),b=n.__importStar(g(7088)),o=n.__importStar(g(6814)),v=n.__importStar(g(9025)),a=n.__importStar(g(4187)),c=n.__importStar(g(9949));function s(r,u){if(1&r&&(C.\u0275\u0275elementStart(0,"li"),C.\u0275\u0275text(1),C.\u0275\u0275elementEnd()),2&r){const h=u.$implicit;C.\u0275\u0275advance(1),C.\u0275\u0275textInterpolate1(" ",h.diagnostics," ")}}function l(r,u){if(1&r&&(C.\u0275\u0275elementStart(0,"mat-error")(1,"ul"),C.\u0275\u0275template(2,s,2,1,"li",3),C.\u0275\u0275elementEnd()()),2&r){const h=C.\u0275\u0275nextContext();C.\u0275\u0275advance(2),C.\u0275\u0275property("ngForOf",h.operationOutcome.issue)}}X.CapabilityStatementComponent=(()=>{class r{constructor(h){this.data=h,this.client=h.getFhirClient(),this.client.capabilityStatement().then(m=>{this.operationOutcome=void 0,this.capabilitystatement=m}).catch(m=>{this.capabilitystatement=void 0,this.operationOutcome=m.response.data})}getJson(){return JSON.stringify(this.capabilitystatement,null,2)}ngOnInit(){}ngOnDestroy(){}}return r.\u0275fac=function(h){return new(h||r)(C.\u0275\u0275directiveInject(b.FhirConfigService))},r.\u0275cmp=C.\u0275\u0275defineComponent({type:r,selectors:[["app-capability-statement"]],decls:8,vars:4,consts:[[1,"display"],[3,"highlight","lineNumbers"],[4,"ngIf"],[4,"ngFor","ngForOf"]],template:function(h,m){1&h&&(C.\u0275\u0275elementStart(0,"mat-card",0)(1,"mat-card-content")(2,"mat-card-header")(3,"mat-card-title"),C.\u0275\u0275text(4),C.\u0275\u0275elementEnd()(),C.\u0275\u0275elementStart(5,"pre"),C.\u0275\u0275element(6,"code",1),C.\u0275\u0275elementEnd(),C.\u0275\u0275template(7,l,3,1,"mat-error",2),C.\u0275\u0275elementEnd()()),2&h&&(C.\u0275\u0275advance(4),C.\u0275\u0275textInterpolate(m.client.baseUrl),C.\u0275\u0275advance(2),C.\u0275\u0275property("highlight",m.getJson())("lineNumbers",!0),C.\u0275\u0275advance(1),C.\u0275\u0275property("ngIf",m.operationOutcome))},dependencies:[o.NgForOf,o.NgIf,v.MatLegacyCard,v.MatLegacyCardHeader,v.MatLegacyCardContent,v.MatLegacyCardTitle,a.MatLegacyError,c.Highlight],styles:[".display[_ngcontent-%COMP%]{display:inline-block}"]}),r})()},7171:(Se,X,g)=>{"use strict";Object.defineProperty(X,"__esModule",{value:!0}),X.FhirPathComponent=void 0;const n=g(655),b=(g(5879),g(7973),g(6223)),o=g(1385),v=n.__importStar(g(5879)),a=n.__importStar(g(7973)),c=n.__importStar(g(6223)),s=n.__importStar(g(9025)),l=n.__importStar(g(4187)),d=n.__importStar(g(2400)),r=n.__importStar(g(9949));X.FhirPathComponent=(()=>{class h{constructor(_,M){this.fhirPathService=_,this.cd=M,this.fhirPathExpression=new b.UntypedFormControl,this.fhirPathExpression.valueChanges.pipe((0,o.debounceTime)(400),(0,o.distinctUntilChanged)()).subscribe(x=>{if(console.log("called with "+x),x)try{this.fhirPathResult=this.fhirPathService.evaluate(this.resource,x)}catch(w){console.log(w),this.fhirPathResult=void 0}else this.fhirPathResult=void 0})}fileChange(_){const M=new FileReader;if(_.target.files&&_.target.files.length){const[x]=_.target.files;M.readAsText(x),M.onload=()=>{this.resource=JSON.parse(M.result),this.cd.markForCheck()}}}getFhirPathResult(){return JSON.stringify(this.fhirPathResult,null,2)}getJson(){return JSON.stringify(this.resource,null,2)}ngOnInit(){}}return h.\u0275fac=function(_){return new(_||h)(v.\u0275\u0275directiveInject(a.FhirPathService),v.\u0275\u0275directiveInject(v.ChangeDetectorRef))},h.\u0275cmp=v.\u0275\u0275defineComponent({type:h,selectors:[["app-fhir-path"]],decls:15,vars:5,consts:[[1,"display"],["matInput","",3,"formControl"],[3,"highlight","lineNumbers"],["type","file","placeholder","Upload resource","accept",".json",3,"change"]],template:function(_,M){1&_&&(v.\u0275\u0275elementStart(0,"mat-card",0)(1,"mat-card-content")(2,"mat-form-field")(3,"mat-label"),v.\u0275\u0275text(4,"FHIRPath Expression"),v.\u0275\u0275elementEnd(),v.\u0275\u0275element(5,"input",1),v.\u0275\u0275elementEnd(),v.\u0275\u0275elementStart(6,"div"),v.\u0275\u0275text(7,"Result"),v.\u0275\u0275elementEnd(),v.\u0275\u0275elementStart(8,"pre"),v.\u0275\u0275element(9,"code",2),v.\u0275\u0275elementEnd(),v.\u0275\u0275elementStart(10,"div"),v.\u0275\u0275text(11,"Resource"),v.\u0275\u0275elementEnd(),v.\u0275\u0275elementStart(12,"input",3),v.\u0275\u0275listener("change",function(w){return M.fileChange(w)}),v.\u0275\u0275elementEnd(),v.\u0275\u0275elementStart(13,"pre"),v.\u0275\u0275element(14,"code",2),v.\u0275\u0275elementEnd()()()),2&_&&(v.\u0275\u0275advance(5),v.\u0275\u0275property("formControl",M.fhirPathExpression),v.\u0275\u0275advance(4),v.\u0275\u0275property("highlight",M.getFhirPathResult())("lineNumbers",!0),v.\u0275\u0275advance(5),v.\u0275\u0275property("highlight",M.getJson())("lineNumbers",!0))},dependencies:[c.DefaultValueAccessor,c.NgControlStatus,c.FormControlDirective,s.MatLegacyCard,s.MatLegacyCardContent,l.MatLegacyFormField,l.MatLegacyLabel,d.MatLegacyInput,r.Highlight],styles:[".display[_ngcontent-%COMP%]{display:inline-block}"]}),h})()},7088:(Se,X,g)=>{"use strict";Object.defineProperty(X,"__esModule",{value:!0}),X.FhirConfigService=void 0;const n=g(655),p=n.__importDefault(g(8907)),C=n.__importStar(g(5879));X.FhirConfigService=(()=>{class o{constructor(){}changeFhirMicroService(a){localStorage.setItem("fhirMicroServer",a)}getFhirMicroService(){return localStorage.getItem("fhirMicroServer")}getFhirClient(){return new p.default({baseUrl:this.getFhirMicroService()})}}return o.\u0275fac=function(a){return new(a||o)},o.\u0275prov=C.\u0275\u0275defineInjectable({token:o,factory:o.\u0275fac,providedIn:"root"}),o})()},7973:(Se,X,g)=>{"use strict";Object.defineProperty(X,"__esModule",{value:!0}),X.FhirPathService=void 0;const n=g(655),p=g(8921),C=n.__importStar(g(5879));X.FhirPathService=(()=>{class o{evaluate(a,c){return(0,p.evaluate)(a,c,null)}evaluateToString(a,c){const s=this.evaluate(a,c);return s&&s instanceof Array&&1===s.length?s[0]:null}getOauthUriToken(a){return this.evaluateToString(a,"rest.security.extension.where(url='http://fhir-registry.smarthealthit.org/StructureDefinition/oauth-uris').extension.where(url='token').valueUri")}getOauthUriAuthorize(a){return this.evaluateToString(a,"rest.security.extension.where(url='http://fhir-registry.smarthealthit.org/StructureDefinition/oauth-uris').extension.where(url='authorize').valueUri")}}return o.\u0275fac=function(a){return new(a||o)},o.\u0275prov=C.\u0275\u0275defineInjectable({token:o,factory:o.\u0275fac,providedIn:"root"}),o})()},6459:(Se,X,g)=>{"use strict";var n=g(7156).default;Object.defineProperty(X,"__esModule",{value:!0}),X.HomeComponent=void 0;const p=g(655),v=(g(7088),g(5187),g(6814),p.__importDefault(g(4147))),a=p.__importStar(g(5879)),c=p.__importStar(g(7088)),s=p.__importStar(g(5187)),l=p.__importStar(g(6814)),d=p.__importStar(g(9025)),r=p.__importStar(g(617)),u=p.__importStar(g(6718));X.HomeComponent=(()=>{class m{constructor(M,x,w){this.router=x,this.location=w,this.version=v.default.version,this.client=M.getFhirClient()}ngOnInit(){return n(function*(){})()}}return m.\u0275fac=function(M){return new(M||m)(a.\u0275\u0275directiveInject(c.FhirConfigService),a.\u0275\u0275directiveInject(s.Router),a.\u0275\u0275directiveInject(l.Location))},m.\u0275cmp=a.\u0275\u0275defineComponent({type:m,selectors:[["app-home"]],decls:22,vars:1,consts:[[1,"primary"],["mat-menu-item","","routerLink","/validate"],["mat-menu-item","","routerLink","/igs"],["mat-menu-item","","routerLink","/settings"],["href","https://www.ahdis.ch","target","_blank","rel","external nofollow noopener"]],template:function(M,x){1&M&&(a.\u0275\u0275elementStart(0,"mat-card",0)(1,"mat-card-content")(2,"button",1)(3,"mat-icon"),a.\u0275\u0275text(4,"Validate"),a.\u0275\u0275elementEnd(),a.\u0275\u0275elementStart(5,"span"),a.\u0275\u0275text(6,"Validate ..."),a.\u0275\u0275elementEnd()(),a.\u0275\u0275elementStart(7,"button",2)(8,"mat-icon"),a.\u0275\u0275text(9,"info"),a.\u0275\u0275elementEnd(),a.\u0275\u0275elementStart(10,"span"),a.\u0275\u0275text(11,"IGs ..."),a.\u0275\u0275elementEnd()(),a.\u0275\u0275elementStart(12,"button",3)(13,"mat-icon"),a.\u0275\u0275text(14,"settings"),a.\u0275\u0275elementEnd(),a.\u0275\u0275elementStart(15,"span"),a.\u0275\u0275text(16,"Settings"),a.\u0275\u0275elementEnd()()(),a.\u0275\u0275elementStart(17,"mat-card-footer")(18,"p"),a.\u0275\u0275text(19),a.\u0275\u0275elementStart(20,"a",4),a.\u0275\u0275text(21,"contact"),a.\u0275\u0275elementEnd()()()()),2&M&&(a.\u0275\u0275advance(19),a.\u0275\u0275textInterpolate1(" version: ",x.version," "))},dependencies:[d.MatLegacyCard,d.MatLegacyCardContent,d.MatLegacyCardFooter,r.MatIcon,u.MatLegacyMenuItem,s.RouterLink],styles:[".mat-card.primary[_ngcontent-%COMP%] mat-card-header[_ngcontent-%COMP%]{display:flex;flex-direction:column}.mat-card.primary[_ngcontent-%COMP%] mat-card-header[_ngcontent-%COMP%] .mat-subheading-2[_ngcontent-%COMP%]{margin:1rem 0 0}.mat-card.primary[_ngcontent-%COMP%] mat-card-content[_ngcontent-%COMP%] mat-tab-body>div{box-shadow:0 0 5px -3px #000 inset}.mat-card.primary[_ngcontent-%COMP%] mat-card-footer[_ngcontent-%COMP%]{padding:0 1.5rem 1.5rem}.mat-card.primary[_ngcontent-%COMP%] mat-card-footer[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{padding-top:1rem;margin:0}"]}),m})()},1037:(Se,X,g)=>{"use strict";Object.defineProperty(X,"__esModule",{value:!0}),X.IgsComponent=void 0;const n=g(655),C=(g(7088),g(2214)),b=g(6223),o=n.__importDefault(g(563)),a=(g(7973),n.__importStar(g(5879))),c=n.__importStar(g(7088)),s=n.__importStar(g(7973)),l=n.__importStar(g(6814)),d=n.__importStar(g(6223)),r=n.__importStar(g(4505)),u=n.__importStar(g(9025)),h=n.__importStar(g(4187)),m=n.__importStar(g(2400)),_=n.__importStar(g(9559)),M=n.__importStar(g(2214)),x=n.__importStar(g(1438)),w=n.__importStar(g(7515));function L(ne,me){1&ne&&(a.\u0275\u0275elementStart(0,"mat-header-cell",21),a.\u0275\u0275text(1,"Package Id"),a.\u0275\u0275elementEnd())}function A(ne,me){if(1&ne&&(a.\u0275\u0275elementStart(0,"mat-cell",21),a.\u0275\u0275text(1),a.\u0275\u0275elementEnd()),2&ne){const $=me.$implicit,q=a.\u0275\u0275nextContext();a.\u0275\u0275advance(1),a.\u0275\u0275textInterpolate(q.getPackageId($))}}function T(ne,me){1&ne&&(a.\u0275\u0275elementStart(0,"mat-header-cell",22),a.\u0275\u0275text(1,"Version"),a.\u0275\u0275elementEnd())}function O(ne,me){if(1&ne&&(a.\u0275\u0275elementStart(0,"mat-cell",22),a.\u0275\u0275text(1),a.\u0275\u0275elementEnd()),2&ne){const $=me.$implicit,q=a.\u0275\u0275nextContext();a.\u0275\u0275advance(1),a.\u0275\u0275textInterpolate(q.getVersion($))}}function E(ne,me){1&ne&&(a.\u0275\u0275elementStart(0,"mat-header-cell",21),a.\u0275\u0275text(1,"Title"),a.\u0275\u0275elementEnd())}function D(ne,me){if(1&ne&&(a.\u0275\u0275elementStart(0,"mat-cell"),a.\u0275\u0275text(1),a.\u0275\u0275elementEnd()),2&ne){const $=me.$implicit,q=a.\u0275\u0275nextContext();a.\u0275\u0275advance(1),a.\u0275\u0275textInterpolate(q.getTitle($))}}function R(ne,me){1&ne&&a.\u0275\u0275element(0,"mat-header-row")}function j(ne,me){if(1&ne){const $=a.\u0275\u0275getCurrentView();a.\u0275\u0275elementStart(0,"mat-row",23),a.\u0275\u0275listener("click",function(){const ue=a.\u0275\u0275restoreView($).$implicit,Me=a.\u0275\u0275nextContext();return a.\u0275\u0275resetView(Me.selectRow(ue))}),a.\u0275\u0275elementEnd()}}function N(ne,me){if(1&ne){const $=a.\u0275\u0275getCurrentView();a.\u0275\u0275elementContainerStart(0),a.\u0275\u0275text(1,"\xa0 "),a.\u0275\u0275elementStart(2,"button",24),a.\u0275\u0275listener("click",function(){a.\u0275\u0275restoreView($);const Q=a.\u0275\u0275nextContext();return a.\u0275\u0275resetView(Q.onUpdate())}),a.\u0275\u0275text(3,"Update"),a.\u0275\u0275elementEnd(),a.\u0275\u0275elementContainerEnd()}}function S(ne,me){if(1&ne){const $=a.\u0275\u0275getCurrentView();a.\u0275\u0275elementContainerStart(0),a.\u0275\u0275text(1,"\xa0 "),a.\u0275\u0275elementStart(2,"button",24),a.\u0275\u0275listener("click",function(){a.\u0275\u0275restoreView($);const Q=a.\u0275\u0275nextContext();return a.\u0275\u0275resetView(Q.onDelete())}),a.\u0275\u0275text(3,"Delete"),a.\u0275\u0275elementEnd(),a.\u0275\u0275elementContainerEnd()}}function k(ne,me){1&ne&&(a.\u0275\u0275elementContainerStart(0),a.\u0275\u0275element(1,"mat-progress-spinner",25),a.\u0275\u0275elementContainerEnd())}function F(ne,me){if(1&ne&&(a.\u0275\u0275elementStart(0,"mat-card",26)(1,"mat-card-content")(2,"mat-card-header")(3,"mat-card-title"),a.\u0275\u0275text(4,"Results of the last operation"),a.\u0275\u0275elementEnd()(),a.\u0275\u0275element(5,"app-operation-outcome",27),a.\u0275\u0275elementEnd()()),2&ne){const $=a.\u0275\u0275nextContext();a.\u0275\u0275advance(5),a.\u0275\u0275property("operationOutcome",$.operationOutcome)("title",$.errMsg)}}const Y=function(){return["packageId","version","title"]};class se{constructor(me,$){this.data=me,this.fhirPathService=$,this.length=100,this.pageSize=1e3,this.pageIndex=0,this.pageSizeOptions=[this.pageSize],this.dataSource=new C.MatLegacyTableDataSource,this.update=!1,this.query={_sort:"title",_count:this.pageSize},this.client=me.getFhirClient(),this.addPackageId=new b.UntypedFormControl("",[b.Validators.required,b.Validators.minLength(1)]),this.addVersion=new b.UntypedFormControl("current",[b.Validators.required,b.Validators.minLength(1)]),this.addUrl=new b.UntypedFormControl("url"),this.search()}search(){this.client.search({resourceType:"ImplementationGuide",searchParams:this.query}).then(me=>{this.pageIndex=0,this.setBundle(me),this.selection=void 0,this.addPackageId.setValue(""),this.addVersion.setValue(""),this.addUrl.setValue("")}).catch(me=>{this.errMsg="Error accessing FHIR server",this.operationOutcome=me.response.data}),this.update=!1}getPackageId(me){const $=me.resource;return $.packageId?$.packageId:""}getTitle(me){const $=me.resource;return $.title?$.title:""}getVersion(me){const $=me.resource;return $.version?$.version:""}getPackageUrl(me){return this.fhirPathService.evaluateToString(me.resource,"extension.where(url='http://ahdis.ch/fhir/extension/packageUrl').valueUri")}setBundle(me){this.bundle=me,this.dataSource.data=this.bundle.entry,this.length=this.bundle.total,this.selection=void 0}ngOnInit(){}selectRow(me){this.selection=me.resource,this.addPackageId.setValue(this.selection.packageId),this.addUrl.setValue(this.getPackageUrl(me));let $=this.selection.version;$&&$.endsWith(" (current)")&&($=$.substring(0,$.length-10)),this.addVersion.setValue($)}onSubmit(){if(se.log("onSubmit "+this.addPackageId.value),this.errMsg=null,this.addPackageId.invalid||this.addVersion.invalid)return void(this.errMsg="Please provide package name");let me=this.addPackageId.value.trim();me.indexOf("#")>0&&(me.substring(0,me.indexOf("#")-1),this.addVersion.setValue(me.substring(0,me.indexOf("#")+1))),this.addPackageId.setValue(me);const $=this.addVersion.value.trim();this.addVersion.setValue($),this.update=!0,this.client.create({resourceType:"ImplementationGuide",body:{resourceType:"ImplementationGuide",name:me,version:$,packageId:me,url:this.addUrl.value},options:{headers:{Prefer:"return=OperationOutcome"}}}).then(q=>{this.errMsg="Created Implementation Guide "+this.addPackageId.value,this.operationOutcome=q,this.search()}).catch(q=>{this.errMsg="Error creating Implementation Guide "+this.addPackageId.value,this.operationOutcome=q.response.data,this.update=!1})}goToPage(me){me.pageIndex>this.pageIndex?this.client.nextPage({bundle:this.bundle}).then($=>{this.pageIndex=me.pageIndex,this.setBundle($),this.selection=void 0,console.log("next page called ")}):this.client.prevPage({bundle:this.bundle}).then($=>{this.pageIndex=me.pageIndex,this.setBundle($),this.selection=void 0,console.log("previous page called ")})}onUpdate(){this.errMsg=null,this.selection.name=this.addPackageId.value,this.selection.version=this.addVersion.value,this.selection.packageId=this.addPackageId.value,this.selection.url=this.addUrl.value,this.update=!0,this.client.update({resourceType:this.selection.resourceType,id:this.selection.id,body:this.selection,options:{headers:{Prefer:"return=OperationOutcome"}}}).then(me=>{this.errMsg="Updated Implementation Guide "+this.selection.packageId,this.operationOutcome=me,this.search()}).catch(me=>{this.errMsg="Error updating Implementation Guide "+this.selection.packageId,this.operationOutcome=me.response.data,this.update=!1})}onDelete(){this.errMsg=null,this.update=!0,this.client.delete({resourceType:this.selection.resourceType,id:this.selection.id,options:{headers:{Prefer:"return=OperationOutcome","X-Cascade":"delete"}}}).then(me=>{this.errMsg="Deleted Implementation Guide Resource "+this.selection.packageId,this.operationOutcome=me,this.search()}).catch(me=>{this.errMsg="Error deleting Implementation Guide "+this.selection.packageId,this.operationOutcome=me.response.data,this.update=!1})}}se.log=(0,o.default)("app:"),se.\u0275fac=function(me){return new(me||se)(a.\u0275\u0275directiveInject(c.FhirConfigService),a.\u0275\u0275directiveInject(s.FhirPathService))},se.\u0275cmp=a.\u0275\u0275defineComponent({type:se,selectors:[["app-igs"]],decls:48,vars:16,consts:[[1,"card-igs"],[3,"dataSource"],["table",""],["matColumnDef","packageId"],["class","packageId",4,"matHeaderCellDef"],["class","packageId",4,"matCellDef"],["matColumnDef","version"],["class","version",4,"matHeaderCellDef"],["class","version",4,"matCellDef"],["matColumnDef","title",1,"title"],[4,"matCellDef"],[4,"matHeaderRowDef"],[3,"click",4,"matRowDef","matRowDefColumns"],[3,"pageIndex","length","pageSize","pageSizeOptions","page"],[1,"Search","card-igs"],["matInput","",3,"formControl"],[2,"width","50vw"],["href","https://packages.fhir.org"],["mat-raised-button","","color","primary","type","submit",3,"click"],[4,"ngIf"],["class","logs",4,"ngIf"],[1,"packageId"],[1,"version"],[3,"click"],["mat-button","","type","submit",3,"click"],["mode","indeterminate"],[1,"logs"],[3,"operationOutcome","title"]],template:function(me,$){1&me&&(a.\u0275\u0275elementStart(0,"mat-card",0)(1,"mat-card-content")(2,"mat-card-header")(3,"mat-card-title"),a.\u0275\u0275text(4,"FHIR ImplementationGuides installed on server"),a.\u0275\u0275elementEnd()(),a.\u0275\u0275elementStart(5,"mat-table",1,2),a.\u0275\u0275elementContainerStart(7,3),a.\u0275\u0275template(8,L,2,0,"mat-header-cell",4),a.\u0275\u0275template(9,A,2,1,"mat-cell",5),a.\u0275\u0275elementContainerEnd(),a.\u0275\u0275elementContainerStart(10,6),a.\u0275\u0275template(11,T,2,0,"mat-header-cell",7),a.\u0275\u0275template(12,O,2,1,"mat-cell",8),a.\u0275\u0275elementContainerEnd(),a.\u0275\u0275elementContainerStart(13,9),a.\u0275\u0275template(14,E,2,0,"mat-header-cell",4),a.\u0275\u0275template(15,D,2,1,"mat-cell",10),a.\u0275\u0275elementContainerEnd(),a.\u0275\u0275template(16,R,1,0,"mat-header-row",11),a.\u0275\u0275template(17,j,1,0,"mat-row",12),a.\u0275\u0275elementEnd(),a.\u0275\u0275elementStart(18,"mat-paginator",13),a.\u0275\u0275listener("page",function(Q){return $.goToPage(Q)}),a.\u0275\u0275elementEnd()()(),a.\u0275\u0275elementStart(19,"mat-card",14)(20,"mat-card-content")(21,"mat-card-header")(22,"mat-card-title"),a.\u0275\u0275text(23,"Install an ImplementationGuide"),a.\u0275\u0275elementEnd()(),a.\u0275\u0275elementStart(24,"mat-form-field")(25,"mat-label"),a.\u0275\u0275text(26,"PackageId"),a.\u0275\u0275elementEnd(),a.\u0275\u0275element(27,"input",15),a.\u0275\u0275elementEnd(),a.\u0275\u0275text(28," \xa0 "),a.\u0275\u0275elementStart(29,"mat-form-field")(30,"mat-label"),a.\u0275\u0275text(31,"Version"),a.\u0275\u0275elementEnd(),a.\u0275\u0275element(32,"input",15),a.\u0275\u0275elementEnd(),a.\u0275\u0275text(33," \xa0 "),a.\u0275\u0275elementStart(34,"mat-form-field",16)(35,"mat-label"),a.\u0275\u0275text(36,"Package url (optional, use only if not available through "),a.\u0275\u0275elementStart(37,"a",17),a.\u0275\u0275text(38,"packages.fhir.org"),a.\u0275\u0275elementEnd(),a.\u0275\u0275text(39,")"),a.\u0275\u0275elementEnd(),a.\u0275\u0275element(40,"input",15),a.\u0275\u0275elementEnd(),a.\u0275\u0275elementStart(41,"mat-card-actions")(42,"button",18),a.\u0275\u0275listener("click",function(){return $.onSubmit()}),a.\u0275\u0275text(43,"Upload"),a.\u0275\u0275elementEnd(),a.\u0275\u0275template(44,N,4,0,"ng-container",19),a.\u0275\u0275template(45,S,4,0,"ng-container",19),a.\u0275\u0275elementEnd()()(),a.\u0275\u0275template(46,k,2,0,"ng-container",19),a.\u0275\u0275template(47,F,6,2,"mat-card",20)),2&me&&(a.\u0275\u0275advance(5),a.\u0275\u0275property("dataSource",$.dataSource),a.\u0275\u0275advance(11),a.\u0275\u0275property("matHeaderRowDef",a.\u0275\u0275pureFunction0(14,Y)),a.\u0275\u0275advance(1),a.\u0275\u0275property("matRowDefColumns",a.\u0275\u0275pureFunction0(15,Y)),a.\u0275\u0275advance(1),a.\u0275\u0275property("pageIndex",$.pageIndex)("length",$.length)("pageSize",$.pageSize)("pageSizeOptions",$.pageSizeOptions),a.\u0275\u0275advance(9),a.\u0275\u0275property("formControl",$.addPackageId),a.\u0275\u0275advance(5),a.\u0275\u0275property("formControl",$.addVersion),a.\u0275\u0275advance(8),a.\u0275\u0275property("formControl",$.addUrl),a.\u0275\u0275advance(4),a.\u0275\u0275property("ngIf",$.selection),a.\u0275\u0275advance(1),a.\u0275\u0275property("ngIf",$.selection),a.\u0275\u0275advance(1),a.\u0275\u0275property("ngIf",$.update),a.\u0275\u0275advance(1),a.\u0275\u0275property("ngIf",$.errMsg))},dependencies:[l.NgIf,d.DefaultValueAccessor,d.NgControlStatus,d.FormControlDirective,r.MatLegacyButton,u.MatLegacyCard,u.MatLegacyCardHeader,u.MatLegacyCardContent,u.MatLegacyCardTitle,u.MatLegacyCardActions,h.MatLegacyFormField,h.MatLegacyLabel,m.MatLegacyInput,_.MatLegacyPaginator,M.MatLegacyTable,M.MatLegacyHeaderCellDef,M.MatLegacyHeaderRowDef,M.MatLegacyColumnDef,M.MatLegacyCellDef,M.MatLegacyRowDef,M.MatLegacyHeaderCell,M.MatLegacyCell,M.MatLegacyHeaderRow,M.MatLegacyRow,x.MatLegacyProgressSpinner,w.OperationOutcomeComponent],styles:["[_nghost-%COMP%]{display:flex;flex-direction:column}.mat-form-field.url[_ngcontent-%COMP%]{width:200px}.mat-table[_ngcontent-%COMP%]{margin:1rem}.mat-table[_ngcontent-%COMP%] .mat-row[_ngcontent-%COMP%]{cursor:pointer}.mat-table[_ngcontent-%COMP%] .mat-cell[_ngcontent-%COMP%], .mat-table[_ngcontent-%COMP%] .mat-header-cell[_ngcontent-%COMP%]{padding-left:.5rem;padding-right:.5rem}.mat-table[_ngcontent-%COMP%] .mat-cell.title[_ngcontent-%COMP%], .mat-table[_ngcontent-%COMP%] .mat-header-cell.title[_ngcontent-%COMP%]{flex:2;justify-content:flex-end}.mat-table[_ngcontent-%COMP%] .mat-cell[_ngcontent-%COMP%]:first-child, .mat-table[_ngcontent-%COMP%] .mat-header-cell[_ngcontent-%COMP%]:first-child{padding-left:1rem}.mat-table[_ngcontent-%COMP%] .mat-cell[_ngcontent-%COMP%]:last-child, .mat-table[_ngcontent-%COMP%] .mat-header-cell[_ngcontent-%COMP%]:last-child{padding-right:1rem}.card-igs[_ngcontent-%COMP%]{margin-bottom:10px}"]}),X.IgsComponent=se},5389:(Se,X,g)=>{"use strict";Object.defineProperty(X,"__esModule",{value:!0}),X.MappingLanguageComponent=void 0;const n=g(655),b=(g(5879),g(7088),g(6223)),o=g(1385),v=n.__importDefault(g(563)),a=n.__importStar(g(5879)),c=n.__importStar(g(7088)),s=n.__importStar(g(6814)),l=n.__importStar(g(6223)),d=n.__importStar(g(9025)),r=n.__importStar(g(4187)),u=n.__importStar(g(2400));function h(L,A){if(1&L&&(a.\u0275\u0275elementStart(0,"li"),a.\u0275\u0275text(1),a.\u0275\u0275elementEnd()),2&L){const T=A.$implicit;a.\u0275\u0275advance(1),a.\u0275\u0275textInterpolate1(" ",T.diagnostics," ")}}function m(L,A){if(1&L&&(a.\u0275\u0275elementStart(0,"mat-error")(1,"ul"),a.\u0275\u0275template(2,h,2,1,"li",7),a.\u0275\u0275elementEnd()()),2&L){const T=a.\u0275\u0275nextContext();a.\u0275\u0275advance(2),a.\u0275\u0275property("ngForOf",T.operationOutcome.issue)}}function _(L,A){if(1&L&&(a.\u0275\u0275elementStart(0,"mat-hint"),a.\u0275\u0275text(1),a.\u0275\u0275elementEnd()),2&L){const T=a.\u0275\u0275nextContext();a.\u0275\u0275advance(1),a.\u0275\u0275textInterpolate1("Successfully created on server: ",T.structureMap.url,"")}}function M(L,A){if(1&L&&(a.\u0275\u0275elementStart(0,"li"),a.\u0275\u0275text(1),a.\u0275\u0275elementEnd()),2&L){const T=A.$implicit;a.\u0275\u0275advance(1),a.\u0275\u0275textInterpolate1(" ",T.diagnostics," ")}}function x(L,A){if(1&L&&(a.\u0275\u0275elementStart(0,"mat-error")(1,"ul"),a.\u0275\u0275template(2,M,2,1,"li",7),a.\u0275\u0275elementEnd()()),2&L){const T=a.\u0275\u0275nextContext();a.\u0275\u0275advance(2),a.\u0275\u0275property("ngForOf",T.operationOutcomeTransformed.issue)}}class w{constructor(A,T){this.cd=A,this.data=T,this.client=T.getFhirClient(),this.source=new b.UntypedFormControl,this.map=new b.UntypedFormControl,this.structureMap=null,this.map.valueChanges.pipe((0,o.debounceTime)(1e3),(0,o.distinctUntilChanged)()).subscribe(O=>{w.log("create StructureMap"),this.client.create({resourceType:"StructureMap",body:O,headers:{accept:"application/fhir+json","content-type":"text/fhir-mapping"}}).then(E=>{this.operationOutcome=null,this.structureMap=E,this.transform()}).catch(E=>{this.structureMap=null,this.operationOutcome=E.response.data})}),this.source.valueChanges.pipe((0,o.debounceTime)(1e3),(0,o.distinctUntilChanged)()).subscribe(O=>this.transform())}transform(){w.log("transform Source");let A=JSON.parse(this.source.value);null!=this.structureMap&&this.client.operation({name:"transform?source="+encodeURIComponent(this.structureMap.url),resourceType:"StructureMap",input:A}).then(T=>{this.operationOutcomeTransformed=null,this.transformed=T}).catch(T=>{this.transformed=null,this.operationOutcomeTransformed=T.response.data})}ngOnInit(){}fileSource(A){const T=new FileReader;if(A.target.files&&A.target.files.length){const[O]=A.target.files;T.readAsText(O),T.onload=()=>{this.source.setValue(T.result),this.cd.markForCheck()}}}fileChange(A){const T=new FileReader;if(A.target.files&&A.target.files.length){const[O]=A.target.files;T.readAsText(O),T.onload=()=>{this.map.setValue(T.result),this.cd.markForCheck()}}}}w.log=(0,v.default)("app:"),w.\u0275fac=function(A){return new(A||w)(a.\u0275\u0275directiveInject(a.ChangeDetectorRef),a.\u0275\u0275directiveInject(c.FhirConfigService))},w.\u0275cmp=a.\u0275\u0275defineComponent({type:w,selectors:[["app-mapping-language"]],decls:31,vars:8,consts:[[1,"card-maps"],[1,"fixtextarea"],["type","file","placeholder","Upload source","accept",".json",3,"change"],["matNativeControl","","rows","15","cols","400",3,"formControl"],["type","file","placeholder","Upload map","accept",".map",3,"change"],["matNativeControl","","rows","20","cols","400",3,"formControl"],[4,"ngIf"],[4,"ngFor","ngForOf"]],template:function(A,T){1&A&&(a.\u0275\u0275elementStart(0,"mat-card",0)(1,"mat-card-content")(2,"mat-card-header")(3,"mat-card-title"),a.\u0275\u0275text(4,"Source"),a.\u0275\u0275elementEnd()(),a.\u0275\u0275elementStart(5,"mat-form-field",1)(6,"mat-card-actions")(7,"input",2),a.\u0275\u0275listener("change",function(E){return T.fileSource(E)}),a.\u0275\u0275elementEnd()(),a.\u0275\u0275elementStart(8,"textarea",3),a.\u0275\u0275text(9," "),a.\u0275\u0275elementEnd()()()(),a.\u0275\u0275elementStart(10,"mat-card",0)(11,"mat-card-content")(12,"mat-card-header")(13,"mat-card-title"),a.\u0275\u0275text(14,"FHIR Mapping Language map"),a.\u0275\u0275elementEnd()(),a.\u0275\u0275elementStart(15,"mat-form-field",1)(16,"mat-card-actions")(17,"input",4),a.\u0275\u0275listener("change",function(E){return T.fileChange(E)}),a.\u0275\u0275elementEnd()(),a.\u0275\u0275elementStart(18,"textarea",5),a.\u0275\u0275text(19," "),a.\u0275\u0275elementEnd()(),a.\u0275\u0275template(20,m,3,1,"mat-error",6),a.\u0275\u0275template(21,_,2,1,"mat-hint",6),a.\u0275\u0275elementEnd()(),a.\u0275\u0275elementStart(22,"mat-card",0)(23,"mat-card-content")(24,"mat-card-header")(25,"mat-card-title"),a.\u0275\u0275text(26,"Transformed"),a.\u0275\u0275elementEnd()(),a.\u0275\u0275template(27,x,3,1,"mat-error",6),a.\u0275\u0275elementStart(28,"pre"),a.\u0275\u0275text(29),a.\u0275\u0275pipe(30,"json"),a.\u0275\u0275elementEnd()()()),2&A&&(a.\u0275\u0275advance(8),a.\u0275\u0275property("formControl",T.source),a.\u0275\u0275advance(10),a.\u0275\u0275property("formControl",T.map),a.\u0275\u0275advance(2),a.\u0275\u0275property("ngIf",T.operationOutcome),a.\u0275\u0275advance(1),a.\u0275\u0275property("ngIf",T.structureMap),a.\u0275\u0275advance(6),a.\u0275\u0275property("ngIf",T.operationOutcomeTransformed),a.\u0275\u0275advance(2),a.\u0275\u0275textInterpolate(a.\u0275\u0275pipeBind1(30,6,T.transformed)))},dependencies:[s.NgForOf,s.NgIf,l.DefaultValueAccessor,l.NgControlStatus,l.FormControlDirective,d.MatLegacyCard,d.MatLegacyCardHeader,d.MatLegacyCardContent,d.MatLegacyCardTitle,d.MatLegacyCardActions,r.MatLegacyError,r.MatLegacyFormField,r.MatLegacyHint,u.MatLegacyInput,s.JsonPipe],styles:[".fixtextarea[_ngcontent-%COMP%]{display:inline}.card-maps[_ngcontent-%COMP%]{margin-bottom:10px}"]}),X.MappingLanguageComponent=w},7515:(Se,X,g)=>{"use strict";Object.defineProperty(X,"__esModule",{value:!0}),X.OperationOutcomeComponent=void 0;const n=g(655),C=(g(5879),n.__importStar(g(5101))),b=n.__importStar(g(5879)),o=n.__importStar(g(6814)),v=n.__importStar(g(9025)),a=["editor"];function c(h,m){if(1&h&&(b.\u0275\u0275elementContainerStart(0),b.\u0275\u0275text(1),b.\u0275\u0275elementContainerEnd()),2&h){const _=b.\u0275\u0275nextContext().$implicit;b.\u0275\u0275advance(1),b.\u0275\u0275textInterpolate1(" ",_.diagnostics," ")}}function s(h,m){if(1&h&&(b.\u0275\u0275elementStart(0,"li",5),b.\u0275\u0275text(1),b.\u0275\u0275elementEnd()),2&h){const _=m.$implicit;b.\u0275\u0275advance(1),b.\u0275\u0275textInterpolate1(" ",_," ")}}function l(h,m){if(1&h&&(b.\u0275\u0275elementContainerStart(0),b.\u0275\u0275elementStart(1,"ol"),b.\u0275\u0275template(2,s,2,1,"li",4),b.\u0275\u0275elementEnd(),b.\u0275\u0275elementContainerEnd()),2&h){const _=b.\u0275\u0275nextContext().$implicit,M=b.\u0275\u0275nextContext(2);b.\u0275\u0275advance(2),b.\u0275\u0275property("ngForOf",M.getSliceInfo(_))}}function d(h,m){if(1&h){const _=b.\u0275\u0275getCurrentView();b.\u0275\u0275elementStart(0,"div",5)(1,"a",6),b.\u0275\u0275listener("click",function(){const w=b.\u0275\u0275restoreView(_).$implicit,L=b.\u0275\u0275nextContext(2);return b.\u0275\u0275resetView(L.scroll(L.getLineNo(w)))}),b.\u0275\u0275text(2),b.\u0275\u0275elementEnd(),b.\u0275\u0275text(3,":"),b.\u0275\u0275element(4,"br"),b.\u0275\u0275template(5,c,2,1,"ng-container",1),b.\u0275\u0275template(6,l,3,1,"ng-container",1),b.\u0275\u0275elementEnd()}if(2&h){const _=m.$implicit,M=b.\u0275\u0275nextContext(2);b.\u0275\u0275advance(1),b.\u0275\u0275classMap(_.severity),b.\u0275\u0275advance(1),b.\u0275\u0275textInterpolate3("Line ",M.getLineNo(_),", column ",M.getColNo(_),": ",M.getLocation(_),""),b.\u0275\u0275advance(3),b.\u0275\u0275property("ngIf",0==M.hasSliceInfo(_)),b.\u0275\u0275advance(1),b.\u0275\u0275property("ngIf",M.hasSliceInfo(_))}}function r(h,m){if(1&h&&(b.\u0275\u0275elementStart(0,"div"),b.\u0275\u0275template(1,d,7,8,"div",4),b.\u0275\u0275elementEnd()),2&h){const _=b.\u0275\u0275nextContext();b.\u0275\u0275advance(1),b.\u0275\u0275property("ngForOf",_.outcome.issue)}}X.OperationOutcomeComponent=(()=>{class h{constructor(){this.mode="ace/mode/json"}ngOnInit(){}ngAfterViewInit(){this.editor&&this.editor.nativeElement&&(C.config.set("fontSize","11px"),C.config.set("basePath","https://unpkg.com/ace-builds@1.4.12/src-noconflict"),this.aceEditor=C.edit(this.editor.nativeElement),this.aceEditor.setOption("useWorker",!1),this.aceEditor.setTheme("ace/theme/chrome"),this.mode?.indexOf("xml")>=0?this.aceEditor.session.setMode("ace/mode/xml"):this.aceEditor.session.setMode("ace/mode/json"),this.aceEditor.session.setValue(this.content),this.aceEditor.setReadOnly(!0),this.aceEditor.on("change",()=>{console.log(this.aceEditor.getValue())}),this.updateAnnotations())}updateAnnotations(){const _=[];if(this.outcome&&this.aceEditor){const M=this.aceEditor.session.getMarkers();if(M){const x=Object.keys(M);for(let w of x)this.aceEditor.session.removeMarker(M[w].id)}this.outcome.issue?.forEach(x=>this.aceEditor.getSession().addMarker(new C.Range(this.getLineNo(x)-1,0,this.getLineNo(x)-1,1),this.getLineAceClass(x),"fullLine",!0)),this.outcome.issue?.forEach(x=>_.push({row:this.getLineNo(x)-1,column:0,text:x.diagnostics,type:this.getErrorType(x)})),this.aceEditor.session.setAnnotations(_)}}getErrorType(_){switch(_.severity){case"fatal":case"error":return"error";case"warning":case"information":return"warning"}return""}set json(_){this.content=_,this.ngAfterViewInit()}set operationOutcome(_){this.outcome=_,this.outcome&&this.outcome.issue?.length>0&&(this.outcome.issue?.sort((M,x)=>this.getLineNo(M)-this.getLineNo(x)),this.ngAfterViewInit())}getJson(){return this.content}getLineAceClass(_){return"ace-highlight-"+_?.severity}getLineNo(_){return this.getExtensionIntValue(_,"http://hl7.org/fhir/StructureDefinition/operationoutcome-issue-line")??0}getColNo(_){return this.getExtensionIntValue(_,"http://hl7.org/fhir/StructureDefinition/operationoutcome-issue-col")??0}hasSliceInfo(_){return _?.diagnostics?.indexOf("Slice info:")>=0}getSliceInfo(_){let M=_?.diagnostics.substring(_?.diagnostics?.indexOf("Slice info: 1.)")+15).trimLeft(),x=new RegExp("[\\d]+[\\.][\\)]");return M.split(x)}getLocation(_){return _.expression&&_.expression.length>0?_.expression[0]:""}scroll(_){(_-=1)<0&&(_=0),this.aceEditor.scrollToLine(_,!1,!0,null)}getExtensionIntValue(_,M){if(_.extension)for(const x of _.extension)if(x.url===M)return x.valueInteger}}return h.\u0275fac=function(_){return new(_||h)},h.\u0275cmp=b.\u0275\u0275defineComponent({type:h,selectors:[["app-operation-outcome"]],viewQuery:function(_,M){if(1&_&&b.\u0275\u0275viewQuery(a,5),2&_){let x;b.\u0275\u0275queryRefresh(x=b.\u0275\u0275loadQuery())&&(M.editor=x.first)}},inputs:{mode:"mode",title:"title",json:"json",operationOutcome:"operationOutcome"},decls:8,vars:2,consts:[[1,"card-maps"],[4,"ngIf"],[1,"app-ace-editor",2,"width","100%","height","500px"],["editor",""],["class","issue",4,"ngFor","ngForOf"],[1,"issue"],[3,"click"]],template:function(_,M){1&_&&(b.\u0275\u0275elementStart(0,"mat-card",0)(1,"mat-card-content")(2,"mat-card-header")(3,"mat-card-title"),b.\u0275\u0275text(4),b.\u0275\u0275elementEnd()(),b.\u0275\u0275template(5,r,2,1,"div",1),b.\u0275\u0275element(6,"div",2,3),b.\u0275\u0275elementEnd()()),2&_&&(b.\u0275\u0275advance(4),b.\u0275\u0275textInterpolate(M.title),b.\u0275\u0275advance(1),b.\u0275\u0275property("ngIf",M.outcome))},dependencies:[o.NgForOf,o.NgIf,v.MatLegacyCard,v.MatLegacyCardHeader,v.MatLegacyCardContent,v.MatLegacyCardTitle],styles:[".card-maps[_ngcontent-%COMP%]{margin-bottom:10px}.app-ace-editor[_ngcontent-%COMP%]{border:2px solid #f8f9fa;box-shadow:0 .5rem 1rem #00000026}.issue[_ngcontent-%COMP%]{border:2px solid #f8f9fa;padding:2px}.fatal[_ngcontent-%COMP%]{background:#cc3300}.error[_ngcontent-%COMP%]{background:#ff9966}.warning[_ngcontent-%COMP%]{background:#ffe69e}.information[_ngcontent-%COMP%]{background:#cde8a5} .ace-highlight-fatal{position:absolute;background:#cc3300;opacity:.4} .ace-highlight-error{position:absolute;background:#ff9966;opacity:.4} .ace-highlight-warning{position:absolute;background:#ffcc00;opacity:.4} .ace-highlight-information{position:absolute;background:#99cc33;opacity:.4}"]}),h})()},3835:(Se,X,g)=>{"use strict";Object.defineProperty(X,"__esModule",{value:!0}),X.SettingsComponent=void 0;const n=g(655),p=n.__importDefault(g(4147)),C=n.__importStar(g(5879)),b=n.__importStar(g(9025));X.SettingsComponent=(()=>{class v{constructor(){this.version=p.default.version}ngOnInit(){}}return v.\u0275fac=function(c){return new(c||v)},v.\u0275cmp=C.\u0275\u0275defineComponent({type:v,selectors:[["app-settings"]],decls:14,vars:1,consts:[["href","https://github.com/ahdis/matchbox","target","_blank","rel","external nofollow noopener"]],template:function(c,s){1&c&&(C.\u0275\u0275elementStart(0,"mat-card")(1,"mat-card-header")(2,"mat-card-title"),C.\u0275\u0275text(3,"Matchbox settings"),C.\u0275\u0275elementEnd(),C.\u0275\u0275elementStart(4,"mat-card-subtitle"),C.\u0275\u0275text(5),C.\u0275\u0275elementEnd()(),C.\u0275\u0275elementStart(6,"mat-card-content")(7,"p")(8,"em"),C.\u0275\u0275text(9,"There are no configurable settings here right now"),C.\u0275\u0275elementEnd()(),C.\u0275\u0275elementStart(10,"p"),C.\u0275\u0275text(11," Source code: "),C.\u0275\u0275elementStart(12,"a",0),C.\u0275\u0275text(13,"github.com/ahdis/matchbox"),C.\u0275\u0275elementEnd()()()()),2&c&&(C.\u0275\u0275advance(5),C.\u0275\u0275textInterpolate1("Version ",s.version,""))},dependencies:[b.MatLegacyCard,b.MatLegacyCardHeader,b.MatLegacyCardContent,b.MatLegacyCardTitle,b.MatLegacyCardSubtitle]}),v})()},6208:(Se,X,g)=>{"use strict";Object.defineProperty(X,"__esModule",{value:!0}),X.SharedModule=void 0;const n=g(655),p=g(6814),C=g(6223),b=g(6593),o=g(9241),v=g(4505),a=g(9025),c=g(4021),s=g(3680),l=g(5616),d=g(6385),r=g(4187),u=g(617),h=g(2400),m=g(6718),_=g(9559),M=g(1036),x=g(1798),w=g(1830),L=g(4433),A=g(2214),T=g(8615),O=g(1274),E=g(9515),D=g(1438),R=n.__importStar(g(5879)),j=[p.CommonModule,b.BrowserModule,C.FormsModule,C.ReactiveFormsModule,E.TranslateModule,o.MatLegacyAutocompleteModule,v.MatLegacyButtonModule,a.MatLegacyCardModule,c.MatLegacyCheckboxModule,d.MatDividerModule,r.MatLegacyFormFieldModule,u.MatIconModule,h.MatLegacyInputModule,m.MatLegacyMenuModule,_.MatLegacyPaginatorModule,x.MatLegacySelectModule,L.MatLegacySliderModule,w.MatLegacySlideToggleModule,A.MatLegacyTableModule,O.MatToolbarModule,T.MatLegacyTabsModule,l.MatDatepickerModule,s.MatNativeDateModule,M.MatLegacyRadioModule,D.MatLegacyProgressSpinnerModule];X.SharedModule=(()=>{class k{}return k.\u0275fac=function(Y){return new(Y||k)},k.\u0275mod=R.\u0275\u0275defineNgModule({type:k}),k.\u0275inj=R.\u0275\u0275defineInjector({imports:[j,p.CommonModule,b.BrowserModule,C.FormsModule,C.ReactiveFormsModule,E.TranslateModule,o.MatLegacyAutocompleteModule,v.MatLegacyButtonModule,a.MatLegacyCardModule,c.MatLegacyCheckboxModule,d.MatDividerModule,r.MatLegacyFormFieldModule,u.MatIconModule,h.MatLegacyInputModule,m.MatLegacyMenuModule,_.MatLegacyPaginatorModule,x.MatLegacySelectModule,L.MatLegacySliderModule,w.MatLegacySlideToggleModule,A.MatLegacyTableModule,O.MatToolbarModule,T.MatLegacyTabsModule,l.MatDatepickerModule,s.MatNativeDateModule,M.MatLegacyRadioModule,D.MatLegacyProgressSpinnerModule]}),k})()},7154:(Se,X,g)=>{"use strict";Object.defineProperty(X,"__esModule",{value:!0}),X.TransformComponent=void 0;const n=g(655),b=(g(5879),g(7088),g(6223)),o=g(1385),v=n.__importStar(g(5879)),a=n.__importStar(g(7088)),c=n.__importStar(g(6814)),s=n.__importStar(g(6223)),l=n.__importStar(g(4678)),d=n.__importStar(g(9025)),r=n.__importStar(g(4187)),u=n.__importStar(g(1798)),h=n.__importStar(g(9949)),m=n.__importStar(g(9009));function _(L,A){if(1&L&&(v.\u0275\u0275elementStart(0,"mat-option",7),v.\u0275\u0275text(1),v.\u0275\u0275elementEnd()),2&L){const T=A.$implicit;v.\u0275\u0275propertyInterpolate("value",T.url),v.\u0275\u0275advance(1),v.\u0275\u0275textInterpolate(T.name)}}function M(L,A){if(1&L&&(v.\u0275\u0275elementStart(0,"li"),v.\u0275\u0275text(1),v.\u0275\u0275elementEnd()),2&L){const T=A.$implicit;v.\u0275\u0275advance(1),v.\u0275\u0275textInterpolate1(" ",T.diagnostics," ")}}function x(L,A){if(1&L&&(v.\u0275\u0275elementStart(0,"mat-error")(1,"ul"),v.\u0275\u0275template(2,M,2,1,"li",8),v.\u0275\u0275elementEnd()()),2&L){const T=v.\u0275\u0275nextContext();v.\u0275\u0275advance(2),v.\u0275\u0275property("ngForOf",T.operationOutcomeTransformed.issue)}}X.TransformComponent=(()=>{class L{constructor(T,O){this.data=T,this.cd=O,this.query={_summary:"true",_sort:"name"},this.panelOpenState=!1,this.client=T.getFhirClient(),this.client.search({resourceType:"StructureMap",searchParams:this.query}).then(E=>(this.setMaps(E),E)),this.selectedMap=new b.UntypedFormControl,this.selectedMap.valueChanges.pipe((0,o.debounceTime)(400),(0,o.distinctUntilChanged)()).subscribe(E=>{this.selectedUrl=E,this.transform()})}transform(){null!=this.source&&null!=this.selectedUrl&&this.client.operation({name:"transform?source="+encodeURIComponent(this.selectedUrl),resourceType:"StructureMap",input:this.source,options:{headers:{"content-type":this.mimeType}}}).then(T=>{this.operationOutcomeTransformed=null,this.transformed=T}).catch(T=>{this.transformed=null,this.operationOutcomeTransformed=T.response.data})}getSource(){return this.source}getMapped(){return JSON.stringify(this.transformed,null,2)}setMaps(T){this.structureMaps=T.entry.map(O=>O.resource)}ngOnInit(){}addFile(T){this.transformed=null,("application/json"===T.contentType||T.name.endsWith(".json"))&&(this.mimeType="application/fhir+json"),("application/xml"===T.contentType||T.name.endsWith(".xml"))&&(this.mimeType="application/fhir+xml");const O=new FileReader;O.readAsText(T.blob),O.onload=()=>{this.source=O.result}}}return L.\u0275fac=function(T){return new(T||L)(v.\u0275\u0275directiveInject(a.FhirConfigService),v.\u0275\u0275directiveInject(v.ChangeDetectorRef))},L.\u0275cmp=v.\u0275\u0275defineComponent({type:L,selectors:[["app-transform"]],decls:24,vars:8,consts:[[1,"card-maps"],[3,"addFiles"],[3,"highlight","lineNumbers"],["appearance","fill"],[3,"formControl"],[3,"value",4,"ngFor","ngForOf"],[4,"ngIf"],[3,"value"],[4,"ngFor","ngForOf"]],template:function(T,O){1&T&&(v.\u0275\u0275elementStart(0,"mat-card",0)(1,"mat-card-content")(2,"mat-card-header")(3,"mat-card-title"),v.\u0275\u0275text(4),v.\u0275\u0275elementEnd()(),v.\u0275\u0275elementStart(5,"div"),v.\u0275\u0275text(6,"Resource"),v.\u0275\u0275elementEnd(),v.\u0275\u0275elementStart(7,"app-upload",1),v.\u0275\u0275listener("addFiles",function(D){return O.addFile(D)}),v.\u0275\u0275elementEnd(),v.\u0275\u0275elementStart(8,"pre"),v.\u0275\u0275element(9,"code",2),v.\u0275\u0275elementEnd()()(),v.\u0275\u0275elementStart(10,"mat-card",0)(11,"mat-form-field",3)(12,"mat-label"),v.\u0275\u0275text(13,"Map for transforming"),v.\u0275\u0275elementEnd(),v.\u0275\u0275elementStart(14,"mat-select",4),v.\u0275\u0275template(15,_,2,2,"mat-option",5),v.\u0275\u0275elementEnd()()(),v.\u0275\u0275elementStart(16,"mat-card",0)(17,"mat-card-content")(18,"mat-card-header")(19,"mat-card-title"),v.\u0275\u0275text(20,"Transformed"),v.\u0275\u0275elementEnd()(),v.\u0275\u0275template(21,x,3,1,"mat-error",6),v.\u0275\u0275elementStart(22,"pre"),v.\u0275\u0275element(23,"code",2),v.\u0275\u0275elementEnd()()()),2&T&&(v.\u0275\u0275advance(4),v.\u0275\u0275textInterpolate(O.client.baseUrl),v.\u0275\u0275advance(5),v.\u0275\u0275property("highlight",O.getSource())("lineNumbers",!0),v.\u0275\u0275advance(5),v.\u0275\u0275property("formControl",O.selectedMap),v.\u0275\u0275advance(1),v.\u0275\u0275property("ngForOf",O.structureMaps),v.\u0275\u0275advance(6),v.\u0275\u0275property("ngIf",O.operationOutcomeTransformed),v.\u0275\u0275advance(2),v.\u0275\u0275property("highlight",O.getMapped())("lineNumbers",!0))},dependencies:[c.NgForOf,c.NgIf,s.NgControlStatus,s.FormControlDirective,l.MatLegacyOption,d.MatLegacyCard,d.MatLegacyCardHeader,d.MatLegacyCardContent,d.MatLegacyCardTitle,r.MatLegacyError,r.MatLegacyFormField,r.MatLegacyLabel,u.MatLegacySelect,h.Highlight,m.UploadComponent],styles:[".card-maps[_ngcontent-%COMP%]{margin-bottom:10px}"]}),L})()},9009:(Se,X,g)=>{"use strict";var n=g(7156).default;Object.defineProperty(X,"__esModule",{value:!0}),X.UploadComponent=void 0;const p=g(655),C=g(5879),b=p.__importStar(g(5879)),o=p.__importStar(g(4505)),v=p.__importStar(g(617));X.UploadComponent=(()=>{class c{constructor(){this.addFiles=new C.EventEmitter,this.dragCounter=0}checkStatus(l){if(!l.ok)throw new Error(`HTTP ${l.status} - ${l.statusText}`);return l}onDrop(l){l.preventDefault(),this.dragCounter=0;const d=l.target.files||l.dataTransfer.items;if(d)for(let u=0;u0))},dependencies:[o.MatLegacyButton,v.MatIcon],styles:["[_nghost-%COMP%]{display:flex;flex-direction:column}.attachment-field[_ngcontent-%COMP%]{border-radius:5px;background:#f0f3f6}.attachment-field[_ngcontent-%COMP%] .attachment-entry[_ngcontent-%COMP%]{border-bottom:1px solid #dedede;display:flex;align-items:center;height:40px}.attachment-field[_ngcontent-%COMP%] .attachment-entry[_ngcontent-%COMP%] .attachment-name[_ngcontent-%COMP%]{flex:1;padding:0 1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.attachment-field[_ngcontent-%COMP%] .attachment-entry[_ngcontent-%COMP%] .attachment-size[_ngcontent-%COMP%]:last-child{margin-right:1rem}.attachment-field[_ngcontent-%COMP%] .attachment-entry[_ngcontent-%COMP%] .mat-icon-button[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;line-height:inherit}.attachment-field[_ngcontent-%COMP%] .drop-zone[_ngcontent-%COMP%]{text-align:center;padding:2rem;border-bottom-left-radius:5px;border-bottom-right-radius:5px}.attachment-field[_ngcontent-%COMP%] .drop-zone[_ngcontent-%COMP%]:first-child{border-top-left-radius:5px;border-top-right-radius:5px}.attachment-field[_ngcontent-%COMP%] .drop-zone.file-over[_ngcontent-%COMP%]{background:#e0e6ec}.attachment-field[_ngcontent-%COMP%] .drop-zone[_ngcontent-%COMP%] .spacer[_ngcontent-%COMP%]{line-height:3rem}.attachment-field[_ngcontent-%COMP%] .drop-zone[_ngcontent-%COMP%] .bold-text[_ngcontent-%COMP%]{font-weight:700}"],changeDetection:0}),c})()},9936:(Se,X,g)=>{"use strict";var n=g(7156).default;Object.defineProperty(X,"__esModule",{value:!0}),X.ValidateComponent=void 0;const p=g(655),o=(g(5879),g(7088),g(6223)),v=p.__importDefault(g(827)),a=p.__importDefault(g(1328)),c=g(2214),s=p.__importStar(g(5879)),l=p.__importStar(g(7088)),d=p.__importStar(g(6814)),r=p.__importStar(g(6223)),u=p.__importStar(g(4678)),h=p.__importStar(g(4505)),m=p.__importStar(g(9025)),_=p.__importStar(g(4187)),M=p.__importStar(g(617)),x=p.__importStar(g(2400)),w=p.__importStar(g(6718)),L=p.__importStar(g(1798)),A=p.__importStar(g(2214)),T=p.__importStar(g(1438)),O=p.__importStar(g(7515)),E=p.__importStar(g(9009));function D(ot,vt){if(1&ot&&(s.\u0275\u0275elementStart(0,"mat-option",26),s.\u0275\u0275text(1),s.\u0275\u0275elementEnd()),2&ot){const rt=vt.$implicit;s.\u0275\u0275property("value",rt),s.\u0275\u0275advance(1),s.\u0275\u0275textInterpolate1(" ",rt," ")}}function R(ot,vt){if(1&ot&&(s.\u0275\u0275elementStart(0,"mat-option",26),s.\u0275\u0275text(1),s.\u0275\u0275elementEnd()),2&ot){const rt=vt.$implicit;s.\u0275\u0275property("value",rt),s.\u0275\u0275advance(1),s.\u0275\u0275textInterpolate1(" ",rt," ")}}function j(ot,vt){1&ot&&(s.\u0275\u0275elementContainerStart(0),s.\u0275\u0275element(1,"mat-progress-spinner",27),s.\u0275\u0275elementContainerEnd())}function N(ot,vt){if(1&ot&&(s.\u0275\u0275elementContainerStart(0),s.\u0275\u0275element(1,"app-operation-outcome",28),s.\u0275\u0275elementContainerEnd()),2&ot){const rt=s.\u0275\u0275nextContext();s.\u0275\u0275advance(1),s.\u0275\u0275property("operationOutcome",rt.operationOutcome)("title",rt.errMsg)}}function S(ot,vt){1&ot&&(s.\u0275\u0275elementStart(0,"mat-header-cell",29),s.\u0275\u0275text(1,"Resource"),s.\u0275\u0275elementEnd())}function k(ot,vt){if(1&ot&&(s.\u0275\u0275elementStart(0,"mat-cell",29),s.\u0275\u0275text(1),s.\u0275\u0275elementEnd()),2&ot){const rt=vt.$implicit;s.\u0275\u0275advance(1),s.\u0275\u0275textInterpolate(rt.name)}}function F(ot,vt){1&ot&&(s.\u0275\u0275elementStart(0,"mat-header-cell",30),s.\u0275\u0275text(1,"Profile/IG"),s.\u0275\u0275elementEnd())}function Y(ot,vt){if(1&ot&&(s.\u0275\u0275elementStart(0,"div"),s.\u0275\u0275text(1),s.\u0275\u0275elementEnd()),2&ot){const rt=vt.$implicit;s.\u0275\u0275advance(1),s.\u0275\u0275textInterpolate1(" ",rt," ")}}function se(ot,vt){if(1&ot&&(s.\u0275\u0275elementStart(0,"div"),s.\u0275\u0275text(1),s.\u0275\u0275elementEnd()),2&ot){const rt=s.\u0275\u0275nextContext().$implicit;s.\u0275\u0275advance(1),s.\u0275\u0275textInterpolate1(" ",rt.ig," ")}}function ne(ot,vt){if(1&ot&&(s.\u0275\u0275elementStart(0,"mat-cell",30)(1,"div"),s.\u0275\u0275template(2,Y,2,1,"div",31),s.\u0275\u0275template(3,se,2,1,"div",7),s.\u0275\u0275elementEnd()()),2&ot){const rt=vt.$implicit;s.\u0275\u0275advance(2),s.\u0275\u0275property("ngForOf",rt.profiles),s.\u0275\u0275advance(1),s.\u0275\u0275property("ngIf",rt.ig)}}function me(ot,vt){1&ot&&(s.\u0275\u0275elementStart(0,"mat-header-cell",32),s.\u0275\u0275text(1,"Errors"),s.\u0275\u0275elementEnd())}function $(ot,vt){if(1&ot&&(s.\u0275\u0275elementStart(0,"mat-cell",32),s.\u0275\u0275text(1),s.\u0275\u0275elementEnd()),2&ot){const rt=vt.$implicit;s.\u0275\u0275advance(1),s.\u0275\u0275textInterpolate1("",rt.operationOutcome?rt.getErrors():"-"," ")}}function q(ot,vt){1&ot&&(s.\u0275\u0275elementStart(0,"mat-header-cell",32),s.\u0275\u0275text(1,"Warnings"),s.\u0275\u0275elementEnd())}function Q(ot,vt){if(1&ot&&(s.\u0275\u0275elementStart(0,"mat-cell",32),s.\u0275\u0275text(1),s.\u0275\u0275elementEnd()),2&ot){const rt=vt.$implicit;s.\u0275\u0275advance(1),s.\u0275\u0275textInterpolate1("",rt.operationOutcome?rt.getWarnings():"-"," ")}}function ue(ot,vt){1&ot&&(s.\u0275\u0275elementStart(0,"mat-header-cell",32),s.\u0275\u0275text(1,"Info"),s.\u0275\u0275elementEnd())}function Me(ot,vt){if(1&ot&&(s.\u0275\u0275elementStart(0,"mat-cell",32),s.\u0275\u0275text(1),s.\u0275\u0275elementEnd()),2&ot){const rt=vt.$implicit;s.\u0275\u0275advance(1),s.\u0275\u0275textInterpolate1("",rt.operationOutcome?rt.getInfos():"-"," ")}}function Oe(ot,vt){1&ot&&(s.\u0275\u0275elementStart(0,"mat-header-cell",32),s.\u0275\u0275text(1,"Remove"),s.\u0275\u0275elementEnd())}function Xe(ot,vt){if(1&ot){const rt=s.\u0275\u0275getCurrentView();s.\u0275\u0275elementStart(0,"mat-cell",32)(1,"button",33),s.\u0275\u0275listener("click",function(){const ee=s.\u0275\u0275restoreView(rt).$implicit,ae=s.\u0275\u0275nextContext();return s.\u0275\u0275resetView(ae.remove(ee))}),s.\u0275\u0275elementStart(2,"mat-icon"),s.\u0275\u0275text(3,"remove"),s.\u0275\u0275elementEnd()()()}}function Be(ot,vt){1&ot&&s.\u0275\u0275element(0,"mat-header-row")}function $e(ot,vt){if(1&ot){const rt=s.\u0275\u0275getCurrentView();s.\u0275\u0275elementStart(0,"mat-row",34),s.\u0275\u0275listener("click",function(){const ee=s.\u0275\u0275restoreView(rt).$implicit,ae=s.\u0275\u0275nextContext();return s.\u0275\u0275resetView(ae.selectRow(ee))}),s.\u0275\u0275elementEnd()}}function st(ot,vt){if(1&ot&&(s.\u0275\u0275elementStart(0,"div",2)(1,"mat-form-field",36)(2,"mat-label"),s.\u0275\u0275text(3),s.\u0275\u0275elementEnd(),s.\u0275\u0275element(4,"input",37),s.\u0275\u0275elementEnd()()),2&ot){const rt=vt.$implicit;s.\u0275\u0275advance(3),s.\u0275\u0275textInterpolate(rt.param.name),s.\u0275\u0275advance(1),s.\u0275\u0275property("formControl",rt.formControl)}}function Mt(ot,vt){if(1&ot&&(s.\u0275\u0275elementContainerStart(0),s.\u0275\u0275template(1,st,5,2,"div",35),s.\u0275\u0275elementContainerEnd()),2&ot){const rt=s.\u0275\u0275nextContext();s.\u0275\u0275advance(1),s.\u0275\u0275property("ngForOf",rt.validatorSettings)}}function tt(ot,vt){if(1&ot&&(s.\u0275\u0275elementContainerStart(0),s.\u0275\u0275element(1,"app-operation-outcome",38),s.\u0275\u0275elementContainerEnd()),2&ot){const rt=s.\u0275\u0275nextContext();s.\u0275\u0275advance(1),s.\u0275\u0275property("mode",rt.selectedEntry.mimetype)("operationOutcome",rt.operationOutcome)("json",rt.json)("title",rt.validationOutcomeTitle())}}const St=function(){return["name","profile","error","warning","info","action"]};class bt{constructor(vt){this.param=vt,this.formControl=new o.UntypedFormControl}isValueSet(){return null!=this.valueBoolean||null!=this.valueString}}class xt{constructor(vt,rt,J,Ce){this.name=vt,this.json=rt,this.mimetype=J,this.profiles=Ce}getErrors(){if(this.operationOutcome)return this.operationOutcome?.issue?.filter(vt=>"processing"===vt.code&&("error"===vt.severity||"fatal"===vt.severity)).length}getWarnings(){if(this.operationOutcome)return this.operationOutcome?.issue?.filter(vt=>"processing"===vt.code&&"warning"===vt.severity).length}getInfos(){if(this.operationOutcome)return this.operationOutcome?.issue?.filter(vt=>"processing"===vt.code&&"information"===vt.severity).length}}X.ValidateComponent=(()=>{class ot{constructor(rt,J){this.data=rt,this.cd=J,this.selectedIg=null,this.validatorSettings=new Array,this.dataSource=new c.MatLegacyTableDataSource,this.showSettings=!1,this.client=rt.getFhirClient(),this.client.capabilityStatement().then(Ce=>{this.capabilitystatement=Ce,this.client.read({resourceType:"OperationDefinition",id:"-s-validate"}).then(ee=>{ee.parameter?.forEach(ae=>{"profile"==ae.name&&(this.profiles=ae.targetProfile)}),ee.parameter.filter(ae=>"in"==ae.use&&"resource"!=ae.name&&"profile"!=ae.name&&"ig"!=ae.name).forEach(ae=>{this.validatorSettings.push(new bt(ae))})})}).catch(Ce=>{this.errMsg="Error accessing FHIR server",this.operationOutcome=Ce.response.data}),this.client.search({resourceType:"ImplementationGuide",searchParams:{_sort:"title",_count:1e3}}).then(Ce=>{this.igs=Ce.entry.map(ee=>ee.resource.packageId+"#"+ee.resource.version).sort()}).catch(Ce=>{this.errMsg="Error accessing FHIR server",this.operationOutcome=Ce.response.data}),this.validationInProgress=0}getSelectedProfile(){return this.selectedProfile}setSelectedProfile(rt){this.selectedProfile=rt}getSelectedIg(){return this.selectedIg}setSelectedIg(rt){this.selectedIg=rt}getProfiles(){return this.profiles}addFile(rt){this.validationInProgress+=1,("application/json"===rt.contentType||rt.name.endsWith(".json"))&&this.addJson(rt.blob),("application/xml"===rt.contentType||rt.name.endsWith(".xml"))&&this.addXml(rt.blob),rt.name.endsWith(".tgz")&&this.addPackage(rt.blob),this.validationInProgress-=1}addXml(rt){this.selectedProfile=null,this.selectedIg=null;const J=new FileReader;J.readAsText(rt),J.onload=()=>{this.cd.markForCheck();let ee=new xt(rt.name,J.result,"application/fhir+xml",null);this.selectRow(ee),null!=this.selectedProfile&&(ee.profiles=[this.selectedProfile]),this.validate(ee)}}addJson(rt){this.selectedProfile=null,this.selectedIg=null;const J=new FileReader;J.readAsText(rt),J.onload=()=>{this.cd.markForCheck();let ee=new xt(rt.name,J.result,"application/fhir+json",null);this.selectRow(ee),null!=this.selectedProfile&&(ee.profiles=[this.selectedProfile]),this.validate(ee)}}onValidateIg(){let rt="";null!=this.selectedIg&&(rt=this.selectedIg.endsWith(" (current)")?this.selectedIg.substring(0,this.selectedIg.length-10):this.selectedIg,rt=rt.replace("#","-"),this.fetchData(this.client.baseUrl+"/ImplementationGuide/"+rt))}fetchData(rt){var J=this;return n(function*(){const Ce=yield fetch(rt,{cache:"no-store",headers:{Accept:"application/gzip"}}),ae=(Ce.headers.get("Content-Type"),yield Ce.blob());J.addPackage(ae)})()}addPackage(rt){this.selectedProfile=null,this.selectedIg=null;const J=new FileReader;J.readAsArrayBuffer(rt),J.onload=()=>{if(this.package=J.result,this.cd.markForCheck(),null!=this.package){const Ce=v.default.inflate(new Uint8Array(this.package)),ee=new Array;let ae=null,ie=null;const pe=this;(0,a.default)(Ce.buffer).then(function(Te){ee.forEach(ct=>{ct.ig=ie,ct.fhirVersion=ae,pe.validate(ct)})},function(Te){},function(Te){if(Te.name?.indexOf("package.json")>=0){let ct=new TextDecoder("utf-8"),Lt=JSON.parse(ct.decode(Te.buffer));ae=Lt.fhirVersions[0],ie=Lt.name+"#"+Lt.version}if(Te.name?.indexOf("example")>=0&&-1==Te.name?.indexOf(".index.json")){let ct=Te.name;ct.startsWith("package/example/")&&(ct=ct.substring(16)),ct.startsWith("example/")&&(ct=ct.substring(8));let Lt=new TextDecoder("utf-8"),Dt=JSON.parse(Lt.decode(Te.buffer)),Kt=Dt.meta?.profile;for(let yt=0;yt0))return;J="?profile="+encodeURIComponent(rt.profiles[0]),null!=rt.ig&&(J+="&ig="+encodeURIComponent(rt.ig))}catch{}for(let Ce=0;Ce0&&(J+="&"+this.validatorSettings[Ce].param.name+"="+encodeURIComponent(this.validatorSettings[Ce].formControl.value));this.validationInProgress+=1,this.client.operation({name:"validate"+J,resourceType:void 0,input:rt.json,options:{headers:{accept:"application/fhir+json","content-type":rt.mimetype}}}).then(Ce=>{this.validationInProgress-=1,rt.operationOutcome=Ce,this.dataSource.data.push(rt),this.dataSource.data=this.dataSource.data,0==this.validationInProgress&&this.selectRow(rt)}).catch(Ce=>{this.validationInProgress-=1})}selectRow(rt){if(this.errMsg="",this.selectedEntry=rt,rt){if(this.operationOutcome=rt.operationOutcome,this.json=rt.json,this.resourceName="",this.resourceId="","application/fhir+json"===rt.mimetype)try{const J=JSON.parse(this.json);J?.resourceType&&(this.resourceName=J.resourceType,this.resourceId=J.id),this.selectedProfile=J.meta?.profile?.[0],null==this.selectedProfile&&J?.resourceType&&(this.selectedProfile="http://hl7.org/fhir/StructureDefinition/"+J.resourceType)}catch(J){this.errMsg=J.message}if("application/fhir+xml"===rt.mimetype){let J=this.json.indexOf("",Ce);if(Ce0&&(ae=ae.substring(0,ie)),ie=ae.indexOf(":"),ie>0&&(ae=ae.substring(ie+1)),this.resourceName=ae;let pe=this.json.indexOf("profile",ee);if(pe>0){let Te=this.json.indexOf('value="',pe)+7,ct=this.json.indexOf('"',Te);Te0),s.\u0275\u0275advance(1),s.\u0275\u0275property("ngIf",J.errMsg),s.\u0275\u0275advance(6),s.\u0275\u0275property("dataSource",J.dataSource),s.\u0275\u0275advance(20),s.\u0275\u0275property("matHeaderRowDef",s.\u0275\u0275pureFunction0(13,St)),s.\u0275\u0275advance(1),s.\u0275\u0275property("matRowDefColumns",s.\u0275\u0275pureFunction0(14,St)),s.\u0275\u0275advance(9),s.\u0275\u0275property("ngIf",J.showSettings),s.\u0275\u0275advance(1),s.\u0275\u0275property("ngIf",J.operationOutcome))},dependencies:[d.NgForOf,d.NgIf,r.DefaultValueAccessor,r.NgControlStatus,r.NgModel,r.FormControlDirective,u.MatLegacyOption,h.MatLegacyButton,m.MatLegacyCard,m.MatLegacyCardHeader,m.MatLegacyCardContent,m.MatLegacyCardTitle,m.MatLegacyCardActions,_.MatLegacyFormField,_.MatLegacyLabel,M.MatIcon,x.MatLegacyInput,w.MatLegacyMenuItem,L.MatLegacySelect,A.MatLegacyTable,A.MatLegacyHeaderCellDef,A.MatLegacyHeaderRowDef,A.MatLegacyColumnDef,A.MatLegacyCellDef,A.MatLegacyRowDef,A.MatLegacyHeaderCell,A.MatLegacyCell,A.MatLegacyHeaderRow,A.MatLegacyRow,T.MatLegacyProgressSpinner,O.OperationOutcomeComponent,E.UploadComponent],styles:["[_nghost-%COMP%]{display:flex;flex-direction:column}.mat-table[_ngcontent-%COMP%]{margin:1rem}.mat-table[_ngcontent-%COMP%] .mat-row[_ngcontent-%COMP%]{cursor:pointer}.mat-table[_ngcontent-%COMP%] .mat-cell[_ngcontent-%COMP%], .mat-table[_ngcontent-%COMP%] .mat-header-cell[_ngcontent-%COMP%]{padding-left:.5rem;padding-right:.5rem}.mat-table[_ngcontent-%COMP%] .mat-cell.name[_ngcontent-%COMP%], .mat-table[_ngcontent-%COMP%] .mat-header-cell.name[_ngcontent-%COMP%]{flex:2}.mat-table[_ngcontent-%COMP%] .mat-cell.profile[_ngcontent-%COMP%], .mat-table[_ngcontent-%COMP%] .mat-header-cell.profile[_ngcontent-%COMP%]{flex:4}.mat-table[_ngcontent-%COMP%] .mat-cell.res[_ngcontent-%COMP%], .mat-table[_ngcontent-%COMP%] .mat-header-cell.res[_ngcontent-%COMP%]{flex:.5;justify-content:flex-end}.mat-table[_ngcontent-%COMP%] .mat-cell[_ngcontent-%COMP%]:first-child, .mat-table[_ngcontent-%COMP%] .mat-header-cell[_ngcontent-%COMP%]:first-child{padding-left:1rem}.mat-table[_ngcontent-%COMP%] .mat-cell[_ngcontent-%COMP%]:last-child, .mat-table[_ngcontent-%COMP%] .mat-header-cell[_ngcontent-%COMP%]:last-child{padding-right:1rem}.mat-table[_ngcontent-%COMP%] .mat-cell[_ngcontent-%COMP%] .cell-content[_ngcontent-%COMP%], .mat-table[_ngcontent-%COMP%] .mat-header-cell[_ngcontent-%COMP%] .cell-content[_ngcontent-%COMP%]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.form-field-group[_ngcontent-%COMP%]{padding-left:1rem;padding-right:1rem;display:flex;flex-direction:row}.form-field-group[_ngcontent-%COMP%] mat-form-field[_ngcontent-%COMP%]{width:100%}.card-maps[_ngcontent-%COMP%]{margin-bottom:10px}.column50[_ngcontent-%COMP%]{width:40%}"]}),ot})()},553:(Se,X)=>{"use strict";Object.defineProperty(X,"__esModule",{value:!0}),X.environment=void 0,X.environment={production:!0}},4913:(Se,X,g)=>{"use strict";const C=g(655).__importStar(g(6593)),b=g(5879),o=g(8629);g(553).environment.production&&(0,b.enableProdMode)(),C.platformBrowser().bootstrapModule(o.AppModule).catch(a=>console.log(a))},5101:(Se,X,g)=>{Se=g.nmd(Se),function(){var p=function(){return this}();!p&&typeof window<"u"&&(p=window);var C=function(s,l,d){"string"==typeof s?(2==arguments.length&&(d=l),C.modules[s]||(C.payloads[s]=d,C.modules[s]=null)):C.original?C.original.apply(this,arguments):(console.error("dropping module because define wasn't a string."),console.trace())};C.modules={},C.payloads={};var b=function(s,l,d){if("string"==typeof l){var r=a(s,l);if(null!=r)return d&&d(),r}else if("[object Array]"===Object.prototype.toString.call(l)){for(var u=[],h=0,m=l.length;ha.length)&&(v=a.length);var c=a.indexOf(o,v-=o.length);return-1!==c&&c===v}),String.prototype.repeat||b(String.prototype,"repeat",function(o){for(var v="",a=this;o>0;)1&o&&(v+=a),(o>>=1)&&(a+=a);return v}),String.prototype.includes||b(String.prototype,"includes",function(o,v){return-1!=this.indexOf(o,v)}),Object.assign||(Object.assign=function(o){if(null==o)throw new TypeError("Cannot convert undefined or null to object");for(var v=Object(o),a=1;a>>0,s=arguments[1]>>0,l=s<0?Math.max(a+s,0):Math.min(s,a),d=arguments[2],r=void 0===d?a:d>>0,u=r<0?Math.max(a+r,0):Math.min(r,a);l0;)1&a&&(c+=v),(a>>=1)&&(v+=v);return c};var b=/^\s\s*/,o=/\s\s*$/;p.stringTrimLeft=function(v){return v.replace(b,"")},p.stringTrimRight=function(v){return v.replace(o,"")},p.copyObject=function(v){var a={};for(var c in v)a[c]=v[c];return a},p.copyArray=function(v){for(var a=[],c=0,s=v.length;c=0?parseFloat((v.match(/(?:MSIE |Trident\/[0-9]+[\.0-9]+;.*rv:)([0-9]+[\.0-9]+)/)||[])[1]):parseFloat((v.match(/(?:Trident\/[0-9]+[\.0-9]+;.*rv:)([0-9]+[\.0-9]+)/)||[])[1]),p.isOldIE=p.isIE&&p.isIE<9,p.isGecko=p.isMozilla=v.match(/ Gecko\/\d+/),p.isOpera="object"==typeof opera&&"[object Opera]"==Object.prototype.toString.call(window.opera),p.isWebKit=parseFloat(v.split("WebKit/")[1])||void 0,p.isChrome=parseFloat(v.split(" Chrome/")[1])||void 0,p.isEdge=parseFloat(v.split(" Edge/")[1])||void 0,p.isAIR=v.indexOf("AdobeAIR")>=0,p.isAndroid=v.indexOf("Android")>=0,p.isChromeOS=v.indexOf(" CrOS ")>=0,p.isIOS=/iPad|iPhone|iPod/.test(v)&&!window.MSStream,p.isIOS&&(p.isMac=!0),p.isMobile=p.isIOS||p.isAndroid}),ace.define("ace/lib/dom",["require","exports","module","ace/lib/useragent"],function(n,p,C){"use strict";var b=n("./useragent");p.buildDom=function d(r,u,h){if("string"==typeof r&&r){var m=document.createTextNode(r);return u&&u.appendChild(m),m}if(!Array.isArray(r))return r&&r.appendChild&&u&&u.appendChild(r),r;if("string"!=typeof r[0]||!r[0]){for(var _=[],M=0;M"u")){if(a)if(u)c();else if(!1===u)return a.push([d,r]);if(!v){var h=u;u&&u.getRootNode?(!(h=u.getRootNode())||h==u)&&(h=document):h=document;var m=h.ownerDocument||h;if(r&&p.hasCssString(r,h))return null;r&&(d+="\n/*# sourceURL=ace/css/"+r+" */");var _=p.createElement("style");_.appendChild(m.createTextNode(d)),r&&(_.id=r),h==m&&(h=p.getDocumentHead(m)),h.insertBefore(_,h.firstChild)}}}if(p.useStrictCSP=function(d){v=d,0==d?c():a||(a=[])},p.importCssString=s,p.importCssStylsheet=function(d,r){p.buildDom(["link",{rel:"stylesheet",href:d}],p.getDocumentHead(r))},p.scrollbarWidth=function(d){var r=p.createElement("ace_inner");r.style.width="100%",r.style.minWidth="0px",r.style.height="200px",r.style.display="block";var u=p.createElement("ace_outer"),h=u.style;h.position="absolute",h.left="-10000px",h.overflow="hidden",h.width="200px",h.minWidth="0px",h.height="150px",h.display="block",u.appendChild(r);var m=d&&d.documentElement||document&&document.documentElement;if(!m)return 0;m.appendChild(u);var _=r.offsetWidth;h.overflow="scroll";var M=r.offsetWidth;return _===M&&(M=u.clientWidth),m.removeChild(u),_-M},p.computedStyle=function(d,r){return window.getComputedStyle(d,"")||{}},p.setStyle=function(d,r,u){d[r]!==u&&(d[r]=u)},p.HAS_CSS_ANIMATION=!1,p.HAS_CSS_TRANSFORMS=!1,p.HI_DPI=!b.isWin||typeof window<"u"&&window.devicePixelRatio>=1.5,b.isChromeOS&&(p.HI_DPI=!1),typeof document<"u"){var l=document.createElement("div");p.HI_DPI&&void 0!==l.style.transform&&(p.HAS_CSS_TRANSFORMS=!0),!b.isEdge&&typeof l.style.animationName<"u"&&(p.HAS_CSS_ANIMATION=!0),l=null}p.translate=p.HAS_CSS_TRANSFORMS?function(d,r,u){d.style.transform="translate("+Math.round(r)+"px, "+Math.round(u)+"px)"}:function(d,r,u){d.style.top=Math.round(u)+"px",d.style.left=Math.round(r)+"px"}}),ace.define("ace/lib/net",["require","exports","module","ace/lib/dom"],function(n,p,C){"use strict";var b=n("./dom");p.get=function(o,v){var a=new XMLHttpRequest;a.open("GET",o,!0),a.onreadystatechange=function(){4===a.readyState&&v(a.responseText)},a.send(null)},p.loadScript=function(o,v){var a=b.getDocumentHead(),c=document.createElement("script");c.src=o,a.appendChild(c),c.onload=c.onreadystatechange=function(s,l){(l||!c.readyState||"loaded"==c.readyState||"complete"==c.readyState)&&(c=c.onload=c.onreadystatechange=null,l||v())}},p.qualifyURL=function(o){var v=document.createElement("a");return v.href=o,v.href}}),ace.define("ace/lib/oop",["require","exports","module"],function(n,p,C){"use strict";p.inherits=function(b,o){b.super_=o,b.prototype=Object.create(o.prototype,{constructor:{value:b,enumerable:!1,writable:!0,configurable:!0}})},p.mixin=function(b,o){for(var v in o)b[v]=o[v];return b},p.implement=function(b,o){p.mixin(b,o)}}),ace.define("ace/lib/event_emitter",["require","exports","module"],function(n,p,C){"use strict";var b={},o=function(){this.propagationStopped=!0},v=function(){this.defaultPrevented=!0};b._emit=b._dispatchEvent=function(a,c){this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={});var s=this._eventRegistry[a]||[],l=this._defaultHandlers[a];if(s.length||l){("object"!=typeof c||!c)&&(c={}),c.type||(c.type=a),c.stopPropagation||(c.stopPropagation=o),c.preventDefault||(c.preventDefault=v),s=s.slice();for(var d=0;d1&&(_=h[h.length-2]);var x=c[u+"Path"];return null==x?x=c.basePath:"/"==m&&(u=m=""),x&&"/"!=x.slice(-1)&&(x+="/"),x+u+m+_+this.get("suffix")},p.setModuleUrl=function(r,u){return c.$moduleUrls[r]=u},p.setLoader=function(r){l=r},p.dynamicModules=Object.create(null),p.$loading={},p.$loaded={},p.loadModule=function(r,u){var h,m;Array.isArray(r)&&(m=r[0],r=r[1]);var _=function(M){if(M&&!p.$loading[r])return u&&u(M);if(p.$loading[r]||(p.$loading[r]=[]),p.$loading[r].push(u),!(p.$loading[r].length>1)){var x=function(){!function(r,u){"ace/theme/textmate"===r||"./theme/textmate"===r?u(0,n("./theme/textmate")):l?l(r,u):console.error("loader is not configured")}(r,function(w,L){L&&(p.$loaded[r]=L),p._emit("load.module",{name:r,module:L});var A=p.$loading[r];p.$loading[r]=null,A.forEach(function(T){T&&T(L)})})};if(!p.get("packaged"))return x();o.loadScript(p.moduleUrl(r,m),x),d()}};if(p.dynamicModules[r])p.dynamicModules[r]().then(function(M){_(M.default?M.default:M)});else{try{h=this.$require(r)}catch{}_(h||p.$loaded[r])}},p.$require=function(r){if("function"==typeof C.require)return C.require(r)},p.setModuleLoader=function(r,u){p.dynamicModules[r]=u};var d=function(){!c.basePath&&!c.workerPath&&!c.modePath&&!c.themePath&&!Object.keys(c.$moduleUrls).length&&(console.error("Unable to infer path to ace from script src,","use ace.config.set('basePath', 'path') to enable dynamic loading of modes and themes","or with webpack use ace/webpack-resolver"),d=function(){})};p.version="1.23.4"}),ace.define("ace/loader_build",["require","exports","module","ace/lib/fixoldbrowsers","ace/config"],function(n,p,C){"use strict";n("./lib/fixoldbrowsers");var b=n("./config");b.setLoader(function(c,s){n([c],function(l){s(null,l)})});var o=function(){return this||typeof window<"u"&&window}();function v(c){if(o&&o.document){b.set("packaged",c||n.packaged||C.packaged||o.define&&g.amdD.packaged);var s={},l="",d=document.currentScript||document._currentScript,r=d&&d.ownerDocument||document;d&&d.src&&(l=d.src.split(/[?#]/)[0].split("/").slice(0,-1).join("/")||"");for(var u=r.getElementsByTagName("script"),h=0;h ["+this.end.row+"/"+this.end.column+"]"},v.prototype.contains=function(a,c){return 0==this.compare(a,c)},v.prototype.compareRange=function(a){var c,s=a.end,l=a.start;return 1==(c=this.compare(s.row,s.column))?1==(c=this.compare(l.row,l.column))?2:0==c?1:0:-1==c?-2:-1==(c=this.compare(l.row,l.column))?-1:1==c?42:0},v.prototype.comparePoint=function(a){return this.compare(a.row,a.column)},v.prototype.containsRange=function(a){return 0==this.comparePoint(a.start)&&0==this.comparePoint(a.end)},v.prototype.intersects=function(a){var c=this.compareRange(a);return-1==c||0==c||1==c},v.prototype.isEnd=function(a,c){return this.end.row==a&&this.end.column==c},v.prototype.isStart=function(a,c){return this.start.row==a&&this.start.column==c},v.prototype.setStart=function(a,c){"object"==typeof a?(this.start.column=a.column,this.start.row=a.row):(this.start.row=a,this.start.column=c)},v.prototype.setEnd=function(a,c){"object"==typeof a?(this.end.column=a.column,this.end.row=a.row):(this.end.row=a,this.end.column=c)},v.prototype.inside=function(a,c){return 0==this.compare(a,c)&&!(this.isEnd(a,c)||this.isStart(a,c))},v.prototype.insideStart=function(a,c){return 0==this.compare(a,c)&&!this.isEnd(a,c)},v.prototype.insideEnd=function(a,c){return 0==this.compare(a,c)&&!this.isStart(a,c)},v.prototype.compare=function(a,c){return this.isMultiLine()||a!==this.start.row?athis.end.row?1:this.start.row===a?c>=this.start.column?0:-1:this.end.row===a?c<=this.end.column?0:1:0:cthis.end.column?1:0},v.prototype.compareStart=function(a,c){return this.start.row==a&&this.start.column==c?-1:this.compare(a,c)},v.prototype.compareEnd=function(a,c){return this.end.row==a&&this.end.column==c?1:this.compare(a,c)},v.prototype.compareInside=function(a,c){return this.end.row==a&&this.end.column==c?1:this.start.row==a&&this.start.column==c?-1:this.compare(a,c)},v.prototype.clipRows=function(a,c){if(this.end.row>c)var s={row:c+1,column:0};else this.end.rowc)var l={row:c+1,column:0};else this.start.row1?++O>4&&(O=1):O=1,o.isIE){var k=Math.abs(S.clientX-E)>5||Math.abs(S.clientY-D)>5;(!R||k)&&(O=1),R&&clearTimeout(R),R=setTimeout(function(){R=null},w[O-1]||600),1==O&&(E=S.clientX,D=S.clientY)}if(S._clicks=O,L[A]("mousedown",S),O>4)O=0;else if(O>1)return L[A](j[O],S)}Array.isArray(x)||(x=[x]),x.forEach(function(S){r(S,"mousedown",N,T)})};var h=function(x){return 0|(x.ctrlKey?1:0)|(x.altKey?2:0)|(x.shiftKey?4:0)|(x.metaKey?8:0)};function m(x,w,L){var A=h(w);if(!o.isMac&&v){if(w.getModifierState&&(w.getModifierState("OS")||w.getModifierState("Win"))&&(A|=8),v.altGr){if(3==(3&A))return;v.altGr=0}if(18===L||17===L){var T="location"in w?w.location:w.keyLocation;17===L&&1===T?1==v[L]&&(a=w.timeStamp):18===L&&3===A&&2===T&&w.timeStamp-a<50&&(v.altGr=!0)}}if(L in b.MODIFIER_KEYS&&(L=-1),A||13!==L||3!==(T="location"in w?w.location:w.keyLocation)||(x(w,A,-L),!w.defaultPrevented)){if(o.isChromeOS&&8&A){if(x(w,A,L),w.defaultPrevented)return;A&=-9}return!!(A||L in b.FUNCTION_KEYS||L in b.PRINTABLE_KEYS)&&x(w,A,L)}}function _(){v=Object.create(null)}if(p.getModifierString=function(x){return b.KEY_MODS[h(x)]},p.addCommandKeyListener=function(x,w,L){if(o.isOldGecko||o.isOpera&&!("KeyboardEvent"in window)){var A=null;r(x,"keydown",function(O){A=O.keyCode},L),r(x,"keypress",function(O){return m(w,O,A)},L)}else{var T=null;r(x,"keydown",function(O){v[O.keyCode]=(v[O.keyCode]||0)+1;var E=m(w,O,O.keyCode);return T=O.defaultPrevented,E},L),r(x,"keypress",function(O){T&&(O.ctrlKey||O.altKey||O.shiftKey||O.metaKey)&&(p.stopEvent(O),T=null)},L),r(x,"keyup",function(O){v[O.keyCode]=null},L),v||(_(),r(window,"focus",_))}},"object"==typeof window&&window.postMessage&&!o.isOldIE){var M=1;p.nextTick=function(x,w){w=w||window;var L="zero-timeout-message-"+M++,A=function(T){T.data==L&&(p.stopPropagation(T),u(w,"message",A),x())};r(w,"message",A),w.postMessage(L,"*")}}p.$idleBlocked=!1,p.onIdle=function(x,w){return setTimeout(function L(){p.$idleBlocked?setTimeout(L,100):x()},w)},p.$idleBlockId=null,p.blockIdle=function(x){p.$idleBlockId&&clearTimeout(p.$idleBlockId),p.$idleBlocked=!0,p.$idleBlockId=setTimeout(function(){p.$idleBlocked=!1},x||100)},p.nextFrame="object"==typeof window&&(window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame),p.nextFrame=p.nextFrame?p.nextFrame.bind(window):function(x){setTimeout(x,17)}}),ace.define("ace/clipboard",["require","exports","module"],function(n,p,C){"use strict";var b;C.exports={lineMode:!1,pasteCancelled:function(){return!!(b&&b>Date.now()-50)||(b=!1)},cancel:function(){b=Date.now()}}}),ace.define("ace/keyboard/textinput",["require","exports","module","ace/lib/event","ace/config","ace/lib/useragent","ace/lib/dom","ace/lib/lang","ace/clipboard","ace/lib/keys"],function(n,p,C){"use strict";var b=n("../lib/event"),o=n("../config").nls,v=n("../lib/useragent"),a=n("../lib/dom"),c=n("../lib/lang"),s=n("../clipboard"),l=v.isChrome<18,d=v.isIE,r=v.isChrome>63,u=400,h=n("../lib/keys"),m=h.KEY_MODS,_=v.isIOS,M=_?/\s/:/\n/,x=v.isMobile;p.TextInput=function(L,A){var T=a.createElement("textarea");T.className="ace_text-input",T.setAttribute("wrap","off"),T.setAttribute("autocorrect","off"),T.setAttribute("autocapitalize","off"),T.setAttribute("spellcheck",!1),T.style.opacity="0",L.insertBefore(T,L.firstChild);var O=!1,E=!1,D=!1,R=!1,j="";x||(T.style.fontSize="1px");var N=!1,S=!1,k="",F=0,Y=0,se=0;try{var ne=document.activeElement===T}catch{}this.setAriaOptions=function(ee){ee.activeDescendant?(T.setAttribute("aria-haspopup","true"),T.setAttribute("aria-autocomplete",ee.inline?"both":"list"),T.setAttribute("aria-activedescendant",ee.activeDescendant)):(T.setAttribute("aria-haspopup","false"),T.setAttribute("aria-autocomplete","both"),T.removeAttribute("aria-activedescendant")),ee.role&&T.setAttribute("role",ee.role)},this.setAriaLabel=function(){if(A.session&&A.renderer.enableKeyboardAccessibility){var ee=A.session.selection.cursor.row;T.setAttribute("aria-roledescription",o("editor")),T.setAttribute("aria-label",o("Cursor at row $0",[ee+1]))}else T.removeAttribute("aria-roledescription"),T.removeAttribute("aria-label")},this.setAriaOptions({role:"textbox"}),this.setAriaLabel(),b.addListener(T,"blur",function(ee){S||(A.onBlur(ee),ne=!1)},A),b.addListener(T,"focus",function(ee){if(!S){if(ne=!0,v.isEdge)try{if(!document.hasFocus())return}catch{}A.onFocus(ee),v.isEdge?setTimeout(me):me()}},A),this.$focusScroll=!1,this.focus=function(){if(this.setAriaLabel(),j||r||"browser"==this.$focusScroll)return T.focus({preventScroll:!0});var ee=T.style.top;T.style.position="fixed",T.style.top="0px";try{var ae=0!=T.getBoundingClientRect().top}catch{return}var ie=[];if(ae)for(var pe=T.parentElement;pe&&1==pe.nodeType;)ie.push(pe),pe.setAttribute("ace_nocontext",!0),pe=!pe.parentElement&&pe.getRootNode?pe.getRootNode().host:pe.parentElement;T.focus({preventScroll:!0}),ae&&ie.forEach(function(Te){Te.removeAttribute("ace_nocontext")}),setTimeout(function(){T.style.position="","0px"==T.style.top&&(T.style.top=ee)},0)},this.blur=function(){T.blur()},this.isFocused=function(){return ne},A.on("beforeEndOperation",function(){var ee=A.curOp,ae=ee&&ee.command&&ee.command.name;"insertstring"!=ae&&(D&&ae&&(ee.docChanged||ee.selectionChanged)&&(k=T.value="",bt()),me())});var me=_?function(ee){if(ne&&(!O||ee)&&!R){ee||(ee="");var ae="\n ab"+ee+"cde fg\n";ae!=T.value&&(T.value=k=ae);var pe=4+(ee.length||(A.selection.isEmpty()?0:1));(4!=F||Y!=pe)&&T.setSelectionRange(4,pe),F=4,Y=pe}}:function(){if(!D&&!R&&(ne||ue)){D=!0;var ee=0,ae=0,ie="";if(A.session){var pe=A.selection,Te=pe.getRange(),ct=pe.cursor.row;if(ee=Te.start.column,ae=Te.end.column,ie=A.session.getLine(ct),Te.start.row!=ct){var Lt=A.session.getLine(ct-1);ee=Te.start.rowct+1?Dt.length:ae,ae+=ie.length+1,ie=ie+"\n"+Dt}else x&&ct>0&&(ie="\n"+ie,ae+=1,ee+=1);ie.length>u&&(ee0&&k[ze]==ee[ze];)ze++,Te--;for(Lt=Lt.slice(ze),ze=1;ct>0&&k.length-ze>F-1&&k[k.length-ze]==ee[ee.length-ze];)ze++,ct--;Dt-=ze-1,Kt-=ze-1;var yt=Lt.length-ze+1;if(yt<0&&(Te=-yt,yt=0),Lt=Lt.slice(0,yt),!(ae||Lt||Dt||Te||ct||Kt))return"";R=!0;var Bt=!1;return v.isAndroid&&". "==Lt&&(Lt=" ",Bt=!0),Lt&&!Te&&!ct&&!Dt&&!Kt||N?A.onTextInput(Lt):A.onTextInput(Lt,{extendLeft:Te,extendRight:ct,restoreStart:Dt,restoreEnd:Kt}),R=!1,k=ee,F=ie,Y=pe,se=Kt,Bt?"\n":Lt},Oe=function(ee){if(D)return St();if(ee&&ee.inputType){if("historyUndo"==ee.inputType)return A.execCommand("undo");if("historyRedo"==ee.inputType)return A.execCommand("redo")}var ae=T.value,ie=Me(ae,!0);(ae.length>500||M.test(ie)||x&&F<1&&F==Y)&&me()},Xe=function(ee,ae,ie){var pe=ee.clipboardData||window.clipboardData;if(pe&&!l){var Te=d||ie?"Text":"text/plain";try{return ae?!1!==pe.setData(Te,ae):pe.getData(Te)}catch(ct){if(!ie)return Xe(ct,ae,!0)}}},Be=function(ee,ae){var ie=A.getCopyText();if(!ie)return b.preventDefault(ee);Xe(ee,ie)?(_&&(me(ie),O=ie,setTimeout(function(){O=!1},10)),ae?A.onCut():A.onCopy(),b.preventDefault(ee)):(O=!0,T.value=ie,T.select(),setTimeout(function(){O=!1,me(),ae?A.onCut():A.onCopy()}))},$e=function(ee){Be(ee,!0)},st=function(ee){Be(ee,!1)},Mt=function(ee){var ae=Xe(ee);s.pasteCancelled()||("string"==typeof ae?(ae&&A.onPaste(ae,ee),v.isIE&&setTimeout(me),b.preventDefault(ee)):(T.value="",E=!0))};b.addCommandKeyListener(T,A.onCommandKey.bind(A),A),b.addListener(T,"select",function(ee){D||(O?O=!1:function(ee){return 0===ee.selectionStart&&ee.selectionEnd>=k.length&&ee.value===k&&k&&ee.selectionEnd!==Y}(T)?(A.selectAll(),me()):x&&T.selectionStart!=F&&me())},A),b.addListener(T,"input",Oe,A),b.addListener(T,"cut",$e,A),b.addListener(T,"copy",st,A),b.addListener(T,"paste",Mt,A),(!("oncut"in T)||!("oncopy"in T)||!("onpaste"in T))&&b.addListener(L,"keydown",function(ee){if((!v.isMac||ee.metaKey)&&ee.ctrlKey)switch(ee.keyCode){case 67:st(ee);break;case 86:Mt(ee);break;case 88:$e(ee)}},A);var St=function(){if(D&&A.onCompositionUpdate&&!A.$readOnly){if(N)return xt();D.useTextareaForIME?A.onCompositionUpdate(T.value):(Me(T.value),D.markerRange&&(D.context&&(D.markerRange.start.column=D.selectionStart=D.context.compositionStartOffset),D.markerRange.end.column=D.markerRange.start.column+Y-D.selectionStart+se))}},bt=function(ee){!A.onCompositionEnd||A.$readOnly||(D=!1,A.onCompositionEnd(),A.off("mousedown",xt),ee&&Oe())};function xt(){S=!0,T.blur(),T.focus(),S=!1}var vt,nt=c.delayedCall(St,50).schedule.bind(null,null);function rt(){clearTimeout(vt),vt=setTimeout(function(){j&&(T.style.cssText=j,j=""),A.renderer.$isMousePressed=!1,A.renderer.$keepTextAreaAtCursor&&A.renderer.$moveTextAreaToCursor()},0)}b.addListener(T,"compositionstart",function(ee){if(!D&&A.onCompositionStart&&!A.$readOnly&&(D={},!N)){ee.data&&(D.useTextareaForIME=!1),setTimeout(St,0),A._signal("compositionStart"),A.on("mousedown",xt);var ae=A.getSelectionRange();ae.end.row=ae.start.row,ae.end.column=ae.start.column,D.markerRange=ae,D.selectionStart=F,A.onCompositionStart(D),D.useTextareaForIME?(k=T.value="",F=0,Y=0):(T.msGetInputContext&&(D.context=T.msGetInputContext()),T.getInputContext&&(D.context=T.getInputContext()))}},A),b.addListener(T,"compositionupdate",St,A),b.addListener(T,"keyup",function ot(ee){27==ee.keyCode&&T.value.lengthY&&"\n"==k[Kt]?ze=h.end:DtY&&k.slice(0,Kt).split("\n").length>2?ze=h.down:Kt>Y&&" "==k[Kt-1]?(ze=h.right,yt=m.option):(Kt>Y||Kt==Y&&Y!=F&&Dt==Kt)&&(ze=h.right),Dt!==Kt&&(yt|=m.shift),ze){if(!ae.onCommandKey({},yt,ze)&&ae.commands){ze=h.keyCodeToString(ze);var $t=ae.commands.findKeyCommand(yt,ze);$t&&ae.execCommand($t)}F=Dt,Y=Kt,me("")}}};document.addEventListener("selectionchange",ct),ae.on("destroy",function(){document.removeEventListener("selectionchange",ct)})}(0,A,T),this.destroy=function(){T.parentElement&&T.parentElement.removeChild(T)}},p.$setUserAgentForTests=function(L,A){x=L,_=A}}),ace.define("ace/mouse/default_handlers",["require","exports","module","ace/lib/useragent"],function(n,p,C){"use strict";var b=n("../lib/useragent"),a=function(){function l(d){d.$clickSelection=null;var r=d.editor;r.setDefaultHandler("mousedown",this.onMouseDown.bind(d)),r.setDefaultHandler("dblclick",this.onDoubleClick.bind(d)),r.setDefaultHandler("tripleclick",this.onTripleClick.bind(d)),r.setDefaultHandler("quadclick",this.onQuadClick.bind(d)),r.setDefaultHandler("mousewheel",this.onMouseWheel.bind(d)),["select","startSelect","selectEnd","selectAllEnd","selectByWordsEnd","selectByLinesEnd","dragWait","dragWaitEnd","focusWait"].forEach(function(h){d[h]=this[h]},this),d.selectByLines=this.extendSelectionBy.bind(d,"getLineRange"),d.selectByWords=this.extendSelectionBy.bind(d,"getWordRange")}return l.prototype.onMouseDown=function(d){var r=d.inSelection(),u=d.getDocumentPosition();this.mousedownEvent=d;var h=this.editor,m=d.getButton();return 0!==m?((h.getSelectionRange().isEmpty()||1==m)&&h.selection.moveToPosition(u),void(2==m&&(h.textInput.onContextMenu(d.domEvent),b.isMozilla||d.preventDefault()))):(this.mousedownEvent.time=Date.now(),!r||h.isFocused()||(h.focus(),!this.$focusTimeout||this.$clickSelection||h.inMultiSelectMode)?(this.captureMouse(d),this.startSelect(u,d.domEvent._clicks>1),d.preventDefault()):(this.setState("focusWait"),void this.captureMouse(d)))},l.prototype.startSelect=function(d,r){d=d||this.editor.renderer.screenToTextCoordinates(this.x,this.y);var u=this.editor;this.mousedownEvent&&(this.mousedownEvent.getShiftKey()?u.selection.selectToPosition(d):r||u.selection.moveToPosition(d),r||this.select(),u.setStyle("ace_selecting"),this.setState("select"))},l.prototype.select=function(){var d,r=this.editor,u=r.renderer.screenToTextCoordinates(this.x,this.y);if(this.$clickSelection){var h=this.$clickSelection.comparePoint(u);if(-1==h)d=this.$clickSelection.end;else if(1==h)d=this.$clickSelection.start;else{var m=s(this.$clickSelection,u);u=m.cursor,d=m.anchor}r.selection.setSelectionAnchor(d.row,d.column)}r.selection.selectToPosition(u),r.renderer.scrollCursorIntoView()},l.prototype.extendSelectionBy=function(d){var r,u=this.editor,h=u.renderer.screenToTextCoordinates(this.x,this.y),m=u.selection[d](h.row,h.column);if(this.$clickSelection){var _=this.$clickSelection.comparePoint(m.start),M=this.$clickSelection.comparePoint(m.end);if(-1==_&&M<=0)r=this.$clickSelection.end,(m.end.row!=h.row||m.end.column!=h.column)&&(h=m.start);else if(1==M&&_>=0)r=this.$clickSelection.start,(m.start.row!=h.row||m.start.column!=h.column)&&(h=m.end);else if(-1==_&&1==M)h=m.end,r=m.start;else{var x=s(this.$clickSelection,h);h=x.cursor,r=x.anchor}u.selection.setSelectionAnchor(r.row,r.column)}u.selection.selectToPosition(h),u.renderer.scrollCursorIntoView()},l.prototype.selectByLinesEnd=function(){this.$clickSelection=null,this.editor.unsetStyle("ace_selecting")},l.prototype.focusWait=function(){var d=function c(l,d,r,u){return Math.sqrt(Math.pow(r-l,2)+Math.pow(u-d,2))}(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y),r=Date.now();(d>0||r-this.mousedownEvent.time>this.$focusTimeout)&&this.startSelect(this.mousedownEvent.getDocumentPosition())},l.prototype.onDoubleClick=function(d){var r=d.getDocumentPosition(),u=this.editor,m=u.session.getBracketRange(r);m?(m.isEmpty()&&(m.start.column--,m.end.column++),this.setState("select")):(m=u.selection.getWordRange(r.row,r.column),this.setState("selectByWords")),this.$clickSelection=m,this.select()},l.prototype.onTripleClick=function(d){var r=d.getDocumentPosition(),u=this.editor;this.setState("selectByLines");var h=u.getSelectionRange();h.isMultiLine()&&h.contains(r.row,r.column)?(this.$clickSelection=u.selection.getLineRange(h.start.row),this.$clickSelection.end=u.selection.getLineRange(h.end.row).end):this.$clickSelection=u.selection.getLineRange(r.row),this.select()},l.prototype.onQuadClick=function(d){var r=this.editor;r.selectAll(),this.$clickSelection=r.getSelectionRange(),this.setState("selectAll")},l.prototype.onMouseWheel=function(d){if(!d.getAccelKey()){d.getShiftKey()&&d.wheelY&&!d.wheelX&&(d.wheelX=d.wheelY,d.wheelY=0);var r=this.editor;this.$lastScroll||(this.$lastScroll={t:0,vx:0,vy:0,allowed:0});var u=this.$lastScroll,h=d.domEvent.timeStamp,m=h-u.t,_=m?d.wheelX/m:u.vx,M=m?d.wheelY/m:u.vy;m<550&&(_=(_+u.vx)/2,M=(M+u.vy)/2);var x=Math.abs(_/M),w=!1;if(x>=1&&r.renderer.isScrollableBy(d.wheelX*d.speed,0)&&(w=!0),x<=1&&r.renderer.isScrollableBy(0,d.wheelY*d.speed)&&(w=!0),w?u.allowed=h:h-u.allowed<550&&(Math.abs(_)<=1.5*Math.abs(u.vx)&&Math.abs(M)<=1.5*Math.abs(u.vy)?(w=!0,u.allowed=h):u.allowed=0),u.t=h,u.vx=_,u.vy=M,w)return r.renderer.scrollBy(d.wheelX*d.speed,d.wheelY*d.speed),d.stop()}},l}();function s(l,d){if(l.start.row==l.end.row)var r=2*d.column-l.start.column-l.end.column;else if(l.start.row!=l.end.row-1||l.start.column||l.end.column)r=2*d.row-l.start.row-l.end.row;else r=d.column-4;return r<0?{cursor:l.start,anchor:l.end}:{cursor:l.end,anchor:l.start}}a.prototype.selectEnd=a.prototype.selectByLinesEnd,a.prototype.selectAllEnd=a.prototype.selectByLinesEnd,a.prototype.selectByWordsEnd=a.prototype.selectByLinesEnd,p.DefaultHandlers=a}),ace.define("ace/tooltip",["require","exports","module","ace/lib/dom","ace/range"],function(n,p,C){"use strict";var u,b=this&&this.__extends||(u=function(h,m){return(u=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(_,M){_.__proto__=M}||function(_,M){for(var x in M)Object.prototype.hasOwnProperty.call(M,x)&&(_[x]=M[x])})(h,m)},function(h,m){if("function"!=typeof m&&null!==m)throw new TypeError("Class extends value "+String(m)+" is not a constructor or null");function _(){this.constructor=h}u(h,m),h.prototype=null===m?Object.create(m):(_.prototype=m.prototype,new _)}),o=this&&this.__values||function(u){var h="function"==typeof Symbol&&Symbol.iterator,m=h&&u[h],_=0;if(m)return m.call(u);if(u&&"number"==typeof u.length)return{next:function(){return u&&_>=u.length&&(u=void 0),{value:u&&u[_++],done:!u}}};throw new TypeError(h?"Object is not iterable.":"Symbol.iterator is not defined.")},v=n("./lib/dom"),a=n("./range").Range,c="ace_tooltip",s=function(){function u(h){this.isOpen=!1,this.$element=null,this.$parentNode=h}return u.prototype.$init=function(){return this.$element=v.createElement("div"),this.$element.className=c,this.$element.style.display="none",this.$parentNode.appendChild(this.$element),this.$element},u.prototype.getElement=function(){return this.$element||this.$init()},u.prototype.setText=function(h){this.getElement().textContent=h},u.prototype.setHtml=function(h){this.getElement().innerHTML=h},u.prototype.setPosition=function(h,m){this.getElement().style.left=h+"px",this.getElement().style.top=m+"px"},u.prototype.setClassName=function(h){v.addCssClass(this.getElement(),h)},u.prototype.setTheme=function(h){this.$element.className=c+" "+(h.isDark?"ace_dark ":"")+(h.cssClass||"")},u.prototype.show=function(h,m,_){null!=h&&this.setText(h),null!=m&&null!=_&&this.setPosition(m,_),this.isOpen||(this.getElement().style.display="block",this.isOpen=!0)},u.prototype.hide=function(){this.isOpen&&(this.getElement().style.display="none",this.getElement().className=c,this.isOpen=!1)},u.prototype.getHeight=function(){return this.getElement().offsetHeight},u.prototype.getWidth=function(){return this.getElement().offsetWidth},u.prototype.destroy=function(){this.isOpen=!1,this.$element&&this.$element.parentNode&&this.$element.parentNode.removeChild(this.$element)},u}(),l=function(){function u(){this.popups=[]}return u.prototype.addPopup=function(h){this.popups.push(h),this.updatePopups()},u.prototype.removePopup=function(h){var m=this.popups.indexOf(h);-1!==m&&(this.popups.splice(m,1),this.updatePopups())},u.prototype.updatePopups=function(){var h,m,_,M;this.popups.sort(function(R,j){return j.priority-R.priority});var x=[];try{for(var w=o(this.popups),L=w.next();!L.done;L=w.next()){var A=L.value,T=!0;try{for(var O=(_=void 0,o(x)),E=O.next();!E.done;E=O.next())if(this.doPopupsOverlap(E.value,A)){T=!1;break}}catch(R){_={error:R}}finally{try{E&&!E.done&&(M=O.return)&&M.call(O)}finally{if(_)throw _.error}}T?x.push(A):A.hide()}}catch(R){h={error:R}}finally{try{L&&!L.done&&(m=w.return)&&m.call(w)}finally{if(h)throw h.error}}},u.prototype.doPopupsOverlap=function(h,m){var _=h.getElement().getBoundingClientRect(),M=m.getElement().getBoundingClientRect();return _.leftM.left&&_.topM.top},u}(),d=new l;p.popupManager=d,p.Tooltip=s;var r=function(u){function h(m){void 0===m&&(m=document.body);var _=u.call(this,m)||this;_.timeout=void 0,_.lastT=0,_.idleTime=350,_.lastEvent=void 0,_.onMouseOut=_.onMouseOut.bind(_),_.onMouseMove=_.onMouseMove.bind(_),_.waitForHover=_.waitForHover.bind(_),_.hide=_.hide.bind(_);var M=_.getElement();return M.style.whiteSpace="pre-wrap",M.style.pointerEvents="auto",M.addEventListener("mouseout",_.onMouseOut),M.tabIndex=-1,M.addEventListener("blur",function(){M.contains(document.activeElement)||this.hide()}.bind(_)),_}return b(h,u),h.prototype.addToEditor=function(m){m.on("mousemove",this.onMouseMove),m.on("mousedown",this.hide),m.renderer.getMouseEventTarget().addEventListener("mouseout",this.onMouseOut,!0)},h.prototype.removeFromEditor=function(m){m.off("mousemove",this.onMouseMove),m.off("mousedown",this.hide),m.renderer.getMouseEventTarget().removeEventListener("mouseout",this.onMouseOut,!0),this.timeout&&(clearTimeout(this.timeout),this.timeout=null)},h.prototype.onMouseMove=function(m,_){this.lastEvent=m,this.lastT=Date.now();var M=_.$mouseHandler.isMousePressed;if(this.isOpen){var x=this.lastEvent&&this.lastEvent.getDocumentPosition();(!this.range||!this.range.contains(x.row,x.column)||M||this.isOutsideOfText(this.lastEvent))&&this.hide()}this.timeout||M||(this.lastEvent=m,this.timeout=setTimeout(this.waitForHover,this.idleTime))},h.prototype.waitForHover=function(){this.timeout&&clearTimeout(this.timeout);var m=Date.now()-this.lastT;this.idleTime-m>10?this.timeout=setTimeout(this.waitForHover,this.idleTime-m):(this.timeout=null,this.lastEvent&&!this.isOutsideOfText(this.lastEvent)&&this.$gatherData(this.lastEvent,this.lastEvent.editor))},h.prototype.isOutsideOfText=function(m){var _=m.editor,M=m.getDocumentPosition(),x=_.session.getLine(M.row);if(M.column==x.length){var w=_.renderer.pixelToScreenCoordinates(m.clientX,m.clientY),L=_.session.documentToScreenPosition(M.row,M.column);if(L.column!=w.column||L.row!=w.row)return!0}return!1},h.prototype.setDataProvider=function(m){this.$gatherData=m},h.prototype.showForRange=function(m,_,M,x){if(!(x&&x!=this.lastEvent||this.isOpen&&document.activeElement==this.getElement())){var w=m.renderer;this.isOpen||(d.addPopup(this),this.$registerCloseEvents(),this.setTheme(w.theme)),this.isOpen=!0,this.addMarker(_,m.session),this.range=a.fromPoints(_.start,_.end);var L=this.getElement();L.innerHTML="",L.appendChild(M),L.style.display="block";var A=w.textToScreenCoordinates(_.start.row,_.start.column),T=m.getCursorPosition(),O=L.clientHeight,E=w.scroller.getBoundingClientRect(),D=!0;this.row>T.row?D=!0:this.rowE.bottom&&(D=!1),D?A.pageY+=w.lineHeight:A.pageY-=O,L.style.maxWidth=E.width-(A.pageX-E.left)+"px",this.setPosition(A.pageX,A.pageY)}},h.prototype.addMarker=function(m,_){this.marker&&this.$markerSession.removeMarker(this.marker),this.$markerSession=_,this.marker=_&&_.addMarker(m,"ace_highlight-marker","text")},h.prototype.hide=function(m){!m&&document.activeElement==this.getElement()||m&&m.target&&("keydown"!=m.type||m.ctrlKey||m.metaKey)&&this.$element.contains(m.target)||(this.lastEvent=null,this.timeout&&clearTimeout(this.timeout),this.timeout=null,this.addMarker(null),this.isOpen&&(this.$removeCloseEvents(),this.getElement().style.display="none",this.isOpen=!1,d.removePopup(this)))},h.prototype.$registerCloseEvents=function(){window.addEventListener("keydown",this.hide,!0),window.addEventListener("mousewheel",this.hide,!0),window.addEventListener("mousedown",this.hide,!0)},h.prototype.$removeCloseEvents=function(){window.removeEventListener("keydown",this.hide,!0),window.removeEventListener("mousewheel",this.hide,!0),window.removeEventListener("mousedown",this.hide,!0)},h.prototype.onMouseOut=function(m){this.timeout&&(clearTimeout(this.timeout),this.timeout=null),this.lastEvent=null,this.isOpen&&(!m.relatedTarget||m.relatedTarget==this.getElement()||m&&m.currentTarget.contains(m.relatedTarget)||m.relatedTarget.classList.contains("ace_content")||this.hide())},h}(s);p.HoverTooltip=r}),ace.define("ace/mouse/default_gutter_handler",["require","exports","module","ace/lib/dom","ace/lib/event","ace/tooltip","ace/config"],function(n,p,C){"use strict";var r,b=this&&this.__extends||(r=function(u,h){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(m,_){m.__proto__=_}||function(m,_){for(var M in _)Object.prototype.hasOwnProperty.call(_,M)&&(m[M]=_[M])})(u,h)},function(u,h){if("function"!=typeof h&&null!==h)throw new TypeError("Class extends value "+String(h)+" is not a constructor or null");function m(){this.constructor=u}r(u,h),u.prototype=null===h?Object.create(h):(m.prototype=h.prototype,new m)}),o=this&&this.__values||function(r){var u="function"==typeof Symbol&&Symbol.iterator,h=u&&r[u],m=0;if(h)return h.call(r);if(r&&"number"==typeof r.length)return{next:function(){return r&&m>=r.length&&(r=void 0),{value:r&&r[m++],done:!r}}};throw new TypeError(u?"Object is not iterable.":"Symbol.iterator is not defined.")},v=n("../lib/dom"),a=n("../lib/event"),c=n("../tooltip").Tooltip,s=n("../config").nls;p.GutterHandler=function l(r){var _,M,u=r.editor,h=u.renderer.$gutterLayer,m=new d(u);function w(){_&&(_=clearTimeout(_)),m.isOpen&&(m.hideTooltip(),u.off("mousewheel",w))}function L(A){m.setPosition(A.x,A.y)}r.editor.setDefaultHandler("guttermousedown",function(A){if(u.isFocused()&&0==A.getButton()&&"foldWidgets"!=h.getRegion(A)){var O=A.getDocumentPosition().row,E=u.session.selection;if(A.getShiftKey())E.selectTo(O,0);else{if(2==A.domEvent.detail)return u.selectAll(),A.preventDefault();r.$clickSelection=u.selection.getLineRange(O)}return r.setState("selectByLines"),r.captureMouse(A),A.preventDefault()}}),r.editor.setDefaultHandler("guttermousemove",function(A){if(v.hasCssClass(A.domEvent.target||A.domEvent.srcElement,"ace_fold-widget"))return w();m.isOpen&&r.$tooltipFollowsMouse&&L(A),M=A,!_&&(_=setTimeout(function(){_=null,M&&!r.isMousePressed?function x(){var A=M.getDocumentPosition().row;if(A==u.session.getLength()){var O=u.renderer.pixelToScreenCoordinates(0,M.y).row,E=M.$pos;if(O>u.session.documentToScreenRow(E.row,E.column))return w()}if(m.showTooltip(A),m.isOpen)if(u.on("mousewheel",w),r.$tooltipFollowsMouse)L(M);else{var D=M.getGutterRow(),R=h.$lines.get(D);if(R){var N=R.element.querySelector(".ace_gutter_annotation").getBoundingClientRect(),S=m.getElement().style;S.left=N.right+"px",S.top=N.bottom+"px"}else L(M)}}():w()},50))}),a.addListener(u.renderer.$gutter,"mouseout",function(A){M=null,m.isOpen&&!_&&(_=setTimeout(function(){_=null,w()},50))},u),u.on("changeSession",w),u.on("input",w)};var d=function(r){function u(h){var m=r.call(this,h.container)||this;return m.editor=h,m}return b(u,r),u.prototype.setPosition=function(h,m){var _=window.innerWidth||document.documentElement.clientWidth,M=window.innerHeight||document.documentElement.clientHeight,x=this.getWidth(),w=this.getHeight();(h+=15)+x>_&&(h-=h+x-_),(m+=15)+w>M&&(m-=20+w),c.prototype.setPosition.call(this,h,m)},Object.defineProperty(u,"annotationLabels",{get:function(){return{error:{singular:s("error"),plural:s("errors")},warning:{singular:s("warning"),plural:s("warnings")},info:{singular:s("information message"),plural:s("information messages")}}},enumerable:!1,configurable:!0}),u.prototype.showTooltip=function(h){var M,m=this.editor.renderer.$gutterLayer,_=m.$annotations[h];M=_?{text:Array.from(_.text),type:Array.from(_.type)}:{text:[],type:[]};var x=m.session.getFoldLine(h);if(x&&m.$showFoldedAnnotations){for(var L,w={error:[],warning:[],info:[]},A=h+1;A<=x.end.row;A++)if(m.$annotations[A])for(var T=0;T ").concat(M.text[A]);D[M.type[A].replace("_fold","")].push(j)}var N=[].concat(D.error,D.warning,D.info).join("
");this.setHtml(N),this.$element.setAttribute("aria-live","polite"),this.isOpen||(this.setTheme(this.editor.renderer.theme),this.setClassName("ace_gutter-tooltip")),this.show(),this.editor._signal("showGutterTooltip",this)},u.prototype.hideTooltip=function(){this.$element.removeAttribute("aria-live"),this.hide(),this.editor._signal("hideGutterTooltip",this)},u.annotationsToSummaryString=function(h){var m,_,M=[];try{for(var w=o(["error","warning","info"]),L=w.next();!L.done;L=w.next()){var A=L.value;if(h[A].length){var T=1===h[A].length?u.annotationLabels[A].singular:u.annotationLabels[A].plural;M.push("".concat(h[A].length," ").concat(T))}}}catch(O){m={error:O}}finally{try{L&&!L.done&&(_=w.return)&&_.call(w)}finally{if(m)throw m.error}}return M.join(", ")},u}(c);p.GutterTooltip=d}),ace.define("ace/mouse/mouse_event",["require","exports","module","ace/lib/event","ace/lib/useragent"],function(n,p,C){"use strict";var b=n("../lib/event"),o=n("../lib/useragent"),v=function(){function a(c,s){this.domEvent=c,this.editor=s,this.x=this.clientX=c.clientX,this.y=this.clientY=c.clientY,this.$pos=null,this.$inSelection=null,this.propagationStopped=!1,this.defaultPrevented=!1}return a.prototype.stopPropagation=function(){b.stopPropagation(this.domEvent),this.propagationStopped=!0},a.prototype.preventDefault=function(){b.preventDefault(this.domEvent),this.defaultPrevented=!0},a.prototype.stop=function(){this.stopPropagation(),this.preventDefault()},a.prototype.getDocumentPosition=function(){return this.$pos||(this.$pos=this.editor.renderer.screenToTextCoordinates(this.clientX,this.clientY)),this.$pos},a.prototype.getGutterRow=function(){var c=this.getDocumentPosition().row;return this.editor.session.documentToScreenRow(c,0)-this.editor.session.documentToScreenRow(this.editor.renderer.$gutterLayer.$lines.get(0).row,0)},a.prototype.inSelection=function(){if(null!==this.$inSelection)return this.$inSelection;var s=this.editor.getSelectionRange();if(s.isEmpty())this.$inSelection=!1;else{var l=this.getDocumentPosition();this.$inSelection=s.contains(l.row,l.column)}return this.$inSelection},a.prototype.getButton=function(){return b.getButton(this.domEvent)},a.prototype.getShiftKey=function(){return this.domEvent.shiftKey},a.prototype.getAccelKey=function(){return o.isMac?this.domEvent.metaKey:this.domEvent.ctrlKey},a}();p.MouseEvent=v}),ace.define("ace/mouse/dragdrop_handler",["require","exports","module","ace/lib/dom","ace/lib/event","ace/lib/useragent"],function(n,p,C){"use strict";var b=n("../lib/dom"),o=n("../lib/event"),v=n("../lib/useragent");function l(r){var u=r.editor,h=b.createElement("div");h.style.cssText="top:-100px;position:absolute;z-index:2147483647;opacity:0.5",h.textContent="\xa0",["dragWait","dragWaitEnd","startDrag","dragReadyEnd","onMouseDrag"].forEach(function(Q){r[Q]=this[Q]},this),u.on("mousedown",this.onMouseDown.bind(r));var M,x,w,L,A,T,E,D,R,j,N,_=u.container,O=0;function F(){var Q=T;(function S(Q,ue){var Me=Date.now();j&&ue&&Q.row==ue.row&&ue&&Q.column==ue.column?d(N.x,N.y,x,w)>5?j=null:Me-j>=200&&(u.renderer.scrollCursorIntoView(),j=null):(u.moveCursorToPosition(Q),j=Me,N={x,y:w})})(T=u.renderer.screenToTextCoordinates(x,w),Q),function k(Q,ue){var Me=Date.now(),Oe=u.renderer.layerConfig.lineHeight,Xe=u.renderer.layerConfig.characterWidth,Be=u.renderer.scroller.getBoundingClientRect(),$e={x:{left:x-Be.left,right:Be.right-x},y:{top:w-Be.top,bottom:Be.bottom-w}},st=Math.min($e.x.left,$e.x.right),Mt=Math.min($e.y.top,$e.y.bottom),tt={row:Q.row,column:Q.column};st/Xe<=2&&(tt.column+=$e.x.left<$e.x.right?-3:2),Mt/Oe<=1&&(tt.row+=$e.y.top<$e.y.bottom?-1:1),Q.row!=tt.row||Q.column!=tt.column&&ue&&Q.row==ue.row?R?Me-R>=200&&u.renderer.scrollCursorIntoView(tt):R=Me:R=null}(T,Q)}function Y(){A=u.selection.toOrientedRange(),M=u.session.addMarker(A,"ace_selection",u.getSelectionStyle()),u.clearSelection(),u.isFocused()&&u.renderer.$cursorLayer.setBlinking(!1),clearInterval(L),F(),L=setInterval(F,20),O=0,o.addListener(document,"mousemove",me)}function se(){clearInterval(L),u.session.removeMarker(M),M=null,u.selection.fromOrientedRange(A),u.isFocused()&&!D&&u.$resetCursorStyle(),A=null,T=null,O=0,R=null,j=null,o.removeListener(document,"mousemove",me)}this.onDragStart=function(Q){if(this.cancelDrag||!_.draggable){var ue=this;return setTimeout(function(){ue.startSelect(),ue.captureMouse(Q)},0),Q.preventDefault()}A=u.getSelectionRange();var Me=Q.dataTransfer;Me.effectAllowed=u.getReadOnly()?"copy":"copyMove",u.container.appendChild(h),Me.setDragImage&&Me.setDragImage(h,0,0),setTimeout(function(){u.container.removeChild(h)}),Me.clearData(),Me.setData("Text",u.session.getTextRange()),D=!0,this.setState("drag")},this.onDragEnd=function(Q){_.draggable=!1,D=!1,this.setState(null),u.getReadOnly()||(!E&&"move"==Q.dataTransfer.dropEffect&&u.session.remove(u.getSelectionRange()),u.$resetCursorStyle()),this.editor.unsetStyle("ace_dragging"),this.editor.renderer.setCursorStyle("")},this.onDragEnter=function(Q){if(!u.getReadOnly()&&$(Q.dataTransfer))return x=Q.clientX,w=Q.clientY,M||Y(),O++,Q.dataTransfer.dropEffect=E=q(Q),o.preventDefault(Q)},this.onDragOver=function(Q){if(!u.getReadOnly()&&$(Q.dataTransfer))return x=Q.clientX,w=Q.clientY,M||(Y(),O++),null!==ne&&(ne=null),Q.dataTransfer.dropEffect=E=q(Q),o.preventDefault(Q)},this.onDragLeave=function(Q){if(--O<=0&&M)return se(),E=null,o.preventDefault(Q)},this.onDrop=function(Q){if(T){var ue=Q.dataTransfer;if(D)switch(E){case"move":A=A.contains(T.row,T.column)?{start:T,end:T}:u.moveText(A,T);break;case"copy":A=u.moveText(A,T,!0)}else{var Me=ue.getData("Text");A={start:T,end:u.session.insert(T,Me)},u.focus(),E=null}return se(),o.preventDefault(Q)}},o.addListener(_,"dragstart",this.onDragStart.bind(r),u),o.addListener(_,"dragend",this.onDragEnd.bind(r),u),o.addListener(_,"dragenter",this.onDragEnter.bind(r),u),o.addListener(_,"dragover",this.onDragOver.bind(r),u),o.addListener(_,"dragleave",this.onDragLeave.bind(r),u),o.addListener(_,"drop",this.onDrop.bind(r),u);var ne=null;function me(){null==ne&&(ne=setTimeout(function(){null!=ne&&M&&se()},20))}function $(Q){var ue=Q.types;return!ue||Array.prototype.some.call(ue,function(Me){return"text/plain"==Me||"Text"==Me})}function q(Q){var ue=["copy","copymove","all","uninitialized"],Oe=v.isMac?Q.altKey:Q.ctrlKey,Xe="uninitialized";try{Xe=Q.dataTransfer.effectAllowed.toLowerCase()}catch{}var Be="none";return Oe&&ue.indexOf(Xe)>=0?Be="copy":["move","copymove","linkmove","all","uninitialized"].indexOf(Xe)>=0?Be="move":ue.indexOf(Xe)>=0&&(Be="copy"),Be}}function d(r,u,h,m){return Math.sqrt(Math.pow(h-r,2)+Math.pow(m-u,2))}(function(){this.dragWait=function(){Date.now()-this.mousedownEvent.time>this.editor.getDragDelay()&&this.startDrag()},this.dragWaitEnd=function(){this.editor.container.draggable=!1,this.startSelect(this.mousedownEvent.getDocumentPosition()),this.selectEnd()},this.dragReadyEnd=function(r){this.editor.$resetCursorStyle(),this.editor.unsetStyle("ace_dragging"),this.editor.renderer.setCursorStyle(""),this.dragWaitEnd()},this.startDrag=function(){this.cancelDrag=!1;var r=this.editor;r.container.draggable=!0,r.renderer.$cursorLayer.setBlinking(!1),r.setStyle("ace_dragging"),r.renderer.setCursorStyle(v.isWin?"default":"move"),this.setState("dragReady")},this.onMouseDrag=function(r){var u=this.editor.container;v.isIE&&"dragReady"==this.state&&d(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y)>3&&u.dragDrop(),"dragWait"===this.state&&d(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y)>0&&(u.draggable=!1,this.startSelect(this.mousedownEvent.getDocumentPosition()))},this.onMouseDown=function(r){if(this.$dragEnabled){this.mousedownEvent=r;var u=this.editor,h=r.inSelection(),m=r.getButton();if(1===(r.domEvent.detail||1)&&0===m&&h){if(r.editor.inMultiSelectMode&&(r.getAccelKey()||r.getShiftKey()))return;this.mousedownEvent.time=Date.now();var M=r.domEvent.target||r.domEvent.srcElement;"unselectable"in M&&(M.unselectable="on"),u.getDragDelay()?(v.isWebKit&&(this.cancelDrag=!0,u.container.draggable=!0),this.setState("dragWait")):this.startDrag(),this.captureMouse(r,this.onMouseDrag.bind(this)),r.defaultPrevented=!0}}}}).call(l.prototype),p.DragdropHandler=l}),ace.define("ace/mouse/touch_handler",["require","exports","module","ace/mouse/mouse_event","ace/lib/event","ace/lib/dom"],function(n,p,C){"use strict";var b=n("./mouse_event").MouseEvent,o=n("../lib/event"),v=n("../lib/dom");p.addTouchListeners=function(a,c){var l,d,r,u,h,m,M,A,T,s="scroll",_=0,x=0,w=0,L=0;function E(){T||function O(){var S=window.navigator&&window.navigator.clipboard,k=!1,Y=function(se){var ne=se.target.getAttribute("action");if("more"==ne||!k)return k=!k,function(){var se=c.getCopyText(),ne=c.session.getUndoManager().hasUndo();T.replaceChild(v.buildDom(k?["span",!se&&["span",{class:"ace_mobile-button",action:"selectall"},"Select All"],se&&["span",{class:"ace_mobile-button",action:"copy"},"Copy"],se&&["span",{class:"ace_mobile-button",action:"cut"},"Cut"],S&&["span",{class:"ace_mobile-button",action:"paste"},"Paste"],ne&&["span",{class:"ace_mobile-button",action:"undo"},"Undo"],["span",{class:"ace_mobile-button",action:"find"},"Find"],["span",{class:"ace_mobile-button",action:"openCommandPallete"},"Palette"]]:["span"]),T.firstChild)}();"paste"==ne?S.readText().then(function(me){c.execCommand(ne,me)}):ne&&(("cut"==ne||"copy"==ne)&&(S?S.writeText(c.getCopyText()):document.execCommand("copy")),c.execCommand(ne)),T.firstChild.style.display="none",k=!1,"openCommandPallete"!=ne&&c.focus()};T=v.buildDom(["div",{class:"ace_mobile-menu",ontouchstart:function(se){s="menu",se.stopPropagation(),se.preventDefault(),c.textInput.focus()},ontouchend:function(se){se.stopPropagation(),se.preventDefault(),Y(se)},onclick:Y},["span"],["span",{class:"ace_mobile-button",action:"more"},"..."]],c.container)}();var S=c.selection.cursor,k=c.renderer.textToScreenCoordinates(S.row,S.column),F=c.renderer.textToScreenCoordinates(0,0).pageX,Y=c.renderer.scrollLeft,se=c.container.getBoundingClientRect();T.style.top=k.pageY-se.top-3+"px",k.pageX-se.left1)return clearTimeout(h),h=null,r=-1,void(s="zoom");A=c.$mouseHandler.isMousePressed=!0;var F=c.renderer.layerConfig.lineHeight,Y=c.renderer.layerConfig.lineHeight,se=S.timeStamp;u=se;var ne=k[0],me=ne.clientX,$=ne.clientY;Math.abs(l-me)+Math.abs(d-$)>F&&(r=-1),l=S.clientX=me,d=S.clientY=$,w=L=0;var q=new b(S,c);if(M=q.getDocumentPosition(),se-r<500&&1==k.length&&!_)x++,S.preventDefault(),S.button=0,function j(){h=null,clearTimeout(h),c.selection.moveToPosition(M);var S=x>=2?c.selection.getLineRange(M.row):c.session.getBracketRange(M);S&&!S.isEmpty()?c.selection.setRange(S):c.selection.selectWord(),s="wait"}();else{x=0;var Q=c.selection.cursor,ue=c.selection.isEmpty()?Q:c.selection.anchor,Me=c.renderer.$cursorLayer.getPixelPosition(Q,!0),Oe=c.renderer.$cursorLayer.getPixelPosition(ue,!0),Xe=c.renderer.scroller.getBoundingClientRect(),Be=c.renderer.layerConfig.offset,$e=c.renderer.scrollLeft,st=function(St,bt){return(St/=Y)*St+(bt=bt/F-.75)*bt};if(S.clientXtt?"cursor":"anchor"),s=tt<3.5?"anchor":Mt<3.5?"cursor":"scroll",h=setTimeout(R,450)}r=se},c),o.addListener(a,"touchend",function(S){A=c.$mouseHandler.isMousePressed=!1,m&&clearInterval(m),"zoom"==s?(s="",_=0):h?(c.selection.moveToPosition(M),_=0,E()):"scroll"==s?(function N(){_+=60,m=setInterval(function(){_--<=0&&(clearInterval(m),m=null),Math.abs(w)<.01&&(w=0),Math.abs(L)<.01&&(L=0),_<20&&(w*=.9),_<20&&(L*=.9);var S=c.session.getScrollTop();c.renderer.scrollBy(10*w,10*L),S==c.session.getScrollTop()&&(_=0)},10)}(),D()):E(),clearTimeout(h),h=null},c),o.addListener(a,"touchmove",function(S){h&&(clearTimeout(h),h=null);var k=S.touches;if(!(k.length>1||"zoom"==s)){var F=k[0],Y=l-F.clientX,se=d-F.clientY;if("wait"==s){if(!(Y*Y+se*se>4))return S.preventDefault();s="cursor"}l=F.clientX,d=F.clientY,S.clientX=F.clientX,S.clientY=F.clientY;var ne=S.timeStamp,me=ne-u;if(u=ne,"scroll"==s){var $=new b(S,c);$.speed=1,$.wheelX=Y,$.wheelY=se,10*Math.abs(Y)=$e){for(bt=St+1;bt=$e;)bt++;for(xt=St,nt=bt-1;xt=st.length||2!=(bt=Mt[tt-1])&&3!=bt||2!=(xt=st[tt+1])&&3!=xt?4:(c&&(xt=3),xt==bt?xt:4);case 10:return 2==(bt=tt>0?Mt[tt-1]:5)&&tt+10&&2==Mt[tt-1])return 2;if(c)return 4;for(ot=tt+1,nt=st.length;ot=1425&&vt<=2303||64286==vt)&&(1==bt||7==bt))return 1}return tt<1||5==(bt=st[tt-1])?4:Mt[tt-1];case 5:return c=!1,l=!0,v;case 6:return d=!0,4;case 13:case 14:case 16:case 17:case 15:c=!1;case $:return 4}}function Xe($e){var st=$e.charCodeAt(0),Mt=st>>8;return 0==Mt?st>191?0:q[st]:5==Mt?/[\u0591-\u05f4]/.test($e)?1:0:6==Mt?/[\u0610-\u061a\u064b-\u065f\u06d6-\u06e4\u06e7-\u06ed]/.test($e)?12:/[\u0660-\u0669\u066b-\u066c]/.test($e)?3:1642==st?S:/[\u06f0-\u06f9]/.test($e)?2:7:32==Mt&&st<=8287?Q[255&st]:254==Mt&&st>=65136?7:4}p.L=0,p.R=1,p.EN=2,p.ON_R=3,p.AN=4,p.R_H=5,p.B=6,p.RLE=7,p.DOT="\xb7",p.doBidiReorder=function($e,st,Mt){if($e.length<2)return{};var tt=$e.split(""),St=new Array(tt.length),bt=new Array(tt.length),xt=[];v=Mt?1:0,function ue($e,st,Mt,tt){var St=v?m:h,bt=null,xt=null,nt=null,ot=0,vt=null,J=-1,Ce=null,ee=null,ae=[];if(!tt)for(Ce=0,tt=[];Ce0)if(16==vt){for(Ce=J;Ce-1){for(Ce=J;Ce=0&&8==tt[ie];ie--)st[ie]=v}}(tt,xt,tt.length,st);for(var nt=0;nt7&&st[nt]<13||4===st[nt]||st[nt]===$)?xt[nt]=p.ON_R:nt>0&&"\u0644"===tt[nt-1]&&/\u0622|\u0623|\u0625|\u0627/.test(tt[nt])&&(xt[nt-1]=xt[nt]=p.R_H,nt++);for(tt[tt.length-1]===p.DOT&&(xt[tt.length-1]=p.B),"\u202b"===tt[0]&&(xt[0]=p.RLE),nt=0;nt=0&&(s=this.session.$docRowCache[d])}return s},c.prototype.getSplitIndex=function(){var s=0,l=this.session.$screenRowCache;if(l.length)for(var d,r=this.session.$getRowCacheIndex(l,this.currentRow);this.currentRow-s>0&&(d=this.session.$getRowCacheIndex(l,this.currentRow-s-1))===r;)r=d,s++;else s=this.currentRow;return s},c.prototype.updateRowLine=function(s,l){void 0===s&&(s=this.getDocumentRow());var r=s===this.session.getLength()-1?this.EOF:this.EOL;if(this.wrapIndent=0,this.line=this.session.getLine(s),this.isRtlDir=this.$isRtl||this.line.charAt(0)===this.RLE,this.session.$useWrapMode){var u=this.session.$wrapData[s];u&&(void 0===l&&(l=this.getSplitIndex()),l>0&&u.length?(this.wrapIndent=u.indent,this.wrapOffset=this.wrapIndent*this.charWidths[b.L],this.line=ll?this.session.getOverwrite()?s:s-1:l,r=b.getVisualFromLogicalIdx(d,this.bidiMap),u=this.bidiMap.bidiLevels,h=0;!this.session.getOverwrite()&&s<=l&&u[r]%2!=0&&r++;for(var m=0;ml&&u[r]%2==0&&(h+=this.charWidths[u[r]]),this.wrapIndent&&(h+=this.isRtlDir?-1*this.wrapOffset:this.wrapOffset),this.isRtlDir&&(h+=this.rtlLineOffset),h},c.prototype.getSelections=function(s,l){var u,d=this.bidiMap,r=d.bidiLevels,h=[],m=0,_=Math.min(s,l)-this.wrapIndent,M=Math.max(s,l)-this.wrapIndent,x=!1,w=!1,L=0;this.wrapIndent&&(m+=this.isRtlDir?-1*this.wrapOffset:this.wrapOffset);for(var A,T=0;T=_&&Ar+m/2;){if(r+=m,u===h.length-1){m=0;break}m=this.charWidths[h[++u]]}return u>0&&h[u-1]%2!=0&&h[u]%2==0?(d0&&h[u-1]%2==0&&h[u]%2!=0?l=1+(d>r?this.bidiMap.logicalFromVisual[u]:this.bidiMap.logicalFromVisual[u-1]):this.isRtlDir&&u===h.length-1&&0===m&&h[u-1]%2==0||!this.isRtlDir&&0===u&&h[u]%2!=0?l=1+this.bidiMap.logicalFromVisual[u]:(u>0&&h[u-1]%2!=0&&0!==m&&u--,l=this.bidiMap.logicalFromVisual[u]),0===l&&this.isRtlDir&&l++,l+this.wrapIndent},c}();p.BidiHandler=a}),ace.define("ace/selection",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/lib/event_emitter","ace/range"],function(n,p,C){"use strict";var b=n("./lib/oop"),o=n("./lib/lang"),v=n("./lib/event_emitter").EventEmitter,a=n("./range").Range,c=function(s){this.session=s,this.doc=s.getDocument(),this.clearSelection(),this.cursor=this.lead=this.doc.createAnchor(0,0),this.anchor=this.doc.createAnchor(0,0),this.$silent=!1;var l=this;this.cursor.on("change",function(d){l.$cursorChanged=!0,l.$silent||l._emit("changeCursor"),!l.$isEmpty&&!l.$silent&&l._emit("changeSelection"),!l.$keepDesiredColumnOnChange&&d.old.column!=d.value.column&&(l.$desiredColumn=null)}),this.anchor.on("change",function(){l.$anchorChanged=!0,!l.$isEmpty&&!l.$silent&&l._emit("changeSelection")})};(function(){b.implement(this,v),this.isEmpty=function(){return this.$isEmpty||this.anchor.row==this.lead.row&&this.anchor.column==this.lead.column},this.isMultiLine=function(){return!this.$isEmpty&&this.anchor.row!=this.cursor.row},this.getCursor=function(){return this.lead.getPosition()},this.setAnchor=function(s,l){this.$isEmpty=!1,this.anchor.setPosition(s,l)},this.setSelectionAnchor=this.setAnchor,this.getAnchor=function(){return this.$isEmpty?this.getSelectionLead():this.anchor.getPosition()},this.getSelectionAnchor=this.getAnchor,this.getSelectionLead=function(){return this.lead.getPosition()},this.isBackwards=function(){var s=this.anchor,l=this.lead;return s.row>l.row||s.row==l.row&&s.column>l.column},this.getRange=function(){var s=this.anchor,l=this.lead;return this.$isEmpty?a.fromPoints(l,l):this.isBackwards()?a.fromPoints(l,s):a.fromPoints(s,l)},this.clearSelection=function(){this.$isEmpty||(this.$isEmpty=!0,this._emit("changeSelection"))},this.selectAll=function(){this.$setSelection(0,0,Number.MAX_VALUE,Number.MAX_VALUE)},this.setRange=this.setSelectionRange=function(s,l){var d=l?s.end:s.start,r=l?s.start:s.end;this.$setSelection(d.row,d.column,r.row,r.column)},this.$setSelection=function(s,l,d,r){if(!this.$silent){var u=this.$isEmpty,h=this.inMultiSelectMode;this.$silent=!0,this.$cursorChanged=this.$anchorChanged=!1,this.anchor.setPosition(s,l),this.cursor.setPosition(d,r),this.$isEmpty=!a.comparePoints(this.anchor,this.cursor),this.$silent=!1,this.$cursorChanged&&this._emit("changeCursor"),(this.$cursorChanged||this.$anchorChanged||u!=this.$isEmpty||h)&&this._emit("changeSelection")}},this.$moveSelection=function(s){var l=this.lead;this.$isEmpty&&this.setSelectionAnchor(l.row,l.column),s.call(this)},this.selectTo=function(s,l){this.$moveSelection(function(){this.moveCursorTo(s,l)})},this.selectToPosition=function(s){this.$moveSelection(function(){this.moveCursorToPosition(s)})},this.moveTo=function(s,l){this.clearSelection(),this.moveCursorTo(s,l)},this.moveToPosition=function(s){this.clearSelection(),this.moveCursorToPosition(s)},this.selectUp=function(){this.$moveSelection(this.moveCursorUp)},this.selectDown=function(){this.$moveSelection(this.moveCursorDown)},this.selectRight=function(){this.$moveSelection(this.moveCursorRight)},this.selectLeft=function(){this.$moveSelection(this.moveCursorLeft)},this.selectLineStart=function(){this.$moveSelection(this.moveCursorLineStart)},this.selectLineEnd=function(){this.$moveSelection(this.moveCursorLineEnd)},this.selectFileEnd=function(){this.$moveSelection(this.moveCursorFileEnd)},this.selectFileStart=function(){this.$moveSelection(this.moveCursorFileStart)},this.selectWordRight=function(){this.$moveSelection(this.moveCursorWordRight)},this.selectWordLeft=function(){this.$moveSelection(this.moveCursorWordLeft)},this.getWordRange=function(s,l){if(typeof l>"u"){var d=s||this.lead;s=d.row,l=d.column}return this.session.getWordRange(s,l)},this.selectWord=function(){this.setSelectionRange(this.getWordRange())},this.selectAWord=function(){var s=this.getCursor(),l=this.session.getAWordRange(s.row,s.column);this.setSelectionRange(l)},this.getLineRange=function(s,l){var r,d="number"==typeof s?s:this.lead.row,u=this.session.getFoldLine(d);return u?(d=u.start.row,r=u.end.row):r=d,!0===l?new a(d,0,r,this.session.getLine(r).length):new a(d,0,r+1,0)},this.selectLine=function(){this.setSelectionRange(this.getLineRange())},this.moveCursorUp=function(){this.moveCursorBy(-1,0)},this.moveCursorDown=function(){this.moveCursorBy(1,0)},this.wouldMoveIntoSoftTab=function(s,l,d){var r=s.column,u=s.column+l;return d<0&&(r=s.column-l,u=s.column),this.session.isTabStop(s)&&this.doc.getLine(s.row).slice(r,u).split(" ").length-1==l},this.moveCursorLeft=function(){var l,s=this.lead.getPosition();if(l=this.session.getFoldAt(s.row,s.column,-1))this.moveCursorTo(l.start.row,l.start.column);else if(0===s.column)s.row>0&&this.moveCursorTo(s.row-1,this.doc.getLine(s.row-1).length);else{var d=this.session.getTabSize();this.wouldMoveIntoSoftTab(s,d,-1)&&!this.session.getNavigateWithinSoftTabs()?this.moveCursorBy(0,-d):this.moveCursorBy(0,-1)}},this.moveCursorRight=function(){var l,s=this.lead.getPosition();if(l=this.session.getFoldAt(s.row,s.column,1))this.moveCursorTo(l.end.row,l.end.column);else if(this.lead.column==this.doc.getLine(this.lead.row).length)this.lead.row0&&(l.column=r)}}this.moveCursorTo(l.row,l.column)},this.moveCursorFileEnd=function(){var s=this.doc.getLength()-1,l=this.doc.getLine(s).length;this.moveCursorTo(s,l)},this.moveCursorFileStart=function(){this.moveCursorTo(0,0)},this.moveCursorLongWordRight=function(){var s=this.lead.row,l=this.lead.column,d=this.doc.getLine(s),r=d.substring(l);this.session.nonTokenRe.lastIndex=0,this.session.tokenRe.lastIndex=0;var u=this.session.getFoldAt(s,l,1);if(!u)return this.session.nonTokenRe.exec(r)&&(l+=this.session.nonTokenRe.lastIndex,this.session.nonTokenRe.lastIndex=0,r=d.substring(l)),l>=d.length?(this.moveCursorTo(s,d.length),this.moveCursorRight(),void(s0&&this.moveCursorWordLeft());this.session.tokenRe.exec(u)&&(l-=this.session.tokenRe.lastIndex,this.session.tokenRe.lastIndex=0),this.moveCursorTo(s,l)}},this.$shortWordEndIndex=function(s){var d,l=0,r=/\s/,u=this.session.tokenRe;if(u.lastIndex=0,this.session.tokenRe.exec(s))l=this.session.tokenRe.lastIndex;else{for(;(d=s[l])&&r.test(d);)l++;if(l<1)for(u.lastIndex=0;(d=s[l])&&!u.test(d);)if(u.lastIndex=0,l++,r.test(d)){if(l>2){l--;break}for(;(d=s[l])&&r.test(d);)l++;if(l>2)break}}return u.lastIndex=0,l},this.moveCursorShortWordRight=function(){var s=this.lead.row,l=this.lead.column,d=this.doc.getLine(s),r=d.substring(l),u=this.session.getFoldAt(s,l,1);if(u)return this.moveCursorTo(u.end.row,u.end.column);if(l==d.length){var h=this.doc.getLength();do{s++,r=this.doc.getLine(s)}while(s0&&/^\s*$/.test(r));l=r.length,/\s+$/.test(r)||(r="")}var u=o.stringReverse(r),h=this.$shortWordEndIndex(u);return this.moveCursorTo(s,l-h)},this.moveCursorWordRight=function(){this.session.$selectLongWords?this.moveCursorLongWordRight():this.moveCursorShortWordRight()},this.moveCursorWordLeft=function(){this.session.$selectLongWords?this.moveCursorLongWordLeft():this.moveCursorShortWordLeft()},this.moveCursorBy=function(s,l){var r,d=this.session.documentToScreenPosition(this.lead.row,this.lead.column);if(0===l&&(0!==s&&(this.session.$bidiHandler.isBidiRow(d.row,this.lead.row)?(r=this.session.$bidiHandler.getPosLeft(d.column),d.column=Math.round(r/this.session.$bidiHandler.charWidths[0])):r=d.column*this.session.$bidiHandler.charWidths[0]),this.$desiredColumn?d.column=this.$desiredColumn:this.$desiredColumn=d.column),0!=s&&this.session.lineWidgets&&this.session.lineWidgets[this.lead.row]){var u=this.session.lineWidgets[this.lead.row];s<0?s-=u.rowsAbove||0:s>0&&(s+=u.rowCount-(u.rowsAbove||0))}var h=this.session.screenToDocumentPosition(d.row+s,d.column,r);this.moveCursorTo(h.row,h.column+l,0===l)},this.moveCursorToPosition=function(s){this.moveCursorTo(s.row,s.column)},this.moveCursorTo=function(s,l,d){var r=this.session.getFoldAt(s,l,1);r&&(s=r.start.row,l=r.start.column),this.$keepDesiredColumnOnChange=!0;var u=this.session.getLine(s);/[\uDC00-\uDFFF]/.test(u.charAt(l))&&u.charAt(l-1)&&(this.lead.row==s&&this.lead.column==l+1?l-=1:l+=1),this.lead.setPosition(s,l),this.$keepDesiredColumnOnChange=!1,d||(this.$desiredColumn=null)},this.moveCursorToScreen=function(s,l,d){var r=this.session.screenToDocumentPosition(s,l);this.moveCursorTo(r.row,r.column,d)},this.detach=function(){this.lead.detach(),this.anchor.detach()},this.fromOrientedRange=function(s){this.setSelectionRange(s,s.cursor==s.start),this.$desiredColumn=s.desiredColumn||this.$desiredColumn},this.toOrientedRange=function(s){var l=this.getRange();return s?(s.start.column=l.start.column,s.start.row=l.start.row,s.end.column=l.end.column,s.end.row=l.end.row):s=l,s.cursor=this.isBackwards()?s.start:s.end,s.desiredColumn=this.$desiredColumn,s},this.getRangeOfMovements=function(s){var l=this.getCursor();try{s(this);var d=this.getCursor();return a.fromPoints(l,d)}catch{return a.fromPoints(l,l)}finally{this.moveCursorToPosition(l)}},this.toJSON=function(){if(this.rangeCount)var s=this.ranges.map(function(l){var d=l.clone();return d.isBackwards=l.cursor==l.start,d});else(s=this.getRange()).isBackwards=this.isBackwards();return s},this.fromJSON=function(s){if(null==s.start){if(this.rangeList&&s.length>1){this.toSingleRange(s[0]);for(var l=s.length;l--;){var d=a.fromPoints(s[l].start,s[l].end);s[l].isBackwards&&(d.cursor=d.start),this.addRange(d,!0)}return}s=s[0]}this.rangeList&&this.toSingleRange(s),this.setSelectionRange(s,s.isBackwards)},this.isEqual=function(s){if((s.length||this.rangeCount)&&s.length!=this.rangeCount)return!1;if(!s.length||!this.ranges)return this.getRange().isEqual(s);for(var l=this.ranges.length;l--;)if(!this.ranges[l].isEqual(s[l]))return!1;return!0}}).call(c.prototype),p.Selection=c}),ace.define("ace/tokenizer",["require","exports","module","ace/config"],function(n,p,C){"use strict";var b=n("./config"),o=2e3,v=function(){function a(c){for(var s in this.states=c,this.regExps={},this.matchMappings={},this.states){for(var l=this.states[s],d=[],r=0,u=this.matchMappings[s]={defaultToken:"text"},h="g",m=[],_=0;_1?this.$applyToken:M.token),w>1&&(/\\\d/.test(M.regex)?x=M.regex.replace(/\\([0-9]+)/g,function(L,A){return"\\"+(parseInt(A,10)+r+1)}):(w=1,x=this.removeCapturingGroups(M.regex)),!M.splitRegex&&"string"!=typeof M.token&&m.push(M)),u[r]=_,r+=w,d.push(x),M.onMatch||(M.onMatch=null)}}d.length||(u[0]=0,d.push("$")),m.forEach(function(L){L.splitRegex=this.createSplitterRegexp(L.regex,h)},this),this.regExps[s]=new RegExp("("+d.join(")|(")+")|($)",h)}}return a.prototype.$setMaxTokenCount=function(c){o=0|c},a.prototype.$applyToken=function(c){var s=this.splitRegex.exec(c).slice(1),l=this.token.apply(this,s);if("string"==typeof l)return[{type:l,value:c}];for(var d=[],r=0,u=l.length;rM){var E=c.substring(M,O-T.length);w.type==L?w.value+=E:(w.type&&_.push(w),w={type:L,value:E})}for(var D=0;Do){for(x>2*c.length&&this.reportError("infinite loop with in ace tokenizer",{startState:s,line:c});M1&&l[0]!==d&&l.unshift("#tmp",d),{tokens:_,state:l.length?l:d}},a}();v.prototype.reportError=b.reportError,p.Tokenizer=v}),ace.define("ace/mode/text_highlight_rules",["require","exports","module","ace/lib/lang"],function(n,p,C){"use strict";var b=n("../lib/lang"),o=function(){this.$rules={start:[{token:"empty_line",regex:"^$"},{defaultToken:"text"}]}};(function(){this.addRules=function(c,s){if(s)for(var l in c){for(var d=c[l],r=0;r=this.$rowTokens.length;){if(this.$row+=1,a||(a=this.$session.getLength()),this.$row>=a)return this.$row=a-1,null;this.$rowTokens=this.$session.getTokens(this.$row),this.$tokenIndex=0}return this.$rowTokens[this.$tokenIndex]},v.prototype.getCurrentToken=function(){return this.$rowTokens[this.$tokenIndex]},v.prototype.getCurrentTokenRow=function(){return this.$row},v.prototype.getCurrentTokenColumn=function(){var a=this.$rowTokens,c=this.$tokenIndex,s=a[c].start;if(void 0!==s)return s;for(s=0;c>0;)s+=a[c-=1].value.length;return s},v.prototype.getCurrentTokenPosition=function(){return{row:this.$row,column:this.getCurrentTokenColumn()}},v.prototype.getCurrentTokenRange=function(){var a=this.$rowTokens[this.$tokenIndex],c=this.getCurrentTokenColumn();return new b(this.$row,c,this.$row,c+a.value.length)},v}();p.TokenIterator=o}),ace.define("ace/mode/behaviour/cstyle",["require","exports","module","ace/lib/oop","ace/mode/behaviour","ace/token_iterator","ace/lib/lang"],function(n,p,C){"use strict";var l,b=n("../../lib/oop"),o=n("../behaviour").Behaviour,v=n("../../token_iterator").TokenIterator,a=n("../../lib/lang"),c=["text","paren.rparen","rparen","paren","punctuation.operator"],s=["text","paren.rparen","rparen","paren","punctuation.operator","comment"],d={},r={'"':'"',"'":"'"},u=function(_){var M=-1;if(_.multiSelect&&(M=_.selection.index,d.rangeCount!=_.multiSelect.rangeCount&&(d={rangeCount:_.multiSelect.rangeCount})),d[M])return l=d[M];l=d[M]={autoInsertedBrackets:0,autoInsertedRow:-1,autoInsertedLineEnd:"",maybeInsertedBrackets:0,maybeInsertedRow:-1,maybeInsertedLineStart:"",maybeInsertedLineEnd:""}},h=function(_,M,x,w){var L=_.end.row-_.start.row;return{text:x+M+w,selection:[0,_.start.column+1,L,_.end.column+(L?0:1)]}},m=function(_){_=_||{},this.add("braces","insertion",function(M,x,w,L,A){var T=w.getCursorPosition(),O=L.doc.getLine(T.row);if("{"==A){u(w);var E=w.getSelectionRange(),D=L.doc.getTextRange(E);if(""!==D&&"{"!==D&&w.getWrapBehavioursEnabled())return h(E,D,"{","}");if(m.isSaneInsertion(w,L))return/[\]\}\)]/.test(O[T.column])||w.inMultiSelectMode||_.braces?(m.recordAutoInsert(w,L,"}"),{text:"{}",selection:[1,1]}):(m.recordMaybeInsert(w,L,"{"),{text:"{",selection:[1,1]})}else if("}"==A){if(u(w),"}"==O.substring(T.column,T.column+1)&&null!==L.$findOpeningBracket("}",{column:T.column+1,row:T.row})&&m.isAutoInsertedClosing(T,O,A))return m.popAutoInsertedClosing(),{text:"",selection:[1,1]}}else{if("\n"==A||"\r\n"==A){u(w);var N="";if(m.isMaybeInsertedClosing(T,O)&&(N=a.stringRepeat("}",l.maybeInsertedBrackets),m.clearMaybeInsertedClosing()),"}"===O.substring(T.column,T.column+1)){var S=L.findMatchingBracket({row:T.row,column:T.column+1},"}");if(!S)return null;var k=this.$getIndent(L.getLine(S.row))}else{if(!N)return void m.clearMaybeInsertedClosing();k=this.$getIndent(O)}var F=k+L.getTabString();return{text:"\n"+F+"\n"+k+N,selection:[1,F.length,1,F.length]}}m.clearMaybeInsertedClosing()}}),this.add("braces","deletion",function(M,x,w,L,A){var T=L.doc.getTextRange(A);if(!A.isMultiLine()&&"{"==T){if(u(w),"}"==L.doc.getLine(A.start.row).substring(A.end.column,A.end.column+1))return A.end.column++,A;l.maybeInsertedBrackets--}}),this.add("parens","insertion",function(M,x,w,L,A){if("("==A){u(w);var T=w.getSelectionRange(),O=L.doc.getTextRange(T);if(""!==O&&w.getWrapBehavioursEnabled())return h(T,O,"(",")");if(m.isSaneInsertion(w,L))return m.recordAutoInsert(w,L,")"),{text:"()",selection:[1,1]}}else if(")"==A){u(w);var E=w.getCursorPosition(),D=L.doc.getLine(E.row);if(")"==D.substring(E.column,E.column+1)&&null!==L.$findOpeningBracket(")",{column:E.column+1,row:E.row})&&m.isAutoInsertedClosing(E,D,A))return m.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}),this.add("parens","deletion",function(M,x,w,L,A){var T=L.doc.getTextRange(A);if(!A.isMultiLine()&&"("==T&&(u(w),")"==L.doc.getLine(A.start.row).substring(A.start.column+1,A.start.column+2)))return A.end.column++,A}),this.add("brackets","insertion",function(M,x,w,L,A){if("["==A){u(w);var T=w.getSelectionRange(),O=L.doc.getTextRange(T);if(""!==O&&w.getWrapBehavioursEnabled())return h(T,O,"[","]");if(m.isSaneInsertion(w,L))return m.recordAutoInsert(w,L,"]"),{text:"[]",selection:[1,1]}}else if("]"==A){u(w);var E=w.getCursorPosition(),D=L.doc.getLine(E.row);if("]"==D.substring(E.column,E.column+1)&&null!==L.$findOpeningBracket("]",{column:E.column+1,row:E.row})&&m.isAutoInsertedClosing(E,D,A))return m.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}),this.add("brackets","deletion",function(M,x,w,L,A){var T=L.doc.getTextRange(A);if(!A.isMultiLine()&&"["==T&&(u(w),"]"==L.doc.getLine(A.start.row).substring(A.start.column+1,A.start.column+2)))return A.end.column++,A}),this.add("string_dquotes","insertion",function(M,x,w,L,A){var T=L.$mode.$quotes||r;if(1==A.length&&T[A]){if(this.lineCommentStart&&-1!=this.lineCommentStart.indexOf(A))return;u(w);var O=A,E=w.getSelectionRange(),D=L.doc.getTextRange(E);if(""!==D&&(1!=D.length||!T[D])&&w.getWrapBehavioursEnabled())return h(E,D,O,O);if(!D){var R=w.getCursorPosition(),j=L.doc.getLine(R.row),N=j.substring(R.column-1,R.column),S=j.substring(R.column,R.column+1),k=L.getTokenAt(R.row,R.column),F=L.getTokenAt(R.row,R.column+1);if("\\"==N&&k&&/escape/.test(k.type))return null;var ne,Y=k&&/string|escape/.test(k.type),se=!F||/string|escape/.test(F.type);if(S==O)(ne=Y!==se)&&/string\.end/.test(F.type)&&(ne=!1);else{if(Y&&!se||Y&&se)return null;var me=L.$mode.tokenRe;me.lastIndex=0;var $=me.test(N);me.lastIndex=0;var q=me.test(S),Q=L.$mode.$pairQuotesAfter;if(!(Q&&Q[O]&&Q[O].test(N))&&$||q||S&&!/[\s;,.})\]\\]/.test(S))return null;var Me=j[R.column-2];if(N==O&&(Me==O||me.test(Me)))return null;ne=!0}return{text:ne?O+O:"",selection:[1,1]}}}}),this.add("string_dquotes","deletion",function(M,x,w,L,A){var T=L.$mode.$quotes||r,O=L.doc.getTextRange(A);if(!A.isMultiLine()&&T.hasOwnProperty(O)&&(u(w),L.doc.getLine(A.start.row).substring(A.start.column+1,A.start.column+2)==O))return A.end.column++,A}),!1!==_.closeDocComment&&this.add("doc comment end","insertion",function(M,x,w,L,A){if("doc-start"===M&&("\n"===A||"\r\n"===A)&&w.selection.isEmpty()){var T=w.getCursorPosition(),O=L.doc.getLine(T.row),E=L.doc.getLine(T.row+1),D=this.$getIndent(O);if(/\s*\*/.test(E))return/^\s*\*/.test(O)?{text:A+D+"* ",selection:[1,3+D.length,1,3+D.length]}:{text:A+D+" * ",selection:[1,3+D.length,1,3+D.length]};if(/\/\*\*/.test(O.substring(0,T.column)))return{text:A+D+" * "+A+" "+D+"*/",selection:[1,4+D.length,1,4+D.length]}}})};m.isSaneInsertion=function(_,M){var x=_.getCursorPosition(),w=new v(M,x.row,x.column);if(!this.$matchTokenType(w.getCurrentToken()||"text",c)){if(/[)}\]]/.test(_.session.getLine(x.row)[x.column]))return!0;var L=new v(M,x.row,x.column+1);if(!this.$matchTokenType(L.getCurrentToken()||"text",c))return!1}return w.stepForward(),w.getCurrentTokenRow()!==x.row||this.$matchTokenType(w.getCurrentToken()||"text",s)},m.$matchTokenType=function(_,M){return M.indexOf(_.type||_)>-1},m.recordAutoInsert=function(_,M,x){var w=_.getCursorPosition(),L=M.doc.getLine(w.row);this.isAutoInsertedClosing(w,L,l.autoInsertedLineEnd[0])||(l.autoInsertedBrackets=0),l.autoInsertedRow=w.row,l.autoInsertedLineEnd=x+L.substr(w.column),l.autoInsertedBrackets++},m.recordMaybeInsert=function(_,M,x){var w=_.getCursorPosition(),L=M.doc.getLine(w.row);this.isMaybeInsertedClosing(w,L)||(l.maybeInsertedBrackets=0),l.maybeInsertedRow=w.row,l.maybeInsertedLineStart=L.substr(0,w.column)+x,l.maybeInsertedLineEnd=L.substr(w.column),l.maybeInsertedBrackets++},m.isAutoInsertedClosing=function(_,M,x){return l.autoInsertedBrackets>0&&_.row===l.autoInsertedRow&&x===l.autoInsertedLineEnd[0]&&M.substr(_.column)===l.autoInsertedLineEnd},m.isMaybeInsertedClosing=function(_,M){return l.maybeInsertedBrackets>0&&_.row===l.maybeInsertedRow&&M.substr(_.column)===l.maybeInsertedLineEnd&&M.substr(0,_.column)==l.maybeInsertedLineStart},m.popAutoInsertedClosing=function(){l.autoInsertedLineEnd=l.autoInsertedLineEnd.substr(1),l.autoInsertedBrackets--},m.clearMaybeInsertedClosing=function(){l&&(l.maybeInsertedBrackets=0,l.maybeInsertedRow=-1)},b.inherits(m,o),p.CstyleBehaviour=m}),ace.define("ace/unicode",["require","exports","module"],function(n,p,C){"use strict";for(var b=[48,9,8,25,5,0,2,25,48,0,11,0,5,0,6,22,2,30,2,457,5,11,15,4,8,0,2,0,18,116,2,1,3,3,9,0,2,2,2,0,2,19,2,82,2,138,2,4,3,155,12,37,3,0,8,38,10,44,2,0,2,1,2,1,2,0,9,26,6,2,30,10,7,61,2,9,5,101,2,7,3,9,2,18,3,0,17,58,3,100,15,53,5,0,6,45,211,57,3,18,2,5,3,11,3,9,2,1,7,6,2,2,2,7,3,1,3,21,2,6,2,0,4,3,3,8,3,1,3,3,9,0,5,1,2,4,3,11,16,2,2,5,5,1,3,21,2,6,2,1,2,1,2,1,3,0,2,4,5,1,3,2,4,0,8,3,2,0,8,15,12,2,2,8,2,2,2,21,2,6,2,1,2,4,3,9,2,2,2,2,3,0,16,3,3,9,18,2,2,7,3,1,3,21,2,6,2,1,2,4,3,8,3,1,3,2,9,1,5,1,2,4,3,9,2,0,17,1,2,5,4,2,2,3,4,1,2,0,2,1,4,1,4,2,4,11,5,4,4,2,2,3,3,0,7,0,15,9,18,2,2,7,2,2,2,22,2,9,2,4,4,7,2,2,2,3,8,1,2,1,7,3,3,9,19,1,2,7,2,2,2,22,2,9,2,4,3,8,2,2,2,3,8,1,8,0,2,3,3,9,19,1,2,7,2,2,2,22,2,15,4,7,2,2,2,3,10,0,9,3,3,9,11,5,3,1,2,17,4,23,2,8,2,0,3,6,4,0,5,5,2,0,2,7,19,1,14,57,6,14,2,9,40,1,2,0,3,1,2,0,3,0,7,3,2,6,2,2,2,0,2,0,3,1,2,12,2,2,3,4,2,0,2,5,3,9,3,1,35,0,24,1,7,9,12,0,2,0,2,0,5,9,2,35,5,19,2,5,5,7,2,35,10,0,58,73,7,77,3,37,11,42,2,0,4,328,2,3,3,6,2,0,2,3,3,40,2,3,3,32,2,3,3,6,2,0,2,3,3,14,2,56,2,3,3,66,5,0,33,15,17,84,13,619,3,16,2,25,6,74,22,12,2,6,12,20,12,19,13,12,2,2,2,1,13,51,3,29,4,0,5,1,3,9,34,2,3,9,7,87,9,42,6,69,11,28,4,11,5,11,11,39,3,4,12,43,5,25,7,10,38,27,5,62,2,28,3,10,7,9,14,0,89,75,5,9,18,8,13,42,4,11,71,55,9,9,4,48,83,2,2,30,14,230,23,280,3,5,3,37,3,5,3,7,2,0,2,0,2,0,2,30,3,52,2,6,2,0,4,2,2,6,4,3,3,5,5,12,6,2,2,6,67,1,20,0,29,0,14,0,17,4,60,12,5,0,4,11,18,0,5,0,3,9,2,0,4,4,7,0,2,0,2,0,2,3,2,10,3,3,6,4,5,0,53,1,2684,46,2,46,2,132,7,6,15,37,11,53,10,0,17,22,10,6,2,6,2,6,2,6,2,6,2,6,2,6,2,6,2,31,48,0,470,1,36,5,2,4,6,1,5,85,3,1,3,2,2,89,2,3,6,40,4,93,18,23,57,15,513,6581,75,20939,53,1164,68,45,3,268,4,27,21,31,3,13,13,1,2,24,9,69,11,1,38,8,3,102,3,1,111,44,25,51,13,68,12,9,7,23,4,0,5,45,3,35,13,28,4,64,15,10,39,54,10,13,3,9,7,22,4,1,5,66,25,2,227,42,2,1,3,9,7,11171,13,22,5,48,8453,301,3,61,3,105,39,6,13,4,6,11,2,12,2,4,2,0,2,1,2,1,2,107,34,362,19,63,3,53,41,11,5,15,17,6,13,1,25,2,33,4,2,134,20,9,8,25,5,0,2,25,12,88,4,5,3,5,3,5,3,2],o=0,v=[],a=0;a2?Me%A!=A-1:Me%A==0}}else{if(!this.blockComment)return!1;O=this.blockComment.start;var E=this.blockComment.end,R=(D=new RegExp("^(\\s*)(?:"+s.escapeRegExp(O)+")"),new RegExp("(?:"+s.escapeRegExp(E)+")\\s*$"));j=function(ne,me){S(ne,me)||(!x||/\S/.test(ne))&&(M.insertInLine({row:me,column:ne.length},E),M.insertInLine({row:me,column:L},O))},N=function(ne,me){var $;($=ne.match(R))&&M.removeInLine(me,ne.length-$[0].length,ne.length),($=ne.match(D))&&M.removeInLine(me,$[1].length,$[0].length)},S=function(ne,me){if(D.test(ne))return!0;for(var $=h.getTokens(me),q=0;q<$.length;q++)if("comment"===$[q].type)return!0}}function Y(ne){for(var me=m;me<=_;me++)ne(M.getLine(me),me)}var se=1/0;Y(function(ne,me){var $=ne.search(/\S/);-1!==$?($ne.length&&(se=ne.length)}),L==1/0&&(L=se,x=!1,w=!1),T&&L%A!=0&&(L=Math.floor(L/A)*A),Y(w?N:j)},this.toggleBlockComment=function(u,h,m,_){var M=this.blockComment;if(M){!M.start&&M[0]&&(M=M[0]);var T,O,w=(x=new l(h,_.row,_.column)).getCurrentToken(),A=h.selection.toOrientedRange();if(w&&/comment/.test(w.type)){for(var E,D;w&&/comment/.test(w.type);){if(-1!=(R=w.value.indexOf(M.start))){var j=x.getCurrentTokenRow(),N=x.getCurrentTokenColumn()+R;E=new d(j,N,j,N+M.start.length);break}w=x.stepBackward()}var x;for(w=(x=new l(h,_.row,_.column)).getCurrentToken();w&&/comment/.test(w.type);){var R;if(-1!=(R=w.value.indexOf(M.end))){j=x.getCurrentTokenRow(),N=x.getCurrentTokenColumn()+R,D=new d(j,N,j,N+M.end.length);break}w=x.stepForward()}D&&h.remove(D),E&&(h.remove(E),T=E.start.row,O=-M.start.length)}else O=M.start.length,T=m.start.row,h.insert(m.end,M.end),h.insert(m.start,M.start);A.start.row==T&&(A.start.column+=O),A.end.row==T&&(A.end.column+=O),h.selection.fromOrientedRange(A)}},this.getNextLineIndent=function(u,h,m){return this.$getIndent(h)},this.checkOutdent=function(u,h,m){return!1},this.autoOutdent=function(u,h,m){},this.$getIndent=function(u){return u.match(/^\s*/)[0]},this.createWorker=function(u){return null},this.createModeDelegates=function(u){for(var h in this.$embeds=[],this.$modes={},u)if(u[h]){var m=u[h],_=m.prototype.$id,M=b.$modes[_];M||(b.$modes[_]=M=new m),b.$modes[h]||(b.$modes[h]=M),this.$embeds.push(h),this.$modes[h]=M}var x=["toggleBlockComment","toggleCommentLines","getNextLineIndent","checkOutdent","autoOutdent","transformAction","getCompletions"];for(h=0;h"u"?this.setPosition(d.row,d.column):this.setPosition(d,r)}return s.prototype.getPosition=function(){return this.$clipPositionToDocument(this.row,this.column)},s.prototype.getDocument=function(){return this.document},s.prototype.onChange=function(l){if(!(l.start.row==l.end.row&&l.start.row!=this.row||l.start.row>this.row)){var d=function c(s,l,d){var r="insert"==s.action,u=(r?1:-1)*(s.end.row-s.start.row),h=(r?1:-1)*(s.end.column-s.start.column),m=s.start,_=r?m:s.end;return a(l,m,d)?{row:l.row,column:l.column}:a(_,l,!d)?{row:l.row+u,column:l.column+(l.row==_.row?h:0)}:{row:m.row,column:m.column}}(l,{row:this.row,column:this.column},this.$insertRight);this.setPosition(d.row,d.column,!0)}},s.prototype.setPosition=function(l,d,r){var u;if(u=r?{row:l,column:d}:this.$clipPositionToDocument(l,d),this.row!=u.row||this.column!=u.column){var h={row:this.row,column:this.column};this.row=u.row,this.column=u.column,this._signal("change",{old:h,value:u})}},s.prototype.detach=function(){this.document.off("change",this.$onChange)},s.prototype.attach=function(l){this.document=l||this.document,this.document.on("change",this.$onChange)},s.prototype.$clipPositionToDocument=function(l,d){var r={};return l>=this.document.getLength()?(r.row=Math.max(0,this.document.getLength()-1),r.column=this.document.getLine(r.row).length):l<0?(r.row=0,r.column=0):(r.row=l,r.column=Math.min(this.document.getLine(r.row).length,Math.max(0,d))),d<0&&(r.column=0),r},s}();function a(s,l,d){return s.row=u&&(d=u-1,r=void 0);var h=this.getLine(d);return null==r&&(r=h.length),{row:d,column:r=Math.min(Math.max(r,0),h.length)}},l.prototype.clonePos=function(d){return{row:d.row,column:d.column}},l.prototype.pos=function(d,r){return{row:d,column:r}},l.prototype.$clipPosition=function(d){var r=this.getLength();return d.row>=r?(d.row=Math.max(0,r-1),d.column=this.getLine(r-1).length):(d.row=Math.max(0,d.row),d.column=Math.min(Math.max(d.column,0),this.getLine(d.row).length)),d},l.prototype.insertFullLines=function(d,r){var u=0;(d=Math.min(Math.max(d,0),this.getLength()))0,h=r=0&&this.applyDelta({start:this.pos(d,this.getLine(d).length),end:this.pos(d+1,0),action:"remove",lines:["",""]})},l.prototype.replace=function(d,r){return d instanceof a||(d=a.fromPoints(d.start,d.end)),0===r.length&&d.isEmpty()?d.start:r==this.getTextRange(d)?d.end:(this.remove(d),r?this.insert(d.start,r):d.start)},l.prototype.applyDeltas=function(d){for(var r=0;r=0;r--)this.revertDelta(d[r])},l.prototype.applyDelta=function(d,r){var u="insert"==d.action;(u?d.lines.length<=1&&!d.lines[0]:!a.comparePoints(d.start,d.end))||(u&&d.lines.length>2e4?this.$splitAndapplyLargeDelta(d,2e4):(o(this.$lines,d,r),this._signal("change",d)))},l.prototype.$safeApplyDelta=function(d){var r=this.$lines.length;("remove"==d.action&&d.start.row20){l.running=setTimeout(l.$worker,20);break}}l.currentLine=r,-1==u&&(u=r),m<=u&&l.fireUpdateEvent(m,u)}}}return a.prototype.setTokenizer=function(c){this.tokenizer=c,this.lines=[],this.states=[],this.start(0)},a.prototype.setDocument=function(c){this.doc=c,this.lines=[],this.states=[],this.stop()},a.prototype.fireUpdateEvent=function(c,s){this._signal("update",{data:{first:c,last:s}})},a.prototype.start=function(c){this.currentLine=Math.min(c||0,this.currentLine,this.doc.getLength()),this.lines.splice(this.currentLine,this.lines.length),this.states.splice(this.currentLine,this.states.length),this.stop(),this.running=setTimeout(this.$worker,700)},a.prototype.scheduleStart=function(){this.running||(this.running=setTimeout(this.$worker,700))},a.prototype.$updateOnChange=function(c){var s=c.start.row,l=c.end.row-s;if(0===l)this.lines[s]=null;else if("remove"==c.action)this.lines.splice(s,l+1,null),this.states.splice(s,l+1,null);else{var d=Array(l+1);d.unshift(s,1),this.lines.splice.apply(this.lines,d),this.states.splice.apply(this.states,d)}this.currentLine=Math.min(s,this.currentLine,this.doc.getLength()),this.stop()},a.prototype.stop=function(){this.running&&clearTimeout(this.running),this.running=!1},a.prototype.getTokens=function(c){return this.lines[c]||this.$tokenizeRow(c)},a.prototype.getState=function(c){return this.currentLine==c&&this.$tokenizeRow(c),this.states[c]||"start"},a.prototype.$tokenizeRow=function(c){var s=this.doc.getLine(c),d=this.tokenizer.getLineTokens(s,this.states[c-1],c);return this.states[c]+""!=d.state+""?(this.states[c]=d.state,this.lines[c+1]=null,this.currentLine>c+1&&(this.currentLine=c+1)):this.currentLine==c&&(this.currentLine=c+1),this.lines[c]=d.tokens},a.prototype.cleanup=function(){this.running=!1,this.lines=[],this.states=[],this.currentLine=0,this.removeAllListeners()},a}();b.implement(v.prototype,o),p.BackgroundTokenizer=v}),ace.define("ace/search_highlight",["require","exports","module","ace/lib/lang","ace/range"],function(n,p,C){"use strict";var b=n("./lib/lang"),o=n("./range").Range,v=function(){function a(c,s,l){void 0===l&&(l="text"),this.setRegexp(c),this.clazz=s,this.type=l}return a.prototype.setRegexp=function(c){this.regExp+""!=c+""&&(this.regExp=c,this.cache=[])},a.prototype.update=function(c,s,l,d){if(this.regExp)for(var u=d.lastRow,h={},m=d.firstRow;m<=u;m++){var _=this.cache[m];null==_&&((_=b.getMatchOffsets(l.getLine(m),this.regExp)).length>this.MAX_RANGES&&(_=_.slice(0,this.MAX_RANGES)),_=_.map(function(L){return new o(m,L.offset,m,L.offset+L.length)}),this.cache[m]=_.length?_:"");for(var M=_.length;M--;){var x=_[M].toScreenRange(l),w=x.toString();h[w]||(h[w]=!0,s.drawSingleLineMarker(c,x,this.clazz,d))}}},a}();v.prototype.MAX_RANGES=500,p.SearchHighlight=v}),ace.define("ace/edit_session/fold_line",["require","exports","module","ace/range"],function(n,p,C){"use strict";var b=n("../range").Range,o=function(){function v(a,c){this.foldData=a,Array.isArray(c)?this.folds=c:c=this.folds=[c];var s=c[c.length-1];this.range=new b(c[0].start.row,c[0].start.column,s.end.row,s.end.column),this.start=this.range.start,this.end=this.range.end,this.folds.forEach(function(l){l.setFoldLine(this)},this)}return v.prototype.shiftRow=function(a){this.start.row+=a,this.end.row+=a,this.folds.forEach(function(c){c.start.row+=a,c.end.row+=a})},v.prototype.addFold=function(a){if(a.sameRow){if(a.start.rowthis.endRow)throw new Error("Can't add a fold to this FoldLine as it has no connection");this.folds.push(a),this.folds.sort(function(c,s){return-c.range.compareEnd(s.start.row,s.start.column)}),this.range.compareEnd(a.start.row,a.start.column)>0?(this.end.row=a.end.row,this.end.column=a.end.column):this.range.compareStart(a.end.row,a.end.column)<0&&(this.start.row=a.start.row,this.start.column=a.start.column)}else if(a.start.row==this.end.row)this.folds.push(a),this.end.row=a.end.row,this.end.column=a.end.column;else{if(a.end.row!=this.start.row)throw new Error("Trying to add fold to FoldRow that doesn't have a matching row");this.folds.unshift(a),this.start.row=a.start.row,this.start.column=a.start.column}a.foldLine=this},v.prototype.containsRow=function(a){return a>=this.start.row&&a<=this.end.row},v.prototype.walk=function(a,c,s){var r,u,l=0,d=this.folds,m=!0;null==c&&(c=this.end.row,s=this.end.column);for(var _=0;_0)){var m=o(c,u.start);return 0===h?s&&0!==m?-r-2:r:m>0||0===m&&!s?r:-r-1}}return-r-1},a.prototype.add=function(c){var s=!c.isEmpty(),l=this.pointIndex(c.start,s);l<0&&(l=-l-1);var d=this.pointIndex(c.end,s,l);return d<0?d=-d-1:d++,this.ranges.splice(l,d-l,c)},a.prototype.addList=function(c){for(var s=[],l=c.length;l--;)s.push.apply(s,this.add(c[l]));return s},a.prototype.substractPoint=function(c){var s=this.pointIndex(c);if(s>=0)return this.ranges.splice(s,1)},a.prototype.merge=function(){for(var d,c=[],s=this.ranges,l=(s=s.sort(function(h,m){return o(h.start,m.start)}))[0],r=1;r=0},a.prototype.containsPoint=function(c){return this.pointIndex(c)>=0},a.prototype.rangeAtPoint=function(c){var s=this.pointIndex(c);if(s>=0)return this.ranges[s]},a.prototype.clipRows=function(c,s){var l=this.ranges;if(l[0].start.row>s||l[l.length-1].start.row=d);h++);if("insert"==c.action){for(var M=r-d,x=-s.column+l.column;hd);h++)if(_.start.row==d&&_.start.column>=s.column&&(_.start.column==s.column&&this.$bias<=0||(_.start.column+=x,_.start.row+=M)),_.end.row==d&&_.end.column>=s.column){if(_.end.column==s.column&&this.$bias<0)continue;_.end.column==s.column&&x>0&&h_.start.column&&_.end.column==u[h+1].start.column&&(_.end.column-=x),_.end.column+=x,_.end.row+=M}}else for(M=d-r,x=s.column-l.column;hr);h++)_.end.rows.column)&&(_.end.column=s.column,_.end.row=s.row):(_.end.column+=x,_.end.row+=M):_.end.row>r&&(_.end.row+=M),_.start.rows.column)&&(_.start.column=s.column,_.start.row=s.row):(_.start.column+=x,_.start.row+=M):_.start.row>r&&(_.start.row+=M);if(0!=M&&h=l)return h;if(h.end.row>l)return null}return null},this.getNextFoldLine=function(l,d){var r=this.$foldData,u=0;for(d&&(u=r.indexOf(d)),-1==u&&(u=0);u=l)return h}return null},this.getFoldedRowCount=function(l,d){for(var r=this.$foldData,u=d-l+1,h=0;h=d){M=l?u-=d-M:u=0);break}_>=l&&(u-=M>=l?_-M:_-l+1)}return u},this.$addFoldLine=function(l){return this.$foldData.push(l),this.$foldData.sort(function(d,r){return d.start.row-r.start.row}),l},this.addFold=function(l,d){var h,r=this.$foldData,u=!1;l instanceof v?h=l:(h=new v(d,l)).collapseChildren=d.collapseChildren,this.$clipRangeToDocument(h.range);var m=h.start.row,_=h.start.column,M=h.end.row,x=h.end.column,w=this.getFoldAt(m,_,1),L=this.getFoldAt(M,x,-1);if(w&&L==w)return w.addSubFold(h);w&&!w.range.isStart(m,_)&&this.removeFold(w),L&&!L.range.isEnd(M,x)&&this.removeFold(L);var A=this.getFoldsInRange(h.range);A.length>0&&(this.removeFolds(A),h.collapseChildren||A.forEach(function(D){h.addSubFold(D)}));for(var T=0;T0&&this.foldAll(l.start.row+1,l.end.row,l.collapseChildren-1),l.subFolds=[]},this.expandFolds=function(l){l.forEach(function(d){this.expandFold(d)},this)},this.unfold=function(l,d){var r,u;if(null==l)r=new b(0,0,this.getLength(),0),null==d&&(d=!0);else if("number"==typeof l)r=new b(l,0,l,this.getLine(l).length);else if("row"in l)r=b.fromPoints(l,l);else{if(Array.isArray(l))return u=[],l.forEach(function(m){u=u.concat(this.unfold(m))},this),u;r=l}for(var h=u=this.getFoldsInRangeList(r);1==u.length&&b.comparePoints(u[0].start,r.start)<0&&b.comparePoints(u[0].end,r.end)>0;)this.expandFolds(u),u=this.getFoldsInRangeList(r);if(0!=d?this.removeFolds(u):this.expandFolds(u),h.length)return h},this.isRowFolded=function(l,d){return!!this.getFoldLine(l,d)},this.getRowFoldEnd=function(l,d){var r=this.getFoldLine(l,d);return r?r.end.row:l},this.getRowFoldStart=function(l,d){var r=this.getFoldLine(l,d);return r?r.start.row:l},this.getFoldDisplayLine=function(l,d,r,u,h){null==u&&(u=l.start.row),null==h&&(h=0),null==d&&(d=l.end.row),null==r&&(r=this.getLine(d).length);var m=this.doc,_="";return l.walk(function(M,x,w,L){if(!(xx)break}while(h&&_.test(h.type)&&!/^comment.start/.test(h.type));h=u.stepBackward()}else h=u.getCurrentToken();return M.end.row=u.getCurrentTokenRow(),M.end.column=u.getCurrentTokenColumn(),/^comment.end/.test(h.type)||(M.end.column+=h.value.length-2),M}},this.foldAll=function(l,d,r,u){null==r&&(r=1e5);var h=this.foldWidgets;if(h){d=d||this.getLength();for(var m=l=l||0;m=l&&(m=_.end.row,_.collapseChildren=r,this.addFold("...",_))}}},this.foldToLevel=function(l){for(this.foldAll();l-- >0;)this.unfold(null,!1)},this.foldAllComments=function(){var l=this;this.foldAll(null,null,null,function(d){for(var r=l.getTokens(d),u=0;u=0;){var m=r[u];if(null==m&&(m=r[u]=this.getFoldWidget(u)),"start"==m){var _=this.getFoldWidgetRange(u);if(h||(h=_),_&&_.end.row>=l)break}u--}return{range:-1!==u&&_,firstRange:h}},this.onFoldWidgetClick=function(l,d){if(d instanceof c&&(d=d.domEvent),!this.$toggleFoldWidget(l,{children:d.shiftKey,all:d.ctrlKey||d.metaKey,siblings:d.altKey})){var h=d.target||d.srcElement;h&&/ace_fold-widget/.test(h.className)&&(h.className+=" ace_invalid")}},this.$toggleFoldWidget=function(l,d){if(this.getFoldWidget){var r=this.getFoldWidget(l),u=this.getLine(l),h="end"===r?-1:1,m=this.getFoldAt(l,-1===h?0:u.length,h);if(m)return d.children||d.all?this.removeFold(m):this.expandFold(m),m;var _=this.getFoldWidgetRange(l,!0);if(_&&!_.isMultiLine()&&(m=this.getFoldAt(_.start.row,_.start.column,1))&&_.isEqual(m.range))return this.removeFold(m),m;if(d.siblings){var M=this.getParentFoldRangeData(l);if(M.range)var x=M.range.start.row+1,w=M.range.end.row;this.foldAll(x,w,d.all?1e4:0)}else d.children?(w=_?_.end.row:this.getLength(),this.foldAll(l+1,w,d.all?1e4:0)):_&&(d.all&&(_.collapseChildren=1e4),this.addFold("...",_));return _}},this.toggleFoldWidget=function(l){var d=this.selection.getCursor().row;d=this.getRowFoldStart(d);var r=this.$toggleFoldWidget(d,{});if(!r){var u=this.getParentFoldRangeData(d,!0);if(r=u.range||u.firstRange){var h=this.getFoldAt(d=r.start.row,this.getLine(d).length,1);h?this.removeFold(h):this.addFold("...",r)}}},this.updateFoldWidgets=function(l){var d=l.start.row,r=l.end.row-d;if(0===r)this.foldWidgets[d]=null;else if("remove"==l.action)this.foldWidgets.splice(d,r+1,null);else{var u=Array(r+1);u.unshift(d,1),this.foldWidgets.splice.apply(this.foldWidgets,u)}},this.tokenizerUpdateFoldWidgets=function(l){var d=l.data;d.first!=d.last&&this.foldWidgets.length>d.first&&this.foldWidgets.splice(d.first,this.foldWidgets.length)}}}),ace.define("ace/edit_session/bracket_match",["require","exports","module","ace/token_iterator","ace/range"],function(n,p,C){"use strict";var b=n("../token_iterator").TokenIterator,o=n("../range").Range;p.BracketMatch=function v(){this.findMatchingBracket=function(a,c){if(0==a.column)return null;var s=c||this.getLine(a.row).charAt(a.column-1);if(""==s)return null;var l=s.match(/([\(\[\{])|([\)\]\}])/);return l?l[1]?this.$findClosingBracket(l[1],a):this.$findOpeningBracket(l[2],a):null},this.getBracketRange=function(a){var l,c=this.getLine(a.row),s=!0,d=c.charAt(a.column-1),r=d&&d.match(/([\(\[\{])|([\)\]\}])/);if(r||(d=c.charAt(a.column),a={row:a.row,column:a.column+1},r=d&&d.match(/([\(\[\{])|([\)\]\}])/),s=!1),!r)return null;if(r[1]){if(!(u=this.$findClosingBracket(r[1],a)))return null;l=o.fromPoints(a,u),s||(l.end.column++,l.start.column--),l.cursor=l.end}else{var u;if(!(u=this.$findOpeningBracket(r[2],a)))return null;l=o.fromPoints(u,a),s||(l.start.column++,l.end.column--),l.cursor=l.start}return l},this.getMatchingBracketRanges=function(a,c){var s=this.getLine(a.row),l=/([\(\[\{])|([\)\]\}])/,d=!c&&s.charAt(a.column-1),r=d&&d.match(l);if(r||(d=(void 0===c||c)&&s.charAt(a.column),a={row:a.row,column:a.column+1},r=d&&d.match(l)),!r)return null;var u=new o(a.row,a.column-1,a.row,a.column),h=r[1]?this.$findClosingBracket(r[1],a):this.$findOpeningBracket(r[2],a);return h?[u,new o(h.row,h.column,h.row,h.column+1)]:[u]},this.$brackets={")":"(","(":")","]":"[","[":"]","{":"}","}":"{","<":">",">":"<"},this.$findOpeningBracket=function(a,c,s){var l=this.$brackets[a],d=1,r=new b(this,c.row,c.column),u=r.getCurrentToken();if(u||(u=r.stepForward()),u){s||(s=new RegExp("(\\.?"+u.type.replace(".","\\.").replace("rparen",".paren").replace(/\b(?:end)\b/,"(?:start|begin|end)").replace(/-close\b/,"-(close|open)")+")+"));for(var h=c.column-r.getCurrentTokenColumn()-2,m=u.value;;){for(;h>=0;){var _=m.charAt(h);if(_==l){if(0==(d-=1))return{row:r.getCurrentTokenRow(),column:h+r.getCurrentTokenColumn()}}else _==a&&(d+=1);h-=1}do{u=r.stepBackward()}while(u&&!s.test(u.type));if(null==u)break;h=(m=u.value).length-1}return null}},this.$findClosingBracket=function(a,c,s){var l=this.$brackets[a],d=1,r=new b(this,c.row,c.column),u=r.getCurrentToken();if(u||(u=r.stepForward()),u){s||(s=new RegExp("(\\.?"+u.type.replace(".","\\.").replace("lparen",".paren").replace(/\b(?:start|begin)\b/,"(?:start|begin|end)").replace(/-open\b/,"-(close|open)")+")+"));for(var h=c.column-r.getCurrentTokenColumn();;){for(var m=u.value,_=m.length;h<_;){var M=m.charAt(h);if(M==l){if(0==(d-=1))return{row:r.getCurrentTokenRow(),column:h+r.getCurrentTokenColumn()}}else M==a&&(d+=1);h+=1}do{u=r.stepForward()}while(u&&!s.test(u.type));if(null==u)break;h=0}return null}},this.getMatchingTags=function(a){var c=new b(this,a.row,a.column),s=this.$findTagName(c);if(s)return"<"===c.stepBackward().value?this.$findClosingTag(c,s):this.$findOpeningTag(c,s)},this.$findTagName=function(a){var c=a.getCurrentToken(),s=!1,l=!1;if(c&&-1===c.type.indexOf("tag-name"))do{(c=l?a.stepBackward():a.stepForward())&&("/>"===c.value?l=!0:-1!==c.type.indexOf("tag-name")&&(s=!0))}while(c&&!s);return c},this.$findClosingTag=function(a,c){var s,l=c.value,d=c.value,r=0,u=new o(a.getCurrentTokenRow(),a.getCurrentTokenColumn(),a.getCurrentTokenRow(),a.getCurrentTokenColumn()+1);c=a.stepForward();var h=new o(a.getCurrentTokenRow(),a.getCurrentTokenColumn(),a.getCurrentTokenRow(),a.getCurrentTokenColumn()+c.value.length),m=!1;do{if(s=c,c=a.stepForward()){if(">"===c.value&&!m){var _=new o(a.getCurrentTokenRow(),a.getCurrentTokenColumn(),a.getCurrentTokenRow(),a.getCurrentTokenColumn()+1);m=!0}if(-1!==c.type.indexOf("tag-name")){if(d===(l=c.value))if("<"===s.value)r++;else if(""!==c.value)return;var w=new o(a.getCurrentTokenRow(),a.getCurrentTokenColumn(),a.getCurrentTokenRow(),a.getCurrentTokenColumn()+1)}}else d===l&&"/>"===c.value&&--r<0&&(w=x=M=new o(a.getCurrentTokenRow(),a.getCurrentTokenColumn(),a.getCurrentTokenRow(),a.getCurrentTokenColumn()+2),_=new o(h.end.row,h.end.column,h.end.row,h.end.column+1))}}while(c&&r>=0);if(u&&_&&M&&w&&h&&x)return{openTag:new o(u.start.row,u.start.column,_.end.row,_.end.column),closeTag:new o(M.start.row,M.start.column,w.end.row,w.end.column),openTagName:h,closeTagName:x}},this.$findOpeningTag=function(a,c){var s=a.getCurrentToken(),l=c.value,d=0,r=a.getCurrentTokenRow(),u=a.getCurrentTokenColumn(),h=u+2,m=new o(r,u,r,h);a.stepForward();var _=new o(a.getCurrentTokenRow(),a.getCurrentTokenColumn(),a.getCurrentTokenRow(),a.getCurrentTokenColumn()+c.value.length);if((c=a.stepForward())&&">"===c.value){var M=new o(a.getCurrentTokenRow(),a.getCurrentTokenColumn(),a.getCurrentTokenRow(),a.getCurrentTokenColumn()+1);a.stepBackward(),a.stepBackward();do{if(c=s,r=a.getCurrentTokenRow(),h=(u=a.getCurrentTokenColumn())+c.value.length,s=a.stepBackward(),c)if(-1!==c.type.indexOf("tag-name")){if(l===c.value)if("<"===s.value){if(++d>0){var x=new o(r,u,r,h),w=new o(a.getCurrentTokenRow(),a.getCurrentTokenColumn(),a.getCurrentTokenRow(),a.getCurrentTokenColumn()+1);do{c=a.stepForward()}while(c&&">"!==c.value);var L=new o(a.getCurrentTokenRow(),a.getCurrentTokenColumn(),a.getCurrentTokenRow(),a.getCurrentTokenColumn()+1)}}else""===c.value){for(var A=0,T=s;T;){if(-1!==T.type.indexOf("tag-name")&&T.value===l){d--;break}if("<"===T.value)break;T=a.stepBackward(),A++}for(var O=0;ON&&(this.$docRowCache.splice(N,j),this.$screenRowCache.splice(N,j))},D.prototype.$getRowCacheIndex=function(R,j){for(var N=0,S=R.length-1;N<=S;){var k=N+S>>1,F=R[k];if(j>F)N=k+1;else{if(!(j=j);F++);return(S=N[F])?(S.index=F,S.start=k-S.value.length,S):null},D.prototype.setUndoManager=function(R){if(this.$undoManager=R,this.$informUndoManager&&this.$informUndoManager.cancel(),R){var j=this;R.addSession(this),this.$syncInformUndoManager=function(){j.$informUndoManager.cancel(),j.mergeUndoDeltas=!1},this.$informUndoManager=o.delayedCall(this.$syncInformUndoManager)}else this.$syncInformUndoManager=function(){}},D.prototype.markUndoGroup=function(){this.$syncInformUndoManager&&this.$syncInformUndoManager()},D.prototype.getUndoManager=function(){return this.$undoManager||this.$defaultUndoManager},D.prototype.getTabString=function(){return this.getUseSoftTabs()?o.stringRepeat(" ",this.getTabSize()):"\t"},D.prototype.setUseSoftTabs=function(R){this.setOption("useSoftTabs",R)},D.prototype.getUseSoftTabs=function(){return this.$useSoftTabs&&!this.$mode.$indentWithTabs},D.prototype.setTabSize=function(R){this.setOption("tabSize",R)},D.prototype.getTabSize=function(){return this.$tabSize},D.prototype.isTabStop=function(R){return this.$useSoftTabs&&R.column%this.$tabSize==0},D.prototype.setNavigateWithinSoftTabs=function(R){this.setOption("navigateWithinSoftTabs",R)},D.prototype.getNavigateWithinSoftTabs=function(){return this.$navigateWithinSoftTabs},D.prototype.setOverwrite=function(R){this.setOption("overwrite",R)},D.prototype.getOverwrite=function(){return this.$overwrite},D.prototype.toggleOverwrite=function(){this.setOverwrite(!this.$overwrite)},D.prototype.addGutterDecoration=function(R,j){this.$decorations[R]||(this.$decorations[R]=""),this.$decorations[R]+=" "+j,this._signal("changeBreakpoint",{})},D.prototype.removeGutterDecoration=function(R,j){this.$decorations[R]=(this.$decorations[R]||"").replace(" "+j,""),this._signal("changeBreakpoint",{})},D.prototype.getBreakpoints=function(){return this.$breakpoints},D.prototype.setBreakpoints=function(R){this.$breakpoints=[];for(var j=0;j0&&(S=!!N.charAt(j-1).match(this.tokenRe)),S||(S=!!N.charAt(j).match(this.tokenRe)),S)var k=this.tokenRe;else k=/^\s+$/.test(N.slice(j-1,j+1))?/\s/:this.nonTokenRe;var F=j;if(F>0){do{F--}while(F>=0&&N.charAt(F).match(k));F++}for(var Y=j;YR&&(R=j.screenWidth)}),this.lineWidgetWidth=R},D.prototype.$computeWidth=function(R){if(this.$modified||R){if(this.$modified=!1,this.$useWrapMode)return this.screenWidth=this.$wrapLimit;for(var j=this.doc.getAllLines(),N=this.$rowLengthCache,S=0,k=0,F=this.$foldData[k],Y=F?F.start.row:1/0,se=j.length,ne=0;neY){if((ne=F.end.row+1)>=se)break;Y=(F=this.$foldData[k++])?F.start.row:1/0}null==N[ne]&&(N[ne]=this.$getStringScreenWidth(j[ne])[0]),N[ne]>S&&(S=N[ne])}this.screenWidth=S}},D.prototype.getLine=function(R){return this.doc.getLine(R)},D.prototype.getLines=function(R,j){return this.doc.getLines(R,j)},D.prototype.getLength=function(){return this.doc.getLength()},D.prototype.getTextRange=function(R){return this.doc.getTextRange(R||this.selection.getRange())},D.prototype.insert=function(R,j){return this.doc.insert(R,j)},D.prototype.remove=function(R){return this.doc.remove(R)},D.prototype.removeFullLines=function(R,j){return this.doc.removeFullLines(R,j)},D.prototype.undoChanges=function(R,j){if(R.length){this.$fromUndo=!0;for(var N=R.length-1;-1!=N;N--){var S=R[N];"insert"==S.action||"remove"==S.action?this.doc.revertDelta(S):S.folds&&this.addFolds(S.folds)}!j&&this.$undoSelect&&(R.selectionBefore?this.selection.fromJSON(R.selectionBefore):this.selection.setRange(this.$getUndoSelection(R,!0))),this.$fromUndo=!1}},D.prototype.redoChanges=function(R,j){if(R.length){this.$fromUndo=!0;for(var N=0;NR.end.column&&(F.start.column+=se),F.end.row==R.end.row&&F.end.column>R.end.column&&(F.end.column+=se)),Y&&F.start.row>=R.end.row&&(F.start.row+=Y,F.end.row+=Y)),F.end=this.insert(F.start,S),k.length){var ne=R.start,me=F.start,Y=me.row-ne.row,se=me.column-ne.column;this.addFolds(k.map(function(Q){return(Q=Q.clone()).start.row==ne.row&&(Q.start.column+=se),Q.end.row==ne.row&&(Q.end.column+=se),Q.start.row+=Y,Q.end.row+=Y,Q}))}return F},D.prototype.indentRows=function(R,j,N){N=N.replace(/\t/g,this.getTabString());for(var S=R;S<=j;S++)this.doc.insertInLine({row:S,column:0},N)},D.prototype.outdentRows=function(R){for(var j=R.collapseRows(),N=new d(0,0,0,0),S=this.getTabSize(),k=j.start.row;k<=j.end.row;++k){var F=this.getLine(k);N.start.row=k,N.end.row=k;for(var Y=0;Y0){var S;if((S=this.getRowFoldEnd(j+N))>this.doc.getLength()-1)return 0;k=S-j}else R=this.$clipRowToDocument(R),k=(j=this.$clipRowToDocument(j))-R+1;var F=new d(R,0,j,Number.MAX_VALUE),Y=this.getFoldsInRange(F).map(function(ne){return(ne=ne.clone()).start.row+=k,ne.end.row+=k,ne}),se=0==N?this.doc.getLines(R,j):this.doc.removeFullLines(R,j);return this.doc.insertFullLines(R+k,se),Y.length&&this.addFolds(Y),k},D.prototype.moveLinesUp=function(R,j){return this.$moveLines(R,j,-1)},D.prototype.moveLinesDown=function(R,j){return this.$moveLines(R,j,1)},D.prototype.duplicateLines=function(R,j){return this.$moveLines(R,j,0)},D.prototype.$clipRowToDocument=function(R){return Math.max(0,Math.min(R,this.doc.getLength()-1))},D.prototype.$clipColumnToRow=function(R,j){return j<0?0:Math.min(this.doc.getLine(R).length,j)},D.prototype.$clipPositionToDocument=function(R,j){if(j=Math.max(0,j),R<0)R=0,j=0;else{var N=this.doc.getLength();R>=N?(R=N-1,j=this.doc.getLine(N-1).length):j=Math.min(this.doc.getLine(R).length,j)}return{row:R,column:j}},D.prototype.$clipRangeToDocument=function(R){R.start.row<0?(R.start.row=0,R.start.column=0):R.start.column=this.$clipColumnToRow(R.start.row,R.start.column);var j=this.doc.getLength()-1;return R.end.row>j?(R.end.row=j,R.end.column=this.doc.getLine(j).length):R.end.column=this.$clipColumnToRow(R.end.row,R.end.column),R},D.prototype.setUseWrapMode=function(R){if(R!=this.$useWrapMode){if(this.$useWrapMode=R,this.$modified=!0,this.$resetRowCache(0),R){var j=this.getLength();this.$wrapData=Array(j),this.$updateWrapData(0,j-1)}this._signal("changeWrapMode")}},D.prototype.getUseWrapMode=function(){return this.$useWrapMode},D.prototype.setWrapLimitRange=function(R,j){(this.$wrapLimitRange.min!==R||this.$wrapLimitRange.max!==j)&&(this.$wrapLimitRange={min:R,max:j},this.$modified=!0,this.$bidiHandler.markAsDirty(),this.$useWrapMode&&this._signal("changeWrapMode"))},D.prototype.adjustWrapLimit=function(R,j){var N=this.$wrapLimitRange;N.max<0&&(N={min:j,max:j});var S=this.$constrainWrapLimit(R,N.min,N.max);return S!=this.$wrapLimit&&S>1&&(this.$wrapLimit=S,this.$modified=!0,this.$useWrapMode&&(this.$updateWrapData(0,this.getLength()-1),this.$resetRowCache(0),this._signal("changeWrapLimit")),!0)},D.prototype.$constrainWrapLimit=function(R,j,N){return j&&(R=Math.max(j,R)),N&&(R=Math.min(N,R)),R},D.prototype.getWrapLimit=function(){return this.$wrapLimit},D.prototype.setWrapLimit=function(R){this.setWrapLimitRange(R,R)},D.prototype.getWrapLimitRange=function(){return{min:this.$wrapLimitRange.min,max:this.$wrapLimitRange.max}},D.prototype.$updateInternalDataOnChange=function(R){var j=this.$useWrapMode,N=R.action,S=R.start,k=R.end,F=S.row,Y=k.row,se=Y-F,ne=null;if(this.$updating=!0,0!=se)if("remove"===N){this[j?"$wrapData":"$rowLengthCache"].splice(F,se);var me=this.$foldData;ne=this.getFoldsInRange(R),this.removeFolds(ne);var q=0;if($=this.getFoldLine(k.row)){$.addRemoveChars(k.row,k.column,S.column-k.column),$.shiftRow(-se);var Q=this.getFoldLine(F);Q&&Q!==$&&(Q.merge($),$=Q),q=me.indexOf($)+1}for(;q=k.row&&$.shiftRow(-se);Y=F}else{var ue=Array(se);ue.unshift(F,0);var Me=j?this.$wrapData:this.$rowLengthCache;if(Me.splice.apply(Me,ue),me=this.$foldData,q=0,$=this.getFoldLine(F)){var Oe=$.range.compareInside(S.row,S.column);0==Oe?($=$.split(S.row,S.column))&&($.shiftRow(se),$.addRemoveChars(Y,0,k.column-S.column)):-1==Oe&&($.addRemoveChars(F,0,k.column-S.column),$.shiftRow(se)),q=me.indexOf($)+1}for(;q=F&&$.shiftRow(se)}}else se=Math.abs(R.start.column-R.end.column),"remove"===N&&(ne=this.getFoldsInRange(R),this.removeFolds(ne),se=-se),($=this.getFoldLine(F))&&$.addRemoveChars(F,S.column,se);return j&&this.$wrapData.length!=this.doc.getLength()&&console.error("doc.getLength() and $wrapData.length have to be the same!"),this.$updating=!1,j?this.$updateWrapData(F,Y):this.$updateRowLengthCache(F,Y),ne},D.prototype.$updateRowLengthCache=function(R,j,N){this.$rowLengthCache[R]=null,this.$rowLengthCache[j]=null},D.prototype.$updateWrapData=function(R,j){var Y,se,N=this.doc.getAllLines(),S=this.getTabSize(),k=this.$wrapData,F=this.$wrapLimit,ne=R;for(j=Math.min(j,N.length-1);ne<=j;)(se=this.getFoldLine(ne,se))?(Y=[],se.walk(function(me,$,q,Q){var ue;if(null!=me){(ue=this.$getDisplayTokens(me,Y.length))[0]=x;for(var Me=1;Mej-Q;){var ue=F+j-Q;if(R[ue-1]>=A&&R[ue]>=A)q(ue);else if(R[ue]!=x&&R[ue]!=w){for(var Me=Math.max(ue-(j-(j>>2)),F-1);ue>Me&&R[ue]Me&&R[ue]Me&&R[ue]==L;)ue--}else for(;ue>Me&&R[ue]Me?q(++ue):(R[ue=F+j]==M&&ue--,q(ue-Q))}else{for(;ue!=F-1&&R[ue]!=x;ue--);if(ue>F){q(ue);continue}for(ue=F+j;ue39&&F<48||F>57&&F<64?N.push(L):F>=4352&&E(F)?N.push(_,M):N.push(_)}return N},D.prototype.$getStringScreenWidth=function(R,j,N){if(0==j)return[0,0];var S,k;for(null==j&&(j=1/0),N=N||0,k=0;k=4352&&E(S)?N+=2:N+=1,!(N>j));k++);return[N,k]},D.prototype.getRowLength=function(R){var j=1;return this.lineWidgets&&(j+=this.lineWidgets[R]&&this.lineWidgets[R].rowCount||0),this.$useWrapMode&&this.$wrapData[R]?this.$wrapData[R].length+j:j},D.prototype.getRowLineCount=function(R){return this.$useWrapMode&&this.$wrapData[R]?this.$wrapData[R].length+1:1},D.prototype.getRowWrapIndent=function(R){if(this.$useWrapMode){var j=this.screenToDocumentPosition(R,Number.MAX_VALUE),N=this.$wrapData[j.row];return N.length&&N[0]=0){se=me[$],k=this.$docRowCache[$];var Q=R>me[q-1]}else Q=!q;for(var ue=this.getLength()-1,Me=this.getNextFoldLine(k),Oe=Me?Me.start.row:1/0;se<=R&&!(se+(ne=this.getRowLength(k))>R||k>=ue);)se+=ne,++k>Oe&&(Oe=(Me=this.getNextFoldLine(k=Me.end.row+1,Me))?Me.start.row:1/0),Q&&(this.$docRowCache.push(k),this.$screenRowCache.push(se));if(Me&&Me.start.row<=k)S=this.getFoldDisplayLine(Me),k=Me.start.row;else{if(se+ne<=R||k>ue)return{row:ue,column:this.getLine(ue).length};S=this.getLine(k),Me=null}var Xe=0,Be=Math.floor(R-se);if(this.$useWrapMode){var $e=this.$wrapData[k];$e&&(Y=$e[Be],Be>0&&$e.length&&(Xe=$e.indent,S=S.substring(F=$e[Be-1]||$e[$e.length-1])))}return void 0!==N&&this.$bidiHandler.isBidiRow(se+Be,k,Be)&&(j=this.$bidiHandler.offsetToCol(N)),F+=this.$getStringScreenWidth(S,j-Xe)[1],this.$useWrapMode&&F>=Y&&(F=Y-1),Me?Me.idxToPosition(F):{row:k,column:F}},D.prototype.documentToScreenPosition=function(R,j){if(typeof j>"u")var N=this.$clipPositionToDocument(R.row,R.column);else N=this.$clipPositionToDocument(R,j);var F,S=0,k=null;(F=this.getFoldAt(R=N.row,j=N.column,1))&&(R=F.start.row,j=F.start.column);var Y,se=0,ne=this.$docRowCache,me=this.$getRowCacheIndex(ne,R),$=ne.length;if($&&me>=0){se=ne[me],S=this.$screenRowCache[me];var q=R>ne[$-1]}else q=!$;for(var Q=this.getNextFoldLine(se),ue=Q?Q.start.row:1/0;se=ue){if((Y=Q.end.row+1)>R)break;ue=(Q=this.getNextFoldLine(Y,Q))?Q.start.row:1/0}else Y=se+1;S+=this.getRowLength(se),se=Y,q&&(this.$docRowCache.push(se),this.$screenRowCache.push(S))}var Me="";Q&&se>=ue?(Me=this.getFoldDisplayLine(Q,R,j),k=Q.start.row):(Me=this.getLine(R).substring(0,j),k=R);var Oe=0;if(this.$useWrapMode){var Xe=this.$wrapData[k];if(Xe){for(var Be=0;Me.length>=Xe[Be];)S++,Be++;Me=Me.substring(Xe[Be-1]||0,Me.length),Oe=Be>0?Xe.indent:0}}return this.lineWidgets&&this.lineWidgets[se]&&this.lineWidgets[se].rowsAbove&&(S+=this.lineWidgets[se].rowsAbove),{row:S,column:Oe+this.$getStringScreenWidth(Me)[0]}},D.prototype.documentToScreenColumn=function(R,j){return this.documentToScreenPosition(R,j).column},D.prototype.documentToScreenRow=function(R,j){return this.documentToScreenPosition(R,j).row},D.prototype.getScreenLength=function(){var R=0,j=null;if(this.$useWrapMode)for(var k=this.$wrapData.length,F=0,S=0,Y=(j=this.$foldData[S++])?j.start.row:1/0;FY&&(F=j.end.row+1,Y=(j=this.$foldData[S++])?j.start.row:1/0)}else{R=this.getLength();var N=this.$foldData;for(S=0;SN);F++);return[S,F]})},D.prototype.destroy=function(){this.destroyed||(this.bgTokenizer.setDocument(null),this.bgTokenizer.cleanup(),this.destroyed=!0),this.$stopWorker(),this.removeAllListeners(),this.doc&&this.doc.off("change",this.$onChange),this.selection.detach()},D}();m.$uid=0,m.prototype.$modes=a.$modes,m.prototype.getValue=m.prototype.toString,m.prototype.$defaultUndoManager={undo:function(){},redo:function(){},hasUndo:function(){},hasRedo:function(){},reset:function(){},add:function(){},addSelection:function(){},startNewGroup:function(){},addSession:function(){}},m.prototype.$overwrite=!1,m.prototype.$mode=null,m.prototype.$modeId=null,m.prototype.$scrollTop=0,m.prototype.$scrollLeft=0,m.prototype.$wrapLimit=80,m.prototype.$useWrapMode=!1,m.prototype.$wrapLimitRange={min:null,max:null},m.prototype.lineWidgets=null,m.prototype.isFullWidth=E,b.implement(m.prototype,c);var _=1,M=2,x=3,w=4,L=9,A=10,T=11,O=12;function E(D){return!(D<4352)&&(D>=4352&&D<=4447||D>=4515&&D<=4519||D>=4602&&D<=4607||D>=9001&&D<=9002||D>=11904&&D<=11929||D>=11931&&D<=12019||D>=12032&&D<=12245||D>=12272&&D<=12283||D>=12288&&D<=12350||D>=12353&&D<=12438||D>=12441&&D<=12543||D>=12549&&D<=12589||D>=12593&&D<=12686||D>=12688&&D<=12730||D>=12736&&D<=12771||D>=12784&&D<=12830||D>=12832&&D<=12871||D>=12880&&D<=13054||D>=13056&&D<=19903||D>=19968&&D<=42124||D>=42128&&D<=42182||D>=43360&&D<=43388||D>=44032&&D<=55203||D>=55216&&D<=55238||D>=55243&&D<=55291||D>=63744&&D<=64255||D>=65040&&D<=65049||D>=65072&&D<=65106||D>=65108&&D<=65126||D>=65128&&D<=65131||D>=65281&&D<=65376||D>=65504&&D<=65510)}n("./edit_session/folding").Folding.call(m.prototype),n("./edit_session/bracket_match").BracketMatch.call(m.prototype),a.defineOptions(m.prototype,"session",{wrap:{set:function(D){if(D&&"off"!=D?"free"==D?D=!0:"printMargin"==D?D=-1:"string"==typeof D&&(D=parseInt(D,10)||!1):D=!1,this.$wrap!=D)if(this.$wrap=D,D){var R="number"==typeof D?D:null;this.setWrapLimitRange(R,R),this.setUseWrapMode(!0)}else this.setUseWrapMode(!1)},get:function(){return this.getUseWrapMode()?-1==this.$wrap?"printMargin":this.getWrapLimitRange().min?this.$wrap:"free":"off"},handlesSet:!0},wrapMethod:{set:function(D){(D="auto"==D?"text"!=this.$mode.type:"text"!=D)!=this.$wrapAsCode&&(this.$wrapAsCode=D,this.$useWrapMode&&(this.$useWrapMode=!1,this.setUseWrapMode(!0)))},initialValue:"auto"},indentedSoftWrap:{set:function(){this.$useWrapMode&&(this.$useWrapMode=!1,this.setUseWrapMode(!0))},initialValue:!0},firstLineNumber:{set:function(){this._signal("changeBreakpoint")},initialValue:1},useWorker:{set:function(D){this.$useWorker=D,this.$stopWorker(),D&&this.$startWorker()},initialValue:!0},useSoftTabs:{initialValue:!0},tabSize:{set:function(D){(D=parseInt(D))>0&&this.$tabSize!==D&&(this.$modified=!0,this.$rowLengthCache=[],this.$tabSize=D,this._signal("changeTabSize"))},initialValue:4,handlesSet:!0},navigateWithinSoftTabs:{initialValue:!1},foldStyle:{set:function(D){this.setFoldStyle(D)},handlesSet:!0},overwrite:{set:function(D){this._signal("changeOverwrite")},initialValue:!1},newLineMode:{set:function(D){this.doc.setNewLineMode(D)},get:function(){return this.doc.getNewLineMode()},handlesSet:!0},mode:{set:function(D){this.setMode(D)},get:function(){return this.$modeId},handlesSet:!0}}),p.EditSession=m}),ace.define("ace/search",["require","exports","module","ace/lib/lang","ace/lib/oop","ace/range"],function(n,p,C){"use strict";var b=n("./lib/lang"),o=n("./lib/oop"),v=n("./range").Range,a=function(){function s(){this.$options={}}return s.prototype.set=function(l){return o.mixin(this.$options,l),this},s.prototype.getOptions=function(){return b.copyObject(this.$options)},s.prototype.setOptions=function(l){this.$options=l},s.prototype.find=function(l){var d=this.$options,r=this.$matchIterator(l,d);if(!r)return!1;var u=null;return r.forEach(function(h,m,_,M){return u=new v(h,m,_,M),!(m==M&&d.start&&d.start.start&&0!=d.skipCurrent&&u.isEqual(d.start)&&(u=null,1))}),u},s.prototype.findAll=function(l){var d=this.$options;if(!d.needle)return[];this.$assembleRegExp(d);var r=d.range,u=r?l.getLines(r.start.row,r.end.row):l.doc.getAllLines(),h=[],m=d.re;if(d.$isMultiLine){var x,_=m.length,M=u.length-_;e:for(var w=m.offset||0;w<=M;w++){for(var L=0;L<_;L++)if(-1==u[w+L].search(m[L]))continue e;var A=u[w],T=u[w+_-1],O=A.length-A.match(m[0])[0].length,E=T.match(m[_-1])[0].length;x&&x.end.row===w&&x.end.column>O||(h.push(x=new v(w,O,w+_-1,E)),_>2&&(w=w+_-2))}}else for(var D=0;DS&&h[L].end.row==k;)L--;for(h=h.slice(D,L+1),D=0,L=h.length;D=M;O--)if(A(O,Number.MAX_VALUE,T))return;if(0!=d.wrap)for(O=x,M=_.row;O>=M;O--)if(A(O,Number.MAX_VALUE,T))return}};else w=function(O){var E=_.row;if(!A(E,_.column,O)){for(E+=1;E<=x;E++)if(A(E,0,O))return;if(0!=d.wrap)for(E=M,x=_.row;E<=x;E++)if(A(E,0,O))return}};if(d.$isMultiLine)var L=r.length,A=function(T,O,E){var D=u?T-L+1:T;if(!(D<0||D+L>l.getLength())){var R=l.getLine(D),j=R.search(r[0]);if(!(!u&&jO)&&E(D,j,D+L-1,S))return!0}}};else A=u?function(O,E,D){var N,R=l.getLine(O),j=[],S=0;for(r.lastIndex=0;N=r.exec(R);){if(S=N.index,!(k=N[0].length)){if(S>=R.length)break;r.lastIndex=S+=1}if(N.index+k>E)break;j.push(N.index,k)}for(var F=j.length-1;F>=0;F-=2){var k,Y=j[F-1];if(D(O,Y,O,Y+(k=j[F])))return!0}}:function(O,E,D){var j,N,R=l.getLine(O);for(r.lastIndex=E;N=r.exec(R);){var S=N[0].length;if(D(O,j=N.index,O,j+S))return!0;if(!S&&(r.lastIndex=j+=1,j>=R.length))return!1}};return{forEach:w}},s}();p.Search=a}),ace.define("ace/keyboard/hash_handler",["require","exports","module","ace/lib/keys","ace/lib/useragent"],function(n,p,C){"use strict";var d,b=this&&this.__extends||(d=function(r,u){return(d=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(h,m){h.__proto__=m}||function(h,m){for(var _ in m)Object.prototype.hasOwnProperty.call(m,_)&&(h[_]=m[_])})(r,u)},function(r,u){if("function"!=typeof u&&null!==u)throw new TypeError("Class extends value "+String(u)+" is not a constructor or null");function h(){this.constructor=r}d(r,u),r.prototype=null===u?Object.create(u):(h.prototype=u.prototype,new h)}),o=n("../lib/keys"),v=n("../lib/useragent"),a=o.KEY_MODS,c=function(){function d(r,u){this.$init(r,u,!1)}return d.prototype.$init=function(r,u,h){this.platform=u||(v.isMac?"mac":"win"),this.commands={},this.commandKeyBinding={},this.addCommands(r),this.$singleCommand=h},d.prototype.addCommand=function(r){this.commands[r.name]&&this.removeCommand(r),this.commands[r.name]=r,r.bindKey&&this._buildKeyHash(r)},d.prototype.removeCommand=function(r,u){var h=r&&("string"==typeof r?r:r.name);r=this.commands[h],u||delete this.commands[h];var m=this.commandKeyBinding;for(var _ in m){var M=m[_];if(M==r)delete m[_];else if(Array.isArray(M)){var x=M.indexOf(r);-1!=x&&(M.splice(x,1),1==M.length&&(m[_]=M[0]))}}},d.prototype.bindKey=function(r,u,h){if("object"==typeof r&&r&&(null==h&&(h=r.position),r=r[this.platform]),r){if("function"==typeof u)return this.addCommand({exec:u,bindKey:r,name:u.name||r});r.split("|").forEach(function(m){var _="";if(-1!=m.indexOf(" ")){var M=m.split(/\s+/);m=M.pop(),M.forEach(function(L){var A=this.parseKeys(L);this._addCommandToBinding(_+=(_?" ":"")+(a[A.hashId]+A.key),"chainKeys")},this),_+=" "}var x=this.parseKeys(m);this._addCommandToBinding(_+(a[x.hashId]+x.key),u,h)},this)}},d.prototype._addCommandToBinding=function(r,u,h){var _,m=this.commandKeyBinding;if(u)if(!m[r]||this.$singleCommand)m[r]=u;else{Array.isArray(m[r])?-1!=(_=m[r].indexOf(u))&&m[r].splice(_,1):m[r]=[m[r]],"number"!=typeof h&&(h=s(u));var M=m[r];for(_=0;_h);_++);M.splice(_,0,u)}else delete m[r]},d.prototype.addCommands=function(r){r&&Object.keys(r).forEach(function(u){var h=r[u];if(h){if("string"==typeof h)return this.bindKey(h,u);"function"==typeof h&&(h={exec:h}),"object"==typeof h&&(h.name||(h.name=u),this.addCommand(h))}},this)},d.prototype.removeCommands=function(r){Object.keys(r).forEach(function(u){this.removeCommand(r[u])},this)},d.prototype.bindKeys=function(r){Object.keys(r).forEach(function(u){this.bindKey(u,r[u])},this)},d.prototype._buildKeyHash=function(r){this.bindKey(r.bindKey,r)},d.prototype.parseKeys=function(r){var u=r.toLowerCase().split(/[\-\+]([\-\+])?/).filter(function(w){return w}),h=u.pop(),m=o[h];if(o.FUNCTION_KEYS[m])h=o.FUNCTION_KEYS[m].toLowerCase();else{if(!u.length)return{key:h,hashId:-1};if(1==u.length&&"shift"==u[0])return{key:h.toUpperCase(),hashId:-1}}for(var _=0,M=u.length;M--;){var x=o.KEY_MODS[u[M]];if(null==x)return typeof console<"u"&&console.error("invalid modifier "+u[M]+" in "+r),!1;_|=x}return{key:h,hashId:_}},d.prototype.findKeyCommand=function(r,u){return this.commandKeyBinding[a[r]+u]},d.prototype.handleKeyboard=function(r,u,h,m){if(!(m<0)){var _=a[u]+h,M=this.commandKeyBinding[_];return r.$keyChain&&(r.$keyChain+=" "+_,M=this.commandKeyBinding[r.$keyChain]||M),!M||"chainKeys"!=M&&"chainKeys"!=M[M.length-1]?(r.$keyChain&&(u&&4!=u||1!=h.length?(-1==u||m>0)&&(r.$keyChain=""):r.$keyChain=r.$keyChain.slice(0,-_.length-1)),{command:M}):(r.$keyChain=r.$keyChain||_,{command:"null"})}},d.prototype.getStatusText=function(r,u){return u.$keyChain||""},d}();function s(d){return"object"==typeof d&&d.bindKey&&d.bindKey.position||(d.isDefault?-100:0)}var l=function(d){function r(u,h){var m=d.call(this,u,h)||this;return m.$singleCommand=!0,m}return b(r,d),r}(c);l.call=function(d,r,u){c.prototype.$init.call(d,r,u,!0)},c.call=function(d,r,u){c.prototype.$init.call(d,r,u,!1)},p.HashHandler=l,p.MultiHashHandler=c}),ace.define("ace/commands/command_manager",["require","exports","module","ace/lib/oop","ace/keyboard/hash_handler","ace/lib/event_emitter"],function(n,p,C){"use strict";var s,b=this&&this.__extends||(s=function(l,d){return(s=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,u){r.__proto__=u}||function(r,u){for(var h in u)Object.prototype.hasOwnProperty.call(u,h)&&(r[h]=u[h])})(l,d)},function(l,d){if("function"!=typeof d&&null!==d)throw new TypeError("Class extends value "+String(d)+" is not a constructor or null");function r(){this.constructor=l}s(l,d),l.prototype=null===d?Object.create(d):(r.prototype=d.prototype,new r)}),o=n("../lib/oop"),v=n("../keyboard/hash_handler").MultiHashHandler,a=n("../lib/event_emitter").EventEmitter,c=function(s){function l(d,r){var u=s.call(this,r,d)||this;return u.byName=u.commands,u.setDefaultHandler("exec",function(h){return h.args?h.command.exec(h.editor,h.args,h.event,!1):h.command.exec(h.editor,{},h.event,!0)}),u}return b(l,s),l.prototype.exec=function(d,r,u){if(Array.isArray(d)){for(var h=d.length;h--;)if(this.exec(d[h],r,u))return!0;return!1}if("string"==typeof d&&(d=this.commands[d]),!d||r&&r.$readOnly&&!d.readOnly||0!=this.$checkCommandState&&d.isAvailable&&!d.isAvailable(r))return!1;var m={editor:r,command:d,args:u};return m.returnValue=this._emit("exec",m),this._signal("afterExec",m),!1!==m.returnValue},l.prototype.toggleRecording=function(d){if(!this.$inReplay)return d&&d._emit("changeStatus"),this.recording?(this.macro.pop(),this.off("exec",this.$addCommandToMacro),this.macro.length||(this.macro=this.oldMacro),this.recording=!1):(this.$addCommandToMacro||(this.$addCommandToMacro=function(r){this.macro.push([r.command,r.args])}.bind(this)),this.oldMacro=this.macro,this.macro=[],this.on("exec",this.$addCommandToMacro),this.recording=!0)},l.prototype.replay=function(d){if(!this.$inReplay&&this.macro){if(this.recording)return this.toggleRecording(d);try{this.$inReplay=!0,this.macro.forEach(function(r){"string"==typeof r?this.exec(r,d):this.exec(r[0],d,r[1])},this)}finally{this.$inReplay=!1}}},l.prototype.trimMacro=function(d){return d.map(function(r){return"string"!=typeof r[0]&&(r[0]=r[0].name),r[1]||(r=r[0]),r})},l}(v);o.implement(c.prototype,a),p.CommandManager=c}),ace.define("ace/commands/default_commands",["require","exports","module","ace/lib/lang","ace/config","ace/range"],function(n,p,C){"use strict";var b=n("../lib/lang"),o=n("../config"),v=n("../range").Range;function a(s,l){return{win:s,mac:l}}p.commands=[{name:"showSettingsMenu",description:"Show settings menu",bindKey:a("Ctrl-,","Command-,"),exec:function(s){o.loadModule("ace/ext/settings_menu",function(l){l.init(s),s.showSettingsMenu()})},readOnly:!0},{name:"goToNextError",description:"Go to next error",bindKey:a("Alt-E","F4"),exec:function(s){o.loadModule("ace/ext/error_marker",function(l){l.showErrorMarker(s,1)})},scrollIntoView:"animate",readOnly:!0},{name:"goToPreviousError",description:"Go to previous error",bindKey:a("Alt-Shift-E","Shift-F4"),exec:function(s){o.loadModule("ace/ext/error_marker",function(l){l.showErrorMarker(s,-1)})},scrollIntoView:"animate",readOnly:!0},{name:"selectall",description:"Select all",bindKey:a("Ctrl-A","Command-A"),exec:function(s){s.selectAll()},readOnly:!0},{name:"centerselection",description:"Center selection",bindKey:a(null,"Ctrl-L"),exec:function(s){s.centerSelection()},readOnly:!0},{name:"gotoline",description:"Go to line...",bindKey:a("Ctrl-L","Command-L"),exec:function(s,l){"number"==typeof l&&!isNaN(l)&&s.gotoLine(l),s.prompt({$type:"gotoLine"})},readOnly:!0},{name:"fold",bindKey:a("Alt-L|Ctrl-F1","Command-Alt-L|Command-F1"),exec:function(s){s.session.toggleFold(!1)},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"unfold",bindKey:a("Alt-Shift-L|Ctrl-Shift-F1","Command-Alt-Shift-L|Command-Shift-F1"),exec:function(s){s.session.toggleFold(!0)},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"toggleFoldWidget",description:"Toggle fold widget",bindKey:a("F2","F2"),exec:function(s){s.session.toggleFoldWidget()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"toggleParentFoldWidget",description:"Toggle parent fold widget",bindKey:a("Alt-F2","Alt-F2"),exec:function(s){s.session.toggleFoldWidget(!0)},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"foldall",description:"Fold all",bindKey:a(null,"Ctrl-Command-Option-0"),exec:function(s){s.session.foldAll()},scrollIntoView:"center",readOnly:!0},{name:"foldAllComments",description:"Fold all comments",bindKey:a(null,"Ctrl-Command-Option-0"),exec:function(s){s.session.foldAllComments()},scrollIntoView:"center",readOnly:!0},{name:"foldOther",description:"Fold other",bindKey:a("Alt-0","Command-Option-0"),exec:function(s){s.session.foldAll(),s.session.unfold(s.selection.getAllRanges())},scrollIntoView:"center",readOnly:!0},{name:"unfoldall",description:"Unfold all",bindKey:a("Alt-Shift-0","Command-Option-Shift-0"),exec:function(s){s.session.unfold()},scrollIntoView:"center",readOnly:!0},{name:"findnext",description:"Find next",bindKey:a("Ctrl-K","Command-G"),exec:function(s){s.findNext()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"findprevious",description:"Find previous",bindKey:a("Ctrl-Shift-K","Command-Shift-G"),exec:function(s){s.findPrevious()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"selectOrFindNext",description:"Select or find next",bindKey:a("Alt-K","Ctrl-G"),exec:function(s){s.selection.isEmpty()?s.selection.selectWord():s.findNext()},readOnly:!0},{name:"selectOrFindPrevious",description:"Select or find previous",bindKey:a("Alt-Shift-K","Ctrl-Shift-G"),exec:function(s){s.selection.isEmpty()?s.selection.selectWord():s.findPrevious()},readOnly:!0},{name:"find",description:"Find",bindKey:a("Ctrl-F","Command-F"),exec:function(s){o.loadModule("ace/ext/searchbox",function(l){l.Search(s)})},readOnly:!0},{name:"overwrite",description:"Overwrite",bindKey:"Insert",exec:function(s){s.toggleOverwrite()},readOnly:!0},{name:"selecttostart",description:"Select to start",bindKey:a("Ctrl-Shift-Home","Command-Shift-Home|Command-Shift-Up"),exec:function(s){s.getSelection().selectFileStart()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"gotostart",description:"Go to start",bindKey:a("Ctrl-Home","Command-Home|Command-Up"),exec:function(s){s.navigateFileStart()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"selectup",description:"Select up",bindKey:a("Shift-Up","Shift-Up|Ctrl-Shift-P"),exec:function(s){s.getSelection().selectUp()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"golineup",description:"Go line up",bindKey:a("Up","Up|Ctrl-P"),exec:function(s,l){s.navigateUp(l.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttoend",description:"Select to end",bindKey:a("Ctrl-Shift-End","Command-Shift-End|Command-Shift-Down"),exec:function(s){s.getSelection().selectFileEnd()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"gotoend",description:"Go to end",bindKey:a("Ctrl-End","Command-End|Command-Down"),exec:function(s){s.navigateFileEnd()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"selectdown",description:"Select down",bindKey:a("Shift-Down","Shift-Down|Ctrl-Shift-N"),exec:function(s){s.getSelection().selectDown()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"golinedown",description:"Go line down",bindKey:a("Down","Down|Ctrl-N"),exec:function(s,l){s.navigateDown(l.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectwordleft",description:"Select word left",bindKey:a("Ctrl-Shift-Left","Option-Shift-Left"),exec:function(s){s.getSelection().selectWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotowordleft",description:"Go to word left",bindKey:a("Ctrl-Left","Option-Left"),exec:function(s){s.navigateWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttolinestart",description:"Select to line start",bindKey:a("Alt-Shift-Left","Command-Shift-Left|Ctrl-Shift-A"),exec:function(s){s.getSelection().selectLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotolinestart",description:"Go to line start",bindKey:a("Alt-Left|Home","Command-Left|Home|Ctrl-A"),exec:function(s){s.navigateLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectleft",description:"Select left",bindKey:a("Shift-Left","Shift-Left|Ctrl-Shift-B"),exec:function(s){s.getSelection().selectLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotoleft",description:"Go to left",bindKey:a("Left","Left|Ctrl-B"),exec:function(s,l){s.navigateLeft(l.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectwordright",description:"Select word right",bindKey:a("Ctrl-Shift-Right","Option-Shift-Right"),exec:function(s){s.getSelection().selectWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotowordright",description:"Go to word right",bindKey:a("Ctrl-Right","Option-Right"),exec:function(s){s.navigateWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttolineend",description:"Select to line end",bindKey:a("Alt-Shift-Right","Command-Shift-Right|Shift-End|Ctrl-Shift-E"),exec:function(s){s.getSelection().selectLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotolineend",description:"Go to line end",bindKey:a("Alt-Right|End","Command-Right|End|Ctrl-E"),exec:function(s){s.navigateLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectright",description:"Select right",bindKey:a("Shift-Right","Shift-Right"),exec:function(s){s.getSelection().selectRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotoright",description:"Go to right",bindKey:a("Right","Right|Ctrl-F"),exec:function(s,l){s.navigateRight(l.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectpagedown",description:"Select page down",bindKey:"Shift-PageDown",exec:function(s){s.selectPageDown()},readOnly:!0},{name:"pagedown",description:"Page down",bindKey:a(null,"Option-PageDown"),exec:function(s){s.scrollPageDown()},readOnly:!0},{name:"gotopagedown",description:"Go to page down",bindKey:a("PageDown","PageDown|Ctrl-V"),exec:function(s){s.gotoPageDown()},readOnly:!0},{name:"selectpageup",description:"Select page up",bindKey:"Shift-PageUp",exec:function(s){s.selectPageUp()},readOnly:!0},{name:"pageup",description:"Page up",bindKey:a(null,"Option-PageUp"),exec:function(s){s.scrollPageUp()},readOnly:!0},{name:"gotopageup",description:"Go to page up",bindKey:"PageUp",exec:function(s){s.gotoPageUp()},readOnly:!0},{name:"scrollup",description:"Scroll up",bindKey:a("Ctrl-Up",null),exec:function(s){s.renderer.scrollBy(0,-2*s.renderer.layerConfig.lineHeight)},readOnly:!0},{name:"scrolldown",description:"Scroll down",bindKey:a("Ctrl-Down",null),exec:function(s){s.renderer.scrollBy(0,2*s.renderer.layerConfig.lineHeight)},readOnly:!0},{name:"selectlinestart",description:"Select line start",bindKey:"Shift-Home",exec:function(s){s.getSelection().selectLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectlineend",description:"Select line end",bindKey:"Shift-End",exec:function(s){s.getSelection().selectLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"togglerecording",description:"Toggle recording",bindKey:a("Ctrl-Alt-E","Command-Option-E"),exec:function(s){s.commands.toggleRecording(s)},readOnly:!0},{name:"replaymacro",description:"Replay macro",bindKey:a("Ctrl-Shift-E","Command-Shift-E"),exec:function(s){s.commands.replay(s)},readOnly:!0},{name:"jumptomatching",description:"Jump to matching",bindKey:a("Ctrl-\\|Ctrl-P","Command-\\"),exec:function(s){s.jumpToMatching()},multiSelectAction:"forEach",scrollIntoView:"animate",readOnly:!0},{name:"selecttomatching",description:"Select to matching",bindKey:a("Ctrl-Shift-\\|Ctrl-Shift-P","Command-Shift-\\"),exec:function(s){s.jumpToMatching(!0)},multiSelectAction:"forEach",scrollIntoView:"animate",readOnly:!0},{name:"expandToMatching",description:"Expand to matching",bindKey:a("Ctrl-Shift-M","Ctrl-Shift-M"),exec:function(s){s.jumpToMatching(!0,!0)},multiSelectAction:"forEach",scrollIntoView:"animate",readOnly:!0},{name:"passKeysToBrowser",description:"Pass keys to browser",bindKey:a(null,null),exec:function(){},passEvent:!0,readOnly:!0},{name:"copy",description:"Copy",exec:function(s){},readOnly:!0},{name:"cut",description:"Cut",exec:function(s){var d=s.$copyWithEmptySelection&&s.selection.isEmpty()?s.selection.getLineRange():s.selection.getRange();s._emit("cut",d),d.isEmpty()||s.session.remove(d),s.clearSelection()},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"paste",description:"Paste",exec:function(s,l){s.$handlePaste(l)},scrollIntoView:"cursor"},{name:"removeline",description:"Remove line",bindKey:a("Ctrl-D","Command-D"),exec:function(s){s.removeLines()},scrollIntoView:"cursor",multiSelectAction:"forEachLine"},{name:"duplicateSelection",description:"Duplicate selection",bindKey:a("Ctrl-Shift-D","Command-Shift-D"),exec:function(s){s.duplicateSelection()},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"sortlines",description:"Sort lines",bindKey:a("Ctrl-Alt-S","Command-Alt-S"),exec:function(s){s.sortLines()},scrollIntoView:"selection",multiSelectAction:"forEachLine"},{name:"togglecomment",description:"Toggle comment",bindKey:a("Ctrl-/","Command-/"),exec:function(s){s.toggleCommentLines()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"toggleBlockComment",description:"Toggle block comment",bindKey:a("Ctrl-Shift-/","Command-Shift-/"),exec:function(s){s.toggleBlockComment()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"modifyNumberUp",description:"Modify number up",bindKey:a("Ctrl-Shift-Up","Alt-Shift-Up"),exec:function(s){s.modifyNumber(1)},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"modifyNumberDown",description:"Modify number down",bindKey:a("Ctrl-Shift-Down","Alt-Shift-Down"),exec:function(s){s.modifyNumber(-1)},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"replace",description:"Replace",bindKey:a("Ctrl-H","Command-Option-F"),exec:function(s){o.loadModule("ace/ext/searchbox",function(l){l.Search(s,!0)})}},{name:"undo",description:"Undo",bindKey:a("Ctrl-Z","Command-Z"),exec:function(s){s.undo()}},{name:"redo",description:"Redo",bindKey:a("Ctrl-Shift-Z|Ctrl-Y","Command-Shift-Z|Command-Y"),exec:function(s){s.redo()}},{name:"copylinesup",description:"Copy lines up",bindKey:a("Alt-Shift-Up","Command-Option-Up"),exec:function(s){s.copyLinesUp()},scrollIntoView:"cursor"},{name:"movelinesup",description:"Move lines up",bindKey:a("Alt-Up","Option-Up"),exec:function(s){s.moveLinesUp()},scrollIntoView:"cursor"},{name:"copylinesdown",description:"Copy lines down",bindKey:a("Alt-Shift-Down","Command-Option-Down"),exec:function(s){s.copyLinesDown()},scrollIntoView:"cursor"},{name:"movelinesdown",description:"Move lines down",bindKey:a("Alt-Down","Option-Down"),exec:function(s){s.moveLinesDown()},scrollIntoView:"cursor"},{name:"del",description:"Delete",bindKey:a("Delete","Delete|Ctrl-D|Shift-Delete"),exec:function(s){s.remove("right")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"backspace",description:"Backspace",bindKey:a("Shift-Backspace|Backspace","Ctrl-Backspace|Shift-Backspace|Backspace|Ctrl-H"),exec:function(s){s.remove("left")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"cut_or_delete",description:"Cut or delete",bindKey:a("Shift-Delete",null),exec:function(s){if(!s.selection.isEmpty())return!1;s.remove("left")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolinestart",description:"Remove to line start",bindKey:a("Alt-Backspace","Command-Backspace"),exec:function(s){s.removeToLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolineend",description:"Remove to line end",bindKey:a("Alt-Delete","Ctrl-K|Command-Delete"),exec:function(s){s.removeToLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolinestarthard",description:"Remove to line start hard",bindKey:a("Ctrl-Shift-Backspace",null),exec:function(s){var l=s.selection.getRange();l.start.column=0,s.session.remove(l)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolineendhard",description:"Remove to line end hard",bindKey:a("Ctrl-Shift-Delete",null),exec:function(s){var l=s.selection.getRange();l.end.column=Number.MAX_VALUE,s.session.remove(l)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removewordleft",description:"Remove word left",bindKey:a("Ctrl-Backspace","Alt-Backspace|Ctrl-Alt-Backspace"),exec:function(s){s.removeWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removewordright",description:"Remove word right",bindKey:a("Ctrl-Delete","Alt-Delete"),exec:function(s){s.removeWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"outdent",description:"Outdent",bindKey:a("Shift-Tab","Shift-Tab"),exec:function(s){s.blockOutdent()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"indent",description:"Indent",bindKey:a("Tab","Tab"),exec:function(s){s.indent()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"blockoutdent",description:"Block outdent",bindKey:a("Ctrl-[","Ctrl-["),exec:function(s){s.blockOutdent()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"blockindent",description:"Block indent",bindKey:a("Ctrl-]","Ctrl-]"),exec:function(s){s.blockIndent()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"insertstring",description:"Insert string",exec:function(s,l){s.insert(l)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"inserttext",description:"Insert text",exec:function(s,l){s.insert(b.stringRepeat(l.text||"",l.times||1))},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"splitline",description:"Split line",bindKey:a(null,"Ctrl-O"),exec:function(s){s.splitLine()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"transposeletters",description:"Transpose letters",bindKey:a("Alt-Shift-X","Ctrl-T"),exec:function(s){s.transposeLetters()},multiSelectAction:function(s){s.transposeSelections(1)},scrollIntoView:"cursor"},{name:"touppercase",description:"To uppercase",bindKey:a("Ctrl-U","Ctrl-U"),exec:function(s){s.toUpperCase()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"tolowercase",description:"To lowercase",bindKey:a("Ctrl-Shift-U","Ctrl-Shift-U"),exec:function(s){s.toLowerCase()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"autoindent",description:"Auto Indent",bindKey:a(null,null),exec:function(s){s.autoIndent()},multiSelectAction:"forEachLine",scrollIntoView:"animate"},{name:"expandtoline",description:"Expand to line",bindKey:a("Ctrl-Shift-L","Command-Shift-L"),exec:function(s){var l=s.selection.getRange();l.start.column=l.end.column=0,l.end.row++,s.selection.setRange(l,!1)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"openlink",bindKey:a("Ctrl+F3","F3"),exec:function(s){s.openLink()}},{name:"joinlines",description:"Join lines",bindKey:a(null,null),exec:function(s){for(var l=s.selection.isBackwards(),d=l?s.selection.getSelectionLead():s.selection.getSelectionAnchor(),r=l?s.selection.getSelectionAnchor():s.selection.getSelectionLead(),u=s.session.doc.getLine(d.row).length,m=s.session.doc.getTextRange(s.selection.getRange()).replace(/\n\s*/," ").length,_=s.session.doc.getLine(d.row),M=d.row+1;M<=r.row+1;M++){var x=b.stringTrimLeft(b.stringTrimRight(s.session.doc.getLine(M)));0!==x.length&&(x=" "+x),_+=x}r.row+10?(s.selection.moveCursorTo(d.row,d.column),s.selection.selectTo(d.row,d.column+m)):(u=s.session.doc.getLine(d.row).length>u?u+1:u,s.selection.moveCursorTo(d.row,u))},multiSelectAction:"forEach",readOnly:!0},{name:"invertSelection",description:"Invert selection",bindKey:a(null,null),exec:function(s){var l=s.session.doc.getLength()-1,d=s.session.doc.getLine(l).length,r=s.selection.rangeList.ranges,u=[];r.length<1&&(r=[s.selection.getRange()]);for(var h=0;hc[s].column&&s++,r.unshift(s,0),c.splice.apply(c,r),this.$updateRows()}}},v.prototype.$updateRows=function(){var a=this.session.lineWidgets;if(a){var c=!0;a.forEach(function(s,l){if(s)for(c=!1,s.row=l;s.$oldWidget;)s.$oldWidget.row=l,s=s.$oldWidget}),c&&(this.session.lineWidgets=null)}},v.prototype.$registerLineWidget=function(a){this.session.lineWidgets||(this.session.lineWidgets=new Array(this.session.getLength()));var c=this.session.lineWidgets[a.row];return c&&(a.$oldWidget=c,c.el&&c.el.parentNode&&(c.el.parentNode.removeChild(c.el),c._inDocument=!1)),this.session.lineWidgets[a.row]=a,a},v.prototype.addLineWidget=function(a){if(this.$registerLineWidget(a),a.session=this.session,!this.editor)return a;var c=this.editor.renderer;a.html&&!a.el&&(a.el=b.createElement("div"),a.el.innerHTML=a.html),a.text&&!a.el&&(a.el=b.createElement("div"),a.el.textContent=a.text),a.el&&(b.addCssClass(a.el,"ace_lineWidgetContainer"),a.className&&b.addCssClass(a.el,a.className),a.el.style.position="absolute",a.el.style.zIndex=5,c.container.appendChild(a.el),a._inDocument=!0,a.coverGutter||(a.el.style.zIndex=3),null==a.pixelHeight&&(a.pixelHeight=a.el.offsetHeight)),null==a.rowCount&&(a.rowCount=a.pixelHeight/c.layerConfig.lineHeight);var s=this.session.getFoldAt(a.row,0);if(a.$fold=s,s){var l=this.session.lineWidgets;a.row!=s.end.row||l[s.start.row]?a.hidden=!0:l[s.start.row]=a}return this.session._emit("changeFold",{data:{start:{row:a.row}}}),this.$updateRows(),this.renderWidgets(null,c),this.onWidgetChanged(a),a},v.prototype.removeLineWidget=function(a){if(a._inDocument=!1,a.session=null,a.el&&a.el.parentNode&&a.el.parentNode.removeChild(a.el),a.editor&&a.editor.destroy)try{a.editor.destroy()}catch{}if(this.session.lineWidgets){var c=this.session.lineWidgets[a.row];if(c==a)this.session.lineWidgets[a.row]=a.$oldWidget,a.$oldWidget&&this.onWidgetChanged(a.$oldWidget);else for(;c;){if(c.$oldWidget==a){c.$oldWidget=a.$oldWidget;break}c=c.$oldWidget}}this.session._emit("changeFold",{data:{start:{row:a.row}}}),this.$updateRows()},v.prototype.getWidgetsAtRow=function(a){for(var c=this.session.lineWidgets,s=c&&c[a],l=[];s;)l.push(s),s=s.$oldWidget;return l},v.prototype.onWidgetChanged=function(a){this.session._changedWidgets.push(a),this.editor&&this.editor.renderer.updateFull()},v.prototype.measureWidgets=function(a,c){var s=this.session._changedWidgets,l=c.layerConfig;if(s&&s.length){for(var d=1/0,r=0;r0&&!l[d];)d--;this.firstRow=s.firstRow,this.lastRow=s.lastRow,c.$cursorLayer.config=s;for(var u=d;u<=r;u++){var h=l[u];if(h&&h.el){if(h.hidden){h.el.style.top=-100-(h.pixelHeight||0)+"px";continue}h._inDocument||(h._inDocument=!0,c.container.appendChild(h.el));var m=c.$cursorLayer.getPixelPosition({row:u,column:0},!0).top;h.coverLine||(m+=s.lineHeight*this.session.getRowLineCount(h.row)),h.el.style.top=m-s.offset+"px";var _=h.coverGutter?0:c.gutterWidth;h.fixedWidth||(_-=c.scrollLeft),h.el.style.left=_+"px",h.fullWidth&&h.screenWidth&&(h.el.style.minWidth=s.width+2*s.padding+"px"),h.el.style.right=h.fixedWidth?c.scrollBar.getWidth()+"px":""}}}},v}();p.LineWidgets=o}),ace.define("ace/keyboard/gutter_handler",["require","exports","module","ace/lib/keys","ace/mouse/default_gutter_handler"],function(n,p,C){"use strict";var b=n("../lib/keys"),o=n("../mouse/default_gutter_handler").GutterTooltip,v=function(){function c(s){this.editor=s,this.gutterLayer=s.renderer.$gutterLayer,this.element=s.renderer.$gutter,this.lines=s.renderer.$gutterLayer.$lines,this.activeRowIndex=null,this.activeLane=null,this.annotationTooltip=new o(this.editor)}return c.prototype.addListener=function(){this.element.addEventListener("keydown",this.$onGutterKeyDown.bind(this)),this.element.addEventListener("focusout",this.$blurGutter.bind(this)),this.editor.on("mousewheel",this.$blurGutter.bind(this))},c.prototype.removeListener=function(){this.element.removeEventListener("keydown",this.$onGutterKeyDown.bind(this)),this.element.removeEventListener("focusout",this.$blurGutter.bind(this)),this.editor.off("mousewheel",this.$blurGutter.bind(this))},c.prototype.$onGutterKeyDown=function(s){if(this.annotationTooltip.isOpen)return s.preventDefault(),void(s.keyCode===b.escape&&this.annotationTooltip.hideTooltip());if(s.target===this.element){if(s.keyCode!=b.enter)return;s.preventDefault();var l=this.editor.getCursorPosition().row;return this.editor.isRowVisible(l)||this.editor.scrollToLine(l,!0,!0),void setTimeout(function(){var d=this.$rowToRowIndex(this.gutterLayer.$cursorCell.row),r=this.$findNearestFoldWidget(d),u=this.$findNearestAnnotation(d);if(null!==r||null!==u)return null===r&&null!==u?(this.activeRowIndex=u,this.activeLane="annotation",void this.$focusAnnotation(this.activeRowIndex)):null!==r&&null===u?(this.activeRowIndex=r,this.activeLane="fold",void this.$focusFoldWidget(this.activeRowIndex)):Math.abs(u-d)0||s+l=0&&this.$isFoldWidgetVisible(s-l))return s-l;if(s+l<=this.lines.getLength()-1&&this.$isFoldWidgetVisible(s+l))return s+l}return null},c.prototype.$findNearestAnnotation=function(s){if(this.$isAnnotationVisible(s))return s;for(var l=0;s-l>0||s+l=0&&this.$isAnnotationVisible(s-l))return s-l;if(s+l<=this.lines.getLength()-1&&this.$isAnnotationVisible(s+l))return s+l}return null},c.prototype.$focusFoldWidget=function(s){if(null!=s){var l=this.$getFoldWidget(s);l.classList.add(this.editor.renderer.keyboardFocusClassName),l.focus()}},c.prototype.$focusAnnotation=function(s){if(null!=s){var l=this.$getAnnotation(s);l.classList.add(this.editor.renderer.keyboardFocusClassName),l.focus()}},c.prototype.$blurFoldWidget=function(s){var l=this.$getFoldWidget(s);l.classList.remove(this.editor.renderer.keyboardFocusClassName),l.blur()},c.prototype.$blurAnnotation=function(s){var l=this.$getAnnotation(s);l.classList.remove(this.editor.renderer.keyboardFocusClassName),l.blur()},c.prototype.$moveFoldWidgetUp=function(){for(var s=this.activeRowIndex;s>0;)if(s--,this.$isFoldWidgetVisible(s))return this.$blurFoldWidget(this.activeRowIndex),this.activeRowIndex=s,void this.$focusFoldWidget(this.activeRowIndex)},c.prototype.$moveFoldWidgetDown=function(){for(var s=this.activeRowIndex;s0;)if(s--,this.$isAnnotationVisible(s))return this.$blurAnnotation(this.activeRowIndex),this.activeRowIndex=s,void this.$focusAnnotation(this.activeRowIndex)},c.prototype.$moveAnnotationDown=function(){for(var s=this.activeRowIndex;s=N.length&&(N=void 0),{value:N&&N[F++],done:!N}}};throw new TypeError(S?"Object is not iterable.":"Symbol.iterator is not defined.")},o=n("./lib/oop"),v=n("./lib/dom"),a=n("./lib/lang"),c=n("./lib/useragent"),s=n("./keyboard/textinput").TextInput,l=n("./mouse/mouse_handler").MouseHandler,d=n("./mouse/fold_handler").FoldHandler,r=n("./keyboard/keybinding").KeyBinding,u=n("./edit_session").EditSession,h=n("./search").Search,m=n("./range").Range,_=n("./lib/event_emitter").EventEmitter,M=n("./commands/command_manager").CommandManager,x=n("./commands/default_commands").commands,w=n("./config"),L=n("./token_iterator").TokenIterator,A=n("./line_widgets").LineWidgets,T=n("./keyboard/gutter_handler").GutterKeyboardHandler,O=n("./config").nls,E=n("./clipboard"),D=n("./lib/keys"),R=function(){function N(S,k,F){this.$toDestroy=[];var Y=S.getContainerElement();this.container=Y,this.renderer=S,this.id="editor"+ ++N.$uid,this.commands=new M(c.isMac?"mac":"win",x),"object"==typeof document&&(this.textInput=new s(S.getTextAreaContainer(),this),this.renderer.textarea=this.textInput.getElement(),this.$mouseHandler=new l(this),new d(this)),this.keyBinding=new r(this),this.$search=(new h).set({wrap:!0}),this.$historyTracker=this.$historyTracker.bind(this),this.commands.on("exec",this.$historyTracker),this.$initOperationListeners(),this._$emitInputEvent=a.delayedCall(function(){this._signal("input",{}),this.session&&!this.session.destroyed&&this.session.bgTokenizer.scheduleStart()}.bind(this)),this.on("change",function(se,ne){ne._$emitInputEvent.schedule(31)}),this.setSession(k||F&&F.session||new u("")),w.resetOptions(this),F&&this.setOptions(F),w._signal("editor",this)}return N.prototype.$initOperationListeners=function(){this.commands.on("exec",this.startOperation.bind(this),!0),this.commands.on("afterExec",this.endOperation.bind(this),!0),this.$opResetTimer=a.delayedCall(this.endOperation.bind(this,!0)),this.on("change",function(){this.curOp||(this.startOperation(),this.curOp.selectionBefore=this.$lastSel),this.curOp.docChanged=!0}.bind(this),!0),this.on("changeSelection",function(){this.curOp||(this.startOperation(),this.curOp.selectionBefore=this.$lastSel),this.curOp.selectionChanged=!0}.bind(this),!0)},N.prototype.startOperation=function(S){if(this.curOp){if(!S||this.curOp.command)return;this.prevOp=this.curOp}S||(this.previousCommand=null,S={}),this.$opResetTimer.schedule(),this.curOp=this.session.curOp={command:S.command||{},args:S.args,scrollTop:this.renderer.scrollTop},this.curOp.selectionBefore=this.selection.toJSON()},N.prototype.endOperation=function(S){if(this.curOp&&this.session){if(S&&!1===S.returnValue||!this.session)return this.curOp=null;if(1==S&&this.curOp.command&&"mouse"==this.curOp.command.name||(this._signal("beforeEndOperation"),!this.curOp))return;var k=this.curOp.command,F=k&&k.scrollIntoView;if(F){switch(F){case"center-animate":F="animate";case"center":this.renderer.scrollCursorIntoView(null,.5);break;case"animate":case"cursor":this.renderer.scrollCursorIntoView();break;case"selectionPart":var Y=this.selection.getRange(),se=this.renderer.layerConfig;(Y.start.row>=se.lastRow||Y.end.row<=se.firstRow)&&this.renderer.scrollSelectionIntoView(this.selection.anchor,this.selection.lead)}"animate"==F&&this.renderer.animateScrolling(this.curOp.scrollTop)}var ne=this.selection.toJSON();this.curOp.selectionAfter=ne,this.$lastSel=this.selection.toJSON(),this.session.getUndoManager().addSelection(ne),this.prevOp=this.curOp,this.curOp=null}},N.prototype.$historyTracker=function(S){if(this.$mergeUndoDeltas){var k=this.prevOp,F=this.$mergeableCommands,Y=k.command&&S.command.name==k.command.name;if("insertstring"==S.command.name){var se=S.args;void 0===this.mergeNextCommand&&(this.mergeNextCommand=!0),Y=Y&&this.mergeNextCommand&&(!/\s/.test(se)||/\s/.test(k.args)),this.mergeNextCommand=!0}else Y=Y&&-1!==F.indexOf(S.command.name);"always"!=this.$mergeUndoDeltas&&Date.now()-this.sequenceStartTime>2e3&&(Y=!1),Y?this.session.mergeUndoDeltas=!0:-1!==F.indexOf(S.command.name)&&(this.sequenceStartTime=Date.now())}},N.prototype.setKeyboardHandler=function(S,k){if(S&&"string"==typeof S&&"ace"!=S){this.$keybindingId=S;var F=this;w.loadModule(["keybinding",S],function(Y){F.$keybindingId==S&&F.keyBinding.setKeyboardHandler(Y&&Y.handler),k&&k()})}else this.$keybindingId=null,this.keyBinding.setKeyboardHandler(S),k&&k()},N.prototype.getKeyboardHandler=function(){return this.keyBinding.getKeyboardHandler()},N.prototype.setSession=function(S){if(this.session!=S){this.curOp&&this.endOperation(),this.curOp={};var k=this.session;if(k){this.session.off("change",this.$onDocumentChange),this.session.off("changeMode",this.$onChangeMode),this.session.off("tokenizerUpdate",this.$onTokenizerUpdate),this.session.off("changeTabSize",this.$onChangeTabSize),this.session.off("changeWrapLimit",this.$onChangeWrapLimit),this.session.off("changeWrapMode",this.$onChangeWrapMode),this.session.off("changeFold",this.$onChangeFold),this.session.off("changeFrontMarker",this.$onChangeFrontMarker),this.session.off("changeBackMarker",this.$onChangeBackMarker),this.session.off("changeBreakpoint",this.$onChangeBreakpoint),this.session.off("changeAnnotation",this.$onChangeAnnotation),this.session.off("changeOverwrite",this.$onCursorChange),this.session.off("changeScrollTop",this.$onScrollTopChange),this.session.off("changeScrollLeft",this.$onScrollLeftChange);var F=this.session.getSelection();F.off("changeCursor",this.$onCursorChange),F.off("changeSelection",this.$onSelectionChange)}this.session=S,S?(this.$onDocumentChange=this.onDocumentChange.bind(this),S.on("change",this.$onDocumentChange),this.renderer.setSession(S),this.$onChangeMode=this.onChangeMode.bind(this),S.on("changeMode",this.$onChangeMode),this.$onTokenizerUpdate=this.onTokenizerUpdate.bind(this),S.on("tokenizerUpdate",this.$onTokenizerUpdate),this.$onChangeTabSize=this.renderer.onChangeTabSize.bind(this.renderer),S.on("changeTabSize",this.$onChangeTabSize),this.$onChangeWrapLimit=this.onChangeWrapLimit.bind(this),S.on("changeWrapLimit",this.$onChangeWrapLimit),this.$onChangeWrapMode=this.onChangeWrapMode.bind(this),S.on("changeWrapMode",this.$onChangeWrapMode),this.$onChangeFold=this.onChangeFold.bind(this),S.on("changeFold",this.$onChangeFold),this.$onChangeFrontMarker=this.onChangeFrontMarker.bind(this),this.session.on("changeFrontMarker",this.$onChangeFrontMarker),this.$onChangeBackMarker=this.onChangeBackMarker.bind(this),this.session.on("changeBackMarker",this.$onChangeBackMarker),this.$onChangeBreakpoint=this.onChangeBreakpoint.bind(this),this.session.on("changeBreakpoint",this.$onChangeBreakpoint),this.$onChangeAnnotation=this.onChangeAnnotation.bind(this),this.session.on("changeAnnotation",this.$onChangeAnnotation),this.$onCursorChange=this.onCursorChange.bind(this),this.session.on("changeOverwrite",this.$onCursorChange),this.$onScrollTopChange=this.onScrollTopChange.bind(this),this.session.on("changeScrollTop",this.$onScrollTopChange),this.$onScrollLeftChange=this.onScrollLeftChange.bind(this),this.session.on("changeScrollLeft",this.$onScrollLeftChange),this.selection=S.getSelection(),this.selection.on("changeCursor",this.$onCursorChange),this.$onSelectionChange=this.onSelectionChange.bind(this),this.selection.on("changeSelection",this.$onSelectionChange),this.onChangeMode(),this.onCursorChange(),this.onScrollTopChange(),this.onScrollLeftChange(),this.onSelectionChange(),this.onChangeFrontMarker(),this.onChangeBackMarker(),this.onChangeBreakpoint(),this.onChangeAnnotation(),this.session.getUseWrapMode()&&this.renderer.adjustWrapLimit(),this.renderer.updateFull()):(this.selection=null,this.renderer.setSession(S)),this._signal("changeSession",{session:S,oldSession:k}),this.curOp=null,k&&k._signal("changeEditor",{oldEditor:this}),S&&S._signal("changeEditor",{editor:this}),S&&!S.destroyed&&S.bgTokenizer.scheduleStart()}},N.prototype.getSession=function(){return this.session},N.prototype.setValue=function(S,k){return this.session.doc.setValue(S),k?1==k?this.navigateFileEnd():-1==k&&this.navigateFileStart():this.selectAll(),S},N.prototype.getValue=function(){return this.session.getValue()},N.prototype.getSelection=function(){return this.selection},N.prototype.resize=function(S){this.renderer.onResize(S)},N.prototype.setTheme=function(S,k){this.renderer.setTheme(S,k)},N.prototype.getTheme=function(){return this.renderer.getTheme()},N.prototype.setStyle=function(S){this.renderer.setStyle(S)},N.prototype.unsetStyle=function(S){this.renderer.unsetStyle(S)},N.prototype.getFontSize=function(){return this.getOption("fontSize")||v.computedStyle(this.container).fontSize},N.prototype.setFontSize=function(S){this.setOption("fontSize",S)},N.prototype.$highlightBrackets=function(){if(!this.$highlightPending){var S=this;this.$highlightPending=!0,setTimeout(function(){S.$highlightPending=!1;var k=S.session;if(k&&!k.destroyed){k.$bracketHighlight&&(k.$bracketHighlight.markerIds.forEach(function(ue){k.removeMarker(ue)}),k.$bracketHighlight=null);var F=S.getCursorPosition(),Y=S.getKeyboardHandler(),se=Y&&Y.$getDirectionForHighlight&&Y.$getDirectionForHighlight(S),ne=k.getMatchingBracketRanges(F,se);if(!ne){var $=new L(k,F.row,F.column).getCurrentToken();if($&&/\b(?:tag-open|tag-name)/.test($.type)){var q=k.getMatchingTags(F);q&&(ne=[q.openTagName,q.closeTagName])}}if(!ne&&k.$mode.getMatching&&(ne=k.$mode.getMatching(S.session)),!ne)return void(S.getHighlightIndentGuides()&&S.renderer.$textLayer.$highlightIndentGuide());var Q="ace_bracket";Array.isArray(ne)?1==ne.length&&(Q="ace_error_bracket"):ne=[ne],2==ne.length&&(0==m.comparePoints(ne[0].end,ne[1].start)?ne=[m.fromPoints(ne[0].start,ne[1].end)]:0==m.comparePoints(ne[0].start,ne[1].end)&&(ne=[m.fromPoints(ne[1].start,ne[0].end)])),k.$bracketHighlight={ranges:ne,markerIds:ne.map(function(ue){return k.addMarker(ue,Q,"text")})},S.getHighlightIndentGuides()&&S.renderer.$textLayer.$highlightIndentGuide()}},50)}},N.prototype.focus=function(){this.textInput.focus()},N.prototype.isFocused=function(){return this.textInput.isFocused()},N.prototype.blur=function(){this.textInput.blur()},N.prototype.onFocus=function(S){this.$isFocused||(this.$isFocused=!0,this.renderer.showCursor(),this.renderer.visualizeFocus(),this._emit("focus",S))},N.prototype.onBlur=function(S){this.$isFocused&&(this.$isFocused=!1,this.renderer.hideCursor(),this.renderer.visualizeBlur(),this._emit("blur",S))},N.prototype.$cursorChange=function(){this.renderer.updateCursor(),this.$highlightBrackets(),this.$updateHighlightActiveLine()},N.prototype.onDocumentChange=function(S){this.renderer.updateLines(S.start.row,S.start.row==S.end.row?S.end.row:1/0,this.session.$useWrapMode),this._signal("change",S),this.$cursorChange()},N.prototype.onTokenizerUpdate=function(S){var k=S.data;this.renderer.updateLines(k.first,k.last)},N.prototype.onScrollTopChange=function(){this.renderer.scrollToY(this.session.getScrollTop())},N.prototype.onScrollLeftChange=function(){this.renderer.scrollToX(this.session.getScrollLeft())},N.prototype.onCursorChange=function(){this.$cursorChange(),this._signal("changeSelection")},N.prototype.$updateHighlightActiveLine=function(){var k,S=this.getSession();if(this.$highlightActiveLine&&(("line"!=this.$selectionStyle||!this.selection.isMultiLine())&&(k=this.getCursorPosition()),this.renderer.theme&&this.renderer.theme.$selectionColorConflict&&!this.selection.isEmpty()&&(k=!1),this.renderer.$maxLines&&1===this.session.getLength()&&!(this.renderer.$minLines>1)&&(k=!1)),S.$highlightLineMarker&&!k)S.removeMarker(S.$highlightLineMarker.id),S.$highlightLineMarker=null;else if(!S.$highlightLineMarker&&k){var F=new m(k.row,k.column,k.row,1/0);F.id=S.addMarker(F,"ace_active-line","screenLine"),S.$highlightLineMarker=F}else k&&(S.$highlightLineMarker.start.row=k.row,S.$highlightLineMarker.end.row=k.row,S.$highlightLineMarker.start.column=k.column,S._signal("changeBackMarker"))},N.prototype.onSelectionChange=function(S){var k=this.session;if(k.$selectionMarker&&k.removeMarker(k.$selectionMarker),k.$selectionMarker=null,this.selection.isEmpty())this.$updateHighlightActiveLine();else{var F=this.selection.getRange(),Y=this.getSelectionStyle();k.$selectionMarker=k.addMarker(F,"ace_selection",Y)}var se=this.$highlightSelectedWord&&this.$getSelectionHighLightRegexp();this.session.highlight(se),this._signal("changeSelection")},N.prototype.$getSelectionHighLightRegexp=function(){var S=this.session,k=this.getSelectionRange();if(!k.isEmpty()&&!k.isMultiLine()){var F=k.start.column,Y=k.end.column,se=S.getLine(k.start.row),ne=se.substring(F,Y);if(!(ne.length>5e3)&&/[\w\d]/.test(ne)){var me=this.$search.$assembleRegExp({wholeWord:!0,caseSensitive:!0,needle:ne}),$=se.substring(F-1,Y+1);if(me.test($))return me}}},N.prototype.onChangeFrontMarker=function(){this.renderer.updateFrontMarkers()},N.prototype.onChangeBackMarker=function(){this.renderer.updateBackMarkers()},N.prototype.onChangeBreakpoint=function(){this.renderer.updateBreakpoints()},N.prototype.onChangeAnnotation=function(){this.renderer.setAnnotations(this.session.getAnnotations())},N.prototype.onChangeMode=function(S){this.renderer.updateText(),this._emit("changeMode",S)},N.prototype.onChangeWrapLimit=function(){this.renderer.updateFull()},N.prototype.onChangeWrapMode=function(){this.renderer.onResize(!0)},N.prototype.onChangeFold=function(){this.$updateHighlightActiveLine(),this.renderer.updateFull()},N.prototype.getSelectedText=function(){return this.session.getTextRange(this.getSelectionRange())},N.prototype.getCopyText=function(){var S=this.getSelectedText(),k=this.session.doc.getNewLineCharacter(),F=!1;if(!S&&this.$copyWithEmptySelection){F=!0;for(var Y=this.selection.getAllRanges(),se=0;seue.search(/\S|$/)){var $=ue.substr(se.column).search(/\S|$/);F.doc.removeInLine(se.row,se.column,se.column+$)}}this.clearSelection();var q=se.column,Q=F.getState(se.row),Me=(ue=F.getLine(se.row),Y.checkOutdent(Q,ue,S));if(F.insert(se,S),ne&&ne.selection&&this.selection.setSelectionRange(2==ne.selection.length?new m(se.row,q+ne.selection[0],se.row,q+ne.selection[1]):new m(se.row+ne.selection[0],ne.selection[1],se.row+ne.selection[2],ne.selection[3])),this.$enableAutoIndent){if(F.getDocument().isNewLine(S)){var Oe=Y.getNextLineIndent(Q,ue.slice(0,se.column),F.getTabString());F.insert({row:se.row+1,column:0},Oe)}Me&&Y.autoOutdent(Q,F,se.row)}},N.prototype.autoIndent=function(){var F,Y,S=this.session,k=S.getMode();if(this.selection.isEmpty())F=0,Y=S.doc.getLength()-1;else{var se=this.getSelectionRange();F=se.start.row,Y=se.end.row}for(var q,Q,ue,ne="",me="",$="",Me=S.getTabString(),Oe=F;Oe<=Y;Oe++)Oe>0&&(ne=S.getState(Oe-1),me=S.getLine(Oe-1),$=k.getNextLineIndent(ne,me,Me)),q=S.getLine(Oe),$!==(Q=k.$getIndent(q))&&(Q.length>0&&(ue=new m(Oe,0,Oe,Q.length),S.remove(ue)),$.length>0&&S.insert({row:Oe,column:0},$)),k.autoOutdent(ne,S,Oe)},N.prototype.onTextInput=function(S,k){if(!k)return this.keyBinding.onTextInput(S);this.startOperation({command:{name:"insertstring"}});var F=this.applyComposition.bind(this,S,k);this.selection.rangeCount?this.forEachSelection(F):F(),this.endOperation()},N.prototype.applyComposition=function(S,k){var F;(k.extendLeft||k.extendRight)&&((F=this.selection.getRange()).start.column-=k.extendLeft,F.end.column+=k.extendRight,F.start.column<0&&(F.start.row--,F.start.column+=this.session.getLine(F.start.row).length+1),this.selection.setRange(F),!S&&!F.isEmpty()&&this.remove()),(S||!this.selection.isEmpty())&&this.insert(S,!0),(k.restoreStart||k.restoreEnd)&&((F=this.selection.getRange()).start.column-=k.restoreStart,F.end.column-=k.restoreEnd,this.selection.setRange(F))},N.prototype.onCommandKey=function(S,k,F){return this.keyBinding.onCommandKey(S,k,F)},N.prototype.setOverwrite=function(S){this.session.setOverwrite(S)},N.prototype.getOverwrite=function(){return this.session.getOverwrite()},N.prototype.toggleOverwrite=function(){this.session.toggleOverwrite()},N.prototype.setScrollSpeed=function(S){this.setOption("scrollSpeed",S)},N.prototype.getScrollSpeed=function(){return this.getOption("scrollSpeed")},N.prototype.setDragDelay=function(S){this.setOption("dragDelay",S)},N.prototype.getDragDelay=function(){return this.getOption("dragDelay")},N.prototype.setSelectionStyle=function(S){this.setOption("selectionStyle",S)},N.prototype.getSelectionStyle=function(){return this.getOption("selectionStyle")},N.prototype.setHighlightActiveLine=function(S){this.setOption("highlightActiveLine",S)},N.prototype.getHighlightActiveLine=function(){return this.getOption("highlightActiveLine")},N.prototype.setHighlightGutterLine=function(S){this.setOption("highlightGutterLine",S)},N.prototype.getHighlightGutterLine=function(){return this.getOption("highlightGutterLine")},N.prototype.setHighlightSelectedWord=function(S){this.setOption("highlightSelectedWord",S)},N.prototype.getHighlightSelectedWord=function(){return this.$highlightSelectedWord},N.prototype.setAnimatedScroll=function(S){this.renderer.setAnimatedScroll(S)},N.prototype.getAnimatedScroll=function(){return this.renderer.getAnimatedScroll()},N.prototype.setShowInvisibles=function(S){this.renderer.setShowInvisibles(S)},N.prototype.getShowInvisibles=function(){return this.renderer.getShowInvisibles()},N.prototype.setDisplayIndentGuides=function(S){this.renderer.setDisplayIndentGuides(S)},N.prototype.getDisplayIndentGuides=function(){return this.renderer.getDisplayIndentGuides()},N.prototype.setHighlightIndentGuides=function(S){this.renderer.setHighlightIndentGuides(S)},N.prototype.getHighlightIndentGuides=function(){return this.renderer.getHighlightIndentGuides()},N.prototype.setShowPrintMargin=function(S){this.renderer.setShowPrintMargin(S)},N.prototype.getShowPrintMargin=function(){return this.renderer.getShowPrintMargin()},N.prototype.setPrintMarginColumn=function(S){this.renderer.setPrintMarginColumn(S)},N.prototype.getPrintMarginColumn=function(){return this.renderer.getPrintMarginColumn()},N.prototype.setReadOnly=function(S){this.setOption("readOnly",S)},N.prototype.getReadOnly=function(){return this.getOption("readOnly")},N.prototype.setBehavioursEnabled=function(S){this.setOption("behavioursEnabled",S)},N.prototype.getBehavioursEnabled=function(){return this.getOption("behavioursEnabled")},N.prototype.setWrapBehavioursEnabled=function(S){this.setOption("wrapBehavioursEnabled",S)},N.prototype.getWrapBehavioursEnabled=function(){return this.getOption("wrapBehavioursEnabled")},N.prototype.setShowFoldWidgets=function(S){this.setOption("showFoldWidgets",S)},N.prototype.getShowFoldWidgets=function(){return this.getOption("showFoldWidgets")},N.prototype.setFadeFoldWidgets=function(S){this.setOption("fadeFoldWidgets",S)},N.prototype.getFadeFoldWidgets=function(){return this.getOption("fadeFoldWidgets")},N.prototype.remove=function(S){this.selection.isEmpty()&&("left"==S?this.selection.selectLeft():this.selection.selectRight());var k=this.getSelectionRange();if(this.getBehavioursEnabled()){var F=this.session,Y=F.getState(k.start.row),se=F.getMode().transformAction(Y,"deletion",this,F,k);if(0===k.end.column){var ne=F.getTextRange(k);if("\n"==ne[ne.length-1]){var me=F.getLine(k.end.row);/^\s+$/.test(me)&&(k.end.column=me.length)}}se&&(k=se)}this.session.remove(k),this.clearSelection()},N.prototype.removeWordRight=function(){this.selection.isEmpty()&&this.selection.selectWordRight(),this.session.remove(this.getSelectionRange()),this.clearSelection()},N.prototype.removeWordLeft=function(){this.selection.isEmpty()&&this.selection.selectWordLeft(),this.session.remove(this.getSelectionRange()),this.clearSelection()},N.prototype.removeToLineStart=function(){this.selection.isEmpty()&&this.selection.selectLineStart(),this.selection.isEmpty()&&this.selection.selectLeft(),this.session.remove(this.getSelectionRange()),this.clearSelection()},N.prototype.removeToLineEnd=function(){this.selection.isEmpty()&&this.selection.selectLineEnd();var S=this.getSelectionRange();S.start.column==S.end.column&&S.start.row==S.end.row&&(S.end.column=0,S.end.row++),this.session.remove(S),this.clearSelection()},N.prototype.splitLine=function(){this.selection.isEmpty()||(this.session.remove(this.getSelectionRange()),this.clearSelection());var S=this.getCursorPosition();this.insert("\n"),this.moveCursorToPosition(S)},N.prototype.setGhostText=function(S,k){this.session.widgetManager||(this.session.widgetManager=new A(this.session),this.session.widgetManager.attach(this)),this.renderer.setGhostText(S,k)},N.prototype.removeGhostText=function(){this.session.widgetManager&&this.renderer.removeGhostText()},N.prototype.transposeLetters=function(){if(this.selection.isEmpty()){var S=this.getCursorPosition(),k=S.column;if(0!==k){var Y,se,F=this.session.getLine(S.row);k$.toLowerCase()?1:0});var se=new m(0,0,0,0);for(Y=S.first;Y<=S.last;Y++){var ne=k.getLine(Y);se.start.row=Y,se.end.row=Y,se.end.column=ne.length,k.replace(se,F[Y-S.first])}},N.prototype.toggleCommentLines=function(){var S=this.session.getState(this.getCursorPosition().row),k=this.$getSelectedRows();this.session.getMode().toggleCommentLines(S,this.session,k.first,k.last)},N.prototype.toggleBlockComment=function(){var S=this.getCursorPosition(),k=this.session.getState(S.row),F=this.getSelectionRange();this.session.getMode().toggleBlockComment(k,this.session,F,S)},N.prototype.getNumberAt=function(S,k){var F=/[\-]?[0-9]+(?:\.[0-9]+)?/g;F.lastIndex=0;for(var Y=this.session.getLine(S);F.lastIndex=k)return{value:se[0],start:se.index,end:se.index+se[0].length}}return null},N.prototype.modifyNumber=function(S){var k=this.selection.getCursor().row,F=this.selection.getCursor().column,Y=new m(k,F-1,k,F),se=this.session.getTextRange(Y);if(!isNaN(parseFloat(se))&&isFinite(se)){var ne=this.getNumberAt(k,F);if(ne){var me=ne.value.indexOf(".")>=0?ne.start+ne.value.indexOf(".")+1:ne.end,$=ne.start+ne.value.length-me,q=parseFloat(ne.value);q*=Math.pow(10,$),q+=S*=me!==ne.end&&F=me&&ne<=$&&(F=Mt,q.selection.clearSelection(),q.moveCursorTo(S,me+Y),q.selection.selectTo(S,$+Y)),me=$});for(var ue,Q=this.$toggleWordPairs,Me=0;Me=$&&me<=q&&Oe.match(/((?:https?|ftp):\/\/[\S]+)/)){Q=Oe.replace(/[\s:.,'";}\]]+$/,"");break}$=q}}catch(Xe){F={error:Xe}}finally{try{Me&&!Me.done&&(Y=ue.return)&&Y.call(ue)}finally{if(F)throw F.error}}return Q},N.prototype.openLink=function(){var S=this.selection.getCursor(),k=this.findLinkAt(S.row,S.column);return k&&window.open(k,"_blank"),null!=k},N.prototype.removeLines=function(){var S=this.$getSelectedRows();this.session.removeFullLines(S.first,S.last),this.clearSelection()},N.prototype.duplicateSelection=function(){var S=this.selection,k=this.session,F=S.getRange(),Y=S.isBackwards();if(F.isEmpty()){var se=F.start.row;k.duplicateLines(se,se)}else{var ne=Y?F.start:F.end,me=k.insert(ne,k.getTextRange(F),!1);F.start=ne,F.end=me,S.setSelectionRange(F,Y)}},N.prototype.moveLinesDown=function(){this.$moveLines(1,!1)},N.prototype.moveLinesUp=function(){this.$moveLines(-1,!1)},N.prototype.moveText=function(S,k,F){return this.session.moveText(S,k,F)},N.prototype.copyLinesUp=function(){this.$moveLines(-1,!0)},N.prototype.copyLinesDown=function(){this.$moveLines(1,!0)},N.prototype.$moveLines=function(S,k){var F,Y,se=this.selection;if(!se.inMultiSelectMode||this.inVirtualSelectionMode){var ne=se.toOrientedRange();F=this.$getSelectedRows(ne),Y=this.session.$moveLines(F.first,F.last,k?0:S),k&&-1==S&&(Y=0),ne.moveBy(Y,0),se.fromOrientedRange(ne)}else{var me=se.rangeList.ranges;se.rangeList.detach(this.session),this.inVirtualSelectionMode=!0;for(var $=0,q=0,Q=me.length,ue=0;ueXe+1)break;Xe=Be.last}for(ue--,$=this.session.$moveLines(Oe,Xe,k?0:S),k&&-1==S&&(Me=ue+1);Me<=ue;)me[Me].moveBy($,0),Me++;k||($=0),q+=$}se.fromOrientedRange(se.ranges[0]),se.rangeList.attach(this.session),this.inVirtualSelectionMode=!1}},N.prototype.$getSelectedRows=function(S){return S=(S||this.getSelectionRange()).collapseRows(),{first:this.session.getRowFoldStart(S.start.row),last:this.session.getRowFoldEnd(S.end.row)}},N.prototype.onCompositionStart=function(S){this.renderer.showComposition(S)},N.prototype.onCompositionUpdate=function(S){this.renderer.setCompositionText(S)},N.prototype.onCompositionEnd=function(){this.renderer.hideComposition()},N.prototype.getFirstVisibleRow=function(){return this.renderer.getFirstVisibleRow()},N.prototype.getLastVisibleRow=function(){return this.renderer.getLastVisibleRow()},N.prototype.isRowVisible=function(S){return S>=this.getFirstVisibleRow()&&S<=this.getLastVisibleRow()},N.prototype.isRowFullyVisible=function(S){return S>=this.renderer.getFirstFullyVisibleRow()&&S<=this.renderer.getLastFullyVisibleRow()},N.prototype.$getVisibleRowCount=function(){return this.renderer.getScrollBottomRow()-this.renderer.getScrollTopRow()+1},N.prototype.$moveByPage=function(S,k){var F=this.renderer,Y=this.renderer.layerConfig,se=S*Math.floor(Y.height/Y.lineHeight);!0===k?this.selection.$moveSelection(function(){this.moveCursorBy(se,0)}):!1===k&&(this.selection.moveCursorBy(se,0),this.selection.clearSelection());var ne=F.scrollTop;F.scrollBy(0,se*Y.lineHeight),null!=k&&F.scrollCursorIntoView(null,.5),F.animateScrolling(ne)},N.prototype.selectPageDown=function(){this.$moveByPage(1,!0)},N.prototype.selectPageUp=function(){this.$moveByPage(-1,!0)},N.prototype.gotoPageDown=function(){this.$moveByPage(1,!1)},N.prototype.gotoPageUp=function(){this.$moveByPage(-1,!1)},N.prototype.scrollPageDown=function(){this.$moveByPage(1)},N.prototype.scrollPageUp=function(){this.$moveByPage(-1)},N.prototype.scrollToRow=function(S){this.renderer.scrollToRow(S)},N.prototype.scrollToLine=function(S,k,F,Y){this.renderer.scrollToLine(S,k,F,Y)},N.prototype.centerSelection=function(){var S=this.getSelectionRange(),k={row:Math.floor(S.start.row+(S.end.row-S.start.row)/2),column:Math.floor(S.start.column+(S.end.column-S.start.column)/2)};this.renderer.alignCursor(k,.5)},N.prototype.getCursorPosition=function(){return this.selection.getCursor()},N.prototype.getCursorPositionScreen=function(){return this.session.documentToScreenPosition(this.getCursorPosition())},N.prototype.getSelectionRange=function(){return this.selection.getRange()},N.prototype.selectAll=function(){this.selection.selectAll()},N.prototype.clearSelection=function(){this.selection.clearSelection()},N.prototype.moveCursorTo=function(S,k){this.selection.moveCursorTo(S,k)},N.prototype.moveCursorToPosition=function(S){this.selection.moveCursorToPosition(S)},N.prototype.jumpToMatching=function(S,k){var F=this.getCursorPosition(),Y=new L(this.session,F.row,F.column),se=Y.getCurrentToken(),ne=0;se&&-1!==se.type.indexOf("tag-name")&&(se=Y.stepBackward());var me=se||Y.stepForward();if(me){var $,Me,q=!1,Q={},ue=F.column-me.start,Oe={")":"(","(":"(","]":"[","[":"[","{":"{","}":"{"};do{if(me.value.match(/[{}()\[\]]/g)){for(;ue1?Q[me.value]++:"=0;--ne)this.$tryReplace(F[ne],S)&&Y++;return this.selection.setSelectionRange(se),Y},N.prototype.$tryReplace=function(S,k){var F=this.session.getTextRange(S);return null!==(k=this.$search.replace(F,k))?(S.end=this.session.replace(S,k),S):null},N.prototype.getLastSearchOptions=function(){return this.$search.getOptions()},N.prototype.find=function(S,k,F){k||(k={}),"string"==typeof S||S instanceof RegExp?k.needle=S:"object"==typeof S&&o.mixin(k,S);var Y=this.selection.getRange();null==k.needle&&((S=this.session.getTextRange(Y)||this.$search.$options.needle)||(Y=this.session.getWordRange(Y.start.row,Y.start.column),S=this.session.getTextRange(Y)),this.$search.set({needle:S})),this.$search.set(k),k.start||this.$search.set({start:Y});var se=this.$search.find(this.session);return k.preventScroll?se:se?(this.revealRange(se,F),se):(k.backwards?Y.start=Y.end:Y.end=Y.start,void this.selection.setRange(Y))},N.prototype.findNext=function(S,k){this.find({skipCurrent:!0,backwards:!1},S,k)},N.prototype.findPrevious=function(S,k){this.find(S,{skipCurrent:!0,backwards:!0},k)},N.prototype.revealRange=function(S,k){this.session.unfold(S),this.selection.setSelectionRange(S);var F=this.renderer.scrollTop;this.renderer.scrollSelectionIntoView(S.start,S.end,.5),!1!==k&&this.renderer.animateScrolling(F)},N.prototype.undo=function(){this.session.getUndoManager().undo(this.session),this.renderer.scrollCursorIntoView(null,.5)},N.prototype.redo=function(){this.session.getUndoManager().redo(this.session),this.renderer.scrollCursorIntoView(null,.5)},N.prototype.destroy=function(){this.$toDestroy&&(this.$toDestroy.forEach(function(S){S.destroy()}),this.$toDestroy=null),this.$mouseHandler&&this.$mouseHandler.destroy(),this.renderer.destroy(),this._signal("destroy",this),this.session&&this.session.destroy(),this._$emitInputEvent&&this._$emitInputEvent.cancel(),this.removeAllListeners()},N.prototype.setAutoScrollEditorIntoView=function(S){if(S){var k,F=this,Y=!1;this.$scrollAnchor||(this.$scrollAnchor=document.createElement("div"));var se=this.$scrollAnchor;se.style.cssText="position:absolute",this.container.insertBefore(se,this.container.firstChild);var ne=this.on("changeSelection",function(){Y=!0}),me=this.renderer.on("beforeRender",function(){Y&&(k=F.renderer.container.getBoundingClientRect())}),$=this.renderer.on("afterRender",function(){if(Y&&k&&(F.isFocused()||F.searchBox&&F.searchBox.isFocused())){var q=F.renderer,Q=q.$cursorLayer.$pixelPos,ue=q.layerConfig,Me=Q.top-ue.offset;null!=(Y=Q.top>=0&&Me+k.top<0||!(Q.topwindow.innerHeight)&&null)&&(se.style.top=Me+"px",se.style.left=Q.left+"px",se.style.height=ue.lineHeight+"px",se.scrollIntoView(Y)),Y=k=null}});this.setAutoScrollEditorIntoView=function(q){q||(delete this.setAutoScrollEditorIntoView,this.off("changeSelection",ne),this.renderer.off("afterRender",$),this.renderer.off("beforeRender",me))}}},N.prototype.$resetCursorStyle=function(){var S=this.$cursorStyle||"ace",k=this.renderer.$cursorLayer;k&&(k.setSmoothBlinking(/smooth/.test(S)),k.isBlinking=!this.$readOnly&&"wide"!=S,v.setCssClass(k.element,"ace_slim-cursors",/slim/.test(S)))},N.prototype.prompt=function(S,k,F){var Y=this;w.loadModule("ace/ext/prompt",function(se){se.prompt(Y,S,k,F)})},N}();R.$uid=0,R.prototype.curOp=null,R.prototype.prevOp={},R.prototype.$mergeableCommands=["backspace","del","insertstring"],R.prototype.$toggleWordPairs=[["first","last"],["true","false"],["yes","no"],["width","height"],["top","bottom"],["right","left"],["on","off"],["x","y"],["get","set"],["max","min"],["horizontal","vertical"],["show","hide"],["add","remove"],["up","down"],["before","after"],["even","odd"],["in","out"],["inside","outside"],["next","previous"],["increase","decrease"],["attach","detach"],["&&","||"],["==","!="]],o.implement(R.prototype,_),w.defineOptions(R.prototype,"editor",{selectionStyle:{set:function(N){this.onSelectionChange(),this._signal("changeSelectionStyle",{data:N})},initialValue:"line"},highlightActiveLine:{set:function(){this.$updateHighlightActiveLine()},initialValue:!0},highlightSelectedWord:{set:function(N){this.$onSelectionChange()},initialValue:!0},readOnly:{set:function(N){this.textInput.setReadOnly(N),this.$resetCursorStyle()},initialValue:!1},copyWithEmptySelection:{set:function(N){this.textInput.setCopyWithEmptySelection(N)},initialValue:!1},cursorStyle:{set:function(N){this.$resetCursorStyle()},values:["ace","slim","smooth","wide"],initialValue:"ace"},mergeUndoDeltas:{values:[!1,!0,"always"],initialValue:!0},behavioursEnabled:{initialValue:!0},wrapBehavioursEnabled:{initialValue:!0},enableAutoIndent:{initialValue:!0},autoScrollEditorIntoView:{set:function(N){this.setAutoScrollEditorIntoView(N)}},keyboardHandler:{set:function(N){this.setKeyboardHandler(N)},get:function(){return this.$keybindingId},handlesSet:!0},value:{set:function(N){this.session.setValue(N)},get:function(){return this.getValue()},handlesSet:!0,hidden:!0},session:{set:function(N){this.setSession(N)},get:function(){return this.session},handlesSet:!0,hidden:!0},showLineNumbers:{set:function(N){this.renderer.$gutterLayer.setShowLineNumbers(N),this.renderer.$loop.schedule(this.renderer.CHANGE_GUTTER),N&&this.$relativeLineNumbers?j.attach(this):j.detach(this)},initialValue:!0},relativeLineNumbers:{set:function(N){this.$showLineNumbers&&N?j.attach(this):j.detach(this)}},placeholder:{set:function(N){this.$updatePlaceholder||(this.$updatePlaceholder=function(){var S=this.session&&(this.renderer.$composition||this.session.getLength()>1||this.session.getLine(0).length>0);if(S&&this.renderer.placeholderNode)this.renderer.off("afterRender",this.$updatePlaceholder),v.removeCssClass(this.container,"ace_hasPlaceholder"),this.renderer.placeholderNode.remove(),this.renderer.placeholderNode=null;else if(S||this.renderer.placeholderNode)!S&&this.renderer.placeholderNode&&(this.renderer.placeholderNode.textContent=this.$placeholder||"");else{this.renderer.on("afterRender",this.$updatePlaceholder),v.addCssClass(this.container,"ace_hasPlaceholder");var k=v.createElement("div");k.className="ace_placeholder",k.textContent=this.$placeholder||"",this.renderer.placeholderNode=k,this.renderer.content.appendChild(this.renderer.placeholderNode)}}.bind(this),this.on("input",this.$updatePlaceholder)),this.$updatePlaceholder()}},enableKeyboardAccessibility:{set:function(N){var F,S={name:"blurTextInput",description:"Set focus to the editor content div to allow tabbing through the page",bindKey:"Esc",exec:function(Y){Y.blur(),Y.renderer.scroller.focus()},readOnly:!0},k=function(Y){if(Y.target==this.renderer.scroller&&Y.keyCode===D.enter){Y.preventDefault();var se=this.getCursorPosition().row;this.isRowVisible(se)||this.scrollToLine(se,!0,!0),this.focus()}};N?(this.renderer.enableKeyboardAccessibility=!0,this.renderer.keyboardFocusClassName="ace_keyboard-focus",this.textInput.getElement().setAttribute("tabindex",-1),this.renderer.scroller.setAttribute("tabindex",0),this.renderer.scroller.setAttribute("role","group"),this.renderer.scroller.setAttribute("aria-roledescription",O("editor")),this.renderer.scroller.classList.add(this.renderer.keyboardFocusClassName),this.renderer.scroller.setAttribute("aria-label",O("Editor content, press Enter to start editing, press Escape to exit")),this.renderer.scroller.addEventListener("keyup",k.bind(this)),this.commands.addCommand(S),this.renderer.$gutter.setAttribute("tabindex",0),this.renderer.$gutter.setAttribute("aria-hidden",!1),this.renderer.$gutter.setAttribute("role","group"),this.renderer.$gutter.setAttribute("aria-roledescription",O("editor")),this.renderer.$gutter.setAttribute("aria-label",O("Editor gutter, press Enter to interact with controls using arrow keys, press Escape to exit")),this.renderer.$gutter.classList.add(this.renderer.keyboardFocusClassName),this.renderer.content.setAttribute("aria-hidden",!0),F||(F=new T(this)),F.addListener()):(this.renderer.enableKeyboardAccessibility=!1,this.textInput.getElement().setAttribute("tabindex",0),this.renderer.scroller.setAttribute("tabindex",-1),this.renderer.scroller.removeAttribute("role"),this.renderer.scroller.removeAttribute("aria-roledescription"),this.renderer.scroller.classList.remove(this.renderer.keyboardFocusClassName),this.renderer.scroller.removeAttribute("aria-label"),this.renderer.scroller.removeEventListener("keyup",k.bind(this)),this.commands.removeCommand(S),this.renderer.content.removeAttribute("aria-hidden"),this.renderer.$gutter.setAttribute("tabindex",-1),this.renderer.$gutter.setAttribute("aria-hidden",!0),this.renderer.$gutter.removeAttribute("role"),this.renderer.$gutter.removeAttribute("aria-roledescription"),this.renderer.$gutter.removeAttribute("aria-label"),this.renderer.$gutter.classList.remove(this.renderer.keyboardFocusClassName),F&&F.removeListener())},initialValue:!1},customScrollbar:"renderer",hScrollBarAlwaysVisible:"renderer",vScrollBarAlwaysVisible:"renderer",highlightGutterLine:"renderer",animatedScroll:"renderer",showInvisibles:"renderer",showPrintMargin:"renderer",printMarginColumn:"renderer",printMargin:"renderer",fadeFoldWidgets:"renderer",showFoldWidgets:"renderer",displayIndentGuides:"renderer",highlightIndentGuides:"renderer",showGutter:"renderer",fontSize:"renderer",fontFamily:"renderer",maxLines:"renderer",minLines:"renderer",scrollPastEnd:"renderer",fixedWidthGutter:"renderer",theme:"renderer",hasCssTransforms:"renderer",maxPixelHeight:"renderer",useTextareaForIME:"renderer",useResizeObserver:"renderer",useSvgGutterIcons:"renderer",showFoldedAnnotations:"renderer",scrollSpeed:"$mouseHandler",dragDelay:"$mouseHandler",dragEnabled:"$mouseHandler",focusTimeout:"$mouseHandler",tooltipFollowsMouse:"$mouseHandler",firstLineNumber:"session",overwrite:"session",newLineMode:"session",useWorker:"session",useSoftTabs:"session",navigateWithinSoftTabs:"session",tabSize:"session",wrap:"session",indentedSoftWrap:"session",foldStyle:"session",mode:"session"});var j={getText:function(N,S){return(Math.abs(N.selection.lead.row-S)||S+1+(S<9?"\xb7":""))+""},getWidth:function(N,S,k){return Math.max(S.toString().length,(k.lastRow+1).toString().length,2)*k.characterWidth},update:function(N,S){S.renderer.$loop.schedule(S.renderer.CHANGE_GUTTER)},attach:function(N){N.renderer.$gutterLayer.$renderer=this,N.on("changeSelection",this.update),this.update(null,N)},detach:function(N){N.renderer.$gutterLayer.$renderer==this&&(N.renderer.$gutterLayer.$renderer=null),N.off("changeSelection",this.update),this.update(null,N)}};p.Editor=R}),ace.define("ace/undomanager",["require","exports","module","ace/range"],function(n,p,C){"use strict";var b=function(){function T(){this.$maxRev=0,this.$fromUndo=!1,this.$undoDepth=1/0,this.reset()}return T.prototype.addSession=function(O){this.$session=O},T.prototype.add=function(O,E,D){if(!this.$fromUndo&&O!=this.$lastDelta){if(this.$keepRedoStack||(this.$redoStack.length=0),!1===E||!this.lastDeltas){this.lastDeltas=[];var R=this.$undoStack.length;R>this.$undoDepth-1&&this.$undoStack.splice(0,R-this.$undoDepth+1),this.$undoStack.push(this.lastDeltas),O.id=this.$rev=++this.$maxRev}("remove"==O.action||"insert"==O.action)&&(this.$lastDelta=O),this.lastDeltas.push(O)}},T.prototype.addSelection=function(O,E){this.selections.push({value:O,rev:E||this.$rev})},T.prototype.startNewGroup=function(){return this.lastDeltas=null,this.$rev},T.prototype.markIgnored=function(O,E){null==E&&(E=this.$rev+1);for(var D=this.$undoStack,R=D.length;R--;){var j=D[R][0];if(j.id<=O)break;j.id0},T.prototype.canRedo=function(){return this.$redoStack.length>0},T.prototype.bookmark=function(O){null==O&&(O=this.$rev),this.mark=O},T.prototype.isAtBookmark=function(){return this.$rev===this.mark},T.prototype.toJSON=function(){},T.prototype.fromJSON=function(){},T.prototype.$prettyPrint=function(O){return O?r(O):r(this.$undoStack)+"\n---\n"+r(this.$redoStack)},T}();b.prototype.hasUndo=b.prototype.canUndo,b.prototype.hasRedo=b.prototype.canRedo,b.prototype.isClean=b.prototype.isAtBookmark,b.prototype.markClean=b.prototype.bookmark;var v=n("./range").Range,a=v.comparePoints;function l(T){return{row:T.row,column:T.column}}function r(T){if(T=T||this,Array.isArray(T))return T.map(r).join("\n");var O="";return T.action?(O="insert"==T.action?"+":"-",O+="["+T.lines+"]"):T.value&&(O=Array.isArray(T.value)?T.value.map(u).join("\n"):u(T.value)),T.start&&(O+=u(T)),(T.id||T.rev)&&(O+="\t("+(T.id||T.rev)+")"),O}function u(T){return T.start.row+":"+T.start.column+"=>"+T.end.row+":"+T.end.column}function h(T,O){var E="insert"==T.action,D="insert"==O.action;if(E&&D)if(a(O.start,T.end)>=0)M(O,T,-1);else{if(!(a(O.start,T.start)<=0))return null;M(T,O,1)}else if(E&&!D)if(a(O.start,T.end)>=0)M(O,T,-1);else{if(!(a(O.end,T.start)<=0))return null;M(T,O,-1)}else if(!E&&D)if(a(O.start,T.start)>=0)M(O,T,1);else{if(!(a(O.start,T.start)<=0))return null;M(T,O,1)}else if(!E&&!D)if(a(O.start,T.start)>=0)M(O,T,1);else{if(!(a(O.end,T.start)<=0))return null;M(T,O,-1)}return[O,T]}function m(T,O){for(var E=T.length;E--;)for(var D=0;D=0?M(T,O,-1):(a(T.start,O.start)<=0||M(T,v.fromPoints(O.start,T.start),-1),M(O,T,1));else if(!E&&D)a(O.start,T.end)>=0?M(O,T,-1):(a(O.start,T.start)<=0||M(O,v.fromPoints(T.start,O.start),-1),M(T,O,1));else if(!E&&!D)if(a(O.start,T.end)>=0)M(O,T,-1);else{var R,j;if(!(a(O.end,T.start)<=0))return a(T.start,O.start)<0&&(R=T,T=w(T,O.start)),a(T.end,O.end)>0&&(j=w(T,O.end)),x(O.end,T.start,T.end,-1),j&&!R&&(T.lines=j.lines,T.start=j.start,T.end=j.end,j=T),[O,R,j].filter(Boolean);M(T,O,-1)}return[O,T]}function M(T,O,E){x(T.start,O.start,O.end,E),x(T.end,O.start,O.end,E)}function x(T,O,E,D){T.row==(1==D?O:E).row&&(T.column+=D*(E.column-O.column)),T.row+=D*(E.row-O.row)}function w(T,O){var E=T.lines,D=T.end;T.end=l(O);var R=T.end.row-T.start.row,j=E.splice(R,E.length),N=R?O.column:O.column-T.start.column;return E.push(j[0].substring(0,N)),j[0]=j[0].substr(N),{start:l(O),end:D,lines:j,action:T.action}}function L(T,O){O=function d(T){return{start:l(T.start),end:l(T.end),action:T.action,lines:T.lines.slice()}}(O);for(var E=T.length;E--;){for(var D=T[E],R=0;Rx&&(x=(M=h.getNextFoldLine(A=M.end.row+1,M))?M.start.row:1/0),A>_){for(;this.$lines.getLength()>L+1;)this.$lines.pop();break}(w=this.$lines.get(++L))?w.row=A:(w=this.$lines.createCell(A,u,this.session,d),this.$lines.push(w)),this.$renderCell(w,u,M,A),A++}this._signal("afterRender"),this.$updateGutterWidth(u)},r.prototype.$updateGutterWidth=function(u){var h=this.session,m=h.gutterRenderer||this.$renderer,_=h.$firstLineNumber,M=this.$lines.last()?this.$lines.last().text:"";(this.$fixedWidth||h.$useWrapMode)&&(M=h.getLength()+_-1);var x=m?m.getWidth(h,M,u):M.toString().length*u.characterWidth,w=this.$padding||this.$computePadding();(x+=w.left+w.right)!==this.gutterWidth&&!isNaN(x)&&(this.gutterWidth=x,this.element.parentNode.style.width=this.element.style.width=Math.ceil(this.gutterWidth)+"px",this._signal("changeGutterWidth",x))},r.prototype.$updateCursorRow=function(){if(this.$highlightGutterLine){var u=this.session.selection.getCursor();this.$cursorRow!==u.row&&(this.$cursorRow=u.row)}},r.prototype.updateLineHighlight=function(){if(this.$highlightGutterLine){var u=this.session.selection.cursor.row;if(this.$cursorRow=u,!this.$cursorCell||this.$cursorCell.row!=u){this.$cursorCell&&(this.$cursorCell.element.className=this.$cursorCell.element.className.replace("ace_gutter-active-line ",""));var h=this.$lines.cells;this.$cursorCell=null;for(var m=0;m=this.$cursorRow){if(_.row>this.$cursorRow){var M=this.session.getFoldLine(this.$cursorRow);if(!(m>0&&M&&M.start.row==h[m-1].row))break;_=h[m-1]}_.element.className="ace_gutter-active-line "+_.element.className,this.$cursorCell=_;break}}}}},r.prototype.scrollLines=function(u){var h=this.config;if(this.config=u,this.$updateCursorRow(),this.$lines.pageChanged(h,u))return this.update(u);this.$lines.moveContainer(u);var m=Math.min(u.lastRow+u.gutterOffset,this.session.getLength()-1),_=this.oldLastRow;if(this.oldLastRow=m,!h||_0;M--)this.$lines.shift();if(_>m)for(M=this.session.getFoldedRowCount(m+1,_);M>0;M--)this.$lines.pop();u.firstRow_&&this.$lines.push(this.$renderLines(u,_+1,m)),this.updateLineHighlight(),this._signal("afterRender"),this.$updateGutterWidth(u)},r.prototype.$renderLines=function(u,h,m){for(var _=[],M=h,x=this.session.getNextFoldLine(M),w=x?x.start.row:1/0;M>w&&(w=(x=this.session.getNextFoldLine(M=x.end.row+1,x))?x.start.row:1/0),!(M>m);){var L=this.$lines.createCell(M,u,this.session,d);this.$renderCell(L,u,x,M),_.push(L),M++}return _},r.prototype.$renderCell=function(u,h,m,_){var M=u.element,x=this.session,w=M.childNodes[0],L=M.childNodes[1],A=M.childNodes[2],T=A.firstChild,O=x.$firstLineNumber,E=x.$breakpoints,D=x.$decorations,R=x.gutterRenderer||this.$renderer,j=this.$showFoldWidgets&&x.foldWidgets,N=m?m.start.row:Number.MAX_VALUE,S=h.lineHeight+"px",k=this.$useSvgGutterIcons?"ace_gutter-cell_svg-icons ":"ace_gutter-cell ",F=this.$useSvgGutterIcons?"ace_icon_svg":"ace_icon",Y=(R?R.getText(x,_):_+O).toString();if(this.$highlightGutterLine&&(_==this.$cursorRow||m&&_=N&&this.$cursorRow<=m.end.row)&&(k+="ace_gutter-active-line ",this.$cursorCell!=u&&(this.$cursorCell&&(this.$cursorCell.element.className=this.$cursorCell.element.className.replace("ace_gutter-active-line ","")),this.$cursorCell=u)),E[_]&&(k+=E[_]),D[_]&&(k+=D[_]),this.$annotations[_]&&_!==N&&(k+=this.$annotations[_].className),j){var se=j[_];null==se&&(se=j[_]=x.getFoldWidget(_))}if(se){var ne="ace_fold-widget ace_"+se,me="start"==se&&_==N&&_m.right-h.right?"foldWidgets":void 0},r}();function d(r){var u=document.createTextNode("");r.appendChild(u);var h=b.createElement("span");r.appendChild(h);var m=b.createElement("span");r.appendChild(m);var _=b.createElement("span");return m.appendChild(_),r}l.prototype.$fixedWidth=!1,l.prototype.$highlightGutterLine=!0,l.prototype.$renderer="",l.prototype.$showLineNumbers=!0,l.prototype.$showFoldWidgets=!0,o.implement(l.prototype,a),p.Gutter=l}),ace.define("ace/layer/marker",["require","exports","module","ace/range","ace/lib/dom"],function(n,p,C){"use strict";var b=n("../range").Range,o=n("../lib/dom"),v=function(){function c(s){this.element=o.createElement("div"),this.element.className="ace_layer ace_marker-layer",s.appendChild(this.element)}return c.prototype.setPadding=function(s){this.$padding=s},c.prototype.setSession=function(s){this.session=s},c.prototype.setMarkers=function(s){this.markers=s},c.prototype.elt=function(s,l){var d=-1!=this.i&&this.element.childNodes[this.i];d?this.i++:(d=document.createElement("div"),this.element.appendChild(d),this.i=-1),d.style.cssText=l,d.className=s},c.prototype.update=function(s){if(s){var l;for(var d in this.config=s,this.i=0,this.markers){var r=this.markers[d];if(r.range){var u=r.range.clipRows(s.firstRow,s.lastRow);if(!u.isEmpty())if(u=u.toScreenRange(this.session),r.renderer){var h=this.$getTop(u.start.row,s);r.renderer(l,u,this.$padding+u.start.column*s.characterWidth,h,s)}else"fullLine"==r.type?this.drawFullLineMarker(l,u,r.clazz,s):"screenLine"==r.type?this.drawScreenLineMarker(l,u,r.clazz,s):u.isMultiLine()?"text"==r.type?this.drawTextMarker(l,u,r.clazz,s):this.drawMultiLineMarker(l,u,r.clazz,s):this.drawSingleLineMarker(l,u,r.clazz+" ace_start ace_br15",s)}else r.update(l,this,this.session,s)}if(-1!=this.i)for(;this.iL,M==_),r,M==_?0:1,u)},c.prototype.drawMultiLineMarker=function(s,l,d,r,u){var x,h=this.$padding,m=r.lineHeight,_=this.$getTop(l.start.row,r),M=h+l.start.column*r.characterWidth;if(u=u||"",this.session.$bidiHandler.isBidiRow(l.start.row)?((x=l.clone()).end.row=x.start.row,x.end.column=this.session.getLine(x.start.row).length,this.drawBidiSingleLineMarker(s,x,d+" ace_br1 ace_start",r,null,u)):this.elt(d+" ace_br1 ace_start","height:"+m+"px;right:0;top:"+_+"px;left:"+M+"px;"+(u||"")),this.session.$bidiHandler.isBidiRow(l.end.row)?((x=l.clone()).start.row=x.end.row,x.start.column=0,this.drawBidiSingleLineMarker(s,x,d+" ace_br12",r,null,u)):(_=this.$getTop(l.end.row,r),this.elt(d+" ace_br12","height:"+m+"px;width:"+l.end.column*r.characterWidth+"px;top:"+_+"px;left:"+h+"px;"+(u||""))),!((m=(l.end.row-l.start.row-1)*r.lineHeight)<=0)){_=this.$getTop(l.start.row+1,r);var L=(l.start.column?1:0)|(l.end.column?0:8);this.elt(d+(L?" ace_br"+L:""),"height:"+m+"px;right:0;top:"+_+"px;left:"+h+"px;"+(u||""))}},c.prototype.drawSingleLineMarker=function(s,l,d,r,u,h){if(this.session.$bidiHandler.isBidiRow(l.start.row))return this.drawBidiSingleLineMarker(s,l,d,r,u,h);var m=r.lineHeight,_=(l.end.column+(u||0)-l.start.column)*r.characterWidth,M=this.$getTop(l.start.row,r);this.elt(d,"height:"+m+"px;width:"+_+"px;top:"+M+"px;left:"+(this.$padding+l.start.column*r.characterWidth)+"px;"+(h||""))},c.prototype.drawBidiSingleLineMarker=function(s,l,d,r,u,h){var m=r.lineHeight,_=this.$getTop(l.start.row,r),M=this.$padding;this.session.$bidiHandler.getSelections(l.start.column,l.end.column).forEach(function(w){this.elt(d,"height:"+m+"px;width:"+(w.width+(u||0))+"px;top:"+_+"px;left:"+(M+w.left)+"px;"+(h||""))},this)},c.prototype.drawFullLineMarker=function(s,l,d,r,u){var h=this.$getTop(l.start.row,r),m=r.lineHeight;l.start.row!=l.end.row&&(m+=this.$getTop(l.end.row,r)-h),this.elt(d,"height:"+m+"px;top:"+h+"px;left:0;right:0;"+(u||""))},c.prototype.drawScreenLineMarker=function(s,l,d,r,u){var h=this.$getTop(l.start.row,r);this.elt(d,"height:"+r.lineHeight+"px;top:"+h+"px;left:0;right:0;"+(u||""))},c}();function a(c,s,l,d){return(c?1:0)|(s?2:0)|(l?4:0)|(d?8:0)}v.prototype.$padding=0,p.Marker=v}),ace.define("ace/layer/text",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/layer/lines","ace/lib/event_emitter","ace/config"],function(n,p,C){"use strict";var b=n("../lib/oop"),o=n("../lib/dom"),v=n("../lib/lang"),a=n("./lines").Lines,c=n("../lib/event_emitter").EventEmitter,s=n("../config").nls,l=function(){function d(r){this.dom=o,this.element=this.dom.createElement("div"),this.element.className="ace_layer ace_text-layer",r.appendChild(this.element),this.$updateEolChar=this.$updateEolChar.bind(this),this.$lines=new a(this.element)}return d.prototype.$updateEolChar=function(){var r=this.session.doc,h="\n"==r.getNewLineCharacter()&&"windows"!=r.getNewLineMode()?this.EOL_CHAR_LF:this.EOL_CHAR_CRLF;if(this.EOL_CHAR!=h)return this.EOL_CHAR=h,!0},d.prototype.setPadding=function(r){this.$padding=r,this.element.style.margin="0 "+r+"px"},d.prototype.getLineHeight=function(){return this.$fontMetrics.$characterSize.height||0},d.prototype.getCharacterWidth=function(){return this.$fontMetrics.$characterSize.width||0},d.prototype.$setFontMetrics=function(r){this.$fontMetrics=r,this.$fontMetrics.on("changeCharacterSize",function(u){this._signal("changeCharacterSize",u)}.bind(this)),this.$pollSizeChanges()},d.prototype.checkForSizeChanges=function(){this.$fontMetrics.checkForSizeChanges()},d.prototype.$pollSizeChanges=function(){return this.$pollSizeChangesTimer=this.$fontMetrics.$pollSizeChanges()},d.prototype.setSession=function(r){this.session=r,r&&this.$computeTabString()},d.prototype.setShowInvisibles=function(r){return this.showInvisibles!=r&&(this.showInvisibles=r,"string"==typeof r?(this.showSpaces=/tab/i.test(r),this.showTabs=/space/i.test(r),this.showEOL=/eol/i.test(r)):this.showSpaces=this.showTabs=this.showEOL=r,this.$computeTabString(),!0)},d.prototype.setDisplayIndentGuides=function(r){return this.displayIndentGuides!=r&&(this.displayIndentGuides=r,this.$computeTabString(),!0)},d.prototype.setHighlightIndentGuides=function(r){return this.$highlightIndentGuides!==r&&(this.$highlightIndentGuides=r,r)},d.prototype.$computeTabString=function(){var r=this.session.getTabSize();this.tabSize=r;for(var u=this.$tabStrings=[0],h=1;hT&&(T=(A=this.session.getNextFoldLine(L=A.end.row+1,A))?A.start.row:1/0),!(L>_);){var O=M[x++];if(O){this.dom.removeChildren(O),this.$renderLine(O,L,L==T&&A),w&&(O.style.top=this.$lines.computeLineTop(L,r,this.session)+"px");var E=r.lineHeight*this.session.getRowLength(L)+"px";O.style.height!=E&&(w=!0,O.style.height=E)}L++}if(w)for(;x0;_--)this.$lines.shift();if(u.lastRow>r.lastRow)for(_=this.session.getFoldedRowCount(r.lastRow+1,u.lastRow);_>0;_--)this.$lines.pop();r.firstRowu.lastRow&&this.$lines.push(this.$renderLinesFragment(r,u.lastRow+1,r.lastRow)),this.$highlightIndentGuide()},d.prototype.$renderLinesFragment=function(r,u,h){for(var m=[],_=u,M=this.session.getNextFoldLine(_),x=M?M.start.row:1/0;_>x&&(x=(M=this.session.getNextFoldLine(_=M.end.row+1,M))?M.start.row:1/0),!(_>h);){var w=this.$lines.createCell(_,r,this.session),L=w.element;this.dom.removeChildren(L),o.setStyle(L.style,"height",this.$lines.computeLineHeight(_,r,this.session)+"px"),o.setStyle(L.style,"top",this.$lines.computeLineTop(_,r,this.session)+"px"),this.$renderLine(L,_,_==x&&M),L.className=this.$useLineGroups()?"ace_line_group":"ace_line",m.push(w),_++}return m},d.prototype.update=function(r){this.$lines.moveContainer(r),this.config=r;for(var u=r.firstRow,h=r.lastRow,m=this.$lines;m.getLength();)m.pop();m.push(this.$renderLinesFragment(r,u,h))},d.prototype.$renderToken=function(r,u,h,m){for(var w,_=this,M=/(\t)|( +)|([\x00-\x1f\x80-\xa0\xad\u1680\u180E\u2000-\u200f\u2028\u2029\u202F\u205F\uFEFF\uFFF9-\uFFFC\u2066\u2067\u2068\u202A\u202B\u202D\u202E\u202C\u2069]+)|(\u3000)|([\u1100-\u115F\u11A3-\u11A7\u11FA-\u11FF\u2329-\u232A\u2E80-\u2E99\u2E9B-\u2EF3\u2F00-\u2FD5\u2FF0-\u2FFB\u3001-\u303E\u3041-\u3096\u3099-\u30FF\u3105-\u312D\u3131-\u318E\u3190-\u31BA\u31C0-\u31E3\u31F0-\u321E\u3220-\u3247\u3250-\u32FE\u3300-\u4DBF\u4E00-\uA48C\uA490-\uA4C6\uA960-\uA97C\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFAFF\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE66\uFE68-\uFE6B\uFF01-\uFF60\uFFE0-\uFFE6]|[\uD800-\uDBFF][\uDC00-\uDFFF])/g,x=this.dom.createFragment(this.element),L=0;w=M.exec(m);){var A=w[1],T=w[2],O=w[3],E=w[4],D=w[5];if(_.showSpaces||!T){var R=L!=w.index?m.slice(L,w.index):"";if(L=w.index+w[0].length,R&&x.appendChild(this.dom.createTextNode(R,this.element)),A){var j=_.session.getScreenTabSize(u+w.index);x.appendChild(_.$tabStrings[j].cloneNode(!0)),u+=j-1}else T?_.showSpaces?((N=this.dom.createElement("span")).className="ace_invisible ace_invisible_space",N.textContent=v.stringRepeat(_.SPACE_CHAR,T.length),x.appendChild(N)):x.appendChild(this.com.createTextNode(T,this.element)):O?((N=this.dom.createElement("span")).className="ace_invisible ace_invisible_space ace_invalid",N.textContent=v.stringRepeat(_.SPACE_CHAR,O.length),x.appendChild(N)):E?(u+=1,(N=this.dom.createElement("span")).style.width=2*_.config.characterWidth+"px",N.className=_.showSpaces?"ace_cjk ace_invisible ace_invisible_space":"ace_cjk",N.textContent=_.showSpaces?_.SPACE_CHAR:E,x.appendChild(N)):D&&(u+=1,(N=this.dom.createElement("span")).style.width=2*_.config.characterWidth+"px",N.className="ace_cjk",N.textContent=D,x.appendChild(N))}}if(x.appendChild(this.dom.createTextNode(L?m.slice(L):m,this.element)),this.$textToken[h.type])r.appendChild(x);else{var S="ace_"+h.type.replace(/\./g," ace_"),N=this.dom.createElement("span");"fold"==h.type&&(N.style.width=h.value.length*this.config.characterWidth+"px",N.setAttribute("title",s("Unfold code"))),N.className=S,N.appendChild(x),r.appendChild(N)}return u+m.length},d.prototype.renderIndentGuide=function(r,u,h){var m=u.search(this.$indentGuideRe);if(m<=0||m>=h)return u;if(" "==u[0]){for(var _=(m-=m%this.tabSize)/this.tabSize,M=0;M<_;M++)r.appendChild(this.$tabStrings[" "].cloneNode(!0));return this.$highlightIndentGuide(),u.substr(m)}if("\t"==u[0]){for(M=0;MM[x].start.row?-1:1;break}if(!this.$highlightIndentGuideMarker.end&&""!==r[u.row]&&u.column===r[u.row].length)for(this.$highlightIndentGuideMarker.dir=1,x=u.row+1;x0)for(var _=0;_=this.$highlightIndentGuideMarker.start+1){if(m.row>=this.$highlightIndentGuideMarker.end)break;this.$setIndentGuideActive(m,u)}}else for(h=r.length-1;h>=0;h--)if(m=r[h],this.$highlightIndentGuideMarker.end&&m.row=M;)x=this.$renderToken(w,x,A,T.substring(0,M-m)),T=T.substring(M-m),m=M,w=this.$createLineElement(),r.appendChild(w),w.appendChild(this.dom.createTextNode(v.stringRepeat("\xa0",h.indent),this.element)),x=0,M=h[++_]||Number.MAX_VALUE;0!=T.length&&(m+=T.length,x=this.$renderToken(w,x,A,T))}}h[h.length-1]>this.MAX_LINE_LENGTH&&this.$renderOverflowMessage(w,x,null,"",!0)},d.prototype.$renderSimpleLine=function(r,u){for(var h=0,m=0;mthis.MAX_LINE_LENGTH)return this.$renderOverflowMessage(r,h,_,M);h=this.$renderToken(r,h,_,M)}}},d.prototype.$renderOverflowMessage=function(r,u,h,m,_){h&&this.$renderToken(r,u,h,m.slice(0,this.MAX_LINE_LENGTH-u));var M=this.dom.createElement("span");M.className="ace_inline_button ace_keyword ace_toggle_wrap",M.textContent=_?"":"",r.appendChild(M)},d.prototype.$renderLine=function(r,u,h){if(!h&&0!=h&&(h=this.session.getFoldLine(u)),h)var m=this.$getFoldLineTokens(u,h);else m=this.session.getTokens(u);var _=r;if(m.length){var M=this.session.getRowSplitData(u);M&&M.length?(this.$renderWrappedLine(r,m,M),_=r.lastChild):(_=r,this.$useLineGroups()&&(_=this.$createLineElement(),r.appendChild(_)),this.$renderSimpleLine(_,m))}else this.$useLineGroups()&&(_=this.$createLineElement(),r.appendChild(_));if(this.showEOL&&_){h&&(u=h.end.row);var x=this.dom.createElement("span");x.className="ace_invisible ace_invisible_eol",x.textContent=u==this.session.getLength()-1?this.EOF_CHAR:this.EOL_CHAR,_.appendChild(x)}},d.prototype.$getFoldLineTokens=function(r,u){var h=this.session,m=[],M=h.getTokens(r);return u.walk(function(x,w,L,A,T){null!=x?m.push({type:"fold",value:x}):(T&&(M=h.getTokens(w)),M.length&&function _(x,w,L){for(var A=0,T=0;T+x[A].value.lengthL-w&&(O=O.substring(0,L-w)),m.push({type:x[A].type,value:O}),T=w+O.length,A+=1);TL?{type:x[A].type,value:O.substring(0,L-T)}:x[A]),T+=O.length,A+=1}}(M,A,L))},u.end.row,this.session.getLine(u.end.row).length),m},d.prototype.$useLineGroups=function(){return this.session.getUseWrapMode()},d}();l.prototype.$textToken={text:!0,rparen:!0,lparen:!0},l.prototype.EOF_CHAR="\xb6",l.prototype.EOL_CHAR_LF="\xac",l.prototype.EOL_CHAR_CRLF="\xa4",l.prototype.EOL_CHAR=l.prototype.EOL_CHAR_LF,l.prototype.TAB_CHAR="\u2014",l.prototype.SPACE_CHAR="\xb7",l.prototype.$padding=0,l.prototype.MAX_LINE_LENGTH=1e4,l.prototype.showInvisibles=!1,l.prototype.showSpaces=!1,l.prototype.showTabs=!1,l.prototype.showEOL=!1,l.prototype.displayIndentGuides=!0,l.prototype.$highlightIndentGuides=!0,l.prototype.$tabStrings=[],l.prototype.destroy={},l.prototype.onChangeTabSize=l.prototype.$computeTabString,b.implement(l.prototype,c),p.Text=l}),ace.define("ace/layer/cursor",["require","exports","module","ace/lib/dom"],function(n,p,C){"use strict";var b=n("../lib/dom"),o=function(){function v(a){this.element=b.createElement("div"),this.element.className="ace_layer ace_cursor-layer",a.appendChild(this.element),this.isVisible=!1,this.isBlinking=!0,this.blinkInterval=1e3,this.smoothBlinking=!1,this.cursors=[],this.cursor=this.addCursor(),b.addCssClass(this.element,"ace_hidden-cursors"),this.$updateCursors=this.$updateOpacity.bind(this)}return v.prototype.$updateOpacity=function(a){for(var c=this.cursors,s=c.length;s--;)b.setStyle(c[s].style,"opacity",a?"":"0")},v.prototype.$startCssAnimation=function(){for(var a=this.cursors,c=a.length;c--;)a[c].style.animationDuration=this.blinkInterval+"ms";this.$isAnimating=!0,setTimeout(function(){this.$isAnimating&&b.addCssClass(this.element,"ace_animate-blinking")}.bind(this))},v.prototype.$stopCssAnimation=function(){this.$isAnimating=!1,b.removeCssClass(this.element,"ace_animate-blinking")},v.prototype.setPadding=function(a){this.$padding=a},v.prototype.setSession=function(a){this.session=a},v.prototype.setBlinking=function(a){a!=this.isBlinking&&(this.isBlinking=a,this.restartTimer())},v.prototype.setBlinkInterval=function(a){a!=this.blinkInterval&&(this.blinkInterval=a,this.restartTimer())},v.prototype.setSmoothBlinking=function(a){a!=this.smoothBlinking&&(this.smoothBlinking=a,b.setCssClass(this.element,"ace_smooth-blinking",a),this.$updateCursors(!0),this.restartTimer())},v.prototype.addCursor=function(){var a=b.createElement("div");return a.className="ace_cursor",this.element.appendChild(a),this.cursors.push(a),a},v.prototype.removeCursor=function(){if(this.cursors.length>1){var a=this.cursors.pop();return a.parentNode.removeChild(a),a}},v.prototype.hideCursor=function(){this.isVisible=!1,b.addCssClass(this.element,"ace_hidden-cursors"),this.restartTimer()},v.prototype.showCursor=function(){this.isVisible=!0,b.removeCssClass(this.element,"ace_hidden-cursors"),this.restartTimer()},v.prototype.restartTimer=function(){var a=this.$updateCursors;if(clearInterval(this.intervalId),clearTimeout(this.timeoutId),this.$stopCssAnimation(),this.smoothBlinking&&(this.$isSmoothBlinking=!1,b.removeCssClass(this.element,"ace_smooth-blinking")),a(!0),this.isBlinking&&this.blinkInterval&&this.isVisible)if(this.smoothBlinking&&(this.$isSmoothBlinking=!0,setTimeout(function(){this.$isSmoothBlinking&&b.addCssClass(this.element,"ace_smooth-blinking")}.bind(this))),b.HAS_CSS_ANIMATION)this.$startCssAnimation();else{var c=function(){this.timeoutId=setTimeout(function(){a(!1)},.6*this.blinkInterval)}.bind(this);this.intervalId=setInterval(function(){a(!0),c()},this.blinkInterval),c()}else this.$stopCssAnimation()},v.prototype.getPixelPosition=function(a,c){if(!this.config||!this.session)return{left:0,top:0};a||(a=this.session.selection.getCursor());var s=this.session.documentToScreenPosition(a);return{left:this.$padding+(this.session.$bidiHandler.isBidiRow(s.row,a.row)?this.session.$bidiHandler.getPosLeft(s.column):s.column*this.config.characterWidth),top:(s.row-(c?this.config.firstRowScreen:0))*this.config.lineHeight}},v.prototype.isCursorInView=function(a,c){return a.top>=0&&a.topa.height+a.offset||r.top<0)&&s>1)){var u=this.cursors[l++]||this.addCursor(),h=u.style;this.drawCursor?this.drawCursor(u,r,a,c[s],this.session):this.isCursorInView(r,a)?(b.setStyle(h,"display","block"),b.translate(u,r.left,r.top),b.setStyle(h,"width",Math.round(a.characterWidth)+"px"),b.setStyle(h,"height",a.lineHeight+"px")):b.setStyle(h,"display","none")}}for(;this.cursors.length>l;)this.removeCursor();var m=this.session.getOverwrite();this.$setOverwrite(m),this.$pixelPos=r,this.restartTimer()},v.prototype.$setOverwrite=function(a){a!=this.overwrite&&(this.overwrite=a,a?b.addCssClass(this.element,"ace_overwrite-cursors"):b.removeCssClass(this.element,"ace_overwrite-cursors"))},v.prototype.destroy=function(){clearInterval(this.intervalId),clearTimeout(this.timeoutId)},v}();o.prototype.$padding=0,o.prototype.drawCursor=null,p.Cursor=o}),ace.define("ace/scrollbar",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/event","ace/lib/event_emitter"],function(n,p,C){"use strict";var u,b=this&&this.__extends||(u=function(h,m){return(u=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(_,M){_.__proto__=M}||function(_,M){for(var x in M)Object.prototype.hasOwnProperty.call(M,x)&&(_[x]=M[x])})(h,m)},function(h,m){if("function"!=typeof m&&null!==m)throw new TypeError("Class extends value "+String(m)+" is not a constructor or null");function _(){this.constructor=h}u(h,m),h.prototype=null===m?Object.create(m):(_.prototype=m.prototype,new _)}),o=n("./lib/oop"),v=n("./lib/dom"),a=n("./lib/event"),c=n("./lib/event_emitter").EventEmitter,s=32768,l=function(){function u(h,m){this.element=v.createElement("div"),this.element.className="ace_scrollbar ace_scrollbar"+m,this.inner=v.createElement("div"),this.inner.className="ace_scrollbar-inner",this.inner.textContent="\xa0",this.element.appendChild(this.inner),h.appendChild(this.element),this.setVisible(!1),this.skipEvent=!1,a.addListener(this.element,"scroll",this.onScroll.bind(this)),a.addListener(this.element,"mousedown",a.preventDefault)}return u.prototype.setVisible=function(h){this.element.style.display=h?"":"none",this.isVisible=h,this.coeff=1},u}();o.implement(l.prototype,c);var d=function(u){function h(m,_){var M=u.call(this,m,"-v")||this;return M.scrollTop=0,M.scrollHeight=0,_.$scrollbarWidth=M.width=v.scrollbarWidth(m.ownerDocument),M.inner.style.width=M.element.style.width=(M.width||15)+5+"px",M.$minWidth=0,M}return b(h,u),h.prototype.onScroll=function(){if(!this.skipEvent){if(this.scrollTop=this.element.scrollTop,1!=this.coeff){var m=this.element.clientHeight/this.scrollHeight;this.scrollTop=this.scrollTop*(1-m)/(this.coeff-m)}this._emit("scroll",{data:this.scrollTop})}this.skipEvent=!1},h.prototype.getWidth=function(){return Math.max(this.isVisible?this.width:0,this.$minWidth||0)},h.prototype.setHeight=function(m){this.element.style.height=m+"px"},h.prototype.setScrollHeight=function(m){this.scrollHeight=m,m>s?(this.coeff=s/m,m=s):1!=this.coeff&&(this.coeff=1),this.inner.style.height=m+"px"},h.prototype.setScrollTop=function(m){this.scrollTop!=m&&(this.skipEvent=!0,this.scrollTop=m,this.element.scrollTop=m*this.coeff)},h}(l);d.prototype.setInnerHeight=d.prototype.setScrollHeight;var r=function(u){function h(m,_){var M=u.call(this,m,"-h")||this;return M.scrollLeft=0,M.height=_.$scrollbarWidth,M.inner.style.height=M.element.style.height=(M.height||15)+5+"px",M}return b(h,u),h.prototype.onScroll=function(){this.skipEvent||(this.scrollLeft=this.element.scrollLeft,this._emit("scroll",{data:this.scrollLeft})),this.skipEvent=!1},h.prototype.getHeight=function(){return this.isVisible?this.height:0},h.prototype.setWidth=function(m){this.element.style.width=m+"px"},h.prototype.setInnerWidth=function(m){this.inner.style.width=m+"px"},h.prototype.setScrollWidth=function(m){this.inner.style.width=m+"px"},h.prototype.setScrollLeft=function(m){this.scrollLeft!=m&&(this.skipEvent=!0,this.scrollLeft=this.element.scrollLeft=m)},h}(l);p.ScrollBar=d,p.ScrollBarV=d,p.ScrollBarH=r,p.VScrollBar=d,p.HScrollBar=r}),ace.define("ace/scrollbar_custom",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/event","ace/lib/event_emitter"],function(n,p,C){"use strict";var r,b=this&&this.__extends||(r=function(u,h){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(m,_){m.__proto__=_}||function(m,_){for(var M in _)Object.prototype.hasOwnProperty.call(_,M)&&(m[M]=_[M])})(u,h)},function(u,h){if("function"!=typeof h&&null!==h)throw new TypeError("Class extends value "+String(h)+" is not a constructor or null");function m(){this.constructor=u}r(u,h),u.prototype=null===h?Object.create(h):(m.prototype=h.prototype,new m)}),o=n("./lib/oop"),v=n("./lib/dom"),a=n("./lib/event"),c=n("./lib/event_emitter").EventEmitter;v.importCssString(".ace_editor>.ace_sb-v div, .ace_editor>.ace_sb-h div{\n position: absolute;\n background: rgba(128, 128, 128, 0.6);\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n border: 1px solid #bbb;\n border-radius: 2px;\n z-index: 8;\n}\n.ace_editor>.ace_sb-v, .ace_editor>.ace_sb-h {\n position: absolute;\n z-index: 6;\n background: none;\n overflow: hidden!important;\n}\n.ace_editor>.ace_sb-v {\n z-index: 6;\n right: 0;\n top: 0;\n width: 12px;\n}\n.ace_editor>.ace_sb-v div {\n z-index: 8;\n right: 0;\n width: 100%;\n}\n.ace_editor>.ace_sb-h {\n bottom: 0;\n left: 0;\n height: 12px;\n}\n.ace_editor>.ace_sb-h div {\n bottom: 0;\n height: 100%;\n}\n.ace_editor>.ace_sb_grabbed {\n z-index: 8;\n background: #000;\n}","ace_scrollbar.css",!1);var s=function(){function r(u,h){this.element=v.createElement("div"),this.element.className="ace_sb"+h,this.inner=v.createElement("div"),this.inner.className="",this.element.appendChild(this.inner),this.VScrollWidth=12,this.HScrollHeight=12,u.appendChild(this.element),this.setVisible(!1),this.skipEvent=!1,a.addMultiMouseDownListener(this.element,[500,300,300],this,"onMouseDown")}return r.prototype.setVisible=function(u){this.element.style.display=u?"":"none",this.isVisible=u,this.coeff=1},r}();o.implement(s.prototype,c);var l=function(r){function u(h,m){var _=r.call(this,h,"-v")||this;return _.scrollTop=0,_.scrollHeight=0,_.parent=h,_.width=_.VScrollWidth,_.renderer=m,_.inner.style.width=_.element.style.width=(_.width||15)+"px",_.$minWidth=0,_}return b(u,r),u.prototype.onMouseDown=function(h,m){if("mousedown"===h&&0===a.getButton(m)&&2!==m.detail){if(m.target===this.inner){var _=this,M=m.clientY,L=m.clientY,A=this.thumbTop;a.capture(this.inner,function(D){M=D.clientY},function(){clearInterval(O)});var O=setInterval(function(){if(void 0!==M){var D=_.scrollTopFromThumbTop(A+M-L);D!==_.scrollTop&&_._emit("scroll",{data:D})}},20);return a.preventDefault(m)}var E=m.clientY-this.element.getBoundingClientRect().top-this.thumbHeight/2;return this._emit("scroll",{data:this.scrollTopFromThumbTop(E)}),a.preventDefault(m)}},u.prototype.getHeight=function(){return this.height},u.prototype.scrollTopFromThumbTop=function(h){var m=h*(this.pageHeight-this.viewHeight)/(this.slideHeight-this.thumbHeight);return(m>>=0)<0?m=0:m>this.pageHeight-this.viewHeight&&(m=this.pageHeight-this.viewHeight),m},u.prototype.getWidth=function(){return Math.max(this.isVisible?this.width:0,this.$minWidth||0)},u.prototype.setHeight=function(h){this.height=Math.max(0,h),this.slideHeight=this.height,this.viewHeight=this.height,this.setScrollHeight(this.pageHeight,!0)},u.prototype.setScrollHeight=function(h,m){this.pageHeight===h&&!m||(this.pageHeight=h,this.thumbHeight=this.slideHeight*this.viewHeight/this.pageHeight,this.thumbHeight>this.slideHeight&&(this.thumbHeight=this.slideHeight),this.thumbHeight<15&&(this.thumbHeight=15),this.inner.style.height=this.thumbHeight+"px",this.scrollTop>this.pageHeight-this.viewHeight&&(this.scrollTop=this.pageHeight-this.viewHeight,this.scrollTop<0&&(this.scrollTop=0),this._emit("scroll",{data:this.scrollTop})))},u.prototype.setScrollTop=function(h){this.scrollTop=h,h<0&&(h=0),this.thumbTop=h*(this.slideHeight-this.thumbHeight)/(this.pageHeight-this.viewHeight),this.inner.style.top=this.thumbTop+"px"},u}(s);l.prototype.setInnerHeight=l.prototype.setScrollHeight;var d=function(r){function u(h,m){var _=r.call(this,h,"-h")||this;return _.scrollLeft=0,_.scrollWidth=0,_.height=_.HScrollHeight,_.inner.style.height=_.element.style.height=(_.height||12)+"px",_.renderer=m,_}return b(u,r),u.prototype.onMouseDown=function(h,m){if("mousedown"===h&&0===a.getButton(m)&&2!==m.detail){if(m.target===this.inner){var _=this,M=m.clientX,L=m.clientX,A=this.thumbLeft;a.capture(this.inner,function(D){M=D.clientX},function(){clearInterval(O)});var O=setInterval(function(){if(void 0!==M){var D=_.scrollLeftFromThumbLeft(A+M-L);D!==_.scrollLeft&&_._emit("scroll",{data:D})}},20);return a.preventDefault(m)}var E=m.clientX-this.element.getBoundingClientRect().left-this.thumbWidth/2;return this._emit("scroll",{data:this.scrollLeftFromThumbLeft(E)}),a.preventDefault(m)}},u.prototype.getHeight=function(){return this.isVisible?this.height:0},u.prototype.scrollLeftFromThumbLeft=function(h){var m=h*(this.pageWidth-this.viewWidth)/(this.slideWidth-this.thumbWidth);return(m>>=0)<0?m=0:m>this.pageWidth-this.viewWidth&&(m=this.pageWidth-this.viewWidth),m},u.prototype.setWidth=function(h){this.width=Math.max(0,h),this.element.style.width=this.width+"px",this.slideWidth=this.width,this.viewWidth=this.width,this.setScrollWidth(this.pageWidth,!0)},u.prototype.setScrollWidth=function(h,m){this.pageWidth===h&&!m||(this.pageWidth=h,this.thumbWidth=this.slideWidth*this.viewWidth/this.pageWidth,this.thumbWidth>this.slideWidth&&(this.thumbWidth=this.slideWidth),this.thumbWidth<15&&(this.thumbWidth=15),this.inner.style.width=this.thumbWidth+"px",this.scrollLeft>this.pageWidth-this.viewWidth&&(this.scrollLeft=this.pageWidth-this.viewWidth,this.scrollLeft<0&&(this.scrollLeft=0),this._emit("scroll",{data:this.scrollLeft})))},u.prototype.setScrollLeft=function(h){this.scrollLeft=h,h<0&&(h=0),this.thumbLeft=h*(this.slideWidth-this.thumbWidth)/(this.pageWidth-this.viewWidth),this.inner.style.left=this.thumbLeft+"px"},u}(s);d.prototype.setInnerWidth=d.prototype.setScrollWidth,p.ScrollBar=l,p.ScrollBarV=l,p.ScrollBarH=d,p.VScrollBar=l,p.HScrollBar=d}),ace.define("ace/renderloop",["require","exports","module","ace/lib/event"],function(n,p,C){"use strict";var b=n("./lib/event"),o=function(){function v(a,c){this.onRender=a,this.pending=!1,this.changes=0,this.$recursionLimit=2,this.window=c||window;var s=this;this._flush=function(l){s.pending=!1;var d=s.changes;if(d&&(b.blockIdle(100),s.changes=0,s.onRender(d)),s.changes){if(s.$recursionLimit--<0)return;s.schedule()}else s.$recursionLimit=2}}return v.prototype.schedule=function(a){this.changes=this.changes|a,this.changes&&!this.pending&&(b.nextFrame(this._flush),this.pending=!0)},v.prototype.clear=function(a){var c=this.changes;return this.changes=0,c},v}();p.RenderLoop=o}),ace.define("ace/layer/font_metrics",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/lib/event","ace/lib/useragent","ace/lib/event_emitter"],function(n,p,C){var b=n("../lib/oop"),o=n("../lib/dom"),v=n("../lib/lang"),a=n("../lib/event"),c=n("../lib/useragent"),s=n("../lib/event_emitter").EventEmitter,l=512,d="function"==typeof ResizeObserver,r=200,u=function(){function h(m){this.el=o.createElement("div"),this.$setMeasureNodeStyles(this.el.style,!0),this.$main=o.createElement("div"),this.$setMeasureNodeStyles(this.$main.style),this.$measureNode=o.createElement("div"),this.$setMeasureNodeStyles(this.$measureNode.style),this.el.appendChild(this.$main),this.el.appendChild(this.$measureNode),m.appendChild(this.el),this.$measureNode.textContent=v.stringRepeat("X",l),this.$characterSize={width:0,height:0},d?this.$addObserver():this.checkForSizeChanges()}return h.prototype.$setMeasureNodeStyles=function(m,_){m.width=m.height="auto",m.left=m.top="0px",m.visibility="hidden",m.position="absolute",m.whiteSpace="pre",c.isIE<8?m["font-family"]="inherit":m.font="inherit",m.overflow=_?"hidden":"visible"},h.prototype.checkForSizeChanges=function(m){if(void 0===m&&(m=this.$measureSizes()),m&&(this.$characterSize.width!==m.width||this.$characterSize.height!==m.height)){this.$measureNode.style.fontWeight="bold";var _=this.$measureSizes();this.$measureNode.style.fontWeight="",this.$characterSize=m,this.charSizes=Object.create(null),this.allowBoldFonts=_&&_.width===m.width&&_.height===m.height,this._emit("changeCharacterSize",{data:m})}},h.prototype.$addObserver=function(){var m=this;this.$observer=new window.ResizeObserver(function(_){m.checkForSizeChanges()}),this.$observer.observe(this.$measureNode)},h.prototype.$pollSizeChanges=function(){if(this.$pollSizeChangesTimer||this.$observer)return this.$pollSizeChangesTimer;var m=this;return this.$pollSizeChangesTimer=a.onIdle(function _(){m.checkForSizeChanges(),a.onIdle(_,500)},500)},h.prototype.setPolling=function(m){m?this.$pollSizeChanges():this.$pollSizeChangesTimer&&(clearInterval(this.$pollSizeChangesTimer),this.$pollSizeChangesTimer=0)},h.prototype.$measureSizes=function(m){var _={height:(m||this.$measureNode).clientHeight,width:(m||this.$measureNode).clientWidth/l};return 0===_.width||0===_.height?null:_},h.prototype.$measureCharWidth=function(m){return this.$main.textContent=v.stringRepeat(m,l),this.$main.getBoundingClientRect().width/l},h.prototype.getCharacterWidth=function(m){var _=this.charSizes[m];return void 0===_&&(_=this.charSizes[m]=this.$measureCharWidth(m)/this.$characterSize.width),_},h.prototype.destroy=function(){clearInterval(this.$pollSizeChangesTimer),this.$observer&&this.$observer.disconnect(),this.el&&this.el.parentNode&&this.el.parentNode.removeChild(this.el)},h.prototype.$getZoom=function(m){return m&&m.parentElement?(window.getComputedStyle(m).zoom||1)*this.$getZoom(m.parentElement):1},h.prototype.$initTransformMeasureNodes=function(){var m=function(_,M){return["div",{style:"position: absolute;top:"+_+"px;left:"+M+"px;"}]};this.els=o.buildDom([m(0,0),m(r,0),m(0,r),m(r,r)],this.el)},h.prototype.transformCoordinates=function(m,_){function x(me,$,q){var Q=me[1]*$[0]-me[0]*$[1];return[(-$[1]*q[0]+$[0]*q[1])/Q,(+me[1]*q[0]-me[0]*q[1])/Q]}function w(me,$){return[me[0]-$[0],me[1]-$[1]]}function L(me,$){return[me[0]+$[0],me[1]+$[1]]}function A(me,$){return[me*$[0],me*$[1]]}function T(me){var $=me.getBoundingClientRect();return[$.left,$.top]}m&&(m=A(1/this.$getZoom(this.el),m)),this.els||this.$initTransformMeasureNodes();var O=T(this.els[0]),E=T(this.els[1]),D=T(this.els[2]),R=T(this.els[3]),j=x(w(R,E),w(R,D),w(L(E,D),L(R,O))),N=A(1+j[0],w(E,O)),S=A(1+j[1],w(D,O));if(_){var k=_,F=j[0]*k[0]/r+j[1]*k[1]/r+1,Y=L(A(k[0],N),A(k[1],S));return L(A(1/F/r,Y),O)}var se=w(m,O),ne=x(w(N,A(j[0],se)),w(S,A(j[1],se)),se);return A(r,ne)},h}();u.prototype.$characterSize={width:0,height:0},b.implement(u.prototype,s),p.FontMetrics=u}),ace.define("ace/css/editor-css",["require","exports","module"],function(n,p,C){C.exports='\n.ace_br1 {border-top-left-radius : 3px;}\n.ace_br2 {border-top-right-radius : 3px;}\n.ace_br3 {border-top-left-radius : 3px; border-top-right-radius: 3px;}\n.ace_br4 {border-bottom-right-radius: 3px;}\n.ace_br5 {border-top-left-radius : 3px; border-bottom-right-radius: 3px;}\n.ace_br6 {border-top-right-radius : 3px; border-bottom-right-radius: 3px;}\n.ace_br7 {border-top-left-radius : 3px; border-top-right-radius: 3px; border-bottom-right-radius: 3px;}\n.ace_br8 {border-bottom-left-radius : 3px;}\n.ace_br9 {border-top-left-radius : 3px; border-bottom-left-radius: 3px;}\n.ace_br10{border-top-right-radius : 3px; border-bottom-left-radius: 3px;}\n.ace_br11{border-top-left-radius : 3px; border-top-right-radius: 3px; border-bottom-left-radius: 3px;}\n.ace_br12{border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;}\n.ace_br13{border-top-left-radius : 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;}\n.ace_br14{border-top-right-radius : 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;}\n.ace_br15{border-top-left-radius : 3px; border-top-right-radius: 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;}\n\n\n.ace_editor {\n position: relative;\n overflow: hidden;\n padding: 0;\n font: 12px/normal \'Monaco\', \'Menlo\', \'Ubuntu Mono\', \'Consolas\', \'Source Code Pro\', \'source-code-pro\', monospace;\n direction: ltr;\n text-align: left;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\n\n.ace_scroller {\n position: absolute;\n overflow: hidden;\n top: 0;\n bottom: 0;\n background-color: inherit;\n -ms-user-select: none;\n -moz-user-select: none;\n -webkit-user-select: none;\n user-select: none;\n cursor: text;\n}\n\n.ace_content {\n position: absolute;\n box-sizing: border-box;\n min-width: 100%;\n contain: style size layout;\n font-variant-ligatures: no-common-ligatures;\n}\n\n.ace_keyboard-focus:focus {\n box-shadow: inset 0 0 0 2px #5E9ED6;\n outline: none;\n}\n\n.ace_dragging .ace_scroller:before{\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n content: \'\';\n background: rgba(250, 250, 250, 0.01);\n z-index: 1000;\n}\n.ace_dragging.ace_dark .ace_scroller:before{\n background: rgba(0, 0, 0, 0.01);\n}\n\n.ace_gutter {\n position: absolute;\n overflow : hidden;\n width: auto;\n top: 0;\n bottom: 0;\n left: 0;\n cursor: default;\n z-index: 4;\n -ms-user-select: none;\n -moz-user-select: none;\n -webkit-user-select: none;\n user-select: none;\n contain: style size layout;\n}\n\n.ace_gutter-active-line {\n position: absolute;\n left: 0;\n right: 0;\n}\n\n.ace_scroller.ace_scroll-left:after {\n content: "";\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n box-shadow: 17px 0 16px -16px rgba(0, 0, 0, 0.4) inset;\n pointer-events: none;\n}\n\n.ace_gutter-cell, .ace_gutter-cell_svg-icons {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n padding-left: 19px;\n padding-right: 6px;\n background-repeat: no-repeat;\n}\n\n.ace_gutter-cell_svg-icons .ace_gutter_annotation {\n margin-left: -14px;\n float: left;\n}\n\n.ace_gutter-cell .ace_gutter_annotation {\n margin-left: -19px;\n float: left;\n}\n\n.ace_gutter-cell.ace_error, .ace_icon.ace_error, .ace_icon.ace_error_fold {\n background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAABOFBMVEX/////////QRswFAb/Ui4wFAYwFAYwFAaWGAfDRymzOSH/PxswFAb/SiUwFAYwFAbUPRvjQiDllog5HhHdRybsTi3/Tyv9Tir+Syj/UC3////XurebMBIwFAb/RSHbPx/gUzfdwL3kzMivKBAwFAbbvbnhPx66NhowFAYwFAaZJg8wFAaxKBDZurf/RB6mMxb/SCMwFAYwFAbxQB3+RB4wFAb/Qhy4Oh+4QifbNRcwFAYwFAYwFAb/QRzdNhgwFAYwFAbav7v/Uy7oaE68MBK5LxLewr/r2NXewLswFAaxJw4wFAbkPRy2PyYwFAaxKhLm1tMwFAazPiQwFAaUGAb/QBrfOx3bvrv/VC/maE4wFAbRPBq6MRO8Qynew8Dp2tjfwb0wFAbx6eju5+by6uns4uH9/f36+vr/GkHjAAAAYnRSTlMAGt+64rnWu/bo8eAA4InH3+DwoN7j4eLi4xP99Nfg4+b+/u9B/eDs1MD1mO7+4PHg2MXa347g7vDizMLN4eG+Pv7i5evs/v79yu7S3/DV7/498Yv24eH+4ufQ3Ozu/v7+y13sRqwAAADLSURBVHjaZc/XDsFgGIBhtDrshlitmk2IrbHFqL2pvXf/+78DPokj7+Fz9qpU/9UXJIlhmPaTaQ6QPaz0mm+5gwkgovcV6GZzd5JtCQwgsxoHOvJO15kleRLAnMgHFIESUEPmawB9ngmelTtipwwfASilxOLyiV5UVUyVAfbG0cCPHig+GBkzAENHS0AstVF6bacZIOzgLmxsHbt2OecNgJC83JERmePUYq8ARGkJx6XtFsdddBQgZE2nPR6CICZhawjA4Fb/chv+399kfR+MMMDGOQAAAABJRU5ErkJggg==");\n background-repeat: no-repeat;\n background-position: 2px center;\n}\n\n.ace_gutter-cell.ace_warning, .ace_icon.ace_warning, .ace_icon.ace_warning_fold {\n background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAmVBMVEX///8AAAD///8AAAAAAABPSzb/5sAAAAB/blH/73z/ulkAAAAAAAD85pkAAAAAAAACAgP/vGz/rkDerGbGrV7/pkQICAf////e0IsAAAD/oED/qTvhrnUAAAD/yHD/njcAAADuv2r/nz//oTj/p064oGf/zHAAAAA9Nir/tFIAAAD/tlTiuWf/tkIAAACynXEAAAAAAAAtIRW7zBpBAAAAM3RSTlMAABR1m7RXO8Ln31Z36zT+neXe5OzooRDfn+TZ4p3h2hTf4t3k3ucyrN1K5+Xaks52Sfs9CXgrAAAAjklEQVR42o3PbQ+CIBQFYEwboPhSYgoYunIqqLn6/z8uYdH8Vmdnu9vz4WwXgN/xTPRD2+sgOcZjsge/whXZgUaYYvT8QnuJaUrjrHUQreGczuEafQCO/SJTufTbroWsPgsllVhq3wJEk2jUSzX3CUEDJC84707djRc5MTAQxoLgupWRwW6UB5fS++NV8AbOZgnsC7BpEAAAAABJRU5ErkJggg==");\n background-repeat: no-repeat;\n background-position: 2px center;\n}\n\n.ace_gutter-cell.ace_info, .ace_icon.ace_info {\n background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAAAAAA6mKC9AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAAJ0Uk5TAAB2k804AAAAPklEQVQY02NgIB68QuO3tiLznjAwpKTgNyDbMegwisCHZUETUZV0ZqOquBpXj2rtnpSJT1AEnnRmL2OgGgAAIKkRQap2htgAAAAASUVORK5CYII=");\n background-repeat: no-repeat;\n background-position: 2px center;\n}\n.ace_dark .ace_gutter-cell.ace_info, .ace_dark .ace_icon.ace_info {\n background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAAJFBMVEUAAAChoaGAgIAqKiq+vr6tra1ZWVmUlJSbm5s8PDxubm56enrdgzg3AAAAAXRSTlMAQObYZgAAAClJREFUeNpjYMAPdsMYHegyJZFQBlsUlMFVCWUYKkAZMxZAGdxlDMQBAG+TBP4B6RyJAAAAAElFTkSuQmCC");\n}\n\n.ace_icon_svg.ace_error {\n -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAxNiI+CjxnIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlPSJyZWQiIHNoYXBlLXJlbmRlcmluZz0iZ2VvbWV0cmljUHJlY2lzaW9uIj4KPGNpcmNsZSBmaWxsPSJub25lIiBjeD0iOCIgY3k9IjgiIHI9IjciIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KPGxpbmUgeDE9IjExIiB5MT0iNSIgeDI9IjUiIHkyPSIxMSIvPgo8bGluZSB4MT0iMTEiIHkxPSIxMSIgeDI9IjUiIHkyPSI1Ii8+CjwvZz4KPC9zdmc+");\n background-color: crimson;\n}\n.ace_icon_svg.ace_warning {\n -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAxNiI+CjxnIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlPSJkYXJrb3JhbmdlIiBzaGFwZS1yZW5kZXJpbmc9Imdlb21ldHJpY1ByZWNpc2lvbiI+Cjxwb2x5Z29uIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGZpbGw9Im5vbmUiIHBvaW50cz0iOCAxIDE1IDE1IDEgMTUgOCAxIi8+CjxyZWN0IHg9IjgiIHk9IjEyIiB3aWR0aD0iMC4wMSIgaGVpZ2h0PSIwLjAxIi8+CjxsaW5lIHgxPSI4IiB5MT0iNiIgeDI9IjgiIHkyPSIxMCIvPgo8L2c+Cjwvc3ZnPg==");\n background-color: darkorange;\n}\n.ace_icon_svg.ace_info {\n -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAxNiI+CjxnIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlPSJibHVlIiBzaGFwZS1yZW5kZXJpbmc9Imdlb21ldHJpY1ByZWNpc2lvbiI+CjxjaXJjbGUgZmlsbD0ibm9uZSIgY3g9IjgiIGN5PSI4IiByPSI3IiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+Cjxwb2x5bGluZSBwb2ludHM9IjggMTEgOCA4Ii8+Cjxwb2x5bGluZSBwb2ludHM9IjkgOCA2IDgiLz4KPGxpbmUgeDE9IjEwIiB5MT0iMTEiIHgyPSI2IiB5Mj0iMTEiLz4KPHJlY3QgeD0iOCIgeT0iNSIgd2lkdGg9IjAuMDEiIGhlaWdodD0iMC4wMSIvPgo8L2c+Cjwvc3ZnPg==");\n background-color: royalblue;\n}\n\n.ace_icon_svg.ace_error_fold {\n -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAxNiIgZmlsbD0ibm9uZSI+CiAgPHBhdGggZD0ibSAxOC45Mjk4NTEsNy44Mjk4MDc2IGMgMC4xNDYzNTMsNi4zMzc0NjA0IC02LjMyMzE0Nyw3Ljc3Nzg0NDQgLTcuNDc3OTEyLDcuNzc3ODQ0NCAtMi4xMDcyNzI2LC0wLjEyODc1IDUuMTE3Njc4LDAuMzU2MjQ5IDUuMDUxNjk4LC03Ljg3MDA2MTggLTAuNjA0NjcyLC04LjAwMzk3MzQ5IC03LjA3NzI3MDYsLTcuNTYzMTE4OSAtNC44NTczLC03LjQzMDM5NTU2IDEuNjA2LC0wLjExNTE0MjI1IDYuODk3NDg1LDEuMjYyNTQ1OTYgNy4yODM1MTQsNy41MjI2MTI5NiB6IiBmaWxsPSJjcmltc29uIiBzdHJva2Utd2lkdGg9IjIiLz4KICA8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0ibSA4LjExNDc1NjIsMi4wNTI5ODI4IGMgMy4zNDkxNjk4LDAgNi4wNjQxMzI4LDIuNjc2ODYyNyA2LjA2NDEzMjgsNS45Nzg5NTMgMCwzLjMwMjExMjIgLTIuNzE0OTYzLDUuOTc4OTIwMiAtNi4wNjQxMzI4LDUuOTc4OTIwMiAtMy4zNDkxNDczLDAgLTYuMDY0MTc3MiwtMi42NzY4MDggLTYuMDY0MTc3MiwtNS45Nzg5MjAyIDAuMDA1MzksLTMuMjk5ODg2MSAyLjcxNzI2NTYsLTUuOTczNjQwOCA2LjA2NDE3NzIsLTUuOTc4OTUzIHogbSAwLC0xLjczNTgyNzE5IGMgLTQuMzIxNDgzNiwwIC03LjgyNDc0MDM4LDMuNDU0MDE4NDkgLTcuODI0NzQwMzgsNy43MTQ3ODAxOSAwLDQuMjYwNzI4MiAzLjUwMzI1Njc4LDcuNzE0NzQ1MiA3LjgyNDc0MDM4LDcuNzE0NzQ1MiA0LjMyMTQ0OTgsMCA3LjgyNDY5OTgsLTMuNDU0MDE3IDcuODI0Njk5OCwtNy43MTQ3NDUyIDAsLTIuMDQ2MDkxNCAtMC44MjQzOTIsLTQuMDA4MzY3MiAtMi4yOTE3NTYsLTUuNDU1MTc0NiBDIDEyLjE4MDIyNSwxLjEyOTk2NDggMTAuMTkwMDEzLDAuMzE3MTU1NjEgOC4xMTQ3NTYyLDAuMzE3MTU1NjEgWiBNIDYuOTM3NDU2Myw4LjI0MDU5ODUgNC42NzE4Njg1LDEwLjQ4NTg1MiA2LjAwODY4MTQsMTEuODc2NzI4IDguMzE3MDAzNSw5LjYwMDc5MTEgMTAuNjI1MzM3LDExLjg3NjcyOCAxMS45NjIxMzgsMTAuNDg1ODUyIDkuNjk2NTUwOCw4LjI0MDU5ODUgMTEuOTYyMTM4LDYuMDA2ODA2NiAxMC41NzMyNDYsNC42Mzc0MzM1IDguMzE3MDAzNSw2Ljg3MzQyOTcgNi4wNjA3NjA3LDQuNjM3NDMzNSA0LjY3MTg2ODUsNi4wMDY4MDY2IFoiIGZpbGw9ImNyaW1zb24iIHN0cm9rZS13aWR0aD0iMiIvPgo8L3N2Zz4=");\n background-color: crimson;\n}\n.ace_icon_svg.ace_warning_fold {\n -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAyMCAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xNC43NzY5IDE0LjczMzdMOC42NTE5MiAyLjQ4MzY5QzguMzI5NDYgMS44Mzg3NyA3LjQwOTEzIDEuODM4NzcgNy4wODY2NyAyLjQ4MzY5TDAuOTYxNjY5IDE0LjczMzdDMC42NzA3NzUgMTUuMzE1NSAxLjA5MzgzIDE2IDEuNzQ0MjkgMTZIMTMuOTk0M0MxNC42NDQ4IDE2IDE1LjA2NzggMTUuMzE1NSAxNC43NzY5IDE0LjczMzdaTTMuMTYwMDcgMTQuMjVMNy44NjkyOSA0LjgzMTU2TDEyLjU3ODUgMTQuMjVIMy4xNjAwN1pNOC43NDQyOSAxMS42MjVWMTMuMzc1SDYuOTk0MjlWMTEuNjI1SDguNzQ0MjlaTTYuOTk0MjkgMTAuNzVWNy4yNUg4Ljc0NDI5VjEwLjc1SDYuOTk0MjlaIiBmaWxsPSIjRUM3MjExIi8+CjxwYXRoIGQ9Ik0xMS4xOTkxIDIuOTUyMzhDMTAuODgwOSAyLjMxNDY3IDEwLjM1MzcgMS44MDUyNiA5LjcwNTUgMS41MDlMMTEuMDQxIDEuMDY5NzhDMTEuNjg4MyAwLjk0OTgxNCAxMi4zMzcgMS4yNzI2MyAxMi42MzE3IDEuODYxNDFMMTcuNjEzNiAxMS44MTYxQzE4LjM1MjcgMTMuMjkyOSAxNy41OTM4IDE1LjA4MDQgMTYuMDE4IDE1LjU3NDVDMTYuNDA0NCAxNC40NTA3IDE2LjMyMzEgMTMuMjE4OCAxNS43OTI0IDEyLjE1NTVMMTEuMTk5MSAyLjk1MjM4WiIgZmlsbD0iI0VDNzIxMSIvPgo8L3N2Zz4=");\n background-color: darkorange;\n}\n\n.ace_scrollbar {\n contain: strict;\n position: absolute;\n right: 0;\n bottom: 0;\n z-index: 6;\n}\n\n.ace_scrollbar-inner {\n position: absolute;\n cursor: text;\n left: 0;\n top: 0;\n}\n\n.ace_scrollbar-v{\n overflow-x: hidden;\n overflow-y: scroll;\n top: 0;\n}\n\n.ace_scrollbar-h {\n overflow-x: scroll;\n overflow-y: hidden;\n left: 0;\n}\n\n.ace_print-margin {\n position: absolute;\n height: 100%;\n}\n\n.ace_text-input {\n position: absolute;\n z-index: 0;\n width: 0.5em;\n height: 1em;\n opacity: 0;\n background: transparent;\n -moz-appearance: none;\n appearance: none;\n border: none;\n resize: none;\n outline: none;\n overflow: hidden;\n font: inherit;\n padding: 0 1px;\n margin: 0 -1px;\n contain: strict;\n -ms-user-select: text;\n -moz-user-select: text;\n -webkit-user-select: text;\n user-select: text;\n /*with `pre-line` chrome inserts   instead of space*/\n white-space: pre!important;\n}\n.ace_text-input.ace_composition {\n background: transparent;\n color: inherit;\n z-index: 1000;\n opacity: 1;\n}\n.ace_composition_placeholder { color: transparent }\n.ace_composition_marker { \n border-bottom: 1px solid;\n position: absolute;\n border-radius: 0;\n margin-top: 1px;\n}\n\n[ace_nocontext=true] {\n transform: none!important;\n filter: none!important;\n clip-path: none!important;\n mask : none!important;\n contain: none!important;\n perspective: none!important;\n mix-blend-mode: initial!important;\n z-index: auto;\n}\n\n.ace_layer {\n z-index: 1;\n position: absolute;\n overflow: hidden;\n /* workaround for chrome bug https://github.com/ajaxorg/ace/issues/2312*/\n word-wrap: normal;\n white-space: pre;\n height: 100%;\n width: 100%;\n box-sizing: border-box;\n /* setting pointer-events: auto; on node under the mouse, which changes\n during scroll, will break mouse wheel scrolling in Safari */\n pointer-events: none;\n}\n\n.ace_gutter-layer {\n position: relative;\n width: auto;\n text-align: right;\n pointer-events: auto;\n height: 1000000px;\n contain: style size layout;\n}\n\n.ace_text-layer {\n font: inherit !important;\n position: absolute;\n height: 1000000px;\n width: 1000000px;\n contain: style size layout;\n}\n\n.ace_text-layer > .ace_line, .ace_text-layer > .ace_line_group {\n contain: style size layout;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n}\n\n.ace_hidpi .ace_text-layer,\n.ace_hidpi .ace_gutter-layer,\n.ace_hidpi .ace_content,\n.ace_hidpi .ace_gutter {\n contain: strict;\n}\n.ace_hidpi .ace_text-layer > .ace_line, \n.ace_hidpi .ace_text-layer > .ace_line_group {\n contain: strict;\n}\n\n.ace_cjk {\n display: inline-block;\n text-align: center;\n}\n\n.ace_cursor-layer {\n z-index: 4;\n}\n\n.ace_cursor {\n z-index: 4;\n position: absolute;\n box-sizing: border-box;\n border-left: 2px solid;\n /* workaround for smooth cursor repaintng whole screen in chrome */\n transform: translatez(0);\n}\n\n.ace_multiselect .ace_cursor {\n border-left-width: 1px;\n}\n\n.ace_slim-cursors .ace_cursor {\n border-left-width: 1px;\n}\n\n.ace_overwrite-cursors .ace_cursor {\n border-left-width: 0;\n border-bottom: 1px solid;\n}\n\n.ace_hidden-cursors .ace_cursor {\n opacity: 0.2;\n}\n\n.ace_hasPlaceholder .ace_hidden-cursors .ace_cursor {\n opacity: 0;\n}\n\n.ace_smooth-blinking .ace_cursor {\n transition: opacity 0.18s;\n}\n\n.ace_animate-blinking .ace_cursor {\n animation-duration: 1000ms;\n animation-timing-function: step-end;\n animation-name: blink-ace-animate;\n animation-iteration-count: infinite;\n}\n\n.ace_animate-blinking.ace_smooth-blinking .ace_cursor {\n animation-duration: 1000ms;\n animation-timing-function: ease-in-out;\n animation-name: blink-ace-animate-smooth;\n}\n \n@keyframes blink-ace-animate {\n from, to { opacity: 1; }\n 60% { opacity: 0; }\n}\n\n@keyframes blink-ace-animate-smooth {\n from, to { opacity: 1; }\n 45% { opacity: 1; }\n 60% { opacity: 0; }\n 85% { opacity: 0; }\n}\n\n.ace_marker-layer .ace_step, .ace_marker-layer .ace_stack {\n position: absolute;\n z-index: 3;\n}\n\n.ace_marker-layer .ace_selection {\n position: absolute;\n z-index: 5;\n}\n\n.ace_marker-layer .ace_bracket {\n position: absolute;\n z-index: 6;\n}\n\n.ace_marker-layer .ace_error_bracket {\n position: absolute;\n border-bottom: 1px solid #DE5555;\n border-radius: 0;\n}\n\n.ace_marker-layer .ace_active-line {\n position: absolute;\n z-index: 2;\n}\n\n.ace_marker-layer .ace_selected-word {\n position: absolute;\n z-index: 4;\n box-sizing: border-box;\n}\n\n.ace_line .ace_fold {\n box-sizing: border-box;\n\n display: inline-block;\n height: 11px;\n margin-top: -2px;\n vertical-align: middle;\n\n background-image:\n url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAJCAYAAADU6McMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJpJREFUeNpi/P//PwOlgAXGYGRklAVSokD8GmjwY1wasKljQpYACtpCFeADcHVQfQyMQAwzwAZI3wJKvCLkfKBaMSClBlR7BOQikCFGQEErIH0VqkabiGCAqwUadAzZJRxQr/0gwiXIal8zQQPnNVTgJ1TdawL0T5gBIP1MUJNhBv2HKoQHHjqNrA4WO4zY0glyNKLT2KIfIMAAQsdgGiXvgnYAAAAASUVORK5CYII="),\n url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAA3CAYAAADNNiA5AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAACJJREFUeNpi+P//fxgTAwPDBxDxD078RSX+YeEyDFMCIMAAI3INmXiwf2YAAAAASUVORK5CYII=");\n background-repeat: no-repeat, repeat-x;\n background-position: center center, top left;\n color: transparent;\n\n border: 1px solid black;\n border-radius: 2px;\n\n cursor: pointer;\n pointer-events: auto;\n}\n\n.ace_dark .ace_fold {\n}\n\n.ace_fold:hover{\n background-image:\n url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAJCAYAAADU6McMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJpJREFUeNpi/P//PwOlgAXGYGRklAVSokD8GmjwY1wasKljQpYACtpCFeADcHVQfQyMQAwzwAZI3wJKvCLkfKBaMSClBlR7BOQikCFGQEErIH0VqkabiGCAqwUadAzZJRxQr/0gwiXIal8zQQPnNVTgJ1TdawL0T5gBIP1MUJNhBv2HKoQHHjqNrA4WO4zY0glyNKLT2KIfIMAAQsdgGiXvgnYAAAAASUVORK5CYII="),\n url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAA3CAYAAADNNiA5AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAACBJREFUeNpi+P//fz4TAwPDZxDxD5X4i5fLMEwJgAADAEPVDbjNw87ZAAAAAElFTkSuQmCC");\n}\n\n.ace_tooltip {\n background-color: #f5f5f5;\n border: 1px solid gray;\n border-radius: 1px;\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);\n color: black;\n max-width: 100%;\n padding: 3px 4px;\n position: fixed;\n z-index: 999999;\n box-sizing: border-box;\n cursor: default;\n white-space: pre;\n word-wrap: break-word;\n line-height: normal;\n font-style: normal;\n font-weight: normal;\n letter-spacing: normal;\n pointer-events: none;\n}\n\n.ace_tooltip.ace_dark {\n background-color: #636363;\n color: #fff;\n}\n\n.ace_tooltip:focus {\n outline: 1px solid #5E9ED6;\n}\n\n.ace_icon {\n display: inline-block;\n width: 18px;\n vertical-align: top;\n}\n\n.ace_icon_svg {\n display: inline-block;\n width: 12px;\n vertical-align: top;\n -webkit-mask-repeat: no-repeat;\n -webkit-mask-size: 12px;\n -webkit-mask-position: center;\n}\n\n.ace_folding-enabled > .ace_gutter-cell, .ace_folding-enabled > .ace_gutter-cell_svg-icons {\n padding-right: 13px;\n}\n\n.ace_fold-widget {\n box-sizing: border-box;\n\n margin: 0 -12px 0 1px;\n display: none;\n width: 11px;\n vertical-align: top;\n\n background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAANElEQVR42mWKsQ0AMAzC8ixLlrzQjzmBiEjp0A6WwBCSPgKAXoLkqSot7nN3yMwR7pZ32NzpKkVoDBUxKAAAAABJRU5ErkJggg==");\n background-repeat: no-repeat;\n background-position: center;\n\n border-radius: 3px;\n \n border: 1px solid transparent;\n cursor: pointer;\n}\n\n.ace_folding-enabled .ace_fold-widget {\n display: inline-block; \n}\n\n.ace_fold-widget.ace_end {\n background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAANElEQVR42m3HwQkAMAhD0YzsRchFKI7sAikeWkrxwScEB0nh5e7KTPWimZki4tYfVbX+MNl4pyZXejUO1QAAAABJRU5ErkJggg==");\n}\n\n.ace_fold-widget.ace_closed {\n background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAAGCAYAAAAG5SQMAAAAOUlEQVR42jXKwQkAMAgDwKwqKD4EwQ26sSOkVWjgIIHAzPiCgaqiqnJHZnKICBERHN194O5b9vbLuAVRL+l0YWnZAAAAAElFTkSuQmCCXA==");\n}\n\n.ace_fold-widget:hover {\n border: 1px solid rgba(0, 0, 0, 0.3);\n background-color: rgba(255, 255, 255, 0.2);\n box-shadow: 0 1px 1px rgba(255, 255, 255, 0.7);\n}\n\n.ace_fold-widget:active {\n border: 1px solid rgba(0, 0, 0, 0.4);\n background-color: rgba(0, 0, 0, 0.05);\n box-shadow: 0 1px 1px rgba(255, 255, 255, 0.8);\n}\n/**\n * Dark version for fold widgets\n */\n.ace_dark .ace_fold-widget {\n background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHklEQVQIW2P4//8/AzoGEQ7oGCaLLAhWiSwB146BAQCSTPYocqT0AAAAAElFTkSuQmCC");\n}\n.ace_dark .ace_fold-widget.ace_end {\n background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAH0lEQVQIW2P4//8/AxQ7wNjIAjDMgC4AxjCVKBirIAAF0kz2rlhxpAAAAABJRU5ErkJggg==");\n}\n.ace_dark .ace_fold-widget.ace_closed {\n background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAAFCAYAAACAcVaiAAAAHElEQVQIW2P4//+/AxAzgDADlOOAznHAKgPWAwARji8UIDTfQQAAAABJRU5ErkJggg==");\n}\n.ace_dark .ace_fold-widget:hover {\n box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2);\n background-color: rgba(255, 255, 255, 0.1);\n}\n.ace_dark .ace_fold-widget:active {\n box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2);\n}\n\n.ace_inline_button {\n border: 1px solid lightgray;\n display: inline-block;\n margin: -1px 8px;\n padding: 0 5px;\n pointer-events: auto;\n cursor: pointer;\n}\n.ace_inline_button:hover {\n border-color: gray;\n background: rgba(200,200,200,0.2);\n display: inline-block;\n pointer-events: auto;\n}\n\n.ace_fold-widget.ace_invalid {\n background-color: #FFB4B4;\n border-color: #DE5555;\n}\n\n.ace_fade-fold-widgets .ace_fold-widget {\n transition: opacity 0.4s ease 0.05s;\n opacity: 0;\n}\n\n.ace_fade-fold-widgets:hover .ace_fold-widget {\n transition: opacity 0.05s ease 0.05s;\n opacity:1;\n}\n\n.ace_underline {\n text-decoration: underline;\n}\n\n.ace_bold {\n font-weight: bold;\n}\n\n.ace_nobold .ace_bold {\n font-weight: normal;\n}\n\n.ace_italic {\n font-style: italic;\n}\n\n\n.ace_error-marker {\n background-color: rgba(255, 0, 0,0.2);\n position: absolute;\n z-index: 9;\n}\n\n.ace_highlight-marker {\n background-color: rgba(255, 255, 0,0.2);\n position: absolute;\n z-index: 8;\n}\n\n.ace_mobile-menu {\n position: absolute;\n line-height: 1.5;\n border-radius: 4px;\n -ms-user-select: none;\n -moz-user-select: none;\n -webkit-user-select: none;\n user-select: none;\n background: white;\n box-shadow: 1px 3px 2px grey;\n border: 1px solid #dcdcdc;\n color: black;\n}\n.ace_dark > .ace_mobile-menu {\n background: #333;\n color: #ccc;\n box-shadow: 1px 3px 2px grey;\n border: 1px solid #444;\n\n}\n.ace_mobile-button {\n padding: 2px;\n cursor: pointer;\n overflow: hidden;\n}\n.ace_mobile-button:hover {\n background-color: #eee;\n opacity:1;\n}\n.ace_mobile-button:active {\n background-color: #ddd;\n}\n\n.ace_placeholder {\n font-family: arial;\n transform: scale(0.9);\n transform-origin: left;\n white-space: pre;\n opacity: 0.7;\n margin: 0 10px;\n}\n\n.ace_ghost_text {\n opacity: 0.5;\n font-style: italic;\n white-space: pre;\n}'}),ace.define("ace/layer/decorators",["require","exports","module","ace/lib/dom","ace/lib/oop","ace/lib/event_emitter"],function(n,p,C){"use strict";var b=n("../lib/dom"),o=n("../lib/oop"),v=n("../lib/event_emitter").EventEmitter,a=function(){function c(s,l){this.canvas=b.createElement("canvas"),this.renderer=l,this.pixelRatio=1,this.maxHeight=l.layerConfig.maxHeight,this.lineHeight=l.layerConfig.lineHeight,this.canvasHeight=s.parent.scrollHeight,this.heightRatio=this.canvasHeight/this.maxHeight,this.canvasWidth=s.width,this.minDecorationHeight=2*this.pixelRatio|0,this.halfMinDecorationHeight=this.minDecorationHeight/2|0,this.canvas.width=this.canvasWidth,this.canvas.height=this.canvasHeight,this.canvas.style.top="0px",this.canvas.style.right="0px",this.canvas.style.zIndex="7px",this.canvas.style.position="absolute",this.colors={},this.colors.dark={error:"rgba(255, 18, 18, 1)",warning:"rgba(18, 136, 18, 1)",info:"rgba(18, 18, 136, 1)"},this.colors.light={error:"rgb(255,51,51)",warning:"rgb(32,133,72)",info:"rgb(35,68,138)"},s.element.appendChild(this.canvas)}return c.prototype.$updateDecorators=function(s){var l=!0===this.renderer.theme.isDark?this.colors.dark:this.colors.light;s&&(this.maxHeight=s.maxHeight,this.lineHeight=s.lineHeight,this.canvasHeight=s.height,this.heightRatio=(s.lastRow+1)*this.lineHeightj.priority?1:0});for(var _=this.renderer.session.$foldData,M=0;Mthis.canvasHeight&&(E=this.canvasHeight-this.halfMinDecorationHeight),A=Math.round(E-this.halfMinDecorationHeight),T=Math.round(E+this.halfMinDecorationHeight)}r.fillStyle=l[h[M].type]||null,r.fillRect(0,L,this.canvasWidth,T-A)}}var D=this.renderer.session.selection.getCursor();D&&(w=this.compensateFoldRows(D.row,_),L=Math.round((D.row-w)*this.lineHeight*this.heightRatio),r.fillStyle="rgba(0, 0, 0, 0.5)",r.fillRect(0,L,this.canvasWidth,2))},c.prototype.compensateFoldRows=function(s,l){var d=0;if(l&&l.length>0)for(var r=0;rl[r].start.row&&s=l[r].end.row&&(d+=l[r].end.row-l[r].start.row);return d},c}();o.implement(a.prototype,v),p.Decorator=a}),ace.define("ace/virtual_renderer",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/config","ace/layer/gutter","ace/layer/marker","ace/layer/text","ace/layer/cursor","ace/scrollbar","ace/scrollbar","ace/scrollbar_custom","ace/scrollbar_custom","ace/renderloop","ace/layer/font_metrics","ace/lib/event_emitter","ace/css/editor-css","ace/layer/decorators","ace/lib/useragent"],function(n,p,C){"use strict";var b=n("./lib/oop"),o=n("./lib/dom"),v=n("./lib/lang"),a=n("./config"),c=n("./layer/gutter").Gutter,s=n("./layer/marker").Marker,l=n("./layer/text").Text,d=n("./layer/cursor").Cursor,r=n("./scrollbar").HScrollBar,u=n("./scrollbar").VScrollBar,h=n("./scrollbar_custom").HScrollBar,m=n("./scrollbar_custom").VScrollBar,_=n("./renderloop").RenderLoop,M=n("./layer/font_metrics").FontMetrics,x=n("./lib/event_emitter").EventEmitter,w=n("./css/editor-css"),L=n("./layer/decorators").Decorator,A=n("./lib/useragent");o.importCssString(w,"ace_editor.css",!1);var T=function(){function O(E,D){var R=this;this.container=E||o.createElement("div"),o.addCssClass(this.container,"ace_editor"),o.HI_DPI&&o.addCssClass(this.container,"ace_hidpi"),this.setTheme(D),null==a.get("useStrictCSP")&&a.set("useStrictCSP",!1),this.$gutter=o.createElement("div"),this.$gutter.className="ace_gutter",this.container.appendChild(this.$gutter),this.$gutter.setAttribute("aria-hidden",!0),this.scroller=o.createElement("div"),this.scroller.className="ace_scroller",this.container.appendChild(this.scroller),this.content=o.createElement("div"),this.content.className="ace_content",this.scroller.appendChild(this.content),this.$gutterLayer=new c(this.$gutter),this.$gutterLayer.on("changeGutterWidth",this.onGutterResize.bind(this)),this.$markerBack=new s(this.content);var j=this.$textLayer=new l(this.content);this.canvas=j.element,this.$markerFront=new s(this.content),this.$cursorLayer=new d(this.content),this.$horizScroll=!1,this.$vScroll=!1,this.scrollBar=this.scrollBarV=new u(this.container,this),this.scrollBarH=new r(this.container,this),this.scrollBarV.on("scroll",function(N){R.$scrollAnimation||R.session.setScrollTop(N.data-R.scrollMargin.top)}),this.scrollBarH.on("scroll",function(N){R.$scrollAnimation||R.session.setScrollLeft(N.data-R.scrollMargin.left)}),this.scrollTop=0,this.scrollLeft=0,this.cursorPos={row:0,column:0},this.$fontMetrics=new M(this.container),this.$textLayer.$setFontMetrics(this.$fontMetrics),this.$textLayer.on("changeCharacterSize",function(N){R.updateCharacterSize(),R.onResize(!0,R.gutterWidth,R.$size.width,R.$size.height),R._signal("changeCharacterSize",N)}),this.$size={width:0,height:0,scrollerHeight:0,scrollerWidth:0,$dirty:!0},this.layerConfig={width:1,padding:0,firstRow:0,firstRowScreen:0,lastRow:0,lineHeight:0,characterWidth:0,minHeight:1,maxHeight:1,offset:0,height:1,gutterOffset:1},this.scrollMargin={left:0,right:0,top:0,bottom:0,v:0,h:0},this.margin={left:0,right:0,top:0,bottom:0,v:0,h:0},this.$keepTextAreaAtCursor=!A.isIOS,this.$loop=new _(this.$renderChanges.bind(this),this.container.ownerDocument.defaultView),this.$loop.schedule(this.CHANGE_FULL),this.updateCharacterSize(),this.setPadding(4),this.$addResizeObserver(),a.resetOptions(this),a._signal("renderer",this)}return O.prototype.updateCharacterSize=function(){this.$textLayer.allowBoldFonts!=this.$allowBoldFonts&&(this.$allowBoldFonts=this.$textLayer.allowBoldFonts,this.setStyle("ace_nobold",!this.$allowBoldFonts)),this.layerConfig.characterWidth=this.characterWidth=this.$textLayer.getCharacterWidth(),this.layerConfig.lineHeight=this.lineHeight=this.$textLayer.getLineHeight(),this.$updatePrintMargin(),o.setStyle(this.scroller.style,"line-height",this.lineHeight+"px")},O.prototype.setSession=function(E){this.session&&this.session.doc.off("changeNewLineMode",this.onChangeNewLineMode),this.session=E,E&&this.scrollMargin.top&&E.getScrollTop()<=0&&E.setScrollTop(-this.scrollMargin.top),this.$cursorLayer.setSession(E),this.$markerBack.setSession(E),this.$markerFront.setSession(E),this.$gutterLayer.setSession(E),this.$textLayer.setSession(E),E&&(this.$loop.schedule(this.CHANGE_FULL),this.session.$setFontMetrics(this.$fontMetrics),this.scrollBarH.scrollLeft=this.scrollBarV.scrollTop=null,this.onChangeNewLineMode=this.onChangeNewLineMode.bind(this),this.onChangeNewLineMode(),this.session.doc.on("changeNewLineMode",this.onChangeNewLineMode))},O.prototype.updateLines=function(E,D,R){if(void 0===D&&(D=1/0),this.$changedLines?(this.$changedLines.firstRow>E&&(this.$changedLines.firstRow=E),this.$changedLines.lastRowthis.layerConfig.lastRow||this.$loop.schedule(this.CHANGE_LINES)},O.prototype.onChangeNewLineMode=function(){this.$loop.schedule(this.CHANGE_TEXT),this.$textLayer.$updateEolChar(),this.session.$bidiHandler.setEolChar(this.$textLayer.EOL_CHAR)},O.prototype.onChangeTabSize=function(){this.$loop.schedule(this.CHANGE_TEXT|this.CHANGE_MARKER),this.$textLayer.onChangeTabSize()},O.prototype.updateText=function(){this.$loop.schedule(this.CHANGE_TEXT)},O.prototype.updateFull=function(E){E?this.$renderChanges(this.CHANGE_FULL,!0):this.$loop.schedule(this.CHANGE_FULL)},O.prototype.updateFontSize=function(){this.$textLayer.checkForSizeChanges()},O.prototype.$updateSizeAsync=function(){this.$loop.pending?this.$size.$dirty=!0:this.onResize()},O.prototype.onResize=function(E,D,R,j){if(!(this.resizing>2)){this.resizing>0?this.resizing++:this.resizing=E?1:0;var N=this.container;j||(j=N.clientHeight||N.scrollHeight),R||(R=N.clientWidth||N.scrollWidth);var S=this.$updateCachedSize(E,D,R,j);if(this.$resizeTimer&&this.$resizeTimer.cancel(),!this.$size.scrollerHeight||!R&&!j)return this.resizing=0;E&&(this.$gutterLayer.$padding=null),E?this.$renderChanges(S|this.$changes,!0):this.$loop.schedule(S|this.$changes),this.resizing&&(this.resizing=0),this.scrollBarH.scrollLeft=this.scrollBarV.scrollTop=null,this.$customScrollbar&&this.$updateCustomScrollbar(!0)}},O.prototype.$updateCachedSize=function(E,D,R,j){var N=0,S=this.$size,k={width:S.width,height:S.height,scrollerHeight:S.scrollerHeight,scrollerWidth:S.scrollerWidth};if((j-=this.$extraHeight||0)&&(E||S.height!=j)&&(S.height=j,N|=this.CHANGE_SIZE,S.scrollerHeight=S.height,this.$horizScroll&&(S.scrollerHeight-=this.scrollBarH.getHeight()),this.scrollBarV.setHeight(S.scrollerHeight),this.scrollBarV.element.style.bottom=this.scrollBarH.getHeight()+"px",N|=this.CHANGE_SCROLL),R&&(E||S.width!=R)){N|=this.CHANGE_SIZE,S.width=R,null==D&&(D=this.$showGutter?this.$gutter.offsetWidth:0),this.gutterWidth=D,o.setStyle(this.scrollBarH.element.style,"left",D+"px"),o.setStyle(this.scroller.style,"left",D+this.margin.left+"px"),S.scrollerWidth=Math.max(0,R-D-this.scrollBarV.getWidth()-this.margin.h),o.setStyle(this.$gutter.style,"left",this.margin.left+"px");var F=this.scrollBarV.getWidth()+"px";o.setStyle(this.scrollBarH.element.style,"right",F),o.setStyle(this.scroller.style,"right",F),o.setStyle(this.scroller.style,"bottom",this.scrollBarH.getHeight()),this.scrollBarH.setWidth(S.scrollerWidth),(this.session&&this.session.getUseWrapMode()&&this.adjustWrapLimit()||E)&&(N|=this.CHANGE_FULL)}return S.$dirty=!R||!j,N&&this._signal("resize",k),N},O.prototype.onGutterResize=function(E){var D=this.$showGutter?E:0;D!=this.gutterWidth&&(this.$changes|=this.$updateCachedSize(!0,D,this.$size.width,this.$size.height)),this.session.getUseWrapMode()&&this.adjustWrapLimit()||this.$size.$dirty?this.$loop.schedule(this.CHANGE_FULL):this.$computeLayerConfig()},O.prototype.adjustWrapLimit=function(){var D=Math.floor((this.$size.scrollerWidth-2*this.$padding)/this.characterWidth);return this.session.adjustWrapLimit(D,this.$showPrintMargin&&this.$printMarginColumn)},O.prototype.setAnimatedScroll=function(E){this.setOption("animatedScroll",E)},O.prototype.getAnimatedScroll=function(){return this.$animatedScroll},O.prototype.setShowInvisibles=function(E){this.setOption("showInvisibles",E),this.session.$bidiHandler.setShowInvisibles(E)},O.prototype.getShowInvisibles=function(){return this.getOption("showInvisibles")},O.prototype.getDisplayIndentGuides=function(){return this.getOption("displayIndentGuides")},O.prototype.setDisplayIndentGuides=function(E){this.setOption("displayIndentGuides",E)},O.prototype.getHighlightIndentGuides=function(){return this.getOption("highlightIndentGuides")},O.prototype.setHighlightIndentGuides=function(E){this.setOption("highlightIndentGuides",E)},O.prototype.setShowPrintMargin=function(E){this.setOption("showPrintMargin",E)},O.prototype.getShowPrintMargin=function(){return this.getOption("showPrintMargin")},O.prototype.setPrintMarginColumn=function(E){this.setOption("printMarginColumn",E)},O.prototype.getPrintMarginColumn=function(){return this.getOption("printMarginColumn")},O.prototype.getShowGutter=function(){return this.getOption("showGutter")},O.prototype.setShowGutter=function(E){return this.setOption("showGutter",E)},O.prototype.getFadeFoldWidgets=function(){return this.getOption("fadeFoldWidgets")},O.prototype.setFadeFoldWidgets=function(E){this.setOption("fadeFoldWidgets",E)},O.prototype.setHighlightGutterLine=function(E){this.setOption("highlightGutterLine",E)},O.prototype.getHighlightGutterLine=function(){return this.getOption("highlightGutterLine")},O.prototype.$updatePrintMargin=function(){if(this.$showPrintMargin||this.$printMarginEl){if(!this.$printMarginEl){var E=o.createElement("div");E.className="ace_layer ace_print-margin-layer",this.$printMarginEl=o.createElement("div"),this.$printMarginEl.className="ace_print-margin",E.appendChild(this.$printMarginEl),this.content.insertBefore(E,this.content.firstChild)}var D=this.$printMarginEl.style;D.left=Math.round(this.characterWidth*this.$printMarginColumn+this.$padding)+"px",D.visibility=this.$showPrintMargin?"visible":"hidden",this.session&&-1==this.session.$wrap&&this.adjustWrapLimit()}},O.prototype.getContainerElement=function(){return this.container},O.prototype.getMouseEventTarget=function(){return this.scroller},O.prototype.getTextAreaContainer=function(){return this.container},O.prototype.$moveTextAreaToCursor=function(){if(!this.$isMousePressed){var E=this.textarea.style,D=this.$composition;if(!this.$keepTextAreaAtCursor&&!D)return void o.translate(this.textarea,-100,0);var R=this.$cursorLayer.$pixelPos;if(R){D&&D.markerRange&&(R=this.$cursorLayer.getPixelPosition(D.markerRange.start,!0));var j=this.layerConfig,N=R.top,S=R.left,k=D&&D.useTextareaForIME||A.isMobile?this.lineHeight:1;if((N-=j.offset)<0||N>j.height-k)return void o.translate(this.textarea,0,0);var F=1,Y=this.$size.height-k;D?D.useTextareaForIME?F=this.characterWidth*this.session.$getStringScreenWidth(this.textarea.value)[0]:N+=this.lineHeight+2:N+=this.lineHeight,(S-=this.scrollLeft)>this.$size.scrollerWidth-F&&(S=this.$size.scrollerWidth-F),S+=this.gutterWidth+this.margin.left,o.setStyle(E,"height",k+"px"),o.setStyle(E,"width",F+"px"),o.translate(this.textarea,Math.min(S,this.$size.scrollerWidth-F),Math.min(N,Y))}}},O.prototype.getFirstVisibleRow=function(){return this.layerConfig.firstRow},O.prototype.getFirstFullyVisibleRow=function(){return this.layerConfig.firstRow+(0===this.layerConfig.offset?0:1)},O.prototype.getLastFullyVisibleRow=function(){var E=this.layerConfig,D=E.lastRow;return this.session.documentToScreenRow(D,0)*E.lineHeight-this.session.getScrollTop()>E.height-E.lineHeight?D-1:D},O.prototype.getLastVisibleRow=function(){return this.layerConfig.lastRow},O.prototype.setPadding=function(E){this.$padding=E,this.$textLayer.setPadding(E),this.$cursorLayer.setPadding(E),this.$markerFront.setPadding(E),this.$markerBack.setPadding(E),this.$loop.schedule(this.CHANGE_FULL),this.$updatePrintMargin()},O.prototype.setScrollMargin=function(E,D,R,j){var N=this.scrollMargin;N.top=0|E,N.bottom=0|D,N.right=0|j,N.left=0|R,N.v=N.top+N.bottom,N.h=N.left+N.right,N.top&&this.scrollTop<=0&&this.session&&this.session.setScrollTop(-N.top),this.updateFull()},O.prototype.setMargin=function(E,D,R,j){var N=this.margin;N.top=0|E,N.bottom=0|D,N.right=0|j,N.left=0|R,N.v=N.top+N.bottom,N.h=N.left+N.right,this.$updateCachedSize(!0,this.gutterWidth,this.$size.width,this.$size.height),this.updateFull()},O.prototype.getHScrollBarAlwaysVisible=function(){return this.$hScrollBarAlwaysVisible},O.prototype.setHScrollBarAlwaysVisible=function(E){this.setOption("hScrollBarAlwaysVisible",E)},O.prototype.getVScrollBarAlwaysVisible=function(){return this.$vScrollBarAlwaysVisible},O.prototype.setVScrollBarAlwaysVisible=function(E){this.setOption("vScrollBarAlwaysVisible",E)},O.prototype.$updateScrollBarV=function(){var E=this.layerConfig.maxHeight,D=this.$size.scrollerHeight;!this.$maxLines&&this.$scrollPastEnd&&this.scrollTop>(E-=(D-this.lineHeight)*this.$scrollPastEnd)-D&&(E=this.scrollTop+D,this.scrollBarV.scrollTop=null),this.scrollBarV.setScrollHeight(E+this.scrollMargin.v),this.scrollBarV.setScrollTop(this.scrollTop+this.scrollMargin.top)},O.prototype.$updateScrollBarH=function(){this.scrollBarH.setScrollWidth(this.layerConfig.width+2*this.$padding+this.scrollMargin.h),this.scrollBarH.setScrollLeft(this.scrollLeft+this.scrollMargin.left)},O.prototype.freeze=function(){this.$frozen=!0},O.prototype.unfreeze=function(){this.$frozen=!1},O.prototype.$renderChanges=function(E,D){if(this.$changes&&(E|=this.$changes,this.$changes=0),this.session&&this.container.offsetWidth&&!this.$frozen&&(E||D)){if(this.$size.$dirty)return this.$changes|=E,this.onResize(!0);this.lineHeight||this.$textLayer.checkForSizeChanges(),this._signal("beforeRender",E),this.session&&this.session.$bidiHandler&&this.session.$bidiHandler.updateCharacterWidths(this.$fontMetrics);var R=this.layerConfig;if(E&this.CHANGE_FULL||E&this.CHANGE_SIZE||E&this.CHANGE_TEXT||E&this.CHANGE_LINES||E&this.CHANGE_SCROLL||E&this.CHANGE_H_SCROLL){if(E|=this.$computeLayerConfig()|this.$loop.clear(),R.firstRow!=this.layerConfig.firstRow&&R.firstRowScreen==this.layerConfig.firstRowScreen){var j=this.scrollTop+(R.firstRow-Math.max(this.layerConfig.firstRow,0))*this.lineHeight;j>0&&(this.scrollTop=j,E|=this.CHANGE_SCROLL,E|=this.$computeLayerConfig()|this.$loop.clear())}R=this.layerConfig,this.$updateScrollBarV(),E&this.CHANGE_H_SCROLL&&this.$updateScrollBarH(),o.translate(this.content,-this.scrollLeft,-R.offset);var S=R.minHeight+"px";o.setStyle(this.content.style,"width",R.width+2*this.$padding+"px"),o.setStyle(this.content.style,"height",S)}return E&this.CHANGE_H_SCROLL&&(o.translate(this.content,-this.scrollLeft,-R.offset),this.scroller.className=this.scrollLeft<=0?"ace_scroller ":"ace_scroller ace_scroll-left ",this.enableKeyboardAccessibility&&(this.scroller.className+=this.keyboardFocusClassName)),E&this.CHANGE_FULL?(this.$changedLines=null,this.$textLayer.update(R),this.$showGutter&&this.$gutterLayer.update(R),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(R),this.$markerBack.update(R),this.$markerFront.update(R),this.$cursorLayer.update(R),this.$moveTextAreaToCursor(),void this._signal("afterRender",E)):E&this.CHANGE_SCROLL?(this.$changedLines=null,E&this.CHANGE_TEXT||E&this.CHANGE_LINES?this.$textLayer.update(R):this.$textLayer.scrollLines(R),this.$showGutter&&(E&this.CHANGE_GUTTER||E&this.CHANGE_LINES?this.$gutterLayer.update(R):this.$gutterLayer.scrollLines(R)),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(R),this.$markerBack.update(R),this.$markerFront.update(R),this.$cursorLayer.update(R),this.$moveTextAreaToCursor(),void this._signal("afterRender",E)):(E&this.CHANGE_TEXT?(this.$changedLines=null,this.$textLayer.update(R),this.$showGutter&&this.$gutterLayer.update(R),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(R)):E&this.CHANGE_LINES?((this.$updateLines()||E&this.CHANGE_GUTTER&&this.$showGutter)&&this.$gutterLayer.update(R),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(R)):E&this.CHANGE_TEXT||E&this.CHANGE_GUTTER?(this.$showGutter&&this.$gutterLayer.update(R),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(R)):E&this.CHANGE_CURSOR&&(this.$highlightGutterLine&&this.$gutterLayer.updateLineHighlight(R),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(R)),E&this.CHANGE_CURSOR&&(this.$cursorLayer.update(R),this.$moveTextAreaToCursor()),E&(this.CHANGE_MARKER|this.CHANGE_MARKER_FRONT)&&this.$markerFront.update(R),E&(this.CHANGE_MARKER|this.CHANGE_MARKER_BACK)&&this.$markerBack.update(R),void this._signal("afterRender",E))}this.$changes|=E},O.prototype.$autosize=function(){var E=this.session.getScreenLength()*this.lineHeight,D=this.$maxLines*this.lineHeight,R=Math.min(D,Math.max((this.$minLines||1)*this.lineHeight,E))+this.scrollMargin.v+(this.$extraHeight||0);this.$horizScroll&&(R+=this.scrollBarH.getHeight()),this.$maxPixelHeight&&R>this.$maxPixelHeight&&(R=this.$maxPixelHeight);var N=!(R<=2*this.lineHeight)&&E>D;if(R!=this.desiredHeight||this.$size.height!=this.desiredHeight||N!=this.$vScroll){N!=this.$vScroll&&(this.$vScroll=N,this.scrollBarV.setVisible(N));var S=this.container.clientWidth;this.container.style.height=R+"px",this.$updateCachedSize(!0,this.$gutterWidth,S,R),this.desiredHeight=R,this._signal("autosize")}},O.prototype.$computeLayerConfig=function(){var E=this.session,D=this.$size,R=D.height<=2*this.lineHeight,N=this.session.getScreenLength()*this.lineHeight,S=this.$getLongestLine(),k=!R&&(this.$hScrollBarAlwaysVisible||D.scrollerWidth-S-2*this.$padding<0),F=this.$horizScroll!==k;F&&(this.$horizScroll=k,this.scrollBarH.setVisible(k));var Y=this.$vScroll;this.$maxLines&&this.lineHeight>1&&this.$autosize();var se=D.scrollerHeight+this.lineHeight,ne=!this.$maxLines&&this.$scrollPastEnd?(D.scrollerHeight-this.lineHeight)*this.$scrollPastEnd:0;N+=ne;var me=this.scrollMargin;this.session.setScrollTop(Math.max(-me.top,Math.min(this.scrollTop,N-D.scrollerHeight+me.bottom))),this.session.setScrollLeft(Math.max(-me.left,Math.min(this.scrollLeft,S+2*this.$padding-D.scrollerWidth+me.right)));var $=!R&&(this.$vScrollBarAlwaysVisible||D.scrollerHeight-N+ne<0||this.scrollTop>me.top),q=Y!==$;q&&(this.$vScroll=$,this.scrollBarV.setVisible($));var Xe,Be,Q=this.scrollTop%this.lineHeight,ue=Math.ceil(se/this.lineHeight)-1,Me=Math.max(0,Math.round((this.scrollTop-Q)/this.lineHeight)),Oe=Me+ue,$e=this.lineHeight;Me=E.screenToDocumentRow(Me,0);var st=E.getFoldLine(Me);st&&(Me=st.start.row),Xe=E.documentToScreenRow(Me,0),Be=E.getRowLength(Me)*$e,Oe=Math.min(E.screenToDocumentRow(Oe,0),E.getLength()-1),se=D.scrollerHeight+E.getRowLength(Oe)*$e+Be,Q=this.scrollTop-Xe*$e;var Mt=0;return(this.layerConfig.width!=S||F)&&(Mt=this.CHANGE_H_SCROLL),(F||q)&&(Mt|=this.$updateCachedSize(!0,this.gutterWidth,D.width,D.height),this._signal("scrollbarVisibilityChanged"),q&&(S=this.$getLongestLine())),this.layerConfig={width:S,padding:this.$padding,firstRow:Me,firstRowScreen:Xe,lastRow:Oe,lineHeight:$e,characterWidth:this.characterWidth,minHeight:se,maxHeight:N,offset:Q,gutterOffset:$e?Math.max(0,Math.ceil((Q+D.height-D.scrollerHeight)/$e)):0,height:this.$size.scrollerHeight},this.session.$bidiHandler&&this.session.$bidiHandler.setContentWidth(S-this.$padding),Mt},O.prototype.$updateLines=function(){if(this.$changedLines){var E=this.$changedLines.firstRow,D=this.$changedLines.lastRow;this.$changedLines=null;var R=this.layerConfig;if(!(E>R.lastRow+1||Dthis.$textLayer.MAX_LINE_LENGTH&&(E=this.$textLayer.MAX_LINE_LENGTH+30),Math.max(this.$size.scrollerWidth-2*this.$padding,Math.round(E*this.characterWidth))},O.prototype.updateFrontMarkers=function(){this.$markerFront.setMarkers(this.session.getMarkers(!0)),this.$loop.schedule(this.CHANGE_MARKER_FRONT)},O.prototype.updateBackMarkers=function(){this.$markerBack.setMarkers(this.session.getMarkers()),this.$loop.schedule(this.CHANGE_MARKER_BACK)},O.prototype.addGutterDecoration=function(E,D){this.$gutterLayer.addGutterDecoration(E,D)},O.prototype.removeGutterDecoration=function(E,D){this.$gutterLayer.removeGutterDecoration(E,D)},O.prototype.updateBreakpoints=function(E){this.$loop.schedule(this.CHANGE_GUTTER)},O.prototype.setAnnotations=function(E){this.$gutterLayer.setAnnotations(E),this.$loop.schedule(this.CHANGE_GUTTER)},O.prototype.updateCursor=function(){this.$loop.schedule(this.CHANGE_CURSOR)},O.prototype.hideCursor=function(){this.$cursorLayer.hideCursor()},O.prototype.showCursor=function(){this.$cursorLayer.showCursor()},O.prototype.scrollSelectionIntoView=function(E,D,R){this.scrollCursorIntoView(E,R),this.scrollCursorIntoView(D,R)},O.prototype.scrollCursorIntoView=function(E,D,R){if(0!==this.$size.scrollerHeight){var j=this.$cursorLayer.getPixelPosition(E),N=j.left,S=j.top,k=R&&R.top||0,F=R&&R.bottom||0;this.$scrollAnimation&&(this.$stopAnimation=!0);var Y=this.$scrollAnimation?this.session.getScrollTop():this.scrollTop;Y+k>S?(D&&Y+k>S+this.lineHeight&&(S-=D*this.$size.scrollerHeight),0===S&&(S=-this.scrollMargin.top),this.session.setScrollTop(S)):Y+this.$size.scrollerHeight-F=1-this.scrollMargin.top||D>0&&this.session.getScrollTop()+this.$size.scrollerHeight-this.layerConfig.maxHeight<-1+this.scrollMargin.bottom||E<0&&this.session.getScrollLeft()>=1-this.scrollMargin.left||E>0&&this.session.getScrollLeft()+this.$size.scrollerWidth-this.layerConfig.width<-1+this.scrollMargin.right)return!0},O.prototype.pixelToScreenCoordinates=function(E,D){var R;if(this.$hasCssTransforms){R={top:0,left:0};var j=this.$fontMetrics.transformCoordinates([E,D]);E=j[1]-this.gutterWidth-this.margin.left,D=j[0]}else R=this.scroller.getBoundingClientRect();var N=E+this.scrollLeft-R.left-this.$padding,S=N/this.characterWidth,k=Math.floor((D+this.scrollTop-R.top)/this.lineHeight),F=this.$blockCursor?Math.floor(S):Math.round(S);return{row:k,column:F,side:S-F>0?1:-1,offsetX:N}},O.prototype.screenToTextCoordinates=function(E,D){var R;if(this.$hasCssTransforms){R={top:0,left:0};var j=this.$fontMetrics.transformCoordinates([E,D]);E=j[1]-this.gutterWidth-this.margin.left,D=j[0]}else R=this.scroller.getBoundingClientRect();var N=E+this.scrollLeft-R.left-this.$padding,S=N/this.characterWidth,k=this.$blockCursor?Math.floor(S):Math.round(S),F=Math.floor((D+this.scrollTop-R.top)/this.lineHeight);return this.session.screenToDocumentPosition(F,Math.max(k,0),N)},O.prototype.textToScreenCoordinates=function(E,D){var R=this.scroller.getBoundingClientRect(),j=this.session.documentToScreenPosition(E,D),N=this.$padding+(this.session.$bidiHandler.isBidiRow(j.row,E)?this.session.$bidiHandler.getPosLeft(j.column):Math.round(j.column*this.characterWidth));return{pageX:R.left+N-this.scrollLeft,pageY:R.top+j.row*this.lineHeight-this.scrollTop}},O.prototype.visualizeFocus=function(){o.addCssClass(this.container,"ace_focus")},O.prototype.visualizeBlur=function(){o.removeCssClass(this.container,"ace_focus")},O.prototype.showComposition=function(E){this.$composition=E,E.cssText||(E.cssText=this.textarea.style.cssText),null==E.useTextareaForIME&&(E.useTextareaForIME=this.$useTextareaForIME),this.$useTextareaForIME?(o.addCssClass(this.textarea,"ace_composition"),this.textarea.style.cssText="",this.$moveTextAreaToCursor(),this.$cursorLayer.element.style.display="none"):E.markerId=this.session.addMarker(E.markerRange,"ace_composition_marker","text")},O.prototype.setCompositionText=function(E){var D=this.session.selection.cursor;this.addToken(E,"composition_placeholder",D.row,D.column),this.$moveTextAreaToCursor()},O.prototype.hideComposition=function(){if(this.$composition){this.$composition.markerId&&this.session.removeMarker(this.$composition.markerId),o.removeCssClass(this.textarea,"ace_composition"),this.textarea.style.cssText=this.$composition.cssText;var E=this.session.selection.cursor;this.removeExtraToken(E.row,E.column),this.$composition=null,this.$cursorLayer.element.style.display=""}},O.prototype.setGhostText=function(E,D){var R=this.session.selection.cursor,j=D||{row:R.row,column:R.column};this.removeGhostText();var N=E.split("\n");this.addToken(N[0],"ghost_text",j.row,j.column),this.$ghostText={text:E,position:{row:j.row,column:j.column}},N.length>1&&(this.$ghostTextWidget={text:N.slice(1).join("\n"),row:j.row,column:j.column,className:"ace_ghost_text"},this.session.widgetManager.addLineWidget(this.$ghostTextWidget))},O.prototype.removeGhostText=function(){if(this.$ghostText){var E=this.$ghostText.position;this.removeExtraToken(E.row,E.column),this.$ghostTextWidget&&(this.session.widgetManager.removeLineWidget(this.$ghostTextWidget),this.$ghostTextWidget=null),this.$ghostText=null}},O.prototype.addToken=function(E,D,R,j){var N=this.session;N.bgTokenizer.lines[R]=null;var S={type:D,value:E},k=N.getTokens(R);if(null!=j&&k.length)for(var F=0,Y=0;Y1||Math.abs(E.$size.height-j)>1?E.$resizeTimer.delay():E.$resizeTimer.cancel()}),this.$resizeObserver.observe(this.container)}},O}();T.prototype.CHANGE_CURSOR=1,T.prototype.CHANGE_MARKER=2,T.prototype.CHANGE_GUTTER=4,T.prototype.CHANGE_SCROLL=8,T.prototype.CHANGE_LINES=16,T.prototype.CHANGE_TEXT=32,T.prototype.CHANGE_SIZE=64,T.prototype.CHANGE_MARKER_BACK=128,T.prototype.CHANGE_MARKER_FRONT=256,T.prototype.CHANGE_FULL=512,T.prototype.CHANGE_H_SCROLL=1024,T.prototype.$changes=0,T.prototype.$padding=null,T.prototype.$frozen=!1,T.prototype.STEPS=8,b.implement(T.prototype,x),a.defineOptions(T.prototype,"renderer",{useResizeObserver:{set:function(O){!O&&this.$resizeObserver?(this.$resizeObserver.disconnect(),this.$resizeTimer.cancel(),this.$resizeTimer=this.$resizeObserver=null):O&&!this.$resizeObserver&&this.$addResizeObserver()}},animatedScroll:{initialValue:!1},showInvisibles:{set:function(O){this.$textLayer.setShowInvisibles(O)&&this.$loop.schedule(this.CHANGE_TEXT)},initialValue:!1},showPrintMargin:{set:function(){this.$updatePrintMargin()},initialValue:!0},printMarginColumn:{set:function(){this.$updatePrintMargin()},initialValue:80},printMargin:{set:function(O){"number"==typeof O&&(this.$printMarginColumn=O),this.$showPrintMargin=!!O,this.$updatePrintMargin()},get:function(){return this.$showPrintMargin&&this.$printMarginColumn}},showGutter:{set:function(O){this.$gutter.style.display=O?"block":"none",this.$loop.schedule(this.CHANGE_FULL),this.onGutterResize()},initialValue:!0},useSvgGutterIcons:{set:function(O){this.$gutterLayer.$useSvgGutterIcons=O},initialValue:!1},showFoldedAnnotations:{set:function(O){this.$gutterLayer.$showFoldedAnnotations=O},initialValue:!1},fadeFoldWidgets:{set:function(O){o.setCssClass(this.$gutter,"ace_fade-fold-widgets",O)},initialValue:!1},showFoldWidgets:{set:function(O){this.$gutterLayer.setShowFoldWidgets(O),this.$loop.schedule(this.CHANGE_GUTTER)},initialValue:!0},displayIndentGuides:{set:function(O){this.$textLayer.setDisplayIndentGuides(O)&&this.$loop.schedule(this.CHANGE_TEXT)},initialValue:!0},highlightIndentGuides:{set:function(O){1==this.$textLayer.setHighlightIndentGuides(O)?this.$textLayer.$highlightIndentGuide():this.$textLayer.$clearActiveIndentGuide(this.$textLayer.$lines.cells)},initialValue:!0},highlightGutterLine:{set:function(O){this.$gutterLayer.setHighlightGutterLine(O),this.$loop.schedule(this.CHANGE_GUTTER)},initialValue:!0},hScrollBarAlwaysVisible:{set:function(O){(!this.$hScrollBarAlwaysVisible||!this.$horizScroll)&&this.$loop.schedule(this.CHANGE_SCROLL)},initialValue:!1},vScrollBarAlwaysVisible:{set:function(O){(!this.$vScrollBarAlwaysVisible||!this.$vScroll)&&this.$loop.schedule(this.CHANGE_SCROLL)},initialValue:!1},fontSize:{set:function(O){"number"==typeof O&&(O+="px"),this.container.style.fontSize=O,this.updateFontSize()},initialValue:12},fontFamily:{set:function(O){this.container.style.fontFamily=O,this.updateFontSize()}},maxLines:{set:function(O){this.updateFull()}},minLines:{set:function(O){this.$minLines<562949953421311||(this.$minLines=0),this.updateFull()}},maxPixelHeight:{set:function(O){this.updateFull()},initialValue:0},scrollPastEnd:{set:function(O){this.$scrollPastEnd!=(O=+O||0)&&(this.$scrollPastEnd=O,this.$loop.schedule(this.CHANGE_SCROLL))},initialValue:0,handlesSet:!0},fixedWidthGutter:{set:function(O){this.$gutterLayer.$fixedWidth=!!O,this.$loop.schedule(this.CHANGE_GUTTER)}},customScrollbar:{set:function(O){this.$updateCustomScrollbar(O)},initialValue:!1},theme:{set:function(O){this.setTheme(O)},get:function(){return this.$themeId||this.theme},initialValue:"./theme/textmate",handlesSet:!0},hasCssTransforms:{},useTextareaForIME:{initialValue:!A.isMobile&&!A.isIE}}),p.VirtualRenderer=T}),ace.define("ace/worker/worker_client",["require","exports","module","ace/lib/oop","ace/lib/net","ace/lib/event_emitter","ace/config"],function(n,p,C){"use strict";var b=n("../lib/oop"),o=n("../lib/net"),v=n("../lib/event_emitter").EventEmitter,a=n("../config");function s(r){if(typeof Worker>"u")return{postMessage:function(){},terminate:function(){}};if(a.get("loadWorkerFromBlob")){var u=function c(r){var u="importScripts('"+o.qualifyURL(r)+"');";try{return new Blob([u],{type:"application/javascript"})}catch{var m=new(window.BlobBuilder||window.WebKitBlobBuilder||window.MozBlobBuilder);return m.append(u),m.getBlob("application/javascript")}}(r),m=(window.URL||window.webkitURL).createObjectURL(u);return new Worker(m)}return new Worker(r)}var l=function(r){r.postMessage||(r=this.$createWorkerFromOldConfig.apply(this,arguments)),this.$worker=r,this.$sendDeltaQueue=this.$sendDeltaQueue.bind(this),this.changeListener=this.changeListener.bind(this),this.onMessage=this.onMessage.bind(this),this.callbackId=1,this.callbacks={},this.$worker.onmessage=this.onMessage};(function(){b.implement(this,v),this.$createWorkerFromOldConfig=function(r,u,h,m,_){if(n.nameToUrl&&!n.toUrl&&(n.toUrl=n.nameToUrl),a.get("packaged")||!n.toUrl)m=m||a.moduleUrl(u,"worker");else{var M=this.$normalizePath;m=m||M(n.toUrl("ace/worker/worker.js",null,"_"));var x={};r.forEach(function(w){x[w]=M(n.toUrl(w,null,"_").replace(/(\.js)?(\?.*)?$/,""))})}return this.$worker=s(m),_&&this.send("importScripts",_),this.$worker.postMessage({init:!0,tlns:x,module:u,classname:h}),this.$worker},this.onMessage=function(r){var u=r.data;switch(u.type){case"event":this._signal(u.name,{data:u.data});break;case"call":var h=this.callbacks[u.id];h&&(h(u.data),delete this.callbacks[u.id]);break;case"error":this.reportError(u.data);break;case"log":window.console&&console.log&&console.log.apply(console,u.data)}},this.reportError=function(r){window.console&&console.error&&console.error(r)},this.$normalizePath=function(r){return o.qualifyURL(r)},this.terminate=function(){this._signal("terminate",{}),this.deltaQueue=null,this.$worker.terminate(),this.$worker.onerror=function(r){r.preventDefault()},this.$worker=null,this.$doc&&this.$doc.off("change",this.changeListener),this.$doc=null},this.send=function(r,u){this.$worker.postMessage({command:r,args:u})},this.call=function(r,u,h){if(h){var m=this.callbackId++;this.callbacks[m]=h,u.push(m)}this.send(r,u)},this.emit=function(r,u){try{u.data&&u.data.err&&(u.data.err={message:u.data.err.message,stack:u.data.err.stack,code:u.data.err.code}),this.$worker&&this.$worker.postMessage({event:r,data:{data:u.data}})}catch(h){console.error(h.stack)}},this.attachToDocument=function(r){this.$doc&&this.terminate(),this.$doc=r,this.call("setValue",[r.getValue()]),r.on("change",this.changeListener,!0)},this.changeListener=function(r){this.deltaQueue||(this.deltaQueue=[],setTimeout(this.$sendDeltaQueue,0)),this.deltaQueue.push(r.start,"insert"==r.action?r.lines:r.end)},this.$sendDeltaQueue=function(){var r=this.deltaQueue;r&&(this.deltaQueue=null,r.length>50&&r.length>this.$doc.getLength()>>1?this.call("setValue",[this.$doc.getValue()]):this.emit("change",{data:r}))}}).call(l.prototype),p.UIWorkerClient=function(r,u,h){var m=null,_=!1,M=Object.create(v),x=[],w=new l({messageBuffer:x,terminate:function(){},postMessage:function(A){x.push(A),m&&(_?setTimeout(L):L())}});w.setEmitSync=function(A){_=A};var L=function(){var A=x.shift();A.command?m[A.command].apply(m,A.args):A.event&&M._signal(A.event,A.data)};return M.postMessage=function(A){w.onMessage({data:A})},M.callback=function(A,T){this.postMessage({type:"call",id:T,data:A})},M.emit=function(A,T){this.postMessage({type:"event",name:A,data:T})},a.loadModule(["worker",u],function(A){for(m=new A[h](M);x.length;)L()}),w},p.WorkerClient=l,p.createWorker=s}),ace.define("ace/placeholder",["require","exports","module","ace/range","ace/lib/event_emitter","ace/lib/oop"],function(n,p,C){"use strict";var b=n("./range").Range,o=n("./lib/event_emitter").EventEmitter,v=n("./lib/oop"),a=function(){function c(s,l,d,r,u,h){var m=this;this.length=l,this.session=s,this.doc=s.getDocument(),this.mainClass=u,this.othersClass=h,this.$onUpdate=this.onUpdate.bind(this),this.doc.on("change",this.$onUpdate,!0),this.$others=r,this.$onCursorChange=function(){setTimeout(function(){m.onCursorChange()})},this.$pos=d;var _=s.getUndoManager().$undoStack||s.getUndoManager().$undostack||{length:-1};this.$undoStackDepth=_.length,this.setup(),s.selection.on("changeCursor",this.$onCursorChange)}return c.prototype.setup=function(){var s=this,l=this.doc,d=this.session;this.selectionBefore=d.selection.toJSON(),d.selection.inMultiSelectMode&&d.selection.toSingleRange(),this.pos=l.createAnchor(this.$pos.row,this.$pos.column);var r=this.pos;r.$insertRight=!0,r.detach(),r.markerId=d.addMarker(new b(r.row,r.column,r.row,r.column+this.length),this.mainClass,null,!1),this.others=[],this.$others.forEach(function(u){var h=l.createAnchor(u.row,u.column);h.$insertRight=!0,h.detach(),s.others.push(h)}),d.setUndoSelect(!1)},c.prototype.showOtherMarkers=function(){if(!this.othersActive){var s=this.session,l=this;this.othersActive=!0,this.others.forEach(function(d){d.markerId=s.addMarker(new b(d.row,d.column,d.row,d.column+l.length),l.othersClass,null,!1)})}},c.prototype.hideOtherMarkers=function(){if(this.othersActive){this.othersActive=!1;for(var s=0;s=this.pos.column&&l.start.column<=this.pos.column+this.length+1,u=l.start.column-this.pos.column;if(this.updateAnchors(s),r&&(this.length+=d),r&&!this.session.$fromUndo)if("insert"===s.action)for(var h=this.others.length-1;h>=0;h--)this.doc.insertMergedLines(_={row:(m=this.others[h]).row,column:m.column+u},s.lines);else if("remove"===s.action)for(h=this.others.length-1;h>=0;h--){var m,_;this.doc.remove(new b((_={row:(m=this.others[h]).row,column:m.column+u}).row,_.column,_.row,_.column-d))}this.$updating=!1,this.updateMarkers()}},c.prototype.updateAnchors=function(s){this.pos.onChange(s);for(var l=this.others.length;l--;)this.others[l].onChange(s);this.updateMarkers()},c.prototype.updateMarkers=function(){if(!this.$updating){var s=this,l=this.session,d=function(u,h){l.removeMarker(u.markerId),u.markerId=l.addMarker(new b(u.row,u.column,u.row,u.column+s.length),h,null,!1)};d(this.pos,this.mainClass);for(var r=this.others.length;r--;)d(this.others[r],this.othersClass)}},c.prototype.onCursorChange=function(s){if(!this.$updating&&this.session){var l=this.session.selection.getCursor();l.row===this.pos.row&&l.column>=this.pos.column&&l.column<=this.pos.column+this.length?(this.showOtherMarkers(),this._emit("cursorEnter",s)):(this.hideOtherMarkers(),this._emit("cursorLeave",s))}},c.prototype.detach=function(){this.session.removeMarker(this.pos&&this.pos.markerId),this.hideOtherMarkers(),this.doc.off("change",this.$onUpdate),this.session.selection.off("changeCursor",this.$onCursorChange),this.session.setUndoSelect(!0),this.session=null},c.prototype.cancel=function(){if(-1!==this.$undoStackDepth){for(var s=this.session.getUndoManager(),l=(s.$undoStack||s.$undostack).length-this.$undoStackDepth,d=0;d1?o.multiSelect.joinSelections():o.multiSelect.splitIntoLines()},bindKey:{win:"Ctrl-Alt-L",mac:"Ctrl-Alt-L"},readOnly:!0},{name:"splitSelectionIntoLines",description:"Split into lines",exec:function(o){o.multiSelect.splitIntoLines()},readOnly:!0},{name:"alignCursors",description:"Align cursors",exec:function(o){o.alignCursors()},bindKey:{win:"Ctrl-Alt-A",mac:"Ctrl-Alt-A"},scrollIntoView:"cursor"},{name:"findAll",description:"Find all",exec:function(o){o.findAll()},bindKey:{win:"Ctrl-Alt-K",mac:"Ctrl-Alt-G"},scrollIntoView:"cursor",readOnly:!0}],p.multiSelectCommands=[{name:"singleSelection",description:"Single selection",bindKey:"esc",exec:function(o){o.exitMultiSelectMode()},scrollIntoView:"cursor",readOnly:!0,isAvailable:function(o){return o&&o.inMultiSelectMode}}];var b=n("../keyboard/hash_handler").HashHandler;p.keyboardHandler=new b(p.multiSelectCommands)}),ace.define("ace/multi_select",["require","exports","module","ace/range_list","ace/range","ace/selection","ace/mouse/multi_select_handler","ace/lib/event","ace/lib/lang","ace/commands/multi_select_commands","ace/search","ace/edit_session","ace/editor","ace/config"],function(n,p,C){var b=n("./range_list").RangeList,o=n("./range").Range,v=n("./selection").Selection,a=n("./mouse/multi_select_handler").onMouseDown,c=n("./lib/event"),s=n("./lib/lang"),l=n("./commands/multi_select_commands");p.commands=l.defaultCommands.concat(l.multiSelectCommands);var r=new(0,n("./search").Search),h=n("./edit_session").EditSession;(function(){this.getSelectionMarkers=function(){return this.$selectionMarkers}}).call(h.prototype),function(){this.ranges=null,this.rangeList=null,this.addRange=function(w,L){if(w){if(!this.inMultiSelectMode&&0===this.rangeCount){var A=this.toOrientedRange();if(this.rangeList.add(A),this.rangeList.add(w),2!=this.rangeList.ranges.length)return this.rangeList.removeAll(),L||this.fromOrientedRange(w);this.rangeList.removeAll(),this.rangeList.add(A),this.$onAddRange(A)}w.cursor||(w.cursor=w.end);var T=this.rangeList.add(w);return this.$onAddRange(w),T.length&&this.$onRemoveRange(T),this.rangeCount>1&&!this.inMultiSelectMode&&(this._signal("multiSelect"),this.inMultiSelectMode=!0,this.session.$undoSelect=!1,this.rangeList.attach(this.session)),L||this.fromOrientedRange(w)}},this.toSingleRange=function(w){w=w||this.ranges[0];var L=this.rangeList.removeAll();L.length&&this.$onRemoveRange(L),w&&this.fromOrientedRange(w)},this.substractPoint=function(w){var L=this.rangeList.substractPoint(w);if(L)return this.$onRemoveRange(L),L[0]},this.mergeOverlappingRanges=function(){var w=this.rangeList.merge();w.length&&this.$onRemoveRange(w)},this.$onAddRange=function(w){this.rangeCount=this.rangeList.ranges.length,this.ranges.unshift(w),this._signal("addRange",{range:w})},this.$onRemoveRange=function(w){if(this.rangeCount=this.rangeList.ranges.length,1==this.rangeCount&&this.inMultiSelectMode){var L=this.rangeList.ranges.pop();w.push(L),this.rangeCount=0}for(var A=w.length;A--;){var T=this.ranges.indexOf(w[A]);this.ranges.splice(T,1)}this._signal("removeRange",{ranges:w}),0===this.rangeCount&&this.inMultiSelectMode&&(this.inMultiSelectMode=!1,this._signal("singleSelect"),this.session.$undoSelect=!0,this.rangeList.detach(this.session)),(L=L||this.ranges[0])&&!L.isEqual(this.getRange())&&this.fromOrientedRange(L)},this.$initRangeList=function(){this.rangeList||(this.rangeList=new b,this.ranges=[],this.rangeCount=0)},this.getAllRanges=function(){return this.rangeCount?this.rangeList.ranges.concat():[this.getRange()]},this.splitIntoLines=function(){for(var w=this.ranges.length?this.ranges:[this.getRange()],L=[],A=0;A1){var w=this.rangeList.ranges,L=w[w.length-1],A=o.fromPoints(w[0].start,L.end);this.toSingleRange(),this.setSelectionRange(A,L.cursor==L.start)}else{var T=this.session.documentToScreenPosition(this.cursor),O=this.session.documentToScreenPosition(this.anchor);this.rectangularRangeBlock(T,O).forEach(this.addRange,this)}},this.rectangularRangeBlock=function(w,L,A){var T=[],O=w.column0;)ne--;if(ne>0)for(var me=0;T[me].isEmpty();)me++;for(var $=ne;$>=me;$--)T[$].isEmpty()&&T.splice($,1)}return T}}.call(v.prototype);var m=n("./editor").Editor;function _(w,L){return w.row==L.row&&w.column==L.column}function M(w){w.$multiselectOnSessionChange||(w.$onAddRange=w.$onAddRange.bind(w),w.$onRemoveRange=w.$onRemoveRange.bind(w),w.$onMultiSelect=w.$onMultiSelect.bind(w),w.$onSingleSelect=w.$onSingleSelect.bind(w),w.$multiselectOnSessionChange=p.onSessionChange.bind(w),w.$checkMultiselectChange=w.$checkMultiselectChange.bind(w),w.$multiselectOnSessionChange(w),w.on("changeSession",w.$multiselectOnSessionChange),w.on("mousedown",a),w.commands.addCommands(l.defaultCommands),function x(w){if(w.textInput){var L=w.textInput.getElement(),A=!1;c.addListener(L,"keydown",function(O){w.$blockSelectEnabled&&18==O.keyCode&&!(O.ctrlKey||O.shiftKey||O.metaKey)?A||(w.renderer.setMouseCursor("crosshair"),A=!0):A&&T()},w),c.addListener(L,"keyup",T,w),c.addListener(L,"blur",T,w)}function T(O){A&&(w.renderer.setMouseCursor(""),A=!1)}}(w))}(function(){this.updateSelectionMarkers=function(){this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.addSelectionMarker=function(w){w.cursor||(w.cursor=w.end);var L=this.getSelectionStyle();return w.marker=this.session.addMarker(w,"ace_selection",L),this.session.$selectionMarkers.push(w),this.session.selectionMarkerCount=this.session.$selectionMarkers.length,w},this.removeSelectionMarker=function(w){if(w.marker){this.session.removeMarker(w.marker);var L=this.session.$selectionMarkers.indexOf(w);-1!=L&&this.session.$selectionMarkers.splice(L,1),this.session.selectionMarkerCount=this.session.$selectionMarkers.length}},this.removeSelectionMarkers=function(w){for(var L=this.session.$selectionMarkers,A=w.length;A--;){var T=w[A];if(T.marker){this.session.removeMarker(T.marker);var O=L.indexOf(T);-1!=O&&L.splice(O,1)}}this.session.selectionMarkerCount=L.length},this.$onAddRange=function(w){this.addSelectionMarker(w.range),this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.$onRemoveRange=function(w){this.removeSelectionMarkers(w.ranges),this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.$onMultiSelect=function(w){this.inMultiSelectMode||(this.inMultiSelectMode=!0,this.setStyle("ace_multiselect"),this.keyBinding.addKeyboardHandler(l.keyboardHandler),this.commands.setDefaultHandler("exec",this.$onMultiSelectExec),this.renderer.updateCursor(),this.renderer.updateBackMarkers())},this.$onSingleSelect=function(w){this.session.multiSelect.inVirtualMode||(this.inMultiSelectMode=!1,this.unsetStyle("ace_multiselect"),this.keyBinding.removeKeyboardHandler(l.keyboardHandler),this.commands.removeDefaultHandler("exec",this.$onMultiSelectExec),this.renderer.updateCursor(),this.renderer.updateBackMarkers(),this._emit("changeSelection"))},this.$onMultiSelectExec=function(w){var L=w.command,A=w.editor;if(A.multiSelect){if(L.multiSelectAction)"forEach"==L.multiSelectAction?T=A.forEachSelection(L,w.args):"forEachLine"==L.multiSelectAction?T=A.forEachSelection(L,w.args,!0):"single"==L.multiSelectAction?(A.exitMultiSelectMode(),T=L.exec(A,w.args||{})):T=L.multiSelectAction(A,w.args||{});else{var T=L.exec(A,w.args||{});A.multiSelect.addRange(A.multiSelect.toOrientedRange()),A.multiSelect.mergeOverlappingRanges()}return T}},this.forEachSelection=function(w,L,A){if(!this.inVirtualSelectionMode){var N,O=1==A||A&&A.$byLines,E=this.session,D=this.selection,j=(A&&A.keepOrder?D:D.rangeList).ranges;if(!j.length)return w.exec?w.exec(this,L||{}):w(this,L||{});var S=D._eventRegistry;D._eventRegistry={};var k=new v(E);this.inVirtualSelectionMode=!0;for(var F=j.length;F--;){if(O)for(;F>0&&j[F].start.row==j[F-1].end.row;)F--;k.fromOrientedRange(j[F]),k.index=F,this.selection=E.selection=k;var Y=w.exec?w.exec(this,L||{}):w(this,L||{});!N&&void 0!==Y&&(N=Y),k.toOrientedRange(j[F])}k.detach(),this.selection=E.selection=D,this.inVirtualSelectionMode=!1,D._eventRegistry=S,D.mergeOverlappingRanges(),D.ranges[0]&&D.fromOrientedRange(D.ranges[0]);var se=this.renderer.$scrollAnimation;return this.onCursorChange(),this.onSelectionChange(),se&&se.from==se.to&&this.renderer.animateScrolling(se.from),N}},this.exitMultiSelectMode=function(){!this.inMultiSelectMode||this.inVirtualSelectionMode||this.multiSelect.toSingleRange()},this.getSelectedText=function(){var w="";if(this.inMultiSelectMode&&!this.inVirtualSelectionMode){for(var L=this.multiSelect.rangeList.ranges,A=[],T=0;TF&&(F=me.column),qQ?w.insert($,s.stringRepeat(" ",q-Q)):w.remove(new o($.row,$.column,$.row,$.column-q+Q)),ne.start.column=ne.end.column=F,ne.start.row=ne.end.row=$.row,ne.cursor=ne.end}),L.fromOrientedRange(A[0]),this.renderer.updateCursor(),this.renderer.updateBackMarkers()}else{var E=this.selection.getRange(),D=E.start.row,R=E.end.row,j=D==R;if(j){var S,N=this.session.getLength();do{S=this.session.getLine(R)}while(/[=:]/.test(S)&&++R0);D<0&&(D=0),R>=N&&(R=N-1)}var k=this.session.removeFullLines(D,R);k=this.$reAlignText(k,j),this.session.insert({row:D,column:0},k.join("\n")+"\n"),j||(E.start.column=0,E.end.column=k[k.length-1].length),this.selection.setRange(E)}},this.$reAlignText=function(w,L){var O,E,D,A=!0,T=!0;return w.map(function(k){var F=k.match(/(\s*)(.*?)(\s*)([=:].*)/);return F?null==O?(O=F[1].length,E=F[2].length,D=F[3].length,F):(O+E+D!=F[1].length+F[2].length+F[3].length&&(T=!1),O!=F[1].length&&(A=!1),O>F[1].length&&(O=F[1].length),EF[3].length&&(D=F[3].length),F):[k]}).map(L?j:A?T?function N(k){return k[2]?R(O+E-k[2].length)+k[2]+R(D)+k[4].replace(/^([=:])\s+/,"$1 "):k[0]}:j:function S(k){return k[2]?R(O)+k[2]+R(D)+k[4].replace(/^([=:])\s+/,"$1 "):k[0]});function R(k){return s.stringRepeat(" ",k)}function j(k){return k[2]?R(O)+k[2]+R(E-k[2].length+D)+k[4].replace(/^([=:])\s+/,"$1 "):k[0]}}}).call(m.prototype),p.onSessionChange=function(w){var L=w.session;L&&!L.multiSelect&&(L.$selectionMarkers=[],L.selection.$initRangeList(),L.multiSelect=L.selection),this.multiSelect=L&&L.multiSelect;var A=w.oldSession;A&&(A.multiSelect.off("addRange",this.$onAddRange),A.multiSelect.off("removeRange",this.$onRemoveRange),A.multiSelect.off("multiSelect",this.$onMultiSelect),A.multiSelect.off("singleSelect",this.$onSingleSelect),A.multiSelect.lead.off("change",this.$checkMultiselectChange),A.multiSelect.anchor.off("change",this.$checkMultiselectChange)),L&&(L.multiSelect.on("addRange",this.$onAddRange),L.multiSelect.on("removeRange",this.$onRemoveRange),L.multiSelect.on("multiSelect",this.$onMultiSelect),L.multiSelect.on("singleSelect",this.$onSingleSelect),L.multiSelect.lead.on("change",this.$checkMultiselectChange),L.multiSelect.anchor.on("change",this.$checkMultiselectChange)),L&&this.inMultiSelectMode!=L.selection.inMultiSelectMode&&(L.selection.inMultiSelectMode?this.$onMultiSelect():this.$onSingleSelect())},p.MultiSelect=M,n("./config").defineOptions(m.prototype,"editor",{enableMultiselect:{set:function(w){M(this),w?this.on("mousedown",a):this.off("mousedown",a)},value:!0},enableBlockSelect:{set:function(w){this.$blockSelectEnabled=w},value:!0}})}),ace.define("ace/mode/folding/fold_mode",["require","exports","module","ace/range"],function(n,p,C){"use strict";var b=n("../../range").Range,o=p.FoldMode=function(){};(function(){this.foldingStartMarker=null,this.foldingStopMarker=null,this.getFoldWidget=function(v,a,c){var s=v.getLine(c);return this.foldingStartMarker.test(s)?"start":"markbeginend"==a&&this.foldingStopMarker&&this.foldingStopMarker.test(s)?"end":""},this.getFoldWidgetRange=function(v,a,c){return null},this.indentationBlock=function(v,a,c){var s=/\S/,l=v.getLine(a),d=l.search(s);if(-1!=d){for(var r=c||l.length,u=v.getLength(),h=a,m=a;++ah){var x=v.getLine(m).length;return new b(h,r,m,x)}}},this.openingBracketBlock=function(v,a,c,s,l){var d={row:c,column:s+1},r=v.$findClosingBracket(a,d,l);if(r){var u=v.foldWidgets[r.row];return null==u&&(u=v.getFoldWidget(r.row)),"start"==u&&r.row>d.row&&(r.row--,r.column=v.getLine(r.row).length),b.fromPoints(d,r)}},this.closingBracketBlock=function(v,a,c,s,l){var d={row:c,column:s},r=v.$findOpeningBracket(a,d);if(r)return r.column++,d.column--,b.fromPoints(r,d)}}).call(o.prototype)}),ace.define("ace/ext/error_marker",["require","exports","module","ace/line_widgets","ace/lib/dom","ace/range","ace/config"],function(n,p,C){"use strict";var b=n("../line_widgets").LineWidgets,o=n("../lib/dom"),v=n("../range").Range,a=n("../config").nls;p.showErrorMarker=function(l,d){var r=l.session;r.widgetManager||(r.widgetManager=new b(r),r.widgetManager.attach(l));var u=l.getCursorPosition(),h=u.row,m=r.widgetManager.getWidgetsAtRow(h).filter(function(E){return"errorMarker"==E.type})[0];m?m.destroy():h-=d;var M,_=function s(l,d,r){var u=l.getAnnotations().sort(v.comparePoints);if(u.length){var h=function c(l,d,r){for(var u=0,h=l.length-1;u<=h;){var m=u+h>>1,_=r(d,l[m]);if(_>0)u=m+1;else{if(!(_<0))return m;h=m-1}}return-(u+1)}(u,{row:d,column:-1},v.comparePoints);h<0&&(h=-h-1),h>=u.length?h=r>0?0:u.length-1:0===h&&r<0&&(h=u.length-1);var m=u[h];if(m&&r){if(m.row===d){do{m=u[h+=r]}while(m&&m.row===d);if(!m)return u.slice()}var _=[];d=m.row;do{_[r<0?"unshift":"push"](m),m=u[h+=r]}while(m&&m.row==d);return _.length&&_}}}(r,h,d);if(_){var x=_[0];u.column=(x.pos&&"number"!=typeof x.column?x.pos.sc:x.column)||0,u.row=x.row,M=l.renderer.$gutterLayer.$annotations[u.row]}else{if(m)return;M={text:[a("Looks good!")],className:"ace_ok"}}l.session.unfold(u.row),l.selection.moveToPosition(u);var w={row:u.row,fixedWidth:!0,coverGutter:!0,el:o.createElement("div"),type:"errorMarker"},L=w.el.appendChild(o.createElement("div")),A=w.el.appendChild(o.createElement("div"));A.className="error_widget_arrow "+M.className;var T=l.renderer.$cursorLayer.getPixelPosition(u).left;A.style.left=T+l.renderer.gutterWidth-5+"px",w.el.className="error_widget_wrapper",L.className="error_widget "+M.className,L.innerHTML=M.text.join("
"),L.appendChild(o.createElement("div"));var O=function(E,D,R){if(0===D&&("esc"===R||"return"===R))return w.destroy(),{command:"null"}};w.destroy=function(){l.$mouseHandler.isMousePressed||(l.keyBinding.removeKeyboardHandler(O),r.widgetManager.removeLineWidget(w),l.off("changeSelection",w.destroy),l.off("changeSession",w.destroy),l.off("mouseup",w.destroy),l.off("change",w.destroy))},l.keyBinding.addKeyboardHandler(O),l.on("changeSelection",w.destroy),l.on("changeSession",w.destroy),l.on("mouseup",w.destroy),l.on("change",w.destroy),l.session.widgetManager.addLineWidget(w),w.el.onmousedown=l.focus.bind(l),l.renderer.scrollCursorIntoView(null,.5,{bottom:w.el.offsetHeight})},o.importCssString("\n .error_widget_wrapper {\n background: inherit;\n color: inherit;\n border:none\n }\n .error_widget {\n border-top: solid 2px;\n border-bottom: solid 2px;\n margin: 5px 0;\n padding: 10px 40px;\n white-space: pre-wrap;\n }\n .error_widget.ace_error, .error_widget_arrow.ace_error{\n border-color: #ff5a5a\n }\n .error_widget.ace_warning, .error_widget_arrow.ace_warning{\n border-color: #F1D817\n }\n .error_widget.ace_info, .error_widget_arrow.ace_info{\n border-color: #5a5a5a\n }\n .error_widget.ace_ok, .error_widget_arrow.ace_ok{\n border-color: #5aaa5a\n }\n .error_widget_arrow {\n position: absolute;\n border: solid 5px;\n border-top-color: transparent!important;\n border-right-color: transparent!important;\n border-left-color: transparent!important;\n top: -5px;\n }\n","error_marker.css",!1)}),ace.define("ace/ace",["require","exports","module","ace/lib/dom","ace/range","ace/editor","ace/edit_session","ace/undomanager","ace/virtual_renderer","ace/worker/worker_client","ace/keyboard/hash_handler","ace/placeholder","ace/multi_select","ace/mode/folding/fold_mode","ace/theme/textmate","ace/ext/error_marker","ace/config","ace/loader_build"],function(n,p,C){"use strict";n("./loader_build")(p);var b=n("./lib/dom"),o=n("./range").Range,v=n("./editor").Editor,a=n("./edit_session").EditSession,c=n("./undomanager").UndoManager,s=n("./virtual_renderer").VirtualRenderer;n("./worker/worker_client"),n("./keyboard/hash_handler"),n("./placeholder"),n("./multi_select"),n("./mode/folding/fold_mode"),n("./theme/textmate"),n("./ext/error_marker"),p.config=n("./config"),p.edit=function(l,d){if("string"==typeof l){var r=l;if(!(l=document.getElementById(r)))throw new Error("ace.edit can't find div #"+r)}if(l&&l.env&&l.env.editor instanceof v)return l.env.editor;var u="";if(l&&/input|textarea/i.test(l.tagName)){var h=l;u=h.value,l=b.createElement("pre"),h.parentNode.replaceChild(l,h)}else l&&(u=l.textContent,l.innerHTML="");var m=p.createEditSession(u),_=new v(new s(l),m,d),M={document:m,editor:_,onResize:_.resize.bind(_,null)};return h&&(M.textarea=h),_.on("destroy",function(){M.editor.container.env=null}),_.container.env=_.env=M,_},p.createEditSession=function(l,d){var r=new a(l,d);return r.setUndoManager(new c),r},p.Range=o,p.Editor=v,p.EditSession=a,p.UndoManager=c,p.VirtualRenderer=s,p.version=p.config.version}),ace.require(["ace/ace"],function(n){for(var p in n&&(n.config.init(!0),n.define=ace.define),window.ace||(window.ace=n),n)n.hasOwnProperty(p)&&(window.ace[p]=n[p]);window.ace.default=window.ace,Se&&(Se.exports=window.ace)})},5899:Se=>{function X(){}Se.exports=X,Se.exports.HttpsAgent=X},6357:(Se,X,g)=>{const{Token:n}=g(6205),p=g(9042),{Interval:C}=g(9173);class b{}Se.exports=class o extends b{constructor(a){super(),this.tokenSource=a,this.tokens=[],this.index=-1,this.fetchedEOF=!1}mark(){return 0}release(a){}reset(){this.seek(0)}seek(a){this.lazyInit(),this.index=this.adjustSeekIndex(a)}get(a){return this.lazyInit(),this.tokens[a]}consume(){let a=!1;if(a=this.index>=0&&(this.fetchedEOF?this.index0)||this.fetch(c)>=c}fetch(a){if(this.fetchedEOF)return 0;for(let c=0;c=this.tokens.length&&(c=this.tokens.length-1);for(let d=a;d=this.tokens.length?this.tokens[this.tokens.length-1]:this.tokens[c]}adjustSeekIndex(a){return a}lazyInit(){-1===this.index&&this.setup()}setup(){this.sync(0),this.index=this.adjustSeekIndex(0)}setTokenSource(a){this.tokenSource=a,this.tokens=[],this.index=-1,this.fetchedEOF=!1}nextTokenOnChannel(a,c){if(this.sync(a),a>=this.tokens.length)return-1;let s=this.tokens[a];for(;s.channel!==this.channel;){if(s.type===n.EOF)return-1;this.sync(a+=1),s=this.tokens[a]}return a}previousTokenOnChannel(a,c){for(;a>=0&&this.tokens[a].channel!==c;)a-=1;return a}getHiddenTokensToRight(a,c){if(void 0===c&&(c=-1),this.lazyInit(),a<0||a>=this.tokens.length)throw a+" not in 0.."+this.tokens.length-1;const s=this.nextTokenOnChannel(a+1,p.DEFAULT_TOKEN_CHANNEL);return this.filterForChannel(a+1,-1===s?this.tokens.length-1:s,c)}getHiddenTokensToLeft(a,c){if(void 0===c&&(c=-1),this.lazyInit(),a<0||a>=this.tokens.length)throw a+" not in 0.."+this.tokens.length-1;const s=this.previousTokenOnChannel(a-1,p.DEFAULT_TOKEN_CHANNEL);return s===a-1?null:this.filterForChannel(s+1,a-1,c)}filterForChannel(a,c,s){const l=[];for(let d=a;d=this.tokens.length&&(s=this.tokens.length-1);let l="";for(let d=c;d{const n=g(6205).CommonToken;class p{}class C extends p{constructor(o){super(),this.copyText=void 0!==o&&o}create(o,v,a,c,s,l,d,r){const u=new n(o,v,c,s,l);return u.line=d,u.column=r,null!==a?u.text=a:this.copyText&&null!==o[1]&&(u.text=o[1].getText(s,l)),u}createThin(o,v){const a=new n(null,o);return a.text=v,a}}C.DEFAULT=new C,Se.exports=C},7456:(Se,X,g)=>{const n=g(6205).Token,p=g(6357);Se.exports=class C extends p{constructor(o,v){super(o),this.channel=void 0===v?n.DEFAULT_CHANNEL:v}adjustSeekIndex(o){return this.nextTokenOnChannel(o,this.channel)}LB(o){if(0===o||this.index-o<0)return null;let v=this.index,a=1;for(;a<=o;)v=this.previousTokenOnChannel(v-1,this.channel),a+=1;return v<0?null:this.tokens[v]}LT(o){if(this.lazyInit(),0===o)return null;if(o<0)return this.LB(-o);let v=this.index,a=1;for(;a{const{Token:n}=g(6205);g(6419),g(9182),Se.exports=class p{constructor(b,o){if(this.name="",this.strdata=b,this.decodeToUnicodeCodePoints=o||!1,this._index=0,this.data=[],this.decodeToUnicodeCodePoints)for(let v=0;v=this._size)throw"cannot consume EOF";this._index+=1}LA(b){if(0===b)return 0;b<0&&(b+=1);const o=this._index+b-1;return o<0||o>=this._size?n.EOF:this.data[o]}LT(b){return this.LA(b)}mark(){return-1}release(b){}seek(b){this._index=b<=this._index?b:Math.min(b,this._size)}getText(b,o){if(o>=this._size&&(o=this._size-1),b>=this._size)return"";if(this.decodeToUnicodeCodePoints){let v="";for(let a=b;a<=o;a++)v+=String.fromCodePoint(this.data[a]);return v}return this.strdata.slice(b,o+1)}toString(){return this.strdata}get index(){return this._index}get size(){return this._size}}},9173:(Se,X,g)=>{const{Token:n}=g(6205);class p{constructor(o,v){this.start=o,this.stop=v}clone(){return new p(this.start,this.stop)}contains(o){return o>=this.start&&othis.addInterval(v),this),this}reduce(o){if(o=a.stop?(this.intervals.splice(o+1,1),this.reduce(o)):v.stop>=a.start&&(this.intervals[o]=new p(v.start,a.stop),this.intervals.splice(o+1,1))}}complement(o,v){const a=new C;return a.addInterval(new p(o,v+1)),null!==this.intervals&&this.intervals.forEach(c=>a.removeRange(c)),a}contains(o){if(null===this.intervals)return!1;for(let v=0;vc.start&&o.stop=c.stop?(this.intervals.splice(v,1),v-=1):o.start":"'"+String.fromCharCode(a.start)+"'":"'"+String.fromCharCode(a.start)+"'..'"+String.fromCharCode(a.stop-1)+"'")}return o.length>1?"{"+o.join(", ")+"}":o[0]}toIndexString(){const o=[];for(let v=0;v":a.start.toString():a.start.toString()+".."+(a.stop-1).toString())}return o.length>1?"{"+o.join(", ")+"}":o[0]}toTokenString(o,v){const a=[];for(let c=0;c1?"{"+a.join(", ")+"}":a[0]}elementName(o,v,a){return a===n.EOF?"":a===n.EPSILON?"":o[a]||v[a]}get length(){return this.intervals.map(o=>o.length).reduce((o,v)=>o+v)}}Se.exports={Interval:p,IntervalSet:C}},4589:(Se,X,g)=>{const{Set:n,BitSet:p}=g(3340),{Token:C}=g(6205),{ATNConfig:b}=g(7745),{IntervalSet:o}=g(9173),{RuleStopState:v}=g(5516),{RuleTransition:a,NotSetTransition:c,WildcardTransition:s,AbstractPredicateTransition:l}=g(6850),{predictionContextFromRuleContext:d,PredictionContext:r,SingletonPredictionContext:u}=g(6185);class h{constructor(_){this.atn=_}getDecisionLookahead(_){if(null===_)return null;const M=_.transitions.length,x=[];for(let w=0;w{const{Token:n}=g(6205),p=g(9495),C=g(9882),{RecognitionException:b}=g(5858),{LexerNoViableAltException:o}=g(5858);class a extends p{constructor(s){super(),this._input=s,this._factory=C.DEFAULT,this._tokenFactorySourcePair=[this,s],this._interp=null,this._token=null,this._tokenStartCharIndex=-1,this._tokenStartLine=-1,this._tokenStartColumn=-1,this._hitEOF=!1,this._channel=n.DEFAULT_CHANNEL,this._type=n.INVALID_TYPE,this._modeStack=[],this._mode=a.DEFAULT_MODE,this._text=null}reset(){null!==this._input&&this._input.seek(0),this._token=null,this._type=n.INVALID_TYPE,this._channel=n.DEFAULT_CHANNEL,this._tokenStartCharIndex=-1,this._tokenStartColumn=-1,this._tokenStartLine=-1,this._text=null,this._hitEOF=!1,this._mode=a.DEFAULT_MODE,this._modeStack=[],this._interp.reset()}nextToken(){if(null===this._input)throw"nextToken requires a non-null input stream.";const s=this._input.mark();try{for(;;){if(this._hitEOF)return this.emitEOF(),this._token;this._token=null,this._channel=n.DEFAULT_CHANNEL,this._tokenStartCharIndex=this._input.index,this._tokenStartColumn=this._interp.column,this._tokenStartLine=this._interp.line,this._text=null;let l=!1;for(;;){this._type=n.INVALID_TYPE;let d=a.SKIP;try{d=this._interp.match(this._input,this._mode)}catch(r){if(!(r instanceof b))throw console.log(r.stack),r;this.notifyListeners(r),this.recover(r)}if(this._input.LA(1)===n.EOF&&(this._hitEOF=!0),this._type===n.INVALID_TYPE&&(this._type=d),this._type===a.SKIP){l=!0;break}if(this._type!==a.MORE)break}if(!l)return null===this._token&&this.emit(),this._token}}finally{this._input.release(s)}}skip(){this._type=a.SKIP}more(){this._type=a.MORE}mode(s){this._mode=s}pushMode(s){this._interp.debug&&console.log("pushMode "+s),this._modeStack.push(this._mode),this.mode(s)}popMode(){if(0===this._modeStack.length)throw"Empty Stack";return this._interp.debug&&console.log("popMode back to "+this._modeStack.slice(0,-1)),this.mode(this._modeStack.pop()),this._mode}emitToken(s){this._token=s}emit(){const s=this._factory.create(this._tokenFactorySourcePair,this._type,this._text,this._channel,this._tokenStartCharIndex,this.getCharIndex()-1,this._tokenStartLine,this._tokenStartColumn);return this.emitToken(s),s}emitEOF(){const d=this._factory.create(this._tokenFactorySourcePair,n.EOF,null,n.DEFAULT_CHANNEL,this._input.index,this._input.index-1,this.line,this.column);return this.emitToken(d),d}getCharIndex(){return this._input.index}getAllTokens(){const s=[];let l=this.nextToken();for(;l.type!==n.EOF;)s.push(l),l=this.nextToken();return s}notifyListeners(s){const r=this._input.getText(this._tokenStartCharIndex,this._input.index),u="token recognition error at: '"+this.getErrorDisplay(r)+"'";this.getErrorListenerDispatch().syntaxError(this,null,this._tokenStartLine,this._tokenStartColumn,u,s)}getErrorDisplay(s){const l=[];for(let d=0;d":"\n"===s?"\\n":"\t"===s?"\\t":"\r"===s?"\\r":s}getCharErrorDisplay(s){return"'"+this.getErrorDisplayForChar(s)+"'"}recover(s){this._input.LA(1)!==n.EOF&&(s instanceof o?this._interp.consume(this._input):this._input.consume())}get inputStream(){return this._input}set inputStream(s){this._input=null,this._tokenFactorySourcePair=[this,this._input],this.reset(),this._input=s,this._tokenFactorySourcePair=[this,this._input]}get sourceName(){return this._input.sourceName}get type(){return this._type}set type(s){this._type=s}get line(){return this._interp.line}set line(s){this._interp.line=s}get column(){return this._interp.column}set column(s){this._interp.column=s}get text(){return null!==this._text?this._text:this._interp.getText(this._input)}set text(s){this._text=s}}a.DEFAULT_MODE=0,a.MORE=-2,a.SKIP=-3,a.DEFAULT_TOKEN_CHANNEL=n.DEFAULT_CHANNEL,a.HIDDEN=n.HIDDEN_CHANNEL,a.MIN_CHAR_VALUE=0,a.MAX_CHAR_VALUE=1114111,Se.exports=a},111:(Se,X,g)=>{const{Token:n}=g(6205),{ParseTreeListener:p,TerminalNode:C,ErrorNode:b}=g(5829),o=g(9495),{DefaultErrorStrategy:v}=g(2487),a=g(7499),c=g(2905),s=g(9042);class l extends p{constructor(u){super(),this.parser=u}enterEveryRule(u){console.log("enter "+this.parser.ruleNames[u.ruleIndex]+", LT(1)="+this.parser._input.LT(1).text)}visitTerminal(u){console.log("consume "+u.symbol+" rule "+this.parser.ruleNames[this.parser._ctx.ruleIndex])}exitEveryRule(u){console.log("exit "+this.parser.ruleNames[u.ruleIndex]+", LT(1)="+this.parser._input.LT(1).text)}}Se.exports=(()=>{class r extends o{constructor(h){super(),this._input=null,this._errHandler=new v,this._precedenceStack=[],this._precedenceStack.push(0),this._ctx=null,this.buildParseTrees=!0,this._tracer=null,this._parseListeners=null,this._syntaxErrors=0,this.setInputStream(h)}reset(){null!==this._input&&this._input.seek(0),this._errHandler.reset(this),this._ctx=null,this._syntaxErrors=0,this.setTrace(!1),this._precedenceStack=[],this._precedenceStack.push(0),null!==this._interp&&this._interp.reset()}match(h){let m=this.getCurrentToken();return m.type===h?(this._errHandler.reportMatch(this),this.consume()):(m=this._errHandler.recoverInline(this),this.buildParseTrees&&-1===m.tokenIndex&&this._ctx.addErrorNode(m)),m}matchWildcard(){let h=this.getCurrentToken();return h.type>0?(this._errHandler.reportMatch(this),this.consume()):(h=this._errHandler.recoverInline(this),this._buildParseTrees&&-1===h.tokenIndex&&this._ctx.addErrorNode(h)),h}getParseListeners(){return this._parseListeners||[]}addParseListener(h){if(null===h)throw"listener";null===this._parseListeners&&(this._parseListeners=[]),this._parseListeners.push(h)}removeParseListener(h){if(null!==this._parseListeners){const m=this._parseListeners.indexOf(h);m>=0&&this._parseListeners.splice(m,1),0===this._parseListeners.length&&(this._parseListeners=null)}}removeParseListeners(){this._parseListeners=null}triggerEnterRuleEvent(){if(null!==this._parseListeners){const h=this._ctx;this._parseListeners.forEach(function(m){m.enterEveryRule(h),h.enterRule(m)})}}triggerExitRuleEvent(){if(null!==this._parseListeners){const h=this._ctx;this._parseListeners.slice(0).reverse().forEach(function(m){h.exitRule(m),m.exitEveryRule(h)})}}getTokenFactory(){return this._input.tokenSource._factory}setTokenFactory(h){this._input.tokenSource._factory=h}getATNWithBypassAlts(){const h=this.getSerializedATN();if(null===h)throw"The current parser does not support an ATN with bypass alternatives.";let m=this.bypassAltsAtnCache[h];if(null===m){const _=new c;_.generateRuleBypassTransitions=!0,m=new a(_).deserialize(h),this.bypassAltsAtnCache[h]=m}return m}compileParseTreePattern(h,m,_){if(null===(_=_||null)&&null!==this.getTokenStream()){const x=this.getTokenStream().tokenSource;x instanceof s&&(_=x)}if(null===_)throw"Parser can't discover a lexer to use";return new ParseTreePatternMatcher(_,this).compile(h,m)}getInputStream(){return this.getTokenStream()}setInputStream(h){this.setTokenStream(h)}getTokenStream(){return this._input}setTokenStream(h){this._input=null,this.reset(),this._input=h}getCurrentToken(){return this._input.LT(1)}notifyErrorListeners(h,m,_){_=_||null,null===(m=m||null)&&(m=this.getCurrentToken()),this._syntaxErrors+=1;const M=m.line,x=m.column;this.getErrorListenerDispatch().syntaxError(this,m,M,x,h,_)}consume(){const h=this.getCurrentToken();h.type!==n.EOF&&this.getInputStream().consume();const m=null!==this._parseListeners&&this._parseListeners.length>0;if(this.buildParseTrees||m){let _;_=this._errHandler.inErrorRecoveryMode(this)?this._ctx.addErrorNode(h):this._ctx.addTokenNode(h),_.invokingState=this.state,m&&this._parseListeners.forEach(function(M){_ instanceof b||void 0!==_.isErrorNode&&_.isErrorNode()?M.visitErrorNode(_):_ instanceof C&&M.visitTerminal(_)})}return h}addContextToParseTree(){null!==this._ctx.parentCtx&&this._ctx.parentCtx.addChild(this._ctx)}enterRule(h,m,_){this.state=m,this._ctx=h,this._ctx.start=this._input.LT(1),this.buildParseTrees&&this.addContextToParseTree(),this.triggerEnterRuleEvent()}exitRule(){this._ctx.stop=this._input.LT(-1),this.triggerExitRuleEvent(),this.state=this._ctx.invokingState,this._ctx=this._ctx.parentCtx}enterOuterAlt(h,m){h.setAltNumber(m),this.buildParseTrees&&this._ctx!==h&&null!==this._ctx.parentCtx&&(this._ctx.parentCtx.removeLastChild(),this._ctx.parentCtx.addChild(h)),this._ctx=h}getPrecedence(){return 0===this._precedenceStack.length?-1:this._precedenceStack[this._precedenceStack.length-1]}enterRecursionRule(h,m,_,M){this.state=m,this._precedenceStack.push(M),this._ctx=h,this._ctx.start=this._input.LT(1),this.triggerEnterRuleEvent()}pushNewRecursionContext(h,m,_){const M=this._ctx;M.parentCtx=h,M.invokingState=m,M.stop=this._input.LT(-1),this._ctx=h,this._ctx.start=M.start,this.buildParseTrees&&this._ctx.addChild(M),this.triggerEnterRuleEvent()}unrollRecursionContexts(h){this._precedenceStack.pop(),this._ctx.stop=this._input.LT(-1);const m=this._ctx,_=this.getParseListeners();if(null!==_&&_.length>0)for(;this._ctx!==h;)this.triggerExitRuleEvent(),this._ctx=this._ctx.parentCtx;else this._ctx=h;m.parentCtx=h,this.buildParseTrees&&null!==h&&h.addChild(m)}getInvokingContext(h){let m=this._ctx;for(;null!==m;){if(m.ruleIndex===h)return m;m=m.parentCtx}return null}precpred(h,m){return m>=this._precedenceStack[this._precedenceStack.length-1]}inContext(h){return!1}isExpectedToken(h){const m=this._interp.atn;let _=this._ctx,x=m.nextTokens(m.states[this.state]);if(x.contains(h))return!0;if(!x.contains(n.EPSILON))return!1;for(;null!==_&&_.invokingState>=0&&x.contains(n.EPSILON);){if(x=m.nextTokens(m.states[_.invokingState].transitions[0].followState),x.contains(h))return!0;_=_.parentCtx}return!(!x.contains(n.EPSILON)||h!==n.EOF)}getExpectedTokens(){return this._interp.atn.getExpectedTokens(this.state,this._ctx)}getExpectedTokensWithinCurrentRule(){const h=this._interp.atn;return h.nextTokens(h.states[this.state])}getRuleIndex(h){const m=this.getRuleIndexMap()[h];return null!==m?m:-1}getRuleInvocationStack(h){null===(h=h||null)&&(h=this._ctx);const m=[];for(;null!==h;){const _=h.ruleIndex;m.push(_<0?"n/a":this.ruleNames[_]),h=h.parentCtx}return m}getDFAStrings(){return this._interp.decisionToDFA.toString()}dumpDFA(){let h=!1;for(let m=0;m0&&(h&&console.log(),this.printer.println("Decision "+_.decision+":"),this.printer.print(_.toString(this.literalNames,this.symbolicNames)),h=!0)}}getSourceName(){return this._input.sourceName}setTrace(h){h?(null!==this._tracer&&this.removeParseListener(this._tracer),this._tracer=new l(this),this.addParseListener(this._tracer)):(this.removeParseListener(this._tracer),this._tracer=null)}}return r.bypassAltsAtnCache={},r})()},7293:(Se,X,g)=>{const n=g(13),p=g(5829),C=p.INVALID_INTERVAL,b=p.TerminalNode,o=p.TerminalNodeImpl,v=p.ErrorNodeImpl,a=g(9173).Interval;class c extends n{constructor(d,r){super(d=d||null,r=r||null),this.ruleIndex=-1,this.children=null,this.start=null,this.stop=null,this.exception=null}copyFrom(d){this.parentCtx=d.parentCtx,this.invokingState=d.invokingState,this.children=null,this.start=d.start,this.stop=d.stop,d.children&&(this.children=[],d.children.map(function(r){r instanceof v&&(this.children.push(r),r.parentCtx=this)},this))}enterRule(d){}exitRule(d){}addChild(d){return null===this.children&&(this.children=[]),this.children.push(d),d}removeLastChild(){null!==this.children&&this.children.pop()}addTokenNode(d){const r=new o(d);return this.addChild(r),r.parentCtx=this,r}addErrorNode(d){const r=new v(d);return this.addChild(r),r.parentCtx=this,r}getChild(d,r){if(null===this.children||d<0||d>=this.children.length)return null;if(null===(r=r||null))return this.children[d];for(let u=0;u=this.children.length)return null;for(let u=0;u{const n=g(13),{Hash:p,Map:C,equalArrays:b}=g(3340);class o{constructor(w){this.cachedHashCode=w}isEmpty(){return this===o.EMPTY}hasEmptyPath(){return this.getReturnState(this.length-1)===o.EMPTY_RETURN_STATE}hashCode(){return this.cachedHashCode}updateHashCode(w){w.update(this.cachedHashCode)}}o.EMPTY=null,o.EMPTY_RETURN_STATE=2147483647,o.globalNodeCount=1,o.id=o.globalNodeCount;class a extends o{constructor(w,L){let A=0;const T=new p;null!==w?T.update(w,L):T.update(1),A=T.finish(),super(A),this.parentCtx=w,this.returnState=L}getParent(w){return this.parentCtx}getReturnState(w){return this.returnState}equals(w){return this===w||w instanceof a&&this.hashCode()===w.hashCode()&&this.returnState===w.returnState&&(null==this.parentCtx?null==w.parentCtx:this.parentCtx.equals(w.parentCtx))}toString(){const w=null===this.parentCtx?"":this.parentCtx.toString();return 0===w.length?this.returnState===o.EMPTY_RETURN_STATE?"$":""+this.returnState:this.returnState+" "+w}get length(){return 1}static create(w,L){return L===o.EMPTY_RETURN_STATE&&null===w?o.EMPTY:new a(w,L)}}class c extends a{constructor(){super(null,o.EMPTY_RETURN_STATE)}isEmpty(){return!0}getParent(w){return null}getReturnState(w){return this.returnState}equals(w){return this===w}toString(){return"$"}}o.EMPTY=new c;class s extends o{constructor(w,L){const A=new p;return A.update(w,L),super(A.finish()),this.parents=w,this.returnStates=L,this}isEmpty(){return this.returnStates[0]===o.EMPTY_RETURN_STATE}getParent(w){return this.parents[w]}getReturnState(w){return this.returnStates[w]}equals(w){return this===w||w instanceof s&&this.hashCode()===w.hashCode()&&b(this.returnStates,w.returnStates)&&b(this.parents,w.parents)}toString(){if(this.isEmpty())return"[]";{let w="[";for(let L=0;L0&&(w+=", "),this.returnStates[L]!==o.EMPTY_RETURN_STATE?(w+=this.returnStates[L],null!==this.parents[L]?w=w+" "+this.parents[L]:w+="null"):w+="$";return w+"]"}}get length(){return this.returnStates.length}}Se.exports={merge:function d(x,w,L,A){if(x===w)return x;if(x instanceof a&&w instanceof a)return function r(x,w,L,A){if(null!==A){let O=A.get(x,w);if(null!==O||(O=A.get(w,x),null!==O))return O}const T=function u(x,w,L){if(L){if(x===o.EMPTY||w===o.EMPTY)return o.EMPTY}else{if(x===o.EMPTY&&w===o.EMPTY)return o.EMPTY;if(x===o.EMPTY)return new s([w.parentCtx,null],[w.returnState,o.EMPTY_RETURN_STATE]);if(w===o.EMPTY)return new s([x.parentCtx,null],[x.returnState,o.EMPTY_RETURN_STATE])}return null}(x,w,L);if(null!==T)return null!==A&&A.set(x,w,T),T;if(x.returnState===w.returnState){const O=d(x.parentCtx,w.parentCtx,L,A);if(O===x.parentCtx)return x;if(O===w.parentCtx)return w;const E=a.create(O,x.returnState);return null!==A&&A.set(x,w,E),E}{let O=null;if((x===w||null!==x.parentCtx&&x.parentCtx===w.parentCtx)&&(O=x.parentCtx),null!==O){const j=[x.returnState,w.returnState];x.returnState>w.returnState&&(j[0]=w.returnState,j[1]=x.returnState);const S=new s([O,O],j);return null!==A&&A.set(x,w,S),S}const E=[x.returnState,w.returnState];let D=[x.parentCtx,w.parentCtx];x.returnState>w.returnState&&(E[0]=w.returnState,E[1]=x.returnState,D=[w.parentCtx,x.parentCtx]);const R=new s(D,E);return null!==A&&A.set(x,w,R),R}}(x,w,L,A);if(L){if(x instanceof c)return x;if(w instanceof c)return w}return x instanceof a&&(x=new s([x.getParent()],[x.returnState])),w instanceof a&&(w=new s([w.getParent()],[w.returnState])),function h(x,w,L,A){if(null!==A){let N=A.get(x,w);if(null!==N||(N=A.get(w,x),null!==N))return N}let T=0,O=0,E=0,D=[],R=[];for(;T{const{Token:n}=g(6205),{ConsoleErrorListener:p}=g(7967),{ProxyErrorListener:C}=g(7967);Se.exports=(()=>{class o{constructor(){this._listeners=[p.INSTANCE],this._interp=null,this._stateNumber=-1}checkVersion(a){"4.9.3"!==a&&console.log("ANTLR runtime and generated code versions disagree: 4.9.3!="+a)}addErrorListener(a){this._listeners.push(a)}removeErrorListeners(){this._listeners=[]}getLiteralNames(){return Object.getPrototypeOf(this).constructor.literalNames||[]}getSymbolicNames(){return Object.getPrototypeOf(this).constructor.symbolicNames||[]}getTokenNames(){if(!this.tokenNames){const a=this.getLiteralNames(),c=this.getSymbolicNames(),s=a.length>c.length?a.length:c.length;this.tokenNames=[];for(let l=0;l";let c=a.text;return null===c&&(c=a.type===n.EOF?"":"<"+a.type+">"),c=c.replace("\n","\\n").replace("\r","\\r").replace("\t","\\t"),"'"+c+"'"}getErrorListenerDispatch(){return new C(this._listeners)}sempred(a,c,s){return!0}precpred(a,c){return!0}get state(){return this._stateNumber}set state(a){this._stateNumber=a}}return o.tokenTypeMapCache={},o.ruleIndexMapCache={},o})()},13:(Se,X,g)=>{const{RuleNode:n}=g(5829),{INVALID_INTERVAL:p}=g(5829),C=g(5140);Se.exports=class b extends n{constructor(v,a){super(),this.parentCtx=v||null,this.invokingState=a||-1}depth(){let v=0,a=this;for(;null!==a;)a=a.parentCtx,v+=1;return v}isEmpty(){return-1===this.invokingState}getSourceInterval(){return p}getRuleContext(){return this}getPayload(){return this}getText(){return 0===this.getChildCount()?"":this.children.map(function(v){return v.getText()}).join("")}getAltNumber(){return 0}setAltNumber(v){}getChild(v){return null}getChildCount(){return 0}accept(v){return v.visitChildren(this)}toStringTree(v,a){return C.toStringTree(this,v,a)}toString(v,a){v=v||null,a=a||null;let c=this,s="[";for(;null!==c&&c!==a;){if(null===v)c.isEmpty()||(s+=c.invokingState);else{const l=c.ruleIndex;s+=l>=0&&l{let X=(()=>{class n{constructor(){this.source=null,this.type=null,this.channel=null,this.start=null,this.stop=null,this.tokenIndex=null,this.line=null,this.column=null,this._text=null}getTokenSource(){return this.source[0]}getInputStream(){return this.source[1]}get text(){return this._text}set text(C){this._text=C}}return n.INVALID_TYPE=0,n.EPSILON=-2,n.MIN_USER_TOKEN_TYPE=1,n.EOF=-1,n.DEFAULT_CHANNEL=0,n.HIDDEN_CHANNEL=1,n})();Se.exports={Token:X,CommonToken:(()=>{class n extends X{constructor(C,b,o,v,a){super(),this.source=void 0!==C?C:n.EMPTY_SOURCE,this.type=void 0!==b?b:null,this.channel=void 0!==o?o:X.DEFAULT_CHANNEL,this.start=void 0!==v?v:-1,this.stop=void 0!==a?a:-1,this.tokenIndex=-1,null!==this.source[0]?(this.line=C[0].line,this.column=C[0].column):this.column=-1}clone(){const C=new n(this.source,this.type,this.channel,this.start,this.stop);return C.tokenIndex=this.tokenIndex,C.line=this.line,C.column=this.column,C.text=this.text,C}toString(){let C=this.text;return C=null!==C?C.replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/\t/g,"\\t"):"","[@"+this.tokenIndex+","+this.start+":"+this.stop+"='"+C+"',<"+this.type+">"+(this.channel>0?",channel="+this.channel:"")+","+this.line+":"+this.column+"]"}get text(){if(null!==this._text)return this._text;const C=this.getInputStream();if(null===C)return null;const b=C.size;return this.start"}set text(C){this._text=C}}return n.EMPTY_SOURCE=[null,null],n})()}},3340:Se=>{function X(u){return null===u?"null":u}function g(u){return Array.isArray(u)?"["+u.map(X).join(", ")+"]":"null"}function n(u,h){return u?u.equals(h):u==h}function p(u){return u?u.hashCode():-1}String.prototype.seed=String.prototype.seed||Math.round(Math.random()*Math.pow(2,32)),String.prototype.hashCode=function(){const u=this.toString();let h,m;const _=3&u.length,M=u.length-_;let x=String.prototype.seed;const w=3432918353,L=461845907;let A=0;for(;A>>16)*w&65535)<<16)&4294967295,m=m<<15|m>>>17,m=(65535&m)*L+(((m>>>16)*L&65535)<<16)&4294967295,x^=m,x=x<<13|x>>>19,h=5*(65535&x)+((5*(x>>>16)&65535)<<16)&4294967295,x=27492+(65535&h)+((58964+(h>>>16)&65535)<<16);switch(m=0,_){case 3:m^=(255&u.charCodeAt(A+2))<<16;case 2:m^=(255&u.charCodeAt(A+1))<<8;case 1:m^=255&u.charCodeAt(A),m=(65535&m)*w+(((m>>>16)*w&65535)<<16)&4294967295,m=m<<15|m>>>17,m=(65535&m)*L+(((m>>>16)*L&65535)<<16)&4294967295,x^=m}return x^=u.length,x^=x>>>16,x=2246822507*(65535&x)+((2246822507*(x>>>16)&65535)<<16)&4294967295,x^=x>>>13,x=3266489909*(65535&x)+((3266489909*(x>>>16)&65535)<<16)&4294967295,x^=x>>>16,x>>>0};class b{constructor(){this.data=[]}add(h){this.data[h]=!0}or(h){const m=this;Object.keys(h.data).map(function(_){m.add(_)})}remove(h){delete this.data[h]}contains(h){return!0===this.data[h]}values(){return Object.keys(this.data)}minValue(){return Math.min.apply(null,this.values())}hashCode(){const h=new c;return h.update(this.values()),h.finish()}equals(h){return h instanceof b&&this.hashCode()===h.hashCode()}toString(){return"{"+this.values().join(", ")+"}"}get length(){return this.values().length}}class o{constructor(h,m){this.data={},this.hashFunction=h||p,this.equalsFunction=m||n}put(h,m){const _="hash_"+this.hashFunction(h);if(_ in this.data){const M=this.data[_];for(let x=0;x>>17,_*=461845907,this.count=this.count+1;let M=this.hash^_;M=M<<13|M>>>19,M=5*M+3864292196,this.hash=M}}}finish(){let h=this.hash^4*this.count;return h^=h>>>16,h*=2246822507,h^=h>>>13,h*=3266489909,h^=h>>>16,h}}Se.exports={Hash:c,Set:class C{constructor(h,m){this.data={},this.hashFunction=h||p,this.equalsFunction=m||n}add(h){const _="hash_"+this.hashFunction(h);if(_ in this.data){const M=this.data[_];for(let x=0;x{const n=g(4589),{IntervalSet:p}=g(9173),{Token:C}=g(6205);Se.exports=(()=>{class o{constructor(a,c){this.grammarType=a,this.maxTokenType=c,this.states=[],this.decisionToState=[],this.ruleToStartState=[],this.ruleToStopState=null,this.modeNameToStartState={},this.ruleToTokenType=null,this.lexerActions=null,this.modeToStartState=[]}nextTokensInContext(a,c){return new n(this).LOOK(a,null,c)}nextTokensNoContext(a){return null!==a.nextTokenWithinRule||(a.nextTokenWithinRule=this.nextTokensInContext(a,null),a.nextTokenWithinRule.readOnly=!0),a.nextTokenWithinRule}nextTokens(a,c){return void 0===c?this.nextTokensNoContext(a):this.nextTokensInContext(a,c)}addState(a){null!==a&&(a.atn=this,a.stateNumber=this.states.length),this.states.push(a)}removeState(a){this.states[a.stateNumber]=null}defineDecisionState(a){return this.decisionToState.push(a),a.decision=this.decisionToState.length-1,a.decision}getDecisionState(a){return 0===this.decisionToState.length?null:this.decisionToState[a]}getExpectedTokens(a,c){if(a<0||a>=this.states.length)throw"Invalid state number.";let l=this.nextTokens(this.states[a]);if(!l.contains(C.EPSILON))return l;const d=new p;for(d.addSet(l),d.removeOne(C.EPSILON);null!==c&&c.invokingState>=0&&l.contains(C.EPSILON);)l=this.nextTokens(this.states[c.invokingState].transitions[0].followState),d.addSet(l),d.removeOne(C.EPSILON),c=c.parentCtx;return l.contains(C.EPSILON)&&d.addOne(C.EOF),d}}return o.INVALID_ALT_NUMBER=0,o})()},7745:(Se,X,g)=>{const{DecisionState:n}=g(5516),{SemanticContext:p}=g(9454),{Hash:C}=g(3340);function b(a,c){if(null===a){const s={state:null,alt:null,context:null,semanticContext:null};return c&&(s.reachesIntoOuterContext=0),s}{const s={};return s.state=a.state||null,s.alt=void 0===a.alt?null:a.alt,s.context=a.context||null,s.semanticContext=a.semanticContext||null,c&&(s.reachesIntoOuterContext=a.reachesIntoOuterContext||0,s.precedenceFilterSuppressed=a.precedenceFilterSuppressed||!1),s}}class o{constructor(c,s){this.checkContext(c,s),c=b(c),s=b(s,!0),this.state=null!==c.state?c.state:s.state,this.alt=null!==c.alt?c.alt:s.alt,this.context=null!==c.context?c.context:s.context,this.semanticContext=null!==c.semanticContext?c.semanticContext:null!==s.semanticContext?s.semanticContext:p.NONE,this.reachesIntoOuterContext=s.reachesIntoOuterContext,this.precedenceFilterSuppressed=s.precedenceFilterSuppressed}checkContext(c,s){null==c.context&&(null===s||null==s.context)&&(this.context=null)}hashCode(){const c=new C;return this.updateHashCode(c),c.finish()}updateHashCode(c){c.update(this.state.stateNumber,this.alt,this.context,this.semanticContext)}equals(c){return this===c||c instanceof o&&this.state.stateNumber===c.state.stateNumber&&this.alt===c.alt&&(null===this.context?null===c.context:this.context.equals(c.context))&&this.semanticContext.equals(c.semanticContext)&&this.precedenceFilterSuppressed===c.precedenceFilterSuppressed}hashCodeForConfigSet(){const c=new C;return c.update(this.state.stateNumber,this.alt,this.semanticContext),c.finish()}equalsForConfigSet(c){return this===c||c instanceof o&&this.state.stateNumber===c.state.stateNumber&&this.alt===c.alt&&this.semanticContext.equals(c.semanticContext)}toString(){return"("+this.state+","+this.alt+(null!==this.context?",["+this.context.toString()+"]":"")+(this.semanticContext!==p.NONE?","+this.semanticContext.toString():"")+(this.reachesIntoOuterContext>0?",up="+this.reachesIntoOuterContext:"")+")"}}class v extends o{constructor(c,s){return super(c,s),this.lexerActionExecutor=c.lexerActionExecutor||(null!==s?s.lexerActionExecutor:null),this.passedThroughNonGreedyDecision=null!==s&&this.checkNonGreedyDecision(s,this.state),this.hashCodeForConfigSet=v.prototype.hashCode,this.equalsForConfigSet=v.prototype.equals,this}updateHashCode(c){c.update(this.state.stateNumber,this.alt,this.context,this.semanticContext,this.passedThroughNonGreedyDecision,this.lexerActionExecutor)}equals(c){return this===c||c instanceof v&&this.passedThroughNonGreedyDecision===c.passedThroughNonGreedyDecision&&(this.lexerActionExecutor?this.lexerActionExecutor.equals(c.lexerActionExecutor):!c.lexerActionExecutor)&&super.equals(c)}checkNonGreedyDecision(c,s){return c.passedThroughNonGreedyDecision||s instanceof n&&s.nonGreedy}}Se.exports.ATNConfig=o,Se.exports.LexerATNConfig=v},4280:(Se,X,g)=>{const n=g(9800),p=g(3340),{SemanticContext:C}=g(9454),{merge:b}=g(6185);function o(s){return s.hashCodeForConfigSet()}function v(s,l){return s===l||null!==s&&null!==l&&s.equalsForConfigSet(l)}class a{constructor(l){this.configLookup=new p.Set(o,v),this.fullCtx=void 0===l||l,this.readOnly=!1,this.configs=[],this.uniqueAlt=0,this.conflictingAlts=null,this.hasSemanticContext=!1,this.dipsIntoOuterContext=!1,this.cachedHashCode=-1}add(l,d){if(void 0===d&&(d=null),this.readOnly)throw"This set is readonly";l.semanticContext!==C.NONE&&(this.hasSemanticContext=!0),l.reachesIntoOuterContext>0&&(this.dipsIntoOuterContext=!0);const r=this.configLookup.add(l);if(r===l)return this.cachedHashCode=-1,this.configs.push(l),!0;const h=b(r.context,l.context,!this.fullCtx,d);return r.reachesIntoOuterContext=Math.max(r.reachesIntoOuterContext,l.reachesIntoOuterContext),l.precedenceFilterSuppressed&&(r.precedenceFilterSuppressed=!0),r.context=h,!0}getStates(){const l=new p.Set;for(let d=0;d{class X{constructor(n){void 0===n&&(n=null),this.readOnly=!1,this.verifyATN=null===n||n.verifyATN,this.generateRuleBypassTransitions=null!==n&&n.generateRuleBypassTransitions}}X.defaultOptions=new X,X.defaultOptions.readOnly=!0,Se.exports=X},7499:(Se,X,g)=>{const{Token:n}=g(6205),p=g(9800),C=g(8729),{ATNState:b,BasicState:o,DecisionState:v,BlockStartState:a,BlockEndState:c,LoopEndState:s,RuleStartState:l,RuleStopState:d,TokensStartState:r,PlusLoopbackState:u,StarLoopbackState:h,StarLoopEntryState:m,PlusBlockStartState:_,StarBlockStartState:M,BasicBlockStartState:x}=g(5516),{Transition:w,AtomTransition:L,SetTransition:A,NotSetTransition:T,RuleTransition:O,RangeTransition:E,ActionTransition:D,EpsilonTransition:R,WildcardTransition:j,PredicateTransition:N,PrecedencePredicateTransition:S}=g(6850),{IntervalSet:k}=g(9173),F=g(2905),{LexerActionType:Y,LexerSkipAction:se,LexerChannelAction:ne,LexerCustomAction:me,LexerMoreAction:$,LexerTypeAction:q,LexerPushModeAction:Q,LexerPopModeAction:ue,LexerModeAction:Me}=g(201),Xe="59627784-3BE5-417A-B9EB-8131A7286089",Be=["AADB8D7E-AEEF-4415-AD2B-8204D6CF042E",Xe],st=Xe;function Mt(xt,nt){const ot=[];return ot[xt-1]=nt,ot.map(function(vt){return nt})}const bt=function St(){const xt=[];for(let nt=0;nt<256;nt++)xt[nt]=(nt+256).toString(16).substr(1).toUpperCase();return xt}();Se.exports=class tt{constructor(nt){null==nt&&(nt=F.defaultOptions),this.deserializationOptions=nt,this.stateFactories=null,this.actionFactories=null}isFeatureSupported(nt,ot){const vt=Be.indexOf(nt);return!(vt<0)&&Be.indexOf(ot)>=vt}deserialize(nt){this.reset(nt),this.checkVersion(),this.checkUUID();const ot=this.readATN();this.readStates(ot),this.readRules(ot),this.readModes(ot);const vt=[];return this.readSets(ot,vt,this.readInt.bind(this)),this.isFeatureSupported(Xe,this.uuid)&&this.readSets(ot,vt,this.readInt32.bind(this)),this.readEdges(ot,vt),this.readDecisions(ot),this.readLexerActions(ot),this.markPrecedenceDecisions(ot),this.verifyATN(ot),this.deserializationOptions.generateRuleBypassTransitions&&ot.grammarType===C.PARSER&&(this.generateRuleBypassTransitions(ot),this.verifyATN(ot)),ot}reset(nt){const vt=nt.split("").map(function(rt){const J=rt.charCodeAt(0);return J>1?J-2:J+65534});vt[0]=nt.charCodeAt(0),this.data=vt,this.pos=0}checkVersion(){const nt=this.readInt();if(3!==nt)throw"Could not deserialize ATN with version "+nt+" (expected 3)."}checkUUID(){const nt=this.readUUID();if(Be.indexOf(nt)<0)throw st;this.uuid=nt}readATN(){const nt=this.readInt(),ot=this.readInt();return new p(nt,ot)}readStates(nt){let ot,vt,rt;const J=[],Ce=[],ee=this.readInt();for(let pe=0;pe0;)J.addTransition(ie.transitions[pe-1]),ie.transitions=ie.transitions.slice(-1);nt.ruleToStartState[ot].addTransition(new R(J)),Ce.addTransition(new R(ae));const Te=new o;nt.addState(Te),Te.addTransition(new L(Ce,nt.ruleToTokenType[ot])),J.addTransition(new R(Te))}stateIsEndStateFor(nt,ot){if(nt.ruleIndex!==ot||!(nt instanceof m))return null;const vt=nt.transitions[nt.transitions.length-1].target;return vt instanceof s&&vt.epsilonOnlyTransitions&&vt.transitions[0].target instanceof d?nt:null}markPrecedenceDecisions(nt){for(let ot=0;ot=0:vt.transitions.length<=1||vt instanceof d)}}checkCondition(nt,ot){if(!nt)throw null==ot&&(ot="IllegalState"),ot}readInt(){return this.data[this.pos++]}readInt32(){return this.readInt()|this.readInt()<<16}readLong(){return 4294967295&this.readInt32()|this.readInt32()<<32}readUUID(){const nt=[];for(let ot=7;ot>=0;ot--){const vt=this.readInt();nt[2*ot+1]=255&vt,nt[2*ot]=vt>>8&255}return bt[nt[0]]+bt[nt[1]]+bt[nt[2]]+bt[nt[3]]+"-"+bt[nt[4]]+bt[nt[5]]+"-"+bt[nt[6]]+bt[nt[7]]+"-"+bt[nt[8]]+bt[nt[9]]+"-"+bt[nt[10]]+bt[nt[11]]+bt[nt[12]]+bt[nt[13]]+bt[nt[14]]+bt[nt[15]]}edgeFactory(nt,ot,vt,rt,J,Ce,ee,ae){const ie=nt.states[rt];switch(ot){case w.EPSILON:return new R(ie);case w.RANGE:return new E(ie,0!==ee?n.EOF:J,Ce);case w.RULE:return new O(nt.states[J],Ce,ee,ie);case w.PREDICATE:return new N(ie,J,Ce,0!==ee);case w.PRECEDENCE:return new S(ie,J);case w.ATOM:return new L(ie,0!==ee?n.EOF:J);case w.ACTION:return new D(ie,J,Ce,0!==ee);case w.SET:return new A(ie,ae[J]);case w.NOT_SET:return new T(ie,ae[J]);case w.WILDCARD:return new j(ie);default:throw"The specified transition type: "+ot+" is not valid."}}stateFactory(nt,ot){if(null===this.stateFactories){const vt=[];vt[b.INVALID_TYPE]=null,vt[b.BASIC]=()=>new o,vt[b.RULE_START]=()=>new l,vt[b.BLOCK_START]=()=>new x,vt[b.PLUS_BLOCK_START]=()=>new _,vt[b.STAR_BLOCK_START]=()=>new M,vt[b.TOKEN_START]=()=>new r,vt[b.RULE_STOP]=()=>new d,vt[b.BLOCK_END]=()=>new c,vt[b.STAR_LOOP_BACK]=()=>new h,vt[b.STAR_LOOP_ENTRY]=()=>new m,vt[b.PLUS_LOOP_BACK]=()=>new u,vt[b.LOOP_END]=()=>new s,this.stateFactories=vt}if(nt>this.stateFactories.length||null===this.stateFactories[nt])throw"The specified state type "+nt+" is not valid.";{const vt=this.stateFactories[nt]();if(null!==vt)return vt.ruleIndex=ot,vt}}lexerActionFactory(nt,ot,vt){if(null===this.actionFactories){const rt=[];rt[Y.CHANNEL]=(J,Ce)=>new ne(J),rt[Y.CUSTOM]=(J,Ce)=>new me(J,Ce),rt[Y.MODE]=(J,Ce)=>new Me(J),rt[Y.MORE]=(J,Ce)=>$.INSTANCE,rt[Y.POP_MODE]=(J,Ce)=>ue.INSTANCE,rt[Y.PUSH_MODE]=(J,Ce)=>new Q(J),rt[Y.SKIP]=(J,Ce)=>se.INSTANCE,rt[Y.TYPE]=(J,Ce)=>new q(J),this.actionFactories=rt}if(nt>this.actionFactories.length||null===this.actionFactories[nt])throw"The specified lexer action type "+nt+" is not valid.";return this.actionFactories[nt](ot,vt)}}},4675:(Se,X,g)=>{const{DFAState:n}=g(5468),{ATNConfigSet:p}=g(4280),{getCachedPredictionContext:C}=g(6185),{Map:b}=g(3340);class o{constructor(a,c){return this.atn=a,this.sharedContextCache=c,this}getCachedContext(a){if(null===this.sharedContextCache)return a;const c=new b;return C(a,this.sharedContextCache,c)}}o.ERROR=new n(2147483647,new p),Se.exports=o},5516:Se=>{let g=(()=>{class m{constructor(){this.atn=null,this.stateNumber=m.INVALID_STATE_NUMBER,this.stateType=null,this.ruleIndex=0,this.epsilonOnlyTransitions=!1,this.transitions=[],this.nextTokenWithinRule=null}toString(){return this.stateNumber}equals(M){return M instanceof m&&this.stateNumber===M.stateNumber}isNonGreedyExitState(){return!1}addTransition(M,x){void 0===x&&(x=-1),0===this.transitions.length?this.epsilonOnlyTransitions=M.isEpsilon:this.epsilonOnlyTransitions!==M.isEpsilon&&(this.epsilonOnlyTransitions=!1),-1===x?this.transitions.push(M):this.transitions.splice(x,1,M)}}return m.INVALID_TYPE=0,m.BASIC=1,m.RULE_START=2,m.BLOCK_START=3,m.PLUS_BLOCK_START=4,m.STAR_BLOCK_START=5,m.TOKEN_START=6,m.RULE_STOP=7,m.BLOCK_END=8,m.STAR_LOOP_BACK=9,m.STAR_LOOP_ENTRY=10,m.PLUS_LOOP_BACK=11,m.LOOP_END=12,m.serializationNames=["INVALID","BASIC","RULE_START","BLOCK_START","PLUS_BLOCK_START","STAR_BLOCK_START","TOKEN_START","RULE_STOP","BLOCK_END","STAR_LOOP_BACK","STAR_LOOP_ENTRY","PLUS_LOOP_BACK","LOOP_END"],m.INVALID_STATE_NUMBER=-1,m})();class p extends g{constructor(){return super(),this.decision=-1,this.nonGreedy=!1,this}}class C extends p{constructor(){return super(),this.endState=null,this}}Se.exports={ATNState:g,BasicState:class n extends g{constructor(){super(),this.stateType=g.BASIC}},DecisionState:p,BlockStartState:C,BlockEndState:class o extends g{constructor(){return super(),this.stateType=g.BLOCK_END,this.startState=null,this}},LoopEndState:class u extends g{constructor(){return super(),this.stateType=g.LOOP_END,this.loopBackState=null,this}},RuleStartState:class a extends g{constructor(){return super(),this.stateType=g.RULE_START,this.stopState=null,this.isPrecedenceRule=!1,this}},RuleStopState:class v extends g{constructor(){return super(),this.stateType=g.RULE_STOP,this}},TokensStartState:class h extends p{constructor(){return super(),this.stateType=g.TOKEN_START,this}},PlusLoopbackState:class c extends p{constructor(){return super(),this.stateType=g.PLUS_LOOP_BACK,this}},StarLoopbackState:class d extends g{constructor(){return super(),this.stateType=g.STAR_LOOP_BACK,this}},StarLoopEntryState:class r extends p{constructor(){return super(),this.stateType=g.STAR_LOOP_ENTRY,this.loopBackState=null,this.isPrecedenceDecision=null,this}},PlusBlockStartState:class s extends C{constructor(){return super(),this.stateType=g.PLUS_BLOCK_START,this.loopBackState=null,this}},StarBlockStartState:class l extends C{constructor(){return super(),this.stateType=g.STAR_BLOCK_START,this}},BasicBlockStartState:class b extends C{constructor(){return super(),this.stateType=g.BLOCK_START,this}}}},8729:Se=>{Se.exports={LEXER:0,PARSER:1}},9462:(Se,X,g)=>{const{Token:n}=g(6205),p=g(9042),C=g(9800),b=g(4675),{DFAState:o}=g(5468),{OrderedATNConfigSet:v}=g(4280),{PredictionContext:a}=g(6185),{SingletonPredictionContext:c}=g(6185),{RuleStopState:s}=g(5516),{LexerATNConfig:l}=g(7745),{Transition:d}=g(6850),r=g(5168),{LexerNoViableAltException:u}=g(5858);function h(M){M.index=-1,M.line=0,M.column=-1,M.dfaState=null}class m{constructor(){h(this)}reset(){h(this)}}Se.exports=(()=>{class M extends b{constructor(w,L,A,T){super(L,T),this.decisionToDFA=A,this.recog=w,this.startIndex=-1,this.line=1,this.column=0,this.mode=p.DEFAULT_MODE,this.prevAccept=new m}copyState(w){this.column=w.column,this.line=w.line,this.mode=w.mode,this.startIndex=w.startIndex}match(w,L){this.match_calls+=1,this.mode=L;const A=w.mark();try{this.startIndex=w.index,this.prevAccept.reset();const T=this.decisionToDFA[L];return null===T.s0?this.matchATN(w):this.execATN(w,T.s0)}finally{w.release(A)}}reset(){this.prevAccept.reset(),this.startIndex=-1,this.line=1,this.column=0,this.mode=p.DEFAULT_MODE}matchATN(w){const L=this.atn.modeToStartState[this.mode];M.debug&&console.log("matchATN mode "+this.mode+" start: "+L);const A=this.mode,T=this.computeStartState(w,L),O=T.hasSemanticContext;T.hasSemanticContext=!1;const E=this.addDFAState(T);O||(this.decisionToDFA[this.mode].s0=E);const D=this.execATN(w,E);return M.debug&&console.log("DFA after matchATN: "+this.decisionToDFA[A].toLexerString()),D}execATN(w,L){M.debug&&console.log("start state closure="+L.configs),L.isAcceptState&&this.captureSimState(this.prevAccept,w,L);let A=w.LA(1),T=L;for(;;){M.debug&&console.log("execATN loop starting closure: "+T.configs);let O=this.getExistingTargetState(T,A);if(null===O&&(O=this.computeTargetState(w,T,A)),O===b.ERROR||(A!==n.EOF&&this.consume(w),O.isAcceptState&&(this.captureSimState(this.prevAccept,w,O),A===n.EOF)))break;A=w.LA(1),T=O}return this.failOrAccept(this.prevAccept,w,T.configs,A)}getExistingTargetState(w,L){if(null===w.edges||LM.MAX_DFA_EDGE)return null;let A=w.edges[L-M.MIN_DFA_EDGE];return void 0===A&&(A=null),M.debug&&null!==A&&console.log("reuse state "+w.stateNumber+" edge to "+A.stateNumber),A}computeTargetState(w,L,A){const T=new v;return this.getReachableConfigSet(w,L.configs,T,A),0===T.items.length?(T.hasSemanticContext||this.addDFAEdge(L,A,b.ERROR),b.ERROR):this.addDFAEdge(L,A,null,T)}failOrAccept(w,L,A,T){if(null!==this.prevAccept.dfaState)return this.accept(L,w.dfaState.lexerActionExecutor,this.startIndex,w.index,w.line,w.column),w.dfaState.prediction;if(T===n.EOF&&L.index===this.startIndex)return n.EOF;throw new u(this.recog,L,this.startIndex,A)}getReachableConfigSet(w,L,A,T){let O=C.INVALID_ALT_NUMBER;for(let E=0;EM.MAX_DFA_EDGE||(M.debug&&console.log("EDGE "+w+" -> "+A+" upon "+L),null===w.edges&&(w.edges=[]),w.edges[L-M.MIN_DFA_EDGE]=A),A}addDFAState(w){const L=new o(null,w);let A=null;for(let D=0;D{const X={CHANNEL:0,CUSTOM:1,MODE:2,MORE:3,POP_MODE:4,PUSH_MODE:5,SKIP:6,TYPE:7};class g{constructor(d){this.actionType=d,this.isPositionDependent=!1}hashCode(){const d=new Hash;return this.updateHashCode(d),d.finish()}updateHashCode(d){d.update(this.actionType)}equals(d){return this===d}}class n extends g{constructor(){super(X.SKIP)}execute(d){d.skip()}toString(){return"skip"}}n.INSTANCE=new n;class p extends g{constructor(d){super(X.TYPE),this.type=d}execute(d){d.type=this.type}updateHashCode(d){d.update(this.actionType,this.type)}equals(d){return this===d||d instanceof p&&this.type===d.type}toString(){return"type("+this.type+")"}}class C extends g{constructor(d){super(X.PUSH_MODE),this.mode=d}execute(d){d.pushMode(this.mode)}updateHashCode(d){d.update(this.actionType,this.mode)}equals(d){return this===d||d instanceof C&&this.mode===d.mode}toString(){return"pushMode("+this.mode+")"}}class b extends g{constructor(){super(X.POP_MODE)}execute(d){d.popMode()}toString(){return"popMode"}}b.INSTANCE=new b;class o extends g{constructor(){super(X.MORE)}execute(d){d.more()}toString(){return"more"}}o.INSTANCE=new o;class v extends g{constructor(d){super(X.MODE),this.mode=d}execute(d){d.mode(this.mode)}updateHashCode(d){d.update(this.actionType,this.mode)}equals(d){return this===d||d instanceof v&&this.mode===d.mode}toString(){return"mode("+this.mode+")"}}class a extends g{constructor(d,r){super(X.CUSTOM),this.ruleIndex=d,this.actionIndex=r,this.isPositionDependent=!0}execute(d){d.action(null,this.ruleIndex,this.actionIndex)}updateHashCode(d){d.update(this.actionType,this.ruleIndex,this.actionIndex)}equals(d){return this===d||d instanceof a&&this.ruleIndex===d.ruleIndex&&this.actionIndex===d.actionIndex}}class c extends g{constructor(d){super(X.CHANNEL),this.channel=d}execute(d){d._channel=this.channel}updateHashCode(d){d.update(this.actionType,this.channel)}equals(d){return this===d||d instanceof c&&this.channel===d.channel}toString(){return"channel("+this.channel+")"}}class s extends g{constructor(d,r){super(r.actionType),this.offset=d,this.action=r,this.isPositionDependent=!0}execute(d){this.action.execute(d)}updateHashCode(d){d.update(this.actionType,this.offset,this.action)}equals(d){return this===d||d instanceof s&&this.offset===d.offset&&this.action===d.action}}Se.exports={LexerActionType:X,LexerSkipAction:n,LexerChannelAction:c,LexerCustomAction:a,LexerIndexedCustomAction:s,LexerMoreAction:o,LexerTypeAction:p,LexerPushModeAction:C,LexerPopModeAction:b,LexerModeAction:v}},5168:(Se,X,g)=>{const{hashStuff:n}=g(3340),{LexerIndexedCustomAction:p}=g(201);class C{constructor(o){return this.lexerActions=null===o?[]:o,this.cachedHashCode=n(o),this}fixOffsetBeforeMatch(o){let v=null;for(let a=0;a{const n=g(3340),{Set:p,BitSet:C,DoubleDict:b}=n,o=g(9800),{ATNState:v,RuleStopState:a}=g(5516),{ATNConfig:c}=g(7745),{ATNConfigSet:s}=g(4280),{Token:l}=g(6205),{DFAState:d,PredPrediction:r}=g(5468),u=g(4675),h=g(5359),m=g(13),{SemanticContext:M}=(g(7293),g(9454)),{PredictionContext:x}=g(6185),{Interval:w}=g(9173),{Transition:L,SetTransition:A,NotSetTransition:T,RuleTransition:O,ActionTransition:E}=g(6850),{NoViableAltException:D}=g(5858),{SingletonPredictionContext:R,predictionContextFromRuleContext:j}=g(6185);Se.exports=class N extends u{constructor(k,F,Y,se){super(F,se),this.parser=k,this.decisionToDFA=Y,this.predictionMode=h.LL,this._input=null,this._startIndex=0,this._outerContext=null,this._dfa=null,this.mergeCache=null,this.debug=!1,this.debug_closure=!1,this.debug_add=!1,this.debug_list_atn_decisions=!1,this.dfa_debug=!1,this.retry_debug=!1}reset(){}adaptivePredict(k,F,Y){(this.debug||this.debug_list_atn_decisions)&&console.log("adaptivePredict decision "+F+" exec LA(1)=="+this.getLookaheadName(k)+" line "+k.LT(1).line+":"+k.LT(1).column),this._input=k,this._startIndex=k.index,this._outerContext=Y;const se=this.decisionToDFA[F];this._dfa=se;const ne=k.mark(),me=k.index;try{let $;if($=se.precedenceDfa?se.getPrecedenceStartState(this.parser.getPrecedence()):se.s0,null===$){null===Y&&(Y=m.EMPTY),(this.debug||this.debug_list_atn_decisions)&&console.log("predictATN decision "+se.decision+" exec LA(1)=="+this.getLookaheadName(k)+", outerContext="+Y.toString(this.parser.ruleNames));let ue=this.computeStartState(se.atnStartState,m.EMPTY,!1);se.precedenceDfa?(se.s0.configs=ue,ue=this.applyPrecedenceFilter(ue),$=this.addDFAState(se,new d(null,ue)),se.setPrecedenceStartState(this.parser.getPrecedence(),$)):($=this.addDFAState(se,new d(null,ue)),se.s0=$)}const q=this.execATN(se,$,k,me,Y);return this.debug&&console.log("DFA after predictATN: "+se.toString(this.parser.literalNames,this.parser.symbolicNames)),q}finally{this._dfa=null,this.mergeCache=null,k.seek(me),k.release(ne)}}execATN(k,F,Y,se,ne){(this.debug||this.debug_list_atn_decisions)&&console.log("execATN decision "+k.decision+" exec LA(1)=="+this.getLookaheadName(Y)+" line "+Y.LT(1).line+":"+Y.LT(1).column);let me,$=F;this.debug&&console.log("s0 = "+F);let q=Y.LA(1);for(;;){let Q=this.getExistingTargetState($,q);if(null===Q&&(Q=this.computeTargetState(k,$,q)),Q===u.ERROR){const ue=this.noViableAlt(Y,ne,$.configs,se);if(Y.seek(se),me=this.getSynValidOrSemInvalidAltThatFinishedDecisionEntryRule($.configs,ne),me!==o.INVALID_ALT_NUMBER)return me;throw ue}if(Q.requiresFullContext&&this.predictionMode!==h.SLL){let ue=null;if(null!==Q.predicates){this.debug&&console.log("DFA state has preds in DFA sim LL failover");const Xe=Y.index;if(Xe!==se&&Y.seek(se),ue=this.evalSemanticContext(Q.predicates,ne,!0),1===ue.length)return this.debug&&console.log("Full LL avoided"),ue.minValue();Xe!==se&&Y.seek(Xe)}this.dfa_debug&&console.log("ctx sensitive state "+ne+" in "+Q);const Oe=this.computeStartState(k.atnStartState,ne,!0);return this.reportAttemptingFullContext(k,ue,Q.configs,se,Y.index),me=this.execATNWithFullContext(k,Q,Oe,Y,se,ne),me}if(Q.isAcceptState){if(null===Q.predicates)return Q.prediction;const ue=Y.index;Y.seek(se);const Me=this.evalSemanticContext(Q.predicates,ne,!0);if(0===Me.length)throw this.noViableAlt(Y,ne,Q.configs,se);return 1===Me.length||this.reportAmbiguity(k,Q,se,ue,!1,Me,Q.configs),Me.minValue()}$=Q,q!==l.EOF&&(Y.consume(),q=Y.LA(1))}}getExistingTargetState(k,F){const Y=k.edges;return null===Y?null:Y[F+1]||null}computeTargetState(k,F,Y){const se=this.computeReachSet(F.configs,Y,!1);if(null===se)return this.addDFAEdge(k,F,Y,u.ERROR),u.ERROR;let ne=new d(null,se);const me=this.getUniqueAlt(se);if(this.debug){const $=h.getConflictingAltSubsets(se);console.log("SLL altSubSets="+n.arrayToString($)+", configs="+se+", predict="+me+", allSubsetsConflict="+h.allSubsetsConflict($)+", conflictingAlts="+this.getConflictingAlts(se))}return me!==o.INVALID_ALT_NUMBER?(ne.isAcceptState=!0,ne.configs.uniqueAlt=me,ne.prediction=me):h.hasSLLConflictTerminatingPrediction(this.predictionMode,se)&&(ne.configs.conflictingAlts=this.getConflictingAlts(se),ne.requiresFullContext=!0,ne.isAcceptState=!0,ne.prediction=ne.configs.conflictingAlts.minValue()),ne.isAcceptState&&ne.configs.hasSemanticContext&&(this.predicateDFAState(ne,this.atn.getDecisionState(k.decision)),null!==ne.predicates&&(ne.prediction=o.INVALID_ALT_NUMBER)),ne=this.addDFAEdge(k,F,Y,ne),ne}predicateDFAState(k,F){const Y=F.transitions.length,se=this.getConflictingAltsOrUniqueAlt(k.configs),ne=this.getPredsForAmbigAlts(se,k.configs,Y);null!==ne?(k.predicates=this.getPredicatePredictions(se,ne),k.prediction=o.INVALID_ALT_NUMBER):k.prediction=se.minValue()}execATNWithFullContext(k,F,Y,se,ne,me){(this.debug||this.debug_list_atn_decisions)&&console.log("execATNWithFullContext "+Y);let Q,q=!1,ue=Y;se.seek(ne);let Me=se.LA(1),Oe=-1;for(;;){if(Q=this.computeReachSet(ue,Me,!0),null===Q){const Be=this.noViableAlt(se,me,ue,ne);se.seek(ne);const $e=this.getSynValidOrSemInvalidAltThatFinishedDecisionEntryRule(ue,me);if($e!==o.INVALID_ALT_NUMBER)return $e;throw Be}const Xe=h.getConflictingAltSubsets(Q);if(this.debug&&console.log("LL altSubSets="+Xe+", predict="+h.getUniqueAlt(Xe)+", resolvesToJustOneViableAlt="+h.resolvesToJustOneViableAlt(Xe)),Q.uniqueAlt=this.getUniqueAlt(Q),Q.uniqueAlt!==o.INVALID_ALT_NUMBER){Oe=Q.uniqueAlt;break}if(this.predictionMode!==h.LL_EXACT_AMBIG_DETECTION){if(Oe=h.resolvesToJustOneViableAlt(Xe),Oe!==o.INVALID_ALT_NUMBER)break}else if(h.allSubsetsConflict(Xe)&&h.allSubsetsEqual(Xe)){q=!0,Oe=h.getSingleViableAlt(Xe);break}ue=Q,Me!==l.EOF&&(se.consume(),Me=se.LA(1))}return Q.uniqueAlt!==o.INVALID_ALT_NUMBER?(this.reportContextSensitivity(k,Oe,Q,ne,se.index),Oe):(this.reportAmbiguity(k,F,ne,se.index,q,null,Q),Oe)}computeReachSet(k,F,Y){this.debug&&console.log("in computeReachSet, starting closure: "+k),null===this.mergeCache&&(this.mergeCache=new b);const se=new s(Y);let ne=null;for(let $=0;$0&&(me=this.getAltThatFinishedDecisionEntryRule(ne),me!==o.INVALID_ALT_NUMBER)?me:o.INVALID_ALT_NUMBER}getAltThatFinishedDecisionEntryRule(k){const F=[];for(let Y=0;Y0||se.state instanceof a&&se.context.hasEmptyPath())&&F.indexOf(se.alt)<0&&F.push(se.alt)}return 0===F.length?o.INVALID_ALT_NUMBER:Math.min.apply(null,F)}splitAccordingToSemanticValidity(k,F){const Y=new s(k.fullCtx),se=new s(k.fullCtx);for(let ne=0;ne50))throw"problem";if(k.state instanceof a){if(!k.context.isEmpty()){for(let q=0;q=0&&(Xe+=1)}this.closureCheckingStopState(Oe,F,Y,Me,ne,Xe,$)}}}canDropLoopEntryEdgeInLeftRecursiveRule(k){const F=k.state;if(F.stateType!==v.STAR_LOOP_ENTRY||F.stateType!==v.STAR_LOOP_ENTRY||!F.isPrecedenceDecision||k.context.isEmpty()||k.context.hasEmptyPath())return!1;const Y=k.context.length;for(let $=0;$=0?this.parser.ruleNames[k]:""}getEpsilonTarget(k,F,Y,se,ne,me){switch(F.serializationType){case L.RULE:return this.ruleTransition(k,F);case L.PRECEDENCE:return this.precedenceTransition(k,F,Y,se,ne);case L.PREDICATE:return this.predTransition(k,F,Y,se,ne);case L.ACTION:return this.actionTransition(k,F);case L.EPSILON:return new c({state:F.target},k);case L.ATOM:case L.RANGE:case L.SET:return me&&F.matches(l.EOF,0,1)?new c({state:F.target},k):null;default:return null}}actionTransition(k,F){return this.debug&&console.log("ACTION edge "+F.ruleIndex+":"+(-1===F.actionIndex?65535:F.actionIndex)),new c({state:F.target},k)}precedenceTransition(k,F,Y,se,ne){this.debug&&(console.log("PRED (collectPredicates="+Y+") "+F.precedence+">=_p, ctx dependent=true"),null!==this.parser&&console.log("context surrounding pred is "+n.arrayToString(this.parser.getRuleInvocationStack())));let me=null;if(Y&&se)if(ne){const $=this._input.index;this._input.seek(this._startIndex);const q=F.getPredicate().evaluate(this.parser,this._outerContext);this._input.seek($),q&&(me=new c({state:F.target},k))}else{const $=M.andContext(k.semanticContext,F.getPredicate());me=new c({state:F.target,semanticContext:$},k)}else me=new c({state:F.target},k);return this.debug&&console.log("config from pred transition="+me),me}predTransition(k,F,Y,se,ne){this.debug&&(console.log("PRED (collectPredicates="+Y+") "+F.ruleIndex+":"+F.predIndex+", ctx dependent="+F.isCtxDependent),null!==this.parser&&console.log("context surrounding pred is "+n.arrayToString(this.parser.getRuleInvocationStack())));let me=null;if(Y&&(F.isCtxDependent&&se||!F.isCtxDependent))if(ne){const $=this._input.index;this._input.seek(this._startIndex);const q=F.getPredicate().evaluate(this.parser,this._outerContext);this._input.seek($),q&&(me=new c({state:F.target},k))}else{const $=M.andContext(k.semanticContext,F.getPredicate());me=new c({state:F.target,semanticContext:$},k)}else me=new c({state:F.target},k);return this.debug&&console.log("config from pred transition="+me),me}ruleTransition(k,F){this.debug&&console.log("CALL rule "+this.getRuleName(F.target.ruleIndex)+", ctx="+k.context);const se=R.create(k.context,F.followState.stateNumber);return new c({state:F.target,context:se},k)}getConflictingAlts(k){const F=h.getConflictingAltSubsets(k);return h.getAlts(F)}getConflictingAltsOrUniqueAlt(k){let F=null;return k.uniqueAlt!==o.INVALID_ALT_NUMBER?(F=new C,F.add(k.uniqueAlt)):F=k.conflictingAlts,F}getTokenName(k){if(k===l.EOF)return"EOF";if(null!==this.parser&&null!==this.parser.literalNames){if(!(k>=this.parser.literalNames.length&&k>=this.parser.symbolicNames.length))return(this.parser.literalNames[k]||this.parser.symbolicNames[k])+"<"+k+">";console.log(k+" ttype out of range: "+this.parser.literalNames),console.log(""+this.parser.getInputStream().getTokens())}return""+k}getLookaheadName(k){return this.getTokenName(k.LA(1))}dumpDeadEndConfigs(k){console.log("dead end configs: ");const F=k.getDeadEndConfigs();for(let Y=0;Y0){const me=se.state.transitions[0];me instanceof AtomTransition?ne="Atom "+this.getTokenName(me.label):me instanceof A&&(ne=(me instanceof T?"~":"")+"Set "+me.set)}console.error(se.toString(this.parser,!0)+":"+ne)}}noViableAlt(k,F,Y,se){return new D(this.parser,k,k.get(se),k.LT(1),Y,F)}getUniqueAlt(k){let F=o.INVALID_ALT_NUMBER;for(let Y=0;Y "+se+" upon "+this.getTokenName(Y)),null===se?null:(se=this.addDFAState(k,se),null===F||Y<-1||Y>this.atn.maxTokenType||(null===F.edges&&(F.edges=[]),F.edges[Y+1]=se,this.debug&&console.log("DFA=\n"+k.toString(null===this.parser?null:this.parser.literalNames,null===this.parser?null:this.parser.symbolicNames))),se)}addDFAState(k,F){if(F===u.ERROR)return F;const Y=k.states.get(F);return null!==Y?Y:(F.stateNumber=k.states.length,F.configs.readOnly||(F.configs.optimizeConfigs(this),F.configs.setReadonly(!0)),k.states.add(F),this.debug&&console.log("adding new DFA state: "+F),F)}reportAttemptingFullContext(k,F,Y,se,ne){if(this.debug||this.retry_debug){const me=new w(se,ne+1);console.log("reportAttemptingFullContext decision="+k.decision+":"+Y+", input="+this.parser.getTokenStream().getText(me))}null!==this.parser&&this.parser.getErrorListenerDispatch().reportAttemptingFullContext(this.parser,k,se,ne,F,Y)}reportContextSensitivity(k,F,Y,se,ne){if(this.debug||this.retry_debug){const me=new w(se,ne+1);console.log("reportContextSensitivity decision="+k.decision+":"+Y+", input="+this.parser.getTokenStream().getText(me))}null!==this.parser&&this.parser.getErrorListenerDispatch().reportContextSensitivity(this.parser,k,se,ne,F,Y)}reportAmbiguity(k,F,Y,se,ne,me,$){if(this.debug||this.retry_debug){const q=new w(Y,se+1);console.log("reportAmbiguity "+me+":"+$+", input="+this.parser.getTokenStream().getText(q))}null!==this.parser&&this.parser.getErrorListenerDispatch().reportAmbiguity(this.parser,k,Y,se,ne,me,$)}}},5359:(Se,X,g)=>{const{Map:n,BitSet:p,AltDict:C,hashStuff:b}=g(3340),o=g(9800),{RuleStopState:v}=g(5516),{ATNConfigSet:a}=g(4280),{ATNConfig:c}=g(7745),{SemanticContext:s}=g(9454),l={SLL:0,LL:1,LL_EXACT_AMBIG_DETECTION:2,hasSLLConflictTerminatingPrediction:function(d,r){if(l.allConfigsInRuleStopStates(r))return!0;if(d===l.SLL&&r.hasSemanticContext){const h=new a;for(let m=0;m1)return!0;return!1},allSubsetsEqual:function(d){let r=null;for(let u=0;u{const{Set:n,Hash:p,equalArrays:C}=g(3340);class b{hashCode(){const l=new p;return this.updateHashCode(l),l.finish()}evaluate(l,d){}evalPrecedence(l,d){return this}static andContext(l,d){if(null===l||l===b.NONE)return d;if(null===d||d===b.NONE)return l;const r=new a(l,d);return 1===r.opnds.length?r.opnds[0]:r}static orContext(l,d){if(null===l)return d;if(null===d)return l;if(l===b.NONE||d===b.NONE)return b.NONE;const r=new c(l,d);return 1===r.opnds.length?r.opnds[0]:r}}class o extends b{constructor(l,d,r){super(),this.ruleIndex=void 0===l?-1:l,this.predIndex=void 0===d?-1:d,this.isCtxDependent=void 0!==r&&r}evaluate(l,d){return l.sempred(this.isCtxDependent?d:null,this.ruleIndex,this.predIndex)}updateHashCode(l){l.update(this.ruleIndex,this.predIndex,this.isCtxDependent)}equals(l){return this===l||l instanceof o&&this.ruleIndex===l.ruleIndex&&this.predIndex===l.predIndex&&this.isCtxDependent===l.isCtxDependent}toString(){return"{"+this.ruleIndex+":"+this.predIndex+"}?"}}b.NONE=new o;class v extends b{constructor(l){super(),this.precedence=void 0===l?0:l}evaluate(l,d){return l.precpred(d,this.precedence)}evalPrecedence(l,d){return l.precpred(d,this.precedence)?b.NONE:null}compareTo(l){return this.precedence-l.precedence}updateHashCode(l){l.update(this.precedence)}equals(l){return this===l||l instanceof v&&this.precedence===l.precedence}toString(){return"{"+this.precedence+">=prec}?"}static filterPrecedencePredicates(l){const d=[];return l.values().map(function(r){r instanceof v&&d.push(r)}),d}}class a extends b{constructor(l,d){super();const r=new n;l instanceof a?l.opnds.map(function(h){r.add(h)}):r.add(l),d instanceof a?d.opnds.map(function(h){r.add(h)}):r.add(d);const u=v.filterPrecedencePredicates(r);if(u.length>0){let h=null;u.map(function(m){(null===h||m.precedenced.toString());return(l.length>3?l.slice(3):l).join("&&")}}class c extends b{constructor(l,d){super();const r=new n;l instanceof c?l.opnds.map(function(h){r.add(h)}):r.add(l),d instanceof c?d.opnds.map(function(h){r.add(h)}):r.add(d);const u=v.filterPrecedencePredicates(r);if(u.length>0){const h=u.sort(function(_,M){return _.compareTo(M)});r.add(h[h.length-1])}this.opnds=Array.from(r.values())}equals(l){return this===l||l instanceof c&&C(this.opnds,l.opnds)}updateHashCode(l){l.update(this.opnds,"OR")}evaluate(l,d){for(let r=0;rd.toString());return(l.length>3?l.slice(3):l).join("||")}}Se.exports={SemanticContext:b,PrecedencePredicate:v,Predicate:o}},6850:(Se,X,g)=>{const{Token:n}=g(6205),{IntervalSet:p}=g(9173),{Predicate:C,PrecedencePredicate:b}=g(9454);class o{constructor(x){if(null==x)throw"target cannot be null.";this.target=x,this.isEpsilon=!1,this.label=null}}o.EPSILON=1,o.RANGE=2,o.RULE=3,o.PREDICATE=4,o.ATOM=5,o.ACTION=6,o.SET=7,o.NOT_SET=8,o.WILDCARD=9,o.PRECEDENCE=10,o.serializationNames=["INVALID","EPSILON","RANGE","RULE","PREDICATE","ATOM","ACTION","SET","NOT_SET","WILDCARD","PRECEDENCE"],o.serializationTypes={EpsilonTransition:o.EPSILON,RangeTransition:o.RANGE,RuleTransition:o.RULE,PredicateTransition:o.PREDICATE,AtomTransition:o.ATOM,ActionTransition:o.ACTION,SetTransition:o.SET,NotSetTransition:o.NOT_SET,WildcardTransition:o.WILDCARD,PrecedencePredicateTransition:o.PRECEDENCE};class l extends o{constructor(x){super(x)}}class u extends o{constructor(x,w){super(x),this.serializationType=o.SET,null!=w?this.label=w:(this.label=new p,this.label.addOne(n.INVALID_TYPE))}matches(x,w,L){return this.label.contains(x)}toString(){return this.label.toString()}}Se.exports={Transition:o,AtomTransition:class v extends o{constructor(x,w){super(x),this.label_=w,this.label=this.makeLabel(),this.serializationType=o.ATOM}makeLabel(){const x=new p;return x.addOne(this.label_),x}matches(x,w,L){return this.label_===x}toString(){return this.label_}},SetTransition:u,NotSetTransition:class h extends u{constructor(x,w){super(x,w),this.serializationType=o.NOT_SET}matches(x,w,L){return x>=w&&x<=L&&!super.matches(x,w,L)}toString(){return"~"+super.toString()}},RuleTransition:class a extends o{constructor(x,w,L,A){super(x),this.ruleIndex=w,this.precedence=L,this.followState=A,this.serializationType=o.RULE,this.isEpsilon=!0}matches(x,w,L){return!1}},ActionTransition:class r extends o{constructor(x,w,L,A){super(x),this.serializationType=o.ACTION,this.ruleIndex=w,this.actionIndex=void 0===L?-1:L,this.isCtxDependent=void 0!==A&&A,this.isEpsilon=!0}matches(x,w,L){return!1}toString(){return"action_"+this.ruleIndex+":"+this.actionIndex}},EpsilonTransition:class c extends o{constructor(x,w){super(x),this.serializationType=o.EPSILON,this.isEpsilon=!0,this.outermostPrecedenceReturn=w}matches(x,w,L){return!1}toString(){return"epsilon"}},RangeTransition:class s extends o{constructor(x,w,L){super(x),this.serializationType=o.RANGE,this.start=w,this.stop=L,this.label=this.makeLabel()}makeLabel(){const x=new p;return x.addRange(this.start,this.stop),x}matches(x,w,L){return x>=this.start&&x<=this.stop}toString(){return"'"+String.fromCharCode(this.start)+"'..'"+String.fromCharCode(this.stop)+"'"}},WildcardTransition:class m extends o{constructor(x){super(x),this.serializationType=o.WILDCARD}matches(x,w,L){return x>=w&&x<=L}toString(){return"."}},PredicateTransition:class d extends l{constructor(x,w,L,A){super(x),this.serializationType=o.PREDICATE,this.ruleIndex=w,this.predIndex=L,this.isCtxDependent=A,this.isEpsilon=!0}matches(x,w,L){return!1}getPredicate(){return new C(this.ruleIndex,this.predIndex,this.isCtxDependent)}toString(){return"pred_"+this.ruleIndex+":"+this.predIndex}},PrecedencePredicateTransition:class _ extends l{constructor(x,w){super(x),this.serializationType=o.PRECEDENCE,this.precedence=w,this.isEpsilon=!0}matches(x,w,L){return!1}getPredicate(){return new b(this.precedence)}toString(){return this.precedence+" >= _p"}},AbstractPredicateTransition:l}},871:(Se,X,g)=>{X.ATN=g(9800),X.ATNDeserializer=g(7499),X.LexerATNSimulator=g(9462),X.ParserATNSimulator=g(6877),X.PredictionMode=g(5359)},5343:(Se,X,g)=>{const{Set:n}=g(3340),{DFAState:p}=g(5468),{StarLoopEntryState:C}=g(5516),{ATNConfigSet:b}=g(4280),{DFASerializer:o}=g(7279),{LexerDFASerializer:v}=g(7279);Se.exports=class a{constructor(s,l){if(void 0===l&&(l=0),this.atnStartState=s,this.decision=l,this._states=new n,this.s0=null,this.precedenceDfa=!1,s instanceof C&&s.isPrecedenceDecision){this.precedenceDfa=!0;const d=new p(null,new b);d.edges=[],d.isAcceptState=!1,d.requiresFullContext=!1,this.s0=d}}getPrecedenceStartState(s){if(!this.precedenceDfa)throw"Only precedence DFAs may contain a precedence start state.";return s<0||s>=this.s0.edges.length?null:this.s0.edges[s]||null}setPrecedenceStartState(s,l){if(!this.precedenceDfa)throw"Only precedence DFAs may contain a precedence start state.";s<0||(this.s0.edges[s]=l)}setPrecedenceDfa(s){if(this.precedenceDfa!==s){if(this._states=new n,s){const l=new p(null,new b);l.edges=[],l.isAcceptState=!1,l.requiresFullContext=!1,this.s0=l}else this.s0=null;this.precedenceDfa=s}}sortedStates(){return this._states.values().sort(function(l,d){return l.stateNumber-d.stateNumber})}toString(s,l){return s=s||null,l=l||null,null===this.s0?"":new o(this,s,l).toString()}toLexerString(){return null===this.s0?"":new v(this).toString()}get states(){return this._states}}},7279:(Se,X,g)=>{const n=g(3340);class p{constructor(o,v,a){this.dfa=o,this.literalNames=v||[],this.symbolicNames=a||[]}toString(){if(null===this.dfa.s0)return null;let o="";const v=this.dfa.sortedStates();for(let a=0;a"),o=o.concat(this.getStateString(d)),o=o.concat("\n"))}}}return 0===o.length?null:o}getEdgeLabel(o){return 0===o?"EOF":null!==this.literalNames||null!==this.symbolicNames?this.literalNames[o-1]||this.symbolicNames[o-1]:String.fromCharCode(o-1)}getStateString(o){const v=(o.isAcceptState?":":"")+"s"+o.stateNumber+(o.requiresFullContext?"^":"");return o.isAcceptState?null!==o.predicates?v+"=>"+n.arrayToString(o.predicates):v+"=>"+o.prediction.toString():v}}Se.exports={DFASerializer:p,LexerDFASerializer:class C extends p{constructor(o){super(o,null)}getEdgeLabel(o){return"'"+String.fromCharCode(o)+"'"}}}},5468:(Se,X,g)=>{const{ATNConfigSet:n}=g(4280),{Hash:p,Set:C}=g(3340);class o{constructor(a,c){return null===a&&(a=-1),null===c&&(c=new n),this.stateNumber=a,this.configs=c,this.edges=null,this.isAcceptState=!1,this.prediction=0,this.lexerActionExecutor=null,this.requiresFullContext=!1,this.predicates=null,this}getAltSet(){const a=new C;if(null!==this.configs)for(let c=0;c{X.DFA=g(5343),X.DFASerializer=g(7279).DFASerializer,X.LexerDFASerializer=g(7279).LexerDFASerializer,X.PredPrediction=g(5468).PredPrediction},9935:(Se,X,g)=>{const{BitSet:n}=g(3340),{ErrorListener:p}=g(7967),{Interval:C}=g(9173);Se.exports=class b extends p{constructor(v){super(),this.exactOnly=v=v||!0}reportAmbiguity(v,a,c,s,l,d,r){if(this.exactOnly&&!l)return;const u="reportAmbiguity d="+this.getDecisionDescription(v,a)+": ambigAlts="+this.getConflictingAlts(d,r)+", input='"+v.getTokenStream().getText(new C(c,s))+"'";v.notifyErrorListeners(u)}reportAttemptingFullContext(v,a,c,s,l,d){const r="reportAttemptingFullContext d="+this.getDecisionDescription(v,a)+", input='"+v.getTokenStream().getText(new C(c,s))+"'";v.notifyErrorListeners(r)}reportContextSensitivity(v,a,c,s,l,d){const r="reportContextSensitivity d="+this.getDecisionDescription(v,a)+", input='"+v.getTokenStream().getText(new C(c,s))+"'";v.notifyErrorListeners(r)}getDecisionDescription(v,a){const c=a.decision,s=a.atnStartState.ruleIndex,l=v.ruleNames;if(s<0||s>=l.length)return""+c;const d=l[s]||null;return null===d||0===d.length?""+c:`${c} (${d})`}getConflictingAlts(v,a){if(null!==v)return v;const c=new n;for(let s=0;s{class X{syntaxError(C,b,o,v,a,c){}reportAmbiguity(C,b,o,v,a,c,s){}reportAttemptingFullContext(C,b,o,v,a,c){}reportContextSensitivity(C,b,o,v,a,c){}}class g extends X{constructor(){super()}syntaxError(C,b,o,v,a,c){console.error("line "+o+":"+v+" "+a)}}g.INSTANCE=new g,Se.exports={ErrorListener:X,ConsoleErrorListener:g,ProxyErrorListener:class n extends X{constructor(C){if(super(),null===C)throw"delegates";return this.delegates=C,this}syntaxError(C,b,o,v,a,c){this.delegates.map(s=>s.syntaxError(C,b,o,v,a,c))}reportAmbiguity(C,b,o,v,a,c,s){this.delegates.map(l=>l.reportAmbiguity(C,b,o,v,a,c,s))}reportAttemptingFullContext(C,b,o,v,a,c){this.delegates.map(s=>s.reportAttemptingFullContext(C,b,o,v,a,c))}reportContextSensitivity(C,b,o,v,a,c){this.delegates.map(s=>s.reportContextSensitivity(C,b,o,v,a,c))}}}},2487:(Se,X,g)=>{const{Token:n}=g(6205),{NoViableAltException:p,InputMismatchException:C,FailedPredicateException:b,ParseCancellationException:o}=g(5858),{ATNState:v}=g(5516),{Interval:a,IntervalSet:c}=g(9173);class s{reset(u){}recoverInline(u){}recover(u,h){}sync(u){}inErrorRecoveryMode(u){}reportError(u){}}class l extends s{constructor(){super(),this.errorRecoveryMode=!1,this.lastErrorIndex=-1,this.lastErrorStates=null,this.nextTokensContext=null,this.nextTokenState=0}reset(u){this.endErrorCondition(u)}beginErrorCondition(u){this.errorRecoveryMode=!0}inErrorRecoveryMode(u){return this.errorRecoveryMode}endErrorCondition(u){this.errorRecoveryMode=!1,this.lastErrorStates=null,this.lastErrorIndex=-1}reportMatch(u){this.endErrorCondition(u)}reportError(u,h){this.inErrorRecoveryMode(u)||(this.beginErrorCondition(u),h instanceof p?this.reportNoViableAlternative(u,h):h instanceof C?this.reportInputMismatch(u,h):h instanceof b?this.reportFailedPredicate(u,h):(console.log("unknown recognition error type: "+h.constructor.name),console.log(h.stack),u.notifyErrorListeners(h.getOffendingToken(),h.getMessage(),h)))}recover(u,h){this.lastErrorIndex===u.getInputStream().index&&null!==this.lastErrorStates&&this.lastErrorStates.indexOf(u.state)>=0&&u.consume(),this.lastErrorIndex=u._input.index,null===this.lastErrorStates&&(this.lastErrorStates=[]),this.lastErrorStates.push(u.state);const m=this.getErrorRecoverySet(u);this.consumeUntil(u,m)}sync(u){if(this.inErrorRecoveryMode(u))return;const h=u._interp.atn.states[u.state],m=u.getTokenStream().LA(1),_=u.atn.nextTokens(h);if(_.contains(m))return this.nextTokensContext=null,void(this.nextTokenState=v.INVALID_STATE_NUMBER);if(_.contains(n.EPSILON))null===this.nextTokensContext&&(this.nextTokensContext=u._ctx,this.nextTokensState=u._stateNumber);else switch(h.stateType){case v.BLOCK_START:case v.STAR_BLOCK_START:case v.PLUS_BLOCK_START:case v.STAR_LOOP_ENTRY:if(null!==this.singleTokenDeletion(u))return;throw new C(u);case v.PLUS_LOOP_BACK:case v.STAR_LOOP_BACK:this.reportUnwantedToken(u);const M=new c;M.addSet(u.getExpectedTokens());const x=M.addSet(this.getErrorRecoverySet(u));this.consumeUntil(u,x)}}reportNoViableAlternative(u,h){const m=u.getTokenStream();let _;_=null!==m?h.startToken.type===n.EOF?"":m.getText(new a(h.startToken.tokenIndex,h.offendingToken.tokenIndex)):"";const M="no viable alternative at input "+this.escapeWSAndQuote(_);u.notifyErrorListeners(M,h.offendingToken,h)}reportInputMismatch(u,h){const m="mismatched input "+this.getTokenErrorDisplay(h.offendingToken)+" expecting "+h.getExpectedTokens().toString(u.literalNames,u.symbolicNames);u.notifyErrorListeners(m,h.offendingToken,h)}reportFailedPredicate(u,h){u.notifyErrorListeners("rule "+u.ruleNames[u._ctx.ruleIndex]+" "+h.message,h.offendingToken,h)}reportUnwantedToken(u){if(this.inErrorRecoveryMode(u))return;this.beginErrorCondition(u);const h=u.getCurrentToken(),M="extraneous input "+this.getTokenErrorDisplay(h)+" expecting "+this.getExpectedTokens(u).toString(u.literalNames,u.symbolicNames);u.notifyErrorListeners(M,h,null)}reportMissingToken(u){if(this.inErrorRecoveryMode(u))return;this.beginErrorCondition(u);const h=u.getCurrentToken(),_="missing "+this.getExpectedTokens(u).toString(u.literalNames,u.symbolicNames)+" at "+this.getTokenErrorDisplay(h);u.notifyErrorListeners(_,h,null)}recoverInline(u){const h=this.singleTokenDeletion(u);if(null!==h)return u.consume(),h;if(this.singleTokenInsertion(u))return this.getMissingSymbol(u);throw new C(u)}singleTokenInsertion(u){const h=u.getTokenStream().LA(1),m=u._interp.atn;return!!m.nextTokens(m.states[u.state].transitions[0].target,u._ctx).contains(h)&&(this.reportMissingToken(u),!0)}singleTokenDeletion(u){const h=u.getTokenStream().LA(2);if(this.getExpectedTokens(u).contains(h)){this.reportUnwantedToken(u),u.consume();const _=u.getCurrentToken();return this.reportMatch(u),_}return null}getMissingSymbol(u){const h=u.getCurrentToken(),_=this.getExpectedTokens(u).first();let M;M=_===n.EOF?"":"";let x=h;const w=u.getTokenStream().LT(-1);return x.type===n.EOF&&null!==w&&(x=w),u.getTokenFactory().create(x.source,_,M,n.DEFAULT_CHANNEL,-1,-1,x.line,x.column)}getExpectedTokens(u){return u.getExpectedTokens()}getTokenErrorDisplay(u){if(null===u)return"";let h=u.text;return null===h&&(h=u.type===n.EOF?"":"<"+u.type+">"),this.escapeWSAndQuote(h)}escapeWSAndQuote(u){return"'"+(u=(u=(u=u.replace(/\n/g,"\\n")).replace(/\r/g,"\\r")).replace(/\t/g,"\\t"))+"'"}getErrorRecoverySet(u){const h=u._interp.atn;let m=u._ctx;const _=new c;for(;null!==m&&m.invokingState>=0;){const w=h.nextTokens(h.states[m.invokingState].transitions[0].followState);_.addSet(w),m=m.parentCtx}return _.removeOne(n.EPSILON),_}consumeUntil(u,h){let m=u.getTokenStream().LA(1);for(;m!==n.EOF&&!h.contains(m);)u.consume(),m=u.getTokenStream().LA(1)}}Se.exports={BailErrorStrategy:class d extends l{constructor(){super()}recover(u,h){let m=u._ctx;for(;null!==m;)m.exception=h,m=m.parentCtx;throw new o(h)}recoverInline(u){this.recover(u,new C(u))}sync(u){}},DefaultErrorStrategy:l}},5858:(Se,X,g)=>{const{PredicateTransition:n}=g(6850),{Interval:p}=g(9173).Interval;class C extends Error{constructor(d){super(d.message),Error.captureStackTrace?Error.captureStackTrace(this,C):new Error,this.message=d.message,this.recognizer=d.recognizer,this.input=d.input,this.ctx=d.ctx,this.offendingToken=null,this.offendingState=-1,null!==this.recognizer&&(this.offendingState=this.recognizer.state)}getExpectedTokens(){return null!==this.recognizer?this.recognizer.atn.getExpectedTokens(this.offendingState,this.ctx):null}toString(){return this.message}}function a(l,d){return null!==d?d:"failed predicate: {"+l+"}?"}class s extends Error{constructor(){super(),Error.captureStackTrace(this,s)}}Se.exports={RecognitionException:C,NoViableAltException:class o extends C{constructor(d,r,u,h,m,_){_=_||d._ctx,h=h||d.getCurrentToken(),u=u||d.getCurrentToken(),r=r||d.getInputStream(),super({message:"",recognizer:d,input:r,ctx:_}),this.deadEndConfigs=m,this.startToken=u,this.offendingToken=h}},LexerNoViableAltException:class b extends C{constructor(d,r,u,h){super({message:"",recognizer:d,input:r,ctx:null}),this.startIndex=u,this.deadEndConfigs=h}toString(){let d="";return this.startIndex>=0&&this.startIndex{Se.exports.RecognitionException=g(5858).RecognitionException,Se.exports.NoViableAltException=g(5858).NoViableAltException,Se.exports.LexerNoViableAltException=g(5858).LexerNoViableAltException,Se.exports.InputMismatchException=g(5858).InputMismatchException,Se.exports.FailedPredicateException=g(5858).FailedPredicateException,Se.exports.DiagnosticErrorListener=g(9935),Se.exports.BailErrorStrategy=g(2487).BailErrorStrategy,Se.exports.DefaultErrorStrategy=g(2487).DefaultErrorStrategy,Se.exports.ErrorListener=g(7967).ErrorListener},6419:()=>{String.prototype.codePointAt||function(){"use strict";var Se=function(){let g;try{const n={},p=Object.defineProperty;g=p(n,n,n)&&p}catch{}return g}();const X=function(g){if(null==this)throw TypeError();const n=String(this),p=n.length;let C=g?Number(g):0;if(C!=C&&(C=0),C<0||C>=p)return;const b=n.charCodeAt(C);let o;return b>=55296&&b<=56319&&p>C+1&&(o=n.charCodeAt(C+1),o>=56320&&o<=57343)?1024*(b-55296)+o-56320+65536:b};Se?Se(String.prototype,"codePointAt",{value:X,configurable:!0,writable:!0}):String.prototype.codePointAt=X}()},9182:()=>{String.fromCodePoint||function(){const Se=function(){let p;try{const C={},b=Object.defineProperty;p=b(C,C,C)&&b}catch{}return p}(),X=String.fromCharCode,g=Math.floor,n=function(p){const b=[];let o,v,a=-1;const c=arguments.length;if(!c)return"";let s="";for(;++a1114111||g(l)!==l)throw RangeError("Invalid code point: "+l);l<=65535?b.push(l):(l-=65536,o=55296+(l>>10),v=l%1024+56320,b.push(o,v)),(a+1===c||b.length>16384)&&(s+=X.apply(null,b),b.length=0)}return s};Se?Se(String,"fromCodePoint",{value:n,configurable:!0,writable:!0}):String.fromCodePoint=n}()},5829:(Se,X,g)=>{const{Token:n}=g(6205),{Interval:p}=g(9173),C=new p(-1,-2);class b{}class o extends b{constructor(){super()}}class v extends o{constructor(){super()}}class c extends v{constructor(){super()}}class s extends c{constructor(){super()}}class r extends c{constructor(_){super(),this.parentCtx=null,this.symbol=_}getChild(_){return null}getSymbol(){return this.symbol}getParent(){return this.parentCtx}getPayload(){return this.symbol}getSourceInterval(){if(null===this.symbol)return C;const _=this.symbol.tokenIndex;return new p(_,_)}getChildCount(){return 0}accept(_){return _.visitTerminal(this)}getText(){return this.symbol.text}toString(){return this.symbol.type===n.EOF?"":this.symbol.text}}class h{walk(_,M){if(M instanceof s||void 0!==M.isErrorNode&&M.isErrorNode())_.visitErrorNode(M);else if(M instanceof c)_.visitTerminal(M);else{this.enterRule(_,M);for(let w=0;w{const n=g(3340),{Token:p}=g(6205),{ErrorNode:C,TerminalNode:b,RuleNode:o}=g(5829),v={toStringTree:function(a,c,s){c=c||null,null!==(s=s||null)&&(c=s.ruleNames);let l=v.getNodeText(a,c);l=n.escapeWhitespace(l,!1);const d=a.getChildCount();if(0===d)return l;let r="("+l+" ";d>0&&(l=v.toStringTree(a.getChild(0),c),r=r.concat(l));for(let u=1;u{const n=g(5829),p=g(5140);Se.exports={...n,Trees:p}},9807:function(){var Se;Se=typeof self<"u"?self:this,function(g){var n_searchParams="URLSearchParams"in Se,n_iterable="Symbol"in Se&&"iterator"in Symbol,n_blob="FileReader"in Se&&"Blob"in Se&&function(){try{return new Blob,!0}catch{return!1}}(),n_formData="FormData"in Se,n_arrayBuffer="ArrayBuffer"in Se;if(n_arrayBuffer)var C=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],b=ArrayBuffer.isView||function(E){return E&&C.indexOf(Object.prototype.toString.call(E))>-1};function o(E){if("string"!=typeof E&&(E=String(E)),/[^a-z0-9\-#$%&'*+.^_`|~]/i.test(E))throw new TypeError("Invalid character in header field name");return E.toLowerCase()}function v(E){return"string"!=typeof E&&(E=String(E)),E}function a(E){var D={next:function(){var R=E.shift();return{done:void 0===R,value:R}}};return n_iterable&&(D[Symbol.iterator]=function(){return D}),D}function c(E){this.map={},E instanceof c?E.forEach(function(D,R){this.append(R,D)},this):Array.isArray(E)?E.forEach(function(D){this.append(D[0],D[1])},this):E&&Object.getOwnPropertyNames(E).forEach(function(D){this.append(D,E[D])},this)}function s(E){if(E.bodyUsed)return Promise.reject(new TypeError("Already read"));E.bodyUsed=!0}function l(E){return new Promise(function(D,R){E.onload=function(){D(E.result)},E.onerror=function(){R(E.error)}})}function d(E){var D=new FileReader,R=l(D);return D.readAsArrayBuffer(E),R}function h(E){if(E.slice)return E.slice(0);var D=new Uint8Array(E.byteLength);return D.set(new Uint8Array(E)),D.buffer}function m(){return this.bodyUsed=!1,this._initBody=function(E){this._bodyInit=E,E?"string"==typeof E?this._bodyText=E:n_blob&&Blob.prototype.isPrototypeOf(E)?this._bodyBlob=E:n_formData&&FormData.prototype.isPrototypeOf(E)?this._bodyFormData=E:n_searchParams&&URLSearchParams.prototype.isPrototypeOf(E)?this._bodyText=E.toString():n_arrayBuffer&&n_blob&&function p(E){return E&&DataView.prototype.isPrototypeOf(E)}(E)?(this._bodyArrayBuffer=h(E.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):n_arrayBuffer&&(ArrayBuffer.prototype.isPrototypeOf(E)||b(E))?this._bodyArrayBuffer=h(E):this._bodyText=E=Object.prototype.toString.call(E):this._bodyText="",this.headers.get("content-type")||("string"==typeof E?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):n_searchParams&&URLSearchParams.prototype.isPrototypeOf(E)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},n_blob&&(this.blob=function(){var E=s(this);if(E)return E;if(this._bodyBlob)return Promise.resolve(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(new Blob([this._bodyArrayBuffer]));if(this._bodyFormData)throw new Error("could not read FormData body as blob");return Promise.resolve(new Blob([this._bodyText]))},this.arrayBuffer=function(){return this._bodyArrayBuffer?s(this)||Promise.resolve(this._bodyArrayBuffer):this.blob().then(d)}),this.text=function(){var E=s(this);if(E)return E;if(this._bodyBlob)return function r(E){var D=new FileReader,R=l(D);return D.readAsText(E),R}(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(function u(E){for(var D=new Uint8Array(E),R=new Array(D.length),j=0;j-1?D:E}(D.method||this.method||"GET"),this.mode=D.mode||this.mode||null,this.signal=D.signal||this.signal,this.referrer=null,("GET"===this.method||"HEAD"===this.method)&&R)throw new TypeError("Body not allowed for GET or HEAD requests");this._initBody(R)}function w(E){var D=new FormData;return E.trim().split("&").forEach(function(R){if(R){var j=R.split("="),N=j.shift().replace(/\+/g," "),S=j.join("=").replace(/\+/g," ");D.append(decodeURIComponent(N),decodeURIComponent(S))}}),D}function L(E){var D=new c;return E.replace(/\r?\n[\t ]+/g," ").split(/\r?\n/).forEach(function(j){var N=j.split(":"),S=N.shift().trim();if(S){var k=N.join(":").trim();D.append(S,k)}}),D}function A(E,D){D||(D={}),this.type="default",this.status=void 0===D.status?200:D.status,this.ok=this.status>=200&&this.status<300,this.statusText="statusText"in D?D.statusText:"OK",this.headers=new c(D.headers),this.url=D.url||"",this._initBody(E)}x.prototype.clone=function(){return new x(this,{body:this._bodyInit})},m.call(x.prototype),m.call(A.prototype),A.prototype.clone=function(){return new A(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new c(this.headers),url:this.url})},A.error=function(){var E=new A(null,{status:0,statusText:""});return E.type="error",E};var T=[301,302,303,307,308];A.redirect=function(E,D){if(-1===T.indexOf(D))throw new RangeError("Invalid status code");return new A(null,{status:D,headers:{location:E}})},g.DOMException=Se.DOMException;try{new g.DOMException}catch{g.DOMException=function(D,R){this.message=D,this.name=R;var j=Error(D);this.stack=j.stack},g.DOMException.prototype=Object.create(Error.prototype),g.DOMException.prototype.constructor=g.DOMException}function O(E,D){return new Promise(function(R,j){var N=new x(E,D);if(N.signal&&N.signal.aborted)return j(new g.DOMException("Aborted","AbortError"));var S=new XMLHttpRequest;function k(){S.abort()}S.onload=function(){var F={status:S.status,statusText:S.statusText,headers:L(S.getAllResponseHeaders()||"")};F.url="responseURL"in S?S.responseURL:F.headers.get("X-Request-URL"),R(new A("response"in S?S.response:S.responseText,F))},S.onerror=function(){j(new TypeError("Network request failed"))},S.ontimeout=function(){j(new TypeError("Network request failed"))},S.onabort=function(){j(new g.DOMException("Aborted","AbortError"))},S.open(N.method,N.url,!0),"include"===N.credentials?S.withCredentials=!0:"omit"===N.credentials&&(S.withCredentials=!1),"responseType"in S&&n_blob&&(S.responseType="blob"),N.headers.forEach(function(F,Y){S.setRequestHeader(Y,F)}),N.signal&&(N.signal.addEventListener("abort",k),S.onreadystatechange=function(){4===S.readyState&&N.signal.removeEventListener("abort",k)}),S.send(typeof N._bodyInit>"u"?null:N._bodyInit)})}O.polyfill=!0,Se.fetch||(Se.fetch=O,Se.Headers=c,Se.Request=x,Se.Response=A),g.Headers=c,g.Request=x,g.Response=A,g.fetch=O,Object.defineProperty(g,"__esModule",{value:!0})}({})},7098:Se=>{Se.exports=function(n){var p=new Date(n.getTime()),C=p.getTimezoneOffset();return p.setSeconds(0,0),6e4*C+p.getTime()%6e4}},2860:(Se,X,g)=>{var n=g(1420);Se.exports=function p(C,b){var o=n(C),v=Number(b);return o.setDate(o.getDate()+v),o}},6888:(Se,X,g)=>{var n=g(3895);Se.exports=function C(b,o){var v=Number(o);return n(b,36e5*v)}},3895:(Se,X,g)=>{var n=g(1420);Se.exports=function p(C,b){var o=n(C).getTime(),v=Number(b);return new Date(o+v)}},3745:(Se,X,g)=>{var n=g(3895);Se.exports=function C(b,o){var v=Number(o);return n(b,6e4*v)}},1277:(Se,X,g)=>{var n=g(1420),p=g(7255);Se.exports=function C(b,o){var v=n(b),a=Number(o),c=v.getMonth()+a,s=new Date(0);s.setFullYear(v.getFullYear(),c,1),s.setHours(0,0,0,0);var l=p(s);return v.setMonth(c,Math.min(l,v.getDate())),v}},3857:(Se,X,g)=>{var n=g(3895);Se.exports=function p(C,b){var o=Number(b);return n(C,1e3*o)}},338:(Se,X,g)=>{var n=g(2860);Se.exports=function p(C,b){var o=Number(b);return n(C,7*o)}},3763:(Se,X,g)=>{var n=g(1277);Se.exports=function p(C,b){var o=Number(b);return n(C,12*o)}},7255:(Se,X,g)=>{var n=g(1420);Se.exports=function p(C){var b=n(C),o=b.getFullYear(),v=b.getMonth(),a=new Date(0);return a.setFullYear(o,v+1,0),a.setHours(0,0,0,0),a.getDate()}},4853:Se=>{Se.exports=function X(g){return g instanceof Date}},1420:(Se,X,g)=>{var n=g(7098),p=g(4853),C=36e5,b=6e4,v=/[T ]/,a=/:/,c=/^(\d{2})$/,s=[/^([+-]\d{2})$/,/^([+-]\d{3})$/,/^([+-]\d{4})$/],l=/^(\d{4})/,d=[/^([+-]\d{4})/,/^([+-]\d{5})/,/^([+-]\d{6})/],r=/^-(\d{2})$/,u=/^-?(\d{3})$/,h=/^-?(\d{2})-?(\d{2})$/,m=/^-?W(\d{2})$/,_=/^-?W(\d{2})-?(\d{1})$/,M=/^(\d{2}([.,]\d*)?)$/,x=/^(\d{2}):?(\d{2}([.,]\d*)?)$/,w=/^(\d{2}):?(\d{2}):?(\d{2}([.,]\d*)?)$/,L=/([Z+-].*)$/,A=/^(Z)$/,T=/^([+-])(\d{2})$/,O=/^([+-])(\d{2}):?(\d{2})$/;function k(F,Y,se){Y=Y||0,se=se||0;var ne=new Date(0);ne.setUTCFullYear(F,0,4);var $=7*Y+se+1-(ne.getUTCDay()||7);return ne.setUTCDate(ne.getUTCDate()+$),ne}Se.exports=function E(F,Y){if(p(F))return new Date(F.getTime());if("string"!=typeof F)return new Date(F);var ne=(Y||{}).additionalDigits;ne=null==ne?2:Number(ne);var me=function D(F){var ne,Y={},se=F.split(v);if(a.test(se[0])?(Y.date=null,ne=se[0]):(Y.date=se[0],ne=se[1]),ne){var me=L.exec(ne);me?(Y.time=ne.replace(me[1],""),Y.timezone=me[1]):Y.time=ne}return Y}(F),$=function R(F,Y){var me,se=s[Y],ne=d[Y];if(me=l.exec(F)||ne.exec(F)){var $=me[1];return{year:parseInt($,10),restDateString:F.slice($.length)}}if(me=c.exec(F)||se.exec(F)){var q=me[1];return{year:100*parseInt(q,10),restDateString:F.slice(q.length)}}return{year:null}}(me.date,ne),ue=function j(F,Y){if(null===Y)return null;var se,ne,me;if(0===F.length)return(ne=new Date(0)).setUTCFullYear(Y),ne;if(se=r.exec(F))return ne=new Date(0),me=parseInt(se[1],10)-1,ne.setUTCFullYear(Y,me),ne;if(se=u.exec(F)){ne=new Date(0);var q=parseInt(se[1],10);return ne.setUTCFullYear(Y,0,q),ne}if(se=h.exec(F)){ne=new Date(0),me=parseInt(se[1],10)-1;var Q=parseInt(se[2],10);return ne.setUTCFullYear(Y,me,Q),ne}return(se=m.exec(F))?k(Y,parseInt(se[1],10)-1):(se=_.exec(F))?k(Y,parseInt(se[1],10)-1,parseInt(se[2],10)-1):null}($.restDateString,$.year);if(ue){var Xe,Me=ue.getTime(),Oe=0;if(me.time&&(Oe=function N(F){var Y,se,ne;if(Y=M.exec(F))return(se=parseFloat(Y[1].replace(",",".")))%24*C;if(Y=x.exec(F))return se=parseInt(Y[1],10),ne=parseFloat(Y[2].replace(",",".")),se%24*C+ne*b;if(Y=w.exec(F)){se=parseInt(Y[1],10),ne=parseInt(Y[2],10);var me=parseFloat(Y[3].replace(",","."));return se%24*C+ne*b+1e3*me}return null}(me.time)),me.timezone)Xe=function S(F){var Y,se;return(Y=A.exec(F))?0:(Y=T.exec(F))?(se=60*parseInt(Y[2],10),"+"===Y[1]?-se:se):(Y=O.exec(F))?(se=60*parseInt(Y[2],10)+parseInt(Y[3],10),"+"===Y[1]?-se:se):0}(me.timezone)*b;else{var Be=Me+Oe,$e=new Date(Be);Xe=n($e);var st=new Date(Be);st.setDate($e.getDate()+1);var Mt=n(st)-n($e);Mt>0&&(Xe+=Mt)}return new Date(Me+Oe+Xe)}return new Date(F)}},563:(Se,X,g)=>{X.formatArgs=function p(a){if(a[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+a[0]+(this.useColors?"%c ":" ")+"+"+Se.exports.humanize(this.diff),!this.useColors)return;const c="color: "+this.color;a.splice(1,0,c,"color: inherit");let s=0,l=0;a[0].replace(/%[a-zA-Z%]/g,d=>{"%%"!==d&&(s++,"%c"===d&&(l=s))}),a.splice(l,0,c)},X.save=function C(a){try{a?X.storage.setItem("debug",a):X.storage.removeItem("debug")}catch{}},X.load=function b(){let a;try{a=X.storage.getItem("debug")}catch{}return!a&&typeof process<"u"&&"env"in process&&(a=process.env.DEBUG),a},X.useColors=function n(){return!(!(typeof window<"u"&&window.process)||"renderer"!==window.process.type&&!window.process.__nwjs)||!(typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))&&(typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/))},X.storage=function o(){try{return localStorage}catch{}}(),X.destroy=(()=>{let a=!1;return()=>{a||(a=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})(),X.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"],X.log=console.debug||console.log||(()=>{}),Se.exports=g(6018)(X);const{formatters:v}=Se.exports;v.j=function(a){try{return JSON.stringify(a)}catch(c){return"[UnexpectedJSONParseError]: "+c.message}}},6018:(Se,X,g)=>{Se.exports=function n(p){function b(r){let u,m,_,h=null;function M(...x){if(!M.enabled)return;const w=M,L=Number(new Date);w.diff=L-(u||L),w.prev=u,w.curr=L,u=L,x[0]=b.coerce(x[0]),"string"!=typeof x[0]&&x.unshift("%O");let T=0;x[0]=x[0].replace(/%([a-zA-Z%])/g,(E,D)=>{if("%%"===E)return"%";T++;const R=b.formatters[D];return"function"==typeof R&&(E=R.call(w,x[T]),x.splice(T,1),T--),E}),b.formatArgs.call(w,x),(w.log||b.log).apply(w,x)}return M.namespace=r,M.useColors=b.useColors(),M.color=b.selectColor(r),M.extend=o,M.destroy=b.destroy,Object.defineProperty(M,"enabled",{enumerable:!0,configurable:!1,get:()=>null!==h?h:(m!==b.namespaces&&(m=b.namespaces,_=b.enabled(r)),_),set:x=>{h=x}}),"function"==typeof b.init&&b.init(M),M}function o(r,u){const h=b(this.namespace+(typeof u>"u"?":":u)+r);return h.log=this.log,h}function s(r){return r.toString().substring(2,r.toString().length-2).replace(/\.\*\?$/,"*")}return b.debug=b,b.default=b,b.coerce=function l(r){return r instanceof Error?r.stack||r.message:r},b.disable=function a(){const r=[...b.names.map(s),...b.skips.map(s).map(u=>"-"+u)].join(",");return b.enable(""),r},b.enable=function v(r){let u;b.save(r),b.namespaces=r,b.names=[],b.skips=[];const h=("string"==typeof r?r:"").split(/[\s,]+/),m=h.length;for(u=0;u{b[r]=p[r]}),b.names=[],b.skips=[],b.formatters={},b.selectColor=function C(r){let u=0;for(let h=0;h{"use strict";var X="%[a-f0-9]{2}",g=new RegExp("("+X+")|([^%]+?)","gi"),n=new RegExp("("+X+")+","gi");function p(o,v){try{return[decodeURIComponent(o.join(""))]}catch{}if(1===o.length)return o;var a=o.slice(0,v=v||1),c=o.slice(v);return Array.prototype.concat.call([],p(a),p(c))}function C(o){try{return decodeURIComponent(o)}catch{for(var v=o.match(g)||[],a=1;a"u"&&typeof process<"u"&&"[object process]"==={}.toString.call(process),u=typeof Uint8ClampedArray<"u"&&typeof importScripts<"u"&&typeof MessageChannel<"u";function x(){var Ce=setTimeout;return function(){return Ce(L,1)}}var w=new Array(1e3);function L(){for(var Ce=0;Ce{Se.exports=class X{constructor(n){this.capabilityStatement=n}serverCan(n){return this.supportFor({capabilityType:"interaction",where:{code:n}})}resourceCan(n,p){return this.supportFor({resourceType:n,capabilityType:"interaction",where:{code:p}})}serverSearch(n){return this.supportFor({capabilityType:"searchParam",where:{name:n}})}resourceSearch(n,p){return this.supportFor({resourceType:n,capabilityType:"searchParam",where:{name:p}})}supportFor({resourceType:n,capabilityType:p,where:C}={}){let b;if(b=n?this.resourceCapabilities({resourceType:n}):this.serverCapabilities(),!b)return!1;const o=b[p];if(C&&o){const v=Object.keys(C)[0];return void 0!==o.find(c=>c[v]===C[v])}return void 0!==o}interactionsFor({resourceType:n}={}){const p=this.resourceCapabilities({resourceType:n});return void 0===p?[]:p.interaction.map(C=>C.code)}searchParamsFor({resourceType:n}={}){const p=this.resourceCapabilities({resourceType:n});return void 0===p||void 0===p.searchParam?[]:p.searchParam.map(C=>C.name)}resourceCapabilities({resourceType:n}={}){return this.serverCapabilities().resource.find(b=>b.type===n)}capabilityContents({resourceType:n,capabilityType:p}={}){const C=this.resourceCapabilities({resourceType:n});if(void 0!==C)return C[p]}serverCapabilities(){return this.capabilityStatement.rest.find(n=>"server"===n.mode)}}},8907:(Se,X,g)=>{var n=g(7156).default;const p=g(133),{authFromCapability:C,authFromWellKnown:b}=g(6686),o=g(8237),v=g(7681),a=g(1370),{createQueryString:c,validResourceType:s}=g(9047),{FetchQueue:l}=g(1335),{deprecatePaginationArgs:d,deprecateHeaders:r}=g(3820),u=g(6836);Se.exports=class h{constructor({baseUrl:_,customHeaders:M,requestOptions:x,requestSigner:w,bearerToken:L}={}){this.httpClient=new o({baseUrl:_,customHeaders:M,requestOptions:x,requestSigner:w}),L&&(this.httpClient.bearerToken=L),this.resolver=new v(this),this.pagination=new a(this.httpClient)}static httpFor(_){return{request:o.requestFor(_),response:o.responseFor(_)}}get baseUrl(){return this.httpClient&&this.httpClient.baseUrl}set baseUrl(_){this.httpClient&&(this.httpClient.baseUrl=_)}get customHeaders(){return this.httpClient.customHeaders}set customHeaders(_){this.httpClient.customHeaders=_}set bearerToken(_){this.httpClient.bearerToken=_}resolve({reference:_,context:M,headers:x,options:w={}}={}){return this.resolver.resolve({reference:_,context:M,options:r(w,x)})}smartAuthMetadata({headers:_,options:M={}}={}){var x=this;return n(function*(){const w={options:r(M,_)};w.options.headers||(w.options.headers={}),w.options.headers.accept="application/fhir+json,application/json";const L=x.baseUrl.replace(/\/*$/,"/"),A=new l,T=A.buildJob(),O=A.buildJob(),E=A.buildJob(),D=[];return new Promise((R,j)=>{function N(S){D.push(S)===A.numJobs&&j(new Error(D.map(k=>k.message).join("; ")))}x.httpClient.request("GET",`${L}.well-known/smart-configuration`,O.addSignalOption(w)).then(S=>(A.safeAbortOthers(O),R(b(S)))).catch(S=>N(S)),x.capabilityStatement(T.addSignalOption(w)).then(S=>(A.safeAbortOthers(T),R(C(S)))).catch(S=>N(S)),x.httpClient.request("GET",`${L}.well-known/openid-configuration`,E.addSignalOption(w)).then(S=>(A.safeAbortOthers(E),R(b(S)))).catch(S=>N(S))})})()}capabilityStatement({headers:_,options:M={}}={}){return this.metadata||(this.metadata=this.httpClient.get("metadata",r(M,_))),this.metadata}request(_,{method:M="GET",options:x={},body:w}={}){return x.method&&x.method!==M&&console.warn(`WARNING: 'options.method' has been specified: ${x.method} but will be ignored. Use 'method' instead.`),this.httpClient.request(M,_,x,w)}read({resourceType:_,id:M,headers:x,options:w={}}={}){if(!s(_))throw new Error("Invalid resourceType",_);return this.httpClient.get(`${_}/${M}`,r(w,x))}vread({resourceType:_,id:M,version:x,headers:w,options:L={}}={}){if(!s(_))throw new Error("Invalid resourceType",_);return this.httpClient.get(`${_}/${M}/_history/${x}`,r(L,w))}create({resourceType:_,body:M,headers:x,options:w={}}={}){if(!s(_))throw new Error("Invalid resourceType",_);return this.httpClient.post(_,M,r(w,x))}delete({resourceType:_,id:M,headers:x,options:w={}}={}){if(!s(_))throw new Error("Invalid resourceType",_);return this.httpClient.delete(`${_}/${M}`,r(w,x))}update({resourceType:_,id:M,searchParams:x,body:w,headers:L,options:A={}}={}){if(!s(_))throw new Error("Invalid resourceType",_);if(M&&x)throw new Error("Conditional update with search params cannot be with id",_);if(x){const T=c(x);return this.httpClient.put(`${_}?${T}`,w,r(A,L))}return this.httpClient.put(`${_}/${M}`,w,r(A,L))}patch({resourceType:_,id:M,JSONPatch:x,headers:w,options:L={}}={}){if(!s(_))throw new Error("Invalid resourceType",_);const T={...r(L,w).headers||{},"Content-Type":"application/json-patch+json"};return this.httpClient.patch(`${_}/${M}`,x,{...L,headers:T})}batch({body:_,headers:M,options:x={}}={}){return this.httpClient.post("/",_,r(x,M))}transaction({body:_,headers:M,options:x={}}={}){return this.httpClient.post("/",_,r(x,M))}operation({name:_,resourceType:M,id:x,method:w="POST",input:L,options:A={}}={}){const T=["/"];if(M){if(!s(M))throw new Error("Invalid resourceType",M);T.push(`${M}/`)}return x&&T.push(`${x}/`),T.push(`${_.startsWith("$")?_:`$${_}`}`),"POST"===w.toUpperCase()?this.httpClient.post(T.join(""),L,A):"GET"===w.toUpperCase()?(L&&T.push(`?${p.stringify(L)}`),this.httpClient.get(T.join(""),A)):void 0}nextPage(_,M){const{bundle:x,options:w={}}=d(_,M);return this.pagination.nextPage(x,w)}prevPage(_,M){const{bundle:x,options:w={}}=d(_,M);return this.pagination.prevPage(x,w)}search({resourceType:_,compartment:M,searchParams:x,headers:w,options:L={}}={}){if(_&&!s(_))throw new Error("Invalid resourceType",_);if(M&&_)return this.compartmentSearch({resourceType:_,compartment:M,searchParams:x,options:r(L,w)});if(_)return this.resourceSearch({resourceType:_,searchParams:x,options:r(L,w)});if(x instanceof Object&&Object.keys(x).length>0)return this.systemSearch({searchParams:x,options:r(L,w)});throw new Error("search requires either searchParams or a resourceType")}resourceSearch({resourceType:_,searchParams:M,headers:x,options:w={}}={}){if(!s(_))throw new Error("Invalid resourceType",_);let L=_;return w.postSearch&&(L+="/_search"),this.baseSearch({searchPath:L,searchParams:M,headers:x,options:w})}systemSearch({searchParams:_,headers:M,options:x={}}={}){return this.baseSearch({searchPath:"/_search",searchParams:_,headers:M,options:x})}compartmentSearch({resourceType:_,compartment:M,searchParams:x,headers:w,options:L={}}={}){if(!s(_))throw new Error("Invalid resourceType",_);const{resourceType:A,id:T}=M;if(!s(A))throw new Error("Invalid compartmentType",A);let O=`/${A}/${T}/${_}`;return L.postSearch&&(O+="/_search"),this.baseSearch({searchPath:O,searchParams:x,headers:w,options:L})}baseSearch({searchPath:_,searchParams:M,headers:x,options:w}){const L=c(M),A=r(w,x);return this[w.postSearch?"postSearch":"getSearch"](_,L,A)}postSearch(_,M,x){const L={"Content-Type":"application/x-www-form-urlencoded",...x.headers},A={...x,headers:L};return this.httpClient.post(_,M,A)}getSearch(_,M,x){let w=_;return M&&(w+=`?${M}`),this.httpClient.get(w,x)}history({resourceType:_,id:M,headers:x,options:w={}}={}){if(_&&!s(_))throw new Error("Invalid resourceType",_);return M&&_?this.resourceHistory({resourceType:_,id:M,options:r(w,x)}):_?this.typeHistory({resourceType:_,options:r(w,x)}):this.systemHistory({options:r(w,x)})}resourceHistory({resourceType:_,id:M,headers:x,options:w={}}={}){if(!s(_))throw new Error("Invalid resourceType",_);return this.httpClient.get(`${_}/${M}/_history`,r(w,x))}typeHistory({resourceType:_,headers:M,options:x={}}={}){if(!s(_))throw new Error("Invalid resourceType",_);return this.httpClient.get(`${_}/_history`,r(x,M))}systemHistory({headers:_,options:M={}}={}){return this.httpClient.get("_history",r(M,_))}},Se.exports.CapabilityTool=u},3820:Se=>{Se.exports={deprecateHeaders:(n,p)=>p?(console.warn("WARNING: headers is deprecated and will be removed in the next major version. Use options.headers instead."),console.warn(JSON.stringify(p,null," ")),{headers:p,...n}):n,deprecatePaginationArgs:(n,p)=>{if(Object.prototype.hasOwnProperty.call(n,"resourceType")){console.warn("WARNING: positional parameters for pagination methods are deprecated and will be removed in the next major version. Call with ({ bundle, options }) rather than (bundle, headers)");const C={bundle:n};return p&&(C.options={headers:p}),C}return n}}},1335:(Se,X,g)=>{const{AbortController:n}=g(4783);class p{constructor(){this.controller=new n,this.resolving=!1}addSignalOption(o){return{signal:this.controller.signal,...o}}safeAbort(){this.resolving||this.controller.abort()}}Se.exports={FetchQueue:class C{constructor(){this.jobs=[],this.numJobs=0}buildJob(){const o=new p;return this.numJobs=this.jobs.push(o),o}safeAbortOthers(o){o.resolving=!0;for(let v=0,a=this.numJobs;v{Se.exports={fhirReferenceRegEx:/^((http|https):\/\/([A-Za-z0-9\\.:%$]*\/)*)?(Account|ActivityDefinition|AdverseEvent|AllergyIntolerance|Appointment|AppointmentResponse|AuditEvent|Basic|Binary|BiologicallyDerivedProduct|BodySite|BodyStructure|Bundle|CapabilityStatement|CarePlan|CareTeam|CatalogEntry|ChargeItem|ChargeItemDefinition|Claim|ClaimResponse|ClinicalImpression|CodeSystem|Communication|CommunicationRequest|CompartmentDefinition|Composition|ConceptMap|Condition|Conformance|Consent|Contract|Coverage|CoverageEligibilityRequest|CoverageEligibilityResponse|DataElement|DecisionSupportRule|DecisionSupportServiceModule|DetectedIssue|Device|DeviceComponent|DeviceDefinition|DeviceMetric|DeviceRequest|DeviceUseRequest|DeviceUseStatement|DiagnosticOrder|DiagnosticReport|DiagnosticRequest|DocumentManifest|DocumentReference|EffectEvidenceSynthesis|EligibilityRequest|EligibilityResponse|Encounter|Endpoint|EnrollmentRequest|EnrollmentResponse|EntryDefinition|EpisodeOfCare|EventDefinition|Evidence|EvidenceVariable|ExampleScenario|ExpansionProfile|ExplanationOfBenefit|FamilyMemberHistory|Flag|Goal|GraphDefinition|Group|GuidanceRequest|GuidanceResponse|HealthcareService|ImagingExcerpt|ImagingManifest|ImagingObjectSelection|ImagingStudy|Immunization|ImmunizationEvaluation|ImmunizationRecommendation|ImplementationGuide|ImplementationGuideInput|ImplementationGuideOutput|InsurancePlan|Invoice|ItemInstance|Library|Linkage|List|Location|Measure|MeasureReport|Media|Medication|MedicationAdministration|MedicationDispense|MedicationKnowledge|MedicationOrder|MedicationRequest|MedicationStatement|MedicinalProduct|MedicinalProductAuthorization|MedicinalProductClinicals|MedicinalProductContraindication|MedicinalProductDeviceSpec|MedicinalProductIndication|MedicinalProductIngredient|MedicinalProductInteraction|MedicinalProductManufactured|MedicinalProductPackaged|MedicinalProductPharmaceutical|MedicinalProductUndesirableEffect|MessageDefinition|MessageHeader|ModuleDefinition|ModuleMetadata|MolecularSequence|NamingSystem|NutritionOrder|NutritionRequest|Observation|ObservationDefinition|OccupationalData|OperationDefinition|OperationOutcome|Order|OrderResponse|OrderSet|Organization|OrganizationAffiliation|OrganizationRole|Patient|PaymentNotice|PaymentReconciliation|Person|PlanDefinition|Practitioner|PractitionerRole|Procedure|ProcedureRequest|ProcessRequest|ProcessResponse|ProductPlan|Protocol|Provenance|Questionnaire|QuestionnaireResponse|ReferralRequest|RelatedPerson|RequestGroup|ResearchDefinition|ResearchElementDefinition|ResearchStudy|ResearchSubject|RiskAssessment|RiskEvidenceSynthesis|Schedule|SearchParameter|Sequence|ServiceDefinition|ServiceRequest|Slot|Specimen|SpecimenDefinition|StructureDefinition|StructureMap|Subscription|Substance|SubstanceNucleicAcid|SubstancePolymer|SubstanceProtein|SubstanceReferenceInformation|SubstanceSourceMaterial|SubstanceSpecification|SupplyDelivery|SupplyRequest|Task|TerminologyCapabilities|TestReport|TestScript|UserSession|ValueSet|VerificationResult|VisionPrescription)\/[A-Za-z0-9\-.]{1,256}(\/_history\/[A-Za-z0-9\-.]{1,256})?$/}},8237:(Se,X,g)=>{var n=g(7156).default;g(1098).polyfill(),g(9807);const{logRequestError:p,logRequestInfo:C,logResponseInfo:b}=g(1566),o={accept:"application/fhir+json"},v="__response",a="__request";let s,l,c=!1;try{s=g(5899),l=g(5899).HttpsAgent,c=!0}catch{C("HTTP Agent is not available")}const d=new WeakMap;function u({status:m,data:_,method:M,headers:x,url:w}){const L={response:{status:m,data:_},config:{method:M,url:w,headers:x}};return p(L),L}Se.exports=class Rc{static lcKeys(_){return _&&Object.keys(_).reduce((M,x)=>(M[x.toLowerCase()]=_[x],M),{})}constructor({baseUrl:_,customHeaders:M={},requestOptions:x={},requestSigner:w}){this.baseUrl=_,this.customHeaders=M,this.baseRequestOptions=x,this.requestSigner=w}set baseUrl(_){if(!_)throw new Error("baseUrl cannot be blank");if("string"!=typeof _)throw new Error("baseUrl must be a string");this.baseUrlValue=_}get baseUrl(){return this.baseUrlValue}static responseFor(_){return _[v]}static requestFor(_){return _[a]}set bearerToken(_){this.authHeader={authorization:`Bearer ${_}`}}requestBuilder(_,M,x,w){const L={...this.baseRequestOptions,...x,method:_,body:(m=w,"string"==typeof m?m:JSON.stringify(m))};var m;let A={};return c||(A={keepalive:!Object.prototype.hasOwnProperty.call(L,"keepalive")||L.keepalive}),Object.assign(L,A,{headers:new Headers(this.mergeHeaders(x.headers))},function r(m,_={}){const M={baseUrl:m,agentOptions:_};return c?(d.get(M)||(m.startsWith("https")?d.set(M,{agent:new l(_)}):d.set(M,{agent:new s(_)})),d.get(M)):{}}(this.baseUrl,L)),this.requestSigner&&this.requestSigner(M,L),new Request(M,L)}request(_,M,x={},w){var L=this;return n(function*(){const A=L.expandUrl(M),T=L.requestBuilder(_,A,x,w);C(_,A,T.headers);const O=yield fetch(T),{status:E,headers:D}=O;b({status:E,response:O});const R=yield O.text();let j={};if(R)try{j=JSON.parse(R)}catch{throw j=R,u({status:E,data:j,method:_,headers:D,url:A})}if(!O.ok)throw u({status:E,data:j,method:_,headers:D,url:A});return Object.defineProperty(j,v,{writable:!1,enumerable:!1,value:O}),Object.defineProperty(j,a,{writable:!1,enumerable:!1,value:T}),j})()}get(_,M){var x=this;return n(function*(){return x.request("GET",_,M)})()}delete(_,M){var x=this;return n(function*(){return x.request("DELETE",_,M)})()}put(_,M,x={}){var w=this;return n(function*(){const L={"content-type":"application/fhir+json",...Rc.lcKeys(x.headers)},A={...x,headers:L};return w.request("PUT",_,A,M)})()}post(_,M,x={}){var w=this;return n(function*(){const L={"content-type":"application/fhir+json",...Rc.lcKeys(x.headers)},A={...x,headers:L};return w.request("POST",_,A,M)})()}patch(_,M,x){var w=this;return n(function*(){return w.request("PATCH",_,x,M)})()}expandUrl(_=""){return _.toLowerCase().startsWith("http")?_:this.baseUrl.endsWith("/")&&_.startsWith("/")?this.baseUrl+_.slice(1):this.baseUrl.endsWith("/")||_.startsWith("/")?this.baseUrl+_:`${this.baseUrl}/${_}`}mergeHeaders(_){const{lcKeys:M}=Rc;return{...M(o),...M(this.authHeader),...M(this.customHeaders),...M(_)}}}},1566:(Se,X,g)=>{const n=g(3187),p=g(563)("fhir-kit-client:error"),C=g(563)("fhir-kit-client:info");function b(l){return n(l)}function o(l){return b(l.raw&&"function"==typeof l.raw?l.raw():l)}Se.exports={logRequestError:function v(l){p.enabled&&(p("!!! Error"),l.response&&p(` Status: ${l.response.status}`),l.config&&(p(` ${l.config.method.toUpperCase()}: ${l.config.url}`),p(` Headers: ${o(l.config.headers)}`)),l.response&&l.response.data&&p(b(l.response.data)),p("!!! Request Error"))},logRequestInfo:function a(l,d,r){C.enabled&&(d&&C(`Request: ${l.toUpperCase()} ${d.toString()}`),C(`Request Headers: ${o(r)}`))},logResponseInfo:function c(l){C.enabled&&(C(`Response: ${l.status}`),l.data&&C(b(l.data)))},logError:function s(l){p.enabled&&p(l)}}},1370:Se=>{Se.exports=class X{constructor(n){this.httpClient=n}nextPage(n,{headers:p}={}){const C=n.link.find(b=>"next"===b.relation);return C?this.httpClient.get(C.url,{headers:p}):void 0}prevPage(n,{headers:p}={}){const C=n.link.find(b=>b.relation.match(/^prev(ious)?$/));return C?this.httpClient.get(C.url,{headers:p}):void 0}}},7681:(Se,X,g)=>{var n=g(7156).default;const{splitReference:p}=g(9047),{deprecateHeaders:C}=g(3820);Se.exports=class{constructor(b){this.client=b}resolve({reference:b,context:o,headers:v,options:a={}}={}){var c=this;return n(function*(){return void 0===o?b.startsWith("http")?c.resolveAbsoluteReference(b,C(a,v)):c.client.httpClient.get(b,C(a,v)):b.startsWith("#")?c.resolveContainedReference(b,o):c.resolveBundleReference(b,o,C(a,v))})()}resolveAbsoluteReference(b,o){var v=this;return n(function*(){if(b.startsWith(v.client.baseUrl))return v.client.httpClient.get(b,o);const{baseUrl:a,resourceType:c,id:s}=p(b);return new(g(8907))({baseUrl:a}).read({resourceType:c,id:s,options:o})})()}resolveContainedReference(b,o){if(o.contained){const v=b.slice(1),a=o.contained.find(c=>c.id===v);if(a)return a}throw new Error(`Unable to resolve contained reference: ${b}`)}resolveBundleReference(b,o,v){var a=this;return n(function*(){const c=new RegExp(`(^|/)${b}$`),s=o.entry.find(l=>c.test(l.fullUrl));return s?s.resource:a.resolve({reference:b,options:v})})()}}},6686:(Se,X,g)=>{const{logError:p}=g(1566);Se.exports={authFromCapability:function C(o){const v={};try{return o.rest.forEach(a=>{a.security.extension.find(s=>"http://fhir-registry.smarthealthit.org/StructureDefinition/oauth-uris"===s.url).extension.forEach(s=>{switch(s.url){case"authorize":v.authorizeUrl=new URL(s.valueUri);break;case"token":v.tokenUrl=new URL(s.valueUri);break;case"register":v.registerUrl=new URL(s.valueUri);break;case"manage":v.manageUrl=new URL(s.valueUri)}})}),v}catch(a){return p(a),v}},authFromWellKnown:function b(o){const{authorization_endpoint:v,token_endpoint:a,registration_endpoint:c}=o;return{authorizeUrl:v&&new URL(v),tokenUrl:a&&new URL(a),registerUrl:c&&new URL(c)}}}},9047:(Se,X,g)=>{const n=g(133),{fhirReferenceRegEx:p}=g(4115);Se.exports={createQueryString:function o(v){if(v instanceof Object&&Object.keys(v).length>0)return n.stringify(v)},splitReference:function C(v){if(!v.match(p))throw new Error(`${v} is not a recognized FHIR reference`);let a,c=v;v.startsWith("http")&&([,a]=p.exec(v),c=v.slice(a.length),a.endsWith("/")&&(a=a.slice(0,-1)));const[s,l]=c.split("/");return{baseUrl:a,resourceType:s,id:l}},validResourceType:function b(v){return!v.startsWith("/")&&!v.includes(":")&&/\S/.test(v)}}},4258:(Se,X,g)=>{let n={};const p=g(7353),C=g(5117),b=g(5827);n.aggregateMacro=function(o,v,a){return o.reduce((c,s,l)=>(this.$index=l,this.$total=v(s)),this.$total=a)},n.countFn=function(o){return o&&o.length?o.length:0},n.sumFn=function(o){return n.aggregateMacro.apply(this,[o,v=>p.plus(b.arraify(v),b.arraify(this.$total)),0])},n.minFn=function(o){return n.aggregateMacro.apply(this,[o,v=>{const a=b.arraify(v),c=b.arraify(this.$total);return b.isEmpty(c)||C.lt(a,c)?a:c}])},n.maxFn=function(o){return n.aggregateMacro.apply(this,[o,v=>{const a=b.arraify(v),c=b.arraify(this.$total);return b.isEmpty(c)||C.gt(a,c)?a:c}])},n.avgFn=function(o){return p.div(n.sumFn(o),n.countFn(o))},Se.exports=n},500:(Se,X,g)=>{var n=g(2825),p={};function C(b,o){if(0==o.length)return!0;for(var v=0;v1)throw new Error("Expected singleton on right side of contains, got "+JSON.stringify(o));return C(b,o)},p.in=function(b,o){if(0==b.length)return[];if(0==o.length)return!1;if(b.length>1)throw new Error("Expected singleton on right side of in, got "+JSON.stringify(o));return C(o,b)},Se.exports=p},8330:(Se,X,g)=>{const n={},{distinctFn:p}=g(5073),C=g(6190);n.union=function(b,o){return p(b.concat(o))},n.combineFn=function(b,o){return b.concat(o)},n.intersect=function(b,o){let v=[];const a=b.length;let c=o.length;if(a&&c){let s={};o.forEach(l=>{const d=C(l);s[d]?c--:s[d]=!0});for(let l=0;l0;++l){let d=b[l],r=C(d);s[r]&&(v.push(d),s[r]=!1,c--)}}return v},Se.exports=n},9285:Se=>{Se.exports={reset:function(){this.nowDate=new Date,this.today=null,this.now=null,this.timeOfDay=null,this.localTimezoneOffset=null},today:null,now:null,timeOfDay:null}},1605:(Se,X,g)=>{var n={};const p=g(4217),C=g(9285),b=p.FP_Date,o=p.FP_DateTime,v=p.FP_Time;n.now=function(){if(!C.now){var c=o.isoDateTime(C.nowDate);C.now=new o(c)}return C.now},n.today=function(){if(!C.today){var c=b.isoDate(C.nowDate);C.today=new b(c)}return C.today},n.timeOfDay=function(){if(!C.timeOfDay){const c=o.isoTime(C.nowDate);C.timeOfDay=new v(c)}return C.timeOfDay},Se.exports=n},2825:(Se,X,g)=>{var p=g(4217).FP_Type,C=g(5827),b=g(4192),o=Array.prototype.slice,v=Object.keys,a=function(h){return"[object Arguments]"==Object.prototype.toString.call(h)};function c(h){return"string"==typeof h||h instanceof String}function s(h){return!isNaN(parseFloat(h))&&isFinite(h)}function l(h){return h.toUpperCase().replace(/\s+/," ")}function r(h){return null==h}Se.exports=function d(h,m,_){if(_||(_={}),(h=C.valDataConverted(h))===(m=C.valDataConverted(m)))return!0;if(_.fuzzy){if(c(h)&&c(m))return l(h)==l(m);if(s(h)&&s(m))return b.isEquivalent(h,m)}else if("number"==typeof h&&"number"==typeof m)return b.isEqual(h,m);if(h instanceof Date&&m instanceof Date)return h.getTime()===m.getTime();if(!h||!m||"object"!=typeof h&&"object"!=typeof m)return h===m;var M=h instanceof p,x=m instanceof p;return M&&x?_.fuzzy?h.equivalentTo(m):h.equals(m):!M&&!x&&function u(h,m,_){var M,x;if(r(h)||r(m)||h.prototype!==m.prototype)return!1;if(a(h)||a(m))return d(h=a(h)?o.call(h):h,m=a(m)?o.call(m):m,_);try{var w=v(h),L=v(m)}catch{return!1}if(w.length!=L.length)return!1;for(w.sort(),L.sort(),M=w.length-1;M>=0;M--)if(w[M]!=L[M])return!1;if(1===w.length)return d(h[x=w[0]],m[x],_);for(M=w.length-1;M>=0;M--)if(!d(h[x=w[M]],m[x],_))return!1;return typeof h==typeof m}(h,m,_)}},5117:(Se,X,g)=>{var n=g(5827),p=g(2825),C=g(4217);const b=C.FP_Type,o=C.FP_Date,v=C.FP_DateTime;var a={};function c(d,r){return n.isEmpty(d)||n.isEmpty(r)?[]:p(d,r)}function s(d,r){return n.isEmpty(d)&&n.isEmpty(r)?[!0]:n.isEmpty(d)||n.isEmpty(r)?[]:p(d,r,{fuzzy:!0})}function l(d,r){n.assertAtMostOne(d,"Singleton was expected"),n.assertAtMostOne(r,"Singleton was expected"),d=n.valDataConverted(d[0]),r=n.valDataConverted(r[0]);let u=d.constructor===o?v:d.constructor,h=r.constructor===o?v:r.constructor;return u!==h&&n.raiseError('Type of "'+d+'" ('+u.name+') did not match type of "'+r+'" ('+h.name+")","InequalityExpression"),[d,r]}a.equal=function(d,r){return c(d,r)},a.unequal=function(d,r){var u=c(d,r);return void 0===u?void 0:!u},a.equival=function(d,r){return s(d,r)},a.unequival=function(d,r){return!s(d,r)},a.lt=function(d,r){if(!d.length||!r.length)return[];const[u,h]=l(d,r);if(u instanceof b){const m=u.compare(h);return null===m?[]:m<0}return u0}return u>h},a.lte=function(d,r){if(!d.length||!r.length)return[];const[u,h]=l(d,r);if(u instanceof b){const m=u.compare(h);return null===m?[]:m<=0}return u<=h},a.gte=function(d,r){if(!d.length||!r.length)return[];const[u,h]=l(d,r);if(u instanceof b){const m=u.compare(h);return null===m?[]:m>=0}return u>=h},Se.exports=a},631:(Se,X,g)=>{const n=g(5827),{whereMacro:p,distinctFn:C}=g(5073),b=g(6777),o=g(6190),v={};function a(c,s){const l=c.length;let d=l<=s.length;if(d&&l){const r=s.reduce((u,h)=>(u[o(h)]=!0,u),{});d=!c.some(u=>!r[o(u)])}return d}v.emptyFn=n.isEmpty,v.notFn=function(c){let s=b.singleton(c,"Boolean");return"boolean"==typeof s?!s:[]},v.existsMacro=function(c,s){var l=c;return s?v.existsMacro(p(c,s)):!n.isEmpty(l)},v.allMacro=function(c,s){for(let l=0,d=c.length;l{const{version:n}=g(82),p=g(7661),C=g(5827);g(4835);const b=g(9285);let o={},v=g(631),a=g(5073),c=g(4258),s=g(8330),l=g(6777),d=g(5117),r=g(500),u=g(7353),h=g(4702),m=g(3774),_=g(1605),M=g(2804);const x=g(4217),{FP_Date:w,FP_DateTime:L,FP_Time:A,FP_Quantity:T,FP_Type:O,ResourceNode:E,TypeInfo:D}=x;let R=E.makeResNode;function j(q,Q,ue,Me){if("Expr"===ue)return function(Xe){return q.$this=C.arraify(Xe),o.doEval(q,q.$this,Me)};if("AnyAtRoot"===ue)return q.$this=q.$this||q.dataRoot,o.doEval(q,q.$this,Me);if("Identifier"===ue){if("TermExpression"===Me.type)return Me.text;throw new Error("Expected identifier node, got "+JSON.stringify(Me))}if("TypeSpecifier"===ue)return o.TypeSpecifier(q,Q,Me);q.$this=Q;const Oe=o.doEval(q,Q,Me);if("Any"===ue)return Oe;if(Array.isArray(ue)){if(0===Oe.length)return[];ue=ue[0]}return l.singleton(Oe,ue)}function S(q){return null==q||C.isEmpty(q)}function k(q,Q,ue,Me){var Oe=o.invocationTable[Q];if(Oe&&Oe.fn){var Xe=Me?Me.length:0;if(2!==Xe)throw new Error("Infix invoke should have arity 2");var Be=Oe.arity[Xe];if(Be){for(var $e=[],st=0;stst?.__path__?R(st,st?.__path__):st),Be={context:Xe,ucum:"http://unitsofmeasure.org"};ue&&(ue=Object.keys(ue).reduce((st,Mt)=>(st[Mt]=Array.isArray(ue[Mt])?ue[Mt].map(tt=>tt?.__path__?R(tt,tt.__path__):tt):ue[Mt]?.__path__?R(ue[Mt],ue[Mt].__path__):ue[Mt],st),{}));let $e={dataRoot:Xe,vars:Object.assign(Be,ue),model:Me};return Oe&&Oe.traceFn&&($e.customTraceFn=Oe.traceFn),o.doEval($e,Xe,Q.children[0]).map(st=>{let Mt=st instanceof E?st.path:null;return(st=C.valData(st))instanceof O&&Oe.resolveInternalTypes&&(st=st.toString()),Mt&&"object"==typeof st&&Object.defineProperty(st,"__path__",{value:Mt}),st})}function me(q,Q,ue){if(ue={resolveInternalTypes:!0,...ue},"object"==typeof q){const Me=F(q.expression);return function(Oe,Xe){const Be=q.base?R(Oe,q.base):Oe;return D.model=Q,Y(Be,Me,Xe,Q,ue)}}{const Me=F(q);return function(Oe,Xe){return D.model=Q,Y(Oe,Me,Xe,Q,ue)}}}o.invocationTable={empty:{fn:v.emptyFn},not:{fn:v.notFn},exists:{fn:v.existsMacro,arity:{0:[],1:["Expr"]}},all:{fn:v.allMacro,arity:{1:["Expr"]}},allTrue:{fn:v.allTrueFn},anyTrue:{fn:v.anyTrueFn},allFalse:{fn:v.allFalseFn},anyFalse:{fn:v.anyFalseFn},subsetOf:{fn:v.subsetOfFn,arity:{1:["AnyAtRoot"]}},supersetOf:{fn:v.supersetOfFn,arity:{1:["AnyAtRoot"]}},isDistinct:{fn:v.isDistinctFn},distinct:{fn:a.distinctFn},count:{fn:c.countFn},where:{fn:a.whereMacro,arity:{1:["Expr"]}},extension:{fn:a.extension,arity:{1:["String"]}},select:{fn:a.selectMacro,arity:{1:["Expr"]}},aggregate:{fn:c.aggregateMacro,arity:{1:["Expr"],2:["Expr","Any"]}},sum:{fn:c.sumFn},min:{fn:c.minFn},max:{fn:c.maxFn},avg:{fn:c.avgFn},single:{fn:a.singleFn},first:{fn:a.firstFn},last:{fn:a.lastFn},type:{fn:x.typeFn,arity:{0:[]}},ofType:{fn:a.ofTypeFn,arity:{1:["TypeSpecifier"]}},is:{fn:x.isFn,arity:{1:["TypeSpecifier"]}},as:{fn:x.asFn,arity:{1:["TypeSpecifier"]}},tail:{fn:a.tailFn},take:{fn:a.takeFn,arity:{1:["Integer"]}},skip:{fn:a.skipFn,arity:{1:["Integer"]}},combine:{fn:s.combineFn,arity:{1:["AnyAtRoot"]}},union:{fn:s.union,arity:{1:["AnyAtRoot"]}},intersect:{fn:s.intersect,arity:{1:["AnyAtRoot"]}},iif:{fn:l.iifMacro,arity:{2:["Expr","Expr"],3:["Expr","Expr","Expr"]}},trace:{fn:l.traceFn,arity:{1:["String"],2:["String","Expr"]}},toInteger:{fn:l.toInteger},toDecimal:{fn:l.toDecimal},toString:{fn:l.toString},toDate:{fn:l.toDate},toDateTime:{fn:l.toDateTime},toTime:{fn:l.toTime},toBoolean:{fn:l.toBoolean},toQuantity:{fn:l.toQuantity,arity:{0:[],1:["String"]}},hasValue:{fn:l.hasValueFn},convertsToBoolean:{fn:l.createConvertsToFn(l.toBoolean,"boolean")},convertsToInteger:{fn:l.createConvertsToFn(l.toInteger,"number")},convertsToDecimal:{fn:l.createConvertsToFn(l.toDecimal,"number")},convertsToString:{fn:l.createConvertsToFn(l.toString,"string")},convertsToDate:{fn:l.createConvertsToFn(l.toDate,w)},convertsToDateTime:{fn:l.createConvertsToFn(l.toDateTime,L)},convertsToTime:{fn:l.createConvertsToFn(l.toTime,A)},convertsToQuantity:{fn:l.createConvertsToFn(l.toQuantity,T)},indexOf:{fn:h.indexOf,arity:{1:["String"]}},substring:{fn:h.substring,arity:{1:["Integer"],2:["Integer","Integer"]}},startsWith:{fn:h.startsWith,arity:{1:["String"]}},endsWith:{fn:h.endsWith,arity:{1:["String"]}},contains:{fn:h.containsFn,arity:{1:["String"]}},upper:{fn:h.upper},lower:{fn:h.lower},replace:{fn:h.replace,arity:{2:["String","String"]}},matches:{fn:h.matches,arity:{1:["String"]}},replaceMatches:{fn:h.replaceMatches,arity:{2:["String","String"]}},length:{fn:h.length},toChars:{fn:h.toChars},join:{fn:h.joinFn,arity:{0:[],1:["String"]}},split:{fn:h.splitFn,arity:{1:["String"]}},trim:{fn:h.trimFn},encode:{fn:h.encodeFn,arity:{1:["String"]}},decode:{fn:h.decodeFn,arity:{1:["String"]}},abs:{fn:u.abs},ceiling:{fn:u.ceiling},exp:{fn:u.exp},floor:{fn:u.floor},ln:{fn:u.ln},log:{fn:u.log,arity:{1:["Number"]},nullable:!0},power:{fn:u.power,arity:{1:["Number"]},nullable:!0},round:{fn:u.round,arity:{1:["Number"]}},sqrt:{fn:u.sqrt},truncate:{fn:u.truncate},now:{fn:_.now},today:{fn:_.today},timeOfDay:{fn:_.timeOfDay},repeat:{fn:a.repeatMacro,arity:{1:["Expr"]}},children:{fn:m.children},descendants:{fn:m.descendants},"|":{fn:s.union,arity:{2:["Any","Any"]}},"=":{fn:d.equal,arity:{2:["Any","Any"]},nullable:!0},"!=":{fn:d.unequal,arity:{2:["Any","Any"]},nullable:!0},"~":{fn:d.equival,arity:{2:["Any","Any"]}},"!~":{fn:d.unequival,arity:{2:["Any","Any"]}},"<":{fn:d.lt,arity:{2:["Any","Any"]},nullable:!0},">":{fn:d.gt,arity:{2:["Any","Any"]},nullable:!0},"<=":{fn:d.lte,arity:{2:["Any","Any"]},nullable:!0},">=":{fn:d.gte,arity:{2:["Any","Any"]},nullable:!0},containsOp:{fn:r.contains,arity:{2:["Any","Any"]}},inOp:{fn:r.in,arity:{2:["Any","Any"]}},isOp:{fn:x.isFn,arity:{2:["Any","TypeSpecifier"]}},asOp:{fn:x.asFn,arity:{2:["Any","TypeSpecifier"]}},"&":{fn:u.amp,arity:{2:["String","String"]}},"+":{fn:u.plus,arity:{2:["Any","Any"]},nullable:!0},"-":{fn:u.minus,arity:{2:["Any","Any"]},nullable:!0},"*":{fn:u.mul,arity:{2:["Number","Number"]},nullable:!0},"/":{fn:u.div,arity:{2:["Number","Number"]},nullable:!0},mod:{fn:u.mod,arity:{2:["Number","Number"]},nullable:!0},div:{fn:u.intdiv,arity:{2:["Number","Number"]},nullable:!0},or:{fn:M.orOp,arity:{2:[["Boolean"],["Boolean"]]}},and:{fn:M.andOp,arity:{2:[["Boolean"],["Boolean"]]}},xor:{fn:M.xorOp,arity:{2:[["Boolean"],["Boolean"]]}},implies:{fn:M.impliesOp,arity:{2:[["Boolean"],["Boolean"]]}}},o.InvocationExpression=function(q,Q,ue){return ue.children.reduce(function(Me,Oe){return o.doEval(q,Me,Oe)},Q)},o.TermExpression=function(q,Q,ue){return Q&&(Q=Q.map(Me=>Me instanceof Object&&Me.resourceType?R(Me,Me.resourceType):Me)),o.doEval(q,Q,ue.children[0])},o.PolarityExpression=function(q,Q,ue){var Me=ue.terminalNodeText[0],Oe=o.doEval(q,Q,ue.children[0]);if(1!==Oe.length)throw new Error("Unary "+Me+" can only be applied to an individual number.");if("number"!=typeof Oe[0]||isNaN(Oe[0]))throw new Error("Unary "+Me+" can only be applied to a number.");return"-"===Me&&(Oe[0]=-Oe[0]),Oe},o.TypeSpecifier=function(q,Q,ue){let Me,Oe;const Xe=ue.text.split(".").map(Be=>Be.replace(/(^`|`$)/g,""));switch(Xe.length){case 2:[Me,Oe]=Xe;break;case 1:[Oe]=Xe;break;default:throw new Error("Expected TypeSpecifier node, got "+JSON.stringify(ue))}return new D({namespace:Me,name:Oe})},o.ExternalConstantTerm=function(q,Q,ue){var Xe=o.Identifier(q,Q,ue.children[0].children[0])[0],Be=q.vars[Xe];if(!(Xe in q.vars))throw new Error("Attempting to access an undefined environment variable: "+Xe);return null==Be?[]:Be instanceof Array?Be:[Be]},o.LiteralTerm=function(q,Q,ue){var Me=ue.children[0];return Me?o.doEval(q,Q,Me):[ue.text]},o.StringLiteral=function(q,Q,ue){var Me=ue.text.replace(/(^'|'$)/g,"");return[Me=Me.replace(/\\(u\d{4}|.)/g,function(Oe,Xe){switch(Oe){case"\\r":return"\r";case"\\n":return"\n";case"\\t":return"\t";case"\\f":return"\f";default:return Xe.length>1?String.fromCharCode("0x"+Xe.slice(1)):Xe}})]},o.BooleanLiteral=function(q,Q,ue){return"true"===ue.text?[!0]:[!1]},o.QuantityLiteral=function(q,Q,ue){var Me=ue.children[0],Oe=Number(Me.terminalNodeText[0]),Xe=Me.children[0],Be=Xe.terminalNodeText[0];return!Be&&Xe.children&&(Be=Xe.children[0].terminalNodeText[0]),[new T(Oe,Be)]},o.DateTimeLiteral=function(q,Q,ue){var Me=ue.text.slice(1);return[new L(Me)]},o.TimeLiteral=function(q,Q,ue){var Me=ue.text.slice(1);return[new A(Me)]},o.NumberLiteral=function(q,Q,ue){return[Number(ue.text)]},o.Identifier=function(q,Q,ue){return[ue.text.replace(/(^`|`$)/g,"")]},o.InvocationTerm=function(q,Q,ue){return o.doEval(q,Q,ue.children[0])},o.MemberInvocation=function(q,Q,ue){const Me=o.doEval(q,Q,ue.children[0])[0],Oe=q.model;if(Q){if(C.isCapitalized(Me))return Q.filter(Xe=>Xe instanceof E&&Xe.path===Me);{const Xe=Q.path||Q.__path__;return Q.reduce(function(Be,$e){var st=($e=R($e,Xe)).path+"."+Me;if(Oe){let bt=Oe.pathsDefinedElsewhere[st];bt&&(st=bt)}let Mt,tt,St=Oe&&Oe.choiceTypePaths[st];if(St)for(let bt of St){let xt=Me+bt;if(Mt=$e.data?.[xt],tt=$e.data?.["_"+xt],void 0!==Mt||void 0!==tt){st+=bt;break}}else Mt=$e.data?.[Me],tt=$e.data?.["_"+Me],void 0===Mt&&void 0===tt&&(Mt=$e._data[Me]),"extension"===Me&&(st="Extension");return st=Oe&&Oe.path2Type[st]||st,(C.isSome(Mt)||C.isSome(tt))&&(Array.isArray(Mt)?Be=Be.concat(Mt.map((bt,xt)=>R(bt,st,tt&&tt[xt]))):Be.push(R(Mt,st,tt))),Be},[])}}return[]},o.IndexerExpression=function(q,Q,ue){const Oe=ue.children[1];var Xe=o.doEval(q,Q,ue.children[0]),Be=o.doEval(q,Q,Oe);if(C.isEmpty(Be))return[];var $e=parseInt(Be[0]);return Xe&&C.isSome($e)&&Xe.length>$e&&$e>=0?[Xe[$e]]:[]},o.Functn=function(q,Q,ue){return ue.children.map(function(Me){return o.doEval(q,Q,Me)})},o.realizeParams=function(q,Q,ue){return ue&&ue[0]&&ue[0].children?ue[0].children.map(function(Me){return o.doEval(q,Q,Me)}):[]},o.FunctionInvocation=function(q,Q,ue){var Me=o.doEval(q,Q,ue.children[0]);const Oe=Me[0];return Me.shift(),function N(q,Q,ue,Me){var Xe,Oe=o.invocationTable[Q];if(Oe){if(Oe.arity){var Be=Me?Me.length:0,$e=Oe.arity[Be];if($e){for(var st=[],Mt=0;Mt{const ue=D.fromValue(Q?.__path__?new E(Q,Q.__path__):Q);return`${ue.namespace}.${ue.name}`})},ucumUtils:g(2207).ng.getInstance()}},5073:(Se,X,g)=>{const n=g(5827),{TypeInfo:p,ResourceNode:C}=g(4217),b=g(6190);Se.exports={whereMacro:function(v,a){return!1===v||v?n.flatten(v.filter((c,s)=>(this.$index=s,a(c)[0]))):[]},extension:function(v,a){return!1!==v&&!v||!a?[]:n.flatten(v.map((c,s)=>{this.$index=s;const l=c&&(c.data&&c.data.extension||c._data&&c._data.extension);return l?l.filter(d=>d.url===a).map(d=>C.makeResNode(d,"Extension")):[]}))},selectMacro:function(v,a){return!1===v||v?n.flatten(v.map((c,s)=>(this.$index=s,a(c)))):[]},repeatMacro:function(v,a){if(!1!==v&&!v)return[];let c=[];const s={},l=v.length;for(let d=0;d{const h=b(u),m=!s[h];return m&&(s[h]=!0),m})}while(c.lengthp.fromValue(c).is(a))},distinctFn:function(v){let a=[];if(v.length>0){let c={};for(let s=0,l=v.length;s{const n=g(2207).ng.getInstance(),{roundToMaxPrecision:p}=g(4192),{valDataConverted:C}=g(5827),{FP_Type:b,FP_Quantity:o}=g(4217);function a(c){if("number"==typeof(c=C(c)))return p(c);if(c instanceof Date)return c.toISOString();if(c instanceof o){const s=o._yearMonthConversionFactor[c.unit];if(s)return"_!yearMonth!_:"+s*c.value;{const l=o.toUcumQuantity(c.value,c.unit),d=n.getSpecifiedUnit(l.unit).unit;return"_!"+d.property_+"!_:"+d.magnitude_*l.value}}return c instanceof b?c.toString():"object"==typeof c?Array.isArray(c)?c.map(a):Object.keys(c).sort().reduce((s,l)=>(s[l]=a(c[l]),s),{}):c}Se.exports=function v(c){return JSON.stringify(a(c))}},2804:Se=>{Se.exports={orOp:function(g,n){if(Array.isArray(n)){if(!0===g)return!0;if(!1===g)return[];if(Array.isArray(g))return[]}return Array.isArray(g)?!0===n||[]:g||n},andOp:function(g,n){if(Array.isArray(n)){if(!0===g)return[];if(!1===g)return!1;if(Array.isArray(g))return[]}return Array.isArray(g)?!0===n&&[]:g&&n},xorOp:function(g,n){return Array.isArray(g)||Array.isArray(n)?[]:g&&!n||!g&&n},impliesOp:function(g,n){if(Array.isArray(n)){if(!0===g)return[];if(!1===g)return!0;if(Array.isArray(g))return[]}return Array.isArray(g)?!0===n||[]:!1===g||g&&n}}},7353:(Se,X,g)=>{var n=g(4217);let{FP_TimeBase:p,FP_Quantity:C}=n;const b=g(5827);var o={};function v(c){let s=b.valData(c);if("number"!=typeof s){if(1==s.length&&"number"==typeof(s=b.valData(s[0])))return s;throw new Error("Expected number, but got "+JSON.stringify(s||c))}return s}function a(c){return"number"!=typeof c&&0==c.length}o.amp=function(c,s){return(c||"")+(s||"")},o.plus=function(c,s){if(1==c.length&&1==s.length){var l=b.valDataConverted(c[0]),d=b.valDataConverted(s[0]);if("string"==typeof l&&"string"==typeof d||"number"==typeof l&&"number"==typeof d)return l+d;if(l instanceof p&&d instanceof C)return l.plus(d)}throw new Error("Cannot "+JSON.stringify(c)+" + "+JSON.stringify(s))},o.minus=function(c,s){if(1==c.length&&1==s.length){var l=b.valDataConverted(c[0]),d=b.valDataConverted(s[0]);if("number"==typeof l&&"number"==typeof d)return l-d;if(l instanceof p&&d instanceof C)return l.plus(new C(-d.value,d.unit))}throw new Error("Cannot "+JSON.stringify(c)+" - "+JSON.stringify(s))},o.mul=function(c,s){return c*s},o.div=function(c,s){return 0===s?[]:c/s},o.intdiv=function(c,s){return 0===s?[]:Math.floor(c/s)},o.mod=function(c,s){return 0===s?[]:c%s},o.abs=function(c){if(a(c))return[];{let s=v(c);return Math.abs(s)}},o.ceiling=function(c){if(a(c))return[];{let s=v(c);return Math.ceil(s)}},o.exp=function(c){if(a(c))return[];{let s=v(c);return Math.exp(s)}},o.floor=function(c){if(a(c))return[];{let s=v(c);return Math.floor(s)}},o.ln=function(c){if(a(c))return[];{let s=v(c);return Math.log(s)}},o.log=function(c,s){if(a(c)||a(s))return[];{let l=v(c),d=v(s);return Math.log(l)/Math.log(d)}},o.power=function(c,s){if(a(c)||a(s))return[];{let l=v(c),d=v(s);return l<0&&Math.floor(d)!=d?[]:Math.pow(l,d)}},o.round=function(c,s){if(a(c))return[];{let l=v(c);if(a(s))return Math.round(l);{let d=v(s),r=Math.pow(10,d);return Math.round(l*r)/r}}},o.sqrt=function(c){if(a(c))return[];{let s=v(c);return s<0?[]:Math.sqrt(s)}},o.truncate=function(c){if(a(c))return[];{let s=v(c);return Math.trunc(s)}},Se.exports=o},6777:(Se,X,g)=>{var n=g(5827),p=g(4217);const{FP_Quantity:C}=p;var b={iifMacro:function(m,_,M,x){return n.isTrue(_(m))?M(m):x?x(m):[]},traceFn:function(m,_,M){return this.customTraceFn?this.customTraceFn(M?M(m):m,_??""):M?console.log("TRACE:["+(_||"")+"]",JSON.stringify(M(m),null," ")):console.log("TRACE:["+(_||"")+"]",JSON.stringify(m,null," ")),m}},o=/^[+-]?\d+$/;b.toInteger=function(m){if(1!==m.length)return[];var _=n.valData(m[0]);return!1===_?0:!0===_?1:"number"==typeof _?Number.isInteger(_)?_:[]:"string"==typeof _&&o.test(_)?parseInt(_):[]};const v=/^((\+|-)?\d+(\.\d+)?)\s*(('[^']+')|([a-zA-Z]+))?$/;b.toQuantity=function(m,_){let M;if(_&&!C.mapTimeUnitsToUCUMCode[_]&&(_=`'${_}'`),m.length>1)throw new Error("Could not convert to quantity: input collection contains multiple items");if(1===m.length){var x=n.valDataConverted(m[0]);let w;if("number"==typeof x)M=new C(x,"'1'");else if(x instanceof C)M=x;else if("boolean"==typeof x)M=new C(x?1:0,"'1'");else if("string"==typeof x&&(w=v.exec(x))){const A=w[5],T=w[6];(!T||C.mapTimeUnitsToUCUMCode[T])&&(M=new C(Number(w[1]),A||T||"'1'"))}M&&_&&M.unit!==_&&(M=C.convUnitTo(M.unit,M.value,_))}return M||[]};var c=/^[+-]?\d+(\.\d+)?$/;function s(m){let _=m.slice(3);b["to"+_]=function(M){var x=[];if(M.length>1)throw Error("to "+_+" called for a collection of length "+M.length);if(1===M.length){var w=p[m].checkString(n.valData(M[0]));w&&(x=w)}return x}}b.toDecimal=function(m){if(1!==m.length)return[];var _=n.valData(m[0]);return!1===_?0:!0===_?1:"number"==typeof _?_:"string"==typeof _&&c.test(_)?parseFloat(_):[]},b.toString=function(m){return 1!==m.length?[]:n.valDataConverted(m[0]).toString()},s("FP_Date"),s("FP_DateTime"),s("FP_Time");const l=["true","t","yes","y","1","1.0"].reduce((m,_)=>(m[_]=!0,m),{}),d=["false","f","no","n","0","0.0"].reduce((m,_)=>(m[_]=!0,m),{});b.toBoolean=function(m){if(1!==m.length)return[];const _=n.valData(m[0]);switch(typeof _){case"boolean":return _;case"number":if(1===_)return!0;if(0===_)return!1;break;case"string":const M=_.toLowerCase();if(l[M])return!0;if(d[M])return!1}return[]},b.createConvertsToFn=function(m,_){return"string"==typeof _?function(M){return 1!==M.length?[]:typeof m(M)===_}:function(M){return 1!==M.length?[]:m(M)instanceof _}};const r={Integer:function(m){const _=n.valData(m[0]);if(Number.isInteger(_))return _},Boolean:function(m){const _=n.valData(m[0]);return!0===_||!1===_?_:1===m.length||void 0},Number:function(m){const _=n.valData(m[0]);if("number"==typeof _)return _},String:function(m){const _=n.valData(m[0]);if("string"==typeof _)return _}};b.singleton=function(m,_){if(m.length>1)throw new Error("Unexpected collection"+JSON.stringify(m)+"; expected singleton of type "+_);if(0===m.length)return[];const M=r[_];if(M){const x=M(m);if(void 0!==x)return x;throw new Error(`Expected ${_.toLowerCase()}, but got: ${JSON.stringify(m)}`)}throw new Error("Not supported type "+_)};const u=new Set(["instant","time","date","dateTime","base64Binary","decimal","integer64","boolean","string","code","markdown","id","integer","unsignedInt","positiveInt","uri","oid","uuid","canonical","url"]);function h(m){switch(typeof m){case"string":case"number":case"boolean":return!0;default:return!1}}b.hasValueFn=function(m){return 1===m.length?this.model?[u.has(m[0].path)]:[h(n.valData(m[0]))]:[!1]},Se.exports=b},3774:(Se,X,g)=>{const n=g(5827),{ResourceNode:p}=g(4217);let C=p.makeResNode;var b={children:function(o){let v=this.model;return o.reduce(function(a,c){let s=n.valData(c);if(c=C(c),"object"==typeof s){for(var l of Object.keys(s)){var d=s[l],r=c.path+"."+l;if(v){let u=v.pathsDefinedElsewhere[r];u&&(r=u)}Array.isArray(d)?a.push.apply(a,d.map(u=>C(u,r))):a.push(C(d,r))}return a}return a},[])},descendants:function(o){for(var v=b.children.call(this,o),a=[];v.length>0;)a.push.apply(a,v),v=b.children.call(this,v);return a}};Se.exports=b},4192:Se=>{let X={};function g(b){const v=/(\d+)(?:\.(\d+))?(?:[eE]([+-]?\d+))?$/.exec(""+ +b);if(!v)return 0;const a=v[2];return Math.max(0,("0"===a?0:(a||"").length)-(v[3]||0))}function n(b,o){const v=Math.pow(10,o);return Math.round(b*v)/v}const C=X.roundToMaxPrecision=function(b){return 1e-8*Math.round(b/1e-8)};X.isEquivalent=function(b,o){if(Number.isInteger(b)&&Number.isInteger(o))return b===o;const v=Math.min(g(b),g(o));return 0===v?Math.round(b)===Math.round(o):n(b,v)===n(o,v)},X.isEqual=function(b,o){return C(b)===C(o)},Se.exports=X},5815:(Se,X,g)=>{X.atn=g(871),X.codepointat=g(6419),X.dfa=g(7061),X.fromcodepoint=g(9182),X.tree=g(9804),X.error=g(6405),X.Token=g(6205).Token,X.CommonToken=g(6205).CommonToken,X.InputStream=g(1466),X.CommonTokenStream=g(7456),X.Lexer=g(9042),X.Parser=g(111);var n=g(6185);X.PredictionContextCache=n.PredictionContextCache,X.ParserRuleContext=g(7293),X.Interval=g(9173).Interval,X.IntervalSet=g(9173).IntervalSet,X.Utils=g(3340),X.LL1Analyzer=g(4589).LL1Analyzer},2472:(Se,X,g)=>{var n=g(8416).default;const p=g(5815),C=["\x03\u608b\ua72a\u8133\ub9ed\u417c\u3be7\u7786","\u5964\x02A\u0203\b\x01\x04\x02\t\x02\x04\x03\t\x03","\x04\x04\t\x04\x04\x05\t\x05\x04\x06\t\x06\x04\x07","\t\x07\x04\b\t\b\x04\t\t\t\x04\n\t\n\x04\v\t\v\x04","\f\t\f\x04\r\t\r\x04\x0e\t\x0e\x04\x0f\t\x0f\x04\x10","\t\x10\x04\x11\t\x11\x04\x12\t\x12\x04\x13\t\x13","\x04\x14\t\x14\x04\x15\t\x15\x04\x16\t\x16\x04\x17","\t\x17\x04\x18\t\x18\x04\x19\t\x19\x04\x1a\t\x1a","\x04\x1b\t\x1b\x04\x1c\t\x1c\x04\x1d\t\x1d\x04\x1e",'\t\x1e\x04\x1f\t\x1f\x04 \t \x04!\t!\x04"\t"\x04#',"\t#\x04$\t$\x04%\t%\x04&\t&\x04'\t'\x04(\t(\x04)\t)\x04","*\t*\x04+\t+\x04,\t,\x04-\t-\x04.\t.\x04/\t/\x040\t0\x04","1\t1\x042\t2\x043\t3\x044\t4\x045\t5\x046\t6\x047\t7\x04","8\t8\x049\t9\x04:\t:\x04;\t;\x04<\t<\x04=\t=\x04>\t>\x04","?\t?\x04@\t@\x04A\tA\x04B\tB\x04C\tC\x04D\tD\x03\x02\x03","\x02\x03\x03\x03\x03\x03\x04\x03\x04\x03\x05\x03","\x05\x03\x06\x03\x06\x03\x07\x03\x07\x03\b\x03","\b\x03\t\x03\t\x03\t\x03\t\x03\n\x03\n\x03\n\x03\n\x03","\v\x03\v\x03\f\x03\f\x03\r\x03\r\x03\r\x03\x0e","\x03\x0e\x03\x0f\x03\x0f\x03\x10\x03\x10\x03\x10","\x03\x11\x03\x11\x03\x11\x03\x12\x03\x12\x03\x12","\x03\x13\x03\x13\x03\x14\x03\x14\x03\x15\x03\x15","\x03\x15\x03\x16\x03\x16\x03\x16\x03\x17\x03\x17","\x03\x17\x03\x18\x03\x18\x03\x18\x03\x18\x03\x18","\x03\x18\x03\x18\x03\x18\x03\x18\x03\x19\x03\x19","\x03\x19\x03\x19\x03\x1a\x03\x1a\x03\x1a\x03\x1b","\x03\x1b\x03\x1b\x03\x1b\x03\x1c\x03\x1c\x03\x1c","\x03\x1c\x03\x1c\x03\x1c\x03\x1c\x03\x1c\x03\x1d","\x03\x1d\x03\x1e\x03\x1e\x03\x1f\x03\x1f\x03 ",'\x03 \x03!\x03!\x03!\x03!\x03!\x03"\x03"\x03"\x03','"\x03"\x03"\x03#\x03#\x03$\x03$\x03$\x03$\x03$',"\x03$\x03%\x03%\x03%\x03%\x03%\x03%\x03%\x03&\x03","&\x03&\x03&\x03&\x03&\x03&\x03'\x03'\x03(\x03(\x03","(\x03(\x03(\x03)\x03)\x03)\x03)\x03)\x03)\x03*\x03","*\x03*\x03*\x03*\x03+\x03+\x03+\x03+\x03,\x03,\x03",",\x03,\x03,\x03-\x03-\x03-\x03-\x03-\x03-\x03-\x03",".\x03.\x03.\x03.\x03.\x03.\x03.\x03/\x03/\x03/\x03","/\x03/\x03/\x03/\x03/\x03/\x03/\x03/\x03/\x030\x03","0\x030\x030\x030\x030\x031\x031\x031\x031\x031\x03","1\x031\x032\x032\x032\x032\x032\x032\x033\x033\x03","3\x033\x033\x034\x034\x034\x034\x034\x034\x035\x03","5\x035\x035\x035\x035\x035\x035\x036\x036\x036\x03","6\x036\x036\x036\x036\x037\x037\x037\x037\x037\x03","7\x037\x037\x037\x037\x037\x037\x037\x038\x038\x03","8\x038\x038\x038\x038\x038\x038\x038\x038\x038\x03","8\x058\u0183\n8\x058\u0185\n8\x058\u0187\n8\x038\x058\u018a","\n8\x039\x039\x039\x039\x03:\x03:\x03:\x03:\x03:\x03",":\x03:\x03:\x03:\x03:\x06:\u019a\n:\r:\x0e:\u019b\x05",":\u019e\n:\x05:\u01a0\n:\x05:\u01a2\n:\x03:\x03:\x03:\x03",":\x03:\x03:\x03:\x05:\u01ab\n:\x03;\x05;\u01ae\n;\x03",";\x07;\u01b1\n;\f;\x0e;\u01b4\v;\x03<\x03<\x03<\x07","<\u01b9\n<\f<\x0e<\u01bc\v<\x03<\x03<\x03=\x03=\x03","=\x07=\u01c3\n=\f=\x0e=\u01c6\v=\x03=\x03=\x03>\x06",">\u01cb\n>\r>\x0e>\u01cc\x03>\x03>\x06>\u01d1\n>\r>\x0e>\u01d2","\x05>\u01d5\n>\x03?\x06?\u01d8\n?\r?\x0e?\u01d9\x03?\x03","?\x03@\x03@\x03@\x03@\x07@\u01e2\n@\f@\x0e@\u01e5\v","@\x03@\x03@\x03@\x03@\x03@\x03A\x03A\x03A\x03A\x07","A\u01f0\nA\fA\x0eA\u01f3\vA\x03A\x03A\x03B\x03B\x03","B\x05B\u01fa\nB\x03C\x03C\x03C\x03C\x03C\x03C\x03D\x03","D\x03\u01e3\x02E\x03\x03\x05\x04\x07\x05\t\x06\v","\x07\r\b\x0f\t\x11\n\x13\v\x15\f\x17\r\x19\x0e\x1b","\x0f\x1d\x10\x1f\x11!\x12#\x13%\x14'\x15)\x16+","\x17-\x18/\x191\x1a3\x1b5\x1c7\x1d9\x1e;\x1f= ?!A","\"C#E$G%I&K'M(O)Q*S+U,W-Y.[/]0_1a2c3e4g5i6k7m8o9q:s\x02u;w}","?\x7f@\x81A\x83\x02\x85\x02\x87\x02\x03\x02\f\x03","\x022;\x04\x02--//\x05\x02C\\aac|\x06\x022;C\\aac|\x04",'\x02^^bb\x03\x02))\x05\x02\v\f\x0f\x0f""\x04\x02',"\f\f\x0f\x0f\n\x02))11^^bbhhppttvv\x05\x022;CHch\x02\u0214","\x02\x03\x03\x02\x02\x02\x02\x05\x03\x02\x02\x02","\x02\x07\x03\x02\x02\x02\x02\t\x03\x02\x02\x02","\x02\v\x03\x02\x02\x02\x02\r\x03\x02\x02\x02","\x02\x0f\x03\x02\x02\x02\x02\x11\x03\x02\x02\x02","\x02\x13\x03\x02\x02\x02\x02\x15\x03\x02\x02\x02","\x02\x17\x03\x02\x02\x02\x02\x19\x03\x02\x02\x02","\x02\x1b\x03\x02\x02\x02\x02\x1d\x03\x02\x02\x02","\x02\x1f\x03\x02\x02\x02\x02!\x03\x02\x02\x02","\x02#\x03\x02\x02\x02\x02%\x03\x02\x02\x02\x02","'\x03\x02\x02\x02\x02)\x03\x02\x02\x02\x02+\x03","\x02\x02\x02\x02-\x03\x02\x02\x02\x02/\x03\x02","\x02\x02\x021\x03\x02\x02\x02\x023\x03\x02\x02","\x02\x025\x03\x02\x02\x02\x027\x03\x02\x02\x02","\x029\x03\x02\x02\x02\x02;\x03\x02\x02\x02\x02","=\x03\x02\x02\x02\x02?\x03\x02\x02\x02\x02A\x03","\x02\x02\x02\x02C\x03\x02\x02\x02\x02E\x03\x02","\x02\x02\x02G\x03\x02\x02\x02\x02I\x03\x02\x02","\x02\x02K\x03\x02\x02\x02\x02M\x03\x02\x02\x02","\x02O\x03\x02\x02\x02\x02Q\x03\x02\x02\x02\x02","S\x03\x02\x02\x02\x02U\x03\x02\x02\x02\x02W\x03","\x02\x02\x02\x02Y\x03\x02\x02\x02\x02[\x03\x02","\x02\x02\x02]\x03\x02\x02\x02\x02_\x03\x02\x02","\x02\x02a\x03\x02\x02\x02\x02c\x03\x02\x02\x02","\x02e\x03\x02\x02\x02\x02g\x03\x02\x02\x02\x02","i\x03\x02\x02\x02\x02k\x03\x02\x02\x02\x02m\x03","\x02\x02\x02\x02o\x03\x02\x02\x02\x02q\x03\x02","\x02\x02\x02u\x03\x02\x02\x02\x02w\x03\x02\x02","\x02\x02y\x03\x02\x02\x02\x02{\x03\x02\x02\x02","\x02}\x03\x02\x02\x02\x02\x7f\x03\x02\x02\x02","\x02\x81\x03\x02\x02\x02\x03\x89\x03\x02\x02\x02","\x05\x8b\x03\x02\x02\x02\x07\x8d\x03\x02\x02\x02","\t\x8f\x03\x02\x02\x02\v\x91\x03\x02\x02\x02","\r\x93\x03\x02\x02\x02\x0f\x95\x03\x02\x02\x02","\x11\x97\x03\x02\x02\x02\x13\x9b\x03\x02\x02\x02","\x15\x9f\x03\x02\x02\x02\x17\xa1\x03\x02\x02\x02","\x19\xa3\x03\x02\x02\x02\x1b\xa6\x03\x02\x02\x02","\x1d\xa8\x03\x02\x02\x02\x1f\xaa\x03\x02\x02\x02","!\xad\x03\x02\x02\x02#\xb0\x03\x02\x02\x02%\xb3","\x03\x02\x02\x02'\xb5\x03\x02\x02\x02)\xb7\x03","\x02\x02\x02+\xba\x03\x02\x02\x02-\xbd\x03\x02","\x02\x02/\xc0\x03\x02\x02\x021\xc9\x03\x02\x02","\x023\xcd\x03\x02\x02\x025\xd0\x03\x02\x02\x02","7\xd4\x03\x02\x02\x029\xdc\x03\x02\x02\x02;\xde","\x03\x02\x02\x02=\xe0\x03\x02\x02\x02?\xe2\x03","\x02\x02\x02A\xe4\x03\x02\x02\x02C\xe9\x03\x02","\x02\x02E\xef\x03\x02\x02\x02G\xf1\x03\x02\x02","\x02I\xf7\x03\x02\x02\x02K\xfe\x03\x02\x02\x02","M\u0105\x03\x02\x02\x02O\u0107\x03\x02\x02\x02Q\u010c","\x03\x02\x02\x02S\u0112\x03\x02\x02\x02U\u0117\x03","\x02\x02\x02W\u011b\x03\x02\x02\x02Y\u0120\x03\x02","\x02\x02[\u0127\x03\x02\x02\x02]\u012e\x03\x02\x02","\x02_\u013a\x03\x02\x02\x02a\u0140\x03\x02\x02\x02","c\u0147\x03\x02\x02\x02e\u014d\x03\x02\x02\x02g\u0152","\x03\x02\x02\x02i\u0158\x03\x02\x02\x02k\u0160\x03","\x02\x02\x02m\u0168\x03\x02\x02\x02o\u0175\x03\x02","\x02\x02q\u018b\x03\x02\x02\x02s\u018f\x03\x02\x02","\x02u\u01ad\x03\x02\x02\x02w\u01b5\x03\x02\x02\x02","y\u01bf\x03\x02\x02\x02{\u01ca\x03\x02\x02\x02}\u01d7","\x03\x02\x02\x02\x7f\u01dd\x03\x02\x02\x02\x81\u01eb","\x03\x02\x02\x02\x83\u01f6\x03\x02\x02\x02\x85\u01fb","\x03\x02\x02\x02\x87\u0201\x03\x02\x02\x02\x89\x8a","\x070\x02\x02\x8a\x04\x03\x02\x02\x02\x8b\x8c","\x07]\x02\x02\x8c\x06\x03\x02\x02\x02\x8d\x8e","\x07_\x02\x02\x8e\b\x03\x02\x02\x02\x8f\x90\x07","-\x02\x02\x90\n\x03\x02\x02\x02\x91\x92\x07/\x02","\x02\x92\f\x03\x02\x02\x02\x93\x94\x07,\x02\x02","\x94\x0e\x03\x02\x02\x02\x95\x96\x071\x02\x02","\x96\x10\x03\x02\x02\x02\x97\x98\x07f\x02\x02","\x98\x99\x07k\x02\x02\x99\x9a\x07x\x02\x02\x9a","\x12\x03\x02\x02\x02\x9b\x9c\x07o\x02\x02\x9c","\x9d\x07q\x02\x02\x9d\x9e\x07f\x02\x02\x9e\x14","\x03\x02\x02\x02\x9f\xa0\x07(\x02\x02\xa0\x16","\x03\x02\x02\x02\xa1\xa2\x07~\x02\x02\xa2\x18","\x03\x02\x02\x02\xa3\xa4\x07>\x02\x02\xa4\xa5","\x07?\x02\x02\xa5\x1a\x03\x02\x02\x02\xa6\xa7","\x07>\x02\x02\xa7\x1c\x03\x02\x02\x02\xa8\xa9","\x07@\x02\x02\xa9\x1e\x03\x02\x02\x02\xaa\xab","\x07@\x02\x02\xab\xac\x07?\x02\x02\xac \x03\x02","\x02\x02\xad\xae\x07k\x02\x02\xae\xaf\x07u\x02",'\x02\xaf"\x03\x02\x02\x02\xb0\xb1\x07c\x02\x02',"\xb1\xb2\x07u\x02\x02\xb2$\x03\x02\x02\x02\xb3","\xb4\x07?\x02\x02\xb4&\x03\x02\x02\x02\xb5\xb6","\x07\x80\x02\x02\xb6(\x03\x02\x02\x02\xb7\xb8","\x07#\x02\x02\xb8\xb9\x07?\x02\x02\xb9*\x03\x02","\x02\x02\xba\xbb\x07#\x02\x02\xbb\xbc\x07\x80","\x02\x02\xbc,\x03\x02\x02\x02\xbd\xbe\x07k\x02","\x02\xbe\xbf\x07p\x02\x02\xbf.\x03\x02\x02\x02","\xc0\xc1\x07e\x02\x02\xc1\xc2\x07q\x02\x02\xc2","\xc3\x07p\x02\x02\xc3\xc4\x07v\x02\x02\xc4\xc5","\x07c\x02\x02\xc5\xc6\x07k\x02\x02\xc6\xc7\x07","p\x02\x02\xc7\xc8\x07u\x02\x02\xc80\x03\x02\x02","\x02\xc9\xca\x07c\x02\x02\xca\xcb\x07p\x02\x02","\xcb\xcc\x07f\x02\x02\xcc2\x03\x02\x02\x02\xcd","\xce\x07q\x02\x02\xce\xcf\x07t\x02\x02\xcf4\x03","\x02\x02\x02\xd0\xd1\x07z\x02\x02\xd1\xd2\x07","q\x02\x02\xd2\xd3\x07t\x02\x02\xd36\x03\x02\x02","\x02\xd4\xd5\x07k\x02\x02\xd5\xd6\x07o\x02\x02","\xd6\xd7\x07r\x02\x02\xd7\xd8\x07n\x02\x02\xd8","\xd9\x07k\x02\x02\xd9\xda\x07g\x02\x02\xda\xdb","\x07u\x02\x02\xdb8\x03\x02\x02\x02\xdc\xdd\x07","*\x02\x02\xdd:\x03\x02\x02\x02\xde\xdf\x07+\x02","\x02\xdf<\x03\x02\x02\x02\xe0\xe1\x07}\x02\x02","\xe1>\x03\x02\x02\x02\xe2\xe3\x07\x7f\x02\x02","\xe3@\x03\x02\x02\x02\xe4\xe5\x07v\x02\x02\xe5","\xe6\x07t\x02\x02\xe6\xe7\x07w\x02\x02\xe7\xe8","\x07g\x02\x02\xe8B\x03\x02\x02\x02\xe9\xea\x07","h\x02\x02\xea\xeb\x07c\x02\x02\xeb\xec\x07n\x02","\x02\xec\xed\x07u\x02\x02\xed\xee\x07g\x02\x02","\xeeD\x03\x02\x02\x02\xef\xf0\x07'\x02\x02\xf0","F\x03\x02\x02\x02\xf1\xf2\x07&\x02\x02\xf2\xf3","\x07v\x02\x02\xf3\xf4\x07j\x02\x02\xf4\xf5\x07","k\x02\x02\xf5\xf6\x07u\x02\x02\xf6H\x03\x02\x02","\x02\xf7\xf8\x07&\x02\x02\xf8\xf9\x07k\x02\x02","\xf9\xfa\x07p\x02\x02\xfa\xfb\x07f\x02\x02\xfb","\xfc\x07g\x02\x02\xfc\xfd\x07z\x02\x02\xfdJ\x03","\x02\x02\x02\xfe\xff\x07&\x02\x02\xff\u0100\x07","v\x02\x02\u0100\u0101\x07q\x02\x02\u0101\u0102\x07v\x02","\x02\u0102\u0103\x07c\x02\x02\u0103\u0104\x07n\x02\x02","\u0104L\x03\x02\x02\x02\u0105\u0106\x07.\x02\x02\u0106","N\x03\x02\x02\x02\u0107\u0108\x07{\x02\x02\u0108\u0109","\x07g\x02\x02\u0109\u010a\x07c\x02\x02\u010a\u010b\x07","t\x02\x02\u010bP\x03\x02\x02\x02\u010c\u010d\x07o\x02","\x02\u010d\u010e\x07q\x02\x02\u010e\u010f\x07p\x02\x02","\u010f\u0110\x07v\x02\x02\u0110\u0111\x07j\x02\x02\u0111","R\x03\x02\x02\x02\u0112\u0113\x07y\x02\x02\u0113\u0114","\x07g\x02\x02\u0114\u0115\x07g\x02\x02\u0115\u0116\x07","m\x02\x02\u0116T\x03\x02\x02\x02\u0117\u0118\x07f\x02","\x02\u0118\u0119\x07c\x02\x02\u0119\u011a\x07{\x02\x02","\u011aV\x03\x02\x02\x02\u011b\u011c\x07j\x02\x02\u011c","\u011d\x07q\x02\x02\u011d\u011e\x07w\x02\x02\u011e\u011f","\x07t\x02\x02\u011fX\x03\x02\x02\x02\u0120\u0121\x07","o\x02\x02\u0121\u0122\x07k\x02\x02\u0122\u0123\x07p\x02","\x02\u0123\u0124\x07w\x02\x02\u0124\u0125\x07v\x02\x02","\u0125\u0126\x07g\x02\x02\u0126Z\x03\x02\x02\x02\u0127","\u0128\x07u\x02\x02\u0128\u0129\x07g\x02\x02\u0129\u012a","\x07e\x02\x02\u012a\u012b\x07q\x02\x02\u012b\u012c\x07","p\x02\x02\u012c\u012d\x07f\x02\x02\u012d\\\x03\x02\x02","\x02\u012e\u012f\x07o\x02\x02\u012f\u0130\x07k\x02\x02","\u0130\u0131\x07n\x02\x02\u0131\u0132\x07n\x02\x02\u0132","\u0133\x07k\x02\x02\u0133\u0134\x07u\x02\x02\u0134\u0135","\x07g\x02\x02\u0135\u0136\x07e\x02\x02\u0136\u0137\x07","q\x02\x02\u0137\u0138\x07p\x02\x02\u0138\u0139\x07f\x02","\x02\u0139^\x03\x02\x02\x02\u013a\u013b\x07{\x02\x02","\u013b\u013c\x07g\x02\x02\u013c\u013d\x07c\x02\x02\u013d","\u013e\x07t\x02\x02\u013e\u013f\x07u\x02\x02\u013f`\x03","\x02\x02\x02\u0140\u0141\x07o\x02\x02\u0141\u0142\x07","q\x02\x02\u0142\u0143\x07p\x02\x02\u0143\u0144\x07v\x02","\x02\u0144\u0145\x07j\x02\x02\u0145\u0146\x07u\x02\x02","\u0146b\x03\x02\x02\x02\u0147\u0148\x07y\x02\x02\u0148","\u0149\x07g\x02\x02\u0149\u014a\x07g\x02\x02\u014a\u014b","\x07m\x02\x02\u014b\u014c\x07u\x02\x02\u014cd\x03\x02","\x02\x02\u014d\u014e\x07f\x02\x02\u014e\u014f\x07c\x02","\x02\u014f\u0150\x07{\x02\x02\u0150\u0151\x07u\x02\x02","\u0151f\x03\x02\x02\x02\u0152\u0153\x07j\x02\x02\u0153","\u0154\x07q\x02\x02\u0154\u0155\x07w\x02\x02\u0155\u0156","\x07t\x02\x02\u0156\u0157\x07u\x02\x02\u0157h\x03\x02","\x02\x02\u0158\u0159\x07o\x02\x02\u0159\u015a\x07k\x02","\x02\u015a\u015b\x07p\x02\x02\u015b\u015c\x07w\x02\x02","\u015c\u015d\x07v\x02\x02\u015d\u015e\x07g\x02\x02\u015e","\u015f\x07u\x02\x02\u015fj\x03\x02\x02\x02\u0160\u0161","\x07u\x02\x02\u0161\u0162\x07g\x02\x02\u0162\u0163\x07","e\x02\x02\u0163\u0164\x07q\x02\x02\u0164\u0165\x07p\x02","\x02\u0165\u0166\x07f\x02\x02\u0166\u0167\x07u\x02\x02","\u0167l\x03\x02\x02\x02\u0168\u0169\x07o\x02\x02\u0169","\u016a\x07k\x02\x02\u016a\u016b\x07n\x02\x02\u016b\u016c","\x07n\x02\x02\u016c\u016d\x07k\x02\x02\u016d\u016e\x07","u\x02\x02\u016e\u016f\x07g\x02\x02\u016f\u0170\x07e\x02","\x02\u0170\u0171\x07q\x02\x02\u0171\u0172\x07p\x02\x02","\u0172\u0173\x07f\x02\x02\u0173\u0174\x07u\x02\x02\u0174","n\x03\x02\x02\x02\u0175\u0176\x07B\x02\x02\u0176\u0177","\t\x02\x02\x02\u0177\u0178\t\x02\x02\x02\u0178\u0179\t\x02","\x02\x02\u0179\u0186\t\x02\x02\x02\u017a\u017b\x07/\x02","\x02\u017b\u017c\t\x02\x02\x02\u017c\u0184\t\x02\x02\x02","\u017d\u017e\x07/\x02\x02\u017e\u017f\t\x02\x02\x02\u017f","\u0182\t\x02\x02\x02\u0180\u0181\x07V\x02\x02\u0181\u0183","\x05s:\x02\u0182\u0180\x03\x02\x02\x02\u0182\u0183\x03","\x02\x02\x02\u0183\u0185\x03\x02\x02\x02\u0184\u017d\x03","\x02\x02\x02\u0184\u0185\x03\x02\x02\x02\u0185\u0187\x03","\x02\x02\x02\u0186\u017a\x03\x02\x02\x02\u0186\u0187\x03","\x02\x02\x02\u0187\u0189\x03\x02\x02\x02\u0188\u018a\x07","\\\x02\x02\u0189\u0188\x03\x02\x02\x02\u0189\u018a\x03","\x02\x02\x02\u018ap\x03\x02\x02\x02\u018b\u018c\x07","B\x02\x02\u018c\u018d\x07V\x02\x02\u018d\u018e\x05s:\x02","\u018er\x03\x02\x02\x02\u018f\u0190\t\x02\x02\x02\u0190","\u01a1\t\x02\x02\x02\u0191\u0192\x07<\x02\x02\u0192\u0193","\t\x02\x02\x02\u0193\u019f\t\x02\x02\x02\u0194\u0195\x07","<\x02\x02\u0195\u0196\t\x02\x02\x02\u0196\u019d\t\x02\x02","\x02\u0197\u0199\x070\x02\x02\u0198\u019a\t\x02\x02\x02","\u0199\u0198\x03\x02\x02\x02\u019a\u019b\x03\x02\x02\x02","\u019b\u0199\x03\x02\x02\x02\u019b\u019c\x03\x02\x02\x02","\u019c\u019e\x03\x02\x02\x02\u019d\u0197\x03\x02\x02\x02","\u019d\u019e\x03\x02\x02\x02\u019e\u01a0\x03\x02\x02\x02","\u019f\u0194\x03\x02\x02\x02\u019f\u01a0\x03\x02\x02\x02","\u01a0\u01a2\x03\x02\x02\x02\u01a1\u0191\x03\x02\x02\x02","\u01a1\u01a2\x03\x02\x02\x02\u01a2\u01aa\x03\x02\x02\x02","\u01a3\u01ab\x07\\\x02\x02\u01a4\u01a5\t\x03\x02\x02\u01a5","\u01a6\t\x02\x02\x02\u01a6\u01a7\t\x02\x02\x02\u01a7\u01a8","\x07<\x02\x02\u01a8\u01a9\t\x02\x02\x02\u01a9\u01ab\t\x02","\x02\x02\u01aa\u01a3\x03\x02\x02\x02\u01aa\u01a4\x03\x02","\x02\x02\u01aa\u01ab\x03\x02\x02\x02\u01abt\x03\x02","\x02\x02\u01ac\u01ae\t\x04\x02\x02\u01ad\u01ac\x03\x02","\x02\x02\u01ae\u01b2\x03\x02\x02\x02\u01af\u01b1\t\x05","\x02\x02\u01b0\u01af\x03\x02\x02\x02\u01b1\u01b4\x03\x02","\x02\x02\u01b2\u01b0\x03\x02\x02\x02\u01b2\u01b3\x03\x02","\x02\x02\u01b3v\x03\x02\x02\x02\u01b4\u01b2\x03\x02","\x02\x02\u01b5\u01ba\x07b\x02\x02\u01b6\u01b9\x05\x83","B\x02\u01b7\u01b9\n\x06\x02\x02\u01b8\u01b6\x03\x02\x02","\x02\u01b8\u01b7\x03\x02\x02\x02\u01b9\u01bc\x03\x02\x02","\x02\u01ba\u01b8\x03\x02\x02\x02\u01ba\u01bb\x03\x02\x02","\x02\u01bb\u01bd\x03\x02\x02\x02\u01bc\u01ba\x03\x02\x02","\x02\u01bd\u01be\x07b\x02\x02\u01bex\x03\x02\x02\x02","\u01bf\u01c4\x07)\x02\x02\u01c0\u01c3\x05\x83B\x02\u01c1","\u01c3\n\x07\x02\x02\u01c2\u01c0\x03\x02\x02\x02\u01c2","\u01c1\x03\x02\x02\x02\u01c3\u01c6\x03\x02\x02\x02\u01c4","\u01c2\x03\x02\x02\x02\u01c4\u01c5\x03\x02\x02\x02\u01c5","\u01c7\x03\x02\x02\x02\u01c6\u01c4\x03\x02\x02\x02\u01c7","\u01c8\x07)\x02\x02\u01c8z\x03\x02\x02\x02\u01c9\u01cb","\t\x02\x02\x02\u01ca\u01c9\x03\x02\x02\x02\u01cb\u01cc","\x03\x02\x02\x02\u01cc\u01ca\x03\x02\x02\x02\u01cc\u01cd","\x03\x02\x02\x02\u01cd\u01d4\x03\x02\x02\x02\u01ce\u01d0","\x070\x02\x02\u01cf\u01d1\t\x02\x02\x02\u01d0\u01cf\x03","\x02\x02\x02\u01d1\u01d2\x03\x02\x02\x02\u01d2\u01d0\x03","\x02\x02\x02\u01d2\u01d3\x03\x02\x02\x02\u01d3\u01d5\x03","\x02\x02\x02\u01d4\u01ce\x03\x02\x02\x02\u01d4\u01d5\x03","\x02\x02\x02\u01d5|\x03\x02\x02\x02\u01d6\u01d8\t\b\x02","\x02\u01d7\u01d6\x03\x02\x02\x02\u01d8\u01d9\x03\x02\x02","\x02\u01d9\u01d7\x03\x02\x02\x02\u01d9\u01da\x03\x02\x02","\x02\u01da\u01db\x03\x02\x02\x02\u01db\u01dc\b?\x02\x02","\u01dc~\x03\x02\x02\x02\u01dd\u01de\x071\x02\x02\u01de","\u01df\x07,\x02\x02\u01df\u01e3\x03\x02\x02\x02\u01e0","\u01e2\v\x02\x02\x02\u01e1\u01e0\x03\x02\x02\x02\u01e2","\u01e5\x03\x02\x02\x02\u01e3\u01e4\x03\x02\x02\x02\u01e3","\u01e1\x03\x02\x02\x02\u01e4\u01e6\x03\x02\x02\x02\u01e5","\u01e3\x03\x02\x02\x02\u01e6\u01e7\x07,\x02\x02\u01e7","\u01e8\x071\x02\x02\u01e8\u01e9\x03\x02\x02\x02\u01e9","\u01ea\b@\x02\x02\u01ea\x80\x03\x02\x02\x02\u01eb\u01ec","\x071\x02\x02\u01ec\u01ed\x071\x02\x02\u01ed\u01f1\x03","\x02\x02\x02\u01ee\u01f0\n\t\x02\x02\u01ef\u01ee\x03\x02","\x02\x02\u01f0\u01f3\x03\x02\x02\x02\u01f1\u01ef\x03\x02","\x02\x02\u01f1\u01f2\x03\x02\x02\x02\u01f2\u01f4\x03\x02","\x02\x02\u01f3\u01f1\x03\x02\x02\x02\u01f4\u01f5\bA\x02","\x02\u01f5\x82\x03\x02\x02\x02\u01f6\u01f9\x07^\x02","\x02\u01f7\u01fa\t\n\x02\x02\u01f8\u01fa\x05\x85C\x02\u01f9","\u01f7\x03\x02\x02\x02\u01f9\u01f8\x03\x02\x02\x02\u01fa","\x84\x03\x02\x02\x02\u01fb\u01fc\x07w\x02\x02\u01fc","\u01fd\x05\x87D\x02\u01fd\u01fe\x05\x87D\x02\u01fe\u01ff","\x05\x87D\x02\u01ff\u0200\x05\x87D\x02\u0200\x86\x03","\x02\x02\x02\u0201\u0202\t\v\x02\x02\u0202\x88\x03","\x02\x02\x02\x1a\x02\u0182\u0184\u0186\u0189\u019b\u019d\u019f","\u01a1\u01aa\u01ad\u01b0\u01b2\u01b8\u01ba\u01c2\u01c4\u01cc\u01d2\u01d4","\u01d9\u01e3\u01f1\u01f9\x03\x02\x03\x02"].join(""),b=(new p.atn.ATNDeserializer).deserialize(C),o=b.decisionToState.map((a,c)=>new p.dfa.DFA(a,c));class v extends p.Lexer{constructor(c){super(c),this._interp=new p.atn.LexerATNSimulator(this,b,o,new p.PredictionContextCache)}get atn(){return b}}n(v,"grammarFileName","FHIRPath.g4"),n(v,"channelNames",["DEFAULT_TOKEN_CHANNEL","HIDDEN"]),n(v,"modeNames",["DEFAULT_MODE"]),n(v,"literalNames",[null,"'.'","'['","']'","'+'","'-'","'*'","'/'","'div'","'mod'","'&'","'|'","'<='","'<'","'>'","'>='","'is'","'as'","'='","'~'","'!='","'!~'","'in'","'contains'","'and'","'or'","'xor'","'implies'","'('","')'","'{'","'}'","'true'","'false'","'%'","'$this'","'$index'","'$total'","','","'year'","'month'","'week'","'day'","'hour'","'minute'","'second'","'millisecond'","'years'","'months'","'weeks'","'days'","'hours'","'minutes'","'seconds'","'milliseconds'"]),n(v,"symbolicNames",[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,"DATETIME","TIME","IDENTIFIER","DELIMITEDIDENTIFIER","STRING","NUMBER","WS","COMMENT","LINE_COMMENT"]),n(v,"ruleNames",["T__0","T__1","T__2","T__3","T__4","T__5","T__6","T__7","T__8","T__9","T__10","T__11","T__12","T__13","T__14","T__15","T__16","T__17","T__18","T__19","T__20","T__21","T__22","T__23","T__24","T__25","T__26","T__27","T__28","T__29","T__30","T__31","T__32","T__33","T__34","T__35","T__36","T__37","T__38","T__39","T__40","T__41","T__42","T__43","T__44","T__45","T__46","T__47","T__48","T__49","T__50","T__51","T__52","T__53","DATETIME","TIME","TIMEFORMAT","IDENTIFIER","DELIMITEDIDENTIFIER","STRING","NUMBER","WS","COMMENT","LINE_COMMENT","ESC","UNICODE","HEX"]),v.EOF=p.Token.EOF,v.T__0=1,v.T__1=2,v.T__2=3,v.T__3=4,v.T__4=5,v.T__5=6,v.T__6=7,v.T__7=8,v.T__8=9,v.T__9=10,v.T__10=11,v.T__11=12,v.T__12=13,v.T__13=14,v.T__14=15,v.T__15=16,v.T__16=17,v.T__17=18,v.T__18=19,v.T__19=20,v.T__20=21,v.T__21=22,v.T__22=23,v.T__23=24,v.T__24=25,v.T__25=26,v.T__26=27,v.T__27=28,v.T__28=29,v.T__29=30,v.T__30=31,v.T__31=32,v.T__32=33,v.T__33=34,v.T__34=35,v.T__35=36,v.T__36=37,v.T__37=38,v.T__38=39,v.T__39=40,v.T__40=41,v.T__41=42,v.T__42=43,v.T__43=44,v.T__44=45,v.T__45=46,v.T__46=47,v.T__47=48,v.T__48=49,v.T__49=50,v.T__50=51,v.T__51=52,v.T__52=53,v.T__53=54,v.DATETIME=55,v.TIME=56,v.IDENTIFIER=57,v.DELIMITEDIDENTIFIER=58,v.STRING=59,v.NUMBER=60,v.WS=61,v.COMMENT=62,v.LINE_COMMENT=63,Se.exports=v},6647:(Se,X,g)=>{const n=g(5815);Se.exports=class p extends n.tree.ParseTreeListener{enterEntireExpression(b){}exitEntireExpression(b){}enterIndexerExpression(b){}exitIndexerExpression(b){}enterPolarityExpression(b){}exitPolarityExpression(b){}enterAdditiveExpression(b){}exitAdditiveExpression(b){}enterMultiplicativeExpression(b){}exitMultiplicativeExpression(b){}enterUnionExpression(b){}exitUnionExpression(b){}enterOrExpression(b){}exitOrExpression(b){}enterAndExpression(b){}exitAndExpression(b){}enterMembershipExpression(b){}exitMembershipExpression(b){}enterInequalityExpression(b){}exitInequalityExpression(b){}enterInvocationExpression(b){}exitInvocationExpression(b){}enterEqualityExpression(b){}exitEqualityExpression(b){}enterImpliesExpression(b){}exitImpliesExpression(b){}enterTermExpression(b){}exitTermExpression(b){}enterTypeExpression(b){}exitTypeExpression(b){}enterInvocationTerm(b){}exitInvocationTerm(b){}enterLiteralTerm(b){}exitLiteralTerm(b){}enterExternalConstantTerm(b){}exitExternalConstantTerm(b){}enterParenthesizedTerm(b){}exitParenthesizedTerm(b){}enterNullLiteral(b){}exitNullLiteral(b){}enterBooleanLiteral(b){}exitBooleanLiteral(b){}enterStringLiteral(b){}exitStringLiteral(b){}enterNumberLiteral(b){}exitNumberLiteral(b){}enterDateTimeLiteral(b){}exitDateTimeLiteral(b){}enterTimeLiteral(b){}exitTimeLiteral(b){}enterQuantityLiteral(b){}exitQuantityLiteral(b){}enterExternalConstant(b){}exitExternalConstant(b){}enterMemberInvocation(b){}exitMemberInvocation(b){}enterFunctionInvocation(b){}exitFunctionInvocation(b){}enterThisInvocation(b){}exitThisInvocation(b){}enterIndexInvocation(b){}exitIndexInvocation(b){}enterTotalInvocation(b){}exitTotalInvocation(b){}enterFunctn(b){}exitFunctn(b){}enterParamList(b){}exitParamList(b){}enterQuantity(b){}exitQuantity(b){}enterUnit(b){}exitUnit(b){}enterDateTimePrecision(b){}exitDateTimePrecision(b){}enterPluralDateTimePrecision(b){}exitPluralDateTimePrecision(b){}enterTypeSpecifier(b){}exitTypeSpecifier(b){}enterQualifiedIdentifier(b){}exitQualifiedIdentifier(b){}enterIdentifier(b){}exitIdentifier(b){}}},8827:(Se,X,g)=>{var n=g(8416).default;const p=g(5815),C=g(6647),b=["\x03\u608b\ua72a\u8133\ub9ed\u417c\u3be7\u7786","\u5964\x03A\x9c\x04\x02\t\x02\x04\x03\t\x03\x04\x04","\t\x04\x04\x05\t\x05\x04\x06\t\x06\x04\x07\t\x07","\x04\b\t\b\x04\t\t\t\x04\n\t\n\x04\v\t\v\x04\f\t\f","\x04\r\t\r\x04\x0e\t\x0e\x04\x0f\t\x0f\x04\x10\t\x10","\x03\x02\x03\x02\x03\x02\x03\x03\x03\x03\x03\x03","\x03\x03\x05\x03(\n\x03\x03\x03\x03\x03\x03\x03","\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03","\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03","\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03","\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03","\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03","\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x07\x03","P\n\x03\f\x03\x0e\x03S\v\x03\x03\x04\x03\x04\x03","\x04\x03\x04\x03\x04\x03\x04\x03\x04\x05\x04\\","\n\x04\x03\x05\x03\x05\x03\x05\x03\x05\x03\x05","\x03\x05\x03\x05\x03\x05\x05\x05f\n\x05\x03\x06","\x03\x06\x03\x06\x05\x06k\n\x06\x03\x07\x03\x07","\x03\x07\x03\x07\x03\x07\x05\x07r\n\x07\x03\b\x03","\b\x03\b\x05\bw\n\b\x03\b\x03\b\x03\t\x03\t\x03\t\x07","\t~\n\t\f\t\x0e\t\x81\v\t\x03\n\x03\n\x05\n\x85\n\n","\x03\v\x03\v\x03\v\x05\v\x8a\n\v\x03","\f\x03\f\x03\r\x03\r\x03\x0e\x03\x0e\x03\x0f\x03","\x0f\x03\x0f\x07\x0f\x95\n\x0f\f\x0f\x0e\x0f\x98","\v\x0f\x03\x10\x03\x10\x03\x10\x02\x03\x04\x11","\x02\x04\x06\b\n\f\x0e\x10\x12\x14\x16\x18\x1a\x1c","\x1e\x02\x0e\x03\x02\x06\x07\x03\x02\b\v\x04","\x02\x06\x07\f\f\x03\x02\x0e\x11\x03\x02\x14\x17","\x03\x02\x18\x19\x03\x02\x1b\x1c\x03\x02\x12\x13",'\x03\x02"#\x03\x02)0\x03\x0218\x05\x02\x12\x13',"\x18\x19;<\x02\xad\x02 \x03\x02\x02\x02\x04'\x03","\x02\x02\x02\x06[\x03\x02\x02\x02\be\x03\x02\x02","\x02\ng\x03\x02\x02\x02\fq\x03\x02\x02\x02\x0es","\x03\x02\x02\x02\x10z\x03\x02\x02\x02\x12\x82","\x03\x02\x02\x02\x14\x89\x03\x02\x02\x02\x16\x8b","\x03\x02\x02\x02\x18\x8d\x03\x02\x02\x02\x1a\x8f","\x03\x02\x02\x02\x1c\x91\x03\x02\x02\x02\x1e\x99",'\x03\x02\x02\x02 !\x05\x04\x03\x02!"\x07\x02\x02','\x03"\x03\x03\x02\x02\x02#$\b\x03\x01\x02$(\x05',"\x06\x04\x02%&\t\x02\x02\x02&(\x05\x04\x03\r'#\x03","\x02\x02\x02'%\x03\x02\x02\x02(Q\x03\x02\x02\x02",")*\f\f\x02\x02*+\t\x03\x02\x02+P\x05\x04\x03\r,-\f\v","\x02\x02-.\t\x04\x02\x02.P\x05\x04\x03\f/0\f\n\x02","\x0201\x07\r\x02\x021P\x05\x04\x03\v23\f\t\x02\x02","34\t\x05\x02\x024P\x05\x04\x03\n56\f\x07\x02\x026","7\t\x06\x02\x027P\x05\x04\x03\b89\f\x06\x02\x029:","\t\x07\x02\x02:P\x05\x04\x03\x07;<\f\x05\x02\x02","<=\x07\x1a\x02\x02=P\x05\x04\x03\x06>?\f\x04\x02","\x02?@\t\b\x02\x02@P\x05\x04\x03\x05AB\f\x03\x02\x02","BC\x07\x1d\x02\x02CP\x05\x04\x03\x04DE\f\x0f\x02","\x02EF\x07\x03\x02\x02FP\x05\f\x07\x02GH\f\x0e\x02","\x02HI\x07\x04\x02\x02IJ\x05\x04\x03\x02JK\x07\x05","\x02\x02KP\x03\x02\x02\x02LM\f\b\x02\x02MN\t\t\x02","\x02NP\x05\x1a\x0e\x02O)\x03\x02\x02\x02O,\x03\x02","\x02\x02O/\x03\x02\x02\x02O2\x03\x02\x02\x02O5\x03","\x02\x02\x02O8\x03\x02\x02\x02O;\x03\x02\x02\x02","O>\x03\x02\x02\x02OA\x03\x02\x02\x02OD\x03\x02\x02","\x02OG\x03\x02\x02\x02OL\x03\x02\x02\x02PS\x03\x02","\x02\x02QO\x03\x02\x02\x02QR\x03\x02\x02\x02R\x05","\x03\x02\x02\x02SQ\x03\x02\x02\x02T\\\x05\f\x07","\x02U\\\x05\b\x05\x02V\\\x05\n\x06\x02WX\x07\x1e\x02","\x02XY\x05\x04\x03\x02YZ\x07\x1f\x02\x02Z\\\x03","\x02\x02\x02[T\x03\x02\x02\x02[U\x03\x02\x02\x02","[V\x03\x02\x02\x02[W\x03\x02\x02\x02\\\x07\x03\x02","\x02\x02]^\x07 \x02\x02^f\x07!\x02\x02_f\t\n\x02\x02","`f\x07=\x02\x02af\x07>\x02\x02bf\x079\x02\x02cf\x07",":\x02\x02df\x05\x12\n\x02e]\x03\x02\x02\x02e_\x03","\x02\x02\x02e`\x03\x02\x02\x02ea\x03\x02\x02\x02","eb\x03\x02\x02\x02ec\x03\x02\x02\x02ed\x03\x02\x02","\x02f\t\x03\x02\x02\x02gj\x07$\x02\x02hk\x05\x1e","\x10\x02ik\x07=\x02\x02jh\x03\x02\x02\x02ji\x03","\x02\x02\x02k\v\x03\x02\x02\x02lr\x05\x1e\x10","\x02mr\x05\x0e\b\x02nr\x07%\x02\x02or\x07&\x02\x02","pr\x07'\x02\x02ql\x03\x02\x02\x02qm\x03\x02\x02","\x02qn\x03\x02\x02\x02qo\x03\x02\x02\x02qp\x03\x02","\x02\x02r\r\x03\x02\x02\x02st\x05\x1e\x10\x02tv","\x07\x1e\x02\x02uw\x05\x10\t\x02vu\x03\x02\x02\x02","vw\x03\x02\x02\x02wx\x03\x02\x02\x02xy\x07\x1f\x02","\x02y\x0f\x03\x02\x02\x02z\x7f\x05\x04\x03\x02","{|\x07(\x02\x02|~\x05\x04\x03\x02}{\x03\x02\x02","\x02~\x81\x03\x02\x02\x02\x7f}\x03\x02\x02\x02","\x7f\x80\x03\x02\x02\x02\x80\x11\x03\x02\x02\x02","\x81\x7f\x03\x02\x02\x02\x82\x84\x07>\x02\x02","\x83\x85\x05\x14\v\x02\x84\x83\x03\x02\x02\x02","\x84\x85\x03\x02\x02\x02\x85\x13\x03\x02\x02\x02","\x86\x8a\x05\x16\f\x02\x87\x8a\x05\x18\r\x02\x88","\x8a\x07=\x02\x02\x89\x86\x03\x02\x02\x02\x89","\x87\x03\x02\x02\x02\x89\x88\x03\x02\x02\x02\x8a","\x15\x03\x02\x02\x02\x8b\x8c\t\v\x02\x02\x8c","\x17\x03\x02\x02\x02\x8d\x8e\t\f\x02\x02\x8e\x19","\x03\x02\x02\x02\x8f\x90\x05\x1c\x0f\x02\x90\x1b","\x03\x02\x02\x02\x91\x96\x05\x1e\x10\x02\x92\x93","\x07\x03\x02\x02\x93\x95\x05\x1e\x10\x02\x94\x92","\x03\x02\x02\x02\x95\x98\x03\x02\x02\x02\x96\x94","\x03\x02\x02\x02\x96\x97\x03\x02\x02\x02\x97\x1d","\x03\x02\x02\x02\x98\x96\x03\x02\x02\x02\x99\x9a","\t\r\x02\x02\x9a\x1f\x03\x02\x02\x02\x0e'OQ[ejqv","\x7f\x84\x89\x96"].join(""),o=(new p.atn.ATNDeserializer).deserialize(b),v=o.decisionToState.map((rt,J)=>new p.dfa.DFA(rt,J)),a=new p.PredictionContextCache;class c extends p.Parser{constructor(J){super(J),this._interp=new p.atn.ParserATNSimulator(this,o,v,a),this.ruleNames=c.ruleNames,this.literalNames=c.literalNames,this.symbolicNames=c.symbolicNames}get atn(){return o}sempred(J,Ce,ee){if(1===Ce)return this.expression_sempred(J,ee);throw"No predicate with index:"+Ce}expression_sempred(J,Ce){switch(Ce){case 0:return this.precpred(this._ctx,10);case 1:return this.precpred(this._ctx,9);case 2:return this.precpred(this._ctx,8);case 3:return this.precpred(this._ctx,7);case 4:return this.precpred(this._ctx,5);case 5:return this.precpred(this._ctx,4);case 6:return this.precpred(this._ctx,3);case 7:return this.precpred(this._ctx,2);case 8:return this.precpred(this._ctx,1);case 9:return this.precpred(this._ctx,13);case 10:return this.precpred(this._ctx,12);case 11:return this.precpred(this._ctx,6);default:throw"No predicate with index:"+Ce}}entireExpression(){let J=new s(this,this._ctx,this.state);this.enterRule(J,0,c.RULE_entireExpression);try{this.enterOuterAlt(J,1),this.state=30,this.expression(0),this.state=31,this.match(c.EOF)}catch(Ce){if(!(Ce instanceof p.error.RecognitionException))throw Ce;J.exception=Ce,this._errHandler.reportError(this,Ce),this._errHandler.recover(this,Ce)}finally{this.exitRule()}return J}expression(J){void 0===J&&(J=0);const Ce=this._ctx,ee=this.state;let ae=new l(this,this._ctx,ee),ie=ae;this.enterRecursionRule(ae,2,c.RULE_expression,J);var Te=0;try{switch(this.enterOuterAlt(ae,1),this.state=37,this._errHandler.sync(this),this._input.LA(1)){case c.T__15:case c.T__16:case c.T__21:case c.T__22:case c.T__27:case c.T__29:case c.T__31:case c.T__32:case c.T__33:case c.T__34:case c.T__35:case c.T__36:case c.DATETIME:case c.TIME:case c.IDENTIFIER:case c.DELIMITEDIDENTIFIER:case c.STRING:case c.NUMBER:ae=new O(this,ae),this._ctx=ae,ie=ae,this.state=34,this.term();break;case c.T__3:case c.T__4:ae=new r(this,ae),this._ctx=ae,ie=ae,this.state=35,(Te=this._input.LA(1))===c.T__3||Te===c.T__4?(this._errHandler.reportMatch(this),this.consume()):this._errHandler.recoverInline(this),this.state=36,this.expression(11);break;default:throw new p.error.NoViableAltException(this)}this._ctx.stop=this._input.LT(-1),this.state=79,this._errHandler.sync(this);for(var ct=this._interp.adaptivePredict(this._input,2,this._ctx);2!=ct&&ct!=p.atn.ATN.INVALID_ALT_NUMBER;){if(1===ct)switch(null!==this._parseListeners&&this.triggerExitRuleEvent(),ie=ae,this.state=77,this._errHandler.sync(this),this._interp.adaptivePredict(this._input,1,this._ctx)){case 1:if(ae=new h(this,new l(this,Ce,ee)),this.pushNewRecursionContext(ae,2,c.RULE_expression),this.state=39,!this.precpred(this._ctx,10))throw new p.error.FailedPredicateException(this,"this.precpred(this._ctx, 10)");this.state=40,!(-32&(Te=this._input.LA(1)))&&1<'","'>='","'is'","'as'","'='","'~'","'!='","'!~'","'in'","'contains'","'and'","'or'","'xor'","'implies'","'('","')'","'{'","'}'","'true'","'false'","'%'","'$this'","'$index'","'$total'","','","'year'","'month'","'week'","'day'","'hour'","'minute'","'second'","'millisecond'","'years'","'months'","'weeks'","'days'","'hours'","'minutes'","'seconds'","'milliseconds'"]),n(c,"symbolicNames",[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,"DATETIME","TIME","IDENTIFIER","DELIMITEDIDENTIFIER","STRING","NUMBER","WS","COMMENT","LINE_COMMENT"]),n(c,"ruleNames",["entireExpression","expression","term","literal","externalConstant","invocation","functn","paramList","quantity","unit","dateTimePrecision","pluralDateTimePrecision","typeSpecifier","qualifiedIdentifier","identifier"]),c.EOF=p.Token.EOF,c.T__0=1,c.T__1=2,c.T__2=3,c.T__3=4,c.T__4=5,c.T__5=6,c.T__6=7,c.T__7=8,c.T__8=9,c.T__9=10,c.T__10=11,c.T__11=12,c.T__12=13,c.T__13=14,c.T__14=15,c.T__15=16,c.T__16=17,c.T__17=18,c.T__18=19,c.T__19=20,c.T__20=21,c.T__21=22,c.T__22=23,c.T__23=24,c.T__24=25,c.T__25=26,c.T__26=27,c.T__27=28,c.T__28=29,c.T__29=30,c.T__30=31,c.T__31=32,c.T__32=33,c.T__33=34,c.T__34=35,c.T__35=36,c.T__36=37,c.T__37=38,c.T__38=39,c.T__39=40,c.T__40=41,c.T__41=42,c.T__42=43,c.T__43=44,c.T__44=45,c.T__45=46,c.T__46=47,c.T__47=48,c.T__48=49,c.T__49=50,c.T__50=51,c.T__51=52,c.T__52=53,c.T__53=54,c.DATETIME=55,c.TIME=56,c.IDENTIFIER=57,c.DELIMITEDIDENTIFIER=58,c.STRING=59,c.NUMBER=60,c.WS=61,c.COMMENT=62,c.LINE_COMMENT=63,c.RULE_entireExpression=0,c.RULE_expression=1,c.RULE_term=2,c.RULE_literal=3,c.RULE_externalConstant=4,c.RULE_invocation=5,c.RULE_functn=6,c.RULE_paramList=7,c.RULE_quantity=8,c.RULE_unit=9,c.RULE_dateTimePrecision=10,c.RULE_pluralDateTimePrecision=11,c.RULE_typeSpecifier=12,c.RULE_qualifiedIdentifier=13,c.RULE_identifier=14;class s extends p.ParserRuleContext{constructor(J,Ce,ee){void 0===Ce&&(Ce=null),null==ee&&(ee=-1),super(Ce,ee),this.parser=J,this.ruleIndex=c.RULE_entireExpression}expression(){return this.getTypedRuleContext(l,0)}EOF(){return this.getToken(c.EOF,0)}enterRule(J){J instanceof C&&J.enterEntireExpression(this)}exitRule(J){J instanceof C&&J.exitEntireExpression(this)}}class l extends p.ParserRuleContext{constructor(J,Ce,ee){void 0===Ce&&(Ce=null),null==ee&&(ee=-1),super(Ce,ee),this.parser=J,this.ruleIndex=c.RULE_expression}copyFrom(J){super.copyFrom(J)}}class d extends l{constructor(J,Ce){super(J),n(this,"expression",function(ee){return void 0===ee&&(ee=null),null===ee?this.getTypedRuleContexts(l):this.getTypedRuleContext(l,ee)}),super.copyFrom(Ce)}enterRule(J){J instanceof C&&J.enterIndexerExpression(this)}exitRule(J){J instanceof C&&J.exitIndexerExpression(this)}}c.IndexerExpressionContext=d;class r extends l{constructor(J,Ce){super(J),super.copyFrom(Ce)}expression(){return this.getTypedRuleContext(l,0)}enterRule(J){J instanceof C&&J.enterPolarityExpression(this)}exitRule(J){J instanceof C&&J.exitPolarityExpression(this)}}c.PolarityExpressionContext=r;class u extends l{constructor(J,Ce){super(J),n(this,"expression",function(ee){return void 0===ee&&(ee=null),null===ee?this.getTypedRuleContexts(l):this.getTypedRuleContext(l,ee)}),super.copyFrom(Ce)}enterRule(J){J instanceof C&&J.enterAdditiveExpression(this)}exitRule(J){J instanceof C&&J.exitAdditiveExpression(this)}}c.AdditiveExpressionContext=u;class h extends l{constructor(J,Ce){super(J),n(this,"expression",function(ee){return void 0===ee&&(ee=null),null===ee?this.getTypedRuleContexts(l):this.getTypedRuleContext(l,ee)}),super.copyFrom(Ce)}enterRule(J){J instanceof C&&J.enterMultiplicativeExpression(this)}exitRule(J){J instanceof C&&J.exitMultiplicativeExpression(this)}}c.MultiplicativeExpressionContext=h;class m extends l{constructor(J,Ce){super(J),n(this,"expression",function(ee){return void 0===ee&&(ee=null),null===ee?this.getTypedRuleContexts(l):this.getTypedRuleContext(l,ee)}),super.copyFrom(Ce)}enterRule(J){J instanceof C&&J.enterUnionExpression(this)}exitRule(J){J instanceof C&&J.exitUnionExpression(this)}}c.UnionExpressionContext=m;class _ extends l{constructor(J,Ce){super(J),n(this,"expression",function(ee){return void 0===ee&&(ee=null),null===ee?this.getTypedRuleContexts(l):this.getTypedRuleContext(l,ee)}),super.copyFrom(Ce)}enterRule(J){J instanceof C&&J.enterOrExpression(this)}exitRule(J){J instanceof C&&J.exitOrExpression(this)}}c.OrExpressionContext=_;class M extends l{constructor(J,Ce){super(J),n(this,"expression",function(ee){return void 0===ee&&(ee=null),null===ee?this.getTypedRuleContexts(l):this.getTypedRuleContext(l,ee)}),super.copyFrom(Ce)}enterRule(J){J instanceof C&&J.enterAndExpression(this)}exitRule(J){J instanceof C&&J.exitAndExpression(this)}}c.AndExpressionContext=M;class x extends l{constructor(J,Ce){super(J),n(this,"expression",function(ee){return void 0===ee&&(ee=null),null===ee?this.getTypedRuleContexts(l):this.getTypedRuleContext(l,ee)}),super.copyFrom(Ce)}enterRule(J){J instanceof C&&J.enterMembershipExpression(this)}exitRule(J){J instanceof C&&J.exitMembershipExpression(this)}}c.MembershipExpressionContext=x;class w extends l{constructor(J,Ce){super(J),n(this,"expression",function(ee){return void 0===ee&&(ee=null),null===ee?this.getTypedRuleContexts(l):this.getTypedRuleContext(l,ee)}),super.copyFrom(Ce)}enterRule(J){J instanceof C&&J.enterInequalityExpression(this)}exitRule(J){J instanceof C&&J.exitInequalityExpression(this)}}c.InequalityExpressionContext=w;class L extends l{constructor(J,Ce){super(J),super.copyFrom(Ce)}expression(){return this.getTypedRuleContext(l,0)}invocation(){return this.getTypedRuleContext(ue,0)}enterRule(J){J instanceof C&&J.enterInvocationExpression(this)}exitRule(J){J instanceof C&&J.exitInvocationExpression(this)}}c.InvocationExpressionContext=L;class A extends l{constructor(J,Ce){super(J),n(this,"expression",function(ee){return void 0===ee&&(ee=null),null===ee?this.getTypedRuleContexts(l):this.getTypedRuleContext(l,ee)}),super.copyFrom(Ce)}enterRule(J){J instanceof C&&J.enterEqualityExpression(this)}exitRule(J){J instanceof C&&J.exitEqualityExpression(this)}}c.EqualityExpressionContext=A;class T extends l{constructor(J,Ce){super(J),n(this,"expression",function(ee){return void 0===ee&&(ee=null),null===ee?this.getTypedRuleContexts(l):this.getTypedRuleContext(l,ee)}),super.copyFrom(Ce)}enterRule(J){J instanceof C&&J.enterImpliesExpression(this)}exitRule(J){J instanceof C&&J.exitImpliesExpression(this)}}c.ImpliesExpressionContext=T;class O extends l{constructor(J,Ce){super(J),super.copyFrom(Ce)}term(){return this.getTypedRuleContext(D,0)}enterRule(J){J instanceof C&&J.enterTermExpression(this)}exitRule(J){J instanceof C&&J.exitTermExpression(this)}}c.TermExpressionContext=O;class E extends l{constructor(J,Ce){super(J),super.copyFrom(Ce)}expression(){return this.getTypedRuleContext(l,0)}typeSpecifier(){return this.getTypedRuleContext(nt,0)}enterRule(J){J instanceof C&&J.enterTypeExpression(this)}exitRule(J){J instanceof C&&J.exitTypeExpression(this)}}c.TypeExpressionContext=E;class D extends p.ParserRuleContext{constructor(J,Ce,ee){void 0===Ce&&(Ce=null),null==ee&&(ee=-1),super(Ce,ee),this.parser=J,this.ruleIndex=c.RULE_term}copyFrom(J){super.copyFrom(J)}}class R extends D{constructor(J,Ce){super(J),super.copyFrom(Ce)}externalConstant(){return this.getTypedRuleContext(Q,0)}enterRule(J){J instanceof C&&J.enterExternalConstantTerm(this)}exitRule(J){J instanceof C&&J.exitExternalConstantTerm(this)}}c.ExternalConstantTermContext=R;class j extends D{constructor(J,Ce){super(J),super.copyFrom(Ce)}literal(){return this.getTypedRuleContext(k,0)}enterRule(J){J instanceof C&&J.enterLiteralTerm(this)}exitRule(J){J instanceof C&&J.exitLiteralTerm(this)}}c.LiteralTermContext=j;class N extends D{constructor(J,Ce){super(J),super.copyFrom(Ce)}expression(){return this.getTypedRuleContext(l,0)}enterRule(J){J instanceof C&&J.enterParenthesizedTerm(this)}exitRule(J){J instanceof C&&J.exitParenthesizedTerm(this)}}c.ParenthesizedTermContext=N;class S extends D{constructor(J,Ce){super(J),super.copyFrom(Ce)}invocation(){return this.getTypedRuleContext(ue,0)}enterRule(J){J instanceof C&&J.enterInvocationTerm(this)}exitRule(J){J instanceof C&&J.exitInvocationTerm(this)}}c.InvocationTermContext=S;class k extends p.ParserRuleContext{constructor(J,Ce,ee){void 0===Ce&&(Ce=null),null==ee&&(ee=-1),super(Ce,ee),this.parser=J,this.ruleIndex=c.RULE_literal}copyFrom(J){super.copyFrom(J)}}class F extends k{constructor(J,Ce){super(J),super.copyFrom(Ce)}TIME(){return this.getToken(c.TIME,0)}enterRule(J){J instanceof C&&J.enterTimeLiteral(this)}exitRule(J){J instanceof C&&J.exitTimeLiteral(this)}}c.TimeLiteralContext=F;class Y extends k{constructor(J,Ce){super(J),super.copyFrom(Ce)}enterRule(J){J instanceof C&&J.enterNullLiteral(this)}exitRule(J){J instanceof C&&J.exitNullLiteral(this)}}c.NullLiteralContext=Y;class se extends k{constructor(J,Ce){super(J),super.copyFrom(Ce)}DATETIME(){return this.getToken(c.DATETIME,0)}enterRule(J){J instanceof C&&J.enterDateTimeLiteral(this)}exitRule(J){J instanceof C&&J.exitDateTimeLiteral(this)}}c.DateTimeLiteralContext=se;class ne extends k{constructor(J,Ce){super(J),super.copyFrom(Ce)}STRING(){return this.getToken(c.STRING,0)}enterRule(J){J instanceof C&&J.enterStringLiteral(this)}exitRule(J){J instanceof C&&J.exitStringLiteral(this)}}c.StringLiteralContext=ne;class me extends k{constructor(J,Ce){super(J),super.copyFrom(Ce)}enterRule(J){J instanceof C&&J.enterBooleanLiteral(this)}exitRule(J){J instanceof C&&J.exitBooleanLiteral(this)}}c.BooleanLiteralContext=me;class $ extends k{constructor(J,Ce){super(J),super.copyFrom(Ce)}NUMBER(){return this.getToken(c.NUMBER,0)}enterRule(J){J instanceof C&&J.enterNumberLiteral(this)}exitRule(J){J instanceof C&&J.exitNumberLiteral(this)}}c.NumberLiteralContext=$;class q extends k{constructor(J,Ce){super(J),super.copyFrom(Ce)}quantity(){return this.getTypedRuleContext(tt,0)}enterRule(J){J instanceof C&&J.enterQuantityLiteral(this)}exitRule(J){J instanceof C&&J.exitQuantityLiteral(this)}}c.QuantityLiteralContext=q;class Q extends p.ParserRuleContext{constructor(J,Ce,ee){void 0===Ce&&(Ce=null),null==ee&&(ee=-1),super(Ce,ee),this.parser=J,this.ruleIndex=c.RULE_externalConstant}identifier(){return this.getTypedRuleContext(vt,0)}STRING(){return this.getToken(c.STRING,0)}enterRule(J){J instanceof C&&J.enterExternalConstant(this)}exitRule(J){J instanceof C&&J.exitExternalConstant(this)}}class ue extends p.ParserRuleContext{constructor(J,Ce,ee){void 0===Ce&&(Ce=null),null==ee&&(ee=-1),super(Ce,ee),this.parser=J,this.ruleIndex=c.RULE_invocation}copyFrom(J){super.copyFrom(J)}}class Me extends ue{constructor(J,Ce){super(J),super.copyFrom(Ce)}enterRule(J){J instanceof C&&J.enterTotalInvocation(this)}exitRule(J){J instanceof C&&J.exitTotalInvocation(this)}}c.TotalInvocationContext=Me;class Oe extends ue{constructor(J,Ce){super(J),super.copyFrom(Ce)}enterRule(J){J instanceof C&&J.enterThisInvocation(this)}exitRule(J){J instanceof C&&J.exitThisInvocation(this)}}c.ThisInvocationContext=Oe;class Xe extends ue{constructor(J,Ce){super(J),super.copyFrom(Ce)}enterRule(J){J instanceof C&&J.enterIndexInvocation(this)}exitRule(J){J instanceof C&&J.exitIndexInvocation(this)}}c.IndexInvocationContext=Xe;class Be extends ue{constructor(J,Ce){super(J),super.copyFrom(Ce)}functn(){return this.getTypedRuleContext(st,0)}enterRule(J){J instanceof C&&J.enterFunctionInvocation(this)}exitRule(J){J instanceof C&&J.exitFunctionInvocation(this)}}c.FunctionInvocationContext=Be;class $e extends ue{constructor(J,Ce){super(J),super.copyFrom(Ce)}identifier(){return this.getTypedRuleContext(vt,0)}enterRule(J){J instanceof C&&J.enterMemberInvocation(this)}exitRule(J){J instanceof C&&J.exitMemberInvocation(this)}}c.MemberInvocationContext=$e;class st extends p.ParserRuleContext{constructor(J,Ce,ee){void 0===Ce&&(Ce=null),null==ee&&(ee=-1),super(Ce,ee),this.parser=J,this.ruleIndex=c.RULE_functn}identifier(){return this.getTypedRuleContext(vt,0)}paramList(){return this.getTypedRuleContext(Mt,0)}enterRule(J){J instanceof C&&J.enterFunctn(this)}exitRule(J){J instanceof C&&J.exitFunctn(this)}}class Mt extends p.ParserRuleContext{constructor(J,Ce,ee){void 0===Ce&&(Ce=null),null==ee&&(ee=-1),super(Ce,ee),n(this,"expression",function(ae){return void 0===ae&&(ae=null),null===ae?this.getTypedRuleContexts(l):this.getTypedRuleContext(l,ae)}),this.parser=J,this.ruleIndex=c.RULE_paramList}enterRule(J){J instanceof C&&J.enterParamList(this)}exitRule(J){J instanceof C&&J.exitParamList(this)}}class tt extends p.ParserRuleContext{constructor(J,Ce,ee){void 0===Ce&&(Ce=null),null==ee&&(ee=-1),super(Ce,ee),this.parser=J,this.ruleIndex=c.RULE_quantity}NUMBER(){return this.getToken(c.NUMBER,0)}unit(){return this.getTypedRuleContext(St,0)}enterRule(J){J instanceof C&&J.enterQuantity(this)}exitRule(J){J instanceof C&&J.exitQuantity(this)}}class St extends p.ParserRuleContext{constructor(J,Ce,ee){void 0===Ce&&(Ce=null),null==ee&&(ee=-1),super(Ce,ee),this.parser=J,this.ruleIndex=c.RULE_unit}dateTimePrecision(){return this.getTypedRuleContext(bt,0)}pluralDateTimePrecision(){return this.getTypedRuleContext(xt,0)}STRING(){return this.getToken(c.STRING,0)}enterRule(J){J instanceof C&&J.enterUnit(this)}exitRule(J){J instanceof C&&J.exitUnit(this)}}class bt extends p.ParserRuleContext{constructor(J,Ce,ee){void 0===Ce&&(Ce=null),null==ee&&(ee=-1),super(Ce,ee),this.parser=J,this.ruleIndex=c.RULE_dateTimePrecision}enterRule(J){J instanceof C&&J.enterDateTimePrecision(this)}exitRule(J){J instanceof C&&J.exitDateTimePrecision(this)}}class xt extends p.ParserRuleContext{constructor(J,Ce,ee){void 0===Ce&&(Ce=null),null==ee&&(ee=-1),super(Ce,ee),this.parser=J,this.ruleIndex=c.RULE_pluralDateTimePrecision}enterRule(J){J instanceof C&&J.enterPluralDateTimePrecision(this)}exitRule(J){J instanceof C&&J.exitPluralDateTimePrecision(this)}}class nt extends p.ParserRuleContext{constructor(J,Ce,ee){void 0===Ce&&(Ce=null),null==ee&&(ee=-1),super(Ce,ee),this.parser=J,this.ruleIndex=c.RULE_typeSpecifier}qualifiedIdentifier(){return this.getTypedRuleContext(ot,0)}enterRule(J){J instanceof C&&J.enterTypeSpecifier(this)}exitRule(J){J instanceof C&&J.exitTypeSpecifier(this)}}class ot extends p.ParserRuleContext{constructor(J,Ce,ee){void 0===Ce&&(Ce=null),null==ee&&(ee=-1),super(Ce,ee),n(this,"identifier",function(ae){return void 0===ae&&(ae=null),null===ae?this.getTypedRuleContexts(vt):this.getTypedRuleContext(vt,ae)}),this.parser=J,this.ruleIndex=c.RULE_qualifiedIdentifier}enterRule(J){J instanceof C&&J.enterQualifiedIdentifier(this)}exitRule(J){J instanceof C&&J.exitQualifiedIdentifier(this)}}class vt extends p.ParserRuleContext{constructor(J,Ce,ee){void 0===Ce&&(Ce=null),null==ee&&(ee=-1),super(Ce,ee),this.parser=J,this.ruleIndex=c.RULE_identifier}IDENTIFIER(){return this.getToken(c.IDENTIFIER,0)}DELIMITEDIDENTIFIER(){return this.getToken(c.DELIMITEDIDENTIFIER,0)}enterRule(J){J instanceof C&&J.enterIdentifier(this)}exitRule(J){J instanceof C&&J.exitIdentifier(this)}}c.EntireExpressionContext=s,c.ExpressionContext=l,c.TermContext=D,c.LiteralContext=k,c.ExternalConstantContext=Q,c.InvocationContext=ue,c.FunctnContext=st,c.ParamListContext=Mt,c.QuantityContext=tt,c.UnitContext=St,c.DateTimePrecisionContext=bt,c.PluralDateTimePrecisionContext=xt,c.TypeSpecifierContext=nt,c.QualifiedIdentifierContext=ot,c.IdentifierContext=vt,Se.exports=c},7661:(Se,X,g)=>{const n=g(5815),p=g(2472),C=g(8827),b=g(6647);class o extends n.error.ErrorListener{constructor(c){super(),this.errors=c}syntaxError(c,s,l,d,r,u){this.errors.push([c,s,l,d,r,u])}}Se.exports={parse:function(a){var c=new n.InputStream(a),s=new p(c),l=new n.CommonTokenStream(s),d=new C(l);d.buildParseTrees=!0;var r=[],u=new o(r);s.removeErrorListeners(),s.addErrorListener(u),d.removeErrorListeners(),d.addErrorListener(u);var h=d.entireExpression();class m extends b{constructor(){super()}}var M,_={},x=[_];for(let A of Object.getOwnPropertyNames(b.prototype))A.startsWith("enter")?m.prototype[A]=function(T){let O=x[x.length-1];(M={type:A.slice(5)}).text=T.getText(),O.children||(O.children=[]),O.children.push(M),x.push(M),M.terminalNodeText=[];for(let D of T.children)D.symbol&&M.terminalNodeText.push(D.getText())}:A.startsWith("exit")&&(m.prototype[A]=function(){x.pop()});var w=new m;if(n.tree.ParseTreeWalker.DEFAULT.walk(w,h),r.length>0){let A=[];for(let T=0,O=r.length;T{const Se=Function.prototype.call.bind(Array.prototype.slice);Number.isInteger=Number.isInteger||function(X){return"number"==typeof X&&isFinite(X)&&Math.floor(X)===X},String.prototype.startsWith||Object.defineProperty(String.prototype,"startsWith",{value:function(X,g){return this.indexOf(X,g=g||0)===g}}),String.prototype.endsWith||Object.defineProperty(String.prototype,"endsWith",{value:function(X,g){var n=this.toString();(void 0===g||g>n.length)&&(g=n.length);var p=n.indexOf(X,g-=X.length);return-1!==p&&p===g}}),String.prototype.includes||Object.defineProperty(String.prototype,"includes",{value:function(){return-1!==this.indexOf.apply(this,arguments)}}),Object.assign||Object.defineProperty(Object,"assign",{value:function(X){if(null==X)throw new TypeError("Cannot convert undefined or null to object");return Se(arguments,1).reduce(function(g,n){return Object.keys(Object(n)).forEach(function(p){g[p]=n[p]}),g},Object(X))}}),typeof btoa>"u"&&(global.btoa=function(X){return new Buffer.from(X,"binary").toString("base64")}),typeof atob>"u"&&(global.atob=function(X){return new Buffer.from(X,"base64").toString("binary")})},4702:(Se,X,g)=>{const n=g(5827),p=g(6777),C={},b={};C.indexOf=function(a,c){const s=p.singleton(a,"String");return n.isEmpty(c)||n.isEmpty(s)?[]:s.indexOf(c)},C.substring=function(a,c,s){const l=p.singleton(a,"String");return n.isEmpty(l)||n.isEmpty(c)||c<0||c>=l.length?[]:void 0===s||n.isEmpty(s)?l.substring(c):l.substring(c,c+s)},C.startsWith=function(a,c){const s=p.singleton(a,"String");return n.isEmpty(c)||n.isEmpty(s)?[]:s.startsWith(c)},C.endsWith=function(a,c){const s=p.singleton(a,"String");return n.isEmpty(c)||n.isEmpty(s)?[]:s.endsWith(c)},C.containsFn=function(a,c){const s=p.singleton(a,"String");return n.isEmpty(c)||n.isEmpty(s)?[]:s.includes(c)},C.upper=function(a){const c=p.singleton(a,"String");return n.isEmpty(c)?[]:c.toUpperCase()},C.lower=function(a){const c=p.singleton(a,"String");return n.isEmpty(c)?[]:c.toLowerCase()},C.joinFn=function(a,c){return void 0===c&&(c=""),a.map(l=>{const d=n.valData(l);if("string"==typeof d)return d;throw new Error("Join requires a collection of strings.")}).join(c)},C.splitFn=function(a,c){const s=p.singleton(a,"String");return n.isEmpty(s)?[]:s.split(c)},C.trimFn=function(a){const c=p.singleton(a,"String");return n.isEmpty(c)?[]:c.trim()},C.encodeFn=function(a,c){const s=p.singleton(a,"String");return n.isEmpty(s)?[]:"urlbase64"===c||"base64url"===c?btoa(s).replace(/\+/g,"-").replace(/\//g,"_"):"base64"===c?btoa(s):"hex"===c?Array.from(s).map(l=>l.charCodeAt(0)<128?l.charCodeAt(0).toString(16):encodeURIComponent(l).replace(/%/g,"")).join(""):[]},C.decodeFn=function(a,c){const s=p.singleton(a,"String");if(n.isEmpty(s))return[];if("urlbase64"===c||"base64url"===c)return atob(s.replace(/-/g,"+").replace(/_/g,"/"));if("base64"===c)return atob(s);if("hex"===c){if(s.length%2!=0)throw new Error("Decode 'hex' requires an even number of characters.");return decodeURIComponent("%"+s.match(/.{2}/g).join("%"))}return[]},C.matches=!1===new RegExp("").dotAll?function(a,c){const s=p.singleton(a,"String");return n.isEmpty(c)||n.isEmpty(s)?[]:new RegExp(c,"s").test(s)}:function(a,c){const s=p.singleton(a,"String");return n.isEmpty(c)||n.isEmpty(s)?[]:new RegExp(function o(a){return b[a]||(b[a]=a.replace(/\./g,(c,s,l)=>{const r=l.substr(0,s).replace(/\\\\/g,"").replace(/\\[\][]/g,""),u="\\"===r[r.length-1],h=r.lastIndexOf("["),m=r.lastIndexOf("]");return u||h>m?".":"[^]"})),b[a]}(c)).test(s)},C.replace=function(a,c,s){const l=p.singleton(a,"String");if(n.isEmpty(c)||n.isEmpty(s)||n.isEmpty(l))return[];const d=new RegExp(n.escapeStringForRegExp(c),"g");return l.replace(d,s)},C.replaceMatches=function(a,c,s){const l=p.singleton(a,"String");if(n.isEmpty(c)||n.isEmpty(s)||n.isEmpty(l))return[];const d=new RegExp(c,"g");return l.replace(d,s)},C.length=function(a){const c=p.singleton(a,"String");return n.isEmpty(c)?[]:c.length},C.toChars=function(a){const c=p.singleton(a,"String");return n.isEmpty(c)?[]:c.split("")},Se.exports=C},4217:(Se,X,g)=>{var n=g(8416).default;const p=g(3745),C=g(2207).ng.getInstance(),b=g(4192);let v="[0-9][0-9](\\:[0-9][0-9](\\:[0-9][0-9](\\.[0-9]+)?)?)?(Z|(\\+|-)[0-9][0-9]\\:[0-9][0-9])?",a=new RegExp("^T?"+v+"$"),c=new RegExp("^[0-9][0-9][0-9][0-9](-[0-9][0-9](-[0-9][0-9](T"+v+")?)?)?Z?$"),s=new RegExp("^[0-9][0-9][0-9][0-9](-[0-9][0-9](-[0-9][0-9])?)?$");class l{equals(){return!1}equivalentTo(){return!1}toString(){return this.asStr?this.asStr:super.toString()}toJSON(){return this.toString()}compare(){throw"Not implemented"}}class d extends l{constructor(E,D){super(),this.asStr=E+" "+D,this.value=E,this.unit=D}equals(E){if(!(E instanceof this.constructor))return!1;if(this.unit===E.unit)return b.isEqual(this.value,E.value);const D=this._compareYearsAndMonths(E);if(D)return D.isEqual;const R=d.toUcumQuantity(this.value,this.unit),j=d.toUcumQuantity(E.value,E.unit),N=C.convertUnitTo(j.unit,j.value,R.unit);return"succeeded"===N.status&&b.isEqual(R.value,N.toVal)}equivalentTo(E){if(!(E instanceof this.constructor))return!1;if(this.unit===E.unit)return b.isEquivalent(this.value,E.value);const D=d.getEquivalentUcumUnitCode(this.unit),R=d.getEquivalentUcumUnitCode(E.unit),j=C.convertUnitTo(R,E.value,D);return"succeeded"===j.status&&b.isEquivalent(this.value,j.toVal)}_compareYearsAndMonths(E){const D=d._yearMonthConversionFactor[this.unit],R=d._yearMonthConversionFactor[E.unit];return D&&R?{isEqual:b.isEqual(this.value*D,E.value*R)}:null}}const r=/^'|'$/g;d.getEquivalentUcumUnitCode=function(O){return d.mapTimeUnitsToUCUMCode[O]||O.replace(r,"")},d.toUcumQuantity=function(O,E){const D=d._calendarDuration2Seconds[E];return D?{value:D*O,unit:"s"}:{value:O,unit:E.replace(r,"")}},d.convUnitTo=function(O,E,D){const R=d._yearMonthConversionFactor[O],j=d._yearMonthConversionFactor[D];if(R&&j)return new d(R*E/j,D);const N=d._calendarDuration2Seconds[O],S=d._calendarDuration2Seconds[D];if(S){if(N)return new d(N*E/S,D);{const k=C.convertUnitTo(O.replace(/^'|'$/g,""),E,"s");if("succeeded"===k.status)return new d(k.toVal/S,D)}}else{const k=N?C.convertUnitTo("s",N*E,D.replace(/^'|'$/g,"")):C.convertUnitTo(O.replace(/^'|'$/g,""),E,D.replace(/^'|'$/g,""));if("succeeded"===k.status)return new d(k.toVal,D)}return null},d._calendarDuration2Seconds={years:31536e3,months:2592e3,weeks:604800,days:86400,hours:3600,minutes:60,seconds:1,milliseconds:.001,year:31536e3,month:2592e3,week:604800,day:86400,hour:3600,minute:60,second:1,millisecond:.001},d._yearMonthConversionFactor={years:12,months:1,year:12,month:1},d.arithmeticDurationUnits={years:"year",months:"month",weeks:"week",days:"day",hours:"hour",minutes:"minute",seconds:"second",milliseconds:"millisecond",year:"year",month:"month",week:"week",day:"day",hour:"hour",minute:"minute",second:"second",millisecond:"millisecond","'wk'":"week","'d'":"day","'h'":"hour","'min'":"minute","'s'":"second","'ms'":"millisecond"},d.mapUCUMCodeToTimeUnits={a:"year",mo:"month",wk:"week",d:"day",h:"hour",min:"minute",s:"second",ms:"millisecond"},d.mapTimeUnitsToUCUMCode=Object.keys(d.mapUCUMCodeToTimeUnits).reduce(function(O,E){return O[d.mapUCUMCodeToTimeUnits[E]]=E,O[d.mapUCUMCodeToTimeUnits[E]+"s"]=E,O},{});class u extends l{constructor(E){super(),this.asStr=E}plus(E){let R=d.arithmeticDurationUnits[E.unit];if(!R)throw new Error("For date/time arithmetic, the unit of the quantity must be one of the following time-based units: "+Object.keys(d.arithmeticDurationUnits));const j=this.constructor,N=j._timeUnitToDatePrecision[R];if(void 0===N)throw new Error("Unsupported unit for +. The unit should be one of "+Object.keys(j._timeUnitToDatePrecision).join(", ")+".");let S=E.value;const k=j===m;if((k?N<2:N<5)&&(S=Math.trunc(S)),this._getPrecision()2?new h(S)._getTimeParts():this._getTimeParts(),Y=j>2?new h(k)._getTimeParts():E._getTimeParts(),se=0;se<=N&&!1!==D;++se)D=F[se]==Y[se];D&&(D=void 0)}}else D=!1;return D}equivalentTo(E){var D=E instanceof this.constructor;return D&&(D=this._getPrecision()==E._getPrecision())&&(D=this._getDateObj().getTime()==E._getDateObj().getTime()),D}compare(E){var D=this._getPrecision(),R=E._getPrecision(),j=D<=R?this._getDateObj().getTime():this._dateAtPrecision(R).getTime(),N=R<=D?E._getDateObj().getTime():E._dateAtPrecision(D).getTime();return D!==R&&j===N?null:j-N}_getPrecision(){return void 0===this.precision&&this._getMatchData(),this.precision}_getMatchData(E,D){if(void 0===this.timeMatchData&&(this.timeMatchData=this.asStr.match(E),this.timeMatchData))for(let R=D;R>=0&&void 0===this.precision;--R)this.timeMatchData[R]&&(this.precision=R);return this.timeMatchData}_getTimeParts(E){var D=[];D=[E[0]];var R=E[4];if(R){let k=D[0];D[0]=k.slice(0,k.length-R.length)}var j=E[1];if(j){let k=D[0];D[0]=k.slice(0,k.length-j.length),D[1]=j;var N=E[2];if(N){D[1]=j.slice(0,j.length-N.length),D[2]=N;var S=E[3];S&&(D[2]=N.slice(0,N.length-S.length),D[3]=S)}}return D}_getDateObj(){if(!this.dateObj){var E=this._getPrecision();this.dateObj=this._dateAtPrecision(E)}return this.dateObj}_createDate(E,D,R,j,N,S,k,F){var Y=new Date(E,D,R,j,N,S,k);if(F){var se=Y.getTimezoneOffset(),ne=0;if("Z"!=F){var me=F.split(":"),$=parseInt(me[0]);ne=parseInt(me[1]),$<0&&(ne=-ne),ne+=60*$}Y=p(Y,-se-ne)}return Y}}u.timeUnitToAddFn={year:g(3763),month:g(1277),week:g(338),day:g(2860),hour:g(6888),minute:g(3745),second:g(3857),millisecond:g(3895)};let h=(()=>{class O extends u{constructor(D){super(D)}compare(D){if(!(D instanceof O))throw"Invalid comparison of a DateTime with something else";return super.compare(D)}_getMatchData(){return super._getMatchData(c,5)}_getTimeParts(){if(!this.timeParts){let R=this._getMatchData(),j=R[0];this.timeParts=[j];var D=R[1];if(D){this.timeParts[0]=j.slice(0,j.length-D.length),this.timeParts[1]=D;let N=R[2];if(N){this.timeParts[1]=D.slice(0,D.length-N.length),this.timeParts[2]=N;let S=R[3];S&&(this.timeParts[2]=N.slice(0,N.length-S.length),"T"===S[0]&&(R[3]=S.slice(1)),this.timeParts=this.timeParts.concat(super._getTimeParts(R.slice(3))))}}}return this.timeParts}_dateAtPrecision(D){var R=this._getTimeParts(),j=this._getMatchData()[7],N=this._getPrecision(),S=parseInt(R[0]),k=N>0?parseInt(R[1].slice(1))-1:0,F=N>1?parseInt(R[2].slice(1)):1,Y=N>2?parseInt(R[3]):0,se=N>3?parseInt(R[4].slice(1)):0,ne=N>4?parseInt(R[5].slice(1)):0,me=R.length>6?parseInt(R[6].slice(1)):0,$=this._createDate(S,k,F,Y,se,ne,me,j);return D0?$.getMonth():0,F=D>1?$.getDate():1,Y=D>2?$.getHours():0,se=D>3?$.getMinutes():0,$=new Date(S,k,F,Y,se)),$}}return O.checkString=function(E){let D=new O(E);return D._getMatchData()||(D=null),D},O._timeUnitToDatePrecision={year:0,month:1,week:2,day:2,hour:3,minute:4,second:5,millisecond:6},O._datePrecisionToTimeUnit=["year","month","day","hour","minute","second","millisecond"],O})(),m=(()=>{class O extends u{constructor(D){"T"==D[0]&&(D=D.slice(1)),super(D)}compare(D){if(!(D instanceof O))throw"Invalid comparison of a time with something else";return super.compare(D)}_dateAtPrecision(D){var R=this._getTimeParts(),j=this._getMatchData()[4],N=this._getPrecision(),S=2010,Y=parseInt(R[0]),se=N>0?parseInt(R[1].slice(1)):0,ne=N>1?parseInt(R[2].slice(1)):0,me=R.length>3?parseInt(R[3].slice(1)):0,$=this._createDate(S,0,1,Y,se,ne,me,j);return j&&($.setYear(S),$.setMonth(0),$.setDate(1)),D0?$.getMinutes():0,$=new Date(S,0,1,Y,se)),$}_getMatchData(){return super._getMatchData(a,2)}_getTimeParts(){return this.timeParts||(this.timeParts=super._getTimeParts(this._getMatchData())),this.timeParts}}return O.checkString=function(E){let D=new O(E);return D._getMatchData()||(D=null),D},O._timeUnitToDatePrecision={hour:0,minute:1,second:2,millisecond:3},O._datePrecisionToTimeUnit=["hour","minute","second","millisecond"],O})();function _(O,E){var D=O;return 3===E&&O<100&&(D="0"+O),O<10&&(D="0"+D),D}h.isoDateTime=function(O,E){void 0===E&&(E=5);var D=""+O.getFullYear();if(E>0&&(D+="-"+_(O.getMonth()+1),E>1&&(D+="-"+_(O.getDate()),E>2&&(D+="T"+h.isoTime(O,E-3)))),E>2){var R=O.getTimezoneOffset(),j=R<0?"+":"-",N=(R=Math.abs(R))%60;D+=j+_((R-N)/60)+":"+_(N)}return D},h.isoTime=function(O,E){void 0===E&&(E=2);let D=""+_(O.getHours());return E>0&&(D+=":"+_(O.getMinutes()),E>1&&(D+=":"+_(O.getSeconds()),O.getMilliseconds()&&(D+="."+_(O.getMilliseconds(),3)))),D};let M=(()=>{class O extends h{constructor(D){super(D)}_getMatchData(){return u.prototype._getMatchData.apply(this,[s,2])}}return O.checkString=function(E){let D=new O(E);return D._getMatchData()||(D=null),D},O.isoDate=function(E,D){return(void 0===D||D>2)&&(D=2),h.isoDateTime(E,D)},O})(),x=(()=>{class O{constructor(D,R,j){D?.resourceType&&(R=D.resourceType),this.path=R,this.data=D,this._data=j||{}}getTypeInfo(){const D=w.FHIR;return/^System\.(.*)$/.test(this.path)?new w({namespace:w.System,name:RegExp.$1}):-1===this.path.indexOf(".")?new w({namespace:D,name:this.path}):w.model?new w({namespace:D,name:"BackboneElement"}):w.createByValueInNamespace({namespace:D,value:this.data})}toJSON(){return JSON.stringify(this.data)}convertData(){var D=this.data;if(w.isType(this.path,"Quantity")){if("http://unitsofmeasure.org"===D?.system&&"number"==typeof D.value&&"string"==typeof D.code){if(void 0!==D.comparator)throw new Error("Cannot convert a FHIR.Quantity that has a comparator");D=new d(D.value,d.mapUCUMCodeToTimeUnits[D.code]||"'"+D.code+"'")}}else"date"===this.path?D=M.checkString(D)||D:"dateTime"===this.path?D=h.checkString(D)||D:"time"===this.path&&(D=m.checkString(D)||D);return D}}return O.makeResNode=function(E,D,R){return E instanceof O?E:new O(E,D,R)},O})(),w=(()=>{class O{constructor({name:D,namespace:R}){this.name=D,this.namespace=R}is(D){return D instanceof O&&(!this.namespace||!D.namespace||this.namespace===D.namespace)&&(!O.model||this.namespace&&this.namespace!==O.FHIR?this.name===D.name:O.isType(this.name,D.name))}}return n(O,"model",null),O.isType=function(E,D){do{if(E===D)return!0}while(E=O.model?.type2Parent[E]);return!1},O.System="System",O.FHIR="FHIR",O.createByValueInNamespace=function({namespace:E,value:D}){let R=typeof D;return Number.isInteger(D)?R="integer":"number"===R?R="decimal":D instanceof M?R="date":D instanceof h?R="dateTime":D instanceof m?R="time":D instanceof d&&(R="Quantity"),E===O.System&&(R=R.replace(/^\w/,j=>j.toUpperCase())),new O({namespace:E,name:R})},O.fromValue=function(E){return E instanceof x?E.getTypeInfo():O.createByValueInNamespace({namespace:O.System,value:E})},O})();Se.exports={FP_Type:l,FP_TimeBase:u,FP_Date:M,FP_DateTime:h,FP_Time:m,FP_Quantity:d,timeRE:a,dateTimeRE:c,ResourceNode:x,TypeInfo:w,typeFn:function L(O){return O.map(E=>w.fromValue(E))},isFn:function A(O,E){if(0===O.length)return[];if(O.length>1)throw new Error("Expected singleton on left side of 'is', got "+JSON.stringify(O));return w.fromValue(O[0]).is(E)},asFn:function T(O,E){if(0===O.length)return[];if(O.length>1)throw new Error("Expected singleton on left side of 'as', got "+JSON.stringify(O));return w.fromValue(O[0]).is(E)?O:[]}}},5827:(Se,X,g)=>{const n={},p=g(4217);let{ResourceNode:C}=p;n.raiseError=function(b,o){throw(o=o?o+": ":"")+b},n.assertAtMostOne=function(b,o){b.length>1&&n.raiseError("Was expecting no more than one element but got "+JSON.stringify(b),o)},n.assertType=function(b,o,v){let a=this.valData(b);if(o.indexOf(typeof a)<0){let c=o.length>1?"one of "+o.join(", "):o[0];n.raiseError("Found type '"+typeof b+"' but was expecting "+c,v)}return a},n.isEmpty=function(b){return Array.isArray(b)&&0==b.length},n.isSome=function(b){return null!=b&&!n.isEmpty(b)},n.isTrue=function(b){return null!=b&&(!0===b||1==b.length&&!0===b[0])},n.isFalse=function(b){return null!=b&&(!1===b||1==b.length&&!1===b[0])},n.isCapitalized=function(b){return b&&b[0]===b[0].toUpperCase()},n.flatten=function(b){return b.reduce(function(o,v){return Array.isArray(v)?o=o.concat(v):o.push(v),o},[])},n.arraify=function(b){return Array.isArray(b)?b:n.isSome(b)?[b]:[]},n.valData=function(b){return b instanceof C?b.data:b},n.valDataConverted=function(b){return b instanceof C&&(b=b.convertData()),b},n.escapeStringForRegExp=function(b){return b.replace(/[-[\]{}()*+?.,\\/^$|#\s]/g,"\\$&")},Se.exports=n},220:Se=>{"use strict";Se.exports=function(X,g){for(var n={},p=Object.keys(X),C=Array.isArray(g),b=0;b{!function(Se,X){"use strict";var g="hljs-ln",n="hljs-ln-line",p="hljs-ln-code",C="hljs-ln-numbers",b="hljs-ln-n",o="data-line-number",v=/\r\n|\r|\n/g;function r(S){try{var k=X.querySelectorAll("code.hljs,code.nohighlight");for(var F in k)k.hasOwnProperty(F)&&(u(k[F])||h(k[F],S))}catch(Y){Se.console.error("LineNumbers error: ",Y)}}function u(S){return S.classList.contains("nohljsln")}function h(S,k){"object"==typeof S&&function D(S){Se.setTimeout(S,0)}(function(){S.innerHTML=_(S,k)})}function _(S,k){var F=function x(S,k){return{singleLine:w(k=k||{}),startFrom:L(S,k)}}(S,k);return A(S),function M(S,k){var F=O(S);if(""===F[F.length-1].trim()&&F.pop(),F.length>1||k.singleLine){for(var Y="",se=0,ne=F.length;se
{6}',[n,C,b,o,p,se+k.startFrom,F[se].length>0?F[se]:" "]);return R('{1}
',[g,Y])}return S}(S.innerHTML,F)}function w(S){return!!S.singleLine&&S.singleLine}function L(S,k){var Y=1;isFinite(k.startFrom)&&(Y=k.startFrom);var se=function j(S,k){return S.hasAttribute(k)?S.getAttribute(k):null}(S,"data-ln-start-from");return null!==se&&(Y=function N(S,k){if(!S)return k;var F=Number(S);return isFinite(F)?F:k}(se,1)),Y}function A(S){var k=S.childNodes;for(var F in k)if(k.hasOwnProperty(F)){var Y=k[F];E(Y.textContent)>0&&(Y.childNodes.length>0?A(Y):T(Y.parentNode))}}function T(S){var k=S.className;if(/hljs-/.test(k)){for(var F=O(S.innerHTML),Y=0,se="";Y{1}\n',[k,F[Y].length>0?F[Y]:" "]);S.innerHTML=se.trim()}}function O(S){return 0===S.length?[]:S.split(v)}function E(S){return(S.trim().match(v)||[]).length}function R(S,k){return S.replace(/\{(\d+)\}/g,function(F,Y){return void 0!==k[Y]?k[Y]:F})}Se.hljs?(Se.hljs.initLineNumbersOnLoad=function d(S){"interactive"===X.readyState||"complete"===X.readyState?r(S):Se.addEventListener("DOMContentLoaded",function(){r(S)})},Se.hljs.lineNumbersBlock=h,Se.hljs.lineNumbersValue=function m(S,k){if("string"==typeof S){var F=document.createElement("code");return F.innerHTML=S,_(F,k)}},function l(){var S=X.createElement("style");S.type="text/css",S.innerHTML=R(".{0}{border-collapse:collapse}.{0} td{padding:0}.{1}:before{content:attr({2})}",[g,b,o]),X.getElementsByTagName("head")[0].appendChild(S)}()):Se.console.error("highlight.js not detected!"),document.addEventListener("copy",function(S){var F,k=window.getSelection();(function a(S){for(var k=S;k;){if(k.className&&-1!==k.className.indexOf("hljs-ln-code"))return!0;k=k.parentNode}return!1})(k.anchorNode)&&(F=-1!==window.navigator.userAgent.indexOf("Edge")?function s(S){for(var k=S.toString(),F=S.anchorNode;"TD"!==F.nodeName;)F=F.parentNode;for(var Y=S.focusNode;"TD"!==Y.nodeName;)Y=Y.parentNode;var se=parseInt(F.dataset.lineNumber),ne=parseInt(Y.dataset.lineNumber);if(se!=ne){var me=F.textContent,$=Y.textContent;if(se>ne){var q=se;se=ne,ne=q,q=me,me=$,$=q}for(;0!==k.indexOf(me);)me=me.slice(1);for(;-1===k.lastIndexOf($);)$=$.slice(0,-1);for(var Q=me,ue=function c(S){for(var k=S;"TABLE"!==k.nodeName;)k=k.parentNode;return k}(F),Me=se+1;Me{"use strict";Se.exports=Number.isFinite||function(X){return!("number"!=typeof X||X!=X||X===1/0||X===-1/0)}},4864:(Se,X,g)=>{var n=g(9136);Se.exports=Number.isInteger||function(p){return"number"==typeof p&&n(p)&&Math.floor(p)===p}},1328:function(Se,X){var g,p;void 0!==(p="function"==typeof(g=function(){"use strict";function C(l){function d(_){for(var M=0,x=r.length;M127){if(a>191&&a<224){if(t>=e.length)throw"UTF-8 decode: incomplete 2-byte sequence";a=(31&a)<<6|63&e[t]}else if(a>223&&a<240){if(t+1>=e.length)throw"UTF-8 decode: incomplete 3-byte sequence";a=(15&a)<<12|(63&e[t])<<6|63&e[++t]}else{if(!(a>239&&a<248))throw"UTF-8 decode: unknown multibyte start 0x"+a.toString(16)+" at index "+(t-1);if(t+2>=e.length)throw"UTF-8 decode: incomplete 4-byte sequence";a=(7&a)<<18|(63&e[t])<<12|(63&e[++t])<<6|63&e[++t]}++t}if(a<=65535)r+=String.fromCharCode(a);else{if(!(a<=1114111))throw"UTF-8 decode: code point 0x"+a.toString(16)+" exceeds UTF-16 reach";a-=65536,r+=String.fromCharCode(a>>10|55296),r+=String.fromCharCode(1023&a|56320)}}return r}function PaxHeader(e){this._fields=e}function TarFile(){}function UntarStream(e){this._bufferView=new DataView(e),this._position=0}function UntarFileStream(e){this._stream=new UntarStream(e),this._globalPaxHeader=null}if(UntarWorker.prototype={onmessage:function(e){try{if("extract"!==e.data.type)throw new Error("Unknown message type: "+e.data.type);this.untarBuffer(e.data.buffer)}catch(r){this.postError(r)}},postError:function(e){this.postMessage({type:"error",data:{message:e.message}})},postLog:function(e,r){this.postMessage({type:"log",data:{level:e,msg:r}})},untarBuffer:function(e){try{for(var r=new UntarFileStream(e);r.hasNext();){var t=r.next();this.postMessage({type:"extract",data:t},[t.buffer])}this.postMessage({type:"complete"})}catch(a){this.postError(a)}},postMessage:function(e,r){self.postMessage(e,r)}},"undefined"!=typeof self){var worker=new UntarWorker;self.onmessage=function(e){worker.onmessage(e)}}PaxHeader.parse=function(e){for(var r=new Uint8Array(e),t=[];r.length>0;){var a=parseInt(decodeUTF8(r.subarray(0,r.indexOf(32)))),n=decodeUTF8(r.subarray(0,a)),i=n.match(/^\\d+ ([^=]+)=(.*)\\n$/);if(null===i)throw new Error("Invalid PAX header data format.");var s=i[1],o=i[2];0===o.length?o=null:null!==o.match(/^\\d+$/)&&(o=parseInt(o));var f={name:s,value:o};t.push(f),r=r.subarray(a)}return new PaxHeader(t)},PaxHeader.prototype={applyHeader:function(e){this._fields.forEach(function(r){var t=r.name,a=r.value;"path"===t?(t="name",void 0!==e.prefix&&delete e.prefix):"linkpath"===t&&(t="linkname"),null===a?delete e[t]:e[t]=a})}},UntarStream.prototype={readString:function(e){for(var r=1,t=e*r,a=[],n=0;n-1&&(r.version=e.readString(2),r.uname=e.readString(32),r.gname=e.readString(32),r.devmajor=parseInt(e.readString(8)),r.devminor=parseInt(e.readString(8)),r.namePrefix=e.readString(155),r.namePrefix.length>0&&(r.name=r.namePrefix+"/"+r.name)),e.position(i),r.type){case"0":case"":r.buffer=e.readBuffer(r.size);break;case"1":break;case"2":break;case"3":break;case"4":break;case"5":break;case"6":break;case"7":break;case"g":t=!0,this._globalPaxHeader=PaxHeader.parse(e.readBuffer(r.size));break;case"x":t=!0,a=PaxHeader.parse(e.readBuffer(r.size))}void 0===r.buffer&&(r.buffer=new ArrayBuffer(0));var s=i+r.size;return r.size%512!==0&&(s+=512-r.size%512),e.position(s),t&&(r=this._readNextFile()),null!==this._globalPaxHeader&&this._globalPaxHeader.applyHeader(r),null!==a&&a.applyHeader(r),r}};'])),function b(l){if(!(l instanceof ArrayBuffer))throw new TypeError("arrayBuffer is not an instance of ArrayBuffer.");if(!a.Worker)throw new Error("Worker implementation is not available in this environment.");return new C(function(d,r,u){var h=new Worker(v),m=[];h.onerror=function(_){r(_)},h.onmessage=function(_){switch((_=_.data).type){case"log":console[_.data.level]("Worker: "+_.data.msg);break;case"extract":var M=function o(l){return Object.defineProperties(l,s),l}(_.data);m.push(M),u(M);break;case"complete":h.terminate(),d(m);break;case"error":h.terminate(),r(new Error(_.data.message));break;default:h.terminate(),r(new Error("Unknown message from worker: "+_.type))}},h.postMessage({type:"extract",buffer:l},[l])})}})?g.apply(X,[]):g)&&(Se.exports=p)},3187:(Se,X)=>{function n(p,C){var b=[],o=[];return null==C&&(C=function(v,a){return b[0]===a?"[Circular ~]":"[Circular ~."+o.slice(0,b.indexOf(a)).join(".")+"]"}),function(v,a){if(b.length>0){var c=b.indexOf(this);~c?b.splice(c+1):b.push(this),~c?o.splice(c,1/0,v):o.push(v),~b.indexOf(a)&&(a=C.call(this,v,a))}else b.push(a);return null==p?a:p.call(this,v,a)}}(Se.exports=function g(p,C,b,o){return JSON.stringify(p,n(C,o),b)}).getSerialize=n},7253:Se=>{var X=1e3,g=60*X,n=60*g,p=24*n;function c(s,l,d,r){var u=l>=1.5*d;return Math.round(s/d)+" "+r+(u?"s":"")}Se.exports=function(s,l){l=l||{};var d=typeof s;if("string"===d&&s.length>0)return function o(s){if(!((s=String(s)).length>100)){var l=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(s);if(l){var d=parseFloat(l[1]);switch((l[2]||"ms").toLowerCase()){case"years":case"year":case"yrs":case"yr":case"y":return 315576e5*d;case"weeks":case"week":case"w":return 6048e5*d;case"days":case"day":case"d":return d*p;case"hours":case"hour":case"hrs":case"hr":case"h":return d*n;case"minutes":case"minute":case"mins":case"min":case"m":return d*g;case"seconds":case"second":case"secs":case"sec":case"s":return d*X;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return d;default:return}}}}(s);if("number"===d&&isFinite(s))return l.long?function a(s){var l=Math.abs(s);return l>=p?c(s,l,p,"day"):l>=n?c(s,l,n,"hour"):l>=g?c(s,l,g,"minute"):l>=X?c(s,l,X,"second"):s+" ms"}(s):function v(s){var l=Math.abs(s);return l>=p?Math.round(s/p)+"d":l>=n?Math.round(s/n)+"h":l>=g?Math.round(s/g)+"m":l>=X?Math.round(s/X)+"s":s+"ms"}(s);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(s))}},4783:Se=>{"use strict";const X=typeof self<"u"?self:typeof window<"u"?window:void 0;if(!X)throw new Error("Unable to find global scope. Are you sure this is running in the browser?");if(!X.AbortController)throw new Error('Could not find "AbortController" in the global scope. You need to polyfill it first');Se.exports.AbortController=X.AbortController},133:(Se,X,g)=>{"use strict";const n=g(8385),p=g(4989),C=g(6144),b=g(220),v=Symbol("encodeFragmentIdentifier");function s(x){if("string"!=typeof x||1!==x.length)throw new TypeError("arrayFormatSeparator must be single character string")}function l(x,w){return w.encode?w.strict?n(x):encodeURIComponent(x):x}function d(x,w){return w.decode?p(x):x}function r(x){return Array.isArray(x)?x.sort():"object"==typeof x?r(Object.keys(x)).sort((w,L)=>Number(w)-Number(L)).map(w=>x[w]):x}function u(x){const w=x.indexOf("#");return-1!==w&&(x=x.slice(0,w)),x}function m(x){const w=(x=u(x)).indexOf("?");return-1===w?"":x.slice(w+1)}function _(x,w){return w.parseNumbers&&!Number.isNaN(Number(x))&&"string"==typeof x&&""!==x.trim()?x=Number(x):w.parseBooleans&&null!==x&&("true"===x.toLowerCase()||"false"===x.toLowerCase())&&(x="true"===x.toLowerCase()),x}function M(x,w){s((w=Object.assign({decode:!0,sort:!0,arrayFormat:"none",arrayFormatSeparator:",",parseNumbers:!1,parseBooleans:!1},w)).arrayFormatSeparator);const L=function c(x){let w;switch(x.arrayFormat){case"index":return(L,A,T)=>{w=/\[(\d*)\]$/.exec(L),L=L.replace(/\[\d*\]$/,""),w?(void 0===T[L]&&(T[L]={}),T[L][w[1]]=A):T[L]=A};case"bracket":return(L,A,T)=>{w=/(\[\])$/.exec(L),T[L=L.replace(/\[\]$/,"")]=w?void 0!==T[L]?[].concat(T[L],A):[A]:A};case"colon-list-separator":return(L,A,T)=>{w=/(:list)$/.exec(L),T[L=L.replace(/:list$/,"")]=w?void 0!==T[L]?[].concat(T[L],A):[A]:A};case"comma":case"separator":return(L,A,T)=>{const O="string"==typeof A&&A.includes(x.arrayFormatSeparator),E="string"==typeof A&&!O&&d(A,x).includes(x.arrayFormatSeparator);A=E?d(A,x):A;const D=O||E?A.split(x.arrayFormatSeparator).map(R=>d(R,x)):null===A?A:d(A,x);T[L]=D};case"bracket-separator":return(L,A,T)=>{const O=/(\[\])$/.test(L);if(L=L.replace(/\[\]$/,""),!O)return void(T[L]=A&&d(A,x));const E=null===A?[]:A.split(x.arrayFormatSeparator).map(D=>d(D,x));T[L]=void 0!==T[L]?[].concat(T[L],E):E};default:return(L,A,T)=>{T[L]=void 0!==T[L]?[].concat(T[L],A):A}}}(w),A=Object.create(null);if("string"!=typeof x||!(x=x.trim().replace(/^[?#&]/,"")))return A;for(const T of x.split("&")){if(""===T)continue;let[O,E]=C(w.decode?T.replace(/\+/g," "):T,"=");E=void 0===E?null:["comma","separator","bracket-separator"].includes(w.arrayFormat)?E:d(E,w),L(d(O,w),E,A)}for(const T of Object.keys(A)){const O=A[T];if("object"==typeof O&&null!==O)for(const E of Object.keys(O))O[E]=_(O[E],w);else A[T]=_(O,w)}return!1===w.sort?A:(!0===w.sort?Object.keys(A).sort():Object.keys(A).sort(w.sort)).reduce((T,O)=>{const E=A[O];return T[O]=E&&"object"==typeof E&&!Array.isArray(E)?r(E):E,T},Object.create(null))}X.extract=m,X.parse=M,X.stringify=(x,w)=>{if(!x)return"";s((w=Object.assign({encode:!0,strict:!0,arrayFormat:"none",arrayFormatSeparator:","},w)).arrayFormatSeparator);const L=E=>w.skipNull&&(x=>null==x)(x[E])||w.skipEmptyString&&""===x[E],A=function a(x){switch(x.arrayFormat){case"index":return w=>(L,A)=>{const T=L.length;return void 0===A||x.skipNull&&null===A||x.skipEmptyString&&""===A?L:null===A?[...L,[l(w,x),"[",T,"]"].join("")]:[...L,[l(w,x),"[",l(T,x),"]=",l(A,x)].join("")]};case"bracket":return w=>(L,A)=>void 0===A||x.skipNull&&null===A||x.skipEmptyString&&""===A?L:null===A?[...L,[l(w,x),"[]"].join("")]:[...L,[l(w,x),"[]=",l(A,x)].join("")];case"colon-list-separator":return w=>(L,A)=>void 0===A||x.skipNull&&null===A||x.skipEmptyString&&""===A?L:null===A?[...L,[l(w,x),":list="].join("")]:[...L,[l(w,x),":list=",l(A,x)].join("")];case"comma":case"separator":case"bracket-separator":{const w="bracket-separator"===x.arrayFormat?"[]=":"=";return L=>(A,T)=>void 0===T||x.skipNull&&null===T||x.skipEmptyString&&""===T?A:(T=null===T?"":T,0===A.length?[[l(L,x),w,l(T,x)].join("")]:[[A,l(T,x)].join(x.arrayFormatSeparator)])}default:return w=>(L,A)=>void 0===A||x.skipNull&&null===A||x.skipEmptyString&&""===A?L:null===A?[...L,l(w,x)]:[...L,[l(w,x),"=",l(A,x)].join("")]}}(w),T={};for(const E of Object.keys(x))L(E)||(T[E]=x[E]);const O=Object.keys(T);return!1!==w.sort&&O.sort(w.sort),O.map(E=>{const D=x[E];return void 0===D?"":null===D?l(E,w):Array.isArray(D)?0===D.length&&"bracket-separator"===w.arrayFormat?l(E,w)+"[]":D.reduce(A(E),[]).join("&"):l(E,w)+"="+l(D,w)}).filter(E=>E.length>0).join("&")},X.parseUrl=(x,w)=>{w=Object.assign({decode:!0},w);const[L,A]=C(x,"#");return Object.assign({url:L.split("?")[0]||"",query:M(m(x),w)},w&&w.parseFragmentIdentifier&&A?{fragmentIdentifier:d(A,w)}:{})},X.stringifyUrl=(x,w)=>{w=Object.assign({encode:!0,strict:!0,[v]:!0},w);const L=u(x.url).split("?")[0]||"",A=X.extract(x.url),T=X.parse(A,{sort:!1}),O=Object.assign(T,x.query);let E=X.stringify(O,w);E&&(E=`?${E}`);let D=function h(x){let w="";const L=x.indexOf("#");return-1!==L&&(w=x.slice(L)),w}(x.url);return x.fragmentIdentifier&&(D=`#${w[v]?l(x.fragmentIdentifier,w):x.fragmentIdentifier}`),`${L}${E}${D}`},X.pick=(x,w,L)=>{L=Object.assign({parseFragmentIdentifier:!0,[v]:!1},L);const{url:A,query:T,fragmentIdentifier:O}=X.parseUrl(x,L);return X.stringifyUrl({url:A,query:b(T,w),fragmentIdentifier:O},L)},X.exclude=(x,w,L)=>{const A=Array.isArray(w)?T=>!w.includes(T):(T,O)=>!w(T,O);return X.pick(x,A,L)}},5619:(Se,X,g)=>{"use strict";g.d(X,{X:()=>p});var n=g(8645);class p extends n.x{constructor(b){super(),this._value=b}get value(){return this.getValue()}_subscribe(b){const o=super._subscribe(b);return!o.closed&&b.next(this._value),o}getValue(){const{hasError:b,thrownError:o,_value:v}=this;if(b)throw o;return this._throwIfClosed(),v}next(b){super.next(this._value=b)}}},5592:(Se,X,g)=>{"use strict";g.d(X,{y:()=>c});var n=g(305),p=g(7394),C=g(4850),b=g(8407),o=g(2653),v=g(4674),a=g(1441);let c=(()=>{class r{constructor(h){h&&(this._subscribe=h)}lift(h){const m=new r;return m.source=this,m.operator=h,m}subscribe(h,m,_){const M=function d(r){return r&&r instanceof n.Lv||function l(r){return r&&(0,v.m)(r.next)&&(0,v.m)(r.error)&&(0,v.m)(r.complete)}(r)&&(0,p.Nn)(r)}(h)?h:new n.Hp(h,m,_);return(0,a.x)(()=>{const{operator:x,source:w}=this;M.add(x?x.call(M,w):w?this._subscribe(M):this._trySubscribe(M))}),M}_trySubscribe(h){try{return this._subscribe(h)}catch(m){h.error(m)}}forEach(h,m){return new(m=s(m))((_,M)=>{const x=new n.Hp({next:w=>{try{h(w)}catch(L){M(L),x.unsubscribe()}},error:M,complete:_});this.subscribe(x)})}_subscribe(h){var m;return null===(m=this.source)||void 0===m?void 0:m.subscribe(h)}[C.L](){return this}pipe(...h){return(0,b.U)(h)(this)}toPromise(h){return new(h=s(h))((m,_)=>{let M;this.subscribe(x=>M=x,x=>_(x),()=>m(M))})}}return r.create=u=>new r(u),r})();function s(r){var u;return null!==(u=r??o.config.Promise)&&void 0!==u?u:Promise}},7328:(Se,X,g)=>{"use strict";g.d(X,{t:()=>C});var n=g(8645),p=g(4552);class C extends n.x{constructor(o=1/0,v=1/0,a=p.l){super(),this._bufferSize=o,this._windowTime=v,this._timestampProvider=a,this._buffer=[],this._infiniteTimeWindow=!0,this._infiniteTimeWindow=v===1/0,this._bufferSize=Math.max(1,o),this._windowTime=Math.max(1,v)}next(o){const{isStopped:v,_buffer:a,_infiniteTimeWindow:c,_timestampProvider:s,_windowTime:l}=this;v||(a.push(o),!c&&a.push(s.now()+l)),this._trimBuffer(),super.next(o)}_subscribe(o){this._throwIfClosed(),this._trimBuffer();const v=this._innerSubscribe(o),{_infiniteTimeWindow:a,_buffer:c}=this,s=c.slice();for(let l=0;l{"use strict";g.d(X,{x:()=>a});var n=g(5592),p=g(7394);const b=(0,g(2306).d)(s=>function(){s(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"});var o=g(9039),v=g(1441);let a=(()=>{class s extends n.y{constructor(){super(),this.closed=!1,this.currentObservers=null,this.observers=[],this.isStopped=!1,this.hasError=!1,this.thrownError=null}lift(d){const r=new c(this,this);return r.operator=d,r}_throwIfClosed(){if(this.closed)throw new b}next(d){(0,v.x)(()=>{if(this._throwIfClosed(),!this.isStopped){this.currentObservers||(this.currentObservers=Array.from(this.observers));for(const r of this.currentObservers)r.next(d)}})}error(d){(0,v.x)(()=>{if(this._throwIfClosed(),!this.isStopped){this.hasError=this.isStopped=!0,this.thrownError=d;const{observers:r}=this;for(;r.length;)r.shift().error(d)}})}complete(){(0,v.x)(()=>{if(this._throwIfClosed(),!this.isStopped){this.isStopped=!0;const{observers:d}=this;for(;d.length;)d.shift().complete()}})}unsubscribe(){this.isStopped=this.closed=!0,this.observers=this.currentObservers=null}get observed(){var d;return(null===(d=this.observers)||void 0===d?void 0:d.length)>0}_trySubscribe(d){return this._throwIfClosed(),super._trySubscribe(d)}_subscribe(d){return this._throwIfClosed(),this._checkFinalizedStatuses(d),this._innerSubscribe(d)}_innerSubscribe(d){const{hasError:r,isStopped:u,observers:h}=this;return r||u?p.Lc:(this.currentObservers=null,h.push(d),new p.w0(()=>{this.currentObservers=null,(0,o.P)(h,d)}))}_checkFinalizedStatuses(d){const{hasError:r,thrownError:u,isStopped:h}=this;r?d.error(u):h&&d.complete()}asObservable(){const d=new n.y;return d.source=this,d}}return s.create=(l,d)=>new c(l,d),s})();class c extends a{constructor(l,d){super(),this.destination=l,this.source=d}next(l){var d,r;null===(r=null===(d=this.destination)||void 0===d?void 0:d.next)||void 0===r||r.call(d,l)}error(l){var d,r;null===(r=null===(d=this.destination)||void 0===d?void 0:d.error)||void 0===r||r.call(d,l)}complete(){var l,d;null===(d=null===(l=this.destination)||void 0===l?void 0:l.complete)||void 0===d||d.call(l)}_subscribe(l){var d,r;return null!==(r=null===(d=this.source)||void 0===d?void 0:d.subscribe(l))&&void 0!==r?r:p.Lc}}},305:(Se,X,g)=>{"use strict";g.d(X,{Hp:()=>_,Lv:()=>r});var n=g(4674),p=g(7394),C=g(2653),b=g(3894),o=g(2420);const v=s("C",void 0,void 0);function s(A,T,O){return{kind:A,value:T,error:O}}var l=g(7599),d=g(1441);class r extends p.w0{constructor(T){super(),this.isStopped=!1,T?(this.destination=T,(0,p.Nn)(T)&&T.add(this)):this.destination=L}static create(T,O,E){return new _(T,O,E)}next(T){this.isStopped?w(function c(A){return s("N",A,void 0)}(T),this):this._next(T)}error(T){this.isStopped?w(function a(A){return s("E",void 0,A)}(T),this):(this.isStopped=!0,this._error(T))}complete(){this.isStopped?w(v,this):(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe(),this.destination=null)}_next(T){this.destination.next(T)}_error(T){try{this.destination.error(T)}finally{this.unsubscribe()}}_complete(){try{this.destination.complete()}finally{this.unsubscribe()}}}const u=Function.prototype.bind;function h(A,T){return u.call(A,T)}class m{constructor(T){this.partialObserver=T}next(T){const{partialObserver:O}=this;if(O.next)try{O.next(T)}catch(E){M(E)}}error(T){const{partialObserver:O}=this;if(O.error)try{O.error(T)}catch(E){M(E)}else M(T)}complete(){const{partialObserver:T}=this;if(T.complete)try{T.complete()}catch(O){M(O)}}}class _ extends r{constructor(T,O,E){let D;if(super(),(0,n.m)(T)||!T)D={next:T??void 0,error:O??void 0,complete:E??void 0};else{let R;this&&C.config.useDeprecatedNextContext?(R=Object.create(T),R.unsubscribe=()=>this.unsubscribe(),D={next:T.next&&h(T.next,R),error:T.error&&h(T.error,R),complete:T.complete&&h(T.complete,R)}):D=T}this.destination=new m(D)}}function M(A){C.config.useDeprecatedSynchronousErrorHandling?(0,d.O)(A):(0,b.h)(A)}function w(A,T){const{onStoppedNotification:O}=C.config;O&&l.z.setTimeout(()=>O(A,T))}const L={closed:!0,next:o.Z,error:function x(A){throw A},complete:o.Z}},7394:(Se,X,g)=>{"use strict";g.d(X,{Lc:()=>v,w0:()=>o,Nn:()=>a});var n=g(4674);const C=(0,g(2306).d)(s=>function(d){s(this),this.message=d?`${d.length} errors occurred during unsubscription:\n${d.map((r,u)=>`${u+1}) ${r.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=d});var b=g(9039);class o{constructor(l){this.initialTeardown=l,this.closed=!1,this._parentage=null,this._finalizers=null}unsubscribe(){let l;if(!this.closed){this.closed=!0;const{_parentage:d}=this;if(d)if(this._parentage=null,Array.isArray(d))for(const h of d)h.remove(this);else d.remove(this);const{initialTeardown:r}=this;if((0,n.m)(r))try{r()}catch(h){l=h instanceof C?h.errors:[h]}const{_finalizers:u}=this;if(u){this._finalizers=null;for(const h of u)try{c(h)}catch(m){l=l??[],m instanceof C?l=[...l,...m.errors]:l.push(m)}}if(l)throw new C(l)}}add(l){var d;if(l&&l!==this)if(this.closed)c(l);else{if(l instanceof o){if(l.closed||l._hasParent(this))return;l._addParent(this)}(this._finalizers=null!==(d=this._finalizers)&&void 0!==d?d:[]).push(l)}}_hasParent(l){const{_parentage:d}=this;return d===l||Array.isArray(d)&&d.includes(l)}_addParent(l){const{_parentage:d}=this;this._parentage=Array.isArray(d)?(d.push(l),d):d?[d,l]:l}_removeParent(l){const{_parentage:d}=this;d===l?this._parentage=null:Array.isArray(d)&&(0,b.P)(d,l)}remove(l){const{_finalizers:d}=this;d&&(0,b.P)(d,l),l instanceof o&&l._removeParent(this)}}o.EMPTY=(()=>{const s=new o;return s.closed=!0,s})();const v=o.EMPTY;function a(s){return s instanceof o||s&&"closed"in s&&(0,n.m)(s.remove)&&(0,n.m)(s.add)&&(0,n.m)(s.unsubscribe)}function c(s){(0,n.m)(s)?s():s.unsubscribe()}},2653:(Se,X,g)=>{"use strict";g.d(X,{config:()=>n});const n={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1}},3168:(Se,X,g)=>{"use strict";g.d(X,{c:()=>v});var n=g(5592),p=g(7394),C=g(6196),b=g(8251),o=g(9360);class v extends n.y{constructor(c,s){super(),this.source=c,this.subjectFactory=s,this._subject=null,this._refCount=0,this._connection=null,(0,o.A)(c)&&(this.lift=c.lift)}_subscribe(c){return this.getSubject().subscribe(c)}getSubject(){const c=this._subject;return(!c||c.isStopped)&&(this._subject=this.subjectFactory()),this._subject}_teardown(){this._refCount=0;const{_connection:c}=this;this._subject=this._connection=null,c?.unsubscribe()}connect(){let c=this._connection;if(!c){c=this._connection=new p.w0;const s=this.getSubject();c.add(this.source.subscribe((0,b.x)(s,void 0,()=>{this._teardown(),s.complete()},l=>{this._teardown(),s.error(l)},()=>this._teardown()))),c.closed&&(this._connection=null,c=p.w0.EMPTY)}return c}refCount(){return(0,C.x)()(this)}}},2572:(Se,X,g)=>{"use strict";g.d(X,{a:()=>l,l:()=>d});var n=g(5592),p=g(7453),C=g(2459),b=g(2737),o=g(7400),v=g(9940),a=g(2714),c=g(8251),s=g(7103);function l(...u){const h=(0,v.yG)(u),m=(0,v.jO)(u),{args:_,keys:M}=(0,p.D)(u);if(0===_.length)return(0,C.D)([],h);const x=new n.y(d(_,h,M?w=>(0,a.n)(M,w):b.y));return m?x.pipe((0,o.Z)(m)):x}function d(u,h,m=b.y){return _=>{r(h,()=>{const{length:M}=u,x=new Array(M);let w=M,L=M;for(let A=0;A{const T=(0,C.D)(u[A],h);let O=!1;T.subscribe((0,c.x)(_,E=>{x[A]=E,O||(O=!0,L--),L||_.next(m(x.slice()))},()=>{--w||_.complete()}))},_)},_)}}function r(u,h,m){u?(0,s.f)(m,u,h):h()}},34:(Se,X,g)=>{"use strict";g.d(X,{z:()=>b});var n=g(1948),p=g(9940),C=g(2459);function b(...o){return(0,n.u)()((0,C.D)(o,(0,p.yG)(o)))}},4911:(Se,X,g)=>{"use strict";g.d(X,{P:()=>C});var n=g(5592),p=g(4829);function C(b){return new n.y(o=>{(0,p.Xf)(b()).subscribe(o)})}},6232:(Se,X,g)=>{"use strict";g.d(X,{E:()=>p});const p=new(g(5592).y)(o=>o.complete())},9315:(Se,X,g)=>{"use strict";g.d(X,{D:()=>c});var n=g(5592),p=g(7453),C=g(4829),b=g(9940),o=g(8251),v=g(7400),a=g(2714);function c(...s){const l=(0,b.jO)(s),{args:d,keys:r}=(0,p.D)(s),u=new n.y(h=>{const{length:m}=d;if(!m)return void h.complete();const _=new Array(m);let M=m,x=m;for(let w=0;w{L||(L=!0,x--),_[w]=A},()=>M--,void 0,()=>{(!M||!L)&&(x||h.next(r?(0,a.n)(r,_):_),h.complete())}))}});return l?u.pipe((0,v.Z)(l)):u}},2459:(Se,X,g)=>{"use strict";g.d(X,{D:()=>T});var n=g(4829),p=g(3093),C=g(5137),v=g(5592),c=g(4971),s=g(4674),l=g(7103);function r(O,E){if(!O)throw new Error("Iterable cannot be null");return new v.y(D=>{(0,l.f)(D,E,()=>{const R=O[Symbol.asyncIterator]();(0,l.f)(D,E,()=>{R.next().then(j=>{j.done?D.complete():D.next(j.value)})},0,!0)})})}var u=g(8382),h=g(4026),m=g(4266),_=g(3664),M=g(5726),x=g(9853),w=g(541);function T(O,E){return E?function A(O,E){if(null!=O){if((0,u.c)(O))return function b(O,E){return(0,n.Xf)(O).pipe((0,C.R)(E),(0,p.Q)(E))}(O,E);if((0,m.z)(O))return function a(O,E){return new v.y(D=>{let R=0;return E.schedule(function(){R===O.length?D.complete():(D.next(O[R++]),D.closed||this.schedule())})})}(O,E);if((0,h.t)(O))return function o(O,E){return(0,n.Xf)(O).pipe((0,C.R)(E),(0,p.Q)(E))}(O,E);if((0,M.D)(O))return r(O,E);if((0,_.T)(O))return function d(O,E){return new v.y(D=>{let R;return(0,l.f)(D,E,()=>{R=O[c.h](),(0,l.f)(D,E,()=>{let j,N;try{({value:j,done:N}=R.next())}catch(S){return void D.error(S)}N?D.complete():D.next(j)},0,!0)}),()=>(0,s.m)(R?.return)&&R.return()})}(O,E);if((0,w.L)(O))return function L(O,E){return r((0,w.Q)(O),E)}(O,E)}throw(0,x.z)(O)}(O,E):(0,n.Xf)(O)}},2438:(Se,X,g)=>{"use strict";g.d(X,{R:()=>l});var n=g(4829),p=g(5592),C=g(9769),b=g(4266),o=g(4674),v=g(7400);const a=["addListener","removeListener"],c=["addEventListener","removeEventListener"],s=["on","off"];function l(m,_,M,x){if((0,o.m)(M)&&(x=M,M=void 0),x)return l(m,_,M).pipe((0,v.Z)(x));const[w,L]=function h(m){return(0,o.m)(m.addEventListener)&&(0,o.m)(m.removeEventListener)}(m)?c.map(A=>T=>m[A](_,T,M)):function r(m){return(0,o.m)(m.addListener)&&(0,o.m)(m.removeListener)}(m)?a.map(d(m,_)):function u(m){return(0,o.m)(m.on)&&(0,o.m)(m.off)}(m)?s.map(d(m,_)):[];if(!w&&(0,b.z)(m))return(0,C.z)(A=>l(A,_,M))((0,n.Xf)(m));if(!w)throw new TypeError("Invalid event target");return new p.y(A=>{const T=(...O)=>A.next(1L(T)})}function d(m,_){return M=>x=>m[M](_,x)}},4829:(Se,X,g)=>{"use strict";g.d(X,{Xf:()=>u});var n=g(655),p=g(4266),C=g(4026),b=g(5592),o=g(8382),v=g(5726),a=g(9853),c=g(3664),s=g(541),l=g(4674),d=g(3894),r=g(4850);function u(A){if(A instanceof b.y)return A;if(null!=A){if((0,o.c)(A))return function h(A){return new b.y(T=>{const O=A[r.L]();if((0,l.m)(O.subscribe))return O.subscribe(T);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}(A);if((0,p.z)(A))return function m(A){return new b.y(T=>{for(let O=0;O{A.then(O=>{T.closed||(T.next(O),T.complete())},O=>T.error(O)).then(null,d.h)})}(A);if((0,v.D)(A))return x(A);if((0,c.T)(A))return function M(A){return new b.y(T=>{for(const O of A)if(T.next(O),T.closed)return;T.complete()})}(A);if((0,s.L)(A))return function w(A){return x((0,s.Q)(A))}(A)}throw(0,a.z)(A)}function x(A){return new b.y(T=>{(function L(A,T){var O,E,D,R;return(0,n.__awaiter)(this,void 0,void 0,function*(){try{for(O=(0,n.__asyncValues)(A);!(E=yield O.next()).done;)if(T.next(E.value),T.closed)return}catch(j){D={error:j}}finally{try{E&&!E.done&&(R=O.return)&&(yield R.call(O))}finally{if(D)throw D.error}}T.complete()})})(A,T).catch(O=>T.error(O))})}},3019:(Se,X,g)=>{"use strict";g.d(X,{T:()=>v});var n=g(7537),p=g(4829),C=g(6232),b=g(9940),o=g(2459);function v(...a){const c=(0,b.yG)(a),s=(0,b._6)(a,1/0),l=a;return l.length?1===l.length?(0,p.Xf)(l[0]):(0,n.J)(s)((0,o.D)(l,c)):C.E}},2096:(Se,X,g)=>{"use strict";g.d(X,{of:()=>C});var n=g(9940),p=g(2459);function C(...b){const o=(0,n.yG)(b);return(0,p.D)(b,o)}},3684:(Se,X,g)=>{"use strict";g.d(X,{R:()=>v,S:()=>o});var n=g(5592),p=g(4829),C=g(7728),b=g(8251);function o(...a){return 1===(a=(0,C.k)(a)).length?(0,p.Xf)(a[0]):new n.y(v(a))}function v(a){return c=>{let s=[];for(let l=0;s&&!c.closed&&l{if(s){for(let r=0;r{"use strict";g.d(X,{_:()=>C});var n=g(5592),p=g(4674);function C(b,o){const v=(0,p.m)(b)?b:()=>b,a=c=>c.error(v());return new n.y(o?c=>o.schedule(a,0,c):a)}},9080:(Se,X,g)=>{"use strict";g.d(X,{H:()=>o});var n=g(5592),p=g(6321),C=g(671),b=g(93);function o(v=0,a,c=p.P){let s=-1;return null!=a&&((0,C.K)(a)?c=a:s=a),new n.y(l=>{let d=(0,b.q)(v)?+v-c.now():v;d<0&&(d=0);let r=0;return c.schedule(function(){l.closed||(l.next(r++),0<=s?this.schedule(void 0,s):l.complete())},d)})}},9278:(Se,X,g)=>{"use strict";g.d(X,{$:()=>a});var n=g(5592),p=g(4829),C=g(7728),b=g(6232),o=g(8251),v=g(9940);function a(...c){const s=(0,v.jO)(c),l=(0,C.k)(c);return l.length?new n.y(d=>{let r=l.map(()=>[]),u=l.map(()=>!1);d.add(()=>{r=u=null});for(let h=0;!d.closed&&h{if(r[h].push(m),r.every(_=>_.length)){const _=r.map(M=>M.shift());d.next(s?s(..._):_),r.some((M,x)=>!M.length&&u[x])&&d.complete()}},()=>{u[h]=!0,!r[h].length&&d.complete()}));return()=>{r=u=null}}):b.E}},8251:(Se,X,g)=>{"use strict";g.d(X,{Q:()=>C,x:()=>p});var n=g(305);function p(b,o,v,a,c){return new C(b,o,v,a,c)}class C extends n.Lv{constructor(o,v,a,c,s,l){super(o),this.onFinalize=s,this.shouldUnsubscribe=l,this._next=v?function(d){try{v(d)}catch(r){o.error(r)}}:super._next,this._error=c?function(d){try{c(d)}catch(r){o.error(r)}finally{this.unsubscribe()}}:super._error,this._complete=a?function(){try{a()}catch(d){o.error(d)}finally{this.unsubscribe()}}:super._complete}unsubscribe(){var o;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){const{closed:v}=this;super.unsubscribe(),!v&&(null===(o=this.onFinalize)||void 0===o||o.call(this))}}}},6301:(Se,X,g)=>{"use strict";g.d(X,{U:()=>b});var n=g(9360),p=g(4829),C=g(8251);function b(o){return(0,n.e)((v,a)=>{let c=!1,s=null,l=null,d=!1;const r=()=>{if(l?.unsubscribe(),l=null,c){c=!1;const h=s;s=null,a.next(h)}d&&a.complete()},u=()=>{l=null,d&&a.complete()};v.subscribe((0,C.x)(a,h=>{c=!0,s=h,l||(0,p.Xf)(o(h)).subscribe(l=(0,C.x)(a,r,u))},()=>{d=!0,(!c||!l||l.closed)&&a.complete()}))})}},8672:(Se,X,g)=>{"use strict";g.d(X,{e:()=>b});var n=g(6321),p=g(6301),C=g(9080);function b(o,v=n.z){return(0,p.U)(()=>(0,C.H)(o,v))}},6306:(Se,X,g)=>{"use strict";g.d(X,{K:()=>b});var n=g(4829),p=g(8251),C=g(9360);function b(o){return(0,C.e)((v,a)=>{let l,c=null,s=!1;c=v.subscribe((0,p.x)(a,void 0,void 0,d=>{l=(0,n.Xf)(o(d,b(o)(v))),c?(c.unsubscribe(),c=null,l.subscribe(a)):s=!0})),s&&(c.unsubscribe(),c=null,l.subscribe(a))})}},1948:(Se,X,g)=>{"use strict";g.d(X,{u:()=>p});var n=g(7537);function p(){return(0,n.J)(1)}},6328:(Se,X,g)=>{"use strict";g.d(X,{b:()=>C});var n=g(9769),p=g(4674);function C(b,o){return(0,p.m)(o)?(0,n.z)(b,o,1):(0,n.z)(b,1)}},3620:(Se,X,g)=>{"use strict";g.d(X,{b:()=>b});var n=g(6321),p=g(9360),C=g(8251);function b(o,v=n.z){return(0,p.e)((a,c)=>{let s=null,l=null,d=null;const r=()=>{if(s){s.unsubscribe(),s=null;const h=l;l=null,c.next(h)}};function u(){const h=d+o,m=v.now();if(m{l=h,d=v.now(),s||(s=v.schedule(u,o),c.add(s))},()=>{r(),c.complete()},void 0,()=>{l=s=null}))})}},3572:(Se,X,g)=>{"use strict";g.d(X,{d:()=>C});var n=g(9360),p=g(8251);function C(b){return(0,n.e)((o,v)=>{let a=!1;o.subscribe((0,p.x)(v,c=>{a=!0,v.next(c)},()=>{a||v.next(b),v.complete()}))})}},7547:(Se,X,g)=>{"use strict";g.d(X,{g:()=>b});var n=g(6321),p=g(4610),C=g(9080);function b(o,v=n.z){const a=(0,C.H)(o,v);return(0,p.j)(()=>a)}},4610:(Se,X,g)=>{"use strict";g.d(X,{j:()=>a});var n=g(34),p=g(8180),C=g(7538),b=g(975),o=g(9769),v=g(4829);function a(c,s){return s?l=>(0,n.z)(s.pipe((0,p.q)(1),(0,C.l)()),l.pipe(a(c))):(0,o.z)((l,d)=>(0,v.Xf)(c(l,d)).pipe((0,p.q)(1),(0,b.h)(l)))}},3997:(Se,X,g)=>{"use strict";g.d(X,{x:()=>b});var n=g(2737),p=g(9360),C=g(8251);function b(v,a=n.y){return v=v??o,(0,p.e)((c,s)=>{let l,d=!0;c.subscribe((0,C.x)(s,r=>{const u=a(r);(d||!v(l,u))&&(d=!1,l=u,s.next(r))}))})}function o(v,a){return v===a}},2181:(Se,X,g)=>{"use strict";g.d(X,{h:()=>C});var n=g(9360),p=g(8251);function C(b,o){return(0,n.e)((v,a)=>{let c=0;v.subscribe((0,p.x)(a,s=>b.call(o,s,c++)&&a.next(s)))})}},4716:(Se,X,g)=>{"use strict";g.d(X,{x:()=>p});var n=g(9360);function p(C){return(0,n.e)((b,o)=>{try{b.subscribe(o)}finally{o.add(C)}})}},1374:(Se,X,g)=>{"use strict";g.d(X,{P:()=>a});var n=g(6973),p=g(2181),C=g(8180),b=g(3572),o=g(3026),v=g(2737);function a(c,s){const l=arguments.length>=2;return d=>d.pipe(c?(0,p.h)((r,u)=>c(r,u,d)):v.y,(0,C.q)(1),l?(0,b.d)(s):(0,o.T)(()=>new n.K))}},7538:(Se,X,g)=>{"use strict";g.d(X,{l:()=>b});var n=g(9360),p=g(8251),C=g(2420);function b(){return(0,n.e)((o,v)=>{o.subscribe((0,p.x)(v,C.Z))})}},2032:(Se,X,g)=>{"use strict";g.d(X,{Z:()=>a});var n=g(6973),p=g(2181),C=g(4418),b=g(3026),o=g(3572),v=g(2737);function a(c,s){const l=arguments.length>=2;return d=>d.pipe(c?(0,p.h)((r,u)=>c(r,u,d)):v.y,(0,C.h)(1),l?(0,o.d)(s):(0,b.T)(()=>new n.K))}},7398:(Se,X,g)=>{"use strict";g.d(X,{U:()=>C});var n=g(9360),p=g(8251);function C(b,o){return(0,n.e)((v,a)=>{let c=0;v.subscribe((0,p.x)(a,s=>{a.next(b.call(o,s,c++))}))})}},975:(Se,X,g)=>{"use strict";g.d(X,{h:()=>p});var n=g(7398);function p(C){return(0,n.U)(()=>C)}},7537:(Se,X,g)=>{"use strict";g.d(X,{J:()=>C});var n=g(9769),p=g(2737);function C(b=1/0){return(0,n.z)(p.y,b)}},564:(Se,X,g)=>{"use strict";g.d(X,{p:()=>b});var n=g(4829),p=g(7103),C=g(8251);function b(o,v,a,c,s,l,d,r){const u=[];let h=0,m=0,_=!1;const M=()=>{_&&!u.length&&!h&&v.complete()},x=L=>h{l&&v.next(L),h++;let A=!1;(0,n.Xf)(a(L,m++)).subscribe((0,C.x)(v,T=>{s?.(T),l?x(T):v.next(T)},()=>{A=!0},void 0,()=>{if(A)try{for(h--;u.length&&hw(T)):w(T)}M()}catch(T){v.error(T)}}))};return o.subscribe((0,C.x)(v,x,()=>{_=!0,M()})),()=>{r?.()}}},9769:(Se,X,g)=>{"use strict";g.d(X,{z:()=>v});var n=g(7398),p=g(4829),C=g(9360),b=g(564),o=g(4674);function v(a,c,s=1/0){return(0,o.m)(c)?v((l,d)=>(0,n.U)((r,u)=>c(l,r,d,u))((0,p.Xf)(a(l,d))),s):("number"==typeof c&&(s=c),(0,C.e)((l,d)=>(0,b.p)(l,d,a,s)))}},3093:(Se,X,g)=>{"use strict";g.d(X,{Q:()=>b});var n=g(7103),p=g(9360),C=g(8251);function b(o,v=0){return(0,p.e)((a,c)=>{a.subscribe((0,C.x)(c,s=>(0,n.f)(c,o,()=>c.next(s),v),()=>(0,n.f)(c,o,()=>c.complete(),v),s=>(0,n.f)(c,o,()=>c.error(s),v)))})}},6196:(Se,X,g)=>{"use strict";g.d(X,{x:()=>C});var n=g(9360),p=g(8251);function C(){return(0,n.e)((b,o)=>{let v=null;b._refCount++;const a=(0,p.x)(o,void 0,void 0,void 0,()=>{if(!b||b._refCount<=0||0<--b._refCount)return void(v=null);const c=b._connection,s=v;v=null,c&&(!s||c===s)&&c.unsubscribe(),o.unsubscribe()});b.subscribe(a),a.closed||(v=b.connect())})}},6424:(Se,X,g)=>{"use strict";g.d(X,{R:()=>C});var n=g(9360),p=g(9732);function C(b,o){return(0,n.e)((0,p.U)(b,o,arguments.length>=2,!0))}},9732:(Se,X,g)=>{"use strict";g.d(X,{U:()=>p});var n=g(8251);function p(C,b,o,v,a){return(c,s)=>{let l=o,d=b,r=0;c.subscribe((0,n.x)(s,u=>{const h=r++;d=l?C(d,u,h):(l=!0,u),v&&s.next(d)},a&&(()=>{l&&s.next(d),s.complete()})))}}},3020:(Se,X,g)=>{"use strict";g.d(X,{B:()=>o});var n=g(4829),p=g(8645),C=g(305),b=g(9360);function o(a={}){const{connector:c=(()=>new p.x),resetOnError:s=!0,resetOnComplete:l=!0,resetOnRefCountZero:d=!0}=a;return r=>{let u,h,m,_=0,M=!1,x=!1;const w=()=>{h?.unsubscribe(),h=void 0},L=()=>{w(),u=m=void 0,M=x=!1},A=()=>{const T=u;L(),T?.unsubscribe()};return(0,b.e)((T,O)=>{_++,!x&&!M&&w();const E=m=m??c();O.add(()=>{_--,0===_&&!x&&!M&&(h=v(A,d))}),E.subscribe(O),!u&&_>0&&(u=new C.Hp({next:D=>E.next(D),error:D=>{x=!0,w(),h=v(L,s,D),E.error(D)},complete:()=>{M=!0,w(),h=v(L,l),E.complete()}}),(0,n.Xf)(T).subscribe(u))})(r)}}function v(a,c,...s){if(!0===c)return void a();if(!1===c)return;const l=new C.Hp({next:()=>{l.unsubscribe(),a()}});return(0,n.Xf)(c(...s)).subscribe(l)}},7081:(Se,X,g)=>{"use strict";g.d(X,{d:()=>C});var n=g(7328),p=g(3020);function C(b,o,v){let a,c=!1;return b&&"object"==typeof b?({bufferSize:a=1/0,windowTime:o=1/0,refCount:c=!1,scheduler:v}=b):a=b??1/0,(0,p.B)({connector:()=>new n.t(a,o,v),resetOnError:!0,resetOnComplete:!1,resetOnRefCountZero:c})}},836:(Se,X,g)=>{"use strict";g.d(X,{T:()=>p});var n=g(2181);function p(C){return(0,n.h)((b,o)=>C<=o)}},7921:(Se,X,g)=>{"use strict";g.d(X,{O:()=>b});var n=g(34),p=g(9940),C=g(9360);function b(...o){const v=(0,p.yG)(o);return(0,C.e)((a,c)=>{(v?(0,n.z)(o,a,v):(0,n.z)(o,a)).subscribe(c)})}},5137:(Se,X,g)=>{"use strict";g.d(X,{R:()=>p});var n=g(9360);function p(C,b=0){return(0,n.e)((o,v)=>{v.add(C.schedule(()=>o.subscribe(v),b))})}},4664:(Se,X,g)=>{"use strict";g.d(X,{w:()=>b});var n=g(4829),p=g(9360),C=g(8251);function b(o,v){return(0,p.e)((a,c)=>{let s=null,l=0,d=!1;const r=()=>d&&!s&&c.complete();a.subscribe((0,C.x)(c,u=>{s?.unsubscribe();let h=0;const m=l++;(0,n.Xf)(o(u,m)).subscribe(s=(0,C.x)(c,_=>c.next(v?v(u,_,m,h++):_),()=>{s=null,r()}))},()=>{d=!0,r()}))})}},8180:(Se,X,g)=>{"use strict";g.d(X,{q:()=>b});var n=g(6232),p=g(9360),C=g(8251);function b(o){return o<=0?()=>n.E:(0,p.e)((v,a)=>{let c=0;v.subscribe((0,C.x)(a,s=>{++c<=o&&(a.next(s),o<=c&&a.complete())}))})}},4418:(Se,X,g)=>{"use strict";g.d(X,{h:()=>b});var n=g(6232),p=g(9360),C=g(8251);function b(o){return o<=0?()=>n.E:(0,p.e)((v,a)=>{let c=[];v.subscribe((0,C.x)(a,s=>{c.push(s),o{for(const s of c)a.next(s);a.complete()},void 0,()=>{c=null}))})}},9773:(Se,X,g)=>{"use strict";g.d(X,{R:()=>o});var n=g(9360),p=g(8251),C=g(4829),b=g(2420);function o(v){return(0,n.e)((a,c)=>{(0,C.Xf)(v).subscribe((0,p.x)(c,()=>c.complete(),b.Z)),!c.closed&&a.subscribe(c)})}},812:(Se,X,g)=>{"use strict";g.d(X,{o:()=>C});var n=g(9360),p=g(8251);function C(b,o=!1){return(0,n.e)((v,a)=>{let c=0;v.subscribe((0,p.x)(a,s=>{const l=b(s,c++);(l||o)&&a.next(s),!l&&a.complete()}))})}},9397:(Se,X,g)=>{"use strict";g.d(X,{b:()=>o});var n=g(4674),p=g(9360),C=g(8251),b=g(2737);function o(v,a,c){const s=(0,n.m)(v)||a||c?{next:v,error:a,complete:c}:v;return s?(0,p.e)((l,d)=>{var r;null===(r=s.subscribe)||void 0===r||r.call(s);let u=!0;l.subscribe((0,C.x)(d,h=>{var m;null===(m=s.next)||void 0===m||m.call(s,h),d.next(h)},()=>{var h;u=!1,null===(h=s.complete)||void 0===h||h.call(s),d.complete()},h=>{var m;u=!1,null===(m=s.error)||void 0===m||m.call(s,h),d.error(h)},()=>{var h,m;u&&(null===(h=s.unsubscribe)||void 0===h||h.call(s)),null===(m=s.finalize)||void 0===m||m.call(s)}))}):b.y}},3026:(Se,X,g)=>{"use strict";g.d(X,{T:()=>b});var n=g(6973),p=g(9360),C=g(8251);function b(v=o){return(0,p.e)((a,c)=>{let s=!1;a.subscribe((0,C.x)(c,l=>{s=!0,c.next(l)},()=>s?c.complete():c.error(v())))})}function o(){return new n.K}},5178:(Se,X,g)=>{"use strict";g.d(X,{V:()=>s});var n=g(6321),p=g(93),C=g(9360),b=g(4829),o=g(2306),v=g(8251),a=g(7103);const c=(0,o.d)(d=>function(u=null){d(this),this.message="Timeout has occurred",this.name="TimeoutError",this.info=u});function s(d,r){const{first:u,each:h,with:m=l,scheduler:_=r??n.z,meta:M=null}=(0,p.q)(d)?{first:d}:"number"==typeof d?{each:d}:d;if(null==u&&null==h)throw new TypeError("No timeout provided.");return(0,C.e)((x,w)=>{let L,A,T=null,O=0;const E=D=>{A=(0,a.f)(w,_,()=>{try{L.unsubscribe(),(0,b.Xf)(m({meta:M,lastValue:T,seen:O})).subscribe(w)}catch(R){w.error(R)}},D)};L=x.subscribe((0,v.x)(w,D=>{A?.unsubscribe(),O++,w.next(T=D),h>0&&E(h)},void 0,void 0,()=>{A?.closed||A?.unsubscribe(),T=null})),!O&&E(null!=u?"number"==typeof u?u:+u-_.now():h)})}function l(d){throw new c(d)}},1954:(Se,X,g)=>{"use strict";g.d(X,{o:()=>o});var n=g(7394);class p extends n.w0{constructor(a,c){super()}schedule(a,c=0){return this}}const C={setInterval(v,a,...c){const{delegate:s}=C;return s?.setInterval?s.setInterval(v,a,...c):setInterval(v,a,...c)},clearInterval(v){const{delegate:a}=C;return(a?.clearInterval||clearInterval)(v)},delegate:void 0};var b=g(9039);class o extends p{constructor(a,c){super(a,c),this.scheduler=a,this.work=c,this.pending=!1}schedule(a,c=0){var s;if(this.closed)return this;this.state=a;const l=this.id,d=this.scheduler;return null!=l&&(this.id=this.recycleAsyncId(d,l,c)),this.pending=!0,this.delay=c,this.id=null!==(s=this.id)&&void 0!==s?s:this.requestAsyncId(d,this.id,c),this}requestAsyncId(a,c,s=0){return C.setInterval(a.flush.bind(a,this),s)}recycleAsyncId(a,c,s=0){if(null!=s&&this.delay===s&&!1===this.pending)return c;null!=c&&C.clearInterval(c)}execute(a,c){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;const s=this._execute(a,c);if(s)return s;!1===this.pending&&null!=this.id&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))}_execute(a,c){let l,s=!1;try{this.work(a)}catch(d){s=!0,l=d||new Error("Scheduled action threw falsy error")}if(s)return this.unsubscribe(),l}unsubscribe(){if(!this.closed){const{id:a,scheduler:c}=this,{actions:s}=c;this.work=this.state=this.scheduler=null,this.pending=!1,(0,b.P)(s,this),null!=a&&(this.id=this.recycleAsyncId(c,a,null)),this.delay=null,super.unsubscribe()}}}},2631:(Se,X,g)=>{"use strict";g.d(X,{v:()=>C});var n=g(4552);class p{constructor(o,v=p.now){this.schedulerActionCtor=o,this.now=v}schedule(o,v=0,a){return new this.schedulerActionCtor(this,o).schedule(a,v)}}p.now=n.l.now;class C extends p{constructor(o,v=p.now){super(o,v),this.actions=[],this._active=!1}flush(o){const{actions:v}=this;if(this._active)return void v.push(o);let a;this._active=!0;do{if(a=o.execute(o.state,o.delay))break}while(o=v.shift());if(this._active=!1,a){for(;o=v.shift();)o.unsubscribe();throw a}}}},927:(Se,X,g)=>{"use strict";g.d(X,{Z:()=>a});var n=g(1954),p=g(7394);const C={schedule(s){let l=requestAnimationFrame,d=cancelAnimationFrame;const{delegate:r}=C;r&&(l=r.requestAnimationFrame,d=r.cancelAnimationFrame);const u=l(h=>{d=void 0,s(h)});return new p.w0(()=>d?.(u))},requestAnimationFrame(...s){const{delegate:l}=C;return(l?.requestAnimationFrame||requestAnimationFrame)(...s)},cancelAnimationFrame(...s){const{delegate:l}=C;return(l?.cancelAnimationFrame||cancelAnimationFrame)(...s)},delegate:void 0};var o=g(2631);const a=new class v extends o.v{flush(l){this._active=!0;const d=this._scheduled;this._scheduled=void 0;const{actions:r}=this;let u;l=l||r.shift();do{if(u=l.execute(l.state,l.delay))break}while((l=r[0])&&l.id===d&&r.shift());if(this._active=!1,u){for(;(l=r[0])&&l.id===d&&r.shift();)l.unsubscribe();throw u}}}(class b extends n.o{constructor(l,d){super(l,d),this.scheduler=l,this.work=d}requestAsyncId(l,d,r=0){return null!==r&&r>0?super.requestAsyncId(l,d,r):(l.actions.push(this),l._scheduled||(l._scheduled=C.requestAnimationFrame(()=>l.flush(void 0))))}recycleAsyncId(l,d,r=0){var u;if(null!=r?r>0:this.delay>0)return super.recycleAsyncId(l,d,r);const{actions:h}=l;null!=d&&(null===(u=h[h.length-1])||void 0===u?void 0:u.id)!==d&&(C.cancelAnimationFrame(d),l._scheduled=void 0)}})},6410:(Se,X,g)=>{"use strict";g.d(X,{E:()=>h});var n=g(1954);let C,p=1;const b={};function o(_){return _ in b&&(delete b[_],!0)}const v={setImmediate(_){const M=p++;return b[M]=!0,C||(C=Promise.resolve()),C.then(()=>o(M)&&_()),M},clearImmediate(_){o(_)}},{setImmediate:c,clearImmediate:s}=v,l={setImmediate(..._){const{delegate:M}=l;return(M?.setImmediate||c)(..._)},clearImmediate(_){const{delegate:M}=l;return(M?.clearImmediate||s)(_)},delegate:void 0};var r=g(2631);const h=new class u extends r.v{flush(M){this._active=!0;const x=this._scheduled;this._scheduled=void 0;const{actions:w}=this;let L;M=M||w.shift();do{if(L=M.execute(M.state,M.delay))break}while((M=w[0])&&M.id===x&&w.shift());if(this._active=!1,L){for(;(M=w[0])&&M.id===x&&w.shift();)M.unsubscribe();throw L}}}(class d extends n.o{constructor(M,x){super(M,x),this.scheduler=M,this.work=x}requestAsyncId(M,x,w=0){return null!==w&&w>0?super.requestAsyncId(M,x,w):(M.actions.push(this),M._scheduled||(M._scheduled=l.setImmediate(M.flush.bind(M,void 0))))}recycleAsyncId(M,x,w=0){var L;if(null!=w?w>0:this.delay>0)return super.recycleAsyncId(M,x,w);const{actions:A}=M;null!=x&&(null===(L=A[A.length-1])||void 0===L?void 0:L.id)!==x&&(l.clearImmediate(x),M._scheduled===x&&(M._scheduled=void 0))}})},6321:(Se,X,g)=>{"use strict";g.d(X,{P:()=>b,z:()=>C});var n=g(1954);const C=new(g(2631).v)(n.o),b=C},4552:(Se,X,g)=>{"use strict";g.d(X,{l:()=>n});const n={now:()=>(n.delegate||Date).now(),delegate:void 0}},7599:(Se,X,g)=>{"use strict";g.d(X,{z:()=>n});const n={setTimeout(p,C,...b){const{delegate:o}=n;return o?.setTimeout?o.setTimeout(p,C,...b):setTimeout(p,C,...b)},clearTimeout(p){const{delegate:C}=n;return(C?.clearTimeout||clearTimeout)(p)},delegate:void 0}},4971:(Se,X,g)=>{"use strict";g.d(X,{h:()=>p});const p=function n(){return"function"==typeof Symbol&&Symbol.iterator?Symbol.iterator:"@@iterator"}()},4850:(Se,X,g)=>{"use strict";g.d(X,{L:()=>n});const n="function"==typeof Symbol&&Symbol.observable||"@@observable"},6973:(Se,X,g)=>{"use strict";g.d(X,{K:()=>p});const p=(0,g(2306).d)(C=>function(){C(this),this.name="EmptyError",this.message="no elements in sequence"})},9940:(Se,X,g)=>{"use strict";g.d(X,{_6:()=>v,jO:()=>b,yG:()=>o});var n=g(4674),p=g(671);function C(a){return a[a.length-1]}function b(a){return(0,n.m)(C(a))?a.pop():void 0}function o(a){return(0,p.K)(C(a))?a.pop():void 0}function v(a,c){return"number"==typeof C(a)?a.pop():c}},7453:(Se,X,g)=>{"use strict";g.d(X,{D:()=>o});const{isArray:n}=Array,{getPrototypeOf:p,prototype:C,keys:b}=Object;function o(a){if(1===a.length){const c=a[0];if(n(c))return{args:c,keys:null};if(function v(a){return a&&"object"==typeof a&&p(a)===C}(c)){const s=b(c);return{args:s.map(l=>c[l]),keys:s}}}return{args:a,keys:null}}},7728:(Se,X,g)=>{"use strict";g.d(X,{k:()=>p});const{isArray:n}=Array;function p(C){return 1===C.length&&n(C[0])?C[0]:C}},9039:(Se,X,g)=>{"use strict";function n(p,C){if(p){const b=p.indexOf(C);0<=b&&p.splice(b,1)}}g.d(X,{P:()=>n})},2306:(Se,X,g)=>{"use strict";function n(p){const b=p(o=>{Error.call(o),o.stack=(new Error).stack});return b.prototype=Object.create(Error.prototype),b.prototype.constructor=b,b}g.d(X,{d:()=>n})},2714:(Se,X,g)=>{"use strict";function n(p,C){return p.reduce((b,o,v)=>(b[o]=C[v],b),{})}g.d(X,{n:()=>n})},1441:(Se,X,g)=>{"use strict";g.d(X,{O:()=>b,x:()=>C});var n=g(2653);let p=null;function C(o){if(n.config.useDeprecatedSynchronousErrorHandling){const v=!p;if(v&&(p={errorThrown:!1,error:null}),o(),v){const{errorThrown:a,error:c}=p;if(p=null,a)throw c}}else o()}function b(o){n.config.useDeprecatedSynchronousErrorHandling&&p&&(p.errorThrown=!0,p.error=o)}},7103:(Se,X,g)=>{"use strict";function n(p,C,b,o=0,v=!1){const a=C.schedule(function(){b(),v?p.add(this.schedule(null,o)):this.unsubscribe()},o);if(p.add(a),!v)return a}g.d(X,{f:()=>n})},2737:(Se,X,g)=>{"use strict";function n(p){return p}g.d(X,{y:()=>n})},4266:(Se,X,g)=>{"use strict";g.d(X,{z:()=>n});const n=p=>p&&"number"==typeof p.length&&"function"!=typeof p},5726:(Se,X,g)=>{"use strict";g.d(X,{D:()=>p});var n=g(4674);function p(C){return Symbol.asyncIterator&&(0,n.m)(C?.[Symbol.asyncIterator])}},93:(Se,X,g)=>{"use strict";function n(p){return p instanceof Date&&!isNaN(p)}g.d(X,{q:()=>n})},4674:(Se,X,g)=>{"use strict";function n(p){return"function"==typeof p}g.d(X,{m:()=>n})},8382:(Se,X,g)=>{"use strict";g.d(X,{c:()=>C});var n=g(4850),p=g(4674);function C(b){return(0,p.m)(b[n.L])}},3664:(Se,X,g)=>{"use strict";g.d(X,{T:()=>C});var n=g(4971),p=g(4674);function C(b){return(0,p.m)(b?.[n.h])}},2664:(Se,X,g)=>{"use strict";g.d(X,{b:()=>C});var n=g(5592),p=g(4674);function C(b){return!!b&&(b instanceof n.y||(0,p.m)(b.lift)&&(0,p.m)(b.subscribe))}},4026:(Se,X,g)=>{"use strict";g.d(X,{t:()=>p});var n=g(4674);function p(C){return(0,n.m)(C?.then)}},541:(Se,X,g)=>{"use strict";g.d(X,{L:()=>b,Q:()=>C});var n=g(655),p=g(4674);function C(o){return(0,n.__asyncGenerator)(this,arguments,function*(){const a=o.getReader();try{for(;;){const{value:c,done:s}=yield(0,n.__await)(a.read());if(s)return yield(0,n.__await)(void 0);yield yield(0,n.__await)(c)}}finally{a.releaseLock()}})}function b(o){return(0,p.m)(o?.getReader)}},671:(Se,X,g)=>{"use strict";g.d(X,{K:()=>p});var n=g(4674);function p(C){return C&&(0,n.m)(C.schedule)}},9360:(Se,X,g)=>{"use strict";g.d(X,{A:()=>p,e:()=>C});var n=g(4674);function p(b){return(0,n.m)(b?.lift)}function C(b){return o=>{if(p(o))return o.lift(function(v){try{return b(v,this)}catch(a){this.error(a)}});throw new TypeError("Unable to lift unknown Observable type")}}},7400:(Se,X,g)=>{"use strict";g.d(X,{Z:()=>b});var n=g(7398);const{isArray:p}=Array;function b(o){return(0,n.U)(v=>function C(o,v){return p(v)?o(...v):o(v)}(o,v))}},2420:(Se,X,g)=>{"use strict";function n(){}g.d(X,{Z:()=>n})},8407:(Se,X,g)=>{"use strict";g.d(X,{U:()=>C,z:()=>p});var n=g(2737);function p(...b){return C(b)}function C(b){return 0===b.length?n.y:1===b.length?b[0]:function(v){return b.reduce((a,c)=>c(a),v)}}},3894:(Se,X,g)=>{"use strict";g.d(X,{h:()=>C});var n=g(2653),p=g(7599);function C(b){p.z.setTimeout(()=>{const{onUnhandledError:o}=n.config;if(!o)throw b;o(b)})}},9853:(Se,X,g)=>{"use strict";function n(p){return new TypeError(`You provided ${null!==p&&"object"==typeof p?"an invalid object":`'${p}'`} where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.`)}g.d(X,{z:()=>n})},1385:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{audit:()=>n.U,auditTime:()=>p.e,buffer:()=>a,bufferCount:()=>s,bufferTime:()=>h,bufferToggle:()=>m,bufferWhen:()=>_,catchError:()=>M.K,combineAll:()=>S,combineLatest:()=>F,combineLatestAll:()=>N,combineLatestWith:()=>Y,concat:()=>me,concatAll:()=>se.u,concatMap:()=>$.b,concatMapTo:()=>Q,concatWith:()=>ue,connect:()=>$e,count:()=>st,debounce:()=>Mt,debounceTime:()=>tt.b,defaultIfEmpty:()=>St.d,delay:()=>bt.g,delayWhen:()=>xt.j,dematerialize:()=>ee,distinct:()=>ae,distinctUntilChanged:()=>ie.x,distinctUntilKeyChanged:()=>pe,elementAt:()=>ze,endWith:()=>Bt,every:()=>$t,exhaust:()=>ve,exhaustAll:()=>We,exhaustMap:()=>Ue,expand:()=>at,filter:()=>Lt.h,finalize:()=>De.x,find:()=>je,findIndex:()=>Z,first:()=>re.P,flatMap:()=>tn,groupBy:()=>ce,ignoreElements:()=>Ee.l,isEmpty:()=>it,last:()=>Rt.Z,map:()=>Yt.U,mapTo:()=>Ye.h,materialize:()=>qe,max:()=>Ne,merge:()=>At,mergeAll:()=>dt.J,mergeMap:()=>T.z,mergeMapTo:()=>wn,mergeScan:()=>Tn,mergeWith:()=>Sn,min:()=>Mn,multicast:()=>di,observeOn:()=>Li.Q,onErrorResumeNext:()=>mt,pairwise:()=>pt,partition:()=>on,pluck:()=>hn,publish:()=>un,publishBehavior:()=>In,publishLast:()=>mi,publishReplay:()=>ri,race:()=>Dn,raceWith:()=>en,reduce:()=>E,refCount:()=>oi.x,repeat:()=>Yn,repeatWhen:()=>si,retry:()=>ii,retryWhen:()=>Ii,sample:()=>li,sampleTime:()=>Ct,scan:()=>Ft.R,sequenceEqual:()=>Ae,share:()=>be.B,shareReplay:()=>ge.d,single:()=>an,skip:()=>gn.T,skipLast:()=>pn,skipUntil:()=>Jn,skipWhile:()=>Nn,startWith:()=>kn.O,subscribeOn:()=>Un.R,switchAll:()=>$i,switchMap:()=>vi.w,switchMapTo:()=>er,switchScan:()=>fn,take:()=>Kt.q,takeLast:()=>yn.h,takeUntil:()=>rn.R,takeWhile:()=>xn.o,tap:()=>ti.b,throttle:()=>Ti,throttleTime:()=>zi,throwIfEmpty:()=>Dt.T,timeInterval:()=>xi,timeout:()=>gi.V,timeoutWith:()=>kt,timestamp:()=>fe,toArray:()=>R,window:()=>Pe,windowCount:()=>Je,windowTime:()=>Gt,windowToggle:()=>Pn,windowWhen:()=>Gi,withLatestFrom:()=>Vi,zip:()=>or,zipAll:()=>Zi,zipWith:()=>ur});var n=g(6301),p=g(8672),C=g(9360),b=g(2420),o=g(8251),v=g(4829);function a(Et){return(0,C.e)((_t,ft)=>{let Tt=[];return _t.subscribe((0,o.x)(ft,Ut=>Tt.push(Ut),()=>{ft.next(Tt),ft.complete()})),(0,v.Xf)(Et).subscribe((0,o.x)(ft,()=>{const Ut=Tt;Tt=[],ft.next(Ut)},b.Z)),()=>{Tt=null}})}var c=g(9039);function s(Et,_t=null){return _t=_t??Et,(0,C.e)((ft,Tt)=>{let Ut=[],Wt=0;ft.subscribe((0,o.x)(Tt,nn=>{let Cn=null;Wt++%_t==0&&Ut.push([]);for(const _n of Ut)_n.push(nn),Et<=_n.length&&(Cn=Cn??[],Cn.push(_n));if(Cn)for(const _n of Cn)(0,c.P)(Ut,_n),Tt.next(_n)},()=>{for(const nn of Ut)Tt.next(nn);Tt.complete()},void 0,()=>{Ut=null}))})}var l=g(7394),d=g(6321),r=g(9940),u=g(7103);function h(Et,..._t){var ft,Tt;const Ut=null!==(ft=(0,r.yG)(_t))&&void 0!==ft?ft:d.z,Wt=null!==(Tt=_t[0])&&void 0!==Tt?Tt:null,nn=_t[1]||1/0;return(0,C.e)((Cn,_n)=>{let zn=[],Vn=!1;const Ri=ni=>{const{buffer:Xn,subs:ai}=ni;ai.unsubscribe(),(0,c.P)(zn,ni),_n.next(Xn),Vn&&ci()},ci=()=>{if(zn){const ni=new l.w0;_n.add(ni);const ai={buffer:[],subs:ni};zn.push(ai),(0,u.f)(ni,Ut,()=>Ri(ai),Et)}};null!==Wt&&Wt>=0?(0,u.f)(_n,Ut,ci,Wt,!0):Vn=!0,ci();const Mi=(0,o.x)(_n,ni=>{const Xn=zn.slice();for(const ai of Xn){const{buffer:Fi}=ai;Fi.push(ni),nn<=Fi.length&&Ri(ai)}},()=>{for(;zn?.length;)_n.next(zn.shift().buffer);Mi?.unsubscribe(),_n.complete(),_n.unsubscribe()},void 0,()=>zn=null);Cn.subscribe(Mi)})}function m(Et,_t){return(0,C.e)((ft,Tt)=>{const Ut=[];(0,v.Xf)(Et).subscribe((0,o.x)(Tt,Wt=>{const nn=[];Ut.push(nn);const Cn=new l.w0;Cn.add((0,v.Xf)(_t(Wt)).subscribe((0,o.x)(Tt,()=>{(0,c.P)(Ut,nn),Tt.next(nn),Cn.unsubscribe()},b.Z)))},b.Z)),ft.subscribe((0,o.x)(Tt,Wt=>{for(const nn of Ut)nn.push(Wt)},()=>{for(;Ut.length>0;)Tt.next(Ut.shift());Tt.complete()}))})}function _(Et){return(0,C.e)((_t,ft)=>{let Tt=null,Ut=null;const Wt=()=>{Ut?.unsubscribe();const nn=Tt;Tt=[],nn&&ft.next(nn),(0,v.Xf)(Et()).subscribe(Ut=(0,o.x)(ft,Wt,b.Z))};Wt(),_t.subscribe((0,o.x)(ft,nn=>Tt?.push(nn),()=>{Tt&&ft.next(Tt),ft.complete()},void 0,()=>Tt=Ut=null))})}var M=g(6306),x=g(2572),w=g(2737),L=g(7400),A=g(8407),T=g(9769),O=g(9732);function E(Et,_t){return(0,C.e)((0,O.U)(Et,_t,arguments.length>=2,!1,!0))}const D=(Et,_t)=>(Et.push(_t),Et);function R(){return(0,C.e)((Et,_t)=>{E(D,[])(Et).subscribe(_t)})}function j(Et,_t){return(0,A.z)(R(),(0,T.z)(ft=>Et(ft)),_t?(0,L.Z)(_t):w.y)}function N(Et){return j(x.a,Et)}const S=N;var k=g(7728);function F(...Et){const _t=(0,r.jO)(Et);return _t?(0,A.z)(F(...Et),(0,L.Z)(_t)):(0,C.e)((ft,Tt)=>{(0,x.l)([ft,...(0,k.k)(Et)])(Tt)})}function Y(...Et){return F(...Et)}var se=g(1948),ne=g(2459);function me(...Et){const _t=(0,r.yG)(Et);return(0,C.e)((ft,Tt)=>{(0,se.u)()((0,ne.D)([ft,...Et],_t)).subscribe(Tt)})}var $=g(6328),q=g(4674);function Q(Et,_t){return(0,q.m)(_t)?(0,$.b)(()=>Et,_t):(0,$.b)(()=>Et)}function ue(...Et){return me(...Et)}var Me=g(8645),Oe=g(5592);const Be={connector:()=>new Me.x};function $e(Et,_t=Be){const{connector:ft}=_t;return(0,C.e)((Tt,Ut)=>{const Wt=ft();(0,v.Xf)(Et(function Xe(Et){return new Oe.y(_t=>Et.subscribe(_t))}(Wt))).subscribe(Ut),Ut.add(Tt.subscribe(Wt))})}function st(Et){return E((_t,ft,Tt)=>!Et||Et(ft,Tt)?_t+1:_t,0)}function Mt(Et){return(0,C.e)((_t,ft)=>{let Tt=!1,Ut=null,Wt=null;const nn=()=>{if(Wt?.unsubscribe(),Wt=null,Tt){Tt=!1;const Cn=Ut;Ut=null,ft.next(Cn)}};_t.subscribe((0,o.x)(ft,Cn=>{Wt?.unsubscribe(),Tt=!0,Ut=Cn,Wt=(0,o.x)(ft,nn,b.Z),(0,v.Xf)(Et(Cn)).subscribe(Wt)},()=>{nn(),ft.complete()},void 0,()=>{Ut=Wt=null}))})}var tt=g(3620),St=g(3572),bt=g(7547),xt=g(4610),nt=g(6232),ot=g(2096),vt=g(8504);class J{constructor(_t,ft,Tt){this.kind=_t,this.value=ft,this.error=Tt,this.hasValue="N"===_t}observe(_t){return Ce(this,_t)}do(_t,ft,Tt){const{kind:Ut,value:Wt,error:nn}=this;return"N"===Ut?_t?.(Wt):"E"===Ut?ft?.(nn):Tt?.()}accept(_t,ft,Tt){var Ut;return(0,q.m)(null===(Ut=_t)||void 0===Ut?void 0:Ut.next)?this.observe(_t):this.do(_t,ft,Tt)}toObservable(){const{kind:_t,value:ft,error:Tt}=this,Ut="N"===_t?(0,ot.of)(ft):"E"===_t?(0,vt._)(()=>Tt):"C"===_t?nt.E:0;if(!Ut)throw new TypeError(`Unexpected notification kind ${_t}`);return Ut}static createNext(_t){return new J("N",_t)}static createError(_t){return new J("E",void 0,_t)}static createComplete(){return J.completeNotification}}function Ce(Et,_t){var ft,Tt,Ut;const{kind:Wt,value:nn,error:Cn}=Et;if("string"!=typeof Wt)throw new TypeError('Invalid notification, missing "kind"');"N"===Wt?null===(ft=_t.next)||void 0===ft||ft.call(_t,nn):"E"===Wt?null===(Tt=_t.error)||void 0===Tt||Tt.call(_t,Cn):null===(Ut=_t.complete)||void 0===Ut||Ut.call(_t)}function ee(){return(0,C.e)((Et,_t)=>{Et.subscribe((0,o.x)(_t,ft=>Ce(ft,_t)))})}function ae(Et,_t){return(0,C.e)((ft,Tt)=>{const Ut=new Set;ft.subscribe((0,o.x)(Tt,Wt=>{const nn=Et?Et(Wt):Wt;Ut.has(nn)||(Ut.add(nn),Tt.next(Wt))})),_t&&(0,v.Xf)(_t).subscribe((0,o.x)(Tt,()=>Ut.clear(),b.Z))})}J.completeNotification=new J("C");var ie=g(3997);function pe(Et,_t){return(0,ie.x)((ft,Tt)=>_t?_t(ft[Et],Tt[Et]):ft[Et]===Tt[Et])}var Te=g(2306);const ct=(0,Te.d)(Et=>function(){Et(this),this.name="ArgumentOutOfRangeError",this.message="argument out of range"});var Lt=g(2181),Dt=g(3026),Kt=g(8180);function ze(Et,_t){if(Et<0)throw new ct;const ft=arguments.length>=2;return Tt=>Tt.pipe((0,Lt.h)((Ut,Wt)=>Wt===Et),(0,Kt.q)(1),ft?(0,St.d)(_t):(0,Dt.T)(()=>new ct))}var yt=g(34);function Bt(...Et){return _t=>(0,yt.z)(_t,(0,ot.of)(...Et))}function $t(Et,_t){return(0,C.e)((ft,Tt)=>{let Ut=0;ft.subscribe((0,o.x)(Tt,Wt=>{Et.call(_t,Wt,Ut++,ft)||(Tt.next(!1),Tt.complete())},()=>{Tt.next(!0),Tt.complete()}))})}var Yt=g(7398);function Ue(Et,_t){return _t?ft=>ft.pipe(Ue((Tt,Ut)=>(0,v.Xf)(Et(Tt,Ut)).pipe((0,Yt.U)((Wt,nn)=>_t(Tt,Wt,Ut,nn))))):(0,C.e)((ft,Tt)=>{let Ut=0,Wt=null,nn=!1;ft.subscribe((0,o.x)(Tt,Cn=>{Wt||(Wt=(0,o.x)(Tt,void 0,()=>{Wt=null,nn&&Tt.complete()}),(0,v.Xf)(Et(Cn,Ut++)).subscribe(Wt))},()=>{nn=!0,!Wt&&Tt.complete()}))})}function We(){return Ue(w.y)}const ve=We;var we=g(564);function at(Et,_t=1/0,ft){return _t=(_t||0)<1?1/0:_t,(0,C.e)((Tt,Ut)=>(0,we.p)(Tt,Ut,Et,_t,void 0,!0,ft))}var De=g(4716);function je(Et,_t){return(0,C.e)(ke(Et,_t,"value"))}function ke(Et,_t,ft){const Tt="index"===ft;return(Ut,Wt)=>{let nn=0;Ut.subscribe((0,o.x)(Wt,Cn=>{const _n=nn++;Et.call(_t,Cn,_n,Ut)&&(Wt.next(Tt?_n:Cn),Wt.complete())},()=>{Wt.next(Tt?-1:void 0),Wt.complete()}))}}function Z(Et,_t){return(0,C.e)(ke(Et,_t,"index"))}var re=g(1374);function ce(Et,_t,ft,Tt){return(0,C.e)((Ut,Wt)=>{let nn;_t&&"function"!=typeof _t?({duration:ft,element:nn,connector:Tt}=_t):nn=_t;const Cn=new Map,_n=ni=>{Cn.forEach(ni),ni(Wt)},zn=ni=>_n(Xn=>Xn.error(ni));let Vn=0,Ri=!1;const ci=new o.Q(Wt,ni=>{try{const Xn=Et(ni);let ai=Cn.get(Xn);if(!ai){Cn.set(Xn,ai=Tt?Tt():new Me.x);const Fi=function Mi(ni,Xn){const ai=new Oe.y(Fi=>{Vn++;const Xi=Xn.subscribe(Fi);return()=>{Xi.unsubscribe(),0==--Vn&&Ri&&ci.unsubscribe()}});return ai.key=ni,ai}(Xn,ai);if(Wt.next(Fi),ft){const Xi=(0,o.x)(ai,()=>{ai.complete(),Xi?.unsubscribe()},void 0,void 0,()=>Cn.delete(Xn));ci.add((0,v.Xf)(ft(Fi)).subscribe(Xi))}}ai.next(nn?nn(ni):ni)}catch(Xn){zn(Xn)}},()=>_n(ni=>ni.complete()),zn,()=>Cn.clear(),()=>(Ri=!0,0===Vn));Ut.subscribe(ci)})}var Ee=g(7538);function it(){return(0,C.e)((Et,_t)=>{Et.subscribe((0,o.x)(_t,()=>{_t.next(!1),_t.complete()},()=>{_t.next(!0),_t.complete()}))})}var Rt=g(2032),Ye=g(975);function qe(){return(0,C.e)((Et,_t)=>{Et.subscribe((0,o.x)(_t,ft=>{_t.next(J.createNext(ft))},()=>{_t.next(J.createComplete()),_t.complete()},ft=>{_t.next(J.createError(ft)),_t.complete()}))})}function Ne(Et){return E((0,q.m)(Et)?(_t,ft)=>Et(_t,ft)>0?_t:ft:(_t,ft)=>_t>ft?_t:ft)}var dt=g(7537);function At(...Et){const _t=(0,r.yG)(Et),ft=(0,r._6)(Et,1/0);return Et=(0,k.k)(Et),(0,C.e)((Tt,Ut)=>{(0,dt.J)(ft)((0,ne.D)([Tt,...Et],_t)).subscribe(Ut)})}const tn=T.z;function wn(Et,_t,ft=1/0){return(0,q.m)(_t)?(0,T.z)(()=>Et,_t,ft):("number"==typeof _t&&(ft=_t),(0,T.z)(()=>Et,ft))}function Tn(Et,_t,ft=1/0){return(0,C.e)((Tt,Ut)=>{let Wt=_t;return(0,we.p)(Tt,Ut,(nn,Cn)=>Et(Wt,nn,Cn),ft,nn=>{Wt=nn},!1,void 0,()=>Wt=null)})}function Sn(...Et){return At(...Et)}function Mn(Et){return E((0,q.m)(Et)?(_t,ft)=>Et(_t,ft)<0?_t:ft:(_t,ft)=>_tEt;return(0,q.m)(_t)?$e(_t,{connector:ft}):Tt=>new Ci.c(Tt,ft)}var Li=g(3093);const mt=function wt(...Et){const _t=(0,k.k)(Et);return ft=>function Qi(...Et){const _t=(0,k.k)(Et);return new Oe.y(ft=>{let Tt=0;const Ut=()=>{if(Tt<_t.length){let Wt;try{Wt=(0,v.Xf)(_t[Tt++])}catch{return void Ut()}const nn=new o.Q(ft,void 0,b.Z,b.Z);Wt.subscribe(nn),nn.add(Ut)}else ft.complete()};Ut()})}(ft,..._t)};function pt(){return(0,C.e)((Et,_t)=>{let ft,Tt=!1;Et.subscribe((0,o.x)(_t,Ut=>{const Wt=ft;ft=Ut,Tt&&_t.next([Wt,Ut]),Tt=!0}))})}function qt(Et,_t){return(ft,Tt)=>!Et.call(_t,ft,Tt)}function on(Et,_t){return ft=>[(0,Lt.h)(Et,_t)(ft),(0,Lt.h)(qt(Et,_t))(ft)]}function hn(...Et){const _t=Et.length;if(0===_t)throw new Error("list of properties cannot be empty.");return(0,Yt.U)(ft=>{let Tt=ft;for(let Ut=0;Ut<_t;Ut++){const Wt=Tt?.[Et[Ut]];if(!(typeof Wt<"u"))return;Tt=Wt}return Tt})}function un(Et){return Et?_t=>$e(Et)(_t):_t=>di(new Me.x)(_t)}var $n=g(5619);function In(Et){return _t=>{const ft=new $n.X(Et);return new Ci.c(_t,()=>ft)}}class Zn extends Me.x{constructor(){super(...arguments),this._value=null,this._hasValue=!1,this._isComplete=!1}_checkFinalizedStatuses(_t){const{hasError:ft,_hasValue:Tt,_value:Ut,thrownError:Wt,isStopped:nn,_isComplete:Cn}=this;ft?_t.error(Wt):(nn||Cn)&&(Tt&&_t.next(Ut),_t.complete())}next(_t){this.isStopped||(this._value=_t,this._hasValue=!0)}complete(){const{_hasValue:_t,_value:ft,_isComplete:Tt}=this;Tt||(this._isComplete=!0,_t&&super.next(ft),super.complete())}}function mi(){return Et=>{const _t=new Zn;return new Ci.c(Et,()=>_t)}}var Qn=g(7328);function ri(Et,_t,ft,Tt){ft&&!(0,q.m)(ft)&&(Tt=ft);const Ut=(0,q.m)(ft)?ft:void 0;return Wt=>di(new Qn.t(Et,_t,Tt),Ut)(Wt)}var ln=g(3684);function en(...Et){return Et.length?(0,C.e)((_t,ft)=>{(0,ln.R)([_t,...Et])(ft)}):w.y}function Dn(...Et){return en(...(0,k.k)(Et))}var An=g(9080);function Yn(Et){let ft,_t=1/0;return null!=Et&&("object"==typeof Et?({count:_t=1/0,delay:ft}=Et):_t=Et),_t<=0?()=>nt.E:(0,C.e)((Tt,Ut)=>{let nn,Wt=0;const Cn=()=>{if(nn?.unsubscribe(),nn=null,null!=ft){const zn="number"==typeof ft?(0,An.H)(ft):(0,v.Xf)(ft(Wt)),Vn=(0,o.x)(Ut,()=>{Vn.unsubscribe(),_n()});zn.subscribe(Vn)}else _n()},_n=()=>{let zn=!1;nn=Tt.subscribe((0,o.x)(Ut,void 0,()=>{++Wt<_t?nn?Cn():zn=!0:Ut.complete()})),zn&&Cn()};_n()})}function si(Et){return(0,C.e)((_t,ft)=>{let Tt,Wt,Ut=!1,nn=!1,Cn=!1;const _n=()=>Cn&&nn&&(ft.complete(),!0),Vn=()=>{Cn=!1,Tt=_t.subscribe((0,o.x)(ft,void 0,()=>{Cn=!0,!_n()&&(Wt||(Wt=new Me.x,(0,v.Xf)(Et(Wt)).subscribe((0,o.x)(ft,()=>{Tt?Vn():Ut=!0},()=>{nn=!0,_n()}))),Wt).next()})),Ut&&(Tt.unsubscribe(),Tt=null,Ut=!1,Vn())};Vn()})}function ii(Et=1/0){let _t;_t=Et&&"object"==typeof Et?Et:{count:Et};const{count:ft=1/0,delay:Tt,resetOnSuccess:Ut=!1}=_t;return ft<=0?w.y:(0,C.e)((Wt,nn)=>{let _n,Cn=0;const zn=()=>{let Vn=!1;_n=Wt.subscribe((0,o.x)(nn,Ri=>{Ut&&(Cn=0),nn.next(Ri)},void 0,Ri=>{if(Cn++{_n?(_n.unsubscribe(),_n=null,zn()):Vn=!0};if(null!=Tt){const Mi="number"==typeof Tt?(0,An.H)(Tt):(0,v.Xf)(Tt(Ri,Cn)),ni=(0,o.x)(nn,()=>{ni.unsubscribe(),ci()},()=>{nn.complete()});Mi.subscribe(ni)}else ci()}else nn.error(Ri)})),Vn&&(_n.unsubscribe(),_n=null,zn())};zn()})}function Ii(Et){return(0,C.e)((_t,ft)=>{let Tt,Wt,Ut=!1;const nn=()=>{Tt=_t.subscribe((0,o.x)(ft,void 0,void 0,Cn=>{Wt||(Wt=new Me.x,(0,v.Xf)(Et(Wt)).subscribe((0,o.x)(ft,()=>Tt?nn():Ut=!0))),Wt&&Wt.next(Cn)})),Ut&&(Tt.unsubscribe(),Tt=null,Ut=!1,nn())};nn()})}var oi=g(6196);function li(Et){return(0,C.e)((_t,ft)=>{let Tt=!1,Ut=null;_t.subscribe((0,o.x)(ft,Wt=>{Tt=!0,Ut=Wt})),(0,v.Xf)(Et).subscribe((0,o.x)(ft,()=>{if(Tt){Tt=!1;const Wt=Ut;Ut=null,ft.next(Wt)}},b.Z))})}function Ct(Et,_t=d.z){return li(function Pi(Et=0,_t=d.z){return Et<0&&(Et=0),(0,An.H)(Et,Et,_t)}(Et,_t))}var Ft=g(6424);function Ae(Et,_t=((ft,Tt)=>ft===Tt)){return(0,C.e)((ft,Tt)=>{const Ut={buffer:[],complete:!1},Wt={buffer:[],complete:!1},nn=_n=>{Tt.next(_n),Tt.complete()},Cn=(_n,zn)=>{const Vn=(0,o.x)(Tt,Ri=>{const{buffer:ci,complete:Mi}=zn;0===ci.length?Mi?nn(!1):_n.buffer.push(Ri):!_t(Ri,ci.shift())&&nn(!1)},()=>{_n.complete=!0;const{complete:Ri,buffer:ci}=zn;Ri&&nn(0===ci.length),Vn?.unsubscribe()});return Vn};ft.subscribe(Cn(Ut,Wt)),(0,v.Xf)(Et).subscribe(Cn(Wt,Ut))})}var be=g(3020),ge=g(7081),Ge=g(6973);const It=(0,Te.d)(Et=>function(ft){Et(this),this.name="SequenceError",this.message=ft}),zt=(0,Te.d)(Et=>function(ft){Et(this),this.name="NotFoundError",this.message=ft});function an(Et){return(0,C.e)((_t,ft)=>{let Ut,Tt=!1,Wt=!1,nn=0;_t.subscribe((0,o.x)(ft,Cn=>{Wt=!0,(!Et||Et(Cn,nn++,_t))&&(Tt&&ft.error(new It("Too many matching values")),Tt=!0,Ut=Cn)},()=>{Tt?(ft.next(Ut),ft.complete()):ft.error(Wt?new zt("No matching values"):new Ge.K)}))})}var gn=g(836);function pn(Et){return Et<=0?w.y:(0,C.e)((_t,ft)=>{let Tt=new Array(Et),Ut=0;return _t.subscribe((0,o.x)(ft,Wt=>{const nn=Ut++;if(nn{Tt=null}})}function Jn(Et){return(0,C.e)((_t,ft)=>{let Tt=!1;const Ut=(0,o.x)(ft,()=>{Ut?.unsubscribe(),Tt=!0},b.Z);(0,v.Xf)(Et).subscribe(Ut),_t.subscribe((0,o.x)(ft,Wt=>Tt&&ft.next(Wt)))})}function Nn(Et){return(0,C.e)((_t,ft)=>{let Tt=!1,Ut=0;_t.subscribe((0,o.x)(ft,Wt=>(Tt||(Tt=!Et(Wt,Ut++)))&&ft.next(Wt)))})}var kn=g(7921),Un=g(5137),vi=g(4664);function $i(){return(0,vi.w)(w.y)}function er(Et,_t){return(0,q.m)(_t)?(0,vi.w)(()=>Et,_t):(0,vi.w)(()=>Et)}function fn(Et,_t){return(0,C.e)((ft,Tt)=>{let Ut=_t;return(0,vi.w)((Wt,nn)=>Et(Ut,Wt,nn),(Wt,nn)=>(Ut=nn,nn))(ft).subscribe(Tt),()=>{Ut=null}})}var yn=g(4418),rn=g(9773),xn=g(812),ti=g(9397);function Ti(Et,_t){return(0,C.e)((ft,Tt)=>{const{leading:Ut=!0,trailing:Wt=!1}=_t??{};let nn=!1,Cn=null,_n=null,zn=!1;const Vn=()=>{_n?.unsubscribe(),_n=null,Wt&&(Mi(),zn&&Tt.complete())},Ri=()=>{_n=null,zn&&Tt.complete()},ci=ni=>_n=(0,v.Xf)(Et(ni)).subscribe((0,o.x)(Tt,Vn,Ri)),Mi=()=>{if(nn){nn=!1;const ni=Cn;Cn=null,Tt.next(ni),!zn&&ci(ni)}};ft.subscribe((0,o.x)(Tt,ni=>{nn=!0,Cn=ni,(!_n||_n.closed)&&(Ut?Mi():ci(ni))},()=>{zn=!0,(!(Wt&&nn&&_n)||_n.closed)&&Tt.complete()}))})}function zi(Et,_t=d.z,ft){const Tt=(0,An.H)(Et,_t);return Ti(()=>Tt,ft)}function xi(Et=d.z){return(0,C.e)((_t,ft)=>{let Tt=Et.now();_t.subscribe((0,o.x)(ft,Ut=>{const Wt=Et.now(),nn=Wt-Tt;Tt=Wt,ft.next(new _r(Ut,nn))}))})}class _r{constructor(_t,ft){this.value=_t,this.interval=ft}}var gi=g(5178),Ke=g(93);function kt(Et,_t,ft){let Tt,Ut,Wt;if(ft=ft??d.P,(0,Ke.q)(Et)?Tt=Et:"number"==typeof Et&&(Ut=Et),!_t)throw new TypeError("No observable provided to switch to");if(Wt=()=>_t,null==Tt&&null==Ut)throw new TypeError("No timeout provided.");return(0,gi.V)({first:Tt,each:Ut,scheduler:ft,with:Wt})}var U=g(4552);function fe(Et=U.l){return(0,Yt.U)(_t=>({value:_t,timestamp:Et.now()}))}function Pe(Et){return(0,C.e)((_t,ft)=>{let Tt=new Me.x;ft.next(Tt.asObservable());const Ut=Wt=>{Tt.error(Wt),ft.error(Wt)};return _t.subscribe((0,o.x)(ft,Wt=>Tt?.next(Wt),()=>{Tt.complete(),ft.complete()},Ut)),(0,v.Xf)(Et).subscribe((0,o.x)(ft,()=>{Tt.complete(),ft.next(Tt=new Me.x)},b.Z,Ut)),()=>{Tt?.unsubscribe(),Tt=null}})}function Je(Et,_t=0){const ft=_t>0?_t:Et;return(0,C.e)((Tt,Ut)=>{let Wt=[new Me.x],nn=[],Cn=0;Ut.next(Wt[0].asObservable()),Tt.subscribe((0,o.x)(Ut,_n=>{for(const Vn of Wt)Vn.next(_n);const zn=Cn-Et+1;if(zn>=0&&zn%ft==0&&Wt.shift().complete(),++Cn%ft==0){const Vn=new Me.x;Wt.push(Vn),Ut.next(Vn.asObservable())}},()=>{for(;Wt.length>0;)Wt.shift().complete();Ut.complete()},_n=>{for(;Wt.length>0;)Wt.shift().error(_n);Ut.error(_n)},()=>{nn=null,Wt=null}))})}function Gt(Et,..._t){var ft,Tt;const Ut=null!==(ft=(0,r.yG)(_t))&&void 0!==ft?ft:d.z,Wt=null!==(Tt=_t[0])&&void 0!==Tt?Tt:null,nn=_t[1]||1/0;return(0,C.e)((Cn,_n)=>{let zn=[],Vn=!1;const Ri=Xn=>{const{window:ai,subs:Fi}=Xn;ai.complete(),Fi.unsubscribe(),(0,c.P)(zn,Xn),Vn&&ci()},ci=()=>{if(zn){const Xn=new l.w0;_n.add(Xn);const ai=new Me.x,Fi={window:ai,subs:Xn,seen:0};zn.push(Fi),_n.next(ai.asObservable()),(0,u.f)(Xn,Ut,()=>Ri(Fi),Et)}};null!==Wt&&Wt>=0?(0,u.f)(_n,Ut,ci,Wt,!0):Vn=!0,ci();const Mi=Xn=>zn.slice().forEach(Xn),ni=Xn=>{Mi(({window:ai})=>Xn(ai)),Xn(_n),_n.unsubscribe()};return Cn.subscribe((0,o.x)(_n,Xn=>{Mi(ai=>{ai.window.next(Xn),nn<=++ai.seen&&Ri(ai)})},()=>ni(Xn=>Xn.complete()),Xn=>ni(ai=>ai.error(Xn)))),()=>{zn=null}})}function Pn(Et,_t){return(0,C.e)((ft,Tt)=>{const Ut=[],Wt=nn=>{for(;0{const Cn=new Me.x;Ut.push(Cn);const _n=new l.w0;let Vn;try{Vn=(0,v.Xf)(_t(nn))}catch(Ri){return void Wt(Ri)}Tt.next(Cn.asObservable()),_n.add(Vn.subscribe((0,o.x)(Tt,()=>{(0,c.P)(Ut,Cn),Cn.complete(),_n.unsubscribe()},b.Z,Wt)))},b.Z)),ft.subscribe((0,o.x)(Tt,nn=>{const Cn=Ut.slice();for(const _n of Cn)_n.next(nn)},()=>{for(;0{for(;0{let Tt,Ut;const Wt=Cn=>{Tt.error(Cn),ft.error(Cn)},nn=()=>{let Cn;Ut?.unsubscribe(),Tt?.complete(),Tt=new Me.x,ft.next(Tt.asObservable());try{Cn=(0,v.Xf)(Et())}catch(_n){return void Wt(_n)}Cn.subscribe(Ut=(0,o.x)(ft,nn,nn,Wt))};nn(),_t.subscribe((0,o.x)(ft,Cn=>Tt.next(Cn),()=>{Tt.complete(),ft.complete()},Wt,()=>{Ut?.unsubscribe(),Tt=null}))})}function Vi(...Et){const _t=(0,r.jO)(Et);return(0,C.e)((ft,Tt)=>{const Ut=Et.length,Wt=new Array(Ut);let nn=Et.map(()=>!1),Cn=!1;for(let _n=0;_n{Wt[_n]=zn,!Cn&&!nn[_n]&&(nn[_n]=!0,(Cn=nn.every(w.y))&&(nn=null))},b.Z));ft.subscribe((0,o.x)(Tt,_n=>{if(Cn){const zn=[_n,...Wt];Tt.next(_t?_t(...zn):zn)}}))})}var rr=g(9278);function or(...Et){return(0,C.e)((_t,ft)=>{(0,rr.$)(_t,...Et).subscribe(ft)})}function Zi(Et){return j(rr.$,Et)}function ur(...Et){return or(...Et)}},6144:Se=>{"use strict";Se.exports=(X,g)=>{if("string"!=typeof X||"string"!=typeof g)throw new TypeError("Expected the arguments to be of type `string`");if(""===g)return[X];const n=X.indexOf(g);return-1===n?[X]:[X.slice(0,n),X.slice(n+g.length)]}},8385:Se=>{"use strict";Se.exports=X=>encodeURIComponent(X).replace(/[!'()*]/g,g=>`%${g.charCodeAt(0).toString(16).toUpperCase()}`)},655:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{__addDisposableResource:()=>Y,__assign:()=>C,__asyncDelegator:()=>O,__asyncGenerator:()=>T,__asyncValues:()=>E,__await:()=>A,__awaiter:()=>r,__classPrivateFieldGet:()=>S,__classPrivateFieldIn:()=>F,__classPrivateFieldSet:()=>k,__createBinding:()=>h,__decorate:()=>o,__disposeResources:()=>ne,__esDecorate:()=>a,__exportStar:()=>m,__extends:()=>p,__generator:()=>u,__importDefault:()=>N,__importStar:()=>j,__makeTemplateObject:()=>D,__metadata:()=>d,__param:()=>v,__propKey:()=>s,__read:()=>M,__rest:()=>b,__runInitializers:()=>c,__setFunctionName:()=>l,__spread:()=>x,__spreadArray:()=>L,__spreadArrays:()=>w,__values:()=>_,default:()=>me});var n=function($,q){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(Q,ue){Q.__proto__=ue}||function(Q,ue){for(var Me in ue)Object.prototype.hasOwnProperty.call(ue,Me)&&(Q[Me]=ue[Me])})($,q)};function p($,q){if("function"!=typeof q&&null!==q)throw new TypeError("Class extends value "+String(q)+" is not a constructor or null");function Q(){this.constructor=$}n($,q),$.prototype=null===q?Object.create(q):(Q.prototype=q.prototype,new Q)}var C=function(){return C=Object.assign||function(q){for(var Q,ue=1,Me=arguments.length;ue=0;Be--)(Xe=$[Be])&&(Oe=(Me<3?Xe(Oe):Me>3?Xe(q,Q,Oe):Xe(q,Q))||Oe);return Me>3&&Oe&&Object.defineProperty(q,Q,Oe),Oe}function v($,q){return function(Q,ue){q(Q,ue,$)}}function a($,q,Q,ue,Me,Oe){function Xe(vt){if(void 0!==vt&&"function"!=typeof vt)throw new TypeError("Function expected");return vt}for(var tt,Be=ue.kind,$e="getter"===Be?"get":"setter"===Be?"set":"value",st=!q&&$?ue.static?$:$.prototype:null,Mt=q||(st?Object.getOwnPropertyDescriptor(st,ue.name):{}),St=!1,bt=Q.length-1;bt>=0;bt--){var xt={};for(var nt in ue)xt[nt]="access"===nt?{}:ue[nt];for(var nt in ue.access)xt.access[nt]=ue.access[nt];xt.addInitializer=function(vt){if(St)throw new TypeError("Cannot add initializers after decoration has completed");Oe.push(Xe(vt||null))};var ot=(0,Q[bt])("accessor"===Be?{get:Mt.get,set:Mt.set}:Mt[$e],xt);if("accessor"===Be){if(void 0===ot)continue;if(null===ot||"object"!=typeof ot)throw new TypeError("Object expected");(tt=Xe(ot.get))&&(Mt.get=tt),(tt=Xe(ot.set))&&(Mt.set=tt),(tt=Xe(ot.init))&&Me.unshift(tt)}else(tt=Xe(ot))&&("field"===Be?Me.unshift(tt):Mt[$e]=tt)}st&&Object.defineProperty(st,ue.name,Mt),St=!0}function c($,q,Q){for(var ue=arguments.length>2,Me=0;Me0&&Oe[Oe.length-1])&&(6===st[0]||2===st[0])){Q=0;continue}if(3===st[0]&&(!Oe||st[1]>Oe[0]&&st[1]=$.length&&($=void 0),{value:$&&$[ue++],done:!$}}};throw new TypeError(q?"Object is not iterable.":"Symbol.iterator is not defined.")}function M($,q){var Q="function"==typeof Symbol&&$[Symbol.iterator];if(!Q)return $;var Me,Xe,ue=Q.call($),Oe=[];try{for(;(void 0===q||q-- >0)&&!(Me=ue.next()).done;)Oe.push(Me.value)}catch(Be){Xe={error:Be}}finally{try{Me&&!Me.done&&(Q=ue.return)&&Q.call(ue)}finally{if(Xe)throw Xe.error}}return Oe}function x(){for(var $=[],q=0;q1||Be(St,bt)})})}function Be(St,bt){try{!function $e(St){St.value instanceof A?Promise.resolve(St.value.v).then(st,Mt):tt(Oe[0][2],St)}(ue[St](bt))}catch(xt){tt(Oe[0][3],xt)}}function st(St){Be("next",St)}function Mt(St){Be("throw",St)}function tt(St,bt){St(bt),Oe.shift(),Oe.length&&Be(Oe[0][0],Oe[0][1])}}function O($){var q,Q;return q={},ue("next"),ue("throw",function(Me){throw Me}),ue("return"),q[Symbol.iterator]=function(){return this},q;function ue(Me,Oe){q[Me]=$[Me]?function(Xe){return(Q=!Q)?{value:A($[Me](Xe)),done:!1}:Oe?Oe(Xe):Xe}:Oe}}function E($){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var Q,q=$[Symbol.asyncIterator];return q?q.call($):($=_($),Q={},ue("next"),ue("throw"),ue("return"),Q[Symbol.asyncIterator]=function(){return this},Q);function ue(Oe){Q[Oe]=$[Oe]&&function(Xe){return new Promise(function(Be,$e){!function Me(Oe,Xe,Be,$e){Promise.resolve($e).then(function(st){Oe({value:st,done:Be})},Xe)}(Be,$e,(Xe=$[Oe](Xe)).done,Xe.value)})}}}function D($,q){return Object.defineProperty?Object.defineProperty($,"raw",{value:q}):$.raw=q,$}var R=Object.create?function($,q){Object.defineProperty($,"default",{enumerable:!0,value:q})}:function($,q){$.default=q};function j($){if($&&$.__esModule)return $;var q={};if(null!=$)for(var Q in $)"default"!==Q&&Object.prototype.hasOwnProperty.call($,Q)&&h(q,$,Q);return R(q,$),q}function N($){return $&&$.__esModule?$:{default:$}}function S($,q,Q,ue){if("a"===Q&&!ue)throw new TypeError("Private accessor was defined without a getter");if("function"==typeof q?$!==q||!ue:!q.has($))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===Q?ue:"a"===Q?ue.call($):ue?ue.value:q.get($)}function k($,q,Q,ue,Me){if("m"===ue)throw new TypeError("Private method is not writable");if("a"===ue&&!Me)throw new TypeError("Private accessor was defined without a setter");if("function"==typeof q?$!==q||!Me:!q.has($))throw new TypeError("Cannot write private member to an object whose class did not declare it");return"a"===ue?Me.call($,Q):Me?Me.value=Q:q.set($,Q),Q}function F($,q){if(null===q||"object"!=typeof q&&"function"!=typeof q)throw new TypeError("Cannot use 'in' operator on non-object");return"function"==typeof $?q===$:$.has(q)}function Y($,q,Q){if(null!=q){if("object"!=typeof q&&"function"!=typeof q)throw new TypeError("Object expected.");var ue;if(Q){if(!Symbol.asyncDispose)throw new TypeError("Symbol.asyncDispose is not defined.");ue=q[Symbol.asyncDispose]}if(void 0===ue){if(!Symbol.dispose)throw new TypeError("Symbol.dispose is not defined.");ue=q[Symbol.dispose]}if("function"!=typeof ue)throw new TypeError("Object not disposable.");$.stack.push({value:q,dispose:ue,async:Q})}else Q&&$.stack.push({async:!0});return q}var se="function"==typeof SuppressedError?SuppressedError:function($,q,Q){var ue=new Error(Q);return ue.name="SuppressedError",ue.error=$,ue.suppressed=q,ue};function ne($){function q(ue){$.error=$.hasError?new se(ue,$.error,"An error was suppressed during disposal."):ue,$.hasError=!0}return function Q(){for(;$.stack.length;){var ue=$.stack.pop();try{var Me=ue.dispose&&ue.dispose.call(ue.value);if(ue.async)return Promise.resolve(Me).then(Q,function(Oe){return q(Oe),Q()})}catch(Oe){q(Oe)}}if($.hasError)throw $.error}()}const me={__extends:p,__assign:C,__rest:b,__decorate:o,__param:v,__metadata:d,__awaiter:r,__generator:u,__createBinding:h,__exportStar:m,__values:_,__read:M,__spread:x,__spreadArrays:w,__spreadArray:L,__await:A,__asyncGenerator:T,__asyncDelegator:O,__asyncValues:E,__makeTemplateObject:D,__importStar:j,__importDefault:N,__classPrivateFieldGet:S,__classPrivateFieldSet:k,__classPrivateFieldIn:F,__addDisposableResource:Y,__disposeResources:ne}},6548:Se=>{function X(Z){return Z instanceof Map?Z.clear=Z.delete=Z.set=function(){throw new Error("map is read-only")}:Z instanceof Set&&(Z.add=Z.clear=Z.delete=function(){throw new Error("set is read-only")}),Object.freeze(Z),Object.getOwnPropertyNames(Z).forEach(re=>{const ce=Z[re],Ee=typeof ce;("object"===Ee||"function"===Ee)&&!Object.isFrozen(ce)&&X(ce)}),Z}class g{constructor(re){void 0===re.data&&(re.data={}),this.data=re.data,this.isMatchIgnored=!1}ignoreMatch(){this.isMatchIgnored=!0}}function n(Z){return Z.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}function p(Z,...re){const ce=Object.create(null);for(const Ee in Z)ce[Ee]=Z[Ee];return re.forEach(function(Ee){for(const it in Ee)ce[it]=Ee[it]}),ce}const b=Z=>!!Z.scope;class v{constructor(re,ce){this.buffer="",this.classPrefix=ce.classPrefix,re.walk(this)}addText(re){this.buffer+=n(re)}openNode(re){if(!b(re))return;const ce=((Z,{prefix:re})=>{if(Z.startsWith("language:"))return Z.replace("language:","language-");if(Z.includes(".")){const ce=Z.split(".");return[`${re}${ce.shift()}`,...ce.map((Ee,it)=>`${Ee}${"_".repeat(it+1)}`)].join(" ")}return`${re}${Z}`})(re.scope,{prefix:this.classPrefix});this.span(ce)}closeNode(re){b(re)&&(this.buffer+="")}value(){return this.buffer}span(re){this.buffer+=``}}const a=(Z={})=>{const re={children:[]};return Object.assign(re,Z),re};class c{constructor(){this.rootNode=a(),this.stack=[this.rootNode]}get top(){return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(re){this.top.children.push(re)}openNode(re){const ce=a({scope:re});this.add(ce),this.stack.push(ce)}closeNode(){if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)}walk(re){return this.constructor._walk(re,this.rootNode)}static _walk(re,ce){return"string"==typeof ce?re.addText(ce):ce.children&&(re.openNode(ce),ce.children.forEach(Ee=>this._walk(re,Ee)),re.closeNode(ce)),re}static _collapse(re){"string"!=typeof re&&re.children&&(re.children.every(ce=>"string"==typeof ce)?re.children=[re.children.join("")]:re.children.forEach(ce=>{c._collapse(ce)}))}}class s extends c{constructor(re){super(),this.options=re}addText(re){""!==re&&this.add(re)}startScope(re){this.openNode(re)}endScope(){this.closeNode()}__addSublanguage(re,ce){const Ee=re.root;ce&&(Ee.scope=`language:${ce}`),this.add(Ee)}toHTML(){return new v(this,this.options).value()}finalize(){return this.closeAllNodes(),!0}}function l(Z){return Z?"string"==typeof Z?Z:Z.source:null}function d(Z){return h("(?=",Z,")")}function r(Z){return h("(?:",Z,")*")}function u(Z){return h("(?:",Z,")?")}function h(...Z){return Z.map(ce=>l(ce)).join("")}function _(...Z){return"("+(function m(Z){const re=Z[Z.length-1];return"object"==typeof re&&re.constructor===Object?(Z.splice(Z.length-1,1),re):{}}(Z).capture?"":"?:")+Z.map(Ee=>l(Ee)).join("|")+")"}function M(Z){return new RegExp(Z.toString()+"|").exec("").length-1}const w=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./;function L(Z,{joinWith:re}){let ce=0;return Z.map(Ee=>{ce+=1;const it=ce;let Rt=l(Ee),Ye="";for(;Rt.length>0;){const qe=w.exec(Rt);if(!qe){Ye+=Rt;break}Ye+=Rt.substring(0,qe.index),Rt=Rt.substring(qe.index+qe[0].length),"\\"===qe[0][0]&&qe[1]?Ye+="\\"+String(Number(qe[1])+it):(Ye+=qe[0],"("===qe[0]&&ce++)}return Ye}).map(Ee=>`(${Ee})`).join(re)}const T="[a-zA-Z]\\w*",O="[a-zA-Z_]\\w*",E="\\b\\d+(\\.\\d+)?",D="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",R="\\b(0b[01]+)",S={begin:"\\\\[\\s\\S]",relevance:0},k={scope:"string",begin:"'",end:"'",illegal:"\\n",contains:[S]},F={scope:"string",begin:'"',end:'"',illegal:"\\n",contains:[S]},se=function(Z,re,ce={}){const Ee=p({scope:"comment",begin:Z,end:re,contains:[]},ce);Ee.contains.push({scope:"doctag",begin:"[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)",end:/(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,excludeBegin:!0,relevance:0});const it=_("I","a","is","so","us","to","at","if","in","it","on",/[A-Za-z]+['](d|ve|re|ll|t|s|n)/,/[A-Za-z]+[-][a-z]+/,/[A-Za-z][a-z]{2,}/);return Ee.contains.push({begin:h(/[ ]+/,"(",it,/[.]?[:]?([.][ ]|[ ])/,"){3}")}),Ee},ne=se("//","$"),me=se("/\\*","\\*/"),$=se("#","$");var st=Object.freeze({__proto__:null,MATCH_NOTHING_RE:/\b\B/,IDENT_RE:T,UNDERSCORE_IDENT_RE:O,NUMBER_RE:E,C_NUMBER_RE:D,BINARY_NUMBER_RE:R,RE_STARTERS_RE:"!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",SHEBANG:(Z={})=>{const re=/^#![ ]*\//;return Z.binary&&(Z.begin=h(re,/.*\b/,Z.binary,/\b.*/)),p({scope:"meta",begin:re,end:/$/,relevance:0,"on:begin":(ce,Ee)=>{0!==ce.index&&Ee.ignoreMatch()}},Z)},BACKSLASH_ESCAPE:S,APOS_STRING_MODE:k,QUOTE_STRING_MODE:F,PHRASAL_WORDS_MODE:{begin:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/},COMMENT:se,C_LINE_COMMENT_MODE:ne,C_BLOCK_COMMENT_MODE:me,HASH_COMMENT_MODE:$,NUMBER_MODE:{scope:"number",begin:E,relevance:0},C_NUMBER_MODE:{scope:"number",begin:D,relevance:0},BINARY_NUMBER_MODE:{scope:"number",begin:R,relevance:0},REGEXP_MODE:{begin:/(?=\/[^/\n]*\/)/,contains:[{scope:"regexp",begin:/\//,end:/\/[gimuy]*/,illegal:/\n/,contains:[S,{begin:/\[/,end:/\]/,relevance:0,contains:[S]}]}]},TITLE_MODE:{scope:"title",begin:T,relevance:0},UNDERSCORE_TITLE_MODE:{scope:"title",begin:O,relevance:0},METHOD_GUARD:{begin:"\\.\\s*"+O,relevance:0},END_SAME_AS_BEGIN:function(Z){return Object.assign(Z,{"on:begin":(re,ce)=>{ce.data._beginMatch=re[1]},"on:end":(re,ce)=>{ce.data._beginMatch!==re[1]&&ce.ignoreMatch()}})}});function Mt(Z,re){"."===Z.input[Z.index-1]&&re.ignoreMatch()}function tt(Z,re){void 0!==Z.className&&(Z.scope=Z.className,delete Z.className)}function St(Z,re){re&&Z.beginKeywords&&(Z.begin="\\b("+Z.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)",Z.__beforeBegin=Mt,Z.keywords=Z.keywords||Z.beginKeywords,delete Z.beginKeywords,void 0===Z.relevance&&(Z.relevance=0))}function bt(Z,re){Array.isArray(Z.illegal)&&(Z.illegal=_(...Z.illegal))}function xt(Z,re){if(Z.match){if(Z.begin||Z.end)throw new Error("begin & end are not supported with match");Z.begin=Z.match,delete Z.match}}function nt(Z,re){void 0===Z.relevance&&(Z.relevance=1)}const ot=(Z,re)=>{if(!Z.beforeMatch)return;if(Z.starts)throw new Error("beforeMatch cannot be used with starts");const ce=Object.assign({},Z);Object.keys(Z).forEach(Ee=>{delete Z[Ee]}),Z.keywords=ce.keywords,Z.begin=h(ce.beforeMatch,d(ce.begin)),Z.starts={relevance:0,contains:[Object.assign(ce,{endsParent:!0})]},Z.relevance=0,delete ce.beforeMatch},vt=["of","and","for","in","not","or","if","then","parent","list","value"],rt="keyword";function J(Z,re,ce=rt){const Ee=Object.create(null);return"string"==typeof Z?it(ce,Z.split(" ")):Array.isArray(Z)?it(ce,Z):Object.keys(Z).forEach(function(Rt){Object.assign(Ee,J(Z[Rt],re,Rt))}),Ee;function it(Rt,Ye){re&&(Ye=Ye.map(qe=>qe.toLowerCase())),Ye.forEach(function(qe){const Ne=qe.split("|");Ee[Ne[0]]=[Rt,Ce(Ne[0],Ne[1])]})}}function Ce(Z,re){return re?Number(re):function ee(Z){return vt.includes(Z.toLowerCase())}(Z)?0:1}const ae={},ie=Z=>{console.error(Z)},pe=(Z,...re)=>{console.log(`WARN: ${Z}`,...re)},Te=(Z,re)=>{ae[`${Z}/${re}`]||(console.log(`Deprecated as of ${Z}. ${re}`),ae[`${Z}/${re}`]=!0)},ct=new Error;function Lt(Z,re,{key:ce}){let Ee=0;const it=Z[ce],Rt={},Ye={};for(let qe=1;qe<=re.length;qe++)Ye[qe+Ee]=it[qe],Rt[qe+Ee]=!0,Ee+=M(re[qe-1]);Z[ce]=Ye,Z[ce]._emit=Rt,Z[ce]._multi=!0}function yt(Z){(function ze(Z){Z.scope&&"object"==typeof Z.scope&&null!==Z.scope&&(Z.beginScope=Z.scope,delete Z.scope)})(Z),"string"==typeof Z.beginScope&&(Z.beginScope={_wrap:Z.beginScope}),"string"==typeof Z.endScope&&(Z.endScope={_wrap:Z.endScope}),function Dt(Z){if(Array.isArray(Z.begin)){if(Z.skip||Z.excludeBegin||Z.returnBegin)throw ie("skip, excludeBegin, returnBegin not compatible with beginScope: {}"),ct;if("object"!=typeof Z.beginScope||null===Z.beginScope)throw ie("beginScope must be object"),ct;Lt(Z,Z.begin,{key:"beginScope"}),Z.begin=L(Z.begin,{joinWith:""})}}(Z),function Kt(Z){if(Array.isArray(Z.end)){if(Z.skip||Z.excludeEnd||Z.returnEnd)throw ie("skip, excludeEnd, returnEnd not compatible with endScope: {}"),ct;if("object"!=typeof Z.endScope||null===Z.endScope)throw ie("endScope must be object"),ct;Lt(Z,Z.end,{key:"endScope"}),Z.end=L(Z.end,{joinWith:""})}}(Z)}function Bt(Z){function re(Ye,qe){return new RegExp(l(Ye),"m"+(Z.case_insensitive?"i":"")+(Z.unicodeRegex?"u":"")+(qe?"g":""))}class ce{constructor(){this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0}addRule(qe,Ne){Ne.position=this.position++,this.matchIndexes[this.matchAt]=Ne,this.regexes.push([Ne,qe]),this.matchAt+=M(qe)+1}compile(){0===this.regexes.length&&(this.exec=()=>null);const qe=this.regexes.map(Ne=>Ne[1]);this.matcherRe=re(L(qe,{joinWith:"|"}),!0),this.lastIndex=0}exec(qe){this.matcherRe.lastIndex=this.lastIndex;const Ne=this.matcherRe.exec(qe);if(!Ne)return null;const dt=Ne.findIndex((tn,wn)=>wn>0&&void 0!==tn),At=this.matchIndexes[dt];return Ne.splice(0,dt),Object.assign(Ne,At)}}class Ee{constructor(){this.rules=[],this.multiRegexes=[],this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(qe){if(this.multiRegexes[qe])return this.multiRegexes[qe];const Ne=new ce;return this.rules.slice(qe).forEach(([dt,At])=>Ne.addRule(dt,At)),Ne.compile(),this.multiRegexes[qe]=Ne,Ne}resumingScanAtSamePosition(){return 0!==this.regexIndex}considerAll(){this.regexIndex=0}addRule(qe,Ne){this.rules.push([qe,Ne]),"begin"===Ne.type&&this.count++}exec(qe){const Ne=this.getMatcher(this.regexIndex);Ne.lastIndex=this.lastIndex;let dt=Ne.exec(qe);if(this.resumingScanAtSamePosition()&&(!dt||dt.index!==this.lastIndex)){const At=this.getMatcher(0);At.lastIndex=this.lastIndex+1,dt=At.exec(qe)}return dt&&(this.regexIndex+=dt.position+1,this.regexIndex===this.count&&this.considerAll()),dt}}if(Z.compilerExtensions||(Z.compilerExtensions=[]),Z.contains&&Z.contains.includes("self"))throw new Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.");return Z.classNameAliases=p(Z.classNameAliases||{}),function Rt(Ye,qe){const Ne=Ye;if(Ye.isCompiled)return Ne;[tt,xt,yt,ot].forEach(At=>At(Ye,qe)),Z.compilerExtensions.forEach(At=>At(Ye,qe)),Ye.__beforeBegin=null,[St,bt,nt].forEach(At=>At(Ye,qe)),Ye.isCompiled=!0;let dt=null;return"object"==typeof Ye.keywords&&Ye.keywords.$pattern&&(Ye.keywords=Object.assign({},Ye.keywords),dt=Ye.keywords.$pattern,delete Ye.keywords.$pattern),dt=dt||/\w+/,Ye.keywords&&(Ye.keywords=J(Ye.keywords,Z.case_insensitive)),Ne.keywordPatternRe=re(dt,!0),qe&&(Ye.begin||(Ye.begin=/\B|\b/),Ne.beginRe=re(Ne.begin),!Ye.end&&!Ye.endsWithParent&&(Ye.end=/\B|\b/),Ye.end&&(Ne.endRe=re(Ne.end)),Ne.terminatorEnd=l(Ne.end)||"",Ye.endsWithParent&&qe.terminatorEnd&&(Ne.terminatorEnd+=(Ye.end?"|":"")+qe.terminatorEnd)),Ye.illegal&&(Ne.illegalRe=re(Ye.illegal)),Ye.contains||(Ye.contains=[]),Ye.contains=[].concat(...Ye.contains.map(function(At){return function Yt(Z){return Z.variants&&!Z.cachedVariants&&(Z.cachedVariants=Z.variants.map(function(re){return p(Z,{variants:null},re)})),Z.cachedVariants?Z.cachedVariants:$t(Z)?p(Z,{starts:Z.starts?p(Z.starts):null}):Object.isFrozen(Z)?p(Z):Z}("self"===At?Ye:At)})),Ye.contains.forEach(function(At){Rt(At,Ne)}),Ye.starts&&Rt(Ye.starts,qe),Ne.matcher=function it(Ye){const qe=new Ee;return Ye.contains.forEach(Ne=>qe.addRule(Ne.begin,{rule:Ne,type:"begin"})),Ye.terminatorEnd&&qe.addRule(Ye.terminatorEnd,{type:"end"}),Ye.illegal&&qe.addRule(Ye.illegal,{type:"illegal"}),qe}(Ne),Ne}(Z)}function $t(Z){return!!Z&&(Z.endsWithParent||$t(Z.starts))}class We extends Error{constructor(re,ce){super(re),this.name="HTMLInjectionError",this.html=ce}}const ve=n,we=p,at=Symbol("nomatch"),je=function(Z){const re=Object.create(null),ce=Object.create(null),Ee=[];let it=!0;const Rt="Could not find the language '{}', did you forget to load/include a language module?",Ye={disableAutodetect:!0,name:"Plain text",contains:[]};let qe={ignoreUnescapedHTML:!1,throwUnescapedHTML:!1,noHighlightRe:/^(no-?highlight)$/i,languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-",cssSelector:"pre code",languages:null,__emitter:s};function Ne(ln){return qe.noHighlightRe.test(ln)}function At(ln,en,Dn){let An="",Yn="";"object"==typeof en?(An=ln,Dn=en.ignoreIllegals,Yn=en.language):(Te("10.7.0","highlight(lang, code, ...args) has been deprecated."),Te("10.7.0","Please use highlight(code, options) instead.\nhttps://github.com/highlightjs/highlight.js/issues/2277"),Yn=ln,An=en),void 0===Dn&&(Dn=!0);const si={code:An,language:Yn};Qn("before:highlight",si);const ii=si.result?si.result:tn(si.language,si.code,Dn);return ii.code=si.code,Qn("after:highlight",ii),ii}function tn(ln,en,Dn,An){const Yn=Object.create(null);function si(fn,yn){return fn.keywords[yn]}function ii(){if(!pn.keywords)return void Nn.addText(kn);let fn=0;pn.keywordPatternRe.lastIndex=0;let yn=pn.keywordPatternRe.exec(kn),rn="";for(;yn;){rn+=kn.substring(fn,yn.index);const xn=zt.case_insensitive?yn[0].toLowerCase():yn[0],ti=si(pn,xn);if(ti){const[Ti,zi]=ti;Nn.addText(rn),rn="",Yn[xn]=(Yn[xn]||0)+1,Yn[xn]<=7&&(Un+=zi),Ti.startsWith("_")?rn+=yn[0]:li(yn[0],zt.classNameAliases[Ti]||Ti)}else rn+=yn[0];fn=pn.keywordPatternRe.lastIndex,yn=pn.keywordPatternRe.exec(kn)}rn+=kn.substring(fn),Nn.addText(rn)}function oi(){null!=pn.subLanguage?function Ii(){if(""===kn)return;let fn=null;if("string"==typeof pn.subLanguage){if(!re[pn.subLanguage])return void Nn.addText(kn);fn=tn(pn.subLanguage,kn,!0,Jn[pn.subLanguage]),Jn[pn.subLanguage]=fn._top}else fn=Tn(kn,pn.subLanguage.length?pn.subLanguage:null);pn.relevance>0&&(Un+=fn.relevance),Nn.__addSublanguage(fn._emitter,fn.language)}():ii(),kn=""}function li(fn,yn){""!==fn&&(Nn.startScope(yn),Nn.addText(fn),Nn.endScope())}function Pi(fn,yn){let rn=1;const xn=yn.length-1;for(;rn<=xn;){if(!fn._emit[rn]){rn++;continue}const ti=zt.classNameAliases[fn[rn]]||fn[rn],Ti=yn[rn];ti?li(Ti,ti):(kn=Ti,ii(),kn=""),rn++}}function Ct(fn,yn){return fn.scope&&"string"==typeof fn.scope&&Nn.openNode(zt.classNameAliases[fn.scope]||fn.scope),fn.beginScope&&(fn.beginScope._wrap?(li(kn,zt.classNameAliases[fn.beginScope._wrap]||fn.beginScope._wrap),kn=""):fn.beginScope._multi&&(Pi(fn.beginScope,yn),kn="")),pn=Object.create(fn,{parent:{value:pn}}),pn}function Ft(fn,yn,rn){let xn=function x(Z,re){const ce=Z&&Z.exec(re);return ce&&0===ce.index}(fn.endRe,rn);if(xn){if(fn["on:end"]){const ti=new g(fn);fn["on:end"](yn,ti),ti.isMatchIgnored&&(xn=!1)}if(xn){for(;fn.endsParent&&fn.parent;)fn=fn.parent;return fn}}if(fn.endsWithParent)return Ft(fn.parent,yn,rn)}function Ae(fn){return 0===pn.matcher.regexIndex?(kn+=fn[0],1):(er=!0,0)}function be(fn){const yn=fn[0],rn=en.substring(fn.index),xn=Ft(pn,fn,rn);if(!xn)return at;const ti=pn;pn.endScope&&pn.endScope._wrap?(oi(),li(yn,pn.endScope._wrap)):pn.endScope&&pn.endScope._multi?(oi(),Pi(pn.endScope,fn)):ti.skip?kn+=yn:(ti.returnEnd||ti.excludeEnd||(kn+=yn),oi(),ti.excludeEnd&&(kn=yn));do{pn.scope&&Nn.closeNode(),!pn.skip&&!pn.subLanguage&&(Un+=pn.relevance),pn=pn.parent}while(pn!==xn.parent);return xn.starts&&Ct(xn.starts,fn),ti.returnEnd?0:yn.length}let Ge={};function It(fn,yn){const rn=yn&&yn[0];if(kn+=fn,null==rn)return oi(),0;if("begin"===Ge.type&&"end"===yn.type&&Ge.index===yn.index&&""===rn){if(kn+=en.slice(yn.index,yn.index+1),!it){const xn=new Error(`0 width match regex (${ln})`);throw xn.languageName=ln,xn.badRule=Ge.rule,xn}return 1}if(Ge=yn,"begin"===yn.type)return function W(fn){const yn=fn[0],rn=fn.rule,xn=new g(rn),ti=[rn.__beforeBegin,rn["on:begin"]];for(const Ti of ti)if(Ti&&(Ti(fn,xn),xn.isMatchIgnored))return Ae(yn);return rn.skip?kn+=yn:(rn.excludeBegin&&(kn+=yn),oi(),!rn.returnBegin&&!rn.excludeBegin&&(kn=yn)),Ct(rn,fn),rn.returnBegin?0:yn.length}(yn);if("illegal"===yn.type&&!Dn){const xn=new Error('Illegal lexeme "'+rn+'" for mode "'+(pn.scope||"")+'"');throw xn.mode=pn,xn}if("end"===yn.type){const xn=be(yn);if(xn!==at)return xn}if("illegal"===yn.type&&""===rn)return 1;if($i>1e5&&$i>3*yn.index)throw new Error("potential infinite loop, way more iterations than matches");return kn+=rn,rn.length}const zt=hn(ln);if(!zt)throw ie(Rt.replace("{}",ln)),new Error('Unknown language: "'+ln+'"');const an=Bt(zt);let gn="",pn=An||an;const Jn={},Nn=new qe.__emitter(qe);!function ge(){const fn=[];for(let yn=pn;yn!==zt;yn=yn.parent)yn.scope&&fn.unshift(yn.scope);fn.forEach(yn=>Nn.openNode(yn))}();let kn="",Un=0,vi=0,$i=0,er=!1;try{if(zt.__emitTokens)zt.__emitTokens(en,Nn);else{for(pn.matcher.considerAll();;){$i++,er?er=!1:pn.matcher.considerAll(),pn.matcher.lastIndex=vi;const fn=pn.matcher.exec(en);if(!fn)break;const rn=It(en.substring(vi,fn.index),fn);vi=fn.index+rn}It(en.substring(vi))}return Nn.finalize(),gn=Nn.toHTML(),{language:ln,value:gn,relevance:Un,illegal:!1,_emitter:Nn,_top:pn}}catch(fn){if(fn.message&&fn.message.includes("Illegal"))return{language:ln,value:ve(en),illegal:!0,relevance:0,_illegalBy:{message:fn.message,index:vi,context:en.slice(vi-100,vi+100),mode:fn.mode,resultSoFar:gn},_emitter:Nn};if(it)return{language:ln,value:ve(en),illegal:!1,relevance:0,errorRaised:fn,_emitter:Nn,_top:pn};throw fn}}function Tn(ln,en){en=en||qe.languages||Object.keys(re);const Dn=function wn(ln){const en={value:ve(ln),illegal:!1,relevance:0,_top:Ye,_emitter:new qe.__emitter(qe)};return en._emitter.addText(ln),en}(ln),An=en.filter(hn).filter($n).map(oi=>tn(oi,ln,!1));An.unshift(Dn);const Yn=An.sort((oi,li)=>{if(oi.relevance!==li.relevance)return li.relevance-oi.relevance;if(oi.language&&li.language){if(hn(oi.language).supersetOf===li.language)return 1;if(hn(li.language).supersetOf===oi.language)return-1}return 0}),[si,ii]=Yn,Ii=si;return Ii.secondBest=ii,Ii}function Mn(ln){let en=null;const Dn=function dt(ln){let en=ln.className+" ";en+=ln.parentNode?ln.parentNode.className:"";const Dn=qe.languageDetectRe.exec(en);if(Dn){const An=hn(Dn[1]);return An||(pe(Rt.replace("{}",Dn[1])),pe("Falling back to no-highlight mode for this block.",ln)),An?Dn[1]:"no-highlight"}return en.split(/\s+/).find(An=>Ne(An)||hn(An))}(ln);if(Ne(Dn))return;if(Qn("before:highlightElement",{el:ln,language:Dn}),ln.children.length>0&&(qe.ignoreUnescapedHTML||(console.warn("One of your code blocks includes unescaped HTML. This is a potentially serious security risk."),console.warn("https://github.com/highlightjs/highlight.js/wiki/security"),console.warn("The element with unescaped HTML:"),console.warn(ln)),qe.throwUnescapedHTML))throw new We("One of your code blocks includes unescaped HTML.",ln.innerHTML);en=ln;const An=en.textContent,Yn=Dn?At(An,{language:Dn,ignoreIllegals:!0}):Tn(An);ln.innerHTML=Yn.value,function Sn(ln,en,Dn){const An=en&&ce[en]||Dn;ln.classList.add("hljs"),ln.classList.add(`language-${An}`)}(ln,Dn,Yn.language),ln.result={language:Yn.language,re:Yn.relevance,relevance:Yn.relevance},Yn.secondBest&&(ln.secondBest={language:Yn.secondBest.language,relevance:Yn.secondBest.relevance}),Qn("after:highlightElement",{el:ln,result:Yn,text:An})}let Qi=!1;function wt(){"loading"!==document.readyState?document.querySelectorAll(qe.cssSelector).forEach(Mn):Qi=!0}function hn(ln){return ln=(ln||"").toLowerCase(),re[ln]||re[ce[ln]]}function un(ln,{languageName:en}){"string"==typeof ln&&(ln=[ln]),ln.forEach(Dn=>{ce[Dn.toLowerCase()]=en})}function $n(ln){const en=hn(ln);return en&&!en.disableAutodetect}function Qn(ln,en){const Dn=ln;Ee.forEach(function(An){An[Dn]&&An[Dn](en)})}typeof window<"u"&&window.addEventListener&&window.addEventListener("DOMContentLoaded",function mt(){Qi&&wt()},!1),Object.assign(Z,{highlight:At,highlightAuto:Tn,highlightAll:wt,highlightElement:Mn,highlightBlock:function ri(ln){return Te("10.7.0","highlightBlock will be removed entirely in v12.0"),Te("10.7.0","Please use highlightElement now."),Mn(ln)},configure:function Ci(ln){qe=we(qe,ln)},initHighlighting:()=>{wt(),Te("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")},initHighlightingOnLoad:function Li(){wt(),Te("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.")},registerLanguage:function pt(ln,en){let Dn=null;try{Dn=en(Z)}catch(An){if(ie("Language definition for '{}' could not be registered.".replace("{}",ln)),!it)throw An;ie(An),Dn=Ye}Dn.name||(Dn.name=ln),re[ln]=Dn,Dn.rawDefinition=en.bind(null,Z),Dn.aliases&&un(Dn.aliases,{languageName:ln})},unregisterLanguage:function qt(ln){delete re[ln];for(const en of Object.keys(ce))ce[en]===ln&&delete ce[en]},listLanguages:function on(){return Object.keys(re)},getLanguage:hn,registerAliases:un,autoDetection:$n,inherit:we,addPlugin:function Zn(ln){(function In(ln){ln["before:highlightBlock"]&&!ln["before:highlightElement"]&&(ln["before:highlightElement"]=en=>{ln["before:highlightBlock"](Object.assign({block:en.el},en))}),ln["after:highlightBlock"]&&!ln["after:highlightElement"]&&(ln["after:highlightElement"]=en=>{ln["after:highlightBlock"](Object.assign({block:en.el},en))})})(ln),Ee.push(ln)},removePlugin:function mi(ln){const en=Ee.indexOf(ln);-1!==en&&Ee.splice(en,1)}}),Z.debugMode=function(){it=!1},Z.safeMode=function(){it=!0},Z.versionString="11.8.0",Z.regex={concat:h,lookahead:d,either:_,optional:u,anyNumberOfTimes:r};for(const ln in st)"object"==typeof st[ln]&&X(st[ln]);return Object.assign(Z,st),Z},ke=je({});ke.newInstance=()=>je({}),Se.exports=ke,ke.HighlightJS=ke,ke.default=ke},5454:Se=>{Se.exports=function X(g){const C=["true","false","null"],b={scope:"literal",beginKeywords:C.join(" ")};return{name:"JSON",keywords:{literal:C},contains:[{className:"attr",begin:/"(\\.|[^\\"\r\n])*"(?=\s*:)/,relevance:1.01},{match:/[{}[\],:]/,className:"punctuation",relevance:0},g.QUOTE_STRING_MODE,b,g.C_NUMBER_MODE,g.C_LINE_COMMENT_MODE,g.C_BLOCK_COMMENT_MODE],illegal:"\\S"}}},5149:Se=>{Se.exports=function X(g){const n=g.regex,p=n.concat(/[\p{L}_]/u,n.optional(/[\p{L}0-9_.-]*:/u),/[\p{L}0-9_.-]*/u),b={className:"symbol",begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},o={begin:/\s/,contains:[{className:"keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}]},v=g.inherit(o,{begin:/\(/,end:/\)/}),a=g.inherit(g.APOS_STRING_MODE,{className:"string"}),c=g.inherit(g.QUOTE_STRING_MODE,{className:"string"}),s={endsWithParent:!0,illegal:/`]+/}]}]}]};return{name:"HTML, XML",aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist","wsf","svg"],case_insensitive:!0,unicodeRegex:!0,contains:[{className:"meta",begin://,relevance:10,contains:[o,c,a,v,{begin:/\[/,end:/\]/,contains:[{className:"meta",begin://,contains:[o,v,c,a]}]}]},g.COMMENT(//,{relevance:10}),{begin://,relevance:10},b,{className:"meta",end:/\?>/,variants:[{begin:/<\?xml/,relevance:10,contains:[c]},{begin:/<\?[a-z][a-z0-9]+/}]},{className:"tag",begin:/)/,end:/>/,keywords:{name:"style"},contains:[s],starts:{end:/<\/style>/,returnEnd:!0,subLanguage:["css","xml"]}},{className:"tag",begin:/)/,end:/>/,keywords:{name:"script"},contains:[s],starts:{end:/<\/script>/,returnEnd:!0,subLanguage:["javascript","handlebars","xml"]}},{className:"tag",begin:/<>|<\/>/},{className:"tag",begin:n.concat(//,/>/,/\s/)))),end:/\/?>/,contains:[{className:"name",begin:p,relevance:0,starts:s}]},{className:"tag",begin:n.concat(/<\//,n.lookahead(n.concat(p,/>/))),contains:[{className:"name",begin:p,relevance:0},{begin:/>/,relevance:0,endsParent:!0}]}]}}},7156:Se=>{function X(n,p,C,b,o,v,a){try{var c=n[v](a),s=c.value}catch(l){return void C(l)}c.done?p(s):Promise.resolve(s).then(b,o)}Se.exports=function g(n){return function(){var p=this,C=arguments;return new Promise(function(b,o){var v=n.apply(p,C);function a(s){X(v,b,o,a,c,"next",s)}function c(s){X(v,b,o,a,c,"throw",s)}a(void 0)})}},Se.exports.__esModule=!0,Se.exports.default=Se.exports},8416:(Se,X,g)=>{var n=g(4062);Se.exports=function p(C,b,o){return(b=n(b))in C?Object.defineProperty(C,b,{value:o,enumerable:!0,configurable:!0,writable:!0}):C[b]=o,C},Se.exports.__esModule=!0,Se.exports.default=Se.exports},5036:(Se,X,g)=>{var n=g(8698).default;Se.exports=function p(C,b){if("object"!==n(C)||null===C)return C;var o=C[Symbol.toPrimitive];if(void 0!==o){var v=o.call(C,b||"default");if("object"!==n(v))return v;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===b?String:Number)(C)},Se.exports.__esModule=!0,Se.exports.default=Se.exports},4062:(Se,X,g)=>{var n=g(8698).default,p=g(5036);Se.exports=function C(b){var o=p(b,"string");return"symbol"===n(o)?o:String(o)},Se.exports.__esModule=!0,Se.exports.default=Se.exports},8698:Se=>{function X(g){return Se.exports=X="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(n){return typeof n}:function(n){return n&&"function"==typeof Symbol&&n.constructor===Symbol&&n!==Symbol.prototype?"symbol":typeof n},Se.exports.__esModule=!0,Se.exports.default=Se.exports,X(g)}Se.exports=X,Se.exports.__esModule=!0,Se.exports.default=Se.exports},6825:(Se,X,g)=>{"use strict";function b(L,A){return{type:7,name:L,definitions:A,options:{}}}function o(L,A=null){return{type:4,styles:A,timings:L}}function v(L,A=null){return{type:3,steps:L,options:A}}function c(L){return{type:6,styles:L,offset:null}}function s(L,A,T){return{type:0,name:L,styles:A,options:T}}function l(L){return{type:5,steps:L}}function d(L,A,T=null){return{type:1,expr:L,animation:A,options:T}}function u(L=null){return{type:9,options:L}}function m(L,A,T=null){return{type:11,selector:L,animation:A,options:T}}g.d(X,{F4:()=>l,IO:()=>m,SB:()=>s,X$:()=>b,eR:()=>d,jt:()=>o,oB:()=>c,pV:()=>u,ru:()=>v})},4300:(Se,X,g)=>{"use strict";g.d(X,{$s:()=>N,Em:()=>se,Kd:()=>yt,X6:()=>Ce,Zf:()=>A,iD:()=>T,kH:()=>We,mK:()=>xt,qm:()=>De,rt:()=>je,s1:()=>Y,tE:()=>Ue,yG:()=>ee});var n=g(6814),p=g(5879),C=g(2831),b=g(8645),o=g(7394),v=g(5619),a=g(2096),c=g(6028),s=g(9397),l=g(3620),d=g(2181),r=g(7398),u=g(8180),h=g(836),m=g(3997),_=g(9773),M=g(2495),x=g(7131),w=g(1088);const L=" ";function A(ke,Z,re){const ce=O(ke,Z);ce.some(Ee=>Ee.trim()==re.trim())||(ce.push(re.trim()),ke.setAttribute(Z,ce.join(L)))}function T(ke,Z,re){const Ee=O(ke,Z).filter(it=>it!=re.trim());Ee.length?ke.setAttribute(Z,Ee.join(L)):ke.removeAttribute(Z)}function O(ke,Z){return(ke.getAttribute(Z)||"").match(/\S+/g)||[]}const D="cdk-describedby-message",R="cdk-describedby-host";let j=0,N=(()=>{class ke{constructor(re,ce){this._platform=ce,this._messageRegistry=new Map,this._messagesContainer=null,this._id=""+j++,this._document=re,this._id=(0,p.inject)(p.APP_ID)+"-"+j++}describe(re,ce,Ee){if(!this._canBeDescribed(re,ce))return;const it=S(ce,Ee);"string"!=typeof ce?(k(ce,this._id),this._messageRegistry.set(it,{messageElement:ce,referenceCount:0})):this._messageRegistry.has(it)||this._createMessageElement(ce,Ee),this._isElementDescribedByMessage(re,it)||this._addMessageReference(re,it)}removeDescription(re,ce,Ee){if(!ce||!this._isElementNode(re))return;const it=S(ce,Ee);if(this._isElementDescribedByMessage(re,it)&&this._removeMessageReference(re,it),"string"==typeof ce){const Rt=this._messageRegistry.get(it);Rt&&0===Rt.referenceCount&&this._deleteMessageElement(it)}0===this._messagesContainer?.childNodes.length&&(this._messagesContainer.remove(),this._messagesContainer=null)}ngOnDestroy(){const re=this._document.querySelectorAll(`[${R}="${this._id}"]`);for(let ce=0;ce0!=Ee.indexOf(D));re.setAttribute("aria-describedby",ce.join(" "))}_addMessageReference(re,ce){const Ee=this._messageRegistry.get(ce);A(re,"aria-describedby",Ee.messageElement.id),re.setAttribute(R,this._id),Ee.referenceCount++}_removeMessageReference(re,ce){const Ee=this._messageRegistry.get(ce);Ee.referenceCount--,T(re,"aria-describedby",Ee.messageElement.id),re.removeAttribute(R)}_isElementDescribedByMessage(re,ce){const Ee=O(re,"aria-describedby"),it=this._messageRegistry.get(ce),Rt=it&&it.messageElement.id;return!!Rt&&-1!=Ee.indexOf(Rt)}_canBeDescribed(re,ce){if(!this._isElementNode(re))return!1;if(ce&&"object"==typeof ce)return!0;const Ee=null==ce?"":`${ce}`.trim(),it=re.getAttribute("aria-label");return!(!Ee||it&&it.trim()===Ee)}_isElementNode(re){return re.nodeType===this._document.ELEMENT_NODE}}return ke.\u0275fac=function(re){return new(re||ke)(p.\u0275\u0275inject(n.DOCUMENT),p.\u0275\u0275inject(C.t4))},ke.\u0275prov=p.\u0275\u0275defineInjectable({token:ke,factory:ke.\u0275fac,providedIn:"root"}),ke})();function S(ke,Z){return"string"==typeof ke?`${Z||""}/${ke}`:ke}function k(ke,Z){ke.id||(ke.id=`${D}-${Z}-${j++}`)}class F{constructor(Z){this._items=Z,this._activeItemIndex=-1,this._activeItem=null,this._wrap=!1,this._letterKeyStream=new b.x,this._typeaheadSubscription=o.w0.EMPTY,this._vertical=!0,this._allowedModifierKeys=[],this._homeAndEnd=!1,this._pageUpAndDown={enabled:!1,delta:10},this._skipPredicateFn=re=>re.disabled,this._pressedLetters=[],this.tabOut=new b.x,this.change=new b.x,Z instanceof p.QueryList&&(this._itemChangesSubscription=Z.changes.subscribe(re=>{if(this._activeItem){const Ee=re.toArray().indexOf(this._activeItem);Ee>-1&&Ee!==this._activeItemIndex&&(this._activeItemIndex=Ee)}}))}skipPredicate(Z){return this._skipPredicateFn=Z,this}withWrap(Z=!0){return this._wrap=Z,this}withVerticalOrientation(Z=!0){return this._vertical=Z,this}withHorizontalOrientation(Z){return this._horizontal=Z,this}withAllowedModifierKeys(Z){return this._allowedModifierKeys=Z,this}withTypeAhead(Z=200){return this._typeaheadSubscription.unsubscribe(),this._typeaheadSubscription=this._letterKeyStream.pipe((0,s.b)(re=>this._pressedLetters.push(re)),(0,l.b)(Z),(0,d.h)(()=>this._pressedLetters.length>0),(0,r.U)(()=>this._pressedLetters.join(""))).subscribe(re=>{const ce=this._getItemsArray();for(let Ee=1;Ee!Z[it]||this._allowedModifierKeys.indexOf(it)>-1);switch(re){case c.Mf:return void this.tabOut.next();case c.JH:if(this._vertical&&Ee){this.setNextItemActive();break}return;case c.LH:if(this._vertical&&Ee){this.setPreviousItemActive();break}return;case c.SV:if(this._horizontal&&Ee){"rtl"===this._horizontal?this.setPreviousItemActive():this.setNextItemActive();break}return;case c.oh:if(this._horizontal&&Ee){"rtl"===this._horizontal?this.setNextItemActive():this.setPreviousItemActive();break}return;case c.Sd:if(this._homeAndEnd&&Ee){this.setFirstItemActive();break}return;case c.uR:if(this._homeAndEnd&&Ee){this.setLastItemActive();break}return;case c.Ku:if(this._pageUpAndDown.enabled&&Ee){const it=this._activeItemIndex-this._pageUpAndDown.delta;this._setActiveItemByIndex(it>0?it:0,1);break}return;case c.VM:if(this._pageUpAndDown.enabled&&Ee){const it=this._activeItemIndex+this._pageUpAndDown.delta,Rt=this._getItemsArray().length;this._setActiveItemByIndex(it=c.A&&re<=c.Z||re>=c.xE&&re<=c.aO)&&this._letterKeyStream.next(String.fromCharCode(re))))}this._pressedLetters=[],Z.preventDefault()}get activeItemIndex(){return this._activeItemIndex}get activeItem(){return this._activeItem}isTyping(){return this._pressedLetters.length>0}setFirstItemActive(){this._setActiveItemByIndex(0,1)}setLastItemActive(){this._setActiveItemByIndex(this._items.length-1,-1)}setNextItemActive(){this._activeItemIndex<0?this.setFirstItemActive():this._setActiveItemByDelta(1)}setPreviousItemActive(){this._activeItemIndex<0&&this._wrap?this.setLastItemActive():this._setActiveItemByDelta(-1)}updateActiveItem(Z){const re=this._getItemsArray(),ce="number"==typeof Z?Z:re.indexOf(Z);this._activeItem=re[ce]??null,this._activeItemIndex=ce}destroy(){this._typeaheadSubscription.unsubscribe(),this._itemChangesSubscription?.unsubscribe(),this._letterKeyStream.complete(),this.tabOut.complete(),this.change.complete(),this._pressedLetters=[]}_setActiveItemByDelta(Z){this._wrap?this._setActiveInWrapMode(Z):this._setActiveInDefaultMode(Z)}_setActiveInWrapMode(Z){const re=this._getItemsArray();for(let ce=1;ce<=re.length;ce++){const Ee=(this._activeItemIndex+Z*ce+re.length)%re.length;if(!this._skipPredicateFn(re[Ee]))return void this.setActiveItem(Ee)}}_setActiveInDefaultMode(Z){this._setActiveItemByIndex(this._activeItemIndex+Z,Z)}_setActiveItemByIndex(Z,re){const ce=this._getItemsArray();if(ce[Z]){for(;this._skipPredicateFn(ce[Z]);)if(!ce[Z+=re])return;this.setActiveItem(Z)}}_getItemsArray(){return this._items instanceof p.QueryList?this._items.toArray():this._items}}class Y extends F{setActiveItem(Z){this.activeItem&&this.activeItem.setInactiveStyles(),super.setActiveItem(Z),this.activeItem&&this.activeItem.setActiveStyles()}}class se extends F{constructor(){super(...arguments),this._origin="program"}setFocusOrigin(Z){return this._origin=Z,this}setActiveItem(Z){super.setActiveItem(Z),this.activeItem&&this.activeItem.focus(this._origin)}}let me=(()=>{class ke{constructor(re){this._platform=re}isDisabled(re){return re.hasAttribute("disabled")}isVisible(re){return function q(ke){return!!(ke.offsetWidth||ke.offsetHeight||"function"==typeof ke.getClientRects&&ke.getClientRects().length)}(re)&&"visible"===getComputedStyle(re).visibility}isTabbable(re){if(!this._platform.isBrowser)return!1;const ce=function $(ke){try{return ke.frameElement}catch{return null}}(function tt(ke){return ke.ownerDocument&&ke.ownerDocument.defaultView||window}(re));if(ce&&(-1===$e(ce)||!this.isVisible(ce)))return!1;let Ee=re.nodeName.toLowerCase(),it=$e(re);return re.hasAttribute("contenteditable")?-1!==it:!("iframe"===Ee||"object"===Ee||this._platform.WEBKIT&&this._platform.IOS&&!function st(ke){let Z=ke.nodeName.toLowerCase(),re="input"===Z&&ke.type;return"text"===re||"password"===re||"select"===Z||"textarea"===Z}(re))&&("audio"===Ee?!!re.hasAttribute("controls")&&-1!==it:"video"===Ee?-1!==it&&(null!==it||this._platform.FIREFOX||re.hasAttribute("controls")):re.tabIndex>=0)}isFocusable(re,ce){return function Mt(ke){return!function ue(ke){return function Oe(ke){return"input"==ke.nodeName.toLowerCase()}(ke)&&"hidden"==ke.type}(ke)&&(function Q(ke){let Z=ke.nodeName.toLowerCase();return"input"===Z||"select"===Z||"button"===Z||"textarea"===Z}(ke)||function Me(ke){return function Xe(ke){return"a"==ke.nodeName.toLowerCase()}(ke)&&ke.hasAttribute("href")}(ke)||ke.hasAttribute("contenteditable")||Be(ke))}(re)&&!this.isDisabled(re)&&(ce?.ignoreVisibility||this.isVisible(re))}}return ke.\u0275fac=function(re){return new(re||ke)(p.\u0275\u0275inject(C.t4))},ke.\u0275prov=p.\u0275\u0275defineInjectable({token:ke,factory:ke.\u0275fac,providedIn:"root"}),ke})();function Be(ke){if(!ke.hasAttribute("tabindex")||void 0===ke.tabIndex)return!1;let Z=ke.getAttribute("tabindex");return!(!Z||isNaN(parseInt(Z,10)))}function $e(ke){if(!Be(ke))return null;const Z=parseInt(ke.getAttribute("tabindex")||"",10);return isNaN(Z)?-1:Z}class St{get enabled(){return this._enabled}set enabled(Z){this._enabled=Z,this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(Z,this._startAnchor),this._toggleAnchorTabIndex(Z,this._endAnchor))}constructor(Z,re,ce,Ee,it=!1){this._element=Z,this._checker=re,this._ngZone=ce,this._document=Ee,this._hasAttached=!1,this.startAnchorListener=()=>this.focusLastTabbableElement(),this.endAnchorListener=()=>this.focusFirstTabbableElement(),this._enabled=!0,it||this.attachAnchors()}destroy(){const Z=this._startAnchor,re=this._endAnchor;Z&&(Z.removeEventListener("focus",this.startAnchorListener),Z.remove()),re&&(re.removeEventListener("focus",this.endAnchorListener),re.remove()),this._startAnchor=this._endAnchor=null,this._hasAttached=!1}attachAnchors(){return!!this._hasAttached||(this._ngZone.runOutsideAngular(()=>{this._startAnchor||(this._startAnchor=this._createAnchor(),this._startAnchor.addEventListener("focus",this.startAnchorListener)),this._endAnchor||(this._endAnchor=this._createAnchor(),this._endAnchor.addEventListener("focus",this.endAnchorListener))}),this._element.parentNode&&(this._element.parentNode.insertBefore(this._startAnchor,this._element),this._element.parentNode.insertBefore(this._endAnchor,this._element.nextSibling),this._hasAttached=!0),this._hasAttached)}focusInitialElementWhenReady(Z){return new Promise(re=>{this._executeOnStable(()=>re(this.focusInitialElement(Z)))})}focusFirstTabbableElementWhenReady(Z){return new Promise(re=>{this._executeOnStable(()=>re(this.focusFirstTabbableElement(Z)))})}focusLastTabbableElementWhenReady(Z){return new Promise(re=>{this._executeOnStable(()=>re(this.focusLastTabbableElement(Z)))})}_getRegionBoundary(Z){const re=this._element.querySelectorAll(`[cdk-focus-region-${Z}], [cdkFocusRegion${Z}], [cdk-focus-${Z}]`);return"start"==Z?re.length?re[0]:this._getFirstTabbableElement(this._element):re.length?re[re.length-1]:this._getLastTabbableElement(this._element)}focusInitialElement(Z){const re=this._element.querySelector("[cdk-focus-initial], [cdkFocusInitial]");if(re){if(!this._checker.isFocusable(re)){const ce=this._getFirstTabbableElement(re);return ce?.focus(Z),!!ce}return re.focus(Z),!0}return this.focusFirstTabbableElement(Z)}focusFirstTabbableElement(Z){const re=this._getRegionBoundary("start");return re&&re.focus(Z),!!re}focusLastTabbableElement(Z){const re=this._getRegionBoundary("end");return re&&re.focus(Z),!!re}hasAttached(){return this._hasAttached}_getFirstTabbableElement(Z){if(this._checker.isFocusable(Z)&&this._checker.isTabbable(Z))return Z;const re=Z.children;for(let ce=0;ce=0;ce--){const Ee=re[ce].nodeType===this._document.ELEMENT_NODE?this._getLastTabbableElement(re[ce]):null;if(Ee)return Ee}return null}_createAnchor(){const Z=this._document.createElement("div");return this._toggleAnchorTabIndex(this._enabled,Z),Z.classList.add("cdk-visually-hidden"),Z.classList.add("cdk-focus-trap-anchor"),Z.setAttribute("aria-hidden","true"),Z}_toggleAnchorTabIndex(Z,re){Z?re.setAttribute("tabindex","0"):re.removeAttribute("tabindex")}toggleAnchors(Z){this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(Z,this._startAnchor),this._toggleAnchorTabIndex(Z,this._endAnchor))}_executeOnStable(Z){this._ngZone.isStable?Z():this._ngZone.onStable.pipe((0,u.q)(1)).subscribe(Z)}}let bt=(()=>{class ke{constructor(re,ce,Ee){this._checker=re,this._ngZone=ce,this._document=Ee}create(re,ce=!1){return new St(re,this._checker,this._ngZone,this._document,ce)}}return ke.\u0275fac=function(re){return new(re||ke)(p.\u0275\u0275inject(me),p.\u0275\u0275inject(p.NgZone),p.\u0275\u0275inject(n.DOCUMENT))},ke.\u0275prov=p.\u0275\u0275defineInjectable({token:ke,factory:ke.\u0275fac,providedIn:"root"}),ke})(),xt=(()=>{class ke{get enabled(){return this.focusTrap.enabled}set enabled(re){this.focusTrap.enabled=(0,M.Ig)(re)}get autoCapture(){return this._autoCapture}set autoCapture(re){this._autoCapture=(0,M.Ig)(re)}constructor(re,ce,Ee){this._elementRef=re,this._focusTrapFactory=ce,this._previouslyFocusedElement=null,this.focusTrap=this._focusTrapFactory.create(this._elementRef.nativeElement,!0)}ngOnDestroy(){this.focusTrap.destroy(),this._previouslyFocusedElement&&(this._previouslyFocusedElement.focus(),this._previouslyFocusedElement=null)}ngAfterContentInit(){this.focusTrap.attachAnchors(),this.autoCapture&&this._captureFocus()}ngDoCheck(){this.focusTrap.hasAttached()||this.focusTrap.attachAnchors()}ngOnChanges(re){const ce=re.autoCapture;ce&&!ce.firstChange&&this.autoCapture&&this.focusTrap.hasAttached()&&this._captureFocus()}_captureFocus(){this._previouslyFocusedElement=(0,C.ht)(),this.focusTrap.focusInitialElementWhenReady()}}return ke.\u0275fac=function(re){return new(re||ke)(p.\u0275\u0275directiveInject(p.ElementRef),p.\u0275\u0275directiveInject(bt),p.\u0275\u0275directiveInject(n.DOCUMENT))},ke.\u0275dir=p.\u0275\u0275defineDirective({type:ke,selectors:[["","cdkTrapFocus",""]],inputs:{enabled:["cdkTrapFocus","enabled"],autoCapture:["cdkTrapFocusAutoCapture","autoCapture"]},exportAs:["cdkTrapFocus"],features:[p.\u0275\u0275NgOnChangesFeature]}),ke})();function Ce(ke){return 0===ke.buttons||0===ke.offsetX&&0===ke.offsetY}function ee(ke){const Z=ke.touches&&ke.touches[0]||ke.changedTouches&&ke.changedTouches[0];return!(!Z||-1!==Z.identifier||null!=Z.radiusX&&1!==Z.radiusX||null!=Z.radiusY&&1!==Z.radiusY)}const ae=new p.InjectionToken("cdk-input-modality-detector-options"),ie={ignoreKeys:[c.zL,c.jx,c.b2,c.MW,c.JU]},Te=(0,C.i$)({passive:!0,capture:!0});let ct=(()=>{class ke{get mostRecentModality(){return this._modality.value}constructor(re,ce,Ee,it){this._platform=re,this._mostRecentTarget=null,this._modality=new v.X(null),this._lastTouchMs=0,this._onKeydown=Rt=>{this._options?.ignoreKeys?.some(Ye=>Ye===Rt.keyCode)||(this._modality.next("keyboard"),this._mostRecentTarget=(0,C.sA)(Rt))},this._onMousedown=Rt=>{Date.now()-this._lastTouchMs<650||(this._modality.next(Ce(Rt)?"keyboard":"mouse"),this._mostRecentTarget=(0,C.sA)(Rt))},this._onTouchstart=Rt=>{ee(Rt)?this._modality.next("keyboard"):(this._lastTouchMs=Date.now(),this._modality.next("touch"),this._mostRecentTarget=(0,C.sA)(Rt))},this._options={...ie,...it},this.modalityDetected=this._modality.pipe((0,h.T)(1)),this.modalityChanged=this.modalityDetected.pipe((0,m.x)()),re.isBrowser&&ce.runOutsideAngular(()=>{Ee.addEventListener("keydown",this._onKeydown,Te),Ee.addEventListener("mousedown",this._onMousedown,Te),Ee.addEventListener("touchstart",this._onTouchstart,Te)})}ngOnDestroy(){this._modality.complete(),this._platform.isBrowser&&(document.removeEventListener("keydown",this._onKeydown,Te),document.removeEventListener("mousedown",this._onMousedown,Te),document.removeEventListener("touchstart",this._onTouchstart,Te))}}return ke.\u0275fac=function(re){return new(re||ke)(p.\u0275\u0275inject(C.t4),p.\u0275\u0275inject(p.NgZone),p.\u0275\u0275inject(n.DOCUMENT),p.\u0275\u0275inject(ae,8))},ke.\u0275prov=p.\u0275\u0275defineInjectable({token:ke,factory:ke.\u0275fac,providedIn:"root"}),ke})();const Lt=new p.InjectionToken("liveAnnouncerElement",{providedIn:"root",factory:function Dt(){return null}}),Kt=new p.InjectionToken("LIVE_ANNOUNCER_DEFAULT_OPTIONS");let ze=0,yt=(()=>{class ke{constructor(re,ce,Ee,it){this._ngZone=ce,this._defaultOptions=it,this._document=Ee,this._liveElement=re||this._createLiveElement()}announce(re,...ce){const Ee=this._defaultOptions;let it,Rt;return 1===ce.length&&"number"==typeof ce[0]?Rt=ce[0]:[it,Rt]=ce,this.clear(),clearTimeout(this._previousTimeout),it||(it=Ee&&Ee.politeness?Ee.politeness:"polite"),null==Rt&&Ee&&(Rt=Ee.duration),this._liveElement.setAttribute("aria-live",it),this._liveElement.id&&this._exposeAnnouncerToModals(this._liveElement.id),this._ngZone.runOutsideAngular(()=>(this._currentPromise||(this._currentPromise=new Promise(Ye=>this._currentResolve=Ye)),clearTimeout(this._previousTimeout),this._previousTimeout=setTimeout(()=>{this._liveElement.textContent=re,"number"==typeof Rt&&(this._previousTimeout=setTimeout(()=>this.clear(),Rt)),this._currentResolve(),this._currentPromise=this._currentResolve=void 0},100),this._currentPromise))}clear(){this._liveElement&&(this._liveElement.textContent="")}ngOnDestroy(){clearTimeout(this._previousTimeout),this._liveElement?.remove(),this._liveElement=null,this._currentResolve?.(),this._currentPromise=this._currentResolve=void 0}_createLiveElement(){const re="cdk-live-announcer-element",ce=this._document.getElementsByClassName(re),Ee=this._document.createElement("div");for(let it=0;it .cdk-overlay-container [aria-modal="true"]');for(let Ee=0;Ee{class ke{constructor(re,ce,Ee,it,Rt){this._ngZone=re,this._platform=ce,this._inputModalityDetector=Ee,this._origin=null,this._windowFocused=!1,this._originFromTouchInteraction=!1,this._elementInfo=new Map,this._monitoredElementCount=0,this._rootNodeFocusListenerCount=new Map,this._windowFocusListener=()=>{this._windowFocused=!0,this._windowFocusTimeoutId=window.setTimeout(()=>this._windowFocused=!1)},this._stopInputModalityDetector=new b.x,this._rootNodeFocusAndBlurListener=Ye=>{for(let Ne=(0,C.sA)(Ye);Ne;Ne=Ne.parentElement)"focus"===Ye.type?this._onFocus(Ye,Ne):this._onBlur(Ye,Ne)},this._document=it,this._detectionMode=Rt?.detectionMode||0}monitor(re,ce=!1){const Ee=(0,M.fI)(re);if(!this._platform.isBrowser||1!==Ee.nodeType)return(0,a.of)();const it=(0,C.kV)(Ee)||this._getDocument(),Rt=this._elementInfo.get(Ee);if(Rt)return ce&&(Rt.checkChildren=!0),Rt.subject;const Ye={checkChildren:ce,subject:new b.x,rootNode:it};return this._elementInfo.set(Ee,Ye),this._registerGlobalListeners(Ye),Ye.subject}stopMonitoring(re){const ce=(0,M.fI)(re),Ee=this._elementInfo.get(ce);Ee&&(Ee.subject.complete(),this._setClasses(ce),this._elementInfo.delete(ce),this._removeGlobalListeners(Ee))}focusVia(re,ce,Ee){const it=(0,M.fI)(re);it===this._getDocument().activeElement?this._getClosestElementsInfo(it).forEach(([Ye,qe])=>this._originChanged(Ye,ce,qe)):(this._setOrigin(ce),"function"==typeof it.focus&&it.focus(Ee))}ngOnDestroy(){this._elementInfo.forEach((re,ce)=>this.stopMonitoring(ce))}_getDocument(){return this._document||document}_getWindow(){return this._getDocument().defaultView||window}_getFocusOrigin(re){return this._origin?this._originFromTouchInteraction?this._shouldBeAttributedToTouch(re)?"touch":"program":this._origin:this._windowFocused&&this._lastFocusOrigin?this._lastFocusOrigin:re&&this._isLastInteractionFromInputLabel(re)?"mouse":"program"}_shouldBeAttributedToTouch(re){return 1===this._detectionMode||!!re?.contains(this._inputModalityDetector._mostRecentTarget)}_setClasses(re,ce){re.classList.toggle("cdk-focused",!!ce),re.classList.toggle("cdk-touch-focused","touch"===ce),re.classList.toggle("cdk-keyboard-focused","keyboard"===ce),re.classList.toggle("cdk-mouse-focused","mouse"===ce),re.classList.toggle("cdk-program-focused","program"===ce)}_setOrigin(re,ce=!1){this._ngZone.runOutsideAngular(()=>{this._origin=re,this._originFromTouchInteraction="touch"===re&&ce,0===this._detectionMode&&(clearTimeout(this._originTimeoutId),this._originTimeoutId=setTimeout(()=>this._origin=null,this._originFromTouchInteraction?650:1))})}_onFocus(re,ce){const Ee=this._elementInfo.get(ce),it=(0,C.sA)(re);!Ee||!Ee.checkChildren&&ce!==it||this._originChanged(ce,this._getFocusOrigin(it),Ee)}_onBlur(re,ce){const Ee=this._elementInfo.get(ce);!Ee||Ee.checkChildren&&re.relatedTarget instanceof Node&&ce.contains(re.relatedTarget)||(this._setClasses(ce),this._emitOrigin(Ee,null))}_emitOrigin(re,ce){re.subject.observers.length&&this._ngZone.run(()=>re.subject.next(ce))}_registerGlobalListeners(re){if(!this._platform.isBrowser)return;const ce=re.rootNode,Ee=this._rootNodeFocusListenerCount.get(ce)||0;Ee||this._ngZone.runOutsideAngular(()=>{ce.addEventListener("focus",this._rootNodeFocusAndBlurListener,Yt),ce.addEventListener("blur",this._rootNodeFocusAndBlurListener,Yt)}),this._rootNodeFocusListenerCount.set(ce,Ee+1),1==++this._monitoredElementCount&&(this._ngZone.runOutsideAngular(()=>{this._getWindow().addEventListener("focus",this._windowFocusListener)}),this._inputModalityDetector.modalityDetected.pipe((0,_.R)(this._stopInputModalityDetector)).subscribe(it=>{this._setOrigin(it,!0)}))}_removeGlobalListeners(re){const ce=re.rootNode;if(this._rootNodeFocusListenerCount.has(ce)){const Ee=this._rootNodeFocusListenerCount.get(ce);Ee>1?this._rootNodeFocusListenerCount.set(ce,Ee-1):(ce.removeEventListener("focus",this._rootNodeFocusAndBlurListener,Yt),ce.removeEventListener("blur",this._rootNodeFocusAndBlurListener,Yt),this._rootNodeFocusListenerCount.delete(ce))}--this._monitoredElementCount||(this._getWindow().removeEventListener("focus",this._windowFocusListener),this._stopInputModalityDetector.next(),clearTimeout(this._windowFocusTimeoutId),clearTimeout(this._originTimeoutId))}_originChanged(re,ce,Ee){this._setClasses(re,ce),this._emitOrigin(Ee,ce),this._lastFocusOrigin=ce}_getClosestElementsInfo(re){const ce=[];return this._elementInfo.forEach((Ee,it)=>{(it===re||Ee.checkChildren&&it.contains(re))&&ce.push([it,Ee])}),ce}_isLastInteractionFromInputLabel(re){const{_mostRecentTarget:ce,mostRecentModality:Ee}=this._inputModalityDetector;if("mouse"!==Ee||!ce||ce===re||"INPUT"!==re.nodeName&&"TEXTAREA"!==re.nodeName||re.disabled)return!1;const it=re.labels;if(it)for(let Rt=0;Rt{class ke{constructor(re,ce){this._elementRef=re,this._focusMonitor=ce,this._focusOrigin=null,this.cdkFocusChange=new p.EventEmitter}get focusOrigin(){return this._focusOrigin}ngAfterViewInit(){const re=this._elementRef.nativeElement;this._monitorSubscription=this._focusMonitor.monitor(re,1===re.nodeType&&re.hasAttribute("cdkMonitorSubtreeFocus")).subscribe(ce=>{this._focusOrigin=ce,this.cdkFocusChange.emit(ce)})}ngOnDestroy(){this._focusMonitor.stopMonitoring(this._elementRef),this._monitorSubscription&&this._monitorSubscription.unsubscribe()}}return ke.\u0275fac=function(re){return new(re||ke)(p.\u0275\u0275directiveInject(p.ElementRef),p.\u0275\u0275directiveInject(Ue))},ke.\u0275dir=p.\u0275\u0275defineDirective({type:ke,selectors:[["","cdkMonitorElementFocus",""],["","cdkMonitorSubtreeFocus",""]],outputs:{cdkFocusChange:"cdkFocusChange"},exportAs:["cdkMonitorFocus"]}),ke})();const ve="cdk-high-contrast-black-on-white",we="cdk-high-contrast-white-on-black",at="cdk-high-contrast-active";let De=(()=>{class ke{constructor(re,ce){this._platform=re,this._document=ce,this._breakpointSubscription=(0,p.inject)(w.Yg).observe("(forced-colors: active)").subscribe(()=>{this._hasCheckedHighContrastMode&&(this._hasCheckedHighContrastMode=!1,this._applyBodyHighContrastModeCssClasses())})}getHighContrastMode(){if(!this._platform.isBrowser)return 0;const re=this._document.createElement("div");re.style.backgroundColor="rgb(1,2,3)",re.style.position="absolute",this._document.body.appendChild(re);const ce=this._document.defaultView||window,Ee=ce&&ce.getComputedStyle?ce.getComputedStyle(re):null,it=(Ee&&Ee.backgroundColor||"").replace(/ /g,"");switch(re.remove(),it){case"rgb(0,0,0)":case"rgb(45,50,54)":case"rgb(32,32,32)":return 2;case"rgb(255,255,255)":case"rgb(255,250,239)":return 1}return 0}ngOnDestroy(){this._breakpointSubscription.unsubscribe()}_applyBodyHighContrastModeCssClasses(){if(!this._hasCheckedHighContrastMode&&this._platform.isBrowser&&this._document.body){const re=this._document.body.classList;re.remove(at,ve,we),this._hasCheckedHighContrastMode=!0;const ce=this.getHighContrastMode();1===ce?re.add(at,ve):2===ce&&re.add(at,we)}}}return ke.\u0275fac=function(re){return new(re||ke)(p.\u0275\u0275inject(C.t4),p.\u0275\u0275inject(n.DOCUMENT))},ke.\u0275prov=p.\u0275\u0275defineInjectable({token:ke,factory:ke.\u0275fac,providedIn:"root"}),ke})(),je=(()=>{class ke{constructor(re){re._applyBodyHighContrastModeCssClasses()}}return ke.\u0275fac=function(re){return new(re||ke)(p.\u0275\u0275inject(De))},ke.\u0275mod=p.\u0275\u0275defineNgModule({type:ke}),ke.\u0275inj=p.\u0275\u0275defineInjector({imports:[x.Q8]}),ke})()},9388:(Se,X,g)=>{"use strict";g.d(X,{Is:()=>a,vT:()=>s});var n=g(5879),p=g(6814);const C=new n.InjectionToken("cdk-dir-doc",{providedIn:"root",factory:function b(){return(0,n.inject)(p.DOCUMENT)}}),o=/^(ar|ckb|dv|he|iw|fa|nqo|ps|sd|ug|ur|yi|.*[-_](Adlm|Arab|Hebr|Nkoo|Rohg|Thaa))(?!.*[-_](Latn|Cyrl)($|-|_))($|-|_)/i;let a=(()=>{class l{constructor(r){this.value="ltr",this.change=new n.EventEmitter,r&&(this.value=function v(l){const d=l?.toLowerCase()||"";return"auto"===d&&typeof navigator<"u"&&navigator?.language?o.test(navigator.language)?"rtl":"ltr":"rtl"===d?"rtl":"ltr"}((r.body?r.body.dir:null)||(r.documentElement?r.documentElement.dir:null)||"ltr"))}ngOnDestroy(){this.change.complete()}}return l.\u0275fac=function(r){return new(r||l)(n.\u0275\u0275inject(C,8))},l.\u0275prov=n.\u0275\u0275defineInjectable({token:l,factory:l.\u0275fac,providedIn:"root"}),l})(),s=(()=>{class l{}return l.\u0275fac=function(r){return new(r||l)},l.\u0275mod=n.\u0275\u0275defineNgModule({type:l}),l.\u0275inj=n.\u0275\u0275defineInjector({}),l})()},2495:(Se,X,g)=>{"use strict";g.d(X,{Eq:()=>o,HM:()=>v,Ig:()=>p,du:()=>c,fI:()=>a,su:()=>C,t6:()=>b});var n=g(5879);function p(s){return null!=s&&"false"!=`${s}`}function C(s,l=0){return b(s)?Number(s):l}function b(s){return!isNaN(parseFloat(s))&&!isNaN(Number(s))}function o(s){return Array.isArray(s)?s:[s]}function v(s){return null==s?"":"string"==typeof s?s:`${s}px`}function a(s){return s instanceof n.ElementRef?s.nativeElement:s}function c(s,l=/\s+/){const d=[];if(null!=s){const r=Array.isArray(s)?s:`${s}`.split(l);for(const u of r){const h=`${u}`.trim();h&&d.push(h)}}return d}},8337:(Se,X,g)=>{"use strict";g.d(X,{A8:()=>d,Ov:()=>s,Z9:()=>o,eX:()=>c,k:()=>r,o2:()=>b,yy:()=>a});var n=g(3168),p=g(8645),C=g(5879);class b{}function o(u){return u&&"function"==typeof u.connect&&!(u instanceof n.c)}class a{applyChanges(h,m,_,M,x){h.forEachOperation((w,L,A)=>{let T,O;if(null==w.previousIndex){const E=_(w,L,A);T=m.createEmbeddedView(E.templateRef,E.context,E.index),O=1}else null==A?(m.remove(L),O=3):(T=m.get(L),m.move(T,A),O=2);x&&x({context:T?.context,operation:O,record:w})})}detach(){}}class c{constructor(){this.viewCacheSize=20,this._viewCache=[]}applyChanges(h,m,_,M,x){h.forEachOperation((w,L,A)=>{let T,O;null==w.previousIndex?(T=this._insertView(()=>_(w,L,A),A,m,M(w)),O=T?1:0):null==A?(this._detachAndCacheView(L,m),O=3):(T=this._moveView(L,A,m,M(w)),O=2),x&&x({context:T?.context,operation:O,record:w})})}detach(){for(const h of this._viewCache)h.destroy();this._viewCache=[]}_insertView(h,m,_,M){const x=this._insertViewFromCache(m,_);if(x)return void(x.context.$implicit=M);const w=h();return _.createEmbeddedView(w.templateRef,w.context,w.index)}_detachAndCacheView(h,m){const _=m.detach(h);this._maybeCacheView(_,m)}_moveView(h,m,_,M){const x=_.get(h);return _.move(x,m),x.context.$implicit=M,x}_maybeCacheView(h,m){if(this._viewCache.lengththis._markSelected(x)):this._markSelected(m[0]),this._selectedToEmit.length=0)}select(...h){this._verifyValueAssignment(h),h.forEach(_=>this._markSelected(_));const m=this._hasQueuedChanges();return this._emitChangeEvent(),m}deselect(...h){this._verifyValueAssignment(h),h.forEach(_=>this._unmarkSelected(_));const m=this._hasQueuedChanges();return this._emitChangeEvent(),m}setSelection(...h){this._verifyValueAssignment(h);const m=this.selected,_=new Set(h);h.forEach(x=>this._markSelected(x)),m.filter(x=>!_.has(x)).forEach(x=>this._unmarkSelected(x));const M=this._hasQueuedChanges();return this._emitChangeEvent(),M}toggle(h){return this.isSelected(h)?this.deselect(h):this.select(h)}clear(h=!0){this._unmarkAll();const m=this._hasQueuedChanges();return h&&this._emitChangeEvent(),m}isSelected(h){return this._selection.has(this._getConcreteValue(h))}isEmpty(){return 0===this._selection.size}hasValue(){return!this.isEmpty()}sort(h){this._multiple&&this.selected&&this._selected.sort(h)}isMultipleSelection(){return this._multiple}_emitChangeEvent(){this._selected=null,(this._selectedToEmit.length||this._deselectedToEmit.length)&&(this.changed.next({source:this,added:this._selectedToEmit,removed:this._deselectedToEmit}),this._deselectedToEmit=[],this._selectedToEmit=[])}_markSelected(h){h=this._getConcreteValue(h),this.isSelected(h)||(this._multiple||this._unmarkAll(),this.isSelected(h)||this._selection.add(h),this._emitChanges&&this._selectedToEmit.push(h))}_unmarkSelected(h){h=this._getConcreteValue(h),this.isSelected(h)&&(this._selection.delete(h),this._emitChanges&&this._deselectedToEmit.push(h))}_unmarkAll(){this.isEmpty()||this._selection.forEach(h=>this._unmarkSelected(h))}_verifyValueAssignment(h){}_hasQueuedChanges(){return!(!this._deselectedToEmit.length&&!this._selectedToEmit.length)}_getConcreteValue(h){if(this.compareWith){for(let m of this._selection)if(this.compareWith(h,m))return m;return h}return h}}let d=(()=>{class u{constructor(){this._listeners=[]}notify(m,_){for(let M of this._listeners)M(m,_)}listen(m){return this._listeners.push(m),()=>{this._listeners=this._listeners.filter(_=>m!==_)}}ngOnDestroy(){this._listeners=[]}}return u.\u0275fac=function(m){return new(m||u)},u.\u0275prov=C.\u0275\u0275defineInjectable({token:u,factory:u.\u0275fac,providedIn:"root"}),u})();const r=new C.InjectionToken("_ViewRepeater")},6028:(Se,X,g)=>{"use strict";g.d(X,{A:()=>ue,JH:()=>L,JU:()=>v,K5:()=>o,Ku:()=>u,LH:()=>x,L_:()=>r,MW:()=>Kt,Mf:()=>C,SV:()=>w,Sd:()=>_,VM:()=>h,Vb:()=>oi,Z:()=>Dt,ZH:()=>p,aO:()=>ne,b2:()=>Ii,hY:()=>d,jx:()=>a,oh:()=>M,uR:()=>m,xE:()=>D,zL:()=>c});const p=8,C=9,o=13,v=16,a=17,c=18,d=27,r=32,u=33,h=34,m=35,_=36,M=37,x=38,w=39,L=40,D=48,ne=57,ue=65,Dt=90,Kt=91,Ii=224;function oi(li,...Pi){return Pi.length?Pi.some(Ct=>li[Ct]):li.altKey||li.shiftKey||li.ctrlKey||li.metaKey}},1088:(Se,X,g)=>{"use strict";g.d(X,{Yg:()=>L,u3:()=>T});var n=g(5879),p=g(2495),C=g(8645),b=g(2572),o=g(34),v=g(5592),a=g(8180),c=g(836),s=g(3620),l=g(7398),d=g(7921),r=g(9773),u=g(2831);const m=new Set;let _,M=(()=>{class O{constructor(D,R){this._platform=D,this._nonce=R,this._matchMedia=this._platform.isBrowser&&window.matchMedia?window.matchMedia.bind(window):w}matchMedia(D){return(this._platform.WEBKIT||this._platform.BLINK)&&function x(O,E){if(!m.has(O))try{_||(_=document.createElement("style"),E&&(_.nonce=E),_.setAttribute("type","text/css"),document.head.appendChild(_)),_.sheet&&(_.sheet.insertRule(`@media ${O} {body{ }}`,0),m.add(O))}catch(D){console.error(D)}}(D,this._nonce),this._matchMedia(D)}}return O.\u0275fac=function(D){return new(D||O)(n.\u0275\u0275inject(u.t4),n.\u0275\u0275inject(n.CSP_NONCE,8))},O.\u0275prov=n.\u0275\u0275defineInjectable({token:O,factory:O.\u0275fac,providedIn:"root"}),O})();function w(O){return{matches:"all"===O||""===O,media:O,addListener:()=>{},removeListener:()=>{}}}let L=(()=>{class O{constructor(D,R){this._mediaMatcher=D,this._zone=R,this._queries=new Map,this._destroySubject=new C.x}ngOnDestroy(){this._destroySubject.next(),this._destroySubject.complete()}isMatched(D){return A((0,p.Eq)(D)).some(j=>this._registerQuery(j).mql.matches)}observe(D){const j=A((0,p.Eq)(D)).map(S=>this._registerQuery(S).observable);let N=(0,b.a)(j);return N=(0,o.z)(N.pipe((0,a.q)(1)),N.pipe((0,c.T)(1),(0,s.b)(0))),N.pipe((0,l.U)(S=>{const k={matches:!1,breakpoints:{}};return S.forEach(({matches:F,query:Y})=>{k.matches=k.matches||F,k.breakpoints[Y]=F}),k}))}_registerQuery(D){if(this._queries.has(D))return this._queries.get(D);const R=this._mediaMatcher.matchMedia(D),N={observable:new v.y(S=>{const k=F=>this._zone.run(()=>S.next(F));return R.addListener(k),()=>{R.removeListener(k)}}).pipe((0,d.O)(R),(0,l.U)(({matches:S})=>({query:D,matches:S})),(0,r.R)(this._destroySubject)),mql:R};return this._queries.set(D,N),N}}return O.\u0275fac=function(D){return new(D||O)(n.\u0275\u0275inject(M),n.\u0275\u0275inject(n.NgZone))},O.\u0275prov=n.\u0275\u0275defineInjectable({token:O,factory:O.\u0275fac,providedIn:"root"}),O})();function A(O){return O.map(E=>E.split(",")).reduce((E,D)=>E.concat(D)).map(E=>E.trim())}const T={XSmall:"(max-width: 599.98px)",Small:"(min-width: 600px) and (max-width: 959.98px)",Medium:"(min-width: 960px) and (max-width: 1279.98px)",Large:"(min-width: 1280px) and (max-width: 1919.98px)",XLarge:"(min-width: 1920px)",Handset:"(max-width: 599.98px) and (orientation: portrait), (max-width: 959.98px) and (orientation: landscape)",Tablet:"(min-width: 600px) and (max-width: 839.98px) and (orientation: portrait), (min-width: 960px) and (max-width: 1279.98px) and (orientation: landscape)",Web:"(min-width: 840px) and (orientation: portrait), (min-width: 1280px) and (orientation: landscape)",HandsetPortrait:"(max-width: 599.98px) and (orientation: portrait)",TabletPortrait:"(min-width: 600px) and (max-width: 839.98px) and (orientation: portrait)",WebPortrait:"(min-width: 840px) and (orientation: portrait)",HandsetLandscape:"(max-width: 959.98px) and (orientation: landscape)",TabletLandscape:"(min-width: 960px) and (max-width: 1279.98px) and (orientation: landscape)",WebLandscape:"(min-width: 1280px) and (orientation: landscape)"}},7131:(Se,X,g)=>{"use strict";g.d(X,{Q8:()=>s,wD:()=>c});var n=g(2495),p=g(5879),C=g(5592),b=g(8645),o=g(3620);let v=(()=>{class l{create(r){return typeof MutationObserver>"u"?null:new MutationObserver(r)}}return l.\u0275fac=function(r){return new(r||l)},l.\u0275prov=p.\u0275\u0275defineInjectable({token:l,factory:l.\u0275fac,providedIn:"root"}),l})(),a=(()=>{class l{constructor(r){this._mutationObserverFactory=r,this._observedElements=new Map}ngOnDestroy(){this._observedElements.forEach((r,u)=>this._cleanupObserver(u))}observe(r){const u=(0,n.fI)(r);return new C.y(h=>{const _=this._observeElement(u).subscribe(h);return()=>{_.unsubscribe(),this._unobserveElement(u)}})}_observeElement(r){if(this._observedElements.has(r))this._observedElements.get(r).count++;else{const u=new b.x,h=this._mutationObserverFactory.create(m=>u.next(m));h&&h.observe(r,{characterData:!0,childList:!0,subtree:!0}),this._observedElements.set(r,{observer:h,stream:u,count:1})}return this._observedElements.get(r).stream}_unobserveElement(r){this._observedElements.has(r)&&(this._observedElements.get(r).count--,this._observedElements.get(r).count||this._cleanupObserver(r))}_cleanupObserver(r){if(this._observedElements.has(r)){const{observer:u,stream:h}=this._observedElements.get(r);u&&u.disconnect(),h.complete(),this._observedElements.delete(r)}}}return l.\u0275fac=function(r){return new(r||l)(p.\u0275\u0275inject(v))},l.\u0275prov=p.\u0275\u0275defineInjectable({token:l,factory:l.\u0275fac,providedIn:"root"}),l})(),c=(()=>{class l{get disabled(){return this._disabled}set disabled(r){this._disabled=(0,n.Ig)(r),this._disabled?this._unsubscribe():this._subscribe()}get debounce(){return this._debounce}set debounce(r){this._debounce=(0,n.su)(r),this._subscribe()}constructor(r,u,h){this._contentObserver=r,this._elementRef=u,this._ngZone=h,this.event=new p.EventEmitter,this._disabled=!1,this._currentSubscription=null}ngAfterContentInit(){!this._currentSubscription&&!this.disabled&&this._subscribe()}ngOnDestroy(){this._unsubscribe()}_subscribe(){this._unsubscribe();const r=this._contentObserver.observe(this._elementRef);this._ngZone.runOutsideAngular(()=>{this._currentSubscription=(this.debounce?r.pipe((0,o.b)(this.debounce)):r).subscribe(this.event)})}_unsubscribe(){this._currentSubscription?.unsubscribe()}}return l.\u0275fac=function(r){return new(r||l)(p.\u0275\u0275directiveInject(a),p.\u0275\u0275directiveInject(p.ElementRef),p.\u0275\u0275directiveInject(p.NgZone))},l.\u0275dir=p.\u0275\u0275defineDirective({type:l,selectors:[["","cdkObserveContent",""]],inputs:{disabled:["cdkObserveContentDisabled","disabled"],debounce:"debounce"},outputs:{event:"cdkObserveContent"},exportAs:["cdkObserveContent"]}),l})(),s=(()=>{class l{}return l.\u0275fac=function(r){return new(r||l)},l.\u0275mod=p.\u0275\u0275defineNgModule({type:l}),l.\u0275inj=p.\u0275\u0275defineInjector({providers:[v]}),l})()},9594:(Se,X,g)=>{"use strict";g.d(X,{U8:()=>J,X_:()=>D,_G:()=>Q,aV:()=>St,pI:()=>ot,xu:()=>nt});var n=g(6672),p=g(6814),C=g(5879),b=g(2495),o=g(2831),v=g(2181),a=g(8180),c=g(9773),s=g(812),l=g(9388),d=g(8484),r=g(8645),u=g(7394),h=g(3019),m=g(6028);const _=(0,o.Mq)();class M{constructor(ae,ie){this._viewportRuler=ae,this._previousHTMLStyles={top:"",left:""},this._isEnabled=!1,this._document=ie}attach(){}enable(){if(this._canBeEnabled()){const ae=this._document.documentElement;this._previousScrollPosition=this._viewportRuler.getViewportScrollPosition(),this._previousHTMLStyles.left=ae.style.left||"",this._previousHTMLStyles.top=ae.style.top||"",ae.style.left=(0,b.HM)(-this._previousScrollPosition.left),ae.style.top=(0,b.HM)(-this._previousScrollPosition.top),ae.classList.add("cdk-global-scrollblock"),this._isEnabled=!0}}disable(){if(this._isEnabled){const ae=this._document.documentElement,pe=ae.style,Te=this._document.body.style,ct=pe.scrollBehavior||"",Lt=Te.scrollBehavior||"";this._isEnabled=!1,pe.left=this._previousHTMLStyles.left,pe.top=this._previousHTMLStyles.top,ae.classList.remove("cdk-global-scrollblock"),_&&(pe.scrollBehavior=Te.scrollBehavior="auto"),window.scroll(this._previousScrollPosition.left,this._previousScrollPosition.top),_&&(pe.scrollBehavior=ct,Te.scrollBehavior=Lt)}}_canBeEnabled(){if(this._document.documentElement.classList.contains("cdk-global-scrollblock")||this._isEnabled)return!1;const ie=this._document.body,pe=this._viewportRuler.getViewportSize();return ie.scrollHeight>pe.height||ie.scrollWidth>pe.width}}class w{constructor(ae,ie,pe,Te){this._scrollDispatcher=ae,this._ngZone=ie,this._viewportRuler=pe,this._config=Te,this._scrollSubscription=null,this._detach=()=>{this.disable(),this._overlayRef.hasAttached()&&this._ngZone.run(()=>this._overlayRef.detach())}}attach(ae){this._overlayRef=ae}enable(){if(this._scrollSubscription)return;const ae=this._scrollDispatcher.scrolled(0).pipe((0,v.h)(ie=>!ie||!this._overlayRef.overlayElement.contains(ie.getElementRef().nativeElement)));this._config&&this._config.threshold&&this._config.threshold>1?(this._initialScrollPosition=this._viewportRuler.getViewportScrollPosition().top,this._scrollSubscription=ae.subscribe(()=>{const ie=this._viewportRuler.getViewportScrollPosition().top;Math.abs(ie-this._initialScrollPosition)>this._config.threshold?this._detach():this._overlayRef.updatePosition()})):this._scrollSubscription=ae.subscribe(this._detach)}disable(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}detach(){this.disable(),this._overlayRef=null}}class L{enable(){}disable(){}attach(){}}function A(ee,ae){return ae.some(ie=>ee.bottomie.bottom||ee.rightie.right)}function T(ee,ae){return ae.some(ie=>ee.topie.bottom||ee.leftie.right)}class O{constructor(ae,ie,pe,Te){this._scrollDispatcher=ae,this._viewportRuler=ie,this._ngZone=pe,this._config=Te,this._scrollSubscription=null}attach(ae){this._overlayRef=ae}enable(){this._scrollSubscription||(this._scrollSubscription=this._scrollDispatcher.scrolled(this._config?this._config.scrollThrottle:0).subscribe(()=>{if(this._overlayRef.updatePosition(),this._config&&this._config.autoClose){const ie=this._overlayRef.overlayElement.getBoundingClientRect(),{width:pe,height:Te}=this._viewportRuler.getViewportSize();A(ie,[{width:pe,height:Te,bottom:Te,right:pe,top:0,left:0}])&&(this.disable(),this._ngZone.run(()=>this._overlayRef.detach()))}}))}disable(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}detach(){this.disable(),this._overlayRef=null}}let E=(()=>{class ee{constructor(ie,pe,Te,ct){this._scrollDispatcher=ie,this._viewportRuler=pe,this._ngZone=Te,this.noop=()=>new L,this.close=Lt=>new w(this._scrollDispatcher,this._ngZone,this._viewportRuler,Lt),this.block=()=>new M(this._viewportRuler,this._document),this.reposition=Lt=>new O(this._scrollDispatcher,this._viewportRuler,this._ngZone,Lt),this._document=ct}}return ee.\u0275fac=function(ie){return new(ie||ee)(C.\u0275\u0275inject(n.mF),C.\u0275\u0275inject(n.rL),C.\u0275\u0275inject(C.NgZone),C.\u0275\u0275inject(p.DOCUMENT))},ee.\u0275prov=C.\u0275\u0275defineInjectable({token:ee,factory:ee.\u0275fac,providedIn:"root"}),ee})();class D{constructor(ae){if(this.scrollStrategy=new L,this.panelClass="",this.hasBackdrop=!1,this.backdropClass="cdk-overlay-dark-backdrop",this.disposeOnNavigation=!1,ae){const ie=Object.keys(ae);for(const pe of ie)void 0!==ae[pe]&&(this[pe]=ae[pe])}}}class N{constructor(ae,ie){this.connectionPair=ae,this.scrollableViewProperties=ie}}let F=(()=>{class ee{constructor(ie){this._attachedOverlays=[],this._document=ie}ngOnDestroy(){this.detach()}add(ie){this.remove(ie),this._attachedOverlays.push(ie)}remove(ie){const pe=this._attachedOverlays.indexOf(ie);pe>-1&&this._attachedOverlays.splice(pe,1),0===this._attachedOverlays.length&&this.detach()}}return ee.\u0275fac=function(ie){return new(ie||ee)(C.\u0275\u0275inject(p.DOCUMENT))},ee.\u0275prov=C.\u0275\u0275defineInjectable({token:ee,factory:ee.\u0275fac,providedIn:"root"}),ee})(),Y=(()=>{class ee extends F{constructor(ie,pe){super(ie),this._ngZone=pe,this._keydownListener=Te=>{const ct=this._attachedOverlays;for(let Lt=ct.length-1;Lt>-1;Lt--)if(ct[Lt]._keydownEvents.observers.length>0){const Dt=ct[Lt]._keydownEvents;this._ngZone?this._ngZone.run(()=>Dt.next(Te)):Dt.next(Te);break}}}add(ie){super.add(ie),this._isAttached||(this._ngZone?this._ngZone.runOutsideAngular(()=>this._document.body.addEventListener("keydown",this._keydownListener)):this._document.body.addEventListener("keydown",this._keydownListener),this._isAttached=!0)}detach(){this._isAttached&&(this._document.body.removeEventListener("keydown",this._keydownListener),this._isAttached=!1)}}return ee.\u0275fac=function(ie){return new(ie||ee)(C.\u0275\u0275inject(p.DOCUMENT),C.\u0275\u0275inject(C.NgZone,8))},ee.\u0275prov=C.\u0275\u0275defineInjectable({token:ee,factory:ee.\u0275fac,providedIn:"root"}),ee})(),se=(()=>{class ee extends F{constructor(ie,pe,Te){super(ie),this._platform=pe,this._ngZone=Te,this._cursorStyleIsSet=!1,this._pointerDownListener=ct=>{this._pointerDownEventTarget=(0,o.sA)(ct)},this._clickListener=ct=>{const Lt=(0,o.sA)(ct),Dt="click"===ct.type&&this._pointerDownEventTarget?this._pointerDownEventTarget:Lt;this._pointerDownEventTarget=null;const Kt=this._attachedOverlays.slice();for(let ze=Kt.length-1;ze>-1;ze--){const yt=Kt[ze];if(yt._outsidePointerEvents.observers.length<1||!yt.hasAttached())continue;if(yt.overlayElement.contains(Lt)||yt.overlayElement.contains(Dt))break;const Bt=yt._outsidePointerEvents;this._ngZone?this._ngZone.run(()=>Bt.next(ct)):Bt.next(ct)}}}add(ie){if(super.add(ie),!this._isAttached){const pe=this._document.body;this._ngZone?this._ngZone.runOutsideAngular(()=>this._addEventListeners(pe)):this._addEventListeners(pe),this._platform.IOS&&!this._cursorStyleIsSet&&(this._cursorOriginalValue=pe.style.cursor,pe.style.cursor="pointer",this._cursorStyleIsSet=!0),this._isAttached=!0}}detach(){if(this._isAttached){const ie=this._document.body;ie.removeEventListener("pointerdown",this._pointerDownListener,!0),ie.removeEventListener("click",this._clickListener,!0),ie.removeEventListener("auxclick",this._clickListener,!0),ie.removeEventListener("contextmenu",this._clickListener,!0),this._platform.IOS&&this._cursorStyleIsSet&&(ie.style.cursor=this._cursorOriginalValue,this._cursorStyleIsSet=!1),this._isAttached=!1}}_addEventListeners(ie){ie.addEventListener("pointerdown",this._pointerDownListener,!0),ie.addEventListener("click",this._clickListener,!0),ie.addEventListener("auxclick",this._clickListener,!0),ie.addEventListener("contextmenu",this._clickListener,!0)}}return ee.\u0275fac=function(ie){return new(ie||ee)(C.\u0275\u0275inject(p.DOCUMENT),C.\u0275\u0275inject(o.t4),C.\u0275\u0275inject(C.NgZone,8))},ee.\u0275prov=C.\u0275\u0275defineInjectable({token:ee,factory:ee.\u0275fac,providedIn:"root"}),ee})(),ne=(()=>{class ee{constructor(ie,pe){this._platform=pe,this._document=ie}ngOnDestroy(){this._containerElement?.remove()}getContainerElement(){return this._containerElement||this._createContainer(),this._containerElement}_createContainer(){const ie="cdk-overlay-container";if(this._platform.isBrowser||(0,o.Oy)()){const Te=this._document.querySelectorAll(`.${ie}[platform="server"], .${ie}[platform="test"]`);for(let ct=0;ctthis._backdropClick.next(Bt),this._backdropTransitionendHandler=Bt=>{this._disposeBackdrop(Bt.target)},this._keydownEvents=new r.x,this._outsidePointerEvents=new r.x,Te.scrollStrategy&&(this._scrollStrategy=Te.scrollStrategy,this._scrollStrategy.attach(this)),this._positionStrategy=Te.positionStrategy}get overlayElement(){return this._pane}get backdropElement(){return this._backdropElement}get hostElement(){return this._host}attach(ae){!this._host.parentElement&&this._previousHostParent&&this._previousHostParent.appendChild(this._host);const ie=this._portalOutlet.attach(ae);return this._positionStrategy&&this._positionStrategy.attach(this),this._updateStackingOrder(),this._updateElementSize(),this._updateElementDirection(),this._scrollStrategy&&this._scrollStrategy.enable(),this._ngZone.onStable.pipe((0,a.q)(1)).subscribe(()=>{this.hasAttached()&&this.updatePosition()}),this._togglePointerEvents(!0),this._config.hasBackdrop&&this._attachBackdrop(),this._config.panelClass&&this._toggleClasses(this._pane,this._config.panelClass,!0),this._attachments.next(),this._keyboardDispatcher.add(this),this._config.disposeOnNavigation&&(this._locationChanges=this._location.subscribe(()=>this.dispose())),this._outsideClickDispatcher.add(this),"function"==typeof ie?.onDestroy&&ie.onDestroy(()=>{this.hasAttached()&&this._ngZone.runOutsideAngular(()=>Promise.resolve().then(()=>this.detach()))}),ie}detach(){if(!this.hasAttached())return;this.detachBackdrop(),this._togglePointerEvents(!1),this._positionStrategy&&this._positionStrategy.detach&&this._positionStrategy.detach(),this._scrollStrategy&&this._scrollStrategy.disable();const ae=this._portalOutlet.detach();return this._detachments.next(),this._keyboardDispatcher.remove(this),this._detachContentWhenStable(),this._locationChanges.unsubscribe(),this._outsideClickDispatcher.remove(this),ae}dispose(){const ae=this.hasAttached();this._positionStrategy&&this._positionStrategy.dispose(),this._disposeScrollStrategy(),this._disposeBackdrop(this._backdropElement),this._locationChanges.unsubscribe(),this._keyboardDispatcher.remove(this),this._portalOutlet.dispose(),this._attachments.complete(),this._backdropClick.complete(),this._keydownEvents.complete(),this._outsidePointerEvents.complete(),this._outsideClickDispatcher.remove(this),this._host?.remove(),this._previousHostParent=this._pane=this._host=null,ae&&this._detachments.next(),this._detachments.complete()}hasAttached(){return this._portalOutlet.hasAttached()}backdropClick(){return this._backdropClick}attachments(){return this._attachments}detachments(){return this._detachments}keydownEvents(){return this._keydownEvents}outsidePointerEvents(){return this._outsidePointerEvents}getConfig(){return this._config}updatePosition(){this._positionStrategy&&this._positionStrategy.apply()}updatePositionStrategy(ae){ae!==this._positionStrategy&&(this._positionStrategy&&this._positionStrategy.dispose(),this._positionStrategy=ae,this.hasAttached()&&(ae.attach(this),this.updatePosition()))}updateSize(ae){this._config={...this._config,...ae},this._updateElementSize()}setDirection(ae){this._config={...this._config,direction:ae},this._updateElementDirection()}addPanelClass(ae){this._pane&&this._toggleClasses(this._pane,ae,!0)}removePanelClass(ae){this._pane&&this._toggleClasses(this._pane,ae,!1)}getDirection(){const ae=this._config.direction;return ae?"string"==typeof ae?ae:ae.value:"ltr"}updateScrollStrategy(ae){ae!==this._scrollStrategy&&(this._disposeScrollStrategy(),this._scrollStrategy=ae,this.hasAttached()&&(ae.attach(this),ae.enable()))}_updateElementDirection(){this._host.setAttribute("dir",this.getDirection())}_updateElementSize(){if(!this._pane)return;const ae=this._pane.style;ae.width=(0,b.HM)(this._config.width),ae.height=(0,b.HM)(this._config.height),ae.minWidth=(0,b.HM)(this._config.minWidth),ae.minHeight=(0,b.HM)(this._config.minHeight),ae.maxWidth=(0,b.HM)(this._config.maxWidth),ae.maxHeight=(0,b.HM)(this._config.maxHeight)}_togglePointerEvents(ae){this._pane.style.pointerEvents=ae?"":"none"}_attachBackdrop(){const ae="cdk-overlay-backdrop-showing";this._backdropElement=this._document.createElement("div"),this._backdropElement.classList.add("cdk-overlay-backdrop"),this._animationsDisabled&&this._backdropElement.classList.add("cdk-overlay-backdrop-noop-animation"),this._config.backdropClass&&this._toggleClasses(this._backdropElement,this._config.backdropClass,!0),this._host.parentElement.insertBefore(this._backdropElement,this._host),this._backdropElement.addEventListener("click",this._backdropClickHandler),!this._animationsDisabled&&typeof requestAnimationFrame<"u"?this._ngZone.runOutsideAngular(()=>{requestAnimationFrame(()=>{this._backdropElement&&this._backdropElement.classList.add(ae)})}):this._backdropElement.classList.add(ae)}_updateStackingOrder(){this._host.nextSibling&&this._host.parentNode.appendChild(this._host)}detachBackdrop(){const ae=this._backdropElement;if(ae){if(this._animationsDisabled)return void this._disposeBackdrop(ae);ae.classList.remove("cdk-overlay-backdrop-showing"),this._ngZone.runOutsideAngular(()=>{ae.addEventListener("transitionend",this._backdropTransitionendHandler)}),ae.style.pointerEvents="none",this._backdropTimeout=this._ngZone.runOutsideAngular(()=>setTimeout(()=>{this._disposeBackdrop(ae)},500))}}_toggleClasses(ae,ie,pe){const Te=(0,b.Eq)(ie||[]).filter(ct=>!!ct);Te.length&&(pe?ae.classList.add(...Te):ae.classList.remove(...Te))}_detachContentWhenStable(){this._ngZone.runOutsideAngular(()=>{const ae=this._ngZone.onStable.pipe((0,c.R)((0,h.T)(this._attachments,this._detachments))).subscribe(()=>{(!this._pane||!this._host||0===this._pane.children.length)&&(this._pane&&this._config.panelClass&&this._toggleClasses(this._pane,this._config.panelClass,!1),this._host&&this._host.parentElement&&(this._previousHostParent=this._host.parentElement,this._host.remove()),ae.unsubscribe())})})}_disposeScrollStrategy(){const ae=this._scrollStrategy;ae&&(ae.disable(),ae.detach&&ae.detach())}_disposeBackdrop(ae){ae&&(ae.removeEventListener("click",this._backdropClickHandler),ae.removeEventListener("transitionend",this._backdropTransitionendHandler),ae.remove(),this._backdropElement===ae&&(this._backdropElement=null)),this._backdropTimeout&&(clearTimeout(this._backdropTimeout),this._backdropTimeout=void 0)}}const $="cdk-overlay-connected-position-bounding-box",q=/([A-Za-z%]+)$/;class Q{get positions(){return this._preferredPositions}constructor(ae,ie,pe,Te,ct){this._viewportRuler=ie,this._document=pe,this._platform=Te,this._overlayContainer=ct,this._lastBoundingBoxSize={width:0,height:0},this._isPushed=!1,this._canPush=!0,this._growAfterOpen=!1,this._hasFlexibleDimensions=!0,this._positionLocked=!1,this._viewportMargin=0,this._scrollables=[],this._preferredPositions=[],this._positionChanges=new r.x,this._resizeSubscription=u.w0.EMPTY,this._offsetX=0,this._offsetY=0,this._appliedPanelClasses=[],this.positionChanges=this._positionChanges,this.setOrigin(ae)}attach(ae){this._validatePositions(),ae.hostElement.classList.add($),this._overlayRef=ae,this._boundingBox=ae.hostElement,this._pane=ae.overlayElement,this._isDisposed=!1,this._isInitialRender=!0,this._lastPosition=null,this._resizeSubscription.unsubscribe(),this._resizeSubscription=this._viewportRuler.change().subscribe(()=>{this._isInitialRender=!0,this.apply()})}apply(){if(this._isDisposed||!this._platform.isBrowser)return;if(!this._isInitialRender&&this._positionLocked&&this._lastPosition)return void this.reapplyLastPosition();this._clearPanelClasses(),this._resetOverlayElementStyles(),this._resetBoundingBoxStyles(),this._viewportRect=this._getNarrowedViewportRect(),this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect(),this._containerRect=this._overlayContainer.getContainerElement().getBoundingClientRect();const ae=this._originRect,ie=this._overlayRect,pe=this._viewportRect,Te=this._containerRect,ct=[];let Lt;for(let Dt of this._preferredPositions){let Kt=this._getOriginPoint(ae,Te,Dt),ze=this._getOverlayPoint(Kt,ie,Dt),yt=this._getOverlayFit(ze,ie,pe,Dt);if(yt.isCompletelyWithinViewport)return this._isPushed=!1,void this._applyPosition(Dt,Kt);this._canFitWithFlexibleDimensions(yt,ze,pe)?ct.push({position:Dt,origin:Kt,overlayRect:ie,boundingBoxRect:this._calculateBoundingBoxRect(Kt,Dt)}):(!Lt||Lt.overlayFit.visibleAreaKt&&(Kt=yt,Dt=ze)}return this._isPushed=!1,void this._applyPosition(Dt.position,Dt.origin)}if(this._canPush)return this._isPushed=!0,void this._applyPosition(Lt.position,Lt.originPoint);this._applyPosition(Lt.position,Lt.originPoint)}detach(){this._clearPanelClasses(),this._lastPosition=null,this._previousPushAmount=null,this._resizeSubscription.unsubscribe()}dispose(){this._isDisposed||(this._boundingBox&&ue(this._boundingBox.style,{top:"",left:"",right:"",bottom:"",height:"",width:"",alignItems:"",justifyContent:""}),this._pane&&this._resetOverlayElementStyles(),this._overlayRef&&this._overlayRef.hostElement.classList.remove($),this.detach(),this._positionChanges.complete(),this._overlayRef=this._boundingBox=null,this._isDisposed=!0)}reapplyLastPosition(){if(this._isDisposed||!this._platform.isBrowser)return;const ae=this._lastPosition;if(ae){this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect(),this._viewportRect=this._getNarrowedViewportRect(),this._containerRect=this._overlayContainer.getContainerElement().getBoundingClientRect();const ie=this._getOriginPoint(this._originRect,this._containerRect,ae);this._applyPosition(ae,ie)}else this.apply()}withScrollableContainers(ae){return this._scrollables=ae,this}withPositions(ae){return this._preferredPositions=ae,-1===ae.indexOf(this._lastPosition)&&(this._lastPosition=null),this._validatePositions(),this}withViewportMargin(ae){return this._viewportMargin=ae,this}withFlexibleDimensions(ae=!0){return this._hasFlexibleDimensions=ae,this}withGrowAfterOpen(ae=!0){return this._growAfterOpen=ae,this}withPush(ae=!0){return this._canPush=ae,this}withLockedPosition(ae=!0){return this._positionLocked=ae,this}setOrigin(ae){return this._origin=ae,this}withDefaultOffsetX(ae){return this._offsetX=ae,this}withDefaultOffsetY(ae){return this._offsetY=ae,this}withTransformOriginOn(ae){return this._transformOriginSelector=ae,this}_getOriginPoint(ae,ie,pe){let Te,ct;if("center"==pe.originX)Te=ae.left+ae.width/2;else{const Lt=this._isRtl()?ae.right:ae.left,Dt=this._isRtl()?ae.left:ae.right;Te="start"==pe.originX?Lt:Dt}return ie.left<0&&(Te-=ie.left),ct="center"==pe.originY?ae.top+ae.height/2:"top"==pe.originY?ae.top:ae.bottom,ie.top<0&&(ct-=ie.top),{x:Te,y:ct}}_getOverlayPoint(ae,ie,pe){let Te,ct;return Te="center"==pe.overlayX?-ie.width/2:"start"===pe.overlayX?this._isRtl()?-ie.width:0:this._isRtl()?0:-ie.width,ct="center"==pe.overlayY?-ie.height/2:"top"==pe.overlayY?0:-ie.height,{x:ae.x+Te,y:ae.y+ct}}_getOverlayFit(ae,ie,pe,Te){const ct=Oe(ie);let{x:Lt,y:Dt}=ae,Kt=this._getOffset(Te,"x"),ze=this._getOffset(Te,"y");Kt&&(Lt+=Kt),ze&&(Dt+=ze);let $t=0-Dt,Yt=Dt+ct.height-pe.height,Ue=this._subtractOverflows(ct.width,0-Lt,Lt+ct.width-pe.width),We=this._subtractOverflows(ct.height,$t,Yt),ve=Ue*We;return{visibleArea:ve,isCompletelyWithinViewport:ct.width*ct.height===ve,fitsInViewportVertically:We===ct.height,fitsInViewportHorizontally:Ue==ct.width}}_canFitWithFlexibleDimensions(ae,ie,pe){if(this._hasFlexibleDimensions){const Te=pe.bottom-ie.y,ct=pe.right-ie.x,Lt=Me(this._overlayRef.getConfig().minHeight),Dt=Me(this._overlayRef.getConfig().minWidth);return(ae.fitsInViewportVertically||null!=Lt&&Lt<=Te)&&(ae.fitsInViewportHorizontally||null!=Dt&&Dt<=ct)}return!1}_pushOverlayOnScreen(ae,ie,pe){if(this._previousPushAmount&&this._positionLocked)return{x:ae.x+this._previousPushAmount.x,y:ae.y+this._previousPushAmount.y};const Te=Oe(ie),ct=this._viewportRect,Lt=Math.max(ae.x+Te.width-ct.width,0),Dt=Math.max(ae.y+Te.height-ct.height,0),Kt=Math.max(ct.top-pe.top-ae.y,0),ze=Math.max(ct.left-pe.left-ae.x,0);let yt=0,Bt=0;return yt=Te.width<=ct.width?ze||-Lt:ae.xUe&&!this._isInitialRender&&!this._growAfterOpen&&(Lt=ae.y-Ue/2)}if("end"===ie.overlayX&&!Te||"start"===ie.overlayX&&Te)$t=pe.width-ae.x+this._viewportMargin,yt=ae.x-this._viewportMargin;else if("start"===ie.overlayX&&!Te||"end"===ie.overlayX&&Te)Bt=ae.x,yt=pe.right-ae.x;else{const Yt=Math.min(pe.right-ae.x+pe.left,ae.x),Ue=this._lastBoundingBoxSize.width;yt=2*Yt,Bt=ae.x-Yt,yt>Ue&&!this._isInitialRender&&!this._growAfterOpen&&(Bt=ae.x-Ue/2)}return{top:Lt,left:Bt,bottom:Dt,right:$t,width:yt,height:ct}}_setBoundingBoxStyles(ae,ie){const pe=this._calculateBoundingBoxRect(ae,ie);!this._isInitialRender&&!this._growAfterOpen&&(pe.height=Math.min(pe.height,this._lastBoundingBoxSize.height),pe.width=Math.min(pe.width,this._lastBoundingBoxSize.width));const Te={};if(this._hasExactPosition())Te.top=Te.left="0",Te.bottom=Te.right=Te.maxHeight=Te.maxWidth="",Te.width=Te.height="100%";else{const ct=this._overlayRef.getConfig().maxHeight,Lt=this._overlayRef.getConfig().maxWidth;Te.height=(0,b.HM)(pe.height),Te.top=(0,b.HM)(pe.top),Te.bottom=(0,b.HM)(pe.bottom),Te.width=(0,b.HM)(pe.width),Te.left=(0,b.HM)(pe.left),Te.right=(0,b.HM)(pe.right),Te.alignItems="center"===ie.overlayX?"center":"end"===ie.overlayX?"flex-end":"flex-start",Te.justifyContent="center"===ie.overlayY?"center":"bottom"===ie.overlayY?"flex-end":"flex-start",ct&&(Te.maxHeight=(0,b.HM)(ct)),Lt&&(Te.maxWidth=(0,b.HM)(Lt))}this._lastBoundingBoxSize=pe,ue(this._boundingBox.style,Te)}_resetBoundingBoxStyles(){ue(this._boundingBox.style,{top:"0",left:"0",right:"0",bottom:"0",height:"",width:"",alignItems:"",justifyContent:""})}_resetOverlayElementStyles(){ue(this._pane.style,{top:"",left:"",bottom:"",right:"",position:"",transform:""})}_setOverlayElementStyles(ae,ie){const pe={},Te=this._hasExactPosition(),ct=this._hasFlexibleDimensions,Lt=this._overlayRef.getConfig();if(Te){const yt=this._viewportRuler.getViewportScrollPosition();ue(pe,this._getExactOverlayY(ie,ae,yt)),ue(pe,this._getExactOverlayX(ie,ae,yt))}else pe.position="static";let Dt="",Kt=this._getOffset(ie,"x"),ze=this._getOffset(ie,"y");Kt&&(Dt+=`translateX(${Kt}px) `),ze&&(Dt+=`translateY(${ze}px)`),pe.transform=Dt.trim(),Lt.maxHeight&&(Te?pe.maxHeight=(0,b.HM)(Lt.maxHeight):ct&&(pe.maxHeight="")),Lt.maxWidth&&(Te?pe.maxWidth=(0,b.HM)(Lt.maxWidth):ct&&(pe.maxWidth="")),ue(this._pane.style,pe)}_getExactOverlayY(ae,ie,pe){let Te={top:"",bottom:""},ct=this._getOverlayPoint(ie,this._overlayRect,ae);return this._isPushed&&(ct=this._pushOverlayOnScreen(ct,this._overlayRect,pe)),"bottom"===ae.overlayY?Te.bottom=this._document.documentElement.clientHeight-(ct.y+this._overlayRect.height)+"px":Te.top=(0,b.HM)(ct.y),Te}_getExactOverlayX(ae,ie,pe){let Lt,Te={left:"",right:""},ct=this._getOverlayPoint(ie,this._overlayRect,ae);return this._isPushed&&(ct=this._pushOverlayOnScreen(ct,this._overlayRect,pe)),Lt=this._isRtl()?"end"===ae.overlayX?"left":"right":"end"===ae.overlayX?"right":"left","right"===Lt?Te.right=this._document.documentElement.clientWidth-(ct.x+this._overlayRect.width)+"px":Te.left=(0,b.HM)(ct.x),Te}_getScrollVisibility(){const ae=this._getOriginRect(),ie=this._pane.getBoundingClientRect(),pe=this._scrollables.map(Te=>Te.getElementRef().nativeElement.getBoundingClientRect());return{isOriginClipped:T(ae,pe),isOriginOutsideView:A(ae,pe),isOverlayClipped:T(ie,pe),isOverlayOutsideView:A(ie,pe)}}_subtractOverflows(ae,...ie){return ie.reduce((pe,Te)=>pe-Math.max(Te,0),ae)}_getNarrowedViewportRect(){const ae=this._document.documentElement.clientWidth,ie=this._document.documentElement.clientHeight,pe=this._viewportRuler.getViewportScrollPosition();return{top:pe.top+this._viewportMargin,left:pe.left+this._viewportMargin,right:pe.left+ae-this._viewportMargin,bottom:pe.top+ie-this._viewportMargin,width:ae-2*this._viewportMargin,height:ie-2*this._viewportMargin}}_isRtl(){return"rtl"===this._overlayRef.getDirection()}_hasExactPosition(){return!this._hasFlexibleDimensions||this._isPushed}_getOffset(ae,ie){return"x"===ie?null==ae.offsetX?this._offsetX:ae.offsetX:null==ae.offsetY?this._offsetY:ae.offsetY}_validatePositions(){}_addPanelClasses(ae){this._pane&&(0,b.Eq)(ae).forEach(ie=>{""!==ie&&-1===this._appliedPanelClasses.indexOf(ie)&&(this._appliedPanelClasses.push(ie),this._pane.classList.add(ie))})}_clearPanelClasses(){this._pane&&(this._appliedPanelClasses.forEach(ae=>{this._pane.classList.remove(ae)}),this._appliedPanelClasses=[])}_getOriginRect(){const ae=this._origin;if(ae instanceof C.ElementRef)return ae.nativeElement.getBoundingClientRect();if(ae instanceof Element)return ae.getBoundingClientRect();const ie=ae.width||0,pe=ae.height||0;return{top:ae.y,bottom:ae.y+pe,left:ae.x,right:ae.x+ie,height:pe,width:ie}}}function ue(ee,ae){for(let ie in ae)ae.hasOwnProperty(ie)&&(ee[ie]=ae[ie]);return ee}function Me(ee){if("number"!=typeof ee&&null!=ee){const[ae,ie]=ee.split(q);return ie&&"px"!==ie?null:parseFloat(ae)}return ee||null}function Oe(ee){return{top:Math.floor(ee.top),right:Math.floor(ee.right),bottom:Math.floor(ee.bottom),left:Math.floor(ee.left),width:Math.floor(ee.width),height:Math.floor(ee.height)}}const $e="cdk-global-overlay-wrapper";class st{constructor(){this._cssPosition="static",this._topOffset="",this._bottomOffset="",this._alignItems="",this._xPosition="",this._xOffset="",this._width="",this._height="",this._isDisposed=!1}attach(ae){const ie=ae.getConfig();this._overlayRef=ae,this._width&&!ie.width&&ae.updateSize({width:this._width}),this._height&&!ie.height&&ae.updateSize({height:this._height}),ae.hostElement.classList.add($e),this._isDisposed=!1}top(ae=""){return this._bottomOffset="",this._topOffset=ae,this._alignItems="flex-start",this}left(ae=""){return this._xOffset=ae,this._xPosition="left",this}bottom(ae=""){return this._topOffset="",this._bottomOffset=ae,this._alignItems="flex-end",this}right(ae=""){return this._xOffset=ae,this._xPosition="right",this}start(ae=""){return this._xOffset=ae,this._xPosition="start",this}end(ae=""){return this._xOffset=ae,this._xPosition="end",this}width(ae=""){return this._overlayRef?this._overlayRef.updateSize({width:ae}):this._width=ae,this}height(ae=""){return this._overlayRef?this._overlayRef.updateSize({height:ae}):this._height=ae,this}centerHorizontally(ae=""){return this.left(ae),this._xPosition="center",this}centerVertically(ae=""){return this.top(ae),this._alignItems="center",this}apply(){if(!this._overlayRef||!this._overlayRef.hasAttached())return;const ae=this._overlayRef.overlayElement.style,ie=this._overlayRef.hostElement.style,pe=this._overlayRef.getConfig(),{width:Te,height:ct,maxWidth:Lt,maxHeight:Dt}=pe,Kt=!("100%"!==Te&&"100vw"!==Te||Lt&&"100%"!==Lt&&"100vw"!==Lt),ze=!("100%"!==ct&&"100vh"!==ct||Dt&&"100%"!==Dt&&"100vh"!==Dt),yt=this._xPosition,Bt=this._xOffset,$t="rtl"===this._overlayRef.getConfig().direction;let Yt="",Ue="",We="";Kt?We="flex-start":"center"===yt?(We="center",$t?Ue=Bt:Yt=Bt):$t?"left"===yt||"end"===yt?(We="flex-end",Yt=Bt):("right"===yt||"start"===yt)&&(We="flex-start",Ue=Bt):"left"===yt||"start"===yt?(We="flex-start",Yt=Bt):("right"===yt||"end"===yt)&&(We="flex-end",Ue=Bt),ae.position=this._cssPosition,ae.marginLeft=Kt?"0":Yt,ae.marginTop=ze?"0":this._topOffset,ae.marginBottom=this._bottomOffset,ae.marginRight=Kt?"0":Ue,ie.justifyContent=We,ie.alignItems=ze?"flex-start":this._alignItems}dispose(){if(this._isDisposed||!this._overlayRef)return;const ae=this._overlayRef.overlayElement.style,ie=this._overlayRef.hostElement,pe=ie.style;ie.classList.remove($e),pe.justifyContent=pe.alignItems=ae.marginTop=ae.marginBottom=ae.marginLeft=ae.marginRight=ae.position="",this._overlayRef=null,this._isDisposed=!0}}let Mt=(()=>{class ee{constructor(ie,pe,Te,ct){this._viewportRuler=ie,this._document=pe,this._platform=Te,this._overlayContainer=ct}global(){return new st}flexibleConnectedTo(ie){return new Q(ie,this._viewportRuler,this._document,this._platform,this._overlayContainer)}}return ee.\u0275fac=function(ie){return new(ie||ee)(C.\u0275\u0275inject(n.rL),C.\u0275\u0275inject(p.DOCUMENT),C.\u0275\u0275inject(o.t4),C.\u0275\u0275inject(ne))},ee.\u0275prov=C.\u0275\u0275defineInjectable({token:ee,factory:ee.\u0275fac,providedIn:"root"}),ee})(),tt=0,St=(()=>{class ee{constructor(ie,pe,Te,ct,Lt,Dt,Kt,ze,yt,Bt,$t,Yt){this.scrollStrategies=ie,this._overlayContainer=pe,this._componentFactoryResolver=Te,this._positionBuilder=ct,this._keyboardDispatcher=Lt,this._injector=Dt,this._ngZone=Kt,this._document=ze,this._directionality=yt,this._location=Bt,this._outsideClickDispatcher=$t,this._animationsModuleType=Yt}create(ie){const pe=this._createHostElement(),Te=this._createPaneElement(pe),ct=this._createPortalOutlet(Te),Lt=new D(ie);return Lt.direction=Lt.direction||this._directionality.value,new me(ct,pe,Te,Lt,this._ngZone,this._keyboardDispatcher,this._document,this._location,this._outsideClickDispatcher,"NoopAnimations"===this._animationsModuleType)}position(){return this._positionBuilder}_createPaneElement(ie){const pe=this._document.createElement("div");return pe.id="cdk-overlay-"+tt++,pe.classList.add("cdk-overlay-pane"),ie.appendChild(pe),pe}_createHostElement(){const ie=this._document.createElement("div");return this._overlayContainer.getContainerElement().appendChild(ie),ie}_createPortalOutlet(ie){return this._appRef||(this._appRef=this._injector.get(C.ApplicationRef)),new d.u0(ie,this._componentFactoryResolver,this._appRef,this._injector,this._document)}}return ee.\u0275fac=function(ie){return new(ie||ee)(C.\u0275\u0275inject(E),C.\u0275\u0275inject(ne),C.\u0275\u0275inject(C.ComponentFactoryResolver),C.\u0275\u0275inject(Mt),C.\u0275\u0275inject(Y),C.\u0275\u0275inject(C.Injector),C.\u0275\u0275inject(C.NgZone),C.\u0275\u0275inject(p.DOCUMENT),C.\u0275\u0275inject(l.Is),C.\u0275\u0275inject(p.Location),C.\u0275\u0275inject(se),C.\u0275\u0275inject(C.ANIMATION_MODULE_TYPE,8))},ee.\u0275prov=C.\u0275\u0275defineInjectable({token:ee,factory:ee.\u0275fac,providedIn:"root"}),ee})();const bt=[{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"},{originX:"start",originY:"top",overlayX:"start",overlayY:"bottom"},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom"},{originX:"end",originY:"bottom",overlayX:"end",overlayY:"top"}],xt=new C.InjectionToken("cdk-connected-overlay-scroll-strategy");let nt=(()=>{class ee{constructor(ie){this.elementRef=ie}}return ee.\u0275fac=function(ie){return new(ie||ee)(C.\u0275\u0275directiveInject(C.ElementRef))},ee.\u0275dir=C.\u0275\u0275defineDirective({type:ee,selectors:[["","cdk-overlay-origin",""],["","overlay-origin",""],["","cdkOverlayOrigin",""]],exportAs:["cdkOverlayOrigin"],standalone:!0}),ee})(),ot=(()=>{class ee{get offsetX(){return this._offsetX}set offsetX(ie){this._offsetX=ie,this._position&&this._updatePositionStrategy(this._position)}get offsetY(){return this._offsetY}set offsetY(ie){this._offsetY=ie,this._position&&this._updatePositionStrategy(this._position)}get hasBackdrop(){return this._hasBackdrop}set hasBackdrop(ie){this._hasBackdrop=(0,b.Ig)(ie)}get lockPosition(){return this._lockPosition}set lockPosition(ie){this._lockPosition=(0,b.Ig)(ie)}get flexibleDimensions(){return this._flexibleDimensions}set flexibleDimensions(ie){this._flexibleDimensions=(0,b.Ig)(ie)}get growAfterOpen(){return this._growAfterOpen}set growAfterOpen(ie){this._growAfterOpen=(0,b.Ig)(ie)}get push(){return this._push}set push(ie){this._push=(0,b.Ig)(ie)}constructor(ie,pe,Te,ct,Lt){this._overlay=ie,this._dir=Lt,this._hasBackdrop=!1,this._lockPosition=!1,this._growAfterOpen=!1,this._flexibleDimensions=!1,this._push=!1,this._backdropSubscription=u.w0.EMPTY,this._attachSubscription=u.w0.EMPTY,this._detachSubscription=u.w0.EMPTY,this._positionSubscription=u.w0.EMPTY,this.viewportMargin=0,this.open=!1,this.disableClose=!1,this.backdropClick=new C.EventEmitter,this.positionChange=new C.EventEmitter,this.attach=new C.EventEmitter,this.detach=new C.EventEmitter,this.overlayKeydown=new C.EventEmitter,this.overlayOutsideClick=new C.EventEmitter,this._templatePortal=new d.UE(pe,Te),this._scrollStrategyFactory=ct,this.scrollStrategy=this._scrollStrategyFactory()}get overlayRef(){return this._overlayRef}get dir(){return this._dir?this._dir.value:"ltr"}ngOnDestroy(){this._attachSubscription.unsubscribe(),this._detachSubscription.unsubscribe(),this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe(),this._overlayRef&&this._overlayRef.dispose()}ngOnChanges(ie){this._position&&(this._updatePositionStrategy(this._position),this._overlayRef.updateSize({width:this.width,minWidth:this.minWidth,height:this.height,minHeight:this.minHeight}),ie.origin&&this.open&&this._position.apply()),ie.open&&(this.open?this._attachOverlay():this._detachOverlay())}_createOverlay(){(!this.positions||!this.positions.length)&&(this.positions=bt);const ie=this._overlayRef=this._overlay.create(this._buildConfig());this._attachSubscription=ie.attachments().subscribe(()=>this.attach.emit()),this._detachSubscription=ie.detachments().subscribe(()=>this.detach.emit()),ie.keydownEvents().subscribe(pe=>{this.overlayKeydown.next(pe),pe.keyCode===m.hY&&!this.disableClose&&!(0,m.Vb)(pe)&&(pe.preventDefault(),this._detachOverlay())}),this._overlayRef.outsidePointerEvents().subscribe(pe=>{this.overlayOutsideClick.next(pe)})}_buildConfig(){const ie=this._position=this.positionStrategy||this._createPositionStrategy(),pe=new D({direction:this._dir,positionStrategy:ie,scrollStrategy:this.scrollStrategy,hasBackdrop:this.hasBackdrop});return(this.width||0===this.width)&&(pe.width=this.width),(this.height||0===this.height)&&(pe.height=this.height),(this.minWidth||0===this.minWidth)&&(pe.minWidth=this.minWidth),(this.minHeight||0===this.minHeight)&&(pe.minHeight=this.minHeight),this.backdropClass&&(pe.backdropClass=this.backdropClass),this.panelClass&&(pe.panelClass=this.panelClass),pe}_updatePositionStrategy(ie){const pe=this.positions.map(Te=>({originX:Te.originX,originY:Te.originY,overlayX:Te.overlayX,overlayY:Te.overlayY,offsetX:Te.offsetX||this.offsetX,offsetY:Te.offsetY||this.offsetY,panelClass:Te.panelClass||void 0}));return ie.setOrigin(this._getFlexibleConnectedPositionStrategyOrigin()).withPositions(pe).withFlexibleDimensions(this.flexibleDimensions).withPush(this.push).withGrowAfterOpen(this.growAfterOpen).withViewportMargin(this.viewportMargin).withLockedPosition(this.lockPosition).withTransformOriginOn(this.transformOriginSelector)}_createPositionStrategy(){const ie=this._overlay.position().flexibleConnectedTo(this._getFlexibleConnectedPositionStrategyOrigin());return this._updatePositionStrategy(ie),ie}_getFlexibleConnectedPositionStrategyOrigin(){return this.origin instanceof nt?this.origin.elementRef:this.origin}_attachOverlay(){this._overlayRef?this._overlayRef.getConfig().hasBackdrop=this.hasBackdrop:this._createOverlay(),this._overlayRef.hasAttached()||this._overlayRef.attach(this._templatePortal),this.hasBackdrop?this._backdropSubscription=this._overlayRef.backdropClick().subscribe(ie=>{this.backdropClick.emit(ie)}):this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe(),this.positionChange.observers.length>0&&(this._positionSubscription=this._position.positionChanges.pipe((0,s.o)(()=>this.positionChange.observers.length>0)).subscribe(ie=>{this.positionChange.emit(ie),0===this.positionChange.observers.length&&this._positionSubscription.unsubscribe()}))}_detachOverlay(){this._overlayRef&&this._overlayRef.detach(),this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe()}}return ee.\u0275fac=function(ie){return new(ie||ee)(C.\u0275\u0275directiveInject(St),C.\u0275\u0275directiveInject(C.TemplateRef),C.\u0275\u0275directiveInject(C.ViewContainerRef),C.\u0275\u0275directiveInject(xt),C.\u0275\u0275directiveInject(l.Is,8))},ee.\u0275dir=C.\u0275\u0275defineDirective({type:ee,selectors:[["","cdk-connected-overlay",""],["","connected-overlay",""],["","cdkConnectedOverlay",""]],inputs:{origin:["cdkConnectedOverlayOrigin","origin"],positions:["cdkConnectedOverlayPositions","positions"],positionStrategy:["cdkConnectedOverlayPositionStrategy","positionStrategy"],offsetX:["cdkConnectedOverlayOffsetX","offsetX"],offsetY:["cdkConnectedOverlayOffsetY","offsetY"],width:["cdkConnectedOverlayWidth","width"],height:["cdkConnectedOverlayHeight","height"],minWidth:["cdkConnectedOverlayMinWidth","minWidth"],minHeight:["cdkConnectedOverlayMinHeight","minHeight"],backdropClass:["cdkConnectedOverlayBackdropClass","backdropClass"],panelClass:["cdkConnectedOverlayPanelClass","panelClass"],viewportMargin:["cdkConnectedOverlayViewportMargin","viewportMargin"],scrollStrategy:["cdkConnectedOverlayScrollStrategy","scrollStrategy"],open:["cdkConnectedOverlayOpen","open"],disableClose:["cdkConnectedOverlayDisableClose","disableClose"],transformOriginSelector:["cdkConnectedOverlayTransformOriginOn","transformOriginSelector"],hasBackdrop:["cdkConnectedOverlayHasBackdrop","hasBackdrop"],lockPosition:["cdkConnectedOverlayLockPosition","lockPosition"],flexibleDimensions:["cdkConnectedOverlayFlexibleDimensions","flexibleDimensions"],growAfterOpen:["cdkConnectedOverlayGrowAfterOpen","growAfterOpen"],push:["cdkConnectedOverlayPush","push"]},outputs:{backdropClick:"backdropClick",positionChange:"positionChange",attach:"attach",detach:"detach",overlayKeydown:"overlayKeydown",overlayOutsideClick:"overlayOutsideClick"},exportAs:["cdkConnectedOverlay"],standalone:!0,features:[C.\u0275\u0275NgOnChangesFeature]}),ee})();const rt={provide:xt,deps:[St],useFactory:function vt(ee){return()=>ee.scrollStrategies.reposition()}};let J=(()=>{class ee{}return ee.\u0275fac=function(ie){return new(ie||ee)},ee.\u0275mod=C.\u0275\u0275defineNgModule({type:ee}),ee.\u0275inj=C.\u0275\u0275defineInjector({providers:[St,rt],imports:[l.vT,d.eL,n.Cl,n.Cl]}),ee})()},2831:(Se,X,g)=>{"use strict";g.d(X,{Mq:()=>h,Oy:()=>A,ht:()=>w,i$:()=>d,kV:()=>x,qK:()=>c,sA:()=>L,t4:()=>b});var n=g(5879),p=g(6814);let C;try{C=typeof Intl<"u"&&Intl.v8BreakIterator}catch{C=!1}let v,b=(()=>{class T{constructor(E){this._platformId=E,this.isBrowser=this._platformId?(0,p.isPlatformBrowser)(this._platformId):"object"==typeof document&&!!document,this.EDGE=this.isBrowser&&/(edge)/i.test(navigator.userAgent),this.TRIDENT=this.isBrowser&&/(msie|trident)/i.test(navigator.userAgent),this.BLINK=this.isBrowser&&!(!window.chrome&&!C)&&typeof CSS<"u"&&!this.EDGE&&!this.TRIDENT,this.WEBKIT=this.isBrowser&&/AppleWebKit/i.test(navigator.userAgent)&&!this.BLINK&&!this.EDGE&&!this.TRIDENT,this.IOS=this.isBrowser&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!("MSStream"in window),this.FIREFOX=this.isBrowser&&/(firefox|minefield)/i.test(navigator.userAgent),this.ANDROID=this.isBrowser&&/android/i.test(navigator.userAgent)&&!this.TRIDENT,this.SAFARI=this.isBrowser&&/safari/i.test(navigator.userAgent)&&this.WEBKIT}}return T.\u0275fac=function(E){return new(E||T)(n.\u0275\u0275inject(n.PLATFORM_ID))},T.\u0275prov=n.\u0275\u0275defineInjectable({token:T,factory:T.\u0275fac,providedIn:"root"}),T})();const a=["color","button","checkbox","date","datetime-local","email","file","hidden","image","month","number","password","radio","range","reset","search","submit","tel","text","time","url","week"];function c(){if(v)return v;if("object"!=typeof document||!document)return v=new Set(a),v;let T=document.createElement("input");return v=new Set(a.filter(O=>(T.setAttribute("type",O),T.type===O))),v}let s,u,_;function d(T){return function l(){if(null==s&&typeof window<"u")try{window.addEventListener("test",null,Object.defineProperty({},"passive",{get:()=>s=!0}))}finally{s=s||!1}return s}()?T:!!T.capture}function h(){if(null==u){if("object"!=typeof document||!document||"function"!=typeof Element||!Element)return u=!1,u;if("scrollBehavior"in document.documentElement.style)u=!0;else{const T=Element.prototype.scrollTo;u=!!T&&!/\{\s*\[native code\]\s*\}/.test(T.toString())}}return u}function x(T){if(function M(){if(null==_){const T=typeof document<"u"?document.head:null;_=!(!T||!T.createShadowRoot&&!T.attachShadow)}return _}()){const O=T.getRootNode?T.getRootNode():null;if(typeof ShadowRoot<"u"&&ShadowRoot&&O instanceof ShadowRoot)return O}return null}function w(){let T=typeof document<"u"&&document?document.activeElement:null;for(;T&&T.shadowRoot;){const O=T.shadowRoot.activeElement;if(O===T)break;T=O}return T}function L(T){return T.composedPath?T.composedPath()[0]:T.target}function A(){return typeof __karma__<"u"&&!!__karma__||typeof jasmine<"u"&&!!jasmine||typeof jest<"u"&&!!jest||typeof Mocha<"u"&&!!Mocha}},8484:(Se,X,g)=>{"use strict";g.d(X,{C5:()=>l,Pl:()=>w,UE:()=>d,eL:()=>A,ig:()=>M,u0:()=>m});var n=g(5879),p=g(6814);class s{attach(E){return this._attachedHost=E,E.attach(this)}detach(){let E=this._attachedHost;null!=E&&(this._attachedHost=null,E.detach())}get isAttached(){return null!=this._attachedHost}setAttachedHost(E){this._attachedHost=E}}class l extends s{constructor(E,D,R,j,N){super(),this.component=E,this.viewContainerRef=D,this.injector=R,this.componentFactoryResolver=j,this.projectableNodes=N}}class d extends s{constructor(E,D,R,j){super(),this.templateRef=E,this.viewContainerRef=D,this.context=R,this.injector=j}get origin(){return this.templateRef.elementRef}attach(E,D=this.context){return this.context=D,super.attach(E)}detach(){return this.context=void 0,super.detach()}}class r extends s{constructor(E){super(),this.element=E instanceof n.ElementRef?E.nativeElement:E}}class u{constructor(){this._isDisposed=!1,this.attachDomPortal=null}hasAttached(){return!!this._attachedPortal}attach(E){return E instanceof l?(this._attachedPortal=E,this.attachComponentPortal(E)):E instanceof d?(this._attachedPortal=E,this.attachTemplatePortal(E)):this.attachDomPortal&&E instanceof r?(this._attachedPortal=E,this.attachDomPortal(E)):void 0}detach(){this._attachedPortal&&(this._attachedPortal.setAttachedHost(null),this._attachedPortal=null),this._invokeDisposeFn()}dispose(){this.hasAttached()&&this.detach(),this._invokeDisposeFn(),this._isDisposed=!0}setDisposeFn(E){this._disposeFn=E}_invokeDisposeFn(){this._disposeFn&&(this._disposeFn(),this._disposeFn=null)}}class m extends u{constructor(E,D,R,j,N){super(),this.outletElement=E,this._componentFactoryResolver=D,this._appRef=R,this._defaultInjector=j,this.attachDomPortal=S=>{const k=S.element,F=this._document.createComment("dom-portal");k.parentNode.insertBefore(F,k),this.outletElement.appendChild(k),this._attachedPortal=S,super.setDisposeFn(()=>{F.parentNode&&F.parentNode.replaceChild(k,F)})},this._document=N}attachComponentPortal(E){const R=(E.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(E.component);let j;return E.viewContainerRef?(j=E.viewContainerRef.createComponent(R,E.viewContainerRef.length,E.injector||E.viewContainerRef.injector,E.projectableNodes||void 0),this.setDisposeFn(()=>j.destroy())):(j=R.create(E.injector||this._defaultInjector||n.Injector.NULL),this._appRef.attachView(j.hostView),this.setDisposeFn(()=>{this._appRef.viewCount>0&&this._appRef.detachView(j.hostView),j.destroy()})),this.outletElement.appendChild(this._getComponentRootNode(j)),this._attachedPortal=E,j}attachTemplatePortal(E){let D=E.viewContainerRef,R=D.createEmbeddedView(E.templateRef,E.context,{injector:E.injector});return R.rootNodes.forEach(j=>this.outletElement.appendChild(j)),R.detectChanges(),this.setDisposeFn(()=>{let j=D.indexOf(R);-1!==j&&D.remove(j)}),this._attachedPortal=E,R}dispose(){super.dispose(),this.outletElement.remove()}_getComponentRootNode(E){return E.hostView.rootNodes[0]}}let M=(()=>{class O extends d{constructor(D,R){super(D,R)}}return O.\u0275fac=function(D){return new(D||O)(n.\u0275\u0275directiveInject(n.TemplateRef),n.\u0275\u0275directiveInject(n.ViewContainerRef))},O.\u0275dir=n.\u0275\u0275defineDirective({type:O,selectors:[["","cdkPortal",""]],exportAs:["cdkPortal"],features:[n.\u0275\u0275InheritDefinitionFeature]}),O})(),w=(()=>{class O extends u{constructor(D,R,j){super(),this._componentFactoryResolver=D,this._viewContainerRef=R,this._isInitialized=!1,this.attached=new n.EventEmitter,this.attachDomPortal=N=>{const S=N.element,k=this._document.createComment("dom-portal");N.setAttachedHost(this),S.parentNode.insertBefore(k,S),this._getRootNode().appendChild(S),this._attachedPortal=N,super.setDisposeFn(()=>{k.parentNode&&k.parentNode.replaceChild(S,k)})},this._document=j}get portal(){return this._attachedPortal}set portal(D){this.hasAttached()&&!D&&!this._isInitialized||(this.hasAttached()&&super.detach(),D&&super.attach(D),this._attachedPortal=D||null)}get attachedRef(){return this._attachedRef}ngOnInit(){this._isInitialized=!0}ngOnDestroy(){super.dispose(),this._attachedRef=this._attachedPortal=null}attachComponentPortal(D){D.setAttachedHost(this);const R=null!=D.viewContainerRef?D.viewContainerRef:this._viewContainerRef,N=(D.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(D.component),S=R.createComponent(N,R.length,D.injector||R.injector,D.projectableNodes||void 0);return R!==this._viewContainerRef&&this._getRootNode().appendChild(S.hostView.rootNodes[0]),super.setDisposeFn(()=>S.destroy()),this._attachedPortal=D,this._attachedRef=S,this.attached.emit(S),S}attachTemplatePortal(D){D.setAttachedHost(this);const R=this._viewContainerRef.createEmbeddedView(D.templateRef,D.context,{injector:D.injector});return super.setDisposeFn(()=>this._viewContainerRef.clear()),this._attachedPortal=D,this._attachedRef=R,this.attached.emit(R),R}_getRootNode(){const D=this._viewContainerRef.element.nativeElement;return D.nodeType===D.ELEMENT_NODE?D:D.parentNode}}return O.\u0275fac=function(D){return new(D||O)(n.\u0275\u0275directiveInject(n.ComponentFactoryResolver),n.\u0275\u0275directiveInject(n.ViewContainerRef),n.\u0275\u0275directiveInject(p.DOCUMENT))},O.\u0275dir=n.\u0275\u0275defineDirective({type:O,selectors:[["","cdkPortalOutlet",""]],inputs:{portal:["cdkPortalOutlet","portal"]},outputs:{attached:"attached"},exportAs:["cdkPortalOutlet"],features:[n.\u0275\u0275InheritDefinitionFeature]}),O})(),A=(()=>{class O{}return O.\u0275fac=function(D){return new(D||O)},O.\u0275mod=n.\u0275\u0275defineNgModule({type:O}),O.\u0275inj=n.\u0275\u0275defineInjector({}),O})()},6672:(Se,X,g)=>{"use strict";g.d(X,{Cl:()=>me,ZD:()=>ne,mF:()=>A,rL:()=>E});var n=g(2495),p=g(5879),C=g(8645),b=g(2096),o=g(5592),v=g(2438),s=(g(927),g(6410),g(8672)),l=g(2181),d=g(2831),r=g(6814),u=g(9388);let A=(()=>{class ${constructor(Q,ue,Me){this._ngZone=Q,this._platform=ue,this._scrolled=new C.x,this._globalSubscription=null,this._scrolledCount=0,this.scrollContainers=new Map,this._document=Me}register(Q){this.scrollContainers.has(Q)||this.scrollContainers.set(Q,Q.elementScrolled().subscribe(()=>this._scrolled.next(Q)))}deregister(Q){const ue=this.scrollContainers.get(Q);ue&&(ue.unsubscribe(),this.scrollContainers.delete(Q))}scrolled(Q=20){return this._platform.isBrowser?new o.y(ue=>{this._globalSubscription||this._addGlobalListener();const Me=Q>0?this._scrolled.pipe((0,s.e)(Q)).subscribe(ue):this._scrolled.subscribe(ue);return this._scrolledCount++,()=>{Me.unsubscribe(),this._scrolledCount--,this._scrolledCount||this._removeGlobalListener()}}):(0,b.of)()}ngOnDestroy(){this._removeGlobalListener(),this.scrollContainers.forEach((Q,ue)=>this.deregister(ue)),this._scrolled.complete()}ancestorScrolled(Q,ue){const Me=this.getAncestorScrollContainers(Q);return this.scrolled(ue).pipe((0,l.h)(Oe=>!Oe||Me.indexOf(Oe)>-1))}getAncestorScrollContainers(Q){const ue=[];return this.scrollContainers.forEach((Me,Oe)=>{this._scrollableContainsElement(Oe,Q)&&ue.push(Oe)}),ue}_getWindow(){return this._document.defaultView||window}_scrollableContainsElement(Q,ue){let Me=(0,n.fI)(ue),Oe=Q.getElementRef().nativeElement;do{if(Me==Oe)return!0}while(Me=Me.parentElement);return!1}_addGlobalListener(){this._globalSubscription=this._ngZone.runOutsideAngular(()=>{const Q=this._getWindow();return(0,v.R)(Q.document,"scroll").subscribe(()=>this._scrolled.next())})}_removeGlobalListener(){this._globalSubscription&&(this._globalSubscription.unsubscribe(),this._globalSubscription=null)}}return $.\u0275fac=function(Q){return new(Q||$)(p.\u0275\u0275inject(p.NgZone),p.\u0275\u0275inject(d.t4),p.\u0275\u0275inject(r.DOCUMENT,8))},$.\u0275prov=p.\u0275\u0275defineInjectable({token:$,factory:$.\u0275fac,providedIn:"root"}),$})(),E=(()=>{class ${constructor(Q,ue,Me){this._platform=Q,this._change=new C.x,this._changeListener=Oe=>{this._change.next(Oe)},this._document=Me,ue.runOutsideAngular(()=>{if(Q.isBrowser){const Oe=this._getWindow();Oe.addEventListener("resize",this._changeListener),Oe.addEventListener("orientationchange",this._changeListener)}this.change().subscribe(()=>this._viewportSize=null)})}ngOnDestroy(){if(this._platform.isBrowser){const Q=this._getWindow();Q.removeEventListener("resize",this._changeListener),Q.removeEventListener("orientationchange",this._changeListener)}this._change.complete()}getViewportSize(){this._viewportSize||this._updateViewportSize();const Q={width:this._viewportSize.width,height:this._viewportSize.height};return this._platform.isBrowser||(this._viewportSize=null),Q}getViewportRect(){const Q=this.getViewportScrollPosition(),{width:ue,height:Me}=this.getViewportSize();return{top:Q.top,left:Q.left,bottom:Q.top+Me,right:Q.left+ue,height:Me,width:ue}}getViewportScrollPosition(){if(!this._platform.isBrowser)return{top:0,left:0};const Q=this._document,ue=this._getWindow(),Me=Q.documentElement,Oe=Me.getBoundingClientRect();return{top:-Oe.top||Q.body.scrollTop||ue.scrollY||Me.scrollTop||0,left:-Oe.left||Q.body.scrollLeft||ue.scrollX||Me.scrollLeft||0}}change(Q=20){return Q>0?this._change.pipe((0,s.e)(Q)):this._change}_getWindow(){return this._document.defaultView||window}_updateViewportSize(){const Q=this._getWindow();this._viewportSize=this._platform.isBrowser?{width:Q.innerWidth,height:Q.innerHeight}:{width:0,height:0}}}return $.\u0275fac=function(Q){return new(Q||$)(p.\u0275\u0275inject(d.t4),p.\u0275\u0275inject(p.NgZone),p.\u0275\u0275inject(r.DOCUMENT,8))},$.\u0275prov=p.\u0275\u0275defineInjectable({token:$,factory:$.\u0275fac,providedIn:"root"}),$})(),ne=(()=>{class ${}return $.\u0275fac=function(Q){return new(Q||$)},$.\u0275mod=p.\u0275\u0275defineNgModule({type:$}),$.\u0275inj=p.\u0275\u0275defineInjector({}),$})(),me=(()=>{class ${}return $.\u0275fac=function(Q){return new(Q||$)},$.\u0275mod=p.\u0275\u0275defineNgModule({type:$}),$.\u0275inj=p.\u0275\u0275defineInjector({imports:[u.vT,ne,u.vT,ne]}),$})()},6263:(Se,X,g)=>{"use strict";g.d(X,{Ky:()=>l,Lq:()=>a});var n=g(2831),p=g(5879),C=g(2495),b=g(6232),o=g(8645);const v=(0,n.i$)({passive:!0});let a=(()=>{class d{constructor(u,h){this._platform=u,this._ngZone=h,this._monitoredElements=new Map}monitor(u){if(!this._platform.isBrowser)return b.E;const h=(0,C.fI)(u),m=this._monitoredElements.get(h);if(m)return m.subject;const _=new o.x,M="cdk-text-field-autofilled",x=w=>{"cdk-text-field-autofill-start"!==w.animationName||h.classList.contains(M)?"cdk-text-field-autofill-end"===w.animationName&&h.classList.contains(M)&&(h.classList.remove(M),this._ngZone.run(()=>_.next({target:w.target,isAutofilled:!1}))):(h.classList.add(M),this._ngZone.run(()=>_.next({target:w.target,isAutofilled:!0})))};return this._ngZone.runOutsideAngular(()=>{h.addEventListener("animationstart",x,v),h.classList.add("cdk-text-field-autofill-monitored")}),this._monitoredElements.set(h,{subject:_,unlisten:()=>{h.removeEventListener("animationstart",x,v)}}),_}stopMonitoring(u){const h=(0,C.fI)(u),m=this._monitoredElements.get(h);m&&(m.unlisten(),m.subject.complete(),h.classList.remove("cdk-text-field-autofill-monitored"),h.classList.remove("cdk-text-field-autofilled"),this._monitoredElements.delete(h))}ngOnDestroy(){this._monitoredElements.forEach((u,h)=>this.stopMonitoring(h))}}return d.\u0275fac=function(u){return new(u||d)(p.\u0275\u0275inject(n.t4),p.\u0275\u0275inject(p.NgZone))},d.\u0275prov=p.\u0275\u0275defineInjectable({token:d,factory:d.\u0275fac,providedIn:"root"}),d})(),l=(()=>{class d{}return d.\u0275fac=function(u){return new(u||d)},d.\u0275mod=p.\u0275\u0275defineNgModule({type:d}),d.\u0275inj=p.\u0275\u0275defineInjector({}),d})()},6814:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{APP_BASE_HREF:()=>h,AsyncPipe:()=>kn,BrowserPlatformLocation:()=>s,CommonModule:()=>Gi,CurrencyPipe:()=>fe,DATE_PIPE_DEFAULT_OPTIONS:()=>rn,DATE_PIPE_DEFAULT_TIMEZONE:()=>yn,DOCUMENT:()=>v,DatePipe:()=>xn,DecimalPipe:()=>kt,FormStyle:()=>D,FormatWidth:()=>j,HashLocationStrategy:()=>_,I18nPluralPipe:()=>Ti,I18nSelectPipe:()=>zi,IMAGE_CONFIG:()=>ar,IMAGE_LOADER:()=>Fi,JsonPipe:()=>xi,KeyValuePipe:()=>gi,LOCATION_INITIALIZED:()=>c,Location:()=>M,LocationStrategy:()=>u,LowerCasePipe:()=>Un,NgClass:()=>ln,NgComponentOutlet:()=>en,NgFor:()=>Yn,NgForOf:()=>Yn,NgForOfContext:()=>An,NgIf:()=>Ii,NgIfContext:()=>oi,NgLocaleLocalization:()=>In,NgLocalization:()=>un,NgOptimizedImage:()=>Xo,NgPlural:()=>be,NgPluralCase:()=>ge,NgStyle:()=>Ge,NgSwitch:()=>Ct,NgSwitchCase:()=>Ft,NgSwitchDefault:()=>Ae,NgTemplateOutlet:()=>It,NumberFormatStyle:()=>O,NumberSymbol:()=>N,PRECONNECT_CHECK_BLOCKLIST:()=>_o,PathLocationStrategy:()=>m,PercentPipe:()=>U,PlatformLocation:()=>a,Plural:()=>E,SlicePipe:()=>Gt,TitleCasePipe:()=>$i,TranslationWidth:()=>R,UpperCasePipe:()=>er,VERSION:()=>Tt,ViewportScroller:()=>Ut,WeekDay:()=>S,XhrFactory:()=>zn,formatCurrency:()=>Li,formatDate:()=>ct,formatNumber:()=>wt,formatPercent:()=>Qi,getCurrencySymbol:()=>vt,getLocaleCurrencyCode:()=>$e,getLocaleCurrencyName:()=>Be,getLocaleCurrencySymbol:()=>Xe,getLocaleDateFormat:()=>q,getLocaleDateTimeFormat:()=>ue,getLocaleDayNames:()=>Y,getLocaleDayPeriods:()=>F,getLocaleDirection:()=>xt,getLocaleEraNames:()=>ne,getLocaleExtraDayPeriodRules:()=>St,getLocaleExtraDayPeriods:()=>bt,getLocaleFirstDayOfWeek:()=>me,getLocaleId:()=>k,getLocaleMonthNames:()=>se,getLocaleNumberFormat:()=>Oe,getLocaleNumberSymbol:()=>Me,getLocalePluralCase:()=>Mt,getLocaleTimeFormat:()=>Q,getLocaleWeekEndRange:()=>$,getNumberOfCurrencyDigits:()=>J,isPlatformBrowser:()=>ur,isPlatformServer:()=>Et,isPlatformWorkerApp:()=>_t,isPlatformWorkerUi:()=>ft,provideCloudflareLoader:()=>us,provideCloudinaryLoader:()=>Go,provideImageKitLoader:()=>Ko,provideImgixLoader:()=>He,registerLocaleData:()=>Zn,\u0275DomAdapter:()=>o,\u0275NullViewportScroller:()=>_n,\u0275PLATFORM_BROWSER_ID:()=>Vi,\u0275PLATFORM_SERVER_ID:()=>rr,\u0275PLATFORM_WORKER_APP_ID:()=>or,\u0275PLATFORM_WORKER_UI_ID:()=>Zi,\u0275getDOM:()=>C,\u0275parseCookieValue:()=>mi,\u0275setRootDomAdapter:()=>b});var n=g(5879);let p=null;function C(){return p}function b(z){p||(p=z)}class o{}const v=new n.InjectionToken("DocumentToken");let a=(()=>{class z{historyGo(le){throw new Error("Not implemented")}}return z.\u0275fac=function(le){return new(le||z)},z.\u0275prov=n.\u0275\u0275defineInjectable({token:z,factory:function(){return(0,n.inject)(s)},providedIn:"platform"}),z})();const c=new n.InjectionToken("Location Initialized");let s=(()=>{class z extends a{constructor(){super(),this._doc=(0,n.inject)(v),this._location=window.location,this._history=window.history}getBaseHrefFromDOM(){return C().getBaseHref(this._doc)}onPopState(le){const Fe=C().getGlobalEventTarget(this._doc,"window");return Fe.addEventListener("popstate",le,!1),()=>Fe.removeEventListener("popstate",le)}onHashChange(le){const Fe=C().getGlobalEventTarget(this._doc,"window");return Fe.addEventListener("hashchange",le,!1),()=>Fe.removeEventListener("hashchange",le)}get href(){return this._location.href}get protocol(){return this._location.protocol}get hostname(){return this._location.hostname}get port(){return this._location.port}get pathname(){return this._location.pathname}get search(){return this._location.search}get hash(){return this._location.hash}set pathname(le){this._location.pathname=le}pushState(le,Fe,ht){this._history.pushState(le,Fe,ht)}replaceState(le,Fe,ht){this._history.replaceState(le,Fe,ht)}forward(){this._history.forward()}back(){this._history.back()}historyGo(le=0){this._history.go(le)}getState(){return this._history.state}}return z.\u0275fac=function(le){return new(le||z)},z.\u0275prov=n.\u0275\u0275defineInjectable({token:z,factory:function(){return new z},providedIn:"platform"}),z})();function l(z,Ie){if(0==z.length)return Ie;if(0==Ie.length)return z;let le=0;return z.endsWith("/")&&le++,Ie.startsWith("/")&&le++,2==le?z+Ie.substring(1):1==le?z+Ie:z+"/"+Ie}function d(z){const Ie=z.match(/#|\?|$/),le=Ie&&Ie.index||z.length;return z.slice(0,le-("/"===z[le-1]?1:0))+z.slice(le)}function r(z){return z&&"?"!==z[0]?"?"+z:z}let u=(()=>{class z{historyGo(le){throw new Error("Not implemented")}}return z.\u0275fac=function(le){return new(le||z)},z.\u0275prov=n.\u0275\u0275defineInjectable({token:z,factory:function(){return(0,n.inject)(m)},providedIn:"root"}),z})();const h=new n.InjectionToken("appBaseHref");let m=(()=>{class z extends u{constructor(le,Fe){super(),this._platformLocation=le,this._removeListenerFns=[],this._baseHref=Fe??this._platformLocation.getBaseHrefFromDOM()??(0,n.inject)(v).location?.origin??""}ngOnDestroy(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}onPopState(le){this._removeListenerFns.push(this._platformLocation.onPopState(le),this._platformLocation.onHashChange(le))}getBaseHref(){return this._baseHref}prepareExternalUrl(le){return l(this._baseHref,le)}path(le=!1){const Fe=this._platformLocation.pathname+r(this._platformLocation.search),ht=this._platformLocation.hash;return ht&&le?`${Fe}${ht}`:Fe}pushState(le,Fe,ht,Ht){const Zt=this.prepareExternalUrl(ht+r(Ht));this._platformLocation.pushState(le,Fe,Zt)}replaceState(le,Fe,ht,Ht){const Zt=this.prepareExternalUrl(ht+r(Ht));this._platformLocation.replaceState(le,Fe,Zt)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}getState(){return this._platformLocation.getState()}historyGo(le=0){this._platformLocation.historyGo?.(le)}}return z.\u0275fac=function(le){return new(le||z)(n.\u0275\u0275inject(a),n.\u0275\u0275inject(h,8))},z.\u0275prov=n.\u0275\u0275defineInjectable({token:z,factory:z.\u0275fac,providedIn:"root"}),z})(),_=(()=>{class z extends u{constructor(le,Fe){super(),this._platformLocation=le,this._baseHref="",this._removeListenerFns=[],null!=Fe&&(this._baseHref=Fe)}ngOnDestroy(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}onPopState(le){this._removeListenerFns.push(this._platformLocation.onPopState(le),this._platformLocation.onHashChange(le))}getBaseHref(){return this._baseHref}path(le=!1){let Fe=this._platformLocation.hash;return null==Fe&&(Fe="#"),Fe.length>0?Fe.substring(1):Fe}prepareExternalUrl(le){const Fe=l(this._baseHref,le);return Fe.length>0?"#"+Fe:Fe}pushState(le,Fe,ht,Ht){let Zt=this.prepareExternalUrl(ht+r(Ht));0==Zt.length&&(Zt=this._platformLocation.pathname),this._platformLocation.pushState(le,Fe,Zt)}replaceState(le,Fe,ht,Ht){let Zt=this.prepareExternalUrl(ht+r(Ht));0==Zt.length&&(Zt=this._platformLocation.pathname),this._platformLocation.replaceState(le,Fe,Zt)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}getState(){return this._platformLocation.getState()}historyGo(le=0){this._platformLocation.historyGo?.(le)}}return z.\u0275fac=function(le){return new(le||z)(n.\u0275\u0275inject(a),n.\u0275\u0275inject(h,8))},z.\u0275prov=n.\u0275\u0275defineInjectable({token:z,factory:z.\u0275fac}),z})(),M=(()=>{class z{constructor(le){this._subject=new n.EventEmitter,this._urlChangeListeners=[],this._urlChangeSubscription=null,this._locationStrategy=le;const Fe=this._locationStrategy.getBaseHref();this._basePath=function A(z){if(new RegExp("^(https?:)?//").test(z)){const[,le]=z.split(/\/\/[^\/]+/);return le}return z}(d(L(Fe))),this._locationStrategy.onPopState(ht=>{this._subject.emit({url:this.path(!0),pop:!0,state:ht.state,type:ht.type})})}ngOnDestroy(){this._urlChangeSubscription?.unsubscribe(),this._urlChangeListeners=[]}path(le=!1){return this.normalize(this._locationStrategy.path(le))}getState(){return this._locationStrategy.getState()}isCurrentPathEqualTo(le,Fe=""){return this.path()==this.normalize(le+r(Fe))}normalize(le){return z.stripTrailingSlash(function w(z,Ie){if(!z||!Ie.startsWith(z))return Ie;const le=Ie.substring(z.length);return""===le||["/",";","?","#"].includes(le[0])?le:Ie}(this._basePath,L(le)))}prepareExternalUrl(le){return le&&"/"!==le[0]&&(le="/"+le),this._locationStrategy.prepareExternalUrl(le)}go(le,Fe="",ht=null){this._locationStrategy.pushState(ht,"",le,Fe),this._notifyUrlChangeListeners(this.prepareExternalUrl(le+r(Fe)),ht)}replaceState(le,Fe="",ht=null){this._locationStrategy.replaceState(ht,"",le,Fe),this._notifyUrlChangeListeners(this.prepareExternalUrl(le+r(Fe)),ht)}forward(){this._locationStrategy.forward()}back(){this._locationStrategy.back()}historyGo(le=0){this._locationStrategy.historyGo?.(le)}onUrlChange(le){return this._urlChangeListeners.push(le),this._urlChangeSubscription||(this._urlChangeSubscription=this.subscribe(Fe=>{this._notifyUrlChangeListeners(Fe.url,Fe.state)})),()=>{const Fe=this._urlChangeListeners.indexOf(le);this._urlChangeListeners.splice(Fe,1),0===this._urlChangeListeners.length&&(this._urlChangeSubscription?.unsubscribe(),this._urlChangeSubscription=null)}}_notifyUrlChangeListeners(le="",Fe){this._urlChangeListeners.forEach(ht=>ht(le,Fe))}subscribe(le,Fe,ht){return this._subject.subscribe({next:le,error:Fe,complete:ht})}}return z.normalizeQueryParams=r,z.joinWithSlash=l,z.stripTrailingSlash=d,z.\u0275fac=function(le){return new(le||z)(n.\u0275\u0275inject(u))},z.\u0275prov=n.\u0275\u0275defineInjectable({token:z,factory:function(){return function x(){return new M((0,n.\u0275\u0275inject)(u))}()},providedIn:"root"}),z})();function L(z){return z.replace(/\/index.html$/,"")}const T={ADP:[void 0,void 0,0],AFN:[void 0,"\u060b",0],ALL:[void 0,void 0,0],AMD:[void 0,"\u058f",2],AOA:[void 0,"Kz"],ARS:[void 0,"$"],AUD:["A$","$"],AZN:[void 0,"\u20bc"],BAM:[void 0,"KM"],BBD:[void 0,"$"],BDT:[void 0,"\u09f3"],BHD:[void 0,void 0,3],BIF:[void 0,void 0,0],BMD:[void 0,"$"],BND:[void 0,"$"],BOB:[void 0,"Bs"],BRL:["R$"],BSD:[void 0,"$"],BWP:[void 0,"P"],BYN:[void 0,void 0,2],BYR:[void 0,void 0,0],BZD:[void 0,"$"],CAD:["CA$","$",2],CHF:[void 0,void 0,2],CLF:[void 0,void 0,4],CLP:[void 0,"$",0],CNY:["CN\xa5","\xa5"],COP:[void 0,"$",2],CRC:[void 0,"\u20a1",2],CUC:[void 0,"$"],CUP:[void 0,"$"],CZK:[void 0,"K\u010d",2],DJF:[void 0,void 0,0],DKK:[void 0,"kr",2],DOP:[void 0,"$"],EGP:[void 0,"E\xa3"],ESP:[void 0,"\u20a7",0],EUR:["\u20ac"],FJD:[void 0,"$"],FKP:[void 0,"\xa3"],GBP:["\xa3"],GEL:[void 0,"\u20be"],GHS:[void 0,"GH\u20b5"],GIP:[void 0,"\xa3"],GNF:[void 0,"FG",0],GTQ:[void 0,"Q"],GYD:[void 0,"$",2],HKD:["HK$","$"],HNL:[void 0,"L"],HRK:[void 0,"kn"],HUF:[void 0,"Ft",2],IDR:[void 0,"Rp",2],ILS:["\u20aa"],INR:["\u20b9"],IQD:[void 0,void 0,0],IRR:[void 0,void 0,0],ISK:[void 0,"kr",0],ITL:[void 0,void 0,0],JMD:[void 0,"$"],JOD:[void 0,void 0,3],JPY:["\xa5",void 0,0],KHR:[void 0,"\u17db"],KMF:[void 0,"CF",0],KPW:[void 0,"\u20a9",0],KRW:["\u20a9",void 0,0],KWD:[void 0,void 0,3],KYD:[void 0,"$"],KZT:[void 0,"\u20b8"],LAK:[void 0,"\u20ad",0],LBP:[void 0,"L\xa3",0],LKR:[void 0,"Rs"],LRD:[void 0,"$"],LTL:[void 0,"Lt"],LUF:[void 0,void 0,0],LVL:[void 0,"Ls"],LYD:[void 0,void 0,3],MGA:[void 0,"Ar",0],MGF:[void 0,void 0,0],MMK:[void 0,"K",0],MNT:[void 0,"\u20ae",2],MRO:[void 0,void 0,0],MUR:[void 0,"Rs",2],MXN:["MX$","$"],MYR:[void 0,"RM"],NAD:[void 0,"$"],NGN:[void 0,"\u20a6"],NIO:[void 0,"C$"],NOK:[void 0,"kr",2],NPR:[void 0,"Rs"],NZD:["NZ$","$"],OMR:[void 0,void 0,3],PHP:["\u20b1"],PKR:[void 0,"Rs",2],PLN:[void 0,"z\u0142"],PYG:[void 0,"\u20b2",0],RON:[void 0,"lei"],RSD:[void 0,void 0,0],RUB:[void 0,"\u20bd"],RWF:[void 0,"RF",0],SBD:[void 0,"$"],SEK:[void 0,"kr",2],SGD:[void 0,"$"],SHP:[void 0,"\xa3"],SLE:[void 0,void 0,2],SLL:[void 0,void 0,0],SOS:[void 0,void 0,0],SRD:[void 0,"$"],SSP:[void 0,"\xa3"],STD:[void 0,void 0,0],STN:[void 0,"Db"],SYP:[void 0,"\xa3",0],THB:[void 0,"\u0e3f"],TMM:[void 0,void 0,0],TND:[void 0,void 0,3],TOP:[void 0,"T$"],TRL:[void 0,void 0,0],TRY:[void 0,"\u20ba"],TTD:[void 0,"$"],TWD:["NT$","$",2],TZS:[void 0,void 0,2],UAH:[void 0,"\u20b4"],UGX:[void 0,void 0,0],USD:["$"],UYI:[void 0,void 0,0],UYU:[void 0,"$"],UYW:[void 0,void 0,4],UZS:[void 0,void 0,2],VEF:[void 0,"Bs",2],VND:["\u20ab",void 0,0],VUV:[void 0,void 0,0],XAF:["FCFA",void 0,0],XCD:["EC$","$"],XOF:["F\u202fCFA",void 0,0],XPF:["CFPF",void 0,0],XXX:["\xa4"],YER:[void 0,void 0,0],ZAR:[void 0,"R"],ZMK:[void 0,void 0,0],ZMW:[void 0,"ZK"],ZWD:[void 0,void 0,0]};var O=function(z){return z[z.Decimal=0]="Decimal",z[z.Percent=1]="Percent",z[z.Currency=2]="Currency",z[z.Scientific=3]="Scientific",z}(O||{}),E=function(z){return z[z.Zero=0]="Zero",z[z.One=1]="One",z[z.Two=2]="Two",z[z.Few=3]="Few",z[z.Many=4]="Many",z[z.Other=5]="Other",z}(E||{}),D=function(z){return z[z.Format=0]="Format",z[z.Standalone=1]="Standalone",z}(D||{}),R=function(z){return z[z.Narrow=0]="Narrow",z[z.Abbreviated=1]="Abbreviated",z[z.Wide=2]="Wide",z[z.Short=3]="Short",z}(R||{}),j=function(z){return z[z.Short=0]="Short",z[z.Medium=1]="Medium",z[z.Long=2]="Long",z[z.Full=3]="Full",z}(j||{}),N=function(z){return z[z.Decimal=0]="Decimal",z[z.Group=1]="Group",z[z.List=2]="List",z[z.PercentSign=3]="PercentSign",z[z.PlusSign=4]="PlusSign",z[z.MinusSign=5]="MinusSign",z[z.Exponential=6]="Exponential",z[z.SuperscriptingExponent=7]="SuperscriptingExponent",z[z.PerMille=8]="PerMille",z[z.Infinity=9]="Infinity",z[z.NaN=10]="NaN",z[z.TimeSeparator=11]="TimeSeparator",z[z.CurrencyDecimal=12]="CurrencyDecimal",z[z.CurrencyGroup=13]="CurrencyGroup",z}(N||{}),S=function(z){return z[z.Sunday=0]="Sunday",z[z.Monday=1]="Monday",z[z.Tuesday=2]="Tuesday",z[z.Wednesday=3]="Wednesday",z[z.Thursday=4]="Thursday",z[z.Friday=5]="Friday",z[z.Saturday=6]="Saturday",z}(S||{});function k(z){return(0,n.\u0275findLocaleData)(z)[n.\u0275LocaleDataIndex.LocaleId]}function F(z,Ie,le){const Fe=(0,n.\u0275findLocaleData)(z),Ht=nt([Fe[n.\u0275LocaleDataIndex.DayPeriodsFormat],Fe[n.\u0275LocaleDataIndex.DayPeriodsStandalone]],Ie);return nt(Ht,le)}function Y(z,Ie,le){const Fe=(0,n.\u0275findLocaleData)(z),Ht=nt([Fe[n.\u0275LocaleDataIndex.DaysFormat],Fe[n.\u0275LocaleDataIndex.DaysStandalone]],Ie);return nt(Ht,le)}function se(z,Ie,le){const Fe=(0,n.\u0275findLocaleData)(z),Ht=nt([Fe[n.\u0275LocaleDataIndex.MonthsFormat],Fe[n.\u0275LocaleDataIndex.MonthsStandalone]],Ie);return nt(Ht,le)}function ne(z,Ie){return nt((0,n.\u0275findLocaleData)(z)[n.\u0275LocaleDataIndex.Eras],Ie)}function me(z){return(0,n.\u0275findLocaleData)(z)[n.\u0275LocaleDataIndex.FirstDayOfWeek]}function $(z){return(0,n.\u0275findLocaleData)(z)[n.\u0275LocaleDataIndex.WeekendRange]}function q(z,Ie){return nt((0,n.\u0275findLocaleData)(z)[n.\u0275LocaleDataIndex.DateFormat],Ie)}function Q(z,Ie){return nt((0,n.\u0275findLocaleData)(z)[n.\u0275LocaleDataIndex.TimeFormat],Ie)}function ue(z,Ie){return nt((0,n.\u0275findLocaleData)(z)[n.\u0275LocaleDataIndex.DateTimeFormat],Ie)}function Me(z,Ie){const le=(0,n.\u0275findLocaleData)(z),Fe=le[n.\u0275LocaleDataIndex.NumberSymbols][Ie];if(typeof Fe>"u"){if(Ie===N.CurrencyDecimal)return le[n.\u0275LocaleDataIndex.NumberSymbols][N.Decimal];if(Ie===N.CurrencyGroup)return le[n.\u0275LocaleDataIndex.NumberSymbols][N.Group]}return Fe}function Oe(z,Ie){return(0,n.\u0275findLocaleData)(z)[n.\u0275LocaleDataIndex.NumberFormats][Ie]}function Xe(z){return(0,n.\u0275findLocaleData)(z)[n.\u0275LocaleDataIndex.CurrencySymbol]||null}function Be(z){return(0,n.\u0275findLocaleData)(z)[n.\u0275LocaleDataIndex.CurrencyName]||null}function $e(z){return(0,n.\u0275getLocaleCurrencyCode)(z)}const Mt=n.\u0275getLocalePluralCase;function tt(z){if(!z[n.\u0275LocaleDataIndex.ExtraData])throw new Error(`Missing extra locale data for the locale "${z[n.\u0275LocaleDataIndex.LocaleId]}". Use "registerLocaleData" to load new data. See the "I18n guide" on angular.io to know more.`)}function St(z){const Ie=(0,n.\u0275findLocaleData)(z);return tt(Ie),(Ie[n.\u0275LocaleDataIndex.ExtraData][2]||[]).map(Fe=>"string"==typeof Fe?ot(Fe):[ot(Fe[0]),ot(Fe[1])])}function bt(z,Ie,le){const Fe=(0,n.\u0275findLocaleData)(z);tt(Fe);const Ht=nt([Fe[n.\u0275LocaleDataIndex.ExtraData][0],Fe[n.\u0275LocaleDataIndex.ExtraData][1]],Ie)||[];return nt(Ht,le)||[]}function xt(z){return(0,n.\u0275findLocaleData)(z)[n.\u0275LocaleDataIndex.Directionality]}function nt(z,Ie){for(let le=Ie;le>-1;le--)if(typeof z[le]<"u")return z[le];throw new Error("Locale data API: locale data undefined")}function ot(z){const[Ie,le]=z.split(":");return{hours:+Ie,minutes:+le}}function vt(z,Ie,le="en"){const Fe=function st(z){return(0,n.\u0275findLocaleData)(z)[n.\u0275LocaleDataIndex.Currencies]}(le)[z]||T[z]||[],ht=Fe[1];return"narrow"===Ie&&"string"==typeof ht?ht:Fe[0]||z}const rt=2;function J(z){let Ie;const le=T[z];return le&&(Ie=le[2]),"number"==typeof Ie?Ie:rt}const Ce=/^(\d{4,})-?(\d\d)-?(\d\d)(?:T(\d\d)(?::?(\d\d)(?::?(\d\d)(?:\.(\d+))?)?)?(Z|([+-])(\d\d):?(\d\d))?)?$/,ee={},ae=/((?:[^BEGHLMOSWYZabcdhmswyz']+)|(?:'(?:[^']|'')*')|(?:G{1,5}|y{1,4}|Y{1,4}|M{1,5}|L{1,5}|w{1,2}|W{1}|d{1,2}|E{1,6}|c{1,6}|a{1,5}|b{1,5}|B{1,5}|h{1,2}|H{1,2}|m{1,2}|s{1,2}|S{1,3}|z{1,4}|Z{1,5}|O{1,4}))([\s\S]*)/;var ie=function(z){return z[z.Short=0]="Short",z[z.ShortGMT=1]="ShortGMT",z[z.Long=2]="Long",z[z.Extended=3]="Extended",z}(ie||{}),pe=function(z){return z[z.FullYear=0]="FullYear",z[z.Month=1]="Month",z[z.Date=2]="Date",z[z.Hours=3]="Hours",z[z.Minutes=4]="Minutes",z[z.Seconds=5]="Seconds",z[z.FractionalSeconds=6]="FractionalSeconds",z[z.Day=7]="Day",z}(pe||{}),Te=function(z){return z[z.DayPeriods=0]="DayPeriods",z[z.Days=1]="Days",z[z.Months=2]="Months",z[z.Eras=3]="Eras",z}(Te||{});function ct(z,Ie,le,Fe){let ht=function Rt(z){if(qe(z))return z;if("number"==typeof z&&!isNaN(z))return new Date(z);if("string"==typeof z){if(z=z.trim(),/^(\d{4}(-\d{1,2}(-\d{1,2})?)?)$/.test(z)){const[ht,Ht=1,Zt=1]=z.split("-").map(jn=>+jn);return Lt(ht,Ht-1,Zt)}const le=parseFloat(z);if(!isNaN(z-le))return new Date(le);let Fe;if(Fe=z.match(Ce))return function Ye(z){const Ie=new Date(0);let le=0,Fe=0;const ht=z[8]?Ie.setUTCFullYear:Ie.setFullYear,Ht=z[8]?Ie.setUTCHours:Ie.setHours;z[9]&&(le=Number(z[9]+z[10]),Fe=Number(z[9]+z[11])),ht.call(Ie,Number(z[1]),Number(z[2])-1,Number(z[3]));const Zt=Number(z[4]||0)-le,jn=Number(z[5]||0)-Fe,Ni=Number(z[6]||0),ji=Math.floor(1e3*parseFloat("0."+(z[7]||0)));return Ht.call(Ie,Zt,jn,Ni,ji),Ie}(Fe)}const Ie=new Date(z);if(!qe(Ie))throw new Error(`Unable to convert "${z}" into a date`);return Ie}(z);Ie=Dt(le,Ie)||Ie;let jn,Zt=[];for(;Ie;){if(jn=ae.exec(Ie),!jn){Zt.push(Ie);break}{Zt=Zt.concat(jn.slice(1));const pi=Zt.pop();if(!pi)break;Ie=pi}}let Ni=ht.getTimezoneOffset();Fe&&(Ni=ce(Fe,Ni),ht=function it(z,Ie,le){const Fe=le?-1:1,ht=z.getTimezoneOffset();return function Ee(z,Ie){return(z=new Date(z.getTime())).setMinutes(z.getMinutes()+Ie),z}(z,Fe*(ce(Ie,ht)-ht))}(ht,Fe,!0));let ji="";return Zt.forEach(pi=>{const Rn=function re(z){if(Z[z])return Z[z];let Ie;switch(z){case"G":case"GG":case"GGG":Ie=Yt(Te.Eras,R.Abbreviated);break;case"GGGG":Ie=Yt(Te.Eras,R.Wide);break;case"GGGGG":Ie=Yt(Te.Eras,R.Narrow);break;case"y":Ie=Bt(pe.FullYear,1,0,!1,!0);break;case"yy":Ie=Bt(pe.FullYear,2,0,!0,!0);break;case"yyy":Ie=Bt(pe.FullYear,3,0,!1,!0);break;case"yyyy":Ie=Bt(pe.FullYear,4,0,!1,!0);break;case"Y":Ie=ke(1);break;case"YY":Ie=ke(2,!0);break;case"YYY":Ie=ke(3);break;case"YYYY":Ie=ke(4);break;case"M":case"L":Ie=Bt(pe.Month,1,1);break;case"MM":case"LL":Ie=Bt(pe.Month,2,1);break;case"MMM":Ie=Yt(Te.Months,R.Abbreviated);break;case"MMMM":Ie=Yt(Te.Months,R.Wide);break;case"MMMMM":Ie=Yt(Te.Months,R.Narrow);break;case"LLL":Ie=Yt(Te.Months,R.Abbreviated,D.Standalone);break;case"LLLL":Ie=Yt(Te.Months,R.Wide,D.Standalone);break;case"LLLLL":Ie=Yt(Te.Months,R.Narrow,D.Standalone);break;case"w":Ie=je(1);break;case"ww":Ie=je(2);break;case"W":Ie=je(1,!0);break;case"d":Ie=Bt(pe.Date,1);break;case"dd":Ie=Bt(pe.Date,2);break;case"c":case"cc":Ie=Bt(pe.Day,1);break;case"ccc":Ie=Yt(Te.Days,R.Abbreviated,D.Standalone);break;case"cccc":Ie=Yt(Te.Days,R.Wide,D.Standalone);break;case"ccccc":Ie=Yt(Te.Days,R.Narrow,D.Standalone);break;case"cccccc":Ie=Yt(Te.Days,R.Short,D.Standalone);break;case"E":case"EE":case"EEE":Ie=Yt(Te.Days,R.Abbreviated);break;case"EEEE":Ie=Yt(Te.Days,R.Wide);break;case"EEEEE":Ie=Yt(Te.Days,R.Narrow);break;case"EEEEEE":Ie=Yt(Te.Days,R.Short);break;case"a":case"aa":case"aaa":Ie=Yt(Te.DayPeriods,R.Abbreviated);break;case"aaaa":Ie=Yt(Te.DayPeriods,R.Wide);break;case"aaaaa":Ie=Yt(Te.DayPeriods,R.Narrow);break;case"b":case"bb":case"bbb":Ie=Yt(Te.DayPeriods,R.Abbreviated,D.Standalone,!0);break;case"bbbb":Ie=Yt(Te.DayPeriods,R.Wide,D.Standalone,!0);break;case"bbbbb":Ie=Yt(Te.DayPeriods,R.Narrow,D.Standalone,!0);break;case"B":case"BB":case"BBB":Ie=Yt(Te.DayPeriods,R.Abbreviated,D.Format,!0);break;case"BBBB":Ie=Yt(Te.DayPeriods,R.Wide,D.Format,!0);break;case"BBBBB":Ie=Yt(Te.DayPeriods,R.Narrow,D.Format,!0);break;case"h":Ie=Bt(pe.Hours,1,-12);break;case"hh":Ie=Bt(pe.Hours,2,-12);break;case"H":Ie=Bt(pe.Hours,1);break;case"HH":Ie=Bt(pe.Hours,2);break;case"m":Ie=Bt(pe.Minutes,1);break;case"mm":Ie=Bt(pe.Minutes,2);break;case"s":Ie=Bt(pe.Seconds,1);break;case"ss":Ie=Bt(pe.Seconds,2);break;case"S":Ie=Bt(pe.FractionalSeconds,1);break;case"SS":Ie=Bt(pe.FractionalSeconds,2);break;case"SSS":Ie=Bt(pe.FractionalSeconds,3);break;case"Z":case"ZZ":case"ZZZ":Ie=We(ie.Short);break;case"ZZZZZ":Ie=We(ie.Extended);break;case"O":case"OO":case"OOO":case"z":case"zz":case"zzz":Ie=We(ie.ShortGMT);break;case"OOOO":case"ZZZZ":case"zzzz":Ie=We(ie.Long);break;default:return null}return Z[z]=Ie,Ie}(pi);ji+=Rn?Rn(ht,le,Ni):"''"===pi?"'":pi.replace(/(^'|'$)/g,"").replace(/''/g,"'")}),ji}function Lt(z,Ie,le){const Fe=new Date(0);return Fe.setFullYear(z,Ie,le),Fe.setHours(0,0,0),Fe}function Dt(z,Ie){const le=k(z);if(ee[le]=ee[le]||{},ee[le][Ie])return ee[le][Ie];let Fe="";switch(Ie){case"shortDate":Fe=q(z,j.Short);break;case"mediumDate":Fe=q(z,j.Medium);break;case"longDate":Fe=q(z,j.Long);break;case"fullDate":Fe=q(z,j.Full);break;case"shortTime":Fe=Q(z,j.Short);break;case"mediumTime":Fe=Q(z,j.Medium);break;case"longTime":Fe=Q(z,j.Long);break;case"fullTime":Fe=Q(z,j.Full);break;case"short":const ht=Dt(z,"shortTime"),Ht=Dt(z,"shortDate");Fe=Kt(ue(z,j.Short),[ht,Ht]);break;case"medium":const Zt=Dt(z,"mediumTime"),jn=Dt(z,"mediumDate");Fe=Kt(ue(z,j.Medium),[Zt,jn]);break;case"long":const Ni=Dt(z,"longTime"),ji=Dt(z,"longDate");Fe=Kt(ue(z,j.Long),[Ni,ji]);break;case"full":const pi=Dt(z,"fullTime"),Rn=Dt(z,"fullDate");Fe=Kt(ue(z,j.Full),[pi,Rn])}return Fe&&(ee[le][Ie]=Fe),Fe}function Kt(z,Ie){return Ie&&(z=z.replace(/\{([^}]+)}/g,function(le,Fe){return null!=Ie&&Fe in Ie?Ie[Fe]:le})),z}function ze(z,Ie,le="-",Fe,ht){let Ht="";(z<0||ht&&z<=0)&&(ht?z=1-z:(z=-z,Ht=le));let Zt=String(z);for(;Zt.length0||jn>-le)&&(jn+=le),z===pe.Hours)0===jn&&-12===le&&(jn=12);else if(z===pe.FractionalSeconds)return function yt(z,Ie){return ze(z,3).substring(0,Ie)}(jn,Ie);const Ni=Me(Zt,N.MinusSign);return ze(jn,Ie,Ni,Fe,ht)}}function Yt(z,Ie,le=D.Format,Fe=!1){return function(ht,Ht){return function Ue(z,Ie,le,Fe,ht,Ht){switch(le){case Te.Months:return se(Ie,ht,Fe)[z.getMonth()];case Te.Days:return Y(Ie,ht,Fe)[z.getDay()];case Te.DayPeriods:const Zt=z.getHours(),jn=z.getMinutes();if(Ht){const ji=St(Ie),pi=bt(Ie,ht,Fe),Rn=ji.findIndex(qi=>{if(Array.isArray(qi)){const[Si,ir]=qi,Ar=Zt>=Si.hours&&jn>=Si.minutes,wr=Zt0?Math.floor(ht/60):Math.ceil(ht/60);switch(z){case ie.Short:return(ht>=0?"+":"")+ze(Zt,2,Ht)+ze(Math.abs(ht%60),2,Ht);case ie.ShortGMT:return"GMT"+(ht>=0?"+":"")+ze(Zt,1,Ht);case ie.Long:return"GMT"+(ht>=0?"+":"")+ze(Zt,2,Ht)+":"+ze(Math.abs(ht%60),2,Ht);case ie.Extended:return 0===Fe?"Z":(ht>=0?"+":"")+ze(Zt,2,Ht)+":"+ze(Math.abs(ht%60),2,Ht);default:throw new Error(`Unknown zone width "${z}"`)}}}const ve=0,we=4;function De(z){return Lt(z.getFullYear(),z.getMonth(),z.getDate()+(we-z.getDay()))}function je(z,Ie=!1){return function(le,Fe){let ht;if(Ie){const Ht=new Date(le.getFullYear(),le.getMonth(),1).getDay()-1,Zt=le.getDate();ht=1+Math.floor((Zt+Ht)/7)}else{const Ht=De(le),Zt=function at(z){const Ie=Lt(z,ve,1).getDay();return Lt(z,0,1+(Ie<=we?we:we+7)-Ie)}(Ht.getFullYear()),jn=Ht.getTime()-Zt.getTime();ht=1+Math.round(jn/6048e5)}return ze(ht,z,Me(Fe,N.MinusSign))}}function ke(z,Ie=!1){return function(le,Fe){return ze(De(le).getFullYear(),z,Me(Fe,N.MinusSign),Ie)}}const Z={};function ce(z,Ie){z=z.replace(/:/g,"");const le=Date.parse("Jan 01, 1970 00:00:00 "+z)/6e4;return isNaN(le)?Ie:le}function qe(z){return z instanceof Date&&!isNaN(z.valueOf())}const Ne=/^(\d+)?\.((\d+)(-(\d+))?)?$/,dt=22,At=".",tn="0",wn=";",Tn=",",Sn="#",Mn="\xa4",Ci="%";function di(z,Ie,le,Fe,ht,Ht,Zt=!1){let jn="",Ni=!1;if(isFinite(z)){let ji=function qt(z){let Fe,ht,Ht,Zt,jn,Ie=Math.abs(z)+"",le=0;for((ht=Ie.indexOf(At))>-1&&(Ie=Ie.replace(At,"")),(Ht=Ie.search(/e/i))>0?(ht<0&&(ht=Ht),ht+=+Ie.slice(Ht+1),Ie=Ie.substring(0,Ht)):ht<0&&(ht=Ie.length),Ht=0;Ie.charAt(Ht)===tn;Ht++);if(Ht===(jn=Ie.length))Fe=[0],ht=1;else{for(jn--;Ie.charAt(jn)===tn;)jn--;for(ht-=Ht,Fe=[],Zt=0;Ht<=jn;Ht++,Zt++)Fe[Zt]=Number(Ie.charAt(Ht))}return ht>dt&&(Fe=Fe.splice(0,dt-1),le=ht-1,ht=1),{digits:Fe,exponent:le,integerLen:ht}}(z);Zt&&(ji=function pt(z){if(0===z.digits[0])return z;const Ie=z.digits.length-z.integerLen;return z.exponent?z.exponent+=2:(0===Ie?z.digits.push(0,0):1===Ie&&z.digits.push(0),z.integerLen+=2),z}(ji));let pi=Ie.minInt,Rn=Ie.minFrac,qi=Ie.maxFrac;if(Ht){const fr=Ht.match(Ne);if(null===fr)throw new Error(`${Ht} is not a valid digit info`);const Kr=fr[1],lr=fr[3],Nr=fr[5];null!=Kr&&(pi=hn(Kr)),null!=lr&&(Rn=hn(lr)),null!=Nr?qi=hn(Nr):null!=lr&&Rn>qi&&(qi=Rn)}!function on(z,Ie,le){if(Ie>le)throw new Error(`The minimum number of digits after fraction (${Ie}) is higher than the maximum (${le}).`);let Fe=z.digits,ht=Fe.length-z.integerLen;const Ht=Math.min(Math.max(Ie,ht),le);let Zt=Ht+z.integerLen,jn=Fe[Zt];if(Zt>0){Fe.splice(Math.max(z.integerLen,Zt));for(let Rn=Zt;Rn=5)if(Zt-1<0){for(let Rn=0;Rn>Zt;Rn--)Fe.unshift(0),z.integerLen++;Fe.unshift(1),z.integerLen++}else Fe[Zt-1]++;for(;ht=ji?ir.pop():Ni=!1),qi>=10?1:0},0);pi&&(Fe.unshift(pi),z.integerLen++)}(ji,Rn,qi);let Si=ji.digits,ir=ji.integerLen;const Ar=ji.exponent;let wr=[];for(Ni=Si.every(fr=>!fr);ir0?wr=Si.splice(ir,Si.length):(wr=Si,Si=[0]);const Kn=[];for(Si.length>=Ie.lgSize&&Kn.unshift(Si.splice(-Ie.lgSize,Si.length).join(""));Si.length>Ie.gSize;)Kn.unshift(Si.splice(-Ie.gSize,Si.length).join(""));Si.length&&Kn.unshift(Si.join("")),jn=Kn.join(Me(le,Fe)),wr.length&&(jn+=Me(le,ht)+wr.join("")),Ar&&(jn+=Me(le,N.Exponential)+"+"+Ar)}else jn=Me(le,N.Infinity);return jn=z<0&&!Ni?Ie.negPre+jn+Ie.negSuf:Ie.posPre+jn+Ie.posSuf,jn}function Li(z,Ie,le,Fe,ht){const Zt=mt(Oe(Ie,O.Currency),Me(Ie,N.MinusSign));return Zt.minFrac=J(Fe),Zt.maxFrac=Zt.minFrac,di(z,Zt,Ie,N.CurrencyGroup,N.CurrencyDecimal,ht).replace(Mn,le).replace(Mn,"").trim()}function Qi(z,Ie,le){return di(z,mt(Oe(Ie,O.Percent),Me(Ie,N.MinusSign)),Ie,N.Group,N.Decimal,le,!0).replace(new RegExp(Ci,"g"),Me(Ie,N.PercentSign))}function wt(z,Ie,le){return di(z,mt(Oe(Ie,O.Decimal),Me(Ie,N.MinusSign)),Ie,N.Group,N.Decimal,le)}function mt(z,Ie="-"){const le={minInt:1,minFrac:0,maxFrac:0,posPre:"",posSuf:"",negPre:"",negSuf:"",gSize:0,lgSize:0},Fe=z.split(wn),ht=Fe[0],Ht=Fe[1],Zt=-1!==ht.indexOf(At)?ht.split(At):[ht.substring(0,ht.lastIndexOf(tn)+1),ht.substring(ht.lastIndexOf(tn)+1)],jn=Zt[0],Ni=Zt[1]||"";le.posPre=jn.substring(0,jn.indexOf(Sn));for(let pi=0;pi{class z{}return z.\u0275fac=function(le){return new(le||z)},z.\u0275prov=n.\u0275\u0275defineInjectable({token:z,factory:function(le){let Fe=null;return le?Fe=new le:(ht=n.\u0275\u0275inject(n.LOCALE_ID),Fe=new In(ht)),Fe;var ht},providedIn:"root"}),z})();function $n(z,Ie,le,Fe){let ht=`=${z}`;if(Ie.indexOf(ht)>-1||(ht=le.getPluralCategory(z,Fe),Ie.indexOf(ht)>-1))return ht;if(Ie.indexOf("other")>-1)return"other";throw new Error(`No plural message found for value "${z}"`)}let In=(()=>{class z extends un{constructor(le){super(),this.locale=le}getPluralCategory(le,Fe){switch(Mt(Fe||this.locale)(le)){case E.Zero:return"zero";case E.One:return"one";case E.Two:return"two";case E.Few:return"few";case E.Many:return"many";default:return"other"}}}return z.\u0275fac=function(le){return new(le||z)(n.\u0275\u0275inject(n.LOCALE_ID))},z.\u0275prov=n.\u0275\u0275defineInjectable({token:z,factory:z.\u0275fac}),z})();function Zn(z,Ie,le){return(0,n.\u0275registerLocaleData)(z,Ie,le)}function mi(z,Ie){Ie=encodeURIComponent(Ie);for(const le of z.split(";")){const Fe=le.indexOf("="),[ht,Ht]=-1==Fe?[le,""]:[le.slice(0,Fe),le.slice(Fe+1)];if(ht.trim()===Ie)return decodeURIComponent(Ht)}return null}const Qn=/\s+/,ri=[];let ln=(()=>{class z{constructor(le,Fe,ht,Ht){this._iterableDiffers=le,this._keyValueDiffers=Fe,this._ngEl=ht,this._renderer=Ht,this.initialClasses=ri,this.stateMap=new Map}set klass(le){this.initialClasses=null!=le?le.trim().split(Qn):ri}set ngClass(le){this.rawClass="string"==typeof le?le.trim().split(Qn):le}ngDoCheck(){for(const Fe of this.initialClasses)this._updateState(Fe,!0);const le=this.rawClass;if(Array.isArray(le)||le instanceof Set)for(const Fe of le)this._updateState(Fe,!0);else if(null!=le)for(const Fe of Object.keys(le))this._updateState(Fe,!!le[Fe]);this._applyStateDiff()}_updateState(le,Fe){const ht=this.stateMap.get(le);void 0!==ht?(ht.enabled!==Fe&&(ht.changed=!0,ht.enabled=Fe),ht.touched=!0):this.stateMap.set(le,{enabled:Fe,changed:!0,touched:!0})}_applyStateDiff(){for(const le of this.stateMap){const Fe=le[0],ht=le[1];ht.changed?(this._toggleClass(Fe,ht.enabled),ht.changed=!1):ht.touched||(ht.enabled&&this._toggleClass(Fe,!1),this.stateMap.delete(Fe)),ht.touched=!1}}_toggleClass(le,Fe){(le=le.trim()).length>0&&le.split(Qn).forEach(ht=>{Fe?this._renderer.addClass(this._ngEl.nativeElement,ht):this._renderer.removeClass(this._ngEl.nativeElement,ht)})}}return z.\u0275fac=function(le){return new(le||z)(n.\u0275\u0275directiveInject(n.IterableDiffers),n.\u0275\u0275directiveInject(n.KeyValueDiffers),n.\u0275\u0275directiveInject(n.ElementRef),n.\u0275\u0275directiveInject(n.Renderer2))},z.\u0275dir=n.\u0275\u0275defineDirective({type:z,selectors:[["","ngClass",""]],inputs:{klass:["class","klass"],ngClass:"ngClass"},standalone:!0}),z})(),en=(()=>{class z{constructor(le){this._viewContainerRef=le,this.ngComponentOutlet=null}ngOnChanges(le){const{_viewContainerRef:Fe,ngComponentOutletNgModule:ht,ngComponentOutletNgModuleFactory:Ht}=this;if(Fe.clear(),this._componentRef=void 0,this.ngComponentOutlet){const Zt=this.ngComponentOutletInjector||Fe.parentInjector;(le.ngComponentOutletNgModule||le.ngComponentOutletNgModuleFactory)&&(this._moduleRef&&this._moduleRef.destroy(),this._moduleRef=ht?(0,n.createNgModule)(ht,Dn(Zt)):Ht?Ht.create(Dn(Zt)):void 0),this._componentRef=Fe.createComponent(this.ngComponentOutlet,{index:Fe.length,injector:Zt,ngModuleRef:this._moduleRef,projectableNodes:this.ngComponentOutletContent})}}ngOnDestroy(){this._moduleRef&&this._moduleRef.destroy()}}return z.\u0275fac=function(le){return new(le||z)(n.\u0275\u0275directiveInject(n.ViewContainerRef))},z.\u0275dir=n.\u0275\u0275defineDirective({type:z,selectors:[["","ngComponentOutlet",""]],inputs:{ngComponentOutlet:"ngComponentOutlet",ngComponentOutletInjector:"ngComponentOutletInjector",ngComponentOutletContent:"ngComponentOutletContent",ngComponentOutletNgModule:"ngComponentOutletNgModule",ngComponentOutletNgModuleFactory:"ngComponentOutletNgModuleFactory"},standalone:!0,features:[n.\u0275\u0275NgOnChangesFeature]}),z})();function Dn(z){return z.get(n.NgModuleRef).injector}class An{constructor(Ie,le,Fe,ht){this.$implicit=Ie,this.ngForOf=le,this.index=Fe,this.count=ht}get first(){return 0===this.index}get last(){return this.index===this.count-1}get even(){return this.index%2==0}get odd(){return!this.even}}let Yn=(()=>{class z{set ngForOf(le){this._ngForOf=le,this._ngForOfDirty=!0}set ngForTrackBy(le){this._trackByFn=le}get ngForTrackBy(){return this._trackByFn}constructor(le,Fe,ht){this._viewContainer=le,this._template=Fe,this._differs=ht,this._ngForOf=null,this._ngForOfDirty=!0,this._differ=null}set ngForTemplate(le){le&&(this._template=le)}ngDoCheck(){if(this._ngForOfDirty){this._ngForOfDirty=!1;const le=this._ngForOf;!this._differ&&le&&(this._differ=this._differs.find(le).create(this.ngForTrackBy))}if(this._differ){const le=this._differ.diff(this._ngForOf);le&&this._applyChanges(le)}}_applyChanges(le){const Fe=this._viewContainer;le.forEachOperation((ht,Ht,Zt)=>{if(null==ht.previousIndex)Fe.createEmbeddedView(this._template,new An(ht.item,this._ngForOf,-1,-1),null===Zt?void 0:Zt);else if(null==Zt)Fe.remove(null===Ht?void 0:Ht);else if(null!==Ht){const jn=Fe.get(Ht);Fe.move(jn,Zt),si(jn,ht)}});for(let ht=0,Ht=Fe.length;ht{si(Fe.get(ht.currentIndex),ht)})}static ngTemplateContextGuard(le,Fe){return!0}}return z.\u0275fac=function(le){return new(le||z)(n.\u0275\u0275directiveInject(n.ViewContainerRef),n.\u0275\u0275directiveInject(n.TemplateRef),n.\u0275\u0275directiveInject(n.IterableDiffers))},z.\u0275dir=n.\u0275\u0275defineDirective({type:z,selectors:[["","ngFor","","ngForOf",""]],inputs:{ngForOf:"ngForOf",ngForTrackBy:"ngForTrackBy",ngForTemplate:"ngForTemplate"},standalone:!0}),z})();function si(z,Ie){z.context.$implicit=Ie.item}let Ii=(()=>{class z{constructor(le,Fe){this._viewContainer=le,this._context=new oi,this._thenTemplateRef=null,this._elseTemplateRef=null,this._thenViewRef=null,this._elseViewRef=null,this._thenTemplateRef=Fe}set ngIf(le){this._context.$implicit=this._context.ngIf=le,this._updateView()}set ngIfThen(le){li("ngIfThen",le),this._thenTemplateRef=le,this._thenViewRef=null,this._updateView()}set ngIfElse(le){li("ngIfElse",le),this._elseTemplateRef=le,this._elseViewRef=null,this._updateView()}_updateView(){this._context.$implicit?this._thenViewRef||(this._viewContainer.clear(),this._elseViewRef=null,this._thenTemplateRef&&(this._thenViewRef=this._viewContainer.createEmbeddedView(this._thenTemplateRef,this._context))):this._elseViewRef||(this._viewContainer.clear(),this._thenViewRef=null,this._elseTemplateRef&&(this._elseViewRef=this._viewContainer.createEmbeddedView(this._elseTemplateRef,this._context)))}static ngTemplateContextGuard(le,Fe){return!0}}return z.\u0275fac=function(le){return new(le||z)(n.\u0275\u0275directiveInject(n.ViewContainerRef),n.\u0275\u0275directiveInject(n.TemplateRef))},z.\u0275dir=n.\u0275\u0275defineDirective({type:z,selectors:[["","ngIf",""]],inputs:{ngIf:"ngIf",ngIfThen:"ngIfThen",ngIfElse:"ngIfElse"},standalone:!0}),z})();class oi{constructor(){this.$implicit=null,this.ngIf=null}}function li(z,Ie){if(Ie&&!Ie.createEmbeddedView)throw new Error(`${z} must be a TemplateRef, but received '${(0,n.\u0275stringify)(Ie)}'.`)}class Pi{constructor(Ie,le){this._viewContainerRef=Ie,this._templateRef=le,this._created=!1}create(){this._created=!0,this._viewContainerRef.createEmbeddedView(this._templateRef)}destroy(){this._created=!1,this._viewContainerRef.clear()}enforceState(Ie){Ie&&!this._created?this.create():!Ie&&this._created&&this.destroy()}}let Ct=(()=>{class z{constructor(){this._defaultViews=[],this._defaultUsed=!1,this._caseCount=0,this._lastCaseCheckIndex=0,this._lastCasesMatched=!1}set ngSwitch(le){this._ngSwitch=le,0===this._caseCount&&this._updateDefaultCases(!0)}_addCase(){return this._caseCount++}_addDefault(le){this._defaultViews.push(le)}_matchCase(le){const Fe=le==this._ngSwitch;return this._lastCasesMatched=this._lastCasesMatched||Fe,this._lastCaseCheckIndex++,this._lastCaseCheckIndex===this._caseCount&&(this._updateDefaultCases(!this._lastCasesMatched),this._lastCaseCheckIndex=0,this._lastCasesMatched=!1),Fe}_updateDefaultCases(le){if(this._defaultViews.length>0&&le!==this._defaultUsed){this._defaultUsed=le;for(const Fe of this._defaultViews)Fe.enforceState(le)}}}return z.\u0275fac=function(le){return new(le||z)},z.\u0275dir=n.\u0275\u0275defineDirective({type:z,selectors:[["","ngSwitch",""]],inputs:{ngSwitch:"ngSwitch"},standalone:!0}),z})(),Ft=(()=>{class z{constructor(le,Fe,ht){this.ngSwitch=ht,ht._addCase(),this._view=new Pi(le,Fe)}ngDoCheck(){this._view.enforceState(this.ngSwitch._matchCase(this.ngSwitchCase))}}return z.\u0275fac=function(le){return new(le||z)(n.\u0275\u0275directiveInject(n.ViewContainerRef),n.\u0275\u0275directiveInject(n.TemplateRef),n.\u0275\u0275directiveInject(Ct,9))},z.\u0275dir=n.\u0275\u0275defineDirective({type:z,selectors:[["","ngSwitchCase",""]],inputs:{ngSwitchCase:"ngSwitchCase"},standalone:!0}),z})(),Ae=(()=>{class z{constructor(le,Fe,ht){ht._addDefault(new Pi(le,Fe))}}return z.\u0275fac=function(le){return new(le||z)(n.\u0275\u0275directiveInject(n.ViewContainerRef),n.\u0275\u0275directiveInject(n.TemplateRef),n.\u0275\u0275directiveInject(Ct,9))},z.\u0275dir=n.\u0275\u0275defineDirective({type:z,selectors:[["","ngSwitchDefault",""]],standalone:!0}),z})(),be=(()=>{class z{constructor(le){this._localization=le,this._caseViews={}}set ngPlural(le){this._updateView(le)}addCase(le,Fe){this._caseViews[le]=Fe}_updateView(le){this._clearViews();const ht=$n(le,Object.keys(this._caseViews),this._localization);this._activateView(this._caseViews[ht])}_clearViews(){this._activeView&&this._activeView.destroy()}_activateView(le){le&&(this._activeView=le,this._activeView.create())}}return z.\u0275fac=function(le){return new(le||z)(n.\u0275\u0275directiveInject(un))},z.\u0275dir=n.\u0275\u0275defineDirective({type:z,selectors:[["","ngPlural",""]],inputs:{ngPlural:"ngPlural"},standalone:!0}),z})(),ge=(()=>{class z{constructor(le,Fe,ht,Ht){this.value=le;const Zt=!isNaN(Number(le));Ht.addCase(Zt?`=${le}`:le,new Pi(ht,Fe))}}return z.\u0275fac=function(le){return new(le||z)(n.\u0275\u0275injectAttribute("ngPluralCase"),n.\u0275\u0275directiveInject(n.TemplateRef),n.\u0275\u0275directiveInject(n.ViewContainerRef),n.\u0275\u0275directiveInject(be,1))},z.\u0275dir=n.\u0275\u0275defineDirective({type:z,selectors:[["","ngPluralCase",""]],standalone:!0}),z})(),Ge=(()=>{class z{constructor(le,Fe,ht){this._ngEl=le,this._differs=Fe,this._renderer=ht,this._ngStyle=null,this._differ=null}set ngStyle(le){this._ngStyle=le,!this._differ&&le&&(this._differ=this._differs.find(le).create())}ngDoCheck(){if(this._differ){const le=this._differ.diff(this._ngStyle);le&&this._applyChanges(le)}}_setStyle(le,Fe){const[ht,Ht]=le.split("."),Zt=-1===ht.indexOf("-")?void 0:n.RendererStyleFlags2.DashCase;null!=Fe?this._renderer.setStyle(this._ngEl.nativeElement,ht,Ht?`${Fe}${Ht}`:Fe,Zt):this._renderer.removeStyle(this._ngEl.nativeElement,ht,Zt)}_applyChanges(le){le.forEachRemovedItem(Fe=>this._setStyle(Fe.key,null)),le.forEachAddedItem(Fe=>this._setStyle(Fe.key,Fe.currentValue)),le.forEachChangedItem(Fe=>this._setStyle(Fe.key,Fe.currentValue))}}return z.\u0275fac=function(le){return new(le||z)(n.\u0275\u0275directiveInject(n.ElementRef),n.\u0275\u0275directiveInject(n.KeyValueDiffers),n.\u0275\u0275directiveInject(n.Renderer2))},z.\u0275dir=n.\u0275\u0275defineDirective({type:z,selectors:[["","ngStyle",""]],inputs:{ngStyle:"ngStyle"},standalone:!0}),z})(),It=(()=>{class z{constructor(le){this._viewContainerRef=le,this._viewRef=null,this.ngTemplateOutletContext=null,this.ngTemplateOutlet=null,this.ngTemplateOutletInjector=null}ngOnChanges(le){if(le.ngTemplateOutlet||le.ngTemplateOutletInjector){const Fe=this._viewContainerRef;if(this._viewRef&&Fe.remove(Fe.indexOf(this._viewRef)),this.ngTemplateOutlet){const{ngTemplateOutlet:ht,ngTemplateOutletContext:Ht,ngTemplateOutletInjector:Zt}=this;this._viewRef=Fe.createEmbeddedView(ht,Ht,Zt?{injector:Zt}:void 0)}else this._viewRef=null}else this._viewRef&&le.ngTemplateOutletContext&&this.ngTemplateOutletContext&&(this._viewRef.context=this.ngTemplateOutletContext)}}return z.\u0275fac=function(le){return new(le||z)(n.\u0275\u0275directiveInject(n.ViewContainerRef))},z.\u0275dir=n.\u0275\u0275defineDirective({type:z,selectors:[["","ngTemplateOutlet",""]],inputs:{ngTemplateOutletContext:"ngTemplateOutletContext",ngTemplateOutlet:"ngTemplateOutlet",ngTemplateOutletInjector:"ngTemplateOutletInjector"},standalone:!0,features:[n.\u0275\u0275NgOnChangesFeature]}),z})();function an(z,Ie){return new n.\u0275RuntimeError(2100,!1)}class gn{createSubscription(Ie,le){return(0,n.untracked)(()=>Ie.subscribe({next:le,error:Fe=>{throw Fe}}))}dispose(Ie){(0,n.untracked)(()=>Ie.unsubscribe())}}class pn{createSubscription(Ie,le){return Ie.then(le,Fe=>{throw Fe})}dispose(Ie){}}const Jn=new pn,Nn=new gn;let kn=(()=>{class z{constructor(le){this._latestValue=null,this._subscription=null,this._obj=null,this._strategy=null,this._ref=le}ngOnDestroy(){this._subscription&&this._dispose(),this._ref=null}transform(le){return this._obj?le!==this._obj?(this._dispose(),this.transform(le)):this._latestValue:(le&&this._subscribe(le),this._latestValue)}_subscribe(le){this._obj=le,this._strategy=this._selectStrategy(le),this._subscription=this._strategy.createSubscription(le,Fe=>this._updateLatestValue(le,Fe))}_selectStrategy(le){if((0,n.\u0275isPromise)(le))return Jn;if((0,n.\u0275isSubscribable)(le))return Nn;throw an()}_dispose(){this._strategy.dispose(this._subscription),this._latestValue=null,this._subscription=null,this._obj=null}_updateLatestValue(le,Fe){le===this._obj&&(this._latestValue=Fe,this._ref.markForCheck())}}return z.\u0275fac=function(le){return new(le||z)(n.\u0275\u0275directiveInject(n.ChangeDetectorRef,16))},z.\u0275pipe=n.\u0275\u0275definePipe({name:"async",type:z,pure:!1,standalone:!0}),z})(),Un=(()=>{class z{transform(le){if(null==le)return null;if("string"!=typeof le)throw an();return le.toLowerCase()}}return z.\u0275fac=function(le){return new(le||z)},z.\u0275pipe=n.\u0275\u0275definePipe({name:"lowercase",type:z,pure:!0,standalone:!0}),z})();const vi=/(?:[0-9A-Za-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16F1-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CA\uA7D0\uA7D1\uA7D3\uA7D5-\uA7D9\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF40\uDF42-\uDF49\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDD70-\uDD7A\uDD7C-\uDD8A\uDD8C-\uDD92\uDD94\uDD95\uDD97-\uDDA1\uDDA3-\uDDB1\uDDB3-\uDDB9\uDDBB\uDDBC\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67\uDF80-\uDF85\uDF87-\uDFB0\uDFB2-\uDFBA]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2\uDD00-\uDD23\uDE80-\uDEA9\uDEB0\uDEB1\uDF00-\uDF1C\uDF27\uDF30-\uDF45\uDF70-\uDF81\uDFB0-\uDFC4\uDFE0-\uDFF6]|\uD804[\uDC03-\uDC37\uDC71\uDC72\uDC75\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD44\uDD47\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC5F-\uDC61\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDEB8\uDF00-\uDF1A\uDF40-\uDF46]|\uD806[\uDC00-\uDC2B\uDCA0-\uDCDF\uDCFF-\uDD06\uDD09\uDD0C-\uDD13\uDD15\uDD16\uDD18-\uDD2F\uDD3F\uDD41\uDDA0-\uDDA7\uDDAA-\uDDD0\uDDE1\uDDE3\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE89\uDE9D\uDEB0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD89\uDD98\uDEE0-\uDEF2\uDFB0]|\uD808[\uDC00-\uDF99]|\uD809[\uDC80-\uDD43]|\uD80B[\uDF90-\uDFF0]|[\uD80C\uD81C-\uD820\uD822\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879\uD880-\uD883][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE70-\uDEBE\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDE40-\uDE7F\uDF00-\uDF4A\uDF50\uDF93-\uDF9F\uDFE0\uDFE1\uDFE3]|\uD821[\uDC00-\uDFF7]|\uD823[\uDC00-\uDCD5\uDD00-\uDD08]|\uD82B[\uDFF0-\uDFF3\uDFF5-\uDFFB\uDFFD\uDFFE]|\uD82C[\uDC00-\uDD22\uDD50-\uDD52\uDD64-\uDD67\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD837[\uDF00-\uDF1E]|\uD838[\uDD00-\uDD2C\uDD37-\uDD3D\uDD4E\uDE90-\uDEAD\uDEC0-\uDEEB]|\uD839[\uDFE0-\uDFE6\uDFE8-\uDFEB\uDFED\uDFEE\uDFF0-\uDFFE]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43\uDD4B]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDEDF\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF38\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uD884[\uDC00-\uDF4A])\S*/g;let $i=(()=>{class z{transform(le){if(null==le)return null;if("string"!=typeof le)throw an();return le.replace(vi,Fe=>Fe[0].toUpperCase()+Fe.slice(1).toLowerCase())}}return z.\u0275fac=function(le){return new(le||z)},z.\u0275pipe=n.\u0275\u0275definePipe({name:"titlecase",type:z,pure:!0,standalone:!0}),z})(),er=(()=>{class z{transform(le){if(null==le)return null;if("string"!=typeof le)throw an();return le.toUpperCase()}}return z.\u0275fac=function(le){return new(le||z)},z.\u0275pipe=n.\u0275\u0275definePipe({name:"uppercase",type:z,pure:!0,standalone:!0}),z})();const yn=new n.InjectionToken("DATE_PIPE_DEFAULT_TIMEZONE"),rn=new n.InjectionToken("DATE_PIPE_DEFAULT_OPTIONS");let xn=(()=>{class z{constructor(le,Fe,ht){this.locale=le,this.defaultTimezone=Fe,this.defaultOptions=ht}transform(le,Fe,ht,Ht){if(null==le||""===le||le!=le)return null;try{return ct(le,Fe??this.defaultOptions?.dateFormat??"mediumDate",Ht||this.locale,ht??this.defaultOptions?.timezone??this.defaultTimezone??void 0)}catch(Zt){throw an()}}}return z.\u0275fac=function(le){return new(le||z)(n.\u0275\u0275directiveInject(n.LOCALE_ID,16),n.\u0275\u0275directiveInject(yn,24),n.\u0275\u0275directiveInject(rn,24))},z.\u0275pipe=n.\u0275\u0275definePipe({name:"date",type:z,pure:!0,standalone:!0}),z})();const ti=/#/g;let Ti=(()=>{class z{constructor(le){this._localization=le}transform(le,Fe,ht){if(null==le)return"";if("object"!=typeof Fe||null===Fe)throw an();return Fe[$n(le,Object.keys(Fe),this._localization,ht)].replace(ti,le.toString())}}return z.\u0275fac=function(le){return new(le||z)(n.\u0275\u0275directiveInject(un,16))},z.\u0275pipe=n.\u0275\u0275definePipe({name:"i18nPlural",type:z,pure:!0,standalone:!0}),z})(),zi=(()=>{class z{transform(le,Fe){if(null==le)return"";if("object"!=typeof Fe||"string"!=typeof le)throw an();return Fe.hasOwnProperty(le)?Fe[le]:Fe.hasOwnProperty("other")?Fe.other:""}}return z.\u0275fac=function(le){return new(le||z)},z.\u0275pipe=n.\u0275\u0275definePipe({name:"i18nSelect",type:z,pure:!0,standalone:!0}),z})(),xi=(()=>{class z{transform(le){return JSON.stringify(le,null,2)}}return z.\u0275fac=function(le){return new(le||z)},z.\u0275pipe=n.\u0275\u0275definePipe({name:"json",type:z,pure:!1,standalone:!0}),z})(),gi=(()=>{class z{constructor(le){this.differs=le,this.keyValues=[],this.compareFn=Ke}transform(le,Fe=Ke){if(!le||!(le instanceof Map)&&"object"!=typeof le)return null;this.differ||(this.differ=this.differs.find(le).create());const ht=this.differ.diff(le),Ht=Fe!==this.compareFn;return ht&&(this.keyValues=[],ht.forEachItem(Zt=>{this.keyValues.push(function _r(z,Ie){return{key:z,value:Ie}}(Zt.key,Zt.currentValue))})),(ht||Ht)&&(this.keyValues.sort(Fe),this.compareFn=Fe),this.keyValues}}return z.\u0275fac=function(le){return new(le||z)(n.\u0275\u0275directiveInject(n.KeyValueDiffers,16))},z.\u0275pipe=n.\u0275\u0275definePipe({name:"keyvalue",type:z,pure:!1,standalone:!0}),z})();function Ke(z,Ie){const le=z.key,Fe=Ie.key;if(le===Fe)return 0;if(void 0===le)return 1;if(void 0===Fe)return-1;if(null===le)return 1;if(null===Fe)return-1;if("string"==typeof le&&"string"==typeof Fe)return le{class z{constructor(le){this._locale=le}transform(le,Fe,ht){if(!Pe(le))return null;ht=ht||this._locale;try{return wt(Je(le),ht,Fe)}catch(Ht){throw an()}}}return z.\u0275fac=function(le){return new(le||z)(n.\u0275\u0275directiveInject(n.LOCALE_ID,16))},z.\u0275pipe=n.\u0275\u0275definePipe({name:"number",type:z,pure:!0,standalone:!0}),z})(),U=(()=>{class z{constructor(le){this._locale=le}transform(le,Fe,ht){if(!Pe(le))return null;ht=ht||this._locale;try{return Qi(Je(le),ht,Fe)}catch(Ht){throw an()}}}return z.\u0275fac=function(le){return new(le||z)(n.\u0275\u0275directiveInject(n.LOCALE_ID,16))},z.\u0275pipe=n.\u0275\u0275definePipe({name:"percent",type:z,pure:!0,standalone:!0}),z})(),fe=(()=>{class z{constructor(le,Fe="USD"){this._locale=le,this._defaultCurrencyCode=Fe}transform(le,Fe=this._defaultCurrencyCode,ht="symbol",Ht,Zt){if(!Pe(le))return null;Zt=Zt||this._locale,"boolean"==typeof ht&&(ht=ht?"symbol":"code");let jn=Fe||this._defaultCurrencyCode;"code"!==ht&&(jn="symbol"===ht||"symbol-narrow"===ht?vt(jn,"symbol"===ht?"wide":"narrow",Zt):ht);try{return Li(Je(le),Zt,jn,Fe,Ht)}catch(Ni){throw an()}}}return z.\u0275fac=function(le){return new(le||z)(n.\u0275\u0275directiveInject(n.LOCALE_ID,16),n.\u0275\u0275directiveInject(n.DEFAULT_CURRENCY_CODE,16))},z.\u0275pipe=n.\u0275\u0275definePipe({name:"currency",type:z,pure:!0,standalone:!0}),z})();function Pe(z){return!(null==z||""===z||z!=z)}function Je(z){if("string"==typeof z&&!isNaN(Number(z)-parseFloat(z)))return Number(z);if("number"!=typeof z)throw new Error(`${z} is not a number`);return z}let Gt=(()=>{class z{transform(le,Fe,ht){if(null==le)return null;if(!this.supports(le))throw an();return le.slice(Fe,ht)}supports(le){return"string"==typeof le||Array.isArray(le)}}return z.\u0275fac=function(le){return new(le||z)},z.\u0275pipe=n.\u0275\u0275definePipe({name:"slice",type:z,pure:!1,standalone:!0}),z})(),Gi=(()=>{class z{}return z.\u0275fac=function(le){return new(le||z)},z.\u0275mod=n.\u0275\u0275defineNgModule({type:z}),z.\u0275inj=n.\u0275\u0275defineInjector({}),z})();const Vi="browser",rr="server",or="browserWorkerApp",Zi="browserWorkerUi";function ur(z){return z===Vi}function Et(z){return z===rr}function _t(z){return z===or}function ft(z){return z===Zi}const Tt=new n.Version("16.1.7");let Ut=(()=>{class z{}return z.\u0275prov=(0,n.\u0275\u0275defineInjectable)({token:z,providedIn:"root",factory:()=>new Wt((0,n.\u0275\u0275inject)(v),window)}),z})();class Wt{constructor(Ie,le){this.document=Ie,this.window=le,this.offset=()=>[0,0]}setOffset(Ie){this.offset=Array.isArray(Ie)?()=>Ie:Ie}getScrollPosition(){return this.supportsScrolling()?[this.window.pageXOffset,this.window.pageYOffset]:[0,0]}scrollToPosition(Ie){this.supportsScrolling()&&this.window.scrollTo(Ie[0],Ie[1])}scrollToAnchor(Ie){if(!this.supportsScrolling())return;const le=function Cn(z,Ie){const le=z.getElementById(Ie)||z.getElementsByName(Ie)[0];if(le)return le;if("function"==typeof z.createTreeWalker&&z.body&&"function"==typeof z.body.attachShadow){const Fe=z.createTreeWalker(z.body,NodeFilter.SHOW_ELEMENT);let ht=Fe.currentNode;for(;ht;){const Ht=ht.shadowRoot;if(Ht){const Zt=Ht.getElementById(Ie)||Ht.querySelector(`[name="${Ie}"]`);if(Zt)return Zt}ht=Fe.nextNode()}}return null}(this.document,Ie);le&&(this.scrollToElement(le),le.focus())}setHistoryScrollRestoration(Ie){if(this.supportScrollRestoration()){const le=this.window.history;le&&le.scrollRestoration&&(le.scrollRestoration=Ie)}}scrollToElement(Ie){const le=Ie.getBoundingClientRect(),Fe=le.left+this.window.pageXOffset,ht=le.top+this.window.pageYOffset,Ht=this.offset();this.window.scrollTo(Fe-Ht[0],ht-Ht[1])}supportScrollRestoration(){try{if(!this.supportsScrolling())return!1;const Ie=nn(this.window.history)||nn(Object.getPrototypeOf(this.window.history));return!(!Ie||!Ie.writable&&!Ie.set)}catch{return!1}}supportsScrolling(){try{return!!this.window&&!!this.window.scrollTo&&"pageXOffset"in this.window}catch{return!1}}}function nn(z){return Object.getOwnPropertyDescriptor(z,"scrollRestoration")}class _n{setOffset(Ie){}getScrollPosition(){return[0,0]}scrollToPosition(Ie){}scrollToAnchor(Ie){}setHistoryScrollRestoration(Ie){}}class zn{}function Xn(z){return z.startsWith("/")?z.slice(1):z}const ai=z=>z.src,Fi=new n.InjectionToken("ImageLoader",{providedIn:"root",factory:()=>ai});function Xi(z,Ie){return function(Fe){return function Mi(z){if("string"!=typeof z||""===z.trim())return!1;try{return new URL(z),!0}catch{return!1}}(Fe)||function Jr(z,Ie){throw new n.\u0275RuntimeError(2959,!1)}(),Fe=function ni(z){return z.endsWith("/")?z.slice(0,-1):z}(Fe),[{provide:Fi,useValue:Zt=>(function Ri(z){return/^https?:\/\//.test(z)}(Zt.src)&&function Ho(z,Ie){throw new n.\u0275RuntimeError(2959,!1)}(),z(Fe,{...Zt,src:Xn(Zt.src)}))}]}}const us=Xi(oo);function oo(z,Ie){let le="format=auto";return Ie.width&&(le+=`,width=${Ie.width}`),`${z}/cdn-cgi/image/${le}/${Ie.src}`}const Go=Xi(go);function go(z,Ie){let le="f_auto,q_auto";return Ie.width&&(le+=`,w_${Ie.width}`),`${z}/image/upload/${le}/${Ie.src}`}const Ko=Xi(Yo);function Yo(z,Ie){const{src:le,width:Fe}=Ie;let ht;return ht=Fe?[z,`tr:w-${Fe}`,le]:[z,le],ht.join("/")}const He=Xi(Qt);function Qt(z,Ie){const le=new URL(`${z}/${Ie.src}`);return le.searchParams.set("auto","format"),Ie.width&&le.searchParams.set("w",Ie.width.toString()),le.href}const _o=new n.InjectionToken("PRECONNECT_CHECK_BLOCKLIST"),hs=new n.InjectionToken("NG_OPTIMIZED_PRELOADED_IMAGES",{providedIn:"root",factory:()=>new Set});let fs=(()=>{class z{constructor(){this.preloadedImages=(0,n.inject)(hs),this.document=(0,n.inject)(v)}createPreloadLinkTag(le,Fe,ht,Ht){if(this.preloadedImages.has(Fe))return;this.preloadedImages.add(Fe);const Zt=le.createElement("link");le.setAttribute(Zt,"as","image"),le.setAttribute(Zt,"href",Fe),le.setAttribute(Zt,"rel","preload"),le.setAttribute(Zt,"fetchpriority","high"),Ht&&le.setAttribute(Zt,"imageSizes",Ht),ht&&le.setAttribute(Zt,"imageSrcset",ht),le.appendChild(this.document.head,Zt)}}return z.\u0275fac=function(le){return new(le||z)},z.\u0275prov=n.\u0275\u0275defineInjectable({token:z,factory:z.\u0275fac,providedIn:"root"}),z})();const Zo=/^((\s*\d+w\s*(,|$)){1,})$/,so=[1,2],Ao={breakpoints:[16,32,48,64,96,128,256,384,640,750,828,1080,1200,1920,2048,3840]},ar=new n.InjectionToken("ImageConfig",{providedIn:"root",factory:()=>Ao});let Xo=(()=>{class z{constructor(){this.imageLoader=(0,n.inject)(Fi),this.config=function eo(z){let Ie={};return z.breakpoints&&(Ie.breakpoints=z.breakpoints.sort((le,Fe)=>le-Fe)),Object.assign({},Ao,z,Ie)}((0,n.inject)(ar)),this.renderer=(0,n.inject)(n.Renderer2),this.imgElement=(0,n.inject)(n.ElementRef).nativeElement,this.injector=(0,n.inject)(n.Injector),this.isServer=Et((0,n.inject)(n.PLATFORM_ID)),this.preloadLinkCreator=(0,n.inject)(fs),this.lcpObserver=null,this._renderedSrc=null,this.priority=!1,this.disableOptimizedSrcset=!1,this.fill=!1}ngOnInit(){this.setHostAttributes()}setHostAttributes(){this.fill?this.sizes||(this.sizes="100vw"):(this.setHostAttribute("width",this.width.toString()),this.setHostAttribute("height",this.height.toString())),this.setHostAttribute("loading",this.getLoadingBehavior()),this.setHostAttribute("fetchpriority",this.getFetchPriority()),this.setHostAttribute("ng-img","true");const le=this.getRewrittenSrc();let Fe;this.setHostAttribute("src",le),this.sizes&&this.setHostAttribute("sizes",this.sizes),this.ngSrcset?Fe=this.getRewrittenSrcset():this.shouldGenerateAutomaticSrcset()&&(Fe=this.getAutomaticSrcset()),Fe&&this.setHostAttribute("srcset",Fe),this.isServer&&this.priority&&this.preloadLinkCreator.createPreloadLinkTag(this.renderer,le,Fe,this.sizes)}ngOnChanges(le){}callImageLoader(le){let Fe=le;return this.loaderParams&&(Fe.loaderParams=this.loaderParams),this.imageLoader(Fe)}getLoadingBehavior(){return this.priority||void 0===this.loading?this.priority?"eager":"lazy":this.loading}getFetchPriority(){return this.priority?"high":"auto"}getRewrittenSrc(){return this._renderedSrc||(this._renderedSrc=this.callImageLoader({src:this.ngSrc})),this._renderedSrc}getRewrittenSrcset(){const le=Zo.test(this.ngSrcset);return this.ngSrcset.split(",").filter(ht=>""!==ht).map(ht=>{ht=ht.trim();const Ht=le?parseFloat(ht):parseFloat(ht)*this.width;return`${this.callImageLoader({src:this.ngSrc,width:Ht})} ${ht}`}).join(", ")}getAutomaticSrcset(){return this.sizes?this.getResponsiveSrcset():this.getFixedSrcset()}getResponsiveSrcset(){const{breakpoints:le}=this.config;let Fe=le;return"100vw"===this.sizes?.trim()&&(Fe=le.filter(Ht=>Ht>=640)),Fe.map(Ht=>`${this.callImageLoader({src:this.ngSrc,width:Ht})} ${Ht}w`).join(", ")}getFixedSrcset(){return so.map(Fe=>`${this.callImageLoader({src:this.ngSrc,width:this.width*Fe})} ${Fe}x`).join(", ")}shouldGenerateAutomaticSrcset(){return!this.disableOptimizedSrcset&&!this.srcset&&this.imageLoader!==ai&&!(this.width>1920||this.height>1080)}ngOnDestroy(){}setHostAttribute(le,Fe){this.renderer.setAttribute(this.imgElement,le,Fe)}}return z.\u0275fac=function(le){return new(le||z)},z.\u0275dir=n.\u0275\u0275defineDirective({type:z,selectors:[["img","ngSrc",""]],hostVars:8,hostBindings:function(le,Fe){2&le&&n.\u0275\u0275styleProp("position",Fe.fill?"absolute":null)("width",Fe.fill?"100%":null)("height",Fe.fill?"100%":null)("inset",Fe.fill?"0px":null)},inputs:{ngSrc:"ngSrc",ngSrcset:"ngSrcset",sizes:"sizes",width:["width","width",n.numberAttribute],height:["height","height",n.numberAttribute],loading:"loading",priority:["priority","priority",n.booleanAttribute],loaderParams:"loaderParams",disableOptimizedSrcset:["disableOptimizedSrcset","disableOptimizedSrcset",n.booleanAttribute],fill:["fill","fill",n.booleanAttribute],src:"src",srcset:"srcset"},standalone:!0,features:[n.\u0275\u0275InputTransformsFeature,n.\u0275\u0275NgOnChangesFeature]}),z})()},9862:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{FetchBackend:()=>Be,HTTP_INTERCEPTORS:()=>xt,HttpBackend:()=>m,HttpClient:()=>ue,HttpClientJsonpModule:()=>wn,HttpClientModule:()=>tn,HttpClientXsrfModule:()=>At,HttpContext:()=>R,HttpContextToken:()=>D,HttpErrorResponse:()=>q,HttpEventType:()=>se,HttpFeatureKind:()=>ke,HttpHandler:()=>h,HttpHeaderResponse:()=>me,HttpHeaders:()=>_,HttpParams:()=>E,HttpRequest:()=>Y,HttpResponse:()=>$,HttpResponseBase:()=>ne,HttpUrlEncodingCodec:()=>x,HttpXhrBackend:()=>Bt,HttpXsrfTokenExtractor:()=>we,JsonpClientBackend:()=>Lt,JsonpInterceptor:()=>Kt,provideHttpClient:()=>re,withFetch:()=>dt,withInterceptors:()=>ce,withInterceptorsFromDi:()=>it,withJsonpSupport:()=>qe,withNoXsrfProtection:()=>Ye,withRequestsMadeViaParent:()=>Ne,withXsrfConfiguration:()=>Rt,\u0275HttpInterceptingHandler:()=>rt,\u0275HttpInterceptorHandler:()=>rt,\u0275withHttpTransferCache:()=>Qi});var n=g(5861),p=g(5879),C=g(2096),b=g(5592),o=g(2459),v=g(6328),a=g(2181),c=g(7398),s=g(4716),l=g(4664),d=g(9397),r=g(1374),u=g(6814);class h{}class m{}class _{constructor(mt){this.normalizedNames=new Map,this.lazyUpdate=null,mt?"string"==typeof mt?this.lazyInit=()=>{this.headers=new Map,mt.split("\n").forEach(pt=>{const qt=pt.indexOf(":");if(qt>0){const on=pt.slice(0,qt),hn=on.toLowerCase(),un=pt.slice(qt+1).trim();this.maybeSetNormalizedName(on,hn),this.headers.has(hn)?this.headers.get(hn).push(un):this.headers.set(hn,[un])}})}:typeof Headers<"u"&&mt instanceof Headers?(this.headers=new Map,mt.forEach((pt,qt)=>{this.setHeaderEntries(qt,pt)})):this.lazyInit=()=>{this.headers=new Map,Object.entries(mt).forEach(([pt,qt])=>{this.setHeaderEntries(pt,qt)})}:this.headers=new Map}has(mt){return this.init(),this.headers.has(mt.toLowerCase())}get(mt){this.init();const pt=this.headers.get(mt.toLowerCase());return pt&&pt.length>0?pt[0]:null}keys(){return this.init(),Array.from(this.normalizedNames.values())}getAll(mt){return this.init(),this.headers.get(mt.toLowerCase())||null}append(mt,pt){return this.clone({name:mt,value:pt,op:"a"})}set(mt,pt){return this.clone({name:mt,value:pt,op:"s"})}delete(mt,pt){return this.clone({name:mt,value:pt,op:"d"})}maybeSetNormalizedName(mt,pt){this.normalizedNames.has(pt)||this.normalizedNames.set(pt,mt)}init(){this.lazyInit&&(this.lazyInit instanceof _?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(mt=>this.applyUpdate(mt)),this.lazyUpdate=null))}copyFrom(mt){mt.init(),Array.from(mt.headers.keys()).forEach(pt=>{this.headers.set(pt,mt.headers.get(pt)),this.normalizedNames.set(pt,mt.normalizedNames.get(pt))})}clone(mt){const pt=new _;return pt.lazyInit=this.lazyInit&&this.lazyInit instanceof _?this.lazyInit:this,pt.lazyUpdate=(this.lazyUpdate||[]).concat([mt]),pt}applyUpdate(mt){const pt=mt.name.toLowerCase();switch(mt.op){case"a":case"s":let qt=mt.value;if("string"==typeof qt&&(qt=[qt]),0===qt.length)return;this.maybeSetNormalizedName(mt.name,pt);const on=("a"===mt.op?this.headers.get(pt):void 0)||[];on.push(...qt),this.headers.set(pt,on);break;case"d":const hn=mt.value;if(hn){let un=this.headers.get(pt);if(!un)return;un=un.filter($n=>-1===hn.indexOf($n)),0===un.length?(this.headers.delete(pt),this.normalizedNames.delete(pt)):this.headers.set(pt,un)}else this.headers.delete(pt),this.normalizedNames.delete(pt)}}setHeaderEntries(mt,pt){const qt=(Array.isArray(pt)?pt:[pt]).map(hn=>hn.toString()),on=mt.toLowerCase();this.headers.set(on,qt),this.maybeSetNormalizedName(mt,on)}forEach(mt){this.init(),Array.from(this.normalizedNames.keys()).forEach(pt=>mt(this.normalizedNames.get(pt),this.headers.get(pt)))}}class x{encodeKey(mt){return T(mt)}encodeValue(mt){return T(mt)}decodeKey(mt){return decodeURIComponent(mt)}decodeValue(mt){return decodeURIComponent(mt)}}const L=/%(\d[a-f0-9])/gi,A={40:"@","3A":":",24:"$","2C":",","3B":";","3D":"=","3F":"?","2F":"/"};function T(wt){return encodeURIComponent(wt).replace(L,(mt,pt)=>A[pt]??mt)}function O(wt){return`${wt}`}class E{constructor(mt={}){if(this.updates=null,this.cloneFrom=null,this.encoder=mt.encoder||new x,mt.fromString){if(mt.fromObject)throw new Error("Cannot specify both fromString and fromObject.");this.map=function w(wt,mt){const pt=new Map;return wt.length>0&&wt.replace(/^\?/,"").split("&").forEach(on=>{const hn=on.indexOf("="),[un,$n]=-1==hn?[mt.decodeKey(on),""]:[mt.decodeKey(on.slice(0,hn)),mt.decodeValue(on.slice(hn+1))],In=pt.get(un)||[];In.push($n),pt.set(un,In)}),pt}(mt.fromString,this.encoder)}else mt.fromObject?(this.map=new Map,Object.keys(mt.fromObject).forEach(pt=>{const qt=mt.fromObject[pt],on=Array.isArray(qt)?qt.map(O):[O(qt)];this.map.set(pt,on)})):this.map=null}has(mt){return this.init(),this.map.has(mt)}get(mt){this.init();const pt=this.map.get(mt);return pt?pt[0]:null}getAll(mt){return this.init(),this.map.get(mt)||null}keys(){return this.init(),Array.from(this.map.keys())}append(mt,pt){return this.clone({param:mt,value:pt,op:"a"})}appendAll(mt){const pt=[];return Object.keys(mt).forEach(qt=>{const on=mt[qt];Array.isArray(on)?on.forEach(hn=>{pt.push({param:qt,value:hn,op:"a"})}):pt.push({param:qt,value:on,op:"a"})}),this.clone(pt)}set(mt,pt){return this.clone({param:mt,value:pt,op:"s"})}delete(mt,pt){return this.clone({param:mt,value:pt,op:"d"})}toString(){return this.init(),this.keys().map(mt=>{const pt=this.encoder.encodeKey(mt);return this.map.get(mt).map(qt=>pt+"="+this.encoder.encodeValue(qt)).join("&")}).filter(mt=>""!==mt).join("&")}clone(mt){const pt=new E({encoder:this.encoder});return pt.cloneFrom=this.cloneFrom||this,pt.updates=(this.updates||[]).concat(mt),pt}init(){null===this.map&&(this.map=new Map),null!==this.cloneFrom&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(mt=>this.map.set(mt,this.cloneFrom.map.get(mt))),this.updates.forEach(mt=>{switch(mt.op){case"a":case"s":const pt=("a"===mt.op?this.map.get(mt.param):void 0)||[];pt.push(O(mt.value)),this.map.set(mt.param,pt);break;case"d":if(void 0===mt.value){this.map.delete(mt.param);break}{let qt=this.map.get(mt.param)||[];const on=qt.indexOf(O(mt.value));-1!==on&&qt.splice(on,1),qt.length>0?this.map.set(mt.param,qt):this.map.delete(mt.param)}}}),this.cloneFrom=this.updates=null)}}class D{constructor(mt){this.defaultValue=mt}}class R{constructor(){this.map=new Map}set(mt,pt){return this.map.set(mt,pt),this}get(mt){return this.map.has(mt)||this.map.set(mt,mt.defaultValue()),this.map.get(mt)}delete(mt){return this.map.delete(mt),this}has(mt){return this.map.has(mt)}keys(){return this.map.keys()}}function N(wt){return typeof ArrayBuffer<"u"&&wt instanceof ArrayBuffer}function S(wt){return typeof Blob<"u"&&wt instanceof Blob}function k(wt){return typeof FormData<"u"&&wt instanceof FormData}class Y{constructor(mt,pt,qt,on){let hn;if(this.url=pt,this.body=null,this.reportProgress=!1,this.withCredentials=!1,this.responseType="json",this.method=mt.toUpperCase(),function j(wt){switch(wt){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}(this.method)||on?(this.body=void 0!==qt?qt:null,hn=on):hn=qt,hn&&(this.reportProgress=!!hn.reportProgress,this.withCredentials=!!hn.withCredentials,hn.responseType&&(this.responseType=hn.responseType),hn.headers&&(this.headers=hn.headers),hn.context&&(this.context=hn.context),hn.params&&(this.params=hn.params)),this.headers||(this.headers=new _),this.context||(this.context=new R),this.params){const un=this.params.toString();if(0===un.length)this.urlWithParams=pt;else{const $n=pt.indexOf("?");this.urlWithParams=pt+(-1===$n?"?":$nQn.set(ri,mt.setHeaders[ri]),In)),mt.setParams&&(Zn=Object.keys(mt.setParams).reduce((Qn,ri)=>Qn.set(ri,mt.setParams[ri]),Zn)),new Y(pt,qt,hn,{params:Zn,headers:In,context:mi,reportProgress:$n,responseType:on,withCredentials:un})}}var se=function(wt){return wt[wt.Sent=0]="Sent",wt[wt.UploadProgress=1]="UploadProgress",wt[wt.ResponseHeader=2]="ResponseHeader",wt[wt.DownloadProgress=3]="DownloadProgress",wt[wt.Response=4]="Response",wt[wt.User=5]="User",wt}(se||{});class ne{constructor(mt,pt=200,qt="OK"){this.headers=mt.headers||new _,this.status=void 0!==mt.status?mt.status:pt,this.statusText=mt.statusText||qt,this.url=mt.url||null,this.ok=this.status>=200&&this.status<300}}class me extends ne{constructor(mt={}){super(mt),this.type=se.ResponseHeader}clone(mt={}){return new me({headers:mt.headers||this.headers,status:void 0!==mt.status?mt.status:this.status,statusText:mt.statusText||this.statusText,url:mt.url||this.url||void 0})}}class $ extends ne{constructor(mt={}){super(mt),this.type=se.Response,this.body=void 0!==mt.body?mt.body:null}clone(mt={}){return new $({body:void 0!==mt.body?mt.body:this.body,headers:mt.headers||this.headers,status:void 0!==mt.status?mt.status:this.status,statusText:mt.statusText||this.statusText,url:mt.url||this.url||void 0})}}class q extends ne{constructor(mt){super(mt,0,"Unknown Error"),this.name="HttpErrorResponse",this.ok=!1,this.message=this.status>=200&&this.status<300?`Http failure during parsing for ${mt.url||"(unknown url)"}`:`Http failure response for ${mt.url||"(unknown url)"}: ${mt.status} ${mt.statusText}`,this.error=mt.error||null}}function Q(wt,mt){return{body:mt,headers:wt.headers,context:wt.context,observe:wt.observe,params:wt.params,reportProgress:wt.reportProgress,responseType:wt.responseType,withCredentials:wt.withCredentials}}let ue=(()=>{class wt{constructor(pt){this.handler=pt}request(pt,qt,on={}){let hn;if(pt instanceof Y)hn=pt;else{let In,Zn;In=on.headers instanceof _?on.headers:new _(on.headers),on.params&&(Zn=on.params instanceof E?on.params:new E({fromObject:on.params})),hn=new Y(pt,qt,void 0!==on.body?on.body:null,{headers:In,context:on.context,params:Zn,reportProgress:on.reportProgress,responseType:on.responseType||"json",withCredentials:on.withCredentials})}const un=(0,C.of)(hn).pipe((0,v.b)(In=>this.handler.handle(In)));if(pt instanceof Y||"events"===on.observe)return un;const $n=un.pipe((0,a.h)(In=>In instanceof $));switch(on.observe||"body"){case"body":switch(hn.responseType){case"arraybuffer":return $n.pipe((0,c.U)(In=>{if(null!==In.body&&!(In.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return In.body}));case"blob":return $n.pipe((0,c.U)(In=>{if(null!==In.body&&!(In.body instanceof Blob))throw new Error("Response is not a Blob.");return In.body}));case"text":return $n.pipe((0,c.U)(In=>{if(null!==In.body&&"string"!=typeof In.body)throw new Error("Response is not a string.");return In.body}));default:return $n.pipe((0,c.U)(In=>In.body))}case"response":return $n;default:throw new Error(`Unreachable: unhandled observe type ${on.observe}}`)}}delete(pt,qt={}){return this.request("DELETE",pt,qt)}get(pt,qt={}){return this.request("GET",pt,qt)}head(pt,qt={}){return this.request("HEAD",pt,qt)}jsonp(pt,qt){return this.request("JSONP",pt,{params:(new E).append(qt,"JSONP_CALLBACK"),observe:"body",responseType:"json"})}options(pt,qt={}){return this.request("OPTIONS",pt,qt)}patch(pt,qt,on={}){return this.request("PATCH",pt,Q(on,qt))}post(pt,qt,on={}){return this.request("POST",pt,Q(on,qt))}put(pt,qt,on={}){return this.request("PUT",pt,Q(on,qt))}}return wt.\u0275fac=function(pt){return new(pt||wt)(p.\u0275\u0275inject(h))},wt.\u0275prov=p.\u0275\u0275defineInjectable({token:wt,factory:wt.\u0275fac}),wt})();const Me=/^\)\]\}',?\n/;function Xe(wt){if(wt.url)return wt.url;const mt="X-Request-URL".toLocaleLowerCase();return wt.headers.get(mt)}let Be=(()=>{class wt{constructor(){this.fetchImpl=(0,p.inject)($e,{optional:!0})?.fetch??fetch.bind(globalThis),this.ngZone=(0,p.inject)(p.NgZone)}handle(pt){return new b.y(qt=>{const on=new AbortController;return this.doRequest(pt,on.signal,qt).then(st,hn=>qt.error(new q({error:hn}))),()=>on.abort()})}doRequest(pt,qt,on){var hn=this;return(0,n.Z)(function*(){const un=hn.createRequestInit(pt);let $n;try{const en=hn.fetchImpl(pt.urlWithParams,{signal:qt,...un});(function Mt(wt){wt.then(st,st)})(en),on.next({type:se.Sent}),$n=yield en}catch(en){return void on.error(new q({error:en,status:en.status??0,statusText:en.statusText,url:pt.urlWithParams,headers:en.headers}))}const In=new _($n.headers),Zn=$n.statusText,mi=Xe($n)??pt.urlWithParams;let Qn=$n.status,ri=null;if(pt.reportProgress&&on.next(new me({headers:In,status:Qn,statusText:Zn,url:mi})),$n.body){const en=$n.headers.get("content-length"),Dn=[],An=$n.body.getReader();let si,ii,Yn=0;const Ii=typeof Zone<"u"&&Zone.current;yield hn.ngZone.runOutsideAngular((0,n.Z)(function*(){for(;;){const{done:li,value:Pi}=yield An.read();if(li)break;if(Dn.push(Pi),Yn+=Pi.length,pt.reportProgress){ii="text"===pt.responseType?(ii??"")+(si??=new TextDecoder).decode(Pi,{stream:!0}):void 0;const Ct=()=>on.next({type:se.DownloadProgress,total:en?+en:void 0,loaded:Yn,partialText:ii});Ii?Ii.run(Ct):Ct()}}}));const oi=hn.concatChunks(Dn,Yn);try{ri=hn.parseBody(pt,oi)}catch(li){return void on.error(new q({error:li,headers:new _($n.headers),status:$n.status,statusText:$n.statusText,url:Xe($n)??pt.urlWithParams}))}}0===Qn&&(Qn=ri?200:0),Qn>=200&&Qn<300?(on.next(new $({body:ri,headers:In,status:Qn,statusText:Zn,url:mi})),on.complete()):on.error(new q({error:ri,headers:In,status:Qn,statusText:Zn,url:mi}))})()}parseBody(pt,qt){switch(pt.responseType){case"json":const on=(new TextDecoder).decode(qt).replace(Me,"");return""===on?null:JSON.parse(on);case"text":return(new TextDecoder).decode(qt);case"blob":return new Blob([qt]);case"arraybuffer":return qt.buffer}}createRequestInit(pt){const qt={},on=pt.withCredentials?"include":void 0;if(pt.headers.forEach((hn,un)=>qt[hn]=un.join(",")),qt.Accept??="application/json, text/plain, */*",!qt["Content-Type"]){const hn=pt.detectContentTypeHeader();null!==hn&&(qt["Content-Type"]=hn)}return{body:pt.serializeBody(),method:pt.method,headers:qt,credentials:on}}concatChunks(pt,qt){const on=new Uint8Array(qt);let hn=0;for(const un of pt)on.set(un,hn),hn+=un.length;return on}}return wt.\u0275fac=function(pt){return new(pt||wt)},wt.\u0275prov=p.\u0275\u0275defineInjectable({token:wt,factory:wt.\u0275fac}),wt})();class $e{}function st(){}function tt(wt,mt){return mt(wt)}function St(wt,mt){return(pt,qt)=>mt.intercept(pt,{handle:on=>wt(on,qt)})}const xt=new p.InjectionToken(""),nt=new p.InjectionToken(""),ot=new p.InjectionToken("");function vt(){let wt=null;return(mt,pt)=>{null===wt&&(wt=((0,p.inject)(xt,{optional:!0})??[]).reduceRight(St,tt));const qt=(0,p.inject)(p.\u0275InitialRenderPendingTasks),on=qt.add();return wt(mt,pt).pipe((0,s.x)(()=>qt.remove(on)))}}let Ce,rt=(()=>{class wt extends h{constructor(pt,qt){super(),this.backend=pt,this.injector=qt,this.chain=null,this.pendingTasks=(0,p.inject)(p.\u0275InitialRenderPendingTasks)}handle(pt){if(null===this.chain){const on=Array.from(new Set([...this.injector.get(nt),...this.injector.get(ot,[])]));this.chain=on.reduceRight((hn,un)=>function bt(wt,mt,pt){return(qt,on)=>pt.runInContext(()=>mt(qt,hn=>wt(hn,on)))}(hn,un,this.injector),tt)}const qt=this.pendingTasks.add();return this.chain(pt,on=>this.backend.handle(on)).pipe((0,s.x)(()=>this.pendingTasks.remove(qt)))}}return wt.\u0275fac=function(pt){return new(pt||wt)(p.\u0275\u0275inject(m),p.\u0275\u0275inject(p.EnvironmentInjector))},wt.\u0275prov=p.\u0275\u0275defineInjectable({token:wt,factory:wt.\u0275fac}),wt})(),J=0;class Te{}function ct(){return"object"==typeof window?window:{}}let Lt=(()=>{class wt{constructor(pt,qt){this.callbackMap=pt,this.document=qt,this.resolvedPromise=Promise.resolve()}nextCallback(){return"ng_jsonp_callback_"+J++}handle(pt){if("JSONP"!==pt.method)throw new Error("JSONP requests must use JSONP request method.");if("json"!==pt.responseType)throw new Error("JSONP requests must use Json response type.");if(pt.headers.keys().length>0)throw new Error("JSONP requests do not support headers.");return new b.y(qt=>{const on=this.nextCallback(),hn=pt.urlWithParams.replace(/=JSONP_CALLBACK(&|$)/,`=${on}$1`),un=this.document.createElement("script");un.src=hn;let $n=null,In=!1;this.callbackMap[on]=ri=>{delete this.callbackMap[on],$n=ri,In=!0};const Zn=()=>{un.parentNode&&un.parentNode.removeChild(un),delete this.callbackMap[on]};return un.addEventListener("load",ri=>{this.resolvedPromise.then(()=>{Zn(),In?(qt.next(new $({body:$n,status:200,statusText:"OK",url:hn})),qt.complete()):qt.error(new q({url:hn,status:0,statusText:"JSONP Error",error:new Error("JSONP injected script did not invoke callback.")}))})}),un.addEventListener("error",ri=>{Zn(),qt.error(new q({error:ri,status:0,statusText:"JSONP Error",url:hn}))}),this.document.body.appendChild(un),qt.next({type:se.Sent}),()=>{In||this.removeListeners(un),Zn()}})}removeListeners(pt){Ce||(Ce=this.document.implementation.createHTMLDocument()),Ce.adoptNode(pt)}}return wt.\u0275fac=function(pt){return new(pt||wt)(p.\u0275\u0275inject(Te),p.\u0275\u0275inject(u.DOCUMENT))},wt.\u0275prov=p.\u0275\u0275defineInjectable({token:wt,factory:wt.\u0275fac}),wt})();function Dt(wt,mt){return"JSONP"===wt.method?(0,p.inject)(Lt).handle(wt):mt(wt)}let Kt=(()=>{class wt{constructor(pt){this.injector=pt}intercept(pt,qt){return this.injector.runInContext(()=>Dt(pt,on=>qt.handle(on)))}}return wt.\u0275fac=function(pt){return new(pt||wt)(p.\u0275\u0275inject(p.EnvironmentInjector))},wt.\u0275prov=p.\u0275\u0275defineInjectable({token:wt,factory:wt.\u0275fac}),wt})();const ze=/^\)\]\}',?\n/;let Bt=(()=>{class wt{constructor(pt){this.xhrFactory=pt}handle(pt){if("JSONP"===pt.method)throw new p.\u0275RuntimeError(-2800,!1);const qt=this.xhrFactory;return(qt.\u0275loadImpl?(0,o.D)(qt.\u0275loadImpl()):(0,C.of)(null)).pipe((0,l.w)(()=>new b.y(hn=>{const un=qt.build();if(un.open(pt.method,pt.urlWithParams),pt.withCredentials&&(un.withCredentials=!0),pt.headers.forEach((Dn,An)=>un.setRequestHeader(Dn,An.join(","))),pt.headers.has("Accept")||un.setRequestHeader("Accept","application/json, text/plain, */*"),!pt.headers.has("Content-Type")){const Dn=pt.detectContentTypeHeader();null!==Dn&&un.setRequestHeader("Content-Type",Dn)}if(pt.responseType){const Dn=pt.responseType.toLowerCase();un.responseType="json"!==Dn?Dn:"text"}const $n=pt.serializeBody();let In=null;const Zn=()=>{if(null!==In)return In;const Dn=un.statusText||"OK",An=new _(un.getAllResponseHeaders()),Yn=function yt(wt){return"responseURL"in wt&&wt.responseURL?wt.responseURL:/^X-Request-URL:/m.test(wt.getAllResponseHeaders())?wt.getResponseHeader("X-Request-URL"):null}(un)||pt.url;return In=new me({headers:An,status:un.status,statusText:Dn,url:Yn}),In},mi=()=>{let{headers:Dn,status:An,statusText:Yn,url:si}=Zn(),ii=null;204!==An&&(ii=typeof un.response>"u"?un.responseText:un.response),0===An&&(An=ii?200:0);let Ii=An>=200&&An<300;if("json"===pt.responseType&&"string"==typeof ii){const oi=ii;ii=ii.replace(ze,"");try{ii=""!==ii?JSON.parse(ii):null}catch(li){ii=oi,Ii&&(Ii=!1,ii={error:li,text:ii})}}Ii?(hn.next(new $({body:ii,headers:Dn,status:An,statusText:Yn,url:si||void 0})),hn.complete()):hn.error(new q({error:ii,headers:Dn,status:An,statusText:Yn,url:si||void 0}))},Qn=Dn=>{const{url:An}=Zn(),Yn=new q({error:Dn,status:un.status||0,statusText:un.statusText||"Unknown Error",url:An||void 0});hn.error(Yn)};let ri=!1;const ln=Dn=>{ri||(hn.next(Zn()),ri=!0);let An={type:se.DownloadProgress,loaded:Dn.loaded};Dn.lengthComputable&&(An.total=Dn.total),"text"===pt.responseType&&un.responseText&&(An.partialText=un.responseText),hn.next(An)},en=Dn=>{let An={type:se.UploadProgress,loaded:Dn.loaded};Dn.lengthComputable&&(An.total=Dn.total),hn.next(An)};return un.addEventListener("load",mi),un.addEventListener("error",Qn),un.addEventListener("timeout",Qn),un.addEventListener("abort",Qn),pt.reportProgress&&(un.addEventListener("progress",ln),null!==$n&&un.upload&&un.upload.addEventListener("progress",en)),un.send($n),hn.next({type:se.Sent}),()=>{un.removeEventListener("error",Qn),un.removeEventListener("abort",Qn),un.removeEventListener("load",mi),un.removeEventListener("timeout",Qn),pt.reportProgress&&(un.removeEventListener("progress",ln),null!==$n&&un.upload&&un.upload.removeEventListener("progress",en)),un.readyState!==un.DONE&&un.abort()}})))}}return wt.\u0275fac=function(pt){return new(pt||wt)(p.\u0275\u0275inject(u.XhrFactory))},wt.\u0275prov=p.\u0275\u0275defineInjectable({token:wt,factory:wt.\u0275fac}),wt})();const $t=new p.InjectionToken("XSRF_ENABLED"),Yt="XSRF-TOKEN",Ue=new p.InjectionToken("XSRF_COOKIE_NAME",{providedIn:"root",factory:()=>Yt}),We="X-XSRF-TOKEN",ve=new p.InjectionToken("XSRF_HEADER_NAME",{providedIn:"root",factory:()=>We});class we{}let at=(()=>{class wt{constructor(pt,qt,on){this.doc=pt,this.platform=qt,this.cookieName=on,this.lastCookieString="",this.lastToken=null,this.parseCount=0}getToken(){if("server"===this.platform)return null;const pt=this.doc.cookie||"";return pt!==this.lastCookieString&&(this.parseCount++,this.lastToken=(0,u.\u0275parseCookieValue)(pt,this.cookieName),this.lastCookieString=pt),this.lastToken}}return wt.\u0275fac=function(pt){return new(pt||wt)(p.\u0275\u0275inject(u.DOCUMENT),p.\u0275\u0275inject(p.PLATFORM_ID),p.\u0275\u0275inject(Ue))},wt.\u0275prov=p.\u0275\u0275defineInjectable({token:wt,factory:wt.\u0275fac}),wt})();function De(wt,mt){const pt=wt.url.toLowerCase();if(!(0,p.inject)($t)||"GET"===wt.method||"HEAD"===wt.method||pt.startsWith("http://")||pt.startsWith("https://"))return mt(wt);const qt=(0,p.inject)(we).getToken(),on=(0,p.inject)(ve);return null!=qt&&!wt.headers.has(on)&&(wt=wt.clone({headers:wt.headers.set(on,qt)})),mt(wt)}let je=(()=>{class wt{constructor(pt){this.injector=pt}intercept(pt,qt){return this.injector.runInContext(()=>De(pt,on=>qt.handle(on)))}}return wt.\u0275fac=function(pt){return new(pt||wt)(p.\u0275\u0275inject(p.EnvironmentInjector))},wt.\u0275prov=p.\u0275\u0275defineInjectable({token:wt,factory:wt.\u0275fac}),wt})();var ke=function(wt){return wt[wt.Interceptors=0]="Interceptors",wt[wt.LegacyInterceptors=1]="LegacyInterceptors",wt[wt.CustomXsrfConfiguration=2]="CustomXsrfConfiguration",wt[wt.NoXsrfProtection=3]="NoXsrfProtection",wt[wt.JsonpSupport=4]="JsonpSupport",wt[wt.RequestsMadeViaParent=5]="RequestsMadeViaParent",wt[wt.Fetch=6]="Fetch",wt}(ke||{});function Z(wt,mt){return{\u0275kind:wt,\u0275providers:mt}}function re(...wt){const mt=[ue,Bt,rt,{provide:h,useExisting:rt},{provide:m,useExisting:Bt},{provide:nt,useValue:De,multi:!0},{provide:$t,useValue:!0},{provide:we,useClass:at}];for(const pt of wt)mt.push(...pt.\u0275providers);return(0,p.makeEnvironmentProviders)(mt)}function ce(wt){return Z(ke.Interceptors,wt.map(mt=>({provide:nt,useValue:mt,multi:!0})))}const Ee=new p.InjectionToken("LEGACY_INTERCEPTOR_FN");function it(){return Z(ke.LegacyInterceptors,[{provide:Ee,useFactory:vt},{provide:nt,useExisting:Ee,multi:!0}])}function Rt({cookieName:wt,headerName:mt}){const pt=[];return void 0!==wt&&pt.push({provide:Ue,useValue:wt}),void 0!==mt&&pt.push({provide:ve,useValue:mt}),Z(ke.CustomXsrfConfiguration,pt)}function Ye(){return Z(ke.NoXsrfProtection,[{provide:$t,useValue:!1}])}function qe(){return Z(ke.JsonpSupport,[Lt,{provide:Te,useFactory:ct},{provide:nt,useValue:Dt,multi:!0}])}function Ne(){return Z(ke.RequestsMadeViaParent,[{provide:m,useFactory:()=>(0,p.inject)(h,{skipSelf:!0,optional:!0})}])}function dt(){return Z(ke.Fetch,[Be,{provide:m,useExisting:Be}])}let At=(()=>{class wt{static disable(){return{ngModule:wt,providers:[Ye().\u0275providers]}}static withOptions(pt={}){return{ngModule:wt,providers:Rt(pt).\u0275providers}}}return wt.\u0275fac=function(pt){return new(pt||wt)},wt.\u0275mod=p.\u0275\u0275defineNgModule({type:wt}),wt.\u0275inj=p.\u0275\u0275defineInjector({providers:[je,{provide:xt,useExisting:je,multi:!0},{provide:we,useClass:at},Rt({cookieName:Yt,headerName:We}).\u0275providers,{provide:$t,useValue:!0}]}),wt})(),tn=(()=>{class wt{}return wt.\u0275fac=function(pt){return new(pt||wt)},wt.\u0275mod=p.\u0275\u0275defineNgModule({type:wt}),wt.\u0275inj=p.\u0275\u0275defineInjector({providers:[re(it())]}),wt})(),wn=(()=>{class wt{}return wt.\u0275fac=function(pt){return new(pt||wt)},wt.\u0275mod=p.\u0275\u0275defineNgModule({type:wt}),wt.\u0275inj=p.\u0275\u0275defineInjector({providers:[qe().\u0275providers]}),wt})();const Tn=new p.InjectionToken(""),Sn=["GET","HEAD"];function Mn(wt,mt){const{isCacheActive:pt}=(0,p.inject)(Tn);if(!pt||!Sn.includes(wt.method))return mt(wt);const qt=(0,p.inject)(p.TransferState),on=function di(wt){const{params:mt,method:pt,responseType:qt,url:on}=wt,$n=function Li(wt){let mt=0;for(const pt of wt)mt=Math.imul(31,mt)+pt.charCodeAt(0)<<0;return mt+=2147483648,mt.toString()}(pt+"."+qt+"."+on+"?"+mt.keys().sort().map(In=>`${In}=${mt.getAll(In)}`).join("&"));return(0,p.makeStateKey)($n)}(wt),hn=qt.get(on,null);if(hn){let un=hn.body;switch(hn.responseType){case"arraybuffer":un=(new TextEncoder).encode(hn.body).buffer;break;case"blob":un=new Blob([hn.body])}return(0,C.of)(new $({body:un,headers:new _(hn.headers),status:hn.status,statusText:hn.statusText,url:hn.url}))}return mt(wt).pipe((0,d.b)(un=>{un instanceof $&&qt.set(on,{body:un.body,headers:Ci(un.headers),status:un.status,statusText:un.statusText,url:un.url||"",responseType:wt.responseType})}))}function Ci(wt){const mt={};for(const pt of wt.keys()){const qt=wt.getAll(pt);null!==qt&&(mt[pt]=qt)}return mt}function Qi(){return[{provide:Tn,useFactory:()=>((0,p.inject)(p.\u0275ENABLED_SSR_FEATURES).add("httpcache"),{isCacheActive:!0})},{provide:ot,useValue:Mn,multi:!0,deps:[p.TransferState,Tn]},{provide:p.APP_BOOTSTRAP_LISTENER,multi:!0,useFactory:()=>{const wt=(0,p.inject)(p.ApplicationRef),mt=(0,p.inject)(Tn);return()=>{wt.isStable.pipe((0,r.P)(pt=>pt)).toPromise().then(()=>{mt.isCacheActive=!1})}}}]}},5879:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{ANIMATION_MODULE_TYPE:()=>iy,APP_BOOTSTRAP_LISTENER:()=>Ah,APP_ID:()=>gm,APP_INITIALIZER:()=>C_,ApplicationInitStatus:()=>Tc,ApplicationModule:()=>fw,ApplicationRef:()=>Aa,Attribute:()=>Gh,COMPILER_OPTIONS:()=>D_,CSP_NONCE:()=>ry,CUSTOM_ELEMENTS_SCHEMA:()=>uf,ChangeDetectionStrategy:()=>wn,ChangeDetectorRef:()=>tv,Compiler:()=>AM,CompilerFactory:()=>kM,Component:()=>bM,ComponentFactory:()=>Ql,ComponentFactoryResolver:()=>tl,ComponentRef:()=>wm,ContentChild:()=>wv,ContentChildren:()=>Mv,DEFAULT_CURRENCY_CODE:()=>TM,DebugElement:()=>Cl,DebugEventListener:()=>JM,DebugNode:()=>Lh,DefaultIterableDiffer:()=>av,DestroyRef:()=>Wu,Directive:()=>y_,ENVIRONMENT_INITIALIZER:()=>Xa,ElementRef:()=>nl,EmbeddedViewRef:()=>XM,EnvironmentInjector:()=>Ps,ErrorHandler:()=>ua,EventEmitter:()=>Io,Host:()=>ef,HostBinding:()=>MM,HostListener:()=>wM,INJECTOR:()=>uu,Inject:()=>Jh,InjectFlags:()=>pe,Injectable:()=>ky,InjectionToken:()=>Yi,Injector:()=>as,Input:()=>CM,IterableDiffers:()=>Nh,KeyValueDiffers:()=>Uh,LOCALE_ID:()=>Sc,MissingTranslationStrategy:()=>M_,ModuleWithComponentFactories:()=>E_,NO_ERRORS_SCHEMA:()=>df,NgModule:()=>EM,NgModuleFactory:()=>ig,NgModuleRef:()=>Sa,NgProbeToken:()=>BM,NgZone:()=>Rr,Optional:()=>Tl,Output:()=>xM,PACKAGE_ROOT_URL:()=>ny,PLATFORM_ID:()=>yu,PLATFORM_INITIALIZER:()=>_m,Pipe:()=>yM,PlatformRef:()=>kh,Query:()=>Ba,QueryList:()=>Mc,Renderer2:()=>vy,RendererFactory2:()=>Dm,RendererStyleFlags2:()=>Pl,Sanitizer:()=>Tm,SecurityContext:()=>Rs,Self:()=>qh,SimpleChange:()=>ts,SkipSelf:()=>Sl,TRANSLATIONS:()=>SM,TRANSLATIONS_FORMAT:()=>IM,TemplateRef:()=>bl,Testability:()=>UM,TestabilityRegistry:()=>N_,TransferState:()=>Ja,Type:()=>Yh,VERSION:()=>Im,Version:()=>Sm,ViewChild:()=>Dv,ViewChildren:()=>Ev,ViewContainerRef:()=>Ec,ViewEncapsulation:()=>Tn,ViewRef:()=>iv,asNativeElements:()=>qM,assertInInjectionContext:()=>zm,assertPlatform:()=>W_,booleanAttribute:()=>ww,computed:()=>Qo,createComponent:()=>Pw,createEnvironmentInjector:()=>sg,createNgModule:()=>rg,createNgModuleRef:()=>Mx,createPlatform:()=>j_,createPlatformFactory:()=>z_,defineInjectable:()=>bt,destroyPlatform:()=>jM,effect:()=>dp,enableProdMode:()=>KM,forwardRef:()=>_,getDebugNode:()=>ka,getModuleFactory:()=>YM,getNgModuleById:()=>ZM,getPlatform:()=>Ic,importProvidersFrom:()=>um,inject:()=>it,isDevMode:()=>GM,isSignal:()=>_o,isStandalone:()=>Nn,makeEnvironmentProviders:()=>du,makeStateKey:()=>oy,mergeApplicationConfig:()=>Nw,numberAttribute:()=>Ew,platformCore:()=>hw,provideZoneChangeDetection:()=>q_,reflectComponentType:()=>Fw,resolveForwardRef:()=>M,runInInjectionContext:()=>Ey,setTestabilityGetter:()=>U_,signal:()=>Jo,untracked:()=>ps,\u0275ALLOW_MULTIPLE_PLATFORMS:()=>Sh,\u0275ComponentFactory:()=>Ql,\u0275Console:()=>x_,\u0275DEFAULT_LOCALE_ID:()=>Bs,\u0275ENABLED_SSR_FEATURES:()=>vm,\u0275INJECTOR_SCOPE:()=>pu,\u0275IS_HYDRATION_DOM_REUSE_ENABLED:()=>rl,\u0275InitialRenderPendingTasks:()=>w_,\u0275LContext:()=>bf,\u0275LifecycleHooksFeature:()=>yp,\u0275LocaleDataIndex:()=>Ta,\u0275NG_COMP_DEF:()=>Ci,\u0275NG_DIR_DEF:()=>di,\u0275NG_ELEMENT_ID:()=>mt,\u0275NG_INJ_DEF:()=>ee,\u0275NG_MOD_DEF:()=>Qi,\u0275NG_PIPE_DEF:()=>Li,\u0275NG_PROV_DEF:()=>Ce,\u0275NOT_FOUND_CHECK_ONLY_ELEMENT_INJECTOR:()=>Xl,\u0275NO_CHANGE:()=>fi,\u0275NgModuleFactory:()=>xc,\u0275NoopNgZone:()=>L_,\u0275ReflectionCapabilities:()=>Xh,\u0275Render3ComponentFactory:()=>pa,\u0275Render3ComponentRef:()=>bp,\u0275Render3NgModuleRef:()=>Cc,\u0275RuntimeError:()=>T,\u0275TESTABILITY:()=>P_,\u0275TESTABILITY_GETTER:()=>F_,\u0275ViewRef:()=>ma,\u0275XSS_SECURITY_URL:()=>A,\u0275_sanitizeHtml:()=>tm,\u0275_sanitizeUrl:()=>Hl,\u0275allowSanitizationBypassAndThrow:()=>sa,\u0275annotateForHydration:()=>gw,\u0275bypassSanitizationTrustHtml:()=>Lb,\u0275bypassSanitizationTrustResourceUrl:()=>Fb,\u0275bypassSanitizationTrustScript:()=>Ob,\u0275bypassSanitizationTrustStyle:()=>Rb,\u0275bypassSanitizationTrustUrl:()=>Pb,\u0275clearResolutionOfComponentResourcesQueue:()=>af,\u0275compileComponent:()=>l_,\u0275compileDirective:()=>wh,\u0275compileNgModule:()=>i_,\u0275compileNgModuleDefs:()=>r_,\u0275compileNgModuleFactory:()=>B_,\u0275compilePipe:()=>v_,\u0275convertToBitFlags:()=>Rt,\u0275createInjector:()=>Ru,\u0275defaultIterableDiffers:()=>uw,\u0275defaultKeyValueDiffers:()=>dw,\u0275detectChanges:()=>hp,\u0275devModeEqual:()=>Sp,\u0275findLocaleData:()=>Xd,\u0275flushModuleScopingQueueAsMuchAsPossible:()=>t_,\u0275formatRuntimeError:()=>O,\u0275getDebugNode:()=>ka,\u0275getDirectives:()=>hg,\u0275getHostElement:()=>ch,\u0275getInjectableDef:()=>nt,\u0275getLContext:()=>kr,\u0275getLocaleCurrencyCode:()=>TC,\u0275getLocalePluralCase:()=>S0,\u0275getSanitizationBypassType:()=>Yf,\u0275getUnknownElementStrictMode:()=>Wv,\u0275getUnknownPropertyStrictMode:()=>Kv,\u0275global:()=>ze,\u0275injectChangeDetectorRef:()=>nv,\u0275internalCreateApplication:()=>VM,\u0275isBoundToModule:()=>V_,\u0275isEnvironmentProviders:()=>w,\u0275isInjectable:()=>ot,\u0275isNgModule:()=>vh,\u0275isPromise:()=>fd,\u0275isSubscribable:()=>$p,\u0275noSideEffects:()=>tn,\u0275patchComponentDefWithScope:()=>xh,\u0275publishDefaultGlobalUtils:()=>RM,\u0275publishGlobalUtil:()=>ro,\u0275registerLocaleData:()=>DC,\u0275resetCompiledComponents:()=>aM,\u0275resetJitOptions:()=>iM,\u0275resolveComponentResources:()=>rf,\u0275setAllowDuplicateNgModuleIdsForTest:()=>Hv,\u0275setAlternateWeakRefImpl:()=>vo,\u0275setClassMetadata:()=>mg,\u0275setCurrentInjector:()=>Z,\u0275setDocument:()=>Db,\u0275setLocaleId:()=>Jd,\u0275setUnknownElementStrictMode:()=>zv,\u0275setUnknownPropertyStrictMode:()=>Gv,\u0275store:()=>Pp,\u0275stringify:()=>u,\u0275transitiveScopesFor:()=>$s,\u0275unregisterLocaleData:()=>SC,\u0275unwrapSafeValue:()=>Bo,\u0275withDomHydration:()=>Mw,\u0275\u0275CopyDefinitionFeature:()=>xp,\u0275\u0275FactoryTarget:()=>As,\u0275\u0275HostDirectivesFeature:()=>Mp,\u0275\u0275InheritDefinitionFeature:()=>Gu,\u0275\u0275InputTransformsFeature:()=>Tp,\u0275\u0275NgOnChangesFeature:()=>bo,\u0275\u0275ProvidersFeature:()=>ng,\u0275\u0275StandaloneFeature:()=>ag,\u0275\u0275advance:()=>jm,\u0275\u0275attribute:()=>Yu,\u0275\u0275attributeInterpolate1:()=>Zu,\u0275\u0275attributeInterpolate2:()=>Qu,\u0275\u0275attributeInterpolate3:()=>Xu,\u0275\u0275attributeInterpolate4:()=>Ju,\u0275\u0275attributeInterpolate5:()=>qu,\u0275\u0275attributeInterpolate6:()=>ed,\u0275\u0275attributeInterpolate7:()=>td,\u0275\u0275attributeInterpolate8:()=>nd,\u0275\u0275attributeInterpolateV:()=>id,\u0275\u0275classMap:()=>e0,\u0275\u0275classMapInterpolate1:()=>u0,\u0275\u0275classMapInterpolate2:()=>d0,\u0275\u0275classMapInterpolate3:()=>h0,\u0275\u0275classMapInterpolate4:()=>f0,\u0275\u0275classMapInterpolate5:()=>m0,\u0275\u0275classMapInterpolate6:()=>p0,\u0275\u0275classMapInterpolate7:()=>g0,\u0275\u0275classMapInterpolate8:()=>_0,\u0275\u0275classMapInterpolateV:()=>v0,\u0275\u0275classProp:()=>Id,\u0275\u0275contentQuery:()=>Yg,\u0275\u0275defineComponent:()=>Ft,\u0275\u0275defineDirective:()=>zt,\u0275\u0275defineInjectable:()=>St,\u0275\u0275defineInjector:()=>xt,\u0275\u0275defineNgModule:()=>ge,\u0275\u0275definePipe:()=>an,\u0275\u0275directiveInject:()=>ha,\u0275\u0275disableBindings:()=>rs,\u0275\u0275element:()=>dd,\u0275\u0275elementContainer:()=>hd,\u0275\u0275elementContainerEnd:()=>hc,\u0275\u0275elementContainerStart:()=>dc,\u0275\u0275elementEnd:()=>uc,\u0275\u0275elementStart:()=>cc,\u0275\u0275enableBindings:()=>Hs,\u0275\u0275getCurrentView:()=>Bp,\u0275\u0275getInheritedFactory:()=>zh,\u0275\u0275hostProperty:()=>Zd,\u0275\u0275i18n:()=>X0,\u0275\u0275i18nApply:()=>q0,\u0275\u0275i18nAttributes:()=>J0,\u0275\u0275i18nEnd:()=>nh,\u0275\u0275i18nExp:()=>ih,\u0275\u0275i18nPostprocess:()=>eg,\u0275\u0275i18nStart:()=>th,\u0275\u0275inject:()=>ce,\u0275\u0275injectAttribute:()=>Fc,\u0275\u0275invalidFactory:()=>Zm,\u0275\u0275invalidFactoryDep:()=>Ee,\u0275\u0275listener:()=>md,\u0275\u0275loadQuery:()=>Zg,\u0275\u0275namespaceHTML:()=>br,\u0275\u0275namespaceMathML:()=>Wi,\u0275\u0275namespaceSVG:()=>Gn,\u0275\u0275nextContext:()=>zp,\u0275\u0275ngDeclareClassMetadata:()=>Tw,\u0275\u0275ngDeclareComponent:()=>Sw,\u0275\u0275ngDeclareDirective:()=>Dw,\u0275\u0275ngDeclareFactory:()=>Iw,\u0275\u0275ngDeclareInjectable:()=>kw,\u0275\u0275ngDeclareInjector:()=>Lw,\u0275\u0275ngDeclareNgModule:()=>Rw,\u0275\u0275ngDeclarePipe:()=>Ow,\u0275\u0275pipe:()=>Ag,\u0275\u0275pipeBind1:()=>kg,\u0275\u0275pipeBind2:()=>Lg,\u0275\u0275pipeBind3:()=>Rg,\u0275\u0275pipeBind4:()=>Og,\u0275\u0275pipeBindV:()=>Pg,\u0275\u0275projection:()=>Gp,\u0275\u0275projectionDef:()=>Wp,\u0275\u0275property:()=>cd,\u0275\u0275propertyInterpolate:()=>gd,\u0275\u0275propertyInterpolate1:()=>fc,\u0275\u0275propertyInterpolate2:()=>_d,\u0275\u0275propertyInterpolate3:()=>vd,\u0275\u0275propertyInterpolate4:()=>bd,\u0275\u0275propertyInterpolate5:()=>yd,\u0275\u0275propertyInterpolate6:()=>Cd,\u0275\u0275propertyInterpolate7:()=>xd,\u0275\u0275propertyInterpolate8:()=>Md,\u0275\u0275propertyInterpolateV:()=>wd,\u0275\u0275pureFunction0:()=>pg,\u0275\u0275pureFunction1:()=>gg,\u0275\u0275pureFunction2:()=>_g,\u0275\u0275pureFunction3:()=>vg,\u0275\u0275pureFunction4:()=>bg,\u0275\u0275pureFunction5:()=>yg,\u0275\u0275pureFunction6:()=>Cg,\u0275\u0275pureFunction7:()=>xg,\u0275\u0275pureFunction8:()=>Mg,\u0275\u0275pureFunctionV:()=>wg,\u0275\u0275queryRefresh:()=>Gg,\u0275\u0275reference:()=>Fp,\u0275\u0275registerNgModuleType:()=>Vc,\u0275\u0275resetView:()=>vs,\u0275\u0275resolveBody:()=>Lu,\u0275\u0275resolveDocument:()=>Om,\u0275\u0275resolveWindow:()=>Rm,\u0275\u0275restoreView:()=>_s,\u0275\u0275sanitizeHtml:()=>nm,\u0275\u0275sanitizeResourceUrl:()=>cu,\u0275\u0275sanitizeScript:()=>rm,\u0275\u0275sanitizeStyle:()=>im,\u0275\u0275sanitizeUrl:()=>lu,\u0275\u0275sanitizeUrlOrResourceUrl:()=>am,\u0275\u0275setComponentScope:()=>Ae,\u0275\u0275setNgModuleScope:()=>Ge,\u0275\u0275styleMap:()=>fo,\u0275\u0275styleMapInterpolate1:()=>b0,\u0275\u0275styleMapInterpolate2:()=>y0,\u0275\u0275styleMapInterpolate3:()=>C0,\u0275\u0275styleMapInterpolate4:()=>x0,\u0275\u0275styleMapInterpolate5:()=>M0,\u0275\u0275styleMapInterpolate6:()=>w0,\u0275\u0275styleMapInterpolate7:()=>E0,\u0275\u0275styleMapInterpolate8:()=>D0,\u0275\u0275styleMapInterpolateV:()=>T0,\u0275\u0275styleProp:()=>Sd,\u0275\u0275stylePropInterpolate1:()=>$d,\u0275\u0275stylePropInterpolate2:()=>Vd,\u0275\u0275stylePropInterpolate3:()=>jd,\u0275\u0275stylePropInterpolate4:()=>Hd,\u0275\u0275stylePropInterpolate5:()=>zd,\u0275\u0275stylePropInterpolate6:()=>Wd,\u0275\u0275stylePropInterpolate7:()=>Gd,\u0275\u0275stylePropInterpolate8:()=>Kd,\u0275\u0275stylePropInterpolateV:()=>Yd,\u0275\u0275syntheticHostListener:()=>pd,\u0275\u0275syntheticHostProperty:()=>Qd,\u0275\u0275template:()=>Lp,\u0275\u0275templateRefExtractor:()=>qg,\u0275\u0275text:()=>l0,\u0275\u0275textInterpolate:()=>kd,\u0275\u0275textInterpolate1:()=>gc,\u0275\u0275textInterpolate2:()=>Ld,\u0275\u0275textInterpolate3:()=>Rd,\u0275\u0275textInterpolate4:()=>Od,\u0275\u0275textInterpolate5:()=>Pd,\u0275\u0275textInterpolate6:()=>Fd,\u0275\u0275textInterpolate7:()=>Nd,\u0275\u0275textInterpolate8:()=>Ud,\u0275\u0275textInterpolateV:()=>Bd,\u0275\u0275trustConstantHtml:()=>om,\u0275\u0275trustConstantResourceUrl:()=>sm,\u0275\u0275validateIframeAttribute:()=>zf,\u0275\u0275viewQuery:()=>Kg});var n=g(8645),p=g(7394),C=g(5619),b=g(5592),o=g(3019),v=g(2096),a=g(3020),c=g(4664),s=g(3997),l=g(1374);function d(e){for(let t in e)if(e[t]===d)return t;throw Error("Could not find renamed property on target object.")}function r(e,t){for(const i in t)t.hasOwnProperty(i)&&!e.hasOwnProperty(i)&&(e[i]=t[i])}function u(e){if("string"==typeof e)return e;if(Array.isArray(e))return"["+e.map(u).join(", ")+"]";if(null==e)return""+e;if(e.overriddenName)return`${e.overriddenName}`;if(e.name)return`${e.name}`;const t=e.toString();if(null==t)return""+t;const i=t.indexOf("\n");return-1===i?t:t.substring(0,i)}function h(e,t){return null==e||""===e?null===t?"":t:null==t||""===t?e:e+" "+t}const m=d({__forward_ref__:d});function _(e){return e.__forward_ref__=_,e.toString=function(){return u(this())},e}function M(e){return x(e)?e():e}function x(e){return"function"==typeof e&&e.hasOwnProperty(m)&&e.__forward_ref__===_}function w(e){return e&&!!e.\u0275providers}const A="https://g.co/ng/security#xss";class T extends Error{constructor(t,i){super(O(t,i)),this.code=t}}function O(e,t){return`NG0${Math.abs(e)}${t?": "+t:""}`}function E(e){return"string"==typeof e?e:null==e?"":String(e)}function D(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():E(e)}function S(e,t){throw new T(-201,!1)}function $e(e,t,i,f){throw new Error(`ASSERTION ERROR: ${e}`+(null==f?"":` [Expected=> ${i} ${f} ${t} <=Actual]`))}function St(e){return{token:e.token,providedIn:e.providedIn||null,factory:e.factory,value:void 0}}const bt=St;function xt(e){return{providers:e.providers||[],imports:e.imports||[]}}function nt(e){return vt(e,Ce)||vt(e,ae)}function ot(e){return null!==nt(e)}function vt(e,t){return e.hasOwnProperty(t)?e[t]:null}function J(e){return e&&(e.hasOwnProperty(ee)||e.hasOwnProperty(ie))?e[ee]:null}const Ce=d({\u0275prov:d}),ee=d({\u0275inj:d}),ae=d({ngInjectableDef:d}),ie=d({ngInjectorDef:d});var pe=function(e){return e[e.Default=0]="Default",e[e.Host=1]="Host",e[e.Self=2]="Self",e[e.SkipSelf=4]="SkipSelf",e[e.Optional=8]="Optional",e}(pe||{});let Te;function ct(){return Te}function Lt(e){const t=Te;return Te=e,t}function Dt(e,t,i){const f=nt(e);return f&&"root"==f.providedIn?void 0===f.value?f.value=f.factory():f.value:i&pe.Optional?null:void 0!==t?t:void S(u(e))}const ze=(()=>typeof globalThis<"u"&&globalThis||typeof global<"u"&&global||typeof window<"u"&&window||typeof self<"u"&&typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&self)(),Yt={},Ue="__NG_DI_FLAG__",We="ngTempTokenPath",we=/\n/gm,De="__source";let je;function Z(e){const t=je;return je=e,t}function re(e,t=pe.Default){if(void 0===je)throw new T(-203,!1);return null===je?Dt(e,void 0,t):je.get(e,t&pe.Optional?null:void 0,t)}function ce(e,t=pe.Default){return(ct()||re)(M(e),t)}function Ee(e){throw new T(202,!1)}function it(e,t=pe.Default){return ce(e,Rt(t))}function Rt(e){return typeof e>"u"||"number"==typeof e?e:0|(e.optional&&8)|(e.host&&1)|(e.self&&2)|(e.skipSelf&&4)}function Ye(e){const t=[];for(let i=0;it){B=I-1;break}}}for(;II?"":y[lt+1].toLowerCase();const jt=8&f?Pt:null;if(jt&&-1!==qt(jt,xe,0)||2&f&&xe!==Pt){if(en(f))return!1;B=!0}}}}else{if(!B&&!en(f)&&!en(oe))return!1;if(B&&en(oe))continue;B=!1,f=oe|1&f}}return en(f)||B}function en(e){return 0==(1&e)}function Dn(e,t,i,f){if(null===t)return-1;let y=0;if(f||!i){let I=!1;for(;y-1)for(i++;i0?'="'+K+'"':"")+"]"}else 8&f?y+="."+B:4&f&&(y+=" "+B);else""!==y&&!en(B)&&(t+=oi(I,y),y=""),f=B,I=I||!en(f);i++}return""!==y&&(t+=oi(I,y)),t}function Ft(e){return tn(()=>{const t=Un(e),i={...t,decls:e.decls,vars:e.vars,template:e.template,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,onPush:e.changeDetection===wn.OnPush,directiveDefs:null,pipeDefs:null,dependencies:t.standalone&&e.dependencies||null,getStandaloneInjector:null,signals:e.signals??!1,data:e.data||{},encapsulation:e.encapsulation||Tn.Emulated,styles:e.styles||Mn,_:null,schemas:e.schemas||null,tView:null,id:""};vi(i);const f=e.dependencies;return i.directiveDefs=$i(f,!1),i.pipeDefs=$i(f,!0),i.id=function fn(e){let t=0;const i=[e.selectors,e.ngContentSelectors,e.hostVars,e.hostAttrs,e.consts,e.vars,e.decls,e.encapsulation,e.standalone,e.signals,e.exportAs,JSON.stringify(e.inputs),JSON.stringify(e.outputs),Object.getOwnPropertyNames(e.type.prototype),!!e.contentQueries,!!e.viewQuery].join("|");for(const y of i)t=Math.imul(31,t)+y.charCodeAt(0)<<0;return t+=2147483648,"c"+t}(i),i})}function Ae(e,t,i){const f=e.\u0275cmp;f.directiveDefs=$i(t,!1),f.pipeDefs=$i(i,!0)}function W(e){return gn(e)||pn(e)}function be(e){return null!==e}function ge(e){return tn(()=>({type:e.type,bootstrap:e.bootstrap||Mn,declarations:e.declarations||Mn,imports:e.imports||Mn,exports:e.exports||Mn,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null}))}function Ge(e,t){return tn(()=>{const i=kn(e,!0);i.declarations=t.declarations||Mn,i.imports=t.imports||Mn,i.exports=t.exports||Mn})}function It(e,t){if(null==e)return Sn;const i={};for(const f in e)if(e.hasOwnProperty(f)){let y=e[f],I=y;Array.isArray(y)&&(I=y[1],y=y[0]),i[y]=f,t&&(t[y]=I)}return i}function zt(e){return tn(()=>{const t=Un(e);return vi(t),t})}function an(e){return{type:e.type,name:e.name,factory:null,pure:!1!==e.pure,standalone:!0===e.standalone,onDestroy:e.type.prototype.ngOnDestroy||null}}function gn(e){return e[Ci]||null}function pn(e){return e[di]||null}function Jn(e){return e[Li]||null}function Nn(e){const t=gn(e)||pn(e)||Jn(e);return null!==t&&t.standalone}function kn(e,t){const i=e[Qi]||null;if(!i&&!0===t)throw new Error(`Type ${u(e)} does not have '\u0275mod' property.`);return i}function Un(e){const t={};return{type:e.type,providersResolver:null,factory:null,hostBindings:e.hostBindings||null,hostVars:e.hostVars||0,hostAttrs:e.hostAttrs||null,contentQueries:e.contentQueries||null,declaredInputs:t,inputTransforms:null,inputConfig:e.inputs||Sn,exportAs:e.exportAs||null,standalone:!0===e.standalone,signals:!0===e.signals,selectors:e.selectors||Mn,viewQuery:e.viewQuery||null,features:e.features||null,setInput:null,findHostDirectiveDefs:null,hostDirectives:null,inputs:It(e.inputs,t),outputs:It(e.outputs)}}function vi(e){e.features?.forEach(t=>t(e))}function $i(e,t){if(!e)return null;const i=t?Jn:W;return()=>("function"==typeof e?e():e).map(f=>i(f)).filter(be)}const er=new Map,yn=0,rn=1,xn=2,ti=3,Ti=4,zi=5,xi=6,_r=7,gi=8,Ke=9,kt=10,U=11,fe=12,Pe=13,Je=14,Gt=15,Pn=16,Gi=17,Vi=18,rr=19,or=20,Zi=21,ur=22,Et=23,_t=24,ft=25,Ut=1,Wt=2,nn=7,_n=9,zn=10,Vn=11;function ci(e){return Array.isArray(e)&&"object"==typeof e[Ut]}function Mi(e){return Array.isArray(e)&&!0===e[Ut]}function ni(e){return 0!=(4&e.flags)}function Xn(e){return e.componentOffset>-1}function ai(e){return 1==(1&e.flags)}function Fi(e){return!!e.template}function Xi(e){return 0!=(512&e[xn])}function Jr(e){return 16==(16&e.type)}function sr(e,t){return e.hasOwnProperty(wt)?e[wt]:null}const Mr=Symbol("SIGNAL");function _o(e){return"function"==typeof e&&void 0!==e[Mr]}function Or(e,t,i={}){return t[Mr]=e,Object.assign(t,i)}function qr(e,t){return(null===e||"object"!=typeof e)&&Object.is(e,t)}let hs=ze.WeakRef??class ds{constructor(t){this.ref=t}deref(){return this.ref}};function vo(e){}let Zo=0,yr=null,Cr=!1;function Ji(e){const t=yr;return yr=e,t}class so{constructor(){this.id=Zo++,this.ref=function fs(e){return new hs(e)}(this),this.producers=new Map,this.consumers=new Map,this.trackingVersion=0,this.valueVersion=0}consumerPollProducersForChange(){for(const[t,i]of this.producers){const f=i.producerNode.deref();if(null!=f&&i.atTrackingVersion===this.trackingVersion){if(f.producerPollStatus(i.seenValueVersion))return!0}else this.producers.delete(t),f?.consumers.delete(this.id)}return!1}producerMayHaveChanged(){const t=Cr;Cr=!0;try{for(const[i,f]of this.consumers){const y=f.consumerNode.deref();null!=y&&y.trackingVersion===f.atTrackingVersion?y.onConsumerDependencyMayHaveChanged():(this.consumers.delete(i),y?.producers.delete(this.id))}}finally{Cr=t}}producerAccessed(){if(Cr)throw new Error("");if(null===yr)return;let t=yr.producers.get(this.id);void 0===t?(t={consumerNode:yr.ref,producerNode:this.ref,seenValueVersion:this.valueVersion,atTrackingVersion:yr.trackingVersion},yr.producers.set(this.id,t),this.consumers.set(yr.id,t)):(t.seenValueVersion=this.valueVersion,t.atTrackingVersion=yr.trackingVersion)}get hasProducers(){return this.producers.size>0}get producerUpdatesAllowed(){return!1!==yr?.consumerAllowSignalWrites}producerPollStatus(t){return this.valueVersion!==t||(this.onProducerUpdateValueVersion(),this.valueVersion!==t)}}function Qo(e,t){const i=new Gr(e,t?.equal??qr);return Or(i,i.signal.bind(i))}const ao=Symbol("UNSET"),zr=Symbol("COMPUTING"),Wr=Symbol("ERRORED");class Gr extends so{constructor(t,i){super(),this.computation=t,this.equal=i,this.value=ao,this.error=null,this.stale=!0,this.consumerAllowSignalWrites=!1}onConsumerDependencyMayHaveChanged(){this.stale||(this.stale=!0,this.producerMayHaveChanged())}onProducerUpdateValueVersion(){if(this.stale){if(this.value!==ao&&this.value!==zr&&!this.consumerPollProducersForChange())return void(this.stale=!1);this.recomputeValue()}}recomputeValue(){if(this.value===zr)throw new Error("Detected cycle in computations.");const t=this.value;this.value=zr,this.trackingVersion++;const i=Ji(this);let f;try{f=this.computation()}catch(y){f=Wr,this.error=y}finally{Ji(i)}this.stale=!1,t!==ao&&t!==Wr&&f!==Wr&&this.equal(t,f)?this.value=t:(this.value=f,this.valueVersion++)}signal(){if(this.onProducerUpdateValueVersion(),this.producerAccessed(),this.value===Wr)throw this.error;return this.value}}let Ao=function ms(){throw new Error};function ar(){Ao()}class La extends so{constructor(t,i){super(),this.value=t,this.equal=i,this.consumerAllowSignalWrites=!1}onConsumerDependencyMayHaveChanged(){}onProducerUpdateValueVersion(){}set(t){this.producerUpdatesAllowed||ar(),this.equal(this.value,t)||(this.value=t,this.valueVersion++,this.producerMayHaveChanged())}update(t){this.producerUpdatesAllowed||ar(),this.set(t(this.value))}mutate(t){this.producerUpdatesAllowed||ar(),t(this.value),this.valueVersion++,this.producerMayHaveChanged()}asReadonly(){return void 0===this.readonlySignal&&(this.readonlySignal=Or(this,()=>this.signal())),this.readonlySignal}signal(){return this.producerAccessed(),this.value}}function Jo(e,t){const i=new La(e,t?.equal??qr);return Or(i,i.signal.bind(i),{set:i.set.bind(i),update:i.update.bind(i),mutate:i.mutate.bind(i),asReadonly:i.asReadonly.bind(i)})}function ps(e){const t=Ji(null);try{return e()}finally{Ji(t)}}const qo=()=>{};class es extends so{constructor(t,i,f){super(),this.watch=t,this.schedule=i,this.dirty=!1,this.cleanupFn=qo,this.registerOnCleanup=y=>{this.cleanupFn=y},this.consumerAllowSignalWrites=f}notify(){this.dirty||this.schedule(this),this.dirty=!0}onConsumerDependencyMayHaveChanged(){this.notify()}onProducerUpdateValueVersion(){}run(){if(this.dirty=!1,0!==this.trackingVersion&&!this.consumerPollProducersForChange())return;const t=Ji(this);this.trackingVersion++;try{this.cleanupFn(),this.cleanupFn=qo,this.watch(this.registerOnCleanup)}finally{Ji(t)}}cleanup(){this.cleanupFn()}}class ts{constructor(t,i,f){this.previousValue=t,this.currentValue=i,this.firstChange=f}isFirstChange(){return this.firstChange}}function bo(){return Lo}function Lo(e){return e.type.prototype.ngOnChanges&&(e.setInput=Ro),ns}function ns(){const e=to(this),t=e?.current;if(t){const i=e.previous;if(i===Sn)e.previous=t;else for(let f in t)i[f]=t[f];e.current=null,this.ngOnChanges(t)}}function Ro(e,t,i,f){const y=this.declaredInputs[i],I=to(e)||function Fr(e,t){return e[Pr]=t}(e,{previous:Sn,current:null}),B=I.current||(I.current={}),K=I.previous,oe=K[y];B[y]=new ts(oe&&oe.currentValue,t,K===Sn),e[f]=t}bo.ngInherit=!0;const Pr="__ngSimpleChanges__";function to(e){return e[Pr]||null}let lo=null;const yo=e=>{lo=e},vr=function(e,t,i){lo?.(e,t,i)},Co="svg",Oo="math";function Oi(e){for(;Array.isArray(e);)e=e[yn];return e}function Ie(e,t){return Oi(t[e])}function le(e,t){return Oi(t[e.index])}function ht(e,t){return e.data[t]}function Ht(e,t){return e[t]}function Zt(e,t){const i=t[e];return ci(i)?i:i[yn]}function pi(e,t){return null==t?null:e[t]}function Rn(e){e[Gi]=0}function qi(e){1024&e[xn]||(e[xn]|=1024,ir(e,1))}function Si(e){1024&e[xn]&&(e[xn]&=-1025,ir(e,-1))}function ir(e,t){let i=e[ti];if(null===i)return;i[zi]+=t;let f=i;for(i=i[ti];null!==i&&(1===t&&1===f[zi]||-1===t&&0===f[zi]);)i[zi]+=t,f=i,i=i[ti]}function Ar(e,t){if(256==(256&e[xn]))throw new T(911,!1);null===e[Zi]&&(e[Zi]=[]),e[Zi].push(t)}const Kn={lFrame:te(null),bindingsEnabled:!0,skipHydrationRootTNode:null};function is(){return Kn.bindingsEnabled}function mr(){return null!==Kn.skipHydrationRootTNode}function Hs(){Kn.bindingsEnabled=!0}function rs(){Kn.bindingsEnabled=!1}function dn(){return Kn.lFrame.lView}function yi(){return Kn.lFrame.tView}function _s(e){return Kn.lFrame.contextLView=e,e[gi]}function vs(e){return Kn.lFrame.contextLView=null,e}function cr(){let e=bs();for(;null!==e&&64===e.type;)e=e.parent;return e}function bs(){return Kn.lFrame.currentTNode}function xo(){const e=Kn.lFrame,t=e.currentTNode;return e.isParent?t:t.parent}function Ur(e,t){const i=Kn.lFrame;i.currentTNode=e,i.isParent=t}function ys(){return Kn.lFrame.isParent}function Cs(){Kn.lFrame.isParent=!1}function dr(){const e=Kn.lFrame;let t=e.bindingRootIndex;return-1===t&&(t=e.bindingRootIndex=e.tView.bindingStartIndex),t}function Yr(){return Kn.lFrame.bindingIndex}function Br(e){return Kn.lFrame.bindingIndex=e}function Mo(){return Kn.lFrame.bindingIndex++}function Zr(e){const t=Kn.lFrame,i=t.bindingIndex;return t.bindingIndex=t.bindingIndex+e,i}function Ks(e){Kn.lFrame.inI18n=e}function Oa(e,t){const i=Kn.lFrame;i.bindingIndex=i.bindingRootIndex=e,Po(t)}function Po(e){Kn.lFrame.currentDirectiveIndex=e}function Fo(e){const t=Kn.lFrame.currentDirectiveIndex;return-1===t?null:e[t]}function Ys(){return Kn.lFrame.currentQueryIndex}function os(e){Kn.lFrame.currentQueryIndex=e}function Pa(e){const t=e[rn];return 2===t.type?t.declTNode:1===t.type?e[xi]:null}function wo(e,t,i){if(i&pe.SkipSelf){let y=t,I=e;for(;!(y=y.parent,null!==y||i&pe.Host||(y=Pa(I),null===y||(I=I[Je],10&y.type))););if(null===y)return!1;t=y,e=I}const f=Kn.lFrame=G();return f.currentTNode=t,f.lView=e,!0}function No(e){const t=G(),i=e[rn];Kn.lFrame=t,t.currentTNode=i.firstChild,t.lView=e,t.tView=i,t.contextLView=e,t.bindingIndex=i.bindingStartIndex,t.inI18n=!1}function G(){const e=Kn.lFrame,t=null===e?null:e.child;return null===t?te(e):t}function te(e){const t={currentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:-1,contextLView:null,elementDepthCount:0,currentNamespace:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:e,child:null,inI18n:!1};return null!==e&&(e.child=t),t}function V(){const e=Kn.lFrame;return Kn.lFrame=e.parent,e.currentTNode=null,e.lView=null,e}const de=V;function Le(){const e=V();e.isParent=!0,e.tView=null,e.selectedIndex=-1,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function Nt(){return Kn.lFrame.selectedIndex}function mn(e){Kn.lFrame.selectedIndex=e}function Ln(){const e=Kn.lFrame;return ht(e.tView,e.selectedIndex)}function Gn(){Kn.lFrame.currentNamespace=Co}function Wi(){Kn.lFrame.currentNamespace=Oo}function br(){!function Ms(){Kn.lFrame.currentNamespace=null}()}function Eo(){return Kn.lFrame.currentNamespace}let uo=!0;function ho(){return uo}function Er(e){uo=e}function ws(e,t){for(let i=t.directiveStart,f=t.directiveEnd;i=f)break}else t[oe]<0&&(e[Gi]+=65536),(K>13>16&&(3&e[xn])===t&&(e[xn]+=8192,Ml(K,I)):Ml(K,I)}const Re=-1;class H{constructor(t,i,f){this.factory=t,this.resolving=!1,this.canSeeViewProviders=i,this.injectImpl=f}}function Ui(e){return e!==Re}function Fn(e){return 32767&e}function qn(e,t){let i=function bn(e){return e>>16}(e),f=t;for(;i>0;)f=f[Je],i--;return f}let nr=!0;function wi(e){const t=nr;return nr=e,t}const Hi=255,Ei=5;let Bn=0;const _i={};function ei(e,t){const i=Ai(e,t);if(-1!==i)return i;const f=t[rn];f.firstCreatePass&&(e.injectorIndex=t.length,Ki(f.data,e),Ki(t,null),Ki(f.blueprint,null));const y=ui(e,t),I=e.injectorIndex;if(Ui(y)){const B=Fn(y),K=qn(y,t),oe=K[rn].data;for(let xe=0;xe<8;xe++)t[I+xe]=K[B+xe]|oe[B+xe]}return t[I+8]=y,I}function Ki(e,t){e.push(0,0,0,0,0,0,0,0,t)}function Ai(e,t){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null===t[e.injectorIndex+8]?-1:e.injectorIndex}function ui(e,t){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;let i=0,f=null,y=t;for(;null!==y;){if(f=Wh(y),null===f)return Re;if(i++,y=y[Je],-1!==f.injectorIndex)return f.injectorIndex|i<<16}return Re}function Di(e,t,i){!function hr(e,t,i){let f;"string"==typeof i?f=i.charCodeAt(0)||0:i.hasOwnProperty(mt)&&(f=i[mt]),null==f&&(f=i[mt]=Bn++);const y=f&Hi;t.data[e+(y>>Ei)]|=1<=0?t&Hi:Cv:t}(i);if("function"==typeof I){if(!wo(t,e,f))return f&pe.Host?Na(y,0,f):Ts(t,i,f,y);try{const B=I(f);if(null!=B||f&pe.Optional)return B;S()}finally{de()}}else if("number"==typeof I){let B=null,K=Ai(e,t),oe=Re,xe=f&pe.Host?t[Gt][xi]:null;for((-1===K||f&pe.SkipSelf)&&(oe=-1===K?ui(e,t):t[K+8],oe!==Re&&Hh(f,!1)?(B=t[rn],K=Fn(oe),t=qn(oe,t)):K=-1);-1!==K;){const Ve=t[rn];if(jh(I,K,Ve.data)){const lt=bv(K,t,i,B,f,xe);if(lt!==_i)return lt}oe=t[K+8],oe!==Re&&Hh(f,t[rn].data[K+8]===xe)&&jh(I,K,t)?(B=Ve,K=Fn(oe),t=qn(oe,t)):K=-1}}return y}function bv(e,t,i,f,y,I){const B=t[rn],K=B.data[e+8],Ve=wl(K,B,i,null==f?Xn(K)&&nr:f!=B&&0!=(3&K.type),y&pe.Host&&I===K);return null!==Ve?Is(t,B,Ve,K):_i}function wl(e,t,i,f,y){const I=e.providerIndexes,B=t.data,K=1048575&I,oe=e.directiveStart,Ve=I>>20,Pt=y?K+Ve:e.directiveEnd;for(let jt=f?K:K+Ve;jt=oe&&sn.type===i)return jt}if(y){const jt=B[oe];if(jt&&Fi(jt)&&jt.type===i)return oe}return null}function Is(e,t,i,f){let y=e[i];const I=t.data;if(function Ze(e){return e instanceof H}(y)){const B=y;B.resolving&&function R(e,t){const i=t?`. Dependency path: ${t.join(" > ")} > ${e}`:"";throw new T(-200,`Circular dependency in DI detected for ${e}${i}`)}(D(I[i]));const K=wi(B.canSeeViewProviders);B.resolving=!0;const oe=B.injectImpl?Lt(B.injectImpl):null;wo(e,f,pe.Default);try{y=e[i]=B.factory(void 0,I,e,f),t.firstCreatePass&&i>=f.directiveStart&&function xl(e,t,i){const{ngOnChanges:f,ngOnInit:y,ngDoCheck:I}=t.type.prototype;if(f){const B=Lo(t);(i.preOrderHooks??=[]).push(e,B),(i.preOrderCheckHooks??=[]).push(e,B)}y&&(i.preOrderHooks??=[]).push(0-e,y),I&&((i.preOrderHooks??=[]).push(e,I),(i.preOrderCheckHooks??=[]).push(e,I))}(i,I[i],t)}finally{null!==oe&&Lt(oe),wi(K),B.resolving=!1,de()}}return y}function jh(e,t,i){return!!(i[t+(e>>Ei)]&1<{const t=e.prototype.constructor,i=t[wt]||Pc(t),f=Object.prototype;let y=Object.getPrototypeOf(e.prototype).constructor;for(;y&&y!==f;){const I=y[wt]||Pc(y);if(I&&I!==i)return I;y=Object.getPrototypeOf(y)}return I=>new I})}function Pc(e){return x(e)?()=>{const t=Pc(M(e));return t&&t()}:sr(e)}function Wh(e){const t=e[rn],i=t.type;return 2===i?t.declTNode:1===i?e[xi]:null}function Fc(e){return function Uo(e,t){if("class"===t)return e.classes;if("style"===t)return e.styles;const i=e.attrs;if(i){const f=i.length;let y=0;for(;y{const I=Nc(t);function B(...K){if(this instanceof B)return I.call(this,...K),this;const oe=new B(...K);return function(Ve){return y&&y(Ve,...K),(Ve.hasOwnProperty(Xs)?Ve[Xs]:Object.defineProperty(Ve,Xs,{value:[]})[Xs]).push(oe),f&&f(Ve),Ve}}return i&&(B.prototype=Object.create(i.prototype)),B.prototype.ngMetadataName=e,B.annotationCls=B,B})}function Nc(e){return function(...i){if(e){const f=e(...i);for(const y in f)this[y]=f[y]}}}function ea(e,t,i){return tn(()=>{const f=Nc(t);function y(...I){if(this instanceof y)return f.apply(this,I),this;const B=new y(...I);return K.annotation=B,K;function K(oe,xe,Ve){const lt=oe.hasOwnProperty(Js)?oe[Js]:Object.defineProperty(oe,Js,{value:[]})[Js];for(;lt.length<=Ve;)lt.push(null);return(lt[Ve]=lt[Ve]||[]).push(B),oe}}return i&&(y.prototype=Object.create(i.prototype)),y.prototype.ngMetadataName=e,y.annotationCls=y,y})}function ss(e,t,i,f){return tn(()=>{const y=Nc(t);function I(...B){if(this instanceof I)return y.apply(this,B),this;const K=new I(...B);return function oe(xe,Ve){if(void 0===xe)throw new Error("Standard Angular field decorators are not supported in JIT mode.");const lt=xe.constructor,Pt=lt.hasOwnProperty(qs)?lt[qs]:Object.defineProperty(lt,qs,{value:{}})[qs];Pt[Ve]=Pt.hasOwnProperty(Ve)&&Pt[Ve]||[],Pt[Ve].unshift(K),f&&f(xe,Ve,...B)}}return i&&(I.prototype=Object.create(i.prototype)),I.prototype.ngMetadataName=e,I.annotationCls=I,I})}const Gh=ea("Attribute",e=>({attributeName:e,__NG_ELEMENT_ID__:()=>Fc(e)}));class Ba{}const Mv=ss("ContentChildren",(e,t={})=>({selector:e,first:!1,isViewQuery:!1,descendants:!1,emitDistinctChangesOnly:!0,...t}),Ba),wv=ss("ContentChild",(e,t={})=>({selector:e,first:!0,isViewQuery:!1,descendants:!0,...t}),Ba),Ev=ss("ViewChildren",(e,t={})=>({selector:e,first:!1,isViewQuery:!0,descendants:!0,emitDistinctChangesOnly:!0,...t}),Ba),Dv=ss("ViewChild",(e,t)=>({selector:e,first:!0,isViewQuery:!0,descendants:!0,...t}),Ba);var As=function(e){return e[e.Directive=0]="Directive",e[e.Component=1]="Component",e[e.Injectable=2]="Injectable",e[e.Pipe=3]="Pipe",e[e.NgModule=4]="NgModule",e}(As||{});function pr(e){const t=ze.ng;if(t&&t.\u0275compilerFacade)return t.\u0275compilerFacade;throw new Error("JIT compiler unavailable")}const Yh=Function;function $a(e){return"function"==typeof e}function no(e){return e.flat(Number.POSITIVE_INFINITY)}function Va(e,t){e.forEach(i=>Array.isArray(i)?Va(i,t):t(i))}function Zh(e,t,i){t>=e.length?e.push(i):e.splice(t,0,i)}function El(e,t){return t>=e.length-1?e.pop():e.splice(t,1)[0]}function ja(e,t){const i=[];for(let f=0;f=0?e[1|f]=i:(f=~f,function kv(e,t,i,f){let y=e.length;if(y==t)e.push(i,f);else if(1===y)e.push(f,e[0]),e[0]=i;else{for(y--,e.push(e[y-1],e[y]);y>t;)e[y]=e[y-2],y--;e[t]=i,e[t+1]=f}}(e,f,t,i)),f}function Uc(e,t){const i=ta(e,t);if(i>=0)return e[1|i]}function ta(e,t){return function Qh(e,t,i){let f=0,y=e.length>>i;for(;y!==f;){const I=f+(y-f>>1),B=e[I<t?y=I:f=I+1}return~(y<new t(...i)}_zipTypesAndAnnotations(t,i){let f;f=ja(typeof t>"u"?i.length:t.length);for(let y=0;y"u"?[]:t[y]&&t[y]!=Object?[t[y]]:[],i&&null!=i[y]&&(f[y]=f[y].concat(i[y]));return f}_ownParameters(t,i){if(function Fv(e){return Lv.test(e)||Pv.test(e)||Rv.test(e)&&!Ov.test(e)}(t.toString()))return null;if(t.parameters&&t.parameters!==i.parameters)return t.parameters;const y=t.ctorParameters;if(y&&y!==i.ctorParameters){const K="function"==typeof y?y():y,oe=K.map(Ve=>Ve&&Ve.type),xe=K.map(Ve=>Ve&&Bc(Ve.decorators));return this._zipTypesAndAnnotations(oe,xe)}const I=t.hasOwnProperty(Js)&&t[Js],B=this._reflect&&this._reflect.getOwnMetadata&&this._reflect.getOwnMetadata("design:paramtypes",t);return B||I?this._zipTypesAndAnnotations(B,I):ja(t.length)}parameters(t){if(!$a(t))return[];const i=Dl(t);let f=this._ownParameters(t,i);return!f&&i!==Object&&(f=this.parameters(i)),f||[]}_ownAnnotations(t,i){if(t.annotations&&t.annotations!==i.annotations){let f=t.annotations;return"function"==typeof f&&f.annotations&&(f=f.annotations),f}return t.decorators&&t.decorators!==i.decorators?Bc(t.decorators):t.hasOwnProperty(Xs)?t[Xs]:null}annotations(t){if(!$a(t))return[];const i=Dl(t),f=this._ownAnnotations(t,i)||[];return(i!==Object?this.annotations(i):[]).concat(f)}_ownPropMetadata(t,i){if(t.propMetadata&&t.propMetadata!==i.propMetadata){let f=t.propMetadata;return"function"==typeof f&&f.propMetadata&&(f=f.propMetadata),f}if(t.propDecorators&&t.propDecorators!==i.propDecorators){const f=t.propDecorators,y={};return Object.keys(f).forEach(I=>{y[I]=Bc(f[I])}),y}return t.hasOwnProperty(qs)?t[qs]:null}propMetadata(t){if(!$a(t))return{};const i=Dl(t),f={};if(i!==Object){const I=this.propMetadata(i);Object.keys(I).forEach(B=>{f[B]=I[B]})}const y=this._ownPropMetadata(t,i);return y&&Object.keys(y).forEach(I=>{const B=[];f.hasOwnProperty(I)&&B.push(...f[I]),B.push(...y[I]),f[I]=B}),f}ownPropMetadata(t){return $a(t)&&this._ownPropMetadata(t,Dl(t))||{}}hasLifecycleHook(t,i){return t instanceof Yh&&i in t.prototype}}function Bc(e){return e?e.map(t=>new(0,t.type.annotationCls)(...t.args?t.args:[])):[]}function Dl(e){const t=e.prototype?Object.getPrototypeOf(e.prototype):null;return(t?t.constructor:null)||Object}const Jh=qe(ea("Inject",e=>({token:e})),-1),Tl=qe(ea("Optional"),8),qh=qe(ea("Self"),2),Sl=qe(ea("SkipSelf"),4),ef=qe(ea("Host"),1);let tf=null;function $c(){return tf=tf||new Xh}function Il(e){return nf($c().parameters(e))}function nf(e){return e.map(t=>function Nv(e){const t={token:null,attribute:null,host:!1,optional:!1,self:!1,skipSelf:!1};if(Array.isArray(e)&&e.length>0)for(let i=0;i{const B=[];y.templateUrl&&B.push(f(y.templateUrl).then(lt=>{y.template=lt}));const K=y.styleUrls,oe=y.styles||(y.styles=[]),xe=y.styles.length;K&&K.forEach((lt,Pt)=>{oe.push(""),B.push(f(lt).then(jt=>{oe[xe+Pt]=jt,K.splice(K.indexOf(lt),1),0==K.length&&(y.styleUrls=void 0)}))});const Ve=Promise.all(B).then(()=>function Vv(e){Ha.delete(e)}(I));t.push(Ve)}),af(),Promise.all(t).then(()=>{})}let na=new Map;const Ha=new Set;function sf(e){return!!(e.templateUrl&&!e.hasOwnProperty("template")||e.styleUrls&&e.styleUrls.length)}function af(){const e=na;return na=new Map,e}function $v(e){return"string"==typeof e?e:e.text()}const Al=new Map;let lf=!0;function Vc(e,t){(function jv(e,t,i){if(t&&t!==i&&lf)throw new Error(`Duplicate module registered for ${e} - ${u(t)} vs ${u(t.name)}`)})(t,Al.get(t)||null,e),Al.set(t,e)}function cf(e){return Al.get(e)}function Hv(e){lf=!e}const uf={name:"custom-elements"},df={name:"no-errors-schema"};let jc=!1;function zv(e){jc=e}function Wv(){return jc}let Hc=!1;function Gv(e){Hc=e}function Kv(){return Hc}const ia="ngSkipHydration";function pf(e){const t=ia.toLowerCase(),i=e.mergedAttrs;if(null===i)return!1;for(let f=0;f|^->||--!>|)/,Xv="\u200b$1\u200b";const zc=new Map;let Jv=0;function vf(e){return zc.get(e)||null}class bf{get lView(){return vf(this.lViewId)}constructor(t,i,f){this.lViewId=t,this.nodeIndex=i,this.native=f}}function kr(e){let t=za(e);if(t){if(ci(t)){const i=t;let f,y,I;if(xf(e)){if(f=wf(i,e),-1==f)throw new Error("The provided component was not found in the application");y=e}else if(function nb(e){return e&&e.constructor&&e.constructor.\u0275dir}(e)){if(f=function rb(e,t){let i=e[rn].firstChild;for(;i;){const y=i.directiveEnd;for(let I=i.directiveStart;I=0){const K=Oi(I[B]),oe=Wc(I,B,K);Dr(K,oe),t=oe;break}}}}return t||null}function Wc(e,t,i){return new bf(e[rr],t,i)}function yf(e){let i,t=za(e);if(ci(t)){const f=t,y=wf(f,e);i=Zt(y,f);const I=Wc(f,y,i[yn]);I.component=e,Dr(e,I),Dr(I.native,I)}else i=Zt(t.nodeIndex,t.lView);return i}const Gc="__ngContext__";function Dr(e,t){ci(t)?(e[Gc]=t[rr],function eb(e){zc.set(e[rr],e)}(t)):e[Gc]=t}function za(e){const t=e[Gc];return"number"==typeof t?vf(t):t||null}function Cf(e){const t=za(e);return t?ci(t)?t:t.lView:null}function xf(e){return e&&e.constructor&&e.constructor.\u0275cmp}function Mf(e,t){const i=e[rn];for(let f=ft;ft.replace(Qv,Xv))}(t))}function Nl(e,t,i){return e.createElement(t,i)}function Af(e,t){const i=e[_n],f=i.indexOf(t);Si(t),i.splice(f,1)}function Qc(e,t){if(e.length<=Vn)return;const i=Vn+t,f=e[i];if(f){const y=f[Pn];null!==y&&y!==e&&Af(y,f),t>0&&(e[i-1][Ti]=f[Ti]);const I=El(e,Vn+t);!function ub(e,t){Ka(e,t,t[U],2,null,null),t[yn]=null,t[xi]=null}(f[rn],f);const B=I[Vi];null!==B&&B.detachView(I[rn]),f[ti]=null,f[Ti]=null,f[xn]&=-129}return f}function kf(e,t){if(!(256&t[xn])){const i=t[U];t[Et]?.destroy(),t[_t]?.destroy(),i.destroyNode&&Ka(e,t,i,3,null,null),function fb(e){let t=e[fe];if(!t)return Xc(e[rn],e);for(;t;){let i=null;if(ci(t))i=t[fe];else{const f=t[Vn];f&&(i=f)}if(!i){for(;t&&!t[Ti]&&t!==e;)ci(t)&&Xc(t[rn],t),t=t[ti];null===t&&(t=e),ci(t)&&Xc(t[rn],t),i=t&&t[Ti]}t=i}}(t)}}function Xc(e,t){if(!(256&t[xn])){t[xn]&=-129,t[xn]|=256,function _b(e,t){let i;if(null!=e&&null!=(i=e.destroyHooks))for(let f=0;f=0?f[B]():f[-B].unsubscribe(),I+=2}else i[I].call(f[i[I+1]]);null!==f&&(t[_r]=null);const y=t[Zi];if(null!==y){t[Zi]=null;for(let I=0;I-1){const{encapsulation:I}=e.data[f.directiveStart+y];if(I===Tn.None||I===Tn.Emulated)return null}return le(f,i)}}function ks(e,t,i,f,y){e.insertBefore(t,i,f,y)}function Rf(e,t,i){e.appendChild(t,i)}function Of(e,t,i,f,y){null!==f?ks(e,t,i,f,y):Rf(e,t,i)}function Ul(e,t){return e.parentNode(t)}function Pf(e,t,i){return Nf(e,t,i)}function Ff(e,t,i){return 40&e.type?le(e,i):null}let qc,Vl,iu,jl,Nf=Ff;function Uf(e,t){Nf=e,qc=t}function Bl(e,t,i,f){const y=Jc(e,f,t),I=t[U],K=Pf(f.parent||t[xi],f,t);if(null!=y)if(Array.isArray(i))for(let oe=0;oee,createScript:e=>e,createScriptURL:e=>e})}catch{}return Vl}function oa(e){return nu()?.createHTML(e)||e}function zf(e,t,i){const f=dn(),y=Ln(),I=le(y,f);if(2===y.type&&"iframe"===t.toLowerCase()){const B=I;throw B.src="",B.srcdoc=oa(""),$l(f[U],B),new T(-910,!1)}return e}function Db(e){iu=e}function Ya(){if(void 0!==iu)return iu;if(typeof document<"u")return document;throw new T(210,!1)}function ru(){if(void 0===jl&&(jl=null,ze.trustedTypes))try{jl=ze.trustedTypes.createPolicy("angular#unsafe-bypass",{createHTML:e=>e,createScript:e=>e,createScriptURL:e=>e})}catch{}return jl}function Wf(e){return ru()?.createHTML(e)||e}function Gf(e){return ru()?.createScript(e)||e}function Kf(e){return ru()?.createScriptURL(e)||e}class Ls{constructor(t){this.changingThisBreaksApplicationSecurity=t}toString(){return`SafeValue must use [property]=binding: ${this.changingThisBreaksApplicationSecurity} (see ${A})`}}class Tb extends Ls{getTypeName(){return"HTML"}}class Sb extends Ls{getTypeName(){return"Style"}}class Ib extends Ls{getTypeName(){return"Script"}}class Ab extends Ls{getTypeName(){return"URL"}}class kb extends Ls{getTypeName(){return"ResourceURL"}}function Bo(e){return e instanceof Ls?e.changingThisBreaksApplicationSecurity:e}function sa(e,t){const i=Yf(e);if(null!=i&&i!==t){if("ResourceURL"===i&&"URL"===t)return!0;throw new Error(`Required a safe ${t}, got a ${i} (see ${A})`)}return i===t}function Yf(e){return e instanceof Ls&&e.getTypeName()||null}function Lb(e){return new Tb(e)}function Rb(e){return new Sb(e)}function Ob(e){return new Ib(e)}function Pb(e){return new Ab(e)}function Fb(e){return new kb(e)}function Zf(e){const t=new Ub(e);return function Bb(){try{return!!(new window.DOMParser).parseFromString(oa(""),"text/html")}catch{return!1}}()?new Nb(t):t}class Nb{constructor(t){this.inertDocumentHelper=t}getInertBodyElement(t){t=""+t;try{const i=(new window.DOMParser).parseFromString(oa(t),"text/html").body;return null===i?this.inertDocumentHelper.getInertBodyElement(t):(i.removeChild(i.firstChild),i)}catch{return null}}}class Ub{constructor(t){this.defaultDoc=t,this.inertDocument=this.defaultDoc.implementation.createHTMLDocument("sanitization-inert")}getInertBodyElement(t){const i=this.inertDocument.createElement("template");return i.innerHTML=oa(t),i}}const $b=/^(?!javascript:)(?:[a-z0-9+.-]+:|[^&:\/?#]*(?:[\/?#]|$))/i;function Hl(e){return(e=String(e)).match($b)?e:"unsafe:"+e}function $o(e){const t={};for(const i of e.split(","))t[i]=!0;return t}function Za(...e){const t={};for(const i of e)for(const f in i)i.hasOwnProperty(f)&&(t[f]=!0);return t}const Qf=$o("area,br,col,hr,img,wbr"),Xf=$o("colgroup,dd,dt,li,p,tbody,td,tfoot,th,thead,tr"),Jf=$o("rp,rt"),ou=Za(Qf,Za(Xf,$o("address,article,aside,blockquote,caption,center,del,details,dialog,dir,div,dl,figure,figcaption,footer,h1,h2,h3,h4,h5,h6,header,hgroup,hr,ins,main,map,menu,nav,ol,pre,section,summary,table,ul")),Za(Jf,$o("a,abbr,acronym,audio,b,bdi,bdo,big,br,cite,code,del,dfn,em,font,i,img,ins,kbd,label,map,mark,picture,q,ruby,rp,rt,s,samp,small,source,span,strike,strong,sub,sup,time,track,tt,u,var,video")),Za(Jf,Xf)),su=$o("background,cite,href,itemtype,longdesc,poster,src,xlink:href"),qf=Za(su,$o("abbr,accesskey,align,alt,autoplay,axis,bgcolor,border,cellpadding,cellspacing,class,clear,color,cols,colspan,compact,controls,coords,datetime,default,dir,download,face,headers,height,hidden,hreflang,hspace,ismap,itemscope,itemprop,kind,label,lang,language,loop,media,muted,nohref,nowrap,open,preload,rel,rev,role,rows,rowspan,rules,scope,scrolling,shape,size,sizes,span,srclang,srcset,start,summary,tabindex,target,title,translate,type,usemap,valign,value,vspace,width"),$o("aria-activedescendant,aria-atomic,aria-autocomplete,aria-busy,aria-checked,aria-colcount,aria-colindex,aria-colspan,aria-controls,aria-current,aria-describedby,aria-details,aria-disabled,aria-dropeffect,aria-errormessage,aria-expanded,aria-flowto,aria-grabbed,aria-haspopup,aria-hidden,aria-invalid,aria-keyshortcuts,aria-label,aria-labelledby,aria-level,aria-live,aria-modal,aria-multiline,aria-multiselectable,aria-orientation,aria-owns,aria-placeholder,aria-posinset,aria-pressed,aria-readonly,aria-relevant,aria-required,aria-roledescription,aria-rowcount,aria-rowindex,aria-rowspan,aria-selected,aria-setsize,aria-sort,aria-valuemax,aria-valuemin,aria-valuenow,aria-valuetext")),Vb=$o("script,style,template");class jb{constructor(){this.sanitizedSomething=!1,this.buf=[]}sanitizeChildren(t){let i=t.firstChild,f=!0;for(;i;)if(i.nodeType===Node.ELEMENT_NODE?f=this.startElement(i):i.nodeType===Node.TEXT_NODE?this.chars(i.nodeValue):this.sanitizedSomething=!0,f&&i.firstChild)i=i.firstChild;else for(;i;){i.nodeType===Node.ELEMENT_NODE&&this.endElement(i);let y=this.checkClobberedElement(i,i.nextSibling);if(y){i=y;break}i=this.checkClobberedElement(i,i.parentNode)}return this.buf.join("")}startElement(t){const i=t.nodeName.toLowerCase();if(!ou.hasOwnProperty(i))return this.sanitizedSomething=!0,!Vb.hasOwnProperty(i);this.buf.push("<"),this.buf.push(i);const f=t.attributes;for(let y=0;y"),!0}endElement(t){const i=t.nodeName.toLowerCase();ou.hasOwnProperty(i)&&!Qf.hasOwnProperty(i)&&(this.buf.push(""))}chars(t){this.buf.push(em(t))}checkClobberedElement(t,i){if(i&&(t.compareDocumentPosition(i)&Node.DOCUMENT_POSITION_CONTAINED_BY)===Node.DOCUMENT_POSITION_CONTAINED_BY)throw new Error(`Failed to sanitize html because the element is clobbered: ${t.outerHTML}`);return i}}const Hb=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,zb=/([^\#-~ |!])/g;function em(e){return e.replace(/&/g,"&").replace(Hb,function(t){return"&#"+(1024*(t.charCodeAt(0)-55296)+(t.charCodeAt(1)-56320)+65536)+";"}).replace(zb,function(t){return"&#"+t.charCodeAt(0)+";"}).replace(//g,">")}let zl;function tm(e,t){let i=null;try{zl=zl||Zf(e);let f=t?String(t):"";i=zl.getInertBodyElement(f);let y=5,I=f;do{if(0===y)throw new Error("Failed to sanitize html because the input is unstable");y--,f=I,I=i.innerHTML,i=zl.getInertBodyElement(f)}while(f!==I);return oa((new jb).sanitizeChildren(au(i)||i))}finally{if(i){const f=au(i)||i;for(;f.firstChild;)f.removeChild(f.firstChild)}}}function au(e){return"content"in e&&function Wb(e){return e.nodeType===Node.ELEMENT_NODE&&"TEMPLATE"===e.nodeName}(e)?e.content:null}var Rs=function(e){return e[e.NONE=0]="NONE",e[e.HTML=1]="HTML",e[e.STYLE=2]="STYLE",e[e.SCRIPT=3]="SCRIPT",e[e.URL=4]="URL",e[e.RESOURCE_URL=5]="RESOURCE_URL",e}(Rs||{});function nm(e){const t=Qa();return t?Wf(t.sanitize(Rs.HTML,e)||""):sa(e,"HTML")?Wf(Bo(e)):tm(Ya(),E(e))}function im(e){const t=Qa();return t?t.sanitize(Rs.STYLE,e)||"":sa(e,"Style")?Bo(e):E(e)}function lu(e){const t=Qa();return t?t.sanitize(Rs.URL,e)||"":sa(e,"URL")?Bo(e):Hl(E(e))}function cu(e){const t=Qa();if(t)return Kf(t.sanitize(Rs.RESOURCE_URL,e)||"");if(sa(e,"ResourceURL"))return Kf(Bo(e));throw new T(904,!1)}function rm(e){const t=Qa();if(t)return Gf(t.sanitize(Rs.SCRIPT,e)||"");if(sa(e,"Script"))return Gf(Bo(e));throw new T(905,!1)}function om(e){return oa(e[0])}function sm(e){return function Eb(e){return nu()?.createScriptURL(e)||e}(e[0])}function am(e,t,i){return function Gb(e,t){return"src"===t&&("embed"===e||"frame"===e||"iframe"===e||"media"===e||"script"===e)||"href"===t&&("base"===e||"link"===e)?cu:lu}(t,i)(e)}function Qa(){const e=dn();return e&&e[kt].sanitizer}class Yi{constructor(t,i){this._desc=t,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof i?this.__NG_ELEMENT_ID__=i:void 0!==i&&(this.\u0275prov=St({token:this,providedIn:i.providedIn||"root",factory:i.factory}))}get multi(){return this}toString(){return`InjectionToken ${this._desc}`}}const Xa=new Yi("ENVIRONMENT_INITIALIZER"),uu=new Yi("INJECTOR",-1),lm=new Yi("INJECTOR_DEF_TYPES");class cm{get(t,i=Yt){if(i===Yt){const f=new Error(`NullInjectorError: No provider for ${u(t)}!`);throw f.name="NullInjectorError",f}return i}}function du(e){return{\u0275providers:e}}function um(...e){return{\u0275providers:dm(0,e),\u0275fromNgModule:!0}}function dm(e,...t){const i=[],f=new Set;let y;return Va(t,I=>{const B=I;hu(B,i,[],f)&&(y||=[],y.push(B))}),void 0!==y&&hm(y,i),i}function hm(e,t){for(let i=0;i{t.push(I)})}}function hu(e,t,i,f){if(!(e=M(e)))return!1;let y=null,I=J(e);const B=!I&&gn(e);if(I||B){if(B&&!B.standalone)return!1;y=e}else{const oe=e.ngModule;if(I=J(oe),!I)return!1;y=oe}const K=f.has(y);if(B){if(K)return!1;if(f.add(y),B.dependencies){const oe="function"==typeof B.dependencies?B.dependencies():B.dependencies;for(const xe of oe)hu(xe,t,i,f)}}else{if(!I)return!1;{if(null!=I.imports&&!K){let xe;f.add(y);try{Va(I.imports,Ve=>{hu(Ve,t,i,f)&&(xe||=[],xe.push(Ve))})}finally{}void 0!==xe&&hm(xe,t)}if(!K){const xe=sr(y)||(()=>new y);t.push({provide:y,useFactory:xe,deps:Mn},{provide:lm,useValue:y,multi:!0},{provide:Xa,useValue:()=>ce(y),multi:!0})}const oe=I.providers;null==oe||K||fu(oe,Ve=>{t.push(Ve)})}}return y!==e&&void 0!==e.providers}function fu(e,t){for(let i of e)w(i)&&(i=i.\u0275providers),Array.isArray(i)?fu(i,t):t(i)}const Kb=d({provide:String,useValue:d});function mu(e){return null!==e&&"object"==typeof e&&Kb in e}function Os(e){return"function"==typeof e}const pu=new Yi("Set Injector scope."),Wl={},Zb={};let gu;function Gl(){return void 0===gu&&(gu=new cm),gu}class Ps{}class _u extends Ps{get destroyed(){return this._destroyed}constructor(t,i,f,y){super(),this.parent=i,this.source=f,this.scopes=y,this.records=new Map,this._ngOnDestroyHooks=new Set,this._onDestroyHooks=[],this._destroyed=!1,bu(t,B=>this.processProvider(B)),this.records.set(uu,aa(void 0,this)),y.has("environment")&&this.records.set(Ps,aa(void 0,this));const I=this.records.get(pu);null!=I&&"string"==typeof I.value&&this.scopes.add(I.value),this.injectorDefTypes=new Set(this.get(lm.multi,Mn,pe.Self))}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{for(const i of this._ngOnDestroyHooks)i.ngOnDestroy();const t=this._onDestroyHooks;this._onDestroyHooks=[];for(const i of t)i()}finally{this.records.clear(),this._ngOnDestroyHooks.clear(),this.injectorDefTypes.clear()}}onDestroy(t){return this.assertNotDestroyed(),this._onDestroyHooks.push(t),()=>this.removeOnDestroy(t)}runInContext(t){this.assertNotDestroyed();const i=Z(this),f=Lt(void 0);try{return t()}finally{Z(i),Lt(f)}}get(t,i=Yt,f=pe.Default){if(this.assertNotDestroyed(),t.hasOwnProperty(pt))return t[pt](this);f=Rt(f);const y=Z(this),I=Lt(void 0);try{if(!(f&pe.SkipSelf)){let K=this.records.get(t);if(void 0===K){const oe=function ey(e){return"function"==typeof e||"object"==typeof e&&e instanceof Yi}(t)&&nt(t);K=oe&&this.injectableDefInScope(oe)?aa(vu(t),Wl):null,this.records.set(t,K)}if(null!=K)return this.hydrate(t,K)}return(f&pe.Self?Gl():this.parent).get(t,i=f&pe.Optional&&i===Yt?null:i)}catch(B){if("NullInjectorError"===B.name){if((B[We]=B[We]||[]).unshift(u(t)),y)throw B;return function dt(e,t,i,f){const y=e[We];throw t[De]&&y.unshift(t[De]),e.message=function At(e,t,i,f=null){e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.slice(2):e;let y=u(t);if(Array.isArray(t))y=t.map(u).join(" -> ");else if("object"==typeof t){let I=[];for(let B in t)if(t.hasOwnProperty(B)){let K=t[B];I.push(B+":"+("string"==typeof K?JSON.stringify(K):u(K)))}y=`{${I.join(", ")}}`}return`${i}${f?"("+f+")":""}[${y}]: ${e.replace(we,"\n ")}`}("\n"+e.message,y,i,f),e.ngTokenPath=y,e[We]=null,e}(B,t,"R3InjectorError",this.source)}throw B}finally{Lt(I),Z(y)}}resolveInjectorInitializers(){const t=Z(this),i=Lt(void 0);try{const f=this.get(Xa.multi,Mn,pe.Self);for(const y of f)y()}finally{Z(t),Lt(i)}}toString(){const t=[],i=this.records;for(const f of i.keys())t.push(u(f));return`R3Injector[${t.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new T(205,!1)}processProvider(t){let i=Os(t=M(t))?t:M(t&&t.provide);const f=function Xb(e){return mu(e)?aa(void 0,e.useValue):aa(pm(e),Wl)}(t);if(Os(t)||!0!==t.multi)this.records.get(i);else{let y=this.records.get(i);y||(y=aa(void 0,Wl,!0),y.factory=()=>Ye(y.multi),this.records.set(i,y)),i=t,y.multi.push(t)}this.records.set(i,f)}hydrate(t,i){return i.value===Wl&&(i.value=Zb,i.value=i.factory()),"object"==typeof i.value&&i.value&&function qb(e){return null!==e&&"object"==typeof e&&"function"==typeof e.ngOnDestroy}(i.value)&&this._ngOnDestroyHooks.add(i.value),i.value}injectableDefInScope(t){if(!t.providedIn)return!1;const i=M(t.providedIn);return"string"==typeof i?"any"===i||this.scopes.has(i):this.injectorDefTypes.has(i)}removeOnDestroy(t){const i=this._onDestroyHooks.indexOf(t);-1!==i&&this._onDestroyHooks.splice(i,1)}}function vu(e){const t=nt(e),i=null!==t?t.factory:sr(e);if(null!==i)return i;if(e instanceof Yi)throw new T(204,!1);if(e instanceof Function)return function Qb(e){const t=e.length;if(t>0)throw ja(t,"?"),new T(204,!1);const i=function rt(e){return e&&(e[Ce]||e[ae])||null}(e);return null!==i?()=>i.factory(e):()=>new e}(e);throw new T(204,!1)}function pm(e,t,i){let f;if(Os(e)){const y=M(e);return sr(y)||vu(y)}if(mu(e))f=()=>M(e.useValue);else if(function mm(e){return!(!e||!e.useFactory)}(e))f=()=>e.useFactory(...Ye(e.deps||[]));else if(function fm(e){return!(!e||!e.useExisting)}(e))f=()=>ce(M(e.useExisting));else{const y=M(e&&(e.useClass||e.provide));if(!function Jb(e){return!!e.deps}(e))return sr(y)||vu(y);f=()=>new y(...Ye(e.deps))}return f}function aa(e,t,i=!1){return{factory:e,value:t,multi:i?[]:void 0}}function bu(e,t){for(const i of e)Array.isArray(i)?bu(i,t):i&&w(i)?bu(i.\u0275providers,t):t(i)}const gm=new Yi("AppId",{providedIn:"root",factory:()=>ty}),ty="ng",_m=new Yi("Platform Initializer"),yu=new Yi("Platform ID",{providedIn:"platform",factory:()=>"unknown"}),ny=new Yi("Application Packages Root URL"),iy=new Yi("AnimationModuleType"),ry=new Yi("CSP nonce",{providedIn:"root",factory:()=>Ya().body?.querySelector("[ngCspNonce]")?.getAttribute("ngCspNonce")||null}),vm=new Yi("",{providedIn:"root",factory:()=>new Set});function oy(e){return e}function sy(){const e=new Ja;return"browser"===it(yu)&&(e.store=function ay(e,t){const i=e.getElementById(t+"-state");if(i?.textContent)try{return JSON.parse(i.textContent)}catch(f){console.warn("Exception while restoring TransferState for app "+t,f)}return{}}(Ya(),it(gm))),e}let Ja=(()=>{class e{constructor(){this.store={},this.onSerializeCallbacks={}}get(i,f){return void 0!==this.store[i]?this.store[i]:f}set(i,f){this.store[i]=f}remove(i){delete this.store[i]}hasKey(i){return this.store.hasOwnProperty(i)}get isEmpty(){return 0===Object.keys(this.store).length}onSerialize(i,f){this.onSerializeCallbacks[i]=f}toJson(){for(const i in this.onSerializeCallbacks)if(this.onSerializeCallbacks.hasOwnProperty(i))try{this.store[i]=this.onSerializeCallbacks[i]()}catch(f){console.warn("Exception in onSerialize callback: ",f)}return JSON.stringify(this.store).replace(/null;function ly(e,t){const i=e.getAttribute(Tu);if(null==i)return null;let f={};if(""!==i){const I=t.get(Ja,null,{optional:!0});null!==I&&(f=I.get(Du,[])[Number(i)])}const y={data:f,firstChild:e.firstChild??null};return e.removeAttribute(Tu),y}function Cm(e,t){return ym(e,t)}function xm(e){let t=e._lView;return 2===t[rn].type?null:(Xi(t)&&(t=t[ft]),Mi(t)&&(t=t[yn]),t)}function Su(e,t,i){e.segmentHeads??={},e.segmentHeads[t]=i}function Iu(e,t){return e.segmentHeads?.[t]??null}function Mm(e,t){return e.data[qa]?.[t]??null}function Au(e,t){const i=Mm(e,t)??[];let f=0;for(let y of i)f+=y[el]*(y[Kl]??1);return f}function Zl(e,t){if(typeof e.disconnectedNodes>"u"){const i=e.data[Yl];e.disconnectedNodes=i?new Set(i):null}return!!e.disconnectedNodes?.has(t)}class wm{}class Ql{}class py{resolveComponentFactory(t){throw function my(e){const t=Error(`No component factory found for ${u(e)}.`);return t.ngComponent=e,t}(t)}}let tl=(()=>{class e{}return e.NULL=new py,e})();function gy(){return ca(cr(),dn())}function ca(e,t){return new nl(le(e,t))}let nl=(()=>{class e{constructor(i){this.nativeElement=i}}return e.__NG_ELEMENT_ID__=gy,e})();function _y(e){return e instanceof nl?e.nativeElement:e}class Dm{}let vy=(()=>{class e{constructor(){this.destroyNode=null}}return e.__NG_ELEMENT_ID__=()=>function by(){const e=dn(),i=Zt(cr().index,e);return(ci(i)?i:e)[U]}(),e})(),Tm=(()=>{class e{}return e.\u0275prov=St({token:e,providedIn:"root",factory:()=>null}),e})();class Sm{constructor(t){this.full=t,this.major=t.split(".")[0],this.minor=t.split(".")[1],this.patch=t.split(".").slice(2).join(".")}}const Im=new Sm("16.1.7"),Xl={};function il(e){for(;e;){e[xn]|=64;const t=Wa(e);if(Xi(e)&&!t)return e;e=t}return null}function ku(e){return e.ngOriginalError}class ua{constructor(){this._console=console}handleError(t){const i=this._findOriginalError(t);this._console.error("ERROR",t),i&&this._console.error("ORIGINAL ERROR",i)}_findOriginalError(t){let i=t&&ku(t);for(;i&&ku(i);)i=ku(i);return i||null}}const rl=new Yi(""),Lm=new Yi("",{providedIn:"root",factory:()=>!1});function Rm(e){return e.ownerDocument.defaultView}function Om(e){return e.ownerDocument}function Lu(e){return e.ownerDocument.body}function Vo(e){return e instanceof Function?e():e}class Um extends so{constructor(){super(...arguments),this.consumerAllowSignalWrites=!1,this._lView=null}set lView(t){this._lView=t}onConsumerDependencyMayHaveChanged(){il(this._lView)}onProducerUpdateValueVersion(){}get hasReadASignal(){return this.hasProducers}runInContext(t,i,f){const y=Ji(this);this.trackingVersion++;try{t(i,f)}finally{Ji(y)}}destroy(){this.trackingVersion++}}let Jl=null;function Bm(){return Jl??=new Um,Jl}function $m(e,t){return e[t]??Bm()}function Vm(e,t){const i=Bm();i.hasReadASignal&&(e[t]=Jl,i.lView=e,Jl=new Um)}const fi={};function jm(e){Hm(yi(),dn(),Nt()+e,!1)}function Hm(e,t,i,f){if(!f)if(3==(3&t[xn])){const I=e.preOrderCheckHooks;null!==I&&Es(t,I,i)}else{const I=e.preOrderHooks;null!==I&&Ds(t,I,0,i)}mn(i)}function Ey(e,t){e instanceof _u&&e.assertNotDestroyed();const i=Z(e),f=Lt(void 0);try{return t()}finally{Z(i),Lt(f)}}function zm(e){if(!ct()&&!function ke(){return je}())throw new T(-203,!1)}const Wm={\u0275\u0275defineInjectable:St,\u0275\u0275defineInjector:xt,\u0275\u0275inject:ce,\u0275\u0275invalidFactoryDep:Ee,resolveForwardRef:M};const Ty=d({provide:String,useValue:d});function Gm(e){return void 0!==e.useClass}function Km(e){return void 0!==e.useFactory}const ky=Ua("Injectable",void 0,void 0,void 0,(e,t)=>function Dy(e,t){let i=null,f=null;e.hasOwnProperty(Ce)||Object.defineProperty(e,Ce,{get:()=>(null===i&&(i=pr().compileInjectable(Wm,`ng:///${e.name}/\u0275prov.js`,function Ay(e,t){const i=t||{providedIn:null},f={name:e.name,type:e,typeArgumentCount:0,providedIn:i.providedIn};return(Gm(i)||Km(i))&&void 0!==i.deps&&(f.deps=nf(i.deps)),Gm(i)?f.useClass=i.useClass:function Sy(e){return Ty in e}(i)?f.useValue=i.useValue:Km(i)?f.useFactory=i.useFactory:function Iy(e){return void 0!==e.useExisting}(i)&&(f.useExisting=i.useExisting),f}(e,t))),i)}),e.hasOwnProperty(wt)||Object.defineProperty(e,wt,{get:()=>{if(null===f){const y=pr();f=y.compileFactory(Wm,`ng:///${e.name}/\u0275fac.js`,{name:e.name,type:e,typeArgumentCount:0,deps:Il(e),target:y.FactoryTarget.Injectable})}return f},configurable:!0})}(e,t));function Ru(e,t=null,i=null,f){const y=Ym(e,t,i,f);return y.resolveInjectorInitializers(),y}function Ym(e,t=null,i=null,f,y=new Set){const I=[i||Mn,um(e)];return f=f||("object"==typeof e?void 0:u(e)),new _u(I,t||Gl(),f||null,y)}let as=(()=>{class e{static create(i,f){if(Array.isArray(i))return Ru({name:""},f,i,"");{const y=i.name??"";return Ru({name:y},i.parent,i.providers,y)}}}return e.THROW_IF_NOT_FOUND=Yt,e.NULL=new cm,e.\u0275prov=St({token:e,providedIn:"any",factory:()=>ce(uu)}),e.__NG_ELEMENT_ID__=-1,e})();function ha(e,t=pe.Default){const i=dn();return null===i?ce(e,t):Ss(cr(),i,M(e),t)}function Zm(){throw new Error("invalid")}function ql(e,t,i,f,y,I,B,K,oe,xe,Ve){const lt=t.blueprint.slice();return lt[yn]=y,lt[xn]=140|f,(null!==xe||e&&2048&e[xn])&&(lt[xn]|=2048),Rn(lt),lt[ti]=lt[Je]=e,lt[gi]=i,lt[kt]=B||e&&e[kt],lt[U]=K||e&&e[U],lt[Ke]=oe||e&&e[Ke]||null,lt[xi]=I,lt[rr]=function qv(){return Jv++}(),lt[ur]=Ve,lt[or]=xe,lt[Gt]=2==t.type?e[Gt]:lt,lt}function fa(e,t,i,f,y){let I=e.data[t];if(null===I)I=Ou(e,t,i,f,y),function Gs(){return Kn.lFrame.inI18n}()&&(I.flags|=32);else if(64&I.type){I.type=i,I.value=f,I.attrs=y;const B=xo();I.injectorIndex=null===B?-1:B.injectorIndex}return Ur(I,!0),I}function Ou(e,t,i,f,y){const I=bs(),B=ys(),oe=e.data[t]=function By(e,t,i,f,y,I){let B=t?t.injectorIndex:-1,K=0;return mr()&&(K|=128),{type:i,index:f,insertBeforeIndex:null,injectorIndex:B,directiveStart:-1,directiveEnd:-1,directiveStylingLast:-1,componentOffset:-1,propertyBindings:null,flags:K,providerIndexes:0,value:y,attrs:I,mergedAttrs:null,localNames:null,initialInputs:void 0,inputs:null,outputs:null,tView:null,next:null,prev:null,projectionNext:null,child:null,parent:t,projection:null,styles:null,stylesWithoutHost:null,residualStyles:void 0,classes:null,classesWithoutHost:null,residualClasses:void 0,classBindings:0,styleBindings:0}}(0,B?I:I&&I.parent,i,t,f,y);return null===e.firstChild&&(e.firstChild=oe),null!==I&&(B?null==I.child&&null!==oe.parent&&(I.child=oe):null===I.next&&(I.next=oe,oe.prev=I)),oe}function ol(e,t,i,f){if(0===i)return-1;const y=t.length;for(let I=0;Ift&&Hm(e,t,ft,!1),vr(K?2:0,y),K)I.runInContext(i,f,y);else{const xe=Ji(null);try{i(f,y)}finally{Ji(xe)}}}finally{K&&null===t[Et]&&Vm(t,Et),mn(B),vr(K?3:1,y)}}function Pu(e,t,i){if(ni(t)){const f=Ji(null);try{const I=t.directiveEnd;for(let B=t.directiveStart;Bnull;function Fy(e){gf(e)?$f(e):function dy(e){const t=Ya(),i=t.createNodeIterator(e,NodeFilter.SHOW_COMMENT,{acceptNode(I){const B=function uy(e){return e.textContent?.replace(/\s/gm,"")}(I);return"ngetn"===B||"ngtns"===B?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_REJECT}});let f;const y=[];for(;f=i.nextNode();)y.push(f);for(const I of y)"ngetn"===I.textContent?I.replaceWith(t.createTextNode("")):I.remove()}(e)}function qm(e,t,i,f){for(let y in e)if(e.hasOwnProperty(y)){i=null===i?{}:i;const I=e[y];null===f?ep(i,t,y,I):f.hasOwnProperty(y)&&ep(i,t,f[y],I)}return i}function ep(e,t,i,f){e.hasOwnProperty(i)?e[i].push(t,f):e[i]=[t,f]}function Xr(e,t,i,f,y,I,B,K){const oe=le(t,i);let Ve,xe=t.inputs;!K&&null!=xe&&(Ve=xe[f])?(Hu(e,i,Ve,f,y),Xn(t)&&function jy(e,t){const i=Zt(t,e);16&i[xn]||(i[xn]|=64)}(i,t.index)):3&t.type&&(f=function Vy(e){return"class"===e?"className":"for"===e?"htmlFor":"formaction"===e?"formAction":"innerHtml"===e?"innerHTML":"readonly"===e?"readOnly":"tabindex"===e?"tabIndex":e}(f),y=null!=B?B(y,t.value||"",f):y,I.setProperty(oe,f,y))}function Bu(e,t,i,f){if(is()){const y=null===f?null:{"":-1},I=function Yy(e,t){const i=e.directiveRegistry;let f=null,y=null;if(i)for(let I=0;I0;){const i=e[--t];if("number"==typeof i&&i<0)return i}return 0})(B)!=K&&B.push(K),B.push(i,f,I)}}(e,t,f,ol(e,i,y.hostVars,fi),y)}function Do(e,t,i,f,y,I){const B=le(e,t);Vu(t[U],B,I,e.value,i,f,y)}function Vu(e,t,i,f,y,I,B){if(null==I)e.removeAttribute(t,y,i);else{const K=null==B?E(I):B(I,f||"",y);e.setAttribute(t,y,K,i)}}function e1(e,t,i,f,y,I){const B=I[t];if(null!==B)for(let K=0;K{class e{}return e.__NG_ELEMENT_ID__=a1,e.__NG_ENV_ID__=t=>t,e})();class s1 extends Wu{constructor(t){super(),this._lView=t}onDestroy(t){return Ar(this._lView,t),()=>function wr(e,t){if(null===e[Zi])return;const i=e[Zi].indexOf(t);-1!==i&&e[Zi].splice(i,1)}(this._lView,t)}}function a1(){return new s1(dn())}let up=(()=>{class e{constructor(){this.all=new Set,this.queue=new Map}create(i,f,y){const I=typeof Zone>"u"?null:Zone.current,B=new es(i,xe=>{this.all.has(xe)&&this.queue.set(xe,I)},y);let K;this.all.add(B),B.notify();const oe=()=>{B.cleanup(),K?.(),this.all.delete(B),this.queue.delete(B)};return K=f?.onDestroy(oe),{destroy:oe}}flush(){if(0!==this.queue.size)for(const[i,f]of this.queue)this.queue.delete(i),f?f.run(()=>i.run()):i.run()}get isQueueEmpty(){return 0===this.queue.size}}return e.\u0275prov=St({token:e,providedIn:"root",factory:()=>new e}),e})();function dp(e,t){!t?.injector&&zm();const i=t?.injector??it(as),f=i.get(up),y=!0!==t?.manualCleanup?i.get(Wu):null;return f.create(e,y,!!t?.allowSignalWrites)}function tc(e,t,i){let f=i?e.styles:null,y=i?e.classes:null,I=0;if(null!==t)for(let B=0;B0){mp(e,1);const y=e[rn].components;null!==y&&gp(e,y,1)}}function gp(e,t,i){for(let f=0;f-1&&(Qc(t,f),El(i,f))}this._attachedToViewContainer=!1}kf(this._lView[rn],this._lView)}onDestroy(t){Ar(this._lView,t)}markForCheck(){il(this._cdRefInjectingView||this._lView)}detach(){this._lView[xn]&=-129}reattach(){this._lView[xn]|=128}detectChanges(){nc(this._lView[rn],this._lView,this.context)}checkNoChanges(){}attachToViewContainerRef(){if(this._appRef)throw new T(902,!1);this._attachedToViewContainer=!0}detachFromAppRef(){this._appRef=null,function hb(e,t){Ka(e,t,t[U],2,null,null)}(this._lView[rn],this._lView)}attachToAppRef(t){if(this._attachedToViewContainer)throw new T(902,!1);this._appRef=t}}class u1 extends ma{constructor(t){super(t),this._view=t}detectChanges(){const t=this._view;nc(t[rn],t,t[gi],!1)}checkNoChanges(){}get context(){return null}}class _p extends tl{constructor(t){super(),this.ngModule=t}resolveComponentFactory(t){const i=gn(t);return new pa(i,this.ngModule)}}function vp(e){const t=[];for(let i in e)e.hasOwnProperty(i)&&t.push({propName:e[i],templateName:i});return t}class h1{constructor(t,i){this.injector=t,this.parentInjector=i}get(t,i,f){f=Rt(f);const y=this.injector.get(t,Xl,f);return y!==Xl||i===Xl?y:this.parentInjector.get(t,i,f)}}class pa extends Ql{get inputs(){const t=this.componentDef,i=t.inputTransforms,f=vp(t.inputs);if(null!==i)for(const y of f)i.hasOwnProperty(y.propName)&&(y.transform=i[y.propName]);return f}get outputs(){return vp(this.componentDef.outputs)}constructor(t,i){super(),this.componentDef=t,this.ngModule=i,this.componentType=t.type,this.selector=function Pi(e){return e.map(li).join(",")}(t.selectors),this.ngContentSelectors=t.ngContentSelectors?t.ngContentSelectors:[],this.isBoundToModule=!!i}create(t,i,f,y){let I=(y=y||this.ngModule)instanceof Ps?y:y?.injector;I&&null!==this.componentDef.getStandaloneInjector&&(I=this.componentDef.getStandaloneInjector(I)||I);const B=I?new h1(t,I):t,K=B.get(Dm,null);if(null===K)throw new T(407,!1);const Ve={rendererFactory:K,sanitizer:B.get(Tm,null),effectManager:B.get(up,null)},lt=K.createRenderer(null,this.componentDef),Pt=this.componentDef.selectors[0][0]||"div",jt=f?function Oy(e,t,i,f){const I=f.get(Lm,!1)||i===Tn.ShadowDom,B=e.selectRootElement(t,I);return function Py(e){Jm(e)}(B),B}(lt,f,this.componentDef.encapsulation,B):Nl(lt,Pt,function d1(e){const t=e.toLowerCase();return"svg"===t?Co:"math"===t?Oo:null}(Pt)),On=this.componentDef.signals?4608:this.componentDef.onPush?576:528,Wn=Uu(0,null,null,1,0,null,null,null,null,null,null),cn=ql(null,Wn,null,On,null,null,Ve,lt,B,null,null);let hi,ki;No(cn);try{const Bi=this.componentDef;let Sr,Lc=null;Bi.findHostDirectiveDefs?(Sr=[],Lc=new Map,Bi.findHostDirectiveDefs(Bi,Sr,Lc),Sr.push(Bi)):Sr=[Bi];const Uw=function f1(e,t){const i=e[rn],f=ft;return e[f]=t,fa(i,f,2,"#host",null)}(cn,jt),Bw=function m1(e,t,i,f,y,I,B){const K=y[rn];!function p1(e,t,i,f){for(const y of e)t.mergedAttrs=$n(t.mergedAttrs,y.hostAttrs);null!==t.mergedAttrs&&(tc(t,t.mergedAttrs,!0),null!==i&&Hf(f,i,t))}(f,e,t,B);let oe=null;null!==t&&(oe=Cm(t,y[Ke]));const xe=I.rendererFactory.createRenderer(t,i);let Ve=16;i.signals?Ve=4096:i.onPush&&(Ve=64);const lt=ql(y,Xm(i),null,Ve,y[e.index],e,I,xe,null,null,oe);return K.firstCreatePass&&$u(K,e,f.length-1),ec(y,lt),y[e.index]=lt}(Uw,jt,Bi,Sr,cn,Ve,lt);ki=ht(Wn,ft),jt&&function _1(e,t,i,f){if(f)on(e,i,["ng-version",Im.full]);else{const{attrs:y,classes:I}=function Ct(e){const t=[],i=[];let f=1,y=2;for(;f0&&jf(e,i,I.join(" "))}}(lt,Bi,jt,f),void 0!==i&&function v1(e,t,i){const f=e.projection=[];for(let y=0;y=0;f--){const y=e[f];y.hostVars=t+=y.hostVars,y.hostAttrs=$n(y.hostAttrs,i=$n(i,y.hostAttrs))}}(f)}function ic(e){return e===Sn?{}:e===Mn?[]:e}function y1(e,t){const i=e.viewQuery;e.viewQuery=i?(f,y)=>{t(f,y),i(f,y)}:t}function C1(e,t){const i=e.contentQueries;e.contentQueries=i?(f,y,I)=>{t(f,y,I),i(f,y,I)}:t}function x1(e,t){const i=e.hostBindings;e.hostBindings=i?(f,y)=>{t(f,y),i(f,y)}:t}const M1=["providersResolver"],w1=["template","decls","consts","vars","onPush","ngContentSelectors","styles","encapsulation","schemas"];function xp(e){let i,t=Cp(e.type);i=Fi(e)?t.\u0275cmp:t.\u0275dir;const f=e;for(const y of M1)f[y]=i[y];if(Fi(i))for(const y of w1)f[y]=i[y]}function Mp(e){return t=>{t.findHostDirectiveDefs=wp,t.hostDirectives=(Array.isArray(e)?e:e()).map(i=>"function"==typeof i?{directive:M(i),inputs:Sn,outputs:Sn}:{directive:M(i.directive),inputs:Ep(i.inputs),outputs:Ep(i.outputs)})}}function wp(e,t,i){if(null!==e.hostDirectives)for(const f of e.hostDirectives){const y=pn(f.directive);E1(y.declaredInputs,f.inputs),wp(y,t,i),i.set(y,f),t.push(y)}}function Ep(e){if(void 0===e||0===e.length)return Sn;const t={};for(let i=0;i${t}`;case 8:return"\x3c!-- ng-container --\x3e";case 4:return"\x3c!-- container --\x3e";default:return`#node(${function S1(e){switch(e){case 4:return"view container";case 2:return"element";case 8:return"ng-container";case 32:return"icu";case 64:return"i18n";case 16:return"projection";case 1:return"text";default:return""}}(e.type)})`}}function ll(e,t="\u2026"){const i=e;switch(i.nodeType){case Node.ELEMENT_NODE:const f=i.tagName.toLowerCase(),y=function O1(e){const t=[];for(let i=0;i${t}`;case Node.TEXT_NODE:const I=i.textContent?ul(i.textContent):"";return"#text"+(I?`(${I})`:"");case Node.COMMENT_NODE:return`\x3c!-- ${ul(i.textContent??"")} --\x3e`;default:return`#node(${i.nodeType})`}}function ul(e,t=50){return e?(e=function P1(e){return e.replace(/\s+/gm,"")}(e)).length>t?`${e.substring(0,t-1)}\u2026`:e:""}const F1=new RegExp(`^(\\d+)*(${xu}|${Cu})*(.*)`);function ad(e){return e.index-ft}function ac(e,t,i,f){let y=null;const I=ad(f),B=e.data[Eu];if(B?.[I])y=function V1(e,t){const[i,...f]=function U1(e){const t=e.match(F1),[i,f,y,I]=t,B=f?parseInt(f,10):y,K=[];for(const[oe,xe,Ve]of I.matchAll(/(f|n)(\d*)/g)){const lt=parseInt(Ve,10)||1;K.push(xe,lt)}return[B,...K]}(e);let y;return y=i===Cu?t[Gt][yn]:i===xu?Lu(t[Gt][yn]):Oi(t[Number(i)+ft]),function $1(e,t){let i=e;for(let f=0;f0&&i[y-1]===f?i[y]=(i[y]||1)+1:i.push(f,"")}return i.join("")}(i,f)}function H1(e,t){const i=e.parent;let f,y,I;null!==i&&3&i.type?(f=i.index,y=Oi(t[f]),I=E(f-ft)):(f=I=Cu,y=t[Gt][yn]);let B=Oi(t[e.index]);if(12&e.type){const oe=Ga(t,e);oe&&(B=oe)}let K=kp(y,B,I);if(null===K&&y!==B&&(K=kp(y.ownerDocument.body,B,xu),null===K))throw function A1(e,t){const f=`${function sd(e,t,i){const f=" ";let y="";t.prev?(y+=" \u2026\n",y+=f+od(t.prev)+"\n"):t.type&&12&t.type&&(y+=" \u2026\n"),i?(y+=f+od(t)+"\n",y+=f+`\x3c!-- container --\x3e ${rd}\n`):y+=f+od(t)+` ${rd}\n`,y+=" \u2026\n";const I=t.type?Jc(e[rn],t,e):null;return I&&(y=ll(I,"\n"+y)),y}(e,t,!1)}\n\n`,y=function cl(e){return`To fix this problem:\n * check ${e?`the "${e}"`:"corresponding"} component for hydration-related issues\n * check to see if your template has valid HTML structure\n * or skip hydration by adding the \`ngSkipHydration\` attribute to its host node in a template\n\n`}();throw new T(-502,"During serialization, Angular was unable to find an element in the DOM:\n\n"+f+y)}(t,e);return K}function Lp(e,t,i,f,y,I,B,K){const oe=dn(),xe=yi(),Ve=e+ft,lt=xe.firstCreatePass?function z1(e,t,i,f,y,I,B,K,oe){const xe=t.consts,Ve=fa(t,e,4,B||null,pi(xe,K));Bu(t,i,Ve,pi(xe,oe)),ws(t,Ve);const lt=Ve.tView=Uu(2,Ve,f,y,I,t.directiveRegistry,t.pipeRegistry,null,t.schemas,xe,null);return null!==t.queries&&(t.queries.template(t,Ve),lt.queries=t.queries.embeddedTView(Ve)),Ve}(Ve,xe,oe,t,i,f,y,I,B):xe.data[Ve];Ur(lt,!1);const Pt=Rp(xe,oe,lt,e);ho()&&Bl(xe,oe,Pt,lt),Dr(Pt,oe),ec(oe,oe[Ve]=rp(Pt,oe,Pt,lt)),ai(lt)&&Fu(xe,oe,lt),null!=B&&Nu(oe,lt,K)}let Rp=Op;function Op(e,t,i,f){return Er(!0),t[U].createComment("")}function W1(e,t,i,f){const y=t[ur],I=!y||mr()||Zl(y,f);if(Er(I),I)return Op(0,t);const B=y.data[wu]?.[f]??null;null!==B&&null!==i.tView&&null===i.tView.ssrId&&(i.tView.ssrId=B);const K=ac(y,e,t,i);return Su(y,f,K),lc(Au(y,f),K)}function Pp(e,t,i,f){i>=e.data.length&&(e.data[i]=null,e.blueprint[i]=null),t[i]=f}function Fp(e){return Ht(function Ws(){return Kn.lFrame.contextLView}(),ft+e)}function cd(e,t,i){const f=dn();return Tr(f,Mo(),t)&&Xr(yi(),Ln(),f,e,t,f[U],i,!1),cd}function ud(e,t,i,f,y){const B=y?"class":"style";Hu(e,i,t.inputs[B],B,f)}function cc(e,t,i,f){const y=dn(),I=yi(),B=ft+e,K=y[U],oe=I.firstCreatePass?function K1(e,t,i,f,y,I){const B=t.consts,oe=fa(t,e,2,f,pi(B,y));return Bu(t,i,oe,pi(B,I)),null!==oe.attrs&&tc(oe,oe.attrs,!1),null!==oe.mergedAttrs&&tc(oe,oe.mergedAttrs,!0),null!==t.queries&&t.queries.elementStart(t,oe),oe}(B,I,y,t,i,f):I.data[B],xe=Np(I,y,oe,K,t,e);y[B]=xe;const Ve=ai(oe);return Ur(oe,!0),Hf(K,xe,oe),32!=(32&oe.flags)&&ho()&&Bl(I,y,xe,oe),0===function lr(){return Kn.lFrame.elementDepthCount}()&&Dr(xe,y),function Nr(){Kn.lFrame.elementDepthCount++}(),Ve&&(Fu(I,y,oe),Pu(I,oe,y)),null!==f&&Nu(y,oe),cc}function uc(){let e=cr();ys()?Cs():(e=e.parent,Ur(e,!1));const t=e;(function Ra(e){return Kn.skipHydrationRootTNode===e})(t)&&function zs(){Kn.skipHydrationRootTNode=null}(),function js(){Kn.lFrame.elementDepthCount--}();const i=yi();return i.firstCreatePass&&(ws(i,e),ni(e)&&i.queries.elementEnd(e)),null!=t.classesWithoutHost&&function Vt(e){return 0!=(8&e.flags)}(t)&&ud(i,t,dn(),t.classesWithoutHost,!0),null!=t.stylesWithoutHost&&function Hn(e){return 0!=(16&e.flags)}(t)&&ud(i,t,dn(),t.stylesWithoutHost,!1),uc}function dd(e,t,i,f){return cc(e,t,i,f),uc(),dd}let Np=(e,t,i,f,y,I)=>(Er(!0),Nl(f,y,Eo()));function Y1(e,t,i,f,y,I){const B=t[ur],K=!B||mr()||Zl(B,I);if(Er(K),K)return Nl(f,y,Eo());const oe=ac(B,e,t,i);return Mm(B,I)&&Su(B,I,oe.nextSibling),B&&(pf(i)||gf(oe))&&Xn(i)&&(function gs(e){Kn.skipHydrationRootTNode=e}(i),$f(oe)),oe}function dc(e,t,i){const f=dn(),y=yi(),I=e+ft,B=y.firstCreatePass?function Q1(e,t,i,f,y){const I=t.consts,B=pi(I,f),K=fa(t,e,8,"ng-container",B);return null!==B&&tc(K,B,!0),Bu(t,i,K,pi(I,y)),null!==t.queries&&t.queries.elementStart(t,K),K}(I,y,f,t,i):y.data[I];Ur(B,!0);const K=Up(y,f,B,e);return f[I]=K,ho()&&Bl(y,f,K,B),Dr(K,f),ai(B)&&(Fu(y,f,B),Pu(y,B,f)),null!=i&&Nu(f,B),dc}function hc(){let e=cr();const t=yi();return ys()?Cs():(e=e.parent,Ur(e,!1)),t.firstCreatePass&&(ws(t,e),ni(e)&&t.queries.elementEnd(e)),hc}function hd(e,t,i){return dc(e,t,i),hc(),hd}let Up=(e,t,i,f)=>(Er(!0),Zc(t[U],""));function X1(e,t,i,f){let y;const I=t[ur],B=!I||mr();if(Er(B),B)return Zc(t[U],"");const K=ac(I,e,t,i),oe=function fy(e,t){const i=e.data;let f=i[Mu]?.[t]??null;return null===f&&i[qa]?.[t]&&(f=Au(e,t)),f}(I,f);return Su(I,f,K),y=lc(oe,K),y}function Bp(){return dn()}function fd(e){return!!e&&"function"==typeof e.then}function $p(e){return!!e&&"function"==typeof e.subscribe}function md(e,t,i,f){const y=dn(),I=yi(),B=cr();return Vp(I,y,y[U],B,e,t,f),md}function pd(e,t){const i=cr(),f=dn(),y=yi();return Vp(y,f,lp(Fo(y.data),i,f),i,e,t),pd}function Vp(e,t,i,f,y,I,B){const K=ai(f),xe=e.firstCreatePass&&ap(e),Ve=t[gi],lt=sp(t);let Pt=!0;if(3&f.type||B){const vn=le(f,t),On=B?B(vn):vn,Wn=lt.length,cn=B?ki=>B(Oi(ki[f.index])):f.index;let hi=null;if(!B&&K&&(hi=function q1(e,t,i,f){const y=e.cleanup;if(null!=y)for(let I=0;Ioe?K[oe]:null}"string"==typeof B&&(I+=2)}return null}(e,t,y,f.index)),null!==hi)(hi.__ngLastListenerFn__||hi).__ngNextListenerFn__=I,hi.__ngLastListenerFn__=I,Pt=!1;else{I=Hp(f,t,Ve,I,!1);const ki=i.listen(On,y,I);lt.push(I,ki),xe&&xe.push(y,cn,Wn,Wn+1)}}else I=Hp(f,t,Ve,I,!1);const jt=f.outputs;let sn;if(Pt&&null!==jt&&(sn=jt[y])){const vn=sn.length;if(vn)for(let On=0;On-1?Zt(e.index,t):t);let oe=jp(t,i,f,B),xe=I.__ngNextListenerFn__;for(;xe;)oe=jp(t,i,xe,B)&&oe,xe=xe.__ngNextListenerFn__;return y&&!1===oe&&B.preventDefault(),oe}}function zp(e=1){return function Qe(e){return(Kn.lFrame.contextLView=function et(e,t){for(;e>0;)t=t[Je],e--;return t}(e,Kn.lFrame.contextLView))[gi]}(e)}function eC(e,t){let i=null;const f=function Yn(e){const t=e.attrs;if(null!=t){const i=t.indexOf(5);if(!(1&i))return t[i+1]}return null}(e);for(let y=0;y>17&32767}function Ed(e){return 2|e}function Ns(e){return(131068&e)>>2}function Dd(e,t){return-131069&e|t<<2}function Td(e){return 1|e}function Kp(e,t,i,f,y){const I=e[i+1],B=null===t;let K=f?ls(I):Ns(I),oe=!1;for(;0!==K&&(!1===oe||B);){const Ve=e[K+1];sC(e[K],t)&&(oe=!0,e[K+1]=f?Td(Ve):Ed(Ve)),K=f?ls(Ve):Ns(Ve)}oe&&(e[i+1]=f?Ed(I):Td(I))}function sC(e,t){return null===e||null==t||(Array.isArray(e)?e[1]:e)===t||!(!Array.isArray(e)||"string"!=typeof t)&&ta(e,t)>=0}const gr={textEnd:0,key:0,keyEnd:0,value:0,valueEnd:0};function Yp(e){return e.substring(gr.key,gr.keyEnd)}function aC(e){return e.substring(gr.value,gr.valueEnd)}function Zp(e,t){const i=gr.textEnd;return i===t?-1:(t=gr.keyEnd=function uC(e,t,i){for(;t32;)t++;return t}(e,gr.key=t,i),Ea(e,t,i))}function Qp(e,t){const i=gr.textEnd;let f=gr.key=Ea(e,t,i);return i===f?-1:(f=gr.keyEnd=function dC(e,t,i){let f;for(;t=65&&(-33&f)<=90||f>=48&&f<=57);)t++;return t}(e,f,i),f=Jp(e,f,i),f=gr.value=Ea(e,f,i),f=gr.valueEnd=function hC(e,t,i){let f=-1,y=-1,I=-1,B=t,K=B;for(;B32&&(K=B),I=y,y=f,f=-33&oe}return K}(e,f,i),Jp(e,f,i))}function Xp(e){gr.key=0,gr.keyEnd=0,gr.value=0,gr.valueEnd=0,gr.textEnd=e.length}function Ea(e,t,i){for(;t=0;i=Qp(t,i))r0(e,Yp(t),aC(t))}function e0(e){po(bC,So,e,!0)}function So(e,t){for(let i=function lC(e){return Xp(e),Zp(e,Ea(e,0,gr.textEnd))}(t);i>=0;i=Zp(t,i))Qr(e,Yp(t),!0)}function mo(e,t,i,f){const y=dn(),I=yi(),B=Zr(2);I.firstUpdatePass&&n0(I,e,B,f),t!==fi&&Tr(y,B,t)&&o0(I,I.data[Nt()],y,y[U],e,y[B+1]=function CC(e,t){return null==e||""===e||("string"==typeof t?e+=t:"object"==typeof e&&(e=u(Bo(e)))),e}(t,i),f,B)}function po(e,t,i,f){const y=yi(),I=Zr(2);y.firstUpdatePass&&n0(y,null,I,f);const B=dn();if(i!==fi&&Tr(B,I,i)){const K=y.data[Nt()];if(a0(K,f)&&!t0(y,I)){let oe=f?K.classesWithoutHost:K.stylesWithoutHost;null!==oe&&(i=h(oe,i||"")),ud(y,K,B,i,f)}else!function yC(e,t,i,f,y,I,B,K){y===fi&&(y=Mn);let oe=0,xe=0,Ve=0=e.expandoStartIndex}function n0(e,t,i,f){const y=e.data;if(null===y[i+1]){const I=y[Nt()],B=t0(e,i);a0(I,f)&&null===t&&!B&&(t=!1),t=function mC(e,t,i,f){const y=Fo(e);let I=f?t.residualClasses:t.residualStyles;if(null===y)0===(f?t.classBindings:t.styleBindings)&&(i=dl(i=Ad(null,e,t,i,f),t.attrs,f),I=null);else{const B=t.directiveStylingLast;if(-1===B||e[B]!==y)if(i=Ad(y,e,t,i,f),null===I){let oe=function pC(e,t,i){const f=i?t.classBindings:t.styleBindings;if(0!==Ns(f))return e[ls(f)]}(e,t,f);void 0!==oe&&Array.isArray(oe)&&(oe=Ad(null,e,t,oe[1],f),oe=dl(oe,t.attrs,f),function gC(e,t,i,f){e[ls(i?t.classBindings:t.styleBindings)]=f}(e,t,f,oe))}else I=function _C(e,t,i){let f;const y=t.directiveEnd;for(let I=1+t.directiveStylingLast;I0)&&(xe=!0)):Ve=i,y)if(0!==oe){const Pt=ls(e[K+1]);e[f+1]=mc(Pt,K),0!==Pt&&(e[Pt+1]=Dd(e[Pt+1],f)),e[K+1]=function nC(e,t){return 131071&e|t<<17}(e[K+1],f)}else e[f+1]=mc(K,0),0!==K&&(e[K+1]=Dd(e[K+1],f)),K=f;else e[f+1]=mc(oe,0),0===K?K=f:e[oe+1]=Dd(e[oe+1],f),oe=f;xe&&(e[f+1]=Ed(e[f+1])),Kp(e,Ve,f,!0),Kp(e,Ve,f,!1),function oC(e,t,i,f,y){const I=y?e.residualClasses:e.residualStyles;null!=I&&"string"==typeof t&&ta(I,t)>=0&&(i[f+1]=Td(i[f+1]))}(t,Ve,e,f,I),B=mc(K,oe),I?t.classBindings=B:t.styleBindings=B}(y,I,t,i,B,f)}}function Ad(e,t,i,f,y){let I=null;const B=i.directiveEnd;let K=i.directiveStylingLast;for(-1===K?K=i.directiveStart:K++;K0;){const oe=e[y],xe=Array.isArray(oe),Ve=xe?oe[1]:oe,lt=null===Ve;let Pt=i[y+1];Pt===fi&&(Pt=lt?Mn:void 0);let jt=lt?Uc(Pt,f):Ve===f?Pt:void 0;if(xe&&!pc(jt)&&(jt=Uc(oe,f)),pc(jt)&&(K=jt,B))return K;const sn=e[y+1];y=B?ls(sn):Ns(sn)}if(null!==t){let oe=I?t.residualClasses:t.residualStyles;null!=oe&&(K=Uc(oe,f))}return K}function pc(e){return void 0!==e}function a0(e,t){return 0!=(e.flags&(t?8:16))}function l0(e,t=""){const i=dn(),f=yi(),y=e+ft,I=f.firstCreatePass?fa(f,y,1,t,null):f.data[y],B=c0(f,i,I,t,e);i[y]=B,ho()&&Bl(f,i,B,I),Ur(I,!1)}let c0=(e,t,i,f,y)=>(Er(!0),Fl(t[U],f));function xC(e,t,i,f,y){const I=t[ur],B=!I||mr()||Zl(I,y);return Er(B),B?Fl(t[U],f):ac(I,e,t,i)}function kd(e){return gc("",e,""),kd}function gc(e,t,i){const f=dn(),y=_a(f,e,t,i);return y!==fi&&jo(f,Nt(),y),gc}function Ld(e,t,i,f,y){const I=dn(),B=va(I,e,t,i,f,y);return B!==fi&&jo(I,Nt(),B),Ld}function Rd(e,t,i,f,y,I,B){const K=dn(),oe=ba(K,e,t,i,f,y,I,B);return oe!==fi&&jo(K,Nt(),oe),Rd}function Od(e,t,i,f,y,I,B,K,oe){const xe=dn(),Ve=ya(xe,e,t,i,f,y,I,B,K,oe);return Ve!==fi&&jo(xe,Nt(),Ve),Od}function Pd(e,t,i,f,y,I,B,K,oe,xe,Ve){const lt=dn(),Pt=Ca(lt,e,t,i,f,y,I,B,K,oe,xe,Ve);return Pt!==fi&&jo(lt,Nt(),Pt),Pd}function Fd(e,t,i,f,y,I,B,K,oe,xe,Ve,lt,Pt){const jt=dn(),sn=xa(jt,e,t,i,f,y,I,B,K,oe,xe,Ve,lt,Pt);return sn!==fi&&jo(jt,Nt(),sn),Fd}function Nd(e,t,i,f,y,I,B,K,oe,xe,Ve,lt,Pt,jt,sn){const vn=dn(),On=Ma(vn,e,t,i,f,y,I,B,K,oe,xe,Ve,lt,Pt,jt,sn);return On!==fi&&jo(vn,Nt(),On),Nd}function Ud(e,t,i,f,y,I,B,K,oe,xe,Ve,lt,Pt,jt,sn,vn,On){const Wn=dn(),cn=wa(Wn,e,t,i,f,y,I,B,K,oe,xe,Ve,lt,Pt,jt,sn,vn,On);return cn!==fi&&jo(Wn,Nt(),cn),Ud}function Bd(e){const t=dn(),i=ga(t,e);return i!==fi&&jo(t,Nt(),i),Bd}function u0(e,t,i){po(Qr,So,_a(dn(),e,t,i),!0)}function d0(e,t,i,f,y){po(Qr,So,va(dn(),e,t,i,f,y),!0)}function h0(e,t,i,f,y,I,B){po(Qr,So,ba(dn(),e,t,i,f,y,I,B),!0)}function f0(e,t,i,f,y,I,B,K,oe){po(Qr,So,ya(dn(),e,t,i,f,y,I,B,K,oe),!0)}function m0(e,t,i,f,y,I,B,K,oe,xe,Ve){po(Qr,So,Ca(dn(),e,t,i,f,y,I,B,K,oe,xe,Ve),!0)}function p0(e,t,i,f,y,I,B,K,oe,xe,Ve,lt,Pt){po(Qr,So,xa(dn(),e,t,i,f,y,I,B,K,oe,xe,Ve,lt,Pt),!0)}function g0(e,t,i,f,y,I,B,K,oe,xe,Ve,lt,Pt,jt,sn){po(Qr,So,Ma(dn(),e,t,i,f,y,I,B,K,oe,xe,Ve,lt,Pt,jt,sn),!0)}function _0(e,t,i,f,y,I,B,K,oe,xe,Ve,lt,Pt,jt,sn,vn,On){po(Qr,So,wa(dn(),e,t,i,f,y,I,B,K,oe,xe,Ve,lt,Pt,jt,sn,vn,On),!0)}function v0(e){po(Qr,So,ga(dn(),e),!0)}function b0(e,t,i){fo(_a(dn(),e,t,i))}function y0(e,t,i,f,y){fo(va(dn(),e,t,i,f,y))}function C0(e,t,i,f,y,I,B){fo(ba(dn(),e,t,i,f,y,I,B))}function x0(e,t,i,f,y,I,B,K,oe){fo(ya(dn(),e,t,i,f,y,I,B,K,oe))}function M0(e,t,i,f,y,I,B,K,oe,xe,Ve){fo(Ca(dn(),e,t,i,f,y,I,B,K,oe,xe,Ve))}function w0(e,t,i,f,y,I,B,K,oe,xe,Ve,lt,Pt){fo(xa(dn(),e,t,i,f,y,I,B,K,oe,xe,Ve,lt,Pt))}function E0(e,t,i,f,y,I,B,K,oe,xe,Ve,lt,Pt,jt,sn){fo(Ma(dn(),e,t,i,f,y,I,B,K,oe,xe,Ve,lt,Pt,jt,sn))}function D0(e,t,i,f,y,I,B,K,oe,xe,Ve,lt,Pt,jt,sn,vn,On){fo(wa(dn(),e,t,i,f,y,I,B,K,oe,xe,Ve,lt,Pt,jt,sn,vn,On))}function T0(e){fo(ga(dn(),e))}function $d(e,t,i,f,y){return mo(e,_a(dn(),t,i,f),y,!1),$d}function Vd(e,t,i,f,y,I,B){return mo(e,va(dn(),t,i,f,y,I),B,!1),Vd}function jd(e,t,i,f,y,I,B,K,oe){return mo(e,ba(dn(),t,i,f,y,I,B,K),oe,!1),jd}function Hd(e,t,i,f,y,I,B,K,oe,xe,Ve){return mo(e,ya(dn(),t,i,f,y,I,B,K,oe,xe),Ve,!1),Hd}function zd(e,t,i,f,y,I,B,K,oe,xe,Ve,lt,Pt){return mo(e,Ca(dn(),t,i,f,y,I,B,K,oe,xe,Ve,lt),Pt,!1),zd}function Wd(e,t,i,f,y,I,B,K,oe,xe,Ve,lt,Pt,jt,sn){return mo(e,xa(dn(),t,i,f,y,I,B,K,oe,xe,Ve,lt,Pt,jt),sn,!1),Wd}function Gd(e,t,i,f,y,I,B,K,oe,xe,Ve,lt,Pt,jt,sn,vn,On){return mo(e,Ma(dn(),t,i,f,y,I,B,K,oe,xe,Ve,lt,Pt,jt,sn,vn),On,!1),Gd}function Kd(e,t,i,f,y,I,B,K,oe,xe,Ve,lt,Pt,jt,sn,vn,On,Wn,cn){return mo(e,wa(dn(),t,i,f,y,I,B,K,oe,xe,Ve,lt,Pt,jt,sn,vn,On,Wn),cn,!1),Kd}function Yd(e,t,i){return mo(e,ga(dn(),t),i,!1),Yd}function Zd(e,t,i){const f=dn();return Tr(f,Mo(),t)&&Xr(yi(),Ln(),f,e,t,f[U],i,!0),Zd}function Qd(e,t,i){const f=dn();if(Tr(f,Mo(),t)){const I=yi(),B=Ln();Xr(I,B,f,e,t,lp(Fo(I.data),B,f),i,!0)}return Qd}const Us=void 0;var EC=["en",[["a","p"],["AM","PM"],Us],[["AM","PM"],Us,Us],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],Us,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],Us,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",Us,"{1} 'at' {0}",Us],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},"ltr",function wC(e){const i=Math.floor(Math.abs(e)),f=e.toString().replace(/^[^.]*\.?/,"").length;return 1===i&&0===f?1:5}];let Da={};function DC(e,t,i){"string"!=typeof t&&(i=t,t=e[Ta.LocaleId]),t=t.toLowerCase().replace(/_/g,"-"),Da[t]=e,i&&(Da[t][Ta.ExtraData]=i)}function Xd(e){const t=function IC(e){return e.toLowerCase().replace(/_/g,"-")}(e);let i=I0(t);if(i)return i;const f=t.split("-")[0];if(i=I0(f),i)return i;if("en"===f)return EC;throw new T(701,!1)}function TC(e){return Xd(e)[Ta.CurrencyCode]||null}function S0(e){return Xd(e)[Ta.PluralCase]}function I0(e){return e in Da||(Da[e]=ze.ng&&ze.ng.common&&ze.ng.common.locales&&ze.ng.common.locales[e]),Da[e]}function SC(){Da={}}var Ta=function(e){return e[e.LocaleId=0]="LocaleId",e[e.DayPeriodsFormat=1]="DayPeriodsFormat",e[e.DayPeriodsStandalone=2]="DayPeriodsStandalone",e[e.DaysFormat=3]="DaysFormat",e[e.DaysStandalone=4]="DaysStandalone",e[e.MonthsFormat=5]="MonthsFormat",e[e.MonthsStandalone=6]="MonthsStandalone",e[e.Eras=7]="Eras",e[e.FirstDayOfWeek=8]="FirstDayOfWeek",e[e.WeekendRange=9]="WeekendRange",e[e.DateFormat=10]="DateFormat",e[e.TimeFormat=11]="TimeFormat",e[e.DateTimeFormat=12]="DateTimeFormat",e[e.NumberSymbols=13]="NumberSymbols",e[e.NumberFormats=14]="NumberFormats",e[e.CurrencyCode=15]="CurrencyCode",e[e.CurrencySymbol=16]="CurrencySymbol",e[e.CurrencyName=17]="CurrencyName",e[e.Currencies=18]="Currencies",e[e.Directionality=19]="Directionality",e[e.PluralCase=20]="PluralCase",e[e.ExtraData=21]="ExtraData",e}(Ta||{});const AC=["zero","one","two","few","many"],Bs="en-US",_c={marker:"element"},vc={marker:"ICU"};var $r=function(e){return e[e.SHIFT=2]="SHIFT",e[e.APPEND_EAGERLY=1]="APPEND_EAGERLY",e[e.COMMENT=2]="COMMENT",e}($r||{});let A0=Bs;function Jd(e){(function Be(e,t){null==e&&$e(t,e,null,"!=")})(e,"Expected localeId to be defined"),"string"==typeof e&&(A0=e.toLowerCase().replace(/_/g,"-"))}function k0(e,t,i){const f=t.insertBeforeIndex,y=Array.isArray(f)?f[0]:f;return null===y?Ff(e,0,i):Oi(i[y])}function L0(e,t,i,f,y){const I=t.insertBeforeIndex;if(Array.isArray(I)){let B=f,K=null;if(3&t.type||(K=B,B=y),null!==B&&-1===t.componentOffset)for(let oe=1;oe1)for(let i=e.length-2;i>=0;i--){const f=e[i];O0(f)||OC(f,t)&&null===PC(f)&&FC(f,t.index)}}function O0(e){return!(64&e.type)}function OC(e,t){return O0(t)||e.index>t.index}function PC(e){const t=e.insertBeforeIndex;return Array.isArray(t)?t[0]:t}function FC(e,t){const i=e.insertBeforeIndex;Array.isArray(i)?i[0]=t:(Uf(k0,L0),e.insertBeforeIndex=t)}function hl(e,t){const i=e.data[t];return null===i||"string"==typeof i?null:i.hasOwnProperty("currentCaseLViewIndex")?i:i.value}function BC(e,t,i){const f=Ou(e,i,64,null,null);return R0(t,f),f}function bc(e,t){const i=t[e.currentCaseLViewIndex];return null===i?i:i<0?~i:i}function P0(e){return e>>>17}function F0(e){return(131070&e)>>>1}let fl=0,ml=0;function U0(e,t,i,f){const y=i[U];let B,I=null;for(let K=0;K>>1,i),null,null,jt,sn,null)}else switch(oe){case vc:const xe=t[++K],Ve=t[++K];null===i[Ve]&&Dr(i[Ve]=Zc(y,xe),i);break;case _c:const lt=t[++K],Pt=t[++K];null===i[Pt]&&Dr(i[Pt]=Nl(y,lt,null),i)}}}function B0(e,t,i,f,y){for(let I=0;I>>2;switch(3&Ve){case 1:const Pt=i[++xe],jt=i[++xe],sn=e.data[lt];"string"==typeof sn?Vu(t[U],t[lt],null,sn,Pt,oe,jt):Xr(e,sn,t,Pt,oe,t[U],jt,!1);break;case 0:const vn=t[lt];null!==vn&&If(t[U],vn,oe);break;case 2:zC(e,hl(e,lt),t,oe);break;case 3:$0(e,hl(e,lt),f,t)}}}}else{const oe=i[I+1];if(oe>0&&3==(3&oe)){const Ve=hl(e,oe>>>2);t[Ve.currentCaseLViewIndex]<0&&$0(e,Ve,f,t)}}I+=K}}function $0(e,t,i,f){let y=f[t.currentCaseLViewIndex];if(null!==y){let I=fl;y<0&&(y=f[t.currentCaseLViewIndex]=~y,I=-1),B0(e,f,t.update[y],i,I)}}function zC(e,t,i,f){const y=function WC(e,t){let i=e.cases.indexOf(t);if(-1===i)switch(e.type){case 1:{const f=function kC(e,t){const i=S0(t)(parseInt(e,10)),f=AC[i];return void 0!==f?f:"other"}(t,function RC(){return A0}());i=e.cases.indexOf(f),-1===i&&"other"!==f&&(i=e.cases.indexOf("other"));break}case 0:i=e.cases.indexOf("other")}return-1===i?null:i}(t,f);if(bc(t,i)!==y&&(V0(e,t,i),i[t.currentCaseLViewIndex]=null===y?null:~y,null!==y)){const B=i[t.anchorIdx];B&&U0(e,t.create[y],i,B)}}function V0(e,t,i){let f=bc(t,i);if(null!==f){const y=t.remove[f];for(let I=0;I0){const K=Ie(B,i);null!==K&&$l(i[U],K)}else V0(e,hl(e,~B),i)}}}function GC(){const e=[];let i,f,t=-1;function I(K,oe){t=0;const xe=bc(K,oe);f=null!==xe?K.remove[xe]:Mn}function B(){if(t0?i[K]:(e.push(t,f),I(i[rn].data[~K],i),B())}return 0===e.length?null:(f=e.pop(),t=e.pop(),B())}return function y(K,oe){for(i=oe;e.length;)e.pop();return I(K.value,oe),B}}const yc=/\ufffd(\d+):?\d*\ufffd/gi,KC=/({\s*\ufffd\d+:?\d*\ufffd\s*,\s*\S{6}\s*,[\s\S]*})/gi,YC=/\ufffd(\d+)\ufffd/,H0=/^\s*(\ufffd\d+:?\d*\ufffd)\s*,\s*(select|plural)\s*,/,pl="\ufffd",ZC=/\ufffd\/?\*(\d+:\d+)\ufffd/gi,QC=/\ufffd(\/?[#*]\d+):?\d*\ufffd/gi,XC=/\uE500/g;function z0(e,t,i,f,y,I,B){const K=ol(e,f,1,null);let oe=K<<$r.SHIFT,xe=xo();t===xe&&(xe=null),null===xe&&(oe|=$r.APPEND_EAGERLY),B&&(oe|=$r.COMMENT,function ab(e){void 0===Kc&&(Kc=e())}(GC)),y.push(oe,null===I?"":I);const Ve=Ou(e,K,B?32:1,null===I?"":I,null);R0(i,Ve);const lt=Ve.index;return Ur(Ve,!1),null!==xe&&t!==xe&&function UC(e,t){let i=e.insertBeforeIndex;null===i?(Uf(k0,L0),i=e.insertBeforeIndex=[null,t]):(function ne(e,t,i){e!=t&&$e(i,e,t,"==")}(Array.isArray(i),!0,"Expecting array here"),i.push(t))}(xe,lt),Ve}function ex(e,t,i,f,y,I,B){const K=B.match(yc),oe=z0(e,t,i,I,f,K?null:B,!1);K&&gl(y,B,oe.index,null,0,null)}function gl(e,t,i,f,y,I){const B=e.length,K=B+1;e.push(null,null);const oe=B+2,xe=t.split(yc);let Ve=0;for(let lt=0;lti.length&&i.push(oe)}return{type:f,mainBinding:y,cases:t,values:i}}function qd(e){if(!e)return[];let t=0;const i=[],f=[],y=/[{}]/g;let I;for(y.lastIndex=0;I=y.exec(e);){const K=I.index;if("}"==I[0]){if(i.pop(),0==i.length){const oe=e.substring(t,K);H0.test(oe)?f.push(ox(oe)):f.push(oe),t=K+1}}else{if(0==i.length){const oe=e.substring(t,K);f.push(oe),t=K+1}i.push("{")}}const B=e.substring(t);return f.push(B),f}function sx(e,t,i,f,y,I,B,K){const oe=[],xe=[],Ve=[];t.cases.push(I),t.create.push(oe),t.remove.push(xe),t.update.push(Ve);const Pt=Zf(Ya()).getInertBodyElement(B),jt=au(Pt)||Pt;return jt?Y0(e,t,i,f,oe,xe,Ve,jt,y,K,0):0}function Y0(e,t,i,f,y,I,B,K,oe,xe,Ve){let lt=0,Pt=K.firstChild;for(;Pt;){const jt=ol(e,i,1,null);switch(Pt.nodeType){case Node.ELEMENT_NODE:const sn=Pt,vn=sn.tagName.toLowerCase();if(ou.hasOwnProperty(vn)){eh(y,_c,vn,oe,jt),e.data[jt]=vn;const hi=sn.attributes;for(let ki=0;ki>>$r.SHIFT;let lt=e[Ve];null===lt&&(lt=e[Ve]=(B&$r.COMMENT)===$r.COMMENT?y.createComment(K):Fl(y,K)),xe&&null!==i&&ks(y,i,lt,f,!1)}})(y,oe.create,Ve,K&&8&K.type?y[K.index]:null),Ks(!0)}function nh(){Ks(!1)}function X0(e,t,i){th(e,t,i),nh()}function J0(e,t){const i=yi(),f=pi(i.consts,t);!function tx(e,t,i){const y=cr().index,I=[];if(e.firstCreatePass&&null===e.data[t]){for(let B=0;B0){const f=e.data[i];B0(e,t,Array.isArray(f)?f:f.update,Yr()-ml-1,fl)}fl=0,ml=0}(yi(),dn(),e+ft)}function eg(e,t={}){return function vx(e,t={}){let i=e;if(dx.test(e)){const f={},y=[Q0];i=i.replace(hx,(I,B,K)=>{const oe=B||K,xe=f[oe]||[];if(xe.length||(oe.split("|").forEach(vn=>{const On=vn.match(_x),Wn=On?parseInt(On[1],10):Q0,cn=gx.test(vn);xe.push([Wn,cn,vn])}),f[oe]=xe),!xe.length)throw new Error(`i18n postprocess: unmatched placeholder - ${oe}`);const Ve=y[y.length-1];let lt=0;for(let vn=0;vnt.hasOwnProperty(I)?`${y}${t[I]}${oe}`:f),i=i.replace(mx,(f,y)=>t.hasOwnProperty(y)?t[y]:f),i=i.replace(px,(f,y)=>{if(t.hasOwnProperty(y)){const I=t[y];if(!I.length)throw new Error(`i18n postprocess: unmatched ICU - ${f} with key: ${y}`);return I.shift()}return f})),i}(e,t)}function rh(e,t,i,f,y){if(e=M(e),Array.isArray(e))for(let I=0;I>20;if(Os(e)||!e.multi){const jt=new H(oe,y,ha),sn=sh(K,t,y?Ve:Ve+Pt,lt);-1===sn?(Di(ei(xe,B),I,K),oh(I,e,t.length),t.push(K),xe.directiveStart++,xe.directiveEnd++,y&&(xe.providerIndexes+=1048576),i.push(jt),B.push(jt)):(i[sn]=jt,B[sn]=jt)}else{const jt=sh(K,t,Ve+Pt,lt),sn=sh(K,t,Ve,Ve+Pt),On=sn>=0&&i[sn];if(y&&!On||!y&&!(jt>=0&&i[jt])){Di(ei(xe,B),I,K);const Wn=function xx(e,t,i,f,y){const I=new H(e,i,ha);return I.multi=[],I.index=t,I.componentProviders=0,tg(I,y,f&&!i),I}(y?Cx:yx,i.length,y,f,oe);!y&&On&&(i[sn].providerFactory=Wn),oh(I,e,t.length,0),t.push(K),xe.directiveStart++,xe.directiveEnd++,y&&(xe.providerIndexes+=1048576),i.push(Wn),B.push(Wn)}else oh(I,e,jt>-1?jt:sn,tg(i[y?sn:jt],oe,!y&&f));!y&&f&&On&&i[sn].componentProviders++}}}function oh(e,t,i,f){const y=Os(t),I=function Yb(e){return!!e.useClass}(t);if(y||I){const oe=(I?M(t.useClass):t).prototype.ngOnDestroy;if(oe){const xe=e.destroyHooks||(e.destroyHooks=[]);if(!y&&t.multi){const Ve=xe.indexOf(i);-1===Ve?xe.push(i,[f,oe]):xe[Ve+1].push(f,oe)}else xe.push(i,oe)}}}function tg(e,t,i){return i&&e.componentProviders++,e.multi.push(t)-1}function sh(e,t,i,f){for(let y=i;y{i.providersResolver=(f,y)=>function bx(e,t,i){const f=yi();if(f.firstCreatePass){const y=Fi(e);rh(i,f.data,f.blueprint,y,!0),rh(t,f.data,f.blueprint,y,!1)}}(f,y?y(e):e,t)}}class Sa{}class ig{}function rg(e,t){return new Cc(e,t??null,[])}const Mx=rg;class Cc extends Sa{constructor(t,i,f){super(),this._parent=i,this._bootstrapComponents=[],this.destroyCbs=[],this.componentFactoryResolver=new _p(this);const y=kn(t);this._bootstrapComponents=Vo(y.bootstrap),this._r3Injector=Ym(t,i,[{provide:Sa,useValue:this},{provide:tl,useValue:this.componentFactoryResolver},...f],u(t),new Set(["environment"])),this._r3Injector.resolveInjectorInitializers(),this.instance=this._r3Injector.get(t)}get injector(){return this._r3Injector}destroy(){const t=this._r3Injector;!t.destroyed&&t.destroy(),this.destroyCbs.forEach(i=>i()),this.destroyCbs=null}onDestroy(t){this.destroyCbs.push(t)}}class xc extends ig{constructor(t){super(),this.moduleType=t}create(t){return new Cc(this.moduleType,t,[])}}class og extends Sa{constructor(t){super(),this.componentFactoryResolver=new _p(this),this.instance=null;const i=new _u([...t.providers,{provide:Sa,useValue:this},{provide:tl,useValue:this.componentFactoryResolver}],t.parent||Gl(),t.debugName,new Set(["environment"]));this.injector=i,t.runEnvironmentInitializers&&i.resolveInjectorInitializers()}destroy(){this.injector.destroy()}onDestroy(t){this.injector.onDestroy(t)}}function sg(e,t,i=null){return new og({providers:e,parent:t,debugName:i,runEnvironmentInitializers:!0}).injector}let Ex=(()=>{class e{constructor(i){this._injector=i,this.cachedInjectors=new Map}getOrCreateStandaloneInjector(i){if(!i.standalone)return null;if(!this.cachedInjectors.has(i)){const f=dm(0,i.type),y=f.length>0?sg([f],this._injector,`Standalone[${i.type.name}]`):null;this.cachedInjectors.set(i,y)}return this.cachedInjectors.get(i)}ngOnDestroy(){try{for(const i of this.cachedInjectors.values())null!==i&&i.destroy()}finally{this.cachedInjectors.clear()}}}return e.\u0275prov=St({token:e,providedIn:"environment",factory:()=>new e(ce(Ps))}),e})();function ag(e){e.getStandaloneInjector=t=>t.get(Ex).getOrCreateStandaloneInjector(e)}function lh(e){const t=kr(e);if(null===t)return null;if(void 0===t.component){const i=t.lView;if(null===i)return null;t.component=function ob(e,t){const i=t[rn].data[e],{directiveStart:f,componentOffset:y}=i;return y>-1?t[f+y]:null}(t.nodeIndex,i)}return t.component}function lg(e){!function kx(e){if(typeof Element<"u"&&!(e instanceof Element))throw new Error("Expecting instance of DOM Element")}(e);const t=kr(e),i=t?t.lView:null;return null===i?null:i[gi]}function cg(e){const t=kr(e);let f,i=t?t.lView:null;if(null===i)return null;for(;2===i[rn].type&&(f=Wa(i));)i=f;return 512&i[xn]?null:i[gi]}function ug(e){const t=Cf(e);return null!==t?[cb(t)]:[]}function dg(e){const t=kr(e),i=t?t.lView:null;return null===i?as.NULL:new Qs(i[rn].data[t.nodeIndex],i)}function hg(e){if(e instanceof Text)return[];const t=kr(e),i=t?t.lView:null;if(null===i)return[];const f=i[rn],y=t.nodeIndex;return f?.data[y]?(void 0===t.directives&&(t.directives=Ef(y,i)),null===t.directives?[]:[...t.directives]):[]}function Tx(e){const{constructor:t}=e;if(!t)throw new Error("Unable to find the instance constructor");const i=gn(t);if(i)return{inputs:i.inputs,outputs:i.outputs,encapsulation:i.encapsulation,changeDetection:i.onPush?wn.OnPush:wn.Default};const f=pn(t);return f?{inputs:f.inputs,outputs:f.outputs}:null}function ch(e){return kr(e).native}function fg(e){const t=kr(e),i=null===t?null:t.lView;if(null===i)return[];const y=i[_r],I=i[rn].cleanup,B=[];if(I&&y)for(let K=0;K=0?"dom":"output"})}}return B.sort(Ix),B}function Ix(e,t){return e.name==t.name?0:e.name{const y=e;null!==t&&(y.hasOwnProperty("decorators")&&void 0!==y.decorators?y.decorators.push(...t):y.decorators=t),null!==i&&(y.ctorParameters=i),null!==f&&(y.propDecorators=y.hasOwnProperty("propDecorators")&&void 0!==y.propDecorators?{...y.propDecorators,...f}:f)})}function pg(e,t,i){const f=dr()+e,y=dn();return y[f]===fi?To(y,f,i?t.call(i):t()):al(y,f)}function gg(e,t,i,f){return Eg(dn(),dr(),e,t,i,f)}function _g(e,t,i,f,y){return Dg(dn(),dr(),e,t,i,f,y)}function vg(e,t,i,f,y,I){return Tg(dn(),dr(),e,t,i,f,y,I)}function bg(e,t,i,f,y,I,B){return Sg(dn(),dr(),e,t,i,f,y,I,B)}function yg(e,t,i,f,y,I,B,K){const oe=dr()+e,xe=dn(),Ve=io(xe,oe,i,f,y,I);return Tr(xe,oe+4,B)||Ve?To(xe,oe+5,K?t.call(K,i,f,y,I,B):t(i,f,y,I,B)):al(xe,oe+5)}function Cg(e,t,i,f,y,I,B,K,oe){const xe=dr()+e,Ve=dn(),lt=io(Ve,xe,i,f,y,I);return Fs(Ve,xe+4,B,K)||lt?To(Ve,xe+6,oe?t.call(oe,i,f,y,I,B,K):t(i,f,y,I,B,K)):al(Ve,xe+6)}function xg(e,t,i,f,y,I,B,K,oe,xe){const Ve=dr()+e,lt=dn();let Pt=io(lt,Ve,i,f,y,I);return oc(lt,Ve+4,B,K,oe)||Pt?To(lt,Ve+7,xe?t.call(xe,i,f,y,I,B,K,oe):t(i,f,y,I,B,K,oe)):al(lt,Ve+7)}function Mg(e,t,i,f,y,I,B,K,oe,xe,Ve){const lt=dr()+e,Pt=dn(),jt=io(Pt,lt,i,f,y,I);return io(Pt,lt+4,B,K,oe,xe)||jt?To(Pt,lt+8,Ve?t.call(Ve,i,f,y,I,B,K,oe,xe):t(i,f,y,I,B,K,oe,xe)):al(Pt,lt+8)}function wg(e,t,i,f){return Ig(dn(),dr(),e,t,i,f)}function _l(e,t){const i=e[t];return i===fi?void 0:i}function Eg(e,t,i,f,y,I){const B=t+i;return Tr(e,B,y)?To(e,B+1,I?f.call(I,y):f(y)):_l(e,B+1)}function Dg(e,t,i,f,y,I,B){const K=t+i;return Fs(e,K,y,I)?To(e,K+2,B?f.call(B,y,I):f(y,I)):_l(e,K+2)}function Tg(e,t,i,f,y,I,B,K){const oe=t+i;return oc(e,oe,y,I,B)?To(e,oe+3,K?f.call(K,y,I,B):f(y,I,B)):_l(e,oe+3)}function Sg(e,t,i,f,y,I,B,K,oe){const xe=t+i;return io(e,xe,y,I,B,K)?To(e,xe+4,oe?f.call(oe,y,I,B,K):f(y,I,B,K)):_l(e,xe+4)}function Ig(e,t,i,f,y,I){let B=t+i,K=!1;for(let oe=0;oe=0;i--){const f=t[i];if(e===f.name)return f}}(t,i.pipeRegistry),i.data[y]=f,f.onDestroy&&(i.destroyHooks??=[]).push(y,f.onDestroy)):f=i.data[y];const I=f.factory||(f.factory=sr(f.type)),B=Lt(ha);try{const K=wi(!1),oe=I();return wi(K),Pp(i,dn(),y,oe),oe}finally{Lt(B)}}function kg(e,t,i){const f=e+ft,y=dn(),I=Ht(y,f);return vl(y,f)?Eg(y,dr(),t,I.transform,i,I):I.transform(i)}function Lg(e,t,i,f){const y=e+ft,I=dn(),B=Ht(I,y);return vl(I,y)?Dg(I,dr(),t,B.transform,i,f,B):B.transform(i,f)}function Rg(e,t,i,f,y){const I=e+ft,B=dn(),K=Ht(B,I);return vl(B,I)?Tg(B,dr(),t,K.transform,i,f,y,K):K.transform(i,f,y)}function Og(e,t,i,f,y,I){const B=e+ft,K=dn(),oe=Ht(K,B);return vl(K,B)?Sg(K,dr(),t,oe.transform,i,f,y,I,oe):oe.transform(i,f,y,I)}function Pg(e,t,i){const f=e+ft,y=dn(),I=Ht(y,f);return vl(y,f)?Ig(y,dr(),t,I.transform,i,I):I.transform.apply(I,i)}function vl(e,t){return e[rn].data[t].pure}function uh(e){return t=>{setTimeout(e,void 0,t)}}const Io=class Rx extends n.x{constructor(t=!1){super(),this.__isAsync=t}emit(t){super.next(t)}subscribe(t,i,f){let y=t,I=i||(()=>null),B=f;if(t&&"object"==typeof t){const oe=t;y=oe.next?.bind(oe),I=oe.error?.bind(oe),B=oe.complete?.bind(oe)}this.__isAsync&&(I=uh(I),y&&(y=uh(y)),B&&(B=uh(B)));const K=super.subscribe({next:y,error:I,complete:B});return t instanceof p.w0&&t.add(K),K}};function Ox(){return this._results[Symbol.iterator]()}class Mc{get changes(){return this._changes||(this._changes=new Io)}constructor(t=!1){this._emitDistinctChangesOnly=t,this.dirty=!0,this._results=[],this._changesDetected=!1,this._changes=null,this.length=0,this.first=void 0,this.last=void 0;const i=Mc.prototype;i[Symbol.iterator]||(i[Symbol.iterator]=Ox)}get(t){return this._results[t]}map(t){return this._results.map(t)}filter(t){return this._results.filter(t)}find(t){return this._results.find(t)}reduce(t,i){return this._results.reduce(t,i)}forEach(t){this._results.forEach(t)}some(t){return this._results.some(t)}toArray(){return this._results.slice()}toString(){return this._results.toString()}reset(t,i){const f=this;f.dirty=!1;const y=no(t);(this._changesDetected=!function Iv(e,t,i){if(e.length!==t.length)return!1;for(let f=0;f{class e{}return e.__NG_ELEMENT_ID__=Nx,e})();const Px=bl,Fx=class extends Px{constructor(t,i,f){super(),this._declarationLView=t,this._declarationTContainer=i,this.elementRef=f}get ssrId(){return this._declarationTContainer.tView?.ssrId||null}createEmbeddedView(t,i){return this.createEmbeddedViewImpl(t,i,null)}createEmbeddedViewImpl(t,i,f){const B=this._declarationTContainer.tView,K=ql(this._declarationLView,B,t,4096&this._declarationLView[xn]?4096:16,null,B.declTNode,null,null,null,i||null,f||null);K[Pn]=this._declarationLView[this._declarationTContainer.index];const xe=this._declarationLView[Vi];return null!==xe&&(K[Vi]=xe.createEmbeddedView(B)),zu(B,K,t),new ma(K)}};function Nx(){return wc(cr(),dn())}function wc(e,t){return 4&e.type?new Fx(t,e,ca(e,t)):null}function Fg(e){const t=e[zn]??[],f=e[ti][U];for(const y of t)Ux(y,f);e[zn]=Mn}function Ux(e,t){let i=0,f=e.firstChild;if(f){const y=e.data[el];for(;inull;function jx(e,t){const i=e[zn]??[];return t&&0!==i.length?i[0].data[bm]===t?i.shift():(Fg(e),null):null}function Ug(e,t){return Ng(e,t)}let Ec=(()=>{class e{}return e.__NG_ELEMENT_ID__=zx,e})();function zx(){return Vg(cr(),dn())}const Wx=Ec,Bg=class extends Wx{constructor(t,i,f){super(),this._lContainer=t,this._hostTNode=i,this._hostLView=f}get element(){return ca(this._hostTNode,this._hostLView)}get injector(){return new Qs(this._hostTNode,this._hostLView)}get parentInjector(){const t=ui(this._hostTNode,this._hostLView);if(Ui(t)){const i=qn(t,this._hostLView),f=Fn(t);return new Qs(i[rn].data[f+8],i)}return new Qs(null,this._hostLView)}clear(){for(;this.length>0;)this.remove(this.length-1)}get(t){const i=$g(this._lContainer);return null!==i&&i[t]||null}get length(){return this._lContainer.length-Vn}createEmbeddedView(t,i,f){let y,I;"number"==typeof f?y=f:null!=f&&(y=f.index,I=f.injector);const B=Ug(this._lContainer,t.ssrId),K=t.createEmbeddedViewImpl(i||{},I,B),oe=!!B&&!Rl(this._hostTNode);return this.insertImpl(K,y,oe),K}createComponent(t,i,f,y,I){const B=t&&!$a(t);let K;if(B)K=i;else{const vn=i||{};K=vn.index,f=vn.injector,y=vn.projectableNodes,I=vn.environmentInjector||vn.ngModuleRef}const oe=B?t:new pa(gn(t)),xe=f||this.parentInjector;if(!I&&null==oe.ngModule){const On=(B?xe:this.parentInjector).get(Ps,null);On&&(I=On)}const Ve=gn(oe.componentType??{}),lt=Ug(this._lContainer,Ve?.id??null),jt=oe.create(xe,y,lt?.firstChild??null,I),sn=!!lt&&!Rl(this._hostTNode);return this.insertImpl(jt.hostView,K,sn),jt}insert(t,i){return this.insertImpl(t,i,!1)}insertImpl(t,i,f){const y=t._lView,I=y[rn];if(function ji(e){return Mi(e[ti])}(y)){const oe=this.indexOf(t);if(-1!==oe)this.detach(oe);else{const xe=y[ti],Ve=new Bg(xe,xe[xi],xe[ti]);Ve.detach(Ve.indexOf(t))}}const B=this._adjustIndex(i),K=this._lContainer;if(function mb(e,t,i,f){const y=Vn+f,I=i.length;f>0&&(i[y-1][Ti]=t),f0&&(I.firstChild=e,e=lc(f[el],e)),i.push(I)}return[e,i]}(oe,xe);e[nn]=Ve,e[zn]=lt}class fh{constructor(t){this.queryList=t,this.matches=null}clone(){return new fh(this.queryList)}setDirty(){this.queryList.setDirty()}}class mh{constructor(t=[]){this.queries=t}createEmbeddedView(t){const i=t.queries;if(null!==i){const f=null!==t.contentQueries?t.contentQueries[0]:i.length,y=[];for(let I=0;I0)f.push(B[K/2]);else{const xe=I[K+1],Ve=t[-oe];for(let lt=Vn;lt({\u0275\u0275attribute:Yu,\u0275\u0275attributeInterpolate1:Zu,\u0275\u0275attributeInterpolate2:Qu,\u0275\u0275attributeInterpolate3:Xu,\u0275\u0275attributeInterpolate4:Ju,\u0275\u0275attributeInterpolate5:qu,\u0275\u0275attributeInterpolate6:ed,\u0275\u0275attributeInterpolate7:td,\u0275\u0275attributeInterpolate8:nd,\u0275\u0275attributeInterpolateV:id,\u0275\u0275defineComponent:Ft,\u0275\u0275defineDirective:zt,\u0275\u0275defineInjectable:St,\u0275\u0275defineInjector:xt,\u0275\u0275defineNgModule:ge,\u0275\u0275definePipe:an,\u0275\u0275directiveInject:ha,\u0275\u0275getInheritedFactory:zh,\u0275\u0275inject:ce,\u0275\u0275injectAttribute:Fc,\u0275\u0275invalidFactory:Zm,\u0275\u0275invalidFactoryDep:Ee,\u0275\u0275templateRefExtractor:qg,\u0275\u0275resetView:vs,\u0275\u0275HostDirectivesFeature:Mp,\u0275\u0275NgOnChangesFeature:bo,\u0275\u0275ProvidersFeature:ng,\u0275\u0275CopyDefinitionFeature:xp,\u0275\u0275InheritDefinitionFeature:Gu,\u0275\u0275InputTransformsFeature:Tp,\u0275\u0275StandaloneFeature:ag,\u0275\u0275nextContext:zp,\u0275\u0275namespaceHTML:br,\u0275\u0275namespaceMathML:Wi,\u0275\u0275namespaceSVG:Gn,\u0275\u0275enableBindings:Hs,\u0275\u0275disableBindings:rs,\u0275\u0275elementStart:cc,\u0275\u0275elementEnd:uc,\u0275\u0275element:dd,\u0275\u0275elementContainerStart:dc,\u0275\u0275elementContainerEnd:hc,\u0275\u0275elementContainer:hd,\u0275\u0275pureFunction0:pg,\u0275\u0275pureFunction1:gg,\u0275\u0275pureFunction2:_g,\u0275\u0275pureFunction3:vg,\u0275\u0275pureFunction4:bg,\u0275\u0275pureFunction5:yg,\u0275\u0275pureFunction6:Cg,\u0275\u0275pureFunction7:xg,\u0275\u0275pureFunction8:Mg,\u0275\u0275pureFunctionV:wg,\u0275\u0275getCurrentView:Bp,\u0275\u0275restoreView:_s,\u0275\u0275listener:md,\u0275\u0275projection:Gp,\u0275\u0275syntheticHostProperty:Qd,\u0275\u0275syntheticHostListener:pd,\u0275\u0275pipeBind1:kg,\u0275\u0275pipeBind2:Lg,\u0275\u0275pipeBind3:Rg,\u0275\u0275pipeBind4:Og,\u0275\u0275pipeBindV:Pg,\u0275\u0275projectionDef:Wp,\u0275\u0275hostProperty:Zd,\u0275\u0275property:cd,\u0275\u0275propertyInterpolate:gd,\u0275\u0275propertyInterpolate1:fc,\u0275\u0275propertyInterpolate2:_d,\u0275\u0275propertyInterpolate3:vd,\u0275\u0275propertyInterpolate4:bd,\u0275\u0275propertyInterpolate5:yd,\u0275\u0275propertyInterpolate6:Cd,\u0275\u0275propertyInterpolate7:xd,\u0275\u0275propertyInterpolate8:Md,\u0275\u0275propertyInterpolateV:wd,\u0275\u0275pipe:Ag,\u0275\u0275queryRefresh:Gg,\u0275\u0275viewQuery:Kg,\u0275\u0275loadQuery:Zg,\u0275\u0275contentQuery:Yg,\u0275\u0275reference:Fp,\u0275\u0275classMap:e0,\u0275\u0275classMapInterpolate1:u0,\u0275\u0275classMapInterpolate2:d0,\u0275\u0275classMapInterpolate3:h0,\u0275\u0275classMapInterpolate4:f0,\u0275\u0275classMapInterpolate5:m0,\u0275\u0275classMapInterpolate6:p0,\u0275\u0275classMapInterpolate7:g0,\u0275\u0275classMapInterpolate8:_0,\u0275\u0275classMapInterpolateV:v0,\u0275\u0275styleMap:fo,\u0275\u0275styleMapInterpolate1:b0,\u0275\u0275styleMapInterpolate2:y0,\u0275\u0275styleMapInterpolate3:C0,\u0275\u0275styleMapInterpolate4:x0,\u0275\u0275styleMapInterpolate5:M0,\u0275\u0275styleMapInterpolate6:w0,\u0275\u0275styleMapInterpolate7:E0,\u0275\u0275styleMapInterpolate8:D0,\u0275\u0275styleMapInterpolateV:T0,\u0275\u0275styleProp:Sd,\u0275\u0275stylePropInterpolate1:$d,\u0275\u0275stylePropInterpolate2:Vd,\u0275\u0275stylePropInterpolate3:jd,\u0275\u0275stylePropInterpolate4:Hd,\u0275\u0275stylePropInterpolate5:zd,\u0275\u0275stylePropInterpolate6:Wd,\u0275\u0275stylePropInterpolate7:Gd,\u0275\u0275stylePropInterpolate8:Kd,\u0275\u0275stylePropInterpolateV:Yd,\u0275\u0275classProp:Id,\u0275\u0275advance:jm,\u0275\u0275template:Lp,\u0275\u0275text:l0,\u0275\u0275textInterpolate:kd,\u0275\u0275textInterpolate1:gc,\u0275\u0275textInterpolate2:Ld,\u0275\u0275textInterpolate3:Rd,\u0275\u0275textInterpolate4:Od,\u0275\u0275textInterpolate5:Pd,\u0275\u0275textInterpolate6:Fd,\u0275\u0275textInterpolate7:Nd,\u0275\u0275textInterpolate8:Ud,\u0275\u0275textInterpolateV:Bd,\u0275\u0275i18n:X0,\u0275\u0275i18nAttributes:J0,\u0275\u0275i18nExp:ih,\u0275\u0275i18nStart:th,\u0275\u0275i18nEnd:nh,\u0275\u0275i18nApply:q0,\u0275\u0275i18nPostprocess:eg,\u0275\u0275resolveWindow:Rm,\u0275\u0275resolveDocument:Om,\u0275\u0275resolveBody:Lu,\u0275\u0275setComponentScope:Ae,\u0275\u0275setNgModuleScope:Ge,\u0275\u0275registerNgModuleType:Vc,\u0275\u0275sanitizeHtml:nm,\u0275\u0275sanitizeStyle:im,\u0275\u0275sanitizeResourceUrl:cu,\u0275\u0275sanitizeScript:rm,\u0275\u0275sanitizeUrl:lu,\u0275\u0275sanitizeUrlOrResourceUrl:am,\u0275\u0275trustConstantHtml:om,\u0275\u0275trustConstantResourceUrl:sm,\u0275\u0275validateIframeAttribute:zf,forwardRef:_,resolveForwardRef:M}))();let Ia=null;function iM(){Ia=null}function vh(e){return!!kn(e)}const yl=[];let bh=!1;function t_(){if(!bh){bh=!0;try{for(let e=yl.length-1;e>=0;e--){const{moduleType:t,ngModule:i}=yl[e];i.declarations&&i.declarations.every(n_)&&(yl.splice(e,1),lM(t,i))}}finally{bh=!1}}}function n_(e){return Array.isArray(e)?e.every(n_):!!M(e)}function i_(e,t={}){r_(e,t),void 0!==t.id&&Vc(e,t.id),function rM(e,t){yl.push({moduleType:e,ngModule:t})}(e,t)}function r_(e,t,i=!1){const f=no(t.declarations||Mn);let y=null;Object.defineProperty(e,Qi,{configurable:!0,get:()=>(null===y&&(y=pr().compileNgModule(Lr,`ng:///${e.name}/\u0275mod.js`,{type:e,bootstrap:no(t.bootstrap||Mn).map(M),declarations:f.map(M),imports:no(t.imports||Mn).map(M).map(a_),exports:no(t.exports||Mn).map(M).map(a_),schemas:t.schemas?no(t.schemas):null,id:t.id||null}),y.schemas||(y.schemas=[])),y)});let I=null;Object.defineProperty(e,wt,{get:()=>{if(null===I){const K=pr();I=K.compileFactory(Lr,`ng:///${e.name}/\u0275fac.js`,{name:e.name,type:e,deps:Il(e),target:K.FactoryTarget.NgModule,typeArgumentCount:0})}return I},configurable:!1});let B=null;Object.defineProperty(e,ee,{get:()=>{if(null===B){const K={name:e.name,type:e,providers:t.providers||Mn,imports:[(t.imports||Mn).map(M),(t.exports||Mn).map(M)]};B=pr().compileInjector(Lr,`ng:///${e.name}/\u0275inj.js`,K)}return B},configurable:!1})}let Dc=new WeakMap,Ch=new WeakMap;function aM(){Dc=new WeakMap,Ch=new WeakMap,yl.length=0,er.clear()}function lM(e,t){const i=no(t.declarations||Mn),f=$s(e);i.forEach(y=>{(y=M(y)).hasOwnProperty(Ci)?xh(gn(y),f):!y.hasOwnProperty(di)&&!y.hasOwnProperty(Li)&&(y.ngSelectorScope=e)})}function xh(e,t){e.directiveDefs=()=>Array.from(t.compilation.directives).map(i=>i.hasOwnProperty(Ci)?gn(i):pn(i)).filter(i=>!!i),e.pipeDefs=()=>Array.from(t.compilation.pipes).map(i=>Jn(i)),e.schemas=t.schemas,e.tView=null}function $s(e){if(vh(e))return function cM(e){const t=kn(e,!0);if(null!==t.transitiveCompileScopes)return t.transitiveCompileScopes;const i={schemas:t.schemas||null,compilation:{directives:new Set,pipes:new Set},exported:{directives:new Set,pipes:new Set}};return Vo(t.imports).forEach(f=>{const y=$s(f);y.exported.directives.forEach(I=>i.compilation.directives.add(I)),y.exported.pipes.forEach(I=>i.compilation.pipes.add(I))}),Vo(t.declarations).forEach(f=>{Jn(f)?i.compilation.pipes.add(f):i.compilation.directives.add(f)}),Vo(t.exports).forEach(f=>{const y=f;if(vh(y)){const I=$s(y);I.exported.directives.forEach(B=>{i.compilation.directives.add(B),i.exported.directives.add(B)}),I.exported.pipes.forEach(B=>{i.compilation.pipes.add(B),i.exported.pipes.add(B)})}else Jn(y)?i.exported.pipes.add(y):i.exported.directives.add(y)}),t.transitiveCompileScopes=i,i}(e);if(Nn(e)){if(null!==(gn(e)||pn(e)))return{schemas:null,compilation:{directives:new Set,pipes:new Set},exported:{directives:new Set([e]),pipes:new Set}};if(null!==Jn(e))return{schemas:null,compilation:{directives:new Set,pipes:new Set},exported:{directives:new Set,pipes:new Set([e])}}}throw new Error(`${e.name} does not have a module def (\u0275mod property)`)}function a_(e){return function e_(e){return void 0!==e.ngModule}(e)?e.ngModule:e}let Mh=0;function l_(e,t){let i=null;(function Uv(e,t){sf(t)&&(na.set(e,t),Ha.add(e))})(e,t),u_(e,t),Object.defineProperty(e,Ci,{get:()=>{if(null===i){const f=pr();if(sf(t)){const xe=[`Component '${e.name}' is not resolved:`];throw t.templateUrl&&xe.push(` - templateUrl: ${t.templateUrl}`),t.styleUrls&&t.styleUrls.length&&xe.push(` - styleUrls: ${JSON.stringify(t.styleUrls)}`),xe.push("Did you run and wait for 'resolveComponentResources()'?"),new Error(xe.join("\n"))}const y=function nM(){return Ia}();let I=t.preserveWhitespaces;void 0===I&&(I=null!==y&&void 0!==y.preserveWhitespaces&&y.preserveWhitespaces);let B=t.encapsulation;void 0===B&&(B=null!==y&&void 0!==y.defaultEncapsulation?y.defaultEncapsulation:Tn.Emulated);const K=t.templateUrl||`ng:///${e.name}/template.html`,oe={...d_(e,t),typeSourceSpan:f.createParseSourceSpan("Component",e.name,K),template:t.template||"",preserveWhitespaces:I,styles:t.styles||Mn,animations:t.animations,declarations:[],changeDetection:t.changeDetection,encapsulation:B,interpolation:t.interpolation,viewProviders:t.viewProviders||null};Mh++;try{if(oe.usesInheritance&&h_(e),i=f.compileComponent(Lr,K,oe),t.standalone){const xe=no(t.imports||Mn),{directiveDefs:Ve,pipeDefs:lt}=function dM(e,t){let i=null,f=null;return{directiveDefs:()=>{if(null===i){i=[gn(e)];const B=new Set([e]);for(const K of t){const oe=M(K);if(!B.has(oe))if(B.add(oe),kn(oe)){const xe=$s(oe);for(const Ve of xe.exported.directives){const lt=gn(Ve)||pn(Ve);lt&&!B.has(Ve)&&(B.add(Ve),i.push(lt))}}else{const xe=gn(oe)||pn(oe);xe&&i.push(xe)}}}return i},pipeDefs:()=>{if(null===f){f=[];const B=new Set;for(const K of t){const oe=M(K);if(!B.has(oe))if(B.add(oe),kn(oe)){const xe=$s(oe);for(const Ve of xe.exported.pipes){const lt=Jn(Ve);lt&&!B.has(Ve)&&(B.add(Ve),f.push(lt))}}else{const xe=Jn(oe);xe&&f.push(xe)}}}return f}}}(e,xe);i.directiveDefs=Ve,i.pipeDefs=lt,i.dependencies=()=>xe.map(M)}}finally{Mh--}if(0===Mh&&t_(),function hM(e){return void 0!==e.ngSelectorScope}(e)){const xe=$s(e.ngSelectorScope);xh(i,xe)}if(t.schemas){if(!t.standalone)throw new Error(`The 'schemas' was specified for the ${D(e)} but is only valid on a component that is standalone.`);i.schemas=t.schemas}else t.standalone&&(i.schemas=[])}return i},configurable:!1})}function wh(e,t){let i=null;u_(e,t||{}),Object.defineProperty(e,di,{get:()=>{if(null===i){const f=c_(e,t||{});i=pr().compileDirective(Lr,f.sourceMapUrl,f.metadata)}return i},configurable:!1})}function c_(e,t){const i=e&&e.name,f=`ng:///${i}/\u0275dir.js`,y=pr(),I=d_(e,t);return I.typeSourceSpan=y.createParseSourceSpan("Directive",i,f),I.usesInheritance&&h_(e),{metadata:I,sourceMapUrl:f}}function u_(e,t){let i=null;Object.defineProperty(e,wt,{get:()=>{if(null===i){const f=c_(e,t),y=pr();i=y.compileFactory(Lr,`ng:///${e.name}/\u0275fac.js`,{name:f.metadata.name,type:f.metadata.type,typeArgumentCount:0,deps:Il(e),target:y.FactoryTarget.Directive})}return i},configurable:!1})}function fM(e){return Object.getPrototypeOf(e.prototype)===Object.prototype}function d_(e,t){const i=$c(),f=i.ownPropMetadata(e);return{name:e.name,type:e,selector:void 0!==t.selector?t.selector:null,host:t.host||Sn,propMetadata:f,inputs:t.inputs||Mn,outputs:t.outputs||Mn,queries:f_(e,f,m_),lifecycle:{usesOnChanges:i.hasLifecycleHook(e,"ngOnChanges")},typeSourceSpan:null,usesInheritance:!fM(e),exportAs:gM(t.exportAs),providers:t.providers||null,viewQueries:f_(e,f,p_),isStandalone:!!t.standalone,isSignal:!!t.signals,hostDirectives:t.hostDirectives?.map(y=>"function"==typeof y?{directive:y}:y)||null}}function h_(e){const t=Object.prototype;let i=Object.getPrototypeOf(e.prototype).constructor;for(;i&&i!==t;)!pn(i)&&!gn(i)&&vM(i)&&wh(i,null),i=Object.getPrototypeOf(i)}function mM(e){return"string"==typeof e?__(e):M(e)}function pM(e,t){return{propertyName:e,predicate:mM(t.selector),descendants:t.descendants,first:t.first,read:t.read?t.read:null,static:!!t.static,emitDistinctChangesOnly:!!t.emitDistinctChangesOnly}}function f_(e,t,i){const f=[];for(const y in t)if(t.hasOwnProperty(y)){const I=t[y];I.forEach(B=>{if(i(B)){if(!B.selector)throw new Error(`Can't construct a query for the property "${y}" of "${D(e)}" since the query selector wasn't defined.`);if(I.some(g_))throw new Error("Cannot combine @Input decorators with query decorators");f.push(pM(y,B))}})}return f}function gM(e){return void 0===e?null:__(e)}function m_(e){const t=e.ngMetadataName;return"ContentChild"===t||"ContentChildren"===t}function p_(e){const t=e.ngMetadataName;return"ViewChild"===t||"ViewChildren"===t}function g_(e){return"Input"===e.ngMetadataName}function __(e){return e.split(",").map(t=>t.trim())}const _M=["ngOnChanges","ngOnInit","ngOnDestroy","ngDoCheck","ngAfterViewInit","ngAfterViewChecked","ngAfterContentInit","ngAfterContentChecked"];function vM(e){const t=$c();if(_M.some(f=>t.hasLifecycleHook(e,f)))return!0;const i=t.propMetadata(e);for(const f in i){const y=i[f];for(let I=0;I{if(null===f){const y=b_(e,t),I=pr();f=I.compileFactory(Lr,`ng:///${y.name}/\u0275fac.js`,{name:y.name,type:y.type,typeArgumentCount:0,deps:Il(e),target:I.FactoryTarget.Pipe})}return f},configurable:!1}),Object.defineProperty(e,Li,{get:()=>{if(null===i){const y=b_(e,t);i=pr().compilePipe(Lr,`ng:///${y.name}/\u0275pipe.js`,y)}return i},configurable:!1})}function b_(e,t){return{type:e,name:e.name,pipeName:t.name,pure:void 0===t.pure||t.pure,isStandalone:!!t.standalone}}const y_=Ua("Directive",(e={})=>e,void 0,void 0,(e,t)=>wh(e,t)),bM=Ua("Component",(e={})=>({changeDetection:wn.Default,...e}),y_,void 0,(e,t)=>l_(e,t)),yM=Ua("Pipe",e=>({pure:!0,...e}),void 0,void 0,(e,t)=>v_(e,t)),CM=ss("Input",e=>e?"string"==typeof e?{alias:e}:e:{}),xM=ss("Output",e=>({alias:e})),MM=ss("HostBinding",e=>({hostPropertyName:e})),wM=ss("HostListener",(e,t)=>({eventName:e,args:t})),EM=Ua("NgModule",e=>e,void 0,void 0,(e,t)=>i_(e,t)),C_=new Yi("Application Initializer");let Tc=(()=>{class e{constructor(){this.initialized=!1,this.done=!1,this.donePromise=new Promise((i,f)=>{this.resolve=i,this.reject=f}),this.appInits=it(C_,{optional:!0})??[]}runInitializers(){if(this.initialized)return;const i=[];for(const y of this.appInits){const I=y();if(fd(I))i.push(I);else if($p(I)){const B=new Promise((K,oe)=>{I.subscribe({complete:K,error:oe})});i.push(B)}}const f=()=>{this.done=!0,this.resolve()};Promise.all(i).then(()=>{f()}).catch(y=>{this.reject(y)}),0===i.length&&f(),this.initialized=!0}}return e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=St({token:e,factory:e.\u0275fac,providedIn:"root"}),e})(),x_=(()=>{class e{log(i){console.log(i)}warn(i){console.warn(i)}}return e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=St({token:e,factory:e.\u0275fac,providedIn:"platform"}),e})();const Sc=new Yi("LocaleId",{providedIn:"root",factory:()=>it(Sc,pe.Optional|pe.SkipSelf)||function DM(){return typeof $localize<"u"&&$localize.locale||Bs}()}),TM=new Yi("DefaultCurrencyCode",{providedIn:"root",factory:()=>"USD"}),SM=new Yi("Translations"),IM=new Yi("TranslationsFormat");var M_=function(e){return e[e.Error=0]="Error",e[e.Warning=1]="Warning",e[e.Ignore=2]="Ignore",e}(M_||{});let w_=(()=>{class e{constructor(){this.taskId=0,this.pendingTasks=new Set,this.hasPendingTasks=new C.X(!1)}add(){this.hasPendingTasks.next(!0);const i=this.taskId++;return this.pendingTasks.add(i),i}remove(i){this.pendingTasks.delete(i),0===this.pendingTasks.size&&this.hasPendingTasks.next(!1)}ngOnDestroy(){this.pendingTasks.clear(),this.hasPendingTasks.next(!1)}}return e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=St({token:e,factory:e.\u0275fac,providedIn:"root"}),e})();class E_{constructor(t,i){this.ngModuleFactory=t,this.componentFactories=i}}let AM=(()=>{class e{compileModuleSync(i){return new xc(i)}compileModuleAsync(i){return Promise.resolve(this.compileModuleSync(i))}compileModuleAndAllComponentsSync(i){const f=this.compileModuleSync(i),I=Vo(kn(i).declarations).reduce((B,K)=>{const oe=gn(K);return oe&&B.push(new pa(oe)),B},[]);return new E_(f,I)}compileModuleAndAllComponentsAsync(i){return Promise.resolve(this.compileModuleAndAllComponentsSync(i))}clearCache(){}clearCacheFor(i){}getModuleId(i){}}return e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=St({token:e,factory:e.\u0275fac,providedIn:"root"}),e})();const D_=new Yi("compilerOptions");class kM{}function LM(e){il(yf(e)),ug(e).forEach(t=>hp(t))}const T_="ng";let S_=!1;function RM(){S_||(S_=!0,ro("\u0275setProfiler",yo),ro("getDirectiveMetadata",Tx),ro("getComponent",lh),ro("getContext",lg),ro("getListeners",fg),ro("getOwningComponent",cg),ro("getHostElement",ch),ro("getInjector",dg),ro("getRootComponents",ug),ro("getDirectives",hg),ro("applyChanges",LM))}function ro(e,t){if((typeof COMPILED>"u"||!COMPILED)&&ze){let f=ze[T_];f||(f=ze[T_]={}),f[e]=t}}function I_(...e){}class Rr{constructor({enableLongStackTrace:t=!1,shouldCoalesceEventChangeDetection:i=!1,shouldCoalesceRunChangeDetection:f=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new Io(!1),this.onMicrotaskEmpty=new Io(!1),this.onStable=new Io(!1),this.onError=new Io(!1),typeof Zone>"u")throw new T(908,!1);Zone.assertZonePatched();const y=this;y._nesting=0,y._outer=y._inner=Zone.current,Zone.TaskTrackingZoneSpec&&(y._inner=y._inner.fork(new Zone.TaskTrackingZoneSpec)),t&&Zone.longStackTraceZoneSpec&&(y._inner=y._inner.fork(Zone.longStackTraceZoneSpec)),y.shouldCoalesceEventChangeDetection=!f&&i,y.shouldCoalesceRunChangeDetection=f,y.lastRequestAnimationFrameId=-1,y.nativeRequestAnimationFrame=function OM(){const e="function"==typeof ze.requestAnimationFrame;let t=ze[e?"requestAnimationFrame":"setTimeout"],i=ze[e?"cancelAnimationFrame":"clearTimeout"];if(typeof Zone<"u"&&t&&i){const f=t[Zone.__symbol__("OriginalDelegate")];f&&(t=f);const y=i[Zone.__symbol__("OriginalDelegate")];y&&(i=y)}return{nativeRequestAnimationFrame:t,nativeCancelAnimationFrame:i}}().nativeRequestAnimationFrame,function NM(e){const t=()=>{!function FM(e){e.isCheckStableRunning||-1!==e.lastRequestAnimationFrameId||(e.lastRequestAnimationFrameId=e.nativeRequestAnimationFrame.call(ze,()=>{e.fakeTopEventTask||(e.fakeTopEventTask=Zone.root.scheduleEventTask("fakeTopEventTask",()=>{e.lastRequestAnimationFrameId=-1,Dh(e),e.isCheckStableRunning=!0,Eh(e),e.isCheckStableRunning=!1},void 0,()=>{},()=>{})),e.fakeTopEventTask.invoke()}),Dh(e))}(e)};e._inner=e._inner.fork({name:"angular",properties:{isAngularZone:!0},onInvokeTask:(i,f,y,I,B,K)=>{try{return A_(e),i.invokeTask(y,I,B,K)}finally{(e.shouldCoalesceEventChangeDetection&&"eventTask"===I.type||e.shouldCoalesceRunChangeDetection)&&t(),k_(e)}},onInvoke:(i,f,y,I,B,K,oe)=>{try{return A_(e),i.invoke(y,I,B,K,oe)}finally{e.shouldCoalesceRunChangeDetection&&t(),k_(e)}},onHasTask:(i,f,y,I)=>{i.hasTask(y,I),f===y&&("microTask"==I.change?(e._hasPendingMicrotasks=I.microTask,Dh(e),Eh(e)):"macroTask"==I.change&&(e.hasPendingMacrotasks=I.macroTask))},onHandleError:(i,f,y,I)=>(i.handleError(y,I),e.runOutsideAngular(()=>e.onError.emit(I)),!1)})}(y)}static isInAngularZone(){return typeof Zone<"u"&&!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!Rr.isInAngularZone())throw new T(909,!1)}static assertNotInAngularZone(){if(Rr.isInAngularZone())throw new T(909,!1)}run(t,i,f){return this._inner.run(t,i,f)}runTask(t,i,f,y){const I=this._inner,B=I.scheduleEventTask("NgZoneEvent: "+y,t,PM,I_,I_);try{return I.runTask(B,i,f)}finally{I.cancelTask(B)}}runGuarded(t,i,f){return this._inner.runGuarded(t,i,f)}runOutsideAngular(t){return this._outer.run(t)}}const PM={};function Eh(e){if(0==e._nesting&&!e.hasPendingMicrotasks&&!e.isStable)try{e._nesting++,e.onMicrotaskEmpty.emit(null)}finally{if(e._nesting--,!e.hasPendingMicrotasks)try{e.runOutsideAngular(()=>e.onStable.emit(null))}finally{e.isStable=!0}}}function Dh(e){e.hasPendingMicrotasks=!!(e._hasPendingMicrotasks||(e.shouldCoalesceEventChangeDetection||e.shouldCoalesceRunChangeDetection)&&-1!==e.lastRequestAnimationFrameId)}function A_(e){e._nesting++,e.isStable&&(e.isStable=!1,e.onUnstable.emit(null))}function k_(e){e._nesting--,Eh(e)}class L_{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Io,this.onMicrotaskEmpty=new Io,this.onStable=new Io,this.onError=new Io}run(t,i,f){return t.apply(i,f)}runGuarded(t,i,f){return t.apply(i,f)}runOutsideAngular(t){return t()}runTask(t,i,f,y){return t.apply(i,f)}}const R_=new Yi("",{providedIn:"root",factory:O_});function O_(){const e=it(Rr);let t=!0;const i=new b.y(y=>{t=e.isStable&&!e.hasPendingMacrotasks&&!e.hasPendingMicrotasks,e.runOutsideAngular(()=>{y.next(t),y.complete()})}),f=new b.y(y=>{let I;e.runOutsideAngular(()=>{I=e.onStable.subscribe(()=>{Rr.assertNotInAngularZone(),queueMicrotask(()=>{!t&&!e.hasPendingMacrotasks&&!e.hasPendingMicrotasks&&(t=!0,y.next(!0))})})});const B=e.onUnstable.subscribe(()=>{Rr.assertInAngularZone(),t&&(t=!1,e.runOutsideAngular(()=>{y.next(!1)}))});return()=>{I.unsubscribe(),B.unsubscribe()}});return(0,o.T)(i,f.pipe((0,a.B)()))}const P_=new Yi(""),F_=new Yi("");let UM=(()=>{class e{constructor(i,f,y){this._ngZone=i,this.registry=f,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,Th||(U_(y),y.addToWindow(f)),this._watchAngularEvents(),i.run(()=>{this.taskTrackingZone=typeof Zone>"u"?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{Rr.assertNotInAngularZone(),queueMicrotask(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())queueMicrotask(()=>{for(;0!==this._callbacks.length;){let i=this._callbacks.pop();clearTimeout(i.timeoutId),i.doneCb(this._didWork)}this._didWork=!1});else{let i=this.getPendingTasks();this._callbacks=this._callbacks.filter(f=>!f.updateCb||!f.updateCb(i)||(clearTimeout(f.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(i=>({source:i.source,creationLocation:i.creationLocation,data:i.data})):[]}addCallback(i,f,y){let I=-1;f&&f>0&&(I=setTimeout(()=>{this._callbacks=this._callbacks.filter(B=>B.timeoutId!==I),i(this._didWork,this.getPendingTasks())},f)),this._callbacks.push({doneCb:i,timeoutId:I,updateCb:y})}whenStable(i,f,y){if(y&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/plugins/task-tracking" loaded?');this.addCallback(i,f,y),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}registerApplication(i){this.registry.registerApplication(i,this)}unregisterApplication(i){this.registry.unregisterApplication(i)}findProviders(i,f,y){return[]}}return e.\u0275fac=function(i){return new(i||e)(ce(Rr),ce(N_),ce(F_))},e.\u0275prov=St({token:e,factory:e.\u0275fac}),e})(),N_=(()=>{class e{constructor(){this._applications=new Map}registerApplication(i,f){this._applications.set(i,f)}unregisterApplication(i){this._applications.delete(i)}unregisterAllApplications(){this._applications.clear()}getTestability(i){return this._applications.get(i)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(i,f=!0){return Th?.findTestabilityInTree(this,i,f)??null}}return e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=St({token:e,factory:e.\u0275fac,providedIn:"platform"}),e})();function U_(e){Th=e}let Th,cs=null;const Sh=new Yi("AllowMultipleToken"),Ih=new Yi("PlatformDestroyListeners"),Ah=new Yi("appBootstrapListener");function B_(e,t,i){const f=new xc(i);return Promise.resolve(f)}function $_(){!function Xo(e){Ao=e}(()=>{throw new T(600,!1)})}function V_(e){return e.isBoundToModule}class BM{constructor(t,i){this.name=t,this.token=i}}function j_(e){if(cs&&!cs.get(Sh,!1))throw new T(400,!1);$_(),cs=e;const t=e.get(kh);return H_(e),t}function H_(e){e.get(_m,null)?.forEach(i=>i())}function VM(e){try{const{rootComponent:t,appProviders:i,platformProviders:f}=e,y=function $M(e=[]){if(cs)return cs;const t=G_(e);return cs=t,$_(),H_(t),t}(f),I=[q_(),...i||[]],K=new og({providers:I,parent:y,debugName:"",runEnvironmentInitializers:!1}).injector,oe=K.get(Rr);return oe.run(()=>{K.resolveInjectorInitializers();const xe=K.get(ua,null);let Ve;oe.runOutsideAngular(()=>{Ve=oe.onError.subscribe({next:jt=>{xe.handleError(jt)}})});const lt=()=>K.destroy(),Pt=y.get(Ih);return Pt.add(lt),K.onDestroy(()=>{Ve.unsubscribe(),Pt.delete(lt)}),Y_(xe,oe,()=>{const jt=K.get(Tc);return jt.runInitializers(),jt.donePromise.then(()=>{Jd(K.get(Sc,Bs)||Bs);const vn=K.get(Aa);return void 0!==t&&vn.bootstrap(t),vn})})})}catch(t){return Promise.reject(t)}}function z_(e,t,i=[]){const f=`Platform: ${t}`,y=new Yi(f);return(I=[])=>{let B=Ic();if(!B||B.injector.get(Sh,!1)){const K=[...i,...I,{provide:y,useValue:!0}];e?e(K):j_(G_(K,f))}return W_()}}function W_(e){const t=Ic();if(!t)throw new T(401,!1);return t}function G_(e=[],t){return as.create({name:t,providers:[{provide:pu,useValue:"platform"},{provide:Ih,useValue:new Set([()=>cs=null])},...e]})}function jM(){Ic()?.destroy()}function Ic(){return cs?.get(kh)??null}let kh=(()=>{class e{constructor(i){this._injector=i,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(i,f){const y=function HM(e="zone.js",t){return"noop"===e?new L_:"zone.js"===e?new Rr(t):e}(f?.ngZone,K_({eventCoalescing:f?.ngZoneEventCoalescing,runCoalescing:f?.ngZoneRunCoalescing}));return y.run(()=>{const I=function wx(e,t,i){return new Cc(e,t,i)}(i.moduleType,this.injector,J_(()=>y)),B=I.injector.get(ua,null);return y.runOutsideAngular(()=>{const K=y.onError.subscribe({next:oe=>{B.handleError(oe)}});I.onDestroy(()=>{Ac(this._modules,I),K.unsubscribe()})}),Y_(B,y,()=>{const K=I.injector.get(Tc);return K.runInitializers(),K.donePromise.then(()=>(Jd(I.injector.get(Sc,Bs)||Bs),this._moduleDoBootstrap(I),I))})})}bootstrapModule(i,f=[]){const y=Z_({},f);return B_(0,0,i).then(I=>this.bootstrapModuleFactory(I,y))}_moduleDoBootstrap(i){const f=i.injector.get(Aa);if(i._bootstrapComponents.length>0)i._bootstrapComponents.forEach(y=>f.bootstrap(y));else{if(!i.instance.ngDoBootstrap)throw new T(-403,!1);i.instance.ngDoBootstrap(f)}this._modules.push(i)}onDestroy(i){this._destroyListeners.push(i)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new T(404,!1);this._modules.slice().forEach(f=>f.destroy()),this._destroyListeners.forEach(f=>f());const i=this._injector.get(Ih,null);i&&(i.forEach(f=>f()),i.clear()),this._destroyed=!0}get destroyed(){return this._destroyed}}return e.\u0275fac=function(i){return new(i||e)(ce(as))},e.\u0275prov=St({token:e,factory:e.\u0275fac,providedIn:"platform"}),e})();function K_(e){return{enableLongStackTrace:!1,shouldCoalesceEventChangeDetection:e?.eventCoalescing??!1,shouldCoalesceRunChangeDetection:e?.runCoalescing??!1}}function Y_(e,t,i){try{const f=i();return fd(f)?f.catch(y=>{throw t.runOutsideAngular(()=>e.handleError(y)),y}):f}catch(f){throw t.runOutsideAngular(()=>e.handleError(f)),f}}function Z_(e,t){return Array.isArray(t)?t.reduce(Z_,e):{...e,...t}}let Aa=(()=>{class e{constructor(){this._bootstrapListeners=[],this._runningTick=!1,this._destroyed=!1,this._destroyListeners=[],this._views=[],this.internalErrorHandler=it(X_),this.zoneIsStable=it(R_),this.componentTypes=[],this.components=[],this.isStable=it(w_).hasPendingTasks.pipe((0,c.w)(i=>i?(0,v.of)(!1):this.zoneIsStable),(0,s.x)(),(0,a.B)()),this._injector=it(Ps)}get destroyed(){return this._destroyed}get injector(){return this._injector}bootstrap(i,f){const y=i instanceof Ql;if(!this._injector.get(Tc).done)throw!y&&Nn(i),new T(405,!1);let B;B=y?i:this._injector.get(tl).resolveComponentFactory(i),this.componentTypes.push(B.componentType);const K=V_(B)?void 0:this._injector.get(Sa),xe=B.create(as.NULL,[],f||B.selector,K),Ve=xe.location.nativeElement,lt=xe.injector.get(P_,null);return lt?.registerApplication(Ve),xe.onDestroy(()=>{this.detachView(xe.hostView),Ac(this.components,xe),lt?.unregisterApplication(Ve)}),this._loadComponent(xe),xe}tick(){if(this._runningTick)throw new T(101,!1);try{this._runningTick=!0;for(let i of this._views)i.detectChanges()}catch(i){this.internalErrorHandler(i)}finally{this._runningTick=!1}}attachView(i){const f=i;this._views.push(f),f.attachToAppRef(this)}detachView(i){const f=i;Ac(this._views,f),f.detachFromAppRef()}_loadComponent(i){this.attachView(i.hostView),this.tick(),this.components.push(i);const f=this._injector.get(Ah,[]);f.push(...this._bootstrapListeners),f.forEach(y=>y(i))}ngOnDestroy(){if(!this._destroyed)try{this._destroyListeners.forEach(i=>i()),this._views.slice().forEach(i=>i.destroy())}finally{this._destroyed=!0,this._views=[],this._bootstrapListeners=[],this._destroyListeners=[]}}onDestroy(i){return this._destroyListeners.push(i),()=>Ac(this._destroyListeners,i)}destroy(){if(this._destroyed)throw new T(406,!1);const i=this._injector;i.destroy&&!i.destroyed&&i.destroy()}get viewCount(){return this._views.length}warnIfDestroyed(){}}return e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=St({token:e,factory:e.\u0275fac,providedIn:"root"}),e})();function Ac(e,t){const i=e.indexOf(t);i>-1&&e.splice(i,1)}const X_=new Yi("",{providedIn:"root",factory:()=>it(ua).handleError.bind(void 0)});function zM(){const e=it(Rr),t=it(ua);return i=>e.runOutsideAngular(()=>t.handleError(i))}let WM=(()=>{class e{constructor(){this.zone=it(Rr),this.applicationRef=it(Aa)}initialize(){this._onMicrotaskEmptySubscription||(this._onMicrotaskEmptySubscription=this.zone.onMicrotaskEmpty.subscribe({next:()=>{this.zone.run(()=>{this.applicationRef.tick()})}}))}ngOnDestroy(){this._onMicrotaskEmptySubscription?.unsubscribe()}}return e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=St({token:e,factory:e.\u0275fac,providedIn:"root"}),e})();function J_(e){return[{provide:Rr,useFactory:e},{provide:Xa,multi:!0,useFactory:()=>{const t=it(WM,{optional:!0});return()=>t.initialize()}},{provide:X_,useFactory:zM},{provide:R_,useFactory:O_}]}function q_(e){return du([[],J_(()=>new Rr(K_(e)))])}function GM(){return!1}function KM(){}function YM(e){const t=cf(e);if(!t)throw ev(e);return new xc(t)}function ZM(e){const t=cf(e);if(!t)throw ev(e);return t}function ev(e){return new Error(`No module with ID ${e} loaded`)}let tv=(()=>{class e{}return e.__NG_ELEMENT_ID__=nv,e})();function nv(e){return function QM(e,t,i){if(Xn(e)&&!i){const f=Zt(e.index,t);return new ma(f,f)}return 47&e.type?new ma(t[Gt],t):null}(cr(),dn(),16==(16&e))}class iv extends tv{}class XM extends iv{}class JM{constructor(t,i){this.name=t,this.callback=i}}function qM(e){return e.map(t=>t.nativeElement)}class Lh{constructor(t){this.nativeNode=t}get parent(){const t=this.nativeNode.parentNode;return t?new Cl(t):null}get injector(){return dg(this.nativeNode)}get componentInstance(){const t=this.nativeNode;return t&&(lh(t)||cg(t))}get context(){return lh(this.nativeNode)||lg(this.nativeNode)}get listeners(){return fg(this.nativeNode).filter(t=>"dom"===t.type)}get references(){return function Sx(e){const t=kr(e);if(null===t)return{};if(void 0===t.localRefs){const i=t.lView;if(null===i)return{};t.localRefs=function sb(e,t){const i=e[rn].data[t];if(i&&i.localNames){const f={};let y=i.index+1;for(let I=0;I1){let Ve=oe[1];for(let lt=1;ltt[I]=!0),t}get childNodes(){const t=this.nativeNode.childNodes,i=[];for(let f=0;f{if(I.name===t){const B=I.callback;B.call(f,i),y.push(B)}}),"function"==typeof f.eventListeners&&f.eventListeners(t).forEach(I=>{if(-1!==I.toString().indexOf("__ngUnwrap__")){const B=I("__ngUnwrap__");return-1===y.indexOf(B)&&B.call(f,i)}})}}function tw(e){return"string"==typeof e||"boolean"==typeof e||"number"==typeof e||null===e}function rv(e,t,i,f){const y=kr(e.nativeNode),I=y?y.lView:null;null!==I?Vs(I[rn].data[y.nodeIndex],I,t,i,f,e.nativeNode):Oh(e.nativeNode,t,i,f)}function Vs(e,t,i,f,y,I){const B=function Fe(e,t){const i=null===e?-1:e.index;return-1!==i?Oi(t[i]):null}(e,t);if(11&e.type){if(Rh(B,i,f,y,I),Xn(e)){const oe=Zt(e.index,t);oe&&oe[rn].firstChild&&Vs(oe[rn].firstChild,oe,i,f,y,I)}else e.child&&Vs(e.child,t,i,f,y,I),B&&Oh(B,i,f,y);const K=t[e.index];Mi(K)&&ov(K,i,f,y,I)}else if(4&e.type){const K=t[e.index];Rh(K[nn],i,f,y,I),ov(K,i,f,y,I)}else if(16&e.type){const K=t[Gt],xe=K[xi].projection[e.projection];if(Array.isArray(xe))for(let Ve of xe)Rh(Ve,i,f,y,I);else if(xe){const Ve=K[ti];Vs(Ve[rn].data[xe.index],Ve,i,f,y,I)}}else e.child&&Vs(e.child,t,i,f,y,I);if(I!==B){const K=2&e.flags?e.projectionNext:e.next;K&&Vs(K,t,i,f,y,I)}}function ov(e,t,i,f,y){for(let I=Vn;It;class av{constructor(t){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=t||iw}forEachItem(t){let i;for(i=this._itHead;null!==i;i=i._next)t(i)}forEachOperation(t){let i=this._itHead,f=this._removalsHead,y=0,I=null;for(;i||f;){const B=!f||i&&i.currentIndex{B=this._trackByFn(y,K),null!==i&&Object.is(i.trackById,B)?(f&&(i=this._verifyReinsertion(i,K,B,y)),Object.is(i.item,K)||this._addIdentityChange(i,K)):(i=this._mismatch(i,K,B,y),f=!0),i=i._next,y++}),this.length=y;return this._truncate(i),this.collection=t,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let t;for(t=this._previousItHead=this._itHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._additionsHead;null!==t;t=t._nextAdded)t.previousIndex=t.currentIndex;for(this._additionsHead=this._additionsTail=null,t=this._movesHead;null!==t;t=t._nextMoved)t.previousIndex=t.currentIndex;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(t,i,f,y){let I;return null===t?I=this._itTail:(I=t._prev,this._remove(t)),null!==(t=null===this._unlinkedRecords?null:this._unlinkedRecords.get(f,null))?(Object.is(t.item,i)||this._addIdentityChange(t,i),this._reinsertAfter(t,I,y)):null!==(t=null===this._linkedRecords?null:this._linkedRecords.get(f,y))?(Object.is(t.item,i)||this._addIdentityChange(t,i),this._moveAfter(t,I,y)):t=this._addAfter(new rw(i,f),I,y),t}_verifyReinsertion(t,i,f,y){let I=null===this._unlinkedRecords?null:this._unlinkedRecords.get(f,null);return null!==I?t=this._reinsertAfter(I,t._prev,y):t.currentIndex!=y&&(t.currentIndex=y,this._addToMoves(t,y)),t}_truncate(t){for(;null!==t;){const i=t._next;this._addToRemovals(this._unlink(t)),t=i}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(t,i,f){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(t);const y=t._prevRemoved,I=t._nextRemoved;return null===y?this._removalsHead=I:y._nextRemoved=I,null===I?this._removalsTail=y:I._prevRemoved=y,this._insertAfter(t,i,f),this._addToMoves(t,f),t}_moveAfter(t,i,f){return this._unlink(t),this._insertAfter(t,i,f),this._addToMoves(t,f),t}_addAfter(t,i,f){return this._insertAfter(t,i,f),this._additionsTail=null===this._additionsTail?this._additionsHead=t:this._additionsTail._nextAdded=t,t}_insertAfter(t,i,f){const y=null===i?this._itHead:i._next;return t._next=y,t._prev=i,null===y?this._itTail=t:y._prev=t,null===i?this._itHead=t:i._next=t,null===this._linkedRecords&&(this._linkedRecords=new lv),this._linkedRecords.put(t),t.currentIndex=f,t}_remove(t){return this._addToRemovals(this._unlink(t))}_unlink(t){null!==this._linkedRecords&&this._linkedRecords.remove(t);const i=t._prev,f=t._next;return null===i?this._itHead=f:i._next=f,null===f?this._itTail=i:f._prev=i,t}_addToMoves(t,i){return t.previousIndex===i||(this._movesTail=null===this._movesTail?this._movesHead=t:this._movesTail._nextMoved=t),t}_addToRemovals(t){return null===this._unlinkedRecords&&(this._unlinkedRecords=new lv),this._unlinkedRecords.put(t),t.currentIndex=null,t._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=t,t._prevRemoved=null):(t._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=t),t}_addIdentityChange(t,i){return t.item=i,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=t:this._identityChangesTail._nextIdentityChange=t,t}}class rw{constructor(t,i){this.item=t,this.trackById=i,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null}}class ow{constructor(){this._head=null,this._tail=null}add(t){null===this._head?(this._head=this._tail=t,t._nextDup=null,t._prevDup=null):(this._tail._nextDup=t,t._prevDup=this._tail,t._nextDup=null,this._tail=t)}get(t,i){let f;for(f=this._head;null!==f;f=f._nextDup)if((null===i||i<=f.currentIndex)&&Object.is(f.trackById,t))return f;return null}remove(t){const i=t._prevDup,f=t._nextDup;return null===i?this._head=f:i._nextDup=f,null===f?this._tail=i:f._prevDup=i,null===this._head}}class lv{constructor(){this.map=new Map}put(t){const i=t.trackById;let f=this.map.get(i);f||(f=new ow,this.map.set(i,f)),f.add(t)}get(t,i){const y=this.map.get(t);return y?y.get(t,i):null}remove(t){const i=t.trackById;return this.map.get(i).remove(t)&&this.map.delete(i),t}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function cv(e,t,i){const f=e.previousIndex;if(null===f)return f;let y=0;return i&&f{if(i&&i.key===y)this._maybeAddToChanges(i,f),this._appendAfter=i,i=i._next;else{const I=this._getOrCreateRecordForKey(y,f);i=this._insertBeforeOrAppend(i,I)}}),i){i._prev&&(i._prev._next=null),this._removalsHead=i;for(let f=i;null!==f;f=f._nextRemoved)f===this._mapHead&&(this._mapHead=null),this._records.delete(f.key),f._nextRemoved=f._next,f.previousValue=f.currentValue,f.currentValue=null,f._prev=null,f._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(t,i){if(t){const f=t._prev;return i._next=t,i._prev=f,t._prev=i,f&&(f._next=i),t===this._mapHead&&(this._mapHead=i),this._appendAfter=t,t}return this._appendAfter?(this._appendAfter._next=i,i._prev=this._appendAfter):this._mapHead=i,this._appendAfter=i,null}_getOrCreateRecordForKey(t,i){if(this._records.has(t)){const y=this._records.get(t);this._maybeAddToChanges(y,i);const I=y._prev,B=y._next;return I&&(I._next=B),B&&(B._prev=I),y._next=null,y._prev=null,y}const f=new aw(t);return this._records.set(t,f),f.currentValue=i,this._addToAdditions(f),f}_reset(){if(this.isDirty){let t;for(this._previousMapHead=this._mapHead,t=this._previousMapHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._changesHead;null!==t;t=t._nextChanged)t.previousValue=t.currentValue;for(t=this._additionsHead;null!=t;t=t._nextAdded)t.previousValue=t.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(t,i){Object.is(i,t.currentValue)||(t.previousValue=t.currentValue,t.currentValue=i,this._addToChanges(t))}_addToAdditions(t){null===this._additionsHead?this._additionsHead=this._additionsTail=t:(this._additionsTail._nextAdded=t,this._additionsTail=t)}_addToChanges(t){null===this._changesHead?this._changesHead=this._changesTail=t:(this._changesTail._nextChanged=t,this._changesTail=t)}_forEach(t,i){t instanceof Map?t.forEach(i):Object.keys(t).forEach(f=>i(t[f],f))}}class aw{constructor(t){this.key=t,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}function dv(){return new Nh([new sv])}let Nh=(()=>{class e{constructor(i){this.factories=i}static create(i,f){if(null!=f){const y=f.factories.slice();i=i.concat(y)}return new e(i)}static extend(i){return{provide:e,useFactory:f=>e.create(i,f||dv()),deps:[[e,new Sl,new Tl]]}}find(i){const f=this.factories.find(y=>y.supports(i));if(null!=f)return f;throw new T(901,!1)}}return e.\u0275prov=St({token:e,providedIn:"root",factory:dv}),e})();function hv(){return new Uh([new uv])}let Uh=(()=>{class e{constructor(i){this.factories=i}static create(i,f){if(f){const y=f.factories.slice();i=i.concat(y)}return new e(i)}static extend(i){return{provide:e,useFactory:f=>e.create(i,f||hv()),deps:[[e,new Sl,new Tl]]}}find(i){const f=this.factories.find(y=>y.supports(i));if(f)return f;throw new T(901,!1)}}return e.\u0275prov=St({token:e,providedIn:"root",factory:hv}),e})();const lw=[new uv],uw=new Nh([new sv]),dw=new Uh(lw),hw=z_(null,"core",[]);let fw=(()=>{class e{constructor(i){}}return e.\u0275fac=function(i){return new(i||e)(ce(Aa))},e.\u0275mod=ge({type:e}),e.\u0275inj=xt({}),e})();class mw{constructor(){this.views=[],this.indexByContent=new Map}add(t){const i=JSON.stringify(t);if(!this.indexByContent.has(i)){const f=this.views.length;return this.views.push(t),this.indexByContent.set(i,f),f}return this.indexByContent.get(i)}getAll(){return this.views}}let pw=0;function fv(e){return e.ssrId||(e.ssrId="t"+pw++),e.ssrId}function mv(e,t,i){const f=[];return sl(e,t,i,f),f.length}function gw(e,t){const i=new mw,f=new Map,y=e._views;for(const K of y){const oe=xm(K);if(null!==oe){const xe=oe[yn];xe&&!xe.hasAttribute(ia)&&($h(xe,oe,{serializedViewCollection:i,corruptedTextNodes:f}),bw(f,t))}}const I=i.getAll();e.injector.get(Ja).set(Du,I)}function _w(e,t){const i=[];let f="";for(let y=Vn;y0&&Ve===f){const lt=i[i.length-1];lt[Kl]??=1,lt[Kl]++}else f=Ve,i.push(xe)}return i}function Bh(e,t,i){const f=t.index-ft;e[Eu]??={},e[Eu][f]=H1(t,i)}function pv(e,t){const i=t.index-ft;e[Yl]??=[],e[Yl].includes(i)||e[Yl].push(i)}function gv(e,t){const i={},f=e[rn];for(let y=ft;y{let e=!0;return kc()&&(e=!!it(Ja,{optional:!0})?.get(Du,null)),e&&it(vm).add("hydration"),e}},{provide:Xa,useValue:()=>{kc()&&it(rl)&&function Cw(){vv||(vv=!0,function cy(){ym=ly}(),function Z1(){Np=Y1}(),function MC(){c0=xC}(),function J1(){Up=X1}(),function G1(){Rp=W1}(),function Yx(){jg=Kx}(),function Hx(){Ng=jx}(),function Ny(){Jm=Fy}())}()},multi:!0},{provide:Lm,useFactory:()=>kc()&&it(rl)},{provide:Ah,useFactory:()=>{if(kc()&&it(rl)){const e=it(Aa);return it(as),()=>{(function xw(e,t){return e.isStable.pipe((0,l.P)(f=>f)).toPromise().then(()=>{})})(e).then(()=>{!function $x(e){const t=e._views;for(const i of t){const f=xm(i);null!==f&&null!==f[yn]&&dh(f)}}(e)})}}return()=>{}},multi:!0}])}function ww(e){return"boolean"==typeof e?e:null!=e&&"false"!==e}function Ew(e,t=NaN){return isNaN(parseFloat(e))||isNaN(Number(e))?t:Number(e)}function Dw(e){return pr().compileDirectiveDeclaration(Lr,`ng:///${e.type.name}/\u0275fac.js`,e)}function Tw(e){mg(e.type,e.decorators,e.ctorParameters??null,e.propDecorators??null)}function Sw(e){return pr().compileComponentDeclaration(Lr,`ng:///${e.type.name}/\u0275cmp.js`,e)}function Iw(e){return pr(function Aw(e){switch(e){case As.Directive:return"directive";case As.Component:return"component";case As.Injectable:return"injectable";case As.Pipe:return"pipe";case As.NgModule:return"NgModule"}}(e.target)).compileFactoryDeclaration(Lr,`ng:///${e.type.name}/\u0275fac.js`,e)}function kw(e){return pr().compileInjectableDeclaration(Lr,`ng:///${e.type.name}/\u0275prov.js`,e)}function Lw(e){return pr().compileInjectorDeclaration(Lr,`ng:///${e.type.name}/\u0275inj.js`,e)}function Rw(e){return pr().compileNgModuleDeclaration(Lr,`ng:///${e.type.name}/\u0275mod.js`,e)}function Ow(e){return pr().compilePipeDeclaration(Lr,`ng:///${e.type.name}/\u0275pipe.js`,e)}function Pw(e,t){const i=gn(e),f=t.elementInjector||Gl();return new pa(i).create(f,t.projectableNodes,t.hostElement,t.environmentInjector)}function Fw(e){const t=gn(e);if(!t)return null;const i=new pa(t);return{get selector(){return i.selector},get type(){return i.componentType},get inputs(){return i.inputs},get outputs(){return i.outputs},get ngContentSelectors(){return i.ngContentSelectors},get isStandalone(){return t.standalone},get isSignal(){return t.signals}}}function Nw(...e){return e.reduce((t,i)=>Object.assign(t,i,{providers:[...t.providers,...i.providers]}),{providers:[]})}},6223:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{AbstractControl:()=>it,AbstractControlDirective:()=>tt,AbstractFormGroupDirective:()=>Ct,COMPOSITION_BUFFER_MODE:()=>u,CheckboxControlValueAccessor:()=>l,CheckboxRequiredValidator:()=>Vn,ControlContainer:()=>St,DefaultValueAccessor:()=>h,EmailValidator:()=>ci,FormArray:()=>Ir,FormArrayName:()=>gi,FormBuilder:()=>go,FormControl:()=>oi,FormControlDirective:()=>xn,FormControlName:()=>U,FormGroup:()=>Rt,FormGroupDirective:()=>Ti,FormGroupName:()=>xi,FormRecord:()=>Ne,FormsModule:()=>Ko,MaxLengthValidator:()=>ai,MaxValidator:()=>Ut,MinLengthValidator:()=>ni,MinValidator:()=>nn,NG_ASYNC_VALIDATORS:()=>x,NG_VALIDATORS:()=>M,NG_VALUE_ACCESSOR:()=>c,NgControl:()=>bt,NgControlStatus:()=>vt,NgControlStatusGroup:()=>rt,NgForm:()=>si,NgModel:()=>an,NgModelGroup:()=>Ge,NgSelectOption:()=>Pn,NonNullableFormBuilder:()=>Vr,NumberValueAccessor:()=>Jn,PatternValidator:()=>Xi,RadioControlValueAccessor:()=>$i,RangeValueAccessor:()=>fn,ReactiveFormsModule:()=>Yo,RequiredValidator:()=>zn,SelectControlValueAccessor:()=>Gt,SelectMultipleControlValueAccessor:()=>Zi,UntypedFormArray:()=>zo,UntypedFormBuilder:()=>jr,UntypedFormControl:()=>li,UntypedFormGroup:()=>Ye,VERSION:()=>Hr,Validators:()=>L,isFormArray:()=>Wo,isFormControl:()=>Pi,isFormGroup:()=>qe,isFormRecord:()=>dt,\u0275InternalFormsSharedModule:()=>oo,\u0275NgNoValidate:()=>gn,\u0275NgSelectMultipleOption:()=>ur});var n=g(5879),p=g(6814),C=g(2459),b=g(9315),o=g(7398);let v=(()=>{class ye{constructor(he,He){this._renderer=he,this._elementRef=He,this.onChange=Qt=>{},this.onTouched=()=>{}}setProperty(he,He){this._renderer.setProperty(this._elementRef.nativeElement,he,He)}registerOnTouched(he){this.onTouched=he}registerOnChange(he){this.onChange=he}setDisabledState(he){this.setProperty("disabled",he)}}return ye.\u0275fac=function(he){return new(he||ye)(n.\u0275\u0275directiveInject(n.Renderer2),n.\u0275\u0275directiveInject(n.ElementRef))},ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye}),ye})(),a=(()=>{class ye extends v{}return ye.\u0275fac=function(){let _e;return function(He){return(_e||(_e=n.\u0275\u0275getInheritedFactory(ye)))(He||ye)}}(),ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,features:[n.\u0275\u0275InheritDefinitionFeature]}),ye})();const c=new n.InjectionToken("NgValueAccessor"),s={provide:c,useExisting:(0,n.forwardRef)(()=>l),multi:!0};let l=(()=>{class ye extends a{writeValue(he){this.setProperty("checked",he)}}return ye.\u0275fac=function(){let _e;return function(He){return(_e||(_e=n.\u0275\u0275getInheritedFactory(ye)))(He||ye)}}(),ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["input","type","checkbox","formControlName",""],["input","type","checkbox","formControl",""],["input","type","checkbox","ngModel",""]],hostBindings:function(he,He){1&he&&n.\u0275\u0275listener("change",function(En){return He.onChange(En.target.checked)})("blur",function(){return He.onTouched()})},features:[n.\u0275\u0275ProvidersFeature([s]),n.\u0275\u0275InheritDefinitionFeature]}),ye})();const d={provide:c,useExisting:(0,n.forwardRef)(()=>h),multi:!0},u=new n.InjectionToken("CompositionEventMode");let h=(()=>{class ye extends v{constructor(he,He,Qt){super(he,He),this._compositionMode=Qt,this._composing=!1,null==this._compositionMode&&(this._compositionMode=!function r(){const ye=(0,p.\u0275getDOM)()?(0,p.\u0275getDOM)().getUserAgent():"";return/android (\d+)/.test(ye.toLowerCase())}())}writeValue(he){this.setProperty("value",he??"")}_handleInput(he){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(he)}_compositionStart(){this._composing=!0}_compositionEnd(he){this._composing=!1,this._compositionMode&&this.onChange(he)}}return ye.\u0275fac=function(he){return new(he||ye)(n.\u0275\u0275directiveInject(n.Renderer2),n.\u0275\u0275directiveInject(n.ElementRef),n.\u0275\u0275directiveInject(u,8))},ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["input","formControlName","",3,"type","checkbox"],["textarea","formControlName",""],["input","formControl","",3,"type","checkbox"],["textarea","formControl",""],["input","ngModel","",3,"type","checkbox"],["textarea","ngModel",""],["","ngDefaultControl",""]],hostBindings:function(he,He){1&he&&n.\u0275\u0275listener("input",function(En){return He._handleInput(En.target.value)})("blur",function(){return He.onTouched()})("compositionstart",function(){return He._compositionStart()})("compositionend",function(En){return He._compositionEnd(En.target.value)})},features:[n.\u0275\u0275ProvidersFeature([d]),n.\u0275\u0275InheritDefinitionFeature]}),ye})();function m(ye){return null==ye||("string"==typeof ye||Array.isArray(ye))&&0===ye.length}function _(ye){return null!=ye&&"number"==typeof ye.length}const M=new n.InjectionToken("NgValidators"),x=new n.InjectionToken("NgAsyncValidators"),w=/^(?=.{1,254}$)(?=.{1,64}@)[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+)*@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;class L{static min(_e){return A(_e)}static max(_e){return T(_e)}static required(_e){return O(_e)}static requiredTrue(_e){return E(_e)}static email(_e){return D(_e)}static minLength(_e){return R(_e)}static maxLength(_e){return j(_e)}static pattern(_e){return N(_e)}static nullValidator(_e){return null}static compose(_e){return $(_e)}static composeAsync(_e){return Q(_e)}}function A(ye){return _e=>{if(m(_e.value)||m(ye))return null;const he=parseFloat(_e.value);return!isNaN(he)&&he{if(m(_e.value)||m(ye))return null;const he=parseFloat(_e.value);return!isNaN(he)&&he>ye?{max:{max:ye,actual:_e.value}}:null}}function O(ye){return m(ye.value)?{required:!0}:null}function E(ye){return!0===ye.value?null:{required:!0}}function D(ye){return m(ye.value)||w.test(ye.value)?null:{email:!0}}function R(ye){return _e=>m(_e.value)||!_(_e.value)?null:_e.value.length_(_e.value)&&_e.value.length>ye?{maxlength:{requiredLength:ye,actualLength:_e.value.length}}:null}function N(ye){if(!ye)return S;let _e,he;return"string"==typeof ye?(he="","^"!==ye.charAt(0)&&(he+="^"),he+=ye,"$"!==ye.charAt(ye.length-1)&&(he+="$"),_e=new RegExp(he)):(he=ye.toString(),_e=ye),He=>{if(m(He.value))return null;const Qt=He.value;return _e.test(Qt)?null:{pattern:{requiredPattern:he,actualValue:Qt}}}}function S(ye){return null}function k(ye){return null!=ye}function F(ye){return(0,n.\u0275isPromise)(ye)?(0,C.D)(ye):ye}function Y(ye){let _e={};return ye.forEach(he=>{_e=null!=he?{..._e,...he}:_e}),0===Object.keys(_e).length?null:_e}function se(ye,_e){return _e.map(he=>he(ye))}function me(ye){return ye.map(_e=>function ne(ye){return!ye.validate}(_e)?_e:he=>_e.validate(he))}function $(ye){if(!ye)return null;const _e=ye.filter(k);return 0==_e.length?null:function(he){return Y(se(he,_e))}}function q(ye){return null!=ye?$(me(ye)):null}function Q(ye){if(!ye)return null;const _e=ye.filter(k);return 0==_e.length?null:function(he){const He=se(he,_e).map(F);return(0,b.D)(He).pipe((0,o.U)(Y))}}function ue(ye){return null!=ye?Q(me(ye)):null}function Me(ye,_e){return null===ye?[_e]:Array.isArray(ye)?[...ye,_e]:[ye,_e]}function Oe(ye){return ye._rawValidators}function Xe(ye){return ye._rawAsyncValidators}function Be(ye){return ye?Array.isArray(ye)?ye:[ye]:[]}function $e(ye,_e){return Array.isArray(ye)?ye.includes(_e):ye===_e}function st(ye,_e){const he=Be(_e);return Be(ye).forEach(Qt=>{$e(he,Qt)||he.push(Qt)}),he}function Mt(ye,_e){return Be(_e).filter(he=>!$e(ye,he))}class tt{constructor(){this._rawValidators=[],this._rawAsyncValidators=[],this._onDestroyCallbacks=[]}get value(){return this.control?this.control.value:null}get valid(){return this.control?this.control.valid:null}get invalid(){return this.control?this.control.invalid:null}get pending(){return this.control?this.control.pending:null}get disabled(){return this.control?this.control.disabled:null}get enabled(){return this.control?this.control.enabled:null}get errors(){return this.control?this.control.errors:null}get pristine(){return this.control?this.control.pristine:null}get dirty(){return this.control?this.control.dirty:null}get touched(){return this.control?this.control.touched:null}get status(){return this.control?this.control.status:null}get untouched(){return this.control?this.control.untouched:null}get statusChanges(){return this.control?this.control.statusChanges:null}get valueChanges(){return this.control?this.control.valueChanges:null}get path(){return null}_setValidators(_e){this._rawValidators=_e||[],this._composedValidatorFn=q(this._rawValidators)}_setAsyncValidators(_e){this._rawAsyncValidators=_e||[],this._composedAsyncValidatorFn=ue(this._rawAsyncValidators)}get validator(){return this._composedValidatorFn||null}get asyncValidator(){return this._composedAsyncValidatorFn||null}_registerOnDestroy(_e){this._onDestroyCallbacks.push(_e)}_invokeOnDestroyCallbacks(){this._onDestroyCallbacks.forEach(_e=>_e()),this._onDestroyCallbacks=[]}reset(_e=void 0){this.control&&this.control.reset(_e)}hasError(_e,he){return!!this.control&&this.control.hasError(_e,he)}getError(_e,he){return this.control?this.control.getError(_e,he):null}}class St extends tt{get formDirective(){return null}get path(){return null}}class bt extends tt{constructor(){super(...arguments),this._parent=null,this.name=null,this.valueAccessor=null}}class xt{constructor(_e){this._cd=_e}get isTouched(){return!!this._cd?.control?.touched}get isUntouched(){return!!this._cd?.control?.untouched}get isPristine(){return!!this._cd?.control?.pristine}get isDirty(){return!!this._cd?.control?.dirty}get isValid(){return!!this._cd?.control?.valid}get isInvalid(){return!!this._cd?.control?.invalid}get isPending(){return!!this._cd?.control?.pending}get isSubmitted(){return!!this._cd?.submitted}}let vt=(()=>{class ye extends xt{constructor(he){super(he)}}return ye.\u0275fac=function(he){return new(he||ye)(n.\u0275\u0275directiveInject(bt,2))},ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["","formControlName",""],["","ngModel",""],["","formControl",""]],hostVars:14,hostBindings:function(he,He){2&he&&n.\u0275\u0275classProp("ng-untouched",He.isUntouched)("ng-touched",He.isTouched)("ng-pristine",He.isPristine)("ng-dirty",He.isDirty)("ng-valid",He.isValid)("ng-invalid",He.isInvalid)("ng-pending",He.isPending)},features:[n.\u0275\u0275InheritDefinitionFeature]}),ye})(),rt=(()=>{class ye extends xt{constructor(he){super(he)}}return ye.\u0275fac=function(he){return new(he||ye)(n.\u0275\u0275directiveInject(St,10))},ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["","formGroupName",""],["","formArrayName",""],["","ngModelGroup",""],["","formGroup",""],["form",3,"ngNoForm",""],["","ngForm",""]],hostVars:16,hostBindings:function(he,He){2&he&&n.\u0275\u0275classProp("ng-untouched",He.isUntouched)("ng-touched",He.isTouched)("ng-pristine",He.isPristine)("ng-dirty",He.isDirty)("ng-valid",He.isValid)("ng-invalid",He.isInvalid)("ng-pending",He.isPending)("ng-submitted",He.isSubmitted)},features:[n.\u0275\u0275InheritDefinitionFeature]}),ye})();const We="VALID",ve="INVALID",we="PENDING",at="DISABLED";function De(ye){return(re(ye)?ye.validators:ye)||null}function ke(ye,_e){return(re(_e)?_e.asyncValidators:ye)||null}function re(ye){return null!=ye&&!Array.isArray(ye)&&"object"==typeof ye}function ce(ye,_e,he){const He=ye.controls;if(!(_e?Object.keys(He):He).length)throw new n.\u0275RuntimeError(1e3,"");if(!He[he])throw new n.\u0275RuntimeError(1001,"")}function Ee(ye,_e,he){ye._forEachChild((He,Qt)=>{if(void 0===he[Qt])throw new n.\u0275RuntimeError(1002,"")})}class it{constructor(_e,he){this._pendingDirty=!1,this._hasOwnPendingAsyncValidator=!1,this._pendingTouched=!1,this._onCollectionChange=()=>{},this._parent=null,this.pristine=!0,this.touched=!1,this._onDisabledChange=[],this._assignValidators(_e),this._assignAsyncValidators(he)}get validator(){return this._composedValidatorFn}set validator(_e){this._rawValidators=this._composedValidatorFn=_e}get asyncValidator(){return this._composedAsyncValidatorFn}set asyncValidator(_e){this._rawAsyncValidators=this._composedAsyncValidatorFn=_e}get parent(){return this._parent}get valid(){return this.status===We}get invalid(){return this.status===ve}get pending(){return this.status==we}get disabled(){return this.status===at}get enabled(){return this.status!==at}get dirty(){return!this.pristine}get untouched(){return!this.touched}get updateOn(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}setValidators(_e){this._assignValidators(_e)}setAsyncValidators(_e){this._assignAsyncValidators(_e)}addValidators(_e){this.setValidators(st(_e,this._rawValidators))}addAsyncValidators(_e){this.setAsyncValidators(st(_e,this._rawAsyncValidators))}removeValidators(_e){this.setValidators(Mt(_e,this._rawValidators))}removeAsyncValidators(_e){this.setAsyncValidators(Mt(_e,this._rawAsyncValidators))}hasValidator(_e){return $e(this._rawValidators,_e)}hasAsyncValidator(_e){return $e(this._rawAsyncValidators,_e)}clearValidators(){this.validator=null}clearAsyncValidators(){this.asyncValidator=null}markAsTouched(_e={}){this.touched=!0,this._parent&&!_e.onlySelf&&this._parent.markAsTouched(_e)}markAllAsTouched(){this.markAsTouched({onlySelf:!0}),this._forEachChild(_e=>_e.markAllAsTouched())}markAsUntouched(_e={}){this.touched=!1,this._pendingTouched=!1,this._forEachChild(he=>{he.markAsUntouched({onlySelf:!0})}),this._parent&&!_e.onlySelf&&this._parent._updateTouched(_e)}markAsDirty(_e={}){this.pristine=!1,this._parent&&!_e.onlySelf&&this._parent.markAsDirty(_e)}markAsPristine(_e={}){this.pristine=!0,this._pendingDirty=!1,this._forEachChild(he=>{he.markAsPristine({onlySelf:!0})}),this._parent&&!_e.onlySelf&&this._parent._updatePristine(_e)}markAsPending(_e={}){this.status=we,!1!==_e.emitEvent&&this.statusChanges.emit(this.status),this._parent&&!_e.onlySelf&&this._parent.markAsPending(_e)}disable(_e={}){const he=this._parentMarkedDirty(_e.onlySelf);this.status=at,this.errors=null,this._forEachChild(He=>{He.disable({..._e,onlySelf:!0})}),this._updateValue(),!1!==_e.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors({..._e,skipPristineCheck:he}),this._onDisabledChange.forEach(He=>He(!0))}enable(_e={}){const he=this._parentMarkedDirty(_e.onlySelf);this.status=We,this._forEachChild(He=>{He.enable({..._e,onlySelf:!0})}),this.updateValueAndValidity({onlySelf:!0,emitEvent:_e.emitEvent}),this._updateAncestors({..._e,skipPristineCheck:he}),this._onDisabledChange.forEach(He=>He(!1))}_updateAncestors(_e){this._parent&&!_e.onlySelf&&(this._parent.updateValueAndValidity(_e),_e.skipPristineCheck||this._parent._updatePristine(),this._parent._updateTouched())}setParent(_e){this._parent=_e}getRawValue(){return this.value}updateValueAndValidity(_e={}){this._setInitialStatus(),this._updateValue(),this.enabled&&(this._cancelExistingSubscription(),this.errors=this._runValidator(),this.status=this._calculateStatus(),(this.status===We||this.status===we)&&this._runAsyncValidator(_e.emitEvent)),!1!==_e.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._parent&&!_e.onlySelf&&this._parent.updateValueAndValidity(_e)}_updateTreeValidity(_e={emitEvent:!0}){this._forEachChild(he=>he._updateTreeValidity(_e)),this.updateValueAndValidity({onlySelf:!0,emitEvent:_e.emitEvent})}_setInitialStatus(){this.status=this._allControlsDisabled()?at:We}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(_e){if(this.asyncValidator){this.status=we,this._hasOwnPendingAsyncValidator=!0;const he=F(this.asyncValidator(this));this._asyncValidationSubscription=he.subscribe(He=>{this._hasOwnPendingAsyncValidator=!1,this.setErrors(He,{emitEvent:_e})})}}_cancelExistingSubscription(){this._asyncValidationSubscription&&(this._asyncValidationSubscription.unsubscribe(),this._hasOwnPendingAsyncValidator=!1)}setErrors(_e,he={}){this.errors=_e,this._updateControlsErrors(!1!==he.emitEvent)}get(_e){let he=_e;return null==he||(Array.isArray(he)||(he=he.split(".")),0===he.length)?null:he.reduce((He,Qt)=>He&&He._find(Qt),this)}getError(_e,he){const He=he?this.get(he):this;return He&&He.errors?He.errors[_e]:null}hasError(_e,he){return!!this.getError(_e,he)}get root(){let _e=this;for(;_e._parent;)_e=_e._parent;return _e}_updateControlsErrors(_e){this.status=this._calculateStatus(),_e&&this.statusChanges.emit(this.status),this._parent&&this._parent._updateControlsErrors(_e)}_initObservables(){this.valueChanges=new n.EventEmitter,this.statusChanges=new n.EventEmitter}_calculateStatus(){return this._allControlsDisabled()?at:this.errors?ve:this._hasOwnPendingAsyncValidator||this._anyControlsHaveStatus(we)?we:this._anyControlsHaveStatus(ve)?ve:We}_anyControlsHaveStatus(_e){return this._anyControls(he=>he.status===_e)}_anyControlsDirty(){return this._anyControls(_e=>_e.dirty)}_anyControlsTouched(){return this._anyControls(_e=>_e.touched)}_updatePristine(_e={}){this.pristine=!this._anyControlsDirty(),this._parent&&!_e.onlySelf&&this._parent._updatePristine(_e)}_updateTouched(_e={}){this.touched=this._anyControlsTouched(),this._parent&&!_e.onlySelf&&this._parent._updateTouched(_e)}_registerOnCollectionChange(_e){this._onCollectionChange=_e}_setUpdateStrategy(_e){re(_e)&&null!=_e.updateOn&&(this._updateOn=_e.updateOn)}_parentMarkedDirty(_e){return!_e&&!(!this._parent||!this._parent.dirty)&&!this._parent._anyControlsDirty()}_find(_e){return null}_assignValidators(_e){this._rawValidators=Array.isArray(_e)?_e.slice():_e,this._composedValidatorFn=function je(ye){return Array.isArray(ye)?q(ye):ye||null}(this._rawValidators)}_assignAsyncValidators(_e){this._rawAsyncValidators=Array.isArray(_e)?_e.slice():_e,this._composedAsyncValidatorFn=function Z(ye){return Array.isArray(ye)?ue(ye):ye||null}(this._rawAsyncValidators)}}class Rt extends it{constructor(_e,he,He){super(De(he),ke(He,he)),this.controls=_e,this._initObservables(),this._setUpdateStrategy(he),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}registerControl(_e,he){return this.controls[_e]?this.controls[_e]:(this.controls[_e]=he,he.setParent(this),he._registerOnCollectionChange(this._onCollectionChange),he)}addControl(_e,he,He={}){this.registerControl(_e,he),this.updateValueAndValidity({emitEvent:He.emitEvent}),this._onCollectionChange()}removeControl(_e,he={}){this.controls[_e]&&this.controls[_e]._registerOnCollectionChange(()=>{}),delete this.controls[_e],this.updateValueAndValidity({emitEvent:he.emitEvent}),this._onCollectionChange()}setControl(_e,he,He={}){this.controls[_e]&&this.controls[_e]._registerOnCollectionChange(()=>{}),delete this.controls[_e],he&&this.registerControl(_e,he),this.updateValueAndValidity({emitEvent:He.emitEvent}),this._onCollectionChange()}contains(_e){return this.controls.hasOwnProperty(_e)&&this.controls[_e].enabled}setValue(_e,he={}){Ee(this,0,_e),Object.keys(_e).forEach(He=>{ce(this,!0,He),this.controls[He].setValue(_e[He],{onlySelf:!0,emitEvent:he.emitEvent})}),this.updateValueAndValidity(he)}patchValue(_e,he={}){null!=_e&&(Object.keys(_e).forEach(He=>{const Qt=this.controls[He];Qt&&Qt.patchValue(_e[He],{onlySelf:!0,emitEvent:he.emitEvent})}),this.updateValueAndValidity(he))}reset(_e={},he={}){this._forEachChild((He,Qt)=>{He.reset(_e[Qt],{onlySelf:!0,emitEvent:he.emitEvent})}),this._updatePristine(he),this._updateTouched(he),this.updateValueAndValidity(he)}getRawValue(){return this._reduceChildren({},(_e,he,He)=>(_e[He]=he.getRawValue(),_e))}_syncPendingControls(){let _e=this._reduceChildren(!1,(he,He)=>!!He._syncPendingControls()||he);return _e&&this.updateValueAndValidity({onlySelf:!0}),_e}_forEachChild(_e){Object.keys(this.controls).forEach(he=>{const He=this.controls[he];He&&_e(He,he)})}_setUpControls(){this._forEachChild(_e=>{_e.setParent(this),_e._registerOnCollectionChange(this._onCollectionChange)})}_updateValue(){this.value=this._reduceValue()}_anyControls(_e){for(const[he,He]of Object.entries(this.controls))if(this.contains(he)&&_e(He))return!0;return!1}_reduceValue(){return this._reduceChildren({},(he,He,Qt)=>((He.enabled||this.disabled)&&(he[Qt]=He.value),he))}_reduceChildren(_e,he){let He=_e;return this._forEachChild((Qt,En)=>{He=he(He,Qt,En)}),He}_allControlsDisabled(){for(const _e of Object.keys(this.controls))if(this.controls[_e].enabled)return!1;return Object.keys(this.controls).length>0||this.disabled}_find(_e){return this.controls.hasOwnProperty(_e)?this.controls[_e]:null}}const Ye=Rt,qe=ye=>ye instanceof Rt;class Ne extends Rt{}const dt=ye=>ye instanceof Ne,At=new n.InjectionToken("CallSetDisabledState",{providedIn:"root",factory:()=>tn}),tn="always";function wn(ye,_e){return[..._e.path,ye]}function Tn(ye,_e,he=tn){di(ye,_e),_e.valueAccessor.writeValue(ye.value),(ye.disabled||"always"===he)&&_e.valueAccessor.setDisabledState?.(ye.disabled),function Qi(ye,_e){_e.valueAccessor.registerOnChange(he=>{ye._pendingValue=he,ye._pendingChange=!0,ye._pendingDirty=!0,"change"===ye.updateOn&&mt(ye,_e)})}(ye,_e),function pt(ye,_e){const he=(He,Qt)=>{_e.valueAccessor.writeValue(He),Qt&&_e.viewToModelUpdate(He)};ye.registerOnChange(he),_e._registerOnDestroy(()=>{ye._unregisterOnChange(he)})}(ye,_e),function wt(ye,_e){_e.valueAccessor.registerOnTouched(()=>{ye._pendingTouched=!0,"blur"===ye.updateOn&&ye._pendingChange&&mt(ye,_e),"submit"!==ye.updateOn&&ye.markAsTouched()})}(ye,_e),function Ci(ye,_e){if(_e.valueAccessor.setDisabledState){const he=He=>{_e.valueAccessor.setDisabledState(He)};ye.registerOnDisabledChange(he),_e._registerOnDestroy(()=>{ye._unregisterOnDisabledChange(he)})}}(ye,_e)}function Sn(ye,_e,he=!0){const He=()=>{};_e.valueAccessor&&(_e.valueAccessor.registerOnChange(He),_e.valueAccessor.registerOnTouched(He)),Li(ye,_e),ye&&(_e._invokeOnDestroyCallbacks(),ye._registerOnCollectionChange(()=>{}))}function Mn(ye,_e){ye.forEach(he=>{he.registerOnValidatorChange&&he.registerOnValidatorChange(_e)})}function di(ye,_e){const he=Oe(ye);null!==_e.validator?ye.setValidators(Me(he,_e.validator)):"function"==typeof he&&ye.setValidators([he]);const He=Xe(ye);null!==_e.asyncValidator?ye.setAsyncValidators(Me(He,_e.asyncValidator)):"function"==typeof He&&ye.setAsyncValidators([He]);const Qt=()=>ye.updateValueAndValidity();Mn(_e._rawValidators,Qt),Mn(_e._rawAsyncValidators,Qt)}function Li(ye,_e){let he=!1;if(null!==ye){if(null!==_e.validator){const Qt=Oe(ye);if(Array.isArray(Qt)&&Qt.length>0){const En=Qt.filter(tr=>tr!==_e.validator);En.length!==Qt.length&&(he=!0,ye.setValidators(En))}}if(null!==_e.asyncValidator){const Qt=Xe(ye);if(Array.isArray(Qt)&&Qt.length>0){const En=Qt.filter(tr=>tr!==_e.asyncValidator);En.length!==Qt.length&&(he=!0,ye.setAsyncValidators(En))}}}const He=()=>{};return Mn(_e._rawValidators,He),Mn(_e._rawAsyncValidators,He),he}function mt(ye,_e){ye._pendingDirty&&ye.markAsDirty(),ye.setValue(ye._pendingValue,{emitModelToViewChange:!1}),_e.viewToModelUpdate(ye._pendingValue),ye._pendingChange=!1}function qt(ye,_e){di(ye,_e)}function mi(ye,_e){if(!ye.hasOwnProperty("model"))return!1;const he=ye.model;return!!he.isFirstChange()||!Object.is(_e,he.currentValue)}function ri(ye,_e){ye._syncPendingControls(),_e.forEach(he=>{const He=he.control;"submit"===He.updateOn&&He._pendingChange&&(he.viewToModelUpdate(He._pendingValue),He._pendingChange=!1)})}function ln(ye,_e){if(!_e)return null;let he,He,Qt;return Array.isArray(_e),_e.forEach(En=>{En.constructor===h?he=En:function Qn(ye){return Object.getPrototypeOf(ye.constructor)===a}(En)?He=En:Qt=En}),Qt||He||he||null}const An={provide:St,useExisting:(0,n.forwardRef)(()=>si)},Yn=(()=>Promise.resolve())();let si=(()=>{class ye extends St{constructor(he,He,Qt){super(),this.callSetDisabledState=Qt,this.submitted=!1,this._directives=new Set,this.ngSubmit=new n.EventEmitter,this.form=new Rt({},q(he),ue(He))}ngAfterViewInit(){this._setUpdateStrategy()}get formDirective(){return this}get control(){return this.form}get path(){return[]}get controls(){return this.form.controls}addControl(he){Yn.then(()=>{const He=this._findContainer(he.path);he.control=He.registerControl(he.name,he.control),Tn(he.control,he,this.callSetDisabledState),he.control.updateValueAndValidity({emitEvent:!1}),this._directives.add(he)})}getControl(he){return this.form.get(he.path)}removeControl(he){Yn.then(()=>{const He=this._findContainer(he.path);He&&He.removeControl(he.name),this._directives.delete(he)})}addFormGroup(he){Yn.then(()=>{const He=this._findContainer(he.path),Qt=new Rt({});qt(Qt,he),He.registerControl(he.name,Qt),Qt.updateValueAndValidity({emitEvent:!1})})}removeFormGroup(he){Yn.then(()=>{const He=this._findContainer(he.path);He&&He.removeControl(he.name)})}getFormGroup(he){return this.form.get(he.path)}updateModel(he,He){Yn.then(()=>{this.form.get(he.path).setValue(He)})}setValue(he){this.control.setValue(he)}onSubmit(he){return this.submitted=!0,ri(this.form,this._directives),this.ngSubmit.emit(he),"dialog"===he?.target?.method}onReset(){this.resetForm()}resetForm(he=void 0){this.form.reset(he),this.submitted=!1}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.form._updateOn=this.options.updateOn)}_findContainer(he){return he.pop(),he.length?this.form.get(he):this.form}}return ye.\u0275fac=function(he){return new(he||ye)(n.\u0275\u0275directiveInject(M,10),n.\u0275\u0275directiveInject(x,10),n.\u0275\u0275directiveInject(At,8))},ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["form",3,"ngNoForm","",3,"formGroup",""],["ng-form"],["","ngForm",""]],hostBindings:function(he,He){1&he&&n.\u0275\u0275listener("submit",function(En){return He.onSubmit(En)})("reset",function(){return He.onReset()})},inputs:{options:["ngFormOptions","options"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[n.\u0275\u0275ProvidersFeature([An]),n.\u0275\u0275InheritDefinitionFeature]}),ye})();function ii(ye,_e){const he=ye.indexOf(_e);he>-1&&ye.splice(he,1)}function Ii(ye){return"object"==typeof ye&&null!==ye&&2===Object.keys(ye).length&&"value"in ye&&"disabled"in ye}const oi=class extends it{constructor(_e=null,he,He){super(De(he),ke(He,he)),this.defaultValue=null,this._onChange=[],this._pendingChange=!1,this._applyFormState(_e),this._setUpdateStrategy(he),this._initObservables(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator}),re(he)&&(he.nonNullable||he.initialValueIsDefault)&&(this.defaultValue=Ii(_e)?_e.value:_e)}setValue(_e,he={}){this.value=this._pendingValue=_e,this._onChange.length&&!1!==he.emitModelToViewChange&&this._onChange.forEach(He=>He(this.value,!1!==he.emitViewToModelChange)),this.updateValueAndValidity(he)}patchValue(_e,he={}){this.setValue(_e,he)}reset(_e=this.defaultValue,he={}){this._applyFormState(_e),this.markAsPristine(he),this.markAsUntouched(he),this.setValue(this.value,he),this._pendingChange=!1}_updateValue(){}_anyControls(_e){return!1}_allControlsDisabled(){return this.disabled}registerOnChange(_e){this._onChange.push(_e)}_unregisterOnChange(_e){ii(this._onChange,_e)}registerOnDisabledChange(_e){this._onDisabledChange.push(_e)}_unregisterOnDisabledChange(_e){ii(this._onDisabledChange,_e)}_forEachChild(_e){}_syncPendingControls(){return!("submit"!==this.updateOn||(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),!this._pendingChange)||(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),0))}_applyFormState(_e){Ii(_e)?(this.value=this._pendingValue=_e.value,_e.disabled?this.disable({onlySelf:!0,emitEvent:!1}):this.enable({onlySelf:!0,emitEvent:!1})):this.value=this._pendingValue=_e}},li=oi,Pi=ye=>ye instanceof oi;let Ct=(()=>{class ye extends St{ngOnInit(){this._checkParentType(),this.formDirective.addFormGroup(this)}ngOnDestroy(){this.formDirective&&this.formDirective.removeFormGroup(this)}get control(){return this.formDirective.getFormGroup(this)}get path(){return wn(null==this.name?this.name:this.name.toString(),this._parent)}get formDirective(){return this._parent?this._parent.formDirective:null}_checkParentType(){}}return ye.\u0275fac=function(){let _e;return function(He){return(_e||(_e=n.\u0275\u0275getInheritedFactory(ye)))(He||ye)}}(),ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,features:[n.\u0275\u0275InheritDefinitionFeature]}),ye})();const ge={provide:St,useExisting:(0,n.forwardRef)(()=>Ge)};let Ge=(()=>{class ye extends Ct{constructor(he,He,Qt){super(),this.name="",this._parent=he,this._setValidators(He),this._setAsyncValidators(Qt)}_checkParentType(){}}return ye.\u0275fac=function(he){return new(he||ye)(n.\u0275\u0275directiveInject(St,5),n.\u0275\u0275directiveInject(M,10),n.\u0275\u0275directiveInject(x,10))},ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["","ngModelGroup",""]],inputs:{name:["ngModelGroup","name"]},exportAs:["ngModelGroup"],features:[n.\u0275\u0275ProvidersFeature([ge]),n.\u0275\u0275InheritDefinitionFeature]}),ye})();const It={provide:bt,useExisting:(0,n.forwardRef)(()=>an)},zt=(()=>Promise.resolve())();let an=(()=>{class ye extends bt{constructor(he,He,Qt,En,tr,xr){super(),this._changeDetectorRef=tr,this.callSetDisabledState=xr,this.control=new oi,this._registered=!1,this.name="",this.update=new n.EventEmitter,this._parent=he,this._setValidators(He),this._setAsyncValidators(Qt),this.valueAccessor=ln(0,En)}ngOnChanges(he){if(this._checkForErrors(),!this._registered||"name"in he){if(this._registered&&(this._checkName(),this.formDirective)){const He=he.name.previousValue;this.formDirective.removeControl({name:He,path:this._getPath(He)})}this._setUpControl()}"isDisabled"in he&&this._updateDisabled(he),mi(he,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}get path(){return this._getPath(this.name)}get formDirective(){return this._parent?this._parent.formDirective:null}viewToModelUpdate(he){this.viewModel=he,this.update.emit(he)}_setUpControl(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.control._updateOn=this.options.updateOn)}_isStandalone(){return!this._parent||!(!this.options||!this.options.standalone)}_setUpStandalone(){Tn(this.control,this,this.callSetDisabledState),this.control.updateValueAndValidity({emitEvent:!1})}_checkForErrors(){this._isStandalone()||this._checkParentType(),this._checkName()}_checkParentType(){}_checkName(){this.options&&this.options.name&&(this.name=this.options.name),this._isStandalone()}_updateValue(he){zt.then(()=>{this.control.setValue(he,{emitViewToModelChange:!1}),this._changeDetectorRef?.markForCheck()})}_updateDisabled(he){const He=he.isDisabled.currentValue,Qt=0!==He&&(0,n.booleanAttribute)(He);zt.then(()=>{Qt&&!this.control.disabled?this.control.disable():!Qt&&this.control.disabled&&this.control.enable(),this._changeDetectorRef?.markForCheck()})}_getPath(he){return this._parent?wn(he,this._parent):[he]}}return ye.\u0275fac=function(he){return new(he||ye)(n.\u0275\u0275directiveInject(St,9),n.\u0275\u0275directiveInject(M,10),n.\u0275\u0275directiveInject(x,10),n.\u0275\u0275directiveInject(c,10),n.\u0275\u0275directiveInject(n.ChangeDetectorRef,8),n.\u0275\u0275directiveInject(At,8))},ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["","ngModel","",3,"formControlName","",3,"formControl",""]],inputs:{name:"name",isDisabled:["disabled","isDisabled"],model:["ngModel","model"],options:["ngModelOptions","options"]},outputs:{update:"ngModelChange"},exportAs:["ngModel"],features:[n.\u0275\u0275ProvidersFeature([It]),n.\u0275\u0275InheritDefinitionFeature,n.\u0275\u0275NgOnChangesFeature]}),ye})(),gn=(()=>{class ye{}return ye.\u0275fac=function(he){return new(he||ye)},ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["form",3,"ngNoForm","",3,"ngNativeValidate",""]],hostAttrs:["novalidate",""]}),ye})();const pn={provide:c,useExisting:(0,n.forwardRef)(()=>Jn),multi:!0};let Jn=(()=>{class ye extends a{writeValue(he){this.setProperty("value",he??"")}registerOnChange(he){this.onChange=He=>{he(""==He?null:parseFloat(He))}}}return ye.\u0275fac=function(){let _e;return function(He){return(_e||(_e=n.\u0275\u0275getInheritedFactory(ye)))(He||ye)}}(),ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["input","type","number","formControlName",""],["input","type","number","formControl",""],["input","type","number","ngModel",""]],hostBindings:function(he,He){1&he&&n.\u0275\u0275listener("input",function(En){return He.onChange(En.target.value)})("blur",function(){return He.onTouched()})},features:[n.\u0275\u0275ProvidersFeature([pn]),n.\u0275\u0275InheritDefinitionFeature]}),ye})();const Nn={provide:c,useExisting:(0,n.forwardRef)(()=>$i),multi:!0};let Un=(()=>{class ye{}return ye.\u0275fac=function(he){return new(he||ye)},ye.\u0275mod=n.\u0275\u0275defineNgModule({type:ye}),ye.\u0275inj=n.\u0275\u0275defineInjector({}),ye})(),vi=(()=>{class ye{constructor(){this._accessors=[]}add(he,He){this._accessors.push([he,He])}remove(he){for(let He=this._accessors.length-1;He>=0;--He)if(this._accessors[He][1]===he)return void this._accessors.splice(He,1)}select(he){this._accessors.forEach(He=>{this._isSameGroup(He,he)&&He[1]!==he&&He[1].fireUncheck(he.value)})}_isSameGroup(he,He){return!!he[0].control&&he[0]._parent===He._control._parent&&he[1].name===He.name}}return ye.\u0275fac=function(he){return new(he||ye)},ye.\u0275prov=n.\u0275\u0275defineInjectable({token:ye,factory:ye.\u0275fac,providedIn:Un}),ye})(),$i=(()=>{class ye extends a{constructor(he,He,Qt,En){super(he,He),this._registry=Qt,this._injector=En,this.setDisabledStateFired=!1,this.onChange=()=>{},this.callSetDisabledState=(0,n.inject)(At,{optional:!0})??tn}ngOnInit(){this._control=this._injector.get(bt),this._checkName(),this._registry.add(this._control,this)}ngOnDestroy(){this._registry.remove(this)}writeValue(he){this._state=he===this.value,this.setProperty("checked",this._state)}registerOnChange(he){this._fn=he,this.onChange=()=>{he(this.value),this._registry.select(this)}}setDisabledState(he){(this.setDisabledStateFired||he||"whenDisabledForLegacyCode"===this.callSetDisabledState)&&this.setProperty("disabled",he),this.setDisabledStateFired=!0}fireUncheck(he){this.writeValue(he)}_checkName(){!this.name&&this.formControlName&&(this.name=this.formControlName)}}return ye.\u0275fac=function(he){return new(he||ye)(n.\u0275\u0275directiveInject(n.Renderer2),n.\u0275\u0275directiveInject(n.ElementRef),n.\u0275\u0275directiveInject(vi),n.\u0275\u0275directiveInject(n.Injector))},ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["input","type","radio","formControlName",""],["input","type","radio","formControl",""],["input","type","radio","ngModel",""]],hostBindings:function(he,He){1&he&&n.\u0275\u0275listener("change",function(){return He.onChange()})("blur",function(){return He.onTouched()})},inputs:{name:"name",formControlName:"formControlName",value:"value"},features:[n.\u0275\u0275ProvidersFeature([Nn]),n.\u0275\u0275InheritDefinitionFeature]}),ye})();const er={provide:c,useExisting:(0,n.forwardRef)(()=>fn),multi:!0};let fn=(()=>{class ye extends a{writeValue(he){this.setProperty("value",parseFloat(he))}registerOnChange(he){this.onChange=He=>{he(""==He?null:parseFloat(He))}}}return ye.\u0275fac=function(){let _e;return function(He){return(_e||(_e=n.\u0275\u0275getInheritedFactory(ye)))(He||ye)}}(),ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["input","type","range","formControlName",""],["input","type","range","formControl",""],["input","type","range","ngModel",""]],hostBindings:function(he,He){1&he&&n.\u0275\u0275listener("change",function(En){return He.onChange(En.target.value)})("input",function(En){return He.onChange(En.target.value)})("blur",function(){return He.onTouched()})},features:[n.\u0275\u0275ProvidersFeature([er]),n.\u0275\u0275InheritDefinitionFeature]}),ye})();const yn=new n.InjectionToken("NgModelWithFormControlWarning"),rn={provide:bt,useExisting:(0,n.forwardRef)(()=>xn)};let xn=(()=>{class ye extends bt{set isDisabled(he){}constructor(he,He,Qt,En,tr){super(),this._ngModelWarningConfig=En,this.callSetDisabledState=tr,this.update=new n.EventEmitter,this._ngModelWarningSent=!1,this._setValidators(he),this._setAsyncValidators(He),this.valueAccessor=ln(0,Qt)}ngOnChanges(he){if(this._isControlChanged(he)){const He=he.form.previousValue;He&&Sn(He,this,!1),Tn(this.form,this,this.callSetDisabledState),this.form.updateValueAndValidity({emitEvent:!1})}mi(he,this.viewModel)&&(this.form.setValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.form&&Sn(this.form,this,!1)}get path(){return[]}get control(){return this.form}viewToModelUpdate(he){this.viewModel=he,this.update.emit(he)}_isControlChanged(he){return he.hasOwnProperty("form")}}return ye._ngModelWarningSentOnce=!1,ye.\u0275fac=function(he){return new(he||ye)(n.\u0275\u0275directiveInject(M,10),n.\u0275\u0275directiveInject(x,10),n.\u0275\u0275directiveInject(c,10),n.\u0275\u0275directiveInject(yn,8),n.\u0275\u0275directiveInject(At,8))},ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["","formControl",""]],inputs:{form:["formControl","form"],isDisabled:["disabled","isDisabled"],model:["ngModel","model"]},outputs:{update:"ngModelChange"},exportAs:["ngForm"],features:[n.\u0275\u0275ProvidersFeature([rn]),n.\u0275\u0275InheritDefinitionFeature,n.\u0275\u0275NgOnChangesFeature]}),ye})();const ti={provide:St,useExisting:(0,n.forwardRef)(()=>Ti)};let Ti=(()=>{class ye extends St{constructor(he,He,Qt){super(),this.callSetDisabledState=Qt,this.submitted=!1,this._onCollectionChange=()=>this._updateDomValue(),this.directives=[],this.form=null,this.ngSubmit=new n.EventEmitter,this._setValidators(he),this._setAsyncValidators(He)}ngOnChanges(he){this._checkFormPresent(),he.hasOwnProperty("form")&&(this._updateValidators(),this._updateDomValue(),this._updateRegistrations(),this._oldForm=this.form)}ngOnDestroy(){this.form&&(Li(this.form,this),this.form._onCollectionChange===this._onCollectionChange&&this.form._registerOnCollectionChange(()=>{}))}get formDirective(){return this}get control(){return this.form}get path(){return[]}addControl(he){const He=this.form.get(he.path);return Tn(He,he,this.callSetDisabledState),He.updateValueAndValidity({emitEvent:!1}),this.directives.push(he),He}getControl(he){return this.form.get(he.path)}removeControl(he){Sn(he.control||null,he,!1),function en(ye,_e){const he=ye.indexOf(_e);he>-1&&ye.splice(he,1)}(this.directives,he)}addFormGroup(he){this._setUpFormContainer(he)}removeFormGroup(he){this._cleanUpFormContainer(he)}getFormGroup(he){return this.form.get(he.path)}addFormArray(he){this._setUpFormContainer(he)}removeFormArray(he){this._cleanUpFormContainer(he)}getFormArray(he){return this.form.get(he.path)}updateModel(he,He){this.form.get(he.path).setValue(He)}onSubmit(he){return this.submitted=!0,ri(this.form,this.directives),this.ngSubmit.emit(he),"dialog"===he?.target?.method}onReset(){this.resetForm()}resetForm(he=void 0){this.form.reset(he),this.submitted=!1}_updateDomValue(){this.directives.forEach(he=>{const He=he.control,Qt=this.form.get(he.path);He!==Qt&&(Sn(He||null,he),Pi(Qt)&&(Tn(Qt,he,this.callSetDisabledState),he.control=Qt))}),this.form._updateTreeValidity({emitEvent:!1})}_setUpFormContainer(he){const He=this.form.get(he.path);qt(He,he),He.updateValueAndValidity({emitEvent:!1})}_cleanUpFormContainer(he){if(this.form){const He=this.form.get(he.path);He&&function on(ye,_e){return Li(ye,_e)}(He,he)&&He.updateValueAndValidity({emitEvent:!1})}}_updateRegistrations(){this.form._registerOnCollectionChange(this._onCollectionChange),this._oldForm&&this._oldForm._registerOnCollectionChange(()=>{})}_updateValidators(){di(this.form,this),this._oldForm&&Li(this._oldForm,this)}_checkFormPresent(){}}return ye.\u0275fac=function(he){return new(he||ye)(n.\u0275\u0275directiveInject(M,10),n.\u0275\u0275directiveInject(x,10),n.\u0275\u0275directiveInject(At,8))},ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["","formGroup",""]],hostBindings:function(he,He){1&he&&n.\u0275\u0275listener("submit",function(En){return He.onSubmit(En)})("reset",function(){return He.onReset()})},inputs:{form:["formGroup","form"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[n.\u0275\u0275ProvidersFeature([ti]),n.\u0275\u0275InheritDefinitionFeature,n.\u0275\u0275NgOnChangesFeature]}),ye})();const zi={provide:St,useExisting:(0,n.forwardRef)(()=>xi)};let xi=(()=>{class ye extends Ct{constructor(he,He,Qt){super(),this.name=null,this._parent=he,this._setValidators(He),this._setAsyncValidators(Qt)}_checkParentType(){Ke(this._parent)}}return ye.\u0275fac=function(he){return new(he||ye)(n.\u0275\u0275directiveInject(St,13),n.\u0275\u0275directiveInject(M,10),n.\u0275\u0275directiveInject(x,10))},ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["","formGroupName",""]],inputs:{name:["formGroupName","name"]},features:[n.\u0275\u0275ProvidersFeature([zi]),n.\u0275\u0275InheritDefinitionFeature]}),ye})();const _r={provide:St,useExisting:(0,n.forwardRef)(()=>gi)};let gi=(()=>{class ye extends St{constructor(he,He,Qt){super(),this.name=null,this._parent=he,this._setValidators(He),this._setAsyncValidators(Qt)}ngOnInit(){this._checkParentType(),this.formDirective.addFormArray(this)}ngOnDestroy(){this.formDirective&&this.formDirective.removeFormArray(this)}get control(){return this.formDirective.getFormArray(this)}get formDirective(){return this._parent?this._parent.formDirective:null}get path(){return wn(null==this.name?this.name:this.name.toString(),this._parent)}_checkParentType(){Ke(this._parent)}}return ye.\u0275fac=function(he){return new(he||ye)(n.\u0275\u0275directiveInject(St,13),n.\u0275\u0275directiveInject(M,10),n.\u0275\u0275directiveInject(x,10))},ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["","formArrayName",""]],inputs:{name:["formArrayName","name"]},features:[n.\u0275\u0275ProvidersFeature([_r]),n.\u0275\u0275InheritDefinitionFeature]}),ye})();function Ke(ye){return!(ye instanceof xi||ye instanceof Ti||ye instanceof gi)}const kt={provide:bt,useExisting:(0,n.forwardRef)(()=>U)};let U=(()=>{class ye extends bt{set isDisabled(he){}constructor(he,He,Qt,En,tr){super(),this._ngModelWarningConfig=tr,this._added=!1,this.name=null,this.update=new n.EventEmitter,this._ngModelWarningSent=!1,this._parent=he,this._setValidators(He),this._setAsyncValidators(Qt),this.valueAccessor=ln(0,En)}ngOnChanges(he){this._added||this._setUpControl(),mi(he,this.viewModel)&&(this.viewModel=this.model,this.formDirective.updateModel(this,this.model))}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}viewToModelUpdate(he){this.viewModel=he,this.update.emit(he)}get path(){return wn(null==this.name?this.name:this.name.toString(),this._parent)}get formDirective(){return this._parent?this._parent.formDirective:null}_checkParentType(){}_setUpControl(){this._checkParentType(),this.control=this.formDirective.addControl(this),this._added=!0}}return ye._ngModelWarningSentOnce=!1,ye.\u0275fac=function(he){return new(he||ye)(n.\u0275\u0275directiveInject(St,13),n.\u0275\u0275directiveInject(M,10),n.\u0275\u0275directiveInject(x,10),n.\u0275\u0275directiveInject(c,10),n.\u0275\u0275directiveInject(yn,8))},ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["","formControlName",""]],inputs:{name:["formControlName","name"],isDisabled:["disabled","isDisabled"],model:["ngModel","model"]},outputs:{update:"ngModelChange"},features:[n.\u0275\u0275ProvidersFeature([kt]),n.\u0275\u0275InheritDefinitionFeature,n.\u0275\u0275NgOnChangesFeature]}),ye})();const fe={provide:c,useExisting:(0,n.forwardRef)(()=>Gt),multi:!0};function Pe(ye,_e){return null==ye?`${_e}`:(_e&&"object"==typeof _e&&(_e="Object"),`${ye}: ${_e}`.slice(0,50))}let Gt=(()=>{class ye extends a{constructor(){super(...arguments),this._optionMap=new Map,this._idCounter=0,this._compareWith=Object.is}set compareWith(he){this._compareWith=he}writeValue(he){this.value=he;const Qt=Pe(this._getOptionId(he),he);this.setProperty("value",Qt)}registerOnChange(he){this.onChange=He=>{this.value=this._getOptionValue(He),he(this.value)}}_registerOption(){return(this._idCounter++).toString()}_getOptionId(he){for(const He of this._optionMap.keys())if(this._compareWith(this._optionMap.get(He),he))return He;return null}_getOptionValue(he){const He=function Je(ye){return ye.split(":")[0]}(he);return this._optionMap.has(He)?this._optionMap.get(He):he}}return ye.\u0275fac=function(){let _e;return function(He){return(_e||(_e=n.\u0275\u0275getInheritedFactory(ye)))(He||ye)}}(),ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["select","formControlName","",3,"multiple",""],["select","formControl","",3,"multiple",""],["select","ngModel","",3,"multiple",""]],hostBindings:function(he,He){1&he&&n.\u0275\u0275listener("change",function(En){return He.onChange(En.target.value)})("blur",function(){return He.onTouched()})},inputs:{compareWith:"compareWith"},features:[n.\u0275\u0275ProvidersFeature([fe]),n.\u0275\u0275InheritDefinitionFeature]}),ye})(),Pn=(()=>{class ye{constructor(he,He,Qt){this._element=he,this._renderer=He,this._select=Qt,this._select&&(this.id=this._select._registerOption())}set ngValue(he){null!=this._select&&(this._select._optionMap.set(this.id,he),this._setElementValue(Pe(this.id,he)),this._select.writeValue(this._select.value))}set value(he){this._setElementValue(he),this._select&&this._select.writeValue(this._select.value)}_setElementValue(he){this._renderer.setProperty(this._element.nativeElement,"value",he)}ngOnDestroy(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))}}return ye.\u0275fac=function(he){return new(he||ye)(n.\u0275\u0275directiveInject(n.ElementRef),n.\u0275\u0275directiveInject(n.Renderer2),n.\u0275\u0275directiveInject(Gt,9))},ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["option"]],inputs:{ngValue:"ngValue",value:"value"}}),ye})();const Gi={provide:c,useExisting:(0,n.forwardRef)(()=>Zi),multi:!0};function Vi(ye,_e){return null==ye?`${_e}`:("string"==typeof _e&&(_e=`'${_e}'`),_e&&"object"==typeof _e&&(_e="Object"),`${ye}: ${_e}`.slice(0,50))}let Zi=(()=>{class ye extends a{constructor(){super(...arguments),this._optionMap=new Map,this._idCounter=0,this._compareWith=Object.is}set compareWith(he){this._compareWith=he}writeValue(he){let He;if(this.value=he,Array.isArray(he)){const Qt=he.map(En=>this._getOptionId(En));He=(En,tr)=>{En._setSelected(Qt.indexOf(tr.toString())>-1)}}else He=(Qt,En)=>{Qt._setSelected(!1)};this._optionMap.forEach(He)}registerOnChange(he){this.onChange=He=>{const Qt=[],En=He.selectedOptions;if(void 0!==En){const tr=En;for(let xr=0;xr{class ye{constructor(he,He,Qt){this._element=he,this._renderer=He,this._select=Qt,this._select&&(this.id=this._select._registerOption(this))}set ngValue(he){null!=this._select&&(this._value=he,this._setElementValue(Vi(this.id,he)),this._select.writeValue(this._select.value))}set value(he){this._select?(this._value=he,this._setElementValue(Vi(this.id,he)),this._select.writeValue(this._select.value)):this._setElementValue(he)}_setElementValue(he){this._renderer.setProperty(this._element.nativeElement,"value",he)}_setSelected(he){this._renderer.setProperty(this._element.nativeElement,"selected",he)}ngOnDestroy(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))}}return ye.\u0275fac=function(he){return new(he||ye)(n.\u0275\u0275directiveInject(n.ElementRef),n.\u0275\u0275directiveInject(n.Renderer2),n.\u0275\u0275directiveInject(Zi,9))},ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["option"]],inputs:{ngValue:"ngValue",value:"value"}}),ye})();function Et(ye){return"number"==typeof ye?ye:parseInt(ye,10)}function _t(ye){return"number"==typeof ye?ye:parseFloat(ye)}let ft=(()=>{class ye{constructor(){this._validator=S}ngOnChanges(he){if(this.inputName in he){const He=this.normalizeInput(he[this.inputName].currentValue);this._enabled=this.enabled(He),this._validator=this._enabled?this.createValidator(He):S,this._onChange&&this._onChange()}}validate(he){return this._validator(he)}registerOnValidatorChange(he){this._onChange=he}enabled(he){return null!=he}}return ye.\u0275fac=function(he){return new(he||ye)},ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,features:[n.\u0275\u0275NgOnChangesFeature]}),ye})();const Tt={provide:M,useExisting:(0,n.forwardRef)(()=>Ut),multi:!0};let Ut=(()=>{class ye extends ft{constructor(){super(...arguments),this.inputName="max",this.normalizeInput=he=>_t(he),this.createValidator=he=>T(he)}}return ye.\u0275fac=function(){let _e;return function(He){return(_e||(_e=n.\u0275\u0275getInheritedFactory(ye)))(He||ye)}}(),ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["input","type","number","max","","formControlName",""],["input","type","number","max","","formControl",""],["input","type","number","max","","ngModel",""]],hostVars:1,hostBindings:function(he,He){2&he&&n.\u0275\u0275attribute("max",He._enabled?He.max:null)},inputs:{max:"max"},features:[n.\u0275\u0275ProvidersFeature([Tt]),n.\u0275\u0275InheritDefinitionFeature]}),ye})();const Wt={provide:M,useExisting:(0,n.forwardRef)(()=>nn),multi:!0};let nn=(()=>{class ye extends ft{constructor(){super(...arguments),this.inputName="min",this.normalizeInput=he=>_t(he),this.createValidator=he=>A(he)}}return ye.\u0275fac=function(){let _e;return function(He){return(_e||(_e=n.\u0275\u0275getInheritedFactory(ye)))(He||ye)}}(),ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["input","type","number","min","","formControlName",""],["input","type","number","min","","formControl",""],["input","type","number","min","","ngModel",""]],hostVars:1,hostBindings:function(he,He){2&he&&n.\u0275\u0275attribute("min",He._enabled?He.min:null)},inputs:{min:"min"},features:[n.\u0275\u0275ProvidersFeature([Wt]),n.\u0275\u0275InheritDefinitionFeature]}),ye})();const Cn={provide:M,useExisting:(0,n.forwardRef)(()=>zn),multi:!0},_n={provide:M,useExisting:(0,n.forwardRef)(()=>Vn),multi:!0};let zn=(()=>{class ye extends ft{constructor(){super(...arguments),this.inputName="required",this.normalizeInput=n.booleanAttribute,this.createValidator=he=>O}enabled(he){return he}}return ye.\u0275fac=function(){let _e;return function(He){return(_e||(_e=n.\u0275\u0275getInheritedFactory(ye)))(He||ye)}}(),ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["","required","","formControlName","",3,"type","checkbox"],["","required","","formControl","",3,"type","checkbox"],["","required","","ngModel","",3,"type","checkbox"]],hostVars:1,hostBindings:function(he,He){2&he&&n.\u0275\u0275attribute("required",He._enabled?"":null)},inputs:{required:"required"},features:[n.\u0275\u0275ProvidersFeature([Cn]),n.\u0275\u0275InheritDefinitionFeature]}),ye})(),Vn=(()=>{class ye extends zn{constructor(){super(...arguments),this.createValidator=he=>E}}return ye.\u0275fac=function(){let _e;return function(He){return(_e||(_e=n.\u0275\u0275getInheritedFactory(ye)))(He||ye)}}(),ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["input","type","checkbox","required","","formControlName",""],["input","type","checkbox","required","","formControl",""],["input","type","checkbox","required","","ngModel",""]],hostVars:1,hostBindings:function(he,He){2&he&&n.\u0275\u0275attribute("required",He._enabled?"":null)},features:[n.\u0275\u0275ProvidersFeature([_n]),n.\u0275\u0275InheritDefinitionFeature]}),ye})();const Ri={provide:M,useExisting:(0,n.forwardRef)(()=>ci),multi:!0};let ci=(()=>{class ye extends ft{constructor(){super(...arguments),this.inputName="email",this.normalizeInput=n.booleanAttribute,this.createValidator=he=>D}enabled(he){return he}}return ye.\u0275fac=function(){let _e;return function(He){return(_e||(_e=n.\u0275\u0275getInheritedFactory(ye)))(He||ye)}}(),ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["","email","","formControlName",""],["","email","","formControl",""],["","email","","ngModel",""]],inputs:{email:"email"},features:[n.\u0275\u0275ProvidersFeature([Ri]),n.\u0275\u0275InheritDefinitionFeature]}),ye})();const Mi={provide:M,useExisting:(0,n.forwardRef)(()=>ni),multi:!0};let ni=(()=>{class ye extends ft{constructor(){super(...arguments),this.inputName="minlength",this.normalizeInput=he=>Et(he),this.createValidator=he=>R(he)}}return ye.\u0275fac=function(){let _e;return function(He){return(_e||(_e=n.\u0275\u0275getInheritedFactory(ye)))(He||ye)}}(),ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["","minlength","","formControlName",""],["","minlength","","formControl",""],["","minlength","","ngModel",""]],hostVars:1,hostBindings:function(he,He){2&he&&n.\u0275\u0275attribute("minlength",He._enabled?He.minlength:null)},inputs:{minlength:"minlength"},features:[n.\u0275\u0275ProvidersFeature([Mi]),n.\u0275\u0275InheritDefinitionFeature]}),ye})();const Xn={provide:M,useExisting:(0,n.forwardRef)(()=>ai),multi:!0};let ai=(()=>{class ye extends ft{constructor(){super(...arguments),this.inputName="maxlength",this.normalizeInput=he=>Et(he),this.createValidator=he=>j(he)}}return ye.\u0275fac=function(){let _e;return function(He){return(_e||(_e=n.\u0275\u0275getInheritedFactory(ye)))(He||ye)}}(),ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["","maxlength","","formControlName",""],["","maxlength","","formControl",""],["","maxlength","","ngModel",""]],hostVars:1,hostBindings:function(he,He){2&he&&n.\u0275\u0275attribute("maxlength",He._enabled?He.maxlength:null)},inputs:{maxlength:"maxlength"},features:[n.\u0275\u0275ProvidersFeature([Xn]),n.\u0275\u0275InheritDefinitionFeature]}),ye})();const Fi={provide:M,useExisting:(0,n.forwardRef)(()=>Xi),multi:!0};let Xi=(()=>{class ye extends ft{constructor(){super(...arguments),this.inputName="pattern",this.normalizeInput=he=>he,this.createValidator=he=>N(he)}}return ye.\u0275fac=function(){let _e;return function(He){return(_e||(_e=n.\u0275\u0275getInheritedFactory(ye)))(He||ye)}}(),ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["","pattern","","formControlName",""],["","pattern","","formControl",""],["","pattern","","ngModel",""]],hostVars:1,hostBindings:function(he,He){2&he&&n.\u0275\u0275attribute("pattern",He._enabled?He.pattern:null)},inputs:{pattern:"pattern"},features:[n.\u0275\u0275ProvidersFeature([Fi]),n.\u0275\u0275InheritDefinitionFeature]}),ye})(),oo=(()=>{class ye{}return ye.\u0275fac=function(he){return new(he||ye)},ye.\u0275mod=n.\u0275\u0275defineNgModule({type:ye}),ye.\u0275inj=n.\u0275\u0275defineInjector({imports:[Un]}),ye})();class Ir extends it{constructor(_e,he,He){super(De(he),ke(He,he)),this.controls=_e,this._initObservables(),this._setUpdateStrategy(he),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}at(_e){return this.controls[this._adjustIndex(_e)]}push(_e,he={}){this.controls.push(_e),this._registerControl(_e),this.updateValueAndValidity({emitEvent:he.emitEvent}),this._onCollectionChange()}insert(_e,he,He={}){this.controls.splice(_e,0,he),this._registerControl(he),this.updateValueAndValidity({emitEvent:He.emitEvent})}removeAt(_e,he={}){let He=this._adjustIndex(_e);He<0&&(He=0),this.controls[He]&&this.controls[He]._registerOnCollectionChange(()=>{}),this.controls.splice(He,1),this.updateValueAndValidity({emitEvent:he.emitEvent})}setControl(_e,he,He={}){let Qt=this._adjustIndex(_e);Qt<0&&(Qt=0),this.controls[Qt]&&this.controls[Qt]._registerOnCollectionChange(()=>{}),this.controls.splice(Qt,1),he&&(this.controls.splice(Qt,0,he),this._registerControl(he)),this.updateValueAndValidity({emitEvent:He.emitEvent}),this._onCollectionChange()}get length(){return this.controls.length}setValue(_e,he={}){Ee(this,0,_e),_e.forEach((He,Qt)=>{ce(this,!1,Qt),this.at(Qt).setValue(He,{onlySelf:!0,emitEvent:he.emitEvent})}),this.updateValueAndValidity(he)}patchValue(_e,he={}){null!=_e&&(_e.forEach((He,Qt)=>{this.at(Qt)&&this.at(Qt).patchValue(He,{onlySelf:!0,emitEvent:he.emitEvent})}),this.updateValueAndValidity(he))}reset(_e=[],he={}){this._forEachChild((He,Qt)=>{He.reset(_e[Qt],{onlySelf:!0,emitEvent:he.emitEvent})}),this._updatePristine(he),this._updateTouched(he),this.updateValueAndValidity(he)}getRawValue(){return this.controls.map(_e=>_e.getRawValue())}clear(_e={}){this.controls.length<1||(this._forEachChild(he=>he._registerOnCollectionChange(()=>{})),this.controls.splice(0),this.updateValueAndValidity({emitEvent:_e.emitEvent}))}_adjustIndex(_e){return _e<0?_e+this.length:_e}_syncPendingControls(){let _e=this.controls.reduce((he,He)=>!!He._syncPendingControls()||he,!1);return _e&&this.updateValueAndValidity({onlySelf:!0}),_e}_forEachChild(_e){this.controls.forEach((he,He)=>{_e(he,He)})}_updateValue(){this.value=this.controls.filter(_e=>_e.enabled||this.disabled).map(_e=>_e.value)}_anyControls(_e){return this.controls.some(he=>he.enabled&&_e(he))}_setUpControls(){this._forEachChild(_e=>this._registerControl(_e))}_allControlsDisabled(){for(const _e of this.controls)if(_e.enabled)return!1;return this.controls.length>0||this.disabled}_registerControl(_e){_e.setParent(this),_e._registerOnCollectionChange(this._onCollectionChange)}_find(_e){return this.at(_e)??null}}const zo=Ir,Wo=ye=>ye instanceof Ir;function Go(ye){return!!ye&&(void 0!==ye.asyncValidators||void 0!==ye.validators||void 0!==ye.updateOn)}let go=(()=>{class ye{constructor(){this.useNonNullable=!1}get nonNullable(){const he=new ye;return he.useNonNullable=!0,he}group(he,He=null){const Qt=this._reduceControls(he);let En={};return Go(He)?En=He:null!==He&&(En.validators=He.validator,En.asyncValidators=He.asyncValidator),new Rt(Qt,En)}record(he,He=null){const Qt=this._reduceControls(he);return new Ne(Qt,He)}control(he,He,Qt){let En={};return this.useNonNullable?(Go(He)?En=He:(En.validators=He,En.asyncValidators=Qt),new oi(he,{...En,nonNullable:!0})):new oi(he,He,Qt)}array(he,He,Qt){const En=he.map(tr=>this._createControl(tr));return new Ir(En,He,Qt)}_reduceControls(he){const He={};return Object.keys(he).forEach(Qt=>{He[Qt]=this._createControl(he[Qt])}),He}_createControl(he){return he instanceof oi||he instanceof it?he:Array.isArray(he)?this.control(he[0],he.length>1?he[1]:null,he.length>2?he[2]:null):this.control(he)}}return ye.\u0275fac=function(he){return new(he||ye)},ye.\u0275prov=n.\u0275\u0275defineInjectable({token:ye,factory:ye.\u0275fac,providedIn:"root"}),ye})(),Vr=(()=>{class ye{}return ye.\u0275fac=function(he){return new(he||ye)},ye.\u0275prov=n.\u0275\u0275defineInjectable({token:ye,factory:function(){return(0,n.inject)(go).nonNullable},providedIn:"root"}),ye})(),jr=(()=>{class ye extends go{group(he,He=null){return super.group(he,He)}control(he,He,Qt){return super.control(he,He,Qt)}array(he,He,Qt){return super.array(he,He,Qt)}}return ye.\u0275fac=function(){let _e;return function(He){return(_e||(_e=n.\u0275\u0275getInheritedFactory(ye)))(He||ye)}}(),ye.\u0275prov=n.\u0275\u0275defineInjectable({token:ye,factory:ye.\u0275fac,providedIn:"root"}),ye})();const Hr=new n.Version("16.1.7");let Ko=(()=>{class ye{static withConfig(he){return{ngModule:ye,providers:[{provide:At,useValue:he.callSetDisabledState??tn}]}}}return ye.\u0275fac=function(he){return new(he||ye)},ye.\u0275mod=n.\u0275\u0275defineNgModule({type:ye}),ye.\u0275inj=n.\u0275\u0275defineInjector({imports:[oo]}),ye})(),Yo=(()=>{class ye{static withConfig(he){return{ngModule:ye,providers:[{provide:yn,useValue:he.warnOnNgModelWithFormControl??"always"},{provide:At,useValue:he.callSetDisabledState??tn}]}}}return ye.\u0275fac=function(he){return new(he||ye)},ye.\u0275mod=n.\u0275\u0275defineNgModule({type:ye}),ye.\u0275inj=n.\u0275\u0275defineInjector({imports:[oo]}),ye})()},3680:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{AnimationCurves:()=>A,AnimationDurations:()=>T,DateAdapter:()=>q,ErrorStateMatcher:()=>Mt,MATERIAL_SANITY_CHECKS:()=>E,MAT_DATE_FORMATS:()=>Q,MAT_DATE_LOCALE:()=>me,MAT_DATE_LOCALE_FACTORY:()=>$,MAT_NATIVE_DATE_FORMATS:()=>Xe,MAT_OPTGROUP:()=>Yt,MAT_OPTION_PARENT_COMPONENT:()=>ze,MAT_RIPPLE_GLOBAL_OPTIONS:()=>Te,MatCommonModule:()=>D,MatLine:()=>tt,MatLineModule:()=>xt,MatNativeDateModule:()=>$e,MatOptgroup:()=>Ue,MatOption:()=>at,MatOptionModule:()=>ke,MatOptionSelectionChange:()=>ve,MatPseudoCheckbox:()=>Dt,MatPseudoCheckboxModule:()=>Kt,MatRipple:()=>ct,MatRippleModule:()=>Lt,NativeDateAdapter:()=>Oe,NativeDateModule:()=>Be,RippleRef:()=>nt,RippleRenderer:()=>ie,ShowOnDirtyErrorStateMatcher:()=>st,VERSION:()=>L,_MatOptgroupBase:()=>$t,_MatOptionBase:()=>we,_countGroupLabelsBeforeOption:()=>De,_getOptionScrollPosition:()=>je,defaultRippleAnimationConfig:()=>rt,mixinColor:()=>k,mixinDisableRipple:()=>F,mixinDisabled:()=>S,mixinErrorState:()=>se,mixinInitialized:()=>ne,mixinTabIndex:()=>Y,setLines:()=>St});var n=g(5879),p=g(4300),C=g(9388),o=g(6814),v=g(2831),a=g(2495),c=g(5592),s=g(8645),l=g(7921),d=g(6028);const r=["*",[["mat-option"],["ng-container"]]],u=["*","mat-option, ng-container"],h=["text"];function m(Z,re){if(1&Z&&n.\u0275\u0275element(0,"mat-pseudo-checkbox",6),2&Z){const ce=n.\u0275\u0275nextContext();n.\u0275\u0275property("disabled",ce.disabled)("state",ce.selected?"checked":"unchecked")}}function _(Z,re){if(1&Z&&n.\u0275\u0275element(0,"mat-pseudo-checkbox",7),2&Z){const ce=n.\u0275\u0275nextContext();n.\u0275\u0275property("disabled",ce.disabled)}}function M(Z,re){if(1&Z&&(n.\u0275\u0275elementStart(0,"span",8),n.\u0275\u0275text(1),n.\u0275\u0275elementEnd()),2&Z){const ce=n.\u0275\u0275nextContext();n.\u0275\u0275advance(1),n.\u0275\u0275textInterpolate1("(",ce.group.label,")")}}const x=[[["mat-icon"]],"*"],w=["mat-icon","*"],L=new n.Version("16.1.6");let A=(()=>{class Z{}return Z.STANDARD_CURVE="cubic-bezier(0.4,0.0,0.2,1)",Z.DECELERATION_CURVE="cubic-bezier(0.0,0.0,0.2,1)",Z.ACCELERATION_CURVE="cubic-bezier(0.4,0.0,1,1)",Z.SHARP_CURVE="cubic-bezier(0.4,0.0,0.6,1)",Z})(),T=(()=>{class Z{}return Z.COMPLEX="375ms",Z.ENTERING="225ms",Z.EXITING="195ms",Z})();const E=new n.InjectionToken("mat-sanity-checks",{providedIn:"root",factory:function O(){return!0}});let D=(()=>{class Z{constructor(ce,Ee,it){this._sanityChecks=Ee,this._document=it,this._hasDoneGlobalChecks=!1,ce._applyBodyHighContrastModeCssClasses(),this._hasDoneGlobalChecks||(this._hasDoneGlobalChecks=!0)}_checkIsEnabled(ce){return!(0,v.Oy)()&&("boolean"==typeof this._sanityChecks?this._sanityChecks:!!this._sanityChecks[ce])}}return Z.\u0275fac=function(ce){return new(ce||Z)(n.\u0275\u0275inject(p.qm),n.\u0275\u0275inject(E,8),n.\u0275\u0275inject(o.DOCUMENT))},Z.\u0275mod=n.\u0275\u0275defineNgModule({type:Z}),Z.\u0275inj=n.\u0275\u0275defineInjector({imports:[C.vT,C.vT]}),Z})();function S(Z){return class extends Z{get disabled(){return this._disabled}set disabled(re){this._disabled=(0,a.Ig)(re)}constructor(...re){super(...re),this._disabled=!1}}}function k(Z,re){return class extends Z{get color(){return this._color}set color(ce){const Ee=ce||this.defaultColor;Ee!==this._color&&(this._color&&this._elementRef.nativeElement.classList.remove(`mat-${this._color}`),Ee&&this._elementRef.nativeElement.classList.add(`mat-${Ee}`),this._color=Ee)}constructor(...ce){super(...ce),this.defaultColor=re,this.color=re}}}function F(Z){return class extends Z{get disableRipple(){return this._disableRipple}set disableRipple(re){this._disableRipple=(0,a.Ig)(re)}constructor(...re){super(...re),this._disableRipple=!1}}}function Y(Z,re=0){return class extends Z{get tabIndex(){return this.disabled?-1:this._tabIndex}set tabIndex(ce){this._tabIndex=null!=ce?(0,a.su)(ce):this.defaultTabIndex}constructor(...ce){super(...ce),this._tabIndex=re,this.defaultTabIndex=re}}}function se(Z){return class extends Z{updateErrorState(){const re=this.errorState,Rt=(this.errorStateMatcher||this._defaultErrorStateMatcher).isErrorState(this.ngControl?this.ngControl.control:null,this._parentFormGroup||this._parentForm);Rt!==re&&(this.errorState=Rt,this.stateChanges.next())}constructor(...re){super(...re),this.errorState=!1}}}function ne(Z){return class extends Z{constructor(...re){super(...re),this._isInitialized=!1,this._pendingSubscribers=[],this.initialized=new c.y(ce=>{this._isInitialized?this._notifySubscriber(ce):this._pendingSubscribers.push(ce)})}_markInitialized(){this._isInitialized=!0,this._pendingSubscribers.forEach(this._notifySubscriber),this._pendingSubscribers=null}_notifySubscriber(re){re.next(),re.complete()}}}const me=new n.InjectionToken("MAT_DATE_LOCALE",{providedIn:"root",factory:$});function $(){return(0,n.inject)(n.LOCALE_ID)}class q{constructor(){this._localeChanges=new s.x,this.localeChanges=this._localeChanges}getValidDateOrNull(re){return this.isDateInstance(re)&&this.isValid(re)?re:null}deserialize(re){return null==re||this.isDateInstance(re)&&this.isValid(re)?re:this.invalid()}setLocale(re){this.locale=re,this._localeChanges.next()}compareDate(re,ce){return this.getYear(re)-this.getYear(ce)||this.getMonth(re)-this.getMonth(ce)||this.getDate(re)-this.getDate(ce)}sameDate(re,ce){if(re&&ce){let Ee=this.isValid(re),it=this.isValid(ce);return Ee&&it?!this.compareDate(re,ce):Ee==it}return re==ce}clampDate(re,ce,Ee){return ce&&this.compareDate(re,ce)<0?ce:Ee&&this.compareDate(re,Ee)>0?Ee:re}}const Q=new n.InjectionToken("mat-date-formats"),ue=/^\d{4}-\d{2}-\d{2}(?:T\d{2}:\d{2}:\d{2}(?:\.\d+)?(?:Z|(?:(?:\+|-)\d{2}:\d{2}))?)?$/;function Me(Z,re){const ce=Array(Z);for(let Ee=0;Ee{class Z extends q{constructor(ce,Ee){super(),this.useUtcForDisplay=!1,super.setLocale(ce)}getYear(ce){return ce.getFullYear()}getMonth(ce){return ce.getMonth()}getDate(ce){return ce.getDate()}getDayOfWeek(ce){return ce.getDay()}getMonthNames(ce){const Ee=new Intl.DateTimeFormat(this.locale,{month:ce,timeZone:"utc"});return Me(12,it=>this._format(Ee,new Date(2017,it,1)))}getDateNames(){const ce=new Intl.DateTimeFormat(this.locale,{day:"numeric",timeZone:"utc"});return Me(31,Ee=>this._format(ce,new Date(2017,0,Ee+1)))}getDayOfWeekNames(ce){const Ee=new Intl.DateTimeFormat(this.locale,{weekday:ce,timeZone:"utc"});return Me(7,it=>this._format(Ee,new Date(2017,0,it+1)))}getYearName(ce){const Ee=new Intl.DateTimeFormat(this.locale,{year:"numeric",timeZone:"utc"});return this._format(Ee,ce)}getFirstDayOfWeek(){return 0}getNumDaysInMonth(ce){return this.getDate(this._createDateWithOverflow(this.getYear(ce),this.getMonth(ce)+1,0))}clone(ce){return new Date(ce.getTime())}createDate(ce,Ee,it){let Rt=this._createDateWithOverflow(ce,Ee,it);return Rt.getMonth(),Rt}today(){return new Date}parse(ce,Ee){return"number"==typeof ce?new Date(ce):ce?new Date(Date.parse(ce)):null}format(ce,Ee){if(!this.isValid(ce))throw Error("NativeDateAdapter: Cannot format invalid date.");const it=new Intl.DateTimeFormat(this.locale,{...Ee,timeZone:"utc"});return this._format(it,ce)}addCalendarYears(ce,Ee){return this.addCalendarMonths(ce,12*Ee)}addCalendarMonths(ce,Ee){let it=this._createDateWithOverflow(this.getYear(ce),this.getMonth(ce)+Ee,this.getDate(ce));return this.getMonth(it)!=((this.getMonth(ce)+Ee)%12+12)%12&&(it=this._createDateWithOverflow(this.getYear(it),this.getMonth(it),0)),it}addCalendarDays(ce,Ee){return this._createDateWithOverflow(this.getYear(ce),this.getMonth(ce),this.getDate(ce)+Ee)}toIso8601(ce){return[ce.getUTCFullYear(),this._2digit(ce.getUTCMonth()+1),this._2digit(ce.getUTCDate())].join("-")}deserialize(ce){if("string"==typeof ce){if(!ce)return null;if(ue.test(ce)){let Ee=new Date(ce);if(this.isValid(Ee))return Ee}}return super.deserialize(ce)}isDateInstance(ce){return ce instanceof Date}isValid(ce){return!isNaN(ce.getTime())}invalid(){return new Date(NaN)}_createDateWithOverflow(ce,Ee,it){const Rt=new Date;return Rt.setFullYear(ce,Ee,it),Rt.setHours(0,0,0,0),Rt}_2digit(ce){return("00"+ce).slice(-2)}_format(ce,Ee){const it=new Date;return it.setUTCFullYear(Ee.getFullYear(),Ee.getMonth(),Ee.getDate()),it.setUTCHours(Ee.getHours(),Ee.getMinutes(),Ee.getSeconds(),Ee.getMilliseconds()),ce.format(it)}}return Z.\u0275fac=function(ce){return new(ce||Z)(n.\u0275\u0275inject(me,8),n.\u0275\u0275inject(v.t4))},Z.\u0275prov=n.\u0275\u0275defineInjectable({token:Z,factory:Z.\u0275fac}),Z})();const Xe={parse:{dateInput:null},display:{dateInput:{year:"numeric",month:"numeric",day:"numeric"},monthYearLabel:{year:"numeric",month:"short"},dateA11yLabel:{year:"numeric",month:"long",day:"numeric"},monthYearA11yLabel:{year:"numeric",month:"long"}}};let Be=(()=>{class Z{}return Z.\u0275fac=function(ce){return new(ce||Z)},Z.\u0275mod=n.\u0275\u0275defineNgModule({type:Z}),Z.\u0275inj=n.\u0275\u0275defineInjector({providers:[{provide:q,useClass:Oe}]}),Z})(),$e=(()=>{class Z{}return Z.\u0275fac=function(ce){return new(ce||Z)},Z.\u0275mod=n.\u0275\u0275defineNgModule({type:Z}),Z.\u0275inj=n.\u0275\u0275defineInjector({providers:[{provide:Q,useValue:Xe}],imports:[Be]}),Z})(),st=(()=>{class Z{isErrorState(ce,Ee){return!!(ce&&ce.invalid&&(ce.dirty||Ee&&Ee.submitted))}}return Z.\u0275fac=function(ce){return new(ce||Z)},Z.\u0275prov=n.\u0275\u0275defineInjectable({token:Z,factory:Z.\u0275fac}),Z})(),Mt=(()=>{class Z{isErrorState(ce,Ee){return!!(ce&&ce.invalid&&(ce.touched||Ee&&Ee.submitted))}}return Z.\u0275fac=function(ce){return new(ce||Z)},Z.\u0275prov=n.\u0275\u0275defineInjectable({token:Z,factory:Z.\u0275fac,providedIn:"root"}),Z})(),tt=(()=>{class Z{}return Z.\u0275fac=function(ce){return new(ce||Z)},Z.\u0275dir=n.\u0275\u0275defineDirective({type:Z,selectors:[["","mat-line",""],["","matLine",""]],hostAttrs:[1,"mat-line"]}),Z})();function St(Z,re,ce="mat"){Z.changes.pipe((0,l.O)(Z)).subscribe(({length:Ee})=>{bt(re,`${ce}-2-line`,!1),bt(re,`${ce}-3-line`,!1),bt(re,`${ce}-multi-line`,!1),2===Ee||3===Ee?bt(re,`${ce}-${Ee}-line`,!0):Ee>3&&bt(re,`${ce}-multi-line`,!0)})}function bt(Z,re,ce){Z.nativeElement.classList.toggle(re,ce)}let xt=(()=>{class Z{}return Z.\u0275fac=function(ce){return new(ce||Z)},Z.\u0275mod=n.\u0275\u0275defineNgModule({type:Z}),Z.\u0275inj=n.\u0275\u0275defineInjector({imports:[D,D]}),Z})();class nt{constructor(re,ce,Ee,it=!1){this._renderer=re,this.element=ce,this.config=Ee,this._animationForciblyDisabledThroughCss=it,this.state=3}fadeOut(){this._renderer.fadeOutRipple(this)}}const ot=(0,v.i$)({passive:!0,capture:!0});class vt{constructor(){this._events=new Map,this._delegateEventHandler=re=>{const ce=(0,v.sA)(re);ce&&this._events.get(re.type)?.forEach((Ee,it)=>{(it===ce||it.contains(ce))&&Ee.forEach(Rt=>Rt.handleEvent(re))})}}addHandler(re,ce,Ee,it){const Rt=this._events.get(ce);if(Rt){const Ye=Rt.get(Ee);Ye?Ye.add(it):Rt.set(Ee,new Set([it]))}else this._events.set(ce,new Map([[Ee,new Set([it])]])),re.runOutsideAngular(()=>{document.addEventListener(ce,this._delegateEventHandler,ot)})}removeHandler(re,ce,Ee){const it=this._events.get(re);if(!it)return;const Rt=it.get(ce);Rt&&(Rt.delete(Ee),0===Rt.size&&it.delete(ce),0===it.size&&(this._events.delete(re),document.removeEventListener(re,this._delegateEventHandler,ot)))}}const rt={enterDuration:225,exitDuration:150},Ce=(0,v.i$)({passive:!0,capture:!0}),ee=["mousedown","touchstart"],ae=["mouseup","mouseleave","touchend","touchcancel"];class ie{constructor(re,ce,Ee,it){this._target=re,this._ngZone=ce,this._platform=it,this._isPointerDown=!1,this._activeRipples=new Map,this._pointerUpEventsRegistered=!1,it.isBrowser&&(this._containerElement=(0,a.fI)(Ee))}fadeInRipple(re,ce,Ee={}){const it=this._containerRect=this._containerRect||this._containerElement.getBoundingClientRect(),Rt={...rt,...Ee.animation};Ee.centered&&(re=it.left+it.width/2,ce=it.top+it.height/2);const Ye=Ee.radius||function pe(Z,re,ce){const Ee=Math.max(Math.abs(Z-ce.left),Math.abs(Z-ce.right)),it=Math.max(Math.abs(re-ce.top),Math.abs(re-ce.bottom));return Math.sqrt(Ee*Ee+it*it)}(re,ce,it),qe=re-it.left,Ne=ce-it.top,dt=Rt.enterDuration,At=document.createElement("div");At.classList.add("mat-ripple-element"),At.style.left=qe-Ye+"px",At.style.top=Ne-Ye+"px",At.style.height=2*Ye+"px",At.style.width=2*Ye+"px",null!=Ee.color&&(At.style.backgroundColor=Ee.color),At.style.transitionDuration=`${dt}ms`,this._containerElement.appendChild(At);const tn=window.getComputedStyle(At),Tn=tn.transitionDuration,Sn="none"===tn.transitionProperty||"0s"===Tn||"0s, 0s"===Tn||0===it.width&&0===it.height,Mn=new nt(this,At,Ee,Sn);At.style.transform="scale3d(1, 1, 1)",Mn.state=0,Ee.persistent||(this._mostRecentTransientRipple=Mn);let Ci=null;return!Sn&&(dt||Rt.exitDuration)&&this._ngZone.runOutsideAngular(()=>{const di=()=>this._finishRippleTransition(Mn),Li=()=>this._destroyRipple(Mn);At.addEventListener("transitionend",di),At.addEventListener("transitioncancel",Li),Ci={onTransitionEnd:di,onTransitionCancel:Li}}),this._activeRipples.set(Mn,Ci),(Sn||!dt)&&this._finishRippleTransition(Mn),Mn}fadeOutRipple(re){if(2===re.state||3===re.state)return;const ce=re.element,Ee={...rt,...re.config.animation};ce.style.transitionDuration=`${Ee.exitDuration}ms`,ce.style.opacity="0",re.state=2,(re._animationForciblyDisabledThroughCss||!Ee.exitDuration)&&this._finishRippleTransition(re)}fadeOutAll(){this._getActiveRipples().forEach(re=>re.fadeOut())}fadeOutAllNonPersistent(){this._getActiveRipples().forEach(re=>{re.config.persistent||re.fadeOut()})}setupTriggerEvents(re){const ce=(0,a.fI)(re);!this._platform.isBrowser||!ce||ce===this._triggerElement||(this._removeTriggerEvents(),this._triggerElement=ce,ee.forEach(Ee=>{ie._eventManager.addHandler(this._ngZone,Ee,ce,this)}))}handleEvent(re){"mousedown"===re.type?this._onMousedown(re):"touchstart"===re.type?this._onTouchStart(re):this._onPointerUp(),this._pointerUpEventsRegistered||(this._ngZone.runOutsideAngular(()=>{ae.forEach(ce=>{this._triggerElement.addEventListener(ce,this,Ce)})}),this._pointerUpEventsRegistered=!0)}_finishRippleTransition(re){0===re.state?this._startFadeOutTransition(re):2===re.state&&this._destroyRipple(re)}_startFadeOutTransition(re){const ce=re===this._mostRecentTransientRipple,{persistent:Ee}=re.config;re.state=1,!Ee&&(!ce||!this._isPointerDown)&&re.fadeOut()}_destroyRipple(re){const ce=this._activeRipples.get(re)??null;this._activeRipples.delete(re),this._activeRipples.size||(this._containerRect=null),re===this._mostRecentTransientRipple&&(this._mostRecentTransientRipple=null),re.state=3,null!==ce&&(re.element.removeEventListener("transitionend",ce.onTransitionEnd),re.element.removeEventListener("transitioncancel",ce.onTransitionCancel)),re.element.remove()}_onMousedown(re){const ce=(0,p.X6)(re),Ee=this._lastTouchStartEvent&&Date.now(){!re.config.persistent&&(1===re.state||re.config.terminateOnPointerUp&&0===re.state)&&re.fadeOut()}))}_getActiveRipples(){return Array.from(this._activeRipples.keys())}_removeTriggerEvents(){const re=this._triggerElement;re&&(ee.forEach(ce=>ie._eventManager.removeHandler(ce,re,this)),this._pointerUpEventsRegistered&&ae.forEach(ce=>re.removeEventListener(ce,this,Ce)))}}ie._eventManager=new vt;const Te=new n.InjectionToken("mat-ripple-global-options");let ct=(()=>{class Z{get disabled(){return this._disabled}set disabled(ce){ce&&this.fadeOutAllNonPersistent(),this._disabled=ce,this._setupTriggerEventsIfEnabled()}get trigger(){return this._trigger||this._elementRef.nativeElement}set trigger(ce){this._trigger=ce,this._setupTriggerEventsIfEnabled()}constructor(ce,Ee,it,Rt,Ye){this._elementRef=ce,this._animationMode=Ye,this.radius=0,this._disabled=!1,this._isInitialized=!1,this._globalOptions=Rt||{},this._rippleRenderer=new ie(this,Ee,ce,it)}ngOnInit(){this._isInitialized=!0,this._setupTriggerEventsIfEnabled()}ngOnDestroy(){this._rippleRenderer._removeTriggerEvents()}fadeOutAll(){this._rippleRenderer.fadeOutAll()}fadeOutAllNonPersistent(){this._rippleRenderer.fadeOutAllNonPersistent()}get rippleConfig(){return{centered:this.centered,radius:this.radius,color:this.color,animation:{...this._globalOptions.animation,..."NoopAnimations"===this._animationMode?{enterDuration:0,exitDuration:0}:{},...this.animation},terminateOnPointerUp:this._globalOptions.terminateOnPointerUp}}get rippleDisabled(){return this.disabled||!!this._globalOptions.disabled}_setupTriggerEventsIfEnabled(){!this.disabled&&this._isInitialized&&this._rippleRenderer.setupTriggerEvents(this.trigger)}launch(ce,Ee=0,it){return"number"==typeof ce?this._rippleRenderer.fadeInRipple(ce,Ee,{...this.rippleConfig,...it}):this._rippleRenderer.fadeInRipple(0,0,{...this.rippleConfig,...ce})}}return Z.\u0275fac=function(ce){return new(ce||Z)(n.\u0275\u0275directiveInject(n.ElementRef),n.\u0275\u0275directiveInject(n.NgZone),n.\u0275\u0275directiveInject(v.t4),n.\u0275\u0275directiveInject(Te,8),n.\u0275\u0275directiveInject(n.ANIMATION_MODULE_TYPE,8))},Z.\u0275dir=n.\u0275\u0275defineDirective({type:Z,selectors:[["","mat-ripple",""],["","matRipple",""]],hostAttrs:[1,"mat-ripple"],hostVars:2,hostBindings:function(ce,Ee){2&ce&&n.\u0275\u0275classProp("mat-ripple-unbounded",Ee.unbounded)},inputs:{color:["matRippleColor","color"],unbounded:["matRippleUnbounded","unbounded"],centered:["matRippleCentered","centered"],radius:["matRippleRadius","radius"],animation:["matRippleAnimation","animation"],disabled:["matRippleDisabled","disabled"],trigger:["matRippleTrigger","trigger"]},exportAs:["matRipple"]}),Z})(),Lt=(()=>{class Z{}return Z.\u0275fac=function(ce){return new(ce||Z)},Z.\u0275mod=n.\u0275\u0275defineNgModule({type:Z}),Z.\u0275inj=n.\u0275\u0275defineInjector({imports:[D,D]}),Z})(),Dt=(()=>{class Z{constructor(ce){this._animationMode=ce,this.state="unchecked",this.disabled=!1,this.appearance="full"}}return Z.\u0275fac=function(ce){return new(ce||Z)(n.\u0275\u0275directiveInject(n.ANIMATION_MODULE_TYPE,8))},Z.\u0275cmp=n.\u0275\u0275defineComponent({type:Z,selectors:[["mat-pseudo-checkbox"]],hostAttrs:[1,"mat-pseudo-checkbox"],hostVars:12,hostBindings:function(ce,Ee){2&ce&&n.\u0275\u0275classProp("mat-pseudo-checkbox-indeterminate","indeterminate"===Ee.state)("mat-pseudo-checkbox-checked","checked"===Ee.state)("mat-pseudo-checkbox-disabled",Ee.disabled)("mat-pseudo-checkbox-minimal","minimal"===Ee.appearance)("mat-pseudo-checkbox-full","full"===Ee.appearance)("_mat-animation-noopable","NoopAnimations"===Ee._animationMode)},inputs:{state:"state",disabled:"disabled",appearance:"appearance"},decls:0,vars:0,template:function(ce,Ee){},styles:['.mat-pseudo-checkbox{border-radius:2px;cursor:pointer;display:inline-block;vertical-align:middle;box-sizing:border-box;position:relative;flex-shrink:0;transition:border-color 90ms cubic-bezier(0, 0, 0.2, 0.1),background-color 90ms cubic-bezier(0, 0, 0.2, 0.1)}.mat-pseudo-checkbox::after{position:absolute;opacity:0;content:"";border-bottom:2px solid currentColor;transition:opacity 90ms cubic-bezier(0, 0, 0.2, 0.1)}.mat-pseudo-checkbox._mat-animation-noopable{transition:none !important;animation:none !important}.mat-pseudo-checkbox._mat-animation-noopable::after{transition:none}.mat-pseudo-checkbox-disabled{cursor:default}.mat-pseudo-checkbox-indeterminate::after{left:1px;opacity:1;border-radius:2px}.mat-pseudo-checkbox-checked::after{left:1px;border-left:2px solid currentColor;transform:rotate(-45deg);opacity:1;box-sizing:content-box}.mat-pseudo-checkbox-full{border:2px solid}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-checked,.mat-pseudo-checkbox-full.mat-pseudo-checkbox-indeterminate{border-color:rgba(0,0,0,0)}.mat-pseudo-checkbox{width:18px;height:18px}.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-checked::after{width:14px;height:6px;transform-origin:center;top:-4.2426406871px;left:0;bottom:0;right:0;margin:auto}.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-indeterminate::after{top:8px;width:16px}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-checked::after{width:10px;height:4px;transform-origin:center;top:-2.8284271247px;left:0;bottom:0;right:0;margin:auto}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-indeterminate::after{top:6px;width:12px}'],encapsulation:2,changeDetection:0}),Z})(),Kt=(()=>{class Z{}return Z.\u0275fac=function(ce){return new(ce||Z)},Z.\u0275mod=n.\u0275\u0275defineNgModule({type:Z}),Z.\u0275inj=n.\u0275\u0275defineInjector({imports:[D]}),Z})();const ze=new n.InjectionToken("MAT_OPTION_PARENT_COMPONENT"),yt=S(class{});let Bt=0,$t=(()=>{class Z extends yt{constructor(ce){super(),this._labelId="mat-optgroup-label-"+Bt++,this._inert=ce?.inertGroups??!1}}return Z.\u0275fac=function(ce){return new(ce||Z)(n.\u0275\u0275directiveInject(ze,8))},Z.\u0275dir=n.\u0275\u0275defineDirective({type:Z,inputs:{label:"label"},features:[n.\u0275\u0275InheritDefinitionFeature]}),Z})();const Yt=new n.InjectionToken("MatOptgroup");let Ue=(()=>{class Z extends $t{}return Z.\u0275fac=function(){let re;return function(Ee){return(re||(re=n.\u0275\u0275getInheritedFactory(Z)))(Ee||Z)}}(),Z.\u0275cmp=n.\u0275\u0275defineComponent({type:Z,selectors:[["mat-optgroup"]],hostAttrs:[1,"mat-mdc-optgroup"],hostVars:3,hostBindings:function(ce,Ee){2&ce&&n.\u0275\u0275attribute("role",Ee._inert?null:"group")("aria-disabled",Ee._inert?null:Ee.disabled.toString())("aria-labelledby",Ee._inert?null:Ee._labelId)},inputs:{disabled:"disabled"},exportAs:["matOptgroup"],features:[n.\u0275\u0275ProvidersFeature([{provide:Yt,useExisting:Z}]),n.\u0275\u0275InheritDefinitionFeature],ngContentSelectors:u,decls:5,vars:4,consts:[["role","presentation",1,"mat-mdc-optgroup-label",3,"id"],[1,"mdc-list-item__primary-text"]],template:function(ce,Ee){1&ce&&(n.\u0275\u0275projectionDef(r),n.\u0275\u0275elementStart(0,"span",0)(1,"span",1),n.\u0275\u0275text(2),n.\u0275\u0275projection(3),n.\u0275\u0275elementEnd()(),n.\u0275\u0275projection(4,1)),2&ce&&(n.\u0275\u0275classProp("mdc-list-item--disabled",Ee.disabled),n.\u0275\u0275property("id",Ee._labelId),n.\u0275\u0275advance(2),n.\u0275\u0275textInterpolate1("",Ee.label," "))},styles:[".mat-mdc-optgroup{color:var(--mat-optgroup-label-text-color);font-family:var(--mat-optgroup-label-text-font);line-height:var(--mat-optgroup-label-text-line-height);font-size:var(--mat-optgroup-label-text-size);letter-spacing:var(--mat-optgroup-label-text-tracking);font-weight:var(--mat-optgroup-label-text-weight)}.mat-mdc-optgroup-label{display:flex;position:relative;align-items:center;justify-content:flex-start;overflow:hidden;padding:0;padding-left:16px;padding-right:16px;min-height:48px}.mat-mdc-optgroup-label:focus{outline:none}[dir=rtl] .mat-mdc-optgroup-label,.mat-mdc-optgroup-label[dir=rtl]{padding-left:16px;padding-right:16px}.mat-mdc-optgroup-label.mdc-list-item--disabled{opacity:.38}.mat-mdc-optgroup-label .mdc-list-item__primary-text{font-size:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;font-family:inherit;text-decoration:inherit;text-transform:inherit;white-space:normal}"],encapsulation:2,changeDetection:0}),Z})(),We=0;class ve{constructor(re,ce=!1){this.source=re,this.isUserInput=ce}}let we=(()=>{class Z{get multiple(){return this._parent&&this._parent.multiple}get selected(){return this._selected}get disabled(){return this.group&&this.group.disabled||this._disabled}set disabled(ce){this._disabled=(0,a.Ig)(ce)}get disableRipple(){return!(!this._parent||!this._parent.disableRipple)}get hideSingleSelectionIndicator(){return!(!this._parent||!this._parent.hideSingleSelectionIndicator)}constructor(ce,Ee,it,Rt){this._element=ce,this._changeDetectorRef=Ee,this._parent=it,this.group=Rt,this._selected=!1,this._active=!1,this._disabled=!1,this._mostRecentViewValue="",this.id="mat-option-"+We++,this.onSelectionChange=new n.EventEmitter,this._stateChanges=new s.x}get active(){return this._active}get viewValue(){return(this._text?.nativeElement.textContent||"").trim()}select(ce=!0){this._selected||(this._selected=!0,this._changeDetectorRef.markForCheck(),ce&&this._emitSelectionChangeEvent())}deselect(ce=!0){this._selected&&(this._selected=!1,this._changeDetectorRef.markForCheck(),ce&&this._emitSelectionChangeEvent())}focus(ce,Ee){const it=this._getHostElement();"function"==typeof it.focus&&it.focus(Ee)}setActiveStyles(){this._active||(this._active=!0,this._changeDetectorRef.markForCheck())}setInactiveStyles(){this._active&&(this._active=!1,this._changeDetectorRef.markForCheck())}getLabel(){return this.viewValue}_handleKeydown(ce){(ce.keyCode===d.K5||ce.keyCode===d.L_)&&!(0,d.Vb)(ce)&&(this._selectViaInteraction(),ce.preventDefault())}_selectViaInteraction(){this.disabled||(this._selected=!this.multiple||!this._selected,this._changeDetectorRef.markForCheck(),this._emitSelectionChangeEvent(!0))}_getTabIndex(){return this.disabled?"-1":"0"}_getHostElement(){return this._element.nativeElement}ngAfterViewChecked(){if(this._selected){const ce=this.viewValue;ce!==this._mostRecentViewValue&&(this._mostRecentViewValue&&this._stateChanges.next(),this._mostRecentViewValue=ce)}}ngOnDestroy(){this._stateChanges.complete()}_emitSelectionChangeEvent(ce=!1){this.onSelectionChange.emit(new ve(this,ce))}}return Z.\u0275fac=function(ce){n.\u0275\u0275invalidFactory()},Z.\u0275dir=n.\u0275\u0275defineDirective({type:Z,viewQuery:function(ce,Ee){if(1&ce&&n.\u0275\u0275viewQuery(h,7),2&ce){let it;n.\u0275\u0275queryRefresh(it=n.\u0275\u0275loadQuery())&&(Ee._text=it.first)}},inputs:{value:"value",id:"id",disabled:"disabled"},outputs:{onSelectionChange:"onSelectionChange"}}),Z})(),at=(()=>{class Z extends we{constructor(ce,Ee,it,Rt){super(ce,Ee,it,Rt)}}return Z.\u0275fac=function(ce){return new(ce||Z)(n.\u0275\u0275directiveInject(n.ElementRef),n.\u0275\u0275directiveInject(n.ChangeDetectorRef),n.\u0275\u0275directiveInject(ze,8),n.\u0275\u0275directiveInject(Yt,8))},Z.\u0275cmp=n.\u0275\u0275defineComponent({type:Z,selectors:[["mat-option"]],hostAttrs:["role","option",1,"mat-mdc-option","mdc-list-item"],hostVars:11,hostBindings:function(ce,Ee){1&ce&&n.\u0275\u0275listener("click",function(){return Ee._selectViaInteraction()})("keydown",function(Rt){return Ee._handleKeydown(Rt)}),2&ce&&(n.\u0275\u0275hostProperty("id",Ee.id),n.\u0275\u0275attribute("aria-selected",Ee.selected)("aria-disabled",Ee.disabled.toString()),n.\u0275\u0275classProp("mdc-list-item--selected",Ee.selected)("mat-mdc-option-multiple",Ee.multiple)("mat-mdc-option-active",Ee.active)("mdc-list-item--disabled",Ee.disabled))},exportAs:["matOption"],features:[n.\u0275\u0275InheritDefinitionFeature],ngContentSelectors:w,decls:8,vars:5,consts:[["class","mat-mdc-option-pseudo-checkbox","aria-hidden","true",3,"disabled","state",4,"ngIf"],[1,"mdc-list-item__primary-text"],["text",""],["class","mat-mdc-option-pseudo-checkbox","state","checked","aria-hidden","true","appearance","minimal",3,"disabled",4,"ngIf"],["class","cdk-visually-hidden",4,"ngIf"],["aria-hidden","true","mat-ripple","",1,"mat-mdc-option-ripple","mat-mdc-focus-indicator",3,"matRippleTrigger","matRippleDisabled"],["aria-hidden","true",1,"mat-mdc-option-pseudo-checkbox",3,"disabled","state"],["state","checked","aria-hidden","true","appearance","minimal",1,"mat-mdc-option-pseudo-checkbox",3,"disabled"],[1,"cdk-visually-hidden"]],template:function(ce,Ee){1&ce&&(n.\u0275\u0275projectionDef(x),n.\u0275\u0275template(0,m,1,2,"mat-pseudo-checkbox",0),n.\u0275\u0275projection(1),n.\u0275\u0275elementStart(2,"span",1,2),n.\u0275\u0275projection(4,1),n.\u0275\u0275elementEnd(),n.\u0275\u0275template(5,_,1,1,"mat-pseudo-checkbox",3),n.\u0275\u0275template(6,M,2,1,"span",4),n.\u0275\u0275element(7,"div",5)),2&ce&&(n.\u0275\u0275property("ngIf",Ee.multiple),n.\u0275\u0275advance(5),n.\u0275\u0275property("ngIf",!Ee.multiple&&Ee.selected&&!Ee.hideSingleSelectionIndicator),n.\u0275\u0275advance(1),n.\u0275\u0275property("ngIf",Ee.group&&Ee.group._inert),n.\u0275\u0275advance(1),n.\u0275\u0275property("matRippleTrigger",Ee._getHostElement())("matRippleDisabled",Ee.disabled||Ee.disableRipple))},dependencies:[ct,o.NgIf,Dt],styles:['.mat-mdc-option{display:flex;position:relative;align-items:center;justify-content:flex-start;overflow:hidden;padding:0;padding-left:16px;padding-right:16px;-webkit-user-select:none;user-select:none;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;cursor:pointer;-webkit-tap-highlight-color:rgba(0,0,0,0);color:var(--mat-option-label-text-color);font-family:var(--mat-option-label-text-font);line-height:var(--mat-option-label-text-line-height);font-size:var(--mat-option-label-text-size);letter-spacing:var(--mat-option-label-text-tracking);font-weight:var(--mat-option-label-text-weight);min-height:48px}.mat-mdc-option:focus{outline:none}[dir=rtl] .mat-mdc-option,.mat-mdc-option[dir=rtl]{padding-left:16px;padding-right:16px}.mat-mdc-option:hover:not(.mdc-list-item--disabled){background-color:var(--mat-option-hover-state-layer-color)}.mat-mdc-option:focus.mdc-list-item,.mat-mdc-option.mat-mdc-option-active.mdc-list-item{background-color:var(--mat-option-focus-state-layer-color)}.mat-mdc-option.mdc-list-item--selected:not(.mdc-list-item--disabled) .mdc-list-item__primary-text{color:var(--mat-option-selected-state-label-text-color)}.mat-mdc-option.mdc-list-item--selected:not(.mdc-list-item--disabled):not(.mat-mdc-option-multiple){background-color:var(--mat-option-selected-state-layer-color)}.mat-mdc-option.mdc-list-item{align-items:center}.mat-mdc-option.mdc-list-item--disabled{cursor:default;pointer-events:none}.mat-mdc-option.mdc-list-item--disabled .mat-mdc-option-pseudo-checkbox,.mat-mdc-option.mdc-list-item--disabled .mdc-list-item__primary-text,.mat-mdc-option.mdc-list-item--disabled>mat-icon{opacity:.38}.mat-mdc-optgroup .mat-mdc-option:not(.mat-mdc-option-multiple){padding-left:32px}[dir=rtl] .mat-mdc-optgroup .mat-mdc-option:not(.mat-mdc-option-multiple){padding-left:16px;padding-right:32px}.mat-mdc-option .mat-icon,.mat-mdc-option .mat-pseudo-checkbox-full{margin-right:16px;flex-shrink:0}[dir=rtl] .mat-mdc-option .mat-icon,[dir=rtl] .mat-mdc-option .mat-pseudo-checkbox-full{margin-right:0;margin-left:16px}.mat-mdc-option .mat-pseudo-checkbox-minimal{margin-left:16px;flex-shrink:0}[dir=rtl] .mat-mdc-option .mat-pseudo-checkbox-minimal{margin-right:16px;margin-left:0}.mat-mdc-option .mat-mdc-option-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}.mat-mdc-option .mdc-list-item__primary-text{white-space:normal;font-size:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;font-family:inherit;text-decoration:inherit;text-transform:inherit;margin-right:auto}[dir=rtl] .mat-mdc-option .mdc-list-item__primary-text{margin-right:0;margin-left:auto}.cdk-high-contrast-active .mat-mdc-option.mdc-list-item--selected:not(.mat-mdc-option-multiple)::after{content:"";position:absolute;top:50%;right:16px;transform:translateY(-50%);width:10px;height:0;border-bottom:solid 10px;border-radius:10px}[dir=rtl] .cdk-high-contrast-active .mat-mdc-option.mdc-list-item--selected:not(.mat-mdc-option-multiple)::after{right:auto;left:16px}.mat-mdc-option-active .mat-mdc-focus-indicator::before{content:""}'],encapsulation:2,changeDetection:0}),Z})();function De(Z,re,ce){if(ce.length){let Ee=re.toArray(),it=ce.toArray(),Rt=0;for(let Ye=0;Yece+Ee?Math.max(0,Z-Ee+re):ce}let ke=(()=>{class Z{}return Z.\u0275fac=function(ce){return new(ce||Z)},Z.\u0275mod=n.\u0275\u0275defineNgModule({type:Z}),Z.\u0275inj=n.\u0275\u0275defineInjector({imports:[Lt,o.CommonModule,D,Kt]}),Z})()},5616:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{DateRange:()=>Sn,DefaultMatCalendarRangeStrategy:()=>qt,MAT_DATEPICKER_SCROLL_STRATEGY:()=>oi,MAT_DATEPICKER_SCROLL_STRATEGY_FACTORY:()=>li,MAT_DATEPICKER_SCROLL_STRATEGY_FACTORY_PROVIDER:()=>Pi,MAT_DATEPICKER_VALIDATORS:()=>zt,MAT_DATEPICKER_VALUE_ACCESSOR:()=>It,MAT_DATE_RANGE_SELECTION_STRATEGY:()=>pt,MAT_RANGE_DATE_SELECTION_MODEL_FACTORY:()=>wt,MAT_RANGE_DATE_SELECTION_MODEL_PROVIDER:()=>mt,MAT_SINGLE_DATE_SELECTION_MODEL_FACTORY:()=>Li,MAT_SINGLE_DATE_SELECTION_MODEL_PROVIDER:()=>Qi,MatCalendar:()=>si,MatCalendarBody:()=>qe,MatCalendarCell:()=>ce,MatCalendarHeader:()=>Yn,MatDateRangeInput:()=>ti,MatDateRangePicker:()=>Ti,MatDateSelectionModel:()=>Mn,MatDatepicker:()=>W,MatDatepickerActions:()=>_r,MatDatepickerApply:()=>zi,MatDatepickerCancel:()=>xi,MatDatepickerContent:()=>Ft,MatDatepickerInput:()=>an,MatDatepickerInputEvent:()=>be,MatDatepickerIntl:()=>re,MatDatepickerModule:()=>gi,MatDatepickerToggle:()=>pn,MatDatepickerToggleIcon:()=>gn,MatEndDate:()=>rn,MatMonthView:()=>$n,MatMultiYearView:()=>mi,MatRangeDateSelectionModel:()=>di,MatSingleDateSelectionModel:()=>Ci,MatStartDate:()=>yn,MatYearView:()=>Dn,matDatepickerAnimations:()=>ii,yearsPerPage:()=>In,yearsPerRow:()=>Zn});var n=g(4300),p=g(9594),C=g(8484),b=g(6814),o=g(5879),v=g(2831),a=g(3680);const c=["mat-button",""],s=[[["",8,"material-icons",3,"iconPositionEnd",""],["mat-icon",3,"iconPositionEnd",""],["","matButtonIcon","",3,"iconPositionEnd",""]],"*",[["","iconPositionEnd","",8,"material-icons"],["mat-icon","iconPositionEnd",""],["","matButtonIcon","","iconPositionEnd",""]]],l=[".material-icons:not([iconPositionEnd]), mat-icon:not([iconPositionEnd]), [matButtonIcon]:not([iconPositionEnd])","*",".material-icons[iconPositionEnd], mat-icon[iconPositionEnd], [matButtonIcon][iconPositionEnd]"],_=["mat-icon-button",""],M=["*"],w={capture:!0},L=["focus","click","mouseenter","touchstart"],A="mat-button-ripple-uninitialized";let T=(()=>{class Ke{constructor(){this._document=(0,o.inject)(b.DOCUMENT,{optional:!0}),this._animationMode=(0,o.inject)(o.ANIMATION_MODULE_TYPE,{optional:!0}),this._globalRippleOptions=(0,o.inject)(a.MAT_RIPPLE_GLOBAL_OPTIONS,{optional:!0}),this._platform=(0,o.inject)(v.t4),this._ngZone=(0,o.inject)(o.NgZone),this._onInteraction=U=>{if(U.target===this._document)return;const Pe=U.target.closest(`[${A}]`);Pe&&(Pe.removeAttribute(A),this._appendRipple(Pe))},this._ngZone.runOutsideAngular(()=>{for(const U of L)this._document?.addEventListener(U,this._onInteraction,w)})}ngOnDestroy(){for(const U of L)this._document?.removeEventListener(U,this._onInteraction,w)}_appendRipple(U){if(!this._document)return;const fe=this._document.createElement("span");fe.classList.add("mat-mdc-button-ripple");const Pe=new O(U,this._globalRippleOptions?this._globalRippleOptions:void 0,this._animationMode?this._animationMode:void 0);Pe.rippleConfig.centered=U.hasAttribute("mat-icon-button"),new a.RippleRenderer(Pe,this._ngZone,fe,this._platform).setupTriggerEvents(U),U.append(fe)}_createMatRipple(U){if(!this._document)return;U.querySelector(".mat-mdc-button-ripple")?.remove(),U.removeAttribute(A);const fe=this._document.createElement("span");fe.classList.add("mat-mdc-button-ripple");const Pe=new a.MatRipple(new o.ElementRef(fe),this._ngZone,this._platform,this._globalRippleOptions?this._globalRippleOptions:void 0,this._animationMode?this._animationMode:void 0);return Pe._isInitialized=!0,Pe.trigger=U,U.append(fe),Pe}}return Ke.\u0275fac=function(U){return new(U||Ke)},Ke.\u0275prov=o.\u0275\u0275defineInjectable({token:Ke,factory:Ke.\u0275fac,providedIn:"root"}),Ke})();class O{constructor(kt,U,fe){this._button=kt,this._globalRippleOptions=U,this._setRippleConfig(U,fe)}_setRippleConfig(kt,U){this.rippleConfig=kt||{},"NoopAnimations"===U&&(this.rippleConfig.animation={enterDuration:0,exitDuration:0})}get rippleDisabled(){return this._button.hasAttribute("disabled")||!!this._globalRippleOptions?.disabled}}const R=[{selector:"mat-button",mdcClasses:["mdc-button","mat-mdc-button"]},{selector:"mat-flat-button",mdcClasses:["mdc-button","mdc-button--unelevated","mat-mdc-unelevated-button"]},{selector:"mat-raised-button",mdcClasses:["mdc-button","mdc-button--raised","mat-mdc-raised-button"]},{selector:"mat-stroked-button",mdcClasses:["mdc-button","mdc-button--outlined","mat-mdc-outlined-button"]},{selector:"mat-fab",mdcClasses:["mdc-fab","mat-mdc-fab"]},{selector:"mat-mini-fab",mdcClasses:["mdc-fab","mdc-fab--mini","mat-mdc-mini-fab"]},{selector:"mat-icon-button",mdcClasses:["mdc-icon-button","mat-mdc-icon-button"]}],j=(0,a.mixinColor)((0,a.mixinDisabled)((0,a.mixinDisableRipple)(class{constructor(Ke){this._elementRef=Ke}})));let N=(()=>{class Ke extends j{get ripple(){return!this._ripple&&this._rippleLoader&&(this._ripple=this._rippleLoader._createMatRipple(this._elementRef.nativeElement)),this._ripple}set ripple(U){this._ripple=U}constructor(U,fe,Pe,Je){super(U),this._platform=fe,this._ngZone=Pe,this._animationMode=Je,this._focusMonitor=(0,o.inject)(n.tE),this._rippleLoader=(0,o.inject)(T),this._isFab=!1;const Gt=U.nativeElement.classList;for(const Pn of R)this._hasHostAttributes(Pn.selector)&&Pn.mdcClasses.forEach(Gi=>{Gt.add(Gi)})}ngAfterViewInit(){this._focusMonitor.monitor(this._elementRef,!0)}ngOnChanges(){this._ripple&&(this._ripple.disabled=this.disableRipple||this.disabled)}ngOnDestroy(){this._focusMonitor.stopMonitoring(this._elementRef)}focus(U="program",fe){U?this._focusMonitor.focusVia(this._elementRef.nativeElement,U,fe):this._elementRef.nativeElement.focus(fe)}_hasHostAttributes(...U){return U.some(fe=>this._elementRef.nativeElement.hasAttribute(fe))}}return Ke.\u0275fac=function(U){o.\u0275\u0275invalidFactory()},Ke.\u0275dir=o.\u0275\u0275defineDirective({type:Ke,features:[o.\u0275\u0275InheritDefinitionFeature,o.\u0275\u0275NgOnChangesFeature]}),Ke})(),Y=(()=>{class Ke extends N{constructor(U,fe,Pe,Je){super(U,fe,Pe,Je)}}return Ke.\u0275fac=function(U){return new(U||Ke)(o.\u0275\u0275directiveInject(o.ElementRef),o.\u0275\u0275directiveInject(v.t4),o.\u0275\u0275directiveInject(o.NgZone),o.\u0275\u0275directiveInject(o.ANIMATION_MODULE_TYPE,8))},Ke.\u0275cmp=o.\u0275\u0275defineComponent({type:Ke,selectors:[["button","mat-button",""],["button","mat-raised-button",""],["button","mat-flat-button",""],["button","mat-stroked-button",""]],hostAttrs:["mat-button-ripple-uninitialized",""],hostVars:7,hostBindings:function(U,fe){2&U&&(o.\u0275\u0275attribute("disabled",fe.disabled||null),o.\u0275\u0275classProp("_mat-animation-noopable","NoopAnimations"===fe._animationMode)("mat-unthemed",!fe.color)("mat-mdc-button-base",!0))},inputs:{disabled:"disabled",disableRipple:"disableRipple",color:"color"},exportAs:["matButton"],features:[o.\u0275\u0275InheritDefinitionFeature],attrs:c,ngContentSelectors:l,decls:7,vars:4,consts:[[1,"mat-mdc-button-persistent-ripple"],[1,"mdc-button__label"],[1,"mat-mdc-focus-indicator"],[1,"mat-mdc-button-touch-target"]],template:function(U,fe){1&U&&(o.\u0275\u0275projectionDef(s),o.\u0275\u0275element(0,"span",0),o.\u0275\u0275projection(1),o.\u0275\u0275elementStart(2,"span",1),o.\u0275\u0275projection(3,1),o.\u0275\u0275elementEnd(),o.\u0275\u0275projection(4,2),o.\u0275\u0275element(5,"span",2)(6,"span",3)),2&U&&o.\u0275\u0275classProp("mdc-button__ripple",!fe._isFab)("mdc-fab__ripple",fe._isFab)},styles:['.mdc-touch-target-wrapper{display:inline}.mdc-elevation-overlay{position:absolute;border-radius:inherit;pointer-events:none;opacity:var(--mdc-elevation-overlay-opacity, 0);transition:opacity 280ms cubic-bezier(0.4, 0, 0.2, 1)}.mdc-button{position:relative;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-width:64px;border:none;outline:none;line-height:inherit;user-select:none;-webkit-appearance:none;overflow:visible;vertical-align:middle;background:rgba(0,0,0,0)}.mdc-button .mdc-elevation-overlay{width:100%;height:100%;top:0;left:0}.mdc-button::-moz-focus-inner{padding:0;border:0}.mdc-button:active{outline:none}.mdc-button:hover{cursor:pointer}.mdc-button:disabled{cursor:default;pointer-events:none}.mdc-button[hidden]{display:none}.mdc-button .mdc-button__icon{margin-left:0;margin-right:8px;display:inline-block;position:relative;vertical-align:top}[dir=rtl] .mdc-button .mdc-button__icon,.mdc-button .mdc-button__icon[dir=rtl]{margin-left:8px;margin-right:0}.mdc-button .mdc-button__progress-indicator{font-size:0;position:absolute;transform:translate(-50%, -50%);top:50%;left:50%;line-height:initial}.mdc-button .mdc-button__label{position:relative}.mdc-button .mdc-button__focus-ring{pointer-events:none;border:2px solid rgba(0,0,0,0);border-radius:6px;box-sizing:content-box;position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);height:calc(\n 100% + 4px\n );width:calc(\n 100% + 4px\n );display:none}@media screen and (forced-colors: active){.mdc-button .mdc-button__focus-ring{border-color:CanvasText}}.mdc-button .mdc-button__focus-ring::after{content:"";border:2px solid rgba(0,0,0,0);border-radius:8px;display:block;position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);height:calc(100% + 4px);width:calc(100% + 4px)}@media screen and (forced-colors: active){.mdc-button .mdc-button__focus-ring::after{border-color:CanvasText}}@media screen and (forced-colors: active){.mdc-button.mdc-ripple-upgraded--background-focused .mdc-button__focus-ring,.mdc-button:not(.mdc-ripple-upgraded):focus .mdc-button__focus-ring{display:block}}.mdc-button .mdc-button__touch{position:absolute;top:50%;height:48px;left:0;right:0;transform:translateY(-50%)}.mdc-button__label+.mdc-button__icon{margin-left:8px;margin-right:0}[dir=rtl] .mdc-button__label+.mdc-button__icon,.mdc-button__label+.mdc-button__icon[dir=rtl]{margin-left:0;margin-right:8px}svg.mdc-button__icon{fill:currentColor}.mdc-button--touch{margin-top:6px;margin-bottom:6px}.mdc-button{padding:0 8px 0 8px}.mdc-button--unelevated{transition:box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);padding:0 16px 0 16px}.mdc-button--unelevated.mdc-button--icon-trailing{padding:0 12px 0 16px}.mdc-button--unelevated.mdc-button--icon-leading{padding:0 16px 0 12px}.mdc-button--raised{transition:box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);padding:0 16px 0 16px}.mdc-button--raised.mdc-button--icon-trailing{padding:0 12px 0 16px}.mdc-button--raised.mdc-button--icon-leading{padding:0 16px 0 12px}.mdc-button--outlined{border-style:solid;transition:border 280ms cubic-bezier(0.4, 0, 0.2, 1)}.mdc-button--outlined .mdc-button__ripple{border-style:solid;border-color:rgba(0,0,0,0)}.mat-mdc-button{height:var(--mdc-text-button-container-height, 36px);border-radius:var(--mdc-text-button-container-shape, var(--mdc-shape-small, 4px))}.mat-mdc-button:not(:disabled){color:var(--mdc-text-button-label-text-color, inherit)}.mat-mdc-button:disabled{color:var(--mdc-text-button-disabled-label-text-color, rgba(0, 0, 0, 0.38))}.mat-mdc-button .mdc-button__ripple{border-radius:var(--mdc-text-button-container-shape, var(--mdc-shape-small, 4px))}.mat-mdc-unelevated-button{height:var(--mdc-filled-button-container-height, 36px);border-radius:var(--mdc-filled-button-container-shape, var(--mdc-shape-small, 4px))}.mat-mdc-unelevated-button:not(:disabled){background-color:var(--mdc-filled-button-container-color, transparent)}.mat-mdc-unelevated-button:disabled{background-color:var(--mdc-filled-button-disabled-container-color, rgba(0, 0, 0, 0.12))}.mat-mdc-unelevated-button:not(:disabled){color:var(--mdc-filled-button-label-text-color, inherit)}.mat-mdc-unelevated-button:disabled{color:var(--mdc-filled-button-disabled-label-text-color, rgba(0, 0, 0, 0.38))}.mat-mdc-unelevated-button .mdc-button__ripple{border-radius:var(--mdc-filled-button-container-shape, var(--mdc-shape-small, 4px))}.mat-mdc-raised-button{height:var(--mdc-protected-button-container-height, 36px);border-radius:var(--mdc-protected-button-container-shape, var(--mdc-shape-small, 4px));box-shadow:var(--mdc-protected-button-container-elevation, 0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12))}.mat-mdc-raised-button:not(:disabled){background-color:var(--mdc-protected-button-container-color, transparent)}.mat-mdc-raised-button:disabled{background-color:var(--mdc-protected-button-disabled-container-color, rgba(0, 0, 0, 0.12))}.mat-mdc-raised-button:not(:disabled){color:var(--mdc-protected-button-label-text-color, inherit)}.mat-mdc-raised-button:disabled{color:var(--mdc-protected-button-disabled-label-text-color, rgba(0, 0, 0, 0.38))}.mat-mdc-raised-button .mdc-button__ripple{border-radius:var(--mdc-protected-button-container-shape, var(--mdc-shape-small, 4px))}.mat-mdc-raised-button.mdc-ripple-upgraded--background-focused,.mat-mdc-raised-button:not(.mdc-ripple-upgraded):focus{box-shadow:var(--mdc-protected-button-focus-container-elevation, 0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12))}.mat-mdc-raised-button:hover{box-shadow:var(--mdc-protected-button-hover-container-elevation, 0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12))}.mat-mdc-raised-button:not(:disabled):active{box-shadow:var(--mdc-protected-button-pressed-container-elevation, 0px 5px 5px -3px rgba(0, 0, 0, 0.2), 0px 8px 10px 1px rgba(0, 0, 0, 0.14), 0px 3px 14px 2px rgba(0, 0, 0, 0.12))}.mat-mdc-raised-button:disabled{box-shadow:var(--mdc-protected-button-disabled-container-elevation, 0px 0px 0px 0px rgba(0, 0, 0, 0.2), 0px 0px 0px 0px rgba(0, 0, 0, 0.14), 0px 0px 0px 0px rgba(0, 0, 0, 0.12))}.mat-mdc-outlined-button{height:var(--mdc-outlined-button-container-height, 36px);border-radius:var(--mdc-outlined-button-container-shape, var(--mdc-shape-small, 4px));padding:0 15px 0 15px;border-width:var(--mdc-outlined-button-outline-width, 1px)}.mat-mdc-outlined-button:not(:disabled){color:var(--mdc-outlined-button-label-text-color, inherit)}.mat-mdc-outlined-button:disabled{color:var(--mdc-outlined-button-disabled-label-text-color, rgba(0, 0, 0, 0.38))}.mat-mdc-outlined-button .mdc-button__ripple{border-radius:var(--mdc-outlined-button-container-shape, var(--mdc-shape-small, 4px))}.mat-mdc-outlined-button:not(:disabled){border-color:var(--mdc-outlined-button-outline-color, rgba(0, 0, 0, 0.12))}.mat-mdc-outlined-button:disabled{border-color:var(--mdc-outlined-button-disabled-outline-color, rgba(0, 0, 0, 0.12))}.mat-mdc-outlined-button.mdc-button--icon-trailing{padding:0 11px 0 15px}.mat-mdc-outlined-button.mdc-button--icon-leading{padding:0 15px 0 11px}.mat-mdc-outlined-button .mdc-button__ripple{top:-1px;left:-1px;bottom:-1px;right:-1px;border-width:var(--mdc-outlined-button-outline-width, 1px)}.mat-mdc-outlined-button .mdc-button__touch{left:calc(-1 * var(--mdc-outlined-button-outline-width, 1px));width:calc(100% + 2 * var(--mdc-outlined-button-outline-width, 1px))}.mat-mdc-button,.mat-mdc-unelevated-button,.mat-mdc-raised-button,.mat-mdc-outlined-button{-webkit-tap-highlight-color:rgba(0,0,0,0)}.mat-mdc-button .mat-mdc-button-ripple,.mat-mdc-button .mat-mdc-button-persistent-ripple,.mat-mdc-button .mat-mdc-button-persistent-ripple::before,.mat-mdc-unelevated-button .mat-mdc-button-ripple,.mat-mdc-unelevated-button .mat-mdc-button-persistent-ripple,.mat-mdc-unelevated-button .mat-mdc-button-persistent-ripple::before,.mat-mdc-raised-button .mat-mdc-button-ripple,.mat-mdc-raised-button .mat-mdc-button-persistent-ripple,.mat-mdc-raised-button .mat-mdc-button-persistent-ripple::before,.mat-mdc-outlined-button .mat-mdc-button-ripple,.mat-mdc-outlined-button .mat-mdc-button-persistent-ripple,.mat-mdc-outlined-button .mat-mdc-button-persistent-ripple::before{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none;border-radius:inherit}.mat-mdc-button .mat-mdc-button-ripple,.mat-mdc-unelevated-button .mat-mdc-button-ripple,.mat-mdc-raised-button .mat-mdc-button-ripple,.mat-mdc-outlined-button .mat-mdc-button-ripple{overflow:hidden}.mat-mdc-button .mat-mdc-button-persistent-ripple::before,.mat-mdc-unelevated-button .mat-mdc-button-persistent-ripple::before,.mat-mdc-raised-button .mat-mdc-button-persistent-ripple::before,.mat-mdc-outlined-button .mat-mdc-button-persistent-ripple::before{content:"";opacity:0;background-color:var(--mat-mdc-button-persistent-ripple-color)}.mat-mdc-button .mat-ripple-element,.mat-mdc-unelevated-button .mat-ripple-element,.mat-mdc-raised-button .mat-ripple-element,.mat-mdc-outlined-button .mat-ripple-element{background-color:var(--mat-mdc-button-ripple-color)}.mat-mdc-button .mdc-button__label,.mat-mdc-unelevated-button .mdc-button__label,.mat-mdc-raised-button .mdc-button__label,.mat-mdc-outlined-button .mdc-button__label{z-index:1}.mat-mdc-button .mat-mdc-focus-indicator,.mat-mdc-unelevated-button .mat-mdc-focus-indicator,.mat-mdc-raised-button .mat-mdc-focus-indicator,.mat-mdc-outlined-button .mat-mdc-focus-indicator{top:0;left:0;right:0;bottom:0;position:absolute}.mat-mdc-button:focus .mat-mdc-focus-indicator::before,.mat-mdc-unelevated-button:focus .mat-mdc-focus-indicator::before,.mat-mdc-raised-button:focus .mat-mdc-focus-indicator::before,.mat-mdc-outlined-button:focus .mat-mdc-focus-indicator::before{content:""}.mat-mdc-button[disabled],.mat-mdc-unelevated-button[disabled],.mat-mdc-raised-button[disabled],.mat-mdc-outlined-button[disabled]{cursor:default;pointer-events:none}.mat-mdc-button .mat-mdc-button-touch-target,.mat-mdc-unelevated-button .mat-mdc-button-touch-target,.mat-mdc-raised-button .mat-mdc-button-touch-target,.mat-mdc-outlined-button .mat-mdc-button-touch-target{position:absolute;top:50%;height:48px;left:0;right:0;transform:translateY(-50%)}.mat-mdc-button._mat-animation-noopable,.mat-mdc-unelevated-button._mat-animation-noopable,.mat-mdc-raised-button._mat-animation-noopable,.mat-mdc-outlined-button._mat-animation-noopable{transition:none !important;animation:none !important}.mat-mdc-button>.mat-icon{margin-left:0;margin-right:8px;display:inline-block;position:relative;vertical-align:top;font-size:1.125rem;height:1.125rem;width:1.125rem}[dir=rtl] .mat-mdc-button>.mat-icon,.mat-mdc-button>.mat-icon[dir=rtl]{margin-left:8px;margin-right:0}.mat-mdc-button .mdc-button__label+.mat-icon{margin-left:8px;margin-right:0}[dir=rtl] .mat-mdc-button .mdc-button__label+.mat-icon,.mat-mdc-button .mdc-button__label+.mat-icon[dir=rtl]{margin-left:0;margin-right:8px}.mat-mdc-unelevated-button>.mat-icon,.mat-mdc-raised-button>.mat-icon,.mat-mdc-outlined-button>.mat-icon{margin-left:0;margin-right:8px;display:inline-block;position:relative;vertical-align:top;font-size:1.125rem;height:1.125rem;width:1.125rem;margin-left:-4px;margin-right:8px}[dir=rtl] .mat-mdc-unelevated-button>.mat-icon,[dir=rtl] .mat-mdc-raised-button>.mat-icon,[dir=rtl] .mat-mdc-outlined-button>.mat-icon,.mat-mdc-unelevated-button>.mat-icon[dir=rtl],.mat-mdc-raised-button>.mat-icon[dir=rtl],.mat-mdc-outlined-button>.mat-icon[dir=rtl]{margin-left:8px;margin-right:0}[dir=rtl] .mat-mdc-unelevated-button>.mat-icon,[dir=rtl] .mat-mdc-raised-button>.mat-icon,[dir=rtl] .mat-mdc-outlined-button>.mat-icon,.mat-mdc-unelevated-button>.mat-icon[dir=rtl],.mat-mdc-raised-button>.mat-icon[dir=rtl],.mat-mdc-outlined-button>.mat-icon[dir=rtl]{margin-left:8px;margin-right:-4px}.mat-mdc-unelevated-button .mdc-button__label+.mat-icon,.mat-mdc-raised-button .mdc-button__label+.mat-icon,.mat-mdc-outlined-button .mdc-button__label+.mat-icon{margin-left:8px;margin-right:-4px}[dir=rtl] .mat-mdc-unelevated-button .mdc-button__label+.mat-icon,[dir=rtl] .mat-mdc-raised-button .mdc-button__label+.mat-icon,[dir=rtl] .mat-mdc-outlined-button .mdc-button__label+.mat-icon,.mat-mdc-unelevated-button .mdc-button__label+.mat-icon[dir=rtl],.mat-mdc-raised-button .mdc-button__label+.mat-icon[dir=rtl],.mat-mdc-outlined-button .mdc-button__label+.mat-icon[dir=rtl]{margin-left:-4px;margin-right:8px}.mat-mdc-outlined-button .mat-mdc-button-ripple,.mat-mdc-outlined-button .mdc-button__ripple{top:-1px;left:-1px;bottom:-1px;right:-1px;border-width:-1px}.mat-mdc-unelevated-button .mat-mdc-focus-indicator::before,.mat-mdc-raised-button .mat-mdc-focus-indicator::before{margin:calc(calc(var(--mat-mdc-focus-indicator-border-width, 3px) + 2px) * -1)}.mat-mdc-outlined-button .mat-mdc-focus-indicator::before{margin:calc(calc(var(--mat-mdc-focus-indicator-border-width, 3px) + 3px) * -1)}',".cdk-high-contrast-active .mat-mdc-button:not(.mdc-button--outlined),.cdk-high-contrast-active .mat-mdc-unelevated-button:not(.mdc-button--outlined),.cdk-high-contrast-active .mat-mdc-raised-button:not(.mdc-button--outlined),.cdk-high-contrast-active .mat-mdc-outlined-button:not(.mdc-button--outlined),.cdk-high-contrast-active .mat-mdc-icon-button{outline:solid 1px}"],encapsulation:2,changeDetection:0}),Ke})(),Xe=(()=>{class Ke extends N{get ripple(){return!this._ripple&&this._rippleLoader&&(this._ripple=this._rippleLoader._createMatRipple(this._elementRef.nativeElement),this._ripple.centered=!0),this._ripple}constructor(U,fe,Pe,Je){super(U,fe,Pe,Je)}}return Ke.\u0275fac=function(U){return new(U||Ke)(o.\u0275\u0275directiveInject(o.ElementRef),o.\u0275\u0275directiveInject(v.t4),o.\u0275\u0275directiveInject(o.NgZone),o.\u0275\u0275directiveInject(o.ANIMATION_MODULE_TYPE,8))},Ke.\u0275cmp=o.\u0275\u0275defineComponent({type:Ke,selectors:[["button","mat-icon-button",""]],hostAttrs:["mat-button-ripple-uninitialized",""],hostVars:7,hostBindings:function(U,fe){2&U&&(o.\u0275\u0275attribute("disabled",fe.disabled||null),o.\u0275\u0275classProp("_mat-animation-noopable","NoopAnimations"===fe._animationMode)("mat-unthemed",!fe.color)("mat-mdc-button-base",!0))},inputs:{disabled:"disabled",disableRipple:"disableRipple",color:"color"},exportAs:["matButton"],features:[o.\u0275\u0275InheritDefinitionFeature],attrs:_,ngContentSelectors:M,decls:4,vars:0,consts:[[1,"mat-mdc-button-persistent-ripple","mdc-icon-button__ripple"],[1,"mat-mdc-focus-indicator"],[1,"mat-mdc-button-touch-target"]],template:function(U,fe){1&U&&(o.\u0275\u0275projectionDef(),o.\u0275\u0275element(0,"span",0),o.\u0275\u0275projection(1),o.\u0275\u0275element(2,"span",1)(3,"span",2))},styles:['.mdc-icon-button{display:inline-block;position:relative;box-sizing:border-box;border:none;outline:none;background-color:rgba(0,0,0,0);fill:currentColor;color:inherit;text-decoration:none;cursor:pointer;user-select:none;z-index:0;overflow:visible}.mdc-icon-button .mdc-icon-button__touch{position:absolute;top:50%;height:48px;left:50%;width:48px;transform:translate(-50%, -50%)}@media screen and (forced-colors: active){.mdc-icon-button.mdc-ripple-upgraded--background-focused .mdc-icon-button__focus-ring,.mdc-icon-button:not(.mdc-ripple-upgraded):focus .mdc-icon-button__focus-ring{display:block}}.mdc-icon-button:disabled{cursor:default;pointer-events:none}.mdc-icon-button[hidden]{display:none}.mdc-icon-button--display-flex{align-items:center;display:inline-flex;justify-content:center}.mdc-icon-button__focus-ring{pointer-events:none;border:2px solid rgba(0,0,0,0);border-radius:6px;box-sizing:content-box;position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);height:100%;width:100%;display:none}@media screen and (forced-colors: active){.mdc-icon-button__focus-ring{border-color:CanvasText}}.mdc-icon-button__focus-ring::after{content:"";border:2px solid rgba(0,0,0,0);border-radius:8px;display:block;position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);height:calc(100% + 4px);width:calc(100% + 4px)}@media screen and (forced-colors: active){.mdc-icon-button__focus-ring::after{border-color:CanvasText}}.mdc-icon-button__icon{display:inline-block}.mdc-icon-button__icon.mdc-icon-button__icon--on{display:none}.mdc-icon-button--on .mdc-icon-button__icon{display:none}.mdc-icon-button--on .mdc-icon-button__icon.mdc-icon-button__icon--on{display:inline-block}.mdc-icon-button__link{height:100%;left:0;outline:none;position:absolute;top:0;width:100%}.mat-mdc-icon-button{height:var(--mdc-icon-button-state-layer-size);width:var(--mdc-icon-button-state-layer-size);color:var(--mdc-icon-button-icon-color);--mdc-icon-button-state-layer-size:48px;--mdc-icon-button-icon-size:24px;--mdc-icon-button-disabled-icon-color:black;--mdc-icon-button-disabled-icon-opacity:0.38}.mat-mdc-icon-button .mdc-button__icon{font-size:var(--mdc-icon-button-icon-size)}.mat-mdc-icon-button svg,.mat-mdc-icon-button img{width:var(--mdc-icon-button-icon-size);height:var(--mdc-icon-button-icon-size)}.mat-mdc-icon-button:disabled{opacity:var(--mdc-icon-button-disabled-icon-opacity)}.mat-mdc-icon-button:disabled{color:var(--mdc-icon-button-disabled-icon-color)}.mat-mdc-icon-button{padding:12px;font-size:var(--mdc-icon-button-icon-size);border-radius:50%;flex-shrink:0;text-align:center;-webkit-tap-highlight-color:rgba(0,0,0,0)}.mat-mdc-icon-button svg{vertical-align:baseline}.mat-mdc-icon-button[disabled]{cursor:default;pointer-events:none;opacity:1}.mat-mdc-icon-button .mat-mdc-button-ripple,.mat-mdc-icon-button .mat-mdc-button-persistent-ripple,.mat-mdc-icon-button .mat-mdc-button-persistent-ripple::before{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none;border-radius:inherit}.mat-mdc-icon-button .mat-mdc-button-ripple{overflow:hidden}.mat-mdc-icon-button .mat-mdc-button-persistent-ripple::before{content:"";opacity:0;background-color:var(--mat-mdc-button-persistent-ripple-color)}.mat-mdc-icon-button .mat-ripple-element{background-color:var(--mat-mdc-button-ripple-color)}.mat-mdc-icon-button .mdc-button__label{z-index:1}.mat-mdc-icon-button .mat-mdc-focus-indicator{top:0;left:0;right:0;bottom:0;position:absolute}.mat-mdc-icon-button:focus .mat-mdc-focus-indicator::before{content:""}.mat-mdc-icon-button .mat-mdc-button-touch-target{position:absolute;top:50%;height:48px;left:50%;width:48px;transform:translate(-50%, -50%)}.mat-mdc-icon-button._mat-animation-noopable{transition:none !important;animation:none !important}.mat-mdc-icon-button .mat-mdc-button-persistent-ripple{border-radius:50%}.mat-mdc-icon-button.mat-unthemed:not(.mdc-ripple-upgraded):focus::before,.mat-mdc-icon-button.mat-primary:not(.mdc-ripple-upgraded):focus::before,.mat-mdc-icon-button.mat-accent:not(.mdc-ripple-upgraded):focus::before,.mat-mdc-icon-button.mat-warn:not(.mdc-ripple-upgraded):focus::before{background:rgba(0,0,0,0);opacity:1}',".cdk-high-contrast-active .mat-mdc-button:not(.mdc-button--outlined),.cdk-high-contrast-active .mat-mdc-unelevated-button:not(.mdc-button--outlined),.cdk-high-contrast-active .mat-mdc-raised-button:not(.mdc-button--outlined),.cdk-high-contrast-active .mat-mdc-outlined-button:not(.mdc-button--outlined),.cdk-high-contrast-active .mat-mdc-icon-button{outline:solid 1px}"],encapsulation:2,changeDetection:0}),Ke})(),$e=(()=>{class Ke{}return Ke.\u0275fac=function(U){return new(U||Ke)},Ke.\u0275mod=o.\u0275\u0275defineNgModule({type:Ke}),Ke.\u0275inj=o.\u0275\u0275defineInjector({imports:[a.MatCommonModule,a.MatRippleModule,a.MatCommonModule]}),Ke})();var st=g(6672),Mt=g(8645),tt=g(7394),St=g(3019),bt=g(2096),xt=g(6028),nt=g(9388),ot=g(8180),vt=g(7921),rt=g(2181),J=g(2495),Ce=g(6825),ee=g(6223),ae=g(1043),ie=g(4516);const pe=["mat-calendar-body",""];function Te(Ke,kt){if(1&Ke&&(o.\u0275\u0275elementStart(0,"tr",3)(1,"td",4),o.\u0275\u0275text(2),o.\u0275\u0275elementEnd()()),2&Ke){const U=o.\u0275\u0275nextContext();o.\u0275\u0275advance(1),o.\u0275\u0275styleProp("padding-top",U._cellPadding)("padding-bottom",U._cellPadding),o.\u0275\u0275attribute("colspan",U.numCols),o.\u0275\u0275advance(1),o.\u0275\u0275textInterpolate1(" ",U.label," ")}}function ct(Ke,kt){if(1&Ke&&(o.\u0275\u0275elementStart(0,"td",4),o.\u0275\u0275text(1),o.\u0275\u0275elementEnd()),2&Ke){const U=o.\u0275\u0275nextContext(2);o.\u0275\u0275styleProp("padding-top",U._cellPadding)("padding-bottom",U._cellPadding),o.\u0275\u0275attribute("colspan",U._firstRowOffset),o.\u0275\u0275advance(1),o.\u0275\u0275textInterpolate1(" ",U._firstRowOffset>=U.labelMinRequiredCells?U.label:""," ")}}function Lt(Ke,kt){if(1&Ke){const U=o.\u0275\u0275getCurrentView();o.\u0275\u0275elementStart(0,"td",8)(1,"button",9),o.\u0275\u0275listener("click",function(Pe){const Gt=o.\u0275\u0275restoreView(U).$implicit,Pn=o.\u0275\u0275nextContext(2);return o.\u0275\u0275resetView(Pn._cellClicked(Gt,Pe))})("focus",function(Pe){const Gt=o.\u0275\u0275restoreView(U).$implicit,Pn=o.\u0275\u0275nextContext(2);return o.\u0275\u0275resetView(Pn._emitActiveDateChange(Gt,Pe))}),o.\u0275\u0275elementStart(2,"span",10),o.\u0275\u0275text(3),o.\u0275\u0275elementEnd(),o.\u0275\u0275element(4,"span",11),o.\u0275\u0275elementEnd()()}if(2&Ke){const U=kt.$implicit,fe=kt.index,Pe=o.\u0275\u0275nextContext().index,Je=o.\u0275\u0275nextContext();o.\u0275\u0275styleProp("width",Je._cellWidth)("padding-top",Je._cellPadding)("padding-bottom",Je._cellPadding),o.\u0275\u0275attribute("data-mat-row",Pe)("data-mat-col",fe),o.\u0275\u0275advance(1),o.\u0275\u0275classProp("mat-calendar-body-disabled",!U.enabled)("mat-calendar-body-active",Je._isActiveCell(Pe,fe))("mat-calendar-body-range-start",Je._isRangeStart(U.compareValue))("mat-calendar-body-range-end",Je._isRangeEnd(U.compareValue))("mat-calendar-body-in-range",Je._isInRange(U.compareValue))("mat-calendar-body-comparison-bridge-start",Je._isComparisonBridgeStart(U.compareValue,Pe,fe))("mat-calendar-body-comparison-bridge-end",Je._isComparisonBridgeEnd(U.compareValue,Pe,fe))("mat-calendar-body-comparison-start",Je._isComparisonStart(U.compareValue))("mat-calendar-body-comparison-end",Je._isComparisonEnd(U.compareValue))("mat-calendar-body-in-comparison-range",Je._isInComparisonRange(U.compareValue))("mat-calendar-body-preview-start",Je._isPreviewStart(U.compareValue))("mat-calendar-body-preview-end",Je._isPreviewEnd(U.compareValue))("mat-calendar-body-in-preview",Je._isInPreview(U.compareValue)),o.\u0275\u0275property("ngClass",U.cssClasses)("tabindex",Je._isActiveCell(Pe,fe)?0:-1),o.\u0275\u0275attribute("aria-label",U.ariaLabel)("aria-disabled",!U.enabled||null)("aria-pressed",Je._isSelected(U.compareValue))("aria-current",Je.todayValue===U.compareValue?"date":null)("aria-describedby",Je._getDescribedby(U.compareValue)),o.\u0275\u0275advance(1),o.\u0275\u0275classProp("mat-calendar-body-selected",Je._isSelected(U.compareValue))("mat-calendar-body-comparison-identical",Je._isComparisonIdentical(U.compareValue))("mat-calendar-body-today",Je.todayValue===U.compareValue),o.\u0275\u0275advance(1),o.\u0275\u0275textInterpolate1(" ",U.displayValue," ")}}function Dt(Ke,kt){if(1&Ke&&(o.\u0275\u0275elementStart(0,"tr",5),o.\u0275\u0275template(1,ct,2,6,"td",6),o.\u0275\u0275template(2,Lt,5,48,"td",7),o.\u0275\u0275elementEnd()),2&Ke){const U=kt.$implicit,fe=kt.index,Pe=o.\u0275\u0275nextContext();o.\u0275\u0275advance(1),o.\u0275\u0275property("ngIf",0===fe&&Pe._firstRowOffset),o.\u0275\u0275advance(1),o.\u0275\u0275property("ngForOf",U)}}function Kt(Ke,kt){if(1&Ke&&(o.\u0275\u0275elementStart(0,"th",5)(1,"span",6),o.\u0275\u0275text(2),o.\u0275\u0275elementEnd(),o.\u0275\u0275elementStart(3,"span",7),o.\u0275\u0275text(4),o.\u0275\u0275elementEnd()()),2&Ke){const U=kt.$implicit;o.\u0275\u0275advance(2),o.\u0275\u0275textInterpolate(U.long),o.\u0275\u0275advance(2),o.\u0275\u0275textInterpolate(U.narrow)}}const ze=["*"];function yt(Ke,kt){}function Bt(Ke,kt){if(1&Ke){const U=o.\u0275\u0275getCurrentView();o.\u0275\u0275elementStart(0,"mat-month-view",5),o.\u0275\u0275listener("activeDateChange",function(Pe){o.\u0275\u0275restoreView(U);const Je=o.\u0275\u0275nextContext();return o.\u0275\u0275resetView(Je.activeDate=Pe)})("_userSelection",function(Pe){o.\u0275\u0275restoreView(U);const Je=o.\u0275\u0275nextContext();return o.\u0275\u0275resetView(Je._dateSelected(Pe))})("dragStarted",function(Pe){o.\u0275\u0275restoreView(U);const Je=o.\u0275\u0275nextContext();return o.\u0275\u0275resetView(Je._dragStarted(Pe))})("dragEnded",function(Pe){o.\u0275\u0275restoreView(U);const Je=o.\u0275\u0275nextContext();return o.\u0275\u0275resetView(Je._dragEnded(Pe))}),o.\u0275\u0275elementEnd()}if(2&Ke){const U=o.\u0275\u0275nextContext();o.\u0275\u0275property("activeDate",U.activeDate)("selected",U.selected)("dateFilter",U.dateFilter)("maxDate",U.maxDate)("minDate",U.minDate)("dateClass",U.dateClass)("comparisonStart",U.comparisonStart)("comparisonEnd",U.comparisonEnd)("startDateAccessibleName",U.startDateAccessibleName)("endDateAccessibleName",U.endDateAccessibleName)("activeDrag",U._activeDrag)}}function $t(Ke,kt){if(1&Ke){const U=o.\u0275\u0275getCurrentView();o.\u0275\u0275elementStart(0,"mat-year-view",6),o.\u0275\u0275listener("activeDateChange",function(Pe){o.\u0275\u0275restoreView(U);const Je=o.\u0275\u0275nextContext();return o.\u0275\u0275resetView(Je.activeDate=Pe)})("monthSelected",function(Pe){o.\u0275\u0275restoreView(U);const Je=o.\u0275\u0275nextContext();return o.\u0275\u0275resetView(Je._monthSelectedInYearView(Pe))})("selectedChange",function(Pe){o.\u0275\u0275restoreView(U);const Je=o.\u0275\u0275nextContext();return o.\u0275\u0275resetView(Je._goToDateInView(Pe,"month"))}),o.\u0275\u0275elementEnd()}if(2&Ke){const U=o.\u0275\u0275nextContext();o.\u0275\u0275property("activeDate",U.activeDate)("selected",U.selected)("dateFilter",U.dateFilter)("maxDate",U.maxDate)("minDate",U.minDate)("dateClass",U.dateClass)}}function Yt(Ke,kt){if(1&Ke){const U=o.\u0275\u0275getCurrentView();o.\u0275\u0275elementStart(0,"mat-multi-year-view",7),o.\u0275\u0275listener("activeDateChange",function(Pe){o.\u0275\u0275restoreView(U);const Je=o.\u0275\u0275nextContext();return o.\u0275\u0275resetView(Je.activeDate=Pe)})("yearSelected",function(Pe){o.\u0275\u0275restoreView(U);const Je=o.\u0275\u0275nextContext();return o.\u0275\u0275resetView(Je._yearSelectedInMultiYearView(Pe))})("selectedChange",function(Pe){o.\u0275\u0275restoreView(U);const Je=o.\u0275\u0275nextContext();return o.\u0275\u0275resetView(Je._goToDateInView(Pe,"year"))}),o.\u0275\u0275elementEnd()}if(2&Ke){const U=o.\u0275\u0275nextContext();o.\u0275\u0275property("activeDate",U.activeDate)("selected",U.selected)("dateFilter",U.dateFilter)("maxDate",U.maxDate)("minDate",U.minDate)("dateClass",U.dateClass)}}function Ue(Ke,kt){}const We=["button"];function ve(Ke,kt){1&Ke&&(o.\u0275\u0275namespaceSVG(),o.\u0275\u0275elementStart(0,"svg",3),o.\u0275\u0275element(1,"path",4),o.\u0275\u0275elementEnd())}const we=[[["","matDatepickerToggleIcon",""]]],at=["[matDatepickerToggleIcon]"],De=[[["input","matStartDate",""]],[["input","matEndDate",""]]],je=["input[matStartDate]","input[matEndDate]"];function ke(Ke,kt){1&Ke&&(o.\u0275\u0275elementStart(0,"div",0),o.\u0275\u0275projection(1),o.\u0275\u0275elementEnd())}let re=(()=>{class Ke{constructor(){this.changes=new Mt.x,this.calendarLabel="Calendar",this.openCalendarLabel="Open calendar",this.closeCalendarLabel="Close calendar",this.prevMonthLabel="Previous month",this.nextMonthLabel="Next month",this.prevYearLabel="Previous year",this.nextYearLabel="Next year",this.prevMultiYearLabel="Previous 24 years",this.nextMultiYearLabel="Next 24 years",this.switchToMonthViewLabel="Choose date",this.switchToMultiYearViewLabel="Choose month and year",this.startDateLabel="Start date",this.endDateLabel="End date"}formatYearRange(U,fe){return`${U} \u2013 ${fe}`}formatYearRangeLabel(U,fe){return`${U} to ${fe}`}}return Ke.\u0275fac=function(U){return new(U||Ke)},Ke.\u0275prov=o.\u0275\u0275defineInjectable({token:Ke,factory:Ke.\u0275fac,providedIn:"root"}),Ke})();class ce{constructor(kt,U,fe,Pe,Je={},Gt=kt,Pn){this.value=kt,this.displayValue=U,this.ariaLabel=fe,this.enabled=Pe,this.cssClasses=Je,this.compareValue=Gt,this.rawValue=Pn}}let Ee=1;const it=(0,v.i$)({passive:!1,capture:!0}),Rt=(0,v.i$)({passive:!0,capture:!0}),Ye=(0,v.i$)({passive:!0});let qe=(()=>{class Ke{ngAfterViewChecked(){this._focusActiveCellAfterViewChecked&&(this._focusActiveCell(),this._focusActiveCellAfterViewChecked=!1)}constructor(U,fe){this._elementRef=U,this._ngZone=fe,this._platform=(0,o.inject)(v.t4),this._focusActiveCellAfterViewChecked=!1,this.numCols=7,this.activeCell=0,this.isRange=!1,this.cellAspectRatio=1,this.previewStart=null,this.previewEnd=null,this.selectedValueChange=new o.EventEmitter,this.previewChange=new o.EventEmitter,this.activeDateChange=new o.EventEmitter,this.dragStarted=new o.EventEmitter,this.dragEnded=new o.EventEmitter,this._didDragSinceMouseDown=!1,this._enterHandler=Pe=>{if(this._skipNextFocus&&"focus"===Pe.type)this._skipNextFocus=!1;else if(Pe.target&&this.isRange){const Je=this._getCellFromElement(Pe.target);Je&&this._ngZone.run(()=>this.previewChange.emit({value:Je.enabled?Je:null,event:Pe}))}},this._touchmoveHandler=Pe=>{if(!this.isRange)return;const Je=Tn(Pe),Gt=Je?this._getCellFromElement(Je):null;Je!==Pe.target&&(this._didDragSinceMouseDown=!0),dt(Pe.target)&&Pe.preventDefault(),this._ngZone.run(()=>this.previewChange.emit({value:Gt?.enabled?Gt:null,event:Pe}))},this._leaveHandler=Pe=>{null!==this.previewEnd&&this.isRange&&("blur"!==Pe.type&&(this._didDragSinceMouseDown=!0),Pe.target&&this._getCellFromElement(Pe.target)&&(!Pe.relatedTarget||!this._getCellFromElement(Pe.relatedTarget))&&this._ngZone.run(()=>this.previewChange.emit({value:null,event:Pe})))},this._mousedownHandler=Pe=>{if(!this.isRange)return;this._didDragSinceMouseDown=!1;const Je=Pe.target&&this._getCellFromElement(Pe.target);!Je||!this._isInRange(Je.rawValue)||this._ngZone.run(()=>{this.dragStarted.emit({value:Je.rawValue,event:Pe})})},this._mouseupHandler=Pe=>{if(!this.isRange)return;const Je=dt(Pe.target);Je?Je.closest(".mat-calendar-body")===this._elementRef.nativeElement&&this._ngZone.run(()=>{const Gt=this._getCellFromElement(Je);this.dragEnded.emit({value:Gt?.rawValue??null,event:Pe})}):this._ngZone.run(()=>{this.dragEnded.emit({value:null,event:Pe})})},this._touchendHandler=Pe=>{const Je=Tn(Pe);Je&&this._mouseupHandler({target:Je})},this._id="mat-calendar-body-"+Ee++,this._startDateLabelId=`${this._id}-start-date`,this._endDateLabelId=`${this._id}-end-date`,fe.runOutsideAngular(()=>{const Pe=U.nativeElement;Pe.addEventListener("touchmove",this._touchmoveHandler,it),Pe.addEventListener("mouseenter",this._enterHandler,Rt),Pe.addEventListener("focus",this._enterHandler,Rt),Pe.addEventListener("mouseleave",this._leaveHandler,Rt),Pe.addEventListener("blur",this._leaveHandler,Rt),Pe.addEventListener("mousedown",this._mousedownHandler,Ye),Pe.addEventListener("touchstart",this._mousedownHandler,Ye),this._platform.isBrowser&&(window.addEventListener("mouseup",this._mouseupHandler),window.addEventListener("touchend",this._touchendHandler))})}_cellClicked(U,fe){this._didDragSinceMouseDown||U.enabled&&this.selectedValueChange.emit({value:U.value,event:fe})}_emitActiveDateChange(U,fe){U.enabled&&this.activeDateChange.emit({value:U.value,event:fe})}_isSelected(U){return this.startValue===U||this.endValue===U}ngOnChanges(U){const fe=U.numCols,{rows:Pe,numCols:Je}=this;(U.rows||fe)&&(this._firstRowOffset=Pe&&Pe.length&&Pe[0].length?Je-Pe[0].length:0),(U.cellAspectRatio||fe||!this._cellPadding)&&(this._cellPadding=50*this.cellAspectRatio/Je+"%"),(fe||!this._cellWidth)&&(this._cellWidth=100/Je+"%")}ngOnDestroy(){const U=this._elementRef.nativeElement;U.removeEventListener("touchmove",this._touchmoveHandler,it),U.removeEventListener("mouseenter",this._enterHandler,Rt),U.removeEventListener("focus",this._enterHandler,Rt),U.removeEventListener("mouseleave",this._leaveHandler,Rt),U.removeEventListener("blur",this._leaveHandler,Rt),U.removeEventListener("mousedown",this._mousedownHandler,Ye),U.removeEventListener("touchstart",this._mousedownHandler,Ye),this._platform.isBrowser&&(window.removeEventListener("mouseup",this._mouseupHandler),window.removeEventListener("touchend",this._touchendHandler))}_isActiveCell(U,fe){let Pe=U*this.numCols+fe;return U&&(Pe-=this._firstRowOffset),Pe==this.activeCell}_focusActiveCell(U=!0){this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.pipe((0,ot.q)(1)).subscribe(()=>{setTimeout(()=>{const fe=this._elementRef.nativeElement.querySelector(".mat-calendar-body-active");fe&&(U||(this._skipNextFocus=!0),fe.focus())})})})}_scheduleFocusActiveCellAfterViewChecked(){this._focusActiveCellAfterViewChecked=!0}_isRangeStart(U){return At(U,this.startValue,this.endValue)}_isRangeEnd(U){return tn(U,this.startValue,this.endValue)}_isInRange(U){return wn(U,this.startValue,this.endValue,this.isRange)}_isComparisonStart(U){return At(U,this.comparisonStart,this.comparisonEnd)}_isComparisonBridgeStart(U,fe,Pe){if(!this._isComparisonStart(U)||this._isRangeStart(U)||!this._isInRange(U))return!1;let Je=this.rows[fe][Pe-1];if(!Je){const Gt=this.rows[fe-1];Je=Gt&&Gt[Gt.length-1]}return Je&&!this._isRangeEnd(Je.compareValue)}_isComparisonBridgeEnd(U,fe,Pe){if(!this._isComparisonEnd(U)||this._isRangeEnd(U)||!this._isInRange(U))return!1;let Je=this.rows[fe][Pe+1];if(!Je){const Gt=this.rows[fe+1];Je=Gt&&Gt[0]}return Je&&!this._isRangeStart(Je.compareValue)}_isComparisonEnd(U){return tn(U,this.comparisonStart,this.comparisonEnd)}_isInComparisonRange(U){return wn(U,this.comparisonStart,this.comparisonEnd,this.isRange)}_isComparisonIdentical(U){return this.comparisonStart===this.comparisonEnd&&U===this.comparisonStart}_isPreviewStart(U){return At(U,this.previewStart,this.previewEnd)}_isPreviewEnd(U){return tn(U,this.previewStart,this.previewEnd)}_isInPreview(U){return wn(U,this.previewStart,this.previewEnd,this.isRange)}_getDescribedby(U){return this.isRange?this.startValue===U&&this.endValue===U?`${this._startDateLabelId} ${this._endDateLabelId}`:this.startValue===U?this._startDateLabelId:this.endValue===U?this._endDateLabelId:null:null}_getCellFromElement(U){const fe=dt(U);if(fe){const Pe=fe.getAttribute("data-mat-row"),Je=fe.getAttribute("data-mat-col");if(Pe&&Je)return this.rows[parseInt(Pe)][parseInt(Je)]}return null}}return Ke.\u0275fac=function(U){return new(U||Ke)(o.\u0275\u0275directiveInject(o.ElementRef),o.\u0275\u0275directiveInject(o.NgZone))},Ke.\u0275cmp=o.\u0275\u0275defineComponent({type:Ke,selectors:[["","mat-calendar-body",""]],hostAttrs:[1,"mat-calendar-body"],inputs:{label:"label",rows:"rows",todayValue:"todayValue",startValue:"startValue",endValue:"endValue",labelMinRequiredCells:"labelMinRequiredCells",numCols:"numCols",activeCell:"activeCell",isRange:"isRange",cellAspectRatio:"cellAspectRatio",comparisonStart:"comparisonStart",comparisonEnd:"comparisonEnd",previewStart:"previewStart",previewEnd:"previewEnd",startDateAccessibleName:"startDateAccessibleName",endDateAccessibleName:"endDateAccessibleName"},outputs:{selectedValueChange:"selectedValueChange",previewChange:"previewChange",activeDateChange:"activeDateChange",dragStarted:"dragStarted",dragEnded:"dragEnded"},exportAs:["matCalendarBody"],features:[o.\u0275\u0275NgOnChangesFeature],attrs:pe,decls:6,vars:6,consts:[["aria-hidden","true",4,"ngIf"],["role","row",4,"ngFor","ngForOf"],[1,"mat-calendar-body-hidden-label",3,"id"],["aria-hidden","true"],[1,"mat-calendar-body-label"],["role","row"],["class","mat-calendar-body-label",3,"paddingTop","paddingBottom",4,"ngIf"],["role","gridcell","class","mat-calendar-body-cell-container",3,"width","paddingTop","paddingBottom",4,"ngFor","ngForOf"],["role","gridcell",1,"mat-calendar-body-cell-container"],["type","button",1,"mat-calendar-body-cell",3,"ngClass","tabindex","click","focus"],[1,"mat-calendar-body-cell-content","mat-focus-indicator"],["aria-hidden","true",1,"mat-calendar-body-cell-preview"]],template:function(U,fe){1&U&&(o.\u0275\u0275template(0,Te,3,6,"tr",0),o.\u0275\u0275template(1,Dt,3,2,"tr",1),o.\u0275\u0275elementStart(2,"label",2),o.\u0275\u0275text(3),o.\u0275\u0275elementEnd(),o.\u0275\u0275elementStart(4,"label",2),o.\u0275\u0275text(5),o.\u0275\u0275elementEnd()),2&U&&(o.\u0275\u0275property("ngIf",fe._firstRowOffset=kt&&Ke===U}function wn(Ke,kt,U,fe){return fe&&null!==kt&&null!==U&&kt!==U&&Ke>=kt&&Ke<=U}function Tn(Ke){const kt=Ke.changedTouches[0];return document.elementFromPoint(kt.clientX,kt.clientY)}class Sn{constructor(kt,U){this.start=kt,this.end=U}}let Mn=(()=>{class Ke{constructor(U,fe){this.selection=U,this._adapter=fe,this._selectionChanged=new Mt.x,this.selectionChanged=this._selectionChanged,this.selection=U}updateSelection(U,fe){const Pe=this.selection;this.selection=U,this._selectionChanged.next({selection:U,source:fe,oldValue:Pe})}ngOnDestroy(){this._selectionChanged.complete()}_isValidDateInstance(U){return this._adapter.isDateInstance(U)&&this._adapter.isValid(U)}}return Ke.\u0275fac=function(U){o.\u0275\u0275invalidFactory()},Ke.\u0275prov=o.\u0275\u0275defineInjectable({token:Ke,factory:Ke.\u0275fac}),Ke})(),Ci=(()=>{class Ke extends Mn{constructor(U){super(null,U)}add(U){super.updateSelection(U,this)}isValid(){return null!=this.selection&&this._isValidDateInstance(this.selection)}isComplete(){return null!=this.selection}clone(){const U=new Ke(this._adapter);return U.updateSelection(this.selection,this),U}}return Ke.\u0275fac=function(U){return new(U||Ke)(o.\u0275\u0275inject(a.DateAdapter))},Ke.\u0275prov=o.\u0275\u0275defineInjectable({token:Ke,factory:Ke.\u0275fac}),Ke})(),di=(()=>{class Ke extends Mn{constructor(U){super(new Sn(null,null),U)}add(U){let{start:fe,end:Pe}=this.selection;null==fe?fe=U:null==Pe?Pe=U:(fe=U,Pe=null),super.updateSelection(new Sn(fe,Pe),this)}isValid(){const{start:U,end:fe}=this.selection;return null==U&&null==fe||(null!=U&&null!=fe?this._isValidDateInstance(U)&&this._isValidDateInstance(fe)&&this._adapter.compareDate(U,fe)<=0:(null==U||this._isValidDateInstance(U))&&(null==fe||this._isValidDateInstance(fe)))}isComplete(){return null!=this.selection.start&&null!=this.selection.end}clone(){const U=new Ke(this._adapter);return U.updateSelection(this.selection,this),U}}return Ke.\u0275fac=function(U){return new(U||Ke)(o.\u0275\u0275inject(a.DateAdapter))},Ke.\u0275prov=o.\u0275\u0275defineInjectable({token:Ke,factory:Ke.\u0275fac}),Ke})();function Li(Ke,kt){return Ke||new Ci(kt)}const Qi={provide:Mn,deps:[[new o.Optional,new o.SkipSelf,Mn],a.DateAdapter],useFactory:Li};function wt(Ke,kt){return Ke||new di(kt)}const mt={provide:Mn,deps:[[new o.Optional,new o.SkipSelf,Mn],a.DateAdapter],useFactory:wt},pt=new o.InjectionToken("MAT_DATE_RANGE_SELECTION_STRATEGY");let qt=(()=>{class Ke{constructor(U){this._dateAdapter=U}selectionFinished(U,fe){let{start:Pe,end:Je}=fe;return null==Pe?Pe=U:null==Je&&U&&this._dateAdapter.compareDate(U,Pe)>=0?Je=U:(Pe=U,Je=null),new Sn(Pe,Je)}createPreview(U,fe){let Pe=null,Je=null;return fe.start&&!fe.end&&U&&(Pe=fe.start,Je=U),new Sn(Pe,Je)}createDrag(U,fe,Pe){let Je=fe.start,Gt=fe.end;if(!Je||!Gt)return null;const Pn=this._dateAdapter,Gi=0!==Pn.compareDate(Je,Gt),Vi=Pn.getYear(Pe)-Pn.getYear(U),rr=Pn.getMonth(Pe)-Pn.getMonth(U),or=Pn.getDate(Pe)-Pn.getDate(U);return Gi&&Pn.sameDate(U,fe.start)?(Je=Pe,Pn.compareDate(Pe,Gt)>0&&(Gt=Pn.addCalendarYears(Gt,Vi),Gt=Pn.addCalendarMonths(Gt,rr),Gt=Pn.addCalendarDays(Gt,or))):Gi&&Pn.sameDate(U,fe.end)?(Gt=Pe,Pn.compareDate(Pe,Je)<0&&(Je=Pn.addCalendarYears(Je,Vi),Je=Pn.addCalendarMonths(Je,rr),Je=Pn.addCalendarDays(Je,or))):(Je=Pn.addCalendarYears(Je,Vi),Je=Pn.addCalendarMonths(Je,rr),Je=Pn.addCalendarDays(Je,or),Gt=Pn.addCalendarYears(Gt,Vi),Gt=Pn.addCalendarMonths(Gt,rr),Gt=Pn.addCalendarDays(Gt,or)),new Sn(Je,Gt)}}return Ke.\u0275fac=function(U){return new(U||Ke)(o.\u0275\u0275inject(a.DateAdapter))},Ke.\u0275prov=o.\u0275\u0275defineInjectable({token:Ke,factory:Ke.\u0275fac}),Ke})();const hn={provide:pt,deps:[[new o.Optional,new o.SkipSelf,pt],a.DateAdapter],useFactory:function on(Ke,kt){return Ke||new qt(kt)}};let $n=(()=>{class Ke{get activeDate(){return this._activeDate}set activeDate(U){const fe=this._activeDate,Pe=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(U))||this._dateAdapter.today();this._activeDate=this._dateAdapter.clampDate(Pe,this.minDate,this.maxDate),this._hasSameMonthAndYear(fe,this._activeDate)||this._init()}get selected(){return this._selected}set selected(U){this._selected=U instanceof Sn?U:this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(U)),this._setRanges(this._selected)}get minDate(){return this._minDate}set minDate(U){this._minDate=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(U))}get maxDate(){return this._maxDate}set maxDate(U){this._maxDate=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(U))}constructor(U,fe,Pe,Je,Gt){this._changeDetectorRef=U,this._dateFormats=fe,this._dateAdapter=Pe,this._dir=Je,this._rangeStrategy=Gt,this._rerenderSubscription=tt.w0.EMPTY,this.activeDrag=null,this.selectedChange=new o.EventEmitter,this._userSelection=new o.EventEmitter,this.dragStarted=new o.EventEmitter,this.dragEnded=new o.EventEmitter,this.activeDateChange=new o.EventEmitter,this._activeDate=this._dateAdapter.today()}ngAfterContentInit(){this._rerenderSubscription=this._dateAdapter.localeChanges.pipe((0,vt.O)(null)).subscribe(()=>this._init())}ngOnChanges(U){const fe=U.comparisonStart||U.comparisonEnd;fe&&!fe.firstChange&&this._setRanges(this.selected),U.activeDrag&&!this.activeDrag&&this._clearPreview()}ngOnDestroy(){this._rerenderSubscription.unsubscribe()}_dateSelected(U){const fe=U.value,Pe=this._getDateFromDayOfMonth(fe);let Je,Gt;this._selected instanceof Sn?(Je=this._getDateInCurrentMonth(this._selected.start),Gt=this._getDateInCurrentMonth(this._selected.end)):Je=Gt=this._getDateInCurrentMonth(this._selected),(Je!==fe||Gt!==fe)&&this.selectedChange.emit(Pe),this._userSelection.emit({value:Pe,event:U.event}),this._clearPreview(),this._changeDetectorRef.markForCheck()}_updateActiveDate(U){const Pe=this._activeDate;this.activeDate=this._getDateFromDayOfMonth(U.value),this._dateAdapter.compareDate(Pe,this.activeDate)&&this.activeDateChange.emit(this._activeDate)}_handleCalendarBodyKeydown(U){const fe=this._activeDate,Pe=this._isRtl();switch(U.keyCode){case xt.oh:this.activeDate=this._dateAdapter.addCalendarDays(this._activeDate,Pe?1:-1);break;case xt.SV:this.activeDate=this._dateAdapter.addCalendarDays(this._activeDate,Pe?-1:1);break;case xt.LH:this.activeDate=this._dateAdapter.addCalendarDays(this._activeDate,-7);break;case xt.JH:this.activeDate=this._dateAdapter.addCalendarDays(this._activeDate,7);break;case xt.Sd:this.activeDate=this._dateAdapter.addCalendarDays(this._activeDate,1-this._dateAdapter.getDate(this._activeDate));break;case xt.uR:this.activeDate=this._dateAdapter.addCalendarDays(this._activeDate,this._dateAdapter.getNumDaysInMonth(this._activeDate)-this._dateAdapter.getDate(this._activeDate));break;case xt.Ku:this.activeDate=U.altKey?this._dateAdapter.addCalendarYears(this._activeDate,-1):this._dateAdapter.addCalendarMonths(this._activeDate,-1);break;case xt.VM:this.activeDate=U.altKey?this._dateAdapter.addCalendarYears(this._activeDate,1):this._dateAdapter.addCalendarMonths(this._activeDate,1);break;case xt.K5:case xt.L_:return this._selectionKeyPressed=!0,void(this._canSelect(this._activeDate)&&U.preventDefault());case xt.hY:return void(null!=this._previewEnd&&!(0,xt.Vb)(U)&&(this._clearPreview(),this.activeDrag?this.dragEnded.emit({value:null,event:U}):(this.selectedChange.emit(null),this._userSelection.emit({value:null,event:U})),U.preventDefault(),U.stopPropagation()));default:return}this._dateAdapter.compareDate(fe,this.activeDate)&&(this.activeDateChange.emit(this.activeDate),this._focusActiveCellAfterViewChecked()),U.preventDefault()}_handleCalendarBodyKeyup(U){(U.keyCode===xt.L_||U.keyCode===xt.K5)&&(this._selectionKeyPressed&&this._canSelect(this._activeDate)&&this._dateSelected({value:this._dateAdapter.getDate(this._activeDate),event:U}),this._selectionKeyPressed=!1)}_init(){this._setRanges(this.selected),this._todayDate=this._getCellCompareValue(this._dateAdapter.today()),this._monthLabel=this._dateFormats.display.monthLabel?this._dateAdapter.format(this.activeDate,this._dateFormats.display.monthLabel):this._dateAdapter.getMonthNames("short")[this._dateAdapter.getMonth(this.activeDate)].toLocaleUpperCase();let U=this._dateAdapter.createDate(this._dateAdapter.getYear(this.activeDate),this._dateAdapter.getMonth(this.activeDate),1);this._firstWeekOffset=(7+this._dateAdapter.getDayOfWeek(U)-this._dateAdapter.getFirstDayOfWeek())%7,this._initWeekdays(),this._createWeekCells(),this._changeDetectorRef.markForCheck()}_focusActiveCell(U){this._matCalendarBody._focusActiveCell(U)}_focusActiveCellAfterViewChecked(){this._matCalendarBody._scheduleFocusActiveCellAfterViewChecked()}_previewChanged({event:U,value:fe}){if(this._rangeStrategy){const Pe=fe?fe.rawValue:null,Je=this._rangeStrategy.createPreview(Pe,this.selected,U);if(this._previewStart=this._getCellCompareValue(Je.start),this._previewEnd=this._getCellCompareValue(Je.end),this.activeDrag&&Pe){const Gt=this._rangeStrategy.createDrag?.(this.activeDrag.value,this.selected,Pe,U);Gt&&(this._previewStart=this._getCellCompareValue(Gt.start),this._previewEnd=this._getCellCompareValue(Gt.end))}this._changeDetectorRef.detectChanges()}}_dragEnded(U){if(this.activeDrag)if(U.value){const fe=this._rangeStrategy?.createDrag?.(this.activeDrag.value,this.selected,U.value,U.event);this.dragEnded.emit({value:fe??null,event:U.event})}else this.dragEnded.emit({value:null,event:U.event})}_getDateFromDayOfMonth(U){return this._dateAdapter.createDate(this._dateAdapter.getYear(this.activeDate),this._dateAdapter.getMonth(this.activeDate),U)}_initWeekdays(){const U=this._dateAdapter.getFirstDayOfWeek(),fe=this._dateAdapter.getDayOfWeekNames("narrow");let Je=this._dateAdapter.getDayOfWeekNames("long").map((Gt,Pn)=>({long:Gt,narrow:fe[Pn]}));this._weekdays=Je.slice(U).concat(Je.slice(0,U))}_createWeekCells(){const U=this._dateAdapter.getNumDaysInMonth(this.activeDate),fe=this._dateAdapter.getDateNames();this._weeks=[[]];for(let Pe=0,Je=this._firstWeekOffset;Pe=0)&&(!this.maxDate||this._dateAdapter.compareDate(U,this.maxDate)<=0)&&(!this.dateFilter||this.dateFilter(U))}_getDateInCurrentMonth(U){return U&&this._hasSameMonthAndYear(U,this.activeDate)?this._dateAdapter.getDate(U):null}_hasSameMonthAndYear(U,fe){return!(!U||!fe||this._dateAdapter.getMonth(U)!=this._dateAdapter.getMonth(fe)||this._dateAdapter.getYear(U)!=this._dateAdapter.getYear(fe))}_getCellCompareValue(U){if(U){const fe=this._dateAdapter.getYear(U),Pe=this._dateAdapter.getMonth(U),Je=this._dateAdapter.getDate(U);return new Date(fe,Pe,Je).getTime()}return null}_isRtl(){return this._dir&&"rtl"===this._dir.value}_setRanges(U){U instanceof Sn?(this._rangeStart=this._getCellCompareValue(U.start),this._rangeEnd=this._getCellCompareValue(U.end),this._isRange=!0):(this._rangeStart=this._rangeEnd=this._getCellCompareValue(U),this._isRange=!1),this._comparisonRangeStart=this._getCellCompareValue(this.comparisonStart),this._comparisonRangeEnd=this._getCellCompareValue(this.comparisonEnd)}_canSelect(U){return!this.dateFilter||this.dateFilter(U)}_clearPreview(){this._previewStart=this._previewEnd=null}}return Ke.\u0275fac=function(U){return new(U||Ke)(o.\u0275\u0275directiveInject(o.ChangeDetectorRef),o.\u0275\u0275directiveInject(a.MAT_DATE_FORMATS,8),o.\u0275\u0275directiveInject(a.DateAdapter,8),o.\u0275\u0275directiveInject(nt.Is,8),o.\u0275\u0275directiveInject(pt,8))},Ke.\u0275cmp=o.\u0275\u0275defineComponent({type:Ke,selectors:[["mat-month-view"]],viewQuery:function(U,fe){if(1&U&&o.\u0275\u0275viewQuery(qe,5),2&U){let Pe;o.\u0275\u0275queryRefresh(Pe=o.\u0275\u0275loadQuery())&&(fe._matCalendarBody=Pe.first)}},inputs:{activeDate:"activeDate",selected:"selected",minDate:"minDate",maxDate:"maxDate",dateFilter:"dateFilter",dateClass:"dateClass",comparisonStart:"comparisonStart",comparisonEnd:"comparisonEnd",startDateAccessibleName:"startDateAccessibleName",endDateAccessibleName:"endDateAccessibleName",activeDrag:"activeDrag"},outputs:{selectedChange:"selectedChange",_userSelection:"_userSelection",dragStarted:"dragStarted",dragEnded:"dragEnded",activeDateChange:"activeDateChange"},exportAs:["matMonthView"],features:[o.\u0275\u0275NgOnChangesFeature],decls:7,vars:15,consts:[["role","grid",1,"mat-calendar-table"],[1,"mat-calendar-table-header"],["scope","col",4,"ngFor","ngForOf"],["aria-hidden","true","colspan","7",1,"mat-calendar-table-header-divider"],["mat-calendar-body","",3,"label","rows","todayValue","startValue","endValue","comparisonStart","comparisonEnd","previewStart","previewEnd","isRange","labelMinRequiredCells","activeCell","startDateAccessibleName","endDateAccessibleName","selectedValueChange","activeDateChange","previewChange","dragStarted","dragEnded","keyup","keydown"],["scope","col"],[1,"cdk-visually-hidden"],["aria-hidden","true"]],template:function(U,fe){1&U&&(o.\u0275\u0275elementStart(0,"table",0)(1,"thead",1)(2,"tr"),o.\u0275\u0275template(3,Kt,5,2,"th",2),o.\u0275\u0275elementEnd(),o.\u0275\u0275elementStart(4,"tr"),o.\u0275\u0275element(5,"th",3),o.\u0275\u0275elementEnd()(),o.\u0275\u0275elementStart(6,"tbody",4),o.\u0275\u0275listener("selectedValueChange",function(Je){return fe._dateSelected(Je)})("activeDateChange",function(Je){return fe._updateActiveDate(Je)})("previewChange",function(Je){return fe._previewChanged(Je)})("dragStarted",function(Je){return fe.dragStarted.emit(Je)})("dragEnded",function(Je){return fe._dragEnded(Je)})("keyup",function(Je){return fe._handleCalendarBodyKeyup(Je)})("keydown",function(Je){return fe._handleCalendarBodyKeydown(Je)}),o.\u0275\u0275elementEnd()()),2&U&&(o.\u0275\u0275advance(3),o.\u0275\u0275property("ngForOf",fe._weekdays),o.\u0275\u0275advance(3),o.\u0275\u0275property("label",fe._monthLabel)("rows",fe._weeks)("todayValue",fe._todayDate)("startValue",fe._rangeStart)("endValue",fe._rangeEnd)("comparisonStart",fe._comparisonRangeStart)("comparisonEnd",fe._comparisonRangeEnd)("previewStart",fe._previewStart)("previewEnd",fe._previewEnd)("isRange",fe._isRange)("labelMinRequiredCells",3)("activeCell",fe._dateAdapter.getDate(fe.activeDate)-1)("startDateAccessibleName",fe.startDateAccessibleName)("endDateAccessibleName",fe.endDateAccessibleName))},dependencies:[b.NgForOf,qe],encapsulation:2,changeDetection:0}),Ke})();const In=24,Zn=4;let mi=(()=>{class Ke{get activeDate(){return this._activeDate}set activeDate(U){let fe=this._activeDate;const Pe=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(U))||this._dateAdapter.today();this._activeDate=this._dateAdapter.clampDate(Pe,this.minDate,this.maxDate),Qn(this._dateAdapter,fe,this._activeDate,this.minDate,this.maxDate)||this._init()}get selected(){return this._selected}set selected(U){this._selected=U instanceof Sn?U:this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(U)),this._setSelectedYear(U)}get minDate(){return this._minDate}set minDate(U){this._minDate=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(U))}get maxDate(){return this._maxDate}set maxDate(U){this._maxDate=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(U))}constructor(U,fe,Pe){this._changeDetectorRef=U,this._dateAdapter=fe,this._dir=Pe,this._rerenderSubscription=tt.w0.EMPTY,this.selectedChange=new o.EventEmitter,this.yearSelected=new o.EventEmitter,this.activeDateChange=new o.EventEmitter,this._activeDate=this._dateAdapter.today()}ngAfterContentInit(){this._rerenderSubscription=this._dateAdapter.localeChanges.pipe((0,vt.O)(null)).subscribe(()=>this._init())}ngOnDestroy(){this._rerenderSubscription.unsubscribe()}_init(){this._todayYear=this._dateAdapter.getYear(this._dateAdapter.today());const fe=this._dateAdapter.getYear(this._activeDate)-ri(this._dateAdapter,this.activeDate,this.minDate,this.maxDate);this._years=[];for(let Pe=0,Je=[];Pethis._createCellForYear(Gt))),Je=[]);this._changeDetectorRef.markForCheck()}_yearSelected(U){const fe=U.value,Pe=this._dateAdapter.createDate(fe,0,1),Je=this._getDateFromYear(fe);this.yearSelected.emit(Pe),this.selectedChange.emit(Je)}_updateActiveDate(U){const Pe=this._activeDate;this.activeDate=this._getDateFromYear(U.value),this._dateAdapter.compareDate(Pe,this.activeDate)&&this.activeDateChange.emit(this.activeDate)}_handleCalendarBodyKeydown(U){const fe=this._activeDate,Pe=this._isRtl();switch(U.keyCode){case xt.oh:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,Pe?1:-1);break;case xt.SV:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,Pe?-1:1);break;case xt.LH:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,-Zn);break;case xt.JH:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,Zn);break;case xt.Sd:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,-ri(this._dateAdapter,this.activeDate,this.minDate,this.maxDate));break;case xt.uR:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,In-ri(this._dateAdapter,this.activeDate,this.minDate,this.maxDate)-1);break;case xt.Ku:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,U.altKey?10*-In:-In);break;case xt.VM:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,U.altKey?10*In:In);break;case xt.K5:case xt.L_:this._selectionKeyPressed=!0;break;default:return}this._dateAdapter.compareDate(fe,this.activeDate)&&this.activeDateChange.emit(this.activeDate),this._focusActiveCellAfterViewChecked(),U.preventDefault()}_handleCalendarBodyKeyup(U){(U.keyCode===xt.L_||U.keyCode===xt.K5)&&(this._selectionKeyPressed&&this._yearSelected({value:this._dateAdapter.getYear(this._activeDate),event:U}),this._selectionKeyPressed=!1)}_getActiveCell(){return ri(this._dateAdapter,this.activeDate,this.minDate,this.maxDate)}_focusActiveCell(){this._matCalendarBody._focusActiveCell()}_focusActiveCellAfterViewChecked(){this._matCalendarBody._scheduleFocusActiveCellAfterViewChecked()}_getDateFromYear(U){const fe=this._dateAdapter.getMonth(this.activeDate),Pe=this._dateAdapter.getNumDaysInMonth(this._dateAdapter.createDate(U,fe,1));return this._dateAdapter.createDate(U,fe,Math.min(this._dateAdapter.getDate(this.activeDate),Pe))}_createCellForYear(U){const fe=this._dateAdapter.createDate(U,0,1),Pe=this._dateAdapter.getYearName(fe),Je=this.dateClass?this.dateClass(fe,"multi-year"):void 0;return new ce(U,Pe,Pe,this._shouldEnableYear(U),Je)}_shouldEnableYear(U){if(null==U||this.maxDate&&U>this._dateAdapter.getYear(this.maxDate)||this.minDate&&U{class Ke{get activeDate(){return this._activeDate}set activeDate(U){let fe=this._activeDate;const Pe=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(U))||this._dateAdapter.today();this._activeDate=this._dateAdapter.clampDate(Pe,this.minDate,this.maxDate),this._dateAdapter.getYear(fe)!==this._dateAdapter.getYear(this._activeDate)&&this._init()}get selected(){return this._selected}set selected(U){this._selected=U instanceof Sn?U:this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(U)),this._setSelectedMonth(U)}get minDate(){return this._minDate}set minDate(U){this._minDate=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(U))}get maxDate(){return this._maxDate}set maxDate(U){this._maxDate=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(U))}constructor(U,fe,Pe,Je){this._changeDetectorRef=U,this._dateFormats=fe,this._dateAdapter=Pe,this._dir=Je,this._rerenderSubscription=tt.w0.EMPTY,this.selectedChange=new o.EventEmitter,this.monthSelected=new o.EventEmitter,this.activeDateChange=new o.EventEmitter,this._activeDate=this._dateAdapter.today()}ngAfterContentInit(){this._rerenderSubscription=this._dateAdapter.localeChanges.pipe((0,vt.O)(null)).subscribe(()=>this._init())}ngOnDestroy(){this._rerenderSubscription.unsubscribe()}_monthSelected(U){const fe=U.value,Pe=this._dateAdapter.createDate(this._dateAdapter.getYear(this.activeDate),fe,1);this.monthSelected.emit(Pe);const Je=this._getDateFromMonth(fe);this.selectedChange.emit(Je)}_updateActiveDate(U){const Pe=this._activeDate;this.activeDate=this._getDateFromMonth(U.value),this._dateAdapter.compareDate(Pe,this.activeDate)&&this.activeDateChange.emit(this.activeDate)}_handleCalendarBodyKeydown(U){const fe=this._activeDate,Pe=this._isRtl();switch(U.keyCode){case xt.oh:this.activeDate=this._dateAdapter.addCalendarMonths(this._activeDate,Pe?1:-1);break;case xt.SV:this.activeDate=this._dateAdapter.addCalendarMonths(this._activeDate,Pe?-1:1);break;case xt.LH:this.activeDate=this._dateAdapter.addCalendarMonths(this._activeDate,-4);break;case xt.JH:this.activeDate=this._dateAdapter.addCalendarMonths(this._activeDate,4);break;case xt.Sd:this.activeDate=this._dateAdapter.addCalendarMonths(this._activeDate,-this._dateAdapter.getMonth(this._activeDate));break;case xt.uR:this.activeDate=this._dateAdapter.addCalendarMonths(this._activeDate,11-this._dateAdapter.getMonth(this._activeDate));break;case xt.Ku:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,U.altKey?-10:-1);break;case xt.VM:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,U.altKey?10:1);break;case xt.K5:case xt.L_:this._selectionKeyPressed=!0;break;default:return}this._dateAdapter.compareDate(fe,this.activeDate)&&(this.activeDateChange.emit(this.activeDate),this._focusActiveCellAfterViewChecked()),U.preventDefault()}_handleCalendarBodyKeyup(U){(U.keyCode===xt.L_||U.keyCode===xt.K5)&&(this._selectionKeyPressed&&this._monthSelected({value:this._dateAdapter.getMonth(this._activeDate),event:U}),this._selectionKeyPressed=!1)}_init(){this._setSelectedMonth(this.selected),this._todayMonth=this._getMonthInCurrentYear(this._dateAdapter.today()),this._yearLabel=this._dateAdapter.getYearName(this.activeDate);let U=this._dateAdapter.getMonthNames("short");this._months=[[0,1,2,3],[4,5,6,7],[8,9,10,11]].map(fe=>fe.map(Pe=>this._createCellForMonth(Pe,U[Pe]))),this._changeDetectorRef.markForCheck()}_focusActiveCell(){this._matCalendarBody._focusActiveCell()}_focusActiveCellAfterViewChecked(){this._matCalendarBody._scheduleFocusActiveCellAfterViewChecked()}_getMonthInCurrentYear(U){return U&&this._dateAdapter.getYear(U)==this._dateAdapter.getYear(this.activeDate)?this._dateAdapter.getMonth(U):null}_getDateFromMonth(U){const fe=this._dateAdapter.createDate(this._dateAdapter.getYear(this.activeDate),U,1),Pe=this._dateAdapter.getNumDaysInMonth(fe);return this._dateAdapter.createDate(this._dateAdapter.getYear(this.activeDate),U,Math.min(this._dateAdapter.getDate(this.activeDate),Pe))}_createCellForMonth(U,fe){const Pe=this._dateAdapter.createDate(this._dateAdapter.getYear(this.activeDate),U,1),Je=this._dateAdapter.format(Pe,this._dateFormats.display.monthYearA11yLabel),Gt=this.dateClass?this.dateClass(Pe,"year"):void 0;return new ce(U,fe.toLocaleUpperCase(),Je,this._shouldEnableMonth(U),Gt)}_shouldEnableMonth(U){const fe=this._dateAdapter.getYear(this.activeDate);if(null==U||this._isYearAndMonthAfterMaxDate(fe,U)||this._isYearAndMonthBeforeMinDate(fe,U))return!1;if(!this.dateFilter)return!0;for(let Je=this._dateAdapter.createDate(fe,U,1);this._dateAdapter.getMonth(Je)==U;Je=this._dateAdapter.addCalendarDays(Je,1))if(this.dateFilter(Je))return!0;return!1}_isYearAndMonthAfterMaxDate(U,fe){if(this.maxDate){const Pe=this._dateAdapter.getYear(this.maxDate),Je=this._dateAdapter.getMonth(this.maxDate);return U>Pe||U===Pe&&fe>Je}return!1}_isYearAndMonthBeforeMinDate(U,fe){if(this.minDate){const Pe=this._dateAdapter.getYear(this.minDate),Je=this._dateAdapter.getMonth(this.minDate);return U{class Ke{constructor(U,fe,Pe,Je,Gt){this._intl=U,this.calendar=fe,this._dateAdapter=Pe,this._dateFormats=Je,this._id="mat-calendar-header-"+An++,this._periodButtonLabelId=`${this._id}-period-label`,this.calendar.stateChanges.subscribe(()=>Gt.markForCheck())}get periodButtonText(){return"month"==this.calendar.currentView?this._dateAdapter.format(this.calendar.activeDate,this._dateFormats.display.monthYearLabel).toLocaleUpperCase():"year"==this.calendar.currentView?this._dateAdapter.getYearName(this.calendar.activeDate):this._intl.formatYearRange(...this._formatMinAndMaxYearLabels())}get periodButtonDescription(){return"month"==this.calendar.currentView?this._dateAdapter.format(this.calendar.activeDate,this._dateFormats.display.monthYearLabel).toLocaleUpperCase():"year"==this.calendar.currentView?this._dateAdapter.getYearName(this.calendar.activeDate):this._intl.formatYearRangeLabel(...this._formatMinAndMaxYearLabels())}get periodButtonLabel(){return"month"==this.calendar.currentView?this._intl.switchToMultiYearViewLabel:this._intl.switchToMonthViewLabel}get prevButtonLabel(){return{month:this._intl.prevMonthLabel,year:this._intl.prevYearLabel,"multi-year":this._intl.prevMultiYearLabel}[this.calendar.currentView]}get nextButtonLabel(){return{month:this._intl.nextMonthLabel,year:this._intl.nextYearLabel,"multi-year":this._intl.nextMultiYearLabel}[this.calendar.currentView]}currentPeriodClicked(){this.calendar.currentView="month"==this.calendar.currentView?"multi-year":"month"}previousClicked(){this.calendar.activeDate="month"==this.calendar.currentView?this._dateAdapter.addCalendarMonths(this.calendar.activeDate,-1):this._dateAdapter.addCalendarYears(this.calendar.activeDate,"year"==this.calendar.currentView?-1:-In)}nextClicked(){this.calendar.activeDate="month"==this.calendar.currentView?this._dateAdapter.addCalendarMonths(this.calendar.activeDate,1):this._dateAdapter.addCalendarYears(this.calendar.activeDate,"year"==this.calendar.currentView?1:In)}previousEnabled(){return!this.calendar.minDate||!this.calendar.minDate||!this._isSameView(this.calendar.activeDate,this.calendar.minDate)}nextEnabled(){return!this.calendar.maxDate||!this._isSameView(this.calendar.activeDate,this.calendar.maxDate)}_isSameView(U,fe){return"month"==this.calendar.currentView?this._dateAdapter.getYear(U)==this._dateAdapter.getYear(fe)&&this._dateAdapter.getMonth(U)==this._dateAdapter.getMonth(fe):"year"==this.calendar.currentView?this._dateAdapter.getYear(U)==this._dateAdapter.getYear(fe):Qn(this._dateAdapter,U,fe,this.calendar.minDate,this.calendar.maxDate)}_formatMinAndMaxYearLabels(){const fe=this._dateAdapter.getYear(this.calendar.activeDate)-ri(this._dateAdapter,this.calendar.activeDate,this.calendar.minDate,this.calendar.maxDate),Pe=fe+In-1;return[this._dateAdapter.getYearName(this._dateAdapter.createDate(fe,0,1)),this._dateAdapter.getYearName(this._dateAdapter.createDate(Pe,0,1))]}}return Ke.\u0275fac=function(U){return new(U||Ke)(o.\u0275\u0275directiveInject(re),o.\u0275\u0275directiveInject((0,o.forwardRef)(()=>si)),o.\u0275\u0275directiveInject(a.DateAdapter,8),o.\u0275\u0275directiveInject(a.MAT_DATE_FORMATS,8),o.\u0275\u0275directiveInject(o.ChangeDetectorRef))},Ke.\u0275cmp=o.\u0275\u0275defineComponent({type:Ke,selectors:[["mat-calendar-header"]],exportAs:["matCalendarHeader"],ngContentSelectors:ze,decls:13,vars:11,consts:[[1,"mat-calendar-header"],[1,"mat-calendar-controls"],["mat-button","","type","button","aria-live","polite",1,"mat-calendar-period-button",3,"click"],["aria-hidden","true"],["viewBox","0 0 10 5","focusable","false","aria-hidden","true",1,"mat-calendar-arrow"],["points","0,0 5,5 10,0"],[1,"mat-calendar-spacer"],["mat-icon-button","","type","button",1,"mat-calendar-previous-button",3,"disabled","click"],["mat-icon-button","","type","button",1,"mat-calendar-next-button",3,"disabled","click"],[1,"mat-calendar-hidden-label",3,"id"]],template:function(U,fe){1&U&&(o.\u0275\u0275projectionDef(),o.\u0275\u0275elementStart(0,"div",0)(1,"div",1)(2,"button",2),o.\u0275\u0275listener("click",function(){return fe.currentPeriodClicked()}),o.\u0275\u0275elementStart(3,"span",3),o.\u0275\u0275text(4),o.\u0275\u0275elementEnd(),o.\u0275\u0275namespaceSVG(),o.\u0275\u0275elementStart(5,"svg",4),o.\u0275\u0275element(6,"polygon",5),o.\u0275\u0275elementEnd()(),o.\u0275\u0275namespaceHTML(),o.\u0275\u0275element(7,"div",6),o.\u0275\u0275projection(8),o.\u0275\u0275elementStart(9,"button",7),o.\u0275\u0275listener("click",function(){return fe.previousClicked()}),o.\u0275\u0275elementEnd(),o.\u0275\u0275elementStart(10,"button",8),o.\u0275\u0275listener("click",function(){return fe.nextClicked()}),o.\u0275\u0275elementEnd()()(),o.\u0275\u0275elementStart(11,"label",9),o.\u0275\u0275text(12),o.\u0275\u0275elementEnd()),2&U&&(o.\u0275\u0275advance(2),o.\u0275\u0275attribute("aria-label",fe.periodButtonLabel)("aria-describedby",fe._periodButtonLabelId),o.\u0275\u0275advance(2),o.\u0275\u0275textInterpolate(fe.periodButtonText),o.\u0275\u0275advance(1),o.\u0275\u0275classProp("mat-calendar-invert","month"!==fe.calendar.currentView),o.\u0275\u0275advance(4),o.\u0275\u0275property("disabled",!fe.previousEnabled()),o.\u0275\u0275attribute("aria-label",fe.prevButtonLabel),o.\u0275\u0275advance(1),o.\u0275\u0275property("disabled",!fe.nextEnabled()),o.\u0275\u0275attribute("aria-label",fe.nextButtonLabel),o.\u0275\u0275advance(1),o.\u0275\u0275property("id",fe._periodButtonLabelId),o.\u0275\u0275advance(1),o.\u0275\u0275textInterpolate(fe.periodButtonDescription))},dependencies:[Y,Xe],encapsulation:2,changeDetection:0}),Ke})(),si=(()=>{class Ke{get startAt(){return this._startAt}set startAt(U){this._startAt=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(U))}get selected(){return this._selected}set selected(U){this._selected=U instanceof Sn?U:this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(U))}get minDate(){return this._minDate}set minDate(U){this._minDate=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(U))}get maxDate(){return this._maxDate}set maxDate(U){this._maxDate=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(U))}get activeDate(){return this._clampedActiveDate}set activeDate(U){this._clampedActiveDate=this._dateAdapter.clampDate(U,this.minDate,this.maxDate),this.stateChanges.next(),this._changeDetectorRef.markForCheck()}get currentView(){return this._currentView}set currentView(U){const fe=this._currentView!==U?U:null;this._currentView=U,this._moveFocusOnNextTick=!0,this._changeDetectorRef.markForCheck(),fe&&this.viewChanged.emit(fe)}constructor(U,fe,Pe,Je){this._dateAdapter=fe,this._dateFormats=Pe,this._changeDetectorRef=Je,this._moveFocusOnNextTick=!1,this.startView="month",this.selectedChange=new o.EventEmitter,this.yearSelected=new o.EventEmitter,this.monthSelected=new o.EventEmitter,this.viewChanged=new o.EventEmitter(!0),this._userSelection=new o.EventEmitter,this._userDragDrop=new o.EventEmitter,this._activeDrag=null,this.stateChanges=new Mt.x,this._intlChanges=U.changes.subscribe(()=>{Je.markForCheck(),this.stateChanges.next()})}ngAfterContentInit(){this._calendarHeaderPortal=new C.C5(this.headerComponent||Yn),this.activeDate=this.startAt||this._dateAdapter.today(),this._currentView=this.startView}ngAfterViewChecked(){this._moveFocusOnNextTick&&(this._moveFocusOnNextTick=!1,this.focusActiveCell())}ngOnDestroy(){this._intlChanges.unsubscribe(),this.stateChanges.complete()}ngOnChanges(U){const fe=U.minDate&&!this._dateAdapter.sameDate(U.minDate.previousValue,U.minDate.currentValue)?U.minDate:void 0,Pe=U.maxDate&&!this._dateAdapter.sameDate(U.maxDate.previousValue,U.maxDate.currentValue)?U.maxDate:void 0,Je=fe||Pe||U.dateFilter;if(Je&&!Je.firstChange){const Gt=this._getCurrentViewComponent();Gt&&(this._changeDetectorRef.detectChanges(),Gt._init())}this.stateChanges.next()}focusActiveCell(){this._getCurrentViewComponent()._focusActiveCell(!1)}updateTodaysDate(){this._getCurrentViewComponent()._init()}_dateSelected(U){const fe=U.value;(this.selected instanceof Sn||fe&&!this._dateAdapter.sameDate(fe,this.selected))&&this.selectedChange.emit(fe),this._userSelection.emit(U)}_yearSelectedInMultiYearView(U){this.yearSelected.emit(U)}_monthSelectedInYearView(U){this.monthSelected.emit(U)}_goToDateInView(U,fe){this.activeDate=U,this.currentView=fe}_dragStarted(U){this._activeDrag=U}_dragEnded(U){this._activeDrag&&(U.value&&this._userDragDrop.emit(U),this._activeDrag=null)}_getCurrentViewComponent(){return this.monthView||this.yearView||this.multiYearView}}return Ke.\u0275fac=function(U){return new(U||Ke)(o.\u0275\u0275directiveInject(re),o.\u0275\u0275directiveInject(a.DateAdapter,8),o.\u0275\u0275directiveInject(a.MAT_DATE_FORMATS,8),o.\u0275\u0275directiveInject(o.ChangeDetectorRef))},Ke.\u0275cmp=o.\u0275\u0275defineComponent({type:Ke,selectors:[["mat-calendar"]],viewQuery:function(U,fe){if(1&U&&(o.\u0275\u0275viewQuery($n,5),o.\u0275\u0275viewQuery(Dn,5),o.\u0275\u0275viewQuery(mi,5)),2&U){let Pe;o.\u0275\u0275queryRefresh(Pe=o.\u0275\u0275loadQuery())&&(fe.monthView=Pe.first),o.\u0275\u0275queryRefresh(Pe=o.\u0275\u0275loadQuery())&&(fe.yearView=Pe.first),o.\u0275\u0275queryRefresh(Pe=o.\u0275\u0275loadQuery())&&(fe.multiYearView=Pe.first)}},hostAttrs:[1,"mat-calendar"],inputs:{headerComponent:"headerComponent",startAt:"startAt",startView:"startView",selected:"selected",minDate:"minDate",maxDate:"maxDate",dateFilter:"dateFilter",dateClass:"dateClass",comparisonStart:"comparisonStart",comparisonEnd:"comparisonEnd",startDateAccessibleName:"startDateAccessibleName",endDateAccessibleName:"endDateAccessibleName"},outputs:{selectedChange:"selectedChange",yearSelected:"yearSelected",monthSelected:"monthSelected",viewChanged:"viewChanged",_userSelection:"_userSelection",_userDragDrop:"_userDragDrop"},exportAs:["matCalendar"],features:[o.\u0275\u0275ProvidersFeature([Qi]),o.\u0275\u0275NgOnChangesFeature],decls:5,vars:5,consts:[[3,"cdkPortalOutlet"],["cdkMonitorSubtreeFocus","","tabindex","-1",1,"mat-calendar-content",3,"ngSwitch"],[3,"activeDate","selected","dateFilter","maxDate","minDate","dateClass","comparisonStart","comparisonEnd","startDateAccessibleName","endDateAccessibleName","activeDrag","activeDateChange","_userSelection","dragStarted","dragEnded",4,"ngSwitchCase"],[3,"activeDate","selected","dateFilter","maxDate","minDate","dateClass","activeDateChange","monthSelected","selectedChange",4,"ngSwitchCase"],[3,"activeDate","selected","dateFilter","maxDate","minDate","dateClass","activeDateChange","yearSelected","selectedChange",4,"ngSwitchCase"],[3,"activeDate","selected","dateFilter","maxDate","minDate","dateClass","comparisonStart","comparisonEnd","startDateAccessibleName","endDateAccessibleName","activeDrag","activeDateChange","_userSelection","dragStarted","dragEnded"],[3,"activeDate","selected","dateFilter","maxDate","minDate","dateClass","activeDateChange","monthSelected","selectedChange"],[3,"activeDate","selected","dateFilter","maxDate","minDate","dateClass","activeDateChange","yearSelected","selectedChange"]],template:function(U,fe){1&U&&(o.\u0275\u0275template(0,yt,0,0,"ng-template",0),o.\u0275\u0275elementStart(1,"div",1),o.\u0275\u0275template(2,Bt,1,11,"mat-month-view",2),o.\u0275\u0275template(3,$t,1,6,"mat-year-view",3),o.\u0275\u0275template(4,Yt,1,6,"mat-multi-year-view",4),o.\u0275\u0275elementEnd()),2&U&&(o.\u0275\u0275property("cdkPortalOutlet",fe._calendarHeaderPortal),o.\u0275\u0275advance(1),o.\u0275\u0275property("ngSwitch",fe.currentView),o.\u0275\u0275advance(1),o.\u0275\u0275property("ngSwitchCase","month"),o.\u0275\u0275advance(1),o.\u0275\u0275property("ngSwitchCase","year"),o.\u0275\u0275advance(1),o.\u0275\u0275property("ngSwitchCase","multi-year"))},dependencies:[b.NgSwitch,b.NgSwitchCase,n.kH,C.Pl,$n,Dn,mi],styles:['.mat-calendar{display:block}.mat-calendar-header{padding:8px 8px 0 8px}.mat-calendar-content{padding:0 8px 8px 8px;outline:none}.mat-calendar-controls{display:flex;align-items:center;margin:5% calc(4.7142857143% - 16px)}.mat-calendar-spacer{flex:1 1 auto}.mat-calendar-period-button{min-width:0;margin:0 8px}.mat-calendar-arrow{display:inline-block;width:10px;height:5px;margin:0 0 0 5px;vertical-align:middle}.mat-calendar-arrow.mat-calendar-invert{transform:rotate(180deg)}[dir=rtl] .mat-calendar-arrow{margin:0 5px 0 0}.cdk-high-contrast-active .mat-calendar-arrow{fill:CanvasText}.mat-calendar-previous-button,.mat-calendar-next-button{position:relative}.mat-calendar-previous-button::after,.mat-calendar-next-button::after{top:0;left:0;right:0;bottom:0;position:absolute;content:"";margin:15.5px;border:0 solid currentColor;border-top-width:2px}[dir=rtl] .mat-calendar-previous-button,[dir=rtl] .mat-calendar-next-button{transform:rotate(180deg)}.mat-calendar-previous-button::after{border-left-width:2px;transform:translateX(2px) rotate(-45deg)}.mat-calendar-next-button::after{border-right-width:2px;transform:translateX(-2px) rotate(45deg)}.mat-calendar-table{border-spacing:0;border-collapse:collapse;width:100%}.mat-calendar-table-header th{text-align:center;padding:0 0 8px 0}.mat-calendar-table-header-divider{position:relative;height:1px}.mat-calendar-table-header-divider::after{content:"";position:absolute;top:0;left:-8px;right:-8px;height:1px}.mat-calendar-body-cell-content::before{margin:calc(calc(var(--mat-focus-indicator-border-width, 3px) + 3px) * -1)}.mat-calendar-body-cell:focus .mat-focus-indicator::before{content:""}.mat-calendar-hidden-label{display:none}'],encapsulation:2,changeDetection:0}),Ke})();const ii={transformPanel:(0,Ce.X$)("transformPanel",[(0,Ce.eR)("void => enter-dropdown",(0,Ce.jt)("120ms cubic-bezier(0, 0, 0.2, 1)",(0,Ce.F4)([(0,Ce.oB)({opacity:0,transform:"scale(1, 0.8)"}),(0,Ce.oB)({opacity:1,transform:"scale(1, 1)"})]))),(0,Ce.eR)("void => enter-dialog",(0,Ce.jt)("150ms cubic-bezier(0, 0, 0.2, 1)",(0,Ce.F4)([(0,Ce.oB)({opacity:0,transform:"scale(0.7)"}),(0,Ce.oB)({transform:"none",opacity:1})]))),(0,Ce.eR)("* => void",(0,Ce.jt)("100ms linear",(0,Ce.oB)({opacity:0})))]),fadeInCalendar:(0,Ce.X$)("fadeInCalendar",[(0,Ce.SB)("void",(0,Ce.oB)({opacity:0})),(0,Ce.SB)("enter",(0,Ce.oB)({opacity:1})),(0,Ce.eR)("void => *",(0,Ce.jt)("120ms 100ms cubic-bezier(0.55, 0, 0.55, 0.2)"))])};let Ii=0;const oi=new o.InjectionToken("mat-datepicker-scroll-strategy");function li(Ke){return()=>Ke.scrollStrategies.reposition()}const Pi={provide:oi,deps:[p.aV],useFactory:li},Ct=(0,a.mixinColor)(class{constructor(Ke){this._elementRef=Ke}});let Ft=(()=>{class Ke extends Ct{constructor(U,fe,Pe,Je,Gt,Pn){super(U),this._changeDetectorRef=fe,this._globalModel=Pe,this._dateAdapter=Je,this._rangeSelectionStrategy=Gt,this._subscriptions=new tt.w0,this._animationDone=new Mt.x,this._isAnimating=!1,this._actionsPortal=null,this._closeButtonText=Pn.closeCalendarLabel}ngOnInit(){this._animationState=this.datepicker.touchUi?"enter-dialog":"enter-dropdown"}ngAfterViewInit(){this._subscriptions.add(this.datepicker.stateChanges.subscribe(()=>{this._changeDetectorRef.markForCheck()})),this._calendar.focusActiveCell()}ngOnDestroy(){this._subscriptions.unsubscribe(),this._animationDone.complete()}_handleUserSelection(U){const fe=this._model.selection,Pe=U.value,Je=fe instanceof Sn;if(Je&&this._rangeSelectionStrategy){const Gt=this._rangeSelectionStrategy.selectionFinished(Pe,fe,U.event);this._model.updateSelection(Gt,this)}else Pe&&(Je||!this._dateAdapter.sameDate(Pe,fe))&&this._model.add(Pe);(!this._model||this._model.isComplete())&&!this._actionsPortal&&this.datepicker.close()}_handleUserDragDrop(U){this._model.updateSelection(U.value,this)}_startExitAnimation(){this._animationState="void",this._changeDetectorRef.markForCheck()}_handleAnimationEvent(U){this._isAnimating="start"===U.phaseName,this._isAnimating||this._animationDone.next()}_getSelected(){return this._model.selection}_applyPendingSelection(){this._model!==this._globalModel&&this._globalModel.updateSelection(this._model.selection,this)}_assignActions(U,fe){this._model=U?this._globalModel.clone():this._globalModel,this._actionsPortal=U,fe&&this._changeDetectorRef.detectChanges()}}return Ke.\u0275fac=function(U){return new(U||Ke)(o.\u0275\u0275directiveInject(o.ElementRef),o.\u0275\u0275directiveInject(o.ChangeDetectorRef),o.\u0275\u0275directiveInject(Mn),o.\u0275\u0275directiveInject(a.DateAdapter),o.\u0275\u0275directiveInject(pt,8),o.\u0275\u0275directiveInject(re))},Ke.\u0275cmp=o.\u0275\u0275defineComponent({type:Ke,selectors:[["mat-datepicker-content"]],viewQuery:function(U,fe){if(1&U&&o.\u0275\u0275viewQuery(si,5),2&U){let Pe;o.\u0275\u0275queryRefresh(Pe=o.\u0275\u0275loadQuery())&&(fe._calendar=Pe.first)}},hostAttrs:[1,"mat-datepicker-content"],hostVars:3,hostBindings:function(U,fe){1&U&&o.\u0275\u0275syntheticHostListener("@transformPanel.start",function(Je){return fe._handleAnimationEvent(Je)})("@transformPanel.done",function(Je){return fe._handleAnimationEvent(Je)}),2&U&&(o.\u0275\u0275syntheticHostProperty("@transformPanel",fe._animationState),o.\u0275\u0275classProp("mat-datepicker-content-touch",fe.datepicker.touchUi))},inputs:{color:"color"},exportAs:["matDatepickerContent"],features:[o.\u0275\u0275InheritDefinitionFeature],decls:5,vars:26,consts:[["cdkTrapFocus","","role","dialog",1,"mat-datepicker-content-container"],[3,"id","ngClass","startAt","startView","minDate","maxDate","dateFilter","headerComponent","selected","dateClass","comparisonStart","comparisonEnd","startDateAccessibleName","endDateAccessibleName","yearSelected","monthSelected","viewChanged","_userSelection","_userDragDrop"],[3,"cdkPortalOutlet"],["type","button","mat-raised-button","",1,"mat-datepicker-close-button",3,"color","focus","blur","click"]],template:function(U,fe){if(1&U&&(o.\u0275\u0275elementStart(0,"div",0)(1,"mat-calendar",1),o.\u0275\u0275listener("yearSelected",function(Je){return fe.datepicker._selectYear(Je)})("monthSelected",function(Je){return fe.datepicker._selectMonth(Je)})("viewChanged",function(Je){return fe.datepicker._viewChanged(Je)})("_userSelection",function(Je){return fe._handleUserSelection(Je)})("_userDragDrop",function(Je){return fe._handleUserDragDrop(Je)}),o.\u0275\u0275elementEnd(),o.\u0275\u0275template(2,Ue,0,0,"ng-template",2),o.\u0275\u0275elementStart(3,"button",3),o.\u0275\u0275listener("focus",function(){return fe._closeButtonFocused=!0})("blur",function(){return fe._closeButtonFocused=!1})("click",function(){return fe.datepicker.close()}),o.\u0275\u0275text(4),o.\u0275\u0275elementEnd()()),2&U){let Pe;o.\u0275\u0275classProp("mat-datepicker-content-container-with-custom-header",fe.datepicker.calendarHeaderComponent)("mat-datepicker-content-container-with-actions",fe._actionsPortal),o.\u0275\u0275attribute("aria-modal",!0)("aria-labelledby",null!==(Pe=fe._dialogLabelId)&&void 0!==Pe?Pe:void 0),o.\u0275\u0275advance(1),o.\u0275\u0275property("id",fe.datepicker.id)("ngClass",fe.datepicker.panelClass)("startAt",fe.datepicker.startAt)("startView",fe.datepicker.startView)("minDate",fe.datepicker._getMinDate())("maxDate",fe.datepicker._getMaxDate())("dateFilter",fe.datepicker._getDateFilter())("headerComponent",fe.datepicker.calendarHeaderComponent)("selected",fe._getSelected())("dateClass",fe.datepicker.dateClass)("comparisonStart",fe.comparisonStart)("comparisonEnd",fe.comparisonEnd)("@fadeInCalendar","enter")("startDateAccessibleName",fe.startDateAccessibleName)("endDateAccessibleName",fe.endDateAccessibleName),o.\u0275\u0275advance(1),o.\u0275\u0275property("cdkPortalOutlet",fe._actionsPortal),o.\u0275\u0275advance(1),o.\u0275\u0275classProp("cdk-visually-hidden",!fe._closeButtonFocused),o.\u0275\u0275property("color",fe.color||"primary"),o.\u0275\u0275advance(1),o.\u0275\u0275textInterpolate(fe._closeButtonText)}},dependencies:[b.NgClass,Y,n.mK,C.Pl,si],styles:[".mat-datepicker-content{display:block;border-radius:4px}.mat-datepicker-content .mat-calendar{width:296px;height:354px}.mat-datepicker-content .mat-datepicker-content-container-with-custom-header .mat-calendar{height:auto}.mat-datepicker-content .mat-datepicker-close-button{position:absolute;top:100%;left:0;margin-top:8px}.ng-animating .mat-datepicker-content .mat-datepicker-close-button{display:none}.mat-datepicker-content-container{display:flex;flex-direction:column;justify-content:space-between}.mat-datepicker-content-touch{display:block;max-height:80vh;position:relative;overflow:visible}.mat-datepicker-content-touch .mat-datepicker-content-container{min-height:312px;max-height:788px;min-width:250px;max-width:750px}.mat-datepicker-content-touch .mat-calendar{width:100%;height:auto}@media all and (orientation: landscape){.mat-datepicker-content-touch .mat-datepicker-content-container{width:64vh;height:80vh}}@media all and (orientation: portrait){.mat-datepicker-content-touch .mat-datepicker-content-container{width:80vw;height:100vw}.mat-datepicker-content-touch .mat-datepicker-content-container-with-actions{height:115vw}}"],encapsulation:2,data:{animation:[ii.transformPanel,ii.fadeInCalendar]},changeDetection:0}),Ke})(),Ae=(()=>{class Ke{get startAt(){return this._startAt||(this.datepickerInput?this.datepickerInput.getStartValue():null)}set startAt(U){this._startAt=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(U))}get color(){return this._color||(this.datepickerInput?this.datepickerInput.getThemePalette():void 0)}set color(U){this._color=U}get touchUi(){return this._touchUi}set touchUi(U){this._touchUi=(0,J.Ig)(U)}get disabled(){return void 0===this._disabled&&this.datepickerInput?this.datepickerInput.disabled:!!this._disabled}set disabled(U){const fe=(0,J.Ig)(U);fe!==this._disabled&&(this._disabled=fe,this.stateChanges.next(void 0))}get restoreFocus(){return this._restoreFocus}set restoreFocus(U){this._restoreFocus=(0,J.Ig)(U)}get panelClass(){return this._panelClass}set panelClass(U){this._panelClass=(0,J.du)(U)}get opened(){return this._opened}set opened(U){(0,J.Ig)(U)?this.open():this.close()}_getMinDate(){return this.datepickerInput&&this.datepickerInput.min}_getMaxDate(){return this.datepickerInput&&this.datepickerInput.max}_getDateFilter(){return this.datepickerInput&&this.datepickerInput.dateFilter}constructor(U,fe,Pe,Je,Gt,Pn,Gi){this._overlay=U,this._ngZone=fe,this._viewContainerRef=Pe,this._dateAdapter=Gt,this._dir=Pn,this._model=Gi,this._inputStateChanges=tt.w0.EMPTY,this._document=(0,o.inject)(b.DOCUMENT),this.startView="month",this._touchUi=!1,this.xPosition="start",this.yPosition="below",this._restoreFocus=!0,this.yearSelected=new o.EventEmitter,this.monthSelected=new o.EventEmitter,this.viewChanged=new o.EventEmitter(!0),this.openedStream=new o.EventEmitter,this.closedStream=new o.EventEmitter,this._opened=!1,this.id="mat-datepicker-"+Ii++,this._focusedElementBeforeOpen=null,this._backdropHarnessClass=`${this.id}-backdrop`,this.stateChanges=new Mt.x,this._scrollStrategy=Je}ngOnChanges(U){const fe=U.xPosition||U.yPosition;if(fe&&!fe.firstChange&&this._overlayRef){const Pe=this._overlayRef.getConfig().positionStrategy;Pe instanceof p._G&&(this._setConnectedPositions(Pe),this.opened&&this._overlayRef.updatePosition())}this.stateChanges.next(void 0)}ngOnDestroy(){this._destroyOverlay(),this.close(),this._inputStateChanges.unsubscribe(),this.stateChanges.complete()}select(U){this._model.add(U)}_selectYear(U){this.yearSelected.emit(U)}_selectMonth(U){this.monthSelected.emit(U)}_viewChanged(U){this.viewChanged.emit(U)}registerInput(U){return this._inputStateChanges.unsubscribe(),this.datepickerInput=U,this._inputStateChanges=U.stateChanges.subscribe(()=>this.stateChanges.next(void 0)),this._model}registerActions(U){this._actionsPortal=U,this._componentRef?.instance._assignActions(U,!0)}removeActions(U){U===this._actionsPortal&&(this._actionsPortal=null,this._componentRef?.instance._assignActions(null,!0))}open(){this._opened||this.disabled||this._componentRef?.instance._isAnimating||(this._focusedElementBeforeOpen=(0,v.ht)(),this._openOverlay(),this._opened=!0,this.openedStream.emit())}close(){if(!this._opened||this._componentRef?.instance._isAnimating)return;const U=this._restoreFocus&&this._focusedElementBeforeOpen&&"function"==typeof this._focusedElementBeforeOpen.focus,fe=()=>{this._opened&&(this._opened=!1,this.closedStream.emit())};if(this._componentRef){const{instance:Pe,location:Je}=this._componentRef;Pe._startExitAnimation(),Pe._animationDone.pipe((0,ot.q)(1)).subscribe(()=>{const Gt=this._document.activeElement;U&&(!Gt||Gt===this._document.activeElement||Je.nativeElement.contains(Gt))&&this._focusedElementBeforeOpen.focus(),this._focusedElementBeforeOpen=null,this._destroyOverlay()})}U?setTimeout(fe):fe()}_applyPendingSelection(){this._componentRef?.instance?._applyPendingSelection()}_forwardContentValues(U){U.datepicker=this,U.color=this.color,U._dialogLabelId=this.datepickerInput.getOverlayLabelId(),U._assignActions(this._actionsPortal,!1)}_openOverlay(){this._destroyOverlay();const U=this.touchUi,fe=new C.C5(Ft,this._viewContainerRef),Pe=this._overlayRef=this._overlay.create(new p.X_({positionStrategy:U?this._getDialogStrategy():this._getDropdownStrategy(),hasBackdrop:!0,backdropClass:[U?"cdk-overlay-dark-backdrop":"mat-overlay-transparent-backdrop",this._backdropHarnessClass],direction:this._dir,scrollStrategy:U?this._overlay.scrollStrategies.block():this._scrollStrategy(),panelClass:"mat-datepicker-"+(U?"dialog":"popup")}));this._getCloseStream(Pe).subscribe(Je=>{Je&&Je.preventDefault(),this.close()}),Pe.keydownEvents().subscribe(Je=>{const Gt=Je.keyCode;(Gt===xt.LH||Gt===xt.JH||Gt===xt.oh||Gt===xt.SV||Gt===xt.Ku||Gt===xt.VM)&&Je.preventDefault()}),this._componentRef=Pe.attach(fe),this._forwardContentValues(this._componentRef.instance),U||this._ngZone.onStable.pipe((0,ot.q)(1)).subscribe(()=>Pe.updatePosition())}_destroyOverlay(){this._overlayRef&&(this._overlayRef.dispose(),this._overlayRef=this._componentRef=null)}_getDialogStrategy(){return this._overlay.position().global().centerHorizontally().centerVertically()}_getDropdownStrategy(){const U=this._overlay.position().flexibleConnectedTo(this.datepickerInput.getConnectedOverlayOrigin()).withTransformOriginOn(".mat-datepicker-content").withFlexibleDimensions(!1).withViewportMargin(8).withLockedPosition();return this._setConnectedPositions(U)}_setConnectedPositions(U){const fe="end"===this.xPosition?"end":"start",Pe="start"===fe?"end":"start",Je="above"===this.yPosition?"bottom":"top",Gt="top"===Je?"bottom":"top";return U.withPositions([{originX:fe,originY:Gt,overlayX:fe,overlayY:Je},{originX:fe,originY:Je,overlayX:fe,overlayY:Gt},{originX:Pe,originY:Gt,overlayX:Pe,overlayY:Je},{originX:Pe,originY:Je,overlayX:Pe,overlayY:Gt}])}_getCloseStream(U){const fe=["ctrlKey","shiftKey","metaKey"];return(0,St.T)(U.backdropClick(),U.detachments(),U.keydownEvents().pipe((0,rt.h)(Pe=>Pe.keyCode===xt.hY&&!(0,xt.Vb)(Pe)||this.datepickerInput&&(0,xt.Vb)(Pe,"altKey")&&Pe.keyCode===xt.LH&&fe.every(Je=>!(0,xt.Vb)(Pe,Je)))))}}return Ke.\u0275fac=function(U){return new(U||Ke)(o.\u0275\u0275directiveInject(p.aV),o.\u0275\u0275directiveInject(o.NgZone),o.\u0275\u0275directiveInject(o.ViewContainerRef),o.\u0275\u0275directiveInject(oi),o.\u0275\u0275directiveInject(a.DateAdapter,8),o.\u0275\u0275directiveInject(nt.Is,8),o.\u0275\u0275directiveInject(Mn))},Ke.\u0275dir=o.\u0275\u0275defineDirective({type:Ke,inputs:{calendarHeaderComponent:"calendarHeaderComponent",startAt:"startAt",startView:"startView",color:"color",touchUi:"touchUi",disabled:"disabled",xPosition:"xPosition",yPosition:"yPosition",restoreFocus:"restoreFocus",dateClass:"dateClass",panelClass:"panelClass",opened:"opened"},outputs:{yearSelected:"yearSelected",monthSelected:"monthSelected",viewChanged:"viewChanged",openedStream:"opened",closedStream:"closed"},features:[o.\u0275\u0275NgOnChangesFeature]}),Ke})(),W=(()=>{class Ke extends Ae{}return Ke.\u0275fac=function(){let kt;return function(fe){return(kt||(kt=o.\u0275\u0275getInheritedFactory(Ke)))(fe||Ke)}}(),Ke.\u0275cmp=o.\u0275\u0275defineComponent({type:Ke,selectors:[["mat-datepicker"]],exportAs:["matDatepicker"],features:[o.\u0275\u0275ProvidersFeature([Qi,{provide:Ae,useExisting:Ke}]),o.\u0275\u0275InheritDefinitionFeature],decls:0,vars:0,template:function(U,fe){},encapsulation:2,changeDetection:0}),Ke})();class be{constructor(kt,U){this.target=kt,this.targetElement=U,this.value=this.target.value}}let ge=(()=>{class Ke{get value(){return this._model?this._getValueFromModel(this._model.selection):this._pendingValue}set value(U){this._assignValueProgrammatically(U)}get disabled(){return!!this._disabled||this._parentDisabled()}set disabled(U){const fe=(0,J.Ig)(U),Pe=this._elementRef.nativeElement;this._disabled!==fe&&(this._disabled=fe,this.stateChanges.next(void 0)),fe&&this._isInitialized&&Pe.blur&&Pe.blur()}_getValidators(){return[this._parseValidator,this._minValidator,this._maxValidator,this._filterValidator]}_registerModel(U){this._model=U,this._valueChangesSubscription.unsubscribe(),this._pendingValue&&this._assignValue(this._pendingValue),this._valueChangesSubscription=this._model.selectionChanged.subscribe(fe=>{if(this._shouldHandleChangeEvent(fe)){const Pe=this._getValueFromModel(fe.selection);this._lastValueValid=this._isValidValue(Pe),this._cvaOnChange(Pe),this._onTouched(),this._formatValue(Pe),this.dateInput.emit(new be(this,this._elementRef.nativeElement)),this.dateChange.emit(new be(this,this._elementRef.nativeElement))}})}constructor(U,fe,Pe){this._elementRef=U,this._dateAdapter=fe,this._dateFormats=Pe,this.dateChange=new o.EventEmitter,this.dateInput=new o.EventEmitter,this.stateChanges=new Mt.x,this._onTouched=()=>{},this._validatorOnChange=()=>{},this._cvaOnChange=()=>{},this._valueChangesSubscription=tt.w0.EMPTY,this._localeSubscription=tt.w0.EMPTY,this._parseValidator=()=>this._lastValueValid?null:{matDatepickerParse:{text:this._elementRef.nativeElement.value}},this._filterValidator=Je=>{const Gt=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(Je.value));return!Gt||this._matchesFilter(Gt)?null:{matDatepickerFilter:!0}},this._minValidator=Je=>{const Gt=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(Je.value)),Pn=this._getMinDate();return!Pn||!Gt||this._dateAdapter.compareDate(Pn,Gt)<=0?null:{matDatepickerMin:{min:Pn,actual:Gt}}},this._maxValidator=Je=>{const Gt=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(Je.value)),Pn=this._getMaxDate();return!Pn||!Gt||this._dateAdapter.compareDate(Pn,Gt)>=0?null:{matDatepickerMax:{max:Pn,actual:Gt}}},this._lastValueValid=!1,this._localeSubscription=fe.localeChanges.subscribe(()=>{this._assignValueProgrammatically(this.value)})}ngAfterViewInit(){this._isInitialized=!0}ngOnChanges(U){Ge(U,this._dateAdapter)&&this.stateChanges.next(void 0)}ngOnDestroy(){this._valueChangesSubscription.unsubscribe(),this._localeSubscription.unsubscribe(),this.stateChanges.complete()}registerOnValidatorChange(U){this._validatorOnChange=U}validate(U){return this._validator?this._validator(U):null}writeValue(U){this._assignValueProgrammatically(U)}registerOnChange(U){this._cvaOnChange=U}registerOnTouched(U){this._onTouched=U}setDisabledState(U){this.disabled=U}_onKeydown(U){(0,xt.Vb)(U,"altKey")&&U.keyCode===xt.JH&&["ctrlKey","shiftKey","metaKey"].every(Je=>!(0,xt.Vb)(U,Je))&&!this._elementRef.nativeElement.readOnly&&(this._openPopup(),U.preventDefault())}_onInput(U){const fe=this._lastValueValid;let Pe=this._dateAdapter.parse(U,this._dateFormats.parse.dateInput);this._lastValueValid=this._isValidValue(Pe),Pe=this._dateAdapter.getValidDateOrNull(Pe);const Je=!this._dateAdapter.sameDate(Pe,this.value);!Pe||Je?this._cvaOnChange(Pe):(U&&!this.value&&this._cvaOnChange(Pe),fe!==this._lastValueValid&&this._validatorOnChange()),Je&&(this._assignValue(Pe),this.dateInput.emit(new be(this,this._elementRef.nativeElement)))}_onChange(){this.dateChange.emit(new be(this,this._elementRef.nativeElement))}_onBlur(){this.value&&this._formatValue(this.value),this._onTouched()}_formatValue(U){this._elementRef.nativeElement.value=null!=U?this._dateAdapter.format(U,this._dateFormats.display.dateInput):""}_assignValue(U){this._model?(this._assignValueToModel(U),this._pendingValue=null):this._pendingValue=U}_isValidValue(U){return!U||this._dateAdapter.isValid(U)}_parentDisabled(){return!1}_assignValueProgrammatically(U){U=this._dateAdapter.deserialize(U),this._lastValueValid=this._isValidValue(U),U=this._dateAdapter.getValidDateOrNull(U),this._assignValue(U),this._formatValue(U)}_matchesFilter(U){const fe=this._getDateFilter();return!fe||fe(U)}}return Ke.\u0275fac=function(U){return new(U||Ke)(o.\u0275\u0275directiveInject(o.ElementRef),o.\u0275\u0275directiveInject(a.DateAdapter,8),o.\u0275\u0275directiveInject(a.MAT_DATE_FORMATS,8))},Ke.\u0275dir=o.\u0275\u0275defineDirective({type:Ke,inputs:{value:"value",disabled:"disabled"},outputs:{dateChange:"dateChange",dateInput:"dateInput"},features:[o.\u0275\u0275NgOnChangesFeature]}),Ke})();function Ge(Ke,kt){const U=Object.keys(Ke);for(let fe of U){const{previousValue:Pe,currentValue:Je}=Ke[fe];if(!kt.isDateInstance(Pe)||!kt.isDateInstance(Je))return!0;if(!kt.sameDate(Pe,Je))return!0}return!1}const It={provide:ee.NG_VALUE_ACCESSOR,useExisting:(0,o.forwardRef)(()=>an),multi:!0},zt={provide:ee.NG_VALIDATORS,useExisting:(0,o.forwardRef)(()=>an),multi:!0};let an=(()=>{class Ke extends ge{set matDatepicker(U){U&&(this._datepicker=U,this._closedSubscription=U.closedStream.subscribe(()=>this._onTouched()),this._registerModel(U.registerInput(this)))}get min(){return this._min}set min(U){const fe=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(U));this._dateAdapter.sameDate(fe,this._min)||(this._min=fe,this._validatorOnChange())}get max(){return this._max}set max(U){const fe=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(U));this._dateAdapter.sameDate(fe,this._max)||(this._max=fe,this._validatorOnChange())}get dateFilter(){return this._dateFilter}set dateFilter(U){const fe=this._matchesFilter(this.value);this._dateFilter=U,this._matchesFilter(this.value)!==fe&&this._validatorOnChange()}constructor(U,fe,Pe,Je){super(U,fe,Pe),this._formField=Je,this._closedSubscription=tt.w0.EMPTY,this._validator=ee.Validators.compose(super._getValidators())}getConnectedOverlayOrigin(){return this._formField?this._formField.getConnectedOverlayOrigin():this._elementRef}getOverlayLabelId(){return this._formField?this._formField.getLabelId():this._elementRef.nativeElement.getAttribute("aria-labelledby")}getThemePalette(){return this._formField?this._formField.color:void 0}getStartValue(){return this.value}ngOnDestroy(){super.ngOnDestroy(),this._closedSubscription.unsubscribe()}_openPopup(){this._datepicker&&this._datepicker.open()}_getValueFromModel(U){return U}_assignValueToModel(U){this._model&&this._model.updateSelection(U,this)}_getMinDate(){return this._min}_getMaxDate(){return this._max}_getDateFilter(){return this._dateFilter}_shouldHandleChangeEvent(U){return U.source!==this}}return Ke.\u0275fac=function(U){return new(U||Ke)(o.\u0275\u0275directiveInject(o.ElementRef),o.\u0275\u0275directiveInject(a.DateAdapter,8),o.\u0275\u0275directiveInject(a.MAT_DATE_FORMATS,8),o.\u0275\u0275directiveInject(ae.G_,8))},Ke.\u0275dir=o.\u0275\u0275defineDirective({type:Ke,selectors:[["input","matDatepicker",""]],hostAttrs:[1,"mat-datepicker-input"],hostVars:6,hostBindings:function(U,fe){1&U&&o.\u0275\u0275listener("input",function(Je){return fe._onInput(Je.target.value)})("change",function(){return fe._onChange()})("blur",function(){return fe._onBlur()})("keydown",function(Je){return fe._onKeydown(Je)}),2&U&&(o.\u0275\u0275hostProperty("disabled",fe.disabled),o.\u0275\u0275attribute("aria-haspopup",fe._datepicker?"dialog":null)("aria-owns",(null==fe._datepicker?null:fe._datepicker.opened)&&fe._datepicker.id||null)("min",fe.min?fe._dateAdapter.toIso8601(fe.min):null)("max",fe.max?fe._dateAdapter.toIso8601(fe.max):null)("data-mat-calendar",fe._datepicker?fe._datepicker.id:null))},inputs:{matDatepicker:"matDatepicker",min:"min",max:"max",dateFilter:["matDatepickerFilter","dateFilter"]},exportAs:["matDatepickerInput"],features:[o.\u0275\u0275ProvidersFeature([It,zt,{provide:ie.Jk,useExisting:Ke}]),o.\u0275\u0275InheritDefinitionFeature]}),Ke})(),gn=(()=>{class Ke{}return Ke.\u0275fac=function(U){return new(U||Ke)},Ke.\u0275dir=o.\u0275\u0275defineDirective({type:Ke,selectors:[["","matDatepickerToggleIcon",""]]}),Ke})(),pn=(()=>{class Ke{get disabled(){return void 0===this._disabled&&this.datepicker?this.datepicker.disabled:!!this._disabled}set disabled(U){this._disabled=(0,J.Ig)(U)}constructor(U,fe,Pe){this._intl=U,this._changeDetectorRef=fe,this._stateChanges=tt.w0.EMPTY;const Je=Number(Pe);this.tabIndex=Je||0===Je?Je:null}ngOnChanges(U){U.datepicker&&this._watchStateChanges()}ngOnDestroy(){this._stateChanges.unsubscribe()}ngAfterContentInit(){this._watchStateChanges()}_open(U){this.datepicker&&!this.disabled&&(this.datepicker.open(),U.stopPropagation())}_watchStateChanges(){const U=this.datepicker?this.datepicker.stateChanges:(0,bt.of)(),fe=this.datepicker&&this.datepicker.datepickerInput?this.datepicker.datepickerInput.stateChanges:(0,bt.of)(),Pe=this.datepicker?(0,St.T)(this.datepicker.openedStream,this.datepicker.closedStream):(0,bt.of)();this._stateChanges.unsubscribe(),this._stateChanges=(0,St.T)(this._intl.changes,U,fe,Pe).subscribe(()=>this._changeDetectorRef.markForCheck())}}return Ke.\u0275fac=function(U){return new(U||Ke)(o.\u0275\u0275directiveInject(re),o.\u0275\u0275directiveInject(o.ChangeDetectorRef),o.\u0275\u0275injectAttribute("tabindex"))},Ke.\u0275cmp=o.\u0275\u0275defineComponent({type:Ke,selectors:[["mat-datepicker-toggle"]],contentQueries:function(U,fe,Pe){if(1&U&&o.\u0275\u0275contentQuery(Pe,gn,5),2&U){let Je;o.\u0275\u0275queryRefresh(Je=o.\u0275\u0275loadQuery())&&(fe._customIcon=Je.first)}},viewQuery:function(U,fe){if(1&U&&o.\u0275\u0275viewQuery(We,5),2&U){let Pe;o.\u0275\u0275queryRefresh(Pe=o.\u0275\u0275loadQuery())&&(fe._button=Pe.first)}},hostAttrs:[1,"mat-datepicker-toggle"],hostVars:8,hostBindings:function(U,fe){1&U&&o.\u0275\u0275listener("click",function(Je){return fe._open(Je)}),2&U&&(o.\u0275\u0275attribute("tabindex",null)("data-mat-calendar",fe.datepicker?fe.datepicker.id:null),o.\u0275\u0275classProp("mat-datepicker-toggle-active",fe.datepicker&&fe.datepicker.opened)("mat-accent",fe.datepicker&&"accent"===fe.datepicker.color)("mat-warn",fe.datepicker&&"warn"===fe.datepicker.color))},inputs:{datepicker:["for","datepicker"],tabIndex:"tabIndex",ariaLabel:["aria-label","ariaLabel"],disabled:"disabled",disableRipple:"disableRipple"},exportAs:["matDatepickerToggle"],features:[o.\u0275\u0275NgOnChangesFeature],ngContentSelectors:at,decls:4,vars:6,consts:[["mat-icon-button","","type","button",3,"disabled","disableRipple"],["button",""],["class","mat-datepicker-toggle-default-icon","viewBox","0 0 24 24","width","24px","height","24px","fill","currentColor","focusable","false","aria-hidden","true",4,"ngIf"],["viewBox","0 0 24 24","width","24px","height","24px","fill","currentColor","focusable","false","aria-hidden","true",1,"mat-datepicker-toggle-default-icon"],["d","M19 3h-1V1h-2v2H8V1H6v2H5c-1.11 0-1.99.9-1.99 2L3 19c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H5V8h14v11zM7 10h5v5H7z"]],template:function(U,fe){1&U&&(o.\u0275\u0275projectionDef(we),o.\u0275\u0275elementStart(0,"button",0,1),o.\u0275\u0275template(2,ve,2,0,"svg",2),o.\u0275\u0275projection(3),o.\u0275\u0275elementEnd()),2&U&&(o.\u0275\u0275property("disabled",fe.disabled)("disableRipple",fe.disableRipple),o.\u0275\u0275attribute("aria-haspopup",fe.datepicker?"dialog":null)("aria-label",fe.ariaLabel||fe._intl.openCalendarLabel)("tabindex",fe.disabled?-1:fe.tabIndex),o.\u0275\u0275advance(2),o.\u0275\u0275property("ngIf",!fe._customIcon))},dependencies:[b.NgIf,Xe],styles:[".mat-datepicker-toggle{pointer-events:auto}.cdk-high-contrast-active .mat-datepicker-toggle-default-icon{color:CanvasText}"],encapsulation:2,changeDetection:0}),Ke})();function Jn(Ke){return vi(Ke,!0)}function Nn(Ke){return Ke.nodeType===Node.ELEMENT_NODE}function vi(Ke,kt){if(Nn(Ke)&&kt){const fe=(Ke.getAttribute?.("aria-labelledby")?.split(/\s+/g)||[]).reduce((Pe,Je)=>{const Gt=document.getElementById(Je);return Gt&&Pe.push(Gt),Pe},[]);if(fe.length)return fe.map(Pe=>vi(Pe,!1)).join(" ")}if(Nn(Ke)){const U=Ke.getAttribute("aria-label")?.trim();if(U)return U}if(function kn(Ke){return"INPUT"===Ke.nodeName}(Ke)||function Un(Ke){return"TEXTAREA"===Ke.nodeName}(Ke)){if(Ke.labels?.length)return Array.from(Ke.labels).map(Pe=>vi(Pe,!1)).join(" ");const U=Ke.getAttribute("placeholder")?.trim();if(U)return U;const fe=Ke.getAttribute("title")?.trim();if(fe)return fe}return(Ke.textContent||"").replace(/\s+/g," ").trim()}const $i=new o.InjectionToken("MAT_DATE_RANGE_INPUT_PARENT"),fn=(0,a.mixinErrorState)((()=>{class Ke extends ge{constructor(U,fe,Pe,Je,Gt,Pn,Gi,Vi){super(fe,Gi,Vi),this._rangeInput=U,this._elementRef=fe,this._defaultErrorStateMatcher=Pe,this._injector=Je,this._parentForm=Gt,this._parentFormGroup=Pn,this._dir=(0,o.inject)(nt.Is,{optional:!0})}ngOnInit(){const U=this._injector.get(ee.NgControl,null,{optional:!0,self:!0});U&&(this.ngControl=U)}ngDoCheck(){this.ngControl&&this.updateErrorState()}isEmpty(){return 0===this._elementRef.nativeElement.value.length}_getPlaceholder(){return this._elementRef.nativeElement.placeholder}focus(){this._elementRef.nativeElement.focus()}getMirrorValue(){const U=this._elementRef.nativeElement,fe=U.value;return fe.length>0?fe:U.placeholder}_onInput(U){super._onInput(U),this._rangeInput._handleChildValueChange()}_openPopup(){this._rangeInput._openDatepicker()}_getMinDate(){return this._rangeInput.min}_getMaxDate(){return this._rangeInput.max}_getDateFilter(){return this._rangeInput.dateFilter}_parentDisabled(){return this._rangeInput._groupDisabled}_shouldHandleChangeEvent({source:U}){return U!==this._rangeInput._startInput&&U!==this._rangeInput._endInput}_assignValueProgrammatically(U){super._assignValueProgrammatically(U),(this===this._rangeInput._startInput?this._rangeInput._endInput:this._rangeInput._startInput)?._validatorOnChange()}_getAccessibleName(){return Jn(this._elementRef.nativeElement)}}return Ke.\u0275fac=function(U){return new(U||Ke)(o.\u0275\u0275directiveInject($i),o.\u0275\u0275directiveInject(o.ElementRef),o.\u0275\u0275directiveInject(a.ErrorStateMatcher),o.\u0275\u0275directiveInject(o.Injector),o.\u0275\u0275directiveInject(ee.NgForm,8),o.\u0275\u0275directiveInject(ee.FormGroupDirective,8),o.\u0275\u0275directiveInject(a.DateAdapter,8),o.\u0275\u0275directiveInject(a.MAT_DATE_FORMATS,8))},Ke.\u0275dir=o.\u0275\u0275defineDirective({type:Ke,features:[o.\u0275\u0275InheritDefinitionFeature]}),Ke})());let yn=(()=>{class Ke extends fn{constructor(U,fe,Pe,Je,Gt,Pn,Gi,Vi){super(U,fe,Pe,Je,Gt,Pn,Gi,Vi),this._startValidator=rr=>{const or=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(rr.value)),Zi=this._model?this._model.selection.end:null;return!or||!Zi||this._dateAdapter.compareDate(or,Zi)<=0?null:{matStartDateInvalid:{end:Zi,actual:or}}},this._validator=ee.Validators.compose([...super._getValidators(),this._startValidator])}_getValueFromModel(U){return U.start}_shouldHandleChangeEvent(U){return!(!super._shouldHandleChangeEvent(U)||(U.oldValue?.start?U.selection.start&&!this._dateAdapter.compareDate(U.oldValue.start,U.selection.start):!U.selection.start))}_assignValueToModel(U){if(this._model){const fe=new Sn(U,this._model.selection.end);this._model.updateSelection(fe,this)}}_formatValue(U){super._formatValue(U),this._rangeInput._handleChildValueChange()}_onKeydown(U){const fe=this._rangeInput._endInput,Pe=this._elementRef.nativeElement,Je="rtl"!==this._dir?.value;(U.keyCode===xt.SV&&Je||U.keyCode===xt.oh&&!Je)&&Pe.selectionStart===Pe.value.length&&Pe.selectionEnd===Pe.value.length?(U.preventDefault(),fe._elementRef.nativeElement.setSelectionRange(0,0),fe.focus()):super._onKeydown(U)}}return Ke.\u0275fac=function(U){return new(U||Ke)(o.\u0275\u0275directiveInject($i),o.\u0275\u0275directiveInject(o.ElementRef),o.\u0275\u0275directiveInject(a.ErrorStateMatcher),o.\u0275\u0275directiveInject(o.Injector),o.\u0275\u0275directiveInject(ee.NgForm,8),o.\u0275\u0275directiveInject(ee.FormGroupDirective,8),o.\u0275\u0275directiveInject(a.DateAdapter,8),o.\u0275\u0275directiveInject(a.MAT_DATE_FORMATS,8))},Ke.\u0275dir=o.\u0275\u0275defineDirective({type:Ke,selectors:[["input","matStartDate",""]],hostAttrs:["type","text",1,"mat-start-date","mat-date-range-input-inner"],hostVars:5,hostBindings:function(U,fe){1&U&&o.\u0275\u0275listener("input",function(Je){return fe._onInput(Je.target.value)})("change",function(){return fe._onChange()})("keydown",function(Je){return fe._onKeydown(Je)})("blur",function(){return fe._onBlur()}),2&U&&(o.\u0275\u0275hostProperty("disabled",fe.disabled),o.\u0275\u0275attribute("aria-haspopup",fe._rangeInput.rangePicker?"dialog":null)("aria-owns",(null==fe._rangeInput.rangePicker?null:fe._rangeInput.rangePicker.opened)&&fe._rangeInput.rangePicker.id||null)("min",fe._getMinDate()?fe._dateAdapter.toIso8601(fe._getMinDate()):null)("max",fe._getMaxDate()?fe._dateAdapter.toIso8601(fe._getMaxDate()):null))},inputs:{errorStateMatcher:"errorStateMatcher"},outputs:{dateChange:"dateChange",dateInput:"dateInput"},features:[o.\u0275\u0275ProvidersFeature([{provide:ee.NG_VALUE_ACCESSOR,useExisting:Ke,multi:!0},{provide:ee.NG_VALIDATORS,useExisting:Ke,multi:!0}]),o.\u0275\u0275InheritDefinitionFeature]}),Ke})(),rn=(()=>{class Ke extends fn{constructor(U,fe,Pe,Je,Gt,Pn,Gi,Vi){super(U,fe,Pe,Je,Gt,Pn,Gi,Vi),this._endValidator=rr=>{const or=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(rr.value)),Zi=this._model?this._model.selection.start:null;return!or||!Zi||this._dateAdapter.compareDate(or,Zi)>=0?null:{matEndDateInvalid:{start:Zi,actual:or}}},this._validator=ee.Validators.compose([...super._getValidators(),this._endValidator])}_getValueFromModel(U){return U.end}_shouldHandleChangeEvent(U){return!(!super._shouldHandleChangeEvent(U)||(U.oldValue?.end?U.selection.end&&!this._dateAdapter.compareDate(U.oldValue.end,U.selection.end):!U.selection.end))}_assignValueToModel(U){if(this._model){const fe=new Sn(this._model.selection.start,U);this._model.updateSelection(fe,this)}}_onKeydown(U){const fe=this._rangeInput._startInput,Pe=this._elementRef.nativeElement,Je="rtl"!==this._dir?.value;if(U.keyCode!==xt.ZH||Pe.value)if((U.keyCode===xt.oh&&Je||U.keyCode===xt.SV&&!Je)&&0===Pe.selectionStart&&0===Pe.selectionEnd){U.preventDefault();const Gt=fe._elementRef.nativeElement.value.length;fe._elementRef.nativeElement.setSelectionRange(Gt,Gt),fe.focus()}else super._onKeydown(U);else fe.focus()}}return Ke.\u0275fac=function(U){return new(U||Ke)(o.\u0275\u0275directiveInject($i),o.\u0275\u0275directiveInject(o.ElementRef),o.\u0275\u0275directiveInject(a.ErrorStateMatcher),o.\u0275\u0275directiveInject(o.Injector),o.\u0275\u0275directiveInject(ee.NgForm,8),o.\u0275\u0275directiveInject(ee.FormGroupDirective,8),o.\u0275\u0275directiveInject(a.DateAdapter,8),o.\u0275\u0275directiveInject(a.MAT_DATE_FORMATS,8))},Ke.\u0275dir=o.\u0275\u0275defineDirective({type:Ke,selectors:[["input","matEndDate",""]],hostAttrs:["type","text",1,"mat-end-date","mat-date-range-input-inner"],hostVars:5,hostBindings:function(U,fe){1&U&&o.\u0275\u0275listener("input",function(Je){return fe._onInput(Je.target.value)})("change",function(){return fe._onChange()})("keydown",function(Je){return fe._onKeydown(Je)})("blur",function(){return fe._onBlur()}),2&U&&(o.\u0275\u0275hostProperty("disabled",fe.disabled),o.\u0275\u0275attribute("aria-haspopup",fe._rangeInput.rangePicker?"dialog":null)("aria-owns",(null==fe._rangeInput.rangePicker?null:fe._rangeInput.rangePicker.opened)&&fe._rangeInput.rangePicker.id||null)("min",fe._getMinDate()?fe._dateAdapter.toIso8601(fe._getMinDate()):null)("max",fe._getMaxDate()?fe._dateAdapter.toIso8601(fe._getMaxDate()):null))},inputs:{errorStateMatcher:"errorStateMatcher"},outputs:{dateChange:"dateChange",dateInput:"dateInput"},features:[o.\u0275\u0275ProvidersFeature([{provide:ee.NG_VALUE_ACCESSOR,useExisting:Ke,multi:!0},{provide:ee.NG_VALIDATORS,useExisting:Ke,multi:!0}]),o.\u0275\u0275InheritDefinitionFeature]}),Ke})(),xn=0,ti=(()=>{class Ke{get value(){return this._model?this._model.selection:null}get shouldLabelFloat(){return this.focused||!this.empty}get placeholder(){const U=this._startInput?._getPlaceholder()||"",fe=this._endInput?._getPlaceholder()||"";return U||fe?`${U} ${this.separator} ${fe}`:""}get rangePicker(){return this._rangePicker}set rangePicker(U){U&&(this._model=U.registerInput(this),this._rangePicker=U,this._closedSubscription.unsubscribe(),this._closedSubscription=U.closedStream.subscribe(()=>{this._startInput?._onTouched(),this._endInput?._onTouched()}),this._registerModel(this._model))}get required(){return this._required??(this._isTargetRequired(this)||this._isTargetRequired(this._startInput)||this._isTargetRequired(this._endInput))??!1}set required(U){this._required=(0,J.Ig)(U)}get dateFilter(){return this._dateFilter}set dateFilter(U){const fe=this._startInput,Pe=this._endInput,Je=fe&&fe._matchesFilter(fe.value),Gt=Pe&&Pe._matchesFilter(fe.value);this._dateFilter=U,fe&&fe._matchesFilter(fe.value)!==Je&&fe._validatorOnChange(),Pe&&Pe._matchesFilter(Pe.value)!==Gt&&Pe._validatorOnChange()}get min(){return this._min}set min(U){const fe=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(U));this._dateAdapter.sameDate(fe,this._min)||(this._min=fe,this._revalidate())}get max(){return this._max}set max(U){const fe=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(U));this._dateAdapter.sameDate(fe,this._max)||(this._max=fe,this._revalidate())}get disabled(){return this._startInput&&this._endInput?this._startInput.disabled&&this._endInput.disabled:this._groupDisabled}set disabled(U){const fe=(0,J.Ig)(U);fe!==this._groupDisabled&&(this._groupDisabled=fe,this.stateChanges.next(void 0))}get errorState(){return!(!this._startInput||!this._endInput)&&(this._startInput.errorState||this._endInput.errorState)}get empty(){const U=!!this._startInput&&this._startInput.isEmpty(),fe=!!this._endInput&&this._endInput.isEmpty();return U&&fe}constructor(U,fe,Pe,Je,Gt){this._changeDetectorRef=U,this._elementRef=fe,this._dateAdapter=Je,this._formField=Gt,this._closedSubscription=tt.w0.EMPTY,this.id="mat-date-range-input-"+xn++,this.focused=!1,this.controlType="mat-date-range-input",this._groupDisabled=!1,this._ariaDescribedBy=null,this.separator="\u2013",this.comparisonStart=null,this.comparisonEnd=null,this.stateChanges=new Mt.x,Gt?._elementRef.nativeElement.classList.contains("mat-mdc-form-field")&&fe.nativeElement.classList.add("mat-mdc-input-element","mat-mdc-form-field-input-control","mdc-text-field__input"),this.ngControl=Pe}setDescribedByIds(U){this._ariaDescribedBy=U.length?U.join(" "):null}onContainerClick(){!this.focused&&!this.disabled&&(this._model&&this._model.selection.start?this._endInput.focus():this._startInput.focus())}ngAfterContentInit(){this._model&&this._registerModel(this._model),(0,St.T)(this._startInput.stateChanges,this._endInput.stateChanges).subscribe(()=>{this.stateChanges.next(void 0)})}ngOnChanges(U){Ge(U,this._dateAdapter)&&this.stateChanges.next(void 0)}ngOnDestroy(){this._closedSubscription.unsubscribe(),this.stateChanges.complete()}getStartValue(){return this.value?this.value.start:null}getThemePalette(){return this._formField?this._formField.color:void 0}getConnectedOverlayOrigin(){return this._formField?this._formField.getConnectedOverlayOrigin():this._elementRef}getOverlayLabelId(){return this._formField?this._formField.getLabelId():null}_getInputMirrorValue(U){const fe="start"===U?this._startInput:this._endInput;return fe?fe.getMirrorValue():""}_shouldHidePlaceholders(){return!!this._startInput&&!this._startInput.isEmpty()}_handleChildValueChange(){this.stateChanges.next(void 0),this._changeDetectorRef.markForCheck()}_openDatepicker(){this._rangePicker&&this._rangePicker.open()}_shouldHideSeparator(){return(!this._formField||this._formField.getLabelId()&&!this._formField._shouldLabelFloat())&&this.empty}_getAriaLabelledby(){const U=this._formField;return U&&U._hasFloatingLabel()?U._labelId:null}_getStartDateAccessibleName(){return this._startInput._getAccessibleName()}_getEndDateAccessibleName(){return this._endInput._getAccessibleName()}_updateFocus(U){this.focused=null!==U,this.stateChanges.next()}_revalidate(){this._startInput&&this._startInput._validatorOnChange(),this._endInput&&this._endInput._validatorOnChange()}_registerModel(U){this._startInput&&this._startInput._registerModel(U),this._endInput&&this._endInput._registerModel(U)}_isTargetRequired(U){return U?.ngControl?.control?.hasValidator(ee.Validators.required)}}return Ke.\u0275fac=function(U){return new(U||Ke)(o.\u0275\u0275directiveInject(o.ChangeDetectorRef),o.\u0275\u0275directiveInject(o.ElementRef),o.\u0275\u0275directiveInject(ee.ControlContainer,10),o.\u0275\u0275directiveInject(a.DateAdapter,8),o.\u0275\u0275directiveInject(ae.G_,8))},Ke.\u0275cmp=o.\u0275\u0275defineComponent({type:Ke,selectors:[["mat-date-range-input"]],contentQueries:function(U,fe,Pe){if(1&U&&(o.\u0275\u0275contentQuery(Pe,yn,5),o.\u0275\u0275contentQuery(Pe,rn,5)),2&U){let Je;o.\u0275\u0275queryRefresh(Je=o.\u0275\u0275loadQuery())&&(fe._startInput=Je.first),o.\u0275\u0275queryRefresh(Je=o.\u0275\u0275loadQuery())&&(fe._endInput=Je.first)}},hostAttrs:["role","group",1,"mat-date-range-input"],hostVars:8,hostBindings:function(U,fe){2&U&&(o.\u0275\u0275attribute("id",fe.id)("aria-labelledby",fe._getAriaLabelledby())("aria-describedby",fe._ariaDescribedBy)("data-mat-calendar",fe.rangePicker?fe.rangePicker.id:null),o.\u0275\u0275classProp("mat-date-range-input-hide-placeholders",fe._shouldHidePlaceholders())("mat-date-range-input-required",fe.required))},inputs:{rangePicker:"rangePicker",required:"required",dateFilter:"dateFilter",min:"min",max:"max",disabled:"disabled",separator:"separator",comparisonStart:"comparisonStart",comparisonEnd:"comparisonEnd"},exportAs:["matDateRangeInput"],features:[o.\u0275\u0275ProvidersFeature([{provide:ae.Eo,useExisting:Ke},{provide:$i,useExisting:Ke}]),o.\u0275\u0275NgOnChangesFeature],ngContentSelectors:je,decls:11,vars:5,consts:[["cdkMonitorSubtreeFocus","",1,"mat-date-range-input-container",3,"cdkFocusChange"],[1,"mat-date-range-input-wrapper"],["aria-hidden","true",1,"mat-date-range-input-mirror"],[1,"mat-date-range-input-separator"],[1,"mat-date-range-input-wrapper","mat-date-range-input-end-wrapper"]],template:function(U,fe){1&U&&(o.\u0275\u0275projectionDef(De),o.\u0275\u0275elementStart(0,"div",0),o.\u0275\u0275listener("cdkFocusChange",function(Je){return fe._updateFocus(Je)}),o.\u0275\u0275elementStart(1,"div",1),o.\u0275\u0275projection(2),o.\u0275\u0275elementStart(3,"span",2),o.\u0275\u0275text(4),o.\u0275\u0275elementEnd()(),o.\u0275\u0275elementStart(5,"span",3),o.\u0275\u0275text(6),o.\u0275\u0275elementEnd(),o.\u0275\u0275elementStart(7,"div",4),o.\u0275\u0275projection(8,1),o.\u0275\u0275elementStart(9,"span",2),o.\u0275\u0275text(10),o.\u0275\u0275elementEnd()()()),2&U&&(o.\u0275\u0275advance(4),o.\u0275\u0275textInterpolate(fe._getInputMirrorValue("start")),o.\u0275\u0275advance(1),o.\u0275\u0275classProp("mat-date-range-input-separator-hidden",fe._shouldHideSeparator()),o.\u0275\u0275advance(1),o.\u0275\u0275textInterpolate(fe.separator),o.\u0275\u0275advance(4),o.\u0275\u0275textInterpolate(fe._getInputMirrorValue("end")))},dependencies:[n.kH],styles:[".mat-date-range-input{display:block;width:100%}.mat-date-range-input-container{display:flex;align-items:center}.mat-date-range-input-separator{transition:opacity 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1);margin:0 4px}._mat-animation-noopable .mat-date-range-input-separator{transition:none}.mat-date-range-input-separator-hidden{-webkit-user-select:none;user-select:none;opacity:0;transition:none}.mat-date-range-input-wrapper{position:relative;overflow:hidden;max-width:calc(50% - 4px)}.mat-date-range-input-end-wrapper{flex-grow:1}.mat-date-range-input-inner{position:absolute;top:0;left:0;font:inherit;background:rgba(0,0,0,0);color:currentColor;border:none;outline:none;padding:0;margin:0;vertical-align:bottom;text-align:inherit;-webkit-appearance:none;width:100%;height:100%}.mat-date-range-input-inner:-moz-ui-invalid{box-shadow:none}.mat-date-range-input-inner::placeholder{transition:color 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-date-range-input-inner::-moz-placeholder{transition:color 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-date-range-input-inner::-webkit-input-placeholder{transition:color 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-date-range-input-inner:-ms-input-placeholder{transition:color 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-form-field-hide-placeholder .mat-date-range-input-inner::placeholder,.mat-date-range-input-hide-placeholders .mat-date-range-input-inner::placeholder{-webkit-user-select:none;user-select:none;color:rgba(0,0,0,0) !important;-webkit-text-fill-color:rgba(0,0,0,0);transition:none}.cdk-high-contrast-active .mat-form-field-hide-placeholder .mat-date-range-input-inner::placeholder,.cdk-high-contrast-active .mat-date-range-input-hide-placeholders .mat-date-range-input-inner::placeholder{opacity:0}.mat-form-field-hide-placeholder .mat-date-range-input-inner::-moz-placeholder,.mat-date-range-input-hide-placeholders .mat-date-range-input-inner::-moz-placeholder{-webkit-user-select:none;user-select:none;color:rgba(0,0,0,0) !important;-webkit-text-fill-color:rgba(0,0,0,0);transition:none}.cdk-high-contrast-active .mat-form-field-hide-placeholder .mat-date-range-input-inner::-moz-placeholder,.cdk-high-contrast-active .mat-date-range-input-hide-placeholders .mat-date-range-input-inner::-moz-placeholder{opacity:0}.mat-form-field-hide-placeholder .mat-date-range-input-inner::-webkit-input-placeholder,.mat-date-range-input-hide-placeholders .mat-date-range-input-inner::-webkit-input-placeholder{-webkit-user-select:none;user-select:none;color:rgba(0,0,0,0) !important;-webkit-text-fill-color:rgba(0,0,0,0);transition:none}.cdk-high-contrast-active .mat-form-field-hide-placeholder .mat-date-range-input-inner::-webkit-input-placeholder,.cdk-high-contrast-active .mat-date-range-input-hide-placeholders .mat-date-range-input-inner::-webkit-input-placeholder{opacity:0}.mat-form-field-hide-placeholder .mat-date-range-input-inner:-ms-input-placeholder,.mat-date-range-input-hide-placeholders .mat-date-range-input-inner:-ms-input-placeholder{-webkit-user-select:none;user-select:none;color:rgba(0,0,0,0) !important;-webkit-text-fill-color:rgba(0,0,0,0);transition:none}.cdk-high-contrast-active .mat-form-field-hide-placeholder .mat-date-range-input-inner:-ms-input-placeholder,.cdk-high-contrast-active .mat-date-range-input-hide-placeholders .mat-date-range-input-inner:-ms-input-placeholder{opacity:0}._mat-animation-noopable .mat-date-range-input-inner::placeholder{transition:none}._mat-animation-noopable .mat-date-range-input-inner::-moz-placeholder{transition:none}._mat-animation-noopable .mat-date-range-input-inner::-webkit-input-placeholder{transition:none}._mat-animation-noopable .mat-date-range-input-inner:-ms-input-placeholder{transition:none}.mat-date-range-input-mirror{-webkit-user-select:none;user-select:none;visibility:hidden;white-space:nowrap;display:inline-block;min-width:2px}.mat-mdc-form-field-type-mat-date-range-input .mat-mdc-form-field-infix{width:200px}"],encapsulation:2,changeDetection:0}),Ke})(),Ti=(()=>{class Ke extends Ae{_forwardContentValues(U){super._forwardContentValues(U);const fe=this.datepickerInput;fe&&(U.comparisonStart=fe.comparisonStart,U.comparisonEnd=fe.comparisonEnd,U.startDateAccessibleName=fe._getStartDateAccessibleName(),U.endDateAccessibleName=fe._getEndDateAccessibleName())}}return Ke.\u0275fac=function(){let kt;return function(fe){return(kt||(kt=o.\u0275\u0275getInheritedFactory(Ke)))(fe||Ke)}}(),Ke.\u0275cmp=o.\u0275\u0275defineComponent({type:Ke,selectors:[["mat-date-range-picker"]],exportAs:["matDateRangePicker"],features:[o.\u0275\u0275ProvidersFeature([mt,hn,{provide:Ae,useExisting:Ke}]),o.\u0275\u0275InheritDefinitionFeature],decls:0,vars:0,template:function(U,fe){},encapsulation:2,changeDetection:0}),Ke})(),zi=(()=>{class Ke{constructor(U){this._datepicker=U}_applySelection(){this._datepicker._applyPendingSelection(),this._datepicker.close()}}return Ke.\u0275fac=function(U){return new(U||Ke)(o.\u0275\u0275directiveInject(Ae))},Ke.\u0275dir=o.\u0275\u0275defineDirective({type:Ke,selectors:[["","matDatepickerApply",""],["","matDateRangePickerApply",""]],hostBindings:function(U,fe){1&U&&o.\u0275\u0275listener("click",function(){return fe._applySelection()})}}),Ke})(),xi=(()=>{class Ke{constructor(U){this._datepicker=U}}return Ke.\u0275fac=function(U){return new(U||Ke)(o.\u0275\u0275directiveInject(Ae))},Ke.\u0275dir=o.\u0275\u0275defineDirective({type:Ke,selectors:[["","matDatepickerCancel",""],["","matDateRangePickerCancel",""]],hostBindings:function(U,fe){1&U&&o.\u0275\u0275listener("click",function(){return fe._datepicker.close()})}}),Ke})(),_r=(()=>{class Ke{constructor(U,fe){this._datepicker=U,this._viewContainerRef=fe}ngAfterViewInit(){this._portal=new C.UE(this._template,this._viewContainerRef),this._datepicker.registerActions(this._portal)}ngOnDestroy(){this._datepicker.removeActions(this._portal),this._portal&&this._portal.isAttached&&this._portal?.detach()}}return Ke.\u0275fac=function(U){return new(U||Ke)(o.\u0275\u0275directiveInject(Ae),o.\u0275\u0275directiveInject(o.ViewContainerRef))},Ke.\u0275cmp=o.\u0275\u0275defineComponent({type:Ke,selectors:[["mat-datepicker-actions"],["mat-date-range-picker-actions"]],viewQuery:function(U,fe){if(1&U&&o.\u0275\u0275viewQuery(o.TemplateRef,5),2&U){let Pe;o.\u0275\u0275queryRefresh(Pe=o.\u0275\u0275loadQuery())&&(fe._template=Pe.first)}},ngContentSelectors:ze,decls:1,vars:0,consts:[[1,"mat-datepicker-actions"]],template:function(U,fe){1&U&&(o.\u0275\u0275projectionDef(),o.\u0275\u0275template(0,ke,2,0,"ng-template"))},styles:[".mat-datepicker-actions{display:flex;justify-content:flex-end;align-items:center;padding:0 8px 8px 8px}.mat-datepicker-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:8px}[dir=rtl] .mat-datepicker-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:0;margin-right:8px}"],encapsulation:2,changeDetection:0}),Ke})(),gi=(()=>{class Ke{}return Ke.\u0275fac=function(U){return new(U||Ke)},Ke.\u0275mod=o.\u0275\u0275defineNgModule({type:Ke}),Ke.\u0275inj=o.\u0275\u0275defineInjector({providers:[re,Pi],imports:[b.CommonModule,$e,p.U8,n.rt,C.eL,a.MatCommonModule,st.ZD]}),Ke})()},6385:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{MatDivider:()=>b,MatDividerModule:()=>o});var n=g(5879),p=g(2495),C=g(3680);let b=(()=>{class v{constructor(){this._vertical=!1,this._inset=!1}get vertical(){return this._vertical}set vertical(c){this._vertical=(0,p.Ig)(c)}get inset(){return this._inset}set inset(c){this._inset=(0,p.Ig)(c)}}return v.\u0275fac=function(c){return new(c||v)},v.\u0275cmp=n.\u0275\u0275defineComponent({type:v,selectors:[["mat-divider"]],hostAttrs:["role","separator",1,"mat-divider"],hostVars:7,hostBindings:function(c,s){2&c&&(n.\u0275\u0275attribute("aria-orientation",s.vertical?"vertical":"horizontal"),n.\u0275\u0275classProp("mat-divider-vertical",s.vertical)("mat-divider-horizontal",!s.vertical)("mat-divider-inset",s.inset))},inputs:{vertical:"vertical",inset:"inset"},decls:0,vars:0,template:function(c,s){},styles:[".mat-divider{--mat-divider-width:1px;display:block;margin:0;border-top-style:solid;border-top-color:var(--mat-divider-color);border-top-width:var(--mat-divider-width)}.mat-divider.mat-divider-vertical{border-top:0;border-right-style:solid;border-right-color:var(--mat-divider-color);border-right-width:var(--mat-divider-width)}.mat-divider.mat-divider-inset{margin-left:80px}[dir=rtl] .mat-divider.mat-divider-inset{margin-left:auto;margin-right:80px}"],encapsulation:2,changeDetection:0}),v})(),o=(()=>{class v{}return v.\u0275fac=function(c){return new(c||v)},v.\u0275mod=n.\u0275\u0275defineNgModule({type:v}),v.\u0275inj=n.\u0275\u0275defineInjector({imports:[C.MatCommonModule,C.MatCommonModule]}),v})()},1043:(Se,X,g)=>{"use strict";g.d(X,{Bi:()=>St,Eo:()=>Mt,G_:()=>xt,Lv:()=>bt,Px:()=>ne,TN:()=>st,UO:()=>tt,Ve:()=>$,ab:()=>k});var n=g(5879),p=g(6825);const k=new n.InjectionToken("MatError"),ne=new n.InjectionToken("MatPrefix"),$=new n.InjectionToken("MatSuffix"),st={transitionMessages:(0,p.X$)("transitionMessages",[(0,p.SB)("enter",(0,p.oB)({opacity:1,transform:"translateY(0%)"})),(0,p.eR)("void => enter",[(0,p.oB)({opacity:0,transform:"translateY(-5px)"}),(0,p.jt)("300ms cubic-bezier(0.55, 0, 0.55, 0.2)")])])};let Mt=(()=>{class ie{}return ie.\u0275fac=function(Te){return new(Te||ie)},ie.\u0275dir=n.\u0275\u0275defineDirective({type:ie}),ie})();function tt(){return Error("Placeholder attribute and child element were both specified.")}function St(ie){return Error(`A hint was already declared for 'align="${ie}"'.`)}function bt(){return Error("mat-form-field must contain a MatFormFieldControl.")}const xt=new n.InjectionToken("MatFormField")},617:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{ICON_REGISTRY_PROVIDER:()=>N,ICON_REGISTRY_PROVIDER_FACTORY:()=>j,MAT_ICON_DEFAULT_OPTIONS:()=>se,MAT_ICON_LOCATION:()=>ne,MAT_ICON_LOCATION_FACTORY:()=>me,MatIcon:()=>ue,MatIconModule:()=>Me,MatIconRegistry:()=>R,getMatIconFailedToSanitizeLiteralError:()=>E,getMatIconFailedToSanitizeUrlError:()=>O,getMatIconNameNotFoundError:()=>A,getMatIconNoHttpProviderError:()=>T});var n=g(5879),p=g(3680),C=g(2495),b=g(6814),o=g(2096),v=g(8504),a=g(9315),c=g(7394),s=g(9397),l=g(7398),d=g(6306),r=g(4716),u=g(3020),h=g(8180),m=g(9862),_=g(6593);const M=["*"];let x;function L(Oe){return function w(){if(void 0===x&&(x=null,typeof window<"u")){const Oe=window;void 0!==Oe.trustedTypes&&(x=Oe.trustedTypes.createPolicy("angular#components",{createHTML:Xe=>Xe}))}return x}()?.createHTML(Oe)||Oe}function A(Oe){return Error(`Unable to find icon with the name "${Oe}"`)}function T(){return Error("Could not find HttpClient provider for use with Angular Material icons. Please include the HttpClientModule from @angular/common/http in your app imports.")}function O(Oe){return Error(`The URL provided to MatIconRegistry was not trusted as a resource URL via Angular's DomSanitizer. Attempted URL was "${Oe}".`)}function E(Oe){return Error(`The literal provided to MatIconRegistry was not trusted as safe HTML by Angular's DomSanitizer. Attempted literal was "${Oe}".`)}class D{constructor(Xe,Be,$e){this.url=Xe,this.svgText=Be,this.options=$e}}let R=(()=>{class Oe{constructor(Be,$e,st,Mt){this._httpClient=Be,this._sanitizer=$e,this._errorHandler=Mt,this._svgIconConfigs=new Map,this._iconSetConfigs=new Map,this._cachedIconsByUrl=new Map,this._inProgressUrlFetches=new Map,this._fontCssClassesByAlias=new Map,this._resolvers=[],this._defaultFontSetClass=["material-icons","mat-ligature-font"],this._document=st}addSvgIcon(Be,$e,st){return this.addSvgIconInNamespace("",Be,$e,st)}addSvgIconLiteral(Be,$e,st){return this.addSvgIconLiteralInNamespace("",Be,$e,st)}addSvgIconInNamespace(Be,$e,st,Mt){return this._addSvgIconConfig(Be,$e,new D(st,null,Mt))}addSvgIconResolver(Be){return this._resolvers.push(Be),this}addSvgIconLiteralInNamespace(Be,$e,st,Mt){const tt=this._sanitizer.sanitize(n.SecurityContext.HTML,st);if(!tt)throw E(st);const St=L(tt);return this._addSvgIconConfig(Be,$e,new D("",St,Mt))}addSvgIconSet(Be,$e){return this.addSvgIconSetInNamespace("",Be,$e)}addSvgIconSetLiteral(Be,$e){return this.addSvgIconSetLiteralInNamespace("",Be,$e)}addSvgIconSetInNamespace(Be,$e,st){return this._addSvgIconSetConfig(Be,new D($e,null,st))}addSvgIconSetLiteralInNamespace(Be,$e,st){const Mt=this._sanitizer.sanitize(n.SecurityContext.HTML,$e);if(!Mt)throw E($e);const tt=L(Mt);return this._addSvgIconSetConfig(Be,new D("",tt,st))}registerFontClassAlias(Be,$e=Be){return this._fontCssClassesByAlias.set(Be,$e),this}classNameForFontAlias(Be){return this._fontCssClassesByAlias.get(Be)||Be}setDefaultFontSetClass(...Be){return this._defaultFontSetClass=Be,this}getDefaultFontSetClass(){return this._defaultFontSetClass}getSvgIconFromUrl(Be){const $e=this._sanitizer.sanitize(n.SecurityContext.RESOURCE_URL,Be);if(!$e)throw O(Be);const st=this._cachedIconsByUrl.get($e);return st?(0,o.of)(S(st)):this._loadSvgIconFromConfig(new D(Be,null)).pipe((0,s.b)(Mt=>this._cachedIconsByUrl.set($e,Mt)),(0,l.U)(Mt=>S(Mt)))}getNamedSvgIcon(Be,$e=""){const st=k($e,Be);let Mt=this._svgIconConfigs.get(st);if(Mt)return this._getSvgFromConfig(Mt);if(Mt=this._getIconConfigFromResolvers($e,Be),Mt)return this._svgIconConfigs.set(st,Mt),this._getSvgFromConfig(Mt);const tt=this._iconSetConfigs.get($e);return tt?this._getSvgFromIconSetConfigs(Be,tt):(0,v._)(A(st))}ngOnDestroy(){this._resolvers=[],this._svgIconConfigs.clear(),this._iconSetConfigs.clear(),this._cachedIconsByUrl.clear()}_getSvgFromConfig(Be){return Be.svgText?(0,o.of)(S(this._svgElementFromConfig(Be))):this._loadSvgIconFromConfig(Be).pipe((0,l.U)($e=>S($e)))}_getSvgFromIconSetConfigs(Be,$e){const st=this._extractIconWithNameFromAnySet(Be,$e);if(st)return(0,o.of)(st);const Mt=$e.filter(tt=>!tt.svgText).map(tt=>this._loadSvgIconSetFromConfig(tt).pipe((0,d.K)(St=>{const xt=`Loading icon set URL: ${this._sanitizer.sanitize(n.SecurityContext.RESOURCE_URL,tt.url)} failed: ${St.message}`;return this._errorHandler.handleError(new Error(xt)),(0,o.of)(null)})));return(0,a.D)(Mt).pipe((0,l.U)(()=>{const tt=this._extractIconWithNameFromAnySet(Be,$e);if(!tt)throw A(Be);return tt}))}_extractIconWithNameFromAnySet(Be,$e){for(let st=$e.length-1;st>=0;st--){const Mt=$e[st];if(Mt.svgText&&Mt.svgText.toString().indexOf(Be)>-1){const tt=this._svgElementFromConfig(Mt),St=this._extractSvgIconFromSet(tt,Be,Mt.options);if(St)return St}}return null}_loadSvgIconFromConfig(Be){return this._fetchIcon(Be).pipe((0,s.b)($e=>Be.svgText=$e),(0,l.U)(()=>this._svgElementFromConfig(Be)))}_loadSvgIconSetFromConfig(Be){return Be.svgText?(0,o.of)(null):this._fetchIcon(Be).pipe((0,s.b)($e=>Be.svgText=$e))}_extractSvgIconFromSet(Be,$e,st){const Mt=Be.querySelector(`[id="${$e}"]`);if(!Mt)return null;const tt=Mt.cloneNode(!0);if(tt.removeAttribute("id"),"svg"===tt.nodeName.toLowerCase())return this._setSvgAttributes(tt,st);if("symbol"===tt.nodeName.toLowerCase())return this._setSvgAttributes(this._toSvgElement(tt),st);const St=this._svgElementFromString(L(""));return St.appendChild(tt),this._setSvgAttributes(St,st)}_svgElementFromString(Be){const $e=this._document.createElement("DIV");$e.innerHTML=Be;const st=$e.querySelector("svg");if(!st)throw Error(" tag not found");return st}_toSvgElement(Be){const $e=this._svgElementFromString(L("")),st=Be.attributes;for(let Mt=0;MtL(xt)),(0,r.x)(()=>this._inProgressUrlFetches.delete(tt)),(0,u.B)());return this._inProgressUrlFetches.set(tt,bt),bt}_addSvgIconConfig(Be,$e,st){return this._svgIconConfigs.set(k(Be,$e),st),this}_addSvgIconSetConfig(Be,$e){const st=this._iconSetConfigs.get(Be);return st?st.push($e):this._iconSetConfigs.set(Be,[$e]),this}_svgElementFromConfig(Be){if(!Be.svgElement){const $e=this._svgElementFromString(Be.svgText);this._setSvgAttributes($e,Be.options),Be.svgElement=$e}return Be.svgElement}_getIconConfigFromResolvers(Be,$e){for(let st=0;stXe?Xe.pathname+Xe.search:""}}const $=["clip-path","color-profile","src","cursor","fill","filter","marker","marker-start","marker-mid","marker-end","mask","stroke"],q=$.map(Oe=>`[${Oe}]`).join(", "),Q=/^url\(['"]?#(.*?)['"]?\)$/;let ue=(()=>{class Oe extends Y{get inline(){return this._inline}set inline(Be){this._inline=(0,C.Ig)(Be)}get svgIcon(){return this._svgIcon}set svgIcon(Be){Be!==this._svgIcon&&(Be?this._updateSvgIcon(Be):this._svgIcon&&this._clearSvgElement(),this._svgIcon=Be)}get fontSet(){return this._fontSet}set fontSet(Be){const $e=this._cleanupFontValue(Be);$e!==this._fontSet&&(this._fontSet=$e,this._updateFontIconClasses())}get fontIcon(){return this._fontIcon}set fontIcon(Be){const $e=this._cleanupFontValue(Be);$e!==this._fontIcon&&(this._fontIcon=$e,this._updateFontIconClasses())}constructor(Be,$e,st,Mt,tt,St){super(Be),this._iconRegistry=$e,this._location=Mt,this._errorHandler=tt,this._inline=!1,this._previousFontSetClass=[],this._currentIconFetch=c.w0.EMPTY,St&&(St.color&&(this.color=this.defaultColor=St.color),St.fontSet&&(this.fontSet=St.fontSet)),st||Be.nativeElement.setAttribute("aria-hidden","true")}_splitIconName(Be){if(!Be)return["",""];const $e=Be.split(":");switch($e.length){case 1:return["",$e[0]];case 2:return $e;default:throw Error(`Invalid icon name: "${Be}"`)}}ngOnInit(){this._updateFontIconClasses()}ngAfterViewChecked(){const Be=this._elementsWithExternalReferences;if(Be&&Be.size){const $e=this._location.getPathname();$e!==this._previousPath&&(this._previousPath=$e,this._prependPathToReferences($e))}}ngOnDestroy(){this._currentIconFetch.unsubscribe(),this._elementsWithExternalReferences&&this._elementsWithExternalReferences.clear()}_usingFontIcon(){return!this.svgIcon}_setSvgElement(Be){this._clearSvgElement();const $e=this._location.getPathname();this._previousPath=$e,this._cacheChildrenWithExternalReferences(Be),this._prependPathToReferences($e),this._elementRef.nativeElement.appendChild(Be)}_clearSvgElement(){const Be=this._elementRef.nativeElement;let $e=Be.childNodes.length;for(this._elementsWithExternalReferences&&this._elementsWithExternalReferences.clear();$e--;){const st=Be.childNodes[$e];(1!==st.nodeType||"svg"===st.nodeName.toLowerCase())&&st.remove()}}_updateFontIconClasses(){if(!this._usingFontIcon())return;const Be=this._elementRef.nativeElement,$e=(this.fontSet?this._iconRegistry.classNameForFontAlias(this.fontSet).split(/ +/):this._iconRegistry.getDefaultFontSetClass()).filter(st=>st.length>0);this._previousFontSetClass.forEach(st=>Be.classList.remove(st)),$e.forEach(st=>Be.classList.add(st)),this._previousFontSetClass=$e,this.fontIcon!==this._previousFontIconClass&&!$e.includes("mat-ligature-font")&&(this._previousFontIconClass&&Be.classList.remove(this._previousFontIconClass),this.fontIcon&&Be.classList.add(this.fontIcon),this._previousFontIconClass=this.fontIcon)}_cleanupFontValue(Be){return"string"==typeof Be?Be.trim().split(" ")[0]:Be}_prependPathToReferences(Be){const $e=this._elementsWithExternalReferences;$e&&$e.forEach((st,Mt)=>{st.forEach(tt=>{Mt.setAttribute(tt.name,`url('${Be}#${tt.value}')`)})})}_cacheChildrenWithExternalReferences(Be){const $e=Be.querySelectorAll(q),st=this._elementsWithExternalReferences=this._elementsWithExternalReferences||new Map;for(let Mt=0;Mt<$e.length;Mt++)$.forEach(tt=>{const St=$e[Mt],bt=St.getAttribute(tt),xt=bt?bt.match(Q):null;if(xt){let nt=st.get(St);nt||(nt=[],st.set(St,nt)),nt.push({name:tt,value:xt[1]})}})}_updateSvgIcon(Be){if(this._svgNamespace=null,this._svgName=null,this._currentIconFetch.unsubscribe(),Be){const[$e,st]=this._splitIconName(Be);$e&&(this._svgNamespace=$e),st&&(this._svgName=st),this._currentIconFetch=this._iconRegistry.getNamedSvgIcon(st,$e).pipe((0,h.q)(1)).subscribe(Mt=>this._setSvgElement(Mt),Mt=>{this._errorHandler.handleError(new Error(`Error retrieving icon ${$e}:${st}! ${Mt.message}`))})}}}return Oe.\u0275fac=function(Be){return new(Be||Oe)(n.\u0275\u0275directiveInject(n.ElementRef),n.\u0275\u0275directiveInject(R),n.\u0275\u0275injectAttribute("aria-hidden"),n.\u0275\u0275directiveInject(ne),n.\u0275\u0275directiveInject(n.ErrorHandler),n.\u0275\u0275directiveInject(se,8))},Oe.\u0275cmp=n.\u0275\u0275defineComponent({type:Oe,selectors:[["mat-icon"]],hostAttrs:["role","img",1,"mat-icon","notranslate"],hostVars:8,hostBindings:function(Be,$e){2&Be&&(n.\u0275\u0275attribute("data-mat-icon-type",$e._usingFontIcon()?"font":"svg")("data-mat-icon-name",$e._svgName||$e.fontIcon)("data-mat-icon-namespace",$e._svgNamespace||$e.fontSet)("fontIcon",$e._usingFontIcon()?$e.fontIcon:null),n.\u0275\u0275classProp("mat-icon-inline",$e.inline)("mat-icon-no-color","primary"!==$e.color&&"accent"!==$e.color&&"warn"!==$e.color))},inputs:{color:"color",inline:"inline",svgIcon:"svgIcon",fontSet:"fontSet",fontIcon:"fontIcon"},exportAs:["matIcon"],features:[n.\u0275\u0275InheritDefinitionFeature],ngContentSelectors:M,decls:1,vars:0,template:function(Be,$e){1&Be&&(n.\u0275\u0275projectionDef(),n.\u0275\u0275projection(0))},styles:[".mat-icon{-webkit-user-select:none;user-select:none;background-repeat:no-repeat;display:inline-block;fill:currentColor;height:24px;width:24px;overflow:hidden}.mat-icon.mat-icon-inline{font-size:inherit;height:inherit;line-height:inherit;width:inherit}.mat-icon.mat-ligature-font[fontIcon]::before{content:attr(fontIcon)}[dir=rtl] .mat-icon-rtl-mirror{transform:scale(-1, 1)}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mat-icon,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-icon{display:block}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mat-icon-button .mat-icon,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-icon-button .mat-icon{margin:auto}"],encapsulation:2,changeDetection:0}),Oe})(),Me=(()=>{class Oe{}return Oe.\u0275fac=function(Be){return new(Be||Oe)},Oe.\u0275mod=n.\u0275\u0275defineNgModule({type:Oe}),Oe.\u0275inj=n.\u0275\u0275defineInjector({imports:[p.MatCommonModule,p.MatCommonModule]}),Oe})()},4516:(Se,X,g)=>{"use strict";g.d(X,{Jk:()=>l,Nt:()=>h,b7:()=>s});var n=g(2495),p=g(2831),C=g(6263),b=g(5879),o=g(6223),v=g(3680),a=g(1043),c=g(8645);function s(_){return Error(`Input type "${_}" isn't supported by matInput.`)}const l=new b.InjectionToken("MAT_INPUT_VALUE_ACCESSOR"),d=["button","checkbox","file","hidden","image","radio","range","reset","submit"];let r=0;const u=(0,v.mixinErrorState)(class{constructor(_,M,x,w){this._defaultErrorStateMatcher=_,this._parentForm=M,this._parentFormGroup=x,this.ngControl=w,this.stateChanges=new c.x}});let h=(()=>{class _ extends u{get disabled(){return this._disabled}set disabled(x){this._disabled=(0,n.Ig)(x),this.focused&&(this.focused=!1,this.stateChanges.next())}get id(){return this._id}set id(x){this._id=x||this._uid}get required(){return this._required??this.ngControl?.control?.hasValidator(o.Validators.required)??!1}set required(x){this._required=(0,n.Ig)(x)}get type(){return this._type}set type(x){this._type=x||"text",this._validateType(),!this._isTextarea&&(0,p.qK)().has(this._type)&&(this._elementRef.nativeElement.type=this._type)}get value(){return this._inputValueAccessor.value}set value(x){x!==this.value&&(this._inputValueAccessor.value=x,this.stateChanges.next())}get readonly(){return this._readonly}set readonly(x){this._readonly=(0,n.Ig)(x)}constructor(x,w,L,A,T,O,E,D,R,j){super(O,A,T,L),this._elementRef=x,this._platform=w,this._autofillMonitor=D,this._formField=j,this._uid="mat-input-"+r++,this.focused=!1,this.stateChanges=new c.x,this.controlType="mat-input",this.autofilled=!1,this._disabled=!1,this._type="text",this._readonly=!1,this._neverEmptyInputTypes=["date","datetime","datetime-local","month","time","week"].filter(k=>(0,p.qK)().has(k)),this._iOSKeyupListener=k=>{const F=k.target;!F.value&&0===F.selectionStart&&0===F.selectionEnd&&(F.setSelectionRange(1,1),F.setSelectionRange(0,0))};const N=this._elementRef.nativeElement,S=N.nodeName.toLowerCase();this._inputValueAccessor=E||N,this._previousNativeValue=this.value,this.id=this.id,w.IOS&&R.runOutsideAngular(()=>{x.nativeElement.addEventListener("keyup",this._iOSKeyupListener)}),this._isServer=!this._platform.isBrowser,this._isNativeSelect="select"===S,this._isTextarea="textarea"===S,this._isInFormField=!!j,this._isNativeSelect&&(this.controlType=N.multiple?"mat-native-select-multiple":"mat-native-select")}ngAfterViewInit(){this._platform.isBrowser&&this._autofillMonitor.monitor(this._elementRef.nativeElement).subscribe(x=>{this.autofilled=x.isAutofilled,this.stateChanges.next()})}ngOnChanges(){this.stateChanges.next()}ngOnDestroy(){this.stateChanges.complete(),this._platform.isBrowser&&this._autofillMonitor.stopMonitoring(this._elementRef.nativeElement),this._platform.IOS&&this._elementRef.nativeElement.removeEventListener("keyup",this._iOSKeyupListener)}ngDoCheck(){this.ngControl&&(this.updateErrorState(),null!==this.ngControl.disabled&&this.ngControl.disabled!==this.disabled&&(this.disabled=this.ngControl.disabled,this.stateChanges.next())),this._dirtyCheckNativeValue(),this._dirtyCheckPlaceholder()}focus(x){this._elementRef.nativeElement.focus(x)}_focusChanged(x){x!==this.focused&&(this.focused=x,this.stateChanges.next())}_onInput(){}_dirtyCheckNativeValue(){const x=this._elementRef.nativeElement.value;this._previousNativeValue!==x&&(this._previousNativeValue=x,this.stateChanges.next())}_dirtyCheckPlaceholder(){const x=this._getPlaceholder();if(x!==this._previousPlaceholder){const w=this._elementRef.nativeElement;this._previousPlaceholder=x,x?w.setAttribute("placeholder",x):w.removeAttribute("placeholder")}}_getPlaceholder(){return this.placeholder||null}_validateType(){d.indexOf(this._type)}_isNeverEmpty(){return this._neverEmptyInputTypes.indexOf(this._type)>-1}_isBadInput(){let x=this._elementRef.nativeElement.validity;return x&&x.badInput}get empty(){return!(this._isNeverEmpty()||this._elementRef.nativeElement.value||this._isBadInput()||this.autofilled)}get shouldLabelFloat(){if(this._isNativeSelect){const x=this._elementRef.nativeElement,w=x.options[0];return this.focused||x.multiple||!this.empty||!!(x.selectedIndex>-1&&w&&w.label)}return this.focused||!this.empty}setDescribedByIds(x){x.length?this._elementRef.nativeElement.setAttribute("aria-describedby",x.join(" ")):this._elementRef.nativeElement.removeAttribute("aria-describedby")}onContainerClick(){this.focused||this.focus()}_isInlineSelect(){const x=this._elementRef.nativeElement;return this._isNativeSelect&&(x.multiple||x.size>1)}}return _.\u0275fac=function(x){return new(x||_)(b.\u0275\u0275directiveInject(b.ElementRef),b.\u0275\u0275directiveInject(p.t4),b.\u0275\u0275directiveInject(o.NgControl,10),b.\u0275\u0275directiveInject(o.NgForm,8),b.\u0275\u0275directiveInject(o.FormGroupDirective,8),b.\u0275\u0275directiveInject(v.ErrorStateMatcher),b.\u0275\u0275directiveInject(l,10),b.\u0275\u0275directiveInject(C.Lq),b.\u0275\u0275directiveInject(b.NgZone),b.\u0275\u0275directiveInject(a.G_,8))},_.\u0275dir=b.\u0275\u0275defineDirective({type:_,selectors:[["input","matInput",""],["textarea","matInput",""],["select","matNativeControl",""],["input","matNativeControl",""],["textarea","matNativeControl",""]],hostAttrs:[1,"mat-mdc-input-element"],hostVars:18,hostBindings:function(x,w){1&x&&b.\u0275\u0275listener("focus",function(){return w._focusChanged(!0)})("blur",function(){return w._focusChanged(!1)})("input",function(){return w._onInput()}),2&x&&(b.\u0275\u0275hostProperty("id",w.id)("disabled",w.disabled)("required",w.required),b.\u0275\u0275attribute("name",w.name||null)("readonly",w.readonly&&!w._isNativeSelect||null)("aria-invalid",w.empty&&w.required?null:w.errorState)("aria-required",w.required)("id",w.id),b.\u0275\u0275classProp("mat-input-server",w._isServer)("mat-mdc-form-field-textarea-control",w._isInFormField&&w._isTextarea)("mat-mdc-form-field-input-control",w._isInFormField)("mdc-text-field__input",w._isInFormField)("mat-mdc-native-select-inline",w._isInlineSelect()))},inputs:{disabled:"disabled",id:"id",placeholder:"placeholder",name:"name",required:"required",type:"type",errorStateMatcher:"errorStateMatcher",userAriaDescribedBy:["aria-describedby","userAriaDescribedBy"],value:"value",readonly:"readonly"},exportAs:["matInput"],features:[b.\u0275\u0275ProvidersFeature([{provide:a.Eo,useExisting:_}]),b.\u0275\u0275InheritDefinitionFeature,b.\u0275\u0275NgOnChangesFeature]}),_})()},9241:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{MAT_LEGACY_AUTOCOMPLETE_DEFAULT_OPTIONS:()=>$,MAT_LEGACY_AUTOCOMPLETE_DEFAULT_OPTIONS_FACTORY:()=>q,MAT_LEGACY_AUTOCOMPLETE_SCROLL_STRATEGY:()=>$e,MAT_LEGACY_AUTOCOMPLETE_SCROLL_STRATEGY_FACTORY:()=>st,MAT_LEGACY_AUTOCOMPLETE_SCROLL_STRATEGY_FACTORY_PROVIDER:()=>Mt,MAT_LEGACY_AUTOCOMPLETE_VALUE_ACCESSOR:()=>vt,MatLegacyAutocomplete:()=>ot,MatLegacyAutocompleteModule:()=>Ce,MatLegacyAutocompleteOrigin:()=>J,MatLegacyAutocompleteSelectedEvent:()=>ne,MatLegacyAutocompleteTrigger:()=>rt,getMatLegacyAutocompleteMissingPanelError:()=>Be});var n=g(5879),p=g(3680),C=g(4678),b=g(6814),o=g(6672),v=g(9594),a=g(4300),c=g(2495),s=g(2831),d=(g(6825),g(7394)),r=g(8645),u=g(4911),h=g(3019),m=g(2096),_=g(2438),M=g(6028),x=g(8484),w=g(6223),L=g(1043),A=g(7921),T=g(4664),O=g(8180),E=g(2181),D=g(7398),R=g(9397),j=g(7547),N=g(9388);const S=["panel"];let se=0;class ne{constructor(ae,ie){this.source=ae,this.option=ie}}const me=(0,p.mixinDisableRipple)(class{}),$=new n.InjectionToken("mat-autocomplete-default-options",{providedIn:"root",factory:q});function q(){return{autoActiveFirstOption:!1,autoSelectActiveOption:!1,hideSingleSelectionIndicator:!1}}let Q=(()=>{class ee extends me{get isOpen(){return this._isOpen&&this.showPanel}_setColor(ie){this._color=ie,this._setThemeClasses(this._classList)}get autoActiveFirstOption(){return this._autoActiveFirstOption}set autoActiveFirstOption(ie){this._autoActiveFirstOption=(0,c.Ig)(ie)}get autoSelectActiveOption(){return this._autoSelectActiveOption}set autoSelectActiveOption(ie){this._autoSelectActiveOption=(0,c.Ig)(ie)}set classList(ie){this._classList=ie&&ie.length?(0,c.du)(ie).reduce((pe,Te)=>(pe[Te]=!0,pe),{}):{},this._setVisibilityClasses(this._classList),this._setThemeClasses(this._classList),this._elementRef.nativeElement.className=""}constructor(ie,pe,Te,ct){super(),this._changeDetectorRef=ie,this._elementRef=pe,this._defaults=Te,this._activeOptionChanges=d.w0.EMPTY,this.showPanel=!1,this._isOpen=!1,this.displayWith=null,this.optionSelected=new n.EventEmitter,this.opened=new n.EventEmitter,this.closed=new n.EventEmitter,this.optionActivated=new n.EventEmitter,this._classList={},this.id="mat-autocomplete-"+se++,this.inertGroups=ct?.SAFARI||!1,this._autoActiveFirstOption=!!Te.autoActiveFirstOption,this._autoSelectActiveOption=!!Te.autoSelectActiveOption}ngAfterContentInit(){this._keyManager=new a.s1(this.options).withWrap().skipPredicate(this._skipPredicate),this._activeOptionChanges=this._keyManager.change.subscribe(ie=>{this.isOpen&&this.optionActivated.emit({source:this,option:this.options.toArray()[ie]||null})}),this._setVisibility()}ngOnDestroy(){this._keyManager?.destroy(),this._activeOptionChanges.unsubscribe()}_setScrollTop(ie){this.panel&&(this.panel.nativeElement.scrollTop=ie)}_getScrollTop(){return this.panel?this.panel.nativeElement.scrollTop:0}_setVisibility(){this.showPanel=!!this.options.length,this._setVisibilityClasses(this._classList),this._changeDetectorRef.markForCheck()}_emitSelectEvent(ie){const pe=new ne(this,ie);this.optionSelected.emit(pe)}_getPanelAriaLabelledby(ie){return this.ariaLabel?null:this.ariaLabelledby?(ie?ie+" ":"")+this.ariaLabelledby:ie}_setVisibilityClasses(ie){ie[this._visibleClass]=this.showPanel,ie[this._hiddenClass]=!this.showPanel}_setThemeClasses(ie){ie["mat-primary"]="primary"===this._color,ie["mat-warn"]="warn"===this._color,ie["mat-accent"]="accent"===this._color}_skipPredicate(ie){return ie.disabled}}return ee.\u0275fac=function(ie){return new(ie||ee)(n.\u0275\u0275directiveInject(n.ChangeDetectorRef),n.\u0275\u0275directiveInject(n.ElementRef),n.\u0275\u0275directiveInject($),n.\u0275\u0275directiveInject(s.t4))},ee.\u0275dir=n.\u0275\u0275defineDirective({type:ee,viewQuery:function(ie,pe){if(1&ie&&(n.\u0275\u0275viewQuery(n.TemplateRef,7),n.\u0275\u0275viewQuery(S,5)),2&ie){let Te;n.\u0275\u0275queryRefresh(Te=n.\u0275\u0275loadQuery())&&(pe.template=Te.first),n.\u0275\u0275queryRefresh(Te=n.\u0275\u0275loadQuery())&&(pe.panel=Te.first)}},inputs:{ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],displayWith:"displayWith",autoActiveFirstOption:"autoActiveFirstOption",autoSelectActiveOption:"autoSelectActiveOption",panelWidth:"panelWidth",classList:["class","classList"]},outputs:{optionSelected:"optionSelected",opened:"opened",closed:"closed",optionActivated:"optionActivated"},features:[n.\u0275\u0275InheritDefinitionFeature]}),ee})(),Me=(()=>{class ee{constructor(ie){this.elementRef=ie}}return ee.\u0275fac=function(ie){return new(ie||ee)(n.\u0275\u0275directiveInject(n.ElementRef))},ee.\u0275dir=n.\u0275\u0275defineDirective({type:ee}),ee})();function Be(){return Error("Attempting to open an undefined instance of `mat-autocomplete`. Make sure that the id passed to the `matAutocomplete` is correct and that you're attempting to open it after the ngAfterContentInit hook.")}const $e=new n.InjectionToken("mat-autocomplete-scroll-strategy");function st(ee){return()=>ee.scrollStrategies.reposition()}const Mt={provide:$e,deps:[v.aV],useFactory:st};let tt=(()=>{class ee{get autocompleteDisabled(){return this._autocompleteDisabled}set autocompleteDisabled(ie){this._autocompleteDisabled=(0,c.Ig)(ie)}constructor(ie,pe,Te,ct,Lt,Dt,Kt,ze,yt,Bt,$t){this._element=ie,this._overlay=pe,this._viewContainerRef=Te,this._zone=ct,this._changeDetectorRef=Lt,this._dir=Kt,this._formField=ze,this._document=yt,this._viewportRuler=Bt,this._defaults=$t,this._componentDestroyed=!1,this._autocompleteDisabled=!1,this._manuallyFloatingLabel=!1,this._viewportSubscription=d.w0.EMPTY,this._canOpenOnNextFocus=!0,this._closeKeyEventStream=new r.x,this._windowBlurHandler=()=>{this._canOpenOnNextFocus=this._document.activeElement!==this._element.nativeElement||this.panelOpen},this._onChange=()=>{},this._onTouched=()=>{},this.position="auto",this.autocompleteAttribute="off",this._overlayAttached=!1,this.optionSelections=(0,u.P)(()=>{const Yt=this.autocomplete?this.autocomplete.options:null;return Yt?Yt.changes.pipe((0,A.O)(Yt),(0,T.w)(()=>(0,h.T)(...Yt.map(Ue=>Ue.onSelectionChange)))):this._zone.onStable.pipe((0,O.q)(1),(0,T.w)(()=>this.optionSelections))}),this._handlePanelKeydown=Yt=>{(Yt.keyCode===M.hY&&!(0,M.Vb)(Yt)||Yt.keyCode===M.LH&&(0,M.Vb)(Yt,"altKey"))&&(this._pendingAutoselectedOption&&(this._updateNativeInputValue(this._valueBeforeAutoSelection??""),this._pendingAutoselectedOption=null),this._closeKeyEventStream.next(),this._resetActiveItem(),Yt.stopPropagation(),Yt.preventDefault())},this._trackedModal=null,this._scrollStrategy=Dt}ngAfterViewInit(){const ie=this._getWindow();typeof ie<"u"&&this._zone.runOutsideAngular(()=>ie.addEventListener("blur",this._windowBlurHandler))}ngOnChanges(ie){ie.position&&this._positionStrategy&&(this._setStrategyPositions(this._positionStrategy),this.panelOpen&&this._overlayRef.updatePosition())}ngOnDestroy(){const ie=this._getWindow();typeof ie<"u"&&ie.removeEventListener("blur",this._windowBlurHandler),this._viewportSubscription.unsubscribe(),this._componentDestroyed=!0,this._destroyPanel(),this._closeKeyEventStream.complete(),this._clearFromModal()}get panelOpen(){return this._overlayAttached&&this.autocomplete.showPanel}openPanel(){this._attachOverlay(),this._floatLabel()}closePanel(){this._resetLabel(),this._overlayAttached&&(this.panelOpen&&this._zone.run(()=>{this.autocomplete.closed.emit()}),this.autocomplete._isOpen=this._overlayAttached=!1,this._pendingAutoselectedOption=null,this._overlayRef&&this._overlayRef.hasAttached()&&(this._overlayRef.detach(),this._closingActionsSubscription.unsubscribe()),this._updatePanelState(),this._componentDestroyed||this._changeDetectorRef.detectChanges())}updatePosition(){this._overlayAttached&&this._overlayRef.updatePosition()}get panelClosingActions(){return(0,h.T)(this.optionSelections,this.autocomplete._keyManager.tabOut.pipe((0,E.h)(()=>this._overlayAttached)),this._closeKeyEventStream,this._getOutsideClickStream(),this._overlayRef?this._overlayRef.detachments().pipe((0,E.h)(()=>this._overlayAttached)):(0,m.of)()).pipe((0,D.U)(ie=>ie instanceof p.MatOptionSelectionChange?ie:null))}get activeOption(){return this.autocomplete&&this.autocomplete._keyManager?this.autocomplete._keyManager.activeItem:null}_getOutsideClickStream(){return(0,h.T)((0,_.R)(this._document,"click"),(0,_.R)(this._document,"auxclick"),(0,_.R)(this._document,"touchend")).pipe((0,E.h)(ie=>{const pe=(0,s.sA)(ie),Te=this._formField?this._formField._elementRef.nativeElement:null,ct=this.connectedTo?this.connectedTo.elementRef.nativeElement:null;return this._overlayAttached&&pe!==this._element.nativeElement&&this._document.activeElement!==this._element.nativeElement&&(!Te||!Te.contains(pe))&&(!ct||!ct.contains(pe))&&!!this._overlayRef&&!this._overlayRef.overlayElement.contains(pe)}))}writeValue(ie){Promise.resolve(null).then(()=>this._assignOptionValue(ie))}registerOnChange(ie){this._onChange=ie}registerOnTouched(ie){this._onTouched=ie}setDisabledState(ie){this._element.nativeElement.disabled=ie}_handleKeydown(ie){const pe=ie.keyCode,Te=(0,M.Vb)(ie);if(pe===M.hY&&!Te&&ie.preventDefault(),this.activeOption&&pe===M.K5&&this.panelOpen&&!Te)this.activeOption._selectViaInteraction(),this._resetActiveItem(),ie.preventDefault();else if(this.autocomplete){const ct=this.autocomplete._keyManager.activeItem,Lt=pe===M.LH||pe===M.JH;pe===M.Mf||Lt&&!Te&&this.panelOpen?this.autocomplete._keyManager.onKeydown(ie):Lt&&this._canOpen()&&this.openPanel(),(Lt||this.autocomplete._keyManager.activeItem!==ct)&&(this._scrollToOption(this.autocomplete._keyManager.activeItemIndex||0),this.autocomplete.autoSelectActiveOption&&this.activeOption&&(this._pendingAutoselectedOption||(this._valueBeforeAutoSelection=this._element.nativeElement.value),this._pendingAutoselectedOption=this.activeOption,this._assignOptionValue(this.activeOption.value)))}}_handleInput(ie){let pe=ie.target,Te=pe.value;"number"===pe.type&&(Te=""==Te?null:parseFloat(Te)),this._previousValue!==Te&&(this._previousValue=Te,this._pendingAutoselectedOption=null,this._onChange(Te),Te||this._clearPreviousSelectedOption(null,!1),this._canOpen()&&this._document.activeElement===ie.target&&this.openPanel())}_handleFocus(){this._canOpenOnNextFocus?this._canOpen()&&(this._previousValue=this._element.nativeElement.value,this._attachOverlay(),this._floatLabel(!0)):this._canOpenOnNextFocus=!0}_handleClick(){this._canOpen()&&!this.panelOpen&&this.openPanel()}_floatLabel(ie=!1){this._formField&&"auto"===this._formField.floatLabel&&(ie?this._formField._animateAndLockLabel():this._formField.floatLabel="always",this._manuallyFloatingLabel=!0)}_resetLabel(){this._manuallyFloatingLabel&&(this._formField&&(this._formField.floatLabel="auto"),this._manuallyFloatingLabel=!1)}_subscribeToClosingActions(){const ie=this._zone.onStable.pipe((0,O.q)(1)),pe=this.autocomplete.options.changes.pipe((0,R.b)(()=>this._positionStrategy.reapplyLastPosition()),(0,j.g)(0));return(0,h.T)(ie,pe).pipe((0,T.w)(()=>(this._zone.run(()=>{const Te=this.panelOpen;this._resetActiveItem(),this._updatePanelState(),this._changeDetectorRef.detectChanges(),this.panelOpen&&this._overlayRef.updatePosition(),Te!==this.panelOpen&&(this.panelOpen?this.autocomplete.opened.emit():this.autocomplete.closed.emit())}),this.panelClosingActions)),(0,O.q)(1)).subscribe(Te=>this._setValueAndClose(Te))}_destroyPanel(){this._overlayRef&&(this.closePanel(),this._overlayRef.dispose(),this._overlayRef=null)}_assignOptionValue(ie){const pe=this.autocomplete&&this.autocomplete.displayWith?this.autocomplete.displayWith(ie):ie;this._updateNativeInputValue(pe??"")}_updateNativeInputValue(ie){this._formField?this._formField._control.value=ie:this._element.nativeElement.value=ie,this._previousValue=ie}_setValueAndClose(ie){const pe=ie?ie.source:this._pendingAutoselectedOption;pe&&(this._clearPreviousSelectedOption(pe),this._assignOptionValue(pe.value),this._onChange(pe.value),this.autocomplete._emitSelectEvent(pe),this._element.nativeElement.focus()),this.closePanel()}_clearPreviousSelectedOption(ie,pe){this.autocomplete&&this.autocomplete.options&&this.autocomplete.options.forEach(Te=>{Te!==ie&&Te.selected&&Te.deselect(pe)})}_attachOverlay(){let ie=this._overlayRef;ie?(this._positionStrategy.setOrigin(this._getConnectedElement()),ie.updateSize({width:this._getPanelWidth()})):(this._portal=new x.UE(this.autocomplete.template,this._viewContainerRef,{id:this._formField?.getLabelId()}),ie=this._overlay.create(this._getOverlayConfig()),this._overlayRef=ie,this._viewportSubscription=this._viewportRuler.change().subscribe(()=>{this.panelOpen&&ie&&ie.updateSize({width:this._getPanelWidth()})})),ie&&!ie.hasAttached()&&(ie.attach(this._portal),this._closingActionsSubscription=this._subscribeToClosingActions());const pe=this.panelOpen;this.autocomplete._isOpen=this._overlayAttached=!0,this.autocomplete._setColor(this._formField?.color),this._updatePanelState(),this._applyModalPanelOwnership(),this.panelOpen&&pe!==this.panelOpen&&this.autocomplete.opened.emit()}_updatePanelState(){if(this.autocomplete._setVisibility(),this.panelOpen){const ie=this._overlayRef;this._keydownSubscription||(this._keydownSubscription=ie.keydownEvents().subscribe(this._handlePanelKeydown)),this._outsideClickSubscription||(this._outsideClickSubscription=ie.outsidePointerEvents().subscribe())}else this._keydownSubscription?.unsubscribe(),this._outsideClickSubscription?.unsubscribe(),this._keydownSubscription=this._outsideClickSubscription=null}_getOverlayConfig(){return new v.X_({positionStrategy:this._getOverlayPosition(),scrollStrategy:this._scrollStrategy(),width:this._getPanelWidth(),direction:this._dir??void 0,panelClass:this._defaults?.overlayPanelClass})}_getOverlayPosition(){const ie=this._overlay.position().flexibleConnectedTo(this._getConnectedElement()).withFlexibleDimensions(!1).withPush(!1);return this._setStrategyPositions(ie),this._positionStrategy=ie,ie}_setStrategyPositions(ie){const pe=[{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"},{originX:"end",originY:"bottom",overlayX:"end",overlayY:"top"}],Te=this._aboveClass,ct=[{originX:"start",originY:"top",overlayX:"start",overlayY:"bottom",panelClass:Te},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom",panelClass:Te}];let Lt;Lt="above"===this.position?ct:"below"===this.position?pe:[...pe,...ct],ie.withPositions(Lt)}_getConnectedElement(){return this.connectedTo?this.connectedTo.elementRef:this._formField?this._formField.getConnectedOverlayOrigin():this._element}_getPanelWidth(){return this.autocomplete.panelWidth||this._getHostWidth()}_getHostWidth(){return this._getConnectedElement().nativeElement.getBoundingClientRect().width}_resetActiveItem(){const ie=this.autocomplete;if(ie.autoActiveFirstOption){let pe=-1;for(let Te=0;Te .cdk-overlay-container [aria-modal="true"]');if(!ie)return;const pe=this.autocomplete.id;this._trackedModal&&(0,a.iD)(this._trackedModal,"aria-owns",pe),(0,a.Zf)(ie,"aria-owns",pe),this._trackedModal=ie}_clearFromModal(){this._trackedModal&&((0,a.iD)(this._trackedModal,"aria-owns",this.autocomplete.id),this._trackedModal=null)}}return ee.\u0275fac=function(ie){return new(ie||ee)(n.\u0275\u0275directiveInject(n.ElementRef),n.\u0275\u0275directiveInject(v.aV),n.\u0275\u0275directiveInject(n.ViewContainerRef),n.\u0275\u0275directiveInject(n.NgZone),n.\u0275\u0275directiveInject(n.ChangeDetectorRef),n.\u0275\u0275directiveInject($e),n.\u0275\u0275directiveInject(N.Is,8),n.\u0275\u0275directiveInject(L.G_,9),n.\u0275\u0275directiveInject(b.DOCUMENT,8),n.\u0275\u0275directiveInject(o.rL),n.\u0275\u0275directiveInject($,8))},ee.\u0275dir=n.\u0275\u0275defineDirective({type:ee,inputs:{autocomplete:["matAutocomplete","autocomplete"],position:["matAutocompletePosition","position"],connectedTo:["matAutocompleteConnectedTo","connectedTo"],autocompleteAttribute:["autocomplete","autocompleteAttribute"],autocompleteDisabled:["matAutocompleteDisabled","autocompleteDisabled"]},features:[n.\u0275\u0275NgOnChangesFeature]}),ee})();function xt(ee,ae){if(1&ee&&(n.\u0275\u0275elementStart(0,"div",0,1),n.\u0275\u0275projection(2),n.\u0275\u0275elementEnd()),2&ee){const ie=ae.id,pe=n.\u0275\u0275nextContext();n.\u0275\u0275property("id",pe.id)("ngClass",pe._classList),n.\u0275\u0275attribute("aria-label",pe.ariaLabel||null)("aria-labelledby",pe._getPanelAriaLabelledby(ie))}}const nt=["*"];let ot=(()=>{class ee extends Q{constructor(){super(...arguments),this._visibleClass="mat-autocomplete-visible",this._hiddenClass="mat-autocomplete-hidden"}}return ee.\u0275fac=function(){let ae;return function(pe){return(ae||(ae=n.\u0275\u0275getInheritedFactory(ee)))(pe||ee)}}(),ee.\u0275cmp=n.\u0275\u0275defineComponent({type:ee,selectors:[["mat-autocomplete"]],contentQueries:function(ie,pe,Te){if(1&ie&&(n.\u0275\u0275contentQuery(Te,p.MAT_OPTGROUP,5),n.\u0275\u0275contentQuery(Te,C.MatLegacyOption,5)),2&ie){let ct;n.\u0275\u0275queryRefresh(ct=n.\u0275\u0275loadQuery())&&(pe.optionGroups=ct),n.\u0275\u0275queryRefresh(ct=n.\u0275\u0275loadQuery())&&(pe.options=ct)}},hostAttrs:["ngSkipHydration","",1,"mat-autocomplete"],inputs:{disableRipple:"disableRipple"},exportAs:["matAutocomplete"],features:[n.\u0275\u0275ProvidersFeature([{provide:p.MAT_OPTION_PARENT_COMPONENT,useExisting:ee}]),n.\u0275\u0275InheritDefinitionFeature],ngContentSelectors:nt,decls:1,vars:0,consts:[["role","listbox",1,"mat-autocomplete-panel",3,"id","ngClass"],["panel",""]],template:function(ie,pe){1&ie&&(n.\u0275\u0275projectionDef(),n.\u0275\u0275template(0,xt,3,4,"ng-template"))},dependencies:[b.NgClass],styles:[".mat-autocomplete-panel{min-width:112px;max-width:280px;overflow:auto;-webkit-overflow-scrolling:touch;visibility:hidden;max-width:none;max-height:256px;position:relative;width:100%;border-bottom-left-radius:4px;border-bottom-right-radius:4px}.mat-autocomplete-panel.mat-autocomplete-visible{visibility:visible}.mat-autocomplete-panel.mat-autocomplete-hidden{visibility:hidden}.mat-autocomplete-panel-above .mat-autocomplete-panel{border-radius:0;border-top-left-radius:4px;border-top-right-radius:4px}.mat-autocomplete-panel .mat-divider-horizontal{margin-top:-1px}.cdk-high-contrast-active .mat-autocomplete-panel{outline:solid 1px}mat-autocomplete{display:none}"],encapsulation:2,changeDetection:0}),ee})();const vt={provide:w.NG_VALUE_ACCESSOR,useExisting:(0,n.forwardRef)(()=>rt),multi:!0};let rt=(()=>{class ee extends tt{constructor(){super(...arguments),this._aboveClass="mat-autocomplete-panel-above"}}return ee.\u0275fac=function(){let ae;return function(pe){return(ae||(ae=n.\u0275\u0275getInheritedFactory(ee)))(pe||ee)}}(),ee.\u0275dir=n.\u0275\u0275defineDirective({type:ee,selectors:[["input","matAutocomplete",""],["textarea","matAutocomplete",""]],hostAttrs:[1,"mat-autocomplete-trigger"],hostVars:7,hostBindings:function(ie,pe){1&ie&&n.\u0275\u0275listener("focusin",function(){return pe._handleFocus()})("blur",function(){return pe._onTouched()})("input",function(ct){return pe._handleInput(ct)})("keydown",function(ct){return pe._handleKeydown(ct)})("click",function(){return pe._handleClick()}),2&ie&&n.\u0275\u0275attribute("autocomplete",pe.autocompleteAttribute)("role",pe.autocompleteDisabled?null:"combobox")("aria-autocomplete",pe.autocompleteDisabled?null:"list")("aria-activedescendant",pe.panelOpen&&pe.activeOption?pe.activeOption.id:null)("aria-expanded",pe.autocompleteDisabled?null:pe.panelOpen.toString())("aria-owns",pe.autocompleteDisabled||!pe.panelOpen||null==pe.autocomplete?null:pe.autocomplete.id)("aria-haspopup",pe.autocompleteDisabled?null:"listbox")},exportAs:["matAutocompleteTrigger"],features:[n.\u0275\u0275ProvidersFeature([vt]),n.\u0275\u0275InheritDefinitionFeature]}),ee})(),J=(()=>{class ee extends Me{}return ee.\u0275fac=function(){let ae;return function(pe){return(ae||(ae=n.\u0275\u0275getInheritedFactory(ee)))(pe||ee)}}(),ee.\u0275dir=n.\u0275\u0275defineDirective({type:ee,selectors:[["","matAutocompleteOrigin",""]],exportAs:["matAutocompleteOrigin"],features:[n.\u0275\u0275InheritDefinitionFeature]}),ee})(),Ce=(()=>{class ee{}return ee.\u0275fac=function(ie){return new(ie||ee)},ee.\u0275mod=n.\u0275\u0275defineNgModule({type:ee}),ee.\u0275inj=n.\u0275\u0275defineInjector({providers:[Mt],imports:[v.U8,C.MatLegacyOptionModule,p.MatCommonModule,b.CommonModule,o.ZD,C.MatLegacyOptionModule,p.MatCommonModule]}),ee})()},4505:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{MatLegacyAnchor:()=>d,MatLegacyButton:()=>l,MatLegacyButtonModule:()=>r});var n=g(5879),p=g(3680),C=g(4300);const b=["mat-button",""],o=["*"],c=["mat-button","mat-flat-button","mat-icon-button","mat-raised-button","mat-stroked-button","mat-mini-fab","mat-fab"],s=(0,p.mixinColor)((0,p.mixinDisabled)((0,p.mixinDisableRipple)(class{constructor(u){this._elementRef=u}})));let l=(()=>{class u extends s{constructor(m,_,M){super(m),this._focusMonitor=_,this._animationMode=M,this.isRoundButton=this._hasHostAttributes("mat-fab","mat-mini-fab"),this.isIconButton=this._hasHostAttributes("mat-icon-button");for(const x of c)this._hasHostAttributes(x)&&this._getHostElement().classList.add(x);m.nativeElement.classList.add("mat-button-base"),this.isRoundButton&&(this.color="accent")}ngAfterViewInit(){this._focusMonitor.monitor(this._elementRef,!0)}ngOnDestroy(){this._focusMonitor.stopMonitoring(this._elementRef)}focus(m,_){m?this._focusMonitor.focusVia(this._getHostElement(),m,_):this._getHostElement().focus(_)}_getHostElement(){return this._elementRef.nativeElement}_isRippleDisabled(){return this.disableRipple||this.disabled}_hasHostAttributes(...m){return m.some(_=>this._getHostElement().hasAttribute(_))}}return u.\u0275fac=function(m){return new(m||u)(n.\u0275\u0275directiveInject(n.ElementRef),n.\u0275\u0275directiveInject(C.tE),n.\u0275\u0275directiveInject(n.ANIMATION_MODULE_TYPE,8))},u.\u0275cmp=n.\u0275\u0275defineComponent({type:u,selectors:[["button","mat-button",""],["button","mat-raised-button",""],["button","mat-icon-button",""],["button","mat-fab",""],["button","mat-mini-fab",""],["button","mat-stroked-button",""],["button","mat-flat-button",""]],viewQuery:function(m,_){if(1&m&&n.\u0275\u0275viewQuery(p.MatRipple,5),2&m){let M;n.\u0275\u0275queryRefresh(M=n.\u0275\u0275loadQuery())&&(_.ripple=M.first)}},hostAttrs:[1,"mat-focus-indicator"],hostVars:5,hostBindings:function(m,_){2&m&&(n.\u0275\u0275attribute("disabled",_.disabled||null),n.\u0275\u0275classProp("_mat-animation-noopable","NoopAnimations"===_._animationMode)("mat-button-disabled",_.disabled))},inputs:{disabled:"disabled",disableRipple:"disableRipple",color:"color"},exportAs:["matButton"],features:[n.\u0275\u0275InheritDefinitionFeature],attrs:b,ngContentSelectors:o,decls:4,vars:5,consts:[[1,"mat-button-wrapper"],["matRipple","",1,"mat-button-ripple",3,"matRippleDisabled","matRippleCentered","matRippleTrigger"],[1,"mat-button-focus-overlay"]],template:function(m,_){1&m&&(n.\u0275\u0275projectionDef(),n.\u0275\u0275elementStart(0,"span",0),n.\u0275\u0275projection(1),n.\u0275\u0275elementEnd(),n.\u0275\u0275element(2,"span",1)(3,"span",2)),2&m&&(n.\u0275\u0275advance(2),n.\u0275\u0275classProp("mat-button-ripple-round",_.isRoundButton||_.isIconButton),n.\u0275\u0275property("matRippleDisabled",_._isRippleDisabled())("matRippleCentered",_.isIconButton)("matRippleTrigger",_._getHostElement()))},dependencies:[p.MatRipple],styles:[".mat-button .mat-button-focus-overlay,.mat-icon-button .mat-button-focus-overlay{opacity:0}.mat-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay,.mat-stroked-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay{opacity:.04}@media(hover: none){.mat-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay,.mat-stroked-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay{opacity:0}}.mat-button,.mat-icon-button,.mat-stroked-button,.mat-flat-button{box-sizing:border-box;position:relative;-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:rgba(0,0,0,0);display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible}.mat-button::-moz-focus-inner,.mat-icon-button::-moz-focus-inner,.mat-stroked-button::-moz-focus-inner,.mat-flat-button::-moz-focus-inner{border:0}.mat-button.mat-button-disabled,.mat-icon-button.mat-button-disabled,.mat-stroked-button.mat-button-disabled,.mat-flat-button.mat-button-disabled{cursor:default}.mat-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-button.cdk-program-focused .mat-button-focus-overlay,.mat-icon-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-icon-button.cdk-program-focused .mat-button-focus-overlay,.mat-stroked-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-stroked-button.cdk-program-focused .mat-button-focus-overlay,.mat-flat-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-flat-button.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-button::-moz-focus-inner,.mat-icon-button::-moz-focus-inner,.mat-stroked-button::-moz-focus-inner,.mat-flat-button::-moz-focus-inner{border:0}.mat-raised-button{box-sizing:border-box;position:relative;-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:rgba(0,0,0,0);display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible;transform:translate3d(0, 0, 0);transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-raised-button::-moz-focus-inner{border:0}.mat-raised-button.mat-button-disabled{cursor:default}.mat-raised-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-raised-button.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-raised-button::-moz-focus-inner{border:0}.mat-raised-button._mat-animation-noopable{transition:none !important;animation:none !important}.mat-stroked-button{border:1px solid currentColor;padding:0 15px;line-height:34px}.mat-stroked-button .mat-button-ripple.mat-ripple,.mat-stroked-button .mat-button-focus-overlay{top:-1px;left:-1px;right:-1px;bottom:-1px}.mat-fab{box-sizing:border-box;position:relative;-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:rgba(0,0,0,0);display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible;transform:translate3d(0, 0, 0);transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);min-width:0;border-radius:50%;width:56px;height:56px;padding:0;flex-shrink:0}.mat-fab::-moz-focus-inner{border:0}.mat-fab.mat-button-disabled{cursor:default}.mat-fab.cdk-keyboard-focused .mat-button-focus-overlay,.mat-fab.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-fab::-moz-focus-inner{border:0}.mat-fab._mat-animation-noopable{transition:none !important;animation:none !important}.mat-fab .mat-button-wrapper{padding:16px 0;display:inline-block;line-height:24px}.mat-mini-fab{box-sizing:border-box;position:relative;-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:rgba(0,0,0,0);display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible;transform:translate3d(0, 0, 0);transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);min-width:0;border-radius:50%;width:40px;height:40px;padding:0;flex-shrink:0}.mat-mini-fab::-moz-focus-inner{border:0}.mat-mini-fab.mat-button-disabled{cursor:default}.mat-mini-fab.cdk-keyboard-focused .mat-button-focus-overlay,.mat-mini-fab.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-mini-fab::-moz-focus-inner{border:0}.mat-mini-fab._mat-animation-noopable{transition:none !important;animation:none !important}.mat-mini-fab .mat-button-wrapper{padding:8px 0;display:inline-block;line-height:24px}.mat-icon-button{padding:0;min-width:0;width:40px;height:40px;flex-shrink:0;line-height:40px;border-radius:50%}.mat-icon-button i,.mat-icon-button .mat-icon{line-height:24px}.mat-button-ripple.mat-ripple,.mat-button-focus-overlay{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none;border-radius:inherit}.mat-button-ripple.mat-ripple:not(:empty){transform:translateZ(0)}.mat-button-focus-overlay{opacity:0;transition:opacity 200ms cubic-bezier(0.35, 0, 0.25, 1),background-color 200ms cubic-bezier(0.35, 0, 0.25, 1)}._mat-animation-noopable .mat-button-focus-overlay{transition:none}.mat-button-ripple-round{border-radius:50%;z-index:1}.mat-button .mat-button-wrapper>*,.mat-flat-button .mat-button-wrapper>*,.mat-stroked-button .mat-button-wrapper>*,.mat-raised-button .mat-button-wrapper>*,.mat-icon-button .mat-button-wrapper>*,.mat-fab .mat-button-wrapper>*,.mat-mini-fab .mat-button-wrapper>*{vertical-align:middle}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mat-icon-button,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-icon-button{display:inline-flex;justify-content:center;align-items:center;font-size:inherit;width:2.5em;height:2.5em}.mat-flat-button::before,.mat-raised-button::before,.mat-fab::before,.mat-mini-fab::before{margin:calc(calc(var(--mat-focus-indicator-border-width, 3px) + 2px) * -1)}.mat-stroked-button::before{margin:calc(calc(var(--mat-focus-indicator-border-width, 3px) + 3px) * -1)}.cdk-high-contrast-active .mat-button,.cdk-high-contrast-active .mat-flat-button,.cdk-high-contrast-active .mat-raised-button,.cdk-high-contrast-active .mat-icon-button,.cdk-high-contrast-active .mat-fab,.cdk-high-contrast-active .mat-mini-fab{outline:solid 1px}.mat-datepicker-toggle .mat-mdc-button-base{width:40px;height:40px;padding:8px 0}.mat-datepicker-actions .mat-button-base+.mat-button-base{margin-left:8px}[dir=rtl] .mat-datepicker-actions .mat-button-base+.mat-button-base{margin-left:0;margin-right:8px}"],encapsulation:2,changeDetection:0}),u})(),d=(()=>{class u extends l{constructor(m,_,M,x){super(_,m,M),this._ngZone=x,this._haltDisabledEvents=w=>{this.disabled&&(w.preventDefault(),w.stopImmediatePropagation())}}ngAfterViewInit(){super.ngAfterViewInit(),this._ngZone?this._ngZone.runOutsideAngular(()=>{this._elementRef.nativeElement.addEventListener("click",this._haltDisabledEvents)}):this._elementRef.nativeElement.addEventListener("click",this._haltDisabledEvents)}ngOnDestroy(){super.ngOnDestroy(),this._elementRef.nativeElement.removeEventListener("click",this._haltDisabledEvents)}}return u.\u0275fac=function(m){return new(m||u)(n.\u0275\u0275directiveInject(C.tE),n.\u0275\u0275directiveInject(n.ElementRef),n.\u0275\u0275directiveInject(n.ANIMATION_MODULE_TYPE,8),n.\u0275\u0275directiveInject(n.NgZone,8))},u.\u0275cmp=n.\u0275\u0275defineComponent({type:u,selectors:[["a","mat-button",""],["a","mat-raised-button",""],["a","mat-icon-button",""],["a","mat-fab",""],["a","mat-mini-fab",""],["a","mat-stroked-button",""],["a","mat-flat-button",""]],hostAttrs:[1,"mat-focus-indicator"],hostVars:7,hostBindings:function(m,_){2&m&&(n.\u0275\u0275attribute("tabindex",_.disabled?-1:_.tabIndex)("disabled",_.disabled||null)("aria-disabled",_.disabled.toString()),n.\u0275\u0275classProp("_mat-animation-noopable","NoopAnimations"===_._animationMode)("mat-button-disabled",_.disabled))},inputs:{disabled:"disabled",disableRipple:"disableRipple",color:"color",tabIndex:"tabIndex"},exportAs:["matButton","matAnchor"],features:[n.\u0275\u0275InheritDefinitionFeature],attrs:b,ngContentSelectors:o,decls:4,vars:5,consts:[[1,"mat-button-wrapper"],["matRipple","",1,"mat-button-ripple",3,"matRippleDisabled","matRippleCentered","matRippleTrigger"],[1,"mat-button-focus-overlay"]],template:function(m,_){1&m&&(n.\u0275\u0275projectionDef(),n.\u0275\u0275elementStart(0,"span",0),n.\u0275\u0275projection(1),n.\u0275\u0275elementEnd(),n.\u0275\u0275element(2,"span",1)(3,"span",2)),2&m&&(n.\u0275\u0275advance(2),n.\u0275\u0275classProp("mat-button-ripple-round",_.isRoundButton||_.isIconButton),n.\u0275\u0275property("matRippleDisabled",_._isRippleDisabled())("matRippleCentered",_.isIconButton)("matRippleTrigger",_._getHostElement()))},dependencies:[p.MatRipple],styles:[".mat-button .mat-button-focus-overlay,.mat-icon-button .mat-button-focus-overlay{opacity:0}.mat-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay,.mat-stroked-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay{opacity:.04}@media(hover: none){.mat-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay,.mat-stroked-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay{opacity:0}}.mat-button,.mat-icon-button,.mat-stroked-button,.mat-flat-button{box-sizing:border-box;position:relative;-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:rgba(0,0,0,0);display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible}.mat-button::-moz-focus-inner,.mat-icon-button::-moz-focus-inner,.mat-stroked-button::-moz-focus-inner,.mat-flat-button::-moz-focus-inner{border:0}.mat-button.mat-button-disabled,.mat-icon-button.mat-button-disabled,.mat-stroked-button.mat-button-disabled,.mat-flat-button.mat-button-disabled{cursor:default}.mat-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-button.cdk-program-focused .mat-button-focus-overlay,.mat-icon-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-icon-button.cdk-program-focused .mat-button-focus-overlay,.mat-stroked-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-stroked-button.cdk-program-focused .mat-button-focus-overlay,.mat-flat-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-flat-button.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-button::-moz-focus-inner,.mat-icon-button::-moz-focus-inner,.mat-stroked-button::-moz-focus-inner,.mat-flat-button::-moz-focus-inner{border:0}.mat-raised-button{box-sizing:border-box;position:relative;-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:rgba(0,0,0,0);display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible;transform:translate3d(0, 0, 0);transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-raised-button::-moz-focus-inner{border:0}.mat-raised-button.mat-button-disabled{cursor:default}.mat-raised-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-raised-button.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-raised-button::-moz-focus-inner{border:0}.mat-raised-button._mat-animation-noopable{transition:none !important;animation:none !important}.mat-stroked-button{border:1px solid currentColor;padding:0 15px;line-height:34px}.mat-stroked-button .mat-button-ripple.mat-ripple,.mat-stroked-button .mat-button-focus-overlay{top:-1px;left:-1px;right:-1px;bottom:-1px}.mat-fab{box-sizing:border-box;position:relative;-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:rgba(0,0,0,0);display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible;transform:translate3d(0, 0, 0);transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);min-width:0;border-radius:50%;width:56px;height:56px;padding:0;flex-shrink:0}.mat-fab::-moz-focus-inner{border:0}.mat-fab.mat-button-disabled{cursor:default}.mat-fab.cdk-keyboard-focused .mat-button-focus-overlay,.mat-fab.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-fab::-moz-focus-inner{border:0}.mat-fab._mat-animation-noopable{transition:none !important;animation:none !important}.mat-fab .mat-button-wrapper{padding:16px 0;display:inline-block;line-height:24px}.mat-mini-fab{box-sizing:border-box;position:relative;-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:rgba(0,0,0,0);display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible;transform:translate3d(0, 0, 0);transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);min-width:0;border-radius:50%;width:40px;height:40px;padding:0;flex-shrink:0}.mat-mini-fab::-moz-focus-inner{border:0}.mat-mini-fab.mat-button-disabled{cursor:default}.mat-mini-fab.cdk-keyboard-focused .mat-button-focus-overlay,.mat-mini-fab.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-mini-fab::-moz-focus-inner{border:0}.mat-mini-fab._mat-animation-noopable{transition:none !important;animation:none !important}.mat-mini-fab .mat-button-wrapper{padding:8px 0;display:inline-block;line-height:24px}.mat-icon-button{padding:0;min-width:0;width:40px;height:40px;flex-shrink:0;line-height:40px;border-radius:50%}.mat-icon-button i,.mat-icon-button .mat-icon{line-height:24px}.mat-button-ripple.mat-ripple,.mat-button-focus-overlay{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none;border-radius:inherit}.mat-button-ripple.mat-ripple:not(:empty){transform:translateZ(0)}.mat-button-focus-overlay{opacity:0;transition:opacity 200ms cubic-bezier(0.35, 0, 0.25, 1),background-color 200ms cubic-bezier(0.35, 0, 0.25, 1)}._mat-animation-noopable .mat-button-focus-overlay{transition:none}.mat-button-ripple-round{border-radius:50%;z-index:1}.mat-button .mat-button-wrapper>*,.mat-flat-button .mat-button-wrapper>*,.mat-stroked-button .mat-button-wrapper>*,.mat-raised-button .mat-button-wrapper>*,.mat-icon-button .mat-button-wrapper>*,.mat-fab .mat-button-wrapper>*,.mat-mini-fab .mat-button-wrapper>*{vertical-align:middle}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mat-icon-button,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-icon-button{display:inline-flex;justify-content:center;align-items:center;font-size:inherit;width:2.5em;height:2.5em}.mat-flat-button::before,.mat-raised-button::before,.mat-fab::before,.mat-mini-fab::before{margin:calc(calc(var(--mat-focus-indicator-border-width, 3px) + 2px) * -1)}.mat-stroked-button::before{margin:calc(calc(var(--mat-focus-indicator-border-width, 3px) + 3px) * -1)}.cdk-high-contrast-active .mat-button,.cdk-high-contrast-active .mat-flat-button,.cdk-high-contrast-active .mat-raised-button,.cdk-high-contrast-active .mat-icon-button,.cdk-high-contrast-active .mat-fab,.cdk-high-contrast-active .mat-mini-fab{outline:solid 1px}.mat-datepicker-toggle .mat-mdc-button-base{width:40px;height:40px;padding:8px 0}.mat-datepicker-actions .mat-button-base+.mat-button-base{margin-left:8px}[dir=rtl] .mat-datepicker-actions .mat-button-base+.mat-button-base{margin-left:0;margin-right:8px}"],encapsulation:2,changeDetection:0}),u})(),r=(()=>{class u{}return u.\u0275fac=function(m){return new(m||u)},u.\u0275mod=n.\u0275\u0275defineNgModule({type:u}),u.\u0275inj=n.\u0275\u0275defineInjector({imports:[p.MatRippleModule,p.MatCommonModule,p.MatCommonModule]}),u})()},9025:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{MatLegacyCard:()=>L,MatLegacyCardActions:()=>r,MatLegacyCardAvatar:()=>w,MatLegacyCardContent:()=>s,MatLegacyCardFooter:()=>u,MatLegacyCardHeader:()=>A,MatLegacyCardImage:()=>h,MatLegacyCardLgImage:()=>M,MatLegacyCardMdImage:()=>_,MatLegacyCardModule:()=>O,MatLegacyCardSmImage:()=>m,MatLegacyCardSubtitle:()=>d,MatLegacyCardTitle:()=>l,MatLegacyCardTitleGroup:()=>T,MatLegacyCardXlImage:()=>x});var n=g(5879),p=g(3680);const C=["*",[["mat-card-footer"]]],b=["*","mat-card-footer"],o=[[["","mat-card-avatar",""],["","matCardAvatar",""]],[["mat-card-title"],["mat-card-subtitle"],["","mat-card-title",""],["","mat-card-subtitle",""],["","matCardTitle",""],["","matCardSubtitle",""]],"*"],v=["[mat-card-avatar], [matCardAvatar]","mat-card-title, mat-card-subtitle,\n [mat-card-title], [mat-card-subtitle],\n [matCardTitle], [matCardSubtitle]","*"],a=[[["mat-card-title"],["mat-card-subtitle"],["","mat-card-title",""],["","mat-card-subtitle",""],["","matCardTitle",""],["","matCardSubtitle",""]],[["img"]],"*"],c=["mat-card-title, mat-card-subtitle,\n [mat-card-title], [mat-card-subtitle],\n [matCardTitle], [matCardSubtitle]","img","*"];let s=(()=>{class E{}return E.\u0275fac=function(R){return new(R||E)},E.\u0275dir=n.\u0275\u0275defineDirective({type:E,selectors:[["mat-card-content"],["","mat-card-content",""],["","matCardContent",""]],hostAttrs:[1,"mat-card-content"]}),E})(),l=(()=>{class E{}return E.\u0275fac=function(R){return new(R||E)},E.\u0275dir=n.\u0275\u0275defineDirective({type:E,selectors:[["mat-card-title"],["","mat-card-title",""],["","matCardTitle",""]],hostAttrs:[1,"mat-card-title"]}),E})(),d=(()=>{class E{}return E.\u0275fac=function(R){return new(R||E)},E.\u0275dir=n.\u0275\u0275defineDirective({type:E,selectors:[["mat-card-subtitle"],["","mat-card-subtitle",""],["","matCardSubtitle",""]],hostAttrs:[1,"mat-card-subtitle"]}),E})(),r=(()=>{class E{constructor(){this.align="start"}}return E.\u0275fac=function(R){return new(R||E)},E.\u0275dir=n.\u0275\u0275defineDirective({type:E,selectors:[["mat-card-actions"]],hostAttrs:[1,"mat-card-actions"],hostVars:2,hostBindings:function(R,j){2&R&&n.\u0275\u0275classProp("mat-card-actions-align-end","end"===j.align)},inputs:{align:"align"},exportAs:["matCardActions"]}),E})(),u=(()=>{class E{}return E.\u0275fac=function(R){return new(R||E)},E.\u0275dir=n.\u0275\u0275defineDirective({type:E,selectors:[["mat-card-footer"]],hostAttrs:[1,"mat-card-footer"]}),E})(),h=(()=>{class E{}return E.\u0275fac=function(R){return new(R||E)},E.\u0275dir=n.\u0275\u0275defineDirective({type:E,selectors:[["","mat-card-image",""],["","matCardImage",""]],hostAttrs:[1,"mat-card-image"]}),E})(),m=(()=>{class E{}return E.\u0275fac=function(R){return new(R||E)},E.\u0275dir=n.\u0275\u0275defineDirective({type:E,selectors:[["","mat-card-sm-image",""],["","matCardImageSmall",""]],hostAttrs:[1,"mat-card-sm-image"]}),E})(),_=(()=>{class E{}return E.\u0275fac=function(R){return new(R||E)},E.\u0275dir=n.\u0275\u0275defineDirective({type:E,selectors:[["","mat-card-md-image",""],["","matCardImageMedium",""]],hostAttrs:[1,"mat-card-md-image"]}),E})(),M=(()=>{class E{}return E.\u0275fac=function(R){return new(R||E)},E.\u0275dir=n.\u0275\u0275defineDirective({type:E,selectors:[["","mat-card-lg-image",""],["","matCardImageLarge",""]],hostAttrs:[1,"mat-card-lg-image"]}),E})(),x=(()=>{class E{}return E.\u0275fac=function(R){return new(R||E)},E.\u0275dir=n.\u0275\u0275defineDirective({type:E,selectors:[["","mat-card-xl-image",""],["","matCardImageXLarge",""]],hostAttrs:[1,"mat-card-xl-image"]}),E})(),w=(()=>{class E{}return E.\u0275fac=function(R){return new(R||E)},E.\u0275dir=n.\u0275\u0275defineDirective({type:E,selectors:[["","mat-card-avatar",""],["","matCardAvatar",""]],hostAttrs:[1,"mat-card-avatar"]}),E})(),L=(()=>{class E{constructor(R){this._animationMode=R}}return E.\u0275fac=function(R){return new(R||E)(n.\u0275\u0275directiveInject(n.ANIMATION_MODULE_TYPE,8))},E.\u0275cmp=n.\u0275\u0275defineComponent({type:E,selectors:[["mat-card"]],hostAttrs:[1,"mat-card","mat-focus-indicator"],hostVars:2,hostBindings:function(R,j){2&R&&n.\u0275\u0275classProp("_mat-animation-noopable","NoopAnimations"===j._animationMode)},exportAs:["matCard"],ngContentSelectors:b,decls:2,vars:0,template:function(R,j){1&R&&(n.\u0275\u0275projectionDef(C),n.\u0275\u0275projection(0),n.\u0275\u0275projection(1,1))},styles:[".mat-card{transition:box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);display:block;position:relative;padding:16px;border-radius:4px}.mat-card._mat-animation-noopable{transition:none !important;animation:none !important}.mat-card>.mat-divider-horizontal{position:absolute;left:0;width:100%}[dir=rtl] .mat-card>.mat-divider-horizontal{left:auto;right:0}.mat-card>.mat-divider-horizontal.mat-divider-inset{position:static;margin:0}[dir=rtl] .mat-card>.mat-divider-horizontal.mat-divider-inset{margin-right:0}.cdk-high-contrast-active .mat-card{outline:solid 1px}.mat-card-actions,.mat-card-subtitle,.mat-card-content{display:block;margin-bottom:16px}.mat-card-title{display:block;margin-bottom:8px}.mat-card-actions{margin-left:-8px;margin-right:-8px;padding:8px 0}.mat-card-actions-align-end{display:flex;justify-content:flex-end}.mat-card-image{width:calc(100% + 32px);margin:0 -16px 16px -16px;display:block;overflow:hidden}.mat-card-image img{width:100%}.mat-card-footer{display:block;margin:0 -16px -16px -16px}.mat-card-actions .mat-button,.mat-card-actions .mat-raised-button,.mat-card-actions .mat-stroked-button{margin:0 8px}.mat-card-header{display:flex;flex-direction:row}.mat-card-header .mat-card-title{margin-bottom:12px}.mat-card-header-text{margin:0 16px}.mat-card-avatar{height:40px;width:40px;border-radius:50%;flex-shrink:0;object-fit:cover}.mat-card-title-group{display:flex;justify-content:space-between}.mat-card-sm-image{width:80px;height:80px}.mat-card-md-image{width:112px;height:112px}.mat-card-lg-image{width:152px;height:152px}.mat-card-xl-image{width:240px;height:240px;margin:-8px}.mat-card-title-group>.mat-card-xl-image{margin:-8px 0 8px}@media(max-width: 599px){.mat-card-title-group{margin:0}.mat-card-xl-image{margin-left:0;margin-right:0}}.mat-card>:first-child,.mat-card-content>:first-child{margin-top:0}.mat-card>:last-child:not(.mat-card-footer),.mat-card-content>:last-child:not(.mat-card-footer){margin-bottom:0}.mat-card-image:first-child{margin-top:-16px;border-top-left-radius:inherit;border-top-right-radius:inherit}.mat-card>.mat-card-actions:last-child{margin-bottom:-8px;padding-bottom:0}.mat-card-actions:not(.mat-card-actions-align-end) .mat-button:first-child,.mat-card-actions:not(.mat-card-actions-align-end) .mat-raised-button:first-child,.mat-card-actions:not(.mat-card-actions-align-end) .mat-stroked-button:first-child{margin-left:0;margin-right:0}.mat-card-actions-align-end .mat-button:last-child,.mat-card-actions-align-end .mat-raised-button:last-child,.mat-card-actions-align-end .mat-stroked-button:last-child{margin-left:0;margin-right:0}.mat-card-title:not(:first-child),.mat-card-subtitle:not(:first-child){margin-top:-4px}.mat-card-header .mat-card-subtitle:not(:first-child){margin-top:-8px}.mat-card>.mat-card-xl-image:first-child{margin-top:-8px}.mat-card>.mat-card-xl-image:last-child{margin-bottom:-8px}"],encapsulation:2,changeDetection:0}),E})(),A=(()=>{class E{}return E.\u0275fac=function(R){return new(R||E)},E.\u0275cmp=n.\u0275\u0275defineComponent({type:E,selectors:[["mat-card-header"]],hostAttrs:[1,"mat-card-header"],ngContentSelectors:v,decls:4,vars:0,consts:[[1,"mat-card-header-text"]],template:function(R,j){1&R&&(n.\u0275\u0275projectionDef(o),n.\u0275\u0275projection(0),n.\u0275\u0275elementStart(1,"div",0),n.\u0275\u0275projection(2,1),n.\u0275\u0275elementEnd(),n.\u0275\u0275projection(3,2))},encapsulation:2,changeDetection:0}),E})(),T=(()=>{class E{}return E.\u0275fac=function(R){return new(R||E)},E.\u0275cmp=n.\u0275\u0275defineComponent({type:E,selectors:[["mat-card-title-group"]],hostAttrs:[1,"mat-card-title-group"],ngContentSelectors:c,decls:4,vars:0,template:function(R,j){1&R&&(n.\u0275\u0275projectionDef(a),n.\u0275\u0275elementStart(0,"div"),n.\u0275\u0275projection(1),n.\u0275\u0275elementEnd(),n.\u0275\u0275projection(2,1),n.\u0275\u0275projection(3,2))},encapsulation:2,changeDetection:0}),E})(),O=(()=>{class E{}return E.\u0275fac=function(R){return new(R||E)},E.\u0275mod=n.\u0275\u0275defineNgModule({type:E}),E.\u0275inj=n.\u0275\u0275defineInjector({imports:[p.MatCommonModule,p.MatCommonModule]}),E})()},4021:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{MAT_LEGACY_CHECKBOX_CONTROL_VALUE_ACCESSOR:()=>R,MAT_LEGACY_CHECKBOX_DEFAULT_OPTIONS:()=>s,MAT_LEGACY_CHECKBOX_DEFAULT_OPTIONS_FACTORY:()=>l,MAT_LEGACY_CHECKBOX_REQUIRED_VALIDATOR:()=>x,MatLegacyCheckbox:()=>j,MatLegacyCheckboxChange:()=>D,MatLegacyCheckboxModule:()=>N,MatLegacyCheckboxRequiredValidator:()=>w,_MatLegacyCheckboxRequiredValidatorModule:()=>L});var n=g(4300),p=g(5879),C=g(6223),b=g(3680),o=g(2495);const v=["input"],a=["label"],s=new p.InjectionToken("mat-checkbox-default-options",{providedIn:"root",factory:l});function l(){return{color:"accent",clickAction:"check-indeterminate"}}let u=0;const h=l(),m=(0,b.mixinTabIndex)((0,b.mixinColor)((0,b.mixinDisableRipple)((0,b.mixinDisabled)(class{constructor(S){this._elementRef=S}}))));let _=(()=>{class S extends m{get inputId(){return`${this.id||this._uniqueId}-input`}get required(){return this._required}set required(F){this._required=(0,o.Ig)(F)}constructor(F,Y,se,ne,me,$,q){super(Y),this._changeDetectorRef=se,this._ngZone=ne,this._animationMode=$,this._options=q,this.ariaLabel="",this.ariaLabelledby=null,this.labelPosition="after",this.name=null,this.change=new p.EventEmitter,this.indeterminateChange=new p.EventEmitter,this._onTouched=()=>{},this._currentAnimationClass="",this._currentCheckState=0,this._controlValueAccessorChangeFn=()=>{},this._checked=!1,this._disabled=!1,this._indeterminate=!1,this._options=this._options||h,this.color=this.defaultColor=this._options.color||h.color,this.tabIndex=parseInt(me)||0,this.id=this._uniqueId=`${F}${++u}`}ngAfterViewInit(){this._syncIndeterminate(this._indeterminate)}get checked(){return this._checked}set checked(F){const Y=(0,o.Ig)(F);Y!=this.checked&&(this._checked=Y,this._changeDetectorRef.markForCheck())}get disabled(){return this._disabled}set disabled(F){const Y=(0,o.Ig)(F);Y!==this.disabled&&(this._disabled=Y,this._changeDetectorRef.markForCheck())}get indeterminate(){return this._indeterminate}set indeterminate(F){const Y=F!=this._indeterminate;this._indeterminate=(0,o.Ig)(F),Y&&(this._transitionCheckState(this._indeterminate?3:this.checked?1:2),this.indeterminateChange.emit(this._indeterminate)),this._syncIndeterminate(this._indeterminate)}_isRippleDisabled(){return this.disableRipple||this.disabled}_onLabelTextChange(){this._changeDetectorRef.detectChanges()}writeValue(F){this.checked=!!F}registerOnChange(F){this._controlValueAccessorChangeFn=F}registerOnTouched(F){this._onTouched=F}setDisabledState(F){this.disabled=F}_transitionCheckState(F){let Y=this._currentCheckState,se=this._getAnimationTargetElement();if(Y!==F&&se&&(this._currentAnimationClass&&se.classList.remove(this._currentAnimationClass),this._currentAnimationClass=this._getAnimationClassForCheckStateTransition(Y,F),this._currentCheckState=F,this._currentAnimationClass.length>0)){se.classList.add(this._currentAnimationClass);const ne=this._currentAnimationClass;this._ngZone.runOutsideAngular(()=>{setTimeout(()=>{se.classList.remove(ne)},1e3)})}}_emitChangeEvent(){this._controlValueAccessorChangeFn(this.checked),this.change.emit(this._createChangeEvent(this.checked)),this._inputElement&&(this._inputElement.nativeElement.checked=this.checked)}toggle(){this.checked=!this.checked,this._controlValueAccessorChangeFn(this.checked)}_handleInputClick(){const F=this._options?.clickAction;this.disabled||"noop"===F?!this.disabled&&"noop"===F&&(this._inputElement.nativeElement.checked=this.checked,this._inputElement.nativeElement.indeterminate=this.indeterminate):(this.indeterminate&&"check"!==F&&Promise.resolve().then(()=>{this._indeterminate=!1,this.indeterminateChange.emit(this._indeterminate)}),this._checked=!this._checked,this._transitionCheckState(this._checked?1:2),this._emitChangeEvent())}_onInteractionEvent(F){F.stopPropagation()}_onBlur(){Promise.resolve().then(()=>{this._onTouched(),this._changeDetectorRef.markForCheck()})}_getAnimationClassForCheckStateTransition(F,Y){if("NoopAnimations"===this._animationMode)return"";switch(F){case 0:if(1===Y)return this._animationClasses.uncheckedToChecked;if(3==Y)return this._checked?this._animationClasses.checkedToIndeterminate:this._animationClasses.uncheckedToIndeterminate;break;case 2:return 1===Y?this._animationClasses.uncheckedToChecked:this._animationClasses.uncheckedToIndeterminate;case 1:return 2===Y?this._animationClasses.checkedToUnchecked:this._animationClasses.checkedToIndeterminate;case 3:return 1===Y?this._animationClasses.indeterminateToChecked:this._animationClasses.indeterminateToUnchecked}return""}_syncIndeterminate(F){const Y=this._inputElement;Y&&(Y.nativeElement.indeterminate=F)}}return S.\u0275fac=function(F){p.\u0275\u0275invalidFactory()},S.\u0275dir=p.\u0275\u0275defineDirective({type:S,viewQuery:function(F,Y){if(1&F&&(p.\u0275\u0275viewQuery(v,5),p.\u0275\u0275viewQuery(a,5),p.\u0275\u0275viewQuery(b.MatRipple,5)),2&F){let se;p.\u0275\u0275queryRefresh(se=p.\u0275\u0275loadQuery())&&(Y._inputElement=se.first),p.\u0275\u0275queryRefresh(se=p.\u0275\u0275loadQuery())&&(Y._labelElement=se.first),p.\u0275\u0275queryRefresh(se=p.\u0275\u0275loadQuery())&&(Y.ripple=se.first)}},inputs:{ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],ariaDescribedby:["aria-describedby","ariaDescribedby"],id:"id",required:"required",labelPosition:"labelPosition",name:"name",value:"value",checked:"checked",disabled:"disabled",indeterminate:"indeterminate"},outputs:{change:"change",indeterminateChange:"indeterminateChange"},features:[p.\u0275\u0275InheritDefinitionFeature]}),S})();const x={provide:C.NG_VALIDATORS,useExisting:(0,p.forwardRef)(()=>w),multi:!0};let w=(()=>{class S extends C.CheckboxRequiredValidator{}return S.\u0275fac=function(){let k;return function(Y){return(k||(k=p.\u0275\u0275getInheritedFactory(S)))(Y||S)}}(),S.\u0275dir=p.\u0275\u0275defineDirective({type:S,selectors:[["mat-checkbox","required","","formControlName",""],["mat-checkbox","required","","formControl",""],["mat-checkbox","required","","ngModel",""]],features:[p.\u0275\u0275ProvidersFeature([x]),p.\u0275\u0275InheritDefinitionFeature]}),S})(),L=(()=>{class S{}return S.\u0275fac=function(F){return new(F||S)},S.\u0275mod=p.\u0275\u0275defineNgModule({type:S}),S.\u0275inj=p.\u0275\u0275defineInjector({}),S})();var T=g(7131);const O=function(S){return{enterDuration:S}},E=["*"];class D{}const R={provide:C.NG_VALUE_ACCESSOR,useExisting:(0,p.forwardRef)(()=>j),multi:!0};let j=(()=>{class S extends _{constructor(F,Y,se,ne,me,$,q){super("mat-checkbox-",F,Y,ne,me,$,q),this._focusMonitor=se,this._animationClasses={uncheckedToChecked:"mat-checkbox-anim-unchecked-checked",uncheckedToIndeterminate:"mat-checkbox-anim-unchecked-indeterminate",checkedToUnchecked:"mat-checkbox-anim-checked-unchecked",checkedToIndeterminate:"mat-checkbox-anim-checked-indeterminate",indeterminateToChecked:"mat-checkbox-anim-indeterminate-checked",indeterminateToUnchecked:"mat-checkbox-anim-indeterminate-unchecked"}}_createChangeEvent(F){const Y=new D;return Y.source=this,Y.checked=F,Y}_getAnimationTargetElement(){return this._elementRef.nativeElement}ngAfterViewInit(){super.ngAfterViewInit(),this._focusMonitor.monitor(this._elementRef,!0).subscribe(F=>{F||this._onBlur()})}ngOnDestroy(){this._focusMonitor.stopMonitoring(this._elementRef)}_onInputClick(F){F.stopPropagation(),super._handleInputClick()}focus(F,Y){F?this._focusMonitor.focusVia(this._inputElement,F,Y):this._inputElement.nativeElement.focus(Y)}}return S.\u0275fac=function(F){return new(F||S)(p.\u0275\u0275directiveInject(p.ElementRef),p.\u0275\u0275directiveInject(p.ChangeDetectorRef),p.\u0275\u0275directiveInject(n.tE),p.\u0275\u0275directiveInject(p.NgZone),p.\u0275\u0275injectAttribute("tabindex"),p.\u0275\u0275directiveInject(p.ANIMATION_MODULE_TYPE,8),p.\u0275\u0275directiveInject(s,8))},S.\u0275cmp=p.\u0275\u0275defineComponent({type:S,selectors:[["mat-checkbox"]],hostAttrs:[1,"mat-checkbox"],hostVars:14,hostBindings:function(F,Y){2&F&&(p.\u0275\u0275hostProperty("id",Y.id),p.\u0275\u0275attribute("tabindex",null)("aria-label",null)("aria-labelledby",null),p.\u0275\u0275classProp("mat-checkbox-indeterminate",Y.indeterminate)("mat-checkbox-checked",Y.checked)("mat-checkbox-disabled",Y.disabled)("mat-checkbox-label-before","before"==Y.labelPosition)("_mat-animation-noopable","NoopAnimations"===Y._animationMode))},inputs:{disableRipple:"disableRipple",color:"color",tabIndex:"tabIndex"},exportAs:["matCheckbox"],features:[p.\u0275\u0275ProvidersFeature([R]),p.\u0275\u0275InheritDefinitionFeature],ngContentSelectors:E,decls:17,vars:20,consts:[[1,"mat-checkbox-layout"],["label",""],[1,"mat-checkbox-inner-container"],["type","checkbox",1,"mat-checkbox-input","cdk-visually-hidden",3,"id","required","checked","disabled","tabIndex","change","click"],["input",""],["matRipple","",1,"mat-checkbox-ripple","mat-focus-indicator",3,"matRippleTrigger","matRippleDisabled","matRippleRadius","matRippleCentered","matRippleAnimation"],[1,"mat-ripple-element","mat-checkbox-persistent-ripple"],[1,"mat-checkbox-frame"],[1,"mat-checkbox-background"],["version","1.1","focusable","false","viewBox","0 0 24 24","aria-hidden","true",1,"mat-checkbox-checkmark"],["fill","none","stroke","white","d","M4.1,12.7 9,17.6 20.3,6.3",1,"mat-checkbox-checkmark-path"],[1,"mat-checkbox-mixedmark"],[1,"mat-checkbox-label",3,"cdkObserveContent"],["checkboxLabel",""],[2,"display","none"]],template:function(F,Y){if(1&F&&(p.\u0275\u0275projectionDef(),p.\u0275\u0275elementStart(0,"label",0,1)(2,"span",2)(3,"input",3,4),p.\u0275\u0275listener("change",function(ne){return Y._onInteractionEvent(ne)})("click",function(ne){return Y._onInputClick(ne)}),p.\u0275\u0275elementEnd(),p.\u0275\u0275elementStart(5,"span",5),p.\u0275\u0275element(6,"span",6),p.\u0275\u0275elementEnd(),p.\u0275\u0275element(7,"span",7),p.\u0275\u0275elementStart(8,"span",8),p.\u0275\u0275namespaceSVG(),p.\u0275\u0275elementStart(9,"svg",9),p.\u0275\u0275element(10,"path",10),p.\u0275\u0275elementEnd(),p.\u0275\u0275namespaceHTML(),p.\u0275\u0275element(11,"span",11),p.\u0275\u0275elementEnd()(),p.\u0275\u0275elementStart(12,"span",12,13),p.\u0275\u0275listener("cdkObserveContent",function(){return Y._onLabelTextChange()}),p.\u0275\u0275elementStart(14,"span",14),p.\u0275\u0275text(15,"\xa0"),p.\u0275\u0275elementEnd(),p.\u0275\u0275projection(16),p.\u0275\u0275elementEnd()()),2&F){const se=p.\u0275\u0275reference(1),ne=p.\u0275\u0275reference(13);p.\u0275\u0275attribute("for",Y.inputId),p.\u0275\u0275advance(2),p.\u0275\u0275classProp("mat-checkbox-inner-container-no-side-margin",!ne.textContent||!ne.textContent.trim()),p.\u0275\u0275advance(1),p.\u0275\u0275property("id",Y.inputId)("required",Y.required)("checked",Y.checked)("disabled",Y.disabled)("tabIndex",Y.tabIndex),p.\u0275\u0275attribute("value",Y.value)("name",Y.name)("aria-label",Y.ariaLabel||null)("aria-labelledby",Y.ariaLabelledby)("aria-describedby",Y.ariaDescribedby),p.\u0275\u0275advance(2),p.\u0275\u0275property("matRippleTrigger",se)("matRippleDisabled",Y._isRippleDisabled())("matRippleRadius",20)("matRippleCentered",!0)("matRippleAnimation",p.\u0275\u0275pureFunction1(18,O,"NoopAnimations"===Y._animationMode?0:150))}},dependencies:[b.MatRipple,T.wD],styles:['@keyframes mat-checkbox-fade-in-background{0%{opacity:0}50%{opacity:1}}@keyframes mat-checkbox-fade-out-background{0%,50%{opacity:1}100%{opacity:0}}@keyframes mat-checkbox-unchecked-checked-checkmark-path{0%,50%{stroke-dashoffset:22.910259}50%{animation-timing-function:cubic-bezier(0, 0, 0.2, 0.1)}100%{stroke-dashoffset:0}}@keyframes mat-checkbox-unchecked-indeterminate-mixedmark{0%,68.2%{transform:scaleX(0)}68.2%{animation-timing-function:cubic-bezier(0, 0, 0, 1)}100%{transform:scaleX(1)}}@keyframes mat-checkbox-checked-unchecked-checkmark-path{from{animation-timing-function:cubic-bezier(0.4, 0, 1, 1);stroke-dashoffset:0}to{stroke-dashoffset:-22.910259}}@keyframes mat-checkbox-checked-indeterminate-checkmark{from{animation-timing-function:cubic-bezier(0, 0, 0.2, 0.1);opacity:1;transform:rotate(0deg)}to{opacity:0;transform:rotate(45deg)}}@keyframes mat-checkbox-indeterminate-checked-checkmark{from{animation-timing-function:cubic-bezier(0.14, 0, 0, 1);opacity:0;transform:rotate(45deg)}to{opacity:1;transform:rotate(360deg)}}@keyframes mat-checkbox-checked-indeterminate-mixedmark{from{animation-timing-function:cubic-bezier(0, 0, 0.2, 0.1);opacity:0;transform:rotate(-45deg)}to{opacity:1;transform:rotate(0deg)}}@keyframes mat-checkbox-indeterminate-checked-mixedmark{from{animation-timing-function:cubic-bezier(0.14, 0, 0, 1);opacity:1;transform:rotate(0deg)}to{opacity:0;transform:rotate(315deg)}}@keyframes mat-checkbox-indeterminate-unchecked-mixedmark{0%{animation-timing-function:linear;opacity:1;transform:scaleX(1)}32.8%,100%{opacity:0;transform:scaleX(0)}}.mat-checkbox-background,.mat-checkbox-frame{top:0;left:0;right:0;bottom:0;position:absolute;border-radius:2px;box-sizing:border-box;pointer-events:none}.mat-checkbox{display:inline-block;transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);cursor:pointer;-webkit-tap-highlight-color:rgba(0,0,0,0);position:relative}.mat-checkbox._mat-animation-noopable{transition:none !important;animation:none !important}.mat-checkbox .mat-ripple-element:not(.mat-checkbox-persistent-ripple){opacity:.16}.mat-checkbox .mat-checkbox-ripple{position:absolute;left:calc(50% - 20px);top:calc(50% - 20px);height:40px;width:40px;z-index:1;pointer-events:none}.mat-checkbox-layout{-webkit-user-select:none;user-select:none;cursor:inherit;align-items:baseline;vertical-align:middle;display:inline-flex;white-space:nowrap}.mat-checkbox-label{-webkit-user-select:auto;user-select:auto}.mat-checkbox-inner-container{display:inline-block;height:16px;line-height:0;margin:auto;margin-right:8px;order:0;position:relative;vertical-align:middle;white-space:nowrap;width:16px;flex-shrink:0}[dir=rtl] .mat-checkbox-inner-container{margin-left:8px;margin-right:auto}.mat-checkbox-inner-container-no-side-margin{margin-left:0;margin-right:0}.mat-checkbox-frame{background-color:rgba(0,0,0,0);transition:border-color 90ms cubic-bezier(0, 0, 0.2, 0.1);border-width:2px;border-style:solid}._mat-animation-noopable .mat-checkbox-frame{transition:none}.mat-checkbox-background{align-items:center;display:inline-flex;justify-content:center;transition:background-color 90ms cubic-bezier(0, 0, 0.2, 0.1),opacity 90ms cubic-bezier(0, 0, 0.2, 0.1);-webkit-print-color-adjust:exact;color-adjust:exact}._mat-animation-noopable .mat-checkbox-background{transition:none}.cdk-high-contrast-active .mat-checkbox .mat-checkbox-background{background:none}.mat-checkbox-persistent-ripple{display:block;width:100%;height:100%;transform:none}.mat-checkbox-inner-container:hover .mat-checkbox-persistent-ripple{opacity:.04}.mat-checkbox.cdk-keyboard-focused .mat-checkbox-persistent-ripple{opacity:.12}.mat-checkbox-persistent-ripple,.mat-checkbox.mat-checkbox-disabled .mat-checkbox-inner-container:hover .mat-checkbox-persistent-ripple{opacity:0}@media(hover: none){.mat-checkbox-inner-container:hover .mat-checkbox-persistent-ripple{display:none}}.mat-checkbox-checkmark{top:0;left:0;right:0;bottom:0;position:absolute;width:100%}.mat-checkbox-checkmark-path{stroke-dashoffset:22.910259;stroke-dasharray:22.910259;stroke-width:2.1333333333px}.cdk-high-contrast-black-on-white .mat-checkbox-checkmark-path{stroke:#000 !important}.mat-checkbox-mixedmark{width:calc(100% - 6px);height:2px;opacity:0;transform:scaleX(0) rotate(0deg);border-radius:2px}.cdk-high-contrast-active .mat-checkbox-mixedmark{height:0;border-top:solid 2px;margin-top:2px}.mat-checkbox-label-before .mat-checkbox-inner-container{order:1;margin-left:8px;margin-right:auto}[dir=rtl] .mat-checkbox-label-before .mat-checkbox-inner-container{margin-left:auto;margin-right:8px}.mat-checkbox-checked .mat-checkbox-checkmark{opacity:1}.mat-checkbox-checked .mat-checkbox-checkmark-path{stroke-dashoffset:0}.mat-checkbox-checked .mat-checkbox-mixedmark{transform:scaleX(1) rotate(-45deg)}.mat-checkbox-indeterminate .mat-checkbox-checkmark{opacity:0;transform:rotate(45deg)}.mat-checkbox-indeterminate .mat-checkbox-checkmark-path{stroke-dashoffset:0}.mat-checkbox-indeterminate .mat-checkbox-mixedmark{opacity:1;transform:scaleX(1) rotate(0deg)}.mat-checkbox-unchecked .mat-checkbox-background{background-color:rgba(0,0,0,0)}.mat-checkbox-disabled{cursor:default}.cdk-high-contrast-active .mat-checkbox-disabled{opacity:.5}.mat-checkbox-anim-unchecked-checked .mat-checkbox-background{animation:180ms linear 0ms mat-checkbox-fade-in-background}.mat-checkbox-anim-unchecked-checked .mat-checkbox-checkmark-path{animation:180ms linear 0ms mat-checkbox-unchecked-checked-checkmark-path}.mat-checkbox-anim-unchecked-indeterminate .mat-checkbox-background{animation:180ms linear 0ms mat-checkbox-fade-in-background}.mat-checkbox-anim-unchecked-indeterminate .mat-checkbox-mixedmark{animation:90ms linear 0ms mat-checkbox-unchecked-indeterminate-mixedmark}.mat-checkbox-anim-checked-unchecked .mat-checkbox-background{animation:180ms linear 0ms mat-checkbox-fade-out-background}.mat-checkbox-anim-checked-unchecked .mat-checkbox-checkmark-path{animation:90ms linear 0ms mat-checkbox-checked-unchecked-checkmark-path}.mat-checkbox-anim-checked-indeterminate .mat-checkbox-checkmark{animation:90ms linear 0ms mat-checkbox-checked-indeterminate-checkmark}.mat-checkbox-anim-checked-indeterminate .mat-checkbox-mixedmark{animation:90ms linear 0ms mat-checkbox-checked-indeterminate-mixedmark}.mat-checkbox-anim-indeterminate-checked .mat-checkbox-checkmark{animation:500ms linear 0ms mat-checkbox-indeterminate-checked-checkmark}.mat-checkbox-anim-indeterminate-checked .mat-checkbox-mixedmark{animation:500ms linear 0ms mat-checkbox-indeterminate-checked-mixedmark}.mat-checkbox-anim-indeterminate-unchecked .mat-checkbox-background{animation:180ms linear 0ms mat-checkbox-fade-out-background}.mat-checkbox-anim-indeterminate-unchecked .mat-checkbox-mixedmark{animation:300ms linear 0ms mat-checkbox-indeterminate-unchecked-mixedmark}.mat-checkbox-input{bottom:0;left:50%}.mat-checkbox-input:focus~.mat-focus-indicator::before{content:""}'],encapsulation:2,changeDetection:0}),S})(),N=(()=>{class S{}return S.\u0275fac=function(F){return new(F||S)},S.\u0275mod=p.\u0275\u0275defineNgModule({type:S}),S.\u0275inj=p.\u0275\u0275defineInjector({imports:[b.MatRippleModule,b.MatCommonModule,T.Q8,L,b.MatCommonModule,L]}),S})()},4678:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{LEGACY_VERSION:()=>C.VERSION,LegacyAnimationCurves:()=>C.AnimationCurves,LegacyAnimationDurations:()=>C.AnimationDurations,LegacyDateAdapter:()=>C.DateAdapter,LegacyErrorStateMatcher:()=>C.ErrorStateMatcher,LegacyNativeDateAdapter:()=>C.NativeDateAdapter,LegacyNativeDateModule:()=>C.NativeDateModule,LegacyRippleRef:()=>C.RippleRef,LegacyRippleRenderer:()=>C.RippleRenderer,LegacyShowOnDirtyErrorStateMatcher:()=>C.ShowOnDirtyErrorStateMatcher,MATERIAL_LEGACY_SANITY_CHECKS:()=>C.MATERIAL_SANITY_CHECKS,MAT_LEGACY_DATE_FORMATS:()=>C.MAT_DATE_FORMATS,MAT_LEGACY_DATE_LOCALE:()=>C.MAT_DATE_LOCALE,MAT_LEGACY_DATE_LOCALE_FACTORY:()=>C.MAT_DATE_LOCALE_FACTORY,MAT_LEGACY_NATIVE_DATE_FORMATS:()=>C.MAT_NATIVE_DATE_FORMATS,MAT_LEGACY_OPTGROUP:()=>C.MAT_OPTGROUP,MAT_LEGACY_OPTION_PARENT_COMPONENT:()=>C.MAT_OPTION_PARENT_COMPONENT,MAT_LEGACY_RIPPLE_GLOBAL_OPTIONS:()=>C.MAT_RIPPLE_GLOBAL_OPTIONS,MatLegacyCommonModule:()=>C.MatCommonModule,MatLegacyLine:()=>C.MatLine,MatLegacyLineModule:()=>C.MatLineModule,MatLegacyNativeDateModule:()=>C.MatNativeDateModule,MatLegacyOptgroup:()=>s,MatLegacyOption:()=>l,MatLegacyOptionModule:()=>d,MatLegacyOptionSelectionChange:()=>C.MatOptionSelectionChange,MatLegacyPseudoCheckbox:()=>C.MatPseudoCheckbox,MatLegacyPseudoCheckboxModule:()=>C.MatPseudoCheckboxModule,MatLegacyRipple:()=>C.MatRipple,MatLegacyRippleModule:()=>C.MatRippleModule,_MatLegacyOptgroupBase:()=>C._MatOptgroupBase,_MatLegacyOptionBase:()=>C._MatOptionBase,_countGroupLabelsBeforeLegacyOption:()=>C._countGroupLabelsBeforeOption,_getLegacyOptionScrollPosition:()=>C._getOptionScrollPosition,legacyDefaultRippleAnimationConfig:()=>C.defaultRippleAnimationConfig,legacyMixinColor:()=>C.mixinColor,legacyMixinDisableRipple:()=>C.mixinDisableRipple,legacyMixinDisabled:()=>C.mixinDisabled,legacyMixinErrorState:()=>C.mixinErrorState,legacyMixinInitialized:()=>C.mixinInitialized,legacyMixinTabIndex:()=>C.mixinTabIndex,legacySetLines:()=>C.setLines});var n=g(5879),p=g(6814),C=g(3680);const b=["*",[["mat-option"],["ng-container"]]],o=["*","mat-option, ng-container"];function v(r,u){if(1&r&&n.\u0275\u0275element(0,"mat-pseudo-checkbox",5),2&r){const h=n.\u0275\u0275nextContext();n.\u0275\u0275property("state",h.selected?"checked":"unchecked")("disabled",h.disabled)}}function a(r,u){if(1&r&&(n.\u0275\u0275elementStart(0,"span",6),n.\u0275\u0275text(1),n.\u0275\u0275elementEnd()),2&r){const h=n.\u0275\u0275nextContext();n.\u0275\u0275advance(1),n.\u0275\u0275textInterpolate1("(",h.group.label,")")}}const c=["*"];let s=(()=>{class r extends C._MatOptgroupBase{}return r.\u0275fac=function(){let u;return function(m){return(u||(u=n.\u0275\u0275getInheritedFactory(r)))(m||r)}}(),r.\u0275cmp=n.\u0275\u0275defineComponent({type:r,selectors:[["mat-optgroup"]],hostAttrs:[1,"mat-optgroup"],hostVars:5,hostBindings:function(h,m){2&h&&(n.\u0275\u0275attribute("role",m._inert?null:"group")("aria-disabled",m._inert?null:m.disabled.toString())("aria-labelledby",m._inert?null:m._labelId),n.\u0275\u0275classProp("mat-optgroup-disabled",m.disabled))},inputs:{disabled:"disabled"},exportAs:["matOptgroup"],features:[n.\u0275\u0275ProvidersFeature([{provide:C.MAT_OPTGROUP,useExisting:r}]),n.\u0275\u0275InheritDefinitionFeature],ngContentSelectors:o,decls:4,vars:2,consts:[["role","presentation",1,"mat-optgroup-label",3,"id"]],template:function(h,m){1&h&&(n.\u0275\u0275projectionDef(b),n.\u0275\u0275elementStart(0,"span",0),n.\u0275\u0275text(1),n.\u0275\u0275projection(2),n.\u0275\u0275elementEnd(),n.\u0275\u0275projection(3,1)),2&h&&(n.\u0275\u0275property("id",m._labelId),n.\u0275\u0275advance(1),n.\u0275\u0275textInterpolate1("",m.label," "))},styles:[".mat-optgroup-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;line-height:48px;height:48px;padding:0 16px;text-align:left;text-decoration:none;max-width:100%;-webkit-user-select:none;user-select:none;cursor:default}.mat-optgroup-label[disabled]{cursor:default}[dir=rtl] .mat-optgroup-label{text-align:right}.mat-optgroup-label .mat-icon{margin-right:16px;vertical-align:middle}.mat-optgroup-label .mat-icon svg{vertical-align:top}[dir=rtl] .mat-optgroup-label .mat-icon{margin-left:16px;margin-right:0}"],encapsulation:2,changeDetection:0}),r})(),l=(()=>{class r extends C._MatOptionBase{constructor(h,m,_,M){super(h,m,_,M)}}return r.\u0275fac=function(h){return new(h||r)(n.\u0275\u0275directiveInject(n.ElementRef),n.\u0275\u0275directiveInject(n.ChangeDetectorRef),n.\u0275\u0275directiveInject(C.MAT_OPTION_PARENT_COMPONENT,8),n.\u0275\u0275directiveInject(C.MAT_OPTGROUP,8))},r.\u0275cmp=n.\u0275\u0275defineComponent({type:r,selectors:[["mat-option"]],hostAttrs:["role","option",1,"mat-option","mat-focus-indicator"],hostVars:12,hostBindings:function(h,m){1&h&&n.\u0275\u0275listener("click",function(){return m._selectViaInteraction()})("keydown",function(M){return m._handleKeydown(M)}),2&h&&(n.\u0275\u0275hostProperty("id",m.id),n.\u0275\u0275attribute("tabindex",m._getTabIndex())("aria-selected",m.selected)("aria-disabled",m.disabled.toString()),n.\u0275\u0275classProp("mat-selected",m.selected)("mat-option-multiple",m.multiple)("mat-active",m.active)("mat-option-disabled",m.disabled))},exportAs:["matOption"],features:[n.\u0275\u0275InheritDefinitionFeature],ngContentSelectors:c,decls:6,vars:4,consts:[["class","mat-option-pseudo-checkbox",3,"state","disabled",4,"ngIf"],[1,"mat-option-text"],["text",""],["class","cdk-visually-hidden",4,"ngIf"],["mat-ripple","",1,"mat-option-ripple",3,"matRippleTrigger","matRippleDisabled"],[1,"mat-option-pseudo-checkbox",3,"state","disabled"],[1,"cdk-visually-hidden"]],template:function(h,m){1&h&&(n.\u0275\u0275projectionDef(),n.\u0275\u0275template(0,v,1,2,"mat-pseudo-checkbox",0),n.\u0275\u0275elementStart(1,"span",1,2),n.\u0275\u0275projection(3),n.\u0275\u0275elementEnd(),n.\u0275\u0275template(4,a,2,1,"span",3),n.\u0275\u0275element(5,"div",4)),2&h&&(n.\u0275\u0275property("ngIf",m.multiple),n.\u0275\u0275advance(4),n.\u0275\u0275property("ngIf",m.group&&m.group._inert),n.\u0275\u0275advance(1),n.\u0275\u0275property("matRippleTrigger",m._getHostElement())("matRippleDisabled",m.disabled||m.disableRipple))},dependencies:[C.MatRipple,p.NgIf,C.MatPseudoCheckbox],styles:['.mat-option{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;line-height:48px;height:48px;padding:0 16px;text-align:left;text-decoration:none;max-width:100%;position:relative;cursor:pointer;outline:none;display:flex;flex-direction:row;max-width:100%;box-sizing:border-box;align-items:center;-webkit-tap-highlight-color:rgba(0,0,0,0)}.mat-option[disabled]{cursor:default}[dir=rtl] .mat-option{text-align:right}.mat-option .mat-icon{margin-right:16px;vertical-align:middle}.mat-option .mat-icon svg{vertical-align:top}[dir=rtl] .mat-option .mat-icon{margin-left:16px;margin-right:0}.mat-option[aria-disabled=true]{-webkit-user-select:none;user-select:none;cursor:default}.mat-optgroup .mat-option:not(.mat-option-multiple){padding-left:32px}[dir=rtl] .mat-optgroup .mat-option:not(.mat-option-multiple){padding-left:16px;padding-right:32px}.mat-option.mat-active::before{content:""}.cdk-high-contrast-active .mat-option[aria-disabled=true]{opacity:.5}.cdk-high-contrast-active .mat-option.mat-selected:not(.mat-option-multiple)::after{content:"";position:absolute;top:50%;right:16px;transform:translateY(-50%);width:10px;height:0;border-bottom:solid 10px;border-radius:10px}[dir=rtl] .cdk-high-contrast-active .mat-option.mat-selected:not(.mat-option-multiple)::after{right:auto;left:16px}.mat-option-text{display:inline-block;flex-grow:1;overflow:hidden;text-overflow:ellipsis}.mat-option .mat-option-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}.mat-option-pseudo-checkbox{margin-right:8px}[dir=rtl] .mat-option-pseudo-checkbox{margin-left:8px;margin-right:0}'],encapsulation:2,changeDetection:0}),r})(),d=(()=>{class r{}return r.\u0275fac=function(h){return new(h||r)},r.\u0275mod=n.\u0275\u0275defineNgModule({type:r}),r.\u0275inj=n.\u0275\u0275defineInjector({imports:[C.MatRippleModule,p.CommonModule,C.MatCommonModule,C.MatPseudoCheckboxModule]}),r})()},4187:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{MAT_LEGACY_ERROR:()=>o.ab,MAT_LEGACY_FORM_FIELD:()=>o.G_,MAT_LEGACY_FORM_FIELD_DEFAULT_OPTIONS:()=>Xe,MAT_LEGACY_PREFIX:()=>o.Px,MAT_LEGACY_SUFFIX:()=>o.Ve,MatLegacyError:()=>Y,MatLegacyFormField:()=>Be,MatLegacyFormFieldControl:()=>o.Eo,MatLegacyFormFieldModule:()=>Mt,MatLegacyHint:()=>me,MatLegacyLabel:()=>$,MatLegacyPlaceholder:()=>q,MatLegacyPrefix:()=>$e,MatLegacySuffix:()=>st,_MAT_LEGACY_HINT:()=>ne,getMatLegacyFormFieldDuplicatedHintError:()=>o.Bi,getMatLegacyFormFieldMissingControlError:()=>o.Lv,getMatLegacyFormFieldPlaceholderConflictError:()=>o.UO,matLegacyFormFieldAnimations:()=>o.TN});var n=g(7131),p=g(6814),C=g(5879),b=g(3680),o=g(1043),v=g(9388),a=g(2495),c=g(8645),s=g(3019),l=g(2438),d=g(7921),r=g(9773),u=g(8180),h=g(2831);const m=["connectionContainer"],_=["inputContainer"],M=["label"];function x(tt,St){1&tt&&(C.\u0275\u0275elementContainerStart(0),C.\u0275\u0275elementStart(1,"div",14),C.\u0275\u0275element(2,"div",15)(3,"div",16)(4,"div",17),C.\u0275\u0275elementEnd(),C.\u0275\u0275elementStart(5,"div",18),C.\u0275\u0275element(6,"div",15)(7,"div",16)(8,"div",17),C.\u0275\u0275elementEnd(),C.\u0275\u0275elementContainerEnd())}function w(tt,St){if(1&tt){const bt=C.\u0275\u0275getCurrentView();C.\u0275\u0275elementStart(0,"div",19),C.\u0275\u0275listener("cdkObserveContent",function(){C.\u0275\u0275restoreView(bt);const nt=C.\u0275\u0275nextContext();return C.\u0275\u0275resetView(nt.updateOutlineGap())}),C.\u0275\u0275projection(1,1),C.\u0275\u0275elementEnd()}if(2&tt){const bt=C.\u0275\u0275nextContext();C.\u0275\u0275property("cdkObserveContentDisabled","outline"!=bt.appearance)}}function L(tt,St){if(1&tt&&(C.\u0275\u0275elementContainerStart(0),C.\u0275\u0275projection(1,2),C.\u0275\u0275elementStart(2,"span"),C.\u0275\u0275text(3),C.\u0275\u0275elementEnd(),C.\u0275\u0275elementContainerEnd()),2&tt){const bt=C.\u0275\u0275nextContext(2);C.\u0275\u0275advance(3),C.\u0275\u0275textInterpolate(bt._control.placeholder)}}function A(tt,St){1&tt&&C.\u0275\u0275projection(0,3,["*ngSwitchCase","true"])}function T(tt,St){1&tt&&(C.\u0275\u0275elementStart(0,"span",23),C.\u0275\u0275text(1," *"),C.\u0275\u0275elementEnd())}function O(tt,St){if(1&tt){const bt=C.\u0275\u0275getCurrentView();C.\u0275\u0275elementStart(0,"label",20,21),C.\u0275\u0275listener("cdkObserveContent",function(){C.\u0275\u0275restoreView(bt);const nt=C.\u0275\u0275nextContext();return C.\u0275\u0275resetView(nt.updateOutlineGap())}),C.\u0275\u0275template(2,L,4,1,"ng-container",12),C.\u0275\u0275template(3,A,1,0,"ng-content",12),C.\u0275\u0275template(4,T,2,0,"span",22),C.\u0275\u0275elementEnd()}if(2&tt){const bt=C.\u0275\u0275nextContext();C.\u0275\u0275classProp("mat-empty",bt._control.empty&&!bt._shouldAlwaysFloat())("mat-form-field-empty",bt._control.empty&&!bt._shouldAlwaysFloat())("mat-accent","accent"==bt.color)("mat-warn","warn"==bt.color),C.\u0275\u0275property("cdkObserveContentDisabled","outline"!=bt.appearance)("id",bt._labelId)("ngSwitch",bt._hasLabel()),C.\u0275\u0275attribute("for",bt._control.id)("aria-owns",bt._control.id),C.\u0275\u0275advance(2),C.\u0275\u0275property("ngSwitchCase",!1),C.\u0275\u0275advance(1),C.\u0275\u0275property("ngSwitchCase",!0),C.\u0275\u0275advance(1),C.\u0275\u0275property("ngIf",!bt.hideRequiredMarker&&bt._control.required&&!bt._control.disabled)}}function E(tt,St){1&tt&&(C.\u0275\u0275elementStart(0,"div",24),C.\u0275\u0275projection(1,4),C.\u0275\u0275elementEnd())}function D(tt,St){if(1&tt&&(C.\u0275\u0275elementStart(0,"div",25),C.\u0275\u0275element(1,"span",26),C.\u0275\u0275elementEnd()),2&tt){const bt=C.\u0275\u0275nextContext();C.\u0275\u0275advance(1),C.\u0275\u0275classProp("mat-accent","accent"==bt.color)("mat-warn","warn"==bt.color)}}function R(tt,St){if(1&tt&&(C.\u0275\u0275elementStart(0,"div"),C.\u0275\u0275projection(1,5),C.\u0275\u0275elementEnd()),2&tt){const bt=C.\u0275\u0275nextContext();C.\u0275\u0275property("@transitionMessages",bt._subscriptAnimationState)}}function j(tt,St){if(1&tt&&(C.\u0275\u0275elementStart(0,"div",30),C.\u0275\u0275text(1),C.\u0275\u0275elementEnd()),2&tt){const bt=C.\u0275\u0275nextContext(2);C.\u0275\u0275property("id",bt._hintLabelId),C.\u0275\u0275advance(1),C.\u0275\u0275textInterpolate(bt.hintLabel)}}function N(tt,St){if(1&tt&&(C.\u0275\u0275elementStart(0,"div",27),C.\u0275\u0275template(1,j,2,2,"div",28),C.\u0275\u0275projection(2,6),C.\u0275\u0275element(3,"div",29),C.\u0275\u0275projection(4,7),C.\u0275\u0275elementEnd()),2&tt){const bt=C.\u0275\u0275nextContext();C.\u0275\u0275property("@transitionMessages",bt._subscriptAnimationState),C.\u0275\u0275advance(1),C.\u0275\u0275property("ngIf",bt.hintLabel)}}const S=["*",[["","matPrefix",""]],[["mat-placeholder"]],[["mat-label"]],[["","matSuffix",""]],[["mat-error"]],[["mat-hint",3,"align","end"]],[["mat-hint","align","end"]]],k=["*","[matPrefix]","mat-placeholder","mat-label","[matSuffix]","mat-error","mat-hint:not([align='end'])","mat-hint[align='end']"];let F=0,Y=(()=>{class tt{constructor(bt,xt){this.id="mat-error-"+F++,bt||xt.nativeElement.setAttribute("aria-live","polite")}}return tt.\u0275fac=function(bt){return new(bt||tt)(C.\u0275\u0275injectAttribute("aria-live"),C.\u0275\u0275directiveInject(C.ElementRef))},tt.\u0275dir=C.\u0275\u0275defineDirective({type:tt,selectors:[["mat-error"]],hostAttrs:["aria-atomic","true",1,"mat-error"],hostVars:1,hostBindings:function(bt,xt){2&bt&&C.\u0275\u0275attribute("id",xt.id)},inputs:{id:"id"},features:[C.\u0275\u0275ProvidersFeature([{provide:o.ab,useExisting:tt}])]}),tt})(),se=0;const ne=new C.InjectionToken("MatHint");let me=(()=>{class tt{constructor(){this.align="start",this.id="mat-hint-"+se++}}return tt.\u0275fac=function(bt){return new(bt||tt)},tt.\u0275dir=C.\u0275\u0275defineDirective({type:tt,selectors:[["mat-hint"]],hostAttrs:[1,"mat-hint"],hostVars:4,hostBindings:function(bt,xt){2&bt&&(C.\u0275\u0275attribute("id",xt.id)("align",null),C.\u0275\u0275classProp("mat-form-field-hint-end","end"===xt.align))},inputs:{align:"align",id:"id"},features:[C.\u0275\u0275ProvidersFeature([{provide:ne,useExisting:tt}])]}),tt})(),$=(()=>{class tt{}return tt.\u0275fac=function(bt){return new(bt||tt)},tt.\u0275dir=C.\u0275\u0275defineDirective({type:tt,selectors:[["mat-label"]]}),tt})(),q=(()=>{class tt{}return tt.\u0275fac=function(bt){return new(bt||tt)},tt.\u0275dir=C.\u0275\u0275defineDirective({type:tt,selectors:[["mat-placeholder"]]}),tt})(),Q=0;const Oe=(0,b.mixinColor)(class{constructor(tt){this._elementRef=tt}},"primary"),Xe=new C.InjectionToken("MAT_FORM_FIELD_DEFAULT_OPTIONS");let Be=(()=>{class tt extends Oe{get appearance(){return this._appearance}set appearance(bt){const xt=this._appearance;this._appearance=bt||this._defaults?.appearance||"legacy","outline"===this._appearance&&xt!==bt&&(this._outlineGapCalculationNeededOnStable=!0)}get hideRequiredMarker(){return this._hideRequiredMarker}set hideRequiredMarker(bt){this._hideRequiredMarker=(0,a.Ig)(bt)}_shouldAlwaysFloat(){return"always"===this.floatLabel&&!this._showAlwaysAnimate}_canLabelFloat(){return"never"!==this.floatLabel}get hintLabel(){return this._hintLabel}set hintLabel(bt){this._hintLabel=bt,this._processHints()}get floatLabel(){return"legacy"!==this.appearance&&"never"===this._floatLabel?"auto":this._floatLabel}set floatLabel(bt){bt!==this._floatLabel&&(this._floatLabel=bt||this._getDefaultFloatLabelState(),this._changeDetectorRef.markForCheck())}get _control(){return this._explicitFormFieldControl||this._controlNonStatic||this._controlStatic}set _control(bt){this._explicitFormFieldControl=bt}constructor(bt,xt,nt,ot,vt,rt,J){super(bt),this._changeDetectorRef=xt,this._dir=nt,this._defaults=ot,this._platform=vt,this._ngZone=rt,this._outlineGapCalculationNeededImmediately=!1,this._outlineGapCalculationNeededOnStable=!1,this._destroyed=new c.x,this._hideRequiredMarker=!1,this._showAlwaysAnimate=!1,this._subscriptAnimationState="",this._hintLabel="",this._hintLabelId="mat-hint-"+Q++,this._labelId="mat-form-field-label-"+Q++,this.floatLabel=this._getDefaultFloatLabelState(),this._animationsEnabled="NoopAnimations"!==J,this.appearance=ot?.appearance||"legacy",ot&&(this._hideRequiredMarker=!!ot.hideRequiredMarker,ot.color&&(this.color=this.defaultColor=ot.color))}getLabelId(){return this._hasFloatingLabel()?this._labelId:null}getConnectedOverlayOrigin(){return this._connectionContainerRef||this._elementRef}ngAfterContentInit(){this._validateControlChild();const bt=this._control;bt.controlType&&this._elementRef.nativeElement.classList.add(`mat-form-field-type-${bt.controlType}`),bt.stateChanges.pipe((0,d.O)(null)).subscribe(()=>{this._validatePlaceholders(),this._syncDescribedByIds(),this._changeDetectorRef.markForCheck()}),bt.ngControl&&bt.ngControl.valueChanges&&bt.ngControl.valueChanges.pipe((0,r.R)(this._destroyed)).subscribe(()=>this._changeDetectorRef.markForCheck()),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.pipe((0,r.R)(this._destroyed)).subscribe(()=>{this._outlineGapCalculationNeededOnStable&&this.updateOutlineGap()})}),(0,s.T)(this._prefixChildren.changes,this._suffixChildren.changes).subscribe(()=>{this._outlineGapCalculationNeededOnStable=!0,this._changeDetectorRef.markForCheck()}),this._hintChildren.changes.pipe((0,d.O)(null)).subscribe(()=>{this._processHints(),this._changeDetectorRef.markForCheck()}),this._errorChildren.changes.pipe((0,d.O)(null)).subscribe(()=>{this._syncDescribedByIds(),this._changeDetectorRef.markForCheck()}),this._dir&&this._dir.change.pipe((0,r.R)(this._destroyed)).subscribe(()=>{"function"==typeof requestAnimationFrame?this._ngZone.runOutsideAngular(()=>{requestAnimationFrame(()=>this.updateOutlineGap())}):this.updateOutlineGap()})}ngAfterContentChecked(){this._validateControlChild(),this._outlineGapCalculationNeededImmediately&&this.updateOutlineGap()}ngAfterViewInit(){this._subscriptAnimationState="enter",this._changeDetectorRef.detectChanges()}ngOnDestroy(){this._destroyed.next(),this._destroyed.complete()}_shouldForward(bt){const xt=this._control?this._control.ngControl:null;return xt&&xt[bt]}_hasPlaceholder(){return!!(this._control&&this._control.placeholder||this._placeholderChild)}_hasLabel(){return!(!this._labelChildNonStatic&&!this._labelChildStatic)}_shouldLabelFloat(){return this._canLabelFloat()&&(this._control&&this._control.shouldLabelFloat||this._shouldAlwaysFloat())}_hideControlPlaceholder(){return"legacy"===this.appearance&&!this._hasLabel()||this._hasLabel()&&!this._shouldLabelFloat()}_hasFloatingLabel(){return this._hasLabel()||"legacy"===this.appearance&&this._hasPlaceholder()}_getDisplayedMessages(){return this._errorChildren&&this._errorChildren.length>0&&this._control.errorState?"error":"hint"}_animateAndLockLabel(){this._hasFloatingLabel()&&this._canLabelFloat()&&(this._animationsEnabled&&this._label&&(this._showAlwaysAnimate=!0,(0,l.R)(this._label.nativeElement,"transitionend").pipe((0,u.q)(1)).subscribe(()=>{this._showAlwaysAnimate=!1})),this.floatLabel="always",this._changeDetectorRef.markForCheck())}_validatePlaceholders(){}_processHints(){this._validateHints(),this._syncDescribedByIds()}_validateHints(){}_getDefaultFloatLabelState(){return this._defaults&&this._defaults.floatLabel||"auto"}_syncDescribedByIds(){if(this._control){let bt=[];if(this._control.userAriaDescribedBy&&"string"==typeof this._control.userAriaDescribedBy&&bt.push(...this._control.userAriaDescribedBy.split(" ")),"hint"===this._getDisplayedMessages()){const xt=this._hintChildren?this._hintChildren.find(ot=>"start"===ot.align):null,nt=this._hintChildren?this._hintChildren.find(ot=>"end"===ot.align):null;xt?bt.push(xt.id):this._hintLabel&&bt.push(this._hintLabelId),nt&&bt.push(nt.id)}else this._errorChildren&&bt.push(...this._errorChildren.map(xt=>xt.id));this._control.setDescribedByIds(bt)}}_validateControlChild(){}updateOutlineGap(){const bt=this._label?this._label.nativeElement:null,xt=this._connectionContainerRef.nativeElement,nt=".mat-form-field-outline-start",ot=".mat-form-field-outline-gap";if("outline"!==this.appearance||!this._platform.isBrowser)return;if(!bt||!bt.children.length||!bt.textContent.trim()){const ee=xt.querySelectorAll(`${nt}, ${ot}`);for(let ae=0;ae0?.75*Te+10:0}for(let ee=0;ee{class tt{}return tt.\u0275fac=function(bt){return new(bt||tt)},tt.\u0275dir=C.\u0275\u0275defineDirective({type:tt,selectors:[["","matPrefix",""]],features:[C.\u0275\u0275ProvidersFeature([{provide:o.Px,useExisting:tt}])]}),tt})(),st=(()=>{class tt{}return tt.\u0275fac=function(bt){return new(bt||tt)},tt.\u0275dir=C.\u0275\u0275defineDirective({type:tt,selectors:[["","matSuffix",""]],features:[C.\u0275\u0275ProvidersFeature([{provide:o.Ve,useExisting:tt}])]}),tt})(),Mt=(()=>{class tt{}return tt.\u0275fac=function(bt){return new(bt||tt)},tt.\u0275mod=C.\u0275\u0275defineNgModule({type:tt}),tt.\u0275inj=C.\u0275\u0275defineInjector({imports:[p.CommonModule,b.MatCommonModule,n.Q8,b.MatCommonModule]}),tt})()},2400:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{MAT_LEGACY_INPUT_VALUE_ACCESSOR:()=>p.Jk,MatLegacyInput:()=>a,MatLegacyInputModule:()=>c,getMatLegacyInputUnsupportedTypeError:()=>p.b7});var n=g(5879),p=g(4516),C=g(1043),b=g(4187),o=g(6263),v=g(3680);let a=(()=>{class s extends p.Nt{constructor(){super(...arguments),this._legacyFormField=(0,n.inject)(C.G_,{optional:!0})}_getPlaceholder(){const d=this._legacyFormField;return d&&"legacy"===d.appearance&&!d._hasLabel?.()?null:this.placeholder}}return s.\u0275fac=function(){let l;return function(r){return(l||(l=n.\u0275\u0275getInheritedFactory(s)))(r||s)}}(),s.\u0275dir=n.\u0275\u0275defineDirective({type:s,selectors:[["input","matInput",""],["textarea","matInput",""],["select","matNativeControl",""],["input","matNativeControl",""],["textarea","matNativeControl",""]],hostAttrs:[1,"mat-input-element","mat-form-field-autofill-control"],hostVars:15,hostBindings:function(d,r){2&d&&(n.\u0275\u0275attribute("data-placeholder",r.placeholder),n.\u0275\u0275classProp("mat-input-server",r._isServer)("mat-mdc-input-element",!1)("mat-mdc-form-field-textarea-control",!1)("mat-mdc-form-field-input-control",!1)("mdc-text-field__input",!1)("mat-mdc-native-select-inline",!1)("mat-native-select-inline",r._isInlineSelect()))},exportAs:["matInput"],features:[n.\u0275\u0275ProvidersFeature([{provide:C.Eo,useExisting:s}]),n.\u0275\u0275InheritDefinitionFeature]}),s})(),c=(()=>{class s{}return s.\u0275fac=function(d){return new(d||s)},s.\u0275mod=n.\u0275\u0275defineNgModule({type:s}),s.\u0275inj=n.\u0275\u0275defineInjector({providers:[v.ErrorStateMatcher],imports:[o.Ky,b.MatLegacyFormFieldModule,v.MatCommonModule,o.Ky,b.MatLegacyFormFieldModule]}),s})()},6718:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{MAT_LEGACY_MENU_CONTENT:()=>me,MAT_LEGACY_MENU_DEFAULT_OPTIONS:()=>Xe,MAT_LEGACY_MENU_PANEL:()=>S,MAT_LEGACY_MENU_SCROLL_STRATEGY:()=>Mt,MatLegacyMenu:()=>ie,MatLegacyMenuContent:()=>ct,MatLegacyMenuItem:()=>pe,MatLegacyMenuModule:()=>Lt,MatLegacyMenuTrigger:()=>Te,fadeInLegacyItems:()=>ue,matLegacyMenuAnimations:()=>Q,transformLegacyMenu:()=>Me});var n=g(5879),p=g(4300),C=g(2495),b=g(6028),o=g(8645),v=g(3019),a=g(7394),c=g(2096),s=g(6410),l=g(7921),d=g(4664),r=g(8180),u=g(9773),h=g(2181),m=g(7547),_=g(3680),M=g(6814),x=g(8484),w=g(6825),L=g(9388),A=g(9594),T=g(2831);const O=["mat-menu-item",""];function E(Dt,Kt){1&Dt&&(n.\u0275\u0275namespaceSVG(),n.\u0275\u0275elementStart(0,"svg",3),n.\u0275\u0275element(1,"polygon",4),n.\u0275\u0275elementEnd())}const D=[[["mat-icon"],["","matMenuItemIcon",""]],"*"],R=["mat-icon, [matMenuItemIcon]","*"],S=new n.InjectionToken("MAT_MENU_PANEL"),k=(0,_.mixinDisableRipple)((0,_.mixinDisabled)(class{}));let F=(()=>{class Dt extends k{constructor(ze,yt,Bt,$t,Yt){super(),this._elementRef=ze,this._document=yt,this._focusMonitor=Bt,this._parentMenu=$t,this._changeDetectorRef=Yt,this.role="menuitem",this._hovered=new o.x,this._focused=new o.x,this._highlighted=!1,this._triggersSubmenu=!1,$t?.addItem?.(this)}focus(ze,yt){this._focusMonitor&&ze?this._focusMonitor.focusVia(this._getHostElement(),ze,yt):this._getHostElement().focus(yt),this._focused.next(this)}ngAfterViewInit(){this._focusMonitor&&this._focusMonitor.monitor(this._elementRef,!1)}ngOnDestroy(){this._focusMonitor&&this._focusMonitor.stopMonitoring(this._elementRef),this._parentMenu&&this._parentMenu.removeItem&&this._parentMenu.removeItem(this),this._hovered.complete(),this._focused.complete()}_getTabIndex(){return this.disabled?"-1":"0"}_getHostElement(){return this._elementRef.nativeElement}_checkDisabled(ze){this.disabled&&(ze.preventDefault(),ze.stopPropagation())}_handleMouseEnter(){this._hovered.next(this)}getLabel(){const ze=this._elementRef.nativeElement.cloneNode(!0),yt=ze.querySelectorAll("mat-icon, .material-icons");for(let Bt=0;Bt{class Dt{constructor(ze,yt,Bt,$t,Yt,Ue,We){this._template=ze,this._componentFactoryResolver=yt,this._appRef=Bt,this._injector=$t,this._viewContainerRef=Yt,this._document=Ue,this._changeDetectorRef=We,this._attached=new o.x}attach(ze={}){this._portal||(this._portal=new x.UE(this._template,this._viewContainerRef)),this.detach(),this._outlet||(this._outlet=new x.u0(this._document.createElement("div"),this._componentFactoryResolver,this._appRef,this._injector));const yt=this._template.elementRef.nativeElement;yt.parentNode.insertBefore(this._outlet.outletElement,yt),this._changeDetectorRef?.markForCheck(),this._portal.attach(this._outlet,ze),this._attached.next()}detach(){this._portal.isAttached&&this._portal.detach()}ngOnDestroy(){this._outlet&&this._outlet.dispose()}}return Dt.\u0275fac=function(ze){return new(ze||Dt)(n.\u0275\u0275directiveInject(n.TemplateRef),n.\u0275\u0275directiveInject(n.ComponentFactoryResolver),n.\u0275\u0275directiveInject(n.ApplicationRef),n.\u0275\u0275directiveInject(n.Injector),n.\u0275\u0275directiveInject(n.ViewContainerRef),n.\u0275\u0275directiveInject(M.DOCUMENT),n.\u0275\u0275directiveInject(n.ChangeDetectorRef))},Dt.\u0275dir=n.\u0275\u0275defineDirective({type:Dt}),Dt})();const Q={transformMenu:(0,w.X$)("transformMenu",[(0,w.SB)("void",(0,w.oB)({opacity:0,transform:"scale(0.8)"})),(0,w.eR)("void => enter",(0,w.jt)("120ms cubic-bezier(0, 0, 0.2, 1)",(0,w.oB)({opacity:1,transform:"scale(1)"}))),(0,w.eR)("* => void",(0,w.jt)("100ms 25ms linear",(0,w.oB)({opacity:0})))]),fadeInItems:(0,w.X$)("fadeInItems",[(0,w.SB)("showing",(0,w.oB)({opacity:1})),(0,w.eR)("void => *",[(0,w.oB)({opacity:0}),(0,w.jt)("400ms 100ms cubic-bezier(0.55, 0, 0.55, 0.2)")])])},ue=Q.fadeInItems,Me=Q.transformMenu;let Oe=0;const Xe=new n.InjectionToken("mat-menu-default-options",{providedIn:"root",factory:function Be(){return{overlapTrigger:!1,xPosition:"after",yPosition:"below",backdropClass:"cdk-overlay-transparent-backdrop"}}});let $e=(()=>{class Dt{get xPosition(){return this._xPosition}set xPosition(ze){this._xPosition=ze,this.setPositionClasses()}get yPosition(){return this._yPosition}set yPosition(ze){this._yPosition=ze,this.setPositionClasses()}get overlapTrigger(){return this._overlapTrigger}set overlapTrigger(ze){this._overlapTrigger=(0,C.Ig)(ze)}get hasBackdrop(){return this._hasBackdrop}set hasBackdrop(ze){this._hasBackdrop=(0,C.Ig)(ze)}set panelClass(ze){const yt=this._previousPanelClass;yt&&yt.length&&yt.split(" ").forEach(Bt=>{this._classList[Bt]=!1}),this._previousPanelClass=ze,ze&&ze.length&&(ze.split(" ").forEach(Bt=>{this._classList[Bt]=!0}),this._elementRef.nativeElement.className="")}get classList(){return this.panelClass}set classList(ze){this.panelClass=ze}constructor(ze,yt,Bt,$t){this._elementRef=ze,this._ngZone=yt,this._changeDetectorRef=$t,this._directDescendantItems=new n.QueryList,this._classList={},this._panelAnimationState="void",this._animationDone=new o.x,this.closed=new n.EventEmitter,this.close=this.closed,this.panelId="mat-menu-panel-"+Oe++,this.overlayPanelClass=Bt.overlayPanelClass||"",this._xPosition=Bt.xPosition,this._yPosition=Bt.yPosition,this.backdropClass=Bt.backdropClass,this._overlapTrigger=Bt.overlapTrigger,this._hasBackdrop=Bt.hasBackdrop}ngOnInit(){this.setPositionClasses()}ngAfterContentInit(){this._updateDirectDescendants(),this._keyManager=new p.Em(this._directDescendantItems).withWrap().withTypeAhead().withHomeAndEnd(),this._keyManager.tabOut.subscribe(()=>this.closed.emit("tab")),this._directDescendantItems.changes.pipe((0,l.O)(this._directDescendantItems),(0,d.w)(ze=>(0,v.T)(...ze.map(yt=>yt._focused)))).subscribe(ze=>this._keyManager.updateActiveItem(ze)),this._directDescendantItems.changes.subscribe(ze=>{const yt=this._keyManager;if("enter"===this._panelAnimationState&&yt.activeItem?._hasFocus()){const Bt=ze.toArray(),$t=Math.max(0,Math.min(Bt.length-1,yt.activeItemIndex||0));Bt[$t]&&!Bt[$t].disabled?yt.setActiveItem($t):yt.setNextItemActive()}})}ngOnDestroy(){this._keyManager?.destroy(),this._directDescendantItems.destroy(),this.closed.complete(),this._firstItemFocusSubscription?.unsubscribe()}_hovered(){return this._directDescendantItems.changes.pipe((0,l.O)(this._directDescendantItems),(0,d.w)(yt=>(0,v.T)(...yt.map(Bt=>Bt._hovered))))}addItem(ze){}removeItem(ze){}_handleKeydown(ze){const yt=ze.keyCode,Bt=this._keyManager;switch(yt){case b.hY:(0,b.Vb)(ze)||(ze.preventDefault(),this.closed.emit("keydown"));break;case b.oh:this.parentMenu&&"ltr"===this.direction&&this.closed.emit("keydown");break;case b.SV:this.parentMenu&&"rtl"===this.direction&&this.closed.emit("keydown");break;default:return(yt===b.LH||yt===b.JH)&&Bt.setFocusOrigin("keyboard"),void Bt.onKeydown(ze)}ze.stopPropagation()}focusFirstItem(ze="program"){this._firstItemFocusSubscription?.unsubscribe(),this._firstItemFocusSubscription=this._ngZone.onStable.pipe((0,r.q)(1)).subscribe(()=>{let yt=null;if(this._directDescendantItems.length&&(yt=this._directDescendantItems.first._getHostElement().closest('[role="menu"]')),!yt||!yt.contains(document.activeElement)){const Bt=this._keyManager;Bt.setFocusOrigin(ze).setFirstItemActive(),!Bt.activeItem&&yt&&yt.focus()}})}resetActiveItem(){this._keyManager.setActiveItem(-1)}setElevation(ze){const yt=Math.min(this._baseElevation+ze,24),Bt=`${this._elevationPrefix}${yt}`,$t=Object.keys(this._classList).find(Yt=>Yt.startsWith(this._elevationPrefix));(!$t||$t===this._previousElevation)&&(this._previousElevation&&(this._classList[this._previousElevation]=!1),this._classList[Bt]=!0,this._previousElevation=Bt)}setPositionClasses(ze=this.xPosition,yt=this.yPosition){const Bt=this._classList;Bt["mat-menu-before"]="before"===ze,Bt["mat-menu-after"]="after"===ze,Bt["mat-menu-above"]="above"===yt,Bt["mat-menu-below"]="below"===yt,this._changeDetectorRef?.markForCheck()}_startAnimation(){this._panelAnimationState="enter"}_resetAnimation(){this._panelAnimationState="void"}_onAnimationDone(ze){this._animationDone.next(ze),this._isAnimating=!1}_onAnimationStart(ze){this._isAnimating=!0,"enter"===ze.toState&&0===this._keyManager.activeItemIndex&&(ze.element.scrollTop=0)}_updateDirectDescendants(){this._allItems.changes.pipe((0,l.O)(this._allItems)).subscribe(ze=>{this._directDescendantItems.reset(ze.filter(yt=>yt._parentMenu===this)),this._directDescendantItems.notifyOnChanges()})}}return Dt.\u0275fac=function(ze){return new(ze||Dt)(n.\u0275\u0275directiveInject(n.ElementRef),n.\u0275\u0275directiveInject(n.NgZone),n.\u0275\u0275directiveInject(Xe),n.\u0275\u0275directiveInject(n.ChangeDetectorRef))},Dt.\u0275dir=n.\u0275\u0275defineDirective({type:Dt,contentQueries:function(ze,yt,Bt){if(1&ze&&(n.\u0275\u0275contentQuery(Bt,me,5),n.\u0275\u0275contentQuery(Bt,F,5),n.\u0275\u0275contentQuery(Bt,F,4)),2&ze){let $t;n.\u0275\u0275queryRefresh($t=n.\u0275\u0275loadQuery())&&(yt.lazyContent=$t.first),n.\u0275\u0275queryRefresh($t=n.\u0275\u0275loadQuery())&&(yt._allItems=$t),n.\u0275\u0275queryRefresh($t=n.\u0275\u0275loadQuery())&&(yt.items=$t)}},viewQuery:function(ze,yt){if(1&ze&&n.\u0275\u0275viewQuery(n.TemplateRef,5),2&ze){let Bt;n.\u0275\u0275queryRefresh(Bt=n.\u0275\u0275loadQuery())&&(yt.templateRef=Bt.first)}},inputs:{backdropClass:"backdropClass",ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],ariaDescribedby:["aria-describedby","ariaDescribedby"],xPosition:"xPosition",yPosition:"yPosition",overlapTrigger:"overlapTrigger",hasBackdrop:"hasBackdrop",panelClass:["class","panelClass"],classList:"classList"},outputs:{closed:"closed",close:"close"}}),Dt})();const Mt=new n.InjectionToken("mat-menu-scroll-strategy"),St={provide:Mt,deps:[A.aV],useFactory:function tt(Dt){return()=>Dt.scrollStrategies.reposition()}},bt=(0,T.i$)({passive:!0});let nt=(()=>{class Dt{get _deprecatedMatMenuTriggerFor(){return this.menu}set _deprecatedMatMenuTriggerFor(ze){this.menu=ze}get menu(){return this._menu}set menu(ze){ze!==this._menu&&(this._menu=ze,this._menuCloseSubscription.unsubscribe(),ze&&(this._menuCloseSubscription=ze.close.subscribe(yt=>{this._destroyMenu(yt),("click"===yt||"tab"===yt)&&this._parentMaterialMenu&&this._parentMaterialMenu.closed.emit(yt)})),this._menuItemInstance?._setTriggersSubmenu(this.triggersSubmenu()))}constructor(ze,yt,Bt,$t,Yt,Ue,We,ve,we){this._overlay=ze,this._element=yt,this._viewContainerRef=Bt,this._menuItemInstance=Ue,this._dir=We,this._focusMonitor=ve,this._ngZone=we,this._overlayRef=null,this._menuOpen=!1,this._closingActionsSubscription=a.w0.EMPTY,this._hoverSubscription=a.w0.EMPTY,this._menuCloseSubscription=a.w0.EMPTY,this._changeDetectorRef=(0,n.inject)(n.ChangeDetectorRef),this._handleTouchStart=at=>{(0,p.yG)(at)||(this._openedBy="touch")},this._openedBy=void 0,this.restoreFocus=!0,this.menuOpened=new n.EventEmitter,this.onMenuOpen=this.menuOpened,this.menuClosed=new n.EventEmitter,this.onMenuClose=this.menuClosed,this._scrollStrategy=$t,this._parentMaterialMenu=Yt instanceof $e?Yt:void 0,yt.nativeElement.addEventListener("touchstart",this._handleTouchStart,bt)}ngAfterContentInit(){this._handleHover()}ngOnDestroy(){this._overlayRef&&(this._overlayRef.dispose(),this._overlayRef=null),this._element.nativeElement.removeEventListener("touchstart",this._handleTouchStart,bt),this._menuCloseSubscription.unsubscribe(),this._closingActionsSubscription.unsubscribe(),this._hoverSubscription.unsubscribe()}get menuOpen(){return this._menuOpen}get dir(){return this._dir&&"rtl"===this._dir.value?"rtl":"ltr"}triggersSubmenu(){return!!(this._menuItemInstance&&this._parentMaterialMenu&&this.menu)}toggleMenu(){return this._menuOpen?this.closeMenu():this.openMenu()}openMenu(){const ze=this.menu;if(this._menuOpen||!ze)return;const yt=this._createOverlay(ze),Bt=yt.getConfig(),$t=Bt.positionStrategy;this._setPosition(ze,$t),Bt.hasBackdrop=null==ze.hasBackdrop?!this.triggersSubmenu():ze.hasBackdrop,yt.attach(this._getPortal(ze)),ze.lazyContent&&ze.lazyContent.attach(this.menuData),this._closingActionsSubscription=this._menuClosingActions().subscribe(()=>this.closeMenu()),this._initMenu(ze),ze instanceof $e&&(ze._startAnimation(),ze._directDescendantItems.changes.pipe((0,u.R)(ze.close)).subscribe(()=>{$t.withLockedPosition(!1).reapplyLastPosition(),$t.withLockedPosition(!0)}))}closeMenu(){this.menu?.close.emit()}focus(ze,yt){this._focusMonitor&&ze?this._focusMonitor.focusVia(this._element,ze,yt):this._element.nativeElement.focus(yt)}updatePosition(){this._overlayRef?.updatePosition()}_destroyMenu(ze){if(!this._overlayRef||!this.menuOpen)return;const yt=this.menu;this._closingActionsSubscription.unsubscribe(),this._overlayRef.detach(),this.restoreFocus&&("keydown"===ze||!this._openedBy||!this.triggersSubmenu())&&this.focus(this._openedBy),this._openedBy=void 0,yt instanceof $e?(yt._resetAnimation(),yt.lazyContent?yt._animationDone.pipe((0,h.h)(Bt=>"void"===Bt.toState),(0,r.q)(1),(0,u.R)(yt.lazyContent._attached)).subscribe({next:()=>yt.lazyContent.detach(),complete:()=>this._setIsMenuOpen(!1)}):this._setIsMenuOpen(!1)):(this._setIsMenuOpen(!1),yt?.lazyContent?.detach())}_initMenu(ze){ze.parentMenu=this.triggersSubmenu()?this._parentMaterialMenu:void 0,ze.direction=this.dir,this._setMenuElevation(ze),ze.focusFirstItem(this._openedBy||"program"),this._setIsMenuOpen(!0)}_setMenuElevation(ze){if(ze.setElevation){let yt=0,Bt=ze.parentMenu;for(;Bt;)yt++,Bt=Bt.parentMenu;ze.setElevation(yt)}}_setIsMenuOpen(ze){ze!==this._menuOpen&&(this._menuOpen=ze,this._menuOpen?this.menuOpened.emit():this.menuClosed.emit(),this.triggersSubmenu()&&this._menuItemInstance._setHighlighted(ze),this._changeDetectorRef.markForCheck())}_createOverlay(ze){if(!this._overlayRef){const yt=this._getOverlayConfig(ze);this._subscribeToPositions(ze,yt.positionStrategy),this._overlayRef=this._overlay.create(yt),this._overlayRef.keydownEvents().subscribe()}return this._overlayRef}_getOverlayConfig(ze){return new A.X_({positionStrategy:this._overlay.position().flexibleConnectedTo(this._element).withLockedPosition().withGrowAfterOpen().withTransformOriginOn(".mat-menu-panel, .mat-mdc-menu-panel"),backdropClass:ze.backdropClass||"cdk-overlay-transparent-backdrop",panelClass:ze.overlayPanelClass,scrollStrategy:this._scrollStrategy(),direction:this._dir})}_subscribeToPositions(ze,yt){ze.setPositionClasses&&yt.positionChanges.subscribe(Bt=>{const $t="start"===Bt.connectionPair.overlayX?"after":"before",Yt="top"===Bt.connectionPair.overlayY?"below":"above";this._ngZone?this._ngZone.run(()=>ze.setPositionClasses($t,Yt)):ze.setPositionClasses($t,Yt)})}_setPosition(ze,yt){let[Bt,$t]="before"===ze.xPosition?["end","start"]:["start","end"],[Yt,Ue]="above"===ze.yPosition?["bottom","top"]:["top","bottom"],[We,ve]=[Yt,Ue],[we,at]=[Bt,$t],De=0;if(this.triggersSubmenu()){if(at=Bt="before"===ze.xPosition?"start":"end",$t=we="end"===Bt?"start":"end",this._parentMaterialMenu){if(null==this._parentInnerPadding){const je=this._parentMaterialMenu.items.first;this._parentInnerPadding=je?je._getHostElement().offsetTop:0}De="bottom"===Yt?this._parentInnerPadding:-this._parentInnerPadding}}else ze.overlapTrigger||(We="top"===Yt?"bottom":"top",ve="top"===Ue?"bottom":"top");yt.withPositions([{originX:Bt,originY:We,overlayX:we,overlayY:Yt,offsetY:De},{originX:$t,originY:We,overlayX:at,overlayY:Yt,offsetY:De},{originX:Bt,originY:ve,overlayX:we,overlayY:Ue,offsetY:-De},{originX:$t,originY:ve,overlayX:at,overlayY:Ue,offsetY:-De}])}_menuClosingActions(){const ze=this._overlayRef.backdropClick(),yt=this._overlayRef.detachments(),Bt=this._parentMaterialMenu?this._parentMaterialMenu.closed:(0,c.of)(),$t=this._parentMaterialMenu?this._parentMaterialMenu._hovered().pipe((0,h.h)(Yt=>Yt!==this._menuItemInstance),(0,h.h)(()=>this._menuOpen)):(0,c.of)();return(0,v.T)(ze,Bt,$t,yt)}_handleMousedown(ze){(0,p.X6)(ze)||(this._openedBy=0===ze.button?"mouse":void 0,this.triggersSubmenu()&&ze.preventDefault())}_handleKeydown(ze){const yt=ze.keyCode;(yt===b.K5||yt===b.L_)&&(this._openedBy="keyboard"),this.triggersSubmenu()&&(yt===b.SV&&"ltr"===this.dir||yt===b.oh&&"rtl"===this.dir)&&(this._openedBy="keyboard",this.openMenu())}_handleClick(ze){this.triggersSubmenu()?(ze.stopPropagation(),this.openMenu()):this.toggleMenu()}_handleHover(){!this.triggersSubmenu()||!this._parentMaterialMenu||(this._hoverSubscription=this._parentMaterialMenu._hovered().pipe((0,h.h)(ze=>ze===this._menuItemInstance&&!ze.disabled),(0,m.g)(0,s.E)).subscribe(()=>{this._openedBy="mouse",this.menu instanceof $e&&this.menu._isAnimating?this.menu._animationDone.pipe((0,r.q)(1),(0,m.g)(0,s.E),(0,u.R)(this._parentMaterialMenu._hovered())).subscribe(()=>this.openMenu()):this.openMenu()}))}_getPortal(ze){return(!this._portal||this._portal.templateRef!==ze.templateRef)&&(this._portal=new x.UE(ze.templateRef,this._viewContainerRef)),this._portal}}return Dt.\u0275fac=function(ze){return new(ze||Dt)(n.\u0275\u0275directiveInject(A.aV),n.\u0275\u0275directiveInject(n.ElementRef),n.\u0275\u0275directiveInject(n.ViewContainerRef),n.\u0275\u0275directiveInject(Mt),n.\u0275\u0275directiveInject(S,8),n.\u0275\u0275directiveInject(F,10),n.\u0275\u0275directiveInject(L.Is,8),n.\u0275\u0275directiveInject(p.tE),n.\u0275\u0275directiveInject(n.NgZone))},Dt.\u0275dir=n.\u0275\u0275defineDirective({type:Dt,hostVars:3,hostBindings:function(ze,yt){1&ze&&n.\u0275\u0275listener("click",function($t){return yt._handleClick($t)})("mousedown",function($t){return yt._handleMousedown($t)})("keydown",function($t){return yt._handleKeydown($t)}),2&ze&&n.\u0275\u0275attribute("aria-haspopup",yt.menu?"menu":null)("aria-expanded",yt.menuOpen)("aria-controls",yt.menuOpen?yt.menu.panelId:null)},inputs:{_deprecatedMatMenuTriggerFor:["mat-menu-trigger-for","_deprecatedMatMenuTriggerFor"],menu:["matMenuTriggerFor","menu"],menuData:["matMenuTriggerData","menuData"],restoreFocus:["matMenuTriggerRestoreFocus","restoreFocus"]},outputs:{menuOpened:"menuOpened",onMenuOpen:"onMenuOpen",menuClosed:"menuClosed",onMenuClose:"onMenuClose"}}),Dt})();var rt=g(6672);function J(Dt,Kt){if(1&Dt){const ze=n.\u0275\u0275getCurrentView();n.\u0275\u0275elementStart(0,"div",0),n.\u0275\u0275listener("keydown",function(Bt){n.\u0275\u0275restoreView(ze);const $t=n.\u0275\u0275nextContext();return n.\u0275\u0275resetView($t._handleKeydown(Bt))})("click",function(){n.\u0275\u0275restoreView(ze);const Bt=n.\u0275\u0275nextContext();return n.\u0275\u0275resetView(Bt.closed.emit("click"))})("@transformMenu.start",function(Bt){n.\u0275\u0275restoreView(ze);const $t=n.\u0275\u0275nextContext();return n.\u0275\u0275resetView($t._onAnimationStart(Bt))})("@transformMenu.done",function(Bt){n.\u0275\u0275restoreView(ze);const $t=n.\u0275\u0275nextContext();return n.\u0275\u0275resetView($t._onAnimationDone(Bt))}),n.\u0275\u0275elementStart(1,"div",1),n.\u0275\u0275projection(2),n.\u0275\u0275elementEnd()()}if(2&Dt){const ze=n.\u0275\u0275nextContext();n.\u0275\u0275property("id",ze.panelId)("ngClass",ze._classList)("@transformMenu",ze._panelAnimationState),n.\u0275\u0275attribute("aria-label",ze.ariaLabel||null)("aria-labelledby",ze.ariaLabelledby||null)("aria-describedby",ze.ariaDescribedby||null)}}const Ce=["*"],ee=["mat-menu-item",""];function ae(Dt,Kt){1&Dt&&(n.\u0275\u0275namespaceSVG(),n.\u0275\u0275elementStart(0,"svg",2),n.\u0275\u0275element(1,"polygon",3),n.\u0275\u0275elementEnd())}let ie=(()=>{class Dt extends $e{constructor(ze,yt,Bt,$t){super(ze,yt,Bt,$t),this._elevationPrefix="mat-elevation-z",this._baseElevation=4}}return Dt.\u0275fac=function(ze){return new(ze||Dt)(n.\u0275\u0275directiveInject(n.ElementRef),n.\u0275\u0275directiveInject(n.NgZone),n.\u0275\u0275directiveInject(Xe),n.\u0275\u0275directiveInject(n.ChangeDetectorRef))},Dt.\u0275cmp=n.\u0275\u0275defineComponent({type:Dt,selectors:[["mat-menu"]],hostAttrs:["ngSkipHydration",""],hostVars:4,hostBindings:function(ze,yt){2&ze&&n.\u0275\u0275attribute("aria-label",null)("aria-labelledby",null)("aria-describedby",null)("mat-id-collision",null)},exportAs:["matMenu"],features:[n.\u0275\u0275ProvidersFeature([{provide:S,useExisting:Dt}]),n.\u0275\u0275InheritDefinitionFeature],ngContentSelectors:Ce,decls:1,vars:0,consts:[["tabindex","-1","role","menu",1,"mat-menu-panel",3,"id","ngClass","keydown","click"],[1,"mat-menu-content"]],template:function(ze,yt){1&ze&&(n.\u0275\u0275projectionDef(),n.\u0275\u0275template(0,J,3,6,"ng-template"))},dependencies:[M.NgClass],styles:['mat-menu{display:none}.mat-menu-panel{min-width:112px;max-width:280px;overflow:auto;-webkit-overflow-scrolling:touch;max-height:calc(100vh - 48px);border-radius:4px;outline:0;min-height:64px;position:relative}.mat-menu-panel.ng-animating{pointer-events:none}.cdk-high-contrast-active .mat-menu-panel{outline:solid 1px}.mat-menu-content:not(:empty){padding-top:8px;padding-bottom:8px}.mat-menu-item{-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:rgba(0,0,0,0);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;line-height:48px;height:48px;padding:0 16px;text-align:left;text-decoration:none;max-width:100%;position:relative}.mat-menu-item::-moz-focus-inner{border:0}.mat-menu-item[disabled]{cursor:default}[dir=rtl] .mat-menu-item{text-align:right}.mat-menu-item .mat-icon{margin-right:16px;vertical-align:middle}.mat-menu-item .mat-icon svg{vertical-align:top}[dir=rtl] .mat-menu-item .mat-icon{margin-left:16px;margin-right:0}.mat-menu-item[disabled]::after{display:block;position:absolute;content:"";top:0;left:0;bottom:0;right:0}.cdk-high-contrast-active .mat-menu-item{margin-top:1px}.mat-menu-item-submenu-trigger{padding-right:32px}[dir=rtl] .mat-menu-item-submenu-trigger{padding-right:16px;padding-left:32px}.mat-menu-submenu-icon{position:absolute;top:50%;right:16px;transform:translateY(-50%);width:5px;height:10px;fill:currentColor}[dir=rtl] .mat-menu-submenu-icon{right:auto;left:16px;transform:translateY(-50%) scaleX(-1)}.cdk-high-contrast-active .mat-menu-submenu-icon{fill:CanvasText}button.mat-menu-item{width:100%}.mat-menu-item .mat-menu-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}'],encapsulation:2,data:{animation:[Q.transformMenu,Q.fadeInItems]},changeDetection:0}),Dt})(),pe=(()=>{class Dt extends F{}return Dt.\u0275fac=function(){let Kt;return function(yt){return(Kt||(Kt=n.\u0275\u0275getInheritedFactory(Dt)))(yt||Dt)}}(),Dt.\u0275cmp=n.\u0275\u0275defineComponent({type:Dt,selectors:[["","mat-menu-item",""]],hostAttrs:[1,"mat-focus-indicator"],hostVars:20,hostBindings:function(ze,yt){2&ze&&(n.\u0275\u0275attribute("role",yt.role)("tabindex",yt._getTabIndex())("aria-disabled",yt.disabled.toString())("disabled",yt.disabled||null),n.\u0275\u0275classProp("mat-menu-item",!0)("mat-menu-item-highlighted",yt._highlighted)("mat-menu-item-submenu-trigger",yt._triggersSubmenu)("mat-mdc-menu-item",!1)("mat-mdc-focus-indicator",!1)("mdc-list-item",!1)("mat-mdc-menu-item-highlighted",!1)("mat-mdc-menu-item-submenu-trigger",!1))},inputs:{disabled:"disabled",disableRipple:"disableRipple"},exportAs:["matMenuItem"],features:[n.\u0275\u0275ProvidersFeature([{provide:F,useExisting:Dt}]),n.\u0275\u0275InheritDefinitionFeature],attrs:ee,ngContentSelectors:Ce,decls:3,vars:3,consts:[["matRipple","",1,"mat-menu-ripple",3,"matRippleDisabled","matRippleTrigger"],["class","mat-menu-submenu-icon","viewBox","0 0 5 10","focusable","false","aria-hidden","true",4,"ngIf"],["viewBox","0 0 5 10","focusable","false","aria-hidden","true",1,"mat-menu-submenu-icon"],["points","0,0 5,5 0,10"]],template:function(ze,yt){1&ze&&(n.\u0275\u0275projectionDef(),n.\u0275\u0275projection(0),n.\u0275\u0275element(1,"div",0),n.\u0275\u0275template(2,ae,2,0,"svg",1)),2&ze&&(n.\u0275\u0275advance(1),n.\u0275\u0275property("matRippleDisabled",yt.disableRipple||yt.disabled)("matRippleTrigger",yt._getHostElement()),n.\u0275\u0275advance(1),n.\u0275\u0275property("ngIf",yt._triggersSubmenu))},dependencies:[M.NgIf,_.MatRipple],encapsulation:2,changeDetection:0}),Dt})(),Te=(()=>{class Dt extends nt{}return Dt.\u0275fac=function(){let Kt;return function(yt){return(Kt||(Kt=n.\u0275\u0275getInheritedFactory(Dt)))(yt||Dt)}}(),Dt.\u0275dir=n.\u0275\u0275defineDirective({type:Dt,selectors:[["","mat-menu-trigger-for",""],["","matMenuTriggerFor",""]],hostAttrs:[1,"mat-menu-trigger"],exportAs:["matMenuTrigger"],features:[n.\u0275\u0275InheritDefinitionFeature]}),Dt})(),ct=(()=>{class Dt extends ${}return Dt.\u0275fac=function(){let Kt;return function(yt){return(Kt||(Kt=n.\u0275\u0275getInheritedFactory(Dt)))(yt||Dt)}}(),Dt.\u0275dir=n.\u0275\u0275defineDirective({type:Dt,selectors:[["ng-template","matMenuContent",""]],features:[n.\u0275\u0275ProvidersFeature([{provide:me,useExisting:Dt}]),n.\u0275\u0275InheritDefinitionFeature]}),Dt})(),Lt=(()=>{class Dt{}return Dt.\u0275fac=function(ze){return new(ze||Dt)},Dt.\u0275mod=n.\u0275\u0275defineNgModule({type:Dt}),Dt.\u0275inj=n.\u0275\u0275defineInjector({providers:[St],imports:[M.CommonModule,_.MatCommonModule,_.MatRippleModule,A.U8,rt.ZD,_.MatCommonModule]}),Dt})()},9559:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{LegacyPageEvent:()=>Ce,MAT_LEGACY_PAGINATOR_DEFAULT_OPTIONS:()=>Ue,MAT_LEGACY_PAGINATOR_INTL_PROVIDER:()=>rt,MAT_LEGACY_PAGINATOR_INTL_PROVIDER_FACTORY:()=>vt,MatLegacyPaginator:()=>We,MatLegacyPaginatorIntl:()=>ot,MatLegacyPaginatorModule:()=>ve,_MatLegacyPaginatorBase:()=>ie});var n=g(6814),p=g(5879),C=g(3680),b=g(4505),o=g(1798),v=g(9594),a=g(4300),c=g(6672),s=g(9388),l=g(1088),d=g(2831),r=g(9773),u=g(8180),h=g(2495),m=g(6028),_=g(8484),M=g(8645);g(6825);const T=new p.InjectionToken("mat-tooltip-scroll-strategy"),E={provide:T,deps:[v.aV],useFactory:function O(we){return()=>we.scrollStrategies.reposition({scrollThrottle:20})}},R=new p.InjectionToken("mat-tooltip-default-options",{providedIn:"root",factory:function D(){return{showDelay:0,hideDelay:0,touchendHideDelay:1500}}}),N="tooltip-panel",S=(0,d.i$)({passive:!0});let me=(()=>{class we{get position(){return this._position}set position(De){De!==this._position&&(this._position=De,this._overlayRef&&(this._updatePosition(this._overlayRef),this._tooltipInstance?.show(0),this._overlayRef.updatePosition()))}get positionAtOrigin(){return this._positionAtOrigin}set positionAtOrigin(De){this._positionAtOrigin=(0,h.Ig)(De),this._detach(),this._overlayRef=null}get disabled(){return this._disabled}set disabled(De){this._disabled=(0,h.Ig)(De),this._disabled?this.hide(0):this._setupPointerEnterEventsIfNeeded()}get showDelay(){return this._showDelay}set showDelay(De){this._showDelay=(0,h.su)(De)}get hideDelay(){return this._hideDelay}set hideDelay(De){this._hideDelay=(0,h.su)(De),this._tooltipInstance&&(this._tooltipInstance._mouseLeaveHideDelay=this._hideDelay)}get message(){return this._message}set message(De){this._ariaDescriber.removeDescription(this._elementRef.nativeElement,this._message,"tooltip"),this._message=null!=De?String(De).trim():"",!this._message&&this._isTooltipVisible()?this.hide(0):(this._setupPointerEnterEventsIfNeeded(),this._updateTooltipMessage(),this._ngZone.runOutsideAngular(()=>{Promise.resolve().then(()=>{this._ariaDescriber.describe(this._elementRef.nativeElement,this.message,"tooltip")})}))}get tooltipClass(){return this._tooltipClass}set tooltipClass(De){this._tooltipClass=De,this._tooltipInstance&&this._setTooltipClass(this._tooltipClass)}constructor(De,je,ke,Z,re,ce,Ee,it,Rt,Ye,qe,Ne){this._overlay=De,this._elementRef=je,this._scrollDispatcher=ke,this._viewContainerRef=Z,this._ngZone=re,this._platform=ce,this._ariaDescriber=Ee,this._focusMonitor=it,this._dir=Ye,this._defaultOptions=qe,this._position="below",this._positionAtOrigin=!1,this._disabled=!1,this._viewInitialized=!1,this._pointerExitEventsInitialized=!1,this._viewportMargin=8,this._cssClassPrefix="mat",this.touchGestures="auto",this._message="",this._passiveListeners=[],this._destroyed=new M.x,this._scrollStrategy=Rt,this._document=Ne,qe&&(this._showDelay=qe.showDelay,this._hideDelay=qe.hideDelay,qe.position&&(this.position=qe.position),qe.positionAtOrigin&&(this.positionAtOrigin=qe.positionAtOrigin),qe.touchGestures&&(this.touchGestures=qe.touchGestures)),Ye.change.pipe((0,r.R)(this._destroyed)).subscribe(()=>{this._overlayRef&&this._updatePosition(this._overlayRef)})}ngAfterViewInit(){this._viewInitialized=!0,this._setupPointerEnterEventsIfNeeded(),this._focusMonitor.monitor(this._elementRef).pipe((0,r.R)(this._destroyed)).subscribe(De=>{De?"keyboard"===De&&this._ngZone.run(()=>this.show()):this._ngZone.run(()=>this.hide(0))})}ngOnDestroy(){const De=this._elementRef.nativeElement;clearTimeout(this._touchstartTimeout),this._overlayRef&&(this._overlayRef.dispose(),this._tooltipInstance=null),this._passiveListeners.forEach(([je,ke])=>{De.removeEventListener(je,ke,S)}),this._passiveListeners.length=0,this._destroyed.next(),this._destroyed.complete(),this._ariaDescriber.removeDescription(De,this.message,"tooltip"),this._focusMonitor.stopMonitoring(De)}show(De=this.showDelay,je){if(this.disabled||!this.message||this._isTooltipVisible())return void this._tooltipInstance?._cancelPendingAnimations();const ke=this._createOverlay(je);this._detach(),this._portal=this._portal||new _.C5(this._tooltipComponent,this._viewContainerRef);const Z=this._tooltipInstance=ke.attach(this._portal).instance;Z._triggerElement=this._elementRef.nativeElement,Z._mouseLeaveHideDelay=this._hideDelay,Z.afterHidden().pipe((0,r.R)(this._destroyed)).subscribe(()=>this._detach()),this._setTooltipClass(this._tooltipClass),this._updateTooltipMessage(),Z.show(De)}hide(De=this.hideDelay){const je=this._tooltipInstance;je&&(je.isVisible()?je.hide(De):(je._cancelPendingAnimations(),this._detach()))}toggle(De){this._isTooltipVisible()?this.hide():this.show(void 0,De)}_isTooltipVisible(){return!!this._tooltipInstance&&this._tooltipInstance.isVisible()}_createOverlay(De){if(this._overlayRef){const Z=this._overlayRef.getConfig().positionStrategy;if((!this.positionAtOrigin||!De)&&Z._origin instanceof p.ElementRef)return this._overlayRef;this._detach()}const je=this._scrollDispatcher.getAncestorScrollContainers(this._elementRef),ke=this._overlay.position().flexibleConnectedTo(this.positionAtOrigin&&De||this._elementRef).withTransformOriginOn(`.${this._cssClassPrefix}-tooltip`).withFlexibleDimensions(!1).withViewportMargin(this._viewportMargin).withScrollableContainers(je);return ke.positionChanges.pipe((0,r.R)(this._destroyed)).subscribe(Z=>{this._updateCurrentPositionClass(Z.connectionPair),this._tooltipInstance&&Z.scrollableViewProperties.isOverlayClipped&&this._tooltipInstance.isVisible()&&this._ngZone.run(()=>this.hide(0))}),this._overlayRef=this._overlay.create({direction:this._dir,positionStrategy:ke,panelClass:`${this._cssClassPrefix}-${N}`,scrollStrategy:this._scrollStrategy()}),this._updatePosition(this._overlayRef),this._overlayRef.detachments().pipe((0,r.R)(this._destroyed)).subscribe(()=>this._detach()),this._overlayRef.outsidePointerEvents().pipe((0,r.R)(this._destroyed)).subscribe(()=>this._tooltipInstance?._handleBodyInteraction()),this._overlayRef.keydownEvents().pipe((0,r.R)(this._destroyed)).subscribe(Z=>{this._isTooltipVisible()&&Z.keyCode===m.hY&&!(0,m.Vb)(Z)&&(Z.preventDefault(),Z.stopPropagation(),this._ngZone.run(()=>this.hide(0)))}),this._defaultOptions?.disableTooltipInteractivity&&this._overlayRef.addPanelClass(`${this._cssClassPrefix}-tooltip-panel-non-interactive`),this._overlayRef}_detach(){this._overlayRef&&this._overlayRef.hasAttached()&&this._overlayRef.detach(),this._tooltipInstance=null}_updatePosition(De){const je=De.getConfig().positionStrategy,ke=this._getOrigin(),Z=this._getOverlayPosition();je.withPositions([this._addOffset({...ke.main,...Z.main}),this._addOffset({...ke.fallback,...Z.fallback})])}_addOffset(De){return De}_getOrigin(){const De=!this._dir||"ltr"==this._dir.value,je=this.position;let ke;"above"==je||"below"==je?ke={originX:"center",originY:"above"==je?"top":"bottom"}:"before"==je||"left"==je&&De||"right"==je&&!De?ke={originX:"start",originY:"center"}:("after"==je||"right"==je&&De||"left"==je&&!De)&&(ke={originX:"end",originY:"center"});const{x:Z,y:re}=this._invertPosition(ke.originX,ke.originY);return{main:ke,fallback:{originX:Z,originY:re}}}_getOverlayPosition(){const De=!this._dir||"ltr"==this._dir.value,je=this.position;let ke;"above"==je?ke={overlayX:"center",overlayY:"bottom"}:"below"==je?ke={overlayX:"center",overlayY:"top"}:"before"==je||"left"==je&&De||"right"==je&&!De?ke={overlayX:"end",overlayY:"center"}:("after"==je||"right"==je&&De||"left"==je&&!De)&&(ke={overlayX:"start",overlayY:"center"});const{x:Z,y:re}=this._invertPosition(ke.overlayX,ke.overlayY);return{main:ke,fallback:{overlayX:Z,overlayY:re}}}_updateTooltipMessage(){this._tooltipInstance&&(this._tooltipInstance.message=this.message,this._tooltipInstance._markForCheck(),this._ngZone.onMicrotaskEmpty.pipe((0,u.q)(1),(0,r.R)(this._destroyed)).subscribe(()=>{this._tooltipInstance&&this._overlayRef.updatePosition()}))}_setTooltipClass(De){this._tooltipInstance&&(this._tooltipInstance.tooltipClass=De,this._tooltipInstance._markForCheck())}_invertPosition(De,je){return"above"===this.position||"below"===this.position?"top"===je?je="bottom":"bottom"===je&&(je="top"):"end"===De?De="start":"start"===De&&(De="end"),{x:De,y:je}}_updateCurrentPositionClass(De){const{overlayY:je,originX:ke,originY:Z}=De;let re;if(re="center"===je?this._dir&&"rtl"===this._dir.value?"end"===ke?"left":"right":"start"===ke?"left":"right":"bottom"===je&&"top"===Z?"above":"below",re!==this._currentPosition){const ce=this._overlayRef;if(ce){const Ee=`${this._cssClassPrefix}-${N}-`;ce.removePanelClass(Ee+this._currentPosition),ce.addPanelClass(Ee+re)}this._currentPosition=re}}_setupPointerEnterEventsIfNeeded(){this._disabled||!this.message||!this._viewInitialized||this._passiveListeners.length||(this._platformSupportsMouseEvents()?this._passiveListeners.push(["mouseenter",De=>{let je;this._setupPointerExitEventsIfNeeded(),void 0!==De.x&&void 0!==De.y&&(je=De),this.show(void 0,je)}]):"off"!==this.touchGestures&&(this._disableNativeGesturesIfNecessary(),this._passiveListeners.push(["touchstart",De=>{const je=De.targetTouches?.[0],ke=je?{x:je.clientX,y:je.clientY}:void 0;this._setupPointerExitEventsIfNeeded(),clearTimeout(this._touchstartTimeout),this._touchstartTimeout=setTimeout(()=>this.show(void 0,ke),500)}])),this._addListeners(this._passiveListeners))}_setupPointerExitEventsIfNeeded(){if(this._pointerExitEventsInitialized)return;this._pointerExitEventsInitialized=!0;const De=[];if(this._platformSupportsMouseEvents())De.push(["mouseleave",je=>{const ke=je.relatedTarget;(!ke||!this._overlayRef?.overlayElement.contains(ke))&&this.hide()}],["wheel",je=>this._wheelListener(je)]);else if("off"!==this.touchGestures){this._disableNativeGesturesIfNecessary();const je=()=>{clearTimeout(this._touchstartTimeout),this.hide(this._defaultOptions.touchendHideDelay)};De.push(["touchend",je],["touchcancel",je])}this._addListeners(De),this._passiveListeners.push(...De)}_addListeners(De){De.forEach(([je,ke])=>{this._elementRef.nativeElement.addEventListener(je,ke,S)})}_platformSupportsMouseEvents(){return!this._platform.IOS&&!this._platform.ANDROID}_wheelListener(De){if(this._isTooltipVisible()){const je=this._document.elementFromPoint(De.clientX,De.clientY),ke=this._elementRef.nativeElement;je!==ke&&!ke.contains(je)&&this.hide()}}_disableNativeGesturesIfNecessary(){const De=this.touchGestures;if("off"!==De){const je=this._elementRef.nativeElement,ke=je.style;("on"===De||"INPUT"!==je.nodeName&&"TEXTAREA"!==je.nodeName)&&(ke.userSelect=ke.msUserSelect=ke.webkitUserSelect=ke.MozUserSelect="none"),("on"===De||!je.draggable)&&(ke.webkitUserDrag="none"),ke.touchAction="none",ke.webkitTapHighlightColor="transparent"}}}return we.\u0275fac=function(De){p.\u0275\u0275invalidFactory()},we.\u0275dir=p.\u0275\u0275defineDirective({type:we,inputs:{position:["matTooltipPosition","position"],positionAtOrigin:["matTooltipPositionAtOrigin","positionAtOrigin"],disabled:["matTooltipDisabled","disabled"],showDelay:["matTooltipShowDelay","showDelay"],hideDelay:["matTooltipHideDelay","hideDelay"],touchGestures:["matTooltipTouchGestures","touchGestures"],message:["matTooltip","message"],tooltipClass:["matTooltipClass","tooltipClass"]}}),we})(),q=(()=>{class we{constructor(De,je){this._changeDetectorRef=De,this._closeOnInteraction=!1,this._isVisible=!1,this._onHide=new M.x,this._animationsDisabled="NoopAnimations"===je}show(De){null!=this._hideTimeoutId&&clearTimeout(this._hideTimeoutId),this._showTimeoutId=setTimeout(()=>{this._toggleVisibility(!0),this._showTimeoutId=void 0},De)}hide(De){null!=this._showTimeoutId&&clearTimeout(this._showTimeoutId),this._hideTimeoutId=setTimeout(()=>{this._toggleVisibility(!1),this._hideTimeoutId=void 0},De)}afterHidden(){return this._onHide}isVisible(){return this._isVisible}ngOnDestroy(){this._cancelPendingAnimations(),this._onHide.complete(),this._triggerElement=null}_handleBodyInteraction(){this._closeOnInteraction&&this.hide(0)}_markForCheck(){this._changeDetectorRef.markForCheck()}_handleMouseLeave({relatedTarget:De}){(!De||!this._triggerElement.contains(De))&&(this.isVisible()?this.hide(this._mouseLeaveHideDelay):this._finalizeAnimation(!1))}_onShow(){}_handleAnimationEnd({animationName:De}){(De===this._showAnimation||De===this._hideAnimation)&&this._finalizeAnimation(De===this._showAnimation)}_cancelPendingAnimations(){null!=this._showTimeoutId&&clearTimeout(this._showTimeoutId),null!=this._hideTimeoutId&&clearTimeout(this._hideTimeoutId),this._showTimeoutId=this._hideTimeoutId=void 0}_finalizeAnimation(De){De?this._closeOnInteraction=!0:this.isVisible()||this._onHide.next()}_toggleVisibility(De){const je=this._tooltip.nativeElement,ke=this._showAnimation,Z=this._hideAnimation;if(je.classList.remove(De?Z:ke),je.classList.add(De?ke:Z),this._isVisible=De,De&&!this._animationsDisabled&&"function"==typeof getComputedStyle){const re=getComputedStyle(je);("0s"===re.getPropertyValue("animation-duration")||"none"===re.getPropertyValue("animation-name"))&&(this._animationsDisabled=!0)}De&&this._onShow(),this._animationsDisabled&&(je.classList.add("_mat-animation-noopable"),this._finalizeAnimation(De))}}return we.\u0275fac=function(De){return new(De||we)(p.\u0275\u0275directiveInject(p.ChangeDetectorRef),p.\u0275\u0275directiveInject(p.ANIMATION_MODULE_TYPE,8))},we.\u0275dir=p.\u0275\u0275defineDirective({type:we}),we})();const Oe=["tooltip"];let Xe=(()=>{class we extends me{constructor(De,je,ke,Z,re,ce,Ee,it,Rt,Ye,qe,Ne){super(De,je,ke,Z,re,ce,Ee,it,Rt,Ye,qe,Ne),this._tooltipComponent=Be}}return we.\u0275fac=function(De){return new(De||we)(p.\u0275\u0275directiveInject(v.aV),p.\u0275\u0275directiveInject(p.ElementRef),p.\u0275\u0275directiveInject(c.mF),p.\u0275\u0275directiveInject(p.ViewContainerRef),p.\u0275\u0275directiveInject(p.NgZone),p.\u0275\u0275directiveInject(d.t4),p.\u0275\u0275directiveInject(a.$s),p.\u0275\u0275directiveInject(a.tE),p.\u0275\u0275directiveInject(T),p.\u0275\u0275directiveInject(s.Is,8),p.\u0275\u0275directiveInject(R,8),p.\u0275\u0275directiveInject(n.DOCUMENT))},we.\u0275dir=p.\u0275\u0275defineDirective({type:we,selectors:[["","matTooltip",""]],hostAttrs:[1,"mat-tooltip-trigger"],hostVars:2,hostBindings:function(De,je){2&De&&p.\u0275\u0275classProp("mat-tooltip-disabled",je.disabled)},exportAs:["matTooltip"],features:[p.\u0275\u0275InheritDefinitionFeature]}),we})(),Be=(()=>{class we extends q{constructor(De,je,ke){super(De,ke),this._showAnimation="mat-tooltip-show",this._hideAnimation="mat-tooltip-hide",this._isHandset=je.observe(l.u3.Handset)}}return we.\u0275fac=function(De){return new(De||we)(p.\u0275\u0275directiveInject(p.ChangeDetectorRef),p.\u0275\u0275directiveInject(l.Yg),p.\u0275\u0275directiveInject(p.ANIMATION_MODULE_TYPE,8))},we.\u0275cmp=p.\u0275\u0275defineComponent({type:we,selectors:[["mat-tooltip-component"]],viewQuery:function(De,je){if(1&De&&p.\u0275\u0275viewQuery(Oe,7),2&De){let ke;p.\u0275\u0275queryRefresh(ke=p.\u0275\u0275loadQuery())&&(je._tooltip=ke.first)}},hostAttrs:["aria-hidden","true"],hostVars:3,hostBindings:function(De,je){1&De&&p.\u0275\u0275listener("mouseleave",function(Z){return je._handleMouseLeave(Z)}),2&De&&(p.\u0275\u0275attribute("mat-id-collision",null),p.\u0275\u0275styleProp("zoom",je.isVisible()?1:null))},features:[p.\u0275\u0275InheritDefinitionFeature],decls:4,vars:6,consts:[[1,"mat-tooltip",3,"ngClass","animationend"],["tooltip",""]],template:function(De,je){if(1&De&&(p.\u0275\u0275elementStart(0,"div",0,1),p.\u0275\u0275listener("animationend",function(Z){return je._handleAnimationEnd(Z)}),p.\u0275\u0275pipe(2,"async"),p.\u0275\u0275text(3),p.\u0275\u0275elementEnd()),2&De){let ke;p.\u0275\u0275classProp("mat-tooltip-handset",null==(ke=p.\u0275\u0275pipeBind1(2,4,je._isHandset))?null:ke.matches),p.\u0275\u0275property("ngClass",je.tooltipClass),p.\u0275\u0275advance(3),p.\u0275\u0275textInterpolate(je.message)}},dependencies:[n.NgClass,n.AsyncPipe],styles:[".mat-tooltip{color:#fff;border-radius:4px;margin:14px;max-width:250px;padding-left:8px;padding-right:8px;overflow:hidden;text-overflow:ellipsis;transform:scale(0)}.mat-tooltip._mat-animation-noopable{animation:none;transform:scale(1)}.cdk-high-contrast-active .mat-tooltip{outline:solid 1px}.mat-tooltip-handset{margin:24px;padding-left:16px;padding-right:16px}.mat-tooltip-panel-non-interactive{pointer-events:none}@keyframes mat-tooltip-show{0%{opacity:0;transform:scale(0)}50%{opacity:.5;transform:scale(0.99)}100%{opacity:1;transform:scale(1)}}@keyframes mat-tooltip-hide{0%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(1)}}.mat-tooltip-show{animation:mat-tooltip-show 200ms cubic-bezier(0, 0, 0.2, 1) forwards}.mat-tooltip-hide{animation:mat-tooltip-hide 100ms cubic-bezier(0, 0, 0.2, 1) forwards}"],encapsulation:2,changeDetection:0}),we})(),$e=(()=>{class we{}return we.\u0275fac=function(De){return new(De||we)},we.\u0275mod=p.\u0275\u0275defineNgModule({type:we}),we.\u0275inj=p.\u0275\u0275defineInjector({providers:[E],imports:[a.rt,n.CommonModule,v.U8,C.MatCommonModule,C.MatCommonModule,c.ZD]}),we})(),ot=(()=>{class we{constructor(){this.changes=new M.x,this.itemsPerPageLabel="Items per page:",this.nextPageLabel="Next page",this.previousPageLabel="Previous page",this.firstPageLabel="First page",this.lastPageLabel="Last page",this.getRangeLabel=(De,je,ke)=>{if(0==ke||0==je)return`0 of ${ke}`;const Z=De*je;return`${Z+1} \u2013 ${Z<(ke=Math.max(ke,0))?Math.min(Z+je,ke):Z+je} of ${ke}`}}}return we.\u0275fac=function(De){return new(De||we)},we.\u0275prov=p.\u0275\u0275defineInjectable({token:we,factory:we.\u0275fac,providedIn:"root"}),we})();function vt(we){return we||new ot}const rt={provide:ot,deps:[[new p.Optional,new p.SkipSelf,ot]],useFactory:vt};class Ce{}const ae=(0,C.mixinDisabled)((0,C.mixinInitialized)(class{}));let ie=(()=>{class we extends ae{get pageIndex(){return this._pageIndex}set pageIndex(De){this._pageIndex=Math.max((0,h.su)(De),0),this._changeDetectorRef.markForCheck()}get length(){return this._length}set length(De){this._length=(0,h.su)(De),this._changeDetectorRef.markForCheck()}get pageSize(){return this._pageSize}set pageSize(De){this._pageSize=Math.max((0,h.su)(De),0),this._updateDisplayedPageSizeOptions()}get pageSizeOptions(){return this._pageSizeOptions}set pageSizeOptions(De){this._pageSizeOptions=(De||[]).map(je=>(0,h.su)(je)),this._updateDisplayedPageSizeOptions()}get hidePageSize(){return this._hidePageSize}set hidePageSize(De){this._hidePageSize=(0,h.Ig)(De)}get showFirstLastButtons(){return this._showFirstLastButtons}set showFirstLastButtons(De){this._showFirstLastButtons=(0,h.Ig)(De)}constructor(De,je,ke){if(super(),this._intl=De,this._changeDetectorRef=je,this._pageIndex=0,this._length=0,this._pageSizeOptions=[],this._hidePageSize=!1,this._showFirstLastButtons=!1,this.selectConfig={},this.page=new p.EventEmitter,this._intlChanges=De.changes.subscribe(()=>this._changeDetectorRef.markForCheck()),ke){const{pageSize:Z,pageSizeOptions:re,hidePageSize:ce,showFirstLastButtons:Ee}=ke;null!=Z&&(this._pageSize=Z),null!=re&&(this._pageSizeOptions=re),null!=ce&&(this._hidePageSize=ce),null!=Ee&&(this._showFirstLastButtons=Ee)}}ngOnInit(){this._initialized=!0,this._updateDisplayedPageSizeOptions(),this._markInitialized()}ngOnDestroy(){this._intlChanges.unsubscribe()}nextPage(){if(!this.hasNextPage())return;const De=this.pageIndex;this.pageIndex=this.pageIndex+1,this._emitPageEvent(De)}previousPage(){if(!this.hasPreviousPage())return;const De=this.pageIndex;this.pageIndex=this.pageIndex-1,this._emitPageEvent(De)}firstPage(){if(!this.hasPreviousPage())return;const De=this.pageIndex;this.pageIndex=0,this._emitPageEvent(De)}lastPage(){if(!this.hasNextPage())return;const De=this.pageIndex;this.pageIndex=this.getNumberOfPages()-1,this._emitPageEvent(De)}hasPreviousPage(){return this.pageIndex>=1&&0!=this.pageSize}hasNextPage(){const De=this.getNumberOfPages()-1;return this.pageIndexDe-je),this._changeDetectorRef.markForCheck())}_emitPageEvent(De){this.page.emit({previousPageIndex:De,pageIndex:this.pageIndex,pageSize:this.pageSize,length:this.length})}}return we.\u0275fac=function(De){p.\u0275\u0275invalidFactory()},we.\u0275dir=p.\u0275\u0275defineDirective({type:we,inputs:{color:"color",pageIndex:"pageIndex",length:"length",pageSize:"pageSize",pageSizeOptions:"pageSizeOptions",hidePageSize:"hidePageSize",showFirstLastButtons:"showFirstLastButtons",selectConfig:"selectConfig"},outputs:{page:"page"},features:[p.\u0275\u0275InheritDefinitionFeature]}),we})();var Lt=g(4187),Dt=g(4678);function Kt(we,at){if(1&we&&(p.\u0275\u0275elementStart(0,"mat-option",19),p.\u0275\u0275text(1),p.\u0275\u0275elementEnd()),2&we){const De=at.$implicit;p.\u0275\u0275property("value",De),p.\u0275\u0275advance(1),p.\u0275\u0275textInterpolate1(" ",De," ")}}function ze(we,at){if(1&we){const De=p.\u0275\u0275getCurrentView();p.\u0275\u0275elementStart(0,"mat-form-field",16)(1,"mat-select",17),p.\u0275\u0275listener("selectionChange",function(ke){p.\u0275\u0275restoreView(De);const Z=p.\u0275\u0275nextContext(2);return p.\u0275\u0275resetView(Z._changePageSize(ke.value))}),p.\u0275\u0275template(2,Kt,2,2,"mat-option",18),p.\u0275\u0275elementEnd()()}if(2&we){const De=p.\u0275\u0275nextContext(2);p.\u0275\u0275property("appearance",De._formFieldAppearance)("color",De.color),p.\u0275\u0275advance(1),p.\u0275\u0275property("value",De.pageSize)("disabled",De.disabled)("panelClass",De.selectConfig.panelClass||"")("disableOptionCentering",De.selectConfig.disableOptionCentering)("aria-label",De._intl.itemsPerPageLabel),p.\u0275\u0275advance(1),p.\u0275\u0275property("ngForOf",De._displayedPageSizeOptions)}}function yt(we,at){if(1&we&&(p.\u0275\u0275elementStart(0,"div",20),p.\u0275\u0275text(1),p.\u0275\u0275elementEnd()),2&we){const De=p.\u0275\u0275nextContext(2);p.\u0275\u0275advance(1),p.\u0275\u0275textInterpolate(De.pageSize)}}function Bt(we,at){if(1&we&&(p.\u0275\u0275elementStart(0,"div",12)(1,"div",13),p.\u0275\u0275text(2),p.\u0275\u0275elementEnd(),p.\u0275\u0275template(3,ze,3,8,"mat-form-field",14),p.\u0275\u0275template(4,yt,2,1,"div",15),p.\u0275\u0275elementEnd()),2&we){const De=p.\u0275\u0275nextContext();p.\u0275\u0275advance(2),p.\u0275\u0275textInterpolate1(" ",De._intl.itemsPerPageLabel," "),p.\u0275\u0275advance(1),p.\u0275\u0275property("ngIf",De._displayedPageSizeOptions.length>1),p.\u0275\u0275advance(1),p.\u0275\u0275property("ngIf",De._displayedPageSizeOptions.length<=1)}}function $t(we,at){if(1&we){const De=p.\u0275\u0275getCurrentView();p.\u0275\u0275elementStart(0,"button",21),p.\u0275\u0275listener("click",function(){p.\u0275\u0275restoreView(De);const ke=p.\u0275\u0275nextContext();return p.\u0275\u0275resetView(ke.firstPage())}),p.\u0275\u0275namespaceSVG(),p.\u0275\u0275elementStart(1,"svg",7),p.\u0275\u0275element(2,"path",22),p.\u0275\u0275elementEnd()()}if(2&we){const De=p.\u0275\u0275nextContext();p.\u0275\u0275property("matTooltip",De._intl.firstPageLabel)("matTooltipDisabled",De._previousButtonsDisabled())("matTooltipPosition","above")("disabled",De._previousButtonsDisabled()),p.\u0275\u0275attribute("aria-label",De._intl.firstPageLabel)}}function Yt(we,at){if(1&we){const De=p.\u0275\u0275getCurrentView();p.\u0275\u0275namespaceSVG(),p.\u0275\u0275namespaceHTML(),p.\u0275\u0275elementStart(0,"button",23),p.\u0275\u0275listener("click",function(){p.\u0275\u0275restoreView(De);const ke=p.\u0275\u0275nextContext();return p.\u0275\u0275resetView(ke.lastPage())}),p.\u0275\u0275namespaceSVG(),p.\u0275\u0275elementStart(1,"svg",7),p.\u0275\u0275element(2,"path",24),p.\u0275\u0275elementEnd()()}if(2&we){const De=p.\u0275\u0275nextContext();p.\u0275\u0275property("matTooltip",De._intl.lastPageLabel)("matTooltipDisabled",De._nextButtonsDisabled())("matTooltipPosition","above")("disabled",De._nextButtonsDisabled()),p.\u0275\u0275attribute("aria-label",De._intl.lastPageLabel)}}const Ue=new p.InjectionToken("MAT_LEGACY_PAGINATOR_DEFAULT_OPTIONS");let We=(()=>{class we extends ie{constructor(De,je,ke){super(De,je,ke),ke&&null!=ke.formFieldAppearance&&(this._formFieldAppearance=ke.formFieldAppearance)}}return we.\u0275fac=function(De){return new(De||we)(p.\u0275\u0275directiveInject(ot),p.\u0275\u0275directiveInject(p.ChangeDetectorRef),p.\u0275\u0275directiveInject(Ue,8))},we.\u0275cmp=p.\u0275\u0275defineComponent({type:we,selectors:[["mat-paginator"]],hostAttrs:["role","group",1,"mat-paginator"],inputs:{disabled:"disabled"},exportAs:["matPaginator"],features:[p.\u0275\u0275InheritDefinitionFeature],decls:14,vars:14,consts:[[1,"mat-paginator-outer-container"],[1,"mat-paginator-container"],["class","mat-paginator-page-size",4,"ngIf"],[1,"mat-paginator-range-actions"],[1,"mat-paginator-range-label"],["mat-icon-button","","type","button","class","mat-paginator-navigation-first",3,"matTooltip","matTooltipDisabled","matTooltipPosition","disabled","click",4,"ngIf"],["mat-icon-button","","type","button",1,"mat-paginator-navigation-previous",3,"matTooltip","matTooltipDisabled","matTooltipPosition","disabled","click"],["viewBox","0 0 24 24","focusable","false","aria-hidden","true",1,"mat-paginator-icon"],["d","M15.41 7.41L14 6l-6 6 6 6 1.41-1.41L10.83 12z"],["mat-icon-button","","type","button",1,"mat-paginator-navigation-next",3,"matTooltip","matTooltipDisabled","matTooltipPosition","disabled","click"],["d","M10 6L8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"],["mat-icon-button","","type","button","class","mat-paginator-navigation-last",3,"matTooltip","matTooltipDisabled","matTooltipPosition","disabled","click",4,"ngIf"],[1,"mat-paginator-page-size"],[1,"mat-paginator-page-size-label"],["class","mat-paginator-page-size-select",3,"appearance","color",4,"ngIf"],["class","mat-paginator-page-size-value",4,"ngIf"],[1,"mat-paginator-page-size-select",3,"appearance","color"],[3,"value","disabled","panelClass","disableOptionCentering","aria-label","selectionChange"],[3,"value",4,"ngFor","ngForOf"],[3,"value"],[1,"mat-paginator-page-size-value"],["mat-icon-button","","type","button",1,"mat-paginator-navigation-first",3,"matTooltip","matTooltipDisabled","matTooltipPosition","disabled","click"],["d","M18.41 16.59L13.82 12l4.59-4.59L17 6l-6 6 6 6zM6 6h2v12H6z"],["mat-icon-button","","type","button",1,"mat-paginator-navigation-last",3,"matTooltip","matTooltipDisabled","matTooltipPosition","disabled","click"],["d","M5.59 7.41L10.18 12l-4.59 4.59L7 18l6-6-6-6zM16 6h2v12h-2z"]],template:function(De,je){1&De&&(p.\u0275\u0275elementStart(0,"div",0)(1,"div",1),p.\u0275\u0275template(2,Bt,5,3,"div",2),p.\u0275\u0275elementStart(3,"div",3)(4,"div",4),p.\u0275\u0275text(5),p.\u0275\u0275elementEnd(),p.\u0275\u0275template(6,$t,3,5,"button",5),p.\u0275\u0275elementStart(7,"button",6),p.\u0275\u0275listener("click",function(){return je.previousPage()}),p.\u0275\u0275namespaceSVG(),p.\u0275\u0275elementStart(8,"svg",7),p.\u0275\u0275element(9,"path",8),p.\u0275\u0275elementEnd()(),p.\u0275\u0275namespaceHTML(),p.\u0275\u0275elementStart(10,"button",9),p.\u0275\u0275listener("click",function(){return je.nextPage()}),p.\u0275\u0275namespaceSVG(),p.\u0275\u0275elementStart(11,"svg",7),p.\u0275\u0275element(12,"path",10),p.\u0275\u0275elementEnd()(),p.\u0275\u0275template(13,Yt,3,5,"button",11),p.\u0275\u0275elementEnd()()()),2&De&&(p.\u0275\u0275advance(2),p.\u0275\u0275property("ngIf",!je.hidePageSize),p.\u0275\u0275advance(3),p.\u0275\u0275textInterpolate1(" ",je._intl.getRangeLabel(je.pageIndex,je.pageSize,je.length)," "),p.\u0275\u0275advance(1),p.\u0275\u0275property("ngIf",je.showFirstLastButtons),p.\u0275\u0275advance(1),p.\u0275\u0275property("matTooltip",je._intl.previousPageLabel)("matTooltipDisabled",je._previousButtonsDisabled())("matTooltipPosition","above")("disabled",je._previousButtonsDisabled()),p.\u0275\u0275attribute("aria-label",je._intl.previousPageLabel),p.\u0275\u0275advance(3),p.\u0275\u0275property("matTooltip",je._intl.nextPageLabel)("matTooltipDisabled",je._nextButtonsDisabled())("matTooltipPosition","above")("disabled",je._nextButtonsDisabled()),p.\u0275\u0275attribute("aria-label",je._intl.nextPageLabel),p.\u0275\u0275advance(3),p.\u0275\u0275property("ngIf",je.showFirstLastButtons))},dependencies:[n.NgForOf,n.NgIf,b.MatLegacyButton,Lt.MatLegacyFormField,o.MatLegacySelect,Dt.MatLegacyOption,Xe],styles:[".mat-paginator{display:block}.mat-paginator-outer-container{display:flex}.mat-paginator-container{display:flex;align-items:center;justify-content:flex-end;padding:0 8px;flex-wrap:wrap-reverse;width:100%}.mat-paginator-page-size{display:flex;align-items:baseline;margin-right:8px}[dir=rtl] .mat-paginator-page-size{margin-right:0;margin-left:8px}.mat-paginator-page-size-label{margin:0 4px}.mat-paginator-page-size-select{margin:6px 4px 0 4px;width:56px}.mat-paginator-page-size-select.mat-form-field-appearance-outline{width:64px}.mat-paginator-page-size-select.mat-form-field-appearance-fill{width:64px}.mat-paginator-range-label{margin:0 32px 0 24px}.mat-paginator-range-actions{display:flex;align-items:center}.mat-paginator-icon{display:inline-block;width:28px;fill:currentColor}[dir=rtl] .mat-paginator-icon{transform:rotate(180deg)}.cdk-high-contrast-active .mat-paginator-icon{fill:CanvasText}"],encapsulation:2,changeDetection:0}),we})(),ve=(()=>{class we{}return we.\u0275fac=function(De){return new(De||we)},we.\u0275mod=p.\u0275\u0275defineNgModule({type:we}),we.\u0275inj=p.\u0275\u0275defineInjector({providers:[rt],imports:[n.CommonModule,b.MatLegacyButtonModule,o.MatLegacySelectModule,$e,C.MatCommonModule]}),we})()},1438:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{MAT_LEGACY_PROGRESS_SPINNER_DEFAULT_OPTIONS:()=>l,MAT_LEGACY_PROGRESS_SPINNER_DEFAULT_OPTIONS_FACTORY:()=>d,MatLegacyProgressSpinner:()=>E,MatLegacyProgressSpinnerModule:()=>D,MatLegacySpinner:()=>R});var n=g(2495),p=g(2831),C=g(6672),b=g(6814),o=g(5879),v=g(3680);const l=new o.InjectionToken("mat-progress-spinner-default-options",{providedIn:"root",factory:d});function d(){return{diameter:r}}const r=100;var M=g(7394);function x(j,N){if(1&j&&(o.\u0275\u0275namespaceSVG(),o.\u0275\u0275element(0,"circle",4)),2&j){const S=o.\u0275\u0275nextContext(),k=o.\u0275\u0275reference(1);o.\u0275\u0275styleProp("animation-name","mat-progress-spinner-stroke-rotate-"+S._spinnerAnimationLabel)("stroke-dashoffset",S._getStrokeDashOffset(),"px")("stroke-dasharray",S._getStrokeCircumference(),"px")("stroke-width",S._getCircleStrokeWidth(),"%")("transform-origin",S._getCircleTransformOrigin(k)),o.\u0275\u0275attribute("r",S._getCircleRadius())}}function w(j,N){if(1&j&&(o.\u0275\u0275namespaceSVG(),o.\u0275\u0275element(0,"circle",4)),2&j){const S=o.\u0275\u0275nextContext(),k=o.\u0275\u0275reference(1);o.\u0275\u0275styleProp("stroke-dashoffset",S._getStrokeDashOffset(),"px")("stroke-dasharray",S._getStrokeCircumference(),"px")("stroke-width",S._getCircleStrokeWidth(),"%")("transform-origin",S._getCircleTransformOrigin(k)),o.\u0275\u0275attribute("r",S._getCircleRadius())}}const T=(0,v.mixinColor)(class{constructor(j){this._elementRef=j}},"primary");class E extends T{get diameter(){return this._diameter}set diameter(N){this._diameter=(0,n.su)(N),this._spinnerAnimationLabel=this._getSpinnerAnimationLabel(),this._styleRoot&&this._attachStyleNode()}get strokeWidth(){return this._strokeWidth||this.diameter/10}set strokeWidth(N){this._strokeWidth=(0,n.su)(N)}get value(){return"determinate"===this.mode?this._value:0}set value(N){this._value=Math.max(0,Math.min(100,(0,n.su)(N)))}constructor(N,S,k,F,Y,se,ne,me,$){super(N),this._document=k,this._nonce=$,this._diameter=100,this._value=0,this._resizeSubscription=M.w0.EMPTY,this.mode="determinate";const q=E._diameters;this._spinnerAnimationLabel=this._getSpinnerAnimationLabel(),q.has(k.head)||q.set(k.head,new Set([100])),this._noopAnimations="NoopAnimations"===F&&!!Y&&!Y._forceAnimations,"mat-spinner"===N.nativeElement.nodeName.toLowerCase()&&(this.mode="indeterminate"),Y&&(Y.color&&(this.color=this.defaultColor=Y.color),Y.diameter&&(this.diameter=Y.diameter),Y.strokeWidth&&(this.strokeWidth=Y.strokeWidth)),S.isBrowser&&S.SAFARI&&ne&&se&&me&&(this._resizeSubscription=ne.change(150).subscribe(()=>{"indeterminate"===this.mode&&me.run(()=>se.markForCheck())}))}ngOnInit(){const N=this._elementRef.nativeElement;this._styleRoot=(0,p.kV)(N)||this._document.head,this._attachStyleNode(),N.classList.add("mat-progress-spinner-indeterminate-animation")}ngOnDestroy(){this._resizeSubscription.unsubscribe()}_getCircleRadius(){return(this.diameter-10)/2}_getViewBox(){const N=2*this._getCircleRadius()+this.strokeWidth;return`0 0 ${N} ${N}`}_getStrokeCircumference(){return 2*Math.PI*this._getCircleRadius()}_getStrokeDashOffset(){return"determinate"===this.mode?this._getStrokeCircumference()*(100-this._value)/100:null}_getCircleStrokeWidth(){return this.strokeWidth/this.diameter*100}_getCircleTransformOrigin(N){const S=50*(N.currentScale??1);return`${S}% ${S}%`}_attachStyleNode(){const N=this._styleRoot,S=this._diameter,k=E._diameters;let F=k.get(N);if(!F||!F.has(S)){const Y=this._document.createElement("style");this._nonce&&(Y.nonce=this._nonce),Y.setAttribute("mat-spinner-animation",this._spinnerAnimationLabel),Y.textContent=this._getAnimationText(),N.appendChild(Y),F||(F=new Set,k.set(N,F)),F.add(S)}}_getAnimationText(){const N=this._getStrokeCircumference();return"\n @keyframes mat-progress-spinner-stroke-rotate-DIAMETER {\n 0% { stroke-dashoffset: START_VALUE; transform: rotate(0); }\n 12.5% { stroke-dashoffset: END_VALUE; transform: rotate(0); }\n 12.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(72.5deg); }\n 25% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(72.5deg); }\n\n 25.0001% { stroke-dashoffset: START_VALUE; transform: rotate(270deg); }\n 37.5% { stroke-dashoffset: END_VALUE; transform: rotate(270deg); }\n 37.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(161.5deg); }\n 50% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(161.5deg); }\n\n 50.0001% { stroke-dashoffset: START_VALUE; transform: rotate(180deg); }\n 62.5% { stroke-dashoffset: END_VALUE; transform: rotate(180deg); }\n 62.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(251.5deg); }\n 75% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(251.5deg); }\n\n 75.0001% { stroke-dashoffset: START_VALUE; transform: rotate(90deg); }\n 87.5% { stroke-dashoffset: END_VALUE; transform: rotate(90deg); }\n 87.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(341.5deg); }\n 100% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(341.5deg); }\n }\n".replace(/START_VALUE/g,""+.95*N).replace(/END_VALUE/g,""+.2*N).replace(/DIAMETER/g,`${this._spinnerAnimationLabel}`)}_getSpinnerAnimationLabel(){return this.diameter.toString().replace(".","_")}}E._diameters=new WeakMap,E.\u0275fac=function(N){return new(N||E)(o.\u0275\u0275directiveInject(o.ElementRef),o.\u0275\u0275directiveInject(p.t4),o.\u0275\u0275directiveInject(b.DOCUMENT,8),o.\u0275\u0275directiveInject(o.ANIMATION_MODULE_TYPE,8),o.\u0275\u0275directiveInject(l),o.\u0275\u0275directiveInject(o.ChangeDetectorRef),o.\u0275\u0275directiveInject(C.rL),o.\u0275\u0275directiveInject(o.NgZone),o.\u0275\u0275directiveInject(o.CSP_NONCE,8))},E.\u0275cmp=o.\u0275\u0275defineComponent({type:E,selectors:[["mat-progress-spinner"],["mat-spinner"]],hostAttrs:["role","progressbar","tabindex","-1",1,"mat-progress-spinner","mat-spinner"],hostVars:10,hostBindings:function(N,S){2&N&&(o.\u0275\u0275attribute("aria-valuemin","determinate"===S.mode?0:null)("aria-valuemax","determinate"===S.mode?100:null)("aria-valuenow","determinate"===S.mode?S.value:null)("mode",S.mode),o.\u0275\u0275styleProp("width",S.diameter,"px")("height",S.diameter,"px"),o.\u0275\u0275classProp("_mat-animation-noopable",S._noopAnimations))},inputs:{color:"color",diameter:"diameter",strokeWidth:"strokeWidth",mode:"mode",value:"value"},exportAs:["matProgressSpinner"],features:[o.\u0275\u0275InheritDefinitionFeature],decls:4,vars:8,consts:[["preserveAspectRatio","xMidYMid meet","focusable","false","aria-hidden","true",3,"ngSwitch"],["svg",""],["cx","50%","cy","50%",3,"animation-name","stroke-dashoffset","stroke-dasharray","stroke-width","transform-origin",4,"ngSwitchCase"],["cx","50%","cy","50%",3,"stroke-dashoffset","stroke-dasharray","stroke-width","transform-origin",4,"ngSwitchCase"],["cx","50%","cy","50%"]],template:function(N,S){1&N&&(o.\u0275\u0275namespaceSVG(),o.\u0275\u0275elementStart(0,"svg",0,1),o.\u0275\u0275template(2,x,1,11,"circle",2),o.\u0275\u0275template(3,w,1,9,"circle",3),o.\u0275\u0275elementEnd()),2&N&&(o.\u0275\u0275styleProp("width",S.diameter,"px")("height",S.diameter,"px"),o.\u0275\u0275property("ngSwitch","indeterminate"===S.mode),o.\u0275\u0275attribute("viewBox",S._getViewBox()),o.\u0275\u0275advance(2),o.\u0275\u0275property("ngSwitchCase",!0),o.\u0275\u0275advance(1),o.\u0275\u0275property("ngSwitchCase",!1))},dependencies:[b.NgSwitch,b.NgSwitchCase],styles:[".mat-progress-spinner{display:block;position:relative;overflow:hidden}.mat-progress-spinner svg{position:absolute;transform:rotate(-90deg);top:0;left:0;transform-origin:center;overflow:visible}.mat-progress-spinner circle{fill:rgba(0,0,0,0);transition:stroke-dashoffset 225ms linear}.cdk-high-contrast-active .mat-progress-spinner circle{stroke:CanvasText}.mat-progress-spinner[mode=indeterminate] svg{animation:mat-progress-spinner-linear-rotate 2000ms linear infinite}.mat-progress-spinner[mode=indeterminate] circle{transition-property:stroke;animation-duration:4000ms;animation-timing-function:cubic-bezier(0.35, 0, 0.25, 1);animation-iteration-count:infinite}.mat-progress-spinner._mat-animation-noopable svg,.mat-progress-spinner._mat-animation-noopable circle{animation:none;transition:none}@keyframes mat-progress-spinner-linear-rotate{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@keyframes mat-progress-spinner-stroke-rotate-100{0%{stroke-dashoffset:268.606171575px;transform:rotate(0)}12.5%{stroke-dashoffset:56.5486677px;transform:rotate(0)}12.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(72.5deg)}25%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(72.5deg)}25.0001%{stroke-dashoffset:268.606171575px;transform:rotate(270deg)}37.5%{stroke-dashoffset:56.5486677px;transform:rotate(270deg)}37.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(161.5deg)}50%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(161.5deg)}50.0001%{stroke-dashoffset:268.606171575px;transform:rotate(180deg)}62.5%{stroke-dashoffset:56.5486677px;transform:rotate(180deg)}62.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(251.5deg)}75%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(251.5deg)}75.0001%{stroke-dashoffset:268.606171575px;transform:rotate(90deg)}87.5%{stroke-dashoffset:56.5486677px;transform:rotate(90deg)}87.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(341.5deg)}100%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(341.5deg)}}"],encapsulation:2,changeDetection:0});let D=(()=>{class j{}return j.\u0275fac=function(S){return new(S||j)},j.\u0275mod=o.\u0275\u0275defineNgModule({type:j}),j.\u0275inj=o.\u0275\u0275defineInjector({imports:[v.MatCommonModule,b.CommonModule,v.MatCommonModule]}),j})();const R=E},1036:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{MAT_LEGACY_RADIO_DEFAULT_OPTIONS:()=>u,MAT_LEGACY_RADIO_DEFAULT_OPTIONS_FACTORY:()=>h,MAT_LEGACY_RADIO_GROUP:()=>r,MAT_LEGACY_RADIO_GROUP_CONTROL_VALUE_ACCESSOR:()=>E,MatLegacyRadioButton:()=>R,MatLegacyRadioChange:()=>l,MatLegacyRadioGroup:()=>D,MatLegacyRadioModule:()=>j});var n=g(5879),p=g(3680),C=g(4300),b=g(8337),o=g(6223),v=g(2495);const a=["input"];let s=0;class l{constructor(S,k){this.source=S,this.value=k}}const r=new n.InjectionToken("MatRadioGroup"),u=new n.InjectionToken("mat-radio-default-options",{providedIn:"root",factory:h});function h(){return{color:"accent"}}let m=(()=>{class N{get name(){return this._name}set name(k){this._name=k,this._updateRadioButtonNames()}get labelPosition(){return this._labelPosition}set labelPosition(k){this._labelPosition="before"===k?"before":"after",this._markRadiosForCheck()}get value(){return this._value}set value(k){this._value!==k&&(this._value=k,this._updateSelectedRadioFromValue(),this._checkSelectedRadioButton())}_checkSelectedRadioButton(){this._selected&&!this._selected.checked&&(this._selected.checked=!0)}get selected(){return this._selected}set selected(k){this._selected=k,this.value=k?k.value:null,this._checkSelectedRadioButton()}get disabled(){return this._disabled}set disabled(k){this._disabled=(0,v.Ig)(k),this._markRadiosForCheck()}get required(){return this._required}set required(k){this._required=(0,v.Ig)(k),this._markRadiosForCheck()}constructor(k){this._changeDetector=k,this._value=null,this._name="mat-radio-group-"+s++,this._selected=null,this._isInitialized=!1,this._labelPosition="after",this._disabled=!1,this._required=!1,this._controlValueAccessorChangeFn=()=>{},this.onTouched=()=>{},this.change=new n.EventEmitter}ngAfterContentInit(){this._isInitialized=!0,this._buttonChanges=this._radios.changes.subscribe(()=>{this.selected&&!this._radios.find(k=>k===this.selected)&&(this._selected=null)})}ngOnDestroy(){this._buttonChanges?.unsubscribe()}_touch(){this.onTouched&&this.onTouched()}_updateRadioButtonNames(){this._radios&&this._radios.forEach(k=>{k.name=this.name,k._markForCheck()})}_updateSelectedRadioFromValue(){this._radios&&(null===this._selected||this._selected.value!==this._value)&&(this._selected=null,this._radios.forEach(F=>{F.checked=this.value===F.value,F.checked&&(this._selected=F)}))}_emitChangeEvent(){this._isInitialized&&this.change.emit(new l(this._selected,this._value))}_markRadiosForCheck(){this._radios&&this._radios.forEach(k=>k._markForCheck())}writeValue(k){this.value=k,this._changeDetector.markForCheck()}registerOnChange(k){this._controlValueAccessorChangeFn=k}registerOnTouched(k){this.onTouched=k}setDisabledState(k){this.disabled=k,this._changeDetector.markForCheck()}}return N.\u0275fac=function(k){return new(k||N)(n.\u0275\u0275directiveInject(n.ChangeDetectorRef))},N.\u0275dir=n.\u0275\u0275defineDirective({type:N,inputs:{color:"color",name:"name",labelPosition:"labelPosition",value:"value",selected:"selected",disabled:"disabled",required:"required"},outputs:{change:"change"}}),N})();class _{constructor(S){this._elementRef=S}}const M=(0,p.mixinDisableRipple)((0,p.mixinTabIndex)(_));let x=(()=>{class N extends M{get checked(){return this._checked}set checked(k){const F=(0,v.Ig)(k);this._checked!==F&&(this._checked=F,F&&this.radioGroup&&this.radioGroup.value!==this.value?this.radioGroup.selected=this:!F&&this.radioGroup&&this.radioGroup.value===this.value&&(this.radioGroup.selected=null),F&&this._radioDispatcher.notify(this.id,this.name),this._changeDetector.markForCheck())}get value(){return this._value}set value(k){this._value!==k&&(this._value=k,null!==this.radioGroup&&(this.checked||(this.checked=this.radioGroup.value===k),this.checked&&(this.radioGroup.selected=this)))}get labelPosition(){return this._labelPosition||this.radioGroup&&this.radioGroup.labelPosition||"after"}set labelPosition(k){this._labelPosition=k}get disabled(){return this._disabled||null!==this.radioGroup&&this.radioGroup.disabled}set disabled(k){this._setDisabled((0,v.Ig)(k))}get required(){return this._required||this.radioGroup&&this.radioGroup.required}set required(k){this._required=(0,v.Ig)(k)}get color(){return this._color||this.radioGroup&&this.radioGroup.color||this._providerOverride&&this._providerOverride.color||"accent"}set color(k){this._color=k}get inputId(){return`${this.id||this._uniqueId}-input`}constructor(k,F,Y,se,ne,me,$,q){super(F),this._changeDetector=Y,this._focusMonitor=se,this._radioDispatcher=ne,this._providerOverride=$,this._uniqueId="mat-radio-"+ ++s,this.id=this._uniqueId,this.change=new n.EventEmitter,this._checked=!1,this._value=null,this._removeUniqueSelectionListener=()=>{},this.radioGroup=k,this._noopAnimations="NoopAnimations"===me,q&&(this.tabIndex=(0,v.su)(q,0))}focus(k,F){F?this._focusMonitor.focusVia(this._inputElement,F,k):this._inputElement.nativeElement.focus(k)}_markForCheck(){this._changeDetector.markForCheck()}ngOnInit(){this.radioGroup&&(this.checked=this.radioGroup.value===this._value,this.checked&&(this.radioGroup.selected=this),this.name=this.radioGroup.name),this._removeUniqueSelectionListener=this._radioDispatcher.listen((k,F)=>{k!==this.id&&F===this.name&&(this.checked=!1)})}ngDoCheck(){this._updateTabIndex()}ngAfterViewInit(){this._updateTabIndex(),this._focusMonitor.monitor(this._elementRef,!0).subscribe(k=>{!k&&this.radioGroup&&this.radioGroup._touch()})}ngOnDestroy(){this._focusMonitor.stopMonitoring(this._elementRef),this._removeUniqueSelectionListener()}_emitChangeEvent(){this.change.emit(new l(this,this._value))}_isRippleDisabled(){return this.disableRipple||this.disabled}_onInputClick(k){k.stopPropagation()}_onInputInteraction(k){if(k.stopPropagation(),!this.checked&&!this.disabled){const F=this.radioGroup&&this.value!==this.radioGroup.value;this.checked=!0,this._emitChangeEvent(),this.radioGroup&&(this.radioGroup._controlValueAccessorChangeFn(this.value),F&&this.radioGroup._emitChangeEvent())}}_onTouchTargetClick(k){this._onInputInteraction(k),this.disabled||this._inputElement.nativeElement.focus()}_setDisabled(k){this._disabled!==k&&(this._disabled=k,this._changeDetector.markForCheck())}_updateTabIndex(){const k=this.radioGroup;let F;if(F=k&&k.selected&&!this.disabled?k.selected===this?this.tabIndex:-1:this.tabIndex,F!==this._previousTabIndex){const Y=this._inputElement?.nativeElement;Y&&(Y.setAttribute("tabindex",F+""),this._previousTabIndex=F)}}}return N.\u0275fac=function(k){n.\u0275\u0275invalidFactory()},N.\u0275dir=n.\u0275\u0275defineDirective({type:N,viewQuery:function(k,F){if(1&k&&n.\u0275\u0275viewQuery(a,5),2&k){let Y;n.\u0275\u0275queryRefresh(Y=n.\u0275\u0275loadQuery())&&(F._inputElement=Y.first)}},inputs:{id:"id",name:"name",ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],ariaDescribedby:["aria-describedby","ariaDescribedby"],checked:"checked",value:"value",labelPosition:"labelPosition",disabled:"disabled",required:"required",color:"color"},outputs:{change:"change"},features:[n.\u0275\u0275InheritDefinitionFeature]}),N})();const T=function(N){return{enterDuration:N}},O=["*"],E={provide:o.NG_VALUE_ACCESSOR,useExisting:(0,n.forwardRef)(()=>D),multi:!0};let D=(()=>{class N extends m{}return N.\u0275fac=function(){let S;return function(F){return(S||(S=n.\u0275\u0275getInheritedFactory(N)))(F||N)}}(),N.\u0275dir=n.\u0275\u0275defineDirective({type:N,selectors:[["mat-radio-group"]],contentQueries:function(k,F,Y){if(1&k&&n.\u0275\u0275contentQuery(Y,R,5),2&k){let se;n.\u0275\u0275queryRefresh(se=n.\u0275\u0275loadQuery())&&(F._radios=se)}},hostAttrs:["role","radiogroup",1,"mat-radio-group"],exportAs:["matRadioGroup"],features:[n.\u0275\u0275ProvidersFeature([E,{provide:r,useExisting:N}]),n.\u0275\u0275InheritDefinitionFeature]}),N})(),R=(()=>{class N extends x{constructor(k,F,Y,se,ne,me,$,q){super(k,F,Y,se,ne,me,$,q)}}return N.\u0275fac=function(k){return new(k||N)(n.\u0275\u0275directiveInject(r,8),n.\u0275\u0275directiveInject(n.ElementRef),n.\u0275\u0275directiveInject(n.ChangeDetectorRef),n.\u0275\u0275directiveInject(C.tE),n.\u0275\u0275directiveInject(b.A8),n.\u0275\u0275directiveInject(n.ANIMATION_MODULE_TYPE,8),n.\u0275\u0275directiveInject(u,8),n.\u0275\u0275injectAttribute("tabindex"))},N.\u0275cmp=n.\u0275\u0275defineComponent({type:N,selectors:[["mat-radio-button"]],hostAttrs:[1,"mat-radio-button"],hostVars:17,hostBindings:function(k,F){1&k&&n.\u0275\u0275listener("focus",function(){return F._inputElement.nativeElement.focus()}),2&k&&(n.\u0275\u0275attribute("tabindex",null)("id",F.id)("aria-label",null)("aria-labelledby",null)("aria-describedby",null),n.\u0275\u0275classProp("mat-radio-checked",F.checked)("mat-radio-disabled",F.disabled)("_mat-animation-noopable",F._noopAnimations)("mat-primary","primary"===F.color)("mat-accent","accent"===F.color)("mat-warn","warn"===F.color))},inputs:{disableRipple:"disableRipple",tabIndex:"tabIndex"},exportAs:["matRadioButton"],features:[n.\u0275\u0275InheritDefinitionFeature],ngContentSelectors:O,decls:13,vars:19,consts:[[1,"mat-radio-label"],["label",""],[1,"mat-radio-container"],[1,"mat-radio-outer-circle"],[1,"mat-radio-inner-circle"],["type","radio",1,"mat-radio-input",3,"id","checked","disabled","required","change","click"],["input",""],["mat-ripple","",1,"mat-radio-ripple","mat-focus-indicator",3,"matRippleTrigger","matRippleDisabled","matRippleCentered","matRippleRadius","matRippleAnimation"],[1,"mat-ripple-element","mat-radio-persistent-ripple"],[1,"mat-radio-label-content"],[2,"display","none"]],template:function(k,F){if(1&k&&(n.\u0275\u0275projectionDef(),n.\u0275\u0275elementStart(0,"label",0,1)(2,"span",2),n.\u0275\u0275element(3,"span",3)(4,"span",4),n.\u0275\u0275elementStart(5,"input",5,6),n.\u0275\u0275listener("change",function(se){return F._onInputInteraction(se)})("click",function(se){return F._onInputClick(se)}),n.\u0275\u0275elementEnd(),n.\u0275\u0275elementStart(7,"span",7),n.\u0275\u0275element(8,"span",8),n.\u0275\u0275elementEnd()(),n.\u0275\u0275elementStart(9,"span",9)(10,"span",10),n.\u0275\u0275text(11,"\xa0"),n.\u0275\u0275elementEnd(),n.\u0275\u0275projection(12),n.\u0275\u0275elementEnd()()),2&k){const Y=n.\u0275\u0275reference(1);n.\u0275\u0275attribute("for",F.inputId),n.\u0275\u0275advance(5),n.\u0275\u0275property("id",F.inputId)("checked",F.checked)("disabled",F.disabled)("required",F.required),n.\u0275\u0275attribute("name",F.name)("value",F.value)("aria-label",F.ariaLabel)("aria-labelledby",F.ariaLabelledby)("aria-describedby",F.ariaDescribedby),n.\u0275\u0275advance(2),n.\u0275\u0275property("matRippleTrigger",Y)("matRippleDisabled",F._isRippleDisabled())("matRippleCentered",!0)("matRippleRadius",20)("matRippleAnimation",n.\u0275\u0275pureFunction1(17,T,F._noopAnimations?0:150)),n.\u0275\u0275advance(2),n.\u0275\u0275classProp("mat-radio-label-before","before"==F.labelPosition)}},dependencies:[p.MatRipple],styles:['.mat-radio-button{display:inline-block;-webkit-tap-highlight-color:rgba(0,0,0,0);outline:0}.mat-radio-label{-webkit-user-select:none;user-select:none;cursor:pointer;display:inline-flex;align-items:center;white-space:nowrap;vertical-align:middle;width:100%}.mat-radio-container{box-sizing:border-box;display:inline-block;position:relative;width:20px;height:20px;flex-shrink:0}.mat-radio-outer-circle{box-sizing:border-box;display:block;height:20px;left:0;position:absolute;top:0;transition:border-color ease 280ms;width:20px;border-width:2px;border-style:solid;border-radius:50%}._mat-animation-noopable .mat-radio-outer-circle{transition:none}.mat-radio-inner-circle{border-radius:50%;box-sizing:border-box;display:block;height:20px;left:0;position:absolute;top:0;opacity:0;transition:transform ease 280ms,background-color ease 280ms,opacity linear 1ms 280ms;width:20px;transform:scale(0.001);-webkit-print-color-adjust:exact;color-adjust:exact}.mat-radio-checked .mat-radio-inner-circle{transform:scale(0.5);opacity:1;transition:transform ease 280ms,background-color ease 280ms}.cdk-high-contrast-active .mat-radio-checked .mat-radio-inner-circle{border:solid 10px}._mat-animation-noopable .mat-radio-inner-circle{transition:none}.mat-radio-label-content{-webkit-user-select:auto;user-select:auto;display:inline-block;order:0;line-height:inherit;padding-left:8px;padding-right:0}[dir=rtl] .mat-radio-label-content{padding-right:8px;padding-left:0}.mat-radio-label-content.mat-radio-label-before{order:-1;padding-left:0;padding-right:8px}[dir=rtl] .mat-radio-label-content.mat-radio-label-before{padding-right:0;padding-left:8px}.mat-radio-disabled,.mat-radio-disabled .mat-radio-label{cursor:default}.mat-radio-button .mat-radio-ripple{position:absolute;left:calc(50% - 20px);top:calc(50% - 20px);height:40px;width:40px;z-index:1;pointer-events:none}.mat-radio-button .mat-radio-ripple .mat-ripple-element:not(.mat-radio-persistent-ripple){opacity:.16}.mat-radio-persistent-ripple{width:100%;height:100%;transform:none;top:0;left:0}.mat-radio-container:hover .mat-radio-persistent-ripple{opacity:.04}.mat-radio-button:not(.mat-radio-disabled).cdk-keyboard-focused .mat-radio-persistent-ripple,.mat-radio-button:not(.mat-radio-disabled).cdk-program-focused .mat-radio-persistent-ripple{opacity:.12}.mat-radio-persistent-ripple,.mat-radio-disabled .mat-radio-container:hover .mat-radio-persistent-ripple{opacity:0}@media(hover: none){.mat-radio-container:hover .mat-radio-persistent-ripple{display:none}}.mat-radio-input{opacity:0;position:absolute;top:0;left:0;margin:0;width:100%;height:100%;cursor:inherit;z-index:-1}.mat-radio-input:focus~.mat-focus-indicator::before{content:""}.cdk-high-contrast-active .mat-radio-disabled{opacity:.5}'],encapsulation:2,changeDetection:0}),N})(),j=(()=>{class N{}return N.\u0275fac=function(k){return new(k||N)},N.\u0275mod=n.\u0275\u0275defineNgModule({type:N}),N.\u0275inj=n.\u0275\u0275defineInjector({imports:[p.MatRippleModule,p.MatCommonModule,p.MatCommonModule]}),N})()},1798:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{MAT_LEGACY_SELECT_CONFIG:()=>Xe,MAT_LEGACY_SELECT_SCROLL_STRATEGY:()=>Me,MAT_LEGACY_SELECT_SCROLL_STRATEGY_PROVIDER:()=>Be,MAT_LEGACY_SELECT_SCROLL_STRATEGY_PROVIDER_FACTORY:()=>Oe,MAT_LEGACY_SELECT_TRIGGER:()=>$e,MatLegacySelect:()=>yt,MatLegacySelectChange:()=>Kt,MatLegacySelectModule:()=>Bt,MatLegacySelectTrigger:()=>ze,matLegacySelectAnimations:()=>ae});var n=g(9594),p=g(6814),C=g(5879),b=g(3680),o=g(4678),v=g(1043),a=g(4187),c=g(6672),s=g(4300),l=g(9388),d=g(2495),r=g(8337),u=g(6028),h=g(6223),m=g(8645),_=g(4911),M=g(3019),x=g(7921),w=g(4664),L=g(8180),A=g(2181),T=g(7398),O=g(3997),E=g(9773),D=g(6825);const R=["trigger"],j=["panel"];let ue=0;const Me=new C.InjectionToken("mat-select-scroll-strategy");function Oe($t){return()=>$t.scrollStrategies.reposition()}const Xe=new C.InjectionToken("MAT_SELECT_CONFIG"),Be={provide:Me,deps:[n.aV],useFactory:Oe},$e=new C.InjectionToken("MatSelectTrigger"),Mt=(0,b.mixinDisableRipple)((0,b.mixinTabIndex)((0,b.mixinDisabled)((0,b.mixinErrorState)(class{constructor($t,Yt,Ue,We,ve){this._elementRef=$t,this._defaultErrorStateMatcher=Yt,this._parentForm=Ue,this._parentFormGroup=We,this.ngControl=ve,this.stateChanges=new m.x}}))));let tt=(()=>{class $t extends Mt{get focused(){return this._focused||this._panelOpen}get placeholder(){return this._placeholder}set placeholder(Ue){this._placeholder=Ue,this.stateChanges.next()}get required(){return this._required??this.ngControl?.control?.hasValidator(h.Validators.required)??!1}set required(Ue){this._required=(0,d.Ig)(Ue),this.stateChanges.next()}get multiple(){return this._multiple}set multiple(Ue){this._multiple=(0,d.Ig)(Ue)}get disableOptionCentering(){return this._disableOptionCentering}set disableOptionCentering(Ue){this._disableOptionCentering=(0,d.Ig)(Ue)}get compareWith(){return this._compareWith}set compareWith(Ue){this._compareWith=Ue,this._selectionModel&&this._initializeSelection()}get value(){return this._value}set value(Ue){this._assignValue(Ue)&&this._onChange(Ue)}get typeaheadDebounceInterval(){return this._typeaheadDebounceInterval}set typeaheadDebounceInterval(Ue){this._typeaheadDebounceInterval=(0,d.su)(Ue)}get id(){return this._id}set id(Ue){this._id=Ue||this._uid,this.stateChanges.next()}constructor(Ue,We,ve,we,at,De,je,ke,Z,re,ce,Ee,it,Rt){super(at,we,je,ke,re),this._viewportRuler=Ue,this._changeDetectorRef=We,this._ngZone=ve,this._dir=De,this._parentFormField=Z,this._liveAnnouncer=it,this._defaultOptions=Rt,this._panelOpen=!1,this._compareWith=(Ye,qe)=>Ye===qe,this._uid="mat-select-"+ue++,this._triggerAriaLabelledBy=null,this._destroy=new m.x,this._onChange=()=>{},this._onTouched=()=>{},this._valueId="mat-select-value-"+ue++,this._panelDoneAnimatingStream=new m.x,this._overlayPanelClass=this._defaultOptions?.overlayPanelClass||"",this._focused=!1,this.controlType="mat-select",this._multiple=!1,this._disableOptionCentering=this._defaultOptions?.disableOptionCentering??!1,this.ariaLabel="",this.optionSelectionChanges=(0,_.P)(()=>{const Ye=this.options;return Ye?Ye.changes.pipe((0,x.O)(Ye),(0,w.w)(()=>(0,M.T)(...Ye.map(qe=>qe.onSelectionChange)))):this._ngZone.onStable.pipe((0,L.q)(1),(0,w.w)(()=>this.optionSelectionChanges))}),this.openedChange=new C.EventEmitter,this._openedStream=this.openedChange.pipe((0,A.h)(Ye=>Ye),(0,T.U)(()=>{})),this._closedStream=this.openedChange.pipe((0,A.h)(Ye=>!Ye),(0,T.U)(()=>{})),this.selectionChange=new C.EventEmitter,this.valueChange=new C.EventEmitter,this._trackedModal=null,this.ngControl&&(this.ngControl.valueAccessor=this),null!=Rt?.typeaheadDebounceInterval&&(this._typeaheadDebounceInterval=Rt.typeaheadDebounceInterval),this._scrollStrategyFactory=Ee,this._scrollStrategy=this._scrollStrategyFactory(),this.tabIndex=parseInt(ce)||0,this.id=this.id}ngOnInit(){this._selectionModel=new r.Ov(this.multiple),this.stateChanges.next(),this._panelDoneAnimatingStream.pipe((0,O.x)(),(0,E.R)(this._destroy)).subscribe(()=>this._panelDoneAnimating(this.panelOpen))}ngAfterContentInit(){this._initKeyManager(),this._selectionModel.changed.pipe((0,E.R)(this._destroy)).subscribe(Ue=>{Ue.added.forEach(We=>We.select()),Ue.removed.forEach(We=>We.deselect())}),this.options.changes.pipe((0,x.O)(null),(0,E.R)(this._destroy)).subscribe(()=>{this._resetOptions(),this._initializeSelection()})}ngDoCheck(){const Ue=this._getTriggerAriaLabelledby(),We=this.ngControl;if(Ue!==this._triggerAriaLabelledBy){const ve=this._elementRef.nativeElement;this._triggerAriaLabelledBy=Ue,Ue?ve.setAttribute("aria-labelledby",Ue):ve.removeAttribute("aria-labelledby")}We&&(this._previousControl!==We.control&&(void 0!==this._previousControl&&null!==We.disabled&&We.disabled!==this.disabled&&(this.disabled=We.disabled),this._previousControl=We.control),this.updateErrorState())}ngOnChanges(Ue){(Ue.disabled||Ue.userAriaDescribedBy)&&this.stateChanges.next(),Ue.typeaheadDebounceInterval&&this._keyManager&&this._keyManager.withTypeAhead(this._typeaheadDebounceInterval)}ngOnDestroy(){this._keyManager?.destroy(),this._destroy.next(),this._destroy.complete(),this.stateChanges.complete(),this._clearFromModal()}toggle(){this.panelOpen?this.close():this.open()}open(){this._canOpen()&&(this._applyModalPanelOwnership(),this._panelOpen=!0,this._keyManager.withHorizontalOrientation(null),this._highlightCorrectOption(),this._changeDetectorRef.markForCheck())}_applyModalPanelOwnership(){const Ue=this._elementRef.nativeElement.closest('body > .cdk-overlay-container [aria-modal="true"]');if(!Ue)return;const We=`${this.id}-panel`;this._trackedModal&&(0,s.iD)(this._trackedModal,"aria-owns",We),(0,s.Zf)(Ue,"aria-owns",We),this._trackedModal=Ue}_clearFromModal(){this._trackedModal&&((0,s.iD)(this._trackedModal,"aria-owns",`${this.id}-panel`),this._trackedModal=null)}close(){this._panelOpen&&(this._panelOpen=!1,this._keyManager.withHorizontalOrientation(this._isRtl()?"rtl":"ltr"),this._changeDetectorRef.markForCheck(),this._onTouched())}writeValue(Ue){this._assignValue(Ue)}registerOnChange(Ue){this._onChange=Ue}registerOnTouched(Ue){this._onTouched=Ue}setDisabledState(Ue){this.disabled=Ue,this._changeDetectorRef.markForCheck(),this.stateChanges.next()}get panelOpen(){return this._panelOpen}get selected(){return this.multiple?this._selectionModel?.selected||[]:this._selectionModel?.selected[0]}get triggerValue(){if(this.empty)return"";if(this._multiple){const Ue=this._selectionModel.selected.map(We=>We.viewValue);return this._isRtl()&&Ue.reverse(),Ue.join(", ")}return this._selectionModel.selected[0].viewValue}_isRtl(){return!!this._dir&&"rtl"===this._dir.value}_handleKeydown(Ue){this.disabled||(this.panelOpen?this._handleOpenKeydown(Ue):this._handleClosedKeydown(Ue))}_handleClosedKeydown(Ue){const We=Ue.keyCode,ve=We===u.JH||We===u.LH||We===u.oh||We===u.SV,we=We===u.K5||We===u.L_,at=this._keyManager;if(!at.isTyping()&&we&&!(0,u.Vb)(Ue)||(this.multiple||Ue.altKey)&&ve)Ue.preventDefault(),this.open();else if(!this.multiple){const De=this.selected;at.onKeydown(Ue);const je=this.selected;je&&De!==je&&this._liveAnnouncer.announce(je.viewValue,1e4)}}_handleOpenKeydown(Ue){const We=this._keyManager,ve=Ue.keyCode,we=ve===u.JH||ve===u.LH,at=We.isTyping();if(we&&Ue.altKey)Ue.preventDefault(),this.close();else if(at||ve!==u.K5&&ve!==u.L_||!We.activeItem||(0,u.Vb)(Ue))if(!at&&this._multiple&&ve===u.A&&Ue.ctrlKey){Ue.preventDefault();const De=this.options.some(je=>!je.disabled&&!je.selected);this.options.forEach(je=>{je.disabled||(De?je.select():je.deselect())})}else{const De=We.activeItemIndex;We.onKeydown(Ue),this._multiple&&we&&Ue.shiftKey&&We.activeItem&&We.activeItemIndex!==De&&We.activeItem._selectViaInteraction()}else Ue.preventDefault(),We.activeItem._selectViaInteraction()}_onFocus(){this.disabled||(this._focused=!0,this.stateChanges.next())}_onBlur(){this._focused=!1,this._keyManager?.cancelTypeahead(),!this.disabled&&!this.panelOpen&&(this._onTouched(),this._changeDetectorRef.markForCheck(),this.stateChanges.next())}_onAttached(){this._overlayDir.positionChange.pipe((0,L.q)(1)).subscribe(()=>{this._changeDetectorRef.detectChanges(),this._positioningSettled()})}_getPanelTheme(){return this._parentFormField?`mat-${this._parentFormField.color}`:""}get empty(){return!this._selectionModel||this._selectionModel.isEmpty()}_initializeSelection(){Promise.resolve().then(()=>{this.ngControl&&(this._value=this.ngControl.value),this._setSelectionByValue(this._value),this.stateChanges.next()})}_setSelectionByValue(Ue){if(this.options.forEach(We=>We.setInactiveStyles()),this._selectionModel.clear(),this.multiple&&Ue)Array.isArray(Ue),Ue.forEach(We=>this._selectOptionByValue(We)),this._sortValues();else{const We=this._selectOptionByValue(Ue);We?this._keyManager.updateActiveItem(We):this.panelOpen||this._keyManager.updateActiveItem(-1)}this._changeDetectorRef.markForCheck()}_selectOptionByValue(Ue){const We=this.options.find(ve=>{if(this._selectionModel.isSelected(ve))return!1;try{return null!=ve.value&&this._compareWith(ve.value,Ue)}catch{return!1}});return We&&this._selectionModel.select(We),We}_assignValue(Ue){return!!(Ue!==this._value||this._multiple&&Array.isArray(Ue))&&(this.options&&this._setSelectionByValue(Ue),this._value=Ue,!0)}_skipPredicate(Ue){return Ue.disabled}_initKeyManager(){this._keyManager=new s.s1(this.options).withTypeAhead(this._typeaheadDebounceInterval).withVerticalOrientation().withHorizontalOrientation(this._isRtl()?"rtl":"ltr").withHomeAndEnd().withPageUpDown().withAllowedModifierKeys(["shiftKey"]).skipPredicate(this._skipPredicate),this._keyManager.tabOut.subscribe(()=>{this.panelOpen&&(!this.multiple&&this._keyManager.activeItem&&this._keyManager.activeItem._selectViaInteraction(),this.focus(),this.close())}),this._keyManager.change.subscribe(()=>{this._panelOpen&&this.panel?this._scrollOptionIntoView(this._keyManager.activeItemIndex||0):!this._panelOpen&&!this.multiple&&this._keyManager.activeItem&&this._keyManager.activeItem._selectViaInteraction()})}_resetOptions(){const Ue=(0,M.T)(this.options.changes,this._destroy);this.optionSelectionChanges.pipe((0,E.R)(Ue)).subscribe(We=>{this._onSelect(We.source,We.isUserInput),We.isUserInput&&!this.multiple&&this._panelOpen&&(this.close(),this.focus())}),(0,M.T)(...this.options.map(We=>We._stateChanges)).pipe((0,E.R)(Ue)).subscribe(()=>{this._changeDetectorRef.detectChanges(),this.stateChanges.next()})}_onSelect(Ue,We){const ve=this._selectionModel.isSelected(Ue);null!=Ue.value||this._multiple?(ve!==Ue.selected&&(Ue.selected?this._selectionModel.select(Ue):this._selectionModel.deselect(Ue)),We&&this._keyManager.setActiveItem(Ue),this.multiple&&(this._sortValues(),We&&this.focus())):(Ue.deselect(),this._selectionModel.clear(),null!=this.value&&this._propagateChanges(Ue.value)),ve!==this._selectionModel.isSelected(Ue)&&this._propagateChanges(),this.stateChanges.next()}_sortValues(){if(this.multiple){const Ue=this.options.toArray();this._selectionModel.sort((We,ve)=>this.sortComparator?this.sortComparator(We,ve,Ue):Ue.indexOf(We)-Ue.indexOf(ve)),this.stateChanges.next()}}_propagateChanges(Ue){let We=null;We=this.multiple?this.selected.map(ve=>ve.value):this.selected?this.selected.value:Ue,this._value=We,this.valueChange.emit(We),this._onChange(We),this.selectionChange.emit(this._getChangeEvent(We)),this._changeDetectorRef.markForCheck()}_highlightCorrectOption(){if(this._keyManager)if(this.empty){let Ue=-1;for(let We=0;We0}focus(Ue){this._elementRef.nativeElement.focus(Ue)}_getPanelAriaLabelledby(){if(this.ariaLabel)return null;const Ue=this._parentFormField?.getLabelId();return this.ariaLabelledby?(Ue?Ue+" ":"")+this.ariaLabelledby:Ue}_getAriaActiveDescendant(){return this.panelOpen&&this._keyManager&&this._keyManager.activeItem?this._keyManager.activeItem.id:null}_getTriggerAriaLabelledby(){if(this.ariaLabel)return null;const Ue=this._parentFormField?.getLabelId();let We=(Ue?Ue+" ":"")+this._valueId;return this.ariaLabelledby&&(We+=" "+this.ariaLabelledby),We}_panelDoneAnimating(Ue){this.openedChange.emit(Ue)}setDescribedByIds(Ue){Ue.length?this._elementRef.nativeElement.setAttribute("aria-describedby",Ue.join(" ")):this._elementRef.nativeElement.removeAttribute("aria-describedby")}onContainerClick(){this.focus(),this.open()}get shouldLabelFloat(){return this._panelOpen||!this.empty||this._focused&&!!this._placeholder}}return $t.\u0275fac=function(Ue){return new(Ue||$t)(C.\u0275\u0275directiveInject(c.rL),C.\u0275\u0275directiveInject(C.ChangeDetectorRef),C.\u0275\u0275directiveInject(C.NgZone),C.\u0275\u0275directiveInject(b.ErrorStateMatcher),C.\u0275\u0275directiveInject(C.ElementRef),C.\u0275\u0275directiveInject(l.Is,8),C.\u0275\u0275directiveInject(h.NgForm,8),C.\u0275\u0275directiveInject(h.FormGroupDirective,8),C.\u0275\u0275directiveInject(v.G_,8),C.\u0275\u0275directiveInject(h.NgControl,10),C.\u0275\u0275injectAttribute("tabindex"),C.\u0275\u0275directiveInject(Me),C.\u0275\u0275directiveInject(s.Kd),C.\u0275\u0275directiveInject(Xe,8))},$t.\u0275dir=C.\u0275\u0275defineDirective({type:$t,viewQuery:function(Ue,We){if(1&Ue&&(C.\u0275\u0275viewQuery(R,5),C.\u0275\u0275viewQuery(j,5),C.\u0275\u0275viewQuery(n.pI,5)),2&Ue){let ve;C.\u0275\u0275queryRefresh(ve=C.\u0275\u0275loadQuery())&&(We.trigger=ve.first),C.\u0275\u0275queryRefresh(ve=C.\u0275\u0275loadQuery())&&(We.panel=ve.first),C.\u0275\u0275queryRefresh(ve=C.\u0275\u0275loadQuery())&&(We._overlayDir=ve.first)}},inputs:{userAriaDescribedBy:["aria-describedby","userAriaDescribedBy"],panelClass:"panelClass",placeholder:"placeholder",required:"required",multiple:"multiple",disableOptionCentering:"disableOptionCentering",compareWith:"compareWith",value:"value",ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],errorStateMatcher:"errorStateMatcher",typeaheadDebounceInterval:"typeaheadDebounceInterval",sortComparator:"sortComparator",id:"id"},outputs:{openedChange:"openedChange",_openedStream:"opened",_closedStream:"closed",selectionChange:"selectionChange",valueChange:"valueChange"},features:[C.\u0275\u0275InheritDefinitionFeature,C.\u0275\u0275NgOnChangesFeature]}),$t})();function nt($t,Yt){if(1&$t&&(C.\u0275\u0275elementStart(0,"span",8),C.\u0275\u0275text(1),C.\u0275\u0275elementEnd()),2&$t){const Ue=C.\u0275\u0275nextContext();C.\u0275\u0275advance(1),C.\u0275\u0275textInterpolate(Ue.placeholder)}}function ot($t,Yt){if(1&$t&&(C.\u0275\u0275elementStart(0,"span",12),C.\u0275\u0275text(1),C.\u0275\u0275elementEnd()),2&$t){const Ue=C.\u0275\u0275nextContext(2);C.\u0275\u0275advance(1),C.\u0275\u0275textInterpolate(Ue.triggerValue)}}function vt($t,Yt){1&$t&&C.\u0275\u0275projection(0,0,["*ngSwitchCase","true"])}function rt($t,Yt){if(1&$t&&(C.\u0275\u0275elementStart(0,"span",9),C.\u0275\u0275template(1,ot,2,1,"span",10),C.\u0275\u0275template(2,vt,1,0,"ng-content",11),C.\u0275\u0275elementEnd()),2&$t){const Ue=C.\u0275\u0275nextContext();C.\u0275\u0275property("ngSwitch",!!Ue.customTrigger),C.\u0275\u0275advance(2),C.\u0275\u0275property("ngSwitchCase",!0)}}function J($t,Yt){if(1&$t){const Ue=C.\u0275\u0275getCurrentView();C.\u0275\u0275elementStart(0,"div",13)(1,"div",14,15),C.\u0275\u0275listener("@transformPanel.done",function(ve){C.\u0275\u0275restoreView(Ue);const we=C.\u0275\u0275nextContext();return C.\u0275\u0275resetView(we._panelDoneAnimatingStream.next(ve.toState))})("keydown",function(ve){C.\u0275\u0275restoreView(Ue);const we=C.\u0275\u0275nextContext();return C.\u0275\u0275resetView(we._handleKeydown(ve))}),C.\u0275\u0275projection(3,1),C.\u0275\u0275elementEnd()()}if(2&$t){const Ue=C.\u0275\u0275nextContext();C.\u0275\u0275property("@transformPanelWrap",void 0),C.\u0275\u0275advance(1),C.\u0275\u0275classMapInterpolate1("mat-select-panel ",Ue._getPanelTheme(),""),C.\u0275\u0275styleProp("transform-origin",Ue._transformOrigin)("font-size",Ue._triggerFontSize,"px"),C.\u0275\u0275property("ngClass",Ue.panelClass)("@transformPanel",Ue.multiple?"showing-multiple":"showing"),C.\u0275\u0275attribute("id",Ue.id+"-panel")("aria-multiselectable",Ue.multiple)("aria-label",Ue.ariaLabel||null)("aria-labelledby",Ue._getPanelAriaLabelledby())}}const Ce=[[["mat-select-trigger"]],"*"],ee=["mat-select-trigger","*"],ae={transformPanelWrap:(0,D.X$)("transformPanelWrap",[(0,D.eR)("* => void",(0,D.IO)("@transformPanel",[(0,D.pV)()],{optional:!0}))]),transformPanel:(0,D.X$)("transformPanel",[(0,D.SB)("void",(0,D.oB)({transform:"scaleY(0.8)",minWidth:"100%",opacity:0})),(0,D.SB)("showing",(0,D.oB)({opacity:1,minWidth:"calc(100% + 32px)",transform:"scaleY(1)"})),(0,D.SB)("showing-multiple",(0,D.oB)({opacity:1,minWidth:"calc(100% + 64px)",transform:"scaleY(1)"})),(0,D.eR)("void => *",(0,D.jt)("120ms cubic-bezier(0, 0, 0.2, 1)")),(0,D.eR)("* => void",(0,D.jt)("100ms 25ms linear",(0,D.oB)({opacity:0})))])};class Kt{constructor(Yt,Ue){this.source=Yt,this.value=Ue}}let ze=(()=>{class $t{}return $t.\u0275fac=function(Ue){return new(Ue||$t)},$t.\u0275dir=C.\u0275\u0275defineDirective({type:$t,selectors:[["mat-select-trigger"]],features:[C.\u0275\u0275ProvidersFeature([{provide:$e,useExisting:$t}])]}),$t})(),yt=(()=>{class $t extends tt{constructor(){super(...arguments),this._scrollTop=0,this._triggerFontSize=0,this._transformOrigin="top",this._offsetY=0,this._positions=[{originX:"start",originY:"top",overlayX:"start",overlayY:"top"},{originX:"start",originY:"bottom",overlayX:"start",overlayY:"bottom"}]}_calculateOverlayScroll(Ue,We,ve){const we=this._getItemHeight();return Math.min(Math.max(0,we*Ue-We+we/2),ve)}ngOnInit(){super.ngOnInit(),this._viewportRuler.change().pipe((0,E.R)(this._destroy)).subscribe(()=>{this.panelOpen&&(this._triggerRect=this.trigger.nativeElement.getBoundingClientRect(),this._changeDetectorRef.markForCheck())})}open(){super._canOpen()&&(super.open(),this._triggerRect=this.trigger.nativeElement.getBoundingClientRect(),this._triggerFontSize=parseInt(getComputedStyle(this.trigger.nativeElement).fontSize||"0"),this._calculateOverlayPosition(),this._ngZone.onStable.pipe((0,L.q)(1)).subscribe(()=>{this._triggerFontSize&&this._overlayDir.overlayRef&&this._overlayDir.overlayRef.overlayElement&&(this._overlayDir.overlayRef.overlayElement.style.fontSize=`${this._triggerFontSize}px`)}))}_scrollOptionIntoView(Ue){const We=(0,b._countGroupLabelsBeforeOption)(Ue,this.options,this.optionGroups),ve=this._getItemHeight();this.panel.nativeElement.scrollTop=0===Ue&&1===We?0:(0,b._getOptionScrollPosition)((Ue+We)*ve,ve,this.panel.nativeElement.scrollTop,256)}_positioningSettled(){this._calculateOverlayOffsetX(),this.panel.nativeElement.scrollTop=this._scrollTop}_panelDoneAnimating(Ue){this.panelOpen?this._scrollTop=0:(this._overlayDir.offsetX=0,this._changeDetectorRef.markForCheck()),super._panelDoneAnimating(Ue)}_getChangeEvent(Ue){return new Kt(this,Ue)}_getOverlayMinWidth(){return this._triggerRect?.width}_calculateOverlayOffsetX(){const Ue=this._overlayDir.overlayRef.overlayElement.getBoundingClientRect(),We=this._viewportRuler.getViewportSize(),ve=this._isRtl(),we=this.multiple?56:32;let at;if(this.multiple)at=40;else if(this.disableOptionCentering)at=16;else{let ke=this._selectionModel.selected[0]||this.options.first;at=ke&&ke.group?32:16}ve||(at*=-1);const De=0-(Ue.left+at-(ve?we:0)),je=Ue.right+at-We.width+(ve?0:we);De>0?at+=De+8:je>0&&(at-=je+8),this._overlayDir.offsetX=Math.round(at),this._overlayDir.overlayRef.updatePosition()}_calculateOverlayOffsetY(Ue,We,ve){const we=this._getItemHeight(),at=(we-this._triggerRect.height)/2,De=Math.floor(256/we);let je;return this.disableOptionCentering?0:(je=0===this._scrollTop?Ue*we:this._scrollTop===ve?(Ue-(this._getItemCount()-De))*we+(we-(this._getItemCount()*we-256)%we):We-we/2,Math.round(-1*je-at))}_checkOverlayWithinViewport(Ue){const We=this._getItemHeight(),ve=this._viewportRuler.getViewportSize(),we=this._triggerRect.top-8,at=ve.height-this._triggerRect.bottom-8,De=Math.abs(this._offsetY),ke=Math.min(this._getItemCount()*We,256)-De-this._triggerRect.height;ke>at?this._adjustPanelUp(ke,at):De>we?this._adjustPanelDown(De,we,Ue):this._transformOrigin=this._getOriginBasedOnOption()}_adjustPanelUp(Ue,We){const ve=Math.round(Ue-We);this._scrollTop-=ve,this._offsetY-=ve,this._transformOrigin=this._getOriginBasedOnOption(),this._scrollTop<=0&&(this._scrollTop=0,this._offsetY=0,this._transformOrigin="50% bottom 0px")}_adjustPanelDown(Ue,We,ve){const we=Math.round(Ue-We);if(this._scrollTop+=we,this._offsetY+=we,this._transformOrigin=this._getOriginBasedOnOption(),this._scrollTop>=ve)return this._scrollTop=ve,this._offsetY=0,void(this._transformOrigin="50% top 0px")}_calculateOverlayPosition(){const Ue=this._getItemHeight(),We=this._getItemCount(),ve=Math.min(We*Ue,256),at=We*Ue-ve;let De;De=this.empty?0:Math.max(this.options.toArray().indexOf(this._selectionModel.selected[0]),0),De+=(0,b._countGroupLabelsBeforeOption)(De,this.options,this.optionGroups);const je=ve/2;this._scrollTop=this._calculateOverlayScroll(De,je,at),this._offsetY=this._calculateOverlayOffsetY(De,je,at),this._checkOverlayWithinViewport(at)}_getOriginBasedOnOption(){const Ue=this._getItemHeight(),We=(Ue-this._triggerRect.height)/2;return`50% ${Math.abs(this._offsetY)-We+Ue/2}px 0px`}_getItemHeight(){return 3*this._triggerFontSize}_getItemCount(){return this.options.length+this.optionGroups.length}}return $t.\u0275fac=function(){let Yt;return function(We){return(Yt||(Yt=C.\u0275\u0275getInheritedFactory($t)))(We||$t)}}(),$t.\u0275cmp=C.\u0275\u0275defineComponent({type:$t,selectors:[["mat-select"]],contentQueries:function(Ue,We,ve){if(1&Ue&&(C.\u0275\u0275contentQuery(ve,$e,5),C.\u0275\u0275contentQuery(ve,o.MatLegacyOption,5),C.\u0275\u0275contentQuery(ve,b.MAT_OPTGROUP,5)),2&Ue){let we;C.\u0275\u0275queryRefresh(we=C.\u0275\u0275loadQuery())&&(We.customTrigger=we.first),C.\u0275\u0275queryRefresh(we=C.\u0275\u0275loadQuery())&&(We.options=we),C.\u0275\u0275queryRefresh(we=C.\u0275\u0275loadQuery())&&(We.optionGroups=we)}},hostAttrs:["role","combobox","aria-autocomplete","none","aria-haspopup","true","ngSkipHydration","",1,"mat-select"],hostVars:19,hostBindings:function(Ue,We){1&Ue&&C.\u0275\u0275listener("keydown",function(we){return We._handleKeydown(we)})("focus",function(){return We._onFocus()})("blur",function(){return We._onBlur()}),2&Ue&&(C.\u0275\u0275attribute("id",We.id)("tabindex",We.tabIndex)("aria-controls",We.panelOpen?We.id+"-panel":null)("aria-expanded",We.panelOpen)("aria-label",We.ariaLabel||null)("aria-required",We.required.toString())("aria-disabled",We.disabled.toString())("aria-invalid",We.errorState)("aria-activedescendant",We._getAriaActiveDescendant()),C.\u0275\u0275classProp("mat-select-disabled",We.disabled)("mat-select-invalid",We.errorState)("mat-select-required",We.required)("mat-select-empty",We.empty)("mat-select-multiple",We.multiple))},inputs:{disabled:"disabled",disableRipple:"disableRipple",tabIndex:"tabIndex"},exportAs:["matSelect"],features:[C.\u0275\u0275ProvidersFeature([{provide:v.Eo,useExisting:$t},{provide:b.MAT_OPTION_PARENT_COMPONENT,useExisting:$t}]),C.\u0275\u0275InheritDefinitionFeature],ngContentSelectors:ee,decls:9,vars:12,consts:[["cdk-overlay-origin","",1,"mat-select-trigger",3,"click"],["origin","cdkOverlayOrigin","trigger",""],[1,"mat-select-value",3,"ngSwitch"],["class","mat-select-placeholder mat-select-min-line",4,"ngSwitchCase"],["class","mat-select-value-text",3,"ngSwitch",4,"ngSwitchCase"],[1,"mat-select-arrow-wrapper"],[1,"mat-select-arrow"],["cdk-connected-overlay","","cdkConnectedOverlayLockPosition","","cdkConnectedOverlayHasBackdrop","","cdkConnectedOverlayBackdropClass","cdk-overlay-transparent-backdrop",3,"cdkConnectedOverlayPanelClass","cdkConnectedOverlayScrollStrategy","cdkConnectedOverlayOrigin","cdkConnectedOverlayOpen","cdkConnectedOverlayPositions","cdkConnectedOverlayMinWidth","cdkConnectedOverlayOffsetY","backdropClick","attach","detach"],[1,"mat-select-placeholder","mat-select-min-line"],[1,"mat-select-value-text",3,"ngSwitch"],["class","mat-select-min-line",4,"ngSwitchDefault"],[4,"ngSwitchCase"],[1,"mat-select-min-line"],[1,"mat-select-panel-wrap"],["role","listbox","tabindex","-1",3,"ngClass","keydown"],["panel",""]],template:function(Ue,We){if(1&Ue&&(C.\u0275\u0275projectionDef(Ce),C.\u0275\u0275elementStart(0,"div",0,1),C.\u0275\u0275listener("click",function(){return We.toggle()}),C.\u0275\u0275elementStart(3,"div",2),C.\u0275\u0275template(4,nt,2,1,"span",3),C.\u0275\u0275template(5,rt,3,2,"span",4),C.\u0275\u0275elementEnd(),C.\u0275\u0275elementStart(6,"div",5),C.\u0275\u0275element(7,"div",6),C.\u0275\u0275elementEnd()(),C.\u0275\u0275template(8,J,4,14,"ng-template",7),C.\u0275\u0275listener("backdropClick",function(){return We.close()})("attach",function(){return We._onAttached()})("detach",function(){return We.close()})),2&Ue){const ve=C.\u0275\u0275reference(1);C.\u0275\u0275attribute("aria-owns",We.panelOpen?We.id+"-panel":null),C.\u0275\u0275advance(3),C.\u0275\u0275property("ngSwitch",We.empty),C.\u0275\u0275attribute("id",We._valueId),C.\u0275\u0275advance(1),C.\u0275\u0275property("ngSwitchCase",!0),C.\u0275\u0275advance(1),C.\u0275\u0275property("ngSwitchCase",!1),C.\u0275\u0275advance(3),C.\u0275\u0275property("cdkConnectedOverlayPanelClass",We._overlayPanelClass)("cdkConnectedOverlayScrollStrategy",We._scrollStrategy)("cdkConnectedOverlayOrigin",ve)("cdkConnectedOverlayOpen",We.panelOpen)("cdkConnectedOverlayPositions",We._positions)("cdkConnectedOverlayMinWidth",We._getOverlayMinWidth())("cdkConnectedOverlayOffsetY",We._offsetY)}},dependencies:[p.NgClass,p.NgSwitch,p.NgSwitchCase,p.NgSwitchDefault,n.pI,n.xu],styles:['.mat-select{display:inline-block;width:100%;outline:none}.mat-select-trigger{display:inline-flex;align-items:center;cursor:pointer;position:relative;box-sizing:border-box;width:100%}.mat-select-disabled .mat-select-trigger{-webkit-user-select:none;user-select:none;cursor:default}.mat-select-value{width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mat-select-value-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mat-select-arrow-wrapper{height:16px;flex-shrink:0;display:inline-flex;align-items:center}.mat-form-field-appearance-fill .mat-select-arrow-wrapper{transform:translateY(-50%)}.mat-form-field-appearance-outline .mat-select-arrow-wrapper{transform:translateY(-25%)}.mat-form-field-appearance-standard.mat-form-field-has-label .mat-select:not(.mat-select-empty) .mat-select-arrow-wrapper{transform:translateY(-50%)}.mat-form-field-appearance-standard .mat-select.mat-select-empty .mat-select-arrow-wrapper{transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}._mat-animation-noopable.mat-form-field-appearance-standard .mat-select.mat-select-empty .mat-select-arrow-wrapper{transition:none}.mat-select-arrow{width:0;height:0;border-left:5px solid rgba(0,0,0,0);border-right:5px solid rgba(0,0,0,0);border-top:5px solid;margin:0 4px}.mat-form-field.mat-focused .mat-select-arrow{transform:translateX(0)}.mat-select-panel-wrap{flex-basis:100%}.mat-select-panel{min-width:112px;max-width:280px;overflow:auto;-webkit-overflow-scrolling:touch;padding-top:0;padding-bottom:0;max-height:256px;min-width:100%;border-radius:4px;outline:0}.cdk-high-contrast-active .mat-select-panel{outline:solid 1px}.mat-select-panel .mat-optgroup-label,.mat-select-panel .mat-option{font-size:inherit;line-height:3em;height:3em}.mat-form-field-type-mat-select:not(.mat-form-field-disabled) .mat-form-field-flex{cursor:pointer}.mat-form-field-type-mat-select .mat-form-field-label{width:calc(100% - 18px)}.mat-select-placeholder{transition:color 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1)}._mat-animation-noopable .mat-select-placeholder{transition:none}.mat-form-field-hide-placeholder .mat-select-placeholder{color:rgba(0,0,0,0);-webkit-text-fill-color:rgba(0,0,0,0);transition:none;display:block}.mat-select-min-line:empty::before{content:" ";white-space:pre;width:1px;display:inline-block;visibility:hidden}'],encapsulation:2,data:{animation:[ae.transformPanelWrap,ae.transformPanel]},changeDetection:0}),$t})(),Bt=(()=>{class $t{}return $t.\u0275fac=function(Ue){return new(Ue||$t)},$t.\u0275mod=C.\u0275\u0275defineNgModule({type:$t}),$t.\u0275inj=C.\u0275\u0275defineInjector({providers:[Be],imports:[p.CommonModule,n.U8,o.MatLegacyOptionModule,b.MatCommonModule,c.ZD,a.MatLegacyFormFieldModule,o.MatLegacyOptionModule,b.MatCommonModule]}),$t})()},1830:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{MAT_LEGACY_SLIDE_TOGGLE_DEFAULT_OPTIONS:()=>O,MAT_LEGACY_SLIDE_TOGGLE_REQUIRED_VALIDATOR:()=>_,MAT_LEGACY_SLIDE_TOGGLE_VALUE_ACCESSOR:()=>E,MatLegacySlideToggle:()=>R,MatLegacySlideToggleChange:()=>D,MatLegacySlideToggleModule:()=>j,MatLegacySlideToggleRequiredValidator:()=>M,_MatLegacySlideToggleBase:()=>h,_MatLegacySlideToggleRequiredValidatorModule:()=>x});var n=g(7131),p=g(5879),C=g(3680),b=g(4300),o=g(6223),v=g(2495);let r=0;const u=(0,C.mixinTabIndex)((0,C.mixinColor)((0,C.mixinDisableRipple)((0,C.mixinDisabled)(class{constructor(N){this._elementRef=N}}))));let h=(()=>{class N extends u{get required(){return this._required}set required(k){this._required=(0,v.Ig)(k)}get checked(){return this._checked}set checked(k){this._checked=(0,v.Ig)(k),this._changeDetectorRef.markForCheck()}get inputId(){return`${this.id||this._uniqueId}-input`}constructor(k,F,Y,se,ne,me,$){super(k),this._focusMonitor=F,this._changeDetectorRef=Y,this.defaults=ne,this._onChange=q=>{},this._onTouched=()=>{},this._required=!1,this._checked=!1,this.name=null,this.labelPosition="after",this.ariaLabel=null,this.ariaLabelledby=null,this.change=new p.EventEmitter,this.toggleChange=new p.EventEmitter,this.tabIndex=parseInt(se)||0,this.color=this.defaultColor=ne.color||"accent",this._noopAnimations="NoopAnimations"===me,this.id=this._uniqueId=`${$}${++r}`}ngAfterContentInit(){this._focusMonitor.monitor(this._elementRef,!0).subscribe(k=>{"keyboard"===k||"program"===k?(this._focused=!0,this._changeDetectorRef.markForCheck()):k||Promise.resolve().then(()=>{this._focused=!1,this._onTouched(),this._changeDetectorRef.markForCheck()})})}ngOnDestroy(){this._focusMonitor.stopMonitoring(this._elementRef)}writeValue(k){this.checked=!!k}registerOnChange(k){this._onChange=k}registerOnTouched(k){this._onTouched=k}setDisabledState(k){this.disabled=k,this._changeDetectorRef.markForCheck()}toggle(){this.checked=!this.checked,this._onChange(this.checked)}_emitChangeEvent(){this._onChange(this.checked),this.change.emit(this._createChangeEvent(this.checked))}}return N.\u0275fac=function(k){p.\u0275\u0275invalidFactory()},N.\u0275dir=p.\u0275\u0275defineDirective({type:N,inputs:{name:"name",id:"id",labelPosition:"labelPosition",ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],ariaDescribedby:["aria-describedby","ariaDescribedby"],required:"required",checked:"checked"},outputs:{change:"change",toggleChange:"toggleChange"},features:[p.\u0275\u0275InheritDefinitionFeature]}),N})();const _={provide:o.NG_VALIDATORS,useExisting:(0,p.forwardRef)(()=>M),multi:!0};let M=(()=>{class N extends o.CheckboxRequiredValidator{}return N.\u0275fac=function(){let S;return function(F){return(S||(S=p.\u0275\u0275getInheritedFactory(N)))(F||N)}}(),N.\u0275dir=p.\u0275\u0275defineDirective({type:N,selectors:[["mat-slide-toggle","required","","formControlName",""],["mat-slide-toggle","required","","formControl",""],["mat-slide-toggle","required","","ngModel",""]],features:[p.\u0275\u0275ProvidersFeature([_]),p.\u0275\u0275InheritDefinitionFeature]}),N})(),x=(()=>{class N{}return N.\u0275fac=function(k){return new(k||N)},N.\u0275mod=p.\u0275\u0275defineNgModule({type:N}),N.\u0275inj=p.\u0275\u0275defineInjector({}),N})();const L=["input"],A=function(N){return{enterDuration:N}},T=["*"],O=new p.InjectionToken("mat-slide-toggle-default-options",{providedIn:"root",factory:()=>({disableToggleValue:!1})}),E={provide:o.NG_VALUE_ACCESSOR,useExisting:(0,p.forwardRef)(()=>R),multi:!0};class D{constructor(S,k){this.source=S,this.checked=k}}let R=(()=>{class N extends h{constructor(k,F,Y,se,ne,me){super(k,F,Y,se,ne,me,"mat-slide-toggle-")}_createChangeEvent(k){return new D(this,k)}_onChangeEvent(k){k.stopPropagation(),this.toggleChange.emit(),this.defaults.disableToggleValue?this._inputElement.nativeElement.checked=this.checked:(this.checked=this._inputElement.nativeElement.checked,this._emitChangeEvent())}_onInputClick(k){k.stopPropagation()}focus(k,F){F?this._focusMonitor.focusVia(this._inputElement,F,k):this._inputElement.nativeElement.focus(k)}_onLabelTextChange(){this._changeDetectorRef.detectChanges()}}return N.\u0275fac=function(k){return new(k||N)(p.\u0275\u0275directiveInject(p.ElementRef),p.\u0275\u0275directiveInject(b.tE),p.\u0275\u0275directiveInject(p.ChangeDetectorRef),p.\u0275\u0275injectAttribute("tabindex"),p.\u0275\u0275directiveInject(O),p.\u0275\u0275directiveInject(p.ANIMATION_MODULE_TYPE,8))},N.\u0275cmp=p.\u0275\u0275defineComponent({type:N,selectors:[["mat-slide-toggle"]],viewQuery:function(k,F){if(1&k&&p.\u0275\u0275viewQuery(L,5),2&k){let Y;p.\u0275\u0275queryRefresh(Y=p.\u0275\u0275loadQuery())&&(F._inputElement=Y.first)}},hostAttrs:[1,"mat-slide-toggle"],hostVars:13,hostBindings:function(k,F){2&k&&(p.\u0275\u0275hostProperty("id",F.id),p.\u0275\u0275attribute("tabindex",null)("aria-label",null)("aria-labelledby",null)("name",null),p.\u0275\u0275classProp("mat-checked",F.checked)("mat-disabled",F.disabled)("mat-slide-toggle-label-before","before"==F.labelPosition)("_mat-animation-noopable",F._noopAnimations))},inputs:{disabled:"disabled",disableRipple:"disableRipple",color:"color",tabIndex:"tabIndex"},exportAs:["matSlideToggle"],features:[p.\u0275\u0275ProvidersFeature([E]),p.\u0275\u0275InheritDefinitionFeature],ngContentSelectors:T,decls:14,vars:20,consts:[[1,"mat-slide-toggle-label"],["label",""],[1,"mat-slide-toggle-bar"],["type","checkbox","role","switch",1,"mat-slide-toggle-input","cdk-visually-hidden",3,"id","required","tabIndex","checked","disabled","change","click"],["input",""],[1,"mat-slide-toggle-thumb-container"],[1,"mat-slide-toggle-thumb"],["mat-ripple","",1,"mat-slide-toggle-ripple","mat-focus-indicator",3,"matRippleTrigger","matRippleDisabled","matRippleCentered","matRippleRadius","matRippleAnimation"],[1,"mat-ripple-element","mat-slide-toggle-persistent-ripple"],[1,"mat-slide-toggle-content",3,"cdkObserveContent"],["labelContent",""],[2,"display","none"]],template:function(k,F){if(1&k&&(p.\u0275\u0275projectionDef(),p.\u0275\u0275elementStart(0,"label",0,1)(2,"span",2)(3,"input",3,4),p.\u0275\u0275listener("change",function(se){return F._onChangeEvent(se)})("click",function(se){return F._onInputClick(se)}),p.\u0275\u0275elementEnd(),p.\u0275\u0275elementStart(5,"span",5),p.\u0275\u0275element(6,"span",6),p.\u0275\u0275elementStart(7,"span",7),p.\u0275\u0275element(8,"span",8),p.\u0275\u0275elementEnd()()(),p.\u0275\u0275elementStart(9,"span",9,10),p.\u0275\u0275listener("cdkObserveContent",function(){return F._onLabelTextChange()}),p.\u0275\u0275elementStart(11,"span",11),p.\u0275\u0275text(12,"\xa0"),p.\u0275\u0275elementEnd(),p.\u0275\u0275projection(13),p.\u0275\u0275elementEnd()()),2&k){const Y=p.\u0275\u0275reference(1),se=p.\u0275\u0275reference(10);p.\u0275\u0275attribute("for",F.inputId),p.\u0275\u0275advance(2),p.\u0275\u0275classProp("mat-slide-toggle-bar-no-side-margin",!se.textContent||!se.textContent.trim()),p.\u0275\u0275advance(1),p.\u0275\u0275property("id",F.inputId)("required",F.required)("tabIndex",F.tabIndex)("checked",F.checked)("disabled",F.disabled),p.\u0275\u0275attribute("name",F.name)("aria-checked",F.checked)("aria-label",F.ariaLabel)("aria-labelledby",F.ariaLabelledby)("aria-describedby",F.ariaDescribedby),p.\u0275\u0275advance(4),p.\u0275\u0275property("matRippleTrigger",Y)("matRippleDisabled",F.disableRipple||F.disabled)("matRippleCentered",!0)("matRippleRadius",20)("matRippleAnimation",p.\u0275\u0275pureFunction1(18,A,F._noopAnimations?0:150))}},dependencies:[C.MatRipple,n.wD],styles:['.mat-slide-toggle{display:inline-block;height:24px;max-width:100%;line-height:24px;white-space:nowrap;outline:none;-webkit-tap-highlight-color:rgba(0,0,0,0)}.mat-slide-toggle.mat-checked .mat-slide-toggle-thumb-container{transform:translate3d(16px, 0, 0)}[dir=rtl] .mat-slide-toggle.mat-checked .mat-slide-toggle-thumb-container{transform:translate3d(-16px, 0, 0)}.mat-slide-toggle.mat-disabled{opacity:.38}.mat-slide-toggle.mat-disabled .mat-slide-toggle-label,.mat-slide-toggle.mat-disabled .mat-slide-toggle-thumb-container{cursor:default}.mat-slide-toggle-label{-webkit-user-select:none;user-select:none;display:flex;flex:1;flex-direction:row;align-items:center;height:inherit;cursor:pointer}.mat-slide-toggle-content{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mat-slide-toggle-label-before .mat-slide-toggle-label{order:1}.mat-slide-toggle-label-before .mat-slide-toggle-bar{order:2}[dir=rtl] .mat-slide-toggle-label-before .mat-slide-toggle-bar,.mat-slide-toggle-bar{margin-right:8px;margin-left:0}[dir=rtl] .mat-slide-toggle-bar,.mat-slide-toggle-label-before .mat-slide-toggle-bar{margin-left:8px;margin-right:0}.mat-slide-toggle-bar-no-side-margin{margin-left:0;margin-right:0}.mat-slide-toggle-thumb-container{position:absolute;z-index:1;width:20px;height:20px;top:-3px;left:0;transform:translate3d(0, 0, 0);transition:all 80ms linear;transition-property:transform}._mat-animation-noopable .mat-slide-toggle-thumb-container{transition:none}[dir=rtl] .mat-slide-toggle-thumb-container{left:auto;right:0}.mat-slide-toggle-thumb{height:20px;width:20px;border-radius:50%;display:block}.mat-slide-toggle-bar{position:relative;width:36px;height:14px;flex-shrink:0;border-radius:8px}.mat-slide-toggle-input{bottom:0;left:10px}[dir=rtl] .mat-slide-toggle-input{left:auto;right:10px}.mat-slide-toggle-bar,.mat-slide-toggle-thumb{transition:all 80ms linear;transition-property:background-color;transition-delay:50ms}._mat-animation-noopable .mat-slide-toggle-bar,._mat-animation-noopable .mat-slide-toggle-thumb{transition:none}.mat-slide-toggle .mat-slide-toggle-ripple{position:absolute;top:calc(50% - 20px);left:calc(50% - 20px);height:40px;width:40px;z-index:1;pointer-events:none}.mat-slide-toggle .mat-slide-toggle-ripple .mat-ripple-element:not(.mat-slide-toggle-persistent-ripple){opacity:.12}.mat-slide-toggle-persistent-ripple{width:100%;height:100%;transform:none}.mat-slide-toggle-bar:hover .mat-slide-toggle-persistent-ripple{opacity:.04}.mat-slide-toggle:not(.mat-disabled).cdk-keyboard-focused .mat-slide-toggle-persistent-ripple{opacity:.12}.mat-slide-toggle-persistent-ripple,.mat-slide-toggle.mat-disabled .mat-slide-toggle-bar:hover .mat-slide-toggle-persistent-ripple{opacity:0}@media(hover: none){.mat-slide-toggle-bar:hover .mat-slide-toggle-persistent-ripple{display:none}}.mat-slide-toggle-input:focus~.mat-slide-toggle-thumb-container .mat-focus-indicator::before{content:""}.cdk-high-contrast-active .mat-slide-toggle-thumb,.cdk-high-contrast-active .mat-slide-toggle-bar{border:1px solid}'],encapsulation:2,changeDetection:0}),N})(),j=(()=>{class N{}return N.\u0275fac=function(k){return new(k||N)},N.\u0275mod=p.\u0275\u0275defineNgModule({type:N}),N.\u0275inj=p.\u0275\u0275defineInjector({imports:[x,C.MatRippleModule,C.MatCommonModule,n.Q8,x,C.MatCommonModule]}),N})()},4433:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{MAT_LEGACY_SLIDER_VALUE_ACCESSOR:()=>M,MatLegacySlider:()=>L,MatLegacySliderChange:()=>x,MatLegacySliderModule:()=>R});var n=g(6814),p=g(5879),C=g(3680),b=g(4300),o=g(9388),v=g(2495),a=g(6028),c=g(6223),s=g(2831),l=g(7394);const d=["sliderWrapper"],r=(0,s.i$)({passive:!1}),M={provide:c.NG_VALUE_ACCESSOR,useExisting:(0,p.forwardRef)(()=>L),multi:!0};class x{}const w=(0,C.mixinTabIndex)((0,C.mixinColor)((0,C.mixinDisabled)(class{constructor(j){this._elementRef=j}}),"accent"));let L=(()=>{class j extends w{get invert(){return this._invert}set invert(S){this._invert=(0,v.Ig)(S)}get max(){return this._max}set max(S){this._max=(0,v.su)(S,this._max),this._percent=this._calculatePercentage(this._value),this._changeDetectorRef.markForCheck()}get min(){return this._min}set min(S){this._min=(0,v.su)(S,this._min),this._percent=this._calculatePercentage(this._value),this._changeDetectorRef.markForCheck()}get step(){return this._step}set step(S){this._step=(0,v.su)(S,this._step),this._step%1!=0&&(this._roundToDecimal=this._step.toString().split(".").pop().length),this._changeDetectorRef.markForCheck()}get thumbLabel(){return this._thumbLabel}set thumbLabel(S){this._thumbLabel=(0,v.Ig)(S)}get tickInterval(){return this._tickInterval}set tickInterval(S){this._tickInterval="auto"===S?"auto":"number"==typeof S||"string"==typeof S?(0,v.su)(S,this._tickInterval):0}get value(){return null===this._value&&(this.value=this._min),this._value}set value(S){if(S!==this._value){let k=(0,v.su)(S,0);this._roundToDecimal&&k!==this.min&&k!==this.max&&(k=parseFloat(k.toFixed(this._roundToDecimal))),this._value=k,this._percent=this._calculatePercentage(this._value),this._changeDetectorRef.markForCheck()}}get vertical(){return this._vertical}set vertical(S){this._vertical=(0,v.Ig)(S)}get displayValue(){return this.displayWith?this.displayWith(this.value):this._roundToDecimal&&this.value&&this.value%1!=0?this.value.toFixed(this._roundToDecimal):this.value||0}focus(S){this._focusHostElement(S)}blur(){this._blurHostElement()}get percent(){return this._clamp(this._percent)}_shouldInvertAxis(){return this.vertical?!this.invert:this.invert}_isMinValue(){return 0===this.percent}_getThumbGap(){return this.disabled?7:this._isMinValue()&&!this.thumbLabel?this._isActive?10:7:0}_getTrackBackgroundStyles(){const k=this.vertical?`1, ${1-this.percent}, 1`:1-this.percent+", 1, 1";return{transform:`translate${this.vertical?"Y":"X"}(${this._shouldInvertMouseCoords()?"-":""}${this._getThumbGap()}px) scale3d(${k})`}}_getTrackFillStyles(){const S=this.percent,F=this.vertical?`1, ${S}, 1`:`${S}, 1, 1`;return{transform:`translate${this.vertical?"Y":"X"}(${this._shouldInvertMouseCoords()?"":"-"}${this._getThumbGap()}px) scale3d(${F})`,display:0===S?"none":""}}_getTicksContainerStyles(){return{transform:`translate${this.vertical?"Y":"X"}(${this.vertical||"rtl"!=this._getDirection()?"-":""}${this._tickIntervalPercent/2*100}%)`}}_getTicksStyles(){let S=100*this._tickIntervalPercent,ne={backgroundSize:this.vertical?`2px ${S}%`:`${S}% 2px`,transform:`translateZ(0) translate${this.vertical?"Y":"X"}(${this.vertical||"rtl"!=this._getDirection()?"":"-"}${S/2}%)${this.vertical||"rtl"!=this._getDirection()?"":" rotate(180deg)"}`};if(this._isMinValue()&&this._getThumbGap()){const me=this._shouldInvertAxis();let $;$=this.vertical?me?"Bottom":"Top":me?"Right":"Left",ne[`padding${$}`]=`${this._getThumbGap()}px`}return ne}_getThumbContainerStyles(){const S=this._shouldInvertAxis();return{transform:`translate${this.vertical?"Y":"X"}(-${100*(("rtl"!=this._getDirection()||this.vertical?S:!S)?this.percent:1-this.percent)}%)`}}_shouldInvertMouseCoords(){const S=this._shouldInvertAxis();return"rtl"!=this._getDirection()||this.vertical?S:!S}_getDirection(){return this._dir&&"rtl"==this._dir.value?"rtl":"ltr"}constructor(S,k,F,Y,se,ne,me,$){super(S),this._focusMonitor=k,this._changeDetectorRef=F,this._dir=Y,this._ngZone=ne,this._animationMode=$,this._invert=!1,this._max=100,this._min=0,this._step=1,this._thumbLabel=!1,this._tickInterval=0,this._value=null,this._vertical=!1,this.change=new p.EventEmitter,this.input=new p.EventEmitter,this.valueChange=new p.EventEmitter,this.onTouched=()=>{},this._percent=0,this._isSliding=null,this._isActive=!1,this._tickIntervalPercent=0,this._sliderDimensions=null,this._controlValueAccessorChangeFn=()=>{},this._dirChangeSubscription=l.w0.EMPTY,this._pointerDown=q=>{this.disabled||this._isSliding||!T(q)&&0!==q.button||this._ngZone.run(()=>{this._touchId=T(q)?function D(j,N){for(let S=0;S{if("pointer"===this._isSliding){const Q=O(q,this._touchId);if(Q){q.cancelable&&q.preventDefault();const ue=this.value;this._lastPointerEvent=q,this._updateValueFromPosition(Q),ue!=this.value&&this._emitInputEvent()}}},this._pointerUp=q=>{"pointer"===this._isSliding&&(!T(q)||"number"!=typeof this._touchId||E(q.changedTouches,this._touchId))&&(q.cancelable&&q.preventDefault(),this._removeGlobalEvents(),this._isSliding=null,this._touchId=void 0,this._valueOnSlideStart!=this.value&&!this.disabled&&this._emitChangeEvent(),this._valueOnSlideStart=this._lastPointerEvent=null)},this._windowBlur=()=>{this._lastPointerEvent&&this._pointerUp(this._lastPointerEvent)},this._document=me,this.tabIndex=parseInt(se)||0,ne.runOutsideAngular(()=>{const q=S.nativeElement;q.addEventListener("mousedown",this._pointerDown,r),q.addEventListener("touchstart",this._pointerDown,r)})}ngAfterViewInit(){this._focusMonitor.monitor(this._elementRef,!0).subscribe(S=>{this._isActive=!!S&&"keyboard"!==S,this._changeDetectorRef.detectChanges()}),this._dir&&(this._dirChangeSubscription=this._dir.change.subscribe(()=>{this._changeDetectorRef.markForCheck()}))}ngOnDestroy(){const S=this._elementRef.nativeElement;S.removeEventListener("mousedown",this._pointerDown,r),S.removeEventListener("touchstart",this._pointerDown,r),this._lastPointerEvent=null,this._removeGlobalEvents(),this._focusMonitor.stopMonitoring(this._elementRef),this._dirChangeSubscription.unsubscribe()}_onMouseenter(){this.disabled||(this._sliderDimensions=this._getSliderDimensions(),this._updateTickIntervalPercent())}_onFocus(){this._sliderDimensions=this._getSliderDimensions(),this._updateTickIntervalPercent()}_onBlur(){this.onTouched()}_onKeydown(S){if(this.disabled||(0,a.Vb)(S)||this._isSliding&&"keyboard"!==this._isSliding)return;const k=this.value;switch(S.keyCode){case a.Ku:this._increment(10);break;case a.VM:this._increment(-10);break;case a.uR:this.value=this.max;break;case a.Sd:this.value=this.min;break;case a.oh:this._increment("rtl"==this._getDirection()?1:-1);break;case a.LH:this._increment(1);break;case a.SV:this._increment("rtl"==this._getDirection()?-1:1);break;case a.JH:this._increment(-1);break;default:return}k!=this.value&&(this._emitInputEvent(),this._emitChangeEvent()),this._isSliding="keyboard",S.preventDefault()}_onKeyup(){"keyboard"===this._isSliding&&(this._isSliding=null)}_getWindow(){return this._document.defaultView||window}_bindGlobalEvents(S){const k=this._document,F=T(S),se=F?"touchend":"mouseup";k.addEventListener(F?"touchmove":"mousemove",this._pointerMove,r),k.addEventListener(se,this._pointerUp,r),F&&k.addEventListener("touchcancel",this._pointerUp,r);const ne=this._getWindow();typeof ne<"u"&&ne&&ne.addEventListener("blur",this._windowBlur)}_removeGlobalEvents(){const S=this._document;S.removeEventListener("mousemove",this._pointerMove,r),S.removeEventListener("mouseup",this._pointerUp,r),S.removeEventListener("touchmove",this._pointerMove,r),S.removeEventListener("touchend",this._pointerUp,r),S.removeEventListener("touchcancel",this._pointerUp,r);const k=this._getWindow();typeof k<"u"&&k&&k.removeEventListener("blur",this._windowBlur)}_increment(S){const k=this._clamp(this.value||0,this.min,this.max);this.value=this._clamp(k+this.step*S,this.min,this.max)}_updateValueFromPosition(S){if(!this._sliderDimensions)return;let se=this._clamp(((this.vertical?S.y:S.x)-(this.vertical?this._sliderDimensions.top:this._sliderDimensions.left))/(this.vertical?this._sliderDimensions.height:this._sliderDimensions.width));if(this._shouldInvertMouseCoords()&&(se=1-se),0===se)this.value=this.min;else if(1===se)this.value=this.max;else{const ne=this._calculateValue(se),me=Math.round((ne-this.min)/this.step)*this.step+this.min;this.value=this._clamp(me,this.min,this.max)}}_emitChangeEvent(){this._controlValueAccessorChangeFn(this.value),this.valueChange.emit(this.value),this.change.emit(this._createChangeEvent())}_emitInputEvent(){this.input.emit(this._createChangeEvent())}_updateTickIntervalPercent(){if(!this.tickInterval||!this._sliderDimensions)return;let S;if("auto"==this.tickInterval){let k=this.vertical?this._sliderDimensions.height:this._sliderDimensions.width;S=Math.ceil(30/(k*this.step/(this.max-this.min)))*this.step/k}else S=this.tickInterval*this.step/(this.max-this.min);this._tickIntervalPercent=A(S)?S:0}_createChangeEvent(S=this.value){let k=new x;return k.source=this,k.value=S,k}_calculatePercentage(S){const k=((S||0)-this.min)/(this.max-this.min);return A(k)?k:0}_calculateValue(S){return this.min+S*(this.max-this.min)}_clamp(S,k=0,F=1){return Math.max(k,Math.min(S,F))}_getSliderDimensions(){return this._sliderWrapper?this._sliderWrapper.nativeElement.getBoundingClientRect():null}_focusHostElement(S){this._elementRef.nativeElement.focus(S)}_blurHostElement(){this._elementRef.nativeElement.blur()}writeValue(S){this.value=S}registerOnChange(S){this._controlValueAccessorChangeFn=S}registerOnTouched(S){this.onTouched=S}setDisabledState(S){this.disabled=S}}return j.\u0275fac=function(S){return new(S||j)(p.\u0275\u0275directiveInject(p.ElementRef),p.\u0275\u0275directiveInject(b.tE),p.\u0275\u0275directiveInject(p.ChangeDetectorRef),p.\u0275\u0275directiveInject(o.Is,8),p.\u0275\u0275injectAttribute("tabindex"),p.\u0275\u0275directiveInject(p.NgZone),p.\u0275\u0275directiveInject(n.DOCUMENT),p.\u0275\u0275directiveInject(p.ANIMATION_MODULE_TYPE,8))},j.\u0275cmp=p.\u0275\u0275defineComponent({type:j,selectors:[["mat-slider"]],viewQuery:function(S,k){if(1&S&&p.\u0275\u0275viewQuery(d,5),2&S){let F;p.\u0275\u0275queryRefresh(F=p.\u0275\u0275loadQuery())&&(k._sliderWrapper=F.first)}},hostAttrs:["role","slider",1,"mat-slider","mat-focus-indicator"],hostVars:29,hostBindings:function(S,k){1&S&&p.\u0275\u0275listener("focus",function(){return k._onFocus()})("blur",function(){return k._onBlur()})("keydown",function(Y){return k._onKeydown(Y)})("keyup",function(){return k._onKeyup()})("mouseenter",function(){return k._onMouseenter()})("selectstart",function(Y){return Y.preventDefault()}),2&S&&(p.\u0275\u0275hostProperty("tabIndex",k.tabIndex),p.\u0275\u0275attribute("aria-disabled",k.disabled)("aria-valuemax",k.max)("aria-valuemin",k.min)("aria-valuenow",k.value)("aria-valuetext",null==k.valueText?k.displayValue:k.valueText)("aria-orientation",k.vertical?"vertical":"horizontal"),p.\u0275\u0275classProp("mat-slider-disabled",k.disabled)("mat-slider-has-ticks",k.tickInterval)("mat-slider-horizontal",!k.vertical)("mat-slider-axis-inverted",k._shouldInvertAxis())("mat-slider-invert-mouse-coords",k._shouldInvertMouseCoords())("mat-slider-sliding",k._isSliding)("mat-slider-thumb-label-showing",k.thumbLabel)("mat-slider-vertical",k.vertical)("mat-slider-min-value",k._isMinValue())("mat-slider-hide-last-tick",k.disabled||k._isMinValue()&&k._getThumbGap()&&k._shouldInvertAxis())("_mat-animation-noopable","NoopAnimations"===k._animationMode))},inputs:{disabled:"disabled",color:"color",tabIndex:"tabIndex",invert:"invert",max:"max",min:"min",step:"step",thumbLabel:"thumbLabel",tickInterval:"tickInterval",value:"value",displayWith:"displayWith",valueText:"valueText",vertical:"vertical"},outputs:{change:"change",input:"input",valueChange:"valueChange"},exportAs:["matSlider"],features:[p.\u0275\u0275ProvidersFeature([M]),p.\u0275\u0275InheritDefinitionFeature],decls:13,vars:6,consts:[[1,"mat-slider-wrapper"],["sliderWrapper",""],[1,"mat-slider-track-wrapper"],[1,"mat-slider-track-background",3,"ngStyle"],[1,"mat-slider-track-fill",3,"ngStyle"],[1,"mat-slider-ticks-container",3,"ngStyle"],[1,"mat-slider-ticks",3,"ngStyle"],[1,"mat-slider-thumb-container",3,"ngStyle"],[1,"mat-slider-focus-ring"],[1,"mat-slider-thumb"],[1,"mat-slider-thumb-label"],[1,"mat-slider-thumb-label-text"]],template:function(S,k){1&S&&(p.\u0275\u0275elementStart(0,"div",0,1)(2,"div",2),p.\u0275\u0275element(3,"div",3)(4,"div",4),p.\u0275\u0275elementEnd(),p.\u0275\u0275elementStart(5,"div",5),p.\u0275\u0275element(6,"div",6),p.\u0275\u0275elementEnd(),p.\u0275\u0275elementStart(7,"div",7),p.\u0275\u0275element(8,"div",8)(9,"div",9),p.\u0275\u0275elementStart(10,"div",10)(11,"span",11),p.\u0275\u0275text(12),p.\u0275\u0275elementEnd()()()()),2&S&&(p.\u0275\u0275advance(3),p.\u0275\u0275property("ngStyle",k._getTrackBackgroundStyles()),p.\u0275\u0275advance(1),p.\u0275\u0275property("ngStyle",k._getTrackFillStyles()),p.\u0275\u0275advance(1),p.\u0275\u0275property("ngStyle",k._getTicksContainerStyles()),p.\u0275\u0275advance(1),p.\u0275\u0275property("ngStyle",k._getTicksStyles()),p.\u0275\u0275advance(1),p.\u0275\u0275property("ngStyle",k._getThumbContainerStyles()),p.\u0275\u0275advance(5),p.\u0275\u0275textInterpolate(k.displayValue))},dependencies:[n.NgStyle],styles:['.mat-slider{display:inline-block;position:relative;box-sizing:border-box;padding:8px;outline:none;vertical-align:middle}.mat-slider:not(.mat-slider-disabled):active,.mat-slider.mat-slider-sliding:not(.mat-slider-disabled){cursor:grabbing}.mat-slider-wrapper{-webkit-print-color-adjust:exact;color-adjust:exact;position:absolute}.mat-slider-track-wrapper{position:absolute;top:0;left:0;overflow:hidden}.mat-slider-track-fill{position:absolute;transform-origin:0 0;transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1),background-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-track-background{position:absolute;transform-origin:100% 100%;transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1),background-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-ticks-container{position:absolute;left:0;top:0;overflow:hidden}.mat-slider-ticks{-webkit-background-clip:content-box;background-clip:content-box;background-repeat:repeat;box-sizing:border-box;opacity:0;transition:opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-thumb-container{position:absolute;z-index:1;transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-focus-ring{position:absolute;width:30px;height:30px;border-radius:50%;transform:scale(0);opacity:0;transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1),background-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1),opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider.cdk-keyboard-focused .mat-slider-focus-ring,.mat-slider.cdk-program-focused .mat-slider-focus-ring{transform:scale(1);opacity:1}.mat-slider:not(.mat-slider-disabled):not(.mat-slider-sliding) .mat-slider-thumb-label,.mat-slider:not(.mat-slider-disabled):not(.mat-slider-sliding) .mat-slider-thumb{cursor:grab}.mat-slider-thumb{position:absolute;right:-10px;bottom:-10px;box-sizing:border-box;width:20px;height:20px;border:3px solid rgba(0,0,0,0);border-radius:50%;transform:scale(0.7);transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1),background-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1),border-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-thumb-label{display:none;align-items:center;justify-content:center;position:absolute;width:28px;height:28px;border-radius:50%;transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1),border-radius 400ms cubic-bezier(0.25, 0.8, 0.25, 1),background-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.cdk-high-contrast-active .mat-slider-thumb-label{outline:solid 1px}.mat-slider-thumb-label-text{z-index:1;opacity:0;transition:opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-sliding .mat-slider-track-fill,.mat-slider-sliding .mat-slider-track-background,.mat-slider-sliding .mat-slider-thumb-container{transition-duration:0ms}.mat-slider-has-ticks .mat-slider-wrapper::after{content:"";position:absolute;border-width:0;border-style:solid;opacity:0;transition:opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-has-ticks.cdk-focused:not(.mat-slider-hide-last-tick) .mat-slider-wrapper::after,.mat-slider-has-ticks:hover:not(.mat-slider-hide-last-tick) .mat-slider-wrapper::after{opacity:1}.mat-slider-has-ticks.cdk-focused:not(.mat-slider-disabled) .mat-slider-ticks,.mat-slider-has-ticks:hover:not(.mat-slider-disabled) .mat-slider-ticks{opacity:1}.mat-slider-thumb-label-showing .mat-slider-focus-ring{display:none}.mat-slider-thumb-label-showing .mat-slider-thumb-label{display:flex}.mat-slider-axis-inverted .mat-slider-track-fill{transform-origin:100% 100%}.mat-slider-axis-inverted .mat-slider-track-background{transform-origin:0 0}.mat-slider:not(.mat-slider-disabled).cdk-focused.mat-slider-thumb-label-showing .mat-slider-thumb{transform:scale(0)}.mat-slider:not(.mat-slider-disabled).cdk-focused .mat-slider-thumb-label{border-radius:50% 50% 0}.mat-slider:not(.mat-slider-disabled).cdk-focused .mat-slider-thumb-label-text{opacity:1}.mat-slider:not(.mat-slider-disabled).cdk-mouse-focused .mat-slider-thumb,.mat-slider:not(.mat-slider-disabled).cdk-touch-focused .mat-slider-thumb,.mat-slider:not(.mat-slider-disabled).cdk-program-focused .mat-slider-thumb{border-width:2px;transform:scale(1)}.mat-slider-disabled .mat-slider-focus-ring{transform:scale(0);opacity:0}.mat-slider-disabled .mat-slider-thumb{border-width:4px;transform:scale(0.5)}.mat-slider-disabled .mat-slider-thumb-label{display:none}.mat-slider-horizontal{height:48px;min-width:128px}.mat-slider-horizontal .mat-slider-wrapper{height:2px;top:23px;left:8px;right:8px}.mat-slider-horizontal .mat-slider-wrapper::after{height:2px;border-left-width:2px;right:0;top:0}.mat-slider-horizontal .mat-slider-track-wrapper{height:2px;width:100%}.mat-slider-horizontal .mat-slider-track-fill{height:2px;width:100%;transform:scaleX(0)}.mat-slider-horizontal .mat-slider-track-background{height:2px;width:100%;transform:scaleX(1)}.mat-slider-horizontal .mat-slider-ticks-container{height:2px;width:100%}.cdk-high-contrast-active .mat-slider-horizontal .mat-slider-ticks-container{height:0;outline:solid 2px;top:1px}.mat-slider-horizontal .mat-slider-ticks{height:2px;width:100%}.mat-slider-horizontal .mat-slider-thumb-container{width:100%;height:0;top:50%}.mat-slider-horizontal .mat-slider-focus-ring{top:-15px;right:-15px}.mat-slider-horizontal .mat-slider-thumb-label{right:-14px;top:-40px;transform:translateY(26px) scale(0.01) rotate(45deg)}.mat-slider-horizontal .mat-slider-thumb-label-text{transform:rotate(-45deg)}.mat-slider-horizontal.cdk-focused .mat-slider-thumb-label{transform:rotate(45deg)}.cdk-high-contrast-active .mat-slider-horizontal.cdk-focused .mat-slider-thumb-label,.cdk-high-contrast-active .mat-slider-horizontal.cdk-focused .mat-slider-thumb-label-text{transform:none}.mat-slider-vertical{width:48px;min-height:128px}.mat-slider-vertical .mat-slider-wrapper{width:2px;top:8px;bottom:8px;left:23px}.mat-slider-vertical .mat-slider-wrapper::after{width:2px;border-top-width:2px;bottom:0;left:0}.mat-slider-vertical .mat-slider-track-wrapper{height:100%;width:2px}.mat-slider-vertical .mat-slider-track-fill{height:100%;width:2px;transform:scaleY(0)}.mat-slider-vertical .mat-slider-track-background{height:100%;width:2px;transform:scaleY(1)}.mat-slider-vertical .mat-slider-ticks-container{width:2px;height:100%}.cdk-high-contrast-active .mat-slider-vertical .mat-slider-ticks-container{width:0;outline:solid 2px;left:1px}.mat-slider-vertical .mat-slider-focus-ring{bottom:-15px;left:-15px}.mat-slider-vertical .mat-slider-ticks{width:2px;height:100%}.mat-slider-vertical .mat-slider-thumb-container{height:100%;width:0;left:50%}.mat-slider-vertical .mat-slider-thumb{-webkit-backface-visibility:hidden;backface-visibility:hidden}.mat-slider-vertical .mat-slider-thumb-label{bottom:-14px;left:-40px;transform:translateX(26px) scale(0.01) rotate(-45deg)}.mat-slider-vertical .mat-slider-thumb-label-text{transform:rotate(45deg)}.mat-slider-vertical.cdk-focused .mat-slider-thumb-label{transform:rotate(-45deg)}[dir=rtl] .mat-slider-wrapper::after{left:0;right:auto}[dir=rtl] .mat-slider-horizontal .mat-slider-track-fill{transform-origin:100% 100%}[dir=rtl] .mat-slider-horizontal .mat-slider-track-background{transform-origin:0 0}[dir=rtl] .mat-slider-horizontal.mat-slider-axis-inverted .mat-slider-track-fill{transform-origin:0 0}[dir=rtl] .mat-slider-horizontal.mat-slider-axis-inverted .mat-slider-track-background{transform-origin:100% 100%}.mat-slider._mat-animation-noopable .mat-slider-track-fill,.mat-slider._mat-animation-noopable .mat-slider-track-background,.mat-slider._mat-animation-noopable .mat-slider-ticks,.mat-slider._mat-animation-noopable .mat-slider-thumb-container,.mat-slider._mat-animation-noopable .mat-slider-focus-ring,.mat-slider._mat-animation-noopable .mat-slider-thumb,.mat-slider._mat-animation-noopable .mat-slider-thumb-label,.mat-slider._mat-animation-noopable .mat-slider-thumb-label-text,.mat-slider._mat-animation-noopable .mat-slider-has-ticks .mat-slider-wrapper::after{transition:none}'],encapsulation:2,changeDetection:0}),j})();function A(j){return!isNaN(j)&&isFinite(j)}function T(j){return"t"===j.type[0]}function O(j,N){let S;return S=T(j)?"number"==typeof N?E(j.touches,N)||E(j.changedTouches,N):j.touches[0]||j.changedTouches[0]:j,S?{x:S.clientX,y:S.clientY}:void 0}function E(j,N){for(let S=0;S{class j{}return j.\u0275fac=function(S){return new(S||j)},j.\u0275mod=p.\u0275\u0275defineNgModule({type:j}),j.\u0275inj=p.\u0275\u0275defineInjector({imports:[n.CommonModule,C.MatCommonModule,C.MatCommonModule]}),j})()},2214:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{MatLegacyCell:()=>Dn,MatLegacyCellDef:()=>Zn,MatLegacyColumnDef:()=>ri,MatLegacyFooterCell:()=>en,MatLegacyFooterCellDef:()=>Qn,MatLegacyFooterRow:()=>Ii,MatLegacyFooterRowDef:()=>Yn,MatLegacyHeaderCell:()=>ln,MatLegacyHeaderCellDef:()=>mi,MatLegacyHeaderRow:()=>ii,MatLegacyHeaderRowDef:()=>An,MatLegacyNoDataRow:()=>li,MatLegacyRecycleRows:()=>$n,MatLegacyRow:()=>oi,MatLegacyRowDef:()=>si,MatLegacyTable:()=>In,MatLegacyTableDataSource:()=>Ae,MatLegacyTableModule:()=>Ft,MatLegacyTextColumn:()=>Pi,_MatLegacyTableDataSource:()=>mt});var n=g(5879),p=g(9388),C=g(2495),b=g(8337),o=g(2831),v=g(6672),a=g(6814),c=g(8645),s=g(2459),l=g(5619),d=g(2664),r=g(2096),u=g(9773),h=g(8180);const m=[[["caption"]],[["colgroup"],["col"]]],_=["caption","colgroup, col"];function M(W,be){if(1&W&&(n.\u0275\u0275elementStart(0,"th",3),n.\u0275\u0275text(1),n.\u0275\u0275elementEnd()),2&W){const ge=n.\u0275\u0275nextContext();n.\u0275\u0275styleProp("text-align",ge.justify),n.\u0275\u0275advance(1),n.\u0275\u0275textInterpolate1(" ",ge.headerText," ")}}function x(W,be){if(1&W&&(n.\u0275\u0275elementStart(0,"td",4),n.\u0275\u0275text(1),n.\u0275\u0275elementEnd()),2&W){const ge=be.$implicit,Ge=n.\u0275\u0275nextContext();n.\u0275\u0275styleProp("text-align",Ge.justify),n.\u0275\u0275advance(1),n.\u0275\u0275textInterpolate1(" ",Ge.dataAccessor(ge,Ge.name)," ")}}function w(W){return class extends W{get sticky(){return this._sticky}set sticky(be){const ge=this._sticky;this._sticky=(0,C.Ig)(be),this._hasStickyChanged=ge!==this._sticky}hasStickyChanged(){const be=this._hasStickyChanged;return this._hasStickyChanged=!1,be}resetStickyChanged(){this._hasStickyChanged=!1}constructor(...be){super(...be),this._sticky=!1,this._hasStickyChanged=!1}}}const L=new n.InjectionToken("CDK_TABLE"),A=new n.InjectionToken("text-column-options");let T=(()=>{class W{constructor(ge){this.template=ge}}return W.\u0275fac=function(ge){return new(ge||W)(n.\u0275\u0275directiveInject(n.TemplateRef))},W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["","cdkCellDef",""]]}),W})(),O=(()=>{class W{constructor(ge){this.template=ge}}return W.\u0275fac=function(ge){return new(ge||W)(n.\u0275\u0275directiveInject(n.TemplateRef))},W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["","cdkHeaderCellDef",""]]}),W})(),E=(()=>{class W{constructor(ge){this.template=ge}}return W.\u0275fac=function(ge){return new(ge||W)(n.\u0275\u0275directiveInject(n.TemplateRef))},W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["","cdkFooterCellDef",""]]}),W})();class D{}const R=w(D);let j=(()=>{class W extends R{get name(){return this._name}set name(ge){this._setNameInput(ge)}get stickyEnd(){return this._stickyEnd}set stickyEnd(ge){const Ge=this._stickyEnd;this._stickyEnd=(0,C.Ig)(ge),this._hasStickyChanged=Ge!==this._stickyEnd}constructor(ge){super(),this._table=ge,this._stickyEnd=!1}_updateColumnCssClassName(){this._columnCssClassName=[`cdk-column-${this.cssClassFriendlyName}`]}_setNameInput(ge){ge&&(this._name=ge,this.cssClassFriendlyName=ge.replace(/[^a-z0-9_-]/gi,"-"),this._updateColumnCssClassName())}}return W.\u0275fac=function(ge){return new(ge||W)(n.\u0275\u0275directiveInject(L,8))},W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["","cdkColumnDef",""]],contentQueries:function(ge,Ge,It){if(1&ge&&(n.\u0275\u0275contentQuery(It,T,5),n.\u0275\u0275contentQuery(It,O,5),n.\u0275\u0275contentQuery(It,E,5)),2&ge){let zt;n.\u0275\u0275queryRefresh(zt=n.\u0275\u0275loadQuery())&&(Ge.cell=zt.first),n.\u0275\u0275queryRefresh(zt=n.\u0275\u0275loadQuery())&&(Ge.headerCell=zt.first),n.\u0275\u0275queryRefresh(zt=n.\u0275\u0275loadQuery())&&(Ge.footerCell=zt.first)}},inputs:{sticky:"sticky",name:["cdkColumnDef","name"],stickyEnd:"stickyEnd"},features:[n.\u0275\u0275ProvidersFeature([{provide:"MAT_SORT_HEADER_COLUMN_DEF",useExisting:W}]),n.\u0275\u0275InheritDefinitionFeature]}),W})();class N{constructor(be,ge){ge.nativeElement.classList.add(...be._columnCssClassName)}}let S=(()=>{class W extends N{constructor(ge,Ge){super(ge,Ge)}}return W.\u0275fac=function(ge){return new(ge||W)(n.\u0275\u0275directiveInject(j),n.\u0275\u0275directiveInject(n.ElementRef))},W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["cdk-header-cell"],["th","cdk-header-cell",""]],hostAttrs:["role","columnheader",1,"cdk-header-cell"],features:[n.\u0275\u0275InheritDefinitionFeature]}),W})(),k=(()=>{class W extends N{constructor(ge,Ge){if(super(ge,Ge),1===ge._table?._elementRef.nativeElement.nodeType){const It=ge._table._elementRef.nativeElement.getAttribute("role");Ge.nativeElement.setAttribute("role","grid"===It||"treegrid"===It?"gridcell":"cell")}}}return W.\u0275fac=function(ge){return new(ge||W)(n.\u0275\u0275directiveInject(j),n.\u0275\u0275directiveInject(n.ElementRef))},W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["cdk-footer-cell"],["td","cdk-footer-cell",""]],hostAttrs:[1,"cdk-footer-cell"],features:[n.\u0275\u0275InheritDefinitionFeature]}),W})(),F=(()=>{class W extends N{constructor(ge,Ge){if(super(ge,Ge),1===ge._table?._elementRef.nativeElement.nodeType){const It=ge._table._elementRef.nativeElement.getAttribute("role");Ge.nativeElement.setAttribute("role","grid"===It||"treegrid"===It?"gridcell":"cell")}}}return W.\u0275fac=function(ge){return new(ge||W)(n.\u0275\u0275directiveInject(j),n.\u0275\u0275directiveInject(n.ElementRef))},W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["cdk-cell"],["td","cdk-cell",""]],hostAttrs:[1,"cdk-cell"],features:[n.\u0275\u0275InheritDefinitionFeature]}),W})();class Y{constructor(){this.tasks=[],this.endTasks=[]}}const se=new n.InjectionToken("_COALESCED_STYLE_SCHEDULER");let ne=(()=>{class W{constructor(ge){this._ngZone=ge,this._currentSchedule=null,this._destroyed=new c.x}schedule(ge){this._createScheduleIfNeeded(),this._currentSchedule.tasks.push(ge)}scheduleEnd(ge){this._createScheduleIfNeeded(),this._currentSchedule.endTasks.push(ge)}ngOnDestroy(){this._destroyed.next(),this._destroyed.complete()}_createScheduleIfNeeded(){this._currentSchedule||(this._currentSchedule=new Y,this._getScheduleObservable().pipe((0,u.R)(this._destroyed)).subscribe(()=>{for(;this._currentSchedule.tasks.length||this._currentSchedule.endTasks.length;){const ge=this._currentSchedule;this._currentSchedule=new Y;for(const Ge of ge.tasks)Ge();for(const Ge of ge.endTasks)Ge()}this._currentSchedule=null}))}_getScheduleObservable(){return this._ngZone.isStable?(0,s.D)(Promise.resolve(void 0)):this._ngZone.onStable.pipe((0,h.q)(1))}}return W.\u0275fac=function(ge){return new(ge||W)(n.\u0275\u0275inject(n.NgZone))},W.\u0275prov=n.\u0275\u0275defineInjectable({token:W,factory:W.\u0275fac}),W})(),$=(()=>{class W{constructor(ge,Ge){this.template=ge,this._differs=Ge}ngOnChanges(ge){if(!this._columnsDiffer){const Ge=ge.columns&&ge.columns.currentValue||[];this._columnsDiffer=this._differs.find(Ge).create(),this._columnsDiffer.diff(Ge)}}getColumnsDiff(){return this._columnsDiffer.diff(this.columns)}extractCellTemplate(ge){return this instanceof ue?ge.headerCell.template:this instanceof Xe?ge.footerCell.template:ge.cell.template}}return W.\u0275fac=function(ge){return new(ge||W)(n.\u0275\u0275directiveInject(n.TemplateRef),n.\u0275\u0275directiveInject(n.IterableDiffers))},W.\u0275dir=n.\u0275\u0275defineDirective({type:W,features:[n.\u0275\u0275NgOnChangesFeature]}),W})();class q extends ${}const Q=w(q);let ue=(()=>{class W extends Q{constructor(ge,Ge,It){super(ge,Ge),this._table=It}ngOnChanges(ge){super.ngOnChanges(ge)}}return W.\u0275fac=function(ge){return new(ge||W)(n.\u0275\u0275directiveInject(n.TemplateRef),n.\u0275\u0275directiveInject(n.IterableDiffers),n.\u0275\u0275directiveInject(L,8))},W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["","cdkHeaderRowDef",""]],inputs:{columns:["cdkHeaderRowDef","columns"],sticky:["cdkHeaderRowDefSticky","sticky"]},features:[n.\u0275\u0275InheritDefinitionFeature,n.\u0275\u0275NgOnChangesFeature]}),W})();class Me extends ${}const Oe=w(Me);let Xe=(()=>{class W extends Oe{constructor(ge,Ge,It){super(ge,Ge),this._table=It}ngOnChanges(ge){super.ngOnChanges(ge)}}return W.\u0275fac=function(ge){return new(ge||W)(n.\u0275\u0275directiveInject(n.TemplateRef),n.\u0275\u0275directiveInject(n.IterableDiffers),n.\u0275\u0275directiveInject(L,8))},W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["","cdkFooterRowDef",""]],inputs:{columns:["cdkFooterRowDef","columns"],sticky:["cdkFooterRowDefSticky","sticky"]},features:[n.\u0275\u0275InheritDefinitionFeature,n.\u0275\u0275NgOnChangesFeature]}),W})(),Be=(()=>{class W extends ${constructor(ge,Ge,It){super(ge,Ge),this._table=It}}return W.\u0275fac=function(ge){return new(ge||W)(n.\u0275\u0275directiveInject(n.TemplateRef),n.\u0275\u0275directiveInject(n.IterableDiffers),n.\u0275\u0275directiveInject(L,8))},W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["","cdkRowDef",""]],inputs:{columns:["cdkRowDefColumns","columns"],when:["cdkRowDefWhen","when"]},features:[n.\u0275\u0275InheritDefinitionFeature]}),W})(),$e=(()=>{class W{constructor(ge){this._viewContainer=ge,W.mostRecentCellOutlet=this}ngOnDestroy(){W.mostRecentCellOutlet===this&&(W.mostRecentCellOutlet=null)}}return W.mostRecentCellOutlet=null,W.\u0275fac=function(ge){return new(ge||W)(n.\u0275\u0275directiveInject(n.ViewContainerRef))},W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["","cdkCellOutlet",""]]}),W})(),st=(()=>{class W{}return W.\u0275fac=function(ge){return new(ge||W)},W.\u0275cmp=n.\u0275\u0275defineComponent({type:W,selectors:[["cdk-header-row"],["tr","cdk-header-row",""]],hostAttrs:["role","row",1,"cdk-header-row"],decls:1,vars:0,consts:[["cdkCellOutlet",""]],template:function(ge,Ge){1&ge&&n.\u0275\u0275elementContainer(0,0)},dependencies:[$e],encapsulation:2}),W})(),Mt=(()=>{class W{}return W.\u0275fac=function(ge){return new(ge||W)},W.\u0275cmp=n.\u0275\u0275defineComponent({type:W,selectors:[["cdk-footer-row"],["tr","cdk-footer-row",""]],hostAttrs:["role","row",1,"cdk-footer-row"],decls:1,vars:0,consts:[["cdkCellOutlet",""]],template:function(ge,Ge){1&ge&&n.\u0275\u0275elementContainer(0,0)},dependencies:[$e],encapsulation:2}),W})(),tt=(()=>{class W{}return W.\u0275fac=function(ge){return new(ge||W)},W.\u0275cmp=n.\u0275\u0275defineComponent({type:W,selectors:[["cdk-row"],["tr","cdk-row",""]],hostAttrs:["role","row",1,"cdk-row"],decls:1,vars:0,consts:[["cdkCellOutlet",""]],template:function(ge,Ge){1&ge&&n.\u0275\u0275elementContainer(0,0)},dependencies:[$e],encapsulation:2}),W})(),St=(()=>{class W{constructor(ge){this.templateRef=ge,this._contentClassName="cdk-no-data-row"}}return W.\u0275fac=function(ge){return new(ge||W)(n.\u0275\u0275directiveInject(n.TemplateRef))},W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["ng-template","cdkNoDataRow",""]]}),W})();const bt=["top","bottom","left","right"];class xt{constructor(be,ge,Ge,It,zt=!0,an=!0,gn){this._isNativeHtmlTable=be,this._stickCellCss=ge,this.direction=Ge,this._coalescedStyleScheduler=It,this._isBrowser=zt,this._needsPositionStickyOnElement=an,this._positionListener=gn,this._cachedCellWidths=[],this._borderCellCss={top:`${ge}-border-elem-top`,bottom:`${ge}-border-elem-bottom`,left:`${ge}-border-elem-left`,right:`${ge}-border-elem-right`}}clearStickyPositioning(be,ge){const Ge=[];for(const It of be)if(It.nodeType===It.ELEMENT_NODE){Ge.push(It);for(let zt=0;zt{for(const It of Ge)this._removeStickyStyle(It,ge)})}updateStickyColumns(be,ge,Ge,It=!0){if(!be.length||!this._isBrowser||!ge.some(Un=>Un)&&!Ge.some(Un=>Un))return void(this._positionListener&&(this._positionListener.stickyColumnsUpdated({sizes:[]}),this._positionListener.stickyEndColumnsUpdated({sizes:[]})));const zt=be[0],an=zt.children.length,gn=this._getCellWidths(zt,It),pn=this._getStickyStartColumnPositions(gn,ge),Jn=this._getStickyEndColumnPositions(gn,Ge),Nn=ge.lastIndexOf(!0),kn=Ge.indexOf(!0);this._coalescedStyleScheduler.schedule(()=>{const Un="rtl"===this.direction,vi=Un?"right":"left",$i=Un?"left":"right";for(const er of be)for(let fn=0;fnge[fn]?er:null)}),this._positionListener.stickyEndColumnsUpdated({sizes:-1===kn?[]:gn.slice(kn).map((er,fn)=>Ge[fn+kn]?er:null).reverse()}))})}stickRows(be,ge,Ge){if(!this._isBrowser)return;const It="bottom"===Ge?be.slice().reverse():be,zt="bottom"===Ge?ge.slice().reverse():ge,an=[],gn=[],pn=[];for(let Nn=0,kn=0;Nn{for(let Nn=0;Nn{ge.some(It=>!It)?this._removeStickyStyle(Ge,["bottom"]):this._addStickyStyle(Ge,"bottom",0,!1)})}_removeStickyStyle(be,ge){for(const It of ge)be.style[It]="",be.classList.remove(this._borderCellCss[It]);bt.some(It=>-1===ge.indexOf(It)&&be.style[It])?be.style.zIndex=this._getCalculatedZIndex(be):(be.style.zIndex="",this._needsPositionStickyOnElement&&(be.style.position=""),be.classList.remove(this._stickCellCss))}_addStickyStyle(be,ge,Ge,It){be.classList.add(this._stickCellCss),It&&be.classList.add(this._borderCellCss[ge]),be.style[ge]=`${Ge}px`,be.style.zIndex=this._getCalculatedZIndex(be),this._needsPositionStickyOnElement&&(be.style.cssText+="position: -webkit-sticky; position: sticky; ")}_getCalculatedZIndex(be){const ge={top:100,bottom:10,left:1,right:1};let Ge=0;for(const It of bt)be.style[It]&&(Ge+=ge[It]);return Ge?`${Ge}`:""}_getCellWidths(be,ge=!0){if(!ge&&this._cachedCellWidths.length)return this._cachedCellWidths;const Ge=[],It=be.children;for(let zt=0;zt0;zt--)ge[zt]&&(Ge[zt]=It,It+=be[zt]);return Ge}}const ie=new n.InjectionToken("CDK_SPL");let Te=(()=>{class W{constructor(ge,Ge){this.viewContainer=ge,this.elementRef=Ge}}return W.\u0275fac=function(ge){return new(ge||W)(n.\u0275\u0275directiveInject(n.ViewContainerRef),n.\u0275\u0275directiveInject(n.ElementRef))},W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["","rowOutlet",""]]}),W})(),ct=(()=>{class W{constructor(ge,Ge){this.viewContainer=ge,this.elementRef=Ge}}return W.\u0275fac=function(ge){return new(ge||W)(n.\u0275\u0275directiveInject(n.ViewContainerRef),n.\u0275\u0275directiveInject(n.ElementRef))},W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["","headerRowOutlet",""]]}),W})(),Lt=(()=>{class W{constructor(ge,Ge){this.viewContainer=ge,this.elementRef=Ge}}return W.\u0275fac=function(ge){return new(ge||W)(n.\u0275\u0275directiveInject(n.ViewContainerRef),n.\u0275\u0275directiveInject(n.ElementRef))},W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["","footerRowOutlet",""]]}),W})(),Dt=(()=>{class W{constructor(ge,Ge){this.viewContainer=ge,this.elementRef=Ge}}return W.\u0275fac=function(ge){return new(ge||W)(n.\u0275\u0275directiveInject(n.ViewContainerRef),n.\u0275\u0275directiveInject(n.ElementRef))},W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["","noDataRowOutlet",""]]}),W})(),yt=(()=>{class W{get trackBy(){return this._trackByFn}set trackBy(ge){this._trackByFn=ge}get dataSource(){return this._dataSource}set dataSource(ge){this._dataSource!==ge&&this._switchDataSource(ge)}get multiTemplateDataRows(){return this._multiTemplateDataRows}set multiTemplateDataRows(ge){this._multiTemplateDataRows=(0,C.Ig)(ge),this._rowOutlet&&this._rowOutlet.viewContainer.length&&(this._forceRenderDataRows(),this.updateStickyColumnStyles())}get fixedLayout(){return this._fixedLayout}set fixedLayout(ge){this._fixedLayout=(0,C.Ig)(ge),this._forceRecalculateCellWidths=!0,this._stickyColumnStylesNeedReset=!0}constructor(ge,Ge,It,zt,an,gn,pn,Jn,Nn,kn,Un,vi){this._differs=ge,this._changeDetectorRef=Ge,this._elementRef=It,this._dir=an,this._platform=pn,this._viewRepeater=Jn,this._coalescedStyleScheduler=Nn,this._viewportRuler=kn,this._stickyPositioningListener=Un,this._ngZone=vi,this._onDestroy=new c.x,this._columnDefsByName=new Map,this._customColumnDefs=new Set,this._customRowDefs=new Set,this._customHeaderRowDefs=new Set,this._customFooterRowDefs=new Set,this._headerRowDefChanged=!0,this._footerRowDefChanged=!0,this._stickyColumnStylesNeedReset=!0,this._forceRecalculateCellWidths=!0,this._cachedRenderRowsMap=new Map,this.stickyCssClass="cdk-table-sticky",this.needsPositionStickyOnElement=!0,this._isShowingNoDataRow=!1,this._multiTemplateDataRows=!1,this._fixedLayout=!1,this.contentChanged=new n.EventEmitter,this.viewChange=new l.X({start:0,end:Number.MAX_VALUE}),zt||this._elementRef.nativeElement.setAttribute("role","table"),this._document=gn,this._isNativeHtmlTable="TABLE"===this._elementRef.nativeElement.nodeName}ngOnInit(){this._setupStickyStyler(),this._isNativeHtmlTable&&this._applyNativeTableSections(),this._dataDiffer=this._differs.find([]).create((ge,Ge)=>this.trackBy?this.trackBy(Ge.dataIndex,Ge.data):Ge),this._viewportRuler.change().pipe((0,u.R)(this._onDestroy)).subscribe(()=>{this._forceRecalculateCellWidths=!0})}ngAfterContentChecked(){this._cacheRowDefs(),this._cacheColumnDefs();const Ge=this._renderUpdatedColumns()||this._headerRowDefChanged||this._footerRowDefChanged;this._stickyColumnStylesNeedReset=this._stickyColumnStylesNeedReset||Ge,this._forceRecalculateCellWidths=Ge,this._headerRowDefChanged&&(this._forceRenderHeaderRows(),this._headerRowDefChanged=!1),this._footerRowDefChanged&&(this._forceRenderFooterRows(),this._footerRowDefChanged=!1),this.dataSource&&this._rowDefs.length>0&&!this._renderChangeSubscription?this._observeRenderChanges():this._stickyColumnStylesNeedReset&&this.updateStickyColumnStyles(),this._checkStickyStates()}ngOnDestroy(){[this._rowOutlet.viewContainer,this._headerRowOutlet.viewContainer,this._footerRowOutlet.viewContainer,this._cachedRenderRowsMap,this._customColumnDefs,this._customRowDefs,this._customHeaderRowDefs,this._customFooterRowDefs,this._columnDefsByName].forEach(ge=>{ge.clear()}),this._headerRowDefs=[],this._footerRowDefs=[],this._defaultRowDef=null,this._onDestroy.next(),this._onDestroy.complete(),(0,b.Z9)(this.dataSource)&&this.dataSource.disconnect(this)}renderRows(){this._renderRows=this._getAllRenderRows();const ge=this._dataDiffer.diff(this._renderRows);if(!ge)return this._updateNoDataRow(),void this.contentChanged.next();const Ge=this._rowOutlet.viewContainer;this._viewRepeater.applyChanges(ge,Ge,(It,zt,an)=>this._getEmbeddedViewArgs(It.item,an),It=>It.item.data,It=>{1===It.operation&&It.context&&this._renderCellTemplateForItem(It.record.item.rowDef,It.context)}),this._updateRowIndexContext(),ge.forEachIdentityChange(It=>{Ge.get(It.currentIndex).context.$implicit=It.item.data}),this._updateNoDataRow(),this._ngZone&&n.NgZone.isInAngularZone()?this._ngZone.onStable.pipe((0,h.q)(1),(0,u.R)(this._onDestroy)).subscribe(()=>{this.updateStickyColumnStyles()}):this.updateStickyColumnStyles(),this.contentChanged.next()}addColumnDef(ge){this._customColumnDefs.add(ge)}removeColumnDef(ge){this._customColumnDefs.delete(ge)}addRowDef(ge){this._customRowDefs.add(ge)}removeRowDef(ge){this._customRowDefs.delete(ge)}addHeaderRowDef(ge){this._customHeaderRowDefs.add(ge),this._headerRowDefChanged=!0}removeHeaderRowDef(ge){this._customHeaderRowDefs.delete(ge),this._headerRowDefChanged=!0}addFooterRowDef(ge){this._customFooterRowDefs.add(ge),this._footerRowDefChanged=!0}removeFooterRowDef(ge){this._customFooterRowDefs.delete(ge),this._footerRowDefChanged=!0}setNoDataRow(ge){this._customNoDataRow=ge}updateStickyHeaderRowStyles(){const ge=this._getRenderedRows(this._headerRowOutlet),It=this._elementRef.nativeElement.querySelector("thead");It&&(It.style.display=ge.length?"":"none");const zt=this._headerRowDefs.map(an=>an.sticky);this._stickyStyler.clearStickyPositioning(ge,["top"]),this._stickyStyler.stickRows(ge,zt,"top"),this._headerRowDefs.forEach(an=>an.resetStickyChanged())}updateStickyFooterRowStyles(){const ge=this._getRenderedRows(this._footerRowOutlet),It=this._elementRef.nativeElement.querySelector("tfoot");It&&(It.style.display=ge.length?"":"none");const zt=this._footerRowDefs.map(an=>an.sticky);this._stickyStyler.clearStickyPositioning(ge,["bottom"]),this._stickyStyler.stickRows(ge,zt,"bottom"),this._stickyStyler.updateStickyFooterContainer(this._elementRef.nativeElement,zt),this._footerRowDefs.forEach(an=>an.resetStickyChanged())}updateStickyColumnStyles(){const ge=this._getRenderedRows(this._headerRowOutlet),Ge=this._getRenderedRows(this._rowOutlet),It=this._getRenderedRows(this._footerRowOutlet);(this._isNativeHtmlTable&&!this._fixedLayout||this._stickyColumnStylesNeedReset)&&(this._stickyStyler.clearStickyPositioning([...ge,...Ge,...It],["left","right"]),this._stickyColumnStylesNeedReset=!1),ge.forEach((zt,an)=>{this._addStickyColumnStyles([zt],this._headerRowDefs[an])}),this._rowDefs.forEach(zt=>{const an=[];for(let gn=0;gn{this._addStickyColumnStyles([zt],this._footerRowDefs[an])}),Array.from(this._columnDefsByName.values()).forEach(zt=>zt.resetStickyChanged())}_getAllRenderRows(){const ge=[],Ge=this._cachedRenderRowsMap;this._cachedRenderRowsMap=new Map;for(let It=0;It{const gn=It&&It.has(an)?It.get(an):[];if(gn.length){const pn=gn.shift();return pn.dataIndex=Ge,pn}return{data:ge,rowDef:an,dataIndex:Ge}})}_cacheColumnDefs(){this._columnDefsByName.clear(),Bt(this._getOwnDefs(this._contentColumnDefs),this._customColumnDefs).forEach(Ge=>{this._columnDefsByName.has(Ge.name),this._columnDefsByName.set(Ge.name,Ge)})}_cacheRowDefs(){this._headerRowDefs=Bt(this._getOwnDefs(this._contentHeaderRowDefs),this._customHeaderRowDefs),this._footerRowDefs=Bt(this._getOwnDefs(this._contentFooterRowDefs),this._customFooterRowDefs),this._rowDefs=Bt(this._getOwnDefs(this._contentRowDefs),this._customRowDefs);const ge=this._rowDefs.filter(Ge=>!Ge.when);this._defaultRowDef=ge[0]}_renderUpdatedColumns(){const ge=(an,gn)=>an||!!gn.getColumnsDiff(),Ge=this._rowDefs.reduce(ge,!1);Ge&&this._forceRenderDataRows();const It=this._headerRowDefs.reduce(ge,!1);It&&this._forceRenderHeaderRows();const zt=this._footerRowDefs.reduce(ge,!1);return zt&&this._forceRenderFooterRows(),Ge||It||zt}_switchDataSource(ge){this._data=[],(0,b.Z9)(this.dataSource)&&this.dataSource.disconnect(this),this._renderChangeSubscription&&(this._renderChangeSubscription.unsubscribe(),this._renderChangeSubscription=null),ge||(this._dataDiffer&&this._dataDiffer.diff([]),this._rowOutlet.viewContainer.clear()),this._dataSource=ge}_observeRenderChanges(){if(!this.dataSource)return;let ge;(0,b.Z9)(this.dataSource)?ge=this.dataSource.connect(this):(0,d.b)(this.dataSource)?ge=this.dataSource:Array.isArray(this.dataSource)&&(ge=(0,r.of)(this.dataSource)),this._renderChangeSubscription=ge.pipe((0,u.R)(this._onDestroy)).subscribe(Ge=>{this._data=Ge||[],this.renderRows()})}_forceRenderHeaderRows(){this._headerRowOutlet.viewContainer.length>0&&this._headerRowOutlet.viewContainer.clear(),this._headerRowDefs.forEach((ge,Ge)=>this._renderRow(this._headerRowOutlet,ge,Ge)),this.updateStickyHeaderRowStyles()}_forceRenderFooterRows(){this._footerRowOutlet.viewContainer.length>0&&this._footerRowOutlet.viewContainer.clear(),this._footerRowDefs.forEach((ge,Ge)=>this._renderRow(this._footerRowOutlet,ge,Ge)),this.updateStickyFooterRowStyles()}_addStickyColumnStyles(ge,Ge){const It=Array.from(Ge.columns||[]).map(gn=>this._columnDefsByName.get(gn)),zt=It.map(gn=>gn.sticky),an=It.map(gn=>gn.stickyEnd);this._stickyStyler.updateStickyColumns(ge,zt,an,!this._fixedLayout||this._forceRecalculateCellWidths)}_getRenderedRows(ge){const Ge=[];for(let It=0;It!zt.when||zt.when(Ge,ge));else{let zt=this._rowDefs.find(an=>an.when&&an.when(Ge,ge))||this._defaultRowDef;zt&&It.push(zt)}return It}_getEmbeddedViewArgs(ge,Ge){return{templateRef:ge.rowDef.template,context:{$implicit:ge.data},index:Ge}}_renderRow(ge,Ge,It,zt={}){const an=ge.viewContainer.createEmbeddedView(Ge.template,zt,It);return this._renderCellTemplateForItem(Ge,zt),an}_renderCellTemplateForItem(ge,Ge){for(let It of this._getCellTemplates(ge))$e.mostRecentCellOutlet&&$e.mostRecentCellOutlet._viewContainer.createEmbeddedView(It,Ge);this._changeDetectorRef.markForCheck()}_updateRowIndexContext(){const ge=this._rowOutlet.viewContainer;for(let Ge=0,It=ge.length;Ge{const It=this._columnDefsByName.get(Ge);return ge.extractCellTemplate(It)}):[]}_applyNativeTableSections(){const ge=this._document.createDocumentFragment(),Ge=[{tag:"thead",outlets:[this._headerRowOutlet]},{tag:"tbody",outlets:[this._rowOutlet,this._noDataRowOutlet]},{tag:"tfoot",outlets:[this._footerRowOutlet]}];for(const It of Ge){const zt=this._document.createElement(It.tag);zt.setAttribute("role","rowgroup");for(const an of It.outlets)zt.appendChild(an.elementRef.nativeElement);ge.appendChild(zt)}this._elementRef.nativeElement.appendChild(ge)}_forceRenderDataRows(){this._dataDiffer.diff([]),this._rowOutlet.viewContainer.clear(),this.renderRows()}_checkStickyStates(){const ge=(Ge,It)=>Ge||It.hasStickyChanged();this._headerRowDefs.reduce(ge,!1)&&this.updateStickyHeaderRowStyles(),this._footerRowDefs.reduce(ge,!1)&&this.updateStickyFooterRowStyles(),Array.from(this._columnDefsByName.values()).reduce(ge,!1)&&(this._stickyColumnStylesNeedReset=!0,this.updateStickyColumnStyles())}_setupStickyStyler(){this._stickyStyler=new xt(this._isNativeHtmlTable,this.stickyCssClass,this._dir?this._dir.value:"ltr",this._coalescedStyleScheduler,this._platform.isBrowser,this.needsPositionStickyOnElement,this._stickyPositioningListener),(this._dir?this._dir.change:(0,r.of)()).pipe((0,u.R)(this._onDestroy)).subscribe(Ge=>{this._stickyStyler.direction=Ge,this.updateStickyColumnStyles()})}_getOwnDefs(ge){return ge.filter(Ge=>!Ge._table||Ge._table===this)}_updateNoDataRow(){const ge=this._customNoDataRow||this._noDataRow;if(!ge)return;const Ge=0===this._rowOutlet.viewContainer.length;if(Ge===this._isShowingNoDataRow)return;const It=this._noDataRowOutlet.viewContainer;if(Ge){const zt=It.createEmbeddedView(ge.templateRef),an=zt.rootNodes[0];1===zt.rootNodes.length&&an?.nodeType===this._document.ELEMENT_NODE&&(an.setAttribute("role","row"),an.classList.add(ge._contentClassName))}else It.clear();this._isShowingNoDataRow=Ge}}return W.\u0275fac=function(ge){return new(ge||W)(n.\u0275\u0275directiveInject(n.IterableDiffers),n.\u0275\u0275directiveInject(n.ChangeDetectorRef),n.\u0275\u0275directiveInject(n.ElementRef),n.\u0275\u0275injectAttribute("role"),n.\u0275\u0275directiveInject(p.Is,8),n.\u0275\u0275directiveInject(a.DOCUMENT),n.\u0275\u0275directiveInject(o.t4),n.\u0275\u0275directiveInject(b.k),n.\u0275\u0275directiveInject(se),n.\u0275\u0275directiveInject(v.rL),n.\u0275\u0275directiveInject(ie,12),n.\u0275\u0275directiveInject(n.NgZone,8))},W.\u0275cmp=n.\u0275\u0275defineComponent({type:W,selectors:[["cdk-table"],["table","cdk-table",""]],contentQueries:function(ge,Ge,It){if(1&ge&&(n.\u0275\u0275contentQuery(It,St,5),n.\u0275\u0275contentQuery(It,j,5),n.\u0275\u0275contentQuery(It,Be,5),n.\u0275\u0275contentQuery(It,ue,5),n.\u0275\u0275contentQuery(It,Xe,5)),2&ge){let zt;n.\u0275\u0275queryRefresh(zt=n.\u0275\u0275loadQuery())&&(Ge._noDataRow=zt.first),n.\u0275\u0275queryRefresh(zt=n.\u0275\u0275loadQuery())&&(Ge._contentColumnDefs=zt),n.\u0275\u0275queryRefresh(zt=n.\u0275\u0275loadQuery())&&(Ge._contentRowDefs=zt),n.\u0275\u0275queryRefresh(zt=n.\u0275\u0275loadQuery())&&(Ge._contentHeaderRowDefs=zt),n.\u0275\u0275queryRefresh(zt=n.\u0275\u0275loadQuery())&&(Ge._contentFooterRowDefs=zt)}},viewQuery:function(ge,Ge){if(1&ge&&(n.\u0275\u0275viewQuery(Te,7),n.\u0275\u0275viewQuery(ct,7),n.\u0275\u0275viewQuery(Lt,7),n.\u0275\u0275viewQuery(Dt,7)),2&ge){let It;n.\u0275\u0275queryRefresh(It=n.\u0275\u0275loadQuery())&&(Ge._rowOutlet=It.first),n.\u0275\u0275queryRefresh(It=n.\u0275\u0275loadQuery())&&(Ge._headerRowOutlet=It.first),n.\u0275\u0275queryRefresh(It=n.\u0275\u0275loadQuery())&&(Ge._footerRowOutlet=It.first),n.\u0275\u0275queryRefresh(It=n.\u0275\u0275loadQuery())&&(Ge._noDataRowOutlet=It.first)}},hostAttrs:["ngSkipHydration","",1,"cdk-table"],hostVars:2,hostBindings:function(ge,Ge){2&ge&&n.\u0275\u0275classProp("cdk-table-fixed-layout",Ge.fixedLayout)},inputs:{trackBy:"trackBy",dataSource:"dataSource",multiTemplateDataRows:"multiTemplateDataRows",fixedLayout:"fixedLayout"},outputs:{contentChanged:"contentChanged"},exportAs:["cdkTable"],features:[n.\u0275\u0275ProvidersFeature([{provide:L,useExisting:W},{provide:b.k,useClass:b.yy},{provide:se,useClass:ne},{provide:ie,useValue:null}])],ngContentSelectors:_,decls:6,vars:0,consts:[["headerRowOutlet",""],["rowOutlet",""],["noDataRowOutlet",""],["footerRowOutlet",""]],template:function(ge,Ge){1&ge&&(n.\u0275\u0275projectionDef(m),n.\u0275\u0275projection(0),n.\u0275\u0275projection(1,1),n.\u0275\u0275elementContainer(2,0)(3,1)(4,2)(5,3))},dependencies:[Te,ct,Lt,Dt],styles:[".cdk-table-fixed-layout{table-layout:fixed}"],encapsulation:2}),W})();function Bt(W,be){return W.concat(Array.from(be))}let $t=(()=>{class W{get name(){return this._name}set name(ge){this._name=ge,this._syncColumnDefName()}constructor(ge,Ge){this._table=ge,this._options=Ge,this.justify="start",this._options=Ge||{}}ngOnInit(){this._syncColumnDefName(),void 0===this.headerText&&(this.headerText=this._createDefaultHeaderText()),this.dataAccessor||(this.dataAccessor=this._options.defaultDataAccessor||((ge,Ge)=>ge[Ge])),this._table&&(this.columnDef.cell=this.cell,this.columnDef.headerCell=this.headerCell,this._table.addColumnDef(this.columnDef))}ngOnDestroy(){this._table&&this._table.removeColumnDef(this.columnDef)}_createDefaultHeaderText(){const ge=this.name;return this._options&&this._options.defaultHeaderTextTransform?this._options.defaultHeaderTextTransform(ge):ge[0].toUpperCase()+ge.slice(1)}_syncColumnDefName(){this.columnDef&&(this.columnDef.name=this.name)}}return W.\u0275fac=function(ge){return new(ge||W)(n.\u0275\u0275directiveInject(yt,8),n.\u0275\u0275directiveInject(A,8))},W.\u0275cmp=n.\u0275\u0275defineComponent({type:W,selectors:[["cdk-text-column"]],viewQuery:function(ge,Ge){if(1&ge&&(n.\u0275\u0275viewQuery(j,7),n.\u0275\u0275viewQuery(T,7),n.\u0275\u0275viewQuery(O,7)),2&ge){let It;n.\u0275\u0275queryRefresh(It=n.\u0275\u0275loadQuery())&&(Ge.columnDef=It.first),n.\u0275\u0275queryRefresh(It=n.\u0275\u0275loadQuery())&&(Ge.cell=It.first),n.\u0275\u0275queryRefresh(It=n.\u0275\u0275loadQuery())&&(Ge.headerCell=It.first)}},inputs:{name:"name",headerText:"headerText",dataAccessor:"dataAccessor",justify:"justify"},decls:3,vars:0,consts:[["cdkColumnDef",""],["cdk-header-cell","",3,"text-align",4,"cdkHeaderCellDef"],["cdk-cell","",3,"text-align",4,"cdkCellDef"],["cdk-header-cell",""],["cdk-cell",""]],template:function(ge,Ge){1&ge&&(n.\u0275\u0275elementContainerStart(0,0),n.\u0275\u0275template(1,M,2,3,"th",1),n.\u0275\u0275template(2,x,2,3,"td",2),n.\u0275\u0275elementContainerEnd())},dependencies:[T,O,j,F,S],encapsulation:2}),W})(),Ue=(()=>{class W{}return W.\u0275fac=function(ge){return new(ge||W)},W.\u0275mod=n.\u0275\u0275defineNgModule({type:W}),W.\u0275inj=n.\u0275\u0275defineInjector({imports:[v.Cl]}),W})();var We=g(3680),ve=g(3019),we=g(2572),at=g(7398);class mt extends b.o2{get data(){return this._data.value}set data(be){be=Array.isArray(be)?be:[],this._data.next(be),this._renderChangesSubscription||this._filterData(be)}get filter(){return this._filter.value}set filter(be){this._filter.next(be),this._renderChangesSubscription||this._filterData(this.data)}get sort(){return this._sort}set sort(be){this._sort=be,this._updateChangeSubscription()}get paginator(){return this._paginator}set paginator(be){this._paginator=be,this._updateChangeSubscription()}constructor(be=[]){super(),this._renderData=new l.X([]),this._filter=new l.X(""),this._internalPageChanges=new c.x,this._renderChangesSubscription=null,this.sortingDataAccessor=(ge,Ge)=>{const It=ge[Ge];if((0,C.t6)(It)){const zt=Number(It);return zt<9007199254740991?zt:It}return It},this.sortData=(ge,Ge)=>{const It=Ge.active,zt=Ge.direction;return It&&""!=zt?ge.sort((an,gn)=>{let pn=this.sortingDataAccessor(an,It),Jn=this.sortingDataAccessor(gn,It);const Nn=typeof pn,kn=typeof Jn;Nn!==kn&&("number"===Nn&&(pn+=""),"number"===kn&&(Jn+=""));let Un=0;return null!=pn&&null!=Jn?pn>Jn?Un=1:pn{const It=Object.keys(ge).reduce((an,gn)=>an+ge[gn]+"\u25ec","").toLowerCase(),zt=Ge.trim().toLowerCase();return-1!=It.indexOf(zt)},this._data=new l.X(be),this._updateChangeSubscription()}_updateChangeSubscription(){const be=this._sort?(0,ve.T)(this._sort.sortChange,this._sort.initialized):(0,r.of)(null),ge=this._paginator?(0,ve.T)(this._paginator.page,this._internalPageChanges,this._paginator.initialized):(0,r.of)(null),It=(0,we.a)([this._data,this._filter]).pipe((0,at.U)(([gn])=>this._filterData(gn))),zt=(0,we.a)([It,be]).pipe((0,at.U)(([gn])=>this._orderData(gn))),an=(0,we.a)([zt,ge]).pipe((0,at.U)(([gn])=>this._pageData(gn)));this._renderChangesSubscription?.unsubscribe(),this._renderChangesSubscription=an.subscribe(gn=>this._renderData.next(gn))}_filterData(be){return this.filteredData=null==this.filter||""===this.filter?be:be.filter(ge=>this.filterPredicate(ge,this.filter)),this.paginator&&this._updatePaginator(this.filteredData.length),this.filteredData}_orderData(be){return this.sort?this.sortData(be.slice(),this.sort):be}_pageData(be){if(!this.paginator)return be;const ge=this.paginator.pageIndex*this.paginator.pageSize;return be.slice(ge,ge+this.paginator.pageSize)}_updatePaginator(be){Promise.resolve().then(()=>{const ge=this.paginator;if(ge&&(ge.length=be,ge.pageIndex>0)){const Ge=Math.ceil(ge.length/ge.pageSize)-1||0,It=Math.min(ge.pageIndex,Ge);It!==ge.pageIndex&&(ge.pageIndex=It,this._internalPageChanges.next())}})}connect(){return this._renderChangesSubscription||this._updateChangeSubscription(),this._renderData}disconnect(){this._renderChangesSubscription?.unsubscribe(),this._renderChangesSubscription=null}}const qt=[[["caption"]],[["colgroup"],["col"]]],on=["caption","colgroup, col"];function hn(W,be){if(1&W&&(n.\u0275\u0275elementStart(0,"th",3),n.\u0275\u0275text(1),n.\u0275\u0275elementEnd()),2&W){const ge=n.\u0275\u0275nextContext();n.\u0275\u0275styleProp("text-align",ge.justify),n.\u0275\u0275advance(1),n.\u0275\u0275textInterpolate1(" ",ge.headerText," ")}}function un(W,be){if(1&W&&(n.\u0275\u0275elementStart(0,"td",4),n.\u0275\u0275text(1),n.\u0275\u0275elementEnd()),2&W){const ge=be.$implicit,Ge=n.\u0275\u0275nextContext();n.\u0275\u0275styleProp("text-align",Ge.justify),n.\u0275\u0275advance(1),n.\u0275\u0275textInterpolate1(" ",Ge.dataAccessor(ge,Ge.name)," ")}}let $n=(()=>{class W{}return W.\u0275fac=function(ge){return new(ge||W)},W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["mat-table","recycleRows",""],["table","mat-table","","recycleRows",""]],features:[n.\u0275\u0275ProvidersFeature([{provide:b.k,useClass:b.eX}])]}),W})(),In=(()=>{class W extends yt{constructor(){super(...arguments),this.stickyCssClass="mat-table-sticky",this.needsPositionStickyOnElement=!1}}return W.\u0275fac=function(){let be;return function(Ge){return(be||(be=n.\u0275\u0275getInheritedFactory(W)))(Ge||W)}}(),W.\u0275cmp=n.\u0275\u0275defineComponent({type:W,selectors:[["mat-table"],["table","mat-table",""]],hostAttrs:["ngSkipHydration","",1,"mat-table"],hostVars:2,hostBindings:function(ge,Ge){2&ge&&n.\u0275\u0275classProp("mat-table-fixed-layout",Ge.fixedLayout)},exportAs:["matTable"],features:[n.\u0275\u0275ProvidersFeature([{provide:b.k,useClass:b.yy},{provide:yt,useExisting:W},{provide:L,useExisting:W},{provide:se,useClass:ne},{provide:ie,useValue:null}]),n.\u0275\u0275InheritDefinitionFeature],ngContentSelectors:on,decls:6,vars:0,consts:[["headerRowOutlet",""],["rowOutlet",""],["noDataRowOutlet",""],["footerRowOutlet",""]],template:function(ge,Ge){1&ge&&(n.\u0275\u0275projectionDef(qt),n.\u0275\u0275projection(0),n.\u0275\u0275projection(1,1),n.\u0275\u0275elementContainer(2,0)(3,1)(4,2)(5,3))},dependencies:[Te,ct,Lt,Dt],styles:["mat-table{display:block}mat-header-row{min-height:56px}mat-row,mat-footer-row{min-height:48px}mat-row,mat-header-row,mat-footer-row{display:flex;border-width:0;border-bottom-width:1px;border-style:solid;align-items:center;box-sizing:border-box}mat-cell:first-of-type,mat-header-cell:first-of-type,mat-footer-cell:first-of-type{padding-left:24px}[dir=rtl] mat-cell:first-of-type:not(:only-of-type),[dir=rtl] mat-header-cell:first-of-type:not(:only-of-type),[dir=rtl] mat-footer-cell:first-of-type:not(:only-of-type){padding-left:0;padding-right:24px}mat-cell:last-of-type,mat-header-cell:last-of-type,mat-footer-cell:last-of-type{padding-right:24px}[dir=rtl] mat-cell:last-of-type:not(:only-of-type),[dir=rtl] mat-header-cell:last-of-type:not(:only-of-type),[dir=rtl] mat-footer-cell:last-of-type:not(:only-of-type){padding-right:0;padding-left:24px}mat-cell,mat-header-cell,mat-footer-cell{flex:1;display:flex;align-items:center;overflow:hidden;word-wrap:break-word;min-height:inherit}table.mat-table{border-spacing:0}tr.mat-header-row{height:56px}tr.mat-row,tr.mat-footer-row{height:48px}th.mat-header-cell{text-align:left}[dir=rtl] th.mat-header-cell{text-align:right}th.mat-header-cell,td.mat-cell,td.mat-footer-cell{padding:0;border-bottom-width:1px;border-bottom-style:solid}th.mat-header-cell:first-of-type,td.mat-cell:first-of-type,td.mat-footer-cell:first-of-type{padding-left:24px}[dir=rtl] th.mat-header-cell:first-of-type:not(:only-of-type),[dir=rtl] td.mat-cell:first-of-type:not(:only-of-type),[dir=rtl] td.mat-footer-cell:first-of-type:not(:only-of-type){padding-left:0;padding-right:24px}th.mat-header-cell:last-of-type,td.mat-cell:last-of-type,td.mat-footer-cell:last-of-type{padding-right:24px}[dir=rtl] th.mat-header-cell:last-of-type:not(:only-of-type),[dir=rtl] td.mat-cell:last-of-type:not(:only-of-type),[dir=rtl] td.mat-footer-cell:last-of-type:not(:only-of-type){padding-right:0;padding-left:24px}.mat-table-sticky{position:sticky !important}.mat-table-fixed-layout{table-layout:fixed}"],encapsulation:2}),W})(),Zn=(()=>{class W extends T{}return W.\u0275fac=function(){let be;return function(Ge){return(be||(be=n.\u0275\u0275getInheritedFactory(W)))(Ge||W)}}(),W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["","matCellDef",""]],features:[n.\u0275\u0275ProvidersFeature([{provide:T,useExisting:W}]),n.\u0275\u0275InheritDefinitionFeature]}),W})(),mi=(()=>{class W extends O{}return W.\u0275fac=function(){let be;return function(Ge){return(be||(be=n.\u0275\u0275getInheritedFactory(W)))(Ge||W)}}(),W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["","matHeaderCellDef",""]],features:[n.\u0275\u0275ProvidersFeature([{provide:O,useExisting:W}]),n.\u0275\u0275InheritDefinitionFeature]}),W})(),Qn=(()=>{class W extends E{}return W.\u0275fac=function(){let be;return function(Ge){return(be||(be=n.\u0275\u0275getInheritedFactory(W)))(Ge||W)}}(),W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["","matFooterCellDef",""]],features:[n.\u0275\u0275ProvidersFeature([{provide:E,useExisting:W}]),n.\u0275\u0275InheritDefinitionFeature]}),W})(),ri=(()=>{class W extends j{get name(){return this._name}set name(ge){this._setNameInput(ge)}_updateColumnCssClassName(){super._updateColumnCssClassName(),this._columnCssClassName.push(`mat-column-${this.cssClassFriendlyName}`)}}return W.\u0275fac=function(){let be;return function(Ge){return(be||(be=n.\u0275\u0275getInheritedFactory(W)))(Ge||W)}}(),W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["","matColumnDef",""]],inputs:{sticky:"sticky",name:["matColumnDef","name"]},features:[n.\u0275\u0275ProvidersFeature([{provide:j,useExisting:W},{provide:"MAT_SORT_HEADER_COLUMN_DEF",useExisting:W}]),n.\u0275\u0275InheritDefinitionFeature]}),W})(),ln=(()=>{class W extends S{}return W.\u0275fac=function(){let be;return function(Ge){return(be||(be=n.\u0275\u0275getInheritedFactory(W)))(Ge||W)}}(),W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["mat-header-cell"],["th","mat-header-cell",""]],hostAttrs:["role","columnheader",1,"mat-header-cell"],features:[n.\u0275\u0275InheritDefinitionFeature]}),W})(),en=(()=>{class W extends k{}return W.\u0275fac=function(){let be;return function(Ge){return(be||(be=n.\u0275\u0275getInheritedFactory(W)))(Ge||W)}}(),W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["mat-footer-cell"],["td","mat-footer-cell",""]],hostAttrs:["role","gridcell",1,"mat-footer-cell"],features:[n.\u0275\u0275InheritDefinitionFeature]}),W})(),Dn=(()=>{class W extends F{}return W.\u0275fac=function(){let be;return function(Ge){return(be||(be=n.\u0275\u0275getInheritedFactory(W)))(Ge||W)}}(),W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["mat-cell"],["td","mat-cell",""]],hostAttrs:["role","gridcell",1,"mat-cell"],features:[n.\u0275\u0275InheritDefinitionFeature]}),W})(),An=(()=>{class W extends ue{}return W.\u0275fac=function(){let be;return function(Ge){return(be||(be=n.\u0275\u0275getInheritedFactory(W)))(Ge||W)}}(),W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["","matHeaderRowDef",""]],inputs:{columns:["matHeaderRowDef","columns"],sticky:["matHeaderRowDefSticky","sticky"]},features:[n.\u0275\u0275ProvidersFeature([{provide:ue,useExisting:W}]),n.\u0275\u0275InheritDefinitionFeature]}),W})(),Yn=(()=>{class W extends Xe{}return W.\u0275fac=function(){let be;return function(Ge){return(be||(be=n.\u0275\u0275getInheritedFactory(W)))(Ge||W)}}(),W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["","matFooterRowDef",""]],inputs:{columns:["matFooterRowDef","columns"],sticky:["matFooterRowDefSticky","sticky"]},features:[n.\u0275\u0275ProvidersFeature([{provide:Xe,useExisting:W}]),n.\u0275\u0275InheritDefinitionFeature]}),W})(),si=(()=>{class W extends Be{}return W.\u0275fac=function(){let be;return function(Ge){return(be||(be=n.\u0275\u0275getInheritedFactory(W)))(Ge||W)}}(),W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["","matRowDef",""]],inputs:{columns:["matRowDefColumns","columns"],when:["matRowDefWhen","when"]},features:[n.\u0275\u0275ProvidersFeature([{provide:Be,useExisting:W}]),n.\u0275\u0275InheritDefinitionFeature]}),W})(),ii=(()=>{class W extends st{}return W.\u0275fac=function(){let be;return function(Ge){return(be||(be=n.\u0275\u0275getInheritedFactory(W)))(Ge||W)}}(),W.\u0275cmp=n.\u0275\u0275defineComponent({type:W,selectors:[["mat-header-row"],["tr","mat-header-row",""]],hostAttrs:["role","row",1,"mat-header-row"],exportAs:["matHeaderRow"],features:[n.\u0275\u0275ProvidersFeature([{provide:st,useExisting:W}]),n.\u0275\u0275InheritDefinitionFeature],decls:1,vars:0,consts:[["cdkCellOutlet",""]],template:function(ge,Ge){1&ge&&n.\u0275\u0275elementContainer(0,0)},dependencies:[$e],encapsulation:2}),W})(),Ii=(()=>{class W extends Mt{}return W.\u0275fac=function(){let be;return function(Ge){return(be||(be=n.\u0275\u0275getInheritedFactory(W)))(Ge||W)}}(),W.\u0275cmp=n.\u0275\u0275defineComponent({type:W,selectors:[["mat-footer-row"],["tr","mat-footer-row",""]],hostAttrs:["role","row",1,"mat-footer-row"],exportAs:["matFooterRow"],features:[n.\u0275\u0275ProvidersFeature([{provide:Mt,useExisting:W}]),n.\u0275\u0275InheritDefinitionFeature],decls:1,vars:0,consts:[["cdkCellOutlet",""]],template:function(ge,Ge){1&ge&&n.\u0275\u0275elementContainer(0,0)},dependencies:[$e],encapsulation:2}),W})(),oi=(()=>{class W extends tt{}return W.\u0275fac=function(){let be;return function(Ge){return(be||(be=n.\u0275\u0275getInheritedFactory(W)))(Ge||W)}}(),W.\u0275cmp=n.\u0275\u0275defineComponent({type:W,selectors:[["mat-row"],["tr","mat-row",""]],hostAttrs:["role","row",1,"mat-row"],exportAs:["matRow"],features:[n.\u0275\u0275ProvidersFeature([{provide:tt,useExisting:W}]),n.\u0275\u0275InheritDefinitionFeature],decls:1,vars:0,consts:[["cdkCellOutlet",""]],template:function(ge,Ge){1&ge&&n.\u0275\u0275elementContainer(0,0)},dependencies:[$e],encapsulation:2}),W})(),li=(()=>{class W extends St{constructor(){super(...arguments),this._contentClassName="mat-no-data-row"}}return W.\u0275fac=function(){let be;return function(Ge){return(be||(be=n.\u0275\u0275getInheritedFactory(W)))(Ge||W)}}(),W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["ng-template","matNoDataRow",""]],features:[n.\u0275\u0275ProvidersFeature([{provide:St,useExisting:W}]),n.\u0275\u0275InheritDefinitionFeature]}),W})(),Pi=(()=>{class W extends $t{}return W.\u0275fac=function(){let be;return function(Ge){return(be||(be=n.\u0275\u0275getInheritedFactory(W)))(Ge||W)}}(),W.\u0275cmp=n.\u0275\u0275defineComponent({type:W,selectors:[["mat-text-column"]],hostVars:1,hostBindings:function(ge,Ge){2&ge&&n.\u0275\u0275attribute("mat-id-collision",null)},features:[n.\u0275\u0275InheritDefinitionFeature],decls:3,vars:0,consts:[["matColumnDef",""],["mat-header-cell","",3,"text-align",4,"matHeaderCellDef"],["mat-cell","",3,"text-align",4,"matCellDef"],["mat-header-cell",""],["mat-cell",""]],template:function(ge,Ge){1&ge&&(n.\u0275\u0275elementContainerStart(0,0),n.\u0275\u0275template(1,hn,2,3,"th",1),n.\u0275\u0275template(2,un,2,3,"td",2),n.\u0275\u0275elementContainerEnd())},dependencies:[mi,ri,Zn,ln,Dn],encapsulation:2}),W})(),Ft=(()=>{class W{}return W.\u0275fac=function(ge){return new(ge||W)},W.\u0275mod=n.\u0275\u0275defineNgModule({type:W}),W.\u0275inj=n.\u0275\u0275defineInjector({imports:[Ue,We.MatCommonModule,We.MatCommonModule]}),W})();class Ae extends mt{}},8615:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{MAT_LEGACY_TAB:()=>rt,MAT_LEGACY_TABS_CONFIG:()=>De,MAT_LEGACY_TAB_CONTENT:()=>nt,MAT_LEGACY_TAB_GROUP:()=>yt,MatLegacyInkBar:()=>mi,MatLegacyPaginatedTabHeader:()=>ve,MatLegacyTab:()=>Qn,MatLegacyTabBody:()=>ln,MatLegacyTabBodyPortal:()=>ri,MatLegacyTabChangeEvent:()=>ce,MatLegacyTabContent:()=>li,MatLegacyTabGroup:()=>An,MatLegacyTabHeader:()=>Dn,MatLegacyTabLabel:()=>oi,MatLegacyTabLabelWrapper:()=>en,MatLegacyTabLink:()=>ii,MatLegacyTabNav:()=>si,MatLegacyTabNavPanel:()=>Ii,MatLegacyTabsModule:()=>Pi,_MAT_LEGACY_INK_BAR_POSITIONER:()=>Te,_MAT_LEGACY_INK_BAR_POSITIONER_FACTORY:()=>pe,_MatLegacyTabBase:()=>Bt,_MatLegacyTabBodyBase:()=>bt,_MatLegacyTabGroupBase:()=>Z,_MatLegacyTabHeaderBase:()=>we,_MatLegacyTabLinkBase:()=>Ye,_MatLegacyTabNavBase:()=>it,matLegacyTabsAnimations:()=>tt});var n=g(4300),p=g(7131),C=g(8484),b=g(6814),o=g(5879),v=g(3680),a=g(8180),c=g(9388),s=g(7394),l=g(8645),d=g(2438),r=g(2096),u=g(3019),h=g(6232),m=g(5592),_=g(9080),M=g(7921),x=g(3997),w=g(9773),L=g(4664),A=g(836),T=g(2181),O=g(6825),E=g(2495),D=g(6672),R=g(2831),j=g(6028);function N(Ct,Ft){}const S=function(Ct){return{animationDuration:Ct}},k=function(Ct,Ft){return{value:Ct,params:Ft}},tt={translateTab:(0,O.X$)("translateTab",[(0,O.SB)("center, void, left-origin-center, right-origin-center",(0,O.oB)({transform:"none"})),(0,O.SB)("left",(0,O.oB)({transform:"translate3d(-100%, 0, 0)",minHeight:"1px",visibility:"hidden"})),(0,O.SB)("right",(0,O.oB)({transform:"translate3d(100%, 0, 0)",minHeight:"1px",visibility:"hidden"})),(0,O.eR)("* => left, * => right, left => center, right => center",(0,O.jt)("{{animationDuration}} cubic-bezier(0.35, 0, 0.25, 1)")),(0,O.eR)("void => left-origin-center",[(0,O.oB)({transform:"translate3d(-100%, 0, 0)",visibility:"hidden"}),(0,O.jt)("{{animationDuration}} cubic-bezier(0.35, 0, 0.25, 1)")]),(0,O.eR)("void => right-origin-center",[(0,O.oB)({transform:"translate3d(100%, 0, 0)",visibility:"hidden"}),(0,O.jt)("{{animationDuration}} cubic-bezier(0.35, 0, 0.25, 1)")])])};let St=(()=>{class Ct extends C.Pl{constructor(Ae,W,be,ge){super(Ae,W,ge),this._host=be,this._centeringSub=s.w0.EMPTY,this._leavingSub=s.w0.EMPTY}ngOnInit(){super.ngOnInit(),this._centeringSub=this._host._beforeCentering.pipe((0,M.O)(this._host._isCenterPosition(this._host._position))).subscribe(Ae=>{Ae&&!this.hasAttached()&&this.attach(this._host._content)}),this._leavingSub=this._host._afterLeavingCenter.subscribe(()=>{this._host.preserveContent||this.detach()})}ngOnDestroy(){super.ngOnDestroy(),this._centeringSub.unsubscribe(),this._leavingSub.unsubscribe()}}return Ct.\u0275fac=function(Ae){return new(Ae||Ct)(o.\u0275\u0275directiveInject(o.ComponentFactoryResolver),o.\u0275\u0275directiveInject(o.ViewContainerRef),o.\u0275\u0275directiveInject((0,o.forwardRef)(()=>xt)),o.\u0275\u0275directiveInject(b.DOCUMENT))},Ct.\u0275dir=o.\u0275\u0275defineDirective({type:Ct,selectors:[["","matTabBodyHost",""]],features:[o.\u0275\u0275InheritDefinitionFeature]}),Ct})(),bt=(()=>{class Ct{set position(Ae){this._positionIndex=Ae,this._computePositionAnimationState()}constructor(Ae,W,be){this._elementRef=Ae,this._dir=W,this._dirChangeSubscription=s.w0.EMPTY,this._translateTabComplete=new l.x,this._onCentering=new o.EventEmitter,this._beforeCentering=new o.EventEmitter,this._afterLeavingCenter=new o.EventEmitter,this._onCentered=new o.EventEmitter(!0),this.animationDuration="500ms",this.preserveContent=!1,W&&(this._dirChangeSubscription=W.change.subscribe(ge=>{this._computePositionAnimationState(ge),be.markForCheck()})),this._translateTabComplete.pipe((0,x.x)((ge,Ge)=>ge.fromState===Ge.fromState&&ge.toState===Ge.toState)).subscribe(ge=>{this._isCenterPosition(ge.toState)&&this._isCenterPosition(this._position)&&this._onCentered.emit(),this._isCenterPosition(ge.fromState)&&!this._isCenterPosition(this._position)&&this._afterLeavingCenter.emit()})}ngOnInit(){"center"==this._position&&null!=this.origin&&(this._position=this._computePositionFromOrigin(this.origin))}ngOnDestroy(){this._dirChangeSubscription.unsubscribe(),this._translateTabComplete.complete()}_onTranslateTabStarted(Ae){const W=this._isCenterPosition(Ae.toState);this._beforeCentering.emit(W),W&&this._onCentering.emit(this._elementRef.nativeElement.clientHeight)}_getLayoutDirection(){return this._dir&&"rtl"===this._dir.value?"rtl":"ltr"}_isCenterPosition(Ae){return"center"==Ae||"left-origin-center"==Ae||"right-origin-center"==Ae}_computePositionAnimationState(Ae=this._getLayoutDirection()){this._position=this._positionIndex<0?"ltr"==Ae?"left":"right":this._positionIndex>0?"ltr"==Ae?"right":"left":"center"}_computePositionFromOrigin(Ae){const W=this._getLayoutDirection();return"ltr"==W&&Ae<=0||"rtl"==W&&Ae>0?"left-origin-center":"right-origin-center"}}return Ct.\u0275fac=function(Ae){return new(Ae||Ct)(o.\u0275\u0275directiveInject(o.ElementRef),o.\u0275\u0275directiveInject(c.Is,8),o.\u0275\u0275directiveInject(o.ChangeDetectorRef))},Ct.\u0275dir=o.\u0275\u0275defineDirective({type:Ct,inputs:{_content:["content","_content"],origin:"origin",animationDuration:"animationDuration",preserveContent:"preserveContent",position:"position"},outputs:{_onCentering:"_onCentering",_beforeCentering:"_beforeCentering",_afterLeavingCenter:"_afterLeavingCenter",_onCentered:"_onCentered"}}),Ct})(),xt=(()=>{class Ct extends bt{constructor(Ae,W,be){super(Ae,W,be)}}return Ct.\u0275fac=function(Ae){return new(Ae||Ct)(o.\u0275\u0275directiveInject(o.ElementRef),o.\u0275\u0275directiveInject(c.Is,8),o.\u0275\u0275directiveInject(o.ChangeDetectorRef))},Ct.\u0275cmp=o.\u0275\u0275defineComponent({type:Ct,selectors:[["mat-tab-body"]],viewQuery:function(Ae,W){if(1&Ae&&o.\u0275\u0275viewQuery(C.Pl,5),2&Ae){let be;o.\u0275\u0275queryRefresh(be=o.\u0275\u0275loadQuery())&&(W._portalHost=be.first)}},hostAttrs:[1,"mat-mdc-tab-body"],features:[o.\u0275\u0275InheritDefinitionFeature],decls:3,vars:6,consts:[["cdkScrollable","",1,"mat-mdc-tab-body-content"],["content",""],["matTabBodyHost",""]],template:function(Ae,W){1&Ae&&(o.\u0275\u0275elementStart(0,"div",0,1),o.\u0275\u0275listener("@translateTab.start",function(ge){return W._onTranslateTabStarted(ge)})("@translateTab.done",function(ge){return W._translateTabComplete.next(ge)}),o.\u0275\u0275template(2,N,0,0,"ng-template",2),o.\u0275\u0275elementEnd()),2&Ae&&o.\u0275\u0275property("@translateTab",o.\u0275\u0275pureFunction2(3,k,W._position,o.\u0275\u0275pureFunction1(1,S,W.animationDuration)))},dependencies:[St],styles:['.mat-mdc-tab-body{top:0;left:0;right:0;bottom:0;position:absolute;display:block;overflow:hidden;outline:0;flex-basis:100%}.mat-mdc-tab-body.mat-mdc-tab-body-active{position:relative;overflow-x:hidden;overflow-y:auto;z-index:1;flex-grow:1}.mat-mdc-tab-group.mat-mdc-tab-group-dynamic-height .mat-mdc-tab-body.mat-mdc-tab-body-active{overflow-y:hidden}.mat-mdc-tab-body-content{height:100%;overflow:auto}.mat-mdc-tab-group-dynamic-height .mat-mdc-tab-body-content{overflow:hidden}.mat-mdc-tab-body-content[style*="visibility: hidden"]{display:none}'],encapsulation:2,data:{animation:[tt.translateTab]}}),Ct})();const nt=new o.InjectionToken("MatTabContent");let ot=(()=>{class Ct{constructor(Ae){this.template=Ae}}return Ct.\u0275fac=function(Ae){return new(Ae||Ct)(o.\u0275\u0275directiveInject(o.TemplateRef))},Ct.\u0275dir=o.\u0275\u0275defineDirective({type:Ct,selectors:[["","matTabContent",""]],features:[o.\u0275\u0275ProvidersFeature([{provide:nt,useExisting:Ct}])]}),Ct})();const vt=new o.InjectionToken("MatTabLabel"),rt=new o.InjectionToken("MAT_TAB");let J=(()=>{class Ct extends C.ig{constructor(Ae,W,be){super(Ae,W),this._closestTab=be}}return Ct.\u0275fac=function(Ae){return new(Ae||Ct)(o.\u0275\u0275directiveInject(o.TemplateRef),o.\u0275\u0275directiveInject(o.ViewContainerRef),o.\u0275\u0275directiveInject(rt,8))},Ct.\u0275dir=o.\u0275\u0275defineDirective({type:Ct,selectors:[["","mat-tab-label",""],["","matTabLabel",""]],features:[o.\u0275\u0275ProvidersFeature([{provide:vt,useExisting:Ct}]),o.\u0275\u0275InheritDefinitionFeature]}),Ct})();function pe(){return Ft=>({left:Ft?(Ft.offsetLeft||0)+"px":"0",width:Ft?(Ft.offsetWidth||0)+"px":"0"})}const Te=new o.InjectionToken("MatInkBarPositioner",{providedIn:"root",factory:pe}),ct=(0,v.mixinDisabled)(class{});let Lt=(()=>{class Ct extends ct{constructor(Ae){super(),this.elementRef=Ae}focus(){this.elementRef.nativeElement.focus()}getOffsetLeft(){return this.elementRef.nativeElement.offsetLeft}getOffsetWidth(){return this.elementRef.nativeElement.offsetWidth}}return Ct.\u0275fac=function(Ae){return new(Ae||Ct)(o.\u0275\u0275directiveInject(o.ElementRef))},Ct.\u0275dir=o.\u0275\u0275defineDirective({type:Ct,features:[o.\u0275\u0275InheritDefinitionFeature]}),Ct})();const ze=(0,v.mixinDisabled)(class{}),yt=new o.InjectionToken("MAT_TAB_GROUP");let Bt=(()=>{class Ct extends ze{get content(){return this._contentPortal}constructor(Ae,W){super(),this._viewContainerRef=Ae,this._closestTabGroup=W,this.textLabel="",this._contentPortal=null,this._stateChanges=new l.x,this.position=null,this.origin=null,this.isActive=!1}ngOnChanges(Ae){(Ae.hasOwnProperty("textLabel")||Ae.hasOwnProperty("disabled"))&&this._stateChanges.next()}ngOnDestroy(){this._stateChanges.complete()}ngOnInit(){this._contentPortal=new C.UE(this._explicitContent||this._implicitContent,this._viewContainerRef)}_setTemplateLabelInput(Ae){Ae&&Ae._closestTab===this&&(this._templateLabel=Ae)}}return Ct.\u0275fac=function(Ae){return new(Ae||Ct)(o.\u0275\u0275directiveInject(o.ViewContainerRef),o.\u0275\u0275directiveInject(yt,8))},Ct.\u0275dir=o.\u0275\u0275defineDirective({type:Ct,viewQuery:function(Ae,W){if(1&Ae&&o.\u0275\u0275viewQuery(o.TemplateRef,7),2&Ae){let be;o.\u0275\u0275queryRefresh(be=o.\u0275\u0275loadQuery())&&(W._implicitContent=be.first)}},inputs:{textLabel:["label","textLabel"],ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],labelClass:"labelClass",bodyClass:"bodyClass"},features:[o.\u0275\u0275InheritDefinitionFeature,o.\u0275\u0275NgOnChangesFeature]}),Ct})();const Yt=(0,R.i$)({passive:!0});let ve=(()=>{class Ct{get disablePagination(){return this._disablePagination}set disablePagination(Ae){this._disablePagination=(0,E.Ig)(Ae)}get selectedIndex(){return this._selectedIndex}set selectedIndex(Ae){Ae=(0,E.su)(Ae),this._selectedIndex!=Ae&&(this._selectedIndexChanged=!0,this._selectedIndex=Ae,this._keyManager&&this._keyManager.updateActiveItem(Ae))}constructor(Ae,W,be,ge,Ge,It,zt){this._elementRef=Ae,this._changeDetectorRef=W,this._viewportRuler=be,this._dir=ge,this._ngZone=Ge,this._platform=It,this._animationMode=zt,this._scrollDistance=0,this._selectedIndexChanged=!1,this._destroyed=new l.x,this._showPaginationControls=!1,this._disableScrollAfter=!0,this._disableScrollBefore=!0,this._stopScrolling=new l.x,this._disablePagination=!1,this._selectedIndex=0,this.selectFocusedIndex=new o.EventEmitter,this.indexFocused=new o.EventEmitter,Ge.runOutsideAngular(()=>{(0,d.R)(Ae.nativeElement,"mouseleave").pipe((0,w.R)(this._destroyed)).subscribe(()=>{this._stopInterval()})})}ngAfterViewInit(){(0,d.R)(this._previousPaginator.nativeElement,"touchstart",Yt).pipe((0,w.R)(this._destroyed)).subscribe(()=>{this._handlePaginatorPress("before")}),(0,d.R)(this._nextPaginator.nativeElement,"touchstart",Yt).pipe((0,w.R)(this._destroyed)).subscribe(()=>{this._handlePaginatorPress("after")})}ngAfterContentInit(){const Ae=this._dir?this._dir.change:(0,r.of)("ltr"),W=this._viewportRuler.change(150),be=()=>{this.updatePagination(),this._alignInkBarToSelectedTab()};this._keyManager=new n.Em(this._items).withHorizontalOrientation(this._getLayoutDirection()).withHomeAndEnd().withWrap().skipPredicate(()=>!1),this._keyManager.updateActiveItem(this._selectedIndex),this._ngZone.onStable.pipe((0,a.q)(1)).subscribe(be),(0,u.T)(Ae,W,this._items.changes,this._itemsResized()).pipe((0,w.R)(this._destroyed)).subscribe(()=>{this._ngZone.run(()=>{Promise.resolve().then(()=>{this._scrollDistance=Math.max(0,Math.min(this._getMaxScrollDistance(),this._scrollDistance)),be()})}),this._keyManager.withHorizontalOrientation(this._getLayoutDirection())}),this._keyManager.change.subscribe(ge=>{this.indexFocused.emit(ge),this._setTabFocus(ge)})}_itemsResized(){return"function"!=typeof ResizeObserver?h.E:this._items.changes.pipe((0,M.O)(this._items),(0,L.w)(Ae=>new m.y(W=>this._ngZone.runOutsideAngular(()=>{const be=new ResizeObserver(ge=>W.next(ge));return Ae.forEach(ge=>be.observe(ge.elementRef.nativeElement)),()=>{be.disconnect()}}))),(0,A.T)(1),(0,T.h)(Ae=>Ae.some(W=>W.contentRect.width>0&&W.contentRect.height>0)))}ngAfterContentChecked(){this._tabLabelCount!=this._items.length&&(this.updatePagination(),this._tabLabelCount=this._items.length,this._changeDetectorRef.markForCheck()),this._selectedIndexChanged&&(this._scrollToLabel(this._selectedIndex),this._checkScrollingControls(),this._alignInkBarToSelectedTab(),this._selectedIndexChanged=!1,this._changeDetectorRef.markForCheck()),this._scrollDistanceChanged&&(this._updateTabScrollPosition(),this._scrollDistanceChanged=!1,this._changeDetectorRef.markForCheck())}ngOnDestroy(){this._keyManager?.destroy(),this._destroyed.next(),this._destroyed.complete(),this._stopScrolling.complete()}_handleKeydown(Ae){if(!(0,j.Vb)(Ae))switch(Ae.keyCode){case j.K5:case j.L_:if(this.focusIndex!==this.selectedIndex){const W=this._items.get(this.focusIndex);W&&!W.disabled&&(this.selectFocusedIndex.emit(this.focusIndex),this._itemSelected(Ae))}break;default:this._keyManager.onKeydown(Ae)}}_onContentChanges(){const Ae=this._elementRef.nativeElement.textContent;Ae!==this._currentTextContent&&(this._currentTextContent=Ae||"",this._ngZone.run(()=>{this.updatePagination(),this._alignInkBarToSelectedTab(),this._changeDetectorRef.markForCheck()}))}updatePagination(){this._checkPaginationEnabled(),this._checkScrollingControls(),this._updateTabScrollPosition()}get focusIndex(){return this._keyManager?this._keyManager.activeItemIndex:0}set focusIndex(Ae){!this._isValidIndex(Ae)||this.focusIndex===Ae||!this._keyManager||this._keyManager.setActiveItem(Ae)}_isValidIndex(Ae){return!this._items||!!this._items.toArray()[Ae]}_setTabFocus(Ae){if(this._showPaginationControls&&this._scrollToLabel(Ae),this._items&&this._items.length){this._items.toArray()[Ae].focus();const W=this._tabListContainer.nativeElement;W.scrollLeft="ltr"==this._getLayoutDirection()?0:W.scrollWidth-W.offsetWidth}}_getLayoutDirection(){return this._dir&&"rtl"===this._dir.value?"rtl":"ltr"}_updateTabScrollPosition(){if(this.disablePagination)return;const Ae=this.scrollDistance,W="ltr"===this._getLayoutDirection()?-Ae:Ae;this._tabList.nativeElement.style.transform=`translateX(${Math.round(W)}px)`,(this._platform.TRIDENT||this._platform.EDGE)&&(this._tabListContainer.nativeElement.scrollLeft=0)}get scrollDistance(){return this._scrollDistance}set scrollDistance(Ae){this._scrollTo(Ae)}_scrollHeader(Ae){return this._scrollTo(this._scrollDistance+("before"==Ae?-1:1)*this._tabListContainer.nativeElement.offsetWidth/3)}_handlePaginatorClick(Ae){this._stopInterval(),this._scrollHeader(Ae)}_scrollToLabel(Ae){if(this.disablePagination)return;const W=this._items?this._items.toArray()[Ae]:null;if(!W)return;const be=this._tabListContainer.nativeElement.offsetWidth,{offsetLeft:ge,offsetWidth:Ge}=W.elementRef.nativeElement;let It,zt;"ltr"==this._getLayoutDirection()?(It=ge,zt=It+Ge):(zt=this._tabListInner.nativeElement.offsetWidth-ge,It=zt-Ge);const an=this.scrollDistance,gn=this.scrollDistance+be;Itgn&&(this.scrollDistance+=Math.min(zt-gn,It-an))}_checkPaginationEnabled(){if(this.disablePagination)this._showPaginationControls=!1;else{const Ae=this._tabListInner.nativeElement.scrollWidth>this._elementRef.nativeElement.offsetWidth;Ae||(this.scrollDistance=0),Ae!==this._showPaginationControls&&this._changeDetectorRef.markForCheck(),this._showPaginationControls=Ae}}_checkScrollingControls(){this.disablePagination?this._disableScrollAfter=this._disableScrollBefore=!0:(this._disableScrollBefore=0==this.scrollDistance,this._disableScrollAfter=this.scrollDistance==this._getMaxScrollDistance(),this._changeDetectorRef.markForCheck())}_getMaxScrollDistance(){return this._tabListInner.nativeElement.scrollWidth-this._tabListContainer.nativeElement.offsetWidth||0}_alignInkBarToSelectedTab(){const Ae=this._items&&this._items.length?this._items.toArray()[this.selectedIndex]:null,W=Ae?Ae.elementRef.nativeElement:null;W?this._inkBar.alignToElement(W):this._inkBar.hide()}_stopInterval(){this._stopScrolling.next()}_handlePaginatorPress(Ae,W){W&&null!=W.button&&0!==W.button||(this._stopInterval(),(0,_.H)(650,100).pipe((0,w.R)((0,u.T)(this._stopScrolling,this._destroyed))).subscribe(()=>{const{maxScrollDistance:be,distance:ge}=this._scrollHeader(Ae);(0===ge||ge>=be)&&this._stopInterval()}))}_scrollTo(Ae){if(this.disablePagination)return{maxScrollDistance:0,distance:0};const W=this._getMaxScrollDistance();return this._scrollDistance=Math.max(0,Math.min(W,Ae)),this._scrollDistanceChanged=!0,this._checkScrollingControls(),{maxScrollDistance:W,distance:this._scrollDistance}}}return Ct.\u0275fac=function(Ae){return new(Ae||Ct)(o.\u0275\u0275directiveInject(o.ElementRef),o.\u0275\u0275directiveInject(o.ChangeDetectorRef),o.\u0275\u0275directiveInject(D.rL),o.\u0275\u0275directiveInject(c.Is,8),o.\u0275\u0275directiveInject(o.NgZone),o.\u0275\u0275directiveInject(R.t4),o.\u0275\u0275directiveInject(o.ANIMATION_MODULE_TYPE,8))},Ct.\u0275dir=o.\u0275\u0275defineDirective({type:Ct,inputs:{disablePagination:"disablePagination"}}),Ct})(),we=(()=>{class Ct extends ve{get disableRipple(){return this._disableRipple}set disableRipple(Ae){this._disableRipple=(0,E.Ig)(Ae)}constructor(Ae,W,be,ge,Ge,It,zt){super(Ae,W,be,ge,Ge,It,zt),this._disableRipple=!1}_itemSelected(Ae){Ae.preventDefault()}}return Ct.\u0275fac=function(Ae){return new(Ae||Ct)(o.\u0275\u0275directiveInject(o.ElementRef),o.\u0275\u0275directiveInject(o.ChangeDetectorRef),o.\u0275\u0275directiveInject(D.rL),o.\u0275\u0275directiveInject(c.Is,8),o.\u0275\u0275directiveInject(o.NgZone),o.\u0275\u0275directiveInject(R.t4),o.\u0275\u0275directiveInject(o.ANIMATION_MODULE_TYPE,8))},Ct.\u0275dir=o.\u0275\u0275defineDirective({type:Ct,inputs:{disableRipple:"disableRipple"},features:[o.\u0275\u0275InheritDefinitionFeature]}),Ct})();const De=new o.InjectionToken("MAT_TABS_CONFIG");let je=0;const ke=(0,v.mixinColor)((0,v.mixinDisableRipple)(class{constructor(Ct){this._elementRef=Ct}}),"primary");let Z=(()=>{class Ct extends ke{get dynamicHeight(){return this._dynamicHeight}set dynamicHeight(Ae){this._dynamicHeight=(0,E.Ig)(Ae)}get selectedIndex(){return this._selectedIndex}set selectedIndex(Ae){this._indexToSelect=(0,E.su)(Ae,null)}get animationDuration(){return this._animationDuration}set animationDuration(Ae){this._animationDuration=/^\d+$/.test(Ae+"")?Ae+"ms":Ae}get contentTabIndex(){return this._contentTabIndex}set contentTabIndex(Ae){this._contentTabIndex=(0,E.su)(Ae,null)}get disablePagination(){return this._disablePagination}set disablePagination(Ae){this._disablePagination=(0,E.Ig)(Ae)}get preserveContent(){return this._preserveContent}set preserveContent(Ae){this._preserveContent=(0,E.Ig)(Ae)}get backgroundColor(){return this._backgroundColor}set backgroundColor(Ae){const W=this._elementRef.nativeElement.classList;W.remove("mat-tabs-with-background",`mat-background-${this.backgroundColor}`),Ae&&W.add("mat-tabs-with-background",`mat-background-${Ae}`),this._backgroundColor=Ae}constructor(Ae,W,be,ge){super(Ae),this._changeDetectorRef=W,this._animationMode=ge,this._tabs=new o.QueryList,this._indexToSelect=0,this._lastFocusedTabIndex=null,this._tabBodyWrapperHeight=0,this._tabsSubscription=s.w0.EMPTY,this._tabLabelSubscription=s.w0.EMPTY,this._dynamicHeight=!1,this._selectedIndex=null,this.headerPosition="above",this._disablePagination=!1,this._preserveContent=!1,this.selectedIndexChange=new o.EventEmitter,this.focusChange=new o.EventEmitter,this.animationDone=new o.EventEmitter,this.selectedTabChange=new o.EventEmitter(!0),this._groupId=je++,this.animationDuration=be&&be.animationDuration?be.animationDuration:"500ms",this.disablePagination=!(!be||null==be.disablePagination)&&be.disablePagination,this.dynamicHeight=!(!be||null==be.dynamicHeight)&&be.dynamicHeight,this.contentTabIndex=be?.contentTabIndex??null,this.preserveContent=!!be?.preserveContent}ngAfterContentChecked(){const Ae=this._indexToSelect=this._clampTabIndex(this._indexToSelect);if(this._selectedIndex!=Ae){const W=null==this._selectedIndex;if(!W){this.selectedTabChange.emit(this._createChangeEvent(Ae));const be=this._tabBodyWrapper.nativeElement;be.style.minHeight=be.clientHeight+"px"}Promise.resolve().then(()=>{this._tabs.forEach((be,ge)=>be.isActive=ge===Ae),W||(this.selectedIndexChange.emit(Ae),this._tabBodyWrapper.nativeElement.style.minHeight="")})}this._tabs.forEach((W,be)=>{W.position=be-Ae,null!=this._selectedIndex&&0==W.position&&!W.origin&&(W.origin=Ae-this._selectedIndex)}),this._selectedIndex!==Ae&&(this._selectedIndex=Ae,this._lastFocusedTabIndex=null,this._changeDetectorRef.markForCheck())}ngAfterContentInit(){this._subscribeToAllTabChanges(),this._subscribeToTabLabels(),this._tabsSubscription=this._tabs.changes.subscribe(()=>{const Ae=this._clampTabIndex(this._indexToSelect);if(Ae===this._selectedIndex){const W=this._tabs.toArray();let be;for(let ge=0;ge{W[Ae].isActive=!0,this.selectedTabChange.emit(this._createChangeEvent(Ae))})}this._changeDetectorRef.markForCheck()})}_subscribeToAllTabChanges(){this._allTabs.changes.pipe((0,M.O)(this._allTabs)).subscribe(Ae=>{this._tabs.reset(Ae.filter(W=>W._closestTabGroup===this||!W._closestTabGroup)),this._tabs.notifyOnChanges()})}ngOnDestroy(){this._tabs.destroy(),this._tabsSubscription.unsubscribe(),this._tabLabelSubscription.unsubscribe()}realignInkBar(){this._tabHeader&&this._tabHeader._alignInkBarToSelectedTab()}updatePagination(){this._tabHeader&&this._tabHeader.updatePagination()}focusTab(Ae){const W=this._tabHeader;W&&(W.focusIndex=Ae)}_focusChanged(Ae){this._lastFocusedTabIndex=Ae,this.focusChange.emit(this._createChangeEvent(Ae))}_createChangeEvent(Ae){const W=new ce;return W.index=Ae,this._tabs&&this._tabs.length&&(W.tab=this._tabs.toArray()[Ae]),W}_subscribeToTabLabels(){this._tabLabelSubscription&&this._tabLabelSubscription.unsubscribe(),this._tabLabelSubscription=(0,u.T)(...this._tabs.map(Ae=>Ae._stateChanges)).subscribe(()=>this._changeDetectorRef.markForCheck())}_clampTabIndex(Ae){return Math.min(this._tabs.length-1,Math.max(Ae||0,0))}_getTabLabelId(Ae){return`mat-tab-label-${this._groupId}-${Ae}`}_getTabContentId(Ae){return`mat-tab-content-${this._groupId}-${Ae}`}_setTabBodyWrapperHeight(Ae){if(!this._dynamicHeight||!this._tabBodyWrapperHeight)return;const W=this._tabBodyWrapper.nativeElement;W.style.height=this._tabBodyWrapperHeight+"px",this._tabBodyWrapper.nativeElement.offsetHeight&&(W.style.height=Ae+"px")}_removeTabBodyWrapperHeight(){const Ae=this._tabBodyWrapper.nativeElement;this._tabBodyWrapperHeight=Ae.clientHeight,Ae.style.height="",this.animationDone.emit()}_handleClick(Ae,W,be){W.focusIndex=be,Ae.disabled||(this.selectedIndex=be)}_getTabIndex(Ae){return Ae===(this._lastFocusedTabIndex??this.selectedIndex)?0:-1}_tabFocusChanged(Ae,W){Ae&&"mouse"!==Ae&&"touch"!==Ae&&(this._tabHeader.focusIndex=W)}}return Ct.\u0275fac=function(Ae){return new(Ae||Ct)(o.\u0275\u0275directiveInject(o.ElementRef),o.\u0275\u0275directiveInject(o.ChangeDetectorRef),o.\u0275\u0275directiveInject(De,8),o.\u0275\u0275directiveInject(o.ANIMATION_MODULE_TYPE,8))},Ct.\u0275dir=o.\u0275\u0275defineDirective({type:Ct,inputs:{dynamicHeight:"dynamicHeight",selectedIndex:"selectedIndex",headerPosition:"headerPosition",animationDuration:"animationDuration",contentTabIndex:"contentTabIndex",disablePagination:"disablePagination",preserveContent:"preserveContent",backgroundColor:"backgroundColor"},outputs:{selectedIndexChange:"selectedIndexChange",focusChange:"focusChange",animationDone:"animationDone",selectedTabChange:"selectedTabChange"},features:[o.\u0275\u0275InheritDefinitionFeature]}),Ct})();class ce{}let Ee=0,it=(()=>{class Ct extends ve{get backgroundColor(){return this._backgroundColor}set backgroundColor(Ae){const W=this._elementRef.nativeElement.classList;W.remove("mat-tabs-with-background",`mat-background-${this.backgroundColor}`),Ae&&W.add("mat-tabs-with-background",`mat-background-${Ae}`),this._backgroundColor=Ae}get disableRipple(){return this._disableRipple}set disableRipple(Ae){this._disableRipple=(0,E.Ig)(Ae)}constructor(Ae,W,be,ge,Ge,It,zt){super(Ae,ge,Ge,W,be,It,zt),this._disableRipple=!1,this.color="primary"}_itemSelected(){}ngAfterContentInit(){this._items.changes.pipe((0,M.O)(null),(0,w.R)(this._destroyed)).subscribe(()=>{this.updateActiveLink()}),super.ngAfterContentInit()}updateActiveLink(){if(!this._items)return;const Ae=this._items.toArray();for(let W=0;W{class Ct extends Rt{get active(){return this._isActive}set active(Ae){const W=(0,E.Ig)(Ae);W!==this._isActive&&(this._isActive=W,this._tabNavBar.updateActiveLink())}get rippleDisabled(){return this.disabled||this.disableRipple||this._tabNavBar.disableRipple||!!this.rippleConfig.disabled}constructor(Ae,W,be,ge,Ge,It){super(),this._tabNavBar=Ae,this.elementRef=W,this._focusMonitor=Ge,this._isActive=!1,this.id="mat-tab-link-"+Ee++,this.rippleConfig=be||{},this.tabIndex=parseInt(ge)||0,"NoopAnimations"===It&&(this.rippleConfig.animation={enterDuration:0,exitDuration:0})}focus(){this.elementRef.nativeElement.focus()}ngAfterViewInit(){this._focusMonitor.monitor(this.elementRef)}ngOnDestroy(){this._focusMonitor.stopMonitoring(this.elementRef)}_handleFocus(){this._tabNavBar.focusIndex=this._tabNavBar._items.toArray().indexOf(this)}_handleKeydown(Ae){!this.disabled||Ae.keyCode!==j.L_&&Ae.keyCode!==j.K5?this._tabNavBar.tabPanel&&Ae.keyCode===j.L_&&this.elementRef.nativeElement.click():Ae.preventDefault()}_getAriaControls(){return this._tabNavBar.tabPanel?this._tabNavBar.tabPanel?.id:this.elementRef.nativeElement.getAttribute("aria-controls")}_getAriaSelected(){return this._tabNavBar.tabPanel?this.active?"true":"false":this.elementRef.nativeElement.getAttribute("aria-selected")}_getAriaCurrent(){return this.active&&!this._tabNavBar.tabPanel?"page":null}_getRole(){return this._tabNavBar.tabPanel?"tab":this.elementRef.nativeElement.getAttribute("role")}_getTabIndex(){return this._tabNavBar.tabPanel?this._isActive&&!this.disabled?0:-1:this.tabIndex}}return Ct.\u0275fac=function(Ae){return new(Ae||Ct)(o.\u0275\u0275directiveInject(it),o.\u0275\u0275directiveInject(o.ElementRef),o.\u0275\u0275directiveInject(v.MAT_RIPPLE_GLOBAL_OPTIONS,8),o.\u0275\u0275injectAttribute("tabindex"),o.\u0275\u0275directiveInject(n.tE),o.\u0275\u0275directiveInject(o.ANIMATION_MODULE_TYPE,8))},Ct.\u0275dir=o.\u0275\u0275defineDirective({type:Ct,inputs:{active:"active",id:"id"},features:[o.\u0275\u0275InheritDefinitionFeature]}),Ct})();function wn(Ct,Ft){1&Ct&&o.\u0275\u0275projection(0)}const Tn=["*"];function Sn(Ct,Ft){}const Mn=function(Ct){return{animationDuration:Ct}},Ci=function(Ct,Ft){return{value:Ct,params:Ft}},di=["tabListContainer"],Li=["tabList"],Qi=["tabListInner"],wt=["nextPaginator"],mt=["previousPaginator"],pt=["tabBodyWrapper"],qt=["tabHeader"];function on(Ct,Ft){}function hn(Ct,Ft){if(1&Ct&&o.\u0275\u0275template(0,on,0,0,"ng-template",10),2&Ct){const Ae=o.\u0275\u0275nextContext().$implicit;o.\u0275\u0275property("cdkPortalOutlet",Ae.templateLabel)}}function un(Ct,Ft){if(1&Ct&&o.\u0275\u0275text(0),2&Ct){const Ae=o.\u0275\u0275nextContext().$implicit;o.\u0275\u0275textInterpolate(Ae.textLabel)}}function $n(Ct,Ft){if(1&Ct){const Ae=o.\u0275\u0275getCurrentView();o.\u0275\u0275elementStart(0,"div",6),o.\u0275\u0275listener("click",function(){const be=o.\u0275\u0275restoreView(Ae),ge=be.$implicit,Ge=be.index,It=o.\u0275\u0275nextContext(),zt=o.\u0275\u0275reference(1);return o.\u0275\u0275resetView(It._handleClick(ge,zt,Ge))})("cdkFocusChange",function(be){const Ge=o.\u0275\u0275restoreView(Ae).index,It=o.\u0275\u0275nextContext();return o.\u0275\u0275resetView(It._tabFocusChanged(be,Ge))}),o.\u0275\u0275elementStart(1,"div",7),o.\u0275\u0275template(2,hn,1,1,"ng-template",8),o.\u0275\u0275template(3,un,1,1,"ng-template",null,9,o.\u0275\u0275templateRefExtractor),o.\u0275\u0275elementEnd()()}if(2&Ct){const Ae=Ft.$implicit,W=Ft.index,be=o.\u0275\u0275reference(4),ge=o.\u0275\u0275nextContext();o.\u0275\u0275classProp("mat-tab-label-active",ge.selectedIndex===W),o.\u0275\u0275property("id",ge._getTabLabelId(W))("ngClass",Ae.labelClass)("disabled",Ae.disabled)("matRippleDisabled",Ae.disabled||ge.disableRipple),o.\u0275\u0275attribute("tabIndex",ge._getTabIndex(W))("aria-posinset",W+1)("aria-setsize",ge._tabs.length)("aria-controls",ge._getTabContentId(W))("aria-selected",ge.selectedIndex===W)("aria-label",Ae.ariaLabel||null)("aria-labelledby",!Ae.ariaLabel&&Ae.ariaLabelledby?Ae.ariaLabelledby:null),o.\u0275\u0275advance(2),o.\u0275\u0275property("ngIf",Ae.templateLabel)("ngIfElse",be)}}function In(Ct,Ft){if(1&Ct){const Ae=o.\u0275\u0275getCurrentView();o.\u0275\u0275elementStart(0,"mat-tab-body",11),o.\u0275\u0275listener("_onCentered",function(){o.\u0275\u0275restoreView(Ae);const be=o.\u0275\u0275nextContext();return o.\u0275\u0275resetView(be._removeTabBodyWrapperHeight())})("_onCentering",function(be){o.\u0275\u0275restoreView(Ae);const ge=o.\u0275\u0275nextContext();return o.\u0275\u0275resetView(ge._setTabBodyWrapperHeight(be))}),o.\u0275\u0275elementEnd()}if(2&Ct){const Ae=Ft.$implicit,W=Ft.index,be=o.\u0275\u0275nextContext();o.\u0275\u0275classProp("mat-tab-body-active",be.selectedIndex===W),o.\u0275\u0275property("id",be._getTabContentId(W))("ngClass",Ae.bodyClass)("content",Ae.content)("position",Ae.position)("origin",Ae.origin)("animationDuration",be.animationDuration)("preserveContent",be.preserveContent),o.\u0275\u0275attribute("tabindex",null!=be.contentTabIndex&&be.selectedIndex===W?be.contentTabIndex:null)("aria-labelledby",be._getTabLabelId(W))}}const Zn=["mat-tab-nav-bar",""];let mi=(()=>{class Ct{constructor(Ae,W,be,ge){this._elementRef=Ae,this._ngZone=W,this._inkBarPositioner=be,this._animationMode=ge}alignToElement(Ae){this.show(),this._ngZone.run(()=>{this._ngZone.onStable.pipe((0,a.q)(1)).subscribe(()=>{const W=this._inkBarPositioner(Ae),be=this._elementRef.nativeElement;be.style.left=W.left,be.style.width=W.width})})}show(){this._elementRef.nativeElement.style.visibility="visible"}hide(){this._elementRef.nativeElement.style.visibility="hidden"}}return Ct.\u0275fac=function(Ae){return new(Ae||Ct)(o.\u0275\u0275directiveInject(o.ElementRef),o.\u0275\u0275directiveInject(o.NgZone),o.\u0275\u0275directiveInject(Te),o.\u0275\u0275directiveInject(o.ANIMATION_MODULE_TYPE,8))},Ct.\u0275dir=o.\u0275\u0275defineDirective({type:Ct,selectors:[["mat-ink-bar"]],hostAttrs:[1,"mat-ink-bar"],hostVars:2,hostBindings:function(Ae,W){2&Ae&&o.\u0275\u0275classProp("_mat-animation-noopable","NoopAnimations"===W._animationMode)}}),Ct})(),Qn=(()=>{class Ct extends Bt{constructor(){super(...arguments),this._explicitContent=void 0}get templateLabel(){return this._templateLabel}set templateLabel(Ae){this._setTemplateLabelInput(Ae)}}return Ct.\u0275fac=function(){let Ft;return function(W){return(Ft||(Ft=o.\u0275\u0275getInheritedFactory(Ct)))(W||Ct)}}(),Ct.\u0275cmp=o.\u0275\u0275defineComponent({type:Ct,selectors:[["mat-tab"]],contentQueries:function(Ae,W,be){if(1&Ae&&(o.\u0275\u0275contentQuery(be,vt,5),o.\u0275\u0275contentQuery(be,nt,7,o.TemplateRef)),2&Ae){let ge;o.\u0275\u0275queryRefresh(ge=o.\u0275\u0275loadQuery())&&(W.templateLabel=ge.first),o.\u0275\u0275queryRefresh(ge=o.\u0275\u0275loadQuery())&&(W._explicitContent=ge.first)}},hostVars:1,hostBindings:function(Ae,W){2&Ae&&o.\u0275\u0275attribute("mat-id-collision",null)},inputs:{disabled:"disabled"},exportAs:["matTab"],features:[o.\u0275\u0275ProvidersFeature([{provide:rt,useExisting:Ct}]),o.\u0275\u0275InheritDefinitionFeature],ngContentSelectors:Tn,decls:1,vars:0,template:function(Ae,W){1&Ae&&(o.\u0275\u0275projectionDef(),o.\u0275\u0275template(0,wn,1,0,"ng-template"))},encapsulation:2}),Ct})(),ri=(()=>{class Ct extends St{constructor(Ae,W,be,ge){super(Ae,W,be,ge)}}return Ct.\u0275fac=function(Ae){return new(Ae||Ct)(o.\u0275\u0275directiveInject(o.ComponentFactoryResolver),o.\u0275\u0275directiveInject(o.ViewContainerRef),o.\u0275\u0275directiveInject((0,o.forwardRef)(()=>ln)),o.\u0275\u0275directiveInject(b.DOCUMENT))},Ct.\u0275dir=o.\u0275\u0275defineDirective({type:Ct,selectors:[["","matTabBodyHost",""]],features:[o.\u0275\u0275InheritDefinitionFeature]}),Ct})(),ln=(()=>{class Ct extends bt{constructor(Ae,W,be){super(Ae,W,be)}}return Ct.\u0275fac=function(Ae){return new(Ae||Ct)(o.\u0275\u0275directiveInject(o.ElementRef),o.\u0275\u0275directiveInject(c.Is,8),o.\u0275\u0275directiveInject(o.ChangeDetectorRef))},Ct.\u0275cmp=o.\u0275\u0275defineComponent({type:Ct,selectors:[["mat-tab-body"]],viewQuery:function(Ae,W){if(1&Ae&&o.\u0275\u0275viewQuery(C.Pl,5),2&Ae){let be;o.\u0275\u0275queryRefresh(be=o.\u0275\u0275loadQuery())&&(W._portalHost=be.first)}},hostAttrs:[1,"mat-tab-body"],features:[o.\u0275\u0275InheritDefinitionFeature],decls:3,vars:6,consts:[["cdkScrollable","",1,"mat-tab-body-content"],["content",""],["matTabBodyHost",""]],template:function(Ae,W){1&Ae&&(o.\u0275\u0275elementStart(0,"div",0,1),o.\u0275\u0275listener("@translateTab.start",function(ge){return W._onTranslateTabStarted(ge)})("@translateTab.done",function(ge){return W._translateTabComplete.next(ge)}),o.\u0275\u0275template(2,Sn,0,0,"ng-template",2),o.\u0275\u0275elementEnd()),2&Ae&&o.\u0275\u0275property("@translateTab",o.\u0275\u0275pureFunction2(3,Ci,W._position,o.\u0275\u0275pureFunction1(1,Mn,W.animationDuration)))},dependencies:[ri],styles:['.mat-tab-body-content{height:100%;overflow:auto}.mat-tab-group-dynamic-height .mat-tab-body-content{overflow:hidden}.mat-tab-body-content[style*="visibility: hidden"]{display:none}'],encapsulation:2,data:{animation:[tt.translateTab]}}),Ct})(),en=(()=>{class Ct extends Lt{}return Ct.\u0275fac=function(){let Ft;return function(W){return(Ft||(Ft=o.\u0275\u0275getInheritedFactory(Ct)))(W||Ct)}}(),Ct.\u0275dir=o.\u0275\u0275defineDirective({type:Ct,selectors:[["","matTabLabelWrapper",""]],hostVars:3,hostBindings:function(Ae,W){2&Ae&&(o.\u0275\u0275attribute("aria-disabled",!!W.disabled),o.\u0275\u0275classProp("mat-tab-disabled",W.disabled))},inputs:{disabled:"disabled"},features:[o.\u0275\u0275InheritDefinitionFeature]}),Ct})(),Dn=(()=>{class Ct extends we{constructor(Ae,W,be,ge,Ge,It,zt){super(Ae,W,be,ge,Ge,It,zt)}}return Ct.\u0275fac=function(Ae){return new(Ae||Ct)(o.\u0275\u0275directiveInject(o.ElementRef),o.\u0275\u0275directiveInject(o.ChangeDetectorRef),o.\u0275\u0275directiveInject(D.rL),o.\u0275\u0275directiveInject(c.Is,8),o.\u0275\u0275directiveInject(o.NgZone),o.\u0275\u0275directiveInject(R.t4),o.\u0275\u0275directiveInject(o.ANIMATION_MODULE_TYPE,8))},Ct.\u0275cmp=o.\u0275\u0275defineComponent({type:Ct,selectors:[["mat-tab-header"]],contentQueries:function(Ae,W,be){if(1&Ae&&o.\u0275\u0275contentQuery(be,en,4),2&Ae){let ge;o.\u0275\u0275queryRefresh(ge=o.\u0275\u0275loadQuery())&&(W._items=ge)}},viewQuery:function(Ae,W){if(1&Ae&&(o.\u0275\u0275viewQuery(mi,7),o.\u0275\u0275viewQuery(di,7),o.\u0275\u0275viewQuery(Li,7),o.\u0275\u0275viewQuery(Qi,7),o.\u0275\u0275viewQuery(wt,5),o.\u0275\u0275viewQuery(mt,5)),2&Ae){let be;o.\u0275\u0275queryRefresh(be=o.\u0275\u0275loadQuery())&&(W._inkBar=be.first),o.\u0275\u0275queryRefresh(be=o.\u0275\u0275loadQuery())&&(W._tabListContainer=be.first),o.\u0275\u0275queryRefresh(be=o.\u0275\u0275loadQuery())&&(W._tabList=be.first),o.\u0275\u0275queryRefresh(be=o.\u0275\u0275loadQuery())&&(W._tabListInner=be.first),o.\u0275\u0275queryRefresh(be=o.\u0275\u0275loadQuery())&&(W._nextPaginator=be.first),o.\u0275\u0275queryRefresh(be=o.\u0275\u0275loadQuery())&&(W._previousPaginator=be.first)}},hostAttrs:[1,"mat-tab-header"],hostVars:4,hostBindings:function(Ae,W){2&Ae&&o.\u0275\u0275classProp("mat-tab-header-pagination-controls-enabled",W._showPaginationControls)("mat-tab-header-rtl","rtl"==W._getLayoutDirection())},inputs:{selectedIndex:"selectedIndex"},outputs:{selectFocusedIndex:"selectFocusedIndex",indexFocused:"indexFocused"},features:[o.\u0275\u0275InheritDefinitionFeature],ngContentSelectors:Tn,decls:14,vars:10,consts:[["aria-hidden","true","type","button","mat-ripple","","tabindex","-1",1,"mat-tab-header-pagination","mat-tab-header-pagination-before","mat-elevation-z4",3,"matRippleDisabled","disabled","click","mousedown","touchend"],["previousPaginator",""],[1,"mat-tab-header-pagination-chevron"],[1,"mat-tab-label-container",3,"keydown"],["tabListContainer",""],["role","tablist",1,"mat-tab-list",3,"cdkObserveContent"],["tabList",""],[1,"mat-tab-labels"],["tabListInner",""],["aria-hidden","true","type","button","mat-ripple","","tabindex","-1",1,"mat-tab-header-pagination","mat-tab-header-pagination-after","mat-elevation-z4",3,"matRippleDisabled","disabled","mousedown","click","touchend"],["nextPaginator",""]],template:function(Ae,W){1&Ae&&(o.\u0275\u0275projectionDef(),o.\u0275\u0275elementStart(0,"button",0,1),o.\u0275\u0275listener("click",function(){return W._handlePaginatorClick("before")})("mousedown",function(ge){return W._handlePaginatorPress("before",ge)})("touchend",function(){return W._stopInterval()}),o.\u0275\u0275element(2,"div",2),o.\u0275\u0275elementEnd(),o.\u0275\u0275elementStart(3,"div",3,4),o.\u0275\u0275listener("keydown",function(ge){return W._handleKeydown(ge)}),o.\u0275\u0275elementStart(5,"div",5,6),o.\u0275\u0275listener("cdkObserveContent",function(){return W._onContentChanges()}),o.\u0275\u0275elementStart(7,"div",7,8),o.\u0275\u0275projection(9),o.\u0275\u0275elementEnd(),o.\u0275\u0275element(10,"mat-ink-bar"),o.\u0275\u0275elementEnd()(),o.\u0275\u0275elementStart(11,"button",9,10),o.\u0275\u0275listener("mousedown",function(ge){return W._handlePaginatorPress("after",ge)})("click",function(){return W._handlePaginatorClick("after")})("touchend",function(){return W._stopInterval()}),o.\u0275\u0275element(13,"div",2),o.\u0275\u0275elementEnd()),2&Ae&&(o.\u0275\u0275classProp("mat-tab-header-pagination-disabled",W._disableScrollBefore),o.\u0275\u0275property("matRippleDisabled",W._disableScrollBefore||W.disableRipple)("disabled",W._disableScrollBefore||null),o.\u0275\u0275advance(5),o.\u0275\u0275classProp("_mat-animation-noopable","NoopAnimations"===W._animationMode),o.\u0275\u0275advance(6),o.\u0275\u0275classProp("mat-tab-header-pagination-disabled",W._disableScrollAfter),o.\u0275\u0275property("matRippleDisabled",W._disableScrollAfter||W.disableRipple)("disabled",W._disableScrollAfter||null))},dependencies:[v.MatRipple,p.wD,mi],styles:[".mat-tab-header{display:flex;overflow:hidden;position:relative;flex-shrink:0}.mat-tab-header-pagination{-webkit-user-select:none;user-select:none;position:relative;display:none;justify-content:center;align-items:center;min-width:32px;cursor:pointer;z-index:2;-webkit-tap-highlight-color:rgba(0,0,0,0);touch-action:none;box-sizing:content-box;background:none;border:none;outline:0;padding:0}.mat-tab-header-pagination::-moz-focus-inner{border:0}.mat-tab-header-pagination-controls-enabled .mat-tab-header-pagination{display:flex}.mat-tab-header-pagination-before,.mat-tab-header-rtl .mat-tab-header-pagination-after{padding-left:4px}.mat-tab-header-pagination-before .mat-tab-header-pagination-chevron,.mat-tab-header-rtl .mat-tab-header-pagination-after .mat-tab-header-pagination-chevron{transform:rotate(-135deg)}.mat-tab-header-rtl .mat-tab-header-pagination-before,.mat-tab-header-pagination-after{padding-right:4px}.mat-tab-header-rtl .mat-tab-header-pagination-before .mat-tab-header-pagination-chevron,.mat-tab-header-pagination-after .mat-tab-header-pagination-chevron{transform:rotate(45deg)}.mat-tab-header-pagination-chevron{border-style:solid;border-width:2px 2px 0 0;height:8px;width:8px}.mat-tab-header-pagination-disabled{box-shadow:none;cursor:default}.mat-tab-list{flex-grow:1;position:relative;transition:transform 500ms cubic-bezier(0.35, 0, 0.25, 1)}.mat-ink-bar{position:absolute;bottom:0;height:2px;transition:500ms cubic-bezier(0.35, 0, 0.25, 1)}.mat-ink-bar._mat-animation-noopable{transition:none !important;animation:none !important}.mat-tab-group-inverted-header .mat-ink-bar{bottom:auto;top:0}.cdk-high-contrast-active .mat-ink-bar{outline:solid 2px;height:0}.mat-tab-labels{display:flex}[mat-align-tabs=center]>.mat-tab-header .mat-tab-labels{justify-content:center}[mat-align-tabs=end]>.mat-tab-header .mat-tab-labels{justify-content:flex-end}.mat-tab-label-container{display:flex;flex-grow:1;overflow:hidden;z-index:1}.mat-tab-list._mat-animation-noopable{transition:none !important;animation:none !important}.mat-tab-label{height:48px;padding:0 24px;cursor:pointer;box-sizing:border-box;opacity:.6;min-width:160px;text-align:center;display:inline-flex;justify-content:center;align-items:center;white-space:nowrap;position:relative}.mat-tab-label:focus{outline:none}.mat-tab-label:focus:not(.mat-tab-disabled){opacity:1}.mat-tab-label.mat-tab-disabled{cursor:default}.cdk-high-contrast-active .mat-tab-label.mat-tab-disabled{opacity:.5}.mat-tab-label .mat-tab-label-content{display:inline-flex;justify-content:center;align-items:center;white-space:nowrap}.cdk-high-contrast-active .mat-tab-label{opacity:1}.mat-tab-label::before{margin:5px}@media(max-width: 599px){.mat-tab-label{min-width:72px}}"],encapsulation:2}),Ct})(),An=(()=>{class Ct extends Z{constructor(Ae,W,be,ge){super(Ae,W,be,ge)}}return Ct.\u0275fac=function(Ae){return new(Ae||Ct)(o.\u0275\u0275directiveInject(o.ElementRef),o.\u0275\u0275directiveInject(o.ChangeDetectorRef),o.\u0275\u0275directiveInject(De,8),o.\u0275\u0275directiveInject(o.ANIMATION_MODULE_TYPE,8))},Ct.\u0275cmp=o.\u0275\u0275defineComponent({type:Ct,selectors:[["mat-tab-group"]],contentQueries:function(Ae,W,be){if(1&Ae&&o.\u0275\u0275contentQuery(be,Qn,5),2&Ae){let ge;o.\u0275\u0275queryRefresh(ge=o.\u0275\u0275loadQuery())&&(W._allTabs=ge)}},viewQuery:function(Ae,W){if(1&Ae&&(o.\u0275\u0275viewQuery(pt,5),o.\u0275\u0275viewQuery(qt,5)),2&Ae){let be;o.\u0275\u0275queryRefresh(be=o.\u0275\u0275loadQuery())&&(W._tabBodyWrapper=be.first),o.\u0275\u0275queryRefresh(be=o.\u0275\u0275loadQuery())&&(W._tabHeader=be.first)}},hostAttrs:["ngSkipHydration","",1,"mat-tab-group"],hostVars:4,hostBindings:function(Ae,W){2&Ae&&o.\u0275\u0275classProp("mat-tab-group-dynamic-height",W.dynamicHeight)("mat-tab-group-inverted-header","below"===W.headerPosition)},inputs:{color:"color",disableRipple:"disableRipple"},exportAs:["matTabGroup"],features:[o.\u0275\u0275ProvidersFeature([{provide:yt,useExisting:Ct}]),o.\u0275\u0275InheritDefinitionFeature],decls:6,vars:7,consts:[[3,"selectedIndex","disableRipple","disablePagination","indexFocused","selectFocusedIndex"],["tabHeader",""],["class","mat-tab-label mat-focus-indicator","role","tab","matTabLabelWrapper","","mat-ripple","","cdkMonitorElementFocus","",3,"id","mat-tab-label-active","ngClass","disabled","matRippleDisabled","click","cdkFocusChange",4,"ngFor","ngForOf"],[1,"mat-tab-body-wrapper"],["tabBodyWrapper",""],["role","tabpanel",3,"id","mat-tab-body-active","ngClass","content","position","origin","animationDuration","preserveContent","_onCentered","_onCentering",4,"ngFor","ngForOf"],["role","tab","matTabLabelWrapper","","mat-ripple","","cdkMonitorElementFocus","",1,"mat-tab-label","mat-focus-indicator",3,"id","ngClass","disabled","matRippleDisabled","click","cdkFocusChange"],[1,"mat-tab-label-content"],[3,"ngIf","ngIfElse"],["tabTextLabel",""],[3,"cdkPortalOutlet"],["role","tabpanel",3,"id","ngClass","content","position","origin","animationDuration","preserveContent","_onCentered","_onCentering"]],template:function(Ae,W){1&Ae&&(o.\u0275\u0275elementStart(0,"mat-tab-header",0,1),o.\u0275\u0275listener("indexFocused",function(ge){return W._focusChanged(ge)})("selectFocusedIndex",function(ge){return W.selectedIndex=ge}),o.\u0275\u0275template(2,$n,5,15,"div",2),o.\u0275\u0275elementEnd(),o.\u0275\u0275elementStart(3,"div",3,4),o.\u0275\u0275template(5,In,1,11,"mat-tab-body",5),o.\u0275\u0275elementEnd()),2&Ae&&(o.\u0275\u0275property("selectedIndex",W.selectedIndex||0)("disableRipple",W.disableRipple)("disablePagination",W.disablePagination),o.\u0275\u0275advance(2),o.\u0275\u0275property("ngForOf",W._tabs),o.\u0275\u0275advance(1),o.\u0275\u0275classProp("_mat-animation-noopable","NoopAnimations"===W._animationMode),o.\u0275\u0275advance(2),o.\u0275\u0275property("ngForOf",W._tabs))},dependencies:[b.NgClass,b.NgForOf,b.NgIf,C.Pl,v.MatRipple,n.kH,en,ln,Dn],styles:[".mat-tab-group{display:flex;flex-direction:column;max-width:100%}.mat-tab-group.mat-tab-group-inverted-header{flex-direction:column-reverse}.mat-tab-label{height:48px;padding:0 24px;cursor:pointer;box-sizing:border-box;opacity:.6;min-width:160px;text-align:center;display:inline-flex;justify-content:center;align-items:center;white-space:nowrap;position:relative}.mat-tab-label:focus{outline:none}.mat-tab-label:focus:not(.mat-tab-disabled){opacity:1}.mat-tab-label.mat-tab-disabled{cursor:default}.cdk-high-contrast-active .mat-tab-label.mat-tab-disabled{opacity:.5}.mat-tab-label .mat-tab-label-content{display:inline-flex;justify-content:center;align-items:center;white-space:nowrap}.cdk-high-contrast-active .mat-tab-label{opacity:1}@media(max-width: 599px){.mat-tab-label{padding:0 12px}}@media(max-width: 959px){.mat-tab-label{padding:0 12px}}.mat-tab-group[mat-stretch-tabs]>.mat-tab-header .mat-tab-label{flex-basis:0;flex-grow:1}.mat-tab-body-wrapper{position:relative;overflow:hidden;display:flex;transition:height 500ms cubic-bezier(0.35, 0, 0.25, 1)}.mat-tab-body-wrapper._mat-animation-noopable{transition:none !important;animation:none !important}.mat-tab-body{top:0;left:0;right:0;bottom:0;position:absolute;display:block;overflow:hidden;outline:0;flex-basis:100%}.mat-tab-body.mat-tab-body-active{position:relative;overflow-x:hidden;overflow-y:auto;z-index:1;flex-grow:1}.mat-tab-group.mat-tab-group-dynamic-height .mat-tab-body.mat-tab-body-active{overflow-y:hidden}"],encapsulation:2}),Ct})(),Yn=0,si=(()=>{class Ct extends it{constructor(Ae,W,be,ge,Ge,It,zt){super(Ae,W,be,ge,Ge,It,zt)}}return Ct.\u0275fac=function(Ae){return new(Ae||Ct)(o.\u0275\u0275directiveInject(o.ElementRef),o.\u0275\u0275directiveInject(c.Is,8),o.\u0275\u0275directiveInject(o.NgZone),o.\u0275\u0275directiveInject(o.ChangeDetectorRef),o.\u0275\u0275directiveInject(D.rL),o.\u0275\u0275directiveInject(R.t4),o.\u0275\u0275directiveInject(o.ANIMATION_MODULE_TYPE,8))},Ct.\u0275cmp=o.\u0275\u0275defineComponent({type:Ct,selectors:[["","mat-tab-nav-bar",""]],contentQueries:function(Ae,W,be){if(1&Ae&&o.\u0275\u0275contentQuery(be,ii,5),2&Ae){let ge;o.\u0275\u0275queryRefresh(ge=o.\u0275\u0275loadQuery())&&(W._items=ge)}},viewQuery:function(Ae,W){if(1&Ae&&(o.\u0275\u0275viewQuery(mi,7),o.\u0275\u0275viewQuery(di,7),o.\u0275\u0275viewQuery(Li,7),o.\u0275\u0275viewQuery(Qi,7),o.\u0275\u0275viewQuery(wt,5),o.\u0275\u0275viewQuery(mt,5)),2&Ae){let be;o.\u0275\u0275queryRefresh(be=o.\u0275\u0275loadQuery())&&(W._inkBar=be.first),o.\u0275\u0275queryRefresh(be=o.\u0275\u0275loadQuery())&&(W._tabListContainer=be.first),o.\u0275\u0275queryRefresh(be=o.\u0275\u0275loadQuery())&&(W._tabList=be.first),o.\u0275\u0275queryRefresh(be=o.\u0275\u0275loadQuery())&&(W._tabListInner=be.first),o.\u0275\u0275queryRefresh(be=o.\u0275\u0275loadQuery())&&(W._nextPaginator=be.first),o.\u0275\u0275queryRefresh(be=o.\u0275\u0275loadQuery())&&(W._previousPaginator=be.first)}},hostAttrs:[1,"mat-tab-nav-bar","mat-tab-header"],hostVars:11,hostBindings:function(Ae,W){2&Ae&&(o.\u0275\u0275attribute("role",W._getRole()),o.\u0275\u0275classProp("mat-tab-header-pagination-controls-enabled",W._showPaginationControls)("mat-tab-header-rtl","rtl"==W._getLayoutDirection())("mat-primary","warn"!==W.color&&"accent"!==W.color)("mat-accent","accent"===W.color)("mat-warn","warn"===W.color))},inputs:{color:"color"},exportAs:["matTabNavBar","matTabNav"],features:[o.\u0275\u0275InheritDefinitionFeature],attrs:Zn,ngContentSelectors:Tn,decls:14,vars:10,consts:[["aria-hidden","true","type","button","mat-ripple","","tabindex","-1",1,"mat-tab-header-pagination","mat-tab-header-pagination-before","mat-elevation-z4",3,"matRippleDisabled","disabled","click","mousedown","touchend"],["previousPaginator",""],[1,"mat-tab-header-pagination-chevron"],[1,"mat-tab-link-container",3,"keydown"],["tabListContainer",""],[1,"mat-tab-list",3,"cdkObserveContent"],["tabList",""],[1,"mat-tab-links"],["tabListInner",""],["aria-hidden","true","type","button","mat-ripple","","tabindex","-1",1,"mat-tab-header-pagination","mat-tab-header-pagination-after","mat-elevation-z4",3,"matRippleDisabled","disabled","mousedown","click","touchend"],["nextPaginator",""]],template:function(Ae,W){1&Ae&&(o.\u0275\u0275projectionDef(),o.\u0275\u0275elementStart(0,"button",0,1),o.\u0275\u0275listener("click",function(){return W._handlePaginatorClick("before")})("mousedown",function(ge){return W._handlePaginatorPress("before",ge)})("touchend",function(){return W._stopInterval()}),o.\u0275\u0275element(2,"div",2),o.\u0275\u0275elementEnd(),o.\u0275\u0275elementStart(3,"div",3,4),o.\u0275\u0275listener("keydown",function(ge){return W._handleKeydown(ge)}),o.\u0275\u0275elementStart(5,"div",5,6),o.\u0275\u0275listener("cdkObserveContent",function(){return W._onContentChanges()}),o.\u0275\u0275elementStart(7,"div",7,8),o.\u0275\u0275projection(9),o.\u0275\u0275elementEnd(),o.\u0275\u0275element(10,"mat-ink-bar"),o.\u0275\u0275elementEnd()(),o.\u0275\u0275elementStart(11,"button",9,10),o.\u0275\u0275listener("mousedown",function(ge){return W._handlePaginatorPress("after",ge)})("click",function(){return W._handlePaginatorClick("after")})("touchend",function(){return W._stopInterval()}),o.\u0275\u0275element(13,"div",2),o.\u0275\u0275elementEnd()),2&Ae&&(o.\u0275\u0275classProp("mat-tab-header-pagination-disabled",W._disableScrollBefore),o.\u0275\u0275property("matRippleDisabled",W._disableScrollBefore||W.disableRipple)("disabled",W._disableScrollBefore||null),o.\u0275\u0275advance(5),o.\u0275\u0275classProp("_mat-animation-noopable","NoopAnimations"===W._animationMode),o.\u0275\u0275advance(6),o.\u0275\u0275classProp("mat-tab-header-pagination-disabled",W._disableScrollAfter),o.\u0275\u0275property("matRippleDisabled",W._disableScrollAfter||W.disableRipple)("disabled",W._disableScrollAfter||null))},dependencies:[v.MatRipple,p.wD,mi],styles:[".mat-tab-header{display:flex;overflow:hidden;position:relative;flex-shrink:0}.mat-tab-header-pagination{-webkit-user-select:none;user-select:none;position:relative;display:none;justify-content:center;align-items:center;min-width:32px;cursor:pointer;z-index:2;-webkit-tap-highlight-color:rgba(0,0,0,0);touch-action:none;box-sizing:content-box;background:none;border:none;outline:0;padding:0}.mat-tab-header-pagination::-moz-focus-inner{border:0}.mat-tab-header-pagination-controls-enabled .mat-tab-header-pagination{display:flex}.mat-tab-header-pagination-before,.mat-tab-header-rtl .mat-tab-header-pagination-after{padding-left:4px}.mat-tab-header-pagination-before .mat-tab-header-pagination-chevron,.mat-tab-header-rtl .mat-tab-header-pagination-after .mat-tab-header-pagination-chevron{transform:rotate(-135deg)}.mat-tab-header-rtl .mat-tab-header-pagination-before,.mat-tab-header-pagination-after{padding-right:4px}.mat-tab-header-rtl .mat-tab-header-pagination-before .mat-tab-header-pagination-chevron,.mat-tab-header-pagination-after .mat-tab-header-pagination-chevron{transform:rotate(45deg)}.mat-tab-header-pagination-chevron{border-style:solid;border-width:2px 2px 0 0;height:8px;width:8px}.mat-tab-header-pagination-disabled{box-shadow:none;cursor:default}.mat-tab-list{flex-grow:1;position:relative;transition:transform 500ms cubic-bezier(0.35, 0, 0.25, 1)}.mat-tab-links{display:flex}[mat-align-tabs=center]>.mat-tab-link-container .mat-tab-links{justify-content:center}[mat-align-tabs=end]>.mat-tab-link-container .mat-tab-links{justify-content:flex-end}.mat-ink-bar{position:absolute;bottom:0;height:2px;transition:500ms cubic-bezier(0.35, 0, 0.25, 1)}.mat-ink-bar._mat-animation-noopable{transition:none !important;animation:none !important}.mat-tab-group-inverted-header .mat-ink-bar{bottom:auto;top:0}.cdk-high-contrast-active .mat-ink-bar{outline:solid 2px;height:0}.mat-tab-link-container{display:flex;flex-grow:1;overflow:hidden;z-index:1}.mat-tab-link{height:48px;padding:0 24px;cursor:pointer;box-sizing:border-box;opacity:.6;min-width:160px;text-align:center;display:inline-flex;justify-content:center;align-items:center;white-space:nowrap;vertical-align:top;text-decoration:none;position:relative;overflow:hidden;-webkit-tap-highlight-color:rgba(0,0,0,0)}.mat-tab-link:focus{outline:none}.mat-tab-link:focus:not(.mat-tab-disabled){opacity:1}.mat-tab-link.mat-tab-disabled{cursor:default}.cdk-high-contrast-active .mat-tab-link.mat-tab-disabled{opacity:.5}.mat-tab-link .mat-tab-label-content{display:inline-flex;justify-content:center;align-items:center;white-space:nowrap}.cdk-high-contrast-active .mat-tab-link{opacity:1}[mat-stretch-tabs] .mat-tab-link{flex-basis:0;flex-grow:1}.mat-tab-link.mat-tab-disabled{pointer-events:none}.mat-tab-link::before{margin:5px}@media(max-width: 599px){.mat-tab-link{min-width:72px}}"],encapsulation:2}),Ct})(),ii=(()=>{class Ct extends Ye{constructor(Ae,W,be,ge,Ge,It,zt,an){super(Ae,W,Ge,It,zt,an),this._tabLinkRipple=new v.RippleRenderer(this,be,W,ge),this._tabLinkRipple.setupTriggerEvents(W.nativeElement)}ngOnDestroy(){super.ngOnDestroy(),this._tabLinkRipple._removeTriggerEvents()}}return Ct.\u0275fac=function(Ae){return new(Ae||Ct)(o.\u0275\u0275directiveInject(si),o.\u0275\u0275directiveInject(o.ElementRef),o.\u0275\u0275directiveInject(o.NgZone),o.\u0275\u0275directiveInject(R.t4),o.\u0275\u0275directiveInject(v.MAT_RIPPLE_GLOBAL_OPTIONS,8),o.\u0275\u0275injectAttribute("tabindex"),o.\u0275\u0275directiveInject(n.tE),o.\u0275\u0275directiveInject(o.ANIMATION_MODULE_TYPE,8))},Ct.\u0275dir=o.\u0275\u0275defineDirective({type:Ct,selectors:[["","mat-tab-link",""],["","matTabLink",""]],hostAttrs:[1,"mat-tab-link","mat-focus-indicator"],hostVars:11,hostBindings:function(Ae,W){1&Ae&&o.\u0275\u0275listener("focus",function(){return W._handleFocus()})("keydown",function(ge){return W._handleKeydown(ge)}),2&Ae&&(o.\u0275\u0275attribute("aria-controls",W._getAriaControls())("aria-current",W._getAriaCurrent())("aria-disabled",W.disabled)("aria-selected",W._getAriaSelected())("id",W.id)("tabIndex",W._getTabIndex())("role",W._getRole()),o.\u0275\u0275classProp("mat-tab-disabled",W.disabled)("mat-tab-label-active",W.active))},inputs:{disabled:"disabled",disableRipple:"disableRipple",tabIndex:"tabIndex"},exportAs:["matTabLink"],features:[o.\u0275\u0275InheritDefinitionFeature]}),Ct})(),Ii=(()=>{class Ct{constructor(){this.id="mat-tab-nav-panel-"+Yn++}}return Ct.\u0275fac=function(Ae){return new(Ae||Ct)},Ct.\u0275cmp=o.\u0275\u0275defineComponent({type:Ct,selectors:[["mat-tab-nav-panel"]],hostAttrs:["role","tabpanel",1,"mat-tab-nav-panel"],hostVars:2,hostBindings:function(Ae,W){2&Ae&&o.\u0275\u0275attribute("aria-labelledby",W._activeTabId)("id",W.id)},inputs:{id:"id"},exportAs:["matTabNavPanel"],ngContentSelectors:Tn,decls:1,vars:0,template:function(Ae,W){1&Ae&&(o.\u0275\u0275projectionDef(),o.\u0275\u0275projection(0))},encapsulation:2,changeDetection:0}),Ct})(),oi=(()=>{class Ct extends J{}return Ct.\u0275fac=function(){let Ft;return function(W){return(Ft||(Ft=o.\u0275\u0275getInheritedFactory(Ct)))(W||Ct)}}(),Ct.\u0275dir=o.\u0275\u0275defineDirective({type:Ct,selectors:[["","mat-tab-label",""],["","matTabLabel",""]],features:[o.\u0275\u0275ProvidersFeature([{provide:vt,useExisting:Ct}]),o.\u0275\u0275InheritDefinitionFeature]}),Ct})(),li=(()=>{class Ct extends ot{}return Ct.\u0275fac=function(){let Ft;return function(W){return(Ft||(Ft=o.\u0275\u0275getInheritedFactory(Ct)))(W||Ct)}}(),Ct.\u0275dir=o.\u0275\u0275defineDirective({type:Ct,selectors:[["","matTabContent",""]],features:[o.\u0275\u0275ProvidersFeature([{provide:nt,useExisting:Ct}]),o.\u0275\u0275InheritDefinitionFeature]}),Ct})(),Pi=(()=>{class Ct{}return Ct.\u0275fac=function(Ae){return new(Ae||Ct)},Ct.\u0275mod=o.\u0275\u0275defineNgModule({type:Ct}),Ct.\u0275inj=o.\u0275\u0275defineInjector({imports:[b.CommonModule,v.MatCommonModule,C.eL,v.MatRippleModule,p.Q8,n.rt,v.MatCommonModule]}),Ct})()},1274:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{MatToolbar:()=>s,MatToolbarModule:()=>d,MatToolbarRow:()=>c,throwToolbarMixedModesError:()=>l});var n=g(5879),p=g(3680),C=g(2831),b=g(6814);const o=["*",[["mat-toolbar-row"]]],v=["*","mat-toolbar-row"],a=(0,p.mixinColor)(class{constructor(r){this._elementRef=r}});let c=(()=>{class r{}return r.\u0275fac=function(h){return new(h||r)},r.\u0275dir=n.\u0275\u0275defineDirective({type:r,selectors:[["mat-toolbar-row"]],hostAttrs:[1,"mat-toolbar-row"],exportAs:["matToolbarRow"]}),r})(),s=(()=>{class r extends a{constructor(h,m,_){super(h),this._platform=m,this._document=_}ngAfterViewInit(){this._platform.isBrowser&&(this._checkToolbarMixedModes(),this._toolbarRows.changes.subscribe(()=>this._checkToolbarMixedModes()))}_checkToolbarMixedModes(){}}return r.\u0275fac=function(h){return new(h||r)(n.\u0275\u0275directiveInject(n.ElementRef),n.\u0275\u0275directiveInject(C.t4),n.\u0275\u0275directiveInject(b.DOCUMENT))},r.\u0275cmp=n.\u0275\u0275defineComponent({type:r,selectors:[["mat-toolbar"]],contentQueries:function(h,m,_){if(1&h&&n.\u0275\u0275contentQuery(_,c,5),2&h){let M;n.\u0275\u0275queryRefresh(M=n.\u0275\u0275loadQuery())&&(m._toolbarRows=M)}},hostAttrs:[1,"mat-toolbar"],hostVars:4,hostBindings:function(h,m){2&h&&n.\u0275\u0275classProp("mat-toolbar-multiple-rows",m._toolbarRows.length>0)("mat-toolbar-single-row",0===m._toolbarRows.length)},inputs:{color:"color"},exportAs:["matToolbar"],features:[n.\u0275\u0275InheritDefinitionFeature],ngContentSelectors:v,decls:2,vars:0,template:function(h,m){1&h&&(n.\u0275\u0275projectionDef(o),n.\u0275\u0275projection(0),n.\u0275\u0275projection(1,1))},styles:[".mat-toolbar{background:var(--mat-toolbar-container-background-color);color:var(--mat-toolbar-container-text-color)}.mat-toolbar,.mat-toolbar h1,.mat-toolbar h2,.mat-toolbar h3,.mat-toolbar h4,.mat-toolbar h5,.mat-toolbar h6{font-family:var(--mat-toolbar-title-text-font);font-size:var(--mat-toolbar-title-text-size);line-height:var(--mat-toolbar-title-text-line-height);font-weight:var(--mat-toolbar-title-text-weight);letter-spacing:var(--mat-toolbar-title-text-tracking);margin:0}.cdk-high-contrast-active .mat-toolbar{outline:solid 1px}.mat-toolbar .mat-form-field-underline,.mat-toolbar .mat-form-field-ripple,.mat-toolbar .mat-focused .mat-form-field-ripple{background-color:currentColor}.mat-toolbar .mat-form-field-label,.mat-toolbar .mat-focused .mat-form-field-label,.mat-toolbar .mat-select-value,.mat-toolbar .mat-select-arrow,.mat-toolbar .mat-form-field.mat-focused .mat-select-arrow{color:inherit}.mat-toolbar .mat-input-element{caret-color:currentColor}.mat-toolbar .mat-mdc-button-base.mat-unthemed{--mdc-text-button-label-text-color: inherit;--mdc-outlined-button-label-text-color: inherit}.mat-toolbar-row,.mat-toolbar-single-row{display:flex;box-sizing:border-box;padding:0 16px;width:100%;flex-direction:row;align-items:center;white-space:nowrap;height:var(--mat-toolbar-standard-height)}@media(max-width: 599px){.mat-toolbar-row,.mat-toolbar-single-row{height:var(--mat-toolbar-mobile-height)}}.mat-toolbar-multiple-rows{display:flex;box-sizing:border-box;flex-direction:column;width:100%;min-height:var(--mat-toolbar-standard-height)}@media(max-width: 599px){.mat-toolbar-multiple-rows{min-height:var(--mat-toolbar-mobile-height)}}"],encapsulation:2,changeDetection:0}),r})();function l(){throw Error("MatToolbar: Attempting to combine different toolbar modes. Either specify multiple `` elements explicitly or just place content inside of a `` for a single row.")}let d=(()=>{class r{}return r.\u0275fac=function(h){return new(h||r)},r.\u0275mod=n.\u0275\u0275defineNgModule({type:r}),r.\u0275inj=n.\u0275\u0275defineInjector({imports:[p.MatCommonModule,p.MatCommonModule]}),r})()},6593:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{BrowserModule:()=>ot,By:()=>ze,DomSanitizer:()=>we,EVENT_MANAGER_PLUGINS:()=>r,EventManager:()=>u,HAMMER_GESTURE_CONFIG:()=>$t,HAMMER_LOADER:()=>Yt,HammerGestureConfig:()=>Ue,HammerModule:()=>ve,Meta:()=>rt,REMOVE_STYLES_ON_COMPONENT_DESTROY:()=>O,Title:()=>ee,TransferState:()=>Rt,VERSION:()=>Ee,bootstrapApplication:()=>Me,createApplication:()=>Oe,disableDebugTools:()=>Kt,enableDebugTools:()=>Dt,makeStateKey:()=>it,platformBrowser:()=>St,provideClientHydration:()=>ce,provideProtractorTestingSupport:()=>Be,withNoDomReuse:()=>ke,withNoHttpTransferCache:()=>Z,\u0275BrowserDomAdapter:()=>o,\u0275BrowserGetTestability:()=>l,\u0275DomEventsPlugin:()=>me,\u0275DomRendererFactory2:()=>j,\u0275DomSanitizerImpl:()=>De,\u0275HammerGesturesPlugin:()=>We,\u0275INTERNAL_BROWSER_PLATFORM_PROVIDERS:()=>tt,\u0275KeyEventsPlugin:()=>ue,\u0275SharedStylesHost:()=>_,\u0275getDOM:()=>p.\u0275getDOM,\u0275initDomAdapter:()=>$e});var n=g(5879),p=g(6814),C=g(9862);class b extends p.\u0275DomAdapter{constructor(){super(...arguments),this.supportsDOMEvents=!0}}class o extends b{static makeCurrent(){(0,p.\u0275setRootDomAdapter)(new o)}onAndCancel(qe,Ne,dt){return qe.addEventListener(Ne,dt),()=>{qe.removeEventListener(Ne,dt)}}dispatchEvent(qe,Ne){qe.dispatchEvent(Ne)}remove(qe){qe.parentNode&&qe.parentNode.removeChild(qe)}createElement(qe,Ne){return(Ne=Ne||this.getDefaultDocument()).createElement(qe)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(qe){return qe.nodeType===Node.ELEMENT_NODE}isShadowRoot(qe){return qe instanceof DocumentFragment}getGlobalEventTarget(qe,Ne){return"window"===Ne?window:"document"===Ne?qe:"body"===Ne?qe.body:null}getBaseHref(qe){const Ne=function a(){return v=v||document.querySelector("base"),v?v.getAttribute("href"):null}();return null==Ne?null:function s(Ye){c=c||document.createElement("a"),c.setAttribute("href",Ye);const qe=c.pathname;return"/"===qe.charAt(0)?qe:`/${qe}`}(Ne)}resetBaseElement(){v=null}getUserAgent(){return window.navigator.userAgent}getCookie(qe){return(0,p.\u0275parseCookieValue)(document.cookie,qe)}}let c,v=null;class l{addToWindow(qe){n.\u0275global.getAngularTestability=(dt,At=!0)=>{const tn=qe.findTestabilityInTree(dt,At);if(null==tn)throw new n.\u0275RuntimeError(5103,!1);return tn},n.\u0275global.getAllAngularTestabilities=()=>qe.getAllTestabilities(),n.\u0275global.getAllAngularRootElements=()=>qe.getAllRootElements(),n.\u0275global.frameworkStabilizers||(n.\u0275global.frameworkStabilizers=[]),n.\u0275global.frameworkStabilizers.push(dt=>{const At=n.\u0275global.getAllAngularTestabilities();let tn=At.length,wn=!1;const Tn=function(Sn){wn=wn||Sn,tn--,0==tn&&dt(wn)};At.forEach(Sn=>{Sn.whenStable(Tn)})})}findTestabilityInTree(qe,Ne,dt){return null==Ne?null:qe.getTestability(Ne)??(dt?(0,p.\u0275getDOM)().isShadowRoot(Ne)?this.findTestabilityInTree(qe,Ne.host,!0):this.findTestabilityInTree(qe,Ne.parentElement,!0):null)}}let d=(()=>{class Ye{build(){return new XMLHttpRequest}}return Ye.\u0275fac=function(Ne){return new(Ne||Ye)},Ye.\u0275prov=n.\u0275\u0275defineInjectable({token:Ye,factory:Ye.\u0275fac}),Ye})();const r=new n.InjectionToken("EventManagerPlugins");let u=(()=>{class Ye{constructor(Ne,dt){this._zone=dt,this._eventNameToPlugin=new Map,Ne.forEach(At=>{At.manager=this}),this._plugins=Ne.slice().reverse()}addEventListener(Ne,dt,At){return this._findPluginFor(dt).addEventListener(Ne,dt,At)}getZone(){return this._zone}_findPluginFor(Ne){let dt=this._eventNameToPlugin.get(Ne);if(dt)return dt;if(dt=this._plugins.find(tn=>tn.supports(Ne)),!dt)throw new n.\u0275RuntimeError(5101,!1);return this._eventNameToPlugin.set(Ne,dt),dt}}return Ye.\u0275fac=function(Ne){return new(Ne||Ye)(n.\u0275\u0275inject(r),n.\u0275\u0275inject(n.NgZone))},Ye.\u0275prov=n.\u0275\u0275defineInjectable({token:Ye,factory:Ye.\u0275fac}),Ye})();class h{constructor(qe){this._doc=qe}}const m="ng-app-id";let _=(()=>{class Ye{constructor(Ne,dt,At,tn={}){this.doc=Ne,this.appId=dt,this.nonce=At,this.platformId=tn,this.styleRef=new Map,this.hostNodes=new Set,this.styleNodesInDOM=this.collectServerRenderedStyles(),this.platformIsServer=(0,p.isPlatformServer)(tn),this.resetHostNodes()}addStyles(Ne){for(const dt of Ne)1===this.changeUsageCount(dt,1)&&this.onStyleAdded(dt)}removeStyles(Ne){for(const dt of Ne)this.changeUsageCount(dt,-1)<=0&&this.onStyleRemoved(dt)}ngOnDestroy(){const Ne=this.styleNodesInDOM;Ne&&(Ne.forEach(dt=>dt.remove()),Ne.clear());for(const dt of this.getAllStyles())this.onStyleRemoved(dt);this.resetHostNodes()}addHost(Ne){this.hostNodes.add(Ne);for(const dt of this.getAllStyles())this.addStyleToHost(Ne,dt)}removeHost(Ne){this.hostNodes.delete(Ne)}getAllStyles(){return this.styleRef.keys()}onStyleAdded(Ne){for(const dt of this.hostNodes)this.addStyleToHost(dt,Ne)}onStyleRemoved(Ne){const dt=this.styleRef;dt.get(Ne)?.elements?.forEach(At=>At.remove()),dt.delete(Ne)}collectServerRenderedStyles(){const Ne=this.doc.head?.querySelectorAll(`style[${m}="${this.appId}"]`);if(Ne?.length){const dt=new Map;return Ne.forEach(At=>{null!=At.textContent&&dt.set(At.textContent,At)}),dt}return null}changeUsageCount(Ne,dt){const At=this.styleRef;if(At.has(Ne)){const tn=At.get(Ne);return tn.usage+=dt,tn.usage}return At.set(Ne,{usage:dt,elements:[]}),dt}getStyleElement(Ne,dt){const At=this.styleNodesInDOM,tn=At?.get(dt);if(tn?.parentNode===Ne)return At.delete(dt),tn.removeAttribute(m),tn;{const wn=this.doc.createElement("style");return this.nonce&&wn.setAttribute("nonce",this.nonce),wn.textContent=dt,this.platformIsServer&&wn.setAttribute(m,this.appId),wn}}addStyleToHost(Ne,dt){const At=this.getStyleElement(Ne,dt);Ne.appendChild(At);const tn=this.styleRef,wn=tn.get(dt)?.elements;wn?wn.push(At):tn.set(dt,{elements:[At],usage:1})}resetHostNodes(){const Ne=this.hostNodes;Ne.clear(),Ne.add(this.doc.head)}}return Ye.\u0275fac=function(Ne){return new(Ne||Ye)(n.\u0275\u0275inject(p.DOCUMENT),n.\u0275\u0275inject(n.APP_ID),n.\u0275\u0275inject(n.CSP_NONCE,8),n.\u0275\u0275inject(n.PLATFORM_ID))},Ye.\u0275prov=n.\u0275\u0275defineInjectable({token:Ye,factory:Ye.\u0275fac}),Ye})();const M={svg:"http://www.w3.org/2000/svg",xhtml:"http://www.w3.org/1999/xhtml",xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/",math:"http://www.w3.org/1998/MathML/"},x=/%COMP%/g,w="%COMP%",L=`_nghost-${w}`,A=`_ngcontent-${w}`,O=new n.InjectionToken("RemoveStylesOnCompDestroy",{providedIn:"root",factory:()=>!1});function R(Ye,qe){return qe.map(Ne=>Ne.replace(x,Ye))}let j=(()=>{class Ye{constructor(Ne,dt,At,tn,wn,Tn,Sn,Mn=null){this.eventManager=Ne,this.sharedStylesHost=dt,this.appId=At,this.removeStylesOnCompDestroy=tn,this.doc=wn,this.platformId=Tn,this.ngZone=Sn,this.nonce=Mn,this.rendererByCompId=new Map,this.platformIsServer=(0,p.isPlatformServer)(Tn),this.defaultRenderer=new N(Ne,wn,Sn,this.platformIsServer)}createRenderer(Ne,dt){if(!Ne||!dt)return this.defaultRenderer;this.platformIsServer&&dt.encapsulation===n.ViewEncapsulation.ShadowDom&&(dt={...dt,encapsulation:n.ViewEncapsulation.Emulated});const At=this.getOrCreateRenderer(Ne,dt);return At instanceof ne?At.applyToHost(Ne):At instanceof se&&At.applyStyles(),At}getOrCreateRenderer(Ne,dt){const At=this.rendererByCompId;let tn=At.get(dt.id);if(!tn){const wn=this.doc,Tn=this.ngZone,Sn=this.eventManager,Mn=this.sharedStylesHost,Ci=this.removeStylesOnCompDestroy,di=this.platformIsServer;switch(dt.encapsulation){case n.ViewEncapsulation.Emulated:tn=new ne(Sn,Mn,dt,this.appId,Ci,wn,Tn,di);break;case n.ViewEncapsulation.ShadowDom:return new Y(Sn,Mn,Ne,dt,wn,Tn,this.nonce,di);default:tn=new se(Sn,Mn,dt,Ci,wn,Tn,di)}At.set(dt.id,tn)}return tn}ngOnDestroy(){this.rendererByCompId.clear()}}return Ye.\u0275fac=function(Ne){return new(Ne||Ye)(n.\u0275\u0275inject(u),n.\u0275\u0275inject(_),n.\u0275\u0275inject(n.APP_ID),n.\u0275\u0275inject(O),n.\u0275\u0275inject(p.DOCUMENT),n.\u0275\u0275inject(n.PLATFORM_ID),n.\u0275\u0275inject(n.NgZone),n.\u0275\u0275inject(n.CSP_NONCE))},Ye.\u0275prov=n.\u0275\u0275defineInjectable({token:Ye,factory:Ye.\u0275fac}),Ye})();class N{constructor(qe,Ne,dt,At){this.eventManager=qe,this.doc=Ne,this.ngZone=dt,this.platformIsServer=At,this.data=Object.create(null),this.destroyNode=null}destroy(){}createElement(qe,Ne){return Ne?this.doc.createElementNS(M[Ne]||Ne,qe):this.doc.createElement(qe)}createComment(qe){return this.doc.createComment(qe)}createText(qe){return this.doc.createTextNode(qe)}appendChild(qe,Ne){(F(qe)?qe.content:qe).appendChild(Ne)}insertBefore(qe,Ne,dt){qe&&(F(qe)?qe.content:qe).insertBefore(Ne,dt)}removeChild(qe,Ne){qe&&qe.removeChild(Ne)}selectRootElement(qe,Ne){let dt="string"==typeof qe?this.doc.querySelector(qe):qe;if(!dt)throw new n.\u0275RuntimeError(-5104,!1);return Ne||(dt.textContent=""),dt}parentNode(qe){return qe.parentNode}nextSibling(qe){return qe.nextSibling}setAttribute(qe,Ne,dt,At){if(At){Ne=At+":"+Ne;const tn=M[At];tn?qe.setAttributeNS(tn,Ne,dt):qe.setAttribute(Ne,dt)}else qe.setAttribute(Ne,dt)}removeAttribute(qe,Ne,dt){if(dt){const At=M[dt];At?qe.removeAttributeNS(At,Ne):qe.removeAttribute(`${dt}:${Ne}`)}else qe.removeAttribute(Ne)}addClass(qe,Ne){qe.classList.add(Ne)}removeClass(qe,Ne){qe.classList.remove(Ne)}setStyle(qe,Ne,dt,At){At&(n.RendererStyleFlags2.DashCase|n.RendererStyleFlags2.Important)?qe.style.setProperty(Ne,dt,At&n.RendererStyleFlags2.Important?"important":""):qe.style[Ne]=dt}removeStyle(qe,Ne,dt){dt&n.RendererStyleFlags2.DashCase?qe.style.removeProperty(Ne):qe.style[Ne]=""}setProperty(qe,Ne,dt){qe[Ne]=dt}setValue(qe,Ne){qe.nodeValue=Ne}listen(qe,Ne,dt){if("string"==typeof qe&&!(qe=(0,p.\u0275getDOM)().getGlobalEventTarget(this.doc,qe)))throw new Error(`Unsupported event target ${qe} for event ${Ne}`);return this.eventManager.addEventListener(qe,Ne,this.decoratePreventDefault(dt))}decoratePreventDefault(qe){return Ne=>{if("__ngUnwrap__"===Ne)return qe;!1===(this.platformIsServer?this.ngZone.runGuarded(()=>qe(Ne)):qe(Ne))&&Ne.preventDefault()}}}function F(Ye){return"TEMPLATE"===Ye.tagName&&void 0!==Ye.content}class Y extends N{constructor(qe,Ne,dt,At,tn,wn,Tn,Sn){super(qe,tn,wn,Sn),this.sharedStylesHost=Ne,this.hostEl=dt,this.shadowRoot=dt.attachShadow({mode:"open"}),this.sharedStylesHost.addHost(this.shadowRoot);const Mn=R(At.id,At.styles);for(const Ci of Mn){const di=document.createElement("style");Tn&&di.setAttribute("nonce",Tn),di.textContent=Ci,this.shadowRoot.appendChild(di)}}nodeOrShadowRoot(qe){return qe===this.hostEl?this.shadowRoot:qe}appendChild(qe,Ne){return super.appendChild(this.nodeOrShadowRoot(qe),Ne)}insertBefore(qe,Ne,dt){return super.insertBefore(this.nodeOrShadowRoot(qe),Ne,dt)}removeChild(qe,Ne){return super.removeChild(this.nodeOrShadowRoot(qe),Ne)}parentNode(qe){return this.nodeOrShadowRoot(super.parentNode(this.nodeOrShadowRoot(qe)))}destroy(){this.sharedStylesHost.removeHost(this.shadowRoot)}}class se extends N{constructor(qe,Ne,dt,At,tn,wn,Tn,Sn){super(qe,tn,wn,Tn),this.sharedStylesHost=Ne,this.removeStylesOnCompDestroy=At,this.styles=Sn?R(Sn,dt.styles):dt.styles}applyStyles(){this.sharedStylesHost.addStyles(this.styles)}destroy(){this.removeStylesOnCompDestroy&&this.sharedStylesHost.removeStyles(this.styles)}}class ne extends se{constructor(qe,Ne,dt,At,tn,wn,Tn,Sn){const Mn=At+"-"+dt.id;super(qe,Ne,dt,tn,wn,Tn,Sn,Mn),this.contentAttr=function E(Ye){return A.replace(x,Ye)}(Mn),this.hostAttr=function D(Ye){return L.replace(x,Ye)}(Mn)}applyToHost(qe){this.applyStyles(),this.setAttribute(qe,this.hostAttr,"")}createElement(qe,Ne){const dt=super.createElement(qe,Ne);return super.setAttribute(dt,this.contentAttr,""),dt}}let me=(()=>{class Ye extends h{constructor(Ne){super(Ne)}supports(Ne){return!0}addEventListener(Ne,dt,At){return Ne.addEventListener(dt,At,!1),()=>this.removeEventListener(Ne,dt,At)}removeEventListener(Ne,dt,At){return Ne.removeEventListener(dt,At)}}return Ye.\u0275fac=function(Ne){return new(Ne||Ye)(n.\u0275\u0275inject(p.DOCUMENT))},Ye.\u0275prov=n.\u0275\u0275defineInjectable({token:Ye,factory:Ye.\u0275fac}),Ye})();const $=["alt","control","meta","shift"],q={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},Q={alt:Ye=>Ye.altKey,control:Ye=>Ye.ctrlKey,meta:Ye=>Ye.metaKey,shift:Ye=>Ye.shiftKey};let ue=(()=>{class Ye extends h{constructor(Ne){super(Ne)}supports(Ne){return null!=Ye.parseEventName(Ne)}addEventListener(Ne,dt,At){const tn=Ye.parseEventName(dt),wn=Ye.eventCallback(tn.fullKey,At,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>(0,p.\u0275getDOM)().onAndCancel(Ne,tn.domEventName,wn))}static parseEventName(Ne){const dt=Ne.toLowerCase().split("."),At=dt.shift();if(0===dt.length||"keydown"!==At&&"keyup"!==At)return null;const tn=Ye._normalizeKey(dt.pop());let wn="",Tn=dt.indexOf("code");if(Tn>-1&&(dt.splice(Tn,1),wn="code."),$.forEach(Mn=>{const Ci=dt.indexOf(Mn);Ci>-1&&(dt.splice(Ci,1),wn+=Mn+".")}),wn+=tn,0!=dt.length||0===tn.length)return null;const Sn={};return Sn.domEventName=At,Sn.fullKey=wn,Sn}static matchEventFullKeyCode(Ne,dt){let At=q[Ne.key]||Ne.key,tn="";return dt.indexOf("code.")>-1&&(At=Ne.code,tn="code."),!(null==At||!At)&&(At=At.toLowerCase()," "===At?At="space":"."===At&&(At="dot"),$.forEach(wn=>{wn!==At&&(0,Q[wn])(Ne)&&(tn+=wn+".")}),tn+=At,tn===dt)}static eventCallback(Ne,dt,At){return tn=>{Ye.matchEventFullKeyCode(tn,Ne)&&At.runGuarded(()=>dt(tn))}}static _normalizeKey(Ne){return"esc"===Ne?"escape":Ne}}return Ye.\u0275fac=function(Ne){return new(Ne||Ye)(n.\u0275\u0275inject(p.DOCUMENT))},Ye.\u0275prov=n.\u0275\u0275defineInjectable({token:Ye,factory:Ye.\u0275fac}),Ye})();function Me(Ye,qe){return(0,n.\u0275internalCreateApplication)({rootComponent:Ye,...Xe(qe)})}function Oe(Ye){return(0,n.\u0275internalCreateApplication)(Xe(Ye))}function Xe(Ye){return{appProviders:[...nt,...Ye?.providers??[]],platformProviders:tt}}function Be(){return[...xt]}function $e(){o.makeCurrent()}const tt=[{provide:n.PLATFORM_ID,useValue:p.\u0275PLATFORM_BROWSER_ID},{provide:n.PLATFORM_INITIALIZER,useValue:$e,multi:!0},{provide:p.DOCUMENT,useFactory:function Mt(){return(0,n.\u0275setDocument)(document),document},deps:[]}],St=(0,n.createPlatformFactory)(n.platformCore,"browser",tt),bt=new n.InjectionToken(""),xt=[{provide:n.\u0275TESTABILITY_GETTER,useClass:l,deps:[]},{provide:n.\u0275TESTABILITY,useClass:n.Testability,deps:[n.NgZone,n.TestabilityRegistry,n.\u0275TESTABILITY_GETTER]},{provide:n.Testability,useClass:n.Testability,deps:[n.NgZone,n.TestabilityRegistry,n.\u0275TESTABILITY_GETTER]}],nt=[{provide:n.\u0275INJECTOR_SCOPE,useValue:"root"},{provide:n.ErrorHandler,useFactory:function st(){return new n.ErrorHandler},deps:[]},{provide:r,useClass:me,multi:!0,deps:[p.DOCUMENT,n.NgZone,n.PLATFORM_ID]},{provide:r,useClass:ue,multi:!0,deps:[p.DOCUMENT]},j,_,u,{provide:n.RendererFactory2,useExisting:j},{provide:p.XhrFactory,useClass:d,deps:[]},[]];let ot=(()=>{class Ye{constructor(Ne){}static withServerTransition(Ne){return{ngModule:Ye,providers:[{provide:n.APP_ID,useValue:Ne.appId}]}}}return Ye.\u0275fac=function(Ne){return new(Ne||Ye)(n.\u0275\u0275inject(bt,12))},Ye.\u0275mod=n.\u0275\u0275defineNgModule({type:Ye}),Ye.\u0275inj=n.\u0275\u0275defineInjector({providers:[...nt,...xt],imports:[p.CommonModule,n.ApplicationModule]}),Ye})(),rt=(()=>{class Ye{constructor(Ne){this._doc=Ne,this._dom=(0,p.\u0275getDOM)()}addTag(Ne,dt=!1){return Ne?this._getOrCreateElement(Ne,dt):null}addTags(Ne,dt=!1){return Ne?Ne.reduce((At,tn)=>(tn&&At.push(this._getOrCreateElement(tn,dt)),At),[]):[]}getTag(Ne){return Ne&&this._doc.querySelector(`meta[${Ne}]`)||null}getTags(Ne){if(!Ne)return[];const dt=this._doc.querySelectorAll(`meta[${Ne}]`);return dt?[].slice.call(dt):[]}updateTag(Ne,dt){if(!Ne)return null;dt=dt||this._parseSelector(Ne);const At=this.getTag(dt);return At?this._setMetaElementAttributes(Ne,At):this._getOrCreateElement(Ne,!0)}removeTag(Ne){this.removeTagElement(this.getTag(Ne))}removeTagElement(Ne){Ne&&this._dom.remove(Ne)}_getOrCreateElement(Ne,dt=!1){if(!dt){const wn=this._parseSelector(Ne),Tn=this.getTags(wn).filter(Sn=>this._containsAttributes(Ne,Sn))[0];if(void 0!==Tn)return Tn}const At=this._dom.createElement("meta");return this._setMetaElementAttributes(Ne,At),this._doc.getElementsByTagName("head")[0].appendChild(At),At}_setMetaElementAttributes(Ne,dt){return Object.keys(Ne).forEach(At=>dt.setAttribute(this._getMetaKeyMap(At),Ne[At])),dt}_parseSelector(Ne){const dt=Ne.name?"name":"property";return`${dt}="${Ne[dt]}"`}_containsAttributes(Ne,dt){return Object.keys(Ne).every(At=>dt.getAttribute(this._getMetaKeyMap(At))===Ne[At])}_getMetaKeyMap(Ne){return J[Ne]||Ne}}return Ye.\u0275fac=function(Ne){return new(Ne||Ye)(n.\u0275\u0275inject(p.DOCUMENT))},Ye.\u0275prov=n.\u0275\u0275defineInjectable({token:Ye,factory:function(Ne){let dt=null;return dt=Ne?new Ne:function vt(){return new rt((0,n.\u0275\u0275inject)(p.DOCUMENT))}(),dt},providedIn:"root"}),Ye})();const J={httpEquiv:"http-equiv"};let ee=(()=>{class Ye{constructor(Ne){this._doc=Ne}getTitle(){return this._doc.title}setTitle(Ne){this._doc.title=Ne||""}}return Ye.\u0275fac=function(Ne){return new(Ne||Ye)(n.\u0275\u0275inject(p.DOCUMENT))},Ye.\u0275prov=n.\u0275\u0275defineInjectable({token:Ye,factory:function(Ne){let dt=null;return dt=Ne?new Ne:function Ce(){return new ee((0,n.\u0275\u0275inject)(p.DOCUMENT))}(),dt},providedIn:"root"}),Ye})();function ae(Ye,qe){(typeof COMPILED>"u"||!COMPILED)&&((n.\u0275global.ng=n.\u0275global.ng||{})[Ye]=qe)}const ie=typeof window<"u"&&window||{};class pe{constructor(qe,Ne){this.msPerTick=qe,this.numTicks=Ne}}class Te{constructor(qe){this.appRef=qe.injector.get(n.ApplicationRef)}timeChangeDetection(qe){const Ne=qe&&qe.record,dt="Change Detection",At=null!=ie.console.profile;Ne&&At&&ie.console.profile(dt);const tn=ct();let wn=0;for(;wn<5||ct()-tn<500;)this.appRef.tick(),wn++;const Tn=ct();Ne&&At&&ie.console.profileEnd(dt);const Sn=(Tn-tn)/wn;return ie.console.log(`ran ${wn} change detection cycles`),ie.console.log(`${Sn.toFixed(2)} ms per check`),new pe(Sn,wn)}}function ct(){return ie.performance&&ie.performance.now?ie.performance.now():(new Date).getTime()}const Lt="profiler";function Dt(Ye){return ae(Lt,new Te(Ye)),Ye}function Kt(){ae(Lt,null)}class ze{static all(){return()=>!0}static css(qe){return Ne=>null!=Ne.nativeElement&&function yt(Ye,qe){return!!(0,p.\u0275getDOM)().isElementNode(Ye)&&(Ye.matches&&Ye.matches(qe)||Ye.msMatchesSelector&&Ye.msMatchesSelector(qe)||Ye.webkitMatchesSelector&&Ye.webkitMatchesSelector(qe))}(Ne.nativeElement,qe)}static directive(qe){return Ne=>-1!==Ne.providerTokens.indexOf(qe)}}const Bt={pan:!0,panstart:!0,panmove:!0,panend:!0,pancancel:!0,panleft:!0,panright:!0,panup:!0,pandown:!0,pinch:!0,pinchstart:!0,pinchmove:!0,pinchend:!0,pinchcancel:!0,pinchin:!0,pinchout:!0,press:!0,pressup:!0,rotate:!0,rotatestart:!0,rotatemove:!0,rotateend:!0,rotatecancel:!0,swipe:!0,swipeleft:!0,swiperight:!0,swipeup:!0,swipedown:!0,tap:!0,doubletap:!0},$t=new n.InjectionToken("HammerGestureConfig"),Yt=new n.InjectionToken("HammerLoader");let Ue=(()=>{class Ye{constructor(){this.events=[],this.overrides={}}buildHammer(Ne){const dt=new Hammer(Ne,this.options);dt.get("pinch").set({enable:!0}),dt.get("rotate").set({enable:!0});for(const At in this.overrides)dt.get(At).set(this.overrides[At]);return dt}}return Ye.\u0275fac=function(Ne){return new(Ne||Ye)},Ye.\u0275prov=n.\u0275\u0275defineInjectable({token:Ye,factory:Ye.\u0275fac}),Ye})(),We=(()=>{class Ye extends h{constructor(Ne,dt,At,tn){super(Ne),this._config=dt,this.console=At,this.loader=tn,this._loaderPromise=null}supports(Ne){return!(!Bt.hasOwnProperty(Ne.toLowerCase())&&!this.isCustomEvent(Ne)||!window.Hammer&&!this.loader)}addEventListener(Ne,dt,At){const tn=this.manager.getZone();if(dt=dt.toLowerCase(),!window.Hammer&&this.loader){this._loaderPromise=this._loaderPromise||tn.runOutsideAngular(()=>this.loader());let wn=!1,Tn=()=>{wn=!0};return tn.runOutsideAngular(()=>this._loaderPromise.then(()=>{window.Hammer?wn||(Tn=this.addEventListener(Ne,dt,At)):Tn=()=>{}}).catch(()=>{Tn=()=>{}})),()=>{Tn()}}return tn.runOutsideAngular(()=>{const wn=this._config.buildHammer(Ne),Tn=function(Sn){tn.runGuarded(function(){At(Sn)})};return wn.on(dt,Tn),()=>{wn.off(dt,Tn),"function"==typeof wn.destroy&&wn.destroy()}})}isCustomEvent(Ne){return this._config.events.indexOf(Ne)>-1}}return Ye.\u0275fac=function(Ne){return new(Ne||Ye)(n.\u0275\u0275inject(p.DOCUMENT),n.\u0275\u0275inject($t),n.\u0275\u0275inject(n.\u0275Console),n.\u0275\u0275inject(Yt,8))},Ye.\u0275prov=n.\u0275\u0275defineInjectable({token:Ye,factory:Ye.\u0275fac}),Ye})(),ve=(()=>{class Ye{}return Ye.\u0275fac=function(Ne){return new(Ne||Ye)},Ye.\u0275mod=n.\u0275\u0275defineNgModule({type:Ye}),Ye.\u0275inj=n.\u0275\u0275defineInjector({providers:[{provide:r,useClass:We,multi:!0,deps:[p.DOCUMENT,$t,n.\u0275Console,[new n.Optional,Yt]]},{provide:$t,useClass:Ue,deps:[]}]}),Ye})(),we=(()=>{class Ye{}return Ye.\u0275fac=function(Ne){return new(Ne||Ye)},Ye.\u0275prov=n.\u0275\u0275defineInjectable({token:Ye,factory:function(Ne){let dt=null;return dt=Ne?new(Ne||Ye):n.\u0275\u0275inject(De),dt},providedIn:"root"}),Ye})(),De=(()=>{class Ye extends we{constructor(Ne){super(),this._doc=Ne}sanitize(Ne,dt){if(null==dt)return null;switch(Ne){case n.SecurityContext.NONE:return dt;case n.SecurityContext.HTML:return(0,n.\u0275allowSanitizationBypassAndThrow)(dt,"HTML")?(0,n.\u0275unwrapSafeValue)(dt):(0,n.\u0275_sanitizeHtml)(this._doc,String(dt)).toString();case n.SecurityContext.STYLE:return(0,n.\u0275allowSanitizationBypassAndThrow)(dt,"Style")?(0,n.\u0275unwrapSafeValue)(dt):dt;case n.SecurityContext.SCRIPT:if((0,n.\u0275allowSanitizationBypassAndThrow)(dt,"Script"))return(0,n.\u0275unwrapSafeValue)(dt);throw new n.\u0275RuntimeError(5200,!1);case n.SecurityContext.URL:return(0,n.\u0275allowSanitizationBypassAndThrow)(dt,"URL")?(0,n.\u0275unwrapSafeValue)(dt):(0,n.\u0275_sanitizeUrl)(String(dt));case n.SecurityContext.RESOURCE_URL:if((0,n.\u0275allowSanitizationBypassAndThrow)(dt,"ResourceURL"))return(0,n.\u0275unwrapSafeValue)(dt);throw new n.\u0275RuntimeError(5201,!1);default:throw new n.\u0275RuntimeError(5202,!1)}}bypassSecurityTrustHtml(Ne){return(0,n.\u0275bypassSanitizationTrustHtml)(Ne)}bypassSecurityTrustStyle(Ne){return(0,n.\u0275bypassSanitizationTrustStyle)(Ne)}bypassSecurityTrustScript(Ne){return(0,n.\u0275bypassSanitizationTrustScript)(Ne)}bypassSecurityTrustUrl(Ne){return(0,n.\u0275bypassSanitizationTrustUrl)(Ne)}bypassSecurityTrustResourceUrl(Ne){return(0,n.\u0275bypassSanitizationTrustResourceUrl)(Ne)}}return Ye.\u0275fac=function(Ne){return new(Ne||Ye)(n.\u0275\u0275inject(p.DOCUMENT))},Ye.\u0275prov=n.\u0275\u0275defineInjectable({token:Ye,factory:function(Ne){let dt=null;return dt=Ne?new Ne:function at(Ye){return new De(Ye.get(p.DOCUMENT))}(n.\u0275\u0275inject(n.Injector)),dt},providedIn:"root"}),Ye})();function je(Ye,qe=[]){return{\u0275kind:Ye,\u0275providers:qe}}function ke(){return je(0)}function Z(){return je(1)}function ce(...Ye){const qe=[],Ne=new Set;for(const{\u0275providers:dt,\u0275kind:At}of Ye)Ne.add(At),dt.length&&qe.push(dt);return(0,n.makeEnvironmentProviders)([[],Ne.has(0)?[]:(0,n.\u0275withDomHydration)(),Ne.has(1)?[]:(0,C.\u0275withHttpTransferCache)(),qe])}const Ee=new n.Version("16.1.7"),it=n.makeStateKey,Rt=n.TransferState},5187:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{ActivatedRoute:()=>kn,ActivatedRouteSnapshot:()=>$i,ActivationEnd:()=>Ft,ActivationStart:()=>Ct,BaseRouteReuseStrategy:()=>z,ChildActivationEnd:()=>Pi,ChildActivationStart:()=>li,ChildrenOutletContexts:()=>ge,DefaultTitleStrategy:()=>Oo,DefaultUrlSerializer:()=>Te,GuardsCheckEnd:()=>Yn,GuardsCheckStart:()=>An,NavigationCancel:()=>ri,NavigationEnd:()=>Qn,NavigationError:()=>en,NavigationSkipped:()=>ln,NavigationStart:()=>mi,NoPreloading:()=>fr,OutletContext:()=>be,PRIMARY_OUTLET:()=>me,PreloadAllModules:()=>Kn,PreloadingStrategy:()=>wr,ROUTER_CONFIGURATION:()=>le,ROUTER_INITIALIZER:()=>co,ROUTES:()=>Pr,ResolveEnd:()=>ii,ResolveStart:()=>si,RouteConfigLoadEnd:()=>oi,RouteConfigLoadStart:()=>Ii,RouteReuseStrategy:()=>Oi,Router:()=>Rn,RouterEvent:()=>Zn,RouterLink:()=>Si,RouterLinkActive:()=>ir,RouterLinkWithHref:()=>Si,RouterModule:()=>Br,RouterOutlet:()=>ti,RouterPreloader:()=>Kr,RouterState:()=>pn,RouterStateSnapshot:()=>er,RoutesRecognized:()=>Dn,Scroll:()=>Ae,TitleStrategy:()=>Co,UrlHandlingStrategy:()=>Fe,UrlSegment:()=>Ce,UrlSegmentGroup:()=>J,UrlSerializer:()=>pe,UrlTree:()=>rt,VERSION:()=>No,convertToParamMap:()=>Q,createUrlTreeFromSnapshot:()=>Ne,defaultUrlMatcher:()=>ue,mapToCanActivate:()=>Ys,mapToCanActivateChild:()=>os,mapToCanDeactivate:()=>Pa,mapToCanMatch:()=>Fo,mapToResolve:()=>wo,provideRouter:()=>js,provideRoutes:()=>gs,withComponentInputBinding:()=>Ws,withDebugTracing:()=>cr,withDisabledInitialNavigation:()=>vs,withEnabledBlockingInitialNavigation:()=>_s,withHashLocation:()=>ys,withInMemoryScrolling:()=>rs,withNavigationErrorHandler:()=>Cs,withPreloading:()=>xo,withRouterConfig:()=>Ur,\u0275EmptyOutletComponent:()=>Pn,\u0275ROUTER_PROVIDERS:()=>dr,\u0275afterNextNavigation:()=>Zt});var n=g(5879),p=g(2664),C=g(2459),b=g(2096),o=g(5619),v=g(2572),a=g(6973),c=g(34),s=g(4911),l=g(8407),d=g(8504),r=g(6232),u=g(3168),h=g(8645),m=g(6814),_=g(7398),M=g(4664),x=g(8180),w=g(7921),L=g(2181),A=g(9769),T=g(1374),O=g(6328),E=g(9397),D=g(6306),R=g(6424),j=g(3572),N=g(2032),S=g(4418),k=g(975),F=g(4716),Y=g(6196),se=g(7537),ne=g(6593);const me="primary",$=Symbol("RouteTitle");class q{constructor(te){this.params=te||{}}has(te){return Object.prototype.hasOwnProperty.call(this.params,te)}get(te){if(this.has(te)){const V=this.params[te];return Array.isArray(V)?V[0]:V}return null}getAll(te){if(this.has(te)){const V=this.params[te];return Array.isArray(V)?V:[V]}return[]}get keys(){return Object.keys(this.params)}}function Q(G){return new q(G)}function ue(G,te,V){const de=V.path.split("/");if(de.length>G.length||"full"===V.pathMatch&&(te.hasChildren()||de.lengthde[Qe]===Le)}return G===te}function Be(G){return G.length>0?G[G.length-1]:null}function $e(G){return(0,p.b)(G)?G:(0,n.\u0275isPromise)(G)?(0,C.D)(Promise.resolve(G)):(0,b.of)(G)}const st={exact:function bt(G,te,V){if(!ae(G.segments,te.segments)||!vt(G.segments,te.segments,V)||G.numberOfChildren!==te.numberOfChildren)return!1;for(const de in te.children)if(!G.children[de]||!bt(G.children[de],te.children[de],V))return!1;return!0},subset:nt},Mt={exact:function St(G,te){return Oe(G,te)},subset:function xt(G,te){return Object.keys(te).length<=Object.keys(G).length&&Object.keys(te).every(V=>Xe(G[V],te[V]))},ignored:()=>!0};function tt(G,te,V){return st[V.paths](G.root,te.root,V.matrixParams)&&Mt[V.queryParams](G.queryParams,te.queryParams)&&!("exact"===V.fragment&&G.fragment!==te.fragment)}function nt(G,te,V){return ot(G,te,te.segments,V)}function ot(G,te,V,de){if(G.segments.length>V.length){const Le=G.segments.slice(0,V.length);return!(!ae(Le,V)||te.hasChildren()||!vt(Le,V,de))}if(G.segments.length===V.length){if(!ae(G.segments,V)||!vt(G.segments,V,de))return!1;for(const Le in te.children)if(!G.children[Le]||!nt(G.children[Le],te.children[Le],de))return!1;return!0}{const Le=V.slice(0,G.segments.length),Qe=V.slice(G.segments.length);return!!(ae(G.segments,Le)&&vt(G.segments,Le,de)&&G.children[me])&&ot(G.children[me],te,Qe,de)}}function vt(G,te,V){return te.every((de,Le)=>Mt[V](G[Le].parameters,de.parameters))}class rt{constructor(te=new J([],{}),V={},de=null){this.root=te,this.queryParams=V,this.fragment=de}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=Q(this.queryParams)),this._queryParamMap}toString(){return ct.serialize(this)}}class J{constructor(te,V){this.segments=te,this.children=V,this.parent=null,Object.values(V).forEach(de=>de.parent=this)}hasChildren(){return this.numberOfChildren>0}get numberOfChildren(){return Object.keys(this.children).length}toString(){return Lt(this)}}class Ce{constructor(te,V){this.path=te,this.parameters=V}get parameterMap(){return this._parameterMap||(this._parameterMap=Q(this.parameters)),this._parameterMap}toString(){return Ue(this)}}function ae(G,te){return G.length===te.length&&G.every((V,de)=>V.path===te[de].path)}let pe=(()=>{class G{}return G.\u0275fac=function(V){return new(V||G)},G.\u0275prov=n.\u0275\u0275defineInjectable({token:G,factory:function(){return new Te},providedIn:"root"}),G})();class Te{parse(te){const V=new Ee(te);return new rt(V.parseRootSegment(),V.parseQueryParams(),V.parseFragment())}serialize(te){const V=`/${Dt(te.root,!0)}`,de=function ve(G){const te=Object.keys(G).map(V=>{const de=G[V];return Array.isArray(de)?de.map(Le=>`${ze(V)}=${ze(Le)}`).join("&"):`${ze(V)}=${ze(de)}`}).filter(V=>!!V);return te.length?`?${te.join("&")}`:""}(te.queryParams);return`${V}${de}${"string"==typeof te.fragment?`#${function yt(G){return encodeURI(G)}(te.fragment)}`:""}`}}const ct=new Te;function Lt(G){return G.segments.map(te=>Ue(te)).join("/")}function Dt(G,te){if(!G.hasChildren())return Lt(G);if(te){const V=G.children[me]?Dt(G.children[me],!1):"",de=[];return Object.entries(G.children).forEach(([Le,Qe])=>{Le!==me&&de.push(`${Le}:${Dt(Qe,!1)}`)}),de.length>0?`${V}(${de.join("//")})`:V}{const V=function ie(G,te){let V=[];return Object.entries(G.children).forEach(([de,Le])=>{de===me&&(V=V.concat(te(Le,de)))}),Object.entries(G.children).forEach(([de,Le])=>{de!==me&&(V=V.concat(te(Le,de)))}),V}(G,(de,Le)=>Le===me?[Dt(G.children[me],!1)]:[`${Le}:${Dt(de,!1)}`]);return 1===Object.keys(G.children).length&&null!=G.children[me]?`${Lt(G)}/${V[0]}`:`${Lt(G)}/(${V.join("//")})`}}function Kt(G){return encodeURIComponent(G).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function ze(G){return Kt(G).replace(/%3B/gi,";")}function Bt(G){return Kt(G).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function $t(G){return decodeURIComponent(G)}function Yt(G){return $t(G.replace(/\+/g,"%20"))}function Ue(G){return`${Bt(G.path)}${function We(G){return Object.keys(G).map(te=>`;${Bt(te)}=${Bt(G[te])}`).join("")}(G.parameters)}`}const we=/^[^\/()?;#]+/;function at(G){const te=G.match(we);return te?te[0]:""}const De=/^[^\/()?;=#]+/,ke=/^[^=?&#]+/,re=/^[^&#]+/;class Ee{constructor(te){this.url=te,this.remaining=te}parseRootSegment(){return this.consumeOptional("/"),""===this.remaining||this.peekStartsWith("?")||this.peekStartsWith("#")?new J([],{}):new J([],this.parseChildren())}parseQueryParams(){const te={};if(this.consumeOptional("?"))do{this.parseQueryParam(te)}while(this.consumeOptional("&"));return te}parseFragment(){return this.consumeOptional("#")?decodeURIComponent(this.remaining):null}parseChildren(){if(""===this.remaining)return{};this.consumeOptional("/");const te=[];for(this.peekStartsWith("(")||te.push(this.parseSegment());this.peekStartsWith("/")&&!this.peekStartsWith("//")&&!this.peekStartsWith("/(");)this.capture("/"),te.push(this.parseSegment());let V={};this.peekStartsWith("/(")&&(this.capture("/"),V=this.parseParens(!0));let de={};return this.peekStartsWith("(")&&(de=this.parseParens(!1)),(te.length>0||Object.keys(V).length>0)&&(de[me]=new J(te,V)),de}parseSegment(){const te=at(this.remaining);if(""===te&&this.peekStartsWith(";"))throw new n.\u0275RuntimeError(4009,!1);return this.capture(te),new Ce($t(te),this.parseMatrixParams())}parseMatrixParams(){const te={};for(;this.consumeOptional(";");)this.parseParam(te);return te}parseParam(te){const V=function je(G){const te=G.match(De);return te?te[0]:""}(this.remaining);if(!V)return;this.capture(V);let de="";if(this.consumeOptional("=")){const Le=at(this.remaining);Le&&(de=Le,this.capture(de))}te[$t(V)]=$t(de)}parseQueryParam(te){const V=function Z(G){const te=G.match(ke);return te?te[0]:""}(this.remaining);if(!V)return;this.capture(V);let de="";if(this.consumeOptional("=")){const et=function ce(G){const te=G.match(re);return te?te[0]:""}(this.remaining);et&&(de=et,this.capture(de))}const Le=Yt(V),Qe=Yt(de);if(te.hasOwnProperty(Le)){let et=te[Le];Array.isArray(et)||(et=[et],te[Le]=et),et.push(Qe)}else te[Le]=Qe}parseParens(te){const V={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){const de=at(this.remaining),Le=this.remaining[de.length];if("/"!==Le&&")"!==Le&&";"!==Le)throw new n.\u0275RuntimeError(4010,!1);let Qe;de.indexOf(":")>-1?(Qe=de.slice(0,de.indexOf(":")),this.capture(Qe),this.capture(":")):te&&(Qe=me);const et=this.parseChildren();V[Qe]=1===Object.keys(et).length?et[me]:new J([],et),this.consumeOptional("//")}return V}peekStartsWith(te){return this.remaining.startsWith(te)}consumeOptional(te){return!!this.peekStartsWith(te)&&(this.remaining=this.remaining.substring(te.length),!0)}capture(te){if(!this.consumeOptional(te))throw new n.\u0275RuntimeError(4011,!1)}}function it(G){return G.segments.length>0?new J([],{[me]:G}):G}function Rt(G){const te={};for(const de of Object.keys(G.children)){const Qe=Rt(G.children[de]);if(de===me&&0===Qe.segments.length&&Qe.hasChildren())for(const[et,Nt]of Object.entries(Qe.children))te[et]=Nt;else(Qe.segments.length>0||Qe.hasChildren())&&(te[de]=Qe)}return function Ye(G){if(1===G.numberOfChildren&&G.children[me]){const te=G.children[me];return new J(G.segments.concat(te.segments),te.children)}return G}(new J(G.segments,te))}function qe(G){return G instanceof rt}function Ne(G,te,V=null,de=null){return At(dt(G),te,V,de)}function dt(G){let te;const Le=it(function V(Qe){const et={};for(const mn of Qe.children){const Ln=V(mn);et[mn.outlet]=Ln}const Nt=new J(Qe.url,et);return Qe===G&&(te=Nt),Nt}(G.root));return te??Le}function At(G,te,V,de){let Le=G;for(;Le.parent;)Le=Le.parent;if(0===te.length)return Tn(Le,Le,Le,V,de);const Qe=function Ci(G){if("string"==typeof G[0]&&1===G.length&&"/"===G[0])return new Mn(!0,0,G);let te=0,V=!1;const de=G.reduce((Le,Qe,et)=>{if("object"==typeof Qe&&null!=Qe){if(Qe.outlets){const Nt={};return Object.entries(Qe.outlets).forEach(([mn,Ln])=>{Nt[mn]="string"==typeof Ln?Ln.split("/"):Ln}),[...Le,{outlets:Nt}]}if(Qe.segmentPath)return[...Le,Qe.segmentPath]}return"string"!=typeof Qe?[...Le,Qe]:0===et?(Qe.split("/").forEach((Nt,mn)=>{0==mn&&"."===Nt||(0==mn&&""===Nt?V=!0:".."===Nt?te++:""!=Nt&&Le.push(Nt))}),Le):[...Le,Qe]},[]);return new Mn(V,te,de)}(te);if(Qe.toRoot())return Tn(Le,Le,new J([],{}),V,de);const et=function Li(G,te,V){if(G.isAbsolute)return new di(te,!0,0);if(!V)return new di(te,!1,NaN);if(null===V.parent)return new di(V,!0,0);const de=tn(G.commands[0])?0:1;return function Qi(G,te,V){let de=G,Le=te,Qe=V;for(;Qe>Le;){if(Qe-=Le,de=de.parent,!de)throw new n.\u0275RuntimeError(4005,!1);Le=de.segments.length}return new di(de,!1,Le-Qe)}(V,V.segments.length-1+de,G.numberOfDoubleDots)}(Qe,Le,G),Nt=et.processChildren?pt(et.segmentGroup,et.index,Qe.commands):mt(et.segmentGroup,et.index,Qe.commands);return Tn(Le,et.segmentGroup,Nt,V,de)}function tn(G){return"object"==typeof G&&null!=G&&!G.outlets&&!G.segmentPath}function wn(G){return"object"==typeof G&&null!=G&&G.outlets}function Tn(G,te,V,de,Le){let et,Qe={};de&&Object.entries(de).forEach(([mn,Ln])=>{Qe[mn]=Array.isArray(Ln)?Ln.map(Gn=>`${Gn}`):`${Ln}`}),et=G===te?V:Sn(G,te,V);const Nt=it(Rt(et));return new rt(Nt,Qe,Le)}function Sn(G,te,V){const de={};return Object.entries(G.children).forEach(([Le,Qe])=>{de[Le]=Qe===te?V:Sn(Qe,te,V)}),new J(G.segments,de)}class Mn{constructor(te,V,de){if(this.isAbsolute=te,this.numberOfDoubleDots=V,this.commands=de,te&&de.length>0&&tn(de[0]))throw new n.\u0275RuntimeError(4003,!1);const Le=de.find(wn);if(Le&&Le!==Be(de))throw new n.\u0275RuntimeError(4004,!1)}toRoot(){return this.isAbsolute&&1===this.commands.length&&"/"==this.commands[0]}}class di{constructor(te,V,de){this.segmentGroup=te,this.processChildren=V,this.index=de}}function mt(G,te,V){if(G||(G=new J([],{})),0===G.segments.length&&G.hasChildren())return pt(G,te,V);const de=function qt(G,te,V){let de=0,Le=te;const Qe={match:!1,pathIndex:0,commandIndex:0};for(;Le=V.length)return Qe;const et=G.segments[Le],Nt=V[de];if(wn(Nt))break;const mn=`${Nt}`,Ln=de0&&void 0===mn)break;if(mn&&Ln&&"object"==typeof Ln&&void 0===Ln.outlets){if(!$n(mn,Ln,et))return Qe;de+=2}else{if(!$n(mn,{},et))return Qe;de++}Le++}return{match:!0,pathIndex:Le,commandIndex:de}}(G,te,V),Le=V.slice(de.commandIndex);if(de.match&&de.pathIndex{"string"==typeof et&&(et=[et]),null!==et&&(Le[Qe]=mt(G.children[Qe],te,et))}),Object.entries(G.children).forEach(([Qe,et])=>{void 0===de[Qe]&&(Le[Qe]=et)}),new J(G.segments,Le)}}function on(G,te,V){const de=G.segments.slice(0,te);let Le=0;for(;Le{"string"==typeof de&&(de=[de]),null!==de&&(te[V]=on(new J([],{}),0,de))}),te}function un(G){const te={};return Object.entries(G).forEach(([V,de])=>te[V]=`${de}`),te}function $n(G,te,V){return G==V.path&&Oe(te,V.parameters)}const In="imperative";class Zn{constructor(te,V){this.id=te,this.url=V}}class mi extends Zn{constructor(te,V,de="imperative",Le=null){super(te,V),this.type=0,this.navigationTrigger=de,this.restoredState=Le}toString(){return`NavigationStart(id: ${this.id}, url: '${this.url}')`}}class Qn extends Zn{constructor(te,V,de){super(te,V),this.urlAfterRedirects=de,this.type=1}toString(){return`NavigationEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}')`}}class ri extends Zn{constructor(te,V,de,Le){super(te,V),this.reason=de,this.code=Le,this.type=2}toString(){return`NavigationCancel(id: ${this.id}, url: '${this.url}')`}}class ln extends Zn{constructor(te,V,de,Le){super(te,V),this.reason=de,this.code=Le,this.type=16}}class en extends Zn{constructor(te,V,de,Le){super(te,V),this.error=de,this.target=Le,this.type=3}toString(){return`NavigationError(id: ${this.id}, url: '${this.url}', error: ${this.error})`}}class Dn extends Zn{constructor(te,V,de,Le){super(te,V),this.urlAfterRedirects=de,this.state=Le,this.type=4}toString(){return`RoutesRecognized(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class An extends Zn{constructor(te,V,de,Le){super(te,V),this.urlAfterRedirects=de,this.state=Le,this.type=7}toString(){return`GuardsCheckStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class Yn extends Zn{constructor(te,V,de,Le,Qe){super(te,V),this.urlAfterRedirects=de,this.state=Le,this.shouldActivate=Qe,this.type=8}toString(){return`GuardsCheckEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state}, shouldActivate: ${this.shouldActivate})`}}class si extends Zn{constructor(te,V,de,Le){super(te,V),this.urlAfterRedirects=de,this.state=Le,this.type=5}toString(){return`ResolveStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class ii extends Zn{constructor(te,V,de,Le){super(te,V),this.urlAfterRedirects=de,this.state=Le,this.type=6}toString(){return`ResolveEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class Ii{constructor(te){this.route=te,this.type=9}toString(){return`RouteConfigLoadStart(path: ${this.route.path})`}}class oi{constructor(te){this.route=te,this.type=10}toString(){return`RouteConfigLoadEnd(path: ${this.route.path})`}}class li{constructor(te){this.snapshot=te,this.type=11}toString(){return`ChildActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class Pi{constructor(te){this.snapshot=te,this.type=12}toString(){return`ChildActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class Ct{constructor(te){this.snapshot=te,this.type=13}toString(){return`ActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class Ft{constructor(te){this.snapshot=te,this.type=14}toString(){return`ActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class Ae{constructor(te,V,de){this.routerEvent=te,this.position=V,this.anchor=de,this.type=15}toString(){return`Scroll(anchor: '${this.anchor}', position: '${this.position?`${this.position[0]}, ${this.position[1]}`:null}')`}}class be{constructor(){this.outlet=null,this.route=null,this.injector=null,this.children=new ge,this.attachRef=null}}let ge=(()=>{class G{constructor(){this.contexts=new Map}onChildOutletCreated(V,de){const Le=this.getOrCreateContext(V);Le.outlet=de,this.contexts.set(V,Le)}onChildOutletDestroyed(V){const de=this.getContext(V);de&&(de.outlet=null,de.attachRef=null)}onOutletDeactivated(){const V=this.contexts;return this.contexts=new Map,V}onOutletReAttached(V){this.contexts=V}getOrCreateContext(V){let de=this.getContext(V);return de||(de=new be,this.contexts.set(V,de)),de}getContext(V){return this.contexts.get(V)||null}}return G.\u0275fac=function(V){return new(V||G)},G.\u0275prov=n.\u0275\u0275defineInjectable({token:G,factory:G.\u0275fac,providedIn:"root"}),G})();class Ge{constructor(te){this._root=te}get root(){return this._root.value}parent(te){const V=this.pathFromRoot(te);return V.length>1?V[V.length-2]:null}children(te){const V=It(te,this._root);return V?V.children.map(de=>de.value):[]}firstChild(te){const V=It(te,this._root);return V&&V.children.length>0?V.children[0].value:null}siblings(te){const V=zt(te,this._root);return V.length<2?[]:V[V.length-2].children.map(Le=>Le.value).filter(Le=>Le!==te)}pathFromRoot(te){return zt(te,this._root).map(V=>V.value)}}function It(G,te){if(G===te.value)return te;for(const V of te.children){const de=It(G,V);if(de)return de}return null}function zt(G,te){if(G===te.value)return[te];for(const V of te.children){const de=zt(G,V);if(de.length)return de.unshift(te),de}return[]}class an{constructor(te,V){this.value=te,this.children=V}toString(){return`TreeNode(${this.value})`}}function gn(G){const te={};return G&&G.children.forEach(V=>te[V.value.outlet]=V),te}class pn extends Ge{constructor(te,V){super(te),this.snapshot=V,fn(this,te)}toString(){return this.snapshot.toString()}}function Jn(G,te){const V=function Nn(G,te){const et=new $i([],{},{},"",{},me,te,null,{});return new er("",new an(et,[]))}(0,te),de=new o.X([new Ce("",{})]),Le=new o.X({}),Qe=new o.X({}),et=new o.X({}),Nt=new o.X(""),mn=new kn(de,Le,et,Nt,Qe,me,te,V.root);return mn.snapshot=V.root,new pn(new an(mn,[]),V)}class kn{constructor(te,V,de,Le,Qe,et,Nt,mn){this.urlSubject=te,this.paramsSubject=V,this.queryParamsSubject=de,this.fragmentSubject=Le,this.dataSubject=Qe,this.outlet=et,this.component=Nt,this._futureSnapshot=mn,this.title=this.dataSubject?.pipe((0,_.U)(Ln=>Ln[$]))??(0,b.of)(void 0),this.url=te,this.params=V,this.queryParams=de,this.fragment=Le,this.data=Qe}get routeConfig(){return this._futureSnapshot.routeConfig}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap||(this._paramMap=this.params.pipe((0,_.U)(te=>Q(te)))),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=this.queryParams.pipe((0,_.U)(te=>Q(te)))),this._queryParamMap}toString(){return this.snapshot?this.snapshot.toString():`Future(${this._futureSnapshot})`}}function Un(G,te="emptyOnly"){const V=G.pathFromRoot;let de=0;if("always"!==te)for(de=V.length-1;de>=1;){const Le=V[de],Qe=V[de-1];if(Le.routeConfig&&""===Le.routeConfig.path)de--;else{if(Qe.component)break;de--}}return function vi(G){return G.reduce((te,V)=>({params:{...te.params,...V.params},data:{...te.data,...V.data},resolve:{...V.data,...te.resolve,...V.routeConfig?.data,...V._resolvedData}}),{params:{},data:{},resolve:{}})}(V.slice(de))}class $i{get title(){return this.data?.[$]}constructor(te,V,de,Le,Qe,et,Nt,mn,Ln){this.url=te,this.params=V,this.queryParams=de,this.fragment=Le,this.data=Qe,this.outlet=et,this.component=Nt,this.routeConfig=mn,this._resolve=Ln}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap||(this._paramMap=Q(this.params)),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=Q(this.queryParams)),this._queryParamMap}toString(){return`Route(url:'${this.url.map(de=>de.toString()).join("/")}', path:'${this.routeConfig?this.routeConfig.path:""}')`}}class er extends Ge{constructor(te,V){super(V),this.url=te,fn(this,V)}toString(){return yn(this._root)}}function fn(G,te){te.value._routerState=G,te.children.forEach(V=>fn(G,V))}function yn(G){const te=G.children.length>0?` { ${G.children.map(yn).join(", ")} } `:"";return`${G.value}${te}`}function rn(G){if(G.snapshot){const te=G.snapshot,V=G._futureSnapshot;G.snapshot=V,Oe(te.queryParams,V.queryParams)||G.queryParamsSubject.next(V.queryParams),te.fragment!==V.fragment&&G.fragmentSubject.next(V.fragment),Oe(te.params,V.params)||G.paramsSubject.next(V.params),function Me(G,te){if(G.length!==te.length)return!1;for(let V=0;VOe(V.parameters,te[de].parameters))}(G.url,te.url);return V&&!(!G.parent!=!te.parent)&&(!G.parent||xn(G.parent,te.parent))}let ti=(()=>{class G{constructor(){this.activated=null,this._activatedRoute=null,this.name=me,this.activateEvents=new n.EventEmitter,this.deactivateEvents=new n.EventEmitter,this.attachEvents=new n.EventEmitter,this.detachEvents=new n.EventEmitter,this.parentContexts=(0,n.inject)(ge),this.location=(0,n.inject)(n.ViewContainerRef),this.changeDetector=(0,n.inject)(n.ChangeDetectorRef),this.environmentInjector=(0,n.inject)(n.EnvironmentInjector),this.inputBinder=(0,n.inject)(zi,{optional:!0}),this.supportsBindingToComponentInputs=!0}get activatedComponentRef(){return this.activated}ngOnChanges(V){if(V.name){const{firstChange:de,previousValue:Le}=V.name;if(de)return;this.isTrackedInParentContexts(Le)&&(this.deactivate(),this.parentContexts.onChildOutletDestroyed(Le)),this.initializeOutletWithName()}}ngOnDestroy(){this.isTrackedInParentContexts(this.name)&&this.parentContexts.onChildOutletDestroyed(this.name),this.inputBinder?.unsubscribeFromRouteData(this)}isTrackedInParentContexts(V){return this.parentContexts.getContext(V)?.outlet===this}ngOnInit(){this.initializeOutletWithName()}initializeOutletWithName(){if(this.parentContexts.onChildOutletCreated(this.name,this),this.activated)return;const V=this.parentContexts.getContext(this.name);V?.route&&(V.attachRef?this.attach(V.attachRef,V.route):this.activateWith(V.route,V.injector))}get isActivated(){return!!this.activated}get component(){if(!this.activated)throw new n.\u0275RuntimeError(4012,!1);return this.activated.instance}get activatedRoute(){if(!this.activated)throw new n.\u0275RuntimeError(4012,!1);return this._activatedRoute}get activatedRouteData(){return this._activatedRoute?this._activatedRoute.snapshot.data:{}}detach(){if(!this.activated)throw new n.\u0275RuntimeError(4012,!1);this.location.detach();const V=this.activated;return this.activated=null,this._activatedRoute=null,this.detachEvents.emit(V.instance),V}attach(V,de){this.activated=V,this._activatedRoute=de,this.location.insert(V.hostView),this.inputBinder?.bindActivatedRouteToOutletComponent(this),this.attachEvents.emit(V.instance)}deactivate(){if(this.activated){const V=this.component;this.activated.destroy(),this.activated=null,this._activatedRoute=null,this.deactivateEvents.emit(V)}}activateWith(V,de){if(this.isActivated)throw new n.\u0275RuntimeError(4013,!1);this._activatedRoute=V;const Le=this.location,et=V.snapshot.component,Nt=this.parentContexts.getOrCreateContext(this.name).children,mn=new Ti(V,Nt,Le.injector);this.activated=Le.createComponent(et,{index:Le.length,injector:mn,environmentInjector:de??this.environmentInjector}),this.changeDetector.markForCheck(),this.inputBinder?.bindActivatedRouteToOutletComponent(this),this.activateEvents.emit(this.activated.instance)}}return G.\u0275fac=function(V){return new(V||G)},G.\u0275dir=n.\u0275\u0275defineDirective({type:G,selectors:[["router-outlet"]],inputs:{name:"name"},outputs:{activateEvents:"activate",deactivateEvents:"deactivate",attachEvents:"attach",detachEvents:"detach"},exportAs:["outlet"],standalone:!0,features:[n.\u0275\u0275NgOnChangesFeature]}),G})();class Ti{constructor(te,V,de){this.route=te,this.childContexts=V,this.parent=de}get(te,V){return te===kn?this.route:te===ge?this.childContexts:this.parent.get(te,V)}}const zi=new n.InjectionToken("");let xi=(()=>{class G{constructor(){this.outletDataSubscriptions=new Map}bindActivatedRouteToOutletComponent(V){this.unsubscribeFromRouteData(V),this.subscribeToRouteData(V)}unsubscribeFromRouteData(V){this.outletDataSubscriptions.get(V)?.unsubscribe(),this.outletDataSubscriptions.delete(V)}subscribeToRouteData(V){const{activatedRoute:de}=V,Le=(0,v.a)([de.queryParams,de.params,de.data]).pipe((0,M.w)(([Qe,et,Nt],mn)=>(Nt={...Qe,...et,...Nt},0===mn?(0,b.of)(Nt):Promise.resolve(Nt)))).subscribe(Qe=>{if(!V.isActivated||!V.activatedComponentRef||V.activatedRoute!==de||null===de.component)return void this.unsubscribeFromRouteData(V);const et=(0,n.reflectComponentType)(de.component);if(et)for(const{templateName:Nt}of et.inputs)V.activatedComponentRef.setInput(Nt,Qe[Nt]);else this.unsubscribeFromRouteData(V)});this.outletDataSubscriptions.set(V,Le)}}return G.\u0275fac=function(V){return new(V||G)},G.\u0275prov=n.\u0275\u0275defineInjectable({token:G,factory:G.\u0275fac}),G})();function gi(G,te,V){if(V&&G.shouldReuseRoute(te.value,V.value.snapshot)){const de=V.value;de._futureSnapshot=te.value;const Le=function Ke(G,te,V){return te.children.map(de=>{for(const Le of V.children)if(G.shouldReuseRoute(de.value,Le.value.snapshot))return gi(G,de,Le);return gi(G,de)})}(G,te,V);return new an(de,Le)}{if(G.shouldAttach(te.value)){const Qe=G.retrieve(te.value);if(null!==Qe){const et=Qe.route;return et.value._futureSnapshot=te.value,et.children=te.children.map(Nt=>gi(G,Nt)),et}}const de=function kt(G){return new kn(new o.X(G.url),new o.X(G.params),new o.X(G.queryParams),new o.X(G.fragment),new o.X(G.data),G.outlet,G.component,G)}(te.value),Le=te.children.map(Qe=>gi(G,Qe));return new an(de,Le)}}const U="ngNavigationCancelingError";function fe(G,te){const{redirectTo:V,navigationBehaviorOptions:de}=qe(te)?{redirectTo:te,navigationBehaviorOptions:void 0}:te,Le=Pe(!1,0,te);return Le.url=V,Le.navigationBehaviorOptions=de,Le}function Pe(G,te,V){const de=new Error("NavigationCancelingError: "+(G||""));return de[U]=!0,de.cancellationCode=te,V&&(de.url=V),de}function Je(G){return Gt(G)&&qe(G.url)}function Gt(G){return G&&G[U]}let Pn=(()=>{class G{}return G.\u0275fac=function(V){return new(V||G)},G.\u0275cmp=n.\u0275\u0275defineComponent({type:G,selectors:[["ng-component"]],standalone:!0,features:[n.\u0275\u0275StandaloneFeature],decls:1,vars:0,template:function(V,de){1&V&&n.\u0275\u0275element(0,"router-outlet")},dependencies:[ti],encapsulation:2}),G})();function Tt(G){const te=G.children&&G.children.map(Tt),V=te?{...G,children:te}:{...G};return!V.component&&!V.loadComponent&&(te||V.loadChildren)&&V.outlet&&V.outlet!==me&&(V.component=Pn),V}function Ut(G){return G.outlet||me}function nn(G){if(!G)return null;if(G.routeConfig?._injector)return G.routeConfig._injector;for(let te=G.parent;te;te=te.parent){const V=te.routeConfig;if(V?._loadedInjector)return V._loadedInjector;if(V?._injector)return V._injector}return null}class zn{constructor(te,V,de,Le,Qe){this.routeReuseStrategy=te,this.futureState=V,this.currState=de,this.forwardEvent=Le,this.inputBindingEnabled=Qe}activate(te){const V=this.futureState._root,de=this.currState?this.currState._root:null;this.deactivateChildRoutes(V,de,te),rn(this.futureState.root),this.activateChildRoutes(V,de,te)}deactivateChildRoutes(te,V,de){const Le=gn(V);te.children.forEach(Qe=>{const et=Qe.value.outlet;this.deactivateRoutes(Qe,Le[et],de),delete Le[et]}),Object.values(Le).forEach(Qe=>{this.deactivateRouteAndItsChildren(Qe,de)})}deactivateRoutes(te,V,de){const Le=te.value,Qe=V?V.value:null;if(Le===Qe)if(Le.component){const et=de.getContext(Le.outlet);et&&this.deactivateChildRoutes(te,V,et.children)}else this.deactivateChildRoutes(te,V,de);else Qe&&this.deactivateRouteAndItsChildren(V,de)}deactivateRouteAndItsChildren(te,V){te.value.component&&this.routeReuseStrategy.shouldDetach(te.value.snapshot)?this.detachAndStoreRouteSubtree(te,V):this.deactivateRouteAndOutlet(te,V)}detachAndStoreRouteSubtree(te,V){const de=V.getContext(te.value.outlet),Le=de&&te.value.component?de.children:V,Qe=gn(te);for(const et of Object.keys(Qe))this.deactivateRouteAndItsChildren(Qe[et],Le);if(de&&de.outlet){const et=de.outlet.detach(),Nt=de.children.onOutletDeactivated();this.routeReuseStrategy.store(te.value.snapshot,{componentRef:et,route:te,contexts:Nt})}}deactivateRouteAndOutlet(te,V){const de=V.getContext(te.value.outlet),Le=de&&te.value.component?de.children:V,Qe=gn(te);for(const et of Object.keys(Qe))this.deactivateRouteAndItsChildren(Qe[et],Le);de&&(de.outlet&&(de.outlet.deactivate(),de.children.onOutletDeactivated()),de.attachRef=null,de.route=null)}activateChildRoutes(te,V,de){const Le=gn(V);te.children.forEach(Qe=>{this.activateRoutes(Qe,Le[Qe.value.outlet],de),this.forwardEvent(new Ft(Qe.value.snapshot))}),te.children.length&&this.forwardEvent(new Pi(te.value.snapshot))}activateRoutes(te,V,de){const Le=te.value,Qe=V?V.value:null;if(rn(Le),Le===Qe)if(Le.component){const et=de.getOrCreateContext(Le.outlet);this.activateChildRoutes(te,V,et.children)}else this.activateChildRoutes(te,V,de);else if(Le.component){const et=de.getOrCreateContext(Le.outlet);if(this.routeReuseStrategy.shouldAttach(Le.snapshot)){const Nt=this.routeReuseStrategy.retrieve(Le.snapshot);this.routeReuseStrategy.store(Le.snapshot,null),et.children.onOutletReAttached(Nt.contexts),et.attachRef=Nt.componentRef,et.route=Nt.route.value,et.outlet&&et.outlet.attach(Nt.componentRef,Nt.route.value),rn(Nt.route.value),this.activateChildRoutes(te,null,et.children)}else{const Nt=nn(Le.snapshot);et.attachRef=null,et.route=Le,et.injector=Nt,et.outlet&&et.outlet.activateWith(Le,et.injector),this.activateChildRoutes(te,null,et.children)}}else this.activateChildRoutes(te,null,de)}}class Vn{constructor(te){this.path=te,this.route=this.path[this.path.length-1]}}class Ri{constructor(te,V){this.component=te,this.route=V}}function ci(G,te,V){const de=G._root;return Xn(de,te?te._root:null,V,[de.value])}function ni(G,te){const V=Symbol(),de=te.get(G,V);return de===V?"function"!=typeof G||(0,n.\u0275isInjectable)(G)?te.get(G):G:de}function Xn(G,te,V,de,Le={canDeactivateChecks:[],canActivateChecks:[]}){const Qe=gn(te);return G.children.forEach(et=>{(function ai(G,te,V,de,Le={canDeactivateChecks:[],canActivateChecks:[]}){const Qe=G.value,et=te?te.value:null,Nt=V?V.getContext(G.value.outlet):null;if(et&&Qe.routeConfig===et.routeConfig){const mn=function Fi(G,te,V){if("function"==typeof V)return V(G,te);switch(V){case"pathParamsChange":return!ae(G.url,te.url);case"pathParamsOrQueryParamsChange":return!ae(G.url,te.url)||!Oe(G.queryParams,te.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!xn(G,te)||!Oe(G.queryParams,te.queryParams);default:return!xn(G,te)}}(et,Qe,Qe.routeConfig.runGuardsAndResolvers);mn?Le.canActivateChecks.push(new Vn(de)):(Qe.data=et.data,Qe._resolvedData=et._resolvedData),Xn(G,te,Qe.component?Nt?Nt.children:null:V,de,Le),mn&&Nt&&Nt.outlet&&Nt.outlet.isActivated&&Le.canDeactivateChecks.push(new Ri(Nt.outlet.component,et))}else et&&Xi(te,Nt,Le),Le.canActivateChecks.push(new Vn(de)),Xn(G,null,Qe.component?Nt?Nt.children:null:V,de,Le)})(et,Qe[et.value.outlet],V,de.concat([et.value]),Le),delete Qe[et.value.outlet]}),Object.entries(Qe).forEach(([et,Nt])=>Xi(Nt,V.getContext(et),Le)),Le}function Xi(G,te,V){const de=gn(G),Le=G.value;Object.entries(de).forEach(([Qe,et])=>{Xi(et,Le.component?te?te.children.getContext(Qe):null:te,V)}),V.canDeactivateChecks.push(new Ri(Le.component&&te&&te.outlet&&te.outlet.isActivated?te.outlet.component:null,Le))}function Jr(G){return"function"==typeof G}function Vr(G){return G instanceof a.K||"EmptyError"===G?.name}const jr=Symbol("INITIAL_VALUE");function Hr(){return(0,M.w)(G=>(0,v.a)(G.map(te=>te.pipe((0,x.q)(1),(0,w.O)(jr)))).pipe((0,_.U)(te=>{for(const V of te)if(!0!==V){if(V===jr)return jr;if(!1===V||V instanceof rt)return V}return!0}),(0,L.h)(te=>te!==jr),(0,x.q)(1)))}function xr(G){return(0,l.z)((0,E.b)(te=>{if(qe(te))throw fe(0,te)}),(0,_.U)(te=>!0===te))}class Mr{constructor(te){this.segmentGroup=te||null}}class _o{constructor(te){this.urlTree=te}}function Or(G){return(0,d._)(new Mr(G))}function qr(G){return(0,d._)(new _o(G))}class fs{constructor(te,V){this.urlSerializer=te,this.urlTree=V}noMatchError(te){return new n.\u0275RuntimeError(4002,!1)}lineralizeSegments(te,V){let de=[],Le=V.root;for(;;){if(de=de.concat(Le.segments),0===Le.numberOfChildren)return(0,b.of)(de);if(Le.numberOfChildren>1||!Le.children[me])return(0,d._)(new n.\u0275RuntimeError(4e3,!1));Le=Le.children[me]}}applyRedirectCommands(te,V,de){return this.applyRedirectCreateUrlTree(V,this.urlSerializer.parse(V),te,de)}applyRedirectCreateUrlTree(te,V,de,Le){const Qe=this.createSegmentGroup(te,V.root,de,Le);return new rt(Qe,this.createQueryParams(V.queryParams,this.urlTree.queryParams),V.fragment)}createQueryParams(te,V){const de={};return Object.entries(te).forEach(([Le,Qe])=>{if("string"==typeof Qe&&Qe.startsWith(":")){const Nt=Qe.substring(1);de[Le]=V[Nt]}else de[Le]=Qe}),de}createSegmentGroup(te,V,de,Le){const Qe=this.createSegments(te,V.segments,de,Le);let et={};return Object.entries(V.children).forEach(([Nt,mn])=>{et[Nt]=this.createSegmentGroup(te,mn,de,Le)}),new J(Qe,et)}createSegments(te,V,de,Le){return V.map(Qe=>Qe.path.startsWith(":")?this.findPosParam(te,Qe,Le):this.findOrReturn(Qe,de))}findPosParam(te,V,de){const Le=de[V.path.substring(1)];if(!Le)throw new n.\u0275RuntimeError(4001,!1);return Le}findOrReturn(te,V){let de=0;for(const Le of V){if(Le.path===te.path)return V.splice(de),Le;de++}return te}}const vo={matched:!1,consumedSegments:[],remainingSegments:[],parameters:{},positionalParamSegments:{}};function Zo(G,te,V,de,Le){const Qe=yr(G,te,V);return Qe.matched?(de=function Gi(G,te){return G.providers&&!G._injector&&(G._injector=(0,n.createEnvironmentInjector)(G.providers,te,`Route: ${G.path}`)),G._injector??te}(te,de),function sr(G,te,V,de){const Le=te.canMatch;if(!Le||0===Le.length)return(0,b.of)(!0);const Qe=Le.map(et=>{const Nt=ni(et,G);return $e(function Wo(G){return G&&Jr(G.canMatch)}(Nt)?Nt.canMatch(te,V):G.runInContext(()=>Nt(te,V)))});return(0,b.of)(Qe).pipe(Hr(),xr())}(de,te,V).pipe((0,_.U)(et=>!0===et?Qe:{...vo}))):(0,b.of)(Qe)}function yr(G,te,V){if(""===te.path)return"full"===te.pathMatch&&(G.hasChildren()||V.length>0)?{...vo}:{matched:!0,consumedSegments:[],remainingSegments:V,parameters:{},positionalParamSegments:{}};const Le=(te.matcher||ue)(V,G,te);if(!Le)return{...vo};const Qe={};Object.entries(Le.posParams??{}).forEach(([Nt,mn])=>{Qe[Nt]=mn.path});const et=Le.consumed.length>0?{...Qe,...Le.consumed[Le.consumed.length-1].parameters}:Qe;return{matched:!0,consumedSegments:Le.consumed,remainingSegments:V.slice(Le.consumed.length),parameters:et,positionalParamSegments:Le.posParams??{}}}function Cr(G,te,V,de){return V.length>0&&function Qo(G,te,V){return V.some(de=>zr(G,te,de)&&Ut(de)!==me)}(G,V,de)?{segmentGroup:new J(te,so(de,new J(V,G.children))),slicedSegments:[]}:0===V.length&&function ao(G,te,V){return V.some(de=>zr(G,te,de))}(G,V,de)?{segmentGroup:new J(G.segments,Ji(G,0,V,de,G.children)),slicedSegments:V}:{segmentGroup:new J(G.segments,G.children),slicedSegments:V}}function Ji(G,te,V,de,Le){const Qe={};for(const et of de)if(zr(G,V,et)&&!Le[Ut(et)]){const Nt=new J([],{});Qe[Ut(et)]=Nt}return{...Le,...Qe}}function so(G,te){const V={};V[me]=te;for(const de of G)if(""===de.path&&Ut(de)!==me){const Le=new J([],{});V[Ut(de)]=Le}return V}function zr(G,te,V){return(!(G.hasChildren()||te.length>0)||"full"!==V.pathMatch)&&""===V.path}class Ao{constructor(te,V,de,Le,Qe,et,Nt){this.injector=te,this.configLoader=V,this.rootComponentType=de,this.config=Le,this.urlTree=Qe,this.paramsInheritanceStrategy=et,this.urlSerializer=Nt,this.allowRedirects=!0,this.applyRedirects=new fs(this.urlSerializer,this.urlTree)}noMatchError(te){return new n.\u0275RuntimeError(4002,!1)}recognize(){const te=Cr(this.urlTree.root,[],[],this.config).segmentGroup;return this.processSegmentGroup(this.injector,this.config,te,me).pipe((0,D.K)(V=>{if(V instanceof _o)return this.allowRedirects=!1,this.urlTree=V.urlTree,this.match(V.urlTree);throw V instanceof Mr?this.noMatchError(V):V}),(0,_.U)(V=>{const de=new $i([],Object.freeze({}),Object.freeze({...this.urlTree.queryParams}),this.urlTree.fragment,{},me,this.rootComponentType,null,{}),Le=new an(de,V),Qe=new er("",Le),et=Ne(de,[],this.urlTree.queryParams,this.urlTree.fragment);return et.queryParams=this.urlTree.queryParams,Qe.url=this.urlSerializer.serialize(et),this.inheritParamsAndData(Qe._root),{state:Qe,tree:et}}))}match(te){return this.processSegmentGroup(this.injector,this.config,te.root,me).pipe((0,D.K)(de=>{throw de instanceof Mr?this.noMatchError(de):de}))}inheritParamsAndData(te){const V=te.value,de=Un(V,this.paramsInheritanceStrategy);V.params=Object.freeze(de.params),V.data=Object.freeze(de.data),te.children.forEach(Le=>this.inheritParamsAndData(Le))}processSegmentGroup(te,V,de,Le){return 0===de.segments.length&&de.hasChildren()?this.processChildren(te,V,de):this.processSegment(te,V,de,de.segments,Le,!0)}processChildren(te,V,de){const Le=[];for(const Qe of Object.keys(de.children))"primary"===Qe?Le.unshift(Qe):Le.push(Qe);return(0,C.D)(Le).pipe((0,O.b)(Qe=>{const et=de.children[Qe],Nt=function Wt(G,te){const V=G.filter(de=>Ut(de)===te);return V.push(...G.filter(de=>Ut(de)!==te)),V}(V,Qe);return this.processSegmentGroup(te,Nt,et,Qe)}),(0,R.R)((Qe,et)=>(Qe.push(...et),Qe)),(0,j.d)(null),(0,N.Z)(),(0,A.z)(Qe=>{if(null===Qe)return Or(de);const et=eo(Qe);return function ar(G){G.sort((te,V)=>te.value.outlet===me?-1:V.value.outlet===me?1:te.value.outlet.localeCompare(V.value.outlet))}(et),(0,b.of)(et)}))}processSegment(te,V,de,Le,Qe,et){return(0,C.D)(V).pipe((0,O.b)(Nt=>this.processSegmentAgainstRoute(Nt._injector??te,V,Nt,de,Le,Qe,et).pipe((0,D.K)(mn=>{if(mn instanceof Mr)return(0,b.of)(null);throw mn}))),(0,T.P)(Nt=>!!Nt),(0,D.K)(Nt=>{if(Vr(Nt))return function Gr(G,te,V){return 0===te.length&&!G.children[V]}(de,Le,Qe)?(0,b.of)([]):Or(de);throw Nt}))}processSegmentAgainstRoute(te,V,de,Le,Qe,et,Nt){return function Wr(G,te,V,de){return!!(Ut(G)===de||de!==me&&zr(te,V,G))&&("**"===G.path||yr(te,G,V).matched)}(de,Le,Qe,et)?void 0===de.redirectTo?this.matchSegmentAgainstRoute(te,Le,de,Qe,et,Nt):Nt&&this.allowRedirects?this.expandSegmentAgainstRouteUsingRedirect(te,Le,V,de,Qe,et):Or(Le):Or(Le)}expandSegmentAgainstRouteUsingRedirect(te,V,de,Le,Qe,et){return"**"===Le.path?this.expandWildCardWithParamsAgainstRouteUsingRedirect(te,de,Le,et):this.expandRegularSegmentAgainstRouteUsingRedirect(te,V,de,Le,Qe,et)}expandWildCardWithParamsAgainstRouteUsingRedirect(te,V,de,Le){const Qe=this.applyRedirects.applyRedirectCommands([],de.redirectTo,{});return de.redirectTo.startsWith("/")?qr(Qe):this.applyRedirects.lineralizeSegments(de,Qe).pipe((0,A.z)(et=>{const Nt=new J(et,{});return this.processSegment(te,V,Nt,et,Le,!1)}))}expandRegularSegmentAgainstRouteUsingRedirect(te,V,de,Le,Qe,et){const{matched:Nt,consumedSegments:mn,remainingSegments:Ln,positionalParamSegments:Gn}=yr(V,Le,Qe);if(!Nt)return Or(V);const Wi=this.applyRedirects.applyRedirectCommands(mn,Le.redirectTo,Gn);return Le.redirectTo.startsWith("/")?qr(Wi):this.applyRedirects.lineralizeSegments(Le,Wi).pipe((0,A.z)(br=>this.processSegment(te,de,V,br.concat(Ln),et,!1)))}matchSegmentAgainstRoute(te,V,de,Le,Qe,et){let Nt;if("**"===de.path){const mn=Le.length>0?Be(Le).parameters:{},Ln=new $i(Le,mn,Object.freeze({...this.urlTree.queryParams}),this.urlTree.fragment,Jo(de),Ut(de),de.component??de._loadedComponent??null,de,ko(de));Nt=(0,b.of)({snapshot:Ln,consumedSegments:[],remainingSegments:[]}),V.children={}}else Nt=Zo(V,de,Le,te).pipe((0,_.U)(({matched:mn,consumedSegments:Ln,remainingSegments:Gn,parameters:Wi})=>mn?{snapshot:new $i(Ln,Wi,Object.freeze({...this.urlTree.queryParams}),this.urlTree.fragment,Jo(de),Ut(de),de.component??de._loadedComponent??null,de,ko(de)),consumedSegments:Ln,remainingSegments:Gn}:null));return Nt.pipe((0,M.w)(mn=>null===mn?Or(V):this.getChildConfig(te=de._injector??te,de,Le).pipe((0,M.w)(({routes:Ln})=>{const Gn=de._loadedInjector??te,{snapshot:Wi,consumedSegments:br,remainingSegments:Ms}=mn,{segmentGroup:Eo,slicedSegments:uo}=Cr(V,br,Ms,Ln);if(0===uo.length&&Eo.hasChildren())return this.processChildren(Gn,Ln,Eo).pipe((0,_.U)(Er=>null===Er?null:[new an(Wi,Er)]));if(0===Ln.length&&0===uo.length)return(0,b.of)([new an(Wi,[])]);const ho=Ut(de)===Qe;return this.processSegment(Gn,Ln,Eo,uo,ho?me:Qe,!0).pipe((0,_.U)(Er=>[new an(Wi,Er)]))}))))}getChildConfig(te,V,de){return V.children?(0,b.of)({routes:V.children,injector:te}):V.loadChildren?void 0!==V._loadedRoutes?(0,b.of)({routes:V._loadedRoutes,injector:V._loadedInjector}):function tr(G,te,V,de){const Le=te.canLoad;if(void 0===Le||0===Le.length)return(0,b.of)(!0);const Qe=Le.map(et=>{const Nt=ni(et,G);return $e(function us(G){return G&&Jr(G.canLoad)}(Nt)?Nt.canLoad(te,V):G.runInContext(()=>Nt(te,V)))});return(0,b.of)(Qe).pipe(Hr(),xr())}(te,V,de).pipe((0,A.z)(Le=>Le?this.configLoader.loadChildren(te,V).pipe((0,E.b)(Qe=>{V._loadedRoutes=Qe.routes,V._loadedInjector=Qe.injector})):function hs(G){return(0,d._)(Pe(!1,3))}())):(0,b.of)({routes:[],injector:te})}}function Xo(G){const te=G.value.routeConfig;return te&&""===te.path}function eo(G){const te=[],V=new Set;for(const de of G){if(!Xo(de)){te.push(de);continue}const Le=te.find(Qe=>de.value.routeConfig===Qe.value.routeConfig);void 0!==Le?(Le.children.push(...de.children),V.add(Le)):te.push(de)}for(const de of V){const Le=eo(de.children);te.push(new an(de.value,Le))}return te.filter(de=>!V.has(de))}function Jo(G){return G.data||{}}function ko(G){return G.resolve||{}}function ns(G){return"string"==typeof G.title||null===G.title}function Ro(G){return(0,M.w)(te=>{const V=G(te);return V?(0,C.D)(V).pipe((0,_.U)(()=>te)):(0,b.of)(te)})}const Pr=new n.InjectionToken("ROUTES");let to=(()=>{class G{constructor(){this.componentLoaders=new WeakMap,this.childrenLoaders=new WeakMap,this.compiler=(0,n.inject)(n.Compiler)}loadComponent(V){if(this.componentLoaders.get(V))return this.componentLoaders.get(V);if(V._loadedComponent)return(0,b.of)(V._loadedComponent);this.onLoadStartListener&&this.onLoadStartListener(V);const de=$e(V.loadComponent()).pipe((0,_.U)(lo),(0,E.b)(Qe=>{this.onLoadEndListener&&this.onLoadEndListener(V),V._loadedComponent=Qe}),(0,F.x)(()=>{this.componentLoaders.delete(V)})),Le=new u.c(de,()=>new h.x).pipe((0,Y.x)());return this.componentLoaders.set(V,Le),Le}loadChildren(V,de){if(this.childrenLoaders.get(de))return this.childrenLoaders.get(de);if(de._loadedRoutes)return(0,b.of)({routes:de._loadedRoutes,injector:de._loadedInjector});this.onLoadStartListener&&this.onLoadStartListener(de);const Qe=this.loadModuleFactoryOrRoutes(de.loadChildren).pipe((0,_.U)(Nt=>{this.onLoadEndListener&&this.onLoadEndListener(de);let mn,Ln;return Array.isArray(Nt)?Ln=Nt:(mn=Nt.create(V).injector,Ln=mn.get(Pr,[],n.InjectFlags.Self|n.InjectFlags.Optional).flat()),{routes:Ln.map(Tt),injector:mn}}),(0,F.x)(()=>{this.childrenLoaders.delete(de)})),et=new u.c(Qe,()=>new h.x).pipe((0,Y.x)());return this.childrenLoaders.set(de,et),et}loadModuleFactoryOrRoutes(V){return $e(V()).pipe((0,_.U)(lo),(0,A.z)(de=>de instanceof n.NgModuleFactory||Array.isArray(de)?(0,b.of)(de):(0,C.D)(this.compiler.compileModuleAsync(de))))}}return G.\u0275fac=function(V){return new(V||G)},G.\u0275prov=n.\u0275\u0275defineInjectable({token:G,factory:G.\u0275fac,providedIn:"root"}),G})();function lo(G){return function Fr(G){return G&&"object"==typeof G&&"default"in G}(G)?G.default:G}let yo=(()=>{class G{get hasRequestedNavigation(){return 0!==this.navigationId}constructor(){this.currentNavigation=null,this.lastSuccessfulNavigation=null,this.events=new h.x,this.configLoader=(0,n.inject)(to),this.environmentInjector=(0,n.inject)(n.EnvironmentInjector),this.urlSerializer=(0,n.inject)(pe),this.rootContexts=(0,n.inject)(ge),this.inputBindingEnabled=null!==(0,n.inject)(zi,{optional:!0}),this.navigationId=0,this.afterPreactivation=()=>(0,b.of)(void 0),this.rootComponentType=null,this.configLoader.onLoadEndListener=Le=>this.events.next(new oi(Le)),this.configLoader.onLoadStartListener=Le=>this.events.next(new Ii(Le))}complete(){this.transitions?.complete()}handleNavigationRequest(V){const de=++this.navigationId;this.transitions?.next({...this.transitions.value,...V,id:de})}setupNavigations(V){return this.transitions=new o.X({id:0,currentUrlTree:V.currentUrlTree,currentRawUrl:V.currentUrlTree,extractedUrl:V.urlHandlingStrategy.extract(V.currentUrlTree),urlAfterRedirects:V.urlHandlingStrategy.extract(V.currentUrlTree),rawUrl:V.currentUrlTree,extras:{},resolve:null,reject:null,promise:Promise.resolve(!0),source:In,restoredState:null,currentSnapshot:V.routerState.snapshot,targetSnapshot:null,currentRouterState:V.routerState,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null}),this.transitions.pipe((0,L.h)(de=>0!==de.id),(0,_.U)(de=>({...de,extractedUrl:V.urlHandlingStrategy.extract(de.rawUrl)})),(0,M.w)(de=>{let Le=!1,Qe=!1;return(0,b.of)(de).pipe((0,E.b)(et=>{this.currentNavigation={id:et.id,initialUrl:et.rawUrl,extractedUrl:et.extractedUrl,trigger:et.source,extras:et.extras,previousNavigation:this.lastSuccessfulNavigation?{...this.lastSuccessfulNavigation,previousNavigation:null}:null}}),(0,M.w)(et=>{const Nt=V.browserUrlTree.toString(),mn=!V.navigated||et.extractedUrl.toString()!==Nt||Nt!==V.currentUrlTree.toString();if(!mn&&"reload"!==(et.extras.onSameUrlNavigation??V.onSameUrlNavigation)){const Gn="";return this.events.next(new ln(et.id,V.serializeUrl(de.rawUrl),Gn,0)),V.rawUrlTree=et.rawUrl,et.resolve(null),r.E}if(V.urlHandlingStrategy.shouldProcessUrl(et.rawUrl))return vr(et.source)&&(V.browserUrlTree=et.extractedUrl),(0,b.of)(et).pipe((0,M.w)(Gn=>{const Wi=this.transitions?.getValue();return this.events.next(new mi(Gn.id,this.urlSerializer.serialize(Gn.extractedUrl),Gn.source,Gn.restoredState)),Wi!==this.transitions?.getValue()?r.E:Promise.resolve(Gn)}),function ps(G,te,V,de,Le,Qe){return(0,A.z)(et=>function ms(G,te,V,de,Le,Qe,et="emptyOnly"){return new Ao(G,te,V,de,Le,et,Qe).recognize()}(G,te,V,de,et.extractedUrl,Le,Qe).pipe((0,_.U)(({state:Nt,tree:mn})=>({...et,targetSnapshot:Nt,urlAfterRedirects:mn}))))}(this.environmentInjector,this.configLoader,this.rootComponentType,V.config,this.urlSerializer,V.paramsInheritanceStrategy),(0,E.b)(Gn=>{if(de.targetSnapshot=Gn.targetSnapshot,de.urlAfterRedirects=Gn.urlAfterRedirects,this.currentNavigation={...this.currentNavigation,finalUrl:Gn.urlAfterRedirects},"eager"===V.urlUpdateStrategy){if(!Gn.extras.skipLocationChange){const br=V.urlHandlingStrategy.merge(Gn.urlAfterRedirects,Gn.rawUrl);V.setBrowserUrl(br,Gn)}V.browserUrlTree=Gn.urlAfterRedirects}const Wi=new Dn(Gn.id,this.urlSerializer.serialize(Gn.extractedUrl),this.urlSerializer.serialize(Gn.urlAfterRedirects),Gn.targetSnapshot);this.events.next(Wi)}));if(mn&&V.urlHandlingStrategy.shouldProcessUrl(V.rawUrlTree)){const{id:Gn,extractedUrl:Wi,source:br,restoredState:Ms,extras:Eo}=et,uo=new mi(Gn,this.urlSerializer.serialize(Wi),br,Ms);this.events.next(uo);const ho=Jn(0,this.rootComponentType).snapshot;return de={...et,targetSnapshot:ho,urlAfterRedirects:Wi,extras:{...Eo,skipLocationChange:!1,replaceUrl:!1}},(0,b.of)(de)}{const Gn="";return this.events.next(new ln(et.id,V.serializeUrl(de.extractedUrl),Gn,1)),V.rawUrlTree=et.rawUrl,et.resolve(null),r.E}}),(0,E.b)(et=>{const Nt=new An(et.id,this.urlSerializer.serialize(et.extractedUrl),this.urlSerializer.serialize(et.urlAfterRedirects),et.targetSnapshot);this.events.next(Nt)}),(0,_.U)(et=>de={...et,guards:ci(et.targetSnapshot,et.currentSnapshot,this.rootContexts)}),function Ko(G,te){return(0,A.z)(V=>{const{targetSnapshot:de,currentSnapshot:Le,guards:{canActivateChecks:Qe,canDeactivateChecks:et}}=V;return 0===et.length&&0===Qe.length?(0,b.of)({...V,guardsResult:!0}):function Yo(G,te,V,de){return(0,C.D)(G).pipe((0,A.z)(Le=>function En(G,te,V,de,Le){const Qe=te&&te.routeConfig?te.routeConfig.canDeactivate:null;if(!Qe||0===Qe.length)return(0,b.of)(!0);const et=Qe.map(Nt=>{const mn=nn(te)??Le,Ln=ni(Nt,mn);return $e(function zo(G){return G&&Jr(G.canDeactivate)}(Ln)?Ln.canDeactivate(G,te,V,de):mn.runInContext(()=>Ln(G,te,V,de))).pipe((0,T.P)())});return(0,b.of)(et).pipe(Hr())}(Le.component,Le.route,V,te,de)),(0,T.P)(Le=>!0!==Le,!0))}(et,de,Le,G).pipe((0,A.z)(Nt=>Nt&&function Ho(G){return"boolean"==typeof G}(Nt)?function ye(G,te,V,de){return(0,C.D)(te).pipe((0,O.b)(Le=>(0,c.z)(function he(G,te){return null!==G&&te&&te(new li(G)),(0,b.of)(!0)}(Le.route.parent,de),function _e(G,te){return null!==G&&te&&te(new Ct(G)),(0,b.of)(!0)}(Le.route,de),function Qt(G,te,V){const de=te[te.length-1],Qe=te.slice(0,te.length-1).reverse().map(et=>function Mi(G){const te=G.routeConfig?G.routeConfig.canActivateChild:null;return te&&0!==te.length?{node:G,guards:te}:null}(et)).filter(et=>null!==et).map(et=>(0,s.P)(()=>{const Nt=et.guards.map(mn=>{const Ln=nn(et.node)??V,Gn=ni(mn,Ln);return $e(function Ir(G){return G&&Jr(G.canActivateChild)}(Gn)?Gn.canActivateChild(de,G):Ln.runInContext(()=>Gn(de,G))).pipe((0,T.P)())});return(0,b.of)(Nt).pipe(Hr())}));return(0,b.of)(Qe).pipe(Hr())}(G,Le.path,V),function He(G,te,V){const de=te.routeConfig?te.routeConfig.canActivate:null;if(!de||0===de.length)return(0,b.of)(!0);const Le=de.map(Qe=>(0,s.P)(()=>{const et=nn(te)??V,Nt=ni(Qe,et);return $e(function oo(G){return G&&Jr(G.canActivate)}(Nt)?Nt.canActivate(te,G):et.runInContext(()=>Nt(te,G))).pipe((0,T.P)())}));return(0,b.of)(Le).pipe(Hr())}(G,Le.route,V))),(0,T.P)(Le=>!0!==Le,!0))}(de,Qe,G,te):(0,b.of)(Nt)),(0,_.U)(Nt=>({...V,guardsResult:Nt})))})}(this.environmentInjector,et=>this.events.next(et)),(0,E.b)(et=>{if(de.guardsResult=et.guardsResult,qe(et.guardsResult))throw fe(0,et.guardsResult);const Nt=new Yn(et.id,this.urlSerializer.serialize(et.extractedUrl),this.urlSerializer.serialize(et.urlAfterRedirects),et.targetSnapshot,!!et.guardsResult);this.events.next(Nt)}),(0,L.h)(et=>!!et.guardsResult||(V.restoreHistory(et),this.cancelNavigationTransition(et,"",3),!1)),Ro(et=>{if(et.guards.canActivateChecks.length)return(0,b.of)(et).pipe((0,E.b)(Nt=>{const mn=new si(Nt.id,this.urlSerializer.serialize(Nt.extractedUrl),this.urlSerializer.serialize(Nt.urlAfterRedirects),Nt.targetSnapshot);this.events.next(mn)}),(0,M.w)(Nt=>{let mn=!1;return(0,b.of)(Nt).pipe(function qo(G,te){return(0,A.z)(V=>{const{targetSnapshot:de,guards:{canActivateChecks:Le}}=V;if(!Le.length)return(0,b.of)(V);let Qe=0;return(0,C.D)(Le).pipe((0,O.b)(et=>function es(G,te,V,de){const Le=G.routeConfig,Qe=G._resolve;return void 0!==Le?.title&&!ns(Le)&&(Qe[$]=Le.title),function ts(G,te,V,de){const Le=function bo(G){return[...Object.keys(G),...Object.getOwnPropertySymbols(G)]}(G);if(0===Le.length)return(0,b.of)({});const Qe={};return(0,C.D)(Le).pipe((0,A.z)(et=>function Lo(G,te,V,de){const Le=nn(te)??de,Qe=ni(G,Le);return $e(Qe.resolve?Qe.resolve(te,V):Le.runInContext(()=>Qe(te,V)))}(G[et],te,V,de).pipe((0,T.P)(),(0,E.b)(Nt=>{Qe[et]=Nt}))),(0,S.h)(1),(0,k.h)(Qe),(0,D.K)(et=>Vr(et)?r.E:(0,d._)(et)))}(Qe,G,te,de).pipe((0,_.U)(et=>(G._resolvedData=et,G.data=Un(G,V).resolve,Le&&ns(Le)&&(G.data[$]=Le.title),null)))}(et.route,de,G,te)),(0,E.b)(()=>Qe++),(0,S.h)(1),(0,A.z)(et=>Qe===Le.length?(0,b.of)(V):r.E))})}(V.paramsInheritanceStrategy,this.environmentInjector),(0,E.b)({next:()=>mn=!0,complete:()=>{mn||(V.restoreHistory(Nt),this.cancelNavigationTransition(Nt,"",2))}}))}),(0,E.b)(Nt=>{const mn=new ii(Nt.id,this.urlSerializer.serialize(Nt.extractedUrl),this.urlSerializer.serialize(Nt.urlAfterRedirects),Nt.targetSnapshot);this.events.next(mn)}))}),Ro(et=>{const Nt=mn=>{const Ln=[];mn.routeConfig?.loadComponent&&!mn.routeConfig._loadedComponent&&Ln.push(this.configLoader.loadComponent(mn.routeConfig).pipe((0,E.b)(Gn=>{mn.component=Gn}),(0,_.U)(()=>{})));for(const Gn of mn.children)Ln.push(...Nt(Gn));return Ln};return(0,v.a)(Nt(et.targetSnapshot.root)).pipe((0,j.d)(),(0,x.q)(1))}),Ro(()=>this.afterPreactivation()),(0,_.U)(et=>{const Nt=function _r(G,te,V){const de=gi(G,te._root,V?V._root:void 0);return new pn(de,te)}(V.routeReuseStrategy,et.targetSnapshot,et.currentRouterState);return de={...et,targetRouterState:Nt}}),(0,E.b)(et=>{V.currentUrlTree=et.urlAfterRedirects,V.rawUrlTree=V.urlHandlingStrategy.merge(et.urlAfterRedirects,et.rawUrl),V.routerState=et.targetRouterState,"deferred"===V.urlUpdateStrategy&&(et.extras.skipLocationChange||V.setBrowserUrl(V.rawUrlTree,et),V.browserUrlTree=et.urlAfterRedirects)}),((G,te,V,de)=>(0,_.U)(Le=>(new zn(te,Le.targetRouterState,Le.currentRouterState,V,de).activate(G),Le)))(this.rootContexts,V.routeReuseStrategy,et=>this.events.next(et),this.inputBindingEnabled),(0,x.q)(1),(0,E.b)({next:et=>{Le=!0,this.lastSuccessfulNavigation=this.currentNavigation,V.navigated=!0,this.events.next(new Qn(et.id,this.urlSerializer.serialize(et.extractedUrl),this.urlSerializer.serialize(V.currentUrlTree))),V.titleStrategy?.updateTitle(et.targetRouterState.snapshot),et.resolve(!0)},complete:()=>{Le=!0}}),(0,F.x)(()=>{Le||Qe||this.cancelNavigationTransition(de,"",1),this.currentNavigation?.id===de.id&&(this.currentNavigation=null)}),(0,D.K)(et=>{if(Qe=!0,Gt(et)){Je(et)||(V.navigated=!0,V.restoreHistory(de,!0));const Nt=new ri(de.id,this.urlSerializer.serialize(de.extractedUrl),et.message,et.cancellationCode);if(this.events.next(Nt),Je(et)){const mn=V.urlHandlingStrategy.merge(et.url,V.rawUrlTree),Ln={skipLocationChange:de.extras.skipLocationChange,replaceUrl:"eager"===V.urlUpdateStrategy||vr(de.source)};V.scheduleNavigation(mn,In,null,Ln,{resolve:de.resolve,reject:de.reject,promise:de.promise})}else de.resolve(!1)}else{V.restoreHistory(de,!0);const Nt=new en(de.id,this.urlSerializer.serialize(de.extractedUrl),et,de.targetSnapshot??void 0);this.events.next(Nt);try{de.resolve(V.errorHandler(et))}catch(mn){de.reject(mn)}}return r.E}))}))}cancelNavigationTransition(V,de,Le){const Qe=new ri(V.id,this.urlSerializer.serialize(V.extractedUrl),de,Le);this.events.next(Qe),V.resolve(!1)}}return G.\u0275fac=function(V){return new(V||G)},G.\u0275prov=n.\u0275\u0275defineInjectable({token:G,factory:G.\u0275fac,providedIn:"root"}),G})();function vr(G){return G!==In}let Co=(()=>{class G{buildTitle(V){let de,Le=V.root;for(;void 0!==Le;)de=this.getResolvedTitleForRoute(Le)??de,Le=Le.children.find(Qe=>Qe.outlet===me);return de}getResolvedTitleForRoute(V){return V.data[$]}}return G.\u0275fac=function(V){return new(V||G)},G.\u0275prov=n.\u0275\u0275defineInjectable({token:G,factory:function(){return(0,n.inject)(Oo)},providedIn:"root"}),G})(),Oo=(()=>{class G extends Co{constructor(V){super(),this.title=V}updateTitle(V){const de=this.buildTitle(V);void 0!==de&&this.title.setTitle(de)}}return G.\u0275fac=function(V){return new(V||G)(n.\u0275\u0275inject(ne.Title))},G.\u0275prov=n.\u0275\u0275defineInjectable({token:G,factory:G.\u0275fac,providedIn:"root"}),G})(),Oi=(()=>{class G{}return G.\u0275fac=function(V){return new(V||G)},G.\u0275prov=n.\u0275\u0275defineInjectable({token:G,factory:function(){return(0,n.inject)(Ie)},providedIn:"root"}),G})();class z{shouldDetach(te){return!1}store(te,V){}shouldAttach(te){return!1}retrieve(te){return null}shouldReuseRoute(te,V){return te.routeConfig===V.routeConfig}}let Ie=(()=>{class G extends z{}return G.\u0275fac=function(){let te;return function(de){return(te||(te=n.\u0275\u0275getInheritedFactory(G)))(de||G)}}(),G.\u0275prov=n.\u0275\u0275defineInjectable({token:G,factory:G.\u0275fac,providedIn:"root"}),G})();const le=new n.InjectionToken("",{providedIn:"root",factory:()=>({})});let Fe=(()=>{class G{}return G.\u0275fac=function(V){return new(V||G)},G.\u0275prov=n.\u0275\u0275defineInjectable({token:G,factory:function(){return(0,n.inject)(ht)},providedIn:"root"}),G})(),ht=(()=>{class G{shouldProcessUrl(V){return!0}extract(V){return V}merge(V,de){return V}}return G.\u0275fac=function(V){return new(V||G)},G.\u0275prov=n.\u0275\u0275defineInjectable({token:G,factory:G.\u0275fac,providedIn:"root"}),G})();var Ht=function(G){return G[G.COMPLETE=0]="COMPLETE",G[G.FAILED=1]="FAILED",G[G.REDIRECTING=2]="REDIRECTING",G}(Ht||{});function Zt(G,te){G.events.pipe((0,L.h)(V=>V instanceof Qn||V instanceof ri||V instanceof en||V instanceof ln),(0,_.U)(V=>V instanceof Qn||V instanceof ln?Ht.COMPLETE:V instanceof ri&&(0===V.code||1===V.code)?Ht.REDIRECTING:Ht.FAILED),(0,L.h)(V=>V!==Ht.REDIRECTING),(0,x.q)(1)).subscribe(()=>{te()})}function jn(G){throw G}function Ni(G,te,V){return te.parse("/")}const ji={paths:"exact",fragment:"ignored",matrixParams:"ignored",queryParams:"exact"},pi={paths:"subset",fragment:"ignored",matrixParams:"ignored",queryParams:"subset"};let Rn=(()=>{class G{get navigationId(){return this.navigationTransitions.navigationId}get browserPageId(){if("computed"===this.canceledNavigationResolution)return this.location.getState()?.\u0275routerPageId}get events(){return this.navigationTransitions.events}constructor(){this.disposed=!1,this.currentPageId=0,this.console=(0,n.inject)(n.\u0275Console),this.isNgZoneEnabled=!1,this.options=(0,n.inject)(le,{optional:!0})||{},this.pendingTasks=(0,n.inject)(n.\u0275InitialRenderPendingTasks),this.errorHandler=this.options.errorHandler||jn,this.malformedUriErrorHandler=this.options.malformedUriErrorHandler||Ni,this.navigated=!1,this.lastSuccessfulId=-1,this.urlHandlingStrategy=(0,n.inject)(Fe),this.routeReuseStrategy=(0,n.inject)(Oi),this.titleStrategy=(0,n.inject)(Co),this.onSameUrlNavigation=this.options.onSameUrlNavigation||"ignore",this.paramsInheritanceStrategy=this.options.paramsInheritanceStrategy||"emptyOnly",this.urlUpdateStrategy=this.options.urlUpdateStrategy||"deferred",this.canceledNavigationResolution=this.options.canceledNavigationResolution||"replace",this.config=(0,n.inject)(Pr,{optional:!0})?.flat()??[],this.navigationTransitions=(0,n.inject)(yo),this.urlSerializer=(0,n.inject)(pe),this.location=(0,n.inject)(m.Location),this.componentInputBindingEnabled=!!(0,n.inject)(zi,{optional:!0}),this.isNgZoneEnabled=(0,n.inject)(n.NgZone)instanceof n.NgZone&&n.NgZone.isInAngularZone(),this.resetConfig(this.config),this.currentUrlTree=new rt,this.rawUrlTree=this.currentUrlTree,this.browserUrlTree=this.currentUrlTree,this.routerState=Jn(0,null),this.navigationTransitions.setupNavigations(this).subscribe(V=>{this.lastSuccessfulId=V.id,this.currentPageId=this.browserPageId??0},V=>{this.console.warn(`Unhandled Navigation Error: ${V}`)})}resetRootComponentType(V){this.routerState.root.component=V,this.navigationTransitions.rootComponentType=V}initialNavigation(){if(this.setUpLocationChangeListener(),!this.navigationTransitions.hasRequestedNavigation){const V=this.location.getState();this.navigateToSyncWithBrowser(this.location.path(!0),In,V)}}setUpLocationChangeListener(){this.locationSubscription||(this.locationSubscription=this.location.subscribe(V=>{const de="popstate"===V.type?"popstate":"hashchange";"popstate"===de&&setTimeout(()=>{this.navigateToSyncWithBrowser(V.url,de,V.state)},0)}))}navigateToSyncWithBrowser(V,de,Le){const Qe={replaceUrl:!0},et=Le?.navigationId?Le:null;if(Le){const mn={...Le};delete mn.navigationId,delete mn.\u0275routerPageId,0!==Object.keys(mn).length&&(Qe.state=mn)}const Nt=this.parseUrl(V);this.scheduleNavigation(Nt,de,et,Qe)}get url(){return this.serializeUrl(this.currentUrlTree)}getCurrentNavigation(){return this.navigationTransitions.currentNavigation}get lastSuccessfulNavigation(){return this.navigationTransitions.lastSuccessfulNavigation}resetConfig(V){this.config=V.map(Tt),this.navigated=!1,this.lastSuccessfulId=-1}ngOnDestroy(){this.dispose()}dispose(){this.navigationTransitions.complete(),this.locationSubscription&&(this.locationSubscription.unsubscribe(),this.locationSubscription=void 0),this.disposed=!0}createUrlTree(V,de={}){const{relativeTo:Le,queryParams:Qe,fragment:et,queryParamsHandling:Nt,preserveFragment:mn}=de,Ln=mn?this.currentUrlTree.fragment:et;let Wi,Gn=null;switch(Nt){case"merge":Gn={...this.currentUrlTree.queryParams,...Qe};break;case"preserve":Gn=this.currentUrlTree.queryParams;break;default:Gn=Qe||null}null!==Gn&&(Gn=this.removeEmptyProps(Gn));try{Wi=dt(Le?Le.snapshot:this.routerState.snapshot.root)}catch{("string"!=typeof V[0]||!V[0].startsWith("/"))&&(V=[]),Wi=this.currentUrlTree.root}return At(Wi,V,Gn,Ln??null)}navigateByUrl(V,de={skipLocationChange:!1}){const Le=qe(V)?V:this.parseUrl(V),Qe=this.urlHandlingStrategy.merge(Le,this.rawUrlTree);return this.scheduleNavigation(Qe,In,null,de)}navigate(V,de={skipLocationChange:!1}){return function qi(G){for(let te=0;te{const Qe=V[Le];return null!=Qe&&(de[Le]=Qe),de},{})}scheduleNavigation(V,de,Le,Qe,et){if(this.disposed)return Promise.resolve(!1);let Nt,mn,Ln;et?(Nt=et.resolve,mn=et.reject,Ln=et.promise):Ln=new Promise((Wi,br)=>{Nt=Wi,mn=br});const Gn=this.pendingTasks.add();return Zt(this,()=>{queueMicrotask(()=>this.pendingTasks.remove(Gn))}),this.navigationTransitions.handleNavigationRequest({source:de,restoredState:Le,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,rawUrl:V,extras:Qe,resolve:Nt,reject:mn,promise:Ln,currentSnapshot:this.routerState.snapshot,currentRouterState:this.routerState}),Ln.catch(Wi=>Promise.reject(Wi))}setBrowserUrl(V,de){const Le=this.urlSerializer.serialize(V);if(this.location.isCurrentPathEqualTo(Le)||de.extras.replaceUrl){const et={...de.extras.state,...this.generateNgRouterState(de.id,this.browserPageId)};this.location.replaceState(Le,"",et)}else{const Qe={...de.extras.state,...this.generateNgRouterState(de.id,(this.browserPageId??0)+1)};this.location.go(Le,"",Qe)}}restoreHistory(V,de=!1){if("computed"===this.canceledNavigationResolution){const Qe=this.currentPageId-(this.browserPageId??this.currentPageId);0!==Qe?this.location.historyGo(Qe):this.currentUrlTree===this.getCurrentNavigation()?.finalUrl&&0===Qe&&(this.resetState(V),this.browserUrlTree=V.currentUrlTree,this.resetUrlToCurrentUrlTree())}else"replace"===this.canceledNavigationResolution&&(de&&this.resetState(V),this.resetUrlToCurrentUrlTree())}resetState(V){this.routerState=V.currentRouterState,this.currentUrlTree=V.currentUrlTree,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,V.rawUrl)}resetUrlToCurrentUrlTree(){this.location.replaceState(this.urlSerializer.serialize(this.rawUrlTree),"",this.generateNgRouterState(this.lastSuccessfulId,this.currentPageId))}generateNgRouterState(V,de){return"computed"===this.canceledNavigationResolution?{navigationId:V,\u0275routerPageId:de}:{navigationId:V}}}return G.\u0275fac=function(V){return new(V||G)},G.\u0275prov=n.\u0275\u0275defineInjectable({token:G,factory:G.\u0275fac,providedIn:"root"}),G})(),Si=(()=>{class G{constructor(V,de,Le,Qe,et,Nt){this.router=V,this.route=de,this.tabIndexAttribute=Le,this.renderer=Qe,this.el=et,this.locationStrategy=Nt,this.href=null,this.commands=null,this.onChanges=new h.x,this.preserveFragment=!1,this.skipLocationChange=!1,this.replaceUrl=!1;const mn=et.nativeElement.tagName?.toLowerCase();this.isAnchorElement="a"===mn||"area"===mn,this.isAnchorElement?this.subscription=V.events.subscribe(Ln=>{Ln instanceof Qn&&this.updateHref()}):this.setTabIndexIfNotOnNativeEl("0")}setTabIndexIfNotOnNativeEl(V){null!=this.tabIndexAttribute||this.isAnchorElement||this.applyAttributeValue("tabindex",V)}ngOnChanges(V){this.isAnchorElement&&this.updateHref(),this.onChanges.next(this)}set routerLink(V){null!=V?(this.commands=Array.isArray(V)?V:[V],this.setTabIndexIfNotOnNativeEl("0")):(this.commands=null,this.setTabIndexIfNotOnNativeEl(null))}onClick(V,de,Le,Qe,et){return!!(null===this.urlTree||this.isAnchorElement&&(0!==V||de||Le||Qe||et||"string"==typeof this.target&&"_self"!=this.target))||(this.router.navigateByUrl(this.urlTree,{skipLocationChange:this.skipLocationChange,replaceUrl:this.replaceUrl,state:this.state}),!this.isAnchorElement)}ngOnDestroy(){this.subscription?.unsubscribe()}updateHref(){this.href=null!==this.urlTree&&this.locationStrategy?this.locationStrategy?.prepareExternalUrl(this.router.serializeUrl(this.urlTree)):null;const V=null===this.href?null:(0,n.\u0275\u0275sanitizeUrlOrResourceUrl)(this.href,this.el.nativeElement.tagName.toLowerCase(),"href");this.applyAttributeValue("href",V)}applyAttributeValue(V,de){const Le=this.renderer,Qe=this.el.nativeElement;null!==de?Le.setAttribute(Qe,V,de):Le.removeAttribute(Qe,V)}get urlTree(){return null===this.commands?null:this.router.createUrlTree(this.commands,{relativeTo:void 0!==this.relativeTo?this.relativeTo:this.route,queryParams:this.queryParams,fragment:this.fragment,queryParamsHandling:this.queryParamsHandling,preserveFragment:this.preserveFragment})}}return G.\u0275fac=function(V){return new(V||G)(n.\u0275\u0275directiveInject(Rn),n.\u0275\u0275directiveInject(kn),n.\u0275\u0275injectAttribute("tabindex"),n.\u0275\u0275directiveInject(n.Renderer2),n.\u0275\u0275directiveInject(n.ElementRef),n.\u0275\u0275directiveInject(m.LocationStrategy))},G.\u0275dir=n.\u0275\u0275defineDirective({type:G,selectors:[["","routerLink",""]],hostVars:1,hostBindings:function(V,de){1&V&&n.\u0275\u0275listener("click",function(Qe){return de.onClick(Qe.button,Qe.ctrlKey,Qe.shiftKey,Qe.altKey,Qe.metaKey)}),2&V&&n.\u0275\u0275attribute("target",de.target)},inputs:{target:"target",queryParams:"queryParams",fragment:"fragment",queryParamsHandling:"queryParamsHandling",state:"state",relativeTo:"relativeTo",preserveFragment:["preserveFragment","preserveFragment",n.booleanAttribute],skipLocationChange:["skipLocationChange","skipLocationChange",n.booleanAttribute],replaceUrl:["replaceUrl","replaceUrl",n.booleanAttribute],routerLink:"routerLink"},standalone:!0,features:[n.\u0275\u0275InputTransformsFeature,n.\u0275\u0275NgOnChangesFeature]}),G})(),ir=(()=>{class G{get isActive(){return this._isActive}constructor(V,de,Le,Qe,et){this.router=V,this.element=de,this.renderer=Le,this.cdr=Qe,this.link=et,this.classes=[],this._isActive=!1,this.routerLinkActiveOptions={exact:!1},this.isActiveChange=new n.EventEmitter,this.routerEventsSubscription=V.events.subscribe(Nt=>{Nt instanceof Qn&&this.update()})}ngAfterContentInit(){(0,b.of)(this.links.changes,(0,b.of)(null)).pipe((0,se.J)()).subscribe(V=>{this.update(),this.subscribeToEachLinkOnChanges()})}subscribeToEachLinkOnChanges(){this.linkInputChangesSubscription?.unsubscribe();const V=[...this.links.toArray(),this.link].filter(de=>!!de).map(de=>de.onChanges);this.linkInputChangesSubscription=(0,C.D)(V).pipe((0,se.J)()).subscribe(de=>{this._isActive!==this.isLinkActive(this.router)(de)&&this.update()})}set routerLinkActive(V){const de=Array.isArray(V)?V:V.split(" ");this.classes=de.filter(Le=>!!Le)}ngOnChanges(V){this.update()}ngOnDestroy(){this.routerEventsSubscription.unsubscribe(),this.linkInputChangesSubscription?.unsubscribe()}update(){!this.links||!this.router.navigated||queueMicrotask(()=>{const V=this.hasActiveLinks();this._isActive!==V&&(this._isActive=V,this.cdr.markForCheck(),this.classes.forEach(de=>{V?this.renderer.addClass(this.element.nativeElement,de):this.renderer.removeClass(this.element.nativeElement,de)}),V&&void 0!==this.ariaCurrentWhenActive?this.renderer.setAttribute(this.element.nativeElement,"aria-current",this.ariaCurrentWhenActive.toString()):this.renderer.removeAttribute(this.element.nativeElement,"aria-current"),this.isActiveChange.emit(V))})}isLinkActive(V){const de=function Ar(G){return!!G.paths}(this.routerLinkActiveOptions)?this.routerLinkActiveOptions:this.routerLinkActiveOptions.exact||!1;return Le=>!!Le.urlTree&&V.isActive(Le.urlTree,de)}hasActiveLinks(){const V=this.isLinkActive(this.router);return this.link&&V(this.link)||this.links.some(V)}}return G.\u0275fac=function(V){return new(V||G)(n.\u0275\u0275directiveInject(Rn),n.\u0275\u0275directiveInject(n.ElementRef),n.\u0275\u0275directiveInject(n.Renderer2),n.\u0275\u0275directiveInject(n.ChangeDetectorRef),n.\u0275\u0275directiveInject(Si,8))},G.\u0275dir=n.\u0275\u0275defineDirective({type:G,selectors:[["","routerLinkActive",""]],contentQueries:function(V,de,Le){if(1&V&&n.\u0275\u0275contentQuery(Le,Si,5),2&V){let Qe;n.\u0275\u0275queryRefresh(Qe=n.\u0275\u0275loadQuery())&&(de.links=Qe)}},inputs:{routerLinkActiveOptions:"routerLinkActiveOptions",ariaCurrentWhenActive:"ariaCurrentWhenActive",routerLinkActive:"routerLinkActive"},outputs:{isActiveChange:"isActiveChange"},exportAs:["routerLinkActive"],standalone:!0,features:[n.\u0275\u0275NgOnChangesFeature]}),G})();class wr{}let Kn=(()=>{class G{preload(V,de){return de().pipe((0,D.K)(()=>(0,b.of)(null)))}}return G.\u0275fac=function(V){return new(V||G)},G.\u0275prov=n.\u0275\u0275defineInjectable({token:G,factory:G.\u0275fac,providedIn:"root"}),G})(),fr=(()=>{class G{preload(V,de){return(0,b.of)(null)}}return G.\u0275fac=function(V){return new(V||G)},G.\u0275prov=n.\u0275\u0275defineInjectable({token:G,factory:G.\u0275fac,providedIn:"root"}),G})(),Kr=(()=>{class G{constructor(V,de,Le,Qe,et){this.router=V,this.injector=Le,this.preloadingStrategy=Qe,this.loader=et}setUpPreloading(){this.subscription=this.router.events.pipe((0,L.h)(V=>V instanceof Qn),(0,O.b)(()=>this.preload())).subscribe(()=>{})}preload(){return this.processRoutes(this.injector,this.router.config)}ngOnDestroy(){this.subscription&&this.subscription.unsubscribe()}processRoutes(V,de){const Le=[];for(const Qe of de){Qe.providers&&!Qe._injector&&(Qe._injector=(0,n.createEnvironmentInjector)(Qe.providers,V,`Route: ${Qe.path}`));const et=Qe._injector??V,Nt=Qe._loadedInjector??et;(Qe.loadChildren&&!Qe._loadedRoutes&&void 0===Qe.canLoad||Qe.loadComponent&&!Qe._loadedComponent)&&Le.push(this.preloadConfig(et,Qe)),(Qe.children||Qe._loadedRoutes)&&Le.push(this.processRoutes(Nt,Qe.children??Qe._loadedRoutes))}return(0,C.D)(Le).pipe((0,se.J)())}preloadConfig(V,de){return this.preloadingStrategy.preload(de,()=>{let Le;Le=de.loadChildren&&void 0===de.canLoad?this.loader.loadChildren(V,de):(0,b.of)(null);const Qe=Le.pipe((0,A.z)(et=>null===et?(0,b.of)(void 0):(de._loadedRoutes=et.routes,de._loadedInjector=et.injector,this.processRoutes(et.injector??V,et.routes))));if(de.loadComponent&&!de._loadedComponent){const et=this.loader.loadComponent(de);return(0,C.D)([Qe,et]).pipe((0,se.J)())}return Qe})}}return G.\u0275fac=function(V){return new(V||G)(n.\u0275\u0275inject(Rn),n.\u0275\u0275inject(n.Compiler),n.\u0275\u0275inject(n.EnvironmentInjector),n.\u0275\u0275inject(wr),n.\u0275\u0275inject(to))},G.\u0275prov=n.\u0275\u0275defineInjectable({token:G,factory:G.\u0275fac,providedIn:"root"}),G})();const lr=new n.InjectionToken("");let Nr=(()=>{class G{constructor(V,de,Le,Qe,et={}){this.urlSerializer=V,this.transitions=de,this.viewportScroller=Le,this.zone=Qe,this.options=et,this.lastId=0,this.lastSource="imperative",this.restoredId=0,this.store={},et.scrollPositionRestoration=et.scrollPositionRestoration||"disabled",et.anchorScrolling=et.anchorScrolling||"disabled"}init(){"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.setHistoryScrollRestoration("manual"),this.routerEventsSubscription=this.createScrollEvents(),this.scrollEventsSubscription=this.consumeScrollEvents()}createScrollEvents(){return this.transitions.events.subscribe(V=>{V instanceof mi?(this.store[this.lastId]=this.viewportScroller.getScrollPosition(),this.lastSource=V.navigationTrigger,this.restoredId=V.restoredState?V.restoredState.navigationId:0):V instanceof Qn?(this.lastId=V.id,this.scheduleScrollEvent(V,this.urlSerializer.parse(V.urlAfterRedirects).fragment)):V instanceof ln&&0===V.code&&(this.lastSource=void 0,this.restoredId=0,this.scheduleScrollEvent(V,this.urlSerializer.parse(V.url).fragment))})}consumeScrollEvents(){return this.transitions.events.subscribe(V=>{V instanceof Ae&&(V.position?"top"===this.options.scrollPositionRestoration?this.viewportScroller.scrollToPosition([0,0]):"enabled"===this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition(V.position):V.anchor&&"enabled"===this.options.anchorScrolling?this.viewportScroller.scrollToAnchor(V.anchor):"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition([0,0]))})}scheduleScrollEvent(V,de){this.zone.runOutsideAngular(()=>{setTimeout(()=>{this.zone.run(()=>{this.transitions.events.next(new Ae(V,"popstate"===this.lastSource?this.store[this.restoredId]:null,de))})},0)})}ngOnDestroy(){this.routerEventsSubscription?.unsubscribe(),this.scrollEventsSubscription?.unsubscribe()}}return G.\u0275fac=function(V){n.\u0275\u0275invalidFactory()},G.\u0275prov=n.\u0275\u0275defineInjectable({token:G,factory:G.\u0275fac}),G})();function js(G,...te){return(0,n.makeEnvironmentProviders)([{provide:Pr,multi:!0,useValue:G},[],{provide:kn,useFactory:is,deps:[Rn]},{provide:n.APP_BOOTSTRAP_LISTENER,multi:!0,useFactory:zs},te.map(V=>V.\u0275providers)])}function is(G){return G.routerState.root}function mr(G,te){return{\u0275kind:G,\u0275providers:te}}function gs(G){return[{provide:Pr,multi:!0,useValue:G},[]]}function rs(G={}){return mr(4,[{provide:lr,useFactory:()=>{const V=(0,n.inject)(m.ViewportScroller),de=(0,n.inject)(n.NgZone),Le=(0,n.inject)(yo),Qe=(0,n.inject)(pe);return new Nr(Qe,Le,V,de,G)}}])}function zs(){const G=(0,n.inject)(n.Injector);return te=>{const V=G.get(n.ApplicationRef);if(te!==V.components[0])return;const de=G.get(Rn),Le=G.get(dn);1===G.get(yi)&&de.initialNavigation(),G.get(bs,null,n.InjectFlags.Optional)?.setUpPreloading(),G.get(lr,null,n.InjectFlags.Optional)?.init(),de.resetRootComponentType(V.componentTypes[0]),Le.closed||(Le.next(),Le.complete(),Le.unsubscribe())}}const dn=new n.InjectionToken("",{factory:()=>new h.x}),yi=new n.InjectionToken("",{providedIn:"root",factory:()=>1});function _s(){return mr(2,[{provide:yi,useValue:0},{provide:n.APP_INITIALIZER,multi:!0,deps:[n.Injector],useFactory:te=>{const V=te.get(m.LOCATION_INITIALIZED,Promise.resolve());return()=>V.then(()=>new Promise(de=>{const Le=te.get(Rn),Qe=te.get(dn);Zt(Le,()=>{de(!0)}),te.get(yo).afterPreactivation=()=>(de(!0),Qe.closed?(0,b.of)(void 0):Qe),Le.initialNavigation()}))}}])}function vs(){return mr(3,[{provide:n.APP_INITIALIZER,multi:!0,useFactory:()=>{const te=(0,n.inject)(Rn);return()=>{te.setUpLocationChangeListener()}}},{provide:yi,useValue:2}])}function cr(){let G=[];return G=[],mr(1,G)}const bs=new n.InjectionToken("");function xo(G){return mr(0,[{provide:bs,useExisting:Kr},{provide:wr,useExisting:G}])}function Ur(G){return mr(5,[{provide:le,useValue:G}])}function ys(){return mr(5,[{provide:m.LocationStrategy,useClass:m.HashLocationStrategy}])}function Cs(G){return mr(7,[{provide:n.ENVIRONMENT_INITIALIZER,multi:!0,useValue:()=>{const V=(0,n.inject)(n.EnvironmentInjector);(0,n.inject)(Rn).events.subscribe(de=>{de instanceof en&&V.runInContext(()=>G(de))})}}])}function Ws(){return mr(8,[xi,{provide:zi,useExisting:xi}])}const xs=new n.InjectionToken("ROUTER_FORROOT_GUARD"),dr=[m.Location,{provide:pe,useClass:Te},Rn,ge,{provide:kn,useFactory:is,deps:[Rn]},to,[]];function Yr(){return new n.NgProbeToken("Router",Rn)}let Br=(()=>{class G{constructor(V){}static forRoot(V,de){return{ngModule:G,providers:[dr,[],{provide:Pr,multi:!0,useValue:V},{provide:xs,useFactory:Ks,deps:[[Rn,new n.Optional,new n.SkipSelf]]},{provide:le,useValue:de||{}},de?.useHash?{provide:m.LocationStrategy,useClass:m.HashLocationStrategy}:{provide:m.LocationStrategy,useClass:m.PathLocationStrategy},{provide:lr,useFactory:()=>{const G=(0,n.inject)(m.ViewportScroller),te=(0,n.inject)(n.NgZone),V=(0,n.inject)(le),de=(0,n.inject)(yo),Le=(0,n.inject)(pe);return V.scrollOffset&&G.setOffset(V.scrollOffset),new Nr(Le,de,G,te,V)}},de?.preloadingStrategy?xo(de.preloadingStrategy).\u0275providers:[],{provide:n.NgProbeToken,multi:!0,useFactory:Yr},de?.initialNavigation?Oa(de):[],de?.bindToComponentInputs?Ws().\u0275providers:[],[{provide:co,useFactory:zs},{provide:n.APP_BOOTSTRAP_LISTENER,multi:!0,useExisting:co}]]}}static forChild(V){return{ngModule:G,providers:[{provide:Pr,multi:!0,useValue:V}]}}}return G.\u0275fac=function(V){return new(V||G)(n.\u0275\u0275inject(xs,8))},G.\u0275mod=n.\u0275\u0275defineNgModule({type:G}),G.\u0275inj=n.\u0275\u0275defineInjector({}),G})();function Ks(G){return"guarded"}function Oa(G){return["disabled"===G.initialNavigation?vs().\u0275providers:[],"enabledBlocking"===G.initialNavigation?_s().\u0275providers:[]]}const co=new n.InjectionToken("");function Fo(G){return G.map(te=>(...V)=>(0,n.inject)(te).canMatch(...V))}function Ys(G){return G.map(te=>(...V)=>(0,n.inject)(te).canActivate(...V))}function os(G){return G.map(te=>(...V)=>(0,n.inject)(te).canActivateChild(...V))}function Pa(G){return G.map(te=>(...V)=>(0,n.inject)(te).canDeactivate(...V))}function wo(G){return(...te)=>(0,n.inject)(G).resolve(...te)}const No=new n.Version("16.1.7")},9515:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{DEFAULT_LANGUAGE:()=>N,FakeMissingTranslationHandler:()=>_,MissingTranslationHandler:()=>m,TranslateCompiler:()=>O,TranslateDefaultParser:()=>T,TranslateDirective:()=>F,TranslateFakeCompiler:()=>E,TranslateFakeLoader:()=>h,TranslateLoader:()=>u,TranslateModule:()=>se,TranslateParser:()=>A,TranslatePipe:()=>Y,TranslateService:()=>k,TranslateStore:()=>D,USE_DEFAULT_LANG:()=>j,USE_EXTEND:()=>S,USE_STORE:()=>R});var n=g(1180),p=g(5879),C=g(2096),b=g(2664),o=g(9315),v=g(34),a=g(4911),c=g(8180),s=g(7081),l=g(7398),d=g(6328),r=g(4664);class u{}let h=(()=>{class ne extends u{getTranslation($){return(0,C.of)({})}}return(0,n.Z)(ne,"\u0275fac",function(){let me;return function(q){return(me||(me=p.\u0275\u0275getInheritedFactory(ne)))(q||ne)}}()),(0,n.Z)(ne,"\u0275prov",p.\u0275\u0275defineInjectable({token:ne,factory:ne.\u0275fac})),ne})();class m{}let _=(()=>{class ne{handle($){return $.key}}return(0,n.Z)(ne,"\u0275fac",function($){return new($||ne)}),(0,n.Z)(ne,"\u0275prov",p.\u0275\u0275defineInjectable({token:ne,factory:ne.\u0275fac})),ne})();function M(ne,me){if(ne===me)return!0;if(null===ne||null===me)return!1;if(ne!=ne&&me!=me)return!0;let Q,ue,Me,$=typeof ne;if($==typeof me&&"object"==$){if(!Array.isArray(ne)){if(Array.isArray(me))return!1;for(ue in Me=Object.create(null),ne){if(!M(ne[ue],me[ue]))return!1;Me[ue]=!0}for(ue in me)if(!(ue in Me)&&typeof me[ue]<"u")return!1;return!0}if(!Array.isArray(me))return!1;if((Q=ne.length)==me.length){for(ue=0;ue{w(me[q])?q in ne?$[q]=L(ne[q],me[q]):Object.assign($,{[q]:me[q]}):Object.assign($,{[q]:me[q]})}),$}class A{}let T=(()=>{class ne extends A{constructor(...$){super(...$),(0,n.Z)(this,"templateMatcher",/{{\s?([^{}\s]*)\s?}}/g)}interpolate($,q){let Q;return Q="string"==typeof $?this.interpolateString($,q):"function"==typeof $?this.interpolateFunction($,q):$,Q}getValue($,q){let Q="string"==typeof q?q.split("."):[q];q="";do{q+=Q.shift(),!x($)||!x($[q])||"object"!=typeof $[q]&&Q.length?Q.length?q+=".":$=void 0:($=$[q],q="")}while(Q.length);return $}interpolateFunction($,q){return $(q)}interpolateString($,q){return q?$.replace(this.templateMatcher,(Q,ue)=>{let Me=this.getValue(q,ue);return x(Me)?Me:Q}):$}}return(0,n.Z)(ne,"\u0275fac",function(){let me;return function(q){return(me||(me=p.\u0275\u0275getInheritedFactory(ne)))(q||ne)}}()),(0,n.Z)(ne,"\u0275prov",p.\u0275\u0275defineInjectable({token:ne,factory:ne.\u0275fac})),ne})();class O{}let E=(()=>{class ne extends O{compile($,q){return $}compileTranslations($,q){return $}}return(0,n.Z)(ne,"\u0275fac",function(){let me;return function(q){return(me||(me=p.\u0275\u0275getInheritedFactory(ne)))(q||ne)}}()),(0,n.Z)(ne,"\u0275prov",p.\u0275\u0275defineInjectable({token:ne,factory:ne.\u0275fac})),ne})();class D{constructor(){(0,n.Z)(this,"defaultLang",void 0),(0,n.Z)(this,"currentLang",this.defaultLang),(0,n.Z)(this,"translations",{}),(0,n.Z)(this,"langs",[]),(0,n.Z)(this,"onTranslationChange",new p.EventEmitter),(0,n.Z)(this,"onLangChange",new p.EventEmitter),(0,n.Z)(this,"onDefaultLangChange",new p.EventEmitter)}}const R=new p.InjectionToken("USE_STORE"),j=new p.InjectionToken("USE_DEFAULT_LANG"),N=new p.InjectionToken("DEFAULT_LANGUAGE"),S=new p.InjectionToken("USE_EXTEND");let k=(()=>{class ne{get onTranslationChange(){return this.isolate?this._onTranslationChange:this.store.onTranslationChange}get onLangChange(){return this.isolate?this._onLangChange:this.store.onLangChange}get onDefaultLangChange(){return this.isolate?this._onDefaultLangChange:this.store.onDefaultLangChange}get defaultLang(){return this.isolate?this._defaultLang:this.store.defaultLang}set defaultLang($){this.isolate?this._defaultLang=$:this.store.defaultLang=$}get currentLang(){return this.isolate?this._currentLang:this.store.currentLang}set currentLang($){this.isolate?this._currentLang=$:this.store.currentLang=$}get langs(){return this.isolate?this._langs:this.store.langs}set langs($){this.isolate?this._langs=$:this.store.langs=$}get translations(){return this.isolate?this._translations:this.store.translations}set translations($){this.isolate?this._translations=$:this.store.translations=$}constructor($,q,Q,ue,Me,Oe=!0,Xe=!1,Be=!1,$e){(0,n.Z)(this,"store",void 0),(0,n.Z)(this,"currentLoader",void 0),(0,n.Z)(this,"compiler",void 0),(0,n.Z)(this,"parser",void 0),(0,n.Z)(this,"missingTranslationHandler",void 0),(0,n.Z)(this,"useDefaultLang",void 0),(0,n.Z)(this,"isolate",void 0),(0,n.Z)(this,"extend",void 0),(0,n.Z)(this,"loadingTranslations",void 0),(0,n.Z)(this,"pending",!1),(0,n.Z)(this,"_onTranslationChange",new p.EventEmitter),(0,n.Z)(this,"_onLangChange",new p.EventEmitter),(0,n.Z)(this,"_onDefaultLangChange",new p.EventEmitter),(0,n.Z)(this,"_defaultLang",void 0),(0,n.Z)(this,"_currentLang",void 0),(0,n.Z)(this,"_langs",[]),(0,n.Z)(this,"_translations",{}),(0,n.Z)(this,"_translationRequests",{}),this.store=$,this.currentLoader=q,this.compiler=Q,this.parser=ue,this.missingTranslationHandler=Me,this.useDefaultLang=Oe,this.isolate=Xe,this.extend=Be,$e&&this.setDefaultLang($e)}setDefaultLang($){if($===this.defaultLang)return;let q=this.retrieveTranslations($);typeof q<"u"?(null==this.defaultLang&&(this.defaultLang=$),q.pipe((0,c.q)(1)).subscribe(Q=>{this.changeDefaultLang($)})):this.changeDefaultLang($)}getDefaultLang(){return this.defaultLang}use($){if($===this.currentLang)return(0,C.of)(this.translations[$]);let q=this.retrieveTranslations($);return typeof q<"u"?(this.currentLang||(this.currentLang=$),q.pipe((0,c.q)(1)).subscribe(Q=>{this.changeLang($)}),q):(this.changeLang($),(0,C.of)(this.translations[$]))}retrieveTranslations($){let q;return(typeof this.translations[$]>"u"||this.extend)&&(this._translationRequests[$]=this._translationRequests[$]||this.getTranslation($),q=this._translationRequests[$]),q}getTranslation($){this.pending=!0;const q=this.currentLoader.getTranslation($).pipe((0,s.d)(1),(0,c.q)(1));return this.loadingTranslations=q.pipe((0,l.U)(Q=>this.compiler.compileTranslations(Q,$)),(0,s.d)(1),(0,c.q)(1)),this.loadingTranslations.subscribe({next:Q=>{this.translations[$]=this.extend&&this.translations[$]?{...Q,...this.translations[$]}:Q,this.updateLangs(),this.pending=!1},error:Q=>{this.pending=!1}}),q}setTranslation($,q,Q=!1){q=this.compiler.compileTranslations(q,$),this.translations[$]=(Q||this.extend)&&this.translations[$]?L(this.translations[$],q):q,this.updateLangs(),this.onTranslationChange.emit({lang:$,translations:this.translations[$]})}getLangs(){return this.langs}addLangs($){$.forEach(q=>{-1===this.langs.indexOf(q)&&this.langs.push(q)})}updateLangs(){this.addLangs(Object.keys(this.translations))}getParsedResult($,q,Q){let ue;if(q instanceof Array){let Me={},Oe=!1;for(let Xe of q)Me[Xe]=this.getParsedResult($,Xe,Q),(0,b.b)(Me[Xe])&&(Oe=!0);if(Oe){const Xe=q.map(Be=>(0,b.b)(Me[Be])?Me[Be]:(0,C.of)(Me[Be]));return(0,o.D)(Xe).pipe((0,l.U)(Be=>{let $e={};return Be.forEach((st,Mt)=>{$e[q[Mt]]=st}),$e}))}return Me}if($&&(ue=this.parser.interpolate(this.parser.getValue($,q),Q)),typeof ue>"u"&&null!=this.defaultLang&&this.defaultLang!==this.currentLang&&this.useDefaultLang&&(ue=this.parser.interpolate(this.parser.getValue(this.translations[this.defaultLang],q),Q)),typeof ue>"u"){let Me={key:q,translateService:this};typeof Q<"u"&&(Me.interpolateParams=Q),ue=this.missingTranslationHandler.handle(Me)}return typeof ue<"u"?ue:q}get($,q){if(!x($)||!$.length)throw new Error('Parameter "key" required');if(this.pending)return this.loadingTranslations.pipe((0,d.b)(Q=>(Q=this.getParsedResult(Q,$,q),(0,b.b)(Q)?Q:(0,C.of)(Q))));{let Q=this.getParsedResult(this.translations[this.currentLang],$,q);return(0,b.b)(Q)?Q:(0,C.of)(Q)}}getStreamOnTranslationChange($,q){if(!x($)||!$.length)throw new Error('Parameter "key" required');return(0,v.z)((0,a.P)(()=>this.get($,q)),this.onTranslationChange.pipe((0,r.w)(Q=>{const ue=this.getParsedResult(Q.translations,$,q);return"function"==typeof ue.subscribe?ue:(0,C.of)(ue)})))}stream($,q){if(!x($)||!$.length)throw new Error('Parameter "key" required');return(0,v.z)((0,a.P)(()=>this.get($,q)),this.onLangChange.pipe((0,r.w)(Q=>{const ue=this.getParsedResult(Q.translations,$,q);return(0,b.b)(ue)?ue:(0,C.of)(ue)})))}instant($,q){if(!x($)||!$.length)throw new Error('Parameter "key" required');let Q=this.getParsedResult(this.translations[this.currentLang],$,q);if((0,b.b)(Q)){if($ instanceof Array){let ue={};return $.forEach((Me,Oe)=>{ue[$[Oe]]=$[Oe]}),ue}return $}return Q}set($,q,Q=this.currentLang){this.translations[Q][$]=this.compiler.compile(q,Q),this.updateLangs(),this.onTranslationChange.emit({lang:Q,translations:this.translations[Q]})}changeLang($){this.currentLang=$,this.onLangChange.emit({lang:$,translations:this.translations[$]}),null==this.defaultLang&&this.changeDefaultLang($)}changeDefaultLang($){this.defaultLang=$,this.onDefaultLangChange.emit({lang:$,translations:this.translations[$]})}reloadLang($){return this.resetLang($),this.getTranslation($)}resetLang($){this._translationRequests[$]=void 0,this.translations[$]=void 0}getBrowserLang(){if(typeof window>"u"||typeof window.navigator>"u")return;let $=window.navigator.languages?window.navigator.languages[0]:null;return $=$||window.navigator.language||window.navigator.browserLanguage||window.navigator.userLanguage,typeof $>"u"?void 0:(-1!==$.indexOf("-")&&($=$.split("-")[0]),-1!==$.indexOf("_")&&($=$.split("_")[0]),$)}getBrowserCultureLang(){if(typeof window>"u"||typeof window.navigator>"u")return;let $=window.navigator.languages?window.navigator.languages[0]:null;return $=$||window.navigator.language||window.navigator.browserLanguage||window.navigator.userLanguage,$}}return(0,n.Z)(ne,"\u0275fac",function($){return new($||ne)(p.\u0275\u0275inject(D),p.\u0275\u0275inject(u),p.\u0275\u0275inject(O),p.\u0275\u0275inject(A),p.\u0275\u0275inject(m),p.\u0275\u0275inject(j),p.\u0275\u0275inject(R),p.\u0275\u0275inject(S),p.\u0275\u0275inject(N))}),(0,n.Z)(ne,"\u0275prov",p.\u0275\u0275defineInjectable({token:ne,factory:ne.\u0275fac})),ne})(),F=(()=>{class ne{set translate($){$&&(this.key=$,this.checkNodes())}set translateParams($){M(this.currentParams,$)||(this.currentParams=$,this.checkNodes(!0))}constructor($,q,Q){(0,n.Z)(this,"translateService",void 0),(0,n.Z)(this,"element",void 0),(0,n.Z)(this,"_ref",void 0),(0,n.Z)(this,"key",void 0),(0,n.Z)(this,"lastParams",void 0),(0,n.Z)(this,"currentParams",void 0),(0,n.Z)(this,"onLangChangeSub",void 0),(0,n.Z)(this,"onDefaultLangChangeSub",void 0),(0,n.Z)(this,"onTranslationChangeSub",void 0),this.translateService=$,this.element=q,this._ref=Q,this.onTranslationChangeSub||(this.onTranslationChangeSub=this.translateService.onTranslationChange.subscribe(ue=>{ue.lang===this.translateService.currentLang&&this.checkNodes(!0,ue.translations)})),this.onLangChangeSub||(this.onLangChangeSub=this.translateService.onLangChange.subscribe(ue=>{this.checkNodes(!0,ue.translations)})),this.onDefaultLangChangeSub||(this.onDefaultLangChangeSub=this.translateService.onDefaultLangChange.subscribe(ue=>{this.checkNodes(!0)}))}ngAfterViewChecked(){this.checkNodes()}checkNodes($=!1,q){let Q=this.element.nativeElement.childNodes;Q.length||(this.setContent(this.element.nativeElement,this.key),Q=this.element.nativeElement.childNodes);for(let ue=0;ue{Me!==$&&(q.lastKey=$),q.originalContent||(q.originalContent=this.getContent(q)),q.currentValue=x(Me)?Me:q.originalContent||$,this.setContent(q,this.key?q.currentValue:q.originalContent.replace($,q.currentValue)),this._ref.markForCheck()};if(x(Q)){let Me=this.translateService.getParsedResult(Q,$,this.currentParams);(0,b.b)(Me)?Me.subscribe({next:ue}):ue(Me)}else this.translateService.get($,this.currentParams).subscribe(ue)}}getContent($){return x($.textContent)?$.textContent:$.data}setContent($,q){x($.textContent)?$.textContent=q:$.data=q}ngOnDestroy(){this.onLangChangeSub&&this.onLangChangeSub.unsubscribe(),this.onDefaultLangChangeSub&&this.onDefaultLangChangeSub.unsubscribe(),this.onTranslationChangeSub&&this.onTranslationChangeSub.unsubscribe()}}return(0,n.Z)(ne,"\u0275fac",function($){return new($||ne)(p.\u0275\u0275directiveInject(k),p.\u0275\u0275directiveInject(p.ElementRef),p.\u0275\u0275directiveInject(p.ChangeDetectorRef))}),(0,n.Z)(ne,"\u0275dir",p.\u0275\u0275defineDirective({type:ne,selectors:[["","translate",""],["","ngx-translate",""]],inputs:{translate:"translate",translateParams:"translateParams"}})),ne})(),Y=(()=>{class ne{constructor($,q){(0,n.Z)(this,"translate",void 0),(0,n.Z)(this,"_ref",void 0),(0,n.Z)(this,"value",""),(0,n.Z)(this,"lastKey",null),(0,n.Z)(this,"lastParams",[]),(0,n.Z)(this,"onTranslationChange",void 0),(0,n.Z)(this,"onLangChange",void 0),(0,n.Z)(this,"onDefaultLangChange",void 0),this.translate=$,this._ref=q}updateValue($,q,Q){let ue=Me=>{this.value=void 0!==Me?Me:$,this.lastKey=$,this._ref.markForCheck()};if(Q){let Me=this.translate.getParsedResult(Q,$,q);(0,b.b)(Me.subscribe)?Me.subscribe(ue):ue(Me)}this.translate.get($,q).subscribe(ue)}transform($,...q){if(!$||!$.length)return $;if(M($,this.lastKey)&&M(q,this.lastParams))return this.value;let Q;if(x(q[0])&&q.length)if("string"==typeof q[0]&&q[0].length){let ue=q[0].replace(/(\')?([a-zA-Z0-9_]+)(\')?(\s)?:/g,'"$2":').replace(/:(\s)?(\')(.*?)(\')/g,':"$3"');try{Q=JSON.parse(ue)}catch{throw new SyntaxError(`Wrong parameter in TranslatePipe. Expected a valid Object, received: ${q[0]}`)}}else"object"==typeof q[0]&&!Array.isArray(q[0])&&(Q=q[0]);return this.lastKey=$,this.lastParams=q,this.updateValue($,Q),this._dispose(),this.onTranslationChange||(this.onTranslationChange=this.translate.onTranslationChange.subscribe(ue=>{this.lastKey&&ue.lang===this.translate.currentLang&&(this.lastKey=null,this.updateValue($,Q,ue.translations))})),this.onLangChange||(this.onLangChange=this.translate.onLangChange.subscribe(ue=>{this.lastKey&&(this.lastKey=null,this.updateValue($,Q,ue.translations))})),this.onDefaultLangChange||(this.onDefaultLangChange=this.translate.onDefaultLangChange.subscribe(()=>{this.lastKey&&(this.lastKey=null,this.updateValue($,Q))})),this.value}_dispose(){typeof this.onTranslationChange<"u"&&(this.onTranslationChange.unsubscribe(),this.onTranslationChange=void 0),typeof this.onLangChange<"u"&&(this.onLangChange.unsubscribe(),this.onLangChange=void 0),typeof this.onDefaultLangChange<"u"&&(this.onDefaultLangChange.unsubscribe(),this.onDefaultLangChange=void 0)}ngOnDestroy(){this._dispose()}}return(0,n.Z)(ne,"\u0275fac",function($){return new($||ne)(p.\u0275\u0275directiveInject(k,16),p.\u0275\u0275directiveInject(p.ChangeDetectorRef,16))}),(0,n.Z)(ne,"\u0275pipe",p.\u0275\u0275definePipe({name:"translate",type:ne,pure:!1})),(0,n.Z)(ne,"\u0275prov",p.\u0275\u0275defineInjectable({token:ne,factory:ne.\u0275fac})),ne})(),se=(()=>{class ne{static forRoot($={}){return{ngModule:ne,providers:[$.loader||{provide:u,useClass:h},$.compiler||{provide:O,useClass:E},$.parser||{provide:A,useClass:T},$.missingTranslationHandler||{provide:m,useClass:_},D,{provide:R,useValue:$.isolate},{provide:j,useValue:$.useDefaultLang},{provide:S,useValue:$.extend},{provide:N,useValue:$.defaultLanguage},k]}}static forChild($={}){return{ngModule:ne,providers:[$.loader||{provide:u,useClass:h},$.compiler||{provide:O,useClass:E},$.parser||{provide:A,useClass:T},$.missingTranslationHandler||{provide:m,useClass:_},{provide:R,useValue:$.isolate},{provide:j,useValue:$.useDefaultLang},{provide:S,useValue:$.extend},{provide:N,useValue:$.defaultLanguage},k]}}}return(0,n.Z)(ne,"\u0275fac",function($){return new($||ne)}),(0,n.Z)(ne,"\u0275mod",p.\u0275\u0275defineNgModule({type:ne})),(0,n.Z)(ne,"\u0275inj",p.\u0275\u0275defineInjector({})),ne})()},5061:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{TranslateHttpLoader:()=>p});var n=g(1180);class p{constructor(b,o="/assets/i18n/",v=".json"){(0,n.Z)(this,"http",void 0),(0,n.Z)(this,"prefix",void 0),(0,n.Z)(this,"suffix",void 0),this.http=b,this.prefix=o,this.suffix=v}getTranslation(b){return this.http.get(`${this.prefix}${b}${this.suffix}`)}}},6381:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{AUTH_CONFIG:()=>Yt,AbstractValidationHandler:()=>Xe,AuthConfig:()=>ue,DateTimeProvider:()=>R,DefaultHashHandler:()=>ie,DefaultOAuthInterceptor:()=>Lt,HashHandler:()=>Ce,JwksValidationHandler:()=>$t,LoginOptions:()=>N,MemoryStorage:()=>F,NullValidationHandler:()=>O,OAuthErrorEvent:()=>$,OAuthEvent:()=>se,OAuthInfoEvent:()=>me,OAuthLogger:()=>S,OAuthModule:()=>yt,OAuthModuleConfig:()=>E,OAuthNoopResourceServerErrorHandler:()=>ct,OAuthResourceServerConfig:()=>D,OAuthResourceServerErrorHandler:()=>Te,OAuthService:()=>pe,OAuthStorage:()=>k,OAuthSuccessEvent:()=>ne,ReceivedTokens:()=>Y,SystemDateTimeProvider:()=>j,UrlHelperService:()=>Be,ValidationHandler:()=>Oe,provideOAuthClient:()=>ze});var n=g(5861),p=g(5879),C=g(6814),b=g(9862),o=g(8645),v=g(2096),a=g(2459),c=g(3684),s=g(8504),l=g(2572),d=g(3019),r=g(2181),u=g(9397),h=g(3620),m=g(7547),_=g(4664),M=g(7398),x=g(1374),w=g(6306),L=g(5178),A=g(8180),T=g(9769);class O{validateSignature(We){return Promise.resolve(null)}validateAtHash(We){return Promise.resolve(!0)}}class E{}class D{}class R{}let j=(()=>{class Ue extends R{now(){return Date.now()}new(){return new Date}}return Ue.\u0275fac=function(){let We;return function(we){return(We||(We=p.\u0275\u0275getInheritedFactory(Ue)))(we||Ue)}}(),Ue.\u0275prov=p.\u0275\u0275defineInjectable({token:Ue,factory:Ue.\u0275fac}),Ue})();class N{constructor(){this.disableNonceCheck=!1,this.preventClearHashAfterLogin=!1}}class S{}class k{}let F=(()=>{class Ue{constructor(){this.data=new Map}getItem(ve){return this.data.get(ve)}removeItem(ve){this.data.delete(ve)}setItem(ve,we){this.data.set(ve,we)}}return Ue.\u0275fac=function(ve){return new(ve||Ue)},Ue.\u0275prov=p.\u0275\u0275defineInjectable({token:Ue,factory:Ue.\u0275fac}),Ue})();class Y{}class se{constructor(We){this.type=We}}class ne extends se{constructor(We,ve=null){super(We),this.info=ve}}class me extends se{constructor(We,ve=null){super(We),this.info=ve}}class $ extends se{constructor(We,ve,we=null){super(We),this.reason=ve,this.params=we}}function q(Ue){const We=Ue.replace(/\-/g,"+").replace(/\_/g,"/");return decodeURIComponent(atob(We).split("").map(function(ve){return"%"+("00"+ve.charCodeAt(0).toString(16)).slice(-2)}).join(""))}function Q(Ue){return btoa(Ue).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}class ue{constructor(We){this.clientId="",this.redirectUri="",this.postLogoutRedirectUri="",this.redirectUriAsPostLogoutRedirectUriFallback=!0,this.loginUrl="",this.scope="openid profile",this.resource="",this.rngUrl="",this.oidc=!0,this.requestAccessToken=!0,this.options=null,this.issuer="",this.logoutUrl="",this.clearHashAfterLogin=!0,this.tokenEndpoint=null,this.revocationEndpoint=null,this.customTokenParameters=[],this.userinfoEndpoint=null,this.responseType="",this.showDebugInformation=!1,this.silentRefreshRedirectUri="",this.silentRefreshMessagePrefix="",this.silentRefreshShowIFrame=!1,this.siletRefreshTimeout=2e4,this.silentRefreshTimeout=2e4,this.dummyClientSecret="",this.requireHttps="remoteOnly",this.strictDiscoveryDocumentValidation=!0,this.jwks=null,this.customQueryParams=null,this.silentRefreshIFrameName="angular-oauth-oidc-silent-refresh-iframe",this.timeoutFactor=.75,this.sessionChecksEnabled=!1,this.sessionCheckIntervall=3e3,this.sessionCheckIFrameUrl=null,this.sessionCheckIFrameName="angular-oauth-oidc-check-session-iframe",this.disableAtHashCheck=!1,this.skipSubjectCheck=!1,this.useIdTokenHintForSilentRefresh=!1,this.skipIssuerCheck=!1,this.nonceStateSeparator=";",this.useHttpBasicAuth=!1,this.decreaseExpirationBySec=0,this.waitForTokenInMsec=0,this.disablePKCE=!1,this.preserveRequestedRoute=!1,this.disableIdTokenTimer=!1,this.checkOrigin=!1,this.openUri=ve=>{location.href=ve},We&&Object.assign(this,We)}}class Me{encodeKey(We){return encodeURIComponent(We)}encodeValue(We){return encodeURIComponent(We)}decodeKey(We){return decodeURIComponent(We)}decodeValue(We){return decodeURIComponent(We)}}class Oe{}class Xe{validateAtHash(We){var ve=this;return(0,n.Z)(function*(){let we=ve.inferHashAlgorithm(We.idTokenHeader),at=yield ve.calcHash(We.accessToken,we),je=Q(at.substr(0,at.length/2)),ke=We.idTokenClaims.at_hash.replace(/=/g,"");return je!==ke&&(console.error("exptected at_hash: "+je),console.error("actual at_hash: "+ke)),je===ke})()}inferHashAlgorithm(We){let ve=We.alg;if(!ve.match(/^.S[0-9]{3}$/))throw new Error("Algorithm not supported: "+ve);return"sha-"+ve.substr(2)}}let Be=(()=>{class Ue{getHashFragmentParams(ve){let we=ve||window.location.hash;if(we=decodeURIComponent(we),0!==we.indexOf("#"))return{};const at=we.indexOf("?");return we=we.substr(at>-1?at+1:1),this.parseQueryString(we)}parseQueryString(ve){const we={};let at,De,je,ke,Z,re,ce;if(null===ve)return we;at=ve.split("&");for(let Ee=0;Ee=64;){for(De=We[0],je=We[1],ke=We[2],Z=We[3],re=We[4],ce=We[5],Ee=We[6],it=We[7],Ye=0;Ye<16;Ye++)qe=we+4*Ye,Ue[Ye]=(255&ve[qe])<<24|(255&ve[qe+1])<<16|(255&ve[qe+2])<<8|255&ve[qe+3];for(Ye=16;Ye<64;Ye++)Rt=Ue[Ye-2],Ne=(Rt>>>17|Rt<<15)^(Rt>>>19|Rt<<13)^Rt>>>10,Rt=Ue[Ye-15],dt=(Rt>>>7|Rt<<25)^(Rt>>>18|Rt<<14)^Rt>>>3,Ue[Ye]=(Ne+Ue[Ye-7]|0)+(dt+Ue[Ye-16]|0);for(Ye=0;Ye<64;Ye++)Ne=(((re>>>6|re<<26)^(re>>>11|re<<21)^(re>>>25|re<<7))+(re&ce^~re&Ee)|0)+(it+(Mt[Ye]+Ue[Ye]|0)|0)|0,dt=((De>>>2|De<<30)^(De>>>13|De<<19)^(De>>>22|De<<10))+(De&je^De&ke^je&ke)|0,it=Ee,Ee=ce,ce=re,re=Z+Ne|0,Z=ke,ke=je,je=De,De=Ne+dt|0;We[0]+=De,We[1]+=je,We[2]+=ke,We[3]+=Z,We[4]+=re,We[5]+=ce,We[6]+=Ee,We[7]+=it,we+=64,at-=64}return we}class St{constructor(){this.digestLength=32,this.blockSize=64,this.state=new Int32Array(8),this.temp=new Int32Array(64),this.buffer=new Uint8Array(128),this.bufferLength=0,this.bytesHashed=0,this.finished=!1,this.reset()}reset(){return this.state[0]=1779033703,this.state[1]=3144134277,this.state[2]=1013904242,this.state[3]=2773480762,this.state[4]=1359893119,this.state[5]=2600822924,this.state[6]=528734635,this.state[7]=1541459225,this.bufferLength=0,this.bytesHashed=0,this.finished=!1,this}clean(){for(let We=0;We0){for(;this.bufferLength<64&&ve>0;)this.buffer[this.bufferLength++]=We[we++],ve--;64===this.bufferLength&&(tt(this.temp,this.state,this.buffer,0,64),this.bufferLength=0)}for(ve>=64&&(we=tt(this.temp,this.state,We,we,ve),ve%=64);ve>0;)this.buffer[this.bufferLength++]=We[we++],ve--;return this}finish(We){if(!this.finished){const ve=this.bytesHashed,we=this.bufferLength,at=ve/536870912|0,De=ve<<3,je=ve%64<56?64:128;this.buffer[we]=128;for(let ke=we+1;ke>>24&255,this.buffer[je-7]=at>>>16&255,this.buffer[je-6]=at>>>8&255,this.buffer[je-5]=at>>>0&255,this.buffer[je-4]=De>>>24&255,this.buffer[je-3]=De>>>16&255,this.buffer[je-2]=De>>>8&255,this.buffer[je-1]=De>>>0&255,tt(this.temp,this.state,this.buffer,0,je),this.finished=!0}for(let ve=0;ve<8;ve++)We[4*ve+0]=this.state[ve]>>>24&255,We[4*ve+1]=this.state[ve]>>>16&255,We[4*ve+2]=this.state[ve]>>>8&255,We[4*ve+3]=this.state[ve]>>>0&255;return this}digest(){const We=new Uint8Array(this.digestLength);return this.finish(We),We}_saveState(We){for(let ve=0;ve{class Ue{calcHash(ve,we){return(0,n.Z)(function*(){return function ae(Ue){var We,ve=[];for(We=0;We{class Ue extends ue{constructor(ve,we,at,De,je,ke,Z,re,ce,Ee){super(),this.ngZone=ve,this.http=we,this.config=je,this.urlHelper=ke,this.logger=Z,this.crypto=re,this.dateTimeService=Ee,this.discoveryDocumentLoaded=!1,this.state="",this.eventsSubject=new o.x,this.discoveryDocumentLoadedSubject=new o.x,this.grantTypesSupported=[],this.inImplicitFlow=!1,this.saveNoncesInLocalStorage=!1,this.debug("angular-oauth2-oidc v10"),this.document=ce,je||(je={}),this.discoveryDocumentLoaded$=this.discoveryDocumentLoadedSubject.asObservable(),this.events=this.eventsSubject.asObservable(),De&&(this.tokenValidationHandler=De),je&&this.configure(je);try{at?this.setStorage(at):typeof sessionStorage<"u"&&this.setStorage(sessionStorage)}catch(it){console.error("No OAuthStorage provided and cannot access default (sessionStorage).Consider providing a custom OAuthStorage implementation in your module.",it)}if(this.checkLocalStorageAccessable()){const it=window?.navigator?.userAgent;(it?.includes("MSIE ")||it?.includes("Trident"))&&(this.saveNoncesInLocalStorage=!0)}this.setupRefreshTimer()}checkLocalStorageAccessable(){if(typeof window>"u")return!1;const ve="test";try{return!(typeof window.localStorage>"u"||(localStorage.setItem(ve,ve),localStorage.removeItem(ve),0))}catch{return!1}}configure(ve){Object.assign(this,new ue,ve),this.config=Object.assign({},new ue,ve),this.sessionChecksEnabled&&this.setupSessionCheck(),this.configChanged()}configChanged(){this.setupRefreshTimer()}restartSessionChecksIfStillLoggedIn(){this.hasValidIdToken()&&this.initSessionCheck()}restartRefreshTimerIfStillLoggedIn(){this.setupExpirationTimers()}setupSessionCheck(){this.events.pipe((0,r.h)(ve=>"token_received"===ve.type)).subscribe(ve=>{this.initSessionCheck()})}setupAutomaticSilentRefresh(ve={},we,at=!0){let De=!0;this.clearAutomaticRefreshTimer(),this.automaticRefreshSubscription=this.events.pipe((0,u.b)(je=>{"token_received"===je.type?De=!0:"logout"===je.type&&(De=!1)}),(0,r.h)(je=>"token_expires"===je.type&&(null==we||"any"===we||je.info===we)),(0,h.b)(1e3)).subscribe(je=>{De&&this.refreshInternal(ve,at).catch(ke=>{this.debug("Automatic silent refresh did not work")})}),this.restartRefreshTimerIfStillLoggedIn()}refreshInternal(ve,we){return this.useSilentRefresh||"code"!==this.responseType?this.silentRefresh(ve,we):this.refreshToken()}loadDiscoveryDocumentAndTryLogin(ve=null){return this.loadDiscoveryDocument().then(we=>this.tryLogin(ve))}loadDiscoveryDocumentAndLogin(ve=null){return this.loadDiscoveryDocumentAndTryLogin(ve=ve||{}).then(we=>!(!this.hasValidIdToken()||!this.hasValidAccessToken())||(this.initLoginFlow("string"==typeof ve.state?ve.state:""),!1))}debug(...ve){this.showDebugInformation&&this.logger.debug.apply(this.logger,ve)}validateUrlFromDiscoveryDocument(ve){const we=[],at=this.validateUrlForHttps(ve),De=this.validateUrlAgainstIssuer(ve);return at||we.push("https for all urls required. Also for urls received by discovery."),De||we.push("Every url in discovery document has to start with the issuer url.Also see property strictDiscoveryDocumentValidation."),we}validateUrlForHttps(ve){if(!ve)return!0;const we=ve.toLowerCase();return!(!1!==this.requireHttps&&(!we.match(/^http:\/\/localhost($|[:\/])/)&&!we.match(/^http:\/\/localhost($|[:\/])/)||"remoteOnly"!==this.requireHttps))||we.startsWith("https://")}assertUrlNotNullAndCorrectProtocol(ve,we){if(!ve)throw new Error(`'${we}' should not be null`);if(!this.validateUrlForHttps(ve))throw new Error(`'${we}' must use HTTPS (with TLS), or config value for property 'requireHttps' must be set to 'false' and allow HTTP (without TLS).`)}validateUrlAgainstIssuer(ve){return!this.strictDiscoveryDocumentValidation||!ve||ve.toLowerCase().startsWith(this.issuer.toLowerCase())}setupRefreshTimer(){typeof window>"u"?this.debug("timer not supported on this plattform"):((this.hasValidIdToken()||this.hasValidAccessToken())&&(this.clearAccessTokenTimer(),this.clearIdTokenTimer(),this.setupExpirationTimers()),this.tokenReceivedSubscription&&this.tokenReceivedSubscription.unsubscribe(),this.tokenReceivedSubscription=this.events.pipe((0,r.h)(ve=>"token_received"===ve.type)).subscribe(ve=>{this.clearAccessTokenTimer(),this.clearIdTokenTimer(),this.setupExpirationTimers()}))}setupExpirationTimers(){this.hasValidAccessToken()&&this.setupAccessTokenTimer(),!this.disableIdTokenTimer&&this.hasValidIdToken()&&this.setupIdTokenTimer()}setupAccessTokenTimer(){const ve=this.getAccessTokenExpiration(),we=this.getAccessTokenStoredAt(),at=this.calcTimeout(we,ve);this.ngZone.runOutsideAngular(()=>{this.accessTokenTimeoutSubscription=(0,v.of)(new me("token_expires","access_token")).pipe((0,m.g)(at)).subscribe(De=>{this.ngZone.run(()=>{this.eventsSubject.next(De)})})})}setupIdTokenTimer(){const ve=this.getIdTokenExpiration(),we=this.getIdTokenStoredAt(),at=this.calcTimeout(we,ve);this.ngZone.runOutsideAngular(()=>{this.idTokenTimeoutSubscription=(0,v.of)(new me("token_expires","id_token")).pipe((0,m.g)(at)).subscribe(De=>{this.ngZone.run(()=>{this.eventsSubject.next(De)})})})}stopAutomaticRefresh(){this.clearAccessTokenTimer(),this.clearIdTokenTimer(),this.clearAutomaticRefreshTimer()}clearAccessTokenTimer(){this.accessTokenTimeoutSubscription&&this.accessTokenTimeoutSubscription.unsubscribe()}clearIdTokenTimer(){this.idTokenTimeoutSubscription&&this.idTokenTimeoutSubscription.unsubscribe()}clearAutomaticRefreshTimer(){this.automaticRefreshSubscription&&this.automaticRefreshSubscription.unsubscribe()}calcTimeout(ve,we){const at=this.dateTimeService.now(),je=Math.max(0,(we-ve)*this.timeoutFactor-(at-ve)),ke=2147483647;return je>ke?ke:je}setStorage(ve){this._storage=ve,this.configChanged()}loadDiscoveryDocument(ve=null){return new Promise((we,at)=>{ve||((ve=this.issuer||"").endsWith("/")||(ve+="/"),ve+=".well-known/openid-configuration"),this.validateUrlForHttps(ve)?this.http.get(ve).subscribe(De=>{if(!this.validateDiscoveryDocument(De))return this.eventsSubject.next(new $("discovery_document_validation_error",null)),void at("discovery_document_validation_error");this.loginUrl=De.authorization_endpoint,this.logoutUrl=De.end_session_endpoint||this.logoutUrl,this.grantTypesSupported=De.grant_types_supported,this.issuer=De.issuer,this.tokenEndpoint=De.token_endpoint,this.userinfoEndpoint=De.userinfo_endpoint||this.userinfoEndpoint,this.jwksUri=De.jwks_uri,this.sessionCheckIFrameUrl=De.check_session_iframe||this.sessionCheckIFrameUrl,this.discoveryDocumentLoaded=!0,this.discoveryDocumentLoadedSubject.next(De),this.revocationEndpoint=De.revocation_endpoint||this.revocationEndpoint,this.sessionChecksEnabled&&this.restartSessionChecksIfStillLoggedIn(),this.loadJwks().then(je=>{const Z=new ne("discovery_document_loaded",{discoveryDocument:De,jwks:je});this.eventsSubject.next(Z),we(Z)}).catch(je=>{this.eventsSubject.next(new $("discovery_document_load_error",je)),at(je)})},De=>{this.logger.error("error loading discovery document",De),this.eventsSubject.next(new $("discovery_document_load_error",De)),at(De)}):at("issuer must use HTTPS (with TLS), or config value for property 'requireHttps' must be set to 'false' and allow HTTP (without TLS).")})}loadJwks(){return new Promise((ve,we)=>{this.jwksUri?this.http.get(this.jwksUri).subscribe(at=>{this.jwks=at,ve(at)},at=>{this.logger.error("error loading jwks",at),this.eventsSubject.next(new $("jwks_load_error",at)),we(at)}):ve(null)})}validateDiscoveryDocument(ve){let we;return this.skipIssuerCheck||ve.issuer===this.issuer?(we=this.validateUrlFromDiscoveryDocument(ve.authorization_endpoint),we.length>0?(this.logger.error("error validating authorization_endpoint in discovery document",we),!1):(we=this.validateUrlFromDiscoveryDocument(ve.end_session_endpoint),we.length>0?(this.logger.error("error validating end_session_endpoint in discovery document",we),!1):(we=this.validateUrlFromDiscoveryDocument(ve.token_endpoint),we.length>0&&this.logger.error("error validating token_endpoint in discovery document",we),we=this.validateUrlFromDiscoveryDocument(ve.revocation_endpoint),we.length>0&&this.logger.error("error validating revocation_endpoint in discovery document",we),we=this.validateUrlFromDiscoveryDocument(ve.userinfo_endpoint),we.length>0?(this.logger.error("error validating userinfo_endpoint in discovery document",we),!1):(we=this.validateUrlFromDiscoveryDocument(ve.jwks_uri),we.length>0?(this.logger.error("error validating jwks_uri in discovery document",we),!1):(this.sessionChecksEnabled&&!ve.check_session_iframe&&this.logger.warn("sessionChecksEnabled is activated but discovery document does not contain a check_session_iframe field"),!0))))):(this.logger.error("invalid issuer in discovery document","expected: "+this.issuer,"current: "+ve.issuer),!1)}fetchTokenUsingPasswordFlowAndLoadUserProfile(ve,we,at=new b.HttpHeaders){return this.fetchTokenUsingPasswordFlow(ve,we,at).then(()=>this.loadUserProfile())}loadUserProfile(){if(!this.hasValidAccessToken())throw new Error("Can not load User Profile without access_token");if(!this.validateUrlForHttps(this.userinfoEndpoint))throw new Error("userinfoEndpoint must use HTTPS (with TLS), or config value for property 'requireHttps' must be set to 'false' and allow HTTP (without TLS).");return new Promise((ve,we)=>{const at=(new b.HttpHeaders).set("Authorization","Bearer "+this.getAccessToken());this.http.get(this.userinfoEndpoint,{headers:at,observe:"response",responseType:"text"}).subscribe(De=>{if(this.debug("userinfo received",JSON.stringify(De)),De.headers.get("content-type").startsWith("application/json")){let je=JSON.parse(De.body);const ke=this.getIdentityClaims()||{};if(!this.skipSubjectCheck&&this.oidc&&(!ke.sub||je.sub!==ke.sub))return void we("if property oidc is true, the received user-id (sub) has to be the user-id of the user that has logged in with oidc.\nif you are not using oidc but just oauth2 password flow set oidc to false");je=Object.assign({},ke,je),this._storage.setItem("id_token_claims_obj",JSON.stringify(je)),this.eventsSubject.next(new ne("user_profile_loaded")),ve({info:je})}else this.debug("userinfo is not JSON, treating it as JWE/JWS"),this.eventsSubject.next(new ne("user_profile_loaded")),ve(JSON.parse(De.body))},De=>{this.logger.error("error loading user info",De),this.eventsSubject.next(new $("user_profile_load_error",De)),we(De)})})}fetchTokenUsingPasswordFlow(ve,we,at=new b.HttpHeaders){return this.fetchTokenUsingGrant("password",{username:ve,password:we},at)}fetchTokenUsingGrant(ve,we,at=new b.HttpHeaders){this.assertUrlNotNullAndCorrectProtocol(this.tokenEndpoint,"tokenEndpoint");let De=new b.HttpParams({encoder:new Me}).set("grant_type",ve).set("scope",this.scope);if(this.useHttpBasicAuth){const je=btoa(`${this.clientId}:${this.dummyClientSecret}`);at=at.set("Authorization","Basic "+je)}if(this.useHttpBasicAuth||(De=De.set("client_id",this.clientId)),!this.useHttpBasicAuth&&this.dummyClientSecret&&(De=De.set("client_secret",this.dummyClientSecret)),this.customQueryParams)for(const je of Object.getOwnPropertyNames(this.customQueryParams))De=De.set(je,this.customQueryParams[je]);for(const je of Object.keys(we))De=De.set(je,we[je]);return at=at.set("Content-Type","application/x-www-form-urlencoded"),new Promise((je,ke)=>{this.http.post(this.tokenEndpoint,De,{headers:at}).subscribe(Z=>{this.debug("tokenResponse",Z),this.storeAccessTokenResponse(Z.access_token,Z.refresh_token,Z.expires_in||this.fallbackAccessTokenExpirationTimeInSec,Z.scope,this.extractRecognizedCustomParameters(Z)),this.oidc&&Z.id_token&&this.processIdToken(Z.id_token,Z.access_token).then(re=>{this.storeIdToken(re),je(Z)}),this.eventsSubject.next(new ne("token_received")),je(Z)},Z=>{this.logger.error("Error performing ${grantType} flow",Z),this.eventsSubject.next(new $("token_error",Z)),ke(Z)})})}refreshToken(){return this.assertUrlNotNullAndCorrectProtocol(this.tokenEndpoint,"tokenEndpoint"),new Promise((ve,we)=>{let at=new b.HttpParams({encoder:new Me}).set("grant_type","refresh_token").set("scope",this.scope).set("refresh_token",this._storage.getItem("refresh_token")),De=(new b.HttpHeaders).set("Content-Type","application/x-www-form-urlencoded");if(this.useHttpBasicAuth){const je=btoa(`${this.clientId}:${this.dummyClientSecret}`);De=De.set("Authorization","Basic "+je)}if(this.useHttpBasicAuth||(at=at.set("client_id",this.clientId)),!this.useHttpBasicAuth&&this.dummyClientSecret&&(at=at.set("client_secret",this.dummyClientSecret)),this.customQueryParams)for(const je of Object.getOwnPropertyNames(this.customQueryParams))at=at.set(je,this.customQueryParams[je]);this.http.post(this.tokenEndpoint,at,{headers:De}).pipe((0,_.w)(je=>this.oidc&&je.id_token?(0,a.D)(this.processIdToken(je.id_token,je.access_token,!0)).pipe((0,u.b)(ke=>this.storeIdToken(ke)),(0,M.U)(ke=>je)):(0,v.of)(je))).subscribe(je=>{this.debug("refresh tokenResponse",je),this.storeAccessTokenResponse(je.access_token,je.refresh_token,je.expires_in||this.fallbackAccessTokenExpirationTimeInSec,je.scope,this.extractRecognizedCustomParameters(je)),this.eventsSubject.next(new ne("token_received")),this.eventsSubject.next(new ne("token_refreshed")),ve(je)},je=>{this.logger.error("Error refreshing token",je),this.eventsSubject.next(new $("token_refresh_error",je)),we(je)})})}removeSilentRefreshEventListener(){this.silentRefreshPostMessageEventListener&&(window.removeEventListener("message",this.silentRefreshPostMessageEventListener),this.silentRefreshPostMessageEventListener=null)}setupSilentRefreshEventListener(){this.removeSilentRefreshEventListener(),this.silentRefreshPostMessageEventListener=ve=>{const we=this.processMessageEventMessage(ve);this.checkOrigin&&ve.origin!==location.origin&&console.error("wrong origin requested silent refresh!"),this.tryLogin({customHashFragment:we,preventClearHashAfterLogin:!0,customRedirectUri:this.silentRefreshRedirectUri||this.redirectUri}).catch(at=>this.debug("tryLogin during silent refresh failed",at))},window.addEventListener("message",this.silentRefreshPostMessageEventListener)}silentRefresh(ve={},we=!0){const at=this.getIdentityClaims()||{};if(this.useIdTokenHintForSilentRefresh&&this.hasValidIdToken()&&(ve.id_token_hint=this.getIdToken()),!this.validateUrlForHttps(this.loginUrl))throw new Error("loginUrl must use HTTPS (with TLS), or config value for property 'requireHttps' must be set to 'false' and allow HTTP (without TLS).");if(typeof this.document>"u")throw new Error("silent refresh is not supported on this platform");const De=this.document.getElementById(this.silentRefreshIFrameName);De&&this.document.body.removeChild(De),this.silentRefreshSubject=at.sub;const je=this.document.createElement("iframe");je.id=this.silentRefreshIFrameName,this.setupSilentRefreshEventListener(),this.createLoginUrl(null,null,this.silentRefreshRedirectUri||this.redirectUri,we,ve).then(Ee=>{je.setAttribute("src",Ee),this.silentRefreshShowIFrame||(je.style.display="none"),this.document.body.appendChild(je)});const Z=this.events.pipe((0,r.h)(Ee=>Ee instanceof $),(0,x.P)()),re=this.events.pipe((0,r.h)(Ee=>"token_received"===Ee.type),(0,x.P)()),ce=(0,v.of)(new $("silent_refresh_timeout",null)).pipe((0,m.g)(this.silentRefreshTimeout));return(0,c.S)([Z,re,ce]).pipe((0,M.U)(Ee=>{if(Ee instanceof $)throw"silent_refresh_timeout"===Ee.type||(Ee=new $("silent_refresh_error",Ee)),this.eventsSubject.next(Ee),Ee;return"token_received"===Ee.type&&(Ee=new ne("silently_refreshed"),this.eventsSubject.next(Ee)),Ee})).toPromise()}initImplicitFlowInPopup(ve){return this.initLoginFlowInPopup(ve)}initLoginFlowInPopup(ve){return ve=ve||{},this.createLoginUrl(null,null,this.silentRefreshRedirectUri,!1,{display:"popup"}).then(we=>new Promise((at,De)=>{let Z,ke=null;ve.windowRef?ve.windowRef&&!ve.windowRef.closed&&(ke=ve.windowRef,ke.location.href=we):ke=window.open(we,"ngx-oauth2-oidc-login",this.calculatePopupFeatures(ve));const re=Ye=>{this.tryLogin({customHashFragment:Ye,preventClearHashAfterLogin:!0,customRedirectUri:this.silentRefreshRedirectUri}).then(()=>{Ee(),at(!0)},qe=>{Ee(),De(qe)})};ke?Z=window.setInterval(()=>{(!ke||ke.closed)&&(Ee(),De(new $("popup_closed",{})))},500):De(new $("popup_blocked",{}));const Ee=()=>{window.clearInterval(Z),window.removeEventListener("storage",Rt),window.removeEventListener("message",it),null!==ke&&ke.close(),ke=null},it=Ye=>{const qe=this.processMessageEventMessage(Ye);qe&&null!==qe?(window.removeEventListener("storage",Rt),re(qe)):console.log("false event firing")},Rt=Ye=>{"auth_hash"===Ye.key&&(window.removeEventListener("message",it),re(Ye.newValue))};window.addEventListener("message",it),window.addEventListener("storage",Rt)}))}calculatePopupFeatures(ve){const we=ve.height||470,at=ve.width||500,De=window.screenLeft+(window.outerWidth-at)/2;return`location=no,toolbar=no,width=${at},height=${we},top=${window.screenTop+(window.outerHeight-we)/2},left=${De}`}processMessageEventMessage(ve){let we="#";if(this.silentRefreshMessagePrefix&&(we+=this.silentRefreshMessagePrefix),!ve||!ve.data||"string"!=typeof ve.data)return;const at=ve.data;return at.startsWith(we)?"#"+at.substr(we.length):void 0}canPerformSessionCheck(){return!(!this.sessionChecksEnabled||(this.sessionCheckIFrameUrl?this.getSessionState()?typeof this.document>"u":(console.warn("sessionChecksEnabled is activated but there is no session_state"),1):(console.warn("sessionChecksEnabled is activated but there is no sessionCheckIFrameUrl"),1)))}setupSessionCheckEventListener(){this.removeSessionCheckEventListener(),this.sessionCheckEventListener=ve=>{const we=ve.origin.toLowerCase(),at=this.issuer.toLowerCase();if(this.debug("sessionCheckEventListener"),at.startsWith(we)){switch(ve.data){case"unchanged":this.ngZone.run(()=>{this.handleSessionUnchanged()});break;case"changed":this.ngZone.run(()=>{this.handleSessionChange()});break;case"error":this.ngZone.run(()=>{this.handleSessionError()})}this.debug("got info from session check inframe",ve)}else this.debug("sessionCheckEventListener","wrong origin",we,"expected",at,"event",ve)},this.ngZone.runOutsideAngular(()=>{window.addEventListener("message",this.sessionCheckEventListener)})}handleSessionUnchanged(){this.debug("session check","session unchanged"),this.eventsSubject.next(new me("session_unchanged"))}handleSessionChange(){this.eventsSubject.next(new me("session_changed")),this.stopSessionCheckTimer(),this.useSilentRefresh||"code"!==this.responseType?this.silentRefreshRedirectUri?(this.silentRefresh().catch(ve=>this.debug("silent refresh failed after session changed")),this.waitForSilentRefreshAfterSessionChange()):(this.eventsSubject.next(new me("session_terminated")),this.logOut(!0)):this.refreshToken().then(ve=>{this.debug("token refresh after session change worked")}).catch(ve=>{this.debug("token refresh did not work after session changed"),this.eventsSubject.next(new me("session_terminated")),this.logOut(!0)})}waitForSilentRefreshAfterSessionChange(){this.events.pipe((0,r.h)(ve=>"silently_refreshed"===ve.type||"silent_refresh_timeout"===ve.type||"silent_refresh_error"===ve.type),(0,x.P)()).subscribe(ve=>{"silently_refreshed"!==ve.type&&(this.debug("silent refresh did not work after session changed"),this.eventsSubject.next(new me("session_terminated")),this.logOut(!0))})}handleSessionError(){this.stopSessionCheckTimer(),this.eventsSubject.next(new me("session_error"))}removeSessionCheckEventListener(){this.sessionCheckEventListener&&(window.removeEventListener("message",this.sessionCheckEventListener),this.sessionCheckEventListener=null)}initSessionCheck(){if(!this.canPerformSessionCheck())return;const ve=this.document.getElementById(this.sessionCheckIFrameName);ve&&this.document.body.removeChild(ve);const we=this.document.createElement("iframe");we.id=this.sessionCheckIFrameName,this.setupSessionCheckEventListener(),we.setAttribute("src",this.sessionCheckIFrameUrl),we.style.display="none",this.document.body.appendChild(we),this.startSessionCheckTimer()}startSessionCheckTimer(){this.stopSessionCheckTimer(),this.ngZone.runOutsideAngular(()=>{this.sessionCheckTimer=setInterval(this.checkSession.bind(this),this.sessionCheckIntervall)})}stopSessionCheckTimer(){this.sessionCheckTimer&&(clearInterval(this.sessionCheckTimer),this.sessionCheckTimer=null)}checkSession(){const ve=this.document.getElementById(this.sessionCheckIFrameName);ve||this.logger.warn("checkSession did not find iframe",this.sessionCheckIFrameName);const we=this.getSessionState();we||this.stopSessionCheckTimer(),ve.contentWindow.postMessage(this.clientId+" "+we,this.issuer)}createLoginUrl(ve="",we="",at="",De=!1,je={}){var ke=this;return(0,n.Z)(function*(){const Z=ke;let re;re=at||ke.redirectUri;const ce=yield ke.createAndSaveNonce();if(ve=ve?ce+ke.config.nonceStateSeparator+encodeURIComponent(ve):ce,!ke.requestAccessToken&&!ke.oidc)throw new Error("Either requestAccessToken or oidc or both must be true");ke.responseType=ke.config.responseType?ke.config.responseType:ke.oidc&&ke.requestAccessToken?"id_token token":ke.oidc&&!ke.requestAccessToken?"id_token":"token";const Ee=Z.loginUrl.indexOf("?")>-1?"&":"?";let it=Z.scope;ke.oidc&&!it.match(/(^|\s)openid($|\s)/)&&(it="openid "+it);let Rt=Z.loginUrl+Ee+"response_type="+encodeURIComponent(Z.responseType)+"&client_id="+encodeURIComponent(Z.clientId)+"&state="+encodeURIComponent(ve)+"&redirect_uri="+encodeURIComponent(re)+"&scope="+encodeURIComponent(it);if(ke.responseType.includes("code")&&!ke.disablePKCE){const[Ye,qe]=yield ke.createChallangeVerifierPairForPKCE();ke.saveNoncesInLocalStorage&&typeof window.localStorage<"u"?localStorage.setItem("PKCE_verifier",qe):ke._storage.setItem("PKCE_verifier",qe),Rt+="&code_challenge="+Ye,Rt+="&code_challenge_method=S256"}we&&(Rt+="&login_hint="+encodeURIComponent(we)),Z.resource&&(Rt+="&resource="+encodeURIComponent(Z.resource)),Z.oidc&&(Rt+="&nonce="+encodeURIComponent(ce)),De&&(Rt+="&prompt=none");for(const Ye of Object.keys(je))Rt+="&"+encodeURIComponent(Ye)+"="+encodeURIComponent(je[Ye]);if(ke.customQueryParams)for(const Ye of Object.getOwnPropertyNames(ke.customQueryParams))Rt+="&"+Ye+"="+encodeURIComponent(ke.customQueryParams[Ye]);return Rt})()}initImplicitFlowInternal(ve="",we=""){if(this.inImplicitFlow)return;if(this.inImplicitFlow=!0,!this.validateUrlForHttps(this.loginUrl))throw new Error("loginUrl must use HTTPS (with TLS), or config value for property 'requireHttps' must be set to 'false' and allow HTTP (without TLS).");let at={},De=null;"string"==typeof we?De=we:"object"==typeof we&&(at=we),this.createLoginUrl(ve,De,null,!1,at).then(this.config.openUri).catch(je=>{console.error("Error in initImplicitFlow",je),this.inImplicitFlow=!1})}initImplicitFlow(ve="",we=""){""!==this.loginUrl?this.initImplicitFlowInternal(ve,we):this.events.pipe((0,r.h)(at=>"discovery_document_loaded"===at.type)).subscribe(at=>this.initImplicitFlowInternal(ve,we))}resetImplicitFlow(){this.inImplicitFlow=!1}callOnTokenReceivedIfExists(ve){const we=this;if(ve.onTokenReceived){const at={idClaims:we.getIdentityClaims(),idToken:we.getIdToken(),accessToken:we.getAccessToken(),state:we.state};ve.onTokenReceived(at)}}storeAccessTokenResponse(ve,we,at,De,je){if(this._storage.setItem("access_token",ve),De&&!Array.isArray(De)?this._storage.setItem("granted_scopes",JSON.stringify(De.split(" "))):De&&Array.isArray(De)&&this._storage.setItem("granted_scopes",JSON.stringify(De)),this._storage.setItem("access_token_stored_at",""+this.dateTimeService.now()),at){const ke=1e3*at,re=this.dateTimeService.new().getTime()+ke;this._storage.setItem("expires_at",""+re)}we&&this._storage.setItem("refresh_token",we),je&&je.forEach((ke,Z)=>{this._storage.setItem(Z,ke)})}tryLogin(ve=null){return"code"===this.config.responseType?this.tryLoginCodeFlow(ve).then(we=>!0):this.tryLoginImplicitFlow(ve)}parseQueryString(ve){return ve&&0!==ve.length?("?"===ve.charAt(0)&&(ve=ve.substr(1)),this.urlHelper.parseQueryString(ve)):{}}tryLoginCodeFlow(ve=null){var we=this;return(0,n.Z)(function*(){const at=(ve=ve||{}).customHashFragment?ve.customHashFragment.substring(1):window.location.search,De=we.getCodePartsFromUrl(at),je=De.code,ke=De.state,Z=De.session_state;if(!ve.preventClearHashAfterLogin){const Ee=location.origin+location.pathname+location.search.replace(/code=[^&\$]*/,"").replace(/scope=[^&\$]*/,"").replace(/state=[^&\$]*/,"").replace(/session_state=[^&\$]*/,"").replace(/^\?&/,"?").replace(/&$/,"").replace(/^\?$/,"").replace(/&+/g,"&").replace(/\?&/,"?").replace(/\?$/,"")+location.hash;history.replaceState(null,window.name,Ee)}let[re,ce]=we.parseState(ke);if(we.state=ce,De.error){we.debug("error trying to login"),we.handleLoginError(ve,De);const Ee=new $("code_error",{},De);return we.eventsSubject.next(Ee),Promise.reject(Ee)}if(!ve.disableNonceCheck){if(!re)return we.saveRequestedRoute(),Promise.resolve();if(!ve.disableOAuth2StateCheck&&!we.validateNonce(re)){const it=new $("invalid_nonce_in_state",null);return we.eventsSubject.next(it),Promise.reject(it)}}return we.storeSessionState(Z),je&&(yield we.getTokenFromCode(je,ve),we.restoreRequestedRoute()),Promise.resolve()})()}saveRequestedRoute(){this.config.preserveRequestedRoute&&this._storage.setItem("requested_route",window.location.pathname+window.location.search)}restoreRequestedRoute(){const ve=this._storage.getItem("requested_route");ve&&history.replaceState(null,"",window.location.origin+ve)}getCodePartsFromUrl(ve){return ve&&0!==ve.length?("?"===ve.charAt(0)&&(ve=ve.substr(1)),this.urlHelper.parseQueryString(ve)):this.urlHelper.getHashFragmentParams()}getTokenFromCode(ve,we){let at=new b.HttpParams({encoder:new Me}).set("grant_type","authorization_code").set("code",ve).set("redirect_uri",we.customRedirectUri||this.redirectUri);if(!this.disablePKCE){let De;De=this.saveNoncesInLocalStorage&&typeof window.localStorage<"u"?localStorage.getItem("PKCE_verifier"):this._storage.getItem("PKCE_verifier"),De?at=at.set("code_verifier",De):console.warn("No PKCE verifier found in oauth storage!")}return this.fetchAndProcessToken(at,we)}fetchAndProcessToken(ve,we){we=we||{},this.assertUrlNotNullAndCorrectProtocol(this.tokenEndpoint,"tokenEndpoint");let at=(new b.HttpHeaders).set("Content-Type","application/x-www-form-urlencoded");if(this.useHttpBasicAuth){const De=btoa(`${this.clientId}:${this.dummyClientSecret}`);at=at.set("Authorization","Basic "+De)}return this.useHttpBasicAuth||(ve=ve.set("client_id",this.clientId)),!this.useHttpBasicAuth&&this.dummyClientSecret&&(ve=ve.set("client_secret",this.dummyClientSecret)),new Promise((De,je)=>{if(this.customQueryParams)for(let ke of Object.getOwnPropertyNames(this.customQueryParams))ve=ve.set(ke,this.customQueryParams[ke]);this.http.post(this.tokenEndpoint,ve,{headers:at}).subscribe(ke=>{this.debug("refresh tokenResponse",ke),this.storeAccessTokenResponse(ke.access_token,ke.refresh_token,ke.expires_in||this.fallbackAccessTokenExpirationTimeInSec,ke.scope,this.extractRecognizedCustomParameters(ke)),this.oidc&&ke.id_token?this.processIdToken(ke.id_token,ke.access_token,we.disableNonceCheck).then(Z=>{this.storeIdToken(Z),this.eventsSubject.next(new ne("token_received")),this.eventsSubject.next(new ne("token_refreshed")),De(ke)}).catch(Z=>{this.eventsSubject.next(new $("token_validation_error",Z)),console.error("Error validating tokens"),console.error(Z),je(Z)}):(this.eventsSubject.next(new ne("token_received")),this.eventsSubject.next(new ne("token_refreshed")),De(ke))},ke=>{console.error("Error getting token",ke),this.eventsSubject.next(new $("token_refresh_error",ke)),je(ke)})})}tryLoginImplicitFlow(ve=null){let we;we=(ve=ve||{}).customHashFragment?this.urlHelper.getHashFragmentParams(ve.customHashFragment):this.urlHelper.getHashFragmentParams(),this.debug("parsed url",we);const at=we.state;let[De,je]=this.parseState(at);if(this.state=je,we.error){this.debug("error trying to login"),this.handleLoginError(ve,we);const Ee=new $("token_error",{},we);return this.eventsSubject.next(Ee),Promise.reject(Ee)}const ke=we.access_token,Z=we.id_token,re=we.session_state,ce=we.scope;if(!this.requestAccessToken&&!this.oidc)return Promise.reject("Either requestAccessToken or oidc (or both) must be true.");if(this.requestAccessToken&&!ke||this.requestAccessToken&&!ve.disableOAuth2StateCheck&&!at||this.oidc&&!Z)return Promise.resolve(!1);if(this.sessionChecksEnabled&&!re&&this.logger.warn("session checks (Session Status Change Notification) were activated in the configuration but the id_token does not contain a session_state claim"),this.requestAccessToken&&!ve.disableNonceCheck&&!this.validateNonce(De)){const it=new $("invalid_nonce_in_state",null);return this.eventsSubject.next(it),Promise.reject(it)}return this.requestAccessToken&&this.storeAccessTokenResponse(ke,null,we.expires_in||this.fallbackAccessTokenExpirationTimeInSec,ce),this.oidc?this.processIdToken(Z,ke,ve.disableNonceCheck).then(Ee=>ve.validationHandler?ve.validationHandler({accessToken:ke,idClaims:Ee.idTokenClaims,idToken:Ee.idToken,state:at}).then(it=>Ee):Ee).then(Ee=>(this.storeIdToken(Ee),this.storeSessionState(re),this.clearHashAfterLogin&&!ve.preventClearHashAfterLogin&&this.clearLocationHash(),this.eventsSubject.next(new ne("token_received")),this.callOnTokenReceivedIfExists(ve),this.inImplicitFlow=!1,!0)).catch(Ee=>(this.eventsSubject.next(new $("token_validation_error",Ee)),this.logger.error("Error validating tokens"),this.logger.error(Ee),Promise.reject(Ee))):(this.eventsSubject.next(new ne("token_received")),this.clearHashAfterLogin&&!ve.preventClearHashAfterLogin&&this.clearLocationHash(),this.callOnTokenReceivedIfExists(ve),Promise.resolve(!0))}parseState(ve){let we=ve,at="";if(ve){const De=ve.indexOf(this.config.nonceStateSeparator);De>-1&&(we=ve.substr(0,De),at=ve.substr(De+this.config.nonceStateSeparator.length))}return[we,at]}validateNonce(ve){let we;return we=this.saveNoncesInLocalStorage&&typeof window.localStorage<"u"?localStorage.getItem("nonce"):this._storage.getItem("nonce"),we===ve||(console.error("Validating access_token failed, wrong state/nonce.",we,ve),!1)}storeIdToken(ve){this._storage.setItem("id_token",ve.idToken),this._storage.setItem("id_token_claims_obj",ve.idTokenClaimsJson),this._storage.setItem("id_token_expires_at",""+ve.idTokenExpiresAt),this._storage.setItem("id_token_stored_at",""+this.dateTimeService.now())}storeSessionState(ve){this._storage.setItem("session_state",ve)}getSessionState(){return this._storage.getItem("session_state")}handleLoginError(ve,we){ve.onLoginError&&ve.onLoginError(we),this.clearHashAfterLogin&&!ve.preventClearHashAfterLogin&&this.clearLocationHash()}getClockSkewInMsec(ve=6e5){return this.clockSkewInSec||0===this.clockSkewInSec?1e3*this.clockSkewInSec:ve}processIdToken(ve,we,at=!1){const De=ve.split("."),ke=q(this.padBase64(De[0])),Z=JSON.parse(ke),ce=q(this.padBase64(De[1])),Ee=JSON.parse(ce);let it;if(it=this.saveNoncesInLocalStorage&&typeof window.localStorage<"u"?localStorage.getItem("nonce"):this._storage.getItem("nonce"),Array.isArray(Ee.aud)){if(Ee.aud.every(At=>At!==this.clientId)){const At="Wrong audience: "+Ee.aud.join(",");return this.logger.warn(At),Promise.reject(At)}}else if(Ee.aud!==this.clientId){const At="Wrong audience: "+Ee.aud;return this.logger.warn(At),Promise.reject(At)}if(!Ee.sub){const At="No sub claim in id_token";return this.logger.warn(At),Promise.reject(At)}if(this.sessionChecksEnabled&&this.silentRefreshSubject&&this.silentRefreshSubject!==Ee.sub){const At=`After refreshing, we got an id_token for another user (sub). Expected sub: ${this.silentRefreshSubject}, received sub: ${Ee.sub}`;return this.logger.warn(At),Promise.reject(At)}if(!Ee.iat){const At="No iat claim in id_token";return this.logger.warn(At),Promise.reject(At)}if(!this.skipIssuerCheck&&Ee.iss!==this.issuer){const At="Wrong issuer: "+Ee.iss;return this.logger.warn(At),Promise.reject(At)}if(!at&&Ee.nonce!==it){const At="Wrong nonce: "+Ee.nonce;return this.logger.warn(At),Promise.reject(At)}if(this.hasOwnProperty("responseType")&&("code"===this.responseType||"id_token"===this.responseType)&&(this.disableAtHashCheck=!0),!this.disableAtHashCheck&&this.requestAccessToken&&!Ee.at_hash){const At="An at_hash is needed!";return this.logger.warn(At),Promise.reject(At)}const Rt=this.dateTimeService.now(),Ye=1e3*Ee.iat,qe=1e3*Ee.exp,Ne=this.getClockSkewInMsec();if(Ye-Ne>=Rt||qe+Ne-this.decreaseExpirationBySec<=Rt){const At="Token has expired";return console.error(At),console.error({now:Rt,issuedAtMSec:Ye,expiresAtMSec:qe}),Promise.reject(At)}const dt={accessToken:we,idToken:ve,jwks:this.jwks,idTokenClaims:Ee,idTokenHeader:Z,loadKeys:()=>this.loadJwks()};return this.disableAtHashCheck?this.checkSignature(dt).then(At=>({idToken:ve,idTokenClaims:Ee,idTokenClaimsJson:ce,idTokenHeader:Z,idTokenHeaderJson:ke,idTokenExpiresAt:qe})):this.checkAtHash(dt).then(At=>{if(!this.disableAtHashCheck&&this.requestAccessToken&&!At){const tn="Wrong at_hash";return this.logger.warn(tn),Promise.reject(tn)}return this.checkSignature(dt).then(tn=>{const Tn={idToken:ve,idTokenClaims:Ee,idTokenClaimsJson:ce,idTokenHeader:Z,idTokenHeaderJson:ke,idTokenExpiresAt:qe};return this.disableAtHashCheck?Tn:this.checkAtHash(dt).then(Sn=>{if(this.requestAccessToken&&!Sn){const Mn="Wrong at_hash";return this.logger.warn(Mn),Promise.reject(Mn)}return Tn})})})}getIdentityClaims(){const ve=this._storage.getItem("id_token_claims_obj");return ve?JSON.parse(ve):null}getGrantedScopes(){const ve=this._storage.getItem("granted_scopes");return ve?JSON.parse(ve):null}getIdToken(){return this._storage?this._storage.getItem("id_token"):null}padBase64(ve){for(;ve.length%4!=0;)ve+="=";return ve}getAccessToken(){return this._storage?this._storage.getItem("access_token"):null}getRefreshToken(){return this._storage?this._storage.getItem("refresh_token"):null}getAccessTokenExpiration(){return this._storage.getItem("expires_at")?parseInt(this._storage.getItem("expires_at"),10):null}getAccessTokenStoredAt(){return parseInt(this._storage.getItem("access_token_stored_at"),10)}getIdTokenStoredAt(){return parseInt(this._storage.getItem("id_token_stored_at"),10)}getIdTokenExpiration(){return this._storage.getItem("id_token_expires_at")?parseInt(this._storage.getItem("id_token_expires_at"),10):null}hasValidAccessToken(){if(this.getAccessToken()){const ve=this._storage.getItem("expires_at"),we=this.dateTimeService.new();return!(ve&&parseInt(ve,10)-this.decreaseExpirationBySec=0&&null!==this._storage.getItem(ve)?JSON.parse(this._storage.getItem(ve)):null}authorizationHeader(){return"Bearer "+this.getAccessToken()}logOut(ve={},we=""){let at=!1;"boolean"==typeof ve&&(at=ve,ve={});const De=this.getIdToken();if(this._storage.removeItem("access_token"),this._storage.removeItem("id_token"),this._storage.removeItem("refresh_token"),this.saveNoncesInLocalStorage?(localStorage.removeItem("nonce"),localStorage.removeItem("PKCE_verifier")):(this._storage.removeItem("nonce"),this._storage.removeItem("PKCE_verifier")),this._storage.removeItem("expires_at"),this._storage.removeItem("id_token_claims_obj"),this._storage.removeItem("id_token_expires_at"),this._storage.removeItem("id_token_stored_at"),this._storage.removeItem("access_token_stored_at"),this._storage.removeItem("granted_scopes"),this._storage.removeItem("session_state"),this.config.customTokenParameters&&this.config.customTokenParameters.forEach(ke=>this._storage.removeItem(ke)),this.silentRefreshSubject=null,this.eventsSubject.next(new me("logout")),!this.logoutUrl||at)return;let je;if(!this.validateUrlForHttps(this.logoutUrl))throw new Error("logoutUrl must use HTTPS (with TLS), or config value for property 'requireHttps' must be set to 'false' and allow HTTP (without TLS).");if(this.logoutUrl.indexOf("{{")>-1)je=this.logoutUrl.replace(/\{\{id_token\}\}/,encodeURIComponent(De)).replace(/\{\{client_id\}\}/,encodeURIComponent(this.clientId));else{let ke=new b.HttpParams({encoder:new Me});De&&(ke=ke.set("id_token_hint",De));const Z=this.postLogoutRedirectUri||this.redirectUriAsPostLogoutRedirectUriFallback&&this.redirectUri||"";Z&&(ke=ke.set("post_logout_redirect_uri",Z),we&&(ke=ke.set("state",we)));for(let re in ve)ke=ke.set(re,ve[re]);je=this.logoutUrl+(this.logoutUrl.indexOf("?")>-1?"&":"?")+ke.toString()}this.config.openUri(je)}createAndSaveNonce(){const ve=this;return this.createNonce().then(function(we){return ve.saveNoncesInLocalStorage&&typeof window.localStorage<"u"?localStorage.setItem("nonce",we):ve._storage.setItem("nonce",we),we})}ngOnDestroy(){this.clearAccessTokenTimer(),this.clearIdTokenTimer(),this.removeSilentRefreshEventListener();const ve=this.document.getElementById(this.silentRefreshIFrameName);ve&&ve.remove(),this.stopSessionCheckTimer(),this.removeSessionCheckEventListener();const we=this.document.getElementById(this.sessionCheckIFrameName);we&&we.remove()}createNonce(){return new Promise(ve=>{if(this.rngUrl)throw new Error("createNonce with rng-web-api has not been implemented so far");const we="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-._~";let at=45,De="";const je=typeof self>"u"?null:self.crypto||self.msCrypto;if(je){let ke=new Uint8Array(at);je.getRandomValues(ke),ke.map||(ke.map=Array.prototype.map),ke=ke.map(Z=>we.charCodeAt(Z%66)),De=String.fromCharCode.apply(null,ke)}else for(;0"discovery_document_loaded"===at.type)).subscribe(at=>this.initCodeFlowInternal(ve,we))}initCodeFlowInternal(ve="",we={}){if(!this.validateUrlForHttps(this.loginUrl))throw new Error("loginUrl must use HTTPS (with TLS), or config value for property 'requireHttps' must be set to 'false' and allow HTTP (without TLS).");let at={},De=null;"string"==typeof we?De=we:"object"==typeof we&&(at=we),this.createLoginUrl(ve,De,null,!1,at).then(this.config.openUri).catch(je=>{console.error("Error in initAuthorizationCodeFlow"),console.error(je)})}createChallangeVerifierPairForPKCE(){var ve=this;return(0,n.Z)(function*(){if(!ve.crypto)throw new Error("PKCE support for code flow needs a CryptoHander. Did you import the OAuthModule using forRoot() ?");const we=yield ve.createNonce();return[Q(yield ve.crypto.calcHash(we,"sha-256")),we]})()}extractRecognizedCustomParameters(ve){let we=new Map;return this.config.customTokenParameters&&this.config.customTokenParameters.forEach(at=>{ve[at]&&we.set(at,JSON.stringify(ve[at]))}),we}revokeTokenAndLogout(ve={},we=!1){let at=this.revocationEndpoint,De=this.getAccessToken(),je=this.getRefreshToken();if(!De)return Promise.resolve();let ke=new b.HttpParams({encoder:new Me}),Z=(new b.HttpHeaders).set("Content-Type","application/x-www-form-urlencoded");if(this.useHttpBasicAuth){const re=btoa(`${this.clientId}:${this.dummyClientSecret}`);Z=Z.set("Authorization","Basic "+re)}if(this.useHttpBasicAuth||(ke=ke.set("client_id",this.clientId)),!this.useHttpBasicAuth&&this.dummyClientSecret&&(ke=ke.set("client_secret",this.dummyClientSecret)),this.customQueryParams)for(const re of Object.getOwnPropertyNames(this.customQueryParams))ke=ke.set(re,this.customQueryParams[re]);return new Promise((re,ce)=>{let Ee,it;if(De){let Rt=ke.set("token",De).set("token_type_hint","access_token");Ee=this.http.post(at,Rt,{headers:Z})}else Ee=(0,v.of)(null);if(je){let Rt=ke.set("token",je).set("token_type_hint","refresh_token");it=this.http.post(at,Rt,{headers:Z})}else it=(0,v.of)(null);we&&(Ee=Ee.pipe((0,w.K)(Rt=>0===Rt.status?(0,v.of)(null):(0,s._)(Rt))),it=it.pipe((0,w.K)(Rt=>0===Rt.status?(0,v.of)(null):(0,s._)(Rt)))),(0,l.a)([Ee,it]).subscribe(Rt=>{this.logOut(ve),re(Rt),this.logger.info("Token successfully revoked")},Rt=>{this.logger.error("Error revoking token",Rt),this.eventsSubject.next(new $("token_revoke_error",Rt)),ce(Rt)})})}clearLocationHash(){""!=location.hash&&(location.hash="")}}return Ue.\u0275fac=function(ve){return new(ve||Ue)(p.\u0275\u0275inject(p.NgZone),p.\u0275\u0275inject(b.HttpClient),p.\u0275\u0275inject(k,8),p.\u0275\u0275inject(Oe,8),p.\u0275\u0275inject(ue,8),p.\u0275\u0275inject(Be),p.\u0275\u0275inject(S),p.\u0275\u0275inject(Ce,8),p.\u0275\u0275inject(C.DOCUMENT),p.\u0275\u0275inject(R))},Ue.\u0275prov=p.\u0275\u0275defineInjectable({token:Ue,factory:Ue.\u0275fac}),Ue})();class Te{}class ct{handleError(We){return(0,s._)(We)}}let Lt=(()=>{class Ue{constructor(ve,we,at){this.oAuthService=ve,this.errorHandler=we,this.moduleConfig=at}checkUrl(ve){return this.moduleConfig.resourceServer.customUrlValidation?this.moduleConfig.resourceServer.customUrlValidation(ve):!this.moduleConfig.resourceServer.allowedUrls||!!this.moduleConfig.resourceServer.allowedUrls.find(we=>ve.toLowerCase().startsWith(we.toLowerCase()))}intercept(ve,we){const at=ve.url.toLowerCase();return this.moduleConfig&&this.moduleConfig.resourceServer&&this.checkUrl(at)?this.moduleConfig.resourceServer.sendAccessToken?(0,d.T)((0,v.of)(this.oAuthService.getAccessToken()).pipe((0,r.h)(je=>!!je)),this.oAuthService.events.pipe((0,r.h)(je=>"token_received"===je.type),(0,L.V)(this.oAuthService.waitForTokenInMsec||0),(0,w.K)(je=>(0,v.of)(null)),(0,M.U)(je=>this.oAuthService.getAccessToken()))).pipe((0,A.q)(1),(0,T.z)(je=>{if(je){const Z=ve.headers.set("Authorization","Bearer "+je);ve=ve.clone({headers:Z})}return we.handle(ve).pipe((0,w.K)(ke=>this.errorHandler.handleError(ke)))})):we.handle(ve).pipe((0,w.K)(je=>this.errorHandler.handleError(je))):we.handle(ve)}}return Ue.\u0275fac=function(ve){return new(ve||Ue)(p.\u0275\u0275inject(pe),p.\u0275\u0275inject(Te),p.\u0275\u0275inject(E,8))},Ue.\u0275prov=p.\u0275\u0275defineInjectable({token:Ue,factory:Ue.\u0275fac}),Ue})();function Dt(){return console}function Kt(){return typeof sessionStorage<"u"?sessionStorage:new F}function ze(Ue=null,We=O){return(0,p.makeEnvironmentProviders)([pe,Be,{provide:S,useFactory:Dt},{provide:k,useFactory:Kt},{provide:Oe,useClass:We},{provide:Ce,useClass:ie},{provide:Te,useClass:ct},{provide:E,useValue:Ue},{provide:b.HTTP_INTERCEPTORS,useClass:Lt,multi:!0},{provide:R,useClass:j}])}let yt=(()=>{class Ue{static forRoot(ve=null,we=O){return{ngModule:Ue,providers:[ze(ve,we)]}}}return Ue.\u0275fac=function(ve){return new(ve||Ue)},Ue.\u0275mod=p.\u0275\u0275defineNgModule({type:Ue}),Ue.\u0275inj=p.\u0275\u0275defineInjector({imports:[C.CommonModule]}),Ue})();class $t extends O{constructor(){super(),console.error("PLEASE READ THIS CAREFULLY:\n\nBeginning with angular-oauth2-oidc version 9, the JwksValidationHandler\nhas been moved to an library of its own. If you need it for implementing\nOAuth2/OIDC **implicit flow**, please install it using npm:\n\n npm i angular-oauth2-oidc-jwks --save\n\nAfter that, you can import it into your application:\n\n import { JwksValidationHandler } from 'angular-oauth2-oidc-jwks';\n\nPlease note, that this dependency is not needed for the **code flow**,\nwhich is nowadays the **recommented** one for single page applications.\nThis also results in smaller bundle sizes.\n")}}const Yt=new p.InjectionToken("AUTH_CONFIG")},9949:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{HIGHLIGHT_OPTIONS:()=>_,Highlight:()=>O,HighlightJS:()=>T,HighlightLoader:()=>L,HighlightModule:()=>E});var n=g(5879),p=g(6814),C=g(5619),b=g(2181),o=g(8180),v=g(4664),a=g(9397),c=g(6232),s=g(6306),l=g(8504),d=g(9278),r=g(7398),u=g(2459),h=g(927),m=g(6593);const _=new n.InjectionToken("HIGHLIGHT_OPTIONS");let M;let L=(()=>{class D{constructor(j,N,S){this.doc=j,this.platformId=N,this._options=S,this._ready=new C.X(null),this.ready=this._ready.asObservable().pipe((0,b.h)(k=>!!k),(0,o.q)(1)),(0,p.isPlatformBrowser)(N)&&(j.defaultView.hljs?this._ready.next(j.defaultView.hljs):(this._loadLibrary().pipe((0,v.w)(k=>this._options&&this._options.lineNumbersLoader?(j.defaultView.hljs=k,this.loadLineNumbers().pipe((0,a.b)(F=>{F.activateLineNumbers(),this._ready.next(k)}))):(this._ready.next(k),c.E)),(0,s.K)(k=>(console.error("[HLJS] ",k),c.E))).subscribe(),this._options?.themePath&&this.loadTheme(this._options.themePath)))}_loadLibrary(){if(this._options){if(this._options.fullLibraryLoader&&this._options.coreLibraryLoader)return(0,l._)(()=>"The full library and the core library were imported, only one of them should be imported!");if(this._options.fullLibraryLoader&&this._options.languages)return(0,l._)(()=>"The highlighting languages were imported they are not needed!");if(this._options.coreLibraryLoader&&!this._options.languages)return(0,l._)(()=>"The highlighting languages were not imported!");if(!this._options.coreLibraryLoader&&this._options.languages)return(0,l._)(()=>"The core library was not imported!");if(this._options.fullLibraryLoader)return this.loadFullLibrary();if(this._options.coreLibraryLoader&&this._options.languages&&Object.keys(this._options.languages).length)return this.loadCoreLibrary().pipe((0,v.w)(j=>this._loadLanguages(j)))}return(0,l._)(()=>"Highlight.js library was not imported!")}_loadLanguages(j){const N=Object.entries(this._options.languages).map(([S,k])=>A(k()).pipe((0,a.b)(F=>j.registerLanguage(S,F))));return(0,d.$)(...N).pipe((0,r.U)(()=>j))}loadCoreLibrary(){return A(this._options.coreLibraryLoader())}loadFullLibrary(){return A(this._options.fullLibraryLoader())}loadLineNumbers(){return(0,u.D)(this._options.lineNumbersLoader())}setTheme(j){(0,p.isPlatformBrowser)(this.platformId)&&(this._themeLinkElement?this._themeLinkElement.href=j:this.loadTheme(j))}loadTheme(j){this._themeLinkElement=this.doc.createElement("link"),this._themeLinkElement.href=j,this._themeLinkElement.type="text/css",this._themeLinkElement.rel="stylesheet",this._themeLinkElement.media="screen,print",this.doc.head.appendChild(this._themeLinkElement)}}return D.\u0275fac=function(j){return new(j||D)(n.\u0275\u0275inject(p.DOCUMENT),n.\u0275\u0275inject(n.PLATFORM_ID),n.\u0275\u0275inject(_,8))},D.\u0275prov=n.\u0275\u0275defineInjectable({token:D,factory:D.\u0275fac,providedIn:"root"}),D})();const A=D=>(0,u.D)(D).pipe((0,b.h)(R=>!!R?.default),(0,r.U)(R=>R.default));let T=(()=>{class D{get hljs(){return this._hljs}constructor(j,N){this._loader=j,this._hljs=null,j.ready.subscribe(S=>{this._hljs=S,N&&N.config&&(S.configure(N.config),S.listLanguages().length<1&&console.error("[HighlightJS]: No languages were registered!"))})}highlight(j,{language:N,ignoreIllegals:S}){return this._loader.ready.pipe((0,r.U)(k=>k.highlight(j,{language:N,ignoreIllegals:S})))}highlightAuto(j,N){return this._loader.ready.pipe((0,r.U)(S=>S.highlightAuto(j,N)))}highlightElement(j){return this._loader.ready.pipe((0,r.U)(N=>N.highlightElement(j)))}highlightAll(){return this._loader.ready.pipe((0,r.U)(j=>j.highlightAll()))}configure(j){return this._loader.ready.pipe((0,r.U)(N=>N.configure(j)))}registerLanguage(j,N){return this._loader.ready.pipe((0,a.b)(S=>S.registerLanguage(j,N)))}unregisterLanguage(j){return this._loader.ready.pipe((0,a.b)(N=>N.unregisterLanguage(j)))}registerAliases(j,{languageName:N}){return this._loader.ready.pipe((0,a.b)(S=>S.registerAliases(j,{languageName:N})))}listLanguages(){return this._loader.ready.pipe((0,r.U)(j=>j.listLanguages()))}getLanguage(j){return this._loader.ready.pipe((0,r.U)(N=>N.getLanguage(j)))}safeMode(){return this._loader.ready.pipe((0,r.U)(j=>j.safeMode()))}debugMode(){return this._loader.ready.pipe((0,r.U)(j=>j.debugMode()))}lineNumbersBlock(j){return this._loader.ready.pipe((0,b.h)(N=>!!N.lineNumbersBlock),(0,a.b)(N=>N.lineNumbersBlock(j)))}}return D.\u0275fac=function(j){return new(j||D)(n.\u0275\u0275inject(L),n.\u0275\u0275inject(_,8))},D.\u0275prov=n.\u0275\u0275defineInjectable({token:D,factory:D.\u0275fac,providedIn:"root"}),D})(),O=(()=>{class D{constructor(j,N,S,k,F){this._hljs=N,this._sanitizer=S,this.platformId=k,this._options=F,this.highlighted=new n.EventEmitter,this._nativeElement=j.nativeElement}ngOnChanges(j){(0,p.isPlatformBrowser)(this.platformId)&&null!==j?.code?.currentValue&&j.code.currentValue!==j.code.previousValue&&(this.code?this.highlightElement(this.code,this.languages):this.setTextContent(""))}highlightElement(j,N){this.setTextContent(j),this._hljs.highlightAuto(j,N).subscribe(S=>{this.setInnerHTML(S?.value),this.lineNumbers&&this._options&&this._options.lineNumbersLoader&&this.addLineNumbers(),this.highlighted.emit(S)})}addLineNumbers(){this.destroyLineNumbersObserver(),h.Z.schedule(()=>{this._hljs.lineNumbersBlock(this._nativeElement).subscribe(),this._lineNumbersObs=new MutationObserver(()=>{this._nativeElement.firstElementChild&&"TABLE"===this._nativeElement.firstElementChild.tagName.toUpperCase()&&this._nativeElement.classList.add("hljs-line-numbers"),this.destroyLineNumbersObserver()}),this._lineNumbersObs.observe(this._nativeElement,{childList:!0})})}destroyLineNumbersObserver(){this._lineNumbersObs&&(this._lineNumbersObs.disconnect(),this._lineNumbersObs=null)}setTextContent(j){h.Z.schedule(()=>this._nativeElement.textContent=j)}setInnerHTML(j){h.Z.schedule(()=>this._nativeElement.innerHTML=function w(D){return function x(){if(!M)try{M=window?.trustedTypes?.createPolicy("ngx-highlightjs",{createHTML:D=>D})}catch{}return M}()?.createHTML(D)||D}(this._sanitizer.sanitize(n.SecurityContext.HTML,j)||""))}}return D.\u0275fac=function(j){return new(j||D)(n.\u0275\u0275directiveInject(n.ElementRef),n.\u0275\u0275directiveInject(T),n.\u0275\u0275directiveInject(m.DomSanitizer),n.\u0275\u0275directiveInject(n.PLATFORM_ID),n.\u0275\u0275directiveInject(_,8))},D.\u0275dir=n.\u0275\u0275defineDirective({type:D,selectors:[["","highlight",""]],hostVars:2,hostBindings:function(j,N){2&j&&n.\u0275\u0275classProp("hljs",!0)},inputs:{code:["highlight","code"],languages:"languages",lineNumbers:"lineNumbers"},outputs:{highlighted:"highlighted"},standalone:!0,features:[n.\u0275\u0275NgOnChangesFeature]}),D})(),E=(()=>{class D{}return D.\u0275fac=function(j){return new(j||D)},D.\u0275mod=n.\u0275\u0275defineNgModule({type:D}),D.\u0275inj=n.\u0275\u0275defineInjector({}),D})()},827:(Se,X,g)=>{"use strict";function o(P){let Re=P.length;for(;--Re>=0;)P[Re]=0}g.r(X),g.d(X,{Deflate:()=>uo,Inflate:()=>ws,constants:()=>Fa,default:()=>Ml,deflate:()=>ho,deflateRaw:()=>Er,gzip:()=>xl,inflate:()=>Es,inflateRaw:()=>Ds,ungzip:()=>Zs});const E=new Uint8Array([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0]),D=new Uint8Array([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13]),R=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7]),j=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),S=new Array(576);o(S);const k=new Array(60);o(k);const F=new Array(512);o(F);const Y=new Array(256);o(Y);const se=new Array(29);o(se);const ne=new Array(30);function me(P,Re,H,Ze,gt){this.static_tree=P,this.extra_bits=Re,this.extra_base=H,this.elems=Ze,this.max_length=gt,this.has_stree=P&&P.length}let $,q,Q;function ue(P,Re){this.dyn_tree=P,this.max_code=0,this.stat_desc=Re}o(ne);const Me=P=>P<256?F[P]:F[256+(P>>>7)],Oe=(P,Re)=>{P.pending_buf[P.pending++]=255&Re,P.pending_buf[P.pending++]=Re>>>8&255},Xe=(P,Re,H)=>{P.bi_valid>16-H?(P.bi_buf|=Re<>16-P.bi_valid,P.bi_valid+=H-16):(P.bi_buf|=Re<{Xe(P,H[2*Re],H[2*Re+1])},$e=(P,Re)=>{let H=0;do{H|=1&P,P>>>=1,H<<=1}while(--Re>0);return H>>>1},tt=(P,Re,H)=>{const Ze=new Array(16);let ut,Xt,gt=0;for(ut=1;ut<=15;ut++)gt=gt+H[ut-1]<<1,Ze[ut]=gt;for(Xt=0;Xt<=Re;Xt++){let Vt=P[2*Xt+1];0!==Vt&&(P[2*Xt]=$e(Ze[Vt]++,Vt))}},bt=P=>{let Re;for(Re=0;Re<286;Re++)P.dyn_ltree[2*Re]=0;for(Re=0;Re<30;Re++)P.dyn_dtree[2*Re]=0;for(Re=0;Re<19;Re++)P.bl_tree[2*Re]=0;P.dyn_ltree[512]=1,P.opt_len=P.static_len=0,P.sym_next=P.matches=0},xt=P=>{P.bi_valid>8?Oe(P,P.bi_buf):P.bi_valid>0&&(P.pending_buf[P.pending++]=P.bi_buf),P.bi_buf=0,P.bi_valid=0},nt=(P,Re,H,Ze)=>{const gt=2*Re,ut=2*H;return P[gt]{const Ze=P.heap[H];let gt=H<<1;for(;gt<=P.heap_len&&(gt{let Ze,gt,Xt,Vt,ut=0;if(0!==P.sym_next)do{Ze=255&P.pending_buf[P.sym_buf+ut++],Ze+=(255&P.pending_buf[P.sym_buf+ut++])<<8,gt=P.pending_buf[P.sym_buf+ut++],0===Ze?Be(P,gt,Re):(Xt=Y[gt],Be(P,Xt+256+1,Re),Vt=E[Xt],0!==Vt&&(gt-=se[Xt],Xe(P,gt,Vt)),Ze--,Xt=Me(Ze),Be(P,Xt,H),Vt=D[Xt],0!==Vt&&(Ze-=ne[Xt],Xe(P,Ze,Vt)))}while(ut{const H=Re.dyn_tree,Ze=Re.stat_desc.static_tree,gt=Re.stat_desc.has_stree,ut=Re.stat_desc.elems;let Xt,Vt,Ot,Hn=-1;for(P.heap_len=0,P.heap_max=573,Xt=0;Xt>1;Xt>=1;Xt--)ot(P,H,Xt);Ot=ut;do{Xt=P.heap[1],P.heap[1]=P.heap[P.heap_len--],ot(P,H,1),Vt=P.heap[1],P.heap[--P.heap_max]=Xt,P.heap[--P.heap_max]=Vt,H[2*Ot]=H[2*Xt]+H[2*Vt],P.depth[Ot]=(P.depth[Xt]>=P.depth[Vt]?P.depth[Xt]:P.depth[Vt])+1,H[2*Xt+1]=H[2*Vt+1]=Ot,P.heap[1]=Ot++,ot(P,H,1)}while(P.heap_len>=2);P.heap[--P.heap_max]=P.heap[1],((P,Re)=>{const H=Re.dyn_tree,Ze=Re.max_code,gt=Re.stat_desc.static_tree,ut=Re.stat_desc.has_stree,Xt=Re.stat_desc.extra_bits,Vt=Re.stat_desc.extra_base,Hn=Re.stat_desc.max_length;let Ot,Jt,Ui,Fn,bn,qn,nr=0;for(Fn=0;Fn<=15;Fn++)P.bl_count[Fn]=0;for(H[2*P.heap[P.heap_max]+1]=0,Ot=P.heap_max+1;Ot<573;Ot++)Jt=P.heap[Ot],Fn=H[2*H[2*Jt+1]+1]+1,Fn>Hn&&(Fn=Hn,nr++),H[2*Jt+1]=Fn,!(Jt>Ze)&&(P.bl_count[Fn]++,bn=0,Jt>=Vt&&(bn=Xt[Jt-Vt]),qn=H[2*Jt],P.opt_len+=qn*(Fn+bn),ut&&(P.static_len+=qn*(gt[2*Jt+1]+bn)));if(0!==nr){do{for(Fn=Hn-1;0===P.bl_count[Fn];)Fn--;P.bl_count[Fn]--,P.bl_count[Fn+1]+=2,P.bl_count[Hn]--,nr-=2}while(nr>0);for(Fn=Hn;0!==Fn;Fn--)for(Jt=P.bl_count[Fn];0!==Jt;)Ui=P.heap[--Ot],!(Ui>Ze)&&(H[2*Ui+1]!==Fn&&(P.opt_len+=(Fn-H[2*Ui+1])*H[2*Ui],H[2*Ui+1]=Fn),Jt--)}})(P,Re),tt(H,Hn,P.bl_count)},J=(P,Re,H)=>{let Ze,ut,gt=-1,Xt=Re[1],Vt=0,Hn=7,Ot=4;for(0===Xt&&(Hn=138,Ot=3),Re[2*(H+1)+1]=65535,Ze=0;Ze<=H;Ze++)ut=Xt,Xt=Re[2*(Ze+1)+1],!(++Vt{let Ze,ut,gt=-1,Xt=Re[1],Vt=0,Hn=7,Ot=4;for(0===Xt&&(Hn=138,Ot=3),Ze=0;Ze<=H;Ze++)if(ut=Xt,Xt=Re[2*(Ze+1)+1],!(++Vt{Xe(P,0+(Ze?1:0),3),xt(P),Oe(P,H),Oe(P,~H),H&&P.pending_buf.set(P.window.subarray(Re,Re+H),P.pending),P.pending+=H};var Ue={_tr_init:P=>{pe||((()=>{let P,Re,H,Ze,gt;const ut=new Array(16);for(H=0,Ze=0;Ze<28;Ze++)for(se[Ze]=H,P=0;P<1<>=7;Ze<30;Ze++)for(ne[Ze]=gt<<7,P=0;P<1<{let gt,ut,Xt=0;P.level>0?(2===P.strm.data_type&&(P.strm.data_type=(P=>{let H,Re=4093624447;for(H=0;H<=31;H++,Re>>>=1)if(1&Re&&0!==P.dyn_ltree[2*H])return 0;if(0!==P.dyn_ltree[18]||0!==P.dyn_ltree[20]||0!==P.dyn_ltree[26])return 1;for(H=32;H<256;H++)if(0!==P.dyn_ltree[2*H])return 1;return 0})(P)),rt(P,P.l_desc),rt(P,P.d_desc),Xt=(P=>{let Re;for(J(P,P.dyn_ltree,P.l_desc.max_code),J(P,P.dyn_dtree,P.d_desc.max_code),rt(P,P.bl_desc),Re=18;Re>=3&&0===P.bl_tree[2*j[Re]+1];Re--);return P.opt_len+=3*(Re+1)+5+5+4,Re})(P),gt=P.opt_len+3+7>>>3,ut=P.static_len+3+7>>>3,ut<=gt&&(gt=ut)):gt=ut=H+5,H+4<=gt&&-1!==Re?ct(P,Re,H,Ze):4===P.strategy||ut===gt?(Xe(P,2+(Ze?1:0),3),vt(P,S,k)):(Xe(P,4+(Ze?1:0),3),((P,Re,H,Ze)=>{let gt;for(Xe(P,Re-257,5),Xe(P,H-1,5),Xe(P,Ze-4,4),gt=0;gt(P.pending_buf[P.sym_buf+P.sym_next++]=Re,P.pending_buf[P.sym_buf+P.sym_next++]=Re>>8,P.pending_buf[P.sym_buf+P.sym_next++]=H,0===Re?P.dyn_ltree[2*H]++:(P.matches++,Re--,P.dyn_ltree[2*(Y[H]+256+1)]++,P.dyn_dtree[2*Me(Re)]++),P.sym_next===P.sym_end),_tr_align:P=>{Xe(P,2,3),Be(P,256,S),(P=>{16===P.bi_valid?(Oe(P,P.bi_buf),P.bi_buf=0,P.bi_valid=0):P.bi_valid>=8&&(P.pending_buf[P.pending++]=255&P.bi_buf,P.bi_buf>>=8,P.bi_valid-=8)})(P)}},ve=(P,Re,H,Ze)=>{let gt=65535&P|0,ut=P>>>16&65535|0,Xt=0;for(;0!==H;){Xt=H>2e3?2e3:H,H-=Xt;do{gt=gt+Re[Ze++]|0,ut=ut+gt|0}while(--Xt);gt%=65521,ut%=65521}return gt|ut<<16|0};const at=new Uint32Array((()=>{let P,Re=[];for(var H=0;H<256;H++){P=H;for(var Ze=0;Ze<8;Ze++)P=1&P?3988292384^P>>>1:P>>>1;Re[H]=P}return Re})());var je=(P,Re,H,Ze)=>{const gt=at,ut=Ze+H;P^=-1;for(let Xt=Ze;Xt>>8^gt[255&(P^Re[Xt])];return-1^P},ke={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"},Z={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8};const{_tr_init:re,_tr_stored_block:ce,_tr_flush_block:Ee,_tr_tally:it,_tr_align:Rt}=Ue,{Z_NO_FLUSH:Ye,Z_PARTIAL_FLUSH:qe,Z_FULL_FLUSH:Ne,Z_FINISH:dt,Z_BLOCK:At,Z_OK:tn,Z_STREAM_END:wn,Z_STREAM_ERROR:Tn,Z_DATA_ERROR:Sn,Z_BUF_ERROR:Mn,Z_DEFAULT_COMPRESSION:Ci,Z_FILTERED:di,Z_HUFFMAN_ONLY:Li,Z_RLE:Qi,Z_FIXED:wt,Z_DEFAULT_STRATEGY:mt,Z_UNKNOWN:pt,Z_DEFLATED:qt}=Z,An=262,It=(P,Re)=>(P.msg=ke[Re],Re),zt=P=>2*P-(P>4?9:0),an=P=>{let Re=P.length;for(;--Re>=0;)P[Re]=0},gn=P=>{let Re,H,Ze,gt=P.w_size;Re=P.hash_size,Ze=Re;do{H=P.head[--Ze],P.head[Ze]=H>=gt?H-gt:0}while(--Re);Re=gt,Ze=Re;do{H=P.prev[--Ze],P.prev[Ze]=H>=gt?H-gt:0}while(--Re)};let Jn=(P,Re,H)=>(Re<{const Re=P.state;let H=Re.pending;H>P.avail_out&&(H=P.avail_out),0!==H&&(P.output.set(Re.pending_buf.subarray(Re.pending_out,Re.pending_out+H),P.next_out),P.next_out+=H,Re.pending_out+=H,P.total_out+=H,P.avail_out-=H,Re.pending-=H,0===Re.pending&&(Re.pending_out=0))},kn=(P,Re)=>{Ee(P,P.block_start>=0?P.block_start:-1,P.strstart-P.block_start,Re),P.block_start=P.strstart,Nn(P.strm)},Un=(P,Re)=>{P.pending_buf[P.pending++]=Re},vi=(P,Re)=>{P.pending_buf[P.pending++]=Re>>>8&255,P.pending_buf[P.pending++]=255&Re},$i=(P,Re,H,Ze)=>{let gt=P.avail_in;return gt>Ze&&(gt=Ze),0===gt?0:(P.avail_in-=gt,Re.set(P.input.subarray(P.next_in,P.next_in+gt),H),1===P.state.wrap?P.adler=ve(P.adler,Re,gt,H):2===P.state.wrap&&(P.adler=je(P.adler,Re,gt,H)),P.next_in+=gt,P.total_in+=gt,gt)},er=(P,Re)=>{let gt,ut,H=P.max_chain_length,Ze=P.strstart,Xt=P.prev_length,Vt=P.nice_match;const Hn=P.strstart>P.w_size-An?P.strstart-(P.w_size-An):0,Ot=P.window,Jt=P.w_mask,Ui=P.prev,Fn=P.strstart+258;let bn=Ot[Ze+Xt-1],qn=Ot[Ze+Xt];P.prev_length>=P.good_match&&(H>>=2),Vt>P.lookahead&&(Vt=P.lookahead);do{if(gt=Re,Ot[gt+Xt]===qn&&Ot[gt+Xt-1]===bn&&Ot[gt]===Ot[Ze]&&Ot[++gt]===Ot[Ze+1]){Ze+=2,gt++;do{}while(Ot[++Ze]===Ot[++gt]&&Ot[++Ze]===Ot[++gt]&&Ot[++Ze]===Ot[++gt]&&Ot[++Ze]===Ot[++gt]&&Ot[++Ze]===Ot[++gt]&&Ot[++Ze]===Ot[++gt]&&Ot[++Ze]===Ot[++gt]&&Ot[++Ze]===Ot[++gt]&&ZeXt){if(P.match_start=Re,Xt=ut,ut>=Vt)break;bn=Ot[Ze+Xt-1],qn=Ot[Ze+Xt]}}}while((Re=Ui[Re&Jt])>Hn&&0!=--H);return Xt<=P.lookahead?Xt:P.lookahead},fn=P=>{const Re=P.w_size;let H,Ze,gt;do{if(Ze=P.window_size-P.lookahead-P.strstart,P.strstart>=Re+(Re-An)&&(P.window.set(P.window.subarray(Re,Re+Re-Ze),0),P.match_start-=Re,P.strstart-=Re,P.block_start-=Re,P.insert>P.strstart&&(P.insert=P.strstart),gn(P),Ze+=Re),0===P.strm.avail_in)break;if(H=$i(P.strm,P.window,P.strstart+P.lookahead,Ze),P.lookahead+=H,P.lookahead+P.insert>=3)for(gt=P.strstart-P.insert,P.ins_h=P.window[gt],P.ins_h=Jn(P,P.ins_h,P.window[gt+1]);P.insert&&(P.ins_h=Jn(P,P.ins_h,P.window[gt+3-1]),P.prev[gt&P.w_mask]=P.head[P.ins_h],P.head[P.ins_h]=gt,gt++,P.insert--,!(P.lookahead+P.insert<3)););}while(P.lookahead{let Ze,gt,ut,H=P.pending_buf_size-5>P.w_size?P.w_size:P.pending_buf_size-5,Xt=0,Vt=P.strm.avail_in;do{if(Ze=65535,ut=P.bi_valid+42>>3,P.strm.avail_outgt+P.strm.avail_in&&(Ze=gt+P.strm.avail_in),Ze>ut&&(Ze=ut),Ze>8,P.pending_buf[P.pending-2]=~Ze,P.pending_buf[P.pending-1]=~Ze>>8,Nn(P.strm),gt&&(gt>Ze&&(gt=Ze),P.strm.output.set(P.window.subarray(P.block_start,P.block_start+gt),P.strm.next_out),P.strm.next_out+=gt,P.strm.avail_out-=gt,P.strm.total_out+=gt,P.block_start+=gt,Ze-=gt),Ze&&($i(P.strm,P.strm.output,P.strm.next_out,Ze),P.strm.next_out+=Ze,P.strm.avail_out-=Ze,P.strm.total_out+=Ze)}while(0===Xt);return Vt-=P.strm.avail_in,Vt&&(Vt>=P.w_size?(P.matches=2,P.window.set(P.strm.input.subarray(P.strm.next_in-P.w_size,P.strm.next_in),0),P.strstart=P.w_size,P.insert=P.strstart):(P.window_size-P.strstart<=Vt&&(P.strstart-=P.w_size,P.window.set(P.window.subarray(P.w_size,P.w_size+P.strstart),0),P.matches<2&&P.matches++,P.insert>P.strstart&&(P.insert=P.strstart)),P.window.set(P.strm.input.subarray(P.strm.next_in-Vt,P.strm.next_in),P.strstart),P.strstart+=Vt,P.insert+=Vt>P.w_size-P.insert?P.w_size-P.insert:Vt),P.block_start=P.strstart),P.high_waterut&&P.block_start>=P.w_size&&(P.block_start-=P.w_size,P.strstart-=P.w_size,P.window.set(P.window.subarray(P.w_size,P.w_size+P.strstart),0),P.matches<2&&P.matches++,ut+=P.w_size,P.insert>P.strstart&&(P.insert=P.strstart)),ut>P.strm.avail_in&&(ut=P.strm.avail_in),ut&&($i(P.strm,P.window,P.strstart,ut),P.strstart+=ut,P.insert+=ut>P.w_size-P.insert?P.w_size-P.insert:ut),P.high_water>3,ut=P.pending_buf_size-ut>65535?65535:P.pending_buf_size-ut,H=ut>P.w_size?P.w_size:ut,gt=P.strstart-P.block_start,(gt>=H||(gt||Re===dt)&&Re!==Ye&&0===P.strm.avail_in&><=ut)&&(Ze=gt>ut?ut:gt,Xt=Re===dt&&0===P.strm.avail_in&&Ze===gt?1:0,ce(P,P.block_start,Ze,Xt),P.block_start+=Ze,Nn(P.strm)),Xt?3:1)},rn=(P,Re)=>{let H,Ze;for(;;){if(P.lookahead=3&&(P.ins_h=Jn(P,P.ins_h,P.window[P.strstart+3-1]),H=P.prev[P.strstart&P.w_mask]=P.head[P.ins_h],P.head[P.ins_h]=P.strstart),0!==H&&P.strstart-H<=P.w_size-An&&(P.match_length=er(P,H)),P.match_length>=3)if(Ze=it(P,P.strstart-P.match_start,P.match_length-3),P.lookahead-=P.match_length,P.match_length<=P.max_lazy_match&&P.lookahead>=3){P.match_length--;do{P.strstart++,P.ins_h=Jn(P,P.ins_h,P.window[P.strstart+3-1]),H=P.prev[P.strstart&P.w_mask]=P.head[P.ins_h],P.head[P.ins_h]=P.strstart}while(0!=--P.match_length);P.strstart++}else P.strstart+=P.match_length,P.match_length=0,P.ins_h=P.window[P.strstart],P.ins_h=Jn(P,P.ins_h,P.window[P.strstart+1]);else Ze=it(P,0,P.window[P.strstart]),P.lookahead--,P.strstart++;if(Ze&&(kn(P,!1),0===P.strm.avail_out))return 1}return P.insert=P.strstart<2?P.strstart:2,Re===dt?(kn(P,!0),0===P.strm.avail_out?3:4):P.sym_next&&(kn(P,!1),0===P.strm.avail_out)?1:2},xn=(P,Re)=>{let H,Ze,gt;for(;;){if(P.lookahead=3&&(P.ins_h=Jn(P,P.ins_h,P.window[P.strstart+3-1]),H=P.prev[P.strstart&P.w_mask]=P.head[P.ins_h],P.head[P.ins_h]=P.strstart),P.prev_length=P.match_length,P.prev_match=P.match_start,P.match_length=2,0!==H&&P.prev_length4096)&&(P.match_length=2)),P.prev_length>=3&&P.match_length<=P.prev_length){gt=P.strstart+P.lookahead-3,Ze=it(P,P.strstart-1-P.prev_match,P.prev_length-3),P.lookahead-=P.prev_length-1,P.prev_length-=2;do{++P.strstart<=gt&&(P.ins_h=Jn(P,P.ins_h,P.window[P.strstart+3-1]),H=P.prev[P.strstart&P.w_mask]=P.head[P.ins_h],P.head[P.ins_h]=P.strstart)}while(0!=--P.prev_length);if(P.match_available=0,P.match_length=2,P.strstart++,Ze&&(kn(P,!1),0===P.strm.avail_out))return 1}else if(P.match_available){if(Ze=it(P,0,P.window[P.strstart-1]),Ze&&kn(P,!1),P.strstart++,P.lookahead--,0===P.strm.avail_out)return 1}else P.match_available=1,P.strstart++,P.lookahead--}return P.match_available&&(Ze=it(P,0,P.window[P.strstart-1]),P.match_available=0),P.insert=P.strstart<2?P.strstart:2,Re===dt?(kn(P,!0),0===P.strm.avail_out?3:4):P.sym_next&&(kn(P,!1),0===P.strm.avail_out)?1:2};function zi(P,Re,H,Ze,gt){this.good_length=P,this.max_lazy=Re,this.nice_length=H,this.max_chain=Ze,this.func=gt}const xi=[new zi(0,0,0,0,yn),new zi(4,4,8,4,rn),new zi(4,5,16,8,rn),new zi(4,6,32,32,rn),new zi(4,4,16,16,xn),new zi(8,16,32,32,xn),new zi(8,16,128,128,xn),new zi(8,32,128,256,xn),new zi(32,128,258,1024,xn),new zi(32,258,258,4096,xn)];function gi(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=qt,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new Uint16Array(1146),this.dyn_dtree=new Uint16Array(122),this.bl_tree=new Uint16Array(78),an(this.dyn_ltree),an(this.dyn_dtree),an(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new Uint16Array(16),this.heap=new Uint16Array(573),an(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new Uint16Array(573),an(this.depth),this.sym_buf=0,this.lit_bufsize=0,this.sym_next=0,this.sym_end=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}const Ke=P=>{if(!P)return 1;const Re=P.state;return!Re||Re.strm!==P||42!==Re.status&&57!==Re.status&&69!==Re.status&&73!==Re.status&&91!==Re.status&&103!==Re.status&&113!==Re.status&&666!==Re.status?1:0},kt=P=>{if(Ke(P))return It(P,Tn);P.total_in=P.total_out=0,P.data_type=pt;const Re=P.state;return Re.pending=0,Re.pending_out=0,Re.wrap<0&&(Re.wrap=-Re.wrap),Re.status=2===Re.wrap?57:Re.wrap?42:113,P.adler=2===Re.wrap?0:1,Re.last_flush=-2,re(Re),tn},U=P=>{const Re=kt(P);return Re===tn&&(P=>{P.window_size=2*P.w_size,an(P.head),P.max_lazy_match=xi[P.level].max_lazy,P.good_match=xi[P.level].good_length,P.nice_match=xi[P.level].nice_length,P.max_chain_length=xi[P.level].max_chain,P.strstart=0,P.block_start=0,P.lookahead=0,P.insert=0,P.match_length=P.prev_length=2,P.match_available=0,P.ins_h=0})(P.state),Re},Pe=(P,Re,H,Ze,gt,ut)=>{if(!P)return Tn;let Xt=1;if(Re===Ci&&(Re=6),Ze<0?(Xt=0,Ze=-Ze):Ze>15&&(Xt=2,Ze-=16),gt<1||gt>9||H!==qt||Ze<8||Ze>15||Re<0||Re>9||ut<0||ut>wt||8===Ze&&1!==Xt)return It(P,Tn);8===Ze&&(Ze=9);const Vt=new gi;return P.state=Vt,Vt.strm=P,Vt.status=42,Vt.wrap=Xt,Vt.gzhead=null,Vt.w_bits=Ze,Vt.w_size=1<Pe(P,Re,qt,15,8,mt),deflateInit2:Pe,deflateReset:U,deflateResetKeep:kt,deflateSetHeader:(P,Re)=>Ke(P)||2!==P.state.wrap?Tn:(P.state.gzhead=Re,tn),deflate:(P,Re)=>{if(Ke(P)||Re>At||Re<0)return P?It(P,Tn):Tn;const H=P.state;if(!P.output||0!==P.avail_in&&!P.input||666===H.status&&Re!==dt)return It(P,0===P.avail_out?Mn:Tn);const Ze=H.last_flush;if(H.last_flush=Re,0!==H.pending){if(Nn(P),0===P.avail_out)return H.last_flush=-1,tn}else if(0===P.avail_in&&zt(Re)<=zt(Ze)&&Re!==dt)return It(P,Mn);if(666===H.status&&0!==P.avail_in)return It(P,Mn);if(42===H.status&&0===H.wrap&&(H.status=113),42===H.status){let gt=qt+(H.w_bits-8<<4)<<8,ut=-1;if(ut=H.strategy>=Li||H.level<2?0:H.level<6?1:6===H.level?2:3,gt|=ut<<6,0!==H.strstart&&(gt|=32),gt+=31-gt%31,vi(H,gt),0!==H.strstart&&(vi(H,P.adler>>>16),vi(H,65535&P.adler)),P.adler=1,H.status=113,Nn(P),0!==H.pending)return H.last_flush=-1,tn}if(57===H.status)if(P.adler=0,Un(H,31),Un(H,139),Un(H,8),H.gzhead)Un(H,(H.gzhead.text?1:0)+(H.gzhead.hcrc?2:0)+(H.gzhead.extra?4:0)+(H.gzhead.name?8:0)+(H.gzhead.comment?16:0)),Un(H,255&H.gzhead.time),Un(H,H.gzhead.time>>8&255),Un(H,H.gzhead.time>>16&255),Un(H,H.gzhead.time>>24&255),Un(H,9===H.level?2:H.strategy>=Li||H.level<2?4:0),Un(H,255&H.gzhead.os),H.gzhead.extra&&H.gzhead.extra.length&&(Un(H,255&H.gzhead.extra.length),Un(H,H.gzhead.extra.length>>8&255)),H.gzhead.hcrc&&(P.adler=je(P.adler,H.pending_buf,H.pending,0)),H.gzindex=0,H.status=69;else if(Un(H,0),Un(H,0),Un(H,0),Un(H,0),Un(H,0),Un(H,9===H.level?2:H.strategy>=Li||H.level<2?4:0),Un(H,3),H.status=113,Nn(P),0!==H.pending)return H.last_flush=-1,tn;if(69===H.status){if(H.gzhead.extra){let gt=H.pending,ut=(65535&H.gzhead.extra.length)-H.gzindex;for(;H.pending+ut>H.pending_buf_size;){let Vt=H.pending_buf_size-H.pending;if(H.pending_buf.set(H.gzhead.extra.subarray(H.gzindex,H.gzindex+Vt),H.pending),H.pending=H.pending_buf_size,H.gzhead.hcrc&&H.pending>gt&&(P.adler=je(P.adler,H.pending_buf,H.pending-gt,gt)),H.gzindex+=Vt,Nn(P),0!==H.pending)return H.last_flush=-1,tn;gt=0,ut-=Vt}let Xt=new Uint8Array(H.gzhead.extra);H.pending_buf.set(Xt.subarray(H.gzindex,H.gzindex+ut),H.pending),H.pending+=ut,H.gzhead.hcrc&&H.pending>gt&&(P.adler=je(P.adler,H.pending_buf,H.pending-gt,gt)),H.gzindex=0}H.status=73}if(73===H.status){if(H.gzhead.name){let ut,gt=H.pending;do{if(H.pending===H.pending_buf_size){if(H.gzhead.hcrc&&H.pending>gt&&(P.adler=je(P.adler,H.pending_buf,H.pending-gt,gt)),Nn(P),0!==H.pending)return H.last_flush=-1,tn;gt=0}ut=H.gzindexgt&&(P.adler=je(P.adler,H.pending_buf,H.pending-gt,gt)),H.gzindex=0}H.status=91}if(91===H.status){if(H.gzhead.comment){let ut,gt=H.pending;do{if(H.pending===H.pending_buf_size){if(H.gzhead.hcrc&&H.pending>gt&&(P.adler=je(P.adler,H.pending_buf,H.pending-gt,gt)),Nn(P),0!==H.pending)return H.last_flush=-1,tn;gt=0}ut=H.gzindexgt&&(P.adler=je(P.adler,H.pending_buf,H.pending-gt,gt))}H.status=103}if(103===H.status){if(H.gzhead.hcrc){if(H.pending+2>H.pending_buf_size&&(Nn(P),0!==H.pending))return H.last_flush=-1,tn;Un(H,255&P.adler),Un(H,P.adler>>8&255),P.adler=0}if(H.status=113,Nn(P),0!==H.pending)return H.last_flush=-1,tn}if(0!==P.avail_in||0!==H.lookahead||Re!==Ye&&666!==H.status){let gt=0===H.level?yn(H,Re):H.strategy===Li?((P,Re)=>{let H;for(;;){if(0===P.lookahead&&(fn(P),0===P.lookahead)){if(Re===Ye)return 1;break}if(P.match_length=0,H=it(P,0,P.window[P.strstart]),P.lookahead--,P.strstart++,H&&(kn(P,!1),0===P.strm.avail_out))return 1}return P.insert=0,Re===dt?(kn(P,!0),0===P.strm.avail_out?3:4):P.sym_next&&(kn(P,!1),0===P.strm.avail_out)?1:2})(H,Re):H.strategy===Qi?((P,Re)=>{let H,Ze,gt,ut;const Xt=P.window;for(;;){if(P.lookahead<=258){if(fn(P),P.lookahead<=258&&Re===Ye)return 1;if(0===P.lookahead)break}if(P.match_length=0,P.lookahead>=3&&P.strstart>0&&(gt=P.strstart-1,Ze=Xt[gt],Ze===Xt[++gt]&&Ze===Xt[++gt]&&Ze===Xt[++gt])){ut=P.strstart+258;do{}while(Ze===Xt[++gt]&&Ze===Xt[++gt]&&Ze===Xt[++gt]&&Ze===Xt[++gt]&&Ze===Xt[++gt]&&Ze===Xt[++gt]&&Ze===Xt[++gt]&&Ze===Xt[++gt]&>P.lookahead&&(P.match_length=P.lookahead)}if(P.match_length>=3?(H=it(P,1,P.match_length-3),P.lookahead-=P.match_length,P.strstart+=P.match_length,P.match_length=0):(H=it(P,0,P.window[P.strstart]),P.lookahead--,P.strstart++),H&&(kn(P,!1),0===P.strm.avail_out))return 1}return P.insert=0,Re===dt?(kn(P,!0),0===P.strm.avail_out?3:4):P.sym_next&&(kn(P,!1),0===P.strm.avail_out)?1:2})(H,Re):xi[H.level].func(H,Re);if((3===gt||4===gt)&&(H.status=666),1===gt||3===gt)return 0===P.avail_out&&(H.last_flush=-1),tn;if(2===gt&&(Re===qe?Rt(H):Re!==At&&(ce(H,0,0,!1),Re===Ne&&(an(H.head),0===H.lookahead&&(H.strstart=0,H.block_start=0,H.insert=0))),Nn(P),0===P.avail_out))return H.last_flush=-1,tn}return Re!==dt?tn:H.wrap<=0?wn:(2===H.wrap?(Un(H,255&P.adler),Un(H,P.adler>>8&255),Un(H,P.adler>>16&255),Un(H,P.adler>>24&255),Un(H,255&P.total_in),Un(H,P.total_in>>8&255),Un(H,P.total_in>>16&255),Un(H,P.total_in>>24&255)):(vi(H,P.adler>>>16),vi(H,65535&P.adler)),Nn(P),H.wrap>0&&(H.wrap=-H.wrap),0!==H.pending?tn:wn)},deflateEnd:P=>{if(Ke(P))return Tn;const Re=P.state.status;return P.state=null,113===Re?It(P,Sn):tn},deflateSetDictionary:(P,Re)=>{let H=Re.length;if(Ke(P))return Tn;const Ze=P.state,gt=Ze.wrap;if(2===gt||1===gt&&42!==Ze.status||Ze.lookahead)return Tn;if(1===gt&&(P.adler=ve(P.adler,Re,H,0)),Ze.wrap=0,H>=Ze.w_size){0===gt&&(an(Ze.head),Ze.strstart=0,Ze.block_start=0,Ze.insert=0);let Hn=new Uint8Array(Ze.w_size);Hn.set(Re.subarray(H-Ze.w_size,H),0),Re=Hn,H=Ze.w_size}const ut=P.avail_in,Xt=P.next_in,Vt=P.input;for(P.avail_in=H,P.next_in=0,P.input=Re,fn(Ze);Ze.lookahead>=3;){let Hn=Ze.strstart,Ot=Ze.lookahead-2;do{Ze.ins_h=Jn(Ze,Ze.ins_h,Ze.window[Hn+3-1]),Ze.prev[Hn&Ze.w_mask]=Ze.head[Ze.ins_h],Ze.head[Ze.ins_h]=Hn,Hn++}while(--Ot);Ze.strstart=Hn,Ze.lookahead=2,fn(Ze)}return Ze.strstart+=Ze.lookahead,Ze.block_start=Ze.strstart,Ze.insert=Ze.lookahead,Ze.lookahead=0,Ze.match_length=Ze.prev_length=2,Ze.match_available=0,P.next_in=Xt,P.input=Vt,P.avail_in=ut,Ze.wrap=gt,tn},deflateInfo:"pako deflate (from Nodeca project)"};const Wt=(P,Re)=>Object.prototype.hasOwnProperty.call(P,Re);var _n={assign:function(P){const Re=Array.prototype.slice.call(arguments,1);for(;Re.length;){const H=Re.shift();if(H){if("object"!=typeof H)throw new TypeError(H+"must be non-object");for(const Ze in H)Wt(H,Ze)&&(P[Ze]=H[Ze])}}return P},flattenChunks:P=>{let Re=0;for(let Ze=0,gt=P.length;Ze=252?6:P>=248?5:P>=240?4:P>=224?3:P>=192?2:1;Vn[254]=Vn[254]=1;var Xn={string2buf:P=>{if("function"==typeof TextEncoder&&TextEncoder.prototype.encode)return(new TextEncoder).encode(P);let Re,H,Ze,gt,ut,Xt=P.length,Vt=0;for(gt=0;gt>>6,Re[ut++]=128|63&H):H<65536?(Re[ut++]=224|H>>>12,Re[ut++]=128|H>>>6&63,Re[ut++]=128|63&H):(Re[ut++]=240|H>>>18,Re[ut++]=128|H>>>12&63,Re[ut++]=128|H>>>6&63,Re[ut++]=128|63&H);return Re},buf2string:(P,Re)=>{const H=Re||P.length;if("function"==typeof TextDecoder&&TextDecoder.prototype.decode)return(new TextDecoder).decode(P.subarray(0,Re));let Ze,gt;const ut=new Array(2*H);for(gt=0,Ze=0;Ze4)ut[gt++]=65533,Ze+=Vt-1;else{for(Xt&=2===Vt?31:3===Vt?15:7;Vt>1&&Ze1?ut[gt++]=65533:Xt<65536?ut[gt++]=Xt:(Xt-=65536,ut[gt++]=55296|Xt>>10&1023,ut[gt++]=56320|1023&Xt)}}return((P,Re)=>{if(Re<65534&&P.subarray&&zn)return String.fromCharCode.apply(null,P.length===Re?P:P.subarray(0,Re));let H="";for(let Ze=0;Ze{(Re=Re||P.length)>P.length&&(Re=P.length);let H=Re-1;for(;H>=0&&128==(192&P[H]);)H--;return H<0||0===H?Re:H+Vn[P[H]]>Re?H:Re}},Fi=function ai(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0};const Xi=Object.prototype.toString,{Z_NO_FLUSH:Jr,Z_SYNC_FLUSH:Ho,Z_FULL_FLUSH:us,Z_FINISH:oo,Z_OK:Ir,Z_STREAM_END:zo,Z_DEFAULT_COMPRESSION:Wo,Z_DEFAULT_STRATEGY:Go,Z_DEFLATED:go}=Z;function Vr(P){this.options=_n.assign({level:Wo,method:go,chunkSize:16384,windowBits:15,memLevel:8,strategy:Go},P||{});let Re=this.options;Re.raw&&Re.windowBits>0?Re.windowBits=-Re.windowBits:Re.gzip&&Re.windowBits>0&&Re.windowBits<16&&(Re.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new Fi,this.strm.avail_out=0;let H=Ut.deflateInit2(this.strm,Re.level,Re.method,Re.windowBits,Re.memLevel,Re.strategy);if(H!==Ir)throw new Error(ke[H]);if(Re.header&&Ut.deflateSetHeader(this.strm,Re.header),Re.dictionary){let Ze;if(Ze="string"==typeof Re.dictionary?Xn.string2buf(Re.dictionary):"[object ArrayBuffer]"===Xi.call(Re.dictionary)?new Uint8Array(Re.dictionary):Re.dictionary,H=Ut.deflateSetDictionary(this.strm,Ze),H!==Ir)throw new Error(ke[H]);this._dict_set=!0}}function jr(P,Re){const H=new Vr(Re);if(H.push(P,!0),H.err)throw H.msg||ke[H.err];return H.result}Vr.prototype.push=function(P,Re){const H=this.strm,Ze=this.options.chunkSize;let gt,ut;if(this.ended)return!1;for(ut=Re===~~Re?Re:!0===Re?oo:Jr,H.input="string"==typeof P?Xn.string2buf(P):"[object ArrayBuffer]"===Xi.call(P)?new Uint8Array(P):P,H.next_in=0,H.avail_in=H.input.length;;)if(0===H.avail_out&&(H.output=new Uint8Array(Ze),H.next_out=0,H.avail_out=Ze),(ut===Ho||ut===us)&&H.avail_out<=6)this.onData(H.output.subarray(0,H.next_out)),H.avail_out=0;else{if(gt=Ut.deflate(H,ut),gt===zo)return H.next_out>0&&this.onData(H.output.subarray(0,H.next_out)),gt=Ut.deflateEnd(this.strm),this.onEnd(gt),this.ended=!0,gt===Ir;if(0!==H.avail_out){if(ut>0&&H.next_out>0)this.onData(H.output.subarray(0,H.next_out)),H.avail_out=0;else if(0===H.avail_in)break}else this.onData(H.output)}return!0},Vr.prototype.onData=function(P){this.chunks.push(P)},Vr.prototype.onEnd=function(P){P===Ir&&(this.result=_n.flattenChunks(this.chunks)),this.chunks=[],this.err=P,this.msg=this.strm.msg};var Qt={Deflate:Vr,deflate:jr,deflateRaw:function Hr(P,Re){return(Re=Re||{}).raw=!0,jr(P,Re)},gzip:function Ko(P,Re){return(Re=Re||{}).gzip=!0,jr(P,Re)},constants:Z};const En=16209;var xr=function(Re,H){let Ze,gt,ut,Xt,Vt,Hn,Ot,Jt,Ui,Fn,bn,qn,nr,wi,bi,Hi,Ei,Bn,_i,hr,ei,Ki,Ai,ui;const Di=Re.state;Ze=Re.next_in,Ai=Re.input,gt=Ze+(Re.avail_in-5),ut=Re.next_out,ui=Re.output,Xt=ut-(H-Re.avail_out),Vt=ut+(Re.avail_out-257),Hn=Di.dmax,Ot=Di.wsize,Jt=Di.whave,Ui=Di.wnext,Fn=Di.window,bn=Di.hold,qn=Di.bits,nr=Di.lencode,wi=Di.distcode,bi=(1<>>24,bn>>>=Bn,qn-=Bn,Bn=Ei>>>16&255,0===Bn)ui[ut++]=65535&Ei;else{if(!(16&Bn)){if(64&Bn){if(32&Bn){Di.mode=16191;break e}Re.msg="invalid literal/length code",Di.mode=En;break e}Ei=nr[(65535&Ei)+(bn&(1<>>=Bn,qn-=Bn),qn<15&&(bn+=Ai[Ze++]<>>24,bn>>>=Bn,qn-=Bn,Bn=Ei>>>16&255,16&Bn){if(hr=65535&Ei,Bn&=15,qnHn){Re.msg="invalid distance too far back",Di.mode=En;break e}if(bn>>>=Bn,qn-=Bn,Bn=ut-Xt,hr>Bn){if(Bn=hr-Bn,Bn>Jt&&Di.sane){Re.msg="invalid distance too far back",Di.mode=En;break e}if(ei=0,Ki=Fn,0===Ui){if(ei+=Ot-Bn,Bn<_i){_i-=Bn;do{ui[ut++]=Fn[ei++]}while(--Bn);ei=ut-hr,Ki=ui}}else if(Ui2;)ui[ut++]=Ki[ei++],ui[ut++]=Ki[ei++],ui[ut++]=Ki[ei++],_i-=3;_i&&(ui[ut++]=Ki[ei++],_i>1&&(ui[ut++]=Ki[ei++]))}else{ei=ut-hr;do{ui[ut++]=ui[ei++],ui[ut++]=ui[ei++],ui[ut++]=ui[ei++],_i-=3}while(_i>2);_i&&(ui[ut++]=ui[ei++],_i>1&&(ui[ut++]=ui[ei++]))}break}if(64&Bn){Re.msg="invalid distance code",Di.mode=En;break e}Ei=wi[(65535&Ei)+(bn&(1<>3,Ze-=_i,qn-=_i<<3,bn&=(1<{const Hn=Vt.bits;let Ei,Bn,_i,hr,ei,Ai,Ot=0,Jt=0,Ui=0,Fn=0,bn=0,qn=0,nr=0,wi=0,bi=0,Hi=0,Ki=null;const ui=new Uint16Array(16),Di=new Uint16Array(16);let Na,Ts,Ss,Uo=null;for(Ot=0;Ot<=15;Ot++)ui[Ot]=0;for(Jt=0;Jt=1&&0===ui[Fn];Fn--);if(bn>Fn&&(bn=Fn),0===Fn)return gt[ut++]=20971520,gt[ut++]=20971520,Vt.bits=1,0;for(Ui=1;Ui0&&(0===P||1!==Fn))return-1;for(Di[1]=0,Ot=1;Ot<15;Ot++)Di[Ot+1]=Di[Ot]+ui[Ot];for(Jt=0;Jt852||2===P&&bi>592)return 1;for(;;){Na=Ot-nr,Xt[Jt]+1=Ai?(Ts=Uo[Xt[Jt]-Ai],Ss=Ki[Xt[Jt]-Ai]):(Ts=96,Ss=0),Ei=1<>nr)+Bn]=Na<<24|Ts<<16|Ss|0}while(0!==Bn);for(Ei=1<>=1;if(0!==Ei?(Hi&=Ei-1,Hi+=Ei):Hi=0,Jt++,0==--ui[Ot]){if(Ot===Fn)break;Ot=Re[H+Xt[Jt]]}if(Ot>bn&&(Hi&hr)!==_i){for(0===nr&&(nr=bn),ei+=Ui,qn=Ot-nr,wi=1<852||2===P&&bi>592)return 1;_i=Hi&hr,gt[_i]=bn<<24|qn<<16|ei-ut|0}}return 0!==Hi&&(gt[ei+Hi]=Ot-nr<<24|64<<16|0),Vt.bits=bn,0};const{Z_FINISH:ao,Z_BLOCK:zr,Z_TREES:Wr,Z_OK:Gr,Z_STREAM_END:ms,Z_NEED_DICT:Ao,Z_STREAM_ERROR:ar,Z_DATA_ERROR:Xo,Z_MEM_ERROR:eo,Z_BUF_ERROR:La,Z_DEFLATED:Jo}=Z,ko=16180,to=16190,Fr=16191,Ie=16199,le=16200,Rn=16209,fr=P=>(P>>>24&255)+(P>>>8&65280)+((65280&P)<<8)+((255&P)<<24);function Kr(){this.strm=null,this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new Uint16Array(320),this.work=new Uint16Array(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}const lr=P=>{if(!P)return 1;const Re=P.state;return!Re||Re.strm!==P||Re.mode16211?1:0},Nr=P=>{if(lr(P))return ar;const Re=P.state;return P.total_in=P.total_out=Re.total=0,P.msg="",Re.wrap&&(P.adler=1&Re.wrap),Re.mode=ko,Re.last=0,Re.havedict=0,Re.flags=-1,Re.dmax=32768,Re.head=null,Re.hold=0,Re.bits=0,Re.lencode=Re.lendyn=new Int32Array(852),Re.distcode=Re.distdyn=new Int32Array(592),Re.sane=1,Re.back=-1,Gr},js=P=>{if(lr(P))return ar;const Re=P.state;return Re.wsize=0,Re.whave=0,Re.wnext=0,Nr(P)},is=(P,Re)=>{let H;if(lr(P))return ar;const Ze=P.state;return Re<0?(H=0,Re=-Re):(H=5+(Re>>4),Re<48&&(Re&=15)),Re&&(Re<8||Re>15)?ar:(null!==Ze.window&&Ze.wbits!==Re&&(Ze.window=null),Ze.wrap=H,Ze.wbits=Re,js(P))},mr=(P,Re)=>{if(!P)return ar;const H=new Kr;P.state=H,H.strm=P,H.window=null,H.mode=ko;const Ze=is(P,Re);return Ze!==Gr&&(P.state=null),Ze};let gs,rs,Hs=!0;const zs=P=>{if(Hs){gs=new Int32Array(512),rs=new Int32Array(32);let Re=0;for(;Re<144;)P.lens[Re++]=8;for(;Re<256;)P.lens[Re++]=9;for(;Re<280;)P.lens[Re++]=7;for(;Re<288;)P.lens[Re++]=8;for(Cr(1,P.lens,0,288,gs,0,P.work,{bits:9}),Re=0;Re<32;)P.lens[Re++]=5;Cr(2,P.lens,0,32,rs,0,P.work,{bits:5}),Hs=!1}P.lencode=gs,P.lenbits=9,P.distcode=rs,P.distbits=5},dn=(P,Re,H,Ze)=>{let gt;const ut=P.state;return null===ut.window&&(ut.wsize=1<=ut.wsize?(ut.window.set(Re.subarray(H-ut.wsize,H),0),ut.wnext=0,ut.whave=ut.wsize):(gt=ut.wsize-ut.wnext,gt>Ze&&(gt=Ze),ut.window.set(Re.subarray(H-Ze,H-Ze+gt),ut.wnext),(Ze-=gt)?(ut.window.set(Re.subarray(H-Ze,H),0),ut.wnext=Ze,ut.whave=ut.wsize):(ut.wnext+=gt,ut.wnext===ut.wsize&&(ut.wnext=0),ut.whavemr(P,15),inflateInit2:mr,inflate:(P,Re)=>{let H,Ze,gt,ut,Xt,Vt,Hn,Ot,Jt,Ui,Fn,bn,qn,nr,bi,Hi,Ei,Bn,_i,hr,ei,Ki,wi=0;const Ai=new Uint8Array(4);let ui,Di;const Uo=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);if(lr(P)||!P.output||!P.input&&0!==P.avail_in)return ar;H=P.state,H.mode===Fr&&(H.mode=16192),Xt=P.next_out,gt=P.output,Hn=P.avail_out,ut=P.next_in,Ze=P.input,Vt=P.avail_in,Ot=H.hold,Jt=H.bits,Ui=Vt,Fn=Hn,Ki=Gr;e:for(;;)switch(H.mode){case ko:if(0===H.wrap){H.mode=16192;break}for(;Jt<16;){if(0===Vt)break e;Vt--,Ot+=Ze[ut++]<>>8&255,H.check=je(H.check,Ai,2,0),Ot=0,Jt=0,H.mode=16181;break}if(H.head&&(H.head.done=!1),!(1&H.wrap)||(((255&Ot)<<8)+(Ot>>8))%31){P.msg="incorrect header check",H.mode=Rn;break}if((15&Ot)!==Jo){P.msg="unknown compression method",H.mode=Rn;break}if(Ot>>>=4,Jt-=4,ei=8+(15&Ot),0===H.wbits&&(H.wbits=ei),ei>15||ei>H.wbits){P.msg="invalid window size",H.mode=Rn;break}H.dmax=1<>8&1),512&H.flags&&4&H.wrap&&(Ai[0]=255&Ot,Ai[1]=Ot>>>8&255,H.check=je(H.check,Ai,2,0)),Ot=0,Jt=0,H.mode=16182;case 16182:for(;Jt<32;){if(0===Vt)break e;Vt--,Ot+=Ze[ut++]<>>8&255,Ai[2]=Ot>>>16&255,Ai[3]=Ot>>>24&255,H.check=je(H.check,Ai,4,0)),Ot=0,Jt=0,H.mode=16183;case 16183:for(;Jt<16;){if(0===Vt)break e;Vt--,Ot+=Ze[ut++]<>8),512&H.flags&&4&H.wrap&&(Ai[0]=255&Ot,Ai[1]=Ot>>>8&255,H.check=je(H.check,Ai,2,0)),Ot=0,Jt=0,H.mode=16184;case 16184:if(1024&H.flags){for(;Jt<16;){if(0===Vt)break e;Vt--,Ot+=Ze[ut++]<>>8&255,H.check=je(H.check,Ai,2,0)),Ot=0,Jt=0}else H.head&&(H.head.extra=null);H.mode=16185;case 16185:if(1024&H.flags&&(bn=H.length,bn>Vt&&(bn=Vt),bn&&(H.head&&(ei=H.head.extra_len-H.length,H.head.extra||(H.head.extra=new Uint8Array(H.head.extra_len)),H.head.extra.set(Ze.subarray(ut,ut+bn),ei)),512&H.flags&&4&H.wrap&&(H.check=je(H.check,Ze,bn,ut)),Vt-=bn,ut+=bn,H.length-=bn),H.length))break e;H.length=0,H.mode=16186;case 16186:if(2048&H.flags){if(0===Vt)break e;bn=0;do{ei=Ze[ut+bn++],H.head&&ei&&H.length<65536&&(H.head.name+=String.fromCharCode(ei))}while(ei&&bn>9&1,H.head.done=!0),P.adler=H.check=0,H.mode=Fr;break;case 16189:for(;Jt<32;){if(0===Vt)break e;Vt--,Ot+=Ze[ut++]<>>=7&Jt,Jt-=7&Jt,H.mode=16206;break}for(;Jt<3;){if(0===Vt)break e;Vt--,Ot+=Ze[ut++]<>>=1,Jt-=1,3&Ot){case 0:H.mode=16193;break;case 1:if(zs(H),H.mode=Ie,Re===Wr){Ot>>>=2,Jt-=2;break e}break;case 2:H.mode=16196;break;case 3:P.msg="invalid block type",H.mode=Rn}Ot>>>=2,Jt-=2;break;case 16193:for(Ot>>>=7&Jt,Jt-=7&Jt;Jt<32;){if(0===Vt)break e;Vt--,Ot+=Ze[ut++]<>>16^65535)){P.msg="invalid stored block lengths",H.mode=Rn;break}if(H.length=65535&Ot,Ot=0,Jt=0,H.mode=16194,Re===Wr)break e;case 16194:H.mode=16195;case 16195:if(bn=H.length,bn){if(bn>Vt&&(bn=Vt),bn>Hn&&(bn=Hn),0===bn)break e;gt.set(Ze.subarray(ut,ut+bn),Xt),Vt-=bn,ut+=bn,Hn-=bn,Xt+=bn,H.length-=bn;break}H.mode=Fr;break;case 16196:for(;Jt<14;){if(0===Vt)break e;Vt--,Ot+=Ze[ut++]<>>=5,Jt-=5,H.ndist=1+(31&Ot),Ot>>>=5,Jt-=5,H.ncode=4+(15&Ot),Ot>>>=4,Jt-=4,H.nlen>286||H.ndist>30){P.msg="too many length or distance symbols",H.mode=Rn;break}H.have=0,H.mode=16197;case 16197:for(;H.have>>=3,Jt-=3}for(;H.have<19;)H.lens[Uo[H.have++]]=0;if(H.lencode=H.lendyn,H.lenbits=7,ui={bits:H.lenbits},Ki=Cr(0,H.lens,0,19,H.lencode,0,H.work,ui),H.lenbits=ui.bits,Ki){P.msg="invalid code lengths set",H.mode=Rn;break}H.have=0,H.mode=16198;case 16198:for(;H.have>>24,Hi=wi>>>16&255,Ei=65535&wi,!(bi<=Jt);){if(0===Vt)break e;Vt--,Ot+=Ze[ut++]<>>=bi,Jt-=bi,H.lens[H.have++]=Ei;else{if(16===Ei){for(Di=bi+2;Jt>>=bi,Jt-=bi,0===H.have){P.msg="invalid bit length repeat",H.mode=Rn;break}ei=H.lens[H.have-1],bn=3+(3&Ot),Ot>>>=2,Jt-=2}else if(17===Ei){for(Di=bi+3;Jt>>=bi,Jt-=bi,ei=0,bn=3+(7&Ot),Ot>>>=3,Jt-=3}else{for(Di=bi+7;Jt>>=bi,Jt-=bi,ei=0,bn=11+(127&Ot),Ot>>>=7,Jt-=7}if(H.have+bn>H.nlen+H.ndist){P.msg="invalid bit length repeat",H.mode=Rn;break}for(;bn--;)H.lens[H.have++]=ei}}if(H.mode===Rn)break;if(0===H.lens[256]){P.msg="invalid code -- missing end-of-block",H.mode=Rn;break}if(H.lenbits=9,ui={bits:H.lenbits},Ki=Cr(1,H.lens,0,H.nlen,H.lencode,0,H.work,ui),H.lenbits=ui.bits,Ki){P.msg="invalid literal/lengths set",H.mode=Rn;break}if(H.distbits=6,H.distcode=H.distdyn,ui={bits:H.distbits},Ki=Cr(2,H.lens,H.nlen,H.ndist,H.distcode,0,H.work,ui),H.distbits=ui.bits,Ki){P.msg="invalid distances set",H.mode=Rn;break}if(H.mode=Ie,Re===Wr)break e;case Ie:H.mode=le;case le:if(Vt>=6&&Hn>=258){P.next_out=Xt,P.avail_out=Hn,P.next_in=ut,P.avail_in=Vt,H.hold=Ot,H.bits=Jt,xr(P,Fn),Xt=P.next_out,gt=P.output,Hn=P.avail_out,ut=P.next_in,Ze=P.input,Vt=P.avail_in,Ot=H.hold,Jt=H.bits,H.mode===Fr&&(H.back=-1);break}for(H.back=0;wi=H.lencode[Ot&(1<>>24,Hi=wi>>>16&255,Ei=65535&wi,!(bi<=Jt);){if(0===Vt)break e;Vt--,Ot+=Ze[ut++]<>Bn)],bi=wi>>>24,Hi=wi>>>16&255,Ei=65535&wi,!(Bn+bi<=Jt);){if(0===Vt)break e;Vt--,Ot+=Ze[ut++]<>>=Bn,Jt-=Bn,H.back+=Bn}if(Ot>>>=bi,Jt-=bi,H.back+=bi,H.length=Ei,0===Hi){H.mode=16205;break}if(32&Hi){H.back=-1,H.mode=Fr;break}if(64&Hi){P.msg="invalid literal/length code",H.mode=Rn;break}H.extra=15&Hi,H.mode=16201;case 16201:if(H.extra){for(Di=H.extra;Jt>>=H.extra,Jt-=H.extra,H.back+=H.extra}H.was=H.length,H.mode=16202;case 16202:for(;wi=H.distcode[Ot&(1<>>24,Hi=wi>>>16&255,Ei=65535&wi,!(bi<=Jt);){if(0===Vt)break e;Vt--,Ot+=Ze[ut++]<>Bn)],bi=wi>>>24,Hi=wi>>>16&255,Ei=65535&wi,!(Bn+bi<=Jt);){if(0===Vt)break e;Vt--,Ot+=Ze[ut++]<>>=Bn,Jt-=Bn,H.back+=Bn}if(Ot>>>=bi,Jt-=bi,H.back+=bi,64&Hi){P.msg="invalid distance code",H.mode=Rn;break}H.offset=Ei,H.extra=15&Hi,H.mode=16203;case 16203:if(H.extra){for(Di=H.extra;Jt>>=H.extra,Jt-=H.extra,H.back+=H.extra}if(H.offset>H.dmax){P.msg="invalid distance too far back",H.mode=Rn;break}H.mode=16204;case 16204:if(0===Hn)break e;if(bn=Fn-Hn,H.offset>bn){if(bn=H.offset-bn,bn>H.whave&&H.sane){P.msg="invalid distance too far back",H.mode=Rn;break}bn>H.wnext?(bn-=H.wnext,qn=H.wsize-bn):qn=H.wnext-bn,bn>H.length&&(bn=H.length),nr=H.window}else nr=gt,qn=Xt-H.offset,bn=H.length;bn>Hn&&(bn=Hn),Hn-=bn,H.length-=bn;do{gt[Xt++]=nr[qn++]}while(--bn);0===H.length&&(H.mode=le);break;case 16205:if(0===Hn)break e;gt[Xt++]=H.length,Hn--,H.mode=le;break;case 16206:if(H.wrap){for(;Jt<32;){if(0===Vt)break e;Vt--,Ot|=Ze[ut++]<{if(lr(P))return ar;let Re=P.state;return Re.window&&(Re.window=null),P.state=null,Gr},inflateGetHeader:(P,Re)=>{if(lr(P))return ar;const H=P.state;return 2&H.wrap?(H.head=Re,Re.done=!1,Gr):ar},inflateSetDictionary:(P,Re)=>{const H=Re.length;let Ze,gt,ut;return lr(P)||(Ze=P.state,0!==Ze.wrap&&Ze.mode!==to)?ar:Ze.mode===to&&(gt=1,gt=ve(gt,Re,H,0),gt!==Ze.check)?Xo:(ut=dn(P,Re,H,H),ut?(Ze.mode=16210,eo):(Ze.havedict=1,Gr))},inflateInfo:"pako inflate (from Nodeca project)"},Zr=function Mo(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1};const Gs=Object.prototype.toString,{Z_NO_FLUSH:Ks,Z_FINISH:Oa,Z_OK:co,Z_STREAM_END:Po,Z_NEED_DICT:Fo,Z_STREAM_ERROR:Ys,Z_DATA_ERROR:os,Z_MEM_ERROR:Pa}=Z;function wo(P){this.options=_n.assign({chunkSize:65536,windowBits:15,to:""},P||{});const Re=this.options;Re.raw&&Re.windowBits>=0&&Re.windowBits<16&&(Re.windowBits=-Re.windowBits,0===Re.windowBits&&(Re.windowBits=-15)),Re.windowBits>=0&&Re.windowBits<16&&!(P&&P.windowBits)&&(Re.windowBits+=32),Re.windowBits>15&&Re.windowBits<48&&(15&Re.windowBits||(Re.windowBits|=15)),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new Fi,this.strm.avail_out=0;let H=Br.inflateInit2(this.strm,Re.windowBits);if(H!==co)throw new Error(ke[H]);if(this.header=new Zr,Br.inflateGetHeader(this.strm,this.header),Re.dictionary&&("string"==typeof Re.dictionary?Re.dictionary=Xn.string2buf(Re.dictionary):"[object ArrayBuffer]"===Gs.call(Re.dictionary)&&(Re.dictionary=new Uint8Array(Re.dictionary)),Re.raw&&(H=Br.inflateSetDictionary(this.strm,Re.dictionary),H!==co)))throw new Error(ke[H])}function No(P,Re){const H=new wo(Re);if(H.push(P),H.err)throw H.msg||ke[H.err];return H.result}wo.prototype.push=function(P,Re){const H=this.strm,Ze=this.options.chunkSize,gt=this.options.dictionary;let ut,Xt,Vt;if(this.ended)return!1;for(Xt=Re===~~Re?Re:!0===Re?Oa:Ks,H.input="[object ArrayBuffer]"===Gs.call(P)?new Uint8Array(P):P,H.next_in=0,H.avail_in=H.input.length;;){for(0===H.avail_out&&(H.output=new Uint8Array(Ze),H.next_out=0,H.avail_out=Ze),ut=Br.inflate(H,Xt),ut===Fo&>&&(ut=Br.inflateSetDictionary(H,gt),ut===co?ut=Br.inflate(H,Xt):ut===os&&(ut=Fo));H.avail_in>0&&ut===Po&&H.state.wrap>0&&0!==P[H.next_in];)Br.inflateReset(H),ut=Br.inflate(H,Xt);switch(ut){case Ys:case os:case Fo:case Pa:return this.onEnd(ut),this.ended=!0,!1}if(Vt=H.avail_out,H.next_out&&(0===H.avail_out||ut===Po))if("string"===this.options.to){let Hn=Xn.utf8border(H.output,H.next_out),Ot=H.next_out-Hn,Jt=Xn.buf2string(H.output,Hn);H.next_out=Ot,H.avail_out=Ze-Ot,Ot&&H.output.set(H.output.subarray(Hn,Hn+Ot),0),this.onData(Jt)}else this.onData(H.output.length===H.next_out?H.output:H.output.subarray(0,H.next_out));if(ut!==co||0!==Vt){if(ut===Po)return ut=Br.inflateEnd(this.strm),this.onEnd(ut),this.ended=!0,!0;if(0===H.avail_in)break}}return!0},wo.prototype.onData=function(P){this.chunks.push(P)},wo.prototype.onEnd=function(P){P===co&&(this.result="string"===this.options.to?this.chunks.join(""):_n.flattenChunks(this.chunks)),this.chunks=[],this.err=P,this.msg=this.strm.msg};var et={Inflate:wo,inflate:No,inflateRaw:function G(P,Re){return(Re=Re||{}).raw=!0,No(P,Re)},ungzip:No,constants:Z};const{Deflate:Nt,deflate:mn,deflateRaw:Ln,gzip:Gn}=Qt,{Inflate:Wi,inflate:br,inflateRaw:Ms,ungzip:Eo}=et;var uo=Nt,ho=mn,Er=Ln,xl=Gn,ws=Wi,Es=br,Ds=Ms,Zs=Eo,Fa=Z,Ml={Deflate:Nt,deflate:mn,deflateRaw:Ln,gzip:Gn,Inflate:Wi,inflate:br,inflateRaw:Ms,ungzip:Eo,constants:Z}},5861:(Se,X,g)=>{"use strict";function n(C,b,o,v,a,c,s){try{var l=C[c](s),d=l.value}catch(r){return void o(r)}l.done?b(d):Promise.resolve(d).then(v,a)}function p(C){return function(){var b=this,o=arguments;return new Promise(function(v,a){var c=C.apply(b,o);function s(d){n(c,v,a,s,l,"next",d)}function l(d){n(c,v,a,s,l,"throw",d)}s(void 0)})}}g.d(X,{Z:()=>p})},1180:(Se,X,g)=>{"use strict";function n(o){return(n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(v){return typeof v}:function(v){return v&&"function"==typeof Symbol&&v.constructor===Symbol&&v!==Symbol.prototype?"symbol":typeof v})(o)}function b(o,v,a){return(v=function C(o){var v=function p(o,v){if("object"!==n(o)||null===o)return o;var a=o[Symbol.toPrimitive];if(void 0!==a){var c=a.call(o,v||"default");if("object"!==n(c))return c;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===v?String:Number)(o)}(o,"string");return"symbol"===n(v)?v:String(v)}(v))in o?Object.defineProperty(o,v,{value:a,enumerable:!0,configurable:!0,writable:!0}):o[v]=a,o}g.d(X,{Z:()=>b})},8210:Se=>{"use strict";Se.exports=JSON.parse('{"license":"The following data (prefixes and units) was generated by the UCUM LHC code from the UCUM data and selected LOINC combinations of UCUM units. The license for the UCUM LHC code (demo and library code as well as the combined units) is located at https://github.com/lhncbc/ucum-lhc/blob/LICENSE.md.","prefixes":{"config":["code_","ciCode_","name_","printSymbol_","value_","exp_"],"data":[["E","EX","exa","E",1000000000000000000,"18"],["G","GA","giga","G",1000000000,"9"],["Gi","GIB","gibi","Gi",1073741824,null],["Ki","KIB","kibi","Ki",1024,null],["M","MA","mega","M",1000000,"6"],["Mi","MIB","mebi","Mi",1048576,null],["P","PT","peta","P",1000000000000000,"15"],["T","TR","tera","T",1000000000000,"12"],["Ti","TIB","tebi","Ti",1099511627776,null],["Y","YA","yotta","Y",1e+24,"24"],["Z","ZA","zetta","Z",1e+21,"21"],["a","A","atto","a",1e-18,"-18"],["c","C","centi","c",0.01,"-2"],["d","D","deci","d",0.1,"-1"],["da","DA","deka","da",10,"1"],["f","F","femto","f",1e-15,"-15"],["h","H","hecto","h",100,"2"],["k","K","kilo","k",1000,"3"],["m","M","milli","m",0.001,"-3"],["n","N","nano","n",1e-9,"-9"],["p","P","pico","p",1e-12,"-12"],["u","U","micro","\u03bc",0.000001,"-6"],["y","YO","yocto","y",1.0000000000000001e-24,"-24"],["z","ZO","zepto","z",1e-21,"-21"]]},"units":{"config":["isBase_","name_","csCode_","ciCode_","property_","magnitude_",["dim_","dimVec_"],"printSymbol_","class_","isMetric_","variable_","cnv_","cnvPfx_","isSpecial_","isArbitrary_","moleExp_","synonyms_","source_","loincProperty_","category_","guidance_","csUnitString_","ciUnitString_","baseFactorStr_","baseFactor_","defError_"],"data":[[true,"meter","m","M","length",1,[1,0,0,0,0,0,0],"m",null,false,"L",null,1,false,false,0,"meters; metres; distance","UCUM","Len","Clinical","unit of length = 1.09361 yards",null,null,null,null,false],[true,"second - time","s","S","time",1,[0,1,0,0,0,0,0],"s",null,false,"T",null,1,false,false,0,"seconds","UCUM","Time","Clinical","",null,null,null,null,false],[true,"gram","g","G","mass",1,[0,0,1,0,0,0,0],"g",null,false,"M",null,1,false,false,0,"grams; gm","UCUM","Mass","Clinical","",null,null,null,null,false],[true,"radian","rad","RAD","plane angle",1,[0,0,0,1,0,0,0],"rad",null,false,"A",null,1,false,false,0,"radians","UCUM","Angle","Clinical","unit of angular measure where 1 radian = 1/2\u03c0 turn = 57.296 degrees. ",null,null,null,null,false],[true,"degree Kelvin","K","K","temperature",1,[0,0,0,0,1,0,0],"K",null,false,"C",null,1,false,false,0,"Kelvin; degrees","UCUM","Temp","Clinical","absolute, thermodynamic temperature scale ",null,null,null,null,false],[true,"coulomb","C","C","electric charge",1,[0,0,0,0,0,1,0],"C",null,false,"Q",null,1,false,false,0,"coulombs","UCUM","","Clinical","defined as amount of 1 electron charge = 6.2415093\xd710^18 e, and equivalent to 1 Ampere-second",null,null,null,null,false],[true,"candela","cd","CD","luminous intensity",1,[0,0,0,0,0,0,1],"cd",null,false,"F",null,1,false,false,0,"candelas","UCUM","","Clinical","SI base unit of luminous intensity",null,null,null,null,false],[false,"the number ten for arbitrary powers","10*","10*","number",10,[0,0,0,0,0,0,0],"10","dimless",false,null,null,1,false,false,0,"10^; 10 to the arbitrary powers","UCUM","Num","Clinical","10* by itself is the same as 10, but users can add digits after the *. For example, 10*3 = 1000.","1","1","10",10,false],[false,"the number ten for arbitrary powers","10^","10^","number",10,[0,0,0,0,0,0,0],"10","dimless",false,null,null,1,false,false,0,"10*; 10 to the arbitrary power","UCUM","Num","Clinical","10* by itself is the same as 10, but users can add digits after the *. For example, 10*3 = 1000.","1","1","10",10,false],[false,"the number pi","[pi]","[PI]","number",3.141592653589793,[0,0,0,0,0,0,0],"\u03c0","dimless",false,null,null,1,false,false,0,"\u03c0","UCUM","","Constant","a mathematical constant; the ratio of a circle\'s circumference to its diameter \u2248 3.14159","1","1","3.1415926535897932384626433832795028841971693993751058209749445923",3.141592653589793,false],[false,"","%","%","fraction",0.01,[0,0,0,0,0,0,0],"%","dimless",false,null,null,1,false,false,0,"percents","UCUM","FR; NFR; MFR; CFR; SFR Rto; etc. ","Clinical","","10*-2","10*-2","1",1,false],[false,"parts per thousand","[ppth]","[PPTH]","fraction",0.001,[0,0,0,0,0,0,0],"ppth","dimless",false,null,null,1,false,false,0,"ppth; 10^-3","UCUM","MCnc; MCnt","Clinical","[ppth] is often used in solution concentrations as 1 g/L or 1 g/kg.\\n\\nCan be ambigous and would be better if the metric units was used directly. ","10*-3","10*-3","1",1,false],[false,"parts per million","[ppm]","[PPM]","fraction",0.000001,[0,0,0,0,0,0,0],"ppm","dimless",false,null,null,1,false,false,0,"ppm; 10^-6","UCUM","MCnt; MCnc; SFr","Clinical","[ppm] is often used in solution concentrations as 1 mg/L or 1 mg/kg. Also used to express mole fractions as 1 mmol/mol.\\n\\n[ppm] is also used in nuclear magnetic resonance (NMR) to represent chemical shift - the difference of a measured frequency in parts per million from the reference frequency.\\n\\nCan be ambigous and would be better if the metric units was used directly. ","10*-6","10*-6","1",1,false],[false,"parts per billion","[ppb]","[PPB]","fraction",1e-9,[0,0,0,0,0,0,0],"ppb","dimless",false,null,null,1,false,false,0,"ppb; 10^-9","UCUM","MCnt; MCnc; SFr","Clinical","[ppb] is often used in solution concentrations as 1 ug/L or 1 ug/kg. Also used to express mole fractions as 1 umol/mol.\\n\\nCan be ambigous and would be better if the metric units was used directly. ","10*-9","10*-9","1",1,false],[false,"parts per trillion","[pptr]","[PPTR]","fraction",1e-12,[0,0,0,0,0,0,0],"pptr","dimless",false,null,null,1,false,false,0,"pptr; 10^-12","UCUM","MCnt; MCnc; SFr","Clinical","[pptr] is often used in solution concentrations as 1 ng/L or 1 ng/kg. Also used to express mole fractions as 1 nmol/mol.\\n\\nCan be ambigous and would be better if the metric units was used directly. ","10*-12","10*-12","1",1,false],[false,"mole","mol","MOL","amount of substance",6.0221367e+23,[0,0,0,0,0,0,0],"mol","si",true,null,null,1,false,false,1,"moles","UCUM","Sub","Clinical","Measure the number of molecules ","10*23","10*23","6.0221367",6.0221367,false],[false,"steradian - solid angle","sr","SR","solid angle",1,[0,0,0,2,0,0,0],"sr","si",true,null,null,1,false,false,0,"square radian; rad2; rad^2","UCUM","Angle","Clinical","unit of solid angle in three-dimensional geometry analagous to radian; used in photometry which measures the perceived brightness of object by human eye (e.g. radiant intensity = watt/steradian)","rad2","RAD2","1",1,false],[false,"hertz","Hz","HZ","frequency",1,[0,-1,0,0,0,0,0],"Hz","si",true,null,null,1,false,false,0,"Herz; frequency; frequencies","UCUM","Freq; Num","Clinical","equal to one cycle per second","s-1","S-1","1",1,false],[false,"newton","N","N","force",1000,[1,-2,1,0,0,0,0],"N","si",true,null,null,1,false,false,0,"Newtons","UCUM","Force","Clinical","unit of force with base units kg.m/s2","kg.m/s2","KG.M/S2","1",1,false],[false,"pascal","Pa","PAL","pressure",1000,[-1,-2,1,0,0,0,0],"Pa","si",true,null,null,1,false,false,0,"pascals","UCUM","Pres","Clinical","standard unit of pressure equal to 1 newton per square meter (N/m2)","N/m2","N/M2","1",1,false],[false,"joule","J","J","energy",1000,[2,-2,1,0,0,0,0],"J","si",true,null,null,1,false,false,0,"joules","UCUM","Enrg","Clinical","unit of energy defined as the work required to move an object 1 m with a force of 1 N (N.m) or an electric charge of 1 C through 1 V (C.V), or to produce 1 W for 1 s (W.s) ","N.m","N.M","1",1,false],[false,"watt","W","W","power",1000,[2,-3,1,0,0,0,0],"W","si",true,null,null,1,false,false,0,"watts","UCUM","EngRat","Clinical","unit of power equal to 1 Joule per second (J/s) = kg\u22c5m2\u22c5s\u22123","J/s","J/S","1",1,false],[false,"Ampere","A","A","electric current",1,[0,-1,0,0,0,1,0],"A","si",true,null,null,1,false,false,0,"Amperes","UCUM","ElpotRat","Clinical","unit of electric current equal to flow rate of electrons equal to 16.2415\xd710^18 elementary charges moving past a boundary in one second or 1 Coulomb/second","C/s","C/S","1",1,false],[false,"volt","V","V","electric potential",1000,[2,-2,1,0,0,-1,0],"V","si",true,null,null,1,false,false,0,"volts","UCUM","Elpot","Clinical","unit of electric potential (voltage) = 1 Joule per Coulomb (J/C)","J/C","J/C","1",1,false],[false,"farad","F","F","electric capacitance",0.001,[-2,2,-1,0,0,2,0],"F","si",true,null,null,1,false,false,0,"farads; electric capacitance","UCUM","","Clinical","CGS unit of electric capacitance with base units C/V (Coulomb per Volt)","C/V","C/V","1",1,false],[false,"ohm","Ohm","OHM","electric resistance",1000,[2,-1,1,0,0,-2,0],"\u03a9","si",true,null,null,1,false,false,0,"\u03a9; resistance; ohms","UCUM","","Clinical","unit of electrical resistance with units of Volt per Ampere","V/A","V/A","1",1,false],[false,"siemens","S","SIE","electric conductance",0.001,[-2,1,-1,0,0,2,0],"S","si",true,null,null,1,false,false,0,"Reciprocal ohm; mho; \u03a9\u22121; conductance","UCUM","","Clinical","unit of electric conductance (the inverse of electrical resistance) equal to ohm^-1","Ohm-1","OHM-1","1",1,false],[false,"weber","Wb","WB","magnetic flux",1000,[2,-1,1,0,0,-1,0],"Wb","si",true,null,null,1,false,false,0,"magnetic flux; webers","UCUM","","Clinical","unit of magnetic flux equal to Volt second","V.s","V.S","1",1,false],[false,"degree Celsius","Cel","CEL","temperature",1,[0,0,0,0,1,0,0],"\xb0C","si",true,null,"Cel",1,true,false,0,"\xb0C; degrees","UCUM","Temp","Clinical","","K",null,null,1,false],[false,"tesla","T","T","magnetic flux density",1000,[0,-1,1,0,0,-1,0],"T","si",true,null,null,1,false,false,0,"Teslas; magnetic field","UCUM","","Clinical","SI unit of magnetic field strength for magnetic field B equal to 1 Weber/square meter = 1 kg/(s2*A)","Wb/m2","WB/M2","1",1,false],[false,"henry","H","H","inductance",1000,[2,0,1,0,0,-2,0],"H","si",true,null,null,1,false,false,0,"henries; inductance","UCUM","","Clinical","unit of electrical inductance; usually expressed in millihenrys (mH) or microhenrys (uH).","Wb/A","WB/A","1",1,false],[false,"lumen","lm","LM","luminous flux",1,[0,0,0,2,0,0,1],"lm","si",true,null,null,1,false,false,0,"luminous flux; lumens","UCUM","","Clinical","unit of luminous flux defined as 1 lm = 1 cd\u22c5sr (candela times sphere)","cd.sr","CD.SR","1",1,false],[false,"lux","lx","LX","illuminance",1,[-2,0,0,2,0,0,1],"lx","si",true,null,null,1,false,false,0,"illuminance; luxes","UCUM","","Clinical","unit of illuminance equal to one lumen per square meter. ","lm/m2","LM/M2","1",1,false],[false,"becquerel","Bq","BQ","radioactivity",1,[0,-1,0,0,0,0,0],"Bq","si",true,null,null,1,false,false,0,"activity; radiation; becquerels","UCUM","","Clinical","measure of the atomic radiation rate with units s^-1","s-1","S-1","1",1,false],[false,"gray","Gy","GY","energy dose",1,[2,-2,0,0,0,0,0],"Gy","si",true,null,null,1,false,false,0,"absorbed doses; ionizing radiation doses; kerma; grays","UCUM","EngCnt","Clinical","unit of ionizing radiation dose with base units of 1 joule of radiation energy per kilogram of matter","J/kg","J/KG","1",1,false],[false,"sievert","Sv","SV","dose equivalent",1,[2,-2,0,0,0,0,0],"Sv","si",true,null,null,1,false,false,0,"sieverts; radiation dose quantities; equivalent doses; effective dose; operational dose; committed dose","UCUM","","Clinical","SI unit for radiation dose equivalent equal to 1 Joule/kilogram.","J/kg","J/KG","1",1,false],[false,"degree - plane angle","deg","DEG","plane angle",0.017453292519943295,[0,0,0,1,0,0,0],"\xb0","iso1000",false,null,null,1,false,false,0,"\xb0; degree of arc; arc degree; arcdegree; angle","UCUM","Angle","Clinical","one degree is equivalent to \u03c0/180 radians.","[pi].rad/360","[PI].RAD/360","2",2,false],[false,"gon","gon","GON","plane angle",0.015707963267948967,[0,0,0,1,0,0,0],"\u25a1g","iso1000",false,null,null,1,false,false,0,"gon (grade); gons","UCUM","Angle","Nonclinical","unit of plane angle measurement equal to 1/400 circle","deg","DEG","0.9",0.9,false],[false,"arc minute","\'","\'","plane angle",0.0002908882086657216,[0,0,0,1,0,0,0],"\'","iso1000",false,null,null,1,false,false,0,"arcminutes; arcmin; arc minutes; arc mins","UCUM","Angle","Clinical","equal to 1/60 degree; used in optometry and opthamology (e.g. visual acuity tests)","deg/60","DEG/60","1",1,false],[false,"arc second","\'\'","\'\'","plane angle",0.00000484813681109536,[0,0,0,1,0,0,0],"\'\'","iso1000",false,null,null,1,false,false,0,"arcseconds; arcsecs","UCUM","Angle","Clinical","equal to 1/60 arcminute = 1/3600 degree; used in optometry and opthamology (e.g. visual acuity tests)","\'/60","\'/60","1",1,false],[false,"Liters","l","L","volume",0.001,[3,0,0,0,0,0,0],"l","iso1000",true,null,null,1,false,false,0,"cubic decimeters; decimeters cubed; decimetres; dm3; dm^3; litres; liters, LT ","UCUM","Vol","Clinical","Because lower case \\"l\\" can be read as the number \\"1\\", though this is a valid UCUM units. UCUM strongly reccomends using \\"L\\"","dm3","DM3","1",1,false],[false,"Liters","L","L","volume",0.001,[3,0,0,0,0,0,0],"L","iso1000",true,null,null,1,false,false,0,"cubic decimeters; decimeters cubed; decimetres; dm3; dm^3; litres; liters, LT ","UCUM","Vol","Clinical","Because lower case \\"l\\" can be read as the number \\"1\\", though this is a valid UCUM units. UCUM strongly reccomends using \\"L\\"","l",null,"1",1,false],[false,"are","ar","AR","area",100,[2,0,0,0,0,0,0],"a","iso1000",true,null,null,1,false,false,0,"100 m2; 100 m^2; 100 square meter; meters squared; metres","UCUM","Area","Clinical","metric base unit for area defined as 100 m^2","m2","M2","100",100,false],[false,"minute","min","MIN","time",60,[0,1,0,0,0,0,0],"min","iso1000",false,null,null,1,false,false,0,"minutes","UCUM","Time","Clinical","","s","S","60",60,false],[false,"hour","h","HR","time",3600,[0,1,0,0,0,0,0],"h","iso1000",false,null,null,1,false,false,0,"hours; hrs; age","UCUM","Time","Clinical","","min","MIN","60",60,false],[false,"day","d","D","time",86400,[0,1,0,0,0,0,0],"d","iso1000",false,null,null,1,false,false,0,"days; age; dy; 24 hours; 24 hrs","UCUM","Time","Clinical","","h","HR","24",24,false],[false,"tropical year","a_t","ANN_T","time",31556925.216,[0,1,0,0,0,0,0],"at","iso1000",false,null,null,1,false,false,0,"solar years; a tropical; years","UCUM","Time","Clinical","has an average of 365.242181 days but is constantly changing.","d","D","365.24219",365.24219,false],[false,"mean Julian year","a_j","ANN_J","time",31557600,[0,1,0,0,0,0,0],"aj","iso1000",false,null,null,1,false,false,0,"mean Julian yr; a julian; years","UCUM","Time","Clinical","has an average of 365.25 days, and in everyday use, has been replaced by the Gregorian year. However, this unit is used in astronomy to calculate light year. ","d","D","365.25",365.25,false],[false,"mean Gregorian year","a_g","ANN_G","time",31556952,[0,1,0,0,0,0,0],"ag","iso1000",false,null,null,1,false,false,0,"mean Gregorian yr; a gregorian; years","UCUM","Time","Clinical","has an average of 365.2425 days and is the most internationally used civil calendar.","d","D","365.2425",365.2425,false],[false,"year","a","ANN","time",31557600,[0,1,0,0,0,0,0],"a","iso1000",false,null,null,1,false,false,0,"years; a; yr, yrs; annum","UCUM","Time","Clinical","","a_j","ANN_J","1",1,false],[false,"week","wk","WK","time",604800,[0,1,0,0,0,0,0],"wk","iso1000",false,null,null,1,false,false,0,"weeks; wks","UCUM","Time","Clinical","","d","D","7",7,false],[false,"synodal month","mo_s","MO_S","time",2551442.976,[0,1,0,0,0,0,0],"mos","iso1000",false,null,null,1,false,false,0,"Moon; synodic month; lunar month; mo-s; mo s; months; moons","UCUM","Time","Nonclinical","has an average of 29.53 days per month, unit used in astronomy","d","D","29.53059",29.53059,false],[false,"mean Julian month","mo_j","MO_J","time",2629800,[0,1,0,0,0,0,0],"moj","iso1000",false,null,null,1,false,false,0,"mo-julian; mo Julian; months","UCUM","Time","Clinical","has an average of 30.435 days per month","a_j/12","ANN_J/12","1",1,false],[false,"mean Gregorian month","mo_g","MO_G","time",2629746,[0,1,0,0,0,0,0],"mog","iso1000",false,null,null,1,false,false,0,"months; month-gregorian; mo-gregorian","UCUM","Time","Clinical","has an average 30.436875 days per month and is from the most internationally used civil calendar.","a_g/12","ANN_G/12","1",1,false],[false,"month","mo","MO","time",2629800,[0,1,0,0,0,0,0],"mo","iso1000",false,null,null,1,false,false,0,"months; duration","UCUM","Time","Clinical","based on Julian calendar which has an average of 30.435 days per month (this unit is used in astronomy but not in everyday life - see mo_g)","mo_j","MO_J","1",1,false],[false,"metric ton","t","TNE","mass",1000000,[0,0,1,0,0,0,0],"t","iso1000",true,null,null,1,false,false,0,"tonnes; megagrams; tons","UCUM","Mass","Nonclinical","equal to 1000 kg used in the US (recognized by NIST as metric ton), and internationally (recognized as tonne)","kg","KG","1e3",1000,false],[false,"bar","bar","BAR","pressure",100000000,[-1,-2,1,0,0,0,0],"bar","iso1000",true,null,null,1,false,false,0,"bars","UCUM","Pres","Nonclinical","unit of pressure equal to 10^5 Pascals, primarily used by meteorologists and in weather forecasting","Pa","PAL","1e5",100000,false],[false,"unified atomic mass unit","u","AMU","mass",1.6605402e-24,[0,0,1,0,0,0,0],"u","iso1000",true,null,null,1,false,false,0,"unified atomic mass units; amu; Dalton; Da","UCUM","Mass","Clinical","the mass of 1/12 of an unbound Carbon-12 atom nuclide equal to 1.6606x10^-27 kg ","g","G","1.6605402e-24",1.6605402e-24,false],[false,"astronomic unit","AU","ASU","length",149597870691,[1,0,0,0,0,0,0],"AU","iso1000",false,null,null,1,false,false,0,"AU; units","UCUM","Len","Clinical","unit of length used in astronomy for measuring distance in Solar system","Mm","MAM","149597.870691",149597.870691,false],[false,"parsec","pc","PRS","length",30856780000000000,[1,0,0,0,0,0,0],"pc","iso1000",true,null,null,1,false,false,0,"parsecs","UCUM","Len","Clinical","unit of length equal to 3.26 light years, nad used to measure large distances to objects outside our Solar System","m","M","3.085678e16",30856780000000000,false],[false,"velocity of light in a vacuum","[c]","[C]","velocity",299792458,[1,-1,0,0,0,0,0],"c","const",true,null,null,1,false,false,0,"speed of light","UCUM","Vel","Constant","equal to 299792458 m/s (approximately 3 x 10^8 m/s)","m/s","M/S","299792458",299792458,false],[false,"Planck constant","[h]","[H]","action",6.6260755e-31,[2,-1,1,0,0,0,0],"h","const",true,null,null,1,false,false,0,"Planck\'s constant","UCUM","","Constant","constant = 6.62607004 \xd7 10-34 m2.kg/s; defined as quantum of action","J.s","J.S","6.6260755e-34",6.6260755e-34,false],[false,"Boltzmann constant","[k]","[K]","(unclassified)",1.380658e-20,[2,-2,1,0,-1,0,0],"k","const",true,null,null,1,false,false,0,"k; kB","UCUM","","Constant","physical constant relating energy at the individual particle level with temperature = 1.38064852 \xd710^\u221223 J/K","J/K","J/K","1.380658e-23",1.380658e-23,false],[false,"permittivity of vacuum - electric","[eps_0]","[EPS_0]","electric permittivity",8.854187817000001e-15,[-3,2,-1,0,0,2,0],"\u03b50","const",true,null,null,1,false,false,0,"\u03b50; Electric Constant; vacuum permittivity; permittivity of free space ","UCUM","","Constant","approximately equal to 8.854\u2009\xd7 10^\u221212 F/m (farads per meter)","F/m","F/M","8.854187817e-12",8.854187817e-12,false],[false,"permeability of vacuum - magnetic","[mu_0]","[MU_0]","magnetic permeability",0.0012566370614359172,[1,0,1,0,0,-2,0],"\u03bc0","const",true,null,null,1,false,false,0,"\u03bc0; vacuum permeability; permeability of free space; magnetic constant","UCUM","","Constant","equal to 4\u03c0\xd710^\u22127 N/A2 (Newtons per square ampere) \u2248 1.2566\xd710^\u22126 H/m (Henry per meter)","N/A2","4.[PI].10*-7.N/A2","1",0.0000012566370614359173,false],[false,"elementary charge","[e]","[E]","electric charge",1.60217733e-19,[0,0,0,0,0,1,0],"e","const",true,null,null,1,false,false,0,"e; q; electric charges","UCUM","","Constant","the magnitude of the electric charge carried by a single electron or proton \u2248 1.60217\xd710^-19 Coulombs","C","C","1.60217733e-19",1.60217733e-19,false],[false,"electronvolt","eV","EV","energy",1.60217733e-16,[2,-2,1,0,0,0,0],"eV","iso1000",true,null,null,1,false,false,0,"Electron Volts; electronvolts","UCUM","Eng","Clinical","unit of kinetic energy = 1 V * 1.602\xd710^\u221219 C = 1.6\xd710\u221219 Joules","[e].V","[E].V","1",1,false],[false,"electron mass","[m_e]","[M_E]","mass",9.1093897e-28,[0,0,1,0,0,0,0],"me","const",true,null,null,1,false,false,0,"electron rest mass; me","UCUM","Mass","Constant","approximately equal to 9.10938356 \xd7 10-31 kg; defined as the mass of a stationary electron","g","g","9.1093897e-28",9.1093897e-28,false],[false,"proton mass","[m_p]","[M_P]","mass",1.6726231e-24,[0,0,1,0,0,0,0],"mp","const",true,null,null,1,false,false,0,"mp; masses","UCUM","Mass","Constant","approximately equal to 1.672622\xd710\u221227 kg","g","g","1.6726231e-24",1.6726231e-24,false],[false,"Newtonian constant of gravitation","[G]","[GC]","(unclassified)",6.67259e-14,[3,-2,-1,0,0,0,0],"G","const",true,null,null,1,false,false,0,"G; gravitational constant; Newton\'s constant","UCUM","","Constant","gravitational constant = 6.674\xd710\u221211 N\u22c5m2/kg2","m3.kg-1.s-2","M3.KG-1.S-2","6.67259e-11",6.67259e-11,false],[false,"standard acceleration of free fall","[g]","[G]","acceleration",9.80665,[1,-2,0,0,0,0,0],"gn","const",true,null,null,1,false,false,0,"standard gravity; g; \u02610; \u0261n","UCUM","Accel","Constant","defined by standard = 9.80665 m/s2","m/s2","M/S2","980665e-5",9.80665,false],[false,"Torr","Torr","Torr","pressure",133322,[-1,-2,1,0,0,0,0],"Torr","const",false,null,null,1,false,false,0,"torrs","UCUM","Pres","Clinical","1 torr = 1 mmHg; unit used to measure blood pressure","Pa","PAL","133.322",133.322,false],[false,"standard atmosphere","atm","ATM","pressure",101325000,[-1,-2,1,0,0,0,0],"atm","const",false,null,null,1,false,false,0,"reference pressure; atmos; std atmosphere","UCUM","Pres","Clinical","defined as being precisely equal to 101,325 Pa","Pa","PAL","101325",101325,false],[false,"light-year","[ly]","[LY]","length",9460730472580800,[1,0,0,0,0,0,0],"l.y.","const",true,null,null,1,false,false,0,"light years; ly","UCUM","Len","Constant","unit of astronomal distance = 5.88\xd710^12 mi","[c].a_j","[C].ANN_J","1",1,false],[false,"gram-force","gf","GF","force",9.80665,[1,-2,1,0,0,0,0],"gf","const",true,null,null,1,false,false,0,"Newtons; gram forces","UCUM","Force","Clinical","May be specific to unit related to cardiac output","g.[g]","G.[G]","1",1,false],[false,"Kayser","Ky","KY","lineic number",100,[-1,0,0,0,0,0,0],"K","cgs",true,null,null,1,false,false,0,"wavenumbers; kaysers","UCUM","InvLen","Clinical","unit of wavelength equal to cm^-1","cm-1","CM-1","1",1,false],[false,"Gal","Gal","GL","acceleration",0.01,[1,-2,0,0,0,0,0],"Gal","cgs",true,null,null,1,false,false,0,"galileos; Gals","UCUM","Accel","Clinical","unit of acceleration used in gravimetry; equivalent to cm/s2 ","cm/s2","CM/S2","1",1,false],[false,"dyne","dyn","DYN","force",0.01,[1,-2,1,0,0,0,0],"dyn","cgs",true,null,null,1,false,false,0,"dynes","UCUM","Force","Clinical","unit of force equal to 10^-5 Newtons","g.cm/s2","G.CM/S2","1",1,false],[false,"erg","erg","ERG","energy",0.0001,[2,-2,1,0,0,0,0],"erg","cgs",true,null,null,1,false,false,0,"10^-7 Joules, 10-7 Joules; 100 nJ; 100 nanoJoules; 1 dyne cm; 1 g.cm2/s2","UCUM","Eng","Clinical","unit of energy = 1 dyne centimeter = 10^-7 Joules","dyn.cm","DYN.CM","1",1,false],[false,"Poise","P","P","dynamic viscosity",100,[-1,-1,1,0,0,0,0],"P","cgs",true,null,null,1,false,false,0,"dynamic viscosity; poises","UCUM","Visc","Clinical","unit of dynamic viscosity where 1 Poise = 1/10 Pascal second","dyn.s/cm2","DYN.S/CM2","1",1,false],[false,"Biot","Bi","BI","electric current",10,[0,-1,0,0,0,1,0],"Bi","cgs",true,null,null,1,false,false,0,"Bi; abamperes; abA","UCUM","ElpotRat","Clinical","equal to 10 amperes","A","A","10",10,false],[false,"Stokes","St","ST","kinematic viscosity",0.0001,[2,-1,0,0,0,0,0],"St","cgs",true,null,null,1,false,false,0,"kinematic viscosity","UCUM","Visc","Clinical","unit of kimematic viscosity with units cm2/s","cm2/s","CM2/S","1",1,false],[false,"Maxwell","Mx","MX","flux of magnetic induction",0.00001,[2,-1,1,0,0,-1,0],"Mx","cgs",true,null,null,1,false,false,0,"magnetix flux; Maxwells","UCUM","","Clinical","unit of magnetic flux","Wb","WB","1e-8",1e-8,false],[false,"Gauss","G","GS","magnetic flux density",0.1,[0,-1,1,0,0,-1,0],"Gs","cgs",true,null,null,1,false,false,0,"magnetic fields; magnetic flux density; induction; B","UCUM","magnetic","Clinical","CGS unit of magnetic flux density, known as magnetic field B; defined as one maxwell unit per square centimeter (see Oersted for CGS unit for H field)","T","T","1e-4",0.0001,false],[false,"Oersted","Oe","OE","magnetic field intensity",79.57747154594767,[-1,-1,0,0,0,1,0],"Oe","cgs",true,null,null,1,false,false,0,"H magnetic B field; Oersteds","UCUM","","Clinical","CGS unit of the auxiliary magnetic field H defined as 1 dyne per unit pole = 1000/4\u03c0 amperes per meter (see Gauss for CGS unit for B field)","A/m","/[PI].A/M","250",79.57747154594767,false],[false,"Gilbert","Gb","GB","magnetic tension",0.7957747154594768,[0,-1,0,0,0,1,0],"Gb","cgs",true,null,null,1,false,false,0,"Gi; magnetomotive force; Gilberts","UCUM","","Clinical","unit of magnetomotive force (magnetic potential)","Oe.cm","OE.CM","1",1,false],[false,"stilb","sb","SB","lum. intensity density",10000,[-2,0,0,0,0,0,1],"sb","cgs",true,null,null,1,false,false,0,"stilbs","UCUM","","Obsolete","unit of luminance; equal to and replaced by unit candela per square centimeter (cd/cm2)","cd/cm2","CD/CM2","1",1,false],[false,"Lambert","Lmb","LMB","brightness",3183.098861837907,[-2,0,0,0,0,0,1],"L","cgs",true,null,null,1,false,false,0,"luminance; lamberts","UCUM","","Clinical","unit of luminance defined as 1 lambert = 1/ \u03c0 candela per square meter","cd/cm2/[pi]","CD/CM2/[PI]","1",1,false],[false,"phot","ph","PHT","illuminance",0.0001,[-2,0,0,2,0,0,1],"ph","cgs",true,null,null,1,false,false,0,"phots","UCUM","","Clinical","CGS photometric unit of illuminance, or luminous flux through an area equal to 10000 lumens per square meter = 10000 lux","lx","LX","1e-4",0.0001,false],[false,"Curie","Ci","CI","radioactivity",37000000000,[0,-1,0,0,0,0,0],"Ci","cgs",true,null,null,1,false,false,0,"curies","UCUM","","Obsolete","unit for measuring atomic disintegration rate; replaced by the Bequerel (Bq) unit","Bq","BQ","37e9",37000000000,false],[false,"Roentgen","R","ROE","ion dose",2.58e-7,[0,0,-1,0,0,1,0],"R","cgs",true,null,null,1,false,false,0,"r\xf6ntgen; Roentgens","UCUM","","Clinical","unit of exposure of X-rays and gamma rays in air; unit used primarily in the US but strongly discouraged by NIST","C/kg","C/KG","2.58e-4",0.000258,false],[false,"radiation absorbed dose","RAD","[RAD]","energy dose",0.01,[2,-2,0,0,0,0,0],"RAD","cgs",true,null,null,1,false,false,0,"doses","UCUM","","Clinical","unit of radiation absorbed dose used primarily in the US with base units 100 ergs per gram of material. Also see the SI unit Gray (Gy).","erg/g","ERG/G","100",100,false],[false,"radiation equivalent man","REM","[REM]","dose equivalent",0.01,[2,-2,0,0,0,0,0],"REM","cgs",true,null,null,1,false,false,0,"Roentgen Equivalent in Man; rems; dose equivalents","UCUM","","Clinical","unit of equivalent dose which measures the effect of radiation on humans equal to 0.01 sievert. Used primarily in the US. Also see SI unit Sievert (Sv)","RAD","[RAD]","1",1,false],[false,"inch","[in_i]","[IN_I]","length",0.025400000000000002,[1,0,0,0,0,0,0],"in","intcust",false,null,null,1,false,false,0,"inches; in; international inch; body height","UCUM","Len","Clinical","standard unit for inch in the US and internationally","cm","CM","254e-2",2.54,false],[false,"foot","[ft_i]","[FT_I]","length",0.3048,[1,0,0,0,0,0,0],"ft","intcust",false,null,null,1,false,false,0,"ft; fts; foot; international foot; feet; international feet; height","UCUM","Len","Clinical","unit used in the US and internationally","[in_i]","[IN_I]","12",12,false],[false,"yard","[yd_i]","[YD_I]","length",0.9144000000000001,[1,0,0,0,0,0,0],"yd","intcust",false,null,null,1,false,false,0,"international yards; yds; distance","UCUM","Len","Clinical","standard unit used in the US and internationally","[ft_i]","[FT_I]","3",3,false],[false,"mile","[mi_i]","[MI_I]","length",1609.344,[1,0,0,0,0,0,0],"mi","intcust",false,null,null,1,false,false,0,"international miles; mi I; statute mile","UCUM","Len","Clinical","standard unit used in the US and internationally","[ft_i]","[FT_I]","5280",5280,false],[false,"fathom","[fth_i]","[FTH_I]","depth of water",1.8288000000000002,[1,0,0,0,0,0,0],"fth","intcust",false,null,null,1,false,false,0,"international fathoms","UCUM","Len","Nonclinical","unit used in the US and internationally to measure depth of water; same length as the US fathom","[ft_i]","[FT_I]","6",6,false],[false,"nautical mile","[nmi_i]","[NMI_I]","length",1852,[1,0,0,0,0,0,0],"n.mi","intcust",false,null,null,1,false,false,0,"nautical mile; nautical miles; international nautical mile; international nautical miles; nm; n.m.; nmi","UCUM","Len","Nonclinical","standard unit used in the US and internationally","m","M","1852",1852,false],[false,"knot","[kn_i]","[KN_I]","velocity",0.5144444444444445,[1,-1,0,0,0,0,0],"knot","intcust",false,null,null,1,false,false,0,"kn; kt; international knots","UCUM","Vel","Nonclinical","defined as equal to one nautical mile (1.852 km) per hour","[nmi_i]/h","[NMI_I]/H","1",1,false],[false,"square inch","[sin_i]","[SIN_I]","area",0.0006451600000000001,[2,0,0,0,0,0,0],null,"intcust",false,null,null,1,false,false,0,"in2; in^2; inches squared; sq inch; inches squared; international","UCUM","Area","Clinical","standard unit used in the US and internationally","[in_i]2","[IN_I]2","1",1,false],[false,"square foot","[sft_i]","[SFT_I]","area",0.09290304,[2,0,0,0,0,0,0],null,"intcust",false,null,null,1,false,false,0,"ft2; ft^2; ft squared; sq ft; feet; international","UCUM","Area","Clinical","standard unit used in the US and internationally","[ft_i]2","[FT_I]2","1",1,false],[false,"square yard","[syd_i]","[SYD_I]","area",0.8361273600000002,[2,0,0,0,0,0,0],null,"intcust",false,null,null,1,false,false,0,"yd2; yd^2; sq. yds; yards squared; international","UCUM","Area","Clinical","standard unit used in the US and internationally","[yd_i]2","[YD_I]2","1",1,false],[false,"cubic inch","[cin_i]","[CIN_I]","volume",0.000016387064000000003,[3,0,0,0,0,0,0],null,"intcust",false,null,null,1,false,false,0,"in3; in^3; in*3; inches^3; inches*3; cu. in; cu in; cubic inches; inches cubed; cin","UCUM","Vol","Clinical","standard unit used in the US and internationally","[in_i]3","[IN_I]3","1",1,false],[false,"cubic foot","[cft_i]","[CFT_I]","volume",0.028316846592000004,[3,0,0,0,0,0,0],null,"intcust",false,null,null,1,false,false,0,"ft3; ft^3; ft*3; cu. ft; cubic feet; cubed; [ft_i]3; international","UCUM","Vol","Clinical","","[ft_i]3","[FT_I]3","1",1,false],[false,"cubic yard","[cyd_i]","[CYD_I]","volume",0.7645548579840002,[3,0,0,0,0,0,0],"cu.yd","intcust",false,null,null,1,false,false,0,"cubic yards; cubic yds; cu yards; CYs; yards^3; yd^3; yds^3; yd3; yds3","UCUM","Vol","Nonclinical","standard unit used in the US and internationally","[yd_i]3","[YD_I]3","1",1,false],[false,"board foot","[bf_i]","[BF_I]","volume",0.002359737216,[3,0,0,0,0,0,0],null,"intcust",false,null,null,1,false,false,0,"BDFT; FBM; BF; board feet; international","UCUM","Vol","Nonclinical","unit of volume used to measure lumber","[in_i]3","[IN_I]3","144",144,false],[false,"cord","[cr_i]","[CR_I]","volume",3.6245563637760005,[3,0,0,0,0,0,0],null,"intcust",false,null,null,1,false,false,0,"crd I; international cords","UCUM","Vol","Nonclinical","unit of measure of dry volume used to measure firewood equal 128 ft3","[ft_i]3","[FT_I]3","128",128,false],[false,"mil","[mil_i]","[MIL_I]","length",0.000025400000000000004,[1,0,0,0,0,0,0],"mil","intcust",false,null,null,1,false,false,0,"thou, thousandth; mils; international","UCUM","Len","Clinical","equal to 0.001 international inch","[in_i]","[IN_I]","1e-3",0.001,false],[false,"circular mil","[cml_i]","[CML_I]","area",5.067074790974979e-10,[2,0,0,0,0,0,0],"circ.mil","intcust",false,null,null,1,false,false,0,"circular mils; cml I; international","UCUM","Area","Clinical","","[pi]/4.[mil_i]2","[PI]/4.[MIL_I]2","1",1,false],[false,"hand","[hd_i]","[HD_I]","height of horses",0.10160000000000001,[1,0,0,0,0,0,0],"hd","intcust",false,null,null,1,false,false,0,"hands; international","UCUM","Len","Nonclinical","used to measure horse height","[in_i]","[IN_I]","4",4,false],[false,"foot - US","[ft_us]","[FT_US]","length",0.3048006096012192,[1,0,0,0,0,0,0],"ftus","us-lengths",false,null,null,1,false,false,0,"US foot; foot US; us ft; ft us; height; visual distance; feet","UCUM","Len","Obsolete","Better to use [ft_i] which refers to the length used worldwide, including in the US; [ft_us] may be confused with land survey units. ","m/3937","M/3937","1200",1200,false],[false,"yard - US","[yd_us]","[YD_US]","length",0.9144018288036575,[1,0,0,0,0,0,0],null,"us-lengths",false,null,null,1,false,false,0,"US yards; us yds; distance","UCUM","Len; Nrat","Obsolete","Better to use [yd_i] which refers to the length used worldwide, including in the US; [yd_us] refers to unit used in land surveys in the US","[ft_us]","[FT_US]","3",3,false],[false,"inch - US","[in_us]","[IN_US]","length",0.0254000508001016,[1,0,0,0,0,0,0],null,"us-lengths",false,null,null,1,false,false,0,"US inches; in us; us in; inch US","UCUM","Len","Obsolete","Better to use [in_i] which refers to the length used worldwide, including in the US","[ft_us]/12","[FT_US]/12","1",1,false],[false,"rod - US","[rd_us]","[RD_US]","length",5.029210058420117,[1,0,0,0,0,0,0],null,"us-lengths",false,null,null,1,false,false,0,"US rod; US rods; rd US; US rd","UCUM","Len","Obsolete","","[ft_us]","[FT_US]","16.5",16.5,false],[false,"Gunter\'s chain - US","[ch_us]","[CH_US]","length",20.116840233680467,[1,0,0,0,0,0,0],null,"us-lengths",false,null,null,1,false,false,0,"surveyor\'s chain; Surveyor\'s chain USA; Gunter\u2019s measurement; surveyor\u2019s measurement; Gunter\'s Chain USA","UCUM","Len","Obsolete","historical unit used for land survey used only in the US","[rd_us]","[RD_US]","4",4,false],[false,"link for Gunter\'s chain - US","[lk_us]","[LK_US]","length",0.20116840233680466,[1,0,0,0,0,0,0],null,"us-lengths",false,null,null,1,false,false,0,"Links for Gunter\'s Chain USA","UCUM","Len","Obsolete","","[ch_us]/100","[CH_US]/100","1",1,false],[false,"Ramden\'s chain - US","[rch_us]","[RCH_US]","length",30.480060960121918,[1,0,0,0,0,0,0],null,"us-lengths",false,null,null,1,false,false,0,"Ramsden\'s chain; engineer\'s chains","UCUM","Len","Obsolete","distance measuring device used for\xa0land survey","[ft_us]","[FT_US]","100",100,false],[false,"link for Ramden\'s chain - US","[rlk_us]","[RLK_US]","length",0.3048006096012192,[1,0,0,0,0,0,0],null,"us-lengths",false,null,null,1,false,false,0,"links for Ramsden\'s chain","UCUM","Len","Obsolete","","[rch_us]/100","[RCH_US]/100","1",1,false],[false,"fathom - US","[fth_us]","[FTH_US]","length",1.828803657607315,[1,0,0,0,0,0,0],null,"us-lengths",false,null,null,1,false,false,0,"US fathoms; fathom USA; fth us","UCUM","Len","Obsolete","same length as the international fathom - better to use international fathom ([fth_i])","[ft_us]","[FT_US]","6",6,false],[false,"furlong - US","[fur_us]","[FUR_US]","length",201.16840233680466,[1,0,0,0,0,0,0],null,"us-lengths",false,null,null,1,false,false,0,"US furlongs; fur us","UCUM","Len","Nonclinical","distance unit in horse racing","[rd_us]","[RD_US]","40",40,false],[false,"mile - US","[mi_us]","[MI_US]","length",1609.3472186944373,[1,0,0,0,0,0,0],null,"us-lengths",false,null,null,1,false,false,0,"U.S. Survey Miles; US statute miles; survey mi; US mi; distance","UCUM","Len","Nonclinical","Better to use [mi_i] which refers to the length used worldwide, including in the US","[fur_us]","[FUR_US]","8",8,false],[false,"acre - US","[acr_us]","[ACR_US]","area",4046.872609874252,[2,0,0,0,0,0,0],null,"us-lengths",false,null,null,1,false,false,0,"Acre USA Survey; Acre USA; survey acres","UCUM","Area","Nonclinical","an older unit based on pre 1959 US statute lengths that is still sometimes used in the US only for land survey purposes. ","[rd_us]2","[RD_US]2","160",160,false],[false,"square rod - US","[srd_us]","[SRD_US]","area",25.292953811714074,[2,0,0,0,0,0,0],null,"us-lengths",false,null,null,1,false,false,0,"rod2; rod^2; sq. rod; rods squared","UCUM","Area","Nonclinical","Used only in the US to measure land area, based on US statute land survey length units","[rd_us]2","[RD_US]2","1",1,false],[false,"square mile - US","[smi_us]","[SMI_US]","area",2589998.470319521,[2,0,0,0,0,0,0],null,"us-lengths",false,null,null,1,false,false,0,"mi2; mi^2; sq mi; miles squared","UCUM","Area","Nonclinical","historical unit used only in the US for land survey purposes (based on the US survey mile), not the internationally recognized [mi_i]","[mi_us]2","[MI_US]2","1",1,false],[false,"section","[sct]","[SCT]","area",2589998.470319521,[2,0,0,0,0,0,0],null,"us-lengths",false,null,null,1,false,false,0,"sct; sections","UCUM","Area","Nonclinical","tract of land approximately equal to 1 mile square containing 640 acres","[mi_us]2","[MI_US]2","1",1,false],[false,"township","[twp]","[TWP]","area",93239944.93150276,[2,0,0,0,0,0,0],null,"us-lengths",false,null,null,1,false,false,0,"twp; townships","UCUM","Area","Nonclinical","land measurement equal to 6 mile square","[sct]","[SCT]","36",36,false],[false,"mil - US","[mil_us]","[MIL_US]","length",0.0000254000508001016,[1,0,0,0,0,0,0],null,"us-lengths",false,null,null,1,false,false,0,"thou, thousandth; mils","UCUM","Len","Obsolete","better to use [mil_i] which is based on the internationally recognized inch","[in_us]","[IN_US]","1e-3",0.001,false],[false,"inch - British","[in_br]","[IN_BR]","length",0.025399980000000003,[1,0,0,0,0,0,0],null,"brit-length",false,null,null,1,false,false,0,"imperial inches; imp in; br in; british inches","UCUM","Len","Obsolete","","cm","CM","2.539998",2.539998,false],[false,"foot - British","[ft_br]","[FT_BR]","length",0.30479976000000003,[1,0,0,0,0,0,0],null,"brit-length",false,null,null,1,false,false,0,"British Foot; Imperial Foot; feet; imp fts; br fts","UCUM","Len","Obsolete","","[in_br]","[IN_BR]","12",12,false],[false,"rod - British","[rd_br]","[RD_BR]","length",5.02919604,[1,0,0,0,0,0,0],null,"brit-length",false,null,null,1,false,false,0,"British rods; br rd","UCUM","Len","Obsolete","","[ft_br]","[FT_BR]","16.5",16.5,false],[false,"Gunter\'s chain - British","[ch_br]","[CH_BR]","length",20.11678416,[1,0,0,0,0,0,0],null,"brit-length",false,null,null,1,false,false,0,"Gunter\'s Chain British; Gunters Chain British; Surveyor\'s Chain British","UCUM","Len","Obsolete","historical unit used for land survey used only in Great Britain","[rd_br]","[RD_BR]","4",4,false],[false,"link for Gunter\'s chain - British","[lk_br]","[LK_BR]","length",0.2011678416,[1,0,0,0,0,0,0],null,"brit-length",false,null,null,1,false,false,0,"Links for Gunter\'s Chain British","UCUM","Len","Obsolete","","[ch_br]/100","[CH_BR]/100","1",1,false],[false,"fathom - British","[fth_br]","[FTH_BR]","length",1.82879856,[1,0,0,0,0,0,0],null,"brit-length",false,null,null,1,false,false,0,"British fathoms; imperial fathoms; br fth; imp fth","UCUM","Len","Obsolete","","[ft_br]","[FT_BR]","6",6,false],[false,"pace - British","[pc_br]","[PC_BR]","length",0.7619994000000001,[1,0,0,0,0,0,0],null,"brit-length",false,null,null,1,false,false,0,"British paces; br pc","UCUM","Len","Nonclinical","traditional unit of length equal to 152.4 centimeters, or 1.52 meter. ","[ft_br]","[FT_BR]","2.5",2.5,false],[false,"yard - British","[yd_br]","[YD_BR]","length",0.91439928,[1,0,0,0,0,0,0],null,"brit-length",false,null,null,1,false,false,0,"British yards; Br yds; distance","UCUM","Len","Obsolete","","[ft_br]","[FT_BR]","3",3,false],[false,"mile - British","[mi_br]","[MI_BR]","length",1609.3427328000002,[1,0,0,0,0,0,0],null,"brit-length",false,null,null,1,false,false,0,"imperial miles; British miles; English statute miles; imp mi, br mi","UCUM","Len","Obsolete","","[ft_br]","[FT_BR]","5280",5280,false],[false,"nautical mile - British","[nmi_br]","[NMI_BR]","length",1853.1825408000002,[1,0,0,0,0,0,0],null,"brit-length",false,null,null,1,false,false,0,"British nautical miles; Imperial nautical miles; Admiralty miles; n.m. br; imp nm","UCUM","Len","Obsolete","","[ft_br]","[FT_BR]","6080",6080,false],[false,"knot - British","[kn_br]","[KN_BR]","velocity",0.5147729280000001,[1,-1,0,0,0,0,0],null,"brit-length",false,null,null,1,false,false,0,"British knots; kn br; kt","UCUM","Vel","Obsolete","based on obsolete British nautical mile ","[nmi_br]/h","[NMI_BR]/H","1",1,false],[false,"acre","[acr_br]","[ACR_BR]","area",4046.850049400269,[2,0,0,0,0,0,0],null,"brit-length",false,null,null,1,false,false,0,"Imperial acres; British; a; ac; ar; acr","UCUM","Area","Nonclinical","the standard unit for acre used in the US and internationally","[yd_br]2","[YD_BR]2","4840",4840,false],[false,"gallon - US","[gal_us]","[GAL_US]","fluid volume",0.0037854117840000006,[3,0,0,0,0,0,0],null,"us-volumes",false,null,null,1,false,false,0,"US gallons; US liquid gallon; gal us; Queen Anne\'s wine gallon","UCUM","Vol","Nonclinical","only gallon unit used in the US; [gal_us] is only used in some other countries in South American and Africa to measure gasoline volume","[in_i]3","[IN_I]3","231",231,false],[false,"barrel - US","[bbl_us]","[BBL_US]","fluid volume",0.158987294928,[3,0,0,0,0,0,0],null,"us-volumes",false,null,null,1,false,false,0,"bbl","UCUM","Vol","Nonclinical","[bbl_us] is the standard unit for oil barrel, which is a unit only used in the US to measure the volume oil. ","[gal_us]","[GAL_US]","42",42,false],[false,"quart - US","[qt_us]","[QT_US]","fluid volume",0.0009463529460000001,[3,0,0,0,0,0,0],null,"us-volumes",false,null,null,1,false,false,0,"US quarts; us qts","UCUM","Vol","Clinical","Used only in the US","[gal_us]/4","[GAL_US]/4","1",1,false],[false,"pint - US","[pt_us]","[PT_US]","fluid volume",0.00047317647300000007,[3,0,0,0,0,0,0],null,"us-volumes",false,null,null,1,false,false,0,"US pints; pint US; liquid pint; pt us; us pt","UCUM","Vol","Clinical","Used only in the US","[qt_us]/2","[QT_US]/2","1",1,false],[false,"gill - US","[gil_us]","[GIL_US]","fluid volume",0.00011829411825000002,[3,0,0,0,0,0,0],null,"us-volumes",false,null,null,1,false,false,0,"US gills; gil us","UCUM","Vol","Nonclinical","only used in the context of alcohol volume in the US","[pt_us]/4","[PT_US]/4","1",1,false],[false,"fluid ounce - US","[foz_us]","[FOZ_US]","fluid volume",0.000029573529562500005,[3,0,0,0,0,0,0],"oz fl","us-volumes",false,null,null,1,false,false,0,"US fluid ounces; fl ozs; FO; fl. oz.; foz us","UCUM","Vol","Clinical","unit used only in the US","[gil_us]/4","[GIL_US]/4","1",1,false],[false,"fluid dram - US","[fdr_us]","[FDR_US]","fluid volume",0.0000036966911953125006,[3,0,0,0,0,0,0],null,"us-volumes",false,null,null,1,false,false,0,"US fluid drams; fdr us","UCUM","Vol","Nonclinical","equal to 1/8 US fluid ounce = 3.69 mL; used informally to mean small amount of liquor, especially Scotch whiskey","[foz_us]/8","[FOZ_US]/8","1",1,false],[false,"minim - US","[min_us]","[MIN_US]","fluid volume",6.1611519921875e-8,[3,0,0,0,0,0,0],null,"us-volumes",false,null,null,1,false,false,0,"min US; US min; \u264f US","UCUM","Vol","Obsolete","","[fdr_us]/60","[FDR_US]/60","1",1,false],[false,"cord - US","[crd_us]","[CRD_US]","fluid volume",3.6245563637760005,[3,0,0,0,0,0,0],null,"us-volumes",false,null,null,1,false,false,0,"US cord; US cords; crd us; us crd","UCUM","Vol","Nonclinical","unit of measure of dry volume used to measure firewood equal 128 ft3 (the same as international cord [cr_i])","[ft_i]3","[FT_I]3","128",128,false],[false,"bushel - US","[bu_us]","[BU_US]","dry volume",0.03523907016688001,[3,0,0,0,0,0,0],null,"us-volumes",false,null,null,1,false,false,0,"US bushels; US bsh; US bu","UCUM","Vol","Obsolete","Historical unit of dry volume that is rarely used today","[in_i]3","[IN_I]3","2150.42",2150.42,false],[false,"gallon - historical","[gal_wi]","[GAL_WI]","dry volume",0.004404883770860001,[3,0,0,0,0,0,0],null,"us-volumes",false,null,null,1,false,false,0,"Corn Gallon British; Dry Gallon US; Gallons Historical; Grain Gallon British; Winchester Corn Gallon; historical winchester gallons; wi gal","UCUM","Vol","Obsolete","historical unit of dry volume no longer used","[bu_us]/8","[BU_US]/8","1",1,false],[false,"peck - US","[pk_us]","[PK_US]","dry volume",0.008809767541720002,[3,0,0,0,0,0,0],null,"us-volumes",false,null,null,1,false,false,0,"US pecks; US pk","UCUM","Vol","Nonclinical","unit of dry volume rarely used today (can be used to measure volume of apples)","[bu_us]/4","[BU_US]/4","1",1,false],[false,"dry quart - US","[dqt_us]","[DQT_US]","dry volume",0.0011012209427150002,[3,0,0,0,0,0,0],null,"us-volumes",false,null,null,1,false,false,0,"dry quarts; dry quart US; US dry quart; dry qt; us dry qt; dqt; dqt us","UCUM","Vol","Nonclinical","historical unit of dry volume only in the US, but is rarely used today","[pk_us]/8","[PK_US]/8","1",1,false],[false,"dry pint - US","[dpt_us]","[DPT_US]","dry volume",0.0005506104713575001,[3,0,0,0,0,0,0],null,"us-volumes",false,null,null,1,false,false,0,"dry pints; dry pint US; US dry pint; dry pt; dpt; dpt us","UCUM","Vol","Nonclinical","historical unit of dry volume only in the US, but is rarely used today","[dqt_us]/2","[DQT_US]/2","1",1,false],[false,"tablespoon - US","[tbs_us]","[TBS_US]","volume",0.000014786764781250002,[3,0,0,0,0,0,0],null,"us-volumes",false,null,null,1,false,false,0,"Tbs; tbsp; tbs us; US tablespoons","UCUM","Vol","Clinical","unit defined as 0.5 US fluid ounces or 3 teaspoons - used only in the US. See [tbs_m] for the unit used internationally and in the US for nutrional labelling. ","[foz_us]/2","[FOZ_US]/2","1",1,false],[false,"teaspoon - US","[tsp_us]","[TSP_US]","volume",0.0000049289215937500005,[3,0,0,0,0,0,0],null,"us-volumes",false,null,null,1,false,false,0,"tsp; t; US teaspoons","UCUM","Vol","Nonclinical","unit defined as 1/6 US fluid ounces - used only in the US. See [tsp_m] for the unit used internationally and in the US for nutrional labelling. ","[tbs_us]/3","[TBS_US]/3","1",1,false],[false,"cup - US customary","[cup_us]","[CUP_US]","volume",0.00023658823650000004,[3,0,0,0,0,0,0],null,"us-volumes",false,null,null,1,false,false,0,"cup us; us cups","UCUM","Vol","Nonclinical","Unit defined as 1/2 US pint or 16 US tablespoons \u2248 236.59 mL, which is not the standard unit defined by the FDA of 240 mL - see [cup_m] (metric cup)","[tbs_us]","[TBS_US]","16",16,false],[false,"fluid ounce - metric","[foz_m]","[FOZ_M]","fluid volume",0.000029999999999999997,[3,0,0,0,0,0,0],"oz fl","us-volumes",false,null,null,1,false,false,0,"metric fluid ounces; fozs m; fl ozs m","UCUM","Vol","Clinical","unit used only in the US for nutritional labelling, as set by the FDA","mL","ML","30",30,false],[false,"cup - US legal","[cup_m]","[CUP_M]","volume",0.00023999999999999998,[3,0,0,0,0,0,0],null,"us-volumes",false,null,null,1,false,false,0,"cup m; metric cups","UCUM","Vol","Clinical","standard unit equal to 240 mL used in the US for nutritional labelling, as defined by the FDA. Note that this is different from the US customary cup (236.59 mL) and the metric cup used in Commonwealth nations (250 mL).","mL","ML","240",240,false],[false,"teaspoon - metric","[tsp_m]","[TSP_M]","volume",0.0000049999999999999996,[3,0,0,0,0,0,0],null,"us-volumes",false,null,null,1,false,false,0,"tsp; t; metric teaspoons","UCUM","Vol","Clinical","standard unit used in the US and internationally","mL","mL","5",5,false],[false,"tablespoon - metric","[tbs_m]","[TBS_M]","volume",0.000014999999999999999,[3,0,0,0,0,0,0],null,"us-volumes",false,null,null,1,false,false,0,"metric tablespoons; Tbs; tbsp; T; tbs m","UCUM","Vol","Clinical","standard unit used in the US and internationally","mL","mL","15",15,false],[false,"gallon- British","[gal_br]","[GAL_BR]","volume",0.004546090000000001,[3,0,0,0,0,0,0],null,"brit-volumes",false,null,null,1,false,false,0,"imperial gallons, UK gallons; British gallons; br gal; imp gal","UCUM","Vol","Nonclinical","Used only in Great Britain and other Commonwealth countries","l","L","4.54609",4.54609,false],[false,"peck - British","[pk_br]","[PK_BR]","volume",0.009092180000000002,[3,0,0,0,0,0,0],null,"brit-volumes",false,null,null,1,false,false,0,"imperial pecks; British pecks; br pk; imp pk","UCUM","Vol","Nonclinical","unit of dry volume rarely used today (can be used to measure volume of apples)","[gal_br]","[GAL_BR]","2",2,false],[false,"bushel - British","[bu_br]","[BU_BR]","volume",0.03636872000000001,[3,0,0,0,0,0,0],null,"brit-volumes",false,null,null,1,false,false,0,"British bushels; imperial; br bsh; br bu; imp","UCUM","Vol","Obsolete","Historical unit of dry volume that is rarely used today","[pk_br]","[PK_BR]","4",4,false],[false,"quart - British","[qt_br]","[QT_BR]","volume",0.0011365225000000002,[3,0,0,0,0,0,0],null,"brit-volumes",false,null,null,1,false,false,0,"British quarts; imperial quarts; br qts","UCUM","Vol","Clinical","Used only in Great Britain and other Commonwealth countries","[gal_br]/4","[GAL_BR]/4","1",1,false],[false,"pint - British","[pt_br]","[PT_BR]","volume",0.0005682612500000001,[3,0,0,0,0,0,0],null,"brit-volumes",false,null,null,1,false,false,0,"British pints; imperial pints; pt br; br pt; imp pt; pt imp","UCUM","Vol","Clinical","Used only in Great Britain and other Commonwealth countries","[qt_br]/2","[QT_BR]/2","1",1,false],[false,"gill - British","[gil_br]","[GIL_BR]","volume",0.00014206531250000003,[3,0,0,0,0,0,0],null,"brit-volumes",false,null,null,1,false,false,0,"imperial gills; British gills; imp gill, br gill","UCUM","Vol","Nonclinical","only used in the context of alcohol volume in Great Britain","[pt_br]/4","[PT_BR]/4","1",1,false],[false,"fluid ounce - British","[foz_br]","[FOZ_BR]","volume",0.000028413062500000005,[3,0,0,0,0,0,0],null,"brit-volumes",false,null,null,1,false,false,0,"British fluid ounces; Imperial fluid ounces; br fozs; imp fozs; br fl ozs","UCUM","Vol","Clinical","Used only in Great Britain and other Commonwealth countries","[gil_br]/5","[GIL_BR]/5","1",1,false],[false,"fluid dram - British","[fdr_br]","[FDR_BR]","volume",0.0000035516328125000006,[3,0,0,0,0,0,0],null,"brit-volumes",false,null,null,1,false,false,0,"British fluid drams; fdr br","UCUM","Vol","Nonclinical","equal to 1/8 Imperial fluid ounce = 3.55 mL; used informally to mean small amount of liquor, especially Scotch whiskey","[foz_br]/8","[FOZ_BR]/8","1",1,false],[false,"minim - British","[min_br]","[MIN_BR]","volume",5.919388020833334e-8,[3,0,0,0,0,0,0],null,"brit-volumes",false,null,null,1,false,false,0,"min br; br min; \u264f br","UCUM","Vol","Obsolete","","[fdr_br]/60","[FDR_BR]/60","1",1,false],[false,"grain","[gr]","[GR]","mass",0.06479891,[0,0,1,0,0,0,0],null,"avoirdupois",false,null,null,1,false,false,0,"gr; grains","UCUM","Mass","Nonclinical","an apothecary measure of mass rarely used today","mg","MG","64.79891",64.79891,false],[false,"pound","[lb_av]","[LB_AV]","mass",453.59237,[0,0,1,0,0,0,0],"lb","avoirdupois",false,null,null,1,false,false,0,"avoirdupois pounds, international pounds; av lbs; pounds","UCUM","Mass","Clinical","standard unit used in the US and internationally","[gr]","[GR]","7000",7000,false],[false,"pound force - US","[lbf_av]","[LBF_AV]","force",4448.2216152605,[1,-2,1,0,0,0,0],"lbf","const",false,null,null,1,false,false,0,"lbfs; US lbf; US pound forces","UCUM","Force","Clinical","only rarely needed in health care - see [lb_av] which is the more common unit to express weight","[lb_av].[g]","[LB_AV].[G]","1",1,false],[false,"ounce","[oz_av]","[OZ_AV]","mass",28.349523125,[0,0,1,0,0,0,0],"oz","avoirdupois",false,null,null,1,false,false,0,"ounces; international ounces; avoirdupois ounces; av ozs","UCUM","Mass","Clinical","standard unit used in the US and internationally","[lb_av]/16","[LB_AV]/16","1",1,false],[false,"Dram mass unit","[dr_av]","[DR_AV]","mass",1.7718451953125,[0,0,1,0,0,0,0],null,"avoirdupois",false,null,null,1,false,false,0,"Dram; drams avoirdupois; avoidupois dram; international dram","UCUM","Mass","Clinical","unit from the avoirdupois system, which is used in the US and internationally","[oz_av]/16","[OZ_AV]/16","1",1,false],[false,"short hundredweight","[scwt_av]","[SCWT_AV]","mass",45359.237,[0,0,1,0,0,0,0],null,"avoirdupois",false,null,null,1,false,false,0,"hundredweights; s cwt; scwt; avoirdupois","UCUM","Mass","Nonclinical","Used only in the US to equal 100 pounds","[lb_av]","[LB_AV]","100",100,false],[false,"long hundredweight","[lcwt_av]","[LCWT_AV]","mass",50802.345440000005,[0,0,1,0,0,0,0],null,"avoirdupois",false,null,null,1,false,false,0,"imperial hundredweights; imp cwt; lcwt; avoirdupois","UCUM","Mass","Obsolete","","[lb_av]","[LB_AV]","112",112,false],[false,"short ton - US","[ston_av]","[STON_AV]","mass",907184.74,[0,0,1,0,0,0,0],null,"avoirdupois",false,null,null,1,false,false,0,"ton; US tons; avoirdupois tons","UCUM","Mass","Clinical","Used only in the US","[scwt_av]","[SCWT_AV]","20",20,false],[false,"long ton - British","[lton_av]","[LTON_AV]","mass",1016046.9088000001,[0,0,1,0,0,0,0],null,"avoirdupois",false,null,null,1,false,false,0,"imperial tons; weight tons; British long tons; long ton avoirdupois","UCUM","Mass","Nonclinical","Used only in Great Britain and other Commonwealth countries","[lcwt_av]","[LCWT_AV]","20",20,false],[false,"stone - British","[stone_av]","[STONE_AV]","mass",6350.293180000001,[0,0,1,0,0,0,0],null,"avoirdupois",false,null,null,1,false,false,0,"British stones; avoirdupois","UCUM","Mass","Nonclinical","Used primarily in the UK and Ireland to measure body weight","[lb_av]","[LB_AV]","14",14,false],[false,"pennyweight - troy","[pwt_tr]","[PWT_TR]","mass",1.5551738400000001,[0,0,1,0,0,0,0],null,"troy",false,null,null,1,false,false,0,"dwt; denarius weights","UCUM","Mass","Obsolete","historical unit used to measure mass and cost of precious metals","[gr]","[GR]","24",24,false],[false,"ounce - troy","[oz_tr]","[OZ_TR]","mass",31.103476800000003,[0,0,1,0,0,0,0],null,"troy",false,null,null,1,false,false,0,"troy ounces; tr ozs","UCUM","Mass","Nonclinical","unit of mass for precious metals and gemstones only","[pwt_tr]","[PWT_TR]","20",20,false],[false,"pound - troy","[lb_tr]","[LB_TR]","mass",373.2417216,[0,0,1,0,0,0,0],null,"troy",false,null,null,1,false,false,0,"troy pounds; tr lbs","UCUM","Mass","Nonclinical","only used for weighing precious metals","[oz_tr]","[OZ_TR]","12",12,false],[false,"scruple","[sc_ap]","[SC_AP]","mass",1.2959782,[0,0,1,0,0,0,0],null,"apoth",false,null,null,1,false,false,0,"scruples; sc ap","UCUM","Mass","Obsolete","","[gr]","[GR]","20",20,false],[false,"dram - apothecary","[dr_ap]","[DR_AP]","mass",3.8879346,[0,0,1,0,0,0,0],null,"apoth",false,null,null,1,false,false,0,"\u0292; drachm; apothecaries drams; dr ap; dram ap","UCUM","Mass","Nonclinical","unit still used in the US occasionally to measure amount of drugs in pharmacies","[sc_ap]","[SC_AP]","3",3,false],[false,"ounce - apothecary","[oz_ap]","[OZ_AP]","mass",31.1034768,[0,0,1,0,0,0,0],null,"apoth",false,null,null,1,false,false,0,"apothecary ounces; oz ap; ap ozs; ozs ap","UCUM","Mass","Obsolete","","[dr_ap]","[DR_AP]","8",8,false],[false,"pound - apothecary","[lb_ap]","[LB_AP]","mass",373.2417216,[0,0,1,0,0,0,0],null,"apoth",false,null,null,1,false,false,0,"apothecary pounds; apothecaries pounds; ap lb; lb ap; ap lbs; lbs ap","UCUM","Mass","Obsolete","","[oz_ap]","[OZ_AP]","12",12,false],[false,"ounce - metric","[oz_m]","[OZ_M]","mass",28,[0,0,1,0,0,0,0],null,"apoth",false,null,null,1,false,false,0,"metric ounces; m ozs","UCUM","Mass","Clinical","see [oz_av] (the avoirdupois ounce) for the standard ounce used internationally; [oz_m] is equal to 28 grams and is based on the apothecaries\' system of mass units which is used in some US pharmacies. ","g","g","28",28,false],[false,"line","[lne]","[LNE]","length",0.002116666666666667,[1,0,0,0,0,0,0],null,"typeset",false,null,null,1,false,false,0,"British lines; br L; L; l","UCUM","Len","Obsolete","","[in_i]/12","[IN_I]/12","1",1,false],[false,"point (typography)","[pnt]","[PNT]","length",0.0003527777777777778,[1,0,0,0,0,0,0],null,"typeset",false,null,null,1,false,false,0,"DTP points; desktop publishing point; pt; pnt","UCUM","Len","Nonclinical","typography unit for typesetter\'s length","[lne]/6","[LNE]/6","1",1,false],[false,"pica (typography)","[pca]","[PCA]","length",0.004233333333333334,[1,0,0,0,0,0,0],null,"typeset",false,null,null,1,false,false,0,"picas","UCUM","Len","Nonclinical","typography unit for typesetter\'s length","[pnt]","[PNT]","12",12,false],[false,"Printer\'s point (typography)","[pnt_pr]","[PNT_PR]","length",0.00035145980000000004,[1,0,0,0,0,0,0],null,"typeset",false,null,null,1,false,false,0,"pnt pr","UCUM","Len","Nonclinical","typography unit for typesetter\'s length","[in_i]","[IN_I]","0.013837",0.013837,false],[false,"Printer\'s pica (typography)","[pca_pr]","[PCA_PR]","length",0.004217517600000001,[1,0,0,0,0,0,0],null,"typeset",false,null,null,1,false,false,0,"pca pr; Printer\'s picas","UCUM","Len","Nonclinical","typography unit for typesetter\'s length","[pnt_pr]","[PNT_PR]","12",12,false],[false,"pied","[pied]","[PIED]","length",0.3248,[1,0,0,0,0,0,0],null,"typeset",false,null,null,1,false,false,0,"pieds du roi; Paris foot; royal; French; feet","UCUM","Len","Obsolete","","cm","CM","32.48",32.48,false],[false,"pouce","[pouce]","[POUCE]","length",0.027066666666666666,[1,0,0,0,0,0,0],null,"typeset",false,null,null,1,false,false,0,"historical French inches; French royal inches","UCUM","Len","Obsolete","","[pied]/12","[PIED]/12","1",1,false],[false,"ligne","[ligne]","[LIGNE]","length",0.0022555555555555554,[1,0,0,0,0,0,0],null,"typeset",false,null,null,1,false,false,0,"Paris lines; lignes","UCUM","Len","Obsolete","","[pouce]/12","[POUCE]/12","1",1,false],[false,"didot","[didot]","[DIDOT]","length",0.0003759259259259259,[1,0,0,0,0,0,0],null,"typeset",false,null,null,1,false,false,0,"Didot point; dd; Didots Point; didots; points","UCUM","Len","Obsolete","typography unit for typesetter\'s length","[ligne]/6","[LIGNE]/6","1",1,false],[false,"cicero","[cicero]","[CICERO]","length",0.004511111111111111,[1,0,0,0,0,0,0],null,"typeset",false,null,null,1,false,false,0,"Didot\'s pica; ciceros; picas","UCUM","Len","Obsolete","typography unit for typesetter\'s length","[didot]","[DIDOT]","12",12,false],[false,"degrees Fahrenheit","[degF]","[DEGF]","temperature",0.5555555555555556,[0,0,0,0,1,0,0],"\xb0F","heat",false,null,"degF",1,true,false,0,"\xb0F; deg F","UCUM","Temp","Clinical","","K",null,null,0.5555555555555556,false],[false,"degrees Rankine","[degR]","[degR]","temperature",0.5555555555555556,[0,0,0,0,1,0,0],"\xb0R","heat",false,null,null,1,false,false,0,"\xb0R; \xb0Ra; Rankine","UCUM","Temp","Obsolete","Replaced by Kelvin","K/9","K/9","5",5,false],[false,"degrees R\xe9aumur","[degRe]","[degRe]","temperature",1.25,[0,0,0,0,1,0,0],"\xb0R\xe9","heat",false,null,"degRe",1,true,false,0,"\xb0R\xe9, \xb0Re, \xb0r; R\xe9aumur; degree Reaumur; Reaumur","UCUM","Temp","Obsolete","replaced by Celsius","K",null,null,1.25,false],[false,"calorie at 15\xb0C","cal_[15]","CAL_[15]","energy",4185.8,[2,-2,1,0,0,0,0],"cal15\xb0C","heat",true,null,null,1,false,false,0,"calorie 15 C; cals 15 C; calories at 15 C","UCUM","Enrg","Nonclinical","equal to 4.1855 joules; calorie most often used in engineering","J","J","4.18580",4.1858,false],[false,"calorie at 20\xb0C","cal_[20]","CAL_[20]","energy",4181.9,[2,-2,1,0,0,0,0],"cal20\xb0C","heat",true,null,null,1,false,false,0,"calorie 20 C; cal 20 C; calories at 20 C","UCUM","Enrg","Clinical","equal to 4.18190 joules. ","J","J","4.18190",4.1819,false],[false,"mean calorie","cal_m","CAL_M","energy",4190.0199999999995,[2,-2,1,0,0,0,0],"calm","heat",true,null,null,1,false,false,0,"mean cals; mean calories","UCUM","Enrg","Clinical","equal to 4.19002 joules. ","J","J","4.19002",4.19002,false],[false,"international table calorie","cal_IT","CAL_IT","energy",4186.8,[2,-2,1,0,0,0,0],"calIT","heat",true,null,null,1,false,false,0,"calories IT; IT cals; international steam table calories","UCUM","Enrg","Nonclinical","used in engineering steam tables and defined as 1/860 international watt-hour; equal to 4.1868 joules","J","J","4.1868",4.1868,false],[false,"thermochemical calorie","cal_th","CAL_TH","energy",4184,[2,-2,1,0,0,0,0],"calth","heat",true,null,null,1,false,false,0,"thermochemical calories; th cals","UCUM","Enrg","Clinical","equal to 4.184 joules; used as the unit in medicine and biochemistry (equal to cal)","J","J","4.184",4.184,false],[false,"calorie","cal","CAL","energy",4184,[2,-2,1,0,0,0,0],"cal","heat",true,null,null,1,false,false,0,"gram calories; small calories","UCUM","Enrg","Clinical","equal to 4.184 joules (the same value as the thermochemical calorie, which is the most common calorie used in medicine and biochemistry)","cal_th","CAL_TH","1",1,false],[false,"nutrition label Calories","[Cal]","[CAL]","energy",4184000,[2,-2,1,0,0,0,0],"Cal","heat",false,null,null,1,false,false,0,"food calories; Cal; kcal","UCUM","Eng","Clinical","","kcal_th","KCAL_TH","1",1,false],[false,"British thermal unit at 39\xb0F","[Btu_39]","[BTU_39]","energy",1059670,[2,-2,1,0,0,0,0],"Btu39\xb0F","heat",false,null,null,1,false,false,0,"BTU 39F; BTU 39 F; B.T.U. 39 F; B.Th.U. 39 F; BThU 39 F; British thermal units","UCUM","Eng","Nonclinical","equal to 1.05967 kJ; used as a measure of power in the electric power, steam generation, heating, and air conditioning industries","kJ","kJ","1.05967",1.05967,false],[false,"British thermal unit at 59\xb0F","[Btu_59]","[BTU_59]","energy",1054800,[2,-2,1,0,0,0,0],"Btu59\xb0F","heat",false,null,null,1,false,false,0,"BTU 59 F; BTU 59F; B.T.U. 59 F; B.Th.U. 59 F; BThU 59F; British thermal units","UCUM","Eng","Nonclinical","equal to 1.05480 kJ; used as a measure of power in the electric power, steam generation, heating, and air conditioning industries","kJ","kJ","1.05480",1.0548,false],[false,"British thermal unit at 60\xb0F","[Btu_60]","[BTU_60]","energy",1054680,[2,-2,1,0,0,0,0],"Btu60\xb0F","heat",false,null,null,1,false,false,0,"BTU 60 F; BTU 60F; B.T.U. 60 F; B.Th.U. 60 F; BThU 60 F; British thermal units 60 F","UCUM","Eng","Nonclinical","equal to 1.05468 kJ; used as a measure of power in the electric power, steam generation, heating, and air conditioning industries","kJ","kJ","1.05468",1.05468,false],[false,"mean British thermal unit","[Btu_m]","[BTU_M]","energy",1055870,[2,-2,1,0,0,0,0],"Btum","heat",false,null,null,1,false,false,0,"BTU mean; B.T.U. mean; B.Th.U. mean; BThU mean; British thermal units mean; ","UCUM","Eng","Nonclinical","equal to 1.05587 kJ; used as a measure of power in the electric power, steam generation, heating, and air conditioning industries","kJ","kJ","1.05587",1.05587,false],[false,"international table British thermal unit","[Btu_IT]","[BTU_IT]","energy",1055055.85262,[2,-2,1,0,0,0,0],"BtuIT","heat",false,null,null,1,false,false,0,"BTU IT; B.T.U. IT; B.Th.U. IT; BThU IT; British thermal units IT","UCUM","Eng","Nonclinical","equal to 1.055 kJ; used as a measure of power in the electric power, steam generation, heating, and air conditioning industries","kJ","kJ","1.05505585262",1.05505585262,false],[false,"thermochemical British thermal unit","[Btu_th]","[BTU_TH]","energy",1054350,[2,-2,1,0,0,0,0],"Btuth","heat",false,null,null,1,false,false,0,"BTU Th; B.T.U. Th; B.Th.U. Th; BThU Th; thermochemical British thermal units","UCUM","Eng","Nonclinical","equal to 1.054350 kJ; used as a measure of power in the electric power, steam generation, heating, and air conditioning industries","kJ","kJ","1.054350",1.05435,false],[false,"British thermal unit","[Btu]","[BTU]","energy",1054350,[2,-2,1,0,0,0,0],"btu","heat",false,null,null,1,false,false,0,"BTU; B.T.U. ; B.Th.U.; BThU; British thermal units","UCUM","Eng","Nonclinical","equal to the thermochemical British thermal unit equal to 1.054350 kJ; used as a measure of power in the electric power, steam generation, heating, and air conditioning industries","[Btu_th]","[BTU_TH]","1",1,false],[false,"horsepower - mechanical","[HP]","[HP]","power",745699.8715822703,[2,-3,1,0,0,0,0],null,"heat",false,null,null,1,false,false,0,"imperial horsepowers","UCUM","EngRat","Nonclinical","refers to mechanical horsepower, which is unit used to measure engine power primarily in the US. ","[ft_i].[lbf_av]/s","[FT_I].[LBF_AV]/S","550",550,false],[false,"tex","tex","TEX","linear mass density (of textile thread)",0.001,[-1,0,1,0,0,0,0],"tex","heat",true,null,null,1,false,false,0,"linear mass density; texes","UCUM","","Clinical","unit of linear mass density for fibers equal to gram per 1000 meters","g/km","G/KM","1",1,false],[false,"Denier (linear mass density)","[den]","[DEN]","linear mass density (of textile thread)",0.0001111111111111111,[-1,0,1,0,0,0,0],"den","heat",false,null,null,1,false,false,0,"den; deniers","UCUM","","Nonclinical","equal to the mass in grams per 9000 meters of the fiber (1 denier = 1 strand of silk)","g/9/km","G/9/KM","1",1,false],[false,"meter of water column","m[H2O]","M[H2O]","pressure",9806650,[-1,-2,1,0,0,0,0],"m\xa0HO2","clinical",true,null,null,1,false,false,0,"mH2O; m H2O; meters of water column; metres; pressure","UCUM","Pres","Clinical","","kPa","KPAL","980665e-5",9.80665,false],[false,"meter of mercury column","m[Hg]","M[HG]","pressure",133322000,[-1,-2,1,0,0,0,0],"m\xa0Hg","clinical",true,null,null,1,false,false,0,"mHg; m Hg; meters of mercury column; metres; pressure","UCUM","Pres","Clinical","","kPa","KPAL","133.3220",133.322,false],[false,"inch of water column","[in_i\'H2O]","[IN_I\'H2O]","pressure",249088.91000000003,[-1,-2,1,0,0,0,0],"in\xa0HO2","clinical",false,null,null,1,false,false,0,"inches WC; inAq; in H2O; inch of water gauge; iwg; pressure","UCUM","Pres","Clinical","unit of pressure, especially in respiratory and ventilation care","m[H2O].[in_i]/m","M[H2O].[IN_I]/M","1",1,false],[false,"inch of mercury column","[in_i\'Hg]","[IN_I\'HG]","pressure",3386378.8000000003,[-1,-2,1,0,0,0,0],"in\xa0Hg","clinical",false,null,null,1,false,false,0,"inHg; in Hg; pressure; inches","UCUM","Pres","Clinical","unit of pressure used in US to measure barometric pressure and occasionally blood pressure (see mm[Hg] for unit used internationally)","m[Hg].[in_i]/m","M[HG].[IN_I]/M","1",1,false],[false,"peripheral vascular resistance unit","[PRU]","[PRU]","fluid resistance",133322000000,[-4,-1,1,0,0,0,0],"P.R.U.","clinical",false,null,null,1,false,false,0,"peripheral vascular resistance units; peripheral resistance unit; peripheral resistance units; PRU","UCUM","FldResist","Clinical","used to assess blood flow in the capillaries; equal to 1 mmH.min/mL = 133.3 Pa\xb7min/mL","mm[Hg].s/ml","MM[HG].S/ML","1",1,false],[false,"Wood unit","[wood\'U]","[WOOD\'U]","fluid resistance",7999320000,[-4,-1,1,0,0,0,0],"Wood U.","clinical",false,null,null,1,false,false,0,"hybrid reference units; HRU; mmHg.min/L; vascular resistance","UCUM","Pres","Clinical","simplified unit of measurement for for measuring pulmonary vascular resistance that uses pressure; equal to mmHg.min/L","mm[Hg].min/L","MM[HG].MIN/L","1",1,false],[false,"diopter (lens)","[diop]","[DIOP]","refraction of a lens",1,[1,0,0,0,0,0,0],"dpt","clinical",false,null,"inv",1,false,false,0,"diopters; diop; dioptre; dpt; refractive power","UCUM","InvLen","Clinical","unit of optical power of lens represented by inverse meters (m^-1)","m","/M","1",1,false],[false,"prism diopter (magnifying power)","[p\'diop]","[P\'DIOP]","refraction of a prism",1,[0,0,0,1,0,0,0],"PD","clinical",false,null,"tanTimes100",1,true,false,0,"diopters; dioptres; p diops; pdiop; dpt; pdptr; \u0394; cm/m; centimeter per meter; centimetre; metre","UCUM","Angle","Clinical","unit for prism correction in eyeglass prescriptions","rad",null,null,1,false],[false,"percent of slope","%[slope]","%[SLOPE]","slope",0.017453292519943295,[0,0,0,1,0,0,0],"%","clinical",false,null,"100tan",1,true,false,0,"% slope; %slope; percents slopes","UCUM","VelFr; ElpotRatFr; VelRtoFr; AccelFr","Clinical","","deg",null,null,1,false],[false,"mesh","[mesh_i]","[MESH_I]","lineic number",0.025400000000000002,[1,0,0,0,0,0,0],null,"clinical",false,null,"inv",1,false,false,0,"meshes","UCUM","NLen (lineic number)","Clinical","traditional unit of length defined as the number of strands or particles per inch","[in_i]","/[IN_I]","1",1,false],[false,"French (catheter gauge) ","[Ch]","[CH]","gauge of catheters",0.0003333333333333333,[1,0,0,0,0,0,0],"Ch","clinical",false,null,null,1,false,false,0,"Charri\xe8res, French scales; French gauges; Fr, Fg, Ga, FR, Ch","UCUM","Len; Circ; Diam","Clinical","","mm/3","MM/3","1",1,false],[false,"drop - metric (1/20 mL)","[drp]","[DRP]","volume",5e-8,[3,0,0,0,0,0,0],"drp","clinical",false,null,null,1,false,false,0,"drop dosing units; metric drops; gtt","UCUM","Vol","Clinical","standard unit used in the US and internationally for clinical medicine but note that although [drp] is defined as 1/20 milliliter, in practice, drop sizes will vary due to external factors","ml/20","ML/20","1",1,false],[false,"Hounsfield unit","[hnsf\'U]","[HNSF\'U]","x-ray attenuation",1,[0,0,0,0,0,0,0],"HF","clinical",false,null,null,1,false,false,0,"HU; units","UCUM","","Clinical","used to measure X-ray attenuation, especially in CT scans.","1","1","1",1,false],[false,"Metabolic Equivalent of Task ","[MET]","[MET]","metabolic cost of physical activity",5.833333333333334e-11,[3,-1,-1,0,0,0,0],"MET","clinical",false,null,null,1,false,false,0,"metabolic equivalents","UCUM","RelEngRat","Clinical","unit used to measure rate of energy expenditure per power in treadmill and other functional tests","mL/min/kg","ML/MIN/KG","3.5",3.5,false],[false,"homeopathic potency of decimal series (retired)","[hp\'_X]","[HP\'_X]","homeopathic potency (retired)",1,[0,0,0,0,0,0,0],"X","clinical",false,null,"hpX",1,true,false,0,null,"UCUM",null,null,null,"1",null,null,1,false],[false,"homeopathic potency of centesimal series (retired)","[hp\'_C]","[HP\'_C]","homeopathic potency (retired)",1,[0,0,0,0,0,0,0],"C","clinical",false,null,"hpC",1,true,false,0,null,"UCUM",null,null,null,"1",null,null,1,false],[false,"homeopathic potency of millesimal series (retired)","[hp\'_M]","[HP\'_M]","homeopathic potency (retired)",1,[0,0,0,0,0,0,0],"M","clinical",false,null,"hpM",1,true,false,0,null,"UCUM",null,null,null,"1",null,null,1,false],[false,"homeopathic potency of quintamillesimal series (retired)","[hp\'_Q]","[HP\'_Q]","homeopathic potency (retired)",1,[0,0,0,0,0,0,0],"Q","clinical",false,null,"hpQ",1,true,false,0,null,"UCUM",null,null,null,"1",null,null,1,false],[false,"homeopathic potency of decimal hahnemannian series","[hp_X]","[HP_X]","homeopathic potency (Hahnemann)",1,[0,0,0,0,0,0,0],"X","clinical",false,null,null,1,false,true,0,null,"UCUM",null,null,null,"1","1","1",1,false],[false,"homeopathic potency of centesimal hahnemannian series","[hp_C]","[HP_C]","homeopathic potency (Hahnemann)",1,[0,0,0,0,0,0,0],"C","clinical",false,null,null,1,false,true,0,null,"UCUM",null,null,null,"1","1","1",1,false],[false,"homeopathic potency of millesimal hahnemannian series","[hp_M]","[HP_M]","homeopathic potency (Hahnemann)",1,[0,0,0,0,0,0,0],"M","clinical",false,null,null,1,false,true,0,null,"UCUM",null,null,null,"1","1","1",1,false],[false,"homeopathic potency of quintamillesimal hahnemannian series","[hp_Q]","[HP_Q]","homeopathic potency (Hahnemann)",1,[0,0,0,0,0,0,0],"Q","clinical",false,null,null,1,false,true,0,null,"UCUM",null,null,null,"1","1","1",1,false],[false,"homeopathic potency of decimal korsakovian series","[kp_X]","[KP_X]","homeopathic potency (Korsakov)",1,[0,0,0,0,0,0,0],"X","clinical",false,null,null,1,false,true,0,null,"UCUM",null,null,null,"1","1","1",1,false],[false,"homeopathic potency of centesimal korsakovian series","[kp_C]","[KP_C]","homeopathic potency (Korsakov)",1,[0,0,0,0,0,0,0],"C","clinical",false,null,null,1,false,true,0,null,"UCUM",null,null,null,"1","1","1",1,false],[false,"homeopathic potency of millesimal korsakovian series","[kp_M]","[KP_M]","homeopathic potency (Korsakov)",1,[0,0,0,0,0,0,0],"M","clinical",false,null,null,1,false,true,0,null,"UCUM",null,null,null,"1","1","1",1,false],[false,"homeopathic potency of quintamillesimal korsakovian series","[kp_Q]","[KP_Q]","homeopathic potency (Korsakov)",1,[0,0,0,0,0,0,0],"Q","clinical",false,null,null,1,false,true,0,null,"UCUM",null,null,null,"1","1","1",1,false],[false,"equivalent","eq","EQ","amount of substance",6.0221367e+23,[0,0,0,0,0,0,0],"eq","chemical",true,null,null,1,false,false,1,"equivalents","UCUM","Sub","Clinical","equivalence equals moles per valence","mol","MOL","1",1,false],[false,"osmole","osm","OSM","amount of substance (dissolved particles)",6.0221367e+23,[0,0,0,0,0,0,0],"osm","chemical",true,null,null,1,false,false,1,"osmoles; osmols","UCUM","Osmol","Clinical","the number of moles of solute that contribute to the osmotic pressure of a solution","mol","MOL","1",1,false],[false,"pH","[pH]","[PH]","acidity",6.0221366999999994e+26,[-3,0,0,0,0,0,0],"pH","chemical",false,null,"pH",1,true,false,0,"pH scale","UCUM","LogCnc","Clinical","Log concentration of H+","mol/l",null,null,1,false],[false,"gram percent","g%","G%","mass concentration",10000,[-3,0,1,0,0,0,0],"g%","chemical",true,null,null,1,false,false,0,"gram %; gram%; grams per deciliter; g/dL; gm per dL; gram percents","UCUM","MCnc","Clinical","equivalent to unit gram per deciliter (g/dL), a unit often used in medical tests to represent solution concentrations","g/dl","G/DL","1",1,false],[false,"Svedberg unit","[S]","[S]","sedimentation coefficient",1e-13,[0,1,0,0,0,0,0],"S","chemical",false,null,null,1,false,false,0,"Sv; 10^-13 seconds; 100 fs; 100 femtoseconds","UCUM","Time","Clinical","unit of time used in measuring particle\'s sedimentation rate, usually after centrifugation. ","s","10*-13.S","1",1e-13,false],[false,"high power field (microscope)","[HPF]","[HPF]","view area in microscope",1,[0,0,0,0,0,0,0],"HPF","chemical",false,null,null,1,false,false,0,"HPF","UCUM","Area","Clinical","area visible under the maximum magnification power of the objective in microscopy (usually 400x)\\n","1","1","1",1,false],[false,"low power field (microscope)","[LPF]","[LPF]","view area in microscope",1,[0,0,0,0,0,0,0],"LPF","chemical",false,null,null,1,false,false,0,"LPF; fields","UCUM","Area","Clinical","area visible under the low magnification of the objective in microscopy (usually 100 x)\\n","1","1","100",100,false],[false,"katal","kat","KAT","catalytic activity",6.0221367e+23,[0,-1,0,0,0,0,0],"kat","chemical",true,null,null,1,false,false,1,"mol/secs; moles per second; mol*sec-1; mol*s-1; mol.s-1; katals; catalytic activity; enzymatic; enzyme units; activities","UCUM","CAct","Clinical","kat is a unit of catalytic activity with base units = mol/s. Rarely used because its units are too large to practically express catalytic activity. See enzyme unit [U] which is the standard unit for catalytic activity.","mol/s","MOL/S","1",1,false],[false,"enzyme unit","U","U","catalytic activity",10036894500000000,[0,-1,0,0,0,0,0],"U","chemical",true,null,null,1,false,false,1,"micromoles per minute; umol/min; umol per minute; umol min-1; enzymatic activity; enzyme activity","UCUM","CAct","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min)","umol/min","UMOL/MIN","1",1,false],[false,"international unit - arbitrary","[iU]","[IU]","arbitrary",1,[0,0,0,0,0,0,0],"IU","chemical",true,null,null,1,false,true,0,"international units; IE; F2","UCUM","Arb","Clinical","International units (IU) are analyte and reference specimen specific arbitrary units (held at WHO)","1","1","1",1,false],[false,"international unit - arbitrary","[IU]","[IU]","arbitrary",1,[0,0,0,0,0,0,0],"i.U.","chemical",true,null,null,1,false,true,0,"international units; IE; F2","UCUM","Arb","Clinical","International units (IU) are analyte and reference specimen specific arbitrary units (held at WHO)","[iU]","[IU]","1",1,false],[false,"arbitary unit","[arb\'U]","[ARB\'U]","arbitrary",1,[0,0,0,0,0,0,0],"arb. U","chemical",false,null,null,1,false,true,0,"arbitary units; arb units; arbU","UCUM","Arb","Clinical","relative unit of measurement to show the ratio of test measurement to reference measurement","1","1","1",1,false],[false,"United States Pharmacopeia unit","[USP\'U]","[USP\'U]","arbitrary",1,[0,0,0,0,0,0,0],"U.S.P.","chemical",false,null,null,1,false,true,0,"USP U; USP\'U","UCUM","Arb","Clinical","a dose unit to express potency of drugs and vitamins defined by the United States Pharmacopoeia; usually 1 USP = 1 IU","1","1","1",1,false],[false,"GPL unit","[GPL\'U]","[GPL\'U]","biologic activity of anticardiolipin IgG",1,[0,0,0,0,0,0,0],null,"chemical",false,null,null,1,false,true,0,"GPL Units; GPL U; IgG anticardiolipin units; IgG Phospholipid","UCUM","ACnc; AMass","Clinical","Units for an antiphospholipid test","1","1","1",1,false],[false,"MPL unit","[MPL\'U]","[MPL\'U]","biologic activity of anticardiolipin IgM",1,[0,0,0,0,0,0,0],null,"chemical",false,null,null,1,false,true,0,"MPL units; MPL U; MPL\'U; IgM anticardiolipin units; IgM Phospholipid Units ","UCUM","ACnc","Clinical","units for antiphospholipid test","1","1","1",1,false],[false,"APL unit","[APL\'U]","[APL\'U]","biologic activity of anticardiolipin IgA",1,[0,0,0,0,0,0,0],null,"chemical",false,null,null,1,false,true,0,"APL units; APL U; IgA anticardiolipin; IgA Phospholipid; biologic activity of","UCUM","AMass; ACnc","Clinical","Units for an anti phospholipid syndrome test","1","1","1",1,false],[false,"Bethesda unit","[beth\'U]","[BETH\'U]","biologic activity of factor VIII inhibitor",1,[0,0,0,0,0,0,0],null,"chemical",false,null,null,1,false,true,0,"BU","UCUM","ACnc","Clinical","measures of blood coagulation inhibitior for many blood factors","1","1","1",1,false],[false,"anti factor Xa unit","[anti\'Xa\'U]","[ANTI\'XA\'U]","biologic activity of factor Xa inhibitor (heparin)",1,[0,0,0,0,0,0,0],null,"chemical",false,null,null,1,false,true,0,"units","UCUM","ACnc","Clinical","[anti\'Xa\'U] unit is equivalent to and can be converted to IU/mL. ","1","1","1",1,false],[false,"Todd unit","[todd\'U]","[TODD\'U]","biologic activity antistreptolysin O",1,[0,0,0,0,0,0,0],null,"chemical",false,null,null,1,false,true,0,"units","UCUM","InvThres; RtoThres","Clinical","the unit for the results of the testing for antistreptolysin O (ASO)","1","1","1",1,false],[false,"Dye unit","[dye\'U]","[DYE\'U]","biologic activity of amylase",1,[0,0,0,0,0,0,0],null,"chemical",false,null,null,1,false,true,0,"units","UCUM","CCnc","Obsolete","equivalent to the Somogyi unit, which is an enzyme unit for amylase but better to use U, the standard enzyme unit for measuring catalytic activity","1","1","1",1,false],[false,"Somogyi unit","[smgy\'U]","[SMGY\'U]","biologic activity of amylase",1,[0,0,0,0,0,0,0],null,"chemical",false,null,null,1,false,true,0,"Somogyi units; smgy U","UCUM","CAct","Clinical","measures the enzymatic activity of amylase in blood serum - better to use base units mg/mL ","1","1","1",1,false],[false,"Bodansky unit","[bdsk\'U]","[BDSK\'U]","biologic activity of phosphatase",1,[0,0,0,0,0,0,0],null,"chemical",false,null,null,1,false,true,0,"","UCUM","ACnc","Obsolete","Enzyme unit specific to alkaline phosphatase - better to use standard enzyme unit of U","1","1","1",1,false],[false,"King-Armstrong unit","[ka\'U]","[KA\'U]","biologic activity of phosphatase",1,[0,0,0,0,0,0,0],null,"chemical",false,null,null,1,false,true,0,"King-Armstrong Units; King units","UCUM","AMass","Obsolete","enzyme units for acid phosphatase - better to use enzyme unit [U]","1","1","1",1,false],[false,"Kunkel unit","[knk\'U]","[KNK\'U]","arbitrary biologic activity",1,[0,0,0,0,0,0,0],null,"chemical",false,null,null,1,false,true,0,null,"UCUM",null,null,null,"1","1","1",1,false],[false,"Mac Lagan unit","[mclg\'U]","[MCLG\'U]","arbitrary biologic activity",1,[0,0,0,0,0,0,0],null,"chemical",false,null,null,1,false,true,0,"galactose index; galactose tolerance test; thymol turbidity test unit; mclg U; units; indexes","UCUM","ACnc","Obsolete","unit for liver tests - previously used in thymol turbidity tests for liver disease diagnoses, and now is sometimes referred to in the oral galactose tolerance test","1","1","1",1,false],[false,"tuberculin unit","[tb\'U]","[TB\'U]","biologic activity of tuberculin",1,[0,0,0,0,0,0,0],null,"chemical",false,null,null,1,false,true,0,"TU; units","UCUM","Arb","Clinical","amount of tuberculin antigen -usually in reference to a TB skin test ","1","1","1",1,false],[false,"50% cell culture infectious dose","[CCID_50]","[CCID_50]","biologic activity (infectivity) of an infectious agent preparation",1,[0,0,0,0,0,0,0],"CCID50","chemical",false,null,null,1,false,true,0,"CCID50; 50% cell culture infective doses","UCUM","NumThres","Clinical","","1","1","1",1,false],[false,"50% tissue culture infectious dose","[TCID_50]","[TCID_50]","biologic activity (infectivity) of an infectious agent preparation",1,[0,0,0,0,0,0,0],"TCID50","chemical",false,null,null,1,false,true,0,"TCID50; 50% tissue culture infective dose","UCUM","NumThres","Clinical","","1","1","1",1,false],[false,"50% embryo infectious dose","[EID_50]","[EID_50]","biologic activity (infectivity) of an infectious agent preparation",1,[0,0,0,0,0,0,0],"EID50","chemical",false,null,null,1,false,true,0,"EID50; 50% embryo infective doses; EID50 Egg Infective Dosage","UCUM","thresNum","Clinical","","1","1","1",1,false],[false,"plaque forming units","[PFU]","[PFU]","amount of an infectious agent",1,[0,0,0,0,0,0,0],"PFU","chemical",false,null,null,1,false,true,0,"PFU","UCUM","ACnc","Clinical","tests usually report unit as number of PFU per unit volume","1","1","1",1,false],[false,"focus forming units (cells)","[FFU]","[FFU]","amount of an infectious agent",1,[0,0,0,0,0,0,0],"FFU","chemical",false,null,null,1,false,true,0,"FFU","UCUM","EntNum","Clinical","","1","1","1",1,false],[false,"colony forming units","[CFU]","[CFU]","amount of a proliferating organism",1,[0,0,0,0,0,0,0],"CFU","chemical",false,null,null,1,false,true,0,"CFU","UCUM","Num","Clinical","","1","1","1",1,false],[false,"index of reactivity (allergen)","[IR]","[IR]","amount of an allergen callibrated through in-vivo testing using the Stallergenes\xae method.",1,[0,0,0,0,0,0,0],"IR","chemical",false,null,null,1,false,true,0,"IR; indexes","UCUM","Acnc","Clinical","amount of an allergen callibrated through in-vivo testing using the Stallergenes method. Usually reported in tests as IR/mL","1","1","1",1,false],[false,"bioequivalent allergen unit","[BAU]","[BAU]","amount of an allergen callibrated through in-vivo testing based on the ID50EAL method of (intradermal dilution for 50mm sum of erythema diameters",1,[0,0,0,0,0,0,0],"BAU","chemical",false,null,null,1,false,true,0,"BAU; Bioequivalent Allergy Units; bioequivalent allergen units","UCUM","Arb","Clinical","","1","1","1",1,false],[false,"allergy unit","[AU]","[AU]","procedure defined amount of an allergen using some reference standard",1,[0,0,0,0,0,0,0],"AU","chemical",false,null,null,1,false,true,0,"allergy units; allergen units; AU","UCUM","Arb","Clinical","Most standard test allergy units are reported as [IU] or as %. ","1","1","1",1,false],[false,"allergen unit for Ambrosia artemisiifolia","[Amb\'a\'1\'U]","[AMB\'A\'1\'U]","procedure defined amount of the major allergen of ragweed.",1,[0,0,0,0,0,0,0],"Amb a 1 U","chemical",false,null,null,1,false,true,0,"Amb a 1 unit; Antigen E; AgE U; allergen units","UCUM","Arb","Clinical","Amb a 1 is the major allergen in short ragweed, and can be converted Bioequivalent allergen units (BAU) where 350 Amb a 1 U/mL = 100,000 BAU/mL","1","1","1",1,false],[false,"protein nitrogen unit (allergen testing)","[PNU]","[PNU]","procedure defined amount of a protein substance",1,[0,0,0,0,0,0,0],"PNU","chemical",false,null,null,1,false,true,0,"protein nitrogen units; PNU","UCUM","Mass","Clinical","defined as 0.01 ug of phosphotungstic acid-precipitable protein nitrogen. Being replaced by bioequivalent allergy units (BAU).","1","1","1",1,false],[false,"Limit of flocculation","[Lf]","[LF]","procedure defined amount of an antigen substance",1,[0,0,0,0,0,0,0],"Lf","chemical",false,null,null,1,false,true,0,"Lf doses","UCUM","Arb","Clinical","the antigen content forming 1:1 ratio against 1 unit of antitoxin","1","1","1",1,false],[false,"D-antigen unit (polio)","[D\'ag\'U]","[D\'AG\'U]","procedure defined amount of a poliomyelitis d-antigen substance",1,[0,0,0,0,0,0,0],null,"chemical",false,null,null,1,false,true,0,"DAgU; units","UCUM","Acnc","Clinical","unit of potency of poliovirus vaccine used for poliomyelitis prevention reported as D antigen units/mL. The unit is poliovirus type-specific.","1","1","1",1,false],[false,"fibrinogen equivalent units","[FEU]","[FEU]","amount of fibrinogen broken down into the measured d-dimers",1,[0,0,0,0,0,0,0],null,"chemical",false,null,null,1,false,true,0,"FEU","UCUM","MCnc","Clinical","Note both the FEU and DDU units are used to report D-dimer measurements. 1 DDU = 1/2 FFU","1","1","1",1,false],[false,"ELISA unit","[ELU]","[ELU]","arbitrary ELISA unit",1,[0,0,0,0,0,0,0],null,"chemical",false,null,null,1,false,true,0,"Enzyme-Linked Immunosorbent Assay Units; ELU; EL. U","UCUM","ACnc","Clinical","","1","1","1",1,false],[false,"Ehrlich units (urobilinogen)","[EU]","[EU]","Ehrlich unit",1,[0,0,0,0,0,0,0],null,"chemical",false,null,null,1,false,true,0,"EU/dL; mg{urobilinogen}/dL","UCUM","ACnc","Clinical","","1","1","1",1,false],[false,"neper","Np","NEP","level",1,[0,0,0,0,0,0,0],"Np","levels",true,null,"ln",1,true,false,0,"nepers","UCUM","LogRto","Clinical","logarithmic unit for ratios of measurements of physical field and power quantities, such as gain and loss of electronic signals","1",null,null,1,false],[false,"bel","B","B","level",1,[0,0,0,0,0,0,0],"B","levels",true,null,"lg",1,true,false,0,"bels","UCUM","LogRto","Clinical","Logarithm of the ratio of power- or field-type quantities; usually expressed in decibels ","1",null,null,1,false],[false,"bel sound pressure","B[SPL]","B[SPL]","pressure level",0.02,[-1,-2,1,0,0,0,0],"B(SPL)","levels",true,null,"lgTimes2",1,true,false,0,"bel SPL; B SPL; sound pressure bels","UCUM","LogRto","Clinical","used to measure sound level in acoustics","Pa",null,null,0.00002,false],[false,"bel volt","B[V]","B[V]","electric potential level",1000,[2,-2,1,0,0,-1,0],"B(V)","levels",true,null,"lgTimes2",1,true,false,0,"bel V; B V; volts bels","UCUM","LogRtoElp","Clinical","used to express power gain in electrical circuits","V",null,null,1,false],[false,"bel millivolt","B[mV]","B[MV]","electric potential level",1,[2,-2,1,0,0,-1,0],"B(mV)","levels",true,null,"lgTimes2",1,true,false,0,"bel mV; B mV; millivolt bels; 10^-3V bels; 10*-3V ","UCUM","LogRtoElp","Clinical","used to express power gain in electrical circuits","mV",null,null,1,false],[false,"bel microvolt","B[uV]","B[UV]","electric potential level",0.001,[2,-2,1,0,0,-1,0],"B(\u03bcV)","levels",true,null,"lgTimes2",1,true,false,0,"bel uV; B uV; microvolts bels; 10^-6V bel; 10*-6V bel","UCUM","LogRto","Clinical","used to express power gain in electrical circuits","uV",null,null,1,false],[false,"bel 10 nanovolt","B[10.nV]","B[10.NV]","electric potential level",0.000010000000000000003,[2,-2,1,0,0,-1,0],"B(10 nV)","levels",true,null,"lgTimes2",1,true,false,0,"bel 10 nV; B 10 nV; 10 nanovolts bels","UCUM","LogRtoElp","Clinical","used to express power gain in electrical circuits","nV",null,null,10,false],[false,"bel watt","B[W]","B[W]","power level",1000,[2,-3,1,0,0,0,0],"B(W)","levels",true,null,"lg",1,true,false,0,"bel W; b W; b Watt; Watts bels","UCUM","LogRto","Clinical","used to express power","W",null,null,1,false],[false,"bel kilowatt","B[kW]","B[KW]","power level",1000000,[2,-3,1,0,0,0,0],"B(kW)","levels",true,null,"lg",1,true,false,0,"bel kW; B kW; kilowatt bel; kW bel; kW B","UCUM","LogRto","Clinical","used to express power","kW",null,null,1,false],[false,"stere","st","STR","volume",1,[3,0,0,0,0,0,0],"st","misc",true,null,null,1,false,false,0,"st\xe8re; m3; cubic meter; m^3; meters cubed; metre","UCUM","Vol","Nonclinical","equal to one cubic meter, usually used for measuring firewoord","m3","M3","1",1,false],[false,"\xc5ngstr\xf6m","Ao","AO","length",1.0000000000000002e-10,[1,0,0,0,0,0,0],"\xc5","misc",false,null,null,1,false,false,0,"\xc5; Angstroms; Ao; \xc5ngstr\xf6ms","UCUM","Len","Clinical","equal to 10^-10 meters; used to express wave lengths and atom scaled differences ","nm","NM","0.1",0.1,false],[false,"barn","b","BRN","action area",9.999999999999999e-29,[2,0,0,0,0,0,0],"b","misc",false,null,null,1,false,false,0,"barns","UCUM","Area","Clinical","used in high-energy physics to express cross-sectional areas","fm2","FM2","100",100,false],[false,"technical atmosphere","att","ATT","pressure",98066499.99999999,[-1,-2,1,0,0,0,0],"at","misc",false,null,null,1,false,false,0,"at; tech atm; tech atmosphere; kgf/cm2; atms; atmospheres","UCUM","Pres","Obsolete","non-SI unit of pressure equal to one kilogram-force per square centimeter","kgf/cm2","KGF/CM2","1",1,false],[false,"mho","mho","MHO","electric conductance",0.001,[-2,1,-1,0,0,2,0],"mho","misc",true,null,null,1,false,false,0,"siemens; ohm reciprocals; \u03a9^\u22121; \u03a9-1 ","UCUM","","Obsolete","unit of electric conductance (the inverse of electrical resistance) equal to ohm^-1","S","S","1",1,false],[false,"pound per square inch","[psi]","[PSI]","pressure",6894757.293168359,[-1,-2,1,0,0,0,0],"psi","misc",false,null,null,1,false,false,0,"psi; lb/in2; lb per in2","UCUM","Pres","Clinical","","[lbf_av]/[in_i]2","[LBF_AV]/[IN_I]2","1",1,false],[false,"circle - plane angle","circ","CIRC","plane angle",6.283185307179586,[0,0,0,1,0,0,0],"circ","misc",false,null,null,1,false,false,0,"angles; circles","UCUM","Angle","Clinical","","[pi].rad","[PI].RAD","2",2,false],[false,"spere - solid angle","sph","SPH","solid angle",12.566370614359172,[0,0,0,2,0,0,0],"sph","misc",false,null,null,1,false,false,0,"speres","UCUM","Angle","Clinical","equal to the solid angle of an entire sphere = 4\u03c0sr (sr = steradian) ","[pi].sr","[PI].SR","4",4,false],[false,"metric carat","[car_m]","[CAR_M]","mass",0.2,[0,0,1,0,0,0,0],"ctm","misc",false,null,null,1,false,false,0,"carats; ct; car m","UCUM","Mass","Nonclinical","unit of mass for gemstones","g","G","2e-1",0.2,false],[false,"carat of gold alloys","[car_Au]","[CAR_AU]","mass fraction",0.041666666666666664,[0,0,0,0,0,0,0],"ctAu","misc",false,null,null,1,false,false,0,"karats; k; kt; car au; carats","UCUM","MFr","Nonclinical","unit of purity for gold alloys","/24","/24","1",1,false],[false,"Smoot","[smoot]","[SMOOT]","length",1.7018000000000002,[1,0,0,0,0,0,0],null,"misc",false,null,null,1,false,false,0,"","UCUM","Len","Nonclinical","prank unit of length from MIT","[in_i]","[IN_I]","67",67,false],[false,"meter per square seconds per square root of hertz","[m/s2/Hz^(1/2)]","[M/S2/HZ^(1/2)]","amplitude spectral density",1,[2,-3,0,0,0,0,0],null,"misc",false,null,"sqrt",1,true,false,0,"m/s2/(Hz^.5); m/s2/(Hz^(1/2)); m per s2 per Hz^1/2","UCUM","","Constant","measures amplitude spectral density, and is equal to the square root of power spectral density\\n ","m2/s4/Hz",null,null,1,false],[false,"bit - logarithmic","bit_s","BIT_S","amount of information",1,[0,0,0,0,0,0,0],"bits","infotech",false,null,"ld",1,true,false,0,"bit-s; bit s; bit logarithmic","UCUM","LogA","Nonclinical","defined as the log base 2 of the number of distinct signals; cannot practically be used to express more than 1000 bits\\n\\nIn information theory, the definition of the amount of self-information and information entropy is often expressed with the binary logarithm (log base 2)","1",null,null,1,false],[false,"bit","bit","BIT","amount of information",1,[0,0,0,0,0,0,0],"bit","infotech",true,null,null,1,false,false,0,"bits","UCUM","","Nonclinical","dimensionless information unit of 1 used in computing and digital communications","1","1","1",1,false],[false,"byte","By","BY","amount of information",8,[0,0,0,0,0,0,0],"B","infotech",true,null,null,1,false,false,0,"bytes","UCUM","","Nonclinical","equal to 8 bits","bit","bit","8",8,false],[false,"baud","Bd","BD","signal transmission rate",1,[0,1,0,0,0,0,0],"Bd","infotech",true,null,"inv",1,false,false,0,"Bd; bauds","UCUM","Freq","Nonclinical","unit to express rate in symbols per second or pulses per second. ","s","/s","1",1,false],[false,"per twelve hour","/(12.h)","/HR","",0.000023148148148148147,[0,-1,0,0,0,0,0],"/h",null,false,null,null,1,false,false,0,"per 12 hours; 12hrs; 12 hrs; /12hrs","LOINC","Rat","Clinical","",null,null,null,null,false],[false,"per arbitrary unit","/[arb\'U]","/[ARB\'U]","",1,[0,0,0,0,0,0,0],"/arb/ U",null,false,null,null,1,false,true,0,"/arbU","LOINC","InvA ","Clinical","",null,null,null,null,false],[false,"per high power field","/[HPF]","/[HPF]","",1,[0,0,0,0,0,0,0],"/HPF",null,false,null,null,1,false,false,0,"/HPF; per HPF","LOINC","Naric","Clinical","",null,null,null,null,false],[false,"per international unit","/[IU]","/[IU]","",1,[0,0,0,0,0,0,0],"/i/U.",null,false,null,null,1,false,true,0,"international units; /IU; per IU","LOINC","InvA","Clinical","International units (IU) are analyte and reference specimen specific arbitrary units (held at WHO)",null,null,null,null,false],[false,"per low power field","/[LPF]","/[LPF]","",1,[0,0,0,0,0,0,0],"/LPF",null,false,null,null,1,false,false,0,"/LPF; per LPF","LOINC","Naric","Clinical","",null,null,null,null,false],[false,"per 10 billion ","/10*10","/10*10","",1e-10,[0,0,0,0,0,0,0],"/1010<.sup>",null,false,null,null,1,false,false,0,"/10^10; per 10*10","LOINC","NFr","Clinical","used for counting entities, e.g. blood cells; usually these kinds of terms have numerators such as moles or milligrams, and counting that amount per the number in the denominator",null,null,null,null,false],[false,"per trillion ","/10*12","/10*12","",1e-12,[0,0,0,0,0,0,0],"/1012<.sup>",null,false,null,null,1,false,false,0,"/10^12; per 10*12","LOINC","NFr","Clinical","used for counting entities, e.g. blood cells; usually these kinds of terms have numerators such as moles or milligrams, and counting that amount per the number in the denominator",null,null,null,null,false],[false,"per thousand","/10*3","/10*3","",0.001,[0,0,0,0,0,0,0],"/103<.sup>",null,false,null,null,1,false,false,0,"/10^3; per 10*3","LOINC","NFr","Clinical","used for counting entities, e.g. blood cells; usually these kinds of terms have numerators such as moles or milligrams, and counting that amount per the number in the denominator",null,null,null,null,false],[false,"per million","/10*6","/10*6","",0.000001,[0,0,0,0,0,0,0],"/106<.sup>",null,false,null,null,1,false,false,0,"/10^6; per 10*6;","LOINC","NFr","Clinical","used for counting entities, e.g. blood cells; usually these kinds of terms have numerators such as moles or milligrams, and counting that amount per the number in the denominator",null,null,null,null,false],[false,"per billion","/10*9","/10*9","",1e-9,[0,0,0,0,0,0,0],"/109<.sup>",null,false,null,null,1,false,false,0,"/10^9; per 10*9","LOINC","NFr","Clinical","used for counting entities, e.g. blood cells; usually these kinds of terms have numerators such as moles or milligrams, and counting that amount per the number in the denominator",null,null,null,null,false],[false,"per 100","/100","","",0.01,[0,0,0,0,0,0,0],null,null,false,null,null,1,false,false,0,"per hundred; 10^2; 10*2","LOINC","NFr","Clinical","used for counting entities, e.g. blood cells; usually these kinds of terms have numerators such as moles or milligrams, and counting that amount per the number in the denominator",null,null,null,null,false],[false,"per 100 cells","/100{cells}","","",0.01,[0,0,0,0,0,0,0],null,null,false,null,null,1,false,false,0,"/100 cells; /100cells; per hundred","LOINC","EntMass; EntNum; NFr","Clinical","",null,null,null,null,false],[false,"per 100 neutrophils","/100{neutrophils}","","",0.01,[0,0,0,0,0,0,0],null,null,false,null,null,1,false,false,0,"/100 neutrophils; /100neutrophils; per hundred","LOINC","EntMass; EntNum; NFr","Clinical","",null,null,null,null,false],[false,"per 100 spermatozoa","/100{spermatozoa}","","",0.01,[0,0,0,0,0,0,0],null,null,false,null,null,1,false,false,0,"/100 spermatozoa; /100spermatozoa; per hundred","LOINC","NFr","Clinical","",null,null,null,null,false],[false,"per 100 white blood cells","/100{WBCs}","","",0.01,[0,0,0,0,0,0,0],null,null,false,null,null,1,false,false,0,"/100 WBCs; /100WBCs; per hundred","LOINC","Ratio; NFr","Clinical","",null,null,null,null,false],[false,"per year","/a","/ANN","",3.168808781402895e-8,[0,-1,0,0,0,0,0],"/a",null,false,null,null,1,false,false,0,"/Years; /yrs; yearly","LOINC","NRat","Clinical","",null,null,null,null,false],[false,"per centimeter of water","/cm[H2O]","/CM[H2O]","",0.000010197162129779282,[1,2,-1,0,0,0,0],"/cm\xa0HO2<.r>",null,false,null,null,1,false,false,0,"/cmH2O; /cm H2O; centimeters; centimetres","LOINC","InvPress","Clinical","",null,null,null,null,false],[false,"per day","/d","/D","",0.000011574074074074073,[0,-1,0,0,0,0,0],"/d",null,false,null,null,1,false,false,0,"/dy; per day","LOINC","NRat","Clinical","",null,null,null,null,false],[false,"per deciliter","/dL","/DL","",10000,[-3,0,0,0,0,0,0],"/dL",null,false,null,null,1,false,false,0,"per dL; /deciliter; decilitre","LOINC","NCnc","Clinical","",null,null,null,null,false],[false,"per gram","/g","/G","",1,[0,0,-1,0,0,0,0],"/g",null,false,null,null,1,false,false,0,"/gm; /gram; per g","LOINC","NCnt","Clinical","",null,null,null,null,false],[false,"per hour","/h","/HR","",0.0002777777777777778,[0,-1,0,0,0,0,0],"/h",null,false,null,null,1,false,false,0,"/hr; /hour; per hr","LOINC","NRat","Clinical","",null,null,null,null,false],[false,"per kilogram","/kg","/KG","",0.001,[0,0,-1,0,0,0,0],"/kg",null,false,null,null,1,false,false,0,"per kg; per kilogram","LOINC","NCnt","Clinical","",null,null,null,null,false],[false,"per liter","/L","/L","",1000,[-3,0,0,0,0,0,0],"/L",null,false,null,null,1,false,false,0,"/liter; litre","LOINC","NCnc","Clinical","",null,null,null,null,false],[false,"per square meter","/m2","/M2","",1,[-2,0,0,0,0,0,0],"/m2<.sup>",null,false,null,null,1,false,false,0,"/m^2; /m*2; /sq. m; per square meter; meter squared; metre","LOINC","Naric","Clinical","",null,null,null,null,false],[false,"per cubic meter","/m3","/M3","",1,[-3,0,0,0,0,0,0],"/m3<.sup>",null,false,null,null,1,false,false,0,"/m^3; /m*3; /cu. m; per cubic meter; meter cubed; per m3; metre","LOINC","NCncn","Clinical","",null,null,null,null,false],[false,"per milligram","/mg","/MG","",1000,[0,0,-1,0,0,0,0],"/mg",null,false,null,null,1,false,false,0,"/milligram; per mg","LOINC","NCnt","Clinical","",null,null,null,null,false],[false,"per minute","/min","/MIN","",0.016666666666666666,[0,-1,0,0,0,0,0],"/min",null,false,null,null,1,false,false,0,"/minute; per mins; breaths beats per minute","LOINC","NRat","Clinical","",null,null,null,null,false],[false,"per milliliter","/mL","/ML","",1000000,[-3,0,0,0,0,0,0],"/mL",null,false,null,null,1,false,false,0,"/milliliter; per mL; millilitre","LOINC","NCncn","Clinical","",null,null,null,null,false],[false,"per millimeter","/mm","/MM","",1000,[-1,0,0,0,0,0,0],"/mm",null,false,null,null,1,false,false,0,"/millimeter; per mm; millimetre","LOINC","InvLen","Clinical","",null,null,null,null,false],[false,"per month","/mo","/MO","",3.802570537683474e-7,[0,-1,0,0,0,0,0],"/mo",null,false,null,null,1,false,false,0,"/month; per mo; monthly; month","LOINC","NRat","Clinical","",null,null,null,null,false],[false,"per second","/s","/S","",1,[0,-1,0,0,0,0,0],"/s",null,false,null,null,1,false,false,0,"/second; /sec; per sec; frequency; Hertz; Herz; Hz; becquerels; Bq; s-1; s^-1","LOINC","NRat","Clinical","",null,null,null,null,false],[false,"per enzyme unit","/U","/U","",9.963241120049633e-17,[0,1,0,0,0,0,0],"/U",null,false,null,null,1,false,false,-1,"/enzyme units; per U","LOINC","InvC; NCat","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min)",null,null,null,null,false],[false,"per microliter","/uL","/UL","",999999999.9999999,[-3,0,0,0,0,0,0],"/\u03bcL",null,false,null,null,1,false,false,0,"/microliter; microlitre; /mcl; per uL","LOINC","ACnc","Clinical","",null,null,null,null,false],[false,"per week","/wk","/WK","",0.0000016534391534391535,[0,-1,0,0,0,0,0],"/wk",null,false,null,null,1,false,false,0,"/week; per wk; weekly, weeks","LOINC","NRat","Clinical","",null,null,null,null,false],[false,"APL unit per milliliter","[APL\'U]/mL","[APL\'U]/ML","biologic activity of anticardiolipin IgA",1000000,[-3,0,0,0,0,0,0],"/mL","chemical",false,null,null,1,false,true,0,"APL/mL; APL\'U/mL; APL U/mL; APL/milliliter; IgA anticardiolipin units per milliliter; IgA Phospholipid Units; millilitre; biologic activity of","LOINC","ACnc","Clinical","Units for an anti phospholipid syndrome test","1","1","1",1,false],[false,"arbitrary unit per milliliter","[arb\'U]/mL","[ARB\'U]/ML","arbitrary",1000000,[-3,0,0,0,0,0,0],"(arb. U)/mL","chemical",false,null,null,1,false,true,0,"arb\'U/mL; arbU/mL; arb U/mL; arbitrary units per milliliter; millilitre","LOINC","ACnc","Clinical","relative unit of measurement to show the ratio of test measurement to reference measurement","1","1","1",1,false],[false,"colony forming units per liter","[CFU]/L","[CFU]/L","amount of a proliferating organism",1000,[-3,0,0,0,0,0,0],"CFU/L","chemical",false,null,null,1,false,true,0,"CFU per Liter; CFU/L","LOINC","NCnc","Clinical","","1","1","1",1,false],[false,"colony forming units per milliliter","[CFU]/mL","[CFU]/ML","amount of a proliferating organism",1000000,[-3,0,0,0,0,0,0],"CFU/mL","chemical",false,null,null,1,false,true,0,"CFU per mL; CFU/mL","LOINC","NCnc","Clinical","","1","1","1",1,false],[false,"foot per foot - US","[ft_us]/[ft_us]","[FT_US]/[FT_US]","length",1,[0,0,0,0,0,0,0],"(ftus)/(ftus)","us-lengths",false,null,null,1,false,false,0,"ft/ft; ft per ft; feet per feet; visual acuity","","LenRto","Clinical","distance ratio to measure 20:20 vision","m/3937","M/3937","1200",1200,false],[false,"GPL unit per milliliter","[GPL\'U]/mL","[GPL\'U]/ML","biologic activity of anticardiolipin IgG",1000000,[-3,0,0,0,0,0,0],"/mL","chemical",false,null,null,1,false,true,0,"GPL U/mL; GPL\'U/mL; GPL/mL; GPL U per mL; IgG Phospholipid Units per milliliters; IgG anticardiolipin units; millilitres ","LOINC","ACnc; AMass","Clinical","Units for an antiphospholipid test","1","1","1",1,false],[false,"international unit per 2 hour","[IU]/(2.h)","[IU]/HR","arbitrary",0.0001388888888888889,[0,-1,0,0,0,0,0],"(i.U.)/h","chemical",true,null,null,1,false,true,0,"IU/2hrs; IU/2 hours; IU per 2 hrs; international units per 2 hours","LOINC","ARat","Clinical","International units (IU) are analyte and reference specimen specific arbitrary units (held at WHO)","[iU]","[IU]","1",1,false],[false,"international unit per 24 hour","[IU]/(24.h)","[IU]/HR","arbitrary",0.000011574074074074073,[0,-1,0,0,0,0,0],"(i.U.)/h","chemical",true,null,null,1,false,true,0,"IU/24hr; IU/24 hours; IU per 24 hrs; international units per 24 hours","LOINC","ARat","Clinical","International units (IU) are analyte and reference specimen specific arbitrary units (held at WHO)","[iU]","[IU]","1",1,false],[false,"international unit per day","[IU]/d","[IU]/D","arbitrary",0.000011574074074074073,[0,-1,0,0,0,0,0],"(i.U.)/d","chemical",true,null,null,1,false,true,0,"IU/dy; IU/days; IU per dys; international units per day","LOINC","ARat","Clinical","International units (IU) are analyte and reference specimen specific arbitrary units (held at WHO)","[iU]","[IU]","1",1,false],[false,"international unit per deciliter","[IU]/dL","[IU]/DL","arbitrary",10000,[-3,0,0,0,0,0,0],"(i.U.)/dL","chemical",true,null,null,1,false,true,0,"IU/dL; IU per dL; international units per deciliters; decilitres","LOINC","ACnc","Clinical","International units (IU) are analyte and reference specimen specific arbitrary units (held at WHO)","[iU]","[IU]","1",1,false],[false,"international unit per gram","[IU]/g","[IU]/G","arbitrary",1,[0,0,-1,0,0,0,0],"(i.U.)/g","chemical",true,null,null,1,false,true,0,"IU/gm; IU/gram; IU per gm; IU per g; international units per gram","LOINC","ACnt","Clinical","International units (IU) are analyte and reference specimen specific arbitrary units (held at WHO)","[iU]","[IU]","1",1,false],[false,"international unit per hour","[IU]/h","[IU]/HR","arbitrary",0.0002777777777777778,[0,-1,0,0,0,0,0],"(i.U.)/h","chemical",true,null,null,1,false,true,0,"IU/hrs; IU per hours; international units per hour","LOINC","ARat","Clinical","International units (IU) are analyte and reference specimen specific arbitrary units (held at WHO)","[iU]","[IU]","1",1,false],[false,"international unit per kilogram","[IU]/kg","[IU]/KG","arbitrary",0.001,[0,0,-1,0,0,0,0],"(i.U.)/kg","chemical",true,null,null,1,false,true,0,"IU/kg; IU/kilogram; IU per kg; units","LOINC","ACnt","Clinical","International units (IU) are analyte and reference specimen specific arbitrary units (held at WHO)","[iU]","[IU]","1",1,false],[false,"international unit per kilogram per day","[IU]/kg/d","([IU]/KG)/D","arbitrary",1.1574074074074074e-8,[0,-1,-1,0,0,0,0],"((i.U.)/kg)/d","chemical",true,null,null,1,false,true,0,"IU/kg/dy; IU/kg/day; IU/kilogram/day; IU per kg per day; units","LOINC","ACntRat","Clinical","International units (IU) are analyte and reference specimen specific arbitrary units (held at WHO)","[iU]","[IU]","1",1,false],[false,"international unit per liter","[IU]/L","[IU]/L","arbitrary",1000,[-3,0,0,0,0,0,0],"(i.U.)/L","chemical",true,null,null,1,false,true,0,"IU/L; IU/liter; IU per liter; units; litre","LOINC","ACnc","Clinical","International units (IU) are analyte and reference specimen specific arbitrary units (held at WHO)","[iU]","[IU]","1",1,false],[false,"international unit per minute","[IU]/min","[IU]/MIN","arbitrary",0.016666666666666666,[0,-1,0,0,0,0,0],"(i.U.)/min","chemical",true,null,null,1,false,true,0,"IU/min; IU/minute; IU per minute; international units","LOINC","ARat","Clinical","International units (IU) are analyte and reference specimen specific arbitrary units (held at WHO)","[iU]","[IU]","1",1,false],[false,"international unit per milliliter","[IU]/mL","[IU]/ML","arbitrary",1000000,[-3,0,0,0,0,0,0],"(i.U.)/mL","chemical",true,null,null,1,false,true,0,"IU/mL; IU per mL; international units per milliliter; millilitre","LOINC","ACnc","Clinical","International units (IU) are analyte and reference specimen specific arbitrary units (held at WHO)","[iU]","[IU]","1",1,false],[false,"MPL unit per milliliter","[MPL\'U]/mL","[MPL\'U]/ML","biologic activity of anticardiolipin IgM",1000000,[-3,0,0,0,0,0,0],"/mL","chemical",false,null,null,1,false,true,0,"MPL/mL; MPL U/mL; MPL\'U/mL; IgM anticardiolipin units; IgM Phospholipid Units; millilitre ","LOINC","ACnc","Clinical","units for antiphospholipid test\\n","1","1","1",1,false],[false,"number per high power field","{#}/[HPF]","/[HPF]","",1,[0,0,0,0,0,0,0],"/HPF",null,false,null,null,1,false,false,0,"#/HPF; # per HPF; number/HPF; numbers per high power field","LOINC","Naric","Clinical","",null,null,null,null,false],[false,"number per low power field","{#}/[LPF]","/[LPF]","",1,[0,0,0,0,0,0,0],"/LPF",null,false,null,null,1,false,false,0,"#/LPF; # per LPF; number/LPF; numbers per low power field","LOINC","Naric","Clinical","",null,null,null,null,false],[false,"IgA antiphosphatidylserine unit ","{APS\'U}","","",1,[0,0,0,0,0,0,0],null,null,false,null,null,1,false,false,0,"APS Unit; Phosphatidylserine Antibody IgA Units","LOINC","ACnc","Clinical","unit for antiphospholipid test",null,null,null,null,false],[false,"EIA index","{EIA_index}","","",1,[0,0,0,0,0,0,0],null,null,false,null,null,1,false,false,0,"enzyme immunoassay index","LOINC","ACnc","Clinical","",null,null,null,null,false],[false,"kaolin clotting time","{KCT\'U}","","",1,[0,0,0,0,0,0,0],null,null,false,null,null,1,false,false,0,"KCT","LOINC","Time","Clinical","sensitive\xa0test to detect\xa0lupus anticoagulants; measured in seconds",null,null,null,null,false],[false,"IgM antiphosphatidylserine unit","{MPS\'U}","","",1,[0,0,0,0,0,0,0],null,null,false,null,null,1,false,false,0,"Phosphatidylserine Antibody IgM Measurement ","LOINC","ACnc","Clinical","",null,null,null,null,false],[false,"trillion per liter","10*12/L","(10*12)/L","number",1000000000000000,[-3,0,0,0,0,0,0],"(1012)/L","dimless",false,null,null,1,false,false,0,"10^12/L; 10*12 per Liter; trillion per liter; litre","LOINC","NCncn","Clinical","","1","1","10",10,false],[false,"10^3 (used for cell count)","10*3","10*3","number",1000,[0,0,0,0,0,0,0],"103","dimless",false,null,null,1,false,false,0,"10^3; thousand","LOINC","Num","Clinical","usually used for counting entities (e.g. blood cells) per volume","1","1","10",10,false],[false,"thousand per liter","10*3/L","(10*3)/L","number",1000000,[-3,0,0,0,0,0,0],"(103)/L","dimless",false,null,null,1,false,false,0,"10^3/L; 10*3 per liter; litre","LOINC","NCncn","Clinical","","1","1","10",10,false],[false,"thousand per milliliter","10*3/mL","(10*3)/ML","number",1000000000,[-3,0,0,0,0,0,0],"(103)/mL","dimless",false,null,null,1,false,false,0,"10^3/mL; 10*3 per mL; thousand per milliliter; millilitre","LOINC","NCncn","Clinical","","1","1","10",10,false],[false,"thousand per microliter","10*3/uL","(10*3)/UL","number",999999999999.9999,[-3,0,0,0,0,0,0],"(103)/\u03bcL","dimless",false,null,null,1,false,false,0,"10^3/uL; 10*3 per uL; thousand per microliter; microlitre","LOINC","NCncn","Clinical","","1","1","10",10,false],[false,"10 thousand per microliter","10*4/uL","(10*4)/UL","number",10000000000000,[-3,0,0,0,0,0,0],"(104)/\u03bcL","dimless",false,null,null,1,false,false,0,"10^4/uL; 10*4 per uL; microlitre","LOINC","NCncn","Clinical","","1","1","10",10,false],[false,"10^5 ","10*5","10*5","number",100000,[0,0,0,0,0,0,0],"105","dimless",false,null,null,1,false,false,0,"one hundred thousand","LOINC","Num","Clinical","","1","1","10",10,false],[false,"10^6","10*6","10*6","number",1000000,[0,0,0,0,0,0,0],"106","dimless",false,null,null,1,false,false,0,"","LOINC","Num","Clinical","","1","1","10",10,false],[false,"million colony forming unit per liter","10*6.[CFU]/L","((10*6).[CFU])/L","number",1000000000,[-3,0,0,0,0,0,0],"((106).CFU)/L","dimless",false,null,null,1,false,true,0,"10*6 CFU/L; 10^6 CFU/L; 10^6CFU; 10^6 CFU per liter; million colony forming units; litre","LOINC","ACnc","Clinical","","1","1","10",10,false],[false,"million international unit","10*6.[IU]","(10*6).[IU]","number",1000000,[0,0,0,0,0,0,0],"(106).(i.U.)","dimless",false,null,null,1,false,true,0,"10*6 IU; 10^6 IU; international units","LOINC","arb","Clinical","International units (IU) are analyte and reference specimen specific arbitrary units (held at WHO)","1","1","10",10,false],[false,"million per 24 hour","10*6/(24.h)","(10*6)/HR","number",11.574074074074074,[0,-1,0,0,0,0,0],"(106)/h","dimless",false,null,null,1,false,false,0,"10*6/24hrs; 10^6/24 hrs; 10*6 per 24 hrs; 10^6 per 24 hours","LOINC","NRat","Clinical","","1","1","10",10,false],[false,"million per kilogram","10*6/kg","(10*6)/KG","number",1000,[0,0,-1,0,0,0,0],"(106)/kg","dimless",false,null,null,1,false,false,0,"10^6/kg; 10*6 per kg; 10*6 per kilogram; millions","LOINC","NCnt","Clinical","","1","1","10",10,false],[false,"million per liter","10*6/L","(10*6)/L","number",1000000000,[-3,0,0,0,0,0,0],"(106)/L","dimless",false,null,null,1,false,false,0,"10^6/L; 10*6 per Liter; 10^6 per Liter; litre","LOINC","NCncn","Clinical","","1","1","10",10,false],[false,"million per milliliter","10*6/mL","(10*6)/ML","number",1000000000000,[-3,0,0,0,0,0,0],"(106)/mL","dimless",false,null,null,1,false,false,0,"10^6/mL; 10*6 per mL; 10*6 per milliliter; millilitre","LOINC","NCncn","Clinical","","1","1","10",10,false],[false,"million per microliter","10*6/uL","(10*6)/UL","number",1000000000000000,[-3,0,0,0,0,0,0],"(106)/\u03bcL","dimless",false,null,null,1,false,false,0,"10^6/uL; 10^6 per uL; 10^6/mcl; 10^6 per mcl; 10^6 per microliter; microlitre","LOINC","NCncn","Clinical","","1","1","10",10,false],[false,"10^8","10*8","10*8","number",100000000,[0,0,0,0,0,0,0],"108","dimless",false,null,null,1,false,false,0,"100 million; one hundred million; 10^8","LOINC","Num","Clinical","","1","1","10",10,false],[false,"billion per liter","10*9/L","(10*9)/L","number",1000000000000,[-3,0,0,0,0,0,0],"(109)/L","dimless",false,null,null,1,false,false,0,"10^9/L; 10*9 per Liter; litre","LOINC","NCncn","Clinical","","1","1","10",10,false],[false,"billion per milliliter","10*9/mL","(10*9)/ML","number",1000000000000000,[-3,0,0,0,0,0,0],"(109)/mL","dimless",false,null,null,1,false,false,0,"10^9/mL; 10*9 per mL; 10^9 per mL; 10*9 per milliliter; millilitre","LOINC","NCncn","Clinical","","1","1","10",10,false],[false,"billion per microliter","10*9/uL","(10*9)/UL","number",1000000000000000000,[-3,0,0,0,0,0,0],"(109)/\u03bcL","dimless",false,null,null,1,false,false,0,"10^9/uL; 10^9 per uL; 10^9/mcl; 10^9 per mcl; 10*9 per uL; 10*9 per mcl; 10*9/mcl; 10^9 per microliter; microlitre","LOINC","NCncn","Clinical","","1","1","10",10,false],[false,"10 liter per minute per square meter","10.L/(min.m2)","L/(MIN.M2)","",0.00016666666666666666,[1,-1,0,0,0,0,0],"L/(min.(m2))",null,false,null,null,1,false,false,0,"10 liters per minutes per square meter; 10 L per min per m2; m^2; 10 L/(min*m2); 10L/(min*m^2); litres; sq. meter; metre; meters squared","LOINC","ArVRat","Clinical","",null,null,null,null,false],[false,"10 liter per minute","10.L/min","L/MIN","",0.00016666666666666666,[3,-1,0,0,0,0,0],"L/min",null,false,null,null,1,false,false,0,"10 liters per minute; 10 L per min; 10L; 10 L/min; litre","LOINC","VRat","Clinical","",null,null,null,null,false],[false,"10 micronewton second per centimeter to the fifth power per square meter","10.uN.s/(cm5.m2)","(UN.S)/(CM5.M2)","",100000000,[-6,-1,1,0,0,0,0],"(\u03bcN.s)/(cm5).(m2)",null,false,null,null,1,false,false,0,"dyne seconds per centimeter5 and square meter; dyn.s/(cm5.m2); dyn.s/cm5/m2; cm^5; m^2","LOINC","","Clinical","unit to measure systemic vascular resistance per body surface area",null,null,null,null,false],[false,"24 hour","24.h","HR","",86400,[0,1,0,0,0,0,0],"h",null,false,null,null,1,false,false,0,"24hrs; 24 hrs; 24 hours; days; dy","LOINC","Time","Clinical","",null,null,null,null,false],[false,"ampere per meter","A/m","A/M","electric current",1,[-1,-1,0,0,0,1,0],"A/m","si",true,null,null,1,false,false,0,"A/m; amp/meter; magnetic field strength; H; B; amperes per meter; metre","LOINC","","Clinical","unit of magnetic field strength","C/s","C/S","1",1,false],[false,"centigram","cg","CG","mass",0.01,[0,0,1,0,0,0,0],"cg",null,false,"M",null,1,false,false,0,"centigrams; cg; cgm","LOINC","Mass","Clinical","",null,null,null,null,false],[false,"centiliter","cL","CL","volume",0.00001,[3,0,0,0,0,0,0],"cL","iso1000",true,null,null,1,false,false,0,"centiliters; centilitres","LOINC","Vol","Clinical","","l",null,"1",1,false],[false,"centimeter","cm","CM","length",0.01,[1,0,0,0,0,0,0],"cm",null,false,"L",null,1,false,false,0,"centimeters; centimetres","LOINC","Len","Clinical","",null,null,null,null,false],[false,"centimeter of water","cm[H2O]","CM[H2O]","pressure",98066.5,[-1,-2,1,0,0,0,0],"cm\xa0HO2","clinical",true,null,null,1,false,false,0,"cm H2O; cmH2O; centimetres; pressure","LOINC","Pres","Clinical","unit of pressure mostly applies to blood pressure","kPa","KPAL","980665e-5",9.80665,false],[false,"centimeter of water per liter per second","cm[H2O]/L/s","(CM[H2O]/L)/S","pressure",98066500,[-4,-3,1,0,0,0,0],"((cm\xa0HO2)/L)/s","clinical",true,null,null,1,false,false,0,"cm[H2O]/(L/s); cm[H2O].s/L; cm H2O/L/sec; cmH2O/L/sec; cmH2O/Liter; cmH2O per L per secs; centimeters of water per liters per second; centimetres; litres; cm[H2O]/(L/s)","LOINC","PresRat","Clinical","unit used to measure mean pulmonary resistance","kPa","KPAL","980665e-5",9.80665,false],[false,"centimeter of water per second per meter","cm[H2O]/s/m","(CM[H2O]/S)/M","pressure",98066.5,[-2,-3,1,0,0,0,0],"((cm\xa0HO2)/s)/m","clinical",true,null,null,1,false,false,0,"cm[H2O]/(s.m); cm H2O/s/m; cmH2O; cmH2O/sec/m; cmH2O per secs per meters; centimeters of water per seconds per meter; centimetres; metre","LOINC","PresRat","Clinical","unit used to measure pulmonary pressure time product","kPa","KPAL","980665e-5",9.80665,false],[false,"centimeter of mercury","cm[Hg]","CM[HG]","pressure",1333220,[-1,-2,1,0,0,0,0],"cm\xa0Hg","clinical",true,null,null,1,false,false,0,"centimeters of mercury; centimetres; cmHg; cm Hg","LOINC","Pres","Clinical","unit of pressure where 1 cmHg = 10 torr","kPa","KPAL","133.3220",133.322,false],[false,"square centimeter","cm2","CM2","length",0.0001,[2,0,0,0,0,0,0],"cm2",null,false,"L",null,1,false,false,0,"cm^2; sq cm; centimeters squared; square centimeters; centimetre; area","LOINC","Area","Clinical","",null,null,null,null,false],[false,"square centimeter per second","cm2/s","CM2/S","length",0.0001,[2,-1,0,0,0,0,0],"(cm2)/s",null,false,"L",null,1,false,false,0,"cm^2/sec; square centimeters per second; sq cm per sec; cm2; centimeters squared; centimetres","LOINC","AreaRat","Clinical","",null,null,null,null,false],[false,"centipoise","cP","CP","dynamic viscosity",1,[-1,-1,1,0,0,0,0],"cP","cgs",true,null,null,1,false,false,0,"cps; centiposes","LOINC","Visc","Clinical","unit of dynamic viscosity in the CGS system with base units: 10^\u22123 Pa.s = 1 mPa\xb7.s (1 millipascal second)","dyn.s/cm2","DYN.S/CM2","1",1,false],[false,"centistoke","cSt","CST","kinematic viscosity",0.0000010000000000000002,[2,-1,0,0,0,0,0],"cSt","cgs",true,null,null,1,false,false,0,"centistokes","LOINC","Visc","Clinical","unit for kinematic viscosity with base units of mm^2/s (square millimeter per second)","cm2/s","CM2/S","1",1,false],[false,"dekaliter per minute","daL/min","DAL/MIN","volume",0.00016666666666666666,[3,-1,0,0,0,0,0],"daL/min","iso1000",true,null,null,1,false,false,0,"dekalitres; dekaliters per minute; per min","LOINC","VRat","Clinical","","l",null,"1",1,false],[false,"dekaliter per minute per square meter","daL/min/m2","(DAL/MIN)/M2","volume",0.00016666666666666666,[1,-1,0,0,0,0,0],"(daL/min)/(m2)","iso1000",true,null,null,1,false,false,0,"daL/min/m^2; daL/minute/m2; sq. meter; dekaliters per minutes per square meter; meter squared; dekalitres; metre","LOINC","ArVRat","Clinical","The area usually is the body surface area used to normalize cardiovascular measures for patient\'s size","l",null,"1",1,false],[false,"decibel","dB","DB","level",1,[0,0,0,0,0,0,0],"dB","levels",true,null,"lg",0.1,true,false,0,"decibels","LOINC","LogRto","Clinical","unit most commonly used in acoustics as unit of sound pressure level. (also see B[SPL] or bel sound pressure level). ","1",null,null,1,false],[false,"degree per second","deg/s","DEG/S","plane angle",0.017453292519943295,[0,-1,0,1,0,0,0],"\xb0/s","iso1000",false,null,null,1,false,false,0,"deg/sec; deg per sec; \xb0/sec; twist rate; angular speed; rotational speed","LOINC","ARat","Clinical","unit of angular (rotational) speed used to express turning rate","[pi].rad/360","[PI].RAD/360","2",2,false],[false,"decigram","dg","DG","mass",0.1,[0,0,1,0,0,0,0],"dg",null,false,"M",null,1,false,false,0,"decigrams; dgm; 0.1 grams; 1/10 gm","LOINC","Mass","Clinical","equal to 1/10 gram",null,null,null,null,false],[false,"deciliter","dL","DL","volume",0.0001,[3,0,0,0,0,0,0],"dL","iso1000",true,null,null,1,false,false,0,"deciliters; decilitres; 0.1 liters; 1/10 L","LOINC","Vol","Clinical","equal to 1/10 liter","l",null,"1",1,false],[false,"decimeter","dm","DM","length",0.1,[1,0,0,0,0,0,0],"dm",null,false,"L",null,1,false,false,0,"decimeters; decimetres; 0.1 meters; 1/10 m; 10 cm; centimeters","LOINC","Len","Clinical","equal to 1/10 meter or 10 centimeters",null,null,null,null,false],[false,"square decimeter per square second","dm2/s2","DM2/S2","length",0.010000000000000002,[2,-2,0,0,0,0,0],"(dm2)/(s2)",null,false,"L",null,1,false,false,0,"dm2 per s2; dm^2/s^2; decimeters squared per second squared; sq dm; sq sec","LOINC","EngMass (massic energy)","Clinical","units for energy per unit mass or Joules per kilogram (J/kg = kg.m2/s2/kg = m2/s2) ",null,null,null,null,false],[false,"dyne second per centimeter per square meter","dyn.s/(cm.m2)","(DYN.S)/(CM.M2)","force",1,[-2,-1,1,0,0,0,0],"(dyn.s)/(cm.(m2))","cgs",true,null,null,1,false,false,0,"(dyn*s)/(cm*m2); (dyn*s)/(cm*m^2); dyn s per cm per m2; m^2; dyne seconds per centimeters per square meter; centimetres; sq. meter; squared","LOINC","","Clinical","","g.cm/s2","G.CM/S2","1",1,false],[false,"dyne second per centimeter","dyn.s/cm","(DYN.S)/CM","force",1,[0,-1,1,0,0,0,0],"(dyn.s)/cm","cgs",true,null,null,1,false,false,0,"(dyn*s)/cm; dyn sec per cm; seconds; centimetre; dyne seconds","LOINC","","Clinical","","g.cm/s2","G.CM/S2","1",1,false],[false,"equivalent per liter","eq/L","EQ/L","amount of substance",6.0221366999999994e+26,[-3,0,0,0,0,0,0],"eq/L","chemical",true,null,null,1,false,false,1,"eq/liter; eq/litre; eqs; equivalents per liter; litre","LOINC","SCnc","Clinical","equivalence equals moles per valence","mol","MOL","1",1,false],[false,"equivalent per milliliter","eq/mL","EQ/ML","amount of substance",6.0221367e+29,[-3,0,0,0,0,0,0],"eq/mL","chemical",true,null,null,1,false,false,1,"equivalent/milliliter; equivalents per milliliter; eq per mL; millilitre","LOINC","SCnc","Clinical","equivalence equals moles per valence","mol","MOL","1",1,false],[false,"equivalent per millimole","eq/mmol","EQ/MMOL","amount of substance",1000,[0,0,0,0,0,0,0],"eq/mmol","chemical",true,null,null,1,false,false,0,"equivalent/millimole; equivalents per millimole; eq per mmol","LOINC","SRto","Clinical","equivalence equals moles per valence","mol","MOL","1",1,false],[false,"equivalent per micromole","eq/umol","EQ/UMOL","amount of substance",1000000,[0,0,0,0,0,0,0],"eq/\u03bcmol","chemical",true,null,null,1,false,false,0,"equivalent/micromole; equivalents per micromole; eq per umol","LOINC","SRto","Clinical","equivalence equals moles per valence","mol","MOL","1",1,false],[false,"femtogram","fg","FG","mass",1e-15,[0,0,1,0,0,0,0],"fg",null,false,"M",null,1,false,false,0,"fg; fgm; femtograms; weight","LOINC","Mass","Clinical","equal to 10^-15 grams",null,null,null,null,false],[false,"femtoliter","fL","FL","volume",1e-18,[3,0,0,0,0,0,0],"fL","iso1000",true,null,null,1,false,false,0,"femtolitres; femtoliters","LOINC","Vol; EntVol","Clinical","equal to 10^-15 liters","l",null,"1",1,false],[false,"femtometer","fm","FM","length",1e-15,[1,0,0,0,0,0,0],"fm",null,false,"L",null,1,false,false,0,"femtometres; femtometers","LOINC","Len","Clinical","equal to 10^-15 meters",null,null,null,null,false],[false,"femtomole","fmol","FMOL","amount of substance",602213670,[0,0,0,0,0,0,0],"fmol","si",true,null,null,1,false,false,1,"femtomoles","LOINC","EntSub","Clinical","equal to 10^-15 moles","10*23","10*23","6.0221367",6.0221367,false],[false,"femtomole per gram","fmol/g","FMOL/G","amount of substance",602213670,[0,0,-1,0,0,0,0],"fmol/g","si",true,null,null,1,false,false,1,"femtomoles; fmol/gm; fmol per gm","LOINC","SCnt","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"femtomole per liter","fmol/L","FMOL/L","amount of substance",602213670000,[-3,0,0,0,0,0,0],"fmol/L","si",true,null,null,1,false,false,1,"femtomoles; fmol per liter; litre","LOINC","SCnc","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"femtomole per milligram","fmol/mg","FMOL/MG","amount of substance",602213670000,[0,0,-1,0,0,0,0],"fmol/mg","si",true,null,null,1,false,false,1,"fmol per mg; femtomoles","LOINC","SCnt","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"femtomole per milliliter","fmol/mL","FMOL/ML","amount of substance",602213670000000,[-3,0,0,0,0,0,0],"fmol/mL","si",true,null,null,1,false,false,1,"femtomoles; millilitre; fmol per mL; fmol per milliliter","LOINC","SCnc","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"gram meter","g.m","G.M","mass",1,[1,0,1,0,0,0,0],"g.m",null,false,"M",null,1,false,false,0,"g*m; gxm; meters; metres","LOINC","Enrg","Clinical","Unit for measuring stroke work (heart work)",null,null,null,null,false],[false,"gram per 100 gram","g/(100.g)","G/G","mass",0.01,[0,0,0,0,0,0,0],"g/g",null,false,"M",null,1,false,false,0,"g/100 gm; 100gm; grams per 100 grams; gm per 100 gm","LOINC","MCnt","Clinical","",null,null,null,null,false],[false,"gram per 12 hour","g/(12.h)","G/HR","mass",0.000023148148148148147,[0,-1,1,0,0,0,0],"g/h",null,false,"M",null,1,false,false,0,"gm/12hrs; 12 hrs; gm per 12 hrs; 12hrs; grams per 12 hours","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"gram per 24 hour","g/(24.h)","G/HR","mass",0.000011574074074074073,[0,-1,1,0,0,0,0],"g/h",null,false,"M",null,1,false,false,0,"gm/24hrs; gm/24 hrs; gm per 24 hrs; 24hrs; grams per 24 hours; gm/dy; gm per dy; grams per day","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"gram per 3 days","g/(3.d)","G/D","mass",0.000003858024691358025,[0,-1,1,0,0,0,0],"g/d",null,false,"M",null,1,false,false,0,"gm/3dy; gm/3 dy; gm per 3 days; grams","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"gram per 4 hour","g/(4.h)","G/HR","mass",0.00006944444444444444,[0,-1,1,0,0,0,0],"g/h",null,false,"M",null,1,false,false,0,"gm/4hrs; gm/4 hrs; gm per 4 hrs; 4hrs; grams per 4 hours","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"gram per 48 hour","g/(48.h)","G/HR","mass",0.000005787037037037037,[0,-1,1,0,0,0,0],"g/h",null,false,"M",null,1,false,false,0,"gm/48hrs; gm/48 hrs; gm per 48 hrs; 48hrs; grams per 48 hours","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"gram per 5 hour","g/(5.h)","G/HR","mass",0.00005555555555555556,[0,-1,1,0,0,0,0],"g/h",null,false,"M",null,1,false,false,0,"gm/5hrs; gm/5 hrs; gm per 5 hrs; 5hrs; grams per 5 hours","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"gram per 6 hour","g/(6.h)","G/HR","mass",0.000046296296296296294,[0,-1,1,0,0,0,0],"g/h",null,false,"M",null,1,false,false,0,"gm/6hrs; gm/6 hrs; gm per 6 hrs; 6hrs; grams per 6 hours","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"gram per 72 hour","g/(72.h)","G/HR","mass",0.000003858024691358025,[0,-1,1,0,0,0,0],"g/h",null,false,"M",null,1,false,false,0,"gm/72hrs; gm/72 hrs; gm per 72 hrs; 72hrs; grams per 72 hours","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"gram per cubic centimeter","g/cm3","G/CM3","mass",999999.9999999999,[-3,0,1,0,0,0,0],"g/(cm3)",null,false,"M",null,1,false,false,0,"g/cm^3; gm per cm3; g per cm^3; grams per centimeter cubed; cu. cm; centimetre; g/mL; gram per milliliter; millilitre","LOINC","MCnc","Clinical","g/cm3 = g/mL",null,null,null,null,false],[false,"gram per day","g/d","G/D","mass",0.000011574074074074073,[0,-1,1,0,0,0,0],"g/d",null,false,"M",null,1,false,false,0,"gm/dy; gm per dy; grams per day; gm/24hrs; gm/24 hrs; gm per 24 hrs; 24hrs; grams per 24 hours; serving","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"gram per deciliter","g/dL","G/DL","mass",10000,[-3,0,1,0,0,0,0],"g/dL",null,false,"M",null,1,false,false,0,"gm/dL; gm per dL; grams per deciliter; decilitre","LOINC","MCnc","Clinical","",null,null,null,null,false],[false,"gram per gram","g/g","G/G","mass",1,[0,0,0,0,0,0,0],"g/g",null,false,"M",null,1,false,false,0,"gm; grams","LOINC","MRto ","Clinical","",null,null,null,null,false],[false,"gram per hour","g/h","G/HR","mass",0.0002777777777777778,[0,-1,1,0,0,0,0],"g/h",null,false,"M",null,1,false,false,0,"gm/hr; gm per hr; grams; intake; output","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"gram per hour per square meter","g/h/m2","(G/HR)/M2","mass",0.0002777777777777778,[-2,-1,1,0,0,0,0],"(g/h)/(m2)",null,false,"M",null,1,false,false,0,"gm/hr/m2; gm/h/m2; /m^2; sq. m; g per hr per m2; grams per hours per square meter; meter squared; metre","LOINC","ArMRat","Clinical","",null,null,null,null,false],[false,"gram per kilogram","g/kg ","G/KG","mass",0.001,[0,0,0,0,0,0,0],"g/kg",null,false,"M",null,1,false,false,0,"g per kg; gram per kilograms","LOINC","MCnt","Clinical","",null,null,null,null,false],[false,"gram per kilogram per 8 hour ","g/kg/(8.h)","(G/KG)/HR","mass",3.472222222222222e-8,[0,-1,0,0,0,0,0],"(g/kg)/h",null,false,"M",null,1,false,false,0,"g/(8.kg.h); gm/kg/8hrs; 8 hrs; g per kg per 8 hrs; 8hrs; grams per kilograms per 8 hours; shift","LOINC","MCntRat; RelMRat","Clinical","unit often used to describe mass in grams of protein consumed in a 8 hours, divided by the subject\'s body weight in kilograms. Also used to measure mass dose rate per body mass",null,null,null,null,false],[false,"gram per kilogram per day","g/kg/d","(G/KG)/D","mass",1.1574074074074074e-8,[0,-1,0,0,0,0,0],"(g/kg)/d",null,false,"M",null,1,false,false,0,"g/(kg.d); gm/kg/dy; gm per kg per dy; grams per kilograms per day","LOINC","RelMRat","Clinical","unit often used to describe mass in grams of protein consumed in a day, divided by the subject\'s body weight in kilograms. Also used to measure mass dose rate per body mass",null,null,null,null,false],[false,"gram per kilogram per hour","g/kg/h","(G/KG)/HR","mass",2.7777777777777776e-7,[0,-1,0,0,0,0,0],"(g/kg)/h",null,false,"M",null,1,false,false,0,"g/(kg.h); g/kg/hr; g per kg per hrs; grams per kilograms per hour","LOINC","MCntRat; RelMRat","Clinical","unit used to measure mass dose rate per body mass",null,null,null,null,false],[false,"gram per kilogram per minute","g/kg/min","(G/KG)/MIN","mass",0.000016666666666666667,[0,-1,0,0,0,0,0],"(g/kg)/min",null,false,"M",null,1,false,false,0,"g/(kg.min); g/kg/min; g per kg per min; grams per kilograms per minute","LOINC","MCntRat; RelMRat","Clinical","unit used to measure mass dose rate per body mass",null,null,null,null,false],[false,"gram per liter","g/L","G/L","mass",1000,[-3,0,1,0,0,0,0],"g/L",null,false,"M",null,1,false,false,0,"gm per liter; g/liter; grams per liter; litre","LOINC","MCnc","Clinical","",null,null,null,null,false],[false,"gram per square meter","g/m2","G/M2","mass",1,[-2,0,1,0,0,0,0],"g/(m2)",null,false,"M",null,1,false,false,0,"g/m^2; gram/square meter; g/sq m; g per m2; g per m^2; grams per square meter; meters squared; metre","LOINC","ArMass","Clinical","Tests measure myocardial mass (heart ventricle system) per body surface area; unit used to measure mass dose per body surface area",null,null,null,null,false],[false,"gram per milligram","g/mg","G/MG","mass",1000,[0,0,0,0,0,0,0],"g/mg",null,false,"M",null,1,false,false,0,"g per mg; grams per milligram","LOINC","MCnt; MRto","Clinical","",null,null,null,null,false],[false,"gram per minute","g/min","G/MIN","mass",0.016666666666666666,[0,-1,1,0,0,0,0],"g/min",null,false,"M",null,1,false,false,0,"g per min; grams per minute; gram/minute","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"gram per milliliter","g/mL","G/ML","mass",1000000,[-3,0,1,0,0,0,0],"g/mL",null,false,"M",null,1,false,false,0,"g per mL; grams per milliliter; millilitre","LOINC","MCnc","Clinical","",null,null,null,null,false],[false,"gram per millimole","g/mmol","G/MMOL","mass",1.6605401866749388e-21,[0,0,1,0,0,0,0],"g/mmol",null,false,"M",null,1,false,false,-1,"grams per millimole; g per mmol","LOINC","Ratio","Clinical","",null,null,null,null,false],[false,"joule per liter","J/L","J/L","energy",1000000,[-1,-2,1,0,0,0,0],"J/L","si",true,null,null,1,false,false,0,"joules per liter; litre; J per L","LOINC","EngCnc","Clinical","","N.m","N.M","1",1,false],[false,"degree Kelvin per Watt","K/W","K/W","temperature",0.001,[-2,3,-1,0,1,0,0],"K/W",null,false,"C",null,1,false,false,0,"degree Kelvin/Watt; K per W; thermal ohm; thermal resistance; degrees","LOINC","TempEngRat","Clinical","unit for absolute thermal resistance equal to the reciprocal of thermal conductance. Unit used for tests to measure work of breathing",null,null,null,null,false],[false,"kilo international unit per liter","k[IU]/L","K[IU]/L","arbitrary",1000000,[-3,0,0,0,0,0,0],"(ki.U.)/L","chemical",true,null,null,1,false,true,0,"kIU/L; kIU per L; kIU per liter; kilo international units; litre; allergens; allergy units","LOINC","ACnc","Clinical","IgE has an WHO reference standard so IgE allergen testing can be reported as k[IU]/L","[iU]","[IU]","1",1,false],[false,"kilo international unit per milliliter","k[IU]/mL","K[IU]/ML","arbitrary",1000000000,[-3,0,0,0,0,0,0],"(ki.U.)/mL","chemical",true,null,null,1,false,true,0,"kIU/mL; kIU per mL; kIU per milliliter; kilo international units; millilitre; allergens; allergy units","LOINC","ACnc","Clinical","IgE has an WHO reference standard so IgE allergen testing can be reported as k[IU]/mL","[iU]","[IU]","1",1,false],[false,"katal per kilogram","kat/kg","KAT/KG","catalytic activity",602213670000000000000,[0,-1,-1,0,0,0,0],"kat/kg","chemical",true,null,null,1,false,false,1,"kat per kg; katals per kilogram; mol/s/kg; moles per seconds per kilogram","LOINC","CCnt","Clinical","kat is a unit of catalytic activity with base units = mol/s. Rarely used because its units are too large to practically express catalytic activity. See enzyme unit [U] which is the standard unit for catalytic activity.","mol/s","MOL/S","1",1,false],[false,"katal per liter","kat/L","KAT/L","catalytic activity",6.0221366999999994e+26,[-3,-1,0,0,0,0,0],"kat/L","chemical",true,null,null,1,false,false,1,"kat per L; katals per liter; litre; mol/s/L; moles per seconds per liter","LOINC","CCnc","Clinical","kat is a unit of catalytic activity with base units = mol/s. Rarely used because its units are too large to practically express catalytic activity. See enzyme unit [U] which is the standard unit for catalytic activity.","mol/s","MOL/S","1",1,false],[false,"kilocalorie","kcal","KCAL","energy",4184000,[2,-2,1,0,0,0,0],"kcal","heat",true,null,null,1,false,false,0,"kilogram calories; large calories; food calories; kcals","LOINC","EngRat","Clinical","It is equal to 1000 calories (equal to 4.184 kJ). But in practical usage, kcal refers to food calories which excludes caloric content in fiber and other constitutes that is not digestible by humans. Also see nutrition label Calories ([Cal])","cal_th","CAL_TH","1",1,false],[false,"kilocalorie per 24 hour","kcal/(24.h)","KCAL/HR","energy",48.425925925925924,[2,-3,1,0,0,0,0],"kcal/h","heat",true,null,null,1,false,false,0,"kcal/24hrs; kcal/24 hrs; kcal per 24hrs; kilocalories per 24 hours; kilojoules; kJ/24hr; kJ/(24.h); kJ/dy; kilojoules per days; intake; calories burned; metabolic rate; food calories","","EngRat","Clinical","","cal_th","CAL_TH","1",1,false],[false,"kilocalorie per ounce","kcal/[oz_av]","KCAL/[OZ_AV]","energy",147586.25679704445,[2,-2,0,0,0,0,0],"kcal/oz","heat",true,null,null,1,false,false,0,"kcal/oz; kcal per ozs; large calories per ounces; food calories; servings; international","LOINC","EngCnt","Clinical","used in nutrition to represent calorie of food","cal_th","CAL_TH","1",1,false],[false,"kilocalorie per day","kcal/d","KCAL/D","energy",48.425925925925924,[2,-3,1,0,0,0,0],"kcal/d","heat",true,null,null,1,false,false,0,"kcal/dy; kcal per day; kilocalories per days; kilojoules; kJ/dy; kilojoules per days; intake; calories burned; metabolic rate; food calories","LOINC","EngRat","Clinical","unit in nutrition for food intake (measured in calories) in a day","cal_th","CAL_TH","1",1,false],[false,"kilocalorie per hour","kcal/h","KCAL/HR","energy",1162.2222222222222,[2,-3,1,0,0,0,0],"kcal/h","heat",true,null,null,1,false,false,0,"kcal/hrs; kcals per hr; intake; kilocalories per hours; kilojoules","LOINC","EngRat","Clinical","used in nutrition to represent caloric requirement or consumption","cal_th","CAL_TH","1",1,false],[false,"kilocalorie per kilogram per 24 hour","kcal/kg/(24.h)","(KCAL/KG)/HR","energy",0.04842592592592593,[2,-3,0,0,0,0,0],"(kcal/kg)/h","heat",true,null,null,1,false,false,0,"kcal/kg/24hrs; 24 hrs; kcal per kg per 24hrs; kilocalories per kilograms per 24 hours; kilojoules","LOINC","EngCntRat","Clinical","used in nutrition to represent caloric requirement per day based on subject\'s body weight in kilograms","cal_th","CAL_TH","1",1,false],[false,"kilogram","kg","KG","mass",1000,[0,0,1,0,0,0,0],"kg",null,false,"M",null,1,false,false,0,"kilograms; kgs","LOINC","Mass","Clinical","",null,null,null,null,false],[false,"kilogram meter per second","kg.m/s","(KG.M)/S","mass",1000,[1,-1,1,0,0,0,0],"(kg.m)/s",null,false,"M",null,1,false,false,0,"kg*m/s; kg.m per sec; kg*m per sec; p; momentum","LOINC","","Clinical","unit for momentum = mass times velocity",null,null,null,null,false],[false,"kilogram per second per square meter","kg/(s.m2)","KG/(S.M2)","mass",1000,[-2,-1,1,0,0,0,0],"kg/(s.(m2))",null,false,"M",null,1,false,false,0,"kg/(s*m2); kg/(s*m^2); kg per s per m2; per sec; per m^2; kilograms per seconds per square meter; meter squared; metre","LOINC","ArMRat","Clinical","",null,null,null,null,false],[false,"kilogram per hour","kg/h","KG/HR","mass",0.2777777777777778,[0,-1,1,0,0,0,0],"kg/h",null,false,"M",null,1,false,false,0,"kg/hr; kg per hr; kilograms per hour","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"kilogram per liter","kg/L","KG/L","mass",1000000,[-3,0,1,0,0,0,0],"kg/L",null,false,"M",null,1,false,false,0,"kg per liter; litre; kilograms","LOINC","MCnc","Clinical","",null,null,null,null,false],[false,"kilogram per square meter","kg/m2","KG/M2","mass",1000,[-2,0,1,0,0,0,0],"kg/(m2)",null,false,"M",null,1,false,false,0,"kg/m^2; kg/sq. m; kg per m2; per m^2; per sq. m; kilograms; meter squared; metre; BMI","LOINC","Ratio","Clinical","units for body mass index (BMI)",null,null,null,null,false],[false,"kilogram per cubic meter","kg/m3","KG/M3","mass",1000,[-3,0,1,0,0,0,0],"kg/(m3)",null,false,"M",null,1,false,false,0,"kg/m^3; kg/cu. m; kg per m3; per m^3; per cu. m; kilograms; meters cubed; metre","LOINC","MCnc","Clinical","",null,null,null,null,false],[false,"kilogram per minute","kg/min","KG/MIN","mass",16.666666666666668,[0,-1,1,0,0,0,0],"kg/min",null,false,"M",null,1,false,false,0,"kilogram/minute; kg per min; kilograms per minute","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"kilogram per mole","kg/mol","KG/MOL","mass",1.6605401866749388e-21,[0,0,1,0,0,0,0],"kg/mol",null,false,"M",null,1,false,false,-1,"kilogram/mole; kg per mol; kilograms per mole","LOINC","SCnt","Clinical","",null,null,null,null,false],[false,"kilogram per second","kg/s","KG/S","mass",1000,[0,-1,1,0,0,0,0],"kg/s",null,false,"M",null,1,false,false,0,"kg/sec; kilogram/second; kg per sec; kilograms; second","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"kiloliter","kL","KL","volume",1,[3,0,0,0,0,0,0],"kL","iso1000",true,null,null,1,false,false,0,"kiloliters; kilolitres; m3; m^3; meters cubed; metre","LOINC","Vol","Clinical","","l",null,"1",1,false],[false,"kilometer","km","KM","length",1000,[1,0,0,0,0,0,0],"km",null,false,"L",null,1,false,false,0,"kilometers; kilometres; distance","LOINC","Len","Clinical","",null,null,null,null,false],[false,"kilopascal","kPa","KPAL","pressure",1000000,[-1,-2,1,0,0,0,0],"kPa","si",true,null,null,1,false,false,0,"kilopascals; pressure","LOINC","Pres; PPresDiff","Clinical","","N/m2","N/M2","1",1,false],[false,"kilosecond","ks","KS","time",1000,[0,1,0,0,0,0,0],"ks",null,false,"T",null,1,false,false,0,"kiloseconds; ksec","LOINC","Time","Clinical","",null,null,null,null,false],[false,"kilo enzyme unit","kU","KU","catalytic activity",10036894500000000000,[0,-1,0,0,0,0,0],"kU","chemical",true,null,null,1,false,false,1,"units; mmol/min; millimoles per minute","LOINC","CAct","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min); 1 kU = 1 mmol/min","umol/min","UMOL/MIN","1",1,false],[false,"kilo enzyme unit per gram","kU/g","KU/G","catalytic activity",10036894500000000000,[0,-1,-1,0,0,0,0],"kU/g","chemical",true,null,null,1,false,false,1,"units per grams; kU per gm","LOINC","CCnt","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min); 1 kU = 1 mmol/min","umol/min","UMOL/MIN","1",1,false],[false,"kilo enzyme unit per liter","kU/L","KU/L","catalytic activity",1.00368945e+22,[-3,-1,0,0,0,0,0],"kU/L","chemical",true,null,null,1,false,false,1,"units per liter; litre; enzymatic activity; enzyme activity per volume; activities","LOINC","ACnc; CCnc","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min); 1 kU = 1 mmol/min","umol/min","UMOL/MIN","1",1,false],[false,"kilo enzyme unit per milliliter","kU/mL","KU/ML","catalytic activity",1.00368945e+25,[-3,-1,0,0,0,0,0],"kU/mL","chemical",true,null,null,1,false,false,1,"kU per mL; units per milliliter; millilitre; enzymatic activity per volume; enzyme activities","LOINC","CCnc","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min); 1 kU = 1 mmol/min","umol/min","UMOL/MIN","1",1,false],[false,"Liters per 24 hour","L/(24.h)","L/HR","volume",1.1574074074074074e-8,[3,-1,0,0,0,0,0],"L/h","iso1000",true,null,null,1,false,false,0,"L/24hrs; L/24 hrs; L per 24hrs; liters per 24 hours; day; dy; litres; volume flow rate","LOINC","VRat","Clinical","","l",null,"1",1,false],[false,"Liters per 8 hour","L/(8.h)","L/HR","volume",3.472222222222222e-8,[3,-1,0,0,0,0,0],"L/h","iso1000",true,null,null,1,false,false,0,"L/8hrs; L/8 hrs; L per 8hrs; liters per 8 hours; litres; volume flow rate; shift","LOINC","VRat","Clinical","","l",null,"1",1,false],[false,"Liters per minute per square meter","L/(min.m2) ","L/(MIN.M2)","volume",0.000016666666666666667,[1,-1,0,0,0,0,0],"L/(min.(m2))","iso1000",true,null,null,1,false,false,0,"L/(min.m2); L/min/m^2; L/min/sq. meter; L per min per m2; m^2; liters per minutes per square meter; meter squared; litres; metre ","LOINC","ArVRat","Clinical","unit for tests that measure cardiac output per body surface area (cardiac index)","l",null,"1",1,false],[false,"Liters per day","L/d","L/D","volume",1.1574074074074074e-8,[3,-1,0,0,0,0,0],"L/d","iso1000",true,null,null,1,false,false,0,"L/dy; L per day; 24hrs; 24 hrs; 24 hours; liters; litres","LOINC","VRat","Clinical","","l",null,"1",1,false],[false,"Liters per hour","L/h","L/HR","volume",2.7777777777777776e-7,[3,-1,0,0,0,0,0],"L/h","iso1000",true,null,null,1,false,false,0,"L/hr; L per hr; litres","LOINC","VRat","Clinical","","l",null,"1",1,false],[false,"Liters per kilogram","L/kg","L/KG","volume",0.000001,[3,0,-1,0,0,0,0],"L/kg","iso1000",true,null,null,1,false,false,0,"L per kg; litre","LOINC","VCnt","Clinical","","l",null,"1",1,false],[false,"Liters per liter","L/L","L/L","volume",1,[0,0,0,0,0,0,0],"L/L","iso1000",true,null,null,1,false,false,0,"L per L; liter/liter; litre","LOINC","VFr","Clinical","","l",null,"1",1,false],[false,"Liters per minute","L/min","L/MIN","volume",0.000016666666666666667,[3,-1,0,0,0,0,0],"L/min","iso1000",true,null,null,1,false,false,0,"liters per minute; litre","LOINC","VRat","Clinical","","l",null,"1",1,false],[false,"Liters per minute per square meter","L/min/m2","(L/MIN)/M2","volume",0.000016666666666666667,[1,-1,0,0,0,0,0],"(L/min)/(m2)","iso1000",true,null,null,1,false,false,0,"L/(min.m2); L/min/m^2; L/min/sq. meter; L per min per m2; m^2; liters per minutes per square meter; meter squared; litres; metre ","","ArVRat","Clinical","unit for tests that measure cardiac output per body surface area (cardiac index)","l",null,"1",1,false],[false,"Liters per second","L/s","L/S","volume",0.001,[3,-1,0,0,0,0,0],"L/s","iso1000",true,null,null,1,false,false,0,"L per sec; litres","LOINC","VRat","Clinical","unit used often to measure gas flow and peak expiratory flow","l",null,"1",1,false],[false,"Liters per second per square second","L/s/s2","(L/S)/S2","volume",0.001,[3,-3,0,0,0,0,0],"(L/s)/(s2)","iso1000",true,null,null,1,false,false,0,"L/s/s^2; L/sec/sec2; L/sec/sec^2; L/sec/sq. sec; L per s per s2; L per sec per sec2; s^2; sec^2; liters per seconds per square second; second squared; litres ","LOINC","ArVRat","Clinical","unit for tests that measure cardiac output/body surface area","l",null,"1",1,false],[false,"lumen square meter","lm.m2","LM.M2","luminous flux",1,[2,0,0,2,0,0,1],"lm.(m2)","si",true,null,null,1,false,false,0,"lm*m2; lm*m^2; lumen meters squared; lumen sq. meters; metres","LOINC","","Clinical","","cd.sr","CD.SR","1",1,false],[false,"meter per second","m/s","M/S","length",1,[1,-1,0,0,0,0,0],"m/s",null,false,"L",null,1,false,false,0,"meter/second; m per sec; meters per second; metres; velocity; speed","LOINC","Vel","Clinical","unit of velocity",null,null,null,null,false],[false,"meter per square second","m/s2","M/S2","length",1,[1,-2,0,0,0,0,0],"m/(s2)",null,false,"L",null,1,false,false,0,"m/s^2; m/sq. sec; m per s2; per s^2; meters per square second; second squared; sq second; metres; acceleration","LOINC","Accel","Clinical","unit of acceleration",null,null,null,null,false],[false,"milli international unit per liter","m[IU]/L","M[IU]/L","arbitrary",1,[-3,0,0,0,0,0,0],"(mi.U.)/L","chemical",true,null,null,1,false,true,0,"mIU/L; m IU/L; mIU per liter; units; litre","LOINC","ACnc","Clinical","International units (IU) are analyte and reference specimen specific arbitrary units (held at WHO)","[iU]","[IU]","1",1,false],[false,"milli international unit per milliliter","m[IU]/mL","M[IU]/ML","arbitrary",1000.0000000000001,[-3,0,0,0,0,0,0],"(mi.U.)/mL","chemical",true,null,null,1,false,true,0,"mIU/mL; m IU/mL; mIU per mL; milli international units per milliliter; millilitre","LOINC","ACnc","Clinical","International units (IU) are analyte and reference specimen specific arbitrary units (held at WHO)","[iU]","[IU]","1",1,false],[false,"square meter","m2","M2","length",1,[2,0,0,0,0,0,0],"m2",null,false,"L",null,1,false,false,0,"m^2; sq m; square meters; meters squared; metres","LOINC","Area","Clinical","unit often used to represent body surface area",null,null,null,null,false],[false,"square meter per second","m2/s","M2/S","length",1,[2,-1,0,0,0,0,0],"(m2)/s",null,false,"L",null,1,false,false,0,"m^2/sec; m2 per sec; m^2 per sec; sq m/sec; meters squared/seconds; sq m per sec; meters squared; metres","LOINC","ArRat","Clinical","",null,null,null,null,false],[false,"cubic meter per second","m3/s","M3/S","length",1,[3,-1,0,0,0,0,0],"(m3)/s",null,false,"L",null,1,false,false,0,"m^3/sec; m3 per sec; m^3 per sec; cu m/sec; cubic meters per seconds; meters cubed; metres","LOINC","VRat","Clinical","",null,null,null,null,false],[false,"milliampere","mA","MA","electric current",0.001,[0,-1,0,0,0,1,0],"mA","si",true,null,null,1,false,false,0,"mamp; milliamperes","LOINC","ElpotRat","Clinical","unit of electric current","C/s","C/S","1",1,false],[false,"millibar","mbar","MBAR","pressure",100000,[-1,-2,1,0,0,0,0],"mbar","iso1000",true,null,null,1,false,false,0,"millibars","LOINC","Pres","Clinical","unit of pressure","Pa","PAL","1e5",100000,false],[false,"millibar second per liter","mbar.s/L","(MBAR.S)/L","pressure",100000000,[-4,-1,1,0,0,0,0],"(mbar.s)/L","iso1000",true,null,null,1,false,false,0,"mbar*s/L; mbar.s per L; mbar*s per L; millibar seconds per liter; millibar second per litre","LOINC","","Clinical","unit to measure expiratory resistance","Pa","PAL","1e5",100000,false],[false,"millibar per liter per second","mbar/L/s","(MBAR/L)/S","pressure",100000000,[-4,-3,1,0,0,0,0],"(mbar/L)/s","iso1000",true,null,null,1,false,false,0,"mbar/(L.s); mbar/L/sec; mbar/liter/second; mbar per L per sec; mbar per liter per second; millibars per liters per seconds; litres","LOINC","PresCncRat","Clinical","unit to measure expiratory resistance","Pa","PAL","1e5",100000,false],[false,"milliequivalent","meq","MEQ","amount of substance",602213670000000000000,[0,0,0,0,0,0,0],"meq","chemical",true,null,null,1,false,false,1,"milliequivalents; meqs","LOINC","Sub","Clinical","equivalence equals moles per valence","mol","MOL","1",1,false],[false,"milliequivalent per 2 hour","meq/(2.h)","MEQ/HR","amount of substance",83640787500000000,[0,-1,0,0,0,0,0],"meq/h","chemical",true,null,null,1,false,false,1,"meq/2hrs; meq/2 hrs; meq per 2 hrs; milliequivalents per 2 hours","LOINC","SRat","Clinical","equivalence equals moles per valence","mol","MOL","1",1,false],[false,"milliequivalent per 24 hour","meq/(24.h)","MEQ/HR","amount of substance",6970065625000000,[0,-1,0,0,0,0,0],"meq/h","chemical",true,null,null,1,false,false,1,"meq/24hrs; meq/24 hrs; meq per 24 hrs; milliequivalents per 24 hours","LOINC","SRat","Clinical","equivalence equals moles per valence","mol","MOL","1",1,false],[false,"milliequivalent per 8 hour","meq/(8.h)","MEQ/HR","amount of substance",20910196875000000,[0,-1,0,0,0,0,0],"meq/h","chemical",true,null,null,1,false,false,1,"meq/8hrs; meq/8 hrs; meq per 8 hrs; milliequivalents per 8 hours; shift","LOINC","SRat","Clinical","equivalence equals moles per valence","mol","MOL","1",1,false],[false,"milliequivalent per day","meq/d","MEQ/D","amount of substance",6970065625000000,[0,-1,0,0,0,0,0],"meq/d","chemical",true,null,null,1,false,false,1,"meq/dy; meq per day; milliquivalents per days; meq/24hrs; meq/24 hrs; meq per 24 hrs; milliequivalents per 24 hours","LOINC","SRat","Clinical","equivalence equals moles per valence","mol","MOL","1",1,false],[false,"milliequivalent per deciliter","meq/dL","MEQ/DL","amount of substance",6.022136699999999e+24,[-3,0,0,0,0,0,0],"meq/dL","chemical",true,null,null,1,false,false,1,"meq per dL; milliequivalents per deciliter; decilitre","LOINC","SCnc","Clinical","equivalence equals moles per valence","mol","MOL","1",1,false],[false,"milliequivalent per gram","meq/g","MEQ/G","amount of substance",602213670000000000000,[0,0,-1,0,0,0,0],"meq/g","chemical",true,null,null,1,false,false,1,"mgq/gm; meq per gm; milliequivalents per gram","LOINC","MCnt","Clinical","equivalence equals moles per valence","mol","MOL","1",1,false],[false,"milliequivalent per hour","meq/h","MEQ/HR","amount of substance",167281575000000000,[0,-1,0,0,0,0,0],"meq/h","chemical",true,null,null,1,false,false,1,"meq/hrs; meq per hrs; milliequivalents per hour","LOINC","SRat","Clinical","equivalence equals moles per valence","mol","MOL","1",1,false],[false,"milliequivalent per kilogram","meq/kg","MEQ/KG","amount of substance",602213670000000000,[0,0,-1,0,0,0,0],"meq/kg","chemical",true,null,null,1,false,false,1,"meq per kg; milliequivalents per kilogram","LOINC","SCnt","Clinical","equivalence equals moles per valence; used to measure dose per patient body mass","mol","MOL","1",1,false],[false,"milliequivalent per kilogram per hour","meq/kg/h","(MEQ/KG)/HR","amount of substance",167281575000000,[0,-1,-1,0,0,0,0],"(meq/kg)/h","chemical",true,null,null,1,false,false,1,"meq/(kg.h); meq/kg/hr; meq per kg per hr; milliequivalents per kilograms per hour","LOINC","SCntRat","Clinical","equivalence equals moles per valence; unit used to measure dose rate per patient body mass","mol","MOL","1",1,false],[false,"milliequivalent per liter","meq/L","MEQ/L","amount of substance",6.0221367e+23,[-3,0,0,0,0,0,0],"meq/L","chemical",true,null,null,1,false,false,1,"milliequivalents per liter; litre; meq per l; acidity","LOINC","SCnc","Clinical","equivalence equals moles per valence","mol","MOL","1",1,false],[false,"milliequivalent per square meter","meq/m2","MEQ/M2","amount of substance",602213670000000000000,[-2,0,0,0,0,0,0],"meq/(m2)","chemical",true,null,null,1,false,false,1,"meq/m^2; meq/sq. m; milliequivalents per square meter; meter squared; metre","LOINC","ArSub","Clinical","equivalence equals moles per valence; note that the use of m2 in clinical units ofter refers to body surface area","mol","MOL","1",1,false],[false,"milliequivalent per minute","meq/min","MEQ/MIN","amount of substance",10036894500000000000,[0,-1,0,0,0,0,0],"meq/min","chemical",true,null,null,1,false,false,1,"meq per min; milliequivalents per minute","LOINC","SRat","Clinical","equivalence equals moles per valence","mol","MOL","1",1,false],[false,"milliequivalent per milliliter","meq/mL","MEQ/ML","amount of substance",6.0221367e+26,[-3,0,0,0,0,0,0],"meq/mL","chemical",true,null,null,1,false,false,1,"meq per mL; milliequivalents per milliliter; millilitre","LOINC","SCnc","Clinical","equivalence equals moles per valence","mol","MOL","1",1,false],[false,"milligram","mg","MG","mass",0.001,[0,0,1,0,0,0,0],"mg",null,false,"M",null,1,false,false,0,"milligrams","LOINC","Mass","Clinical","",null,null,null,null,false],[false,"milligram per 10 hour","mg/(10.h)","MG/HR","mass",2.7777777777777777e-8,[0,-1,1,0,0,0,0],"mg/h",null,false,"M",null,1,false,false,0,"mg/10hrs; mg/10 hrs; mg per 10 hrs; milligrams per 10 hours","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"milligram per 12 hour","mg/(12.h)","MG/HR","mass",2.3148148148148148e-8,[0,-1,1,0,0,0,0],"mg/h",null,false,"M",null,1,false,false,0,"mg/12hrs; mg/12 hrs; per 12 hrs; 12hrs; milligrams per 12 hours","LOINC","MRat","Clinical","units used for tests in urine",null,null,null,null,false],[false,"milligram per 2 hour","mg/(2.h)","MG/HR","mass",1.3888888888888888e-7,[0,-1,1,0,0,0,0],"mg/h",null,false,"M",null,1,false,false,0,"mg/2hrs; mg/2 hrs; mg per 2 hrs; 2hrs; milligrams per 2 hours","LOINC","MRat","Clinical","units used for tests in urine",null,null,null,null,false],[false,"milligram per 24 hour","mg/(24.h)","MG/HR","mass",1.1574074074074074e-8,[0,-1,1,0,0,0,0],"mg/h",null,false,"M",null,1,false,false,0,"mg/24hrs; mg/24 hrs; milligrams per 24 hours; mg/kg/dy; mg per kg per day; milligrams per kilograms per days","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"milligram per 6 hour","mg/(6.h)","MG/HR","mass",4.6296296296296295e-8,[0,-1,1,0,0,0,0],"mg/h",null,false,"M",null,1,false,false,0,"mg/6hrs; mg/6 hrs; mg per 6 hrs; 6hrs; milligrams per 6 hours","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"milligram per 72 hour","mg/(72.h)","MG/HR","mass",3.858024691358025e-9,[0,-1,1,0,0,0,0],"mg/h",null,false,"M",null,1,false,false,0,"mg/72hrs; mg/72 hrs; 72 hrs; 72hrs; milligrams per 72 hours","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"milligram per 8 hour","mg/(8.h)","MG/HR","mass",3.472222222222222e-8,[0,-1,1,0,0,0,0],"mg/h",null,false,"M",null,1,false,false,0,"mg/8hrs; mg/8 hrs; milligrams per 8 hours; shift","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"milligram per day","mg/d","MG/D","mass",1.1574074074074074e-8,[0,-1,1,0,0,0,0],"mg/d",null,false,"M",null,1,false,false,0,"mg/24hrs; mg/24 hrs; milligrams per 24 hours; mg/dy; mg per day; milligrams","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"milligram per deciliter","mg/dL","MG/DL","mass",10,[-3,0,1,0,0,0,0],"mg/dL",null,false,"M",null,1,false,false,0,"mg per dL; milligrams per deciliter; decilitre","LOINC","MCnc","Clinical","",null,null,null,null,false],[false,"milligram per gram","mg/g","MG/G","mass",0.001,[0,0,0,0,0,0,0],"mg/g",null,false,"M",null,1,false,false,0,"mg per gm; milligrams per gram","LOINC","MCnt; MRto","Clinical","",null,null,null,null,false],[false,"milligram per hour","mg/h","MG/HR","mass",2.7777777777777776e-7,[0,-1,1,0,0,0,0],"mg/h",null,false,"M",null,1,false,false,0,"mg/hr; mg per hr; milligrams","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"milligram per kilogram","mg/kg","MG/KG","mass",0.000001,[0,0,0,0,0,0,0],"mg/kg",null,false,"M",null,1,false,false,0,"mg per kg; milligrams per kilograms","LOINC","MCnt","Clinical","",null,null,null,null,false],[false,"milligram per kilogram per 8 hour","mg/kg/(8.h)","(MG/KG)/HR","mass",3.472222222222222e-11,[0,-1,0,0,0,0,0],"(mg/kg)/h",null,false,"M",null,1,false,false,0,"mg/(8.h.kg); mg/kg/8hrs; mg/kg/8 hrs; mg per kg per 8hrs; 8 hrs; milligrams per kilograms per 8 hours; shift","LOINC","RelMRat; MCntRat","Clinical","unit used to measure mass dose rate per patient body mass",null,null,null,null,false],[false,"milligram per kilogram per day","mg/kg/d","(MG/KG)/D","mass",1.1574074074074074e-11,[0,-1,0,0,0,0,0],"(mg/kg)/d",null,false,"M",null,1,false,false,0,"mg/(kg.d); mg/(kg.24.h)mg/kg/dy; mg per kg per day; milligrams per kilograms per days; mg/kg/(24.h); mg/kg/24hrs; 24 hrs; 24 hours","LOINC","RelMRat ","Clinical","unit used to measure mass dose rate per patient body mass",null,null,null,null,false],[false,"milligram per kilogram per hour","mg/kg/h","(MG/KG)/HR","mass",2.7777777777777777e-10,[0,-1,0,0,0,0,0],"(mg/kg)/h",null,false,"M",null,1,false,false,0,"mg/(kg.h); mg/kg/hr; mg per kg per hr; milligrams per kilograms per hour","LOINC","RelMRat; MCntRat","Clinical","unit used to measure mass dose rate per patient body mass",null,null,null,null,false],[false,"milligram per kilogram per minute","mg/kg/min","(MG/KG)/MIN","mass",1.6666666666666667e-8,[0,-1,0,0,0,0,0],"(mg/kg)/min",null,false,"M",null,1,false,false,0,"mg/(kg.min); mg per kg per min; milligrams per kilograms per minute","LOINC","RelMRat; MCntRat","Clinical","unit used to measure mass dose rate per patient body mass",null,null,null,null,false],[false,"milligram per liter","mg/L","MG/L","mass",1,[-3,0,1,0,0,0,0],"mg/L",null,false,"M",null,1,false,false,0,"mg per l; milligrams per liter; litre","LOINC","MCnc","Clinical","",null,null,null,null,false],[false,"milligram per square meter","mg/m2","MG/M2","mass",0.001,[-2,0,1,0,0,0,0],"mg/(m2)",null,false,"M",null,1,false,false,0,"mg/m^2; mg/sq. m; mg per m2; mg per m^2; mg per sq. milligrams; meter squared; metre","LOINC","ArMass","Clinical","",null,null,null,null,false],[false,"milligram per cubic meter","mg/m3","MG/M3","mass",0.001,[-3,0,1,0,0,0,0],"mg/(m3)",null,false,"M",null,1,false,false,0,"mg/m^3; mg/cu. m; mg per m3; milligrams per cubic meter; meter cubed; metre","LOINC","MCnc","Clinical","",null,null,null,null,false],[false,"milligram per milligram","mg/mg","MG/MG","mass",1,[0,0,0,0,0,0,0],"mg/mg",null,false,"M",null,1,false,false,0,"mg per mg; milligrams; milligram/milligram","LOINC","MRto","Clinical","",null,null,null,null,false],[false,"milligram per minute","mg/min","MG/MIN","mass",0.000016666666666666667,[0,-1,1,0,0,0,0],"mg/min",null,false,"M",null,1,false,false,0,"mg per min; milligrams per minutes; milligram/minute","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"milligram per milliliter","mg/mL","MG/ML","mass",1000.0000000000001,[-3,0,1,0,0,0,0],"mg/mL",null,false,"M",null,1,false,false,0,"mg per mL; milligrams per milliliters; millilitre","LOINC","MCnc","Clinical","",null,null,null,null,false],[false,"milligram per millimole","mg/mmol","MG/MMOL","mass",1.660540186674939e-24,[0,0,1,0,0,0,0],"mg/mmol",null,false,"M",null,1,false,false,-1,"mg per mmol; milligrams per millimole; ","LOINC","Ratio","Clinical","",null,null,null,null,false],[false,"milligram per week","mg/wk","MG/WK","mass",1.6534391534391535e-9,[0,-1,1,0,0,0,0],"mg/wk",null,false,"M",null,1,false,false,0,"mg/week; mg per wk; milligrams per weeks; milligram/week","LOINC","Mrat","Clinical","",null,null,null,null,false],[false,"milliliter","mL","ML","volume",0.000001,[3,0,0,0,0,0,0],"mL","iso1000",true,null,null,1,false,false,0,"milliliters; millilitres","LOINC","Vol","Clinical","","l",null,"1",1,false],[false,"milliliter per 10 hour","mL/(10.h)","ML/HR","volume",2.7777777777777777e-11,[3,-1,0,0,0,0,0],"mL/h","iso1000",true,null,null,1,false,false,0,"ml/10hrs; ml/10 hrs; mL per 10hrs; 10 hrs; milliliters per 10 hours; millilitres","LOINC","VRat","Clinical","","l",null,"1",1,false],[false,"milliliter per 12 hour","mL/(12.h)","ML/HR","volume",2.3148148148148147e-11,[3,-1,0,0,0,0,0],"mL/h","iso1000",true,null,null,1,false,false,0,"ml/12hrs; ml/12 hrs; mL per 12hrs; 12 hrs; milliliters per 12 hours; millilitres","LOINC","VRat","Clinical","","l",null,"1",1,false],[false,"milliliter per 2 hour","mL/(2.h)","ML/HR","volume",1.3888888888888888e-10,[3,-1,0,0,0,0,0],"mL/h","iso1000",true,null,null,1,false,false,0,"ml/2hrs; ml/2 hrs; mL per 2hrs; 2 hrs; milliliters per 2 hours; millilitres ","LOINC","VRat","Clinical","","l",null,"1",1,false],[false,"milliliter per 24 hour","mL/(24.h)","ML/HR","volume",1.1574074074074074e-11,[3,-1,0,0,0,0,0],"mL/h","iso1000",true,null,null,1,false,false,0,"ml/24hrs; ml/24 hrs; mL per 24hrs; 24 hrs; milliliters per 24 hours; millilitres; ml/dy; /day; ml per dy; days; fluid outputs; fluid inputs; flow rate","LOINC","VRat","Clinical","","l",null,"1",1,false],[false,"milliliter per 4 hour","mL/(4.h)","ML/HR","volume",6.944444444444444e-11,[3,-1,0,0,0,0,0],"mL/h","iso1000",true,null,null,1,false,false,0,"ml/4hrs; ml/4 hrs; mL per 4hrs; 4 hrs; milliliters per 4 hours; millilitres","LOINC","VRat","Clinical","","l",null,"1",1,false],[false,"milliliter per 5 hour","mL/(5.h)","ML/HR","volume",5.5555555555555553e-11,[3,-1,0,0,0,0,0],"mL/h","iso1000",true,null,null,1,false,false,0,"ml/5hrs; ml/5 hrs; mL per 5hrs; 5 hrs; milliliters per 5 hours; millilitres","LOINC","VRat","Clinical","","l",null,"1",1,false],[false,"milliliter per 6 hour","mL/(6.h)","ML/HR","volume",4.6296296296296294e-11,[3,-1,0,0,0,0,0],"mL/h","iso1000",true,null,null,1,false,false,0,"ml/6hrs; ml/6 hrs; mL per 6hrs; 6 hrs; milliliters per 6 hours; millilitres","LOINC","VRat","Clinical","","l",null,"1",1,false],[false,"milliliter per 72 hour","mL/(72.h)","ML/HR","volume",3.8580246913580245e-12,[3,-1,0,0,0,0,0],"mL/h","iso1000",true,null,null,1,false,false,0,"ml/72hrs; ml/72 hrs; mL per 72hrs; 72 hrs; milliliters per 72 hours; millilitres","LOINC","VRat","Clinical","","l",null,"1",1,false],[false,"milliliter per 8 hour","mL/(8.h)","ML/HR","volume",3.472222222222222e-11,[3,-1,0,0,0,0,0],"mL/h","iso1000",true,null,null,1,false,false,0,"ml/8hrs; ml/8 hrs; mL per 8hrs; 8 hrs; milliliters per 8 hours; millilitres; shift","LOINC","VRat","Clinical","","l",null,"1",1,false],[false,"milliliter per 8 hour per kilogram","mL/(8.h)/kg","(ML/HR)/KG","volume",3.472222222222222e-14,[3,-1,-1,0,0,0,0],"(mL/h)/kg","iso1000",true,null,null,1,false,false,0,"mL/kg/(8.h); ml/8h/kg; ml/8 h/kg; ml/8hr/kg; ml/8 hr/kgr; mL per 8h per kg; 8 h; 8hr; 8 hr; milliliters per 8 hours per kilogram; millilitres; shift","LOINC","VRatCnt","Clinical","unit used to measure renal excretion volume rate per body mass","l",null,"1",1,false],[false,"milliliter per square inch (international)","mL/[sin_i]","ML/[SIN_I]","volume",0.0015500031000061998,[1,0,0,0,0,0,0],"mL","iso1000",true,null,null,1,false,false,0,"mL/sin; mL/in2; mL/in^2; mL per sin; in2; in^2; sq. in; milliliters per square inch; inch squared","LOINC","ArVol","Clinical","","l",null,"1",1,false],[false,"milliliter per centimeter of water","mL/cm[H2O]","ML/CM[H2O]","volume",1.0197162129779282e-11,[4,2,-1,0,0,0,0],"mL/(cm\xa0HO2)","iso1000",true,null,null,1,false,false,0,"milliliters per centimeter of water; millilitre per centimetre of water; millilitres per centimetre of water; mL/cmH2O; mL/cm H2O; mL per cmH2O; mL per cm H2O","LOINC","Compli","Clinical","unit used to measure dynamic lung compliance","l",null,"1",1,false],[false,"milliliter per day","mL/d","ML/D","volume",1.1574074074074074e-11,[3,-1,0,0,0,0,0],"mL/d","iso1000",true,null,null,1,false,false,0,"ml/day; ml per day; milliliters per day; 24 hours; 24hrs; millilitre;","LOINC","VRat","Clinical","usually used to measure fluid output or input; flow rate","l",null,"1",1,false],[false,"milliliter per deciliter","mL/dL","ML/DL","volume",0.009999999999999998,[0,0,0,0,0,0,0],"mL/dL","iso1000",true,null,null,1,false,false,0,"mL per dL; millilitres; decilitre; milliliters","LOINC","VFr; VFrDiff","Clinical","","l",null,"1",1,false],[false,"milliliter per hour","mL/h","ML/HR","volume",2.7777777777777777e-10,[3,-1,0,0,0,0,0],"mL/h","iso1000",true,null,null,1,false,false,0,"mL/hr; mL per hr; milliliters per hour; millilitres; fluid intake; fluid output","LOINC","VRat","Clinical","","l",null,"1",1,false],[false,"milliliter per kilogram","mL/kg","ML/KG","volume",9.999999999999999e-10,[3,0,-1,0,0,0,0],"mL/kg","iso1000",true,null,null,1,false,false,0,"mL per kg; milliliters per kilogram; millilitres","LOINC","VCnt","Clinical","","l",null,"1",1,false],[false,"milliliter per kilogram per 8 hour","mL/kg/(8.h)","(ML/KG)/HR","volume",3.472222222222222e-14,[3,-1,-1,0,0,0,0],"(mL/kg)/h","iso1000",true,null,null,1,false,false,0,"mL/(8.h.kg); mL/kg/8hrs; mL/kg/8 hrs; mL per kg per 8hrs; 8 hrs; milliliters per kilograms per 8 hours; millilitres; shift","LOINC","VCntRat; RelEngRat","Clinical","unit used to measure renal excretion volume rate per body mass","l",null,"1",1,false],[false,"milliliter per kilogram per day","mL/kg/d","(ML/KG)/D","volume",1.1574074074074072e-14,[3,-1,-1,0,0,0,0],"(mL/kg)/d","iso1000",true,null,null,1,false,false,0,"mL/(kg.d); mL/kg/dy; mL per kg per day; milliliters per kilograms per day; mg/kg/24hrs; 24 hrs; per 24 hours millilitres","LOINC","VCntRat; RelEngRat","Clinical","unit used to measure renal excretion volume rate per body mass","l",null,"1",1,false],[false,"milliliter per kilogram per hour","mL/kg/h","(ML/KG)/HR","volume",2.7777777777777774e-13,[3,-1,-1,0,0,0,0],"(mL/kg)/h","iso1000",true,null,null,1,false,false,0,"mL/(kg.h); mL/kg/hr; mL per kg per hr; milliliters per kilograms per hour; millilitres","LOINC","VCntRat; RelEngRat","Clinical","unit used to measure renal excretion volume rate per body mass","l",null,"1",1,false],[false,"milliliter per kilogram per minute","mL/kg/min","(ML/KG)/MIN","volume",1.6666666666666664e-11,[3,-1,-1,0,0,0,0],"(mL/kg)/min","iso1000",true,null,null,1,false,false,0,"mL/(kg.min); mL/kg/dy; mL per kg per day; milliliters per kilograms per day; millilitres","LOINC","RelEngRat","Clinical","used for tests that measure activity metabolic rate compared to standard resting metabolic rate ","l",null,"1",1,false],[false,"milliliter per square meter","mL/m2","ML/M2","volume",0.000001,[1,0,0,0,0,0,0],"mL/(m2)","iso1000",true,null,null,1,false,false,0,"mL/m^2; mL/sq. meter; mL per m2; m^2; sq. meter; milliliters per square meter; millilitres; meter squared","LOINC","ArVol","Clinical","used for tests that relate to heart work - e.g. ventricular stroke volume; atrial volume per body surface area","l",null,"1",1,false],[false,"milliliter per millibar","mL/mbar","ML/MBAR","volume",1e-11,[4,2,-1,0,0,0,0],"mL/mbar","iso1000",true,null,null,1,false,false,0,"mL per mbar; milliliters per millibar; millilitres","LOINC","","Clinical","unit used to measure dynamic lung compliance","l",null,"1",1,false],[false,"milliliter per minute","mL/min","ML/MIN","volume",1.6666666666666667e-8,[3,-1,0,0,0,0,0],"mL/min","iso1000",true,null,null,1,false,false,0,"mL per min; milliliters; millilitres","LOINC","VRat","Clinical","","l",null,"1",1,false],[false,"milliliter per minute per square meter","mL/min/m2","(ML/MIN)/M2","volume",1.6666666666666667e-8,[1,-1,0,0,0,0,0],"(mL/min)/(m2)","iso1000",true,null,null,1,false,false,0,"ml/min/m^2; ml/min/sq. meter; mL per min per m2; m^2; sq. meter; milliliters per minutes per square meter; millilitres; metre; meter squared","LOINC","ArVRat","Clinical","unit used to measure volume per body surface area; oxygen consumption index","l",null,"1",1,false],[false,"milliliter per millimeter","mL/mm","ML/MM","volume",0.001,[2,0,0,0,0,0,0],"mL/mm","iso1000",true,null,null,1,false,false,0,"mL per mm; milliliters per millimeter; millilitres; millimetre","LOINC","Lineic Volume","Clinical","","l",null,"1",1,false],[false,"milliliter per second","mL/s","ML/S","volume",0.000001,[3,-1,0,0,0,0,0],"mL/s","iso1000",true,null,null,1,false,false,0,"ml/sec; mL per sec; milliliters per second; millilitres","LOINC","Vel; VelRat; VRat","Clinical","","l",null,"1",1,false],[false,"millimeter","mm","MM","length",0.001,[1,0,0,0,0,0,0],"mm",null,false,"L",null,1,false,false,0,"millimeters; millimetres; height; length; diameter; thickness; axis; curvature; size","LOINC","Len","Clinical","",null,null,null,null,false],[false,"millimeter per hour","mm/h","MM/HR","length",2.7777777777777776e-7,[1,-1,0,0,0,0,0],"mm/h",null,false,"L",null,1,false,false,0,"mm/hr; mm per hr; millimeters per hour; millimetres","LOINC","Vel","Clinical","unit to measure sedimentation rate",null,null,null,null,false],[false,"millimeter per minute","mm/min","MM/MIN","length",0.000016666666666666667,[1,-1,0,0,0,0,0],"mm/min",null,false,"L",null,1,false,false,0,"mm per min; millimeters per minute; millimetres","LOINC","Vel","Clinical","",null,null,null,null,false],[false,"millimeter of water","mm[H2O]","MM[H2O]","pressure",9806.65,[-1,-2,1,0,0,0,0],"mm\xa0HO2","clinical",true,null,null,1,false,false,0,"mmH2O; mm H2O; millimeters of water; millimetres","LOINC","Pres","Clinical","","kPa","KPAL","980665e-5",9.80665,false],[false,"millimeter of mercury","mm[Hg]","MM[HG]","pressure",133322,[-1,-2,1,0,0,0,0],"mm\xa0Hg","clinical",true,null,null,1,false,false,0,"mmHg; mm Hg; millimeters of mercury; millimetres","LOINC","Pres; PPres; Ratio","Clinical","1 mm[Hg] = 1 torr; unit to measure blood pressure","kPa","KPAL","133.3220",133.322,false],[false,"square millimeter","mm2","MM2","length",0.000001,[2,0,0,0,0,0,0],"mm2",null,false,"L",null,1,false,false,0,"mm^2; sq. mm.; sq. millimeters; millimeters squared; millimetres","LOINC","Area","Clinical","",null,null,null,null,false],[false,"millimole","mmol","MMOL","amount of substance",602213670000000000000,[0,0,0,0,0,0,0],"mmol","si",true,null,null,1,false,false,1,"millimoles","LOINC","Sub","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"millimole per 12 hour","mmol/(12.h)","MMOL/HR","amount of substance",13940131250000000,[0,-1,0,0,0,0,0],"mmol/h","si",true,null,null,1,false,false,1,"mmol/12hrs; mmol/12 hrs; mmol per 12 hrs; 12hrs; millimoles per 12 hours","LOINC","SRat","Clinical","unit for tests related to urine","10*23","10*23","6.0221367",6.0221367,false],[false,"millimole per 2 hour","mmol/(2.h)","MMOL/HR","amount of substance",83640787500000000,[0,-1,0,0,0,0,0],"mmol/h","si",true,null,null,1,false,false,1,"mmol/2hrs; mmol/2 hrs; mmol per 2 hrs; 2hrs; millimoles per 2 hours","LOINC","SRat","Clinical","unit for tests related to urine","10*23","10*23","6.0221367",6.0221367,false],[false,"millimole per 24 hour","mmol/(24.h)","MMOL/HR","amount of substance",6970065625000000,[0,-1,0,0,0,0,0],"mmol/h","si",true,null,null,1,false,false,1,"mmol/24hrs; mmol/24 hrs; mmol per 24 hrs; 24hrs; millimoles per 24 hours","LOINC","SRat","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"millimole per 5 hour","mmol/(5.h)","MMOL/HR","amount of substance",33456315000000000,[0,-1,0,0,0,0,0],"mmol/h","si",true,null,null,1,false,false,1,"mmol/5hrs; mmol/5 hrs; mmol per 5 hrs; 5hrs; millimoles per 5 hours","LOINC","SRat","Clinical","unit for tests related to doses","10*23","10*23","6.0221367",6.0221367,false],[false,"millimole per 6 hour","mmol/(6.h)","MMOL/HR","amount of substance",27880262500000000,[0,-1,0,0,0,0,0],"mmol/h","si",true,null,null,1,false,false,1,"mmol/6hrs; mmol/6 hrs; mmol per 6 hrs; 6hrs; millimoles per 6 hours","LOINC","SRat","Clinical","unit for tests related to urine","10*23","10*23","6.0221367",6.0221367,false],[false,"millimole per 8 hour","mmol/(8.h)","MMOL/HR","amount of substance",20910196875000000,[0,-1,0,0,0,0,0],"mmol/h","si",true,null,null,1,false,false,1,"mmol/8hrs; mmol/8 hrs; mmol per 8 hrs; 8hrs; millimoles per 8 hours; shift","LOINC","SRat","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"millimole per day","mmol/d","MMOL/D","amount of substance",6970065625000000,[0,-1,0,0,0,0,0],"mmol/d","si",true,null,null,1,false,false,1,"mmol/24hrs; mmol/24 hrs; mmol per 24 hrs; 24hrs; millimoles per 24 hours","LOINC","SRat","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"millimole per deciliter","mmol/dL","MMOL/DL","amount of substance",6.022136699999999e+24,[-3,0,0,0,0,0,0],"mmol/dL","si",true,null,null,1,false,false,1,"mmol per dL; millimoles; decilitre","LOINC","SCnc","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"millimole per gram","mmol/g","MMOL/G","amount of substance",602213670000000000000,[0,0,-1,0,0,0,0],"mmol/g","si",true,null,null,1,false,false,1,"mmol per gram; millimoles","LOINC","SCnt","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"millimole per hour","mmol/h","MMOL/HR","amount of substance",167281575000000000,[0,-1,0,0,0,0,0],"mmol/h","si",true,null,null,1,false,false,1,"mmol/hr; mmol per hr; millimoles per hour","LOINC","SRat","Clinical","unit for tests related to urine","10*23","10*23","6.0221367",6.0221367,false],[false,"millimole per kilogram","mmol/kg","MMOL/KG","amount of substance",602213670000000000,[0,0,-1,0,0,0,0],"mmol/kg","si",true,null,null,1,false,false,1,"mmol per kg; millimoles per kilogram","LOINC","SCnt","Clinical","unit for tests related to stool","10*23","10*23","6.0221367",6.0221367,false],[false,"millimole per kilogram per 8 hour","mmol/kg/(8.h)","(MMOL/KG)/HR","amount of substance",20910196875000,[0,-1,-1,0,0,0,0],"(mmol/kg)/h","si",true,null,null,1,false,false,1,"mmol/(8.h.kg); mmol/kg/8hrs; mmol/kg/8 hrs; mmol per kg per 8hrs; 8 hrs; millimoles per kilograms per 8 hours; shift","LOINC","CCnt","Clinical","unit used to measure molar dose rate per patient body mass","10*23","10*23","6.0221367",6.0221367,false],[false,"millimole per kilogram per day","mmol/kg/d","(MMOL/KG)/D","amount of substance",6970065625000,[0,-1,-1,0,0,0,0],"(mmol/kg)/d","si",true,null,null,1,false,false,1,"mmol/kg/dy; mmol/kg/day; mmol per kg per dy; millimoles per kilograms per day","LOINC","RelSRat","Clinical","unit used to measure molar dose rate per patient body mass","10*23","10*23","6.0221367",6.0221367,false],[false,"millimole per kilogram per hour","mmol/kg/h","(MMOL/KG)/HR","amount of substance",167281575000000,[0,-1,-1,0,0,0,0],"(mmol/kg)/h","si",true,null,null,1,false,false,1,"mmol/kg/hr; mmol per kg per hr; millimoles per kilograms per hour","LOINC","CCnt","Clinical","unit used to measure molar dose rate per patient body mass","10*23","10*23","6.0221367",6.0221367,false],[false,"millimole per kilogram per minute","mmol/kg/min","(MMOL/KG)/MIN","amount of substance",10036894500000000,[0,-1,-1,0,0,0,0],"(mmol/kg)/min","si",true,null,null,1,false,false,1,"mmol/(kg.min); mmol/kg/min; mmol per kg per min; millimoles per kilograms per minute","LOINC","CCnt","Clinical","unit used to measure molar dose rate per patient body mass; note that the unit for the enzyme unit U = umol/min. mmol/kg/min = kU/kg; ","10*23","10*23","6.0221367",6.0221367,false],[false,"millimole per liter","mmol/L","MMOL/L","amount of substance",6.0221367e+23,[-3,0,0,0,0,0,0],"mmol/L","si",true,null,null,1,false,false,1,"mmol per L; millimoles per liter; litre","LOINC","SCnc","Clinical","unit for tests related to doses","10*23","10*23","6.0221367",6.0221367,false],[false,"millimole per square meter","mmol/m2","MMOL/M2","amount of substance",602213670000000000000,[-2,0,0,0,0,0,0],"mmol/(m2)","si",true,null,null,1,false,false,1,"mmol/m^2; mmol/sq. meter; mmol per m2; m^2; sq. meter; millimoles; meter squared; metre","LOINC","ArSub","Clinical","unit used to measure molar dose per patient body surface area","10*23","10*23","6.0221367",6.0221367,false],[false,"millimole per minute","mmol/min","MMOL/MIN","amount of substance",10036894500000000000,[0,-1,0,0,0,0,0],"mmol/min","si",true,null,null,1,false,false,1,"mmol per min; millimoles per minute","LOINC","Srat; CAct","Clinical","unit for the enzyme unit U = umol/min. mmol/min = kU","10*23","10*23","6.0221367",6.0221367,false],[false,"millimole per millimole","mmol/mmol","MMOL/MMOL","amount of substance",1,[0,0,0,0,0,0,0],"mmol/mmol","si",true,null,null,1,false,false,0,"mmol per mmol; millimoles per millimole","LOINC","SRto","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"millimole per mole","mmol/mol","MMOL/MOL","amount of substance",0.001,[0,0,0,0,0,0,0],"mmol/mol","si",true,null,null,1,false,false,0,"mmol per mol; millimoles per mole","LOINC","SRto","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"millimole per second per liter","mmol/s/L","(MMOL/S)/L","amount of substance",6.0221367e+23,[-3,-1,0,0,0,0,0],"(mmol/s)/L","si",true,null,null,1,false,false,1,"mmol/sec/L; mmol per s per L; per sec; millimoles per seconds per liter; litre","LOINC","CCnc ","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"mole per kilogram","mol/kg","MOL/KG","amount of substance",602213670000000000000,[0,0,-1,0,0,0,0],"mol/kg","si",true,null,null,1,false,false,1,"mol per kg; moles; mols","LOINC","SCnt","Clinical","unit for tests related to stool","10*23","10*23","6.0221367",6.0221367,false],[false,"mole per kilogram per second","mol/kg/s","(MOL/KG)/S","amount of substance",602213670000000000000,[0,-1,-1,0,0,0,0],"(mol/kg)/s","si",true,null,null,1,false,false,1,"mol/kg/sec; mol per kg per sec; moles per kilograms per second; mols","LOINC","CCnt","Clinical","unit of catalytic activity (mol/s) per mass (kg)","10*23","10*23","6.0221367",6.0221367,false],[false,"mole per liter","mol/L","MOL/L","amount of substance",6.0221366999999994e+26,[-3,0,0,0,0,0,0],"mol/L","si",true,null,null,1,false,false,1,"mol per L; moles per liter; litre; moles; mols","LOINC","SCnc","Clinical","unit often used in tests measuring oxygen content","10*23","10*23","6.0221367",6.0221367,false],[false,"mole per cubic meter","mol/m3","MOL/M3","amount of substance",6.0221367e+23,[-3,0,0,0,0,0,0],"mol/(m3)","si",true,null,null,1,false,false,1,"mol/m^3; mol/cu. m; mol per m3; m^3; cu. meter; mols; moles; meters cubed; metre; mole per kiloliter; kilolitre; mol/kL","LOINC","SCnc","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"mole per milliliter","mol/mL","MOL/ML","amount of substance",6.0221367e+29,[-3,0,0,0,0,0,0],"mol/mL","si",true,null,null,1,false,false,1,"mol per mL; moles; millilitre; mols","LOINC","SCnc","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"mole per mole","mol/mol","MOL/MOL","amount of substance",1,[0,0,0,0,0,0,0],"mol/mol","si",true,null,null,1,false,false,0,"mol per mol; moles per mol; mols","LOINC","SRto","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"mole per second","mol/s","MOL/S","amount of substance",6.0221367e+23,[0,-1,0,0,0,0,0],"mol/s","si",true,null,null,1,false,false,1,"mol per sec; moles per second; mols","LOINC","SRat","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"milliosmole","mosm","MOSM","amount of substance (dissolved particles)",602213670000000000000,[0,0,0,0,0,0,0],"mosm","chemical",true,null,null,1,false,false,1,"milliosmoles","LOINC","Osmol","Clinical","equal to 1/1000 of an osmole","mol","MOL","1",1,false],[false,"milliosmole per kilogram","mosm/kg","MOSM/KG","amount of substance (dissolved particles)",602213670000000000,[0,0,-1,0,0,0,0],"mosm/kg","chemical",true,null,null,1,false,false,1,"mosm per kg; milliosmoles per kilogram","LOINC","Osmol","Clinical","","mol","MOL","1",1,false],[false,"milliosmole per liter","mosm/L","MOSM/L","amount of substance (dissolved particles)",6.0221367e+23,[-3,0,0,0,0,0,0],"mosm/L","chemical",true,null,null,1,false,false,1,"mosm per liter; litre; milliosmoles","LOINC","Osmol","Clinical","","mol","MOL","1",1,false],[false,"millipascal","mPa","MPAL","pressure",1,[-1,-2,1,0,0,0,0],"mPa","si",true,null,null,1,false,false,0,"millipascals","LOINC","Pres","Clinical","unit of pressure","N/m2","N/M2","1",1,false],[false,"millipascal second","mPa.s","MPAL.S","pressure",1,[-1,-1,1,0,0,0,0],"mPa.s","si",true,null,null,1,false,false,0,"mPa*s; millipoise; mP; dynamic viscosity","LOINC","Visc","Clinical","base units for millipoise, a measurement of dynamic viscosity","N/m2","N/M2","1",1,false],[false,"megasecond","Ms","MAS","time",1000000,[0,1,0,0,0,0,0],"Ms",null,false,"T",null,1,false,false,0,"megaseconds","LOINC","Time","Clinical","",null,null,null,null,false],[false,"millisecond","ms","MS","time",0.001,[0,1,0,0,0,0,0],"ms",null,false,"T",null,1,false,false,0,"milliseconds; duration","LOINC","Time","Clinical","",null,null,null,null,false],[false,"milli enzyme unit per gram","mU/g","MU/G","catalytic activity",10036894500000,[0,-1,-1,0,0,0,0],"mU/g","chemical",true,null,null,1,false,false,1,"mU per gm; milli enzyme units per gram; enzyme activity; enzymatic activity per mass","LOINC","CCnt","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min); 1 mU = 1 nmol/min","umol/min","UMOL/MIN","1",1,false],[false,"milli enzyme unit per liter","mU/L","MU/L","catalytic activity",10036894500000000,[-3,-1,0,0,0,0,0],"mU/L","chemical",true,null,null,1,false,false,1,"mU per liter; litre; milli enzyme units enzymatic activity per volume; enzyme activity","LOINC","CCnc","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min); 1 mU = 1 nmol/min","umol/min","UMOL/MIN","1",1,false],[false,"milli enzyme unit per milligram","mU/mg","MU/MG","catalytic activity",10036894500000000,[0,-1,-1,0,0,0,0],"mU/mg","chemical",true,null,null,1,false,false,1,"mU per mg; milli enzyme units per milligram","LOINC","CCnt","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min); 1 mU = 1 nmol/min","umol/min","UMOL/MIN","1",1,false],[false,"milli enzyme unit per milliliter","mU/mL","MU/ML","catalytic activity",10036894500000000000,[-3,-1,0,0,0,0,0],"mU/mL","chemical",true,null,null,1,false,false,1,"mU per mL; milli enzyme units per milliliter; millilitre; enzymatic activity per volume; enzyme activity","LOINC","CCnc","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min); 1 mU = 1 nmol/min","umol/min","UMOL/MIN","1",1,false],[false,"milli enzyme unit per milliliter per minute","mU/mL/min","(MU/ML)/MIN","catalytic activity",167281575000000000,[-3,-2,0,0,0,0,0],"(mU/mL)/min","chemical",true,null,null,1,false,false,1,"mU per mL per min; mU per milliliters per minute; millilitres; milli enzyme units; enzymatic activity; enzyme activity","LOINC","CCncRat","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min); 1 mU = 1 nmol/min","umol/min","UMOL/MIN","1",1,false],[false,"millivolt","mV","MV","electric potential",1,[2,-2,1,0,0,-1,0],"mV","si",true,null,null,1,false,false,0,"millivolts","LOINC","Elpot","Clinical","unit of electric potential (voltage)","J/C","J/C","1",1,false],[false,"Newton centimeter","N.cm","N.CM","force",10,[2,-2,1,0,0,0,0],"N.cm","si",true,null,null,1,false,false,0,"N*cm; Ncm; N cm; Newton*centimeters; Newton* centimetres; torque; work","LOINC","","Clinical","as a measurement of work, N.cm = 1/100 Joules;\\nnote that N.m is the standard unit of measurement for torque (although dimensionally equivalent to Joule), and N.cm can also be thought of as a torqe unit","kg.m/s2","KG.M/S2","1",1,false],[false,"Newton second","N.s","N.S","force",1000,[1,-1,1,0,0,0,0],"N.s","si",true,null,null,1,false,false,0,"Newton*seconds; N*s; N s; Ns; impulse; imp","LOINC","","Clinical","standard unit of impulse","kg.m/s2","KG.M/S2","1",1,false],[false,"nanogram","ng","NG","mass",1e-9,[0,0,1,0,0,0,0],"ng",null,false,"M",null,1,false,false,0,"nanograms","LOINC","Mass","Clinical","",null,null,null,null,false],[false,"nanogram per 24 hour","ng/(24.h)","NG/HR","mass",1.1574074074074075e-14,[0,-1,1,0,0,0,0],"ng/h",null,false,"M",null,1,false,false,0,"ng/24hrs; ng/24 hrs; nanograms per 24 hours","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"nanogram per 8 hour","ng/(8.h)","NG/HR","mass",3.4722222222222224e-14,[0,-1,1,0,0,0,0],"ng/h",null,false,"M",null,1,false,false,0,"ng/8hrs; ng/8 hrs; nanograms per 8 hours","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"nanogram per million","ng/10*6","NG/(10*6)","mass",1e-15,[0,0,1,0,0,0,0],"ng/(106)",null,false,"M",null,1,false,false,0,"ng/10^6; ng per 10*6; 10^6; nanograms","LOINC","MNum","Clinical","",null,null,null,null,false],[false,"nanogram per day","ng/d","NG/D","mass",1.1574074074074075e-14,[0,-1,1,0,0,0,0],"ng/d",null,false,"M",null,1,false,false,0,"ng/dy; ng per day; nanograms ","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"nanogram per deciliter","ng/dL","NG/DL","mass",0.00001,[-3,0,1,0,0,0,0],"ng/dL",null,false,"M",null,1,false,false,0,"ng per dL; nanograms per deciliter; decilitre","LOINC","MCnc","Clinical","",null,null,null,null,false],[false,"nanogram per gram","ng/g","NG/G","mass",1e-9,[0,0,0,0,0,0,0],"ng/g",null,false,"M",null,1,false,false,0,"ng/gm; ng per gm; nanograms per gram","LOINC","MCnt","Clinical","",null,null,null,null,false],[false,"nanogram per hour","ng/h","NG/HR","mass",2.777777777777778e-13,[0,-1,1,0,0,0,0],"ng/h",null,false,"M",null,1,false,false,0,"ng/hr; ng per hr; nanograms per hour","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"nanogram per kilogram","ng/kg","NG/KG","mass",1e-12,[0,0,0,0,0,0,0],"ng/kg",null,false,"M",null,1,false,false,0,"ng per kg; nanograms per kilogram","LOINC","MCnt","Clinical","",null,null,null,null,false],[false,"nanogram per kilogram per 8 hour","ng/kg/(8.h)","(NG/KG)/HR","mass",3.472222222222222e-17,[0,-1,0,0,0,0,0],"(ng/kg)/h",null,false,"M",null,1,false,false,0,"ng/(8.h.kg); ng/kg/8hrs; ng/kg/8 hrs; ng per kg per 8hrs; 8 hrs; nanograms per kilograms per 8 hours; shift","LOINC","MRtoRat ","Clinical","unit used to measure mass dose rate per patient body mass",null,null,null,null,false],[false,"nanogram per kilogram per hour","ng/kg/h","(NG/KG)/HR","mass",2.7777777777777775e-16,[0,-1,0,0,0,0,0],"(ng/kg)/h",null,false,"M",null,1,false,false,0,"ng/(kg.h); ng/kg/hr; ng per kg per hr; nanograms per kilograms per hour","LOINC","MRtoRat ","Clinical","unit used to measure mass dose rate per patient body mass",null,null,null,null,false],[false,"nanogram per kilogram per minute","ng/kg/min","(NG/KG)/MIN","mass",1.6666666666666667e-14,[0,-1,0,0,0,0,0],"(ng/kg)/min",null,false,"M",null,1,false,false,0,"ng/(kg.min); ng per kg per min; nanograms per kilograms per minute","LOINC","MRtoRat ","Clinical","unit used to measure mass dose rate per patient body mass",null,null,null,null,false],[false,"nanogram per liter","ng/L","NG/L","mass",0.000001,[-3,0,1,0,0,0,0],"ng/L",null,false,"M",null,1,false,false,0,"ng per L; nanograms per liter; litre","LOINC","MCnc","Clinical","",null,null,null,null,false],[false,"nanogram per square meter","ng/m2","NG/M2","mass",1e-9,[-2,0,1,0,0,0,0],"ng/(m2)",null,false,"M",null,1,false,false,0,"ng/m^2; ng/sq. m; ng per m2; m^2; sq. meter; nanograms; meter squared; metre","LOINC","ArMass","Clinical","unit used to measure mass dose per patient body surface area",null,null,null,null,false],[false,"nanogram per milligram","ng/mg","NG/MG","mass",0.000001,[0,0,0,0,0,0,0],"ng/mg",null,false,"M",null,1,false,false,0,"ng per mg; nanograms","LOINC","MCnt","Clinical","",null,null,null,null,false],[false,"nanogram per milligram per hour","ng/mg/h","(NG/MG)/HR","mass",2.7777777777777777e-10,[0,-1,0,0,0,0,0],"(ng/mg)/h",null,false,"M",null,1,false,false,0,"ng/mg/hr; ng per mg per hr; nanograms per milligrams per hour","LOINC","MRtoRat ","Clinical","",null,null,null,null,false],[false,"nanogram per minute","ng/min","NG/MIN","mass",1.6666666666666667e-11,[0,-1,1,0,0,0,0],"ng/min",null,false,"M",null,1,false,false,0,"ng per min; nanograms","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"nanogram per millliiter","ng/mL","NG/ML","mass",0.001,[-3,0,1,0,0,0,0],"ng/mL",null,false,"M",null,1,false,false,0,"ng per mL; nanograms; millilitre","LOINC","MCnc","Clinical","",null,null,null,null,false],[false,"nanogram per milliliter per hour","ng/mL/h","(NG/ML)/HR","mass",2.7777777777777776e-7,[-3,-1,1,0,0,0,0],"(ng/mL)/h",null,false,"M",null,1,false,false,0,"ng/mL/hr; ng per mL per mL; nanograms per milliliter per hour; nanogram per millilitre per hour; nanograms per millilitre per hour; enzymatic activity per volume; enzyme activity per milliliters","LOINC","CCnc","Clinical","tests that measure enzymatic activity",null,null,null,null,false],[false,"nanogram per second","ng/s","NG/S","mass",1e-9,[0,-1,1,0,0,0,0],"ng/s",null,false,"M",null,1,false,false,0,"ng/sec; ng per sec; nanograms per second","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"nanogram per enzyme unit","ng/U","NG/U","mass",9.963241120049634e-26,[0,1,1,0,0,0,0],"ng/U",null,false,"M",null,1,false,false,-1,"ng per U; nanograms per enzyme unit","LOINC","CMass","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min)",null,null,null,null,false],[false,"nanokatal","nkat","NKAT","catalytic activity",602213670000000,[0,-1,0,0,0,0,0],"nkat","chemical",true,null,null,1,false,false,1,"nanokatals","LOINC","CAct","Clinical","kat is a unit of catalytic activity with base units = mol/s. Rarely used because its units are too large to practically express catalytic activity. See enzyme unit [U] which is the standard unit for catalytic activity.","mol/s","MOL/S","1",1,false],[false,"nanoliter","nL","NL","volume",1.0000000000000002e-12,[3,0,0,0,0,0,0],"nL","iso1000",true,null,null,1,false,false,0,"nanoliters; nanolitres","LOINC","Vol","Clinical","","l",null,"1",1,false],[false,"nanometer","nm","NM","length",1e-9,[1,0,0,0,0,0,0],"nm",null,false,"L",null,1,false,false,0,"nanometers; nanometres","LOINC","Len","Clinical","",null,null,null,null,false],[false,"nanometer per second per liter","nm/s/L","(NM/S)/L","length",0.000001,[-2,-1,0,0,0,0,0],"(nm/s)/L",null,false,"L",null,1,false,false,0,"nm/sec/liter; nm/sec/litre; nm per s per l; nm per sec per l; nanometers per second per liter; nanometre per second per litre; nanometres per second per litre","LOINC","VelCnc","Clinical","",null,null,null,null,false],[false,"nanomole","nmol","NMOL","amount of substance",602213670000000,[0,0,0,0,0,0,0],"nmol","si",true,null,null,1,false,false,1,"nanomoles","LOINC","Sub","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"nanomole per 24 hour","nmol/(24.h)","NMOL/HR","amount of substance",6970065625,[0,-1,0,0,0,0,0],"nmol/h","si",true,null,null,1,false,false,1,"nmol/24hr; nmol/24 hr; nanomoles per 24 hours; nmol/day; nanomoles per day; nmol per day; nanomole/day; nanomol/day","LOINC","SRat","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"nanomole per day","nmol/d","NMOL/D","amount of substance",6970065625,[0,-1,0,0,0,0,0],"nmol/d","si",true,null,null,1,false,false,1,"nmol/day; nanomoles per day; nmol per day; nanomole/day; nanomol/day; nmol/24hr; nmol/24 hr; nanomoles per 24 hours; ","LOINC","SRat","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"nanomole per deciliter","nmol/dL","NMOL/DL","amount of substance",6022136700000000000,[-3,0,0,0,0,0,0],"nmol/dL","si",true,null,null,1,false,false,1,"nmol per dL; nanomoles per deciliter; nanomole per decilitre; nanomoles per decilitre; nanomole/deciliter; nanomole/decilitre; nanomol/deciliter; nanomol/decilitre","LOINC","SCnc","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"nanomole per gram","nmol/g","NMOL/G","amount of substance",602213670000000,[0,0,-1,0,0,0,0],"nmol/g","si",true,null,null,1,false,false,1,"nmol per gram; nanomoles per gram; nanomole/gram","LOINC","SCnt","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"nanomole per hour per liter","nmol/h/L","(NMOL/HR)/L","amount of substance",167281575000000,[-3,-1,0,0,0,0,0],"(nmol/h)/L","si",true,null,null,1,false,false,1,"nmol/hrs/L; nmol per hrs per L; nanomoles per hours per liter; litre; enzymatic activity per volume; enzyme activities","LOINC","CCnc","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"nanomole per liter","nmol/L","NMOL/L","amount of substance",602213670000000000,[-3,0,0,0,0,0,0],"nmol/L","si",true,null,null,1,false,false,1,"nmol per L; nanomoles per liter; litre","LOINC","SCnc","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"nanomole per milligram","nmol/mg","NMOL/MG","amount of substance",602213670000000000,[0,0,-1,0,0,0,0],"nmol/mg","si",true,null,null,1,false,false,1,"nmol per mg; nanomoles per milligram","LOINC","SCnt","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"nanomole per milligram per hour","nmol/mg/h","(NMOL/MG)/HR","amount of substance",167281575000000,[0,-1,-1,0,0,0,0],"(nmol/mg)/h","si",true,null,null,1,false,false,1,"nmol/mg/hr; nmol per mg per hr; nanomoles per milligrams per hour","LOINC","SCntRat","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"nanomole per milligram of protein","nmol/mg{prot}","NMOL/MG","amount of substance",602213670000000000,[0,0,-1,0,0,0,0],"nmol/mg","si",true,null,null,1,false,false,1,"nanomoles; nmol/mg prot; nmol per mg prot","LOINC","Ratio; CCnt","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"nanomole per minute","nmol/min","NMOL/MIN","amount of substance",10036894500000,[0,-1,0,0,0,0,0],"nmol/min","si",true,null,null,1,false,false,1,"nmol per min; nanomoles per minute; milli enzyme units; enzyme activity per volume; enzymatic activity","LOINC","CCnc","Clinical","unit for the enzyme unit U = umol/min. nmol/min = mU (milli enzyme unit)","10*23","10*23","6.0221367",6.0221367,false],[false,"nanomole per minute per milliliter","nmol/min/mL","(NMOL/MIN)/ML","amount of substance",10036894500000000000,[-3,-1,0,0,0,0,0],"(nmol/min)/mL","si",true,null,null,1,false,false,1,"nmol per min per mL; nanomoles per minutes per milliliter; millilitre; milli enzyme units per volume; enzyme activity; enzymatic activity","LOINC","CCnc","Clinical","unit for the enzyme unit U = umol/min. nmol/mL/min = mU/mL","10*23","10*23","6.0221367",6.0221367,false],[false,"nanomole per milliliter","nmol/mL","NMOL/ML","amount of substance",602213670000000000000,[-3,0,0,0,0,0,0],"nmol/mL","si",true,null,null,1,false,false,1,"nmol per mL; nanomoles per milliliter; millilitre","LOINC","SCnc","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"nanomole per milliliter per hour","nmol/mL/h","(NMOL/ML)/HR","amount of substance",167281575000000000,[-3,-1,0,0,0,0,0],"(nmol/mL)/h","si",true,null,null,1,false,false,1,"nmol/mL/hr; nmol per mL per hr; nanomoles per milliliters per hour; millilitres; milli enzyme units per volume; enzyme activity; enzymatic activity","LOINC","CCnc","Clinical","unit for the enzyme unit U = umol/min.","10*23","10*23","6.0221367",6.0221367,false],[false,"nanomole per milliliter per minute","nmol/mL/min","(NMOL/ML)/MIN","amount of substance",10036894500000000000,[-3,-1,0,0,0,0,0],"(nmol/mL)/min","si",true,null,null,1,false,false,1,"nmol per mL per min; nanomoles per milliliters per min; millilitres; milli enzyme units per volume; enzyme activity; enzymatic activity","LOINC","CCnc","Clinical","unit for the enzyme unit U = umol/min. nmol/mL/min = mU/mL","10*23","10*23","6.0221367",6.0221367,false],[false,"nanomole per millimole","nmol/mmol","NMOL/MMOL","amount of substance",0.000001,[0,0,0,0,0,0,0],"nmol/mmol","si",true,null,null,1,false,false,0,"nmol per mmol; nanomoles per millimole","LOINC","SRto","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"nanomole per millimole of creatinine","nmol/mmol{creat}","NMOL/MMOL","amount of substance",0.000001,[0,0,0,0,0,0,0],"nmol/mmol","si",true,null,null,1,false,false,0,"nanomoles","LOINC","SRto","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"nanomole per mole","nmol/mol","NMOL/MOL","amount of substance",1e-9,[0,0,0,0,0,0,0],"nmol/mol","si",true,null,null,1,false,false,0,"nmol per mole; nanomoles","LOINC","SRto","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"nanomole per nanomole","nmol/nmol","NMOL/NMOL","amount of substance",1,[0,0,0,0,0,0,0],"nmol/nmol","si",true,null,null,1,false,false,0,"nmol per nmol; nanomoles","LOINC","SRto","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"nanomole per second","nmol/s","NMOL/S","amount of substance",602213670000000,[0,-1,0,0,0,0,0],"nmol/s","si",true,null,null,1,false,false,1,"nmol/sec; nmol per sec; nanomoles per sercond; milli enzyme units; enzyme activity; enzymatic activity","LOINC","CCnc","Clinical","unit for the enzyme unit U = umol/min.","10*23","10*23","6.0221367",6.0221367,false],[false,"nanomole per second per liter","nmol/s/L","(NMOL/S)/L","amount of substance",602213670000000000,[-3,-1,0,0,0,0,0],"(nmol/s)/L","si",true,null,null,1,false,false,1,"nmol/sec/L; nmol per s per L; nmol per sec per L; nanomoles per seconds per liter; litre; milli enzyme units per volume; enzyme activity; enzymatic activity","LOINC","CCnc","Clinical","unit for the enzyme unit U = umol/min.","10*23","10*23","6.0221367",6.0221367,false],[false,"nanosecond","ns","NS","time",1e-9,[0,1,0,0,0,0,0],"ns",null,false,"T",null,1,false,false,0,"nanoseconds","LOINC","Time","Clinical","",null,null,null,null,false],[false,"nanoenzyme unit per milliliter","nU/mL","NU/ML","catalytic activity",10036894500000,[-3,-1,0,0,0,0,0],"nU/mL","chemical",true,null,null,1,false,false,1,"nU per mL; nanoenzyme units per milliliter; millilitre; enzymatic activity per volume; enzyme activity","LOINC","CCnc","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min); 1 fU = pmol/min","umol/min","UMOL/MIN","1",1,false],[false,"Ohm meter","Ohm.m","OHM.M","electric resistance",1000,[3,-1,1,0,0,-2,0],"\u03a9.m","si",true,null,null,1,false,false,0,"electric resistivity; meters; metres","LOINC","","Clinical","unit of electric resistivity","V/A","V/A","1",1,false],[false,"osmole per kilogram","osm/kg","OSM/KG","amount of substance (dissolved particles)",602213670000000000000,[0,0,-1,0,0,0,0],"osm/kg","chemical",true,null,null,1,false,false,1,"osm per kg; osmoles per kilogram; osmols","LOINC","Osmol","Clinical","","mol","MOL","1",1,false],[false,"osmole per liter","osm/L","OSM/L","amount of substance (dissolved particles)",6.0221366999999994e+26,[-3,0,0,0,0,0,0],"osm/L","chemical",true,null,null,1,false,false,1,"osm per L; osmoles per liter; litre; osmols","LOINC","Osmol","Clinical","","mol","MOL","1",1,false],[false,"picoampere","pA","PA","electric current",1e-12,[0,-1,0,0,0,1,0],"pA","si",true,null,null,1,false,false,0,"picoamperes","LOINC","","Clinical","equal to 10^-12 amperes","C/s","C/S","1",1,false],[false,"picogram","pg","PG","mass",1e-12,[0,0,1,0,0,0,0],"pg",null,false,"M",null,1,false,false,0,"picograms","LOINC","Mass; EntMass","Clinical","",null,null,null,null,false],[false,"picogram per deciliter","pg/dL","PG/DL","mass",9.999999999999999e-9,[-3,0,1,0,0,0,0],"pg/dL",null,false,"M",null,1,false,false,0,"pg per dL; picograms; decilitre","LOINC","MCnc","Clinical","",null,null,null,null,false],[false,"picogram per liter","pg/L","PG/L","mass",1e-9,[-3,0,1,0,0,0,0],"pg/L",null,false,"M",null,1,false,false,0,"pg per L; picograms; litre","LOINC","MCnc","Clinical","",null,null,null,null,false],[false,"picogram per milligram","pg/mg","PG/MG","mass",1e-9,[0,0,0,0,0,0,0],"pg/mg",null,false,"M",null,1,false,false,0,"pg per mg; picograms","LOINC","MCnt","Clinical","",null,null,null,null,false],[false,"picogram per milliliter","pg/mL","PG/ML","mass",0.000001,[-3,0,1,0,0,0,0],"pg/mL",null,false,"M",null,1,false,false,0,"pg per mL; picograms per milliliter; millilitre","LOINC","MCnc","Clinical","",null,null,null,null,false],[false,"picogram per millimeter","pg/mm","PG/MM","mass",1e-9,[-1,0,1,0,0,0,0],"pg/mm",null,false,"M",null,1,false,false,0,"pg per mm; picogram/millimeter; picogram/millimetre; picograms per millimeter; millimetre","LOINC","Lineic Mass","Clinical","",null,null,null,null,false],[false,"picokatal","pkat","PKAT","catalytic activity",602213670000,[0,-1,0,0,0,0,0],"pkat","chemical",true,null,null,1,false,false,1,"pkats; picokatals","LOINC","CAct","Clinical","kat is a unit of catalytic activity with base units = mol/s. Rarely used because its units are too large to practically express catalytic activity. See enzyme unit [U] which is the standard unit for catalytic activity.","mol/s","MOL/S","1",1,false],[false,"picoliter","pL","PL","volume",1e-15,[3,0,0,0,0,0,0],"pL","iso1000",true,null,null,1,false,false,0,"picoliters; picolitres","LOINC","Vol","Clinical","","l",null,"1",1,false],[false,"picometer","pm","PM","length",1e-12,[1,0,0,0,0,0,0],"pm",null,false,"L",null,1,false,false,0,"picometers; picometres","LOINC","Len","Clinical","",null,null,null,null,false],[false,"picomole","pmol","PMOL","amount of substance",602213670000,[0,0,0,0,0,0,0],"pmol","si",true,null,null,1,false,false,1,"picomoles; pmols","LOINC","Sub","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"picomole per 24 hour","pmol/(24.h)","PMOL/HR","amount of substance",6970065.625,[0,-1,0,0,0,0,0],"pmol/h","si",true,null,null,1,false,false,1,"pmol/24hrs; pmol/24 hrs; pmol per 24 hrs; 24hrs; days; dy; picomoles per 24 hours","LOINC","SRat","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"picomole per day","pmol/d","PMOL/D","amount of substance",6970065.625,[0,-1,0,0,0,0,0],"pmol/d","si",true,null,null,1,false,false,1,"pmol/dy; pmol per day; 24 hours; 24hrs; 24 hrs; picomoles","LOINC","SRat","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"picomole per deciliter","pmol/dL","PMOL/DL","amount of substance",6022136700000000,[-3,0,0,0,0,0,0],"pmol/dL","si",true,null,null,1,false,false,1,"pmol per dL; picomoles per deciliter; decilitre","LOINC","SCnc","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"picomole per gram","pmol/g","PMOL/G","amount of substance",602213670000,[0,0,-1,0,0,0,0],"pmol/g","si",true,null,null,1,false,false,1,"pmol per gm; picomoles per gram; picomole/gram","LOINC","SCnt","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"picomole per hour per milliliter ","pmol/h/mL","(PMOL/HR)/ML","amount of substance",167281575000000,[-3,-1,0,0,0,0,0],"(pmol/h)/mL","si",true,null,null,1,false,false,1,"pmol/hrs/mL; pmol per hrs per mL; picomoles per hour per milliliter; millilitre; micro enzyme units per volume; enzymatic activity; enzyme activity","LOINC","CCnc","Clinical","unit for the enzyme unit U = umol/min. ","10*23","10*23","6.0221367",6.0221367,false],[false,"picomole per liter","pmol/L","PMOL/L","amount of substance",602213670000000,[-3,0,0,0,0,0,0],"pmol/L","si",true,null,null,1,false,false,1,"picomole/liter; pmol per L; picomoles; litre","LOINC","SCnc","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"picomole per minute","pmol/min","PMOL/MIN","amount of substance",10036894500,[0,-1,0,0,0,0,0],"pmol/min","si",true,null,null,1,false,false,1,"picomole/minute; pmol per min; picomoles per minute; micro enzyme units; enzymatic activity; enzyme activity","LOINC","CCnc","Clinical","unit for the enzyme unit U = umol/min. pmol/min = uU (micro enzyme unit)","10*23","10*23","6.0221367",6.0221367,false],[false,"picomole per milliliter","pmol/mL","PMOL/ML","amount of substance",602213670000000000,[-3,0,0,0,0,0,0],"pmol/mL","si",true,null,null,1,false,false,1,"picomole/milliliter; picomole/millilitre; pmol per mL; picomoles; millilitre; picomols; pmols","LOINC","SCnc","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"picomole per micromole","pmol/umol","PMOL/UMOL","amount of substance",0.000001,[0,0,0,0,0,0,0],"pmol/\u03bcmol","si",true,null,null,1,false,false,0,"pmol/mcgmol; picomole/micromole; pmol per umol; pmol per mcgmol; picomoles ","LOINC","SRto","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"picosecond","ps","PS","time",1e-12,[0,1,0,0,0,0,0],"ps",null,false,"T",null,1,false,false,0,"picoseconds; psec","LOINC","Time","Clinical","",null,null,null,null,false],[false,"picotesla","pT","PT","magnetic flux density",1e-9,[0,-1,1,0,0,-1,0],"pT","si",true,null,null,1,false,false,0,"picoteslas","LOINC","","Clinical","SI unit of magnetic field strength for magnetic field B","Wb/m2","WB/M2","1",1,false],[false,"enzyme unit per 12 hour","U/(12.h)","U/HR","catalytic activity",232335520833.33334,[0,-2,0,0,0,0,0],"U/h","chemical",true,null,null,1,false,false,1,"U/12hrs; U/ 12hrs; U per 12 hrs; 12hrs; enzyme units per 12 hours; enzyme activity; enzymatic activity per time; umol per min per 12 hours; micromoles per minute per 12 hours; umol/min/12hr","LOINC","CRat","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min)","umol/min","UMOL/MIN","1",1,false],[false,"enzyme unit per 2 hour","U/(2.h)","U/HR","catalytic activity",1394013125000,[0,-2,0,0,0,0,0],"U/h","chemical",true,null,null,1,false,false,1,"U/2hrs; U/ 2hrs; U per 2 hrs; 2hrs; enzyme units per 2 hours; enzyme activity; enzymatic activity per time; umol per minute per 2 hours; micromoles per minute; umol/min/2hr; umol per min per 2hr","LOINC","CRat","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min)","umol/min","UMOL/MIN","1",1,false],[false,"enzyme unit per 24 hour","U/(24.h)","U/HR","catalytic activity",116167760416.66667,[0,-2,0,0,0,0,0],"U/h","chemical",true,null,null,1,false,false,1,"U/24hrs; U/ 24hrs; U per 24 hrs; 24hrs; enzyme units per 24 hours; enzyme activity; enzymatic activity per time; micromoles per minute per 24 hours; umol/min/24hr; umol per min per 24hr","LOINC","CRat","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min)","umol/min","UMOL/MIN","1",1,false],[false,"enzyme unit per 10","U/10","U","catalytic activity",1003689450000000,[0,-1,0,0,0,0,0],"U","chemical",true,null,null,1,false,false,1,"enzyme unit/10; U per 10; enzyme units per 10; enzymatic activity; enzyme activity; micromoles per minute; umol/min/10","LOINC","CCnc","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min)","umol/min","UMOL/MIN","1",1,false],[false,"enzyme unit per 10 billion","U/10*10","U/(10*10)","catalytic activity",1003689.45,[0,-1,0,0,0,0,0],"U/(1010)","chemical",true,null,null,1,false,false,1,"U per 10*10; enzyme units per 10*10; U per 10 billion; enzyme units; enzymatic activity; micromoles per minute per 10 billion; umol/min/10*10","LOINC","CCnc","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min)","umol/min","UMOL/MIN","1",1,false],[false,"enzyme unit per trillion","U/10*12","U/(10*12)","catalytic activity",10036.8945,[0,-1,0,0,0,0,0],"U/(1012)","chemical",true,null,null,1,false,false,1,"enzyme unit/10*12; U per 10*12; enzyme units per 10*12; enzyme units per trillion; enzymatic activity; micromoles per minute per trillion; umol/min/10*12; umol per min per 10*12","LOINC","CCnc","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min)","umol/min","UMOL/MIN","1",1,false],[false,"enzyme unit per million","U/10*6","U/(10*6)","catalytic activity",10036894500,[0,-1,0,0,0,0,0],"U/(106)","chemical",true,null,null,1,false,false,1,"enzyme unit/10*6; U per 10*6; enzyme units per 10*6; enzyme units; enzymatic activity per volume; micromoles per minute per million; umol/min/10*6; umol per min per 10*6","LOINC","CCnc","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min)","umol/min","UMOL/MIN","1",1,false],[false,"enzyme unit per billion","U/10*9","U/(10*9)","catalytic activity",10036894.5,[0,-1,0,0,0,0,0],"U/(109)","chemical",true,null,null,1,false,false,1,"enzyme unit/10*9; U per 10*9; enzyme units per 10*9; enzymatic activity per volume; micromoles per minute per billion; umol/min/10*9; umol per min per 10*9","LOINC","CCnc","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min)","umol/min","UMOL/MIN","1",1,false],[false,"enzyme unit per day","U/d","U/D","catalytic activity",116167760416.66667,[0,-2,0,0,0,0,0],"U/d","chemical",true,null,null,1,false,false,1,"U/dy; enzyme units per day; enzyme units; enzyme activity; enzymatic activity per time; micromoles per minute per day; umol/min/day; umol per min per day","LOINC","CRat","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min)","umol/min","UMOL/MIN","1",1,false],[false,"enzyme unit per deciliter","U/dL","U/DL","catalytic activity",100368945000000000000,[-3,-1,0,0,0,0,0],"U/dL","chemical",true,null,null,1,false,false,1,"U per dL; enzyme units per deciliter; decilitre; micromoles per minute per deciliter; umol/min/dL; umol per min per dL","LOINC","CCnc","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min)","umol/min","UMOL/MIN","1",1,false],[false,"enzyme unit per gram","U/g","U/G","catalytic activity",10036894500000000,[0,-1,-1,0,0,0,0],"U/g","chemical",true,null,null,1,false,false,1,"U/gm; U per gm; enzyme units per gram; micromoles per minute per gram; umol/min/g; umol per min per g","LOINC","CCnt","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min)","umol/min","UMOL/MIN","1",1,false],[false,"enzyme unit per hour","U/h","U/HR","catalytic activity",2788026250000,[0,-2,0,0,0,0,0],"U/h","chemical",true,null,null,1,false,false,1,"U/hr; U per hr; enzyme units per hour; micromoles per minute per hour; umol/min/hr; umol per min per hr","LOINC","CRat","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min)","umol/min","UMOL/MIN","1",1,false],[false,"enzyme unit per liter","U/L","U/L","catalytic activity",10036894500000000000,[-3,-1,0,0,0,0,0],"U/L","chemical",true,null,null,1,false,false,1,"enzyme unit/liter; enzyme unit/litre; U per L; enzyme units per liter; enzyme unit per litre; micromoles per minute per liter; umol/min/L; umol per min per L","LOINC","CCnc","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min)","umol/min","UMOL/MIN","1",1,false],[false,"enzyme unit per minute","U/min","U/MIN","catalytic activity",167281575000000,[0,-2,0,0,0,0,0],"U/min","chemical",true,null,null,1,false,false,1,"enzyme unit/minute; U per min; enzyme units; umol/min/min; micromoles per minute per minute; micromoles per min per min; umol","LOINC","CRat","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min)","umol/min","UMOL/MIN","1",1,false],[false,"enzyme unit per milliliter","U/mL","U/ML","catalytic activity",1.00368945e+22,[-3,-1,0,0,0,0,0],"U/mL","chemical",true,null,null,1,false,false,1,"U per mL; enzyme units per milliliter; millilitre; micromoles per minute per milliliter; umol/min/mL; umol per min per mL","LOINC","CCnc","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min)","umol/min","UMOL/MIN","1",1,false],[false,"enzyme unit per second","U/s","U/S","catalytic activity",10036894500000000,[0,-2,0,0,0,0,0],"U/s","chemical",true,null,null,1,false,false,1,"U/sec; U per second; enzyme units per second; micromoles per minute per second; umol/min/sec; umol per min per sec","LOINC","CRat","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min)","umol/min","UMOL/MIN","1",1,false],[false,"micro international unit","u[IU]","U[IU]","arbitrary",0.000001,[0,0,0,0,0,0,0],"\u03bci.U.","chemical",true,null,null,1,false,true,0,"uIU; u IU; microinternational units","LOINC","Arb","Clinical","International units (IU) are analyte and reference specimen specific arbitrary units (held at WHO)","[iU]","[IU]","1",1,false],[false,"micro international unit per liter","u[IU]/L","U[IU]/L","arbitrary",0.001,[-3,0,0,0,0,0,0],"(\u03bci.U.)/L","chemical",true,null,null,1,false,true,0,"uIU/L; u IU/L; uIU per L; microinternational units per liter; litre; ","LOINC","ACnc","Clinical","International units (IU) are analyte and reference specimen specific arbitrary units (held at WHO)","[iU]","[IU]","1",1,false],[false,"micro international unit per milliliter","u[IU]/mL","U[IU]/ML","arbitrary",1,[-3,0,0,0,0,0,0],"(\u03bci.U.)/mL","chemical",true,null,null,1,false,true,0,"uIU/mL; u IU/mL; uIU per mL; microinternational units per milliliter; millilitre","LOINC","ACnc","Clinical","International units (IU) are analyte and reference specimen specific arbitrary units (held at WHO)","[iU]","[IU]","1",1,false],[false,"microequivalent","ueq","UEQ","amount of substance",602213670000000000,[0,0,0,0,0,0,0],"\u03bceq","chemical",true,null,null,1,false,false,1,"microequivalents; 10^-6 equivalents; 10-6 equivalents","LOINC","Sub","Clinical","","mol","MOL","1",1,false],[false,"microequivalent per liter","ueq/L","UEQ/L","amount of substance",602213670000000000000,[-3,0,0,0,0,0,0],"\u03bceq/L","chemical",true,null,null,1,false,false,1,"ueq per liter; litre; microequivalents","LOINC","MCnc","Clinical","","mol","MOL","1",1,false],[false,"microequivalent per milliliter","ueq/mL","UEQ/ML","amount of substance",6.0221367000000003e+23,[-3,0,0,0,0,0,0],"\u03bceq/mL","chemical",true,null,null,1,false,false,1,"ueq per milliliter; millilitre; microequivalents","LOINC","MCnc","Clinical","","mol","MOL","1",1,false],[false,"microgram","ug","UG","mass",0.000001,[0,0,1,0,0,0,0],"\u03bcg",null,false,"M",null,1,false,false,0,"mcg; micrograms; 10^-6 grams; 10-6 grams","LOINC","Mass","Clinical","",null,null,null,null,false],[false,"microgram per 100 gram","ug/(100.g)","UG/G","mass",1e-8,[0,0,0,0,0,0,0],"\u03bcg/g",null,false,"M",null,1,false,false,0,"ug/100gm; ug/100 gm; mcg; ug per 100g; 100 gm; mcg per 100g; micrograms per 100 grams","LOINC","MCnt","Clinical","",null,null,null,null,false],[false,"microgram per 24 hour","ug/(24.h)","UG/HR","mass",1.1574074074074074e-11,[0,-1,1,0,0,0,0],"\u03bcg/h",null,false,"M",null,1,false,false,0,"ug/24hrs; ug/24 hrs; mcg/24hrs; ug per 24hrs; mcg per 24hrs; 24 hrs; micrograms per 24 hours","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"microgram per 8 hour","ug/(8.h)","UG/HR","mass",3.472222222222222e-11,[0,-1,1,0,0,0,0],"\u03bcg/h",null,false,"M",null,1,false,false,0,"ug/8hrs; ug/8 hrs; mcg/8hrs; ug per 8hrs; mcg per 8hrs; 8 hrs; micrograms per 8 hours; shift","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"microgram per square foot (international)","ug/[sft_i]","UG/[SFT_I]","mass",0.000010763910416709721,[-2,0,1,0,0,0,0],"\u03bcg",null,false,"M",null,1,false,false,0,"ug/sft; ug/ft2; ug/ft^2; ug/sq. ft; micrograms; sq. foot; foot squared","LOINC","ArMass","Clinical","",null,null,null,null,false],[false,"microgram per day","ug/d","UG/D","mass",1.1574074074074074e-11,[0,-1,1,0,0,0,0],"\u03bcg/d",null,false,"M",null,1,false,false,0,"ug/dy; mcg/dy; ug per day; mcg; micrograms per day","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"microgram per deciliter","ug/dL","UG/DL","mass",0.009999999999999998,[-3,0,1,0,0,0,0],"\u03bcg/dL",null,false,"M",null,1,false,false,0,"ug per dL; mcg/dl; mcg per dl; micrograms per deciliter; decilitre","LOINC","MCnc","Clinical","",null,null,null,null,false],[false,"microgram per gram","ug/g","UG/G","mass",0.000001,[0,0,0,0,0,0,0],"\u03bcg/g",null,false,"M",null,1,false,false,0,"ug per gm; mcg/gm; mcg per g; micrograms per gram","LOINC","MCnt","Clinical","",null,null,null,null,false],[false,"microgram per hour","ug/h","UG/HR","mass",2.7777777777777777e-10,[0,-1,1,0,0,0,0],"\u03bcg/h",null,false,"M",null,1,false,false,0,"ug/hr; mcg/hr; mcg per hr; ug per hr; ug per hour; micrograms","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"microgram per kilogram","ug/kg","UG/KG","mass",9.999999999999999e-10,[0,0,0,0,0,0,0],"\u03bcg/kg",null,false,"M",null,1,false,false,0,"ug per kg; mcg/kg; mcg per kg; micrograms per kilogram","LOINC","MCnt","Clinical","",null,null,null,null,false],[false,"microgram per kilogram per 8 hour","ug/kg/(8.h)","(UG/KG)/HR","mass",3.472222222222222e-14,[0,-1,0,0,0,0,0],"(\u03bcg/kg)/h",null,false,"M",null,1,false,false,0,"ug/kg/8hrs; mcg/kg/8hrs; ug/kg/8 hrs; mcg/kg/8 hrs; ug per kg per 8hrs; 8 hrs; mcg per kg per 8hrs; micrograms per kilograms per 8 hours; shift","LOINC","","Clinical","unit used to measure mass dose rate per patient body mass",null,null,null,null,false],[false,"microgram per kilogram per day","ug/kg/d","(UG/KG)/D","mass",1.1574074074074072e-14,[0,-1,0,0,0,0,0],"(\u03bcg/kg)/d",null,false,"M",null,1,false,false,0,"ug/(kg.d); ug/kg/dy; mcg/kg/day; ug per kg per dy; 24 hours; 24hrs; mcg; kilograms; microgram per kilogram and day","LOINC","","Clinical","unit used to measure mass dose rate per patient body mass",null,null,null,null,false],[false,"microgram per kilogram per hour","ug/kg/h","(UG/KG)/HR","mass",2.7777777777777774e-13,[0,-1,0,0,0,0,0],"(\u03bcg/kg)/h",null,false,"M",null,1,false,false,0,"ug/(kg.h); ug/kg/hr; mcg/kg/hr; ug per kg per hr; mcg per kg per hr; kilograms","LOINC","","Clinical","unit used to measure mass dose rate per patient body mass",null,null,null,null,false],[false,"microgram per kilogram per minute","ug/kg/min","(UG/KG)/MIN","mass",1.6666666666666664e-11,[0,-1,0,0,0,0,0],"(\u03bcg/kg)/min",null,false,"M",null,1,false,false,0,"ug/kg/min; ug/kg/min; mcg/kg/min; ug per kg per min; mcg; micrograms per kilograms per minute ","LOINC","","Clinical","unit used to measure mass dose rate per patient body mass",null,null,null,null,false],[false,"microgram per liter","ug/L","UG/L","mass",0.001,[-3,0,1,0,0,0,0],"\u03bcg/L",null,false,"M",null,1,false,false,0,"mcg/L; ug per L; mcg; micrograms per liter; litre ","LOINC","MCnc","Clinical","",null,null,null,null,false],[false,"microgram per liter per 24 hour","ug/L/(24.h)","(UG/L)/HR","mass",1.1574074074074074e-8,[-3,-1,1,0,0,0,0],"(\u03bcg/L)/h",null,false,"M",null,1,false,false,0,"ug/L/24hrs; ug/L/24 hrs; mcg/L/24hrs; ug per L per 24hrs; 24 hrs; day; dy mcg; micrograms per liters per 24 hours; litres","LOINC","","Clinical","unit used to measure mass dose rate per patient body mass",null,null,null,null,false],[false,"microgram per square meter","ug/m2","UG/M2","mass",0.000001,[-2,0,1,0,0,0,0],"\u03bcg/(m2)",null,false,"M",null,1,false,false,0,"ug/m^2; ug/sq. m; mcg/m2; mcg/m^2; mcg/sq. m; ug per m2; m^2; sq. meter; mcg; micrograms per square meter; meter squared; metre","LOINC","ArMass","Clinical","unit used to measure mass dose per patient body surface area",null,null,null,null,false],[false,"microgram per cubic meter","ug/m3","UG/M3","mass",0.000001,[-3,0,1,0,0,0,0],"\u03bcg/(m3)",null,false,"M",null,1,false,false,0,"ug/m^3; ug/cu. m; mcg/m3; mcg/m^3; mcg/cu. m; ug per m3; ug per m^3; ug per cu. m; mcg; micrograms per cubic meter; meter cubed; metre","LOINC","MCnc","Clinical","",null,null,null,null,false],[false,"microgram per milligram","ug/mg","UG/MG","mass",0.001,[0,0,0,0,0,0,0],"\u03bcg/mg",null,false,"M",null,1,false,false,0,"ug per mg; mcg/mg; mcg per mg; micromilligrams per milligram","LOINC","MCnt","Clinical","",null,null,null,null,false],[false,"microgram per minute","ug/min","UG/MIN","mass",1.6666666666666667e-8,[0,-1,1,0,0,0,0],"\u03bcg/min",null,false,"M",null,1,false,false,0,"ug per min; mcg/min; mcg per min; microminutes per minute","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"microgram per milliliter","ug/mL","UG/ML","mass",1,[-3,0,1,0,0,0,0],"\u03bcg/mL",null,false,"M",null,1,false,false,0,"ug per mL; mcg/mL; mcg per mL; micrograms per milliliter; millilitre","LOINC","MCnc","Clinical","",null,null,null,null,false],[false,"microgram per millimole","ug/mmol","UG/MMOL","mass",1.660540186674939e-27,[0,0,1,0,0,0,0],"\u03bcg/mmol",null,false,"M",null,1,false,false,-1,"ug per mmol; mcg/mmol; mcg per mmol; micrograms per millimole","LOINC","Ratio","Clinical","",null,null,null,null,false],[false,"microgram per nanogram","ug/ng","UG/NG","mass",999.9999999999999,[0,0,0,0,0,0,0],"\u03bcg/ng",null,false,"M",null,1,false,false,0,"ug per ng; mcg/ng; mcg per ng; micrograms per nanogram","LOINC","MCnt","Clinical","",null,null,null,null,false],[false,"microkatal","ukat","UKAT","catalytic activity",602213670000000000,[0,-1,0,0,0,0,0],"\u03bckat","chemical",true,null,null,1,false,false,1,"microkatals; ukats","LOINC","CAct","Clinical","kat is a unit of catalytic activity with base units = mol/s. Rarely used because its units are too large to practically express catalytic activity. See enzyme unit [U] which is the standard unit for catalytic activity.","mol/s","MOL/S","1",1,false],[false,"microliter","uL","UL","volume",1e-9,[3,0,0,0,0,0,0],"\u03bcL","iso1000",true,null,null,1,false,false,0,"microliters; microlitres; mcl","LOINC","Vol","Clinical","","l",null,"1",1,false],[false,"microliter per 2 hour","uL/(2.h)","UL/HR","volume",1.388888888888889e-13,[3,-1,0,0,0,0,0],"\u03bcL/h","iso1000",true,null,null,1,false,false,0,"uL/2hrs; uL/2 hrs; mcg/2hr; mcg per 2hr; uL per 2hr; uL per 2 hrs; microliters per 2 hours; microlitres ","LOINC","VRat","Clinical","","l",null,"1",1,false],[false,"microliter per hour","uL/h","UL/HR","volume",2.777777777777778e-13,[3,-1,0,0,0,0,0],"\u03bcL/h","iso1000",true,null,null,1,false,false,0,"uL/hr; mcg/hr; mcg per hr; uL per hr; microliters per hour; microlitres","LOINC","VRat","Clinical","","l",null,"1",1,false],[false,"micrometer","um","UM","length",0.000001,[1,0,0,0,0,0,0],"\u03bcm",null,false,"L",null,1,false,false,0,"micrometers; micrometres; \u03bcm; microns","LOINC","Len","Clinical","Unit of length that is usually used in tests related to the eye",null,null,null,null,false],[false,"microns per second","um/s","UM/S","length",0.000001,[1,-1,0,0,0,0,0],"\u03bcm/s",null,false,"L",null,1,false,false,0,"um/sec; micron/second; microns/second; um per sec; micrometers per second; micrometres","LOINC","Vel","Clinical","",null,null,null,null,false],[false,"micromole","umol","UMOL","amount of substance",602213670000000000,[0,0,0,0,0,0,0],"\u03bcmol","si",true,null,null,1,false,false,1,"micromoles; umols","LOINC","Sub","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"micromole per 2 hour","umol/(2.h)","UMOL/HR","amount of substance",83640787500000,[0,-1,0,0,0,0,0],"\u03bcmol/h","si",true,null,null,1,false,false,1,"umol/2hrs; umol/2 hrs; umol per 2 hrs; 2hrs; micromoles per 2 hours","LOINC","SRat","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"micromole per 24 hour","umol/(24.h)","UMOL/HR","amount of substance",6970065625000,[0,-1,0,0,0,0,0],"\u03bcmol/h","si",true,null,null,1,false,false,1,"umol/24hrs; umol/24 hrs; umol per 24 hrs; per 24hrs; micromoles per 24 hours","LOINC","SRat","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"micromole per 8 hour","umol/(8.h)","UMOL/HR","amount of substance",20910196875000,[0,-1,0,0,0,0,0],"\u03bcmol/h","si",true,null,null,1,false,false,1,"umol/8hr; umol/8 hr; umol per 8 hr; umol per 8hr; umols per 8hr; umol per 8 hours; micromoles per 8 hours; shift","LOINC","SRat","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"micromole per day","umol/d","UMOL/D","amount of substance",6970065625000,[0,-1,0,0,0,0,0],"\u03bcmol/d","si",true,null,null,1,false,false,1,"umol/day; umol per day; umols per day; umol per days; micromoles per days; umol/24hr; umol/24 hr; umol per 24 hr; umol per 24hr; umols per 24hr; umol per 24 hours; micromoles per 24 hours","LOINC","SRat","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"micromole per deciliter","umol/dL","UMOL/DL","amount of substance",6.0221367e+21,[-3,0,0,0,0,0,0],"\u03bcmol/dL","si",true,null,null,1,false,false,1,"micromole/deciliter; micromole/decilitre; umol per dL; micromoles per deciliters; micromole per decilitres","LOINC","SCnc","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"micromole per gram","umol/g","UMOL/G","amount of substance",602213670000000000,[0,0,-1,0,0,0,0],"\u03bcmol/g","si",true,null,null,1,false,false,1,"micromole/gram; umol per g; micromoles per gram","LOINC","SCnt; Ratio","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"micromole per hour","umol/h","UMOL/HR","amount of substance",167281575000000,[0,-1,0,0,0,0,0],"\u03bcmol/h","si",true,null,null,1,false,false,1,"umol/hr; umol per hr; umol per hour; micromoles per hours","LOINC","SRat","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"micromole per kilogram","umol/kg","UMOL/KG","amount of substance",602213670000000,[0,0,-1,0,0,0,0],"\u03bcmol/kg","si",true,null,null,1,false,false,1,"umol per kg; micromoles per kilogram","LOINC","SCnt","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"micromole per liter","umol/L","UMOL/L","amount of substance",602213670000000000000,[-3,0,0,0,0,0,0],"\u03bcmol/L","si",true,null,null,1,false,false,1,"micromole/liter; micromole/litre; umol per liter; micromoles per liter; litre","LOINC","SCnc","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"micromole per liter per hour","umol/L/h","(UMOL/L)/HR","amount of substance",167281575000000000,[-3,-1,0,0,0,0,0],"(\u03bcmol/L)/h","si",true,null,null,1,false,false,1,"umol/liter/hr; umol/litre/hr; umol per L per hr; umol per liter per hour; micromoles per liters per hour; litre","LOINC","CCnc","Clinical","unit for the enzyme unit U = umol/min; umol/L/h is a derived unit of enzyme units","10*23","10*23","6.0221367",6.0221367,false],[false,"micromole per milligram","umol/mg","UMOL/MG","amount of substance",602213670000000000000,[0,0,-1,0,0,0,0],"\u03bcmol/mg","si",true,null,null,1,false,false,1,"micromole/milligram; umol per mg; micromoles per milligram","LOINC","SCnt","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"micromole per minute","umol/min","UMOL/MIN","amount of substance",10036894500000000,[0,-1,0,0,0,0,0],"\u03bcmol/min","si",true,null,null,1,false,false,1,"micromole/minute; umol per min; micromoles per minute; enzyme units","LOINC","CAct","Clinical","unit for the enzyme unit U = umol/min","10*23","10*23","6.0221367",6.0221367,false],[false,"micromole per minute per gram","umol/min/g","(UMOL/MIN)/G","amount of substance",10036894500000000,[0,-1,-1,0,0,0,0],"(\u03bcmol/min)/g","si",true,null,null,1,false,false,1,"umol/min/gm; umol per min per gm; micromoles per minutes per gram; U/g; enzyme units","LOINC","CCnt","Clinical","unit for the enzyme unit U = umol/min. umol/min/g = U/g","10*23","10*23","6.0221367",6.0221367,false],[false,"micromole per minute per liter","umol/min/L","(UMOL/MIN)/L","amount of substance",10036894500000000000,[-3,-1,0,0,0,0,0],"(\u03bcmol/min)/L","si",true,null,null,1,false,false,1,"umol/min/liter; umol/minute/liter; micromoles per minutes per liter; litre; enzyme units; U/L","LOINC","CCnc","Clinical","unit for the enzyme unit U = umol/min. umol/min/L = U/L","10*23","10*23","6.0221367",6.0221367,false],[false,"micromole per milliliter","umol/mL","UMOL/ML","amount of substance",6.0221367000000003e+23,[-3,0,0,0,0,0,0],"\u03bcmol/mL","si",true,null,null,1,false,false,1,"umol per mL; micromoles per milliliter; millilitre","LOINC","SCnc","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"micromole per milliliter per minute","umol/mL/min","(UMOL/ML)/MIN","amount of substance",1.00368945e+22,[-3,-1,0,0,0,0,0],"(\u03bcmol/mL)/min","si",true,null,null,1,false,false,1,"umol per mL per min; micromoles per milliliters per minute; millilitres","LOINC","CCnc","Clinical","unit for the enzyme unit U = umol/min. umol/mL/min = U/mL","10*23","10*23","6.0221367",6.0221367,false],[false,"micromole per millimole","umol/mmol","UMOL/MMOL","amount of substance",0.001,[0,0,0,0,0,0,0],"\u03bcmol/mmol","si",true,null,null,1,false,false,0,"umol per mmol; micromoles per millimole","LOINC","SRto","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"micromole per mole","umol/mol","UMOL/MOL","amount of substance",0.000001,[0,0,0,0,0,0,0],"\u03bcmol/mol","si",true,null,null,1,false,false,0,"umol per mol; micromoles per mole","LOINC","SRto","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"micromole per micromole","umol/umol","UMOL/UMOL","amount of substance",1,[0,0,0,0,0,0,0],"\u03bcmol/\u03bcmol","si",true,null,null,1,false,false,0,"umol per umol; micromoles per micromole","LOINC","Srto; SFr; EntSRto","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"microOhm","uOhm","UOHM","electric resistance",0.001,[2,-1,1,0,0,-2,0],"\u03bc\u03a9","si",true,null,null,1,false,false,0,"microOhms; \xb5\u03a9","LOINC","","Clinical","unit of electric resistance","V/A","V/A","1",1,false],[false,"microsecond","us","US","time",0.000001,[0,1,0,0,0,0,0],"\u03bcs",null,false,"T",null,1,false,false,0,"microseconds","LOINC","Time","Clinical","",null,null,null,null,false],[false,"micro enzyme unit per gram","uU/g","UU/G","catalytic activity",10036894500,[0,-1,-1,0,0,0,0],"\u03bcU/g","chemical",true,null,null,1,false,false,1,"uU per gm; micro enzyme units per gram; micro enzymatic activity per mass; enzyme activity","LOINC","CCnt","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min); 1 uU = 1pmol/min","umol/min","UMOL/MIN","1",1,false],[false,"micro enzyme unit per liter","uU/L","UU/L","catalytic activity",10036894500000,[-3,-1,0,0,0,0,0],"\u03bcU/L","chemical",true,null,null,1,false,false,1,"uU per L; micro enzyme units per liter; litre; enzymatic activity per volume; enzyme activity ","LOINC","CCnc","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min); 1 uU = 1pmol/min","umol/min","UMOL/MIN","1",1,false],[false,"micro enzyme unit per milliliter","uU/mL","UU/ML","catalytic activity",10036894500000000,[-3,-1,0,0,0,0,0],"\u03bcU/mL","chemical",true,null,null,1,false,false,1,"uU per mL; micro enzyme units per milliliter; millilitre; enzymatic activity per volume; enzyme activity","LOINC","CCnc","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min); 1 uU = 1pmol/min","umol/min","UMOL/MIN","1",1,false],[false,"microvolt","uV","UV","electric potential",0.001,[2,-2,1,0,0,-1,0],"\u03bcV","si",true,null,null,1,false,false,0,"microvolts","LOINC","Elpot","Clinical","unit of electric potential (voltage)","J/C","J/C","1",1,false]]}}')},82:Se=>{"use strict";Se.exports=JSON.parse('{"name":"fhirpath","version":"3.6.0","description":"A FHIRPath engine","main":"src/fhirpath.js","dependencies":{"@lhncbc/ucum-lhc":"^4.1.3","antlr4":"~4.9.3","commander":"^2.18.0","date-fns":"^1.30.1","js-yaml":"^3.13.1"},"devDependencies":{"@babel/core":"^7.21.4","@babel/eslint-parser":"^7.17.0","@babel/preset-env":"^7.16.11","babel-loader":"^8.2.3","benny":"^3.7.1","bestzip":"^2.2.0","copy-webpack-plugin":"^6.0.3","cypress":"^10.3.0","eslint":"^8.10.0","fhir":"^4.10.3","grunt":"^1.5.2","grunt-cli":"^1.4.3","grunt-text-replace":"^0.4.0","jasmine-spec-reporter":"^4.2.1","jest":"^27.3.1","jit-grunt":"^0.10.0","lodash":"^4.17.21","open":"^8.4.0","rimraf":"^3.0.0","tmp":"0.0.33","webpack":"^5.11.1","webpack-bundle-analyzer":"^4.4.2","webpack-cli":"^4.9.1","xml2js":"^0.5.0","yargs":"^15.1.0"},"engines":{"node":">=8.9.0"},"scripts":{"generateParser":"cd src/parser; rimraf ./generated/*; java -Xmx500M -cp \\"../../antlr-4.9.3-complete.jar:$CLASSPATH\\" org.antlr.v4.Tool -o generated -Dlanguage=JavaScript FHIRPath.g4; grunt updateParserRequirements","build":"cd browser-build && webpack && rimraf fhirpath.zip && bestzip fhirpath.zip LICENSE.md fhirpath.min.js fhirpath.r5.min.js fhirpath.r4.min.js fhirpath.stu3.min.js fhirpath.dstu2.min.js && rimraf LICENSE.md","test:unit":"jest && TZ=America/New_York jest && TZ=Europe/Paris jest","test:unit:debug":"echo \'open chrome chrome://inspect/\' && node --inspect node_modules/.bin/jest --runInBand","build:demo":"npm run build && cd demo && npm run build","test:e2e":"npm run build:demo && cypress run","test":"npm run lint && npm run test:unit && npm run test:e2e && echo \\"For tests specific to IE 11, open browser-build/test/index.html in IE 11, and confirm that the tests on that page pass.\\"","lint":"eslint src/parser/index.js src/*.js converter/","compare-performance":"node ./test/benchmark.js"},"bin":{"fhirpath":"bin/fhirpath"},"repository":"github:HL7/fhirpath.js","license":"MIT"}')},4147:Se=>{"use strict";Se.exports=JSON.parse('{"name":"matchbox","version":"3.5.2","license":"MIT","scripts":{"ng":"ng","start":"ng serve","build":"ng build --configuration production","build-matchbox":"ng build --configuration production --output-path ../matchbox-server/src/main/resources/static","test":"ng test","test-ci":"ng test --no-watch --no-progress --browsers=ChromeHeadlessNoSandbox --code-coverage","lint":"ng lint","e2e":"ng e2e"},"private":true,"dependencies":{"@angular-devkit/build-angular":"^16.1.4","@angular/animations":"^16.1.5","@angular/cdk":"^16.1.5","@angular/common":"^16.1.7","@angular/core":"^16.1.7","@angular/forms":"^16.1.7","@angular/material":"^16.1.6","@angular/platform-browser":"^16.1.7","@angular/platform-browser-dynamic":"^16.1.7","@angular/router":"^16.1.7","@ngx-translate/core":"^15.0.0","@ngx-translate/http-loader":"^8.0.0","ace-builds":"^1.23.4","angular-oauth2-oidc":"^15.0.1","browserify-zlib":"^0.2.0","debug":"^4.3.1","fhir-kit-client":"1.9.2","fhirpath":"^3.6.0","highlightjs-line-numbers.js":"^2.8.0","js-untar":"^2.0.0","ngx-highlightjs":"^10.0.0","pako":"^2.1.0","rxjs":"^7.8.1","tslib":"^2.6.1","zone.js":"^0.13.1"},"devDependencies":{"@angular/cli":"^16.1.6","@angular-eslint/builder":"^16.1.0","@angular-eslint/eslint-plugin":"^16.1.0","@angular-eslint/eslint-plugin-template":"^16.1.0","@angular-eslint/schematics":"^16.1.0","@angular-eslint/template-parser":"^16.1.0","@angular/compiler":"^16.1.7","@angular/compiler-cli":"^16.1.7","@angular/language-service":"^16.1.5","@types/debug":"^4.1.8","@types/jasmine":"^4.3.5","@types/node":"^20.4.5","@types/pako":"^2.0.0","@typescript-eslint/eslint-plugin":"^6.2.0","@typescript-eslint/parser":"^6.2.0","eslint":"^8.45.0","husky":"^8.0.3","jasmine":"^5.1.0","jasmine-core":"^5.1.0","jasmine-spec-reporter":"^7.0.0","json-patch":"^0.7.0","karma":"^6.3.1","karma-chrome-launcher":"^3.2.0","karma-cli":"~2.0.0","karma-coverage-istanbul-reporter":"~3.0.2","karma-jasmine":"^5.1.0","karma-jasmine-html-reporter":"^2.1.0","prettier":"^3.0.0","pretty-quick":"^3.1.3","protractor":"~7.0.0","ts-node":"^10.9.1","tslint":"~6.1.0","typescript":"^5.1.6"},"browser":{"fs":false,"os":false,"path":false,"zlib":false},"husky":{"hooks":{"pre-commit":"pretty-quick --staged"}}}')}},Se=>{Se(Se.s=4913)}]); \ No newline at end of file diff --git a/matchbox-server/src/main/resources/static/main.f258ac006dd6bc27.js b/matchbox-server/src/main/resources/static/main.f258ac006dd6bc27.js deleted file mode 100644 index 8047e358927..00000000000 --- a/matchbox-server/src/main/resources/static/main.f258ac006dd6bc27.js +++ /dev/null @@ -1 +0,0 @@ -(self.webpackChunkmatchbox_formfiller=self.webpackChunkmatchbox_formfiller||[]).push([[179],{9473:(Se,X)=>{"use strict";Object.defineProperty(X,"__esModule",{value:!0}),X.Ucum=void 0,X.Ucum={dimLen_:7,validOps_:[".","/"],codeSep_:": ",valMsgStart_:"Did you mean ",valMsgEnd_:"?",cnvMsgStart_:"We assumed you meant ",cnvMsgEnd_:".",openEmph_:" ->",closeEmph_:"<- ",openEmphHTML_:' ',closeEmphHTML_:" ",bracesMsg_:"FYI - annotations (text in curly braces {}) are ignored, except that an annotation without a leading symbol implies the default unit 1 (the unity).",needMoleWeightMsg_:"Did you wish to convert between mass and moles? The molecular weight of the substance represented by the units is required to perform the conversion.",csvCols_:{"case-sensitive code":"csCode_","LOINC property":"loincProperty_","name (display)":"name_",synonyms:"synonyms_",source:"source_",category:"category_",Guidance:"guidance_"},inputKey_:"case-sensitive code",specUnits_:{"B[10.nV]":"specialUnitOne","[m/s2/Hz^(1/2)]":"specialUnitTwo"}}},1995:(Se,X,g)=>{"use strict";X.R=void 0;var p=g(9473),C=g(4864);class b{constructor(v){if(0===p.Ucum.dimLen_)throw new Error("Dimension.setDimensionLen must be called before Dimension constructor");if(null==v)this.assignZero();else if(v instanceof Array){if(v.length!==p.Ucum.dimLen_)throw new Error(`Parameter error, incorrect length of vector passed to Dimension constructor, vector = ${JSON.stringify(v)}`);this.dimVec_=[];for(let a=0;a=p.Ucum.dimLen_)throw new Error("Parameter error, invalid element number specified for Dimension constructor");this.assignZero(),this.dimVec_[v]=1}}setElementAt(v,a){if(!C(v)||v<0||v>=p.Ucum.dimLen_)throw new Error(`Dimension.setElementAt called with an invalid index position (${v})`);this.dimVec_||this.assignZero(),null==a&&(a=1),this.dimVec_[v]=a}getElementAt(v){if(!C(v)||v<0||v>=p.Ucum.dimLen_)throw new Error(`Dimension.getElementAt called with an invalid index position (${v})`);let a=null;return this.dimVec_&&(a=this.dimVec_[v]),a}getProperty(v){return this["_"===v.charAt(v.length-1)?v:v+"_"]}toString(){let v=null;return this.dimVec_&&(v="["+this.dimVec_.join(", ")+"]"),v}add(v){if(!v instanceof b)throw new Error(`Dimension.add called with an invalid parameter - ${typeof v} instead of a Dimension object`);if(this.dimVec_&&v.dimVec_)for(let a=0;a{"use strict";X.DP=function c(s){const l=s&&s.config;if(l){if(l.length&&s.data){const d=b(l);return s.data.map(v.bind(null,d))}return s.data}return s};function b(s){return s.map(l=>Array.isArray(l)?l:[l])}function v(s,l){let d={};return s.forEach((r,u)=>{let h=d;for(let m=0;m{"use strict";Object.defineProperty(X,"__esModule",{value:!0}),X.Prefix=void 0,g(9473),X.Prefix=class p{constructor(b){if(null==b.code_||null==b.name_||null==b.value_||void 0===b.exp_)throw new Error("Prefix constructor called missing one or more parameters. Prefix codes (cs or ci), name, value and exponent must all be specified and all but the exponent must not be null.");this.code_=b.code_,this.ciCode_=b.ciCode_,this.name_=b.name_,this.printSymbol_=b.printSymbol_,this.value_="string"==typeof b.value_?parseFloat(b.value_):b.value_,this.exp_=b.exp_}getValue(){return this.value_}getCode(){return this.code_}getCiCode(){return this.ciCode_}getName(){return this.name_}getPrintSymbol(){return this.printSymbol_}getExp(){return this.exp_}equals(b){return this.code_===b.code_&&this.ciCode_===b.ciCode_&&this.name_===b.name_&&this.printSymbol_===b.printSymbol_&&this.value_===b.value_&&this.exp_===b.exp_}}},8902:(Se,X)=>{"use strict";Object.defineProperty(X,"__esModule",{value:!0}),X.PrefixTables=X.PrefixTablesFactory=void 0;class g{constructor(){this.byCode_={},this.byValue_={}}prefixCount(){return Object.keys(this.byCode_).length}allPrefixesByValue(){let b="",o=Object.keys(this.byValue_),v=o.length;for(let a=0;a{"use strict";Object.defineProperty(X,"__esModule",{value:!0}),X.default=void 0;var n=new class g{constructor(){this.funcs={},this.funcs.cel={cnvTo:function(C){return C-273.15},cnvFrom:function(C){return C+273.15}},this.funcs.degf={cnvTo:function(C){return C-459.67},cnvFrom:function(C){return C+459.67}},this.funcs.degre={cnvTo:function(C){return C-273.15},cnvFrom:function(C){return C+273.15}},this.funcs.ph={cnvTo:function(C){return-Math.log(C)/Math.LN10},cnvFrom:function(C){return Math.pow(10,-C)}},this.funcs.ln={cnvTo:function(C){return Math.log(C)},cnvFrom:function(C){return Math.exp(C)}},this.funcs["2ln"]={cnvTo:function(C){return 2*Math.log(C)},cnvFrom:function(C){return Math.exp(C/2)}},this.funcs.lg={cnvTo:function(C){return Math.log(C)/Math.LN10},cnvFrom:function(C){return Math.pow(10,C)}},this.funcs["10lg"]={cnvTo:function(C){return 10*Math.log(C)/Math.LN10},cnvFrom:function(C){return Math.pow(10,C/10)}},this.funcs["20lg"]={cnvTo:function(C){return 20*Math.log(C)/Math.LN10},cnvFrom:function(C){return Math.pow(10,C/20)}},this.funcs["2lg"]={cnvTo:function(C){return 2*Math.log(C)/Math.LN10},cnvFrom:function(C){return Math.pow(10,C/2)}},this.funcs.lgtimes2=this.funcs["2lg"],this.funcs.ld={cnvTo:function(C){return Math.log(C)/Math.LN2},cnvFrom:function(C){return Math.pow(2,C)}},this.funcs["100tan"]={cnvTo:function(C){return 100*Math.tan(C)},cnvFrom:function(C){return Math.atan(C/100)}},this.funcs.tanTimes100=this.funcs["100tan"],this.funcs.sqrt={cnvTo:function(C){return Math.sqrt(C)},cnvFrom:function(C){return C*C}},this.funcs.inv={cnvTo:function(C){return 1/C},cnvFrom:function(C){return 1/C}},this.funcs.hpX={cnvTo:function(C){return-this.funcs.lg(C)},cnvFrom:function(C){return Math.pow(10,-C)}},this.funcs.hpC={cnvTo:function(C){return-this.func.ln(C)/this.funcs.ln(100)},cnvFrom:function(C){return Math.pow(100,-C)}},this.funcs.hpM={cnvTo:function(C){return-this.funcs.ln(C)/this.funcs.ln(1e3)},cnvFrom:function(C){return Math.pow(1e3,-C)}},this.funcs.hpQ={cnvTo:function(C){return-this.funcs.ln(C)/this.funcs.ln(5e4)},cnvFrom:function(C){return Math.pow(5e4,-C)}}}forName(C){C=C.toLowerCase();let b=this.funcs[C];if(null===b)throw new Error(`Requested function ${C} is not defined`);return b}isDefined(C){return C=C.toLowerCase(),null!==this.funcs[C]}};X.default=n},6361:(Se,X,g)=>{"use strict";Object.defineProperty(X,"__esModule",{value:!0}),X.isNumericString=function p(o){let v=""+o;return!isNaN(v)&&!isNaN(parseFloat(v))},X.isIntegerUnit=function C(o){return/^\d+$/.test(o)},X.getSynonyms=function b(o){let v={},c={};if(c=n.getInstance().getUnitBySynonym(o),c.units){v.status="succeeded";let s=c.units.length;v.units=[];for(let l=0;l{"use strict";Object.defineProperty(X,"__esModule",{value:!0}),X.ucumJsonDefs=X.UcumJsonDefs=void 0;var n=g(3407),p=g(8902),C=g(5744),b=g(7894),o=g(5601).DP;class v{loadJsonDefs(){const s=g(8210);if(s.prefixes=o(s.prefixes),s.units=o(s.units),0===b.UnitTables.getInstance().unitsCount()){let l=p.PrefixTables.getInstance(),d=s.prefixes,r=d.length;for(let _=0;_{"use strict";X.n=void 0;var p=g(8929),C=function o(l){if(l&&l.__esModule)return l;if(null===l||"object"!=typeof l&&"function"!=typeof l)return{default:l};var d=b();if(d&&d.has(l))return d.get(l);var r={},u=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var h in l)if(Object.prototype.hasOwnProperty.call(l,h)){var m=u?Object.getOwnPropertyDescriptor(l,h):null;m&&(m.get||m.set)?Object.defineProperty(r,h,m):r[h]=l[h]}return r.default=l,d&&d.set(l,r),r}(g(6361));function b(){if("function"!=typeof WeakMap)return null;var l=new WeakMap;return b=function(){return l},l}var v=g(9473).Ucum,a=g(7894).UnitTables,c=g(4206).T;class s{constructor(){0===a.getInstance().unitsCount()&&p.ucumJsonDefs.loadJsonDefs(),this.uStrParser_=c.getInstance()}useHTMLInMessages(d){void 0===d&&(d=!0),this.uStrParser_.useHTMLInMessages(d)}useBraceMsgForEachString(d){void 0===d&&(d=!0),this.uStrParser_.useBraceMsgForEachString(d)}validateUnitString(d,r,u){void 0===r&&(r=!1),void 0===u&&(u="validate");let h=this.getSpecifiedUnit(d,u,r),m=h.unit,_={};return _=m?{status:h.origString===d?"valid":"invalid",ucumCode:h.origString,unit:{code:m.csCode_,name:m.name_,guidance:m.guidance_}}:{status:h.origString&&null!==h.origString?"invalid":"error",ucumCode:null},h.suggestions&&(_.suggestions=h.suggestions),_.msg=h.retMsg,_}convertUnitTo(d,r,u,h,m){void 0===h&&(h=!1),void 0===m&&(m=null);let _={status:"failed",toVal:null,msg:[]};if(d&&(d=d.trim()),(!d||""==d)&&(_.status="error",_.msg.push('No "from" unit expression specified.')),(null===r||isNaN(r)||"number"!=typeof r&&!C.isNumericString(r))&&(_.status="error",_.msg.push('No "from" value, or an invalid "from" value, was specified.')),u&&(u=u.trim()),(!u||""==u)&&(_.status="error",_.msg.push('No "to" unit expression specified.')),"error"!==_.status)try{let M=null,x=this.getSpecifiedUnit(d,"convert",h);M=x.unit,x.retMsg&&(_.msg=_.msg.concat(x.retMsg)),x.suggestions&&(_.suggestions={},_.suggestions.from=x.suggestions),M||_.msg.push(`Unable to find a unit for ${d}, so no conversion could be performed.`);let w=null;if(x=this.getSpecifiedUnit(u,"convert",h),w=x.unit,x.retMsg&&(_.msg=_.msg.concat(x.retMsg)),x.suggestions&&(_.suggestions||(_.suggestions={}),_.suggestions.to=x.suggestions),w||_.msg.push(`Unable to find a unit for ${u}, so no conversion could be performed.`),M&&w)try{if(m){if(0!==M.moleExp_&&0!==w.moleExp_)throw new Error("A molecular weight was specified but a mass <-> mole conversion cannot be executed for two mole-based units. No conversion was attempted.");if(0===M.moleExp_&&0===w.moleExp_)throw new Error("A molecular weight was specified but a mass <-> mole conversion cannot be executed when neither unit is mole-based. No conversion was attempted.");if(!M.isMoleMassCommensurable(w))throw new Error(`Sorry. ${d} cannot be converted to ${u}.`);_.toVal=0!==M.moleExp_?M.convertMolToMass(r,w,m):M.convertMassToMol(r,w,m)}else _.toVal=w.convertFrom(r,M);_.status="succeeded",_.fromUnit=M,_.toUnit=w}catch(L){_.status="failed",_.msg.push(L.message)}}catch(M){_.status=M.message==v.needMoleWeightMsg_?"failed":"error",_.msg.push(M.message)}return _}convertToBaseUnits(d,r){let u=this.getSpecifiedUnit(d,"validate"),h={},m=u.unit;if(h.msg=u.retMsg||[],m){if(m.isArbitrary_)h.msg.push("Arbitrary units cannot be converted to base units or other units.");else if(0==h.msg.length){let _={},M=m.dim_?.dimVec_,x="1";if(M){let A=a.getInstance().dimVecIndexToBaseUnit_;for(let T=0,O=M.length;T0&&(r=h.retMsg),m){let _=null,M=m.getProperty("dim_");if(M){try{_=M.getProperty("dimVec_")}catch(x){r.push(x.message),"Dimension does not have requested property(dimVec_)"===x.message&&(_=null)}_&&(u=a.getInstance().getUnitsByDimension(_))}else r.push("No commensurable units were found for "+d)}else r.push(`Could not find unit ${d}.`);return[u,r]}}X.n=s,s.getInstance=function(){return new s}},2207:(Se,X,g)=>{"use strict";X.ng=void 0,g(9473);var C=g(9741).n;X.ng=C,g(7894)},5744:(Se,X,g)=>{"use strict";Object.defineProperty(X,"__esModule",{value:!0}),X.Unit=void 0;var n=function o(d){return d&&d.__esModule?d:{default:d}}(g(5568)),p=function b(d){if(d&&d.__esModule)return d;if(null===d||"object"!=typeof d&&"function"!=typeof d)return{default:d};var r=C();if(r&&r.has(d))return r.get(d);var u={},h=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var m in d)if(Object.prototype.hasOwnProperty.call(d,m)){var _=h?Object.getOwnPropertyDescriptor(d,m):null;_&&(_.get||_.set)?Object.defineProperty(u,m,_):u[m]=d[m]}return u.default=d,r&&r.set(d,u),u}(g(6361));function C(){if("function"!=typeof WeakMap)return null;var d=new WeakMap;return C=function(){return d},d}var c,v=g(9473).Ucum,a=g(1995).R,s=g(4864);class l{constructor(r={}){this.isBase_=r.isBase_||!1,this.name_=r.name_||"",this.csCode_=r.csCode_||"",this.ciCode_=r.ciCode_||"",this.property_=r.property_||"",this.magnitude_=r.magnitude_||1,this.dim_=null==r.dim_?new a:void 0!==r.dim_.dimVec_?new a(r.dim_.dimVec_):r.dim_ instanceof a?r.dim_:r.dim_ instanceof Array||s(r.dim_)?new a(r.dim_):new a,this.printSymbol_=r.printSymbol_||null,this.class_=r.class_||null,this.isMetric_=r.isMetric_||!1,this.variable_=r.variable_||null,this.cnv_=r.cnv_||null,this.cnvPfx_=r.cnvPfx_||1,this.isSpecial_=r.isSpecial_||!1,this.isArbitrary_=r.isArbitrary_||!1,this.moleExp_=r.moleExp_||0,this.synonyms_=r.synonyms_||null,this.source_=r.source_||null,this.loincProperty_=r.loincProperty_||null,this.category_=r.category_||null,this.guidance_=r.guidance_||null,this.csUnitString_=r.csUnitString_||null,this.ciUnitString_=r.ciUnitString_||null,this.baseFactorStr_=r.baseFactorStr_||null,this.baseFactor_=r.baseFactor_||null,this.defError_=r.defError_||!1}assignUnity(){return this.name_="",this.magnitude_=1,this.dim_||(this.dim_=new a),this.dim_.assignZero(),this.cnv_=null,this.cnvPfx_=1,this}assignVals(r){for(let u in r){let h="_"===!u.charAt(u.length-1)?u+"_":u;if(!this.hasOwnProperty(h))throw new Error(`Parameter error; ${u} is not a property of a Unit`);this[h]=r[u]}}clone(){let r=new l;return Object.getOwnPropertyNames(this).forEach(u=>{"dim_"===u?r.dim_=this.dim_?this.dim_.clone():null:r[u]=this[u]}),r}assign(r){Object.getOwnPropertyNames(r).forEach(u=>{"dim_"===u?this.dim_=r.dim_?r.dim_.clone():null:this[u]=r[u]})}equals(r){return this.magnitude_===r.magnitude_&&this.cnv_===r.cnv_&&this.cnvPfx_===r.cnvPfx_&&(null===this.dim_&&null===r.dim_||this.dim_.equals(r.dim_))}fullEquals(r){let u=Object.keys(this).sort(),h=Object.keys(r).sort(),m=u.length,_=m===h.length;for(let M=0;M0){let u=r.replace("/","!").replace(".","/").replace("!",".");switch(u.charAt(0)){case".":r=u.substr(1);break;case"/":r=u;break;default:r="/"+u}}return r}_concatStrs(r,u,h,m,_){return this._buildOneString(r,m,_)+u+this._buildOneString(h,m,_)}_buildOneString(r,u,h){let m="";return m=p.isNumericString(r)||"("===r.charAt(0)&&r.endsWith(")")||"["===r.charAt(0)&&r.endsWith("]")?r:/[./* ]/.test(r)?u+r+h:r,m}power(r){if(null!=this.cnv_)throw new Error(`Attempt to raise a non-ratio unit, ${this.name_}, to a power.`);let h=this.csCode_.match(/([./]|[^./]+)/g),m=h.length;for(let _=0;_=0;L--){let A=parseInt(M[L]);if(!s(A)){if(("-"===M[L]||"+"===M[L])&&L--,L{"use strict";X.T=void 0;var p=function b(d){if(d&&d.__esModule)return d;if(null===d||"object"!=typeof d&&"function"!=typeof d)return{default:d};var r=C();if(r&&r.has(d))return r.get(d);var u={},h=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var m in d)if(Object.prototype.hasOwnProperty.call(d,m)){var _=h?Object.getOwnPropertyDescriptor(d,m):null;_&&(_.get||_.set)?Object.defineProperty(u,m,_):u[m]=d[m]}return u.default=d,r&&r.set(d,u),u}(g(6361));function C(){if("function"!=typeof WeakMap)return null;var d=new WeakMap;return C=function(){return d},d}function o(d,r,u){return r in d?Object.defineProperty(d,r,{value:u,enumerable:!0,configurable:!0,writable:!0}):d[r]=u,d}var v=g(9473).Ucum,a=g(5744).Unit,c=g(7894).UnitTables,s=g(8902).PrefixTables;class l{constructor(){this.utabs_=c.getInstance(),this.pfxTabs_=s.getInstance(),this.openEmph_=v.openEmph_,this.closeEmph_=v.closeEmph_,this.bracesMsg_="",this.parensFlag_="parens_placeholder",this.pFlagLen_=this.parensFlag_.length,this.braceFlag_="braces_placeholder",this.bFlagLen_=this.braceFlag_.length,this.vcMsgStart_=null,this.vcMsgEnd_=null,this.retMsg_=[],this.parensUnits_=[],this.annotations_=[],this.suggestions=[]}useHTMLInMessages(r){void 0===r||r?(this.openEmph_=v.openEmphHTML_,this.closeEmph_=v.closeEmphHTML_):(this.openEmph_=v.openEmph_,this.closeEmph_=v.closeEmph_)}useBraceMsgForEachString(r){this.bracesMsg_=void 0===r||r?v.bracesMsg_:""}parseString(r,u,h){if(""===(r=r.trim())||null===r)throw new Error("Please specify a unit expression to be validated.");"validate"===u?(this.vcMsgStart_=v.valMsgStart_,this.vcMsgEnd_=v.valMsgEnd_):(this.vcMsgStart_=v.cnvMsgStart_,this.vcMsgEnd_=v.cnvMsgEnd_),this.suggestions_=void 0===h||!1===h?null:[],this.retMsg_=[],this.parensUnits_=[],this.annotations_=[];let m=r,_=[];if(r=this._getAnnotations(r),this.retMsg_.length>0)_[0]=null,_[1]=null;else{let x=null;for(x in v.specUnits_)for(;-1!==r.indexOf(x);)r=r.replace(x,v.specUnits_[x]);if(r.indexOf(" ")>-1)throw new Error("Blank spaces are not allowed in unit expressions.");_=this._parseTheString(r,m);let w=_[0];(p.isIntegerUnit(w)||"number"==typeof w)&&(w=new a({csCode_:m,ciCode_:m,magnitude_:w,name_:m}),_[0]=w)}return _[2]=this.retMsg_,this.suggestions_&&this.suggestions_.length>0&&(_[3]=this.suggestions_),_}_parseTheString(r,u){let h=null,m=this.retMsg_.length>0,_=this._processParens(r,u);m=_[2];let M=[];if(!m){let x=this._makeUnitsArray(r=_[0],u=_[1]);if(m=x[2],!m){M=x[0],u=x[1];let w=M.length;for(let L=0;L=0){let T=this._getParensUnit(A,u);m||(m=T[1]),m||(M[L].un=T[0])}else{let T=this._makeUnit(A,u);null===T[0]?m=!0:(M[L].un=T[0],u=T[1])}}}}return m||(null===M[0]||" "===M[0]||null==M[0].un)&&0===this.retMsg_.length&&(this.retMsg_.push(`Unit string (${u}) did not contain anything that could be used to create a unit, or else something that is not handled yet by this package. Sorry`),m=!0),m||(h=this._performUnitArithmetic(M,u)),[h,u]}_getAnnotations(r){let u=r.indexOf("{");for(;u>=0;){let h=r.indexOf("}");if(h<0)this.retMsg_.push("Missing closing brace for annotation starting at "+this.openEmph_+r.substr(u)+this.closeEmph_),u=-1;else{let m=r.substring(u,h+1);if(l.VALID_ANNOTATION_REGEX.test(m)){let _=this.annotations_.length.toString();r=r.replace(m,this.braceFlag_+_+this.braceFlag_),this.annotations_.push(m),u=r.indexOf("{")}else this.retMsg_.push(l.INVALID_ANNOTATION_CHAR_MSG+this.openEmph_+m+this.closeEmph_),u=-1}}if(0==this.retMsg_.length){let h=r.indexOf("}");h>=0&&this.retMsg_.push("Missing opening brace for closing brace found at "+this.openEmph_+r.substring(0,h+1)+this.closeEmph_)}return r}_processParens(r,u){let h=[],m=0,_=!1,M=this.parensUnits_.length,x=0;for(;""!==r&&!_;){let w=0,L=0,A=r.indexOf("(");if(A<0){let T=r.indexOf(")");if(T>=0){let O=`Missing open parenthesis for close parenthesis at ${r.substring(0,T+x)}${this.openEmph_}${r.substr(T,1)}${this.closeEmph_}`;T0&&(h[m++]=r.substr(0,A));let O=0,E=A+1;for(;E0&&(L=r.substr(0,w-1));let A=r.lastIndexOf(this.parensFlag_),T=null;A+this.pFlagLen_=0){let E=this._getAnnoText(L,u);if(E[1]||E[2])throw new Error(`Text found before the parentheses (${L}) included an annotation along with other text for parenthetical unit ${_.csCode_}`);this.retMsg_.push(`The annotation ${E[0]} before the unit code is invalid.\n`+this.vcMsgStart_+(r+=E[0])+this.vcMsgEnd_)}else this.suggestions_?h="succeeded"!==this._getSuggestions(L):(this.retMsg_.push(`${L} preceding the unit code ${r} is invalid. Unable to make a substitution.`),h=!0);if(T)if(T.indexOf(this.braceFlag_)>=0){let E=this._getAnnoText(T,u);if(E[1]||E[2])throw new Error(`Text found after the parentheses (${T}) included an annotation along with other text for parenthetical unit ${_.csCode_}`);r+=E[0]}else p.isNumericString(T)?(r+=T,_=_.power(Number(T)),this.retMsg_.push(`An exponent (${T}) following a parenthesis is invalid as of revision 1.9 of the UCUM Specification.\n `+this.vcMsgStart_+r+this.vcMsgEnd_)):this.suggestions_?h="succeeded"!==this._getSuggestions(L):(this.retMsg_.push(`Text ${T} following the unit code ${r} is invalid. Unable to make a substitution.`),h=!0);return h||(_?p.isIntegerUnit(_)?_=new a({csCode_:_,magnitude_:_,name_:_}):_.csCode_=r:_=new a({csCode_:r,magnitude_:1,name_:r})),[_,h]}_getAnnoText(r,u){let h=r.indexOf(this.braceFlag_),m=h>0?r.substring(0,h):null;0!==h&&(r=r.substr(h));let _=r.indexOf(this.braceFlag_,1),M=_+this.bFlagLen_=this.annotations_.length)throw new Error(`Processing Error - invalid annotation index ${x} found in ${r} that was created from ${u}`);return[r=this.annotations_[w],m,M]}_getSuggestions(r){let u=p.getSynonyms(r);if("succeeded"===u.status){let h={};h.msg=`${r} is not a valid UCUM code. We found possible units that might be what was meant:`,h.invalidUnit=r;let m=u.units.length;h.units=[];for(let _=0;_=0){let m=this._getUnitWithAnnotation(r,u);h=m[0],h&&(u=m[1])}else{if(r.indexOf("^")>-1){let m=r.replace("^","*");h=this.utabs_.getUnitByCode(m),h&&(h=h.clone(),h.csCode_=h.csCode_.replace("*","^"),h.ciCode_=h.ciCode_.replace("*","^"))}if(!h){let m="["+r+"]";h=this.utabs_.getUnitByCode(m),h&&(h=h.clone(),u=u.replace(r,m),this.retMsg_.push(`${r} is not a valid unit expression, but ${m} is.\n`+this.vcMsgStart_+`${m} (${h.name_})${this.vcMsgEnd_}`))}if(!h){let m=this.utabs_.getUnitByName(r);if(m&&m.length>0){h=m[0].clone();let _="The UCUM code for "+r+" is "+h.csCode_+".\n"+this.vcMsgStart_+h.csCode_+this.vcMsgEnd_,M=!1;for(let L=0;L"+S+"",csCode_:N+S,ciCode_:R+S,printSymbol_:j+""+S+""})}}else h=null,this.suggestions_?this._getSuggestions(m):this.retMsg_.push(`${m} is not a valid UCUM code.`)}}return[h,u]}_getUnitWithAnnotation(r,u){let h=null,m=this._getAnnoText(r,u),_=m[0],M=m[1],x=m[2];this.bracesMsg_&&-1===this.retMsg_.indexOf(this.bracesMsg_)&&this.retMsg_.push(this.bracesMsg_);let w=this.retMsg_.length;if(M||x)if(M&&!x)if(p.isIntegerUnit(M))h=M;else{let L=this._makeUnit(M,u);L[0]?(h=L[0],h.csCode_+=_,u=L[1]):this.retMsg_.push(`Unable to find a unit for ${M} that precedes the annotation ${_}.`)}else if(!M&&x)if(p.isIntegerUnit(x))h=x+_,this.retMsg_.push(`The annotation ${_} before the ``${x} is invalid.\n`+this.vcMsgStart_+h+this.vcMsgEnd_);else{let L=this._makeUnit(x,u);L[0]?(h=L[0],h.csCode_+=_,u=h.csCode_,this.retMsg_.push(`The annotation ${_} before the unit code is invalid.\n`+this.vcMsgStart_+h.csCode_+this.vcMsgEnd_)):this.retMsg_.push(`Unable to find a unit for ${M} that follows the annotation ${_}.`)}else this.retMsg_.push(`Unable to find a unit for ${M}${_}${x}.\nWe are not sure how to interpret text both before and after the annotation. Sorry`);else{let L="["+_.substring(1,_.length-1)+"]",A=this._makeUnit(L,u);A[0]?(h=A[0],u=u.replace(_,L),this.retMsg_.push(`${_} is not a valid unit expression, but ${L} is.\n`+this.vcMsgStart_+`${L} (${h.name_})${this.vcMsgEnd_}`)):(this.retMsg_.length>w&&this.retMsg_.pop(),r=1,h=1)}return[h,u]}_performUnitArithmetic(r,u){let h=r[0].un;p.isIntegerUnit(h)&&(h=new a({csCode_:h,ciCode_:h,magnitude_:Number(h),name_:h}));let m=r.length,_=!1;for(let M=1;M{"use strict";Object.defineProperty(X,"__esModule",{value:!0}),X.UnitTables=void 0;var n=g(9473).Ucum,C=new class p{constructor(){this.unitNames_={},this.unitCodes_={},this.codeOrder_=[],this.unitStrings_={},this.unitDimensions_={},this.unitSynonyms_={},this.massDimIndex_=0,this.dimVecIndexToBaseUnit_={}}unitsCount(){return Object.keys(this.unitCodes_).length}addUnit(v){v.name_&&this.addUnitName(v),this.addUnitCode(v),this.addUnitString(v);try{v.dim_.getProperty("dimVec_")&&this.addUnitDimension(v)}catch{}if(v.isBase_){const c=v.dim_.dimVec_;let s;for(let l=0,d=c.length;null==s&&l=1&&(c=v.substr(a+n.codeSep_.length),v=v.substr(0,a));let s=this.unitNames_[v];if(s){let l=s.length;if(c&&l>1){let d=0;for(;s[d].csCode_!==c&&d0&&(c+=a),"dim_"===v[_])c+=null!=m.dim_&&m.dim_.dimVec_ instanceof Array?"["+m.dim_.dimVec_.join(",")+"]":"";else{let M=m[v[_]];c+="string"==typeof M?M.replace(/[\n\r]/g," "):M}c+="\r\n"}}return c}printUnits(v,a){void 0===v&&(v=!1),void 0===a&&(a="|");let c="",s=this.codeOrder_.length,l="csCode"+a;v&&(l+="ciCode"+a),l+="name"+a,v&&(l+="isBase"+a),l+="magnitude"+a+"dimension"+a+"from unit(s)"+a+"value"+a+"function"+a,v&&(l+="property"+a+"printSymbol"+a+"synonyms"+a+"source"+a+"class"+a+"isMetric"+a+"variable"+a+"isSpecial"+a+"isAbitrary"+a),l+="comment",c=l+"\n";for(let d=0;d{"use strict";Object.defineProperty(X,"__esModule",{value:!0}),X.AppComponent=void 0;const n=g(655),b=(g(7088),g(9515),n.__importStar(g(5879))),o=n.__importStar(g(9515)),v=n.__importStar(g(7088)),a=n.__importStar(g(4505)),c=n.__importStar(g(617)),s=n.__importStar(g(6718)),l=n.__importStar(g(1274)),d=n.__importStar(g(5187));X.AppComponent=(()=>{class u{constructor(m,_){m.setDefaultLang("de"),m.use(m.getBrowserLang());let M=location.origin;if("http://localhost:4200"===M)console.log("note: using local dev mag system for"+location.origin),_.changeFhirMicroService("http://localhost:8080/matchbox/fhir");else{let x=M+location.pathname+"fhir";_.changeFhirMicroService(x),console.log("fhir endpoint "+x)}}}return u.\u0275fac=function(m){return new(m||u)(b.\u0275\u0275directiveInject(o.TranslateService),b.\u0275\u0275directiveInject(v.FhirConfigService))},u.\u0275cmp=b.\u0275\u0275defineComponent({type:u,selectors:[["app-root"]],decls:53,vars:1,consts:[["color","primary","role","header"],["routerLink","/",1,"home-link"],[1,"logo-container"],["src","assets/matchbox_logo_color.png"],[1,"example-fill-remaining-space"],["mat-icon-button","",3,"matMenuTriggerFor"],["menu","matMenu"],["mat-menu-item","","routerLink","/"],["mat-menu-item","","routerLink","/CapabilityStatement"],["mat-menu-item","","routerLink","/igs"],["mat-menu-item","","routerLink","/fhirpath"],["mat-menu-item","","routerLink","/mappinglanguage"],["mat-menu-item","","routerLink","/transform"],["mat-menu-item","","routerLink","/validate"],["mat-menu-item","","routerLink","/settings"],[1,"mat-typography"]],template:function(m,_){if(1&m&&(b.\u0275\u0275elementStart(0,"mat-toolbar",0)(1,"div",1)(2,"div",2),b.\u0275\u0275element(3,"img",3),b.\u0275\u0275elementEnd()(),b.\u0275\u0275element(4,"span",4),b.\u0275\u0275elementStart(5,"span")(6,"button",5)(7,"mat-icon"),b.\u0275\u0275text(8,"more_vert"),b.\u0275\u0275elementEnd()(),b.\u0275\u0275elementStart(9,"mat-menu",null,6)(11,"button",7)(12,"mat-icon"),b.\u0275\u0275text(13,"home"),b.\u0275\u0275elementEnd(),b.\u0275\u0275elementStart(14,"span"),b.\u0275\u0275text(15,"Home"),b.\u0275\u0275elementEnd()(),b.\u0275\u0275elementStart(16,"button",8)(17,"mat-icon"),b.\u0275\u0275text(18,"info"),b.\u0275\u0275elementEnd(),b.\u0275\u0275elementStart(19,"span"),b.\u0275\u0275text(20,"CapabilityStatement"),b.\u0275\u0275elementEnd()(),b.\u0275\u0275elementStart(21,"button",9)(22,"mat-icon"),b.\u0275\u0275text(23,"info"),b.\u0275\u0275elementEnd(),b.\u0275\u0275elementStart(24,"span"),b.\u0275\u0275text(25,"IGs ..."),b.\u0275\u0275elementEnd()(),b.\u0275\u0275elementStart(26,"button",10)(27,"mat-icon"),b.\u0275\u0275text(28,"search"),b.\u0275\u0275elementEnd(),b.\u0275\u0275elementStart(29,"span"),b.\u0275\u0275text(30,"FHIRPath ..."),b.\u0275\u0275elementEnd()(),b.\u0275\u0275elementStart(31,"button",11)(32,"mat-icon"),b.\u0275\u0275text(33,"search"),b.\u0275\u0275elementEnd(),b.\u0275\u0275elementStart(34,"span"),b.\u0275\u0275text(35,"FHIR mapping language ..."),b.\u0275\u0275elementEnd()(),b.\u0275\u0275elementStart(36,"button",12)(37,"mat-icon"),b.\u0275\u0275text(38,"search"),b.\u0275\u0275elementEnd(),b.\u0275\u0275elementStart(39,"span"),b.\u0275\u0275text(40,"Transform ..."),b.\u0275\u0275elementEnd()(),b.\u0275\u0275elementStart(41,"button",13)(42,"mat-icon"),b.\u0275\u0275text(43,"Validate"),b.\u0275\u0275elementEnd(),b.\u0275\u0275elementStart(44,"span"),b.\u0275\u0275text(45,"Validate ..."),b.\u0275\u0275elementEnd()(),b.\u0275\u0275elementStart(46,"button",14)(47,"mat-icon"),b.\u0275\u0275text(48,"settings"),b.\u0275\u0275elementEnd(),b.\u0275\u0275elementStart(49,"span"),b.\u0275\u0275text(50,"Settings"),b.\u0275\u0275elementEnd()()()()(),b.\u0275\u0275elementStart(51,"main",15),b.\u0275\u0275element(52,"router-outlet"),b.\u0275\u0275elementEnd()),2&m){const M=b.\u0275\u0275reference(10);b.\u0275\u0275advance(6),b.\u0275\u0275property("matMenuTriggerFor",M)}},dependencies:[a.MatLegacyButton,c.MatIcon,s.MatLegacyMenu,s.MatLegacyMenuItem,s.MatLegacyMenuTrigger,l.MatToolbar,d.RouterOutlet,d.RouterLink],styles:[".example-fill-remaining-space[_ngcontent-%COMP%]{flex:1 1 auto}mat-toolbar[_ngcontent-%COMP%]{padding-left:0}mat-toolbar[_ngcontent-%COMP%] .home-link[_ngcontent-%COMP%]{height:100%;display:flex;justify-content:center;align-items:center;cursor:pointer}mat-toolbar[_ngcontent-%COMP%] .logo-container[_ngcontent-%COMP%]{display:flex;height:100%;width:160px;justify-content:center;align-items:center}mat-toolbar[_ngcontent-%COMP%] .logo-container[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{height:calc(100% - 1.2em)}main[_ngcontent-%COMP%]{width:100%;margin:0 auto}@media screen and (min-width: 1020px){main[_ngcontent-%COMP%]{padding:3rem 0;width:1000px}}"]}),u})()},8629:(Se,X,g)=>{"use strict";Object.defineProperty(X,"__esModule",{value:!0}),X.AppModule=X.createTranslateLoader=void 0;const n=g(655),p=g(9862),C=g(5187),b=g(9515),o=g(5061),v=g(6401),a=g(6938),c=g(7171),s=g(6459),l=g(5389),d=g(3835),r=g(6208),u=g(1037),h=g(9949),m=g(7154),_=g(9936),M=g(6381),x=n.__importStar(g(5879)),T=(n.__importStar(g(5187)),n.__importStar(g(9515)),n.__importStar(g(6381)),[{path:"",component:s.HomeComponent},{path:"fhirpath",component:c.FhirPathComponent},{path:"mappinglanguage",component:l.MappingLanguageComponent},{path:"CapabilityStatement",component:a.CapabilityStatementComponent},{path:"igs",component:u.IgsComponent},{path:"settings",component:d.SettingsComponent},{path:"transform",component:m.TransformComponent},{path:"validate",component:_.ValidateComponent}]);function O(D){return new o.TranslateHttpLoader(D,"./assets/i18n/",".json")}X.createTranslateLoader=O,X.AppModule=(()=>{class D{}return D.\u0275fac=function(j){return new(j||D)},D.\u0275mod=x.\u0275\u0275defineNgModule({type:D,bootstrap:[v.AppComponent]}),D.\u0275inj=x.\u0275\u0275defineInjector({providers:[{provide:h.HIGHLIGHT_OPTIONS,useValue:{coreLibraryLoader:()=>Promise.resolve().then(()=>n.__importStar(g(6548))),lineNumbersLoader:()=>Promise.resolve().then(()=>n.__importStar(g(1035))),languages:{json:()=>Promise.resolve().then(()=>n.__importStar(g(5454))),xml:()=>Promise.resolve().then(()=>n.__importStar(g(5149)))}}}],imports:[r.SharedModule,p.HttpClientModule,h.HighlightModule,C.RouterModule.forRoot(T,{useHash:!0}),b.TranslateModule.forRoot({loader:{provide:b.TranslateLoader,useFactory:O,deps:[p.HttpClient]}}),M.OAuthModule.forRoot()]}),D})()},6938:(Se,X,g)=>{"use strict";Object.defineProperty(X,"__esModule",{value:!0}),X.CapabilityStatementComponent=void 0;const n=g(655),C=(g(7088),n.__importStar(g(5879))),b=n.__importStar(g(7088)),o=n.__importStar(g(6814)),v=n.__importStar(g(9025)),a=n.__importStar(g(4187)),c=n.__importStar(g(9949));function s(r,u){if(1&r&&(C.\u0275\u0275elementStart(0,"li"),C.\u0275\u0275text(1),C.\u0275\u0275elementEnd()),2&r){const h=u.$implicit;C.\u0275\u0275advance(1),C.\u0275\u0275textInterpolate1(" ",h.diagnostics," ")}}function l(r,u){if(1&r&&(C.\u0275\u0275elementStart(0,"mat-error")(1,"ul"),C.\u0275\u0275template(2,s,2,1,"li",3),C.\u0275\u0275elementEnd()()),2&r){const h=C.\u0275\u0275nextContext();C.\u0275\u0275advance(2),C.\u0275\u0275property("ngForOf",h.operationOutcome.issue)}}X.CapabilityStatementComponent=(()=>{class r{constructor(h){this.data=h,this.client=h.getFhirClient(),this.client.capabilityStatement().then(m=>{this.operationOutcome=void 0,this.capabilitystatement=m}).catch(m=>{this.capabilitystatement=void 0,this.operationOutcome=m.response.data})}getJson(){return JSON.stringify(this.capabilitystatement,null,2)}ngOnInit(){}ngOnDestroy(){}}return r.\u0275fac=function(h){return new(h||r)(C.\u0275\u0275directiveInject(b.FhirConfigService))},r.\u0275cmp=C.\u0275\u0275defineComponent({type:r,selectors:[["app-capability-statement"]],decls:8,vars:4,consts:[[1,"display"],[3,"highlight","lineNumbers"],[4,"ngIf"],[4,"ngFor","ngForOf"]],template:function(h,m){1&h&&(C.\u0275\u0275elementStart(0,"mat-card",0)(1,"mat-card-content")(2,"mat-card-header")(3,"mat-card-title"),C.\u0275\u0275text(4),C.\u0275\u0275elementEnd()(),C.\u0275\u0275elementStart(5,"pre"),C.\u0275\u0275element(6,"code",1),C.\u0275\u0275elementEnd(),C.\u0275\u0275template(7,l,3,1,"mat-error",2),C.\u0275\u0275elementEnd()()),2&h&&(C.\u0275\u0275advance(4),C.\u0275\u0275textInterpolate(m.client.baseUrl),C.\u0275\u0275advance(2),C.\u0275\u0275property("highlight",m.getJson())("lineNumbers",!0),C.\u0275\u0275advance(1),C.\u0275\u0275property("ngIf",m.operationOutcome))},dependencies:[o.NgForOf,o.NgIf,v.MatLegacyCard,v.MatLegacyCardHeader,v.MatLegacyCardContent,v.MatLegacyCardTitle,a.MatLegacyError,c.Highlight],styles:[".display[_ngcontent-%COMP%]{display:inline-block}"]}),r})()},7171:(Se,X,g)=>{"use strict";Object.defineProperty(X,"__esModule",{value:!0}),X.FhirPathComponent=void 0;const n=g(655),b=(g(5879),g(7973),g(6223)),o=g(1385),v=n.__importStar(g(5879)),a=n.__importStar(g(7973)),c=n.__importStar(g(6223)),s=n.__importStar(g(9025)),l=n.__importStar(g(4187)),d=n.__importStar(g(2400)),r=n.__importStar(g(9949));X.FhirPathComponent=(()=>{class h{constructor(_,M){this.fhirPathService=_,this.cd=M,this.fhirPathExpression=new b.UntypedFormControl,this.fhirPathExpression.valueChanges.pipe((0,o.debounceTime)(400),(0,o.distinctUntilChanged)()).subscribe(x=>{if(console.log("called with "+x),x)try{this.fhirPathResult=this.fhirPathService.evaluate(this.resource,x)}catch(w){console.log(w),this.fhirPathResult=void 0}else this.fhirPathResult=void 0})}fileChange(_){const M=new FileReader;if(_.target.files&&_.target.files.length){const[x]=_.target.files;M.readAsText(x),M.onload=()=>{this.resource=JSON.parse(M.result),this.cd.markForCheck()}}}getFhirPathResult(){return JSON.stringify(this.fhirPathResult,null,2)}getJson(){return JSON.stringify(this.resource,null,2)}ngOnInit(){}}return h.\u0275fac=function(_){return new(_||h)(v.\u0275\u0275directiveInject(a.FhirPathService),v.\u0275\u0275directiveInject(v.ChangeDetectorRef))},h.\u0275cmp=v.\u0275\u0275defineComponent({type:h,selectors:[["app-fhir-path"]],decls:15,vars:5,consts:[[1,"display"],["matInput","",3,"formControl"],[3,"highlight","lineNumbers"],["type","file","placeholder","Upload resource","accept",".json",3,"change"]],template:function(_,M){1&_&&(v.\u0275\u0275elementStart(0,"mat-card",0)(1,"mat-card-content")(2,"mat-form-field")(3,"mat-label"),v.\u0275\u0275text(4,"FHIRPath Expression"),v.\u0275\u0275elementEnd(),v.\u0275\u0275element(5,"input",1),v.\u0275\u0275elementEnd(),v.\u0275\u0275elementStart(6,"div"),v.\u0275\u0275text(7,"Result"),v.\u0275\u0275elementEnd(),v.\u0275\u0275elementStart(8,"pre"),v.\u0275\u0275element(9,"code",2),v.\u0275\u0275elementEnd(),v.\u0275\u0275elementStart(10,"div"),v.\u0275\u0275text(11,"Resource"),v.\u0275\u0275elementEnd(),v.\u0275\u0275elementStart(12,"input",3),v.\u0275\u0275listener("change",function(w){return M.fileChange(w)}),v.\u0275\u0275elementEnd(),v.\u0275\u0275elementStart(13,"pre"),v.\u0275\u0275element(14,"code",2),v.\u0275\u0275elementEnd()()()),2&_&&(v.\u0275\u0275advance(5),v.\u0275\u0275property("formControl",M.fhirPathExpression),v.\u0275\u0275advance(4),v.\u0275\u0275property("highlight",M.getFhirPathResult())("lineNumbers",!0),v.\u0275\u0275advance(5),v.\u0275\u0275property("highlight",M.getJson())("lineNumbers",!0))},dependencies:[c.DefaultValueAccessor,c.NgControlStatus,c.FormControlDirective,s.MatLegacyCard,s.MatLegacyCardContent,l.MatLegacyFormField,l.MatLegacyLabel,d.MatLegacyInput,r.Highlight],styles:[".display[_ngcontent-%COMP%]{display:inline-block}"]}),h})()},7088:(Se,X,g)=>{"use strict";Object.defineProperty(X,"__esModule",{value:!0}),X.FhirConfigService=void 0;const n=g(655),p=n.__importDefault(g(8907)),C=n.__importStar(g(5879));X.FhirConfigService=(()=>{class o{constructor(){}changeFhirMicroService(a){localStorage.setItem("fhirMicroServer",a)}getFhirMicroService(){return localStorage.getItem("fhirMicroServer")}getFhirClient(){return new p.default({baseUrl:this.getFhirMicroService()})}}return o.\u0275fac=function(a){return new(a||o)},o.\u0275prov=C.\u0275\u0275defineInjectable({token:o,factory:o.\u0275fac,providedIn:"root"}),o})()},7973:(Se,X,g)=>{"use strict";Object.defineProperty(X,"__esModule",{value:!0}),X.FhirPathService=void 0;const n=g(655),p=g(8921),C=n.__importStar(g(5879));X.FhirPathService=(()=>{class o{evaluate(a,c){return(0,p.evaluate)(a,c,null)}evaluateToString(a,c){const s=this.evaluate(a,c);return s&&s instanceof Array&&1===s.length?s[0]:null}getOauthUriToken(a){return this.evaluateToString(a,"rest.security.extension.where(url='http://fhir-registry.smarthealthit.org/StructureDefinition/oauth-uris').extension.where(url='token').valueUri")}getOauthUriAuthorize(a){return this.evaluateToString(a,"rest.security.extension.where(url='http://fhir-registry.smarthealthit.org/StructureDefinition/oauth-uris').extension.where(url='authorize').valueUri")}}return o.\u0275fac=function(a){return new(a||o)},o.\u0275prov=C.\u0275\u0275defineInjectable({token:o,factory:o.\u0275fac,providedIn:"root"}),o})()},6459:(Se,X,g)=>{"use strict";var n=g(7156).default;Object.defineProperty(X,"__esModule",{value:!0}),X.HomeComponent=void 0;const p=g(655),v=(g(7088),g(5187),g(6814),p.__importDefault(g(4147))),a=p.__importStar(g(5879)),c=p.__importStar(g(7088)),s=p.__importStar(g(5187)),l=p.__importStar(g(6814)),d=p.__importStar(g(9025)),r=p.__importStar(g(617)),u=p.__importStar(g(6718));X.HomeComponent=(()=>{class m{constructor(M,x,w){this.router=x,this.location=w,this.version=v.default.version,this.client=M.getFhirClient()}ngOnInit(){return n(function*(){})()}}return m.\u0275fac=function(M){return new(M||m)(a.\u0275\u0275directiveInject(c.FhirConfigService),a.\u0275\u0275directiveInject(s.Router),a.\u0275\u0275directiveInject(l.Location))},m.\u0275cmp=a.\u0275\u0275defineComponent({type:m,selectors:[["app-home"]],decls:22,vars:1,consts:[[1,"primary"],["mat-menu-item","","routerLink","/validate"],["mat-menu-item","","routerLink","/igs"],["mat-menu-item","","routerLink","/settings"],["href","https://www.ahdis.ch","target","_blank","rel","external nofollow noopener"]],template:function(M,x){1&M&&(a.\u0275\u0275elementStart(0,"mat-card",0)(1,"mat-card-content")(2,"button",1)(3,"mat-icon"),a.\u0275\u0275text(4,"Validate"),a.\u0275\u0275elementEnd(),a.\u0275\u0275elementStart(5,"span"),a.\u0275\u0275text(6,"Validate ..."),a.\u0275\u0275elementEnd()(),a.\u0275\u0275elementStart(7,"button",2)(8,"mat-icon"),a.\u0275\u0275text(9,"info"),a.\u0275\u0275elementEnd(),a.\u0275\u0275elementStart(10,"span"),a.\u0275\u0275text(11,"IGs ..."),a.\u0275\u0275elementEnd()(),a.\u0275\u0275elementStart(12,"button",3)(13,"mat-icon"),a.\u0275\u0275text(14,"settings"),a.\u0275\u0275elementEnd(),a.\u0275\u0275elementStart(15,"span"),a.\u0275\u0275text(16,"Settings"),a.\u0275\u0275elementEnd()()(),a.\u0275\u0275elementStart(17,"mat-card-footer")(18,"p"),a.\u0275\u0275text(19),a.\u0275\u0275elementStart(20,"a",4),a.\u0275\u0275text(21,"contact"),a.\u0275\u0275elementEnd()()()()),2&M&&(a.\u0275\u0275advance(19),a.\u0275\u0275textInterpolate1(" version: ",x.version," "))},dependencies:[d.MatLegacyCard,d.MatLegacyCardContent,d.MatLegacyCardFooter,r.MatIcon,u.MatLegacyMenuItem,s.RouterLink],styles:[".mat-card.primary[_ngcontent-%COMP%] mat-card-header[_ngcontent-%COMP%]{display:flex;flex-direction:column}.mat-card.primary[_ngcontent-%COMP%] mat-card-header[_ngcontent-%COMP%] .mat-subheading-2[_ngcontent-%COMP%]{margin:1rem 0 0}.mat-card.primary[_ngcontent-%COMP%] mat-card-content[_ngcontent-%COMP%] mat-tab-body>div{box-shadow:0 0 5px -3px #000 inset}.mat-card.primary[_ngcontent-%COMP%] mat-card-footer[_ngcontent-%COMP%]{padding:0 1.5rem 1.5rem}.mat-card.primary[_ngcontent-%COMP%] mat-card-footer[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{padding-top:1rem;margin:0}"]}),m})()},1037:(Se,X,g)=>{"use strict";Object.defineProperty(X,"__esModule",{value:!0}),X.IgsComponent=void 0;const n=g(655),C=(g(7088),g(2214)),b=g(6223),o=n.__importDefault(g(563)),a=(g(7973),n.__importStar(g(5879))),c=n.__importStar(g(7088)),s=n.__importStar(g(7973)),l=n.__importStar(g(6814)),d=n.__importStar(g(6223)),r=n.__importStar(g(4505)),u=n.__importStar(g(9025)),h=n.__importStar(g(4187)),m=n.__importStar(g(2400)),_=n.__importStar(g(9559)),M=n.__importStar(g(2214)),x=n.__importStar(g(1438)),w=n.__importStar(g(7515));function L(ne,me){1&ne&&(a.\u0275\u0275elementStart(0,"mat-header-cell",21),a.\u0275\u0275text(1,"Package Id"),a.\u0275\u0275elementEnd())}function A(ne,me){if(1&ne&&(a.\u0275\u0275elementStart(0,"mat-cell",21),a.\u0275\u0275text(1),a.\u0275\u0275elementEnd()),2&ne){const $=me.$implicit,q=a.\u0275\u0275nextContext();a.\u0275\u0275advance(1),a.\u0275\u0275textInterpolate(q.getPackageId($))}}function T(ne,me){1&ne&&(a.\u0275\u0275elementStart(0,"mat-header-cell",22),a.\u0275\u0275text(1,"Version"),a.\u0275\u0275elementEnd())}function O(ne,me){if(1&ne&&(a.\u0275\u0275elementStart(0,"mat-cell",22),a.\u0275\u0275text(1),a.\u0275\u0275elementEnd()),2&ne){const $=me.$implicit,q=a.\u0275\u0275nextContext();a.\u0275\u0275advance(1),a.\u0275\u0275textInterpolate(q.getVersion($))}}function E(ne,me){1&ne&&(a.\u0275\u0275elementStart(0,"mat-header-cell",21),a.\u0275\u0275text(1,"Title"),a.\u0275\u0275elementEnd())}function D(ne,me){if(1&ne&&(a.\u0275\u0275elementStart(0,"mat-cell"),a.\u0275\u0275text(1),a.\u0275\u0275elementEnd()),2&ne){const $=me.$implicit,q=a.\u0275\u0275nextContext();a.\u0275\u0275advance(1),a.\u0275\u0275textInterpolate(q.getTitle($))}}function R(ne,me){1&ne&&a.\u0275\u0275element(0,"mat-header-row")}function j(ne,me){if(1&ne){const $=a.\u0275\u0275getCurrentView();a.\u0275\u0275elementStart(0,"mat-row",23),a.\u0275\u0275listener("click",function(){const ue=a.\u0275\u0275restoreView($).$implicit,Me=a.\u0275\u0275nextContext();return a.\u0275\u0275resetView(Me.selectRow(ue))}),a.\u0275\u0275elementEnd()}}function N(ne,me){if(1&ne){const $=a.\u0275\u0275getCurrentView();a.\u0275\u0275elementContainerStart(0),a.\u0275\u0275text(1,"\xa0 "),a.\u0275\u0275elementStart(2,"button",24),a.\u0275\u0275listener("click",function(){a.\u0275\u0275restoreView($);const Q=a.\u0275\u0275nextContext();return a.\u0275\u0275resetView(Q.onUpdate())}),a.\u0275\u0275text(3,"Update"),a.\u0275\u0275elementEnd(),a.\u0275\u0275elementContainerEnd()}}function S(ne,me){if(1&ne){const $=a.\u0275\u0275getCurrentView();a.\u0275\u0275elementContainerStart(0),a.\u0275\u0275text(1,"\xa0 "),a.\u0275\u0275elementStart(2,"button",24),a.\u0275\u0275listener("click",function(){a.\u0275\u0275restoreView($);const Q=a.\u0275\u0275nextContext();return a.\u0275\u0275resetView(Q.onDelete())}),a.\u0275\u0275text(3,"Delete"),a.\u0275\u0275elementEnd(),a.\u0275\u0275elementContainerEnd()}}function k(ne,me){1&ne&&(a.\u0275\u0275elementContainerStart(0),a.\u0275\u0275element(1,"mat-progress-spinner",25),a.\u0275\u0275elementContainerEnd())}function F(ne,me){if(1&ne&&(a.\u0275\u0275elementStart(0,"mat-card",26)(1,"mat-card-content")(2,"mat-card-header")(3,"mat-card-title"),a.\u0275\u0275text(4,"Results of the last operation"),a.\u0275\u0275elementEnd()(),a.\u0275\u0275element(5,"app-operation-outcome",27),a.\u0275\u0275elementEnd()()),2&ne){const $=a.\u0275\u0275nextContext();a.\u0275\u0275advance(5),a.\u0275\u0275property("operationOutcome",$.operationOutcome)("title",$.errMsg)}}const Y=function(){return["packageId","version","title"]};class se{constructor(me,$){this.data=me,this.fhirPathService=$,this.length=100,this.pageSize=1e3,this.pageIndex=0,this.pageSizeOptions=[this.pageSize],this.dataSource=new C.MatLegacyTableDataSource,this.update=!1,this.query={_sort:"title",_count:this.pageSize},this.client=me.getFhirClient(),this.addPackageId=new b.UntypedFormControl("",[b.Validators.required,b.Validators.minLength(1)]),this.addVersion=new b.UntypedFormControl("current",[b.Validators.required,b.Validators.minLength(1)]),this.addUrl=new b.UntypedFormControl("url"),this.search()}search(){this.client.search({resourceType:"ImplementationGuide",searchParams:this.query}).then(me=>{this.pageIndex=0,this.setBundle(me),this.selection=void 0,this.addPackageId.setValue(""),this.addVersion.setValue(""),this.addUrl.setValue("")}).catch(me=>{this.errMsg="Error accessing FHIR server",this.operationOutcome=me.response.data}),this.update=!1}getPackageId(me){const $=me.resource;return $.packageId?$.packageId:""}getTitle(me){const $=me.resource;return $.title?$.title:""}getVersion(me){const $=me.resource;return $.version?$.version:""}getPackageUrl(me){return this.fhirPathService.evaluateToString(me.resource,"extension.where(url='http://ahdis.ch/fhir/extension/packageUrl').valueUri")}setBundle(me){this.bundle=me,this.dataSource.data=this.bundle.entry,this.length=this.bundle.total,this.selection=void 0}ngOnInit(){}selectRow(me){this.selection=me.resource,this.addPackageId.setValue(this.selection.packageId),this.addUrl.setValue(this.getPackageUrl(me));let $=this.selection.version;$&&$.endsWith(" (current)")&&($=$.substring(0,$.length-10)),this.addVersion.setValue($)}onSubmit(){if(se.log("onSubmit "+this.addPackageId.value),this.errMsg=null,this.addPackageId.invalid||this.addVersion.invalid)return void(this.errMsg="Please provide package name");let me=this.addPackageId.value.trim();me.indexOf("#")>0&&(me.substring(0,me.indexOf("#")-1),this.addVersion.setValue(me.substring(0,me.indexOf("#")+1))),this.addPackageId.setValue(me);const $=this.addVersion.value.trim();this.addVersion.setValue($),this.update=!0,this.client.create({resourceType:"ImplementationGuide",body:{resourceType:"ImplementationGuide",name:me,version:$,packageId:me,url:this.addUrl.value},options:{headers:{Prefer:"return=OperationOutcome"}}}).then(q=>{this.errMsg="Created Implementation Guide "+this.addPackageId.value,this.operationOutcome=q,this.search()}).catch(q=>{this.errMsg="Error creating Implementation Guide "+this.addPackageId.value,this.operationOutcome=q.response.data,this.update=!1})}goToPage(me){me.pageIndex>this.pageIndex?this.client.nextPage({bundle:this.bundle}).then($=>{this.pageIndex=me.pageIndex,this.setBundle($),this.selection=void 0,console.log("next page called ")}):this.client.prevPage({bundle:this.bundle}).then($=>{this.pageIndex=me.pageIndex,this.setBundle($),this.selection=void 0,console.log("previous page called ")})}onUpdate(){this.errMsg=null,this.selection.name=this.addPackageId.value,this.selection.version=this.addVersion.value,this.selection.packageId=this.addPackageId.value,this.selection.url=this.addUrl.value,this.update=!0,this.client.update({resourceType:this.selection.resourceType,id:this.selection.id,body:this.selection,options:{headers:{Prefer:"return=OperationOutcome"}}}).then(me=>{this.errMsg="Updated Implementation Guide "+this.selection.packageId,this.operationOutcome=me,this.search()}).catch(me=>{this.errMsg="Error updating Implementation Guide "+this.selection.packageId,this.operationOutcome=me.response.data,this.update=!1})}onDelete(){this.errMsg=null,this.update=!0,this.client.delete({resourceType:this.selection.resourceType,id:this.selection.id,options:{headers:{Prefer:"return=OperationOutcome","X-Cascade":"delete"}}}).then(me=>{this.errMsg="Deleted Implementation Guide Resource "+this.selection.packageId,this.operationOutcome=me,this.search()}).catch(me=>{this.errMsg="Error deleting Implementation Guide "+this.selection.packageId,this.operationOutcome=me.response.data,this.update=!1})}}se.log=(0,o.default)("app:"),se.\u0275fac=function(me){return new(me||se)(a.\u0275\u0275directiveInject(c.FhirConfigService),a.\u0275\u0275directiveInject(s.FhirPathService))},se.\u0275cmp=a.\u0275\u0275defineComponent({type:se,selectors:[["app-igs"]],decls:48,vars:16,consts:[[1,"card-igs"],[3,"dataSource"],["table",""],["matColumnDef","packageId"],["class","packageId",4,"matHeaderCellDef"],["class","packageId",4,"matCellDef"],["matColumnDef","version"],["class","version",4,"matHeaderCellDef"],["class","version",4,"matCellDef"],["matColumnDef","title",1,"title"],[4,"matCellDef"],[4,"matHeaderRowDef"],[3,"click",4,"matRowDef","matRowDefColumns"],[3,"pageIndex","length","pageSize","pageSizeOptions","page"],[1,"Search","card-igs"],["matInput","",3,"formControl"],[2,"width","50vw"],["href","https://packages.fhir.org"],["mat-raised-button","","color","primary","type","submit",3,"click"],[4,"ngIf"],["class","logs",4,"ngIf"],[1,"packageId"],[1,"version"],[3,"click"],["mat-button","","type","submit",3,"click"],["mode","indeterminate"],[1,"logs"],[3,"operationOutcome","title"]],template:function(me,$){1&me&&(a.\u0275\u0275elementStart(0,"mat-card",0)(1,"mat-card-content")(2,"mat-card-header")(3,"mat-card-title"),a.\u0275\u0275text(4,"FHIR ImplementationGuides installed on server"),a.\u0275\u0275elementEnd()(),a.\u0275\u0275elementStart(5,"mat-table",1,2),a.\u0275\u0275elementContainerStart(7,3),a.\u0275\u0275template(8,L,2,0,"mat-header-cell",4),a.\u0275\u0275template(9,A,2,1,"mat-cell",5),a.\u0275\u0275elementContainerEnd(),a.\u0275\u0275elementContainerStart(10,6),a.\u0275\u0275template(11,T,2,0,"mat-header-cell",7),a.\u0275\u0275template(12,O,2,1,"mat-cell",8),a.\u0275\u0275elementContainerEnd(),a.\u0275\u0275elementContainerStart(13,9),a.\u0275\u0275template(14,E,2,0,"mat-header-cell",4),a.\u0275\u0275template(15,D,2,1,"mat-cell",10),a.\u0275\u0275elementContainerEnd(),a.\u0275\u0275template(16,R,1,0,"mat-header-row",11),a.\u0275\u0275template(17,j,1,0,"mat-row",12),a.\u0275\u0275elementEnd(),a.\u0275\u0275elementStart(18,"mat-paginator",13),a.\u0275\u0275listener("page",function(Q){return $.goToPage(Q)}),a.\u0275\u0275elementEnd()()(),a.\u0275\u0275elementStart(19,"mat-card",14)(20,"mat-card-content")(21,"mat-card-header")(22,"mat-card-title"),a.\u0275\u0275text(23,"Install an ImplementationGuide"),a.\u0275\u0275elementEnd()(),a.\u0275\u0275elementStart(24,"mat-form-field")(25,"mat-label"),a.\u0275\u0275text(26,"PackageId"),a.\u0275\u0275elementEnd(),a.\u0275\u0275element(27,"input",15),a.\u0275\u0275elementEnd(),a.\u0275\u0275text(28," \xa0 "),a.\u0275\u0275elementStart(29,"mat-form-field")(30,"mat-label"),a.\u0275\u0275text(31,"Version"),a.\u0275\u0275elementEnd(),a.\u0275\u0275element(32,"input",15),a.\u0275\u0275elementEnd(),a.\u0275\u0275text(33," \xa0 "),a.\u0275\u0275elementStart(34,"mat-form-field",16)(35,"mat-label"),a.\u0275\u0275text(36,"Package url (optional, use only if not available through "),a.\u0275\u0275elementStart(37,"a",17),a.\u0275\u0275text(38,"packages.fhir.org"),a.\u0275\u0275elementEnd(),a.\u0275\u0275text(39,")"),a.\u0275\u0275elementEnd(),a.\u0275\u0275element(40,"input",15),a.\u0275\u0275elementEnd(),a.\u0275\u0275elementStart(41,"mat-card-actions")(42,"button",18),a.\u0275\u0275listener("click",function(){return $.onSubmit()}),a.\u0275\u0275text(43,"Upload"),a.\u0275\u0275elementEnd(),a.\u0275\u0275template(44,N,4,0,"ng-container",19),a.\u0275\u0275template(45,S,4,0,"ng-container",19),a.\u0275\u0275elementEnd()()(),a.\u0275\u0275template(46,k,2,0,"ng-container",19),a.\u0275\u0275template(47,F,6,2,"mat-card",20)),2&me&&(a.\u0275\u0275advance(5),a.\u0275\u0275property("dataSource",$.dataSource),a.\u0275\u0275advance(11),a.\u0275\u0275property("matHeaderRowDef",a.\u0275\u0275pureFunction0(14,Y)),a.\u0275\u0275advance(1),a.\u0275\u0275property("matRowDefColumns",a.\u0275\u0275pureFunction0(15,Y)),a.\u0275\u0275advance(1),a.\u0275\u0275property("pageIndex",$.pageIndex)("length",$.length)("pageSize",$.pageSize)("pageSizeOptions",$.pageSizeOptions),a.\u0275\u0275advance(9),a.\u0275\u0275property("formControl",$.addPackageId),a.\u0275\u0275advance(5),a.\u0275\u0275property("formControl",$.addVersion),a.\u0275\u0275advance(8),a.\u0275\u0275property("formControl",$.addUrl),a.\u0275\u0275advance(4),a.\u0275\u0275property("ngIf",$.selection),a.\u0275\u0275advance(1),a.\u0275\u0275property("ngIf",$.selection),a.\u0275\u0275advance(1),a.\u0275\u0275property("ngIf",$.update),a.\u0275\u0275advance(1),a.\u0275\u0275property("ngIf",$.errMsg))},dependencies:[l.NgIf,d.DefaultValueAccessor,d.NgControlStatus,d.FormControlDirective,r.MatLegacyButton,u.MatLegacyCard,u.MatLegacyCardHeader,u.MatLegacyCardContent,u.MatLegacyCardTitle,u.MatLegacyCardActions,h.MatLegacyFormField,h.MatLegacyLabel,m.MatLegacyInput,_.MatLegacyPaginator,M.MatLegacyTable,M.MatLegacyHeaderCellDef,M.MatLegacyHeaderRowDef,M.MatLegacyColumnDef,M.MatLegacyCellDef,M.MatLegacyRowDef,M.MatLegacyHeaderCell,M.MatLegacyCell,M.MatLegacyHeaderRow,M.MatLegacyRow,x.MatLegacyProgressSpinner,w.OperationOutcomeComponent],styles:["[_nghost-%COMP%]{display:flex;flex-direction:column}.mat-form-field.url[_ngcontent-%COMP%]{width:200px}.mat-table[_ngcontent-%COMP%]{margin:1rem}.mat-table[_ngcontent-%COMP%] .mat-row[_ngcontent-%COMP%]{cursor:pointer}.mat-table[_ngcontent-%COMP%] .mat-cell[_ngcontent-%COMP%], .mat-table[_ngcontent-%COMP%] .mat-header-cell[_ngcontent-%COMP%]{padding-left:.5rem;padding-right:.5rem}.mat-table[_ngcontent-%COMP%] .mat-cell.title[_ngcontent-%COMP%], .mat-table[_ngcontent-%COMP%] .mat-header-cell.title[_ngcontent-%COMP%]{flex:2;justify-content:flex-end}.mat-table[_ngcontent-%COMP%] .mat-cell[_ngcontent-%COMP%]:first-child, .mat-table[_ngcontent-%COMP%] .mat-header-cell[_ngcontent-%COMP%]:first-child{padding-left:1rem}.mat-table[_ngcontent-%COMP%] .mat-cell[_ngcontent-%COMP%]:last-child, .mat-table[_ngcontent-%COMP%] .mat-header-cell[_ngcontent-%COMP%]:last-child{padding-right:1rem}.card-igs[_ngcontent-%COMP%]{margin-bottom:10px}"]}),X.IgsComponent=se},5389:(Se,X,g)=>{"use strict";Object.defineProperty(X,"__esModule",{value:!0}),X.MappingLanguageComponent=void 0;const n=g(655),b=(g(5879),g(7088),g(6223)),o=g(1385),v=n.__importDefault(g(563)),a=n.__importStar(g(5879)),c=n.__importStar(g(7088)),s=n.__importStar(g(6814)),l=n.__importStar(g(6223)),d=n.__importStar(g(9025)),r=n.__importStar(g(4187)),u=n.__importStar(g(2400));function h(L,A){if(1&L&&(a.\u0275\u0275elementStart(0,"li"),a.\u0275\u0275text(1),a.\u0275\u0275elementEnd()),2&L){const T=A.$implicit;a.\u0275\u0275advance(1),a.\u0275\u0275textInterpolate1(" ",T.diagnostics," ")}}function m(L,A){if(1&L&&(a.\u0275\u0275elementStart(0,"mat-error")(1,"ul"),a.\u0275\u0275template(2,h,2,1,"li",7),a.\u0275\u0275elementEnd()()),2&L){const T=a.\u0275\u0275nextContext();a.\u0275\u0275advance(2),a.\u0275\u0275property("ngForOf",T.operationOutcome.issue)}}function _(L,A){if(1&L&&(a.\u0275\u0275elementStart(0,"mat-hint"),a.\u0275\u0275text(1),a.\u0275\u0275elementEnd()),2&L){const T=a.\u0275\u0275nextContext();a.\u0275\u0275advance(1),a.\u0275\u0275textInterpolate1("Successfully created on server: ",T.structureMap.url,"")}}function M(L,A){if(1&L&&(a.\u0275\u0275elementStart(0,"li"),a.\u0275\u0275text(1),a.\u0275\u0275elementEnd()),2&L){const T=A.$implicit;a.\u0275\u0275advance(1),a.\u0275\u0275textInterpolate1(" ",T.diagnostics," ")}}function x(L,A){if(1&L&&(a.\u0275\u0275elementStart(0,"mat-error")(1,"ul"),a.\u0275\u0275template(2,M,2,1,"li",7),a.\u0275\u0275elementEnd()()),2&L){const T=a.\u0275\u0275nextContext();a.\u0275\u0275advance(2),a.\u0275\u0275property("ngForOf",T.operationOutcomeTransformed.issue)}}class w{constructor(A,T){this.cd=A,this.data=T,this.client=T.getFhirClient(),this.source=new b.UntypedFormControl,this.map=new b.UntypedFormControl,this.structureMap=null,this.map.valueChanges.pipe((0,o.debounceTime)(1e3),(0,o.distinctUntilChanged)()).subscribe(O=>{w.log("create StructureMap"),this.client.create({resourceType:"StructureMap",body:O,headers:{accept:"application/fhir+json","content-type":"text/fhir-mapping"}}).then(E=>{this.operationOutcome=null,this.structureMap=E,this.transform()}).catch(E=>{this.structureMap=null,this.operationOutcome=E.response.data})}),this.source.valueChanges.pipe((0,o.debounceTime)(1e3),(0,o.distinctUntilChanged)()).subscribe(O=>this.transform())}transform(){w.log("transform Source");let A=JSON.parse(this.source.value);null!=this.structureMap&&this.client.operation({name:"transform?source="+encodeURIComponent(this.structureMap.url),resourceType:"StructureMap",input:A}).then(T=>{this.operationOutcomeTransformed=null,this.transformed=T}).catch(T=>{this.transformed=null,this.operationOutcomeTransformed=T.response.data})}ngOnInit(){}fileSource(A){const T=new FileReader;if(A.target.files&&A.target.files.length){const[O]=A.target.files;T.readAsText(O),T.onload=()=>{this.source.setValue(T.result),this.cd.markForCheck()}}}fileChange(A){const T=new FileReader;if(A.target.files&&A.target.files.length){const[O]=A.target.files;T.readAsText(O),T.onload=()=>{this.map.setValue(T.result),this.cd.markForCheck()}}}}w.log=(0,v.default)("app:"),w.\u0275fac=function(A){return new(A||w)(a.\u0275\u0275directiveInject(a.ChangeDetectorRef),a.\u0275\u0275directiveInject(c.FhirConfigService))},w.\u0275cmp=a.\u0275\u0275defineComponent({type:w,selectors:[["app-mapping-language"]],decls:31,vars:8,consts:[[1,"card-maps"],[1,"fixtextarea"],["type","file","placeholder","Upload source","accept",".json",3,"change"],["matNativeControl","","rows","15","cols","400",3,"formControl"],["type","file","placeholder","Upload map","accept",".map",3,"change"],["matNativeControl","","rows","20","cols","400",3,"formControl"],[4,"ngIf"],[4,"ngFor","ngForOf"]],template:function(A,T){1&A&&(a.\u0275\u0275elementStart(0,"mat-card",0)(1,"mat-card-content")(2,"mat-card-header")(3,"mat-card-title"),a.\u0275\u0275text(4,"Source"),a.\u0275\u0275elementEnd()(),a.\u0275\u0275elementStart(5,"mat-form-field",1)(6,"mat-card-actions")(7,"input",2),a.\u0275\u0275listener("change",function(E){return T.fileSource(E)}),a.\u0275\u0275elementEnd()(),a.\u0275\u0275elementStart(8,"textarea",3),a.\u0275\u0275text(9," "),a.\u0275\u0275elementEnd()()()(),a.\u0275\u0275elementStart(10,"mat-card",0)(11,"mat-card-content")(12,"mat-card-header")(13,"mat-card-title"),a.\u0275\u0275text(14,"FHIR Mapping Language map"),a.\u0275\u0275elementEnd()(),a.\u0275\u0275elementStart(15,"mat-form-field",1)(16,"mat-card-actions")(17,"input",4),a.\u0275\u0275listener("change",function(E){return T.fileChange(E)}),a.\u0275\u0275elementEnd()(),a.\u0275\u0275elementStart(18,"textarea",5),a.\u0275\u0275text(19," "),a.\u0275\u0275elementEnd()(),a.\u0275\u0275template(20,m,3,1,"mat-error",6),a.\u0275\u0275template(21,_,2,1,"mat-hint",6),a.\u0275\u0275elementEnd()(),a.\u0275\u0275elementStart(22,"mat-card",0)(23,"mat-card-content")(24,"mat-card-header")(25,"mat-card-title"),a.\u0275\u0275text(26,"Transformed"),a.\u0275\u0275elementEnd()(),a.\u0275\u0275template(27,x,3,1,"mat-error",6),a.\u0275\u0275elementStart(28,"pre"),a.\u0275\u0275text(29),a.\u0275\u0275pipe(30,"json"),a.\u0275\u0275elementEnd()()()),2&A&&(a.\u0275\u0275advance(8),a.\u0275\u0275property("formControl",T.source),a.\u0275\u0275advance(10),a.\u0275\u0275property("formControl",T.map),a.\u0275\u0275advance(2),a.\u0275\u0275property("ngIf",T.operationOutcome),a.\u0275\u0275advance(1),a.\u0275\u0275property("ngIf",T.structureMap),a.\u0275\u0275advance(6),a.\u0275\u0275property("ngIf",T.operationOutcomeTransformed),a.\u0275\u0275advance(2),a.\u0275\u0275textInterpolate(a.\u0275\u0275pipeBind1(30,6,T.transformed)))},dependencies:[s.NgForOf,s.NgIf,l.DefaultValueAccessor,l.NgControlStatus,l.FormControlDirective,d.MatLegacyCard,d.MatLegacyCardHeader,d.MatLegacyCardContent,d.MatLegacyCardTitle,d.MatLegacyCardActions,r.MatLegacyError,r.MatLegacyFormField,r.MatLegacyHint,u.MatLegacyInput,s.JsonPipe],styles:[".fixtextarea[_ngcontent-%COMP%]{display:inline}.card-maps[_ngcontent-%COMP%]{margin-bottom:10px}"]}),X.MappingLanguageComponent=w},7515:(Se,X,g)=>{"use strict";Object.defineProperty(X,"__esModule",{value:!0}),X.OperationOutcomeComponent=void 0;const n=g(655),C=(g(5879),n.__importStar(g(5101))),b=n.__importStar(g(5879)),o=n.__importStar(g(6814)),v=n.__importStar(g(9025)),a=["editor"];function c(h,m){if(1&h&&(b.\u0275\u0275elementContainerStart(0),b.\u0275\u0275text(1),b.\u0275\u0275elementContainerEnd()),2&h){const _=b.\u0275\u0275nextContext().$implicit;b.\u0275\u0275advance(1),b.\u0275\u0275textInterpolate1(" ",_.diagnostics," ")}}function s(h,m){if(1&h&&(b.\u0275\u0275elementStart(0,"li",5),b.\u0275\u0275text(1),b.\u0275\u0275elementEnd()),2&h){const _=m.$implicit;b.\u0275\u0275advance(1),b.\u0275\u0275textInterpolate1(" ",_," ")}}function l(h,m){if(1&h&&(b.\u0275\u0275elementContainerStart(0),b.\u0275\u0275elementStart(1,"ol"),b.\u0275\u0275template(2,s,2,1,"li",4),b.\u0275\u0275elementEnd(),b.\u0275\u0275elementContainerEnd()),2&h){const _=b.\u0275\u0275nextContext().$implicit,M=b.\u0275\u0275nextContext(2);b.\u0275\u0275advance(2),b.\u0275\u0275property("ngForOf",M.getSliceInfo(_))}}function d(h,m){if(1&h){const _=b.\u0275\u0275getCurrentView();b.\u0275\u0275elementStart(0,"div",5)(1,"a",6),b.\u0275\u0275listener("click",function(){const w=b.\u0275\u0275restoreView(_).$implicit,L=b.\u0275\u0275nextContext(2);return b.\u0275\u0275resetView(L.scroll(L.getLineNo(w)))}),b.\u0275\u0275text(2),b.\u0275\u0275elementEnd(),b.\u0275\u0275text(3,":"),b.\u0275\u0275element(4,"br"),b.\u0275\u0275template(5,c,2,1,"ng-container",1),b.\u0275\u0275template(6,l,3,1,"ng-container",1),b.\u0275\u0275elementEnd()}if(2&h){const _=m.$implicit,M=b.\u0275\u0275nextContext(2);b.\u0275\u0275advance(1),b.\u0275\u0275classMap(_.severity),b.\u0275\u0275advance(1),b.\u0275\u0275textInterpolate2("",M.getLineFromExtension(_),": ",M.getLocation(_),""),b.\u0275\u0275advance(3),b.\u0275\u0275property("ngIf",0==M.hasSliceInfo(_)),b.\u0275\u0275advance(1),b.\u0275\u0275property("ngIf",M.hasSliceInfo(_))}}function r(h,m){if(1&h&&(b.\u0275\u0275elementStart(0,"div"),b.\u0275\u0275template(1,d,7,7,"div",4),b.\u0275\u0275elementEnd()),2&h){const _=b.\u0275\u0275nextContext();b.\u0275\u0275advance(1),b.\u0275\u0275property("ngForOf",_.outcome.issue)}}X.OperationOutcomeComponent=(()=>{class h{constructor(){this.mode="ace/mode/json"}ngOnInit(){}ngAfterViewInit(){this.editor&&this.editor.nativeElement&&(C.config.set("fontSize","11px"),C.config.set("basePath","https://unpkg.com/ace-builds@1.4.12/src-noconflict"),this.aceEditor=C.edit(this.editor.nativeElement),this.aceEditor.setOption("useWorker",!1),this.aceEditor.setTheme("ace/theme/chrome"),this.mode?.indexOf("xml")>=0?this.aceEditor.session.setMode("ace/mode/xml"):this.aceEditor.session.setMode("ace/mode/json"),this.aceEditor.session.setValue(this.content),this.aceEditor.setReadOnly(!0),this.aceEditor.on("change",()=>{console.log(this.aceEditor.getValue())}),this.updateAnnotations())}updateAnnotations(){const _=[];if(this.outcome&&this.aceEditor){const M=this.aceEditor.session.getMarkers();if(M){const x=Object.keys(M);for(let w of x)this.aceEditor.session.removeMarker(M[w].id)}this.outcome.issue?.forEach(x=>this.aceEditor.getSession().addMarker(new C.Range(this.getLineNo(x)-1,0,this.getLineNo(x)-1,1),this.getLineAceClass(x),"fullLine",!0)),this.outcome.issue?.forEach(x=>_.push({row:this.getLineNo(x)-1,column:0,text:x.diagnostics,type:this.getErrorType(x)})),this.aceEditor.session.setAnnotations(_)}}getErrorType(_){switch(_.severity){case"fatal":case"error":return"error";case"warning":case"information":return"warning"}return""}set json(_){this.content=_,this.ngAfterViewInit()}set operationOutcome(_){this.outcome=_,this.outcome&&this.outcome.issue?.length>0&&(this.outcome.issue?.sort((M,x)=>this.getLineNo(M)-this.getLineNo(x)),this.ngAfterViewInit())}getJson(){return this.content}getLineAceClass(_){return"ace-highlight-"+_?.severity}getLineNo(_){return _.extension?.length>0?_.extension[0].valueInteger:0}hasSliceInfo(_){return _?.diagnostics?.indexOf("Slice info:")>=0}getSliceInfo(_){let M=_?.diagnostics.substring(_?.diagnostics?.indexOf("Slice info: 1.)")+15).trimLeft(),x=new RegExp("[\\d]+[\\.][\\)]");return M.split(x)}getLineFromExtension(_){return _.extension?.length>0?"L"+_.extension[0].valueInteger:""}getLocation(_){return _.location?.length>0?_.location[0]:""}scroll(_){(_-=1)<0&&(_=0),this.aceEditor.scrollToLine(_,!1,!0,null)}}return h.\u0275fac=function(_){return new(_||h)},h.\u0275cmp=b.\u0275\u0275defineComponent({type:h,selectors:[["app-operation-outcome"]],viewQuery:function(_,M){if(1&_&&b.\u0275\u0275viewQuery(a,5),2&_){let x;b.\u0275\u0275queryRefresh(x=b.\u0275\u0275loadQuery())&&(M.editor=x.first)}},inputs:{mode:"mode",title:"title",json:"json",operationOutcome:"operationOutcome"},decls:8,vars:2,consts:[[1,"card-maps"],[4,"ngIf"],[1,"app-ace-editor",2,"width","100%","height","500px"],["editor",""],["class","issue",4,"ngFor","ngForOf"],[1,"issue"],[3,"click"]],template:function(_,M){1&_&&(b.\u0275\u0275elementStart(0,"mat-card",0)(1,"mat-card-content")(2,"mat-card-header")(3,"mat-card-title"),b.\u0275\u0275text(4),b.\u0275\u0275elementEnd()(),b.\u0275\u0275template(5,r,2,1,"div",1),b.\u0275\u0275element(6,"div",2,3),b.\u0275\u0275elementEnd()()),2&_&&(b.\u0275\u0275advance(4),b.\u0275\u0275textInterpolate(M.title),b.\u0275\u0275advance(1),b.\u0275\u0275property("ngIf",M.outcome))},dependencies:[o.NgForOf,o.NgIf,v.MatLegacyCard,v.MatLegacyCardHeader,v.MatLegacyCardContent,v.MatLegacyCardTitle],styles:[".card-maps[_ngcontent-%COMP%]{margin-bottom:10px}.app-ace-editor[_ngcontent-%COMP%]{border:2px solid #f8f9fa;box-shadow:0 .5rem 1rem #00000026}.issue[_ngcontent-%COMP%]{border:2px solid #f8f9fa;padding:2px}.fatal[_ngcontent-%COMP%]{background:#cc3300}.error[_ngcontent-%COMP%]{background:#ff9966}.warning[_ngcontent-%COMP%]{background:#ffe69e}.information[_ngcontent-%COMP%]{background:#cde8a5} .ace-highlight-fatal{position:absolute;background:#cc3300;opacity:.4} .ace-highlight-error{position:absolute;background:#ff9966;opacity:.4} .ace-highlight-warning{position:absolute;background:#ffcc00;opacity:.4} .ace-highlight-information{position:absolute;background:#99cc33;opacity:.4}"]}),h})()},3835:(Se,X,g)=>{"use strict";Object.defineProperty(X,"__esModule",{value:!0}),X.SettingsComponent=void 0;const n=g(655),p=n.__importDefault(g(4147)),C=n.__importStar(g(5879)),b=n.__importStar(g(9025));X.SettingsComponent=(()=>{class v{constructor(){this.version=p.default.version}ngOnInit(){}}return v.\u0275fac=function(c){return new(c||v)},v.\u0275cmp=C.\u0275\u0275defineComponent({type:v,selectors:[["app-settings"]],decls:14,vars:1,consts:[["href","https://github.com/ahdis/matchbox","target","_blank","rel","external nofollow noopener"]],template:function(c,s){1&c&&(C.\u0275\u0275elementStart(0,"mat-card")(1,"mat-card-header")(2,"mat-card-title"),C.\u0275\u0275text(3,"Matchbox settings"),C.\u0275\u0275elementEnd(),C.\u0275\u0275elementStart(4,"mat-card-subtitle"),C.\u0275\u0275text(5),C.\u0275\u0275elementEnd()(),C.\u0275\u0275elementStart(6,"mat-card-content")(7,"p")(8,"em"),C.\u0275\u0275text(9,"There are no configurable settings here right now"),C.\u0275\u0275elementEnd()(),C.\u0275\u0275elementStart(10,"p"),C.\u0275\u0275text(11," Source code: "),C.\u0275\u0275elementStart(12,"a",0),C.\u0275\u0275text(13,"github.com/ahdis/matchbox"),C.\u0275\u0275elementEnd()()()()),2&c&&(C.\u0275\u0275advance(5),C.\u0275\u0275textInterpolate1("Version ",s.version,""))},dependencies:[b.MatLegacyCard,b.MatLegacyCardHeader,b.MatLegacyCardContent,b.MatLegacyCardTitle,b.MatLegacyCardSubtitle]}),v})()},6208:(Se,X,g)=>{"use strict";Object.defineProperty(X,"__esModule",{value:!0}),X.SharedModule=void 0;const n=g(655),p=g(6814),C=g(6223),b=g(6593),o=g(9241),v=g(4505),a=g(9025),c=g(4021),s=g(3680),l=g(5616),d=g(6385),r=g(4187),u=g(617),h=g(2400),m=g(6718),_=g(9559),M=g(1036),x=g(1798),w=g(1830),L=g(4433),A=g(2214),T=g(8615),O=g(1274),E=g(9515),D=g(1438),R=n.__importStar(g(5879)),j=[p.CommonModule,b.BrowserModule,C.FormsModule,C.ReactiveFormsModule,E.TranslateModule,o.MatLegacyAutocompleteModule,v.MatLegacyButtonModule,a.MatLegacyCardModule,c.MatLegacyCheckboxModule,d.MatDividerModule,r.MatLegacyFormFieldModule,u.MatIconModule,h.MatLegacyInputModule,m.MatLegacyMenuModule,_.MatLegacyPaginatorModule,x.MatLegacySelectModule,L.MatLegacySliderModule,w.MatLegacySlideToggleModule,A.MatLegacyTableModule,O.MatToolbarModule,T.MatLegacyTabsModule,l.MatDatepickerModule,s.MatNativeDateModule,M.MatLegacyRadioModule,D.MatLegacyProgressSpinnerModule];X.SharedModule=(()=>{class k{}return k.\u0275fac=function(Y){return new(Y||k)},k.\u0275mod=R.\u0275\u0275defineNgModule({type:k}),k.\u0275inj=R.\u0275\u0275defineInjector({imports:[j,p.CommonModule,b.BrowserModule,C.FormsModule,C.ReactiveFormsModule,E.TranslateModule,o.MatLegacyAutocompleteModule,v.MatLegacyButtonModule,a.MatLegacyCardModule,c.MatLegacyCheckboxModule,d.MatDividerModule,r.MatLegacyFormFieldModule,u.MatIconModule,h.MatLegacyInputModule,m.MatLegacyMenuModule,_.MatLegacyPaginatorModule,x.MatLegacySelectModule,L.MatLegacySliderModule,w.MatLegacySlideToggleModule,A.MatLegacyTableModule,O.MatToolbarModule,T.MatLegacyTabsModule,l.MatDatepickerModule,s.MatNativeDateModule,M.MatLegacyRadioModule,D.MatLegacyProgressSpinnerModule]}),k})()},7154:(Se,X,g)=>{"use strict";Object.defineProperty(X,"__esModule",{value:!0}),X.TransformComponent=void 0;const n=g(655),b=(g(5879),g(7088),g(6223)),o=g(1385),v=n.__importStar(g(5879)),a=n.__importStar(g(7088)),c=n.__importStar(g(6814)),s=n.__importStar(g(6223)),l=n.__importStar(g(4678)),d=n.__importStar(g(9025)),r=n.__importStar(g(4187)),u=n.__importStar(g(1798)),h=n.__importStar(g(9949)),m=n.__importStar(g(9009));function _(L,A){if(1&L&&(v.\u0275\u0275elementStart(0,"mat-option",7),v.\u0275\u0275text(1),v.\u0275\u0275elementEnd()),2&L){const T=A.$implicit;v.\u0275\u0275propertyInterpolate("value",T.url),v.\u0275\u0275advance(1),v.\u0275\u0275textInterpolate(T.name)}}function M(L,A){if(1&L&&(v.\u0275\u0275elementStart(0,"li"),v.\u0275\u0275text(1),v.\u0275\u0275elementEnd()),2&L){const T=A.$implicit;v.\u0275\u0275advance(1),v.\u0275\u0275textInterpolate1(" ",T.diagnostics," ")}}function x(L,A){if(1&L&&(v.\u0275\u0275elementStart(0,"mat-error")(1,"ul"),v.\u0275\u0275template(2,M,2,1,"li",8),v.\u0275\u0275elementEnd()()),2&L){const T=v.\u0275\u0275nextContext();v.\u0275\u0275advance(2),v.\u0275\u0275property("ngForOf",T.operationOutcomeTransformed.issue)}}X.TransformComponent=(()=>{class L{constructor(T,O){this.data=T,this.cd=O,this.query={_summary:"true",_sort:"name"},this.panelOpenState=!1,this.client=T.getFhirClient(),this.client.search({resourceType:"StructureMap",searchParams:this.query}).then(E=>(this.setMaps(E),E)),this.selectedMap=new b.UntypedFormControl,this.selectedMap.valueChanges.pipe((0,o.debounceTime)(400),(0,o.distinctUntilChanged)()).subscribe(E=>{this.selectedUrl=E,this.transform()})}transform(){null!=this.source&&null!=this.selectedUrl&&this.client.operation({name:"transform?source="+encodeURIComponent(this.selectedUrl),resourceType:"StructureMap",input:this.source,options:{headers:{"content-type":this.mimeType}}}).then(T=>{this.operationOutcomeTransformed=null,this.transformed=T}).catch(T=>{this.transformed=null,this.operationOutcomeTransformed=T.response.data})}getSource(){return this.source}getMapped(){return JSON.stringify(this.transformed,null,2)}setMaps(T){this.structureMaps=T.entry.map(O=>O.resource)}ngOnInit(){}addFile(T){this.transformed=null,("application/json"===T.contentType||T.name.endsWith(".json"))&&(this.mimeType="application/fhir+json"),("application/xml"===T.contentType||T.name.endsWith(".xml"))&&(this.mimeType="application/fhir+xml");const O=new FileReader;O.readAsText(T.blob),O.onload=()=>{this.source=O.result}}}return L.\u0275fac=function(T){return new(T||L)(v.\u0275\u0275directiveInject(a.FhirConfigService),v.\u0275\u0275directiveInject(v.ChangeDetectorRef))},L.\u0275cmp=v.\u0275\u0275defineComponent({type:L,selectors:[["app-transform"]],decls:24,vars:8,consts:[[1,"card-maps"],[3,"addFiles"],[3,"highlight","lineNumbers"],["appearance","fill"],[3,"formControl"],[3,"value",4,"ngFor","ngForOf"],[4,"ngIf"],[3,"value"],[4,"ngFor","ngForOf"]],template:function(T,O){1&T&&(v.\u0275\u0275elementStart(0,"mat-card",0)(1,"mat-card-content")(2,"mat-card-header")(3,"mat-card-title"),v.\u0275\u0275text(4),v.\u0275\u0275elementEnd()(),v.\u0275\u0275elementStart(5,"div"),v.\u0275\u0275text(6,"Resource"),v.\u0275\u0275elementEnd(),v.\u0275\u0275elementStart(7,"app-upload",1),v.\u0275\u0275listener("addFiles",function(D){return O.addFile(D)}),v.\u0275\u0275elementEnd(),v.\u0275\u0275elementStart(8,"pre"),v.\u0275\u0275element(9,"code",2),v.\u0275\u0275elementEnd()()(),v.\u0275\u0275elementStart(10,"mat-card",0)(11,"mat-form-field",3)(12,"mat-label"),v.\u0275\u0275text(13,"Map for transforming"),v.\u0275\u0275elementEnd(),v.\u0275\u0275elementStart(14,"mat-select",4),v.\u0275\u0275template(15,_,2,2,"mat-option",5),v.\u0275\u0275elementEnd()()(),v.\u0275\u0275elementStart(16,"mat-card",0)(17,"mat-card-content")(18,"mat-card-header")(19,"mat-card-title"),v.\u0275\u0275text(20,"Transformed"),v.\u0275\u0275elementEnd()(),v.\u0275\u0275template(21,x,3,1,"mat-error",6),v.\u0275\u0275elementStart(22,"pre"),v.\u0275\u0275element(23,"code",2),v.\u0275\u0275elementEnd()()()),2&T&&(v.\u0275\u0275advance(4),v.\u0275\u0275textInterpolate(O.client.baseUrl),v.\u0275\u0275advance(5),v.\u0275\u0275property("highlight",O.getSource())("lineNumbers",!0),v.\u0275\u0275advance(5),v.\u0275\u0275property("formControl",O.selectedMap),v.\u0275\u0275advance(1),v.\u0275\u0275property("ngForOf",O.structureMaps),v.\u0275\u0275advance(6),v.\u0275\u0275property("ngIf",O.operationOutcomeTransformed),v.\u0275\u0275advance(2),v.\u0275\u0275property("highlight",O.getMapped())("lineNumbers",!0))},dependencies:[c.NgForOf,c.NgIf,s.NgControlStatus,s.FormControlDirective,l.MatLegacyOption,d.MatLegacyCard,d.MatLegacyCardHeader,d.MatLegacyCardContent,d.MatLegacyCardTitle,r.MatLegacyError,r.MatLegacyFormField,r.MatLegacyLabel,u.MatLegacySelect,h.Highlight,m.UploadComponent],styles:[".card-maps[_ngcontent-%COMP%]{margin-bottom:10px}"]}),L})()},9009:(Se,X,g)=>{"use strict";var n=g(7156).default;Object.defineProperty(X,"__esModule",{value:!0}),X.UploadComponent=void 0;const p=g(655),C=g(5879),b=p.__importStar(g(5879)),o=p.__importStar(g(4505)),v=p.__importStar(g(617));X.UploadComponent=(()=>{class c{constructor(){this.addFiles=new C.EventEmitter,this.dragCounter=0}checkStatus(l){if(!l.ok)throw new Error(`HTTP ${l.status} - ${l.statusText}`);return l}onDrop(l){l.preventDefault(),this.dragCounter=0;const d=l.target.files||l.dataTransfer.items;if(d)for(let u=0;u0))},dependencies:[o.MatLegacyButton,v.MatIcon],styles:["[_nghost-%COMP%]{display:flex;flex-direction:column}.attachment-field[_ngcontent-%COMP%]{border-radius:5px;background:#f0f3f6}.attachment-field[_ngcontent-%COMP%] .attachment-entry[_ngcontent-%COMP%]{border-bottom:1px solid #dedede;display:flex;align-items:center;height:40px}.attachment-field[_ngcontent-%COMP%] .attachment-entry[_ngcontent-%COMP%] .attachment-name[_ngcontent-%COMP%]{flex:1;padding:0 1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.attachment-field[_ngcontent-%COMP%] .attachment-entry[_ngcontent-%COMP%] .attachment-size[_ngcontent-%COMP%]:last-child{margin-right:1rem}.attachment-field[_ngcontent-%COMP%] .attachment-entry[_ngcontent-%COMP%] .mat-icon-button[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;line-height:inherit}.attachment-field[_ngcontent-%COMP%] .drop-zone[_ngcontent-%COMP%]{text-align:center;padding:2rem;border-bottom-left-radius:5px;border-bottom-right-radius:5px}.attachment-field[_ngcontent-%COMP%] .drop-zone[_ngcontent-%COMP%]:first-child{border-top-left-radius:5px;border-top-right-radius:5px}.attachment-field[_ngcontent-%COMP%] .drop-zone.file-over[_ngcontent-%COMP%]{background:#e0e6ec}.attachment-field[_ngcontent-%COMP%] .drop-zone[_ngcontent-%COMP%] .spacer[_ngcontent-%COMP%]{line-height:3rem}.attachment-field[_ngcontent-%COMP%] .drop-zone[_ngcontent-%COMP%] .bold-text[_ngcontent-%COMP%]{font-weight:700}"],changeDetection:0}),c})()},9936:(Se,X,g)=>{"use strict";var n=g(7156).default;Object.defineProperty(X,"__esModule",{value:!0}),X.ValidateComponent=void 0;const p=g(655),o=(g(5879),g(7088),g(6223)),v=p.__importDefault(g(827)),a=p.__importDefault(g(1328)),c=g(2214),s=p.__importStar(g(5879)),l=p.__importStar(g(7088)),d=p.__importStar(g(6814)),r=p.__importStar(g(6223)),u=p.__importStar(g(4678)),h=p.__importStar(g(4505)),m=p.__importStar(g(9025)),_=p.__importStar(g(4187)),M=p.__importStar(g(617)),x=p.__importStar(g(2400)),w=p.__importStar(g(6718)),L=p.__importStar(g(1798)),A=p.__importStar(g(2214)),T=p.__importStar(g(1438)),O=p.__importStar(g(7515)),E=p.__importStar(g(9009));function D(ot,vt){if(1&ot&&(s.\u0275\u0275elementStart(0,"mat-option",26),s.\u0275\u0275text(1),s.\u0275\u0275elementEnd()),2&ot){const rt=vt.$implicit;s.\u0275\u0275property("value",rt),s.\u0275\u0275advance(1),s.\u0275\u0275textInterpolate1(" ",rt," ")}}function R(ot,vt){if(1&ot&&(s.\u0275\u0275elementStart(0,"mat-option",26),s.\u0275\u0275text(1),s.\u0275\u0275elementEnd()),2&ot){const rt=vt.$implicit;s.\u0275\u0275property("value",rt),s.\u0275\u0275advance(1),s.\u0275\u0275textInterpolate1(" ",rt," ")}}function j(ot,vt){1&ot&&(s.\u0275\u0275elementContainerStart(0),s.\u0275\u0275element(1,"mat-progress-spinner",27),s.\u0275\u0275elementContainerEnd())}function N(ot,vt){if(1&ot&&(s.\u0275\u0275elementContainerStart(0),s.\u0275\u0275element(1,"app-operation-outcome",28),s.\u0275\u0275elementContainerEnd()),2&ot){const rt=s.\u0275\u0275nextContext();s.\u0275\u0275advance(1),s.\u0275\u0275property("operationOutcome",rt.operationOutcome)("title",rt.errMsg)}}function S(ot,vt){1&ot&&(s.\u0275\u0275elementStart(0,"mat-header-cell",29),s.\u0275\u0275text(1,"Resource"),s.\u0275\u0275elementEnd())}function k(ot,vt){if(1&ot&&(s.\u0275\u0275elementStart(0,"mat-cell",29),s.\u0275\u0275text(1),s.\u0275\u0275elementEnd()),2&ot){const rt=vt.$implicit;s.\u0275\u0275advance(1),s.\u0275\u0275textInterpolate(rt.name)}}function F(ot,vt){1&ot&&(s.\u0275\u0275elementStart(0,"mat-header-cell",30),s.\u0275\u0275text(1,"Profile/IG"),s.\u0275\u0275elementEnd())}function Y(ot,vt){if(1&ot&&(s.\u0275\u0275elementStart(0,"div"),s.\u0275\u0275text(1),s.\u0275\u0275elementEnd()),2&ot){const rt=vt.$implicit;s.\u0275\u0275advance(1),s.\u0275\u0275textInterpolate1(" ",rt," ")}}function se(ot,vt){if(1&ot&&(s.\u0275\u0275elementStart(0,"div"),s.\u0275\u0275text(1),s.\u0275\u0275elementEnd()),2&ot){const rt=s.\u0275\u0275nextContext().$implicit;s.\u0275\u0275advance(1),s.\u0275\u0275textInterpolate1(" ",rt.ig," ")}}function ne(ot,vt){if(1&ot&&(s.\u0275\u0275elementStart(0,"mat-cell",30)(1,"div"),s.\u0275\u0275template(2,Y,2,1,"div",31),s.\u0275\u0275template(3,se,2,1,"div",7),s.\u0275\u0275elementEnd()()),2&ot){const rt=vt.$implicit;s.\u0275\u0275advance(2),s.\u0275\u0275property("ngForOf",rt.profiles),s.\u0275\u0275advance(1),s.\u0275\u0275property("ngIf",rt.ig)}}function me(ot,vt){1&ot&&(s.\u0275\u0275elementStart(0,"mat-header-cell",32),s.\u0275\u0275text(1,"Errors"),s.\u0275\u0275elementEnd())}function $(ot,vt){if(1&ot&&(s.\u0275\u0275elementStart(0,"mat-cell",32),s.\u0275\u0275text(1),s.\u0275\u0275elementEnd()),2&ot){const rt=vt.$implicit;s.\u0275\u0275advance(1),s.\u0275\u0275textInterpolate1("",rt.operationOutcome?rt.getErrors():"-"," ")}}function q(ot,vt){1&ot&&(s.\u0275\u0275elementStart(0,"mat-header-cell",32),s.\u0275\u0275text(1,"Warnings"),s.\u0275\u0275elementEnd())}function Q(ot,vt){if(1&ot&&(s.\u0275\u0275elementStart(0,"mat-cell",32),s.\u0275\u0275text(1),s.\u0275\u0275elementEnd()),2&ot){const rt=vt.$implicit;s.\u0275\u0275advance(1),s.\u0275\u0275textInterpolate1("",rt.operationOutcome?rt.getWarnings():"-"," ")}}function ue(ot,vt){1&ot&&(s.\u0275\u0275elementStart(0,"mat-header-cell",32),s.\u0275\u0275text(1,"Info"),s.\u0275\u0275elementEnd())}function Me(ot,vt){if(1&ot&&(s.\u0275\u0275elementStart(0,"mat-cell",32),s.\u0275\u0275text(1),s.\u0275\u0275elementEnd()),2&ot){const rt=vt.$implicit;s.\u0275\u0275advance(1),s.\u0275\u0275textInterpolate1("",rt.operationOutcome?rt.getInfos():"-"," ")}}function Oe(ot,vt){1&ot&&(s.\u0275\u0275elementStart(0,"mat-header-cell",32),s.\u0275\u0275text(1,"Remove"),s.\u0275\u0275elementEnd())}function Xe(ot,vt){if(1&ot){const rt=s.\u0275\u0275getCurrentView();s.\u0275\u0275elementStart(0,"mat-cell",32)(1,"button",33),s.\u0275\u0275listener("click",function(){const ee=s.\u0275\u0275restoreView(rt).$implicit,ae=s.\u0275\u0275nextContext();return s.\u0275\u0275resetView(ae.remove(ee))}),s.\u0275\u0275elementStart(2,"mat-icon"),s.\u0275\u0275text(3,"remove"),s.\u0275\u0275elementEnd()()()}}function Be(ot,vt){1&ot&&s.\u0275\u0275element(0,"mat-header-row")}function $e(ot,vt){if(1&ot){const rt=s.\u0275\u0275getCurrentView();s.\u0275\u0275elementStart(0,"mat-row",34),s.\u0275\u0275listener("click",function(){const ee=s.\u0275\u0275restoreView(rt).$implicit,ae=s.\u0275\u0275nextContext();return s.\u0275\u0275resetView(ae.selectRow(ee))}),s.\u0275\u0275elementEnd()}}function st(ot,vt){if(1&ot&&(s.\u0275\u0275elementStart(0,"div",2)(1,"mat-form-field",36)(2,"mat-label"),s.\u0275\u0275text(3),s.\u0275\u0275elementEnd(),s.\u0275\u0275element(4,"input",37),s.\u0275\u0275elementEnd()()),2&ot){const rt=vt.$implicit;s.\u0275\u0275advance(3),s.\u0275\u0275textInterpolate(rt.param.name),s.\u0275\u0275advance(1),s.\u0275\u0275property("formControl",rt.formControl)}}function Mt(ot,vt){if(1&ot&&(s.\u0275\u0275elementContainerStart(0),s.\u0275\u0275template(1,st,5,2,"div",35),s.\u0275\u0275elementContainerEnd()),2&ot){const rt=s.\u0275\u0275nextContext();s.\u0275\u0275advance(1),s.\u0275\u0275property("ngForOf",rt.validatorSettings)}}function tt(ot,vt){if(1&ot&&(s.\u0275\u0275elementContainerStart(0),s.\u0275\u0275element(1,"app-operation-outcome",38),s.\u0275\u0275elementContainerEnd()),2&ot){const rt=s.\u0275\u0275nextContext();s.\u0275\u0275advance(1),s.\u0275\u0275property("mode",rt.selectedEntry.mimetype)("operationOutcome",rt.operationOutcome)("json",rt.json)("title",rt.validationOutcomeTitle())}}const St=function(){return["name","profile","error","warning","info","action"]};class bt{constructor(vt){this.param=vt,this.formControl=new o.UntypedFormControl}isValueSet(){return null!=this.valueBoolean||null!=this.valueString}}class xt{constructor(vt,rt,J,Ce){this.name=vt,this.json=rt,this.mimetype=J,this.profiles=Ce}getErrors(){if(this.operationOutcome)return this.operationOutcome?.issue?.filter(vt=>"processing"===vt.code&&("error"===vt.severity||"fatal"===vt.severity)).length}getWarnings(){if(this.operationOutcome)return this.operationOutcome?.issue?.filter(vt=>"processing"===vt.code&&"warning"===vt.severity).length}getInfos(){if(this.operationOutcome)return this.operationOutcome?.issue?.filter(vt=>"processing"===vt.code&&"information"===vt.severity).length}}X.ValidateComponent=(()=>{class ot{constructor(rt,J){this.data=rt,this.cd=J,this.selectedIg=null,this.validatorSettings=new Array,this.dataSource=new c.MatLegacyTableDataSource,this.showSettings=!1,this.client=rt.getFhirClient(),this.client.capabilityStatement().then(Ce=>{this.capabilitystatement=Ce,this.client.read({resourceType:"OperationDefinition",id:"-s-validate"}).then(ee=>{ee.parameter?.forEach(ae=>{"profile"==ae.name&&(this.profiles=ae.targetProfile)}),ee.parameter.filter(ae=>"in"==ae.use&&"resource"!=ae.name&&"profile"!=ae.name&&"ig"!=ae.name).forEach(ae=>{this.validatorSettings.push(new bt(ae))})})}).catch(Ce=>{this.errMsg="Error accessing FHIR server",this.operationOutcome=Ce.response.data}),this.client.search({resourceType:"ImplementationGuide",searchParams:{_sort:"title",_count:1e3}}).then(Ce=>{this.igs=Ce.entry.map(ee=>ee.resource.packageId+"#"+ee.resource.version).sort()}).catch(Ce=>{this.errMsg="Error accessing FHIR server",this.operationOutcome=Ce.response.data}),this.validationInProgress=0}getSelectedProfile(){return this.selectedProfile}setSelectedProfile(rt){this.selectedProfile=rt}getSelectedIg(){return this.selectedIg}setSelectedIg(rt){this.selectedIg=rt}getProfiles(){return this.profiles}addFile(rt){this.validationInProgress+=1,("application/json"===rt.contentType||rt.name.endsWith(".json"))&&this.addJson(rt.blob),("application/xml"===rt.contentType||rt.name.endsWith(".xml"))&&this.addXml(rt.blob),rt.name.endsWith(".tgz")&&this.addPackage(rt.blob),this.validationInProgress-=1}addXml(rt){this.selectedProfile=null,this.selectedIg=null;const J=new FileReader;J.readAsText(rt),J.onload=()=>{this.cd.markForCheck();let ee=new xt(rt.name,J.result,"application/fhir+xml",null);this.selectRow(ee),null!=this.selectedProfile&&(ee.profiles=[this.selectedProfile]),this.validate(ee)}}addJson(rt){this.selectedProfile=null,this.selectedIg=null;const J=new FileReader;J.readAsText(rt),J.onload=()=>{this.cd.markForCheck();let ee=new xt(rt.name,J.result,"application/fhir+json",null);this.selectRow(ee),null!=this.selectedProfile&&(ee.profiles=[this.selectedProfile]),this.validate(ee)}}onValidateIg(){let rt="";null!=this.selectedIg&&(rt=this.selectedIg.endsWith(" (current)")?this.selectedIg.substring(0,this.selectedIg.length-10):this.selectedIg,rt=rt.replace("#","-"),this.fetchData(this.client.baseUrl+"/ImplementationGuide/"+rt))}fetchData(rt){var J=this;return n(function*(){const Ce=yield fetch(rt,{cache:"no-store",headers:{Accept:"application/gzip"}}),ae=(Ce.headers.get("Content-Type"),yield Ce.blob());J.addPackage(ae)})()}addPackage(rt){this.selectedProfile=null,this.selectedIg=null;const J=new FileReader;J.readAsArrayBuffer(rt),J.onload=()=>{if(this.package=J.result,this.cd.markForCheck(),null!=this.package){const Ce=v.default.inflate(new Uint8Array(this.package)),ee=new Array;let ae=null,ie=null;const pe=this;(0,a.default)(Ce.buffer).then(function(Te){ee.forEach(ct=>{ct.ig=ie,ct.fhirVersion=ae,pe.validate(ct)})},function(Te){},function(Te){if(Te.name?.indexOf("package.json")>=0){let ct=new TextDecoder("utf-8"),Lt=JSON.parse(ct.decode(Te.buffer));ae=Lt.fhirVersions[0],ie=Lt.name+"#"+Lt.version}if(Te.name?.indexOf("example")>=0&&-1==Te.name?.indexOf(".index.json")){let ct=Te.name;ct.startsWith("package/example/")&&(ct=ct.substring(16)),ct.startsWith("example/")&&(ct=ct.substring(8));let Lt=new TextDecoder("utf-8"),Dt=JSON.parse(Lt.decode(Te.buffer)),Kt=Dt.meta?.profile;for(let yt=0;yt0))return;J="?profile="+encodeURIComponent(rt.profiles[0]),null!=rt.ig&&(J+="&ig="+encodeURIComponent(rt.ig))}catch{}for(let Ce=0;Ce0&&(J+="&"+this.validatorSettings[Ce].param.name+"="+encodeURIComponent(this.validatorSettings[Ce].formControl.value));this.validationInProgress+=1,this.client.operation({name:"validate"+J,resourceType:void 0,input:rt.json,options:{headers:{accept:"application/fhir+json","content-type":rt.mimetype}}}).then(Ce=>{this.validationInProgress-=1,rt.operationOutcome=Ce,this.dataSource.data.push(rt),this.dataSource.data=this.dataSource.data,0==this.validationInProgress&&this.selectRow(rt)}).catch(Ce=>{this.validationInProgress-=1})}selectRow(rt){if(this.errMsg="",this.selectedEntry=rt,rt){if(this.operationOutcome=rt.operationOutcome,this.json=rt.json,this.resourceName="",this.resourceId="","application/fhir+json"===rt.mimetype)try{const J=JSON.parse(this.json);J?.resourceType&&(this.resourceName=J.resourceType,this.resourceId=J.id),this.selectedProfile=J.meta?.profile?.[0],null==this.selectedProfile&&J?.resourceType&&(this.selectedProfile="http://hl7.org/fhir/StructureDefinition/"+J.resourceType)}catch(J){this.errMsg=J.message}if("application/fhir+xml"===rt.mimetype){let J=this.json.indexOf("",Ce);if(Ce0&&(ae=ae.substring(0,ie)),ie=ae.indexOf(":"),ie>0&&(ae=ae.substring(ie+1)),this.resourceName=ae;let pe=this.json.indexOf("profile",ee);if(pe>0){let Te=this.json.indexOf('value="',pe)+7,ct=this.json.indexOf('"',Te);Te0),s.\u0275\u0275advance(1),s.\u0275\u0275property("ngIf",J.errMsg),s.\u0275\u0275advance(6),s.\u0275\u0275property("dataSource",J.dataSource),s.\u0275\u0275advance(20),s.\u0275\u0275property("matHeaderRowDef",s.\u0275\u0275pureFunction0(13,St)),s.\u0275\u0275advance(1),s.\u0275\u0275property("matRowDefColumns",s.\u0275\u0275pureFunction0(14,St)),s.\u0275\u0275advance(9),s.\u0275\u0275property("ngIf",J.showSettings),s.\u0275\u0275advance(1),s.\u0275\u0275property("ngIf",J.operationOutcome))},dependencies:[d.NgForOf,d.NgIf,r.DefaultValueAccessor,r.NgControlStatus,r.NgModel,r.FormControlDirective,u.MatLegacyOption,h.MatLegacyButton,m.MatLegacyCard,m.MatLegacyCardHeader,m.MatLegacyCardContent,m.MatLegacyCardTitle,m.MatLegacyCardActions,_.MatLegacyFormField,_.MatLegacyLabel,M.MatIcon,x.MatLegacyInput,w.MatLegacyMenuItem,L.MatLegacySelect,A.MatLegacyTable,A.MatLegacyHeaderCellDef,A.MatLegacyHeaderRowDef,A.MatLegacyColumnDef,A.MatLegacyCellDef,A.MatLegacyRowDef,A.MatLegacyHeaderCell,A.MatLegacyCell,A.MatLegacyHeaderRow,A.MatLegacyRow,T.MatLegacyProgressSpinner,O.OperationOutcomeComponent,E.UploadComponent],styles:["[_nghost-%COMP%]{display:flex;flex-direction:column}.mat-table[_ngcontent-%COMP%]{margin:1rem}.mat-table[_ngcontent-%COMP%] .mat-row[_ngcontent-%COMP%]{cursor:pointer}.mat-table[_ngcontent-%COMP%] .mat-cell[_ngcontent-%COMP%], .mat-table[_ngcontent-%COMP%] .mat-header-cell[_ngcontent-%COMP%]{padding-left:.5rem;padding-right:.5rem}.mat-table[_ngcontent-%COMP%] .mat-cell.name[_ngcontent-%COMP%], .mat-table[_ngcontent-%COMP%] .mat-header-cell.name[_ngcontent-%COMP%]{flex:2}.mat-table[_ngcontent-%COMP%] .mat-cell.profile[_ngcontent-%COMP%], .mat-table[_ngcontent-%COMP%] .mat-header-cell.profile[_ngcontent-%COMP%]{flex:4}.mat-table[_ngcontent-%COMP%] .mat-cell.res[_ngcontent-%COMP%], .mat-table[_ngcontent-%COMP%] .mat-header-cell.res[_ngcontent-%COMP%]{flex:.5;justify-content:flex-end}.mat-table[_ngcontent-%COMP%] .mat-cell[_ngcontent-%COMP%]:first-child, .mat-table[_ngcontent-%COMP%] .mat-header-cell[_ngcontent-%COMP%]:first-child{padding-left:1rem}.mat-table[_ngcontent-%COMP%] .mat-cell[_ngcontent-%COMP%]:last-child, .mat-table[_ngcontent-%COMP%] .mat-header-cell[_ngcontent-%COMP%]:last-child{padding-right:1rem}.mat-table[_ngcontent-%COMP%] .mat-cell[_ngcontent-%COMP%] .cell-content[_ngcontent-%COMP%], .mat-table[_ngcontent-%COMP%] .mat-header-cell[_ngcontent-%COMP%] .cell-content[_ngcontent-%COMP%]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.form-field-group[_ngcontent-%COMP%]{padding-left:1rem;padding-right:1rem;display:flex;flex-direction:row}.form-field-group[_ngcontent-%COMP%] mat-form-field[_ngcontent-%COMP%]{width:100%}.card-maps[_ngcontent-%COMP%]{margin-bottom:10px}.column50[_ngcontent-%COMP%]{width:40%}"]}),ot})()},553:(Se,X)=>{"use strict";Object.defineProperty(X,"__esModule",{value:!0}),X.environment=void 0,X.environment={production:!0}},4913:(Se,X,g)=>{"use strict";const C=g(655).__importStar(g(6593)),b=g(5879),o=g(8629);g(553).environment.production&&(0,b.enableProdMode)(),C.platformBrowser().bootstrapModule(o.AppModule).catch(a=>console.log(a))},5101:(Se,X,g)=>{Se=g.nmd(Se),function(){var p=function(){return this}();!p&&typeof window<"u"&&(p=window);var C=function(s,l,d){"string"==typeof s?(2==arguments.length&&(d=l),C.modules[s]||(C.payloads[s]=d,C.modules[s]=null)):C.original?C.original.apply(this,arguments):(console.error("dropping module because define wasn't a string."),console.trace())};C.modules={},C.payloads={};var b=function(s,l,d){if("string"==typeof l){var r=a(s,l);if(null!=r)return d&&d(),r}else if("[object Array]"===Object.prototype.toString.call(l)){for(var u=[],h=0,m=l.length;ha.length)&&(v=a.length);var c=a.indexOf(o,v-=o.length);return-1!==c&&c===v}),String.prototype.repeat||b(String.prototype,"repeat",function(o){for(var v="",a=this;o>0;)1&o&&(v+=a),(o>>=1)&&(a+=a);return v}),String.prototype.includes||b(String.prototype,"includes",function(o,v){return-1!=this.indexOf(o,v)}),Object.assign||(Object.assign=function(o){if(null==o)throw new TypeError("Cannot convert undefined or null to object");for(var v=Object(o),a=1;a>>0,s=arguments[1]>>0,l=s<0?Math.max(a+s,0):Math.min(s,a),d=arguments[2],r=void 0===d?a:d>>0,u=r<0?Math.max(a+r,0):Math.min(r,a);l0;)1&a&&(c+=v),(a>>=1)&&(v+=v);return c};var b=/^\s\s*/,o=/\s\s*$/;p.stringTrimLeft=function(v){return v.replace(b,"")},p.stringTrimRight=function(v){return v.replace(o,"")},p.copyObject=function(v){var a={};for(var c in v)a[c]=v[c];return a},p.copyArray=function(v){for(var a=[],c=0,s=v.length;c=0?parseFloat((v.match(/(?:MSIE |Trident\/[0-9]+[\.0-9]+;.*rv:)([0-9]+[\.0-9]+)/)||[])[1]):parseFloat((v.match(/(?:Trident\/[0-9]+[\.0-9]+;.*rv:)([0-9]+[\.0-9]+)/)||[])[1]),p.isOldIE=p.isIE&&p.isIE<9,p.isGecko=p.isMozilla=v.match(/ Gecko\/\d+/),p.isOpera="object"==typeof opera&&"[object Opera]"==Object.prototype.toString.call(window.opera),p.isWebKit=parseFloat(v.split("WebKit/")[1])||void 0,p.isChrome=parseFloat(v.split(" Chrome/")[1])||void 0,p.isEdge=parseFloat(v.split(" Edge/")[1])||void 0,p.isAIR=v.indexOf("AdobeAIR")>=0,p.isAndroid=v.indexOf("Android")>=0,p.isChromeOS=v.indexOf(" CrOS ")>=0,p.isIOS=/iPad|iPhone|iPod/.test(v)&&!window.MSStream,p.isIOS&&(p.isMac=!0),p.isMobile=p.isIOS||p.isAndroid}),ace.define("ace/lib/dom",["require","exports","module","ace/lib/useragent"],function(n,p,C){"use strict";var b=n("./useragent");p.buildDom=function d(r,u,h){if("string"==typeof r&&r){var m=document.createTextNode(r);return u&&u.appendChild(m),m}if(!Array.isArray(r))return r&&r.appendChild&&u&&u.appendChild(r),r;if("string"!=typeof r[0]||!r[0]){for(var _=[],M=0;M"u")){if(a)if(u)c();else if(!1===u)return a.push([d,r]);if(!v){var h=u;u&&u.getRootNode?(!(h=u.getRootNode())||h==u)&&(h=document):h=document;var m=h.ownerDocument||h;if(r&&p.hasCssString(r,h))return null;r&&(d+="\n/*# sourceURL=ace/css/"+r+" */");var _=p.createElement("style");_.appendChild(m.createTextNode(d)),r&&(_.id=r),h==m&&(h=p.getDocumentHead(m)),h.insertBefore(_,h.firstChild)}}}if(p.useStrictCSP=function(d){v=d,0==d?c():a||(a=[])},p.importCssString=s,p.importCssStylsheet=function(d,r){p.buildDom(["link",{rel:"stylesheet",href:d}],p.getDocumentHead(r))},p.scrollbarWidth=function(d){var r=p.createElement("ace_inner");r.style.width="100%",r.style.minWidth="0px",r.style.height="200px",r.style.display="block";var u=p.createElement("ace_outer"),h=u.style;h.position="absolute",h.left="-10000px",h.overflow="hidden",h.width="200px",h.minWidth="0px",h.height="150px",h.display="block",u.appendChild(r);var m=d&&d.documentElement||document&&document.documentElement;if(!m)return 0;m.appendChild(u);var _=r.offsetWidth;h.overflow="scroll";var M=r.offsetWidth;return _===M&&(M=u.clientWidth),m.removeChild(u),_-M},p.computedStyle=function(d,r){return window.getComputedStyle(d,"")||{}},p.setStyle=function(d,r,u){d[r]!==u&&(d[r]=u)},p.HAS_CSS_ANIMATION=!1,p.HAS_CSS_TRANSFORMS=!1,p.HI_DPI=!b.isWin||typeof window<"u"&&window.devicePixelRatio>=1.5,b.isChromeOS&&(p.HI_DPI=!1),typeof document<"u"){var l=document.createElement("div");p.HI_DPI&&void 0!==l.style.transform&&(p.HAS_CSS_TRANSFORMS=!0),!b.isEdge&&typeof l.style.animationName<"u"&&(p.HAS_CSS_ANIMATION=!0),l=null}p.translate=p.HAS_CSS_TRANSFORMS?function(d,r,u){d.style.transform="translate("+Math.round(r)+"px, "+Math.round(u)+"px)"}:function(d,r,u){d.style.top=Math.round(u)+"px",d.style.left=Math.round(r)+"px"}}),ace.define("ace/lib/net",["require","exports","module","ace/lib/dom"],function(n,p,C){"use strict";var b=n("./dom");p.get=function(o,v){var a=new XMLHttpRequest;a.open("GET",o,!0),a.onreadystatechange=function(){4===a.readyState&&v(a.responseText)},a.send(null)},p.loadScript=function(o,v){var a=b.getDocumentHead(),c=document.createElement("script");c.src=o,a.appendChild(c),c.onload=c.onreadystatechange=function(s,l){(l||!c.readyState||"loaded"==c.readyState||"complete"==c.readyState)&&(c=c.onload=c.onreadystatechange=null,l||v())}},p.qualifyURL=function(o){var v=document.createElement("a");return v.href=o,v.href}}),ace.define("ace/lib/oop",["require","exports","module"],function(n,p,C){"use strict";p.inherits=function(b,o){b.super_=o,b.prototype=Object.create(o.prototype,{constructor:{value:b,enumerable:!1,writable:!0,configurable:!0}})},p.mixin=function(b,o){for(var v in o)b[v]=o[v];return b},p.implement=function(b,o){p.mixin(b,o)}}),ace.define("ace/lib/event_emitter",["require","exports","module"],function(n,p,C){"use strict";var b={},o=function(){this.propagationStopped=!0},v=function(){this.defaultPrevented=!0};b._emit=b._dispatchEvent=function(a,c){this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={});var s=this._eventRegistry[a]||[],l=this._defaultHandlers[a];if(s.length||l){("object"!=typeof c||!c)&&(c={}),c.type||(c.type=a),c.stopPropagation||(c.stopPropagation=o),c.preventDefault||(c.preventDefault=v),s=s.slice();for(var d=0;d1&&(_=h[h.length-2]);var x=c[u+"Path"];return null==x?x=c.basePath:"/"==m&&(u=m=""),x&&"/"!=x.slice(-1)&&(x+="/"),x+u+m+_+this.get("suffix")},p.setModuleUrl=function(r,u){return c.$moduleUrls[r]=u},p.setLoader=function(r){l=r},p.dynamicModules=Object.create(null),p.$loading={},p.$loaded={},p.loadModule=function(r,u){var h,m;Array.isArray(r)&&(m=r[0],r=r[1]);var _=function(M){if(M&&!p.$loading[r])return u&&u(M);if(p.$loading[r]||(p.$loading[r]=[]),p.$loading[r].push(u),!(p.$loading[r].length>1)){var x=function(){!function(r,u){"ace/theme/textmate"===r||"./theme/textmate"===r?u(0,n("./theme/textmate")):l?l(r,u):console.error("loader is not configured")}(r,function(w,L){L&&(p.$loaded[r]=L),p._emit("load.module",{name:r,module:L});var A=p.$loading[r];p.$loading[r]=null,A.forEach(function(T){T&&T(L)})})};if(!p.get("packaged"))return x();o.loadScript(p.moduleUrl(r,m),x),d()}};if(p.dynamicModules[r])p.dynamicModules[r]().then(function(M){_(M.default?M.default:M)});else{try{h=this.$require(r)}catch{}_(h||p.$loaded[r])}},p.$require=function(r){if("function"==typeof C.require)return C.require(r)},p.setModuleLoader=function(r,u){p.dynamicModules[r]=u};var d=function(){!c.basePath&&!c.workerPath&&!c.modePath&&!c.themePath&&!Object.keys(c.$moduleUrls).length&&(console.error("Unable to infer path to ace from script src,","use ace.config.set('basePath', 'path') to enable dynamic loading of modes and themes","or with webpack use ace/webpack-resolver"),d=function(){})};p.version="1.23.4"}),ace.define("ace/loader_build",["require","exports","module","ace/lib/fixoldbrowsers","ace/config"],function(n,p,C){"use strict";n("./lib/fixoldbrowsers");var b=n("./config");b.setLoader(function(c,s){n([c],function(l){s(null,l)})});var o=function(){return this||typeof window<"u"&&window}();function v(c){if(o&&o.document){b.set("packaged",c||n.packaged||C.packaged||o.define&&g.amdD.packaged);var s={},l="",d=document.currentScript||document._currentScript,r=d&&d.ownerDocument||document;d&&d.src&&(l=d.src.split(/[?#]/)[0].split("/").slice(0,-1).join("/")||"");for(var u=r.getElementsByTagName("script"),h=0;h ["+this.end.row+"/"+this.end.column+"]"},v.prototype.contains=function(a,c){return 0==this.compare(a,c)},v.prototype.compareRange=function(a){var c,s=a.end,l=a.start;return 1==(c=this.compare(s.row,s.column))?1==(c=this.compare(l.row,l.column))?2:0==c?1:0:-1==c?-2:-1==(c=this.compare(l.row,l.column))?-1:1==c?42:0},v.prototype.comparePoint=function(a){return this.compare(a.row,a.column)},v.prototype.containsRange=function(a){return 0==this.comparePoint(a.start)&&0==this.comparePoint(a.end)},v.prototype.intersects=function(a){var c=this.compareRange(a);return-1==c||0==c||1==c},v.prototype.isEnd=function(a,c){return this.end.row==a&&this.end.column==c},v.prototype.isStart=function(a,c){return this.start.row==a&&this.start.column==c},v.prototype.setStart=function(a,c){"object"==typeof a?(this.start.column=a.column,this.start.row=a.row):(this.start.row=a,this.start.column=c)},v.prototype.setEnd=function(a,c){"object"==typeof a?(this.end.column=a.column,this.end.row=a.row):(this.end.row=a,this.end.column=c)},v.prototype.inside=function(a,c){return 0==this.compare(a,c)&&!(this.isEnd(a,c)||this.isStart(a,c))},v.prototype.insideStart=function(a,c){return 0==this.compare(a,c)&&!this.isEnd(a,c)},v.prototype.insideEnd=function(a,c){return 0==this.compare(a,c)&&!this.isStart(a,c)},v.prototype.compare=function(a,c){return this.isMultiLine()||a!==this.start.row?athis.end.row?1:this.start.row===a?c>=this.start.column?0:-1:this.end.row===a?c<=this.end.column?0:1:0:cthis.end.column?1:0},v.prototype.compareStart=function(a,c){return this.start.row==a&&this.start.column==c?-1:this.compare(a,c)},v.prototype.compareEnd=function(a,c){return this.end.row==a&&this.end.column==c?1:this.compare(a,c)},v.prototype.compareInside=function(a,c){return this.end.row==a&&this.end.column==c?1:this.start.row==a&&this.start.column==c?-1:this.compare(a,c)},v.prototype.clipRows=function(a,c){if(this.end.row>c)var s={row:c+1,column:0};else this.end.rowc)var l={row:c+1,column:0};else this.start.row1?++O>4&&(O=1):O=1,o.isIE){var k=Math.abs(S.clientX-E)>5||Math.abs(S.clientY-D)>5;(!R||k)&&(O=1),R&&clearTimeout(R),R=setTimeout(function(){R=null},w[O-1]||600),1==O&&(E=S.clientX,D=S.clientY)}if(S._clicks=O,L[A]("mousedown",S),O>4)O=0;else if(O>1)return L[A](j[O],S)}Array.isArray(x)||(x=[x]),x.forEach(function(S){r(S,"mousedown",N,T)})};var h=function(x){return 0|(x.ctrlKey?1:0)|(x.altKey?2:0)|(x.shiftKey?4:0)|(x.metaKey?8:0)};function m(x,w,L){var A=h(w);if(!o.isMac&&v){if(w.getModifierState&&(w.getModifierState("OS")||w.getModifierState("Win"))&&(A|=8),v.altGr){if(3==(3&A))return;v.altGr=0}if(18===L||17===L){var T="location"in w?w.location:w.keyLocation;17===L&&1===T?1==v[L]&&(a=w.timeStamp):18===L&&3===A&&2===T&&w.timeStamp-a<50&&(v.altGr=!0)}}if(L in b.MODIFIER_KEYS&&(L=-1),A||13!==L||3!==(T="location"in w?w.location:w.keyLocation)||(x(w,A,-L),!w.defaultPrevented)){if(o.isChromeOS&&8&A){if(x(w,A,L),w.defaultPrevented)return;A&=-9}return!!(A||L in b.FUNCTION_KEYS||L in b.PRINTABLE_KEYS)&&x(w,A,L)}}function _(){v=Object.create(null)}if(p.getModifierString=function(x){return b.KEY_MODS[h(x)]},p.addCommandKeyListener=function(x,w,L){if(o.isOldGecko||o.isOpera&&!("KeyboardEvent"in window)){var A=null;r(x,"keydown",function(O){A=O.keyCode},L),r(x,"keypress",function(O){return m(w,O,A)},L)}else{var T=null;r(x,"keydown",function(O){v[O.keyCode]=(v[O.keyCode]||0)+1;var E=m(w,O,O.keyCode);return T=O.defaultPrevented,E},L),r(x,"keypress",function(O){T&&(O.ctrlKey||O.altKey||O.shiftKey||O.metaKey)&&(p.stopEvent(O),T=null)},L),r(x,"keyup",function(O){v[O.keyCode]=null},L),v||(_(),r(window,"focus",_))}},"object"==typeof window&&window.postMessage&&!o.isOldIE){var M=1;p.nextTick=function(x,w){w=w||window;var L="zero-timeout-message-"+M++,A=function(T){T.data==L&&(p.stopPropagation(T),u(w,"message",A),x())};r(w,"message",A),w.postMessage(L,"*")}}p.$idleBlocked=!1,p.onIdle=function(x,w){return setTimeout(function L(){p.$idleBlocked?setTimeout(L,100):x()},w)},p.$idleBlockId=null,p.blockIdle=function(x){p.$idleBlockId&&clearTimeout(p.$idleBlockId),p.$idleBlocked=!0,p.$idleBlockId=setTimeout(function(){p.$idleBlocked=!1},x||100)},p.nextFrame="object"==typeof window&&(window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame),p.nextFrame=p.nextFrame?p.nextFrame.bind(window):function(x){setTimeout(x,17)}}),ace.define("ace/clipboard",["require","exports","module"],function(n,p,C){"use strict";var b;C.exports={lineMode:!1,pasteCancelled:function(){return!!(b&&b>Date.now()-50)||(b=!1)},cancel:function(){b=Date.now()}}}),ace.define("ace/keyboard/textinput",["require","exports","module","ace/lib/event","ace/config","ace/lib/useragent","ace/lib/dom","ace/lib/lang","ace/clipboard","ace/lib/keys"],function(n,p,C){"use strict";var b=n("../lib/event"),o=n("../config").nls,v=n("../lib/useragent"),a=n("../lib/dom"),c=n("../lib/lang"),s=n("../clipboard"),l=v.isChrome<18,d=v.isIE,r=v.isChrome>63,u=400,h=n("../lib/keys"),m=h.KEY_MODS,_=v.isIOS,M=_?/\s/:/\n/,x=v.isMobile;p.TextInput=function(L,A){var T=a.createElement("textarea");T.className="ace_text-input",T.setAttribute("wrap","off"),T.setAttribute("autocorrect","off"),T.setAttribute("autocapitalize","off"),T.setAttribute("spellcheck",!1),T.style.opacity="0",L.insertBefore(T,L.firstChild);var O=!1,E=!1,D=!1,R=!1,j="";x||(T.style.fontSize="1px");var N=!1,S=!1,k="",F=0,Y=0,se=0;try{var ne=document.activeElement===T}catch{}this.setAriaOptions=function(ee){ee.activeDescendant?(T.setAttribute("aria-haspopup","true"),T.setAttribute("aria-autocomplete",ee.inline?"both":"list"),T.setAttribute("aria-activedescendant",ee.activeDescendant)):(T.setAttribute("aria-haspopup","false"),T.setAttribute("aria-autocomplete","both"),T.removeAttribute("aria-activedescendant")),ee.role&&T.setAttribute("role",ee.role)},this.setAriaLabel=function(){if(A.session&&A.renderer.enableKeyboardAccessibility){var ee=A.session.selection.cursor.row;T.setAttribute("aria-roledescription",o("editor")),T.setAttribute("aria-label",o("Cursor at row $0",[ee+1]))}else T.removeAttribute("aria-roledescription"),T.removeAttribute("aria-label")},this.setAriaOptions({role:"textbox"}),this.setAriaLabel(),b.addListener(T,"blur",function(ee){S||(A.onBlur(ee),ne=!1)},A),b.addListener(T,"focus",function(ee){if(!S){if(ne=!0,v.isEdge)try{if(!document.hasFocus())return}catch{}A.onFocus(ee),v.isEdge?setTimeout(me):me()}},A),this.$focusScroll=!1,this.focus=function(){if(this.setAriaLabel(),j||r||"browser"==this.$focusScroll)return T.focus({preventScroll:!0});var ee=T.style.top;T.style.position="fixed",T.style.top="0px";try{var ae=0!=T.getBoundingClientRect().top}catch{return}var ie=[];if(ae)for(var pe=T.parentElement;pe&&1==pe.nodeType;)ie.push(pe),pe.setAttribute("ace_nocontext",!0),pe=!pe.parentElement&&pe.getRootNode?pe.getRootNode().host:pe.parentElement;T.focus({preventScroll:!0}),ae&&ie.forEach(function(Te){Te.removeAttribute("ace_nocontext")}),setTimeout(function(){T.style.position="","0px"==T.style.top&&(T.style.top=ee)},0)},this.blur=function(){T.blur()},this.isFocused=function(){return ne},A.on("beforeEndOperation",function(){var ee=A.curOp,ae=ee&&ee.command&&ee.command.name;"insertstring"!=ae&&(D&&ae&&(ee.docChanged||ee.selectionChanged)&&(k=T.value="",bt()),me())});var me=_?function(ee){if(ne&&(!O||ee)&&!R){ee||(ee="");var ae="\n ab"+ee+"cde fg\n";ae!=T.value&&(T.value=k=ae);var pe=4+(ee.length||(A.selection.isEmpty()?0:1));(4!=F||Y!=pe)&&T.setSelectionRange(4,pe),F=4,Y=pe}}:function(){if(!D&&!R&&(ne||ue)){D=!0;var ee=0,ae=0,ie="";if(A.session){var pe=A.selection,Te=pe.getRange(),ct=pe.cursor.row;if(ee=Te.start.column,ae=Te.end.column,ie=A.session.getLine(ct),Te.start.row!=ct){var Lt=A.session.getLine(ct-1);ee=Te.start.rowct+1?Dt.length:ae,ae+=ie.length+1,ie=ie+"\n"+Dt}else x&&ct>0&&(ie="\n"+ie,ae+=1,ee+=1);ie.length>u&&(ee0&&k[ze]==ee[ze];)ze++,Te--;for(Lt=Lt.slice(ze),ze=1;ct>0&&k.length-ze>F-1&&k[k.length-ze]==ee[ee.length-ze];)ze++,ct--;Dt-=ze-1,Kt-=ze-1;var yt=Lt.length-ze+1;if(yt<0&&(Te=-yt,yt=0),Lt=Lt.slice(0,yt),!(ae||Lt||Dt||Te||ct||Kt))return"";R=!0;var Bt=!1;return v.isAndroid&&". "==Lt&&(Lt=" ",Bt=!0),Lt&&!Te&&!ct&&!Dt&&!Kt||N?A.onTextInput(Lt):A.onTextInput(Lt,{extendLeft:Te,extendRight:ct,restoreStart:Dt,restoreEnd:Kt}),R=!1,k=ee,F=ie,Y=pe,se=Kt,Bt?"\n":Lt},Oe=function(ee){if(D)return St();if(ee&&ee.inputType){if("historyUndo"==ee.inputType)return A.execCommand("undo");if("historyRedo"==ee.inputType)return A.execCommand("redo")}var ae=T.value,ie=Me(ae,!0);(ae.length>500||M.test(ie)||x&&F<1&&F==Y)&&me()},Xe=function(ee,ae,ie){var pe=ee.clipboardData||window.clipboardData;if(pe&&!l){var Te=d||ie?"Text":"text/plain";try{return ae?!1!==pe.setData(Te,ae):pe.getData(Te)}catch(ct){if(!ie)return Xe(ct,ae,!0)}}},Be=function(ee,ae){var ie=A.getCopyText();if(!ie)return b.preventDefault(ee);Xe(ee,ie)?(_&&(me(ie),O=ie,setTimeout(function(){O=!1},10)),ae?A.onCut():A.onCopy(),b.preventDefault(ee)):(O=!0,T.value=ie,T.select(),setTimeout(function(){O=!1,me(),ae?A.onCut():A.onCopy()}))},$e=function(ee){Be(ee,!0)},st=function(ee){Be(ee,!1)},Mt=function(ee){var ae=Xe(ee);s.pasteCancelled()||("string"==typeof ae?(ae&&A.onPaste(ae,ee),v.isIE&&setTimeout(me),b.preventDefault(ee)):(T.value="",E=!0))};b.addCommandKeyListener(T,A.onCommandKey.bind(A),A),b.addListener(T,"select",function(ee){D||(O?O=!1:function(ee){return 0===ee.selectionStart&&ee.selectionEnd>=k.length&&ee.value===k&&k&&ee.selectionEnd!==Y}(T)?(A.selectAll(),me()):x&&T.selectionStart!=F&&me())},A),b.addListener(T,"input",Oe,A),b.addListener(T,"cut",$e,A),b.addListener(T,"copy",st,A),b.addListener(T,"paste",Mt,A),(!("oncut"in T)||!("oncopy"in T)||!("onpaste"in T))&&b.addListener(L,"keydown",function(ee){if((!v.isMac||ee.metaKey)&&ee.ctrlKey)switch(ee.keyCode){case 67:st(ee);break;case 86:Mt(ee);break;case 88:$e(ee)}},A);var St=function(){if(D&&A.onCompositionUpdate&&!A.$readOnly){if(N)return xt();D.useTextareaForIME?A.onCompositionUpdate(T.value):(Me(T.value),D.markerRange&&(D.context&&(D.markerRange.start.column=D.selectionStart=D.context.compositionStartOffset),D.markerRange.end.column=D.markerRange.start.column+Y-D.selectionStart+se))}},bt=function(ee){!A.onCompositionEnd||A.$readOnly||(D=!1,A.onCompositionEnd(),A.off("mousedown",xt),ee&&Oe())};function xt(){S=!0,T.blur(),T.focus(),S=!1}var vt,nt=c.delayedCall(St,50).schedule.bind(null,null);function rt(){clearTimeout(vt),vt=setTimeout(function(){j&&(T.style.cssText=j,j=""),A.renderer.$isMousePressed=!1,A.renderer.$keepTextAreaAtCursor&&A.renderer.$moveTextAreaToCursor()},0)}b.addListener(T,"compositionstart",function(ee){if(!D&&A.onCompositionStart&&!A.$readOnly&&(D={},!N)){ee.data&&(D.useTextareaForIME=!1),setTimeout(St,0),A._signal("compositionStart"),A.on("mousedown",xt);var ae=A.getSelectionRange();ae.end.row=ae.start.row,ae.end.column=ae.start.column,D.markerRange=ae,D.selectionStart=F,A.onCompositionStart(D),D.useTextareaForIME?(k=T.value="",F=0,Y=0):(T.msGetInputContext&&(D.context=T.msGetInputContext()),T.getInputContext&&(D.context=T.getInputContext()))}},A),b.addListener(T,"compositionupdate",St,A),b.addListener(T,"keyup",function ot(ee){27==ee.keyCode&&T.value.lengthY&&"\n"==k[Kt]?ze=h.end:DtY&&k.slice(0,Kt).split("\n").length>2?ze=h.down:Kt>Y&&" "==k[Kt-1]?(ze=h.right,yt=m.option):(Kt>Y||Kt==Y&&Y!=F&&Dt==Kt)&&(ze=h.right),Dt!==Kt&&(yt|=m.shift),ze){if(!ae.onCommandKey({},yt,ze)&&ae.commands){ze=h.keyCodeToString(ze);var $t=ae.commands.findKeyCommand(yt,ze);$t&&ae.execCommand($t)}F=Dt,Y=Kt,me("")}}};document.addEventListener("selectionchange",ct),ae.on("destroy",function(){document.removeEventListener("selectionchange",ct)})}(0,A,T),this.destroy=function(){T.parentElement&&T.parentElement.removeChild(T)}},p.$setUserAgentForTests=function(L,A){x=L,_=A}}),ace.define("ace/mouse/default_handlers",["require","exports","module","ace/lib/useragent"],function(n,p,C){"use strict";var b=n("../lib/useragent"),a=function(){function l(d){d.$clickSelection=null;var r=d.editor;r.setDefaultHandler("mousedown",this.onMouseDown.bind(d)),r.setDefaultHandler("dblclick",this.onDoubleClick.bind(d)),r.setDefaultHandler("tripleclick",this.onTripleClick.bind(d)),r.setDefaultHandler("quadclick",this.onQuadClick.bind(d)),r.setDefaultHandler("mousewheel",this.onMouseWheel.bind(d)),["select","startSelect","selectEnd","selectAllEnd","selectByWordsEnd","selectByLinesEnd","dragWait","dragWaitEnd","focusWait"].forEach(function(h){d[h]=this[h]},this),d.selectByLines=this.extendSelectionBy.bind(d,"getLineRange"),d.selectByWords=this.extendSelectionBy.bind(d,"getWordRange")}return l.prototype.onMouseDown=function(d){var r=d.inSelection(),u=d.getDocumentPosition();this.mousedownEvent=d;var h=this.editor,m=d.getButton();return 0!==m?((h.getSelectionRange().isEmpty()||1==m)&&h.selection.moveToPosition(u),void(2==m&&(h.textInput.onContextMenu(d.domEvent),b.isMozilla||d.preventDefault()))):(this.mousedownEvent.time=Date.now(),!r||h.isFocused()||(h.focus(),!this.$focusTimeout||this.$clickSelection||h.inMultiSelectMode)?(this.captureMouse(d),this.startSelect(u,d.domEvent._clicks>1),d.preventDefault()):(this.setState("focusWait"),void this.captureMouse(d)))},l.prototype.startSelect=function(d,r){d=d||this.editor.renderer.screenToTextCoordinates(this.x,this.y);var u=this.editor;this.mousedownEvent&&(this.mousedownEvent.getShiftKey()?u.selection.selectToPosition(d):r||u.selection.moveToPosition(d),r||this.select(),u.setStyle("ace_selecting"),this.setState("select"))},l.prototype.select=function(){var d,r=this.editor,u=r.renderer.screenToTextCoordinates(this.x,this.y);if(this.$clickSelection){var h=this.$clickSelection.comparePoint(u);if(-1==h)d=this.$clickSelection.end;else if(1==h)d=this.$clickSelection.start;else{var m=s(this.$clickSelection,u);u=m.cursor,d=m.anchor}r.selection.setSelectionAnchor(d.row,d.column)}r.selection.selectToPosition(u),r.renderer.scrollCursorIntoView()},l.prototype.extendSelectionBy=function(d){var r,u=this.editor,h=u.renderer.screenToTextCoordinates(this.x,this.y),m=u.selection[d](h.row,h.column);if(this.$clickSelection){var _=this.$clickSelection.comparePoint(m.start),M=this.$clickSelection.comparePoint(m.end);if(-1==_&&M<=0)r=this.$clickSelection.end,(m.end.row!=h.row||m.end.column!=h.column)&&(h=m.start);else if(1==M&&_>=0)r=this.$clickSelection.start,(m.start.row!=h.row||m.start.column!=h.column)&&(h=m.end);else if(-1==_&&1==M)h=m.end,r=m.start;else{var x=s(this.$clickSelection,h);h=x.cursor,r=x.anchor}u.selection.setSelectionAnchor(r.row,r.column)}u.selection.selectToPosition(h),u.renderer.scrollCursorIntoView()},l.prototype.selectByLinesEnd=function(){this.$clickSelection=null,this.editor.unsetStyle("ace_selecting")},l.prototype.focusWait=function(){var d=function c(l,d,r,u){return Math.sqrt(Math.pow(r-l,2)+Math.pow(u-d,2))}(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y),r=Date.now();(d>0||r-this.mousedownEvent.time>this.$focusTimeout)&&this.startSelect(this.mousedownEvent.getDocumentPosition())},l.prototype.onDoubleClick=function(d){var r=d.getDocumentPosition(),u=this.editor,m=u.session.getBracketRange(r);m?(m.isEmpty()&&(m.start.column--,m.end.column++),this.setState("select")):(m=u.selection.getWordRange(r.row,r.column),this.setState("selectByWords")),this.$clickSelection=m,this.select()},l.prototype.onTripleClick=function(d){var r=d.getDocumentPosition(),u=this.editor;this.setState("selectByLines");var h=u.getSelectionRange();h.isMultiLine()&&h.contains(r.row,r.column)?(this.$clickSelection=u.selection.getLineRange(h.start.row),this.$clickSelection.end=u.selection.getLineRange(h.end.row).end):this.$clickSelection=u.selection.getLineRange(r.row),this.select()},l.prototype.onQuadClick=function(d){var r=this.editor;r.selectAll(),this.$clickSelection=r.getSelectionRange(),this.setState("selectAll")},l.prototype.onMouseWheel=function(d){if(!d.getAccelKey()){d.getShiftKey()&&d.wheelY&&!d.wheelX&&(d.wheelX=d.wheelY,d.wheelY=0);var r=this.editor;this.$lastScroll||(this.$lastScroll={t:0,vx:0,vy:0,allowed:0});var u=this.$lastScroll,h=d.domEvent.timeStamp,m=h-u.t,_=m?d.wheelX/m:u.vx,M=m?d.wheelY/m:u.vy;m<550&&(_=(_+u.vx)/2,M=(M+u.vy)/2);var x=Math.abs(_/M),w=!1;if(x>=1&&r.renderer.isScrollableBy(d.wheelX*d.speed,0)&&(w=!0),x<=1&&r.renderer.isScrollableBy(0,d.wheelY*d.speed)&&(w=!0),w?u.allowed=h:h-u.allowed<550&&(Math.abs(_)<=1.5*Math.abs(u.vx)&&Math.abs(M)<=1.5*Math.abs(u.vy)?(w=!0,u.allowed=h):u.allowed=0),u.t=h,u.vx=_,u.vy=M,w)return r.renderer.scrollBy(d.wheelX*d.speed,d.wheelY*d.speed),d.stop()}},l}();function s(l,d){if(l.start.row==l.end.row)var r=2*d.column-l.start.column-l.end.column;else if(l.start.row!=l.end.row-1||l.start.column||l.end.column)r=2*d.row-l.start.row-l.end.row;else r=d.column-4;return r<0?{cursor:l.start,anchor:l.end}:{cursor:l.end,anchor:l.start}}a.prototype.selectEnd=a.prototype.selectByLinesEnd,a.prototype.selectAllEnd=a.prototype.selectByLinesEnd,a.prototype.selectByWordsEnd=a.prototype.selectByLinesEnd,p.DefaultHandlers=a}),ace.define("ace/tooltip",["require","exports","module","ace/lib/dom","ace/range"],function(n,p,C){"use strict";var u,b=this&&this.__extends||(u=function(h,m){return(u=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(_,M){_.__proto__=M}||function(_,M){for(var x in M)Object.prototype.hasOwnProperty.call(M,x)&&(_[x]=M[x])})(h,m)},function(h,m){if("function"!=typeof m&&null!==m)throw new TypeError("Class extends value "+String(m)+" is not a constructor or null");function _(){this.constructor=h}u(h,m),h.prototype=null===m?Object.create(m):(_.prototype=m.prototype,new _)}),o=this&&this.__values||function(u){var h="function"==typeof Symbol&&Symbol.iterator,m=h&&u[h],_=0;if(m)return m.call(u);if(u&&"number"==typeof u.length)return{next:function(){return u&&_>=u.length&&(u=void 0),{value:u&&u[_++],done:!u}}};throw new TypeError(h?"Object is not iterable.":"Symbol.iterator is not defined.")},v=n("./lib/dom"),a=n("./range").Range,c="ace_tooltip",s=function(){function u(h){this.isOpen=!1,this.$element=null,this.$parentNode=h}return u.prototype.$init=function(){return this.$element=v.createElement("div"),this.$element.className=c,this.$element.style.display="none",this.$parentNode.appendChild(this.$element),this.$element},u.prototype.getElement=function(){return this.$element||this.$init()},u.prototype.setText=function(h){this.getElement().textContent=h},u.prototype.setHtml=function(h){this.getElement().innerHTML=h},u.prototype.setPosition=function(h,m){this.getElement().style.left=h+"px",this.getElement().style.top=m+"px"},u.prototype.setClassName=function(h){v.addCssClass(this.getElement(),h)},u.prototype.setTheme=function(h){this.$element.className=c+" "+(h.isDark?"ace_dark ":"")+(h.cssClass||"")},u.prototype.show=function(h,m,_){null!=h&&this.setText(h),null!=m&&null!=_&&this.setPosition(m,_),this.isOpen||(this.getElement().style.display="block",this.isOpen=!0)},u.prototype.hide=function(){this.isOpen&&(this.getElement().style.display="none",this.getElement().className=c,this.isOpen=!1)},u.prototype.getHeight=function(){return this.getElement().offsetHeight},u.prototype.getWidth=function(){return this.getElement().offsetWidth},u.prototype.destroy=function(){this.isOpen=!1,this.$element&&this.$element.parentNode&&this.$element.parentNode.removeChild(this.$element)},u}(),l=function(){function u(){this.popups=[]}return u.prototype.addPopup=function(h){this.popups.push(h),this.updatePopups()},u.prototype.removePopup=function(h){var m=this.popups.indexOf(h);-1!==m&&(this.popups.splice(m,1),this.updatePopups())},u.prototype.updatePopups=function(){var h,m,_,M;this.popups.sort(function(R,j){return j.priority-R.priority});var x=[];try{for(var w=o(this.popups),L=w.next();!L.done;L=w.next()){var A=L.value,T=!0;try{for(var O=(_=void 0,o(x)),E=O.next();!E.done;E=O.next())if(this.doPopupsOverlap(E.value,A)){T=!1;break}}catch(R){_={error:R}}finally{try{E&&!E.done&&(M=O.return)&&M.call(O)}finally{if(_)throw _.error}}T?x.push(A):A.hide()}}catch(R){h={error:R}}finally{try{L&&!L.done&&(m=w.return)&&m.call(w)}finally{if(h)throw h.error}}},u.prototype.doPopupsOverlap=function(h,m){var _=h.getElement().getBoundingClientRect(),M=m.getElement().getBoundingClientRect();return _.leftM.left&&_.topM.top},u}(),d=new l;p.popupManager=d,p.Tooltip=s;var r=function(u){function h(m){void 0===m&&(m=document.body);var _=u.call(this,m)||this;_.timeout=void 0,_.lastT=0,_.idleTime=350,_.lastEvent=void 0,_.onMouseOut=_.onMouseOut.bind(_),_.onMouseMove=_.onMouseMove.bind(_),_.waitForHover=_.waitForHover.bind(_),_.hide=_.hide.bind(_);var M=_.getElement();return M.style.whiteSpace="pre-wrap",M.style.pointerEvents="auto",M.addEventListener("mouseout",_.onMouseOut),M.tabIndex=-1,M.addEventListener("blur",function(){M.contains(document.activeElement)||this.hide()}.bind(_)),_}return b(h,u),h.prototype.addToEditor=function(m){m.on("mousemove",this.onMouseMove),m.on("mousedown",this.hide),m.renderer.getMouseEventTarget().addEventListener("mouseout",this.onMouseOut,!0)},h.prototype.removeFromEditor=function(m){m.off("mousemove",this.onMouseMove),m.off("mousedown",this.hide),m.renderer.getMouseEventTarget().removeEventListener("mouseout",this.onMouseOut,!0),this.timeout&&(clearTimeout(this.timeout),this.timeout=null)},h.prototype.onMouseMove=function(m,_){this.lastEvent=m,this.lastT=Date.now();var M=_.$mouseHandler.isMousePressed;if(this.isOpen){var x=this.lastEvent&&this.lastEvent.getDocumentPosition();(!this.range||!this.range.contains(x.row,x.column)||M||this.isOutsideOfText(this.lastEvent))&&this.hide()}this.timeout||M||(this.lastEvent=m,this.timeout=setTimeout(this.waitForHover,this.idleTime))},h.prototype.waitForHover=function(){this.timeout&&clearTimeout(this.timeout);var m=Date.now()-this.lastT;this.idleTime-m>10?this.timeout=setTimeout(this.waitForHover,this.idleTime-m):(this.timeout=null,this.lastEvent&&!this.isOutsideOfText(this.lastEvent)&&this.$gatherData(this.lastEvent,this.lastEvent.editor))},h.prototype.isOutsideOfText=function(m){var _=m.editor,M=m.getDocumentPosition(),x=_.session.getLine(M.row);if(M.column==x.length){var w=_.renderer.pixelToScreenCoordinates(m.clientX,m.clientY),L=_.session.documentToScreenPosition(M.row,M.column);if(L.column!=w.column||L.row!=w.row)return!0}return!1},h.prototype.setDataProvider=function(m){this.$gatherData=m},h.prototype.showForRange=function(m,_,M,x){if(!(x&&x!=this.lastEvent||this.isOpen&&document.activeElement==this.getElement())){var w=m.renderer;this.isOpen||(d.addPopup(this),this.$registerCloseEvents(),this.setTheme(w.theme)),this.isOpen=!0,this.addMarker(_,m.session),this.range=a.fromPoints(_.start,_.end);var L=this.getElement();L.innerHTML="",L.appendChild(M),L.style.display="block";var A=w.textToScreenCoordinates(_.start.row,_.start.column),T=m.getCursorPosition(),O=L.clientHeight,E=w.scroller.getBoundingClientRect(),D=!0;this.row>T.row?D=!0:this.rowE.bottom&&(D=!1),D?A.pageY+=w.lineHeight:A.pageY-=O,L.style.maxWidth=E.width-(A.pageX-E.left)+"px",this.setPosition(A.pageX,A.pageY)}},h.prototype.addMarker=function(m,_){this.marker&&this.$markerSession.removeMarker(this.marker),this.$markerSession=_,this.marker=_&&_.addMarker(m,"ace_highlight-marker","text")},h.prototype.hide=function(m){!m&&document.activeElement==this.getElement()||m&&m.target&&("keydown"!=m.type||m.ctrlKey||m.metaKey)&&this.$element.contains(m.target)||(this.lastEvent=null,this.timeout&&clearTimeout(this.timeout),this.timeout=null,this.addMarker(null),this.isOpen&&(this.$removeCloseEvents(),this.getElement().style.display="none",this.isOpen=!1,d.removePopup(this)))},h.prototype.$registerCloseEvents=function(){window.addEventListener("keydown",this.hide,!0),window.addEventListener("mousewheel",this.hide,!0),window.addEventListener("mousedown",this.hide,!0)},h.prototype.$removeCloseEvents=function(){window.removeEventListener("keydown",this.hide,!0),window.removeEventListener("mousewheel",this.hide,!0),window.removeEventListener("mousedown",this.hide,!0)},h.prototype.onMouseOut=function(m){this.timeout&&(clearTimeout(this.timeout),this.timeout=null),this.lastEvent=null,this.isOpen&&(!m.relatedTarget||m.relatedTarget==this.getElement()||m&&m.currentTarget.contains(m.relatedTarget)||m.relatedTarget.classList.contains("ace_content")||this.hide())},h}(s);p.HoverTooltip=r}),ace.define("ace/mouse/default_gutter_handler",["require","exports","module","ace/lib/dom","ace/lib/event","ace/tooltip","ace/config"],function(n,p,C){"use strict";var r,b=this&&this.__extends||(r=function(u,h){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(m,_){m.__proto__=_}||function(m,_){for(var M in _)Object.prototype.hasOwnProperty.call(_,M)&&(m[M]=_[M])})(u,h)},function(u,h){if("function"!=typeof h&&null!==h)throw new TypeError("Class extends value "+String(h)+" is not a constructor or null");function m(){this.constructor=u}r(u,h),u.prototype=null===h?Object.create(h):(m.prototype=h.prototype,new m)}),o=this&&this.__values||function(r){var u="function"==typeof Symbol&&Symbol.iterator,h=u&&r[u],m=0;if(h)return h.call(r);if(r&&"number"==typeof r.length)return{next:function(){return r&&m>=r.length&&(r=void 0),{value:r&&r[m++],done:!r}}};throw new TypeError(u?"Object is not iterable.":"Symbol.iterator is not defined.")},v=n("../lib/dom"),a=n("../lib/event"),c=n("../tooltip").Tooltip,s=n("../config").nls;p.GutterHandler=function l(r){var _,M,u=r.editor,h=u.renderer.$gutterLayer,m=new d(u);function w(){_&&(_=clearTimeout(_)),m.isOpen&&(m.hideTooltip(),u.off("mousewheel",w))}function L(A){m.setPosition(A.x,A.y)}r.editor.setDefaultHandler("guttermousedown",function(A){if(u.isFocused()&&0==A.getButton()&&"foldWidgets"!=h.getRegion(A)){var O=A.getDocumentPosition().row,E=u.session.selection;if(A.getShiftKey())E.selectTo(O,0);else{if(2==A.domEvent.detail)return u.selectAll(),A.preventDefault();r.$clickSelection=u.selection.getLineRange(O)}return r.setState("selectByLines"),r.captureMouse(A),A.preventDefault()}}),r.editor.setDefaultHandler("guttermousemove",function(A){if(v.hasCssClass(A.domEvent.target||A.domEvent.srcElement,"ace_fold-widget"))return w();m.isOpen&&r.$tooltipFollowsMouse&&L(A),M=A,!_&&(_=setTimeout(function(){_=null,M&&!r.isMousePressed?function x(){var A=M.getDocumentPosition().row;if(A==u.session.getLength()){var O=u.renderer.pixelToScreenCoordinates(0,M.y).row,E=M.$pos;if(O>u.session.documentToScreenRow(E.row,E.column))return w()}if(m.showTooltip(A),m.isOpen)if(u.on("mousewheel",w),r.$tooltipFollowsMouse)L(M);else{var D=M.getGutterRow(),R=h.$lines.get(D);if(R){var N=R.element.querySelector(".ace_gutter_annotation").getBoundingClientRect(),S=m.getElement().style;S.left=N.right+"px",S.top=N.bottom+"px"}else L(M)}}():w()},50))}),a.addListener(u.renderer.$gutter,"mouseout",function(A){M=null,m.isOpen&&!_&&(_=setTimeout(function(){_=null,w()},50))},u),u.on("changeSession",w),u.on("input",w)};var d=function(r){function u(h){var m=r.call(this,h.container)||this;return m.editor=h,m}return b(u,r),u.prototype.setPosition=function(h,m){var _=window.innerWidth||document.documentElement.clientWidth,M=window.innerHeight||document.documentElement.clientHeight,x=this.getWidth(),w=this.getHeight();(h+=15)+x>_&&(h-=h+x-_),(m+=15)+w>M&&(m-=20+w),c.prototype.setPosition.call(this,h,m)},Object.defineProperty(u,"annotationLabels",{get:function(){return{error:{singular:s("error"),plural:s("errors")},warning:{singular:s("warning"),plural:s("warnings")},info:{singular:s("information message"),plural:s("information messages")}}},enumerable:!1,configurable:!0}),u.prototype.showTooltip=function(h){var M,m=this.editor.renderer.$gutterLayer,_=m.$annotations[h];M=_?{text:Array.from(_.text),type:Array.from(_.type)}:{text:[],type:[]};var x=m.session.getFoldLine(h);if(x&&m.$showFoldedAnnotations){for(var L,w={error:[],warning:[],info:[]},A=h+1;A<=x.end.row;A++)if(m.$annotations[A])for(var T=0;T ").concat(M.text[A]);D[M.type[A].replace("_fold","")].push(j)}var N=[].concat(D.error,D.warning,D.info).join("
");this.setHtml(N),this.$element.setAttribute("aria-live","polite"),this.isOpen||(this.setTheme(this.editor.renderer.theme),this.setClassName("ace_gutter-tooltip")),this.show(),this.editor._signal("showGutterTooltip",this)},u.prototype.hideTooltip=function(){this.$element.removeAttribute("aria-live"),this.hide(),this.editor._signal("hideGutterTooltip",this)},u.annotationsToSummaryString=function(h){var m,_,M=[];try{for(var w=o(["error","warning","info"]),L=w.next();!L.done;L=w.next()){var A=L.value;if(h[A].length){var T=1===h[A].length?u.annotationLabels[A].singular:u.annotationLabels[A].plural;M.push("".concat(h[A].length," ").concat(T))}}}catch(O){m={error:O}}finally{try{L&&!L.done&&(_=w.return)&&_.call(w)}finally{if(m)throw m.error}}return M.join(", ")},u}(c);p.GutterTooltip=d}),ace.define("ace/mouse/mouse_event",["require","exports","module","ace/lib/event","ace/lib/useragent"],function(n,p,C){"use strict";var b=n("../lib/event"),o=n("../lib/useragent"),v=function(){function a(c,s){this.domEvent=c,this.editor=s,this.x=this.clientX=c.clientX,this.y=this.clientY=c.clientY,this.$pos=null,this.$inSelection=null,this.propagationStopped=!1,this.defaultPrevented=!1}return a.prototype.stopPropagation=function(){b.stopPropagation(this.domEvent),this.propagationStopped=!0},a.prototype.preventDefault=function(){b.preventDefault(this.domEvent),this.defaultPrevented=!0},a.prototype.stop=function(){this.stopPropagation(),this.preventDefault()},a.prototype.getDocumentPosition=function(){return this.$pos||(this.$pos=this.editor.renderer.screenToTextCoordinates(this.clientX,this.clientY)),this.$pos},a.prototype.getGutterRow=function(){var c=this.getDocumentPosition().row;return this.editor.session.documentToScreenRow(c,0)-this.editor.session.documentToScreenRow(this.editor.renderer.$gutterLayer.$lines.get(0).row,0)},a.prototype.inSelection=function(){if(null!==this.$inSelection)return this.$inSelection;var s=this.editor.getSelectionRange();if(s.isEmpty())this.$inSelection=!1;else{var l=this.getDocumentPosition();this.$inSelection=s.contains(l.row,l.column)}return this.$inSelection},a.prototype.getButton=function(){return b.getButton(this.domEvent)},a.prototype.getShiftKey=function(){return this.domEvent.shiftKey},a.prototype.getAccelKey=function(){return o.isMac?this.domEvent.metaKey:this.domEvent.ctrlKey},a}();p.MouseEvent=v}),ace.define("ace/mouse/dragdrop_handler",["require","exports","module","ace/lib/dom","ace/lib/event","ace/lib/useragent"],function(n,p,C){"use strict";var b=n("../lib/dom"),o=n("../lib/event"),v=n("../lib/useragent");function l(r){var u=r.editor,h=b.createElement("div");h.style.cssText="top:-100px;position:absolute;z-index:2147483647;opacity:0.5",h.textContent="\xa0",["dragWait","dragWaitEnd","startDrag","dragReadyEnd","onMouseDrag"].forEach(function(Q){r[Q]=this[Q]},this),u.on("mousedown",this.onMouseDown.bind(r));var M,x,w,L,A,T,E,D,R,j,N,_=u.container,O=0;function F(){var Q=T;(function S(Q,ue){var Me=Date.now();j&&ue&&Q.row==ue.row&&ue&&Q.column==ue.column?d(N.x,N.y,x,w)>5?j=null:Me-j>=200&&(u.renderer.scrollCursorIntoView(),j=null):(u.moveCursorToPosition(Q),j=Me,N={x,y:w})})(T=u.renderer.screenToTextCoordinates(x,w),Q),function k(Q,ue){var Me=Date.now(),Oe=u.renderer.layerConfig.lineHeight,Xe=u.renderer.layerConfig.characterWidth,Be=u.renderer.scroller.getBoundingClientRect(),$e={x:{left:x-Be.left,right:Be.right-x},y:{top:w-Be.top,bottom:Be.bottom-w}},st=Math.min($e.x.left,$e.x.right),Mt=Math.min($e.y.top,$e.y.bottom),tt={row:Q.row,column:Q.column};st/Xe<=2&&(tt.column+=$e.x.left<$e.x.right?-3:2),Mt/Oe<=1&&(tt.row+=$e.y.top<$e.y.bottom?-1:1),Q.row!=tt.row||Q.column!=tt.column&&ue&&Q.row==ue.row?R?Me-R>=200&&u.renderer.scrollCursorIntoView(tt):R=Me:R=null}(T,Q)}function Y(){A=u.selection.toOrientedRange(),M=u.session.addMarker(A,"ace_selection",u.getSelectionStyle()),u.clearSelection(),u.isFocused()&&u.renderer.$cursorLayer.setBlinking(!1),clearInterval(L),F(),L=setInterval(F,20),O=0,o.addListener(document,"mousemove",me)}function se(){clearInterval(L),u.session.removeMarker(M),M=null,u.selection.fromOrientedRange(A),u.isFocused()&&!D&&u.$resetCursorStyle(),A=null,T=null,O=0,R=null,j=null,o.removeListener(document,"mousemove",me)}this.onDragStart=function(Q){if(this.cancelDrag||!_.draggable){var ue=this;return setTimeout(function(){ue.startSelect(),ue.captureMouse(Q)},0),Q.preventDefault()}A=u.getSelectionRange();var Me=Q.dataTransfer;Me.effectAllowed=u.getReadOnly()?"copy":"copyMove",u.container.appendChild(h),Me.setDragImage&&Me.setDragImage(h,0,0),setTimeout(function(){u.container.removeChild(h)}),Me.clearData(),Me.setData("Text",u.session.getTextRange()),D=!0,this.setState("drag")},this.onDragEnd=function(Q){_.draggable=!1,D=!1,this.setState(null),u.getReadOnly()||(!E&&"move"==Q.dataTransfer.dropEffect&&u.session.remove(u.getSelectionRange()),u.$resetCursorStyle()),this.editor.unsetStyle("ace_dragging"),this.editor.renderer.setCursorStyle("")},this.onDragEnter=function(Q){if(!u.getReadOnly()&&$(Q.dataTransfer))return x=Q.clientX,w=Q.clientY,M||Y(),O++,Q.dataTransfer.dropEffect=E=q(Q),o.preventDefault(Q)},this.onDragOver=function(Q){if(!u.getReadOnly()&&$(Q.dataTransfer))return x=Q.clientX,w=Q.clientY,M||(Y(),O++),null!==ne&&(ne=null),Q.dataTransfer.dropEffect=E=q(Q),o.preventDefault(Q)},this.onDragLeave=function(Q){if(--O<=0&&M)return se(),E=null,o.preventDefault(Q)},this.onDrop=function(Q){if(T){var ue=Q.dataTransfer;if(D)switch(E){case"move":A=A.contains(T.row,T.column)?{start:T,end:T}:u.moveText(A,T);break;case"copy":A=u.moveText(A,T,!0)}else{var Me=ue.getData("Text");A={start:T,end:u.session.insert(T,Me)},u.focus(),E=null}return se(),o.preventDefault(Q)}},o.addListener(_,"dragstart",this.onDragStart.bind(r),u),o.addListener(_,"dragend",this.onDragEnd.bind(r),u),o.addListener(_,"dragenter",this.onDragEnter.bind(r),u),o.addListener(_,"dragover",this.onDragOver.bind(r),u),o.addListener(_,"dragleave",this.onDragLeave.bind(r),u),o.addListener(_,"drop",this.onDrop.bind(r),u);var ne=null;function me(){null==ne&&(ne=setTimeout(function(){null!=ne&&M&&se()},20))}function $(Q){var ue=Q.types;return!ue||Array.prototype.some.call(ue,function(Me){return"text/plain"==Me||"Text"==Me})}function q(Q){var ue=["copy","copymove","all","uninitialized"],Oe=v.isMac?Q.altKey:Q.ctrlKey,Xe="uninitialized";try{Xe=Q.dataTransfer.effectAllowed.toLowerCase()}catch{}var Be="none";return Oe&&ue.indexOf(Xe)>=0?Be="copy":["move","copymove","linkmove","all","uninitialized"].indexOf(Xe)>=0?Be="move":ue.indexOf(Xe)>=0&&(Be="copy"),Be}}function d(r,u,h,m){return Math.sqrt(Math.pow(h-r,2)+Math.pow(m-u,2))}(function(){this.dragWait=function(){Date.now()-this.mousedownEvent.time>this.editor.getDragDelay()&&this.startDrag()},this.dragWaitEnd=function(){this.editor.container.draggable=!1,this.startSelect(this.mousedownEvent.getDocumentPosition()),this.selectEnd()},this.dragReadyEnd=function(r){this.editor.$resetCursorStyle(),this.editor.unsetStyle("ace_dragging"),this.editor.renderer.setCursorStyle(""),this.dragWaitEnd()},this.startDrag=function(){this.cancelDrag=!1;var r=this.editor;r.container.draggable=!0,r.renderer.$cursorLayer.setBlinking(!1),r.setStyle("ace_dragging"),r.renderer.setCursorStyle(v.isWin?"default":"move"),this.setState("dragReady")},this.onMouseDrag=function(r){var u=this.editor.container;v.isIE&&"dragReady"==this.state&&d(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y)>3&&u.dragDrop(),"dragWait"===this.state&&d(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y)>0&&(u.draggable=!1,this.startSelect(this.mousedownEvent.getDocumentPosition()))},this.onMouseDown=function(r){if(this.$dragEnabled){this.mousedownEvent=r;var u=this.editor,h=r.inSelection(),m=r.getButton();if(1===(r.domEvent.detail||1)&&0===m&&h){if(r.editor.inMultiSelectMode&&(r.getAccelKey()||r.getShiftKey()))return;this.mousedownEvent.time=Date.now();var M=r.domEvent.target||r.domEvent.srcElement;"unselectable"in M&&(M.unselectable="on"),u.getDragDelay()?(v.isWebKit&&(this.cancelDrag=!0,u.container.draggable=!0),this.setState("dragWait")):this.startDrag(),this.captureMouse(r,this.onMouseDrag.bind(this)),r.defaultPrevented=!0}}}}).call(l.prototype),p.DragdropHandler=l}),ace.define("ace/mouse/touch_handler",["require","exports","module","ace/mouse/mouse_event","ace/lib/event","ace/lib/dom"],function(n,p,C){"use strict";var b=n("./mouse_event").MouseEvent,o=n("../lib/event"),v=n("../lib/dom");p.addTouchListeners=function(a,c){var l,d,r,u,h,m,M,A,T,s="scroll",_=0,x=0,w=0,L=0;function E(){T||function O(){var S=window.navigator&&window.navigator.clipboard,k=!1,Y=function(se){var ne=se.target.getAttribute("action");if("more"==ne||!k)return k=!k,function(){var se=c.getCopyText(),ne=c.session.getUndoManager().hasUndo();T.replaceChild(v.buildDom(k?["span",!se&&["span",{class:"ace_mobile-button",action:"selectall"},"Select All"],se&&["span",{class:"ace_mobile-button",action:"copy"},"Copy"],se&&["span",{class:"ace_mobile-button",action:"cut"},"Cut"],S&&["span",{class:"ace_mobile-button",action:"paste"},"Paste"],ne&&["span",{class:"ace_mobile-button",action:"undo"},"Undo"],["span",{class:"ace_mobile-button",action:"find"},"Find"],["span",{class:"ace_mobile-button",action:"openCommandPallete"},"Palette"]]:["span"]),T.firstChild)}();"paste"==ne?S.readText().then(function(me){c.execCommand(ne,me)}):ne&&(("cut"==ne||"copy"==ne)&&(S?S.writeText(c.getCopyText()):document.execCommand("copy")),c.execCommand(ne)),T.firstChild.style.display="none",k=!1,"openCommandPallete"!=ne&&c.focus()};T=v.buildDom(["div",{class:"ace_mobile-menu",ontouchstart:function(se){s="menu",se.stopPropagation(),se.preventDefault(),c.textInput.focus()},ontouchend:function(se){se.stopPropagation(),se.preventDefault(),Y(se)},onclick:Y},["span"],["span",{class:"ace_mobile-button",action:"more"},"..."]],c.container)}();var S=c.selection.cursor,k=c.renderer.textToScreenCoordinates(S.row,S.column),F=c.renderer.textToScreenCoordinates(0,0).pageX,Y=c.renderer.scrollLeft,se=c.container.getBoundingClientRect();T.style.top=k.pageY-se.top-3+"px",k.pageX-se.left1)return clearTimeout(h),h=null,r=-1,void(s="zoom");A=c.$mouseHandler.isMousePressed=!0;var F=c.renderer.layerConfig.lineHeight,Y=c.renderer.layerConfig.lineHeight,se=S.timeStamp;u=se;var ne=k[0],me=ne.clientX,$=ne.clientY;Math.abs(l-me)+Math.abs(d-$)>F&&(r=-1),l=S.clientX=me,d=S.clientY=$,w=L=0;var q=new b(S,c);if(M=q.getDocumentPosition(),se-r<500&&1==k.length&&!_)x++,S.preventDefault(),S.button=0,function j(){h=null,clearTimeout(h),c.selection.moveToPosition(M);var S=x>=2?c.selection.getLineRange(M.row):c.session.getBracketRange(M);S&&!S.isEmpty()?c.selection.setRange(S):c.selection.selectWord(),s="wait"}();else{x=0;var Q=c.selection.cursor,ue=c.selection.isEmpty()?Q:c.selection.anchor,Me=c.renderer.$cursorLayer.getPixelPosition(Q,!0),Oe=c.renderer.$cursorLayer.getPixelPosition(ue,!0),Xe=c.renderer.scroller.getBoundingClientRect(),Be=c.renderer.layerConfig.offset,$e=c.renderer.scrollLeft,st=function(St,bt){return(St/=Y)*St+(bt=bt/F-.75)*bt};if(S.clientXtt?"cursor":"anchor"),s=tt<3.5?"anchor":Mt<3.5?"cursor":"scroll",h=setTimeout(R,450)}r=se},c),o.addListener(a,"touchend",function(S){A=c.$mouseHandler.isMousePressed=!1,m&&clearInterval(m),"zoom"==s?(s="",_=0):h?(c.selection.moveToPosition(M),_=0,E()):"scroll"==s?(function N(){_+=60,m=setInterval(function(){_--<=0&&(clearInterval(m),m=null),Math.abs(w)<.01&&(w=0),Math.abs(L)<.01&&(L=0),_<20&&(w*=.9),_<20&&(L*=.9);var S=c.session.getScrollTop();c.renderer.scrollBy(10*w,10*L),S==c.session.getScrollTop()&&(_=0)},10)}(),D()):E(),clearTimeout(h),h=null},c),o.addListener(a,"touchmove",function(S){h&&(clearTimeout(h),h=null);var k=S.touches;if(!(k.length>1||"zoom"==s)){var F=k[0],Y=l-F.clientX,se=d-F.clientY;if("wait"==s){if(!(Y*Y+se*se>4))return S.preventDefault();s="cursor"}l=F.clientX,d=F.clientY,S.clientX=F.clientX,S.clientY=F.clientY;var ne=S.timeStamp,me=ne-u;if(u=ne,"scroll"==s){var $=new b(S,c);$.speed=1,$.wheelX=Y,$.wheelY=se,10*Math.abs(Y)=$e){for(bt=St+1;bt=$e;)bt++;for(xt=St,nt=bt-1;xt=st.length||2!=(bt=Mt[tt-1])&&3!=bt||2!=(xt=st[tt+1])&&3!=xt?4:(c&&(xt=3),xt==bt?xt:4);case 10:return 2==(bt=tt>0?Mt[tt-1]:5)&&tt+10&&2==Mt[tt-1])return 2;if(c)return 4;for(ot=tt+1,nt=st.length;ot=1425&&vt<=2303||64286==vt)&&(1==bt||7==bt))return 1}return tt<1||5==(bt=st[tt-1])?4:Mt[tt-1];case 5:return c=!1,l=!0,v;case 6:return d=!0,4;case 13:case 14:case 16:case 17:case 15:c=!1;case $:return 4}}function Xe($e){var st=$e.charCodeAt(0),Mt=st>>8;return 0==Mt?st>191?0:q[st]:5==Mt?/[\u0591-\u05f4]/.test($e)?1:0:6==Mt?/[\u0610-\u061a\u064b-\u065f\u06d6-\u06e4\u06e7-\u06ed]/.test($e)?12:/[\u0660-\u0669\u066b-\u066c]/.test($e)?3:1642==st?S:/[\u06f0-\u06f9]/.test($e)?2:7:32==Mt&&st<=8287?Q[255&st]:254==Mt&&st>=65136?7:4}p.L=0,p.R=1,p.EN=2,p.ON_R=3,p.AN=4,p.R_H=5,p.B=6,p.RLE=7,p.DOT="\xb7",p.doBidiReorder=function($e,st,Mt){if($e.length<2)return{};var tt=$e.split(""),St=new Array(tt.length),bt=new Array(tt.length),xt=[];v=Mt?1:0,function ue($e,st,Mt,tt){var St=v?m:h,bt=null,xt=null,nt=null,ot=0,vt=null,J=-1,Ce=null,ee=null,ae=[];if(!tt)for(Ce=0,tt=[];Ce0)if(16==vt){for(Ce=J;Ce-1){for(Ce=J;Ce=0&&8==tt[ie];ie--)st[ie]=v}}(tt,xt,tt.length,st);for(var nt=0;nt7&&st[nt]<13||4===st[nt]||st[nt]===$)?xt[nt]=p.ON_R:nt>0&&"\u0644"===tt[nt-1]&&/\u0622|\u0623|\u0625|\u0627/.test(tt[nt])&&(xt[nt-1]=xt[nt]=p.R_H,nt++);for(tt[tt.length-1]===p.DOT&&(xt[tt.length-1]=p.B),"\u202b"===tt[0]&&(xt[0]=p.RLE),nt=0;nt=0&&(s=this.session.$docRowCache[d])}return s},c.prototype.getSplitIndex=function(){var s=0,l=this.session.$screenRowCache;if(l.length)for(var d,r=this.session.$getRowCacheIndex(l,this.currentRow);this.currentRow-s>0&&(d=this.session.$getRowCacheIndex(l,this.currentRow-s-1))===r;)r=d,s++;else s=this.currentRow;return s},c.prototype.updateRowLine=function(s,l){void 0===s&&(s=this.getDocumentRow());var r=s===this.session.getLength()-1?this.EOF:this.EOL;if(this.wrapIndent=0,this.line=this.session.getLine(s),this.isRtlDir=this.$isRtl||this.line.charAt(0)===this.RLE,this.session.$useWrapMode){var u=this.session.$wrapData[s];u&&(void 0===l&&(l=this.getSplitIndex()),l>0&&u.length?(this.wrapIndent=u.indent,this.wrapOffset=this.wrapIndent*this.charWidths[b.L],this.line=ll?this.session.getOverwrite()?s:s-1:l,r=b.getVisualFromLogicalIdx(d,this.bidiMap),u=this.bidiMap.bidiLevels,h=0;!this.session.getOverwrite()&&s<=l&&u[r]%2!=0&&r++;for(var m=0;ml&&u[r]%2==0&&(h+=this.charWidths[u[r]]),this.wrapIndent&&(h+=this.isRtlDir?-1*this.wrapOffset:this.wrapOffset),this.isRtlDir&&(h+=this.rtlLineOffset),h},c.prototype.getSelections=function(s,l){var u,d=this.bidiMap,r=d.bidiLevels,h=[],m=0,_=Math.min(s,l)-this.wrapIndent,M=Math.max(s,l)-this.wrapIndent,x=!1,w=!1,L=0;this.wrapIndent&&(m+=this.isRtlDir?-1*this.wrapOffset:this.wrapOffset);for(var A,T=0;T=_&&Ar+m/2;){if(r+=m,u===h.length-1){m=0;break}m=this.charWidths[h[++u]]}return u>0&&h[u-1]%2!=0&&h[u]%2==0?(d0&&h[u-1]%2==0&&h[u]%2!=0?l=1+(d>r?this.bidiMap.logicalFromVisual[u]:this.bidiMap.logicalFromVisual[u-1]):this.isRtlDir&&u===h.length-1&&0===m&&h[u-1]%2==0||!this.isRtlDir&&0===u&&h[u]%2!=0?l=1+this.bidiMap.logicalFromVisual[u]:(u>0&&h[u-1]%2!=0&&0!==m&&u--,l=this.bidiMap.logicalFromVisual[u]),0===l&&this.isRtlDir&&l++,l+this.wrapIndent},c}();p.BidiHandler=a}),ace.define("ace/selection",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/lib/event_emitter","ace/range"],function(n,p,C){"use strict";var b=n("./lib/oop"),o=n("./lib/lang"),v=n("./lib/event_emitter").EventEmitter,a=n("./range").Range,c=function(s){this.session=s,this.doc=s.getDocument(),this.clearSelection(),this.cursor=this.lead=this.doc.createAnchor(0,0),this.anchor=this.doc.createAnchor(0,0),this.$silent=!1;var l=this;this.cursor.on("change",function(d){l.$cursorChanged=!0,l.$silent||l._emit("changeCursor"),!l.$isEmpty&&!l.$silent&&l._emit("changeSelection"),!l.$keepDesiredColumnOnChange&&d.old.column!=d.value.column&&(l.$desiredColumn=null)}),this.anchor.on("change",function(){l.$anchorChanged=!0,!l.$isEmpty&&!l.$silent&&l._emit("changeSelection")})};(function(){b.implement(this,v),this.isEmpty=function(){return this.$isEmpty||this.anchor.row==this.lead.row&&this.anchor.column==this.lead.column},this.isMultiLine=function(){return!this.$isEmpty&&this.anchor.row!=this.cursor.row},this.getCursor=function(){return this.lead.getPosition()},this.setAnchor=function(s,l){this.$isEmpty=!1,this.anchor.setPosition(s,l)},this.setSelectionAnchor=this.setAnchor,this.getAnchor=function(){return this.$isEmpty?this.getSelectionLead():this.anchor.getPosition()},this.getSelectionAnchor=this.getAnchor,this.getSelectionLead=function(){return this.lead.getPosition()},this.isBackwards=function(){var s=this.anchor,l=this.lead;return s.row>l.row||s.row==l.row&&s.column>l.column},this.getRange=function(){var s=this.anchor,l=this.lead;return this.$isEmpty?a.fromPoints(l,l):this.isBackwards()?a.fromPoints(l,s):a.fromPoints(s,l)},this.clearSelection=function(){this.$isEmpty||(this.$isEmpty=!0,this._emit("changeSelection"))},this.selectAll=function(){this.$setSelection(0,0,Number.MAX_VALUE,Number.MAX_VALUE)},this.setRange=this.setSelectionRange=function(s,l){var d=l?s.end:s.start,r=l?s.start:s.end;this.$setSelection(d.row,d.column,r.row,r.column)},this.$setSelection=function(s,l,d,r){if(!this.$silent){var u=this.$isEmpty,h=this.inMultiSelectMode;this.$silent=!0,this.$cursorChanged=this.$anchorChanged=!1,this.anchor.setPosition(s,l),this.cursor.setPosition(d,r),this.$isEmpty=!a.comparePoints(this.anchor,this.cursor),this.$silent=!1,this.$cursorChanged&&this._emit("changeCursor"),(this.$cursorChanged||this.$anchorChanged||u!=this.$isEmpty||h)&&this._emit("changeSelection")}},this.$moveSelection=function(s){var l=this.lead;this.$isEmpty&&this.setSelectionAnchor(l.row,l.column),s.call(this)},this.selectTo=function(s,l){this.$moveSelection(function(){this.moveCursorTo(s,l)})},this.selectToPosition=function(s){this.$moveSelection(function(){this.moveCursorToPosition(s)})},this.moveTo=function(s,l){this.clearSelection(),this.moveCursorTo(s,l)},this.moveToPosition=function(s){this.clearSelection(),this.moveCursorToPosition(s)},this.selectUp=function(){this.$moveSelection(this.moveCursorUp)},this.selectDown=function(){this.$moveSelection(this.moveCursorDown)},this.selectRight=function(){this.$moveSelection(this.moveCursorRight)},this.selectLeft=function(){this.$moveSelection(this.moveCursorLeft)},this.selectLineStart=function(){this.$moveSelection(this.moveCursorLineStart)},this.selectLineEnd=function(){this.$moveSelection(this.moveCursorLineEnd)},this.selectFileEnd=function(){this.$moveSelection(this.moveCursorFileEnd)},this.selectFileStart=function(){this.$moveSelection(this.moveCursorFileStart)},this.selectWordRight=function(){this.$moveSelection(this.moveCursorWordRight)},this.selectWordLeft=function(){this.$moveSelection(this.moveCursorWordLeft)},this.getWordRange=function(s,l){if(typeof l>"u"){var d=s||this.lead;s=d.row,l=d.column}return this.session.getWordRange(s,l)},this.selectWord=function(){this.setSelectionRange(this.getWordRange())},this.selectAWord=function(){var s=this.getCursor(),l=this.session.getAWordRange(s.row,s.column);this.setSelectionRange(l)},this.getLineRange=function(s,l){var r,d="number"==typeof s?s:this.lead.row,u=this.session.getFoldLine(d);return u?(d=u.start.row,r=u.end.row):r=d,!0===l?new a(d,0,r,this.session.getLine(r).length):new a(d,0,r+1,0)},this.selectLine=function(){this.setSelectionRange(this.getLineRange())},this.moveCursorUp=function(){this.moveCursorBy(-1,0)},this.moveCursorDown=function(){this.moveCursorBy(1,0)},this.wouldMoveIntoSoftTab=function(s,l,d){var r=s.column,u=s.column+l;return d<0&&(r=s.column-l,u=s.column),this.session.isTabStop(s)&&this.doc.getLine(s.row).slice(r,u).split(" ").length-1==l},this.moveCursorLeft=function(){var l,s=this.lead.getPosition();if(l=this.session.getFoldAt(s.row,s.column,-1))this.moveCursorTo(l.start.row,l.start.column);else if(0===s.column)s.row>0&&this.moveCursorTo(s.row-1,this.doc.getLine(s.row-1).length);else{var d=this.session.getTabSize();this.wouldMoveIntoSoftTab(s,d,-1)&&!this.session.getNavigateWithinSoftTabs()?this.moveCursorBy(0,-d):this.moveCursorBy(0,-1)}},this.moveCursorRight=function(){var l,s=this.lead.getPosition();if(l=this.session.getFoldAt(s.row,s.column,1))this.moveCursorTo(l.end.row,l.end.column);else if(this.lead.column==this.doc.getLine(this.lead.row).length)this.lead.row0&&(l.column=r)}}this.moveCursorTo(l.row,l.column)},this.moveCursorFileEnd=function(){var s=this.doc.getLength()-1,l=this.doc.getLine(s).length;this.moveCursorTo(s,l)},this.moveCursorFileStart=function(){this.moveCursorTo(0,0)},this.moveCursorLongWordRight=function(){var s=this.lead.row,l=this.lead.column,d=this.doc.getLine(s),r=d.substring(l);this.session.nonTokenRe.lastIndex=0,this.session.tokenRe.lastIndex=0;var u=this.session.getFoldAt(s,l,1);if(!u)return this.session.nonTokenRe.exec(r)&&(l+=this.session.nonTokenRe.lastIndex,this.session.nonTokenRe.lastIndex=0,r=d.substring(l)),l>=d.length?(this.moveCursorTo(s,d.length),this.moveCursorRight(),void(s0&&this.moveCursorWordLeft());this.session.tokenRe.exec(u)&&(l-=this.session.tokenRe.lastIndex,this.session.tokenRe.lastIndex=0),this.moveCursorTo(s,l)}},this.$shortWordEndIndex=function(s){var d,l=0,r=/\s/,u=this.session.tokenRe;if(u.lastIndex=0,this.session.tokenRe.exec(s))l=this.session.tokenRe.lastIndex;else{for(;(d=s[l])&&r.test(d);)l++;if(l<1)for(u.lastIndex=0;(d=s[l])&&!u.test(d);)if(u.lastIndex=0,l++,r.test(d)){if(l>2){l--;break}for(;(d=s[l])&&r.test(d);)l++;if(l>2)break}}return u.lastIndex=0,l},this.moveCursorShortWordRight=function(){var s=this.lead.row,l=this.lead.column,d=this.doc.getLine(s),r=d.substring(l),u=this.session.getFoldAt(s,l,1);if(u)return this.moveCursorTo(u.end.row,u.end.column);if(l==d.length){var h=this.doc.getLength();do{s++,r=this.doc.getLine(s)}while(s0&&/^\s*$/.test(r));l=r.length,/\s+$/.test(r)||(r="")}var u=o.stringReverse(r),h=this.$shortWordEndIndex(u);return this.moveCursorTo(s,l-h)},this.moveCursorWordRight=function(){this.session.$selectLongWords?this.moveCursorLongWordRight():this.moveCursorShortWordRight()},this.moveCursorWordLeft=function(){this.session.$selectLongWords?this.moveCursorLongWordLeft():this.moveCursorShortWordLeft()},this.moveCursorBy=function(s,l){var r,d=this.session.documentToScreenPosition(this.lead.row,this.lead.column);if(0===l&&(0!==s&&(this.session.$bidiHandler.isBidiRow(d.row,this.lead.row)?(r=this.session.$bidiHandler.getPosLeft(d.column),d.column=Math.round(r/this.session.$bidiHandler.charWidths[0])):r=d.column*this.session.$bidiHandler.charWidths[0]),this.$desiredColumn?d.column=this.$desiredColumn:this.$desiredColumn=d.column),0!=s&&this.session.lineWidgets&&this.session.lineWidgets[this.lead.row]){var u=this.session.lineWidgets[this.lead.row];s<0?s-=u.rowsAbove||0:s>0&&(s+=u.rowCount-(u.rowsAbove||0))}var h=this.session.screenToDocumentPosition(d.row+s,d.column,r);this.moveCursorTo(h.row,h.column+l,0===l)},this.moveCursorToPosition=function(s){this.moveCursorTo(s.row,s.column)},this.moveCursorTo=function(s,l,d){var r=this.session.getFoldAt(s,l,1);r&&(s=r.start.row,l=r.start.column),this.$keepDesiredColumnOnChange=!0;var u=this.session.getLine(s);/[\uDC00-\uDFFF]/.test(u.charAt(l))&&u.charAt(l-1)&&(this.lead.row==s&&this.lead.column==l+1?l-=1:l+=1),this.lead.setPosition(s,l),this.$keepDesiredColumnOnChange=!1,d||(this.$desiredColumn=null)},this.moveCursorToScreen=function(s,l,d){var r=this.session.screenToDocumentPosition(s,l);this.moveCursorTo(r.row,r.column,d)},this.detach=function(){this.lead.detach(),this.anchor.detach()},this.fromOrientedRange=function(s){this.setSelectionRange(s,s.cursor==s.start),this.$desiredColumn=s.desiredColumn||this.$desiredColumn},this.toOrientedRange=function(s){var l=this.getRange();return s?(s.start.column=l.start.column,s.start.row=l.start.row,s.end.column=l.end.column,s.end.row=l.end.row):s=l,s.cursor=this.isBackwards()?s.start:s.end,s.desiredColumn=this.$desiredColumn,s},this.getRangeOfMovements=function(s){var l=this.getCursor();try{s(this);var d=this.getCursor();return a.fromPoints(l,d)}catch{return a.fromPoints(l,l)}finally{this.moveCursorToPosition(l)}},this.toJSON=function(){if(this.rangeCount)var s=this.ranges.map(function(l){var d=l.clone();return d.isBackwards=l.cursor==l.start,d});else(s=this.getRange()).isBackwards=this.isBackwards();return s},this.fromJSON=function(s){if(null==s.start){if(this.rangeList&&s.length>1){this.toSingleRange(s[0]);for(var l=s.length;l--;){var d=a.fromPoints(s[l].start,s[l].end);s[l].isBackwards&&(d.cursor=d.start),this.addRange(d,!0)}return}s=s[0]}this.rangeList&&this.toSingleRange(s),this.setSelectionRange(s,s.isBackwards)},this.isEqual=function(s){if((s.length||this.rangeCount)&&s.length!=this.rangeCount)return!1;if(!s.length||!this.ranges)return this.getRange().isEqual(s);for(var l=this.ranges.length;l--;)if(!this.ranges[l].isEqual(s[l]))return!1;return!0}}).call(c.prototype),p.Selection=c}),ace.define("ace/tokenizer",["require","exports","module","ace/config"],function(n,p,C){"use strict";var b=n("./config"),o=2e3,v=function(){function a(c){for(var s in this.states=c,this.regExps={},this.matchMappings={},this.states){for(var l=this.states[s],d=[],r=0,u=this.matchMappings[s]={defaultToken:"text"},h="g",m=[],_=0;_1?this.$applyToken:M.token),w>1&&(/\\\d/.test(M.regex)?x=M.regex.replace(/\\([0-9]+)/g,function(L,A){return"\\"+(parseInt(A,10)+r+1)}):(w=1,x=this.removeCapturingGroups(M.regex)),!M.splitRegex&&"string"!=typeof M.token&&m.push(M)),u[r]=_,r+=w,d.push(x),M.onMatch||(M.onMatch=null)}}d.length||(u[0]=0,d.push("$")),m.forEach(function(L){L.splitRegex=this.createSplitterRegexp(L.regex,h)},this),this.regExps[s]=new RegExp("("+d.join(")|(")+")|($)",h)}}return a.prototype.$setMaxTokenCount=function(c){o=0|c},a.prototype.$applyToken=function(c){var s=this.splitRegex.exec(c).slice(1),l=this.token.apply(this,s);if("string"==typeof l)return[{type:l,value:c}];for(var d=[],r=0,u=l.length;rM){var E=c.substring(M,O-T.length);w.type==L?w.value+=E:(w.type&&_.push(w),w={type:L,value:E})}for(var D=0;Do){for(x>2*c.length&&this.reportError("infinite loop with in ace tokenizer",{startState:s,line:c});M1&&l[0]!==d&&l.unshift("#tmp",d),{tokens:_,state:l.length?l:d}},a}();v.prototype.reportError=b.reportError,p.Tokenizer=v}),ace.define("ace/mode/text_highlight_rules",["require","exports","module","ace/lib/lang"],function(n,p,C){"use strict";var b=n("../lib/lang"),o=function(){this.$rules={start:[{token:"empty_line",regex:"^$"},{defaultToken:"text"}]}};(function(){this.addRules=function(c,s){if(s)for(var l in c){for(var d=c[l],r=0;r=this.$rowTokens.length;){if(this.$row+=1,a||(a=this.$session.getLength()),this.$row>=a)return this.$row=a-1,null;this.$rowTokens=this.$session.getTokens(this.$row),this.$tokenIndex=0}return this.$rowTokens[this.$tokenIndex]},v.prototype.getCurrentToken=function(){return this.$rowTokens[this.$tokenIndex]},v.prototype.getCurrentTokenRow=function(){return this.$row},v.prototype.getCurrentTokenColumn=function(){var a=this.$rowTokens,c=this.$tokenIndex,s=a[c].start;if(void 0!==s)return s;for(s=0;c>0;)s+=a[c-=1].value.length;return s},v.prototype.getCurrentTokenPosition=function(){return{row:this.$row,column:this.getCurrentTokenColumn()}},v.prototype.getCurrentTokenRange=function(){var a=this.$rowTokens[this.$tokenIndex],c=this.getCurrentTokenColumn();return new b(this.$row,c,this.$row,c+a.value.length)},v}();p.TokenIterator=o}),ace.define("ace/mode/behaviour/cstyle",["require","exports","module","ace/lib/oop","ace/mode/behaviour","ace/token_iterator","ace/lib/lang"],function(n,p,C){"use strict";var l,b=n("../../lib/oop"),o=n("../behaviour").Behaviour,v=n("../../token_iterator").TokenIterator,a=n("../../lib/lang"),c=["text","paren.rparen","rparen","paren","punctuation.operator"],s=["text","paren.rparen","rparen","paren","punctuation.operator","comment"],d={},r={'"':'"',"'":"'"},u=function(_){var M=-1;if(_.multiSelect&&(M=_.selection.index,d.rangeCount!=_.multiSelect.rangeCount&&(d={rangeCount:_.multiSelect.rangeCount})),d[M])return l=d[M];l=d[M]={autoInsertedBrackets:0,autoInsertedRow:-1,autoInsertedLineEnd:"",maybeInsertedBrackets:0,maybeInsertedRow:-1,maybeInsertedLineStart:"",maybeInsertedLineEnd:""}},h=function(_,M,x,w){var L=_.end.row-_.start.row;return{text:x+M+w,selection:[0,_.start.column+1,L,_.end.column+(L?0:1)]}},m=function(_){_=_||{},this.add("braces","insertion",function(M,x,w,L,A){var T=w.getCursorPosition(),O=L.doc.getLine(T.row);if("{"==A){u(w);var E=w.getSelectionRange(),D=L.doc.getTextRange(E);if(""!==D&&"{"!==D&&w.getWrapBehavioursEnabled())return h(E,D,"{","}");if(m.isSaneInsertion(w,L))return/[\]\}\)]/.test(O[T.column])||w.inMultiSelectMode||_.braces?(m.recordAutoInsert(w,L,"}"),{text:"{}",selection:[1,1]}):(m.recordMaybeInsert(w,L,"{"),{text:"{",selection:[1,1]})}else if("}"==A){if(u(w),"}"==O.substring(T.column,T.column+1)&&null!==L.$findOpeningBracket("}",{column:T.column+1,row:T.row})&&m.isAutoInsertedClosing(T,O,A))return m.popAutoInsertedClosing(),{text:"",selection:[1,1]}}else{if("\n"==A||"\r\n"==A){u(w);var N="";if(m.isMaybeInsertedClosing(T,O)&&(N=a.stringRepeat("}",l.maybeInsertedBrackets),m.clearMaybeInsertedClosing()),"}"===O.substring(T.column,T.column+1)){var S=L.findMatchingBracket({row:T.row,column:T.column+1},"}");if(!S)return null;var k=this.$getIndent(L.getLine(S.row))}else{if(!N)return void m.clearMaybeInsertedClosing();k=this.$getIndent(O)}var F=k+L.getTabString();return{text:"\n"+F+"\n"+k+N,selection:[1,F.length,1,F.length]}}m.clearMaybeInsertedClosing()}}),this.add("braces","deletion",function(M,x,w,L,A){var T=L.doc.getTextRange(A);if(!A.isMultiLine()&&"{"==T){if(u(w),"}"==L.doc.getLine(A.start.row).substring(A.end.column,A.end.column+1))return A.end.column++,A;l.maybeInsertedBrackets--}}),this.add("parens","insertion",function(M,x,w,L,A){if("("==A){u(w);var T=w.getSelectionRange(),O=L.doc.getTextRange(T);if(""!==O&&w.getWrapBehavioursEnabled())return h(T,O,"(",")");if(m.isSaneInsertion(w,L))return m.recordAutoInsert(w,L,")"),{text:"()",selection:[1,1]}}else if(")"==A){u(w);var E=w.getCursorPosition(),D=L.doc.getLine(E.row);if(")"==D.substring(E.column,E.column+1)&&null!==L.$findOpeningBracket(")",{column:E.column+1,row:E.row})&&m.isAutoInsertedClosing(E,D,A))return m.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}),this.add("parens","deletion",function(M,x,w,L,A){var T=L.doc.getTextRange(A);if(!A.isMultiLine()&&"("==T&&(u(w),")"==L.doc.getLine(A.start.row).substring(A.start.column+1,A.start.column+2)))return A.end.column++,A}),this.add("brackets","insertion",function(M,x,w,L,A){if("["==A){u(w);var T=w.getSelectionRange(),O=L.doc.getTextRange(T);if(""!==O&&w.getWrapBehavioursEnabled())return h(T,O,"[","]");if(m.isSaneInsertion(w,L))return m.recordAutoInsert(w,L,"]"),{text:"[]",selection:[1,1]}}else if("]"==A){u(w);var E=w.getCursorPosition(),D=L.doc.getLine(E.row);if("]"==D.substring(E.column,E.column+1)&&null!==L.$findOpeningBracket("]",{column:E.column+1,row:E.row})&&m.isAutoInsertedClosing(E,D,A))return m.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}),this.add("brackets","deletion",function(M,x,w,L,A){var T=L.doc.getTextRange(A);if(!A.isMultiLine()&&"["==T&&(u(w),"]"==L.doc.getLine(A.start.row).substring(A.start.column+1,A.start.column+2)))return A.end.column++,A}),this.add("string_dquotes","insertion",function(M,x,w,L,A){var T=L.$mode.$quotes||r;if(1==A.length&&T[A]){if(this.lineCommentStart&&-1!=this.lineCommentStart.indexOf(A))return;u(w);var O=A,E=w.getSelectionRange(),D=L.doc.getTextRange(E);if(""!==D&&(1!=D.length||!T[D])&&w.getWrapBehavioursEnabled())return h(E,D,O,O);if(!D){var R=w.getCursorPosition(),j=L.doc.getLine(R.row),N=j.substring(R.column-1,R.column),S=j.substring(R.column,R.column+1),k=L.getTokenAt(R.row,R.column),F=L.getTokenAt(R.row,R.column+1);if("\\"==N&&k&&/escape/.test(k.type))return null;var ne,Y=k&&/string|escape/.test(k.type),se=!F||/string|escape/.test(F.type);if(S==O)(ne=Y!==se)&&/string\.end/.test(F.type)&&(ne=!1);else{if(Y&&!se||Y&&se)return null;var me=L.$mode.tokenRe;me.lastIndex=0;var $=me.test(N);me.lastIndex=0;var q=me.test(S),Q=L.$mode.$pairQuotesAfter;if(!(Q&&Q[O]&&Q[O].test(N))&&$||q||S&&!/[\s;,.})\]\\]/.test(S))return null;var Me=j[R.column-2];if(N==O&&(Me==O||me.test(Me)))return null;ne=!0}return{text:ne?O+O:"",selection:[1,1]}}}}),this.add("string_dquotes","deletion",function(M,x,w,L,A){var T=L.$mode.$quotes||r,O=L.doc.getTextRange(A);if(!A.isMultiLine()&&T.hasOwnProperty(O)&&(u(w),L.doc.getLine(A.start.row).substring(A.start.column+1,A.start.column+2)==O))return A.end.column++,A}),!1!==_.closeDocComment&&this.add("doc comment end","insertion",function(M,x,w,L,A){if("doc-start"===M&&("\n"===A||"\r\n"===A)&&w.selection.isEmpty()){var T=w.getCursorPosition(),O=L.doc.getLine(T.row),E=L.doc.getLine(T.row+1),D=this.$getIndent(O);if(/\s*\*/.test(E))return/^\s*\*/.test(O)?{text:A+D+"* ",selection:[1,3+D.length,1,3+D.length]}:{text:A+D+" * ",selection:[1,3+D.length,1,3+D.length]};if(/\/\*\*/.test(O.substring(0,T.column)))return{text:A+D+" * "+A+" "+D+"*/",selection:[1,4+D.length,1,4+D.length]}}})};m.isSaneInsertion=function(_,M){var x=_.getCursorPosition(),w=new v(M,x.row,x.column);if(!this.$matchTokenType(w.getCurrentToken()||"text",c)){if(/[)}\]]/.test(_.session.getLine(x.row)[x.column]))return!0;var L=new v(M,x.row,x.column+1);if(!this.$matchTokenType(L.getCurrentToken()||"text",c))return!1}return w.stepForward(),w.getCurrentTokenRow()!==x.row||this.$matchTokenType(w.getCurrentToken()||"text",s)},m.$matchTokenType=function(_,M){return M.indexOf(_.type||_)>-1},m.recordAutoInsert=function(_,M,x){var w=_.getCursorPosition(),L=M.doc.getLine(w.row);this.isAutoInsertedClosing(w,L,l.autoInsertedLineEnd[0])||(l.autoInsertedBrackets=0),l.autoInsertedRow=w.row,l.autoInsertedLineEnd=x+L.substr(w.column),l.autoInsertedBrackets++},m.recordMaybeInsert=function(_,M,x){var w=_.getCursorPosition(),L=M.doc.getLine(w.row);this.isMaybeInsertedClosing(w,L)||(l.maybeInsertedBrackets=0),l.maybeInsertedRow=w.row,l.maybeInsertedLineStart=L.substr(0,w.column)+x,l.maybeInsertedLineEnd=L.substr(w.column),l.maybeInsertedBrackets++},m.isAutoInsertedClosing=function(_,M,x){return l.autoInsertedBrackets>0&&_.row===l.autoInsertedRow&&x===l.autoInsertedLineEnd[0]&&M.substr(_.column)===l.autoInsertedLineEnd},m.isMaybeInsertedClosing=function(_,M){return l.maybeInsertedBrackets>0&&_.row===l.maybeInsertedRow&&M.substr(_.column)===l.maybeInsertedLineEnd&&M.substr(0,_.column)==l.maybeInsertedLineStart},m.popAutoInsertedClosing=function(){l.autoInsertedLineEnd=l.autoInsertedLineEnd.substr(1),l.autoInsertedBrackets--},m.clearMaybeInsertedClosing=function(){l&&(l.maybeInsertedBrackets=0,l.maybeInsertedRow=-1)},b.inherits(m,o),p.CstyleBehaviour=m}),ace.define("ace/unicode",["require","exports","module"],function(n,p,C){"use strict";for(var b=[48,9,8,25,5,0,2,25,48,0,11,0,5,0,6,22,2,30,2,457,5,11,15,4,8,0,2,0,18,116,2,1,3,3,9,0,2,2,2,0,2,19,2,82,2,138,2,4,3,155,12,37,3,0,8,38,10,44,2,0,2,1,2,1,2,0,9,26,6,2,30,10,7,61,2,9,5,101,2,7,3,9,2,18,3,0,17,58,3,100,15,53,5,0,6,45,211,57,3,18,2,5,3,11,3,9,2,1,7,6,2,2,2,7,3,1,3,21,2,6,2,0,4,3,3,8,3,1,3,3,9,0,5,1,2,4,3,11,16,2,2,5,5,1,3,21,2,6,2,1,2,1,2,1,3,0,2,4,5,1,3,2,4,0,8,3,2,0,8,15,12,2,2,8,2,2,2,21,2,6,2,1,2,4,3,9,2,2,2,2,3,0,16,3,3,9,18,2,2,7,3,1,3,21,2,6,2,1,2,4,3,8,3,1,3,2,9,1,5,1,2,4,3,9,2,0,17,1,2,5,4,2,2,3,4,1,2,0,2,1,4,1,4,2,4,11,5,4,4,2,2,3,3,0,7,0,15,9,18,2,2,7,2,2,2,22,2,9,2,4,4,7,2,2,2,3,8,1,2,1,7,3,3,9,19,1,2,7,2,2,2,22,2,9,2,4,3,8,2,2,2,3,8,1,8,0,2,3,3,9,19,1,2,7,2,2,2,22,2,15,4,7,2,2,2,3,10,0,9,3,3,9,11,5,3,1,2,17,4,23,2,8,2,0,3,6,4,0,5,5,2,0,2,7,19,1,14,57,6,14,2,9,40,1,2,0,3,1,2,0,3,0,7,3,2,6,2,2,2,0,2,0,3,1,2,12,2,2,3,4,2,0,2,5,3,9,3,1,35,0,24,1,7,9,12,0,2,0,2,0,5,9,2,35,5,19,2,5,5,7,2,35,10,0,58,73,7,77,3,37,11,42,2,0,4,328,2,3,3,6,2,0,2,3,3,40,2,3,3,32,2,3,3,6,2,0,2,3,3,14,2,56,2,3,3,66,5,0,33,15,17,84,13,619,3,16,2,25,6,74,22,12,2,6,12,20,12,19,13,12,2,2,2,1,13,51,3,29,4,0,5,1,3,9,34,2,3,9,7,87,9,42,6,69,11,28,4,11,5,11,11,39,3,4,12,43,5,25,7,10,38,27,5,62,2,28,3,10,7,9,14,0,89,75,5,9,18,8,13,42,4,11,71,55,9,9,4,48,83,2,2,30,14,230,23,280,3,5,3,37,3,5,3,7,2,0,2,0,2,0,2,30,3,52,2,6,2,0,4,2,2,6,4,3,3,5,5,12,6,2,2,6,67,1,20,0,29,0,14,0,17,4,60,12,5,0,4,11,18,0,5,0,3,9,2,0,4,4,7,0,2,0,2,0,2,3,2,10,3,3,6,4,5,0,53,1,2684,46,2,46,2,132,7,6,15,37,11,53,10,0,17,22,10,6,2,6,2,6,2,6,2,6,2,6,2,6,2,6,2,31,48,0,470,1,36,5,2,4,6,1,5,85,3,1,3,2,2,89,2,3,6,40,4,93,18,23,57,15,513,6581,75,20939,53,1164,68,45,3,268,4,27,21,31,3,13,13,1,2,24,9,69,11,1,38,8,3,102,3,1,111,44,25,51,13,68,12,9,7,23,4,0,5,45,3,35,13,28,4,64,15,10,39,54,10,13,3,9,7,22,4,1,5,66,25,2,227,42,2,1,3,9,7,11171,13,22,5,48,8453,301,3,61,3,105,39,6,13,4,6,11,2,12,2,4,2,0,2,1,2,1,2,107,34,362,19,63,3,53,41,11,5,15,17,6,13,1,25,2,33,4,2,134,20,9,8,25,5,0,2,25,12,88,4,5,3,5,3,5,3,2],o=0,v=[],a=0;a2?Me%A!=A-1:Me%A==0}}else{if(!this.blockComment)return!1;O=this.blockComment.start;var E=this.blockComment.end,R=(D=new RegExp("^(\\s*)(?:"+s.escapeRegExp(O)+")"),new RegExp("(?:"+s.escapeRegExp(E)+")\\s*$"));j=function(ne,me){S(ne,me)||(!x||/\S/.test(ne))&&(M.insertInLine({row:me,column:ne.length},E),M.insertInLine({row:me,column:L},O))},N=function(ne,me){var $;($=ne.match(R))&&M.removeInLine(me,ne.length-$[0].length,ne.length),($=ne.match(D))&&M.removeInLine(me,$[1].length,$[0].length)},S=function(ne,me){if(D.test(ne))return!0;for(var $=h.getTokens(me),q=0;q<$.length;q++)if("comment"===$[q].type)return!0}}function Y(ne){for(var me=m;me<=_;me++)ne(M.getLine(me),me)}var se=1/0;Y(function(ne,me){var $=ne.search(/\S/);-1!==$?($ne.length&&(se=ne.length)}),L==1/0&&(L=se,x=!1,w=!1),T&&L%A!=0&&(L=Math.floor(L/A)*A),Y(w?N:j)},this.toggleBlockComment=function(u,h,m,_){var M=this.blockComment;if(M){!M.start&&M[0]&&(M=M[0]);var T,O,w=(x=new l(h,_.row,_.column)).getCurrentToken(),A=h.selection.toOrientedRange();if(w&&/comment/.test(w.type)){for(var E,D;w&&/comment/.test(w.type);){if(-1!=(R=w.value.indexOf(M.start))){var j=x.getCurrentTokenRow(),N=x.getCurrentTokenColumn()+R;E=new d(j,N,j,N+M.start.length);break}w=x.stepBackward()}var x;for(w=(x=new l(h,_.row,_.column)).getCurrentToken();w&&/comment/.test(w.type);){var R;if(-1!=(R=w.value.indexOf(M.end))){j=x.getCurrentTokenRow(),N=x.getCurrentTokenColumn()+R,D=new d(j,N,j,N+M.end.length);break}w=x.stepForward()}D&&h.remove(D),E&&(h.remove(E),T=E.start.row,O=-M.start.length)}else O=M.start.length,T=m.start.row,h.insert(m.end,M.end),h.insert(m.start,M.start);A.start.row==T&&(A.start.column+=O),A.end.row==T&&(A.end.column+=O),h.selection.fromOrientedRange(A)}},this.getNextLineIndent=function(u,h,m){return this.$getIndent(h)},this.checkOutdent=function(u,h,m){return!1},this.autoOutdent=function(u,h,m){},this.$getIndent=function(u){return u.match(/^\s*/)[0]},this.createWorker=function(u){return null},this.createModeDelegates=function(u){for(var h in this.$embeds=[],this.$modes={},u)if(u[h]){var m=u[h],_=m.prototype.$id,M=b.$modes[_];M||(b.$modes[_]=M=new m),b.$modes[h]||(b.$modes[h]=M),this.$embeds.push(h),this.$modes[h]=M}var x=["toggleBlockComment","toggleCommentLines","getNextLineIndent","checkOutdent","autoOutdent","transformAction","getCompletions"];for(h=0;h"u"?this.setPosition(d.row,d.column):this.setPosition(d,r)}return s.prototype.getPosition=function(){return this.$clipPositionToDocument(this.row,this.column)},s.prototype.getDocument=function(){return this.document},s.prototype.onChange=function(l){if(!(l.start.row==l.end.row&&l.start.row!=this.row||l.start.row>this.row)){var d=function c(s,l,d){var r="insert"==s.action,u=(r?1:-1)*(s.end.row-s.start.row),h=(r?1:-1)*(s.end.column-s.start.column),m=s.start,_=r?m:s.end;return a(l,m,d)?{row:l.row,column:l.column}:a(_,l,!d)?{row:l.row+u,column:l.column+(l.row==_.row?h:0)}:{row:m.row,column:m.column}}(l,{row:this.row,column:this.column},this.$insertRight);this.setPosition(d.row,d.column,!0)}},s.prototype.setPosition=function(l,d,r){var u;if(u=r?{row:l,column:d}:this.$clipPositionToDocument(l,d),this.row!=u.row||this.column!=u.column){var h={row:this.row,column:this.column};this.row=u.row,this.column=u.column,this._signal("change",{old:h,value:u})}},s.prototype.detach=function(){this.document.off("change",this.$onChange)},s.prototype.attach=function(l){this.document=l||this.document,this.document.on("change",this.$onChange)},s.prototype.$clipPositionToDocument=function(l,d){var r={};return l>=this.document.getLength()?(r.row=Math.max(0,this.document.getLength()-1),r.column=this.document.getLine(r.row).length):l<0?(r.row=0,r.column=0):(r.row=l,r.column=Math.min(this.document.getLine(r.row).length,Math.max(0,d))),d<0&&(r.column=0),r},s}();function a(s,l,d){return s.row=u&&(d=u-1,r=void 0);var h=this.getLine(d);return null==r&&(r=h.length),{row:d,column:r=Math.min(Math.max(r,0),h.length)}},l.prototype.clonePos=function(d){return{row:d.row,column:d.column}},l.prototype.pos=function(d,r){return{row:d,column:r}},l.prototype.$clipPosition=function(d){var r=this.getLength();return d.row>=r?(d.row=Math.max(0,r-1),d.column=this.getLine(r-1).length):(d.row=Math.max(0,d.row),d.column=Math.min(Math.max(d.column,0),this.getLine(d.row).length)),d},l.prototype.insertFullLines=function(d,r){var u=0;(d=Math.min(Math.max(d,0),this.getLength()))0,h=r=0&&this.applyDelta({start:this.pos(d,this.getLine(d).length),end:this.pos(d+1,0),action:"remove",lines:["",""]})},l.prototype.replace=function(d,r){return d instanceof a||(d=a.fromPoints(d.start,d.end)),0===r.length&&d.isEmpty()?d.start:r==this.getTextRange(d)?d.end:(this.remove(d),r?this.insert(d.start,r):d.start)},l.prototype.applyDeltas=function(d){for(var r=0;r=0;r--)this.revertDelta(d[r])},l.prototype.applyDelta=function(d,r){var u="insert"==d.action;(u?d.lines.length<=1&&!d.lines[0]:!a.comparePoints(d.start,d.end))||(u&&d.lines.length>2e4?this.$splitAndapplyLargeDelta(d,2e4):(o(this.$lines,d,r),this._signal("change",d)))},l.prototype.$safeApplyDelta=function(d){var r=this.$lines.length;("remove"==d.action&&d.start.row20){l.running=setTimeout(l.$worker,20);break}}l.currentLine=r,-1==u&&(u=r),m<=u&&l.fireUpdateEvent(m,u)}}}return a.prototype.setTokenizer=function(c){this.tokenizer=c,this.lines=[],this.states=[],this.start(0)},a.prototype.setDocument=function(c){this.doc=c,this.lines=[],this.states=[],this.stop()},a.prototype.fireUpdateEvent=function(c,s){this._signal("update",{data:{first:c,last:s}})},a.prototype.start=function(c){this.currentLine=Math.min(c||0,this.currentLine,this.doc.getLength()),this.lines.splice(this.currentLine,this.lines.length),this.states.splice(this.currentLine,this.states.length),this.stop(),this.running=setTimeout(this.$worker,700)},a.prototype.scheduleStart=function(){this.running||(this.running=setTimeout(this.$worker,700))},a.prototype.$updateOnChange=function(c){var s=c.start.row,l=c.end.row-s;if(0===l)this.lines[s]=null;else if("remove"==c.action)this.lines.splice(s,l+1,null),this.states.splice(s,l+1,null);else{var d=Array(l+1);d.unshift(s,1),this.lines.splice.apply(this.lines,d),this.states.splice.apply(this.states,d)}this.currentLine=Math.min(s,this.currentLine,this.doc.getLength()),this.stop()},a.prototype.stop=function(){this.running&&clearTimeout(this.running),this.running=!1},a.prototype.getTokens=function(c){return this.lines[c]||this.$tokenizeRow(c)},a.prototype.getState=function(c){return this.currentLine==c&&this.$tokenizeRow(c),this.states[c]||"start"},a.prototype.$tokenizeRow=function(c){var s=this.doc.getLine(c),d=this.tokenizer.getLineTokens(s,this.states[c-1],c);return this.states[c]+""!=d.state+""?(this.states[c]=d.state,this.lines[c+1]=null,this.currentLine>c+1&&(this.currentLine=c+1)):this.currentLine==c&&(this.currentLine=c+1),this.lines[c]=d.tokens},a.prototype.cleanup=function(){this.running=!1,this.lines=[],this.states=[],this.currentLine=0,this.removeAllListeners()},a}();b.implement(v.prototype,o),p.BackgroundTokenizer=v}),ace.define("ace/search_highlight",["require","exports","module","ace/lib/lang","ace/range"],function(n,p,C){"use strict";var b=n("./lib/lang"),o=n("./range").Range,v=function(){function a(c,s,l){void 0===l&&(l="text"),this.setRegexp(c),this.clazz=s,this.type=l}return a.prototype.setRegexp=function(c){this.regExp+""!=c+""&&(this.regExp=c,this.cache=[])},a.prototype.update=function(c,s,l,d){if(this.regExp)for(var u=d.lastRow,h={},m=d.firstRow;m<=u;m++){var _=this.cache[m];null==_&&((_=b.getMatchOffsets(l.getLine(m),this.regExp)).length>this.MAX_RANGES&&(_=_.slice(0,this.MAX_RANGES)),_=_.map(function(L){return new o(m,L.offset,m,L.offset+L.length)}),this.cache[m]=_.length?_:"");for(var M=_.length;M--;){var x=_[M].toScreenRange(l),w=x.toString();h[w]||(h[w]=!0,s.drawSingleLineMarker(c,x,this.clazz,d))}}},a}();v.prototype.MAX_RANGES=500,p.SearchHighlight=v}),ace.define("ace/edit_session/fold_line",["require","exports","module","ace/range"],function(n,p,C){"use strict";var b=n("../range").Range,o=function(){function v(a,c){this.foldData=a,Array.isArray(c)?this.folds=c:c=this.folds=[c];var s=c[c.length-1];this.range=new b(c[0].start.row,c[0].start.column,s.end.row,s.end.column),this.start=this.range.start,this.end=this.range.end,this.folds.forEach(function(l){l.setFoldLine(this)},this)}return v.prototype.shiftRow=function(a){this.start.row+=a,this.end.row+=a,this.folds.forEach(function(c){c.start.row+=a,c.end.row+=a})},v.prototype.addFold=function(a){if(a.sameRow){if(a.start.rowthis.endRow)throw new Error("Can't add a fold to this FoldLine as it has no connection");this.folds.push(a),this.folds.sort(function(c,s){return-c.range.compareEnd(s.start.row,s.start.column)}),this.range.compareEnd(a.start.row,a.start.column)>0?(this.end.row=a.end.row,this.end.column=a.end.column):this.range.compareStart(a.end.row,a.end.column)<0&&(this.start.row=a.start.row,this.start.column=a.start.column)}else if(a.start.row==this.end.row)this.folds.push(a),this.end.row=a.end.row,this.end.column=a.end.column;else{if(a.end.row!=this.start.row)throw new Error("Trying to add fold to FoldRow that doesn't have a matching row");this.folds.unshift(a),this.start.row=a.start.row,this.start.column=a.start.column}a.foldLine=this},v.prototype.containsRow=function(a){return a>=this.start.row&&a<=this.end.row},v.prototype.walk=function(a,c,s){var r,u,l=0,d=this.folds,m=!0;null==c&&(c=this.end.row,s=this.end.column);for(var _=0;_0)){var m=o(c,u.start);return 0===h?s&&0!==m?-r-2:r:m>0||0===m&&!s?r:-r-1}}return-r-1},a.prototype.add=function(c){var s=!c.isEmpty(),l=this.pointIndex(c.start,s);l<0&&(l=-l-1);var d=this.pointIndex(c.end,s,l);return d<0?d=-d-1:d++,this.ranges.splice(l,d-l,c)},a.prototype.addList=function(c){for(var s=[],l=c.length;l--;)s.push.apply(s,this.add(c[l]));return s},a.prototype.substractPoint=function(c){var s=this.pointIndex(c);if(s>=0)return this.ranges.splice(s,1)},a.prototype.merge=function(){for(var d,c=[],s=this.ranges,l=(s=s.sort(function(h,m){return o(h.start,m.start)}))[0],r=1;r=0},a.prototype.containsPoint=function(c){return this.pointIndex(c)>=0},a.prototype.rangeAtPoint=function(c){var s=this.pointIndex(c);if(s>=0)return this.ranges[s]},a.prototype.clipRows=function(c,s){var l=this.ranges;if(l[0].start.row>s||l[l.length-1].start.row=d);h++);if("insert"==c.action){for(var M=r-d,x=-s.column+l.column;hd);h++)if(_.start.row==d&&_.start.column>=s.column&&(_.start.column==s.column&&this.$bias<=0||(_.start.column+=x,_.start.row+=M)),_.end.row==d&&_.end.column>=s.column){if(_.end.column==s.column&&this.$bias<0)continue;_.end.column==s.column&&x>0&&h_.start.column&&_.end.column==u[h+1].start.column&&(_.end.column-=x),_.end.column+=x,_.end.row+=M}}else for(M=d-r,x=s.column-l.column;hr);h++)_.end.rows.column)&&(_.end.column=s.column,_.end.row=s.row):(_.end.column+=x,_.end.row+=M):_.end.row>r&&(_.end.row+=M),_.start.rows.column)&&(_.start.column=s.column,_.start.row=s.row):(_.start.column+=x,_.start.row+=M):_.start.row>r&&(_.start.row+=M);if(0!=M&&h=l)return h;if(h.end.row>l)return null}return null},this.getNextFoldLine=function(l,d){var r=this.$foldData,u=0;for(d&&(u=r.indexOf(d)),-1==u&&(u=0);u=l)return h}return null},this.getFoldedRowCount=function(l,d){for(var r=this.$foldData,u=d-l+1,h=0;h=d){M=l?u-=d-M:u=0);break}_>=l&&(u-=M>=l?_-M:_-l+1)}return u},this.$addFoldLine=function(l){return this.$foldData.push(l),this.$foldData.sort(function(d,r){return d.start.row-r.start.row}),l},this.addFold=function(l,d){var h,r=this.$foldData,u=!1;l instanceof v?h=l:(h=new v(d,l)).collapseChildren=d.collapseChildren,this.$clipRangeToDocument(h.range);var m=h.start.row,_=h.start.column,M=h.end.row,x=h.end.column,w=this.getFoldAt(m,_,1),L=this.getFoldAt(M,x,-1);if(w&&L==w)return w.addSubFold(h);w&&!w.range.isStart(m,_)&&this.removeFold(w),L&&!L.range.isEnd(M,x)&&this.removeFold(L);var A=this.getFoldsInRange(h.range);A.length>0&&(this.removeFolds(A),h.collapseChildren||A.forEach(function(D){h.addSubFold(D)}));for(var T=0;T0&&this.foldAll(l.start.row+1,l.end.row,l.collapseChildren-1),l.subFolds=[]},this.expandFolds=function(l){l.forEach(function(d){this.expandFold(d)},this)},this.unfold=function(l,d){var r,u;if(null==l)r=new b(0,0,this.getLength(),0),null==d&&(d=!0);else if("number"==typeof l)r=new b(l,0,l,this.getLine(l).length);else if("row"in l)r=b.fromPoints(l,l);else{if(Array.isArray(l))return u=[],l.forEach(function(m){u=u.concat(this.unfold(m))},this),u;r=l}for(var h=u=this.getFoldsInRangeList(r);1==u.length&&b.comparePoints(u[0].start,r.start)<0&&b.comparePoints(u[0].end,r.end)>0;)this.expandFolds(u),u=this.getFoldsInRangeList(r);if(0!=d?this.removeFolds(u):this.expandFolds(u),h.length)return h},this.isRowFolded=function(l,d){return!!this.getFoldLine(l,d)},this.getRowFoldEnd=function(l,d){var r=this.getFoldLine(l,d);return r?r.end.row:l},this.getRowFoldStart=function(l,d){var r=this.getFoldLine(l,d);return r?r.start.row:l},this.getFoldDisplayLine=function(l,d,r,u,h){null==u&&(u=l.start.row),null==h&&(h=0),null==d&&(d=l.end.row),null==r&&(r=this.getLine(d).length);var m=this.doc,_="";return l.walk(function(M,x,w,L){if(!(xx)break}while(h&&_.test(h.type)&&!/^comment.start/.test(h.type));h=u.stepBackward()}else h=u.getCurrentToken();return M.end.row=u.getCurrentTokenRow(),M.end.column=u.getCurrentTokenColumn(),/^comment.end/.test(h.type)||(M.end.column+=h.value.length-2),M}},this.foldAll=function(l,d,r,u){null==r&&(r=1e5);var h=this.foldWidgets;if(h){d=d||this.getLength();for(var m=l=l||0;m=l&&(m=_.end.row,_.collapseChildren=r,this.addFold("...",_))}}},this.foldToLevel=function(l){for(this.foldAll();l-- >0;)this.unfold(null,!1)},this.foldAllComments=function(){var l=this;this.foldAll(null,null,null,function(d){for(var r=l.getTokens(d),u=0;u=0;){var m=r[u];if(null==m&&(m=r[u]=this.getFoldWidget(u)),"start"==m){var _=this.getFoldWidgetRange(u);if(h||(h=_),_&&_.end.row>=l)break}u--}return{range:-1!==u&&_,firstRange:h}},this.onFoldWidgetClick=function(l,d){if(d instanceof c&&(d=d.domEvent),!this.$toggleFoldWidget(l,{children:d.shiftKey,all:d.ctrlKey||d.metaKey,siblings:d.altKey})){var h=d.target||d.srcElement;h&&/ace_fold-widget/.test(h.className)&&(h.className+=" ace_invalid")}},this.$toggleFoldWidget=function(l,d){if(this.getFoldWidget){var r=this.getFoldWidget(l),u=this.getLine(l),h="end"===r?-1:1,m=this.getFoldAt(l,-1===h?0:u.length,h);if(m)return d.children||d.all?this.removeFold(m):this.expandFold(m),m;var _=this.getFoldWidgetRange(l,!0);if(_&&!_.isMultiLine()&&(m=this.getFoldAt(_.start.row,_.start.column,1))&&_.isEqual(m.range))return this.removeFold(m),m;if(d.siblings){var M=this.getParentFoldRangeData(l);if(M.range)var x=M.range.start.row+1,w=M.range.end.row;this.foldAll(x,w,d.all?1e4:0)}else d.children?(w=_?_.end.row:this.getLength(),this.foldAll(l+1,w,d.all?1e4:0)):_&&(d.all&&(_.collapseChildren=1e4),this.addFold("...",_));return _}},this.toggleFoldWidget=function(l){var d=this.selection.getCursor().row;d=this.getRowFoldStart(d);var r=this.$toggleFoldWidget(d,{});if(!r){var u=this.getParentFoldRangeData(d,!0);if(r=u.range||u.firstRange){var h=this.getFoldAt(d=r.start.row,this.getLine(d).length,1);h?this.removeFold(h):this.addFold("...",r)}}},this.updateFoldWidgets=function(l){var d=l.start.row,r=l.end.row-d;if(0===r)this.foldWidgets[d]=null;else if("remove"==l.action)this.foldWidgets.splice(d,r+1,null);else{var u=Array(r+1);u.unshift(d,1),this.foldWidgets.splice.apply(this.foldWidgets,u)}},this.tokenizerUpdateFoldWidgets=function(l){var d=l.data;d.first!=d.last&&this.foldWidgets.length>d.first&&this.foldWidgets.splice(d.first,this.foldWidgets.length)}}}),ace.define("ace/edit_session/bracket_match",["require","exports","module","ace/token_iterator","ace/range"],function(n,p,C){"use strict";var b=n("../token_iterator").TokenIterator,o=n("../range").Range;p.BracketMatch=function v(){this.findMatchingBracket=function(a,c){if(0==a.column)return null;var s=c||this.getLine(a.row).charAt(a.column-1);if(""==s)return null;var l=s.match(/([\(\[\{])|([\)\]\}])/);return l?l[1]?this.$findClosingBracket(l[1],a):this.$findOpeningBracket(l[2],a):null},this.getBracketRange=function(a){var l,c=this.getLine(a.row),s=!0,d=c.charAt(a.column-1),r=d&&d.match(/([\(\[\{])|([\)\]\}])/);if(r||(d=c.charAt(a.column),a={row:a.row,column:a.column+1},r=d&&d.match(/([\(\[\{])|([\)\]\}])/),s=!1),!r)return null;if(r[1]){if(!(u=this.$findClosingBracket(r[1],a)))return null;l=o.fromPoints(a,u),s||(l.end.column++,l.start.column--),l.cursor=l.end}else{var u;if(!(u=this.$findOpeningBracket(r[2],a)))return null;l=o.fromPoints(u,a),s||(l.start.column++,l.end.column--),l.cursor=l.start}return l},this.getMatchingBracketRanges=function(a,c){var s=this.getLine(a.row),l=/([\(\[\{])|([\)\]\}])/,d=!c&&s.charAt(a.column-1),r=d&&d.match(l);if(r||(d=(void 0===c||c)&&s.charAt(a.column),a={row:a.row,column:a.column+1},r=d&&d.match(l)),!r)return null;var u=new o(a.row,a.column-1,a.row,a.column),h=r[1]?this.$findClosingBracket(r[1],a):this.$findOpeningBracket(r[2],a);return h?[u,new o(h.row,h.column,h.row,h.column+1)]:[u]},this.$brackets={")":"(","(":")","]":"[","[":"]","{":"}","}":"{","<":">",">":"<"},this.$findOpeningBracket=function(a,c,s){var l=this.$brackets[a],d=1,r=new b(this,c.row,c.column),u=r.getCurrentToken();if(u||(u=r.stepForward()),u){s||(s=new RegExp("(\\.?"+u.type.replace(".","\\.").replace("rparen",".paren").replace(/\b(?:end)\b/,"(?:start|begin|end)").replace(/-close\b/,"-(close|open)")+")+"));for(var h=c.column-r.getCurrentTokenColumn()-2,m=u.value;;){for(;h>=0;){var _=m.charAt(h);if(_==l){if(0==(d-=1))return{row:r.getCurrentTokenRow(),column:h+r.getCurrentTokenColumn()}}else _==a&&(d+=1);h-=1}do{u=r.stepBackward()}while(u&&!s.test(u.type));if(null==u)break;h=(m=u.value).length-1}return null}},this.$findClosingBracket=function(a,c,s){var l=this.$brackets[a],d=1,r=new b(this,c.row,c.column),u=r.getCurrentToken();if(u||(u=r.stepForward()),u){s||(s=new RegExp("(\\.?"+u.type.replace(".","\\.").replace("lparen",".paren").replace(/\b(?:start|begin)\b/,"(?:start|begin|end)").replace(/-open\b/,"-(close|open)")+")+"));for(var h=c.column-r.getCurrentTokenColumn();;){for(var m=u.value,_=m.length;h<_;){var M=m.charAt(h);if(M==l){if(0==(d-=1))return{row:r.getCurrentTokenRow(),column:h+r.getCurrentTokenColumn()}}else M==a&&(d+=1);h+=1}do{u=r.stepForward()}while(u&&!s.test(u.type));if(null==u)break;h=0}return null}},this.getMatchingTags=function(a){var c=new b(this,a.row,a.column),s=this.$findTagName(c);if(s)return"<"===c.stepBackward().value?this.$findClosingTag(c,s):this.$findOpeningTag(c,s)},this.$findTagName=function(a){var c=a.getCurrentToken(),s=!1,l=!1;if(c&&-1===c.type.indexOf("tag-name"))do{(c=l?a.stepBackward():a.stepForward())&&("/>"===c.value?l=!0:-1!==c.type.indexOf("tag-name")&&(s=!0))}while(c&&!s);return c},this.$findClosingTag=function(a,c){var s,l=c.value,d=c.value,r=0,u=new o(a.getCurrentTokenRow(),a.getCurrentTokenColumn(),a.getCurrentTokenRow(),a.getCurrentTokenColumn()+1);c=a.stepForward();var h=new o(a.getCurrentTokenRow(),a.getCurrentTokenColumn(),a.getCurrentTokenRow(),a.getCurrentTokenColumn()+c.value.length),m=!1;do{if(s=c,c=a.stepForward()){if(">"===c.value&&!m){var _=new o(a.getCurrentTokenRow(),a.getCurrentTokenColumn(),a.getCurrentTokenRow(),a.getCurrentTokenColumn()+1);m=!0}if(-1!==c.type.indexOf("tag-name")){if(d===(l=c.value))if("<"===s.value)r++;else if(""!==c.value)return;var w=new o(a.getCurrentTokenRow(),a.getCurrentTokenColumn(),a.getCurrentTokenRow(),a.getCurrentTokenColumn()+1)}}else d===l&&"/>"===c.value&&--r<0&&(w=x=M=new o(a.getCurrentTokenRow(),a.getCurrentTokenColumn(),a.getCurrentTokenRow(),a.getCurrentTokenColumn()+2),_=new o(h.end.row,h.end.column,h.end.row,h.end.column+1))}}while(c&&r>=0);if(u&&_&&M&&w&&h&&x)return{openTag:new o(u.start.row,u.start.column,_.end.row,_.end.column),closeTag:new o(M.start.row,M.start.column,w.end.row,w.end.column),openTagName:h,closeTagName:x}},this.$findOpeningTag=function(a,c){var s=a.getCurrentToken(),l=c.value,d=0,r=a.getCurrentTokenRow(),u=a.getCurrentTokenColumn(),h=u+2,m=new o(r,u,r,h);a.stepForward();var _=new o(a.getCurrentTokenRow(),a.getCurrentTokenColumn(),a.getCurrentTokenRow(),a.getCurrentTokenColumn()+c.value.length);if((c=a.stepForward())&&">"===c.value){var M=new o(a.getCurrentTokenRow(),a.getCurrentTokenColumn(),a.getCurrentTokenRow(),a.getCurrentTokenColumn()+1);a.stepBackward(),a.stepBackward();do{if(c=s,r=a.getCurrentTokenRow(),h=(u=a.getCurrentTokenColumn())+c.value.length,s=a.stepBackward(),c)if(-1!==c.type.indexOf("tag-name")){if(l===c.value)if("<"===s.value){if(++d>0){var x=new o(r,u,r,h),w=new o(a.getCurrentTokenRow(),a.getCurrentTokenColumn(),a.getCurrentTokenRow(),a.getCurrentTokenColumn()+1);do{c=a.stepForward()}while(c&&">"!==c.value);var L=new o(a.getCurrentTokenRow(),a.getCurrentTokenColumn(),a.getCurrentTokenRow(),a.getCurrentTokenColumn()+1)}}else""===c.value){for(var A=0,T=s;T;){if(-1!==T.type.indexOf("tag-name")&&T.value===l){d--;break}if("<"===T.value)break;T=a.stepBackward(),A++}for(var O=0;ON&&(this.$docRowCache.splice(N,j),this.$screenRowCache.splice(N,j))},D.prototype.$getRowCacheIndex=function(R,j){for(var N=0,S=R.length-1;N<=S;){var k=N+S>>1,F=R[k];if(j>F)N=k+1;else{if(!(j=j);F++);return(S=N[F])?(S.index=F,S.start=k-S.value.length,S):null},D.prototype.setUndoManager=function(R){if(this.$undoManager=R,this.$informUndoManager&&this.$informUndoManager.cancel(),R){var j=this;R.addSession(this),this.$syncInformUndoManager=function(){j.$informUndoManager.cancel(),j.mergeUndoDeltas=!1},this.$informUndoManager=o.delayedCall(this.$syncInformUndoManager)}else this.$syncInformUndoManager=function(){}},D.prototype.markUndoGroup=function(){this.$syncInformUndoManager&&this.$syncInformUndoManager()},D.prototype.getUndoManager=function(){return this.$undoManager||this.$defaultUndoManager},D.prototype.getTabString=function(){return this.getUseSoftTabs()?o.stringRepeat(" ",this.getTabSize()):"\t"},D.prototype.setUseSoftTabs=function(R){this.setOption("useSoftTabs",R)},D.prototype.getUseSoftTabs=function(){return this.$useSoftTabs&&!this.$mode.$indentWithTabs},D.prototype.setTabSize=function(R){this.setOption("tabSize",R)},D.prototype.getTabSize=function(){return this.$tabSize},D.prototype.isTabStop=function(R){return this.$useSoftTabs&&R.column%this.$tabSize==0},D.prototype.setNavigateWithinSoftTabs=function(R){this.setOption("navigateWithinSoftTabs",R)},D.prototype.getNavigateWithinSoftTabs=function(){return this.$navigateWithinSoftTabs},D.prototype.setOverwrite=function(R){this.setOption("overwrite",R)},D.prototype.getOverwrite=function(){return this.$overwrite},D.prototype.toggleOverwrite=function(){this.setOverwrite(!this.$overwrite)},D.prototype.addGutterDecoration=function(R,j){this.$decorations[R]||(this.$decorations[R]=""),this.$decorations[R]+=" "+j,this._signal("changeBreakpoint",{})},D.prototype.removeGutterDecoration=function(R,j){this.$decorations[R]=(this.$decorations[R]||"").replace(" "+j,""),this._signal("changeBreakpoint",{})},D.prototype.getBreakpoints=function(){return this.$breakpoints},D.prototype.setBreakpoints=function(R){this.$breakpoints=[];for(var j=0;j0&&(S=!!N.charAt(j-1).match(this.tokenRe)),S||(S=!!N.charAt(j).match(this.tokenRe)),S)var k=this.tokenRe;else k=/^\s+$/.test(N.slice(j-1,j+1))?/\s/:this.nonTokenRe;var F=j;if(F>0){do{F--}while(F>=0&&N.charAt(F).match(k));F++}for(var Y=j;YR&&(R=j.screenWidth)}),this.lineWidgetWidth=R},D.prototype.$computeWidth=function(R){if(this.$modified||R){if(this.$modified=!1,this.$useWrapMode)return this.screenWidth=this.$wrapLimit;for(var j=this.doc.getAllLines(),N=this.$rowLengthCache,S=0,k=0,F=this.$foldData[k],Y=F?F.start.row:1/0,se=j.length,ne=0;neY){if((ne=F.end.row+1)>=se)break;Y=(F=this.$foldData[k++])?F.start.row:1/0}null==N[ne]&&(N[ne]=this.$getStringScreenWidth(j[ne])[0]),N[ne]>S&&(S=N[ne])}this.screenWidth=S}},D.prototype.getLine=function(R){return this.doc.getLine(R)},D.prototype.getLines=function(R,j){return this.doc.getLines(R,j)},D.prototype.getLength=function(){return this.doc.getLength()},D.prototype.getTextRange=function(R){return this.doc.getTextRange(R||this.selection.getRange())},D.prototype.insert=function(R,j){return this.doc.insert(R,j)},D.prototype.remove=function(R){return this.doc.remove(R)},D.prototype.removeFullLines=function(R,j){return this.doc.removeFullLines(R,j)},D.prototype.undoChanges=function(R,j){if(R.length){this.$fromUndo=!0;for(var N=R.length-1;-1!=N;N--){var S=R[N];"insert"==S.action||"remove"==S.action?this.doc.revertDelta(S):S.folds&&this.addFolds(S.folds)}!j&&this.$undoSelect&&(R.selectionBefore?this.selection.fromJSON(R.selectionBefore):this.selection.setRange(this.$getUndoSelection(R,!0))),this.$fromUndo=!1}},D.prototype.redoChanges=function(R,j){if(R.length){this.$fromUndo=!0;for(var N=0;NR.end.column&&(F.start.column+=se),F.end.row==R.end.row&&F.end.column>R.end.column&&(F.end.column+=se)),Y&&F.start.row>=R.end.row&&(F.start.row+=Y,F.end.row+=Y)),F.end=this.insert(F.start,S),k.length){var ne=R.start,me=F.start,Y=me.row-ne.row,se=me.column-ne.column;this.addFolds(k.map(function(Q){return(Q=Q.clone()).start.row==ne.row&&(Q.start.column+=se),Q.end.row==ne.row&&(Q.end.column+=se),Q.start.row+=Y,Q.end.row+=Y,Q}))}return F},D.prototype.indentRows=function(R,j,N){N=N.replace(/\t/g,this.getTabString());for(var S=R;S<=j;S++)this.doc.insertInLine({row:S,column:0},N)},D.prototype.outdentRows=function(R){for(var j=R.collapseRows(),N=new d(0,0,0,0),S=this.getTabSize(),k=j.start.row;k<=j.end.row;++k){var F=this.getLine(k);N.start.row=k,N.end.row=k;for(var Y=0;Y0){var S;if((S=this.getRowFoldEnd(j+N))>this.doc.getLength()-1)return 0;k=S-j}else R=this.$clipRowToDocument(R),k=(j=this.$clipRowToDocument(j))-R+1;var F=new d(R,0,j,Number.MAX_VALUE),Y=this.getFoldsInRange(F).map(function(ne){return(ne=ne.clone()).start.row+=k,ne.end.row+=k,ne}),se=0==N?this.doc.getLines(R,j):this.doc.removeFullLines(R,j);return this.doc.insertFullLines(R+k,se),Y.length&&this.addFolds(Y),k},D.prototype.moveLinesUp=function(R,j){return this.$moveLines(R,j,-1)},D.prototype.moveLinesDown=function(R,j){return this.$moveLines(R,j,1)},D.prototype.duplicateLines=function(R,j){return this.$moveLines(R,j,0)},D.prototype.$clipRowToDocument=function(R){return Math.max(0,Math.min(R,this.doc.getLength()-1))},D.prototype.$clipColumnToRow=function(R,j){return j<0?0:Math.min(this.doc.getLine(R).length,j)},D.prototype.$clipPositionToDocument=function(R,j){if(j=Math.max(0,j),R<0)R=0,j=0;else{var N=this.doc.getLength();R>=N?(R=N-1,j=this.doc.getLine(N-1).length):j=Math.min(this.doc.getLine(R).length,j)}return{row:R,column:j}},D.prototype.$clipRangeToDocument=function(R){R.start.row<0?(R.start.row=0,R.start.column=0):R.start.column=this.$clipColumnToRow(R.start.row,R.start.column);var j=this.doc.getLength()-1;return R.end.row>j?(R.end.row=j,R.end.column=this.doc.getLine(j).length):R.end.column=this.$clipColumnToRow(R.end.row,R.end.column),R},D.prototype.setUseWrapMode=function(R){if(R!=this.$useWrapMode){if(this.$useWrapMode=R,this.$modified=!0,this.$resetRowCache(0),R){var j=this.getLength();this.$wrapData=Array(j),this.$updateWrapData(0,j-1)}this._signal("changeWrapMode")}},D.prototype.getUseWrapMode=function(){return this.$useWrapMode},D.prototype.setWrapLimitRange=function(R,j){(this.$wrapLimitRange.min!==R||this.$wrapLimitRange.max!==j)&&(this.$wrapLimitRange={min:R,max:j},this.$modified=!0,this.$bidiHandler.markAsDirty(),this.$useWrapMode&&this._signal("changeWrapMode"))},D.prototype.adjustWrapLimit=function(R,j){var N=this.$wrapLimitRange;N.max<0&&(N={min:j,max:j});var S=this.$constrainWrapLimit(R,N.min,N.max);return S!=this.$wrapLimit&&S>1&&(this.$wrapLimit=S,this.$modified=!0,this.$useWrapMode&&(this.$updateWrapData(0,this.getLength()-1),this.$resetRowCache(0),this._signal("changeWrapLimit")),!0)},D.prototype.$constrainWrapLimit=function(R,j,N){return j&&(R=Math.max(j,R)),N&&(R=Math.min(N,R)),R},D.prototype.getWrapLimit=function(){return this.$wrapLimit},D.prototype.setWrapLimit=function(R){this.setWrapLimitRange(R,R)},D.prototype.getWrapLimitRange=function(){return{min:this.$wrapLimitRange.min,max:this.$wrapLimitRange.max}},D.prototype.$updateInternalDataOnChange=function(R){var j=this.$useWrapMode,N=R.action,S=R.start,k=R.end,F=S.row,Y=k.row,se=Y-F,ne=null;if(this.$updating=!0,0!=se)if("remove"===N){this[j?"$wrapData":"$rowLengthCache"].splice(F,se);var me=this.$foldData;ne=this.getFoldsInRange(R),this.removeFolds(ne);var q=0;if($=this.getFoldLine(k.row)){$.addRemoveChars(k.row,k.column,S.column-k.column),$.shiftRow(-se);var Q=this.getFoldLine(F);Q&&Q!==$&&(Q.merge($),$=Q),q=me.indexOf($)+1}for(;q=k.row&&$.shiftRow(-se);Y=F}else{var ue=Array(se);ue.unshift(F,0);var Me=j?this.$wrapData:this.$rowLengthCache;if(Me.splice.apply(Me,ue),me=this.$foldData,q=0,$=this.getFoldLine(F)){var Oe=$.range.compareInside(S.row,S.column);0==Oe?($=$.split(S.row,S.column))&&($.shiftRow(se),$.addRemoveChars(Y,0,k.column-S.column)):-1==Oe&&($.addRemoveChars(F,0,k.column-S.column),$.shiftRow(se)),q=me.indexOf($)+1}for(;q=F&&$.shiftRow(se)}}else se=Math.abs(R.start.column-R.end.column),"remove"===N&&(ne=this.getFoldsInRange(R),this.removeFolds(ne),se=-se),($=this.getFoldLine(F))&&$.addRemoveChars(F,S.column,se);return j&&this.$wrapData.length!=this.doc.getLength()&&console.error("doc.getLength() and $wrapData.length have to be the same!"),this.$updating=!1,j?this.$updateWrapData(F,Y):this.$updateRowLengthCache(F,Y),ne},D.prototype.$updateRowLengthCache=function(R,j,N){this.$rowLengthCache[R]=null,this.$rowLengthCache[j]=null},D.prototype.$updateWrapData=function(R,j){var Y,se,N=this.doc.getAllLines(),S=this.getTabSize(),k=this.$wrapData,F=this.$wrapLimit,ne=R;for(j=Math.min(j,N.length-1);ne<=j;)(se=this.getFoldLine(ne,se))?(Y=[],se.walk(function(me,$,q,Q){var ue;if(null!=me){(ue=this.$getDisplayTokens(me,Y.length))[0]=x;for(var Me=1;Mej-Q;){var ue=F+j-Q;if(R[ue-1]>=A&&R[ue]>=A)q(ue);else if(R[ue]!=x&&R[ue]!=w){for(var Me=Math.max(ue-(j-(j>>2)),F-1);ue>Me&&R[ue]Me&&R[ue]Me&&R[ue]==L;)ue--}else for(;ue>Me&&R[ue]Me?q(++ue):(R[ue=F+j]==M&&ue--,q(ue-Q))}else{for(;ue!=F-1&&R[ue]!=x;ue--);if(ue>F){q(ue);continue}for(ue=F+j;ue39&&F<48||F>57&&F<64?N.push(L):F>=4352&&E(F)?N.push(_,M):N.push(_)}return N},D.prototype.$getStringScreenWidth=function(R,j,N){if(0==j)return[0,0];var S,k;for(null==j&&(j=1/0),N=N||0,k=0;k=4352&&E(S)?N+=2:N+=1,!(N>j));k++);return[N,k]},D.prototype.getRowLength=function(R){var j=1;return this.lineWidgets&&(j+=this.lineWidgets[R]&&this.lineWidgets[R].rowCount||0),this.$useWrapMode&&this.$wrapData[R]?this.$wrapData[R].length+j:j},D.prototype.getRowLineCount=function(R){return this.$useWrapMode&&this.$wrapData[R]?this.$wrapData[R].length+1:1},D.prototype.getRowWrapIndent=function(R){if(this.$useWrapMode){var j=this.screenToDocumentPosition(R,Number.MAX_VALUE),N=this.$wrapData[j.row];return N.length&&N[0]=0){se=me[$],k=this.$docRowCache[$];var Q=R>me[q-1]}else Q=!q;for(var ue=this.getLength()-1,Me=this.getNextFoldLine(k),Oe=Me?Me.start.row:1/0;se<=R&&!(se+(ne=this.getRowLength(k))>R||k>=ue);)se+=ne,++k>Oe&&(Oe=(Me=this.getNextFoldLine(k=Me.end.row+1,Me))?Me.start.row:1/0),Q&&(this.$docRowCache.push(k),this.$screenRowCache.push(se));if(Me&&Me.start.row<=k)S=this.getFoldDisplayLine(Me),k=Me.start.row;else{if(se+ne<=R||k>ue)return{row:ue,column:this.getLine(ue).length};S=this.getLine(k),Me=null}var Xe=0,Be=Math.floor(R-se);if(this.$useWrapMode){var $e=this.$wrapData[k];$e&&(Y=$e[Be],Be>0&&$e.length&&(Xe=$e.indent,S=S.substring(F=$e[Be-1]||$e[$e.length-1])))}return void 0!==N&&this.$bidiHandler.isBidiRow(se+Be,k,Be)&&(j=this.$bidiHandler.offsetToCol(N)),F+=this.$getStringScreenWidth(S,j-Xe)[1],this.$useWrapMode&&F>=Y&&(F=Y-1),Me?Me.idxToPosition(F):{row:k,column:F}},D.prototype.documentToScreenPosition=function(R,j){if(typeof j>"u")var N=this.$clipPositionToDocument(R.row,R.column);else N=this.$clipPositionToDocument(R,j);var F,S=0,k=null;(F=this.getFoldAt(R=N.row,j=N.column,1))&&(R=F.start.row,j=F.start.column);var Y,se=0,ne=this.$docRowCache,me=this.$getRowCacheIndex(ne,R),$=ne.length;if($&&me>=0){se=ne[me],S=this.$screenRowCache[me];var q=R>ne[$-1]}else q=!$;for(var Q=this.getNextFoldLine(se),ue=Q?Q.start.row:1/0;se=ue){if((Y=Q.end.row+1)>R)break;ue=(Q=this.getNextFoldLine(Y,Q))?Q.start.row:1/0}else Y=se+1;S+=this.getRowLength(se),se=Y,q&&(this.$docRowCache.push(se),this.$screenRowCache.push(S))}var Me="";Q&&se>=ue?(Me=this.getFoldDisplayLine(Q,R,j),k=Q.start.row):(Me=this.getLine(R).substring(0,j),k=R);var Oe=0;if(this.$useWrapMode){var Xe=this.$wrapData[k];if(Xe){for(var Be=0;Me.length>=Xe[Be];)S++,Be++;Me=Me.substring(Xe[Be-1]||0,Me.length),Oe=Be>0?Xe.indent:0}}return this.lineWidgets&&this.lineWidgets[se]&&this.lineWidgets[se].rowsAbove&&(S+=this.lineWidgets[se].rowsAbove),{row:S,column:Oe+this.$getStringScreenWidth(Me)[0]}},D.prototype.documentToScreenColumn=function(R,j){return this.documentToScreenPosition(R,j).column},D.prototype.documentToScreenRow=function(R,j){return this.documentToScreenPosition(R,j).row},D.prototype.getScreenLength=function(){var R=0,j=null;if(this.$useWrapMode)for(var k=this.$wrapData.length,F=0,S=0,Y=(j=this.$foldData[S++])?j.start.row:1/0;FY&&(F=j.end.row+1,Y=(j=this.$foldData[S++])?j.start.row:1/0)}else{R=this.getLength();var N=this.$foldData;for(S=0;SN);F++);return[S,F]})},D.prototype.destroy=function(){this.destroyed||(this.bgTokenizer.setDocument(null),this.bgTokenizer.cleanup(),this.destroyed=!0),this.$stopWorker(),this.removeAllListeners(),this.doc&&this.doc.off("change",this.$onChange),this.selection.detach()},D}();m.$uid=0,m.prototype.$modes=a.$modes,m.prototype.getValue=m.prototype.toString,m.prototype.$defaultUndoManager={undo:function(){},redo:function(){},hasUndo:function(){},hasRedo:function(){},reset:function(){},add:function(){},addSelection:function(){},startNewGroup:function(){},addSession:function(){}},m.prototype.$overwrite=!1,m.prototype.$mode=null,m.prototype.$modeId=null,m.prototype.$scrollTop=0,m.prototype.$scrollLeft=0,m.prototype.$wrapLimit=80,m.prototype.$useWrapMode=!1,m.prototype.$wrapLimitRange={min:null,max:null},m.prototype.lineWidgets=null,m.prototype.isFullWidth=E,b.implement(m.prototype,c);var _=1,M=2,x=3,w=4,L=9,A=10,T=11,O=12;function E(D){return!(D<4352)&&(D>=4352&&D<=4447||D>=4515&&D<=4519||D>=4602&&D<=4607||D>=9001&&D<=9002||D>=11904&&D<=11929||D>=11931&&D<=12019||D>=12032&&D<=12245||D>=12272&&D<=12283||D>=12288&&D<=12350||D>=12353&&D<=12438||D>=12441&&D<=12543||D>=12549&&D<=12589||D>=12593&&D<=12686||D>=12688&&D<=12730||D>=12736&&D<=12771||D>=12784&&D<=12830||D>=12832&&D<=12871||D>=12880&&D<=13054||D>=13056&&D<=19903||D>=19968&&D<=42124||D>=42128&&D<=42182||D>=43360&&D<=43388||D>=44032&&D<=55203||D>=55216&&D<=55238||D>=55243&&D<=55291||D>=63744&&D<=64255||D>=65040&&D<=65049||D>=65072&&D<=65106||D>=65108&&D<=65126||D>=65128&&D<=65131||D>=65281&&D<=65376||D>=65504&&D<=65510)}n("./edit_session/folding").Folding.call(m.prototype),n("./edit_session/bracket_match").BracketMatch.call(m.prototype),a.defineOptions(m.prototype,"session",{wrap:{set:function(D){if(D&&"off"!=D?"free"==D?D=!0:"printMargin"==D?D=-1:"string"==typeof D&&(D=parseInt(D,10)||!1):D=!1,this.$wrap!=D)if(this.$wrap=D,D){var R="number"==typeof D?D:null;this.setWrapLimitRange(R,R),this.setUseWrapMode(!0)}else this.setUseWrapMode(!1)},get:function(){return this.getUseWrapMode()?-1==this.$wrap?"printMargin":this.getWrapLimitRange().min?this.$wrap:"free":"off"},handlesSet:!0},wrapMethod:{set:function(D){(D="auto"==D?"text"!=this.$mode.type:"text"!=D)!=this.$wrapAsCode&&(this.$wrapAsCode=D,this.$useWrapMode&&(this.$useWrapMode=!1,this.setUseWrapMode(!0)))},initialValue:"auto"},indentedSoftWrap:{set:function(){this.$useWrapMode&&(this.$useWrapMode=!1,this.setUseWrapMode(!0))},initialValue:!0},firstLineNumber:{set:function(){this._signal("changeBreakpoint")},initialValue:1},useWorker:{set:function(D){this.$useWorker=D,this.$stopWorker(),D&&this.$startWorker()},initialValue:!0},useSoftTabs:{initialValue:!0},tabSize:{set:function(D){(D=parseInt(D))>0&&this.$tabSize!==D&&(this.$modified=!0,this.$rowLengthCache=[],this.$tabSize=D,this._signal("changeTabSize"))},initialValue:4,handlesSet:!0},navigateWithinSoftTabs:{initialValue:!1},foldStyle:{set:function(D){this.setFoldStyle(D)},handlesSet:!0},overwrite:{set:function(D){this._signal("changeOverwrite")},initialValue:!1},newLineMode:{set:function(D){this.doc.setNewLineMode(D)},get:function(){return this.doc.getNewLineMode()},handlesSet:!0},mode:{set:function(D){this.setMode(D)},get:function(){return this.$modeId},handlesSet:!0}}),p.EditSession=m}),ace.define("ace/search",["require","exports","module","ace/lib/lang","ace/lib/oop","ace/range"],function(n,p,C){"use strict";var b=n("./lib/lang"),o=n("./lib/oop"),v=n("./range").Range,a=function(){function s(){this.$options={}}return s.prototype.set=function(l){return o.mixin(this.$options,l),this},s.prototype.getOptions=function(){return b.copyObject(this.$options)},s.prototype.setOptions=function(l){this.$options=l},s.prototype.find=function(l){var d=this.$options,r=this.$matchIterator(l,d);if(!r)return!1;var u=null;return r.forEach(function(h,m,_,M){return u=new v(h,m,_,M),!(m==M&&d.start&&d.start.start&&0!=d.skipCurrent&&u.isEqual(d.start)&&(u=null,1))}),u},s.prototype.findAll=function(l){var d=this.$options;if(!d.needle)return[];this.$assembleRegExp(d);var r=d.range,u=r?l.getLines(r.start.row,r.end.row):l.doc.getAllLines(),h=[],m=d.re;if(d.$isMultiLine){var x,_=m.length,M=u.length-_;e:for(var w=m.offset||0;w<=M;w++){for(var L=0;L<_;L++)if(-1==u[w+L].search(m[L]))continue e;var A=u[w],T=u[w+_-1],O=A.length-A.match(m[0])[0].length,E=T.match(m[_-1])[0].length;x&&x.end.row===w&&x.end.column>O||(h.push(x=new v(w,O,w+_-1,E)),_>2&&(w=w+_-2))}}else for(var D=0;DS&&h[L].end.row==k;)L--;for(h=h.slice(D,L+1),D=0,L=h.length;D=M;O--)if(A(O,Number.MAX_VALUE,T))return;if(0!=d.wrap)for(O=x,M=_.row;O>=M;O--)if(A(O,Number.MAX_VALUE,T))return}};else w=function(O){var E=_.row;if(!A(E,_.column,O)){for(E+=1;E<=x;E++)if(A(E,0,O))return;if(0!=d.wrap)for(E=M,x=_.row;E<=x;E++)if(A(E,0,O))return}};if(d.$isMultiLine)var L=r.length,A=function(T,O,E){var D=u?T-L+1:T;if(!(D<0||D+L>l.getLength())){var R=l.getLine(D),j=R.search(r[0]);if(!(!u&&jO)&&E(D,j,D+L-1,S))return!0}}};else A=u?function(O,E,D){var N,R=l.getLine(O),j=[],S=0;for(r.lastIndex=0;N=r.exec(R);){if(S=N.index,!(k=N[0].length)){if(S>=R.length)break;r.lastIndex=S+=1}if(N.index+k>E)break;j.push(N.index,k)}for(var F=j.length-1;F>=0;F-=2){var k,Y=j[F-1];if(D(O,Y,O,Y+(k=j[F])))return!0}}:function(O,E,D){var j,N,R=l.getLine(O);for(r.lastIndex=E;N=r.exec(R);){var S=N[0].length;if(D(O,j=N.index,O,j+S))return!0;if(!S&&(r.lastIndex=j+=1,j>=R.length))return!1}};return{forEach:w}},s}();p.Search=a}),ace.define("ace/keyboard/hash_handler",["require","exports","module","ace/lib/keys","ace/lib/useragent"],function(n,p,C){"use strict";var d,b=this&&this.__extends||(d=function(r,u){return(d=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(h,m){h.__proto__=m}||function(h,m){for(var _ in m)Object.prototype.hasOwnProperty.call(m,_)&&(h[_]=m[_])})(r,u)},function(r,u){if("function"!=typeof u&&null!==u)throw new TypeError("Class extends value "+String(u)+" is not a constructor or null");function h(){this.constructor=r}d(r,u),r.prototype=null===u?Object.create(u):(h.prototype=u.prototype,new h)}),o=n("../lib/keys"),v=n("../lib/useragent"),a=o.KEY_MODS,c=function(){function d(r,u){this.$init(r,u,!1)}return d.prototype.$init=function(r,u,h){this.platform=u||(v.isMac?"mac":"win"),this.commands={},this.commandKeyBinding={},this.addCommands(r),this.$singleCommand=h},d.prototype.addCommand=function(r){this.commands[r.name]&&this.removeCommand(r),this.commands[r.name]=r,r.bindKey&&this._buildKeyHash(r)},d.prototype.removeCommand=function(r,u){var h=r&&("string"==typeof r?r:r.name);r=this.commands[h],u||delete this.commands[h];var m=this.commandKeyBinding;for(var _ in m){var M=m[_];if(M==r)delete m[_];else if(Array.isArray(M)){var x=M.indexOf(r);-1!=x&&(M.splice(x,1),1==M.length&&(m[_]=M[0]))}}},d.prototype.bindKey=function(r,u,h){if("object"==typeof r&&r&&(null==h&&(h=r.position),r=r[this.platform]),r){if("function"==typeof u)return this.addCommand({exec:u,bindKey:r,name:u.name||r});r.split("|").forEach(function(m){var _="";if(-1!=m.indexOf(" ")){var M=m.split(/\s+/);m=M.pop(),M.forEach(function(L){var A=this.parseKeys(L);this._addCommandToBinding(_+=(_?" ":"")+(a[A.hashId]+A.key),"chainKeys")},this),_+=" "}var x=this.parseKeys(m);this._addCommandToBinding(_+(a[x.hashId]+x.key),u,h)},this)}},d.prototype._addCommandToBinding=function(r,u,h){var _,m=this.commandKeyBinding;if(u)if(!m[r]||this.$singleCommand)m[r]=u;else{Array.isArray(m[r])?-1!=(_=m[r].indexOf(u))&&m[r].splice(_,1):m[r]=[m[r]],"number"!=typeof h&&(h=s(u));var M=m[r];for(_=0;_h);_++);M.splice(_,0,u)}else delete m[r]},d.prototype.addCommands=function(r){r&&Object.keys(r).forEach(function(u){var h=r[u];if(h){if("string"==typeof h)return this.bindKey(h,u);"function"==typeof h&&(h={exec:h}),"object"==typeof h&&(h.name||(h.name=u),this.addCommand(h))}},this)},d.prototype.removeCommands=function(r){Object.keys(r).forEach(function(u){this.removeCommand(r[u])},this)},d.prototype.bindKeys=function(r){Object.keys(r).forEach(function(u){this.bindKey(u,r[u])},this)},d.prototype._buildKeyHash=function(r){this.bindKey(r.bindKey,r)},d.prototype.parseKeys=function(r){var u=r.toLowerCase().split(/[\-\+]([\-\+])?/).filter(function(w){return w}),h=u.pop(),m=o[h];if(o.FUNCTION_KEYS[m])h=o.FUNCTION_KEYS[m].toLowerCase();else{if(!u.length)return{key:h,hashId:-1};if(1==u.length&&"shift"==u[0])return{key:h.toUpperCase(),hashId:-1}}for(var _=0,M=u.length;M--;){var x=o.KEY_MODS[u[M]];if(null==x)return typeof console<"u"&&console.error("invalid modifier "+u[M]+" in "+r),!1;_|=x}return{key:h,hashId:_}},d.prototype.findKeyCommand=function(r,u){return this.commandKeyBinding[a[r]+u]},d.prototype.handleKeyboard=function(r,u,h,m){if(!(m<0)){var _=a[u]+h,M=this.commandKeyBinding[_];return r.$keyChain&&(r.$keyChain+=" "+_,M=this.commandKeyBinding[r.$keyChain]||M),!M||"chainKeys"!=M&&"chainKeys"!=M[M.length-1]?(r.$keyChain&&(u&&4!=u||1!=h.length?(-1==u||m>0)&&(r.$keyChain=""):r.$keyChain=r.$keyChain.slice(0,-_.length-1)),{command:M}):(r.$keyChain=r.$keyChain||_,{command:"null"})}},d.prototype.getStatusText=function(r,u){return u.$keyChain||""},d}();function s(d){return"object"==typeof d&&d.bindKey&&d.bindKey.position||(d.isDefault?-100:0)}var l=function(d){function r(u,h){var m=d.call(this,u,h)||this;return m.$singleCommand=!0,m}return b(r,d),r}(c);l.call=function(d,r,u){c.prototype.$init.call(d,r,u,!0)},c.call=function(d,r,u){c.prototype.$init.call(d,r,u,!1)},p.HashHandler=l,p.MultiHashHandler=c}),ace.define("ace/commands/command_manager",["require","exports","module","ace/lib/oop","ace/keyboard/hash_handler","ace/lib/event_emitter"],function(n,p,C){"use strict";var s,b=this&&this.__extends||(s=function(l,d){return(s=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,u){r.__proto__=u}||function(r,u){for(var h in u)Object.prototype.hasOwnProperty.call(u,h)&&(r[h]=u[h])})(l,d)},function(l,d){if("function"!=typeof d&&null!==d)throw new TypeError("Class extends value "+String(d)+" is not a constructor or null");function r(){this.constructor=l}s(l,d),l.prototype=null===d?Object.create(d):(r.prototype=d.prototype,new r)}),o=n("../lib/oop"),v=n("../keyboard/hash_handler").MultiHashHandler,a=n("../lib/event_emitter").EventEmitter,c=function(s){function l(d,r){var u=s.call(this,r,d)||this;return u.byName=u.commands,u.setDefaultHandler("exec",function(h){return h.args?h.command.exec(h.editor,h.args,h.event,!1):h.command.exec(h.editor,{},h.event,!0)}),u}return b(l,s),l.prototype.exec=function(d,r,u){if(Array.isArray(d)){for(var h=d.length;h--;)if(this.exec(d[h],r,u))return!0;return!1}if("string"==typeof d&&(d=this.commands[d]),!d||r&&r.$readOnly&&!d.readOnly||0!=this.$checkCommandState&&d.isAvailable&&!d.isAvailable(r))return!1;var m={editor:r,command:d,args:u};return m.returnValue=this._emit("exec",m),this._signal("afterExec",m),!1!==m.returnValue},l.prototype.toggleRecording=function(d){if(!this.$inReplay)return d&&d._emit("changeStatus"),this.recording?(this.macro.pop(),this.off("exec",this.$addCommandToMacro),this.macro.length||(this.macro=this.oldMacro),this.recording=!1):(this.$addCommandToMacro||(this.$addCommandToMacro=function(r){this.macro.push([r.command,r.args])}.bind(this)),this.oldMacro=this.macro,this.macro=[],this.on("exec",this.$addCommandToMacro),this.recording=!0)},l.prototype.replay=function(d){if(!this.$inReplay&&this.macro){if(this.recording)return this.toggleRecording(d);try{this.$inReplay=!0,this.macro.forEach(function(r){"string"==typeof r?this.exec(r,d):this.exec(r[0],d,r[1])},this)}finally{this.$inReplay=!1}}},l.prototype.trimMacro=function(d){return d.map(function(r){return"string"!=typeof r[0]&&(r[0]=r[0].name),r[1]||(r=r[0]),r})},l}(v);o.implement(c.prototype,a),p.CommandManager=c}),ace.define("ace/commands/default_commands",["require","exports","module","ace/lib/lang","ace/config","ace/range"],function(n,p,C){"use strict";var b=n("../lib/lang"),o=n("../config"),v=n("../range").Range;function a(s,l){return{win:s,mac:l}}p.commands=[{name:"showSettingsMenu",description:"Show settings menu",bindKey:a("Ctrl-,","Command-,"),exec:function(s){o.loadModule("ace/ext/settings_menu",function(l){l.init(s),s.showSettingsMenu()})},readOnly:!0},{name:"goToNextError",description:"Go to next error",bindKey:a("Alt-E","F4"),exec:function(s){o.loadModule("ace/ext/error_marker",function(l){l.showErrorMarker(s,1)})},scrollIntoView:"animate",readOnly:!0},{name:"goToPreviousError",description:"Go to previous error",bindKey:a("Alt-Shift-E","Shift-F4"),exec:function(s){o.loadModule("ace/ext/error_marker",function(l){l.showErrorMarker(s,-1)})},scrollIntoView:"animate",readOnly:!0},{name:"selectall",description:"Select all",bindKey:a("Ctrl-A","Command-A"),exec:function(s){s.selectAll()},readOnly:!0},{name:"centerselection",description:"Center selection",bindKey:a(null,"Ctrl-L"),exec:function(s){s.centerSelection()},readOnly:!0},{name:"gotoline",description:"Go to line...",bindKey:a("Ctrl-L","Command-L"),exec:function(s,l){"number"==typeof l&&!isNaN(l)&&s.gotoLine(l),s.prompt({$type:"gotoLine"})},readOnly:!0},{name:"fold",bindKey:a("Alt-L|Ctrl-F1","Command-Alt-L|Command-F1"),exec:function(s){s.session.toggleFold(!1)},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"unfold",bindKey:a("Alt-Shift-L|Ctrl-Shift-F1","Command-Alt-Shift-L|Command-Shift-F1"),exec:function(s){s.session.toggleFold(!0)},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"toggleFoldWidget",description:"Toggle fold widget",bindKey:a("F2","F2"),exec:function(s){s.session.toggleFoldWidget()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"toggleParentFoldWidget",description:"Toggle parent fold widget",bindKey:a("Alt-F2","Alt-F2"),exec:function(s){s.session.toggleFoldWidget(!0)},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"foldall",description:"Fold all",bindKey:a(null,"Ctrl-Command-Option-0"),exec:function(s){s.session.foldAll()},scrollIntoView:"center",readOnly:!0},{name:"foldAllComments",description:"Fold all comments",bindKey:a(null,"Ctrl-Command-Option-0"),exec:function(s){s.session.foldAllComments()},scrollIntoView:"center",readOnly:!0},{name:"foldOther",description:"Fold other",bindKey:a("Alt-0","Command-Option-0"),exec:function(s){s.session.foldAll(),s.session.unfold(s.selection.getAllRanges())},scrollIntoView:"center",readOnly:!0},{name:"unfoldall",description:"Unfold all",bindKey:a("Alt-Shift-0","Command-Option-Shift-0"),exec:function(s){s.session.unfold()},scrollIntoView:"center",readOnly:!0},{name:"findnext",description:"Find next",bindKey:a("Ctrl-K","Command-G"),exec:function(s){s.findNext()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"findprevious",description:"Find previous",bindKey:a("Ctrl-Shift-K","Command-Shift-G"),exec:function(s){s.findPrevious()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"selectOrFindNext",description:"Select or find next",bindKey:a("Alt-K","Ctrl-G"),exec:function(s){s.selection.isEmpty()?s.selection.selectWord():s.findNext()},readOnly:!0},{name:"selectOrFindPrevious",description:"Select or find previous",bindKey:a("Alt-Shift-K","Ctrl-Shift-G"),exec:function(s){s.selection.isEmpty()?s.selection.selectWord():s.findPrevious()},readOnly:!0},{name:"find",description:"Find",bindKey:a("Ctrl-F","Command-F"),exec:function(s){o.loadModule("ace/ext/searchbox",function(l){l.Search(s)})},readOnly:!0},{name:"overwrite",description:"Overwrite",bindKey:"Insert",exec:function(s){s.toggleOverwrite()},readOnly:!0},{name:"selecttostart",description:"Select to start",bindKey:a("Ctrl-Shift-Home","Command-Shift-Home|Command-Shift-Up"),exec:function(s){s.getSelection().selectFileStart()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"gotostart",description:"Go to start",bindKey:a("Ctrl-Home","Command-Home|Command-Up"),exec:function(s){s.navigateFileStart()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"selectup",description:"Select up",bindKey:a("Shift-Up","Shift-Up|Ctrl-Shift-P"),exec:function(s){s.getSelection().selectUp()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"golineup",description:"Go line up",bindKey:a("Up","Up|Ctrl-P"),exec:function(s,l){s.navigateUp(l.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttoend",description:"Select to end",bindKey:a("Ctrl-Shift-End","Command-Shift-End|Command-Shift-Down"),exec:function(s){s.getSelection().selectFileEnd()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"gotoend",description:"Go to end",bindKey:a("Ctrl-End","Command-End|Command-Down"),exec:function(s){s.navigateFileEnd()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"selectdown",description:"Select down",bindKey:a("Shift-Down","Shift-Down|Ctrl-Shift-N"),exec:function(s){s.getSelection().selectDown()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"golinedown",description:"Go line down",bindKey:a("Down","Down|Ctrl-N"),exec:function(s,l){s.navigateDown(l.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectwordleft",description:"Select word left",bindKey:a("Ctrl-Shift-Left","Option-Shift-Left"),exec:function(s){s.getSelection().selectWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotowordleft",description:"Go to word left",bindKey:a("Ctrl-Left","Option-Left"),exec:function(s){s.navigateWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttolinestart",description:"Select to line start",bindKey:a("Alt-Shift-Left","Command-Shift-Left|Ctrl-Shift-A"),exec:function(s){s.getSelection().selectLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotolinestart",description:"Go to line start",bindKey:a("Alt-Left|Home","Command-Left|Home|Ctrl-A"),exec:function(s){s.navigateLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectleft",description:"Select left",bindKey:a("Shift-Left","Shift-Left|Ctrl-Shift-B"),exec:function(s){s.getSelection().selectLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotoleft",description:"Go to left",bindKey:a("Left","Left|Ctrl-B"),exec:function(s,l){s.navigateLeft(l.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectwordright",description:"Select word right",bindKey:a("Ctrl-Shift-Right","Option-Shift-Right"),exec:function(s){s.getSelection().selectWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotowordright",description:"Go to word right",bindKey:a("Ctrl-Right","Option-Right"),exec:function(s){s.navigateWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttolineend",description:"Select to line end",bindKey:a("Alt-Shift-Right","Command-Shift-Right|Shift-End|Ctrl-Shift-E"),exec:function(s){s.getSelection().selectLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotolineend",description:"Go to line end",bindKey:a("Alt-Right|End","Command-Right|End|Ctrl-E"),exec:function(s){s.navigateLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectright",description:"Select right",bindKey:a("Shift-Right","Shift-Right"),exec:function(s){s.getSelection().selectRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotoright",description:"Go to right",bindKey:a("Right","Right|Ctrl-F"),exec:function(s,l){s.navigateRight(l.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectpagedown",description:"Select page down",bindKey:"Shift-PageDown",exec:function(s){s.selectPageDown()},readOnly:!0},{name:"pagedown",description:"Page down",bindKey:a(null,"Option-PageDown"),exec:function(s){s.scrollPageDown()},readOnly:!0},{name:"gotopagedown",description:"Go to page down",bindKey:a("PageDown","PageDown|Ctrl-V"),exec:function(s){s.gotoPageDown()},readOnly:!0},{name:"selectpageup",description:"Select page up",bindKey:"Shift-PageUp",exec:function(s){s.selectPageUp()},readOnly:!0},{name:"pageup",description:"Page up",bindKey:a(null,"Option-PageUp"),exec:function(s){s.scrollPageUp()},readOnly:!0},{name:"gotopageup",description:"Go to page up",bindKey:"PageUp",exec:function(s){s.gotoPageUp()},readOnly:!0},{name:"scrollup",description:"Scroll up",bindKey:a("Ctrl-Up",null),exec:function(s){s.renderer.scrollBy(0,-2*s.renderer.layerConfig.lineHeight)},readOnly:!0},{name:"scrolldown",description:"Scroll down",bindKey:a("Ctrl-Down",null),exec:function(s){s.renderer.scrollBy(0,2*s.renderer.layerConfig.lineHeight)},readOnly:!0},{name:"selectlinestart",description:"Select line start",bindKey:"Shift-Home",exec:function(s){s.getSelection().selectLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectlineend",description:"Select line end",bindKey:"Shift-End",exec:function(s){s.getSelection().selectLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"togglerecording",description:"Toggle recording",bindKey:a("Ctrl-Alt-E","Command-Option-E"),exec:function(s){s.commands.toggleRecording(s)},readOnly:!0},{name:"replaymacro",description:"Replay macro",bindKey:a("Ctrl-Shift-E","Command-Shift-E"),exec:function(s){s.commands.replay(s)},readOnly:!0},{name:"jumptomatching",description:"Jump to matching",bindKey:a("Ctrl-\\|Ctrl-P","Command-\\"),exec:function(s){s.jumpToMatching()},multiSelectAction:"forEach",scrollIntoView:"animate",readOnly:!0},{name:"selecttomatching",description:"Select to matching",bindKey:a("Ctrl-Shift-\\|Ctrl-Shift-P","Command-Shift-\\"),exec:function(s){s.jumpToMatching(!0)},multiSelectAction:"forEach",scrollIntoView:"animate",readOnly:!0},{name:"expandToMatching",description:"Expand to matching",bindKey:a("Ctrl-Shift-M","Ctrl-Shift-M"),exec:function(s){s.jumpToMatching(!0,!0)},multiSelectAction:"forEach",scrollIntoView:"animate",readOnly:!0},{name:"passKeysToBrowser",description:"Pass keys to browser",bindKey:a(null,null),exec:function(){},passEvent:!0,readOnly:!0},{name:"copy",description:"Copy",exec:function(s){},readOnly:!0},{name:"cut",description:"Cut",exec:function(s){var d=s.$copyWithEmptySelection&&s.selection.isEmpty()?s.selection.getLineRange():s.selection.getRange();s._emit("cut",d),d.isEmpty()||s.session.remove(d),s.clearSelection()},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"paste",description:"Paste",exec:function(s,l){s.$handlePaste(l)},scrollIntoView:"cursor"},{name:"removeline",description:"Remove line",bindKey:a("Ctrl-D","Command-D"),exec:function(s){s.removeLines()},scrollIntoView:"cursor",multiSelectAction:"forEachLine"},{name:"duplicateSelection",description:"Duplicate selection",bindKey:a("Ctrl-Shift-D","Command-Shift-D"),exec:function(s){s.duplicateSelection()},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"sortlines",description:"Sort lines",bindKey:a("Ctrl-Alt-S","Command-Alt-S"),exec:function(s){s.sortLines()},scrollIntoView:"selection",multiSelectAction:"forEachLine"},{name:"togglecomment",description:"Toggle comment",bindKey:a("Ctrl-/","Command-/"),exec:function(s){s.toggleCommentLines()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"toggleBlockComment",description:"Toggle block comment",bindKey:a("Ctrl-Shift-/","Command-Shift-/"),exec:function(s){s.toggleBlockComment()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"modifyNumberUp",description:"Modify number up",bindKey:a("Ctrl-Shift-Up","Alt-Shift-Up"),exec:function(s){s.modifyNumber(1)},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"modifyNumberDown",description:"Modify number down",bindKey:a("Ctrl-Shift-Down","Alt-Shift-Down"),exec:function(s){s.modifyNumber(-1)},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"replace",description:"Replace",bindKey:a("Ctrl-H","Command-Option-F"),exec:function(s){o.loadModule("ace/ext/searchbox",function(l){l.Search(s,!0)})}},{name:"undo",description:"Undo",bindKey:a("Ctrl-Z","Command-Z"),exec:function(s){s.undo()}},{name:"redo",description:"Redo",bindKey:a("Ctrl-Shift-Z|Ctrl-Y","Command-Shift-Z|Command-Y"),exec:function(s){s.redo()}},{name:"copylinesup",description:"Copy lines up",bindKey:a("Alt-Shift-Up","Command-Option-Up"),exec:function(s){s.copyLinesUp()},scrollIntoView:"cursor"},{name:"movelinesup",description:"Move lines up",bindKey:a("Alt-Up","Option-Up"),exec:function(s){s.moveLinesUp()},scrollIntoView:"cursor"},{name:"copylinesdown",description:"Copy lines down",bindKey:a("Alt-Shift-Down","Command-Option-Down"),exec:function(s){s.copyLinesDown()},scrollIntoView:"cursor"},{name:"movelinesdown",description:"Move lines down",bindKey:a("Alt-Down","Option-Down"),exec:function(s){s.moveLinesDown()},scrollIntoView:"cursor"},{name:"del",description:"Delete",bindKey:a("Delete","Delete|Ctrl-D|Shift-Delete"),exec:function(s){s.remove("right")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"backspace",description:"Backspace",bindKey:a("Shift-Backspace|Backspace","Ctrl-Backspace|Shift-Backspace|Backspace|Ctrl-H"),exec:function(s){s.remove("left")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"cut_or_delete",description:"Cut or delete",bindKey:a("Shift-Delete",null),exec:function(s){if(!s.selection.isEmpty())return!1;s.remove("left")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolinestart",description:"Remove to line start",bindKey:a("Alt-Backspace","Command-Backspace"),exec:function(s){s.removeToLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolineend",description:"Remove to line end",bindKey:a("Alt-Delete","Ctrl-K|Command-Delete"),exec:function(s){s.removeToLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolinestarthard",description:"Remove to line start hard",bindKey:a("Ctrl-Shift-Backspace",null),exec:function(s){var l=s.selection.getRange();l.start.column=0,s.session.remove(l)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolineendhard",description:"Remove to line end hard",bindKey:a("Ctrl-Shift-Delete",null),exec:function(s){var l=s.selection.getRange();l.end.column=Number.MAX_VALUE,s.session.remove(l)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removewordleft",description:"Remove word left",bindKey:a("Ctrl-Backspace","Alt-Backspace|Ctrl-Alt-Backspace"),exec:function(s){s.removeWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removewordright",description:"Remove word right",bindKey:a("Ctrl-Delete","Alt-Delete"),exec:function(s){s.removeWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"outdent",description:"Outdent",bindKey:a("Shift-Tab","Shift-Tab"),exec:function(s){s.blockOutdent()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"indent",description:"Indent",bindKey:a("Tab","Tab"),exec:function(s){s.indent()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"blockoutdent",description:"Block outdent",bindKey:a("Ctrl-[","Ctrl-["),exec:function(s){s.blockOutdent()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"blockindent",description:"Block indent",bindKey:a("Ctrl-]","Ctrl-]"),exec:function(s){s.blockIndent()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"insertstring",description:"Insert string",exec:function(s,l){s.insert(l)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"inserttext",description:"Insert text",exec:function(s,l){s.insert(b.stringRepeat(l.text||"",l.times||1))},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"splitline",description:"Split line",bindKey:a(null,"Ctrl-O"),exec:function(s){s.splitLine()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"transposeletters",description:"Transpose letters",bindKey:a("Alt-Shift-X","Ctrl-T"),exec:function(s){s.transposeLetters()},multiSelectAction:function(s){s.transposeSelections(1)},scrollIntoView:"cursor"},{name:"touppercase",description:"To uppercase",bindKey:a("Ctrl-U","Ctrl-U"),exec:function(s){s.toUpperCase()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"tolowercase",description:"To lowercase",bindKey:a("Ctrl-Shift-U","Ctrl-Shift-U"),exec:function(s){s.toLowerCase()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"autoindent",description:"Auto Indent",bindKey:a(null,null),exec:function(s){s.autoIndent()},multiSelectAction:"forEachLine",scrollIntoView:"animate"},{name:"expandtoline",description:"Expand to line",bindKey:a("Ctrl-Shift-L","Command-Shift-L"),exec:function(s){var l=s.selection.getRange();l.start.column=l.end.column=0,l.end.row++,s.selection.setRange(l,!1)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"openlink",bindKey:a("Ctrl+F3","F3"),exec:function(s){s.openLink()}},{name:"joinlines",description:"Join lines",bindKey:a(null,null),exec:function(s){for(var l=s.selection.isBackwards(),d=l?s.selection.getSelectionLead():s.selection.getSelectionAnchor(),r=l?s.selection.getSelectionAnchor():s.selection.getSelectionLead(),u=s.session.doc.getLine(d.row).length,m=s.session.doc.getTextRange(s.selection.getRange()).replace(/\n\s*/," ").length,_=s.session.doc.getLine(d.row),M=d.row+1;M<=r.row+1;M++){var x=b.stringTrimLeft(b.stringTrimRight(s.session.doc.getLine(M)));0!==x.length&&(x=" "+x),_+=x}r.row+10?(s.selection.moveCursorTo(d.row,d.column),s.selection.selectTo(d.row,d.column+m)):(u=s.session.doc.getLine(d.row).length>u?u+1:u,s.selection.moveCursorTo(d.row,u))},multiSelectAction:"forEach",readOnly:!0},{name:"invertSelection",description:"Invert selection",bindKey:a(null,null),exec:function(s){var l=s.session.doc.getLength()-1,d=s.session.doc.getLine(l).length,r=s.selection.rangeList.ranges,u=[];r.length<1&&(r=[s.selection.getRange()]);for(var h=0;hc[s].column&&s++,r.unshift(s,0),c.splice.apply(c,r),this.$updateRows()}}},v.prototype.$updateRows=function(){var a=this.session.lineWidgets;if(a){var c=!0;a.forEach(function(s,l){if(s)for(c=!1,s.row=l;s.$oldWidget;)s.$oldWidget.row=l,s=s.$oldWidget}),c&&(this.session.lineWidgets=null)}},v.prototype.$registerLineWidget=function(a){this.session.lineWidgets||(this.session.lineWidgets=new Array(this.session.getLength()));var c=this.session.lineWidgets[a.row];return c&&(a.$oldWidget=c,c.el&&c.el.parentNode&&(c.el.parentNode.removeChild(c.el),c._inDocument=!1)),this.session.lineWidgets[a.row]=a,a},v.prototype.addLineWidget=function(a){if(this.$registerLineWidget(a),a.session=this.session,!this.editor)return a;var c=this.editor.renderer;a.html&&!a.el&&(a.el=b.createElement("div"),a.el.innerHTML=a.html),a.text&&!a.el&&(a.el=b.createElement("div"),a.el.textContent=a.text),a.el&&(b.addCssClass(a.el,"ace_lineWidgetContainer"),a.className&&b.addCssClass(a.el,a.className),a.el.style.position="absolute",a.el.style.zIndex=5,c.container.appendChild(a.el),a._inDocument=!0,a.coverGutter||(a.el.style.zIndex=3),null==a.pixelHeight&&(a.pixelHeight=a.el.offsetHeight)),null==a.rowCount&&(a.rowCount=a.pixelHeight/c.layerConfig.lineHeight);var s=this.session.getFoldAt(a.row,0);if(a.$fold=s,s){var l=this.session.lineWidgets;a.row!=s.end.row||l[s.start.row]?a.hidden=!0:l[s.start.row]=a}return this.session._emit("changeFold",{data:{start:{row:a.row}}}),this.$updateRows(),this.renderWidgets(null,c),this.onWidgetChanged(a),a},v.prototype.removeLineWidget=function(a){if(a._inDocument=!1,a.session=null,a.el&&a.el.parentNode&&a.el.parentNode.removeChild(a.el),a.editor&&a.editor.destroy)try{a.editor.destroy()}catch{}if(this.session.lineWidgets){var c=this.session.lineWidgets[a.row];if(c==a)this.session.lineWidgets[a.row]=a.$oldWidget,a.$oldWidget&&this.onWidgetChanged(a.$oldWidget);else for(;c;){if(c.$oldWidget==a){c.$oldWidget=a.$oldWidget;break}c=c.$oldWidget}}this.session._emit("changeFold",{data:{start:{row:a.row}}}),this.$updateRows()},v.prototype.getWidgetsAtRow=function(a){for(var c=this.session.lineWidgets,s=c&&c[a],l=[];s;)l.push(s),s=s.$oldWidget;return l},v.prototype.onWidgetChanged=function(a){this.session._changedWidgets.push(a),this.editor&&this.editor.renderer.updateFull()},v.prototype.measureWidgets=function(a,c){var s=this.session._changedWidgets,l=c.layerConfig;if(s&&s.length){for(var d=1/0,r=0;r0&&!l[d];)d--;this.firstRow=s.firstRow,this.lastRow=s.lastRow,c.$cursorLayer.config=s;for(var u=d;u<=r;u++){var h=l[u];if(h&&h.el){if(h.hidden){h.el.style.top=-100-(h.pixelHeight||0)+"px";continue}h._inDocument||(h._inDocument=!0,c.container.appendChild(h.el));var m=c.$cursorLayer.getPixelPosition({row:u,column:0},!0).top;h.coverLine||(m+=s.lineHeight*this.session.getRowLineCount(h.row)),h.el.style.top=m-s.offset+"px";var _=h.coverGutter?0:c.gutterWidth;h.fixedWidth||(_-=c.scrollLeft),h.el.style.left=_+"px",h.fullWidth&&h.screenWidth&&(h.el.style.minWidth=s.width+2*s.padding+"px"),h.el.style.right=h.fixedWidth?c.scrollBar.getWidth()+"px":""}}}},v}();p.LineWidgets=o}),ace.define("ace/keyboard/gutter_handler",["require","exports","module","ace/lib/keys","ace/mouse/default_gutter_handler"],function(n,p,C){"use strict";var b=n("../lib/keys"),o=n("../mouse/default_gutter_handler").GutterTooltip,v=function(){function c(s){this.editor=s,this.gutterLayer=s.renderer.$gutterLayer,this.element=s.renderer.$gutter,this.lines=s.renderer.$gutterLayer.$lines,this.activeRowIndex=null,this.activeLane=null,this.annotationTooltip=new o(this.editor)}return c.prototype.addListener=function(){this.element.addEventListener("keydown",this.$onGutterKeyDown.bind(this)),this.element.addEventListener("focusout",this.$blurGutter.bind(this)),this.editor.on("mousewheel",this.$blurGutter.bind(this))},c.prototype.removeListener=function(){this.element.removeEventListener("keydown",this.$onGutterKeyDown.bind(this)),this.element.removeEventListener("focusout",this.$blurGutter.bind(this)),this.editor.off("mousewheel",this.$blurGutter.bind(this))},c.prototype.$onGutterKeyDown=function(s){if(this.annotationTooltip.isOpen)return s.preventDefault(),void(s.keyCode===b.escape&&this.annotationTooltip.hideTooltip());if(s.target===this.element){if(s.keyCode!=b.enter)return;s.preventDefault();var l=this.editor.getCursorPosition().row;return this.editor.isRowVisible(l)||this.editor.scrollToLine(l,!0,!0),void setTimeout(function(){var d=this.$rowToRowIndex(this.gutterLayer.$cursorCell.row),r=this.$findNearestFoldWidget(d),u=this.$findNearestAnnotation(d);if(null!==r||null!==u)return null===r&&null!==u?(this.activeRowIndex=u,this.activeLane="annotation",void this.$focusAnnotation(this.activeRowIndex)):null!==r&&null===u?(this.activeRowIndex=r,this.activeLane="fold",void this.$focusFoldWidget(this.activeRowIndex)):Math.abs(u-d)0||s+l=0&&this.$isFoldWidgetVisible(s-l))return s-l;if(s+l<=this.lines.getLength()-1&&this.$isFoldWidgetVisible(s+l))return s+l}return null},c.prototype.$findNearestAnnotation=function(s){if(this.$isAnnotationVisible(s))return s;for(var l=0;s-l>0||s+l=0&&this.$isAnnotationVisible(s-l))return s-l;if(s+l<=this.lines.getLength()-1&&this.$isAnnotationVisible(s+l))return s+l}return null},c.prototype.$focusFoldWidget=function(s){if(null!=s){var l=this.$getFoldWidget(s);l.classList.add(this.editor.renderer.keyboardFocusClassName),l.focus()}},c.prototype.$focusAnnotation=function(s){if(null!=s){var l=this.$getAnnotation(s);l.classList.add(this.editor.renderer.keyboardFocusClassName),l.focus()}},c.prototype.$blurFoldWidget=function(s){var l=this.$getFoldWidget(s);l.classList.remove(this.editor.renderer.keyboardFocusClassName),l.blur()},c.prototype.$blurAnnotation=function(s){var l=this.$getAnnotation(s);l.classList.remove(this.editor.renderer.keyboardFocusClassName),l.blur()},c.prototype.$moveFoldWidgetUp=function(){for(var s=this.activeRowIndex;s>0;)if(s--,this.$isFoldWidgetVisible(s))return this.$blurFoldWidget(this.activeRowIndex),this.activeRowIndex=s,void this.$focusFoldWidget(this.activeRowIndex)},c.prototype.$moveFoldWidgetDown=function(){for(var s=this.activeRowIndex;s0;)if(s--,this.$isAnnotationVisible(s))return this.$blurAnnotation(this.activeRowIndex),this.activeRowIndex=s,void this.$focusAnnotation(this.activeRowIndex)},c.prototype.$moveAnnotationDown=function(){for(var s=this.activeRowIndex;s=N.length&&(N=void 0),{value:N&&N[F++],done:!N}}};throw new TypeError(S?"Object is not iterable.":"Symbol.iterator is not defined.")},o=n("./lib/oop"),v=n("./lib/dom"),a=n("./lib/lang"),c=n("./lib/useragent"),s=n("./keyboard/textinput").TextInput,l=n("./mouse/mouse_handler").MouseHandler,d=n("./mouse/fold_handler").FoldHandler,r=n("./keyboard/keybinding").KeyBinding,u=n("./edit_session").EditSession,h=n("./search").Search,m=n("./range").Range,_=n("./lib/event_emitter").EventEmitter,M=n("./commands/command_manager").CommandManager,x=n("./commands/default_commands").commands,w=n("./config"),L=n("./token_iterator").TokenIterator,A=n("./line_widgets").LineWidgets,T=n("./keyboard/gutter_handler").GutterKeyboardHandler,O=n("./config").nls,E=n("./clipboard"),D=n("./lib/keys"),R=function(){function N(S,k,F){this.$toDestroy=[];var Y=S.getContainerElement();this.container=Y,this.renderer=S,this.id="editor"+ ++N.$uid,this.commands=new M(c.isMac?"mac":"win",x),"object"==typeof document&&(this.textInput=new s(S.getTextAreaContainer(),this),this.renderer.textarea=this.textInput.getElement(),this.$mouseHandler=new l(this),new d(this)),this.keyBinding=new r(this),this.$search=(new h).set({wrap:!0}),this.$historyTracker=this.$historyTracker.bind(this),this.commands.on("exec",this.$historyTracker),this.$initOperationListeners(),this._$emitInputEvent=a.delayedCall(function(){this._signal("input",{}),this.session&&!this.session.destroyed&&this.session.bgTokenizer.scheduleStart()}.bind(this)),this.on("change",function(se,ne){ne._$emitInputEvent.schedule(31)}),this.setSession(k||F&&F.session||new u("")),w.resetOptions(this),F&&this.setOptions(F),w._signal("editor",this)}return N.prototype.$initOperationListeners=function(){this.commands.on("exec",this.startOperation.bind(this),!0),this.commands.on("afterExec",this.endOperation.bind(this),!0),this.$opResetTimer=a.delayedCall(this.endOperation.bind(this,!0)),this.on("change",function(){this.curOp||(this.startOperation(),this.curOp.selectionBefore=this.$lastSel),this.curOp.docChanged=!0}.bind(this),!0),this.on("changeSelection",function(){this.curOp||(this.startOperation(),this.curOp.selectionBefore=this.$lastSel),this.curOp.selectionChanged=!0}.bind(this),!0)},N.prototype.startOperation=function(S){if(this.curOp){if(!S||this.curOp.command)return;this.prevOp=this.curOp}S||(this.previousCommand=null,S={}),this.$opResetTimer.schedule(),this.curOp=this.session.curOp={command:S.command||{},args:S.args,scrollTop:this.renderer.scrollTop},this.curOp.selectionBefore=this.selection.toJSON()},N.prototype.endOperation=function(S){if(this.curOp&&this.session){if(S&&!1===S.returnValue||!this.session)return this.curOp=null;if(1==S&&this.curOp.command&&"mouse"==this.curOp.command.name||(this._signal("beforeEndOperation"),!this.curOp))return;var k=this.curOp.command,F=k&&k.scrollIntoView;if(F){switch(F){case"center-animate":F="animate";case"center":this.renderer.scrollCursorIntoView(null,.5);break;case"animate":case"cursor":this.renderer.scrollCursorIntoView();break;case"selectionPart":var Y=this.selection.getRange(),se=this.renderer.layerConfig;(Y.start.row>=se.lastRow||Y.end.row<=se.firstRow)&&this.renderer.scrollSelectionIntoView(this.selection.anchor,this.selection.lead)}"animate"==F&&this.renderer.animateScrolling(this.curOp.scrollTop)}var ne=this.selection.toJSON();this.curOp.selectionAfter=ne,this.$lastSel=this.selection.toJSON(),this.session.getUndoManager().addSelection(ne),this.prevOp=this.curOp,this.curOp=null}},N.prototype.$historyTracker=function(S){if(this.$mergeUndoDeltas){var k=this.prevOp,F=this.$mergeableCommands,Y=k.command&&S.command.name==k.command.name;if("insertstring"==S.command.name){var se=S.args;void 0===this.mergeNextCommand&&(this.mergeNextCommand=!0),Y=Y&&this.mergeNextCommand&&(!/\s/.test(se)||/\s/.test(k.args)),this.mergeNextCommand=!0}else Y=Y&&-1!==F.indexOf(S.command.name);"always"!=this.$mergeUndoDeltas&&Date.now()-this.sequenceStartTime>2e3&&(Y=!1),Y?this.session.mergeUndoDeltas=!0:-1!==F.indexOf(S.command.name)&&(this.sequenceStartTime=Date.now())}},N.prototype.setKeyboardHandler=function(S,k){if(S&&"string"==typeof S&&"ace"!=S){this.$keybindingId=S;var F=this;w.loadModule(["keybinding",S],function(Y){F.$keybindingId==S&&F.keyBinding.setKeyboardHandler(Y&&Y.handler),k&&k()})}else this.$keybindingId=null,this.keyBinding.setKeyboardHandler(S),k&&k()},N.prototype.getKeyboardHandler=function(){return this.keyBinding.getKeyboardHandler()},N.prototype.setSession=function(S){if(this.session!=S){this.curOp&&this.endOperation(),this.curOp={};var k=this.session;if(k){this.session.off("change",this.$onDocumentChange),this.session.off("changeMode",this.$onChangeMode),this.session.off("tokenizerUpdate",this.$onTokenizerUpdate),this.session.off("changeTabSize",this.$onChangeTabSize),this.session.off("changeWrapLimit",this.$onChangeWrapLimit),this.session.off("changeWrapMode",this.$onChangeWrapMode),this.session.off("changeFold",this.$onChangeFold),this.session.off("changeFrontMarker",this.$onChangeFrontMarker),this.session.off("changeBackMarker",this.$onChangeBackMarker),this.session.off("changeBreakpoint",this.$onChangeBreakpoint),this.session.off("changeAnnotation",this.$onChangeAnnotation),this.session.off("changeOverwrite",this.$onCursorChange),this.session.off("changeScrollTop",this.$onScrollTopChange),this.session.off("changeScrollLeft",this.$onScrollLeftChange);var F=this.session.getSelection();F.off("changeCursor",this.$onCursorChange),F.off("changeSelection",this.$onSelectionChange)}this.session=S,S?(this.$onDocumentChange=this.onDocumentChange.bind(this),S.on("change",this.$onDocumentChange),this.renderer.setSession(S),this.$onChangeMode=this.onChangeMode.bind(this),S.on("changeMode",this.$onChangeMode),this.$onTokenizerUpdate=this.onTokenizerUpdate.bind(this),S.on("tokenizerUpdate",this.$onTokenizerUpdate),this.$onChangeTabSize=this.renderer.onChangeTabSize.bind(this.renderer),S.on("changeTabSize",this.$onChangeTabSize),this.$onChangeWrapLimit=this.onChangeWrapLimit.bind(this),S.on("changeWrapLimit",this.$onChangeWrapLimit),this.$onChangeWrapMode=this.onChangeWrapMode.bind(this),S.on("changeWrapMode",this.$onChangeWrapMode),this.$onChangeFold=this.onChangeFold.bind(this),S.on("changeFold",this.$onChangeFold),this.$onChangeFrontMarker=this.onChangeFrontMarker.bind(this),this.session.on("changeFrontMarker",this.$onChangeFrontMarker),this.$onChangeBackMarker=this.onChangeBackMarker.bind(this),this.session.on("changeBackMarker",this.$onChangeBackMarker),this.$onChangeBreakpoint=this.onChangeBreakpoint.bind(this),this.session.on("changeBreakpoint",this.$onChangeBreakpoint),this.$onChangeAnnotation=this.onChangeAnnotation.bind(this),this.session.on("changeAnnotation",this.$onChangeAnnotation),this.$onCursorChange=this.onCursorChange.bind(this),this.session.on("changeOverwrite",this.$onCursorChange),this.$onScrollTopChange=this.onScrollTopChange.bind(this),this.session.on("changeScrollTop",this.$onScrollTopChange),this.$onScrollLeftChange=this.onScrollLeftChange.bind(this),this.session.on("changeScrollLeft",this.$onScrollLeftChange),this.selection=S.getSelection(),this.selection.on("changeCursor",this.$onCursorChange),this.$onSelectionChange=this.onSelectionChange.bind(this),this.selection.on("changeSelection",this.$onSelectionChange),this.onChangeMode(),this.onCursorChange(),this.onScrollTopChange(),this.onScrollLeftChange(),this.onSelectionChange(),this.onChangeFrontMarker(),this.onChangeBackMarker(),this.onChangeBreakpoint(),this.onChangeAnnotation(),this.session.getUseWrapMode()&&this.renderer.adjustWrapLimit(),this.renderer.updateFull()):(this.selection=null,this.renderer.setSession(S)),this._signal("changeSession",{session:S,oldSession:k}),this.curOp=null,k&&k._signal("changeEditor",{oldEditor:this}),S&&S._signal("changeEditor",{editor:this}),S&&!S.destroyed&&S.bgTokenizer.scheduleStart()}},N.prototype.getSession=function(){return this.session},N.prototype.setValue=function(S,k){return this.session.doc.setValue(S),k?1==k?this.navigateFileEnd():-1==k&&this.navigateFileStart():this.selectAll(),S},N.prototype.getValue=function(){return this.session.getValue()},N.prototype.getSelection=function(){return this.selection},N.prototype.resize=function(S){this.renderer.onResize(S)},N.prototype.setTheme=function(S,k){this.renderer.setTheme(S,k)},N.prototype.getTheme=function(){return this.renderer.getTheme()},N.prototype.setStyle=function(S){this.renderer.setStyle(S)},N.prototype.unsetStyle=function(S){this.renderer.unsetStyle(S)},N.prototype.getFontSize=function(){return this.getOption("fontSize")||v.computedStyle(this.container).fontSize},N.prototype.setFontSize=function(S){this.setOption("fontSize",S)},N.prototype.$highlightBrackets=function(){if(!this.$highlightPending){var S=this;this.$highlightPending=!0,setTimeout(function(){S.$highlightPending=!1;var k=S.session;if(k&&!k.destroyed){k.$bracketHighlight&&(k.$bracketHighlight.markerIds.forEach(function(ue){k.removeMarker(ue)}),k.$bracketHighlight=null);var F=S.getCursorPosition(),Y=S.getKeyboardHandler(),se=Y&&Y.$getDirectionForHighlight&&Y.$getDirectionForHighlight(S),ne=k.getMatchingBracketRanges(F,se);if(!ne){var $=new L(k,F.row,F.column).getCurrentToken();if($&&/\b(?:tag-open|tag-name)/.test($.type)){var q=k.getMatchingTags(F);q&&(ne=[q.openTagName,q.closeTagName])}}if(!ne&&k.$mode.getMatching&&(ne=k.$mode.getMatching(S.session)),!ne)return void(S.getHighlightIndentGuides()&&S.renderer.$textLayer.$highlightIndentGuide());var Q="ace_bracket";Array.isArray(ne)?1==ne.length&&(Q="ace_error_bracket"):ne=[ne],2==ne.length&&(0==m.comparePoints(ne[0].end,ne[1].start)?ne=[m.fromPoints(ne[0].start,ne[1].end)]:0==m.comparePoints(ne[0].start,ne[1].end)&&(ne=[m.fromPoints(ne[1].start,ne[0].end)])),k.$bracketHighlight={ranges:ne,markerIds:ne.map(function(ue){return k.addMarker(ue,Q,"text")})},S.getHighlightIndentGuides()&&S.renderer.$textLayer.$highlightIndentGuide()}},50)}},N.prototype.focus=function(){this.textInput.focus()},N.prototype.isFocused=function(){return this.textInput.isFocused()},N.prototype.blur=function(){this.textInput.blur()},N.prototype.onFocus=function(S){this.$isFocused||(this.$isFocused=!0,this.renderer.showCursor(),this.renderer.visualizeFocus(),this._emit("focus",S))},N.prototype.onBlur=function(S){this.$isFocused&&(this.$isFocused=!1,this.renderer.hideCursor(),this.renderer.visualizeBlur(),this._emit("blur",S))},N.prototype.$cursorChange=function(){this.renderer.updateCursor(),this.$highlightBrackets(),this.$updateHighlightActiveLine()},N.prototype.onDocumentChange=function(S){this.renderer.updateLines(S.start.row,S.start.row==S.end.row?S.end.row:1/0,this.session.$useWrapMode),this._signal("change",S),this.$cursorChange()},N.prototype.onTokenizerUpdate=function(S){var k=S.data;this.renderer.updateLines(k.first,k.last)},N.prototype.onScrollTopChange=function(){this.renderer.scrollToY(this.session.getScrollTop())},N.prototype.onScrollLeftChange=function(){this.renderer.scrollToX(this.session.getScrollLeft())},N.prototype.onCursorChange=function(){this.$cursorChange(),this._signal("changeSelection")},N.prototype.$updateHighlightActiveLine=function(){var k,S=this.getSession();if(this.$highlightActiveLine&&(("line"!=this.$selectionStyle||!this.selection.isMultiLine())&&(k=this.getCursorPosition()),this.renderer.theme&&this.renderer.theme.$selectionColorConflict&&!this.selection.isEmpty()&&(k=!1),this.renderer.$maxLines&&1===this.session.getLength()&&!(this.renderer.$minLines>1)&&(k=!1)),S.$highlightLineMarker&&!k)S.removeMarker(S.$highlightLineMarker.id),S.$highlightLineMarker=null;else if(!S.$highlightLineMarker&&k){var F=new m(k.row,k.column,k.row,1/0);F.id=S.addMarker(F,"ace_active-line","screenLine"),S.$highlightLineMarker=F}else k&&(S.$highlightLineMarker.start.row=k.row,S.$highlightLineMarker.end.row=k.row,S.$highlightLineMarker.start.column=k.column,S._signal("changeBackMarker"))},N.prototype.onSelectionChange=function(S){var k=this.session;if(k.$selectionMarker&&k.removeMarker(k.$selectionMarker),k.$selectionMarker=null,this.selection.isEmpty())this.$updateHighlightActiveLine();else{var F=this.selection.getRange(),Y=this.getSelectionStyle();k.$selectionMarker=k.addMarker(F,"ace_selection",Y)}var se=this.$highlightSelectedWord&&this.$getSelectionHighLightRegexp();this.session.highlight(se),this._signal("changeSelection")},N.prototype.$getSelectionHighLightRegexp=function(){var S=this.session,k=this.getSelectionRange();if(!k.isEmpty()&&!k.isMultiLine()){var F=k.start.column,Y=k.end.column,se=S.getLine(k.start.row),ne=se.substring(F,Y);if(!(ne.length>5e3)&&/[\w\d]/.test(ne)){var me=this.$search.$assembleRegExp({wholeWord:!0,caseSensitive:!0,needle:ne}),$=se.substring(F-1,Y+1);if(me.test($))return me}}},N.prototype.onChangeFrontMarker=function(){this.renderer.updateFrontMarkers()},N.prototype.onChangeBackMarker=function(){this.renderer.updateBackMarkers()},N.prototype.onChangeBreakpoint=function(){this.renderer.updateBreakpoints()},N.prototype.onChangeAnnotation=function(){this.renderer.setAnnotations(this.session.getAnnotations())},N.prototype.onChangeMode=function(S){this.renderer.updateText(),this._emit("changeMode",S)},N.prototype.onChangeWrapLimit=function(){this.renderer.updateFull()},N.prototype.onChangeWrapMode=function(){this.renderer.onResize(!0)},N.prototype.onChangeFold=function(){this.$updateHighlightActiveLine(),this.renderer.updateFull()},N.prototype.getSelectedText=function(){return this.session.getTextRange(this.getSelectionRange())},N.prototype.getCopyText=function(){var S=this.getSelectedText(),k=this.session.doc.getNewLineCharacter(),F=!1;if(!S&&this.$copyWithEmptySelection){F=!0;for(var Y=this.selection.getAllRanges(),se=0;seue.search(/\S|$/)){var $=ue.substr(se.column).search(/\S|$/);F.doc.removeInLine(se.row,se.column,se.column+$)}}this.clearSelection();var q=se.column,Q=F.getState(se.row),Me=(ue=F.getLine(se.row),Y.checkOutdent(Q,ue,S));if(F.insert(se,S),ne&&ne.selection&&this.selection.setSelectionRange(2==ne.selection.length?new m(se.row,q+ne.selection[0],se.row,q+ne.selection[1]):new m(se.row+ne.selection[0],ne.selection[1],se.row+ne.selection[2],ne.selection[3])),this.$enableAutoIndent){if(F.getDocument().isNewLine(S)){var Oe=Y.getNextLineIndent(Q,ue.slice(0,se.column),F.getTabString());F.insert({row:se.row+1,column:0},Oe)}Me&&Y.autoOutdent(Q,F,se.row)}},N.prototype.autoIndent=function(){var F,Y,S=this.session,k=S.getMode();if(this.selection.isEmpty())F=0,Y=S.doc.getLength()-1;else{var se=this.getSelectionRange();F=se.start.row,Y=se.end.row}for(var q,Q,ue,ne="",me="",$="",Me=S.getTabString(),Oe=F;Oe<=Y;Oe++)Oe>0&&(ne=S.getState(Oe-1),me=S.getLine(Oe-1),$=k.getNextLineIndent(ne,me,Me)),q=S.getLine(Oe),$!==(Q=k.$getIndent(q))&&(Q.length>0&&(ue=new m(Oe,0,Oe,Q.length),S.remove(ue)),$.length>0&&S.insert({row:Oe,column:0},$)),k.autoOutdent(ne,S,Oe)},N.prototype.onTextInput=function(S,k){if(!k)return this.keyBinding.onTextInput(S);this.startOperation({command:{name:"insertstring"}});var F=this.applyComposition.bind(this,S,k);this.selection.rangeCount?this.forEachSelection(F):F(),this.endOperation()},N.prototype.applyComposition=function(S,k){var F;(k.extendLeft||k.extendRight)&&((F=this.selection.getRange()).start.column-=k.extendLeft,F.end.column+=k.extendRight,F.start.column<0&&(F.start.row--,F.start.column+=this.session.getLine(F.start.row).length+1),this.selection.setRange(F),!S&&!F.isEmpty()&&this.remove()),(S||!this.selection.isEmpty())&&this.insert(S,!0),(k.restoreStart||k.restoreEnd)&&((F=this.selection.getRange()).start.column-=k.restoreStart,F.end.column-=k.restoreEnd,this.selection.setRange(F))},N.prototype.onCommandKey=function(S,k,F){return this.keyBinding.onCommandKey(S,k,F)},N.prototype.setOverwrite=function(S){this.session.setOverwrite(S)},N.prototype.getOverwrite=function(){return this.session.getOverwrite()},N.prototype.toggleOverwrite=function(){this.session.toggleOverwrite()},N.prototype.setScrollSpeed=function(S){this.setOption("scrollSpeed",S)},N.prototype.getScrollSpeed=function(){return this.getOption("scrollSpeed")},N.prototype.setDragDelay=function(S){this.setOption("dragDelay",S)},N.prototype.getDragDelay=function(){return this.getOption("dragDelay")},N.prototype.setSelectionStyle=function(S){this.setOption("selectionStyle",S)},N.prototype.getSelectionStyle=function(){return this.getOption("selectionStyle")},N.prototype.setHighlightActiveLine=function(S){this.setOption("highlightActiveLine",S)},N.prototype.getHighlightActiveLine=function(){return this.getOption("highlightActiveLine")},N.prototype.setHighlightGutterLine=function(S){this.setOption("highlightGutterLine",S)},N.prototype.getHighlightGutterLine=function(){return this.getOption("highlightGutterLine")},N.prototype.setHighlightSelectedWord=function(S){this.setOption("highlightSelectedWord",S)},N.prototype.getHighlightSelectedWord=function(){return this.$highlightSelectedWord},N.prototype.setAnimatedScroll=function(S){this.renderer.setAnimatedScroll(S)},N.prototype.getAnimatedScroll=function(){return this.renderer.getAnimatedScroll()},N.prototype.setShowInvisibles=function(S){this.renderer.setShowInvisibles(S)},N.prototype.getShowInvisibles=function(){return this.renderer.getShowInvisibles()},N.prototype.setDisplayIndentGuides=function(S){this.renderer.setDisplayIndentGuides(S)},N.prototype.getDisplayIndentGuides=function(){return this.renderer.getDisplayIndentGuides()},N.prototype.setHighlightIndentGuides=function(S){this.renderer.setHighlightIndentGuides(S)},N.prototype.getHighlightIndentGuides=function(){return this.renderer.getHighlightIndentGuides()},N.prototype.setShowPrintMargin=function(S){this.renderer.setShowPrintMargin(S)},N.prototype.getShowPrintMargin=function(){return this.renderer.getShowPrintMargin()},N.prototype.setPrintMarginColumn=function(S){this.renderer.setPrintMarginColumn(S)},N.prototype.getPrintMarginColumn=function(){return this.renderer.getPrintMarginColumn()},N.prototype.setReadOnly=function(S){this.setOption("readOnly",S)},N.prototype.getReadOnly=function(){return this.getOption("readOnly")},N.prototype.setBehavioursEnabled=function(S){this.setOption("behavioursEnabled",S)},N.prototype.getBehavioursEnabled=function(){return this.getOption("behavioursEnabled")},N.prototype.setWrapBehavioursEnabled=function(S){this.setOption("wrapBehavioursEnabled",S)},N.prototype.getWrapBehavioursEnabled=function(){return this.getOption("wrapBehavioursEnabled")},N.prototype.setShowFoldWidgets=function(S){this.setOption("showFoldWidgets",S)},N.prototype.getShowFoldWidgets=function(){return this.getOption("showFoldWidgets")},N.prototype.setFadeFoldWidgets=function(S){this.setOption("fadeFoldWidgets",S)},N.prototype.getFadeFoldWidgets=function(){return this.getOption("fadeFoldWidgets")},N.prototype.remove=function(S){this.selection.isEmpty()&&("left"==S?this.selection.selectLeft():this.selection.selectRight());var k=this.getSelectionRange();if(this.getBehavioursEnabled()){var F=this.session,Y=F.getState(k.start.row),se=F.getMode().transformAction(Y,"deletion",this,F,k);if(0===k.end.column){var ne=F.getTextRange(k);if("\n"==ne[ne.length-1]){var me=F.getLine(k.end.row);/^\s+$/.test(me)&&(k.end.column=me.length)}}se&&(k=se)}this.session.remove(k),this.clearSelection()},N.prototype.removeWordRight=function(){this.selection.isEmpty()&&this.selection.selectWordRight(),this.session.remove(this.getSelectionRange()),this.clearSelection()},N.prototype.removeWordLeft=function(){this.selection.isEmpty()&&this.selection.selectWordLeft(),this.session.remove(this.getSelectionRange()),this.clearSelection()},N.prototype.removeToLineStart=function(){this.selection.isEmpty()&&this.selection.selectLineStart(),this.selection.isEmpty()&&this.selection.selectLeft(),this.session.remove(this.getSelectionRange()),this.clearSelection()},N.prototype.removeToLineEnd=function(){this.selection.isEmpty()&&this.selection.selectLineEnd();var S=this.getSelectionRange();S.start.column==S.end.column&&S.start.row==S.end.row&&(S.end.column=0,S.end.row++),this.session.remove(S),this.clearSelection()},N.prototype.splitLine=function(){this.selection.isEmpty()||(this.session.remove(this.getSelectionRange()),this.clearSelection());var S=this.getCursorPosition();this.insert("\n"),this.moveCursorToPosition(S)},N.prototype.setGhostText=function(S,k){this.session.widgetManager||(this.session.widgetManager=new A(this.session),this.session.widgetManager.attach(this)),this.renderer.setGhostText(S,k)},N.prototype.removeGhostText=function(){this.session.widgetManager&&this.renderer.removeGhostText()},N.prototype.transposeLetters=function(){if(this.selection.isEmpty()){var S=this.getCursorPosition(),k=S.column;if(0!==k){var Y,se,F=this.session.getLine(S.row);k$.toLowerCase()?1:0});var se=new m(0,0,0,0);for(Y=S.first;Y<=S.last;Y++){var ne=k.getLine(Y);se.start.row=Y,se.end.row=Y,se.end.column=ne.length,k.replace(se,F[Y-S.first])}},N.prototype.toggleCommentLines=function(){var S=this.session.getState(this.getCursorPosition().row),k=this.$getSelectedRows();this.session.getMode().toggleCommentLines(S,this.session,k.first,k.last)},N.prototype.toggleBlockComment=function(){var S=this.getCursorPosition(),k=this.session.getState(S.row),F=this.getSelectionRange();this.session.getMode().toggleBlockComment(k,this.session,F,S)},N.prototype.getNumberAt=function(S,k){var F=/[\-]?[0-9]+(?:\.[0-9]+)?/g;F.lastIndex=0;for(var Y=this.session.getLine(S);F.lastIndex=k)return{value:se[0],start:se.index,end:se.index+se[0].length}}return null},N.prototype.modifyNumber=function(S){var k=this.selection.getCursor().row,F=this.selection.getCursor().column,Y=new m(k,F-1,k,F),se=this.session.getTextRange(Y);if(!isNaN(parseFloat(se))&&isFinite(se)){var ne=this.getNumberAt(k,F);if(ne){var me=ne.value.indexOf(".")>=0?ne.start+ne.value.indexOf(".")+1:ne.end,$=ne.start+ne.value.length-me,q=parseFloat(ne.value);q*=Math.pow(10,$),q+=S*=me!==ne.end&&F=me&&ne<=$&&(F=Mt,q.selection.clearSelection(),q.moveCursorTo(S,me+Y),q.selection.selectTo(S,$+Y)),me=$});for(var ue,Q=this.$toggleWordPairs,Me=0;Me=$&&me<=q&&Oe.match(/((?:https?|ftp):\/\/[\S]+)/)){Q=Oe.replace(/[\s:.,'";}\]]+$/,"");break}$=q}}catch(Xe){F={error:Xe}}finally{try{Me&&!Me.done&&(Y=ue.return)&&Y.call(ue)}finally{if(F)throw F.error}}return Q},N.prototype.openLink=function(){var S=this.selection.getCursor(),k=this.findLinkAt(S.row,S.column);return k&&window.open(k,"_blank"),null!=k},N.prototype.removeLines=function(){var S=this.$getSelectedRows();this.session.removeFullLines(S.first,S.last),this.clearSelection()},N.prototype.duplicateSelection=function(){var S=this.selection,k=this.session,F=S.getRange(),Y=S.isBackwards();if(F.isEmpty()){var se=F.start.row;k.duplicateLines(se,se)}else{var ne=Y?F.start:F.end,me=k.insert(ne,k.getTextRange(F),!1);F.start=ne,F.end=me,S.setSelectionRange(F,Y)}},N.prototype.moveLinesDown=function(){this.$moveLines(1,!1)},N.prototype.moveLinesUp=function(){this.$moveLines(-1,!1)},N.prototype.moveText=function(S,k,F){return this.session.moveText(S,k,F)},N.prototype.copyLinesUp=function(){this.$moveLines(-1,!0)},N.prototype.copyLinesDown=function(){this.$moveLines(1,!0)},N.prototype.$moveLines=function(S,k){var F,Y,se=this.selection;if(!se.inMultiSelectMode||this.inVirtualSelectionMode){var ne=se.toOrientedRange();F=this.$getSelectedRows(ne),Y=this.session.$moveLines(F.first,F.last,k?0:S),k&&-1==S&&(Y=0),ne.moveBy(Y,0),se.fromOrientedRange(ne)}else{var me=se.rangeList.ranges;se.rangeList.detach(this.session),this.inVirtualSelectionMode=!0;for(var $=0,q=0,Q=me.length,ue=0;ueXe+1)break;Xe=Be.last}for(ue--,$=this.session.$moveLines(Oe,Xe,k?0:S),k&&-1==S&&(Me=ue+1);Me<=ue;)me[Me].moveBy($,0),Me++;k||($=0),q+=$}se.fromOrientedRange(se.ranges[0]),se.rangeList.attach(this.session),this.inVirtualSelectionMode=!1}},N.prototype.$getSelectedRows=function(S){return S=(S||this.getSelectionRange()).collapseRows(),{first:this.session.getRowFoldStart(S.start.row),last:this.session.getRowFoldEnd(S.end.row)}},N.prototype.onCompositionStart=function(S){this.renderer.showComposition(S)},N.prototype.onCompositionUpdate=function(S){this.renderer.setCompositionText(S)},N.prototype.onCompositionEnd=function(){this.renderer.hideComposition()},N.prototype.getFirstVisibleRow=function(){return this.renderer.getFirstVisibleRow()},N.prototype.getLastVisibleRow=function(){return this.renderer.getLastVisibleRow()},N.prototype.isRowVisible=function(S){return S>=this.getFirstVisibleRow()&&S<=this.getLastVisibleRow()},N.prototype.isRowFullyVisible=function(S){return S>=this.renderer.getFirstFullyVisibleRow()&&S<=this.renderer.getLastFullyVisibleRow()},N.prototype.$getVisibleRowCount=function(){return this.renderer.getScrollBottomRow()-this.renderer.getScrollTopRow()+1},N.prototype.$moveByPage=function(S,k){var F=this.renderer,Y=this.renderer.layerConfig,se=S*Math.floor(Y.height/Y.lineHeight);!0===k?this.selection.$moveSelection(function(){this.moveCursorBy(se,0)}):!1===k&&(this.selection.moveCursorBy(se,0),this.selection.clearSelection());var ne=F.scrollTop;F.scrollBy(0,se*Y.lineHeight),null!=k&&F.scrollCursorIntoView(null,.5),F.animateScrolling(ne)},N.prototype.selectPageDown=function(){this.$moveByPage(1,!0)},N.prototype.selectPageUp=function(){this.$moveByPage(-1,!0)},N.prototype.gotoPageDown=function(){this.$moveByPage(1,!1)},N.prototype.gotoPageUp=function(){this.$moveByPage(-1,!1)},N.prototype.scrollPageDown=function(){this.$moveByPage(1)},N.prototype.scrollPageUp=function(){this.$moveByPage(-1)},N.prototype.scrollToRow=function(S){this.renderer.scrollToRow(S)},N.prototype.scrollToLine=function(S,k,F,Y){this.renderer.scrollToLine(S,k,F,Y)},N.prototype.centerSelection=function(){var S=this.getSelectionRange(),k={row:Math.floor(S.start.row+(S.end.row-S.start.row)/2),column:Math.floor(S.start.column+(S.end.column-S.start.column)/2)};this.renderer.alignCursor(k,.5)},N.prototype.getCursorPosition=function(){return this.selection.getCursor()},N.prototype.getCursorPositionScreen=function(){return this.session.documentToScreenPosition(this.getCursorPosition())},N.prototype.getSelectionRange=function(){return this.selection.getRange()},N.prototype.selectAll=function(){this.selection.selectAll()},N.prototype.clearSelection=function(){this.selection.clearSelection()},N.prototype.moveCursorTo=function(S,k){this.selection.moveCursorTo(S,k)},N.prototype.moveCursorToPosition=function(S){this.selection.moveCursorToPosition(S)},N.prototype.jumpToMatching=function(S,k){var F=this.getCursorPosition(),Y=new L(this.session,F.row,F.column),se=Y.getCurrentToken(),ne=0;se&&-1!==se.type.indexOf("tag-name")&&(se=Y.stepBackward());var me=se||Y.stepForward();if(me){var $,Me,q=!1,Q={},ue=F.column-me.start,Oe={")":"(","(":"(","]":"[","[":"[","{":"{","}":"{"};do{if(me.value.match(/[{}()\[\]]/g)){for(;ue1?Q[me.value]++:"=0;--ne)this.$tryReplace(F[ne],S)&&Y++;return this.selection.setSelectionRange(se),Y},N.prototype.$tryReplace=function(S,k){var F=this.session.getTextRange(S);return null!==(k=this.$search.replace(F,k))?(S.end=this.session.replace(S,k),S):null},N.prototype.getLastSearchOptions=function(){return this.$search.getOptions()},N.prototype.find=function(S,k,F){k||(k={}),"string"==typeof S||S instanceof RegExp?k.needle=S:"object"==typeof S&&o.mixin(k,S);var Y=this.selection.getRange();null==k.needle&&((S=this.session.getTextRange(Y)||this.$search.$options.needle)||(Y=this.session.getWordRange(Y.start.row,Y.start.column),S=this.session.getTextRange(Y)),this.$search.set({needle:S})),this.$search.set(k),k.start||this.$search.set({start:Y});var se=this.$search.find(this.session);return k.preventScroll?se:se?(this.revealRange(se,F),se):(k.backwards?Y.start=Y.end:Y.end=Y.start,void this.selection.setRange(Y))},N.prototype.findNext=function(S,k){this.find({skipCurrent:!0,backwards:!1},S,k)},N.prototype.findPrevious=function(S,k){this.find(S,{skipCurrent:!0,backwards:!0},k)},N.prototype.revealRange=function(S,k){this.session.unfold(S),this.selection.setSelectionRange(S);var F=this.renderer.scrollTop;this.renderer.scrollSelectionIntoView(S.start,S.end,.5),!1!==k&&this.renderer.animateScrolling(F)},N.prototype.undo=function(){this.session.getUndoManager().undo(this.session),this.renderer.scrollCursorIntoView(null,.5)},N.prototype.redo=function(){this.session.getUndoManager().redo(this.session),this.renderer.scrollCursorIntoView(null,.5)},N.prototype.destroy=function(){this.$toDestroy&&(this.$toDestroy.forEach(function(S){S.destroy()}),this.$toDestroy=null),this.$mouseHandler&&this.$mouseHandler.destroy(),this.renderer.destroy(),this._signal("destroy",this),this.session&&this.session.destroy(),this._$emitInputEvent&&this._$emitInputEvent.cancel(),this.removeAllListeners()},N.prototype.setAutoScrollEditorIntoView=function(S){if(S){var k,F=this,Y=!1;this.$scrollAnchor||(this.$scrollAnchor=document.createElement("div"));var se=this.$scrollAnchor;se.style.cssText="position:absolute",this.container.insertBefore(se,this.container.firstChild);var ne=this.on("changeSelection",function(){Y=!0}),me=this.renderer.on("beforeRender",function(){Y&&(k=F.renderer.container.getBoundingClientRect())}),$=this.renderer.on("afterRender",function(){if(Y&&k&&(F.isFocused()||F.searchBox&&F.searchBox.isFocused())){var q=F.renderer,Q=q.$cursorLayer.$pixelPos,ue=q.layerConfig,Me=Q.top-ue.offset;null!=(Y=Q.top>=0&&Me+k.top<0||!(Q.topwindow.innerHeight)&&null)&&(se.style.top=Me+"px",se.style.left=Q.left+"px",se.style.height=ue.lineHeight+"px",se.scrollIntoView(Y)),Y=k=null}});this.setAutoScrollEditorIntoView=function(q){q||(delete this.setAutoScrollEditorIntoView,this.off("changeSelection",ne),this.renderer.off("afterRender",$),this.renderer.off("beforeRender",me))}}},N.prototype.$resetCursorStyle=function(){var S=this.$cursorStyle||"ace",k=this.renderer.$cursorLayer;k&&(k.setSmoothBlinking(/smooth/.test(S)),k.isBlinking=!this.$readOnly&&"wide"!=S,v.setCssClass(k.element,"ace_slim-cursors",/slim/.test(S)))},N.prototype.prompt=function(S,k,F){var Y=this;w.loadModule("ace/ext/prompt",function(se){se.prompt(Y,S,k,F)})},N}();R.$uid=0,R.prototype.curOp=null,R.prototype.prevOp={},R.prototype.$mergeableCommands=["backspace","del","insertstring"],R.prototype.$toggleWordPairs=[["first","last"],["true","false"],["yes","no"],["width","height"],["top","bottom"],["right","left"],["on","off"],["x","y"],["get","set"],["max","min"],["horizontal","vertical"],["show","hide"],["add","remove"],["up","down"],["before","after"],["even","odd"],["in","out"],["inside","outside"],["next","previous"],["increase","decrease"],["attach","detach"],["&&","||"],["==","!="]],o.implement(R.prototype,_),w.defineOptions(R.prototype,"editor",{selectionStyle:{set:function(N){this.onSelectionChange(),this._signal("changeSelectionStyle",{data:N})},initialValue:"line"},highlightActiveLine:{set:function(){this.$updateHighlightActiveLine()},initialValue:!0},highlightSelectedWord:{set:function(N){this.$onSelectionChange()},initialValue:!0},readOnly:{set:function(N){this.textInput.setReadOnly(N),this.$resetCursorStyle()},initialValue:!1},copyWithEmptySelection:{set:function(N){this.textInput.setCopyWithEmptySelection(N)},initialValue:!1},cursorStyle:{set:function(N){this.$resetCursorStyle()},values:["ace","slim","smooth","wide"],initialValue:"ace"},mergeUndoDeltas:{values:[!1,!0,"always"],initialValue:!0},behavioursEnabled:{initialValue:!0},wrapBehavioursEnabled:{initialValue:!0},enableAutoIndent:{initialValue:!0},autoScrollEditorIntoView:{set:function(N){this.setAutoScrollEditorIntoView(N)}},keyboardHandler:{set:function(N){this.setKeyboardHandler(N)},get:function(){return this.$keybindingId},handlesSet:!0},value:{set:function(N){this.session.setValue(N)},get:function(){return this.getValue()},handlesSet:!0,hidden:!0},session:{set:function(N){this.setSession(N)},get:function(){return this.session},handlesSet:!0,hidden:!0},showLineNumbers:{set:function(N){this.renderer.$gutterLayer.setShowLineNumbers(N),this.renderer.$loop.schedule(this.renderer.CHANGE_GUTTER),N&&this.$relativeLineNumbers?j.attach(this):j.detach(this)},initialValue:!0},relativeLineNumbers:{set:function(N){this.$showLineNumbers&&N?j.attach(this):j.detach(this)}},placeholder:{set:function(N){this.$updatePlaceholder||(this.$updatePlaceholder=function(){var S=this.session&&(this.renderer.$composition||this.session.getLength()>1||this.session.getLine(0).length>0);if(S&&this.renderer.placeholderNode)this.renderer.off("afterRender",this.$updatePlaceholder),v.removeCssClass(this.container,"ace_hasPlaceholder"),this.renderer.placeholderNode.remove(),this.renderer.placeholderNode=null;else if(S||this.renderer.placeholderNode)!S&&this.renderer.placeholderNode&&(this.renderer.placeholderNode.textContent=this.$placeholder||"");else{this.renderer.on("afterRender",this.$updatePlaceholder),v.addCssClass(this.container,"ace_hasPlaceholder");var k=v.createElement("div");k.className="ace_placeholder",k.textContent=this.$placeholder||"",this.renderer.placeholderNode=k,this.renderer.content.appendChild(this.renderer.placeholderNode)}}.bind(this),this.on("input",this.$updatePlaceholder)),this.$updatePlaceholder()}},enableKeyboardAccessibility:{set:function(N){var F,S={name:"blurTextInput",description:"Set focus to the editor content div to allow tabbing through the page",bindKey:"Esc",exec:function(Y){Y.blur(),Y.renderer.scroller.focus()},readOnly:!0},k=function(Y){if(Y.target==this.renderer.scroller&&Y.keyCode===D.enter){Y.preventDefault();var se=this.getCursorPosition().row;this.isRowVisible(se)||this.scrollToLine(se,!0,!0),this.focus()}};N?(this.renderer.enableKeyboardAccessibility=!0,this.renderer.keyboardFocusClassName="ace_keyboard-focus",this.textInput.getElement().setAttribute("tabindex",-1),this.renderer.scroller.setAttribute("tabindex",0),this.renderer.scroller.setAttribute("role","group"),this.renderer.scroller.setAttribute("aria-roledescription",O("editor")),this.renderer.scroller.classList.add(this.renderer.keyboardFocusClassName),this.renderer.scroller.setAttribute("aria-label",O("Editor content, press Enter to start editing, press Escape to exit")),this.renderer.scroller.addEventListener("keyup",k.bind(this)),this.commands.addCommand(S),this.renderer.$gutter.setAttribute("tabindex",0),this.renderer.$gutter.setAttribute("aria-hidden",!1),this.renderer.$gutter.setAttribute("role","group"),this.renderer.$gutter.setAttribute("aria-roledescription",O("editor")),this.renderer.$gutter.setAttribute("aria-label",O("Editor gutter, press Enter to interact with controls using arrow keys, press Escape to exit")),this.renderer.$gutter.classList.add(this.renderer.keyboardFocusClassName),this.renderer.content.setAttribute("aria-hidden",!0),F||(F=new T(this)),F.addListener()):(this.renderer.enableKeyboardAccessibility=!1,this.textInput.getElement().setAttribute("tabindex",0),this.renderer.scroller.setAttribute("tabindex",-1),this.renderer.scroller.removeAttribute("role"),this.renderer.scroller.removeAttribute("aria-roledescription"),this.renderer.scroller.classList.remove(this.renderer.keyboardFocusClassName),this.renderer.scroller.removeAttribute("aria-label"),this.renderer.scroller.removeEventListener("keyup",k.bind(this)),this.commands.removeCommand(S),this.renderer.content.removeAttribute("aria-hidden"),this.renderer.$gutter.setAttribute("tabindex",-1),this.renderer.$gutter.setAttribute("aria-hidden",!0),this.renderer.$gutter.removeAttribute("role"),this.renderer.$gutter.removeAttribute("aria-roledescription"),this.renderer.$gutter.removeAttribute("aria-label"),this.renderer.$gutter.classList.remove(this.renderer.keyboardFocusClassName),F&&F.removeListener())},initialValue:!1},customScrollbar:"renderer",hScrollBarAlwaysVisible:"renderer",vScrollBarAlwaysVisible:"renderer",highlightGutterLine:"renderer",animatedScroll:"renderer",showInvisibles:"renderer",showPrintMargin:"renderer",printMarginColumn:"renderer",printMargin:"renderer",fadeFoldWidgets:"renderer",showFoldWidgets:"renderer",displayIndentGuides:"renderer",highlightIndentGuides:"renderer",showGutter:"renderer",fontSize:"renderer",fontFamily:"renderer",maxLines:"renderer",minLines:"renderer",scrollPastEnd:"renderer",fixedWidthGutter:"renderer",theme:"renderer",hasCssTransforms:"renderer",maxPixelHeight:"renderer",useTextareaForIME:"renderer",useResizeObserver:"renderer",useSvgGutterIcons:"renderer",showFoldedAnnotations:"renderer",scrollSpeed:"$mouseHandler",dragDelay:"$mouseHandler",dragEnabled:"$mouseHandler",focusTimeout:"$mouseHandler",tooltipFollowsMouse:"$mouseHandler",firstLineNumber:"session",overwrite:"session",newLineMode:"session",useWorker:"session",useSoftTabs:"session",navigateWithinSoftTabs:"session",tabSize:"session",wrap:"session",indentedSoftWrap:"session",foldStyle:"session",mode:"session"});var j={getText:function(N,S){return(Math.abs(N.selection.lead.row-S)||S+1+(S<9?"\xb7":""))+""},getWidth:function(N,S,k){return Math.max(S.toString().length,(k.lastRow+1).toString().length,2)*k.characterWidth},update:function(N,S){S.renderer.$loop.schedule(S.renderer.CHANGE_GUTTER)},attach:function(N){N.renderer.$gutterLayer.$renderer=this,N.on("changeSelection",this.update),this.update(null,N)},detach:function(N){N.renderer.$gutterLayer.$renderer==this&&(N.renderer.$gutterLayer.$renderer=null),N.off("changeSelection",this.update),this.update(null,N)}};p.Editor=R}),ace.define("ace/undomanager",["require","exports","module","ace/range"],function(n,p,C){"use strict";var b=function(){function T(){this.$maxRev=0,this.$fromUndo=!1,this.$undoDepth=1/0,this.reset()}return T.prototype.addSession=function(O){this.$session=O},T.prototype.add=function(O,E,D){if(!this.$fromUndo&&O!=this.$lastDelta){if(this.$keepRedoStack||(this.$redoStack.length=0),!1===E||!this.lastDeltas){this.lastDeltas=[];var R=this.$undoStack.length;R>this.$undoDepth-1&&this.$undoStack.splice(0,R-this.$undoDepth+1),this.$undoStack.push(this.lastDeltas),O.id=this.$rev=++this.$maxRev}("remove"==O.action||"insert"==O.action)&&(this.$lastDelta=O),this.lastDeltas.push(O)}},T.prototype.addSelection=function(O,E){this.selections.push({value:O,rev:E||this.$rev})},T.prototype.startNewGroup=function(){return this.lastDeltas=null,this.$rev},T.prototype.markIgnored=function(O,E){null==E&&(E=this.$rev+1);for(var D=this.$undoStack,R=D.length;R--;){var j=D[R][0];if(j.id<=O)break;j.id0},T.prototype.canRedo=function(){return this.$redoStack.length>0},T.prototype.bookmark=function(O){null==O&&(O=this.$rev),this.mark=O},T.prototype.isAtBookmark=function(){return this.$rev===this.mark},T.prototype.toJSON=function(){},T.prototype.fromJSON=function(){},T.prototype.$prettyPrint=function(O){return O?r(O):r(this.$undoStack)+"\n---\n"+r(this.$redoStack)},T}();b.prototype.hasUndo=b.prototype.canUndo,b.prototype.hasRedo=b.prototype.canRedo,b.prototype.isClean=b.prototype.isAtBookmark,b.prototype.markClean=b.prototype.bookmark;var v=n("./range").Range,a=v.comparePoints;function l(T){return{row:T.row,column:T.column}}function r(T){if(T=T||this,Array.isArray(T))return T.map(r).join("\n");var O="";return T.action?(O="insert"==T.action?"+":"-",O+="["+T.lines+"]"):T.value&&(O=Array.isArray(T.value)?T.value.map(u).join("\n"):u(T.value)),T.start&&(O+=u(T)),(T.id||T.rev)&&(O+="\t("+(T.id||T.rev)+")"),O}function u(T){return T.start.row+":"+T.start.column+"=>"+T.end.row+":"+T.end.column}function h(T,O){var E="insert"==T.action,D="insert"==O.action;if(E&&D)if(a(O.start,T.end)>=0)M(O,T,-1);else{if(!(a(O.start,T.start)<=0))return null;M(T,O,1)}else if(E&&!D)if(a(O.start,T.end)>=0)M(O,T,-1);else{if(!(a(O.end,T.start)<=0))return null;M(T,O,-1)}else if(!E&&D)if(a(O.start,T.start)>=0)M(O,T,1);else{if(!(a(O.start,T.start)<=0))return null;M(T,O,1)}else if(!E&&!D)if(a(O.start,T.start)>=0)M(O,T,1);else{if(!(a(O.end,T.start)<=0))return null;M(T,O,-1)}return[O,T]}function m(T,O){for(var E=T.length;E--;)for(var D=0;D=0?M(T,O,-1):(a(T.start,O.start)<=0||M(T,v.fromPoints(O.start,T.start),-1),M(O,T,1));else if(!E&&D)a(O.start,T.end)>=0?M(O,T,-1):(a(O.start,T.start)<=0||M(O,v.fromPoints(T.start,O.start),-1),M(T,O,1));else if(!E&&!D)if(a(O.start,T.end)>=0)M(O,T,-1);else{var R,j;if(!(a(O.end,T.start)<=0))return a(T.start,O.start)<0&&(R=T,T=w(T,O.start)),a(T.end,O.end)>0&&(j=w(T,O.end)),x(O.end,T.start,T.end,-1),j&&!R&&(T.lines=j.lines,T.start=j.start,T.end=j.end,j=T),[O,R,j].filter(Boolean);M(T,O,-1)}return[O,T]}function M(T,O,E){x(T.start,O.start,O.end,E),x(T.end,O.start,O.end,E)}function x(T,O,E,D){T.row==(1==D?O:E).row&&(T.column+=D*(E.column-O.column)),T.row+=D*(E.row-O.row)}function w(T,O){var E=T.lines,D=T.end;T.end=l(O);var R=T.end.row-T.start.row,j=E.splice(R,E.length),N=R?O.column:O.column-T.start.column;return E.push(j[0].substring(0,N)),j[0]=j[0].substr(N),{start:l(O),end:D,lines:j,action:T.action}}function L(T,O){O=function d(T){return{start:l(T.start),end:l(T.end),action:T.action,lines:T.lines.slice()}}(O);for(var E=T.length;E--;){for(var D=T[E],R=0;Rx&&(x=(M=h.getNextFoldLine(A=M.end.row+1,M))?M.start.row:1/0),A>_){for(;this.$lines.getLength()>L+1;)this.$lines.pop();break}(w=this.$lines.get(++L))?w.row=A:(w=this.$lines.createCell(A,u,this.session,d),this.$lines.push(w)),this.$renderCell(w,u,M,A),A++}this._signal("afterRender"),this.$updateGutterWidth(u)},r.prototype.$updateGutterWidth=function(u){var h=this.session,m=h.gutterRenderer||this.$renderer,_=h.$firstLineNumber,M=this.$lines.last()?this.$lines.last().text:"";(this.$fixedWidth||h.$useWrapMode)&&(M=h.getLength()+_-1);var x=m?m.getWidth(h,M,u):M.toString().length*u.characterWidth,w=this.$padding||this.$computePadding();(x+=w.left+w.right)!==this.gutterWidth&&!isNaN(x)&&(this.gutterWidth=x,this.element.parentNode.style.width=this.element.style.width=Math.ceil(this.gutterWidth)+"px",this._signal("changeGutterWidth",x))},r.prototype.$updateCursorRow=function(){if(this.$highlightGutterLine){var u=this.session.selection.getCursor();this.$cursorRow!==u.row&&(this.$cursorRow=u.row)}},r.prototype.updateLineHighlight=function(){if(this.$highlightGutterLine){var u=this.session.selection.cursor.row;if(this.$cursorRow=u,!this.$cursorCell||this.$cursorCell.row!=u){this.$cursorCell&&(this.$cursorCell.element.className=this.$cursorCell.element.className.replace("ace_gutter-active-line ",""));var h=this.$lines.cells;this.$cursorCell=null;for(var m=0;m=this.$cursorRow){if(_.row>this.$cursorRow){var M=this.session.getFoldLine(this.$cursorRow);if(!(m>0&&M&&M.start.row==h[m-1].row))break;_=h[m-1]}_.element.className="ace_gutter-active-line "+_.element.className,this.$cursorCell=_;break}}}}},r.prototype.scrollLines=function(u){var h=this.config;if(this.config=u,this.$updateCursorRow(),this.$lines.pageChanged(h,u))return this.update(u);this.$lines.moveContainer(u);var m=Math.min(u.lastRow+u.gutterOffset,this.session.getLength()-1),_=this.oldLastRow;if(this.oldLastRow=m,!h||_0;M--)this.$lines.shift();if(_>m)for(M=this.session.getFoldedRowCount(m+1,_);M>0;M--)this.$lines.pop();u.firstRow_&&this.$lines.push(this.$renderLines(u,_+1,m)),this.updateLineHighlight(),this._signal("afterRender"),this.$updateGutterWidth(u)},r.prototype.$renderLines=function(u,h,m){for(var _=[],M=h,x=this.session.getNextFoldLine(M),w=x?x.start.row:1/0;M>w&&(w=(x=this.session.getNextFoldLine(M=x.end.row+1,x))?x.start.row:1/0),!(M>m);){var L=this.$lines.createCell(M,u,this.session,d);this.$renderCell(L,u,x,M),_.push(L),M++}return _},r.prototype.$renderCell=function(u,h,m,_){var M=u.element,x=this.session,w=M.childNodes[0],L=M.childNodes[1],A=M.childNodes[2],T=A.firstChild,O=x.$firstLineNumber,E=x.$breakpoints,D=x.$decorations,R=x.gutterRenderer||this.$renderer,j=this.$showFoldWidgets&&x.foldWidgets,N=m?m.start.row:Number.MAX_VALUE,S=h.lineHeight+"px",k=this.$useSvgGutterIcons?"ace_gutter-cell_svg-icons ":"ace_gutter-cell ",F=this.$useSvgGutterIcons?"ace_icon_svg":"ace_icon",Y=(R?R.getText(x,_):_+O).toString();if(this.$highlightGutterLine&&(_==this.$cursorRow||m&&_=N&&this.$cursorRow<=m.end.row)&&(k+="ace_gutter-active-line ",this.$cursorCell!=u&&(this.$cursorCell&&(this.$cursorCell.element.className=this.$cursorCell.element.className.replace("ace_gutter-active-line ","")),this.$cursorCell=u)),E[_]&&(k+=E[_]),D[_]&&(k+=D[_]),this.$annotations[_]&&_!==N&&(k+=this.$annotations[_].className),j){var se=j[_];null==se&&(se=j[_]=x.getFoldWidget(_))}if(se){var ne="ace_fold-widget ace_"+se,me="start"==se&&_==N&&_m.right-h.right?"foldWidgets":void 0},r}();function d(r){var u=document.createTextNode("");r.appendChild(u);var h=b.createElement("span");r.appendChild(h);var m=b.createElement("span");r.appendChild(m);var _=b.createElement("span");return m.appendChild(_),r}l.prototype.$fixedWidth=!1,l.prototype.$highlightGutterLine=!0,l.prototype.$renderer="",l.prototype.$showLineNumbers=!0,l.prototype.$showFoldWidgets=!0,o.implement(l.prototype,a),p.Gutter=l}),ace.define("ace/layer/marker",["require","exports","module","ace/range","ace/lib/dom"],function(n,p,C){"use strict";var b=n("../range").Range,o=n("../lib/dom"),v=function(){function c(s){this.element=o.createElement("div"),this.element.className="ace_layer ace_marker-layer",s.appendChild(this.element)}return c.prototype.setPadding=function(s){this.$padding=s},c.prototype.setSession=function(s){this.session=s},c.prototype.setMarkers=function(s){this.markers=s},c.prototype.elt=function(s,l){var d=-1!=this.i&&this.element.childNodes[this.i];d?this.i++:(d=document.createElement("div"),this.element.appendChild(d),this.i=-1),d.style.cssText=l,d.className=s},c.prototype.update=function(s){if(s){var l;for(var d in this.config=s,this.i=0,this.markers){var r=this.markers[d];if(r.range){var u=r.range.clipRows(s.firstRow,s.lastRow);if(!u.isEmpty())if(u=u.toScreenRange(this.session),r.renderer){var h=this.$getTop(u.start.row,s);r.renderer(l,u,this.$padding+u.start.column*s.characterWidth,h,s)}else"fullLine"==r.type?this.drawFullLineMarker(l,u,r.clazz,s):"screenLine"==r.type?this.drawScreenLineMarker(l,u,r.clazz,s):u.isMultiLine()?"text"==r.type?this.drawTextMarker(l,u,r.clazz,s):this.drawMultiLineMarker(l,u,r.clazz,s):this.drawSingleLineMarker(l,u,r.clazz+" ace_start ace_br15",s)}else r.update(l,this,this.session,s)}if(-1!=this.i)for(;this.iL,M==_),r,M==_?0:1,u)},c.prototype.drawMultiLineMarker=function(s,l,d,r,u){var x,h=this.$padding,m=r.lineHeight,_=this.$getTop(l.start.row,r),M=h+l.start.column*r.characterWidth;if(u=u||"",this.session.$bidiHandler.isBidiRow(l.start.row)?((x=l.clone()).end.row=x.start.row,x.end.column=this.session.getLine(x.start.row).length,this.drawBidiSingleLineMarker(s,x,d+" ace_br1 ace_start",r,null,u)):this.elt(d+" ace_br1 ace_start","height:"+m+"px;right:0;top:"+_+"px;left:"+M+"px;"+(u||"")),this.session.$bidiHandler.isBidiRow(l.end.row)?((x=l.clone()).start.row=x.end.row,x.start.column=0,this.drawBidiSingleLineMarker(s,x,d+" ace_br12",r,null,u)):(_=this.$getTop(l.end.row,r),this.elt(d+" ace_br12","height:"+m+"px;width:"+l.end.column*r.characterWidth+"px;top:"+_+"px;left:"+h+"px;"+(u||""))),!((m=(l.end.row-l.start.row-1)*r.lineHeight)<=0)){_=this.$getTop(l.start.row+1,r);var L=(l.start.column?1:0)|(l.end.column?0:8);this.elt(d+(L?" ace_br"+L:""),"height:"+m+"px;right:0;top:"+_+"px;left:"+h+"px;"+(u||""))}},c.prototype.drawSingleLineMarker=function(s,l,d,r,u,h){if(this.session.$bidiHandler.isBidiRow(l.start.row))return this.drawBidiSingleLineMarker(s,l,d,r,u,h);var m=r.lineHeight,_=(l.end.column+(u||0)-l.start.column)*r.characterWidth,M=this.$getTop(l.start.row,r);this.elt(d,"height:"+m+"px;width:"+_+"px;top:"+M+"px;left:"+(this.$padding+l.start.column*r.characterWidth)+"px;"+(h||""))},c.prototype.drawBidiSingleLineMarker=function(s,l,d,r,u,h){var m=r.lineHeight,_=this.$getTop(l.start.row,r),M=this.$padding;this.session.$bidiHandler.getSelections(l.start.column,l.end.column).forEach(function(w){this.elt(d,"height:"+m+"px;width:"+(w.width+(u||0))+"px;top:"+_+"px;left:"+(M+w.left)+"px;"+(h||""))},this)},c.prototype.drawFullLineMarker=function(s,l,d,r,u){var h=this.$getTop(l.start.row,r),m=r.lineHeight;l.start.row!=l.end.row&&(m+=this.$getTop(l.end.row,r)-h),this.elt(d,"height:"+m+"px;top:"+h+"px;left:0;right:0;"+(u||""))},c.prototype.drawScreenLineMarker=function(s,l,d,r,u){var h=this.$getTop(l.start.row,r);this.elt(d,"height:"+r.lineHeight+"px;top:"+h+"px;left:0;right:0;"+(u||""))},c}();function a(c,s,l,d){return(c?1:0)|(s?2:0)|(l?4:0)|(d?8:0)}v.prototype.$padding=0,p.Marker=v}),ace.define("ace/layer/text",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/layer/lines","ace/lib/event_emitter","ace/config"],function(n,p,C){"use strict";var b=n("../lib/oop"),o=n("../lib/dom"),v=n("../lib/lang"),a=n("./lines").Lines,c=n("../lib/event_emitter").EventEmitter,s=n("../config").nls,l=function(){function d(r){this.dom=o,this.element=this.dom.createElement("div"),this.element.className="ace_layer ace_text-layer",r.appendChild(this.element),this.$updateEolChar=this.$updateEolChar.bind(this),this.$lines=new a(this.element)}return d.prototype.$updateEolChar=function(){var r=this.session.doc,h="\n"==r.getNewLineCharacter()&&"windows"!=r.getNewLineMode()?this.EOL_CHAR_LF:this.EOL_CHAR_CRLF;if(this.EOL_CHAR!=h)return this.EOL_CHAR=h,!0},d.prototype.setPadding=function(r){this.$padding=r,this.element.style.margin="0 "+r+"px"},d.prototype.getLineHeight=function(){return this.$fontMetrics.$characterSize.height||0},d.prototype.getCharacterWidth=function(){return this.$fontMetrics.$characterSize.width||0},d.prototype.$setFontMetrics=function(r){this.$fontMetrics=r,this.$fontMetrics.on("changeCharacterSize",function(u){this._signal("changeCharacterSize",u)}.bind(this)),this.$pollSizeChanges()},d.prototype.checkForSizeChanges=function(){this.$fontMetrics.checkForSizeChanges()},d.prototype.$pollSizeChanges=function(){return this.$pollSizeChangesTimer=this.$fontMetrics.$pollSizeChanges()},d.prototype.setSession=function(r){this.session=r,r&&this.$computeTabString()},d.prototype.setShowInvisibles=function(r){return this.showInvisibles!=r&&(this.showInvisibles=r,"string"==typeof r?(this.showSpaces=/tab/i.test(r),this.showTabs=/space/i.test(r),this.showEOL=/eol/i.test(r)):this.showSpaces=this.showTabs=this.showEOL=r,this.$computeTabString(),!0)},d.prototype.setDisplayIndentGuides=function(r){return this.displayIndentGuides!=r&&(this.displayIndentGuides=r,this.$computeTabString(),!0)},d.prototype.setHighlightIndentGuides=function(r){return this.$highlightIndentGuides!==r&&(this.$highlightIndentGuides=r,r)},d.prototype.$computeTabString=function(){var r=this.session.getTabSize();this.tabSize=r;for(var u=this.$tabStrings=[0],h=1;hT&&(T=(A=this.session.getNextFoldLine(L=A.end.row+1,A))?A.start.row:1/0),!(L>_);){var O=M[x++];if(O){this.dom.removeChildren(O),this.$renderLine(O,L,L==T&&A),w&&(O.style.top=this.$lines.computeLineTop(L,r,this.session)+"px");var E=r.lineHeight*this.session.getRowLength(L)+"px";O.style.height!=E&&(w=!0,O.style.height=E)}L++}if(w)for(;x0;_--)this.$lines.shift();if(u.lastRow>r.lastRow)for(_=this.session.getFoldedRowCount(r.lastRow+1,u.lastRow);_>0;_--)this.$lines.pop();r.firstRowu.lastRow&&this.$lines.push(this.$renderLinesFragment(r,u.lastRow+1,r.lastRow)),this.$highlightIndentGuide()},d.prototype.$renderLinesFragment=function(r,u,h){for(var m=[],_=u,M=this.session.getNextFoldLine(_),x=M?M.start.row:1/0;_>x&&(x=(M=this.session.getNextFoldLine(_=M.end.row+1,M))?M.start.row:1/0),!(_>h);){var w=this.$lines.createCell(_,r,this.session),L=w.element;this.dom.removeChildren(L),o.setStyle(L.style,"height",this.$lines.computeLineHeight(_,r,this.session)+"px"),o.setStyle(L.style,"top",this.$lines.computeLineTop(_,r,this.session)+"px"),this.$renderLine(L,_,_==x&&M),L.className=this.$useLineGroups()?"ace_line_group":"ace_line",m.push(w),_++}return m},d.prototype.update=function(r){this.$lines.moveContainer(r),this.config=r;for(var u=r.firstRow,h=r.lastRow,m=this.$lines;m.getLength();)m.pop();m.push(this.$renderLinesFragment(r,u,h))},d.prototype.$renderToken=function(r,u,h,m){for(var w,_=this,M=/(\t)|( +)|([\x00-\x1f\x80-\xa0\xad\u1680\u180E\u2000-\u200f\u2028\u2029\u202F\u205F\uFEFF\uFFF9-\uFFFC\u2066\u2067\u2068\u202A\u202B\u202D\u202E\u202C\u2069]+)|(\u3000)|([\u1100-\u115F\u11A3-\u11A7\u11FA-\u11FF\u2329-\u232A\u2E80-\u2E99\u2E9B-\u2EF3\u2F00-\u2FD5\u2FF0-\u2FFB\u3001-\u303E\u3041-\u3096\u3099-\u30FF\u3105-\u312D\u3131-\u318E\u3190-\u31BA\u31C0-\u31E3\u31F0-\u321E\u3220-\u3247\u3250-\u32FE\u3300-\u4DBF\u4E00-\uA48C\uA490-\uA4C6\uA960-\uA97C\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFAFF\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE66\uFE68-\uFE6B\uFF01-\uFF60\uFFE0-\uFFE6]|[\uD800-\uDBFF][\uDC00-\uDFFF])/g,x=this.dom.createFragment(this.element),L=0;w=M.exec(m);){var A=w[1],T=w[2],O=w[3],E=w[4],D=w[5];if(_.showSpaces||!T){var R=L!=w.index?m.slice(L,w.index):"";if(L=w.index+w[0].length,R&&x.appendChild(this.dom.createTextNode(R,this.element)),A){var j=_.session.getScreenTabSize(u+w.index);x.appendChild(_.$tabStrings[j].cloneNode(!0)),u+=j-1}else T?_.showSpaces?((N=this.dom.createElement("span")).className="ace_invisible ace_invisible_space",N.textContent=v.stringRepeat(_.SPACE_CHAR,T.length),x.appendChild(N)):x.appendChild(this.com.createTextNode(T,this.element)):O?((N=this.dom.createElement("span")).className="ace_invisible ace_invisible_space ace_invalid",N.textContent=v.stringRepeat(_.SPACE_CHAR,O.length),x.appendChild(N)):E?(u+=1,(N=this.dom.createElement("span")).style.width=2*_.config.characterWidth+"px",N.className=_.showSpaces?"ace_cjk ace_invisible ace_invisible_space":"ace_cjk",N.textContent=_.showSpaces?_.SPACE_CHAR:E,x.appendChild(N)):D&&(u+=1,(N=this.dom.createElement("span")).style.width=2*_.config.characterWidth+"px",N.className="ace_cjk",N.textContent=D,x.appendChild(N))}}if(x.appendChild(this.dom.createTextNode(L?m.slice(L):m,this.element)),this.$textToken[h.type])r.appendChild(x);else{var S="ace_"+h.type.replace(/\./g," ace_"),N=this.dom.createElement("span");"fold"==h.type&&(N.style.width=h.value.length*this.config.characterWidth+"px",N.setAttribute("title",s("Unfold code"))),N.className=S,N.appendChild(x),r.appendChild(N)}return u+m.length},d.prototype.renderIndentGuide=function(r,u,h){var m=u.search(this.$indentGuideRe);if(m<=0||m>=h)return u;if(" "==u[0]){for(var _=(m-=m%this.tabSize)/this.tabSize,M=0;M<_;M++)r.appendChild(this.$tabStrings[" "].cloneNode(!0));return this.$highlightIndentGuide(),u.substr(m)}if("\t"==u[0]){for(M=0;MM[x].start.row?-1:1;break}if(!this.$highlightIndentGuideMarker.end&&""!==r[u.row]&&u.column===r[u.row].length)for(this.$highlightIndentGuideMarker.dir=1,x=u.row+1;x0)for(var _=0;_=this.$highlightIndentGuideMarker.start+1){if(m.row>=this.$highlightIndentGuideMarker.end)break;this.$setIndentGuideActive(m,u)}}else for(h=r.length-1;h>=0;h--)if(m=r[h],this.$highlightIndentGuideMarker.end&&m.row=M;)x=this.$renderToken(w,x,A,T.substring(0,M-m)),T=T.substring(M-m),m=M,w=this.$createLineElement(),r.appendChild(w),w.appendChild(this.dom.createTextNode(v.stringRepeat("\xa0",h.indent),this.element)),x=0,M=h[++_]||Number.MAX_VALUE;0!=T.length&&(m+=T.length,x=this.$renderToken(w,x,A,T))}}h[h.length-1]>this.MAX_LINE_LENGTH&&this.$renderOverflowMessage(w,x,null,"",!0)},d.prototype.$renderSimpleLine=function(r,u){for(var h=0,m=0;mthis.MAX_LINE_LENGTH)return this.$renderOverflowMessage(r,h,_,M);h=this.$renderToken(r,h,_,M)}}},d.prototype.$renderOverflowMessage=function(r,u,h,m,_){h&&this.$renderToken(r,u,h,m.slice(0,this.MAX_LINE_LENGTH-u));var M=this.dom.createElement("span");M.className="ace_inline_button ace_keyword ace_toggle_wrap",M.textContent=_?"":"",r.appendChild(M)},d.prototype.$renderLine=function(r,u,h){if(!h&&0!=h&&(h=this.session.getFoldLine(u)),h)var m=this.$getFoldLineTokens(u,h);else m=this.session.getTokens(u);var _=r;if(m.length){var M=this.session.getRowSplitData(u);M&&M.length?(this.$renderWrappedLine(r,m,M),_=r.lastChild):(_=r,this.$useLineGroups()&&(_=this.$createLineElement(),r.appendChild(_)),this.$renderSimpleLine(_,m))}else this.$useLineGroups()&&(_=this.$createLineElement(),r.appendChild(_));if(this.showEOL&&_){h&&(u=h.end.row);var x=this.dom.createElement("span");x.className="ace_invisible ace_invisible_eol",x.textContent=u==this.session.getLength()-1?this.EOF_CHAR:this.EOL_CHAR,_.appendChild(x)}},d.prototype.$getFoldLineTokens=function(r,u){var h=this.session,m=[],M=h.getTokens(r);return u.walk(function(x,w,L,A,T){null!=x?m.push({type:"fold",value:x}):(T&&(M=h.getTokens(w)),M.length&&function _(x,w,L){for(var A=0,T=0;T+x[A].value.lengthL-w&&(O=O.substring(0,L-w)),m.push({type:x[A].type,value:O}),T=w+O.length,A+=1);TL?{type:x[A].type,value:O.substring(0,L-T)}:x[A]),T+=O.length,A+=1}}(M,A,L))},u.end.row,this.session.getLine(u.end.row).length),m},d.prototype.$useLineGroups=function(){return this.session.getUseWrapMode()},d}();l.prototype.$textToken={text:!0,rparen:!0,lparen:!0},l.prototype.EOF_CHAR="\xb6",l.prototype.EOL_CHAR_LF="\xac",l.prototype.EOL_CHAR_CRLF="\xa4",l.prototype.EOL_CHAR=l.prototype.EOL_CHAR_LF,l.prototype.TAB_CHAR="\u2014",l.prototype.SPACE_CHAR="\xb7",l.prototype.$padding=0,l.prototype.MAX_LINE_LENGTH=1e4,l.prototype.showInvisibles=!1,l.prototype.showSpaces=!1,l.prototype.showTabs=!1,l.prototype.showEOL=!1,l.prototype.displayIndentGuides=!0,l.prototype.$highlightIndentGuides=!0,l.prototype.$tabStrings=[],l.prototype.destroy={},l.prototype.onChangeTabSize=l.prototype.$computeTabString,b.implement(l.prototype,c),p.Text=l}),ace.define("ace/layer/cursor",["require","exports","module","ace/lib/dom"],function(n,p,C){"use strict";var b=n("../lib/dom"),o=function(){function v(a){this.element=b.createElement("div"),this.element.className="ace_layer ace_cursor-layer",a.appendChild(this.element),this.isVisible=!1,this.isBlinking=!0,this.blinkInterval=1e3,this.smoothBlinking=!1,this.cursors=[],this.cursor=this.addCursor(),b.addCssClass(this.element,"ace_hidden-cursors"),this.$updateCursors=this.$updateOpacity.bind(this)}return v.prototype.$updateOpacity=function(a){for(var c=this.cursors,s=c.length;s--;)b.setStyle(c[s].style,"opacity",a?"":"0")},v.prototype.$startCssAnimation=function(){for(var a=this.cursors,c=a.length;c--;)a[c].style.animationDuration=this.blinkInterval+"ms";this.$isAnimating=!0,setTimeout(function(){this.$isAnimating&&b.addCssClass(this.element,"ace_animate-blinking")}.bind(this))},v.prototype.$stopCssAnimation=function(){this.$isAnimating=!1,b.removeCssClass(this.element,"ace_animate-blinking")},v.prototype.setPadding=function(a){this.$padding=a},v.prototype.setSession=function(a){this.session=a},v.prototype.setBlinking=function(a){a!=this.isBlinking&&(this.isBlinking=a,this.restartTimer())},v.prototype.setBlinkInterval=function(a){a!=this.blinkInterval&&(this.blinkInterval=a,this.restartTimer())},v.prototype.setSmoothBlinking=function(a){a!=this.smoothBlinking&&(this.smoothBlinking=a,b.setCssClass(this.element,"ace_smooth-blinking",a),this.$updateCursors(!0),this.restartTimer())},v.prototype.addCursor=function(){var a=b.createElement("div");return a.className="ace_cursor",this.element.appendChild(a),this.cursors.push(a),a},v.prototype.removeCursor=function(){if(this.cursors.length>1){var a=this.cursors.pop();return a.parentNode.removeChild(a),a}},v.prototype.hideCursor=function(){this.isVisible=!1,b.addCssClass(this.element,"ace_hidden-cursors"),this.restartTimer()},v.prototype.showCursor=function(){this.isVisible=!0,b.removeCssClass(this.element,"ace_hidden-cursors"),this.restartTimer()},v.prototype.restartTimer=function(){var a=this.$updateCursors;if(clearInterval(this.intervalId),clearTimeout(this.timeoutId),this.$stopCssAnimation(),this.smoothBlinking&&(this.$isSmoothBlinking=!1,b.removeCssClass(this.element,"ace_smooth-blinking")),a(!0),this.isBlinking&&this.blinkInterval&&this.isVisible)if(this.smoothBlinking&&(this.$isSmoothBlinking=!0,setTimeout(function(){this.$isSmoothBlinking&&b.addCssClass(this.element,"ace_smooth-blinking")}.bind(this))),b.HAS_CSS_ANIMATION)this.$startCssAnimation();else{var c=function(){this.timeoutId=setTimeout(function(){a(!1)},.6*this.blinkInterval)}.bind(this);this.intervalId=setInterval(function(){a(!0),c()},this.blinkInterval),c()}else this.$stopCssAnimation()},v.prototype.getPixelPosition=function(a,c){if(!this.config||!this.session)return{left:0,top:0};a||(a=this.session.selection.getCursor());var s=this.session.documentToScreenPosition(a);return{left:this.$padding+(this.session.$bidiHandler.isBidiRow(s.row,a.row)?this.session.$bidiHandler.getPosLeft(s.column):s.column*this.config.characterWidth),top:(s.row-(c?this.config.firstRowScreen:0))*this.config.lineHeight}},v.prototype.isCursorInView=function(a,c){return a.top>=0&&a.topa.height+a.offset||r.top<0)&&s>1)){var u=this.cursors[l++]||this.addCursor(),h=u.style;this.drawCursor?this.drawCursor(u,r,a,c[s],this.session):this.isCursorInView(r,a)?(b.setStyle(h,"display","block"),b.translate(u,r.left,r.top),b.setStyle(h,"width",Math.round(a.characterWidth)+"px"),b.setStyle(h,"height",a.lineHeight+"px")):b.setStyle(h,"display","none")}}for(;this.cursors.length>l;)this.removeCursor();var m=this.session.getOverwrite();this.$setOverwrite(m),this.$pixelPos=r,this.restartTimer()},v.prototype.$setOverwrite=function(a){a!=this.overwrite&&(this.overwrite=a,a?b.addCssClass(this.element,"ace_overwrite-cursors"):b.removeCssClass(this.element,"ace_overwrite-cursors"))},v.prototype.destroy=function(){clearInterval(this.intervalId),clearTimeout(this.timeoutId)},v}();o.prototype.$padding=0,o.prototype.drawCursor=null,p.Cursor=o}),ace.define("ace/scrollbar",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/event","ace/lib/event_emitter"],function(n,p,C){"use strict";var u,b=this&&this.__extends||(u=function(h,m){return(u=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(_,M){_.__proto__=M}||function(_,M){for(var x in M)Object.prototype.hasOwnProperty.call(M,x)&&(_[x]=M[x])})(h,m)},function(h,m){if("function"!=typeof m&&null!==m)throw new TypeError("Class extends value "+String(m)+" is not a constructor or null");function _(){this.constructor=h}u(h,m),h.prototype=null===m?Object.create(m):(_.prototype=m.prototype,new _)}),o=n("./lib/oop"),v=n("./lib/dom"),a=n("./lib/event"),c=n("./lib/event_emitter").EventEmitter,s=32768,l=function(){function u(h,m){this.element=v.createElement("div"),this.element.className="ace_scrollbar ace_scrollbar"+m,this.inner=v.createElement("div"),this.inner.className="ace_scrollbar-inner",this.inner.textContent="\xa0",this.element.appendChild(this.inner),h.appendChild(this.element),this.setVisible(!1),this.skipEvent=!1,a.addListener(this.element,"scroll",this.onScroll.bind(this)),a.addListener(this.element,"mousedown",a.preventDefault)}return u.prototype.setVisible=function(h){this.element.style.display=h?"":"none",this.isVisible=h,this.coeff=1},u}();o.implement(l.prototype,c);var d=function(u){function h(m,_){var M=u.call(this,m,"-v")||this;return M.scrollTop=0,M.scrollHeight=0,_.$scrollbarWidth=M.width=v.scrollbarWidth(m.ownerDocument),M.inner.style.width=M.element.style.width=(M.width||15)+5+"px",M.$minWidth=0,M}return b(h,u),h.prototype.onScroll=function(){if(!this.skipEvent){if(this.scrollTop=this.element.scrollTop,1!=this.coeff){var m=this.element.clientHeight/this.scrollHeight;this.scrollTop=this.scrollTop*(1-m)/(this.coeff-m)}this._emit("scroll",{data:this.scrollTop})}this.skipEvent=!1},h.prototype.getWidth=function(){return Math.max(this.isVisible?this.width:0,this.$minWidth||0)},h.prototype.setHeight=function(m){this.element.style.height=m+"px"},h.prototype.setScrollHeight=function(m){this.scrollHeight=m,m>s?(this.coeff=s/m,m=s):1!=this.coeff&&(this.coeff=1),this.inner.style.height=m+"px"},h.prototype.setScrollTop=function(m){this.scrollTop!=m&&(this.skipEvent=!0,this.scrollTop=m,this.element.scrollTop=m*this.coeff)},h}(l);d.prototype.setInnerHeight=d.prototype.setScrollHeight;var r=function(u){function h(m,_){var M=u.call(this,m,"-h")||this;return M.scrollLeft=0,M.height=_.$scrollbarWidth,M.inner.style.height=M.element.style.height=(M.height||15)+5+"px",M}return b(h,u),h.prototype.onScroll=function(){this.skipEvent||(this.scrollLeft=this.element.scrollLeft,this._emit("scroll",{data:this.scrollLeft})),this.skipEvent=!1},h.prototype.getHeight=function(){return this.isVisible?this.height:0},h.prototype.setWidth=function(m){this.element.style.width=m+"px"},h.prototype.setInnerWidth=function(m){this.inner.style.width=m+"px"},h.prototype.setScrollWidth=function(m){this.inner.style.width=m+"px"},h.prototype.setScrollLeft=function(m){this.scrollLeft!=m&&(this.skipEvent=!0,this.scrollLeft=this.element.scrollLeft=m)},h}(l);p.ScrollBar=d,p.ScrollBarV=d,p.ScrollBarH=r,p.VScrollBar=d,p.HScrollBar=r}),ace.define("ace/scrollbar_custom",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/event","ace/lib/event_emitter"],function(n,p,C){"use strict";var r,b=this&&this.__extends||(r=function(u,h){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(m,_){m.__proto__=_}||function(m,_){for(var M in _)Object.prototype.hasOwnProperty.call(_,M)&&(m[M]=_[M])})(u,h)},function(u,h){if("function"!=typeof h&&null!==h)throw new TypeError("Class extends value "+String(h)+" is not a constructor or null");function m(){this.constructor=u}r(u,h),u.prototype=null===h?Object.create(h):(m.prototype=h.prototype,new m)}),o=n("./lib/oop"),v=n("./lib/dom"),a=n("./lib/event"),c=n("./lib/event_emitter").EventEmitter;v.importCssString(".ace_editor>.ace_sb-v div, .ace_editor>.ace_sb-h div{\n position: absolute;\n background: rgba(128, 128, 128, 0.6);\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n border: 1px solid #bbb;\n border-radius: 2px;\n z-index: 8;\n}\n.ace_editor>.ace_sb-v, .ace_editor>.ace_sb-h {\n position: absolute;\n z-index: 6;\n background: none;\n overflow: hidden!important;\n}\n.ace_editor>.ace_sb-v {\n z-index: 6;\n right: 0;\n top: 0;\n width: 12px;\n}\n.ace_editor>.ace_sb-v div {\n z-index: 8;\n right: 0;\n width: 100%;\n}\n.ace_editor>.ace_sb-h {\n bottom: 0;\n left: 0;\n height: 12px;\n}\n.ace_editor>.ace_sb-h div {\n bottom: 0;\n height: 100%;\n}\n.ace_editor>.ace_sb_grabbed {\n z-index: 8;\n background: #000;\n}","ace_scrollbar.css",!1);var s=function(){function r(u,h){this.element=v.createElement("div"),this.element.className="ace_sb"+h,this.inner=v.createElement("div"),this.inner.className="",this.element.appendChild(this.inner),this.VScrollWidth=12,this.HScrollHeight=12,u.appendChild(this.element),this.setVisible(!1),this.skipEvent=!1,a.addMultiMouseDownListener(this.element,[500,300,300],this,"onMouseDown")}return r.prototype.setVisible=function(u){this.element.style.display=u?"":"none",this.isVisible=u,this.coeff=1},r}();o.implement(s.prototype,c);var l=function(r){function u(h,m){var _=r.call(this,h,"-v")||this;return _.scrollTop=0,_.scrollHeight=0,_.parent=h,_.width=_.VScrollWidth,_.renderer=m,_.inner.style.width=_.element.style.width=(_.width||15)+"px",_.$minWidth=0,_}return b(u,r),u.prototype.onMouseDown=function(h,m){if("mousedown"===h&&0===a.getButton(m)&&2!==m.detail){if(m.target===this.inner){var _=this,M=m.clientY,L=m.clientY,A=this.thumbTop;a.capture(this.inner,function(D){M=D.clientY},function(){clearInterval(O)});var O=setInterval(function(){if(void 0!==M){var D=_.scrollTopFromThumbTop(A+M-L);D!==_.scrollTop&&_._emit("scroll",{data:D})}},20);return a.preventDefault(m)}var E=m.clientY-this.element.getBoundingClientRect().top-this.thumbHeight/2;return this._emit("scroll",{data:this.scrollTopFromThumbTop(E)}),a.preventDefault(m)}},u.prototype.getHeight=function(){return this.height},u.prototype.scrollTopFromThumbTop=function(h){var m=h*(this.pageHeight-this.viewHeight)/(this.slideHeight-this.thumbHeight);return(m>>=0)<0?m=0:m>this.pageHeight-this.viewHeight&&(m=this.pageHeight-this.viewHeight),m},u.prototype.getWidth=function(){return Math.max(this.isVisible?this.width:0,this.$minWidth||0)},u.prototype.setHeight=function(h){this.height=Math.max(0,h),this.slideHeight=this.height,this.viewHeight=this.height,this.setScrollHeight(this.pageHeight,!0)},u.prototype.setScrollHeight=function(h,m){this.pageHeight===h&&!m||(this.pageHeight=h,this.thumbHeight=this.slideHeight*this.viewHeight/this.pageHeight,this.thumbHeight>this.slideHeight&&(this.thumbHeight=this.slideHeight),this.thumbHeight<15&&(this.thumbHeight=15),this.inner.style.height=this.thumbHeight+"px",this.scrollTop>this.pageHeight-this.viewHeight&&(this.scrollTop=this.pageHeight-this.viewHeight,this.scrollTop<0&&(this.scrollTop=0),this._emit("scroll",{data:this.scrollTop})))},u.prototype.setScrollTop=function(h){this.scrollTop=h,h<0&&(h=0),this.thumbTop=h*(this.slideHeight-this.thumbHeight)/(this.pageHeight-this.viewHeight),this.inner.style.top=this.thumbTop+"px"},u}(s);l.prototype.setInnerHeight=l.prototype.setScrollHeight;var d=function(r){function u(h,m){var _=r.call(this,h,"-h")||this;return _.scrollLeft=0,_.scrollWidth=0,_.height=_.HScrollHeight,_.inner.style.height=_.element.style.height=(_.height||12)+"px",_.renderer=m,_}return b(u,r),u.prototype.onMouseDown=function(h,m){if("mousedown"===h&&0===a.getButton(m)&&2!==m.detail){if(m.target===this.inner){var _=this,M=m.clientX,L=m.clientX,A=this.thumbLeft;a.capture(this.inner,function(D){M=D.clientX},function(){clearInterval(O)});var O=setInterval(function(){if(void 0!==M){var D=_.scrollLeftFromThumbLeft(A+M-L);D!==_.scrollLeft&&_._emit("scroll",{data:D})}},20);return a.preventDefault(m)}var E=m.clientX-this.element.getBoundingClientRect().left-this.thumbWidth/2;return this._emit("scroll",{data:this.scrollLeftFromThumbLeft(E)}),a.preventDefault(m)}},u.prototype.getHeight=function(){return this.isVisible?this.height:0},u.prototype.scrollLeftFromThumbLeft=function(h){var m=h*(this.pageWidth-this.viewWidth)/(this.slideWidth-this.thumbWidth);return(m>>=0)<0?m=0:m>this.pageWidth-this.viewWidth&&(m=this.pageWidth-this.viewWidth),m},u.prototype.setWidth=function(h){this.width=Math.max(0,h),this.element.style.width=this.width+"px",this.slideWidth=this.width,this.viewWidth=this.width,this.setScrollWidth(this.pageWidth,!0)},u.prototype.setScrollWidth=function(h,m){this.pageWidth===h&&!m||(this.pageWidth=h,this.thumbWidth=this.slideWidth*this.viewWidth/this.pageWidth,this.thumbWidth>this.slideWidth&&(this.thumbWidth=this.slideWidth),this.thumbWidth<15&&(this.thumbWidth=15),this.inner.style.width=this.thumbWidth+"px",this.scrollLeft>this.pageWidth-this.viewWidth&&(this.scrollLeft=this.pageWidth-this.viewWidth,this.scrollLeft<0&&(this.scrollLeft=0),this._emit("scroll",{data:this.scrollLeft})))},u.prototype.setScrollLeft=function(h){this.scrollLeft=h,h<0&&(h=0),this.thumbLeft=h*(this.slideWidth-this.thumbWidth)/(this.pageWidth-this.viewWidth),this.inner.style.left=this.thumbLeft+"px"},u}(s);d.prototype.setInnerWidth=d.prototype.setScrollWidth,p.ScrollBar=l,p.ScrollBarV=l,p.ScrollBarH=d,p.VScrollBar=l,p.HScrollBar=d}),ace.define("ace/renderloop",["require","exports","module","ace/lib/event"],function(n,p,C){"use strict";var b=n("./lib/event"),o=function(){function v(a,c){this.onRender=a,this.pending=!1,this.changes=0,this.$recursionLimit=2,this.window=c||window;var s=this;this._flush=function(l){s.pending=!1;var d=s.changes;if(d&&(b.blockIdle(100),s.changes=0,s.onRender(d)),s.changes){if(s.$recursionLimit--<0)return;s.schedule()}else s.$recursionLimit=2}}return v.prototype.schedule=function(a){this.changes=this.changes|a,this.changes&&!this.pending&&(b.nextFrame(this._flush),this.pending=!0)},v.prototype.clear=function(a){var c=this.changes;return this.changes=0,c},v}();p.RenderLoop=o}),ace.define("ace/layer/font_metrics",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/lib/event","ace/lib/useragent","ace/lib/event_emitter"],function(n,p,C){var b=n("../lib/oop"),o=n("../lib/dom"),v=n("../lib/lang"),a=n("../lib/event"),c=n("../lib/useragent"),s=n("../lib/event_emitter").EventEmitter,l=512,d="function"==typeof ResizeObserver,r=200,u=function(){function h(m){this.el=o.createElement("div"),this.$setMeasureNodeStyles(this.el.style,!0),this.$main=o.createElement("div"),this.$setMeasureNodeStyles(this.$main.style),this.$measureNode=o.createElement("div"),this.$setMeasureNodeStyles(this.$measureNode.style),this.el.appendChild(this.$main),this.el.appendChild(this.$measureNode),m.appendChild(this.el),this.$measureNode.textContent=v.stringRepeat("X",l),this.$characterSize={width:0,height:0},d?this.$addObserver():this.checkForSizeChanges()}return h.prototype.$setMeasureNodeStyles=function(m,_){m.width=m.height="auto",m.left=m.top="0px",m.visibility="hidden",m.position="absolute",m.whiteSpace="pre",c.isIE<8?m["font-family"]="inherit":m.font="inherit",m.overflow=_?"hidden":"visible"},h.prototype.checkForSizeChanges=function(m){if(void 0===m&&(m=this.$measureSizes()),m&&(this.$characterSize.width!==m.width||this.$characterSize.height!==m.height)){this.$measureNode.style.fontWeight="bold";var _=this.$measureSizes();this.$measureNode.style.fontWeight="",this.$characterSize=m,this.charSizes=Object.create(null),this.allowBoldFonts=_&&_.width===m.width&&_.height===m.height,this._emit("changeCharacterSize",{data:m})}},h.prototype.$addObserver=function(){var m=this;this.$observer=new window.ResizeObserver(function(_){m.checkForSizeChanges()}),this.$observer.observe(this.$measureNode)},h.prototype.$pollSizeChanges=function(){if(this.$pollSizeChangesTimer||this.$observer)return this.$pollSizeChangesTimer;var m=this;return this.$pollSizeChangesTimer=a.onIdle(function _(){m.checkForSizeChanges(),a.onIdle(_,500)},500)},h.prototype.setPolling=function(m){m?this.$pollSizeChanges():this.$pollSizeChangesTimer&&(clearInterval(this.$pollSizeChangesTimer),this.$pollSizeChangesTimer=0)},h.prototype.$measureSizes=function(m){var _={height:(m||this.$measureNode).clientHeight,width:(m||this.$measureNode).clientWidth/l};return 0===_.width||0===_.height?null:_},h.prototype.$measureCharWidth=function(m){return this.$main.textContent=v.stringRepeat(m,l),this.$main.getBoundingClientRect().width/l},h.prototype.getCharacterWidth=function(m){var _=this.charSizes[m];return void 0===_&&(_=this.charSizes[m]=this.$measureCharWidth(m)/this.$characterSize.width),_},h.prototype.destroy=function(){clearInterval(this.$pollSizeChangesTimer),this.$observer&&this.$observer.disconnect(),this.el&&this.el.parentNode&&this.el.parentNode.removeChild(this.el)},h.prototype.$getZoom=function(m){return m&&m.parentElement?(window.getComputedStyle(m).zoom||1)*this.$getZoom(m.parentElement):1},h.prototype.$initTransformMeasureNodes=function(){var m=function(_,M){return["div",{style:"position: absolute;top:"+_+"px;left:"+M+"px;"}]};this.els=o.buildDom([m(0,0),m(r,0),m(0,r),m(r,r)],this.el)},h.prototype.transformCoordinates=function(m,_){function x(me,$,q){var Q=me[1]*$[0]-me[0]*$[1];return[(-$[1]*q[0]+$[0]*q[1])/Q,(+me[1]*q[0]-me[0]*q[1])/Q]}function w(me,$){return[me[0]-$[0],me[1]-$[1]]}function L(me,$){return[me[0]+$[0],me[1]+$[1]]}function A(me,$){return[me*$[0],me*$[1]]}function T(me){var $=me.getBoundingClientRect();return[$.left,$.top]}m&&(m=A(1/this.$getZoom(this.el),m)),this.els||this.$initTransformMeasureNodes();var O=T(this.els[0]),E=T(this.els[1]),D=T(this.els[2]),R=T(this.els[3]),j=x(w(R,E),w(R,D),w(L(E,D),L(R,O))),N=A(1+j[0],w(E,O)),S=A(1+j[1],w(D,O));if(_){var k=_,F=j[0]*k[0]/r+j[1]*k[1]/r+1,Y=L(A(k[0],N),A(k[1],S));return L(A(1/F/r,Y),O)}var se=w(m,O),ne=x(w(N,A(j[0],se)),w(S,A(j[1],se)),se);return A(r,ne)},h}();u.prototype.$characterSize={width:0,height:0},b.implement(u.prototype,s),p.FontMetrics=u}),ace.define("ace/css/editor-css",["require","exports","module"],function(n,p,C){C.exports='\n.ace_br1 {border-top-left-radius : 3px;}\n.ace_br2 {border-top-right-radius : 3px;}\n.ace_br3 {border-top-left-radius : 3px; border-top-right-radius: 3px;}\n.ace_br4 {border-bottom-right-radius: 3px;}\n.ace_br5 {border-top-left-radius : 3px; border-bottom-right-radius: 3px;}\n.ace_br6 {border-top-right-radius : 3px; border-bottom-right-radius: 3px;}\n.ace_br7 {border-top-left-radius : 3px; border-top-right-radius: 3px; border-bottom-right-radius: 3px;}\n.ace_br8 {border-bottom-left-radius : 3px;}\n.ace_br9 {border-top-left-radius : 3px; border-bottom-left-radius: 3px;}\n.ace_br10{border-top-right-radius : 3px; border-bottom-left-radius: 3px;}\n.ace_br11{border-top-left-radius : 3px; border-top-right-radius: 3px; border-bottom-left-radius: 3px;}\n.ace_br12{border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;}\n.ace_br13{border-top-left-radius : 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;}\n.ace_br14{border-top-right-radius : 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;}\n.ace_br15{border-top-left-radius : 3px; border-top-right-radius: 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;}\n\n\n.ace_editor {\n position: relative;\n overflow: hidden;\n padding: 0;\n font: 12px/normal \'Monaco\', \'Menlo\', \'Ubuntu Mono\', \'Consolas\', \'Source Code Pro\', \'source-code-pro\', monospace;\n direction: ltr;\n text-align: left;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\n\n.ace_scroller {\n position: absolute;\n overflow: hidden;\n top: 0;\n bottom: 0;\n background-color: inherit;\n -ms-user-select: none;\n -moz-user-select: none;\n -webkit-user-select: none;\n user-select: none;\n cursor: text;\n}\n\n.ace_content {\n position: absolute;\n box-sizing: border-box;\n min-width: 100%;\n contain: style size layout;\n font-variant-ligatures: no-common-ligatures;\n}\n\n.ace_keyboard-focus:focus {\n box-shadow: inset 0 0 0 2px #5E9ED6;\n outline: none;\n}\n\n.ace_dragging .ace_scroller:before{\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n content: \'\';\n background: rgba(250, 250, 250, 0.01);\n z-index: 1000;\n}\n.ace_dragging.ace_dark .ace_scroller:before{\n background: rgba(0, 0, 0, 0.01);\n}\n\n.ace_gutter {\n position: absolute;\n overflow : hidden;\n width: auto;\n top: 0;\n bottom: 0;\n left: 0;\n cursor: default;\n z-index: 4;\n -ms-user-select: none;\n -moz-user-select: none;\n -webkit-user-select: none;\n user-select: none;\n contain: style size layout;\n}\n\n.ace_gutter-active-line {\n position: absolute;\n left: 0;\n right: 0;\n}\n\n.ace_scroller.ace_scroll-left:after {\n content: "";\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n box-shadow: 17px 0 16px -16px rgba(0, 0, 0, 0.4) inset;\n pointer-events: none;\n}\n\n.ace_gutter-cell, .ace_gutter-cell_svg-icons {\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n padding-left: 19px;\n padding-right: 6px;\n background-repeat: no-repeat;\n}\n\n.ace_gutter-cell_svg-icons .ace_gutter_annotation {\n margin-left: -14px;\n float: left;\n}\n\n.ace_gutter-cell .ace_gutter_annotation {\n margin-left: -19px;\n float: left;\n}\n\n.ace_gutter-cell.ace_error, .ace_icon.ace_error, .ace_icon.ace_error_fold {\n background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAABOFBMVEX/////////QRswFAb/Ui4wFAYwFAYwFAaWGAfDRymzOSH/PxswFAb/SiUwFAYwFAbUPRvjQiDllog5HhHdRybsTi3/Tyv9Tir+Syj/UC3////XurebMBIwFAb/RSHbPx/gUzfdwL3kzMivKBAwFAbbvbnhPx66NhowFAYwFAaZJg8wFAaxKBDZurf/RB6mMxb/SCMwFAYwFAbxQB3+RB4wFAb/Qhy4Oh+4QifbNRcwFAYwFAYwFAb/QRzdNhgwFAYwFAbav7v/Uy7oaE68MBK5LxLewr/r2NXewLswFAaxJw4wFAbkPRy2PyYwFAaxKhLm1tMwFAazPiQwFAaUGAb/QBrfOx3bvrv/VC/maE4wFAbRPBq6MRO8Qynew8Dp2tjfwb0wFAbx6eju5+by6uns4uH9/f36+vr/GkHjAAAAYnRSTlMAGt+64rnWu/bo8eAA4InH3+DwoN7j4eLi4xP99Nfg4+b+/u9B/eDs1MD1mO7+4PHg2MXa347g7vDizMLN4eG+Pv7i5evs/v79yu7S3/DV7/498Yv24eH+4ufQ3Ozu/v7+y13sRqwAAADLSURBVHjaZc/XDsFgGIBhtDrshlitmk2IrbHFqL2pvXf/+78DPokj7+Fz9qpU/9UXJIlhmPaTaQ6QPaz0mm+5gwkgovcV6GZzd5JtCQwgsxoHOvJO15kleRLAnMgHFIESUEPmawB9ngmelTtipwwfASilxOLyiV5UVUyVAfbG0cCPHig+GBkzAENHS0AstVF6bacZIOzgLmxsHbt2OecNgJC83JERmePUYq8ARGkJx6XtFsdddBQgZE2nPR6CICZhawjA4Fb/chv+399kfR+MMMDGOQAAAABJRU5ErkJggg==");\n background-repeat: no-repeat;\n background-position: 2px center;\n}\n\n.ace_gutter-cell.ace_warning, .ace_icon.ace_warning, .ace_icon.ace_warning_fold {\n background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAmVBMVEX///8AAAD///8AAAAAAABPSzb/5sAAAAB/blH/73z/ulkAAAAAAAD85pkAAAAAAAACAgP/vGz/rkDerGbGrV7/pkQICAf////e0IsAAAD/oED/qTvhrnUAAAD/yHD/njcAAADuv2r/nz//oTj/p064oGf/zHAAAAA9Nir/tFIAAAD/tlTiuWf/tkIAAACynXEAAAAAAAAtIRW7zBpBAAAAM3RSTlMAABR1m7RXO8Ln31Z36zT+neXe5OzooRDfn+TZ4p3h2hTf4t3k3ucyrN1K5+Xaks52Sfs9CXgrAAAAjklEQVR42o3PbQ+CIBQFYEwboPhSYgoYunIqqLn6/z8uYdH8Vmdnu9vz4WwXgN/xTPRD2+sgOcZjsge/whXZgUaYYvT8QnuJaUrjrHUQreGczuEafQCO/SJTufTbroWsPgsllVhq3wJEk2jUSzX3CUEDJC84707djRc5MTAQxoLgupWRwW6UB5fS++NV8AbOZgnsC7BpEAAAAABJRU5ErkJggg==");\n background-repeat: no-repeat;\n background-position: 2px center;\n}\n\n.ace_gutter-cell.ace_info, .ace_icon.ace_info {\n background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAAAAAA6mKC9AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAAJ0Uk5TAAB2k804AAAAPklEQVQY02NgIB68QuO3tiLznjAwpKTgNyDbMegwisCHZUETUZV0ZqOquBpXj2rtnpSJT1AEnnRmL2OgGgAAIKkRQap2htgAAAAASUVORK5CYII=");\n background-repeat: no-repeat;\n background-position: 2px center;\n}\n.ace_dark .ace_gutter-cell.ace_info, .ace_dark .ace_icon.ace_info {\n background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAAJFBMVEUAAAChoaGAgIAqKiq+vr6tra1ZWVmUlJSbm5s8PDxubm56enrdgzg3AAAAAXRSTlMAQObYZgAAAClJREFUeNpjYMAPdsMYHegyJZFQBlsUlMFVCWUYKkAZMxZAGdxlDMQBAG+TBP4B6RyJAAAAAElFTkSuQmCC");\n}\n\n.ace_icon_svg.ace_error {\n -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAxNiI+CjxnIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlPSJyZWQiIHNoYXBlLXJlbmRlcmluZz0iZ2VvbWV0cmljUHJlY2lzaW9uIj4KPGNpcmNsZSBmaWxsPSJub25lIiBjeD0iOCIgY3k9IjgiIHI9IjciIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KPGxpbmUgeDE9IjExIiB5MT0iNSIgeDI9IjUiIHkyPSIxMSIvPgo8bGluZSB4MT0iMTEiIHkxPSIxMSIgeDI9IjUiIHkyPSI1Ii8+CjwvZz4KPC9zdmc+");\n background-color: crimson;\n}\n.ace_icon_svg.ace_warning {\n -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAxNiI+CjxnIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlPSJkYXJrb3JhbmdlIiBzaGFwZS1yZW5kZXJpbmc9Imdlb21ldHJpY1ByZWNpc2lvbiI+Cjxwb2x5Z29uIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGZpbGw9Im5vbmUiIHBvaW50cz0iOCAxIDE1IDE1IDEgMTUgOCAxIi8+CjxyZWN0IHg9IjgiIHk9IjEyIiB3aWR0aD0iMC4wMSIgaGVpZ2h0PSIwLjAxIi8+CjxsaW5lIHgxPSI4IiB5MT0iNiIgeDI9IjgiIHkyPSIxMCIvPgo8L2c+Cjwvc3ZnPg==");\n background-color: darkorange;\n}\n.ace_icon_svg.ace_info {\n -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAxNiI+CjxnIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlPSJibHVlIiBzaGFwZS1yZW5kZXJpbmc9Imdlb21ldHJpY1ByZWNpc2lvbiI+CjxjaXJjbGUgZmlsbD0ibm9uZSIgY3g9IjgiIGN5PSI4IiByPSI3IiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+Cjxwb2x5bGluZSBwb2ludHM9IjggMTEgOCA4Ii8+Cjxwb2x5bGluZSBwb2ludHM9IjkgOCA2IDgiLz4KPGxpbmUgeDE9IjEwIiB5MT0iMTEiIHgyPSI2IiB5Mj0iMTEiLz4KPHJlY3QgeD0iOCIgeT0iNSIgd2lkdGg9IjAuMDEiIGhlaWdodD0iMC4wMSIvPgo8L2c+Cjwvc3ZnPg==");\n background-color: royalblue;\n}\n\n.ace_icon_svg.ace_error_fold {\n -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAxNiIgZmlsbD0ibm9uZSI+CiAgPHBhdGggZD0ibSAxOC45Mjk4NTEsNy44Mjk4MDc2IGMgMC4xNDYzNTMsNi4zMzc0NjA0IC02LjMyMzE0Nyw3Ljc3Nzg0NDQgLTcuNDc3OTEyLDcuNzc3ODQ0NCAtMi4xMDcyNzI2LC0wLjEyODc1IDUuMTE3Njc4LDAuMzU2MjQ5IDUuMDUxNjk4LC03Ljg3MDA2MTggLTAuNjA0NjcyLC04LjAwMzk3MzQ5IC03LjA3NzI3MDYsLTcuNTYzMTE4OSAtNC44NTczLC03LjQzMDM5NTU2IDEuNjA2LC0wLjExNTE0MjI1IDYuODk3NDg1LDEuMjYyNTQ1OTYgNy4yODM1MTQsNy41MjI2MTI5NiB6IiBmaWxsPSJjcmltc29uIiBzdHJva2Utd2lkdGg9IjIiLz4KICA8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0ibSA4LjExNDc1NjIsMi4wNTI5ODI4IGMgMy4zNDkxNjk4LDAgNi4wNjQxMzI4LDIuNjc2ODYyNyA2LjA2NDEzMjgsNS45Nzg5NTMgMCwzLjMwMjExMjIgLTIuNzE0OTYzLDUuOTc4OTIwMiAtNi4wNjQxMzI4LDUuOTc4OTIwMiAtMy4zNDkxNDczLDAgLTYuMDY0MTc3MiwtMi42NzY4MDggLTYuMDY0MTc3MiwtNS45Nzg5MjAyIDAuMDA1MzksLTMuMjk5ODg2MSAyLjcxNzI2NTYsLTUuOTczNjQwOCA2LjA2NDE3NzIsLTUuOTc4OTUzIHogbSAwLC0xLjczNTgyNzE5IGMgLTQuMzIxNDgzNiwwIC03LjgyNDc0MDM4LDMuNDU0MDE4NDkgLTcuODI0NzQwMzgsNy43MTQ3ODAxOSAwLDQuMjYwNzI4MiAzLjUwMzI1Njc4LDcuNzE0NzQ1MiA3LjgyNDc0MDM4LDcuNzE0NzQ1MiA0LjMyMTQ0OTgsMCA3LjgyNDY5OTgsLTMuNDU0MDE3IDcuODI0Njk5OCwtNy43MTQ3NDUyIDAsLTIuMDQ2MDkxNCAtMC44MjQzOTIsLTQuMDA4MzY3MiAtMi4yOTE3NTYsLTUuNDU1MTc0NiBDIDEyLjE4MDIyNSwxLjEyOTk2NDggMTAuMTkwMDEzLDAuMzE3MTU1NjEgOC4xMTQ3NTYyLDAuMzE3MTU1NjEgWiBNIDYuOTM3NDU2Myw4LjI0MDU5ODUgNC42NzE4Njg1LDEwLjQ4NTg1MiA2LjAwODY4MTQsMTEuODc2NzI4IDguMzE3MDAzNSw5LjYwMDc5MTEgMTAuNjI1MzM3LDExLjg3NjcyOCAxMS45NjIxMzgsMTAuNDg1ODUyIDkuNjk2NTUwOCw4LjI0MDU5ODUgMTEuOTYyMTM4LDYuMDA2ODA2NiAxMC41NzMyNDYsNC42Mzc0MzM1IDguMzE3MDAzNSw2Ljg3MzQyOTcgNi4wNjA3NjA3LDQuNjM3NDMzNSA0LjY3MTg2ODUsNi4wMDY4MDY2IFoiIGZpbGw9ImNyaW1zb24iIHN0cm9rZS13aWR0aD0iMiIvPgo8L3N2Zz4=");\n background-color: crimson;\n}\n.ace_icon_svg.ace_warning_fold {\n -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAyMCAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xNC43NzY5IDE0LjczMzdMOC42NTE5MiAyLjQ4MzY5QzguMzI5NDYgMS44Mzg3NyA3LjQwOTEzIDEuODM4NzcgNy4wODY2NyAyLjQ4MzY5TDAuOTYxNjY5IDE0LjczMzdDMC42NzA3NzUgMTUuMzE1NSAxLjA5MzgzIDE2IDEuNzQ0MjkgMTZIMTMuOTk0M0MxNC42NDQ4IDE2IDE1LjA2NzggMTUuMzE1NSAxNC43NzY5IDE0LjczMzdaTTMuMTYwMDcgMTQuMjVMNy44NjkyOSA0LjgzMTU2TDEyLjU3ODUgMTQuMjVIMy4xNjAwN1pNOC43NDQyOSAxMS42MjVWMTMuMzc1SDYuOTk0MjlWMTEuNjI1SDguNzQ0MjlaTTYuOTk0MjkgMTAuNzVWNy4yNUg4Ljc0NDI5VjEwLjc1SDYuOTk0MjlaIiBmaWxsPSIjRUM3MjExIi8+CjxwYXRoIGQ9Ik0xMS4xOTkxIDIuOTUyMzhDMTAuODgwOSAyLjMxNDY3IDEwLjM1MzcgMS44MDUyNiA5LjcwNTUgMS41MDlMMTEuMDQxIDEuMDY5NzhDMTEuNjg4MyAwLjk0OTgxNCAxMi4zMzcgMS4yNzI2MyAxMi42MzE3IDEuODYxNDFMMTcuNjEzNiAxMS44MTYxQzE4LjM1MjcgMTMuMjkyOSAxNy41OTM4IDE1LjA4MDQgMTYuMDE4IDE1LjU3NDVDMTYuNDA0NCAxNC40NTA3IDE2LjMyMzEgMTMuMjE4OCAxNS43OTI0IDEyLjE1NTVMMTEuMTk5MSAyLjk1MjM4WiIgZmlsbD0iI0VDNzIxMSIvPgo8L3N2Zz4=");\n background-color: darkorange;\n}\n\n.ace_scrollbar {\n contain: strict;\n position: absolute;\n right: 0;\n bottom: 0;\n z-index: 6;\n}\n\n.ace_scrollbar-inner {\n position: absolute;\n cursor: text;\n left: 0;\n top: 0;\n}\n\n.ace_scrollbar-v{\n overflow-x: hidden;\n overflow-y: scroll;\n top: 0;\n}\n\n.ace_scrollbar-h {\n overflow-x: scroll;\n overflow-y: hidden;\n left: 0;\n}\n\n.ace_print-margin {\n position: absolute;\n height: 100%;\n}\n\n.ace_text-input {\n position: absolute;\n z-index: 0;\n width: 0.5em;\n height: 1em;\n opacity: 0;\n background: transparent;\n -moz-appearance: none;\n appearance: none;\n border: none;\n resize: none;\n outline: none;\n overflow: hidden;\n font: inherit;\n padding: 0 1px;\n margin: 0 -1px;\n contain: strict;\n -ms-user-select: text;\n -moz-user-select: text;\n -webkit-user-select: text;\n user-select: text;\n /*with `pre-line` chrome inserts   instead of space*/\n white-space: pre!important;\n}\n.ace_text-input.ace_composition {\n background: transparent;\n color: inherit;\n z-index: 1000;\n opacity: 1;\n}\n.ace_composition_placeholder { color: transparent }\n.ace_composition_marker { \n border-bottom: 1px solid;\n position: absolute;\n border-radius: 0;\n margin-top: 1px;\n}\n\n[ace_nocontext=true] {\n transform: none!important;\n filter: none!important;\n clip-path: none!important;\n mask : none!important;\n contain: none!important;\n perspective: none!important;\n mix-blend-mode: initial!important;\n z-index: auto;\n}\n\n.ace_layer {\n z-index: 1;\n position: absolute;\n overflow: hidden;\n /* workaround for chrome bug https://github.com/ajaxorg/ace/issues/2312*/\n word-wrap: normal;\n white-space: pre;\n height: 100%;\n width: 100%;\n box-sizing: border-box;\n /* setting pointer-events: auto; on node under the mouse, which changes\n during scroll, will break mouse wheel scrolling in Safari */\n pointer-events: none;\n}\n\n.ace_gutter-layer {\n position: relative;\n width: auto;\n text-align: right;\n pointer-events: auto;\n height: 1000000px;\n contain: style size layout;\n}\n\n.ace_text-layer {\n font: inherit !important;\n position: absolute;\n height: 1000000px;\n width: 1000000px;\n contain: style size layout;\n}\n\n.ace_text-layer > .ace_line, .ace_text-layer > .ace_line_group {\n contain: style size layout;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n}\n\n.ace_hidpi .ace_text-layer,\n.ace_hidpi .ace_gutter-layer,\n.ace_hidpi .ace_content,\n.ace_hidpi .ace_gutter {\n contain: strict;\n}\n.ace_hidpi .ace_text-layer > .ace_line, \n.ace_hidpi .ace_text-layer > .ace_line_group {\n contain: strict;\n}\n\n.ace_cjk {\n display: inline-block;\n text-align: center;\n}\n\n.ace_cursor-layer {\n z-index: 4;\n}\n\n.ace_cursor {\n z-index: 4;\n position: absolute;\n box-sizing: border-box;\n border-left: 2px solid;\n /* workaround for smooth cursor repaintng whole screen in chrome */\n transform: translatez(0);\n}\n\n.ace_multiselect .ace_cursor {\n border-left-width: 1px;\n}\n\n.ace_slim-cursors .ace_cursor {\n border-left-width: 1px;\n}\n\n.ace_overwrite-cursors .ace_cursor {\n border-left-width: 0;\n border-bottom: 1px solid;\n}\n\n.ace_hidden-cursors .ace_cursor {\n opacity: 0.2;\n}\n\n.ace_hasPlaceholder .ace_hidden-cursors .ace_cursor {\n opacity: 0;\n}\n\n.ace_smooth-blinking .ace_cursor {\n transition: opacity 0.18s;\n}\n\n.ace_animate-blinking .ace_cursor {\n animation-duration: 1000ms;\n animation-timing-function: step-end;\n animation-name: blink-ace-animate;\n animation-iteration-count: infinite;\n}\n\n.ace_animate-blinking.ace_smooth-blinking .ace_cursor {\n animation-duration: 1000ms;\n animation-timing-function: ease-in-out;\n animation-name: blink-ace-animate-smooth;\n}\n \n@keyframes blink-ace-animate {\n from, to { opacity: 1; }\n 60% { opacity: 0; }\n}\n\n@keyframes blink-ace-animate-smooth {\n from, to { opacity: 1; }\n 45% { opacity: 1; }\n 60% { opacity: 0; }\n 85% { opacity: 0; }\n}\n\n.ace_marker-layer .ace_step, .ace_marker-layer .ace_stack {\n position: absolute;\n z-index: 3;\n}\n\n.ace_marker-layer .ace_selection {\n position: absolute;\n z-index: 5;\n}\n\n.ace_marker-layer .ace_bracket {\n position: absolute;\n z-index: 6;\n}\n\n.ace_marker-layer .ace_error_bracket {\n position: absolute;\n border-bottom: 1px solid #DE5555;\n border-radius: 0;\n}\n\n.ace_marker-layer .ace_active-line {\n position: absolute;\n z-index: 2;\n}\n\n.ace_marker-layer .ace_selected-word {\n position: absolute;\n z-index: 4;\n box-sizing: border-box;\n}\n\n.ace_line .ace_fold {\n box-sizing: border-box;\n\n display: inline-block;\n height: 11px;\n margin-top: -2px;\n vertical-align: middle;\n\n background-image:\n url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAJCAYAAADU6McMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJpJREFUeNpi/P//PwOlgAXGYGRklAVSokD8GmjwY1wasKljQpYACtpCFeADcHVQfQyMQAwzwAZI3wJKvCLkfKBaMSClBlR7BOQikCFGQEErIH0VqkabiGCAqwUadAzZJRxQr/0gwiXIal8zQQPnNVTgJ1TdawL0T5gBIP1MUJNhBv2HKoQHHjqNrA4WO4zY0glyNKLT2KIfIMAAQsdgGiXvgnYAAAAASUVORK5CYII="),\n url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAA3CAYAAADNNiA5AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAACJJREFUeNpi+P//fxgTAwPDBxDxD078RSX+YeEyDFMCIMAAI3INmXiwf2YAAAAASUVORK5CYII=");\n background-repeat: no-repeat, repeat-x;\n background-position: center center, top left;\n color: transparent;\n\n border: 1px solid black;\n border-radius: 2px;\n\n cursor: pointer;\n pointer-events: auto;\n}\n\n.ace_dark .ace_fold {\n}\n\n.ace_fold:hover{\n background-image:\n url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAJCAYAAADU6McMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJpJREFUeNpi/P//PwOlgAXGYGRklAVSokD8GmjwY1wasKljQpYACtpCFeADcHVQfQyMQAwzwAZI3wJKvCLkfKBaMSClBlR7BOQikCFGQEErIH0VqkabiGCAqwUadAzZJRxQr/0gwiXIal8zQQPnNVTgJ1TdawL0T5gBIP1MUJNhBv2HKoQHHjqNrA4WO4zY0glyNKLT2KIfIMAAQsdgGiXvgnYAAAAASUVORK5CYII="),\n url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAA3CAYAAADNNiA5AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAACBJREFUeNpi+P//fz4TAwPDZxDxD5X4i5fLMEwJgAADAEPVDbjNw87ZAAAAAElFTkSuQmCC");\n}\n\n.ace_tooltip {\n background-color: #f5f5f5;\n border: 1px solid gray;\n border-radius: 1px;\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);\n color: black;\n max-width: 100%;\n padding: 3px 4px;\n position: fixed;\n z-index: 999999;\n box-sizing: border-box;\n cursor: default;\n white-space: pre;\n word-wrap: break-word;\n line-height: normal;\n font-style: normal;\n font-weight: normal;\n letter-spacing: normal;\n pointer-events: none;\n}\n\n.ace_tooltip.ace_dark {\n background-color: #636363;\n color: #fff;\n}\n\n.ace_tooltip:focus {\n outline: 1px solid #5E9ED6;\n}\n\n.ace_icon {\n display: inline-block;\n width: 18px;\n vertical-align: top;\n}\n\n.ace_icon_svg {\n display: inline-block;\n width: 12px;\n vertical-align: top;\n -webkit-mask-repeat: no-repeat;\n -webkit-mask-size: 12px;\n -webkit-mask-position: center;\n}\n\n.ace_folding-enabled > .ace_gutter-cell, .ace_folding-enabled > .ace_gutter-cell_svg-icons {\n padding-right: 13px;\n}\n\n.ace_fold-widget {\n box-sizing: border-box;\n\n margin: 0 -12px 0 1px;\n display: none;\n width: 11px;\n vertical-align: top;\n\n background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAANElEQVR42mWKsQ0AMAzC8ixLlrzQjzmBiEjp0A6WwBCSPgKAXoLkqSot7nN3yMwR7pZ32NzpKkVoDBUxKAAAAABJRU5ErkJggg==");\n background-repeat: no-repeat;\n background-position: center;\n\n border-radius: 3px;\n \n border: 1px solid transparent;\n cursor: pointer;\n}\n\n.ace_folding-enabled .ace_fold-widget {\n display: inline-block; \n}\n\n.ace_fold-widget.ace_end {\n background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAANElEQVR42m3HwQkAMAhD0YzsRchFKI7sAikeWkrxwScEB0nh5e7KTPWimZki4tYfVbX+MNl4pyZXejUO1QAAAABJRU5ErkJggg==");\n}\n\n.ace_fold-widget.ace_closed {\n background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAAGCAYAAAAG5SQMAAAAOUlEQVR42jXKwQkAMAgDwKwqKD4EwQ26sSOkVWjgIIHAzPiCgaqiqnJHZnKICBERHN194O5b9vbLuAVRL+l0YWnZAAAAAElFTkSuQmCCXA==");\n}\n\n.ace_fold-widget:hover {\n border: 1px solid rgba(0, 0, 0, 0.3);\n background-color: rgba(255, 255, 255, 0.2);\n box-shadow: 0 1px 1px rgba(255, 255, 255, 0.7);\n}\n\n.ace_fold-widget:active {\n border: 1px solid rgba(0, 0, 0, 0.4);\n background-color: rgba(0, 0, 0, 0.05);\n box-shadow: 0 1px 1px rgba(255, 255, 255, 0.8);\n}\n/**\n * Dark version for fold widgets\n */\n.ace_dark .ace_fold-widget {\n background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHklEQVQIW2P4//8/AzoGEQ7oGCaLLAhWiSwB146BAQCSTPYocqT0AAAAAElFTkSuQmCC");\n}\n.ace_dark .ace_fold-widget.ace_end {\n background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAH0lEQVQIW2P4//8/AxQ7wNjIAjDMgC4AxjCVKBirIAAF0kz2rlhxpAAAAABJRU5ErkJggg==");\n}\n.ace_dark .ace_fold-widget.ace_closed {\n background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAAFCAYAAACAcVaiAAAAHElEQVQIW2P4//+/AxAzgDADlOOAznHAKgPWAwARji8UIDTfQQAAAABJRU5ErkJggg==");\n}\n.ace_dark .ace_fold-widget:hover {\n box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2);\n background-color: rgba(255, 255, 255, 0.1);\n}\n.ace_dark .ace_fold-widget:active {\n box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2);\n}\n\n.ace_inline_button {\n border: 1px solid lightgray;\n display: inline-block;\n margin: -1px 8px;\n padding: 0 5px;\n pointer-events: auto;\n cursor: pointer;\n}\n.ace_inline_button:hover {\n border-color: gray;\n background: rgba(200,200,200,0.2);\n display: inline-block;\n pointer-events: auto;\n}\n\n.ace_fold-widget.ace_invalid {\n background-color: #FFB4B4;\n border-color: #DE5555;\n}\n\n.ace_fade-fold-widgets .ace_fold-widget {\n transition: opacity 0.4s ease 0.05s;\n opacity: 0;\n}\n\n.ace_fade-fold-widgets:hover .ace_fold-widget {\n transition: opacity 0.05s ease 0.05s;\n opacity:1;\n}\n\n.ace_underline {\n text-decoration: underline;\n}\n\n.ace_bold {\n font-weight: bold;\n}\n\n.ace_nobold .ace_bold {\n font-weight: normal;\n}\n\n.ace_italic {\n font-style: italic;\n}\n\n\n.ace_error-marker {\n background-color: rgba(255, 0, 0,0.2);\n position: absolute;\n z-index: 9;\n}\n\n.ace_highlight-marker {\n background-color: rgba(255, 255, 0,0.2);\n position: absolute;\n z-index: 8;\n}\n\n.ace_mobile-menu {\n position: absolute;\n line-height: 1.5;\n border-radius: 4px;\n -ms-user-select: none;\n -moz-user-select: none;\n -webkit-user-select: none;\n user-select: none;\n background: white;\n box-shadow: 1px 3px 2px grey;\n border: 1px solid #dcdcdc;\n color: black;\n}\n.ace_dark > .ace_mobile-menu {\n background: #333;\n color: #ccc;\n box-shadow: 1px 3px 2px grey;\n border: 1px solid #444;\n\n}\n.ace_mobile-button {\n padding: 2px;\n cursor: pointer;\n overflow: hidden;\n}\n.ace_mobile-button:hover {\n background-color: #eee;\n opacity:1;\n}\n.ace_mobile-button:active {\n background-color: #ddd;\n}\n\n.ace_placeholder {\n font-family: arial;\n transform: scale(0.9);\n transform-origin: left;\n white-space: pre;\n opacity: 0.7;\n margin: 0 10px;\n}\n\n.ace_ghost_text {\n opacity: 0.5;\n font-style: italic;\n white-space: pre;\n}'}),ace.define("ace/layer/decorators",["require","exports","module","ace/lib/dom","ace/lib/oop","ace/lib/event_emitter"],function(n,p,C){"use strict";var b=n("../lib/dom"),o=n("../lib/oop"),v=n("../lib/event_emitter").EventEmitter,a=function(){function c(s,l){this.canvas=b.createElement("canvas"),this.renderer=l,this.pixelRatio=1,this.maxHeight=l.layerConfig.maxHeight,this.lineHeight=l.layerConfig.lineHeight,this.canvasHeight=s.parent.scrollHeight,this.heightRatio=this.canvasHeight/this.maxHeight,this.canvasWidth=s.width,this.minDecorationHeight=2*this.pixelRatio|0,this.halfMinDecorationHeight=this.minDecorationHeight/2|0,this.canvas.width=this.canvasWidth,this.canvas.height=this.canvasHeight,this.canvas.style.top="0px",this.canvas.style.right="0px",this.canvas.style.zIndex="7px",this.canvas.style.position="absolute",this.colors={},this.colors.dark={error:"rgba(255, 18, 18, 1)",warning:"rgba(18, 136, 18, 1)",info:"rgba(18, 18, 136, 1)"},this.colors.light={error:"rgb(255,51,51)",warning:"rgb(32,133,72)",info:"rgb(35,68,138)"},s.element.appendChild(this.canvas)}return c.prototype.$updateDecorators=function(s){var l=!0===this.renderer.theme.isDark?this.colors.dark:this.colors.light;s&&(this.maxHeight=s.maxHeight,this.lineHeight=s.lineHeight,this.canvasHeight=s.height,this.heightRatio=(s.lastRow+1)*this.lineHeightj.priority?1:0});for(var _=this.renderer.session.$foldData,M=0;Mthis.canvasHeight&&(E=this.canvasHeight-this.halfMinDecorationHeight),A=Math.round(E-this.halfMinDecorationHeight),T=Math.round(E+this.halfMinDecorationHeight)}r.fillStyle=l[h[M].type]||null,r.fillRect(0,L,this.canvasWidth,T-A)}}var D=this.renderer.session.selection.getCursor();D&&(w=this.compensateFoldRows(D.row,_),L=Math.round((D.row-w)*this.lineHeight*this.heightRatio),r.fillStyle="rgba(0, 0, 0, 0.5)",r.fillRect(0,L,this.canvasWidth,2))},c.prototype.compensateFoldRows=function(s,l){var d=0;if(l&&l.length>0)for(var r=0;rl[r].start.row&&s=l[r].end.row&&(d+=l[r].end.row-l[r].start.row);return d},c}();o.implement(a.prototype,v),p.Decorator=a}),ace.define("ace/virtual_renderer",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/config","ace/layer/gutter","ace/layer/marker","ace/layer/text","ace/layer/cursor","ace/scrollbar","ace/scrollbar","ace/scrollbar_custom","ace/scrollbar_custom","ace/renderloop","ace/layer/font_metrics","ace/lib/event_emitter","ace/css/editor-css","ace/layer/decorators","ace/lib/useragent"],function(n,p,C){"use strict";var b=n("./lib/oop"),o=n("./lib/dom"),v=n("./lib/lang"),a=n("./config"),c=n("./layer/gutter").Gutter,s=n("./layer/marker").Marker,l=n("./layer/text").Text,d=n("./layer/cursor").Cursor,r=n("./scrollbar").HScrollBar,u=n("./scrollbar").VScrollBar,h=n("./scrollbar_custom").HScrollBar,m=n("./scrollbar_custom").VScrollBar,_=n("./renderloop").RenderLoop,M=n("./layer/font_metrics").FontMetrics,x=n("./lib/event_emitter").EventEmitter,w=n("./css/editor-css"),L=n("./layer/decorators").Decorator,A=n("./lib/useragent");o.importCssString(w,"ace_editor.css",!1);var T=function(){function O(E,D){var R=this;this.container=E||o.createElement("div"),o.addCssClass(this.container,"ace_editor"),o.HI_DPI&&o.addCssClass(this.container,"ace_hidpi"),this.setTheme(D),null==a.get("useStrictCSP")&&a.set("useStrictCSP",!1),this.$gutter=o.createElement("div"),this.$gutter.className="ace_gutter",this.container.appendChild(this.$gutter),this.$gutter.setAttribute("aria-hidden",!0),this.scroller=o.createElement("div"),this.scroller.className="ace_scroller",this.container.appendChild(this.scroller),this.content=o.createElement("div"),this.content.className="ace_content",this.scroller.appendChild(this.content),this.$gutterLayer=new c(this.$gutter),this.$gutterLayer.on("changeGutterWidth",this.onGutterResize.bind(this)),this.$markerBack=new s(this.content);var j=this.$textLayer=new l(this.content);this.canvas=j.element,this.$markerFront=new s(this.content),this.$cursorLayer=new d(this.content),this.$horizScroll=!1,this.$vScroll=!1,this.scrollBar=this.scrollBarV=new u(this.container,this),this.scrollBarH=new r(this.container,this),this.scrollBarV.on("scroll",function(N){R.$scrollAnimation||R.session.setScrollTop(N.data-R.scrollMargin.top)}),this.scrollBarH.on("scroll",function(N){R.$scrollAnimation||R.session.setScrollLeft(N.data-R.scrollMargin.left)}),this.scrollTop=0,this.scrollLeft=0,this.cursorPos={row:0,column:0},this.$fontMetrics=new M(this.container),this.$textLayer.$setFontMetrics(this.$fontMetrics),this.$textLayer.on("changeCharacterSize",function(N){R.updateCharacterSize(),R.onResize(!0,R.gutterWidth,R.$size.width,R.$size.height),R._signal("changeCharacterSize",N)}),this.$size={width:0,height:0,scrollerHeight:0,scrollerWidth:0,$dirty:!0},this.layerConfig={width:1,padding:0,firstRow:0,firstRowScreen:0,lastRow:0,lineHeight:0,characterWidth:0,minHeight:1,maxHeight:1,offset:0,height:1,gutterOffset:1},this.scrollMargin={left:0,right:0,top:0,bottom:0,v:0,h:0},this.margin={left:0,right:0,top:0,bottom:0,v:0,h:0},this.$keepTextAreaAtCursor=!A.isIOS,this.$loop=new _(this.$renderChanges.bind(this),this.container.ownerDocument.defaultView),this.$loop.schedule(this.CHANGE_FULL),this.updateCharacterSize(),this.setPadding(4),this.$addResizeObserver(),a.resetOptions(this),a._signal("renderer",this)}return O.prototype.updateCharacterSize=function(){this.$textLayer.allowBoldFonts!=this.$allowBoldFonts&&(this.$allowBoldFonts=this.$textLayer.allowBoldFonts,this.setStyle("ace_nobold",!this.$allowBoldFonts)),this.layerConfig.characterWidth=this.characterWidth=this.$textLayer.getCharacterWidth(),this.layerConfig.lineHeight=this.lineHeight=this.$textLayer.getLineHeight(),this.$updatePrintMargin(),o.setStyle(this.scroller.style,"line-height",this.lineHeight+"px")},O.prototype.setSession=function(E){this.session&&this.session.doc.off("changeNewLineMode",this.onChangeNewLineMode),this.session=E,E&&this.scrollMargin.top&&E.getScrollTop()<=0&&E.setScrollTop(-this.scrollMargin.top),this.$cursorLayer.setSession(E),this.$markerBack.setSession(E),this.$markerFront.setSession(E),this.$gutterLayer.setSession(E),this.$textLayer.setSession(E),E&&(this.$loop.schedule(this.CHANGE_FULL),this.session.$setFontMetrics(this.$fontMetrics),this.scrollBarH.scrollLeft=this.scrollBarV.scrollTop=null,this.onChangeNewLineMode=this.onChangeNewLineMode.bind(this),this.onChangeNewLineMode(),this.session.doc.on("changeNewLineMode",this.onChangeNewLineMode))},O.prototype.updateLines=function(E,D,R){if(void 0===D&&(D=1/0),this.$changedLines?(this.$changedLines.firstRow>E&&(this.$changedLines.firstRow=E),this.$changedLines.lastRowthis.layerConfig.lastRow||this.$loop.schedule(this.CHANGE_LINES)},O.prototype.onChangeNewLineMode=function(){this.$loop.schedule(this.CHANGE_TEXT),this.$textLayer.$updateEolChar(),this.session.$bidiHandler.setEolChar(this.$textLayer.EOL_CHAR)},O.prototype.onChangeTabSize=function(){this.$loop.schedule(this.CHANGE_TEXT|this.CHANGE_MARKER),this.$textLayer.onChangeTabSize()},O.prototype.updateText=function(){this.$loop.schedule(this.CHANGE_TEXT)},O.prototype.updateFull=function(E){E?this.$renderChanges(this.CHANGE_FULL,!0):this.$loop.schedule(this.CHANGE_FULL)},O.prototype.updateFontSize=function(){this.$textLayer.checkForSizeChanges()},O.prototype.$updateSizeAsync=function(){this.$loop.pending?this.$size.$dirty=!0:this.onResize()},O.prototype.onResize=function(E,D,R,j){if(!(this.resizing>2)){this.resizing>0?this.resizing++:this.resizing=E?1:0;var N=this.container;j||(j=N.clientHeight||N.scrollHeight),R||(R=N.clientWidth||N.scrollWidth);var S=this.$updateCachedSize(E,D,R,j);if(this.$resizeTimer&&this.$resizeTimer.cancel(),!this.$size.scrollerHeight||!R&&!j)return this.resizing=0;E&&(this.$gutterLayer.$padding=null),E?this.$renderChanges(S|this.$changes,!0):this.$loop.schedule(S|this.$changes),this.resizing&&(this.resizing=0),this.scrollBarH.scrollLeft=this.scrollBarV.scrollTop=null,this.$customScrollbar&&this.$updateCustomScrollbar(!0)}},O.prototype.$updateCachedSize=function(E,D,R,j){var N=0,S=this.$size,k={width:S.width,height:S.height,scrollerHeight:S.scrollerHeight,scrollerWidth:S.scrollerWidth};if((j-=this.$extraHeight||0)&&(E||S.height!=j)&&(S.height=j,N|=this.CHANGE_SIZE,S.scrollerHeight=S.height,this.$horizScroll&&(S.scrollerHeight-=this.scrollBarH.getHeight()),this.scrollBarV.setHeight(S.scrollerHeight),this.scrollBarV.element.style.bottom=this.scrollBarH.getHeight()+"px",N|=this.CHANGE_SCROLL),R&&(E||S.width!=R)){N|=this.CHANGE_SIZE,S.width=R,null==D&&(D=this.$showGutter?this.$gutter.offsetWidth:0),this.gutterWidth=D,o.setStyle(this.scrollBarH.element.style,"left",D+"px"),o.setStyle(this.scroller.style,"left",D+this.margin.left+"px"),S.scrollerWidth=Math.max(0,R-D-this.scrollBarV.getWidth()-this.margin.h),o.setStyle(this.$gutter.style,"left",this.margin.left+"px");var F=this.scrollBarV.getWidth()+"px";o.setStyle(this.scrollBarH.element.style,"right",F),o.setStyle(this.scroller.style,"right",F),o.setStyle(this.scroller.style,"bottom",this.scrollBarH.getHeight()),this.scrollBarH.setWidth(S.scrollerWidth),(this.session&&this.session.getUseWrapMode()&&this.adjustWrapLimit()||E)&&(N|=this.CHANGE_FULL)}return S.$dirty=!R||!j,N&&this._signal("resize",k),N},O.prototype.onGutterResize=function(E){var D=this.$showGutter?E:0;D!=this.gutterWidth&&(this.$changes|=this.$updateCachedSize(!0,D,this.$size.width,this.$size.height)),this.session.getUseWrapMode()&&this.adjustWrapLimit()||this.$size.$dirty?this.$loop.schedule(this.CHANGE_FULL):this.$computeLayerConfig()},O.prototype.adjustWrapLimit=function(){var D=Math.floor((this.$size.scrollerWidth-2*this.$padding)/this.characterWidth);return this.session.adjustWrapLimit(D,this.$showPrintMargin&&this.$printMarginColumn)},O.prototype.setAnimatedScroll=function(E){this.setOption("animatedScroll",E)},O.prototype.getAnimatedScroll=function(){return this.$animatedScroll},O.prototype.setShowInvisibles=function(E){this.setOption("showInvisibles",E),this.session.$bidiHandler.setShowInvisibles(E)},O.prototype.getShowInvisibles=function(){return this.getOption("showInvisibles")},O.prototype.getDisplayIndentGuides=function(){return this.getOption("displayIndentGuides")},O.prototype.setDisplayIndentGuides=function(E){this.setOption("displayIndentGuides",E)},O.prototype.getHighlightIndentGuides=function(){return this.getOption("highlightIndentGuides")},O.prototype.setHighlightIndentGuides=function(E){this.setOption("highlightIndentGuides",E)},O.prototype.setShowPrintMargin=function(E){this.setOption("showPrintMargin",E)},O.prototype.getShowPrintMargin=function(){return this.getOption("showPrintMargin")},O.prototype.setPrintMarginColumn=function(E){this.setOption("printMarginColumn",E)},O.prototype.getPrintMarginColumn=function(){return this.getOption("printMarginColumn")},O.prototype.getShowGutter=function(){return this.getOption("showGutter")},O.prototype.setShowGutter=function(E){return this.setOption("showGutter",E)},O.prototype.getFadeFoldWidgets=function(){return this.getOption("fadeFoldWidgets")},O.prototype.setFadeFoldWidgets=function(E){this.setOption("fadeFoldWidgets",E)},O.prototype.setHighlightGutterLine=function(E){this.setOption("highlightGutterLine",E)},O.prototype.getHighlightGutterLine=function(){return this.getOption("highlightGutterLine")},O.prototype.$updatePrintMargin=function(){if(this.$showPrintMargin||this.$printMarginEl){if(!this.$printMarginEl){var E=o.createElement("div");E.className="ace_layer ace_print-margin-layer",this.$printMarginEl=o.createElement("div"),this.$printMarginEl.className="ace_print-margin",E.appendChild(this.$printMarginEl),this.content.insertBefore(E,this.content.firstChild)}var D=this.$printMarginEl.style;D.left=Math.round(this.characterWidth*this.$printMarginColumn+this.$padding)+"px",D.visibility=this.$showPrintMargin?"visible":"hidden",this.session&&-1==this.session.$wrap&&this.adjustWrapLimit()}},O.prototype.getContainerElement=function(){return this.container},O.prototype.getMouseEventTarget=function(){return this.scroller},O.prototype.getTextAreaContainer=function(){return this.container},O.prototype.$moveTextAreaToCursor=function(){if(!this.$isMousePressed){var E=this.textarea.style,D=this.$composition;if(!this.$keepTextAreaAtCursor&&!D)return void o.translate(this.textarea,-100,0);var R=this.$cursorLayer.$pixelPos;if(R){D&&D.markerRange&&(R=this.$cursorLayer.getPixelPosition(D.markerRange.start,!0));var j=this.layerConfig,N=R.top,S=R.left,k=D&&D.useTextareaForIME||A.isMobile?this.lineHeight:1;if((N-=j.offset)<0||N>j.height-k)return void o.translate(this.textarea,0,0);var F=1,Y=this.$size.height-k;D?D.useTextareaForIME?F=this.characterWidth*this.session.$getStringScreenWidth(this.textarea.value)[0]:N+=this.lineHeight+2:N+=this.lineHeight,(S-=this.scrollLeft)>this.$size.scrollerWidth-F&&(S=this.$size.scrollerWidth-F),S+=this.gutterWidth+this.margin.left,o.setStyle(E,"height",k+"px"),o.setStyle(E,"width",F+"px"),o.translate(this.textarea,Math.min(S,this.$size.scrollerWidth-F),Math.min(N,Y))}}},O.prototype.getFirstVisibleRow=function(){return this.layerConfig.firstRow},O.prototype.getFirstFullyVisibleRow=function(){return this.layerConfig.firstRow+(0===this.layerConfig.offset?0:1)},O.prototype.getLastFullyVisibleRow=function(){var E=this.layerConfig,D=E.lastRow;return this.session.documentToScreenRow(D,0)*E.lineHeight-this.session.getScrollTop()>E.height-E.lineHeight?D-1:D},O.prototype.getLastVisibleRow=function(){return this.layerConfig.lastRow},O.prototype.setPadding=function(E){this.$padding=E,this.$textLayer.setPadding(E),this.$cursorLayer.setPadding(E),this.$markerFront.setPadding(E),this.$markerBack.setPadding(E),this.$loop.schedule(this.CHANGE_FULL),this.$updatePrintMargin()},O.prototype.setScrollMargin=function(E,D,R,j){var N=this.scrollMargin;N.top=0|E,N.bottom=0|D,N.right=0|j,N.left=0|R,N.v=N.top+N.bottom,N.h=N.left+N.right,N.top&&this.scrollTop<=0&&this.session&&this.session.setScrollTop(-N.top),this.updateFull()},O.prototype.setMargin=function(E,D,R,j){var N=this.margin;N.top=0|E,N.bottom=0|D,N.right=0|j,N.left=0|R,N.v=N.top+N.bottom,N.h=N.left+N.right,this.$updateCachedSize(!0,this.gutterWidth,this.$size.width,this.$size.height),this.updateFull()},O.prototype.getHScrollBarAlwaysVisible=function(){return this.$hScrollBarAlwaysVisible},O.prototype.setHScrollBarAlwaysVisible=function(E){this.setOption("hScrollBarAlwaysVisible",E)},O.prototype.getVScrollBarAlwaysVisible=function(){return this.$vScrollBarAlwaysVisible},O.prototype.setVScrollBarAlwaysVisible=function(E){this.setOption("vScrollBarAlwaysVisible",E)},O.prototype.$updateScrollBarV=function(){var E=this.layerConfig.maxHeight,D=this.$size.scrollerHeight;!this.$maxLines&&this.$scrollPastEnd&&this.scrollTop>(E-=(D-this.lineHeight)*this.$scrollPastEnd)-D&&(E=this.scrollTop+D,this.scrollBarV.scrollTop=null),this.scrollBarV.setScrollHeight(E+this.scrollMargin.v),this.scrollBarV.setScrollTop(this.scrollTop+this.scrollMargin.top)},O.prototype.$updateScrollBarH=function(){this.scrollBarH.setScrollWidth(this.layerConfig.width+2*this.$padding+this.scrollMargin.h),this.scrollBarH.setScrollLeft(this.scrollLeft+this.scrollMargin.left)},O.prototype.freeze=function(){this.$frozen=!0},O.prototype.unfreeze=function(){this.$frozen=!1},O.prototype.$renderChanges=function(E,D){if(this.$changes&&(E|=this.$changes,this.$changes=0),this.session&&this.container.offsetWidth&&!this.$frozen&&(E||D)){if(this.$size.$dirty)return this.$changes|=E,this.onResize(!0);this.lineHeight||this.$textLayer.checkForSizeChanges(),this._signal("beforeRender",E),this.session&&this.session.$bidiHandler&&this.session.$bidiHandler.updateCharacterWidths(this.$fontMetrics);var R=this.layerConfig;if(E&this.CHANGE_FULL||E&this.CHANGE_SIZE||E&this.CHANGE_TEXT||E&this.CHANGE_LINES||E&this.CHANGE_SCROLL||E&this.CHANGE_H_SCROLL){if(E|=this.$computeLayerConfig()|this.$loop.clear(),R.firstRow!=this.layerConfig.firstRow&&R.firstRowScreen==this.layerConfig.firstRowScreen){var j=this.scrollTop+(R.firstRow-Math.max(this.layerConfig.firstRow,0))*this.lineHeight;j>0&&(this.scrollTop=j,E|=this.CHANGE_SCROLL,E|=this.$computeLayerConfig()|this.$loop.clear())}R=this.layerConfig,this.$updateScrollBarV(),E&this.CHANGE_H_SCROLL&&this.$updateScrollBarH(),o.translate(this.content,-this.scrollLeft,-R.offset);var S=R.minHeight+"px";o.setStyle(this.content.style,"width",R.width+2*this.$padding+"px"),o.setStyle(this.content.style,"height",S)}return E&this.CHANGE_H_SCROLL&&(o.translate(this.content,-this.scrollLeft,-R.offset),this.scroller.className=this.scrollLeft<=0?"ace_scroller ":"ace_scroller ace_scroll-left ",this.enableKeyboardAccessibility&&(this.scroller.className+=this.keyboardFocusClassName)),E&this.CHANGE_FULL?(this.$changedLines=null,this.$textLayer.update(R),this.$showGutter&&this.$gutterLayer.update(R),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(R),this.$markerBack.update(R),this.$markerFront.update(R),this.$cursorLayer.update(R),this.$moveTextAreaToCursor(),void this._signal("afterRender",E)):E&this.CHANGE_SCROLL?(this.$changedLines=null,E&this.CHANGE_TEXT||E&this.CHANGE_LINES?this.$textLayer.update(R):this.$textLayer.scrollLines(R),this.$showGutter&&(E&this.CHANGE_GUTTER||E&this.CHANGE_LINES?this.$gutterLayer.update(R):this.$gutterLayer.scrollLines(R)),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(R),this.$markerBack.update(R),this.$markerFront.update(R),this.$cursorLayer.update(R),this.$moveTextAreaToCursor(),void this._signal("afterRender",E)):(E&this.CHANGE_TEXT?(this.$changedLines=null,this.$textLayer.update(R),this.$showGutter&&this.$gutterLayer.update(R),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(R)):E&this.CHANGE_LINES?((this.$updateLines()||E&this.CHANGE_GUTTER&&this.$showGutter)&&this.$gutterLayer.update(R),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(R)):E&this.CHANGE_TEXT||E&this.CHANGE_GUTTER?(this.$showGutter&&this.$gutterLayer.update(R),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(R)):E&this.CHANGE_CURSOR&&(this.$highlightGutterLine&&this.$gutterLayer.updateLineHighlight(R),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(R)),E&this.CHANGE_CURSOR&&(this.$cursorLayer.update(R),this.$moveTextAreaToCursor()),E&(this.CHANGE_MARKER|this.CHANGE_MARKER_FRONT)&&this.$markerFront.update(R),E&(this.CHANGE_MARKER|this.CHANGE_MARKER_BACK)&&this.$markerBack.update(R),void this._signal("afterRender",E))}this.$changes|=E},O.prototype.$autosize=function(){var E=this.session.getScreenLength()*this.lineHeight,D=this.$maxLines*this.lineHeight,R=Math.min(D,Math.max((this.$minLines||1)*this.lineHeight,E))+this.scrollMargin.v+(this.$extraHeight||0);this.$horizScroll&&(R+=this.scrollBarH.getHeight()),this.$maxPixelHeight&&R>this.$maxPixelHeight&&(R=this.$maxPixelHeight);var N=!(R<=2*this.lineHeight)&&E>D;if(R!=this.desiredHeight||this.$size.height!=this.desiredHeight||N!=this.$vScroll){N!=this.$vScroll&&(this.$vScroll=N,this.scrollBarV.setVisible(N));var S=this.container.clientWidth;this.container.style.height=R+"px",this.$updateCachedSize(!0,this.$gutterWidth,S,R),this.desiredHeight=R,this._signal("autosize")}},O.prototype.$computeLayerConfig=function(){var E=this.session,D=this.$size,R=D.height<=2*this.lineHeight,N=this.session.getScreenLength()*this.lineHeight,S=this.$getLongestLine(),k=!R&&(this.$hScrollBarAlwaysVisible||D.scrollerWidth-S-2*this.$padding<0),F=this.$horizScroll!==k;F&&(this.$horizScroll=k,this.scrollBarH.setVisible(k));var Y=this.$vScroll;this.$maxLines&&this.lineHeight>1&&this.$autosize();var se=D.scrollerHeight+this.lineHeight,ne=!this.$maxLines&&this.$scrollPastEnd?(D.scrollerHeight-this.lineHeight)*this.$scrollPastEnd:0;N+=ne;var me=this.scrollMargin;this.session.setScrollTop(Math.max(-me.top,Math.min(this.scrollTop,N-D.scrollerHeight+me.bottom))),this.session.setScrollLeft(Math.max(-me.left,Math.min(this.scrollLeft,S+2*this.$padding-D.scrollerWidth+me.right)));var $=!R&&(this.$vScrollBarAlwaysVisible||D.scrollerHeight-N+ne<0||this.scrollTop>me.top),q=Y!==$;q&&(this.$vScroll=$,this.scrollBarV.setVisible($));var Xe,Be,Q=this.scrollTop%this.lineHeight,ue=Math.ceil(se/this.lineHeight)-1,Me=Math.max(0,Math.round((this.scrollTop-Q)/this.lineHeight)),Oe=Me+ue,$e=this.lineHeight;Me=E.screenToDocumentRow(Me,0);var st=E.getFoldLine(Me);st&&(Me=st.start.row),Xe=E.documentToScreenRow(Me,0),Be=E.getRowLength(Me)*$e,Oe=Math.min(E.screenToDocumentRow(Oe,0),E.getLength()-1),se=D.scrollerHeight+E.getRowLength(Oe)*$e+Be,Q=this.scrollTop-Xe*$e;var Mt=0;return(this.layerConfig.width!=S||F)&&(Mt=this.CHANGE_H_SCROLL),(F||q)&&(Mt|=this.$updateCachedSize(!0,this.gutterWidth,D.width,D.height),this._signal("scrollbarVisibilityChanged"),q&&(S=this.$getLongestLine())),this.layerConfig={width:S,padding:this.$padding,firstRow:Me,firstRowScreen:Xe,lastRow:Oe,lineHeight:$e,characterWidth:this.characterWidth,minHeight:se,maxHeight:N,offset:Q,gutterOffset:$e?Math.max(0,Math.ceil((Q+D.height-D.scrollerHeight)/$e)):0,height:this.$size.scrollerHeight},this.session.$bidiHandler&&this.session.$bidiHandler.setContentWidth(S-this.$padding),Mt},O.prototype.$updateLines=function(){if(this.$changedLines){var E=this.$changedLines.firstRow,D=this.$changedLines.lastRow;this.$changedLines=null;var R=this.layerConfig;if(!(E>R.lastRow+1||Dthis.$textLayer.MAX_LINE_LENGTH&&(E=this.$textLayer.MAX_LINE_LENGTH+30),Math.max(this.$size.scrollerWidth-2*this.$padding,Math.round(E*this.characterWidth))},O.prototype.updateFrontMarkers=function(){this.$markerFront.setMarkers(this.session.getMarkers(!0)),this.$loop.schedule(this.CHANGE_MARKER_FRONT)},O.prototype.updateBackMarkers=function(){this.$markerBack.setMarkers(this.session.getMarkers()),this.$loop.schedule(this.CHANGE_MARKER_BACK)},O.prototype.addGutterDecoration=function(E,D){this.$gutterLayer.addGutterDecoration(E,D)},O.prototype.removeGutterDecoration=function(E,D){this.$gutterLayer.removeGutterDecoration(E,D)},O.prototype.updateBreakpoints=function(E){this.$loop.schedule(this.CHANGE_GUTTER)},O.prototype.setAnnotations=function(E){this.$gutterLayer.setAnnotations(E),this.$loop.schedule(this.CHANGE_GUTTER)},O.prototype.updateCursor=function(){this.$loop.schedule(this.CHANGE_CURSOR)},O.prototype.hideCursor=function(){this.$cursorLayer.hideCursor()},O.prototype.showCursor=function(){this.$cursorLayer.showCursor()},O.prototype.scrollSelectionIntoView=function(E,D,R){this.scrollCursorIntoView(E,R),this.scrollCursorIntoView(D,R)},O.prototype.scrollCursorIntoView=function(E,D,R){if(0!==this.$size.scrollerHeight){var j=this.$cursorLayer.getPixelPosition(E),N=j.left,S=j.top,k=R&&R.top||0,F=R&&R.bottom||0;this.$scrollAnimation&&(this.$stopAnimation=!0);var Y=this.$scrollAnimation?this.session.getScrollTop():this.scrollTop;Y+k>S?(D&&Y+k>S+this.lineHeight&&(S-=D*this.$size.scrollerHeight),0===S&&(S=-this.scrollMargin.top),this.session.setScrollTop(S)):Y+this.$size.scrollerHeight-F=1-this.scrollMargin.top||D>0&&this.session.getScrollTop()+this.$size.scrollerHeight-this.layerConfig.maxHeight<-1+this.scrollMargin.bottom||E<0&&this.session.getScrollLeft()>=1-this.scrollMargin.left||E>0&&this.session.getScrollLeft()+this.$size.scrollerWidth-this.layerConfig.width<-1+this.scrollMargin.right)return!0},O.prototype.pixelToScreenCoordinates=function(E,D){var R;if(this.$hasCssTransforms){R={top:0,left:0};var j=this.$fontMetrics.transformCoordinates([E,D]);E=j[1]-this.gutterWidth-this.margin.left,D=j[0]}else R=this.scroller.getBoundingClientRect();var N=E+this.scrollLeft-R.left-this.$padding,S=N/this.characterWidth,k=Math.floor((D+this.scrollTop-R.top)/this.lineHeight),F=this.$blockCursor?Math.floor(S):Math.round(S);return{row:k,column:F,side:S-F>0?1:-1,offsetX:N}},O.prototype.screenToTextCoordinates=function(E,D){var R;if(this.$hasCssTransforms){R={top:0,left:0};var j=this.$fontMetrics.transformCoordinates([E,D]);E=j[1]-this.gutterWidth-this.margin.left,D=j[0]}else R=this.scroller.getBoundingClientRect();var N=E+this.scrollLeft-R.left-this.$padding,S=N/this.characterWidth,k=this.$blockCursor?Math.floor(S):Math.round(S),F=Math.floor((D+this.scrollTop-R.top)/this.lineHeight);return this.session.screenToDocumentPosition(F,Math.max(k,0),N)},O.prototype.textToScreenCoordinates=function(E,D){var R=this.scroller.getBoundingClientRect(),j=this.session.documentToScreenPosition(E,D),N=this.$padding+(this.session.$bidiHandler.isBidiRow(j.row,E)?this.session.$bidiHandler.getPosLeft(j.column):Math.round(j.column*this.characterWidth));return{pageX:R.left+N-this.scrollLeft,pageY:R.top+j.row*this.lineHeight-this.scrollTop}},O.prototype.visualizeFocus=function(){o.addCssClass(this.container,"ace_focus")},O.prototype.visualizeBlur=function(){o.removeCssClass(this.container,"ace_focus")},O.prototype.showComposition=function(E){this.$composition=E,E.cssText||(E.cssText=this.textarea.style.cssText),null==E.useTextareaForIME&&(E.useTextareaForIME=this.$useTextareaForIME),this.$useTextareaForIME?(o.addCssClass(this.textarea,"ace_composition"),this.textarea.style.cssText="",this.$moveTextAreaToCursor(),this.$cursorLayer.element.style.display="none"):E.markerId=this.session.addMarker(E.markerRange,"ace_composition_marker","text")},O.prototype.setCompositionText=function(E){var D=this.session.selection.cursor;this.addToken(E,"composition_placeholder",D.row,D.column),this.$moveTextAreaToCursor()},O.prototype.hideComposition=function(){if(this.$composition){this.$composition.markerId&&this.session.removeMarker(this.$composition.markerId),o.removeCssClass(this.textarea,"ace_composition"),this.textarea.style.cssText=this.$composition.cssText;var E=this.session.selection.cursor;this.removeExtraToken(E.row,E.column),this.$composition=null,this.$cursorLayer.element.style.display=""}},O.prototype.setGhostText=function(E,D){var R=this.session.selection.cursor,j=D||{row:R.row,column:R.column};this.removeGhostText();var N=E.split("\n");this.addToken(N[0],"ghost_text",j.row,j.column),this.$ghostText={text:E,position:{row:j.row,column:j.column}},N.length>1&&(this.$ghostTextWidget={text:N.slice(1).join("\n"),row:j.row,column:j.column,className:"ace_ghost_text"},this.session.widgetManager.addLineWidget(this.$ghostTextWidget))},O.prototype.removeGhostText=function(){if(this.$ghostText){var E=this.$ghostText.position;this.removeExtraToken(E.row,E.column),this.$ghostTextWidget&&(this.session.widgetManager.removeLineWidget(this.$ghostTextWidget),this.$ghostTextWidget=null),this.$ghostText=null}},O.prototype.addToken=function(E,D,R,j){var N=this.session;N.bgTokenizer.lines[R]=null;var S={type:D,value:E},k=N.getTokens(R);if(null!=j&&k.length)for(var F=0,Y=0;Y1||Math.abs(E.$size.height-j)>1?E.$resizeTimer.delay():E.$resizeTimer.cancel()}),this.$resizeObserver.observe(this.container)}},O}();T.prototype.CHANGE_CURSOR=1,T.prototype.CHANGE_MARKER=2,T.prototype.CHANGE_GUTTER=4,T.prototype.CHANGE_SCROLL=8,T.prototype.CHANGE_LINES=16,T.prototype.CHANGE_TEXT=32,T.prototype.CHANGE_SIZE=64,T.prototype.CHANGE_MARKER_BACK=128,T.prototype.CHANGE_MARKER_FRONT=256,T.prototype.CHANGE_FULL=512,T.prototype.CHANGE_H_SCROLL=1024,T.prototype.$changes=0,T.prototype.$padding=null,T.prototype.$frozen=!1,T.prototype.STEPS=8,b.implement(T.prototype,x),a.defineOptions(T.prototype,"renderer",{useResizeObserver:{set:function(O){!O&&this.$resizeObserver?(this.$resizeObserver.disconnect(),this.$resizeTimer.cancel(),this.$resizeTimer=this.$resizeObserver=null):O&&!this.$resizeObserver&&this.$addResizeObserver()}},animatedScroll:{initialValue:!1},showInvisibles:{set:function(O){this.$textLayer.setShowInvisibles(O)&&this.$loop.schedule(this.CHANGE_TEXT)},initialValue:!1},showPrintMargin:{set:function(){this.$updatePrintMargin()},initialValue:!0},printMarginColumn:{set:function(){this.$updatePrintMargin()},initialValue:80},printMargin:{set:function(O){"number"==typeof O&&(this.$printMarginColumn=O),this.$showPrintMargin=!!O,this.$updatePrintMargin()},get:function(){return this.$showPrintMargin&&this.$printMarginColumn}},showGutter:{set:function(O){this.$gutter.style.display=O?"block":"none",this.$loop.schedule(this.CHANGE_FULL),this.onGutterResize()},initialValue:!0},useSvgGutterIcons:{set:function(O){this.$gutterLayer.$useSvgGutterIcons=O},initialValue:!1},showFoldedAnnotations:{set:function(O){this.$gutterLayer.$showFoldedAnnotations=O},initialValue:!1},fadeFoldWidgets:{set:function(O){o.setCssClass(this.$gutter,"ace_fade-fold-widgets",O)},initialValue:!1},showFoldWidgets:{set:function(O){this.$gutterLayer.setShowFoldWidgets(O),this.$loop.schedule(this.CHANGE_GUTTER)},initialValue:!0},displayIndentGuides:{set:function(O){this.$textLayer.setDisplayIndentGuides(O)&&this.$loop.schedule(this.CHANGE_TEXT)},initialValue:!0},highlightIndentGuides:{set:function(O){1==this.$textLayer.setHighlightIndentGuides(O)?this.$textLayer.$highlightIndentGuide():this.$textLayer.$clearActiveIndentGuide(this.$textLayer.$lines.cells)},initialValue:!0},highlightGutterLine:{set:function(O){this.$gutterLayer.setHighlightGutterLine(O),this.$loop.schedule(this.CHANGE_GUTTER)},initialValue:!0},hScrollBarAlwaysVisible:{set:function(O){(!this.$hScrollBarAlwaysVisible||!this.$horizScroll)&&this.$loop.schedule(this.CHANGE_SCROLL)},initialValue:!1},vScrollBarAlwaysVisible:{set:function(O){(!this.$vScrollBarAlwaysVisible||!this.$vScroll)&&this.$loop.schedule(this.CHANGE_SCROLL)},initialValue:!1},fontSize:{set:function(O){"number"==typeof O&&(O+="px"),this.container.style.fontSize=O,this.updateFontSize()},initialValue:12},fontFamily:{set:function(O){this.container.style.fontFamily=O,this.updateFontSize()}},maxLines:{set:function(O){this.updateFull()}},minLines:{set:function(O){this.$minLines<562949953421311||(this.$minLines=0),this.updateFull()}},maxPixelHeight:{set:function(O){this.updateFull()},initialValue:0},scrollPastEnd:{set:function(O){this.$scrollPastEnd!=(O=+O||0)&&(this.$scrollPastEnd=O,this.$loop.schedule(this.CHANGE_SCROLL))},initialValue:0,handlesSet:!0},fixedWidthGutter:{set:function(O){this.$gutterLayer.$fixedWidth=!!O,this.$loop.schedule(this.CHANGE_GUTTER)}},customScrollbar:{set:function(O){this.$updateCustomScrollbar(O)},initialValue:!1},theme:{set:function(O){this.setTheme(O)},get:function(){return this.$themeId||this.theme},initialValue:"./theme/textmate",handlesSet:!0},hasCssTransforms:{},useTextareaForIME:{initialValue:!A.isMobile&&!A.isIE}}),p.VirtualRenderer=T}),ace.define("ace/worker/worker_client",["require","exports","module","ace/lib/oop","ace/lib/net","ace/lib/event_emitter","ace/config"],function(n,p,C){"use strict";var b=n("../lib/oop"),o=n("../lib/net"),v=n("../lib/event_emitter").EventEmitter,a=n("../config");function s(r){if(typeof Worker>"u")return{postMessage:function(){},terminate:function(){}};if(a.get("loadWorkerFromBlob")){var u=function c(r){var u="importScripts('"+o.qualifyURL(r)+"');";try{return new Blob([u],{type:"application/javascript"})}catch{var m=new(window.BlobBuilder||window.WebKitBlobBuilder||window.MozBlobBuilder);return m.append(u),m.getBlob("application/javascript")}}(r),m=(window.URL||window.webkitURL).createObjectURL(u);return new Worker(m)}return new Worker(r)}var l=function(r){r.postMessage||(r=this.$createWorkerFromOldConfig.apply(this,arguments)),this.$worker=r,this.$sendDeltaQueue=this.$sendDeltaQueue.bind(this),this.changeListener=this.changeListener.bind(this),this.onMessage=this.onMessage.bind(this),this.callbackId=1,this.callbacks={},this.$worker.onmessage=this.onMessage};(function(){b.implement(this,v),this.$createWorkerFromOldConfig=function(r,u,h,m,_){if(n.nameToUrl&&!n.toUrl&&(n.toUrl=n.nameToUrl),a.get("packaged")||!n.toUrl)m=m||a.moduleUrl(u,"worker");else{var M=this.$normalizePath;m=m||M(n.toUrl("ace/worker/worker.js",null,"_"));var x={};r.forEach(function(w){x[w]=M(n.toUrl(w,null,"_").replace(/(\.js)?(\?.*)?$/,""))})}return this.$worker=s(m),_&&this.send("importScripts",_),this.$worker.postMessage({init:!0,tlns:x,module:u,classname:h}),this.$worker},this.onMessage=function(r){var u=r.data;switch(u.type){case"event":this._signal(u.name,{data:u.data});break;case"call":var h=this.callbacks[u.id];h&&(h(u.data),delete this.callbacks[u.id]);break;case"error":this.reportError(u.data);break;case"log":window.console&&console.log&&console.log.apply(console,u.data)}},this.reportError=function(r){window.console&&console.error&&console.error(r)},this.$normalizePath=function(r){return o.qualifyURL(r)},this.terminate=function(){this._signal("terminate",{}),this.deltaQueue=null,this.$worker.terminate(),this.$worker.onerror=function(r){r.preventDefault()},this.$worker=null,this.$doc&&this.$doc.off("change",this.changeListener),this.$doc=null},this.send=function(r,u){this.$worker.postMessage({command:r,args:u})},this.call=function(r,u,h){if(h){var m=this.callbackId++;this.callbacks[m]=h,u.push(m)}this.send(r,u)},this.emit=function(r,u){try{u.data&&u.data.err&&(u.data.err={message:u.data.err.message,stack:u.data.err.stack,code:u.data.err.code}),this.$worker&&this.$worker.postMessage({event:r,data:{data:u.data}})}catch(h){console.error(h.stack)}},this.attachToDocument=function(r){this.$doc&&this.terminate(),this.$doc=r,this.call("setValue",[r.getValue()]),r.on("change",this.changeListener,!0)},this.changeListener=function(r){this.deltaQueue||(this.deltaQueue=[],setTimeout(this.$sendDeltaQueue,0)),this.deltaQueue.push(r.start,"insert"==r.action?r.lines:r.end)},this.$sendDeltaQueue=function(){var r=this.deltaQueue;r&&(this.deltaQueue=null,r.length>50&&r.length>this.$doc.getLength()>>1?this.call("setValue",[this.$doc.getValue()]):this.emit("change",{data:r}))}}).call(l.prototype),p.UIWorkerClient=function(r,u,h){var m=null,_=!1,M=Object.create(v),x=[],w=new l({messageBuffer:x,terminate:function(){},postMessage:function(A){x.push(A),m&&(_?setTimeout(L):L())}});w.setEmitSync=function(A){_=A};var L=function(){var A=x.shift();A.command?m[A.command].apply(m,A.args):A.event&&M._signal(A.event,A.data)};return M.postMessage=function(A){w.onMessage({data:A})},M.callback=function(A,T){this.postMessage({type:"call",id:T,data:A})},M.emit=function(A,T){this.postMessage({type:"event",name:A,data:T})},a.loadModule(["worker",u],function(A){for(m=new A[h](M);x.length;)L()}),w},p.WorkerClient=l,p.createWorker=s}),ace.define("ace/placeholder",["require","exports","module","ace/range","ace/lib/event_emitter","ace/lib/oop"],function(n,p,C){"use strict";var b=n("./range").Range,o=n("./lib/event_emitter").EventEmitter,v=n("./lib/oop"),a=function(){function c(s,l,d,r,u,h){var m=this;this.length=l,this.session=s,this.doc=s.getDocument(),this.mainClass=u,this.othersClass=h,this.$onUpdate=this.onUpdate.bind(this),this.doc.on("change",this.$onUpdate,!0),this.$others=r,this.$onCursorChange=function(){setTimeout(function(){m.onCursorChange()})},this.$pos=d;var _=s.getUndoManager().$undoStack||s.getUndoManager().$undostack||{length:-1};this.$undoStackDepth=_.length,this.setup(),s.selection.on("changeCursor",this.$onCursorChange)}return c.prototype.setup=function(){var s=this,l=this.doc,d=this.session;this.selectionBefore=d.selection.toJSON(),d.selection.inMultiSelectMode&&d.selection.toSingleRange(),this.pos=l.createAnchor(this.$pos.row,this.$pos.column);var r=this.pos;r.$insertRight=!0,r.detach(),r.markerId=d.addMarker(new b(r.row,r.column,r.row,r.column+this.length),this.mainClass,null,!1),this.others=[],this.$others.forEach(function(u){var h=l.createAnchor(u.row,u.column);h.$insertRight=!0,h.detach(),s.others.push(h)}),d.setUndoSelect(!1)},c.prototype.showOtherMarkers=function(){if(!this.othersActive){var s=this.session,l=this;this.othersActive=!0,this.others.forEach(function(d){d.markerId=s.addMarker(new b(d.row,d.column,d.row,d.column+l.length),l.othersClass,null,!1)})}},c.prototype.hideOtherMarkers=function(){if(this.othersActive){this.othersActive=!1;for(var s=0;s=this.pos.column&&l.start.column<=this.pos.column+this.length+1,u=l.start.column-this.pos.column;if(this.updateAnchors(s),r&&(this.length+=d),r&&!this.session.$fromUndo)if("insert"===s.action)for(var h=this.others.length-1;h>=0;h--)this.doc.insertMergedLines(_={row:(m=this.others[h]).row,column:m.column+u},s.lines);else if("remove"===s.action)for(h=this.others.length-1;h>=0;h--){var m,_;this.doc.remove(new b((_={row:(m=this.others[h]).row,column:m.column+u}).row,_.column,_.row,_.column-d))}this.$updating=!1,this.updateMarkers()}},c.prototype.updateAnchors=function(s){this.pos.onChange(s);for(var l=this.others.length;l--;)this.others[l].onChange(s);this.updateMarkers()},c.prototype.updateMarkers=function(){if(!this.$updating){var s=this,l=this.session,d=function(u,h){l.removeMarker(u.markerId),u.markerId=l.addMarker(new b(u.row,u.column,u.row,u.column+s.length),h,null,!1)};d(this.pos,this.mainClass);for(var r=this.others.length;r--;)d(this.others[r],this.othersClass)}},c.prototype.onCursorChange=function(s){if(!this.$updating&&this.session){var l=this.session.selection.getCursor();l.row===this.pos.row&&l.column>=this.pos.column&&l.column<=this.pos.column+this.length?(this.showOtherMarkers(),this._emit("cursorEnter",s)):(this.hideOtherMarkers(),this._emit("cursorLeave",s))}},c.prototype.detach=function(){this.session.removeMarker(this.pos&&this.pos.markerId),this.hideOtherMarkers(),this.doc.off("change",this.$onUpdate),this.session.selection.off("changeCursor",this.$onCursorChange),this.session.setUndoSelect(!0),this.session=null},c.prototype.cancel=function(){if(-1!==this.$undoStackDepth){for(var s=this.session.getUndoManager(),l=(s.$undoStack||s.$undostack).length-this.$undoStackDepth,d=0;d1?o.multiSelect.joinSelections():o.multiSelect.splitIntoLines()},bindKey:{win:"Ctrl-Alt-L",mac:"Ctrl-Alt-L"},readOnly:!0},{name:"splitSelectionIntoLines",description:"Split into lines",exec:function(o){o.multiSelect.splitIntoLines()},readOnly:!0},{name:"alignCursors",description:"Align cursors",exec:function(o){o.alignCursors()},bindKey:{win:"Ctrl-Alt-A",mac:"Ctrl-Alt-A"},scrollIntoView:"cursor"},{name:"findAll",description:"Find all",exec:function(o){o.findAll()},bindKey:{win:"Ctrl-Alt-K",mac:"Ctrl-Alt-G"},scrollIntoView:"cursor",readOnly:!0}],p.multiSelectCommands=[{name:"singleSelection",description:"Single selection",bindKey:"esc",exec:function(o){o.exitMultiSelectMode()},scrollIntoView:"cursor",readOnly:!0,isAvailable:function(o){return o&&o.inMultiSelectMode}}];var b=n("../keyboard/hash_handler").HashHandler;p.keyboardHandler=new b(p.multiSelectCommands)}),ace.define("ace/multi_select",["require","exports","module","ace/range_list","ace/range","ace/selection","ace/mouse/multi_select_handler","ace/lib/event","ace/lib/lang","ace/commands/multi_select_commands","ace/search","ace/edit_session","ace/editor","ace/config"],function(n,p,C){var b=n("./range_list").RangeList,o=n("./range").Range,v=n("./selection").Selection,a=n("./mouse/multi_select_handler").onMouseDown,c=n("./lib/event"),s=n("./lib/lang"),l=n("./commands/multi_select_commands");p.commands=l.defaultCommands.concat(l.multiSelectCommands);var r=new(0,n("./search").Search),h=n("./edit_session").EditSession;(function(){this.getSelectionMarkers=function(){return this.$selectionMarkers}}).call(h.prototype),function(){this.ranges=null,this.rangeList=null,this.addRange=function(w,L){if(w){if(!this.inMultiSelectMode&&0===this.rangeCount){var A=this.toOrientedRange();if(this.rangeList.add(A),this.rangeList.add(w),2!=this.rangeList.ranges.length)return this.rangeList.removeAll(),L||this.fromOrientedRange(w);this.rangeList.removeAll(),this.rangeList.add(A),this.$onAddRange(A)}w.cursor||(w.cursor=w.end);var T=this.rangeList.add(w);return this.$onAddRange(w),T.length&&this.$onRemoveRange(T),this.rangeCount>1&&!this.inMultiSelectMode&&(this._signal("multiSelect"),this.inMultiSelectMode=!0,this.session.$undoSelect=!1,this.rangeList.attach(this.session)),L||this.fromOrientedRange(w)}},this.toSingleRange=function(w){w=w||this.ranges[0];var L=this.rangeList.removeAll();L.length&&this.$onRemoveRange(L),w&&this.fromOrientedRange(w)},this.substractPoint=function(w){var L=this.rangeList.substractPoint(w);if(L)return this.$onRemoveRange(L),L[0]},this.mergeOverlappingRanges=function(){var w=this.rangeList.merge();w.length&&this.$onRemoveRange(w)},this.$onAddRange=function(w){this.rangeCount=this.rangeList.ranges.length,this.ranges.unshift(w),this._signal("addRange",{range:w})},this.$onRemoveRange=function(w){if(this.rangeCount=this.rangeList.ranges.length,1==this.rangeCount&&this.inMultiSelectMode){var L=this.rangeList.ranges.pop();w.push(L),this.rangeCount=0}for(var A=w.length;A--;){var T=this.ranges.indexOf(w[A]);this.ranges.splice(T,1)}this._signal("removeRange",{ranges:w}),0===this.rangeCount&&this.inMultiSelectMode&&(this.inMultiSelectMode=!1,this._signal("singleSelect"),this.session.$undoSelect=!0,this.rangeList.detach(this.session)),(L=L||this.ranges[0])&&!L.isEqual(this.getRange())&&this.fromOrientedRange(L)},this.$initRangeList=function(){this.rangeList||(this.rangeList=new b,this.ranges=[],this.rangeCount=0)},this.getAllRanges=function(){return this.rangeCount?this.rangeList.ranges.concat():[this.getRange()]},this.splitIntoLines=function(){for(var w=this.ranges.length?this.ranges:[this.getRange()],L=[],A=0;A1){var w=this.rangeList.ranges,L=w[w.length-1],A=o.fromPoints(w[0].start,L.end);this.toSingleRange(),this.setSelectionRange(A,L.cursor==L.start)}else{var T=this.session.documentToScreenPosition(this.cursor),O=this.session.documentToScreenPosition(this.anchor);this.rectangularRangeBlock(T,O).forEach(this.addRange,this)}},this.rectangularRangeBlock=function(w,L,A){var T=[],O=w.column0;)ne--;if(ne>0)for(var me=0;T[me].isEmpty();)me++;for(var $=ne;$>=me;$--)T[$].isEmpty()&&T.splice($,1)}return T}}.call(v.prototype);var m=n("./editor").Editor;function _(w,L){return w.row==L.row&&w.column==L.column}function M(w){w.$multiselectOnSessionChange||(w.$onAddRange=w.$onAddRange.bind(w),w.$onRemoveRange=w.$onRemoveRange.bind(w),w.$onMultiSelect=w.$onMultiSelect.bind(w),w.$onSingleSelect=w.$onSingleSelect.bind(w),w.$multiselectOnSessionChange=p.onSessionChange.bind(w),w.$checkMultiselectChange=w.$checkMultiselectChange.bind(w),w.$multiselectOnSessionChange(w),w.on("changeSession",w.$multiselectOnSessionChange),w.on("mousedown",a),w.commands.addCommands(l.defaultCommands),function x(w){if(w.textInput){var L=w.textInput.getElement(),A=!1;c.addListener(L,"keydown",function(O){w.$blockSelectEnabled&&18==O.keyCode&&!(O.ctrlKey||O.shiftKey||O.metaKey)?A||(w.renderer.setMouseCursor("crosshair"),A=!0):A&&T()},w),c.addListener(L,"keyup",T,w),c.addListener(L,"blur",T,w)}function T(O){A&&(w.renderer.setMouseCursor(""),A=!1)}}(w))}(function(){this.updateSelectionMarkers=function(){this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.addSelectionMarker=function(w){w.cursor||(w.cursor=w.end);var L=this.getSelectionStyle();return w.marker=this.session.addMarker(w,"ace_selection",L),this.session.$selectionMarkers.push(w),this.session.selectionMarkerCount=this.session.$selectionMarkers.length,w},this.removeSelectionMarker=function(w){if(w.marker){this.session.removeMarker(w.marker);var L=this.session.$selectionMarkers.indexOf(w);-1!=L&&this.session.$selectionMarkers.splice(L,1),this.session.selectionMarkerCount=this.session.$selectionMarkers.length}},this.removeSelectionMarkers=function(w){for(var L=this.session.$selectionMarkers,A=w.length;A--;){var T=w[A];if(T.marker){this.session.removeMarker(T.marker);var O=L.indexOf(T);-1!=O&&L.splice(O,1)}}this.session.selectionMarkerCount=L.length},this.$onAddRange=function(w){this.addSelectionMarker(w.range),this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.$onRemoveRange=function(w){this.removeSelectionMarkers(w.ranges),this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.$onMultiSelect=function(w){this.inMultiSelectMode||(this.inMultiSelectMode=!0,this.setStyle("ace_multiselect"),this.keyBinding.addKeyboardHandler(l.keyboardHandler),this.commands.setDefaultHandler("exec",this.$onMultiSelectExec),this.renderer.updateCursor(),this.renderer.updateBackMarkers())},this.$onSingleSelect=function(w){this.session.multiSelect.inVirtualMode||(this.inMultiSelectMode=!1,this.unsetStyle("ace_multiselect"),this.keyBinding.removeKeyboardHandler(l.keyboardHandler),this.commands.removeDefaultHandler("exec",this.$onMultiSelectExec),this.renderer.updateCursor(),this.renderer.updateBackMarkers(),this._emit("changeSelection"))},this.$onMultiSelectExec=function(w){var L=w.command,A=w.editor;if(A.multiSelect){if(L.multiSelectAction)"forEach"==L.multiSelectAction?T=A.forEachSelection(L,w.args):"forEachLine"==L.multiSelectAction?T=A.forEachSelection(L,w.args,!0):"single"==L.multiSelectAction?(A.exitMultiSelectMode(),T=L.exec(A,w.args||{})):T=L.multiSelectAction(A,w.args||{});else{var T=L.exec(A,w.args||{});A.multiSelect.addRange(A.multiSelect.toOrientedRange()),A.multiSelect.mergeOverlappingRanges()}return T}},this.forEachSelection=function(w,L,A){if(!this.inVirtualSelectionMode){var N,O=1==A||A&&A.$byLines,E=this.session,D=this.selection,j=(A&&A.keepOrder?D:D.rangeList).ranges;if(!j.length)return w.exec?w.exec(this,L||{}):w(this,L||{});var S=D._eventRegistry;D._eventRegistry={};var k=new v(E);this.inVirtualSelectionMode=!0;for(var F=j.length;F--;){if(O)for(;F>0&&j[F].start.row==j[F-1].end.row;)F--;k.fromOrientedRange(j[F]),k.index=F,this.selection=E.selection=k;var Y=w.exec?w.exec(this,L||{}):w(this,L||{});!N&&void 0!==Y&&(N=Y),k.toOrientedRange(j[F])}k.detach(),this.selection=E.selection=D,this.inVirtualSelectionMode=!1,D._eventRegistry=S,D.mergeOverlappingRanges(),D.ranges[0]&&D.fromOrientedRange(D.ranges[0]);var se=this.renderer.$scrollAnimation;return this.onCursorChange(),this.onSelectionChange(),se&&se.from==se.to&&this.renderer.animateScrolling(se.from),N}},this.exitMultiSelectMode=function(){!this.inMultiSelectMode||this.inVirtualSelectionMode||this.multiSelect.toSingleRange()},this.getSelectedText=function(){var w="";if(this.inMultiSelectMode&&!this.inVirtualSelectionMode){for(var L=this.multiSelect.rangeList.ranges,A=[],T=0;TF&&(F=me.column),qQ?w.insert($,s.stringRepeat(" ",q-Q)):w.remove(new o($.row,$.column,$.row,$.column-q+Q)),ne.start.column=ne.end.column=F,ne.start.row=ne.end.row=$.row,ne.cursor=ne.end}),L.fromOrientedRange(A[0]),this.renderer.updateCursor(),this.renderer.updateBackMarkers()}else{var E=this.selection.getRange(),D=E.start.row,R=E.end.row,j=D==R;if(j){var S,N=this.session.getLength();do{S=this.session.getLine(R)}while(/[=:]/.test(S)&&++R0);D<0&&(D=0),R>=N&&(R=N-1)}var k=this.session.removeFullLines(D,R);k=this.$reAlignText(k,j),this.session.insert({row:D,column:0},k.join("\n")+"\n"),j||(E.start.column=0,E.end.column=k[k.length-1].length),this.selection.setRange(E)}},this.$reAlignText=function(w,L){var O,E,D,A=!0,T=!0;return w.map(function(k){var F=k.match(/(\s*)(.*?)(\s*)([=:].*)/);return F?null==O?(O=F[1].length,E=F[2].length,D=F[3].length,F):(O+E+D!=F[1].length+F[2].length+F[3].length&&(T=!1),O!=F[1].length&&(A=!1),O>F[1].length&&(O=F[1].length),EF[3].length&&(D=F[3].length),F):[k]}).map(L?j:A?T?function N(k){return k[2]?R(O+E-k[2].length)+k[2]+R(D)+k[4].replace(/^([=:])\s+/,"$1 "):k[0]}:j:function S(k){return k[2]?R(O)+k[2]+R(D)+k[4].replace(/^([=:])\s+/,"$1 "):k[0]});function R(k){return s.stringRepeat(" ",k)}function j(k){return k[2]?R(O)+k[2]+R(E-k[2].length+D)+k[4].replace(/^([=:])\s+/,"$1 "):k[0]}}}).call(m.prototype),p.onSessionChange=function(w){var L=w.session;L&&!L.multiSelect&&(L.$selectionMarkers=[],L.selection.$initRangeList(),L.multiSelect=L.selection),this.multiSelect=L&&L.multiSelect;var A=w.oldSession;A&&(A.multiSelect.off("addRange",this.$onAddRange),A.multiSelect.off("removeRange",this.$onRemoveRange),A.multiSelect.off("multiSelect",this.$onMultiSelect),A.multiSelect.off("singleSelect",this.$onSingleSelect),A.multiSelect.lead.off("change",this.$checkMultiselectChange),A.multiSelect.anchor.off("change",this.$checkMultiselectChange)),L&&(L.multiSelect.on("addRange",this.$onAddRange),L.multiSelect.on("removeRange",this.$onRemoveRange),L.multiSelect.on("multiSelect",this.$onMultiSelect),L.multiSelect.on("singleSelect",this.$onSingleSelect),L.multiSelect.lead.on("change",this.$checkMultiselectChange),L.multiSelect.anchor.on("change",this.$checkMultiselectChange)),L&&this.inMultiSelectMode!=L.selection.inMultiSelectMode&&(L.selection.inMultiSelectMode?this.$onMultiSelect():this.$onSingleSelect())},p.MultiSelect=M,n("./config").defineOptions(m.prototype,"editor",{enableMultiselect:{set:function(w){M(this),w?this.on("mousedown",a):this.off("mousedown",a)},value:!0},enableBlockSelect:{set:function(w){this.$blockSelectEnabled=w},value:!0}})}),ace.define("ace/mode/folding/fold_mode",["require","exports","module","ace/range"],function(n,p,C){"use strict";var b=n("../../range").Range,o=p.FoldMode=function(){};(function(){this.foldingStartMarker=null,this.foldingStopMarker=null,this.getFoldWidget=function(v,a,c){var s=v.getLine(c);return this.foldingStartMarker.test(s)?"start":"markbeginend"==a&&this.foldingStopMarker&&this.foldingStopMarker.test(s)?"end":""},this.getFoldWidgetRange=function(v,a,c){return null},this.indentationBlock=function(v,a,c){var s=/\S/,l=v.getLine(a),d=l.search(s);if(-1!=d){for(var r=c||l.length,u=v.getLength(),h=a,m=a;++ah){var x=v.getLine(m).length;return new b(h,r,m,x)}}},this.openingBracketBlock=function(v,a,c,s,l){var d={row:c,column:s+1},r=v.$findClosingBracket(a,d,l);if(r){var u=v.foldWidgets[r.row];return null==u&&(u=v.getFoldWidget(r.row)),"start"==u&&r.row>d.row&&(r.row--,r.column=v.getLine(r.row).length),b.fromPoints(d,r)}},this.closingBracketBlock=function(v,a,c,s,l){var d={row:c,column:s},r=v.$findOpeningBracket(a,d);if(r)return r.column++,d.column--,b.fromPoints(r,d)}}).call(o.prototype)}),ace.define("ace/ext/error_marker",["require","exports","module","ace/line_widgets","ace/lib/dom","ace/range","ace/config"],function(n,p,C){"use strict";var b=n("../line_widgets").LineWidgets,o=n("../lib/dom"),v=n("../range").Range,a=n("../config").nls;p.showErrorMarker=function(l,d){var r=l.session;r.widgetManager||(r.widgetManager=new b(r),r.widgetManager.attach(l));var u=l.getCursorPosition(),h=u.row,m=r.widgetManager.getWidgetsAtRow(h).filter(function(E){return"errorMarker"==E.type})[0];m?m.destroy():h-=d;var M,_=function s(l,d,r){var u=l.getAnnotations().sort(v.comparePoints);if(u.length){var h=function c(l,d,r){for(var u=0,h=l.length-1;u<=h;){var m=u+h>>1,_=r(d,l[m]);if(_>0)u=m+1;else{if(!(_<0))return m;h=m-1}}return-(u+1)}(u,{row:d,column:-1},v.comparePoints);h<0&&(h=-h-1),h>=u.length?h=r>0?0:u.length-1:0===h&&r<0&&(h=u.length-1);var m=u[h];if(m&&r){if(m.row===d){do{m=u[h+=r]}while(m&&m.row===d);if(!m)return u.slice()}var _=[];d=m.row;do{_[r<0?"unshift":"push"](m),m=u[h+=r]}while(m&&m.row==d);return _.length&&_}}}(r,h,d);if(_){var x=_[0];u.column=(x.pos&&"number"!=typeof x.column?x.pos.sc:x.column)||0,u.row=x.row,M=l.renderer.$gutterLayer.$annotations[u.row]}else{if(m)return;M={text:[a("Looks good!")],className:"ace_ok"}}l.session.unfold(u.row),l.selection.moveToPosition(u);var w={row:u.row,fixedWidth:!0,coverGutter:!0,el:o.createElement("div"),type:"errorMarker"},L=w.el.appendChild(o.createElement("div")),A=w.el.appendChild(o.createElement("div"));A.className="error_widget_arrow "+M.className;var T=l.renderer.$cursorLayer.getPixelPosition(u).left;A.style.left=T+l.renderer.gutterWidth-5+"px",w.el.className="error_widget_wrapper",L.className="error_widget "+M.className,L.innerHTML=M.text.join("
"),L.appendChild(o.createElement("div"));var O=function(E,D,R){if(0===D&&("esc"===R||"return"===R))return w.destroy(),{command:"null"}};w.destroy=function(){l.$mouseHandler.isMousePressed||(l.keyBinding.removeKeyboardHandler(O),r.widgetManager.removeLineWidget(w),l.off("changeSelection",w.destroy),l.off("changeSession",w.destroy),l.off("mouseup",w.destroy),l.off("change",w.destroy))},l.keyBinding.addKeyboardHandler(O),l.on("changeSelection",w.destroy),l.on("changeSession",w.destroy),l.on("mouseup",w.destroy),l.on("change",w.destroy),l.session.widgetManager.addLineWidget(w),w.el.onmousedown=l.focus.bind(l),l.renderer.scrollCursorIntoView(null,.5,{bottom:w.el.offsetHeight})},o.importCssString("\n .error_widget_wrapper {\n background: inherit;\n color: inherit;\n border:none\n }\n .error_widget {\n border-top: solid 2px;\n border-bottom: solid 2px;\n margin: 5px 0;\n padding: 10px 40px;\n white-space: pre-wrap;\n }\n .error_widget.ace_error, .error_widget_arrow.ace_error{\n border-color: #ff5a5a\n }\n .error_widget.ace_warning, .error_widget_arrow.ace_warning{\n border-color: #F1D817\n }\n .error_widget.ace_info, .error_widget_arrow.ace_info{\n border-color: #5a5a5a\n }\n .error_widget.ace_ok, .error_widget_arrow.ace_ok{\n border-color: #5aaa5a\n }\n .error_widget_arrow {\n position: absolute;\n border: solid 5px;\n border-top-color: transparent!important;\n border-right-color: transparent!important;\n border-left-color: transparent!important;\n top: -5px;\n }\n","error_marker.css",!1)}),ace.define("ace/ace",["require","exports","module","ace/lib/dom","ace/range","ace/editor","ace/edit_session","ace/undomanager","ace/virtual_renderer","ace/worker/worker_client","ace/keyboard/hash_handler","ace/placeholder","ace/multi_select","ace/mode/folding/fold_mode","ace/theme/textmate","ace/ext/error_marker","ace/config","ace/loader_build"],function(n,p,C){"use strict";n("./loader_build")(p);var b=n("./lib/dom"),o=n("./range").Range,v=n("./editor").Editor,a=n("./edit_session").EditSession,c=n("./undomanager").UndoManager,s=n("./virtual_renderer").VirtualRenderer;n("./worker/worker_client"),n("./keyboard/hash_handler"),n("./placeholder"),n("./multi_select"),n("./mode/folding/fold_mode"),n("./theme/textmate"),n("./ext/error_marker"),p.config=n("./config"),p.edit=function(l,d){if("string"==typeof l){var r=l;if(!(l=document.getElementById(r)))throw new Error("ace.edit can't find div #"+r)}if(l&&l.env&&l.env.editor instanceof v)return l.env.editor;var u="";if(l&&/input|textarea/i.test(l.tagName)){var h=l;u=h.value,l=b.createElement("pre"),h.parentNode.replaceChild(l,h)}else l&&(u=l.textContent,l.innerHTML="");var m=p.createEditSession(u),_=new v(new s(l),m,d),M={document:m,editor:_,onResize:_.resize.bind(_,null)};return h&&(M.textarea=h),_.on("destroy",function(){M.editor.container.env=null}),_.container.env=_.env=M,_},p.createEditSession=function(l,d){var r=new a(l,d);return r.setUndoManager(new c),r},p.Range=o,p.Editor=v,p.EditSession=a,p.UndoManager=c,p.VirtualRenderer=s,p.version=p.config.version}),ace.require(["ace/ace"],function(n){for(var p in n&&(n.config.init(!0),n.define=ace.define),window.ace||(window.ace=n),n)n.hasOwnProperty(p)&&(window.ace[p]=n[p]);window.ace.default=window.ace,Se&&(Se.exports=window.ace)})},5899:Se=>{function X(){}Se.exports=X,Se.exports.HttpsAgent=X},6357:(Se,X,g)=>{const{Token:n}=g(6205),p=g(9042),{Interval:C}=g(9173);class b{}Se.exports=class o extends b{constructor(a){super(),this.tokenSource=a,this.tokens=[],this.index=-1,this.fetchedEOF=!1}mark(){return 0}release(a){}reset(){this.seek(0)}seek(a){this.lazyInit(),this.index=this.adjustSeekIndex(a)}get(a){return this.lazyInit(),this.tokens[a]}consume(){let a=!1;if(a=this.index>=0&&(this.fetchedEOF?this.index0)||this.fetch(c)>=c}fetch(a){if(this.fetchedEOF)return 0;for(let c=0;c=this.tokens.length&&(c=this.tokens.length-1);for(let d=a;d=this.tokens.length?this.tokens[this.tokens.length-1]:this.tokens[c]}adjustSeekIndex(a){return a}lazyInit(){-1===this.index&&this.setup()}setup(){this.sync(0),this.index=this.adjustSeekIndex(0)}setTokenSource(a){this.tokenSource=a,this.tokens=[],this.index=-1,this.fetchedEOF=!1}nextTokenOnChannel(a,c){if(this.sync(a),a>=this.tokens.length)return-1;let s=this.tokens[a];for(;s.channel!==this.channel;){if(s.type===n.EOF)return-1;this.sync(a+=1),s=this.tokens[a]}return a}previousTokenOnChannel(a,c){for(;a>=0&&this.tokens[a].channel!==c;)a-=1;return a}getHiddenTokensToRight(a,c){if(void 0===c&&(c=-1),this.lazyInit(),a<0||a>=this.tokens.length)throw a+" not in 0.."+this.tokens.length-1;const s=this.nextTokenOnChannel(a+1,p.DEFAULT_TOKEN_CHANNEL);return this.filterForChannel(a+1,-1===s?this.tokens.length-1:s,c)}getHiddenTokensToLeft(a,c){if(void 0===c&&(c=-1),this.lazyInit(),a<0||a>=this.tokens.length)throw a+" not in 0.."+this.tokens.length-1;const s=this.previousTokenOnChannel(a-1,p.DEFAULT_TOKEN_CHANNEL);return s===a-1?null:this.filterForChannel(s+1,a-1,c)}filterForChannel(a,c,s){const l=[];for(let d=a;d=this.tokens.length&&(s=this.tokens.length-1);let l="";for(let d=c;d{const n=g(6205).CommonToken;class p{}class C extends p{constructor(o){super(),this.copyText=void 0!==o&&o}create(o,v,a,c,s,l,d,r){const u=new n(o,v,c,s,l);return u.line=d,u.column=r,null!==a?u.text=a:this.copyText&&null!==o[1]&&(u.text=o[1].getText(s,l)),u}createThin(o,v){const a=new n(null,o);return a.text=v,a}}C.DEFAULT=new C,Se.exports=C},7456:(Se,X,g)=>{const n=g(6205).Token,p=g(6357);Se.exports=class C extends p{constructor(o,v){super(o),this.channel=void 0===v?n.DEFAULT_CHANNEL:v}adjustSeekIndex(o){return this.nextTokenOnChannel(o,this.channel)}LB(o){if(0===o||this.index-o<0)return null;let v=this.index,a=1;for(;a<=o;)v=this.previousTokenOnChannel(v-1,this.channel),a+=1;return v<0?null:this.tokens[v]}LT(o){if(this.lazyInit(),0===o)return null;if(o<0)return this.LB(-o);let v=this.index,a=1;for(;a{const{Token:n}=g(6205);g(6419),g(9182),Se.exports=class p{constructor(b,o){if(this.name="",this.strdata=b,this.decodeToUnicodeCodePoints=o||!1,this._index=0,this.data=[],this.decodeToUnicodeCodePoints)for(let v=0;v=this._size)throw"cannot consume EOF";this._index+=1}LA(b){if(0===b)return 0;b<0&&(b+=1);const o=this._index+b-1;return o<0||o>=this._size?n.EOF:this.data[o]}LT(b){return this.LA(b)}mark(){return-1}release(b){}seek(b){this._index=b<=this._index?b:Math.min(b,this._size)}getText(b,o){if(o>=this._size&&(o=this._size-1),b>=this._size)return"";if(this.decodeToUnicodeCodePoints){let v="";for(let a=b;a<=o;a++)v+=String.fromCodePoint(this.data[a]);return v}return this.strdata.slice(b,o+1)}toString(){return this.strdata}get index(){return this._index}get size(){return this._size}}},9173:(Se,X,g)=>{const{Token:n}=g(6205);class p{constructor(o,v){this.start=o,this.stop=v}clone(){return new p(this.start,this.stop)}contains(o){return o>=this.start&&othis.addInterval(v),this),this}reduce(o){if(o=a.stop?(this.intervals.splice(o+1,1),this.reduce(o)):v.stop>=a.start&&(this.intervals[o]=new p(v.start,a.stop),this.intervals.splice(o+1,1))}}complement(o,v){const a=new C;return a.addInterval(new p(o,v+1)),null!==this.intervals&&this.intervals.forEach(c=>a.removeRange(c)),a}contains(o){if(null===this.intervals)return!1;for(let v=0;vc.start&&o.stop=c.stop?(this.intervals.splice(v,1),v-=1):o.start":"'"+String.fromCharCode(a.start)+"'":"'"+String.fromCharCode(a.start)+"'..'"+String.fromCharCode(a.stop-1)+"'")}return o.length>1?"{"+o.join(", ")+"}":o[0]}toIndexString(){const o=[];for(let v=0;v":a.start.toString():a.start.toString()+".."+(a.stop-1).toString())}return o.length>1?"{"+o.join(", ")+"}":o[0]}toTokenString(o,v){const a=[];for(let c=0;c1?"{"+a.join(", ")+"}":a[0]}elementName(o,v,a){return a===n.EOF?"":a===n.EPSILON?"":o[a]||v[a]}get length(){return this.intervals.map(o=>o.length).reduce((o,v)=>o+v)}}Se.exports={Interval:p,IntervalSet:C}},4589:(Se,X,g)=>{const{Set:n,BitSet:p}=g(3340),{Token:C}=g(6205),{ATNConfig:b}=g(7745),{IntervalSet:o}=g(9173),{RuleStopState:v}=g(5516),{RuleTransition:a,NotSetTransition:c,WildcardTransition:s,AbstractPredicateTransition:l}=g(6850),{predictionContextFromRuleContext:d,PredictionContext:r,SingletonPredictionContext:u}=g(6185);class h{constructor(_){this.atn=_}getDecisionLookahead(_){if(null===_)return null;const M=_.transitions.length,x=[];for(let w=0;w{const{Token:n}=g(6205),p=g(9495),C=g(9882),{RecognitionException:b}=g(5858),{LexerNoViableAltException:o}=g(5858);class a extends p{constructor(s){super(),this._input=s,this._factory=C.DEFAULT,this._tokenFactorySourcePair=[this,s],this._interp=null,this._token=null,this._tokenStartCharIndex=-1,this._tokenStartLine=-1,this._tokenStartColumn=-1,this._hitEOF=!1,this._channel=n.DEFAULT_CHANNEL,this._type=n.INVALID_TYPE,this._modeStack=[],this._mode=a.DEFAULT_MODE,this._text=null}reset(){null!==this._input&&this._input.seek(0),this._token=null,this._type=n.INVALID_TYPE,this._channel=n.DEFAULT_CHANNEL,this._tokenStartCharIndex=-1,this._tokenStartColumn=-1,this._tokenStartLine=-1,this._text=null,this._hitEOF=!1,this._mode=a.DEFAULT_MODE,this._modeStack=[],this._interp.reset()}nextToken(){if(null===this._input)throw"nextToken requires a non-null input stream.";const s=this._input.mark();try{for(;;){if(this._hitEOF)return this.emitEOF(),this._token;this._token=null,this._channel=n.DEFAULT_CHANNEL,this._tokenStartCharIndex=this._input.index,this._tokenStartColumn=this._interp.column,this._tokenStartLine=this._interp.line,this._text=null;let l=!1;for(;;){this._type=n.INVALID_TYPE;let d=a.SKIP;try{d=this._interp.match(this._input,this._mode)}catch(r){if(!(r instanceof b))throw console.log(r.stack),r;this.notifyListeners(r),this.recover(r)}if(this._input.LA(1)===n.EOF&&(this._hitEOF=!0),this._type===n.INVALID_TYPE&&(this._type=d),this._type===a.SKIP){l=!0;break}if(this._type!==a.MORE)break}if(!l)return null===this._token&&this.emit(),this._token}}finally{this._input.release(s)}}skip(){this._type=a.SKIP}more(){this._type=a.MORE}mode(s){this._mode=s}pushMode(s){this._interp.debug&&console.log("pushMode "+s),this._modeStack.push(this._mode),this.mode(s)}popMode(){if(0===this._modeStack.length)throw"Empty Stack";return this._interp.debug&&console.log("popMode back to "+this._modeStack.slice(0,-1)),this.mode(this._modeStack.pop()),this._mode}emitToken(s){this._token=s}emit(){const s=this._factory.create(this._tokenFactorySourcePair,this._type,this._text,this._channel,this._tokenStartCharIndex,this.getCharIndex()-1,this._tokenStartLine,this._tokenStartColumn);return this.emitToken(s),s}emitEOF(){const d=this._factory.create(this._tokenFactorySourcePair,n.EOF,null,n.DEFAULT_CHANNEL,this._input.index,this._input.index-1,this.line,this.column);return this.emitToken(d),d}getCharIndex(){return this._input.index}getAllTokens(){const s=[];let l=this.nextToken();for(;l.type!==n.EOF;)s.push(l),l=this.nextToken();return s}notifyListeners(s){const r=this._input.getText(this._tokenStartCharIndex,this._input.index),u="token recognition error at: '"+this.getErrorDisplay(r)+"'";this.getErrorListenerDispatch().syntaxError(this,null,this._tokenStartLine,this._tokenStartColumn,u,s)}getErrorDisplay(s){const l=[];for(let d=0;d":"\n"===s?"\\n":"\t"===s?"\\t":"\r"===s?"\\r":s}getCharErrorDisplay(s){return"'"+this.getErrorDisplayForChar(s)+"'"}recover(s){this._input.LA(1)!==n.EOF&&(s instanceof o?this._interp.consume(this._input):this._input.consume())}get inputStream(){return this._input}set inputStream(s){this._input=null,this._tokenFactorySourcePair=[this,this._input],this.reset(),this._input=s,this._tokenFactorySourcePair=[this,this._input]}get sourceName(){return this._input.sourceName}get type(){return this._type}set type(s){this._type=s}get line(){return this._interp.line}set line(s){this._interp.line=s}get column(){return this._interp.column}set column(s){this._interp.column=s}get text(){return null!==this._text?this._text:this._interp.getText(this._input)}set text(s){this._text=s}}a.DEFAULT_MODE=0,a.MORE=-2,a.SKIP=-3,a.DEFAULT_TOKEN_CHANNEL=n.DEFAULT_CHANNEL,a.HIDDEN=n.HIDDEN_CHANNEL,a.MIN_CHAR_VALUE=0,a.MAX_CHAR_VALUE=1114111,Se.exports=a},111:(Se,X,g)=>{const{Token:n}=g(6205),{ParseTreeListener:p,TerminalNode:C,ErrorNode:b}=g(5829),o=g(9495),{DefaultErrorStrategy:v}=g(2487),a=g(7499),c=g(2905),s=g(9042);class l extends p{constructor(u){super(),this.parser=u}enterEveryRule(u){console.log("enter "+this.parser.ruleNames[u.ruleIndex]+", LT(1)="+this.parser._input.LT(1).text)}visitTerminal(u){console.log("consume "+u.symbol+" rule "+this.parser.ruleNames[this.parser._ctx.ruleIndex])}exitEveryRule(u){console.log("exit "+this.parser.ruleNames[u.ruleIndex]+", LT(1)="+this.parser._input.LT(1).text)}}Se.exports=(()=>{class r extends o{constructor(h){super(),this._input=null,this._errHandler=new v,this._precedenceStack=[],this._precedenceStack.push(0),this._ctx=null,this.buildParseTrees=!0,this._tracer=null,this._parseListeners=null,this._syntaxErrors=0,this.setInputStream(h)}reset(){null!==this._input&&this._input.seek(0),this._errHandler.reset(this),this._ctx=null,this._syntaxErrors=0,this.setTrace(!1),this._precedenceStack=[],this._precedenceStack.push(0),null!==this._interp&&this._interp.reset()}match(h){let m=this.getCurrentToken();return m.type===h?(this._errHandler.reportMatch(this),this.consume()):(m=this._errHandler.recoverInline(this),this.buildParseTrees&&-1===m.tokenIndex&&this._ctx.addErrorNode(m)),m}matchWildcard(){let h=this.getCurrentToken();return h.type>0?(this._errHandler.reportMatch(this),this.consume()):(h=this._errHandler.recoverInline(this),this._buildParseTrees&&-1===h.tokenIndex&&this._ctx.addErrorNode(h)),h}getParseListeners(){return this._parseListeners||[]}addParseListener(h){if(null===h)throw"listener";null===this._parseListeners&&(this._parseListeners=[]),this._parseListeners.push(h)}removeParseListener(h){if(null!==this._parseListeners){const m=this._parseListeners.indexOf(h);m>=0&&this._parseListeners.splice(m,1),0===this._parseListeners.length&&(this._parseListeners=null)}}removeParseListeners(){this._parseListeners=null}triggerEnterRuleEvent(){if(null!==this._parseListeners){const h=this._ctx;this._parseListeners.forEach(function(m){m.enterEveryRule(h),h.enterRule(m)})}}triggerExitRuleEvent(){if(null!==this._parseListeners){const h=this._ctx;this._parseListeners.slice(0).reverse().forEach(function(m){h.exitRule(m),m.exitEveryRule(h)})}}getTokenFactory(){return this._input.tokenSource._factory}setTokenFactory(h){this._input.tokenSource._factory=h}getATNWithBypassAlts(){const h=this.getSerializedATN();if(null===h)throw"The current parser does not support an ATN with bypass alternatives.";let m=this.bypassAltsAtnCache[h];if(null===m){const _=new c;_.generateRuleBypassTransitions=!0,m=new a(_).deserialize(h),this.bypassAltsAtnCache[h]=m}return m}compileParseTreePattern(h,m,_){if(null===(_=_||null)&&null!==this.getTokenStream()){const x=this.getTokenStream().tokenSource;x instanceof s&&(_=x)}if(null===_)throw"Parser can't discover a lexer to use";return new ParseTreePatternMatcher(_,this).compile(h,m)}getInputStream(){return this.getTokenStream()}setInputStream(h){this.setTokenStream(h)}getTokenStream(){return this._input}setTokenStream(h){this._input=null,this.reset(),this._input=h}getCurrentToken(){return this._input.LT(1)}notifyErrorListeners(h,m,_){_=_||null,null===(m=m||null)&&(m=this.getCurrentToken()),this._syntaxErrors+=1;const M=m.line,x=m.column;this.getErrorListenerDispatch().syntaxError(this,m,M,x,h,_)}consume(){const h=this.getCurrentToken();h.type!==n.EOF&&this.getInputStream().consume();const m=null!==this._parseListeners&&this._parseListeners.length>0;if(this.buildParseTrees||m){let _;_=this._errHandler.inErrorRecoveryMode(this)?this._ctx.addErrorNode(h):this._ctx.addTokenNode(h),_.invokingState=this.state,m&&this._parseListeners.forEach(function(M){_ instanceof b||void 0!==_.isErrorNode&&_.isErrorNode()?M.visitErrorNode(_):_ instanceof C&&M.visitTerminal(_)})}return h}addContextToParseTree(){null!==this._ctx.parentCtx&&this._ctx.parentCtx.addChild(this._ctx)}enterRule(h,m,_){this.state=m,this._ctx=h,this._ctx.start=this._input.LT(1),this.buildParseTrees&&this.addContextToParseTree(),this.triggerEnterRuleEvent()}exitRule(){this._ctx.stop=this._input.LT(-1),this.triggerExitRuleEvent(),this.state=this._ctx.invokingState,this._ctx=this._ctx.parentCtx}enterOuterAlt(h,m){h.setAltNumber(m),this.buildParseTrees&&this._ctx!==h&&null!==this._ctx.parentCtx&&(this._ctx.parentCtx.removeLastChild(),this._ctx.parentCtx.addChild(h)),this._ctx=h}getPrecedence(){return 0===this._precedenceStack.length?-1:this._precedenceStack[this._precedenceStack.length-1]}enterRecursionRule(h,m,_,M){this.state=m,this._precedenceStack.push(M),this._ctx=h,this._ctx.start=this._input.LT(1),this.triggerEnterRuleEvent()}pushNewRecursionContext(h,m,_){const M=this._ctx;M.parentCtx=h,M.invokingState=m,M.stop=this._input.LT(-1),this._ctx=h,this._ctx.start=M.start,this.buildParseTrees&&this._ctx.addChild(M),this.triggerEnterRuleEvent()}unrollRecursionContexts(h){this._precedenceStack.pop(),this._ctx.stop=this._input.LT(-1);const m=this._ctx,_=this.getParseListeners();if(null!==_&&_.length>0)for(;this._ctx!==h;)this.triggerExitRuleEvent(),this._ctx=this._ctx.parentCtx;else this._ctx=h;m.parentCtx=h,this.buildParseTrees&&null!==h&&h.addChild(m)}getInvokingContext(h){let m=this._ctx;for(;null!==m;){if(m.ruleIndex===h)return m;m=m.parentCtx}return null}precpred(h,m){return m>=this._precedenceStack[this._precedenceStack.length-1]}inContext(h){return!1}isExpectedToken(h){const m=this._interp.atn;let _=this._ctx,x=m.nextTokens(m.states[this.state]);if(x.contains(h))return!0;if(!x.contains(n.EPSILON))return!1;for(;null!==_&&_.invokingState>=0&&x.contains(n.EPSILON);){if(x=m.nextTokens(m.states[_.invokingState].transitions[0].followState),x.contains(h))return!0;_=_.parentCtx}return!(!x.contains(n.EPSILON)||h!==n.EOF)}getExpectedTokens(){return this._interp.atn.getExpectedTokens(this.state,this._ctx)}getExpectedTokensWithinCurrentRule(){const h=this._interp.atn;return h.nextTokens(h.states[this.state])}getRuleIndex(h){const m=this.getRuleIndexMap()[h];return null!==m?m:-1}getRuleInvocationStack(h){null===(h=h||null)&&(h=this._ctx);const m=[];for(;null!==h;){const _=h.ruleIndex;m.push(_<0?"n/a":this.ruleNames[_]),h=h.parentCtx}return m}getDFAStrings(){return this._interp.decisionToDFA.toString()}dumpDFA(){let h=!1;for(let m=0;m0&&(h&&console.log(),this.printer.println("Decision "+_.decision+":"),this.printer.print(_.toString(this.literalNames,this.symbolicNames)),h=!0)}}getSourceName(){return this._input.sourceName}setTrace(h){h?(null!==this._tracer&&this.removeParseListener(this._tracer),this._tracer=new l(this),this.addParseListener(this._tracer)):(this.removeParseListener(this._tracer),this._tracer=null)}}return r.bypassAltsAtnCache={},r})()},7293:(Se,X,g)=>{const n=g(13),p=g(5829),C=p.INVALID_INTERVAL,b=p.TerminalNode,o=p.TerminalNodeImpl,v=p.ErrorNodeImpl,a=g(9173).Interval;class c extends n{constructor(d,r){super(d=d||null,r=r||null),this.ruleIndex=-1,this.children=null,this.start=null,this.stop=null,this.exception=null}copyFrom(d){this.parentCtx=d.parentCtx,this.invokingState=d.invokingState,this.children=null,this.start=d.start,this.stop=d.stop,d.children&&(this.children=[],d.children.map(function(r){r instanceof v&&(this.children.push(r),r.parentCtx=this)},this))}enterRule(d){}exitRule(d){}addChild(d){return null===this.children&&(this.children=[]),this.children.push(d),d}removeLastChild(){null!==this.children&&this.children.pop()}addTokenNode(d){const r=new o(d);return this.addChild(r),r.parentCtx=this,r}addErrorNode(d){const r=new v(d);return this.addChild(r),r.parentCtx=this,r}getChild(d,r){if(null===this.children||d<0||d>=this.children.length)return null;if(null===(r=r||null))return this.children[d];for(let u=0;u=this.children.length)return null;for(let u=0;u{const n=g(13),{Hash:p,Map:C,equalArrays:b}=g(3340);class o{constructor(w){this.cachedHashCode=w}isEmpty(){return this===o.EMPTY}hasEmptyPath(){return this.getReturnState(this.length-1)===o.EMPTY_RETURN_STATE}hashCode(){return this.cachedHashCode}updateHashCode(w){w.update(this.cachedHashCode)}}o.EMPTY=null,o.EMPTY_RETURN_STATE=2147483647,o.globalNodeCount=1,o.id=o.globalNodeCount;class a extends o{constructor(w,L){let A=0;const T=new p;null!==w?T.update(w,L):T.update(1),A=T.finish(),super(A),this.parentCtx=w,this.returnState=L}getParent(w){return this.parentCtx}getReturnState(w){return this.returnState}equals(w){return this===w||w instanceof a&&this.hashCode()===w.hashCode()&&this.returnState===w.returnState&&(null==this.parentCtx?null==w.parentCtx:this.parentCtx.equals(w.parentCtx))}toString(){const w=null===this.parentCtx?"":this.parentCtx.toString();return 0===w.length?this.returnState===o.EMPTY_RETURN_STATE?"$":""+this.returnState:this.returnState+" "+w}get length(){return 1}static create(w,L){return L===o.EMPTY_RETURN_STATE&&null===w?o.EMPTY:new a(w,L)}}class c extends a{constructor(){super(null,o.EMPTY_RETURN_STATE)}isEmpty(){return!0}getParent(w){return null}getReturnState(w){return this.returnState}equals(w){return this===w}toString(){return"$"}}o.EMPTY=new c;class s extends o{constructor(w,L){const A=new p;return A.update(w,L),super(A.finish()),this.parents=w,this.returnStates=L,this}isEmpty(){return this.returnStates[0]===o.EMPTY_RETURN_STATE}getParent(w){return this.parents[w]}getReturnState(w){return this.returnStates[w]}equals(w){return this===w||w instanceof s&&this.hashCode()===w.hashCode()&&b(this.returnStates,w.returnStates)&&b(this.parents,w.parents)}toString(){if(this.isEmpty())return"[]";{let w="[";for(let L=0;L0&&(w+=", "),this.returnStates[L]!==o.EMPTY_RETURN_STATE?(w+=this.returnStates[L],null!==this.parents[L]?w=w+" "+this.parents[L]:w+="null"):w+="$";return w+"]"}}get length(){return this.returnStates.length}}Se.exports={merge:function d(x,w,L,A){if(x===w)return x;if(x instanceof a&&w instanceof a)return function r(x,w,L,A){if(null!==A){let O=A.get(x,w);if(null!==O||(O=A.get(w,x),null!==O))return O}const T=function u(x,w,L){if(L){if(x===o.EMPTY||w===o.EMPTY)return o.EMPTY}else{if(x===o.EMPTY&&w===o.EMPTY)return o.EMPTY;if(x===o.EMPTY)return new s([w.parentCtx,null],[w.returnState,o.EMPTY_RETURN_STATE]);if(w===o.EMPTY)return new s([x.parentCtx,null],[x.returnState,o.EMPTY_RETURN_STATE])}return null}(x,w,L);if(null!==T)return null!==A&&A.set(x,w,T),T;if(x.returnState===w.returnState){const O=d(x.parentCtx,w.parentCtx,L,A);if(O===x.parentCtx)return x;if(O===w.parentCtx)return w;const E=a.create(O,x.returnState);return null!==A&&A.set(x,w,E),E}{let O=null;if((x===w||null!==x.parentCtx&&x.parentCtx===w.parentCtx)&&(O=x.parentCtx),null!==O){const j=[x.returnState,w.returnState];x.returnState>w.returnState&&(j[0]=w.returnState,j[1]=x.returnState);const S=new s([O,O],j);return null!==A&&A.set(x,w,S),S}const E=[x.returnState,w.returnState];let D=[x.parentCtx,w.parentCtx];x.returnState>w.returnState&&(E[0]=w.returnState,E[1]=x.returnState,D=[w.parentCtx,x.parentCtx]);const R=new s(D,E);return null!==A&&A.set(x,w,R),R}}(x,w,L,A);if(L){if(x instanceof c)return x;if(w instanceof c)return w}return x instanceof a&&(x=new s([x.getParent()],[x.returnState])),w instanceof a&&(w=new s([w.getParent()],[w.returnState])),function h(x,w,L,A){if(null!==A){let N=A.get(x,w);if(null!==N||(N=A.get(w,x),null!==N))return N}let T=0,O=0,E=0,D=[],R=[];for(;T{const{Token:n}=g(6205),{ConsoleErrorListener:p}=g(7967),{ProxyErrorListener:C}=g(7967);Se.exports=(()=>{class o{constructor(){this._listeners=[p.INSTANCE],this._interp=null,this._stateNumber=-1}checkVersion(a){"4.9.3"!==a&&console.log("ANTLR runtime and generated code versions disagree: 4.9.3!="+a)}addErrorListener(a){this._listeners.push(a)}removeErrorListeners(){this._listeners=[]}getLiteralNames(){return Object.getPrototypeOf(this).constructor.literalNames||[]}getSymbolicNames(){return Object.getPrototypeOf(this).constructor.symbolicNames||[]}getTokenNames(){if(!this.tokenNames){const a=this.getLiteralNames(),c=this.getSymbolicNames(),s=a.length>c.length?a.length:c.length;this.tokenNames=[];for(let l=0;l";let c=a.text;return null===c&&(c=a.type===n.EOF?"":"<"+a.type+">"),c=c.replace("\n","\\n").replace("\r","\\r").replace("\t","\\t"),"'"+c+"'"}getErrorListenerDispatch(){return new C(this._listeners)}sempred(a,c,s){return!0}precpred(a,c){return!0}get state(){return this._stateNumber}set state(a){this._stateNumber=a}}return o.tokenTypeMapCache={},o.ruleIndexMapCache={},o})()},13:(Se,X,g)=>{const{RuleNode:n}=g(5829),{INVALID_INTERVAL:p}=g(5829),C=g(5140);Se.exports=class b extends n{constructor(v,a){super(),this.parentCtx=v||null,this.invokingState=a||-1}depth(){let v=0,a=this;for(;null!==a;)a=a.parentCtx,v+=1;return v}isEmpty(){return-1===this.invokingState}getSourceInterval(){return p}getRuleContext(){return this}getPayload(){return this}getText(){return 0===this.getChildCount()?"":this.children.map(function(v){return v.getText()}).join("")}getAltNumber(){return 0}setAltNumber(v){}getChild(v){return null}getChildCount(){return 0}accept(v){return v.visitChildren(this)}toStringTree(v,a){return C.toStringTree(this,v,a)}toString(v,a){v=v||null,a=a||null;let c=this,s="[";for(;null!==c&&c!==a;){if(null===v)c.isEmpty()||(s+=c.invokingState);else{const l=c.ruleIndex;s+=l>=0&&l{let X=(()=>{class n{constructor(){this.source=null,this.type=null,this.channel=null,this.start=null,this.stop=null,this.tokenIndex=null,this.line=null,this.column=null,this._text=null}getTokenSource(){return this.source[0]}getInputStream(){return this.source[1]}get text(){return this._text}set text(C){this._text=C}}return n.INVALID_TYPE=0,n.EPSILON=-2,n.MIN_USER_TOKEN_TYPE=1,n.EOF=-1,n.DEFAULT_CHANNEL=0,n.HIDDEN_CHANNEL=1,n})();Se.exports={Token:X,CommonToken:(()=>{class n extends X{constructor(C,b,o,v,a){super(),this.source=void 0!==C?C:n.EMPTY_SOURCE,this.type=void 0!==b?b:null,this.channel=void 0!==o?o:X.DEFAULT_CHANNEL,this.start=void 0!==v?v:-1,this.stop=void 0!==a?a:-1,this.tokenIndex=-1,null!==this.source[0]?(this.line=C[0].line,this.column=C[0].column):this.column=-1}clone(){const C=new n(this.source,this.type,this.channel,this.start,this.stop);return C.tokenIndex=this.tokenIndex,C.line=this.line,C.column=this.column,C.text=this.text,C}toString(){let C=this.text;return C=null!==C?C.replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/\t/g,"\\t"):"","[@"+this.tokenIndex+","+this.start+":"+this.stop+"='"+C+"',<"+this.type+">"+(this.channel>0?",channel="+this.channel:"")+","+this.line+":"+this.column+"]"}get text(){if(null!==this._text)return this._text;const C=this.getInputStream();if(null===C)return null;const b=C.size;return this.start"}set text(C){this._text=C}}return n.EMPTY_SOURCE=[null,null],n})()}},3340:Se=>{function X(u){return null===u?"null":u}function g(u){return Array.isArray(u)?"["+u.map(X).join(", ")+"]":"null"}function n(u,h){return u?u.equals(h):u==h}function p(u){return u?u.hashCode():-1}String.prototype.seed=String.prototype.seed||Math.round(Math.random()*Math.pow(2,32)),String.prototype.hashCode=function(){const u=this.toString();let h,m;const _=3&u.length,M=u.length-_;let x=String.prototype.seed;const w=3432918353,L=461845907;let A=0;for(;A>>16)*w&65535)<<16)&4294967295,m=m<<15|m>>>17,m=(65535&m)*L+(((m>>>16)*L&65535)<<16)&4294967295,x^=m,x=x<<13|x>>>19,h=5*(65535&x)+((5*(x>>>16)&65535)<<16)&4294967295,x=27492+(65535&h)+((58964+(h>>>16)&65535)<<16);switch(m=0,_){case 3:m^=(255&u.charCodeAt(A+2))<<16;case 2:m^=(255&u.charCodeAt(A+1))<<8;case 1:m^=255&u.charCodeAt(A),m=(65535&m)*w+(((m>>>16)*w&65535)<<16)&4294967295,m=m<<15|m>>>17,m=(65535&m)*L+(((m>>>16)*L&65535)<<16)&4294967295,x^=m}return x^=u.length,x^=x>>>16,x=2246822507*(65535&x)+((2246822507*(x>>>16)&65535)<<16)&4294967295,x^=x>>>13,x=3266489909*(65535&x)+((3266489909*(x>>>16)&65535)<<16)&4294967295,x^=x>>>16,x>>>0};class b{constructor(){this.data=[]}add(h){this.data[h]=!0}or(h){const m=this;Object.keys(h.data).map(function(_){m.add(_)})}remove(h){delete this.data[h]}contains(h){return!0===this.data[h]}values(){return Object.keys(this.data)}minValue(){return Math.min.apply(null,this.values())}hashCode(){const h=new c;return h.update(this.values()),h.finish()}equals(h){return h instanceof b&&this.hashCode()===h.hashCode()}toString(){return"{"+this.values().join(", ")+"}"}get length(){return this.values().length}}class o{constructor(h,m){this.data={},this.hashFunction=h||p,this.equalsFunction=m||n}put(h,m){const _="hash_"+this.hashFunction(h);if(_ in this.data){const M=this.data[_];for(let x=0;x>>17,_*=461845907,this.count=this.count+1;let M=this.hash^_;M=M<<13|M>>>19,M=5*M+3864292196,this.hash=M}}}finish(){let h=this.hash^4*this.count;return h^=h>>>16,h*=2246822507,h^=h>>>13,h*=3266489909,h^=h>>>16,h}}Se.exports={Hash:c,Set:class C{constructor(h,m){this.data={},this.hashFunction=h||p,this.equalsFunction=m||n}add(h){const _="hash_"+this.hashFunction(h);if(_ in this.data){const M=this.data[_];for(let x=0;x{const n=g(4589),{IntervalSet:p}=g(9173),{Token:C}=g(6205);Se.exports=(()=>{class o{constructor(a,c){this.grammarType=a,this.maxTokenType=c,this.states=[],this.decisionToState=[],this.ruleToStartState=[],this.ruleToStopState=null,this.modeNameToStartState={},this.ruleToTokenType=null,this.lexerActions=null,this.modeToStartState=[]}nextTokensInContext(a,c){return new n(this).LOOK(a,null,c)}nextTokensNoContext(a){return null!==a.nextTokenWithinRule||(a.nextTokenWithinRule=this.nextTokensInContext(a,null),a.nextTokenWithinRule.readOnly=!0),a.nextTokenWithinRule}nextTokens(a,c){return void 0===c?this.nextTokensNoContext(a):this.nextTokensInContext(a,c)}addState(a){null!==a&&(a.atn=this,a.stateNumber=this.states.length),this.states.push(a)}removeState(a){this.states[a.stateNumber]=null}defineDecisionState(a){return this.decisionToState.push(a),a.decision=this.decisionToState.length-1,a.decision}getDecisionState(a){return 0===this.decisionToState.length?null:this.decisionToState[a]}getExpectedTokens(a,c){if(a<0||a>=this.states.length)throw"Invalid state number.";let l=this.nextTokens(this.states[a]);if(!l.contains(C.EPSILON))return l;const d=new p;for(d.addSet(l),d.removeOne(C.EPSILON);null!==c&&c.invokingState>=0&&l.contains(C.EPSILON);)l=this.nextTokens(this.states[c.invokingState].transitions[0].followState),d.addSet(l),d.removeOne(C.EPSILON),c=c.parentCtx;return l.contains(C.EPSILON)&&d.addOne(C.EOF),d}}return o.INVALID_ALT_NUMBER=0,o})()},7745:(Se,X,g)=>{const{DecisionState:n}=g(5516),{SemanticContext:p}=g(9454),{Hash:C}=g(3340);function b(a,c){if(null===a){const s={state:null,alt:null,context:null,semanticContext:null};return c&&(s.reachesIntoOuterContext=0),s}{const s={};return s.state=a.state||null,s.alt=void 0===a.alt?null:a.alt,s.context=a.context||null,s.semanticContext=a.semanticContext||null,c&&(s.reachesIntoOuterContext=a.reachesIntoOuterContext||0,s.precedenceFilterSuppressed=a.precedenceFilterSuppressed||!1),s}}class o{constructor(c,s){this.checkContext(c,s),c=b(c),s=b(s,!0),this.state=null!==c.state?c.state:s.state,this.alt=null!==c.alt?c.alt:s.alt,this.context=null!==c.context?c.context:s.context,this.semanticContext=null!==c.semanticContext?c.semanticContext:null!==s.semanticContext?s.semanticContext:p.NONE,this.reachesIntoOuterContext=s.reachesIntoOuterContext,this.precedenceFilterSuppressed=s.precedenceFilterSuppressed}checkContext(c,s){null==c.context&&(null===s||null==s.context)&&(this.context=null)}hashCode(){const c=new C;return this.updateHashCode(c),c.finish()}updateHashCode(c){c.update(this.state.stateNumber,this.alt,this.context,this.semanticContext)}equals(c){return this===c||c instanceof o&&this.state.stateNumber===c.state.stateNumber&&this.alt===c.alt&&(null===this.context?null===c.context:this.context.equals(c.context))&&this.semanticContext.equals(c.semanticContext)&&this.precedenceFilterSuppressed===c.precedenceFilterSuppressed}hashCodeForConfigSet(){const c=new C;return c.update(this.state.stateNumber,this.alt,this.semanticContext),c.finish()}equalsForConfigSet(c){return this===c||c instanceof o&&this.state.stateNumber===c.state.stateNumber&&this.alt===c.alt&&this.semanticContext.equals(c.semanticContext)}toString(){return"("+this.state+","+this.alt+(null!==this.context?",["+this.context.toString()+"]":"")+(this.semanticContext!==p.NONE?","+this.semanticContext.toString():"")+(this.reachesIntoOuterContext>0?",up="+this.reachesIntoOuterContext:"")+")"}}class v extends o{constructor(c,s){return super(c,s),this.lexerActionExecutor=c.lexerActionExecutor||(null!==s?s.lexerActionExecutor:null),this.passedThroughNonGreedyDecision=null!==s&&this.checkNonGreedyDecision(s,this.state),this.hashCodeForConfigSet=v.prototype.hashCode,this.equalsForConfigSet=v.prototype.equals,this}updateHashCode(c){c.update(this.state.stateNumber,this.alt,this.context,this.semanticContext,this.passedThroughNonGreedyDecision,this.lexerActionExecutor)}equals(c){return this===c||c instanceof v&&this.passedThroughNonGreedyDecision===c.passedThroughNonGreedyDecision&&(this.lexerActionExecutor?this.lexerActionExecutor.equals(c.lexerActionExecutor):!c.lexerActionExecutor)&&super.equals(c)}checkNonGreedyDecision(c,s){return c.passedThroughNonGreedyDecision||s instanceof n&&s.nonGreedy}}Se.exports.ATNConfig=o,Se.exports.LexerATNConfig=v},4280:(Se,X,g)=>{const n=g(9800),p=g(3340),{SemanticContext:C}=g(9454),{merge:b}=g(6185);function o(s){return s.hashCodeForConfigSet()}function v(s,l){return s===l||null!==s&&null!==l&&s.equalsForConfigSet(l)}class a{constructor(l){this.configLookup=new p.Set(o,v),this.fullCtx=void 0===l||l,this.readOnly=!1,this.configs=[],this.uniqueAlt=0,this.conflictingAlts=null,this.hasSemanticContext=!1,this.dipsIntoOuterContext=!1,this.cachedHashCode=-1}add(l,d){if(void 0===d&&(d=null),this.readOnly)throw"This set is readonly";l.semanticContext!==C.NONE&&(this.hasSemanticContext=!0),l.reachesIntoOuterContext>0&&(this.dipsIntoOuterContext=!0);const r=this.configLookup.add(l);if(r===l)return this.cachedHashCode=-1,this.configs.push(l),!0;const h=b(r.context,l.context,!this.fullCtx,d);return r.reachesIntoOuterContext=Math.max(r.reachesIntoOuterContext,l.reachesIntoOuterContext),l.precedenceFilterSuppressed&&(r.precedenceFilterSuppressed=!0),r.context=h,!0}getStates(){const l=new p.Set;for(let d=0;d{class X{constructor(n){void 0===n&&(n=null),this.readOnly=!1,this.verifyATN=null===n||n.verifyATN,this.generateRuleBypassTransitions=null!==n&&n.generateRuleBypassTransitions}}X.defaultOptions=new X,X.defaultOptions.readOnly=!0,Se.exports=X},7499:(Se,X,g)=>{const{Token:n}=g(6205),p=g(9800),C=g(8729),{ATNState:b,BasicState:o,DecisionState:v,BlockStartState:a,BlockEndState:c,LoopEndState:s,RuleStartState:l,RuleStopState:d,TokensStartState:r,PlusLoopbackState:u,StarLoopbackState:h,StarLoopEntryState:m,PlusBlockStartState:_,StarBlockStartState:M,BasicBlockStartState:x}=g(5516),{Transition:w,AtomTransition:L,SetTransition:A,NotSetTransition:T,RuleTransition:O,RangeTransition:E,ActionTransition:D,EpsilonTransition:R,WildcardTransition:j,PredicateTransition:N,PrecedencePredicateTransition:S}=g(6850),{IntervalSet:k}=g(9173),F=g(2905),{LexerActionType:Y,LexerSkipAction:se,LexerChannelAction:ne,LexerCustomAction:me,LexerMoreAction:$,LexerTypeAction:q,LexerPushModeAction:Q,LexerPopModeAction:ue,LexerModeAction:Me}=g(201),Xe="59627784-3BE5-417A-B9EB-8131A7286089",Be=["AADB8D7E-AEEF-4415-AD2B-8204D6CF042E",Xe],st=Xe;function Mt(xt,nt){const ot=[];return ot[xt-1]=nt,ot.map(function(vt){return nt})}const bt=function St(){const xt=[];for(let nt=0;nt<256;nt++)xt[nt]=(nt+256).toString(16).substr(1).toUpperCase();return xt}();Se.exports=class tt{constructor(nt){null==nt&&(nt=F.defaultOptions),this.deserializationOptions=nt,this.stateFactories=null,this.actionFactories=null}isFeatureSupported(nt,ot){const vt=Be.indexOf(nt);return!(vt<0)&&Be.indexOf(ot)>=vt}deserialize(nt){this.reset(nt),this.checkVersion(),this.checkUUID();const ot=this.readATN();this.readStates(ot),this.readRules(ot),this.readModes(ot);const vt=[];return this.readSets(ot,vt,this.readInt.bind(this)),this.isFeatureSupported(Xe,this.uuid)&&this.readSets(ot,vt,this.readInt32.bind(this)),this.readEdges(ot,vt),this.readDecisions(ot),this.readLexerActions(ot),this.markPrecedenceDecisions(ot),this.verifyATN(ot),this.deserializationOptions.generateRuleBypassTransitions&&ot.grammarType===C.PARSER&&(this.generateRuleBypassTransitions(ot),this.verifyATN(ot)),ot}reset(nt){const vt=nt.split("").map(function(rt){const J=rt.charCodeAt(0);return J>1?J-2:J+65534});vt[0]=nt.charCodeAt(0),this.data=vt,this.pos=0}checkVersion(){const nt=this.readInt();if(3!==nt)throw"Could not deserialize ATN with version "+nt+" (expected 3)."}checkUUID(){const nt=this.readUUID();if(Be.indexOf(nt)<0)throw st;this.uuid=nt}readATN(){const nt=this.readInt(),ot=this.readInt();return new p(nt,ot)}readStates(nt){let ot,vt,rt;const J=[],Ce=[],ee=this.readInt();for(let pe=0;pe0;)J.addTransition(ie.transitions[pe-1]),ie.transitions=ie.transitions.slice(-1);nt.ruleToStartState[ot].addTransition(new R(J)),Ce.addTransition(new R(ae));const Te=new o;nt.addState(Te),Te.addTransition(new L(Ce,nt.ruleToTokenType[ot])),J.addTransition(new R(Te))}stateIsEndStateFor(nt,ot){if(nt.ruleIndex!==ot||!(nt instanceof m))return null;const vt=nt.transitions[nt.transitions.length-1].target;return vt instanceof s&&vt.epsilonOnlyTransitions&&vt.transitions[0].target instanceof d?nt:null}markPrecedenceDecisions(nt){for(let ot=0;ot=0:vt.transitions.length<=1||vt instanceof d)}}checkCondition(nt,ot){if(!nt)throw null==ot&&(ot="IllegalState"),ot}readInt(){return this.data[this.pos++]}readInt32(){return this.readInt()|this.readInt()<<16}readLong(){return 4294967295&this.readInt32()|this.readInt32()<<32}readUUID(){const nt=[];for(let ot=7;ot>=0;ot--){const vt=this.readInt();nt[2*ot+1]=255&vt,nt[2*ot]=vt>>8&255}return bt[nt[0]]+bt[nt[1]]+bt[nt[2]]+bt[nt[3]]+"-"+bt[nt[4]]+bt[nt[5]]+"-"+bt[nt[6]]+bt[nt[7]]+"-"+bt[nt[8]]+bt[nt[9]]+"-"+bt[nt[10]]+bt[nt[11]]+bt[nt[12]]+bt[nt[13]]+bt[nt[14]]+bt[nt[15]]}edgeFactory(nt,ot,vt,rt,J,Ce,ee,ae){const ie=nt.states[rt];switch(ot){case w.EPSILON:return new R(ie);case w.RANGE:return new E(ie,0!==ee?n.EOF:J,Ce);case w.RULE:return new O(nt.states[J],Ce,ee,ie);case w.PREDICATE:return new N(ie,J,Ce,0!==ee);case w.PRECEDENCE:return new S(ie,J);case w.ATOM:return new L(ie,0!==ee?n.EOF:J);case w.ACTION:return new D(ie,J,Ce,0!==ee);case w.SET:return new A(ie,ae[J]);case w.NOT_SET:return new T(ie,ae[J]);case w.WILDCARD:return new j(ie);default:throw"The specified transition type: "+ot+" is not valid."}}stateFactory(nt,ot){if(null===this.stateFactories){const vt=[];vt[b.INVALID_TYPE]=null,vt[b.BASIC]=()=>new o,vt[b.RULE_START]=()=>new l,vt[b.BLOCK_START]=()=>new x,vt[b.PLUS_BLOCK_START]=()=>new _,vt[b.STAR_BLOCK_START]=()=>new M,vt[b.TOKEN_START]=()=>new r,vt[b.RULE_STOP]=()=>new d,vt[b.BLOCK_END]=()=>new c,vt[b.STAR_LOOP_BACK]=()=>new h,vt[b.STAR_LOOP_ENTRY]=()=>new m,vt[b.PLUS_LOOP_BACK]=()=>new u,vt[b.LOOP_END]=()=>new s,this.stateFactories=vt}if(nt>this.stateFactories.length||null===this.stateFactories[nt])throw"The specified state type "+nt+" is not valid.";{const vt=this.stateFactories[nt]();if(null!==vt)return vt.ruleIndex=ot,vt}}lexerActionFactory(nt,ot,vt){if(null===this.actionFactories){const rt=[];rt[Y.CHANNEL]=(J,Ce)=>new ne(J),rt[Y.CUSTOM]=(J,Ce)=>new me(J,Ce),rt[Y.MODE]=(J,Ce)=>new Me(J),rt[Y.MORE]=(J,Ce)=>$.INSTANCE,rt[Y.POP_MODE]=(J,Ce)=>ue.INSTANCE,rt[Y.PUSH_MODE]=(J,Ce)=>new Q(J),rt[Y.SKIP]=(J,Ce)=>se.INSTANCE,rt[Y.TYPE]=(J,Ce)=>new q(J),this.actionFactories=rt}if(nt>this.actionFactories.length||null===this.actionFactories[nt])throw"The specified lexer action type "+nt+" is not valid.";return this.actionFactories[nt](ot,vt)}}},4675:(Se,X,g)=>{const{DFAState:n}=g(5468),{ATNConfigSet:p}=g(4280),{getCachedPredictionContext:C}=g(6185),{Map:b}=g(3340);class o{constructor(a,c){return this.atn=a,this.sharedContextCache=c,this}getCachedContext(a){if(null===this.sharedContextCache)return a;const c=new b;return C(a,this.sharedContextCache,c)}}o.ERROR=new n(2147483647,new p),Se.exports=o},5516:Se=>{let g=(()=>{class m{constructor(){this.atn=null,this.stateNumber=m.INVALID_STATE_NUMBER,this.stateType=null,this.ruleIndex=0,this.epsilonOnlyTransitions=!1,this.transitions=[],this.nextTokenWithinRule=null}toString(){return this.stateNumber}equals(M){return M instanceof m&&this.stateNumber===M.stateNumber}isNonGreedyExitState(){return!1}addTransition(M,x){void 0===x&&(x=-1),0===this.transitions.length?this.epsilonOnlyTransitions=M.isEpsilon:this.epsilonOnlyTransitions!==M.isEpsilon&&(this.epsilonOnlyTransitions=!1),-1===x?this.transitions.push(M):this.transitions.splice(x,1,M)}}return m.INVALID_TYPE=0,m.BASIC=1,m.RULE_START=2,m.BLOCK_START=3,m.PLUS_BLOCK_START=4,m.STAR_BLOCK_START=5,m.TOKEN_START=6,m.RULE_STOP=7,m.BLOCK_END=8,m.STAR_LOOP_BACK=9,m.STAR_LOOP_ENTRY=10,m.PLUS_LOOP_BACK=11,m.LOOP_END=12,m.serializationNames=["INVALID","BASIC","RULE_START","BLOCK_START","PLUS_BLOCK_START","STAR_BLOCK_START","TOKEN_START","RULE_STOP","BLOCK_END","STAR_LOOP_BACK","STAR_LOOP_ENTRY","PLUS_LOOP_BACK","LOOP_END"],m.INVALID_STATE_NUMBER=-1,m})();class p extends g{constructor(){return super(),this.decision=-1,this.nonGreedy=!1,this}}class C extends p{constructor(){return super(),this.endState=null,this}}Se.exports={ATNState:g,BasicState:class n extends g{constructor(){super(),this.stateType=g.BASIC}},DecisionState:p,BlockStartState:C,BlockEndState:class o extends g{constructor(){return super(),this.stateType=g.BLOCK_END,this.startState=null,this}},LoopEndState:class u extends g{constructor(){return super(),this.stateType=g.LOOP_END,this.loopBackState=null,this}},RuleStartState:class a extends g{constructor(){return super(),this.stateType=g.RULE_START,this.stopState=null,this.isPrecedenceRule=!1,this}},RuleStopState:class v extends g{constructor(){return super(),this.stateType=g.RULE_STOP,this}},TokensStartState:class h extends p{constructor(){return super(),this.stateType=g.TOKEN_START,this}},PlusLoopbackState:class c extends p{constructor(){return super(),this.stateType=g.PLUS_LOOP_BACK,this}},StarLoopbackState:class d extends g{constructor(){return super(),this.stateType=g.STAR_LOOP_BACK,this}},StarLoopEntryState:class r extends p{constructor(){return super(),this.stateType=g.STAR_LOOP_ENTRY,this.loopBackState=null,this.isPrecedenceDecision=null,this}},PlusBlockStartState:class s extends C{constructor(){return super(),this.stateType=g.PLUS_BLOCK_START,this.loopBackState=null,this}},StarBlockStartState:class l extends C{constructor(){return super(),this.stateType=g.STAR_BLOCK_START,this}},BasicBlockStartState:class b extends C{constructor(){return super(),this.stateType=g.BLOCK_START,this}}}},8729:Se=>{Se.exports={LEXER:0,PARSER:1}},9462:(Se,X,g)=>{const{Token:n}=g(6205),p=g(9042),C=g(9800),b=g(4675),{DFAState:o}=g(5468),{OrderedATNConfigSet:v}=g(4280),{PredictionContext:a}=g(6185),{SingletonPredictionContext:c}=g(6185),{RuleStopState:s}=g(5516),{LexerATNConfig:l}=g(7745),{Transition:d}=g(6850),r=g(5168),{LexerNoViableAltException:u}=g(5858);function h(M){M.index=-1,M.line=0,M.column=-1,M.dfaState=null}class m{constructor(){h(this)}reset(){h(this)}}Se.exports=(()=>{class M extends b{constructor(w,L,A,T){super(L,T),this.decisionToDFA=A,this.recog=w,this.startIndex=-1,this.line=1,this.column=0,this.mode=p.DEFAULT_MODE,this.prevAccept=new m}copyState(w){this.column=w.column,this.line=w.line,this.mode=w.mode,this.startIndex=w.startIndex}match(w,L){this.match_calls+=1,this.mode=L;const A=w.mark();try{this.startIndex=w.index,this.prevAccept.reset();const T=this.decisionToDFA[L];return null===T.s0?this.matchATN(w):this.execATN(w,T.s0)}finally{w.release(A)}}reset(){this.prevAccept.reset(),this.startIndex=-1,this.line=1,this.column=0,this.mode=p.DEFAULT_MODE}matchATN(w){const L=this.atn.modeToStartState[this.mode];M.debug&&console.log("matchATN mode "+this.mode+" start: "+L);const A=this.mode,T=this.computeStartState(w,L),O=T.hasSemanticContext;T.hasSemanticContext=!1;const E=this.addDFAState(T);O||(this.decisionToDFA[this.mode].s0=E);const D=this.execATN(w,E);return M.debug&&console.log("DFA after matchATN: "+this.decisionToDFA[A].toLexerString()),D}execATN(w,L){M.debug&&console.log("start state closure="+L.configs),L.isAcceptState&&this.captureSimState(this.prevAccept,w,L);let A=w.LA(1),T=L;for(;;){M.debug&&console.log("execATN loop starting closure: "+T.configs);let O=this.getExistingTargetState(T,A);if(null===O&&(O=this.computeTargetState(w,T,A)),O===b.ERROR||(A!==n.EOF&&this.consume(w),O.isAcceptState&&(this.captureSimState(this.prevAccept,w,O),A===n.EOF)))break;A=w.LA(1),T=O}return this.failOrAccept(this.prevAccept,w,T.configs,A)}getExistingTargetState(w,L){if(null===w.edges||LM.MAX_DFA_EDGE)return null;let A=w.edges[L-M.MIN_DFA_EDGE];return void 0===A&&(A=null),M.debug&&null!==A&&console.log("reuse state "+w.stateNumber+" edge to "+A.stateNumber),A}computeTargetState(w,L,A){const T=new v;return this.getReachableConfigSet(w,L.configs,T,A),0===T.items.length?(T.hasSemanticContext||this.addDFAEdge(L,A,b.ERROR),b.ERROR):this.addDFAEdge(L,A,null,T)}failOrAccept(w,L,A,T){if(null!==this.prevAccept.dfaState)return this.accept(L,w.dfaState.lexerActionExecutor,this.startIndex,w.index,w.line,w.column),w.dfaState.prediction;if(T===n.EOF&&L.index===this.startIndex)return n.EOF;throw new u(this.recog,L,this.startIndex,A)}getReachableConfigSet(w,L,A,T){let O=C.INVALID_ALT_NUMBER;for(let E=0;EM.MAX_DFA_EDGE||(M.debug&&console.log("EDGE "+w+" -> "+A+" upon "+L),null===w.edges&&(w.edges=[]),w.edges[L-M.MIN_DFA_EDGE]=A),A}addDFAState(w){const L=new o(null,w);let A=null;for(let D=0;D{const X={CHANNEL:0,CUSTOM:1,MODE:2,MORE:3,POP_MODE:4,PUSH_MODE:5,SKIP:6,TYPE:7};class g{constructor(d){this.actionType=d,this.isPositionDependent=!1}hashCode(){const d=new Hash;return this.updateHashCode(d),d.finish()}updateHashCode(d){d.update(this.actionType)}equals(d){return this===d}}class n extends g{constructor(){super(X.SKIP)}execute(d){d.skip()}toString(){return"skip"}}n.INSTANCE=new n;class p extends g{constructor(d){super(X.TYPE),this.type=d}execute(d){d.type=this.type}updateHashCode(d){d.update(this.actionType,this.type)}equals(d){return this===d||d instanceof p&&this.type===d.type}toString(){return"type("+this.type+")"}}class C extends g{constructor(d){super(X.PUSH_MODE),this.mode=d}execute(d){d.pushMode(this.mode)}updateHashCode(d){d.update(this.actionType,this.mode)}equals(d){return this===d||d instanceof C&&this.mode===d.mode}toString(){return"pushMode("+this.mode+")"}}class b extends g{constructor(){super(X.POP_MODE)}execute(d){d.popMode()}toString(){return"popMode"}}b.INSTANCE=new b;class o extends g{constructor(){super(X.MORE)}execute(d){d.more()}toString(){return"more"}}o.INSTANCE=new o;class v extends g{constructor(d){super(X.MODE),this.mode=d}execute(d){d.mode(this.mode)}updateHashCode(d){d.update(this.actionType,this.mode)}equals(d){return this===d||d instanceof v&&this.mode===d.mode}toString(){return"mode("+this.mode+")"}}class a extends g{constructor(d,r){super(X.CUSTOM),this.ruleIndex=d,this.actionIndex=r,this.isPositionDependent=!0}execute(d){d.action(null,this.ruleIndex,this.actionIndex)}updateHashCode(d){d.update(this.actionType,this.ruleIndex,this.actionIndex)}equals(d){return this===d||d instanceof a&&this.ruleIndex===d.ruleIndex&&this.actionIndex===d.actionIndex}}class c extends g{constructor(d){super(X.CHANNEL),this.channel=d}execute(d){d._channel=this.channel}updateHashCode(d){d.update(this.actionType,this.channel)}equals(d){return this===d||d instanceof c&&this.channel===d.channel}toString(){return"channel("+this.channel+")"}}class s extends g{constructor(d,r){super(r.actionType),this.offset=d,this.action=r,this.isPositionDependent=!0}execute(d){this.action.execute(d)}updateHashCode(d){d.update(this.actionType,this.offset,this.action)}equals(d){return this===d||d instanceof s&&this.offset===d.offset&&this.action===d.action}}Se.exports={LexerActionType:X,LexerSkipAction:n,LexerChannelAction:c,LexerCustomAction:a,LexerIndexedCustomAction:s,LexerMoreAction:o,LexerTypeAction:p,LexerPushModeAction:C,LexerPopModeAction:b,LexerModeAction:v}},5168:(Se,X,g)=>{const{hashStuff:n}=g(3340),{LexerIndexedCustomAction:p}=g(201);class C{constructor(o){return this.lexerActions=null===o?[]:o,this.cachedHashCode=n(o),this}fixOffsetBeforeMatch(o){let v=null;for(let a=0;a{const n=g(3340),{Set:p,BitSet:C,DoubleDict:b}=n,o=g(9800),{ATNState:v,RuleStopState:a}=g(5516),{ATNConfig:c}=g(7745),{ATNConfigSet:s}=g(4280),{Token:l}=g(6205),{DFAState:d,PredPrediction:r}=g(5468),u=g(4675),h=g(5359),m=g(13),{SemanticContext:M}=(g(7293),g(9454)),{PredictionContext:x}=g(6185),{Interval:w}=g(9173),{Transition:L,SetTransition:A,NotSetTransition:T,RuleTransition:O,ActionTransition:E}=g(6850),{NoViableAltException:D}=g(5858),{SingletonPredictionContext:R,predictionContextFromRuleContext:j}=g(6185);Se.exports=class N extends u{constructor(k,F,Y,se){super(F,se),this.parser=k,this.decisionToDFA=Y,this.predictionMode=h.LL,this._input=null,this._startIndex=0,this._outerContext=null,this._dfa=null,this.mergeCache=null,this.debug=!1,this.debug_closure=!1,this.debug_add=!1,this.debug_list_atn_decisions=!1,this.dfa_debug=!1,this.retry_debug=!1}reset(){}adaptivePredict(k,F,Y){(this.debug||this.debug_list_atn_decisions)&&console.log("adaptivePredict decision "+F+" exec LA(1)=="+this.getLookaheadName(k)+" line "+k.LT(1).line+":"+k.LT(1).column),this._input=k,this._startIndex=k.index,this._outerContext=Y;const se=this.decisionToDFA[F];this._dfa=se;const ne=k.mark(),me=k.index;try{let $;if($=se.precedenceDfa?se.getPrecedenceStartState(this.parser.getPrecedence()):se.s0,null===$){null===Y&&(Y=m.EMPTY),(this.debug||this.debug_list_atn_decisions)&&console.log("predictATN decision "+se.decision+" exec LA(1)=="+this.getLookaheadName(k)+", outerContext="+Y.toString(this.parser.ruleNames));let ue=this.computeStartState(se.atnStartState,m.EMPTY,!1);se.precedenceDfa?(se.s0.configs=ue,ue=this.applyPrecedenceFilter(ue),$=this.addDFAState(se,new d(null,ue)),se.setPrecedenceStartState(this.parser.getPrecedence(),$)):($=this.addDFAState(se,new d(null,ue)),se.s0=$)}const q=this.execATN(se,$,k,me,Y);return this.debug&&console.log("DFA after predictATN: "+se.toString(this.parser.literalNames,this.parser.symbolicNames)),q}finally{this._dfa=null,this.mergeCache=null,k.seek(me),k.release(ne)}}execATN(k,F,Y,se,ne){(this.debug||this.debug_list_atn_decisions)&&console.log("execATN decision "+k.decision+" exec LA(1)=="+this.getLookaheadName(Y)+" line "+Y.LT(1).line+":"+Y.LT(1).column);let me,$=F;this.debug&&console.log("s0 = "+F);let q=Y.LA(1);for(;;){let Q=this.getExistingTargetState($,q);if(null===Q&&(Q=this.computeTargetState(k,$,q)),Q===u.ERROR){const ue=this.noViableAlt(Y,ne,$.configs,se);if(Y.seek(se),me=this.getSynValidOrSemInvalidAltThatFinishedDecisionEntryRule($.configs,ne),me!==o.INVALID_ALT_NUMBER)return me;throw ue}if(Q.requiresFullContext&&this.predictionMode!==h.SLL){let ue=null;if(null!==Q.predicates){this.debug&&console.log("DFA state has preds in DFA sim LL failover");const Xe=Y.index;if(Xe!==se&&Y.seek(se),ue=this.evalSemanticContext(Q.predicates,ne,!0),1===ue.length)return this.debug&&console.log("Full LL avoided"),ue.minValue();Xe!==se&&Y.seek(Xe)}this.dfa_debug&&console.log("ctx sensitive state "+ne+" in "+Q);const Oe=this.computeStartState(k.atnStartState,ne,!0);return this.reportAttemptingFullContext(k,ue,Q.configs,se,Y.index),me=this.execATNWithFullContext(k,Q,Oe,Y,se,ne),me}if(Q.isAcceptState){if(null===Q.predicates)return Q.prediction;const ue=Y.index;Y.seek(se);const Me=this.evalSemanticContext(Q.predicates,ne,!0);if(0===Me.length)throw this.noViableAlt(Y,ne,Q.configs,se);return 1===Me.length||this.reportAmbiguity(k,Q,se,ue,!1,Me,Q.configs),Me.minValue()}$=Q,q!==l.EOF&&(Y.consume(),q=Y.LA(1))}}getExistingTargetState(k,F){const Y=k.edges;return null===Y?null:Y[F+1]||null}computeTargetState(k,F,Y){const se=this.computeReachSet(F.configs,Y,!1);if(null===se)return this.addDFAEdge(k,F,Y,u.ERROR),u.ERROR;let ne=new d(null,se);const me=this.getUniqueAlt(se);if(this.debug){const $=h.getConflictingAltSubsets(se);console.log("SLL altSubSets="+n.arrayToString($)+", configs="+se+", predict="+me+", allSubsetsConflict="+h.allSubsetsConflict($)+", conflictingAlts="+this.getConflictingAlts(se))}return me!==o.INVALID_ALT_NUMBER?(ne.isAcceptState=!0,ne.configs.uniqueAlt=me,ne.prediction=me):h.hasSLLConflictTerminatingPrediction(this.predictionMode,se)&&(ne.configs.conflictingAlts=this.getConflictingAlts(se),ne.requiresFullContext=!0,ne.isAcceptState=!0,ne.prediction=ne.configs.conflictingAlts.minValue()),ne.isAcceptState&&ne.configs.hasSemanticContext&&(this.predicateDFAState(ne,this.atn.getDecisionState(k.decision)),null!==ne.predicates&&(ne.prediction=o.INVALID_ALT_NUMBER)),ne=this.addDFAEdge(k,F,Y,ne),ne}predicateDFAState(k,F){const Y=F.transitions.length,se=this.getConflictingAltsOrUniqueAlt(k.configs),ne=this.getPredsForAmbigAlts(se,k.configs,Y);null!==ne?(k.predicates=this.getPredicatePredictions(se,ne),k.prediction=o.INVALID_ALT_NUMBER):k.prediction=se.minValue()}execATNWithFullContext(k,F,Y,se,ne,me){(this.debug||this.debug_list_atn_decisions)&&console.log("execATNWithFullContext "+Y);let Q,q=!1,ue=Y;se.seek(ne);let Me=se.LA(1),Oe=-1;for(;;){if(Q=this.computeReachSet(ue,Me,!0),null===Q){const Be=this.noViableAlt(se,me,ue,ne);se.seek(ne);const $e=this.getSynValidOrSemInvalidAltThatFinishedDecisionEntryRule(ue,me);if($e!==o.INVALID_ALT_NUMBER)return $e;throw Be}const Xe=h.getConflictingAltSubsets(Q);if(this.debug&&console.log("LL altSubSets="+Xe+", predict="+h.getUniqueAlt(Xe)+", resolvesToJustOneViableAlt="+h.resolvesToJustOneViableAlt(Xe)),Q.uniqueAlt=this.getUniqueAlt(Q),Q.uniqueAlt!==o.INVALID_ALT_NUMBER){Oe=Q.uniqueAlt;break}if(this.predictionMode!==h.LL_EXACT_AMBIG_DETECTION){if(Oe=h.resolvesToJustOneViableAlt(Xe),Oe!==o.INVALID_ALT_NUMBER)break}else if(h.allSubsetsConflict(Xe)&&h.allSubsetsEqual(Xe)){q=!0,Oe=h.getSingleViableAlt(Xe);break}ue=Q,Me!==l.EOF&&(se.consume(),Me=se.LA(1))}return Q.uniqueAlt!==o.INVALID_ALT_NUMBER?(this.reportContextSensitivity(k,Oe,Q,ne,se.index),Oe):(this.reportAmbiguity(k,F,ne,se.index,q,null,Q),Oe)}computeReachSet(k,F,Y){this.debug&&console.log("in computeReachSet, starting closure: "+k),null===this.mergeCache&&(this.mergeCache=new b);const se=new s(Y);let ne=null;for(let $=0;$0&&(me=this.getAltThatFinishedDecisionEntryRule(ne),me!==o.INVALID_ALT_NUMBER)?me:o.INVALID_ALT_NUMBER}getAltThatFinishedDecisionEntryRule(k){const F=[];for(let Y=0;Y0||se.state instanceof a&&se.context.hasEmptyPath())&&F.indexOf(se.alt)<0&&F.push(se.alt)}return 0===F.length?o.INVALID_ALT_NUMBER:Math.min.apply(null,F)}splitAccordingToSemanticValidity(k,F){const Y=new s(k.fullCtx),se=new s(k.fullCtx);for(let ne=0;ne50))throw"problem";if(k.state instanceof a){if(!k.context.isEmpty()){for(let q=0;q=0&&(Xe+=1)}this.closureCheckingStopState(Oe,F,Y,Me,ne,Xe,$)}}}canDropLoopEntryEdgeInLeftRecursiveRule(k){const F=k.state;if(F.stateType!==v.STAR_LOOP_ENTRY||F.stateType!==v.STAR_LOOP_ENTRY||!F.isPrecedenceDecision||k.context.isEmpty()||k.context.hasEmptyPath())return!1;const Y=k.context.length;for(let $=0;$=0?this.parser.ruleNames[k]:""}getEpsilonTarget(k,F,Y,se,ne,me){switch(F.serializationType){case L.RULE:return this.ruleTransition(k,F);case L.PRECEDENCE:return this.precedenceTransition(k,F,Y,se,ne);case L.PREDICATE:return this.predTransition(k,F,Y,se,ne);case L.ACTION:return this.actionTransition(k,F);case L.EPSILON:return new c({state:F.target},k);case L.ATOM:case L.RANGE:case L.SET:return me&&F.matches(l.EOF,0,1)?new c({state:F.target},k):null;default:return null}}actionTransition(k,F){return this.debug&&console.log("ACTION edge "+F.ruleIndex+":"+(-1===F.actionIndex?65535:F.actionIndex)),new c({state:F.target},k)}precedenceTransition(k,F,Y,se,ne){this.debug&&(console.log("PRED (collectPredicates="+Y+") "+F.precedence+">=_p, ctx dependent=true"),null!==this.parser&&console.log("context surrounding pred is "+n.arrayToString(this.parser.getRuleInvocationStack())));let me=null;if(Y&&se)if(ne){const $=this._input.index;this._input.seek(this._startIndex);const q=F.getPredicate().evaluate(this.parser,this._outerContext);this._input.seek($),q&&(me=new c({state:F.target},k))}else{const $=M.andContext(k.semanticContext,F.getPredicate());me=new c({state:F.target,semanticContext:$},k)}else me=new c({state:F.target},k);return this.debug&&console.log("config from pred transition="+me),me}predTransition(k,F,Y,se,ne){this.debug&&(console.log("PRED (collectPredicates="+Y+") "+F.ruleIndex+":"+F.predIndex+", ctx dependent="+F.isCtxDependent),null!==this.parser&&console.log("context surrounding pred is "+n.arrayToString(this.parser.getRuleInvocationStack())));let me=null;if(Y&&(F.isCtxDependent&&se||!F.isCtxDependent))if(ne){const $=this._input.index;this._input.seek(this._startIndex);const q=F.getPredicate().evaluate(this.parser,this._outerContext);this._input.seek($),q&&(me=new c({state:F.target},k))}else{const $=M.andContext(k.semanticContext,F.getPredicate());me=new c({state:F.target,semanticContext:$},k)}else me=new c({state:F.target},k);return this.debug&&console.log("config from pred transition="+me),me}ruleTransition(k,F){this.debug&&console.log("CALL rule "+this.getRuleName(F.target.ruleIndex)+", ctx="+k.context);const se=R.create(k.context,F.followState.stateNumber);return new c({state:F.target,context:se},k)}getConflictingAlts(k){const F=h.getConflictingAltSubsets(k);return h.getAlts(F)}getConflictingAltsOrUniqueAlt(k){let F=null;return k.uniqueAlt!==o.INVALID_ALT_NUMBER?(F=new C,F.add(k.uniqueAlt)):F=k.conflictingAlts,F}getTokenName(k){if(k===l.EOF)return"EOF";if(null!==this.parser&&null!==this.parser.literalNames){if(!(k>=this.parser.literalNames.length&&k>=this.parser.symbolicNames.length))return(this.parser.literalNames[k]||this.parser.symbolicNames[k])+"<"+k+">";console.log(k+" ttype out of range: "+this.parser.literalNames),console.log(""+this.parser.getInputStream().getTokens())}return""+k}getLookaheadName(k){return this.getTokenName(k.LA(1))}dumpDeadEndConfigs(k){console.log("dead end configs: ");const F=k.getDeadEndConfigs();for(let Y=0;Y0){const me=se.state.transitions[0];me instanceof AtomTransition?ne="Atom "+this.getTokenName(me.label):me instanceof A&&(ne=(me instanceof T?"~":"")+"Set "+me.set)}console.error(se.toString(this.parser,!0)+":"+ne)}}noViableAlt(k,F,Y,se){return new D(this.parser,k,k.get(se),k.LT(1),Y,F)}getUniqueAlt(k){let F=o.INVALID_ALT_NUMBER;for(let Y=0;Y "+se+" upon "+this.getTokenName(Y)),null===se?null:(se=this.addDFAState(k,se),null===F||Y<-1||Y>this.atn.maxTokenType||(null===F.edges&&(F.edges=[]),F.edges[Y+1]=se,this.debug&&console.log("DFA=\n"+k.toString(null===this.parser?null:this.parser.literalNames,null===this.parser?null:this.parser.symbolicNames))),se)}addDFAState(k,F){if(F===u.ERROR)return F;const Y=k.states.get(F);return null!==Y?Y:(F.stateNumber=k.states.length,F.configs.readOnly||(F.configs.optimizeConfigs(this),F.configs.setReadonly(!0)),k.states.add(F),this.debug&&console.log("adding new DFA state: "+F),F)}reportAttemptingFullContext(k,F,Y,se,ne){if(this.debug||this.retry_debug){const me=new w(se,ne+1);console.log("reportAttemptingFullContext decision="+k.decision+":"+Y+", input="+this.parser.getTokenStream().getText(me))}null!==this.parser&&this.parser.getErrorListenerDispatch().reportAttemptingFullContext(this.parser,k,se,ne,F,Y)}reportContextSensitivity(k,F,Y,se,ne){if(this.debug||this.retry_debug){const me=new w(se,ne+1);console.log("reportContextSensitivity decision="+k.decision+":"+Y+", input="+this.parser.getTokenStream().getText(me))}null!==this.parser&&this.parser.getErrorListenerDispatch().reportContextSensitivity(this.parser,k,se,ne,F,Y)}reportAmbiguity(k,F,Y,se,ne,me,$){if(this.debug||this.retry_debug){const q=new w(Y,se+1);console.log("reportAmbiguity "+me+":"+$+", input="+this.parser.getTokenStream().getText(q))}null!==this.parser&&this.parser.getErrorListenerDispatch().reportAmbiguity(this.parser,k,Y,se,ne,me,$)}}},5359:(Se,X,g)=>{const{Map:n,BitSet:p,AltDict:C,hashStuff:b}=g(3340),o=g(9800),{RuleStopState:v}=g(5516),{ATNConfigSet:a}=g(4280),{ATNConfig:c}=g(7745),{SemanticContext:s}=g(9454),l={SLL:0,LL:1,LL_EXACT_AMBIG_DETECTION:2,hasSLLConflictTerminatingPrediction:function(d,r){if(l.allConfigsInRuleStopStates(r))return!0;if(d===l.SLL&&r.hasSemanticContext){const h=new a;for(let m=0;m1)return!0;return!1},allSubsetsEqual:function(d){let r=null;for(let u=0;u{const{Set:n,Hash:p,equalArrays:C}=g(3340);class b{hashCode(){const l=new p;return this.updateHashCode(l),l.finish()}evaluate(l,d){}evalPrecedence(l,d){return this}static andContext(l,d){if(null===l||l===b.NONE)return d;if(null===d||d===b.NONE)return l;const r=new a(l,d);return 1===r.opnds.length?r.opnds[0]:r}static orContext(l,d){if(null===l)return d;if(null===d)return l;if(l===b.NONE||d===b.NONE)return b.NONE;const r=new c(l,d);return 1===r.opnds.length?r.opnds[0]:r}}class o extends b{constructor(l,d,r){super(),this.ruleIndex=void 0===l?-1:l,this.predIndex=void 0===d?-1:d,this.isCtxDependent=void 0!==r&&r}evaluate(l,d){return l.sempred(this.isCtxDependent?d:null,this.ruleIndex,this.predIndex)}updateHashCode(l){l.update(this.ruleIndex,this.predIndex,this.isCtxDependent)}equals(l){return this===l||l instanceof o&&this.ruleIndex===l.ruleIndex&&this.predIndex===l.predIndex&&this.isCtxDependent===l.isCtxDependent}toString(){return"{"+this.ruleIndex+":"+this.predIndex+"}?"}}b.NONE=new o;class v extends b{constructor(l){super(),this.precedence=void 0===l?0:l}evaluate(l,d){return l.precpred(d,this.precedence)}evalPrecedence(l,d){return l.precpred(d,this.precedence)?b.NONE:null}compareTo(l){return this.precedence-l.precedence}updateHashCode(l){l.update(this.precedence)}equals(l){return this===l||l instanceof v&&this.precedence===l.precedence}toString(){return"{"+this.precedence+">=prec}?"}static filterPrecedencePredicates(l){const d=[];return l.values().map(function(r){r instanceof v&&d.push(r)}),d}}class a extends b{constructor(l,d){super();const r=new n;l instanceof a?l.opnds.map(function(h){r.add(h)}):r.add(l),d instanceof a?d.opnds.map(function(h){r.add(h)}):r.add(d);const u=v.filterPrecedencePredicates(r);if(u.length>0){let h=null;u.map(function(m){(null===h||m.precedenced.toString());return(l.length>3?l.slice(3):l).join("&&")}}class c extends b{constructor(l,d){super();const r=new n;l instanceof c?l.opnds.map(function(h){r.add(h)}):r.add(l),d instanceof c?d.opnds.map(function(h){r.add(h)}):r.add(d);const u=v.filterPrecedencePredicates(r);if(u.length>0){const h=u.sort(function(_,M){return _.compareTo(M)});r.add(h[h.length-1])}this.opnds=Array.from(r.values())}equals(l){return this===l||l instanceof c&&C(this.opnds,l.opnds)}updateHashCode(l){l.update(this.opnds,"OR")}evaluate(l,d){for(let r=0;rd.toString());return(l.length>3?l.slice(3):l).join("||")}}Se.exports={SemanticContext:b,PrecedencePredicate:v,Predicate:o}},6850:(Se,X,g)=>{const{Token:n}=g(6205),{IntervalSet:p}=g(9173),{Predicate:C,PrecedencePredicate:b}=g(9454);class o{constructor(x){if(null==x)throw"target cannot be null.";this.target=x,this.isEpsilon=!1,this.label=null}}o.EPSILON=1,o.RANGE=2,o.RULE=3,o.PREDICATE=4,o.ATOM=5,o.ACTION=6,o.SET=7,o.NOT_SET=8,o.WILDCARD=9,o.PRECEDENCE=10,o.serializationNames=["INVALID","EPSILON","RANGE","RULE","PREDICATE","ATOM","ACTION","SET","NOT_SET","WILDCARD","PRECEDENCE"],o.serializationTypes={EpsilonTransition:o.EPSILON,RangeTransition:o.RANGE,RuleTransition:o.RULE,PredicateTransition:o.PREDICATE,AtomTransition:o.ATOM,ActionTransition:o.ACTION,SetTransition:o.SET,NotSetTransition:o.NOT_SET,WildcardTransition:o.WILDCARD,PrecedencePredicateTransition:o.PRECEDENCE};class l extends o{constructor(x){super(x)}}class u extends o{constructor(x,w){super(x),this.serializationType=o.SET,null!=w?this.label=w:(this.label=new p,this.label.addOne(n.INVALID_TYPE))}matches(x,w,L){return this.label.contains(x)}toString(){return this.label.toString()}}Se.exports={Transition:o,AtomTransition:class v extends o{constructor(x,w){super(x),this.label_=w,this.label=this.makeLabel(),this.serializationType=o.ATOM}makeLabel(){const x=new p;return x.addOne(this.label_),x}matches(x,w,L){return this.label_===x}toString(){return this.label_}},SetTransition:u,NotSetTransition:class h extends u{constructor(x,w){super(x,w),this.serializationType=o.NOT_SET}matches(x,w,L){return x>=w&&x<=L&&!super.matches(x,w,L)}toString(){return"~"+super.toString()}},RuleTransition:class a extends o{constructor(x,w,L,A){super(x),this.ruleIndex=w,this.precedence=L,this.followState=A,this.serializationType=o.RULE,this.isEpsilon=!0}matches(x,w,L){return!1}},ActionTransition:class r extends o{constructor(x,w,L,A){super(x),this.serializationType=o.ACTION,this.ruleIndex=w,this.actionIndex=void 0===L?-1:L,this.isCtxDependent=void 0!==A&&A,this.isEpsilon=!0}matches(x,w,L){return!1}toString(){return"action_"+this.ruleIndex+":"+this.actionIndex}},EpsilonTransition:class c extends o{constructor(x,w){super(x),this.serializationType=o.EPSILON,this.isEpsilon=!0,this.outermostPrecedenceReturn=w}matches(x,w,L){return!1}toString(){return"epsilon"}},RangeTransition:class s extends o{constructor(x,w,L){super(x),this.serializationType=o.RANGE,this.start=w,this.stop=L,this.label=this.makeLabel()}makeLabel(){const x=new p;return x.addRange(this.start,this.stop),x}matches(x,w,L){return x>=this.start&&x<=this.stop}toString(){return"'"+String.fromCharCode(this.start)+"'..'"+String.fromCharCode(this.stop)+"'"}},WildcardTransition:class m extends o{constructor(x){super(x),this.serializationType=o.WILDCARD}matches(x,w,L){return x>=w&&x<=L}toString(){return"."}},PredicateTransition:class d extends l{constructor(x,w,L,A){super(x),this.serializationType=o.PREDICATE,this.ruleIndex=w,this.predIndex=L,this.isCtxDependent=A,this.isEpsilon=!0}matches(x,w,L){return!1}getPredicate(){return new C(this.ruleIndex,this.predIndex,this.isCtxDependent)}toString(){return"pred_"+this.ruleIndex+":"+this.predIndex}},PrecedencePredicateTransition:class _ extends l{constructor(x,w){super(x),this.serializationType=o.PRECEDENCE,this.precedence=w,this.isEpsilon=!0}matches(x,w,L){return!1}getPredicate(){return new b(this.precedence)}toString(){return this.precedence+" >= _p"}},AbstractPredicateTransition:l}},871:(Se,X,g)=>{X.ATN=g(9800),X.ATNDeserializer=g(7499),X.LexerATNSimulator=g(9462),X.ParserATNSimulator=g(6877),X.PredictionMode=g(5359)},5343:(Se,X,g)=>{const{Set:n}=g(3340),{DFAState:p}=g(5468),{StarLoopEntryState:C}=g(5516),{ATNConfigSet:b}=g(4280),{DFASerializer:o}=g(7279),{LexerDFASerializer:v}=g(7279);Se.exports=class a{constructor(s,l){if(void 0===l&&(l=0),this.atnStartState=s,this.decision=l,this._states=new n,this.s0=null,this.precedenceDfa=!1,s instanceof C&&s.isPrecedenceDecision){this.precedenceDfa=!0;const d=new p(null,new b);d.edges=[],d.isAcceptState=!1,d.requiresFullContext=!1,this.s0=d}}getPrecedenceStartState(s){if(!this.precedenceDfa)throw"Only precedence DFAs may contain a precedence start state.";return s<0||s>=this.s0.edges.length?null:this.s0.edges[s]||null}setPrecedenceStartState(s,l){if(!this.precedenceDfa)throw"Only precedence DFAs may contain a precedence start state.";s<0||(this.s0.edges[s]=l)}setPrecedenceDfa(s){if(this.precedenceDfa!==s){if(this._states=new n,s){const l=new p(null,new b);l.edges=[],l.isAcceptState=!1,l.requiresFullContext=!1,this.s0=l}else this.s0=null;this.precedenceDfa=s}}sortedStates(){return this._states.values().sort(function(l,d){return l.stateNumber-d.stateNumber})}toString(s,l){return s=s||null,l=l||null,null===this.s0?"":new o(this,s,l).toString()}toLexerString(){return null===this.s0?"":new v(this).toString()}get states(){return this._states}}},7279:(Se,X,g)=>{const n=g(3340);class p{constructor(o,v,a){this.dfa=o,this.literalNames=v||[],this.symbolicNames=a||[]}toString(){if(null===this.dfa.s0)return null;let o="";const v=this.dfa.sortedStates();for(let a=0;a"),o=o.concat(this.getStateString(d)),o=o.concat("\n"))}}}return 0===o.length?null:o}getEdgeLabel(o){return 0===o?"EOF":null!==this.literalNames||null!==this.symbolicNames?this.literalNames[o-1]||this.symbolicNames[o-1]:String.fromCharCode(o-1)}getStateString(o){const v=(o.isAcceptState?":":"")+"s"+o.stateNumber+(o.requiresFullContext?"^":"");return o.isAcceptState?null!==o.predicates?v+"=>"+n.arrayToString(o.predicates):v+"=>"+o.prediction.toString():v}}Se.exports={DFASerializer:p,LexerDFASerializer:class C extends p{constructor(o){super(o,null)}getEdgeLabel(o){return"'"+String.fromCharCode(o)+"'"}}}},5468:(Se,X,g)=>{const{ATNConfigSet:n}=g(4280),{Hash:p,Set:C}=g(3340);class o{constructor(a,c){return null===a&&(a=-1),null===c&&(c=new n),this.stateNumber=a,this.configs=c,this.edges=null,this.isAcceptState=!1,this.prediction=0,this.lexerActionExecutor=null,this.requiresFullContext=!1,this.predicates=null,this}getAltSet(){const a=new C;if(null!==this.configs)for(let c=0;c{X.DFA=g(5343),X.DFASerializer=g(7279).DFASerializer,X.LexerDFASerializer=g(7279).LexerDFASerializer,X.PredPrediction=g(5468).PredPrediction},9935:(Se,X,g)=>{const{BitSet:n}=g(3340),{ErrorListener:p}=g(7967),{Interval:C}=g(9173);Se.exports=class b extends p{constructor(v){super(),this.exactOnly=v=v||!0}reportAmbiguity(v,a,c,s,l,d,r){if(this.exactOnly&&!l)return;const u="reportAmbiguity d="+this.getDecisionDescription(v,a)+": ambigAlts="+this.getConflictingAlts(d,r)+", input='"+v.getTokenStream().getText(new C(c,s))+"'";v.notifyErrorListeners(u)}reportAttemptingFullContext(v,a,c,s,l,d){const r="reportAttemptingFullContext d="+this.getDecisionDescription(v,a)+", input='"+v.getTokenStream().getText(new C(c,s))+"'";v.notifyErrorListeners(r)}reportContextSensitivity(v,a,c,s,l,d){const r="reportContextSensitivity d="+this.getDecisionDescription(v,a)+", input='"+v.getTokenStream().getText(new C(c,s))+"'";v.notifyErrorListeners(r)}getDecisionDescription(v,a){const c=a.decision,s=a.atnStartState.ruleIndex,l=v.ruleNames;if(s<0||s>=l.length)return""+c;const d=l[s]||null;return null===d||0===d.length?""+c:`${c} (${d})`}getConflictingAlts(v,a){if(null!==v)return v;const c=new n;for(let s=0;s{class X{syntaxError(C,b,o,v,a,c){}reportAmbiguity(C,b,o,v,a,c,s){}reportAttemptingFullContext(C,b,o,v,a,c){}reportContextSensitivity(C,b,o,v,a,c){}}class g extends X{constructor(){super()}syntaxError(C,b,o,v,a,c){console.error("line "+o+":"+v+" "+a)}}g.INSTANCE=new g,Se.exports={ErrorListener:X,ConsoleErrorListener:g,ProxyErrorListener:class n extends X{constructor(C){if(super(),null===C)throw"delegates";return this.delegates=C,this}syntaxError(C,b,o,v,a,c){this.delegates.map(s=>s.syntaxError(C,b,o,v,a,c))}reportAmbiguity(C,b,o,v,a,c,s){this.delegates.map(l=>l.reportAmbiguity(C,b,o,v,a,c,s))}reportAttemptingFullContext(C,b,o,v,a,c){this.delegates.map(s=>s.reportAttemptingFullContext(C,b,o,v,a,c))}reportContextSensitivity(C,b,o,v,a,c){this.delegates.map(s=>s.reportContextSensitivity(C,b,o,v,a,c))}}}},2487:(Se,X,g)=>{const{Token:n}=g(6205),{NoViableAltException:p,InputMismatchException:C,FailedPredicateException:b,ParseCancellationException:o}=g(5858),{ATNState:v}=g(5516),{Interval:a,IntervalSet:c}=g(9173);class s{reset(u){}recoverInline(u){}recover(u,h){}sync(u){}inErrorRecoveryMode(u){}reportError(u){}}class l extends s{constructor(){super(),this.errorRecoveryMode=!1,this.lastErrorIndex=-1,this.lastErrorStates=null,this.nextTokensContext=null,this.nextTokenState=0}reset(u){this.endErrorCondition(u)}beginErrorCondition(u){this.errorRecoveryMode=!0}inErrorRecoveryMode(u){return this.errorRecoveryMode}endErrorCondition(u){this.errorRecoveryMode=!1,this.lastErrorStates=null,this.lastErrorIndex=-1}reportMatch(u){this.endErrorCondition(u)}reportError(u,h){this.inErrorRecoveryMode(u)||(this.beginErrorCondition(u),h instanceof p?this.reportNoViableAlternative(u,h):h instanceof C?this.reportInputMismatch(u,h):h instanceof b?this.reportFailedPredicate(u,h):(console.log("unknown recognition error type: "+h.constructor.name),console.log(h.stack),u.notifyErrorListeners(h.getOffendingToken(),h.getMessage(),h)))}recover(u,h){this.lastErrorIndex===u.getInputStream().index&&null!==this.lastErrorStates&&this.lastErrorStates.indexOf(u.state)>=0&&u.consume(),this.lastErrorIndex=u._input.index,null===this.lastErrorStates&&(this.lastErrorStates=[]),this.lastErrorStates.push(u.state);const m=this.getErrorRecoverySet(u);this.consumeUntil(u,m)}sync(u){if(this.inErrorRecoveryMode(u))return;const h=u._interp.atn.states[u.state],m=u.getTokenStream().LA(1),_=u.atn.nextTokens(h);if(_.contains(m))return this.nextTokensContext=null,void(this.nextTokenState=v.INVALID_STATE_NUMBER);if(_.contains(n.EPSILON))null===this.nextTokensContext&&(this.nextTokensContext=u._ctx,this.nextTokensState=u._stateNumber);else switch(h.stateType){case v.BLOCK_START:case v.STAR_BLOCK_START:case v.PLUS_BLOCK_START:case v.STAR_LOOP_ENTRY:if(null!==this.singleTokenDeletion(u))return;throw new C(u);case v.PLUS_LOOP_BACK:case v.STAR_LOOP_BACK:this.reportUnwantedToken(u);const M=new c;M.addSet(u.getExpectedTokens());const x=M.addSet(this.getErrorRecoverySet(u));this.consumeUntil(u,x)}}reportNoViableAlternative(u,h){const m=u.getTokenStream();let _;_=null!==m?h.startToken.type===n.EOF?"":m.getText(new a(h.startToken.tokenIndex,h.offendingToken.tokenIndex)):"";const M="no viable alternative at input "+this.escapeWSAndQuote(_);u.notifyErrorListeners(M,h.offendingToken,h)}reportInputMismatch(u,h){const m="mismatched input "+this.getTokenErrorDisplay(h.offendingToken)+" expecting "+h.getExpectedTokens().toString(u.literalNames,u.symbolicNames);u.notifyErrorListeners(m,h.offendingToken,h)}reportFailedPredicate(u,h){u.notifyErrorListeners("rule "+u.ruleNames[u._ctx.ruleIndex]+" "+h.message,h.offendingToken,h)}reportUnwantedToken(u){if(this.inErrorRecoveryMode(u))return;this.beginErrorCondition(u);const h=u.getCurrentToken(),M="extraneous input "+this.getTokenErrorDisplay(h)+" expecting "+this.getExpectedTokens(u).toString(u.literalNames,u.symbolicNames);u.notifyErrorListeners(M,h,null)}reportMissingToken(u){if(this.inErrorRecoveryMode(u))return;this.beginErrorCondition(u);const h=u.getCurrentToken(),_="missing "+this.getExpectedTokens(u).toString(u.literalNames,u.symbolicNames)+" at "+this.getTokenErrorDisplay(h);u.notifyErrorListeners(_,h,null)}recoverInline(u){const h=this.singleTokenDeletion(u);if(null!==h)return u.consume(),h;if(this.singleTokenInsertion(u))return this.getMissingSymbol(u);throw new C(u)}singleTokenInsertion(u){const h=u.getTokenStream().LA(1),m=u._interp.atn;return!!m.nextTokens(m.states[u.state].transitions[0].target,u._ctx).contains(h)&&(this.reportMissingToken(u),!0)}singleTokenDeletion(u){const h=u.getTokenStream().LA(2);if(this.getExpectedTokens(u).contains(h)){this.reportUnwantedToken(u),u.consume();const _=u.getCurrentToken();return this.reportMatch(u),_}return null}getMissingSymbol(u){const h=u.getCurrentToken(),_=this.getExpectedTokens(u).first();let M;M=_===n.EOF?"":"";let x=h;const w=u.getTokenStream().LT(-1);return x.type===n.EOF&&null!==w&&(x=w),u.getTokenFactory().create(x.source,_,M,n.DEFAULT_CHANNEL,-1,-1,x.line,x.column)}getExpectedTokens(u){return u.getExpectedTokens()}getTokenErrorDisplay(u){if(null===u)return"";let h=u.text;return null===h&&(h=u.type===n.EOF?"":"<"+u.type+">"),this.escapeWSAndQuote(h)}escapeWSAndQuote(u){return"'"+(u=(u=(u=u.replace(/\n/g,"\\n")).replace(/\r/g,"\\r")).replace(/\t/g,"\\t"))+"'"}getErrorRecoverySet(u){const h=u._interp.atn;let m=u._ctx;const _=new c;for(;null!==m&&m.invokingState>=0;){const w=h.nextTokens(h.states[m.invokingState].transitions[0].followState);_.addSet(w),m=m.parentCtx}return _.removeOne(n.EPSILON),_}consumeUntil(u,h){let m=u.getTokenStream().LA(1);for(;m!==n.EOF&&!h.contains(m);)u.consume(),m=u.getTokenStream().LA(1)}}Se.exports={BailErrorStrategy:class d extends l{constructor(){super()}recover(u,h){let m=u._ctx;for(;null!==m;)m.exception=h,m=m.parentCtx;throw new o(h)}recoverInline(u){this.recover(u,new C(u))}sync(u){}},DefaultErrorStrategy:l}},5858:(Se,X,g)=>{const{PredicateTransition:n}=g(6850),{Interval:p}=g(9173).Interval;class C extends Error{constructor(d){super(d.message),Error.captureStackTrace?Error.captureStackTrace(this,C):new Error,this.message=d.message,this.recognizer=d.recognizer,this.input=d.input,this.ctx=d.ctx,this.offendingToken=null,this.offendingState=-1,null!==this.recognizer&&(this.offendingState=this.recognizer.state)}getExpectedTokens(){return null!==this.recognizer?this.recognizer.atn.getExpectedTokens(this.offendingState,this.ctx):null}toString(){return this.message}}function a(l,d){return null!==d?d:"failed predicate: {"+l+"}?"}class s extends Error{constructor(){super(),Error.captureStackTrace(this,s)}}Se.exports={RecognitionException:C,NoViableAltException:class o extends C{constructor(d,r,u,h,m,_){_=_||d._ctx,h=h||d.getCurrentToken(),u=u||d.getCurrentToken(),r=r||d.getInputStream(),super({message:"",recognizer:d,input:r,ctx:_}),this.deadEndConfigs=m,this.startToken=u,this.offendingToken=h}},LexerNoViableAltException:class b extends C{constructor(d,r,u,h){super({message:"",recognizer:d,input:r,ctx:null}),this.startIndex=u,this.deadEndConfigs=h}toString(){let d="";return this.startIndex>=0&&this.startIndex{Se.exports.RecognitionException=g(5858).RecognitionException,Se.exports.NoViableAltException=g(5858).NoViableAltException,Se.exports.LexerNoViableAltException=g(5858).LexerNoViableAltException,Se.exports.InputMismatchException=g(5858).InputMismatchException,Se.exports.FailedPredicateException=g(5858).FailedPredicateException,Se.exports.DiagnosticErrorListener=g(9935),Se.exports.BailErrorStrategy=g(2487).BailErrorStrategy,Se.exports.DefaultErrorStrategy=g(2487).DefaultErrorStrategy,Se.exports.ErrorListener=g(7967).ErrorListener},6419:()=>{String.prototype.codePointAt||function(){"use strict";var Se=function(){let g;try{const n={},p=Object.defineProperty;g=p(n,n,n)&&p}catch{}return g}();const X=function(g){if(null==this)throw TypeError();const n=String(this),p=n.length;let C=g?Number(g):0;if(C!=C&&(C=0),C<0||C>=p)return;const b=n.charCodeAt(C);let o;return b>=55296&&b<=56319&&p>C+1&&(o=n.charCodeAt(C+1),o>=56320&&o<=57343)?1024*(b-55296)+o-56320+65536:b};Se?Se(String.prototype,"codePointAt",{value:X,configurable:!0,writable:!0}):String.prototype.codePointAt=X}()},9182:()=>{String.fromCodePoint||function(){const Se=function(){let p;try{const C={},b=Object.defineProperty;p=b(C,C,C)&&b}catch{}return p}(),X=String.fromCharCode,g=Math.floor,n=function(p){const b=[];let o,v,a=-1;const c=arguments.length;if(!c)return"";let s="";for(;++a1114111||g(l)!==l)throw RangeError("Invalid code point: "+l);l<=65535?b.push(l):(l-=65536,o=55296+(l>>10),v=l%1024+56320,b.push(o,v)),(a+1===c||b.length>16384)&&(s+=X.apply(null,b),b.length=0)}return s};Se?Se(String,"fromCodePoint",{value:n,configurable:!0,writable:!0}):String.fromCodePoint=n}()},5829:(Se,X,g)=>{const{Token:n}=g(6205),{Interval:p}=g(9173),C=new p(-1,-2);class b{}class o extends b{constructor(){super()}}class v extends o{constructor(){super()}}class c extends v{constructor(){super()}}class s extends c{constructor(){super()}}class r extends c{constructor(_){super(),this.parentCtx=null,this.symbol=_}getChild(_){return null}getSymbol(){return this.symbol}getParent(){return this.parentCtx}getPayload(){return this.symbol}getSourceInterval(){if(null===this.symbol)return C;const _=this.symbol.tokenIndex;return new p(_,_)}getChildCount(){return 0}accept(_){return _.visitTerminal(this)}getText(){return this.symbol.text}toString(){return this.symbol.type===n.EOF?"":this.symbol.text}}class h{walk(_,M){if(M instanceof s||void 0!==M.isErrorNode&&M.isErrorNode())_.visitErrorNode(M);else if(M instanceof c)_.visitTerminal(M);else{this.enterRule(_,M);for(let w=0;w{const n=g(3340),{Token:p}=g(6205),{ErrorNode:C,TerminalNode:b,RuleNode:o}=g(5829),v={toStringTree:function(a,c,s){c=c||null,null!==(s=s||null)&&(c=s.ruleNames);let l=v.getNodeText(a,c);l=n.escapeWhitespace(l,!1);const d=a.getChildCount();if(0===d)return l;let r="("+l+" ";d>0&&(l=v.toStringTree(a.getChild(0),c),r=r.concat(l));for(let u=1;u{const n=g(5829),p=g(5140);Se.exports={...n,Trees:p}},9807:function(){var Se;Se=typeof self<"u"?self:this,function(g){var n_searchParams="URLSearchParams"in Se,n_iterable="Symbol"in Se&&"iterator"in Symbol,n_blob="FileReader"in Se&&"Blob"in Se&&function(){try{return new Blob,!0}catch{return!1}}(),n_formData="FormData"in Se,n_arrayBuffer="ArrayBuffer"in Se;if(n_arrayBuffer)var C=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],b=ArrayBuffer.isView||function(E){return E&&C.indexOf(Object.prototype.toString.call(E))>-1};function o(E){if("string"!=typeof E&&(E=String(E)),/[^a-z0-9\-#$%&'*+.^_`|~]/i.test(E))throw new TypeError("Invalid character in header field name");return E.toLowerCase()}function v(E){return"string"!=typeof E&&(E=String(E)),E}function a(E){var D={next:function(){var R=E.shift();return{done:void 0===R,value:R}}};return n_iterable&&(D[Symbol.iterator]=function(){return D}),D}function c(E){this.map={},E instanceof c?E.forEach(function(D,R){this.append(R,D)},this):Array.isArray(E)?E.forEach(function(D){this.append(D[0],D[1])},this):E&&Object.getOwnPropertyNames(E).forEach(function(D){this.append(D,E[D])},this)}function s(E){if(E.bodyUsed)return Promise.reject(new TypeError("Already read"));E.bodyUsed=!0}function l(E){return new Promise(function(D,R){E.onload=function(){D(E.result)},E.onerror=function(){R(E.error)}})}function d(E){var D=new FileReader,R=l(D);return D.readAsArrayBuffer(E),R}function h(E){if(E.slice)return E.slice(0);var D=new Uint8Array(E.byteLength);return D.set(new Uint8Array(E)),D.buffer}function m(){return this.bodyUsed=!1,this._initBody=function(E){this._bodyInit=E,E?"string"==typeof E?this._bodyText=E:n_blob&&Blob.prototype.isPrototypeOf(E)?this._bodyBlob=E:n_formData&&FormData.prototype.isPrototypeOf(E)?this._bodyFormData=E:n_searchParams&&URLSearchParams.prototype.isPrototypeOf(E)?this._bodyText=E.toString():n_arrayBuffer&&n_blob&&function p(E){return E&&DataView.prototype.isPrototypeOf(E)}(E)?(this._bodyArrayBuffer=h(E.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):n_arrayBuffer&&(ArrayBuffer.prototype.isPrototypeOf(E)||b(E))?this._bodyArrayBuffer=h(E):this._bodyText=E=Object.prototype.toString.call(E):this._bodyText="",this.headers.get("content-type")||("string"==typeof E?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):n_searchParams&&URLSearchParams.prototype.isPrototypeOf(E)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},n_blob&&(this.blob=function(){var E=s(this);if(E)return E;if(this._bodyBlob)return Promise.resolve(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(new Blob([this._bodyArrayBuffer]));if(this._bodyFormData)throw new Error("could not read FormData body as blob");return Promise.resolve(new Blob([this._bodyText]))},this.arrayBuffer=function(){return this._bodyArrayBuffer?s(this)||Promise.resolve(this._bodyArrayBuffer):this.blob().then(d)}),this.text=function(){var E=s(this);if(E)return E;if(this._bodyBlob)return function r(E){var D=new FileReader,R=l(D);return D.readAsText(E),R}(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(function u(E){for(var D=new Uint8Array(E),R=new Array(D.length),j=0;j-1?D:E}(D.method||this.method||"GET"),this.mode=D.mode||this.mode||null,this.signal=D.signal||this.signal,this.referrer=null,("GET"===this.method||"HEAD"===this.method)&&R)throw new TypeError("Body not allowed for GET or HEAD requests");this._initBody(R)}function w(E){var D=new FormData;return E.trim().split("&").forEach(function(R){if(R){var j=R.split("="),N=j.shift().replace(/\+/g," "),S=j.join("=").replace(/\+/g," ");D.append(decodeURIComponent(N),decodeURIComponent(S))}}),D}function L(E){var D=new c;return E.replace(/\r?\n[\t ]+/g," ").split(/\r?\n/).forEach(function(j){var N=j.split(":"),S=N.shift().trim();if(S){var k=N.join(":").trim();D.append(S,k)}}),D}function A(E,D){D||(D={}),this.type="default",this.status=void 0===D.status?200:D.status,this.ok=this.status>=200&&this.status<300,this.statusText="statusText"in D?D.statusText:"OK",this.headers=new c(D.headers),this.url=D.url||"",this._initBody(E)}x.prototype.clone=function(){return new x(this,{body:this._bodyInit})},m.call(x.prototype),m.call(A.prototype),A.prototype.clone=function(){return new A(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new c(this.headers),url:this.url})},A.error=function(){var E=new A(null,{status:0,statusText:""});return E.type="error",E};var T=[301,302,303,307,308];A.redirect=function(E,D){if(-1===T.indexOf(D))throw new RangeError("Invalid status code");return new A(null,{status:D,headers:{location:E}})},g.DOMException=Se.DOMException;try{new g.DOMException}catch{g.DOMException=function(D,R){this.message=D,this.name=R;var j=Error(D);this.stack=j.stack},g.DOMException.prototype=Object.create(Error.prototype),g.DOMException.prototype.constructor=g.DOMException}function O(E,D){return new Promise(function(R,j){var N=new x(E,D);if(N.signal&&N.signal.aborted)return j(new g.DOMException("Aborted","AbortError"));var S=new XMLHttpRequest;function k(){S.abort()}S.onload=function(){var F={status:S.status,statusText:S.statusText,headers:L(S.getAllResponseHeaders()||"")};F.url="responseURL"in S?S.responseURL:F.headers.get("X-Request-URL"),R(new A("response"in S?S.response:S.responseText,F))},S.onerror=function(){j(new TypeError("Network request failed"))},S.ontimeout=function(){j(new TypeError("Network request failed"))},S.onabort=function(){j(new g.DOMException("Aborted","AbortError"))},S.open(N.method,N.url,!0),"include"===N.credentials?S.withCredentials=!0:"omit"===N.credentials&&(S.withCredentials=!1),"responseType"in S&&n_blob&&(S.responseType="blob"),N.headers.forEach(function(F,Y){S.setRequestHeader(Y,F)}),N.signal&&(N.signal.addEventListener("abort",k),S.onreadystatechange=function(){4===S.readyState&&N.signal.removeEventListener("abort",k)}),S.send(typeof N._bodyInit>"u"?null:N._bodyInit)})}O.polyfill=!0,Se.fetch||(Se.fetch=O,Se.Headers=c,Se.Request=x,Se.Response=A),g.Headers=c,g.Request=x,g.Response=A,g.fetch=O,Object.defineProperty(g,"__esModule",{value:!0})}({})},7098:Se=>{Se.exports=function(n){var p=new Date(n.getTime()),C=p.getTimezoneOffset();return p.setSeconds(0,0),6e4*C+p.getTime()%6e4}},2860:(Se,X,g)=>{var n=g(1420);Se.exports=function p(C,b){var o=n(C),v=Number(b);return o.setDate(o.getDate()+v),o}},6888:(Se,X,g)=>{var n=g(3895);Se.exports=function C(b,o){var v=Number(o);return n(b,36e5*v)}},3895:(Se,X,g)=>{var n=g(1420);Se.exports=function p(C,b){var o=n(C).getTime(),v=Number(b);return new Date(o+v)}},3745:(Se,X,g)=>{var n=g(3895);Se.exports=function C(b,o){var v=Number(o);return n(b,6e4*v)}},1277:(Se,X,g)=>{var n=g(1420),p=g(7255);Se.exports=function C(b,o){var v=n(b),a=Number(o),c=v.getMonth()+a,s=new Date(0);s.setFullYear(v.getFullYear(),c,1),s.setHours(0,0,0,0);var l=p(s);return v.setMonth(c,Math.min(l,v.getDate())),v}},3857:(Se,X,g)=>{var n=g(3895);Se.exports=function p(C,b){var o=Number(b);return n(C,1e3*o)}},338:(Se,X,g)=>{var n=g(2860);Se.exports=function p(C,b){var o=Number(b);return n(C,7*o)}},3763:(Se,X,g)=>{var n=g(1277);Se.exports=function p(C,b){var o=Number(b);return n(C,12*o)}},7255:(Se,X,g)=>{var n=g(1420);Se.exports=function p(C){var b=n(C),o=b.getFullYear(),v=b.getMonth(),a=new Date(0);return a.setFullYear(o,v+1,0),a.setHours(0,0,0,0),a.getDate()}},4853:Se=>{Se.exports=function X(g){return g instanceof Date}},1420:(Se,X,g)=>{var n=g(7098),p=g(4853),C=36e5,b=6e4,v=/[T ]/,a=/:/,c=/^(\d{2})$/,s=[/^([+-]\d{2})$/,/^([+-]\d{3})$/,/^([+-]\d{4})$/],l=/^(\d{4})/,d=[/^([+-]\d{4})/,/^([+-]\d{5})/,/^([+-]\d{6})/],r=/^-(\d{2})$/,u=/^-?(\d{3})$/,h=/^-?(\d{2})-?(\d{2})$/,m=/^-?W(\d{2})$/,_=/^-?W(\d{2})-?(\d{1})$/,M=/^(\d{2}([.,]\d*)?)$/,x=/^(\d{2}):?(\d{2}([.,]\d*)?)$/,w=/^(\d{2}):?(\d{2}):?(\d{2}([.,]\d*)?)$/,L=/([Z+-].*)$/,A=/^(Z)$/,T=/^([+-])(\d{2})$/,O=/^([+-])(\d{2}):?(\d{2})$/;function k(F,Y,se){Y=Y||0,se=se||0;var ne=new Date(0);ne.setUTCFullYear(F,0,4);var $=7*Y+se+1-(ne.getUTCDay()||7);return ne.setUTCDate(ne.getUTCDate()+$),ne}Se.exports=function E(F,Y){if(p(F))return new Date(F.getTime());if("string"!=typeof F)return new Date(F);var ne=(Y||{}).additionalDigits;ne=null==ne?2:Number(ne);var me=function D(F){var ne,Y={},se=F.split(v);if(a.test(se[0])?(Y.date=null,ne=se[0]):(Y.date=se[0],ne=se[1]),ne){var me=L.exec(ne);me?(Y.time=ne.replace(me[1],""),Y.timezone=me[1]):Y.time=ne}return Y}(F),$=function R(F,Y){var me,se=s[Y],ne=d[Y];if(me=l.exec(F)||ne.exec(F)){var $=me[1];return{year:parseInt($,10),restDateString:F.slice($.length)}}if(me=c.exec(F)||se.exec(F)){var q=me[1];return{year:100*parseInt(q,10),restDateString:F.slice(q.length)}}return{year:null}}(me.date,ne),ue=function j(F,Y){if(null===Y)return null;var se,ne,me;if(0===F.length)return(ne=new Date(0)).setUTCFullYear(Y),ne;if(se=r.exec(F))return ne=new Date(0),me=parseInt(se[1],10)-1,ne.setUTCFullYear(Y,me),ne;if(se=u.exec(F)){ne=new Date(0);var q=parseInt(se[1],10);return ne.setUTCFullYear(Y,0,q),ne}if(se=h.exec(F)){ne=new Date(0),me=parseInt(se[1],10)-1;var Q=parseInt(se[2],10);return ne.setUTCFullYear(Y,me,Q),ne}return(se=m.exec(F))?k(Y,parseInt(se[1],10)-1):(se=_.exec(F))?k(Y,parseInt(se[1],10)-1,parseInt(se[2],10)-1):null}($.restDateString,$.year);if(ue){var Xe,Me=ue.getTime(),Oe=0;if(me.time&&(Oe=function N(F){var Y,se,ne;if(Y=M.exec(F))return(se=parseFloat(Y[1].replace(",",".")))%24*C;if(Y=x.exec(F))return se=parseInt(Y[1],10),ne=parseFloat(Y[2].replace(",",".")),se%24*C+ne*b;if(Y=w.exec(F)){se=parseInt(Y[1],10),ne=parseInt(Y[2],10);var me=parseFloat(Y[3].replace(",","."));return se%24*C+ne*b+1e3*me}return null}(me.time)),me.timezone)Xe=function S(F){var Y,se;return(Y=A.exec(F))?0:(Y=T.exec(F))?(se=60*parseInt(Y[2],10),"+"===Y[1]?-se:se):(Y=O.exec(F))?(se=60*parseInt(Y[2],10)+parseInt(Y[3],10),"+"===Y[1]?-se:se):0}(me.timezone)*b;else{var Be=Me+Oe,$e=new Date(Be);Xe=n($e);var st=new Date(Be);st.setDate($e.getDate()+1);var Mt=n(st)-n($e);Mt>0&&(Xe+=Mt)}return new Date(Me+Oe+Xe)}return new Date(F)}},563:(Se,X,g)=>{X.formatArgs=function p(a){if(a[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+a[0]+(this.useColors?"%c ":" ")+"+"+Se.exports.humanize(this.diff),!this.useColors)return;const c="color: "+this.color;a.splice(1,0,c,"color: inherit");let s=0,l=0;a[0].replace(/%[a-zA-Z%]/g,d=>{"%%"!==d&&(s++,"%c"===d&&(l=s))}),a.splice(l,0,c)},X.save=function C(a){try{a?X.storage.setItem("debug",a):X.storage.removeItem("debug")}catch{}},X.load=function b(){let a;try{a=X.storage.getItem("debug")}catch{}return!a&&typeof process<"u"&&"env"in process&&(a=process.env.DEBUG),a},X.useColors=function n(){return!(!(typeof window<"u"&&window.process)||"renderer"!==window.process.type&&!window.process.__nwjs)||!(typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))&&(typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/))},X.storage=function o(){try{return localStorage}catch{}}(),X.destroy=(()=>{let a=!1;return()=>{a||(a=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})(),X.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"],X.log=console.debug||console.log||(()=>{}),Se.exports=g(6018)(X);const{formatters:v}=Se.exports;v.j=function(a){try{return JSON.stringify(a)}catch(c){return"[UnexpectedJSONParseError]: "+c.message}}},6018:(Se,X,g)=>{Se.exports=function n(p){function b(r){let u,m,_,h=null;function M(...x){if(!M.enabled)return;const w=M,L=Number(new Date);w.diff=L-(u||L),w.prev=u,w.curr=L,u=L,x[0]=b.coerce(x[0]),"string"!=typeof x[0]&&x.unshift("%O");let T=0;x[0]=x[0].replace(/%([a-zA-Z%])/g,(E,D)=>{if("%%"===E)return"%";T++;const R=b.formatters[D];return"function"==typeof R&&(E=R.call(w,x[T]),x.splice(T,1),T--),E}),b.formatArgs.call(w,x),(w.log||b.log).apply(w,x)}return M.namespace=r,M.useColors=b.useColors(),M.color=b.selectColor(r),M.extend=o,M.destroy=b.destroy,Object.defineProperty(M,"enabled",{enumerable:!0,configurable:!1,get:()=>null!==h?h:(m!==b.namespaces&&(m=b.namespaces,_=b.enabled(r)),_),set:x=>{h=x}}),"function"==typeof b.init&&b.init(M),M}function o(r,u){const h=b(this.namespace+(typeof u>"u"?":":u)+r);return h.log=this.log,h}function s(r){return r.toString().substring(2,r.toString().length-2).replace(/\.\*\?$/,"*")}return b.debug=b,b.default=b,b.coerce=function l(r){return r instanceof Error?r.stack||r.message:r},b.disable=function a(){const r=[...b.names.map(s),...b.skips.map(s).map(u=>"-"+u)].join(",");return b.enable(""),r},b.enable=function v(r){let u;b.save(r),b.namespaces=r,b.names=[],b.skips=[];const h=("string"==typeof r?r:"").split(/[\s,]+/),m=h.length;for(u=0;u{b[r]=p[r]}),b.names=[],b.skips=[],b.formatters={},b.selectColor=function C(r){let u=0;for(let h=0;h{"use strict";var X="%[a-f0-9]{2}",g=new RegExp("("+X+")|([^%]+?)","gi"),n=new RegExp("("+X+")+","gi");function p(o,v){try{return[decodeURIComponent(o.join(""))]}catch{}if(1===o.length)return o;var a=o.slice(0,v=v||1),c=o.slice(v);return Array.prototype.concat.call([],p(a),p(c))}function C(o){try{return decodeURIComponent(o)}catch{for(var v=o.match(g)||[],a=1;a"u"&&typeof process<"u"&&"[object process]"==={}.toString.call(process),u=typeof Uint8ClampedArray<"u"&&typeof importScripts<"u"&&typeof MessageChannel<"u";function x(){var Ce=setTimeout;return function(){return Ce(L,1)}}var w=new Array(1e3);function L(){for(var Ce=0;Ce{Se.exports=class X{constructor(n){this.capabilityStatement=n}serverCan(n){return this.supportFor({capabilityType:"interaction",where:{code:n}})}resourceCan(n,p){return this.supportFor({resourceType:n,capabilityType:"interaction",where:{code:p}})}serverSearch(n){return this.supportFor({capabilityType:"searchParam",where:{name:n}})}resourceSearch(n,p){return this.supportFor({resourceType:n,capabilityType:"searchParam",where:{name:p}})}supportFor({resourceType:n,capabilityType:p,where:C}={}){let b;if(b=n?this.resourceCapabilities({resourceType:n}):this.serverCapabilities(),!b)return!1;const o=b[p];if(C&&o){const v=Object.keys(C)[0];return void 0!==o.find(c=>c[v]===C[v])}return void 0!==o}interactionsFor({resourceType:n}={}){const p=this.resourceCapabilities({resourceType:n});return void 0===p?[]:p.interaction.map(C=>C.code)}searchParamsFor({resourceType:n}={}){const p=this.resourceCapabilities({resourceType:n});return void 0===p||void 0===p.searchParam?[]:p.searchParam.map(C=>C.name)}resourceCapabilities({resourceType:n}={}){return this.serverCapabilities().resource.find(b=>b.type===n)}capabilityContents({resourceType:n,capabilityType:p}={}){const C=this.resourceCapabilities({resourceType:n});if(void 0!==C)return C[p]}serverCapabilities(){return this.capabilityStatement.rest.find(n=>"server"===n.mode)}}},8907:(Se,X,g)=>{var n=g(7156).default;const p=g(133),{authFromCapability:C,authFromWellKnown:b}=g(6686),o=g(8237),v=g(7681),a=g(1370),{createQueryString:c,validResourceType:s}=g(9047),{FetchQueue:l}=g(1335),{deprecatePaginationArgs:d,deprecateHeaders:r}=g(3820),u=g(6836);Se.exports=class h{constructor({baseUrl:_,customHeaders:M,requestOptions:x,requestSigner:w,bearerToken:L}={}){this.httpClient=new o({baseUrl:_,customHeaders:M,requestOptions:x,requestSigner:w}),L&&(this.httpClient.bearerToken=L),this.resolver=new v(this),this.pagination=new a(this.httpClient)}static httpFor(_){return{request:o.requestFor(_),response:o.responseFor(_)}}get baseUrl(){return this.httpClient&&this.httpClient.baseUrl}set baseUrl(_){this.httpClient&&(this.httpClient.baseUrl=_)}get customHeaders(){return this.httpClient.customHeaders}set customHeaders(_){this.httpClient.customHeaders=_}set bearerToken(_){this.httpClient.bearerToken=_}resolve({reference:_,context:M,headers:x,options:w={}}={}){return this.resolver.resolve({reference:_,context:M,options:r(w,x)})}smartAuthMetadata({headers:_,options:M={}}={}){var x=this;return n(function*(){const w={options:r(M,_)};w.options.headers||(w.options.headers={}),w.options.headers.accept="application/fhir+json,application/json";const L=x.baseUrl.replace(/\/*$/,"/"),A=new l,T=A.buildJob(),O=A.buildJob(),E=A.buildJob(),D=[];return new Promise((R,j)=>{function N(S){D.push(S)===A.numJobs&&j(new Error(D.map(k=>k.message).join("; ")))}x.httpClient.request("GET",`${L}.well-known/smart-configuration`,O.addSignalOption(w)).then(S=>(A.safeAbortOthers(O),R(b(S)))).catch(S=>N(S)),x.capabilityStatement(T.addSignalOption(w)).then(S=>(A.safeAbortOthers(T),R(C(S)))).catch(S=>N(S)),x.httpClient.request("GET",`${L}.well-known/openid-configuration`,E.addSignalOption(w)).then(S=>(A.safeAbortOthers(E),R(b(S)))).catch(S=>N(S))})})()}capabilityStatement({headers:_,options:M={}}={}){return this.metadata||(this.metadata=this.httpClient.get("metadata",r(M,_))),this.metadata}request(_,{method:M="GET",options:x={},body:w}={}){return x.method&&x.method!==M&&console.warn(`WARNING: 'options.method' has been specified: ${x.method} but will be ignored. Use 'method' instead.`),this.httpClient.request(M,_,x,w)}read({resourceType:_,id:M,headers:x,options:w={}}={}){if(!s(_))throw new Error("Invalid resourceType",_);return this.httpClient.get(`${_}/${M}`,r(w,x))}vread({resourceType:_,id:M,version:x,headers:w,options:L={}}={}){if(!s(_))throw new Error("Invalid resourceType",_);return this.httpClient.get(`${_}/${M}/_history/${x}`,r(L,w))}create({resourceType:_,body:M,headers:x,options:w={}}={}){if(!s(_))throw new Error("Invalid resourceType",_);return this.httpClient.post(_,M,r(w,x))}delete({resourceType:_,id:M,headers:x,options:w={}}={}){if(!s(_))throw new Error("Invalid resourceType",_);return this.httpClient.delete(`${_}/${M}`,r(w,x))}update({resourceType:_,id:M,searchParams:x,body:w,headers:L,options:A={}}={}){if(!s(_))throw new Error("Invalid resourceType",_);if(M&&x)throw new Error("Conditional update with search params cannot be with id",_);if(x){const T=c(x);return this.httpClient.put(`${_}?${T}`,w,r(A,L))}return this.httpClient.put(`${_}/${M}`,w,r(A,L))}patch({resourceType:_,id:M,JSONPatch:x,headers:w,options:L={}}={}){if(!s(_))throw new Error("Invalid resourceType",_);const T={...r(L,w).headers||{},"Content-Type":"application/json-patch+json"};return this.httpClient.patch(`${_}/${M}`,x,{...L,headers:T})}batch({body:_,headers:M,options:x={}}={}){return this.httpClient.post("/",_,r(x,M))}transaction({body:_,headers:M,options:x={}}={}){return this.httpClient.post("/",_,r(x,M))}operation({name:_,resourceType:M,id:x,method:w="POST",input:L,options:A={}}={}){const T=["/"];if(M){if(!s(M))throw new Error("Invalid resourceType",M);T.push(`${M}/`)}return x&&T.push(`${x}/`),T.push(`${_.startsWith("$")?_:`$${_}`}`),"POST"===w.toUpperCase()?this.httpClient.post(T.join(""),L,A):"GET"===w.toUpperCase()?(L&&T.push(`?${p.stringify(L)}`),this.httpClient.get(T.join(""),A)):void 0}nextPage(_,M){const{bundle:x,options:w={}}=d(_,M);return this.pagination.nextPage(x,w)}prevPage(_,M){const{bundle:x,options:w={}}=d(_,M);return this.pagination.prevPage(x,w)}search({resourceType:_,compartment:M,searchParams:x,headers:w,options:L={}}={}){if(_&&!s(_))throw new Error("Invalid resourceType",_);if(M&&_)return this.compartmentSearch({resourceType:_,compartment:M,searchParams:x,options:r(L,w)});if(_)return this.resourceSearch({resourceType:_,searchParams:x,options:r(L,w)});if(x instanceof Object&&Object.keys(x).length>0)return this.systemSearch({searchParams:x,options:r(L,w)});throw new Error("search requires either searchParams or a resourceType")}resourceSearch({resourceType:_,searchParams:M,headers:x,options:w={}}={}){if(!s(_))throw new Error("Invalid resourceType",_);let L=_;return w.postSearch&&(L+="/_search"),this.baseSearch({searchPath:L,searchParams:M,headers:x,options:w})}systemSearch({searchParams:_,headers:M,options:x={}}={}){return this.baseSearch({searchPath:"/_search",searchParams:_,headers:M,options:x})}compartmentSearch({resourceType:_,compartment:M,searchParams:x,headers:w,options:L={}}={}){if(!s(_))throw new Error("Invalid resourceType",_);const{resourceType:A,id:T}=M;if(!s(A))throw new Error("Invalid compartmentType",A);let O=`/${A}/${T}/${_}`;return L.postSearch&&(O+="/_search"),this.baseSearch({searchPath:O,searchParams:x,headers:w,options:L})}baseSearch({searchPath:_,searchParams:M,headers:x,options:w}){const L=c(M),A=r(w,x);return this[w.postSearch?"postSearch":"getSearch"](_,L,A)}postSearch(_,M,x){const L={"Content-Type":"application/x-www-form-urlencoded",...x.headers},A={...x,headers:L};return this.httpClient.post(_,M,A)}getSearch(_,M,x){let w=_;return M&&(w+=`?${M}`),this.httpClient.get(w,x)}history({resourceType:_,id:M,headers:x,options:w={}}={}){if(_&&!s(_))throw new Error("Invalid resourceType",_);return M&&_?this.resourceHistory({resourceType:_,id:M,options:r(w,x)}):_?this.typeHistory({resourceType:_,options:r(w,x)}):this.systemHistory({options:r(w,x)})}resourceHistory({resourceType:_,id:M,headers:x,options:w={}}={}){if(!s(_))throw new Error("Invalid resourceType",_);return this.httpClient.get(`${_}/${M}/_history`,r(w,x))}typeHistory({resourceType:_,headers:M,options:x={}}={}){if(!s(_))throw new Error("Invalid resourceType",_);return this.httpClient.get(`${_}/_history`,r(x,M))}systemHistory({headers:_,options:M={}}={}){return this.httpClient.get("_history",r(M,_))}},Se.exports.CapabilityTool=u},3820:Se=>{Se.exports={deprecateHeaders:(n,p)=>p?(console.warn("WARNING: headers is deprecated and will be removed in the next major version. Use options.headers instead."),console.warn(JSON.stringify(p,null," ")),{headers:p,...n}):n,deprecatePaginationArgs:(n,p)=>{if(Object.prototype.hasOwnProperty.call(n,"resourceType")){console.warn("WARNING: positional parameters for pagination methods are deprecated and will be removed in the next major version. Call with ({ bundle, options }) rather than (bundle, headers)");const C={bundle:n};return p&&(C.options={headers:p}),C}return n}}},1335:(Se,X,g)=>{const{AbortController:n}=g(4783);class p{constructor(){this.controller=new n,this.resolving=!1}addSignalOption(o){return{signal:this.controller.signal,...o}}safeAbort(){this.resolving||this.controller.abort()}}Se.exports={FetchQueue:class C{constructor(){this.jobs=[],this.numJobs=0}buildJob(){const o=new p;return this.numJobs=this.jobs.push(o),o}safeAbortOthers(o){o.resolving=!0;for(let v=0,a=this.numJobs;v{Se.exports={fhirReferenceRegEx:/^((http|https):\/\/([A-Za-z0-9\\.:%$]*\/)*)?(Account|ActivityDefinition|AdverseEvent|AllergyIntolerance|Appointment|AppointmentResponse|AuditEvent|Basic|Binary|BiologicallyDerivedProduct|BodySite|BodyStructure|Bundle|CapabilityStatement|CarePlan|CareTeam|CatalogEntry|ChargeItem|ChargeItemDefinition|Claim|ClaimResponse|ClinicalImpression|CodeSystem|Communication|CommunicationRequest|CompartmentDefinition|Composition|ConceptMap|Condition|Conformance|Consent|Contract|Coverage|CoverageEligibilityRequest|CoverageEligibilityResponse|DataElement|DecisionSupportRule|DecisionSupportServiceModule|DetectedIssue|Device|DeviceComponent|DeviceDefinition|DeviceMetric|DeviceRequest|DeviceUseRequest|DeviceUseStatement|DiagnosticOrder|DiagnosticReport|DiagnosticRequest|DocumentManifest|DocumentReference|EffectEvidenceSynthesis|EligibilityRequest|EligibilityResponse|Encounter|Endpoint|EnrollmentRequest|EnrollmentResponse|EntryDefinition|EpisodeOfCare|EventDefinition|Evidence|EvidenceVariable|ExampleScenario|ExpansionProfile|ExplanationOfBenefit|FamilyMemberHistory|Flag|Goal|GraphDefinition|Group|GuidanceRequest|GuidanceResponse|HealthcareService|ImagingExcerpt|ImagingManifest|ImagingObjectSelection|ImagingStudy|Immunization|ImmunizationEvaluation|ImmunizationRecommendation|ImplementationGuide|ImplementationGuideInput|ImplementationGuideOutput|InsurancePlan|Invoice|ItemInstance|Library|Linkage|List|Location|Measure|MeasureReport|Media|Medication|MedicationAdministration|MedicationDispense|MedicationKnowledge|MedicationOrder|MedicationRequest|MedicationStatement|MedicinalProduct|MedicinalProductAuthorization|MedicinalProductClinicals|MedicinalProductContraindication|MedicinalProductDeviceSpec|MedicinalProductIndication|MedicinalProductIngredient|MedicinalProductInteraction|MedicinalProductManufactured|MedicinalProductPackaged|MedicinalProductPharmaceutical|MedicinalProductUndesirableEffect|MessageDefinition|MessageHeader|ModuleDefinition|ModuleMetadata|MolecularSequence|NamingSystem|NutritionOrder|NutritionRequest|Observation|ObservationDefinition|OccupationalData|OperationDefinition|OperationOutcome|Order|OrderResponse|OrderSet|Organization|OrganizationAffiliation|OrganizationRole|Patient|PaymentNotice|PaymentReconciliation|Person|PlanDefinition|Practitioner|PractitionerRole|Procedure|ProcedureRequest|ProcessRequest|ProcessResponse|ProductPlan|Protocol|Provenance|Questionnaire|QuestionnaireResponse|ReferralRequest|RelatedPerson|RequestGroup|ResearchDefinition|ResearchElementDefinition|ResearchStudy|ResearchSubject|RiskAssessment|RiskEvidenceSynthesis|Schedule|SearchParameter|Sequence|ServiceDefinition|ServiceRequest|Slot|Specimen|SpecimenDefinition|StructureDefinition|StructureMap|Subscription|Substance|SubstanceNucleicAcid|SubstancePolymer|SubstanceProtein|SubstanceReferenceInformation|SubstanceSourceMaterial|SubstanceSpecification|SupplyDelivery|SupplyRequest|Task|TerminologyCapabilities|TestReport|TestScript|UserSession|ValueSet|VerificationResult|VisionPrescription)\/[A-Za-z0-9\-.]{1,256}(\/_history\/[A-Za-z0-9\-.]{1,256})?$/}},8237:(Se,X,g)=>{var n=g(7156).default;g(1098).polyfill(),g(9807);const{logRequestError:p,logRequestInfo:C,logResponseInfo:b}=g(1566),o={accept:"application/fhir+json"},v="__response",a="__request";let s,l,c=!1;try{s=g(5899),l=g(5899).HttpsAgent,c=!0}catch{C("HTTP Agent is not available")}const d=new WeakMap;function u({status:m,data:_,method:M,headers:x,url:w}){const L={response:{status:m,data:_},config:{method:M,url:w,headers:x}};return p(L),L}Se.exports=class Rc{static lcKeys(_){return _&&Object.keys(_).reduce((M,x)=>(M[x.toLowerCase()]=_[x],M),{})}constructor({baseUrl:_,customHeaders:M={},requestOptions:x={},requestSigner:w}){this.baseUrl=_,this.customHeaders=M,this.baseRequestOptions=x,this.requestSigner=w}set baseUrl(_){if(!_)throw new Error("baseUrl cannot be blank");if("string"!=typeof _)throw new Error("baseUrl must be a string");this.baseUrlValue=_}get baseUrl(){return this.baseUrlValue}static responseFor(_){return _[v]}static requestFor(_){return _[a]}set bearerToken(_){this.authHeader={authorization:`Bearer ${_}`}}requestBuilder(_,M,x,w){const L={...this.baseRequestOptions,...x,method:_,body:(m=w,"string"==typeof m?m:JSON.stringify(m))};var m;let A={};return c||(A={keepalive:!Object.prototype.hasOwnProperty.call(L,"keepalive")||L.keepalive}),Object.assign(L,A,{headers:new Headers(this.mergeHeaders(x.headers))},function r(m,_={}){const M={baseUrl:m,agentOptions:_};return c?(d.get(M)||(m.startsWith("https")?d.set(M,{agent:new l(_)}):d.set(M,{agent:new s(_)})),d.get(M)):{}}(this.baseUrl,L)),this.requestSigner&&this.requestSigner(M,L),new Request(M,L)}request(_,M,x={},w){var L=this;return n(function*(){const A=L.expandUrl(M),T=L.requestBuilder(_,A,x,w);C(_,A,T.headers);const O=yield fetch(T),{status:E,headers:D}=O;b({status:E,response:O});const R=yield O.text();let j={};if(R)try{j=JSON.parse(R)}catch{throw j=R,u({status:E,data:j,method:_,headers:D,url:A})}if(!O.ok)throw u({status:E,data:j,method:_,headers:D,url:A});return Object.defineProperty(j,v,{writable:!1,enumerable:!1,value:O}),Object.defineProperty(j,a,{writable:!1,enumerable:!1,value:T}),j})()}get(_,M){var x=this;return n(function*(){return x.request("GET",_,M)})()}delete(_,M){var x=this;return n(function*(){return x.request("DELETE",_,M)})()}put(_,M,x={}){var w=this;return n(function*(){const L={"content-type":"application/fhir+json",...Rc.lcKeys(x.headers)},A={...x,headers:L};return w.request("PUT",_,A,M)})()}post(_,M,x={}){var w=this;return n(function*(){const L={"content-type":"application/fhir+json",...Rc.lcKeys(x.headers)},A={...x,headers:L};return w.request("POST",_,A,M)})()}patch(_,M,x){var w=this;return n(function*(){return w.request("PATCH",_,x,M)})()}expandUrl(_=""){return _.toLowerCase().startsWith("http")?_:this.baseUrl.endsWith("/")&&_.startsWith("/")?this.baseUrl+_.slice(1):this.baseUrl.endsWith("/")||_.startsWith("/")?this.baseUrl+_:`${this.baseUrl}/${_}`}mergeHeaders(_){const{lcKeys:M}=Rc;return{...M(o),...M(this.authHeader),...M(this.customHeaders),...M(_)}}}},1566:(Se,X,g)=>{const n=g(3187),p=g(563)("fhir-kit-client:error"),C=g(563)("fhir-kit-client:info");function b(l){return n(l)}function o(l){return b(l.raw&&"function"==typeof l.raw?l.raw():l)}Se.exports={logRequestError:function v(l){p.enabled&&(p("!!! Error"),l.response&&p(` Status: ${l.response.status}`),l.config&&(p(` ${l.config.method.toUpperCase()}: ${l.config.url}`),p(` Headers: ${o(l.config.headers)}`)),l.response&&l.response.data&&p(b(l.response.data)),p("!!! Request Error"))},logRequestInfo:function a(l,d,r){C.enabled&&(d&&C(`Request: ${l.toUpperCase()} ${d.toString()}`),C(`Request Headers: ${o(r)}`))},logResponseInfo:function c(l){C.enabled&&(C(`Response: ${l.status}`),l.data&&C(b(l.data)))},logError:function s(l){p.enabled&&p(l)}}},1370:Se=>{Se.exports=class X{constructor(n){this.httpClient=n}nextPage(n,{headers:p}={}){const C=n.link.find(b=>"next"===b.relation);return C?this.httpClient.get(C.url,{headers:p}):void 0}prevPage(n,{headers:p}={}){const C=n.link.find(b=>b.relation.match(/^prev(ious)?$/));return C?this.httpClient.get(C.url,{headers:p}):void 0}}},7681:(Se,X,g)=>{var n=g(7156).default;const{splitReference:p}=g(9047),{deprecateHeaders:C}=g(3820);Se.exports=class{constructor(b){this.client=b}resolve({reference:b,context:o,headers:v,options:a={}}={}){var c=this;return n(function*(){return void 0===o?b.startsWith("http")?c.resolveAbsoluteReference(b,C(a,v)):c.client.httpClient.get(b,C(a,v)):b.startsWith("#")?c.resolveContainedReference(b,o):c.resolveBundleReference(b,o,C(a,v))})()}resolveAbsoluteReference(b,o){var v=this;return n(function*(){if(b.startsWith(v.client.baseUrl))return v.client.httpClient.get(b,o);const{baseUrl:a,resourceType:c,id:s}=p(b);return new(g(8907))({baseUrl:a}).read({resourceType:c,id:s,options:o})})()}resolveContainedReference(b,o){if(o.contained){const v=b.slice(1),a=o.contained.find(c=>c.id===v);if(a)return a}throw new Error(`Unable to resolve contained reference: ${b}`)}resolveBundleReference(b,o,v){var a=this;return n(function*(){const c=new RegExp(`(^|/)${b}$`),s=o.entry.find(l=>c.test(l.fullUrl));return s?s.resource:a.resolve({reference:b,options:v})})()}}},6686:(Se,X,g)=>{const{logError:p}=g(1566);Se.exports={authFromCapability:function C(o){const v={};try{return o.rest.forEach(a=>{a.security.extension.find(s=>"http://fhir-registry.smarthealthit.org/StructureDefinition/oauth-uris"===s.url).extension.forEach(s=>{switch(s.url){case"authorize":v.authorizeUrl=new URL(s.valueUri);break;case"token":v.tokenUrl=new URL(s.valueUri);break;case"register":v.registerUrl=new URL(s.valueUri);break;case"manage":v.manageUrl=new URL(s.valueUri)}})}),v}catch(a){return p(a),v}},authFromWellKnown:function b(o){const{authorization_endpoint:v,token_endpoint:a,registration_endpoint:c}=o;return{authorizeUrl:v&&new URL(v),tokenUrl:a&&new URL(a),registerUrl:c&&new URL(c)}}}},9047:(Se,X,g)=>{const n=g(133),{fhirReferenceRegEx:p}=g(4115);Se.exports={createQueryString:function o(v){if(v instanceof Object&&Object.keys(v).length>0)return n.stringify(v)},splitReference:function C(v){if(!v.match(p))throw new Error(`${v} is not a recognized FHIR reference`);let a,c=v;v.startsWith("http")&&([,a]=p.exec(v),c=v.slice(a.length),a.endsWith("/")&&(a=a.slice(0,-1)));const[s,l]=c.split("/");return{baseUrl:a,resourceType:s,id:l}},validResourceType:function b(v){return!v.startsWith("/")&&!v.includes(":")&&/\S/.test(v)}}},4258:(Se,X,g)=>{let n={};const p=g(7353),C=g(5117),b=g(5827);n.aggregateMacro=function(o,v,a){return o.reduce((c,s,l)=>(this.$index=l,this.$total=v(s)),this.$total=a)},n.countFn=function(o){return o&&o.length?o.length:0},n.sumFn=function(o){return n.aggregateMacro.apply(this,[o,v=>p.plus(b.arraify(v),b.arraify(this.$total)),0])},n.minFn=function(o){return n.aggregateMacro.apply(this,[o,v=>{const a=b.arraify(v),c=b.arraify(this.$total);return b.isEmpty(c)||C.lt(a,c)?a:c}])},n.maxFn=function(o){return n.aggregateMacro.apply(this,[o,v=>{const a=b.arraify(v),c=b.arraify(this.$total);return b.isEmpty(c)||C.gt(a,c)?a:c}])},n.avgFn=function(o){return p.div(n.sumFn(o),n.countFn(o))},Se.exports=n},500:(Se,X,g)=>{var n=g(2825),p={};function C(b,o){if(0==o.length)return!0;for(var v=0;v1)throw new Error("Expected singleton on right side of contains, got "+JSON.stringify(o));return C(b,o)},p.in=function(b,o){if(0==b.length)return[];if(0==o.length)return!1;if(b.length>1)throw new Error("Expected singleton on right side of in, got "+JSON.stringify(o));return C(o,b)},Se.exports=p},8330:(Se,X,g)=>{const n={},{distinctFn:p}=g(5073),C=g(6190);n.union=function(b,o){return p(b.concat(o))},n.combineFn=function(b,o){return b.concat(o)},n.intersect=function(b,o){let v=[];const a=b.length;let c=o.length;if(a&&c){let s={};o.forEach(l=>{const d=C(l);s[d]?c--:s[d]=!0});for(let l=0;l0;++l){let d=b[l],r=C(d);s[r]&&(v.push(d),s[r]=!1,c--)}}return v},Se.exports=n},9285:Se=>{Se.exports={reset:function(){this.nowDate=new Date,this.today=null,this.now=null,this.timeOfDay=null,this.localTimezoneOffset=null},today:null,now:null,timeOfDay:null}},1605:(Se,X,g)=>{var n={};const p=g(4217),C=g(9285),b=p.FP_Date,o=p.FP_DateTime,v=p.FP_Time;n.now=function(){if(!C.now){var c=o.isoDateTime(C.nowDate);C.now=new o(c)}return C.now},n.today=function(){if(!C.today){var c=b.isoDate(C.nowDate);C.today=new b(c)}return C.today},n.timeOfDay=function(){if(!C.timeOfDay){const c=o.isoTime(C.nowDate);C.timeOfDay=new v(c)}return C.timeOfDay},Se.exports=n},2825:(Se,X,g)=>{var p=g(4217).FP_Type,C=g(5827),b=g(4192),o=Array.prototype.slice,v=Object.keys,a=function(h){return"[object Arguments]"==Object.prototype.toString.call(h)};function c(h){return"string"==typeof h||h instanceof String}function s(h){return!isNaN(parseFloat(h))&&isFinite(h)}function l(h){return h.toUpperCase().replace(/\s+/," ")}function r(h){return null==h}Se.exports=function d(h,m,_){if(_||(_={}),(h=C.valDataConverted(h))===(m=C.valDataConverted(m)))return!0;if(_.fuzzy){if(c(h)&&c(m))return l(h)==l(m);if(s(h)&&s(m))return b.isEquivalent(h,m)}else if("number"==typeof h&&"number"==typeof m)return b.isEqual(h,m);if(h instanceof Date&&m instanceof Date)return h.getTime()===m.getTime();if(!h||!m||"object"!=typeof h&&"object"!=typeof m)return h===m;var M=h instanceof p,x=m instanceof p;return M&&x?_.fuzzy?h.equivalentTo(m):h.equals(m):!M&&!x&&function u(h,m,_){var M,x;if(r(h)||r(m)||h.prototype!==m.prototype)return!1;if(a(h)||a(m))return d(h=a(h)?o.call(h):h,m=a(m)?o.call(m):m,_);try{var w=v(h),L=v(m)}catch{return!1}if(w.length!=L.length)return!1;for(w.sort(),L.sort(),M=w.length-1;M>=0;M--)if(w[M]!=L[M])return!1;if(1===w.length)return d(h[x=w[0]],m[x],_);for(M=w.length-1;M>=0;M--)if(!d(h[x=w[M]],m[x],_))return!1;return typeof h==typeof m}(h,m,_)}},5117:(Se,X,g)=>{var n=g(5827),p=g(2825),C=g(4217);const b=C.FP_Type,o=C.FP_Date,v=C.FP_DateTime;var a={};function c(d,r){return n.isEmpty(d)||n.isEmpty(r)?[]:p(d,r)}function s(d,r){return n.isEmpty(d)&&n.isEmpty(r)?[!0]:n.isEmpty(d)||n.isEmpty(r)?[]:p(d,r,{fuzzy:!0})}function l(d,r){n.assertAtMostOne(d,"Singleton was expected"),n.assertAtMostOne(r,"Singleton was expected"),d=n.valDataConverted(d[0]),r=n.valDataConverted(r[0]);let u=d.constructor===o?v:d.constructor,h=r.constructor===o?v:r.constructor;return u!==h&&n.raiseError('Type of "'+d+'" ('+u.name+') did not match type of "'+r+'" ('+h.name+")","InequalityExpression"),[d,r]}a.equal=function(d,r){return c(d,r)},a.unequal=function(d,r){var u=c(d,r);return void 0===u?void 0:!u},a.equival=function(d,r){return s(d,r)},a.unequival=function(d,r){return!s(d,r)},a.lt=function(d,r){if(!d.length||!r.length)return[];const[u,h]=l(d,r);if(u instanceof b){const m=u.compare(h);return null===m?[]:m<0}return u0}return u>h},a.lte=function(d,r){if(!d.length||!r.length)return[];const[u,h]=l(d,r);if(u instanceof b){const m=u.compare(h);return null===m?[]:m<=0}return u<=h},a.gte=function(d,r){if(!d.length||!r.length)return[];const[u,h]=l(d,r);if(u instanceof b){const m=u.compare(h);return null===m?[]:m>=0}return u>=h},Se.exports=a},631:(Se,X,g)=>{const n=g(5827),{whereMacro:p,distinctFn:C}=g(5073),b=g(6777),o=g(6190),v={};function a(c,s){const l=c.length;let d=l<=s.length;if(d&&l){const r=s.reduce((u,h)=>(u[o(h)]=!0,u),{});d=!c.some(u=>!r[o(u)])}return d}v.emptyFn=n.isEmpty,v.notFn=function(c){let s=b.singleton(c,"Boolean");return"boolean"==typeof s?!s:[]},v.existsMacro=function(c,s){var l=c;return s?v.existsMacro(p(c,s)):!n.isEmpty(l)},v.allMacro=function(c,s){for(let l=0,d=c.length;l{const{version:n}=g(82),p=g(7661),C=g(5827);g(4835);const b=g(9285);let o={},v=g(631),a=g(5073),c=g(4258),s=g(8330),l=g(6777),d=g(5117),r=g(500),u=g(7353),h=g(4702),m=g(3774),_=g(1605),M=g(2804);const x=g(4217),{FP_Date:w,FP_DateTime:L,FP_Time:A,FP_Quantity:T,FP_Type:O,ResourceNode:E,TypeInfo:D}=x;let R=E.makeResNode;function j(q,Q,ue,Me){if("Expr"===ue)return function(Xe){return q.$this=C.arraify(Xe),o.doEval(q,q.$this,Me)};if("AnyAtRoot"===ue)return q.$this=q.$this||q.dataRoot,o.doEval(q,q.$this,Me);if("Identifier"===ue){if("TermExpression"===Me.type)return Me.text;throw new Error("Expected identifier node, got "+JSON.stringify(Me))}if("TypeSpecifier"===ue)return o.TypeSpecifier(q,Q,Me);q.$this=Q;const Oe=o.doEval(q,Q,Me);if("Any"===ue)return Oe;if(Array.isArray(ue)){if(0===Oe.length)return[];ue=ue[0]}return l.singleton(Oe,ue)}function S(q){return null==q||C.isEmpty(q)}function k(q,Q,ue,Me){var Oe=o.invocationTable[Q];if(Oe&&Oe.fn){var Xe=Me?Me.length:0;if(2!==Xe)throw new Error("Infix invoke should have arity 2");var Be=Oe.arity[Xe];if(Be){for(var $e=[],st=0;stst?.__path__?R(st,st?.__path__):st),Be={context:Xe,ucum:"http://unitsofmeasure.org"};ue&&(ue=Object.keys(ue).reduce((st,Mt)=>(st[Mt]=Array.isArray(ue[Mt])?ue[Mt].map(tt=>tt?.__path__?R(tt,tt.__path__):tt):ue[Mt]?.__path__?R(ue[Mt],ue[Mt].__path__):ue[Mt],st),{}));let $e={dataRoot:Xe,vars:Object.assign(Be,ue),model:Me};return Oe&&Oe.traceFn&&($e.customTraceFn=Oe.traceFn),o.doEval($e,Xe,Q.children[0]).map(st=>{let Mt=st instanceof E?st.path:null;return(st=C.valData(st))instanceof O&&Oe.resolveInternalTypes&&(st=st.toString()),Mt&&"object"==typeof st&&Object.defineProperty(st,"__path__",{value:Mt}),st})}function me(q,Q,ue){if(ue={resolveInternalTypes:!0,...ue},"object"==typeof q){const Me=F(q.expression);return function(Oe,Xe){const Be=q.base?R(Oe,q.base):Oe;return D.model=Q,Y(Be,Me,Xe,Q,ue)}}{const Me=F(q);return function(Oe,Xe){return D.model=Q,Y(Oe,Me,Xe,Q,ue)}}}o.invocationTable={empty:{fn:v.emptyFn},not:{fn:v.notFn},exists:{fn:v.existsMacro,arity:{0:[],1:["Expr"]}},all:{fn:v.allMacro,arity:{1:["Expr"]}},allTrue:{fn:v.allTrueFn},anyTrue:{fn:v.anyTrueFn},allFalse:{fn:v.allFalseFn},anyFalse:{fn:v.anyFalseFn},subsetOf:{fn:v.subsetOfFn,arity:{1:["AnyAtRoot"]}},supersetOf:{fn:v.supersetOfFn,arity:{1:["AnyAtRoot"]}},isDistinct:{fn:v.isDistinctFn},distinct:{fn:a.distinctFn},count:{fn:c.countFn},where:{fn:a.whereMacro,arity:{1:["Expr"]}},extension:{fn:a.extension,arity:{1:["String"]}},select:{fn:a.selectMacro,arity:{1:["Expr"]}},aggregate:{fn:c.aggregateMacro,arity:{1:["Expr"],2:["Expr","Any"]}},sum:{fn:c.sumFn},min:{fn:c.minFn},max:{fn:c.maxFn},avg:{fn:c.avgFn},single:{fn:a.singleFn},first:{fn:a.firstFn},last:{fn:a.lastFn},type:{fn:x.typeFn,arity:{0:[]}},ofType:{fn:a.ofTypeFn,arity:{1:["TypeSpecifier"]}},is:{fn:x.isFn,arity:{1:["TypeSpecifier"]}},as:{fn:x.asFn,arity:{1:["TypeSpecifier"]}},tail:{fn:a.tailFn},take:{fn:a.takeFn,arity:{1:["Integer"]}},skip:{fn:a.skipFn,arity:{1:["Integer"]}},combine:{fn:s.combineFn,arity:{1:["AnyAtRoot"]}},union:{fn:s.union,arity:{1:["AnyAtRoot"]}},intersect:{fn:s.intersect,arity:{1:["AnyAtRoot"]}},iif:{fn:l.iifMacro,arity:{2:["Expr","Expr"],3:["Expr","Expr","Expr"]}},trace:{fn:l.traceFn,arity:{1:["String"],2:["String","Expr"]}},toInteger:{fn:l.toInteger},toDecimal:{fn:l.toDecimal},toString:{fn:l.toString},toDate:{fn:l.toDate},toDateTime:{fn:l.toDateTime},toTime:{fn:l.toTime},toBoolean:{fn:l.toBoolean},toQuantity:{fn:l.toQuantity,arity:{0:[],1:["String"]}},hasValue:{fn:l.hasValueFn},convertsToBoolean:{fn:l.createConvertsToFn(l.toBoolean,"boolean")},convertsToInteger:{fn:l.createConvertsToFn(l.toInteger,"number")},convertsToDecimal:{fn:l.createConvertsToFn(l.toDecimal,"number")},convertsToString:{fn:l.createConvertsToFn(l.toString,"string")},convertsToDate:{fn:l.createConvertsToFn(l.toDate,w)},convertsToDateTime:{fn:l.createConvertsToFn(l.toDateTime,L)},convertsToTime:{fn:l.createConvertsToFn(l.toTime,A)},convertsToQuantity:{fn:l.createConvertsToFn(l.toQuantity,T)},indexOf:{fn:h.indexOf,arity:{1:["String"]}},substring:{fn:h.substring,arity:{1:["Integer"],2:["Integer","Integer"]}},startsWith:{fn:h.startsWith,arity:{1:["String"]}},endsWith:{fn:h.endsWith,arity:{1:["String"]}},contains:{fn:h.containsFn,arity:{1:["String"]}},upper:{fn:h.upper},lower:{fn:h.lower},replace:{fn:h.replace,arity:{2:["String","String"]}},matches:{fn:h.matches,arity:{1:["String"]}},replaceMatches:{fn:h.replaceMatches,arity:{2:["String","String"]}},length:{fn:h.length},toChars:{fn:h.toChars},join:{fn:h.joinFn,arity:{0:[],1:["String"]}},split:{fn:h.splitFn,arity:{1:["String"]}},trim:{fn:h.trimFn},encode:{fn:h.encodeFn,arity:{1:["String"]}},decode:{fn:h.decodeFn,arity:{1:["String"]}},abs:{fn:u.abs},ceiling:{fn:u.ceiling},exp:{fn:u.exp},floor:{fn:u.floor},ln:{fn:u.ln},log:{fn:u.log,arity:{1:["Number"]},nullable:!0},power:{fn:u.power,arity:{1:["Number"]},nullable:!0},round:{fn:u.round,arity:{1:["Number"]}},sqrt:{fn:u.sqrt},truncate:{fn:u.truncate},now:{fn:_.now},today:{fn:_.today},timeOfDay:{fn:_.timeOfDay},repeat:{fn:a.repeatMacro,arity:{1:["Expr"]}},children:{fn:m.children},descendants:{fn:m.descendants},"|":{fn:s.union,arity:{2:["Any","Any"]}},"=":{fn:d.equal,arity:{2:["Any","Any"]},nullable:!0},"!=":{fn:d.unequal,arity:{2:["Any","Any"]},nullable:!0},"~":{fn:d.equival,arity:{2:["Any","Any"]}},"!~":{fn:d.unequival,arity:{2:["Any","Any"]}},"<":{fn:d.lt,arity:{2:["Any","Any"]},nullable:!0},">":{fn:d.gt,arity:{2:["Any","Any"]},nullable:!0},"<=":{fn:d.lte,arity:{2:["Any","Any"]},nullable:!0},">=":{fn:d.gte,arity:{2:["Any","Any"]},nullable:!0},containsOp:{fn:r.contains,arity:{2:["Any","Any"]}},inOp:{fn:r.in,arity:{2:["Any","Any"]}},isOp:{fn:x.isFn,arity:{2:["Any","TypeSpecifier"]}},asOp:{fn:x.asFn,arity:{2:["Any","TypeSpecifier"]}},"&":{fn:u.amp,arity:{2:["String","String"]}},"+":{fn:u.plus,arity:{2:["Any","Any"]},nullable:!0},"-":{fn:u.minus,arity:{2:["Any","Any"]},nullable:!0},"*":{fn:u.mul,arity:{2:["Number","Number"]},nullable:!0},"/":{fn:u.div,arity:{2:["Number","Number"]},nullable:!0},mod:{fn:u.mod,arity:{2:["Number","Number"]},nullable:!0},div:{fn:u.intdiv,arity:{2:["Number","Number"]},nullable:!0},or:{fn:M.orOp,arity:{2:[["Boolean"],["Boolean"]]}},and:{fn:M.andOp,arity:{2:[["Boolean"],["Boolean"]]}},xor:{fn:M.xorOp,arity:{2:[["Boolean"],["Boolean"]]}},implies:{fn:M.impliesOp,arity:{2:[["Boolean"],["Boolean"]]}}},o.InvocationExpression=function(q,Q,ue){return ue.children.reduce(function(Me,Oe){return o.doEval(q,Me,Oe)},Q)},o.TermExpression=function(q,Q,ue){return Q&&(Q=Q.map(Me=>Me instanceof Object&&Me.resourceType?R(Me,Me.resourceType):Me)),o.doEval(q,Q,ue.children[0])},o.PolarityExpression=function(q,Q,ue){var Me=ue.terminalNodeText[0],Oe=o.doEval(q,Q,ue.children[0]);if(1!==Oe.length)throw new Error("Unary "+Me+" can only be applied to an individual number.");if("number"!=typeof Oe[0]||isNaN(Oe[0]))throw new Error("Unary "+Me+" can only be applied to a number.");return"-"===Me&&(Oe[0]=-Oe[0]),Oe},o.TypeSpecifier=function(q,Q,ue){let Me,Oe;const Xe=ue.text.split(".").map(Be=>Be.replace(/(^`|`$)/g,""));switch(Xe.length){case 2:[Me,Oe]=Xe;break;case 1:[Oe]=Xe;break;default:throw new Error("Expected TypeSpecifier node, got "+JSON.stringify(ue))}return new D({namespace:Me,name:Oe})},o.ExternalConstantTerm=function(q,Q,ue){var Xe=o.Identifier(q,Q,ue.children[0].children[0])[0],Be=q.vars[Xe];if(!(Xe in q.vars))throw new Error("Attempting to access an undefined environment variable: "+Xe);return null==Be?[]:Be instanceof Array?Be:[Be]},o.LiteralTerm=function(q,Q,ue){var Me=ue.children[0];return Me?o.doEval(q,Q,Me):[ue.text]},o.StringLiteral=function(q,Q,ue){var Me=ue.text.replace(/(^'|'$)/g,"");return[Me=Me.replace(/\\(u\d{4}|.)/g,function(Oe,Xe){switch(Oe){case"\\r":return"\r";case"\\n":return"\n";case"\\t":return"\t";case"\\f":return"\f";default:return Xe.length>1?String.fromCharCode("0x"+Xe.slice(1)):Xe}})]},o.BooleanLiteral=function(q,Q,ue){return"true"===ue.text?[!0]:[!1]},o.QuantityLiteral=function(q,Q,ue){var Me=ue.children[0],Oe=Number(Me.terminalNodeText[0]),Xe=Me.children[0],Be=Xe.terminalNodeText[0];return!Be&&Xe.children&&(Be=Xe.children[0].terminalNodeText[0]),[new T(Oe,Be)]},o.DateTimeLiteral=function(q,Q,ue){var Me=ue.text.slice(1);return[new L(Me)]},o.TimeLiteral=function(q,Q,ue){var Me=ue.text.slice(1);return[new A(Me)]},o.NumberLiteral=function(q,Q,ue){return[Number(ue.text)]},o.Identifier=function(q,Q,ue){return[ue.text.replace(/(^`|`$)/g,"")]},o.InvocationTerm=function(q,Q,ue){return o.doEval(q,Q,ue.children[0])},o.MemberInvocation=function(q,Q,ue){const Me=o.doEval(q,Q,ue.children[0])[0],Oe=q.model;if(Q){if(C.isCapitalized(Me))return Q.filter(Xe=>Xe instanceof E&&Xe.path===Me);{const Xe=Q.path||Q.__path__;return Q.reduce(function(Be,$e){var st=($e=R($e,Xe)).path+"."+Me;if(Oe){let bt=Oe.pathsDefinedElsewhere[st];bt&&(st=bt)}let Mt,tt,St=Oe&&Oe.choiceTypePaths[st];if(St)for(let bt of St){let xt=Me+bt;if(Mt=$e.data?.[xt],tt=$e.data?.["_"+xt],void 0!==Mt||void 0!==tt){st+=bt;break}}else Mt=$e.data?.[Me],tt=$e.data?.["_"+Me],void 0===Mt&&void 0===tt&&(Mt=$e._data[Me]),"extension"===Me&&(st="Extension");return st=Oe&&Oe.path2Type[st]||st,(C.isSome(Mt)||C.isSome(tt))&&(Array.isArray(Mt)?Be=Be.concat(Mt.map((bt,xt)=>R(bt,st,tt&&tt[xt]))):Be.push(R(Mt,st,tt))),Be},[])}}return[]},o.IndexerExpression=function(q,Q,ue){const Oe=ue.children[1];var Xe=o.doEval(q,Q,ue.children[0]),Be=o.doEval(q,Q,Oe);if(C.isEmpty(Be))return[];var $e=parseInt(Be[0]);return Xe&&C.isSome($e)&&Xe.length>$e&&$e>=0?[Xe[$e]]:[]},o.Functn=function(q,Q,ue){return ue.children.map(function(Me){return o.doEval(q,Q,Me)})},o.realizeParams=function(q,Q,ue){return ue&&ue[0]&&ue[0].children?ue[0].children.map(function(Me){return o.doEval(q,Q,Me)}):[]},o.FunctionInvocation=function(q,Q,ue){var Me=o.doEval(q,Q,ue.children[0]);const Oe=Me[0];return Me.shift(),function N(q,Q,ue,Me){var Xe,Oe=o.invocationTable[Q];if(Oe){if(Oe.arity){var Be=Me?Me.length:0,$e=Oe.arity[Be];if($e){for(var st=[],Mt=0;Mt{const ue=D.fromValue(Q?.__path__?new E(Q,Q.__path__):Q);return`${ue.namespace}.${ue.name}`})},ucumUtils:g(2207).ng.getInstance()}},5073:(Se,X,g)=>{const n=g(5827),{TypeInfo:p,ResourceNode:C}=g(4217),b=g(6190);Se.exports={whereMacro:function(v,a){return!1===v||v?n.flatten(v.filter((c,s)=>(this.$index=s,a(c)[0]))):[]},extension:function(v,a){return!1!==v&&!v||!a?[]:n.flatten(v.map((c,s)=>{this.$index=s;const l=c&&(c.data&&c.data.extension||c._data&&c._data.extension);return l?l.filter(d=>d.url===a).map(d=>C.makeResNode(d,"Extension")):[]}))},selectMacro:function(v,a){return!1===v||v?n.flatten(v.map((c,s)=>(this.$index=s,a(c)))):[]},repeatMacro:function(v,a){if(!1!==v&&!v)return[];let c=[];const s={},l=v.length;for(let d=0;d{const h=b(u),m=!s[h];return m&&(s[h]=!0),m})}while(c.lengthp.fromValue(c).is(a))},distinctFn:function(v){let a=[];if(v.length>0){let c={};for(let s=0,l=v.length;s{const n=g(2207).ng.getInstance(),{roundToMaxPrecision:p}=g(4192),{valDataConverted:C}=g(5827),{FP_Type:b,FP_Quantity:o}=g(4217);function a(c){if("number"==typeof(c=C(c)))return p(c);if(c instanceof Date)return c.toISOString();if(c instanceof o){const s=o._yearMonthConversionFactor[c.unit];if(s)return"_!yearMonth!_:"+s*c.value;{const l=o.toUcumQuantity(c.value,c.unit),d=n.getSpecifiedUnit(l.unit).unit;return"_!"+d.property_+"!_:"+d.magnitude_*l.value}}return c instanceof b?c.toString():"object"==typeof c?Array.isArray(c)?c.map(a):Object.keys(c).sort().reduce((s,l)=>(s[l]=a(c[l]),s),{}):c}Se.exports=function v(c){return JSON.stringify(a(c))}},2804:Se=>{Se.exports={orOp:function(g,n){if(Array.isArray(n)){if(!0===g)return!0;if(!1===g)return[];if(Array.isArray(g))return[]}return Array.isArray(g)?!0===n||[]:g||n},andOp:function(g,n){if(Array.isArray(n)){if(!0===g)return[];if(!1===g)return!1;if(Array.isArray(g))return[]}return Array.isArray(g)?!0===n&&[]:g&&n},xorOp:function(g,n){return Array.isArray(g)||Array.isArray(n)?[]:g&&!n||!g&&n},impliesOp:function(g,n){if(Array.isArray(n)){if(!0===g)return[];if(!1===g)return!0;if(Array.isArray(g))return[]}return Array.isArray(g)?!0===n||[]:!1===g||g&&n}}},7353:(Se,X,g)=>{var n=g(4217);let{FP_TimeBase:p,FP_Quantity:C}=n;const b=g(5827);var o={};function v(c){let s=b.valData(c);if("number"!=typeof s){if(1==s.length&&"number"==typeof(s=b.valData(s[0])))return s;throw new Error("Expected number, but got "+JSON.stringify(s||c))}return s}function a(c){return"number"!=typeof c&&0==c.length}o.amp=function(c,s){return(c||"")+(s||"")},o.plus=function(c,s){if(1==c.length&&1==s.length){var l=b.valDataConverted(c[0]),d=b.valDataConverted(s[0]);if("string"==typeof l&&"string"==typeof d||"number"==typeof l&&"number"==typeof d)return l+d;if(l instanceof p&&d instanceof C)return l.plus(d)}throw new Error("Cannot "+JSON.stringify(c)+" + "+JSON.stringify(s))},o.minus=function(c,s){if(1==c.length&&1==s.length){var l=b.valDataConverted(c[0]),d=b.valDataConverted(s[0]);if("number"==typeof l&&"number"==typeof d)return l-d;if(l instanceof p&&d instanceof C)return l.plus(new C(-d.value,d.unit))}throw new Error("Cannot "+JSON.stringify(c)+" - "+JSON.stringify(s))},o.mul=function(c,s){return c*s},o.div=function(c,s){return 0===s?[]:c/s},o.intdiv=function(c,s){return 0===s?[]:Math.floor(c/s)},o.mod=function(c,s){return 0===s?[]:c%s},o.abs=function(c){if(a(c))return[];{let s=v(c);return Math.abs(s)}},o.ceiling=function(c){if(a(c))return[];{let s=v(c);return Math.ceil(s)}},o.exp=function(c){if(a(c))return[];{let s=v(c);return Math.exp(s)}},o.floor=function(c){if(a(c))return[];{let s=v(c);return Math.floor(s)}},o.ln=function(c){if(a(c))return[];{let s=v(c);return Math.log(s)}},o.log=function(c,s){if(a(c)||a(s))return[];{let l=v(c),d=v(s);return Math.log(l)/Math.log(d)}},o.power=function(c,s){if(a(c)||a(s))return[];{let l=v(c),d=v(s);return l<0&&Math.floor(d)!=d?[]:Math.pow(l,d)}},o.round=function(c,s){if(a(c))return[];{let l=v(c);if(a(s))return Math.round(l);{let d=v(s),r=Math.pow(10,d);return Math.round(l*r)/r}}},o.sqrt=function(c){if(a(c))return[];{let s=v(c);return s<0?[]:Math.sqrt(s)}},o.truncate=function(c){if(a(c))return[];{let s=v(c);return Math.trunc(s)}},Se.exports=o},6777:(Se,X,g)=>{var n=g(5827),p=g(4217);const{FP_Quantity:C}=p;var b={iifMacro:function(m,_,M,x){return n.isTrue(_(m))?M(m):x?x(m):[]},traceFn:function(m,_,M){return this.customTraceFn?this.customTraceFn(M?M(m):m,_??""):M?console.log("TRACE:["+(_||"")+"]",JSON.stringify(M(m),null," ")):console.log("TRACE:["+(_||"")+"]",JSON.stringify(m,null," ")),m}},o=/^[+-]?\d+$/;b.toInteger=function(m){if(1!==m.length)return[];var _=n.valData(m[0]);return!1===_?0:!0===_?1:"number"==typeof _?Number.isInteger(_)?_:[]:"string"==typeof _&&o.test(_)?parseInt(_):[]};const v=/^((\+|-)?\d+(\.\d+)?)\s*(('[^']+')|([a-zA-Z]+))?$/;b.toQuantity=function(m,_){let M;if(_&&!C.mapTimeUnitsToUCUMCode[_]&&(_=`'${_}'`),m.length>1)throw new Error("Could not convert to quantity: input collection contains multiple items");if(1===m.length){var x=n.valDataConverted(m[0]);let w;if("number"==typeof x)M=new C(x,"'1'");else if(x instanceof C)M=x;else if("boolean"==typeof x)M=new C(x?1:0,"'1'");else if("string"==typeof x&&(w=v.exec(x))){const A=w[5],T=w[6];(!T||C.mapTimeUnitsToUCUMCode[T])&&(M=new C(Number(w[1]),A||T||"'1'"))}M&&_&&M.unit!==_&&(M=C.convUnitTo(M.unit,M.value,_))}return M||[]};var c=/^[+-]?\d+(\.\d+)?$/;function s(m){let _=m.slice(3);b["to"+_]=function(M){var x=[];if(M.length>1)throw Error("to "+_+" called for a collection of length "+M.length);if(1===M.length){var w=p[m].checkString(n.valData(M[0]));w&&(x=w)}return x}}b.toDecimal=function(m){if(1!==m.length)return[];var _=n.valData(m[0]);return!1===_?0:!0===_?1:"number"==typeof _?_:"string"==typeof _&&c.test(_)?parseFloat(_):[]},b.toString=function(m){return 1!==m.length?[]:n.valDataConverted(m[0]).toString()},s("FP_Date"),s("FP_DateTime"),s("FP_Time");const l=["true","t","yes","y","1","1.0"].reduce((m,_)=>(m[_]=!0,m),{}),d=["false","f","no","n","0","0.0"].reduce((m,_)=>(m[_]=!0,m),{});b.toBoolean=function(m){if(1!==m.length)return[];const _=n.valData(m[0]);switch(typeof _){case"boolean":return _;case"number":if(1===_)return!0;if(0===_)return!1;break;case"string":const M=_.toLowerCase();if(l[M])return!0;if(d[M])return!1}return[]},b.createConvertsToFn=function(m,_){return"string"==typeof _?function(M){return 1!==M.length?[]:typeof m(M)===_}:function(M){return 1!==M.length?[]:m(M)instanceof _}};const r={Integer:function(m){const _=n.valData(m[0]);if(Number.isInteger(_))return _},Boolean:function(m){const _=n.valData(m[0]);return!0===_||!1===_?_:1===m.length||void 0},Number:function(m){const _=n.valData(m[0]);if("number"==typeof _)return _},String:function(m){const _=n.valData(m[0]);if("string"==typeof _)return _}};b.singleton=function(m,_){if(m.length>1)throw new Error("Unexpected collection"+JSON.stringify(m)+"; expected singleton of type "+_);if(0===m.length)return[];const M=r[_];if(M){const x=M(m);if(void 0!==x)return x;throw new Error(`Expected ${_.toLowerCase()}, but got: ${JSON.stringify(m)}`)}throw new Error("Not supported type "+_)};const u=new Set(["instant","time","date","dateTime","base64Binary","decimal","integer64","boolean","string","code","markdown","id","integer","unsignedInt","positiveInt","uri","oid","uuid","canonical","url"]);function h(m){switch(typeof m){case"string":case"number":case"boolean":return!0;default:return!1}}b.hasValueFn=function(m){return 1===m.length?this.model?[u.has(m[0].path)]:[h(n.valData(m[0]))]:[!1]},Se.exports=b},3774:(Se,X,g)=>{const n=g(5827),{ResourceNode:p}=g(4217);let C=p.makeResNode;var b={children:function(o){let v=this.model;return o.reduce(function(a,c){let s=n.valData(c);if(c=C(c),"object"==typeof s){for(var l of Object.keys(s)){var d=s[l],r=c.path+"."+l;if(v){let u=v.pathsDefinedElsewhere[r];u&&(r=u)}Array.isArray(d)?a.push.apply(a,d.map(u=>C(u,r))):a.push(C(d,r))}return a}return a},[])},descendants:function(o){for(var v=b.children.call(this,o),a=[];v.length>0;)a.push.apply(a,v),v=b.children.call(this,v);return a}};Se.exports=b},4192:Se=>{let X={};function g(b){const v=/(\d+)(?:\.(\d+))?(?:[eE]([+-]?\d+))?$/.exec(""+ +b);if(!v)return 0;const a=v[2];return Math.max(0,("0"===a?0:(a||"").length)-(v[3]||0))}function n(b,o){const v=Math.pow(10,o);return Math.round(b*v)/v}const C=X.roundToMaxPrecision=function(b){return 1e-8*Math.round(b/1e-8)};X.isEquivalent=function(b,o){if(Number.isInteger(b)&&Number.isInteger(o))return b===o;const v=Math.min(g(b),g(o));return 0===v?Math.round(b)===Math.round(o):n(b,v)===n(o,v)},X.isEqual=function(b,o){return C(b)===C(o)},Se.exports=X},5815:(Se,X,g)=>{X.atn=g(871),X.codepointat=g(6419),X.dfa=g(7061),X.fromcodepoint=g(9182),X.tree=g(9804),X.error=g(6405),X.Token=g(6205).Token,X.CommonToken=g(6205).CommonToken,X.InputStream=g(1466),X.CommonTokenStream=g(7456),X.Lexer=g(9042),X.Parser=g(111);var n=g(6185);X.PredictionContextCache=n.PredictionContextCache,X.ParserRuleContext=g(7293),X.Interval=g(9173).Interval,X.IntervalSet=g(9173).IntervalSet,X.Utils=g(3340),X.LL1Analyzer=g(4589).LL1Analyzer},2472:(Se,X,g)=>{var n=g(8416).default;const p=g(5815),C=["\x03\u608b\ua72a\u8133\ub9ed\u417c\u3be7\u7786","\u5964\x02A\u0203\b\x01\x04\x02\t\x02\x04\x03\t\x03","\x04\x04\t\x04\x04\x05\t\x05\x04\x06\t\x06\x04\x07","\t\x07\x04\b\t\b\x04\t\t\t\x04\n\t\n\x04\v\t\v\x04","\f\t\f\x04\r\t\r\x04\x0e\t\x0e\x04\x0f\t\x0f\x04\x10","\t\x10\x04\x11\t\x11\x04\x12\t\x12\x04\x13\t\x13","\x04\x14\t\x14\x04\x15\t\x15\x04\x16\t\x16\x04\x17","\t\x17\x04\x18\t\x18\x04\x19\t\x19\x04\x1a\t\x1a","\x04\x1b\t\x1b\x04\x1c\t\x1c\x04\x1d\t\x1d\x04\x1e",'\t\x1e\x04\x1f\t\x1f\x04 \t \x04!\t!\x04"\t"\x04#',"\t#\x04$\t$\x04%\t%\x04&\t&\x04'\t'\x04(\t(\x04)\t)\x04","*\t*\x04+\t+\x04,\t,\x04-\t-\x04.\t.\x04/\t/\x040\t0\x04","1\t1\x042\t2\x043\t3\x044\t4\x045\t5\x046\t6\x047\t7\x04","8\t8\x049\t9\x04:\t:\x04;\t;\x04<\t<\x04=\t=\x04>\t>\x04","?\t?\x04@\t@\x04A\tA\x04B\tB\x04C\tC\x04D\tD\x03\x02\x03","\x02\x03\x03\x03\x03\x03\x04\x03\x04\x03\x05\x03","\x05\x03\x06\x03\x06\x03\x07\x03\x07\x03\b\x03","\b\x03\t\x03\t\x03\t\x03\t\x03\n\x03\n\x03\n\x03\n\x03","\v\x03\v\x03\f\x03\f\x03\r\x03\r\x03\r\x03\x0e","\x03\x0e\x03\x0f\x03\x0f\x03\x10\x03\x10\x03\x10","\x03\x11\x03\x11\x03\x11\x03\x12\x03\x12\x03\x12","\x03\x13\x03\x13\x03\x14\x03\x14\x03\x15\x03\x15","\x03\x15\x03\x16\x03\x16\x03\x16\x03\x17\x03\x17","\x03\x17\x03\x18\x03\x18\x03\x18\x03\x18\x03\x18","\x03\x18\x03\x18\x03\x18\x03\x18\x03\x19\x03\x19","\x03\x19\x03\x19\x03\x1a\x03\x1a\x03\x1a\x03\x1b","\x03\x1b\x03\x1b\x03\x1b\x03\x1c\x03\x1c\x03\x1c","\x03\x1c\x03\x1c\x03\x1c\x03\x1c\x03\x1c\x03\x1d","\x03\x1d\x03\x1e\x03\x1e\x03\x1f\x03\x1f\x03 ",'\x03 \x03!\x03!\x03!\x03!\x03!\x03"\x03"\x03"\x03','"\x03"\x03"\x03#\x03#\x03$\x03$\x03$\x03$\x03$',"\x03$\x03%\x03%\x03%\x03%\x03%\x03%\x03%\x03&\x03","&\x03&\x03&\x03&\x03&\x03&\x03'\x03'\x03(\x03(\x03","(\x03(\x03(\x03)\x03)\x03)\x03)\x03)\x03)\x03*\x03","*\x03*\x03*\x03*\x03+\x03+\x03+\x03+\x03,\x03,\x03",",\x03,\x03,\x03-\x03-\x03-\x03-\x03-\x03-\x03-\x03",".\x03.\x03.\x03.\x03.\x03.\x03.\x03/\x03/\x03/\x03","/\x03/\x03/\x03/\x03/\x03/\x03/\x03/\x03/\x030\x03","0\x030\x030\x030\x030\x031\x031\x031\x031\x031\x03","1\x031\x032\x032\x032\x032\x032\x032\x033\x033\x03","3\x033\x033\x034\x034\x034\x034\x034\x034\x035\x03","5\x035\x035\x035\x035\x035\x035\x036\x036\x036\x03","6\x036\x036\x036\x036\x037\x037\x037\x037\x037\x03","7\x037\x037\x037\x037\x037\x037\x037\x038\x038\x03","8\x038\x038\x038\x038\x038\x038\x038\x038\x038\x03","8\x058\u0183\n8\x058\u0185\n8\x058\u0187\n8\x038\x058\u018a","\n8\x039\x039\x039\x039\x03:\x03:\x03:\x03:\x03:\x03",":\x03:\x03:\x03:\x03:\x06:\u019a\n:\r:\x0e:\u019b\x05",":\u019e\n:\x05:\u01a0\n:\x05:\u01a2\n:\x03:\x03:\x03:\x03",":\x03:\x03:\x03:\x05:\u01ab\n:\x03;\x05;\u01ae\n;\x03",";\x07;\u01b1\n;\f;\x0e;\u01b4\v;\x03<\x03<\x03<\x07","<\u01b9\n<\f<\x0e<\u01bc\v<\x03<\x03<\x03=\x03=\x03","=\x07=\u01c3\n=\f=\x0e=\u01c6\v=\x03=\x03=\x03>\x06",">\u01cb\n>\r>\x0e>\u01cc\x03>\x03>\x06>\u01d1\n>\r>\x0e>\u01d2","\x05>\u01d5\n>\x03?\x06?\u01d8\n?\r?\x0e?\u01d9\x03?\x03","?\x03@\x03@\x03@\x03@\x07@\u01e2\n@\f@\x0e@\u01e5\v","@\x03@\x03@\x03@\x03@\x03@\x03A\x03A\x03A\x03A\x07","A\u01f0\nA\fA\x0eA\u01f3\vA\x03A\x03A\x03B\x03B\x03","B\x05B\u01fa\nB\x03C\x03C\x03C\x03C\x03C\x03C\x03D\x03","D\x03\u01e3\x02E\x03\x03\x05\x04\x07\x05\t\x06\v","\x07\r\b\x0f\t\x11\n\x13\v\x15\f\x17\r\x19\x0e\x1b","\x0f\x1d\x10\x1f\x11!\x12#\x13%\x14'\x15)\x16+","\x17-\x18/\x191\x1a3\x1b5\x1c7\x1d9\x1e;\x1f= ?!A","\"C#E$G%I&K'M(O)Q*S+U,W-Y.[/]0_1a2c3e4g5i6k7m8o9q:s\x02u;w}","?\x7f@\x81A\x83\x02\x85\x02\x87\x02\x03\x02\f\x03","\x022;\x04\x02--//\x05\x02C\\aac|\x06\x022;C\\aac|\x04",'\x02^^bb\x03\x02))\x05\x02\v\f\x0f\x0f""\x04\x02',"\f\f\x0f\x0f\n\x02))11^^bbhhppttvv\x05\x022;CHch\x02\u0214","\x02\x03\x03\x02\x02\x02\x02\x05\x03\x02\x02\x02","\x02\x07\x03\x02\x02\x02\x02\t\x03\x02\x02\x02","\x02\v\x03\x02\x02\x02\x02\r\x03\x02\x02\x02","\x02\x0f\x03\x02\x02\x02\x02\x11\x03\x02\x02\x02","\x02\x13\x03\x02\x02\x02\x02\x15\x03\x02\x02\x02","\x02\x17\x03\x02\x02\x02\x02\x19\x03\x02\x02\x02","\x02\x1b\x03\x02\x02\x02\x02\x1d\x03\x02\x02\x02","\x02\x1f\x03\x02\x02\x02\x02!\x03\x02\x02\x02","\x02#\x03\x02\x02\x02\x02%\x03\x02\x02\x02\x02","'\x03\x02\x02\x02\x02)\x03\x02\x02\x02\x02+\x03","\x02\x02\x02\x02-\x03\x02\x02\x02\x02/\x03\x02","\x02\x02\x021\x03\x02\x02\x02\x023\x03\x02\x02","\x02\x025\x03\x02\x02\x02\x027\x03\x02\x02\x02","\x029\x03\x02\x02\x02\x02;\x03\x02\x02\x02\x02","=\x03\x02\x02\x02\x02?\x03\x02\x02\x02\x02A\x03","\x02\x02\x02\x02C\x03\x02\x02\x02\x02E\x03\x02","\x02\x02\x02G\x03\x02\x02\x02\x02I\x03\x02\x02","\x02\x02K\x03\x02\x02\x02\x02M\x03\x02\x02\x02","\x02O\x03\x02\x02\x02\x02Q\x03\x02\x02\x02\x02","S\x03\x02\x02\x02\x02U\x03\x02\x02\x02\x02W\x03","\x02\x02\x02\x02Y\x03\x02\x02\x02\x02[\x03\x02","\x02\x02\x02]\x03\x02\x02\x02\x02_\x03\x02\x02","\x02\x02a\x03\x02\x02\x02\x02c\x03\x02\x02\x02","\x02e\x03\x02\x02\x02\x02g\x03\x02\x02\x02\x02","i\x03\x02\x02\x02\x02k\x03\x02\x02\x02\x02m\x03","\x02\x02\x02\x02o\x03\x02\x02\x02\x02q\x03\x02","\x02\x02\x02u\x03\x02\x02\x02\x02w\x03\x02\x02","\x02\x02y\x03\x02\x02\x02\x02{\x03\x02\x02\x02","\x02}\x03\x02\x02\x02\x02\x7f\x03\x02\x02\x02","\x02\x81\x03\x02\x02\x02\x03\x89\x03\x02\x02\x02","\x05\x8b\x03\x02\x02\x02\x07\x8d\x03\x02\x02\x02","\t\x8f\x03\x02\x02\x02\v\x91\x03\x02\x02\x02","\r\x93\x03\x02\x02\x02\x0f\x95\x03\x02\x02\x02","\x11\x97\x03\x02\x02\x02\x13\x9b\x03\x02\x02\x02","\x15\x9f\x03\x02\x02\x02\x17\xa1\x03\x02\x02\x02","\x19\xa3\x03\x02\x02\x02\x1b\xa6\x03\x02\x02\x02","\x1d\xa8\x03\x02\x02\x02\x1f\xaa\x03\x02\x02\x02","!\xad\x03\x02\x02\x02#\xb0\x03\x02\x02\x02%\xb3","\x03\x02\x02\x02'\xb5\x03\x02\x02\x02)\xb7\x03","\x02\x02\x02+\xba\x03\x02\x02\x02-\xbd\x03\x02","\x02\x02/\xc0\x03\x02\x02\x021\xc9\x03\x02\x02","\x023\xcd\x03\x02\x02\x025\xd0\x03\x02\x02\x02","7\xd4\x03\x02\x02\x029\xdc\x03\x02\x02\x02;\xde","\x03\x02\x02\x02=\xe0\x03\x02\x02\x02?\xe2\x03","\x02\x02\x02A\xe4\x03\x02\x02\x02C\xe9\x03\x02","\x02\x02E\xef\x03\x02\x02\x02G\xf1\x03\x02\x02","\x02I\xf7\x03\x02\x02\x02K\xfe\x03\x02\x02\x02","M\u0105\x03\x02\x02\x02O\u0107\x03\x02\x02\x02Q\u010c","\x03\x02\x02\x02S\u0112\x03\x02\x02\x02U\u0117\x03","\x02\x02\x02W\u011b\x03\x02\x02\x02Y\u0120\x03\x02","\x02\x02[\u0127\x03\x02\x02\x02]\u012e\x03\x02\x02","\x02_\u013a\x03\x02\x02\x02a\u0140\x03\x02\x02\x02","c\u0147\x03\x02\x02\x02e\u014d\x03\x02\x02\x02g\u0152","\x03\x02\x02\x02i\u0158\x03\x02\x02\x02k\u0160\x03","\x02\x02\x02m\u0168\x03\x02\x02\x02o\u0175\x03\x02","\x02\x02q\u018b\x03\x02\x02\x02s\u018f\x03\x02\x02","\x02u\u01ad\x03\x02\x02\x02w\u01b5\x03\x02\x02\x02","y\u01bf\x03\x02\x02\x02{\u01ca\x03\x02\x02\x02}\u01d7","\x03\x02\x02\x02\x7f\u01dd\x03\x02\x02\x02\x81\u01eb","\x03\x02\x02\x02\x83\u01f6\x03\x02\x02\x02\x85\u01fb","\x03\x02\x02\x02\x87\u0201\x03\x02\x02\x02\x89\x8a","\x070\x02\x02\x8a\x04\x03\x02\x02\x02\x8b\x8c","\x07]\x02\x02\x8c\x06\x03\x02\x02\x02\x8d\x8e","\x07_\x02\x02\x8e\b\x03\x02\x02\x02\x8f\x90\x07","-\x02\x02\x90\n\x03\x02\x02\x02\x91\x92\x07/\x02","\x02\x92\f\x03\x02\x02\x02\x93\x94\x07,\x02\x02","\x94\x0e\x03\x02\x02\x02\x95\x96\x071\x02\x02","\x96\x10\x03\x02\x02\x02\x97\x98\x07f\x02\x02","\x98\x99\x07k\x02\x02\x99\x9a\x07x\x02\x02\x9a","\x12\x03\x02\x02\x02\x9b\x9c\x07o\x02\x02\x9c","\x9d\x07q\x02\x02\x9d\x9e\x07f\x02\x02\x9e\x14","\x03\x02\x02\x02\x9f\xa0\x07(\x02\x02\xa0\x16","\x03\x02\x02\x02\xa1\xa2\x07~\x02\x02\xa2\x18","\x03\x02\x02\x02\xa3\xa4\x07>\x02\x02\xa4\xa5","\x07?\x02\x02\xa5\x1a\x03\x02\x02\x02\xa6\xa7","\x07>\x02\x02\xa7\x1c\x03\x02\x02\x02\xa8\xa9","\x07@\x02\x02\xa9\x1e\x03\x02\x02\x02\xaa\xab","\x07@\x02\x02\xab\xac\x07?\x02\x02\xac \x03\x02","\x02\x02\xad\xae\x07k\x02\x02\xae\xaf\x07u\x02",'\x02\xaf"\x03\x02\x02\x02\xb0\xb1\x07c\x02\x02',"\xb1\xb2\x07u\x02\x02\xb2$\x03\x02\x02\x02\xb3","\xb4\x07?\x02\x02\xb4&\x03\x02\x02\x02\xb5\xb6","\x07\x80\x02\x02\xb6(\x03\x02\x02\x02\xb7\xb8","\x07#\x02\x02\xb8\xb9\x07?\x02\x02\xb9*\x03\x02","\x02\x02\xba\xbb\x07#\x02\x02\xbb\xbc\x07\x80","\x02\x02\xbc,\x03\x02\x02\x02\xbd\xbe\x07k\x02","\x02\xbe\xbf\x07p\x02\x02\xbf.\x03\x02\x02\x02","\xc0\xc1\x07e\x02\x02\xc1\xc2\x07q\x02\x02\xc2","\xc3\x07p\x02\x02\xc3\xc4\x07v\x02\x02\xc4\xc5","\x07c\x02\x02\xc5\xc6\x07k\x02\x02\xc6\xc7\x07","p\x02\x02\xc7\xc8\x07u\x02\x02\xc80\x03\x02\x02","\x02\xc9\xca\x07c\x02\x02\xca\xcb\x07p\x02\x02","\xcb\xcc\x07f\x02\x02\xcc2\x03\x02\x02\x02\xcd","\xce\x07q\x02\x02\xce\xcf\x07t\x02\x02\xcf4\x03","\x02\x02\x02\xd0\xd1\x07z\x02\x02\xd1\xd2\x07","q\x02\x02\xd2\xd3\x07t\x02\x02\xd36\x03\x02\x02","\x02\xd4\xd5\x07k\x02\x02\xd5\xd6\x07o\x02\x02","\xd6\xd7\x07r\x02\x02\xd7\xd8\x07n\x02\x02\xd8","\xd9\x07k\x02\x02\xd9\xda\x07g\x02\x02\xda\xdb","\x07u\x02\x02\xdb8\x03\x02\x02\x02\xdc\xdd\x07","*\x02\x02\xdd:\x03\x02\x02\x02\xde\xdf\x07+\x02","\x02\xdf<\x03\x02\x02\x02\xe0\xe1\x07}\x02\x02","\xe1>\x03\x02\x02\x02\xe2\xe3\x07\x7f\x02\x02","\xe3@\x03\x02\x02\x02\xe4\xe5\x07v\x02\x02\xe5","\xe6\x07t\x02\x02\xe6\xe7\x07w\x02\x02\xe7\xe8","\x07g\x02\x02\xe8B\x03\x02\x02\x02\xe9\xea\x07","h\x02\x02\xea\xeb\x07c\x02\x02\xeb\xec\x07n\x02","\x02\xec\xed\x07u\x02\x02\xed\xee\x07g\x02\x02","\xeeD\x03\x02\x02\x02\xef\xf0\x07'\x02\x02\xf0","F\x03\x02\x02\x02\xf1\xf2\x07&\x02\x02\xf2\xf3","\x07v\x02\x02\xf3\xf4\x07j\x02\x02\xf4\xf5\x07","k\x02\x02\xf5\xf6\x07u\x02\x02\xf6H\x03\x02\x02","\x02\xf7\xf8\x07&\x02\x02\xf8\xf9\x07k\x02\x02","\xf9\xfa\x07p\x02\x02\xfa\xfb\x07f\x02\x02\xfb","\xfc\x07g\x02\x02\xfc\xfd\x07z\x02\x02\xfdJ\x03","\x02\x02\x02\xfe\xff\x07&\x02\x02\xff\u0100\x07","v\x02\x02\u0100\u0101\x07q\x02\x02\u0101\u0102\x07v\x02","\x02\u0102\u0103\x07c\x02\x02\u0103\u0104\x07n\x02\x02","\u0104L\x03\x02\x02\x02\u0105\u0106\x07.\x02\x02\u0106","N\x03\x02\x02\x02\u0107\u0108\x07{\x02\x02\u0108\u0109","\x07g\x02\x02\u0109\u010a\x07c\x02\x02\u010a\u010b\x07","t\x02\x02\u010bP\x03\x02\x02\x02\u010c\u010d\x07o\x02","\x02\u010d\u010e\x07q\x02\x02\u010e\u010f\x07p\x02\x02","\u010f\u0110\x07v\x02\x02\u0110\u0111\x07j\x02\x02\u0111","R\x03\x02\x02\x02\u0112\u0113\x07y\x02\x02\u0113\u0114","\x07g\x02\x02\u0114\u0115\x07g\x02\x02\u0115\u0116\x07","m\x02\x02\u0116T\x03\x02\x02\x02\u0117\u0118\x07f\x02","\x02\u0118\u0119\x07c\x02\x02\u0119\u011a\x07{\x02\x02","\u011aV\x03\x02\x02\x02\u011b\u011c\x07j\x02\x02\u011c","\u011d\x07q\x02\x02\u011d\u011e\x07w\x02\x02\u011e\u011f","\x07t\x02\x02\u011fX\x03\x02\x02\x02\u0120\u0121\x07","o\x02\x02\u0121\u0122\x07k\x02\x02\u0122\u0123\x07p\x02","\x02\u0123\u0124\x07w\x02\x02\u0124\u0125\x07v\x02\x02","\u0125\u0126\x07g\x02\x02\u0126Z\x03\x02\x02\x02\u0127","\u0128\x07u\x02\x02\u0128\u0129\x07g\x02\x02\u0129\u012a","\x07e\x02\x02\u012a\u012b\x07q\x02\x02\u012b\u012c\x07","p\x02\x02\u012c\u012d\x07f\x02\x02\u012d\\\x03\x02\x02","\x02\u012e\u012f\x07o\x02\x02\u012f\u0130\x07k\x02\x02","\u0130\u0131\x07n\x02\x02\u0131\u0132\x07n\x02\x02\u0132","\u0133\x07k\x02\x02\u0133\u0134\x07u\x02\x02\u0134\u0135","\x07g\x02\x02\u0135\u0136\x07e\x02\x02\u0136\u0137\x07","q\x02\x02\u0137\u0138\x07p\x02\x02\u0138\u0139\x07f\x02","\x02\u0139^\x03\x02\x02\x02\u013a\u013b\x07{\x02\x02","\u013b\u013c\x07g\x02\x02\u013c\u013d\x07c\x02\x02\u013d","\u013e\x07t\x02\x02\u013e\u013f\x07u\x02\x02\u013f`\x03","\x02\x02\x02\u0140\u0141\x07o\x02\x02\u0141\u0142\x07","q\x02\x02\u0142\u0143\x07p\x02\x02\u0143\u0144\x07v\x02","\x02\u0144\u0145\x07j\x02\x02\u0145\u0146\x07u\x02\x02","\u0146b\x03\x02\x02\x02\u0147\u0148\x07y\x02\x02\u0148","\u0149\x07g\x02\x02\u0149\u014a\x07g\x02\x02\u014a\u014b","\x07m\x02\x02\u014b\u014c\x07u\x02\x02\u014cd\x03\x02","\x02\x02\u014d\u014e\x07f\x02\x02\u014e\u014f\x07c\x02","\x02\u014f\u0150\x07{\x02\x02\u0150\u0151\x07u\x02\x02","\u0151f\x03\x02\x02\x02\u0152\u0153\x07j\x02\x02\u0153","\u0154\x07q\x02\x02\u0154\u0155\x07w\x02\x02\u0155\u0156","\x07t\x02\x02\u0156\u0157\x07u\x02\x02\u0157h\x03\x02","\x02\x02\u0158\u0159\x07o\x02\x02\u0159\u015a\x07k\x02","\x02\u015a\u015b\x07p\x02\x02\u015b\u015c\x07w\x02\x02","\u015c\u015d\x07v\x02\x02\u015d\u015e\x07g\x02\x02\u015e","\u015f\x07u\x02\x02\u015fj\x03\x02\x02\x02\u0160\u0161","\x07u\x02\x02\u0161\u0162\x07g\x02\x02\u0162\u0163\x07","e\x02\x02\u0163\u0164\x07q\x02\x02\u0164\u0165\x07p\x02","\x02\u0165\u0166\x07f\x02\x02\u0166\u0167\x07u\x02\x02","\u0167l\x03\x02\x02\x02\u0168\u0169\x07o\x02\x02\u0169","\u016a\x07k\x02\x02\u016a\u016b\x07n\x02\x02\u016b\u016c","\x07n\x02\x02\u016c\u016d\x07k\x02\x02\u016d\u016e\x07","u\x02\x02\u016e\u016f\x07g\x02\x02\u016f\u0170\x07e\x02","\x02\u0170\u0171\x07q\x02\x02\u0171\u0172\x07p\x02\x02","\u0172\u0173\x07f\x02\x02\u0173\u0174\x07u\x02\x02\u0174","n\x03\x02\x02\x02\u0175\u0176\x07B\x02\x02\u0176\u0177","\t\x02\x02\x02\u0177\u0178\t\x02\x02\x02\u0178\u0179\t\x02","\x02\x02\u0179\u0186\t\x02\x02\x02\u017a\u017b\x07/\x02","\x02\u017b\u017c\t\x02\x02\x02\u017c\u0184\t\x02\x02\x02","\u017d\u017e\x07/\x02\x02\u017e\u017f\t\x02\x02\x02\u017f","\u0182\t\x02\x02\x02\u0180\u0181\x07V\x02\x02\u0181\u0183","\x05s:\x02\u0182\u0180\x03\x02\x02\x02\u0182\u0183\x03","\x02\x02\x02\u0183\u0185\x03\x02\x02\x02\u0184\u017d\x03","\x02\x02\x02\u0184\u0185\x03\x02\x02\x02\u0185\u0187\x03","\x02\x02\x02\u0186\u017a\x03\x02\x02\x02\u0186\u0187\x03","\x02\x02\x02\u0187\u0189\x03\x02\x02\x02\u0188\u018a\x07","\\\x02\x02\u0189\u0188\x03\x02\x02\x02\u0189\u018a\x03","\x02\x02\x02\u018ap\x03\x02\x02\x02\u018b\u018c\x07","B\x02\x02\u018c\u018d\x07V\x02\x02\u018d\u018e\x05s:\x02","\u018er\x03\x02\x02\x02\u018f\u0190\t\x02\x02\x02\u0190","\u01a1\t\x02\x02\x02\u0191\u0192\x07<\x02\x02\u0192\u0193","\t\x02\x02\x02\u0193\u019f\t\x02\x02\x02\u0194\u0195\x07","<\x02\x02\u0195\u0196\t\x02\x02\x02\u0196\u019d\t\x02\x02","\x02\u0197\u0199\x070\x02\x02\u0198\u019a\t\x02\x02\x02","\u0199\u0198\x03\x02\x02\x02\u019a\u019b\x03\x02\x02\x02","\u019b\u0199\x03\x02\x02\x02\u019b\u019c\x03\x02\x02\x02","\u019c\u019e\x03\x02\x02\x02\u019d\u0197\x03\x02\x02\x02","\u019d\u019e\x03\x02\x02\x02\u019e\u01a0\x03\x02\x02\x02","\u019f\u0194\x03\x02\x02\x02\u019f\u01a0\x03\x02\x02\x02","\u01a0\u01a2\x03\x02\x02\x02\u01a1\u0191\x03\x02\x02\x02","\u01a1\u01a2\x03\x02\x02\x02\u01a2\u01aa\x03\x02\x02\x02","\u01a3\u01ab\x07\\\x02\x02\u01a4\u01a5\t\x03\x02\x02\u01a5","\u01a6\t\x02\x02\x02\u01a6\u01a7\t\x02\x02\x02\u01a7\u01a8","\x07<\x02\x02\u01a8\u01a9\t\x02\x02\x02\u01a9\u01ab\t\x02","\x02\x02\u01aa\u01a3\x03\x02\x02\x02\u01aa\u01a4\x03\x02","\x02\x02\u01aa\u01ab\x03\x02\x02\x02\u01abt\x03\x02","\x02\x02\u01ac\u01ae\t\x04\x02\x02\u01ad\u01ac\x03\x02","\x02\x02\u01ae\u01b2\x03\x02\x02\x02\u01af\u01b1\t\x05","\x02\x02\u01b0\u01af\x03\x02\x02\x02\u01b1\u01b4\x03\x02","\x02\x02\u01b2\u01b0\x03\x02\x02\x02\u01b2\u01b3\x03\x02","\x02\x02\u01b3v\x03\x02\x02\x02\u01b4\u01b2\x03\x02","\x02\x02\u01b5\u01ba\x07b\x02\x02\u01b6\u01b9\x05\x83","B\x02\u01b7\u01b9\n\x06\x02\x02\u01b8\u01b6\x03\x02\x02","\x02\u01b8\u01b7\x03\x02\x02\x02\u01b9\u01bc\x03\x02\x02","\x02\u01ba\u01b8\x03\x02\x02\x02\u01ba\u01bb\x03\x02\x02","\x02\u01bb\u01bd\x03\x02\x02\x02\u01bc\u01ba\x03\x02\x02","\x02\u01bd\u01be\x07b\x02\x02\u01bex\x03\x02\x02\x02","\u01bf\u01c4\x07)\x02\x02\u01c0\u01c3\x05\x83B\x02\u01c1","\u01c3\n\x07\x02\x02\u01c2\u01c0\x03\x02\x02\x02\u01c2","\u01c1\x03\x02\x02\x02\u01c3\u01c6\x03\x02\x02\x02\u01c4","\u01c2\x03\x02\x02\x02\u01c4\u01c5\x03\x02\x02\x02\u01c5","\u01c7\x03\x02\x02\x02\u01c6\u01c4\x03\x02\x02\x02\u01c7","\u01c8\x07)\x02\x02\u01c8z\x03\x02\x02\x02\u01c9\u01cb","\t\x02\x02\x02\u01ca\u01c9\x03\x02\x02\x02\u01cb\u01cc","\x03\x02\x02\x02\u01cc\u01ca\x03\x02\x02\x02\u01cc\u01cd","\x03\x02\x02\x02\u01cd\u01d4\x03\x02\x02\x02\u01ce\u01d0","\x070\x02\x02\u01cf\u01d1\t\x02\x02\x02\u01d0\u01cf\x03","\x02\x02\x02\u01d1\u01d2\x03\x02\x02\x02\u01d2\u01d0\x03","\x02\x02\x02\u01d2\u01d3\x03\x02\x02\x02\u01d3\u01d5\x03","\x02\x02\x02\u01d4\u01ce\x03\x02\x02\x02\u01d4\u01d5\x03","\x02\x02\x02\u01d5|\x03\x02\x02\x02\u01d6\u01d8\t\b\x02","\x02\u01d7\u01d6\x03\x02\x02\x02\u01d8\u01d9\x03\x02\x02","\x02\u01d9\u01d7\x03\x02\x02\x02\u01d9\u01da\x03\x02\x02","\x02\u01da\u01db\x03\x02\x02\x02\u01db\u01dc\b?\x02\x02","\u01dc~\x03\x02\x02\x02\u01dd\u01de\x071\x02\x02\u01de","\u01df\x07,\x02\x02\u01df\u01e3\x03\x02\x02\x02\u01e0","\u01e2\v\x02\x02\x02\u01e1\u01e0\x03\x02\x02\x02\u01e2","\u01e5\x03\x02\x02\x02\u01e3\u01e4\x03\x02\x02\x02\u01e3","\u01e1\x03\x02\x02\x02\u01e4\u01e6\x03\x02\x02\x02\u01e5","\u01e3\x03\x02\x02\x02\u01e6\u01e7\x07,\x02\x02\u01e7","\u01e8\x071\x02\x02\u01e8\u01e9\x03\x02\x02\x02\u01e9","\u01ea\b@\x02\x02\u01ea\x80\x03\x02\x02\x02\u01eb\u01ec","\x071\x02\x02\u01ec\u01ed\x071\x02\x02\u01ed\u01f1\x03","\x02\x02\x02\u01ee\u01f0\n\t\x02\x02\u01ef\u01ee\x03\x02","\x02\x02\u01f0\u01f3\x03\x02\x02\x02\u01f1\u01ef\x03\x02","\x02\x02\u01f1\u01f2\x03\x02\x02\x02\u01f2\u01f4\x03\x02","\x02\x02\u01f3\u01f1\x03\x02\x02\x02\u01f4\u01f5\bA\x02","\x02\u01f5\x82\x03\x02\x02\x02\u01f6\u01f9\x07^\x02","\x02\u01f7\u01fa\t\n\x02\x02\u01f8\u01fa\x05\x85C\x02\u01f9","\u01f7\x03\x02\x02\x02\u01f9\u01f8\x03\x02\x02\x02\u01fa","\x84\x03\x02\x02\x02\u01fb\u01fc\x07w\x02\x02\u01fc","\u01fd\x05\x87D\x02\u01fd\u01fe\x05\x87D\x02\u01fe\u01ff","\x05\x87D\x02\u01ff\u0200\x05\x87D\x02\u0200\x86\x03","\x02\x02\x02\u0201\u0202\t\v\x02\x02\u0202\x88\x03","\x02\x02\x02\x1a\x02\u0182\u0184\u0186\u0189\u019b\u019d\u019f","\u01a1\u01aa\u01ad\u01b0\u01b2\u01b8\u01ba\u01c2\u01c4\u01cc\u01d2\u01d4","\u01d9\u01e3\u01f1\u01f9\x03\x02\x03\x02"].join(""),b=(new p.atn.ATNDeserializer).deserialize(C),o=b.decisionToState.map((a,c)=>new p.dfa.DFA(a,c));class v extends p.Lexer{constructor(c){super(c),this._interp=new p.atn.LexerATNSimulator(this,b,o,new p.PredictionContextCache)}get atn(){return b}}n(v,"grammarFileName","FHIRPath.g4"),n(v,"channelNames",["DEFAULT_TOKEN_CHANNEL","HIDDEN"]),n(v,"modeNames",["DEFAULT_MODE"]),n(v,"literalNames",[null,"'.'","'['","']'","'+'","'-'","'*'","'/'","'div'","'mod'","'&'","'|'","'<='","'<'","'>'","'>='","'is'","'as'","'='","'~'","'!='","'!~'","'in'","'contains'","'and'","'or'","'xor'","'implies'","'('","')'","'{'","'}'","'true'","'false'","'%'","'$this'","'$index'","'$total'","','","'year'","'month'","'week'","'day'","'hour'","'minute'","'second'","'millisecond'","'years'","'months'","'weeks'","'days'","'hours'","'minutes'","'seconds'","'milliseconds'"]),n(v,"symbolicNames",[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,"DATETIME","TIME","IDENTIFIER","DELIMITEDIDENTIFIER","STRING","NUMBER","WS","COMMENT","LINE_COMMENT"]),n(v,"ruleNames",["T__0","T__1","T__2","T__3","T__4","T__5","T__6","T__7","T__8","T__9","T__10","T__11","T__12","T__13","T__14","T__15","T__16","T__17","T__18","T__19","T__20","T__21","T__22","T__23","T__24","T__25","T__26","T__27","T__28","T__29","T__30","T__31","T__32","T__33","T__34","T__35","T__36","T__37","T__38","T__39","T__40","T__41","T__42","T__43","T__44","T__45","T__46","T__47","T__48","T__49","T__50","T__51","T__52","T__53","DATETIME","TIME","TIMEFORMAT","IDENTIFIER","DELIMITEDIDENTIFIER","STRING","NUMBER","WS","COMMENT","LINE_COMMENT","ESC","UNICODE","HEX"]),v.EOF=p.Token.EOF,v.T__0=1,v.T__1=2,v.T__2=3,v.T__3=4,v.T__4=5,v.T__5=6,v.T__6=7,v.T__7=8,v.T__8=9,v.T__9=10,v.T__10=11,v.T__11=12,v.T__12=13,v.T__13=14,v.T__14=15,v.T__15=16,v.T__16=17,v.T__17=18,v.T__18=19,v.T__19=20,v.T__20=21,v.T__21=22,v.T__22=23,v.T__23=24,v.T__24=25,v.T__25=26,v.T__26=27,v.T__27=28,v.T__28=29,v.T__29=30,v.T__30=31,v.T__31=32,v.T__32=33,v.T__33=34,v.T__34=35,v.T__35=36,v.T__36=37,v.T__37=38,v.T__38=39,v.T__39=40,v.T__40=41,v.T__41=42,v.T__42=43,v.T__43=44,v.T__44=45,v.T__45=46,v.T__46=47,v.T__47=48,v.T__48=49,v.T__49=50,v.T__50=51,v.T__51=52,v.T__52=53,v.T__53=54,v.DATETIME=55,v.TIME=56,v.IDENTIFIER=57,v.DELIMITEDIDENTIFIER=58,v.STRING=59,v.NUMBER=60,v.WS=61,v.COMMENT=62,v.LINE_COMMENT=63,Se.exports=v},6647:(Se,X,g)=>{const n=g(5815);Se.exports=class p extends n.tree.ParseTreeListener{enterEntireExpression(b){}exitEntireExpression(b){}enterIndexerExpression(b){}exitIndexerExpression(b){}enterPolarityExpression(b){}exitPolarityExpression(b){}enterAdditiveExpression(b){}exitAdditiveExpression(b){}enterMultiplicativeExpression(b){}exitMultiplicativeExpression(b){}enterUnionExpression(b){}exitUnionExpression(b){}enterOrExpression(b){}exitOrExpression(b){}enterAndExpression(b){}exitAndExpression(b){}enterMembershipExpression(b){}exitMembershipExpression(b){}enterInequalityExpression(b){}exitInequalityExpression(b){}enterInvocationExpression(b){}exitInvocationExpression(b){}enterEqualityExpression(b){}exitEqualityExpression(b){}enterImpliesExpression(b){}exitImpliesExpression(b){}enterTermExpression(b){}exitTermExpression(b){}enterTypeExpression(b){}exitTypeExpression(b){}enterInvocationTerm(b){}exitInvocationTerm(b){}enterLiteralTerm(b){}exitLiteralTerm(b){}enterExternalConstantTerm(b){}exitExternalConstantTerm(b){}enterParenthesizedTerm(b){}exitParenthesizedTerm(b){}enterNullLiteral(b){}exitNullLiteral(b){}enterBooleanLiteral(b){}exitBooleanLiteral(b){}enterStringLiteral(b){}exitStringLiteral(b){}enterNumberLiteral(b){}exitNumberLiteral(b){}enterDateTimeLiteral(b){}exitDateTimeLiteral(b){}enterTimeLiteral(b){}exitTimeLiteral(b){}enterQuantityLiteral(b){}exitQuantityLiteral(b){}enterExternalConstant(b){}exitExternalConstant(b){}enterMemberInvocation(b){}exitMemberInvocation(b){}enterFunctionInvocation(b){}exitFunctionInvocation(b){}enterThisInvocation(b){}exitThisInvocation(b){}enterIndexInvocation(b){}exitIndexInvocation(b){}enterTotalInvocation(b){}exitTotalInvocation(b){}enterFunctn(b){}exitFunctn(b){}enterParamList(b){}exitParamList(b){}enterQuantity(b){}exitQuantity(b){}enterUnit(b){}exitUnit(b){}enterDateTimePrecision(b){}exitDateTimePrecision(b){}enterPluralDateTimePrecision(b){}exitPluralDateTimePrecision(b){}enterTypeSpecifier(b){}exitTypeSpecifier(b){}enterQualifiedIdentifier(b){}exitQualifiedIdentifier(b){}enterIdentifier(b){}exitIdentifier(b){}}},8827:(Se,X,g)=>{var n=g(8416).default;const p=g(5815),C=g(6647),b=["\x03\u608b\ua72a\u8133\ub9ed\u417c\u3be7\u7786","\u5964\x03A\x9c\x04\x02\t\x02\x04\x03\t\x03\x04\x04","\t\x04\x04\x05\t\x05\x04\x06\t\x06\x04\x07\t\x07","\x04\b\t\b\x04\t\t\t\x04\n\t\n\x04\v\t\v\x04\f\t\f","\x04\r\t\r\x04\x0e\t\x0e\x04\x0f\t\x0f\x04\x10\t\x10","\x03\x02\x03\x02\x03\x02\x03\x03\x03\x03\x03\x03","\x03\x03\x05\x03(\n\x03\x03\x03\x03\x03\x03\x03","\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03","\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03","\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03","\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03","\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03","\x03\x03\x03\x03\x03\x03\x03\x03\x03\x03\x07\x03","P\n\x03\f\x03\x0e\x03S\v\x03\x03\x04\x03\x04\x03","\x04\x03\x04\x03\x04\x03\x04\x03\x04\x05\x04\\","\n\x04\x03\x05\x03\x05\x03\x05\x03\x05\x03\x05","\x03\x05\x03\x05\x03\x05\x05\x05f\n\x05\x03\x06","\x03\x06\x03\x06\x05\x06k\n\x06\x03\x07\x03\x07","\x03\x07\x03\x07\x03\x07\x05\x07r\n\x07\x03\b\x03","\b\x03\b\x05\bw\n\b\x03\b\x03\b\x03\t\x03\t\x03\t\x07","\t~\n\t\f\t\x0e\t\x81\v\t\x03\n\x03\n\x05\n\x85\n\n","\x03\v\x03\v\x03\v\x05\v\x8a\n\v\x03","\f\x03\f\x03\r\x03\r\x03\x0e\x03\x0e\x03\x0f\x03","\x0f\x03\x0f\x07\x0f\x95\n\x0f\f\x0f\x0e\x0f\x98","\v\x0f\x03\x10\x03\x10\x03\x10\x02\x03\x04\x11","\x02\x04\x06\b\n\f\x0e\x10\x12\x14\x16\x18\x1a\x1c","\x1e\x02\x0e\x03\x02\x06\x07\x03\x02\b\v\x04","\x02\x06\x07\f\f\x03\x02\x0e\x11\x03\x02\x14\x17","\x03\x02\x18\x19\x03\x02\x1b\x1c\x03\x02\x12\x13",'\x03\x02"#\x03\x02)0\x03\x0218\x05\x02\x12\x13',"\x18\x19;<\x02\xad\x02 \x03\x02\x02\x02\x04'\x03","\x02\x02\x02\x06[\x03\x02\x02\x02\be\x03\x02\x02","\x02\ng\x03\x02\x02\x02\fq\x03\x02\x02\x02\x0es","\x03\x02\x02\x02\x10z\x03\x02\x02\x02\x12\x82","\x03\x02\x02\x02\x14\x89\x03\x02\x02\x02\x16\x8b","\x03\x02\x02\x02\x18\x8d\x03\x02\x02\x02\x1a\x8f","\x03\x02\x02\x02\x1c\x91\x03\x02\x02\x02\x1e\x99",'\x03\x02\x02\x02 !\x05\x04\x03\x02!"\x07\x02\x02','\x03"\x03\x03\x02\x02\x02#$\b\x03\x01\x02$(\x05',"\x06\x04\x02%&\t\x02\x02\x02&(\x05\x04\x03\r'#\x03","\x02\x02\x02'%\x03\x02\x02\x02(Q\x03\x02\x02\x02",")*\f\f\x02\x02*+\t\x03\x02\x02+P\x05\x04\x03\r,-\f\v","\x02\x02-.\t\x04\x02\x02.P\x05\x04\x03\f/0\f\n\x02","\x0201\x07\r\x02\x021P\x05\x04\x03\v23\f\t\x02\x02","34\t\x05\x02\x024P\x05\x04\x03\n56\f\x07\x02\x026","7\t\x06\x02\x027P\x05\x04\x03\b89\f\x06\x02\x029:","\t\x07\x02\x02:P\x05\x04\x03\x07;<\f\x05\x02\x02","<=\x07\x1a\x02\x02=P\x05\x04\x03\x06>?\f\x04\x02","\x02?@\t\b\x02\x02@P\x05\x04\x03\x05AB\f\x03\x02\x02","BC\x07\x1d\x02\x02CP\x05\x04\x03\x04DE\f\x0f\x02","\x02EF\x07\x03\x02\x02FP\x05\f\x07\x02GH\f\x0e\x02","\x02HI\x07\x04\x02\x02IJ\x05\x04\x03\x02JK\x07\x05","\x02\x02KP\x03\x02\x02\x02LM\f\b\x02\x02MN\t\t\x02","\x02NP\x05\x1a\x0e\x02O)\x03\x02\x02\x02O,\x03\x02","\x02\x02O/\x03\x02\x02\x02O2\x03\x02\x02\x02O5\x03","\x02\x02\x02O8\x03\x02\x02\x02O;\x03\x02\x02\x02","O>\x03\x02\x02\x02OA\x03\x02\x02\x02OD\x03\x02\x02","\x02OG\x03\x02\x02\x02OL\x03\x02\x02\x02PS\x03\x02","\x02\x02QO\x03\x02\x02\x02QR\x03\x02\x02\x02R\x05","\x03\x02\x02\x02SQ\x03\x02\x02\x02T\\\x05\f\x07","\x02U\\\x05\b\x05\x02V\\\x05\n\x06\x02WX\x07\x1e\x02","\x02XY\x05\x04\x03\x02YZ\x07\x1f\x02\x02Z\\\x03","\x02\x02\x02[T\x03\x02\x02\x02[U\x03\x02\x02\x02","[V\x03\x02\x02\x02[W\x03\x02\x02\x02\\\x07\x03\x02","\x02\x02]^\x07 \x02\x02^f\x07!\x02\x02_f\t\n\x02\x02","`f\x07=\x02\x02af\x07>\x02\x02bf\x079\x02\x02cf\x07",":\x02\x02df\x05\x12\n\x02e]\x03\x02\x02\x02e_\x03","\x02\x02\x02e`\x03\x02\x02\x02ea\x03\x02\x02\x02","eb\x03\x02\x02\x02ec\x03\x02\x02\x02ed\x03\x02\x02","\x02f\t\x03\x02\x02\x02gj\x07$\x02\x02hk\x05\x1e","\x10\x02ik\x07=\x02\x02jh\x03\x02\x02\x02ji\x03","\x02\x02\x02k\v\x03\x02\x02\x02lr\x05\x1e\x10","\x02mr\x05\x0e\b\x02nr\x07%\x02\x02or\x07&\x02\x02","pr\x07'\x02\x02ql\x03\x02\x02\x02qm\x03\x02\x02","\x02qn\x03\x02\x02\x02qo\x03\x02\x02\x02qp\x03\x02","\x02\x02r\r\x03\x02\x02\x02st\x05\x1e\x10\x02tv","\x07\x1e\x02\x02uw\x05\x10\t\x02vu\x03\x02\x02\x02","vw\x03\x02\x02\x02wx\x03\x02\x02\x02xy\x07\x1f\x02","\x02y\x0f\x03\x02\x02\x02z\x7f\x05\x04\x03\x02","{|\x07(\x02\x02|~\x05\x04\x03\x02}{\x03\x02\x02","\x02~\x81\x03\x02\x02\x02\x7f}\x03\x02\x02\x02","\x7f\x80\x03\x02\x02\x02\x80\x11\x03\x02\x02\x02","\x81\x7f\x03\x02\x02\x02\x82\x84\x07>\x02\x02","\x83\x85\x05\x14\v\x02\x84\x83\x03\x02\x02\x02","\x84\x85\x03\x02\x02\x02\x85\x13\x03\x02\x02\x02","\x86\x8a\x05\x16\f\x02\x87\x8a\x05\x18\r\x02\x88","\x8a\x07=\x02\x02\x89\x86\x03\x02\x02\x02\x89","\x87\x03\x02\x02\x02\x89\x88\x03\x02\x02\x02\x8a","\x15\x03\x02\x02\x02\x8b\x8c\t\v\x02\x02\x8c","\x17\x03\x02\x02\x02\x8d\x8e\t\f\x02\x02\x8e\x19","\x03\x02\x02\x02\x8f\x90\x05\x1c\x0f\x02\x90\x1b","\x03\x02\x02\x02\x91\x96\x05\x1e\x10\x02\x92\x93","\x07\x03\x02\x02\x93\x95\x05\x1e\x10\x02\x94\x92","\x03\x02\x02\x02\x95\x98\x03\x02\x02\x02\x96\x94","\x03\x02\x02\x02\x96\x97\x03\x02\x02\x02\x97\x1d","\x03\x02\x02\x02\x98\x96\x03\x02\x02\x02\x99\x9a","\t\r\x02\x02\x9a\x1f\x03\x02\x02\x02\x0e'OQ[ejqv","\x7f\x84\x89\x96"].join(""),o=(new p.atn.ATNDeserializer).deserialize(b),v=o.decisionToState.map((rt,J)=>new p.dfa.DFA(rt,J)),a=new p.PredictionContextCache;class c extends p.Parser{constructor(J){super(J),this._interp=new p.atn.ParserATNSimulator(this,o,v,a),this.ruleNames=c.ruleNames,this.literalNames=c.literalNames,this.symbolicNames=c.symbolicNames}get atn(){return o}sempred(J,Ce,ee){if(1===Ce)return this.expression_sempred(J,ee);throw"No predicate with index:"+Ce}expression_sempred(J,Ce){switch(Ce){case 0:return this.precpred(this._ctx,10);case 1:return this.precpred(this._ctx,9);case 2:return this.precpred(this._ctx,8);case 3:return this.precpred(this._ctx,7);case 4:return this.precpred(this._ctx,5);case 5:return this.precpred(this._ctx,4);case 6:return this.precpred(this._ctx,3);case 7:return this.precpred(this._ctx,2);case 8:return this.precpred(this._ctx,1);case 9:return this.precpred(this._ctx,13);case 10:return this.precpred(this._ctx,12);case 11:return this.precpred(this._ctx,6);default:throw"No predicate with index:"+Ce}}entireExpression(){let J=new s(this,this._ctx,this.state);this.enterRule(J,0,c.RULE_entireExpression);try{this.enterOuterAlt(J,1),this.state=30,this.expression(0),this.state=31,this.match(c.EOF)}catch(Ce){if(!(Ce instanceof p.error.RecognitionException))throw Ce;J.exception=Ce,this._errHandler.reportError(this,Ce),this._errHandler.recover(this,Ce)}finally{this.exitRule()}return J}expression(J){void 0===J&&(J=0);const Ce=this._ctx,ee=this.state;let ae=new l(this,this._ctx,ee),ie=ae;this.enterRecursionRule(ae,2,c.RULE_expression,J);var Te=0;try{switch(this.enterOuterAlt(ae,1),this.state=37,this._errHandler.sync(this),this._input.LA(1)){case c.T__15:case c.T__16:case c.T__21:case c.T__22:case c.T__27:case c.T__29:case c.T__31:case c.T__32:case c.T__33:case c.T__34:case c.T__35:case c.T__36:case c.DATETIME:case c.TIME:case c.IDENTIFIER:case c.DELIMITEDIDENTIFIER:case c.STRING:case c.NUMBER:ae=new O(this,ae),this._ctx=ae,ie=ae,this.state=34,this.term();break;case c.T__3:case c.T__4:ae=new r(this,ae),this._ctx=ae,ie=ae,this.state=35,(Te=this._input.LA(1))===c.T__3||Te===c.T__4?(this._errHandler.reportMatch(this),this.consume()):this._errHandler.recoverInline(this),this.state=36,this.expression(11);break;default:throw new p.error.NoViableAltException(this)}this._ctx.stop=this._input.LT(-1),this.state=79,this._errHandler.sync(this);for(var ct=this._interp.adaptivePredict(this._input,2,this._ctx);2!=ct&&ct!=p.atn.ATN.INVALID_ALT_NUMBER;){if(1===ct)switch(null!==this._parseListeners&&this.triggerExitRuleEvent(),ie=ae,this.state=77,this._errHandler.sync(this),this._interp.adaptivePredict(this._input,1,this._ctx)){case 1:if(ae=new h(this,new l(this,Ce,ee)),this.pushNewRecursionContext(ae,2,c.RULE_expression),this.state=39,!this.precpred(this._ctx,10))throw new p.error.FailedPredicateException(this,"this.precpred(this._ctx, 10)");this.state=40,!(-32&(Te=this._input.LA(1)))&&1<'","'>='","'is'","'as'","'='","'~'","'!='","'!~'","'in'","'contains'","'and'","'or'","'xor'","'implies'","'('","')'","'{'","'}'","'true'","'false'","'%'","'$this'","'$index'","'$total'","','","'year'","'month'","'week'","'day'","'hour'","'minute'","'second'","'millisecond'","'years'","'months'","'weeks'","'days'","'hours'","'minutes'","'seconds'","'milliseconds'"]),n(c,"symbolicNames",[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,"DATETIME","TIME","IDENTIFIER","DELIMITEDIDENTIFIER","STRING","NUMBER","WS","COMMENT","LINE_COMMENT"]),n(c,"ruleNames",["entireExpression","expression","term","literal","externalConstant","invocation","functn","paramList","quantity","unit","dateTimePrecision","pluralDateTimePrecision","typeSpecifier","qualifiedIdentifier","identifier"]),c.EOF=p.Token.EOF,c.T__0=1,c.T__1=2,c.T__2=3,c.T__3=4,c.T__4=5,c.T__5=6,c.T__6=7,c.T__7=8,c.T__8=9,c.T__9=10,c.T__10=11,c.T__11=12,c.T__12=13,c.T__13=14,c.T__14=15,c.T__15=16,c.T__16=17,c.T__17=18,c.T__18=19,c.T__19=20,c.T__20=21,c.T__21=22,c.T__22=23,c.T__23=24,c.T__24=25,c.T__25=26,c.T__26=27,c.T__27=28,c.T__28=29,c.T__29=30,c.T__30=31,c.T__31=32,c.T__32=33,c.T__33=34,c.T__34=35,c.T__35=36,c.T__36=37,c.T__37=38,c.T__38=39,c.T__39=40,c.T__40=41,c.T__41=42,c.T__42=43,c.T__43=44,c.T__44=45,c.T__45=46,c.T__46=47,c.T__47=48,c.T__48=49,c.T__49=50,c.T__50=51,c.T__51=52,c.T__52=53,c.T__53=54,c.DATETIME=55,c.TIME=56,c.IDENTIFIER=57,c.DELIMITEDIDENTIFIER=58,c.STRING=59,c.NUMBER=60,c.WS=61,c.COMMENT=62,c.LINE_COMMENT=63,c.RULE_entireExpression=0,c.RULE_expression=1,c.RULE_term=2,c.RULE_literal=3,c.RULE_externalConstant=4,c.RULE_invocation=5,c.RULE_functn=6,c.RULE_paramList=7,c.RULE_quantity=8,c.RULE_unit=9,c.RULE_dateTimePrecision=10,c.RULE_pluralDateTimePrecision=11,c.RULE_typeSpecifier=12,c.RULE_qualifiedIdentifier=13,c.RULE_identifier=14;class s extends p.ParserRuleContext{constructor(J,Ce,ee){void 0===Ce&&(Ce=null),null==ee&&(ee=-1),super(Ce,ee),this.parser=J,this.ruleIndex=c.RULE_entireExpression}expression(){return this.getTypedRuleContext(l,0)}EOF(){return this.getToken(c.EOF,0)}enterRule(J){J instanceof C&&J.enterEntireExpression(this)}exitRule(J){J instanceof C&&J.exitEntireExpression(this)}}class l extends p.ParserRuleContext{constructor(J,Ce,ee){void 0===Ce&&(Ce=null),null==ee&&(ee=-1),super(Ce,ee),this.parser=J,this.ruleIndex=c.RULE_expression}copyFrom(J){super.copyFrom(J)}}class d extends l{constructor(J,Ce){super(J),n(this,"expression",function(ee){return void 0===ee&&(ee=null),null===ee?this.getTypedRuleContexts(l):this.getTypedRuleContext(l,ee)}),super.copyFrom(Ce)}enterRule(J){J instanceof C&&J.enterIndexerExpression(this)}exitRule(J){J instanceof C&&J.exitIndexerExpression(this)}}c.IndexerExpressionContext=d;class r extends l{constructor(J,Ce){super(J),super.copyFrom(Ce)}expression(){return this.getTypedRuleContext(l,0)}enterRule(J){J instanceof C&&J.enterPolarityExpression(this)}exitRule(J){J instanceof C&&J.exitPolarityExpression(this)}}c.PolarityExpressionContext=r;class u extends l{constructor(J,Ce){super(J),n(this,"expression",function(ee){return void 0===ee&&(ee=null),null===ee?this.getTypedRuleContexts(l):this.getTypedRuleContext(l,ee)}),super.copyFrom(Ce)}enterRule(J){J instanceof C&&J.enterAdditiveExpression(this)}exitRule(J){J instanceof C&&J.exitAdditiveExpression(this)}}c.AdditiveExpressionContext=u;class h extends l{constructor(J,Ce){super(J),n(this,"expression",function(ee){return void 0===ee&&(ee=null),null===ee?this.getTypedRuleContexts(l):this.getTypedRuleContext(l,ee)}),super.copyFrom(Ce)}enterRule(J){J instanceof C&&J.enterMultiplicativeExpression(this)}exitRule(J){J instanceof C&&J.exitMultiplicativeExpression(this)}}c.MultiplicativeExpressionContext=h;class m extends l{constructor(J,Ce){super(J),n(this,"expression",function(ee){return void 0===ee&&(ee=null),null===ee?this.getTypedRuleContexts(l):this.getTypedRuleContext(l,ee)}),super.copyFrom(Ce)}enterRule(J){J instanceof C&&J.enterUnionExpression(this)}exitRule(J){J instanceof C&&J.exitUnionExpression(this)}}c.UnionExpressionContext=m;class _ extends l{constructor(J,Ce){super(J),n(this,"expression",function(ee){return void 0===ee&&(ee=null),null===ee?this.getTypedRuleContexts(l):this.getTypedRuleContext(l,ee)}),super.copyFrom(Ce)}enterRule(J){J instanceof C&&J.enterOrExpression(this)}exitRule(J){J instanceof C&&J.exitOrExpression(this)}}c.OrExpressionContext=_;class M extends l{constructor(J,Ce){super(J),n(this,"expression",function(ee){return void 0===ee&&(ee=null),null===ee?this.getTypedRuleContexts(l):this.getTypedRuleContext(l,ee)}),super.copyFrom(Ce)}enterRule(J){J instanceof C&&J.enterAndExpression(this)}exitRule(J){J instanceof C&&J.exitAndExpression(this)}}c.AndExpressionContext=M;class x extends l{constructor(J,Ce){super(J),n(this,"expression",function(ee){return void 0===ee&&(ee=null),null===ee?this.getTypedRuleContexts(l):this.getTypedRuleContext(l,ee)}),super.copyFrom(Ce)}enterRule(J){J instanceof C&&J.enterMembershipExpression(this)}exitRule(J){J instanceof C&&J.exitMembershipExpression(this)}}c.MembershipExpressionContext=x;class w extends l{constructor(J,Ce){super(J),n(this,"expression",function(ee){return void 0===ee&&(ee=null),null===ee?this.getTypedRuleContexts(l):this.getTypedRuleContext(l,ee)}),super.copyFrom(Ce)}enterRule(J){J instanceof C&&J.enterInequalityExpression(this)}exitRule(J){J instanceof C&&J.exitInequalityExpression(this)}}c.InequalityExpressionContext=w;class L extends l{constructor(J,Ce){super(J),super.copyFrom(Ce)}expression(){return this.getTypedRuleContext(l,0)}invocation(){return this.getTypedRuleContext(ue,0)}enterRule(J){J instanceof C&&J.enterInvocationExpression(this)}exitRule(J){J instanceof C&&J.exitInvocationExpression(this)}}c.InvocationExpressionContext=L;class A extends l{constructor(J,Ce){super(J),n(this,"expression",function(ee){return void 0===ee&&(ee=null),null===ee?this.getTypedRuleContexts(l):this.getTypedRuleContext(l,ee)}),super.copyFrom(Ce)}enterRule(J){J instanceof C&&J.enterEqualityExpression(this)}exitRule(J){J instanceof C&&J.exitEqualityExpression(this)}}c.EqualityExpressionContext=A;class T extends l{constructor(J,Ce){super(J),n(this,"expression",function(ee){return void 0===ee&&(ee=null),null===ee?this.getTypedRuleContexts(l):this.getTypedRuleContext(l,ee)}),super.copyFrom(Ce)}enterRule(J){J instanceof C&&J.enterImpliesExpression(this)}exitRule(J){J instanceof C&&J.exitImpliesExpression(this)}}c.ImpliesExpressionContext=T;class O extends l{constructor(J,Ce){super(J),super.copyFrom(Ce)}term(){return this.getTypedRuleContext(D,0)}enterRule(J){J instanceof C&&J.enterTermExpression(this)}exitRule(J){J instanceof C&&J.exitTermExpression(this)}}c.TermExpressionContext=O;class E extends l{constructor(J,Ce){super(J),super.copyFrom(Ce)}expression(){return this.getTypedRuleContext(l,0)}typeSpecifier(){return this.getTypedRuleContext(nt,0)}enterRule(J){J instanceof C&&J.enterTypeExpression(this)}exitRule(J){J instanceof C&&J.exitTypeExpression(this)}}c.TypeExpressionContext=E;class D extends p.ParserRuleContext{constructor(J,Ce,ee){void 0===Ce&&(Ce=null),null==ee&&(ee=-1),super(Ce,ee),this.parser=J,this.ruleIndex=c.RULE_term}copyFrom(J){super.copyFrom(J)}}class R extends D{constructor(J,Ce){super(J),super.copyFrom(Ce)}externalConstant(){return this.getTypedRuleContext(Q,0)}enterRule(J){J instanceof C&&J.enterExternalConstantTerm(this)}exitRule(J){J instanceof C&&J.exitExternalConstantTerm(this)}}c.ExternalConstantTermContext=R;class j extends D{constructor(J,Ce){super(J),super.copyFrom(Ce)}literal(){return this.getTypedRuleContext(k,0)}enterRule(J){J instanceof C&&J.enterLiteralTerm(this)}exitRule(J){J instanceof C&&J.exitLiteralTerm(this)}}c.LiteralTermContext=j;class N extends D{constructor(J,Ce){super(J),super.copyFrom(Ce)}expression(){return this.getTypedRuleContext(l,0)}enterRule(J){J instanceof C&&J.enterParenthesizedTerm(this)}exitRule(J){J instanceof C&&J.exitParenthesizedTerm(this)}}c.ParenthesizedTermContext=N;class S extends D{constructor(J,Ce){super(J),super.copyFrom(Ce)}invocation(){return this.getTypedRuleContext(ue,0)}enterRule(J){J instanceof C&&J.enterInvocationTerm(this)}exitRule(J){J instanceof C&&J.exitInvocationTerm(this)}}c.InvocationTermContext=S;class k extends p.ParserRuleContext{constructor(J,Ce,ee){void 0===Ce&&(Ce=null),null==ee&&(ee=-1),super(Ce,ee),this.parser=J,this.ruleIndex=c.RULE_literal}copyFrom(J){super.copyFrom(J)}}class F extends k{constructor(J,Ce){super(J),super.copyFrom(Ce)}TIME(){return this.getToken(c.TIME,0)}enterRule(J){J instanceof C&&J.enterTimeLiteral(this)}exitRule(J){J instanceof C&&J.exitTimeLiteral(this)}}c.TimeLiteralContext=F;class Y extends k{constructor(J,Ce){super(J),super.copyFrom(Ce)}enterRule(J){J instanceof C&&J.enterNullLiteral(this)}exitRule(J){J instanceof C&&J.exitNullLiteral(this)}}c.NullLiteralContext=Y;class se extends k{constructor(J,Ce){super(J),super.copyFrom(Ce)}DATETIME(){return this.getToken(c.DATETIME,0)}enterRule(J){J instanceof C&&J.enterDateTimeLiteral(this)}exitRule(J){J instanceof C&&J.exitDateTimeLiteral(this)}}c.DateTimeLiteralContext=se;class ne extends k{constructor(J,Ce){super(J),super.copyFrom(Ce)}STRING(){return this.getToken(c.STRING,0)}enterRule(J){J instanceof C&&J.enterStringLiteral(this)}exitRule(J){J instanceof C&&J.exitStringLiteral(this)}}c.StringLiteralContext=ne;class me extends k{constructor(J,Ce){super(J),super.copyFrom(Ce)}enterRule(J){J instanceof C&&J.enterBooleanLiteral(this)}exitRule(J){J instanceof C&&J.exitBooleanLiteral(this)}}c.BooleanLiteralContext=me;class $ extends k{constructor(J,Ce){super(J),super.copyFrom(Ce)}NUMBER(){return this.getToken(c.NUMBER,0)}enterRule(J){J instanceof C&&J.enterNumberLiteral(this)}exitRule(J){J instanceof C&&J.exitNumberLiteral(this)}}c.NumberLiteralContext=$;class q extends k{constructor(J,Ce){super(J),super.copyFrom(Ce)}quantity(){return this.getTypedRuleContext(tt,0)}enterRule(J){J instanceof C&&J.enterQuantityLiteral(this)}exitRule(J){J instanceof C&&J.exitQuantityLiteral(this)}}c.QuantityLiteralContext=q;class Q extends p.ParserRuleContext{constructor(J,Ce,ee){void 0===Ce&&(Ce=null),null==ee&&(ee=-1),super(Ce,ee),this.parser=J,this.ruleIndex=c.RULE_externalConstant}identifier(){return this.getTypedRuleContext(vt,0)}STRING(){return this.getToken(c.STRING,0)}enterRule(J){J instanceof C&&J.enterExternalConstant(this)}exitRule(J){J instanceof C&&J.exitExternalConstant(this)}}class ue extends p.ParserRuleContext{constructor(J,Ce,ee){void 0===Ce&&(Ce=null),null==ee&&(ee=-1),super(Ce,ee),this.parser=J,this.ruleIndex=c.RULE_invocation}copyFrom(J){super.copyFrom(J)}}class Me extends ue{constructor(J,Ce){super(J),super.copyFrom(Ce)}enterRule(J){J instanceof C&&J.enterTotalInvocation(this)}exitRule(J){J instanceof C&&J.exitTotalInvocation(this)}}c.TotalInvocationContext=Me;class Oe extends ue{constructor(J,Ce){super(J),super.copyFrom(Ce)}enterRule(J){J instanceof C&&J.enterThisInvocation(this)}exitRule(J){J instanceof C&&J.exitThisInvocation(this)}}c.ThisInvocationContext=Oe;class Xe extends ue{constructor(J,Ce){super(J),super.copyFrom(Ce)}enterRule(J){J instanceof C&&J.enterIndexInvocation(this)}exitRule(J){J instanceof C&&J.exitIndexInvocation(this)}}c.IndexInvocationContext=Xe;class Be extends ue{constructor(J,Ce){super(J),super.copyFrom(Ce)}functn(){return this.getTypedRuleContext(st,0)}enterRule(J){J instanceof C&&J.enterFunctionInvocation(this)}exitRule(J){J instanceof C&&J.exitFunctionInvocation(this)}}c.FunctionInvocationContext=Be;class $e extends ue{constructor(J,Ce){super(J),super.copyFrom(Ce)}identifier(){return this.getTypedRuleContext(vt,0)}enterRule(J){J instanceof C&&J.enterMemberInvocation(this)}exitRule(J){J instanceof C&&J.exitMemberInvocation(this)}}c.MemberInvocationContext=$e;class st extends p.ParserRuleContext{constructor(J,Ce,ee){void 0===Ce&&(Ce=null),null==ee&&(ee=-1),super(Ce,ee),this.parser=J,this.ruleIndex=c.RULE_functn}identifier(){return this.getTypedRuleContext(vt,0)}paramList(){return this.getTypedRuleContext(Mt,0)}enterRule(J){J instanceof C&&J.enterFunctn(this)}exitRule(J){J instanceof C&&J.exitFunctn(this)}}class Mt extends p.ParserRuleContext{constructor(J,Ce,ee){void 0===Ce&&(Ce=null),null==ee&&(ee=-1),super(Ce,ee),n(this,"expression",function(ae){return void 0===ae&&(ae=null),null===ae?this.getTypedRuleContexts(l):this.getTypedRuleContext(l,ae)}),this.parser=J,this.ruleIndex=c.RULE_paramList}enterRule(J){J instanceof C&&J.enterParamList(this)}exitRule(J){J instanceof C&&J.exitParamList(this)}}class tt extends p.ParserRuleContext{constructor(J,Ce,ee){void 0===Ce&&(Ce=null),null==ee&&(ee=-1),super(Ce,ee),this.parser=J,this.ruleIndex=c.RULE_quantity}NUMBER(){return this.getToken(c.NUMBER,0)}unit(){return this.getTypedRuleContext(St,0)}enterRule(J){J instanceof C&&J.enterQuantity(this)}exitRule(J){J instanceof C&&J.exitQuantity(this)}}class St extends p.ParserRuleContext{constructor(J,Ce,ee){void 0===Ce&&(Ce=null),null==ee&&(ee=-1),super(Ce,ee),this.parser=J,this.ruleIndex=c.RULE_unit}dateTimePrecision(){return this.getTypedRuleContext(bt,0)}pluralDateTimePrecision(){return this.getTypedRuleContext(xt,0)}STRING(){return this.getToken(c.STRING,0)}enterRule(J){J instanceof C&&J.enterUnit(this)}exitRule(J){J instanceof C&&J.exitUnit(this)}}class bt extends p.ParserRuleContext{constructor(J,Ce,ee){void 0===Ce&&(Ce=null),null==ee&&(ee=-1),super(Ce,ee),this.parser=J,this.ruleIndex=c.RULE_dateTimePrecision}enterRule(J){J instanceof C&&J.enterDateTimePrecision(this)}exitRule(J){J instanceof C&&J.exitDateTimePrecision(this)}}class xt extends p.ParserRuleContext{constructor(J,Ce,ee){void 0===Ce&&(Ce=null),null==ee&&(ee=-1),super(Ce,ee),this.parser=J,this.ruleIndex=c.RULE_pluralDateTimePrecision}enterRule(J){J instanceof C&&J.enterPluralDateTimePrecision(this)}exitRule(J){J instanceof C&&J.exitPluralDateTimePrecision(this)}}class nt extends p.ParserRuleContext{constructor(J,Ce,ee){void 0===Ce&&(Ce=null),null==ee&&(ee=-1),super(Ce,ee),this.parser=J,this.ruleIndex=c.RULE_typeSpecifier}qualifiedIdentifier(){return this.getTypedRuleContext(ot,0)}enterRule(J){J instanceof C&&J.enterTypeSpecifier(this)}exitRule(J){J instanceof C&&J.exitTypeSpecifier(this)}}class ot extends p.ParserRuleContext{constructor(J,Ce,ee){void 0===Ce&&(Ce=null),null==ee&&(ee=-1),super(Ce,ee),n(this,"identifier",function(ae){return void 0===ae&&(ae=null),null===ae?this.getTypedRuleContexts(vt):this.getTypedRuleContext(vt,ae)}),this.parser=J,this.ruleIndex=c.RULE_qualifiedIdentifier}enterRule(J){J instanceof C&&J.enterQualifiedIdentifier(this)}exitRule(J){J instanceof C&&J.exitQualifiedIdentifier(this)}}class vt extends p.ParserRuleContext{constructor(J,Ce,ee){void 0===Ce&&(Ce=null),null==ee&&(ee=-1),super(Ce,ee),this.parser=J,this.ruleIndex=c.RULE_identifier}IDENTIFIER(){return this.getToken(c.IDENTIFIER,0)}DELIMITEDIDENTIFIER(){return this.getToken(c.DELIMITEDIDENTIFIER,0)}enterRule(J){J instanceof C&&J.enterIdentifier(this)}exitRule(J){J instanceof C&&J.exitIdentifier(this)}}c.EntireExpressionContext=s,c.ExpressionContext=l,c.TermContext=D,c.LiteralContext=k,c.ExternalConstantContext=Q,c.InvocationContext=ue,c.FunctnContext=st,c.ParamListContext=Mt,c.QuantityContext=tt,c.UnitContext=St,c.DateTimePrecisionContext=bt,c.PluralDateTimePrecisionContext=xt,c.TypeSpecifierContext=nt,c.QualifiedIdentifierContext=ot,c.IdentifierContext=vt,Se.exports=c},7661:(Se,X,g)=>{const n=g(5815),p=g(2472),C=g(8827),b=g(6647);class o extends n.error.ErrorListener{constructor(c){super(),this.errors=c}syntaxError(c,s,l,d,r,u){this.errors.push([c,s,l,d,r,u])}}Se.exports={parse:function(a){var c=new n.InputStream(a),s=new p(c),l=new n.CommonTokenStream(s),d=new C(l);d.buildParseTrees=!0;var r=[],u=new o(r);s.removeErrorListeners(),s.addErrorListener(u),d.removeErrorListeners(),d.addErrorListener(u);var h=d.entireExpression();class m extends b{constructor(){super()}}var M,_={},x=[_];for(let A of Object.getOwnPropertyNames(b.prototype))A.startsWith("enter")?m.prototype[A]=function(T){let O=x[x.length-1];(M={type:A.slice(5)}).text=T.getText(),O.children||(O.children=[]),O.children.push(M),x.push(M),M.terminalNodeText=[];for(let D of T.children)D.symbol&&M.terminalNodeText.push(D.getText())}:A.startsWith("exit")&&(m.prototype[A]=function(){x.pop()});var w=new m;if(n.tree.ParseTreeWalker.DEFAULT.walk(w,h),r.length>0){let A=[];for(let T=0,O=r.length;T{const Se=Function.prototype.call.bind(Array.prototype.slice);Number.isInteger=Number.isInteger||function(X){return"number"==typeof X&&isFinite(X)&&Math.floor(X)===X},String.prototype.startsWith||Object.defineProperty(String.prototype,"startsWith",{value:function(X,g){return this.indexOf(X,g=g||0)===g}}),String.prototype.endsWith||Object.defineProperty(String.prototype,"endsWith",{value:function(X,g){var n=this.toString();(void 0===g||g>n.length)&&(g=n.length);var p=n.indexOf(X,g-=X.length);return-1!==p&&p===g}}),String.prototype.includes||Object.defineProperty(String.prototype,"includes",{value:function(){return-1!==this.indexOf.apply(this,arguments)}}),Object.assign||Object.defineProperty(Object,"assign",{value:function(X){if(null==X)throw new TypeError("Cannot convert undefined or null to object");return Se(arguments,1).reduce(function(g,n){return Object.keys(Object(n)).forEach(function(p){g[p]=n[p]}),g},Object(X))}}),typeof btoa>"u"&&(global.btoa=function(X){return new Buffer.from(X,"binary").toString("base64")}),typeof atob>"u"&&(global.atob=function(X){return new Buffer.from(X,"base64").toString("binary")})},4702:(Se,X,g)=>{const n=g(5827),p=g(6777),C={},b={};C.indexOf=function(a,c){const s=p.singleton(a,"String");return n.isEmpty(c)||n.isEmpty(s)?[]:s.indexOf(c)},C.substring=function(a,c,s){const l=p.singleton(a,"String");return n.isEmpty(l)||n.isEmpty(c)||c<0||c>=l.length?[]:void 0===s||n.isEmpty(s)?l.substring(c):l.substring(c,c+s)},C.startsWith=function(a,c){const s=p.singleton(a,"String");return n.isEmpty(c)||n.isEmpty(s)?[]:s.startsWith(c)},C.endsWith=function(a,c){const s=p.singleton(a,"String");return n.isEmpty(c)||n.isEmpty(s)?[]:s.endsWith(c)},C.containsFn=function(a,c){const s=p.singleton(a,"String");return n.isEmpty(c)||n.isEmpty(s)?[]:s.includes(c)},C.upper=function(a){const c=p.singleton(a,"String");return n.isEmpty(c)?[]:c.toUpperCase()},C.lower=function(a){const c=p.singleton(a,"String");return n.isEmpty(c)?[]:c.toLowerCase()},C.joinFn=function(a,c){return void 0===c&&(c=""),a.map(l=>{const d=n.valData(l);if("string"==typeof d)return d;throw new Error("Join requires a collection of strings.")}).join(c)},C.splitFn=function(a,c){const s=p.singleton(a,"String");return n.isEmpty(s)?[]:s.split(c)},C.trimFn=function(a){const c=p.singleton(a,"String");return n.isEmpty(c)?[]:c.trim()},C.encodeFn=function(a,c){const s=p.singleton(a,"String");return n.isEmpty(s)?[]:"urlbase64"===c||"base64url"===c?btoa(s).replace(/\+/g,"-").replace(/\//g,"_"):"base64"===c?btoa(s):"hex"===c?Array.from(s).map(l=>l.charCodeAt(0)<128?l.charCodeAt(0).toString(16):encodeURIComponent(l).replace(/%/g,"")).join(""):[]},C.decodeFn=function(a,c){const s=p.singleton(a,"String");if(n.isEmpty(s))return[];if("urlbase64"===c||"base64url"===c)return atob(s.replace(/-/g,"+").replace(/_/g,"/"));if("base64"===c)return atob(s);if("hex"===c){if(s.length%2!=0)throw new Error("Decode 'hex' requires an even number of characters.");return decodeURIComponent("%"+s.match(/.{2}/g).join("%"))}return[]},C.matches=!1===new RegExp("").dotAll?function(a,c){const s=p.singleton(a,"String");return n.isEmpty(c)||n.isEmpty(s)?[]:new RegExp(c,"s").test(s)}:function(a,c){const s=p.singleton(a,"String");return n.isEmpty(c)||n.isEmpty(s)?[]:new RegExp(function o(a){return b[a]||(b[a]=a.replace(/\./g,(c,s,l)=>{const r=l.substr(0,s).replace(/\\\\/g,"").replace(/\\[\][]/g,""),u="\\"===r[r.length-1],h=r.lastIndexOf("["),m=r.lastIndexOf("]");return u||h>m?".":"[^]"})),b[a]}(c)).test(s)},C.replace=function(a,c,s){const l=p.singleton(a,"String");if(n.isEmpty(c)||n.isEmpty(s)||n.isEmpty(l))return[];const d=new RegExp(n.escapeStringForRegExp(c),"g");return l.replace(d,s)},C.replaceMatches=function(a,c,s){const l=p.singleton(a,"String");if(n.isEmpty(c)||n.isEmpty(s)||n.isEmpty(l))return[];const d=new RegExp(c,"g");return l.replace(d,s)},C.length=function(a){const c=p.singleton(a,"String");return n.isEmpty(c)?[]:c.length},C.toChars=function(a){const c=p.singleton(a,"String");return n.isEmpty(c)?[]:c.split("")},Se.exports=C},4217:(Se,X,g)=>{var n=g(8416).default;const p=g(3745),C=g(2207).ng.getInstance(),b=g(4192);let v="[0-9][0-9](\\:[0-9][0-9](\\:[0-9][0-9](\\.[0-9]+)?)?)?(Z|(\\+|-)[0-9][0-9]\\:[0-9][0-9])?",a=new RegExp("^T?"+v+"$"),c=new RegExp("^[0-9][0-9][0-9][0-9](-[0-9][0-9](-[0-9][0-9](T"+v+")?)?)?Z?$"),s=new RegExp("^[0-9][0-9][0-9][0-9](-[0-9][0-9](-[0-9][0-9])?)?$");class l{equals(){return!1}equivalentTo(){return!1}toString(){return this.asStr?this.asStr:super.toString()}toJSON(){return this.toString()}compare(){throw"Not implemented"}}class d extends l{constructor(E,D){super(),this.asStr=E+" "+D,this.value=E,this.unit=D}equals(E){if(!(E instanceof this.constructor))return!1;if(this.unit===E.unit)return b.isEqual(this.value,E.value);const D=this._compareYearsAndMonths(E);if(D)return D.isEqual;const R=d.toUcumQuantity(this.value,this.unit),j=d.toUcumQuantity(E.value,E.unit),N=C.convertUnitTo(j.unit,j.value,R.unit);return"succeeded"===N.status&&b.isEqual(R.value,N.toVal)}equivalentTo(E){if(!(E instanceof this.constructor))return!1;if(this.unit===E.unit)return b.isEquivalent(this.value,E.value);const D=d.getEquivalentUcumUnitCode(this.unit),R=d.getEquivalentUcumUnitCode(E.unit),j=C.convertUnitTo(R,E.value,D);return"succeeded"===j.status&&b.isEquivalent(this.value,j.toVal)}_compareYearsAndMonths(E){const D=d._yearMonthConversionFactor[this.unit],R=d._yearMonthConversionFactor[E.unit];return D&&R?{isEqual:b.isEqual(this.value*D,E.value*R)}:null}}const r=/^'|'$/g;d.getEquivalentUcumUnitCode=function(O){return d.mapTimeUnitsToUCUMCode[O]||O.replace(r,"")},d.toUcumQuantity=function(O,E){const D=d._calendarDuration2Seconds[E];return D?{value:D*O,unit:"s"}:{value:O,unit:E.replace(r,"")}},d.convUnitTo=function(O,E,D){const R=d._yearMonthConversionFactor[O],j=d._yearMonthConversionFactor[D];if(R&&j)return new d(R*E/j,D);const N=d._calendarDuration2Seconds[O],S=d._calendarDuration2Seconds[D];if(S){if(N)return new d(N*E/S,D);{const k=C.convertUnitTo(O.replace(/^'|'$/g,""),E,"s");if("succeeded"===k.status)return new d(k.toVal/S,D)}}else{const k=N?C.convertUnitTo("s",N*E,D.replace(/^'|'$/g,"")):C.convertUnitTo(O.replace(/^'|'$/g,""),E,D.replace(/^'|'$/g,""));if("succeeded"===k.status)return new d(k.toVal,D)}return null},d._calendarDuration2Seconds={years:31536e3,months:2592e3,weeks:604800,days:86400,hours:3600,minutes:60,seconds:1,milliseconds:.001,year:31536e3,month:2592e3,week:604800,day:86400,hour:3600,minute:60,second:1,millisecond:.001},d._yearMonthConversionFactor={years:12,months:1,year:12,month:1},d.arithmeticDurationUnits={years:"year",months:"month",weeks:"week",days:"day",hours:"hour",minutes:"minute",seconds:"second",milliseconds:"millisecond",year:"year",month:"month",week:"week",day:"day",hour:"hour",minute:"minute",second:"second",millisecond:"millisecond","'wk'":"week","'d'":"day","'h'":"hour","'min'":"minute","'s'":"second","'ms'":"millisecond"},d.mapUCUMCodeToTimeUnits={a:"year",mo:"month",wk:"week",d:"day",h:"hour",min:"minute",s:"second",ms:"millisecond"},d.mapTimeUnitsToUCUMCode=Object.keys(d.mapUCUMCodeToTimeUnits).reduce(function(O,E){return O[d.mapUCUMCodeToTimeUnits[E]]=E,O[d.mapUCUMCodeToTimeUnits[E]+"s"]=E,O},{});class u extends l{constructor(E){super(),this.asStr=E}plus(E){let R=d.arithmeticDurationUnits[E.unit];if(!R)throw new Error("For date/time arithmetic, the unit of the quantity must be one of the following time-based units: "+Object.keys(d.arithmeticDurationUnits));const j=this.constructor,N=j._timeUnitToDatePrecision[R];if(void 0===N)throw new Error("Unsupported unit for +. The unit should be one of "+Object.keys(j._timeUnitToDatePrecision).join(", ")+".");let S=E.value;const k=j===m;if((k?N<2:N<5)&&(S=Math.trunc(S)),this._getPrecision()2?new h(S)._getTimeParts():this._getTimeParts(),Y=j>2?new h(k)._getTimeParts():E._getTimeParts(),se=0;se<=N&&!1!==D;++se)D=F[se]==Y[se];D&&(D=void 0)}}else D=!1;return D}equivalentTo(E){var D=E instanceof this.constructor;return D&&(D=this._getPrecision()==E._getPrecision())&&(D=this._getDateObj().getTime()==E._getDateObj().getTime()),D}compare(E){var D=this._getPrecision(),R=E._getPrecision(),j=D<=R?this._getDateObj().getTime():this._dateAtPrecision(R).getTime(),N=R<=D?E._getDateObj().getTime():E._dateAtPrecision(D).getTime();return D!==R&&j===N?null:j-N}_getPrecision(){return void 0===this.precision&&this._getMatchData(),this.precision}_getMatchData(E,D){if(void 0===this.timeMatchData&&(this.timeMatchData=this.asStr.match(E),this.timeMatchData))for(let R=D;R>=0&&void 0===this.precision;--R)this.timeMatchData[R]&&(this.precision=R);return this.timeMatchData}_getTimeParts(E){var D=[];D=[E[0]];var R=E[4];if(R){let k=D[0];D[0]=k.slice(0,k.length-R.length)}var j=E[1];if(j){let k=D[0];D[0]=k.slice(0,k.length-j.length),D[1]=j;var N=E[2];if(N){D[1]=j.slice(0,j.length-N.length),D[2]=N;var S=E[3];S&&(D[2]=N.slice(0,N.length-S.length),D[3]=S)}}return D}_getDateObj(){if(!this.dateObj){var E=this._getPrecision();this.dateObj=this._dateAtPrecision(E)}return this.dateObj}_createDate(E,D,R,j,N,S,k,F){var Y=new Date(E,D,R,j,N,S,k);if(F){var se=Y.getTimezoneOffset(),ne=0;if("Z"!=F){var me=F.split(":"),$=parseInt(me[0]);ne=parseInt(me[1]),$<0&&(ne=-ne),ne+=60*$}Y=p(Y,-se-ne)}return Y}}u.timeUnitToAddFn={year:g(3763),month:g(1277),week:g(338),day:g(2860),hour:g(6888),minute:g(3745),second:g(3857),millisecond:g(3895)};let h=(()=>{class O extends u{constructor(D){super(D)}compare(D){if(!(D instanceof O))throw"Invalid comparison of a DateTime with something else";return super.compare(D)}_getMatchData(){return super._getMatchData(c,5)}_getTimeParts(){if(!this.timeParts){let R=this._getMatchData(),j=R[0];this.timeParts=[j];var D=R[1];if(D){this.timeParts[0]=j.slice(0,j.length-D.length),this.timeParts[1]=D;let N=R[2];if(N){this.timeParts[1]=D.slice(0,D.length-N.length),this.timeParts[2]=N;let S=R[3];S&&(this.timeParts[2]=N.slice(0,N.length-S.length),"T"===S[0]&&(R[3]=S.slice(1)),this.timeParts=this.timeParts.concat(super._getTimeParts(R.slice(3))))}}}return this.timeParts}_dateAtPrecision(D){var R=this._getTimeParts(),j=this._getMatchData()[7],N=this._getPrecision(),S=parseInt(R[0]),k=N>0?parseInt(R[1].slice(1))-1:0,F=N>1?parseInt(R[2].slice(1)):1,Y=N>2?parseInt(R[3]):0,se=N>3?parseInt(R[4].slice(1)):0,ne=N>4?parseInt(R[5].slice(1)):0,me=R.length>6?parseInt(R[6].slice(1)):0,$=this._createDate(S,k,F,Y,se,ne,me,j);return D0?$.getMonth():0,F=D>1?$.getDate():1,Y=D>2?$.getHours():0,se=D>3?$.getMinutes():0,$=new Date(S,k,F,Y,se)),$}}return O.checkString=function(E){let D=new O(E);return D._getMatchData()||(D=null),D},O._timeUnitToDatePrecision={year:0,month:1,week:2,day:2,hour:3,minute:4,second:5,millisecond:6},O._datePrecisionToTimeUnit=["year","month","day","hour","minute","second","millisecond"],O})(),m=(()=>{class O extends u{constructor(D){"T"==D[0]&&(D=D.slice(1)),super(D)}compare(D){if(!(D instanceof O))throw"Invalid comparison of a time with something else";return super.compare(D)}_dateAtPrecision(D){var R=this._getTimeParts(),j=this._getMatchData()[4],N=this._getPrecision(),S=2010,Y=parseInt(R[0]),se=N>0?parseInt(R[1].slice(1)):0,ne=N>1?parseInt(R[2].slice(1)):0,me=R.length>3?parseInt(R[3].slice(1)):0,$=this._createDate(S,0,1,Y,se,ne,me,j);return j&&($.setYear(S),$.setMonth(0),$.setDate(1)),D0?$.getMinutes():0,$=new Date(S,0,1,Y,se)),$}_getMatchData(){return super._getMatchData(a,2)}_getTimeParts(){return this.timeParts||(this.timeParts=super._getTimeParts(this._getMatchData())),this.timeParts}}return O.checkString=function(E){let D=new O(E);return D._getMatchData()||(D=null),D},O._timeUnitToDatePrecision={hour:0,minute:1,second:2,millisecond:3},O._datePrecisionToTimeUnit=["hour","minute","second","millisecond"],O})();function _(O,E){var D=O;return 3===E&&O<100&&(D="0"+O),O<10&&(D="0"+D),D}h.isoDateTime=function(O,E){void 0===E&&(E=5);var D=""+O.getFullYear();if(E>0&&(D+="-"+_(O.getMonth()+1),E>1&&(D+="-"+_(O.getDate()),E>2&&(D+="T"+h.isoTime(O,E-3)))),E>2){var R=O.getTimezoneOffset(),j=R<0?"+":"-",N=(R=Math.abs(R))%60;D+=j+_((R-N)/60)+":"+_(N)}return D},h.isoTime=function(O,E){void 0===E&&(E=2);let D=""+_(O.getHours());return E>0&&(D+=":"+_(O.getMinutes()),E>1&&(D+=":"+_(O.getSeconds()),O.getMilliseconds()&&(D+="."+_(O.getMilliseconds(),3)))),D};let M=(()=>{class O extends h{constructor(D){super(D)}_getMatchData(){return u.prototype._getMatchData.apply(this,[s,2])}}return O.checkString=function(E){let D=new O(E);return D._getMatchData()||(D=null),D},O.isoDate=function(E,D){return(void 0===D||D>2)&&(D=2),h.isoDateTime(E,D)},O})(),x=(()=>{class O{constructor(D,R,j){D?.resourceType&&(R=D.resourceType),this.path=R,this.data=D,this._data=j||{}}getTypeInfo(){const D=w.FHIR;return/^System\.(.*)$/.test(this.path)?new w({namespace:w.System,name:RegExp.$1}):-1===this.path.indexOf(".")?new w({namespace:D,name:this.path}):w.model?new w({namespace:D,name:"BackboneElement"}):w.createByValueInNamespace({namespace:D,value:this.data})}toJSON(){return JSON.stringify(this.data)}convertData(){var D=this.data;if(w.isType(this.path,"Quantity")){if("http://unitsofmeasure.org"===D?.system&&"number"==typeof D.value&&"string"==typeof D.code){if(void 0!==D.comparator)throw new Error("Cannot convert a FHIR.Quantity that has a comparator");D=new d(D.value,d.mapUCUMCodeToTimeUnits[D.code]||"'"+D.code+"'")}}else"date"===this.path?D=M.checkString(D)||D:"dateTime"===this.path?D=h.checkString(D)||D:"time"===this.path&&(D=m.checkString(D)||D);return D}}return O.makeResNode=function(E,D,R){return E instanceof O?E:new O(E,D,R)},O})(),w=(()=>{class O{constructor({name:D,namespace:R}){this.name=D,this.namespace=R}is(D){return D instanceof O&&(!this.namespace||!D.namespace||this.namespace===D.namespace)&&(!O.model||this.namespace&&this.namespace!==O.FHIR?this.name===D.name:O.isType(this.name,D.name))}}return n(O,"model",null),O.isType=function(E,D){do{if(E===D)return!0}while(E=O.model?.type2Parent[E]);return!1},O.System="System",O.FHIR="FHIR",O.createByValueInNamespace=function({namespace:E,value:D}){let R=typeof D;return Number.isInteger(D)?R="integer":"number"===R?R="decimal":D instanceof M?R="date":D instanceof h?R="dateTime":D instanceof m?R="time":D instanceof d&&(R="Quantity"),E===O.System&&(R=R.replace(/^\w/,j=>j.toUpperCase())),new O({namespace:E,name:R})},O.fromValue=function(E){return E instanceof x?E.getTypeInfo():O.createByValueInNamespace({namespace:O.System,value:E})},O})();Se.exports={FP_Type:l,FP_TimeBase:u,FP_Date:M,FP_DateTime:h,FP_Time:m,FP_Quantity:d,timeRE:a,dateTimeRE:c,ResourceNode:x,TypeInfo:w,typeFn:function L(O){return O.map(E=>w.fromValue(E))},isFn:function A(O,E){if(0===O.length)return[];if(O.length>1)throw new Error("Expected singleton on left side of 'is', got "+JSON.stringify(O));return w.fromValue(O[0]).is(E)},asFn:function T(O,E){if(0===O.length)return[];if(O.length>1)throw new Error("Expected singleton on left side of 'as', got "+JSON.stringify(O));return w.fromValue(O[0]).is(E)?O:[]}}},5827:(Se,X,g)=>{const n={},p=g(4217);let{ResourceNode:C}=p;n.raiseError=function(b,o){throw(o=o?o+": ":"")+b},n.assertAtMostOne=function(b,o){b.length>1&&n.raiseError("Was expecting no more than one element but got "+JSON.stringify(b),o)},n.assertType=function(b,o,v){let a=this.valData(b);if(o.indexOf(typeof a)<0){let c=o.length>1?"one of "+o.join(", "):o[0];n.raiseError("Found type '"+typeof b+"' but was expecting "+c,v)}return a},n.isEmpty=function(b){return Array.isArray(b)&&0==b.length},n.isSome=function(b){return null!=b&&!n.isEmpty(b)},n.isTrue=function(b){return null!=b&&(!0===b||1==b.length&&!0===b[0])},n.isFalse=function(b){return null!=b&&(!1===b||1==b.length&&!1===b[0])},n.isCapitalized=function(b){return b&&b[0]===b[0].toUpperCase()},n.flatten=function(b){return b.reduce(function(o,v){return Array.isArray(v)?o=o.concat(v):o.push(v),o},[])},n.arraify=function(b){return Array.isArray(b)?b:n.isSome(b)?[b]:[]},n.valData=function(b){return b instanceof C?b.data:b},n.valDataConverted=function(b){return b instanceof C&&(b=b.convertData()),b},n.escapeStringForRegExp=function(b){return b.replace(/[-[\]{}()*+?.,\\/^$|#\s]/g,"\\$&")},Se.exports=n},220:Se=>{"use strict";Se.exports=function(X,g){for(var n={},p=Object.keys(X),C=Array.isArray(g),b=0;b{!function(Se,X){"use strict";var g="hljs-ln",n="hljs-ln-line",p="hljs-ln-code",C="hljs-ln-numbers",b="hljs-ln-n",o="data-line-number",v=/\r\n|\r|\n/g;function r(S){try{var k=X.querySelectorAll("code.hljs,code.nohighlight");for(var F in k)k.hasOwnProperty(F)&&(u(k[F])||h(k[F],S))}catch(Y){Se.console.error("LineNumbers error: ",Y)}}function u(S){return S.classList.contains("nohljsln")}function h(S,k){"object"==typeof S&&function D(S){Se.setTimeout(S,0)}(function(){S.innerHTML=_(S,k)})}function _(S,k){var F=function x(S,k){return{singleLine:w(k=k||{}),startFrom:L(S,k)}}(S,k);return A(S),function M(S,k){var F=O(S);if(""===F[F.length-1].trim()&&F.pop(),F.length>1||k.singleLine){for(var Y="",se=0,ne=F.length;se
{6}',[n,C,b,o,p,se+k.startFrom,F[se].length>0?F[se]:" "]);return R('{1}
',[g,Y])}return S}(S.innerHTML,F)}function w(S){return!!S.singleLine&&S.singleLine}function L(S,k){var Y=1;isFinite(k.startFrom)&&(Y=k.startFrom);var se=function j(S,k){return S.hasAttribute(k)?S.getAttribute(k):null}(S,"data-ln-start-from");return null!==se&&(Y=function N(S,k){if(!S)return k;var F=Number(S);return isFinite(F)?F:k}(se,1)),Y}function A(S){var k=S.childNodes;for(var F in k)if(k.hasOwnProperty(F)){var Y=k[F];E(Y.textContent)>0&&(Y.childNodes.length>0?A(Y):T(Y.parentNode))}}function T(S){var k=S.className;if(/hljs-/.test(k)){for(var F=O(S.innerHTML),Y=0,se="";Y{1}\n',[k,F[Y].length>0?F[Y]:" "]);S.innerHTML=se.trim()}}function O(S){return 0===S.length?[]:S.split(v)}function E(S){return(S.trim().match(v)||[]).length}function R(S,k){return S.replace(/\{(\d+)\}/g,function(F,Y){return void 0!==k[Y]?k[Y]:F})}Se.hljs?(Se.hljs.initLineNumbersOnLoad=function d(S){"interactive"===X.readyState||"complete"===X.readyState?r(S):Se.addEventListener("DOMContentLoaded",function(){r(S)})},Se.hljs.lineNumbersBlock=h,Se.hljs.lineNumbersValue=function m(S,k){if("string"==typeof S){var F=document.createElement("code");return F.innerHTML=S,_(F,k)}},function l(){var S=X.createElement("style");S.type="text/css",S.innerHTML=R(".{0}{border-collapse:collapse}.{0} td{padding:0}.{1}:before{content:attr({2})}",[g,b,o]),X.getElementsByTagName("head")[0].appendChild(S)}()):Se.console.error("highlight.js not detected!"),document.addEventListener("copy",function(S){var F,k=window.getSelection();(function a(S){for(var k=S;k;){if(k.className&&-1!==k.className.indexOf("hljs-ln-code"))return!0;k=k.parentNode}return!1})(k.anchorNode)&&(F=-1!==window.navigator.userAgent.indexOf("Edge")?function s(S){for(var k=S.toString(),F=S.anchorNode;"TD"!==F.nodeName;)F=F.parentNode;for(var Y=S.focusNode;"TD"!==Y.nodeName;)Y=Y.parentNode;var se=parseInt(F.dataset.lineNumber),ne=parseInt(Y.dataset.lineNumber);if(se!=ne){var me=F.textContent,$=Y.textContent;if(se>ne){var q=se;se=ne,ne=q,q=me,me=$,$=q}for(;0!==k.indexOf(me);)me=me.slice(1);for(;-1===k.lastIndexOf($);)$=$.slice(0,-1);for(var Q=me,ue=function c(S){for(var k=S;"TABLE"!==k.nodeName;)k=k.parentNode;return k}(F),Me=se+1;Me{"use strict";Se.exports=Number.isFinite||function(X){return!("number"!=typeof X||X!=X||X===1/0||X===-1/0)}},4864:(Se,X,g)=>{var n=g(9136);Se.exports=Number.isInteger||function(p){return"number"==typeof p&&n(p)&&Math.floor(p)===p}},1328:function(Se,X){var g,p;void 0!==(p="function"==typeof(g=function(){"use strict";function C(l){function d(_){for(var M=0,x=r.length;M127){if(a>191&&a<224){if(t>=e.length)throw"UTF-8 decode: incomplete 2-byte sequence";a=(31&a)<<6|63&e[t]}else if(a>223&&a<240){if(t+1>=e.length)throw"UTF-8 decode: incomplete 3-byte sequence";a=(15&a)<<12|(63&e[t])<<6|63&e[++t]}else{if(!(a>239&&a<248))throw"UTF-8 decode: unknown multibyte start 0x"+a.toString(16)+" at index "+(t-1);if(t+2>=e.length)throw"UTF-8 decode: incomplete 4-byte sequence";a=(7&a)<<18|(63&e[t])<<12|(63&e[++t])<<6|63&e[++t]}++t}if(a<=65535)r+=String.fromCharCode(a);else{if(!(a<=1114111))throw"UTF-8 decode: code point 0x"+a.toString(16)+" exceeds UTF-16 reach";a-=65536,r+=String.fromCharCode(a>>10|55296),r+=String.fromCharCode(1023&a|56320)}}return r}function PaxHeader(e){this._fields=e}function TarFile(){}function UntarStream(e){this._bufferView=new DataView(e),this._position=0}function UntarFileStream(e){this._stream=new UntarStream(e),this._globalPaxHeader=null}if(UntarWorker.prototype={onmessage:function(e){try{if("extract"!==e.data.type)throw new Error("Unknown message type: "+e.data.type);this.untarBuffer(e.data.buffer)}catch(r){this.postError(r)}},postError:function(e){this.postMessage({type:"error",data:{message:e.message}})},postLog:function(e,r){this.postMessage({type:"log",data:{level:e,msg:r}})},untarBuffer:function(e){try{for(var r=new UntarFileStream(e);r.hasNext();){var t=r.next();this.postMessage({type:"extract",data:t},[t.buffer])}this.postMessage({type:"complete"})}catch(a){this.postError(a)}},postMessage:function(e,r){self.postMessage(e,r)}},"undefined"!=typeof self){var worker=new UntarWorker;self.onmessage=function(e){worker.onmessage(e)}}PaxHeader.parse=function(e){for(var r=new Uint8Array(e),t=[];r.length>0;){var a=parseInt(decodeUTF8(r.subarray(0,r.indexOf(32)))),n=decodeUTF8(r.subarray(0,a)),i=n.match(/^\\d+ ([^=]+)=(.*)\\n$/);if(null===i)throw new Error("Invalid PAX header data format.");var s=i[1],o=i[2];0===o.length?o=null:null!==o.match(/^\\d+$/)&&(o=parseInt(o));var f={name:s,value:o};t.push(f),r=r.subarray(a)}return new PaxHeader(t)},PaxHeader.prototype={applyHeader:function(e){this._fields.forEach(function(r){var t=r.name,a=r.value;"path"===t?(t="name",void 0!==e.prefix&&delete e.prefix):"linkpath"===t&&(t="linkname"),null===a?delete e[t]:e[t]=a})}},UntarStream.prototype={readString:function(e){for(var r=1,t=e*r,a=[],n=0;n-1&&(r.version=e.readString(2),r.uname=e.readString(32),r.gname=e.readString(32),r.devmajor=parseInt(e.readString(8)),r.devminor=parseInt(e.readString(8)),r.namePrefix=e.readString(155),r.namePrefix.length>0&&(r.name=r.namePrefix+"/"+r.name)),e.position(i),r.type){case"0":case"":r.buffer=e.readBuffer(r.size);break;case"1":break;case"2":break;case"3":break;case"4":break;case"5":break;case"6":break;case"7":break;case"g":t=!0,this._globalPaxHeader=PaxHeader.parse(e.readBuffer(r.size));break;case"x":t=!0,a=PaxHeader.parse(e.readBuffer(r.size))}void 0===r.buffer&&(r.buffer=new ArrayBuffer(0));var s=i+r.size;return r.size%512!==0&&(s+=512-r.size%512),e.position(s),t&&(r=this._readNextFile()),null!==this._globalPaxHeader&&this._globalPaxHeader.applyHeader(r),null!==a&&a.applyHeader(r),r}};'])),function b(l){if(!(l instanceof ArrayBuffer))throw new TypeError("arrayBuffer is not an instance of ArrayBuffer.");if(!a.Worker)throw new Error("Worker implementation is not available in this environment.");return new C(function(d,r,u){var h=new Worker(v),m=[];h.onerror=function(_){r(_)},h.onmessage=function(_){switch((_=_.data).type){case"log":console[_.data.level]("Worker: "+_.data.msg);break;case"extract":var M=function o(l){return Object.defineProperties(l,s),l}(_.data);m.push(M),u(M);break;case"complete":h.terminate(),d(m);break;case"error":h.terminate(),r(new Error(_.data.message));break;default:h.terminate(),r(new Error("Unknown message from worker: "+_.type))}},h.postMessage({type:"extract",buffer:l},[l])})}})?g.apply(X,[]):g)&&(Se.exports=p)},3187:(Se,X)=>{function n(p,C){var b=[],o=[];return null==C&&(C=function(v,a){return b[0]===a?"[Circular ~]":"[Circular ~."+o.slice(0,b.indexOf(a)).join(".")+"]"}),function(v,a){if(b.length>0){var c=b.indexOf(this);~c?b.splice(c+1):b.push(this),~c?o.splice(c,1/0,v):o.push(v),~b.indexOf(a)&&(a=C.call(this,v,a))}else b.push(a);return null==p?a:p.call(this,v,a)}}(Se.exports=function g(p,C,b,o){return JSON.stringify(p,n(C,o),b)}).getSerialize=n},7253:Se=>{var X=1e3,g=60*X,n=60*g,p=24*n;function c(s,l,d,r){var u=l>=1.5*d;return Math.round(s/d)+" "+r+(u?"s":"")}Se.exports=function(s,l){l=l||{};var d=typeof s;if("string"===d&&s.length>0)return function o(s){if(!((s=String(s)).length>100)){var l=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(s);if(l){var d=parseFloat(l[1]);switch((l[2]||"ms").toLowerCase()){case"years":case"year":case"yrs":case"yr":case"y":return 315576e5*d;case"weeks":case"week":case"w":return 6048e5*d;case"days":case"day":case"d":return d*p;case"hours":case"hour":case"hrs":case"hr":case"h":return d*n;case"minutes":case"minute":case"mins":case"min":case"m":return d*g;case"seconds":case"second":case"secs":case"sec":case"s":return d*X;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return d;default:return}}}}(s);if("number"===d&&isFinite(s))return l.long?function a(s){var l=Math.abs(s);return l>=p?c(s,l,p,"day"):l>=n?c(s,l,n,"hour"):l>=g?c(s,l,g,"minute"):l>=X?c(s,l,X,"second"):s+" ms"}(s):function v(s){var l=Math.abs(s);return l>=p?Math.round(s/p)+"d":l>=n?Math.round(s/n)+"h":l>=g?Math.round(s/g)+"m":l>=X?Math.round(s/X)+"s":s+"ms"}(s);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(s))}},4783:Se=>{"use strict";const X=typeof self<"u"?self:typeof window<"u"?window:void 0;if(!X)throw new Error("Unable to find global scope. Are you sure this is running in the browser?");if(!X.AbortController)throw new Error('Could not find "AbortController" in the global scope. You need to polyfill it first');Se.exports.AbortController=X.AbortController},133:(Se,X,g)=>{"use strict";const n=g(8385),p=g(4989),C=g(6144),b=g(220),v=Symbol("encodeFragmentIdentifier");function s(x){if("string"!=typeof x||1!==x.length)throw new TypeError("arrayFormatSeparator must be single character string")}function l(x,w){return w.encode?w.strict?n(x):encodeURIComponent(x):x}function d(x,w){return w.decode?p(x):x}function r(x){return Array.isArray(x)?x.sort():"object"==typeof x?r(Object.keys(x)).sort((w,L)=>Number(w)-Number(L)).map(w=>x[w]):x}function u(x){const w=x.indexOf("#");return-1!==w&&(x=x.slice(0,w)),x}function m(x){const w=(x=u(x)).indexOf("?");return-1===w?"":x.slice(w+1)}function _(x,w){return w.parseNumbers&&!Number.isNaN(Number(x))&&"string"==typeof x&&""!==x.trim()?x=Number(x):w.parseBooleans&&null!==x&&("true"===x.toLowerCase()||"false"===x.toLowerCase())&&(x="true"===x.toLowerCase()),x}function M(x,w){s((w=Object.assign({decode:!0,sort:!0,arrayFormat:"none",arrayFormatSeparator:",",parseNumbers:!1,parseBooleans:!1},w)).arrayFormatSeparator);const L=function c(x){let w;switch(x.arrayFormat){case"index":return(L,A,T)=>{w=/\[(\d*)\]$/.exec(L),L=L.replace(/\[\d*\]$/,""),w?(void 0===T[L]&&(T[L]={}),T[L][w[1]]=A):T[L]=A};case"bracket":return(L,A,T)=>{w=/(\[\])$/.exec(L),T[L=L.replace(/\[\]$/,"")]=w?void 0!==T[L]?[].concat(T[L],A):[A]:A};case"colon-list-separator":return(L,A,T)=>{w=/(:list)$/.exec(L),T[L=L.replace(/:list$/,"")]=w?void 0!==T[L]?[].concat(T[L],A):[A]:A};case"comma":case"separator":return(L,A,T)=>{const O="string"==typeof A&&A.includes(x.arrayFormatSeparator),E="string"==typeof A&&!O&&d(A,x).includes(x.arrayFormatSeparator);A=E?d(A,x):A;const D=O||E?A.split(x.arrayFormatSeparator).map(R=>d(R,x)):null===A?A:d(A,x);T[L]=D};case"bracket-separator":return(L,A,T)=>{const O=/(\[\])$/.test(L);if(L=L.replace(/\[\]$/,""),!O)return void(T[L]=A&&d(A,x));const E=null===A?[]:A.split(x.arrayFormatSeparator).map(D=>d(D,x));T[L]=void 0!==T[L]?[].concat(T[L],E):E};default:return(L,A,T)=>{T[L]=void 0!==T[L]?[].concat(T[L],A):A}}}(w),A=Object.create(null);if("string"!=typeof x||!(x=x.trim().replace(/^[?#&]/,"")))return A;for(const T of x.split("&")){if(""===T)continue;let[O,E]=C(w.decode?T.replace(/\+/g," "):T,"=");E=void 0===E?null:["comma","separator","bracket-separator"].includes(w.arrayFormat)?E:d(E,w),L(d(O,w),E,A)}for(const T of Object.keys(A)){const O=A[T];if("object"==typeof O&&null!==O)for(const E of Object.keys(O))O[E]=_(O[E],w);else A[T]=_(O,w)}return!1===w.sort?A:(!0===w.sort?Object.keys(A).sort():Object.keys(A).sort(w.sort)).reduce((T,O)=>{const E=A[O];return T[O]=E&&"object"==typeof E&&!Array.isArray(E)?r(E):E,T},Object.create(null))}X.extract=m,X.parse=M,X.stringify=(x,w)=>{if(!x)return"";s((w=Object.assign({encode:!0,strict:!0,arrayFormat:"none",arrayFormatSeparator:","},w)).arrayFormatSeparator);const L=E=>w.skipNull&&(x=>null==x)(x[E])||w.skipEmptyString&&""===x[E],A=function a(x){switch(x.arrayFormat){case"index":return w=>(L,A)=>{const T=L.length;return void 0===A||x.skipNull&&null===A||x.skipEmptyString&&""===A?L:null===A?[...L,[l(w,x),"[",T,"]"].join("")]:[...L,[l(w,x),"[",l(T,x),"]=",l(A,x)].join("")]};case"bracket":return w=>(L,A)=>void 0===A||x.skipNull&&null===A||x.skipEmptyString&&""===A?L:null===A?[...L,[l(w,x),"[]"].join("")]:[...L,[l(w,x),"[]=",l(A,x)].join("")];case"colon-list-separator":return w=>(L,A)=>void 0===A||x.skipNull&&null===A||x.skipEmptyString&&""===A?L:null===A?[...L,[l(w,x),":list="].join("")]:[...L,[l(w,x),":list=",l(A,x)].join("")];case"comma":case"separator":case"bracket-separator":{const w="bracket-separator"===x.arrayFormat?"[]=":"=";return L=>(A,T)=>void 0===T||x.skipNull&&null===T||x.skipEmptyString&&""===T?A:(T=null===T?"":T,0===A.length?[[l(L,x),w,l(T,x)].join("")]:[[A,l(T,x)].join(x.arrayFormatSeparator)])}default:return w=>(L,A)=>void 0===A||x.skipNull&&null===A||x.skipEmptyString&&""===A?L:null===A?[...L,l(w,x)]:[...L,[l(w,x),"=",l(A,x)].join("")]}}(w),T={};for(const E of Object.keys(x))L(E)||(T[E]=x[E]);const O=Object.keys(T);return!1!==w.sort&&O.sort(w.sort),O.map(E=>{const D=x[E];return void 0===D?"":null===D?l(E,w):Array.isArray(D)?0===D.length&&"bracket-separator"===w.arrayFormat?l(E,w)+"[]":D.reduce(A(E),[]).join("&"):l(E,w)+"="+l(D,w)}).filter(E=>E.length>0).join("&")},X.parseUrl=(x,w)=>{w=Object.assign({decode:!0},w);const[L,A]=C(x,"#");return Object.assign({url:L.split("?")[0]||"",query:M(m(x),w)},w&&w.parseFragmentIdentifier&&A?{fragmentIdentifier:d(A,w)}:{})},X.stringifyUrl=(x,w)=>{w=Object.assign({encode:!0,strict:!0,[v]:!0},w);const L=u(x.url).split("?")[0]||"",A=X.extract(x.url),T=X.parse(A,{sort:!1}),O=Object.assign(T,x.query);let E=X.stringify(O,w);E&&(E=`?${E}`);let D=function h(x){let w="";const L=x.indexOf("#");return-1!==L&&(w=x.slice(L)),w}(x.url);return x.fragmentIdentifier&&(D=`#${w[v]?l(x.fragmentIdentifier,w):x.fragmentIdentifier}`),`${L}${E}${D}`},X.pick=(x,w,L)=>{L=Object.assign({parseFragmentIdentifier:!0,[v]:!1},L);const{url:A,query:T,fragmentIdentifier:O}=X.parseUrl(x,L);return X.stringifyUrl({url:A,query:b(T,w),fragmentIdentifier:O},L)},X.exclude=(x,w,L)=>{const A=Array.isArray(w)?T=>!w.includes(T):(T,O)=>!w(T,O);return X.pick(x,A,L)}},5619:(Se,X,g)=>{"use strict";g.d(X,{X:()=>p});var n=g(8645);class p extends n.x{constructor(b){super(),this._value=b}get value(){return this.getValue()}_subscribe(b){const o=super._subscribe(b);return!o.closed&&b.next(this._value),o}getValue(){const{hasError:b,thrownError:o,_value:v}=this;if(b)throw o;return this._throwIfClosed(),v}next(b){super.next(this._value=b)}}},5592:(Se,X,g)=>{"use strict";g.d(X,{y:()=>c});var n=g(305),p=g(7394),C=g(4850),b=g(8407),o=g(2653),v=g(4674),a=g(1441);let c=(()=>{class r{constructor(h){h&&(this._subscribe=h)}lift(h){const m=new r;return m.source=this,m.operator=h,m}subscribe(h,m,_){const M=function d(r){return r&&r instanceof n.Lv||function l(r){return r&&(0,v.m)(r.next)&&(0,v.m)(r.error)&&(0,v.m)(r.complete)}(r)&&(0,p.Nn)(r)}(h)?h:new n.Hp(h,m,_);return(0,a.x)(()=>{const{operator:x,source:w}=this;M.add(x?x.call(M,w):w?this._subscribe(M):this._trySubscribe(M))}),M}_trySubscribe(h){try{return this._subscribe(h)}catch(m){h.error(m)}}forEach(h,m){return new(m=s(m))((_,M)=>{const x=new n.Hp({next:w=>{try{h(w)}catch(L){M(L),x.unsubscribe()}},error:M,complete:_});this.subscribe(x)})}_subscribe(h){var m;return null===(m=this.source)||void 0===m?void 0:m.subscribe(h)}[C.L](){return this}pipe(...h){return(0,b.U)(h)(this)}toPromise(h){return new(h=s(h))((m,_)=>{let M;this.subscribe(x=>M=x,x=>_(x),()=>m(M))})}}return r.create=u=>new r(u),r})();function s(r){var u;return null!==(u=r??o.config.Promise)&&void 0!==u?u:Promise}},7328:(Se,X,g)=>{"use strict";g.d(X,{t:()=>C});var n=g(8645),p=g(4552);class C extends n.x{constructor(o=1/0,v=1/0,a=p.l){super(),this._bufferSize=o,this._windowTime=v,this._timestampProvider=a,this._buffer=[],this._infiniteTimeWindow=!0,this._infiniteTimeWindow=v===1/0,this._bufferSize=Math.max(1,o),this._windowTime=Math.max(1,v)}next(o){const{isStopped:v,_buffer:a,_infiniteTimeWindow:c,_timestampProvider:s,_windowTime:l}=this;v||(a.push(o),!c&&a.push(s.now()+l)),this._trimBuffer(),super.next(o)}_subscribe(o){this._throwIfClosed(),this._trimBuffer();const v=this._innerSubscribe(o),{_infiniteTimeWindow:a,_buffer:c}=this,s=c.slice();for(let l=0;l{"use strict";g.d(X,{x:()=>a});var n=g(5592),p=g(7394);const b=(0,g(2306).d)(s=>function(){s(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"});var o=g(9039),v=g(1441);let a=(()=>{class s extends n.y{constructor(){super(),this.closed=!1,this.currentObservers=null,this.observers=[],this.isStopped=!1,this.hasError=!1,this.thrownError=null}lift(d){const r=new c(this,this);return r.operator=d,r}_throwIfClosed(){if(this.closed)throw new b}next(d){(0,v.x)(()=>{if(this._throwIfClosed(),!this.isStopped){this.currentObservers||(this.currentObservers=Array.from(this.observers));for(const r of this.currentObservers)r.next(d)}})}error(d){(0,v.x)(()=>{if(this._throwIfClosed(),!this.isStopped){this.hasError=this.isStopped=!0,this.thrownError=d;const{observers:r}=this;for(;r.length;)r.shift().error(d)}})}complete(){(0,v.x)(()=>{if(this._throwIfClosed(),!this.isStopped){this.isStopped=!0;const{observers:d}=this;for(;d.length;)d.shift().complete()}})}unsubscribe(){this.isStopped=this.closed=!0,this.observers=this.currentObservers=null}get observed(){var d;return(null===(d=this.observers)||void 0===d?void 0:d.length)>0}_trySubscribe(d){return this._throwIfClosed(),super._trySubscribe(d)}_subscribe(d){return this._throwIfClosed(),this._checkFinalizedStatuses(d),this._innerSubscribe(d)}_innerSubscribe(d){const{hasError:r,isStopped:u,observers:h}=this;return r||u?p.Lc:(this.currentObservers=null,h.push(d),new p.w0(()=>{this.currentObservers=null,(0,o.P)(h,d)}))}_checkFinalizedStatuses(d){const{hasError:r,thrownError:u,isStopped:h}=this;r?d.error(u):h&&d.complete()}asObservable(){const d=new n.y;return d.source=this,d}}return s.create=(l,d)=>new c(l,d),s})();class c extends a{constructor(l,d){super(),this.destination=l,this.source=d}next(l){var d,r;null===(r=null===(d=this.destination)||void 0===d?void 0:d.next)||void 0===r||r.call(d,l)}error(l){var d,r;null===(r=null===(d=this.destination)||void 0===d?void 0:d.error)||void 0===r||r.call(d,l)}complete(){var l,d;null===(d=null===(l=this.destination)||void 0===l?void 0:l.complete)||void 0===d||d.call(l)}_subscribe(l){var d,r;return null!==(r=null===(d=this.source)||void 0===d?void 0:d.subscribe(l))&&void 0!==r?r:p.Lc}}},305:(Se,X,g)=>{"use strict";g.d(X,{Hp:()=>_,Lv:()=>r});var n=g(4674),p=g(7394),C=g(2653),b=g(3894),o=g(2420);const v=s("C",void 0,void 0);function s(A,T,O){return{kind:A,value:T,error:O}}var l=g(7599),d=g(1441);class r extends p.w0{constructor(T){super(),this.isStopped=!1,T?(this.destination=T,(0,p.Nn)(T)&&T.add(this)):this.destination=L}static create(T,O,E){return new _(T,O,E)}next(T){this.isStopped?w(function c(A){return s("N",A,void 0)}(T),this):this._next(T)}error(T){this.isStopped?w(function a(A){return s("E",void 0,A)}(T),this):(this.isStopped=!0,this._error(T))}complete(){this.isStopped?w(v,this):(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe(),this.destination=null)}_next(T){this.destination.next(T)}_error(T){try{this.destination.error(T)}finally{this.unsubscribe()}}_complete(){try{this.destination.complete()}finally{this.unsubscribe()}}}const u=Function.prototype.bind;function h(A,T){return u.call(A,T)}class m{constructor(T){this.partialObserver=T}next(T){const{partialObserver:O}=this;if(O.next)try{O.next(T)}catch(E){M(E)}}error(T){const{partialObserver:O}=this;if(O.error)try{O.error(T)}catch(E){M(E)}else M(T)}complete(){const{partialObserver:T}=this;if(T.complete)try{T.complete()}catch(O){M(O)}}}class _ extends r{constructor(T,O,E){let D;if(super(),(0,n.m)(T)||!T)D={next:T??void 0,error:O??void 0,complete:E??void 0};else{let R;this&&C.config.useDeprecatedNextContext?(R=Object.create(T),R.unsubscribe=()=>this.unsubscribe(),D={next:T.next&&h(T.next,R),error:T.error&&h(T.error,R),complete:T.complete&&h(T.complete,R)}):D=T}this.destination=new m(D)}}function M(A){C.config.useDeprecatedSynchronousErrorHandling?(0,d.O)(A):(0,b.h)(A)}function w(A,T){const{onStoppedNotification:O}=C.config;O&&l.z.setTimeout(()=>O(A,T))}const L={closed:!0,next:o.Z,error:function x(A){throw A},complete:o.Z}},7394:(Se,X,g)=>{"use strict";g.d(X,{Lc:()=>v,w0:()=>o,Nn:()=>a});var n=g(4674);const C=(0,g(2306).d)(s=>function(d){s(this),this.message=d?`${d.length} errors occurred during unsubscription:\n${d.map((r,u)=>`${u+1}) ${r.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=d});var b=g(9039);class o{constructor(l){this.initialTeardown=l,this.closed=!1,this._parentage=null,this._finalizers=null}unsubscribe(){let l;if(!this.closed){this.closed=!0;const{_parentage:d}=this;if(d)if(this._parentage=null,Array.isArray(d))for(const h of d)h.remove(this);else d.remove(this);const{initialTeardown:r}=this;if((0,n.m)(r))try{r()}catch(h){l=h instanceof C?h.errors:[h]}const{_finalizers:u}=this;if(u){this._finalizers=null;for(const h of u)try{c(h)}catch(m){l=l??[],m instanceof C?l=[...l,...m.errors]:l.push(m)}}if(l)throw new C(l)}}add(l){var d;if(l&&l!==this)if(this.closed)c(l);else{if(l instanceof o){if(l.closed||l._hasParent(this))return;l._addParent(this)}(this._finalizers=null!==(d=this._finalizers)&&void 0!==d?d:[]).push(l)}}_hasParent(l){const{_parentage:d}=this;return d===l||Array.isArray(d)&&d.includes(l)}_addParent(l){const{_parentage:d}=this;this._parentage=Array.isArray(d)?(d.push(l),d):d?[d,l]:l}_removeParent(l){const{_parentage:d}=this;d===l?this._parentage=null:Array.isArray(d)&&(0,b.P)(d,l)}remove(l){const{_finalizers:d}=this;d&&(0,b.P)(d,l),l instanceof o&&l._removeParent(this)}}o.EMPTY=(()=>{const s=new o;return s.closed=!0,s})();const v=o.EMPTY;function a(s){return s instanceof o||s&&"closed"in s&&(0,n.m)(s.remove)&&(0,n.m)(s.add)&&(0,n.m)(s.unsubscribe)}function c(s){(0,n.m)(s)?s():s.unsubscribe()}},2653:(Se,X,g)=>{"use strict";g.d(X,{config:()=>n});const n={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1}},3168:(Se,X,g)=>{"use strict";g.d(X,{c:()=>v});var n=g(5592),p=g(7394),C=g(6196),b=g(8251),o=g(9360);class v extends n.y{constructor(c,s){super(),this.source=c,this.subjectFactory=s,this._subject=null,this._refCount=0,this._connection=null,(0,o.A)(c)&&(this.lift=c.lift)}_subscribe(c){return this.getSubject().subscribe(c)}getSubject(){const c=this._subject;return(!c||c.isStopped)&&(this._subject=this.subjectFactory()),this._subject}_teardown(){this._refCount=0;const{_connection:c}=this;this._subject=this._connection=null,c?.unsubscribe()}connect(){let c=this._connection;if(!c){c=this._connection=new p.w0;const s=this.getSubject();c.add(this.source.subscribe((0,b.x)(s,void 0,()=>{this._teardown(),s.complete()},l=>{this._teardown(),s.error(l)},()=>this._teardown()))),c.closed&&(this._connection=null,c=p.w0.EMPTY)}return c}refCount(){return(0,C.x)()(this)}}},2572:(Se,X,g)=>{"use strict";g.d(X,{a:()=>l,l:()=>d});var n=g(5592),p=g(7453),C=g(2459),b=g(2737),o=g(7400),v=g(9940),a=g(2714),c=g(8251),s=g(7103);function l(...u){const h=(0,v.yG)(u),m=(0,v.jO)(u),{args:_,keys:M}=(0,p.D)(u);if(0===_.length)return(0,C.D)([],h);const x=new n.y(d(_,h,M?w=>(0,a.n)(M,w):b.y));return m?x.pipe((0,o.Z)(m)):x}function d(u,h,m=b.y){return _=>{r(h,()=>{const{length:M}=u,x=new Array(M);let w=M,L=M;for(let A=0;A{const T=(0,C.D)(u[A],h);let O=!1;T.subscribe((0,c.x)(_,E=>{x[A]=E,O||(O=!0,L--),L||_.next(m(x.slice()))},()=>{--w||_.complete()}))},_)},_)}}function r(u,h,m){u?(0,s.f)(m,u,h):h()}},34:(Se,X,g)=>{"use strict";g.d(X,{z:()=>b});var n=g(1948),p=g(9940),C=g(2459);function b(...o){return(0,n.u)()((0,C.D)(o,(0,p.yG)(o)))}},4911:(Se,X,g)=>{"use strict";g.d(X,{P:()=>C});var n=g(5592),p=g(4829);function C(b){return new n.y(o=>{(0,p.Xf)(b()).subscribe(o)})}},6232:(Se,X,g)=>{"use strict";g.d(X,{E:()=>p});const p=new(g(5592).y)(o=>o.complete())},9315:(Se,X,g)=>{"use strict";g.d(X,{D:()=>c});var n=g(5592),p=g(7453),C=g(4829),b=g(9940),o=g(8251),v=g(7400),a=g(2714);function c(...s){const l=(0,b.jO)(s),{args:d,keys:r}=(0,p.D)(s),u=new n.y(h=>{const{length:m}=d;if(!m)return void h.complete();const _=new Array(m);let M=m,x=m;for(let w=0;w{L||(L=!0,x--),_[w]=A},()=>M--,void 0,()=>{(!M||!L)&&(x||h.next(r?(0,a.n)(r,_):_),h.complete())}))}});return l?u.pipe((0,v.Z)(l)):u}},2459:(Se,X,g)=>{"use strict";g.d(X,{D:()=>T});var n=g(4829),p=g(3093),C=g(5137),v=g(5592),c=g(4971),s=g(4674),l=g(7103);function r(O,E){if(!O)throw new Error("Iterable cannot be null");return new v.y(D=>{(0,l.f)(D,E,()=>{const R=O[Symbol.asyncIterator]();(0,l.f)(D,E,()=>{R.next().then(j=>{j.done?D.complete():D.next(j.value)})},0,!0)})})}var u=g(8382),h=g(4026),m=g(4266),_=g(3664),M=g(5726),x=g(9853),w=g(541);function T(O,E){return E?function A(O,E){if(null!=O){if((0,u.c)(O))return function b(O,E){return(0,n.Xf)(O).pipe((0,C.R)(E),(0,p.Q)(E))}(O,E);if((0,m.z)(O))return function a(O,E){return new v.y(D=>{let R=0;return E.schedule(function(){R===O.length?D.complete():(D.next(O[R++]),D.closed||this.schedule())})})}(O,E);if((0,h.t)(O))return function o(O,E){return(0,n.Xf)(O).pipe((0,C.R)(E),(0,p.Q)(E))}(O,E);if((0,M.D)(O))return r(O,E);if((0,_.T)(O))return function d(O,E){return new v.y(D=>{let R;return(0,l.f)(D,E,()=>{R=O[c.h](),(0,l.f)(D,E,()=>{let j,N;try{({value:j,done:N}=R.next())}catch(S){return void D.error(S)}N?D.complete():D.next(j)},0,!0)}),()=>(0,s.m)(R?.return)&&R.return()})}(O,E);if((0,w.L)(O))return function L(O,E){return r((0,w.Q)(O),E)}(O,E)}throw(0,x.z)(O)}(O,E):(0,n.Xf)(O)}},2438:(Se,X,g)=>{"use strict";g.d(X,{R:()=>l});var n=g(4829),p=g(5592),C=g(9769),b=g(4266),o=g(4674),v=g(7400);const a=["addListener","removeListener"],c=["addEventListener","removeEventListener"],s=["on","off"];function l(m,_,M,x){if((0,o.m)(M)&&(x=M,M=void 0),x)return l(m,_,M).pipe((0,v.Z)(x));const[w,L]=function h(m){return(0,o.m)(m.addEventListener)&&(0,o.m)(m.removeEventListener)}(m)?c.map(A=>T=>m[A](_,T,M)):function r(m){return(0,o.m)(m.addListener)&&(0,o.m)(m.removeListener)}(m)?a.map(d(m,_)):function u(m){return(0,o.m)(m.on)&&(0,o.m)(m.off)}(m)?s.map(d(m,_)):[];if(!w&&(0,b.z)(m))return(0,C.z)(A=>l(A,_,M))((0,n.Xf)(m));if(!w)throw new TypeError("Invalid event target");return new p.y(A=>{const T=(...O)=>A.next(1L(T)})}function d(m,_){return M=>x=>m[M](_,x)}},4829:(Se,X,g)=>{"use strict";g.d(X,{Xf:()=>u});var n=g(655),p=g(4266),C=g(4026),b=g(5592),o=g(8382),v=g(5726),a=g(9853),c=g(3664),s=g(541),l=g(4674),d=g(3894),r=g(4850);function u(A){if(A instanceof b.y)return A;if(null!=A){if((0,o.c)(A))return function h(A){return new b.y(T=>{const O=A[r.L]();if((0,l.m)(O.subscribe))return O.subscribe(T);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}(A);if((0,p.z)(A))return function m(A){return new b.y(T=>{for(let O=0;O{A.then(O=>{T.closed||(T.next(O),T.complete())},O=>T.error(O)).then(null,d.h)})}(A);if((0,v.D)(A))return x(A);if((0,c.T)(A))return function M(A){return new b.y(T=>{for(const O of A)if(T.next(O),T.closed)return;T.complete()})}(A);if((0,s.L)(A))return function w(A){return x((0,s.Q)(A))}(A)}throw(0,a.z)(A)}function x(A){return new b.y(T=>{(function L(A,T){var O,E,D,R;return(0,n.__awaiter)(this,void 0,void 0,function*(){try{for(O=(0,n.__asyncValues)(A);!(E=yield O.next()).done;)if(T.next(E.value),T.closed)return}catch(j){D={error:j}}finally{try{E&&!E.done&&(R=O.return)&&(yield R.call(O))}finally{if(D)throw D.error}}T.complete()})})(A,T).catch(O=>T.error(O))})}},3019:(Se,X,g)=>{"use strict";g.d(X,{T:()=>v});var n=g(7537),p=g(4829),C=g(6232),b=g(9940),o=g(2459);function v(...a){const c=(0,b.yG)(a),s=(0,b._6)(a,1/0),l=a;return l.length?1===l.length?(0,p.Xf)(l[0]):(0,n.J)(s)((0,o.D)(l,c)):C.E}},2096:(Se,X,g)=>{"use strict";g.d(X,{of:()=>C});var n=g(9940),p=g(2459);function C(...b){const o=(0,n.yG)(b);return(0,p.D)(b,o)}},3684:(Se,X,g)=>{"use strict";g.d(X,{R:()=>v,S:()=>o});var n=g(5592),p=g(4829),C=g(7728),b=g(8251);function o(...a){return 1===(a=(0,C.k)(a)).length?(0,p.Xf)(a[0]):new n.y(v(a))}function v(a){return c=>{let s=[];for(let l=0;s&&!c.closed&&l{if(s){for(let r=0;r{"use strict";g.d(X,{_:()=>C});var n=g(5592),p=g(4674);function C(b,o){const v=(0,p.m)(b)?b:()=>b,a=c=>c.error(v());return new n.y(o?c=>o.schedule(a,0,c):a)}},9080:(Se,X,g)=>{"use strict";g.d(X,{H:()=>o});var n=g(5592),p=g(6321),C=g(671),b=g(93);function o(v=0,a,c=p.P){let s=-1;return null!=a&&((0,C.K)(a)?c=a:s=a),new n.y(l=>{let d=(0,b.q)(v)?+v-c.now():v;d<0&&(d=0);let r=0;return c.schedule(function(){l.closed||(l.next(r++),0<=s?this.schedule(void 0,s):l.complete())},d)})}},9278:(Se,X,g)=>{"use strict";g.d(X,{$:()=>a});var n=g(5592),p=g(4829),C=g(7728),b=g(6232),o=g(8251),v=g(9940);function a(...c){const s=(0,v.jO)(c),l=(0,C.k)(c);return l.length?new n.y(d=>{let r=l.map(()=>[]),u=l.map(()=>!1);d.add(()=>{r=u=null});for(let h=0;!d.closed&&h{if(r[h].push(m),r.every(_=>_.length)){const _=r.map(M=>M.shift());d.next(s?s(..._):_),r.some((M,x)=>!M.length&&u[x])&&d.complete()}},()=>{u[h]=!0,!r[h].length&&d.complete()}));return()=>{r=u=null}}):b.E}},8251:(Se,X,g)=>{"use strict";g.d(X,{Q:()=>C,x:()=>p});var n=g(305);function p(b,o,v,a,c){return new C(b,o,v,a,c)}class C extends n.Lv{constructor(o,v,a,c,s,l){super(o),this.onFinalize=s,this.shouldUnsubscribe=l,this._next=v?function(d){try{v(d)}catch(r){o.error(r)}}:super._next,this._error=c?function(d){try{c(d)}catch(r){o.error(r)}finally{this.unsubscribe()}}:super._error,this._complete=a?function(){try{a()}catch(d){o.error(d)}finally{this.unsubscribe()}}:super._complete}unsubscribe(){var o;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){const{closed:v}=this;super.unsubscribe(),!v&&(null===(o=this.onFinalize)||void 0===o||o.call(this))}}}},6301:(Se,X,g)=>{"use strict";g.d(X,{U:()=>b});var n=g(9360),p=g(4829),C=g(8251);function b(o){return(0,n.e)((v,a)=>{let c=!1,s=null,l=null,d=!1;const r=()=>{if(l?.unsubscribe(),l=null,c){c=!1;const h=s;s=null,a.next(h)}d&&a.complete()},u=()=>{l=null,d&&a.complete()};v.subscribe((0,C.x)(a,h=>{c=!0,s=h,l||(0,p.Xf)(o(h)).subscribe(l=(0,C.x)(a,r,u))},()=>{d=!0,(!c||!l||l.closed)&&a.complete()}))})}},8672:(Se,X,g)=>{"use strict";g.d(X,{e:()=>b});var n=g(6321),p=g(6301),C=g(9080);function b(o,v=n.z){return(0,p.U)(()=>(0,C.H)(o,v))}},6306:(Se,X,g)=>{"use strict";g.d(X,{K:()=>b});var n=g(4829),p=g(8251),C=g(9360);function b(o){return(0,C.e)((v,a)=>{let l,c=null,s=!1;c=v.subscribe((0,p.x)(a,void 0,void 0,d=>{l=(0,n.Xf)(o(d,b(o)(v))),c?(c.unsubscribe(),c=null,l.subscribe(a)):s=!0})),s&&(c.unsubscribe(),c=null,l.subscribe(a))})}},1948:(Se,X,g)=>{"use strict";g.d(X,{u:()=>p});var n=g(7537);function p(){return(0,n.J)(1)}},6328:(Se,X,g)=>{"use strict";g.d(X,{b:()=>C});var n=g(9769),p=g(4674);function C(b,o){return(0,p.m)(o)?(0,n.z)(b,o,1):(0,n.z)(b,1)}},3620:(Se,X,g)=>{"use strict";g.d(X,{b:()=>b});var n=g(6321),p=g(9360),C=g(8251);function b(o,v=n.z){return(0,p.e)((a,c)=>{let s=null,l=null,d=null;const r=()=>{if(s){s.unsubscribe(),s=null;const h=l;l=null,c.next(h)}};function u(){const h=d+o,m=v.now();if(m{l=h,d=v.now(),s||(s=v.schedule(u,o),c.add(s))},()=>{r(),c.complete()},void 0,()=>{l=s=null}))})}},3572:(Se,X,g)=>{"use strict";g.d(X,{d:()=>C});var n=g(9360),p=g(8251);function C(b){return(0,n.e)((o,v)=>{let a=!1;o.subscribe((0,p.x)(v,c=>{a=!0,v.next(c)},()=>{a||v.next(b),v.complete()}))})}},7547:(Se,X,g)=>{"use strict";g.d(X,{g:()=>b});var n=g(6321),p=g(4610),C=g(9080);function b(o,v=n.z){const a=(0,C.H)(o,v);return(0,p.j)(()=>a)}},4610:(Se,X,g)=>{"use strict";g.d(X,{j:()=>a});var n=g(34),p=g(8180),C=g(7538),b=g(975),o=g(9769),v=g(4829);function a(c,s){return s?l=>(0,n.z)(s.pipe((0,p.q)(1),(0,C.l)()),l.pipe(a(c))):(0,o.z)((l,d)=>(0,v.Xf)(c(l,d)).pipe((0,p.q)(1),(0,b.h)(l)))}},3997:(Se,X,g)=>{"use strict";g.d(X,{x:()=>b});var n=g(2737),p=g(9360),C=g(8251);function b(v,a=n.y){return v=v??o,(0,p.e)((c,s)=>{let l,d=!0;c.subscribe((0,C.x)(s,r=>{const u=a(r);(d||!v(l,u))&&(d=!1,l=u,s.next(r))}))})}function o(v,a){return v===a}},2181:(Se,X,g)=>{"use strict";g.d(X,{h:()=>C});var n=g(9360),p=g(8251);function C(b,o){return(0,n.e)((v,a)=>{let c=0;v.subscribe((0,p.x)(a,s=>b.call(o,s,c++)&&a.next(s)))})}},4716:(Se,X,g)=>{"use strict";g.d(X,{x:()=>p});var n=g(9360);function p(C){return(0,n.e)((b,o)=>{try{b.subscribe(o)}finally{o.add(C)}})}},1374:(Se,X,g)=>{"use strict";g.d(X,{P:()=>a});var n=g(6973),p=g(2181),C=g(8180),b=g(3572),o=g(3026),v=g(2737);function a(c,s){const l=arguments.length>=2;return d=>d.pipe(c?(0,p.h)((r,u)=>c(r,u,d)):v.y,(0,C.q)(1),l?(0,b.d)(s):(0,o.T)(()=>new n.K))}},7538:(Se,X,g)=>{"use strict";g.d(X,{l:()=>b});var n=g(9360),p=g(8251),C=g(2420);function b(){return(0,n.e)((o,v)=>{o.subscribe((0,p.x)(v,C.Z))})}},2032:(Se,X,g)=>{"use strict";g.d(X,{Z:()=>a});var n=g(6973),p=g(2181),C=g(4418),b=g(3026),o=g(3572),v=g(2737);function a(c,s){const l=arguments.length>=2;return d=>d.pipe(c?(0,p.h)((r,u)=>c(r,u,d)):v.y,(0,C.h)(1),l?(0,o.d)(s):(0,b.T)(()=>new n.K))}},7398:(Se,X,g)=>{"use strict";g.d(X,{U:()=>C});var n=g(9360),p=g(8251);function C(b,o){return(0,n.e)((v,a)=>{let c=0;v.subscribe((0,p.x)(a,s=>{a.next(b.call(o,s,c++))}))})}},975:(Se,X,g)=>{"use strict";g.d(X,{h:()=>p});var n=g(7398);function p(C){return(0,n.U)(()=>C)}},7537:(Se,X,g)=>{"use strict";g.d(X,{J:()=>C});var n=g(9769),p=g(2737);function C(b=1/0){return(0,n.z)(p.y,b)}},564:(Se,X,g)=>{"use strict";g.d(X,{p:()=>b});var n=g(4829),p=g(7103),C=g(8251);function b(o,v,a,c,s,l,d,r){const u=[];let h=0,m=0,_=!1;const M=()=>{_&&!u.length&&!h&&v.complete()},x=L=>h{l&&v.next(L),h++;let A=!1;(0,n.Xf)(a(L,m++)).subscribe((0,C.x)(v,T=>{s?.(T),l?x(T):v.next(T)},()=>{A=!0},void 0,()=>{if(A)try{for(h--;u.length&&hw(T)):w(T)}M()}catch(T){v.error(T)}}))};return o.subscribe((0,C.x)(v,x,()=>{_=!0,M()})),()=>{r?.()}}},9769:(Se,X,g)=>{"use strict";g.d(X,{z:()=>v});var n=g(7398),p=g(4829),C=g(9360),b=g(564),o=g(4674);function v(a,c,s=1/0){return(0,o.m)(c)?v((l,d)=>(0,n.U)((r,u)=>c(l,r,d,u))((0,p.Xf)(a(l,d))),s):("number"==typeof c&&(s=c),(0,C.e)((l,d)=>(0,b.p)(l,d,a,s)))}},3093:(Se,X,g)=>{"use strict";g.d(X,{Q:()=>b});var n=g(7103),p=g(9360),C=g(8251);function b(o,v=0){return(0,p.e)((a,c)=>{a.subscribe((0,C.x)(c,s=>(0,n.f)(c,o,()=>c.next(s),v),()=>(0,n.f)(c,o,()=>c.complete(),v),s=>(0,n.f)(c,o,()=>c.error(s),v)))})}},6196:(Se,X,g)=>{"use strict";g.d(X,{x:()=>C});var n=g(9360),p=g(8251);function C(){return(0,n.e)((b,o)=>{let v=null;b._refCount++;const a=(0,p.x)(o,void 0,void 0,void 0,()=>{if(!b||b._refCount<=0||0<--b._refCount)return void(v=null);const c=b._connection,s=v;v=null,c&&(!s||c===s)&&c.unsubscribe(),o.unsubscribe()});b.subscribe(a),a.closed||(v=b.connect())})}},6424:(Se,X,g)=>{"use strict";g.d(X,{R:()=>C});var n=g(9360),p=g(9732);function C(b,o){return(0,n.e)((0,p.U)(b,o,arguments.length>=2,!0))}},9732:(Se,X,g)=>{"use strict";g.d(X,{U:()=>p});var n=g(8251);function p(C,b,o,v,a){return(c,s)=>{let l=o,d=b,r=0;c.subscribe((0,n.x)(s,u=>{const h=r++;d=l?C(d,u,h):(l=!0,u),v&&s.next(d)},a&&(()=>{l&&s.next(d),s.complete()})))}}},3020:(Se,X,g)=>{"use strict";g.d(X,{B:()=>o});var n=g(4829),p=g(8645),C=g(305),b=g(9360);function o(a={}){const{connector:c=(()=>new p.x),resetOnError:s=!0,resetOnComplete:l=!0,resetOnRefCountZero:d=!0}=a;return r=>{let u,h,m,_=0,M=!1,x=!1;const w=()=>{h?.unsubscribe(),h=void 0},L=()=>{w(),u=m=void 0,M=x=!1},A=()=>{const T=u;L(),T?.unsubscribe()};return(0,b.e)((T,O)=>{_++,!x&&!M&&w();const E=m=m??c();O.add(()=>{_--,0===_&&!x&&!M&&(h=v(A,d))}),E.subscribe(O),!u&&_>0&&(u=new C.Hp({next:D=>E.next(D),error:D=>{x=!0,w(),h=v(L,s,D),E.error(D)},complete:()=>{M=!0,w(),h=v(L,l),E.complete()}}),(0,n.Xf)(T).subscribe(u))})(r)}}function v(a,c,...s){if(!0===c)return void a();if(!1===c)return;const l=new C.Hp({next:()=>{l.unsubscribe(),a()}});return(0,n.Xf)(c(...s)).subscribe(l)}},7081:(Se,X,g)=>{"use strict";g.d(X,{d:()=>C});var n=g(7328),p=g(3020);function C(b,o,v){let a,c=!1;return b&&"object"==typeof b?({bufferSize:a=1/0,windowTime:o=1/0,refCount:c=!1,scheduler:v}=b):a=b??1/0,(0,p.B)({connector:()=>new n.t(a,o,v),resetOnError:!0,resetOnComplete:!1,resetOnRefCountZero:c})}},836:(Se,X,g)=>{"use strict";g.d(X,{T:()=>p});var n=g(2181);function p(C){return(0,n.h)((b,o)=>C<=o)}},7921:(Se,X,g)=>{"use strict";g.d(X,{O:()=>b});var n=g(34),p=g(9940),C=g(9360);function b(...o){const v=(0,p.yG)(o);return(0,C.e)((a,c)=>{(v?(0,n.z)(o,a,v):(0,n.z)(o,a)).subscribe(c)})}},5137:(Se,X,g)=>{"use strict";g.d(X,{R:()=>p});var n=g(9360);function p(C,b=0){return(0,n.e)((o,v)=>{v.add(C.schedule(()=>o.subscribe(v),b))})}},4664:(Se,X,g)=>{"use strict";g.d(X,{w:()=>b});var n=g(4829),p=g(9360),C=g(8251);function b(o,v){return(0,p.e)((a,c)=>{let s=null,l=0,d=!1;const r=()=>d&&!s&&c.complete();a.subscribe((0,C.x)(c,u=>{s?.unsubscribe();let h=0;const m=l++;(0,n.Xf)(o(u,m)).subscribe(s=(0,C.x)(c,_=>c.next(v?v(u,_,m,h++):_),()=>{s=null,r()}))},()=>{d=!0,r()}))})}},8180:(Se,X,g)=>{"use strict";g.d(X,{q:()=>b});var n=g(6232),p=g(9360),C=g(8251);function b(o){return o<=0?()=>n.E:(0,p.e)((v,a)=>{let c=0;v.subscribe((0,C.x)(a,s=>{++c<=o&&(a.next(s),o<=c&&a.complete())}))})}},4418:(Se,X,g)=>{"use strict";g.d(X,{h:()=>b});var n=g(6232),p=g(9360),C=g(8251);function b(o){return o<=0?()=>n.E:(0,p.e)((v,a)=>{let c=[];v.subscribe((0,C.x)(a,s=>{c.push(s),o{for(const s of c)a.next(s);a.complete()},void 0,()=>{c=null}))})}},9773:(Se,X,g)=>{"use strict";g.d(X,{R:()=>o});var n=g(9360),p=g(8251),C=g(4829),b=g(2420);function o(v){return(0,n.e)((a,c)=>{(0,C.Xf)(v).subscribe((0,p.x)(c,()=>c.complete(),b.Z)),!c.closed&&a.subscribe(c)})}},812:(Se,X,g)=>{"use strict";g.d(X,{o:()=>C});var n=g(9360),p=g(8251);function C(b,o=!1){return(0,n.e)((v,a)=>{let c=0;v.subscribe((0,p.x)(a,s=>{const l=b(s,c++);(l||o)&&a.next(s),!l&&a.complete()}))})}},9397:(Se,X,g)=>{"use strict";g.d(X,{b:()=>o});var n=g(4674),p=g(9360),C=g(8251),b=g(2737);function o(v,a,c){const s=(0,n.m)(v)||a||c?{next:v,error:a,complete:c}:v;return s?(0,p.e)((l,d)=>{var r;null===(r=s.subscribe)||void 0===r||r.call(s);let u=!0;l.subscribe((0,C.x)(d,h=>{var m;null===(m=s.next)||void 0===m||m.call(s,h),d.next(h)},()=>{var h;u=!1,null===(h=s.complete)||void 0===h||h.call(s),d.complete()},h=>{var m;u=!1,null===(m=s.error)||void 0===m||m.call(s,h),d.error(h)},()=>{var h,m;u&&(null===(h=s.unsubscribe)||void 0===h||h.call(s)),null===(m=s.finalize)||void 0===m||m.call(s)}))}):b.y}},3026:(Se,X,g)=>{"use strict";g.d(X,{T:()=>b});var n=g(6973),p=g(9360),C=g(8251);function b(v=o){return(0,p.e)((a,c)=>{let s=!1;a.subscribe((0,C.x)(c,l=>{s=!0,c.next(l)},()=>s?c.complete():c.error(v())))})}function o(){return new n.K}},5178:(Se,X,g)=>{"use strict";g.d(X,{V:()=>s});var n=g(6321),p=g(93),C=g(9360),b=g(4829),o=g(2306),v=g(8251),a=g(7103);const c=(0,o.d)(d=>function(u=null){d(this),this.message="Timeout has occurred",this.name="TimeoutError",this.info=u});function s(d,r){const{first:u,each:h,with:m=l,scheduler:_=r??n.z,meta:M=null}=(0,p.q)(d)?{first:d}:"number"==typeof d?{each:d}:d;if(null==u&&null==h)throw new TypeError("No timeout provided.");return(0,C.e)((x,w)=>{let L,A,T=null,O=0;const E=D=>{A=(0,a.f)(w,_,()=>{try{L.unsubscribe(),(0,b.Xf)(m({meta:M,lastValue:T,seen:O})).subscribe(w)}catch(R){w.error(R)}},D)};L=x.subscribe((0,v.x)(w,D=>{A?.unsubscribe(),O++,w.next(T=D),h>0&&E(h)},void 0,void 0,()=>{A?.closed||A?.unsubscribe(),T=null})),!O&&E(null!=u?"number"==typeof u?u:+u-_.now():h)})}function l(d){throw new c(d)}},1954:(Se,X,g)=>{"use strict";g.d(X,{o:()=>o});var n=g(7394);class p extends n.w0{constructor(a,c){super()}schedule(a,c=0){return this}}const C={setInterval(v,a,...c){const{delegate:s}=C;return s?.setInterval?s.setInterval(v,a,...c):setInterval(v,a,...c)},clearInterval(v){const{delegate:a}=C;return(a?.clearInterval||clearInterval)(v)},delegate:void 0};var b=g(9039);class o extends p{constructor(a,c){super(a,c),this.scheduler=a,this.work=c,this.pending=!1}schedule(a,c=0){var s;if(this.closed)return this;this.state=a;const l=this.id,d=this.scheduler;return null!=l&&(this.id=this.recycleAsyncId(d,l,c)),this.pending=!0,this.delay=c,this.id=null!==(s=this.id)&&void 0!==s?s:this.requestAsyncId(d,this.id,c),this}requestAsyncId(a,c,s=0){return C.setInterval(a.flush.bind(a,this),s)}recycleAsyncId(a,c,s=0){if(null!=s&&this.delay===s&&!1===this.pending)return c;null!=c&&C.clearInterval(c)}execute(a,c){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;const s=this._execute(a,c);if(s)return s;!1===this.pending&&null!=this.id&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))}_execute(a,c){let l,s=!1;try{this.work(a)}catch(d){s=!0,l=d||new Error("Scheduled action threw falsy error")}if(s)return this.unsubscribe(),l}unsubscribe(){if(!this.closed){const{id:a,scheduler:c}=this,{actions:s}=c;this.work=this.state=this.scheduler=null,this.pending=!1,(0,b.P)(s,this),null!=a&&(this.id=this.recycleAsyncId(c,a,null)),this.delay=null,super.unsubscribe()}}}},2631:(Se,X,g)=>{"use strict";g.d(X,{v:()=>C});var n=g(4552);class p{constructor(o,v=p.now){this.schedulerActionCtor=o,this.now=v}schedule(o,v=0,a){return new this.schedulerActionCtor(this,o).schedule(a,v)}}p.now=n.l.now;class C extends p{constructor(o,v=p.now){super(o,v),this.actions=[],this._active=!1}flush(o){const{actions:v}=this;if(this._active)return void v.push(o);let a;this._active=!0;do{if(a=o.execute(o.state,o.delay))break}while(o=v.shift());if(this._active=!1,a){for(;o=v.shift();)o.unsubscribe();throw a}}}},927:(Se,X,g)=>{"use strict";g.d(X,{Z:()=>a});var n=g(1954),p=g(7394);const C={schedule(s){let l=requestAnimationFrame,d=cancelAnimationFrame;const{delegate:r}=C;r&&(l=r.requestAnimationFrame,d=r.cancelAnimationFrame);const u=l(h=>{d=void 0,s(h)});return new p.w0(()=>d?.(u))},requestAnimationFrame(...s){const{delegate:l}=C;return(l?.requestAnimationFrame||requestAnimationFrame)(...s)},cancelAnimationFrame(...s){const{delegate:l}=C;return(l?.cancelAnimationFrame||cancelAnimationFrame)(...s)},delegate:void 0};var o=g(2631);const a=new class v extends o.v{flush(l){this._active=!0;const d=this._scheduled;this._scheduled=void 0;const{actions:r}=this;let u;l=l||r.shift();do{if(u=l.execute(l.state,l.delay))break}while((l=r[0])&&l.id===d&&r.shift());if(this._active=!1,u){for(;(l=r[0])&&l.id===d&&r.shift();)l.unsubscribe();throw u}}}(class b extends n.o{constructor(l,d){super(l,d),this.scheduler=l,this.work=d}requestAsyncId(l,d,r=0){return null!==r&&r>0?super.requestAsyncId(l,d,r):(l.actions.push(this),l._scheduled||(l._scheduled=C.requestAnimationFrame(()=>l.flush(void 0))))}recycleAsyncId(l,d,r=0){var u;if(null!=r?r>0:this.delay>0)return super.recycleAsyncId(l,d,r);const{actions:h}=l;null!=d&&(null===(u=h[h.length-1])||void 0===u?void 0:u.id)!==d&&(C.cancelAnimationFrame(d),l._scheduled=void 0)}})},6410:(Se,X,g)=>{"use strict";g.d(X,{E:()=>h});var n=g(1954);let C,p=1;const b={};function o(_){return _ in b&&(delete b[_],!0)}const v={setImmediate(_){const M=p++;return b[M]=!0,C||(C=Promise.resolve()),C.then(()=>o(M)&&_()),M},clearImmediate(_){o(_)}},{setImmediate:c,clearImmediate:s}=v,l={setImmediate(..._){const{delegate:M}=l;return(M?.setImmediate||c)(..._)},clearImmediate(_){const{delegate:M}=l;return(M?.clearImmediate||s)(_)},delegate:void 0};var r=g(2631);const h=new class u extends r.v{flush(M){this._active=!0;const x=this._scheduled;this._scheduled=void 0;const{actions:w}=this;let L;M=M||w.shift();do{if(L=M.execute(M.state,M.delay))break}while((M=w[0])&&M.id===x&&w.shift());if(this._active=!1,L){for(;(M=w[0])&&M.id===x&&w.shift();)M.unsubscribe();throw L}}}(class d extends n.o{constructor(M,x){super(M,x),this.scheduler=M,this.work=x}requestAsyncId(M,x,w=0){return null!==w&&w>0?super.requestAsyncId(M,x,w):(M.actions.push(this),M._scheduled||(M._scheduled=l.setImmediate(M.flush.bind(M,void 0))))}recycleAsyncId(M,x,w=0){var L;if(null!=w?w>0:this.delay>0)return super.recycleAsyncId(M,x,w);const{actions:A}=M;null!=x&&(null===(L=A[A.length-1])||void 0===L?void 0:L.id)!==x&&(l.clearImmediate(x),M._scheduled===x&&(M._scheduled=void 0))}})},6321:(Se,X,g)=>{"use strict";g.d(X,{P:()=>b,z:()=>C});var n=g(1954);const C=new(g(2631).v)(n.o),b=C},4552:(Se,X,g)=>{"use strict";g.d(X,{l:()=>n});const n={now:()=>(n.delegate||Date).now(),delegate:void 0}},7599:(Se,X,g)=>{"use strict";g.d(X,{z:()=>n});const n={setTimeout(p,C,...b){const{delegate:o}=n;return o?.setTimeout?o.setTimeout(p,C,...b):setTimeout(p,C,...b)},clearTimeout(p){const{delegate:C}=n;return(C?.clearTimeout||clearTimeout)(p)},delegate:void 0}},4971:(Se,X,g)=>{"use strict";g.d(X,{h:()=>p});const p=function n(){return"function"==typeof Symbol&&Symbol.iterator?Symbol.iterator:"@@iterator"}()},4850:(Se,X,g)=>{"use strict";g.d(X,{L:()=>n});const n="function"==typeof Symbol&&Symbol.observable||"@@observable"},6973:(Se,X,g)=>{"use strict";g.d(X,{K:()=>p});const p=(0,g(2306).d)(C=>function(){C(this),this.name="EmptyError",this.message="no elements in sequence"})},9940:(Se,X,g)=>{"use strict";g.d(X,{_6:()=>v,jO:()=>b,yG:()=>o});var n=g(4674),p=g(671);function C(a){return a[a.length-1]}function b(a){return(0,n.m)(C(a))?a.pop():void 0}function o(a){return(0,p.K)(C(a))?a.pop():void 0}function v(a,c){return"number"==typeof C(a)?a.pop():c}},7453:(Se,X,g)=>{"use strict";g.d(X,{D:()=>o});const{isArray:n}=Array,{getPrototypeOf:p,prototype:C,keys:b}=Object;function o(a){if(1===a.length){const c=a[0];if(n(c))return{args:c,keys:null};if(function v(a){return a&&"object"==typeof a&&p(a)===C}(c)){const s=b(c);return{args:s.map(l=>c[l]),keys:s}}}return{args:a,keys:null}}},7728:(Se,X,g)=>{"use strict";g.d(X,{k:()=>p});const{isArray:n}=Array;function p(C){return 1===C.length&&n(C[0])?C[0]:C}},9039:(Se,X,g)=>{"use strict";function n(p,C){if(p){const b=p.indexOf(C);0<=b&&p.splice(b,1)}}g.d(X,{P:()=>n})},2306:(Se,X,g)=>{"use strict";function n(p){const b=p(o=>{Error.call(o),o.stack=(new Error).stack});return b.prototype=Object.create(Error.prototype),b.prototype.constructor=b,b}g.d(X,{d:()=>n})},2714:(Se,X,g)=>{"use strict";function n(p,C){return p.reduce((b,o,v)=>(b[o]=C[v],b),{})}g.d(X,{n:()=>n})},1441:(Se,X,g)=>{"use strict";g.d(X,{O:()=>b,x:()=>C});var n=g(2653);let p=null;function C(o){if(n.config.useDeprecatedSynchronousErrorHandling){const v=!p;if(v&&(p={errorThrown:!1,error:null}),o(),v){const{errorThrown:a,error:c}=p;if(p=null,a)throw c}}else o()}function b(o){n.config.useDeprecatedSynchronousErrorHandling&&p&&(p.errorThrown=!0,p.error=o)}},7103:(Se,X,g)=>{"use strict";function n(p,C,b,o=0,v=!1){const a=C.schedule(function(){b(),v?p.add(this.schedule(null,o)):this.unsubscribe()},o);if(p.add(a),!v)return a}g.d(X,{f:()=>n})},2737:(Se,X,g)=>{"use strict";function n(p){return p}g.d(X,{y:()=>n})},4266:(Se,X,g)=>{"use strict";g.d(X,{z:()=>n});const n=p=>p&&"number"==typeof p.length&&"function"!=typeof p},5726:(Se,X,g)=>{"use strict";g.d(X,{D:()=>p});var n=g(4674);function p(C){return Symbol.asyncIterator&&(0,n.m)(C?.[Symbol.asyncIterator])}},93:(Se,X,g)=>{"use strict";function n(p){return p instanceof Date&&!isNaN(p)}g.d(X,{q:()=>n})},4674:(Se,X,g)=>{"use strict";function n(p){return"function"==typeof p}g.d(X,{m:()=>n})},8382:(Se,X,g)=>{"use strict";g.d(X,{c:()=>C});var n=g(4850),p=g(4674);function C(b){return(0,p.m)(b[n.L])}},3664:(Se,X,g)=>{"use strict";g.d(X,{T:()=>C});var n=g(4971),p=g(4674);function C(b){return(0,p.m)(b?.[n.h])}},2664:(Se,X,g)=>{"use strict";g.d(X,{b:()=>C});var n=g(5592),p=g(4674);function C(b){return!!b&&(b instanceof n.y||(0,p.m)(b.lift)&&(0,p.m)(b.subscribe))}},4026:(Se,X,g)=>{"use strict";g.d(X,{t:()=>p});var n=g(4674);function p(C){return(0,n.m)(C?.then)}},541:(Se,X,g)=>{"use strict";g.d(X,{L:()=>b,Q:()=>C});var n=g(655),p=g(4674);function C(o){return(0,n.__asyncGenerator)(this,arguments,function*(){const a=o.getReader();try{for(;;){const{value:c,done:s}=yield(0,n.__await)(a.read());if(s)return yield(0,n.__await)(void 0);yield yield(0,n.__await)(c)}}finally{a.releaseLock()}})}function b(o){return(0,p.m)(o?.getReader)}},671:(Se,X,g)=>{"use strict";g.d(X,{K:()=>p});var n=g(4674);function p(C){return C&&(0,n.m)(C.schedule)}},9360:(Se,X,g)=>{"use strict";g.d(X,{A:()=>p,e:()=>C});var n=g(4674);function p(b){return(0,n.m)(b?.lift)}function C(b){return o=>{if(p(o))return o.lift(function(v){try{return b(v,this)}catch(a){this.error(a)}});throw new TypeError("Unable to lift unknown Observable type")}}},7400:(Se,X,g)=>{"use strict";g.d(X,{Z:()=>b});var n=g(7398);const{isArray:p}=Array;function b(o){return(0,n.U)(v=>function C(o,v){return p(v)?o(...v):o(v)}(o,v))}},2420:(Se,X,g)=>{"use strict";function n(){}g.d(X,{Z:()=>n})},8407:(Se,X,g)=>{"use strict";g.d(X,{U:()=>C,z:()=>p});var n=g(2737);function p(...b){return C(b)}function C(b){return 0===b.length?n.y:1===b.length?b[0]:function(v){return b.reduce((a,c)=>c(a),v)}}},3894:(Se,X,g)=>{"use strict";g.d(X,{h:()=>C});var n=g(2653),p=g(7599);function C(b){p.z.setTimeout(()=>{const{onUnhandledError:o}=n.config;if(!o)throw b;o(b)})}},9853:(Se,X,g)=>{"use strict";function n(p){return new TypeError(`You provided ${null!==p&&"object"==typeof p?"an invalid object":`'${p}'`} where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.`)}g.d(X,{z:()=>n})},1385:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{audit:()=>n.U,auditTime:()=>p.e,buffer:()=>a,bufferCount:()=>s,bufferTime:()=>h,bufferToggle:()=>m,bufferWhen:()=>_,catchError:()=>M.K,combineAll:()=>S,combineLatest:()=>F,combineLatestAll:()=>N,combineLatestWith:()=>Y,concat:()=>me,concatAll:()=>se.u,concatMap:()=>$.b,concatMapTo:()=>Q,concatWith:()=>ue,connect:()=>$e,count:()=>st,debounce:()=>Mt,debounceTime:()=>tt.b,defaultIfEmpty:()=>St.d,delay:()=>bt.g,delayWhen:()=>xt.j,dematerialize:()=>ee,distinct:()=>ae,distinctUntilChanged:()=>ie.x,distinctUntilKeyChanged:()=>pe,elementAt:()=>ze,endWith:()=>Bt,every:()=>$t,exhaust:()=>ve,exhaustAll:()=>We,exhaustMap:()=>Ue,expand:()=>at,filter:()=>Lt.h,finalize:()=>De.x,find:()=>je,findIndex:()=>Z,first:()=>re.P,flatMap:()=>tn,groupBy:()=>ce,ignoreElements:()=>Ee.l,isEmpty:()=>it,last:()=>Rt.Z,map:()=>Yt.U,mapTo:()=>Ye.h,materialize:()=>qe,max:()=>Ne,merge:()=>At,mergeAll:()=>dt.J,mergeMap:()=>T.z,mergeMapTo:()=>wn,mergeScan:()=>Tn,mergeWith:()=>Sn,min:()=>Mn,multicast:()=>di,observeOn:()=>Li.Q,onErrorResumeNext:()=>mt,pairwise:()=>pt,partition:()=>on,pluck:()=>hn,publish:()=>un,publishBehavior:()=>In,publishLast:()=>mi,publishReplay:()=>ri,race:()=>Dn,raceWith:()=>en,reduce:()=>E,refCount:()=>oi.x,repeat:()=>Yn,repeatWhen:()=>si,retry:()=>ii,retryWhen:()=>Ii,sample:()=>li,sampleTime:()=>Ct,scan:()=>Ft.R,sequenceEqual:()=>Ae,share:()=>be.B,shareReplay:()=>ge.d,single:()=>an,skip:()=>gn.T,skipLast:()=>pn,skipUntil:()=>Jn,skipWhile:()=>Nn,startWith:()=>kn.O,subscribeOn:()=>Un.R,switchAll:()=>$i,switchMap:()=>vi.w,switchMapTo:()=>er,switchScan:()=>fn,take:()=>Kt.q,takeLast:()=>yn.h,takeUntil:()=>rn.R,takeWhile:()=>xn.o,tap:()=>ti.b,throttle:()=>Ti,throttleTime:()=>zi,throwIfEmpty:()=>Dt.T,timeInterval:()=>xi,timeout:()=>gi.V,timeoutWith:()=>kt,timestamp:()=>fe,toArray:()=>R,window:()=>Pe,windowCount:()=>Je,windowTime:()=>Gt,windowToggle:()=>Pn,windowWhen:()=>Gi,withLatestFrom:()=>Vi,zip:()=>or,zipAll:()=>Zi,zipWith:()=>ur});var n=g(6301),p=g(8672),C=g(9360),b=g(2420),o=g(8251),v=g(4829);function a(Et){return(0,C.e)((_t,ft)=>{let Tt=[];return _t.subscribe((0,o.x)(ft,Ut=>Tt.push(Ut),()=>{ft.next(Tt),ft.complete()})),(0,v.Xf)(Et).subscribe((0,o.x)(ft,()=>{const Ut=Tt;Tt=[],ft.next(Ut)},b.Z)),()=>{Tt=null}})}var c=g(9039);function s(Et,_t=null){return _t=_t??Et,(0,C.e)((ft,Tt)=>{let Ut=[],Wt=0;ft.subscribe((0,o.x)(Tt,nn=>{let Cn=null;Wt++%_t==0&&Ut.push([]);for(const _n of Ut)_n.push(nn),Et<=_n.length&&(Cn=Cn??[],Cn.push(_n));if(Cn)for(const _n of Cn)(0,c.P)(Ut,_n),Tt.next(_n)},()=>{for(const nn of Ut)Tt.next(nn);Tt.complete()},void 0,()=>{Ut=null}))})}var l=g(7394),d=g(6321),r=g(9940),u=g(7103);function h(Et,..._t){var ft,Tt;const Ut=null!==(ft=(0,r.yG)(_t))&&void 0!==ft?ft:d.z,Wt=null!==(Tt=_t[0])&&void 0!==Tt?Tt:null,nn=_t[1]||1/0;return(0,C.e)((Cn,_n)=>{let zn=[],Vn=!1;const Ri=ni=>{const{buffer:Xn,subs:ai}=ni;ai.unsubscribe(),(0,c.P)(zn,ni),_n.next(Xn),Vn&&ci()},ci=()=>{if(zn){const ni=new l.w0;_n.add(ni);const ai={buffer:[],subs:ni};zn.push(ai),(0,u.f)(ni,Ut,()=>Ri(ai),Et)}};null!==Wt&&Wt>=0?(0,u.f)(_n,Ut,ci,Wt,!0):Vn=!0,ci();const Mi=(0,o.x)(_n,ni=>{const Xn=zn.slice();for(const ai of Xn){const{buffer:Fi}=ai;Fi.push(ni),nn<=Fi.length&&Ri(ai)}},()=>{for(;zn?.length;)_n.next(zn.shift().buffer);Mi?.unsubscribe(),_n.complete(),_n.unsubscribe()},void 0,()=>zn=null);Cn.subscribe(Mi)})}function m(Et,_t){return(0,C.e)((ft,Tt)=>{const Ut=[];(0,v.Xf)(Et).subscribe((0,o.x)(Tt,Wt=>{const nn=[];Ut.push(nn);const Cn=new l.w0;Cn.add((0,v.Xf)(_t(Wt)).subscribe((0,o.x)(Tt,()=>{(0,c.P)(Ut,nn),Tt.next(nn),Cn.unsubscribe()},b.Z)))},b.Z)),ft.subscribe((0,o.x)(Tt,Wt=>{for(const nn of Ut)nn.push(Wt)},()=>{for(;Ut.length>0;)Tt.next(Ut.shift());Tt.complete()}))})}function _(Et){return(0,C.e)((_t,ft)=>{let Tt=null,Ut=null;const Wt=()=>{Ut?.unsubscribe();const nn=Tt;Tt=[],nn&&ft.next(nn),(0,v.Xf)(Et()).subscribe(Ut=(0,o.x)(ft,Wt,b.Z))};Wt(),_t.subscribe((0,o.x)(ft,nn=>Tt?.push(nn),()=>{Tt&&ft.next(Tt),ft.complete()},void 0,()=>Tt=Ut=null))})}var M=g(6306),x=g(2572),w=g(2737),L=g(7400),A=g(8407),T=g(9769),O=g(9732);function E(Et,_t){return(0,C.e)((0,O.U)(Et,_t,arguments.length>=2,!1,!0))}const D=(Et,_t)=>(Et.push(_t),Et);function R(){return(0,C.e)((Et,_t)=>{E(D,[])(Et).subscribe(_t)})}function j(Et,_t){return(0,A.z)(R(),(0,T.z)(ft=>Et(ft)),_t?(0,L.Z)(_t):w.y)}function N(Et){return j(x.a,Et)}const S=N;var k=g(7728);function F(...Et){const _t=(0,r.jO)(Et);return _t?(0,A.z)(F(...Et),(0,L.Z)(_t)):(0,C.e)((ft,Tt)=>{(0,x.l)([ft,...(0,k.k)(Et)])(Tt)})}function Y(...Et){return F(...Et)}var se=g(1948),ne=g(2459);function me(...Et){const _t=(0,r.yG)(Et);return(0,C.e)((ft,Tt)=>{(0,se.u)()((0,ne.D)([ft,...Et],_t)).subscribe(Tt)})}var $=g(6328),q=g(4674);function Q(Et,_t){return(0,q.m)(_t)?(0,$.b)(()=>Et,_t):(0,$.b)(()=>Et)}function ue(...Et){return me(...Et)}var Me=g(8645),Oe=g(5592);const Be={connector:()=>new Me.x};function $e(Et,_t=Be){const{connector:ft}=_t;return(0,C.e)((Tt,Ut)=>{const Wt=ft();(0,v.Xf)(Et(function Xe(Et){return new Oe.y(_t=>Et.subscribe(_t))}(Wt))).subscribe(Ut),Ut.add(Tt.subscribe(Wt))})}function st(Et){return E((_t,ft,Tt)=>!Et||Et(ft,Tt)?_t+1:_t,0)}function Mt(Et){return(0,C.e)((_t,ft)=>{let Tt=!1,Ut=null,Wt=null;const nn=()=>{if(Wt?.unsubscribe(),Wt=null,Tt){Tt=!1;const Cn=Ut;Ut=null,ft.next(Cn)}};_t.subscribe((0,o.x)(ft,Cn=>{Wt?.unsubscribe(),Tt=!0,Ut=Cn,Wt=(0,o.x)(ft,nn,b.Z),(0,v.Xf)(Et(Cn)).subscribe(Wt)},()=>{nn(),ft.complete()},void 0,()=>{Ut=Wt=null}))})}var tt=g(3620),St=g(3572),bt=g(7547),xt=g(4610),nt=g(6232),ot=g(2096),vt=g(8504);class J{constructor(_t,ft,Tt){this.kind=_t,this.value=ft,this.error=Tt,this.hasValue="N"===_t}observe(_t){return Ce(this,_t)}do(_t,ft,Tt){const{kind:Ut,value:Wt,error:nn}=this;return"N"===Ut?_t?.(Wt):"E"===Ut?ft?.(nn):Tt?.()}accept(_t,ft,Tt){var Ut;return(0,q.m)(null===(Ut=_t)||void 0===Ut?void 0:Ut.next)?this.observe(_t):this.do(_t,ft,Tt)}toObservable(){const{kind:_t,value:ft,error:Tt}=this,Ut="N"===_t?(0,ot.of)(ft):"E"===_t?(0,vt._)(()=>Tt):"C"===_t?nt.E:0;if(!Ut)throw new TypeError(`Unexpected notification kind ${_t}`);return Ut}static createNext(_t){return new J("N",_t)}static createError(_t){return new J("E",void 0,_t)}static createComplete(){return J.completeNotification}}function Ce(Et,_t){var ft,Tt,Ut;const{kind:Wt,value:nn,error:Cn}=Et;if("string"!=typeof Wt)throw new TypeError('Invalid notification, missing "kind"');"N"===Wt?null===(ft=_t.next)||void 0===ft||ft.call(_t,nn):"E"===Wt?null===(Tt=_t.error)||void 0===Tt||Tt.call(_t,Cn):null===(Ut=_t.complete)||void 0===Ut||Ut.call(_t)}function ee(){return(0,C.e)((Et,_t)=>{Et.subscribe((0,o.x)(_t,ft=>Ce(ft,_t)))})}function ae(Et,_t){return(0,C.e)((ft,Tt)=>{const Ut=new Set;ft.subscribe((0,o.x)(Tt,Wt=>{const nn=Et?Et(Wt):Wt;Ut.has(nn)||(Ut.add(nn),Tt.next(Wt))})),_t&&(0,v.Xf)(_t).subscribe((0,o.x)(Tt,()=>Ut.clear(),b.Z))})}J.completeNotification=new J("C");var ie=g(3997);function pe(Et,_t){return(0,ie.x)((ft,Tt)=>_t?_t(ft[Et],Tt[Et]):ft[Et]===Tt[Et])}var Te=g(2306);const ct=(0,Te.d)(Et=>function(){Et(this),this.name="ArgumentOutOfRangeError",this.message="argument out of range"});var Lt=g(2181),Dt=g(3026),Kt=g(8180);function ze(Et,_t){if(Et<0)throw new ct;const ft=arguments.length>=2;return Tt=>Tt.pipe((0,Lt.h)((Ut,Wt)=>Wt===Et),(0,Kt.q)(1),ft?(0,St.d)(_t):(0,Dt.T)(()=>new ct))}var yt=g(34);function Bt(...Et){return _t=>(0,yt.z)(_t,(0,ot.of)(...Et))}function $t(Et,_t){return(0,C.e)((ft,Tt)=>{let Ut=0;ft.subscribe((0,o.x)(Tt,Wt=>{Et.call(_t,Wt,Ut++,ft)||(Tt.next(!1),Tt.complete())},()=>{Tt.next(!0),Tt.complete()}))})}var Yt=g(7398);function Ue(Et,_t){return _t?ft=>ft.pipe(Ue((Tt,Ut)=>(0,v.Xf)(Et(Tt,Ut)).pipe((0,Yt.U)((Wt,nn)=>_t(Tt,Wt,Ut,nn))))):(0,C.e)((ft,Tt)=>{let Ut=0,Wt=null,nn=!1;ft.subscribe((0,o.x)(Tt,Cn=>{Wt||(Wt=(0,o.x)(Tt,void 0,()=>{Wt=null,nn&&Tt.complete()}),(0,v.Xf)(Et(Cn,Ut++)).subscribe(Wt))},()=>{nn=!0,!Wt&&Tt.complete()}))})}function We(){return Ue(w.y)}const ve=We;var we=g(564);function at(Et,_t=1/0,ft){return _t=(_t||0)<1?1/0:_t,(0,C.e)((Tt,Ut)=>(0,we.p)(Tt,Ut,Et,_t,void 0,!0,ft))}var De=g(4716);function je(Et,_t){return(0,C.e)(ke(Et,_t,"value"))}function ke(Et,_t,ft){const Tt="index"===ft;return(Ut,Wt)=>{let nn=0;Ut.subscribe((0,o.x)(Wt,Cn=>{const _n=nn++;Et.call(_t,Cn,_n,Ut)&&(Wt.next(Tt?_n:Cn),Wt.complete())},()=>{Wt.next(Tt?-1:void 0),Wt.complete()}))}}function Z(Et,_t){return(0,C.e)(ke(Et,_t,"index"))}var re=g(1374);function ce(Et,_t,ft,Tt){return(0,C.e)((Ut,Wt)=>{let nn;_t&&"function"!=typeof _t?({duration:ft,element:nn,connector:Tt}=_t):nn=_t;const Cn=new Map,_n=ni=>{Cn.forEach(ni),ni(Wt)},zn=ni=>_n(Xn=>Xn.error(ni));let Vn=0,Ri=!1;const ci=new o.Q(Wt,ni=>{try{const Xn=Et(ni);let ai=Cn.get(Xn);if(!ai){Cn.set(Xn,ai=Tt?Tt():new Me.x);const Fi=function Mi(ni,Xn){const ai=new Oe.y(Fi=>{Vn++;const Xi=Xn.subscribe(Fi);return()=>{Xi.unsubscribe(),0==--Vn&&Ri&&ci.unsubscribe()}});return ai.key=ni,ai}(Xn,ai);if(Wt.next(Fi),ft){const Xi=(0,o.x)(ai,()=>{ai.complete(),Xi?.unsubscribe()},void 0,void 0,()=>Cn.delete(Xn));ci.add((0,v.Xf)(ft(Fi)).subscribe(Xi))}}ai.next(nn?nn(ni):ni)}catch(Xn){zn(Xn)}},()=>_n(ni=>ni.complete()),zn,()=>Cn.clear(),()=>(Ri=!0,0===Vn));Ut.subscribe(ci)})}var Ee=g(7538);function it(){return(0,C.e)((Et,_t)=>{Et.subscribe((0,o.x)(_t,()=>{_t.next(!1),_t.complete()},()=>{_t.next(!0),_t.complete()}))})}var Rt=g(2032),Ye=g(975);function qe(){return(0,C.e)((Et,_t)=>{Et.subscribe((0,o.x)(_t,ft=>{_t.next(J.createNext(ft))},()=>{_t.next(J.createComplete()),_t.complete()},ft=>{_t.next(J.createError(ft)),_t.complete()}))})}function Ne(Et){return E((0,q.m)(Et)?(_t,ft)=>Et(_t,ft)>0?_t:ft:(_t,ft)=>_t>ft?_t:ft)}var dt=g(7537);function At(...Et){const _t=(0,r.yG)(Et),ft=(0,r._6)(Et,1/0);return Et=(0,k.k)(Et),(0,C.e)((Tt,Ut)=>{(0,dt.J)(ft)((0,ne.D)([Tt,...Et],_t)).subscribe(Ut)})}const tn=T.z;function wn(Et,_t,ft=1/0){return(0,q.m)(_t)?(0,T.z)(()=>Et,_t,ft):("number"==typeof _t&&(ft=_t),(0,T.z)(()=>Et,ft))}function Tn(Et,_t,ft=1/0){return(0,C.e)((Tt,Ut)=>{let Wt=_t;return(0,we.p)(Tt,Ut,(nn,Cn)=>Et(Wt,nn,Cn),ft,nn=>{Wt=nn},!1,void 0,()=>Wt=null)})}function Sn(...Et){return At(...Et)}function Mn(Et){return E((0,q.m)(Et)?(_t,ft)=>Et(_t,ft)<0?_t:ft:(_t,ft)=>_tEt;return(0,q.m)(_t)?$e(_t,{connector:ft}):Tt=>new Ci.c(Tt,ft)}var Li=g(3093);const mt=function wt(...Et){const _t=(0,k.k)(Et);return ft=>function Qi(...Et){const _t=(0,k.k)(Et);return new Oe.y(ft=>{let Tt=0;const Ut=()=>{if(Tt<_t.length){let Wt;try{Wt=(0,v.Xf)(_t[Tt++])}catch{return void Ut()}const nn=new o.Q(ft,void 0,b.Z,b.Z);Wt.subscribe(nn),nn.add(Ut)}else ft.complete()};Ut()})}(ft,..._t)};function pt(){return(0,C.e)((Et,_t)=>{let ft,Tt=!1;Et.subscribe((0,o.x)(_t,Ut=>{const Wt=ft;ft=Ut,Tt&&_t.next([Wt,Ut]),Tt=!0}))})}function qt(Et,_t){return(ft,Tt)=>!Et.call(_t,ft,Tt)}function on(Et,_t){return ft=>[(0,Lt.h)(Et,_t)(ft),(0,Lt.h)(qt(Et,_t))(ft)]}function hn(...Et){const _t=Et.length;if(0===_t)throw new Error("list of properties cannot be empty.");return(0,Yt.U)(ft=>{let Tt=ft;for(let Ut=0;Ut<_t;Ut++){const Wt=Tt?.[Et[Ut]];if(!(typeof Wt<"u"))return;Tt=Wt}return Tt})}function un(Et){return Et?_t=>$e(Et)(_t):_t=>di(new Me.x)(_t)}var $n=g(5619);function In(Et){return _t=>{const ft=new $n.X(Et);return new Ci.c(_t,()=>ft)}}class Zn extends Me.x{constructor(){super(...arguments),this._value=null,this._hasValue=!1,this._isComplete=!1}_checkFinalizedStatuses(_t){const{hasError:ft,_hasValue:Tt,_value:Ut,thrownError:Wt,isStopped:nn,_isComplete:Cn}=this;ft?_t.error(Wt):(nn||Cn)&&(Tt&&_t.next(Ut),_t.complete())}next(_t){this.isStopped||(this._value=_t,this._hasValue=!0)}complete(){const{_hasValue:_t,_value:ft,_isComplete:Tt}=this;Tt||(this._isComplete=!0,_t&&super.next(ft),super.complete())}}function mi(){return Et=>{const _t=new Zn;return new Ci.c(Et,()=>_t)}}var Qn=g(7328);function ri(Et,_t,ft,Tt){ft&&!(0,q.m)(ft)&&(Tt=ft);const Ut=(0,q.m)(ft)?ft:void 0;return Wt=>di(new Qn.t(Et,_t,Tt),Ut)(Wt)}var ln=g(3684);function en(...Et){return Et.length?(0,C.e)((_t,ft)=>{(0,ln.R)([_t,...Et])(ft)}):w.y}function Dn(...Et){return en(...(0,k.k)(Et))}var An=g(9080);function Yn(Et){let ft,_t=1/0;return null!=Et&&("object"==typeof Et?({count:_t=1/0,delay:ft}=Et):_t=Et),_t<=0?()=>nt.E:(0,C.e)((Tt,Ut)=>{let nn,Wt=0;const Cn=()=>{if(nn?.unsubscribe(),nn=null,null!=ft){const zn="number"==typeof ft?(0,An.H)(ft):(0,v.Xf)(ft(Wt)),Vn=(0,o.x)(Ut,()=>{Vn.unsubscribe(),_n()});zn.subscribe(Vn)}else _n()},_n=()=>{let zn=!1;nn=Tt.subscribe((0,o.x)(Ut,void 0,()=>{++Wt<_t?nn?Cn():zn=!0:Ut.complete()})),zn&&Cn()};_n()})}function si(Et){return(0,C.e)((_t,ft)=>{let Tt,Wt,Ut=!1,nn=!1,Cn=!1;const _n=()=>Cn&&nn&&(ft.complete(),!0),Vn=()=>{Cn=!1,Tt=_t.subscribe((0,o.x)(ft,void 0,()=>{Cn=!0,!_n()&&(Wt||(Wt=new Me.x,(0,v.Xf)(Et(Wt)).subscribe((0,o.x)(ft,()=>{Tt?Vn():Ut=!0},()=>{nn=!0,_n()}))),Wt).next()})),Ut&&(Tt.unsubscribe(),Tt=null,Ut=!1,Vn())};Vn()})}function ii(Et=1/0){let _t;_t=Et&&"object"==typeof Et?Et:{count:Et};const{count:ft=1/0,delay:Tt,resetOnSuccess:Ut=!1}=_t;return ft<=0?w.y:(0,C.e)((Wt,nn)=>{let _n,Cn=0;const zn=()=>{let Vn=!1;_n=Wt.subscribe((0,o.x)(nn,Ri=>{Ut&&(Cn=0),nn.next(Ri)},void 0,Ri=>{if(Cn++{_n?(_n.unsubscribe(),_n=null,zn()):Vn=!0};if(null!=Tt){const Mi="number"==typeof Tt?(0,An.H)(Tt):(0,v.Xf)(Tt(Ri,Cn)),ni=(0,o.x)(nn,()=>{ni.unsubscribe(),ci()},()=>{nn.complete()});Mi.subscribe(ni)}else ci()}else nn.error(Ri)})),Vn&&(_n.unsubscribe(),_n=null,zn())};zn()})}function Ii(Et){return(0,C.e)((_t,ft)=>{let Tt,Wt,Ut=!1;const nn=()=>{Tt=_t.subscribe((0,o.x)(ft,void 0,void 0,Cn=>{Wt||(Wt=new Me.x,(0,v.Xf)(Et(Wt)).subscribe((0,o.x)(ft,()=>Tt?nn():Ut=!0))),Wt&&Wt.next(Cn)})),Ut&&(Tt.unsubscribe(),Tt=null,Ut=!1,nn())};nn()})}var oi=g(6196);function li(Et){return(0,C.e)((_t,ft)=>{let Tt=!1,Ut=null;_t.subscribe((0,o.x)(ft,Wt=>{Tt=!0,Ut=Wt})),(0,v.Xf)(Et).subscribe((0,o.x)(ft,()=>{if(Tt){Tt=!1;const Wt=Ut;Ut=null,ft.next(Wt)}},b.Z))})}function Ct(Et,_t=d.z){return li(function Pi(Et=0,_t=d.z){return Et<0&&(Et=0),(0,An.H)(Et,Et,_t)}(Et,_t))}var Ft=g(6424);function Ae(Et,_t=((ft,Tt)=>ft===Tt)){return(0,C.e)((ft,Tt)=>{const Ut={buffer:[],complete:!1},Wt={buffer:[],complete:!1},nn=_n=>{Tt.next(_n),Tt.complete()},Cn=(_n,zn)=>{const Vn=(0,o.x)(Tt,Ri=>{const{buffer:ci,complete:Mi}=zn;0===ci.length?Mi?nn(!1):_n.buffer.push(Ri):!_t(Ri,ci.shift())&&nn(!1)},()=>{_n.complete=!0;const{complete:Ri,buffer:ci}=zn;Ri&&nn(0===ci.length),Vn?.unsubscribe()});return Vn};ft.subscribe(Cn(Ut,Wt)),(0,v.Xf)(Et).subscribe(Cn(Wt,Ut))})}var be=g(3020),ge=g(7081),Ge=g(6973);const It=(0,Te.d)(Et=>function(ft){Et(this),this.name="SequenceError",this.message=ft}),zt=(0,Te.d)(Et=>function(ft){Et(this),this.name="NotFoundError",this.message=ft});function an(Et){return(0,C.e)((_t,ft)=>{let Ut,Tt=!1,Wt=!1,nn=0;_t.subscribe((0,o.x)(ft,Cn=>{Wt=!0,(!Et||Et(Cn,nn++,_t))&&(Tt&&ft.error(new It("Too many matching values")),Tt=!0,Ut=Cn)},()=>{Tt?(ft.next(Ut),ft.complete()):ft.error(Wt?new zt("No matching values"):new Ge.K)}))})}var gn=g(836);function pn(Et){return Et<=0?w.y:(0,C.e)((_t,ft)=>{let Tt=new Array(Et),Ut=0;return _t.subscribe((0,o.x)(ft,Wt=>{const nn=Ut++;if(nn{Tt=null}})}function Jn(Et){return(0,C.e)((_t,ft)=>{let Tt=!1;const Ut=(0,o.x)(ft,()=>{Ut?.unsubscribe(),Tt=!0},b.Z);(0,v.Xf)(Et).subscribe(Ut),_t.subscribe((0,o.x)(ft,Wt=>Tt&&ft.next(Wt)))})}function Nn(Et){return(0,C.e)((_t,ft)=>{let Tt=!1,Ut=0;_t.subscribe((0,o.x)(ft,Wt=>(Tt||(Tt=!Et(Wt,Ut++)))&&ft.next(Wt)))})}var kn=g(7921),Un=g(5137),vi=g(4664);function $i(){return(0,vi.w)(w.y)}function er(Et,_t){return(0,q.m)(_t)?(0,vi.w)(()=>Et,_t):(0,vi.w)(()=>Et)}function fn(Et,_t){return(0,C.e)((ft,Tt)=>{let Ut=_t;return(0,vi.w)((Wt,nn)=>Et(Ut,Wt,nn),(Wt,nn)=>(Ut=nn,nn))(ft).subscribe(Tt),()=>{Ut=null}})}var yn=g(4418),rn=g(9773),xn=g(812),ti=g(9397);function Ti(Et,_t){return(0,C.e)((ft,Tt)=>{const{leading:Ut=!0,trailing:Wt=!1}=_t??{};let nn=!1,Cn=null,_n=null,zn=!1;const Vn=()=>{_n?.unsubscribe(),_n=null,Wt&&(Mi(),zn&&Tt.complete())},Ri=()=>{_n=null,zn&&Tt.complete()},ci=ni=>_n=(0,v.Xf)(Et(ni)).subscribe((0,o.x)(Tt,Vn,Ri)),Mi=()=>{if(nn){nn=!1;const ni=Cn;Cn=null,Tt.next(ni),!zn&&ci(ni)}};ft.subscribe((0,o.x)(Tt,ni=>{nn=!0,Cn=ni,(!_n||_n.closed)&&(Ut?Mi():ci(ni))},()=>{zn=!0,(!(Wt&&nn&&_n)||_n.closed)&&Tt.complete()}))})}function zi(Et,_t=d.z,ft){const Tt=(0,An.H)(Et,_t);return Ti(()=>Tt,ft)}function xi(Et=d.z){return(0,C.e)((_t,ft)=>{let Tt=Et.now();_t.subscribe((0,o.x)(ft,Ut=>{const Wt=Et.now(),nn=Wt-Tt;Tt=Wt,ft.next(new _r(Ut,nn))}))})}class _r{constructor(_t,ft){this.value=_t,this.interval=ft}}var gi=g(5178),Ke=g(93);function kt(Et,_t,ft){let Tt,Ut,Wt;if(ft=ft??d.P,(0,Ke.q)(Et)?Tt=Et:"number"==typeof Et&&(Ut=Et),!_t)throw new TypeError("No observable provided to switch to");if(Wt=()=>_t,null==Tt&&null==Ut)throw new TypeError("No timeout provided.");return(0,gi.V)({first:Tt,each:Ut,scheduler:ft,with:Wt})}var U=g(4552);function fe(Et=U.l){return(0,Yt.U)(_t=>({value:_t,timestamp:Et.now()}))}function Pe(Et){return(0,C.e)((_t,ft)=>{let Tt=new Me.x;ft.next(Tt.asObservable());const Ut=Wt=>{Tt.error(Wt),ft.error(Wt)};return _t.subscribe((0,o.x)(ft,Wt=>Tt?.next(Wt),()=>{Tt.complete(),ft.complete()},Ut)),(0,v.Xf)(Et).subscribe((0,o.x)(ft,()=>{Tt.complete(),ft.next(Tt=new Me.x)},b.Z,Ut)),()=>{Tt?.unsubscribe(),Tt=null}})}function Je(Et,_t=0){const ft=_t>0?_t:Et;return(0,C.e)((Tt,Ut)=>{let Wt=[new Me.x],nn=[],Cn=0;Ut.next(Wt[0].asObservable()),Tt.subscribe((0,o.x)(Ut,_n=>{for(const Vn of Wt)Vn.next(_n);const zn=Cn-Et+1;if(zn>=0&&zn%ft==0&&Wt.shift().complete(),++Cn%ft==0){const Vn=new Me.x;Wt.push(Vn),Ut.next(Vn.asObservable())}},()=>{for(;Wt.length>0;)Wt.shift().complete();Ut.complete()},_n=>{for(;Wt.length>0;)Wt.shift().error(_n);Ut.error(_n)},()=>{nn=null,Wt=null}))})}function Gt(Et,..._t){var ft,Tt;const Ut=null!==(ft=(0,r.yG)(_t))&&void 0!==ft?ft:d.z,Wt=null!==(Tt=_t[0])&&void 0!==Tt?Tt:null,nn=_t[1]||1/0;return(0,C.e)((Cn,_n)=>{let zn=[],Vn=!1;const Ri=Xn=>{const{window:ai,subs:Fi}=Xn;ai.complete(),Fi.unsubscribe(),(0,c.P)(zn,Xn),Vn&&ci()},ci=()=>{if(zn){const Xn=new l.w0;_n.add(Xn);const ai=new Me.x,Fi={window:ai,subs:Xn,seen:0};zn.push(Fi),_n.next(ai.asObservable()),(0,u.f)(Xn,Ut,()=>Ri(Fi),Et)}};null!==Wt&&Wt>=0?(0,u.f)(_n,Ut,ci,Wt,!0):Vn=!0,ci();const Mi=Xn=>zn.slice().forEach(Xn),ni=Xn=>{Mi(({window:ai})=>Xn(ai)),Xn(_n),_n.unsubscribe()};return Cn.subscribe((0,o.x)(_n,Xn=>{Mi(ai=>{ai.window.next(Xn),nn<=++ai.seen&&Ri(ai)})},()=>ni(Xn=>Xn.complete()),Xn=>ni(ai=>ai.error(Xn)))),()=>{zn=null}})}function Pn(Et,_t){return(0,C.e)((ft,Tt)=>{const Ut=[],Wt=nn=>{for(;0{const Cn=new Me.x;Ut.push(Cn);const _n=new l.w0;let Vn;try{Vn=(0,v.Xf)(_t(nn))}catch(Ri){return void Wt(Ri)}Tt.next(Cn.asObservable()),_n.add(Vn.subscribe((0,o.x)(Tt,()=>{(0,c.P)(Ut,Cn),Cn.complete(),_n.unsubscribe()},b.Z,Wt)))},b.Z)),ft.subscribe((0,o.x)(Tt,nn=>{const Cn=Ut.slice();for(const _n of Cn)_n.next(nn)},()=>{for(;0{for(;0{let Tt,Ut;const Wt=Cn=>{Tt.error(Cn),ft.error(Cn)},nn=()=>{let Cn;Ut?.unsubscribe(),Tt?.complete(),Tt=new Me.x,ft.next(Tt.asObservable());try{Cn=(0,v.Xf)(Et())}catch(_n){return void Wt(_n)}Cn.subscribe(Ut=(0,o.x)(ft,nn,nn,Wt))};nn(),_t.subscribe((0,o.x)(ft,Cn=>Tt.next(Cn),()=>{Tt.complete(),ft.complete()},Wt,()=>{Ut?.unsubscribe(),Tt=null}))})}function Vi(...Et){const _t=(0,r.jO)(Et);return(0,C.e)((ft,Tt)=>{const Ut=Et.length,Wt=new Array(Ut);let nn=Et.map(()=>!1),Cn=!1;for(let _n=0;_n{Wt[_n]=zn,!Cn&&!nn[_n]&&(nn[_n]=!0,(Cn=nn.every(w.y))&&(nn=null))},b.Z));ft.subscribe((0,o.x)(Tt,_n=>{if(Cn){const zn=[_n,...Wt];Tt.next(_t?_t(...zn):zn)}}))})}var rr=g(9278);function or(...Et){return(0,C.e)((_t,ft)=>{(0,rr.$)(_t,...Et).subscribe(ft)})}function Zi(Et){return j(rr.$,Et)}function ur(...Et){return or(...Et)}},6144:Se=>{"use strict";Se.exports=(X,g)=>{if("string"!=typeof X||"string"!=typeof g)throw new TypeError("Expected the arguments to be of type `string`");if(""===g)return[X];const n=X.indexOf(g);return-1===n?[X]:[X.slice(0,n),X.slice(n+g.length)]}},8385:Se=>{"use strict";Se.exports=X=>encodeURIComponent(X).replace(/[!'()*]/g,g=>`%${g.charCodeAt(0).toString(16).toUpperCase()}`)},655:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{__addDisposableResource:()=>Y,__assign:()=>C,__asyncDelegator:()=>O,__asyncGenerator:()=>T,__asyncValues:()=>E,__await:()=>A,__awaiter:()=>r,__classPrivateFieldGet:()=>S,__classPrivateFieldIn:()=>F,__classPrivateFieldSet:()=>k,__createBinding:()=>h,__decorate:()=>o,__disposeResources:()=>ne,__esDecorate:()=>a,__exportStar:()=>m,__extends:()=>p,__generator:()=>u,__importDefault:()=>N,__importStar:()=>j,__makeTemplateObject:()=>D,__metadata:()=>d,__param:()=>v,__propKey:()=>s,__read:()=>M,__rest:()=>b,__runInitializers:()=>c,__setFunctionName:()=>l,__spread:()=>x,__spreadArray:()=>L,__spreadArrays:()=>w,__values:()=>_,default:()=>me});var n=function($,q){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(Q,ue){Q.__proto__=ue}||function(Q,ue){for(var Me in ue)Object.prototype.hasOwnProperty.call(ue,Me)&&(Q[Me]=ue[Me])})($,q)};function p($,q){if("function"!=typeof q&&null!==q)throw new TypeError("Class extends value "+String(q)+" is not a constructor or null");function Q(){this.constructor=$}n($,q),$.prototype=null===q?Object.create(q):(Q.prototype=q.prototype,new Q)}var C=function(){return C=Object.assign||function(q){for(var Q,ue=1,Me=arguments.length;ue=0;Be--)(Xe=$[Be])&&(Oe=(Me<3?Xe(Oe):Me>3?Xe(q,Q,Oe):Xe(q,Q))||Oe);return Me>3&&Oe&&Object.defineProperty(q,Q,Oe),Oe}function v($,q){return function(Q,ue){q(Q,ue,$)}}function a($,q,Q,ue,Me,Oe){function Xe(vt){if(void 0!==vt&&"function"!=typeof vt)throw new TypeError("Function expected");return vt}for(var tt,Be=ue.kind,$e="getter"===Be?"get":"setter"===Be?"set":"value",st=!q&&$?ue.static?$:$.prototype:null,Mt=q||(st?Object.getOwnPropertyDescriptor(st,ue.name):{}),St=!1,bt=Q.length-1;bt>=0;bt--){var xt={};for(var nt in ue)xt[nt]="access"===nt?{}:ue[nt];for(var nt in ue.access)xt.access[nt]=ue.access[nt];xt.addInitializer=function(vt){if(St)throw new TypeError("Cannot add initializers after decoration has completed");Oe.push(Xe(vt||null))};var ot=(0,Q[bt])("accessor"===Be?{get:Mt.get,set:Mt.set}:Mt[$e],xt);if("accessor"===Be){if(void 0===ot)continue;if(null===ot||"object"!=typeof ot)throw new TypeError("Object expected");(tt=Xe(ot.get))&&(Mt.get=tt),(tt=Xe(ot.set))&&(Mt.set=tt),(tt=Xe(ot.init))&&Me.unshift(tt)}else(tt=Xe(ot))&&("field"===Be?Me.unshift(tt):Mt[$e]=tt)}st&&Object.defineProperty(st,ue.name,Mt),St=!0}function c($,q,Q){for(var ue=arguments.length>2,Me=0;Me0&&Oe[Oe.length-1])&&(6===st[0]||2===st[0])){Q=0;continue}if(3===st[0]&&(!Oe||st[1]>Oe[0]&&st[1]=$.length&&($=void 0),{value:$&&$[ue++],done:!$}}};throw new TypeError(q?"Object is not iterable.":"Symbol.iterator is not defined.")}function M($,q){var Q="function"==typeof Symbol&&$[Symbol.iterator];if(!Q)return $;var Me,Xe,ue=Q.call($),Oe=[];try{for(;(void 0===q||q-- >0)&&!(Me=ue.next()).done;)Oe.push(Me.value)}catch(Be){Xe={error:Be}}finally{try{Me&&!Me.done&&(Q=ue.return)&&Q.call(ue)}finally{if(Xe)throw Xe.error}}return Oe}function x(){for(var $=[],q=0;q1||Be(St,bt)})})}function Be(St,bt){try{!function $e(St){St.value instanceof A?Promise.resolve(St.value.v).then(st,Mt):tt(Oe[0][2],St)}(ue[St](bt))}catch(xt){tt(Oe[0][3],xt)}}function st(St){Be("next",St)}function Mt(St){Be("throw",St)}function tt(St,bt){St(bt),Oe.shift(),Oe.length&&Be(Oe[0][0],Oe[0][1])}}function O($){var q,Q;return q={},ue("next"),ue("throw",function(Me){throw Me}),ue("return"),q[Symbol.iterator]=function(){return this},q;function ue(Me,Oe){q[Me]=$[Me]?function(Xe){return(Q=!Q)?{value:A($[Me](Xe)),done:!1}:Oe?Oe(Xe):Xe}:Oe}}function E($){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var Q,q=$[Symbol.asyncIterator];return q?q.call($):($=_($),Q={},ue("next"),ue("throw"),ue("return"),Q[Symbol.asyncIterator]=function(){return this},Q);function ue(Oe){Q[Oe]=$[Oe]&&function(Xe){return new Promise(function(Be,$e){!function Me(Oe,Xe,Be,$e){Promise.resolve($e).then(function(st){Oe({value:st,done:Be})},Xe)}(Be,$e,(Xe=$[Oe](Xe)).done,Xe.value)})}}}function D($,q){return Object.defineProperty?Object.defineProperty($,"raw",{value:q}):$.raw=q,$}var R=Object.create?function($,q){Object.defineProperty($,"default",{enumerable:!0,value:q})}:function($,q){$.default=q};function j($){if($&&$.__esModule)return $;var q={};if(null!=$)for(var Q in $)"default"!==Q&&Object.prototype.hasOwnProperty.call($,Q)&&h(q,$,Q);return R(q,$),q}function N($){return $&&$.__esModule?$:{default:$}}function S($,q,Q,ue){if("a"===Q&&!ue)throw new TypeError("Private accessor was defined without a getter");if("function"==typeof q?$!==q||!ue:!q.has($))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===Q?ue:"a"===Q?ue.call($):ue?ue.value:q.get($)}function k($,q,Q,ue,Me){if("m"===ue)throw new TypeError("Private method is not writable");if("a"===ue&&!Me)throw new TypeError("Private accessor was defined without a setter");if("function"==typeof q?$!==q||!Me:!q.has($))throw new TypeError("Cannot write private member to an object whose class did not declare it");return"a"===ue?Me.call($,Q):Me?Me.value=Q:q.set($,Q),Q}function F($,q){if(null===q||"object"!=typeof q&&"function"!=typeof q)throw new TypeError("Cannot use 'in' operator on non-object");return"function"==typeof $?q===$:$.has(q)}function Y($,q,Q){if(null!=q){if("object"!=typeof q&&"function"!=typeof q)throw new TypeError("Object expected.");var ue;if(Q){if(!Symbol.asyncDispose)throw new TypeError("Symbol.asyncDispose is not defined.");ue=q[Symbol.asyncDispose]}if(void 0===ue){if(!Symbol.dispose)throw new TypeError("Symbol.dispose is not defined.");ue=q[Symbol.dispose]}if("function"!=typeof ue)throw new TypeError("Object not disposable.");$.stack.push({value:q,dispose:ue,async:Q})}else Q&&$.stack.push({async:!0});return q}var se="function"==typeof SuppressedError?SuppressedError:function($,q,Q){var ue=new Error(Q);return ue.name="SuppressedError",ue.error=$,ue.suppressed=q,ue};function ne($){function q(ue){$.error=$.hasError?new se(ue,$.error,"An error was suppressed during disposal."):ue,$.hasError=!0}return function Q(){for(;$.stack.length;){var ue=$.stack.pop();try{var Me=ue.dispose&&ue.dispose.call(ue.value);if(ue.async)return Promise.resolve(Me).then(Q,function(Oe){return q(Oe),Q()})}catch(Oe){q(Oe)}}if($.hasError)throw $.error}()}const me={__extends:p,__assign:C,__rest:b,__decorate:o,__param:v,__metadata:d,__awaiter:r,__generator:u,__createBinding:h,__exportStar:m,__values:_,__read:M,__spread:x,__spreadArrays:w,__spreadArray:L,__await:A,__asyncGenerator:T,__asyncDelegator:O,__asyncValues:E,__makeTemplateObject:D,__importStar:j,__importDefault:N,__classPrivateFieldGet:S,__classPrivateFieldSet:k,__classPrivateFieldIn:F,__addDisposableResource:Y,__disposeResources:ne}},6548:Se=>{function X(Z){return Z instanceof Map?Z.clear=Z.delete=Z.set=function(){throw new Error("map is read-only")}:Z instanceof Set&&(Z.add=Z.clear=Z.delete=function(){throw new Error("set is read-only")}),Object.freeze(Z),Object.getOwnPropertyNames(Z).forEach(re=>{const ce=Z[re],Ee=typeof ce;("object"===Ee||"function"===Ee)&&!Object.isFrozen(ce)&&X(ce)}),Z}class g{constructor(re){void 0===re.data&&(re.data={}),this.data=re.data,this.isMatchIgnored=!1}ignoreMatch(){this.isMatchIgnored=!0}}function n(Z){return Z.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}function p(Z,...re){const ce=Object.create(null);for(const Ee in Z)ce[Ee]=Z[Ee];return re.forEach(function(Ee){for(const it in Ee)ce[it]=Ee[it]}),ce}const b=Z=>!!Z.scope;class v{constructor(re,ce){this.buffer="",this.classPrefix=ce.classPrefix,re.walk(this)}addText(re){this.buffer+=n(re)}openNode(re){if(!b(re))return;const ce=((Z,{prefix:re})=>{if(Z.startsWith("language:"))return Z.replace("language:","language-");if(Z.includes(".")){const ce=Z.split(".");return[`${re}${ce.shift()}`,...ce.map((Ee,it)=>`${Ee}${"_".repeat(it+1)}`)].join(" ")}return`${re}${Z}`})(re.scope,{prefix:this.classPrefix});this.span(ce)}closeNode(re){b(re)&&(this.buffer+="")}value(){return this.buffer}span(re){this.buffer+=``}}const a=(Z={})=>{const re={children:[]};return Object.assign(re,Z),re};class c{constructor(){this.rootNode=a(),this.stack=[this.rootNode]}get top(){return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(re){this.top.children.push(re)}openNode(re){const ce=a({scope:re});this.add(ce),this.stack.push(ce)}closeNode(){if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)}walk(re){return this.constructor._walk(re,this.rootNode)}static _walk(re,ce){return"string"==typeof ce?re.addText(ce):ce.children&&(re.openNode(ce),ce.children.forEach(Ee=>this._walk(re,Ee)),re.closeNode(ce)),re}static _collapse(re){"string"!=typeof re&&re.children&&(re.children.every(ce=>"string"==typeof ce)?re.children=[re.children.join("")]:re.children.forEach(ce=>{c._collapse(ce)}))}}class s extends c{constructor(re){super(),this.options=re}addText(re){""!==re&&this.add(re)}startScope(re){this.openNode(re)}endScope(){this.closeNode()}__addSublanguage(re,ce){const Ee=re.root;ce&&(Ee.scope=`language:${ce}`),this.add(Ee)}toHTML(){return new v(this,this.options).value()}finalize(){return this.closeAllNodes(),!0}}function l(Z){return Z?"string"==typeof Z?Z:Z.source:null}function d(Z){return h("(?=",Z,")")}function r(Z){return h("(?:",Z,")*")}function u(Z){return h("(?:",Z,")?")}function h(...Z){return Z.map(ce=>l(ce)).join("")}function _(...Z){return"("+(function m(Z){const re=Z[Z.length-1];return"object"==typeof re&&re.constructor===Object?(Z.splice(Z.length-1,1),re):{}}(Z).capture?"":"?:")+Z.map(Ee=>l(Ee)).join("|")+")"}function M(Z){return new RegExp(Z.toString()+"|").exec("").length-1}const w=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./;function L(Z,{joinWith:re}){let ce=0;return Z.map(Ee=>{ce+=1;const it=ce;let Rt=l(Ee),Ye="";for(;Rt.length>0;){const qe=w.exec(Rt);if(!qe){Ye+=Rt;break}Ye+=Rt.substring(0,qe.index),Rt=Rt.substring(qe.index+qe[0].length),"\\"===qe[0][0]&&qe[1]?Ye+="\\"+String(Number(qe[1])+it):(Ye+=qe[0],"("===qe[0]&&ce++)}return Ye}).map(Ee=>`(${Ee})`).join(re)}const T="[a-zA-Z]\\w*",O="[a-zA-Z_]\\w*",E="\\b\\d+(\\.\\d+)?",D="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",R="\\b(0b[01]+)",S={begin:"\\\\[\\s\\S]",relevance:0},k={scope:"string",begin:"'",end:"'",illegal:"\\n",contains:[S]},F={scope:"string",begin:'"',end:'"',illegal:"\\n",contains:[S]},se=function(Z,re,ce={}){const Ee=p({scope:"comment",begin:Z,end:re,contains:[]},ce);Ee.contains.push({scope:"doctag",begin:"[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)",end:/(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,excludeBegin:!0,relevance:0});const it=_("I","a","is","so","us","to","at","if","in","it","on",/[A-Za-z]+['](d|ve|re|ll|t|s|n)/,/[A-Za-z]+[-][a-z]+/,/[A-Za-z][a-z]{2,}/);return Ee.contains.push({begin:h(/[ ]+/,"(",it,/[.]?[:]?([.][ ]|[ ])/,"){3}")}),Ee},ne=se("//","$"),me=se("/\\*","\\*/"),$=se("#","$");var st=Object.freeze({__proto__:null,MATCH_NOTHING_RE:/\b\B/,IDENT_RE:T,UNDERSCORE_IDENT_RE:O,NUMBER_RE:E,C_NUMBER_RE:D,BINARY_NUMBER_RE:R,RE_STARTERS_RE:"!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",SHEBANG:(Z={})=>{const re=/^#![ ]*\//;return Z.binary&&(Z.begin=h(re,/.*\b/,Z.binary,/\b.*/)),p({scope:"meta",begin:re,end:/$/,relevance:0,"on:begin":(ce,Ee)=>{0!==ce.index&&Ee.ignoreMatch()}},Z)},BACKSLASH_ESCAPE:S,APOS_STRING_MODE:k,QUOTE_STRING_MODE:F,PHRASAL_WORDS_MODE:{begin:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/},COMMENT:se,C_LINE_COMMENT_MODE:ne,C_BLOCK_COMMENT_MODE:me,HASH_COMMENT_MODE:$,NUMBER_MODE:{scope:"number",begin:E,relevance:0},C_NUMBER_MODE:{scope:"number",begin:D,relevance:0},BINARY_NUMBER_MODE:{scope:"number",begin:R,relevance:0},REGEXP_MODE:{begin:/(?=\/[^/\n]*\/)/,contains:[{scope:"regexp",begin:/\//,end:/\/[gimuy]*/,illegal:/\n/,contains:[S,{begin:/\[/,end:/\]/,relevance:0,contains:[S]}]}]},TITLE_MODE:{scope:"title",begin:T,relevance:0},UNDERSCORE_TITLE_MODE:{scope:"title",begin:O,relevance:0},METHOD_GUARD:{begin:"\\.\\s*"+O,relevance:0},END_SAME_AS_BEGIN:function(Z){return Object.assign(Z,{"on:begin":(re,ce)=>{ce.data._beginMatch=re[1]},"on:end":(re,ce)=>{ce.data._beginMatch!==re[1]&&ce.ignoreMatch()}})}});function Mt(Z,re){"."===Z.input[Z.index-1]&&re.ignoreMatch()}function tt(Z,re){void 0!==Z.className&&(Z.scope=Z.className,delete Z.className)}function St(Z,re){re&&Z.beginKeywords&&(Z.begin="\\b("+Z.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)",Z.__beforeBegin=Mt,Z.keywords=Z.keywords||Z.beginKeywords,delete Z.beginKeywords,void 0===Z.relevance&&(Z.relevance=0))}function bt(Z,re){Array.isArray(Z.illegal)&&(Z.illegal=_(...Z.illegal))}function xt(Z,re){if(Z.match){if(Z.begin||Z.end)throw new Error("begin & end are not supported with match");Z.begin=Z.match,delete Z.match}}function nt(Z,re){void 0===Z.relevance&&(Z.relevance=1)}const ot=(Z,re)=>{if(!Z.beforeMatch)return;if(Z.starts)throw new Error("beforeMatch cannot be used with starts");const ce=Object.assign({},Z);Object.keys(Z).forEach(Ee=>{delete Z[Ee]}),Z.keywords=ce.keywords,Z.begin=h(ce.beforeMatch,d(ce.begin)),Z.starts={relevance:0,contains:[Object.assign(ce,{endsParent:!0})]},Z.relevance=0,delete ce.beforeMatch},vt=["of","and","for","in","not","or","if","then","parent","list","value"],rt="keyword";function J(Z,re,ce=rt){const Ee=Object.create(null);return"string"==typeof Z?it(ce,Z.split(" ")):Array.isArray(Z)?it(ce,Z):Object.keys(Z).forEach(function(Rt){Object.assign(Ee,J(Z[Rt],re,Rt))}),Ee;function it(Rt,Ye){re&&(Ye=Ye.map(qe=>qe.toLowerCase())),Ye.forEach(function(qe){const Ne=qe.split("|");Ee[Ne[0]]=[Rt,Ce(Ne[0],Ne[1])]})}}function Ce(Z,re){return re?Number(re):function ee(Z){return vt.includes(Z.toLowerCase())}(Z)?0:1}const ae={},ie=Z=>{console.error(Z)},pe=(Z,...re)=>{console.log(`WARN: ${Z}`,...re)},Te=(Z,re)=>{ae[`${Z}/${re}`]||(console.log(`Deprecated as of ${Z}. ${re}`),ae[`${Z}/${re}`]=!0)},ct=new Error;function Lt(Z,re,{key:ce}){let Ee=0;const it=Z[ce],Rt={},Ye={};for(let qe=1;qe<=re.length;qe++)Ye[qe+Ee]=it[qe],Rt[qe+Ee]=!0,Ee+=M(re[qe-1]);Z[ce]=Ye,Z[ce]._emit=Rt,Z[ce]._multi=!0}function yt(Z){(function ze(Z){Z.scope&&"object"==typeof Z.scope&&null!==Z.scope&&(Z.beginScope=Z.scope,delete Z.scope)})(Z),"string"==typeof Z.beginScope&&(Z.beginScope={_wrap:Z.beginScope}),"string"==typeof Z.endScope&&(Z.endScope={_wrap:Z.endScope}),function Dt(Z){if(Array.isArray(Z.begin)){if(Z.skip||Z.excludeBegin||Z.returnBegin)throw ie("skip, excludeBegin, returnBegin not compatible with beginScope: {}"),ct;if("object"!=typeof Z.beginScope||null===Z.beginScope)throw ie("beginScope must be object"),ct;Lt(Z,Z.begin,{key:"beginScope"}),Z.begin=L(Z.begin,{joinWith:""})}}(Z),function Kt(Z){if(Array.isArray(Z.end)){if(Z.skip||Z.excludeEnd||Z.returnEnd)throw ie("skip, excludeEnd, returnEnd not compatible with endScope: {}"),ct;if("object"!=typeof Z.endScope||null===Z.endScope)throw ie("endScope must be object"),ct;Lt(Z,Z.end,{key:"endScope"}),Z.end=L(Z.end,{joinWith:""})}}(Z)}function Bt(Z){function re(Ye,qe){return new RegExp(l(Ye),"m"+(Z.case_insensitive?"i":"")+(Z.unicodeRegex?"u":"")+(qe?"g":""))}class ce{constructor(){this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0}addRule(qe,Ne){Ne.position=this.position++,this.matchIndexes[this.matchAt]=Ne,this.regexes.push([Ne,qe]),this.matchAt+=M(qe)+1}compile(){0===this.regexes.length&&(this.exec=()=>null);const qe=this.regexes.map(Ne=>Ne[1]);this.matcherRe=re(L(qe,{joinWith:"|"}),!0),this.lastIndex=0}exec(qe){this.matcherRe.lastIndex=this.lastIndex;const Ne=this.matcherRe.exec(qe);if(!Ne)return null;const dt=Ne.findIndex((tn,wn)=>wn>0&&void 0!==tn),At=this.matchIndexes[dt];return Ne.splice(0,dt),Object.assign(Ne,At)}}class Ee{constructor(){this.rules=[],this.multiRegexes=[],this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(qe){if(this.multiRegexes[qe])return this.multiRegexes[qe];const Ne=new ce;return this.rules.slice(qe).forEach(([dt,At])=>Ne.addRule(dt,At)),Ne.compile(),this.multiRegexes[qe]=Ne,Ne}resumingScanAtSamePosition(){return 0!==this.regexIndex}considerAll(){this.regexIndex=0}addRule(qe,Ne){this.rules.push([qe,Ne]),"begin"===Ne.type&&this.count++}exec(qe){const Ne=this.getMatcher(this.regexIndex);Ne.lastIndex=this.lastIndex;let dt=Ne.exec(qe);if(this.resumingScanAtSamePosition()&&(!dt||dt.index!==this.lastIndex)){const At=this.getMatcher(0);At.lastIndex=this.lastIndex+1,dt=At.exec(qe)}return dt&&(this.regexIndex+=dt.position+1,this.regexIndex===this.count&&this.considerAll()),dt}}if(Z.compilerExtensions||(Z.compilerExtensions=[]),Z.contains&&Z.contains.includes("self"))throw new Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.");return Z.classNameAliases=p(Z.classNameAliases||{}),function Rt(Ye,qe){const Ne=Ye;if(Ye.isCompiled)return Ne;[tt,xt,yt,ot].forEach(At=>At(Ye,qe)),Z.compilerExtensions.forEach(At=>At(Ye,qe)),Ye.__beforeBegin=null,[St,bt,nt].forEach(At=>At(Ye,qe)),Ye.isCompiled=!0;let dt=null;return"object"==typeof Ye.keywords&&Ye.keywords.$pattern&&(Ye.keywords=Object.assign({},Ye.keywords),dt=Ye.keywords.$pattern,delete Ye.keywords.$pattern),dt=dt||/\w+/,Ye.keywords&&(Ye.keywords=J(Ye.keywords,Z.case_insensitive)),Ne.keywordPatternRe=re(dt,!0),qe&&(Ye.begin||(Ye.begin=/\B|\b/),Ne.beginRe=re(Ne.begin),!Ye.end&&!Ye.endsWithParent&&(Ye.end=/\B|\b/),Ye.end&&(Ne.endRe=re(Ne.end)),Ne.terminatorEnd=l(Ne.end)||"",Ye.endsWithParent&&qe.terminatorEnd&&(Ne.terminatorEnd+=(Ye.end?"|":"")+qe.terminatorEnd)),Ye.illegal&&(Ne.illegalRe=re(Ye.illegal)),Ye.contains||(Ye.contains=[]),Ye.contains=[].concat(...Ye.contains.map(function(At){return function Yt(Z){return Z.variants&&!Z.cachedVariants&&(Z.cachedVariants=Z.variants.map(function(re){return p(Z,{variants:null},re)})),Z.cachedVariants?Z.cachedVariants:$t(Z)?p(Z,{starts:Z.starts?p(Z.starts):null}):Object.isFrozen(Z)?p(Z):Z}("self"===At?Ye:At)})),Ye.contains.forEach(function(At){Rt(At,Ne)}),Ye.starts&&Rt(Ye.starts,qe),Ne.matcher=function it(Ye){const qe=new Ee;return Ye.contains.forEach(Ne=>qe.addRule(Ne.begin,{rule:Ne,type:"begin"})),Ye.terminatorEnd&&qe.addRule(Ye.terminatorEnd,{type:"end"}),Ye.illegal&&qe.addRule(Ye.illegal,{type:"illegal"}),qe}(Ne),Ne}(Z)}function $t(Z){return!!Z&&(Z.endsWithParent||$t(Z.starts))}class We extends Error{constructor(re,ce){super(re),this.name="HTMLInjectionError",this.html=ce}}const ve=n,we=p,at=Symbol("nomatch"),je=function(Z){const re=Object.create(null),ce=Object.create(null),Ee=[];let it=!0;const Rt="Could not find the language '{}', did you forget to load/include a language module?",Ye={disableAutodetect:!0,name:"Plain text",contains:[]};let qe={ignoreUnescapedHTML:!1,throwUnescapedHTML:!1,noHighlightRe:/^(no-?highlight)$/i,languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-",cssSelector:"pre code",languages:null,__emitter:s};function Ne(ln){return qe.noHighlightRe.test(ln)}function At(ln,en,Dn){let An="",Yn="";"object"==typeof en?(An=ln,Dn=en.ignoreIllegals,Yn=en.language):(Te("10.7.0","highlight(lang, code, ...args) has been deprecated."),Te("10.7.0","Please use highlight(code, options) instead.\nhttps://github.com/highlightjs/highlight.js/issues/2277"),Yn=ln,An=en),void 0===Dn&&(Dn=!0);const si={code:An,language:Yn};Qn("before:highlight",si);const ii=si.result?si.result:tn(si.language,si.code,Dn);return ii.code=si.code,Qn("after:highlight",ii),ii}function tn(ln,en,Dn,An){const Yn=Object.create(null);function si(fn,yn){return fn.keywords[yn]}function ii(){if(!pn.keywords)return void Nn.addText(kn);let fn=0;pn.keywordPatternRe.lastIndex=0;let yn=pn.keywordPatternRe.exec(kn),rn="";for(;yn;){rn+=kn.substring(fn,yn.index);const xn=zt.case_insensitive?yn[0].toLowerCase():yn[0],ti=si(pn,xn);if(ti){const[Ti,zi]=ti;Nn.addText(rn),rn="",Yn[xn]=(Yn[xn]||0)+1,Yn[xn]<=7&&(Un+=zi),Ti.startsWith("_")?rn+=yn[0]:li(yn[0],zt.classNameAliases[Ti]||Ti)}else rn+=yn[0];fn=pn.keywordPatternRe.lastIndex,yn=pn.keywordPatternRe.exec(kn)}rn+=kn.substring(fn),Nn.addText(rn)}function oi(){null!=pn.subLanguage?function Ii(){if(""===kn)return;let fn=null;if("string"==typeof pn.subLanguage){if(!re[pn.subLanguage])return void Nn.addText(kn);fn=tn(pn.subLanguage,kn,!0,Jn[pn.subLanguage]),Jn[pn.subLanguage]=fn._top}else fn=Tn(kn,pn.subLanguage.length?pn.subLanguage:null);pn.relevance>0&&(Un+=fn.relevance),Nn.__addSublanguage(fn._emitter,fn.language)}():ii(),kn=""}function li(fn,yn){""!==fn&&(Nn.startScope(yn),Nn.addText(fn),Nn.endScope())}function Pi(fn,yn){let rn=1;const xn=yn.length-1;for(;rn<=xn;){if(!fn._emit[rn]){rn++;continue}const ti=zt.classNameAliases[fn[rn]]||fn[rn],Ti=yn[rn];ti?li(Ti,ti):(kn=Ti,ii(),kn=""),rn++}}function Ct(fn,yn){return fn.scope&&"string"==typeof fn.scope&&Nn.openNode(zt.classNameAliases[fn.scope]||fn.scope),fn.beginScope&&(fn.beginScope._wrap?(li(kn,zt.classNameAliases[fn.beginScope._wrap]||fn.beginScope._wrap),kn=""):fn.beginScope._multi&&(Pi(fn.beginScope,yn),kn="")),pn=Object.create(fn,{parent:{value:pn}}),pn}function Ft(fn,yn,rn){let xn=function x(Z,re){const ce=Z&&Z.exec(re);return ce&&0===ce.index}(fn.endRe,rn);if(xn){if(fn["on:end"]){const ti=new g(fn);fn["on:end"](yn,ti),ti.isMatchIgnored&&(xn=!1)}if(xn){for(;fn.endsParent&&fn.parent;)fn=fn.parent;return fn}}if(fn.endsWithParent)return Ft(fn.parent,yn,rn)}function Ae(fn){return 0===pn.matcher.regexIndex?(kn+=fn[0],1):(er=!0,0)}function be(fn){const yn=fn[0],rn=en.substring(fn.index),xn=Ft(pn,fn,rn);if(!xn)return at;const ti=pn;pn.endScope&&pn.endScope._wrap?(oi(),li(yn,pn.endScope._wrap)):pn.endScope&&pn.endScope._multi?(oi(),Pi(pn.endScope,fn)):ti.skip?kn+=yn:(ti.returnEnd||ti.excludeEnd||(kn+=yn),oi(),ti.excludeEnd&&(kn=yn));do{pn.scope&&Nn.closeNode(),!pn.skip&&!pn.subLanguage&&(Un+=pn.relevance),pn=pn.parent}while(pn!==xn.parent);return xn.starts&&Ct(xn.starts,fn),ti.returnEnd?0:yn.length}let Ge={};function It(fn,yn){const rn=yn&&yn[0];if(kn+=fn,null==rn)return oi(),0;if("begin"===Ge.type&&"end"===yn.type&&Ge.index===yn.index&&""===rn){if(kn+=en.slice(yn.index,yn.index+1),!it){const xn=new Error(`0 width match regex (${ln})`);throw xn.languageName=ln,xn.badRule=Ge.rule,xn}return 1}if(Ge=yn,"begin"===yn.type)return function W(fn){const yn=fn[0],rn=fn.rule,xn=new g(rn),ti=[rn.__beforeBegin,rn["on:begin"]];for(const Ti of ti)if(Ti&&(Ti(fn,xn),xn.isMatchIgnored))return Ae(yn);return rn.skip?kn+=yn:(rn.excludeBegin&&(kn+=yn),oi(),!rn.returnBegin&&!rn.excludeBegin&&(kn=yn)),Ct(rn,fn),rn.returnBegin?0:yn.length}(yn);if("illegal"===yn.type&&!Dn){const xn=new Error('Illegal lexeme "'+rn+'" for mode "'+(pn.scope||"")+'"');throw xn.mode=pn,xn}if("end"===yn.type){const xn=be(yn);if(xn!==at)return xn}if("illegal"===yn.type&&""===rn)return 1;if($i>1e5&&$i>3*yn.index)throw new Error("potential infinite loop, way more iterations than matches");return kn+=rn,rn.length}const zt=hn(ln);if(!zt)throw ie(Rt.replace("{}",ln)),new Error('Unknown language: "'+ln+'"');const an=Bt(zt);let gn="",pn=An||an;const Jn={},Nn=new qe.__emitter(qe);!function ge(){const fn=[];for(let yn=pn;yn!==zt;yn=yn.parent)yn.scope&&fn.unshift(yn.scope);fn.forEach(yn=>Nn.openNode(yn))}();let kn="",Un=0,vi=0,$i=0,er=!1;try{if(zt.__emitTokens)zt.__emitTokens(en,Nn);else{for(pn.matcher.considerAll();;){$i++,er?er=!1:pn.matcher.considerAll(),pn.matcher.lastIndex=vi;const fn=pn.matcher.exec(en);if(!fn)break;const rn=It(en.substring(vi,fn.index),fn);vi=fn.index+rn}It(en.substring(vi))}return Nn.finalize(),gn=Nn.toHTML(),{language:ln,value:gn,relevance:Un,illegal:!1,_emitter:Nn,_top:pn}}catch(fn){if(fn.message&&fn.message.includes("Illegal"))return{language:ln,value:ve(en),illegal:!0,relevance:0,_illegalBy:{message:fn.message,index:vi,context:en.slice(vi-100,vi+100),mode:fn.mode,resultSoFar:gn},_emitter:Nn};if(it)return{language:ln,value:ve(en),illegal:!1,relevance:0,errorRaised:fn,_emitter:Nn,_top:pn};throw fn}}function Tn(ln,en){en=en||qe.languages||Object.keys(re);const Dn=function wn(ln){const en={value:ve(ln),illegal:!1,relevance:0,_top:Ye,_emitter:new qe.__emitter(qe)};return en._emitter.addText(ln),en}(ln),An=en.filter(hn).filter($n).map(oi=>tn(oi,ln,!1));An.unshift(Dn);const Yn=An.sort((oi,li)=>{if(oi.relevance!==li.relevance)return li.relevance-oi.relevance;if(oi.language&&li.language){if(hn(oi.language).supersetOf===li.language)return 1;if(hn(li.language).supersetOf===oi.language)return-1}return 0}),[si,ii]=Yn,Ii=si;return Ii.secondBest=ii,Ii}function Mn(ln){let en=null;const Dn=function dt(ln){let en=ln.className+" ";en+=ln.parentNode?ln.parentNode.className:"";const Dn=qe.languageDetectRe.exec(en);if(Dn){const An=hn(Dn[1]);return An||(pe(Rt.replace("{}",Dn[1])),pe("Falling back to no-highlight mode for this block.",ln)),An?Dn[1]:"no-highlight"}return en.split(/\s+/).find(An=>Ne(An)||hn(An))}(ln);if(Ne(Dn))return;if(Qn("before:highlightElement",{el:ln,language:Dn}),ln.children.length>0&&(qe.ignoreUnescapedHTML||(console.warn("One of your code blocks includes unescaped HTML. This is a potentially serious security risk."),console.warn("https://github.com/highlightjs/highlight.js/wiki/security"),console.warn("The element with unescaped HTML:"),console.warn(ln)),qe.throwUnescapedHTML))throw new We("One of your code blocks includes unescaped HTML.",ln.innerHTML);en=ln;const An=en.textContent,Yn=Dn?At(An,{language:Dn,ignoreIllegals:!0}):Tn(An);ln.innerHTML=Yn.value,function Sn(ln,en,Dn){const An=en&&ce[en]||Dn;ln.classList.add("hljs"),ln.classList.add(`language-${An}`)}(ln,Dn,Yn.language),ln.result={language:Yn.language,re:Yn.relevance,relevance:Yn.relevance},Yn.secondBest&&(ln.secondBest={language:Yn.secondBest.language,relevance:Yn.secondBest.relevance}),Qn("after:highlightElement",{el:ln,result:Yn,text:An})}let Qi=!1;function wt(){"loading"!==document.readyState?document.querySelectorAll(qe.cssSelector).forEach(Mn):Qi=!0}function hn(ln){return ln=(ln||"").toLowerCase(),re[ln]||re[ce[ln]]}function un(ln,{languageName:en}){"string"==typeof ln&&(ln=[ln]),ln.forEach(Dn=>{ce[Dn.toLowerCase()]=en})}function $n(ln){const en=hn(ln);return en&&!en.disableAutodetect}function Qn(ln,en){const Dn=ln;Ee.forEach(function(An){An[Dn]&&An[Dn](en)})}typeof window<"u"&&window.addEventListener&&window.addEventListener("DOMContentLoaded",function mt(){Qi&&wt()},!1),Object.assign(Z,{highlight:At,highlightAuto:Tn,highlightAll:wt,highlightElement:Mn,highlightBlock:function ri(ln){return Te("10.7.0","highlightBlock will be removed entirely in v12.0"),Te("10.7.0","Please use highlightElement now."),Mn(ln)},configure:function Ci(ln){qe=we(qe,ln)},initHighlighting:()=>{wt(),Te("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")},initHighlightingOnLoad:function Li(){wt(),Te("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.")},registerLanguage:function pt(ln,en){let Dn=null;try{Dn=en(Z)}catch(An){if(ie("Language definition for '{}' could not be registered.".replace("{}",ln)),!it)throw An;ie(An),Dn=Ye}Dn.name||(Dn.name=ln),re[ln]=Dn,Dn.rawDefinition=en.bind(null,Z),Dn.aliases&&un(Dn.aliases,{languageName:ln})},unregisterLanguage:function qt(ln){delete re[ln];for(const en of Object.keys(ce))ce[en]===ln&&delete ce[en]},listLanguages:function on(){return Object.keys(re)},getLanguage:hn,registerAliases:un,autoDetection:$n,inherit:we,addPlugin:function Zn(ln){(function In(ln){ln["before:highlightBlock"]&&!ln["before:highlightElement"]&&(ln["before:highlightElement"]=en=>{ln["before:highlightBlock"](Object.assign({block:en.el},en))}),ln["after:highlightBlock"]&&!ln["after:highlightElement"]&&(ln["after:highlightElement"]=en=>{ln["after:highlightBlock"](Object.assign({block:en.el},en))})})(ln),Ee.push(ln)},removePlugin:function mi(ln){const en=Ee.indexOf(ln);-1!==en&&Ee.splice(en,1)}}),Z.debugMode=function(){it=!1},Z.safeMode=function(){it=!0},Z.versionString="11.8.0",Z.regex={concat:h,lookahead:d,either:_,optional:u,anyNumberOfTimes:r};for(const ln in st)"object"==typeof st[ln]&&X(st[ln]);return Object.assign(Z,st),Z},ke=je({});ke.newInstance=()=>je({}),Se.exports=ke,ke.HighlightJS=ke,ke.default=ke},5454:Se=>{Se.exports=function X(g){const C=["true","false","null"],b={scope:"literal",beginKeywords:C.join(" ")};return{name:"JSON",keywords:{literal:C},contains:[{className:"attr",begin:/"(\\.|[^\\"\r\n])*"(?=\s*:)/,relevance:1.01},{match:/[{}[\],:]/,className:"punctuation",relevance:0},g.QUOTE_STRING_MODE,b,g.C_NUMBER_MODE,g.C_LINE_COMMENT_MODE,g.C_BLOCK_COMMENT_MODE],illegal:"\\S"}}},5149:Se=>{Se.exports=function X(g){const n=g.regex,p=n.concat(/[\p{L}_]/u,n.optional(/[\p{L}0-9_.-]*:/u),/[\p{L}0-9_.-]*/u),b={className:"symbol",begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},o={begin:/\s/,contains:[{className:"keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}]},v=g.inherit(o,{begin:/\(/,end:/\)/}),a=g.inherit(g.APOS_STRING_MODE,{className:"string"}),c=g.inherit(g.QUOTE_STRING_MODE,{className:"string"}),s={endsWithParent:!0,illegal:/`]+/}]}]}]};return{name:"HTML, XML",aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist","wsf","svg"],case_insensitive:!0,unicodeRegex:!0,contains:[{className:"meta",begin://,relevance:10,contains:[o,c,a,v,{begin:/\[/,end:/\]/,contains:[{className:"meta",begin://,contains:[o,v,c,a]}]}]},g.COMMENT(//,{relevance:10}),{begin://,relevance:10},b,{className:"meta",end:/\?>/,variants:[{begin:/<\?xml/,relevance:10,contains:[c]},{begin:/<\?[a-z][a-z0-9]+/}]},{className:"tag",begin:/)/,end:/>/,keywords:{name:"style"},contains:[s],starts:{end:/<\/style>/,returnEnd:!0,subLanguage:["css","xml"]}},{className:"tag",begin:/)/,end:/>/,keywords:{name:"script"},contains:[s],starts:{end:/<\/script>/,returnEnd:!0,subLanguage:["javascript","handlebars","xml"]}},{className:"tag",begin:/<>|<\/>/},{className:"tag",begin:n.concat(//,/>/,/\s/)))),end:/\/?>/,contains:[{className:"name",begin:p,relevance:0,starts:s}]},{className:"tag",begin:n.concat(/<\//,n.lookahead(n.concat(p,/>/))),contains:[{className:"name",begin:p,relevance:0},{begin:/>/,relevance:0,endsParent:!0}]}]}}},7156:Se=>{function X(n,p,C,b,o,v,a){try{var c=n[v](a),s=c.value}catch(l){return void C(l)}c.done?p(s):Promise.resolve(s).then(b,o)}Se.exports=function g(n){return function(){var p=this,C=arguments;return new Promise(function(b,o){var v=n.apply(p,C);function a(s){X(v,b,o,a,c,"next",s)}function c(s){X(v,b,o,a,c,"throw",s)}a(void 0)})}},Se.exports.__esModule=!0,Se.exports.default=Se.exports},8416:(Se,X,g)=>{var n=g(4062);Se.exports=function p(C,b,o){return(b=n(b))in C?Object.defineProperty(C,b,{value:o,enumerable:!0,configurable:!0,writable:!0}):C[b]=o,C},Se.exports.__esModule=!0,Se.exports.default=Se.exports},5036:(Se,X,g)=>{var n=g(8698).default;Se.exports=function p(C,b){if("object"!==n(C)||null===C)return C;var o=C[Symbol.toPrimitive];if(void 0!==o){var v=o.call(C,b||"default");if("object"!==n(v))return v;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===b?String:Number)(C)},Se.exports.__esModule=!0,Se.exports.default=Se.exports},4062:(Se,X,g)=>{var n=g(8698).default,p=g(5036);Se.exports=function C(b){var o=p(b,"string");return"symbol"===n(o)?o:String(o)},Se.exports.__esModule=!0,Se.exports.default=Se.exports},8698:Se=>{function X(g){return Se.exports=X="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(n){return typeof n}:function(n){return n&&"function"==typeof Symbol&&n.constructor===Symbol&&n!==Symbol.prototype?"symbol":typeof n},Se.exports.__esModule=!0,Se.exports.default=Se.exports,X(g)}Se.exports=X,Se.exports.__esModule=!0,Se.exports.default=Se.exports},6825:(Se,X,g)=>{"use strict";function b(L,A){return{type:7,name:L,definitions:A,options:{}}}function o(L,A=null){return{type:4,styles:A,timings:L}}function v(L,A=null){return{type:3,steps:L,options:A}}function c(L){return{type:6,styles:L,offset:null}}function s(L,A,T){return{type:0,name:L,styles:A,options:T}}function l(L){return{type:5,steps:L}}function d(L,A,T=null){return{type:1,expr:L,animation:A,options:T}}function u(L=null){return{type:9,options:L}}function m(L,A,T=null){return{type:11,selector:L,animation:A,options:T}}g.d(X,{F4:()=>l,IO:()=>m,SB:()=>s,X$:()=>b,eR:()=>d,jt:()=>o,oB:()=>c,pV:()=>u,ru:()=>v})},4300:(Se,X,g)=>{"use strict";g.d(X,{$s:()=>N,Em:()=>se,Kd:()=>yt,X6:()=>Ce,Zf:()=>A,iD:()=>T,kH:()=>We,mK:()=>xt,qm:()=>De,rt:()=>je,s1:()=>Y,tE:()=>Ue,yG:()=>ee});var n=g(6814),p=g(5879),C=g(2831),b=g(8645),o=g(7394),v=g(5619),a=g(2096),c=g(6028),s=g(9397),l=g(3620),d=g(2181),r=g(7398),u=g(8180),h=g(836),m=g(3997),_=g(9773),M=g(2495),x=g(7131),w=g(1088);const L=" ";function A(ke,Z,re){const ce=O(ke,Z);ce.some(Ee=>Ee.trim()==re.trim())||(ce.push(re.trim()),ke.setAttribute(Z,ce.join(L)))}function T(ke,Z,re){const Ee=O(ke,Z).filter(it=>it!=re.trim());Ee.length?ke.setAttribute(Z,Ee.join(L)):ke.removeAttribute(Z)}function O(ke,Z){return(ke.getAttribute(Z)||"").match(/\S+/g)||[]}const D="cdk-describedby-message",R="cdk-describedby-host";let j=0,N=(()=>{class ke{constructor(re,ce){this._platform=ce,this._messageRegistry=new Map,this._messagesContainer=null,this._id=""+j++,this._document=re,this._id=(0,p.inject)(p.APP_ID)+"-"+j++}describe(re,ce,Ee){if(!this._canBeDescribed(re,ce))return;const it=S(ce,Ee);"string"!=typeof ce?(k(ce,this._id),this._messageRegistry.set(it,{messageElement:ce,referenceCount:0})):this._messageRegistry.has(it)||this._createMessageElement(ce,Ee),this._isElementDescribedByMessage(re,it)||this._addMessageReference(re,it)}removeDescription(re,ce,Ee){if(!ce||!this._isElementNode(re))return;const it=S(ce,Ee);if(this._isElementDescribedByMessage(re,it)&&this._removeMessageReference(re,it),"string"==typeof ce){const Rt=this._messageRegistry.get(it);Rt&&0===Rt.referenceCount&&this._deleteMessageElement(it)}0===this._messagesContainer?.childNodes.length&&(this._messagesContainer.remove(),this._messagesContainer=null)}ngOnDestroy(){const re=this._document.querySelectorAll(`[${R}="${this._id}"]`);for(let ce=0;ce0!=Ee.indexOf(D));re.setAttribute("aria-describedby",ce.join(" "))}_addMessageReference(re,ce){const Ee=this._messageRegistry.get(ce);A(re,"aria-describedby",Ee.messageElement.id),re.setAttribute(R,this._id),Ee.referenceCount++}_removeMessageReference(re,ce){const Ee=this._messageRegistry.get(ce);Ee.referenceCount--,T(re,"aria-describedby",Ee.messageElement.id),re.removeAttribute(R)}_isElementDescribedByMessage(re,ce){const Ee=O(re,"aria-describedby"),it=this._messageRegistry.get(ce),Rt=it&&it.messageElement.id;return!!Rt&&-1!=Ee.indexOf(Rt)}_canBeDescribed(re,ce){if(!this._isElementNode(re))return!1;if(ce&&"object"==typeof ce)return!0;const Ee=null==ce?"":`${ce}`.trim(),it=re.getAttribute("aria-label");return!(!Ee||it&&it.trim()===Ee)}_isElementNode(re){return re.nodeType===this._document.ELEMENT_NODE}}return ke.\u0275fac=function(re){return new(re||ke)(p.\u0275\u0275inject(n.DOCUMENT),p.\u0275\u0275inject(C.t4))},ke.\u0275prov=p.\u0275\u0275defineInjectable({token:ke,factory:ke.\u0275fac,providedIn:"root"}),ke})();function S(ke,Z){return"string"==typeof ke?`${Z||""}/${ke}`:ke}function k(ke,Z){ke.id||(ke.id=`${D}-${Z}-${j++}`)}class F{constructor(Z){this._items=Z,this._activeItemIndex=-1,this._activeItem=null,this._wrap=!1,this._letterKeyStream=new b.x,this._typeaheadSubscription=o.w0.EMPTY,this._vertical=!0,this._allowedModifierKeys=[],this._homeAndEnd=!1,this._pageUpAndDown={enabled:!1,delta:10},this._skipPredicateFn=re=>re.disabled,this._pressedLetters=[],this.tabOut=new b.x,this.change=new b.x,Z instanceof p.QueryList&&(this._itemChangesSubscription=Z.changes.subscribe(re=>{if(this._activeItem){const Ee=re.toArray().indexOf(this._activeItem);Ee>-1&&Ee!==this._activeItemIndex&&(this._activeItemIndex=Ee)}}))}skipPredicate(Z){return this._skipPredicateFn=Z,this}withWrap(Z=!0){return this._wrap=Z,this}withVerticalOrientation(Z=!0){return this._vertical=Z,this}withHorizontalOrientation(Z){return this._horizontal=Z,this}withAllowedModifierKeys(Z){return this._allowedModifierKeys=Z,this}withTypeAhead(Z=200){return this._typeaheadSubscription.unsubscribe(),this._typeaheadSubscription=this._letterKeyStream.pipe((0,s.b)(re=>this._pressedLetters.push(re)),(0,l.b)(Z),(0,d.h)(()=>this._pressedLetters.length>0),(0,r.U)(()=>this._pressedLetters.join(""))).subscribe(re=>{const ce=this._getItemsArray();for(let Ee=1;Ee!Z[it]||this._allowedModifierKeys.indexOf(it)>-1);switch(re){case c.Mf:return void this.tabOut.next();case c.JH:if(this._vertical&&Ee){this.setNextItemActive();break}return;case c.LH:if(this._vertical&&Ee){this.setPreviousItemActive();break}return;case c.SV:if(this._horizontal&&Ee){"rtl"===this._horizontal?this.setPreviousItemActive():this.setNextItemActive();break}return;case c.oh:if(this._horizontal&&Ee){"rtl"===this._horizontal?this.setNextItemActive():this.setPreviousItemActive();break}return;case c.Sd:if(this._homeAndEnd&&Ee){this.setFirstItemActive();break}return;case c.uR:if(this._homeAndEnd&&Ee){this.setLastItemActive();break}return;case c.Ku:if(this._pageUpAndDown.enabled&&Ee){const it=this._activeItemIndex-this._pageUpAndDown.delta;this._setActiveItemByIndex(it>0?it:0,1);break}return;case c.VM:if(this._pageUpAndDown.enabled&&Ee){const it=this._activeItemIndex+this._pageUpAndDown.delta,Rt=this._getItemsArray().length;this._setActiveItemByIndex(it=c.A&&re<=c.Z||re>=c.xE&&re<=c.aO)&&this._letterKeyStream.next(String.fromCharCode(re))))}this._pressedLetters=[],Z.preventDefault()}get activeItemIndex(){return this._activeItemIndex}get activeItem(){return this._activeItem}isTyping(){return this._pressedLetters.length>0}setFirstItemActive(){this._setActiveItemByIndex(0,1)}setLastItemActive(){this._setActiveItemByIndex(this._items.length-1,-1)}setNextItemActive(){this._activeItemIndex<0?this.setFirstItemActive():this._setActiveItemByDelta(1)}setPreviousItemActive(){this._activeItemIndex<0&&this._wrap?this.setLastItemActive():this._setActiveItemByDelta(-1)}updateActiveItem(Z){const re=this._getItemsArray(),ce="number"==typeof Z?Z:re.indexOf(Z);this._activeItem=re[ce]??null,this._activeItemIndex=ce}destroy(){this._typeaheadSubscription.unsubscribe(),this._itemChangesSubscription?.unsubscribe(),this._letterKeyStream.complete(),this.tabOut.complete(),this.change.complete(),this._pressedLetters=[]}_setActiveItemByDelta(Z){this._wrap?this._setActiveInWrapMode(Z):this._setActiveInDefaultMode(Z)}_setActiveInWrapMode(Z){const re=this._getItemsArray();for(let ce=1;ce<=re.length;ce++){const Ee=(this._activeItemIndex+Z*ce+re.length)%re.length;if(!this._skipPredicateFn(re[Ee]))return void this.setActiveItem(Ee)}}_setActiveInDefaultMode(Z){this._setActiveItemByIndex(this._activeItemIndex+Z,Z)}_setActiveItemByIndex(Z,re){const ce=this._getItemsArray();if(ce[Z]){for(;this._skipPredicateFn(ce[Z]);)if(!ce[Z+=re])return;this.setActiveItem(Z)}}_getItemsArray(){return this._items instanceof p.QueryList?this._items.toArray():this._items}}class Y extends F{setActiveItem(Z){this.activeItem&&this.activeItem.setInactiveStyles(),super.setActiveItem(Z),this.activeItem&&this.activeItem.setActiveStyles()}}class se extends F{constructor(){super(...arguments),this._origin="program"}setFocusOrigin(Z){return this._origin=Z,this}setActiveItem(Z){super.setActiveItem(Z),this.activeItem&&this.activeItem.focus(this._origin)}}let me=(()=>{class ke{constructor(re){this._platform=re}isDisabled(re){return re.hasAttribute("disabled")}isVisible(re){return function q(ke){return!!(ke.offsetWidth||ke.offsetHeight||"function"==typeof ke.getClientRects&&ke.getClientRects().length)}(re)&&"visible"===getComputedStyle(re).visibility}isTabbable(re){if(!this._platform.isBrowser)return!1;const ce=function $(ke){try{return ke.frameElement}catch{return null}}(function tt(ke){return ke.ownerDocument&&ke.ownerDocument.defaultView||window}(re));if(ce&&(-1===$e(ce)||!this.isVisible(ce)))return!1;let Ee=re.nodeName.toLowerCase(),it=$e(re);return re.hasAttribute("contenteditable")?-1!==it:!("iframe"===Ee||"object"===Ee||this._platform.WEBKIT&&this._platform.IOS&&!function st(ke){let Z=ke.nodeName.toLowerCase(),re="input"===Z&&ke.type;return"text"===re||"password"===re||"select"===Z||"textarea"===Z}(re))&&("audio"===Ee?!!re.hasAttribute("controls")&&-1!==it:"video"===Ee?-1!==it&&(null!==it||this._platform.FIREFOX||re.hasAttribute("controls")):re.tabIndex>=0)}isFocusable(re,ce){return function Mt(ke){return!function ue(ke){return function Oe(ke){return"input"==ke.nodeName.toLowerCase()}(ke)&&"hidden"==ke.type}(ke)&&(function Q(ke){let Z=ke.nodeName.toLowerCase();return"input"===Z||"select"===Z||"button"===Z||"textarea"===Z}(ke)||function Me(ke){return function Xe(ke){return"a"==ke.nodeName.toLowerCase()}(ke)&&ke.hasAttribute("href")}(ke)||ke.hasAttribute("contenteditable")||Be(ke))}(re)&&!this.isDisabled(re)&&(ce?.ignoreVisibility||this.isVisible(re))}}return ke.\u0275fac=function(re){return new(re||ke)(p.\u0275\u0275inject(C.t4))},ke.\u0275prov=p.\u0275\u0275defineInjectable({token:ke,factory:ke.\u0275fac,providedIn:"root"}),ke})();function Be(ke){if(!ke.hasAttribute("tabindex")||void 0===ke.tabIndex)return!1;let Z=ke.getAttribute("tabindex");return!(!Z||isNaN(parseInt(Z,10)))}function $e(ke){if(!Be(ke))return null;const Z=parseInt(ke.getAttribute("tabindex")||"",10);return isNaN(Z)?-1:Z}class St{get enabled(){return this._enabled}set enabled(Z){this._enabled=Z,this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(Z,this._startAnchor),this._toggleAnchorTabIndex(Z,this._endAnchor))}constructor(Z,re,ce,Ee,it=!1){this._element=Z,this._checker=re,this._ngZone=ce,this._document=Ee,this._hasAttached=!1,this.startAnchorListener=()=>this.focusLastTabbableElement(),this.endAnchorListener=()=>this.focusFirstTabbableElement(),this._enabled=!0,it||this.attachAnchors()}destroy(){const Z=this._startAnchor,re=this._endAnchor;Z&&(Z.removeEventListener("focus",this.startAnchorListener),Z.remove()),re&&(re.removeEventListener("focus",this.endAnchorListener),re.remove()),this._startAnchor=this._endAnchor=null,this._hasAttached=!1}attachAnchors(){return!!this._hasAttached||(this._ngZone.runOutsideAngular(()=>{this._startAnchor||(this._startAnchor=this._createAnchor(),this._startAnchor.addEventListener("focus",this.startAnchorListener)),this._endAnchor||(this._endAnchor=this._createAnchor(),this._endAnchor.addEventListener("focus",this.endAnchorListener))}),this._element.parentNode&&(this._element.parentNode.insertBefore(this._startAnchor,this._element),this._element.parentNode.insertBefore(this._endAnchor,this._element.nextSibling),this._hasAttached=!0),this._hasAttached)}focusInitialElementWhenReady(Z){return new Promise(re=>{this._executeOnStable(()=>re(this.focusInitialElement(Z)))})}focusFirstTabbableElementWhenReady(Z){return new Promise(re=>{this._executeOnStable(()=>re(this.focusFirstTabbableElement(Z)))})}focusLastTabbableElementWhenReady(Z){return new Promise(re=>{this._executeOnStable(()=>re(this.focusLastTabbableElement(Z)))})}_getRegionBoundary(Z){const re=this._element.querySelectorAll(`[cdk-focus-region-${Z}], [cdkFocusRegion${Z}], [cdk-focus-${Z}]`);return"start"==Z?re.length?re[0]:this._getFirstTabbableElement(this._element):re.length?re[re.length-1]:this._getLastTabbableElement(this._element)}focusInitialElement(Z){const re=this._element.querySelector("[cdk-focus-initial], [cdkFocusInitial]");if(re){if(!this._checker.isFocusable(re)){const ce=this._getFirstTabbableElement(re);return ce?.focus(Z),!!ce}return re.focus(Z),!0}return this.focusFirstTabbableElement(Z)}focusFirstTabbableElement(Z){const re=this._getRegionBoundary("start");return re&&re.focus(Z),!!re}focusLastTabbableElement(Z){const re=this._getRegionBoundary("end");return re&&re.focus(Z),!!re}hasAttached(){return this._hasAttached}_getFirstTabbableElement(Z){if(this._checker.isFocusable(Z)&&this._checker.isTabbable(Z))return Z;const re=Z.children;for(let ce=0;ce=0;ce--){const Ee=re[ce].nodeType===this._document.ELEMENT_NODE?this._getLastTabbableElement(re[ce]):null;if(Ee)return Ee}return null}_createAnchor(){const Z=this._document.createElement("div");return this._toggleAnchorTabIndex(this._enabled,Z),Z.classList.add("cdk-visually-hidden"),Z.classList.add("cdk-focus-trap-anchor"),Z.setAttribute("aria-hidden","true"),Z}_toggleAnchorTabIndex(Z,re){Z?re.setAttribute("tabindex","0"):re.removeAttribute("tabindex")}toggleAnchors(Z){this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(Z,this._startAnchor),this._toggleAnchorTabIndex(Z,this._endAnchor))}_executeOnStable(Z){this._ngZone.isStable?Z():this._ngZone.onStable.pipe((0,u.q)(1)).subscribe(Z)}}let bt=(()=>{class ke{constructor(re,ce,Ee){this._checker=re,this._ngZone=ce,this._document=Ee}create(re,ce=!1){return new St(re,this._checker,this._ngZone,this._document,ce)}}return ke.\u0275fac=function(re){return new(re||ke)(p.\u0275\u0275inject(me),p.\u0275\u0275inject(p.NgZone),p.\u0275\u0275inject(n.DOCUMENT))},ke.\u0275prov=p.\u0275\u0275defineInjectable({token:ke,factory:ke.\u0275fac,providedIn:"root"}),ke})(),xt=(()=>{class ke{get enabled(){return this.focusTrap.enabled}set enabled(re){this.focusTrap.enabled=(0,M.Ig)(re)}get autoCapture(){return this._autoCapture}set autoCapture(re){this._autoCapture=(0,M.Ig)(re)}constructor(re,ce,Ee){this._elementRef=re,this._focusTrapFactory=ce,this._previouslyFocusedElement=null,this.focusTrap=this._focusTrapFactory.create(this._elementRef.nativeElement,!0)}ngOnDestroy(){this.focusTrap.destroy(),this._previouslyFocusedElement&&(this._previouslyFocusedElement.focus(),this._previouslyFocusedElement=null)}ngAfterContentInit(){this.focusTrap.attachAnchors(),this.autoCapture&&this._captureFocus()}ngDoCheck(){this.focusTrap.hasAttached()||this.focusTrap.attachAnchors()}ngOnChanges(re){const ce=re.autoCapture;ce&&!ce.firstChange&&this.autoCapture&&this.focusTrap.hasAttached()&&this._captureFocus()}_captureFocus(){this._previouslyFocusedElement=(0,C.ht)(),this.focusTrap.focusInitialElementWhenReady()}}return ke.\u0275fac=function(re){return new(re||ke)(p.\u0275\u0275directiveInject(p.ElementRef),p.\u0275\u0275directiveInject(bt),p.\u0275\u0275directiveInject(n.DOCUMENT))},ke.\u0275dir=p.\u0275\u0275defineDirective({type:ke,selectors:[["","cdkTrapFocus",""]],inputs:{enabled:["cdkTrapFocus","enabled"],autoCapture:["cdkTrapFocusAutoCapture","autoCapture"]},exportAs:["cdkTrapFocus"],features:[p.\u0275\u0275NgOnChangesFeature]}),ke})();function Ce(ke){return 0===ke.buttons||0===ke.offsetX&&0===ke.offsetY}function ee(ke){const Z=ke.touches&&ke.touches[0]||ke.changedTouches&&ke.changedTouches[0];return!(!Z||-1!==Z.identifier||null!=Z.radiusX&&1!==Z.radiusX||null!=Z.radiusY&&1!==Z.radiusY)}const ae=new p.InjectionToken("cdk-input-modality-detector-options"),ie={ignoreKeys:[c.zL,c.jx,c.b2,c.MW,c.JU]},Te=(0,C.i$)({passive:!0,capture:!0});let ct=(()=>{class ke{get mostRecentModality(){return this._modality.value}constructor(re,ce,Ee,it){this._platform=re,this._mostRecentTarget=null,this._modality=new v.X(null),this._lastTouchMs=0,this._onKeydown=Rt=>{this._options?.ignoreKeys?.some(Ye=>Ye===Rt.keyCode)||(this._modality.next("keyboard"),this._mostRecentTarget=(0,C.sA)(Rt))},this._onMousedown=Rt=>{Date.now()-this._lastTouchMs<650||(this._modality.next(Ce(Rt)?"keyboard":"mouse"),this._mostRecentTarget=(0,C.sA)(Rt))},this._onTouchstart=Rt=>{ee(Rt)?this._modality.next("keyboard"):(this._lastTouchMs=Date.now(),this._modality.next("touch"),this._mostRecentTarget=(0,C.sA)(Rt))},this._options={...ie,...it},this.modalityDetected=this._modality.pipe((0,h.T)(1)),this.modalityChanged=this.modalityDetected.pipe((0,m.x)()),re.isBrowser&&ce.runOutsideAngular(()=>{Ee.addEventListener("keydown",this._onKeydown,Te),Ee.addEventListener("mousedown",this._onMousedown,Te),Ee.addEventListener("touchstart",this._onTouchstart,Te)})}ngOnDestroy(){this._modality.complete(),this._platform.isBrowser&&(document.removeEventListener("keydown",this._onKeydown,Te),document.removeEventListener("mousedown",this._onMousedown,Te),document.removeEventListener("touchstart",this._onTouchstart,Te))}}return ke.\u0275fac=function(re){return new(re||ke)(p.\u0275\u0275inject(C.t4),p.\u0275\u0275inject(p.NgZone),p.\u0275\u0275inject(n.DOCUMENT),p.\u0275\u0275inject(ae,8))},ke.\u0275prov=p.\u0275\u0275defineInjectable({token:ke,factory:ke.\u0275fac,providedIn:"root"}),ke})();const Lt=new p.InjectionToken("liveAnnouncerElement",{providedIn:"root",factory:function Dt(){return null}}),Kt=new p.InjectionToken("LIVE_ANNOUNCER_DEFAULT_OPTIONS");let ze=0,yt=(()=>{class ke{constructor(re,ce,Ee,it){this._ngZone=ce,this._defaultOptions=it,this._document=Ee,this._liveElement=re||this._createLiveElement()}announce(re,...ce){const Ee=this._defaultOptions;let it,Rt;return 1===ce.length&&"number"==typeof ce[0]?Rt=ce[0]:[it,Rt]=ce,this.clear(),clearTimeout(this._previousTimeout),it||(it=Ee&&Ee.politeness?Ee.politeness:"polite"),null==Rt&&Ee&&(Rt=Ee.duration),this._liveElement.setAttribute("aria-live",it),this._liveElement.id&&this._exposeAnnouncerToModals(this._liveElement.id),this._ngZone.runOutsideAngular(()=>(this._currentPromise||(this._currentPromise=new Promise(Ye=>this._currentResolve=Ye)),clearTimeout(this._previousTimeout),this._previousTimeout=setTimeout(()=>{this._liveElement.textContent=re,"number"==typeof Rt&&(this._previousTimeout=setTimeout(()=>this.clear(),Rt)),this._currentResolve(),this._currentPromise=this._currentResolve=void 0},100),this._currentPromise))}clear(){this._liveElement&&(this._liveElement.textContent="")}ngOnDestroy(){clearTimeout(this._previousTimeout),this._liveElement?.remove(),this._liveElement=null,this._currentResolve?.(),this._currentPromise=this._currentResolve=void 0}_createLiveElement(){const re="cdk-live-announcer-element",ce=this._document.getElementsByClassName(re),Ee=this._document.createElement("div");for(let it=0;it .cdk-overlay-container [aria-modal="true"]');for(let Ee=0;Ee{class ke{constructor(re,ce,Ee,it,Rt){this._ngZone=re,this._platform=ce,this._inputModalityDetector=Ee,this._origin=null,this._windowFocused=!1,this._originFromTouchInteraction=!1,this._elementInfo=new Map,this._monitoredElementCount=0,this._rootNodeFocusListenerCount=new Map,this._windowFocusListener=()=>{this._windowFocused=!0,this._windowFocusTimeoutId=window.setTimeout(()=>this._windowFocused=!1)},this._stopInputModalityDetector=new b.x,this._rootNodeFocusAndBlurListener=Ye=>{for(let Ne=(0,C.sA)(Ye);Ne;Ne=Ne.parentElement)"focus"===Ye.type?this._onFocus(Ye,Ne):this._onBlur(Ye,Ne)},this._document=it,this._detectionMode=Rt?.detectionMode||0}monitor(re,ce=!1){const Ee=(0,M.fI)(re);if(!this._platform.isBrowser||1!==Ee.nodeType)return(0,a.of)();const it=(0,C.kV)(Ee)||this._getDocument(),Rt=this._elementInfo.get(Ee);if(Rt)return ce&&(Rt.checkChildren=!0),Rt.subject;const Ye={checkChildren:ce,subject:new b.x,rootNode:it};return this._elementInfo.set(Ee,Ye),this._registerGlobalListeners(Ye),Ye.subject}stopMonitoring(re){const ce=(0,M.fI)(re),Ee=this._elementInfo.get(ce);Ee&&(Ee.subject.complete(),this._setClasses(ce),this._elementInfo.delete(ce),this._removeGlobalListeners(Ee))}focusVia(re,ce,Ee){const it=(0,M.fI)(re);it===this._getDocument().activeElement?this._getClosestElementsInfo(it).forEach(([Ye,qe])=>this._originChanged(Ye,ce,qe)):(this._setOrigin(ce),"function"==typeof it.focus&&it.focus(Ee))}ngOnDestroy(){this._elementInfo.forEach((re,ce)=>this.stopMonitoring(ce))}_getDocument(){return this._document||document}_getWindow(){return this._getDocument().defaultView||window}_getFocusOrigin(re){return this._origin?this._originFromTouchInteraction?this._shouldBeAttributedToTouch(re)?"touch":"program":this._origin:this._windowFocused&&this._lastFocusOrigin?this._lastFocusOrigin:re&&this._isLastInteractionFromInputLabel(re)?"mouse":"program"}_shouldBeAttributedToTouch(re){return 1===this._detectionMode||!!re?.contains(this._inputModalityDetector._mostRecentTarget)}_setClasses(re,ce){re.classList.toggle("cdk-focused",!!ce),re.classList.toggle("cdk-touch-focused","touch"===ce),re.classList.toggle("cdk-keyboard-focused","keyboard"===ce),re.classList.toggle("cdk-mouse-focused","mouse"===ce),re.classList.toggle("cdk-program-focused","program"===ce)}_setOrigin(re,ce=!1){this._ngZone.runOutsideAngular(()=>{this._origin=re,this._originFromTouchInteraction="touch"===re&&ce,0===this._detectionMode&&(clearTimeout(this._originTimeoutId),this._originTimeoutId=setTimeout(()=>this._origin=null,this._originFromTouchInteraction?650:1))})}_onFocus(re,ce){const Ee=this._elementInfo.get(ce),it=(0,C.sA)(re);!Ee||!Ee.checkChildren&&ce!==it||this._originChanged(ce,this._getFocusOrigin(it),Ee)}_onBlur(re,ce){const Ee=this._elementInfo.get(ce);!Ee||Ee.checkChildren&&re.relatedTarget instanceof Node&&ce.contains(re.relatedTarget)||(this._setClasses(ce),this._emitOrigin(Ee,null))}_emitOrigin(re,ce){re.subject.observers.length&&this._ngZone.run(()=>re.subject.next(ce))}_registerGlobalListeners(re){if(!this._platform.isBrowser)return;const ce=re.rootNode,Ee=this._rootNodeFocusListenerCount.get(ce)||0;Ee||this._ngZone.runOutsideAngular(()=>{ce.addEventListener("focus",this._rootNodeFocusAndBlurListener,Yt),ce.addEventListener("blur",this._rootNodeFocusAndBlurListener,Yt)}),this._rootNodeFocusListenerCount.set(ce,Ee+1),1==++this._monitoredElementCount&&(this._ngZone.runOutsideAngular(()=>{this._getWindow().addEventListener("focus",this._windowFocusListener)}),this._inputModalityDetector.modalityDetected.pipe((0,_.R)(this._stopInputModalityDetector)).subscribe(it=>{this._setOrigin(it,!0)}))}_removeGlobalListeners(re){const ce=re.rootNode;if(this._rootNodeFocusListenerCount.has(ce)){const Ee=this._rootNodeFocusListenerCount.get(ce);Ee>1?this._rootNodeFocusListenerCount.set(ce,Ee-1):(ce.removeEventListener("focus",this._rootNodeFocusAndBlurListener,Yt),ce.removeEventListener("blur",this._rootNodeFocusAndBlurListener,Yt),this._rootNodeFocusListenerCount.delete(ce))}--this._monitoredElementCount||(this._getWindow().removeEventListener("focus",this._windowFocusListener),this._stopInputModalityDetector.next(),clearTimeout(this._windowFocusTimeoutId),clearTimeout(this._originTimeoutId))}_originChanged(re,ce,Ee){this._setClasses(re,ce),this._emitOrigin(Ee,ce),this._lastFocusOrigin=ce}_getClosestElementsInfo(re){const ce=[];return this._elementInfo.forEach((Ee,it)=>{(it===re||Ee.checkChildren&&it.contains(re))&&ce.push([it,Ee])}),ce}_isLastInteractionFromInputLabel(re){const{_mostRecentTarget:ce,mostRecentModality:Ee}=this._inputModalityDetector;if("mouse"!==Ee||!ce||ce===re||"INPUT"!==re.nodeName&&"TEXTAREA"!==re.nodeName||re.disabled)return!1;const it=re.labels;if(it)for(let Rt=0;Rt{class ke{constructor(re,ce){this._elementRef=re,this._focusMonitor=ce,this._focusOrigin=null,this.cdkFocusChange=new p.EventEmitter}get focusOrigin(){return this._focusOrigin}ngAfterViewInit(){const re=this._elementRef.nativeElement;this._monitorSubscription=this._focusMonitor.monitor(re,1===re.nodeType&&re.hasAttribute("cdkMonitorSubtreeFocus")).subscribe(ce=>{this._focusOrigin=ce,this.cdkFocusChange.emit(ce)})}ngOnDestroy(){this._focusMonitor.stopMonitoring(this._elementRef),this._monitorSubscription&&this._monitorSubscription.unsubscribe()}}return ke.\u0275fac=function(re){return new(re||ke)(p.\u0275\u0275directiveInject(p.ElementRef),p.\u0275\u0275directiveInject(Ue))},ke.\u0275dir=p.\u0275\u0275defineDirective({type:ke,selectors:[["","cdkMonitorElementFocus",""],["","cdkMonitorSubtreeFocus",""]],outputs:{cdkFocusChange:"cdkFocusChange"},exportAs:["cdkMonitorFocus"]}),ke})();const ve="cdk-high-contrast-black-on-white",we="cdk-high-contrast-white-on-black",at="cdk-high-contrast-active";let De=(()=>{class ke{constructor(re,ce){this._platform=re,this._document=ce,this._breakpointSubscription=(0,p.inject)(w.Yg).observe("(forced-colors: active)").subscribe(()=>{this._hasCheckedHighContrastMode&&(this._hasCheckedHighContrastMode=!1,this._applyBodyHighContrastModeCssClasses())})}getHighContrastMode(){if(!this._platform.isBrowser)return 0;const re=this._document.createElement("div");re.style.backgroundColor="rgb(1,2,3)",re.style.position="absolute",this._document.body.appendChild(re);const ce=this._document.defaultView||window,Ee=ce&&ce.getComputedStyle?ce.getComputedStyle(re):null,it=(Ee&&Ee.backgroundColor||"").replace(/ /g,"");switch(re.remove(),it){case"rgb(0,0,0)":case"rgb(45,50,54)":case"rgb(32,32,32)":return 2;case"rgb(255,255,255)":case"rgb(255,250,239)":return 1}return 0}ngOnDestroy(){this._breakpointSubscription.unsubscribe()}_applyBodyHighContrastModeCssClasses(){if(!this._hasCheckedHighContrastMode&&this._platform.isBrowser&&this._document.body){const re=this._document.body.classList;re.remove(at,ve,we),this._hasCheckedHighContrastMode=!0;const ce=this.getHighContrastMode();1===ce?re.add(at,ve):2===ce&&re.add(at,we)}}}return ke.\u0275fac=function(re){return new(re||ke)(p.\u0275\u0275inject(C.t4),p.\u0275\u0275inject(n.DOCUMENT))},ke.\u0275prov=p.\u0275\u0275defineInjectable({token:ke,factory:ke.\u0275fac,providedIn:"root"}),ke})(),je=(()=>{class ke{constructor(re){re._applyBodyHighContrastModeCssClasses()}}return ke.\u0275fac=function(re){return new(re||ke)(p.\u0275\u0275inject(De))},ke.\u0275mod=p.\u0275\u0275defineNgModule({type:ke}),ke.\u0275inj=p.\u0275\u0275defineInjector({imports:[x.Q8]}),ke})()},9388:(Se,X,g)=>{"use strict";g.d(X,{Is:()=>a,vT:()=>s});var n=g(5879),p=g(6814);const C=new n.InjectionToken("cdk-dir-doc",{providedIn:"root",factory:function b(){return(0,n.inject)(p.DOCUMENT)}}),o=/^(ar|ckb|dv|he|iw|fa|nqo|ps|sd|ug|ur|yi|.*[-_](Adlm|Arab|Hebr|Nkoo|Rohg|Thaa))(?!.*[-_](Latn|Cyrl)($|-|_))($|-|_)/i;let a=(()=>{class l{constructor(r){this.value="ltr",this.change=new n.EventEmitter,r&&(this.value=function v(l){const d=l?.toLowerCase()||"";return"auto"===d&&typeof navigator<"u"&&navigator?.language?o.test(navigator.language)?"rtl":"ltr":"rtl"===d?"rtl":"ltr"}((r.body?r.body.dir:null)||(r.documentElement?r.documentElement.dir:null)||"ltr"))}ngOnDestroy(){this.change.complete()}}return l.\u0275fac=function(r){return new(r||l)(n.\u0275\u0275inject(C,8))},l.\u0275prov=n.\u0275\u0275defineInjectable({token:l,factory:l.\u0275fac,providedIn:"root"}),l})(),s=(()=>{class l{}return l.\u0275fac=function(r){return new(r||l)},l.\u0275mod=n.\u0275\u0275defineNgModule({type:l}),l.\u0275inj=n.\u0275\u0275defineInjector({}),l})()},2495:(Se,X,g)=>{"use strict";g.d(X,{Eq:()=>o,HM:()=>v,Ig:()=>p,du:()=>c,fI:()=>a,su:()=>C,t6:()=>b});var n=g(5879);function p(s){return null!=s&&"false"!=`${s}`}function C(s,l=0){return b(s)?Number(s):l}function b(s){return!isNaN(parseFloat(s))&&!isNaN(Number(s))}function o(s){return Array.isArray(s)?s:[s]}function v(s){return null==s?"":"string"==typeof s?s:`${s}px`}function a(s){return s instanceof n.ElementRef?s.nativeElement:s}function c(s,l=/\s+/){const d=[];if(null!=s){const r=Array.isArray(s)?s:`${s}`.split(l);for(const u of r){const h=`${u}`.trim();h&&d.push(h)}}return d}},8337:(Se,X,g)=>{"use strict";g.d(X,{A8:()=>d,Ov:()=>s,Z9:()=>o,eX:()=>c,k:()=>r,o2:()=>b,yy:()=>a});var n=g(3168),p=g(8645),C=g(5879);class b{}function o(u){return u&&"function"==typeof u.connect&&!(u instanceof n.c)}class a{applyChanges(h,m,_,M,x){h.forEachOperation((w,L,A)=>{let T,O;if(null==w.previousIndex){const E=_(w,L,A);T=m.createEmbeddedView(E.templateRef,E.context,E.index),O=1}else null==A?(m.remove(L),O=3):(T=m.get(L),m.move(T,A),O=2);x&&x({context:T?.context,operation:O,record:w})})}detach(){}}class c{constructor(){this.viewCacheSize=20,this._viewCache=[]}applyChanges(h,m,_,M,x){h.forEachOperation((w,L,A)=>{let T,O;null==w.previousIndex?(T=this._insertView(()=>_(w,L,A),A,m,M(w)),O=T?1:0):null==A?(this._detachAndCacheView(L,m),O=3):(T=this._moveView(L,A,m,M(w)),O=2),x&&x({context:T?.context,operation:O,record:w})})}detach(){for(const h of this._viewCache)h.destroy();this._viewCache=[]}_insertView(h,m,_,M){const x=this._insertViewFromCache(m,_);if(x)return void(x.context.$implicit=M);const w=h();return _.createEmbeddedView(w.templateRef,w.context,w.index)}_detachAndCacheView(h,m){const _=m.detach(h);this._maybeCacheView(_,m)}_moveView(h,m,_,M){const x=_.get(h);return _.move(x,m),x.context.$implicit=M,x}_maybeCacheView(h,m){if(this._viewCache.lengththis._markSelected(x)):this._markSelected(m[0]),this._selectedToEmit.length=0)}select(...h){this._verifyValueAssignment(h),h.forEach(_=>this._markSelected(_));const m=this._hasQueuedChanges();return this._emitChangeEvent(),m}deselect(...h){this._verifyValueAssignment(h),h.forEach(_=>this._unmarkSelected(_));const m=this._hasQueuedChanges();return this._emitChangeEvent(),m}setSelection(...h){this._verifyValueAssignment(h);const m=this.selected,_=new Set(h);h.forEach(x=>this._markSelected(x)),m.filter(x=>!_.has(x)).forEach(x=>this._unmarkSelected(x));const M=this._hasQueuedChanges();return this._emitChangeEvent(),M}toggle(h){return this.isSelected(h)?this.deselect(h):this.select(h)}clear(h=!0){this._unmarkAll();const m=this._hasQueuedChanges();return h&&this._emitChangeEvent(),m}isSelected(h){return this._selection.has(this._getConcreteValue(h))}isEmpty(){return 0===this._selection.size}hasValue(){return!this.isEmpty()}sort(h){this._multiple&&this.selected&&this._selected.sort(h)}isMultipleSelection(){return this._multiple}_emitChangeEvent(){this._selected=null,(this._selectedToEmit.length||this._deselectedToEmit.length)&&(this.changed.next({source:this,added:this._selectedToEmit,removed:this._deselectedToEmit}),this._deselectedToEmit=[],this._selectedToEmit=[])}_markSelected(h){h=this._getConcreteValue(h),this.isSelected(h)||(this._multiple||this._unmarkAll(),this.isSelected(h)||this._selection.add(h),this._emitChanges&&this._selectedToEmit.push(h))}_unmarkSelected(h){h=this._getConcreteValue(h),this.isSelected(h)&&(this._selection.delete(h),this._emitChanges&&this._deselectedToEmit.push(h))}_unmarkAll(){this.isEmpty()||this._selection.forEach(h=>this._unmarkSelected(h))}_verifyValueAssignment(h){}_hasQueuedChanges(){return!(!this._deselectedToEmit.length&&!this._selectedToEmit.length)}_getConcreteValue(h){if(this.compareWith){for(let m of this._selection)if(this.compareWith(h,m))return m;return h}return h}}let d=(()=>{class u{constructor(){this._listeners=[]}notify(m,_){for(let M of this._listeners)M(m,_)}listen(m){return this._listeners.push(m),()=>{this._listeners=this._listeners.filter(_=>m!==_)}}ngOnDestroy(){this._listeners=[]}}return u.\u0275fac=function(m){return new(m||u)},u.\u0275prov=C.\u0275\u0275defineInjectable({token:u,factory:u.\u0275fac,providedIn:"root"}),u})();const r=new C.InjectionToken("_ViewRepeater")},6028:(Se,X,g)=>{"use strict";g.d(X,{A:()=>ue,JH:()=>L,JU:()=>v,K5:()=>o,Ku:()=>u,LH:()=>x,L_:()=>r,MW:()=>Kt,Mf:()=>C,SV:()=>w,Sd:()=>_,VM:()=>h,Vb:()=>oi,Z:()=>Dt,ZH:()=>p,aO:()=>ne,b2:()=>Ii,hY:()=>d,jx:()=>a,oh:()=>M,uR:()=>m,xE:()=>D,zL:()=>c});const p=8,C=9,o=13,v=16,a=17,c=18,d=27,r=32,u=33,h=34,m=35,_=36,M=37,x=38,w=39,L=40,D=48,ne=57,ue=65,Dt=90,Kt=91,Ii=224;function oi(li,...Pi){return Pi.length?Pi.some(Ct=>li[Ct]):li.altKey||li.shiftKey||li.ctrlKey||li.metaKey}},1088:(Se,X,g)=>{"use strict";g.d(X,{Yg:()=>L,u3:()=>T});var n=g(5879),p=g(2495),C=g(8645),b=g(2572),o=g(34),v=g(5592),a=g(8180),c=g(836),s=g(3620),l=g(7398),d=g(7921),r=g(9773),u=g(2831);const m=new Set;let _,M=(()=>{class O{constructor(D,R){this._platform=D,this._nonce=R,this._matchMedia=this._platform.isBrowser&&window.matchMedia?window.matchMedia.bind(window):w}matchMedia(D){return(this._platform.WEBKIT||this._platform.BLINK)&&function x(O,E){if(!m.has(O))try{_||(_=document.createElement("style"),E&&(_.nonce=E),_.setAttribute("type","text/css"),document.head.appendChild(_)),_.sheet&&(_.sheet.insertRule(`@media ${O} {body{ }}`,0),m.add(O))}catch(D){console.error(D)}}(D,this._nonce),this._matchMedia(D)}}return O.\u0275fac=function(D){return new(D||O)(n.\u0275\u0275inject(u.t4),n.\u0275\u0275inject(n.CSP_NONCE,8))},O.\u0275prov=n.\u0275\u0275defineInjectable({token:O,factory:O.\u0275fac,providedIn:"root"}),O})();function w(O){return{matches:"all"===O||""===O,media:O,addListener:()=>{},removeListener:()=>{}}}let L=(()=>{class O{constructor(D,R){this._mediaMatcher=D,this._zone=R,this._queries=new Map,this._destroySubject=new C.x}ngOnDestroy(){this._destroySubject.next(),this._destroySubject.complete()}isMatched(D){return A((0,p.Eq)(D)).some(j=>this._registerQuery(j).mql.matches)}observe(D){const j=A((0,p.Eq)(D)).map(S=>this._registerQuery(S).observable);let N=(0,b.a)(j);return N=(0,o.z)(N.pipe((0,a.q)(1)),N.pipe((0,c.T)(1),(0,s.b)(0))),N.pipe((0,l.U)(S=>{const k={matches:!1,breakpoints:{}};return S.forEach(({matches:F,query:Y})=>{k.matches=k.matches||F,k.breakpoints[Y]=F}),k}))}_registerQuery(D){if(this._queries.has(D))return this._queries.get(D);const R=this._mediaMatcher.matchMedia(D),N={observable:new v.y(S=>{const k=F=>this._zone.run(()=>S.next(F));return R.addListener(k),()=>{R.removeListener(k)}}).pipe((0,d.O)(R),(0,l.U)(({matches:S})=>({query:D,matches:S})),(0,r.R)(this._destroySubject)),mql:R};return this._queries.set(D,N),N}}return O.\u0275fac=function(D){return new(D||O)(n.\u0275\u0275inject(M),n.\u0275\u0275inject(n.NgZone))},O.\u0275prov=n.\u0275\u0275defineInjectable({token:O,factory:O.\u0275fac,providedIn:"root"}),O})();function A(O){return O.map(E=>E.split(",")).reduce((E,D)=>E.concat(D)).map(E=>E.trim())}const T={XSmall:"(max-width: 599.98px)",Small:"(min-width: 600px) and (max-width: 959.98px)",Medium:"(min-width: 960px) and (max-width: 1279.98px)",Large:"(min-width: 1280px) and (max-width: 1919.98px)",XLarge:"(min-width: 1920px)",Handset:"(max-width: 599.98px) and (orientation: portrait), (max-width: 959.98px) and (orientation: landscape)",Tablet:"(min-width: 600px) and (max-width: 839.98px) and (orientation: portrait), (min-width: 960px) and (max-width: 1279.98px) and (orientation: landscape)",Web:"(min-width: 840px) and (orientation: portrait), (min-width: 1280px) and (orientation: landscape)",HandsetPortrait:"(max-width: 599.98px) and (orientation: portrait)",TabletPortrait:"(min-width: 600px) and (max-width: 839.98px) and (orientation: portrait)",WebPortrait:"(min-width: 840px) and (orientation: portrait)",HandsetLandscape:"(max-width: 959.98px) and (orientation: landscape)",TabletLandscape:"(min-width: 960px) and (max-width: 1279.98px) and (orientation: landscape)",WebLandscape:"(min-width: 1280px) and (orientation: landscape)"}},7131:(Se,X,g)=>{"use strict";g.d(X,{Q8:()=>s,wD:()=>c});var n=g(2495),p=g(5879),C=g(5592),b=g(8645),o=g(3620);let v=(()=>{class l{create(r){return typeof MutationObserver>"u"?null:new MutationObserver(r)}}return l.\u0275fac=function(r){return new(r||l)},l.\u0275prov=p.\u0275\u0275defineInjectable({token:l,factory:l.\u0275fac,providedIn:"root"}),l})(),a=(()=>{class l{constructor(r){this._mutationObserverFactory=r,this._observedElements=new Map}ngOnDestroy(){this._observedElements.forEach((r,u)=>this._cleanupObserver(u))}observe(r){const u=(0,n.fI)(r);return new C.y(h=>{const _=this._observeElement(u).subscribe(h);return()=>{_.unsubscribe(),this._unobserveElement(u)}})}_observeElement(r){if(this._observedElements.has(r))this._observedElements.get(r).count++;else{const u=new b.x,h=this._mutationObserverFactory.create(m=>u.next(m));h&&h.observe(r,{characterData:!0,childList:!0,subtree:!0}),this._observedElements.set(r,{observer:h,stream:u,count:1})}return this._observedElements.get(r).stream}_unobserveElement(r){this._observedElements.has(r)&&(this._observedElements.get(r).count--,this._observedElements.get(r).count||this._cleanupObserver(r))}_cleanupObserver(r){if(this._observedElements.has(r)){const{observer:u,stream:h}=this._observedElements.get(r);u&&u.disconnect(),h.complete(),this._observedElements.delete(r)}}}return l.\u0275fac=function(r){return new(r||l)(p.\u0275\u0275inject(v))},l.\u0275prov=p.\u0275\u0275defineInjectable({token:l,factory:l.\u0275fac,providedIn:"root"}),l})(),c=(()=>{class l{get disabled(){return this._disabled}set disabled(r){this._disabled=(0,n.Ig)(r),this._disabled?this._unsubscribe():this._subscribe()}get debounce(){return this._debounce}set debounce(r){this._debounce=(0,n.su)(r),this._subscribe()}constructor(r,u,h){this._contentObserver=r,this._elementRef=u,this._ngZone=h,this.event=new p.EventEmitter,this._disabled=!1,this._currentSubscription=null}ngAfterContentInit(){!this._currentSubscription&&!this.disabled&&this._subscribe()}ngOnDestroy(){this._unsubscribe()}_subscribe(){this._unsubscribe();const r=this._contentObserver.observe(this._elementRef);this._ngZone.runOutsideAngular(()=>{this._currentSubscription=(this.debounce?r.pipe((0,o.b)(this.debounce)):r).subscribe(this.event)})}_unsubscribe(){this._currentSubscription?.unsubscribe()}}return l.\u0275fac=function(r){return new(r||l)(p.\u0275\u0275directiveInject(a),p.\u0275\u0275directiveInject(p.ElementRef),p.\u0275\u0275directiveInject(p.NgZone))},l.\u0275dir=p.\u0275\u0275defineDirective({type:l,selectors:[["","cdkObserveContent",""]],inputs:{disabled:["cdkObserveContentDisabled","disabled"],debounce:"debounce"},outputs:{event:"cdkObserveContent"},exportAs:["cdkObserveContent"]}),l})(),s=(()=>{class l{}return l.\u0275fac=function(r){return new(r||l)},l.\u0275mod=p.\u0275\u0275defineNgModule({type:l}),l.\u0275inj=p.\u0275\u0275defineInjector({providers:[v]}),l})()},9594:(Se,X,g)=>{"use strict";g.d(X,{U8:()=>J,X_:()=>D,_G:()=>Q,aV:()=>St,pI:()=>ot,xu:()=>nt});var n=g(6672),p=g(6814),C=g(5879),b=g(2495),o=g(2831),v=g(2181),a=g(8180),c=g(9773),s=g(812),l=g(9388),d=g(8484),r=g(8645),u=g(7394),h=g(3019),m=g(6028);const _=(0,o.Mq)();class M{constructor(ae,ie){this._viewportRuler=ae,this._previousHTMLStyles={top:"",left:""},this._isEnabled=!1,this._document=ie}attach(){}enable(){if(this._canBeEnabled()){const ae=this._document.documentElement;this._previousScrollPosition=this._viewportRuler.getViewportScrollPosition(),this._previousHTMLStyles.left=ae.style.left||"",this._previousHTMLStyles.top=ae.style.top||"",ae.style.left=(0,b.HM)(-this._previousScrollPosition.left),ae.style.top=(0,b.HM)(-this._previousScrollPosition.top),ae.classList.add("cdk-global-scrollblock"),this._isEnabled=!0}}disable(){if(this._isEnabled){const ae=this._document.documentElement,pe=ae.style,Te=this._document.body.style,ct=pe.scrollBehavior||"",Lt=Te.scrollBehavior||"";this._isEnabled=!1,pe.left=this._previousHTMLStyles.left,pe.top=this._previousHTMLStyles.top,ae.classList.remove("cdk-global-scrollblock"),_&&(pe.scrollBehavior=Te.scrollBehavior="auto"),window.scroll(this._previousScrollPosition.left,this._previousScrollPosition.top),_&&(pe.scrollBehavior=ct,Te.scrollBehavior=Lt)}}_canBeEnabled(){if(this._document.documentElement.classList.contains("cdk-global-scrollblock")||this._isEnabled)return!1;const ie=this._document.body,pe=this._viewportRuler.getViewportSize();return ie.scrollHeight>pe.height||ie.scrollWidth>pe.width}}class w{constructor(ae,ie,pe,Te){this._scrollDispatcher=ae,this._ngZone=ie,this._viewportRuler=pe,this._config=Te,this._scrollSubscription=null,this._detach=()=>{this.disable(),this._overlayRef.hasAttached()&&this._ngZone.run(()=>this._overlayRef.detach())}}attach(ae){this._overlayRef=ae}enable(){if(this._scrollSubscription)return;const ae=this._scrollDispatcher.scrolled(0).pipe((0,v.h)(ie=>!ie||!this._overlayRef.overlayElement.contains(ie.getElementRef().nativeElement)));this._config&&this._config.threshold&&this._config.threshold>1?(this._initialScrollPosition=this._viewportRuler.getViewportScrollPosition().top,this._scrollSubscription=ae.subscribe(()=>{const ie=this._viewportRuler.getViewportScrollPosition().top;Math.abs(ie-this._initialScrollPosition)>this._config.threshold?this._detach():this._overlayRef.updatePosition()})):this._scrollSubscription=ae.subscribe(this._detach)}disable(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}detach(){this.disable(),this._overlayRef=null}}class L{enable(){}disable(){}attach(){}}function A(ee,ae){return ae.some(ie=>ee.bottomie.bottom||ee.rightie.right)}function T(ee,ae){return ae.some(ie=>ee.topie.bottom||ee.leftie.right)}class O{constructor(ae,ie,pe,Te){this._scrollDispatcher=ae,this._viewportRuler=ie,this._ngZone=pe,this._config=Te,this._scrollSubscription=null}attach(ae){this._overlayRef=ae}enable(){this._scrollSubscription||(this._scrollSubscription=this._scrollDispatcher.scrolled(this._config?this._config.scrollThrottle:0).subscribe(()=>{if(this._overlayRef.updatePosition(),this._config&&this._config.autoClose){const ie=this._overlayRef.overlayElement.getBoundingClientRect(),{width:pe,height:Te}=this._viewportRuler.getViewportSize();A(ie,[{width:pe,height:Te,bottom:Te,right:pe,top:0,left:0}])&&(this.disable(),this._ngZone.run(()=>this._overlayRef.detach()))}}))}disable(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}detach(){this.disable(),this._overlayRef=null}}let E=(()=>{class ee{constructor(ie,pe,Te,ct){this._scrollDispatcher=ie,this._viewportRuler=pe,this._ngZone=Te,this.noop=()=>new L,this.close=Lt=>new w(this._scrollDispatcher,this._ngZone,this._viewportRuler,Lt),this.block=()=>new M(this._viewportRuler,this._document),this.reposition=Lt=>new O(this._scrollDispatcher,this._viewportRuler,this._ngZone,Lt),this._document=ct}}return ee.\u0275fac=function(ie){return new(ie||ee)(C.\u0275\u0275inject(n.mF),C.\u0275\u0275inject(n.rL),C.\u0275\u0275inject(C.NgZone),C.\u0275\u0275inject(p.DOCUMENT))},ee.\u0275prov=C.\u0275\u0275defineInjectable({token:ee,factory:ee.\u0275fac,providedIn:"root"}),ee})();class D{constructor(ae){if(this.scrollStrategy=new L,this.panelClass="",this.hasBackdrop=!1,this.backdropClass="cdk-overlay-dark-backdrop",this.disposeOnNavigation=!1,ae){const ie=Object.keys(ae);for(const pe of ie)void 0!==ae[pe]&&(this[pe]=ae[pe])}}}class N{constructor(ae,ie){this.connectionPair=ae,this.scrollableViewProperties=ie}}let F=(()=>{class ee{constructor(ie){this._attachedOverlays=[],this._document=ie}ngOnDestroy(){this.detach()}add(ie){this.remove(ie),this._attachedOverlays.push(ie)}remove(ie){const pe=this._attachedOverlays.indexOf(ie);pe>-1&&this._attachedOverlays.splice(pe,1),0===this._attachedOverlays.length&&this.detach()}}return ee.\u0275fac=function(ie){return new(ie||ee)(C.\u0275\u0275inject(p.DOCUMENT))},ee.\u0275prov=C.\u0275\u0275defineInjectable({token:ee,factory:ee.\u0275fac,providedIn:"root"}),ee})(),Y=(()=>{class ee extends F{constructor(ie,pe){super(ie),this._ngZone=pe,this._keydownListener=Te=>{const ct=this._attachedOverlays;for(let Lt=ct.length-1;Lt>-1;Lt--)if(ct[Lt]._keydownEvents.observers.length>0){const Dt=ct[Lt]._keydownEvents;this._ngZone?this._ngZone.run(()=>Dt.next(Te)):Dt.next(Te);break}}}add(ie){super.add(ie),this._isAttached||(this._ngZone?this._ngZone.runOutsideAngular(()=>this._document.body.addEventListener("keydown",this._keydownListener)):this._document.body.addEventListener("keydown",this._keydownListener),this._isAttached=!0)}detach(){this._isAttached&&(this._document.body.removeEventListener("keydown",this._keydownListener),this._isAttached=!1)}}return ee.\u0275fac=function(ie){return new(ie||ee)(C.\u0275\u0275inject(p.DOCUMENT),C.\u0275\u0275inject(C.NgZone,8))},ee.\u0275prov=C.\u0275\u0275defineInjectable({token:ee,factory:ee.\u0275fac,providedIn:"root"}),ee})(),se=(()=>{class ee extends F{constructor(ie,pe,Te){super(ie),this._platform=pe,this._ngZone=Te,this._cursorStyleIsSet=!1,this._pointerDownListener=ct=>{this._pointerDownEventTarget=(0,o.sA)(ct)},this._clickListener=ct=>{const Lt=(0,o.sA)(ct),Dt="click"===ct.type&&this._pointerDownEventTarget?this._pointerDownEventTarget:Lt;this._pointerDownEventTarget=null;const Kt=this._attachedOverlays.slice();for(let ze=Kt.length-1;ze>-1;ze--){const yt=Kt[ze];if(yt._outsidePointerEvents.observers.length<1||!yt.hasAttached())continue;if(yt.overlayElement.contains(Lt)||yt.overlayElement.contains(Dt))break;const Bt=yt._outsidePointerEvents;this._ngZone?this._ngZone.run(()=>Bt.next(ct)):Bt.next(ct)}}}add(ie){if(super.add(ie),!this._isAttached){const pe=this._document.body;this._ngZone?this._ngZone.runOutsideAngular(()=>this._addEventListeners(pe)):this._addEventListeners(pe),this._platform.IOS&&!this._cursorStyleIsSet&&(this._cursorOriginalValue=pe.style.cursor,pe.style.cursor="pointer",this._cursorStyleIsSet=!0),this._isAttached=!0}}detach(){if(this._isAttached){const ie=this._document.body;ie.removeEventListener("pointerdown",this._pointerDownListener,!0),ie.removeEventListener("click",this._clickListener,!0),ie.removeEventListener("auxclick",this._clickListener,!0),ie.removeEventListener("contextmenu",this._clickListener,!0),this._platform.IOS&&this._cursorStyleIsSet&&(ie.style.cursor=this._cursorOriginalValue,this._cursorStyleIsSet=!1),this._isAttached=!1}}_addEventListeners(ie){ie.addEventListener("pointerdown",this._pointerDownListener,!0),ie.addEventListener("click",this._clickListener,!0),ie.addEventListener("auxclick",this._clickListener,!0),ie.addEventListener("contextmenu",this._clickListener,!0)}}return ee.\u0275fac=function(ie){return new(ie||ee)(C.\u0275\u0275inject(p.DOCUMENT),C.\u0275\u0275inject(o.t4),C.\u0275\u0275inject(C.NgZone,8))},ee.\u0275prov=C.\u0275\u0275defineInjectable({token:ee,factory:ee.\u0275fac,providedIn:"root"}),ee})(),ne=(()=>{class ee{constructor(ie,pe){this._platform=pe,this._document=ie}ngOnDestroy(){this._containerElement?.remove()}getContainerElement(){return this._containerElement||this._createContainer(),this._containerElement}_createContainer(){const ie="cdk-overlay-container";if(this._platform.isBrowser||(0,o.Oy)()){const Te=this._document.querySelectorAll(`.${ie}[platform="server"], .${ie}[platform="test"]`);for(let ct=0;ctthis._backdropClick.next(Bt),this._backdropTransitionendHandler=Bt=>{this._disposeBackdrop(Bt.target)},this._keydownEvents=new r.x,this._outsidePointerEvents=new r.x,Te.scrollStrategy&&(this._scrollStrategy=Te.scrollStrategy,this._scrollStrategy.attach(this)),this._positionStrategy=Te.positionStrategy}get overlayElement(){return this._pane}get backdropElement(){return this._backdropElement}get hostElement(){return this._host}attach(ae){!this._host.parentElement&&this._previousHostParent&&this._previousHostParent.appendChild(this._host);const ie=this._portalOutlet.attach(ae);return this._positionStrategy&&this._positionStrategy.attach(this),this._updateStackingOrder(),this._updateElementSize(),this._updateElementDirection(),this._scrollStrategy&&this._scrollStrategy.enable(),this._ngZone.onStable.pipe((0,a.q)(1)).subscribe(()=>{this.hasAttached()&&this.updatePosition()}),this._togglePointerEvents(!0),this._config.hasBackdrop&&this._attachBackdrop(),this._config.panelClass&&this._toggleClasses(this._pane,this._config.panelClass,!0),this._attachments.next(),this._keyboardDispatcher.add(this),this._config.disposeOnNavigation&&(this._locationChanges=this._location.subscribe(()=>this.dispose())),this._outsideClickDispatcher.add(this),"function"==typeof ie?.onDestroy&&ie.onDestroy(()=>{this.hasAttached()&&this._ngZone.runOutsideAngular(()=>Promise.resolve().then(()=>this.detach()))}),ie}detach(){if(!this.hasAttached())return;this.detachBackdrop(),this._togglePointerEvents(!1),this._positionStrategy&&this._positionStrategy.detach&&this._positionStrategy.detach(),this._scrollStrategy&&this._scrollStrategy.disable();const ae=this._portalOutlet.detach();return this._detachments.next(),this._keyboardDispatcher.remove(this),this._detachContentWhenStable(),this._locationChanges.unsubscribe(),this._outsideClickDispatcher.remove(this),ae}dispose(){const ae=this.hasAttached();this._positionStrategy&&this._positionStrategy.dispose(),this._disposeScrollStrategy(),this._disposeBackdrop(this._backdropElement),this._locationChanges.unsubscribe(),this._keyboardDispatcher.remove(this),this._portalOutlet.dispose(),this._attachments.complete(),this._backdropClick.complete(),this._keydownEvents.complete(),this._outsidePointerEvents.complete(),this._outsideClickDispatcher.remove(this),this._host?.remove(),this._previousHostParent=this._pane=this._host=null,ae&&this._detachments.next(),this._detachments.complete()}hasAttached(){return this._portalOutlet.hasAttached()}backdropClick(){return this._backdropClick}attachments(){return this._attachments}detachments(){return this._detachments}keydownEvents(){return this._keydownEvents}outsidePointerEvents(){return this._outsidePointerEvents}getConfig(){return this._config}updatePosition(){this._positionStrategy&&this._positionStrategy.apply()}updatePositionStrategy(ae){ae!==this._positionStrategy&&(this._positionStrategy&&this._positionStrategy.dispose(),this._positionStrategy=ae,this.hasAttached()&&(ae.attach(this),this.updatePosition()))}updateSize(ae){this._config={...this._config,...ae},this._updateElementSize()}setDirection(ae){this._config={...this._config,direction:ae},this._updateElementDirection()}addPanelClass(ae){this._pane&&this._toggleClasses(this._pane,ae,!0)}removePanelClass(ae){this._pane&&this._toggleClasses(this._pane,ae,!1)}getDirection(){const ae=this._config.direction;return ae?"string"==typeof ae?ae:ae.value:"ltr"}updateScrollStrategy(ae){ae!==this._scrollStrategy&&(this._disposeScrollStrategy(),this._scrollStrategy=ae,this.hasAttached()&&(ae.attach(this),ae.enable()))}_updateElementDirection(){this._host.setAttribute("dir",this.getDirection())}_updateElementSize(){if(!this._pane)return;const ae=this._pane.style;ae.width=(0,b.HM)(this._config.width),ae.height=(0,b.HM)(this._config.height),ae.minWidth=(0,b.HM)(this._config.minWidth),ae.minHeight=(0,b.HM)(this._config.minHeight),ae.maxWidth=(0,b.HM)(this._config.maxWidth),ae.maxHeight=(0,b.HM)(this._config.maxHeight)}_togglePointerEvents(ae){this._pane.style.pointerEvents=ae?"":"none"}_attachBackdrop(){const ae="cdk-overlay-backdrop-showing";this._backdropElement=this._document.createElement("div"),this._backdropElement.classList.add("cdk-overlay-backdrop"),this._animationsDisabled&&this._backdropElement.classList.add("cdk-overlay-backdrop-noop-animation"),this._config.backdropClass&&this._toggleClasses(this._backdropElement,this._config.backdropClass,!0),this._host.parentElement.insertBefore(this._backdropElement,this._host),this._backdropElement.addEventListener("click",this._backdropClickHandler),!this._animationsDisabled&&typeof requestAnimationFrame<"u"?this._ngZone.runOutsideAngular(()=>{requestAnimationFrame(()=>{this._backdropElement&&this._backdropElement.classList.add(ae)})}):this._backdropElement.classList.add(ae)}_updateStackingOrder(){this._host.nextSibling&&this._host.parentNode.appendChild(this._host)}detachBackdrop(){const ae=this._backdropElement;if(ae){if(this._animationsDisabled)return void this._disposeBackdrop(ae);ae.classList.remove("cdk-overlay-backdrop-showing"),this._ngZone.runOutsideAngular(()=>{ae.addEventListener("transitionend",this._backdropTransitionendHandler)}),ae.style.pointerEvents="none",this._backdropTimeout=this._ngZone.runOutsideAngular(()=>setTimeout(()=>{this._disposeBackdrop(ae)},500))}}_toggleClasses(ae,ie,pe){const Te=(0,b.Eq)(ie||[]).filter(ct=>!!ct);Te.length&&(pe?ae.classList.add(...Te):ae.classList.remove(...Te))}_detachContentWhenStable(){this._ngZone.runOutsideAngular(()=>{const ae=this._ngZone.onStable.pipe((0,c.R)((0,h.T)(this._attachments,this._detachments))).subscribe(()=>{(!this._pane||!this._host||0===this._pane.children.length)&&(this._pane&&this._config.panelClass&&this._toggleClasses(this._pane,this._config.panelClass,!1),this._host&&this._host.parentElement&&(this._previousHostParent=this._host.parentElement,this._host.remove()),ae.unsubscribe())})})}_disposeScrollStrategy(){const ae=this._scrollStrategy;ae&&(ae.disable(),ae.detach&&ae.detach())}_disposeBackdrop(ae){ae&&(ae.removeEventListener("click",this._backdropClickHandler),ae.removeEventListener("transitionend",this._backdropTransitionendHandler),ae.remove(),this._backdropElement===ae&&(this._backdropElement=null)),this._backdropTimeout&&(clearTimeout(this._backdropTimeout),this._backdropTimeout=void 0)}}const $="cdk-overlay-connected-position-bounding-box",q=/([A-Za-z%]+)$/;class Q{get positions(){return this._preferredPositions}constructor(ae,ie,pe,Te,ct){this._viewportRuler=ie,this._document=pe,this._platform=Te,this._overlayContainer=ct,this._lastBoundingBoxSize={width:0,height:0},this._isPushed=!1,this._canPush=!0,this._growAfterOpen=!1,this._hasFlexibleDimensions=!0,this._positionLocked=!1,this._viewportMargin=0,this._scrollables=[],this._preferredPositions=[],this._positionChanges=new r.x,this._resizeSubscription=u.w0.EMPTY,this._offsetX=0,this._offsetY=0,this._appliedPanelClasses=[],this.positionChanges=this._positionChanges,this.setOrigin(ae)}attach(ae){this._validatePositions(),ae.hostElement.classList.add($),this._overlayRef=ae,this._boundingBox=ae.hostElement,this._pane=ae.overlayElement,this._isDisposed=!1,this._isInitialRender=!0,this._lastPosition=null,this._resizeSubscription.unsubscribe(),this._resizeSubscription=this._viewportRuler.change().subscribe(()=>{this._isInitialRender=!0,this.apply()})}apply(){if(this._isDisposed||!this._platform.isBrowser)return;if(!this._isInitialRender&&this._positionLocked&&this._lastPosition)return void this.reapplyLastPosition();this._clearPanelClasses(),this._resetOverlayElementStyles(),this._resetBoundingBoxStyles(),this._viewportRect=this._getNarrowedViewportRect(),this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect(),this._containerRect=this._overlayContainer.getContainerElement().getBoundingClientRect();const ae=this._originRect,ie=this._overlayRect,pe=this._viewportRect,Te=this._containerRect,ct=[];let Lt;for(let Dt of this._preferredPositions){let Kt=this._getOriginPoint(ae,Te,Dt),ze=this._getOverlayPoint(Kt,ie,Dt),yt=this._getOverlayFit(ze,ie,pe,Dt);if(yt.isCompletelyWithinViewport)return this._isPushed=!1,void this._applyPosition(Dt,Kt);this._canFitWithFlexibleDimensions(yt,ze,pe)?ct.push({position:Dt,origin:Kt,overlayRect:ie,boundingBoxRect:this._calculateBoundingBoxRect(Kt,Dt)}):(!Lt||Lt.overlayFit.visibleAreaKt&&(Kt=yt,Dt=ze)}return this._isPushed=!1,void this._applyPosition(Dt.position,Dt.origin)}if(this._canPush)return this._isPushed=!0,void this._applyPosition(Lt.position,Lt.originPoint);this._applyPosition(Lt.position,Lt.originPoint)}detach(){this._clearPanelClasses(),this._lastPosition=null,this._previousPushAmount=null,this._resizeSubscription.unsubscribe()}dispose(){this._isDisposed||(this._boundingBox&&ue(this._boundingBox.style,{top:"",left:"",right:"",bottom:"",height:"",width:"",alignItems:"",justifyContent:""}),this._pane&&this._resetOverlayElementStyles(),this._overlayRef&&this._overlayRef.hostElement.classList.remove($),this.detach(),this._positionChanges.complete(),this._overlayRef=this._boundingBox=null,this._isDisposed=!0)}reapplyLastPosition(){if(this._isDisposed||!this._platform.isBrowser)return;const ae=this._lastPosition;if(ae){this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect(),this._viewportRect=this._getNarrowedViewportRect(),this._containerRect=this._overlayContainer.getContainerElement().getBoundingClientRect();const ie=this._getOriginPoint(this._originRect,this._containerRect,ae);this._applyPosition(ae,ie)}else this.apply()}withScrollableContainers(ae){return this._scrollables=ae,this}withPositions(ae){return this._preferredPositions=ae,-1===ae.indexOf(this._lastPosition)&&(this._lastPosition=null),this._validatePositions(),this}withViewportMargin(ae){return this._viewportMargin=ae,this}withFlexibleDimensions(ae=!0){return this._hasFlexibleDimensions=ae,this}withGrowAfterOpen(ae=!0){return this._growAfterOpen=ae,this}withPush(ae=!0){return this._canPush=ae,this}withLockedPosition(ae=!0){return this._positionLocked=ae,this}setOrigin(ae){return this._origin=ae,this}withDefaultOffsetX(ae){return this._offsetX=ae,this}withDefaultOffsetY(ae){return this._offsetY=ae,this}withTransformOriginOn(ae){return this._transformOriginSelector=ae,this}_getOriginPoint(ae,ie,pe){let Te,ct;if("center"==pe.originX)Te=ae.left+ae.width/2;else{const Lt=this._isRtl()?ae.right:ae.left,Dt=this._isRtl()?ae.left:ae.right;Te="start"==pe.originX?Lt:Dt}return ie.left<0&&(Te-=ie.left),ct="center"==pe.originY?ae.top+ae.height/2:"top"==pe.originY?ae.top:ae.bottom,ie.top<0&&(ct-=ie.top),{x:Te,y:ct}}_getOverlayPoint(ae,ie,pe){let Te,ct;return Te="center"==pe.overlayX?-ie.width/2:"start"===pe.overlayX?this._isRtl()?-ie.width:0:this._isRtl()?0:-ie.width,ct="center"==pe.overlayY?-ie.height/2:"top"==pe.overlayY?0:-ie.height,{x:ae.x+Te,y:ae.y+ct}}_getOverlayFit(ae,ie,pe,Te){const ct=Oe(ie);let{x:Lt,y:Dt}=ae,Kt=this._getOffset(Te,"x"),ze=this._getOffset(Te,"y");Kt&&(Lt+=Kt),ze&&(Dt+=ze);let $t=0-Dt,Yt=Dt+ct.height-pe.height,Ue=this._subtractOverflows(ct.width,0-Lt,Lt+ct.width-pe.width),We=this._subtractOverflows(ct.height,$t,Yt),ve=Ue*We;return{visibleArea:ve,isCompletelyWithinViewport:ct.width*ct.height===ve,fitsInViewportVertically:We===ct.height,fitsInViewportHorizontally:Ue==ct.width}}_canFitWithFlexibleDimensions(ae,ie,pe){if(this._hasFlexibleDimensions){const Te=pe.bottom-ie.y,ct=pe.right-ie.x,Lt=Me(this._overlayRef.getConfig().minHeight),Dt=Me(this._overlayRef.getConfig().minWidth);return(ae.fitsInViewportVertically||null!=Lt&&Lt<=Te)&&(ae.fitsInViewportHorizontally||null!=Dt&&Dt<=ct)}return!1}_pushOverlayOnScreen(ae,ie,pe){if(this._previousPushAmount&&this._positionLocked)return{x:ae.x+this._previousPushAmount.x,y:ae.y+this._previousPushAmount.y};const Te=Oe(ie),ct=this._viewportRect,Lt=Math.max(ae.x+Te.width-ct.width,0),Dt=Math.max(ae.y+Te.height-ct.height,0),Kt=Math.max(ct.top-pe.top-ae.y,0),ze=Math.max(ct.left-pe.left-ae.x,0);let yt=0,Bt=0;return yt=Te.width<=ct.width?ze||-Lt:ae.xUe&&!this._isInitialRender&&!this._growAfterOpen&&(Lt=ae.y-Ue/2)}if("end"===ie.overlayX&&!Te||"start"===ie.overlayX&&Te)$t=pe.width-ae.x+this._viewportMargin,yt=ae.x-this._viewportMargin;else if("start"===ie.overlayX&&!Te||"end"===ie.overlayX&&Te)Bt=ae.x,yt=pe.right-ae.x;else{const Yt=Math.min(pe.right-ae.x+pe.left,ae.x),Ue=this._lastBoundingBoxSize.width;yt=2*Yt,Bt=ae.x-Yt,yt>Ue&&!this._isInitialRender&&!this._growAfterOpen&&(Bt=ae.x-Ue/2)}return{top:Lt,left:Bt,bottom:Dt,right:$t,width:yt,height:ct}}_setBoundingBoxStyles(ae,ie){const pe=this._calculateBoundingBoxRect(ae,ie);!this._isInitialRender&&!this._growAfterOpen&&(pe.height=Math.min(pe.height,this._lastBoundingBoxSize.height),pe.width=Math.min(pe.width,this._lastBoundingBoxSize.width));const Te={};if(this._hasExactPosition())Te.top=Te.left="0",Te.bottom=Te.right=Te.maxHeight=Te.maxWidth="",Te.width=Te.height="100%";else{const ct=this._overlayRef.getConfig().maxHeight,Lt=this._overlayRef.getConfig().maxWidth;Te.height=(0,b.HM)(pe.height),Te.top=(0,b.HM)(pe.top),Te.bottom=(0,b.HM)(pe.bottom),Te.width=(0,b.HM)(pe.width),Te.left=(0,b.HM)(pe.left),Te.right=(0,b.HM)(pe.right),Te.alignItems="center"===ie.overlayX?"center":"end"===ie.overlayX?"flex-end":"flex-start",Te.justifyContent="center"===ie.overlayY?"center":"bottom"===ie.overlayY?"flex-end":"flex-start",ct&&(Te.maxHeight=(0,b.HM)(ct)),Lt&&(Te.maxWidth=(0,b.HM)(Lt))}this._lastBoundingBoxSize=pe,ue(this._boundingBox.style,Te)}_resetBoundingBoxStyles(){ue(this._boundingBox.style,{top:"0",left:"0",right:"0",bottom:"0",height:"",width:"",alignItems:"",justifyContent:""})}_resetOverlayElementStyles(){ue(this._pane.style,{top:"",left:"",bottom:"",right:"",position:"",transform:""})}_setOverlayElementStyles(ae,ie){const pe={},Te=this._hasExactPosition(),ct=this._hasFlexibleDimensions,Lt=this._overlayRef.getConfig();if(Te){const yt=this._viewportRuler.getViewportScrollPosition();ue(pe,this._getExactOverlayY(ie,ae,yt)),ue(pe,this._getExactOverlayX(ie,ae,yt))}else pe.position="static";let Dt="",Kt=this._getOffset(ie,"x"),ze=this._getOffset(ie,"y");Kt&&(Dt+=`translateX(${Kt}px) `),ze&&(Dt+=`translateY(${ze}px)`),pe.transform=Dt.trim(),Lt.maxHeight&&(Te?pe.maxHeight=(0,b.HM)(Lt.maxHeight):ct&&(pe.maxHeight="")),Lt.maxWidth&&(Te?pe.maxWidth=(0,b.HM)(Lt.maxWidth):ct&&(pe.maxWidth="")),ue(this._pane.style,pe)}_getExactOverlayY(ae,ie,pe){let Te={top:"",bottom:""},ct=this._getOverlayPoint(ie,this._overlayRect,ae);return this._isPushed&&(ct=this._pushOverlayOnScreen(ct,this._overlayRect,pe)),"bottom"===ae.overlayY?Te.bottom=this._document.documentElement.clientHeight-(ct.y+this._overlayRect.height)+"px":Te.top=(0,b.HM)(ct.y),Te}_getExactOverlayX(ae,ie,pe){let Lt,Te={left:"",right:""},ct=this._getOverlayPoint(ie,this._overlayRect,ae);return this._isPushed&&(ct=this._pushOverlayOnScreen(ct,this._overlayRect,pe)),Lt=this._isRtl()?"end"===ae.overlayX?"left":"right":"end"===ae.overlayX?"right":"left","right"===Lt?Te.right=this._document.documentElement.clientWidth-(ct.x+this._overlayRect.width)+"px":Te.left=(0,b.HM)(ct.x),Te}_getScrollVisibility(){const ae=this._getOriginRect(),ie=this._pane.getBoundingClientRect(),pe=this._scrollables.map(Te=>Te.getElementRef().nativeElement.getBoundingClientRect());return{isOriginClipped:T(ae,pe),isOriginOutsideView:A(ae,pe),isOverlayClipped:T(ie,pe),isOverlayOutsideView:A(ie,pe)}}_subtractOverflows(ae,...ie){return ie.reduce((pe,Te)=>pe-Math.max(Te,0),ae)}_getNarrowedViewportRect(){const ae=this._document.documentElement.clientWidth,ie=this._document.documentElement.clientHeight,pe=this._viewportRuler.getViewportScrollPosition();return{top:pe.top+this._viewportMargin,left:pe.left+this._viewportMargin,right:pe.left+ae-this._viewportMargin,bottom:pe.top+ie-this._viewportMargin,width:ae-2*this._viewportMargin,height:ie-2*this._viewportMargin}}_isRtl(){return"rtl"===this._overlayRef.getDirection()}_hasExactPosition(){return!this._hasFlexibleDimensions||this._isPushed}_getOffset(ae,ie){return"x"===ie?null==ae.offsetX?this._offsetX:ae.offsetX:null==ae.offsetY?this._offsetY:ae.offsetY}_validatePositions(){}_addPanelClasses(ae){this._pane&&(0,b.Eq)(ae).forEach(ie=>{""!==ie&&-1===this._appliedPanelClasses.indexOf(ie)&&(this._appliedPanelClasses.push(ie),this._pane.classList.add(ie))})}_clearPanelClasses(){this._pane&&(this._appliedPanelClasses.forEach(ae=>{this._pane.classList.remove(ae)}),this._appliedPanelClasses=[])}_getOriginRect(){const ae=this._origin;if(ae instanceof C.ElementRef)return ae.nativeElement.getBoundingClientRect();if(ae instanceof Element)return ae.getBoundingClientRect();const ie=ae.width||0,pe=ae.height||0;return{top:ae.y,bottom:ae.y+pe,left:ae.x,right:ae.x+ie,height:pe,width:ie}}}function ue(ee,ae){for(let ie in ae)ae.hasOwnProperty(ie)&&(ee[ie]=ae[ie]);return ee}function Me(ee){if("number"!=typeof ee&&null!=ee){const[ae,ie]=ee.split(q);return ie&&"px"!==ie?null:parseFloat(ae)}return ee||null}function Oe(ee){return{top:Math.floor(ee.top),right:Math.floor(ee.right),bottom:Math.floor(ee.bottom),left:Math.floor(ee.left),width:Math.floor(ee.width),height:Math.floor(ee.height)}}const $e="cdk-global-overlay-wrapper";class st{constructor(){this._cssPosition="static",this._topOffset="",this._bottomOffset="",this._alignItems="",this._xPosition="",this._xOffset="",this._width="",this._height="",this._isDisposed=!1}attach(ae){const ie=ae.getConfig();this._overlayRef=ae,this._width&&!ie.width&&ae.updateSize({width:this._width}),this._height&&!ie.height&&ae.updateSize({height:this._height}),ae.hostElement.classList.add($e),this._isDisposed=!1}top(ae=""){return this._bottomOffset="",this._topOffset=ae,this._alignItems="flex-start",this}left(ae=""){return this._xOffset=ae,this._xPosition="left",this}bottom(ae=""){return this._topOffset="",this._bottomOffset=ae,this._alignItems="flex-end",this}right(ae=""){return this._xOffset=ae,this._xPosition="right",this}start(ae=""){return this._xOffset=ae,this._xPosition="start",this}end(ae=""){return this._xOffset=ae,this._xPosition="end",this}width(ae=""){return this._overlayRef?this._overlayRef.updateSize({width:ae}):this._width=ae,this}height(ae=""){return this._overlayRef?this._overlayRef.updateSize({height:ae}):this._height=ae,this}centerHorizontally(ae=""){return this.left(ae),this._xPosition="center",this}centerVertically(ae=""){return this.top(ae),this._alignItems="center",this}apply(){if(!this._overlayRef||!this._overlayRef.hasAttached())return;const ae=this._overlayRef.overlayElement.style,ie=this._overlayRef.hostElement.style,pe=this._overlayRef.getConfig(),{width:Te,height:ct,maxWidth:Lt,maxHeight:Dt}=pe,Kt=!("100%"!==Te&&"100vw"!==Te||Lt&&"100%"!==Lt&&"100vw"!==Lt),ze=!("100%"!==ct&&"100vh"!==ct||Dt&&"100%"!==Dt&&"100vh"!==Dt),yt=this._xPosition,Bt=this._xOffset,$t="rtl"===this._overlayRef.getConfig().direction;let Yt="",Ue="",We="";Kt?We="flex-start":"center"===yt?(We="center",$t?Ue=Bt:Yt=Bt):$t?"left"===yt||"end"===yt?(We="flex-end",Yt=Bt):("right"===yt||"start"===yt)&&(We="flex-start",Ue=Bt):"left"===yt||"start"===yt?(We="flex-start",Yt=Bt):("right"===yt||"end"===yt)&&(We="flex-end",Ue=Bt),ae.position=this._cssPosition,ae.marginLeft=Kt?"0":Yt,ae.marginTop=ze?"0":this._topOffset,ae.marginBottom=this._bottomOffset,ae.marginRight=Kt?"0":Ue,ie.justifyContent=We,ie.alignItems=ze?"flex-start":this._alignItems}dispose(){if(this._isDisposed||!this._overlayRef)return;const ae=this._overlayRef.overlayElement.style,ie=this._overlayRef.hostElement,pe=ie.style;ie.classList.remove($e),pe.justifyContent=pe.alignItems=ae.marginTop=ae.marginBottom=ae.marginLeft=ae.marginRight=ae.position="",this._overlayRef=null,this._isDisposed=!0}}let Mt=(()=>{class ee{constructor(ie,pe,Te,ct){this._viewportRuler=ie,this._document=pe,this._platform=Te,this._overlayContainer=ct}global(){return new st}flexibleConnectedTo(ie){return new Q(ie,this._viewportRuler,this._document,this._platform,this._overlayContainer)}}return ee.\u0275fac=function(ie){return new(ie||ee)(C.\u0275\u0275inject(n.rL),C.\u0275\u0275inject(p.DOCUMENT),C.\u0275\u0275inject(o.t4),C.\u0275\u0275inject(ne))},ee.\u0275prov=C.\u0275\u0275defineInjectable({token:ee,factory:ee.\u0275fac,providedIn:"root"}),ee})(),tt=0,St=(()=>{class ee{constructor(ie,pe,Te,ct,Lt,Dt,Kt,ze,yt,Bt,$t,Yt){this.scrollStrategies=ie,this._overlayContainer=pe,this._componentFactoryResolver=Te,this._positionBuilder=ct,this._keyboardDispatcher=Lt,this._injector=Dt,this._ngZone=Kt,this._document=ze,this._directionality=yt,this._location=Bt,this._outsideClickDispatcher=$t,this._animationsModuleType=Yt}create(ie){const pe=this._createHostElement(),Te=this._createPaneElement(pe),ct=this._createPortalOutlet(Te),Lt=new D(ie);return Lt.direction=Lt.direction||this._directionality.value,new me(ct,pe,Te,Lt,this._ngZone,this._keyboardDispatcher,this._document,this._location,this._outsideClickDispatcher,"NoopAnimations"===this._animationsModuleType)}position(){return this._positionBuilder}_createPaneElement(ie){const pe=this._document.createElement("div");return pe.id="cdk-overlay-"+tt++,pe.classList.add("cdk-overlay-pane"),ie.appendChild(pe),pe}_createHostElement(){const ie=this._document.createElement("div");return this._overlayContainer.getContainerElement().appendChild(ie),ie}_createPortalOutlet(ie){return this._appRef||(this._appRef=this._injector.get(C.ApplicationRef)),new d.u0(ie,this._componentFactoryResolver,this._appRef,this._injector,this._document)}}return ee.\u0275fac=function(ie){return new(ie||ee)(C.\u0275\u0275inject(E),C.\u0275\u0275inject(ne),C.\u0275\u0275inject(C.ComponentFactoryResolver),C.\u0275\u0275inject(Mt),C.\u0275\u0275inject(Y),C.\u0275\u0275inject(C.Injector),C.\u0275\u0275inject(C.NgZone),C.\u0275\u0275inject(p.DOCUMENT),C.\u0275\u0275inject(l.Is),C.\u0275\u0275inject(p.Location),C.\u0275\u0275inject(se),C.\u0275\u0275inject(C.ANIMATION_MODULE_TYPE,8))},ee.\u0275prov=C.\u0275\u0275defineInjectable({token:ee,factory:ee.\u0275fac,providedIn:"root"}),ee})();const bt=[{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"},{originX:"start",originY:"top",overlayX:"start",overlayY:"bottom"},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom"},{originX:"end",originY:"bottom",overlayX:"end",overlayY:"top"}],xt=new C.InjectionToken("cdk-connected-overlay-scroll-strategy");let nt=(()=>{class ee{constructor(ie){this.elementRef=ie}}return ee.\u0275fac=function(ie){return new(ie||ee)(C.\u0275\u0275directiveInject(C.ElementRef))},ee.\u0275dir=C.\u0275\u0275defineDirective({type:ee,selectors:[["","cdk-overlay-origin",""],["","overlay-origin",""],["","cdkOverlayOrigin",""]],exportAs:["cdkOverlayOrigin"],standalone:!0}),ee})(),ot=(()=>{class ee{get offsetX(){return this._offsetX}set offsetX(ie){this._offsetX=ie,this._position&&this._updatePositionStrategy(this._position)}get offsetY(){return this._offsetY}set offsetY(ie){this._offsetY=ie,this._position&&this._updatePositionStrategy(this._position)}get hasBackdrop(){return this._hasBackdrop}set hasBackdrop(ie){this._hasBackdrop=(0,b.Ig)(ie)}get lockPosition(){return this._lockPosition}set lockPosition(ie){this._lockPosition=(0,b.Ig)(ie)}get flexibleDimensions(){return this._flexibleDimensions}set flexibleDimensions(ie){this._flexibleDimensions=(0,b.Ig)(ie)}get growAfterOpen(){return this._growAfterOpen}set growAfterOpen(ie){this._growAfterOpen=(0,b.Ig)(ie)}get push(){return this._push}set push(ie){this._push=(0,b.Ig)(ie)}constructor(ie,pe,Te,ct,Lt){this._overlay=ie,this._dir=Lt,this._hasBackdrop=!1,this._lockPosition=!1,this._growAfterOpen=!1,this._flexibleDimensions=!1,this._push=!1,this._backdropSubscription=u.w0.EMPTY,this._attachSubscription=u.w0.EMPTY,this._detachSubscription=u.w0.EMPTY,this._positionSubscription=u.w0.EMPTY,this.viewportMargin=0,this.open=!1,this.disableClose=!1,this.backdropClick=new C.EventEmitter,this.positionChange=new C.EventEmitter,this.attach=new C.EventEmitter,this.detach=new C.EventEmitter,this.overlayKeydown=new C.EventEmitter,this.overlayOutsideClick=new C.EventEmitter,this._templatePortal=new d.UE(pe,Te),this._scrollStrategyFactory=ct,this.scrollStrategy=this._scrollStrategyFactory()}get overlayRef(){return this._overlayRef}get dir(){return this._dir?this._dir.value:"ltr"}ngOnDestroy(){this._attachSubscription.unsubscribe(),this._detachSubscription.unsubscribe(),this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe(),this._overlayRef&&this._overlayRef.dispose()}ngOnChanges(ie){this._position&&(this._updatePositionStrategy(this._position),this._overlayRef.updateSize({width:this.width,minWidth:this.minWidth,height:this.height,minHeight:this.minHeight}),ie.origin&&this.open&&this._position.apply()),ie.open&&(this.open?this._attachOverlay():this._detachOverlay())}_createOverlay(){(!this.positions||!this.positions.length)&&(this.positions=bt);const ie=this._overlayRef=this._overlay.create(this._buildConfig());this._attachSubscription=ie.attachments().subscribe(()=>this.attach.emit()),this._detachSubscription=ie.detachments().subscribe(()=>this.detach.emit()),ie.keydownEvents().subscribe(pe=>{this.overlayKeydown.next(pe),pe.keyCode===m.hY&&!this.disableClose&&!(0,m.Vb)(pe)&&(pe.preventDefault(),this._detachOverlay())}),this._overlayRef.outsidePointerEvents().subscribe(pe=>{this.overlayOutsideClick.next(pe)})}_buildConfig(){const ie=this._position=this.positionStrategy||this._createPositionStrategy(),pe=new D({direction:this._dir,positionStrategy:ie,scrollStrategy:this.scrollStrategy,hasBackdrop:this.hasBackdrop});return(this.width||0===this.width)&&(pe.width=this.width),(this.height||0===this.height)&&(pe.height=this.height),(this.minWidth||0===this.minWidth)&&(pe.minWidth=this.minWidth),(this.minHeight||0===this.minHeight)&&(pe.minHeight=this.minHeight),this.backdropClass&&(pe.backdropClass=this.backdropClass),this.panelClass&&(pe.panelClass=this.panelClass),pe}_updatePositionStrategy(ie){const pe=this.positions.map(Te=>({originX:Te.originX,originY:Te.originY,overlayX:Te.overlayX,overlayY:Te.overlayY,offsetX:Te.offsetX||this.offsetX,offsetY:Te.offsetY||this.offsetY,panelClass:Te.panelClass||void 0}));return ie.setOrigin(this._getFlexibleConnectedPositionStrategyOrigin()).withPositions(pe).withFlexibleDimensions(this.flexibleDimensions).withPush(this.push).withGrowAfterOpen(this.growAfterOpen).withViewportMargin(this.viewportMargin).withLockedPosition(this.lockPosition).withTransformOriginOn(this.transformOriginSelector)}_createPositionStrategy(){const ie=this._overlay.position().flexibleConnectedTo(this._getFlexibleConnectedPositionStrategyOrigin());return this._updatePositionStrategy(ie),ie}_getFlexibleConnectedPositionStrategyOrigin(){return this.origin instanceof nt?this.origin.elementRef:this.origin}_attachOverlay(){this._overlayRef?this._overlayRef.getConfig().hasBackdrop=this.hasBackdrop:this._createOverlay(),this._overlayRef.hasAttached()||this._overlayRef.attach(this._templatePortal),this.hasBackdrop?this._backdropSubscription=this._overlayRef.backdropClick().subscribe(ie=>{this.backdropClick.emit(ie)}):this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe(),this.positionChange.observers.length>0&&(this._positionSubscription=this._position.positionChanges.pipe((0,s.o)(()=>this.positionChange.observers.length>0)).subscribe(ie=>{this.positionChange.emit(ie),0===this.positionChange.observers.length&&this._positionSubscription.unsubscribe()}))}_detachOverlay(){this._overlayRef&&this._overlayRef.detach(),this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe()}}return ee.\u0275fac=function(ie){return new(ie||ee)(C.\u0275\u0275directiveInject(St),C.\u0275\u0275directiveInject(C.TemplateRef),C.\u0275\u0275directiveInject(C.ViewContainerRef),C.\u0275\u0275directiveInject(xt),C.\u0275\u0275directiveInject(l.Is,8))},ee.\u0275dir=C.\u0275\u0275defineDirective({type:ee,selectors:[["","cdk-connected-overlay",""],["","connected-overlay",""],["","cdkConnectedOverlay",""]],inputs:{origin:["cdkConnectedOverlayOrigin","origin"],positions:["cdkConnectedOverlayPositions","positions"],positionStrategy:["cdkConnectedOverlayPositionStrategy","positionStrategy"],offsetX:["cdkConnectedOverlayOffsetX","offsetX"],offsetY:["cdkConnectedOverlayOffsetY","offsetY"],width:["cdkConnectedOverlayWidth","width"],height:["cdkConnectedOverlayHeight","height"],minWidth:["cdkConnectedOverlayMinWidth","minWidth"],minHeight:["cdkConnectedOverlayMinHeight","minHeight"],backdropClass:["cdkConnectedOverlayBackdropClass","backdropClass"],panelClass:["cdkConnectedOverlayPanelClass","panelClass"],viewportMargin:["cdkConnectedOverlayViewportMargin","viewportMargin"],scrollStrategy:["cdkConnectedOverlayScrollStrategy","scrollStrategy"],open:["cdkConnectedOverlayOpen","open"],disableClose:["cdkConnectedOverlayDisableClose","disableClose"],transformOriginSelector:["cdkConnectedOverlayTransformOriginOn","transformOriginSelector"],hasBackdrop:["cdkConnectedOverlayHasBackdrop","hasBackdrop"],lockPosition:["cdkConnectedOverlayLockPosition","lockPosition"],flexibleDimensions:["cdkConnectedOverlayFlexibleDimensions","flexibleDimensions"],growAfterOpen:["cdkConnectedOverlayGrowAfterOpen","growAfterOpen"],push:["cdkConnectedOverlayPush","push"]},outputs:{backdropClick:"backdropClick",positionChange:"positionChange",attach:"attach",detach:"detach",overlayKeydown:"overlayKeydown",overlayOutsideClick:"overlayOutsideClick"},exportAs:["cdkConnectedOverlay"],standalone:!0,features:[C.\u0275\u0275NgOnChangesFeature]}),ee})();const rt={provide:xt,deps:[St],useFactory:function vt(ee){return()=>ee.scrollStrategies.reposition()}};let J=(()=>{class ee{}return ee.\u0275fac=function(ie){return new(ie||ee)},ee.\u0275mod=C.\u0275\u0275defineNgModule({type:ee}),ee.\u0275inj=C.\u0275\u0275defineInjector({providers:[St,rt],imports:[l.vT,d.eL,n.Cl,n.Cl]}),ee})()},2831:(Se,X,g)=>{"use strict";g.d(X,{Mq:()=>h,Oy:()=>A,ht:()=>w,i$:()=>d,kV:()=>x,qK:()=>c,sA:()=>L,t4:()=>b});var n=g(5879),p=g(6814);let C;try{C=typeof Intl<"u"&&Intl.v8BreakIterator}catch{C=!1}let v,b=(()=>{class T{constructor(E){this._platformId=E,this.isBrowser=this._platformId?(0,p.isPlatformBrowser)(this._platformId):"object"==typeof document&&!!document,this.EDGE=this.isBrowser&&/(edge)/i.test(navigator.userAgent),this.TRIDENT=this.isBrowser&&/(msie|trident)/i.test(navigator.userAgent),this.BLINK=this.isBrowser&&!(!window.chrome&&!C)&&typeof CSS<"u"&&!this.EDGE&&!this.TRIDENT,this.WEBKIT=this.isBrowser&&/AppleWebKit/i.test(navigator.userAgent)&&!this.BLINK&&!this.EDGE&&!this.TRIDENT,this.IOS=this.isBrowser&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!("MSStream"in window),this.FIREFOX=this.isBrowser&&/(firefox|minefield)/i.test(navigator.userAgent),this.ANDROID=this.isBrowser&&/android/i.test(navigator.userAgent)&&!this.TRIDENT,this.SAFARI=this.isBrowser&&/safari/i.test(navigator.userAgent)&&this.WEBKIT}}return T.\u0275fac=function(E){return new(E||T)(n.\u0275\u0275inject(n.PLATFORM_ID))},T.\u0275prov=n.\u0275\u0275defineInjectable({token:T,factory:T.\u0275fac,providedIn:"root"}),T})();const a=["color","button","checkbox","date","datetime-local","email","file","hidden","image","month","number","password","radio","range","reset","search","submit","tel","text","time","url","week"];function c(){if(v)return v;if("object"!=typeof document||!document)return v=new Set(a),v;let T=document.createElement("input");return v=new Set(a.filter(O=>(T.setAttribute("type",O),T.type===O))),v}let s,u,_;function d(T){return function l(){if(null==s&&typeof window<"u")try{window.addEventListener("test",null,Object.defineProperty({},"passive",{get:()=>s=!0}))}finally{s=s||!1}return s}()?T:!!T.capture}function h(){if(null==u){if("object"!=typeof document||!document||"function"!=typeof Element||!Element)return u=!1,u;if("scrollBehavior"in document.documentElement.style)u=!0;else{const T=Element.prototype.scrollTo;u=!!T&&!/\{\s*\[native code\]\s*\}/.test(T.toString())}}return u}function x(T){if(function M(){if(null==_){const T=typeof document<"u"?document.head:null;_=!(!T||!T.createShadowRoot&&!T.attachShadow)}return _}()){const O=T.getRootNode?T.getRootNode():null;if(typeof ShadowRoot<"u"&&ShadowRoot&&O instanceof ShadowRoot)return O}return null}function w(){let T=typeof document<"u"&&document?document.activeElement:null;for(;T&&T.shadowRoot;){const O=T.shadowRoot.activeElement;if(O===T)break;T=O}return T}function L(T){return T.composedPath?T.composedPath()[0]:T.target}function A(){return typeof __karma__<"u"&&!!__karma__||typeof jasmine<"u"&&!!jasmine||typeof jest<"u"&&!!jest||typeof Mocha<"u"&&!!Mocha}},8484:(Se,X,g)=>{"use strict";g.d(X,{C5:()=>l,Pl:()=>w,UE:()=>d,eL:()=>A,ig:()=>M,u0:()=>m});var n=g(5879),p=g(6814);class s{attach(E){return this._attachedHost=E,E.attach(this)}detach(){let E=this._attachedHost;null!=E&&(this._attachedHost=null,E.detach())}get isAttached(){return null!=this._attachedHost}setAttachedHost(E){this._attachedHost=E}}class l extends s{constructor(E,D,R,j,N){super(),this.component=E,this.viewContainerRef=D,this.injector=R,this.componentFactoryResolver=j,this.projectableNodes=N}}class d extends s{constructor(E,D,R,j){super(),this.templateRef=E,this.viewContainerRef=D,this.context=R,this.injector=j}get origin(){return this.templateRef.elementRef}attach(E,D=this.context){return this.context=D,super.attach(E)}detach(){return this.context=void 0,super.detach()}}class r extends s{constructor(E){super(),this.element=E instanceof n.ElementRef?E.nativeElement:E}}class u{constructor(){this._isDisposed=!1,this.attachDomPortal=null}hasAttached(){return!!this._attachedPortal}attach(E){return E instanceof l?(this._attachedPortal=E,this.attachComponentPortal(E)):E instanceof d?(this._attachedPortal=E,this.attachTemplatePortal(E)):this.attachDomPortal&&E instanceof r?(this._attachedPortal=E,this.attachDomPortal(E)):void 0}detach(){this._attachedPortal&&(this._attachedPortal.setAttachedHost(null),this._attachedPortal=null),this._invokeDisposeFn()}dispose(){this.hasAttached()&&this.detach(),this._invokeDisposeFn(),this._isDisposed=!0}setDisposeFn(E){this._disposeFn=E}_invokeDisposeFn(){this._disposeFn&&(this._disposeFn(),this._disposeFn=null)}}class m extends u{constructor(E,D,R,j,N){super(),this.outletElement=E,this._componentFactoryResolver=D,this._appRef=R,this._defaultInjector=j,this.attachDomPortal=S=>{const k=S.element,F=this._document.createComment("dom-portal");k.parentNode.insertBefore(F,k),this.outletElement.appendChild(k),this._attachedPortal=S,super.setDisposeFn(()=>{F.parentNode&&F.parentNode.replaceChild(k,F)})},this._document=N}attachComponentPortal(E){const R=(E.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(E.component);let j;return E.viewContainerRef?(j=E.viewContainerRef.createComponent(R,E.viewContainerRef.length,E.injector||E.viewContainerRef.injector,E.projectableNodes||void 0),this.setDisposeFn(()=>j.destroy())):(j=R.create(E.injector||this._defaultInjector||n.Injector.NULL),this._appRef.attachView(j.hostView),this.setDisposeFn(()=>{this._appRef.viewCount>0&&this._appRef.detachView(j.hostView),j.destroy()})),this.outletElement.appendChild(this._getComponentRootNode(j)),this._attachedPortal=E,j}attachTemplatePortal(E){let D=E.viewContainerRef,R=D.createEmbeddedView(E.templateRef,E.context,{injector:E.injector});return R.rootNodes.forEach(j=>this.outletElement.appendChild(j)),R.detectChanges(),this.setDisposeFn(()=>{let j=D.indexOf(R);-1!==j&&D.remove(j)}),this._attachedPortal=E,R}dispose(){super.dispose(),this.outletElement.remove()}_getComponentRootNode(E){return E.hostView.rootNodes[0]}}let M=(()=>{class O extends d{constructor(D,R){super(D,R)}}return O.\u0275fac=function(D){return new(D||O)(n.\u0275\u0275directiveInject(n.TemplateRef),n.\u0275\u0275directiveInject(n.ViewContainerRef))},O.\u0275dir=n.\u0275\u0275defineDirective({type:O,selectors:[["","cdkPortal",""]],exportAs:["cdkPortal"],features:[n.\u0275\u0275InheritDefinitionFeature]}),O})(),w=(()=>{class O extends u{constructor(D,R,j){super(),this._componentFactoryResolver=D,this._viewContainerRef=R,this._isInitialized=!1,this.attached=new n.EventEmitter,this.attachDomPortal=N=>{const S=N.element,k=this._document.createComment("dom-portal");N.setAttachedHost(this),S.parentNode.insertBefore(k,S),this._getRootNode().appendChild(S),this._attachedPortal=N,super.setDisposeFn(()=>{k.parentNode&&k.parentNode.replaceChild(S,k)})},this._document=j}get portal(){return this._attachedPortal}set portal(D){this.hasAttached()&&!D&&!this._isInitialized||(this.hasAttached()&&super.detach(),D&&super.attach(D),this._attachedPortal=D||null)}get attachedRef(){return this._attachedRef}ngOnInit(){this._isInitialized=!0}ngOnDestroy(){super.dispose(),this._attachedRef=this._attachedPortal=null}attachComponentPortal(D){D.setAttachedHost(this);const R=null!=D.viewContainerRef?D.viewContainerRef:this._viewContainerRef,N=(D.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(D.component),S=R.createComponent(N,R.length,D.injector||R.injector,D.projectableNodes||void 0);return R!==this._viewContainerRef&&this._getRootNode().appendChild(S.hostView.rootNodes[0]),super.setDisposeFn(()=>S.destroy()),this._attachedPortal=D,this._attachedRef=S,this.attached.emit(S),S}attachTemplatePortal(D){D.setAttachedHost(this);const R=this._viewContainerRef.createEmbeddedView(D.templateRef,D.context,{injector:D.injector});return super.setDisposeFn(()=>this._viewContainerRef.clear()),this._attachedPortal=D,this._attachedRef=R,this.attached.emit(R),R}_getRootNode(){const D=this._viewContainerRef.element.nativeElement;return D.nodeType===D.ELEMENT_NODE?D:D.parentNode}}return O.\u0275fac=function(D){return new(D||O)(n.\u0275\u0275directiveInject(n.ComponentFactoryResolver),n.\u0275\u0275directiveInject(n.ViewContainerRef),n.\u0275\u0275directiveInject(p.DOCUMENT))},O.\u0275dir=n.\u0275\u0275defineDirective({type:O,selectors:[["","cdkPortalOutlet",""]],inputs:{portal:["cdkPortalOutlet","portal"]},outputs:{attached:"attached"},exportAs:["cdkPortalOutlet"],features:[n.\u0275\u0275InheritDefinitionFeature]}),O})(),A=(()=>{class O{}return O.\u0275fac=function(D){return new(D||O)},O.\u0275mod=n.\u0275\u0275defineNgModule({type:O}),O.\u0275inj=n.\u0275\u0275defineInjector({}),O})()},6672:(Se,X,g)=>{"use strict";g.d(X,{Cl:()=>me,ZD:()=>ne,mF:()=>A,rL:()=>E});var n=g(2495),p=g(5879),C=g(8645),b=g(2096),o=g(5592),v=g(2438),s=(g(927),g(6410),g(8672)),l=g(2181),d=g(2831),r=g(6814),u=g(9388);let A=(()=>{class ${constructor(Q,ue,Me){this._ngZone=Q,this._platform=ue,this._scrolled=new C.x,this._globalSubscription=null,this._scrolledCount=0,this.scrollContainers=new Map,this._document=Me}register(Q){this.scrollContainers.has(Q)||this.scrollContainers.set(Q,Q.elementScrolled().subscribe(()=>this._scrolled.next(Q)))}deregister(Q){const ue=this.scrollContainers.get(Q);ue&&(ue.unsubscribe(),this.scrollContainers.delete(Q))}scrolled(Q=20){return this._platform.isBrowser?new o.y(ue=>{this._globalSubscription||this._addGlobalListener();const Me=Q>0?this._scrolled.pipe((0,s.e)(Q)).subscribe(ue):this._scrolled.subscribe(ue);return this._scrolledCount++,()=>{Me.unsubscribe(),this._scrolledCount--,this._scrolledCount||this._removeGlobalListener()}}):(0,b.of)()}ngOnDestroy(){this._removeGlobalListener(),this.scrollContainers.forEach((Q,ue)=>this.deregister(ue)),this._scrolled.complete()}ancestorScrolled(Q,ue){const Me=this.getAncestorScrollContainers(Q);return this.scrolled(ue).pipe((0,l.h)(Oe=>!Oe||Me.indexOf(Oe)>-1))}getAncestorScrollContainers(Q){const ue=[];return this.scrollContainers.forEach((Me,Oe)=>{this._scrollableContainsElement(Oe,Q)&&ue.push(Oe)}),ue}_getWindow(){return this._document.defaultView||window}_scrollableContainsElement(Q,ue){let Me=(0,n.fI)(ue),Oe=Q.getElementRef().nativeElement;do{if(Me==Oe)return!0}while(Me=Me.parentElement);return!1}_addGlobalListener(){this._globalSubscription=this._ngZone.runOutsideAngular(()=>{const Q=this._getWindow();return(0,v.R)(Q.document,"scroll").subscribe(()=>this._scrolled.next())})}_removeGlobalListener(){this._globalSubscription&&(this._globalSubscription.unsubscribe(),this._globalSubscription=null)}}return $.\u0275fac=function(Q){return new(Q||$)(p.\u0275\u0275inject(p.NgZone),p.\u0275\u0275inject(d.t4),p.\u0275\u0275inject(r.DOCUMENT,8))},$.\u0275prov=p.\u0275\u0275defineInjectable({token:$,factory:$.\u0275fac,providedIn:"root"}),$})(),E=(()=>{class ${constructor(Q,ue,Me){this._platform=Q,this._change=new C.x,this._changeListener=Oe=>{this._change.next(Oe)},this._document=Me,ue.runOutsideAngular(()=>{if(Q.isBrowser){const Oe=this._getWindow();Oe.addEventListener("resize",this._changeListener),Oe.addEventListener("orientationchange",this._changeListener)}this.change().subscribe(()=>this._viewportSize=null)})}ngOnDestroy(){if(this._platform.isBrowser){const Q=this._getWindow();Q.removeEventListener("resize",this._changeListener),Q.removeEventListener("orientationchange",this._changeListener)}this._change.complete()}getViewportSize(){this._viewportSize||this._updateViewportSize();const Q={width:this._viewportSize.width,height:this._viewportSize.height};return this._platform.isBrowser||(this._viewportSize=null),Q}getViewportRect(){const Q=this.getViewportScrollPosition(),{width:ue,height:Me}=this.getViewportSize();return{top:Q.top,left:Q.left,bottom:Q.top+Me,right:Q.left+ue,height:Me,width:ue}}getViewportScrollPosition(){if(!this._platform.isBrowser)return{top:0,left:0};const Q=this._document,ue=this._getWindow(),Me=Q.documentElement,Oe=Me.getBoundingClientRect();return{top:-Oe.top||Q.body.scrollTop||ue.scrollY||Me.scrollTop||0,left:-Oe.left||Q.body.scrollLeft||ue.scrollX||Me.scrollLeft||0}}change(Q=20){return Q>0?this._change.pipe((0,s.e)(Q)):this._change}_getWindow(){return this._document.defaultView||window}_updateViewportSize(){const Q=this._getWindow();this._viewportSize=this._platform.isBrowser?{width:Q.innerWidth,height:Q.innerHeight}:{width:0,height:0}}}return $.\u0275fac=function(Q){return new(Q||$)(p.\u0275\u0275inject(d.t4),p.\u0275\u0275inject(p.NgZone),p.\u0275\u0275inject(r.DOCUMENT,8))},$.\u0275prov=p.\u0275\u0275defineInjectable({token:$,factory:$.\u0275fac,providedIn:"root"}),$})(),ne=(()=>{class ${}return $.\u0275fac=function(Q){return new(Q||$)},$.\u0275mod=p.\u0275\u0275defineNgModule({type:$}),$.\u0275inj=p.\u0275\u0275defineInjector({}),$})(),me=(()=>{class ${}return $.\u0275fac=function(Q){return new(Q||$)},$.\u0275mod=p.\u0275\u0275defineNgModule({type:$}),$.\u0275inj=p.\u0275\u0275defineInjector({imports:[u.vT,ne,u.vT,ne]}),$})()},6263:(Se,X,g)=>{"use strict";g.d(X,{Ky:()=>l,Lq:()=>a});var n=g(2831),p=g(5879),C=g(2495),b=g(6232),o=g(8645);const v=(0,n.i$)({passive:!0});let a=(()=>{class d{constructor(u,h){this._platform=u,this._ngZone=h,this._monitoredElements=new Map}monitor(u){if(!this._platform.isBrowser)return b.E;const h=(0,C.fI)(u),m=this._monitoredElements.get(h);if(m)return m.subject;const _=new o.x,M="cdk-text-field-autofilled",x=w=>{"cdk-text-field-autofill-start"!==w.animationName||h.classList.contains(M)?"cdk-text-field-autofill-end"===w.animationName&&h.classList.contains(M)&&(h.classList.remove(M),this._ngZone.run(()=>_.next({target:w.target,isAutofilled:!1}))):(h.classList.add(M),this._ngZone.run(()=>_.next({target:w.target,isAutofilled:!0})))};return this._ngZone.runOutsideAngular(()=>{h.addEventListener("animationstart",x,v),h.classList.add("cdk-text-field-autofill-monitored")}),this._monitoredElements.set(h,{subject:_,unlisten:()=>{h.removeEventListener("animationstart",x,v)}}),_}stopMonitoring(u){const h=(0,C.fI)(u),m=this._monitoredElements.get(h);m&&(m.unlisten(),m.subject.complete(),h.classList.remove("cdk-text-field-autofill-monitored"),h.classList.remove("cdk-text-field-autofilled"),this._monitoredElements.delete(h))}ngOnDestroy(){this._monitoredElements.forEach((u,h)=>this.stopMonitoring(h))}}return d.\u0275fac=function(u){return new(u||d)(p.\u0275\u0275inject(n.t4),p.\u0275\u0275inject(p.NgZone))},d.\u0275prov=p.\u0275\u0275defineInjectable({token:d,factory:d.\u0275fac,providedIn:"root"}),d})(),l=(()=>{class d{}return d.\u0275fac=function(u){return new(u||d)},d.\u0275mod=p.\u0275\u0275defineNgModule({type:d}),d.\u0275inj=p.\u0275\u0275defineInjector({}),d})()},6814:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{APP_BASE_HREF:()=>h,AsyncPipe:()=>kn,BrowserPlatformLocation:()=>s,CommonModule:()=>Gi,CurrencyPipe:()=>fe,DATE_PIPE_DEFAULT_OPTIONS:()=>rn,DATE_PIPE_DEFAULT_TIMEZONE:()=>yn,DOCUMENT:()=>v,DatePipe:()=>xn,DecimalPipe:()=>kt,FormStyle:()=>D,FormatWidth:()=>j,HashLocationStrategy:()=>_,I18nPluralPipe:()=>Ti,I18nSelectPipe:()=>zi,IMAGE_CONFIG:()=>ar,IMAGE_LOADER:()=>Fi,JsonPipe:()=>xi,KeyValuePipe:()=>gi,LOCATION_INITIALIZED:()=>c,Location:()=>M,LocationStrategy:()=>u,LowerCasePipe:()=>Un,NgClass:()=>ln,NgComponentOutlet:()=>en,NgFor:()=>Yn,NgForOf:()=>Yn,NgForOfContext:()=>An,NgIf:()=>Ii,NgIfContext:()=>oi,NgLocaleLocalization:()=>In,NgLocalization:()=>un,NgOptimizedImage:()=>Xo,NgPlural:()=>be,NgPluralCase:()=>ge,NgStyle:()=>Ge,NgSwitch:()=>Ct,NgSwitchCase:()=>Ft,NgSwitchDefault:()=>Ae,NgTemplateOutlet:()=>It,NumberFormatStyle:()=>O,NumberSymbol:()=>N,PRECONNECT_CHECK_BLOCKLIST:()=>_o,PathLocationStrategy:()=>m,PercentPipe:()=>U,PlatformLocation:()=>a,Plural:()=>E,SlicePipe:()=>Gt,TitleCasePipe:()=>$i,TranslationWidth:()=>R,UpperCasePipe:()=>er,VERSION:()=>Tt,ViewportScroller:()=>Ut,WeekDay:()=>S,XhrFactory:()=>zn,formatCurrency:()=>Li,formatDate:()=>ct,formatNumber:()=>wt,formatPercent:()=>Qi,getCurrencySymbol:()=>vt,getLocaleCurrencyCode:()=>$e,getLocaleCurrencyName:()=>Be,getLocaleCurrencySymbol:()=>Xe,getLocaleDateFormat:()=>q,getLocaleDateTimeFormat:()=>ue,getLocaleDayNames:()=>Y,getLocaleDayPeriods:()=>F,getLocaleDirection:()=>xt,getLocaleEraNames:()=>ne,getLocaleExtraDayPeriodRules:()=>St,getLocaleExtraDayPeriods:()=>bt,getLocaleFirstDayOfWeek:()=>me,getLocaleId:()=>k,getLocaleMonthNames:()=>se,getLocaleNumberFormat:()=>Oe,getLocaleNumberSymbol:()=>Me,getLocalePluralCase:()=>Mt,getLocaleTimeFormat:()=>Q,getLocaleWeekEndRange:()=>$,getNumberOfCurrencyDigits:()=>J,isPlatformBrowser:()=>ur,isPlatformServer:()=>Et,isPlatformWorkerApp:()=>_t,isPlatformWorkerUi:()=>ft,provideCloudflareLoader:()=>us,provideCloudinaryLoader:()=>Go,provideImageKitLoader:()=>Ko,provideImgixLoader:()=>He,registerLocaleData:()=>Zn,\u0275DomAdapter:()=>o,\u0275NullViewportScroller:()=>_n,\u0275PLATFORM_BROWSER_ID:()=>Vi,\u0275PLATFORM_SERVER_ID:()=>rr,\u0275PLATFORM_WORKER_APP_ID:()=>or,\u0275PLATFORM_WORKER_UI_ID:()=>Zi,\u0275getDOM:()=>C,\u0275parseCookieValue:()=>mi,\u0275setRootDomAdapter:()=>b});var n=g(5879);let p=null;function C(){return p}function b(z){p||(p=z)}class o{}const v=new n.InjectionToken("DocumentToken");let a=(()=>{class z{historyGo(le){throw new Error("Not implemented")}}return z.\u0275fac=function(le){return new(le||z)},z.\u0275prov=n.\u0275\u0275defineInjectable({token:z,factory:function(){return(0,n.inject)(s)},providedIn:"platform"}),z})();const c=new n.InjectionToken("Location Initialized");let s=(()=>{class z extends a{constructor(){super(),this._doc=(0,n.inject)(v),this._location=window.location,this._history=window.history}getBaseHrefFromDOM(){return C().getBaseHref(this._doc)}onPopState(le){const Fe=C().getGlobalEventTarget(this._doc,"window");return Fe.addEventListener("popstate",le,!1),()=>Fe.removeEventListener("popstate",le)}onHashChange(le){const Fe=C().getGlobalEventTarget(this._doc,"window");return Fe.addEventListener("hashchange",le,!1),()=>Fe.removeEventListener("hashchange",le)}get href(){return this._location.href}get protocol(){return this._location.protocol}get hostname(){return this._location.hostname}get port(){return this._location.port}get pathname(){return this._location.pathname}get search(){return this._location.search}get hash(){return this._location.hash}set pathname(le){this._location.pathname=le}pushState(le,Fe,ht){this._history.pushState(le,Fe,ht)}replaceState(le,Fe,ht){this._history.replaceState(le,Fe,ht)}forward(){this._history.forward()}back(){this._history.back()}historyGo(le=0){this._history.go(le)}getState(){return this._history.state}}return z.\u0275fac=function(le){return new(le||z)},z.\u0275prov=n.\u0275\u0275defineInjectable({token:z,factory:function(){return new z},providedIn:"platform"}),z})();function l(z,Ie){if(0==z.length)return Ie;if(0==Ie.length)return z;let le=0;return z.endsWith("/")&&le++,Ie.startsWith("/")&&le++,2==le?z+Ie.substring(1):1==le?z+Ie:z+"/"+Ie}function d(z){const Ie=z.match(/#|\?|$/),le=Ie&&Ie.index||z.length;return z.slice(0,le-("/"===z[le-1]?1:0))+z.slice(le)}function r(z){return z&&"?"!==z[0]?"?"+z:z}let u=(()=>{class z{historyGo(le){throw new Error("Not implemented")}}return z.\u0275fac=function(le){return new(le||z)},z.\u0275prov=n.\u0275\u0275defineInjectable({token:z,factory:function(){return(0,n.inject)(m)},providedIn:"root"}),z})();const h=new n.InjectionToken("appBaseHref");let m=(()=>{class z extends u{constructor(le,Fe){super(),this._platformLocation=le,this._removeListenerFns=[],this._baseHref=Fe??this._platformLocation.getBaseHrefFromDOM()??(0,n.inject)(v).location?.origin??""}ngOnDestroy(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}onPopState(le){this._removeListenerFns.push(this._platformLocation.onPopState(le),this._platformLocation.onHashChange(le))}getBaseHref(){return this._baseHref}prepareExternalUrl(le){return l(this._baseHref,le)}path(le=!1){const Fe=this._platformLocation.pathname+r(this._platformLocation.search),ht=this._platformLocation.hash;return ht&&le?`${Fe}${ht}`:Fe}pushState(le,Fe,ht,Ht){const Zt=this.prepareExternalUrl(ht+r(Ht));this._platformLocation.pushState(le,Fe,Zt)}replaceState(le,Fe,ht,Ht){const Zt=this.prepareExternalUrl(ht+r(Ht));this._platformLocation.replaceState(le,Fe,Zt)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}getState(){return this._platformLocation.getState()}historyGo(le=0){this._platformLocation.historyGo?.(le)}}return z.\u0275fac=function(le){return new(le||z)(n.\u0275\u0275inject(a),n.\u0275\u0275inject(h,8))},z.\u0275prov=n.\u0275\u0275defineInjectable({token:z,factory:z.\u0275fac,providedIn:"root"}),z})(),_=(()=>{class z extends u{constructor(le,Fe){super(),this._platformLocation=le,this._baseHref="",this._removeListenerFns=[],null!=Fe&&(this._baseHref=Fe)}ngOnDestroy(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}onPopState(le){this._removeListenerFns.push(this._platformLocation.onPopState(le),this._platformLocation.onHashChange(le))}getBaseHref(){return this._baseHref}path(le=!1){let Fe=this._platformLocation.hash;return null==Fe&&(Fe="#"),Fe.length>0?Fe.substring(1):Fe}prepareExternalUrl(le){const Fe=l(this._baseHref,le);return Fe.length>0?"#"+Fe:Fe}pushState(le,Fe,ht,Ht){let Zt=this.prepareExternalUrl(ht+r(Ht));0==Zt.length&&(Zt=this._platformLocation.pathname),this._platformLocation.pushState(le,Fe,Zt)}replaceState(le,Fe,ht,Ht){let Zt=this.prepareExternalUrl(ht+r(Ht));0==Zt.length&&(Zt=this._platformLocation.pathname),this._platformLocation.replaceState(le,Fe,Zt)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}getState(){return this._platformLocation.getState()}historyGo(le=0){this._platformLocation.historyGo?.(le)}}return z.\u0275fac=function(le){return new(le||z)(n.\u0275\u0275inject(a),n.\u0275\u0275inject(h,8))},z.\u0275prov=n.\u0275\u0275defineInjectable({token:z,factory:z.\u0275fac}),z})(),M=(()=>{class z{constructor(le){this._subject=new n.EventEmitter,this._urlChangeListeners=[],this._urlChangeSubscription=null,this._locationStrategy=le;const Fe=this._locationStrategy.getBaseHref();this._basePath=function A(z){if(new RegExp("^(https?:)?//").test(z)){const[,le]=z.split(/\/\/[^\/]+/);return le}return z}(d(L(Fe))),this._locationStrategy.onPopState(ht=>{this._subject.emit({url:this.path(!0),pop:!0,state:ht.state,type:ht.type})})}ngOnDestroy(){this._urlChangeSubscription?.unsubscribe(),this._urlChangeListeners=[]}path(le=!1){return this.normalize(this._locationStrategy.path(le))}getState(){return this._locationStrategy.getState()}isCurrentPathEqualTo(le,Fe=""){return this.path()==this.normalize(le+r(Fe))}normalize(le){return z.stripTrailingSlash(function w(z,Ie){if(!z||!Ie.startsWith(z))return Ie;const le=Ie.substring(z.length);return""===le||["/",";","?","#"].includes(le[0])?le:Ie}(this._basePath,L(le)))}prepareExternalUrl(le){return le&&"/"!==le[0]&&(le="/"+le),this._locationStrategy.prepareExternalUrl(le)}go(le,Fe="",ht=null){this._locationStrategy.pushState(ht,"",le,Fe),this._notifyUrlChangeListeners(this.prepareExternalUrl(le+r(Fe)),ht)}replaceState(le,Fe="",ht=null){this._locationStrategy.replaceState(ht,"",le,Fe),this._notifyUrlChangeListeners(this.prepareExternalUrl(le+r(Fe)),ht)}forward(){this._locationStrategy.forward()}back(){this._locationStrategy.back()}historyGo(le=0){this._locationStrategy.historyGo?.(le)}onUrlChange(le){return this._urlChangeListeners.push(le),this._urlChangeSubscription||(this._urlChangeSubscription=this.subscribe(Fe=>{this._notifyUrlChangeListeners(Fe.url,Fe.state)})),()=>{const Fe=this._urlChangeListeners.indexOf(le);this._urlChangeListeners.splice(Fe,1),0===this._urlChangeListeners.length&&(this._urlChangeSubscription?.unsubscribe(),this._urlChangeSubscription=null)}}_notifyUrlChangeListeners(le="",Fe){this._urlChangeListeners.forEach(ht=>ht(le,Fe))}subscribe(le,Fe,ht){return this._subject.subscribe({next:le,error:Fe,complete:ht})}}return z.normalizeQueryParams=r,z.joinWithSlash=l,z.stripTrailingSlash=d,z.\u0275fac=function(le){return new(le||z)(n.\u0275\u0275inject(u))},z.\u0275prov=n.\u0275\u0275defineInjectable({token:z,factory:function(){return function x(){return new M((0,n.\u0275\u0275inject)(u))}()},providedIn:"root"}),z})();function L(z){return z.replace(/\/index.html$/,"")}const T={ADP:[void 0,void 0,0],AFN:[void 0,"\u060b",0],ALL:[void 0,void 0,0],AMD:[void 0,"\u058f",2],AOA:[void 0,"Kz"],ARS:[void 0,"$"],AUD:["A$","$"],AZN:[void 0,"\u20bc"],BAM:[void 0,"KM"],BBD:[void 0,"$"],BDT:[void 0,"\u09f3"],BHD:[void 0,void 0,3],BIF:[void 0,void 0,0],BMD:[void 0,"$"],BND:[void 0,"$"],BOB:[void 0,"Bs"],BRL:["R$"],BSD:[void 0,"$"],BWP:[void 0,"P"],BYN:[void 0,void 0,2],BYR:[void 0,void 0,0],BZD:[void 0,"$"],CAD:["CA$","$",2],CHF:[void 0,void 0,2],CLF:[void 0,void 0,4],CLP:[void 0,"$",0],CNY:["CN\xa5","\xa5"],COP:[void 0,"$",2],CRC:[void 0,"\u20a1",2],CUC:[void 0,"$"],CUP:[void 0,"$"],CZK:[void 0,"K\u010d",2],DJF:[void 0,void 0,0],DKK:[void 0,"kr",2],DOP:[void 0,"$"],EGP:[void 0,"E\xa3"],ESP:[void 0,"\u20a7",0],EUR:["\u20ac"],FJD:[void 0,"$"],FKP:[void 0,"\xa3"],GBP:["\xa3"],GEL:[void 0,"\u20be"],GHS:[void 0,"GH\u20b5"],GIP:[void 0,"\xa3"],GNF:[void 0,"FG",0],GTQ:[void 0,"Q"],GYD:[void 0,"$",2],HKD:["HK$","$"],HNL:[void 0,"L"],HRK:[void 0,"kn"],HUF:[void 0,"Ft",2],IDR:[void 0,"Rp",2],ILS:["\u20aa"],INR:["\u20b9"],IQD:[void 0,void 0,0],IRR:[void 0,void 0,0],ISK:[void 0,"kr",0],ITL:[void 0,void 0,0],JMD:[void 0,"$"],JOD:[void 0,void 0,3],JPY:["\xa5",void 0,0],KHR:[void 0,"\u17db"],KMF:[void 0,"CF",0],KPW:[void 0,"\u20a9",0],KRW:["\u20a9",void 0,0],KWD:[void 0,void 0,3],KYD:[void 0,"$"],KZT:[void 0,"\u20b8"],LAK:[void 0,"\u20ad",0],LBP:[void 0,"L\xa3",0],LKR:[void 0,"Rs"],LRD:[void 0,"$"],LTL:[void 0,"Lt"],LUF:[void 0,void 0,0],LVL:[void 0,"Ls"],LYD:[void 0,void 0,3],MGA:[void 0,"Ar",0],MGF:[void 0,void 0,0],MMK:[void 0,"K",0],MNT:[void 0,"\u20ae",2],MRO:[void 0,void 0,0],MUR:[void 0,"Rs",2],MXN:["MX$","$"],MYR:[void 0,"RM"],NAD:[void 0,"$"],NGN:[void 0,"\u20a6"],NIO:[void 0,"C$"],NOK:[void 0,"kr",2],NPR:[void 0,"Rs"],NZD:["NZ$","$"],OMR:[void 0,void 0,3],PHP:["\u20b1"],PKR:[void 0,"Rs",2],PLN:[void 0,"z\u0142"],PYG:[void 0,"\u20b2",0],RON:[void 0,"lei"],RSD:[void 0,void 0,0],RUB:[void 0,"\u20bd"],RWF:[void 0,"RF",0],SBD:[void 0,"$"],SEK:[void 0,"kr",2],SGD:[void 0,"$"],SHP:[void 0,"\xa3"],SLE:[void 0,void 0,2],SLL:[void 0,void 0,0],SOS:[void 0,void 0,0],SRD:[void 0,"$"],SSP:[void 0,"\xa3"],STD:[void 0,void 0,0],STN:[void 0,"Db"],SYP:[void 0,"\xa3",0],THB:[void 0,"\u0e3f"],TMM:[void 0,void 0,0],TND:[void 0,void 0,3],TOP:[void 0,"T$"],TRL:[void 0,void 0,0],TRY:[void 0,"\u20ba"],TTD:[void 0,"$"],TWD:["NT$","$",2],TZS:[void 0,void 0,2],UAH:[void 0,"\u20b4"],UGX:[void 0,void 0,0],USD:["$"],UYI:[void 0,void 0,0],UYU:[void 0,"$"],UYW:[void 0,void 0,4],UZS:[void 0,void 0,2],VEF:[void 0,"Bs",2],VND:["\u20ab",void 0,0],VUV:[void 0,void 0,0],XAF:["FCFA",void 0,0],XCD:["EC$","$"],XOF:["F\u202fCFA",void 0,0],XPF:["CFPF",void 0,0],XXX:["\xa4"],YER:[void 0,void 0,0],ZAR:[void 0,"R"],ZMK:[void 0,void 0,0],ZMW:[void 0,"ZK"],ZWD:[void 0,void 0,0]};var O=function(z){return z[z.Decimal=0]="Decimal",z[z.Percent=1]="Percent",z[z.Currency=2]="Currency",z[z.Scientific=3]="Scientific",z}(O||{}),E=function(z){return z[z.Zero=0]="Zero",z[z.One=1]="One",z[z.Two=2]="Two",z[z.Few=3]="Few",z[z.Many=4]="Many",z[z.Other=5]="Other",z}(E||{}),D=function(z){return z[z.Format=0]="Format",z[z.Standalone=1]="Standalone",z}(D||{}),R=function(z){return z[z.Narrow=0]="Narrow",z[z.Abbreviated=1]="Abbreviated",z[z.Wide=2]="Wide",z[z.Short=3]="Short",z}(R||{}),j=function(z){return z[z.Short=0]="Short",z[z.Medium=1]="Medium",z[z.Long=2]="Long",z[z.Full=3]="Full",z}(j||{}),N=function(z){return z[z.Decimal=0]="Decimal",z[z.Group=1]="Group",z[z.List=2]="List",z[z.PercentSign=3]="PercentSign",z[z.PlusSign=4]="PlusSign",z[z.MinusSign=5]="MinusSign",z[z.Exponential=6]="Exponential",z[z.SuperscriptingExponent=7]="SuperscriptingExponent",z[z.PerMille=8]="PerMille",z[z.Infinity=9]="Infinity",z[z.NaN=10]="NaN",z[z.TimeSeparator=11]="TimeSeparator",z[z.CurrencyDecimal=12]="CurrencyDecimal",z[z.CurrencyGroup=13]="CurrencyGroup",z}(N||{}),S=function(z){return z[z.Sunday=0]="Sunday",z[z.Monday=1]="Monday",z[z.Tuesday=2]="Tuesday",z[z.Wednesday=3]="Wednesday",z[z.Thursday=4]="Thursday",z[z.Friday=5]="Friday",z[z.Saturday=6]="Saturday",z}(S||{});function k(z){return(0,n.\u0275findLocaleData)(z)[n.\u0275LocaleDataIndex.LocaleId]}function F(z,Ie,le){const Fe=(0,n.\u0275findLocaleData)(z),Ht=nt([Fe[n.\u0275LocaleDataIndex.DayPeriodsFormat],Fe[n.\u0275LocaleDataIndex.DayPeriodsStandalone]],Ie);return nt(Ht,le)}function Y(z,Ie,le){const Fe=(0,n.\u0275findLocaleData)(z),Ht=nt([Fe[n.\u0275LocaleDataIndex.DaysFormat],Fe[n.\u0275LocaleDataIndex.DaysStandalone]],Ie);return nt(Ht,le)}function se(z,Ie,le){const Fe=(0,n.\u0275findLocaleData)(z),Ht=nt([Fe[n.\u0275LocaleDataIndex.MonthsFormat],Fe[n.\u0275LocaleDataIndex.MonthsStandalone]],Ie);return nt(Ht,le)}function ne(z,Ie){return nt((0,n.\u0275findLocaleData)(z)[n.\u0275LocaleDataIndex.Eras],Ie)}function me(z){return(0,n.\u0275findLocaleData)(z)[n.\u0275LocaleDataIndex.FirstDayOfWeek]}function $(z){return(0,n.\u0275findLocaleData)(z)[n.\u0275LocaleDataIndex.WeekendRange]}function q(z,Ie){return nt((0,n.\u0275findLocaleData)(z)[n.\u0275LocaleDataIndex.DateFormat],Ie)}function Q(z,Ie){return nt((0,n.\u0275findLocaleData)(z)[n.\u0275LocaleDataIndex.TimeFormat],Ie)}function ue(z,Ie){return nt((0,n.\u0275findLocaleData)(z)[n.\u0275LocaleDataIndex.DateTimeFormat],Ie)}function Me(z,Ie){const le=(0,n.\u0275findLocaleData)(z),Fe=le[n.\u0275LocaleDataIndex.NumberSymbols][Ie];if(typeof Fe>"u"){if(Ie===N.CurrencyDecimal)return le[n.\u0275LocaleDataIndex.NumberSymbols][N.Decimal];if(Ie===N.CurrencyGroup)return le[n.\u0275LocaleDataIndex.NumberSymbols][N.Group]}return Fe}function Oe(z,Ie){return(0,n.\u0275findLocaleData)(z)[n.\u0275LocaleDataIndex.NumberFormats][Ie]}function Xe(z){return(0,n.\u0275findLocaleData)(z)[n.\u0275LocaleDataIndex.CurrencySymbol]||null}function Be(z){return(0,n.\u0275findLocaleData)(z)[n.\u0275LocaleDataIndex.CurrencyName]||null}function $e(z){return(0,n.\u0275getLocaleCurrencyCode)(z)}const Mt=n.\u0275getLocalePluralCase;function tt(z){if(!z[n.\u0275LocaleDataIndex.ExtraData])throw new Error(`Missing extra locale data for the locale "${z[n.\u0275LocaleDataIndex.LocaleId]}". Use "registerLocaleData" to load new data. See the "I18n guide" on angular.io to know more.`)}function St(z){const Ie=(0,n.\u0275findLocaleData)(z);return tt(Ie),(Ie[n.\u0275LocaleDataIndex.ExtraData][2]||[]).map(Fe=>"string"==typeof Fe?ot(Fe):[ot(Fe[0]),ot(Fe[1])])}function bt(z,Ie,le){const Fe=(0,n.\u0275findLocaleData)(z);tt(Fe);const Ht=nt([Fe[n.\u0275LocaleDataIndex.ExtraData][0],Fe[n.\u0275LocaleDataIndex.ExtraData][1]],Ie)||[];return nt(Ht,le)||[]}function xt(z){return(0,n.\u0275findLocaleData)(z)[n.\u0275LocaleDataIndex.Directionality]}function nt(z,Ie){for(let le=Ie;le>-1;le--)if(typeof z[le]<"u")return z[le];throw new Error("Locale data API: locale data undefined")}function ot(z){const[Ie,le]=z.split(":");return{hours:+Ie,minutes:+le}}function vt(z,Ie,le="en"){const Fe=function st(z){return(0,n.\u0275findLocaleData)(z)[n.\u0275LocaleDataIndex.Currencies]}(le)[z]||T[z]||[],ht=Fe[1];return"narrow"===Ie&&"string"==typeof ht?ht:Fe[0]||z}const rt=2;function J(z){let Ie;const le=T[z];return le&&(Ie=le[2]),"number"==typeof Ie?Ie:rt}const Ce=/^(\d{4,})-?(\d\d)-?(\d\d)(?:T(\d\d)(?::?(\d\d)(?::?(\d\d)(?:\.(\d+))?)?)?(Z|([+-])(\d\d):?(\d\d))?)?$/,ee={},ae=/((?:[^BEGHLMOSWYZabcdhmswyz']+)|(?:'(?:[^']|'')*')|(?:G{1,5}|y{1,4}|Y{1,4}|M{1,5}|L{1,5}|w{1,2}|W{1}|d{1,2}|E{1,6}|c{1,6}|a{1,5}|b{1,5}|B{1,5}|h{1,2}|H{1,2}|m{1,2}|s{1,2}|S{1,3}|z{1,4}|Z{1,5}|O{1,4}))([\s\S]*)/;var ie=function(z){return z[z.Short=0]="Short",z[z.ShortGMT=1]="ShortGMT",z[z.Long=2]="Long",z[z.Extended=3]="Extended",z}(ie||{}),pe=function(z){return z[z.FullYear=0]="FullYear",z[z.Month=1]="Month",z[z.Date=2]="Date",z[z.Hours=3]="Hours",z[z.Minutes=4]="Minutes",z[z.Seconds=5]="Seconds",z[z.FractionalSeconds=6]="FractionalSeconds",z[z.Day=7]="Day",z}(pe||{}),Te=function(z){return z[z.DayPeriods=0]="DayPeriods",z[z.Days=1]="Days",z[z.Months=2]="Months",z[z.Eras=3]="Eras",z}(Te||{});function ct(z,Ie,le,Fe){let ht=function Rt(z){if(qe(z))return z;if("number"==typeof z&&!isNaN(z))return new Date(z);if("string"==typeof z){if(z=z.trim(),/^(\d{4}(-\d{1,2}(-\d{1,2})?)?)$/.test(z)){const[ht,Ht=1,Zt=1]=z.split("-").map(jn=>+jn);return Lt(ht,Ht-1,Zt)}const le=parseFloat(z);if(!isNaN(z-le))return new Date(le);let Fe;if(Fe=z.match(Ce))return function Ye(z){const Ie=new Date(0);let le=0,Fe=0;const ht=z[8]?Ie.setUTCFullYear:Ie.setFullYear,Ht=z[8]?Ie.setUTCHours:Ie.setHours;z[9]&&(le=Number(z[9]+z[10]),Fe=Number(z[9]+z[11])),ht.call(Ie,Number(z[1]),Number(z[2])-1,Number(z[3]));const Zt=Number(z[4]||0)-le,jn=Number(z[5]||0)-Fe,Ni=Number(z[6]||0),ji=Math.floor(1e3*parseFloat("0."+(z[7]||0)));return Ht.call(Ie,Zt,jn,Ni,ji),Ie}(Fe)}const Ie=new Date(z);if(!qe(Ie))throw new Error(`Unable to convert "${z}" into a date`);return Ie}(z);Ie=Dt(le,Ie)||Ie;let jn,Zt=[];for(;Ie;){if(jn=ae.exec(Ie),!jn){Zt.push(Ie);break}{Zt=Zt.concat(jn.slice(1));const pi=Zt.pop();if(!pi)break;Ie=pi}}let Ni=ht.getTimezoneOffset();Fe&&(Ni=ce(Fe,Ni),ht=function it(z,Ie,le){const Fe=le?-1:1,ht=z.getTimezoneOffset();return function Ee(z,Ie){return(z=new Date(z.getTime())).setMinutes(z.getMinutes()+Ie),z}(z,Fe*(ce(Ie,ht)-ht))}(ht,Fe,!0));let ji="";return Zt.forEach(pi=>{const Rn=function re(z){if(Z[z])return Z[z];let Ie;switch(z){case"G":case"GG":case"GGG":Ie=Yt(Te.Eras,R.Abbreviated);break;case"GGGG":Ie=Yt(Te.Eras,R.Wide);break;case"GGGGG":Ie=Yt(Te.Eras,R.Narrow);break;case"y":Ie=Bt(pe.FullYear,1,0,!1,!0);break;case"yy":Ie=Bt(pe.FullYear,2,0,!0,!0);break;case"yyy":Ie=Bt(pe.FullYear,3,0,!1,!0);break;case"yyyy":Ie=Bt(pe.FullYear,4,0,!1,!0);break;case"Y":Ie=ke(1);break;case"YY":Ie=ke(2,!0);break;case"YYY":Ie=ke(3);break;case"YYYY":Ie=ke(4);break;case"M":case"L":Ie=Bt(pe.Month,1,1);break;case"MM":case"LL":Ie=Bt(pe.Month,2,1);break;case"MMM":Ie=Yt(Te.Months,R.Abbreviated);break;case"MMMM":Ie=Yt(Te.Months,R.Wide);break;case"MMMMM":Ie=Yt(Te.Months,R.Narrow);break;case"LLL":Ie=Yt(Te.Months,R.Abbreviated,D.Standalone);break;case"LLLL":Ie=Yt(Te.Months,R.Wide,D.Standalone);break;case"LLLLL":Ie=Yt(Te.Months,R.Narrow,D.Standalone);break;case"w":Ie=je(1);break;case"ww":Ie=je(2);break;case"W":Ie=je(1,!0);break;case"d":Ie=Bt(pe.Date,1);break;case"dd":Ie=Bt(pe.Date,2);break;case"c":case"cc":Ie=Bt(pe.Day,1);break;case"ccc":Ie=Yt(Te.Days,R.Abbreviated,D.Standalone);break;case"cccc":Ie=Yt(Te.Days,R.Wide,D.Standalone);break;case"ccccc":Ie=Yt(Te.Days,R.Narrow,D.Standalone);break;case"cccccc":Ie=Yt(Te.Days,R.Short,D.Standalone);break;case"E":case"EE":case"EEE":Ie=Yt(Te.Days,R.Abbreviated);break;case"EEEE":Ie=Yt(Te.Days,R.Wide);break;case"EEEEE":Ie=Yt(Te.Days,R.Narrow);break;case"EEEEEE":Ie=Yt(Te.Days,R.Short);break;case"a":case"aa":case"aaa":Ie=Yt(Te.DayPeriods,R.Abbreviated);break;case"aaaa":Ie=Yt(Te.DayPeriods,R.Wide);break;case"aaaaa":Ie=Yt(Te.DayPeriods,R.Narrow);break;case"b":case"bb":case"bbb":Ie=Yt(Te.DayPeriods,R.Abbreviated,D.Standalone,!0);break;case"bbbb":Ie=Yt(Te.DayPeriods,R.Wide,D.Standalone,!0);break;case"bbbbb":Ie=Yt(Te.DayPeriods,R.Narrow,D.Standalone,!0);break;case"B":case"BB":case"BBB":Ie=Yt(Te.DayPeriods,R.Abbreviated,D.Format,!0);break;case"BBBB":Ie=Yt(Te.DayPeriods,R.Wide,D.Format,!0);break;case"BBBBB":Ie=Yt(Te.DayPeriods,R.Narrow,D.Format,!0);break;case"h":Ie=Bt(pe.Hours,1,-12);break;case"hh":Ie=Bt(pe.Hours,2,-12);break;case"H":Ie=Bt(pe.Hours,1);break;case"HH":Ie=Bt(pe.Hours,2);break;case"m":Ie=Bt(pe.Minutes,1);break;case"mm":Ie=Bt(pe.Minutes,2);break;case"s":Ie=Bt(pe.Seconds,1);break;case"ss":Ie=Bt(pe.Seconds,2);break;case"S":Ie=Bt(pe.FractionalSeconds,1);break;case"SS":Ie=Bt(pe.FractionalSeconds,2);break;case"SSS":Ie=Bt(pe.FractionalSeconds,3);break;case"Z":case"ZZ":case"ZZZ":Ie=We(ie.Short);break;case"ZZZZZ":Ie=We(ie.Extended);break;case"O":case"OO":case"OOO":case"z":case"zz":case"zzz":Ie=We(ie.ShortGMT);break;case"OOOO":case"ZZZZ":case"zzzz":Ie=We(ie.Long);break;default:return null}return Z[z]=Ie,Ie}(pi);ji+=Rn?Rn(ht,le,Ni):"''"===pi?"'":pi.replace(/(^'|'$)/g,"").replace(/''/g,"'")}),ji}function Lt(z,Ie,le){const Fe=new Date(0);return Fe.setFullYear(z,Ie,le),Fe.setHours(0,0,0),Fe}function Dt(z,Ie){const le=k(z);if(ee[le]=ee[le]||{},ee[le][Ie])return ee[le][Ie];let Fe="";switch(Ie){case"shortDate":Fe=q(z,j.Short);break;case"mediumDate":Fe=q(z,j.Medium);break;case"longDate":Fe=q(z,j.Long);break;case"fullDate":Fe=q(z,j.Full);break;case"shortTime":Fe=Q(z,j.Short);break;case"mediumTime":Fe=Q(z,j.Medium);break;case"longTime":Fe=Q(z,j.Long);break;case"fullTime":Fe=Q(z,j.Full);break;case"short":const ht=Dt(z,"shortTime"),Ht=Dt(z,"shortDate");Fe=Kt(ue(z,j.Short),[ht,Ht]);break;case"medium":const Zt=Dt(z,"mediumTime"),jn=Dt(z,"mediumDate");Fe=Kt(ue(z,j.Medium),[Zt,jn]);break;case"long":const Ni=Dt(z,"longTime"),ji=Dt(z,"longDate");Fe=Kt(ue(z,j.Long),[Ni,ji]);break;case"full":const pi=Dt(z,"fullTime"),Rn=Dt(z,"fullDate");Fe=Kt(ue(z,j.Full),[pi,Rn])}return Fe&&(ee[le][Ie]=Fe),Fe}function Kt(z,Ie){return Ie&&(z=z.replace(/\{([^}]+)}/g,function(le,Fe){return null!=Ie&&Fe in Ie?Ie[Fe]:le})),z}function ze(z,Ie,le="-",Fe,ht){let Ht="";(z<0||ht&&z<=0)&&(ht?z=1-z:(z=-z,Ht=le));let Zt=String(z);for(;Zt.length0||jn>-le)&&(jn+=le),z===pe.Hours)0===jn&&-12===le&&(jn=12);else if(z===pe.FractionalSeconds)return function yt(z,Ie){return ze(z,3).substring(0,Ie)}(jn,Ie);const Ni=Me(Zt,N.MinusSign);return ze(jn,Ie,Ni,Fe,ht)}}function Yt(z,Ie,le=D.Format,Fe=!1){return function(ht,Ht){return function Ue(z,Ie,le,Fe,ht,Ht){switch(le){case Te.Months:return se(Ie,ht,Fe)[z.getMonth()];case Te.Days:return Y(Ie,ht,Fe)[z.getDay()];case Te.DayPeriods:const Zt=z.getHours(),jn=z.getMinutes();if(Ht){const ji=St(Ie),pi=bt(Ie,ht,Fe),Rn=ji.findIndex(qi=>{if(Array.isArray(qi)){const[Si,ir]=qi,Ar=Zt>=Si.hours&&jn>=Si.minutes,wr=Zt0?Math.floor(ht/60):Math.ceil(ht/60);switch(z){case ie.Short:return(ht>=0?"+":"")+ze(Zt,2,Ht)+ze(Math.abs(ht%60),2,Ht);case ie.ShortGMT:return"GMT"+(ht>=0?"+":"")+ze(Zt,1,Ht);case ie.Long:return"GMT"+(ht>=0?"+":"")+ze(Zt,2,Ht)+":"+ze(Math.abs(ht%60),2,Ht);case ie.Extended:return 0===Fe?"Z":(ht>=0?"+":"")+ze(Zt,2,Ht)+":"+ze(Math.abs(ht%60),2,Ht);default:throw new Error(`Unknown zone width "${z}"`)}}}const ve=0,we=4;function De(z){return Lt(z.getFullYear(),z.getMonth(),z.getDate()+(we-z.getDay()))}function je(z,Ie=!1){return function(le,Fe){let ht;if(Ie){const Ht=new Date(le.getFullYear(),le.getMonth(),1).getDay()-1,Zt=le.getDate();ht=1+Math.floor((Zt+Ht)/7)}else{const Ht=De(le),Zt=function at(z){const Ie=Lt(z,ve,1).getDay();return Lt(z,0,1+(Ie<=we?we:we+7)-Ie)}(Ht.getFullYear()),jn=Ht.getTime()-Zt.getTime();ht=1+Math.round(jn/6048e5)}return ze(ht,z,Me(Fe,N.MinusSign))}}function ke(z,Ie=!1){return function(le,Fe){return ze(De(le).getFullYear(),z,Me(Fe,N.MinusSign),Ie)}}const Z={};function ce(z,Ie){z=z.replace(/:/g,"");const le=Date.parse("Jan 01, 1970 00:00:00 "+z)/6e4;return isNaN(le)?Ie:le}function qe(z){return z instanceof Date&&!isNaN(z.valueOf())}const Ne=/^(\d+)?\.((\d+)(-(\d+))?)?$/,dt=22,At=".",tn="0",wn=";",Tn=",",Sn="#",Mn="\xa4",Ci="%";function di(z,Ie,le,Fe,ht,Ht,Zt=!1){let jn="",Ni=!1;if(isFinite(z)){let ji=function qt(z){let Fe,ht,Ht,Zt,jn,Ie=Math.abs(z)+"",le=0;for((ht=Ie.indexOf(At))>-1&&(Ie=Ie.replace(At,"")),(Ht=Ie.search(/e/i))>0?(ht<0&&(ht=Ht),ht+=+Ie.slice(Ht+1),Ie=Ie.substring(0,Ht)):ht<0&&(ht=Ie.length),Ht=0;Ie.charAt(Ht)===tn;Ht++);if(Ht===(jn=Ie.length))Fe=[0],ht=1;else{for(jn--;Ie.charAt(jn)===tn;)jn--;for(ht-=Ht,Fe=[],Zt=0;Ht<=jn;Ht++,Zt++)Fe[Zt]=Number(Ie.charAt(Ht))}return ht>dt&&(Fe=Fe.splice(0,dt-1),le=ht-1,ht=1),{digits:Fe,exponent:le,integerLen:ht}}(z);Zt&&(ji=function pt(z){if(0===z.digits[0])return z;const Ie=z.digits.length-z.integerLen;return z.exponent?z.exponent+=2:(0===Ie?z.digits.push(0,0):1===Ie&&z.digits.push(0),z.integerLen+=2),z}(ji));let pi=Ie.minInt,Rn=Ie.minFrac,qi=Ie.maxFrac;if(Ht){const fr=Ht.match(Ne);if(null===fr)throw new Error(`${Ht} is not a valid digit info`);const Kr=fr[1],lr=fr[3],Nr=fr[5];null!=Kr&&(pi=hn(Kr)),null!=lr&&(Rn=hn(lr)),null!=Nr?qi=hn(Nr):null!=lr&&Rn>qi&&(qi=Rn)}!function on(z,Ie,le){if(Ie>le)throw new Error(`The minimum number of digits after fraction (${Ie}) is higher than the maximum (${le}).`);let Fe=z.digits,ht=Fe.length-z.integerLen;const Ht=Math.min(Math.max(Ie,ht),le);let Zt=Ht+z.integerLen,jn=Fe[Zt];if(Zt>0){Fe.splice(Math.max(z.integerLen,Zt));for(let Rn=Zt;Rn=5)if(Zt-1<0){for(let Rn=0;Rn>Zt;Rn--)Fe.unshift(0),z.integerLen++;Fe.unshift(1),z.integerLen++}else Fe[Zt-1]++;for(;ht=ji?ir.pop():Ni=!1),qi>=10?1:0},0);pi&&(Fe.unshift(pi),z.integerLen++)}(ji,Rn,qi);let Si=ji.digits,ir=ji.integerLen;const Ar=ji.exponent;let wr=[];for(Ni=Si.every(fr=>!fr);ir0?wr=Si.splice(ir,Si.length):(wr=Si,Si=[0]);const Kn=[];for(Si.length>=Ie.lgSize&&Kn.unshift(Si.splice(-Ie.lgSize,Si.length).join(""));Si.length>Ie.gSize;)Kn.unshift(Si.splice(-Ie.gSize,Si.length).join(""));Si.length&&Kn.unshift(Si.join("")),jn=Kn.join(Me(le,Fe)),wr.length&&(jn+=Me(le,ht)+wr.join("")),Ar&&(jn+=Me(le,N.Exponential)+"+"+Ar)}else jn=Me(le,N.Infinity);return jn=z<0&&!Ni?Ie.negPre+jn+Ie.negSuf:Ie.posPre+jn+Ie.posSuf,jn}function Li(z,Ie,le,Fe,ht){const Zt=mt(Oe(Ie,O.Currency),Me(Ie,N.MinusSign));return Zt.minFrac=J(Fe),Zt.maxFrac=Zt.minFrac,di(z,Zt,Ie,N.CurrencyGroup,N.CurrencyDecimal,ht).replace(Mn,le).replace(Mn,"").trim()}function Qi(z,Ie,le){return di(z,mt(Oe(Ie,O.Percent),Me(Ie,N.MinusSign)),Ie,N.Group,N.Decimal,le,!0).replace(new RegExp(Ci,"g"),Me(Ie,N.PercentSign))}function wt(z,Ie,le){return di(z,mt(Oe(Ie,O.Decimal),Me(Ie,N.MinusSign)),Ie,N.Group,N.Decimal,le)}function mt(z,Ie="-"){const le={minInt:1,minFrac:0,maxFrac:0,posPre:"",posSuf:"",negPre:"",negSuf:"",gSize:0,lgSize:0},Fe=z.split(wn),ht=Fe[0],Ht=Fe[1],Zt=-1!==ht.indexOf(At)?ht.split(At):[ht.substring(0,ht.lastIndexOf(tn)+1),ht.substring(ht.lastIndexOf(tn)+1)],jn=Zt[0],Ni=Zt[1]||"";le.posPre=jn.substring(0,jn.indexOf(Sn));for(let pi=0;pi{class z{}return z.\u0275fac=function(le){return new(le||z)},z.\u0275prov=n.\u0275\u0275defineInjectable({token:z,factory:function(le){let Fe=null;return le?Fe=new le:(ht=n.\u0275\u0275inject(n.LOCALE_ID),Fe=new In(ht)),Fe;var ht},providedIn:"root"}),z})();function $n(z,Ie,le,Fe){let ht=`=${z}`;if(Ie.indexOf(ht)>-1||(ht=le.getPluralCategory(z,Fe),Ie.indexOf(ht)>-1))return ht;if(Ie.indexOf("other")>-1)return"other";throw new Error(`No plural message found for value "${z}"`)}let In=(()=>{class z extends un{constructor(le){super(),this.locale=le}getPluralCategory(le,Fe){switch(Mt(Fe||this.locale)(le)){case E.Zero:return"zero";case E.One:return"one";case E.Two:return"two";case E.Few:return"few";case E.Many:return"many";default:return"other"}}}return z.\u0275fac=function(le){return new(le||z)(n.\u0275\u0275inject(n.LOCALE_ID))},z.\u0275prov=n.\u0275\u0275defineInjectable({token:z,factory:z.\u0275fac}),z})();function Zn(z,Ie,le){return(0,n.\u0275registerLocaleData)(z,Ie,le)}function mi(z,Ie){Ie=encodeURIComponent(Ie);for(const le of z.split(";")){const Fe=le.indexOf("="),[ht,Ht]=-1==Fe?[le,""]:[le.slice(0,Fe),le.slice(Fe+1)];if(ht.trim()===Ie)return decodeURIComponent(Ht)}return null}const Qn=/\s+/,ri=[];let ln=(()=>{class z{constructor(le,Fe,ht,Ht){this._iterableDiffers=le,this._keyValueDiffers=Fe,this._ngEl=ht,this._renderer=Ht,this.initialClasses=ri,this.stateMap=new Map}set klass(le){this.initialClasses=null!=le?le.trim().split(Qn):ri}set ngClass(le){this.rawClass="string"==typeof le?le.trim().split(Qn):le}ngDoCheck(){for(const Fe of this.initialClasses)this._updateState(Fe,!0);const le=this.rawClass;if(Array.isArray(le)||le instanceof Set)for(const Fe of le)this._updateState(Fe,!0);else if(null!=le)for(const Fe of Object.keys(le))this._updateState(Fe,!!le[Fe]);this._applyStateDiff()}_updateState(le,Fe){const ht=this.stateMap.get(le);void 0!==ht?(ht.enabled!==Fe&&(ht.changed=!0,ht.enabled=Fe),ht.touched=!0):this.stateMap.set(le,{enabled:Fe,changed:!0,touched:!0})}_applyStateDiff(){for(const le of this.stateMap){const Fe=le[0],ht=le[1];ht.changed?(this._toggleClass(Fe,ht.enabled),ht.changed=!1):ht.touched||(ht.enabled&&this._toggleClass(Fe,!1),this.stateMap.delete(Fe)),ht.touched=!1}}_toggleClass(le,Fe){(le=le.trim()).length>0&&le.split(Qn).forEach(ht=>{Fe?this._renderer.addClass(this._ngEl.nativeElement,ht):this._renderer.removeClass(this._ngEl.nativeElement,ht)})}}return z.\u0275fac=function(le){return new(le||z)(n.\u0275\u0275directiveInject(n.IterableDiffers),n.\u0275\u0275directiveInject(n.KeyValueDiffers),n.\u0275\u0275directiveInject(n.ElementRef),n.\u0275\u0275directiveInject(n.Renderer2))},z.\u0275dir=n.\u0275\u0275defineDirective({type:z,selectors:[["","ngClass",""]],inputs:{klass:["class","klass"],ngClass:"ngClass"},standalone:!0}),z})(),en=(()=>{class z{constructor(le){this._viewContainerRef=le,this.ngComponentOutlet=null}ngOnChanges(le){const{_viewContainerRef:Fe,ngComponentOutletNgModule:ht,ngComponentOutletNgModuleFactory:Ht}=this;if(Fe.clear(),this._componentRef=void 0,this.ngComponentOutlet){const Zt=this.ngComponentOutletInjector||Fe.parentInjector;(le.ngComponentOutletNgModule||le.ngComponentOutletNgModuleFactory)&&(this._moduleRef&&this._moduleRef.destroy(),this._moduleRef=ht?(0,n.createNgModule)(ht,Dn(Zt)):Ht?Ht.create(Dn(Zt)):void 0),this._componentRef=Fe.createComponent(this.ngComponentOutlet,{index:Fe.length,injector:Zt,ngModuleRef:this._moduleRef,projectableNodes:this.ngComponentOutletContent})}}ngOnDestroy(){this._moduleRef&&this._moduleRef.destroy()}}return z.\u0275fac=function(le){return new(le||z)(n.\u0275\u0275directiveInject(n.ViewContainerRef))},z.\u0275dir=n.\u0275\u0275defineDirective({type:z,selectors:[["","ngComponentOutlet",""]],inputs:{ngComponentOutlet:"ngComponentOutlet",ngComponentOutletInjector:"ngComponentOutletInjector",ngComponentOutletContent:"ngComponentOutletContent",ngComponentOutletNgModule:"ngComponentOutletNgModule",ngComponentOutletNgModuleFactory:"ngComponentOutletNgModuleFactory"},standalone:!0,features:[n.\u0275\u0275NgOnChangesFeature]}),z})();function Dn(z){return z.get(n.NgModuleRef).injector}class An{constructor(Ie,le,Fe,ht){this.$implicit=Ie,this.ngForOf=le,this.index=Fe,this.count=ht}get first(){return 0===this.index}get last(){return this.index===this.count-1}get even(){return this.index%2==0}get odd(){return!this.even}}let Yn=(()=>{class z{set ngForOf(le){this._ngForOf=le,this._ngForOfDirty=!0}set ngForTrackBy(le){this._trackByFn=le}get ngForTrackBy(){return this._trackByFn}constructor(le,Fe,ht){this._viewContainer=le,this._template=Fe,this._differs=ht,this._ngForOf=null,this._ngForOfDirty=!0,this._differ=null}set ngForTemplate(le){le&&(this._template=le)}ngDoCheck(){if(this._ngForOfDirty){this._ngForOfDirty=!1;const le=this._ngForOf;!this._differ&&le&&(this._differ=this._differs.find(le).create(this.ngForTrackBy))}if(this._differ){const le=this._differ.diff(this._ngForOf);le&&this._applyChanges(le)}}_applyChanges(le){const Fe=this._viewContainer;le.forEachOperation((ht,Ht,Zt)=>{if(null==ht.previousIndex)Fe.createEmbeddedView(this._template,new An(ht.item,this._ngForOf,-1,-1),null===Zt?void 0:Zt);else if(null==Zt)Fe.remove(null===Ht?void 0:Ht);else if(null!==Ht){const jn=Fe.get(Ht);Fe.move(jn,Zt),si(jn,ht)}});for(let ht=0,Ht=Fe.length;ht{si(Fe.get(ht.currentIndex),ht)})}static ngTemplateContextGuard(le,Fe){return!0}}return z.\u0275fac=function(le){return new(le||z)(n.\u0275\u0275directiveInject(n.ViewContainerRef),n.\u0275\u0275directiveInject(n.TemplateRef),n.\u0275\u0275directiveInject(n.IterableDiffers))},z.\u0275dir=n.\u0275\u0275defineDirective({type:z,selectors:[["","ngFor","","ngForOf",""]],inputs:{ngForOf:"ngForOf",ngForTrackBy:"ngForTrackBy",ngForTemplate:"ngForTemplate"},standalone:!0}),z})();function si(z,Ie){z.context.$implicit=Ie.item}let Ii=(()=>{class z{constructor(le,Fe){this._viewContainer=le,this._context=new oi,this._thenTemplateRef=null,this._elseTemplateRef=null,this._thenViewRef=null,this._elseViewRef=null,this._thenTemplateRef=Fe}set ngIf(le){this._context.$implicit=this._context.ngIf=le,this._updateView()}set ngIfThen(le){li("ngIfThen",le),this._thenTemplateRef=le,this._thenViewRef=null,this._updateView()}set ngIfElse(le){li("ngIfElse",le),this._elseTemplateRef=le,this._elseViewRef=null,this._updateView()}_updateView(){this._context.$implicit?this._thenViewRef||(this._viewContainer.clear(),this._elseViewRef=null,this._thenTemplateRef&&(this._thenViewRef=this._viewContainer.createEmbeddedView(this._thenTemplateRef,this._context))):this._elseViewRef||(this._viewContainer.clear(),this._thenViewRef=null,this._elseTemplateRef&&(this._elseViewRef=this._viewContainer.createEmbeddedView(this._elseTemplateRef,this._context)))}static ngTemplateContextGuard(le,Fe){return!0}}return z.\u0275fac=function(le){return new(le||z)(n.\u0275\u0275directiveInject(n.ViewContainerRef),n.\u0275\u0275directiveInject(n.TemplateRef))},z.\u0275dir=n.\u0275\u0275defineDirective({type:z,selectors:[["","ngIf",""]],inputs:{ngIf:"ngIf",ngIfThen:"ngIfThen",ngIfElse:"ngIfElse"},standalone:!0}),z})();class oi{constructor(){this.$implicit=null,this.ngIf=null}}function li(z,Ie){if(Ie&&!Ie.createEmbeddedView)throw new Error(`${z} must be a TemplateRef, but received '${(0,n.\u0275stringify)(Ie)}'.`)}class Pi{constructor(Ie,le){this._viewContainerRef=Ie,this._templateRef=le,this._created=!1}create(){this._created=!0,this._viewContainerRef.createEmbeddedView(this._templateRef)}destroy(){this._created=!1,this._viewContainerRef.clear()}enforceState(Ie){Ie&&!this._created?this.create():!Ie&&this._created&&this.destroy()}}let Ct=(()=>{class z{constructor(){this._defaultViews=[],this._defaultUsed=!1,this._caseCount=0,this._lastCaseCheckIndex=0,this._lastCasesMatched=!1}set ngSwitch(le){this._ngSwitch=le,0===this._caseCount&&this._updateDefaultCases(!0)}_addCase(){return this._caseCount++}_addDefault(le){this._defaultViews.push(le)}_matchCase(le){const Fe=le==this._ngSwitch;return this._lastCasesMatched=this._lastCasesMatched||Fe,this._lastCaseCheckIndex++,this._lastCaseCheckIndex===this._caseCount&&(this._updateDefaultCases(!this._lastCasesMatched),this._lastCaseCheckIndex=0,this._lastCasesMatched=!1),Fe}_updateDefaultCases(le){if(this._defaultViews.length>0&&le!==this._defaultUsed){this._defaultUsed=le;for(const Fe of this._defaultViews)Fe.enforceState(le)}}}return z.\u0275fac=function(le){return new(le||z)},z.\u0275dir=n.\u0275\u0275defineDirective({type:z,selectors:[["","ngSwitch",""]],inputs:{ngSwitch:"ngSwitch"},standalone:!0}),z})(),Ft=(()=>{class z{constructor(le,Fe,ht){this.ngSwitch=ht,ht._addCase(),this._view=new Pi(le,Fe)}ngDoCheck(){this._view.enforceState(this.ngSwitch._matchCase(this.ngSwitchCase))}}return z.\u0275fac=function(le){return new(le||z)(n.\u0275\u0275directiveInject(n.ViewContainerRef),n.\u0275\u0275directiveInject(n.TemplateRef),n.\u0275\u0275directiveInject(Ct,9))},z.\u0275dir=n.\u0275\u0275defineDirective({type:z,selectors:[["","ngSwitchCase",""]],inputs:{ngSwitchCase:"ngSwitchCase"},standalone:!0}),z})(),Ae=(()=>{class z{constructor(le,Fe,ht){ht._addDefault(new Pi(le,Fe))}}return z.\u0275fac=function(le){return new(le||z)(n.\u0275\u0275directiveInject(n.ViewContainerRef),n.\u0275\u0275directiveInject(n.TemplateRef),n.\u0275\u0275directiveInject(Ct,9))},z.\u0275dir=n.\u0275\u0275defineDirective({type:z,selectors:[["","ngSwitchDefault",""]],standalone:!0}),z})(),be=(()=>{class z{constructor(le){this._localization=le,this._caseViews={}}set ngPlural(le){this._updateView(le)}addCase(le,Fe){this._caseViews[le]=Fe}_updateView(le){this._clearViews();const ht=$n(le,Object.keys(this._caseViews),this._localization);this._activateView(this._caseViews[ht])}_clearViews(){this._activeView&&this._activeView.destroy()}_activateView(le){le&&(this._activeView=le,this._activeView.create())}}return z.\u0275fac=function(le){return new(le||z)(n.\u0275\u0275directiveInject(un))},z.\u0275dir=n.\u0275\u0275defineDirective({type:z,selectors:[["","ngPlural",""]],inputs:{ngPlural:"ngPlural"},standalone:!0}),z})(),ge=(()=>{class z{constructor(le,Fe,ht,Ht){this.value=le;const Zt=!isNaN(Number(le));Ht.addCase(Zt?`=${le}`:le,new Pi(ht,Fe))}}return z.\u0275fac=function(le){return new(le||z)(n.\u0275\u0275injectAttribute("ngPluralCase"),n.\u0275\u0275directiveInject(n.TemplateRef),n.\u0275\u0275directiveInject(n.ViewContainerRef),n.\u0275\u0275directiveInject(be,1))},z.\u0275dir=n.\u0275\u0275defineDirective({type:z,selectors:[["","ngPluralCase",""]],standalone:!0}),z})(),Ge=(()=>{class z{constructor(le,Fe,ht){this._ngEl=le,this._differs=Fe,this._renderer=ht,this._ngStyle=null,this._differ=null}set ngStyle(le){this._ngStyle=le,!this._differ&&le&&(this._differ=this._differs.find(le).create())}ngDoCheck(){if(this._differ){const le=this._differ.diff(this._ngStyle);le&&this._applyChanges(le)}}_setStyle(le,Fe){const[ht,Ht]=le.split("."),Zt=-1===ht.indexOf("-")?void 0:n.RendererStyleFlags2.DashCase;null!=Fe?this._renderer.setStyle(this._ngEl.nativeElement,ht,Ht?`${Fe}${Ht}`:Fe,Zt):this._renderer.removeStyle(this._ngEl.nativeElement,ht,Zt)}_applyChanges(le){le.forEachRemovedItem(Fe=>this._setStyle(Fe.key,null)),le.forEachAddedItem(Fe=>this._setStyle(Fe.key,Fe.currentValue)),le.forEachChangedItem(Fe=>this._setStyle(Fe.key,Fe.currentValue))}}return z.\u0275fac=function(le){return new(le||z)(n.\u0275\u0275directiveInject(n.ElementRef),n.\u0275\u0275directiveInject(n.KeyValueDiffers),n.\u0275\u0275directiveInject(n.Renderer2))},z.\u0275dir=n.\u0275\u0275defineDirective({type:z,selectors:[["","ngStyle",""]],inputs:{ngStyle:"ngStyle"},standalone:!0}),z})(),It=(()=>{class z{constructor(le){this._viewContainerRef=le,this._viewRef=null,this.ngTemplateOutletContext=null,this.ngTemplateOutlet=null,this.ngTemplateOutletInjector=null}ngOnChanges(le){if(le.ngTemplateOutlet||le.ngTemplateOutletInjector){const Fe=this._viewContainerRef;if(this._viewRef&&Fe.remove(Fe.indexOf(this._viewRef)),this.ngTemplateOutlet){const{ngTemplateOutlet:ht,ngTemplateOutletContext:Ht,ngTemplateOutletInjector:Zt}=this;this._viewRef=Fe.createEmbeddedView(ht,Ht,Zt?{injector:Zt}:void 0)}else this._viewRef=null}else this._viewRef&&le.ngTemplateOutletContext&&this.ngTemplateOutletContext&&(this._viewRef.context=this.ngTemplateOutletContext)}}return z.\u0275fac=function(le){return new(le||z)(n.\u0275\u0275directiveInject(n.ViewContainerRef))},z.\u0275dir=n.\u0275\u0275defineDirective({type:z,selectors:[["","ngTemplateOutlet",""]],inputs:{ngTemplateOutletContext:"ngTemplateOutletContext",ngTemplateOutlet:"ngTemplateOutlet",ngTemplateOutletInjector:"ngTemplateOutletInjector"},standalone:!0,features:[n.\u0275\u0275NgOnChangesFeature]}),z})();function an(z,Ie){return new n.\u0275RuntimeError(2100,!1)}class gn{createSubscription(Ie,le){return(0,n.untracked)(()=>Ie.subscribe({next:le,error:Fe=>{throw Fe}}))}dispose(Ie){(0,n.untracked)(()=>Ie.unsubscribe())}}class pn{createSubscription(Ie,le){return Ie.then(le,Fe=>{throw Fe})}dispose(Ie){}}const Jn=new pn,Nn=new gn;let kn=(()=>{class z{constructor(le){this._latestValue=null,this._subscription=null,this._obj=null,this._strategy=null,this._ref=le}ngOnDestroy(){this._subscription&&this._dispose(),this._ref=null}transform(le){return this._obj?le!==this._obj?(this._dispose(),this.transform(le)):this._latestValue:(le&&this._subscribe(le),this._latestValue)}_subscribe(le){this._obj=le,this._strategy=this._selectStrategy(le),this._subscription=this._strategy.createSubscription(le,Fe=>this._updateLatestValue(le,Fe))}_selectStrategy(le){if((0,n.\u0275isPromise)(le))return Jn;if((0,n.\u0275isSubscribable)(le))return Nn;throw an()}_dispose(){this._strategy.dispose(this._subscription),this._latestValue=null,this._subscription=null,this._obj=null}_updateLatestValue(le,Fe){le===this._obj&&(this._latestValue=Fe,this._ref.markForCheck())}}return z.\u0275fac=function(le){return new(le||z)(n.\u0275\u0275directiveInject(n.ChangeDetectorRef,16))},z.\u0275pipe=n.\u0275\u0275definePipe({name:"async",type:z,pure:!1,standalone:!0}),z})(),Un=(()=>{class z{transform(le){if(null==le)return null;if("string"!=typeof le)throw an();return le.toLowerCase()}}return z.\u0275fac=function(le){return new(le||z)},z.\u0275pipe=n.\u0275\u0275definePipe({name:"lowercase",type:z,pure:!0,standalone:!0}),z})();const vi=/(?:[0-9A-Za-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16F1-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CA\uA7D0\uA7D1\uA7D3\uA7D5-\uA7D9\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF40\uDF42-\uDF49\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDD70-\uDD7A\uDD7C-\uDD8A\uDD8C-\uDD92\uDD94\uDD95\uDD97-\uDDA1\uDDA3-\uDDB1\uDDB3-\uDDB9\uDDBB\uDDBC\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67\uDF80-\uDF85\uDF87-\uDFB0\uDFB2-\uDFBA]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2\uDD00-\uDD23\uDE80-\uDEA9\uDEB0\uDEB1\uDF00-\uDF1C\uDF27\uDF30-\uDF45\uDF70-\uDF81\uDFB0-\uDFC4\uDFE0-\uDFF6]|\uD804[\uDC03-\uDC37\uDC71\uDC72\uDC75\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD44\uDD47\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC5F-\uDC61\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDEB8\uDF00-\uDF1A\uDF40-\uDF46]|\uD806[\uDC00-\uDC2B\uDCA0-\uDCDF\uDCFF-\uDD06\uDD09\uDD0C-\uDD13\uDD15\uDD16\uDD18-\uDD2F\uDD3F\uDD41\uDDA0-\uDDA7\uDDAA-\uDDD0\uDDE1\uDDE3\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE89\uDE9D\uDEB0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD89\uDD98\uDEE0-\uDEF2\uDFB0]|\uD808[\uDC00-\uDF99]|\uD809[\uDC80-\uDD43]|\uD80B[\uDF90-\uDFF0]|[\uD80C\uD81C-\uD820\uD822\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879\uD880-\uD883][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE70-\uDEBE\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDE40-\uDE7F\uDF00-\uDF4A\uDF50\uDF93-\uDF9F\uDFE0\uDFE1\uDFE3]|\uD821[\uDC00-\uDFF7]|\uD823[\uDC00-\uDCD5\uDD00-\uDD08]|\uD82B[\uDFF0-\uDFF3\uDFF5-\uDFFB\uDFFD\uDFFE]|\uD82C[\uDC00-\uDD22\uDD50-\uDD52\uDD64-\uDD67\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD837[\uDF00-\uDF1E]|\uD838[\uDD00-\uDD2C\uDD37-\uDD3D\uDD4E\uDE90-\uDEAD\uDEC0-\uDEEB]|\uD839[\uDFE0-\uDFE6\uDFE8-\uDFEB\uDFED\uDFEE\uDFF0-\uDFFE]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43\uDD4B]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDEDF\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF38\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uD884[\uDC00-\uDF4A])\S*/g;let $i=(()=>{class z{transform(le){if(null==le)return null;if("string"!=typeof le)throw an();return le.replace(vi,Fe=>Fe[0].toUpperCase()+Fe.slice(1).toLowerCase())}}return z.\u0275fac=function(le){return new(le||z)},z.\u0275pipe=n.\u0275\u0275definePipe({name:"titlecase",type:z,pure:!0,standalone:!0}),z})(),er=(()=>{class z{transform(le){if(null==le)return null;if("string"!=typeof le)throw an();return le.toUpperCase()}}return z.\u0275fac=function(le){return new(le||z)},z.\u0275pipe=n.\u0275\u0275definePipe({name:"uppercase",type:z,pure:!0,standalone:!0}),z})();const yn=new n.InjectionToken("DATE_PIPE_DEFAULT_TIMEZONE"),rn=new n.InjectionToken("DATE_PIPE_DEFAULT_OPTIONS");let xn=(()=>{class z{constructor(le,Fe,ht){this.locale=le,this.defaultTimezone=Fe,this.defaultOptions=ht}transform(le,Fe,ht,Ht){if(null==le||""===le||le!=le)return null;try{return ct(le,Fe??this.defaultOptions?.dateFormat??"mediumDate",Ht||this.locale,ht??this.defaultOptions?.timezone??this.defaultTimezone??void 0)}catch(Zt){throw an()}}}return z.\u0275fac=function(le){return new(le||z)(n.\u0275\u0275directiveInject(n.LOCALE_ID,16),n.\u0275\u0275directiveInject(yn,24),n.\u0275\u0275directiveInject(rn,24))},z.\u0275pipe=n.\u0275\u0275definePipe({name:"date",type:z,pure:!0,standalone:!0}),z})();const ti=/#/g;let Ti=(()=>{class z{constructor(le){this._localization=le}transform(le,Fe,ht){if(null==le)return"";if("object"!=typeof Fe||null===Fe)throw an();return Fe[$n(le,Object.keys(Fe),this._localization,ht)].replace(ti,le.toString())}}return z.\u0275fac=function(le){return new(le||z)(n.\u0275\u0275directiveInject(un,16))},z.\u0275pipe=n.\u0275\u0275definePipe({name:"i18nPlural",type:z,pure:!0,standalone:!0}),z})(),zi=(()=>{class z{transform(le,Fe){if(null==le)return"";if("object"!=typeof Fe||"string"!=typeof le)throw an();return Fe.hasOwnProperty(le)?Fe[le]:Fe.hasOwnProperty("other")?Fe.other:""}}return z.\u0275fac=function(le){return new(le||z)},z.\u0275pipe=n.\u0275\u0275definePipe({name:"i18nSelect",type:z,pure:!0,standalone:!0}),z})(),xi=(()=>{class z{transform(le){return JSON.stringify(le,null,2)}}return z.\u0275fac=function(le){return new(le||z)},z.\u0275pipe=n.\u0275\u0275definePipe({name:"json",type:z,pure:!1,standalone:!0}),z})(),gi=(()=>{class z{constructor(le){this.differs=le,this.keyValues=[],this.compareFn=Ke}transform(le,Fe=Ke){if(!le||!(le instanceof Map)&&"object"!=typeof le)return null;this.differ||(this.differ=this.differs.find(le).create());const ht=this.differ.diff(le),Ht=Fe!==this.compareFn;return ht&&(this.keyValues=[],ht.forEachItem(Zt=>{this.keyValues.push(function _r(z,Ie){return{key:z,value:Ie}}(Zt.key,Zt.currentValue))})),(ht||Ht)&&(this.keyValues.sort(Fe),this.compareFn=Fe),this.keyValues}}return z.\u0275fac=function(le){return new(le||z)(n.\u0275\u0275directiveInject(n.KeyValueDiffers,16))},z.\u0275pipe=n.\u0275\u0275definePipe({name:"keyvalue",type:z,pure:!1,standalone:!0}),z})();function Ke(z,Ie){const le=z.key,Fe=Ie.key;if(le===Fe)return 0;if(void 0===le)return 1;if(void 0===Fe)return-1;if(null===le)return 1;if(null===Fe)return-1;if("string"==typeof le&&"string"==typeof Fe)return le{class z{constructor(le){this._locale=le}transform(le,Fe,ht){if(!Pe(le))return null;ht=ht||this._locale;try{return wt(Je(le),ht,Fe)}catch(Ht){throw an()}}}return z.\u0275fac=function(le){return new(le||z)(n.\u0275\u0275directiveInject(n.LOCALE_ID,16))},z.\u0275pipe=n.\u0275\u0275definePipe({name:"number",type:z,pure:!0,standalone:!0}),z})(),U=(()=>{class z{constructor(le){this._locale=le}transform(le,Fe,ht){if(!Pe(le))return null;ht=ht||this._locale;try{return Qi(Je(le),ht,Fe)}catch(Ht){throw an()}}}return z.\u0275fac=function(le){return new(le||z)(n.\u0275\u0275directiveInject(n.LOCALE_ID,16))},z.\u0275pipe=n.\u0275\u0275definePipe({name:"percent",type:z,pure:!0,standalone:!0}),z})(),fe=(()=>{class z{constructor(le,Fe="USD"){this._locale=le,this._defaultCurrencyCode=Fe}transform(le,Fe=this._defaultCurrencyCode,ht="symbol",Ht,Zt){if(!Pe(le))return null;Zt=Zt||this._locale,"boolean"==typeof ht&&(ht=ht?"symbol":"code");let jn=Fe||this._defaultCurrencyCode;"code"!==ht&&(jn="symbol"===ht||"symbol-narrow"===ht?vt(jn,"symbol"===ht?"wide":"narrow",Zt):ht);try{return Li(Je(le),Zt,jn,Fe,Ht)}catch(Ni){throw an()}}}return z.\u0275fac=function(le){return new(le||z)(n.\u0275\u0275directiveInject(n.LOCALE_ID,16),n.\u0275\u0275directiveInject(n.DEFAULT_CURRENCY_CODE,16))},z.\u0275pipe=n.\u0275\u0275definePipe({name:"currency",type:z,pure:!0,standalone:!0}),z})();function Pe(z){return!(null==z||""===z||z!=z)}function Je(z){if("string"==typeof z&&!isNaN(Number(z)-parseFloat(z)))return Number(z);if("number"!=typeof z)throw new Error(`${z} is not a number`);return z}let Gt=(()=>{class z{transform(le,Fe,ht){if(null==le)return null;if(!this.supports(le))throw an();return le.slice(Fe,ht)}supports(le){return"string"==typeof le||Array.isArray(le)}}return z.\u0275fac=function(le){return new(le||z)},z.\u0275pipe=n.\u0275\u0275definePipe({name:"slice",type:z,pure:!1,standalone:!0}),z})(),Gi=(()=>{class z{}return z.\u0275fac=function(le){return new(le||z)},z.\u0275mod=n.\u0275\u0275defineNgModule({type:z}),z.\u0275inj=n.\u0275\u0275defineInjector({}),z})();const Vi="browser",rr="server",or="browserWorkerApp",Zi="browserWorkerUi";function ur(z){return z===Vi}function Et(z){return z===rr}function _t(z){return z===or}function ft(z){return z===Zi}const Tt=new n.Version("16.1.7");let Ut=(()=>{class z{}return z.\u0275prov=(0,n.\u0275\u0275defineInjectable)({token:z,providedIn:"root",factory:()=>new Wt((0,n.\u0275\u0275inject)(v),window)}),z})();class Wt{constructor(Ie,le){this.document=Ie,this.window=le,this.offset=()=>[0,0]}setOffset(Ie){this.offset=Array.isArray(Ie)?()=>Ie:Ie}getScrollPosition(){return this.supportsScrolling()?[this.window.pageXOffset,this.window.pageYOffset]:[0,0]}scrollToPosition(Ie){this.supportsScrolling()&&this.window.scrollTo(Ie[0],Ie[1])}scrollToAnchor(Ie){if(!this.supportsScrolling())return;const le=function Cn(z,Ie){const le=z.getElementById(Ie)||z.getElementsByName(Ie)[0];if(le)return le;if("function"==typeof z.createTreeWalker&&z.body&&"function"==typeof z.body.attachShadow){const Fe=z.createTreeWalker(z.body,NodeFilter.SHOW_ELEMENT);let ht=Fe.currentNode;for(;ht;){const Ht=ht.shadowRoot;if(Ht){const Zt=Ht.getElementById(Ie)||Ht.querySelector(`[name="${Ie}"]`);if(Zt)return Zt}ht=Fe.nextNode()}}return null}(this.document,Ie);le&&(this.scrollToElement(le),le.focus())}setHistoryScrollRestoration(Ie){if(this.supportScrollRestoration()){const le=this.window.history;le&&le.scrollRestoration&&(le.scrollRestoration=Ie)}}scrollToElement(Ie){const le=Ie.getBoundingClientRect(),Fe=le.left+this.window.pageXOffset,ht=le.top+this.window.pageYOffset,Ht=this.offset();this.window.scrollTo(Fe-Ht[0],ht-Ht[1])}supportScrollRestoration(){try{if(!this.supportsScrolling())return!1;const Ie=nn(this.window.history)||nn(Object.getPrototypeOf(this.window.history));return!(!Ie||!Ie.writable&&!Ie.set)}catch{return!1}}supportsScrolling(){try{return!!this.window&&!!this.window.scrollTo&&"pageXOffset"in this.window}catch{return!1}}}function nn(z){return Object.getOwnPropertyDescriptor(z,"scrollRestoration")}class _n{setOffset(Ie){}getScrollPosition(){return[0,0]}scrollToPosition(Ie){}scrollToAnchor(Ie){}setHistoryScrollRestoration(Ie){}}class zn{}function Xn(z){return z.startsWith("/")?z.slice(1):z}const ai=z=>z.src,Fi=new n.InjectionToken("ImageLoader",{providedIn:"root",factory:()=>ai});function Xi(z,Ie){return function(Fe){return function Mi(z){if("string"!=typeof z||""===z.trim())return!1;try{return new URL(z),!0}catch{return!1}}(Fe)||function Jr(z,Ie){throw new n.\u0275RuntimeError(2959,!1)}(),Fe=function ni(z){return z.endsWith("/")?z.slice(0,-1):z}(Fe),[{provide:Fi,useValue:Zt=>(function Ri(z){return/^https?:\/\//.test(z)}(Zt.src)&&function Ho(z,Ie){throw new n.\u0275RuntimeError(2959,!1)}(),z(Fe,{...Zt,src:Xn(Zt.src)}))}]}}const us=Xi(oo);function oo(z,Ie){let le="format=auto";return Ie.width&&(le+=`,width=${Ie.width}`),`${z}/cdn-cgi/image/${le}/${Ie.src}`}const Go=Xi(go);function go(z,Ie){let le="f_auto,q_auto";return Ie.width&&(le+=`,w_${Ie.width}`),`${z}/image/upload/${le}/${Ie.src}`}const Ko=Xi(Yo);function Yo(z,Ie){const{src:le,width:Fe}=Ie;let ht;return ht=Fe?[z,`tr:w-${Fe}`,le]:[z,le],ht.join("/")}const He=Xi(Qt);function Qt(z,Ie){const le=new URL(`${z}/${Ie.src}`);return le.searchParams.set("auto","format"),Ie.width&&le.searchParams.set("w",Ie.width.toString()),le.href}const _o=new n.InjectionToken("PRECONNECT_CHECK_BLOCKLIST"),hs=new n.InjectionToken("NG_OPTIMIZED_PRELOADED_IMAGES",{providedIn:"root",factory:()=>new Set});let fs=(()=>{class z{constructor(){this.preloadedImages=(0,n.inject)(hs),this.document=(0,n.inject)(v)}createPreloadLinkTag(le,Fe,ht,Ht){if(this.preloadedImages.has(Fe))return;this.preloadedImages.add(Fe);const Zt=le.createElement("link");le.setAttribute(Zt,"as","image"),le.setAttribute(Zt,"href",Fe),le.setAttribute(Zt,"rel","preload"),le.setAttribute(Zt,"fetchpriority","high"),Ht&&le.setAttribute(Zt,"imageSizes",Ht),ht&&le.setAttribute(Zt,"imageSrcset",ht),le.appendChild(this.document.head,Zt)}}return z.\u0275fac=function(le){return new(le||z)},z.\u0275prov=n.\u0275\u0275defineInjectable({token:z,factory:z.\u0275fac,providedIn:"root"}),z})();const Zo=/^((\s*\d+w\s*(,|$)){1,})$/,so=[1,2],Ao={breakpoints:[16,32,48,64,96,128,256,384,640,750,828,1080,1200,1920,2048,3840]},ar=new n.InjectionToken("ImageConfig",{providedIn:"root",factory:()=>Ao});let Xo=(()=>{class z{constructor(){this.imageLoader=(0,n.inject)(Fi),this.config=function eo(z){let Ie={};return z.breakpoints&&(Ie.breakpoints=z.breakpoints.sort((le,Fe)=>le-Fe)),Object.assign({},Ao,z,Ie)}((0,n.inject)(ar)),this.renderer=(0,n.inject)(n.Renderer2),this.imgElement=(0,n.inject)(n.ElementRef).nativeElement,this.injector=(0,n.inject)(n.Injector),this.isServer=Et((0,n.inject)(n.PLATFORM_ID)),this.preloadLinkCreator=(0,n.inject)(fs),this.lcpObserver=null,this._renderedSrc=null,this.priority=!1,this.disableOptimizedSrcset=!1,this.fill=!1}ngOnInit(){this.setHostAttributes()}setHostAttributes(){this.fill?this.sizes||(this.sizes="100vw"):(this.setHostAttribute("width",this.width.toString()),this.setHostAttribute("height",this.height.toString())),this.setHostAttribute("loading",this.getLoadingBehavior()),this.setHostAttribute("fetchpriority",this.getFetchPriority()),this.setHostAttribute("ng-img","true");const le=this.getRewrittenSrc();let Fe;this.setHostAttribute("src",le),this.sizes&&this.setHostAttribute("sizes",this.sizes),this.ngSrcset?Fe=this.getRewrittenSrcset():this.shouldGenerateAutomaticSrcset()&&(Fe=this.getAutomaticSrcset()),Fe&&this.setHostAttribute("srcset",Fe),this.isServer&&this.priority&&this.preloadLinkCreator.createPreloadLinkTag(this.renderer,le,Fe,this.sizes)}ngOnChanges(le){}callImageLoader(le){let Fe=le;return this.loaderParams&&(Fe.loaderParams=this.loaderParams),this.imageLoader(Fe)}getLoadingBehavior(){return this.priority||void 0===this.loading?this.priority?"eager":"lazy":this.loading}getFetchPriority(){return this.priority?"high":"auto"}getRewrittenSrc(){return this._renderedSrc||(this._renderedSrc=this.callImageLoader({src:this.ngSrc})),this._renderedSrc}getRewrittenSrcset(){const le=Zo.test(this.ngSrcset);return this.ngSrcset.split(",").filter(ht=>""!==ht).map(ht=>{ht=ht.trim();const Ht=le?parseFloat(ht):parseFloat(ht)*this.width;return`${this.callImageLoader({src:this.ngSrc,width:Ht})} ${ht}`}).join(", ")}getAutomaticSrcset(){return this.sizes?this.getResponsiveSrcset():this.getFixedSrcset()}getResponsiveSrcset(){const{breakpoints:le}=this.config;let Fe=le;return"100vw"===this.sizes?.trim()&&(Fe=le.filter(Ht=>Ht>=640)),Fe.map(Ht=>`${this.callImageLoader({src:this.ngSrc,width:Ht})} ${Ht}w`).join(", ")}getFixedSrcset(){return so.map(Fe=>`${this.callImageLoader({src:this.ngSrc,width:this.width*Fe})} ${Fe}x`).join(", ")}shouldGenerateAutomaticSrcset(){return!this.disableOptimizedSrcset&&!this.srcset&&this.imageLoader!==ai&&!(this.width>1920||this.height>1080)}ngOnDestroy(){}setHostAttribute(le,Fe){this.renderer.setAttribute(this.imgElement,le,Fe)}}return z.\u0275fac=function(le){return new(le||z)},z.\u0275dir=n.\u0275\u0275defineDirective({type:z,selectors:[["img","ngSrc",""]],hostVars:8,hostBindings:function(le,Fe){2&le&&n.\u0275\u0275styleProp("position",Fe.fill?"absolute":null)("width",Fe.fill?"100%":null)("height",Fe.fill?"100%":null)("inset",Fe.fill?"0px":null)},inputs:{ngSrc:"ngSrc",ngSrcset:"ngSrcset",sizes:"sizes",width:["width","width",n.numberAttribute],height:["height","height",n.numberAttribute],loading:"loading",priority:["priority","priority",n.booleanAttribute],loaderParams:"loaderParams",disableOptimizedSrcset:["disableOptimizedSrcset","disableOptimizedSrcset",n.booleanAttribute],fill:["fill","fill",n.booleanAttribute],src:"src",srcset:"srcset"},standalone:!0,features:[n.\u0275\u0275InputTransformsFeature,n.\u0275\u0275NgOnChangesFeature]}),z})()},9862:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{FetchBackend:()=>Be,HTTP_INTERCEPTORS:()=>xt,HttpBackend:()=>m,HttpClient:()=>ue,HttpClientJsonpModule:()=>wn,HttpClientModule:()=>tn,HttpClientXsrfModule:()=>At,HttpContext:()=>R,HttpContextToken:()=>D,HttpErrorResponse:()=>q,HttpEventType:()=>se,HttpFeatureKind:()=>ke,HttpHandler:()=>h,HttpHeaderResponse:()=>me,HttpHeaders:()=>_,HttpParams:()=>E,HttpRequest:()=>Y,HttpResponse:()=>$,HttpResponseBase:()=>ne,HttpUrlEncodingCodec:()=>x,HttpXhrBackend:()=>Bt,HttpXsrfTokenExtractor:()=>we,JsonpClientBackend:()=>Lt,JsonpInterceptor:()=>Kt,provideHttpClient:()=>re,withFetch:()=>dt,withInterceptors:()=>ce,withInterceptorsFromDi:()=>it,withJsonpSupport:()=>qe,withNoXsrfProtection:()=>Ye,withRequestsMadeViaParent:()=>Ne,withXsrfConfiguration:()=>Rt,\u0275HttpInterceptingHandler:()=>rt,\u0275HttpInterceptorHandler:()=>rt,\u0275withHttpTransferCache:()=>Qi});var n=g(5861),p=g(5879),C=g(2096),b=g(5592),o=g(2459),v=g(6328),a=g(2181),c=g(7398),s=g(4716),l=g(4664),d=g(9397),r=g(1374),u=g(6814);class h{}class m{}class _{constructor(mt){this.normalizedNames=new Map,this.lazyUpdate=null,mt?"string"==typeof mt?this.lazyInit=()=>{this.headers=new Map,mt.split("\n").forEach(pt=>{const qt=pt.indexOf(":");if(qt>0){const on=pt.slice(0,qt),hn=on.toLowerCase(),un=pt.slice(qt+1).trim();this.maybeSetNormalizedName(on,hn),this.headers.has(hn)?this.headers.get(hn).push(un):this.headers.set(hn,[un])}})}:typeof Headers<"u"&&mt instanceof Headers?(this.headers=new Map,mt.forEach((pt,qt)=>{this.setHeaderEntries(qt,pt)})):this.lazyInit=()=>{this.headers=new Map,Object.entries(mt).forEach(([pt,qt])=>{this.setHeaderEntries(pt,qt)})}:this.headers=new Map}has(mt){return this.init(),this.headers.has(mt.toLowerCase())}get(mt){this.init();const pt=this.headers.get(mt.toLowerCase());return pt&&pt.length>0?pt[0]:null}keys(){return this.init(),Array.from(this.normalizedNames.values())}getAll(mt){return this.init(),this.headers.get(mt.toLowerCase())||null}append(mt,pt){return this.clone({name:mt,value:pt,op:"a"})}set(mt,pt){return this.clone({name:mt,value:pt,op:"s"})}delete(mt,pt){return this.clone({name:mt,value:pt,op:"d"})}maybeSetNormalizedName(mt,pt){this.normalizedNames.has(pt)||this.normalizedNames.set(pt,mt)}init(){this.lazyInit&&(this.lazyInit instanceof _?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(mt=>this.applyUpdate(mt)),this.lazyUpdate=null))}copyFrom(mt){mt.init(),Array.from(mt.headers.keys()).forEach(pt=>{this.headers.set(pt,mt.headers.get(pt)),this.normalizedNames.set(pt,mt.normalizedNames.get(pt))})}clone(mt){const pt=new _;return pt.lazyInit=this.lazyInit&&this.lazyInit instanceof _?this.lazyInit:this,pt.lazyUpdate=(this.lazyUpdate||[]).concat([mt]),pt}applyUpdate(mt){const pt=mt.name.toLowerCase();switch(mt.op){case"a":case"s":let qt=mt.value;if("string"==typeof qt&&(qt=[qt]),0===qt.length)return;this.maybeSetNormalizedName(mt.name,pt);const on=("a"===mt.op?this.headers.get(pt):void 0)||[];on.push(...qt),this.headers.set(pt,on);break;case"d":const hn=mt.value;if(hn){let un=this.headers.get(pt);if(!un)return;un=un.filter($n=>-1===hn.indexOf($n)),0===un.length?(this.headers.delete(pt),this.normalizedNames.delete(pt)):this.headers.set(pt,un)}else this.headers.delete(pt),this.normalizedNames.delete(pt)}}setHeaderEntries(mt,pt){const qt=(Array.isArray(pt)?pt:[pt]).map(hn=>hn.toString()),on=mt.toLowerCase();this.headers.set(on,qt),this.maybeSetNormalizedName(mt,on)}forEach(mt){this.init(),Array.from(this.normalizedNames.keys()).forEach(pt=>mt(this.normalizedNames.get(pt),this.headers.get(pt)))}}class x{encodeKey(mt){return T(mt)}encodeValue(mt){return T(mt)}decodeKey(mt){return decodeURIComponent(mt)}decodeValue(mt){return decodeURIComponent(mt)}}const L=/%(\d[a-f0-9])/gi,A={40:"@","3A":":",24:"$","2C":",","3B":";","3D":"=","3F":"?","2F":"/"};function T(wt){return encodeURIComponent(wt).replace(L,(mt,pt)=>A[pt]??mt)}function O(wt){return`${wt}`}class E{constructor(mt={}){if(this.updates=null,this.cloneFrom=null,this.encoder=mt.encoder||new x,mt.fromString){if(mt.fromObject)throw new Error("Cannot specify both fromString and fromObject.");this.map=function w(wt,mt){const pt=new Map;return wt.length>0&&wt.replace(/^\?/,"").split("&").forEach(on=>{const hn=on.indexOf("="),[un,$n]=-1==hn?[mt.decodeKey(on),""]:[mt.decodeKey(on.slice(0,hn)),mt.decodeValue(on.slice(hn+1))],In=pt.get(un)||[];In.push($n),pt.set(un,In)}),pt}(mt.fromString,this.encoder)}else mt.fromObject?(this.map=new Map,Object.keys(mt.fromObject).forEach(pt=>{const qt=mt.fromObject[pt],on=Array.isArray(qt)?qt.map(O):[O(qt)];this.map.set(pt,on)})):this.map=null}has(mt){return this.init(),this.map.has(mt)}get(mt){this.init();const pt=this.map.get(mt);return pt?pt[0]:null}getAll(mt){return this.init(),this.map.get(mt)||null}keys(){return this.init(),Array.from(this.map.keys())}append(mt,pt){return this.clone({param:mt,value:pt,op:"a"})}appendAll(mt){const pt=[];return Object.keys(mt).forEach(qt=>{const on=mt[qt];Array.isArray(on)?on.forEach(hn=>{pt.push({param:qt,value:hn,op:"a"})}):pt.push({param:qt,value:on,op:"a"})}),this.clone(pt)}set(mt,pt){return this.clone({param:mt,value:pt,op:"s"})}delete(mt,pt){return this.clone({param:mt,value:pt,op:"d"})}toString(){return this.init(),this.keys().map(mt=>{const pt=this.encoder.encodeKey(mt);return this.map.get(mt).map(qt=>pt+"="+this.encoder.encodeValue(qt)).join("&")}).filter(mt=>""!==mt).join("&")}clone(mt){const pt=new E({encoder:this.encoder});return pt.cloneFrom=this.cloneFrom||this,pt.updates=(this.updates||[]).concat(mt),pt}init(){null===this.map&&(this.map=new Map),null!==this.cloneFrom&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(mt=>this.map.set(mt,this.cloneFrom.map.get(mt))),this.updates.forEach(mt=>{switch(mt.op){case"a":case"s":const pt=("a"===mt.op?this.map.get(mt.param):void 0)||[];pt.push(O(mt.value)),this.map.set(mt.param,pt);break;case"d":if(void 0===mt.value){this.map.delete(mt.param);break}{let qt=this.map.get(mt.param)||[];const on=qt.indexOf(O(mt.value));-1!==on&&qt.splice(on,1),qt.length>0?this.map.set(mt.param,qt):this.map.delete(mt.param)}}}),this.cloneFrom=this.updates=null)}}class D{constructor(mt){this.defaultValue=mt}}class R{constructor(){this.map=new Map}set(mt,pt){return this.map.set(mt,pt),this}get(mt){return this.map.has(mt)||this.map.set(mt,mt.defaultValue()),this.map.get(mt)}delete(mt){return this.map.delete(mt),this}has(mt){return this.map.has(mt)}keys(){return this.map.keys()}}function N(wt){return typeof ArrayBuffer<"u"&&wt instanceof ArrayBuffer}function S(wt){return typeof Blob<"u"&&wt instanceof Blob}function k(wt){return typeof FormData<"u"&&wt instanceof FormData}class Y{constructor(mt,pt,qt,on){let hn;if(this.url=pt,this.body=null,this.reportProgress=!1,this.withCredentials=!1,this.responseType="json",this.method=mt.toUpperCase(),function j(wt){switch(wt){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}(this.method)||on?(this.body=void 0!==qt?qt:null,hn=on):hn=qt,hn&&(this.reportProgress=!!hn.reportProgress,this.withCredentials=!!hn.withCredentials,hn.responseType&&(this.responseType=hn.responseType),hn.headers&&(this.headers=hn.headers),hn.context&&(this.context=hn.context),hn.params&&(this.params=hn.params)),this.headers||(this.headers=new _),this.context||(this.context=new R),this.params){const un=this.params.toString();if(0===un.length)this.urlWithParams=pt;else{const $n=pt.indexOf("?");this.urlWithParams=pt+(-1===$n?"?":$nQn.set(ri,mt.setHeaders[ri]),In)),mt.setParams&&(Zn=Object.keys(mt.setParams).reduce((Qn,ri)=>Qn.set(ri,mt.setParams[ri]),Zn)),new Y(pt,qt,hn,{params:Zn,headers:In,context:mi,reportProgress:$n,responseType:on,withCredentials:un})}}var se=function(wt){return wt[wt.Sent=0]="Sent",wt[wt.UploadProgress=1]="UploadProgress",wt[wt.ResponseHeader=2]="ResponseHeader",wt[wt.DownloadProgress=3]="DownloadProgress",wt[wt.Response=4]="Response",wt[wt.User=5]="User",wt}(se||{});class ne{constructor(mt,pt=200,qt="OK"){this.headers=mt.headers||new _,this.status=void 0!==mt.status?mt.status:pt,this.statusText=mt.statusText||qt,this.url=mt.url||null,this.ok=this.status>=200&&this.status<300}}class me extends ne{constructor(mt={}){super(mt),this.type=se.ResponseHeader}clone(mt={}){return new me({headers:mt.headers||this.headers,status:void 0!==mt.status?mt.status:this.status,statusText:mt.statusText||this.statusText,url:mt.url||this.url||void 0})}}class $ extends ne{constructor(mt={}){super(mt),this.type=se.Response,this.body=void 0!==mt.body?mt.body:null}clone(mt={}){return new $({body:void 0!==mt.body?mt.body:this.body,headers:mt.headers||this.headers,status:void 0!==mt.status?mt.status:this.status,statusText:mt.statusText||this.statusText,url:mt.url||this.url||void 0})}}class q extends ne{constructor(mt){super(mt,0,"Unknown Error"),this.name="HttpErrorResponse",this.ok=!1,this.message=this.status>=200&&this.status<300?`Http failure during parsing for ${mt.url||"(unknown url)"}`:`Http failure response for ${mt.url||"(unknown url)"}: ${mt.status} ${mt.statusText}`,this.error=mt.error||null}}function Q(wt,mt){return{body:mt,headers:wt.headers,context:wt.context,observe:wt.observe,params:wt.params,reportProgress:wt.reportProgress,responseType:wt.responseType,withCredentials:wt.withCredentials}}let ue=(()=>{class wt{constructor(pt){this.handler=pt}request(pt,qt,on={}){let hn;if(pt instanceof Y)hn=pt;else{let In,Zn;In=on.headers instanceof _?on.headers:new _(on.headers),on.params&&(Zn=on.params instanceof E?on.params:new E({fromObject:on.params})),hn=new Y(pt,qt,void 0!==on.body?on.body:null,{headers:In,context:on.context,params:Zn,reportProgress:on.reportProgress,responseType:on.responseType||"json",withCredentials:on.withCredentials})}const un=(0,C.of)(hn).pipe((0,v.b)(In=>this.handler.handle(In)));if(pt instanceof Y||"events"===on.observe)return un;const $n=un.pipe((0,a.h)(In=>In instanceof $));switch(on.observe||"body"){case"body":switch(hn.responseType){case"arraybuffer":return $n.pipe((0,c.U)(In=>{if(null!==In.body&&!(In.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return In.body}));case"blob":return $n.pipe((0,c.U)(In=>{if(null!==In.body&&!(In.body instanceof Blob))throw new Error("Response is not a Blob.");return In.body}));case"text":return $n.pipe((0,c.U)(In=>{if(null!==In.body&&"string"!=typeof In.body)throw new Error("Response is not a string.");return In.body}));default:return $n.pipe((0,c.U)(In=>In.body))}case"response":return $n;default:throw new Error(`Unreachable: unhandled observe type ${on.observe}}`)}}delete(pt,qt={}){return this.request("DELETE",pt,qt)}get(pt,qt={}){return this.request("GET",pt,qt)}head(pt,qt={}){return this.request("HEAD",pt,qt)}jsonp(pt,qt){return this.request("JSONP",pt,{params:(new E).append(qt,"JSONP_CALLBACK"),observe:"body",responseType:"json"})}options(pt,qt={}){return this.request("OPTIONS",pt,qt)}patch(pt,qt,on={}){return this.request("PATCH",pt,Q(on,qt))}post(pt,qt,on={}){return this.request("POST",pt,Q(on,qt))}put(pt,qt,on={}){return this.request("PUT",pt,Q(on,qt))}}return wt.\u0275fac=function(pt){return new(pt||wt)(p.\u0275\u0275inject(h))},wt.\u0275prov=p.\u0275\u0275defineInjectable({token:wt,factory:wt.\u0275fac}),wt})();const Me=/^\)\]\}',?\n/;function Xe(wt){if(wt.url)return wt.url;const mt="X-Request-URL".toLocaleLowerCase();return wt.headers.get(mt)}let Be=(()=>{class wt{constructor(){this.fetchImpl=(0,p.inject)($e,{optional:!0})?.fetch??fetch.bind(globalThis),this.ngZone=(0,p.inject)(p.NgZone)}handle(pt){return new b.y(qt=>{const on=new AbortController;return this.doRequest(pt,on.signal,qt).then(st,hn=>qt.error(new q({error:hn}))),()=>on.abort()})}doRequest(pt,qt,on){var hn=this;return(0,n.Z)(function*(){const un=hn.createRequestInit(pt);let $n;try{const en=hn.fetchImpl(pt.urlWithParams,{signal:qt,...un});(function Mt(wt){wt.then(st,st)})(en),on.next({type:se.Sent}),$n=yield en}catch(en){return void on.error(new q({error:en,status:en.status??0,statusText:en.statusText,url:pt.urlWithParams,headers:en.headers}))}const In=new _($n.headers),Zn=$n.statusText,mi=Xe($n)??pt.urlWithParams;let Qn=$n.status,ri=null;if(pt.reportProgress&&on.next(new me({headers:In,status:Qn,statusText:Zn,url:mi})),$n.body){const en=$n.headers.get("content-length"),Dn=[],An=$n.body.getReader();let si,ii,Yn=0;const Ii=typeof Zone<"u"&&Zone.current;yield hn.ngZone.runOutsideAngular((0,n.Z)(function*(){for(;;){const{done:li,value:Pi}=yield An.read();if(li)break;if(Dn.push(Pi),Yn+=Pi.length,pt.reportProgress){ii="text"===pt.responseType?(ii??"")+(si??=new TextDecoder).decode(Pi,{stream:!0}):void 0;const Ct=()=>on.next({type:se.DownloadProgress,total:en?+en:void 0,loaded:Yn,partialText:ii});Ii?Ii.run(Ct):Ct()}}}));const oi=hn.concatChunks(Dn,Yn);try{ri=hn.parseBody(pt,oi)}catch(li){return void on.error(new q({error:li,headers:new _($n.headers),status:$n.status,statusText:$n.statusText,url:Xe($n)??pt.urlWithParams}))}}0===Qn&&(Qn=ri?200:0),Qn>=200&&Qn<300?(on.next(new $({body:ri,headers:In,status:Qn,statusText:Zn,url:mi})),on.complete()):on.error(new q({error:ri,headers:In,status:Qn,statusText:Zn,url:mi}))})()}parseBody(pt,qt){switch(pt.responseType){case"json":const on=(new TextDecoder).decode(qt).replace(Me,"");return""===on?null:JSON.parse(on);case"text":return(new TextDecoder).decode(qt);case"blob":return new Blob([qt]);case"arraybuffer":return qt.buffer}}createRequestInit(pt){const qt={},on=pt.withCredentials?"include":void 0;if(pt.headers.forEach((hn,un)=>qt[hn]=un.join(",")),qt.Accept??="application/json, text/plain, */*",!qt["Content-Type"]){const hn=pt.detectContentTypeHeader();null!==hn&&(qt["Content-Type"]=hn)}return{body:pt.serializeBody(),method:pt.method,headers:qt,credentials:on}}concatChunks(pt,qt){const on=new Uint8Array(qt);let hn=0;for(const un of pt)on.set(un,hn),hn+=un.length;return on}}return wt.\u0275fac=function(pt){return new(pt||wt)},wt.\u0275prov=p.\u0275\u0275defineInjectable({token:wt,factory:wt.\u0275fac}),wt})();class $e{}function st(){}function tt(wt,mt){return mt(wt)}function St(wt,mt){return(pt,qt)=>mt.intercept(pt,{handle:on=>wt(on,qt)})}const xt=new p.InjectionToken(""),nt=new p.InjectionToken(""),ot=new p.InjectionToken("");function vt(){let wt=null;return(mt,pt)=>{null===wt&&(wt=((0,p.inject)(xt,{optional:!0})??[]).reduceRight(St,tt));const qt=(0,p.inject)(p.\u0275InitialRenderPendingTasks),on=qt.add();return wt(mt,pt).pipe((0,s.x)(()=>qt.remove(on)))}}let Ce,rt=(()=>{class wt extends h{constructor(pt,qt){super(),this.backend=pt,this.injector=qt,this.chain=null,this.pendingTasks=(0,p.inject)(p.\u0275InitialRenderPendingTasks)}handle(pt){if(null===this.chain){const on=Array.from(new Set([...this.injector.get(nt),...this.injector.get(ot,[])]));this.chain=on.reduceRight((hn,un)=>function bt(wt,mt,pt){return(qt,on)=>pt.runInContext(()=>mt(qt,hn=>wt(hn,on)))}(hn,un,this.injector),tt)}const qt=this.pendingTasks.add();return this.chain(pt,on=>this.backend.handle(on)).pipe((0,s.x)(()=>this.pendingTasks.remove(qt)))}}return wt.\u0275fac=function(pt){return new(pt||wt)(p.\u0275\u0275inject(m),p.\u0275\u0275inject(p.EnvironmentInjector))},wt.\u0275prov=p.\u0275\u0275defineInjectable({token:wt,factory:wt.\u0275fac}),wt})(),J=0;class Te{}function ct(){return"object"==typeof window?window:{}}let Lt=(()=>{class wt{constructor(pt,qt){this.callbackMap=pt,this.document=qt,this.resolvedPromise=Promise.resolve()}nextCallback(){return"ng_jsonp_callback_"+J++}handle(pt){if("JSONP"!==pt.method)throw new Error("JSONP requests must use JSONP request method.");if("json"!==pt.responseType)throw new Error("JSONP requests must use Json response type.");if(pt.headers.keys().length>0)throw new Error("JSONP requests do not support headers.");return new b.y(qt=>{const on=this.nextCallback(),hn=pt.urlWithParams.replace(/=JSONP_CALLBACK(&|$)/,`=${on}$1`),un=this.document.createElement("script");un.src=hn;let $n=null,In=!1;this.callbackMap[on]=ri=>{delete this.callbackMap[on],$n=ri,In=!0};const Zn=()=>{un.parentNode&&un.parentNode.removeChild(un),delete this.callbackMap[on]};return un.addEventListener("load",ri=>{this.resolvedPromise.then(()=>{Zn(),In?(qt.next(new $({body:$n,status:200,statusText:"OK",url:hn})),qt.complete()):qt.error(new q({url:hn,status:0,statusText:"JSONP Error",error:new Error("JSONP injected script did not invoke callback.")}))})}),un.addEventListener("error",ri=>{Zn(),qt.error(new q({error:ri,status:0,statusText:"JSONP Error",url:hn}))}),this.document.body.appendChild(un),qt.next({type:se.Sent}),()=>{In||this.removeListeners(un),Zn()}})}removeListeners(pt){Ce||(Ce=this.document.implementation.createHTMLDocument()),Ce.adoptNode(pt)}}return wt.\u0275fac=function(pt){return new(pt||wt)(p.\u0275\u0275inject(Te),p.\u0275\u0275inject(u.DOCUMENT))},wt.\u0275prov=p.\u0275\u0275defineInjectable({token:wt,factory:wt.\u0275fac}),wt})();function Dt(wt,mt){return"JSONP"===wt.method?(0,p.inject)(Lt).handle(wt):mt(wt)}let Kt=(()=>{class wt{constructor(pt){this.injector=pt}intercept(pt,qt){return this.injector.runInContext(()=>Dt(pt,on=>qt.handle(on)))}}return wt.\u0275fac=function(pt){return new(pt||wt)(p.\u0275\u0275inject(p.EnvironmentInjector))},wt.\u0275prov=p.\u0275\u0275defineInjectable({token:wt,factory:wt.\u0275fac}),wt})();const ze=/^\)\]\}',?\n/;let Bt=(()=>{class wt{constructor(pt){this.xhrFactory=pt}handle(pt){if("JSONP"===pt.method)throw new p.\u0275RuntimeError(-2800,!1);const qt=this.xhrFactory;return(qt.\u0275loadImpl?(0,o.D)(qt.\u0275loadImpl()):(0,C.of)(null)).pipe((0,l.w)(()=>new b.y(hn=>{const un=qt.build();if(un.open(pt.method,pt.urlWithParams),pt.withCredentials&&(un.withCredentials=!0),pt.headers.forEach((Dn,An)=>un.setRequestHeader(Dn,An.join(","))),pt.headers.has("Accept")||un.setRequestHeader("Accept","application/json, text/plain, */*"),!pt.headers.has("Content-Type")){const Dn=pt.detectContentTypeHeader();null!==Dn&&un.setRequestHeader("Content-Type",Dn)}if(pt.responseType){const Dn=pt.responseType.toLowerCase();un.responseType="json"!==Dn?Dn:"text"}const $n=pt.serializeBody();let In=null;const Zn=()=>{if(null!==In)return In;const Dn=un.statusText||"OK",An=new _(un.getAllResponseHeaders()),Yn=function yt(wt){return"responseURL"in wt&&wt.responseURL?wt.responseURL:/^X-Request-URL:/m.test(wt.getAllResponseHeaders())?wt.getResponseHeader("X-Request-URL"):null}(un)||pt.url;return In=new me({headers:An,status:un.status,statusText:Dn,url:Yn}),In},mi=()=>{let{headers:Dn,status:An,statusText:Yn,url:si}=Zn(),ii=null;204!==An&&(ii=typeof un.response>"u"?un.responseText:un.response),0===An&&(An=ii?200:0);let Ii=An>=200&&An<300;if("json"===pt.responseType&&"string"==typeof ii){const oi=ii;ii=ii.replace(ze,"");try{ii=""!==ii?JSON.parse(ii):null}catch(li){ii=oi,Ii&&(Ii=!1,ii={error:li,text:ii})}}Ii?(hn.next(new $({body:ii,headers:Dn,status:An,statusText:Yn,url:si||void 0})),hn.complete()):hn.error(new q({error:ii,headers:Dn,status:An,statusText:Yn,url:si||void 0}))},Qn=Dn=>{const{url:An}=Zn(),Yn=new q({error:Dn,status:un.status||0,statusText:un.statusText||"Unknown Error",url:An||void 0});hn.error(Yn)};let ri=!1;const ln=Dn=>{ri||(hn.next(Zn()),ri=!0);let An={type:se.DownloadProgress,loaded:Dn.loaded};Dn.lengthComputable&&(An.total=Dn.total),"text"===pt.responseType&&un.responseText&&(An.partialText=un.responseText),hn.next(An)},en=Dn=>{let An={type:se.UploadProgress,loaded:Dn.loaded};Dn.lengthComputable&&(An.total=Dn.total),hn.next(An)};return un.addEventListener("load",mi),un.addEventListener("error",Qn),un.addEventListener("timeout",Qn),un.addEventListener("abort",Qn),pt.reportProgress&&(un.addEventListener("progress",ln),null!==$n&&un.upload&&un.upload.addEventListener("progress",en)),un.send($n),hn.next({type:se.Sent}),()=>{un.removeEventListener("error",Qn),un.removeEventListener("abort",Qn),un.removeEventListener("load",mi),un.removeEventListener("timeout",Qn),pt.reportProgress&&(un.removeEventListener("progress",ln),null!==$n&&un.upload&&un.upload.removeEventListener("progress",en)),un.readyState!==un.DONE&&un.abort()}})))}}return wt.\u0275fac=function(pt){return new(pt||wt)(p.\u0275\u0275inject(u.XhrFactory))},wt.\u0275prov=p.\u0275\u0275defineInjectable({token:wt,factory:wt.\u0275fac}),wt})();const $t=new p.InjectionToken("XSRF_ENABLED"),Yt="XSRF-TOKEN",Ue=new p.InjectionToken("XSRF_COOKIE_NAME",{providedIn:"root",factory:()=>Yt}),We="X-XSRF-TOKEN",ve=new p.InjectionToken("XSRF_HEADER_NAME",{providedIn:"root",factory:()=>We});class we{}let at=(()=>{class wt{constructor(pt,qt,on){this.doc=pt,this.platform=qt,this.cookieName=on,this.lastCookieString="",this.lastToken=null,this.parseCount=0}getToken(){if("server"===this.platform)return null;const pt=this.doc.cookie||"";return pt!==this.lastCookieString&&(this.parseCount++,this.lastToken=(0,u.\u0275parseCookieValue)(pt,this.cookieName),this.lastCookieString=pt),this.lastToken}}return wt.\u0275fac=function(pt){return new(pt||wt)(p.\u0275\u0275inject(u.DOCUMENT),p.\u0275\u0275inject(p.PLATFORM_ID),p.\u0275\u0275inject(Ue))},wt.\u0275prov=p.\u0275\u0275defineInjectable({token:wt,factory:wt.\u0275fac}),wt})();function De(wt,mt){const pt=wt.url.toLowerCase();if(!(0,p.inject)($t)||"GET"===wt.method||"HEAD"===wt.method||pt.startsWith("http://")||pt.startsWith("https://"))return mt(wt);const qt=(0,p.inject)(we).getToken(),on=(0,p.inject)(ve);return null!=qt&&!wt.headers.has(on)&&(wt=wt.clone({headers:wt.headers.set(on,qt)})),mt(wt)}let je=(()=>{class wt{constructor(pt){this.injector=pt}intercept(pt,qt){return this.injector.runInContext(()=>De(pt,on=>qt.handle(on)))}}return wt.\u0275fac=function(pt){return new(pt||wt)(p.\u0275\u0275inject(p.EnvironmentInjector))},wt.\u0275prov=p.\u0275\u0275defineInjectable({token:wt,factory:wt.\u0275fac}),wt})();var ke=function(wt){return wt[wt.Interceptors=0]="Interceptors",wt[wt.LegacyInterceptors=1]="LegacyInterceptors",wt[wt.CustomXsrfConfiguration=2]="CustomXsrfConfiguration",wt[wt.NoXsrfProtection=3]="NoXsrfProtection",wt[wt.JsonpSupport=4]="JsonpSupport",wt[wt.RequestsMadeViaParent=5]="RequestsMadeViaParent",wt[wt.Fetch=6]="Fetch",wt}(ke||{});function Z(wt,mt){return{\u0275kind:wt,\u0275providers:mt}}function re(...wt){const mt=[ue,Bt,rt,{provide:h,useExisting:rt},{provide:m,useExisting:Bt},{provide:nt,useValue:De,multi:!0},{provide:$t,useValue:!0},{provide:we,useClass:at}];for(const pt of wt)mt.push(...pt.\u0275providers);return(0,p.makeEnvironmentProviders)(mt)}function ce(wt){return Z(ke.Interceptors,wt.map(mt=>({provide:nt,useValue:mt,multi:!0})))}const Ee=new p.InjectionToken("LEGACY_INTERCEPTOR_FN");function it(){return Z(ke.LegacyInterceptors,[{provide:Ee,useFactory:vt},{provide:nt,useExisting:Ee,multi:!0}])}function Rt({cookieName:wt,headerName:mt}){const pt=[];return void 0!==wt&&pt.push({provide:Ue,useValue:wt}),void 0!==mt&&pt.push({provide:ve,useValue:mt}),Z(ke.CustomXsrfConfiguration,pt)}function Ye(){return Z(ke.NoXsrfProtection,[{provide:$t,useValue:!1}])}function qe(){return Z(ke.JsonpSupport,[Lt,{provide:Te,useFactory:ct},{provide:nt,useValue:Dt,multi:!0}])}function Ne(){return Z(ke.RequestsMadeViaParent,[{provide:m,useFactory:()=>(0,p.inject)(h,{skipSelf:!0,optional:!0})}])}function dt(){return Z(ke.Fetch,[Be,{provide:m,useExisting:Be}])}let At=(()=>{class wt{static disable(){return{ngModule:wt,providers:[Ye().\u0275providers]}}static withOptions(pt={}){return{ngModule:wt,providers:Rt(pt).\u0275providers}}}return wt.\u0275fac=function(pt){return new(pt||wt)},wt.\u0275mod=p.\u0275\u0275defineNgModule({type:wt}),wt.\u0275inj=p.\u0275\u0275defineInjector({providers:[je,{provide:xt,useExisting:je,multi:!0},{provide:we,useClass:at},Rt({cookieName:Yt,headerName:We}).\u0275providers,{provide:$t,useValue:!0}]}),wt})(),tn=(()=>{class wt{}return wt.\u0275fac=function(pt){return new(pt||wt)},wt.\u0275mod=p.\u0275\u0275defineNgModule({type:wt}),wt.\u0275inj=p.\u0275\u0275defineInjector({providers:[re(it())]}),wt})(),wn=(()=>{class wt{}return wt.\u0275fac=function(pt){return new(pt||wt)},wt.\u0275mod=p.\u0275\u0275defineNgModule({type:wt}),wt.\u0275inj=p.\u0275\u0275defineInjector({providers:[qe().\u0275providers]}),wt})();const Tn=new p.InjectionToken(""),Sn=["GET","HEAD"];function Mn(wt,mt){const{isCacheActive:pt}=(0,p.inject)(Tn);if(!pt||!Sn.includes(wt.method))return mt(wt);const qt=(0,p.inject)(p.TransferState),on=function di(wt){const{params:mt,method:pt,responseType:qt,url:on}=wt,$n=function Li(wt){let mt=0;for(const pt of wt)mt=Math.imul(31,mt)+pt.charCodeAt(0)<<0;return mt+=2147483648,mt.toString()}(pt+"."+qt+"."+on+"?"+mt.keys().sort().map(In=>`${In}=${mt.getAll(In)}`).join("&"));return(0,p.makeStateKey)($n)}(wt),hn=qt.get(on,null);if(hn){let un=hn.body;switch(hn.responseType){case"arraybuffer":un=(new TextEncoder).encode(hn.body).buffer;break;case"blob":un=new Blob([hn.body])}return(0,C.of)(new $({body:un,headers:new _(hn.headers),status:hn.status,statusText:hn.statusText,url:hn.url}))}return mt(wt).pipe((0,d.b)(un=>{un instanceof $&&qt.set(on,{body:un.body,headers:Ci(un.headers),status:un.status,statusText:un.statusText,url:un.url||"",responseType:wt.responseType})}))}function Ci(wt){const mt={};for(const pt of wt.keys()){const qt=wt.getAll(pt);null!==qt&&(mt[pt]=qt)}return mt}function Qi(){return[{provide:Tn,useFactory:()=>((0,p.inject)(p.\u0275ENABLED_SSR_FEATURES).add("httpcache"),{isCacheActive:!0})},{provide:ot,useValue:Mn,multi:!0,deps:[p.TransferState,Tn]},{provide:p.APP_BOOTSTRAP_LISTENER,multi:!0,useFactory:()=>{const wt=(0,p.inject)(p.ApplicationRef),mt=(0,p.inject)(Tn);return()=>{wt.isStable.pipe((0,r.P)(pt=>pt)).toPromise().then(()=>{mt.isCacheActive=!1})}}}]}},5879:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{ANIMATION_MODULE_TYPE:()=>iy,APP_BOOTSTRAP_LISTENER:()=>Ah,APP_ID:()=>gm,APP_INITIALIZER:()=>C_,ApplicationInitStatus:()=>Tc,ApplicationModule:()=>fw,ApplicationRef:()=>Aa,Attribute:()=>Gh,COMPILER_OPTIONS:()=>D_,CSP_NONCE:()=>ry,CUSTOM_ELEMENTS_SCHEMA:()=>uf,ChangeDetectionStrategy:()=>wn,ChangeDetectorRef:()=>tv,Compiler:()=>AM,CompilerFactory:()=>kM,Component:()=>bM,ComponentFactory:()=>Ql,ComponentFactoryResolver:()=>tl,ComponentRef:()=>wm,ContentChild:()=>wv,ContentChildren:()=>Mv,DEFAULT_CURRENCY_CODE:()=>TM,DebugElement:()=>Cl,DebugEventListener:()=>JM,DebugNode:()=>Lh,DefaultIterableDiffer:()=>av,DestroyRef:()=>Wu,Directive:()=>y_,ENVIRONMENT_INITIALIZER:()=>Xa,ElementRef:()=>nl,EmbeddedViewRef:()=>XM,EnvironmentInjector:()=>Ps,ErrorHandler:()=>ua,EventEmitter:()=>Io,Host:()=>ef,HostBinding:()=>MM,HostListener:()=>wM,INJECTOR:()=>uu,Inject:()=>Jh,InjectFlags:()=>pe,Injectable:()=>ky,InjectionToken:()=>Yi,Injector:()=>as,Input:()=>CM,IterableDiffers:()=>Nh,KeyValueDiffers:()=>Uh,LOCALE_ID:()=>Sc,MissingTranslationStrategy:()=>M_,ModuleWithComponentFactories:()=>E_,NO_ERRORS_SCHEMA:()=>df,NgModule:()=>EM,NgModuleFactory:()=>ig,NgModuleRef:()=>Sa,NgProbeToken:()=>BM,NgZone:()=>Rr,Optional:()=>Tl,Output:()=>xM,PACKAGE_ROOT_URL:()=>ny,PLATFORM_ID:()=>yu,PLATFORM_INITIALIZER:()=>_m,Pipe:()=>yM,PlatformRef:()=>kh,Query:()=>Ba,QueryList:()=>Mc,Renderer2:()=>vy,RendererFactory2:()=>Dm,RendererStyleFlags2:()=>Pl,Sanitizer:()=>Tm,SecurityContext:()=>Rs,Self:()=>qh,SimpleChange:()=>ts,SkipSelf:()=>Sl,TRANSLATIONS:()=>SM,TRANSLATIONS_FORMAT:()=>IM,TemplateRef:()=>bl,Testability:()=>UM,TestabilityRegistry:()=>N_,TransferState:()=>Ja,Type:()=>Yh,VERSION:()=>Im,Version:()=>Sm,ViewChild:()=>Dv,ViewChildren:()=>Ev,ViewContainerRef:()=>Ec,ViewEncapsulation:()=>Tn,ViewRef:()=>iv,asNativeElements:()=>qM,assertInInjectionContext:()=>zm,assertPlatform:()=>W_,booleanAttribute:()=>ww,computed:()=>Qo,createComponent:()=>Pw,createEnvironmentInjector:()=>sg,createNgModule:()=>rg,createNgModuleRef:()=>Mx,createPlatform:()=>j_,createPlatformFactory:()=>z_,defineInjectable:()=>bt,destroyPlatform:()=>jM,effect:()=>dp,enableProdMode:()=>KM,forwardRef:()=>_,getDebugNode:()=>ka,getModuleFactory:()=>YM,getNgModuleById:()=>ZM,getPlatform:()=>Ic,importProvidersFrom:()=>um,inject:()=>it,isDevMode:()=>GM,isSignal:()=>_o,isStandalone:()=>Nn,makeEnvironmentProviders:()=>du,makeStateKey:()=>oy,mergeApplicationConfig:()=>Nw,numberAttribute:()=>Ew,platformCore:()=>hw,provideZoneChangeDetection:()=>q_,reflectComponentType:()=>Fw,resolveForwardRef:()=>M,runInInjectionContext:()=>Ey,setTestabilityGetter:()=>U_,signal:()=>Jo,untracked:()=>ps,\u0275ALLOW_MULTIPLE_PLATFORMS:()=>Sh,\u0275ComponentFactory:()=>Ql,\u0275Console:()=>x_,\u0275DEFAULT_LOCALE_ID:()=>Bs,\u0275ENABLED_SSR_FEATURES:()=>vm,\u0275INJECTOR_SCOPE:()=>pu,\u0275IS_HYDRATION_DOM_REUSE_ENABLED:()=>rl,\u0275InitialRenderPendingTasks:()=>w_,\u0275LContext:()=>bf,\u0275LifecycleHooksFeature:()=>yp,\u0275LocaleDataIndex:()=>Ta,\u0275NG_COMP_DEF:()=>Ci,\u0275NG_DIR_DEF:()=>di,\u0275NG_ELEMENT_ID:()=>mt,\u0275NG_INJ_DEF:()=>ee,\u0275NG_MOD_DEF:()=>Qi,\u0275NG_PIPE_DEF:()=>Li,\u0275NG_PROV_DEF:()=>Ce,\u0275NOT_FOUND_CHECK_ONLY_ELEMENT_INJECTOR:()=>Xl,\u0275NO_CHANGE:()=>fi,\u0275NgModuleFactory:()=>xc,\u0275NoopNgZone:()=>L_,\u0275ReflectionCapabilities:()=>Xh,\u0275Render3ComponentFactory:()=>pa,\u0275Render3ComponentRef:()=>bp,\u0275Render3NgModuleRef:()=>Cc,\u0275RuntimeError:()=>T,\u0275TESTABILITY:()=>P_,\u0275TESTABILITY_GETTER:()=>F_,\u0275ViewRef:()=>ma,\u0275XSS_SECURITY_URL:()=>A,\u0275_sanitizeHtml:()=>tm,\u0275_sanitizeUrl:()=>Hl,\u0275allowSanitizationBypassAndThrow:()=>sa,\u0275annotateForHydration:()=>gw,\u0275bypassSanitizationTrustHtml:()=>Lb,\u0275bypassSanitizationTrustResourceUrl:()=>Fb,\u0275bypassSanitizationTrustScript:()=>Ob,\u0275bypassSanitizationTrustStyle:()=>Rb,\u0275bypassSanitizationTrustUrl:()=>Pb,\u0275clearResolutionOfComponentResourcesQueue:()=>af,\u0275compileComponent:()=>l_,\u0275compileDirective:()=>wh,\u0275compileNgModule:()=>i_,\u0275compileNgModuleDefs:()=>r_,\u0275compileNgModuleFactory:()=>B_,\u0275compilePipe:()=>v_,\u0275convertToBitFlags:()=>Rt,\u0275createInjector:()=>Ru,\u0275defaultIterableDiffers:()=>uw,\u0275defaultKeyValueDiffers:()=>dw,\u0275detectChanges:()=>hp,\u0275devModeEqual:()=>Sp,\u0275findLocaleData:()=>Xd,\u0275flushModuleScopingQueueAsMuchAsPossible:()=>t_,\u0275formatRuntimeError:()=>O,\u0275getDebugNode:()=>ka,\u0275getDirectives:()=>hg,\u0275getHostElement:()=>ch,\u0275getInjectableDef:()=>nt,\u0275getLContext:()=>kr,\u0275getLocaleCurrencyCode:()=>TC,\u0275getLocalePluralCase:()=>S0,\u0275getSanitizationBypassType:()=>Yf,\u0275getUnknownElementStrictMode:()=>Wv,\u0275getUnknownPropertyStrictMode:()=>Kv,\u0275global:()=>ze,\u0275injectChangeDetectorRef:()=>nv,\u0275internalCreateApplication:()=>VM,\u0275isBoundToModule:()=>V_,\u0275isEnvironmentProviders:()=>w,\u0275isInjectable:()=>ot,\u0275isNgModule:()=>vh,\u0275isPromise:()=>fd,\u0275isSubscribable:()=>$p,\u0275noSideEffects:()=>tn,\u0275patchComponentDefWithScope:()=>xh,\u0275publishDefaultGlobalUtils:()=>RM,\u0275publishGlobalUtil:()=>ro,\u0275registerLocaleData:()=>DC,\u0275resetCompiledComponents:()=>aM,\u0275resetJitOptions:()=>iM,\u0275resolveComponentResources:()=>rf,\u0275setAllowDuplicateNgModuleIdsForTest:()=>Hv,\u0275setAlternateWeakRefImpl:()=>vo,\u0275setClassMetadata:()=>mg,\u0275setCurrentInjector:()=>Z,\u0275setDocument:()=>Db,\u0275setLocaleId:()=>Jd,\u0275setUnknownElementStrictMode:()=>zv,\u0275setUnknownPropertyStrictMode:()=>Gv,\u0275store:()=>Pp,\u0275stringify:()=>u,\u0275transitiveScopesFor:()=>$s,\u0275unregisterLocaleData:()=>SC,\u0275unwrapSafeValue:()=>Bo,\u0275withDomHydration:()=>Mw,\u0275\u0275CopyDefinitionFeature:()=>xp,\u0275\u0275FactoryTarget:()=>As,\u0275\u0275HostDirectivesFeature:()=>Mp,\u0275\u0275InheritDefinitionFeature:()=>Gu,\u0275\u0275InputTransformsFeature:()=>Tp,\u0275\u0275NgOnChangesFeature:()=>bo,\u0275\u0275ProvidersFeature:()=>ng,\u0275\u0275StandaloneFeature:()=>ag,\u0275\u0275advance:()=>jm,\u0275\u0275attribute:()=>Yu,\u0275\u0275attributeInterpolate1:()=>Zu,\u0275\u0275attributeInterpolate2:()=>Qu,\u0275\u0275attributeInterpolate3:()=>Xu,\u0275\u0275attributeInterpolate4:()=>Ju,\u0275\u0275attributeInterpolate5:()=>qu,\u0275\u0275attributeInterpolate6:()=>ed,\u0275\u0275attributeInterpolate7:()=>td,\u0275\u0275attributeInterpolate8:()=>nd,\u0275\u0275attributeInterpolateV:()=>id,\u0275\u0275classMap:()=>e0,\u0275\u0275classMapInterpolate1:()=>u0,\u0275\u0275classMapInterpolate2:()=>d0,\u0275\u0275classMapInterpolate3:()=>h0,\u0275\u0275classMapInterpolate4:()=>f0,\u0275\u0275classMapInterpolate5:()=>m0,\u0275\u0275classMapInterpolate6:()=>p0,\u0275\u0275classMapInterpolate7:()=>g0,\u0275\u0275classMapInterpolate8:()=>_0,\u0275\u0275classMapInterpolateV:()=>v0,\u0275\u0275classProp:()=>Id,\u0275\u0275contentQuery:()=>Yg,\u0275\u0275defineComponent:()=>Ft,\u0275\u0275defineDirective:()=>zt,\u0275\u0275defineInjectable:()=>St,\u0275\u0275defineInjector:()=>xt,\u0275\u0275defineNgModule:()=>ge,\u0275\u0275definePipe:()=>an,\u0275\u0275directiveInject:()=>ha,\u0275\u0275disableBindings:()=>rs,\u0275\u0275element:()=>dd,\u0275\u0275elementContainer:()=>hd,\u0275\u0275elementContainerEnd:()=>hc,\u0275\u0275elementContainerStart:()=>dc,\u0275\u0275elementEnd:()=>uc,\u0275\u0275elementStart:()=>cc,\u0275\u0275enableBindings:()=>Hs,\u0275\u0275getCurrentView:()=>Bp,\u0275\u0275getInheritedFactory:()=>zh,\u0275\u0275hostProperty:()=>Zd,\u0275\u0275i18n:()=>X0,\u0275\u0275i18nApply:()=>q0,\u0275\u0275i18nAttributes:()=>J0,\u0275\u0275i18nEnd:()=>nh,\u0275\u0275i18nExp:()=>ih,\u0275\u0275i18nPostprocess:()=>eg,\u0275\u0275i18nStart:()=>th,\u0275\u0275inject:()=>ce,\u0275\u0275injectAttribute:()=>Fc,\u0275\u0275invalidFactory:()=>Zm,\u0275\u0275invalidFactoryDep:()=>Ee,\u0275\u0275listener:()=>md,\u0275\u0275loadQuery:()=>Zg,\u0275\u0275namespaceHTML:()=>br,\u0275\u0275namespaceMathML:()=>Wi,\u0275\u0275namespaceSVG:()=>Gn,\u0275\u0275nextContext:()=>zp,\u0275\u0275ngDeclareClassMetadata:()=>Tw,\u0275\u0275ngDeclareComponent:()=>Sw,\u0275\u0275ngDeclareDirective:()=>Dw,\u0275\u0275ngDeclareFactory:()=>Iw,\u0275\u0275ngDeclareInjectable:()=>kw,\u0275\u0275ngDeclareInjector:()=>Lw,\u0275\u0275ngDeclareNgModule:()=>Rw,\u0275\u0275ngDeclarePipe:()=>Ow,\u0275\u0275pipe:()=>Ag,\u0275\u0275pipeBind1:()=>kg,\u0275\u0275pipeBind2:()=>Lg,\u0275\u0275pipeBind3:()=>Rg,\u0275\u0275pipeBind4:()=>Og,\u0275\u0275pipeBindV:()=>Pg,\u0275\u0275projection:()=>Gp,\u0275\u0275projectionDef:()=>Wp,\u0275\u0275property:()=>cd,\u0275\u0275propertyInterpolate:()=>gd,\u0275\u0275propertyInterpolate1:()=>fc,\u0275\u0275propertyInterpolate2:()=>_d,\u0275\u0275propertyInterpolate3:()=>vd,\u0275\u0275propertyInterpolate4:()=>bd,\u0275\u0275propertyInterpolate5:()=>yd,\u0275\u0275propertyInterpolate6:()=>Cd,\u0275\u0275propertyInterpolate7:()=>xd,\u0275\u0275propertyInterpolate8:()=>Md,\u0275\u0275propertyInterpolateV:()=>wd,\u0275\u0275pureFunction0:()=>pg,\u0275\u0275pureFunction1:()=>gg,\u0275\u0275pureFunction2:()=>_g,\u0275\u0275pureFunction3:()=>vg,\u0275\u0275pureFunction4:()=>bg,\u0275\u0275pureFunction5:()=>yg,\u0275\u0275pureFunction6:()=>Cg,\u0275\u0275pureFunction7:()=>xg,\u0275\u0275pureFunction8:()=>Mg,\u0275\u0275pureFunctionV:()=>wg,\u0275\u0275queryRefresh:()=>Gg,\u0275\u0275reference:()=>Fp,\u0275\u0275registerNgModuleType:()=>Vc,\u0275\u0275resetView:()=>vs,\u0275\u0275resolveBody:()=>Lu,\u0275\u0275resolveDocument:()=>Om,\u0275\u0275resolveWindow:()=>Rm,\u0275\u0275restoreView:()=>_s,\u0275\u0275sanitizeHtml:()=>nm,\u0275\u0275sanitizeResourceUrl:()=>cu,\u0275\u0275sanitizeScript:()=>rm,\u0275\u0275sanitizeStyle:()=>im,\u0275\u0275sanitizeUrl:()=>lu,\u0275\u0275sanitizeUrlOrResourceUrl:()=>am,\u0275\u0275setComponentScope:()=>Ae,\u0275\u0275setNgModuleScope:()=>Ge,\u0275\u0275styleMap:()=>fo,\u0275\u0275styleMapInterpolate1:()=>b0,\u0275\u0275styleMapInterpolate2:()=>y0,\u0275\u0275styleMapInterpolate3:()=>C0,\u0275\u0275styleMapInterpolate4:()=>x0,\u0275\u0275styleMapInterpolate5:()=>M0,\u0275\u0275styleMapInterpolate6:()=>w0,\u0275\u0275styleMapInterpolate7:()=>E0,\u0275\u0275styleMapInterpolate8:()=>D0,\u0275\u0275styleMapInterpolateV:()=>T0,\u0275\u0275styleProp:()=>Sd,\u0275\u0275stylePropInterpolate1:()=>$d,\u0275\u0275stylePropInterpolate2:()=>Vd,\u0275\u0275stylePropInterpolate3:()=>jd,\u0275\u0275stylePropInterpolate4:()=>Hd,\u0275\u0275stylePropInterpolate5:()=>zd,\u0275\u0275stylePropInterpolate6:()=>Wd,\u0275\u0275stylePropInterpolate7:()=>Gd,\u0275\u0275stylePropInterpolate8:()=>Kd,\u0275\u0275stylePropInterpolateV:()=>Yd,\u0275\u0275syntheticHostListener:()=>pd,\u0275\u0275syntheticHostProperty:()=>Qd,\u0275\u0275template:()=>Lp,\u0275\u0275templateRefExtractor:()=>qg,\u0275\u0275text:()=>l0,\u0275\u0275textInterpolate:()=>kd,\u0275\u0275textInterpolate1:()=>gc,\u0275\u0275textInterpolate2:()=>Ld,\u0275\u0275textInterpolate3:()=>Rd,\u0275\u0275textInterpolate4:()=>Od,\u0275\u0275textInterpolate5:()=>Pd,\u0275\u0275textInterpolate6:()=>Fd,\u0275\u0275textInterpolate7:()=>Nd,\u0275\u0275textInterpolate8:()=>Ud,\u0275\u0275textInterpolateV:()=>Bd,\u0275\u0275trustConstantHtml:()=>om,\u0275\u0275trustConstantResourceUrl:()=>sm,\u0275\u0275validateIframeAttribute:()=>zf,\u0275\u0275viewQuery:()=>Kg});var n=g(8645),p=g(7394),C=g(5619),b=g(5592),o=g(3019),v=g(2096),a=g(3020),c=g(4664),s=g(3997),l=g(1374);function d(e){for(let t in e)if(e[t]===d)return t;throw Error("Could not find renamed property on target object.")}function r(e,t){for(const i in t)t.hasOwnProperty(i)&&!e.hasOwnProperty(i)&&(e[i]=t[i])}function u(e){if("string"==typeof e)return e;if(Array.isArray(e))return"["+e.map(u).join(", ")+"]";if(null==e)return""+e;if(e.overriddenName)return`${e.overriddenName}`;if(e.name)return`${e.name}`;const t=e.toString();if(null==t)return""+t;const i=t.indexOf("\n");return-1===i?t:t.substring(0,i)}function h(e,t){return null==e||""===e?null===t?"":t:null==t||""===t?e:e+" "+t}const m=d({__forward_ref__:d});function _(e){return e.__forward_ref__=_,e.toString=function(){return u(this())},e}function M(e){return x(e)?e():e}function x(e){return"function"==typeof e&&e.hasOwnProperty(m)&&e.__forward_ref__===_}function w(e){return e&&!!e.\u0275providers}const A="https://g.co/ng/security#xss";class T extends Error{constructor(t,i){super(O(t,i)),this.code=t}}function O(e,t){return`NG0${Math.abs(e)}${t?": "+t:""}`}function E(e){return"string"==typeof e?e:null==e?"":String(e)}function D(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():E(e)}function S(e,t){throw new T(-201,!1)}function $e(e,t,i,f){throw new Error(`ASSERTION ERROR: ${e}`+(null==f?"":` [Expected=> ${i} ${f} ${t} <=Actual]`))}function St(e){return{token:e.token,providedIn:e.providedIn||null,factory:e.factory,value:void 0}}const bt=St;function xt(e){return{providers:e.providers||[],imports:e.imports||[]}}function nt(e){return vt(e,Ce)||vt(e,ae)}function ot(e){return null!==nt(e)}function vt(e,t){return e.hasOwnProperty(t)?e[t]:null}function J(e){return e&&(e.hasOwnProperty(ee)||e.hasOwnProperty(ie))?e[ee]:null}const Ce=d({\u0275prov:d}),ee=d({\u0275inj:d}),ae=d({ngInjectableDef:d}),ie=d({ngInjectorDef:d});var pe=function(e){return e[e.Default=0]="Default",e[e.Host=1]="Host",e[e.Self=2]="Self",e[e.SkipSelf=4]="SkipSelf",e[e.Optional=8]="Optional",e}(pe||{});let Te;function ct(){return Te}function Lt(e){const t=Te;return Te=e,t}function Dt(e,t,i){const f=nt(e);return f&&"root"==f.providedIn?void 0===f.value?f.value=f.factory():f.value:i&pe.Optional?null:void 0!==t?t:void S(u(e))}const ze=(()=>typeof globalThis<"u"&&globalThis||typeof global<"u"&&global||typeof window<"u"&&window||typeof self<"u"&&typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&self)(),Yt={},Ue="__NG_DI_FLAG__",We="ngTempTokenPath",we=/\n/gm,De="__source";let je;function Z(e){const t=je;return je=e,t}function re(e,t=pe.Default){if(void 0===je)throw new T(-203,!1);return null===je?Dt(e,void 0,t):je.get(e,t&pe.Optional?null:void 0,t)}function ce(e,t=pe.Default){return(ct()||re)(M(e),t)}function Ee(e){throw new T(202,!1)}function it(e,t=pe.Default){return ce(e,Rt(t))}function Rt(e){return typeof e>"u"||"number"==typeof e?e:0|(e.optional&&8)|(e.host&&1)|(e.self&&2)|(e.skipSelf&&4)}function Ye(e){const t=[];for(let i=0;it){B=I-1;break}}}for(;II?"":y[lt+1].toLowerCase();const jt=8&f?Pt:null;if(jt&&-1!==qt(jt,xe,0)||2&f&&xe!==Pt){if(en(f))return!1;B=!0}}}}else{if(!B&&!en(f)&&!en(oe))return!1;if(B&&en(oe))continue;B=!1,f=oe|1&f}}return en(f)||B}function en(e){return 0==(1&e)}function Dn(e,t,i,f){if(null===t)return-1;let y=0;if(f||!i){let I=!1;for(;y-1)for(i++;i0?'="'+K+'"':"")+"]"}else 8&f?y+="."+B:4&f&&(y+=" "+B);else""!==y&&!en(B)&&(t+=oi(I,y),y=""),f=B,I=I||!en(f);i++}return""!==y&&(t+=oi(I,y)),t}function Ft(e){return tn(()=>{const t=Un(e),i={...t,decls:e.decls,vars:e.vars,template:e.template,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,onPush:e.changeDetection===wn.OnPush,directiveDefs:null,pipeDefs:null,dependencies:t.standalone&&e.dependencies||null,getStandaloneInjector:null,signals:e.signals??!1,data:e.data||{},encapsulation:e.encapsulation||Tn.Emulated,styles:e.styles||Mn,_:null,schemas:e.schemas||null,tView:null,id:""};vi(i);const f=e.dependencies;return i.directiveDefs=$i(f,!1),i.pipeDefs=$i(f,!0),i.id=function fn(e){let t=0;const i=[e.selectors,e.ngContentSelectors,e.hostVars,e.hostAttrs,e.consts,e.vars,e.decls,e.encapsulation,e.standalone,e.signals,e.exportAs,JSON.stringify(e.inputs),JSON.stringify(e.outputs),Object.getOwnPropertyNames(e.type.prototype),!!e.contentQueries,!!e.viewQuery].join("|");for(const y of i)t=Math.imul(31,t)+y.charCodeAt(0)<<0;return t+=2147483648,"c"+t}(i),i})}function Ae(e,t,i){const f=e.\u0275cmp;f.directiveDefs=$i(t,!1),f.pipeDefs=$i(i,!0)}function W(e){return gn(e)||pn(e)}function be(e){return null!==e}function ge(e){return tn(()=>({type:e.type,bootstrap:e.bootstrap||Mn,declarations:e.declarations||Mn,imports:e.imports||Mn,exports:e.exports||Mn,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null}))}function Ge(e,t){return tn(()=>{const i=kn(e,!0);i.declarations=t.declarations||Mn,i.imports=t.imports||Mn,i.exports=t.exports||Mn})}function It(e,t){if(null==e)return Sn;const i={};for(const f in e)if(e.hasOwnProperty(f)){let y=e[f],I=y;Array.isArray(y)&&(I=y[1],y=y[0]),i[y]=f,t&&(t[y]=I)}return i}function zt(e){return tn(()=>{const t=Un(e);return vi(t),t})}function an(e){return{type:e.type,name:e.name,factory:null,pure:!1!==e.pure,standalone:!0===e.standalone,onDestroy:e.type.prototype.ngOnDestroy||null}}function gn(e){return e[Ci]||null}function pn(e){return e[di]||null}function Jn(e){return e[Li]||null}function Nn(e){const t=gn(e)||pn(e)||Jn(e);return null!==t&&t.standalone}function kn(e,t){const i=e[Qi]||null;if(!i&&!0===t)throw new Error(`Type ${u(e)} does not have '\u0275mod' property.`);return i}function Un(e){const t={};return{type:e.type,providersResolver:null,factory:null,hostBindings:e.hostBindings||null,hostVars:e.hostVars||0,hostAttrs:e.hostAttrs||null,contentQueries:e.contentQueries||null,declaredInputs:t,inputTransforms:null,inputConfig:e.inputs||Sn,exportAs:e.exportAs||null,standalone:!0===e.standalone,signals:!0===e.signals,selectors:e.selectors||Mn,viewQuery:e.viewQuery||null,features:e.features||null,setInput:null,findHostDirectiveDefs:null,hostDirectives:null,inputs:It(e.inputs,t),outputs:It(e.outputs)}}function vi(e){e.features?.forEach(t=>t(e))}function $i(e,t){if(!e)return null;const i=t?Jn:W;return()=>("function"==typeof e?e():e).map(f=>i(f)).filter(be)}const er=new Map,yn=0,rn=1,xn=2,ti=3,Ti=4,zi=5,xi=6,_r=7,gi=8,Ke=9,kt=10,U=11,fe=12,Pe=13,Je=14,Gt=15,Pn=16,Gi=17,Vi=18,rr=19,or=20,Zi=21,ur=22,Et=23,_t=24,ft=25,Ut=1,Wt=2,nn=7,_n=9,zn=10,Vn=11;function ci(e){return Array.isArray(e)&&"object"==typeof e[Ut]}function Mi(e){return Array.isArray(e)&&!0===e[Ut]}function ni(e){return 0!=(4&e.flags)}function Xn(e){return e.componentOffset>-1}function ai(e){return 1==(1&e.flags)}function Fi(e){return!!e.template}function Xi(e){return 0!=(512&e[xn])}function Jr(e){return 16==(16&e.type)}function sr(e,t){return e.hasOwnProperty(wt)?e[wt]:null}const Mr=Symbol("SIGNAL");function _o(e){return"function"==typeof e&&void 0!==e[Mr]}function Or(e,t,i={}){return t[Mr]=e,Object.assign(t,i)}function qr(e,t){return(null===e||"object"!=typeof e)&&Object.is(e,t)}let hs=ze.WeakRef??class ds{constructor(t){this.ref=t}deref(){return this.ref}};function vo(e){}let Zo=0,yr=null,Cr=!1;function Ji(e){const t=yr;return yr=e,t}class so{constructor(){this.id=Zo++,this.ref=function fs(e){return new hs(e)}(this),this.producers=new Map,this.consumers=new Map,this.trackingVersion=0,this.valueVersion=0}consumerPollProducersForChange(){for(const[t,i]of this.producers){const f=i.producerNode.deref();if(null!=f&&i.atTrackingVersion===this.trackingVersion){if(f.producerPollStatus(i.seenValueVersion))return!0}else this.producers.delete(t),f?.consumers.delete(this.id)}return!1}producerMayHaveChanged(){const t=Cr;Cr=!0;try{for(const[i,f]of this.consumers){const y=f.consumerNode.deref();null!=y&&y.trackingVersion===f.atTrackingVersion?y.onConsumerDependencyMayHaveChanged():(this.consumers.delete(i),y?.producers.delete(this.id))}}finally{Cr=t}}producerAccessed(){if(Cr)throw new Error("");if(null===yr)return;let t=yr.producers.get(this.id);void 0===t?(t={consumerNode:yr.ref,producerNode:this.ref,seenValueVersion:this.valueVersion,atTrackingVersion:yr.trackingVersion},yr.producers.set(this.id,t),this.consumers.set(yr.id,t)):(t.seenValueVersion=this.valueVersion,t.atTrackingVersion=yr.trackingVersion)}get hasProducers(){return this.producers.size>0}get producerUpdatesAllowed(){return!1!==yr?.consumerAllowSignalWrites}producerPollStatus(t){return this.valueVersion!==t||(this.onProducerUpdateValueVersion(),this.valueVersion!==t)}}function Qo(e,t){const i=new Gr(e,t?.equal??qr);return Or(i,i.signal.bind(i))}const ao=Symbol("UNSET"),zr=Symbol("COMPUTING"),Wr=Symbol("ERRORED");class Gr extends so{constructor(t,i){super(),this.computation=t,this.equal=i,this.value=ao,this.error=null,this.stale=!0,this.consumerAllowSignalWrites=!1}onConsumerDependencyMayHaveChanged(){this.stale||(this.stale=!0,this.producerMayHaveChanged())}onProducerUpdateValueVersion(){if(this.stale){if(this.value!==ao&&this.value!==zr&&!this.consumerPollProducersForChange())return void(this.stale=!1);this.recomputeValue()}}recomputeValue(){if(this.value===zr)throw new Error("Detected cycle in computations.");const t=this.value;this.value=zr,this.trackingVersion++;const i=Ji(this);let f;try{f=this.computation()}catch(y){f=Wr,this.error=y}finally{Ji(i)}this.stale=!1,t!==ao&&t!==Wr&&f!==Wr&&this.equal(t,f)?this.value=t:(this.value=f,this.valueVersion++)}signal(){if(this.onProducerUpdateValueVersion(),this.producerAccessed(),this.value===Wr)throw this.error;return this.value}}let Ao=function ms(){throw new Error};function ar(){Ao()}class La extends so{constructor(t,i){super(),this.value=t,this.equal=i,this.consumerAllowSignalWrites=!1}onConsumerDependencyMayHaveChanged(){}onProducerUpdateValueVersion(){}set(t){this.producerUpdatesAllowed||ar(),this.equal(this.value,t)||(this.value=t,this.valueVersion++,this.producerMayHaveChanged())}update(t){this.producerUpdatesAllowed||ar(),this.set(t(this.value))}mutate(t){this.producerUpdatesAllowed||ar(),t(this.value),this.valueVersion++,this.producerMayHaveChanged()}asReadonly(){return void 0===this.readonlySignal&&(this.readonlySignal=Or(this,()=>this.signal())),this.readonlySignal}signal(){return this.producerAccessed(),this.value}}function Jo(e,t){const i=new La(e,t?.equal??qr);return Or(i,i.signal.bind(i),{set:i.set.bind(i),update:i.update.bind(i),mutate:i.mutate.bind(i),asReadonly:i.asReadonly.bind(i)})}function ps(e){const t=Ji(null);try{return e()}finally{Ji(t)}}const qo=()=>{};class es extends so{constructor(t,i,f){super(),this.watch=t,this.schedule=i,this.dirty=!1,this.cleanupFn=qo,this.registerOnCleanup=y=>{this.cleanupFn=y},this.consumerAllowSignalWrites=f}notify(){this.dirty||this.schedule(this),this.dirty=!0}onConsumerDependencyMayHaveChanged(){this.notify()}onProducerUpdateValueVersion(){}run(){if(this.dirty=!1,0!==this.trackingVersion&&!this.consumerPollProducersForChange())return;const t=Ji(this);this.trackingVersion++;try{this.cleanupFn(),this.cleanupFn=qo,this.watch(this.registerOnCleanup)}finally{Ji(t)}}cleanup(){this.cleanupFn()}}class ts{constructor(t,i,f){this.previousValue=t,this.currentValue=i,this.firstChange=f}isFirstChange(){return this.firstChange}}function bo(){return Lo}function Lo(e){return e.type.prototype.ngOnChanges&&(e.setInput=Ro),ns}function ns(){const e=to(this),t=e?.current;if(t){const i=e.previous;if(i===Sn)e.previous=t;else for(let f in t)i[f]=t[f];e.current=null,this.ngOnChanges(t)}}function Ro(e,t,i,f){const y=this.declaredInputs[i],I=to(e)||function Fr(e,t){return e[Pr]=t}(e,{previous:Sn,current:null}),B=I.current||(I.current={}),K=I.previous,oe=K[y];B[y]=new ts(oe&&oe.currentValue,t,K===Sn),e[f]=t}bo.ngInherit=!0;const Pr="__ngSimpleChanges__";function to(e){return e[Pr]||null}let lo=null;const yo=e=>{lo=e},vr=function(e,t,i){lo?.(e,t,i)},Co="svg",Oo="math";function Oi(e){for(;Array.isArray(e);)e=e[yn];return e}function Ie(e,t){return Oi(t[e])}function le(e,t){return Oi(t[e.index])}function ht(e,t){return e.data[t]}function Ht(e,t){return e[t]}function Zt(e,t){const i=t[e];return ci(i)?i:i[yn]}function pi(e,t){return null==t?null:e[t]}function Rn(e){e[Gi]=0}function qi(e){1024&e[xn]||(e[xn]|=1024,ir(e,1))}function Si(e){1024&e[xn]&&(e[xn]&=-1025,ir(e,-1))}function ir(e,t){let i=e[ti];if(null===i)return;i[zi]+=t;let f=i;for(i=i[ti];null!==i&&(1===t&&1===f[zi]||-1===t&&0===f[zi]);)i[zi]+=t,f=i,i=i[ti]}function Ar(e,t){if(256==(256&e[xn]))throw new T(911,!1);null===e[Zi]&&(e[Zi]=[]),e[Zi].push(t)}const Kn={lFrame:te(null),bindingsEnabled:!0,skipHydrationRootTNode:null};function is(){return Kn.bindingsEnabled}function mr(){return null!==Kn.skipHydrationRootTNode}function Hs(){Kn.bindingsEnabled=!0}function rs(){Kn.bindingsEnabled=!1}function dn(){return Kn.lFrame.lView}function yi(){return Kn.lFrame.tView}function _s(e){return Kn.lFrame.contextLView=e,e[gi]}function vs(e){return Kn.lFrame.contextLView=null,e}function cr(){let e=bs();for(;null!==e&&64===e.type;)e=e.parent;return e}function bs(){return Kn.lFrame.currentTNode}function xo(){const e=Kn.lFrame,t=e.currentTNode;return e.isParent?t:t.parent}function Ur(e,t){const i=Kn.lFrame;i.currentTNode=e,i.isParent=t}function ys(){return Kn.lFrame.isParent}function Cs(){Kn.lFrame.isParent=!1}function dr(){const e=Kn.lFrame;let t=e.bindingRootIndex;return-1===t&&(t=e.bindingRootIndex=e.tView.bindingStartIndex),t}function Yr(){return Kn.lFrame.bindingIndex}function Br(e){return Kn.lFrame.bindingIndex=e}function Mo(){return Kn.lFrame.bindingIndex++}function Zr(e){const t=Kn.lFrame,i=t.bindingIndex;return t.bindingIndex=t.bindingIndex+e,i}function Ks(e){Kn.lFrame.inI18n=e}function Oa(e,t){const i=Kn.lFrame;i.bindingIndex=i.bindingRootIndex=e,Po(t)}function Po(e){Kn.lFrame.currentDirectiveIndex=e}function Fo(e){const t=Kn.lFrame.currentDirectiveIndex;return-1===t?null:e[t]}function Ys(){return Kn.lFrame.currentQueryIndex}function os(e){Kn.lFrame.currentQueryIndex=e}function Pa(e){const t=e[rn];return 2===t.type?t.declTNode:1===t.type?e[xi]:null}function wo(e,t,i){if(i&pe.SkipSelf){let y=t,I=e;for(;!(y=y.parent,null!==y||i&pe.Host||(y=Pa(I),null===y||(I=I[Je],10&y.type))););if(null===y)return!1;t=y,e=I}const f=Kn.lFrame=G();return f.currentTNode=t,f.lView=e,!0}function No(e){const t=G(),i=e[rn];Kn.lFrame=t,t.currentTNode=i.firstChild,t.lView=e,t.tView=i,t.contextLView=e,t.bindingIndex=i.bindingStartIndex,t.inI18n=!1}function G(){const e=Kn.lFrame,t=null===e?null:e.child;return null===t?te(e):t}function te(e){const t={currentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:-1,contextLView:null,elementDepthCount:0,currentNamespace:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:e,child:null,inI18n:!1};return null!==e&&(e.child=t),t}function V(){const e=Kn.lFrame;return Kn.lFrame=e.parent,e.currentTNode=null,e.lView=null,e}const de=V;function Le(){const e=V();e.isParent=!0,e.tView=null,e.selectedIndex=-1,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function Nt(){return Kn.lFrame.selectedIndex}function mn(e){Kn.lFrame.selectedIndex=e}function Ln(){const e=Kn.lFrame;return ht(e.tView,e.selectedIndex)}function Gn(){Kn.lFrame.currentNamespace=Co}function Wi(){Kn.lFrame.currentNamespace=Oo}function br(){!function Ms(){Kn.lFrame.currentNamespace=null}()}function Eo(){return Kn.lFrame.currentNamespace}let uo=!0;function ho(){return uo}function Er(e){uo=e}function ws(e,t){for(let i=t.directiveStart,f=t.directiveEnd;i=f)break}else t[oe]<0&&(e[Gi]+=65536),(K>13>16&&(3&e[xn])===t&&(e[xn]+=8192,Ml(K,I)):Ml(K,I)}const Re=-1;class H{constructor(t,i,f){this.factory=t,this.resolving=!1,this.canSeeViewProviders=i,this.injectImpl=f}}function Ui(e){return e!==Re}function Fn(e){return 32767&e}function qn(e,t){let i=function bn(e){return e>>16}(e),f=t;for(;i>0;)f=f[Je],i--;return f}let nr=!0;function wi(e){const t=nr;return nr=e,t}const Hi=255,Ei=5;let Bn=0;const _i={};function ei(e,t){const i=Ai(e,t);if(-1!==i)return i;const f=t[rn];f.firstCreatePass&&(e.injectorIndex=t.length,Ki(f.data,e),Ki(t,null),Ki(f.blueprint,null));const y=ui(e,t),I=e.injectorIndex;if(Ui(y)){const B=Fn(y),K=qn(y,t),oe=K[rn].data;for(let xe=0;xe<8;xe++)t[I+xe]=K[B+xe]|oe[B+xe]}return t[I+8]=y,I}function Ki(e,t){e.push(0,0,0,0,0,0,0,0,t)}function Ai(e,t){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null===t[e.injectorIndex+8]?-1:e.injectorIndex}function ui(e,t){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;let i=0,f=null,y=t;for(;null!==y;){if(f=Wh(y),null===f)return Re;if(i++,y=y[Je],-1!==f.injectorIndex)return f.injectorIndex|i<<16}return Re}function Di(e,t,i){!function hr(e,t,i){let f;"string"==typeof i?f=i.charCodeAt(0)||0:i.hasOwnProperty(mt)&&(f=i[mt]),null==f&&(f=i[mt]=Bn++);const y=f&Hi;t.data[e+(y>>Ei)]|=1<=0?t&Hi:Cv:t}(i);if("function"==typeof I){if(!wo(t,e,f))return f&pe.Host?Na(y,0,f):Ts(t,i,f,y);try{const B=I(f);if(null!=B||f&pe.Optional)return B;S()}finally{de()}}else if("number"==typeof I){let B=null,K=Ai(e,t),oe=Re,xe=f&pe.Host?t[Gt][xi]:null;for((-1===K||f&pe.SkipSelf)&&(oe=-1===K?ui(e,t):t[K+8],oe!==Re&&Hh(f,!1)?(B=t[rn],K=Fn(oe),t=qn(oe,t)):K=-1);-1!==K;){const Ve=t[rn];if(jh(I,K,Ve.data)){const lt=bv(K,t,i,B,f,xe);if(lt!==_i)return lt}oe=t[K+8],oe!==Re&&Hh(f,t[rn].data[K+8]===xe)&&jh(I,K,t)?(B=Ve,K=Fn(oe),t=qn(oe,t)):K=-1}}return y}function bv(e,t,i,f,y,I){const B=t[rn],K=B.data[e+8],Ve=wl(K,B,i,null==f?Xn(K)&&nr:f!=B&&0!=(3&K.type),y&pe.Host&&I===K);return null!==Ve?Is(t,B,Ve,K):_i}function wl(e,t,i,f,y){const I=e.providerIndexes,B=t.data,K=1048575&I,oe=e.directiveStart,Ve=I>>20,Pt=y?K+Ve:e.directiveEnd;for(let jt=f?K:K+Ve;jt=oe&&sn.type===i)return jt}if(y){const jt=B[oe];if(jt&&Fi(jt)&&jt.type===i)return oe}return null}function Is(e,t,i,f){let y=e[i];const I=t.data;if(function Ze(e){return e instanceof H}(y)){const B=y;B.resolving&&function R(e,t){const i=t?`. Dependency path: ${t.join(" > ")} > ${e}`:"";throw new T(-200,`Circular dependency in DI detected for ${e}${i}`)}(D(I[i]));const K=wi(B.canSeeViewProviders);B.resolving=!0;const oe=B.injectImpl?Lt(B.injectImpl):null;wo(e,f,pe.Default);try{y=e[i]=B.factory(void 0,I,e,f),t.firstCreatePass&&i>=f.directiveStart&&function xl(e,t,i){const{ngOnChanges:f,ngOnInit:y,ngDoCheck:I}=t.type.prototype;if(f){const B=Lo(t);(i.preOrderHooks??=[]).push(e,B),(i.preOrderCheckHooks??=[]).push(e,B)}y&&(i.preOrderHooks??=[]).push(0-e,y),I&&((i.preOrderHooks??=[]).push(e,I),(i.preOrderCheckHooks??=[]).push(e,I))}(i,I[i],t)}finally{null!==oe&&Lt(oe),wi(K),B.resolving=!1,de()}}return y}function jh(e,t,i){return!!(i[t+(e>>Ei)]&1<{const t=e.prototype.constructor,i=t[wt]||Pc(t),f=Object.prototype;let y=Object.getPrototypeOf(e.prototype).constructor;for(;y&&y!==f;){const I=y[wt]||Pc(y);if(I&&I!==i)return I;y=Object.getPrototypeOf(y)}return I=>new I})}function Pc(e){return x(e)?()=>{const t=Pc(M(e));return t&&t()}:sr(e)}function Wh(e){const t=e[rn],i=t.type;return 2===i?t.declTNode:1===i?e[xi]:null}function Fc(e){return function Uo(e,t){if("class"===t)return e.classes;if("style"===t)return e.styles;const i=e.attrs;if(i){const f=i.length;let y=0;for(;y{const I=Nc(t);function B(...K){if(this instanceof B)return I.call(this,...K),this;const oe=new B(...K);return function(Ve){return y&&y(Ve,...K),(Ve.hasOwnProperty(Xs)?Ve[Xs]:Object.defineProperty(Ve,Xs,{value:[]})[Xs]).push(oe),f&&f(Ve),Ve}}return i&&(B.prototype=Object.create(i.prototype)),B.prototype.ngMetadataName=e,B.annotationCls=B,B})}function Nc(e){return function(...i){if(e){const f=e(...i);for(const y in f)this[y]=f[y]}}}function ea(e,t,i){return tn(()=>{const f=Nc(t);function y(...I){if(this instanceof y)return f.apply(this,I),this;const B=new y(...I);return K.annotation=B,K;function K(oe,xe,Ve){const lt=oe.hasOwnProperty(Js)?oe[Js]:Object.defineProperty(oe,Js,{value:[]})[Js];for(;lt.length<=Ve;)lt.push(null);return(lt[Ve]=lt[Ve]||[]).push(B),oe}}return i&&(y.prototype=Object.create(i.prototype)),y.prototype.ngMetadataName=e,y.annotationCls=y,y})}function ss(e,t,i,f){return tn(()=>{const y=Nc(t);function I(...B){if(this instanceof I)return y.apply(this,B),this;const K=new I(...B);return function oe(xe,Ve){if(void 0===xe)throw new Error("Standard Angular field decorators are not supported in JIT mode.");const lt=xe.constructor,Pt=lt.hasOwnProperty(qs)?lt[qs]:Object.defineProperty(lt,qs,{value:{}})[qs];Pt[Ve]=Pt.hasOwnProperty(Ve)&&Pt[Ve]||[],Pt[Ve].unshift(K),f&&f(xe,Ve,...B)}}return i&&(I.prototype=Object.create(i.prototype)),I.prototype.ngMetadataName=e,I.annotationCls=I,I})}const Gh=ea("Attribute",e=>({attributeName:e,__NG_ELEMENT_ID__:()=>Fc(e)}));class Ba{}const Mv=ss("ContentChildren",(e,t={})=>({selector:e,first:!1,isViewQuery:!1,descendants:!1,emitDistinctChangesOnly:!0,...t}),Ba),wv=ss("ContentChild",(e,t={})=>({selector:e,first:!0,isViewQuery:!1,descendants:!0,...t}),Ba),Ev=ss("ViewChildren",(e,t={})=>({selector:e,first:!1,isViewQuery:!0,descendants:!0,emitDistinctChangesOnly:!0,...t}),Ba),Dv=ss("ViewChild",(e,t)=>({selector:e,first:!0,isViewQuery:!0,descendants:!0,...t}),Ba);var As=function(e){return e[e.Directive=0]="Directive",e[e.Component=1]="Component",e[e.Injectable=2]="Injectable",e[e.Pipe=3]="Pipe",e[e.NgModule=4]="NgModule",e}(As||{});function pr(e){const t=ze.ng;if(t&&t.\u0275compilerFacade)return t.\u0275compilerFacade;throw new Error("JIT compiler unavailable")}const Yh=Function;function $a(e){return"function"==typeof e}function no(e){return e.flat(Number.POSITIVE_INFINITY)}function Va(e,t){e.forEach(i=>Array.isArray(i)?Va(i,t):t(i))}function Zh(e,t,i){t>=e.length?e.push(i):e.splice(t,0,i)}function El(e,t){return t>=e.length-1?e.pop():e.splice(t,1)[0]}function ja(e,t){const i=[];for(let f=0;f=0?e[1|f]=i:(f=~f,function kv(e,t,i,f){let y=e.length;if(y==t)e.push(i,f);else if(1===y)e.push(f,e[0]),e[0]=i;else{for(y--,e.push(e[y-1],e[y]);y>t;)e[y]=e[y-2],y--;e[t]=i,e[t+1]=f}}(e,f,t,i)),f}function Uc(e,t){const i=ta(e,t);if(i>=0)return e[1|i]}function ta(e,t){return function Qh(e,t,i){let f=0,y=e.length>>i;for(;y!==f;){const I=f+(y-f>>1),B=e[I<t?y=I:f=I+1}return~(y<new t(...i)}_zipTypesAndAnnotations(t,i){let f;f=ja(typeof t>"u"?i.length:t.length);for(let y=0;y"u"?[]:t[y]&&t[y]!=Object?[t[y]]:[],i&&null!=i[y]&&(f[y]=f[y].concat(i[y]));return f}_ownParameters(t,i){if(function Fv(e){return Lv.test(e)||Pv.test(e)||Rv.test(e)&&!Ov.test(e)}(t.toString()))return null;if(t.parameters&&t.parameters!==i.parameters)return t.parameters;const y=t.ctorParameters;if(y&&y!==i.ctorParameters){const K="function"==typeof y?y():y,oe=K.map(Ve=>Ve&&Ve.type),xe=K.map(Ve=>Ve&&Bc(Ve.decorators));return this._zipTypesAndAnnotations(oe,xe)}const I=t.hasOwnProperty(Js)&&t[Js],B=this._reflect&&this._reflect.getOwnMetadata&&this._reflect.getOwnMetadata("design:paramtypes",t);return B||I?this._zipTypesAndAnnotations(B,I):ja(t.length)}parameters(t){if(!$a(t))return[];const i=Dl(t);let f=this._ownParameters(t,i);return!f&&i!==Object&&(f=this.parameters(i)),f||[]}_ownAnnotations(t,i){if(t.annotations&&t.annotations!==i.annotations){let f=t.annotations;return"function"==typeof f&&f.annotations&&(f=f.annotations),f}return t.decorators&&t.decorators!==i.decorators?Bc(t.decorators):t.hasOwnProperty(Xs)?t[Xs]:null}annotations(t){if(!$a(t))return[];const i=Dl(t),f=this._ownAnnotations(t,i)||[];return(i!==Object?this.annotations(i):[]).concat(f)}_ownPropMetadata(t,i){if(t.propMetadata&&t.propMetadata!==i.propMetadata){let f=t.propMetadata;return"function"==typeof f&&f.propMetadata&&(f=f.propMetadata),f}if(t.propDecorators&&t.propDecorators!==i.propDecorators){const f=t.propDecorators,y={};return Object.keys(f).forEach(I=>{y[I]=Bc(f[I])}),y}return t.hasOwnProperty(qs)?t[qs]:null}propMetadata(t){if(!$a(t))return{};const i=Dl(t),f={};if(i!==Object){const I=this.propMetadata(i);Object.keys(I).forEach(B=>{f[B]=I[B]})}const y=this._ownPropMetadata(t,i);return y&&Object.keys(y).forEach(I=>{const B=[];f.hasOwnProperty(I)&&B.push(...f[I]),B.push(...y[I]),f[I]=B}),f}ownPropMetadata(t){return $a(t)&&this._ownPropMetadata(t,Dl(t))||{}}hasLifecycleHook(t,i){return t instanceof Yh&&i in t.prototype}}function Bc(e){return e?e.map(t=>new(0,t.type.annotationCls)(...t.args?t.args:[])):[]}function Dl(e){const t=e.prototype?Object.getPrototypeOf(e.prototype):null;return(t?t.constructor:null)||Object}const Jh=qe(ea("Inject",e=>({token:e})),-1),Tl=qe(ea("Optional"),8),qh=qe(ea("Self"),2),Sl=qe(ea("SkipSelf"),4),ef=qe(ea("Host"),1);let tf=null;function $c(){return tf=tf||new Xh}function Il(e){return nf($c().parameters(e))}function nf(e){return e.map(t=>function Nv(e){const t={token:null,attribute:null,host:!1,optional:!1,self:!1,skipSelf:!1};if(Array.isArray(e)&&e.length>0)for(let i=0;i{const B=[];y.templateUrl&&B.push(f(y.templateUrl).then(lt=>{y.template=lt}));const K=y.styleUrls,oe=y.styles||(y.styles=[]),xe=y.styles.length;K&&K.forEach((lt,Pt)=>{oe.push(""),B.push(f(lt).then(jt=>{oe[xe+Pt]=jt,K.splice(K.indexOf(lt),1),0==K.length&&(y.styleUrls=void 0)}))});const Ve=Promise.all(B).then(()=>function Vv(e){Ha.delete(e)}(I));t.push(Ve)}),af(),Promise.all(t).then(()=>{})}let na=new Map;const Ha=new Set;function sf(e){return!!(e.templateUrl&&!e.hasOwnProperty("template")||e.styleUrls&&e.styleUrls.length)}function af(){const e=na;return na=new Map,e}function $v(e){return"string"==typeof e?e:e.text()}const Al=new Map;let lf=!0;function Vc(e,t){(function jv(e,t,i){if(t&&t!==i&&lf)throw new Error(`Duplicate module registered for ${e} - ${u(t)} vs ${u(t.name)}`)})(t,Al.get(t)||null,e),Al.set(t,e)}function cf(e){return Al.get(e)}function Hv(e){lf=!e}const uf={name:"custom-elements"},df={name:"no-errors-schema"};let jc=!1;function zv(e){jc=e}function Wv(){return jc}let Hc=!1;function Gv(e){Hc=e}function Kv(){return Hc}const ia="ngSkipHydration";function pf(e){const t=ia.toLowerCase(),i=e.mergedAttrs;if(null===i)return!1;for(let f=0;f|^->||--!>|)/,Xv="\u200b$1\u200b";const zc=new Map;let Jv=0;function vf(e){return zc.get(e)||null}class bf{get lView(){return vf(this.lViewId)}constructor(t,i,f){this.lViewId=t,this.nodeIndex=i,this.native=f}}function kr(e){let t=za(e);if(t){if(ci(t)){const i=t;let f,y,I;if(xf(e)){if(f=wf(i,e),-1==f)throw new Error("The provided component was not found in the application");y=e}else if(function nb(e){return e&&e.constructor&&e.constructor.\u0275dir}(e)){if(f=function rb(e,t){let i=e[rn].firstChild;for(;i;){const y=i.directiveEnd;for(let I=i.directiveStart;I=0){const K=Oi(I[B]),oe=Wc(I,B,K);Dr(K,oe),t=oe;break}}}}return t||null}function Wc(e,t,i){return new bf(e[rr],t,i)}function yf(e){let i,t=za(e);if(ci(t)){const f=t,y=wf(f,e);i=Zt(y,f);const I=Wc(f,y,i[yn]);I.component=e,Dr(e,I),Dr(I.native,I)}else i=Zt(t.nodeIndex,t.lView);return i}const Gc="__ngContext__";function Dr(e,t){ci(t)?(e[Gc]=t[rr],function eb(e){zc.set(e[rr],e)}(t)):e[Gc]=t}function za(e){const t=e[Gc];return"number"==typeof t?vf(t):t||null}function Cf(e){const t=za(e);return t?ci(t)?t:t.lView:null}function xf(e){return e&&e.constructor&&e.constructor.\u0275cmp}function Mf(e,t){const i=e[rn];for(let f=ft;ft.replace(Qv,Xv))}(t))}function Nl(e,t,i){return e.createElement(t,i)}function Af(e,t){const i=e[_n],f=i.indexOf(t);Si(t),i.splice(f,1)}function Qc(e,t){if(e.length<=Vn)return;const i=Vn+t,f=e[i];if(f){const y=f[Pn];null!==y&&y!==e&&Af(y,f),t>0&&(e[i-1][Ti]=f[Ti]);const I=El(e,Vn+t);!function ub(e,t){Ka(e,t,t[U],2,null,null),t[yn]=null,t[xi]=null}(f[rn],f);const B=I[Vi];null!==B&&B.detachView(I[rn]),f[ti]=null,f[Ti]=null,f[xn]&=-129}return f}function kf(e,t){if(!(256&t[xn])){const i=t[U];t[Et]?.destroy(),t[_t]?.destroy(),i.destroyNode&&Ka(e,t,i,3,null,null),function fb(e){let t=e[fe];if(!t)return Xc(e[rn],e);for(;t;){let i=null;if(ci(t))i=t[fe];else{const f=t[Vn];f&&(i=f)}if(!i){for(;t&&!t[Ti]&&t!==e;)ci(t)&&Xc(t[rn],t),t=t[ti];null===t&&(t=e),ci(t)&&Xc(t[rn],t),i=t&&t[Ti]}t=i}}(t)}}function Xc(e,t){if(!(256&t[xn])){t[xn]&=-129,t[xn]|=256,function _b(e,t){let i;if(null!=e&&null!=(i=e.destroyHooks))for(let f=0;f=0?f[B]():f[-B].unsubscribe(),I+=2}else i[I].call(f[i[I+1]]);null!==f&&(t[_r]=null);const y=t[Zi];if(null!==y){t[Zi]=null;for(let I=0;I-1){const{encapsulation:I}=e.data[f.directiveStart+y];if(I===Tn.None||I===Tn.Emulated)return null}return le(f,i)}}function ks(e,t,i,f,y){e.insertBefore(t,i,f,y)}function Rf(e,t,i){e.appendChild(t,i)}function Of(e,t,i,f,y){null!==f?ks(e,t,i,f,y):Rf(e,t,i)}function Ul(e,t){return e.parentNode(t)}function Pf(e,t,i){return Nf(e,t,i)}function Ff(e,t,i){return 40&e.type?le(e,i):null}let qc,Vl,iu,jl,Nf=Ff;function Uf(e,t){Nf=e,qc=t}function Bl(e,t,i,f){const y=Jc(e,f,t),I=t[U],K=Pf(f.parent||t[xi],f,t);if(null!=y)if(Array.isArray(i))for(let oe=0;oee,createScript:e=>e,createScriptURL:e=>e})}catch{}return Vl}function oa(e){return nu()?.createHTML(e)||e}function zf(e,t,i){const f=dn(),y=Ln(),I=le(y,f);if(2===y.type&&"iframe"===t.toLowerCase()){const B=I;throw B.src="",B.srcdoc=oa(""),$l(f[U],B),new T(-910,!1)}return e}function Db(e){iu=e}function Ya(){if(void 0!==iu)return iu;if(typeof document<"u")return document;throw new T(210,!1)}function ru(){if(void 0===jl&&(jl=null,ze.trustedTypes))try{jl=ze.trustedTypes.createPolicy("angular#unsafe-bypass",{createHTML:e=>e,createScript:e=>e,createScriptURL:e=>e})}catch{}return jl}function Wf(e){return ru()?.createHTML(e)||e}function Gf(e){return ru()?.createScript(e)||e}function Kf(e){return ru()?.createScriptURL(e)||e}class Ls{constructor(t){this.changingThisBreaksApplicationSecurity=t}toString(){return`SafeValue must use [property]=binding: ${this.changingThisBreaksApplicationSecurity} (see ${A})`}}class Tb extends Ls{getTypeName(){return"HTML"}}class Sb extends Ls{getTypeName(){return"Style"}}class Ib extends Ls{getTypeName(){return"Script"}}class Ab extends Ls{getTypeName(){return"URL"}}class kb extends Ls{getTypeName(){return"ResourceURL"}}function Bo(e){return e instanceof Ls?e.changingThisBreaksApplicationSecurity:e}function sa(e,t){const i=Yf(e);if(null!=i&&i!==t){if("ResourceURL"===i&&"URL"===t)return!0;throw new Error(`Required a safe ${t}, got a ${i} (see ${A})`)}return i===t}function Yf(e){return e instanceof Ls&&e.getTypeName()||null}function Lb(e){return new Tb(e)}function Rb(e){return new Sb(e)}function Ob(e){return new Ib(e)}function Pb(e){return new Ab(e)}function Fb(e){return new kb(e)}function Zf(e){const t=new Ub(e);return function Bb(){try{return!!(new window.DOMParser).parseFromString(oa(""),"text/html")}catch{return!1}}()?new Nb(t):t}class Nb{constructor(t){this.inertDocumentHelper=t}getInertBodyElement(t){t=""+t;try{const i=(new window.DOMParser).parseFromString(oa(t),"text/html").body;return null===i?this.inertDocumentHelper.getInertBodyElement(t):(i.removeChild(i.firstChild),i)}catch{return null}}}class Ub{constructor(t){this.defaultDoc=t,this.inertDocument=this.defaultDoc.implementation.createHTMLDocument("sanitization-inert")}getInertBodyElement(t){const i=this.inertDocument.createElement("template");return i.innerHTML=oa(t),i}}const $b=/^(?!javascript:)(?:[a-z0-9+.-]+:|[^&:\/?#]*(?:[\/?#]|$))/i;function Hl(e){return(e=String(e)).match($b)?e:"unsafe:"+e}function $o(e){const t={};for(const i of e.split(","))t[i]=!0;return t}function Za(...e){const t={};for(const i of e)for(const f in i)i.hasOwnProperty(f)&&(t[f]=!0);return t}const Qf=$o("area,br,col,hr,img,wbr"),Xf=$o("colgroup,dd,dt,li,p,tbody,td,tfoot,th,thead,tr"),Jf=$o("rp,rt"),ou=Za(Qf,Za(Xf,$o("address,article,aside,blockquote,caption,center,del,details,dialog,dir,div,dl,figure,figcaption,footer,h1,h2,h3,h4,h5,h6,header,hgroup,hr,ins,main,map,menu,nav,ol,pre,section,summary,table,ul")),Za(Jf,$o("a,abbr,acronym,audio,b,bdi,bdo,big,br,cite,code,del,dfn,em,font,i,img,ins,kbd,label,map,mark,picture,q,ruby,rp,rt,s,samp,small,source,span,strike,strong,sub,sup,time,track,tt,u,var,video")),Za(Jf,Xf)),su=$o("background,cite,href,itemtype,longdesc,poster,src,xlink:href"),qf=Za(su,$o("abbr,accesskey,align,alt,autoplay,axis,bgcolor,border,cellpadding,cellspacing,class,clear,color,cols,colspan,compact,controls,coords,datetime,default,dir,download,face,headers,height,hidden,hreflang,hspace,ismap,itemscope,itemprop,kind,label,lang,language,loop,media,muted,nohref,nowrap,open,preload,rel,rev,role,rows,rowspan,rules,scope,scrolling,shape,size,sizes,span,srclang,srcset,start,summary,tabindex,target,title,translate,type,usemap,valign,value,vspace,width"),$o("aria-activedescendant,aria-atomic,aria-autocomplete,aria-busy,aria-checked,aria-colcount,aria-colindex,aria-colspan,aria-controls,aria-current,aria-describedby,aria-details,aria-disabled,aria-dropeffect,aria-errormessage,aria-expanded,aria-flowto,aria-grabbed,aria-haspopup,aria-hidden,aria-invalid,aria-keyshortcuts,aria-label,aria-labelledby,aria-level,aria-live,aria-modal,aria-multiline,aria-multiselectable,aria-orientation,aria-owns,aria-placeholder,aria-posinset,aria-pressed,aria-readonly,aria-relevant,aria-required,aria-roledescription,aria-rowcount,aria-rowindex,aria-rowspan,aria-selected,aria-setsize,aria-sort,aria-valuemax,aria-valuemin,aria-valuenow,aria-valuetext")),Vb=$o("script,style,template");class jb{constructor(){this.sanitizedSomething=!1,this.buf=[]}sanitizeChildren(t){let i=t.firstChild,f=!0;for(;i;)if(i.nodeType===Node.ELEMENT_NODE?f=this.startElement(i):i.nodeType===Node.TEXT_NODE?this.chars(i.nodeValue):this.sanitizedSomething=!0,f&&i.firstChild)i=i.firstChild;else for(;i;){i.nodeType===Node.ELEMENT_NODE&&this.endElement(i);let y=this.checkClobberedElement(i,i.nextSibling);if(y){i=y;break}i=this.checkClobberedElement(i,i.parentNode)}return this.buf.join("")}startElement(t){const i=t.nodeName.toLowerCase();if(!ou.hasOwnProperty(i))return this.sanitizedSomething=!0,!Vb.hasOwnProperty(i);this.buf.push("<"),this.buf.push(i);const f=t.attributes;for(let y=0;y"),!0}endElement(t){const i=t.nodeName.toLowerCase();ou.hasOwnProperty(i)&&!Qf.hasOwnProperty(i)&&(this.buf.push(""))}chars(t){this.buf.push(em(t))}checkClobberedElement(t,i){if(i&&(t.compareDocumentPosition(i)&Node.DOCUMENT_POSITION_CONTAINED_BY)===Node.DOCUMENT_POSITION_CONTAINED_BY)throw new Error(`Failed to sanitize html because the element is clobbered: ${t.outerHTML}`);return i}}const Hb=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,zb=/([^\#-~ |!])/g;function em(e){return e.replace(/&/g,"&").replace(Hb,function(t){return"&#"+(1024*(t.charCodeAt(0)-55296)+(t.charCodeAt(1)-56320)+65536)+";"}).replace(zb,function(t){return"&#"+t.charCodeAt(0)+";"}).replace(//g,">")}let zl;function tm(e,t){let i=null;try{zl=zl||Zf(e);let f=t?String(t):"";i=zl.getInertBodyElement(f);let y=5,I=f;do{if(0===y)throw new Error("Failed to sanitize html because the input is unstable");y--,f=I,I=i.innerHTML,i=zl.getInertBodyElement(f)}while(f!==I);return oa((new jb).sanitizeChildren(au(i)||i))}finally{if(i){const f=au(i)||i;for(;f.firstChild;)f.removeChild(f.firstChild)}}}function au(e){return"content"in e&&function Wb(e){return e.nodeType===Node.ELEMENT_NODE&&"TEMPLATE"===e.nodeName}(e)?e.content:null}var Rs=function(e){return e[e.NONE=0]="NONE",e[e.HTML=1]="HTML",e[e.STYLE=2]="STYLE",e[e.SCRIPT=3]="SCRIPT",e[e.URL=4]="URL",e[e.RESOURCE_URL=5]="RESOURCE_URL",e}(Rs||{});function nm(e){const t=Qa();return t?Wf(t.sanitize(Rs.HTML,e)||""):sa(e,"HTML")?Wf(Bo(e)):tm(Ya(),E(e))}function im(e){const t=Qa();return t?t.sanitize(Rs.STYLE,e)||"":sa(e,"Style")?Bo(e):E(e)}function lu(e){const t=Qa();return t?t.sanitize(Rs.URL,e)||"":sa(e,"URL")?Bo(e):Hl(E(e))}function cu(e){const t=Qa();if(t)return Kf(t.sanitize(Rs.RESOURCE_URL,e)||"");if(sa(e,"ResourceURL"))return Kf(Bo(e));throw new T(904,!1)}function rm(e){const t=Qa();if(t)return Gf(t.sanitize(Rs.SCRIPT,e)||"");if(sa(e,"Script"))return Gf(Bo(e));throw new T(905,!1)}function om(e){return oa(e[0])}function sm(e){return function Eb(e){return nu()?.createScriptURL(e)||e}(e[0])}function am(e,t,i){return function Gb(e,t){return"src"===t&&("embed"===e||"frame"===e||"iframe"===e||"media"===e||"script"===e)||"href"===t&&("base"===e||"link"===e)?cu:lu}(t,i)(e)}function Qa(){const e=dn();return e&&e[kt].sanitizer}class Yi{constructor(t,i){this._desc=t,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof i?this.__NG_ELEMENT_ID__=i:void 0!==i&&(this.\u0275prov=St({token:this,providedIn:i.providedIn||"root",factory:i.factory}))}get multi(){return this}toString(){return`InjectionToken ${this._desc}`}}const Xa=new Yi("ENVIRONMENT_INITIALIZER"),uu=new Yi("INJECTOR",-1),lm=new Yi("INJECTOR_DEF_TYPES");class cm{get(t,i=Yt){if(i===Yt){const f=new Error(`NullInjectorError: No provider for ${u(t)}!`);throw f.name="NullInjectorError",f}return i}}function du(e){return{\u0275providers:e}}function um(...e){return{\u0275providers:dm(0,e),\u0275fromNgModule:!0}}function dm(e,...t){const i=[],f=new Set;let y;return Va(t,I=>{const B=I;hu(B,i,[],f)&&(y||=[],y.push(B))}),void 0!==y&&hm(y,i),i}function hm(e,t){for(let i=0;i{t.push(I)})}}function hu(e,t,i,f){if(!(e=M(e)))return!1;let y=null,I=J(e);const B=!I&&gn(e);if(I||B){if(B&&!B.standalone)return!1;y=e}else{const oe=e.ngModule;if(I=J(oe),!I)return!1;y=oe}const K=f.has(y);if(B){if(K)return!1;if(f.add(y),B.dependencies){const oe="function"==typeof B.dependencies?B.dependencies():B.dependencies;for(const xe of oe)hu(xe,t,i,f)}}else{if(!I)return!1;{if(null!=I.imports&&!K){let xe;f.add(y);try{Va(I.imports,Ve=>{hu(Ve,t,i,f)&&(xe||=[],xe.push(Ve))})}finally{}void 0!==xe&&hm(xe,t)}if(!K){const xe=sr(y)||(()=>new y);t.push({provide:y,useFactory:xe,deps:Mn},{provide:lm,useValue:y,multi:!0},{provide:Xa,useValue:()=>ce(y),multi:!0})}const oe=I.providers;null==oe||K||fu(oe,Ve=>{t.push(Ve)})}}return y!==e&&void 0!==e.providers}function fu(e,t){for(let i of e)w(i)&&(i=i.\u0275providers),Array.isArray(i)?fu(i,t):t(i)}const Kb=d({provide:String,useValue:d});function mu(e){return null!==e&&"object"==typeof e&&Kb in e}function Os(e){return"function"==typeof e}const pu=new Yi("Set Injector scope."),Wl={},Zb={};let gu;function Gl(){return void 0===gu&&(gu=new cm),gu}class Ps{}class _u extends Ps{get destroyed(){return this._destroyed}constructor(t,i,f,y){super(),this.parent=i,this.source=f,this.scopes=y,this.records=new Map,this._ngOnDestroyHooks=new Set,this._onDestroyHooks=[],this._destroyed=!1,bu(t,B=>this.processProvider(B)),this.records.set(uu,aa(void 0,this)),y.has("environment")&&this.records.set(Ps,aa(void 0,this));const I=this.records.get(pu);null!=I&&"string"==typeof I.value&&this.scopes.add(I.value),this.injectorDefTypes=new Set(this.get(lm.multi,Mn,pe.Self))}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{for(const i of this._ngOnDestroyHooks)i.ngOnDestroy();const t=this._onDestroyHooks;this._onDestroyHooks=[];for(const i of t)i()}finally{this.records.clear(),this._ngOnDestroyHooks.clear(),this.injectorDefTypes.clear()}}onDestroy(t){return this.assertNotDestroyed(),this._onDestroyHooks.push(t),()=>this.removeOnDestroy(t)}runInContext(t){this.assertNotDestroyed();const i=Z(this),f=Lt(void 0);try{return t()}finally{Z(i),Lt(f)}}get(t,i=Yt,f=pe.Default){if(this.assertNotDestroyed(),t.hasOwnProperty(pt))return t[pt](this);f=Rt(f);const y=Z(this),I=Lt(void 0);try{if(!(f&pe.SkipSelf)){let K=this.records.get(t);if(void 0===K){const oe=function ey(e){return"function"==typeof e||"object"==typeof e&&e instanceof Yi}(t)&&nt(t);K=oe&&this.injectableDefInScope(oe)?aa(vu(t),Wl):null,this.records.set(t,K)}if(null!=K)return this.hydrate(t,K)}return(f&pe.Self?Gl():this.parent).get(t,i=f&pe.Optional&&i===Yt?null:i)}catch(B){if("NullInjectorError"===B.name){if((B[We]=B[We]||[]).unshift(u(t)),y)throw B;return function dt(e,t,i,f){const y=e[We];throw t[De]&&y.unshift(t[De]),e.message=function At(e,t,i,f=null){e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.slice(2):e;let y=u(t);if(Array.isArray(t))y=t.map(u).join(" -> ");else if("object"==typeof t){let I=[];for(let B in t)if(t.hasOwnProperty(B)){let K=t[B];I.push(B+":"+("string"==typeof K?JSON.stringify(K):u(K)))}y=`{${I.join(", ")}}`}return`${i}${f?"("+f+")":""}[${y}]: ${e.replace(we,"\n ")}`}("\n"+e.message,y,i,f),e.ngTokenPath=y,e[We]=null,e}(B,t,"R3InjectorError",this.source)}throw B}finally{Lt(I),Z(y)}}resolveInjectorInitializers(){const t=Z(this),i=Lt(void 0);try{const f=this.get(Xa.multi,Mn,pe.Self);for(const y of f)y()}finally{Z(t),Lt(i)}}toString(){const t=[],i=this.records;for(const f of i.keys())t.push(u(f));return`R3Injector[${t.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new T(205,!1)}processProvider(t){let i=Os(t=M(t))?t:M(t&&t.provide);const f=function Xb(e){return mu(e)?aa(void 0,e.useValue):aa(pm(e),Wl)}(t);if(Os(t)||!0!==t.multi)this.records.get(i);else{let y=this.records.get(i);y||(y=aa(void 0,Wl,!0),y.factory=()=>Ye(y.multi),this.records.set(i,y)),i=t,y.multi.push(t)}this.records.set(i,f)}hydrate(t,i){return i.value===Wl&&(i.value=Zb,i.value=i.factory()),"object"==typeof i.value&&i.value&&function qb(e){return null!==e&&"object"==typeof e&&"function"==typeof e.ngOnDestroy}(i.value)&&this._ngOnDestroyHooks.add(i.value),i.value}injectableDefInScope(t){if(!t.providedIn)return!1;const i=M(t.providedIn);return"string"==typeof i?"any"===i||this.scopes.has(i):this.injectorDefTypes.has(i)}removeOnDestroy(t){const i=this._onDestroyHooks.indexOf(t);-1!==i&&this._onDestroyHooks.splice(i,1)}}function vu(e){const t=nt(e),i=null!==t?t.factory:sr(e);if(null!==i)return i;if(e instanceof Yi)throw new T(204,!1);if(e instanceof Function)return function Qb(e){const t=e.length;if(t>0)throw ja(t,"?"),new T(204,!1);const i=function rt(e){return e&&(e[Ce]||e[ae])||null}(e);return null!==i?()=>i.factory(e):()=>new e}(e);throw new T(204,!1)}function pm(e,t,i){let f;if(Os(e)){const y=M(e);return sr(y)||vu(y)}if(mu(e))f=()=>M(e.useValue);else if(function mm(e){return!(!e||!e.useFactory)}(e))f=()=>e.useFactory(...Ye(e.deps||[]));else if(function fm(e){return!(!e||!e.useExisting)}(e))f=()=>ce(M(e.useExisting));else{const y=M(e&&(e.useClass||e.provide));if(!function Jb(e){return!!e.deps}(e))return sr(y)||vu(y);f=()=>new y(...Ye(e.deps))}return f}function aa(e,t,i=!1){return{factory:e,value:t,multi:i?[]:void 0}}function bu(e,t){for(const i of e)Array.isArray(i)?bu(i,t):i&&w(i)?bu(i.\u0275providers,t):t(i)}const gm=new Yi("AppId",{providedIn:"root",factory:()=>ty}),ty="ng",_m=new Yi("Platform Initializer"),yu=new Yi("Platform ID",{providedIn:"platform",factory:()=>"unknown"}),ny=new Yi("Application Packages Root URL"),iy=new Yi("AnimationModuleType"),ry=new Yi("CSP nonce",{providedIn:"root",factory:()=>Ya().body?.querySelector("[ngCspNonce]")?.getAttribute("ngCspNonce")||null}),vm=new Yi("",{providedIn:"root",factory:()=>new Set});function oy(e){return e}function sy(){const e=new Ja;return"browser"===it(yu)&&(e.store=function ay(e,t){const i=e.getElementById(t+"-state");if(i?.textContent)try{return JSON.parse(i.textContent)}catch(f){console.warn("Exception while restoring TransferState for app "+t,f)}return{}}(Ya(),it(gm))),e}let Ja=(()=>{class e{constructor(){this.store={},this.onSerializeCallbacks={}}get(i,f){return void 0!==this.store[i]?this.store[i]:f}set(i,f){this.store[i]=f}remove(i){delete this.store[i]}hasKey(i){return this.store.hasOwnProperty(i)}get isEmpty(){return 0===Object.keys(this.store).length}onSerialize(i,f){this.onSerializeCallbacks[i]=f}toJson(){for(const i in this.onSerializeCallbacks)if(this.onSerializeCallbacks.hasOwnProperty(i))try{this.store[i]=this.onSerializeCallbacks[i]()}catch(f){console.warn("Exception in onSerialize callback: ",f)}return JSON.stringify(this.store).replace(/null;function ly(e,t){const i=e.getAttribute(Tu);if(null==i)return null;let f={};if(""!==i){const I=t.get(Ja,null,{optional:!0});null!==I&&(f=I.get(Du,[])[Number(i)])}const y={data:f,firstChild:e.firstChild??null};return e.removeAttribute(Tu),y}function Cm(e,t){return ym(e,t)}function xm(e){let t=e._lView;return 2===t[rn].type?null:(Xi(t)&&(t=t[ft]),Mi(t)&&(t=t[yn]),t)}function Su(e,t,i){e.segmentHeads??={},e.segmentHeads[t]=i}function Iu(e,t){return e.segmentHeads?.[t]??null}function Mm(e,t){return e.data[qa]?.[t]??null}function Au(e,t){const i=Mm(e,t)??[];let f=0;for(let y of i)f+=y[el]*(y[Kl]??1);return f}function Zl(e,t){if(typeof e.disconnectedNodes>"u"){const i=e.data[Yl];e.disconnectedNodes=i?new Set(i):null}return!!e.disconnectedNodes?.has(t)}class wm{}class Ql{}class py{resolveComponentFactory(t){throw function my(e){const t=Error(`No component factory found for ${u(e)}.`);return t.ngComponent=e,t}(t)}}let tl=(()=>{class e{}return e.NULL=new py,e})();function gy(){return ca(cr(),dn())}function ca(e,t){return new nl(le(e,t))}let nl=(()=>{class e{constructor(i){this.nativeElement=i}}return e.__NG_ELEMENT_ID__=gy,e})();function _y(e){return e instanceof nl?e.nativeElement:e}class Dm{}let vy=(()=>{class e{constructor(){this.destroyNode=null}}return e.__NG_ELEMENT_ID__=()=>function by(){const e=dn(),i=Zt(cr().index,e);return(ci(i)?i:e)[U]}(),e})(),Tm=(()=>{class e{}return e.\u0275prov=St({token:e,providedIn:"root",factory:()=>null}),e})();class Sm{constructor(t){this.full=t,this.major=t.split(".")[0],this.minor=t.split(".")[1],this.patch=t.split(".").slice(2).join(".")}}const Im=new Sm("16.1.7"),Xl={};function il(e){for(;e;){e[xn]|=64;const t=Wa(e);if(Xi(e)&&!t)return e;e=t}return null}function ku(e){return e.ngOriginalError}class ua{constructor(){this._console=console}handleError(t){const i=this._findOriginalError(t);this._console.error("ERROR",t),i&&this._console.error("ORIGINAL ERROR",i)}_findOriginalError(t){let i=t&&ku(t);for(;i&&ku(i);)i=ku(i);return i||null}}const rl=new Yi(""),Lm=new Yi("",{providedIn:"root",factory:()=>!1});function Rm(e){return e.ownerDocument.defaultView}function Om(e){return e.ownerDocument}function Lu(e){return e.ownerDocument.body}function Vo(e){return e instanceof Function?e():e}class Um extends so{constructor(){super(...arguments),this.consumerAllowSignalWrites=!1,this._lView=null}set lView(t){this._lView=t}onConsumerDependencyMayHaveChanged(){il(this._lView)}onProducerUpdateValueVersion(){}get hasReadASignal(){return this.hasProducers}runInContext(t,i,f){const y=Ji(this);this.trackingVersion++;try{t(i,f)}finally{Ji(y)}}destroy(){this.trackingVersion++}}let Jl=null;function Bm(){return Jl??=new Um,Jl}function $m(e,t){return e[t]??Bm()}function Vm(e,t){const i=Bm();i.hasReadASignal&&(e[t]=Jl,i.lView=e,Jl=new Um)}const fi={};function jm(e){Hm(yi(),dn(),Nt()+e,!1)}function Hm(e,t,i,f){if(!f)if(3==(3&t[xn])){const I=e.preOrderCheckHooks;null!==I&&Es(t,I,i)}else{const I=e.preOrderHooks;null!==I&&Ds(t,I,0,i)}mn(i)}function Ey(e,t){e instanceof _u&&e.assertNotDestroyed();const i=Z(e),f=Lt(void 0);try{return t()}finally{Z(i),Lt(f)}}function zm(e){if(!ct()&&!function ke(){return je}())throw new T(-203,!1)}const Wm={\u0275\u0275defineInjectable:St,\u0275\u0275defineInjector:xt,\u0275\u0275inject:ce,\u0275\u0275invalidFactoryDep:Ee,resolveForwardRef:M};const Ty=d({provide:String,useValue:d});function Gm(e){return void 0!==e.useClass}function Km(e){return void 0!==e.useFactory}const ky=Ua("Injectable",void 0,void 0,void 0,(e,t)=>function Dy(e,t){let i=null,f=null;e.hasOwnProperty(Ce)||Object.defineProperty(e,Ce,{get:()=>(null===i&&(i=pr().compileInjectable(Wm,`ng:///${e.name}/\u0275prov.js`,function Ay(e,t){const i=t||{providedIn:null},f={name:e.name,type:e,typeArgumentCount:0,providedIn:i.providedIn};return(Gm(i)||Km(i))&&void 0!==i.deps&&(f.deps=nf(i.deps)),Gm(i)?f.useClass=i.useClass:function Sy(e){return Ty in e}(i)?f.useValue=i.useValue:Km(i)?f.useFactory=i.useFactory:function Iy(e){return void 0!==e.useExisting}(i)&&(f.useExisting=i.useExisting),f}(e,t))),i)}),e.hasOwnProperty(wt)||Object.defineProperty(e,wt,{get:()=>{if(null===f){const y=pr();f=y.compileFactory(Wm,`ng:///${e.name}/\u0275fac.js`,{name:e.name,type:e,typeArgumentCount:0,deps:Il(e),target:y.FactoryTarget.Injectable})}return f},configurable:!0})}(e,t));function Ru(e,t=null,i=null,f){const y=Ym(e,t,i,f);return y.resolveInjectorInitializers(),y}function Ym(e,t=null,i=null,f,y=new Set){const I=[i||Mn,um(e)];return f=f||("object"==typeof e?void 0:u(e)),new _u(I,t||Gl(),f||null,y)}let as=(()=>{class e{static create(i,f){if(Array.isArray(i))return Ru({name:""},f,i,"");{const y=i.name??"";return Ru({name:y},i.parent,i.providers,y)}}}return e.THROW_IF_NOT_FOUND=Yt,e.NULL=new cm,e.\u0275prov=St({token:e,providedIn:"any",factory:()=>ce(uu)}),e.__NG_ELEMENT_ID__=-1,e})();function ha(e,t=pe.Default){const i=dn();return null===i?ce(e,t):Ss(cr(),i,M(e),t)}function Zm(){throw new Error("invalid")}function ql(e,t,i,f,y,I,B,K,oe,xe,Ve){const lt=t.blueprint.slice();return lt[yn]=y,lt[xn]=140|f,(null!==xe||e&&2048&e[xn])&&(lt[xn]|=2048),Rn(lt),lt[ti]=lt[Je]=e,lt[gi]=i,lt[kt]=B||e&&e[kt],lt[U]=K||e&&e[U],lt[Ke]=oe||e&&e[Ke]||null,lt[xi]=I,lt[rr]=function qv(){return Jv++}(),lt[ur]=Ve,lt[or]=xe,lt[Gt]=2==t.type?e[Gt]:lt,lt}function fa(e,t,i,f,y){let I=e.data[t];if(null===I)I=Ou(e,t,i,f,y),function Gs(){return Kn.lFrame.inI18n}()&&(I.flags|=32);else if(64&I.type){I.type=i,I.value=f,I.attrs=y;const B=xo();I.injectorIndex=null===B?-1:B.injectorIndex}return Ur(I,!0),I}function Ou(e,t,i,f,y){const I=bs(),B=ys(),oe=e.data[t]=function By(e,t,i,f,y,I){let B=t?t.injectorIndex:-1,K=0;return mr()&&(K|=128),{type:i,index:f,insertBeforeIndex:null,injectorIndex:B,directiveStart:-1,directiveEnd:-1,directiveStylingLast:-1,componentOffset:-1,propertyBindings:null,flags:K,providerIndexes:0,value:y,attrs:I,mergedAttrs:null,localNames:null,initialInputs:void 0,inputs:null,outputs:null,tView:null,next:null,prev:null,projectionNext:null,child:null,parent:t,projection:null,styles:null,stylesWithoutHost:null,residualStyles:void 0,classes:null,classesWithoutHost:null,residualClasses:void 0,classBindings:0,styleBindings:0}}(0,B?I:I&&I.parent,i,t,f,y);return null===e.firstChild&&(e.firstChild=oe),null!==I&&(B?null==I.child&&null!==oe.parent&&(I.child=oe):null===I.next&&(I.next=oe,oe.prev=I)),oe}function ol(e,t,i,f){if(0===i)return-1;const y=t.length;for(let I=0;Ift&&Hm(e,t,ft,!1),vr(K?2:0,y),K)I.runInContext(i,f,y);else{const xe=Ji(null);try{i(f,y)}finally{Ji(xe)}}}finally{K&&null===t[Et]&&Vm(t,Et),mn(B),vr(K?3:1,y)}}function Pu(e,t,i){if(ni(t)){const f=Ji(null);try{const I=t.directiveEnd;for(let B=t.directiveStart;Bnull;function Fy(e){gf(e)?$f(e):function dy(e){const t=Ya(),i=t.createNodeIterator(e,NodeFilter.SHOW_COMMENT,{acceptNode(I){const B=function uy(e){return e.textContent?.replace(/\s/gm,"")}(I);return"ngetn"===B||"ngtns"===B?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_REJECT}});let f;const y=[];for(;f=i.nextNode();)y.push(f);for(const I of y)"ngetn"===I.textContent?I.replaceWith(t.createTextNode("")):I.remove()}(e)}function qm(e,t,i,f){for(let y in e)if(e.hasOwnProperty(y)){i=null===i?{}:i;const I=e[y];null===f?ep(i,t,y,I):f.hasOwnProperty(y)&&ep(i,t,f[y],I)}return i}function ep(e,t,i,f){e.hasOwnProperty(i)?e[i].push(t,f):e[i]=[t,f]}function Xr(e,t,i,f,y,I,B,K){const oe=le(t,i);let Ve,xe=t.inputs;!K&&null!=xe&&(Ve=xe[f])?(Hu(e,i,Ve,f,y),Xn(t)&&function jy(e,t){const i=Zt(t,e);16&i[xn]||(i[xn]|=64)}(i,t.index)):3&t.type&&(f=function Vy(e){return"class"===e?"className":"for"===e?"htmlFor":"formaction"===e?"formAction":"innerHtml"===e?"innerHTML":"readonly"===e?"readOnly":"tabindex"===e?"tabIndex":e}(f),y=null!=B?B(y,t.value||"",f):y,I.setProperty(oe,f,y))}function Bu(e,t,i,f){if(is()){const y=null===f?null:{"":-1},I=function Yy(e,t){const i=e.directiveRegistry;let f=null,y=null;if(i)for(let I=0;I0;){const i=e[--t];if("number"==typeof i&&i<0)return i}return 0})(B)!=K&&B.push(K),B.push(i,f,I)}}(e,t,f,ol(e,i,y.hostVars,fi),y)}function Do(e,t,i,f,y,I){const B=le(e,t);Vu(t[U],B,I,e.value,i,f,y)}function Vu(e,t,i,f,y,I,B){if(null==I)e.removeAttribute(t,y,i);else{const K=null==B?E(I):B(I,f||"",y);e.setAttribute(t,y,K,i)}}function e1(e,t,i,f,y,I){const B=I[t];if(null!==B)for(let K=0;K{class e{}return e.__NG_ELEMENT_ID__=a1,e.__NG_ENV_ID__=t=>t,e})();class s1 extends Wu{constructor(t){super(),this._lView=t}onDestroy(t){return Ar(this._lView,t),()=>function wr(e,t){if(null===e[Zi])return;const i=e[Zi].indexOf(t);-1!==i&&e[Zi].splice(i,1)}(this._lView,t)}}function a1(){return new s1(dn())}let up=(()=>{class e{constructor(){this.all=new Set,this.queue=new Map}create(i,f,y){const I=typeof Zone>"u"?null:Zone.current,B=new es(i,xe=>{this.all.has(xe)&&this.queue.set(xe,I)},y);let K;this.all.add(B),B.notify();const oe=()=>{B.cleanup(),K?.(),this.all.delete(B),this.queue.delete(B)};return K=f?.onDestroy(oe),{destroy:oe}}flush(){if(0!==this.queue.size)for(const[i,f]of this.queue)this.queue.delete(i),f?f.run(()=>i.run()):i.run()}get isQueueEmpty(){return 0===this.queue.size}}return e.\u0275prov=St({token:e,providedIn:"root",factory:()=>new e}),e})();function dp(e,t){!t?.injector&&zm();const i=t?.injector??it(as),f=i.get(up),y=!0!==t?.manualCleanup?i.get(Wu):null;return f.create(e,y,!!t?.allowSignalWrites)}function tc(e,t,i){let f=i?e.styles:null,y=i?e.classes:null,I=0;if(null!==t)for(let B=0;B0){mp(e,1);const y=e[rn].components;null!==y&&gp(e,y,1)}}function gp(e,t,i){for(let f=0;f-1&&(Qc(t,f),El(i,f))}this._attachedToViewContainer=!1}kf(this._lView[rn],this._lView)}onDestroy(t){Ar(this._lView,t)}markForCheck(){il(this._cdRefInjectingView||this._lView)}detach(){this._lView[xn]&=-129}reattach(){this._lView[xn]|=128}detectChanges(){nc(this._lView[rn],this._lView,this.context)}checkNoChanges(){}attachToViewContainerRef(){if(this._appRef)throw new T(902,!1);this._attachedToViewContainer=!0}detachFromAppRef(){this._appRef=null,function hb(e,t){Ka(e,t,t[U],2,null,null)}(this._lView[rn],this._lView)}attachToAppRef(t){if(this._attachedToViewContainer)throw new T(902,!1);this._appRef=t}}class u1 extends ma{constructor(t){super(t),this._view=t}detectChanges(){const t=this._view;nc(t[rn],t,t[gi],!1)}checkNoChanges(){}get context(){return null}}class _p extends tl{constructor(t){super(),this.ngModule=t}resolveComponentFactory(t){const i=gn(t);return new pa(i,this.ngModule)}}function vp(e){const t=[];for(let i in e)e.hasOwnProperty(i)&&t.push({propName:e[i],templateName:i});return t}class h1{constructor(t,i){this.injector=t,this.parentInjector=i}get(t,i,f){f=Rt(f);const y=this.injector.get(t,Xl,f);return y!==Xl||i===Xl?y:this.parentInjector.get(t,i,f)}}class pa extends Ql{get inputs(){const t=this.componentDef,i=t.inputTransforms,f=vp(t.inputs);if(null!==i)for(const y of f)i.hasOwnProperty(y.propName)&&(y.transform=i[y.propName]);return f}get outputs(){return vp(this.componentDef.outputs)}constructor(t,i){super(),this.componentDef=t,this.ngModule=i,this.componentType=t.type,this.selector=function Pi(e){return e.map(li).join(",")}(t.selectors),this.ngContentSelectors=t.ngContentSelectors?t.ngContentSelectors:[],this.isBoundToModule=!!i}create(t,i,f,y){let I=(y=y||this.ngModule)instanceof Ps?y:y?.injector;I&&null!==this.componentDef.getStandaloneInjector&&(I=this.componentDef.getStandaloneInjector(I)||I);const B=I?new h1(t,I):t,K=B.get(Dm,null);if(null===K)throw new T(407,!1);const Ve={rendererFactory:K,sanitizer:B.get(Tm,null),effectManager:B.get(up,null)},lt=K.createRenderer(null,this.componentDef),Pt=this.componentDef.selectors[0][0]||"div",jt=f?function Oy(e,t,i,f){const I=f.get(Lm,!1)||i===Tn.ShadowDom,B=e.selectRootElement(t,I);return function Py(e){Jm(e)}(B),B}(lt,f,this.componentDef.encapsulation,B):Nl(lt,Pt,function d1(e){const t=e.toLowerCase();return"svg"===t?Co:"math"===t?Oo:null}(Pt)),On=this.componentDef.signals?4608:this.componentDef.onPush?576:528,Wn=Uu(0,null,null,1,0,null,null,null,null,null,null),cn=ql(null,Wn,null,On,null,null,Ve,lt,B,null,null);let hi,ki;No(cn);try{const Bi=this.componentDef;let Sr,Lc=null;Bi.findHostDirectiveDefs?(Sr=[],Lc=new Map,Bi.findHostDirectiveDefs(Bi,Sr,Lc),Sr.push(Bi)):Sr=[Bi];const Uw=function f1(e,t){const i=e[rn],f=ft;return e[f]=t,fa(i,f,2,"#host",null)}(cn,jt),Bw=function m1(e,t,i,f,y,I,B){const K=y[rn];!function p1(e,t,i,f){for(const y of e)t.mergedAttrs=$n(t.mergedAttrs,y.hostAttrs);null!==t.mergedAttrs&&(tc(t,t.mergedAttrs,!0),null!==i&&Hf(f,i,t))}(f,e,t,B);let oe=null;null!==t&&(oe=Cm(t,y[Ke]));const xe=I.rendererFactory.createRenderer(t,i);let Ve=16;i.signals?Ve=4096:i.onPush&&(Ve=64);const lt=ql(y,Xm(i),null,Ve,y[e.index],e,I,xe,null,null,oe);return K.firstCreatePass&&$u(K,e,f.length-1),ec(y,lt),y[e.index]=lt}(Uw,jt,Bi,Sr,cn,Ve,lt);ki=ht(Wn,ft),jt&&function _1(e,t,i,f){if(f)on(e,i,["ng-version",Im.full]);else{const{attrs:y,classes:I}=function Ct(e){const t=[],i=[];let f=1,y=2;for(;f0&&jf(e,i,I.join(" "))}}(lt,Bi,jt,f),void 0!==i&&function v1(e,t,i){const f=e.projection=[];for(let y=0;y=0;f--){const y=e[f];y.hostVars=t+=y.hostVars,y.hostAttrs=$n(y.hostAttrs,i=$n(i,y.hostAttrs))}}(f)}function ic(e){return e===Sn?{}:e===Mn?[]:e}function y1(e,t){const i=e.viewQuery;e.viewQuery=i?(f,y)=>{t(f,y),i(f,y)}:t}function C1(e,t){const i=e.contentQueries;e.contentQueries=i?(f,y,I)=>{t(f,y,I),i(f,y,I)}:t}function x1(e,t){const i=e.hostBindings;e.hostBindings=i?(f,y)=>{t(f,y),i(f,y)}:t}const M1=["providersResolver"],w1=["template","decls","consts","vars","onPush","ngContentSelectors","styles","encapsulation","schemas"];function xp(e){let i,t=Cp(e.type);i=Fi(e)?t.\u0275cmp:t.\u0275dir;const f=e;for(const y of M1)f[y]=i[y];if(Fi(i))for(const y of w1)f[y]=i[y]}function Mp(e){return t=>{t.findHostDirectiveDefs=wp,t.hostDirectives=(Array.isArray(e)?e:e()).map(i=>"function"==typeof i?{directive:M(i),inputs:Sn,outputs:Sn}:{directive:M(i.directive),inputs:Ep(i.inputs),outputs:Ep(i.outputs)})}}function wp(e,t,i){if(null!==e.hostDirectives)for(const f of e.hostDirectives){const y=pn(f.directive);E1(y.declaredInputs,f.inputs),wp(y,t,i),i.set(y,f),t.push(y)}}function Ep(e){if(void 0===e||0===e.length)return Sn;const t={};for(let i=0;i${t}`;case 8:return"\x3c!-- ng-container --\x3e";case 4:return"\x3c!-- container --\x3e";default:return`#node(${function S1(e){switch(e){case 4:return"view container";case 2:return"element";case 8:return"ng-container";case 32:return"icu";case 64:return"i18n";case 16:return"projection";case 1:return"text";default:return""}}(e.type)})`}}function ll(e,t="\u2026"){const i=e;switch(i.nodeType){case Node.ELEMENT_NODE:const f=i.tagName.toLowerCase(),y=function O1(e){const t=[];for(let i=0;i${t}`;case Node.TEXT_NODE:const I=i.textContent?ul(i.textContent):"";return"#text"+(I?`(${I})`:"");case Node.COMMENT_NODE:return`\x3c!-- ${ul(i.textContent??"")} --\x3e`;default:return`#node(${i.nodeType})`}}function ul(e,t=50){return e?(e=function P1(e){return e.replace(/\s+/gm,"")}(e)).length>t?`${e.substring(0,t-1)}\u2026`:e:""}const F1=new RegExp(`^(\\d+)*(${xu}|${Cu})*(.*)`);function ad(e){return e.index-ft}function ac(e,t,i,f){let y=null;const I=ad(f),B=e.data[Eu];if(B?.[I])y=function V1(e,t){const[i,...f]=function U1(e){const t=e.match(F1),[i,f,y,I]=t,B=f?parseInt(f,10):y,K=[];for(const[oe,xe,Ve]of I.matchAll(/(f|n)(\d*)/g)){const lt=parseInt(Ve,10)||1;K.push(xe,lt)}return[B,...K]}(e);let y;return y=i===Cu?t[Gt][yn]:i===xu?Lu(t[Gt][yn]):Oi(t[Number(i)+ft]),function $1(e,t){let i=e;for(let f=0;f0&&i[y-1]===f?i[y]=(i[y]||1)+1:i.push(f,"")}return i.join("")}(i,f)}function H1(e,t){const i=e.parent;let f,y,I;null!==i&&3&i.type?(f=i.index,y=Oi(t[f]),I=E(f-ft)):(f=I=Cu,y=t[Gt][yn]);let B=Oi(t[e.index]);if(12&e.type){const oe=Ga(t,e);oe&&(B=oe)}let K=kp(y,B,I);if(null===K&&y!==B&&(K=kp(y.ownerDocument.body,B,xu),null===K))throw function A1(e,t){const f=`${function sd(e,t,i){const f=" ";let y="";t.prev?(y+=" \u2026\n",y+=f+od(t.prev)+"\n"):t.type&&12&t.type&&(y+=" \u2026\n"),i?(y+=f+od(t)+"\n",y+=f+`\x3c!-- container --\x3e ${rd}\n`):y+=f+od(t)+` ${rd}\n`,y+=" \u2026\n";const I=t.type?Jc(e[rn],t,e):null;return I&&(y=ll(I,"\n"+y)),y}(e,t,!1)}\n\n`,y=function cl(e){return`To fix this problem:\n * check ${e?`the "${e}"`:"corresponding"} component for hydration-related issues\n * check to see if your template has valid HTML structure\n * or skip hydration by adding the \`ngSkipHydration\` attribute to its host node in a template\n\n`}();throw new T(-502,"During serialization, Angular was unable to find an element in the DOM:\n\n"+f+y)}(t,e);return K}function Lp(e,t,i,f,y,I,B,K){const oe=dn(),xe=yi(),Ve=e+ft,lt=xe.firstCreatePass?function z1(e,t,i,f,y,I,B,K,oe){const xe=t.consts,Ve=fa(t,e,4,B||null,pi(xe,K));Bu(t,i,Ve,pi(xe,oe)),ws(t,Ve);const lt=Ve.tView=Uu(2,Ve,f,y,I,t.directiveRegistry,t.pipeRegistry,null,t.schemas,xe,null);return null!==t.queries&&(t.queries.template(t,Ve),lt.queries=t.queries.embeddedTView(Ve)),Ve}(Ve,xe,oe,t,i,f,y,I,B):xe.data[Ve];Ur(lt,!1);const Pt=Rp(xe,oe,lt,e);ho()&&Bl(xe,oe,Pt,lt),Dr(Pt,oe),ec(oe,oe[Ve]=rp(Pt,oe,Pt,lt)),ai(lt)&&Fu(xe,oe,lt),null!=B&&Nu(oe,lt,K)}let Rp=Op;function Op(e,t,i,f){return Er(!0),t[U].createComment("")}function W1(e,t,i,f){const y=t[ur],I=!y||mr()||Zl(y,f);if(Er(I),I)return Op(0,t);const B=y.data[wu]?.[f]??null;null!==B&&null!==i.tView&&null===i.tView.ssrId&&(i.tView.ssrId=B);const K=ac(y,e,t,i);return Su(y,f,K),lc(Au(y,f),K)}function Pp(e,t,i,f){i>=e.data.length&&(e.data[i]=null,e.blueprint[i]=null),t[i]=f}function Fp(e){return Ht(function Ws(){return Kn.lFrame.contextLView}(),ft+e)}function cd(e,t,i){const f=dn();return Tr(f,Mo(),t)&&Xr(yi(),Ln(),f,e,t,f[U],i,!1),cd}function ud(e,t,i,f,y){const B=y?"class":"style";Hu(e,i,t.inputs[B],B,f)}function cc(e,t,i,f){const y=dn(),I=yi(),B=ft+e,K=y[U],oe=I.firstCreatePass?function K1(e,t,i,f,y,I){const B=t.consts,oe=fa(t,e,2,f,pi(B,y));return Bu(t,i,oe,pi(B,I)),null!==oe.attrs&&tc(oe,oe.attrs,!1),null!==oe.mergedAttrs&&tc(oe,oe.mergedAttrs,!0),null!==t.queries&&t.queries.elementStart(t,oe),oe}(B,I,y,t,i,f):I.data[B],xe=Np(I,y,oe,K,t,e);y[B]=xe;const Ve=ai(oe);return Ur(oe,!0),Hf(K,xe,oe),32!=(32&oe.flags)&&ho()&&Bl(I,y,xe,oe),0===function lr(){return Kn.lFrame.elementDepthCount}()&&Dr(xe,y),function Nr(){Kn.lFrame.elementDepthCount++}(),Ve&&(Fu(I,y,oe),Pu(I,oe,y)),null!==f&&Nu(y,oe),cc}function uc(){let e=cr();ys()?Cs():(e=e.parent,Ur(e,!1));const t=e;(function Ra(e){return Kn.skipHydrationRootTNode===e})(t)&&function zs(){Kn.skipHydrationRootTNode=null}(),function js(){Kn.lFrame.elementDepthCount--}();const i=yi();return i.firstCreatePass&&(ws(i,e),ni(e)&&i.queries.elementEnd(e)),null!=t.classesWithoutHost&&function Vt(e){return 0!=(8&e.flags)}(t)&&ud(i,t,dn(),t.classesWithoutHost,!0),null!=t.stylesWithoutHost&&function Hn(e){return 0!=(16&e.flags)}(t)&&ud(i,t,dn(),t.stylesWithoutHost,!1),uc}function dd(e,t,i,f){return cc(e,t,i,f),uc(),dd}let Np=(e,t,i,f,y,I)=>(Er(!0),Nl(f,y,Eo()));function Y1(e,t,i,f,y,I){const B=t[ur],K=!B||mr()||Zl(B,I);if(Er(K),K)return Nl(f,y,Eo());const oe=ac(B,e,t,i);return Mm(B,I)&&Su(B,I,oe.nextSibling),B&&(pf(i)||gf(oe))&&Xn(i)&&(function gs(e){Kn.skipHydrationRootTNode=e}(i),$f(oe)),oe}function dc(e,t,i){const f=dn(),y=yi(),I=e+ft,B=y.firstCreatePass?function Q1(e,t,i,f,y){const I=t.consts,B=pi(I,f),K=fa(t,e,8,"ng-container",B);return null!==B&&tc(K,B,!0),Bu(t,i,K,pi(I,y)),null!==t.queries&&t.queries.elementStart(t,K),K}(I,y,f,t,i):y.data[I];Ur(B,!0);const K=Up(y,f,B,e);return f[I]=K,ho()&&Bl(y,f,K,B),Dr(K,f),ai(B)&&(Fu(y,f,B),Pu(y,B,f)),null!=i&&Nu(f,B),dc}function hc(){let e=cr();const t=yi();return ys()?Cs():(e=e.parent,Ur(e,!1)),t.firstCreatePass&&(ws(t,e),ni(e)&&t.queries.elementEnd(e)),hc}function hd(e,t,i){return dc(e,t,i),hc(),hd}let Up=(e,t,i,f)=>(Er(!0),Zc(t[U],""));function X1(e,t,i,f){let y;const I=t[ur],B=!I||mr();if(Er(B),B)return Zc(t[U],"");const K=ac(I,e,t,i),oe=function fy(e,t){const i=e.data;let f=i[Mu]?.[t]??null;return null===f&&i[qa]?.[t]&&(f=Au(e,t)),f}(I,f);return Su(I,f,K),y=lc(oe,K),y}function Bp(){return dn()}function fd(e){return!!e&&"function"==typeof e.then}function $p(e){return!!e&&"function"==typeof e.subscribe}function md(e,t,i,f){const y=dn(),I=yi(),B=cr();return Vp(I,y,y[U],B,e,t,f),md}function pd(e,t){const i=cr(),f=dn(),y=yi();return Vp(y,f,lp(Fo(y.data),i,f),i,e,t),pd}function Vp(e,t,i,f,y,I,B){const K=ai(f),xe=e.firstCreatePass&&ap(e),Ve=t[gi],lt=sp(t);let Pt=!0;if(3&f.type||B){const vn=le(f,t),On=B?B(vn):vn,Wn=lt.length,cn=B?ki=>B(Oi(ki[f.index])):f.index;let hi=null;if(!B&&K&&(hi=function q1(e,t,i,f){const y=e.cleanup;if(null!=y)for(let I=0;Ioe?K[oe]:null}"string"==typeof B&&(I+=2)}return null}(e,t,y,f.index)),null!==hi)(hi.__ngLastListenerFn__||hi).__ngNextListenerFn__=I,hi.__ngLastListenerFn__=I,Pt=!1;else{I=Hp(f,t,Ve,I,!1);const ki=i.listen(On,y,I);lt.push(I,ki),xe&&xe.push(y,cn,Wn,Wn+1)}}else I=Hp(f,t,Ve,I,!1);const jt=f.outputs;let sn;if(Pt&&null!==jt&&(sn=jt[y])){const vn=sn.length;if(vn)for(let On=0;On-1?Zt(e.index,t):t);let oe=jp(t,i,f,B),xe=I.__ngNextListenerFn__;for(;xe;)oe=jp(t,i,xe,B)&&oe,xe=xe.__ngNextListenerFn__;return y&&!1===oe&&B.preventDefault(),oe}}function zp(e=1){return function Qe(e){return(Kn.lFrame.contextLView=function et(e,t){for(;e>0;)t=t[Je],e--;return t}(e,Kn.lFrame.contextLView))[gi]}(e)}function eC(e,t){let i=null;const f=function Yn(e){const t=e.attrs;if(null!=t){const i=t.indexOf(5);if(!(1&i))return t[i+1]}return null}(e);for(let y=0;y>17&32767}function Ed(e){return 2|e}function Ns(e){return(131068&e)>>2}function Dd(e,t){return-131069&e|t<<2}function Td(e){return 1|e}function Kp(e,t,i,f,y){const I=e[i+1],B=null===t;let K=f?ls(I):Ns(I),oe=!1;for(;0!==K&&(!1===oe||B);){const Ve=e[K+1];sC(e[K],t)&&(oe=!0,e[K+1]=f?Td(Ve):Ed(Ve)),K=f?ls(Ve):Ns(Ve)}oe&&(e[i+1]=f?Ed(I):Td(I))}function sC(e,t){return null===e||null==t||(Array.isArray(e)?e[1]:e)===t||!(!Array.isArray(e)||"string"!=typeof t)&&ta(e,t)>=0}const gr={textEnd:0,key:0,keyEnd:0,value:0,valueEnd:0};function Yp(e){return e.substring(gr.key,gr.keyEnd)}function aC(e){return e.substring(gr.value,gr.valueEnd)}function Zp(e,t){const i=gr.textEnd;return i===t?-1:(t=gr.keyEnd=function uC(e,t,i){for(;t32;)t++;return t}(e,gr.key=t,i),Ea(e,t,i))}function Qp(e,t){const i=gr.textEnd;let f=gr.key=Ea(e,t,i);return i===f?-1:(f=gr.keyEnd=function dC(e,t,i){let f;for(;t=65&&(-33&f)<=90||f>=48&&f<=57);)t++;return t}(e,f,i),f=Jp(e,f,i),f=gr.value=Ea(e,f,i),f=gr.valueEnd=function hC(e,t,i){let f=-1,y=-1,I=-1,B=t,K=B;for(;B32&&(K=B),I=y,y=f,f=-33&oe}return K}(e,f,i),Jp(e,f,i))}function Xp(e){gr.key=0,gr.keyEnd=0,gr.value=0,gr.valueEnd=0,gr.textEnd=e.length}function Ea(e,t,i){for(;t=0;i=Qp(t,i))r0(e,Yp(t),aC(t))}function e0(e){po(bC,So,e,!0)}function So(e,t){for(let i=function lC(e){return Xp(e),Zp(e,Ea(e,0,gr.textEnd))}(t);i>=0;i=Zp(t,i))Qr(e,Yp(t),!0)}function mo(e,t,i,f){const y=dn(),I=yi(),B=Zr(2);I.firstUpdatePass&&n0(I,e,B,f),t!==fi&&Tr(y,B,t)&&o0(I,I.data[Nt()],y,y[U],e,y[B+1]=function CC(e,t){return null==e||""===e||("string"==typeof t?e+=t:"object"==typeof e&&(e=u(Bo(e)))),e}(t,i),f,B)}function po(e,t,i,f){const y=yi(),I=Zr(2);y.firstUpdatePass&&n0(y,null,I,f);const B=dn();if(i!==fi&&Tr(B,I,i)){const K=y.data[Nt()];if(a0(K,f)&&!t0(y,I)){let oe=f?K.classesWithoutHost:K.stylesWithoutHost;null!==oe&&(i=h(oe,i||"")),ud(y,K,B,i,f)}else!function yC(e,t,i,f,y,I,B,K){y===fi&&(y=Mn);let oe=0,xe=0,Ve=0=e.expandoStartIndex}function n0(e,t,i,f){const y=e.data;if(null===y[i+1]){const I=y[Nt()],B=t0(e,i);a0(I,f)&&null===t&&!B&&(t=!1),t=function mC(e,t,i,f){const y=Fo(e);let I=f?t.residualClasses:t.residualStyles;if(null===y)0===(f?t.classBindings:t.styleBindings)&&(i=dl(i=Ad(null,e,t,i,f),t.attrs,f),I=null);else{const B=t.directiveStylingLast;if(-1===B||e[B]!==y)if(i=Ad(y,e,t,i,f),null===I){let oe=function pC(e,t,i){const f=i?t.classBindings:t.styleBindings;if(0!==Ns(f))return e[ls(f)]}(e,t,f);void 0!==oe&&Array.isArray(oe)&&(oe=Ad(null,e,t,oe[1],f),oe=dl(oe,t.attrs,f),function gC(e,t,i,f){e[ls(i?t.classBindings:t.styleBindings)]=f}(e,t,f,oe))}else I=function _C(e,t,i){let f;const y=t.directiveEnd;for(let I=1+t.directiveStylingLast;I0)&&(xe=!0)):Ve=i,y)if(0!==oe){const Pt=ls(e[K+1]);e[f+1]=mc(Pt,K),0!==Pt&&(e[Pt+1]=Dd(e[Pt+1],f)),e[K+1]=function nC(e,t){return 131071&e|t<<17}(e[K+1],f)}else e[f+1]=mc(K,0),0!==K&&(e[K+1]=Dd(e[K+1],f)),K=f;else e[f+1]=mc(oe,0),0===K?K=f:e[oe+1]=Dd(e[oe+1],f),oe=f;xe&&(e[f+1]=Ed(e[f+1])),Kp(e,Ve,f,!0),Kp(e,Ve,f,!1),function oC(e,t,i,f,y){const I=y?e.residualClasses:e.residualStyles;null!=I&&"string"==typeof t&&ta(I,t)>=0&&(i[f+1]=Td(i[f+1]))}(t,Ve,e,f,I),B=mc(K,oe),I?t.classBindings=B:t.styleBindings=B}(y,I,t,i,B,f)}}function Ad(e,t,i,f,y){let I=null;const B=i.directiveEnd;let K=i.directiveStylingLast;for(-1===K?K=i.directiveStart:K++;K0;){const oe=e[y],xe=Array.isArray(oe),Ve=xe?oe[1]:oe,lt=null===Ve;let Pt=i[y+1];Pt===fi&&(Pt=lt?Mn:void 0);let jt=lt?Uc(Pt,f):Ve===f?Pt:void 0;if(xe&&!pc(jt)&&(jt=Uc(oe,f)),pc(jt)&&(K=jt,B))return K;const sn=e[y+1];y=B?ls(sn):Ns(sn)}if(null!==t){let oe=I?t.residualClasses:t.residualStyles;null!=oe&&(K=Uc(oe,f))}return K}function pc(e){return void 0!==e}function a0(e,t){return 0!=(e.flags&(t?8:16))}function l0(e,t=""){const i=dn(),f=yi(),y=e+ft,I=f.firstCreatePass?fa(f,y,1,t,null):f.data[y],B=c0(f,i,I,t,e);i[y]=B,ho()&&Bl(f,i,B,I),Ur(I,!1)}let c0=(e,t,i,f,y)=>(Er(!0),Fl(t[U],f));function xC(e,t,i,f,y){const I=t[ur],B=!I||mr()||Zl(I,y);return Er(B),B?Fl(t[U],f):ac(I,e,t,i)}function kd(e){return gc("",e,""),kd}function gc(e,t,i){const f=dn(),y=_a(f,e,t,i);return y!==fi&&jo(f,Nt(),y),gc}function Ld(e,t,i,f,y){const I=dn(),B=va(I,e,t,i,f,y);return B!==fi&&jo(I,Nt(),B),Ld}function Rd(e,t,i,f,y,I,B){const K=dn(),oe=ba(K,e,t,i,f,y,I,B);return oe!==fi&&jo(K,Nt(),oe),Rd}function Od(e,t,i,f,y,I,B,K,oe){const xe=dn(),Ve=ya(xe,e,t,i,f,y,I,B,K,oe);return Ve!==fi&&jo(xe,Nt(),Ve),Od}function Pd(e,t,i,f,y,I,B,K,oe,xe,Ve){const lt=dn(),Pt=Ca(lt,e,t,i,f,y,I,B,K,oe,xe,Ve);return Pt!==fi&&jo(lt,Nt(),Pt),Pd}function Fd(e,t,i,f,y,I,B,K,oe,xe,Ve,lt,Pt){const jt=dn(),sn=xa(jt,e,t,i,f,y,I,B,K,oe,xe,Ve,lt,Pt);return sn!==fi&&jo(jt,Nt(),sn),Fd}function Nd(e,t,i,f,y,I,B,K,oe,xe,Ve,lt,Pt,jt,sn){const vn=dn(),On=Ma(vn,e,t,i,f,y,I,B,K,oe,xe,Ve,lt,Pt,jt,sn);return On!==fi&&jo(vn,Nt(),On),Nd}function Ud(e,t,i,f,y,I,B,K,oe,xe,Ve,lt,Pt,jt,sn,vn,On){const Wn=dn(),cn=wa(Wn,e,t,i,f,y,I,B,K,oe,xe,Ve,lt,Pt,jt,sn,vn,On);return cn!==fi&&jo(Wn,Nt(),cn),Ud}function Bd(e){const t=dn(),i=ga(t,e);return i!==fi&&jo(t,Nt(),i),Bd}function u0(e,t,i){po(Qr,So,_a(dn(),e,t,i),!0)}function d0(e,t,i,f,y){po(Qr,So,va(dn(),e,t,i,f,y),!0)}function h0(e,t,i,f,y,I,B){po(Qr,So,ba(dn(),e,t,i,f,y,I,B),!0)}function f0(e,t,i,f,y,I,B,K,oe){po(Qr,So,ya(dn(),e,t,i,f,y,I,B,K,oe),!0)}function m0(e,t,i,f,y,I,B,K,oe,xe,Ve){po(Qr,So,Ca(dn(),e,t,i,f,y,I,B,K,oe,xe,Ve),!0)}function p0(e,t,i,f,y,I,B,K,oe,xe,Ve,lt,Pt){po(Qr,So,xa(dn(),e,t,i,f,y,I,B,K,oe,xe,Ve,lt,Pt),!0)}function g0(e,t,i,f,y,I,B,K,oe,xe,Ve,lt,Pt,jt,sn){po(Qr,So,Ma(dn(),e,t,i,f,y,I,B,K,oe,xe,Ve,lt,Pt,jt,sn),!0)}function _0(e,t,i,f,y,I,B,K,oe,xe,Ve,lt,Pt,jt,sn,vn,On){po(Qr,So,wa(dn(),e,t,i,f,y,I,B,K,oe,xe,Ve,lt,Pt,jt,sn,vn,On),!0)}function v0(e){po(Qr,So,ga(dn(),e),!0)}function b0(e,t,i){fo(_a(dn(),e,t,i))}function y0(e,t,i,f,y){fo(va(dn(),e,t,i,f,y))}function C0(e,t,i,f,y,I,B){fo(ba(dn(),e,t,i,f,y,I,B))}function x0(e,t,i,f,y,I,B,K,oe){fo(ya(dn(),e,t,i,f,y,I,B,K,oe))}function M0(e,t,i,f,y,I,B,K,oe,xe,Ve){fo(Ca(dn(),e,t,i,f,y,I,B,K,oe,xe,Ve))}function w0(e,t,i,f,y,I,B,K,oe,xe,Ve,lt,Pt){fo(xa(dn(),e,t,i,f,y,I,B,K,oe,xe,Ve,lt,Pt))}function E0(e,t,i,f,y,I,B,K,oe,xe,Ve,lt,Pt,jt,sn){fo(Ma(dn(),e,t,i,f,y,I,B,K,oe,xe,Ve,lt,Pt,jt,sn))}function D0(e,t,i,f,y,I,B,K,oe,xe,Ve,lt,Pt,jt,sn,vn,On){fo(wa(dn(),e,t,i,f,y,I,B,K,oe,xe,Ve,lt,Pt,jt,sn,vn,On))}function T0(e){fo(ga(dn(),e))}function $d(e,t,i,f,y){return mo(e,_a(dn(),t,i,f),y,!1),$d}function Vd(e,t,i,f,y,I,B){return mo(e,va(dn(),t,i,f,y,I),B,!1),Vd}function jd(e,t,i,f,y,I,B,K,oe){return mo(e,ba(dn(),t,i,f,y,I,B,K),oe,!1),jd}function Hd(e,t,i,f,y,I,B,K,oe,xe,Ve){return mo(e,ya(dn(),t,i,f,y,I,B,K,oe,xe),Ve,!1),Hd}function zd(e,t,i,f,y,I,B,K,oe,xe,Ve,lt,Pt){return mo(e,Ca(dn(),t,i,f,y,I,B,K,oe,xe,Ve,lt),Pt,!1),zd}function Wd(e,t,i,f,y,I,B,K,oe,xe,Ve,lt,Pt,jt,sn){return mo(e,xa(dn(),t,i,f,y,I,B,K,oe,xe,Ve,lt,Pt,jt),sn,!1),Wd}function Gd(e,t,i,f,y,I,B,K,oe,xe,Ve,lt,Pt,jt,sn,vn,On){return mo(e,Ma(dn(),t,i,f,y,I,B,K,oe,xe,Ve,lt,Pt,jt,sn,vn),On,!1),Gd}function Kd(e,t,i,f,y,I,B,K,oe,xe,Ve,lt,Pt,jt,sn,vn,On,Wn,cn){return mo(e,wa(dn(),t,i,f,y,I,B,K,oe,xe,Ve,lt,Pt,jt,sn,vn,On,Wn),cn,!1),Kd}function Yd(e,t,i){return mo(e,ga(dn(),t),i,!1),Yd}function Zd(e,t,i){const f=dn();return Tr(f,Mo(),t)&&Xr(yi(),Ln(),f,e,t,f[U],i,!0),Zd}function Qd(e,t,i){const f=dn();if(Tr(f,Mo(),t)){const I=yi(),B=Ln();Xr(I,B,f,e,t,lp(Fo(I.data),B,f),i,!0)}return Qd}const Us=void 0;var EC=["en",[["a","p"],["AM","PM"],Us],[["AM","PM"],Us,Us],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],Us,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],Us,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",Us,"{1} 'at' {0}",Us],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},"ltr",function wC(e){const i=Math.floor(Math.abs(e)),f=e.toString().replace(/^[^.]*\.?/,"").length;return 1===i&&0===f?1:5}];let Da={};function DC(e,t,i){"string"!=typeof t&&(i=t,t=e[Ta.LocaleId]),t=t.toLowerCase().replace(/_/g,"-"),Da[t]=e,i&&(Da[t][Ta.ExtraData]=i)}function Xd(e){const t=function IC(e){return e.toLowerCase().replace(/_/g,"-")}(e);let i=I0(t);if(i)return i;const f=t.split("-")[0];if(i=I0(f),i)return i;if("en"===f)return EC;throw new T(701,!1)}function TC(e){return Xd(e)[Ta.CurrencyCode]||null}function S0(e){return Xd(e)[Ta.PluralCase]}function I0(e){return e in Da||(Da[e]=ze.ng&&ze.ng.common&&ze.ng.common.locales&&ze.ng.common.locales[e]),Da[e]}function SC(){Da={}}var Ta=function(e){return e[e.LocaleId=0]="LocaleId",e[e.DayPeriodsFormat=1]="DayPeriodsFormat",e[e.DayPeriodsStandalone=2]="DayPeriodsStandalone",e[e.DaysFormat=3]="DaysFormat",e[e.DaysStandalone=4]="DaysStandalone",e[e.MonthsFormat=5]="MonthsFormat",e[e.MonthsStandalone=6]="MonthsStandalone",e[e.Eras=7]="Eras",e[e.FirstDayOfWeek=8]="FirstDayOfWeek",e[e.WeekendRange=9]="WeekendRange",e[e.DateFormat=10]="DateFormat",e[e.TimeFormat=11]="TimeFormat",e[e.DateTimeFormat=12]="DateTimeFormat",e[e.NumberSymbols=13]="NumberSymbols",e[e.NumberFormats=14]="NumberFormats",e[e.CurrencyCode=15]="CurrencyCode",e[e.CurrencySymbol=16]="CurrencySymbol",e[e.CurrencyName=17]="CurrencyName",e[e.Currencies=18]="Currencies",e[e.Directionality=19]="Directionality",e[e.PluralCase=20]="PluralCase",e[e.ExtraData=21]="ExtraData",e}(Ta||{});const AC=["zero","one","two","few","many"],Bs="en-US",_c={marker:"element"},vc={marker:"ICU"};var $r=function(e){return e[e.SHIFT=2]="SHIFT",e[e.APPEND_EAGERLY=1]="APPEND_EAGERLY",e[e.COMMENT=2]="COMMENT",e}($r||{});let A0=Bs;function Jd(e){(function Be(e,t){null==e&&$e(t,e,null,"!=")})(e,"Expected localeId to be defined"),"string"==typeof e&&(A0=e.toLowerCase().replace(/_/g,"-"))}function k0(e,t,i){const f=t.insertBeforeIndex,y=Array.isArray(f)?f[0]:f;return null===y?Ff(e,0,i):Oi(i[y])}function L0(e,t,i,f,y){const I=t.insertBeforeIndex;if(Array.isArray(I)){let B=f,K=null;if(3&t.type||(K=B,B=y),null!==B&&-1===t.componentOffset)for(let oe=1;oe1)for(let i=e.length-2;i>=0;i--){const f=e[i];O0(f)||OC(f,t)&&null===PC(f)&&FC(f,t.index)}}function O0(e){return!(64&e.type)}function OC(e,t){return O0(t)||e.index>t.index}function PC(e){const t=e.insertBeforeIndex;return Array.isArray(t)?t[0]:t}function FC(e,t){const i=e.insertBeforeIndex;Array.isArray(i)?i[0]=t:(Uf(k0,L0),e.insertBeforeIndex=t)}function hl(e,t){const i=e.data[t];return null===i||"string"==typeof i?null:i.hasOwnProperty("currentCaseLViewIndex")?i:i.value}function BC(e,t,i){const f=Ou(e,i,64,null,null);return R0(t,f),f}function bc(e,t){const i=t[e.currentCaseLViewIndex];return null===i?i:i<0?~i:i}function P0(e){return e>>>17}function F0(e){return(131070&e)>>>1}let fl=0,ml=0;function U0(e,t,i,f){const y=i[U];let B,I=null;for(let K=0;K>>1,i),null,null,jt,sn,null)}else switch(oe){case vc:const xe=t[++K],Ve=t[++K];null===i[Ve]&&Dr(i[Ve]=Zc(y,xe),i);break;case _c:const lt=t[++K],Pt=t[++K];null===i[Pt]&&Dr(i[Pt]=Nl(y,lt,null),i)}}}function B0(e,t,i,f,y){for(let I=0;I>>2;switch(3&Ve){case 1:const Pt=i[++xe],jt=i[++xe],sn=e.data[lt];"string"==typeof sn?Vu(t[U],t[lt],null,sn,Pt,oe,jt):Xr(e,sn,t,Pt,oe,t[U],jt,!1);break;case 0:const vn=t[lt];null!==vn&&If(t[U],vn,oe);break;case 2:zC(e,hl(e,lt),t,oe);break;case 3:$0(e,hl(e,lt),f,t)}}}}else{const oe=i[I+1];if(oe>0&&3==(3&oe)){const Ve=hl(e,oe>>>2);t[Ve.currentCaseLViewIndex]<0&&$0(e,Ve,f,t)}}I+=K}}function $0(e,t,i,f){let y=f[t.currentCaseLViewIndex];if(null!==y){let I=fl;y<0&&(y=f[t.currentCaseLViewIndex]=~y,I=-1),B0(e,f,t.update[y],i,I)}}function zC(e,t,i,f){const y=function WC(e,t){let i=e.cases.indexOf(t);if(-1===i)switch(e.type){case 1:{const f=function kC(e,t){const i=S0(t)(parseInt(e,10)),f=AC[i];return void 0!==f?f:"other"}(t,function RC(){return A0}());i=e.cases.indexOf(f),-1===i&&"other"!==f&&(i=e.cases.indexOf("other"));break}case 0:i=e.cases.indexOf("other")}return-1===i?null:i}(t,f);if(bc(t,i)!==y&&(V0(e,t,i),i[t.currentCaseLViewIndex]=null===y?null:~y,null!==y)){const B=i[t.anchorIdx];B&&U0(e,t.create[y],i,B)}}function V0(e,t,i){let f=bc(t,i);if(null!==f){const y=t.remove[f];for(let I=0;I0){const K=Ie(B,i);null!==K&&$l(i[U],K)}else V0(e,hl(e,~B),i)}}}function GC(){const e=[];let i,f,t=-1;function I(K,oe){t=0;const xe=bc(K,oe);f=null!==xe?K.remove[xe]:Mn}function B(){if(t0?i[K]:(e.push(t,f),I(i[rn].data[~K],i),B())}return 0===e.length?null:(f=e.pop(),t=e.pop(),B())}return function y(K,oe){for(i=oe;e.length;)e.pop();return I(K.value,oe),B}}const yc=/\ufffd(\d+):?\d*\ufffd/gi,KC=/({\s*\ufffd\d+:?\d*\ufffd\s*,\s*\S{6}\s*,[\s\S]*})/gi,YC=/\ufffd(\d+)\ufffd/,H0=/^\s*(\ufffd\d+:?\d*\ufffd)\s*,\s*(select|plural)\s*,/,pl="\ufffd",ZC=/\ufffd\/?\*(\d+:\d+)\ufffd/gi,QC=/\ufffd(\/?[#*]\d+):?\d*\ufffd/gi,XC=/\uE500/g;function z0(e,t,i,f,y,I,B){const K=ol(e,f,1,null);let oe=K<<$r.SHIFT,xe=xo();t===xe&&(xe=null),null===xe&&(oe|=$r.APPEND_EAGERLY),B&&(oe|=$r.COMMENT,function ab(e){void 0===Kc&&(Kc=e())}(GC)),y.push(oe,null===I?"":I);const Ve=Ou(e,K,B?32:1,null===I?"":I,null);R0(i,Ve);const lt=Ve.index;return Ur(Ve,!1),null!==xe&&t!==xe&&function UC(e,t){let i=e.insertBeforeIndex;null===i?(Uf(k0,L0),i=e.insertBeforeIndex=[null,t]):(function ne(e,t,i){e!=t&&$e(i,e,t,"==")}(Array.isArray(i),!0,"Expecting array here"),i.push(t))}(xe,lt),Ve}function ex(e,t,i,f,y,I,B){const K=B.match(yc),oe=z0(e,t,i,I,f,K?null:B,!1);K&&gl(y,B,oe.index,null,0,null)}function gl(e,t,i,f,y,I){const B=e.length,K=B+1;e.push(null,null);const oe=B+2,xe=t.split(yc);let Ve=0;for(let lt=0;lti.length&&i.push(oe)}return{type:f,mainBinding:y,cases:t,values:i}}function qd(e){if(!e)return[];let t=0;const i=[],f=[],y=/[{}]/g;let I;for(y.lastIndex=0;I=y.exec(e);){const K=I.index;if("}"==I[0]){if(i.pop(),0==i.length){const oe=e.substring(t,K);H0.test(oe)?f.push(ox(oe)):f.push(oe),t=K+1}}else{if(0==i.length){const oe=e.substring(t,K);f.push(oe),t=K+1}i.push("{")}}const B=e.substring(t);return f.push(B),f}function sx(e,t,i,f,y,I,B,K){const oe=[],xe=[],Ve=[];t.cases.push(I),t.create.push(oe),t.remove.push(xe),t.update.push(Ve);const Pt=Zf(Ya()).getInertBodyElement(B),jt=au(Pt)||Pt;return jt?Y0(e,t,i,f,oe,xe,Ve,jt,y,K,0):0}function Y0(e,t,i,f,y,I,B,K,oe,xe,Ve){let lt=0,Pt=K.firstChild;for(;Pt;){const jt=ol(e,i,1,null);switch(Pt.nodeType){case Node.ELEMENT_NODE:const sn=Pt,vn=sn.tagName.toLowerCase();if(ou.hasOwnProperty(vn)){eh(y,_c,vn,oe,jt),e.data[jt]=vn;const hi=sn.attributes;for(let ki=0;ki>>$r.SHIFT;let lt=e[Ve];null===lt&&(lt=e[Ve]=(B&$r.COMMENT)===$r.COMMENT?y.createComment(K):Fl(y,K)),xe&&null!==i&&ks(y,i,lt,f,!1)}})(y,oe.create,Ve,K&&8&K.type?y[K.index]:null),Ks(!0)}function nh(){Ks(!1)}function X0(e,t,i){th(e,t,i),nh()}function J0(e,t){const i=yi(),f=pi(i.consts,t);!function tx(e,t,i){const y=cr().index,I=[];if(e.firstCreatePass&&null===e.data[t]){for(let B=0;B0){const f=e.data[i];B0(e,t,Array.isArray(f)?f:f.update,Yr()-ml-1,fl)}fl=0,ml=0}(yi(),dn(),e+ft)}function eg(e,t={}){return function vx(e,t={}){let i=e;if(dx.test(e)){const f={},y=[Q0];i=i.replace(hx,(I,B,K)=>{const oe=B||K,xe=f[oe]||[];if(xe.length||(oe.split("|").forEach(vn=>{const On=vn.match(_x),Wn=On?parseInt(On[1],10):Q0,cn=gx.test(vn);xe.push([Wn,cn,vn])}),f[oe]=xe),!xe.length)throw new Error(`i18n postprocess: unmatched placeholder - ${oe}`);const Ve=y[y.length-1];let lt=0;for(let vn=0;vnt.hasOwnProperty(I)?`${y}${t[I]}${oe}`:f),i=i.replace(mx,(f,y)=>t.hasOwnProperty(y)?t[y]:f),i=i.replace(px,(f,y)=>{if(t.hasOwnProperty(y)){const I=t[y];if(!I.length)throw new Error(`i18n postprocess: unmatched ICU - ${f} with key: ${y}`);return I.shift()}return f})),i}(e,t)}function rh(e,t,i,f,y){if(e=M(e),Array.isArray(e))for(let I=0;I>20;if(Os(e)||!e.multi){const jt=new H(oe,y,ha),sn=sh(K,t,y?Ve:Ve+Pt,lt);-1===sn?(Di(ei(xe,B),I,K),oh(I,e,t.length),t.push(K),xe.directiveStart++,xe.directiveEnd++,y&&(xe.providerIndexes+=1048576),i.push(jt),B.push(jt)):(i[sn]=jt,B[sn]=jt)}else{const jt=sh(K,t,Ve+Pt,lt),sn=sh(K,t,Ve,Ve+Pt),On=sn>=0&&i[sn];if(y&&!On||!y&&!(jt>=0&&i[jt])){Di(ei(xe,B),I,K);const Wn=function xx(e,t,i,f,y){const I=new H(e,i,ha);return I.multi=[],I.index=t,I.componentProviders=0,tg(I,y,f&&!i),I}(y?Cx:yx,i.length,y,f,oe);!y&&On&&(i[sn].providerFactory=Wn),oh(I,e,t.length,0),t.push(K),xe.directiveStart++,xe.directiveEnd++,y&&(xe.providerIndexes+=1048576),i.push(Wn),B.push(Wn)}else oh(I,e,jt>-1?jt:sn,tg(i[y?sn:jt],oe,!y&&f));!y&&f&&On&&i[sn].componentProviders++}}}function oh(e,t,i,f){const y=Os(t),I=function Yb(e){return!!e.useClass}(t);if(y||I){const oe=(I?M(t.useClass):t).prototype.ngOnDestroy;if(oe){const xe=e.destroyHooks||(e.destroyHooks=[]);if(!y&&t.multi){const Ve=xe.indexOf(i);-1===Ve?xe.push(i,[f,oe]):xe[Ve+1].push(f,oe)}else xe.push(i,oe)}}}function tg(e,t,i){return i&&e.componentProviders++,e.multi.push(t)-1}function sh(e,t,i,f){for(let y=i;y{i.providersResolver=(f,y)=>function bx(e,t,i){const f=yi();if(f.firstCreatePass){const y=Fi(e);rh(i,f.data,f.blueprint,y,!0),rh(t,f.data,f.blueprint,y,!1)}}(f,y?y(e):e,t)}}class Sa{}class ig{}function rg(e,t){return new Cc(e,t??null,[])}const Mx=rg;class Cc extends Sa{constructor(t,i,f){super(),this._parent=i,this._bootstrapComponents=[],this.destroyCbs=[],this.componentFactoryResolver=new _p(this);const y=kn(t);this._bootstrapComponents=Vo(y.bootstrap),this._r3Injector=Ym(t,i,[{provide:Sa,useValue:this},{provide:tl,useValue:this.componentFactoryResolver},...f],u(t),new Set(["environment"])),this._r3Injector.resolveInjectorInitializers(),this.instance=this._r3Injector.get(t)}get injector(){return this._r3Injector}destroy(){const t=this._r3Injector;!t.destroyed&&t.destroy(),this.destroyCbs.forEach(i=>i()),this.destroyCbs=null}onDestroy(t){this.destroyCbs.push(t)}}class xc extends ig{constructor(t){super(),this.moduleType=t}create(t){return new Cc(this.moduleType,t,[])}}class og extends Sa{constructor(t){super(),this.componentFactoryResolver=new _p(this),this.instance=null;const i=new _u([...t.providers,{provide:Sa,useValue:this},{provide:tl,useValue:this.componentFactoryResolver}],t.parent||Gl(),t.debugName,new Set(["environment"]));this.injector=i,t.runEnvironmentInitializers&&i.resolveInjectorInitializers()}destroy(){this.injector.destroy()}onDestroy(t){this.injector.onDestroy(t)}}function sg(e,t,i=null){return new og({providers:e,parent:t,debugName:i,runEnvironmentInitializers:!0}).injector}let Ex=(()=>{class e{constructor(i){this._injector=i,this.cachedInjectors=new Map}getOrCreateStandaloneInjector(i){if(!i.standalone)return null;if(!this.cachedInjectors.has(i)){const f=dm(0,i.type),y=f.length>0?sg([f],this._injector,`Standalone[${i.type.name}]`):null;this.cachedInjectors.set(i,y)}return this.cachedInjectors.get(i)}ngOnDestroy(){try{for(const i of this.cachedInjectors.values())null!==i&&i.destroy()}finally{this.cachedInjectors.clear()}}}return e.\u0275prov=St({token:e,providedIn:"environment",factory:()=>new e(ce(Ps))}),e})();function ag(e){e.getStandaloneInjector=t=>t.get(Ex).getOrCreateStandaloneInjector(e)}function lh(e){const t=kr(e);if(null===t)return null;if(void 0===t.component){const i=t.lView;if(null===i)return null;t.component=function ob(e,t){const i=t[rn].data[e],{directiveStart:f,componentOffset:y}=i;return y>-1?t[f+y]:null}(t.nodeIndex,i)}return t.component}function lg(e){!function kx(e){if(typeof Element<"u"&&!(e instanceof Element))throw new Error("Expecting instance of DOM Element")}(e);const t=kr(e),i=t?t.lView:null;return null===i?null:i[gi]}function cg(e){const t=kr(e);let f,i=t?t.lView:null;if(null===i)return null;for(;2===i[rn].type&&(f=Wa(i));)i=f;return 512&i[xn]?null:i[gi]}function ug(e){const t=Cf(e);return null!==t?[cb(t)]:[]}function dg(e){const t=kr(e),i=t?t.lView:null;return null===i?as.NULL:new Qs(i[rn].data[t.nodeIndex],i)}function hg(e){if(e instanceof Text)return[];const t=kr(e),i=t?t.lView:null;if(null===i)return[];const f=i[rn],y=t.nodeIndex;return f?.data[y]?(void 0===t.directives&&(t.directives=Ef(y,i)),null===t.directives?[]:[...t.directives]):[]}function Tx(e){const{constructor:t}=e;if(!t)throw new Error("Unable to find the instance constructor");const i=gn(t);if(i)return{inputs:i.inputs,outputs:i.outputs,encapsulation:i.encapsulation,changeDetection:i.onPush?wn.OnPush:wn.Default};const f=pn(t);return f?{inputs:f.inputs,outputs:f.outputs}:null}function ch(e){return kr(e).native}function fg(e){const t=kr(e),i=null===t?null:t.lView;if(null===i)return[];const y=i[_r],I=i[rn].cleanup,B=[];if(I&&y)for(let K=0;K=0?"dom":"output"})}}return B.sort(Ix),B}function Ix(e,t){return e.name==t.name?0:e.name{const y=e;null!==t&&(y.hasOwnProperty("decorators")&&void 0!==y.decorators?y.decorators.push(...t):y.decorators=t),null!==i&&(y.ctorParameters=i),null!==f&&(y.propDecorators=y.hasOwnProperty("propDecorators")&&void 0!==y.propDecorators?{...y.propDecorators,...f}:f)})}function pg(e,t,i){const f=dr()+e,y=dn();return y[f]===fi?To(y,f,i?t.call(i):t()):al(y,f)}function gg(e,t,i,f){return Eg(dn(),dr(),e,t,i,f)}function _g(e,t,i,f,y){return Dg(dn(),dr(),e,t,i,f,y)}function vg(e,t,i,f,y,I){return Tg(dn(),dr(),e,t,i,f,y,I)}function bg(e,t,i,f,y,I,B){return Sg(dn(),dr(),e,t,i,f,y,I,B)}function yg(e,t,i,f,y,I,B,K){const oe=dr()+e,xe=dn(),Ve=io(xe,oe,i,f,y,I);return Tr(xe,oe+4,B)||Ve?To(xe,oe+5,K?t.call(K,i,f,y,I,B):t(i,f,y,I,B)):al(xe,oe+5)}function Cg(e,t,i,f,y,I,B,K,oe){const xe=dr()+e,Ve=dn(),lt=io(Ve,xe,i,f,y,I);return Fs(Ve,xe+4,B,K)||lt?To(Ve,xe+6,oe?t.call(oe,i,f,y,I,B,K):t(i,f,y,I,B,K)):al(Ve,xe+6)}function xg(e,t,i,f,y,I,B,K,oe,xe){const Ve=dr()+e,lt=dn();let Pt=io(lt,Ve,i,f,y,I);return oc(lt,Ve+4,B,K,oe)||Pt?To(lt,Ve+7,xe?t.call(xe,i,f,y,I,B,K,oe):t(i,f,y,I,B,K,oe)):al(lt,Ve+7)}function Mg(e,t,i,f,y,I,B,K,oe,xe,Ve){const lt=dr()+e,Pt=dn(),jt=io(Pt,lt,i,f,y,I);return io(Pt,lt+4,B,K,oe,xe)||jt?To(Pt,lt+8,Ve?t.call(Ve,i,f,y,I,B,K,oe,xe):t(i,f,y,I,B,K,oe,xe)):al(Pt,lt+8)}function wg(e,t,i,f){return Ig(dn(),dr(),e,t,i,f)}function _l(e,t){const i=e[t];return i===fi?void 0:i}function Eg(e,t,i,f,y,I){const B=t+i;return Tr(e,B,y)?To(e,B+1,I?f.call(I,y):f(y)):_l(e,B+1)}function Dg(e,t,i,f,y,I,B){const K=t+i;return Fs(e,K,y,I)?To(e,K+2,B?f.call(B,y,I):f(y,I)):_l(e,K+2)}function Tg(e,t,i,f,y,I,B,K){const oe=t+i;return oc(e,oe,y,I,B)?To(e,oe+3,K?f.call(K,y,I,B):f(y,I,B)):_l(e,oe+3)}function Sg(e,t,i,f,y,I,B,K,oe){const xe=t+i;return io(e,xe,y,I,B,K)?To(e,xe+4,oe?f.call(oe,y,I,B,K):f(y,I,B,K)):_l(e,xe+4)}function Ig(e,t,i,f,y,I){let B=t+i,K=!1;for(let oe=0;oe=0;i--){const f=t[i];if(e===f.name)return f}}(t,i.pipeRegistry),i.data[y]=f,f.onDestroy&&(i.destroyHooks??=[]).push(y,f.onDestroy)):f=i.data[y];const I=f.factory||(f.factory=sr(f.type)),B=Lt(ha);try{const K=wi(!1),oe=I();return wi(K),Pp(i,dn(),y,oe),oe}finally{Lt(B)}}function kg(e,t,i){const f=e+ft,y=dn(),I=Ht(y,f);return vl(y,f)?Eg(y,dr(),t,I.transform,i,I):I.transform(i)}function Lg(e,t,i,f){const y=e+ft,I=dn(),B=Ht(I,y);return vl(I,y)?Dg(I,dr(),t,B.transform,i,f,B):B.transform(i,f)}function Rg(e,t,i,f,y){const I=e+ft,B=dn(),K=Ht(B,I);return vl(B,I)?Tg(B,dr(),t,K.transform,i,f,y,K):K.transform(i,f,y)}function Og(e,t,i,f,y,I){const B=e+ft,K=dn(),oe=Ht(K,B);return vl(K,B)?Sg(K,dr(),t,oe.transform,i,f,y,I,oe):oe.transform(i,f,y,I)}function Pg(e,t,i){const f=e+ft,y=dn(),I=Ht(y,f);return vl(y,f)?Ig(y,dr(),t,I.transform,i,I):I.transform.apply(I,i)}function vl(e,t){return e[rn].data[t].pure}function uh(e){return t=>{setTimeout(e,void 0,t)}}const Io=class Rx extends n.x{constructor(t=!1){super(),this.__isAsync=t}emit(t){super.next(t)}subscribe(t,i,f){let y=t,I=i||(()=>null),B=f;if(t&&"object"==typeof t){const oe=t;y=oe.next?.bind(oe),I=oe.error?.bind(oe),B=oe.complete?.bind(oe)}this.__isAsync&&(I=uh(I),y&&(y=uh(y)),B&&(B=uh(B)));const K=super.subscribe({next:y,error:I,complete:B});return t instanceof p.w0&&t.add(K),K}};function Ox(){return this._results[Symbol.iterator]()}class Mc{get changes(){return this._changes||(this._changes=new Io)}constructor(t=!1){this._emitDistinctChangesOnly=t,this.dirty=!0,this._results=[],this._changesDetected=!1,this._changes=null,this.length=0,this.first=void 0,this.last=void 0;const i=Mc.prototype;i[Symbol.iterator]||(i[Symbol.iterator]=Ox)}get(t){return this._results[t]}map(t){return this._results.map(t)}filter(t){return this._results.filter(t)}find(t){return this._results.find(t)}reduce(t,i){return this._results.reduce(t,i)}forEach(t){this._results.forEach(t)}some(t){return this._results.some(t)}toArray(){return this._results.slice()}toString(){return this._results.toString()}reset(t,i){const f=this;f.dirty=!1;const y=no(t);(this._changesDetected=!function Iv(e,t,i){if(e.length!==t.length)return!1;for(let f=0;f{class e{}return e.__NG_ELEMENT_ID__=Nx,e})();const Px=bl,Fx=class extends Px{constructor(t,i,f){super(),this._declarationLView=t,this._declarationTContainer=i,this.elementRef=f}get ssrId(){return this._declarationTContainer.tView?.ssrId||null}createEmbeddedView(t,i){return this.createEmbeddedViewImpl(t,i,null)}createEmbeddedViewImpl(t,i,f){const B=this._declarationTContainer.tView,K=ql(this._declarationLView,B,t,4096&this._declarationLView[xn]?4096:16,null,B.declTNode,null,null,null,i||null,f||null);K[Pn]=this._declarationLView[this._declarationTContainer.index];const xe=this._declarationLView[Vi];return null!==xe&&(K[Vi]=xe.createEmbeddedView(B)),zu(B,K,t),new ma(K)}};function Nx(){return wc(cr(),dn())}function wc(e,t){return 4&e.type?new Fx(t,e,ca(e,t)):null}function Fg(e){const t=e[zn]??[],f=e[ti][U];for(const y of t)Ux(y,f);e[zn]=Mn}function Ux(e,t){let i=0,f=e.firstChild;if(f){const y=e.data[el];for(;inull;function jx(e,t){const i=e[zn]??[];return t&&0!==i.length?i[0].data[bm]===t?i.shift():(Fg(e),null):null}function Ug(e,t){return Ng(e,t)}let Ec=(()=>{class e{}return e.__NG_ELEMENT_ID__=zx,e})();function zx(){return Vg(cr(),dn())}const Wx=Ec,Bg=class extends Wx{constructor(t,i,f){super(),this._lContainer=t,this._hostTNode=i,this._hostLView=f}get element(){return ca(this._hostTNode,this._hostLView)}get injector(){return new Qs(this._hostTNode,this._hostLView)}get parentInjector(){const t=ui(this._hostTNode,this._hostLView);if(Ui(t)){const i=qn(t,this._hostLView),f=Fn(t);return new Qs(i[rn].data[f+8],i)}return new Qs(null,this._hostLView)}clear(){for(;this.length>0;)this.remove(this.length-1)}get(t){const i=$g(this._lContainer);return null!==i&&i[t]||null}get length(){return this._lContainer.length-Vn}createEmbeddedView(t,i,f){let y,I;"number"==typeof f?y=f:null!=f&&(y=f.index,I=f.injector);const B=Ug(this._lContainer,t.ssrId),K=t.createEmbeddedViewImpl(i||{},I,B),oe=!!B&&!Rl(this._hostTNode);return this.insertImpl(K,y,oe),K}createComponent(t,i,f,y,I){const B=t&&!$a(t);let K;if(B)K=i;else{const vn=i||{};K=vn.index,f=vn.injector,y=vn.projectableNodes,I=vn.environmentInjector||vn.ngModuleRef}const oe=B?t:new pa(gn(t)),xe=f||this.parentInjector;if(!I&&null==oe.ngModule){const On=(B?xe:this.parentInjector).get(Ps,null);On&&(I=On)}const Ve=gn(oe.componentType??{}),lt=Ug(this._lContainer,Ve?.id??null),jt=oe.create(xe,y,lt?.firstChild??null,I),sn=!!lt&&!Rl(this._hostTNode);return this.insertImpl(jt.hostView,K,sn),jt}insert(t,i){return this.insertImpl(t,i,!1)}insertImpl(t,i,f){const y=t._lView,I=y[rn];if(function ji(e){return Mi(e[ti])}(y)){const oe=this.indexOf(t);if(-1!==oe)this.detach(oe);else{const xe=y[ti],Ve=new Bg(xe,xe[xi],xe[ti]);Ve.detach(Ve.indexOf(t))}}const B=this._adjustIndex(i),K=this._lContainer;if(function mb(e,t,i,f){const y=Vn+f,I=i.length;f>0&&(i[y-1][Ti]=t),f0&&(I.firstChild=e,e=lc(f[el],e)),i.push(I)}return[e,i]}(oe,xe);e[nn]=Ve,e[zn]=lt}class fh{constructor(t){this.queryList=t,this.matches=null}clone(){return new fh(this.queryList)}setDirty(){this.queryList.setDirty()}}class mh{constructor(t=[]){this.queries=t}createEmbeddedView(t){const i=t.queries;if(null!==i){const f=null!==t.contentQueries?t.contentQueries[0]:i.length,y=[];for(let I=0;I0)f.push(B[K/2]);else{const xe=I[K+1],Ve=t[-oe];for(let lt=Vn;lt({\u0275\u0275attribute:Yu,\u0275\u0275attributeInterpolate1:Zu,\u0275\u0275attributeInterpolate2:Qu,\u0275\u0275attributeInterpolate3:Xu,\u0275\u0275attributeInterpolate4:Ju,\u0275\u0275attributeInterpolate5:qu,\u0275\u0275attributeInterpolate6:ed,\u0275\u0275attributeInterpolate7:td,\u0275\u0275attributeInterpolate8:nd,\u0275\u0275attributeInterpolateV:id,\u0275\u0275defineComponent:Ft,\u0275\u0275defineDirective:zt,\u0275\u0275defineInjectable:St,\u0275\u0275defineInjector:xt,\u0275\u0275defineNgModule:ge,\u0275\u0275definePipe:an,\u0275\u0275directiveInject:ha,\u0275\u0275getInheritedFactory:zh,\u0275\u0275inject:ce,\u0275\u0275injectAttribute:Fc,\u0275\u0275invalidFactory:Zm,\u0275\u0275invalidFactoryDep:Ee,\u0275\u0275templateRefExtractor:qg,\u0275\u0275resetView:vs,\u0275\u0275HostDirectivesFeature:Mp,\u0275\u0275NgOnChangesFeature:bo,\u0275\u0275ProvidersFeature:ng,\u0275\u0275CopyDefinitionFeature:xp,\u0275\u0275InheritDefinitionFeature:Gu,\u0275\u0275InputTransformsFeature:Tp,\u0275\u0275StandaloneFeature:ag,\u0275\u0275nextContext:zp,\u0275\u0275namespaceHTML:br,\u0275\u0275namespaceMathML:Wi,\u0275\u0275namespaceSVG:Gn,\u0275\u0275enableBindings:Hs,\u0275\u0275disableBindings:rs,\u0275\u0275elementStart:cc,\u0275\u0275elementEnd:uc,\u0275\u0275element:dd,\u0275\u0275elementContainerStart:dc,\u0275\u0275elementContainerEnd:hc,\u0275\u0275elementContainer:hd,\u0275\u0275pureFunction0:pg,\u0275\u0275pureFunction1:gg,\u0275\u0275pureFunction2:_g,\u0275\u0275pureFunction3:vg,\u0275\u0275pureFunction4:bg,\u0275\u0275pureFunction5:yg,\u0275\u0275pureFunction6:Cg,\u0275\u0275pureFunction7:xg,\u0275\u0275pureFunction8:Mg,\u0275\u0275pureFunctionV:wg,\u0275\u0275getCurrentView:Bp,\u0275\u0275restoreView:_s,\u0275\u0275listener:md,\u0275\u0275projection:Gp,\u0275\u0275syntheticHostProperty:Qd,\u0275\u0275syntheticHostListener:pd,\u0275\u0275pipeBind1:kg,\u0275\u0275pipeBind2:Lg,\u0275\u0275pipeBind3:Rg,\u0275\u0275pipeBind4:Og,\u0275\u0275pipeBindV:Pg,\u0275\u0275projectionDef:Wp,\u0275\u0275hostProperty:Zd,\u0275\u0275property:cd,\u0275\u0275propertyInterpolate:gd,\u0275\u0275propertyInterpolate1:fc,\u0275\u0275propertyInterpolate2:_d,\u0275\u0275propertyInterpolate3:vd,\u0275\u0275propertyInterpolate4:bd,\u0275\u0275propertyInterpolate5:yd,\u0275\u0275propertyInterpolate6:Cd,\u0275\u0275propertyInterpolate7:xd,\u0275\u0275propertyInterpolate8:Md,\u0275\u0275propertyInterpolateV:wd,\u0275\u0275pipe:Ag,\u0275\u0275queryRefresh:Gg,\u0275\u0275viewQuery:Kg,\u0275\u0275loadQuery:Zg,\u0275\u0275contentQuery:Yg,\u0275\u0275reference:Fp,\u0275\u0275classMap:e0,\u0275\u0275classMapInterpolate1:u0,\u0275\u0275classMapInterpolate2:d0,\u0275\u0275classMapInterpolate3:h0,\u0275\u0275classMapInterpolate4:f0,\u0275\u0275classMapInterpolate5:m0,\u0275\u0275classMapInterpolate6:p0,\u0275\u0275classMapInterpolate7:g0,\u0275\u0275classMapInterpolate8:_0,\u0275\u0275classMapInterpolateV:v0,\u0275\u0275styleMap:fo,\u0275\u0275styleMapInterpolate1:b0,\u0275\u0275styleMapInterpolate2:y0,\u0275\u0275styleMapInterpolate3:C0,\u0275\u0275styleMapInterpolate4:x0,\u0275\u0275styleMapInterpolate5:M0,\u0275\u0275styleMapInterpolate6:w0,\u0275\u0275styleMapInterpolate7:E0,\u0275\u0275styleMapInterpolate8:D0,\u0275\u0275styleMapInterpolateV:T0,\u0275\u0275styleProp:Sd,\u0275\u0275stylePropInterpolate1:$d,\u0275\u0275stylePropInterpolate2:Vd,\u0275\u0275stylePropInterpolate3:jd,\u0275\u0275stylePropInterpolate4:Hd,\u0275\u0275stylePropInterpolate5:zd,\u0275\u0275stylePropInterpolate6:Wd,\u0275\u0275stylePropInterpolate7:Gd,\u0275\u0275stylePropInterpolate8:Kd,\u0275\u0275stylePropInterpolateV:Yd,\u0275\u0275classProp:Id,\u0275\u0275advance:jm,\u0275\u0275template:Lp,\u0275\u0275text:l0,\u0275\u0275textInterpolate:kd,\u0275\u0275textInterpolate1:gc,\u0275\u0275textInterpolate2:Ld,\u0275\u0275textInterpolate3:Rd,\u0275\u0275textInterpolate4:Od,\u0275\u0275textInterpolate5:Pd,\u0275\u0275textInterpolate6:Fd,\u0275\u0275textInterpolate7:Nd,\u0275\u0275textInterpolate8:Ud,\u0275\u0275textInterpolateV:Bd,\u0275\u0275i18n:X0,\u0275\u0275i18nAttributes:J0,\u0275\u0275i18nExp:ih,\u0275\u0275i18nStart:th,\u0275\u0275i18nEnd:nh,\u0275\u0275i18nApply:q0,\u0275\u0275i18nPostprocess:eg,\u0275\u0275resolveWindow:Rm,\u0275\u0275resolveDocument:Om,\u0275\u0275resolveBody:Lu,\u0275\u0275setComponentScope:Ae,\u0275\u0275setNgModuleScope:Ge,\u0275\u0275registerNgModuleType:Vc,\u0275\u0275sanitizeHtml:nm,\u0275\u0275sanitizeStyle:im,\u0275\u0275sanitizeResourceUrl:cu,\u0275\u0275sanitizeScript:rm,\u0275\u0275sanitizeUrl:lu,\u0275\u0275sanitizeUrlOrResourceUrl:am,\u0275\u0275trustConstantHtml:om,\u0275\u0275trustConstantResourceUrl:sm,\u0275\u0275validateIframeAttribute:zf,forwardRef:_,resolveForwardRef:M}))();let Ia=null;function iM(){Ia=null}function vh(e){return!!kn(e)}const yl=[];let bh=!1;function t_(){if(!bh){bh=!0;try{for(let e=yl.length-1;e>=0;e--){const{moduleType:t,ngModule:i}=yl[e];i.declarations&&i.declarations.every(n_)&&(yl.splice(e,1),lM(t,i))}}finally{bh=!1}}}function n_(e){return Array.isArray(e)?e.every(n_):!!M(e)}function i_(e,t={}){r_(e,t),void 0!==t.id&&Vc(e,t.id),function rM(e,t){yl.push({moduleType:e,ngModule:t})}(e,t)}function r_(e,t,i=!1){const f=no(t.declarations||Mn);let y=null;Object.defineProperty(e,Qi,{configurable:!0,get:()=>(null===y&&(y=pr().compileNgModule(Lr,`ng:///${e.name}/\u0275mod.js`,{type:e,bootstrap:no(t.bootstrap||Mn).map(M),declarations:f.map(M),imports:no(t.imports||Mn).map(M).map(a_),exports:no(t.exports||Mn).map(M).map(a_),schemas:t.schemas?no(t.schemas):null,id:t.id||null}),y.schemas||(y.schemas=[])),y)});let I=null;Object.defineProperty(e,wt,{get:()=>{if(null===I){const K=pr();I=K.compileFactory(Lr,`ng:///${e.name}/\u0275fac.js`,{name:e.name,type:e,deps:Il(e),target:K.FactoryTarget.NgModule,typeArgumentCount:0})}return I},configurable:!1});let B=null;Object.defineProperty(e,ee,{get:()=>{if(null===B){const K={name:e.name,type:e,providers:t.providers||Mn,imports:[(t.imports||Mn).map(M),(t.exports||Mn).map(M)]};B=pr().compileInjector(Lr,`ng:///${e.name}/\u0275inj.js`,K)}return B},configurable:!1})}let Dc=new WeakMap,Ch=new WeakMap;function aM(){Dc=new WeakMap,Ch=new WeakMap,yl.length=0,er.clear()}function lM(e,t){const i=no(t.declarations||Mn),f=$s(e);i.forEach(y=>{(y=M(y)).hasOwnProperty(Ci)?xh(gn(y),f):!y.hasOwnProperty(di)&&!y.hasOwnProperty(Li)&&(y.ngSelectorScope=e)})}function xh(e,t){e.directiveDefs=()=>Array.from(t.compilation.directives).map(i=>i.hasOwnProperty(Ci)?gn(i):pn(i)).filter(i=>!!i),e.pipeDefs=()=>Array.from(t.compilation.pipes).map(i=>Jn(i)),e.schemas=t.schemas,e.tView=null}function $s(e){if(vh(e))return function cM(e){const t=kn(e,!0);if(null!==t.transitiveCompileScopes)return t.transitiveCompileScopes;const i={schemas:t.schemas||null,compilation:{directives:new Set,pipes:new Set},exported:{directives:new Set,pipes:new Set}};return Vo(t.imports).forEach(f=>{const y=$s(f);y.exported.directives.forEach(I=>i.compilation.directives.add(I)),y.exported.pipes.forEach(I=>i.compilation.pipes.add(I))}),Vo(t.declarations).forEach(f=>{Jn(f)?i.compilation.pipes.add(f):i.compilation.directives.add(f)}),Vo(t.exports).forEach(f=>{const y=f;if(vh(y)){const I=$s(y);I.exported.directives.forEach(B=>{i.compilation.directives.add(B),i.exported.directives.add(B)}),I.exported.pipes.forEach(B=>{i.compilation.pipes.add(B),i.exported.pipes.add(B)})}else Jn(y)?i.exported.pipes.add(y):i.exported.directives.add(y)}),t.transitiveCompileScopes=i,i}(e);if(Nn(e)){if(null!==(gn(e)||pn(e)))return{schemas:null,compilation:{directives:new Set,pipes:new Set},exported:{directives:new Set([e]),pipes:new Set}};if(null!==Jn(e))return{schemas:null,compilation:{directives:new Set,pipes:new Set},exported:{directives:new Set,pipes:new Set([e])}}}throw new Error(`${e.name} does not have a module def (\u0275mod property)`)}function a_(e){return function e_(e){return void 0!==e.ngModule}(e)?e.ngModule:e}let Mh=0;function l_(e,t){let i=null;(function Uv(e,t){sf(t)&&(na.set(e,t),Ha.add(e))})(e,t),u_(e,t),Object.defineProperty(e,Ci,{get:()=>{if(null===i){const f=pr();if(sf(t)){const xe=[`Component '${e.name}' is not resolved:`];throw t.templateUrl&&xe.push(` - templateUrl: ${t.templateUrl}`),t.styleUrls&&t.styleUrls.length&&xe.push(` - styleUrls: ${JSON.stringify(t.styleUrls)}`),xe.push("Did you run and wait for 'resolveComponentResources()'?"),new Error(xe.join("\n"))}const y=function nM(){return Ia}();let I=t.preserveWhitespaces;void 0===I&&(I=null!==y&&void 0!==y.preserveWhitespaces&&y.preserveWhitespaces);let B=t.encapsulation;void 0===B&&(B=null!==y&&void 0!==y.defaultEncapsulation?y.defaultEncapsulation:Tn.Emulated);const K=t.templateUrl||`ng:///${e.name}/template.html`,oe={...d_(e,t),typeSourceSpan:f.createParseSourceSpan("Component",e.name,K),template:t.template||"",preserveWhitespaces:I,styles:t.styles||Mn,animations:t.animations,declarations:[],changeDetection:t.changeDetection,encapsulation:B,interpolation:t.interpolation,viewProviders:t.viewProviders||null};Mh++;try{if(oe.usesInheritance&&h_(e),i=f.compileComponent(Lr,K,oe),t.standalone){const xe=no(t.imports||Mn),{directiveDefs:Ve,pipeDefs:lt}=function dM(e,t){let i=null,f=null;return{directiveDefs:()=>{if(null===i){i=[gn(e)];const B=new Set([e]);for(const K of t){const oe=M(K);if(!B.has(oe))if(B.add(oe),kn(oe)){const xe=$s(oe);for(const Ve of xe.exported.directives){const lt=gn(Ve)||pn(Ve);lt&&!B.has(Ve)&&(B.add(Ve),i.push(lt))}}else{const xe=gn(oe)||pn(oe);xe&&i.push(xe)}}}return i},pipeDefs:()=>{if(null===f){f=[];const B=new Set;for(const K of t){const oe=M(K);if(!B.has(oe))if(B.add(oe),kn(oe)){const xe=$s(oe);for(const Ve of xe.exported.pipes){const lt=Jn(Ve);lt&&!B.has(Ve)&&(B.add(Ve),f.push(lt))}}else{const xe=Jn(oe);xe&&f.push(xe)}}}return f}}}(e,xe);i.directiveDefs=Ve,i.pipeDefs=lt,i.dependencies=()=>xe.map(M)}}finally{Mh--}if(0===Mh&&t_(),function hM(e){return void 0!==e.ngSelectorScope}(e)){const xe=$s(e.ngSelectorScope);xh(i,xe)}if(t.schemas){if(!t.standalone)throw new Error(`The 'schemas' was specified for the ${D(e)} but is only valid on a component that is standalone.`);i.schemas=t.schemas}else t.standalone&&(i.schemas=[])}return i},configurable:!1})}function wh(e,t){let i=null;u_(e,t||{}),Object.defineProperty(e,di,{get:()=>{if(null===i){const f=c_(e,t||{});i=pr().compileDirective(Lr,f.sourceMapUrl,f.metadata)}return i},configurable:!1})}function c_(e,t){const i=e&&e.name,f=`ng:///${i}/\u0275dir.js`,y=pr(),I=d_(e,t);return I.typeSourceSpan=y.createParseSourceSpan("Directive",i,f),I.usesInheritance&&h_(e),{metadata:I,sourceMapUrl:f}}function u_(e,t){let i=null;Object.defineProperty(e,wt,{get:()=>{if(null===i){const f=c_(e,t),y=pr();i=y.compileFactory(Lr,`ng:///${e.name}/\u0275fac.js`,{name:f.metadata.name,type:f.metadata.type,typeArgumentCount:0,deps:Il(e),target:y.FactoryTarget.Directive})}return i},configurable:!1})}function fM(e){return Object.getPrototypeOf(e.prototype)===Object.prototype}function d_(e,t){const i=$c(),f=i.ownPropMetadata(e);return{name:e.name,type:e,selector:void 0!==t.selector?t.selector:null,host:t.host||Sn,propMetadata:f,inputs:t.inputs||Mn,outputs:t.outputs||Mn,queries:f_(e,f,m_),lifecycle:{usesOnChanges:i.hasLifecycleHook(e,"ngOnChanges")},typeSourceSpan:null,usesInheritance:!fM(e),exportAs:gM(t.exportAs),providers:t.providers||null,viewQueries:f_(e,f,p_),isStandalone:!!t.standalone,isSignal:!!t.signals,hostDirectives:t.hostDirectives?.map(y=>"function"==typeof y?{directive:y}:y)||null}}function h_(e){const t=Object.prototype;let i=Object.getPrototypeOf(e.prototype).constructor;for(;i&&i!==t;)!pn(i)&&!gn(i)&&vM(i)&&wh(i,null),i=Object.getPrototypeOf(i)}function mM(e){return"string"==typeof e?__(e):M(e)}function pM(e,t){return{propertyName:e,predicate:mM(t.selector),descendants:t.descendants,first:t.first,read:t.read?t.read:null,static:!!t.static,emitDistinctChangesOnly:!!t.emitDistinctChangesOnly}}function f_(e,t,i){const f=[];for(const y in t)if(t.hasOwnProperty(y)){const I=t[y];I.forEach(B=>{if(i(B)){if(!B.selector)throw new Error(`Can't construct a query for the property "${y}" of "${D(e)}" since the query selector wasn't defined.`);if(I.some(g_))throw new Error("Cannot combine @Input decorators with query decorators");f.push(pM(y,B))}})}return f}function gM(e){return void 0===e?null:__(e)}function m_(e){const t=e.ngMetadataName;return"ContentChild"===t||"ContentChildren"===t}function p_(e){const t=e.ngMetadataName;return"ViewChild"===t||"ViewChildren"===t}function g_(e){return"Input"===e.ngMetadataName}function __(e){return e.split(",").map(t=>t.trim())}const _M=["ngOnChanges","ngOnInit","ngOnDestroy","ngDoCheck","ngAfterViewInit","ngAfterViewChecked","ngAfterContentInit","ngAfterContentChecked"];function vM(e){const t=$c();if(_M.some(f=>t.hasLifecycleHook(e,f)))return!0;const i=t.propMetadata(e);for(const f in i){const y=i[f];for(let I=0;I{if(null===f){const y=b_(e,t),I=pr();f=I.compileFactory(Lr,`ng:///${y.name}/\u0275fac.js`,{name:y.name,type:y.type,typeArgumentCount:0,deps:Il(e),target:I.FactoryTarget.Pipe})}return f},configurable:!1}),Object.defineProperty(e,Li,{get:()=>{if(null===i){const y=b_(e,t);i=pr().compilePipe(Lr,`ng:///${y.name}/\u0275pipe.js`,y)}return i},configurable:!1})}function b_(e,t){return{type:e,name:e.name,pipeName:t.name,pure:void 0===t.pure||t.pure,isStandalone:!!t.standalone}}const y_=Ua("Directive",(e={})=>e,void 0,void 0,(e,t)=>wh(e,t)),bM=Ua("Component",(e={})=>({changeDetection:wn.Default,...e}),y_,void 0,(e,t)=>l_(e,t)),yM=Ua("Pipe",e=>({pure:!0,...e}),void 0,void 0,(e,t)=>v_(e,t)),CM=ss("Input",e=>e?"string"==typeof e?{alias:e}:e:{}),xM=ss("Output",e=>({alias:e})),MM=ss("HostBinding",e=>({hostPropertyName:e})),wM=ss("HostListener",(e,t)=>({eventName:e,args:t})),EM=Ua("NgModule",e=>e,void 0,void 0,(e,t)=>i_(e,t)),C_=new Yi("Application Initializer");let Tc=(()=>{class e{constructor(){this.initialized=!1,this.done=!1,this.donePromise=new Promise((i,f)=>{this.resolve=i,this.reject=f}),this.appInits=it(C_,{optional:!0})??[]}runInitializers(){if(this.initialized)return;const i=[];for(const y of this.appInits){const I=y();if(fd(I))i.push(I);else if($p(I)){const B=new Promise((K,oe)=>{I.subscribe({complete:K,error:oe})});i.push(B)}}const f=()=>{this.done=!0,this.resolve()};Promise.all(i).then(()=>{f()}).catch(y=>{this.reject(y)}),0===i.length&&f(),this.initialized=!0}}return e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=St({token:e,factory:e.\u0275fac,providedIn:"root"}),e})(),x_=(()=>{class e{log(i){console.log(i)}warn(i){console.warn(i)}}return e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=St({token:e,factory:e.\u0275fac,providedIn:"platform"}),e})();const Sc=new Yi("LocaleId",{providedIn:"root",factory:()=>it(Sc,pe.Optional|pe.SkipSelf)||function DM(){return typeof $localize<"u"&&$localize.locale||Bs}()}),TM=new Yi("DefaultCurrencyCode",{providedIn:"root",factory:()=>"USD"}),SM=new Yi("Translations"),IM=new Yi("TranslationsFormat");var M_=function(e){return e[e.Error=0]="Error",e[e.Warning=1]="Warning",e[e.Ignore=2]="Ignore",e}(M_||{});let w_=(()=>{class e{constructor(){this.taskId=0,this.pendingTasks=new Set,this.hasPendingTasks=new C.X(!1)}add(){this.hasPendingTasks.next(!0);const i=this.taskId++;return this.pendingTasks.add(i),i}remove(i){this.pendingTasks.delete(i),0===this.pendingTasks.size&&this.hasPendingTasks.next(!1)}ngOnDestroy(){this.pendingTasks.clear(),this.hasPendingTasks.next(!1)}}return e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=St({token:e,factory:e.\u0275fac,providedIn:"root"}),e})();class E_{constructor(t,i){this.ngModuleFactory=t,this.componentFactories=i}}let AM=(()=>{class e{compileModuleSync(i){return new xc(i)}compileModuleAsync(i){return Promise.resolve(this.compileModuleSync(i))}compileModuleAndAllComponentsSync(i){const f=this.compileModuleSync(i),I=Vo(kn(i).declarations).reduce((B,K)=>{const oe=gn(K);return oe&&B.push(new pa(oe)),B},[]);return new E_(f,I)}compileModuleAndAllComponentsAsync(i){return Promise.resolve(this.compileModuleAndAllComponentsSync(i))}clearCache(){}clearCacheFor(i){}getModuleId(i){}}return e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=St({token:e,factory:e.\u0275fac,providedIn:"root"}),e})();const D_=new Yi("compilerOptions");class kM{}function LM(e){il(yf(e)),ug(e).forEach(t=>hp(t))}const T_="ng";let S_=!1;function RM(){S_||(S_=!0,ro("\u0275setProfiler",yo),ro("getDirectiveMetadata",Tx),ro("getComponent",lh),ro("getContext",lg),ro("getListeners",fg),ro("getOwningComponent",cg),ro("getHostElement",ch),ro("getInjector",dg),ro("getRootComponents",ug),ro("getDirectives",hg),ro("applyChanges",LM))}function ro(e,t){if((typeof COMPILED>"u"||!COMPILED)&&ze){let f=ze[T_];f||(f=ze[T_]={}),f[e]=t}}function I_(...e){}class Rr{constructor({enableLongStackTrace:t=!1,shouldCoalesceEventChangeDetection:i=!1,shouldCoalesceRunChangeDetection:f=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new Io(!1),this.onMicrotaskEmpty=new Io(!1),this.onStable=new Io(!1),this.onError=new Io(!1),typeof Zone>"u")throw new T(908,!1);Zone.assertZonePatched();const y=this;y._nesting=0,y._outer=y._inner=Zone.current,Zone.TaskTrackingZoneSpec&&(y._inner=y._inner.fork(new Zone.TaskTrackingZoneSpec)),t&&Zone.longStackTraceZoneSpec&&(y._inner=y._inner.fork(Zone.longStackTraceZoneSpec)),y.shouldCoalesceEventChangeDetection=!f&&i,y.shouldCoalesceRunChangeDetection=f,y.lastRequestAnimationFrameId=-1,y.nativeRequestAnimationFrame=function OM(){const e="function"==typeof ze.requestAnimationFrame;let t=ze[e?"requestAnimationFrame":"setTimeout"],i=ze[e?"cancelAnimationFrame":"clearTimeout"];if(typeof Zone<"u"&&t&&i){const f=t[Zone.__symbol__("OriginalDelegate")];f&&(t=f);const y=i[Zone.__symbol__("OriginalDelegate")];y&&(i=y)}return{nativeRequestAnimationFrame:t,nativeCancelAnimationFrame:i}}().nativeRequestAnimationFrame,function NM(e){const t=()=>{!function FM(e){e.isCheckStableRunning||-1!==e.lastRequestAnimationFrameId||(e.lastRequestAnimationFrameId=e.nativeRequestAnimationFrame.call(ze,()=>{e.fakeTopEventTask||(e.fakeTopEventTask=Zone.root.scheduleEventTask("fakeTopEventTask",()=>{e.lastRequestAnimationFrameId=-1,Dh(e),e.isCheckStableRunning=!0,Eh(e),e.isCheckStableRunning=!1},void 0,()=>{},()=>{})),e.fakeTopEventTask.invoke()}),Dh(e))}(e)};e._inner=e._inner.fork({name:"angular",properties:{isAngularZone:!0},onInvokeTask:(i,f,y,I,B,K)=>{try{return A_(e),i.invokeTask(y,I,B,K)}finally{(e.shouldCoalesceEventChangeDetection&&"eventTask"===I.type||e.shouldCoalesceRunChangeDetection)&&t(),k_(e)}},onInvoke:(i,f,y,I,B,K,oe)=>{try{return A_(e),i.invoke(y,I,B,K,oe)}finally{e.shouldCoalesceRunChangeDetection&&t(),k_(e)}},onHasTask:(i,f,y,I)=>{i.hasTask(y,I),f===y&&("microTask"==I.change?(e._hasPendingMicrotasks=I.microTask,Dh(e),Eh(e)):"macroTask"==I.change&&(e.hasPendingMacrotasks=I.macroTask))},onHandleError:(i,f,y,I)=>(i.handleError(y,I),e.runOutsideAngular(()=>e.onError.emit(I)),!1)})}(y)}static isInAngularZone(){return typeof Zone<"u"&&!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!Rr.isInAngularZone())throw new T(909,!1)}static assertNotInAngularZone(){if(Rr.isInAngularZone())throw new T(909,!1)}run(t,i,f){return this._inner.run(t,i,f)}runTask(t,i,f,y){const I=this._inner,B=I.scheduleEventTask("NgZoneEvent: "+y,t,PM,I_,I_);try{return I.runTask(B,i,f)}finally{I.cancelTask(B)}}runGuarded(t,i,f){return this._inner.runGuarded(t,i,f)}runOutsideAngular(t){return this._outer.run(t)}}const PM={};function Eh(e){if(0==e._nesting&&!e.hasPendingMicrotasks&&!e.isStable)try{e._nesting++,e.onMicrotaskEmpty.emit(null)}finally{if(e._nesting--,!e.hasPendingMicrotasks)try{e.runOutsideAngular(()=>e.onStable.emit(null))}finally{e.isStable=!0}}}function Dh(e){e.hasPendingMicrotasks=!!(e._hasPendingMicrotasks||(e.shouldCoalesceEventChangeDetection||e.shouldCoalesceRunChangeDetection)&&-1!==e.lastRequestAnimationFrameId)}function A_(e){e._nesting++,e.isStable&&(e.isStable=!1,e.onUnstable.emit(null))}function k_(e){e._nesting--,Eh(e)}class L_{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Io,this.onMicrotaskEmpty=new Io,this.onStable=new Io,this.onError=new Io}run(t,i,f){return t.apply(i,f)}runGuarded(t,i,f){return t.apply(i,f)}runOutsideAngular(t){return t()}runTask(t,i,f,y){return t.apply(i,f)}}const R_=new Yi("",{providedIn:"root",factory:O_});function O_(){const e=it(Rr);let t=!0;const i=new b.y(y=>{t=e.isStable&&!e.hasPendingMacrotasks&&!e.hasPendingMicrotasks,e.runOutsideAngular(()=>{y.next(t),y.complete()})}),f=new b.y(y=>{let I;e.runOutsideAngular(()=>{I=e.onStable.subscribe(()=>{Rr.assertNotInAngularZone(),queueMicrotask(()=>{!t&&!e.hasPendingMacrotasks&&!e.hasPendingMicrotasks&&(t=!0,y.next(!0))})})});const B=e.onUnstable.subscribe(()=>{Rr.assertInAngularZone(),t&&(t=!1,e.runOutsideAngular(()=>{y.next(!1)}))});return()=>{I.unsubscribe(),B.unsubscribe()}});return(0,o.T)(i,f.pipe((0,a.B)()))}const P_=new Yi(""),F_=new Yi("");let UM=(()=>{class e{constructor(i,f,y){this._ngZone=i,this.registry=f,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,Th||(U_(y),y.addToWindow(f)),this._watchAngularEvents(),i.run(()=>{this.taskTrackingZone=typeof Zone>"u"?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{Rr.assertNotInAngularZone(),queueMicrotask(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())queueMicrotask(()=>{for(;0!==this._callbacks.length;){let i=this._callbacks.pop();clearTimeout(i.timeoutId),i.doneCb(this._didWork)}this._didWork=!1});else{let i=this.getPendingTasks();this._callbacks=this._callbacks.filter(f=>!f.updateCb||!f.updateCb(i)||(clearTimeout(f.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(i=>({source:i.source,creationLocation:i.creationLocation,data:i.data})):[]}addCallback(i,f,y){let I=-1;f&&f>0&&(I=setTimeout(()=>{this._callbacks=this._callbacks.filter(B=>B.timeoutId!==I),i(this._didWork,this.getPendingTasks())},f)),this._callbacks.push({doneCb:i,timeoutId:I,updateCb:y})}whenStable(i,f,y){if(y&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/plugins/task-tracking" loaded?');this.addCallback(i,f,y),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}registerApplication(i){this.registry.registerApplication(i,this)}unregisterApplication(i){this.registry.unregisterApplication(i)}findProviders(i,f,y){return[]}}return e.\u0275fac=function(i){return new(i||e)(ce(Rr),ce(N_),ce(F_))},e.\u0275prov=St({token:e,factory:e.\u0275fac}),e})(),N_=(()=>{class e{constructor(){this._applications=new Map}registerApplication(i,f){this._applications.set(i,f)}unregisterApplication(i){this._applications.delete(i)}unregisterAllApplications(){this._applications.clear()}getTestability(i){return this._applications.get(i)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(i,f=!0){return Th?.findTestabilityInTree(this,i,f)??null}}return e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=St({token:e,factory:e.\u0275fac,providedIn:"platform"}),e})();function U_(e){Th=e}let Th,cs=null;const Sh=new Yi("AllowMultipleToken"),Ih=new Yi("PlatformDestroyListeners"),Ah=new Yi("appBootstrapListener");function B_(e,t,i){const f=new xc(i);return Promise.resolve(f)}function $_(){!function Xo(e){Ao=e}(()=>{throw new T(600,!1)})}function V_(e){return e.isBoundToModule}class BM{constructor(t,i){this.name=t,this.token=i}}function j_(e){if(cs&&!cs.get(Sh,!1))throw new T(400,!1);$_(),cs=e;const t=e.get(kh);return H_(e),t}function H_(e){e.get(_m,null)?.forEach(i=>i())}function VM(e){try{const{rootComponent:t,appProviders:i,platformProviders:f}=e,y=function $M(e=[]){if(cs)return cs;const t=G_(e);return cs=t,$_(),H_(t),t}(f),I=[q_(),...i||[]],K=new og({providers:I,parent:y,debugName:"",runEnvironmentInitializers:!1}).injector,oe=K.get(Rr);return oe.run(()=>{K.resolveInjectorInitializers();const xe=K.get(ua,null);let Ve;oe.runOutsideAngular(()=>{Ve=oe.onError.subscribe({next:jt=>{xe.handleError(jt)}})});const lt=()=>K.destroy(),Pt=y.get(Ih);return Pt.add(lt),K.onDestroy(()=>{Ve.unsubscribe(),Pt.delete(lt)}),Y_(xe,oe,()=>{const jt=K.get(Tc);return jt.runInitializers(),jt.donePromise.then(()=>{Jd(K.get(Sc,Bs)||Bs);const vn=K.get(Aa);return void 0!==t&&vn.bootstrap(t),vn})})})}catch(t){return Promise.reject(t)}}function z_(e,t,i=[]){const f=`Platform: ${t}`,y=new Yi(f);return(I=[])=>{let B=Ic();if(!B||B.injector.get(Sh,!1)){const K=[...i,...I,{provide:y,useValue:!0}];e?e(K):j_(G_(K,f))}return W_()}}function W_(e){const t=Ic();if(!t)throw new T(401,!1);return t}function G_(e=[],t){return as.create({name:t,providers:[{provide:pu,useValue:"platform"},{provide:Ih,useValue:new Set([()=>cs=null])},...e]})}function jM(){Ic()?.destroy()}function Ic(){return cs?.get(kh)??null}let kh=(()=>{class e{constructor(i){this._injector=i,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(i,f){const y=function HM(e="zone.js",t){return"noop"===e?new L_:"zone.js"===e?new Rr(t):e}(f?.ngZone,K_({eventCoalescing:f?.ngZoneEventCoalescing,runCoalescing:f?.ngZoneRunCoalescing}));return y.run(()=>{const I=function wx(e,t,i){return new Cc(e,t,i)}(i.moduleType,this.injector,J_(()=>y)),B=I.injector.get(ua,null);return y.runOutsideAngular(()=>{const K=y.onError.subscribe({next:oe=>{B.handleError(oe)}});I.onDestroy(()=>{Ac(this._modules,I),K.unsubscribe()})}),Y_(B,y,()=>{const K=I.injector.get(Tc);return K.runInitializers(),K.donePromise.then(()=>(Jd(I.injector.get(Sc,Bs)||Bs),this._moduleDoBootstrap(I),I))})})}bootstrapModule(i,f=[]){const y=Z_({},f);return B_(0,0,i).then(I=>this.bootstrapModuleFactory(I,y))}_moduleDoBootstrap(i){const f=i.injector.get(Aa);if(i._bootstrapComponents.length>0)i._bootstrapComponents.forEach(y=>f.bootstrap(y));else{if(!i.instance.ngDoBootstrap)throw new T(-403,!1);i.instance.ngDoBootstrap(f)}this._modules.push(i)}onDestroy(i){this._destroyListeners.push(i)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new T(404,!1);this._modules.slice().forEach(f=>f.destroy()),this._destroyListeners.forEach(f=>f());const i=this._injector.get(Ih,null);i&&(i.forEach(f=>f()),i.clear()),this._destroyed=!0}get destroyed(){return this._destroyed}}return e.\u0275fac=function(i){return new(i||e)(ce(as))},e.\u0275prov=St({token:e,factory:e.\u0275fac,providedIn:"platform"}),e})();function K_(e){return{enableLongStackTrace:!1,shouldCoalesceEventChangeDetection:e?.eventCoalescing??!1,shouldCoalesceRunChangeDetection:e?.runCoalescing??!1}}function Y_(e,t,i){try{const f=i();return fd(f)?f.catch(y=>{throw t.runOutsideAngular(()=>e.handleError(y)),y}):f}catch(f){throw t.runOutsideAngular(()=>e.handleError(f)),f}}function Z_(e,t){return Array.isArray(t)?t.reduce(Z_,e):{...e,...t}}let Aa=(()=>{class e{constructor(){this._bootstrapListeners=[],this._runningTick=!1,this._destroyed=!1,this._destroyListeners=[],this._views=[],this.internalErrorHandler=it(X_),this.zoneIsStable=it(R_),this.componentTypes=[],this.components=[],this.isStable=it(w_).hasPendingTasks.pipe((0,c.w)(i=>i?(0,v.of)(!1):this.zoneIsStable),(0,s.x)(),(0,a.B)()),this._injector=it(Ps)}get destroyed(){return this._destroyed}get injector(){return this._injector}bootstrap(i,f){const y=i instanceof Ql;if(!this._injector.get(Tc).done)throw!y&&Nn(i),new T(405,!1);let B;B=y?i:this._injector.get(tl).resolveComponentFactory(i),this.componentTypes.push(B.componentType);const K=V_(B)?void 0:this._injector.get(Sa),xe=B.create(as.NULL,[],f||B.selector,K),Ve=xe.location.nativeElement,lt=xe.injector.get(P_,null);return lt?.registerApplication(Ve),xe.onDestroy(()=>{this.detachView(xe.hostView),Ac(this.components,xe),lt?.unregisterApplication(Ve)}),this._loadComponent(xe),xe}tick(){if(this._runningTick)throw new T(101,!1);try{this._runningTick=!0;for(let i of this._views)i.detectChanges()}catch(i){this.internalErrorHandler(i)}finally{this._runningTick=!1}}attachView(i){const f=i;this._views.push(f),f.attachToAppRef(this)}detachView(i){const f=i;Ac(this._views,f),f.detachFromAppRef()}_loadComponent(i){this.attachView(i.hostView),this.tick(),this.components.push(i);const f=this._injector.get(Ah,[]);f.push(...this._bootstrapListeners),f.forEach(y=>y(i))}ngOnDestroy(){if(!this._destroyed)try{this._destroyListeners.forEach(i=>i()),this._views.slice().forEach(i=>i.destroy())}finally{this._destroyed=!0,this._views=[],this._bootstrapListeners=[],this._destroyListeners=[]}}onDestroy(i){return this._destroyListeners.push(i),()=>Ac(this._destroyListeners,i)}destroy(){if(this._destroyed)throw new T(406,!1);const i=this._injector;i.destroy&&!i.destroyed&&i.destroy()}get viewCount(){return this._views.length}warnIfDestroyed(){}}return e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=St({token:e,factory:e.\u0275fac,providedIn:"root"}),e})();function Ac(e,t){const i=e.indexOf(t);i>-1&&e.splice(i,1)}const X_=new Yi("",{providedIn:"root",factory:()=>it(ua).handleError.bind(void 0)});function zM(){const e=it(Rr),t=it(ua);return i=>e.runOutsideAngular(()=>t.handleError(i))}let WM=(()=>{class e{constructor(){this.zone=it(Rr),this.applicationRef=it(Aa)}initialize(){this._onMicrotaskEmptySubscription||(this._onMicrotaskEmptySubscription=this.zone.onMicrotaskEmpty.subscribe({next:()=>{this.zone.run(()=>{this.applicationRef.tick()})}}))}ngOnDestroy(){this._onMicrotaskEmptySubscription?.unsubscribe()}}return e.\u0275fac=function(i){return new(i||e)},e.\u0275prov=St({token:e,factory:e.\u0275fac,providedIn:"root"}),e})();function J_(e){return[{provide:Rr,useFactory:e},{provide:Xa,multi:!0,useFactory:()=>{const t=it(WM,{optional:!0});return()=>t.initialize()}},{provide:X_,useFactory:zM},{provide:R_,useFactory:O_}]}function q_(e){return du([[],J_(()=>new Rr(K_(e)))])}function GM(){return!1}function KM(){}function YM(e){const t=cf(e);if(!t)throw ev(e);return new xc(t)}function ZM(e){const t=cf(e);if(!t)throw ev(e);return t}function ev(e){return new Error(`No module with ID ${e} loaded`)}let tv=(()=>{class e{}return e.__NG_ELEMENT_ID__=nv,e})();function nv(e){return function QM(e,t,i){if(Xn(e)&&!i){const f=Zt(e.index,t);return new ma(f,f)}return 47&e.type?new ma(t[Gt],t):null}(cr(),dn(),16==(16&e))}class iv extends tv{}class XM extends iv{}class JM{constructor(t,i){this.name=t,this.callback=i}}function qM(e){return e.map(t=>t.nativeElement)}class Lh{constructor(t){this.nativeNode=t}get parent(){const t=this.nativeNode.parentNode;return t?new Cl(t):null}get injector(){return dg(this.nativeNode)}get componentInstance(){const t=this.nativeNode;return t&&(lh(t)||cg(t))}get context(){return lh(this.nativeNode)||lg(this.nativeNode)}get listeners(){return fg(this.nativeNode).filter(t=>"dom"===t.type)}get references(){return function Sx(e){const t=kr(e);if(null===t)return{};if(void 0===t.localRefs){const i=t.lView;if(null===i)return{};t.localRefs=function sb(e,t){const i=e[rn].data[t];if(i&&i.localNames){const f={};let y=i.index+1;for(let I=0;I1){let Ve=oe[1];for(let lt=1;ltt[I]=!0),t}get childNodes(){const t=this.nativeNode.childNodes,i=[];for(let f=0;f{if(I.name===t){const B=I.callback;B.call(f,i),y.push(B)}}),"function"==typeof f.eventListeners&&f.eventListeners(t).forEach(I=>{if(-1!==I.toString().indexOf("__ngUnwrap__")){const B=I("__ngUnwrap__");return-1===y.indexOf(B)&&B.call(f,i)}})}}function tw(e){return"string"==typeof e||"boolean"==typeof e||"number"==typeof e||null===e}function rv(e,t,i,f){const y=kr(e.nativeNode),I=y?y.lView:null;null!==I?Vs(I[rn].data[y.nodeIndex],I,t,i,f,e.nativeNode):Oh(e.nativeNode,t,i,f)}function Vs(e,t,i,f,y,I){const B=function Fe(e,t){const i=null===e?-1:e.index;return-1!==i?Oi(t[i]):null}(e,t);if(11&e.type){if(Rh(B,i,f,y,I),Xn(e)){const oe=Zt(e.index,t);oe&&oe[rn].firstChild&&Vs(oe[rn].firstChild,oe,i,f,y,I)}else e.child&&Vs(e.child,t,i,f,y,I),B&&Oh(B,i,f,y);const K=t[e.index];Mi(K)&&ov(K,i,f,y,I)}else if(4&e.type){const K=t[e.index];Rh(K[nn],i,f,y,I),ov(K,i,f,y,I)}else if(16&e.type){const K=t[Gt],xe=K[xi].projection[e.projection];if(Array.isArray(xe))for(let Ve of xe)Rh(Ve,i,f,y,I);else if(xe){const Ve=K[ti];Vs(Ve[rn].data[xe.index],Ve,i,f,y,I)}}else e.child&&Vs(e.child,t,i,f,y,I);if(I!==B){const K=2&e.flags?e.projectionNext:e.next;K&&Vs(K,t,i,f,y,I)}}function ov(e,t,i,f,y){for(let I=Vn;It;class av{constructor(t){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=t||iw}forEachItem(t){let i;for(i=this._itHead;null!==i;i=i._next)t(i)}forEachOperation(t){let i=this._itHead,f=this._removalsHead,y=0,I=null;for(;i||f;){const B=!f||i&&i.currentIndex{B=this._trackByFn(y,K),null!==i&&Object.is(i.trackById,B)?(f&&(i=this._verifyReinsertion(i,K,B,y)),Object.is(i.item,K)||this._addIdentityChange(i,K)):(i=this._mismatch(i,K,B,y),f=!0),i=i._next,y++}),this.length=y;return this._truncate(i),this.collection=t,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let t;for(t=this._previousItHead=this._itHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._additionsHead;null!==t;t=t._nextAdded)t.previousIndex=t.currentIndex;for(this._additionsHead=this._additionsTail=null,t=this._movesHead;null!==t;t=t._nextMoved)t.previousIndex=t.currentIndex;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(t,i,f,y){let I;return null===t?I=this._itTail:(I=t._prev,this._remove(t)),null!==(t=null===this._unlinkedRecords?null:this._unlinkedRecords.get(f,null))?(Object.is(t.item,i)||this._addIdentityChange(t,i),this._reinsertAfter(t,I,y)):null!==(t=null===this._linkedRecords?null:this._linkedRecords.get(f,y))?(Object.is(t.item,i)||this._addIdentityChange(t,i),this._moveAfter(t,I,y)):t=this._addAfter(new rw(i,f),I,y),t}_verifyReinsertion(t,i,f,y){let I=null===this._unlinkedRecords?null:this._unlinkedRecords.get(f,null);return null!==I?t=this._reinsertAfter(I,t._prev,y):t.currentIndex!=y&&(t.currentIndex=y,this._addToMoves(t,y)),t}_truncate(t){for(;null!==t;){const i=t._next;this._addToRemovals(this._unlink(t)),t=i}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(t,i,f){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(t);const y=t._prevRemoved,I=t._nextRemoved;return null===y?this._removalsHead=I:y._nextRemoved=I,null===I?this._removalsTail=y:I._prevRemoved=y,this._insertAfter(t,i,f),this._addToMoves(t,f),t}_moveAfter(t,i,f){return this._unlink(t),this._insertAfter(t,i,f),this._addToMoves(t,f),t}_addAfter(t,i,f){return this._insertAfter(t,i,f),this._additionsTail=null===this._additionsTail?this._additionsHead=t:this._additionsTail._nextAdded=t,t}_insertAfter(t,i,f){const y=null===i?this._itHead:i._next;return t._next=y,t._prev=i,null===y?this._itTail=t:y._prev=t,null===i?this._itHead=t:i._next=t,null===this._linkedRecords&&(this._linkedRecords=new lv),this._linkedRecords.put(t),t.currentIndex=f,t}_remove(t){return this._addToRemovals(this._unlink(t))}_unlink(t){null!==this._linkedRecords&&this._linkedRecords.remove(t);const i=t._prev,f=t._next;return null===i?this._itHead=f:i._next=f,null===f?this._itTail=i:f._prev=i,t}_addToMoves(t,i){return t.previousIndex===i||(this._movesTail=null===this._movesTail?this._movesHead=t:this._movesTail._nextMoved=t),t}_addToRemovals(t){return null===this._unlinkedRecords&&(this._unlinkedRecords=new lv),this._unlinkedRecords.put(t),t.currentIndex=null,t._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=t,t._prevRemoved=null):(t._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=t),t}_addIdentityChange(t,i){return t.item=i,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=t:this._identityChangesTail._nextIdentityChange=t,t}}class rw{constructor(t,i){this.item=t,this.trackById=i,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null}}class ow{constructor(){this._head=null,this._tail=null}add(t){null===this._head?(this._head=this._tail=t,t._nextDup=null,t._prevDup=null):(this._tail._nextDup=t,t._prevDup=this._tail,t._nextDup=null,this._tail=t)}get(t,i){let f;for(f=this._head;null!==f;f=f._nextDup)if((null===i||i<=f.currentIndex)&&Object.is(f.trackById,t))return f;return null}remove(t){const i=t._prevDup,f=t._nextDup;return null===i?this._head=f:i._nextDup=f,null===f?this._tail=i:f._prevDup=i,null===this._head}}class lv{constructor(){this.map=new Map}put(t){const i=t.trackById;let f=this.map.get(i);f||(f=new ow,this.map.set(i,f)),f.add(t)}get(t,i){const y=this.map.get(t);return y?y.get(t,i):null}remove(t){const i=t.trackById;return this.map.get(i).remove(t)&&this.map.delete(i),t}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function cv(e,t,i){const f=e.previousIndex;if(null===f)return f;let y=0;return i&&f{if(i&&i.key===y)this._maybeAddToChanges(i,f),this._appendAfter=i,i=i._next;else{const I=this._getOrCreateRecordForKey(y,f);i=this._insertBeforeOrAppend(i,I)}}),i){i._prev&&(i._prev._next=null),this._removalsHead=i;for(let f=i;null!==f;f=f._nextRemoved)f===this._mapHead&&(this._mapHead=null),this._records.delete(f.key),f._nextRemoved=f._next,f.previousValue=f.currentValue,f.currentValue=null,f._prev=null,f._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(t,i){if(t){const f=t._prev;return i._next=t,i._prev=f,t._prev=i,f&&(f._next=i),t===this._mapHead&&(this._mapHead=i),this._appendAfter=t,t}return this._appendAfter?(this._appendAfter._next=i,i._prev=this._appendAfter):this._mapHead=i,this._appendAfter=i,null}_getOrCreateRecordForKey(t,i){if(this._records.has(t)){const y=this._records.get(t);this._maybeAddToChanges(y,i);const I=y._prev,B=y._next;return I&&(I._next=B),B&&(B._prev=I),y._next=null,y._prev=null,y}const f=new aw(t);return this._records.set(t,f),f.currentValue=i,this._addToAdditions(f),f}_reset(){if(this.isDirty){let t;for(this._previousMapHead=this._mapHead,t=this._previousMapHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._changesHead;null!==t;t=t._nextChanged)t.previousValue=t.currentValue;for(t=this._additionsHead;null!=t;t=t._nextAdded)t.previousValue=t.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(t,i){Object.is(i,t.currentValue)||(t.previousValue=t.currentValue,t.currentValue=i,this._addToChanges(t))}_addToAdditions(t){null===this._additionsHead?this._additionsHead=this._additionsTail=t:(this._additionsTail._nextAdded=t,this._additionsTail=t)}_addToChanges(t){null===this._changesHead?this._changesHead=this._changesTail=t:(this._changesTail._nextChanged=t,this._changesTail=t)}_forEach(t,i){t instanceof Map?t.forEach(i):Object.keys(t).forEach(f=>i(t[f],f))}}class aw{constructor(t){this.key=t,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}function dv(){return new Nh([new sv])}let Nh=(()=>{class e{constructor(i){this.factories=i}static create(i,f){if(null!=f){const y=f.factories.slice();i=i.concat(y)}return new e(i)}static extend(i){return{provide:e,useFactory:f=>e.create(i,f||dv()),deps:[[e,new Sl,new Tl]]}}find(i){const f=this.factories.find(y=>y.supports(i));if(null!=f)return f;throw new T(901,!1)}}return e.\u0275prov=St({token:e,providedIn:"root",factory:dv}),e})();function hv(){return new Uh([new uv])}let Uh=(()=>{class e{constructor(i){this.factories=i}static create(i,f){if(f){const y=f.factories.slice();i=i.concat(y)}return new e(i)}static extend(i){return{provide:e,useFactory:f=>e.create(i,f||hv()),deps:[[e,new Sl,new Tl]]}}find(i){const f=this.factories.find(y=>y.supports(i));if(f)return f;throw new T(901,!1)}}return e.\u0275prov=St({token:e,providedIn:"root",factory:hv}),e})();const lw=[new uv],uw=new Nh([new sv]),dw=new Uh(lw),hw=z_(null,"core",[]);let fw=(()=>{class e{constructor(i){}}return e.\u0275fac=function(i){return new(i||e)(ce(Aa))},e.\u0275mod=ge({type:e}),e.\u0275inj=xt({}),e})();class mw{constructor(){this.views=[],this.indexByContent=new Map}add(t){const i=JSON.stringify(t);if(!this.indexByContent.has(i)){const f=this.views.length;return this.views.push(t),this.indexByContent.set(i,f),f}return this.indexByContent.get(i)}getAll(){return this.views}}let pw=0;function fv(e){return e.ssrId||(e.ssrId="t"+pw++),e.ssrId}function mv(e,t,i){const f=[];return sl(e,t,i,f),f.length}function gw(e,t){const i=new mw,f=new Map,y=e._views;for(const K of y){const oe=xm(K);if(null!==oe){const xe=oe[yn];xe&&!xe.hasAttribute(ia)&&($h(xe,oe,{serializedViewCollection:i,corruptedTextNodes:f}),bw(f,t))}}const I=i.getAll();e.injector.get(Ja).set(Du,I)}function _w(e,t){const i=[];let f="";for(let y=Vn;y0&&Ve===f){const lt=i[i.length-1];lt[Kl]??=1,lt[Kl]++}else f=Ve,i.push(xe)}return i}function Bh(e,t,i){const f=t.index-ft;e[Eu]??={},e[Eu][f]=H1(t,i)}function pv(e,t){const i=t.index-ft;e[Yl]??=[],e[Yl].includes(i)||e[Yl].push(i)}function gv(e,t){const i={},f=e[rn];for(let y=ft;y{let e=!0;return kc()&&(e=!!it(Ja,{optional:!0})?.get(Du,null)),e&&it(vm).add("hydration"),e}},{provide:Xa,useValue:()=>{kc()&&it(rl)&&function Cw(){vv||(vv=!0,function cy(){ym=ly}(),function Z1(){Np=Y1}(),function MC(){c0=xC}(),function J1(){Up=X1}(),function G1(){Rp=W1}(),function Yx(){jg=Kx}(),function Hx(){Ng=jx}(),function Ny(){Jm=Fy}())}()},multi:!0},{provide:Lm,useFactory:()=>kc()&&it(rl)},{provide:Ah,useFactory:()=>{if(kc()&&it(rl)){const e=it(Aa);return it(as),()=>{(function xw(e,t){return e.isStable.pipe((0,l.P)(f=>f)).toPromise().then(()=>{})})(e).then(()=>{!function $x(e){const t=e._views;for(const i of t){const f=xm(i);null!==f&&null!==f[yn]&&dh(f)}}(e)})}}return()=>{}},multi:!0}])}function ww(e){return"boolean"==typeof e?e:null!=e&&"false"!==e}function Ew(e,t=NaN){return isNaN(parseFloat(e))||isNaN(Number(e))?t:Number(e)}function Dw(e){return pr().compileDirectiveDeclaration(Lr,`ng:///${e.type.name}/\u0275fac.js`,e)}function Tw(e){mg(e.type,e.decorators,e.ctorParameters??null,e.propDecorators??null)}function Sw(e){return pr().compileComponentDeclaration(Lr,`ng:///${e.type.name}/\u0275cmp.js`,e)}function Iw(e){return pr(function Aw(e){switch(e){case As.Directive:return"directive";case As.Component:return"component";case As.Injectable:return"injectable";case As.Pipe:return"pipe";case As.NgModule:return"NgModule"}}(e.target)).compileFactoryDeclaration(Lr,`ng:///${e.type.name}/\u0275fac.js`,e)}function kw(e){return pr().compileInjectableDeclaration(Lr,`ng:///${e.type.name}/\u0275prov.js`,e)}function Lw(e){return pr().compileInjectorDeclaration(Lr,`ng:///${e.type.name}/\u0275inj.js`,e)}function Rw(e){return pr().compileNgModuleDeclaration(Lr,`ng:///${e.type.name}/\u0275mod.js`,e)}function Ow(e){return pr().compilePipeDeclaration(Lr,`ng:///${e.type.name}/\u0275pipe.js`,e)}function Pw(e,t){const i=gn(e),f=t.elementInjector||Gl();return new pa(i).create(f,t.projectableNodes,t.hostElement,t.environmentInjector)}function Fw(e){const t=gn(e);if(!t)return null;const i=new pa(t);return{get selector(){return i.selector},get type(){return i.componentType},get inputs(){return i.inputs},get outputs(){return i.outputs},get ngContentSelectors(){return i.ngContentSelectors},get isStandalone(){return t.standalone},get isSignal(){return t.signals}}}function Nw(...e){return e.reduce((t,i)=>Object.assign(t,i,{providers:[...t.providers,...i.providers]}),{providers:[]})}},6223:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{AbstractControl:()=>it,AbstractControlDirective:()=>tt,AbstractFormGroupDirective:()=>Ct,COMPOSITION_BUFFER_MODE:()=>u,CheckboxControlValueAccessor:()=>l,CheckboxRequiredValidator:()=>Vn,ControlContainer:()=>St,DefaultValueAccessor:()=>h,EmailValidator:()=>ci,FormArray:()=>Ir,FormArrayName:()=>gi,FormBuilder:()=>go,FormControl:()=>oi,FormControlDirective:()=>xn,FormControlName:()=>U,FormGroup:()=>Rt,FormGroupDirective:()=>Ti,FormGroupName:()=>xi,FormRecord:()=>Ne,FormsModule:()=>Ko,MaxLengthValidator:()=>ai,MaxValidator:()=>Ut,MinLengthValidator:()=>ni,MinValidator:()=>nn,NG_ASYNC_VALIDATORS:()=>x,NG_VALIDATORS:()=>M,NG_VALUE_ACCESSOR:()=>c,NgControl:()=>bt,NgControlStatus:()=>vt,NgControlStatusGroup:()=>rt,NgForm:()=>si,NgModel:()=>an,NgModelGroup:()=>Ge,NgSelectOption:()=>Pn,NonNullableFormBuilder:()=>Vr,NumberValueAccessor:()=>Jn,PatternValidator:()=>Xi,RadioControlValueAccessor:()=>$i,RangeValueAccessor:()=>fn,ReactiveFormsModule:()=>Yo,RequiredValidator:()=>zn,SelectControlValueAccessor:()=>Gt,SelectMultipleControlValueAccessor:()=>Zi,UntypedFormArray:()=>zo,UntypedFormBuilder:()=>jr,UntypedFormControl:()=>li,UntypedFormGroup:()=>Ye,VERSION:()=>Hr,Validators:()=>L,isFormArray:()=>Wo,isFormControl:()=>Pi,isFormGroup:()=>qe,isFormRecord:()=>dt,\u0275InternalFormsSharedModule:()=>oo,\u0275NgNoValidate:()=>gn,\u0275NgSelectMultipleOption:()=>ur});var n=g(5879),p=g(6814),C=g(2459),b=g(9315),o=g(7398);let v=(()=>{class ye{constructor(he,He){this._renderer=he,this._elementRef=He,this.onChange=Qt=>{},this.onTouched=()=>{}}setProperty(he,He){this._renderer.setProperty(this._elementRef.nativeElement,he,He)}registerOnTouched(he){this.onTouched=he}registerOnChange(he){this.onChange=he}setDisabledState(he){this.setProperty("disabled",he)}}return ye.\u0275fac=function(he){return new(he||ye)(n.\u0275\u0275directiveInject(n.Renderer2),n.\u0275\u0275directiveInject(n.ElementRef))},ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye}),ye})(),a=(()=>{class ye extends v{}return ye.\u0275fac=function(){let _e;return function(He){return(_e||(_e=n.\u0275\u0275getInheritedFactory(ye)))(He||ye)}}(),ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,features:[n.\u0275\u0275InheritDefinitionFeature]}),ye})();const c=new n.InjectionToken("NgValueAccessor"),s={provide:c,useExisting:(0,n.forwardRef)(()=>l),multi:!0};let l=(()=>{class ye extends a{writeValue(he){this.setProperty("checked",he)}}return ye.\u0275fac=function(){let _e;return function(He){return(_e||(_e=n.\u0275\u0275getInheritedFactory(ye)))(He||ye)}}(),ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["input","type","checkbox","formControlName",""],["input","type","checkbox","formControl",""],["input","type","checkbox","ngModel",""]],hostBindings:function(he,He){1&he&&n.\u0275\u0275listener("change",function(En){return He.onChange(En.target.checked)})("blur",function(){return He.onTouched()})},features:[n.\u0275\u0275ProvidersFeature([s]),n.\u0275\u0275InheritDefinitionFeature]}),ye})();const d={provide:c,useExisting:(0,n.forwardRef)(()=>h),multi:!0},u=new n.InjectionToken("CompositionEventMode");let h=(()=>{class ye extends v{constructor(he,He,Qt){super(he,He),this._compositionMode=Qt,this._composing=!1,null==this._compositionMode&&(this._compositionMode=!function r(){const ye=(0,p.\u0275getDOM)()?(0,p.\u0275getDOM)().getUserAgent():"";return/android (\d+)/.test(ye.toLowerCase())}())}writeValue(he){this.setProperty("value",he??"")}_handleInput(he){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(he)}_compositionStart(){this._composing=!0}_compositionEnd(he){this._composing=!1,this._compositionMode&&this.onChange(he)}}return ye.\u0275fac=function(he){return new(he||ye)(n.\u0275\u0275directiveInject(n.Renderer2),n.\u0275\u0275directiveInject(n.ElementRef),n.\u0275\u0275directiveInject(u,8))},ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["input","formControlName","",3,"type","checkbox"],["textarea","formControlName",""],["input","formControl","",3,"type","checkbox"],["textarea","formControl",""],["input","ngModel","",3,"type","checkbox"],["textarea","ngModel",""],["","ngDefaultControl",""]],hostBindings:function(he,He){1&he&&n.\u0275\u0275listener("input",function(En){return He._handleInput(En.target.value)})("blur",function(){return He.onTouched()})("compositionstart",function(){return He._compositionStart()})("compositionend",function(En){return He._compositionEnd(En.target.value)})},features:[n.\u0275\u0275ProvidersFeature([d]),n.\u0275\u0275InheritDefinitionFeature]}),ye})();function m(ye){return null==ye||("string"==typeof ye||Array.isArray(ye))&&0===ye.length}function _(ye){return null!=ye&&"number"==typeof ye.length}const M=new n.InjectionToken("NgValidators"),x=new n.InjectionToken("NgAsyncValidators"),w=/^(?=.{1,254}$)(?=.{1,64}@)[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+)*@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;class L{static min(_e){return A(_e)}static max(_e){return T(_e)}static required(_e){return O(_e)}static requiredTrue(_e){return E(_e)}static email(_e){return D(_e)}static minLength(_e){return R(_e)}static maxLength(_e){return j(_e)}static pattern(_e){return N(_e)}static nullValidator(_e){return null}static compose(_e){return $(_e)}static composeAsync(_e){return Q(_e)}}function A(ye){return _e=>{if(m(_e.value)||m(ye))return null;const he=parseFloat(_e.value);return!isNaN(he)&&he{if(m(_e.value)||m(ye))return null;const he=parseFloat(_e.value);return!isNaN(he)&&he>ye?{max:{max:ye,actual:_e.value}}:null}}function O(ye){return m(ye.value)?{required:!0}:null}function E(ye){return!0===ye.value?null:{required:!0}}function D(ye){return m(ye.value)||w.test(ye.value)?null:{email:!0}}function R(ye){return _e=>m(_e.value)||!_(_e.value)?null:_e.value.length_(_e.value)&&_e.value.length>ye?{maxlength:{requiredLength:ye,actualLength:_e.value.length}}:null}function N(ye){if(!ye)return S;let _e,he;return"string"==typeof ye?(he="","^"!==ye.charAt(0)&&(he+="^"),he+=ye,"$"!==ye.charAt(ye.length-1)&&(he+="$"),_e=new RegExp(he)):(he=ye.toString(),_e=ye),He=>{if(m(He.value))return null;const Qt=He.value;return _e.test(Qt)?null:{pattern:{requiredPattern:he,actualValue:Qt}}}}function S(ye){return null}function k(ye){return null!=ye}function F(ye){return(0,n.\u0275isPromise)(ye)?(0,C.D)(ye):ye}function Y(ye){let _e={};return ye.forEach(he=>{_e=null!=he?{..._e,...he}:_e}),0===Object.keys(_e).length?null:_e}function se(ye,_e){return _e.map(he=>he(ye))}function me(ye){return ye.map(_e=>function ne(ye){return!ye.validate}(_e)?_e:he=>_e.validate(he))}function $(ye){if(!ye)return null;const _e=ye.filter(k);return 0==_e.length?null:function(he){return Y(se(he,_e))}}function q(ye){return null!=ye?$(me(ye)):null}function Q(ye){if(!ye)return null;const _e=ye.filter(k);return 0==_e.length?null:function(he){const He=se(he,_e).map(F);return(0,b.D)(He).pipe((0,o.U)(Y))}}function ue(ye){return null!=ye?Q(me(ye)):null}function Me(ye,_e){return null===ye?[_e]:Array.isArray(ye)?[...ye,_e]:[ye,_e]}function Oe(ye){return ye._rawValidators}function Xe(ye){return ye._rawAsyncValidators}function Be(ye){return ye?Array.isArray(ye)?ye:[ye]:[]}function $e(ye,_e){return Array.isArray(ye)?ye.includes(_e):ye===_e}function st(ye,_e){const he=Be(_e);return Be(ye).forEach(Qt=>{$e(he,Qt)||he.push(Qt)}),he}function Mt(ye,_e){return Be(_e).filter(he=>!$e(ye,he))}class tt{constructor(){this._rawValidators=[],this._rawAsyncValidators=[],this._onDestroyCallbacks=[]}get value(){return this.control?this.control.value:null}get valid(){return this.control?this.control.valid:null}get invalid(){return this.control?this.control.invalid:null}get pending(){return this.control?this.control.pending:null}get disabled(){return this.control?this.control.disabled:null}get enabled(){return this.control?this.control.enabled:null}get errors(){return this.control?this.control.errors:null}get pristine(){return this.control?this.control.pristine:null}get dirty(){return this.control?this.control.dirty:null}get touched(){return this.control?this.control.touched:null}get status(){return this.control?this.control.status:null}get untouched(){return this.control?this.control.untouched:null}get statusChanges(){return this.control?this.control.statusChanges:null}get valueChanges(){return this.control?this.control.valueChanges:null}get path(){return null}_setValidators(_e){this._rawValidators=_e||[],this._composedValidatorFn=q(this._rawValidators)}_setAsyncValidators(_e){this._rawAsyncValidators=_e||[],this._composedAsyncValidatorFn=ue(this._rawAsyncValidators)}get validator(){return this._composedValidatorFn||null}get asyncValidator(){return this._composedAsyncValidatorFn||null}_registerOnDestroy(_e){this._onDestroyCallbacks.push(_e)}_invokeOnDestroyCallbacks(){this._onDestroyCallbacks.forEach(_e=>_e()),this._onDestroyCallbacks=[]}reset(_e=void 0){this.control&&this.control.reset(_e)}hasError(_e,he){return!!this.control&&this.control.hasError(_e,he)}getError(_e,he){return this.control?this.control.getError(_e,he):null}}class St extends tt{get formDirective(){return null}get path(){return null}}class bt extends tt{constructor(){super(...arguments),this._parent=null,this.name=null,this.valueAccessor=null}}class xt{constructor(_e){this._cd=_e}get isTouched(){return!!this._cd?.control?.touched}get isUntouched(){return!!this._cd?.control?.untouched}get isPristine(){return!!this._cd?.control?.pristine}get isDirty(){return!!this._cd?.control?.dirty}get isValid(){return!!this._cd?.control?.valid}get isInvalid(){return!!this._cd?.control?.invalid}get isPending(){return!!this._cd?.control?.pending}get isSubmitted(){return!!this._cd?.submitted}}let vt=(()=>{class ye extends xt{constructor(he){super(he)}}return ye.\u0275fac=function(he){return new(he||ye)(n.\u0275\u0275directiveInject(bt,2))},ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["","formControlName",""],["","ngModel",""],["","formControl",""]],hostVars:14,hostBindings:function(he,He){2&he&&n.\u0275\u0275classProp("ng-untouched",He.isUntouched)("ng-touched",He.isTouched)("ng-pristine",He.isPristine)("ng-dirty",He.isDirty)("ng-valid",He.isValid)("ng-invalid",He.isInvalid)("ng-pending",He.isPending)},features:[n.\u0275\u0275InheritDefinitionFeature]}),ye})(),rt=(()=>{class ye extends xt{constructor(he){super(he)}}return ye.\u0275fac=function(he){return new(he||ye)(n.\u0275\u0275directiveInject(St,10))},ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["","formGroupName",""],["","formArrayName",""],["","ngModelGroup",""],["","formGroup",""],["form",3,"ngNoForm",""],["","ngForm",""]],hostVars:16,hostBindings:function(he,He){2&he&&n.\u0275\u0275classProp("ng-untouched",He.isUntouched)("ng-touched",He.isTouched)("ng-pristine",He.isPristine)("ng-dirty",He.isDirty)("ng-valid",He.isValid)("ng-invalid",He.isInvalid)("ng-pending",He.isPending)("ng-submitted",He.isSubmitted)},features:[n.\u0275\u0275InheritDefinitionFeature]}),ye})();const We="VALID",ve="INVALID",we="PENDING",at="DISABLED";function De(ye){return(re(ye)?ye.validators:ye)||null}function ke(ye,_e){return(re(_e)?_e.asyncValidators:ye)||null}function re(ye){return null!=ye&&!Array.isArray(ye)&&"object"==typeof ye}function ce(ye,_e,he){const He=ye.controls;if(!(_e?Object.keys(He):He).length)throw new n.\u0275RuntimeError(1e3,"");if(!He[he])throw new n.\u0275RuntimeError(1001,"")}function Ee(ye,_e,he){ye._forEachChild((He,Qt)=>{if(void 0===he[Qt])throw new n.\u0275RuntimeError(1002,"")})}class it{constructor(_e,he){this._pendingDirty=!1,this._hasOwnPendingAsyncValidator=!1,this._pendingTouched=!1,this._onCollectionChange=()=>{},this._parent=null,this.pristine=!0,this.touched=!1,this._onDisabledChange=[],this._assignValidators(_e),this._assignAsyncValidators(he)}get validator(){return this._composedValidatorFn}set validator(_e){this._rawValidators=this._composedValidatorFn=_e}get asyncValidator(){return this._composedAsyncValidatorFn}set asyncValidator(_e){this._rawAsyncValidators=this._composedAsyncValidatorFn=_e}get parent(){return this._parent}get valid(){return this.status===We}get invalid(){return this.status===ve}get pending(){return this.status==we}get disabled(){return this.status===at}get enabled(){return this.status!==at}get dirty(){return!this.pristine}get untouched(){return!this.touched}get updateOn(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}setValidators(_e){this._assignValidators(_e)}setAsyncValidators(_e){this._assignAsyncValidators(_e)}addValidators(_e){this.setValidators(st(_e,this._rawValidators))}addAsyncValidators(_e){this.setAsyncValidators(st(_e,this._rawAsyncValidators))}removeValidators(_e){this.setValidators(Mt(_e,this._rawValidators))}removeAsyncValidators(_e){this.setAsyncValidators(Mt(_e,this._rawAsyncValidators))}hasValidator(_e){return $e(this._rawValidators,_e)}hasAsyncValidator(_e){return $e(this._rawAsyncValidators,_e)}clearValidators(){this.validator=null}clearAsyncValidators(){this.asyncValidator=null}markAsTouched(_e={}){this.touched=!0,this._parent&&!_e.onlySelf&&this._parent.markAsTouched(_e)}markAllAsTouched(){this.markAsTouched({onlySelf:!0}),this._forEachChild(_e=>_e.markAllAsTouched())}markAsUntouched(_e={}){this.touched=!1,this._pendingTouched=!1,this._forEachChild(he=>{he.markAsUntouched({onlySelf:!0})}),this._parent&&!_e.onlySelf&&this._parent._updateTouched(_e)}markAsDirty(_e={}){this.pristine=!1,this._parent&&!_e.onlySelf&&this._parent.markAsDirty(_e)}markAsPristine(_e={}){this.pristine=!0,this._pendingDirty=!1,this._forEachChild(he=>{he.markAsPristine({onlySelf:!0})}),this._parent&&!_e.onlySelf&&this._parent._updatePristine(_e)}markAsPending(_e={}){this.status=we,!1!==_e.emitEvent&&this.statusChanges.emit(this.status),this._parent&&!_e.onlySelf&&this._parent.markAsPending(_e)}disable(_e={}){const he=this._parentMarkedDirty(_e.onlySelf);this.status=at,this.errors=null,this._forEachChild(He=>{He.disable({..._e,onlySelf:!0})}),this._updateValue(),!1!==_e.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors({..._e,skipPristineCheck:he}),this._onDisabledChange.forEach(He=>He(!0))}enable(_e={}){const he=this._parentMarkedDirty(_e.onlySelf);this.status=We,this._forEachChild(He=>{He.enable({..._e,onlySelf:!0})}),this.updateValueAndValidity({onlySelf:!0,emitEvent:_e.emitEvent}),this._updateAncestors({..._e,skipPristineCheck:he}),this._onDisabledChange.forEach(He=>He(!1))}_updateAncestors(_e){this._parent&&!_e.onlySelf&&(this._parent.updateValueAndValidity(_e),_e.skipPristineCheck||this._parent._updatePristine(),this._parent._updateTouched())}setParent(_e){this._parent=_e}getRawValue(){return this.value}updateValueAndValidity(_e={}){this._setInitialStatus(),this._updateValue(),this.enabled&&(this._cancelExistingSubscription(),this.errors=this._runValidator(),this.status=this._calculateStatus(),(this.status===We||this.status===we)&&this._runAsyncValidator(_e.emitEvent)),!1!==_e.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._parent&&!_e.onlySelf&&this._parent.updateValueAndValidity(_e)}_updateTreeValidity(_e={emitEvent:!0}){this._forEachChild(he=>he._updateTreeValidity(_e)),this.updateValueAndValidity({onlySelf:!0,emitEvent:_e.emitEvent})}_setInitialStatus(){this.status=this._allControlsDisabled()?at:We}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(_e){if(this.asyncValidator){this.status=we,this._hasOwnPendingAsyncValidator=!0;const he=F(this.asyncValidator(this));this._asyncValidationSubscription=he.subscribe(He=>{this._hasOwnPendingAsyncValidator=!1,this.setErrors(He,{emitEvent:_e})})}}_cancelExistingSubscription(){this._asyncValidationSubscription&&(this._asyncValidationSubscription.unsubscribe(),this._hasOwnPendingAsyncValidator=!1)}setErrors(_e,he={}){this.errors=_e,this._updateControlsErrors(!1!==he.emitEvent)}get(_e){let he=_e;return null==he||(Array.isArray(he)||(he=he.split(".")),0===he.length)?null:he.reduce((He,Qt)=>He&&He._find(Qt),this)}getError(_e,he){const He=he?this.get(he):this;return He&&He.errors?He.errors[_e]:null}hasError(_e,he){return!!this.getError(_e,he)}get root(){let _e=this;for(;_e._parent;)_e=_e._parent;return _e}_updateControlsErrors(_e){this.status=this._calculateStatus(),_e&&this.statusChanges.emit(this.status),this._parent&&this._parent._updateControlsErrors(_e)}_initObservables(){this.valueChanges=new n.EventEmitter,this.statusChanges=new n.EventEmitter}_calculateStatus(){return this._allControlsDisabled()?at:this.errors?ve:this._hasOwnPendingAsyncValidator||this._anyControlsHaveStatus(we)?we:this._anyControlsHaveStatus(ve)?ve:We}_anyControlsHaveStatus(_e){return this._anyControls(he=>he.status===_e)}_anyControlsDirty(){return this._anyControls(_e=>_e.dirty)}_anyControlsTouched(){return this._anyControls(_e=>_e.touched)}_updatePristine(_e={}){this.pristine=!this._anyControlsDirty(),this._parent&&!_e.onlySelf&&this._parent._updatePristine(_e)}_updateTouched(_e={}){this.touched=this._anyControlsTouched(),this._parent&&!_e.onlySelf&&this._parent._updateTouched(_e)}_registerOnCollectionChange(_e){this._onCollectionChange=_e}_setUpdateStrategy(_e){re(_e)&&null!=_e.updateOn&&(this._updateOn=_e.updateOn)}_parentMarkedDirty(_e){return!_e&&!(!this._parent||!this._parent.dirty)&&!this._parent._anyControlsDirty()}_find(_e){return null}_assignValidators(_e){this._rawValidators=Array.isArray(_e)?_e.slice():_e,this._composedValidatorFn=function je(ye){return Array.isArray(ye)?q(ye):ye||null}(this._rawValidators)}_assignAsyncValidators(_e){this._rawAsyncValidators=Array.isArray(_e)?_e.slice():_e,this._composedAsyncValidatorFn=function Z(ye){return Array.isArray(ye)?ue(ye):ye||null}(this._rawAsyncValidators)}}class Rt extends it{constructor(_e,he,He){super(De(he),ke(He,he)),this.controls=_e,this._initObservables(),this._setUpdateStrategy(he),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}registerControl(_e,he){return this.controls[_e]?this.controls[_e]:(this.controls[_e]=he,he.setParent(this),he._registerOnCollectionChange(this._onCollectionChange),he)}addControl(_e,he,He={}){this.registerControl(_e,he),this.updateValueAndValidity({emitEvent:He.emitEvent}),this._onCollectionChange()}removeControl(_e,he={}){this.controls[_e]&&this.controls[_e]._registerOnCollectionChange(()=>{}),delete this.controls[_e],this.updateValueAndValidity({emitEvent:he.emitEvent}),this._onCollectionChange()}setControl(_e,he,He={}){this.controls[_e]&&this.controls[_e]._registerOnCollectionChange(()=>{}),delete this.controls[_e],he&&this.registerControl(_e,he),this.updateValueAndValidity({emitEvent:He.emitEvent}),this._onCollectionChange()}contains(_e){return this.controls.hasOwnProperty(_e)&&this.controls[_e].enabled}setValue(_e,he={}){Ee(this,0,_e),Object.keys(_e).forEach(He=>{ce(this,!0,He),this.controls[He].setValue(_e[He],{onlySelf:!0,emitEvent:he.emitEvent})}),this.updateValueAndValidity(he)}patchValue(_e,he={}){null!=_e&&(Object.keys(_e).forEach(He=>{const Qt=this.controls[He];Qt&&Qt.patchValue(_e[He],{onlySelf:!0,emitEvent:he.emitEvent})}),this.updateValueAndValidity(he))}reset(_e={},he={}){this._forEachChild((He,Qt)=>{He.reset(_e[Qt],{onlySelf:!0,emitEvent:he.emitEvent})}),this._updatePristine(he),this._updateTouched(he),this.updateValueAndValidity(he)}getRawValue(){return this._reduceChildren({},(_e,he,He)=>(_e[He]=he.getRawValue(),_e))}_syncPendingControls(){let _e=this._reduceChildren(!1,(he,He)=>!!He._syncPendingControls()||he);return _e&&this.updateValueAndValidity({onlySelf:!0}),_e}_forEachChild(_e){Object.keys(this.controls).forEach(he=>{const He=this.controls[he];He&&_e(He,he)})}_setUpControls(){this._forEachChild(_e=>{_e.setParent(this),_e._registerOnCollectionChange(this._onCollectionChange)})}_updateValue(){this.value=this._reduceValue()}_anyControls(_e){for(const[he,He]of Object.entries(this.controls))if(this.contains(he)&&_e(He))return!0;return!1}_reduceValue(){return this._reduceChildren({},(he,He,Qt)=>((He.enabled||this.disabled)&&(he[Qt]=He.value),he))}_reduceChildren(_e,he){let He=_e;return this._forEachChild((Qt,En)=>{He=he(He,Qt,En)}),He}_allControlsDisabled(){for(const _e of Object.keys(this.controls))if(this.controls[_e].enabled)return!1;return Object.keys(this.controls).length>0||this.disabled}_find(_e){return this.controls.hasOwnProperty(_e)?this.controls[_e]:null}}const Ye=Rt,qe=ye=>ye instanceof Rt;class Ne extends Rt{}const dt=ye=>ye instanceof Ne,At=new n.InjectionToken("CallSetDisabledState",{providedIn:"root",factory:()=>tn}),tn="always";function wn(ye,_e){return[..._e.path,ye]}function Tn(ye,_e,he=tn){di(ye,_e),_e.valueAccessor.writeValue(ye.value),(ye.disabled||"always"===he)&&_e.valueAccessor.setDisabledState?.(ye.disabled),function Qi(ye,_e){_e.valueAccessor.registerOnChange(he=>{ye._pendingValue=he,ye._pendingChange=!0,ye._pendingDirty=!0,"change"===ye.updateOn&&mt(ye,_e)})}(ye,_e),function pt(ye,_e){const he=(He,Qt)=>{_e.valueAccessor.writeValue(He),Qt&&_e.viewToModelUpdate(He)};ye.registerOnChange(he),_e._registerOnDestroy(()=>{ye._unregisterOnChange(he)})}(ye,_e),function wt(ye,_e){_e.valueAccessor.registerOnTouched(()=>{ye._pendingTouched=!0,"blur"===ye.updateOn&&ye._pendingChange&&mt(ye,_e),"submit"!==ye.updateOn&&ye.markAsTouched()})}(ye,_e),function Ci(ye,_e){if(_e.valueAccessor.setDisabledState){const he=He=>{_e.valueAccessor.setDisabledState(He)};ye.registerOnDisabledChange(he),_e._registerOnDestroy(()=>{ye._unregisterOnDisabledChange(he)})}}(ye,_e)}function Sn(ye,_e,he=!0){const He=()=>{};_e.valueAccessor&&(_e.valueAccessor.registerOnChange(He),_e.valueAccessor.registerOnTouched(He)),Li(ye,_e),ye&&(_e._invokeOnDestroyCallbacks(),ye._registerOnCollectionChange(()=>{}))}function Mn(ye,_e){ye.forEach(he=>{he.registerOnValidatorChange&&he.registerOnValidatorChange(_e)})}function di(ye,_e){const he=Oe(ye);null!==_e.validator?ye.setValidators(Me(he,_e.validator)):"function"==typeof he&&ye.setValidators([he]);const He=Xe(ye);null!==_e.asyncValidator?ye.setAsyncValidators(Me(He,_e.asyncValidator)):"function"==typeof He&&ye.setAsyncValidators([He]);const Qt=()=>ye.updateValueAndValidity();Mn(_e._rawValidators,Qt),Mn(_e._rawAsyncValidators,Qt)}function Li(ye,_e){let he=!1;if(null!==ye){if(null!==_e.validator){const Qt=Oe(ye);if(Array.isArray(Qt)&&Qt.length>0){const En=Qt.filter(tr=>tr!==_e.validator);En.length!==Qt.length&&(he=!0,ye.setValidators(En))}}if(null!==_e.asyncValidator){const Qt=Xe(ye);if(Array.isArray(Qt)&&Qt.length>0){const En=Qt.filter(tr=>tr!==_e.asyncValidator);En.length!==Qt.length&&(he=!0,ye.setAsyncValidators(En))}}}const He=()=>{};return Mn(_e._rawValidators,He),Mn(_e._rawAsyncValidators,He),he}function mt(ye,_e){ye._pendingDirty&&ye.markAsDirty(),ye.setValue(ye._pendingValue,{emitModelToViewChange:!1}),_e.viewToModelUpdate(ye._pendingValue),ye._pendingChange=!1}function qt(ye,_e){di(ye,_e)}function mi(ye,_e){if(!ye.hasOwnProperty("model"))return!1;const he=ye.model;return!!he.isFirstChange()||!Object.is(_e,he.currentValue)}function ri(ye,_e){ye._syncPendingControls(),_e.forEach(he=>{const He=he.control;"submit"===He.updateOn&&He._pendingChange&&(he.viewToModelUpdate(He._pendingValue),He._pendingChange=!1)})}function ln(ye,_e){if(!_e)return null;let he,He,Qt;return Array.isArray(_e),_e.forEach(En=>{En.constructor===h?he=En:function Qn(ye){return Object.getPrototypeOf(ye.constructor)===a}(En)?He=En:Qt=En}),Qt||He||he||null}const An={provide:St,useExisting:(0,n.forwardRef)(()=>si)},Yn=(()=>Promise.resolve())();let si=(()=>{class ye extends St{constructor(he,He,Qt){super(),this.callSetDisabledState=Qt,this.submitted=!1,this._directives=new Set,this.ngSubmit=new n.EventEmitter,this.form=new Rt({},q(he),ue(He))}ngAfterViewInit(){this._setUpdateStrategy()}get formDirective(){return this}get control(){return this.form}get path(){return[]}get controls(){return this.form.controls}addControl(he){Yn.then(()=>{const He=this._findContainer(he.path);he.control=He.registerControl(he.name,he.control),Tn(he.control,he,this.callSetDisabledState),he.control.updateValueAndValidity({emitEvent:!1}),this._directives.add(he)})}getControl(he){return this.form.get(he.path)}removeControl(he){Yn.then(()=>{const He=this._findContainer(he.path);He&&He.removeControl(he.name),this._directives.delete(he)})}addFormGroup(he){Yn.then(()=>{const He=this._findContainer(he.path),Qt=new Rt({});qt(Qt,he),He.registerControl(he.name,Qt),Qt.updateValueAndValidity({emitEvent:!1})})}removeFormGroup(he){Yn.then(()=>{const He=this._findContainer(he.path);He&&He.removeControl(he.name)})}getFormGroup(he){return this.form.get(he.path)}updateModel(he,He){Yn.then(()=>{this.form.get(he.path).setValue(He)})}setValue(he){this.control.setValue(he)}onSubmit(he){return this.submitted=!0,ri(this.form,this._directives),this.ngSubmit.emit(he),"dialog"===he?.target?.method}onReset(){this.resetForm()}resetForm(he=void 0){this.form.reset(he),this.submitted=!1}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.form._updateOn=this.options.updateOn)}_findContainer(he){return he.pop(),he.length?this.form.get(he):this.form}}return ye.\u0275fac=function(he){return new(he||ye)(n.\u0275\u0275directiveInject(M,10),n.\u0275\u0275directiveInject(x,10),n.\u0275\u0275directiveInject(At,8))},ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["form",3,"ngNoForm","",3,"formGroup",""],["ng-form"],["","ngForm",""]],hostBindings:function(he,He){1&he&&n.\u0275\u0275listener("submit",function(En){return He.onSubmit(En)})("reset",function(){return He.onReset()})},inputs:{options:["ngFormOptions","options"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[n.\u0275\u0275ProvidersFeature([An]),n.\u0275\u0275InheritDefinitionFeature]}),ye})();function ii(ye,_e){const he=ye.indexOf(_e);he>-1&&ye.splice(he,1)}function Ii(ye){return"object"==typeof ye&&null!==ye&&2===Object.keys(ye).length&&"value"in ye&&"disabled"in ye}const oi=class extends it{constructor(_e=null,he,He){super(De(he),ke(He,he)),this.defaultValue=null,this._onChange=[],this._pendingChange=!1,this._applyFormState(_e),this._setUpdateStrategy(he),this._initObservables(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator}),re(he)&&(he.nonNullable||he.initialValueIsDefault)&&(this.defaultValue=Ii(_e)?_e.value:_e)}setValue(_e,he={}){this.value=this._pendingValue=_e,this._onChange.length&&!1!==he.emitModelToViewChange&&this._onChange.forEach(He=>He(this.value,!1!==he.emitViewToModelChange)),this.updateValueAndValidity(he)}patchValue(_e,he={}){this.setValue(_e,he)}reset(_e=this.defaultValue,he={}){this._applyFormState(_e),this.markAsPristine(he),this.markAsUntouched(he),this.setValue(this.value,he),this._pendingChange=!1}_updateValue(){}_anyControls(_e){return!1}_allControlsDisabled(){return this.disabled}registerOnChange(_e){this._onChange.push(_e)}_unregisterOnChange(_e){ii(this._onChange,_e)}registerOnDisabledChange(_e){this._onDisabledChange.push(_e)}_unregisterOnDisabledChange(_e){ii(this._onDisabledChange,_e)}_forEachChild(_e){}_syncPendingControls(){return!("submit"!==this.updateOn||(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),!this._pendingChange)||(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),0))}_applyFormState(_e){Ii(_e)?(this.value=this._pendingValue=_e.value,_e.disabled?this.disable({onlySelf:!0,emitEvent:!1}):this.enable({onlySelf:!0,emitEvent:!1})):this.value=this._pendingValue=_e}},li=oi,Pi=ye=>ye instanceof oi;let Ct=(()=>{class ye extends St{ngOnInit(){this._checkParentType(),this.formDirective.addFormGroup(this)}ngOnDestroy(){this.formDirective&&this.formDirective.removeFormGroup(this)}get control(){return this.formDirective.getFormGroup(this)}get path(){return wn(null==this.name?this.name:this.name.toString(),this._parent)}get formDirective(){return this._parent?this._parent.formDirective:null}_checkParentType(){}}return ye.\u0275fac=function(){let _e;return function(He){return(_e||(_e=n.\u0275\u0275getInheritedFactory(ye)))(He||ye)}}(),ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,features:[n.\u0275\u0275InheritDefinitionFeature]}),ye})();const ge={provide:St,useExisting:(0,n.forwardRef)(()=>Ge)};let Ge=(()=>{class ye extends Ct{constructor(he,He,Qt){super(),this.name="",this._parent=he,this._setValidators(He),this._setAsyncValidators(Qt)}_checkParentType(){}}return ye.\u0275fac=function(he){return new(he||ye)(n.\u0275\u0275directiveInject(St,5),n.\u0275\u0275directiveInject(M,10),n.\u0275\u0275directiveInject(x,10))},ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["","ngModelGroup",""]],inputs:{name:["ngModelGroup","name"]},exportAs:["ngModelGroup"],features:[n.\u0275\u0275ProvidersFeature([ge]),n.\u0275\u0275InheritDefinitionFeature]}),ye})();const It={provide:bt,useExisting:(0,n.forwardRef)(()=>an)},zt=(()=>Promise.resolve())();let an=(()=>{class ye extends bt{constructor(he,He,Qt,En,tr,xr){super(),this._changeDetectorRef=tr,this.callSetDisabledState=xr,this.control=new oi,this._registered=!1,this.name="",this.update=new n.EventEmitter,this._parent=he,this._setValidators(He),this._setAsyncValidators(Qt),this.valueAccessor=ln(0,En)}ngOnChanges(he){if(this._checkForErrors(),!this._registered||"name"in he){if(this._registered&&(this._checkName(),this.formDirective)){const He=he.name.previousValue;this.formDirective.removeControl({name:He,path:this._getPath(He)})}this._setUpControl()}"isDisabled"in he&&this._updateDisabled(he),mi(he,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}get path(){return this._getPath(this.name)}get formDirective(){return this._parent?this._parent.formDirective:null}viewToModelUpdate(he){this.viewModel=he,this.update.emit(he)}_setUpControl(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.control._updateOn=this.options.updateOn)}_isStandalone(){return!this._parent||!(!this.options||!this.options.standalone)}_setUpStandalone(){Tn(this.control,this,this.callSetDisabledState),this.control.updateValueAndValidity({emitEvent:!1})}_checkForErrors(){this._isStandalone()||this._checkParentType(),this._checkName()}_checkParentType(){}_checkName(){this.options&&this.options.name&&(this.name=this.options.name),this._isStandalone()}_updateValue(he){zt.then(()=>{this.control.setValue(he,{emitViewToModelChange:!1}),this._changeDetectorRef?.markForCheck()})}_updateDisabled(he){const He=he.isDisabled.currentValue,Qt=0!==He&&(0,n.booleanAttribute)(He);zt.then(()=>{Qt&&!this.control.disabled?this.control.disable():!Qt&&this.control.disabled&&this.control.enable(),this._changeDetectorRef?.markForCheck()})}_getPath(he){return this._parent?wn(he,this._parent):[he]}}return ye.\u0275fac=function(he){return new(he||ye)(n.\u0275\u0275directiveInject(St,9),n.\u0275\u0275directiveInject(M,10),n.\u0275\u0275directiveInject(x,10),n.\u0275\u0275directiveInject(c,10),n.\u0275\u0275directiveInject(n.ChangeDetectorRef,8),n.\u0275\u0275directiveInject(At,8))},ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["","ngModel","",3,"formControlName","",3,"formControl",""]],inputs:{name:"name",isDisabled:["disabled","isDisabled"],model:["ngModel","model"],options:["ngModelOptions","options"]},outputs:{update:"ngModelChange"},exportAs:["ngModel"],features:[n.\u0275\u0275ProvidersFeature([It]),n.\u0275\u0275InheritDefinitionFeature,n.\u0275\u0275NgOnChangesFeature]}),ye})(),gn=(()=>{class ye{}return ye.\u0275fac=function(he){return new(he||ye)},ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["form",3,"ngNoForm","",3,"ngNativeValidate",""]],hostAttrs:["novalidate",""]}),ye})();const pn={provide:c,useExisting:(0,n.forwardRef)(()=>Jn),multi:!0};let Jn=(()=>{class ye extends a{writeValue(he){this.setProperty("value",he??"")}registerOnChange(he){this.onChange=He=>{he(""==He?null:parseFloat(He))}}}return ye.\u0275fac=function(){let _e;return function(He){return(_e||(_e=n.\u0275\u0275getInheritedFactory(ye)))(He||ye)}}(),ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["input","type","number","formControlName",""],["input","type","number","formControl",""],["input","type","number","ngModel",""]],hostBindings:function(he,He){1&he&&n.\u0275\u0275listener("input",function(En){return He.onChange(En.target.value)})("blur",function(){return He.onTouched()})},features:[n.\u0275\u0275ProvidersFeature([pn]),n.\u0275\u0275InheritDefinitionFeature]}),ye})();const Nn={provide:c,useExisting:(0,n.forwardRef)(()=>$i),multi:!0};let Un=(()=>{class ye{}return ye.\u0275fac=function(he){return new(he||ye)},ye.\u0275mod=n.\u0275\u0275defineNgModule({type:ye}),ye.\u0275inj=n.\u0275\u0275defineInjector({}),ye})(),vi=(()=>{class ye{constructor(){this._accessors=[]}add(he,He){this._accessors.push([he,He])}remove(he){for(let He=this._accessors.length-1;He>=0;--He)if(this._accessors[He][1]===he)return void this._accessors.splice(He,1)}select(he){this._accessors.forEach(He=>{this._isSameGroup(He,he)&&He[1]!==he&&He[1].fireUncheck(he.value)})}_isSameGroup(he,He){return!!he[0].control&&he[0]._parent===He._control._parent&&he[1].name===He.name}}return ye.\u0275fac=function(he){return new(he||ye)},ye.\u0275prov=n.\u0275\u0275defineInjectable({token:ye,factory:ye.\u0275fac,providedIn:Un}),ye})(),$i=(()=>{class ye extends a{constructor(he,He,Qt,En){super(he,He),this._registry=Qt,this._injector=En,this.setDisabledStateFired=!1,this.onChange=()=>{},this.callSetDisabledState=(0,n.inject)(At,{optional:!0})??tn}ngOnInit(){this._control=this._injector.get(bt),this._checkName(),this._registry.add(this._control,this)}ngOnDestroy(){this._registry.remove(this)}writeValue(he){this._state=he===this.value,this.setProperty("checked",this._state)}registerOnChange(he){this._fn=he,this.onChange=()=>{he(this.value),this._registry.select(this)}}setDisabledState(he){(this.setDisabledStateFired||he||"whenDisabledForLegacyCode"===this.callSetDisabledState)&&this.setProperty("disabled",he),this.setDisabledStateFired=!0}fireUncheck(he){this.writeValue(he)}_checkName(){!this.name&&this.formControlName&&(this.name=this.formControlName)}}return ye.\u0275fac=function(he){return new(he||ye)(n.\u0275\u0275directiveInject(n.Renderer2),n.\u0275\u0275directiveInject(n.ElementRef),n.\u0275\u0275directiveInject(vi),n.\u0275\u0275directiveInject(n.Injector))},ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["input","type","radio","formControlName",""],["input","type","radio","formControl",""],["input","type","radio","ngModel",""]],hostBindings:function(he,He){1&he&&n.\u0275\u0275listener("change",function(){return He.onChange()})("blur",function(){return He.onTouched()})},inputs:{name:"name",formControlName:"formControlName",value:"value"},features:[n.\u0275\u0275ProvidersFeature([Nn]),n.\u0275\u0275InheritDefinitionFeature]}),ye})();const er={provide:c,useExisting:(0,n.forwardRef)(()=>fn),multi:!0};let fn=(()=>{class ye extends a{writeValue(he){this.setProperty("value",parseFloat(he))}registerOnChange(he){this.onChange=He=>{he(""==He?null:parseFloat(He))}}}return ye.\u0275fac=function(){let _e;return function(He){return(_e||(_e=n.\u0275\u0275getInheritedFactory(ye)))(He||ye)}}(),ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["input","type","range","formControlName",""],["input","type","range","formControl",""],["input","type","range","ngModel",""]],hostBindings:function(he,He){1&he&&n.\u0275\u0275listener("change",function(En){return He.onChange(En.target.value)})("input",function(En){return He.onChange(En.target.value)})("blur",function(){return He.onTouched()})},features:[n.\u0275\u0275ProvidersFeature([er]),n.\u0275\u0275InheritDefinitionFeature]}),ye})();const yn=new n.InjectionToken("NgModelWithFormControlWarning"),rn={provide:bt,useExisting:(0,n.forwardRef)(()=>xn)};let xn=(()=>{class ye extends bt{set isDisabled(he){}constructor(he,He,Qt,En,tr){super(),this._ngModelWarningConfig=En,this.callSetDisabledState=tr,this.update=new n.EventEmitter,this._ngModelWarningSent=!1,this._setValidators(he),this._setAsyncValidators(He),this.valueAccessor=ln(0,Qt)}ngOnChanges(he){if(this._isControlChanged(he)){const He=he.form.previousValue;He&&Sn(He,this,!1),Tn(this.form,this,this.callSetDisabledState),this.form.updateValueAndValidity({emitEvent:!1})}mi(he,this.viewModel)&&(this.form.setValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.form&&Sn(this.form,this,!1)}get path(){return[]}get control(){return this.form}viewToModelUpdate(he){this.viewModel=he,this.update.emit(he)}_isControlChanged(he){return he.hasOwnProperty("form")}}return ye._ngModelWarningSentOnce=!1,ye.\u0275fac=function(he){return new(he||ye)(n.\u0275\u0275directiveInject(M,10),n.\u0275\u0275directiveInject(x,10),n.\u0275\u0275directiveInject(c,10),n.\u0275\u0275directiveInject(yn,8),n.\u0275\u0275directiveInject(At,8))},ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["","formControl",""]],inputs:{form:["formControl","form"],isDisabled:["disabled","isDisabled"],model:["ngModel","model"]},outputs:{update:"ngModelChange"},exportAs:["ngForm"],features:[n.\u0275\u0275ProvidersFeature([rn]),n.\u0275\u0275InheritDefinitionFeature,n.\u0275\u0275NgOnChangesFeature]}),ye})();const ti={provide:St,useExisting:(0,n.forwardRef)(()=>Ti)};let Ti=(()=>{class ye extends St{constructor(he,He,Qt){super(),this.callSetDisabledState=Qt,this.submitted=!1,this._onCollectionChange=()=>this._updateDomValue(),this.directives=[],this.form=null,this.ngSubmit=new n.EventEmitter,this._setValidators(he),this._setAsyncValidators(He)}ngOnChanges(he){this._checkFormPresent(),he.hasOwnProperty("form")&&(this._updateValidators(),this._updateDomValue(),this._updateRegistrations(),this._oldForm=this.form)}ngOnDestroy(){this.form&&(Li(this.form,this),this.form._onCollectionChange===this._onCollectionChange&&this.form._registerOnCollectionChange(()=>{}))}get formDirective(){return this}get control(){return this.form}get path(){return[]}addControl(he){const He=this.form.get(he.path);return Tn(He,he,this.callSetDisabledState),He.updateValueAndValidity({emitEvent:!1}),this.directives.push(he),He}getControl(he){return this.form.get(he.path)}removeControl(he){Sn(he.control||null,he,!1),function en(ye,_e){const he=ye.indexOf(_e);he>-1&&ye.splice(he,1)}(this.directives,he)}addFormGroup(he){this._setUpFormContainer(he)}removeFormGroup(he){this._cleanUpFormContainer(he)}getFormGroup(he){return this.form.get(he.path)}addFormArray(he){this._setUpFormContainer(he)}removeFormArray(he){this._cleanUpFormContainer(he)}getFormArray(he){return this.form.get(he.path)}updateModel(he,He){this.form.get(he.path).setValue(He)}onSubmit(he){return this.submitted=!0,ri(this.form,this.directives),this.ngSubmit.emit(he),"dialog"===he?.target?.method}onReset(){this.resetForm()}resetForm(he=void 0){this.form.reset(he),this.submitted=!1}_updateDomValue(){this.directives.forEach(he=>{const He=he.control,Qt=this.form.get(he.path);He!==Qt&&(Sn(He||null,he),Pi(Qt)&&(Tn(Qt,he,this.callSetDisabledState),he.control=Qt))}),this.form._updateTreeValidity({emitEvent:!1})}_setUpFormContainer(he){const He=this.form.get(he.path);qt(He,he),He.updateValueAndValidity({emitEvent:!1})}_cleanUpFormContainer(he){if(this.form){const He=this.form.get(he.path);He&&function on(ye,_e){return Li(ye,_e)}(He,he)&&He.updateValueAndValidity({emitEvent:!1})}}_updateRegistrations(){this.form._registerOnCollectionChange(this._onCollectionChange),this._oldForm&&this._oldForm._registerOnCollectionChange(()=>{})}_updateValidators(){di(this.form,this),this._oldForm&&Li(this._oldForm,this)}_checkFormPresent(){}}return ye.\u0275fac=function(he){return new(he||ye)(n.\u0275\u0275directiveInject(M,10),n.\u0275\u0275directiveInject(x,10),n.\u0275\u0275directiveInject(At,8))},ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["","formGroup",""]],hostBindings:function(he,He){1&he&&n.\u0275\u0275listener("submit",function(En){return He.onSubmit(En)})("reset",function(){return He.onReset()})},inputs:{form:["formGroup","form"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[n.\u0275\u0275ProvidersFeature([ti]),n.\u0275\u0275InheritDefinitionFeature,n.\u0275\u0275NgOnChangesFeature]}),ye})();const zi={provide:St,useExisting:(0,n.forwardRef)(()=>xi)};let xi=(()=>{class ye extends Ct{constructor(he,He,Qt){super(),this.name=null,this._parent=he,this._setValidators(He),this._setAsyncValidators(Qt)}_checkParentType(){Ke(this._parent)}}return ye.\u0275fac=function(he){return new(he||ye)(n.\u0275\u0275directiveInject(St,13),n.\u0275\u0275directiveInject(M,10),n.\u0275\u0275directiveInject(x,10))},ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["","formGroupName",""]],inputs:{name:["formGroupName","name"]},features:[n.\u0275\u0275ProvidersFeature([zi]),n.\u0275\u0275InheritDefinitionFeature]}),ye})();const _r={provide:St,useExisting:(0,n.forwardRef)(()=>gi)};let gi=(()=>{class ye extends St{constructor(he,He,Qt){super(),this.name=null,this._parent=he,this._setValidators(He),this._setAsyncValidators(Qt)}ngOnInit(){this._checkParentType(),this.formDirective.addFormArray(this)}ngOnDestroy(){this.formDirective&&this.formDirective.removeFormArray(this)}get control(){return this.formDirective.getFormArray(this)}get formDirective(){return this._parent?this._parent.formDirective:null}get path(){return wn(null==this.name?this.name:this.name.toString(),this._parent)}_checkParentType(){Ke(this._parent)}}return ye.\u0275fac=function(he){return new(he||ye)(n.\u0275\u0275directiveInject(St,13),n.\u0275\u0275directiveInject(M,10),n.\u0275\u0275directiveInject(x,10))},ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["","formArrayName",""]],inputs:{name:["formArrayName","name"]},features:[n.\u0275\u0275ProvidersFeature([_r]),n.\u0275\u0275InheritDefinitionFeature]}),ye})();function Ke(ye){return!(ye instanceof xi||ye instanceof Ti||ye instanceof gi)}const kt={provide:bt,useExisting:(0,n.forwardRef)(()=>U)};let U=(()=>{class ye extends bt{set isDisabled(he){}constructor(he,He,Qt,En,tr){super(),this._ngModelWarningConfig=tr,this._added=!1,this.name=null,this.update=new n.EventEmitter,this._ngModelWarningSent=!1,this._parent=he,this._setValidators(He),this._setAsyncValidators(Qt),this.valueAccessor=ln(0,En)}ngOnChanges(he){this._added||this._setUpControl(),mi(he,this.viewModel)&&(this.viewModel=this.model,this.formDirective.updateModel(this,this.model))}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}viewToModelUpdate(he){this.viewModel=he,this.update.emit(he)}get path(){return wn(null==this.name?this.name:this.name.toString(),this._parent)}get formDirective(){return this._parent?this._parent.formDirective:null}_checkParentType(){}_setUpControl(){this._checkParentType(),this.control=this.formDirective.addControl(this),this._added=!0}}return ye._ngModelWarningSentOnce=!1,ye.\u0275fac=function(he){return new(he||ye)(n.\u0275\u0275directiveInject(St,13),n.\u0275\u0275directiveInject(M,10),n.\u0275\u0275directiveInject(x,10),n.\u0275\u0275directiveInject(c,10),n.\u0275\u0275directiveInject(yn,8))},ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["","formControlName",""]],inputs:{name:["formControlName","name"],isDisabled:["disabled","isDisabled"],model:["ngModel","model"]},outputs:{update:"ngModelChange"},features:[n.\u0275\u0275ProvidersFeature([kt]),n.\u0275\u0275InheritDefinitionFeature,n.\u0275\u0275NgOnChangesFeature]}),ye})();const fe={provide:c,useExisting:(0,n.forwardRef)(()=>Gt),multi:!0};function Pe(ye,_e){return null==ye?`${_e}`:(_e&&"object"==typeof _e&&(_e="Object"),`${ye}: ${_e}`.slice(0,50))}let Gt=(()=>{class ye extends a{constructor(){super(...arguments),this._optionMap=new Map,this._idCounter=0,this._compareWith=Object.is}set compareWith(he){this._compareWith=he}writeValue(he){this.value=he;const Qt=Pe(this._getOptionId(he),he);this.setProperty("value",Qt)}registerOnChange(he){this.onChange=He=>{this.value=this._getOptionValue(He),he(this.value)}}_registerOption(){return(this._idCounter++).toString()}_getOptionId(he){for(const He of this._optionMap.keys())if(this._compareWith(this._optionMap.get(He),he))return He;return null}_getOptionValue(he){const He=function Je(ye){return ye.split(":")[0]}(he);return this._optionMap.has(He)?this._optionMap.get(He):he}}return ye.\u0275fac=function(){let _e;return function(He){return(_e||(_e=n.\u0275\u0275getInheritedFactory(ye)))(He||ye)}}(),ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["select","formControlName","",3,"multiple",""],["select","formControl","",3,"multiple",""],["select","ngModel","",3,"multiple",""]],hostBindings:function(he,He){1&he&&n.\u0275\u0275listener("change",function(En){return He.onChange(En.target.value)})("blur",function(){return He.onTouched()})},inputs:{compareWith:"compareWith"},features:[n.\u0275\u0275ProvidersFeature([fe]),n.\u0275\u0275InheritDefinitionFeature]}),ye})(),Pn=(()=>{class ye{constructor(he,He,Qt){this._element=he,this._renderer=He,this._select=Qt,this._select&&(this.id=this._select._registerOption())}set ngValue(he){null!=this._select&&(this._select._optionMap.set(this.id,he),this._setElementValue(Pe(this.id,he)),this._select.writeValue(this._select.value))}set value(he){this._setElementValue(he),this._select&&this._select.writeValue(this._select.value)}_setElementValue(he){this._renderer.setProperty(this._element.nativeElement,"value",he)}ngOnDestroy(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))}}return ye.\u0275fac=function(he){return new(he||ye)(n.\u0275\u0275directiveInject(n.ElementRef),n.\u0275\u0275directiveInject(n.Renderer2),n.\u0275\u0275directiveInject(Gt,9))},ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["option"]],inputs:{ngValue:"ngValue",value:"value"}}),ye})();const Gi={provide:c,useExisting:(0,n.forwardRef)(()=>Zi),multi:!0};function Vi(ye,_e){return null==ye?`${_e}`:("string"==typeof _e&&(_e=`'${_e}'`),_e&&"object"==typeof _e&&(_e="Object"),`${ye}: ${_e}`.slice(0,50))}let Zi=(()=>{class ye extends a{constructor(){super(...arguments),this._optionMap=new Map,this._idCounter=0,this._compareWith=Object.is}set compareWith(he){this._compareWith=he}writeValue(he){let He;if(this.value=he,Array.isArray(he)){const Qt=he.map(En=>this._getOptionId(En));He=(En,tr)=>{En._setSelected(Qt.indexOf(tr.toString())>-1)}}else He=(Qt,En)=>{Qt._setSelected(!1)};this._optionMap.forEach(He)}registerOnChange(he){this.onChange=He=>{const Qt=[],En=He.selectedOptions;if(void 0!==En){const tr=En;for(let xr=0;xr{class ye{constructor(he,He,Qt){this._element=he,this._renderer=He,this._select=Qt,this._select&&(this.id=this._select._registerOption(this))}set ngValue(he){null!=this._select&&(this._value=he,this._setElementValue(Vi(this.id,he)),this._select.writeValue(this._select.value))}set value(he){this._select?(this._value=he,this._setElementValue(Vi(this.id,he)),this._select.writeValue(this._select.value)):this._setElementValue(he)}_setElementValue(he){this._renderer.setProperty(this._element.nativeElement,"value",he)}_setSelected(he){this._renderer.setProperty(this._element.nativeElement,"selected",he)}ngOnDestroy(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))}}return ye.\u0275fac=function(he){return new(he||ye)(n.\u0275\u0275directiveInject(n.ElementRef),n.\u0275\u0275directiveInject(n.Renderer2),n.\u0275\u0275directiveInject(Zi,9))},ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["option"]],inputs:{ngValue:"ngValue",value:"value"}}),ye})();function Et(ye){return"number"==typeof ye?ye:parseInt(ye,10)}function _t(ye){return"number"==typeof ye?ye:parseFloat(ye)}let ft=(()=>{class ye{constructor(){this._validator=S}ngOnChanges(he){if(this.inputName in he){const He=this.normalizeInput(he[this.inputName].currentValue);this._enabled=this.enabled(He),this._validator=this._enabled?this.createValidator(He):S,this._onChange&&this._onChange()}}validate(he){return this._validator(he)}registerOnValidatorChange(he){this._onChange=he}enabled(he){return null!=he}}return ye.\u0275fac=function(he){return new(he||ye)},ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,features:[n.\u0275\u0275NgOnChangesFeature]}),ye})();const Tt={provide:M,useExisting:(0,n.forwardRef)(()=>Ut),multi:!0};let Ut=(()=>{class ye extends ft{constructor(){super(...arguments),this.inputName="max",this.normalizeInput=he=>_t(he),this.createValidator=he=>T(he)}}return ye.\u0275fac=function(){let _e;return function(He){return(_e||(_e=n.\u0275\u0275getInheritedFactory(ye)))(He||ye)}}(),ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["input","type","number","max","","formControlName",""],["input","type","number","max","","formControl",""],["input","type","number","max","","ngModel",""]],hostVars:1,hostBindings:function(he,He){2&he&&n.\u0275\u0275attribute("max",He._enabled?He.max:null)},inputs:{max:"max"},features:[n.\u0275\u0275ProvidersFeature([Tt]),n.\u0275\u0275InheritDefinitionFeature]}),ye})();const Wt={provide:M,useExisting:(0,n.forwardRef)(()=>nn),multi:!0};let nn=(()=>{class ye extends ft{constructor(){super(...arguments),this.inputName="min",this.normalizeInput=he=>_t(he),this.createValidator=he=>A(he)}}return ye.\u0275fac=function(){let _e;return function(He){return(_e||(_e=n.\u0275\u0275getInheritedFactory(ye)))(He||ye)}}(),ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["input","type","number","min","","formControlName",""],["input","type","number","min","","formControl",""],["input","type","number","min","","ngModel",""]],hostVars:1,hostBindings:function(he,He){2&he&&n.\u0275\u0275attribute("min",He._enabled?He.min:null)},inputs:{min:"min"},features:[n.\u0275\u0275ProvidersFeature([Wt]),n.\u0275\u0275InheritDefinitionFeature]}),ye})();const Cn={provide:M,useExisting:(0,n.forwardRef)(()=>zn),multi:!0},_n={provide:M,useExisting:(0,n.forwardRef)(()=>Vn),multi:!0};let zn=(()=>{class ye extends ft{constructor(){super(...arguments),this.inputName="required",this.normalizeInput=n.booleanAttribute,this.createValidator=he=>O}enabled(he){return he}}return ye.\u0275fac=function(){let _e;return function(He){return(_e||(_e=n.\u0275\u0275getInheritedFactory(ye)))(He||ye)}}(),ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["","required","","formControlName","",3,"type","checkbox"],["","required","","formControl","",3,"type","checkbox"],["","required","","ngModel","",3,"type","checkbox"]],hostVars:1,hostBindings:function(he,He){2&he&&n.\u0275\u0275attribute("required",He._enabled?"":null)},inputs:{required:"required"},features:[n.\u0275\u0275ProvidersFeature([Cn]),n.\u0275\u0275InheritDefinitionFeature]}),ye})(),Vn=(()=>{class ye extends zn{constructor(){super(...arguments),this.createValidator=he=>E}}return ye.\u0275fac=function(){let _e;return function(He){return(_e||(_e=n.\u0275\u0275getInheritedFactory(ye)))(He||ye)}}(),ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["input","type","checkbox","required","","formControlName",""],["input","type","checkbox","required","","formControl",""],["input","type","checkbox","required","","ngModel",""]],hostVars:1,hostBindings:function(he,He){2&he&&n.\u0275\u0275attribute("required",He._enabled?"":null)},features:[n.\u0275\u0275ProvidersFeature([_n]),n.\u0275\u0275InheritDefinitionFeature]}),ye})();const Ri={provide:M,useExisting:(0,n.forwardRef)(()=>ci),multi:!0};let ci=(()=>{class ye extends ft{constructor(){super(...arguments),this.inputName="email",this.normalizeInput=n.booleanAttribute,this.createValidator=he=>D}enabled(he){return he}}return ye.\u0275fac=function(){let _e;return function(He){return(_e||(_e=n.\u0275\u0275getInheritedFactory(ye)))(He||ye)}}(),ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["","email","","formControlName",""],["","email","","formControl",""],["","email","","ngModel",""]],inputs:{email:"email"},features:[n.\u0275\u0275ProvidersFeature([Ri]),n.\u0275\u0275InheritDefinitionFeature]}),ye})();const Mi={provide:M,useExisting:(0,n.forwardRef)(()=>ni),multi:!0};let ni=(()=>{class ye extends ft{constructor(){super(...arguments),this.inputName="minlength",this.normalizeInput=he=>Et(he),this.createValidator=he=>R(he)}}return ye.\u0275fac=function(){let _e;return function(He){return(_e||(_e=n.\u0275\u0275getInheritedFactory(ye)))(He||ye)}}(),ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["","minlength","","formControlName",""],["","minlength","","formControl",""],["","minlength","","ngModel",""]],hostVars:1,hostBindings:function(he,He){2&he&&n.\u0275\u0275attribute("minlength",He._enabled?He.minlength:null)},inputs:{minlength:"minlength"},features:[n.\u0275\u0275ProvidersFeature([Mi]),n.\u0275\u0275InheritDefinitionFeature]}),ye})();const Xn={provide:M,useExisting:(0,n.forwardRef)(()=>ai),multi:!0};let ai=(()=>{class ye extends ft{constructor(){super(...arguments),this.inputName="maxlength",this.normalizeInput=he=>Et(he),this.createValidator=he=>j(he)}}return ye.\u0275fac=function(){let _e;return function(He){return(_e||(_e=n.\u0275\u0275getInheritedFactory(ye)))(He||ye)}}(),ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["","maxlength","","formControlName",""],["","maxlength","","formControl",""],["","maxlength","","ngModel",""]],hostVars:1,hostBindings:function(he,He){2&he&&n.\u0275\u0275attribute("maxlength",He._enabled?He.maxlength:null)},inputs:{maxlength:"maxlength"},features:[n.\u0275\u0275ProvidersFeature([Xn]),n.\u0275\u0275InheritDefinitionFeature]}),ye})();const Fi={provide:M,useExisting:(0,n.forwardRef)(()=>Xi),multi:!0};let Xi=(()=>{class ye extends ft{constructor(){super(...arguments),this.inputName="pattern",this.normalizeInput=he=>he,this.createValidator=he=>N(he)}}return ye.\u0275fac=function(){let _e;return function(He){return(_e||(_e=n.\u0275\u0275getInheritedFactory(ye)))(He||ye)}}(),ye.\u0275dir=n.\u0275\u0275defineDirective({type:ye,selectors:[["","pattern","","formControlName",""],["","pattern","","formControl",""],["","pattern","","ngModel",""]],hostVars:1,hostBindings:function(he,He){2&he&&n.\u0275\u0275attribute("pattern",He._enabled?He.pattern:null)},inputs:{pattern:"pattern"},features:[n.\u0275\u0275ProvidersFeature([Fi]),n.\u0275\u0275InheritDefinitionFeature]}),ye})(),oo=(()=>{class ye{}return ye.\u0275fac=function(he){return new(he||ye)},ye.\u0275mod=n.\u0275\u0275defineNgModule({type:ye}),ye.\u0275inj=n.\u0275\u0275defineInjector({imports:[Un]}),ye})();class Ir extends it{constructor(_e,he,He){super(De(he),ke(He,he)),this.controls=_e,this._initObservables(),this._setUpdateStrategy(he),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}at(_e){return this.controls[this._adjustIndex(_e)]}push(_e,he={}){this.controls.push(_e),this._registerControl(_e),this.updateValueAndValidity({emitEvent:he.emitEvent}),this._onCollectionChange()}insert(_e,he,He={}){this.controls.splice(_e,0,he),this._registerControl(he),this.updateValueAndValidity({emitEvent:He.emitEvent})}removeAt(_e,he={}){let He=this._adjustIndex(_e);He<0&&(He=0),this.controls[He]&&this.controls[He]._registerOnCollectionChange(()=>{}),this.controls.splice(He,1),this.updateValueAndValidity({emitEvent:he.emitEvent})}setControl(_e,he,He={}){let Qt=this._adjustIndex(_e);Qt<0&&(Qt=0),this.controls[Qt]&&this.controls[Qt]._registerOnCollectionChange(()=>{}),this.controls.splice(Qt,1),he&&(this.controls.splice(Qt,0,he),this._registerControl(he)),this.updateValueAndValidity({emitEvent:He.emitEvent}),this._onCollectionChange()}get length(){return this.controls.length}setValue(_e,he={}){Ee(this,0,_e),_e.forEach((He,Qt)=>{ce(this,!1,Qt),this.at(Qt).setValue(He,{onlySelf:!0,emitEvent:he.emitEvent})}),this.updateValueAndValidity(he)}patchValue(_e,he={}){null!=_e&&(_e.forEach((He,Qt)=>{this.at(Qt)&&this.at(Qt).patchValue(He,{onlySelf:!0,emitEvent:he.emitEvent})}),this.updateValueAndValidity(he))}reset(_e=[],he={}){this._forEachChild((He,Qt)=>{He.reset(_e[Qt],{onlySelf:!0,emitEvent:he.emitEvent})}),this._updatePristine(he),this._updateTouched(he),this.updateValueAndValidity(he)}getRawValue(){return this.controls.map(_e=>_e.getRawValue())}clear(_e={}){this.controls.length<1||(this._forEachChild(he=>he._registerOnCollectionChange(()=>{})),this.controls.splice(0),this.updateValueAndValidity({emitEvent:_e.emitEvent}))}_adjustIndex(_e){return _e<0?_e+this.length:_e}_syncPendingControls(){let _e=this.controls.reduce((he,He)=>!!He._syncPendingControls()||he,!1);return _e&&this.updateValueAndValidity({onlySelf:!0}),_e}_forEachChild(_e){this.controls.forEach((he,He)=>{_e(he,He)})}_updateValue(){this.value=this.controls.filter(_e=>_e.enabled||this.disabled).map(_e=>_e.value)}_anyControls(_e){return this.controls.some(he=>he.enabled&&_e(he))}_setUpControls(){this._forEachChild(_e=>this._registerControl(_e))}_allControlsDisabled(){for(const _e of this.controls)if(_e.enabled)return!1;return this.controls.length>0||this.disabled}_registerControl(_e){_e.setParent(this),_e._registerOnCollectionChange(this._onCollectionChange)}_find(_e){return this.at(_e)??null}}const zo=Ir,Wo=ye=>ye instanceof Ir;function Go(ye){return!!ye&&(void 0!==ye.asyncValidators||void 0!==ye.validators||void 0!==ye.updateOn)}let go=(()=>{class ye{constructor(){this.useNonNullable=!1}get nonNullable(){const he=new ye;return he.useNonNullable=!0,he}group(he,He=null){const Qt=this._reduceControls(he);let En={};return Go(He)?En=He:null!==He&&(En.validators=He.validator,En.asyncValidators=He.asyncValidator),new Rt(Qt,En)}record(he,He=null){const Qt=this._reduceControls(he);return new Ne(Qt,He)}control(he,He,Qt){let En={};return this.useNonNullable?(Go(He)?En=He:(En.validators=He,En.asyncValidators=Qt),new oi(he,{...En,nonNullable:!0})):new oi(he,He,Qt)}array(he,He,Qt){const En=he.map(tr=>this._createControl(tr));return new Ir(En,He,Qt)}_reduceControls(he){const He={};return Object.keys(he).forEach(Qt=>{He[Qt]=this._createControl(he[Qt])}),He}_createControl(he){return he instanceof oi||he instanceof it?he:Array.isArray(he)?this.control(he[0],he.length>1?he[1]:null,he.length>2?he[2]:null):this.control(he)}}return ye.\u0275fac=function(he){return new(he||ye)},ye.\u0275prov=n.\u0275\u0275defineInjectable({token:ye,factory:ye.\u0275fac,providedIn:"root"}),ye})(),Vr=(()=>{class ye{}return ye.\u0275fac=function(he){return new(he||ye)},ye.\u0275prov=n.\u0275\u0275defineInjectable({token:ye,factory:function(){return(0,n.inject)(go).nonNullable},providedIn:"root"}),ye})(),jr=(()=>{class ye extends go{group(he,He=null){return super.group(he,He)}control(he,He,Qt){return super.control(he,He,Qt)}array(he,He,Qt){return super.array(he,He,Qt)}}return ye.\u0275fac=function(){let _e;return function(He){return(_e||(_e=n.\u0275\u0275getInheritedFactory(ye)))(He||ye)}}(),ye.\u0275prov=n.\u0275\u0275defineInjectable({token:ye,factory:ye.\u0275fac,providedIn:"root"}),ye})();const Hr=new n.Version("16.1.7");let Ko=(()=>{class ye{static withConfig(he){return{ngModule:ye,providers:[{provide:At,useValue:he.callSetDisabledState??tn}]}}}return ye.\u0275fac=function(he){return new(he||ye)},ye.\u0275mod=n.\u0275\u0275defineNgModule({type:ye}),ye.\u0275inj=n.\u0275\u0275defineInjector({imports:[oo]}),ye})(),Yo=(()=>{class ye{static withConfig(he){return{ngModule:ye,providers:[{provide:yn,useValue:he.warnOnNgModelWithFormControl??"always"},{provide:At,useValue:he.callSetDisabledState??tn}]}}}return ye.\u0275fac=function(he){return new(he||ye)},ye.\u0275mod=n.\u0275\u0275defineNgModule({type:ye}),ye.\u0275inj=n.\u0275\u0275defineInjector({imports:[oo]}),ye})()},3680:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{AnimationCurves:()=>A,AnimationDurations:()=>T,DateAdapter:()=>q,ErrorStateMatcher:()=>Mt,MATERIAL_SANITY_CHECKS:()=>E,MAT_DATE_FORMATS:()=>Q,MAT_DATE_LOCALE:()=>me,MAT_DATE_LOCALE_FACTORY:()=>$,MAT_NATIVE_DATE_FORMATS:()=>Xe,MAT_OPTGROUP:()=>Yt,MAT_OPTION_PARENT_COMPONENT:()=>ze,MAT_RIPPLE_GLOBAL_OPTIONS:()=>Te,MatCommonModule:()=>D,MatLine:()=>tt,MatLineModule:()=>xt,MatNativeDateModule:()=>$e,MatOptgroup:()=>Ue,MatOption:()=>at,MatOptionModule:()=>ke,MatOptionSelectionChange:()=>ve,MatPseudoCheckbox:()=>Dt,MatPseudoCheckboxModule:()=>Kt,MatRipple:()=>ct,MatRippleModule:()=>Lt,NativeDateAdapter:()=>Oe,NativeDateModule:()=>Be,RippleRef:()=>nt,RippleRenderer:()=>ie,ShowOnDirtyErrorStateMatcher:()=>st,VERSION:()=>L,_MatOptgroupBase:()=>$t,_MatOptionBase:()=>we,_countGroupLabelsBeforeOption:()=>De,_getOptionScrollPosition:()=>je,defaultRippleAnimationConfig:()=>rt,mixinColor:()=>k,mixinDisableRipple:()=>F,mixinDisabled:()=>S,mixinErrorState:()=>se,mixinInitialized:()=>ne,mixinTabIndex:()=>Y,setLines:()=>St});var n=g(5879),p=g(4300),C=g(9388),o=g(6814),v=g(2831),a=g(2495),c=g(5592),s=g(8645),l=g(7921),d=g(6028);const r=["*",[["mat-option"],["ng-container"]]],u=["*","mat-option, ng-container"],h=["text"];function m(Z,re){if(1&Z&&n.\u0275\u0275element(0,"mat-pseudo-checkbox",6),2&Z){const ce=n.\u0275\u0275nextContext();n.\u0275\u0275property("disabled",ce.disabled)("state",ce.selected?"checked":"unchecked")}}function _(Z,re){if(1&Z&&n.\u0275\u0275element(0,"mat-pseudo-checkbox",7),2&Z){const ce=n.\u0275\u0275nextContext();n.\u0275\u0275property("disabled",ce.disabled)}}function M(Z,re){if(1&Z&&(n.\u0275\u0275elementStart(0,"span",8),n.\u0275\u0275text(1),n.\u0275\u0275elementEnd()),2&Z){const ce=n.\u0275\u0275nextContext();n.\u0275\u0275advance(1),n.\u0275\u0275textInterpolate1("(",ce.group.label,")")}}const x=[[["mat-icon"]],"*"],w=["mat-icon","*"],L=new n.Version("16.1.6");let A=(()=>{class Z{}return Z.STANDARD_CURVE="cubic-bezier(0.4,0.0,0.2,1)",Z.DECELERATION_CURVE="cubic-bezier(0.0,0.0,0.2,1)",Z.ACCELERATION_CURVE="cubic-bezier(0.4,0.0,1,1)",Z.SHARP_CURVE="cubic-bezier(0.4,0.0,0.6,1)",Z})(),T=(()=>{class Z{}return Z.COMPLEX="375ms",Z.ENTERING="225ms",Z.EXITING="195ms",Z})();const E=new n.InjectionToken("mat-sanity-checks",{providedIn:"root",factory:function O(){return!0}});let D=(()=>{class Z{constructor(ce,Ee,it){this._sanityChecks=Ee,this._document=it,this._hasDoneGlobalChecks=!1,ce._applyBodyHighContrastModeCssClasses(),this._hasDoneGlobalChecks||(this._hasDoneGlobalChecks=!0)}_checkIsEnabled(ce){return!(0,v.Oy)()&&("boolean"==typeof this._sanityChecks?this._sanityChecks:!!this._sanityChecks[ce])}}return Z.\u0275fac=function(ce){return new(ce||Z)(n.\u0275\u0275inject(p.qm),n.\u0275\u0275inject(E,8),n.\u0275\u0275inject(o.DOCUMENT))},Z.\u0275mod=n.\u0275\u0275defineNgModule({type:Z}),Z.\u0275inj=n.\u0275\u0275defineInjector({imports:[C.vT,C.vT]}),Z})();function S(Z){return class extends Z{get disabled(){return this._disabled}set disabled(re){this._disabled=(0,a.Ig)(re)}constructor(...re){super(...re),this._disabled=!1}}}function k(Z,re){return class extends Z{get color(){return this._color}set color(ce){const Ee=ce||this.defaultColor;Ee!==this._color&&(this._color&&this._elementRef.nativeElement.classList.remove(`mat-${this._color}`),Ee&&this._elementRef.nativeElement.classList.add(`mat-${Ee}`),this._color=Ee)}constructor(...ce){super(...ce),this.defaultColor=re,this.color=re}}}function F(Z){return class extends Z{get disableRipple(){return this._disableRipple}set disableRipple(re){this._disableRipple=(0,a.Ig)(re)}constructor(...re){super(...re),this._disableRipple=!1}}}function Y(Z,re=0){return class extends Z{get tabIndex(){return this.disabled?-1:this._tabIndex}set tabIndex(ce){this._tabIndex=null!=ce?(0,a.su)(ce):this.defaultTabIndex}constructor(...ce){super(...ce),this._tabIndex=re,this.defaultTabIndex=re}}}function se(Z){return class extends Z{updateErrorState(){const re=this.errorState,Rt=(this.errorStateMatcher||this._defaultErrorStateMatcher).isErrorState(this.ngControl?this.ngControl.control:null,this._parentFormGroup||this._parentForm);Rt!==re&&(this.errorState=Rt,this.stateChanges.next())}constructor(...re){super(...re),this.errorState=!1}}}function ne(Z){return class extends Z{constructor(...re){super(...re),this._isInitialized=!1,this._pendingSubscribers=[],this.initialized=new c.y(ce=>{this._isInitialized?this._notifySubscriber(ce):this._pendingSubscribers.push(ce)})}_markInitialized(){this._isInitialized=!0,this._pendingSubscribers.forEach(this._notifySubscriber),this._pendingSubscribers=null}_notifySubscriber(re){re.next(),re.complete()}}}const me=new n.InjectionToken("MAT_DATE_LOCALE",{providedIn:"root",factory:$});function $(){return(0,n.inject)(n.LOCALE_ID)}class q{constructor(){this._localeChanges=new s.x,this.localeChanges=this._localeChanges}getValidDateOrNull(re){return this.isDateInstance(re)&&this.isValid(re)?re:null}deserialize(re){return null==re||this.isDateInstance(re)&&this.isValid(re)?re:this.invalid()}setLocale(re){this.locale=re,this._localeChanges.next()}compareDate(re,ce){return this.getYear(re)-this.getYear(ce)||this.getMonth(re)-this.getMonth(ce)||this.getDate(re)-this.getDate(ce)}sameDate(re,ce){if(re&&ce){let Ee=this.isValid(re),it=this.isValid(ce);return Ee&&it?!this.compareDate(re,ce):Ee==it}return re==ce}clampDate(re,ce,Ee){return ce&&this.compareDate(re,ce)<0?ce:Ee&&this.compareDate(re,Ee)>0?Ee:re}}const Q=new n.InjectionToken("mat-date-formats"),ue=/^\d{4}-\d{2}-\d{2}(?:T\d{2}:\d{2}:\d{2}(?:\.\d+)?(?:Z|(?:(?:\+|-)\d{2}:\d{2}))?)?$/;function Me(Z,re){const ce=Array(Z);for(let Ee=0;Ee{class Z extends q{constructor(ce,Ee){super(),this.useUtcForDisplay=!1,super.setLocale(ce)}getYear(ce){return ce.getFullYear()}getMonth(ce){return ce.getMonth()}getDate(ce){return ce.getDate()}getDayOfWeek(ce){return ce.getDay()}getMonthNames(ce){const Ee=new Intl.DateTimeFormat(this.locale,{month:ce,timeZone:"utc"});return Me(12,it=>this._format(Ee,new Date(2017,it,1)))}getDateNames(){const ce=new Intl.DateTimeFormat(this.locale,{day:"numeric",timeZone:"utc"});return Me(31,Ee=>this._format(ce,new Date(2017,0,Ee+1)))}getDayOfWeekNames(ce){const Ee=new Intl.DateTimeFormat(this.locale,{weekday:ce,timeZone:"utc"});return Me(7,it=>this._format(Ee,new Date(2017,0,it+1)))}getYearName(ce){const Ee=new Intl.DateTimeFormat(this.locale,{year:"numeric",timeZone:"utc"});return this._format(Ee,ce)}getFirstDayOfWeek(){return 0}getNumDaysInMonth(ce){return this.getDate(this._createDateWithOverflow(this.getYear(ce),this.getMonth(ce)+1,0))}clone(ce){return new Date(ce.getTime())}createDate(ce,Ee,it){let Rt=this._createDateWithOverflow(ce,Ee,it);return Rt.getMonth(),Rt}today(){return new Date}parse(ce,Ee){return"number"==typeof ce?new Date(ce):ce?new Date(Date.parse(ce)):null}format(ce,Ee){if(!this.isValid(ce))throw Error("NativeDateAdapter: Cannot format invalid date.");const it=new Intl.DateTimeFormat(this.locale,{...Ee,timeZone:"utc"});return this._format(it,ce)}addCalendarYears(ce,Ee){return this.addCalendarMonths(ce,12*Ee)}addCalendarMonths(ce,Ee){let it=this._createDateWithOverflow(this.getYear(ce),this.getMonth(ce)+Ee,this.getDate(ce));return this.getMonth(it)!=((this.getMonth(ce)+Ee)%12+12)%12&&(it=this._createDateWithOverflow(this.getYear(it),this.getMonth(it),0)),it}addCalendarDays(ce,Ee){return this._createDateWithOverflow(this.getYear(ce),this.getMonth(ce),this.getDate(ce)+Ee)}toIso8601(ce){return[ce.getUTCFullYear(),this._2digit(ce.getUTCMonth()+1),this._2digit(ce.getUTCDate())].join("-")}deserialize(ce){if("string"==typeof ce){if(!ce)return null;if(ue.test(ce)){let Ee=new Date(ce);if(this.isValid(Ee))return Ee}}return super.deserialize(ce)}isDateInstance(ce){return ce instanceof Date}isValid(ce){return!isNaN(ce.getTime())}invalid(){return new Date(NaN)}_createDateWithOverflow(ce,Ee,it){const Rt=new Date;return Rt.setFullYear(ce,Ee,it),Rt.setHours(0,0,0,0),Rt}_2digit(ce){return("00"+ce).slice(-2)}_format(ce,Ee){const it=new Date;return it.setUTCFullYear(Ee.getFullYear(),Ee.getMonth(),Ee.getDate()),it.setUTCHours(Ee.getHours(),Ee.getMinutes(),Ee.getSeconds(),Ee.getMilliseconds()),ce.format(it)}}return Z.\u0275fac=function(ce){return new(ce||Z)(n.\u0275\u0275inject(me,8),n.\u0275\u0275inject(v.t4))},Z.\u0275prov=n.\u0275\u0275defineInjectable({token:Z,factory:Z.\u0275fac}),Z})();const Xe={parse:{dateInput:null},display:{dateInput:{year:"numeric",month:"numeric",day:"numeric"},monthYearLabel:{year:"numeric",month:"short"},dateA11yLabel:{year:"numeric",month:"long",day:"numeric"},monthYearA11yLabel:{year:"numeric",month:"long"}}};let Be=(()=>{class Z{}return Z.\u0275fac=function(ce){return new(ce||Z)},Z.\u0275mod=n.\u0275\u0275defineNgModule({type:Z}),Z.\u0275inj=n.\u0275\u0275defineInjector({providers:[{provide:q,useClass:Oe}]}),Z})(),$e=(()=>{class Z{}return Z.\u0275fac=function(ce){return new(ce||Z)},Z.\u0275mod=n.\u0275\u0275defineNgModule({type:Z}),Z.\u0275inj=n.\u0275\u0275defineInjector({providers:[{provide:Q,useValue:Xe}],imports:[Be]}),Z})(),st=(()=>{class Z{isErrorState(ce,Ee){return!!(ce&&ce.invalid&&(ce.dirty||Ee&&Ee.submitted))}}return Z.\u0275fac=function(ce){return new(ce||Z)},Z.\u0275prov=n.\u0275\u0275defineInjectable({token:Z,factory:Z.\u0275fac}),Z})(),Mt=(()=>{class Z{isErrorState(ce,Ee){return!!(ce&&ce.invalid&&(ce.touched||Ee&&Ee.submitted))}}return Z.\u0275fac=function(ce){return new(ce||Z)},Z.\u0275prov=n.\u0275\u0275defineInjectable({token:Z,factory:Z.\u0275fac,providedIn:"root"}),Z})(),tt=(()=>{class Z{}return Z.\u0275fac=function(ce){return new(ce||Z)},Z.\u0275dir=n.\u0275\u0275defineDirective({type:Z,selectors:[["","mat-line",""],["","matLine",""]],hostAttrs:[1,"mat-line"]}),Z})();function St(Z,re,ce="mat"){Z.changes.pipe((0,l.O)(Z)).subscribe(({length:Ee})=>{bt(re,`${ce}-2-line`,!1),bt(re,`${ce}-3-line`,!1),bt(re,`${ce}-multi-line`,!1),2===Ee||3===Ee?bt(re,`${ce}-${Ee}-line`,!0):Ee>3&&bt(re,`${ce}-multi-line`,!0)})}function bt(Z,re,ce){Z.nativeElement.classList.toggle(re,ce)}let xt=(()=>{class Z{}return Z.\u0275fac=function(ce){return new(ce||Z)},Z.\u0275mod=n.\u0275\u0275defineNgModule({type:Z}),Z.\u0275inj=n.\u0275\u0275defineInjector({imports:[D,D]}),Z})();class nt{constructor(re,ce,Ee,it=!1){this._renderer=re,this.element=ce,this.config=Ee,this._animationForciblyDisabledThroughCss=it,this.state=3}fadeOut(){this._renderer.fadeOutRipple(this)}}const ot=(0,v.i$)({passive:!0,capture:!0});class vt{constructor(){this._events=new Map,this._delegateEventHandler=re=>{const ce=(0,v.sA)(re);ce&&this._events.get(re.type)?.forEach((Ee,it)=>{(it===ce||it.contains(ce))&&Ee.forEach(Rt=>Rt.handleEvent(re))})}}addHandler(re,ce,Ee,it){const Rt=this._events.get(ce);if(Rt){const Ye=Rt.get(Ee);Ye?Ye.add(it):Rt.set(Ee,new Set([it]))}else this._events.set(ce,new Map([[Ee,new Set([it])]])),re.runOutsideAngular(()=>{document.addEventListener(ce,this._delegateEventHandler,ot)})}removeHandler(re,ce,Ee){const it=this._events.get(re);if(!it)return;const Rt=it.get(ce);Rt&&(Rt.delete(Ee),0===Rt.size&&it.delete(ce),0===it.size&&(this._events.delete(re),document.removeEventListener(re,this._delegateEventHandler,ot)))}}const rt={enterDuration:225,exitDuration:150},Ce=(0,v.i$)({passive:!0,capture:!0}),ee=["mousedown","touchstart"],ae=["mouseup","mouseleave","touchend","touchcancel"];class ie{constructor(re,ce,Ee,it){this._target=re,this._ngZone=ce,this._platform=it,this._isPointerDown=!1,this._activeRipples=new Map,this._pointerUpEventsRegistered=!1,it.isBrowser&&(this._containerElement=(0,a.fI)(Ee))}fadeInRipple(re,ce,Ee={}){const it=this._containerRect=this._containerRect||this._containerElement.getBoundingClientRect(),Rt={...rt,...Ee.animation};Ee.centered&&(re=it.left+it.width/2,ce=it.top+it.height/2);const Ye=Ee.radius||function pe(Z,re,ce){const Ee=Math.max(Math.abs(Z-ce.left),Math.abs(Z-ce.right)),it=Math.max(Math.abs(re-ce.top),Math.abs(re-ce.bottom));return Math.sqrt(Ee*Ee+it*it)}(re,ce,it),qe=re-it.left,Ne=ce-it.top,dt=Rt.enterDuration,At=document.createElement("div");At.classList.add("mat-ripple-element"),At.style.left=qe-Ye+"px",At.style.top=Ne-Ye+"px",At.style.height=2*Ye+"px",At.style.width=2*Ye+"px",null!=Ee.color&&(At.style.backgroundColor=Ee.color),At.style.transitionDuration=`${dt}ms`,this._containerElement.appendChild(At);const tn=window.getComputedStyle(At),Tn=tn.transitionDuration,Sn="none"===tn.transitionProperty||"0s"===Tn||"0s, 0s"===Tn||0===it.width&&0===it.height,Mn=new nt(this,At,Ee,Sn);At.style.transform="scale3d(1, 1, 1)",Mn.state=0,Ee.persistent||(this._mostRecentTransientRipple=Mn);let Ci=null;return!Sn&&(dt||Rt.exitDuration)&&this._ngZone.runOutsideAngular(()=>{const di=()=>this._finishRippleTransition(Mn),Li=()=>this._destroyRipple(Mn);At.addEventListener("transitionend",di),At.addEventListener("transitioncancel",Li),Ci={onTransitionEnd:di,onTransitionCancel:Li}}),this._activeRipples.set(Mn,Ci),(Sn||!dt)&&this._finishRippleTransition(Mn),Mn}fadeOutRipple(re){if(2===re.state||3===re.state)return;const ce=re.element,Ee={...rt,...re.config.animation};ce.style.transitionDuration=`${Ee.exitDuration}ms`,ce.style.opacity="0",re.state=2,(re._animationForciblyDisabledThroughCss||!Ee.exitDuration)&&this._finishRippleTransition(re)}fadeOutAll(){this._getActiveRipples().forEach(re=>re.fadeOut())}fadeOutAllNonPersistent(){this._getActiveRipples().forEach(re=>{re.config.persistent||re.fadeOut()})}setupTriggerEvents(re){const ce=(0,a.fI)(re);!this._platform.isBrowser||!ce||ce===this._triggerElement||(this._removeTriggerEvents(),this._triggerElement=ce,ee.forEach(Ee=>{ie._eventManager.addHandler(this._ngZone,Ee,ce,this)}))}handleEvent(re){"mousedown"===re.type?this._onMousedown(re):"touchstart"===re.type?this._onTouchStart(re):this._onPointerUp(),this._pointerUpEventsRegistered||(this._ngZone.runOutsideAngular(()=>{ae.forEach(ce=>{this._triggerElement.addEventListener(ce,this,Ce)})}),this._pointerUpEventsRegistered=!0)}_finishRippleTransition(re){0===re.state?this._startFadeOutTransition(re):2===re.state&&this._destroyRipple(re)}_startFadeOutTransition(re){const ce=re===this._mostRecentTransientRipple,{persistent:Ee}=re.config;re.state=1,!Ee&&(!ce||!this._isPointerDown)&&re.fadeOut()}_destroyRipple(re){const ce=this._activeRipples.get(re)??null;this._activeRipples.delete(re),this._activeRipples.size||(this._containerRect=null),re===this._mostRecentTransientRipple&&(this._mostRecentTransientRipple=null),re.state=3,null!==ce&&(re.element.removeEventListener("transitionend",ce.onTransitionEnd),re.element.removeEventListener("transitioncancel",ce.onTransitionCancel)),re.element.remove()}_onMousedown(re){const ce=(0,p.X6)(re),Ee=this._lastTouchStartEvent&&Date.now(){!re.config.persistent&&(1===re.state||re.config.terminateOnPointerUp&&0===re.state)&&re.fadeOut()}))}_getActiveRipples(){return Array.from(this._activeRipples.keys())}_removeTriggerEvents(){const re=this._triggerElement;re&&(ee.forEach(ce=>ie._eventManager.removeHandler(ce,re,this)),this._pointerUpEventsRegistered&&ae.forEach(ce=>re.removeEventListener(ce,this,Ce)))}}ie._eventManager=new vt;const Te=new n.InjectionToken("mat-ripple-global-options");let ct=(()=>{class Z{get disabled(){return this._disabled}set disabled(ce){ce&&this.fadeOutAllNonPersistent(),this._disabled=ce,this._setupTriggerEventsIfEnabled()}get trigger(){return this._trigger||this._elementRef.nativeElement}set trigger(ce){this._trigger=ce,this._setupTriggerEventsIfEnabled()}constructor(ce,Ee,it,Rt,Ye){this._elementRef=ce,this._animationMode=Ye,this.radius=0,this._disabled=!1,this._isInitialized=!1,this._globalOptions=Rt||{},this._rippleRenderer=new ie(this,Ee,ce,it)}ngOnInit(){this._isInitialized=!0,this._setupTriggerEventsIfEnabled()}ngOnDestroy(){this._rippleRenderer._removeTriggerEvents()}fadeOutAll(){this._rippleRenderer.fadeOutAll()}fadeOutAllNonPersistent(){this._rippleRenderer.fadeOutAllNonPersistent()}get rippleConfig(){return{centered:this.centered,radius:this.radius,color:this.color,animation:{...this._globalOptions.animation,..."NoopAnimations"===this._animationMode?{enterDuration:0,exitDuration:0}:{},...this.animation},terminateOnPointerUp:this._globalOptions.terminateOnPointerUp}}get rippleDisabled(){return this.disabled||!!this._globalOptions.disabled}_setupTriggerEventsIfEnabled(){!this.disabled&&this._isInitialized&&this._rippleRenderer.setupTriggerEvents(this.trigger)}launch(ce,Ee=0,it){return"number"==typeof ce?this._rippleRenderer.fadeInRipple(ce,Ee,{...this.rippleConfig,...it}):this._rippleRenderer.fadeInRipple(0,0,{...this.rippleConfig,...ce})}}return Z.\u0275fac=function(ce){return new(ce||Z)(n.\u0275\u0275directiveInject(n.ElementRef),n.\u0275\u0275directiveInject(n.NgZone),n.\u0275\u0275directiveInject(v.t4),n.\u0275\u0275directiveInject(Te,8),n.\u0275\u0275directiveInject(n.ANIMATION_MODULE_TYPE,8))},Z.\u0275dir=n.\u0275\u0275defineDirective({type:Z,selectors:[["","mat-ripple",""],["","matRipple",""]],hostAttrs:[1,"mat-ripple"],hostVars:2,hostBindings:function(ce,Ee){2&ce&&n.\u0275\u0275classProp("mat-ripple-unbounded",Ee.unbounded)},inputs:{color:["matRippleColor","color"],unbounded:["matRippleUnbounded","unbounded"],centered:["matRippleCentered","centered"],radius:["matRippleRadius","radius"],animation:["matRippleAnimation","animation"],disabled:["matRippleDisabled","disabled"],trigger:["matRippleTrigger","trigger"]},exportAs:["matRipple"]}),Z})(),Lt=(()=>{class Z{}return Z.\u0275fac=function(ce){return new(ce||Z)},Z.\u0275mod=n.\u0275\u0275defineNgModule({type:Z}),Z.\u0275inj=n.\u0275\u0275defineInjector({imports:[D,D]}),Z})(),Dt=(()=>{class Z{constructor(ce){this._animationMode=ce,this.state="unchecked",this.disabled=!1,this.appearance="full"}}return Z.\u0275fac=function(ce){return new(ce||Z)(n.\u0275\u0275directiveInject(n.ANIMATION_MODULE_TYPE,8))},Z.\u0275cmp=n.\u0275\u0275defineComponent({type:Z,selectors:[["mat-pseudo-checkbox"]],hostAttrs:[1,"mat-pseudo-checkbox"],hostVars:12,hostBindings:function(ce,Ee){2&ce&&n.\u0275\u0275classProp("mat-pseudo-checkbox-indeterminate","indeterminate"===Ee.state)("mat-pseudo-checkbox-checked","checked"===Ee.state)("mat-pseudo-checkbox-disabled",Ee.disabled)("mat-pseudo-checkbox-minimal","minimal"===Ee.appearance)("mat-pseudo-checkbox-full","full"===Ee.appearance)("_mat-animation-noopable","NoopAnimations"===Ee._animationMode)},inputs:{state:"state",disabled:"disabled",appearance:"appearance"},decls:0,vars:0,template:function(ce,Ee){},styles:['.mat-pseudo-checkbox{border-radius:2px;cursor:pointer;display:inline-block;vertical-align:middle;box-sizing:border-box;position:relative;flex-shrink:0;transition:border-color 90ms cubic-bezier(0, 0, 0.2, 0.1),background-color 90ms cubic-bezier(0, 0, 0.2, 0.1)}.mat-pseudo-checkbox::after{position:absolute;opacity:0;content:"";border-bottom:2px solid currentColor;transition:opacity 90ms cubic-bezier(0, 0, 0.2, 0.1)}.mat-pseudo-checkbox._mat-animation-noopable{transition:none !important;animation:none !important}.mat-pseudo-checkbox._mat-animation-noopable::after{transition:none}.mat-pseudo-checkbox-disabled{cursor:default}.mat-pseudo-checkbox-indeterminate::after{left:1px;opacity:1;border-radius:2px}.mat-pseudo-checkbox-checked::after{left:1px;border-left:2px solid currentColor;transform:rotate(-45deg);opacity:1;box-sizing:content-box}.mat-pseudo-checkbox-full{border:2px solid}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-checked,.mat-pseudo-checkbox-full.mat-pseudo-checkbox-indeterminate{border-color:rgba(0,0,0,0)}.mat-pseudo-checkbox{width:18px;height:18px}.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-checked::after{width:14px;height:6px;transform-origin:center;top:-4.2426406871px;left:0;bottom:0;right:0;margin:auto}.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-indeterminate::after{top:8px;width:16px}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-checked::after{width:10px;height:4px;transform-origin:center;top:-2.8284271247px;left:0;bottom:0;right:0;margin:auto}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-indeterminate::after{top:6px;width:12px}'],encapsulation:2,changeDetection:0}),Z})(),Kt=(()=>{class Z{}return Z.\u0275fac=function(ce){return new(ce||Z)},Z.\u0275mod=n.\u0275\u0275defineNgModule({type:Z}),Z.\u0275inj=n.\u0275\u0275defineInjector({imports:[D]}),Z})();const ze=new n.InjectionToken("MAT_OPTION_PARENT_COMPONENT"),yt=S(class{});let Bt=0,$t=(()=>{class Z extends yt{constructor(ce){super(),this._labelId="mat-optgroup-label-"+Bt++,this._inert=ce?.inertGroups??!1}}return Z.\u0275fac=function(ce){return new(ce||Z)(n.\u0275\u0275directiveInject(ze,8))},Z.\u0275dir=n.\u0275\u0275defineDirective({type:Z,inputs:{label:"label"},features:[n.\u0275\u0275InheritDefinitionFeature]}),Z})();const Yt=new n.InjectionToken("MatOptgroup");let Ue=(()=>{class Z extends $t{}return Z.\u0275fac=function(){let re;return function(Ee){return(re||(re=n.\u0275\u0275getInheritedFactory(Z)))(Ee||Z)}}(),Z.\u0275cmp=n.\u0275\u0275defineComponent({type:Z,selectors:[["mat-optgroup"]],hostAttrs:[1,"mat-mdc-optgroup"],hostVars:3,hostBindings:function(ce,Ee){2&ce&&n.\u0275\u0275attribute("role",Ee._inert?null:"group")("aria-disabled",Ee._inert?null:Ee.disabled.toString())("aria-labelledby",Ee._inert?null:Ee._labelId)},inputs:{disabled:"disabled"},exportAs:["matOptgroup"],features:[n.\u0275\u0275ProvidersFeature([{provide:Yt,useExisting:Z}]),n.\u0275\u0275InheritDefinitionFeature],ngContentSelectors:u,decls:5,vars:4,consts:[["role","presentation",1,"mat-mdc-optgroup-label",3,"id"],[1,"mdc-list-item__primary-text"]],template:function(ce,Ee){1&ce&&(n.\u0275\u0275projectionDef(r),n.\u0275\u0275elementStart(0,"span",0)(1,"span",1),n.\u0275\u0275text(2),n.\u0275\u0275projection(3),n.\u0275\u0275elementEnd()(),n.\u0275\u0275projection(4,1)),2&ce&&(n.\u0275\u0275classProp("mdc-list-item--disabled",Ee.disabled),n.\u0275\u0275property("id",Ee._labelId),n.\u0275\u0275advance(2),n.\u0275\u0275textInterpolate1("",Ee.label," "))},styles:[".mat-mdc-optgroup{color:var(--mat-optgroup-label-text-color);font-family:var(--mat-optgroup-label-text-font);line-height:var(--mat-optgroup-label-text-line-height);font-size:var(--mat-optgroup-label-text-size);letter-spacing:var(--mat-optgroup-label-text-tracking);font-weight:var(--mat-optgroup-label-text-weight)}.mat-mdc-optgroup-label{display:flex;position:relative;align-items:center;justify-content:flex-start;overflow:hidden;padding:0;padding-left:16px;padding-right:16px;min-height:48px}.mat-mdc-optgroup-label:focus{outline:none}[dir=rtl] .mat-mdc-optgroup-label,.mat-mdc-optgroup-label[dir=rtl]{padding-left:16px;padding-right:16px}.mat-mdc-optgroup-label.mdc-list-item--disabled{opacity:.38}.mat-mdc-optgroup-label .mdc-list-item__primary-text{font-size:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;font-family:inherit;text-decoration:inherit;text-transform:inherit;white-space:normal}"],encapsulation:2,changeDetection:0}),Z})(),We=0;class ve{constructor(re,ce=!1){this.source=re,this.isUserInput=ce}}let we=(()=>{class Z{get multiple(){return this._parent&&this._parent.multiple}get selected(){return this._selected}get disabled(){return this.group&&this.group.disabled||this._disabled}set disabled(ce){this._disabled=(0,a.Ig)(ce)}get disableRipple(){return!(!this._parent||!this._parent.disableRipple)}get hideSingleSelectionIndicator(){return!(!this._parent||!this._parent.hideSingleSelectionIndicator)}constructor(ce,Ee,it,Rt){this._element=ce,this._changeDetectorRef=Ee,this._parent=it,this.group=Rt,this._selected=!1,this._active=!1,this._disabled=!1,this._mostRecentViewValue="",this.id="mat-option-"+We++,this.onSelectionChange=new n.EventEmitter,this._stateChanges=new s.x}get active(){return this._active}get viewValue(){return(this._text?.nativeElement.textContent||"").trim()}select(ce=!0){this._selected||(this._selected=!0,this._changeDetectorRef.markForCheck(),ce&&this._emitSelectionChangeEvent())}deselect(ce=!0){this._selected&&(this._selected=!1,this._changeDetectorRef.markForCheck(),ce&&this._emitSelectionChangeEvent())}focus(ce,Ee){const it=this._getHostElement();"function"==typeof it.focus&&it.focus(Ee)}setActiveStyles(){this._active||(this._active=!0,this._changeDetectorRef.markForCheck())}setInactiveStyles(){this._active&&(this._active=!1,this._changeDetectorRef.markForCheck())}getLabel(){return this.viewValue}_handleKeydown(ce){(ce.keyCode===d.K5||ce.keyCode===d.L_)&&!(0,d.Vb)(ce)&&(this._selectViaInteraction(),ce.preventDefault())}_selectViaInteraction(){this.disabled||(this._selected=!this.multiple||!this._selected,this._changeDetectorRef.markForCheck(),this._emitSelectionChangeEvent(!0))}_getTabIndex(){return this.disabled?"-1":"0"}_getHostElement(){return this._element.nativeElement}ngAfterViewChecked(){if(this._selected){const ce=this.viewValue;ce!==this._mostRecentViewValue&&(this._mostRecentViewValue&&this._stateChanges.next(),this._mostRecentViewValue=ce)}}ngOnDestroy(){this._stateChanges.complete()}_emitSelectionChangeEvent(ce=!1){this.onSelectionChange.emit(new ve(this,ce))}}return Z.\u0275fac=function(ce){n.\u0275\u0275invalidFactory()},Z.\u0275dir=n.\u0275\u0275defineDirective({type:Z,viewQuery:function(ce,Ee){if(1&ce&&n.\u0275\u0275viewQuery(h,7),2&ce){let it;n.\u0275\u0275queryRefresh(it=n.\u0275\u0275loadQuery())&&(Ee._text=it.first)}},inputs:{value:"value",id:"id",disabled:"disabled"},outputs:{onSelectionChange:"onSelectionChange"}}),Z})(),at=(()=>{class Z extends we{constructor(ce,Ee,it,Rt){super(ce,Ee,it,Rt)}}return Z.\u0275fac=function(ce){return new(ce||Z)(n.\u0275\u0275directiveInject(n.ElementRef),n.\u0275\u0275directiveInject(n.ChangeDetectorRef),n.\u0275\u0275directiveInject(ze,8),n.\u0275\u0275directiveInject(Yt,8))},Z.\u0275cmp=n.\u0275\u0275defineComponent({type:Z,selectors:[["mat-option"]],hostAttrs:["role","option",1,"mat-mdc-option","mdc-list-item"],hostVars:11,hostBindings:function(ce,Ee){1&ce&&n.\u0275\u0275listener("click",function(){return Ee._selectViaInteraction()})("keydown",function(Rt){return Ee._handleKeydown(Rt)}),2&ce&&(n.\u0275\u0275hostProperty("id",Ee.id),n.\u0275\u0275attribute("aria-selected",Ee.selected)("aria-disabled",Ee.disabled.toString()),n.\u0275\u0275classProp("mdc-list-item--selected",Ee.selected)("mat-mdc-option-multiple",Ee.multiple)("mat-mdc-option-active",Ee.active)("mdc-list-item--disabled",Ee.disabled))},exportAs:["matOption"],features:[n.\u0275\u0275InheritDefinitionFeature],ngContentSelectors:w,decls:8,vars:5,consts:[["class","mat-mdc-option-pseudo-checkbox","aria-hidden","true",3,"disabled","state",4,"ngIf"],[1,"mdc-list-item__primary-text"],["text",""],["class","mat-mdc-option-pseudo-checkbox","state","checked","aria-hidden","true","appearance","minimal",3,"disabled",4,"ngIf"],["class","cdk-visually-hidden",4,"ngIf"],["aria-hidden","true","mat-ripple","",1,"mat-mdc-option-ripple","mat-mdc-focus-indicator",3,"matRippleTrigger","matRippleDisabled"],["aria-hidden","true",1,"mat-mdc-option-pseudo-checkbox",3,"disabled","state"],["state","checked","aria-hidden","true","appearance","minimal",1,"mat-mdc-option-pseudo-checkbox",3,"disabled"],[1,"cdk-visually-hidden"]],template:function(ce,Ee){1&ce&&(n.\u0275\u0275projectionDef(x),n.\u0275\u0275template(0,m,1,2,"mat-pseudo-checkbox",0),n.\u0275\u0275projection(1),n.\u0275\u0275elementStart(2,"span",1,2),n.\u0275\u0275projection(4,1),n.\u0275\u0275elementEnd(),n.\u0275\u0275template(5,_,1,1,"mat-pseudo-checkbox",3),n.\u0275\u0275template(6,M,2,1,"span",4),n.\u0275\u0275element(7,"div",5)),2&ce&&(n.\u0275\u0275property("ngIf",Ee.multiple),n.\u0275\u0275advance(5),n.\u0275\u0275property("ngIf",!Ee.multiple&&Ee.selected&&!Ee.hideSingleSelectionIndicator),n.\u0275\u0275advance(1),n.\u0275\u0275property("ngIf",Ee.group&&Ee.group._inert),n.\u0275\u0275advance(1),n.\u0275\u0275property("matRippleTrigger",Ee._getHostElement())("matRippleDisabled",Ee.disabled||Ee.disableRipple))},dependencies:[ct,o.NgIf,Dt],styles:['.mat-mdc-option{display:flex;position:relative;align-items:center;justify-content:flex-start;overflow:hidden;padding:0;padding-left:16px;padding-right:16px;-webkit-user-select:none;user-select:none;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;cursor:pointer;-webkit-tap-highlight-color:rgba(0,0,0,0);color:var(--mat-option-label-text-color);font-family:var(--mat-option-label-text-font);line-height:var(--mat-option-label-text-line-height);font-size:var(--mat-option-label-text-size);letter-spacing:var(--mat-option-label-text-tracking);font-weight:var(--mat-option-label-text-weight);min-height:48px}.mat-mdc-option:focus{outline:none}[dir=rtl] .mat-mdc-option,.mat-mdc-option[dir=rtl]{padding-left:16px;padding-right:16px}.mat-mdc-option:hover:not(.mdc-list-item--disabled){background-color:var(--mat-option-hover-state-layer-color)}.mat-mdc-option:focus.mdc-list-item,.mat-mdc-option.mat-mdc-option-active.mdc-list-item{background-color:var(--mat-option-focus-state-layer-color)}.mat-mdc-option.mdc-list-item--selected:not(.mdc-list-item--disabled) .mdc-list-item__primary-text{color:var(--mat-option-selected-state-label-text-color)}.mat-mdc-option.mdc-list-item--selected:not(.mdc-list-item--disabled):not(.mat-mdc-option-multiple){background-color:var(--mat-option-selected-state-layer-color)}.mat-mdc-option.mdc-list-item{align-items:center}.mat-mdc-option.mdc-list-item--disabled{cursor:default;pointer-events:none}.mat-mdc-option.mdc-list-item--disabled .mat-mdc-option-pseudo-checkbox,.mat-mdc-option.mdc-list-item--disabled .mdc-list-item__primary-text,.mat-mdc-option.mdc-list-item--disabled>mat-icon{opacity:.38}.mat-mdc-optgroup .mat-mdc-option:not(.mat-mdc-option-multiple){padding-left:32px}[dir=rtl] .mat-mdc-optgroup .mat-mdc-option:not(.mat-mdc-option-multiple){padding-left:16px;padding-right:32px}.mat-mdc-option .mat-icon,.mat-mdc-option .mat-pseudo-checkbox-full{margin-right:16px;flex-shrink:0}[dir=rtl] .mat-mdc-option .mat-icon,[dir=rtl] .mat-mdc-option .mat-pseudo-checkbox-full{margin-right:0;margin-left:16px}.mat-mdc-option .mat-pseudo-checkbox-minimal{margin-left:16px;flex-shrink:0}[dir=rtl] .mat-mdc-option .mat-pseudo-checkbox-minimal{margin-right:16px;margin-left:0}.mat-mdc-option .mat-mdc-option-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}.mat-mdc-option .mdc-list-item__primary-text{white-space:normal;font-size:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;font-family:inherit;text-decoration:inherit;text-transform:inherit;margin-right:auto}[dir=rtl] .mat-mdc-option .mdc-list-item__primary-text{margin-right:0;margin-left:auto}.cdk-high-contrast-active .mat-mdc-option.mdc-list-item--selected:not(.mat-mdc-option-multiple)::after{content:"";position:absolute;top:50%;right:16px;transform:translateY(-50%);width:10px;height:0;border-bottom:solid 10px;border-radius:10px}[dir=rtl] .cdk-high-contrast-active .mat-mdc-option.mdc-list-item--selected:not(.mat-mdc-option-multiple)::after{right:auto;left:16px}.mat-mdc-option-active .mat-mdc-focus-indicator::before{content:""}'],encapsulation:2,changeDetection:0}),Z})();function De(Z,re,ce){if(ce.length){let Ee=re.toArray(),it=ce.toArray(),Rt=0;for(let Ye=0;Yece+Ee?Math.max(0,Z-Ee+re):ce}let ke=(()=>{class Z{}return Z.\u0275fac=function(ce){return new(ce||Z)},Z.\u0275mod=n.\u0275\u0275defineNgModule({type:Z}),Z.\u0275inj=n.\u0275\u0275defineInjector({imports:[Lt,o.CommonModule,D,Kt]}),Z})()},5616:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{DateRange:()=>Sn,DefaultMatCalendarRangeStrategy:()=>qt,MAT_DATEPICKER_SCROLL_STRATEGY:()=>oi,MAT_DATEPICKER_SCROLL_STRATEGY_FACTORY:()=>li,MAT_DATEPICKER_SCROLL_STRATEGY_FACTORY_PROVIDER:()=>Pi,MAT_DATEPICKER_VALIDATORS:()=>zt,MAT_DATEPICKER_VALUE_ACCESSOR:()=>It,MAT_DATE_RANGE_SELECTION_STRATEGY:()=>pt,MAT_RANGE_DATE_SELECTION_MODEL_FACTORY:()=>wt,MAT_RANGE_DATE_SELECTION_MODEL_PROVIDER:()=>mt,MAT_SINGLE_DATE_SELECTION_MODEL_FACTORY:()=>Li,MAT_SINGLE_DATE_SELECTION_MODEL_PROVIDER:()=>Qi,MatCalendar:()=>si,MatCalendarBody:()=>qe,MatCalendarCell:()=>ce,MatCalendarHeader:()=>Yn,MatDateRangeInput:()=>ti,MatDateRangePicker:()=>Ti,MatDateSelectionModel:()=>Mn,MatDatepicker:()=>W,MatDatepickerActions:()=>_r,MatDatepickerApply:()=>zi,MatDatepickerCancel:()=>xi,MatDatepickerContent:()=>Ft,MatDatepickerInput:()=>an,MatDatepickerInputEvent:()=>be,MatDatepickerIntl:()=>re,MatDatepickerModule:()=>gi,MatDatepickerToggle:()=>pn,MatDatepickerToggleIcon:()=>gn,MatEndDate:()=>rn,MatMonthView:()=>$n,MatMultiYearView:()=>mi,MatRangeDateSelectionModel:()=>di,MatSingleDateSelectionModel:()=>Ci,MatStartDate:()=>yn,MatYearView:()=>Dn,matDatepickerAnimations:()=>ii,yearsPerPage:()=>In,yearsPerRow:()=>Zn});var n=g(4300),p=g(9594),C=g(8484),b=g(6814),o=g(5879),v=g(2831),a=g(3680);const c=["mat-button",""],s=[[["",8,"material-icons",3,"iconPositionEnd",""],["mat-icon",3,"iconPositionEnd",""],["","matButtonIcon","",3,"iconPositionEnd",""]],"*",[["","iconPositionEnd","",8,"material-icons"],["mat-icon","iconPositionEnd",""],["","matButtonIcon","","iconPositionEnd",""]]],l=[".material-icons:not([iconPositionEnd]), mat-icon:not([iconPositionEnd]), [matButtonIcon]:not([iconPositionEnd])","*",".material-icons[iconPositionEnd], mat-icon[iconPositionEnd], [matButtonIcon][iconPositionEnd]"],_=["mat-icon-button",""],M=["*"],w={capture:!0},L=["focus","click","mouseenter","touchstart"],A="mat-button-ripple-uninitialized";let T=(()=>{class Ke{constructor(){this._document=(0,o.inject)(b.DOCUMENT,{optional:!0}),this._animationMode=(0,o.inject)(o.ANIMATION_MODULE_TYPE,{optional:!0}),this._globalRippleOptions=(0,o.inject)(a.MAT_RIPPLE_GLOBAL_OPTIONS,{optional:!0}),this._platform=(0,o.inject)(v.t4),this._ngZone=(0,o.inject)(o.NgZone),this._onInteraction=U=>{if(U.target===this._document)return;const Pe=U.target.closest(`[${A}]`);Pe&&(Pe.removeAttribute(A),this._appendRipple(Pe))},this._ngZone.runOutsideAngular(()=>{for(const U of L)this._document?.addEventListener(U,this._onInteraction,w)})}ngOnDestroy(){for(const U of L)this._document?.removeEventListener(U,this._onInteraction,w)}_appendRipple(U){if(!this._document)return;const fe=this._document.createElement("span");fe.classList.add("mat-mdc-button-ripple");const Pe=new O(U,this._globalRippleOptions?this._globalRippleOptions:void 0,this._animationMode?this._animationMode:void 0);Pe.rippleConfig.centered=U.hasAttribute("mat-icon-button"),new a.RippleRenderer(Pe,this._ngZone,fe,this._platform).setupTriggerEvents(U),U.append(fe)}_createMatRipple(U){if(!this._document)return;U.querySelector(".mat-mdc-button-ripple")?.remove(),U.removeAttribute(A);const fe=this._document.createElement("span");fe.classList.add("mat-mdc-button-ripple");const Pe=new a.MatRipple(new o.ElementRef(fe),this._ngZone,this._platform,this._globalRippleOptions?this._globalRippleOptions:void 0,this._animationMode?this._animationMode:void 0);return Pe._isInitialized=!0,Pe.trigger=U,U.append(fe),Pe}}return Ke.\u0275fac=function(U){return new(U||Ke)},Ke.\u0275prov=o.\u0275\u0275defineInjectable({token:Ke,factory:Ke.\u0275fac,providedIn:"root"}),Ke})();class O{constructor(kt,U,fe){this._button=kt,this._globalRippleOptions=U,this._setRippleConfig(U,fe)}_setRippleConfig(kt,U){this.rippleConfig=kt||{},"NoopAnimations"===U&&(this.rippleConfig.animation={enterDuration:0,exitDuration:0})}get rippleDisabled(){return this._button.hasAttribute("disabled")||!!this._globalRippleOptions?.disabled}}const R=[{selector:"mat-button",mdcClasses:["mdc-button","mat-mdc-button"]},{selector:"mat-flat-button",mdcClasses:["mdc-button","mdc-button--unelevated","mat-mdc-unelevated-button"]},{selector:"mat-raised-button",mdcClasses:["mdc-button","mdc-button--raised","mat-mdc-raised-button"]},{selector:"mat-stroked-button",mdcClasses:["mdc-button","mdc-button--outlined","mat-mdc-outlined-button"]},{selector:"mat-fab",mdcClasses:["mdc-fab","mat-mdc-fab"]},{selector:"mat-mini-fab",mdcClasses:["mdc-fab","mdc-fab--mini","mat-mdc-mini-fab"]},{selector:"mat-icon-button",mdcClasses:["mdc-icon-button","mat-mdc-icon-button"]}],j=(0,a.mixinColor)((0,a.mixinDisabled)((0,a.mixinDisableRipple)(class{constructor(Ke){this._elementRef=Ke}})));let N=(()=>{class Ke extends j{get ripple(){return!this._ripple&&this._rippleLoader&&(this._ripple=this._rippleLoader._createMatRipple(this._elementRef.nativeElement)),this._ripple}set ripple(U){this._ripple=U}constructor(U,fe,Pe,Je){super(U),this._platform=fe,this._ngZone=Pe,this._animationMode=Je,this._focusMonitor=(0,o.inject)(n.tE),this._rippleLoader=(0,o.inject)(T),this._isFab=!1;const Gt=U.nativeElement.classList;for(const Pn of R)this._hasHostAttributes(Pn.selector)&&Pn.mdcClasses.forEach(Gi=>{Gt.add(Gi)})}ngAfterViewInit(){this._focusMonitor.monitor(this._elementRef,!0)}ngOnChanges(){this._ripple&&(this._ripple.disabled=this.disableRipple||this.disabled)}ngOnDestroy(){this._focusMonitor.stopMonitoring(this._elementRef)}focus(U="program",fe){U?this._focusMonitor.focusVia(this._elementRef.nativeElement,U,fe):this._elementRef.nativeElement.focus(fe)}_hasHostAttributes(...U){return U.some(fe=>this._elementRef.nativeElement.hasAttribute(fe))}}return Ke.\u0275fac=function(U){o.\u0275\u0275invalidFactory()},Ke.\u0275dir=o.\u0275\u0275defineDirective({type:Ke,features:[o.\u0275\u0275InheritDefinitionFeature,o.\u0275\u0275NgOnChangesFeature]}),Ke})(),Y=(()=>{class Ke extends N{constructor(U,fe,Pe,Je){super(U,fe,Pe,Je)}}return Ke.\u0275fac=function(U){return new(U||Ke)(o.\u0275\u0275directiveInject(o.ElementRef),o.\u0275\u0275directiveInject(v.t4),o.\u0275\u0275directiveInject(o.NgZone),o.\u0275\u0275directiveInject(o.ANIMATION_MODULE_TYPE,8))},Ke.\u0275cmp=o.\u0275\u0275defineComponent({type:Ke,selectors:[["button","mat-button",""],["button","mat-raised-button",""],["button","mat-flat-button",""],["button","mat-stroked-button",""]],hostAttrs:["mat-button-ripple-uninitialized",""],hostVars:7,hostBindings:function(U,fe){2&U&&(o.\u0275\u0275attribute("disabled",fe.disabled||null),o.\u0275\u0275classProp("_mat-animation-noopable","NoopAnimations"===fe._animationMode)("mat-unthemed",!fe.color)("mat-mdc-button-base",!0))},inputs:{disabled:"disabled",disableRipple:"disableRipple",color:"color"},exportAs:["matButton"],features:[o.\u0275\u0275InheritDefinitionFeature],attrs:c,ngContentSelectors:l,decls:7,vars:4,consts:[[1,"mat-mdc-button-persistent-ripple"],[1,"mdc-button__label"],[1,"mat-mdc-focus-indicator"],[1,"mat-mdc-button-touch-target"]],template:function(U,fe){1&U&&(o.\u0275\u0275projectionDef(s),o.\u0275\u0275element(0,"span",0),o.\u0275\u0275projection(1),o.\u0275\u0275elementStart(2,"span",1),o.\u0275\u0275projection(3,1),o.\u0275\u0275elementEnd(),o.\u0275\u0275projection(4,2),o.\u0275\u0275element(5,"span",2)(6,"span",3)),2&U&&o.\u0275\u0275classProp("mdc-button__ripple",!fe._isFab)("mdc-fab__ripple",fe._isFab)},styles:['.mdc-touch-target-wrapper{display:inline}.mdc-elevation-overlay{position:absolute;border-radius:inherit;pointer-events:none;opacity:var(--mdc-elevation-overlay-opacity, 0);transition:opacity 280ms cubic-bezier(0.4, 0, 0.2, 1)}.mdc-button{position:relative;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-width:64px;border:none;outline:none;line-height:inherit;user-select:none;-webkit-appearance:none;overflow:visible;vertical-align:middle;background:rgba(0,0,0,0)}.mdc-button .mdc-elevation-overlay{width:100%;height:100%;top:0;left:0}.mdc-button::-moz-focus-inner{padding:0;border:0}.mdc-button:active{outline:none}.mdc-button:hover{cursor:pointer}.mdc-button:disabled{cursor:default;pointer-events:none}.mdc-button[hidden]{display:none}.mdc-button .mdc-button__icon{margin-left:0;margin-right:8px;display:inline-block;position:relative;vertical-align:top}[dir=rtl] .mdc-button .mdc-button__icon,.mdc-button .mdc-button__icon[dir=rtl]{margin-left:8px;margin-right:0}.mdc-button .mdc-button__progress-indicator{font-size:0;position:absolute;transform:translate(-50%, -50%);top:50%;left:50%;line-height:initial}.mdc-button .mdc-button__label{position:relative}.mdc-button .mdc-button__focus-ring{pointer-events:none;border:2px solid rgba(0,0,0,0);border-radius:6px;box-sizing:content-box;position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);height:calc(\n 100% + 4px\n );width:calc(\n 100% + 4px\n );display:none}@media screen and (forced-colors: active){.mdc-button .mdc-button__focus-ring{border-color:CanvasText}}.mdc-button .mdc-button__focus-ring::after{content:"";border:2px solid rgba(0,0,0,0);border-radius:8px;display:block;position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);height:calc(100% + 4px);width:calc(100% + 4px)}@media screen and (forced-colors: active){.mdc-button .mdc-button__focus-ring::after{border-color:CanvasText}}@media screen and (forced-colors: active){.mdc-button.mdc-ripple-upgraded--background-focused .mdc-button__focus-ring,.mdc-button:not(.mdc-ripple-upgraded):focus .mdc-button__focus-ring{display:block}}.mdc-button .mdc-button__touch{position:absolute;top:50%;height:48px;left:0;right:0;transform:translateY(-50%)}.mdc-button__label+.mdc-button__icon{margin-left:8px;margin-right:0}[dir=rtl] .mdc-button__label+.mdc-button__icon,.mdc-button__label+.mdc-button__icon[dir=rtl]{margin-left:0;margin-right:8px}svg.mdc-button__icon{fill:currentColor}.mdc-button--touch{margin-top:6px;margin-bottom:6px}.mdc-button{padding:0 8px 0 8px}.mdc-button--unelevated{transition:box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);padding:0 16px 0 16px}.mdc-button--unelevated.mdc-button--icon-trailing{padding:0 12px 0 16px}.mdc-button--unelevated.mdc-button--icon-leading{padding:0 16px 0 12px}.mdc-button--raised{transition:box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);padding:0 16px 0 16px}.mdc-button--raised.mdc-button--icon-trailing{padding:0 12px 0 16px}.mdc-button--raised.mdc-button--icon-leading{padding:0 16px 0 12px}.mdc-button--outlined{border-style:solid;transition:border 280ms cubic-bezier(0.4, 0, 0.2, 1)}.mdc-button--outlined .mdc-button__ripple{border-style:solid;border-color:rgba(0,0,0,0)}.mat-mdc-button{height:var(--mdc-text-button-container-height, 36px);border-radius:var(--mdc-text-button-container-shape, var(--mdc-shape-small, 4px))}.mat-mdc-button:not(:disabled){color:var(--mdc-text-button-label-text-color, inherit)}.mat-mdc-button:disabled{color:var(--mdc-text-button-disabled-label-text-color, rgba(0, 0, 0, 0.38))}.mat-mdc-button .mdc-button__ripple{border-radius:var(--mdc-text-button-container-shape, var(--mdc-shape-small, 4px))}.mat-mdc-unelevated-button{height:var(--mdc-filled-button-container-height, 36px);border-radius:var(--mdc-filled-button-container-shape, var(--mdc-shape-small, 4px))}.mat-mdc-unelevated-button:not(:disabled){background-color:var(--mdc-filled-button-container-color, transparent)}.mat-mdc-unelevated-button:disabled{background-color:var(--mdc-filled-button-disabled-container-color, rgba(0, 0, 0, 0.12))}.mat-mdc-unelevated-button:not(:disabled){color:var(--mdc-filled-button-label-text-color, inherit)}.mat-mdc-unelevated-button:disabled{color:var(--mdc-filled-button-disabled-label-text-color, rgba(0, 0, 0, 0.38))}.mat-mdc-unelevated-button .mdc-button__ripple{border-radius:var(--mdc-filled-button-container-shape, var(--mdc-shape-small, 4px))}.mat-mdc-raised-button{height:var(--mdc-protected-button-container-height, 36px);border-radius:var(--mdc-protected-button-container-shape, var(--mdc-shape-small, 4px));box-shadow:var(--mdc-protected-button-container-elevation, 0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12))}.mat-mdc-raised-button:not(:disabled){background-color:var(--mdc-protected-button-container-color, transparent)}.mat-mdc-raised-button:disabled{background-color:var(--mdc-protected-button-disabled-container-color, rgba(0, 0, 0, 0.12))}.mat-mdc-raised-button:not(:disabled){color:var(--mdc-protected-button-label-text-color, inherit)}.mat-mdc-raised-button:disabled{color:var(--mdc-protected-button-disabled-label-text-color, rgba(0, 0, 0, 0.38))}.mat-mdc-raised-button .mdc-button__ripple{border-radius:var(--mdc-protected-button-container-shape, var(--mdc-shape-small, 4px))}.mat-mdc-raised-button.mdc-ripple-upgraded--background-focused,.mat-mdc-raised-button:not(.mdc-ripple-upgraded):focus{box-shadow:var(--mdc-protected-button-focus-container-elevation, 0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12))}.mat-mdc-raised-button:hover{box-shadow:var(--mdc-protected-button-hover-container-elevation, 0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12))}.mat-mdc-raised-button:not(:disabled):active{box-shadow:var(--mdc-protected-button-pressed-container-elevation, 0px 5px 5px -3px rgba(0, 0, 0, 0.2), 0px 8px 10px 1px rgba(0, 0, 0, 0.14), 0px 3px 14px 2px rgba(0, 0, 0, 0.12))}.mat-mdc-raised-button:disabled{box-shadow:var(--mdc-protected-button-disabled-container-elevation, 0px 0px 0px 0px rgba(0, 0, 0, 0.2), 0px 0px 0px 0px rgba(0, 0, 0, 0.14), 0px 0px 0px 0px rgba(0, 0, 0, 0.12))}.mat-mdc-outlined-button{height:var(--mdc-outlined-button-container-height, 36px);border-radius:var(--mdc-outlined-button-container-shape, var(--mdc-shape-small, 4px));padding:0 15px 0 15px;border-width:var(--mdc-outlined-button-outline-width, 1px)}.mat-mdc-outlined-button:not(:disabled){color:var(--mdc-outlined-button-label-text-color, inherit)}.mat-mdc-outlined-button:disabled{color:var(--mdc-outlined-button-disabled-label-text-color, rgba(0, 0, 0, 0.38))}.mat-mdc-outlined-button .mdc-button__ripple{border-radius:var(--mdc-outlined-button-container-shape, var(--mdc-shape-small, 4px))}.mat-mdc-outlined-button:not(:disabled){border-color:var(--mdc-outlined-button-outline-color, rgba(0, 0, 0, 0.12))}.mat-mdc-outlined-button:disabled{border-color:var(--mdc-outlined-button-disabled-outline-color, rgba(0, 0, 0, 0.12))}.mat-mdc-outlined-button.mdc-button--icon-trailing{padding:0 11px 0 15px}.mat-mdc-outlined-button.mdc-button--icon-leading{padding:0 15px 0 11px}.mat-mdc-outlined-button .mdc-button__ripple{top:-1px;left:-1px;bottom:-1px;right:-1px;border-width:var(--mdc-outlined-button-outline-width, 1px)}.mat-mdc-outlined-button .mdc-button__touch{left:calc(-1 * var(--mdc-outlined-button-outline-width, 1px));width:calc(100% + 2 * var(--mdc-outlined-button-outline-width, 1px))}.mat-mdc-button,.mat-mdc-unelevated-button,.mat-mdc-raised-button,.mat-mdc-outlined-button{-webkit-tap-highlight-color:rgba(0,0,0,0)}.mat-mdc-button .mat-mdc-button-ripple,.mat-mdc-button .mat-mdc-button-persistent-ripple,.mat-mdc-button .mat-mdc-button-persistent-ripple::before,.mat-mdc-unelevated-button .mat-mdc-button-ripple,.mat-mdc-unelevated-button .mat-mdc-button-persistent-ripple,.mat-mdc-unelevated-button .mat-mdc-button-persistent-ripple::before,.mat-mdc-raised-button .mat-mdc-button-ripple,.mat-mdc-raised-button .mat-mdc-button-persistent-ripple,.mat-mdc-raised-button .mat-mdc-button-persistent-ripple::before,.mat-mdc-outlined-button .mat-mdc-button-ripple,.mat-mdc-outlined-button .mat-mdc-button-persistent-ripple,.mat-mdc-outlined-button .mat-mdc-button-persistent-ripple::before{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none;border-radius:inherit}.mat-mdc-button .mat-mdc-button-ripple,.mat-mdc-unelevated-button .mat-mdc-button-ripple,.mat-mdc-raised-button .mat-mdc-button-ripple,.mat-mdc-outlined-button .mat-mdc-button-ripple{overflow:hidden}.mat-mdc-button .mat-mdc-button-persistent-ripple::before,.mat-mdc-unelevated-button .mat-mdc-button-persistent-ripple::before,.mat-mdc-raised-button .mat-mdc-button-persistent-ripple::before,.mat-mdc-outlined-button .mat-mdc-button-persistent-ripple::before{content:"";opacity:0;background-color:var(--mat-mdc-button-persistent-ripple-color)}.mat-mdc-button .mat-ripple-element,.mat-mdc-unelevated-button .mat-ripple-element,.mat-mdc-raised-button .mat-ripple-element,.mat-mdc-outlined-button .mat-ripple-element{background-color:var(--mat-mdc-button-ripple-color)}.mat-mdc-button .mdc-button__label,.mat-mdc-unelevated-button .mdc-button__label,.mat-mdc-raised-button .mdc-button__label,.mat-mdc-outlined-button .mdc-button__label{z-index:1}.mat-mdc-button .mat-mdc-focus-indicator,.mat-mdc-unelevated-button .mat-mdc-focus-indicator,.mat-mdc-raised-button .mat-mdc-focus-indicator,.mat-mdc-outlined-button .mat-mdc-focus-indicator{top:0;left:0;right:0;bottom:0;position:absolute}.mat-mdc-button:focus .mat-mdc-focus-indicator::before,.mat-mdc-unelevated-button:focus .mat-mdc-focus-indicator::before,.mat-mdc-raised-button:focus .mat-mdc-focus-indicator::before,.mat-mdc-outlined-button:focus .mat-mdc-focus-indicator::before{content:""}.mat-mdc-button[disabled],.mat-mdc-unelevated-button[disabled],.mat-mdc-raised-button[disabled],.mat-mdc-outlined-button[disabled]{cursor:default;pointer-events:none}.mat-mdc-button .mat-mdc-button-touch-target,.mat-mdc-unelevated-button .mat-mdc-button-touch-target,.mat-mdc-raised-button .mat-mdc-button-touch-target,.mat-mdc-outlined-button .mat-mdc-button-touch-target{position:absolute;top:50%;height:48px;left:0;right:0;transform:translateY(-50%)}.mat-mdc-button._mat-animation-noopable,.mat-mdc-unelevated-button._mat-animation-noopable,.mat-mdc-raised-button._mat-animation-noopable,.mat-mdc-outlined-button._mat-animation-noopable{transition:none !important;animation:none !important}.mat-mdc-button>.mat-icon{margin-left:0;margin-right:8px;display:inline-block;position:relative;vertical-align:top;font-size:1.125rem;height:1.125rem;width:1.125rem}[dir=rtl] .mat-mdc-button>.mat-icon,.mat-mdc-button>.mat-icon[dir=rtl]{margin-left:8px;margin-right:0}.mat-mdc-button .mdc-button__label+.mat-icon{margin-left:8px;margin-right:0}[dir=rtl] .mat-mdc-button .mdc-button__label+.mat-icon,.mat-mdc-button .mdc-button__label+.mat-icon[dir=rtl]{margin-left:0;margin-right:8px}.mat-mdc-unelevated-button>.mat-icon,.mat-mdc-raised-button>.mat-icon,.mat-mdc-outlined-button>.mat-icon{margin-left:0;margin-right:8px;display:inline-block;position:relative;vertical-align:top;font-size:1.125rem;height:1.125rem;width:1.125rem;margin-left:-4px;margin-right:8px}[dir=rtl] .mat-mdc-unelevated-button>.mat-icon,[dir=rtl] .mat-mdc-raised-button>.mat-icon,[dir=rtl] .mat-mdc-outlined-button>.mat-icon,.mat-mdc-unelevated-button>.mat-icon[dir=rtl],.mat-mdc-raised-button>.mat-icon[dir=rtl],.mat-mdc-outlined-button>.mat-icon[dir=rtl]{margin-left:8px;margin-right:0}[dir=rtl] .mat-mdc-unelevated-button>.mat-icon,[dir=rtl] .mat-mdc-raised-button>.mat-icon,[dir=rtl] .mat-mdc-outlined-button>.mat-icon,.mat-mdc-unelevated-button>.mat-icon[dir=rtl],.mat-mdc-raised-button>.mat-icon[dir=rtl],.mat-mdc-outlined-button>.mat-icon[dir=rtl]{margin-left:8px;margin-right:-4px}.mat-mdc-unelevated-button .mdc-button__label+.mat-icon,.mat-mdc-raised-button .mdc-button__label+.mat-icon,.mat-mdc-outlined-button .mdc-button__label+.mat-icon{margin-left:8px;margin-right:-4px}[dir=rtl] .mat-mdc-unelevated-button .mdc-button__label+.mat-icon,[dir=rtl] .mat-mdc-raised-button .mdc-button__label+.mat-icon,[dir=rtl] .mat-mdc-outlined-button .mdc-button__label+.mat-icon,.mat-mdc-unelevated-button .mdc-button__label+.mat-icon[dir=rtl],.mat-mdc-raised-button .mdc-button__label+.mat-icon[dir=rtl],.mat-mdc-outlined-button .mdc-button__label+.mat-icon[dir=rtl]{margin-left:-4px;margin-right:8px}.mat-mdc-outlined-button .mat-mdc-button-ripple,.mat-mdc-outlined-button .mdc-button__ripple{top:-1px;left:-1px;bottom:-1px;right:-1px;border-width:-1px}.mat-mdc-unelevated-button .mat-mdc-focus-indicator::before,.mat-mdc-raised-button .mat-mdc-focus-indicator::before{margin:calc(calc(var(--mat-mdc-focus-indicator-border-width, 3px) + 2px) * -1)}.mat-mdc-outlined-button .mat-mdc-focus-indicator::before{margin:calc(calc(var(--mat-mdc-focus-indicator-border-width, 3px) + 3px) * -1)}',".cdk-high-contrast-active .mat-mdc-button:not(.mdc-button--outlined),.cdk-high-contrast-active .mat-mdc-unelevated-button:not(.mdc-button--outlined),.cdk-high-contrast-active .mat-mdc-raised-button:not(.mdc-button--outlined),.cdk-high-contrast-active .mat-mdc-outlined-button:not(.mdc-button--outlined),.cdk-high-contrast-active .mat-mdc-icon-button{outline:solid 1px}"],encapsulation:2,changeDetection:0}),Ke})(),Xe=(()=>{class Ke extends N{get ripple(){return!this._ripple&&this._rippleLoader&&(this._ripple=this._rippleLoader._createMatRipple(this._elementRef.nativeElement),this._ripple.centered=!0),this._ripple}constructor(U,fe,Pe,Je){super(U,fe,Pe,Je)}}return Ke.\u0275fac=function(U){return new(U||Ke)(o.\u0275\u0275directiveInject(o.ElementRef),o.\u0275\u0275directiveInject(v.t4),o.\u0275\u0275directiveInject(o.NgZone),o.\u0275\u0275directiveInject(o.ANIMATION_MODULE_TYPE,8))},Ke.\u0275cmp=o.\u0275\u0275defineComponent({type:Ke,selectors:[["button","mat-icon-button",""]],hostAttrs:["mat-button-ripple-uninitialized",""],hostVars:7,hostBindings:function(U,fe){2&U&&(o.\u0275\u0275attribute("disabled",fe.disabled||null),o.\u0275\u0275classProp("_mat-animation-noopable","NoopAnimations"===fe._animationMode)("mat-unthemed",!fe.color)("mat-mdc-button-base",!0))},inputs:{disabled:"disabled",disableRipple:"disableRipple",color:"color"},exportAs:["matButton"],features:[o.\u0275\u0275InheritDefinitionFeature],attrs:_,ngContentSelectors:M,decls:4,vars:0,consts:[[1,"mat-mdc-button-persistent-ripple","mdc-icon-button__ripple"],[1,"mat-mdc-focus-indicator"],[1,"mat-mdc-button-touch-target"]],template:function(U,fe){1&U&&(o.\u0275\u0275projectionDef(),o.\u0275\u0275element(0,"span",0),o.\u0275\u0275projection(1),o.\u0275\u0275element(2,"span",1)(3,"span",2))},styles:['.mdc-icon-button{display:inline-block;position:relative;box-sizing:border-box;border:none;outline:none;background-color:rgba(0,0,0,0);fill:currentColor;color:inherit;text-decoration:none;cursor:pointer;user-select:none;z-index:0;overflow:visible}.mdc-icon-button .mdc-icon-button__touch{position:absolute;top:50%;height:48px;left:50%;width:48px;transform:translate(-50%, -50%)}@media screen and (forced-colors: active){.mdc-icon-button.mdc-ripple-upgraded--background-focused .mdc-icon-button__focus-ring,.mdc-icon-button:not(.mdc-ripple-upgraded):focus .mdc-icon-button__focus-ring{display:block}}.mdc-icon-button:disabled{cursor:default;pointer-events:none}.mdc-icon-button[hidden]{display:none}.mdc-icon-button--display-flex{align-items:center;display:inline-flex;justify-content:center}.mdc-icon-button__focus-ring{pointer-events:none;border:2px solid rgba(0,0,0,0);border-radius:6px;box-sizing:content-box;position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);height:100%;width:100%;display:none}@media screen and (forced-colors: active){.mdc-icon-button__focus-ring{border-color:CanvasText}}.mdc-icon-button__focus-ring::after{content:"";border:2px solid rgba(0,0,0,0);border-radius:8px;display:block;position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);height:calc(100% + 4px);width:calc(100% + 4px)}@media screen and (forced-colors: active){.mdc-icon-button__focus-ring::after{border-color:CanvasText}}.mdc-icon-button__icon{display:inline-block}.mdc-icon-button__icon.mdc-icon-button__icon--on{display:none}.mdc-icon-button--on .mdc-icon-button__icon{display:none}.mdc-icon-button--on .mdc-icon-button__icon.mdc-icon-button__icon--on{display:inline-block}.mdc-icon-button__link{height:100%;left:0;outline:none;position:absolute;top:0;width:100%}.mat-mdc-icon-button{height:var(--mdc-icon-button-state-layer-size);width:var(--mdc-icon-button-state-layer-size);color:var(--mdc-icon-button-icon-color);--mdc-icon-button-state-layer-size:48px;--mdc-icon-button-icon-size:24px;--mdc-icon-button-disabled-icon-color:black;--mdc-icon-button-disabled-icon-opacity:0.38}.mat-mdc-icon-button .mdc-button__icon{font-size:var(--mdc-icon-button-icon-size)}.mat-mdc-icon-button svg,.mat-mdc-icon-button img{width:var(--mdc-icon-button-icon-size);height:var(--mdc-icon-button-icon-size)}.mat-mdc-icon-button:disabled{opacity:var(--mdc-icon-button-disabled-icon-opacity)}.mat-mdc-icon-button:disabled{color:var(--mdc-icon-button-disabled-icon-color)}.mat-mdc-icon-button{padding:12px;font-size:var(--mdc-icon-button-icon-size);border-radius:50%;flex-shrink:0;text-align:center;-webkit-tap-highlight-color:rgba(0,0,0,0)}.mat-mdc-icon-button svg{vertical-align:baseline}.mat-mdc-icon-button[disabled]{cursor:default;pointer-events:none;opacity:1}.mat-mdc-icon-button .mat-mdc-button-ripple,.mat-mdc-icon-button .mat-mdc-button-persistent-ripple,.mat-mdc-icon-button .mat-mdc-button-persistent-ripple::before{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none;border-radius:inherit}.mat-mdc-icon-button .mat-mdc-button-ripple{overflow:hidden}.mat-mdc-icon-button .mat-mdc-button-persistent-ripple::before{content:"";opacity:0;background-color:var(--mat-mdc-button-persistent-ripple-color)}.mat-mdc-icon-button .mat-ripple-element{background-color:var(--mat-mdc-button-ripple-color)}.mat-mdc-icon-button .mdc-button__label{z-index:1}.mat-mdc-icon-button .mat-mdc-focus-indicator{top:0;left:0;right:0;bottom:0;position:absolute}.mat-mdc-icon-button:focus .mat-mdc-focus-indicator::before{content:""}.mat-mdc-icon-button .mat-mdc-button-touch-target{position:absolute;top:50%;height:48px;left:50%;width:48px;transform:translate(-50%, -50%)}.mat-mdc-icon-button._mat-animation-noopable{transition:none !important;animation:none !important}.mat-mdc-icon-button .mat-mdc-button-persistent-ripple{border-radius:50%}.mat-mdc-icon-button.mat-unthemed:not(.mdc-ripple-upgraded):focus::before,.mat-mdc-icon-button.mat-primary:not(.mdc-ripple-upgraded):focus::before,.mat-mdc-icon-button.mat-accent:not(.mdc-ripple-upgraded):focus::before,.mat-mdc-icon-button.mat-warn:not(.mdc-ripple-upgraded):focus::before{background:rgba(0,0,0,0);opacity:1}',".cdk-high-contrast-active .mat-mdc-button:not(.mdc-button--outlined),.cdk-high-contrast-active .mat-mdc-unelevated-button:not(.mdc-button--outlined),.cdk-high-contrast-active .mat-mdc-raised-button:not(.mdc-button--outlined),.cdk-high-contrast-active .mat-mdc-outlined-button:not(.mdc-button--outlined),.cdk-high-contrast-active .mat-mdc-icon-button{outline:solid 1px}"],encapsulation:2,changeDetection:0}),Ke})(),$e=(()=>{class Ke{}return Ke.\u0275fac=function(U){return new(U||Ke)},Ke.\u0275mod=o.\u0275\u0275defineNgModule({type:Ke}),Ke.\u0275inj=o.\u0275\u0275defineInjector({imports:[a.MatCommonModule,a.MatRippleModule,a.MatCommonModule]}),Ke})();var st=g(6672),Mt=g(8645),tt=g(7394),St=g(3019),bt=g(2096),xt=g(6028),nt=g(9388),ot=g(8180),vt=g(7921),rt=g(2181),J=g(2495),Ce=g(6825),ee=g(6223),ae=g(1043),ie=g(4516);const pe=["mat-calendar-body",""];function Te(Ke,kt){if(1&Ke&&(o.\u0275\u0275elementStart(0,"tr",3)(1,"td",4),o.\u0275\u0275text(2),o.\u0275\u0275elementEnd()()),2&Ke){const U=o.\u0275\u0275nextContext();o.\u0275\u0275advance(1),o.\u0275\u0275styleProp("padding-top",U._cellPadding)("padding-bottom",U._cellPadding),o.\u0275\u0275attribute("colspan",U.numCols),o.\u0275\u0275advance(1),o.\u0275\u0275textInterpolate1(" ",U.label," ")}}function ct(Ke,kt){if(1&Ke&&(o.\u0275\u0275elementStart(0,"td",4),o.\u0275\u0275text(1),o.\u0275\u0275elementEnd()),2&Ke){const U=o.\u0275\u0275nextContext(2);o.\u0275\u0275styleProp("padding-top",U._cellPadding)("padding-bottom",U._cellPadding),o.\u0275\u0275attribute("colspan",U._firstRowOffset),o.\u0275\u0275advance(1),o.\u0275\u0275textInterpolate1(" ",U._firstRowOffset>=U.labelMinRequiredCells?U.label:""," ")}}function Lt(Ke,kt){if(1&Ke){const U=o.\u0275\u0275getCurrentView();o.\u0275\u0275elementStart(0,"td",8)(1,"button",9),o.\u0275\u0275listener("click",function(Pe){const Gt=o.\u0275\u0275restoreView(U).$implicit,Pn=o.\u0275\u0275nextContext(2);return o.\u0275\u0275resetView(Pn._cellClicked(Gt,Pe))})("focus",function(Pe){const Gt=o.\u0275\u0275restoreView(U).$implicit,Pn=o.\u0275\u0275nextContext(2);return o.\u0275\u0275resetView(Pn._emitActiveDateChange(Gt,Pe))}),o.\u0275\u0275elementStart(2,"span",10),o.\u0275\u0275text(3),o.\u0275\u0275elementEnd(),o.\u0275\u0275element(4,"span",11),o.\u0275\u0275elementEnd()()}if(2&Ke){const U=kt.$implicit,fe=kt.index,Pe=o.\u0275\u0275nextContext().index,Je=o.\u0275\u0275nextContext();o.\u0275\u0275styleProp("width",Je._cellWidth)("padding-top",Je._cellPadding)("padding-bottom",Je._cellPadding),o.\u0275\u0275attribute("data-mat-row",Pe)("data-mat-col",fe),o.\u0275\u0275advance(1),o.\u0275\u0275classProp("mat-calendar-body-disabled",!U.enabled)("mat-calendar-body-active",Je._isActiveCell(Pe,fe))("mat-calendar-body-range-start",Je._isRangeStart(U.compareValue))("mat-calendar-body-range-end",Je._isRangeEnd(U.compareValue))("mat-calendar-body-in-range",Je._isInRange(U.compareValue))("mat-calendar-body-comparison-bridge-start",Je._isComparisonBridgeStart(U.compareValue,Pe,fe))("mat-calendar-body-comparison-bridge-end",Je._isComparisonBridgeEnd(U.compareValue,Pe,fe))("mat-calendar-body-comparison-start",Je._isComparisonStart(U.compareValue))("mat-calendar-body-comparison-end",Je._isComparisonEnd(U.compareValue))("mat-calendar-body-in-comparison-range",Je._isInComparisonRange(U.compareValue))("mat-calendar-body-preview-start",Je._isPreviewStart(U.compareValue))("mat-calendar-body-preview-end",Je._isPreviewEnd(U.compareValue))("mat-calendar-body-in-preview",Je._isInPreview(U.compareValue)),o.\u0275\u0275property("ngClass",U.cssClasses)("tabindex",Je._isActiveCell(Pe,fe)?0:-1),o.\u0275\u0275attribute("aria-label",U.ariaLabel)("aria-disabled",!U.enabled||null)("aria-pressed",Je._isSelected(U.compareValue))("aria-current",Je.todayValue===U.compareValue?"date":null)("aria-describedby",Je._getDescribedby(U.compareValue)),o.\u0275\u0275advance(1),o.\u0275\u0275classProp("mat-calendar-body-selected",Je._isSelected(U.compareValue))("mat-calendar-body-comparison-identical",Je._isComparisonIdentical(U.compareValue))("mat-calendar-body-today",Je.todayValue===U.compareValue),o.\u0275\u0275advance(1),o.\u0275\u0275textInterpolate1(" ",U.displayValue," ")}}function Dt(Ke,kt){if(1&Ke&&(o.\u0275\u0275elementStart(0,"tr",5),o.\u0275\u0275template(1,ct,2,6,"td",6),o.\u0275\u0275template(2,Lt,5,48,"td",7),o.\u0275\u0275elementEnd()),2&Ke){const U=kt.$implicit,fe=kt.index,Pe=o.\u0275\u0275nextContext();o.\u0275\u0275advance(1),o.\u0275\u0275property("ngIf",0===fe&&Pe._firstRowOffset),o.\u0275\u0275advance(1),o.\u0275\u0275property("ngForOf",U)}}function Kt(Ke,kt){if(1&Ke&&(o.\u0275\u0275elementStart(0,"th",5)(1,"span",6),o.\u0275\u0275text(2),o.\u0275\u0275elementEnd(),o.\u0275\u0275elementStart(3,"span",7),o.\u0275\u0275text(4),o.\u0275\u0275elementEnd()()),2&Ke){const U=kt.$implicit;o.\u0275\u0275advance(2),o.\u0275\u0275textInterpolate(U.long),o.\u0275\u0275advance(2),o.\u0275\u0275textInterpolate(U.narrow)}}const ze=["*"];function yt(Ke,kt){}function Bt(Ke,kt){if(1&Ke){const U=o.\u0275\u0275getCurrentView();o.\u0275\u0275elementStart(0,"mat-month-view",5),o.\u0275\u0275listener("activeDateChange",function(Pe){o.\u0275\u0275restoreView(U);const Je=o.\u0275\u0275nextContext();return o.\u0275\u0275resetView(Je.activeDate=Pe)})("_userSelection",function(Pe){o.\u0275\u0275restoreView(U);const Je=o.\u0275\u0275nextContext();return o.\u0275\u0275resetView(Je._dateSelected(Pe))})("dragStarted",function(Pe){o.\u0275\u0275restoreView(U);const Je=o.\u0275\u0275nextContext();return o.\u0275\u0275resetView(Je._dragStarted(Pe))})("dragEnded",function(Pe){o.\u0275\u0275restoreView(U);const Je=o.\u0275\u0275nextContext();return o.\u0275\u0275resetView(Je._dragEnded(Pe))}),o.\u0275\u0275elementEnd()}if(2&Ke){const U=o.\u0275\u0275nextContext();o.\u0275\u0275property("activeDate",U.activeDate)("selected",U.selected)("dateFilter",U.dateFilter)("maxDate",U.maxDate)("minDate",U.minDate)("dateClass",U.dateClass)("comparisonStart",U.comparisonStart)("comparisonEnd",U.comparisonEnd)("startDateAccessibleName",U.startDateAccessibleName)("endDateAccessibleName",U.endDateAccessibleName)("activeDrag",U._activeDrag)}}function $t(Ke,kt){if(1&Ke){const U=o.\u0275\u0275getCurrentView();o.\u0275\u0275elementStart(0,"mat-year-view",6),o.\u0275\u0275listener("activeDateChange",function(Pe){o.\u0275\u0275restoreView(U);const Je=o.\u0275\u0275nextContext();return o.\u0275\u0275resetView(Je.activeDate=Pe)})("monthSelected",function(Pe){o.\u0275\u0275restoreView(U);const Je=o.\u0275\u0275nextContext();return o.\u0275\u0275resetView(Je._monthSelectedInYearView(Pe))})("selectedChange",function(Pe){o.\u0275\u0275restoreView(U);const Je=o.\u0275\u0275nextContext();return o.\u0275\u0275resetView(Je._goToDateInView(Pe,"month"))}),o.\u0275\u0275elementEnd()}if(2&Ke){const U=o.\u0275\u0275nextContext();o.\u0275\u0275property("activeDate",U.activeDate)("selected",U.selected)("dateFilter",U.dateFilter)("maxDate",U.maxDate)("minDate",U.minDate)("dateClass",U.dateClass)}}function Yt(Ke,kt){if(1&Ke){const U=o.\u0275\u0275getCurrentView();o.\u0275\u0275elementStart(0,"mat-multi-year-view",7),o.\u0275\u0275listener("activeDateChange",function(Pe){o.\u0275\u0275restoreView(U);const Je=o.\u0275\u0275nextContext();return o.\u0275\u0275resetView(Je.activeDate=Pe)})("yearSelected",function(Pe){o.\u0275\u0275restoreView(U);const Je=o.\u0275\u0275nextContext();return o.\u0275\u0275resetView(Je._yearSelectedInMultiYearView(Pe))})("selectedChange",function(Pe){o.\u0275\u0275restoreView(U);const Je=o.\u0275\u0275nextContext();return o.\u0275\u0275resetView(Je._goToDateInView(Pe,"year"))}),o.\u0275\u0275elementEnd()}if(2&Ke){const U=o.\u0275\u0275nextContext();o.\u0275\u0275property("activeDate",U.activeDate)("selected",U.selected)("dateFilter",U.dateFilter)("maxDate",U.maxDate)("minDate",U.minDate)("dateClass",U.dateClass)}}function Ue(Ke,kt){}const We=["button"];function ve(Ke,kt){1&Ke&&(o.\u0275\u0275namespaceSVG(),o.\u0275\u0275elementStart(0,"svg",3),o.\u0275\u0275element(1,"path",4),o.\u0275\u0275elementEnd())}const we=[[["","matDatepickerToggleIcon",""]]],at=["[matDatepickerToggleIcon]"],De=[[["input","matStartDate",""]],[["input","matEndDate",""]]],je=["input[matStartDate]","input[matEndDate]"];function ke(Ke,kt){1&Ke&&(o.\u0275\u0275elementStart(0,"div",0),o.\u0275\u0275projection(1),o.\u0275\u0275elementEnd())}let re=(()=>{class Ke{constructor(){this.changes=new Mt.x,this.calendarLabel="Calendar",this.openCalendarLabel="Open calendar",this.closeCalendarLabel="Close calendar",this.prevMonthLabel="Previous month",this.nextMonthLabel="Next month",this.prevYearLabel="Previous year",this.nextYearLabel="Next year",this.prevMultiYearLabel="Previous 24 years",this.nextMultiYearLabel="Next 24 years",this.switchToMonthViewLabel="Choose date",this.switchToMultiYearViewLabel="Choose month and year",this.startDateLabel="Start date",this.endDateLabel="End date"}formatYearRange(U,fe){return`${U} \u2013 ${fe}`}formatYearRangeLabel(U,fe){return`${U} to ${fe}`}}return Ke.\u0275fac=function(U){return new(U||Ke)},Ke.\u0275prov=o.\u0275\u0275defineInjectable({token:Ke,factory:Ke.\u0275fac,providedIn:"root"}),Ke})();class ce{constructor(kt,U,fe,Pe,Je={},Gt=kt,Pn){this.value=kt,this.displayValue=U,this.ariaLabel=fe,this.enabled=Pe,this.cssClasses=Je,this.compareValue=Gt,this.rawValue=Pn}}let Ee=1;const it=(0,v.i$)({passive:!1,capture:!0}),Rt=(0,v.i$)({passive:!0,capture:!0}),Ye=(0,v.i$)({passive:!0});let qe=(()=>{class Ke{ngAfterViewChecked(){this._focusActiveCellAfterViewChecked&&(this._focusActiveCell(),this._focusActiveCellAfterViewChecked=!1)}constructor(U,fe){this._elementRef=U,this._ngZone=fe,this._platform=(0,o.inject)(v.t4),this._focusActiveCellAfterViewChecked=!1,this.numCols=7,this.activeCell=0,this.isRange=!1,this.cellAspectRatio=1,this.previewStart=null,this.previewEnd=null,this.selectedValueChange=new o.EventEmitter,this.previewChange=new o.EventEmitter,this.activeDateChange=new o.EventEmitter,this.dragStarted=new o.EventEmitter,this.dragEnded=new o.EventEmitter,this._didDragSinceMouseDown=!1,this._enterHandler=Pe=>{if(this._skipNextFocus&&"focus"===Pe.type)this._skipNextFocus=!1;else if(Pe.target&&this.isRange){const Je=this._getCellFromElement(Pe.target);Je&&this._ngZone.run(()=>this.previewChange.emit({value:Je.enabled?Je:null,event:Pe}))}},this._touchmoveHandler=Pe=>{if(!this.isRange)return;const Je=Tn(Pe),Gt=Je?this._getCellFromElement(Je):null;Je!==Pe.target&&(this._didDragSinceMouseDown=!0),dt(Pe.target)&&Pe.preventDefault(),this._ngZone.run(()=>this.previewChange.emit({value:Gt?.enabled?Gt:null,event:Pe}))},this._leaveHandler=Pe=>{null!==this.previewEnd&&this.isRange&&("blur"!==Pe.type&&(this._didDragSinceMouseDown=!0),Pe.target&&this._getCellFromElement(Pe.target)&&(!Pe.relatedTarget||!this._getCellFromElement(Pe.relatedTarget))&&this._ngZone.run(()=>this.previewChange.emit({value:null,event:Pe})))},this._mousedownHandler=Pe=>{if(!this.isRange)return;this._didDragSinceMouseDown=!1;const Je=Pe.target&&this._getCellFromElement(Pe.target);!Je||!this._isInRange(Je.rawValue)||this._ngZone.run(()=>{this.dragStarted.emit({value:Je.rawValue,event:Pe})})},this._mouseupHandler=Pe=>{if(!this.isRange)return;const Je=dt(Pe.target);Je?Je.closest(".mat-calendar-body")===this._elementRef.nativeElement&&this._ngZone.run(()=>{const Gt=this._getCellFromElement(Je);this.dragEnded.emit({value:Gt?.rawValue??null,event:Pe})}):this._ngZone.run(()=>{this.dragEnded.emit({value:null,event:Pe})})},this._touchendHandler=Pe=>{const Je=Tn(Pe);Je&&this._mouseupHandler({target:Je})},this._id="mat-calendar-body-"+Ee++,this._startDateLabelId=`${this._id}-start-date`,this._endDateLabelId=`${this._id}-end-date`,fe.runOutsideAngular(()=>{const Pe=U.nativeElement;Pe.addEventListener("touchmove",this._touchmoveHandler,it),Pe.addEventListener("mouseenter",this._enterHandler,Rt),Pe.addEventListener("focus",this._enterHandler,Rt),Pe.addEventListener("mouseleave",this._leaveHandler,Rt),Pe.addEventListener("blur",this._leaveHandler,Rt),Pe.addEventListener("mousedown",this._mousedownHandler,Ye),Pe.addEventListener("touchstart",this._mousedownHandler,Ye),this._platform.isBrowser&&(window.addEventListener("mouseup",this._mouseupHandler),window.addEventListener("touchend",this._touchendHandler))})}_cellClicked(U,fe){this._didDragSinceMouseDown||U.enabled&&this.selectedValueChange.emit({value:U.value,event:fe})}_emitActiveDateChange(U,fe){U.enabled&&this.activeDateChange.emit({value:U.value,event:fe})}_isSelected(U){return this.startValue===U||this.endValue===U}ngOnChanges(U){const fe=U.numCols,{rows:Pe,numCols:Je}=this;(U.rows||fe)&&(this._firstRowOffset=Pe&&Pe.length&&Pe[0].length?Je-Pe[0].length:0),(U.cellAspectRatio||fe||!this._cellPadding)&&(this._cellPadding=50*this.cellAspectRatio/Je+"%"),(fe||!this._cellWidth)&&(this._cellWidth=100/Je+"%")}ngOnDestroy(){const U=this._elementRef.nativeElement;U.removeEventListener("touchmove",this._touchmoveHandler,it),U.removeEventListener("mouseenter",this._enterHandler,Rt),U.removeEventListener("focus",this._enterHandler,Rt),U.removeEventListener("mouseleave",this._leaveHandler,Rt),U.removeEventListener("blur",this._leaveHandler,Rt),U.removeEventListener("mousedown",this._mousedownHandler,Ye),U.removeEventListener("touchstart",this._mousedownHandler,Ye),this._platform.isBrowser&&(window.removeEventListener("mouseup",this._mouseupHandler),window.removeEventListener("touchend",this._touchendHandler))}_isActiveCell(U,fe){let Pe=U*this.numCols+fe;return U&&(Pe-=this._firstRowOffset),Pe==this.activeCell}_focusActiveCell(U=!0){this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.pipe((0,ot.q)(1)).subscribe(()=>{setTimeout(()=>{const fe=this._elementRef.nativeElement.querySelector(".mat-calendar-body-active");fe&&(U||(this._skipNextFocus=!0),fe.focus())})})})}_scheduleFocusActiveCellAfterViewChecked(){this._focusActiveCellAfterViewChecked=!0}_isRangeStart(U){return At(U,this.startValue,this.endValue)}_isRangeEnd(U){return tn(U,this.startValue,this.endValue)}_isInRange(U){return wn(U,this.startValue,this.endValue,this.isRange)}_isComparisonStart(U){return At(U,this.comparisonStart,this.comparisonEnd)}_isComparisonBridgeStart(U,fe,Pe){if(!this._isComparisonStart(U)||this._isRangeStart(U)||!this._isInRange(U))return!1;let Je=this.rows[fe][Pe-1];if(!Je){const Gt=this.rows[fe-1];Je=Gt&&Gt[Gt.length-1]}return Je&&!this._isRangeEnd(Je.compareValue)}_isComparisonBridgeEnd(U,fe,Pe){if(!this._isComparisonEnd(U)||this._isRangeEnd(U)||!this._isInRange(U))return!1;let Je=this.rows[fe][Pe+1];if(!Je){const Gt=this.rows[fe+1];Je=Gt&&Gt[0]}return Je&&!this._isRangeStart(Je.compareValue)}_isComparisonEnd(U){return tn(U,this.comparisonStart,this.comparisonEnd)}_isInComparisonRange(U){return wn(U,this.comparisonStart,this.comparisonEnd,this.isRange)}_isComparisonIdentical(U){return this.comparisonStart===this.comparisonEnd&&U===this.comparisonStart}_isPreviewStart(U){return At(U,this.previewStart,this.previewEnd)}_isPreviewEnd(U){return tn(U,this.previewStart,this.previewEnd)}_isInPreview(U){return wn(U,this.previewStart,this.previewEnd,this.isRange)}_getDescribedby(U){return this.isRange?this.startValue===U&&this.endValue===U?`${this._startDateLabelId} ${this._endDateLabelId}`:this.startValue===U?this._startDateLabelId:this.endValue===U?this._endDateLabelId:null:null}_getCellFromElement(U){const fe=dt(U);if(fe){const Pe=fe.getAttribute("data-mat-row"),Je=fe.getAttribute("data-mat-col");if(Pe&&Je)return this.rows[parseInt(Pe)][parseInt(Je)]}return null}}return Ke.\u0275fac=function(U){return new(U||Ke)(o.\u0275\u0275directiveInject(o.ElementRef),o.\u0275\u0275directiveInject(o.NgZone))},Ke.\u0275cmp=o.\u0275\u0275defineComponent({type:Ke,selectors:[["","mat-calendar-body",""]],hostAttrs:[1,"mat-calendar-body"],inputs:{label:"label",rows:"rows",todayValue:"todayValue",startValue:"startValue",endValue:"endValue",labelMinRequiredCells:"labelMinRequiredCells",numCols:"numCols",activeCell:"activeCell",isRange:"isRange",cellAspectRatio:"cellAspectRatio",comparisonStart:"comparisonStart",comparisonEnd:"comparisonEnd",previewStart:"previewStart",previewEnd:"previewEnd",startDateAccessibleName:"startDateAccessibleName",endDateAccessibleName:"endDateAccessibleName"},outputs:{selectedValueChange:"selectedValueChange",previewChange:"previewChange",activeDateChange:"activeDateChange",dragStarted:"dragStarted",dragEnded:"dragEnded"},exportAs:["matCalendarBody"],features:[o.\u0275\u0275NgOnChangesFeature],attrs:pe,decls:6,vars:6,consts:[["aria-hidden","true",4,"ngIf"],["role","row",4,"ngFor","ngForOf"],[1,"mat-calendar-body-hidden-label",3,"id"],["aria-hidden","true"],[1,"mat-calendar-body-label"],["role","row"],["class","mat-calendar-body-label",3,"paddingTop","paddingBottom",4,"ngIf"],["role","gridcell","class","mat-calendar-body-cell-container",3,"width","paddingTop","paddingBottom",4,"ngFor","ngForOf"],["role","gridcell",1,"mat-calendar-body-cell-container"],["type","button",1,"mat-calendar-body-cell",3,"ngClass","tabindex","click","focus"],[1,"mat-calendar-body-cell-content","mat-focus-indicator"],["aria-hidden","true",1,"mat-calendar-body-cell-preview"]],template:function(U,fe){1&U&&(o.\u0275\u0275template(0,Te,3,6,"tr",0),o.\u0275\u0275template(1,Dt,3,2,"tr",1),o.\u0275\u0275elementStart(2,"label",2),o.\u0275\u0275text(3),o.\u0275\u0275elementEnd(),o.\u0275\u0275elementStart(4,"label",2),o.\u0275\u0275text(5),o.\u0275\u0275elementEnd()),2&U&&(o.\u0275\u0275property("ngIf",fe._firstRowOffset=kt&&Ke===U}function wn(Ke,kt,U,fe){return fe&&null!==kt&&null!==U&&kt!==U&&Ke>=kt&&Ke<=U}function Tn(Ke){const kt=Ke.changedTouches[0];return document.elementFromPoint(kt.clientX,kt.clientY)}class Sn{constructor(kt,U){this.start=kt,this.end=U}}let Mn=(()=>{class Ke{constructor(U,fe){this.selection=U,this._adapter=fe,this._selectionChanged=new Mt.x,this.selectionChanged=this._selectionChanged,this.selection=U}updateSelection(U,fe){const Pe=this.selection;this.selection=U,this._selectionChanged.next({selection:U,source:fe,oldValue:Pe})}ngOnDestroy(){this._selectionChanged.complete()}_isValidDateInstance(U){return this._adapter.isDateInstance(U)&&this._adapter.isValid(U)}}return Ke.\u0275fac=function(U){o.\u0275\u0275invalidFactory()},Ke.\u0275prov=o.\u0275\u0275defineInjectable({token:Ke,factory:Ke.\u0275fac}),Ke})(),Ci=(()=>{class Ke extends Mn{constructor(U){super(null,U)}add(U){super.updateSelection(U,this)}isValid(){return null!=this.selection&&this._isValidDateInstance(this.selection)}isComplete(){return null!=this.selection}clone(){const U=new Ke(this._adapter);return U.updateSelection(this.selection,this),U}}return Ke.\u0275fac=function(U){return new(U||Ke)(o.\u0275\u0275inject(a.DateAdapter))},Ke.\u0275prov=o.\u0275\u0275defineInjectable({token:Ke,factory:Ke.\u0275fac}),Ke})(),di=(()=>{class Ke extends Mn{constructor(U){super(new Sn(null,null),U)}add(U){let{start:fe,end:Pe}=this.selection;null==fe?fe=U:null==Pe?Pe=U:(fe=U,Pe=null),super.updateSelection(new Sn(fe,Pe),this)}isValid(){const{start:U,end:fe}=this.selection;return null==U&&null==fe||(null!=U&&null!=fe?this._isValidDateInstance(U)&&this._isValidDateInstance(fe)&&this._adapter.compareDate(U,fe)<=0:(null==U||this._isValidDateInstance(U))&&(null==fe||this._isValidDateInstance(fe)))}isComplete(){return null!=this.selection.start&&null!=this.selection.end}clone(){const U=new Ke(this._adapter);return U.updateSelection(this.selection,this),U}}return Ke.\u0275fac=function(U){return new(U||Ke)(o.\u0275\u0275inject(a.DateAdapter))},Ke.\u0275prov=o.\u0275\u0275defineInjectable({token:Ke,factory:Ke.\u0275fac}),Ke})();function Li(Ke,kt){return Ke||new Ci(kt)}const Qi={provide:Mn,deps:[[new o.Optional,new o.SkipSelf,Mn],a.DateAdapter],useFactory:Li};function wt(Ke,kt){return Ke||new di(kt)}const mt={provide:Mn,deps:[[new o.Optional,new o.SkipSelf,Mn],a.DateAdapter],useFactory:wt},pt=new o.InjectionToken("MAT_DATE_RANGE_SELECTION_STRATEGY");let qt=(()=>{class Ke{constructor(U){this._dateAdapter=U}selectionFinished(U,fe){let{start:Pe,end:Je}=fe;return null==Pe?Pe=U:null==Je&&U&&this._dateAdapter.compareDate(U,Pe)>=0?Je=U:(Pe=U,Je=null),new Sn(Pe,Je)}createPreview(U,fe){let Pe=null,Je=null;return fe.start&&!fe.end&&U&&(Pe=fe.start,Je=U),new Sn(Pe,Je)}createDrag(U,fe,Pe){let Je=fe.start,Gt=fe.end;if(!Je||!Gt)return null;const Pn=this._dateAdapter,Gi=0!==Pn.compareDate(Je,Gt),Vi=Pn.getYear(Pe)-Pn.getYear(U),rr=Pn.getMonth(Pe)-Pn.getMonth(U),or=Pn.getDate(Pe)-Pn.getDate(U);return Gi&&Pn.sameDate(U,fe.start)?(Je=Pe,Pn.compareDate(Pe,Gt)>0&&(Gt=Pn.addCalendarYears(Gt,Vi),Gt=Pn.addCalendarMonths(Gt,rr),Gt=Pn.addCalendarDays(Gt,or))):Gi&&Pn.sameDate(U,fe.end)?(Gt=Pe,Pn.compareDate(Pe,Je)<0&&(Je=Pn.addCalendarYears(Je,Vi),Je=Pn.addCalendarMonths(Je,rr),Je=Pn.addCalendarDays(Je,or))):(Je=Pn.addCalendarYears(Je,Vi),Je=Pn.addCalendarMonths(Je,rr),Je=Pn.addCalendarDays(Je,or),Gt=Pn.addCalendarYears(Gt,Vi),Gt=Pn.addCalendarMonths(Gt,rr),Gt=Pn.addCalendarDays(Gt,or)),new Sn(Je,Gt)}}return Ke.\u0275fac=function(U){return new(U||Ke)(o.\u0275\u0275inject(a.DateAdapter))},Ke.\u0275prov=o.\u0275\u0275defineInjectable({token:Ke,factory:Ke.\u0275fac}),Ke})();const hn={provide:pt,deps:[[new o.Optional,new o.SkipSelf,pt],a.DateAdapter],useFactory:function on(Ke,kt){return Ke||new qt(kt)}};let $n=(()=>{class Ke{get activeDate(){return this._activeDate}set activeDate(U){const fe=this._activeDate,Pe=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(U))||this._dateAdapter.today();this._activeDate=this._dateAdapter.clampDate(Pe,this.minDate,this.maxDate),this._hasSameMonthAndYear(fe,this._activeDate)||this._init()}get selected(){return this._selected}set selected(U){this._selected=U instanceof Sn?U:this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(U)),this._setRanges(this._selected)}get minDate(){return this._minDate}set minDate(U){this._minDate=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(U))}get maxDate(){return this._maxDate}set maxDate(U){this._maxDate=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(U))}constructor(U,fe,Pe,Je,Gt){this._changeDetectorRef=U,this._dateFormats=fe,this._dateAdapter=Pe,this._dir=Je,this._rangeStrategy=Gt,this._rerenderSubscription=tt.w0.EMPTY,this.activeDrag=null,this.selectedChange=new o.EventEmitter,this._userSelection=new o.EventEmitter,this.dragStarted=new o.EventEmitter,this.dragEnded=new o.EventEmitter,this.activeDateChange=new o.EventEmitter,this._activeDate=this._dateAdapter.today()}ngAfterContentInit(){this._rerenderSubscription=this._dateAdapter.localeChanges.pipe((0,vt.O)(null)).subscribe(()=>this._init())}ngOnChanges(U){const fe=U.comparisonStart||U.comparisonEnd;fe&&!fe.firstChange&&this._setRanges(this.selected),U.activeDrag&&!this.activeDrag&&this._clearPreview()}ngOnDestroy(){this._rerenderSubscription.unsubscribe()}_dateSelected(U){const fe=U.value,Pe=this._getDateFromDayOfMonth(fe);let Je,Gt;this._selected instanceof Sn?(Je=this._getDateInCurrentMonth(this._selected.start),Gt=this._getDateInCurrentMonth(this._selected.end)):Je=Gt=this._getDateInCurrentMonth(this._selected),(Je!==fe||Gt!==fe)&&this.selectedChange.emit(Pe),this._userSelection.emit({value:Pe,event:U.event}),this._clearPreview(),this._changeDetectorRef.markForCheck()}_updateActiveDate(U){const Pe=this._activeDate;this.activeDate=this._getDateFromDayOfMonth(U.value),this._dateAdapter.compareDate(Pe,this.activeDate)&&this.activeDateChange.emit(this._activeDate)}_handleCalendarBodyKeydown(U){const fe=this._activeDate,Pe=this._isRtl();switch(U.keyCode){case xt.oh:this.activeDate=this._dateAdapter.addCalendarDays(this._activeDate,Pe?1:-1);break;case xt.SV:this.activeDate=this._dateAdapter.addCalendarDays(this._activeDate,Pe?-1:1);break;case xt.LH:this.activeDate=this._dateAdapter.addCalendarDays(this._activeDate,-7);break;case xt.JH:this.activeDate=this._dateAdapter.addCalendarDays(this._activeDate,7);break;case xt.Sd:this.activeDate=this._dateAdapter.addCalendarDays(this._activeDate,1-this._dateAdapter.getDate(this._activeDate));break;case xt.uR:this.activeDate=this._dateAdapter.addCalendarDays(this._activeDate,this._dateAdapter.getNumDaysInMonth(this._activeDate)-this._dateAdapter.getDate(this._activeDate));break;case xt.Ku:this.activeDate=U.altKey?this._dateAdapter.addCalendarYears(this._activeDate,-1):this._dateAdapter.addCalendarMonths(this._activeDate,-1);break;case xt.VM:this.activeDate=U.altKey?this._dateAdapter.addCalendarYears(this._activeDate,1):this._dateAdapter.addCalendarMonths(this._activeDate,1);break;case xt.K5:case xt.L_:return this._selectionKeyPressed=!0,void(this._canSelect(this._activeDate)&&U.preventDefault());case xt.hY:return void(null!=this._previewEnd&&!(0,xt.Vb)(U)&&(this._clearPreview(),this.activeDrag?this.dragEnded.emit({value:null,event:U}):(this.selectedChange.emit(null),this._userSelection.emit({value:null,event:U})),U.preventDefault(),U.stopPropagation()));default:return}this._dateAdapter.compareDate(fe,this.activeDate)&&(this.activeDateChange.emit(this.activeDate),this._focusActiveCellAfterViewChecked()),U.preventDefault()}_handleCalendarBodyKeyup(U){(U.keyCode===xt.L_||U.keyCode===xt.K5)&&(this._selectionKeyPressed&&this._canSelect(this._activeDate)&&this._dateSelected({value:this._dateAdapter.getDate(this._activeDate),event:U}),this._selectionKeyPressed=!1)}_init(){this._setRanges(this.selected),this._todayDate=this._getCellCompareValue(this._dateAdapter.today()),this._monthLabel=this._dateFormats.display.monthLabel?this._dateAdapter.format(this.activeDate,this._dateFormats.display.monthLabel):this._dateAdapter.getMonthNames("short")[this._dateAdapter.getMonth(this.activeDate)].toLocaleUpperCase();let U=this._dateAdapter.createDate(this._dateAdapter.getYear(this.activeDate),this._dateAdapter.getMonth(this.activeDate),1);this._firstWeekOffset=(7+this._dateAdapter.getDayOfWeek(U)-this._dateAdapter.getFirstDayOfWeek())%7,this._initWeekdays(),this._createWeekCells(),this._changeDetectorRef.markForCheck()}_focusActiveCell(U){this._matCalendarBody._focusActiveCell(U)}_focusActiveCellAfterViewChecked(){this._matCalendarBody._scheduleFocusActiveCellAfterViewChecked()}_previewChanged({event:U,value:fe}){if(this._rangeStrategy){const Pe=fe?fe.rawValue:null,Je=this._rangeStrategy.createPreview(Pe,this.selected,U);if(this._previewStart=this._getCellCompareValue(Je.start),this._previewEnd=this._getCellCompareValue(Je.end),this.activeDrag&&Pe){const Gt=this._rangeStrategy.createDrag?.(this.activeDrag.value,this.selected,Pe,U);Gt&&(this._previewStart=this._getCellCompareValue(Gt.start),this._previewEnd=this._getCellCompareValue(Gt.end))}this._changeDetectorRef.detectChanges()}}_dragEnded(U){if(this.activeDrag)if(U.value){const fe=this._rangeStrategy?.createDrag?.(this.activeDrag.value,this.selected,U.value,U.event);this.dragEnded.emit({value:fe??null,event:U.event})}else this.dragEnded.emit({value:null,event:U.event})}_getDateFromDayOfMonth(U){return this._dateAdapter.createDate(this._dateAdapter.getYear(this.activeDate),this._dateAdapter.getMonth(this.activeDate),U)}_initWeekdays(){const U=this._dateAdapter.getFirstDayOfWeek(),fe=this._dateAdapter.getDayOfWeekNames("narrow");let Je=this._dateAdapter.getDayOfWeekNames("long").map((Gt,Pn)=>({long:Gt,narrow:fe[Pn]}));this._weekdays=Je.slice(U).concat(Je.slice(0,U))}_createWeekCells(){const U=this._dateAdapter.getNumDaysInMonth(this.activeDate),fe=this._dateAdapter.getDateNames();this._weeks=[[]];for(let Pe=0,Je=this._firstWeekOffset;Pe=0)&&(!this.maxDate||this._dateAdapter.compareDate(U,this.maxDate)<=0)&&(!this.dateFilter||this.dateFilter(U))}_getDateInCurrentMonth(U){return U&&this._hasSameMonthAndYear(U,this.activeDate)?this._dateAdapter.getDate(U):null}_hasSameMonthAndYear(U,fe){return!(!U||!fe||this._dateAdapter.getMonth(U)!=this._dateAdapter.getMonth(fe)||this._dateAdapter.getYear(U)!=this._dateAdapter.getYear(fe))}_getCellCompareValue(U){if(U){const fe=this._dateAdapter.getYear(U),Pe=this._dateAdapter.getMonth(U),Je=this._dateAdapter.getDate(U);return new Date(fe,Pe,Je).getTime()}return null}_isRtl(){return this._dir&&"rtl"===this._dir.value}_setRanges(U){U instanceof Sn?(this._rangeStart=this._getCellCompareValue(U.start),this._rangeEnd=this._getCellCompareValue(U.end),this._isRange=!0):(this._rangeStart=this._rangeEnd=this._getCellCompareValue(U),this._isRange=!1),this._comparisonRangeStart=this._getCellCompareValue(this.comparisonStart),this._comparisonRangeEnd=this._getCellCompareValue(this.comparisonEnd)}_canSelect(U){return!this.dateFilter||this.dateFilter(U)}_clearPreview(){this._previewStart=this._previewEnd=null}}return Ke.\u0275fac=function(U){return new(U||Ke)(o.\u0275\u0275directiveInject(o.ChangeDetectorRef),o.\u0275\u0275directiveInject(a.MAT_DATE_FORMATS,8),o.\u0275\u0275directiveInject(a.DateAdapter,8),o.\u0275\u0275directiveInject(nt.Is,8),o.\u0275\u0275directiveInject(pt,8))},Ke.\u0275cmp=o.\u0275\u0275defineComponent({type:Ke,selectors:[["mat-month-view"]],viewQuery:function(U,fe){if(1&U&&o.\u0275\u0275viewQuery(qe,5),2&U){let Pe;o.\u0275\u0275queryRefresh(Pe=o.\u0275\u0275loadQuery())&&(fe._matCalendarBody=Pe.first)}},inputs:{activeDate:"activeDate",selected:"selected",minDate:"minDate",maxDate:"maxDate",dateFilter:"dateFilter",dateClass:"dateClass",comparisonStart:"comparisonStart",comparisonEnd:"comparisonEnd",startDateAccessibleName:"startDateAccessibleName",endDateAccessibleName:"endDateAccessibleName",activeDrag:"activeDrag"},outputs:{selectedChange:"selectedChange",_userSelection:"_userSelection",dragStarted:"dragStarted",dragEnded:"dragEnded",activeDateChange:"activeDateChange"},exportAs:["matMonthView"],features:[o.\u0275\u0275NgOnChangesFeature],decls:7,vars:15,consts:[["role","grid",1,"mat-calendar-table"],[1,"mat-calendar-table-header"],["scope","col",4,"ngFor","ngForOf"],["aria-hidden","true","colspan","7",1,"mat-calendar-table-header-divider"],["mat-calendar-body","",3,"label","rows","todayValue","startValue","endValue","comparisonStart","comparisonEnd","previewStart","previewEnd","isRange","labelMinRequiredCells","activeCell","startDateAccessibleName","endDateAccessibleName","selectedValueChange","activeDateChange","previewChange","dragStarted","dragEnded","keyup","keydown"],["scope","col"],[1,"cdk-visually-hidden"],["aria-hidden","true"]],template:function(U,fe){1&U&&(o.\u0275\u0275elementStart(0,"table",0)(1,"thead",1)(2,"tr"),o.\u0275\u0275template(3,Kt,5,2,"th",2),o.\u0275\u0275elementEnd(),o.\u0275\u0275elementStart(4,"tr"),o.\u0275\u0275element(5,"th",3),o.\u0275\u0275elementEnd()(),o.\u0275\u0275elementStart(6,"tbody",4),o.\u0275\u0275listener("selectedValueChange",function(Je){return fe._dateSelected(Je)})("activeDateChange",function(Je){return fe._updateActiveDate(Je)})("previewChange",function(Je){return fe._previewChanged(Je)})("dragStarted",function(Je){return fe.dragStarted.emit(Je)})("dragEnded",function(Je){return fe._dragEnded(Je)})("keyup",function(Je){return fe._handleCalendarBodyKeyup(Je)})("keydown",function(Je){return fe._handleCalendarBodyKeydown(Je)}),o.\u0275\u0275elementEnd()()),2&U&&(o.\u0275\u0275advance(3),o.\u0275\u0275property("ngForOf",fe._weekdays),o.\u0275\u0275advance(3),o.\u0275\u0275property("label",fe._monthLabel)("rows",fe._weeks)("todayValue",fe._todayDate)("startValue",fe._rangeStart)("endValue",fe._rangeEnd)("comparisonStart",fe._comparisonRangeStart)("comparisonEnd",fe._comparisonRangeEnd)("previewStart",fe._previewStart)("previewEnd",fe._previewEnd)("isRange",fe._isRange)("labelMinRequiredCells",3)("activeCell",fe._dateAdapter.getDate(fe.activeDate)-1)("startDateAccessibleName",fe.startDateAccessibleName)("endDateAccessibleName",fe.endDateAccessibleName))},dependencies:[b.NgForOf,qe],encapsulation:2,changeDetection:0}),Ke})();const In=24,Zn=4;let mi=(()=>{class Ke{get activeDate(){return this._activeDate}set activeDate(U){let fe=this._activeDate;const Pe=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(U))||this._dateAdapter.today();this._activeDate=this._dateAdapter.clampDate(Pe,this.minDate,this.maxDate),Qn(this._dateAdapter,fe,this._activeDate,this.minDate,this.maxDate)||this._init()}get selected(){return this._selected}set selected(U){this._selected=U instanceof Sn?U:this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(U)),this._setSelectedYear(U)}get minDate(){return this._minDate}set minDate(U){this._minDate=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(U))}get maxDate(){return this._maxDate}set maxDate(U){this._maxDate=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(U))}constructor(U,fe,Pe){this._changeDetectorRef=U,this._dateAdapter=fe,this._dir=Pe,this._rerenderSubscription=tt.w0.EMPTY,this.selectedChange=new o.EventEmitter,this.yearSelected=new o.EventEmitter,this.activeDateChange=new o.EventEmitter,this._activeDate=this._dateAdapter.today()}ngAfterContentInit(){this._rerenderSubscription=this._dateAdapter.localeChanges.pipe((0,vt.O)(null)).subscribe(()=>this._init())}ngOnDestroy(){this._rerenderSubscription.unsubscribe()}_init(){this._todayYear=this._dateAdapter.getYear(this._dateAdapter.today());const fe=this._dateAdapter.getYear(this._activeDate)-ri(this._dateAdapter,this.activeDate,this.minDate,this.maxDate);this._years=[];for(let Pe=0,Je=[];Pethis._createCellForYear(Gt))),Je=[]);this._changeDetectorRef.markForCheck()}_yearSelected(U){const fe=U.value,Pe=this._dateAdapter.createDate(fe,0,1),Je=this._getDateFromYear(fe);this.yearSelected.emit(Pe),this.selectedChange.emit(Je)}_updateActiveDate(U){const Pe=this._activeDate;this.activeDate=this._getDateFromYear(U.value),this._dateAdapter.compareDate(Pe,this.activeDate)&&this.activeDateChange.emit(this.activeDate)}_handleCalendarBodyKeydown(U){const fe=this._activeDate,Pe=this._isRtl();switch(U.keyCode){case xt.oh:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,Pe?1:-1);break;case xt.SV:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,Pe?-1:1);break;case xt.LH:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,-Zn);break;case xt.JH:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,Zn);break;case xt.Sd:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,-ri(this._dateAdapter,this.activeDate,this.minDate,this.maxDate));break;case xt.uR:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,In-ri(this._dateAdapter,this.activeDate,this.minDate,this.maxDate)-1);break;case xt.Ku:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,U.altKey?10*-In:-In);break;case xt.VM:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,U.altKey?10*In:In);break;case xt.K5:case xt.L_:this._selectionKeyPressed=!0;break;default:return}this._dateAdapter.compareDate(fe,this.activeDate)&&this.activeDateChange.emit(this.activeDate),this._focusActiveCellAfterViewChecked(),U.preventDefault()}_handleCalendarBodyKeyup(U){(U.keyCode===xt.L_||U.keyCode===xt.K5)&&(this._selectionKeyPressed&&this._yearSelected({value:this._dateAdapter.getYear(this._activeDate),event:U}),this._selectionKeyPressed=!1)}_getActiveCell(){return ri(this._dateAdapter,this.activeDate,this.minDate,this.maxDate)}_focusActiveCell(){this._matCalendarBody._focusActiveCell()}_focusActiveCellAfterViewChecked(){this._matCalendarBody._scheduleFocusActiveCellAfterViewChecked()}_getDateFromYear(U){const fe=this._dateAdapter.getMonth(this.activeDate),Pe=this._dateAdapter.getNumDaysInMonth(this._dateAdapter.createDate(U,fe,1));return this._dateAdapter.createDate(U,fe,Math.min(this._dateAdapter.getDate(this.activeDate),Pe))}_createCellForYear(U){const fe=this._dateAdapter.createDate(U,0,1),Pe=this._dateAdapter.getYearName(fe),Je=this.dateClass?this.dateClass(fe,"multi-year"):void 0;return new ce(U,Pe,Pe,this._shouldEnableYear(U),Je)}_shouldEnableYear(U){if(null==U||this.maxDate&&U>this._dateAdapter.getYear(this.maxDate)||this.minDate&&U{class Ke{get activeDate(){return this._activeDate}set activeDate(U){let fe=this._activeDate;const Pe=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(U))||this._dateAdapter.today();this._activeDate=this._dateAdapter.clampDate(Pe,this.minDate,this.maxDate),this._dateAdapter.getYear(fe)!==this._dateAdapter.getYear(this._activeDate)&&this._init()}get selected(){return this._selected}set selected(U){this._selected=U instanceof Sn?U:this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(U)),this._setSelectedMonth(U)}get minDate(){return this._minDate}set minDate(U){this._minDate=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(U))}get maxDate(){return this._maxDate}set maxDate(U){this._maxDate=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(U))}constructor(U,fe,Pe,Je){this._changeDetectorRef=U,this._dateFormats=fe,this._dateAdapter=Pe,this._dir=Je,this._rerenderSubscription=tt.w0.EMPTY,this.selectedChange=new o.EventEmitter,this.monthSelected=new o.EventEmitter,this.activeDateChange=new o.EventEmitter,this._activeDate=this._dateAdapter.today()}ngAfterContentInit(){this._rerenderSubscription=this._dateAdapter.localeChanges.pipe((0,vt.O)(null)).subscribe(()=>this._init())}ngOnDestroy(){this._rerenderSubscription.unsubscribe()}_monthSelected(U){const fe=U.value,Pe=this._dateAdapter.createDate(this._dateAdapter.getYear(this.activeDate),fe,1);this.monthSelected.emit(Pe);const Je=this._getDateFromMonth(fe);this.selectedChange.emit(Je)}_updateActiveDate(U){const Pe=this._activeDate;this.activeDate=this._getDateFromMonth(U.value),this._dateAdapter.compareDate(Pe,this.activeDate)&&this.activeDateChange.emit(this.activeDate)}_handleCalendarBodyKeydown(U){const fe=this._activeDate,Pe=this._isRtl();switch(U.keyCode){case xt.oh:this.activeDate=this._dateAdapter.addCalendarMonths(this._activeDate,Pe?1:-1);break;case xt.SV:this.activeDate=this._dateAdapter.addCalendarMonths(this._activeDate,Pe?-1:1);break;case xt.LH:this.activeDate=this._dateAdapter.addCalendarMonths(this._activeDate,-4);break;case xt.JH:this.activeDate=this._dateAdapter.addCalendarMonths(this._activeDate,4);break;case xt.Sd:this.activeDate=this._dateAdapter.addCalendarMonths(this._activeDate,-this._dateAdapter.getMonth(this._activeDate));break;case xt.uR:this.activeDate=this._dateAdapter.addCalendarMonths(this._activeDate,11-this._dateAdapter.getMonth(this._activeDate));break;case xt.Ku:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,U.altKey?-10:-1);break;case xt.VM:this.activeDate=this._dateAdapter.addCalendarYears(this._activeDate,U.altKey?10:1);break;case xt.K5:case xt.L_:this._selectionKeyPressed=!0;break;default:return}this._dateAdapter.compareDate(fe,this.activeDate)&&(this.activeDateChange.emit(this.activeDate),this._focusActiveCellAfterViewChecked()),U.preventDefault()}_handleCalendarBodyKeyup(U){(U.keyCode===xt.L_||U.keyCode===xt.K5)&&(this._selectionKeyPressed&&this._monthSelected({value:this._dateAdapter.getMonth(this._activeDate),event:U}),this._selectionKeyPressed=!1)}_init(){this._setSelectedMonth(this.selected),this._todayMonth=this._getMonthInCurrentYear(this._dateAdapter.today()),this._yearLabel=this._dateAdapter.getYearName(this.activeDate);let U=this._dateAdapter.getMonthNames("short");this._months=[[0,1,2,3],[4,5,6,7],[8,9,10,11]].map(fe=>fe.map(Pe=>this._createCellForMonth(Pe,U[Pe]))),this._changeDetectorRef.markForCheck()}_focusActiveCell(){this._matCalendarBody._focusActiveCell()}_focusActiveCellAfterViewChecked(){this._matCalendarBody._scheduleFocusActiveCellAfterViewChecked()}_getMonthInCurrentYear(U){return U&&this._dateAdapter.getYear(U)==this._dateAdapter.getYear(this.activeDate)?this._dateAdapter.getMonth(U):null}_getDateFromMonth(U){const fe=this._dateAdapter.createDate(this._dateAdapter.getYear(this.activeDate),U,1),Pe=this._dateAdapter.getNumDaysInMonth(fe);return this._dateAdapter.createDate(this._dateAdapter.getYear(this.activeDate),U,Math.min(this._dateAdapter.getDate(this.activeDate),Pe))}_createCellForMonth(U,fe){const Pe=this._dateAdapter.createDate(this._dateAdapter.getYear(this.activeDate),U,1),Je=this._dateAdapter.format(Pe,this._dateFormats.display.monthYearA11yLabel),Gt=this.dateClass?this.dateClass(Pe,"year"):void 0;return new ce(U,fe.toLocaleUpperCase(),Je,this._shouldEnableMonth(U),Gt)}_shouldEnableMonth(U){const fe=this._dateAdapter.getYear(this.activeDate);if(null==U||this._isYearAndMonthAfterMaxDate(fe,U)||this._isYearAndMonthBeforeMinDate(fe,U))return!1;if(!this.dateFilter)return!0;for(let Je=this._dateAdapter.createDate(fe,U,1);this._dateAdapter.getMonth(Je)==U;Je=this._dateAdapter.addCalendarDays(Je,1))if(this.dateFilter(Je))return!0;return!1}_isYearAndMonthAfterMaxDate(U,fe){if(this.maxDate){const Pe=this._dateAdapter.getYear(this.maxDate),Je=this._dateAdapter.getMonth(this.maxDate);return U>Pe||U===Pe&&fe>Je}return!1}_isYearAndMonthBeforeMinDate(U,fe){if(this.minDate){const Pe=this._dateAdapter.getYear(this.minDate),Je=this._dateAdapter.getMonth(this.minDate);return U{class Ke{constructor(U,fe,Pe,Je,Gt){this._intl=U,this.calendar=fe,this._dateAdapter=Pe,this._dateFormats=Je,this._id="mat-calendar-header-"+An++,this._periodButtonLabelId=`${this._id}-period-label`,this.calendar.stateChanges.subscribe(()=>Gt.markForCheck())}get periodButtonText(){return"month"==this.calendar.currentView?this._dateAdapter.format(this.calendar.activeDate,this._dateFormats.display.monthYearLabel).toLocaleUpperCase():"year"==this.calendar.currentView?this._dateAdapter.getYearName(this.calendar.activeDate):this._intl.formatYearRange(...this._formatMinAndMaxYearLabels())}get periodButtonDescription(){return"month"==this.calendar.currentView?this._dateAdapter.format(this.calendar.activeDate,this._dateFormats.display.monthYearLabel).toLocaleUpperCase():"year"==this.calendar.currentView?this._dateAdapter.getYearName(this.calendar.activeDate):this._intl.formatYearRangeLabel(...this._formatMinAndMaxYearLabels())}get periodButtonLabel(){return"month"==this.calendar.currentView?this._intl.switchToMultiYearViewLabel:this._intl.switchToMonthViewLabel}get prevButtonLabel(){return{month:this._intl.prevMonthLabel,year:this._intl.prevYearLabel,"multi-year":this._intl.prevMultiYearLabel}[this.calendar.currentView]}get nextButtonLabel(){return{month:this._intl.nextMonthLabel,year:this._intl.nextYearLabel,"multi-year":this._intl.nextMultiYearLabel}[this.calendar.currentView]}currentPeriodClicked(){this.calendar.currentView="month"==this.calendar.currentView?"multi-year":"month"}previousClicked(){this.calendar.activeDate="month"==this.calendar.currentView?this._dateAdapter.addCalendarMonths(this.calendar.activeDate,-1):this._dateAdapter.addCalendarYears(this.calendar.activeDate,"year"==this.calendar.currentView?-1:-In)}nextClicked(){this.calendar.activeDate="month"==this.calendar.currentView?this._dateAdapter.addCalendarMonths(this.calendar.activeDate,1):this._dateAdapter.addCalendarYears(this.calendar.activeDate,"year"==this.calendar.currentView?1:In)}previousEnabled(){return!this.calendar.minDate||!this.calendar.minDate||!this._isSameView(this.calendar.activeDate,this.calendar.minDate)}nextEnabled(){return!this.calendar.maxDate||!this._isSameView(this.calendar.activeDate,this.calendar.maxDate)}_isSameView(U,fe){return"month"==this.calendar.currentView?this._dateAdapter.getYear(U)==this._dateAdapter.getYear(fe)&&this._dateAdapter.getMonth(U)==this._dateAdapter.getMonth(fe):"year"==this.calendar.currentView?this._dateAdapter.getYear(U)==this._dateAdapter.getYear(fe):Qn(this._dateAdapter,U,fe,this.calendar.minDate,this.calendar.maxDate)}_formatMinAndMaxYearLabels(){const fe=this._dateAdapter.getYear(this.calendar.activeDate)-ri(this._dateAdapter,this.calendar.activeDate,this.calendar.minDate,this.calendar.maxDate),Pe=fe+In-1;return[this._dateAdapter.getYearName(this._dateAdapter.createDate(fe,0,1)),this._dateAdapter.getYearName(this._dateAdapter.createDate(Pe,0,1))]}}return Ke.\u0275fac=function(U){return new(U||Ke)(o.\u0275\u0275directiveInject(re),o.\u0275\u0275directiveInject((0,o.forwardRef)(()=>si)),o.\u0275\u0275directiveInject(a.DateAdapter,8),o.\u0275\u0275directiveInject(a.MAT_DATE_FORMATS,8),o.\u0275\u0275directiveInject(o.ChangeDetectorRef))},Ke.\u0275cmp=o.\u0275\u0275defineComponent({type:Ke,selectors:[["mat-calendar-header"]],exportAs:["matCalendarHeader"],ngContentSelectors:ze,decls:13,vars:11,consts:[[1,"mat-calendar-header"],[1,"mat-calendar-controls"],["mat-button","","type","button","aria-live","polite",1,"mat-calendar-period-button",3,"click"],["aria-hidden","true"],["viewBox","0 0 10 5","focusable","false","aria-hidden","true",1,"mat-calendar-arrow"],["points","0,0 5,5 10,0"],[1,"mat-calendar-spacer"],["mat-icon-button","","type","button",1,"mat-calendar-previous-button",3,"disabled","click"],["mat-icon-button","","type","button",1,"mat-calendar-next-button",3,"disabled","click"],[1,"mat-calendar-hidden-label",3,"id"]],template:function(U,fe){1&U&&(o.\u0275\u0275projectionDef(),o.\u0275\u0275elementStart(0,"div",0)(1,"div",1)(2,"button",2),o.\u0275\u0275listener("click",function(){return fe.currentPeriodClicked()}),o.\u0275\u0275elementStart(3,"span",3),o.\u0275\u0275text(4),o.\u0275\u0275elementEnd(),o.\u0275\u0275namespaceSVG(),o.\u0275\u0275elementStart(5,"svg",4),o.\u0275\u0275element(6,"polygon",5),o.\u0275\u0275elementEnd()(),o.\u0275\u0275namespaceHTML(),o.\u0275\u0275element(7,"div",6),o.\u0275\u0275projection(8),o.\u0275\u0275elementStart(9,"button",7),o.\u0275\u0275listener("click",function(){return fe.previousClicked()}),o.\u0275\u0275elementEnd(),o.\u0275\u0275elementStart(10,"button",8),o.\u0275\u0275listener("click",function(){return fe.nextClicked()}),o.\u0275\u0275elementEnd()()(),o.\u0275\u0275elementStart(11,"label",9),o.\u0275\u0275text(12),o.\u0275\u0275elementEnd()),2&U&&(o.\u0275\u0275advance(2),o.\u0275\u0275attribute("aria-label",fe.periodButtonLabel)("aria-describedby",fe._periodButtonLabelId),o.\u0275\u0275advance(2),o.\u0275\u0275textInterpolate(fe.periodButtonText),o.\u0275\u0275advance(1),o.\u0275\u0275classProp("mat-calendar-invert","month"!==fe.calendar.currentView),o.\u0275\u0275advance(4),o.\u0275\u0275property("disabled",!fe.previousEnabled()),o.\u0275\u0275attribute("aria-label",fe.prevButtonLabel),o.\u0275\u0275advance(1),o.\u0275\u0275property("disabled",!fe.nextEnabled()),o.\u0275\u0275attribute("aria-label",fe.nextButtonLabel),o.\u0275\u0275advance(1),o.\u0275\u0275property("id",fe._periodButtonLabelId),o.\u0275\u0275advance(1),o.\u0275\u0275textInterpolate(fe.periodButtonDescription))},dependencies:[Y,Xe],encapsulation:2,changeDetection:0}),Ke})(),si=(()=>{class Ke{get startAt(){return this._startAt}set startAt(U){this._startAt=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(U))}get selected(){return this._selected}set selected(U){this._selected=U instanceof Sn?U:this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(U))}get minDate(){return this._minDate}set minDate(U){this._minDate=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(U))}get maxDate(){return this._maxDate}set maxDate(U){this._maxDate=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(U))}get activeDate(){return this._clampedActiveDate}set activeDate(U){this._clampedActiveDate=this._dateAdapter.clampDate(U,this.minDate,this.maxDate),this.stateChanges.next(),this._changeDetectorRef.markForCheck()}get currentView(){return this._currentView}set currentView(U){const fe=this._currentView!==U?U:null;this._currentView=U,this._moveFocusOnNextTick=!0,this._changeDetectorRef.markForCheck(),fe&&this.viewChanged.emit(fe)}constructor(U,fe,Pe,Je){this._dateAdapter=fe,this._dateFormats=Pe,this._changeDetectorRef=Je,this._moveFocusOnNextTick=!1,this.startView="month",this.selectedChange=new o.EventEmitter,this.yearSelected=new o.EventEmitter,this.monthSelected=new o.EventEmitter,this.viewChanged=new o.EventEmitter(!0),this._userSelection=new o.EventEmitter,this._userDragDrop=new o.EventEmitter,this._activeDrag=null,this.stateChanges=new Mt.x,this._intlChanges=U.changes.subscribe(()=>{Je.markForCheck(),this.stateChanges.next()})}ngAfterContentInit(){this._calendarHeaderPortal=new C.C5(this.headerComponent||Yn),this.activeDate=this.startAt||this._dateAdapter.today(),this._currentView=this.startView}ngAfterViewChecked(){this._moveFocusOnNextTick&&(this._moveFocusOnNextTick=!1,this.focusActiveCell())}ngOnDestroy(){this._intlChanges.unsubscribe(),this.stateChanges.complete()}ngOnChanges(U){const fe=U.minDate&&!this._dateAdapter.sameDate(U.minDate.previousValue,U.minDate.currentValue)?U.minDate:void 0,Pe=U.maxDate&&!this._dateAdapter.sameDate(U.maxDate.previousValue,U.maxDate.currentValue)?U.maxDate:void 0,Je=fe||Pe||U.dateFilter;if(Je&&!Je.firstChange){const Gt=this._getCurrentViewComponent();Gt&&(this._changeDetectorRef.detectChanges(),Gt._init())}this.stateChanges.next()}focusActiveCell(){this._getCurrentViewComponent()._focusActiveCell(!1)}updateTodaysDate(){this._getCurrentViewComponent()._init()}_dateSelected(U){const fe=U.value;(this.selected instanceof Sn||fe&&!this._dateAdapter.sameDate(fe,this.selected))&&this.selectedChange.emit(fe),this._userSelection.emit(U)}_yearSelectedInMultiYearView(U){this.yearSelected.emit(U)}_monthSelectedInYearView(U){this.monthSelected.emit(U)}_goToDateInView(U,fe){this.activeDate=U,this.currentView=fe}_dragStarted(U){this._activeDrag=U}_dragEnded(U){this._activeDrag&&(U.value&&this._userDragDrop.emit(U),this._activeDrag=null)}_getCurrentViewComponent(){return this.monthView||this.yearView||this.multiYearView}}return Ke.\u0275fac=function(U){return new(U||Ke)(o.\u0275\u0275directiveInject(re),o.\u0275\u0275directiveInject(a.DateAdapter,8),o.\u0275\u0275directiveInject(a.MAT_DATE_FORMATS,8),o.\u0275\u0275directiveInject(o.ChangeDetectorRef))},Ke.\u0275cmp=o.\u0275\u0275defineComponent({type:Ke,selectors:[["mat-calendar"]],viewQuery:function(U,fe){if(1&U&&(o.\u0275\u0275viewQuery($n,5),o.\u0275\u0275viewQuery(Dn,5),o.\u0275\u0275viewQuery(mi,5)),2&U){let Pe;o.\u0275\u0275queryRefresh(Pe=o.\u0275\u0275loadQuery())&&(fe.monthView=Pe.first),o.\u0275\u0275queryRefresh(Pe=o.\u0275\u0275loadQuery())&&(fe.yearView=Pe.first),o.\u0275\u0275queryRefresh(Pe=o.\u0275\u0275loadQuery())&&(fe.multiYearView=Pe.first)}},hostAttrs:[1,"mat-calendar"],inputs:{headerComponent:"headerComponent",startAt:"startAt",startView:"startView",selected:"selected",minDate:"minDate",maxDate:"maxDate",dateFilter:"dateFilter",dateClass:"dateClass",comparisonStart:"comparisonStart",comparisonEnd:"comparisonEnd",startDateAccessibleName:"startDateAccessibleName",endDateAccessibleName:"endDateAccessibleName"},outputs:{selectedChange:"selectedChange",yearSelected:"yearSelected",monthSelected:"monthSelected",viewChanged:"viewChanged",_userSelection:"_userSelection",_userDragDrop:"_userDragDrop"},exportAs:["matCalendar"],features:[o.\u0275\u0275ProvidersFeature([Qi]),o.\u0275\u0275NgOnChangesFeature],decls:5,vars:5,consts:[[3,"cdkPortalOutlet"],["cdkMonitorSubtreeFocus","","tabindex","-1",1,"mat-calendar-content",3,"ngSwitch"],[3,"activeDate","selected","dateFilter","maxDate","minDate","dateClass","comparisonStart","comparisonEnd","startDateAccessibleName","endDateAccessibleName","activeDrag","activeDateChange","_userSelection","dragStarted","dragEnded",4,"ngSwitchCase"],[3,"activeDate","selected","dateFilter","maxDate","minDate","dateClass","activeDateChange","monthSelected","selectedChange",4,"ngSwitchCase"],[3,"activeDate","selected","dateFilter","maxDate","minDate","dateClass","activeDateChange","yearSelected","selectedChange",4,"ngSwitchCase"],[3,"activeDate","selected","dateFilter","maxDate","minDate","dateClass","comparisonStart","comparisonEnd","startDateAccessibleName","endDateAccessibleName","activeDrag","activeDateChange","_userSelection","dragStarted","dragEnded"],[3,"activeDate","selected","dateFilter","maxDate","minDate","dateClass","activeDateChange","monthSelected","selectedChange"],[3,"activeDate","selected","dateFilter","maxDate","minDate","dateClass","activeDateChange","yearSelected","selectedChange"]],template:function(U,fe){1&U&&(o.\u0275\u0275template(0,yt,0,0,"ng-template",0),o.\u0275\u0275elementStart(1,"div",1),o.\u0275\u0275template(2,Bt,1,11,"mat-month-view",2),o.\u0275\u0275template(3,$t,1,6,"mat-year-view",3),o.\u0275\u0275template(4,Yt,1,6,"mat-multi-year-view",4),o.\u0275\u0275elementEnd()),2&U&&(o.\u0275\u0275property("cdkPortalOutlet",fe._calendarHeaderPortal),o.\u0275\u0275advance(1),o.\u0275\u0275property("ngSwitch",fe.currentView),o.\u0275\u0275advance(1),o.\u0275\u0275property("ngSwitchCase","month"),o.\u0275\u0275advance(1),o.\u0275\u0275property("ngSwitchCase","year"),o.\u0275\u0275advance(1),o.\u0275\u0275property("ngSwitchCase","multi-year"))},dependencies:[b.NgSwitch,b.NgSwitchCase,n.kH,C.Pl,$n,Dn,mi],styles:['.mat-calendar{display:block}.mat-calendar-header{padding:8px 8px 0 8px}.mat-calendar-content{padding:0 8px 8px 8px;outline:none}.mat-calendar-controls{display:flex;align-items:center;margin:5% calc(4.7142857143% - 16px)}.mat-calendar-spacer{flex:1 1 auto}.mat-calendar-period-button{min-width:0;margin:0 8px}.mat-calendar-arrow{display:inline-block;width:10px;height:5px;margin:0 0 0 5px;vertical-align:middle}.mat-calendar-arrow.mat-calendar-invert{transform:rotate(180deg)}[dir=rtl] .mat-calendar-arrow{margin:0 5px 0 0}.cdk-high-contrast-active .mat-calendar-arrow{fill:CanvasText}.mat-calendar-previous-button,.mat-calendar-next-button{position:relative}.mat-calendar-previous-button::after,.mat-calendar-next-button::after{top:0;left:0;right:0;bottom:0;position:absolute;content:"";margin:15.5px;border:0 solid currentColor;border-top-width:2px}[dir=rtl] .mat-calendar-previous-button,[dir=rtl] .mat-calendar-next-button{transform:rotate(180deg)}.mat-calendar-previous-button::after{border-left-width:2px;transform:translateX(2px) rotate(-45deg)}.mat-calendar-next-button::after{border-right-width:2px;transform:translateX(-2px) rotate(45deg)}.mat-calendar-table{border-spacing:0;border-collapse:collapse;width:100%}.mat-calendar-table-header th{text-align:center;padding:0 0 8px 0}.mat-calendar-table-header-divider{position:relative;height:1px}.mat-calendar-table-header-divider::after{content:"";position:absolute;top:0;left:-8px;right:-8px;height:1px}.mat-calendar-body-cell-content::before{margin:calc(calc(var(--mat-focus-indicator-border-width, 3px) + 3px) * -1)}.mat-calendar-body-cell:focus .mat-focus-indicator::before{content:""}.mat-calendar-hidden-label{display:none}'],encapsulation:2,changeDetection:0}),Ke})();const ii={transformPanel:(0,Ce.X$)("transformPanel",[(0,Ce.eR)("void => enter-dropdown",(0,Ce.jt)("120ms cubic-bezier(0, 0, 0.2, 1)",(0,Ce.F4)([(0,Ce.oB)({opacity:0,transform:"scale(1, 0.8)"}),(0,Ce.oB)({opacity:1,transform:"scale(1, 1)"})]))),(0,Ce.eR)("void => enter-dialog",(0,Ce.jt)("150ms cubic-bezier(0, 0, 0.2, 1)",(0,Ce.F4)([(0,Ce.oB)({opacity:0,transform:"scale(0.7)"}),(0,Ce.oB)({transform:"none",opacity:1})]))),(0,Ce.eR)("* => void",(0,Ce.jt)("100ms linear",(0,Ce.oB)({opacity:0})))]),fadeInCalendar:(0,Ce.X$)("fadeInCalendar",[(0,Ce.SB)("void",(0,Ce.oB)({opacity:0})),(0,Ce.SB)("enter",(0,Ce.oB)({opacity:1})),(0,Ce.eR)("void => *",(0,Ce.jt)("120ms 100ms cubic-bezier(0.55, 0, 0.55, 0.2)"))])};let Ii=0;const oi=new o.InjectionToken("mat-datepicker-scroll-strategy");function li(Ke){return()=>Ke.scrollStrategies.reposition()}const Pi={provide:oi,deps:[p.aV],useFactory:li},Ct=(0,a.mixinColor)(class{constructor(Ke){this._elementRef=Ke}});let Ft=(()=>{class Ke extends Ct{constructor(U,fe,Pe,Je,Gt,Pn){super(U),this._changeDetectorRef=fe,this._globalModel=Pe,this._dateAdapter=Je,this._rangeSelectionStrategy=Gt,this._subscriptions=new tt.w0,this._animationDone=new Mt.x,this._isAnimating=!1,this._actionsPortal=null,this._closeButtonText=Pn.closeCalendarLabel}ngOnInit(){this._animationState=this.datepicker.touchUi?"enter-dialog":"enter-dropdown"}ngAfterViewInit(){this._subscriptions.add(this.datepicker.stateChanges.subscribe(()=>{this._changeDetectorRef.markForCheck()})),this._calendar.focusActiveCell()}ngOnDestroy(){this._subscriptions.unsubscribe(),this._animationDone.complete()}_handleUserSelection(U){const fe=this._model.selection,Pe=U.value,Je=fe instanceof Sn;if(Je&&this._rangeSelectionStrategy){const Gt=this._rangeSelectionStrategy.selectionFinished(Pe,fe,U.event);this._model.updateSelection(Gt,this)}else Pe&&(Je||!this._dateAdapter.sameDate(Pe,fe))&&this._model.add(Pe);(!this._model||this._model.isComplete())&&!this._actionsPortal&&this.datepicker.close()}_handleUserDragDrop(U){this._model.updateSelection(U.value,this)}_startExitAnimation(){this._animationState="void",this._changeDetectorRef.markForCheck()}_handleAnimationEvent(U){this._isAnimating="start"===U.phaseName,this._isAnimating||this._animationDone.next()}_getSelected(){return this._model.selection}_applyPendingSelection(){this._model!==this._globalModel&&this._globalModel.updateSelection(this._model.selection,this)}_assignActions(U,fe){this._model=U?this._globalModel.clone():this._globalModel,this._actionsPortal=U,fe&&this._changeDetectorRef.detectChanges()}}return Ke.\u0275fac=function(U){return new(U||Ke)(o.\u0275\u0275directiveInject(o.ElementRef),o.\u0275\u0275directiveInject(o.ChangeDetectorRef),o.\u0275\u0275directiveInject(Mn),o.\u0275\u0275directiveInject(a.DateAdapter),o.\u0275\u0275directiveInject(pt,8),o.\u0275\u0275directiveInject(re))},Ke.\u0275cmp=o.\u0275\u0275defineComponent({type:Ke,selectors:[["mat-datepicker-content"]],viewQuery:function(U,fe){if(1&U&&o.\u0275\u0275viewQuery(si,5),2&U){let Pe;o.\u0275\u0275queryRefresh(Pe=o.\u0275\u0275loadQuery())&&(fe._calendar=Pe.first)}},hostAttrs:[1,"mat-datepicker-content"],hostVars:3,hostBindings:function(U,fe){1&U&&o.\u0275\u0275syntheticHostListener("@transformPanel.start",function(Je){return fe._handleAnimationEvent(Je)})("@transformPanel.done",function(Je){return fe._handleAnimationEvent(Je)}),2&U&&(o.\u0275\u0275syntheticHostProperty("@transformPanel",fe._animationState),o.\u0275\u0275classProp("mat-datepicker-content-touch",fe.datepicker.touchUi))},inputs:{color:"color"},exportAs:["matDatepickerContent"],features:[o.\u0275\u0275InheritDefinitionFeature],decls:5,vars:26,consts:[["cdkTrapFocus","","role","dialog",1,"mat-datepicker-content-container"],[3,"id","ngClass","startAt","startView","minDate","maxDate","dateFilter","headerComponent","selected","dateClass","comparisonStart","comparisonEnd","startDateAccessibleName","endDateAccessibleName","yearSelected","monthSelected","viewChanged","_userSelection","_userDragDrop"],[3,"cdkPortalOutlet"],["type","button","mat-raised-button","",1,"mat-datepicker-close-button",3,"color","focus","blur","click"]],template:function(U,fe){if(1&U&&(o.\u0275\u0275elementStart(0,"div",0)(1,"mat-calendar",1),o.\u0275\u0275listener("yearSelected",function(Je){return fe.datepicker._selectYear(Je)})("monthSelected",function(Je){return fe.datepicker._selectMonth(Je)})("viewChanged",function(Je){return fe.datepicker._viewChanged(Je)})("_userSelection",function(Je){return fe._handleUserSelection(Je)})("_userDragDrop",function(Je){return fe._handleUserDragDrop(Je)}),o.\u0275\u0275elementEnd(),o.\u0275\u0275template(2,Ue,0,0,"ng-template",2),o.\u0275\u0275elementStart(3,"button",3),o.\u0275\u0275listener("focus",function(){return fe._closeButtonFocused=!0})("blur",function(){return fe._closeButtonFocused=!1})("click",function(){return fe.datepicker.close()}),o.\u0275\u0275text(4),o.\u0275\u0275elementEnd()()),2&U){let Pe;o.\u0275\u0275classProp("mat-datepicker-content-container-with-custom-header",fe.datepicker.calendarHeaderComponent)("mat-datepicker-content-container-with-actions",fe._actionsPortal),o.\u0275\u0275attribute("aria-modal",!0)("aria-labelledby",null!==(Pe=fe._dialogLabelId)&&void 0!==Pe?Pe:void 0),o.\u0275\u0275advance(1),o.\u0275\u0275property("id",fe.datepicker.id)("ngClass",fe.datepicker.panelClass)("startAt",fe.datepicker.startAt)("startView",fe.datepicker.startView)("minDate",fe.datepicker._getMinDate())("maxDate",fe.datepicker._getMaxDate())("dateFilter",fe.datepicker._getDateFilter())("headerComponent",fe.datepicker.calendarHeaderComponent)("selected",fe._getSelected())("dateClass",fe.datepicker.dateClass)("comparisonStart",fe.comparisonStart)("comparisonEnd",fe.comparisonEnd)("@fadeInCalendar","enter")("startDateAccessibleName",fe.startDateAccessibleName)("endDateAccessibleName",fe.endDateAccessibleName),o.\u0275\u0275advance(1),o.\u0275\u0275property("cdkPortalOutlet",fe._actionsPortal),o.\u0275\u0275advance(1),o.\u0275\u0275classProp("cdk-visually-hidden",!fe._closeButtonFocused),o.\u0275\u0275property("color",fe.color||"primary"),o.\u0275\u0275advance(1),o.\u0275\u0275textInterpolate(fe._closeButtonText)}},dependencies:[b.NgClass,Y,n.mK,C.Pl,si],styles:[".mat-datepicker-content{display:block;border-radius:4px}.mat-datepicker-content .mat-calendar{width:296px;height:354px}.mat-datepicker-content .mat-datepicker-content-container-with-custom-header .mat-calendar{height:auto}.mat-datepicker-content .mat-datepicker-close-button{position:absolute;top:100%;left:0;margin-top:8px}.ng-animating .mat-datepicker-content .mat-datepicker-close-button{display:none}.mat-datepicker-content-container{display:flex;flex-direction:column;justify-content:space-between}.mat-datepicker-content-touch{display:block;max-height:80vh;position:relative;overflow:visible}.mat-datepicker-content-touch .mat-datepicker-content-container{min-height:312px;max-height:788px;min-width:250px;max-width:750px}.mat-datepicker-content-touch .mat-calendar{width:100%;height:auto}@media all and (orientation: landscape){.mat-datepicker-content-touch .mat-datepicker-content-container{width:64vh;height:80vh}}@media all and (orientation: portrait){.mat-datepicker-content-touch .mat-datepicker-content-container{width:80vw;height:100vw}.mat-datepicker-content-touch .mat-datepicker-content-container-with-actions{height:115vw}}"],encapsulation:2,data:{animation:[ii.transformPanel,ii.fadeInCalendar]},changeDetection:0}),Ke})(),Ae=(()=>{class Ke{get startAt(){return this._startAt||(this.datepickerInput?this.datepickerInput.getStartValue():null)}set startAt(U){this._startAt=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(U))}get color(){return this._color||(this.datepickerInput?this.datepickerInput.getThemePalette():void 0)}set color(U){this._color=U}get touchUi(){return this._touchUi}set touchUi(U){this._touchUi=(0,J.Ig)(U)}get disabled(){return void 0===this._disabled&&this.datepickerInput?this.datepickerInput.disabled:!!this._disabled}set disabled(U){const fe=(0,J.Ig)(U);fe!==this._disabled&&(this._disabled=fe,this.stateChanges.next(void 0))}get restoreFocus(){return this._restoreFocus}set restoreFocus(U){this._restoreFocus=(0,J.Ig)(U)}get panelClass(){return this._panelClass}set panelClass(U){this._panelClass=(0,J.du)(U)}get opened(){return this._opened}set opened(U){(0,J.Ig)(U)?this.open():this.close()}_getMinDate(){return this.datepickerInput&&this.datepickerInput.min}_getMaxDate(){return this.datepickerInput&&this.datepickerInput.max}_getDateFilter(){return this.datepickerInput&&this.datepickerInput.dateFilter}constructor(U,fe,Pe,Je,Gt,Pn,Gi){this._overlay=U,this._ngZone=fe,this._viewContainerRef=Pe,this._dateAdapter=Gt,this._dir=Pn,this._model=Gi,this._inputStateChanges=tt.w0.EMPTY,this._document=(0,o.inject)(b.DOCUMENT),this.startView="month",this._touchUi=!1,this.xPosition="start",this.yPosition="below",this._restoreFocus=!0,this.yearSelected=new o.EventEmitter,this.monthSelected=new o.EventEmitter,this.viewChanged=new o.EventEmitter(!0),this.openedStream=new o.EventEmitter,this.closedStream=new o.EventEmitter,this._opened=!1,this.id="mat-datepicker-"+Ii++,this._focusedElementBeforeOpen=null,this._backdropHarnessClass=`${this.id}-backdrop`,this.stateChanges=new Mt.x,this._scrollStrategy=Je}ngOnChanges(U){const fe=U.xPosition||U.yPosition;if(fe&&!fe.firstChange&&this._overlayRef){const Pe=this._overlayRef.getConfig().positionStrategy;Pe instanceof p._G&&(this._setConnectedPositions(Pe),this.opened&&this._overlayRef.updatePosition())}this.stateChanges.next(void 0)}ngOnDestroy(){this._destroyOverlay(),this.close(),this._inputStateChanges.unsubscribe(),this.stateChanges.complete()}select(U){this._model.add(U)}_selectYear(U){this.yearSelected.emit(U)}_selectMonth(U){this.monthSelected.emit(U)}_viewChanged(U){this.viewChanged.emit(U)}registerInput(U){return this._inputStateChanges.unsubscribe(),this.datepickerInput=U,this._inputStateChanges=U.stateChanges.subscribe(()=>this.stateChanges.next(void 0)),this._model}registerActions(U){this._actionsPortal=U,this._componentRef?.instance._assignActions(U,!0)}removeActions(U){U===this._actionsPortal&&(this._actionsPortal=null,this._componentRef?.instance._assignActions(null,!0))}open(){this._opened||this.disabled||this._componentRef?.instance._isAnimating||(this._focusedElementBeforeOpen=(0,v.ht)(),this._openOverlay(),this._opened=!0,this.openedStream.emit())}close(){if(!this._opened||this._componentRef?.instance._isAnimating)return;const U=this._restoreFocus&&this._focusedElementBeforeOpen&&"function"==typeof this._focusedElementBeforeOpen.focus,fe=()=>{this._opened&&(this._opened=!1,this.closedStream.emit())};if(this._componentRef){const{instance:Pe,location:Je}=this._componentRef;Pe._startExitAnimation(),Pe._animationDone.pipe((0,ot.q)(1)).subscribe(()=>{const Gt=this._document.activeElement;U&&(!Gt||Gt===this._document.activeElement||Je.nativeElement.contains(Gt))&&this._focusedElementBeforeOpen.focus(),this._focusedElementBeforeOpen=null,this._destroyOverlay()})}U?setTimeout(fe):fe()}_applyPendingSelection(){this._componentRef?.instance?._applyPendingSelection()}_forwardContentValues(U){U.datepicker=this,U.color=this.color,U._dialogLabelId=this.datepickerInput.getOverlayLabelId(),U._assignActions(this._actionsPortal,!1)}_openOverlay(){this._destroyOverlay();const U=this.touchUi,fe=new C.C5(Ft,this._viewContainerRef),Pe=this._overlayRef=this._overlay.create(new p.X_({positionStrategy:U?this._getDialogStrategy():this._getDropdownStrategy(),hasBackdrop:!0,backdropClass:[U?"cdk-overlay-dark-backdrop":"mat-overlay-transparent-backdrop",this._backdropHarnessClass],direction:this._dir,scrollStrategy:U?this._overlay.scrollStrategies.block():this._scrollStrategy(),panelClass:"mat-datepicker-"+(U?"dialog":"popup")}));this._getCloseStream(Pe).subscribe(Je=>{Je&&Je.preventDefault(),this.close()}),Pe.keydownEvents().subscribe(Je=>{const Gt=Je.keyCode;(Gt===xt.LH||Gt===xt.JH||Gt===xt.oh||Gt===xt.SV||Gt===xt.Ku||Gt===xt.VM)&&Je.preventDefault()}),this._componentRef=Pe.attach(fe),this._forwardContentValues(this._componentRef.instance),U||this._ngZone.onStable.pipe((0,ot.q)(1)).subscribe(()=>Pe.updatePosition())}_destroyOverlay(){this._overlayRef&&(this._overlayRef.dispose(),this._overlayRef=this._componentRef=null)}_getDialogStrategy(){return this._overlay.position().global().centerHorizontally().centerVertically()}_getDropdownStrategy(){const U=this._overlay.position().flexibleConnectedTo(this.datepickerInput.getConnectedOverlayOrigin()).withTransformOriginOn(".mat-datepicker-content").withFlexibleDimensions(!1).withViewportMargin(8).withLockedPosition();return this._setConnectedPositions(U)}_setConnectedPositions(U){const fe="end"===this.xPosition?"end":"start",Pe="start"===fe?"end":"start",Je="above"===this.yPosition?"bottom":"top",Gt="top"===Je?"bottom":"top";return U.withPositions([{originX:fe,originY:Gt,overlayX:fe,overlayY:Je},{originX:fe,originY:Je,overlayX:fe,overlayY:Gt},{originX:Pe,originY:Gt,overlayX:Pe,overlayY:Je},{originX:Pe,originY:Je,overlayX:Pe,overlayY:Gt}])}_getCloseStream(U){const fe=["ctrlKey","shiftKey","metaKey"];return(0,St.T)(U.backdropClick(),U.detachments(),U.keydownEvents().pipe((0,rt.h)(Pe=>Pe.keyCode===xt.hY&&!(0,xt.Vb)(Pe)||this.datepickerInput&&(0,xt.Vb)(Pe,"altKey")&&Pe.keyCode===xt.LH&&fe.every(Je=>!(0,xt.Vb)(Pe,Je)))))}}return Ke.\u0275fac=function(U){return new(U||Ke)(o.\u0275\u0275directiveInject(p.aV),o.\u0275\u0275directiveInject(o.NgZone),o.\u0275\u0275directiveInject(o.ViewContainerRef),o.\u0275\u0275directiveInject(oi),o.\u0275\u0275directiveInject(a.DateAdapter,8),o.\u0275\u0275directiveInject(nt.Is,8),o.\u0275\u0275directiveInject(Mn))},Ke.\u0275dir=o.\u0275\u0275defineDirective({type:Ke,inputs:{calendarHeaderComponent:"calendarHeaderComponent",startAt:"startAt",startView:"startView",color:"color",touchUi:"touchUi",disabled:"disabled",xPosition:"xPosition",yPosition:"yPosition",restoreFocus:"restoreFocus",dateClass:"dateClass",panelClass:"panelClass",opened:"opened"},outputs:{yearSelected:"yearSelected",monthSelected:"monthSelected",viewChanged:"viewChanged",openedStream:"opened",closedStream:"closed"},features:[o.\u0275\u0275NgOnChangesFeature]}),Ke})(),W=(()=>{class Ke extends Ae{}return Ke.\u0275fac=function(){let kt;return function(fe){return(kt||(kt=o.\u0275\u0275getInheritedFactory(Ke)))(fe||Ke)}}(),Ke.\u0275cmp=o.\u0275\u0275defineComponent({type:Ke,selectors:[["mat-datepicker"]],exportAs:["matDatepicker"],features:[o.\u0275\u0275ProvidersFeature([Qi,{provide:Ae,useExisting:Ke}]),o.\u0275\u0275InheritDefinitionFeature],decls:0,vars:0,template:function(U,fe){},encapsulation:2,changeDetection:0}),Ke})();class be{constructor(kt,U){this.target=kt,this.targetElement=U,this.value=this.target.value}}let ge=(()=>{class Ke{get value(){return this._model?this._getValueFromModel(this._model.selection):this._pendingValue}set value(U){this._assignValueProgrammatically(U)}get disabled(){return!!this._disabled||this._parentDisabled()}set disabled(U){const fe=(0,J.Ig)(U),Pe=this._elementRef.nativeElement;this._disabled!==fe&&(this._disabled=fe,this.stateChanges.next(void 0)),fe&&this._isInitialized&&Pe.blur&&Pe.blur()}_getValidators(){return[this._parseValidator,this._minValidator,this._maxValidator,this._filterValidator]}_registerModel(U){this._model=U,this._valueChangesSubscription.unsubscribe(),this._pendingValue&&this._assignValue(this._pendingValue),this._valueChangesSubscription=this._model.selectionChanged.subscribe(fe=>{if(this._shouldHandleChangeEvent(fe)){const Pe=this._getValueFromModel(fe.selection);this._lastValueValid=this._isValidValue(Pe),this._cvaOnChange(Pe),this._onTouched(),this._formatValue(Pe),this.dateInput.emit(new be(this,this._elementRef.nativeElement)),this.dateChange.emit(new be(this,this._elementRef.nativeElement))}})}constructor(U,fe,Pe){this._elementRef=U,this._dateAdapter=fe,this._dateFormats=Pe,this.dateChange=new o.EventEmitter,this.dateInput=new o.EventEmitter,this.stateChanges=new Mt.x,this._onTouched=()=>{},this._validatorOnChange=()=>{},this._cvaOnChange=()=>{},this._valueChangesSubscription=tt.w0.EMPTY,this._localeSubscription=tt.w0.EMPTY,this._parseValidator=()=>this._lastValueValid?null:{matDatepickerParse:{text:this._elementRef.nativeElement.value}},this._filterValidator=Je=>{const Gt=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(Je.value));return!Gt||this._matchesFilter(Gt)?null:{matDatepickerFilter:!0}},this._minValidator=Je=>{const Gt=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(Je.value)),Pn=this._getMinDate();return!Pn||!Gt||this._dateAdapter.compareDate(Pn,Gt)<=0?null:{matDatepickerMin:{min:Pn,actual:Gt}}},this._maxValidator=Je=>{const Gt=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(Je.value)),Pn=this._getMaxDate();return!Pn||!Gt||this._dateAdapter.compareDate(Pn,Gt)>=0?null:{matDatepickerMax:{max:Pn,actual:Gt}}},this._lastValueValid=!1,this._localeSubscription=fe.localeChanges.subscribe(()=>{this._assignValueProgrammatically(this.value)})}ngAfterViewInit(){this._isInitialized=!0}ngOnChanges(U){Ge(U,this._dateAdapter)&&this.stateChanges.next(void 0)}ngOnDestroy(){this._valueChangesSubscription.unsubscribe(),this._localeSubscription.unsubscribe(),this.stateChanges.complete()}registerOnValidatorChange(U){this._validatorOnChange=U}validate(U){return this._validator?this._validator(U):null}writeValue(U){this._assignValueProgrammatically(U)}registerOnChange(U){this._cvaOnChange=U}registerOnTouched(U){this._onTouched=U}setDisabledState(U){this.disabled=U}_onKeydown(U){(0,xt.Vb)(U,"altKey")&&U.keyCode===xt.JH&&["ctrlKey","shiftKey","metaKey"].every(Je=>!(0,xt.Vb)(U,Je))&&!this._elementRef.nativeElement.readOnly&&(this._openPopup(),U.preventDefault())}_onInput(U){const fe=this._lastValueValid;let Pe=this._dateAdapter.parse(U,this._dateFormats.parse.dateInput);this._lastValueValid=this._isValidValue(Pe),Pe=this._dateAdapter.getValidDateOrNull(Pe);const Je=!this._dateAdapter.sameDate(Pe,this.value);!Pe||Je?this._cvaOnChange(Pe):(U&&!this.value&&this._cvaOnChange(Pe),fe!==this._lastValueValid&&this._validatorOnChange()),Je&&(this._assignValue(Pe),this.dateInput.emit(new be(this,this._elementRef.nativeElement)))}_onChange(){this.dateChange.emit(new be(this,this._elementRef.nativeElement))}_onBlur(){this.value&&this._formatValue(this.value),this._onTouched()}_formatValue(U){this._elementRef.nativeElement.value=null!=U?this._dateAdapter.format(U,this._dateFormats.display.dateInput):""}_assignValue(U){this._model?(this._assignValueToModel(U),this._pendingValue=null):this._pendingValue=U}_isValidValue(U){return!U||this._dateAdapter.isValid(U)}_parentDisabled(){return!1}_assignValueProgrammatically(U){U=this._dateAdapter.deserialize(U),this._lastValueValid=this._isValidValue(U),U=this._dateAdapter.getValidDateOrNull(U),this._assignValue(U),this._formatValue(U)}_matchesFilter(U){const fe=this._getDateFilter();return!fe||fe(U)}}return Ke.\u0275fac=function(U){return new(U||Ke)(o.\u0275\u0275directiveInject(o.ElementRef),o.\u0275\u0275directiveInject(a.DateAdapter,8),o.\u0275\u0275directiveInject(a.MAT_DATE_FORMATS,8))},Ke.\u0275dir=o.\u0275\u0275defineDirective({type:Ke,inputs:{value:"value",disabled:"disabled"},outputs:{dateChange:"dateChange",dateInput:"dateInput"},features:[o.\u0275\u0275NgOnChangesFeature]}),Ke})();function Ge(Ke,kt){const U=Object.keys(Ke);for(let fe of U){const{previousValue:Pe,currentValue:Je}=Ke[fe];if(!kt.isDateInstance(Pe)||!kt.isDateInstance(Je))return!0;if(!kt.sameDate(Pe,Je))return!0}return!1}const It={provide:ee.NG_VALUE_ACCESSOR,useExisting:(0,o.forwardRef)(()=>an),multi:!0},zt={provide:ee.NG_VALIDATORS,useExisting:(0,o.forwardRef)(()=>an),multi:!0};let an=(()=>{class Ke extends ge{set matDatepicker(U){U&&(this._datepicker=U,this._closedSubscription=U.closedStream.subscribe(()=>this._onTouched()),this._registerModel(U.registerInput(this)))}get min(){return this._min}set min(U){const fe=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(U));this._dateAdapter.sameDate(fe,this._min)||(this._min=fe,this._validatorOnChange())}get max(){return this._max}set max(U){const fe=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(U));this._dateAdapter.sameDate(fe,this._max)||(this._max=fe,this._validatorOnChange())}get dateFilter(){return this._dateFilter}set dateFilter(U){const fe=this._matchesFilter(this.value);this._dateFilter=U,this._matchesFilter(this.value)!==fe&&this._validatorOnChange()}constructor(U,fe,Pe,Je){super(U,fe,Pe),this._formField=Je,this._closedSubscription=tt.w0.EMPTY,this._validator=ee.Validators.compose(super._getValidators())}getConnectedOverlayOrigin(){return this._formField?this._formField.getConnectedOverlayOrigin():this._elementRef}getOverlayLabelId(){return this._formField?this._formField.getLabelId():this._elementRef.nativeElement.getAttribute("aria-labelledby")}getThemePalette(){return this._formField?this._formField.color:void 0}getStartValue(){return this.value}ngOnDestroy(){super.ngOnDestroy(),this._closedSubscription.unsubscribe()}_openPopup(){this._datepicker&&this._datepicker.open()}_getValueFromModel(U){return U}_assignValueToModel(U){this._model&&this._model.updateSelection(U,this)}_getMinDate(){return this._min}_getMaxDate(){return this._max}_getDateFilter(){return this._dateFilter}_shouldHandleChangeEvent(U){return U.source!==this}}return Ke.\u0275fac=function(U){return new(U||Ke)(o.\u0275\u0275directiveInject(o.ElementRef),o.\u0275\u0275directiveInject(a.DateAdapter,8),o.\u0275\u0275directiveInject(a.MAT_DATE_FORMATS,8),o.\u0275\u0275directiveInject(ae.G_,8))},Ke.\u0275dir=o.\u0275\u0275defineDirective({type:Ke,selectors:[["input","matDatepicker",""]],hostAttrs:[1,"mat-datepicker-input"],hostVars:6,hostBindings:function(U,fe){1&U&&o.\u0275\u0275listener("input",function(Je){return fe._onInput(Je.target.value)})("change",function(){return fe._onChange()})("blur",function(){return fe._onBlur()})("keydown",function(Je){return fe._onKeydown(Je)}),2&U&&(o.\u0275\u0275hostProperty("disabled",fe.disabled),o.\u0275\u0275attribute("aria-haspopup",fe._datepicker?"dialog":null)("aria-owns",(null==fe._datepicker?null:fe._datepicker.opened)&&fe._datepicker.id||null)("min",fe.min?fe._dateAdapter.toIso8601(fe.min):null)("max",fe.max?fe._dateAdapter.toIso8601(fe.max):null)("data-mat-calendar",fe._datepicker?fe._datepicker.id:null))},inputs:{matDatepicker:"matDatepicker",min:"min",max:"max",dateFilter:["matDatepickerFilter","dateFilter"]},exportAs:["matDatepickerInput"],features:[o.\u0275\u0275ProvidersFeature([It,zt,{provide:ie.Jk,useExisting:Ke}]),o.\u0275\u0275InheritDefinitionFeature]}),Ke})(),gn=(()=>{class Ke{}return Ke.\u0275fac=function(U){return new(U||Ke)},Ke.\u0275dir=o.\u0275\u0275defineDirective({type:Ke,selectors:[["","matDatepickerToggleIcon",""]]}),Ke})(),pn=(()=>{class Ke{get disabled(){return void 0===this._disabled&&this.datepicker?this.datepicker.disabled:!!this._disabled}set disabled(U){this._disabled=(0,J.Ig)(U)}constructor(U,fe,Pe){this._intl=U,this._changeDetectorRef=fe,this._stateChanges=tt.w0.EMPTY;const Je=Number(Pe);this.tabIndex=Je||0===Je?Je:null}ngOnChanges(U){U.datepicker&&this._watchStateChanges()}ngOnDestroy(){this._stateChanges.unsubscribe()}ngAfterContentInit(){this._watchStateChanges()}_open(U){this.datepicker&&!this.disabled&&(this.datepicker.open(),U.stopPropagation())}_watchStateChanges(){const U=this.datepicker?this.datepicker.stateChanges:(0,bt.of)(),fe=this.datepicker&&this.datepicker.datepickerInput?this.datepicker.datepickerInput.stateChanges:(0,bt.of)(),Pe=this.datepicker?(0,St.T)(this.datepicker.openedStream,this.datepicker.closedStream):(0,bt.of)();this._stateChanges.unsubscribe(),this._stateChanges=(0,St.T)(this._intl.changes,U,fe,Pe).subscribe(()=>this._changeDetectorRef.markForCheck())}}return Ke.\u0275fac=function(U){return new(U||Ke)(o.\u0275\u0275directiveInject(re),o.\u0275\u0275directiveInject(o.ChangeDetectorRef),o.\u0275\u0275injectAttribute("tabindex"))},Ke.\u0275cmp=o.\u0275\u0275defineComponent({type:Ke,selectors:[["mat-datepicker-toggle"]],contentQueries:function(U,fe,Pe){if(1&U&&o.\u0275\u0275contentQuery(Pe,gn,5),2&U){let Je;o.\u0275\u0275queryRefresh(Je=o.\u0275\u0275loadQuery())&&(fe._customIcon=Je.first)}},viewQuery:function(U,fe){if(1&U&&o.\u0275\u0275viewQuery(We,5),2&U){let Pe;o.\u0275\u0275queryRefresh(Pe=o.\u0275\u0275loadQuery())&&(fe._button=Pe.first)}},hostAttrs:[1,"mat-datepicker-toggle"],hostVars:8,hostBindings:function(U,fe){1&U&&o.\u0275\u0275listener("click",function(Je){return fe._open(Je)}),2&U&&(o.\u0275\u0275attribute("tabindex",null)("data-mat-calendar",fe.datepicker?fe.datepicker.id:null),o.\u0275\u0275classProp("mat-datepicker-toggle-active",fe.datepicker&&fe.datepicker.opened)("mat-accent",fe.datepicker&&"accent"===fe.datepicker.color)("mat-warn",fe.datepicker&&"warn"===fe.datepicker.color))},inputs:{datepicker:["for","datepicker"],tabIndex:"tabIndex",ariaLabel:["aria-label","ariaLabel"],disabled:"disabled",disableRipple:"disableRipple"},exportAs:["matDatepickerToggle"],features:[o.\u0275\u0275NgOnChangesFeature],ngContentSelectors:at,decls:4,vars:6,consts:[["mat-icon-button","","type","button",3,"disabled","disableRipple"],["button",""],["class","mat-datepicker-toggle-default-icon","viewBox","0 0 24 24","width","24px","height","24px","fill","currentColor","focusable","false","aria-hidden","true",4,"ngIf"],["viewBox","0 0 24 24","width","24px","height","24px","fill","currentColor","focusable","false","aria-hidden","true",1,"mat-datepicker-toggle-default-icon"],["d","M19 3h-1V1h-2v2H8V1H6v2H5c-1.11 0-1.99.9-1.99 2L3 19c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H5V8h14v11zM7 10h5v5H7z"]],template:function(U,fe){1&U&&(o.\u0275\u0275projectionDef(we),o.\u0275\u0275elementStart(0,"button",0,1),o.\u0275\u0275template(2,ve,2,0,"svg",2),o.\u0275\u0275projection(3),o.\u0275\u0275elementEnd()),2&U&&(o.\u0275\u0275property("disabled",fe.disabled)("disableRipple",fe.disableRipple),o.\u0275\u0275attribute("aria-haspopup",fe.datepicker?"dialog":null)("aria-label",fe.ariaLabel||fe._intl.openCalendarLabel)("tabindex",fe.disabled?-1:fe.tabIndex),o.\u0275\u0275advance(2),o.\u0275\u0275property("ngIf",!fe._customIcon))},dependencies:[b.NgIf,Xe],styles:[".mat-datepicker-toggle{pointer-events:auto}.cdk-high-contrast-active .mat-datepicker-toggle-default-icon{color:CanvasText}"],encapsulation:2,changeDetection:0}),Ke})();function Jn(Ke){return vi(Ke,!0)}function Nn(Ke){return Ke.nodeType===Node.ELEMENT_NODE}function vi(Ke,kt){if(Nn(Ke)&&kt){const fe=(Ke.getAttribute?.("aria-labelledby")?.split(/\s+/g)||[]).reduce((Pe,Je)=>{const Gt=document.getElementById(Je);return Gt&&Pe.push(Gt),Pe},[]);if(fe.length)return fe.map(Pe=>vi(Pe,!1)).join(" ")}if(Nn(Ke)){const U=Ke.getAttribute("aria-label")?.trim();if(U)return U}if(function kn(Ke){return"INPUT"===Ke.nodeName}(Ke)||function Un(Ke){return"TEXTAREA"===Ke.nodeName}(Ke)){if(Ke.labels?.length)return Array.from(Ke.labels).map(Pe=>vi(Pe,!1)).join(" ");const U=Ke.getAttribute("placeholder")?.trim();if(U)return U;const fe=Ke.getAttribute("title")?.trim();if(fe)return fe}return(Ke.textContent||"").replace(/\s+/g," ").trim()}const $i=new o.InjectionToken("MAT_DATE_RANGE_INPUT_PARENT"),fn=(0,a.mixinErrorState)((()=>{class Ke extends ge{constructor(U,fe,Pe,Je,Gt,Pn,Gi,Vi){super(fe,Gi,Vi),this._rangeInput=U,this._elementRef=fe,this._defaultErrorStateMatcher=Pe,this._injector=Je,this._parentForm=Gt,this._parentFormGroup=Pn,this._dir=(0,o.inject)(nt.Is,{optional:!0})}ngOnInit(){const U=this._injector.get(ee.NgControl,null,{optional:!0,self:!0});U&&(this.ngControl=U)}ngDoCheck(){this.ngControl&&this.updateErrorState()}isEmpty(){return 0===this._elementRef.nativeElement.value.length}_getPlaceholder(){return this._elementRef.nativeElement.placeholder}focus(){this._elementRef.nativeElement.focus()}getMirrorValue(){const U=this._elementRef.nativeElement,fe=U.value;return fe.length>0?fe:U.placeholder}_onInput(U){super._onInput(U),this._rangeInput._handleChildValueChange()}_openPopup(){this._rangeInput._openDatepicker()}_getMinDate(){return this._rangeInput.min}_getMaxDate(){return this._rangeInput.max}_getDateFilter(){return this._rangeInput.dateFilter}_parentDisabled(){return this._rangeInput._groupDisabled}_shouldHandleChangeEvent({source:U}){return U!==this._rangeInput._startInput&&U!==this._rangeInput._endInput}_assignValueProgrammatically(U){super._assignValueProgrammatically(U),(this===this._rangeInput._startInput?this._rangeInput._endInput:this._rangeInput._startInput)?._validatorOnChange()}_getAccessibleName(){return Jn(this._elementRef.nativeElement)}}return Ke.\u0275fac=function(U){return new(U||Ke)(o.\u0275\u0275directiveInject($i),o.\u0275\u0275directiveInject(o.ElementRef),o.\u0275\u0275directiveInject(a.ErrorStateMatcher),o.\u0275\u0275directiveInject(o.Injector),o.\u0275\u0275directiveInject(ee.NgForm,8),o.\u0275\u0275directiveInject(ee.FormGroupDirective,8),o.\u0275\u0275directiveInject(a.DateAdapter,8),o.\u0275\u0275directiveInject(a.MAT_DATE_FORMATS,8))},Ke.\u0275dir=o.\u0275\u0275defineDirective({type:Ke,features:[o.\u0275\u0275InheritDefinitionFeature]}),Ke})());let yn=(()=>{class Ke extends fn{constructor(U,fe,Pe,Je,Gt,Pn,Gi,Vi){super(U,fe,Pe,Je,Gt,Pn,Gi,Vi),this._startValidator=rr=>{const or=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(rr.value)),Zi=this._model?this._model.selection.end:null;return!or||!Zi||this._dateAdapter.compareDate(or,Zi)<=0?null:{matStartDateInvalid:{end:Zi,actual:or}}},this._validator=ee.Validators.compose([...super._getValidators(),this._startValidator])}_getValueFromModel(U){return U.start}_shouldHandleChangeEvent(U){return!(!super._shouldHandleChangeEvent(U)||(U.oldValue?.start?U.selection.start&&!this._dateAdapter.compareDate(U.oldValue.start,U.selection.start):!U.selection.start))}_assignValueToModel(U){if(this._model){const fe=new Sn(U,this._model.selection.end);this._model.updateSelection(fe,this)}}_formatValue(U){super._formatValue(U),this._rangeInput._handleChildValueChange()}_onKeydown(U){const fe=this._rangeInput._endInput,Pe=this._elementRef.nativeElement,Je="rtl"!==this._dir?.value;(U.keyCode===xt.SV&&Je||U.keyCode===xt.oh&&!Je)&&Pe.selectionStart===Pe.value.length&&Pe.selectionEnd===Pe.value.length?(U.preventDefault(),fe._elementRef.nativeElement.setSelectionRange(0,0),fe.focus()):super._onKeydown(U)}}return Ke.\u0275fac=function(U){return new(U||Ke)(o.\u0275\u0275directiveInject($i),o.\u0275\u0275directiveInject(o.ElementRef),o.\u0275\u0275directiveInject(a.ErrorStateMatcher),o.\u0275\u0275directiveInject(o.Injector),o.\u0275\u0275directiveInject(ee.NgForm,8),o.\u0275\u0275directiveInject(ee.FormGroupDirective,8),o.\u0275\u0275directiveInject(a.DateAdapter,8),o.\u0275\u0275directiveInject(a.MAT_DATE_FORMATS,8))},Ke.\u0275dir=o.\u0275\u0275defineDirective({type:Ke,selectors:[["input","matStartDate",""]],hostAttrs:["type","text",1,"mat-start-date","mat-date-range-input-inner"],hostVars:5,hostBindings:function(U,fe){1&U&&o.\u0275\u0275listener("input",function(Je){return fe._onInput(Je.target.value)})("change",function(){return fe._onChange()})("keydown",function(Je){return fe._onKeydown(Je)})("blur",function(){return fe._onBlur()}),2&U&&(o.\u0275\u0275hostProperty("disabled",fe.disabled),o.\u0275\u0275attribute("aria-haspopup",fe._rangeInput.rangePicker?"dialog":null)("aria-owns",(null==fe._rangeInput.rangePicker?null:fe._rangeInput.rangePicker.opened)&&fe._rangeInput.rangePicker.id||null)("min",fe._getMinDate()?fe._dateAdapter.toIso8601(fe._getMinDate()):null)("max",fe._getMaxDate()?fe._dateAdapter.toIso8601(fe._getMaxDate()):null))},inputs:{errorStateMatcher:"errorStateMatcher"},outputs:{dateChange:"dateChange",dateInput:"dateInput"},features:[o.\u0275\u0275ProvidersFeature([{provide:ee.NG_VALUE_ACCESSOR,useExisting:Ke,multi:!0},{provide:ee.NG_VALIDATORS,useExisting:Ke,multi:!0}]),o.\u0275\u0275InheritDefinitionFeature]}),Ke})(),rn=(()=>{class Ke extends fn{constructor(U,fe,Pe,Je,Gt,Pn,Gi,Vi){super(U,fe,Pe,Je,Gt,Pn,Gi,Vi),this._endValidator=rr=>{const or=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(rr.value)),Zi=this._model?this._model.selection.start:null;return!or||!Zi||this._dateAdapter.compareDate(or,Zi)>=0?null:{matEndDateInvalid:{start:Zi,actual:or}}},this._validator=ee.Validators.compose([...super._getValidators(),this._endValidator])}_getValueFromModel(U){return U.end}_shouldHandleChangeEvent(U){return!(!super._shouldHandleChangeEvent(U)||(U.oldValue?.end?U.selection.end&&!this._dateAdapter.compareDate(U.oldValue.end,U.selection.end):!U.selection.end))}_assignValueToModel(U){if(this._model){const fe=new Sn(this._model.selection.start,U);this._model.updateSelection(fe,this)}}_onKeydown(U){const fe=this._rangeInput._startInput,Pe=this._elementRef.nativeElement,Je="rtl"!==this._dir?.value;if(U.keyCode!==xt.ZH||Pe.value)if((U.keyCode===xt.oh&&Je||U.keyCode===xt.SV&&!Je)&&0===Pe.selectionStart&&0===Pe.selectionEnd){U.preventDefault();const Gt=fe._elementRef.nativeElement.value.length;fe._elementRef.nativeElement.setSelectionRange(Gt,Gt),fe.focus()}else super._onKeydown(U);else fe.focus()}}return Ke.\u0275fac=function(U){return new(U||Ke)(o.\u0275\u0275directiveInject($i),o.\u0275\u0275directiveInject(o.ElementRef),o.\u0275\u0275directiveInject(a.ErrorStateMatcher),o.\u0275\u0275directiveInject(o.Injector),o.\u0275\u0275directiveInject(ee.NgForm,8),o.\u0275\u0275directiveInject(ee.FormGroupDirective,8),o.\u0275\u0275directiveInject(a.DateAdapter,8),o.\u0275\u0275directiveInject(a.MAT_DATE_FORMATS,8))},Ke.\u0275dir=o.\u0275\u0275defineDirective({type:Ke,selectors:[["input","matEndDate",""]],hostAttrs:["type","text",1,"mat-end-date","mat-date-range-input-inner"],hostVars:5,hostBindings:function(U,fe){1&U&&o.\u0275\u0275listener("input",function(Je){return fe._onInput(Je.target.value)})("change",function(){return fe._onChange()})("keydown",function(Je){return fe._onKeydown(Je)})("blur",function(){return fe._onBlur()}),2&U&&(o.\u0275\u0275hostProperty("disabled",fe.disabled),o.\u0275\u0275attribute("aria-haspopup",fe._rangeInput.rangePicker?"dialog":null)("aria-owns",(null==fe._rangeInput.rangePicker?null:fe._rangeInput.rangePicker.opened)&&fe._rangeInput.rangePicker.id||null)("min",fe._getMinDate()?fe._dateAdapter.toIso8601(fe._getMinDate()):null)("max",fe._getMaxDate()?fe._dateAdapter.toIso8601(fe._getMaxDate()):null))},inputs:{errorStateMatcher:"errorStateMatcher"},outputs:{dateChange:"dateChange",dateInput:"dateInput"},features:[o.\u0275\u0275ProvidersFeature([{provide:ee.NG_VALUE_ACCESSOR,useExisting:Ke,multi:!0},{provide:ee.NG_VALIDATORS,useExisting:Ke,multi:!0}]),o.\u0275\u0275InheritDefinitionFeature]}),Ke})(),xn=0,ti=(()=>{class Ke{get value(){return this._model?this._model.selection:null}get shouldLabelFloat(){return this.focused||!this.empty}get placeholder(){const U=this._startInput?._getPlaceholder()||"",fe=this._endInput?._getPlaceholder()||"";return U||fe?`${U} ${this.separator} ${fe}`:""}get rangePicker(){return this._rangePicker}set rangePicker(U){U&&(this._model=U.registerInput(this),this._rangePicker=U,this._closedSubscription.unsubscribe(),this._closedSubscription=U.closedStream.subscribe(()=>{this._startInput?._onTouched(),this._endInput?._onTouched()}),this._registerModel(this._model))}get required(){return this._required??(this._isTargetRequired(this)||this._isTargetRequired(this._startInput)||this._isTargetRequired(this._endInput))??!1}set required(U){this._required=(0,J.Ig)(U)}get dateFilter(){return this._dateFilter}set dateFilter(U){const fe=this._startInput,Pe=this._endInput,Je=fe&&fe._matchesFilter(fe.value),Gt=Pe&&Pe._matchesFilter(fe.value);this._dateFilter=U,fe&&fe._matchesFilter(fe.value)!==Je&&fe._validatorOnChange(),Pe&&Pe._matchesFilter(Pe.value)!==Gt&&Pe._validatorOnChange()}get min(){return this._min}set min(U){const fe=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(U));this._dateAdapter.sameDate(fe,this._min)||(this._min=fe,this._revalidate())}get max(){return this._max}set max(U){const fe=this._dateAdapter.getValidDateOrNull(this._dateAdapter.deserialize(U));this._dateAdapter.sameDate(fe,this._max)||(this._max=fe,this._revalidate())}get disabled(){return this._startInput&&this._endInput?this._startInput.disabled&&this._endInput.disabled:this._groupDisabled}set disabled(U){const fe=(0,J.Ig)(U);fe!==this._groupDisabled&&(this._groupDisabled=fe,this.stateChanges.next(void 0))}get errorState(){return!(!this._startInput||!this._endInput)&&(this._startInput.errorState||this._endInput.errorState)}get empty(){const U=!!this._startInput&&this._startInput.isEmpty(),fe=!!this._endInput&&this._endInput.isEmpty();return U&&fe}constructor(U,fe,Pe,Je,Gt){this._changeDetectorRef=U,this._elementRef=fe,this._dateAdapter=Je,this._formField=Gt,this._closedSubscription=tt.w0.EMPTY,this.id="mat-date-range-input-"+xn++,this.focused=!1,this.controlType="mat-date-range-input",this._groupDisabled=!1,this._ariaDescribedBy=null,this.separator="\u2013",this.comparisonStart=null,this.comparisonEnd=null,this.stateChanges=new Mt.x,Gt?._elementRef.nativeElement.classList.contains("mat-mdc-form-field")&&fe.nativeElement.classList.add("mat-mdc-input-element","mat-mdc-form-field-input-control","mdc-text-field__input"),this.ngControl=Pe}setDescribedByIds(U){this._ariaDescribedBy=U.length?U.join(" "):null}onContainerClick(){!this.focused&&!this.disabled&&(this._model&&this._model.selection.start?this._endInput.focus():this._startInput.focus())}ngAfterContentInit(){this._model&&this._registerModel(this._model),(0,St.T)(this._startInput.stateChanges,this._endInput.stateChanges).subscribe(()=>{this.stateChanges.next(void 0)})}ngOnChanges(U){Ge(U,this._dateAdapter)&&this.stateChanges.next(void 0)}ngOnDestroy(){this._closedSubscription.unsubscribe(),this.stateChanges.complete()}getStartValue(){return this.value?this.value.start:null}getThemePalette(){return this._formField?this._formField.color:void 0}getConnectedOverlayOrigin(){return this._formField?this._formField.getConnectedOverlayOrigin():this._elementRef}getOverlayLabelId(){return this._formField?this._formField.getLabelId():null}_getInputMirrorValue(U){const fe="start"===U?this._startInput:this._endInput;return fe?fe.getMirrorValue():""}_shouldHidePlaceholders(){return!!this._startInput&&!this._startInput.isEmpty()}_handleChildValueChange(){this.stateChanges.next(void 0),this._changeDetectorRef.markForCheck()}_openDatepicker(){this._rangePicker&&this._rangePicker.open()}_shouldHideSeparator(){return(!this._formField||this._formField.getLabelId()&&!this._formField._shouldLabelFloat())&&this.empty}_getAriaLabelledby(){const U=this._formField;return U&&U._hasFloatingLabel()?U._labelId:null}_getStartDateAccessibleName(){return this._startInput._getAccessibleName()}_getEndDateAccessibleName(){return this._endInput._getAccessibleName()}_updateFocus(U){this.focused=null!==U,this.stateChanges.next()}_revalidate(){this._startInput&&this._startInput._validatorOnChange(),this._endInput&&this._endInput._validatorOnChange()}_registerModel(U){this._startInput&&this._startInput._registerModel(U),this._endInput&&this._endInput._registerModel(U)}_isTargetRequired(U){return U?.ngControl?.control?.hasValidator(ee.Validators.required)}}return Ke.\u0275fac=function(U){return new(U||Ke)(o.\u0275\u0275directiveInject(o.ChangeDetectorRef),o.\u0275\u0275directiveInject(o.ElementRef),o.\u0275\u0275directiveInject(ee.ControlContainer,10),o.\u0275\u0275directiveInject(a.DateAdapter,8),o.\u0275\u0275directiveInject(ae.G_,8))},Ke.\u0275cmp=o.\u0275\u0275defineComponent({type:Ke,selectors:[["mat-date-range-input"]],contentQueries:function(U,fe,Pe){if(1&U&&(o.\u0275\u0275contentQuery(Pe,yn,5),o.\u0275\u0275contentQuery(Pe,rn,5)),2&U){let Je;o.\u0275\u0275queryRefresh(Je=o.\u0275\u0275loadQuery())&&(fe._startInput=Je.first),o.\u0275\u0275queryRefresh(Je=o.\u0275\u0275loadQuery())&&(fe._endInput=Je.first)}},hostAttrs:["role","group",1,"mat-date-range-input"],hostVars:8,hostBindings:function(U,fe){2&U&&(o.\u0275\u0275attribute("id",fe.id)("aria-labelledby",fe._getAriaLabelledby())("aria-describedby",fe._ariaDescribedBy)("data-mat-calendar",fe.rangePicker?fe.rangePicker.id:null),o.\u0275\u0275classProp("mat-date-range-input-hide-placeholders",fe._shouldHidePlaceholders())("mat-date-range-input-required",fe.required))},inputs:{rangePicker:"rangePicker",required:"required",dateFilter:"dateFilter",min:"min",max:"max",disabled:"disabled",separator:"separator",comparisonStart:"comparisonStart",comparisonEnd:"comparisonEnd"},exportAs:["matDateRangeInput"],features:[o.\u0275\u0275ProvidersFeature([{provide:ae.Eo,useExisting:Ke},{provide:$i,useExisting:Ke}]),o.\u0275\u0275NgOnChangesFeature],ngContentSelectors:je,decls:11,vars:5,consts:[["cdkMonitorSubtreeFocus","",1,"mat-date-range-input-container",3,"cdkFocusChange"],[1,"mat-date-range-input-wrapper"],["aria-hidden","true",1,"mat-date-range-input-mirror"],[1,"mat-date-range-input-separator"],[1,"mat-date-range-input-wrapper","mat-date-range-input-end-wrapper"]],template:function(U,fe){1&U&&(o.\u0275\u0275projectionDef(De),o.\u0275\u0275elementStart(0,"div",0),o.\u0275\u0275listener("cdkFocusChange",function(Je){return fe._updateFocus(Je)}),o.\u0275\u0275elementStart(1,"div",1),o.\u0275\u0275projection(2),o.\u0275\u0275elementStart(3,"span",2),o.\u0275\u0275text(4),o.\u0275\u0275elementEnd()(),o.\u0275\u0275elementStart(5,"span",3),o.\u0275\u0275text(6),o.\u0275\u0275elementEnd(),o.\u0275\u0275elementStart(7,"div",4),o.\u0275\u0275projection(8,1),o.\u0275\u0275elementStart(9,"span",2),o.\u0275\u0275text(10),o.\u0275\u0275elementEnd()()()),2&U&&(o.\u0275\u0275advance(4),o.\u0275\u0275textInterpolate(fe._getInputMirrorValue("start")),o.\u0275\u0275advance(1),o.\u0275\u0275classProp("mat-date-range-input-separator-hidden",fe._shouldHideSeparator()),o.\u0275\u0275advance(1),o.\u0275\u0275textInterpolate(fe.separator),o.\u0275\u0275advance(4),o.\u0275\u0275textInterpolate(fe._getInputMirrorValue("end")))},dependencies:[n.kH],styles:[".mat-date-range-input{display:block;width:100%}.mat-date-range-input-container{display:flex;align-items:center}.mat-date-range-input-separator{transition:opacity 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1);margin:0 4px}._mat-animation-noopable .mat-date-range-input-separator{transition:none}.mat-date-range-input-separator-hidden{-webkit-user-select:none;user-select:none;opacity:0;transition:none}.mat-date-range-input-wrapper{position:relative;overflow:hidden;max-width:calc(50% - 4px)}.mat-date-range-input-end-wrapper{flex-grow:1}.mat-date-range-input-inner{position:absolute;top:0;left:0;font:inherit;background:rgba(0,0,0,0);color:currentColor;border:none;outline:none;padding:0;margin:0;vertical-align:bottom;text-align:inherit;-webkit-appearance:none;width:100%;height:100%}.mat-date-range-input-inner:-moz-ui-invalid{box-shadow:none}.mat-date-range-input-inner::placeholder{transition:color 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-date-range-input-inner::-moz-placeholder{transition:color 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-date-range-input-inner::-webkit-input-placeholder{transition:color 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-date-range-input-inner:-ms-input-placeholder{transition:color 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-form-field-hide-placeholder .mat-date-range-input-inner::placeholder,.mat-date-range-input-hide-placeholders .mat-date-range-input-inner::placeholder{-webkit-user-select:none;user-select:none;color:rgba(0,0,0,0) !important;-webkit-text-fill-color:rgba(0,0,0,0);transition:none}.cdk-high-contrast-active .mat-form-field-hide-placeholder .mat-date-range-input-inner::placeholder,.cdk-high-contrast-active .mat-date-range-input-hide-placeholders .mat-date-range-input-inner::placeholder{opacity:0}.mat-form-field-hide-placeholder .mat-date-range-input-inner::-moz-placeholder,.mat-date-range-input-hide-placeholders .mat-date-range-input-inner::-moz-placeholder{-webkit-user-select:none;user-select:none;color:rgba(0,0,0,0) !important;-webkit-text-fill-color:rgba(0,0,0,0);transition:none}.cdk-high-contrast-active .mat-form-field-hide-placeholder .mat-date-range-input-inner::-moz-placeholder,.cdk-high-contrast-active .mat-date-range-input-hide-placeholders .mat-date-range-input-inner::-moz-placeholder{opacity:0}.mat-form-field-hide-placeholder .mat-date-range-input-inner::-webkit-input-placeholder,.mat-date-range-input-hide-placeholders .mat-date-range-input-inner::-webkit-input-placeholder{-webkit-user-select:none;user-select:none;color:rgba(0,0,0,0) !important;-webkit-text-fill-color:rgba(0,0,0,0);transition:none}.cdk-high-contrast-active .mat-form-field-hide-placeholder .mat-date-range-input-inner::-webkit-input-placeholder,.cdk-high-contrast-active .mat-date-range-input-hide-placeholders .mat-date-range-input-inner::-webkit-input-placeholder{opacity:0}.mat-form-field-hide-placeholder .mat-date-range-input-inner:-ms-input-placeholder,.mat-date-range-input-hide-placeholders .mat-date-range-input-inner:-ms-input-placeholder{-webkit-user-select:none;user-select:none;color:rgba(0,0,0,0) !important;-webkit-text-fill-color:rgba(0,0,0,0);transition:none}.cdk-high-contrast-active .mat-form-field-hide-placeholder .mat-date-range-input-inner:-ms-input-placeholder,.cdk-high-contrast-active .mat-date-range-input-hide-placeholders .mat-date-range-input-inner:-ms-input-placeholder{opacity:0}._mat-animation-noopable .mat-date-range-input-inner::placeholder{transition:none}._mat-animation-noopable .mat-date-range-input-inner::-moz-placeholder{transition:none}._mat-animation-noopable .mat-date-range-input-inner::-webkit-input-placeholder{transition:none}._mat-animation-noopable .mat-date-range-input-inner:-ms-input-placeholder{transition:none}.mat-date-range-input-mirror{-webkit-user-select:none;user-select:none;visibility:hidden;white-space:nowrap;display:inline-block;min-width:2px}.mat-mdc-form-field-type-mat-date-range-input .mat-mdc-form-field-infix{width:200px}"],encapsulation:2,changeDetection:0}),Ke})(),Ti=(()=>{class Ke extends Ae{_forwardContentValues(U){super._forwardContentValues(U);const fe=this.datepickerInput;fe&&(U.comparisonStart=fe.comparisonStart,U.comparisonEnd=fe.comparisonEnd,U.startDateAccessibleName=fe._getStartDateAccessibleName(),U.endDateAccessibleName=fe._getEndDateAccessibleName())}}return Ke.\u0275fac=function(){let kt;return function(fe){return(kt||(kt=o.\u0275\u0275getInheritedFactory(Ke)))(fe||Ke)}}(),Ke.\u0275cmp=o.\u0275\u0275defineComponent({type:Ke,selectors:[["mat-date-range-picker"]],exportAs:["matDateRangePicker"],features:[o.\u0275\u0275ProvidersFeature([mt,hn,{provide:Ae,useExisting:Ke}]),o.\u0275\u0275InheritDefinitionFeature],decls:0,vars:0,template:function(U,fe){},encapsulation:2,changeDetection:0}),Ke})(),zi=(()=>{class Ke{constructor(U){this._datepicker=U}_applySelection(){this._datepicker._applyPendingSelection(),this._datepicker.close()}}return Ke.\u0275fac=function(U){return new(U||Ke)(o.\u0275\u0275directiveInject(Ae))},Ke.\u0275dir=o.\u0275\u0275defineDirective({type:Ke,selectors:[["","matDatepickerApply",""],["","matDateRangePickerApply",""]],hostBindings:function(U,fe){1&U&&o.\u0275\u0275listener("click",function(){return fe._applySelection()})}}),Ke})(),xi=(()=>{class Ke{constructor(U){this._datepicker=U}}return Ke.\u0275fac=function(U){return new(U||Ke)(o.\u0275\u0275directiveInject(Ae))},Ke.\u0275dir=o.\u0275\u0275defineDirective({type:Ke,selectors:[["","matDatepickerCancel",""],["","matDateRangePickerCancel",""]],hostBindings:function(U,fe){1&U&&o.\u0275\u0275listener("click",function(){return fe._datepicker.close()})}}),Ke})(),_r=(()=>{class Ke{constructor(U,fe){this._datepicker=U,this._viewContainerRef=fe}ngAfterViewInit(){this._portal=new C.UE(this._template,this._viewContainerRef),this._datepicker.registerActions(this._portal)}ngOnDestroy(){this._datepicker.removeActions(this._portal),this._portal&&this._portal.isAttached&&this._portal?.detach()}}return Ke.\u0275fac=function(U){return new(U||Ke)(o.\u0275\u0275directiveInject(Ae),o.\u0275\u0275directiveInject(o.ViewContainerRef))},Ke.\u0275cmp=o.\u0275\u0275defineComponent({type:Ke,selectors:[["mat-datepicker-actions"],["mat-date-range-picker-actions"]],viewQuery:function(U,fe){if(1&U&&o.\u0275\u0275viewQuery(o.TemplateRef,5),2&U){let Pe;o.\u0275\u0275queryRefresh(Pe=o.\u0275\u0275loadQuery())&&(fe._template=Pe.first)}},ngContentSelectors:ze,decls:1,vars:0,consts:[[1,"mat-datepicker-actions"]],template:function(U,fe){1&U&&(o.\u0275\u0275projectionDef(),o.\u0275\u0275template(0,ke,2,0,"ng-template"))},styles:[".mat-datepicker-actions{display:flex;justify-content:flex-end;align-items:center;padding:0 8px 8px 8px}.mat-datepicker-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:8px}[dir=rtl] .mat-datepicker-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:0;margin-right:8px}"],encapsulation:2,changeDetection:0}),Ke})(),gi=(()=>{class Ke{}return Ke.\u0275fac=function(U){return new(U||Ke)},Ke.\u0275mod=o.\u0275\u0275defineNgModule({type:Ke}),Ke.\u0275inj=o.\u0275\u0275defineInjector({providers:[re,Pi],imports:[b.CommonModule,$e,p.U8,n.rt,C.eL,a.MatCommonModule,st.ZD]}),Ke})()},6385:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{MatDivider:()=>b,MatDividerModule:()=>o});var n=g(5879),p=g(2495),C=g(3680);let b=(()=>{class v{constructor(){this._vertical=!1,this._inset=!1}get vertical(){return this._vertical}set vertical(c){this._vertical=(0,p.Ig)(c)}get inset(){return this._inset}set inset(c){this._inset=(0,p.Ig)(c)}}return v.\u0275fac=function(c){return new(c||v)},v.\u0275cmp=n.\u0275\u0275defineComponent({type:v,selectors:[["mat-divider"]],hostAttrs:["role","separator",1,"mat-divider"],hostVars:7,hostBindings:function(c,s){2&c&&(n.\u0275\u0275attribute("aria-orientation",s.vertical?"vertical":"horizontal"),n.\u0275\u0275classProp("mat-divider-vertical",s.vertical)("mat-divider-horizontal",!s.vertical)("mat-divider-inset",s.inset))},inputs:{vertical:"vertical",inset:"inset"},decls:0,vars:0,template:function(c,s){},styles:[".mat-divider{--mat-divider-width:1px;display:block;margin:0;border-top-style:solid;border-top-color:var(--mat-divider-color);border-top-width:var(--mat-divider-width)}.mat-divider.mat-divider-vertical{border-top:0;border-right-style:solid;border-right-color:var(--mat-divider-color);border-right-width:var(--mat-divider-width)}.mat-divider.mat-divider-inset{margin-left:80px}[dir=rtl] .mat-divider.mat-divider-inset{margin-left:auto;margin-right:80px}"],encapsulation:2,changeDetection:0}),v})(),o=(()=>{class v{}return v.\u0275fac=function(c){return new(c||v)},v.\u0275mod=n.\u0275\u0275defineNgModule({type:v}),v.\u0275inj=n.\u0275\u0275defineInjector({imports:[C.MatCommonModule,C.MatCommonModule]}),v})()},1043:(Se,X,g)=>{"use strict";g.d(X,{Bi:()=>St,Eo:()=>Mt,G_:()=>xt,Lv:()=>bt,Px:()=>ne,TN:()=>st,UO:()=>tt,Ve:()=>$,ab:()=>k});var n=g(5879),p=g(6825);const k=new n.InjectionToken("MatError"),ne=new n.InjectionToken("MatPrefix"),$=new n.InjectionToken("MatSuffix"),st={transitionMessages:(0,p.X$)("transitionMessages",[(0,p.SB)("enter",(0,p.oB)({opacity:1,transform:"translateY(0%)"})),(0,p.eR)("void => enter",[(0,p.oB)({opacity:0,transform:"translateY(-5px)"}),(0,p.jt)("300ms cubic-bezier(0.55, 0, 0.55, 0.2)")])])};let Mt=(()=>{class ie{}return ie.\u0275fac=function(Te){return new(Te||ie)},ie.\u0275dir=n.\u0275\u0275defineDirective({type:ie}),ie})();function tt(){return Error("Placeholder attribute and child element were both specified.")}function St(ie){return Error(`A hint was already declared for 'align="${ie}"'.`)}function bt(){return Error("mat-form-field must contain a MatFormFieldControl.")}const xt=new n.InjectionToken("MatFormField")},617:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{ICON_REGISTRY_PROVIDER:()=>N,ICON_REGISTRY_PROVIDER_FACTORY:()=>j,MAT_ICON_DEFAULT_OPTIONS:()=>se,MAT_ICON_LOCATION:()=>ne,MAT_ICON_LOCATION_FACTORY:()=>me,MatIcon:()=>ue,MatIconModule:()=>Me,MatIconRegistry:()=>R,getMatIconFailedToSanitizeLiteralError:()=>E,getMatIconFailedToSanitizeUrlError:()=>O,getMatIconNameNotFoundError:()=>A,getMatIconNoHttpProviderError:()=>T});var n=g(5879),p=g(3680),C=g(2495),b=g(6814),o=g(2096),v=g(8504),a=g(9315),c=g(7394),s=g(9397),l=g(7398),d=g(6306),r=g(4716),u=g(3020),h=g(8180),m=g(9862),_=g(6593);const M=["*"];let x;function L(Oe){return function w(){if(void 0===x&&(x=null,typeof window<"u")){const Oe=window;void 0!==Oe.trustedTypes&&(x=Oe.trustedTypes.createPolicy("angular#components",{createHTML:Xe=>Xe}))}return x}()?.createHTML(Oe)||Oe}function A(Oe){return Error(`Unable to find icon with the name "${Oe}"`)}function T(){return Error("Could not find HttpClient provider for use with Angular Material icons. Please include the HttpClientModule from @angular/common/http in your app imports.")}function O(Oe){return Error(`The URL provided to MatIconRegistry was not trusted as a resource URL via Angular's DomSanitizer. Attempted URL was "${Oe}".`)}function E(Oe){return Error(`The literal provided to MatIconRegistry was not trusted as safe HTML by Angular's DomSanitizer. Attempted literal was "${Oe}".`)}class D{constructor(Xe,Be,$e){this.url=Xe,this.svgText=Be,this.options=$e}}let R=(()=>{class Oe{constructor(Be,$e,st,Mt){this._httpClient=Be,this._sanitizer=$e,this._errorHandler=Mt,this._svgIconConfigs=new Map,this._iconSetConfigs=new Map,this._cachedIconsByUrl=new Map,this._inProgressUrlFetches=new Map,this._fontCssClassesByAlias=new Map,this._resolvers=[],this._defaultFontSetClass=["material-icons","mat-ligature-font"],this._document=st}addSvgIcon(Be,$e,st){return this.addSvgIconInNamespace("",Be,$e,st)}addSvgIconLiteral(Be,$e,st){return this.addSvgIconLiteralInNamespace("",Be,$e,st)}addSvgIconInNamespace(Be,$e,st,Mt){return this._addSvgIconConfig(Be,$e,new D(st,null,Mt))}addSvgIconResolver(Be){return this._resolvers.push(Be),this}addSvgIconLiteralInNamespace(Be,$e,st,Mt){const tt=this._sanitizer.sanitize(n.SecurityContext.HTML,st);if(!tt)throw E(st);const St=L(tt);return this._addSvgIconConfig(Be,$e,new D("",St,Mt))}addSvgIconSet(Be,$e){return this.addSvgIconSetInNamespace("",Be,$e)}addSvgIconSetLiteral(Be,$e){return this.addSvgIconSetLiteralInNamespace("",Be,$e)}addSvgIconSetInNamespace(Be,$e,st){return this._addSvgIconSetConfig(Be,new D($e,null,st))}addSvgIconSetLiteralInNamespace(Be,$e,st){const Mt=this._sanitizer.sanitize(n.SecurityContext.HTML,$e);if(!Mt)throw E($e);const tt=L(Mt);return this._addSvgIconSetConfig(Be,new D("",tt,st))}registerFontClassAlias(Be,$e=Be){return this._fontCssClassesByAlias.set(Be,$e),this}classNameForFontAlias(Be){return this._fontCssClassesByAlias.get(Be)||Be}setDefaultFontSetClass(...Be){return this._defaultFontSetClass=Be,this}getDefaultFontSetClass(){return this._defaultFontSetClass}getSvgIconFromUrl(Be){const $e=this._sanitizer.sanitize(n.SecurityContext.RESOURCE_URL,Be);if(!$e)throw O(Be);const st=this._cachedIconsByUrl.get($e);return st?(0,o.of)(S(st)):this._loadSvgIconFromConfig(new D(Be,null)).pipe((0,s.b)(Mt=>this._cachedIconsByUrl.set($e,Mt)),(0,l.U)(Mt=>S(Mt)))}getNamedSvgIcon(Be,$e=""){const st=k($e,Be);let Mt=this._svgIconConfigs.get(st);if(Mt)return this._getSvgFromConfig(Mt);if(Mt=this._getIconConfigFromResolvers($e,Be),Mt)return this._svgIconConfigs.set(st,Mt),this._getSvgFromConfig(Mt);const tt=this._iconSetConfigs.get($e);return tt?this._getSvgFromIconSetConfigs(Be,tt):(0,v._)(A(st))}ngOnDestroy(){this._resolvers=[],this._svgIconConfigs.clear(),this._iconSetConfigs.clear(),this._cachedIconsByUrl.clear()}_getSvgFromConfig(Be){return Be.svgText?(0,o.of)(S(this._svgElementFromConfig(Be))):this._loadSvgIconFromConfig(Be).pipe((0,l.U)($e=>S($e)))}_getSvgFromIconSetConfigs(Be,$e){const st=this._extractIconWithNameFromAnySet(Be,$e);if(st)return(0,o.of)(st);const Mt=$e.filter(tt=>!tt.svgText).map(tt=>this._loadSvgIconSetFromConfig(tt).pipe((0,d.K)(St=>{const xt=`Loading icon set URL: ${this._sanitizer.sanitize(n.SecurityContext.RESOURCE_URL,tt.url)} failed: ${St.message}`;return this._errorHandler.handleError(new Error(xt)),(0,o.of)(null)})));return(0,a.D)(Mt).pipe((0,l.U)(()=>{const tt=this._extractIconWithNameFromAnySet(Be,$e);if(!tt)throw A(Be);return tt}))}_extractIconWithNameFromAnySet(Be,$e){for(let st=$e.length-1;st>=0;st--){const Mt=$e[st];if(Mt.svgText&&Mt.svgText.toString().indexOf(Be)>-1){const tt=this._svgElementFromConfig(Mt),St=this._extractSvgIconFromSet(tt,Be,Mt.options);if(St)return St}}return null}_loadSvgIconFromConfig(Be){return this._fetchIcon(Be).pipe((0,s.b)($e=>Be.svgText=$e),(0,l.U)(()=>this._svgElementFromConfig(Be)))}_loadSvgIconSetFromConfig(Be){return Be.svgText?(0,o.of)(null):this._fetchIcon(Be).pipe((0,s.b)($e=>Be.svgText=$e))}_extractSvgIconFromSet(Be,$e,st){const Mt=Be.querySelector(`[id="${$e}"]`);if(!Mt)return null;const tt=Mt.cloneNode(!0);if(tt.removeAttribute("id"),"svg"===tt.nodeName.toLowerCase())return this._setSvgAttributes(tt,st);if("symbol"===tt.nodeName.toLowerCase())return this._setSvgAttributes(this._toSvgElement(tt),st);const St=this._svgElementFromString(L(""));return St.appendChild(tt),this._setSvgAttributes(St,st)}_svgElementFromString(Be){const $e=this._document.createElement("DIV");$e.innerHTML=Be;const st=$e.querySelector("svg");if(!st)throw Error(" tag not found");return st}_toSvgElement(Be){const $e=this._svgElementFromString(L("")),st=Be.attributes;for(let Mt=0;MtL(xt)),(0,r.x)(()=>this._inProgressUrlFetches.delete(tt)),(0,u.B)());return this._inProgressUrlFetches.set(tt,bt),bt}_addSvgIconConfig(Be,$e,st){return this._svgIconConfigs.set(k(Be,$e),st),this}_addSvgIconSetConfig(Be,$e){const st=this._iconSetConfigs.get(Be);return st?st.push($e):this._iconSetConfigs.set(Be,[$e]),this}_svgElementFromConfig(Be){if(!Be.svgElement){const $e=this._svgElementFromString(Be.svgText);this._setSvgAttributes($e,Be.options),Be.svgElement=$e}return Be.svgElement}_getIconConfigFromResolvers(Be,$e){for(let st=0;stXe?Xe.pathname+Xe.search:""}}const $=["clip-path","color-profile","src","cursor","fill","filter","marker","marker-start","marker-mid","marker-end","mask","stroke"],q=$.map(Oe=>`[${Oe}]`).join(", "),Q=/^url\(['"]?#(.*?)['"]?\)$/;let ue=(()=>{class Oe extends Y{get inline(){return this._inline}set inline(Be){this._inline=(0,C.Ig)(Be)}get svgIcon(){return this._svgIcon}set svgIcon(Be){Be!==this._svgIcon&&(Be?this._updateSvgIcon(Be):this._svgIcon&&this._clearSvgElement(),this._svgIcon=Be)}get fontSet(){return this._fontSet}set fontSet(Be){const $e=this._cleanupFontValue(Be);$e!==this._fontSet&&(this._fontSet=$e,this._updateFontIconClasses())}get fontIcon(){return this._fontIcon}set fontIcon(Be){const $e=this._cleanupFontValue(Be);$e!==this._fontIcon&&(this._fontIcon=$e,this._updateFontIconClasses())}constructor(Be,$e,st,Mt,tt,St){super(Be),this._iconRegistry=$e,this._location=Mt,this._errorHandler=tt,this._inline=!1,this._previousFontSetClass=[],this._currentIconFetch=c.w0.EMPTY,St&&(St.color&&(this.color=this.defaultColor=St.color),St.fontSet&&(this.fontSet=St.fontSet)),st||Be.nativeElement.setAttribute("aria-hidden","true")}_splitIconName(Be){if(!Be)return["",""];const $e=Be.split(":");switch($e.length){case 1:return["",$e[0]];case 2:return $e;default:throw Error(`Invalid icon name: "${Be}"`)}}ngOnInit(){this._updateFontIconClasses()}ngAfterViewChecked(){const Be=this._elementsWithExternalReferences;if(Be&&Be.size){const $e=this._location.getPathname();$e!==this._previousPath&&(this._previousPath=$e,this._prependPathToReferences($e))}}ngOnDestroy(){this._currentIconFetch.unsubscribe(),this._elementsWithExternalReferences&&this._elementsWithExternalReferences.clear()}_usingFontIcon(){return!this.svgIcon}_setSvgElement(Be){this._clearSvgElement();const $e=this._location.getPathname();this._previousPath=$e,this._cacheChildrenWithExternalReferences(Be),this._prependPathToReferences($e),this._elementRef.nativeElement.appendChild(Be)}_clearSvgElement(){const Be=this._elementRef.nativeElement;let $e=Be.childNodes.length;for(this._elementsWithExternalReferences&&this._elementsWithExternalReferences.clear();$e--;){const st=Be.childNodes[$e];(1!==st.nodeType||"svg"===st.nodeName.toLowerCase())&&st.remove()}}_updateFontIconClasses(){if(!this._usingFontIcon())return;const Be=this._elementRef.nativeElement,$e=(this.fontSet?this._iconRegistry.classNameForFontAlias(this.fontSet).split(/ +/):this._iconRegistry.getDefaultFontSetClass()).filter(st=>st.length>0);this._previousFontSetClass.forEach(st=>Be.classList.remove(st)),$e.forEach(st=>Be.classList.add(st)),this._previousFontSetClass=$e,this.fontIcon!==this._previousFontIconClass&&!$e.includes("mat-ligature-font")&&(this._previousFontIconClass&&Be.classList.remove(this._previousFontIconClass),this.fontIcon&&Be.classList.add(this.fontIcon),this._previousFontIconClass=this.fontIcon)}_cleanupFontValue(Be){return"string"==typeof Be?Be.trim().split(" ")[0]:Be}_prependPathToReferences(Be){const $e=this._elementsWithExternalReferences;$e&&$e.forEach((st,Mt)=>{st.forEach(tt=>{Mt.setAttribute(tt.name,`url('${Be}#${tt.value}')`)})})}_cacheChildrenWithExternalReferences(Be){const $e=Be.querySelectorAll(q),st=this._elementsWithExternalReferences=this._elementsWithExternalReferences||new Map;for(let Mt=0;Mt<$e.length;Mt++)$.forEach(tt=>{const St=$e[Mt],bt=St.getAttribute(tt),xt=bt?bt.match(Q):null;if(xt){let nt=st.get(St);nt||(nt=[],st.set(St,nt)),nt.push({name:tt,value:xt[1]})}})}_updateSvgIcon(Be){if(this._svgNamespace=null,this._svgName=null,this._currentIconFetch.unsubscribe(),Be){const[$e,st]=this._splitIconName(Be);$e&&(this._svgNamespace=$e),st&&(this._svgName=st),this._currentIconFetch=this._iconRegistry.getNamedSvgIcon(st,$e).pipe((0,h.q)(1)).subscribe(Mt=>this._setSvgElement(Mt),Mt=>{this._errorHandler.handleError(new Error(`Error retrieving icon ${$e}:${st}! ${Mt.message}`))})}}}return Oe.\u0275fac=function(Be){return new(Be||Oe)(n.\u0275\u0275directiveInject(n.ElementRef),n.\u0275\u0275directiveInject(R),n.\u0275\u0275injectAttribute("aria-hidden"),n.\u0275\u0275directiveInject(ne),n.\u0275\u0275directiveInject(n.ErrorHandler),n.\u0275\u0275directiveInject(se,8))},Oe.\u0275cmp=n.\u0275\u0275defineComponent({type:Oe,selectors:[["mat-icon"]],hostAttrs:["role","img",1,"mat-icon","notranslate"],hostVars:8,hostBindings:function(Be,$e){2&Be&&(n.\u0275\u0275attribute("data-mat-icon-type",$e._usingFontIcon()?"font":"svg")("data-mat-icon-name",$e._svgName||$e.fontIcon)("data-mat-icon-namespace",$e._svgNamespace||$e.fontSet)("fontIcon",$e._usingFontIcon()?$e.fontIcon:null),n.\u0275\u0275classProp("mat-icon-inline",$e.inline)("mat-icon-no-color","primary"!==$e.color&&"accent"!==$e.color&&"warn"!==$e.color))},inputs:{color:"color",inline:"inline",svgIcon:"svgIcon",fontSet:"fontSet",fontIcon:"fontIcon"},exportAs:["matIcon"],features:[n.\u0275\u0275InheritDefinitionFeature],ngContentSelectors:M,decls:1,vars:0,template:function(Be,$e){1&Be&&(n.\u0275\u0275projectionDef(),n.\u0275\u0275projection(0))},styles:[".mat-icon{-webkit-user-select:none;user-select:none;background-repeat:no-repeat;display:inline-block;fill:currentColor;height:24px;width:24px;overflow:hidden}.mat-icon.mat-icon-inline{font-size:inherit;height:inherit;line-height:inherit;width:inherit}.mat-icon.mat-ligature-font[fontIcon]::before{content:attr(fontIcon)}[dir=rtl] .mat-icon-rtl-mirror{transform:scale(-1, 1)}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mat-icon,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-icon{display:block}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mat-icon-button .mat-icon,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-icon-button .mat-icon{margin:auto}"],encapsulation:2,changeDetection:0}),Oe})(),Me=(()=>{class Oe{}return Oe.\u0275fac=function(Be){return new(Be||Oe)},Oe.\u0275mod=n.\u0275\u0275defineNgModule({type:Oe}),Oe.\u0275inj=n.\u0275\u0275defineInjector({imports:[p.MatCommonModule,p.MatCommonModule]}),Oe})()},4516:(Se,X,g)=>{"use strict";g.d(X,{Jk:()=>l,Nt:()=>h,b7:()=>s});var n=g(2495),p=g(2831),C=g(6263),b=g(5879),o=g(6223),v=g(3680),a=g(1043),c=g(8645);function s(_){return Error(`Input type "${_}" isn't supported by matInput.`)}const l=new b.InjectionToken("MAT_INPUT_VALUE_ACCESSOR"),d=["button","checkbox","file","hidden","image","radio","range","reset","submit"];let r=0;const u=(0,v.mixinErrorState)(class{constructor(_,M,x,w){this._defaultErrorStateMatcher=_,this._parentForm=M,this._parentFormGroup=x,this.ngControl=w,this.stateChanges=new c.x}});let h=(()=>{class _ extends u{get disabled(){return this._disabled}set disabled(x){this._disabled=(0,n.Ig)(x),this.focused&&(this.focused=!1,this.stateChanges.next())}get id(){return this._id}set id(x){this._id=x||this._uid}get required(){return this._required??this.ngControl?.control?.hasValidator(o.Validators.required)??!1}set required(x){this._required=(0,n.Ig)(x)}get type(){return this._type}set type(x){this._type=x||"text",this._validateType(),!this._isTextarea&&(0,p.qK)().has(this._type)&&(this._elementRef.nativeElement.type=this._type)}get value(){return this._inputValueAccessor.value}set value(x){x!==this.value&&(this._inputValueAccessor.value=x,this.stateChanges.next())}get readonly(){return this._readonly}set readonly(x){this._readonly=(0,n.Ig)(x)}constructor(x,w,L,A,T,O,E,D,R,j){super(O,A,T,L),this._elementRef=x,this._platform=w,this._autofillMonitor=D,this._formField=j,this._uid="mat-input-"+r++,this.focused=!1,this.stateChanges=new c.x,this.controlType="mat-input",this.autofilled=!1,this._disabled=!1,this._type="text",this._readonly=!1,this._neverEmptyInputTypes=["date","datetime","datetime-local","month","time","week"].filter(k=>(0,p.qK)().has(k)),this._iOSKeyupListener=k=>{const F=k.target;!F.value&&0===F.selectionStart&&0===F.selectionEnd&&(F.setSelectionRange(1,1),F.setSelectionRange(0,0))};const N=this._elementRef.nativeElement,S=N.nodeName.toLowerCase();this._inputValueAccessor=E||N,this._previousNativeValue=this.value,this.id=this.id,w.IOS&&R.runOutsideAngular(()=>{x.nativeElement.addEventListener("keyup",this._iOSKeyupListener)}),this._isServer=!this._platform.isBrowser,this._isNativeSelect="select"===S,this._isTextarea="textarea"===S,this._isInFormField=!!j,this._isNativeSelect&&(this.controlType=N.multiple?"mat-native-select-multiple":"mat-native-select")}ngAfterViewInit(){this._platform.isBrowser&&this._autofillMonitor.monitor(this._elementRef.nativeElement).subscribe(x=>{this.autofilled=x.isAutofilled,this.stateChanges.next()})}ngOnChanges(){this.stateChanges.next()}ngOnDestroy(){this.stateChanges.complete(),this._platform.isBrowser&&this._autofillMonitor.stopMonitoring(this._elementRef.nativeElement),this._platform.IOS&&this._elementRef.nativeElement.removeEventListener("keyup",this._iOSKeyupListener)}ngDoCheck(){this.ngControl&&(this.updateErrorState(),null!==this.ngControl.disabled&&this.ngControl.disabled!==this.disabled&&(this.disabled=this.ngControl.disabled,this.stateChanges.next())),this._dirtyCheckNativeValue(),this._dirtyCheckPlaceholder()}focus(x){this._elementRef.nativeElement.focus(x)}_focusChanged(x){x!==this.focused&&(this.focused=x,this.stateChanges.next())}_onInput(){}_dirtyCheckNativeValue(){const x=this._elementRef.nativeElement.value;this._previousNativeValue!==x&&(this._previousNativeValue=x,this.stateChanges.next())}_dirtyCheckPlaceholder(){const x=this._getPlaceholder();if(x!==this._previousPlaceholder){const w=this._elementRef.nativeElement;this._previousPlaceholder=x,x?w.setAttribute("placeholder",x):w.removeAttribute("placeholder")}}_getPlaceholder(){return this.placeholder||null}_validateType(){d.indexOf(this._type)}_isNeverEmpty(){return this._neverEmptyInputTypes.indexOf(this._type)>-1}_isBadInput(){let x=this._elementRef.nativeElement.validity;return x&&x.badInput}get empty(){return!(this._isNeverEmpty()||this._elementRef.nativeElement.value||this._isBadInput()||this.autofilled)}get shouldLabelFloat(){if(this._isNativeSelect){const x=this._elementRef.nativeElement,w=x.options[0];return this.focused||x.multiple||!this.empty||!!(x.selectedIndex>-1&&w&&w.label)}return this.focused||!this.empty}setDescribedByIds(x){x.length?this._elementRef.nativeElement.setAttribute("aria-describedby",x.join(" ")):this._elementRef.nativeElement.removeAttribute("aria-describedby")}onContainerClick(){this.focused||this.focus()}_isInlineSelect(){const x=this._elementRef.nativeElement;return this._isNativeSelect&&(x.multiple||x.size>1)}}return _.\u0275fac=function(x){return new(x||_)(b.\u0275\u0275directiveInject(b.ElementRef),b.\u0275\u0275directiveInject(p.t4),b.\u0275\u0275directiveInject(o.NgControl,10),b.\u0275\u0275directiveInject(o.NgForm,8),b.\u0275\u0275directiveInject(o.FormGroupDirective,8),b.\u0275\u0275directiveInject(v.ErrorStateMatcher),b.\u0275\u0275directiveInject(l,10),b.\u0275\u0275directiveInject(C.Lq),b.\u0275\u0275directiveInject(b.NgZone),b.\u0275\u0275directiveInject(a.G_,8))},_.\u0275dir=b.\u0275\u0275defineDirective({type:_,selectors:[["input","matInput",""],["textarea","matInput",""],["select","matNativeControl",""],["input","matNativeControl",""],["textarea","matNativeControl",""]],hostAttrs:[1,"mat-mdc-input-element"],hostVars:18,hostBindings:function(x,w){1&x&&b.\u0275\u0275listener("focus",function(){return w._focusChanged(!0)})("blur",function(){return w._focusChanged(!1)})("input",function(){return w._onInput()}),2&x&&(b.\u0275\u0275hostProperty("id",w.id)("disabled",w.disabled)("required",w.required),b.\u0275\u0275attribute("name",w.name||null)("readonly",w.readonly&&!w._isNativeSelect||null)("aria-invalid",w.empty&&w.required?null:w.errorState)("aria-required",w.required)("id",w.id),b.\u0275\u0275classProp("mat-input-server",w._isServer)("mat-mdc-form-field-textarea-control",w._isInFormField&&w._isTextarea)("mat-mdc-form-field-input-control",w._isInFormField)("mdc-text-field__input",w._isInFormField)("mat-mdc-native-select-inline",w._isInlineSelect()))},inputs:{disabled:"disabled",id:"id",placeholder:"placeholder",name:"name",required:"required",type:"type",errorStateMatcher:"errorStateMatcher",userAriaDescribedBy:["aria-describedby","userAriaDescribedBy"],value:"value",readonly:"readonly"},exportAs:["matInput"],features:[b.\u0275\u0275ProvidersFeature([{provide:a.Eo,useExisting:_}]),b.\u0275\u0275InheritDefinitionFeature,b.\u0275\u0275NgOnChangesFeature]}),_})()},9241:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{MAT_LEGACY_AUTOCOMPLETE_DEFAULT_OPTIONS:()=>$,MAT_LEGACY_AUTOCOMPLETE_DEFAULT_OPTIONS_FACTORY:()=>q,MAT_LEGACY_AUTOCOMPLETE_SCROLL_STRATEGY:()=>$e,MAT_LEGACY_AUTOCOMPLETE_SCROLL_STRATEGY_FACTORY:()=>st,MAT_LEGACY_AUTOCOMPLETE_SCROLL_STRATEGY_FACTORY_PROVIDER:()=>Mt,MAT_LEGACY_AUTOCOMPLETE_VALUE_ACCESSOR:()=>vt,MatLegacyAutocomplete:()=>ot,MatLegacyAutocompleteModule:()=>Ce,MatLegacyAutocompleteOrigin:()=>J,MatLegacyAutocompleteSelectedEvent:()=>ne,MatLegacyAutocompleteTrigger:()=>rt,getMatLegacyAutocompleteMissingPanelError:()=>Be});var n=g(5879),p=g(3680),C=g(4678),b=g(6814),o=g(6672),v=g(9594),a=g(4300),c=g(2495),s=g(2831),d=(g(6825),g(7394)),r=g(8645),u=g(4911),h=g(3019),m=g(2096),_=g(2438),M=g(6028),x=g(8484),w=g(6223),L=g(1043),A=g(7921),T=g(4664),O=g(8180),E=g(2181),D=g(7398),R=g(9397),j=g(7547),N=g(9388);const S=["panel"];let se=0;class ne{constructor(ae,ie){this.source=ae,this.option=ie}}const me=(0,p.mixinDisableRipple)(class{}),$=new n.InjectionToken("mat-autocomplete-default-options",{providedIn:"root",factory:q});function q(){return{autoActiveFirstOption:!1,autoSelectActiveOption:!1,hideSingleSelectionIndicator:!1}}let Q=(()=>{class ee extends me{get isOpen(){return this._isOpen&&this.showPanel}_setColor(ie){this._color=ie,this._setThemeClasses(this._classList)}get autoActiveFirstOption(){return this._autoActiveFirstOption}set autoActiveFirstOption(ie){this._autoActiveFirstOption=(0,c.Ig)(ie)}get autoSelectActiveOption(){return this._autoSelectActiveOption}set autoSelectActiveOption(ie){this._autoSelectActiveOption=(0,c.Ig)(ie)}set classList(ie){this._classList=ie&&ie.length?(0,c.du)(ie).reduce((pe,Te)=>(pe[Te]=!0,pe),{}):{},this._setVisibilityClasses(this._classList),this._setThemeClasses(this._classList),this._elementRef.nativeElement.className=""}constructor(ie,pe,Te,ct){super(),this._changeDetectorRef=ie,this._elementRef=pe,this._defaults=Te,this._activeOptionChanges=d.w0.EMPTY,this.showPanel=!1,this._isOpen=!1,this.displayWith=null,this.optionSelected=new n.EventEmitter,this.opened=new n.EventEmitter,this.closed=new n.EventEmitter,this.optionActivated=new n.EventEmitter,this._classList={},this.id="mat-autocomplete-"+se++,this.inertGroups=ct?.SAFARI||!1,this._autoActiveFirstOption=!!Te.autoActiveFirstOption,this._autoSelectActiveOption=!!Te.autoSelectActiveOption}ngAfterContentInit(){this._keyManager=new a.s1(this.options).withWrap().skipPredicate(this._skipPredicate),this._activeOptionChanges=this._keyManager.change.subscribe(ie=>{this.isOpen&&this.optionActivated.emit({source:this,option:this.options.toArray()[ie]||null})}),this._setVisibility()}ngOnDestroy(){this._keyManager?.destroy(),this._activeOptionChanges.unsubscribe()}_setScrollTop(ie){this.panel&&(this.panel.nativeElement.scrollTop=ie)}_getScrollTop(){return this.panel?this.panel.nativeElement.scrollTop:0}_setVisibility(){this.showPanel=!!this.options.length,this._setVisibilityClasses(this._classList),this._changeDetectorRef.markForCheck()}_emitSelectEvent(ie){const pe=new ne(this,ie);this.optionSelected.emit(pe)}_getPanelAriaLabelledby(ie){return this.ariaLabel?null:this.ariaLabelledby?(ie?ie+" ":"")+this.ariaLabelledby:ie}_setVisibilityClasses(ie){ie[this._visibleClass]=this.showPanel,ie[this._hiddenClass]=!this.showPanel}_setThemeClasses(ie){ie["mat-primary"]="primary"===this._color,ie["mat-warn"]="warn"===this._color,ie["mat-accent"]="accent"===this._color}_skipPredicate(ie){return ie.disabled}}return ee.\u0275fac=function(ie){return new(ie||ee)(n.\u0275\u0275directiveInject(n.ChangeDetectorRef),n.\u0275\u0275directiveInject(n.ElementRef),n.\u0275\u0275directiveInject($),n.\u0275\u0275directiveInject(s.t4))},ee.\u0275dir=n.\u0275\u0275defineDirective({type:ee,viewQuery:function(ie,pe){if(1&ie&&(n.\u0275\u0275viewQuery(n.TemplateRef,7),n.\u0275\u0275viewQuery(S,5)),2&ie){let Te;n.\u0275\u0275queryRefresh(Te=n.\u0275\u0275loadQuery())&&(pe.template=Te.first),n.\u0275\u0275queryRefresh(Te=n.\u0275\u0275loadQuery())&&(pe.panel=Te.first)}},inputs:{ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],displayWith:"displayWith",autoActiveFirstOption:"autoActiveFirstOption",autoSelectActiveOption:"autoSelectActiveOption",panelWidth:"panelWidth",classList:["class","classList"]},outputs:{optionSelected:"optionSelected",opened:"opened",closed:"closed",optionActivated:"optionActivated"},features:[n.\u0275\u0275InheritDefinitionFeature]}),ee})(),Me=(()=>{class ee{constructor(ie){this.elementRef=ie}}return ee.\u0275fac=function(ie){return new(ie||ee)(n.\u0275\u0275directiveInject(n.ElementRef))},ee.\u0275dir=n.\u0275\u0275defineDirective({type:ee}),ee})();function Be(){return Error("Attempting to open an undefined instance of `mat-autocomplete`. Make sure that the id passed to the `matAutocomplete` is correct and that you're attempting to open it after the ngAfterContentInit hook.")}const $e=new n.InjectionToken("mat-autocomplete-scroll-strategy");function st(ee){return()=>ee.scrollStrategies.reposition()}const Mt={provide:$e,deps:[v.aV],useFactory:st};let tt=(()=>{class ee{get autocompleteDisabled(){return this._autocompleteDisabled}set autocompleteDisabled(ie){this._autocompleteDisabled=(0,c.Ig)(ie)}constructor(ie,pe,Te,ct,Lt,Dt,Kt,ze,yt,Bt,$t){this._element=ie,this._overlay=pe,this._viewContainerRef=Te,this._zone=ct,this._changeDetectorRef=Lt,this._dir=Kt,this._formField=ze,this._document=yt,this._viewportRuler=Bt,this._defaults=$t,this._componentDestroyed=!1,this._autocompleteDisabled=!1,this._manuallyFloatingLabel=!1,this._viewportSubscription=d.w0.EMPTY,this._canOpenOnNextFocus=!0,this._closeKeyEventStream=new r.x,this._windowBlurHandler=()=>{this._canOpenOnNextFocus=this._document.activeElement!==this._element.nativeElement||this.panelOpen},this._onChange=()=>{},this._onTouched=()=>{},this.position="auto",this.autocompleteAttribute="off",this._overlayAttached=!1,this.optionSelections=(0,u.P)(()=>{const Yt=this.autocomplete?this.autocomplete.options:null;return Yt?Yt.changes.pipe((0,A.O)(Yt),(0,T.w)(()=>(0,h.T)(...Yt.map(Ue=>Ue.onSelectionChange)))):this._zone.onStable.pipe((0,O.q)(1),(0,T.w)(()=>this.optionSelections))}),this._handlePanelKeydown=Yt=>{(Yt.keyCode===M.hY&&!(0,M.Vb)(Yt)||Yt.keyCode===M.LH&&(0,M.Vb)(Yt,"altKey"))&&(this._pendingAutoselectedOption&&(this._updateNativeInputValue(this._valueBeforeAutoSelection??""),this._pendingAutoselectedOption=null),this._closeKeyEventStream.next(),this._resetActiveItem(),Yt.stopPropagation(),Yt.preventDefault())},this._trackedModal=null,this._scrollStrategy=Dt}ngAfterViewInit(){const ie=this._getWindow();typeof ie<"u"&&this._zone.runOutsideAngular(()=>ie.addEventListener("blur",this._windowBlurHandler))}ngOnChanges(ie){ie.position&&this._positionStrategy&&(this._setStrategyPositions(this._positionStrategy),this.panelOpen&&this._overlayRef.updatePosition())}ngOnDestroy(){const ie=this._getWindow();typeof ie<"u"&&ie.removeEventListener("blur",this._windowBlurHandler),this._viewportSubscription.unsubscribe(),this._componentDestroyed=!0,this._destroyPanel(),this._closeKeyEventStream.complete(),this._clearFromModal()}get panelOpen(){return this._overlayAttached&&this.autocomplete.showPanel}openPanel(){this._attachOverlay(),this._floatLabel()}closePanel(){this._resetLabel(),this._overlayAttached&&(this.panelOpen&&this._zone.run(()=>{this.autocomplete.closed.emit()}),this.autocomplete._isOpen=this._overlayAttached=!1,this._pendingAutoselectedOption=null,this._overlayRef&&this._overlayRef.hasAttached()&&(this._overlayRef.detach(),this._closingActionsSubscription.unsubscribe()),this._updatePanelState(),this._componentDestroyed||this._changeDetectorRef.detectChanges())}updatePosition(){this._overlayAttached&&this._overlayRef.updatePosition()}get panelClosingActions(){return(0,h.T)(this.optionSelections,this.autocomplete._keyManager.tabOut.pipe((0,E.h)(()=>this._overlayAttached)),this._closeKeyEventStream,this._getOutsideClickStream(),this._overlayRef?this._overlayRef.detachments().pipe((0,E.h)(()=>this._overlayAttached)):(0,m.of)()).pipe((0,D.U)(ie=>ie instanceof p.MatOptionSelectionChange?ie:null))}get activeOption(){return this.autocomplete&&this.autocomplete._keyManager?this.autocomplete._keyManager.activeItem:null}_getOutsideClickStream(){return(0,h.T)((0,_.R)(this._document,"click"),(0,_.R)(this._document,"auxclick"),(0,_.R)(this._document,"touchend")).pipe((0,E.h)(ie=>{const pe=(0,s.sA)(ie),Te=this._formField?this._formField._elementRef.nativeElement:null,ct=this.connectedTo?this.connectedTo.elementRef.nativeElement:null;return this._overlayAttached&&pe!==this._element.nativeElement&&this._document.activeElement!==this._element.nativeElement&&(!Te||!Te.contains(pe))&&(!ct||!ct.contains(pe))&&!!this._overlayRef&&!this._overlayRef.overlayElement.contains(pe)}))}writeValue(ie){Promise.resolve(null).then(()=>this._assignOptionValue(ie))}registerOnChange(ie){this._onChange=ie}registerOnTouched(ie){this._onTouched=ie}setDisabledState(ie){this._element.nativeElement.disabled=ie}_handleKeydown(ie){const pe=ie.keyCode,Te=(0,M.Vb)(ie);if(pe===M.hY&&!Te&&ie.preventDefault(),this.activeOption&&pe===M.K5&&this.panelOpen&&!Te)this.activeOption._selectViaInteraction(),this._resetActiveItem(),ie.preventDefault();else if(this.autocomplete){const ct=this.autocomplete._keyManager.activeItem,Lt=pe===M.LH||pe===M.JH;pe===M.Mf||Lt&&!Te&&this.panelOpen?this.autocomplete._keyManager.onKeydown(ie):Lt&&this._canOpen()&&this.openPanel(),(Lt||this.autocomplete._keyManager.activeItem!==ct)&&(this._scrollToOption(this.autocomplete._keyManager.activeItemIndex||0),this.autocomplete.autoSelectActiveOption&&this.activeOption&&(this._pendingAutoselectedOption||(this._valueBeforeAutoSelection=this._element.nativeElement.value),this._pendingAutoselectedOption=this.activeOption,this._assignOptionValue(this.activeOption.value)))}}_handleInput(ie){let pe=ie.target,Te=pe.value;"number"===pe.type&&(Te=""==Te?null:parseFloat(Te)),this._previousValue!==Te&&(this._previousValue=Te,this._pendingAutoselectedOption=null,this._onChange(Te),Te||this._clearPreviousSelectedOption(null,!1),this._canOpen()&&this._document.activeElement===ie.target&&this.openPanel())}_handleFocus(){this._canOpenOnNextFocus?this._canOpen()&&(this._previousValue=this._element.nativeElement.value,this._attachOverlay(),this._floatLabel(!0)):this._canOpenOnNextFocus=!0}_handleClick(){this._canOpen()&&!this.panelOpen&&this.openPanel()}_floatLabel(ie=!1){this._formField&&"auto"===this._formField.floatLabel&&(ie?this._formField._animateAndLockLabel():this._formField.floatLabel="always",this._manuallyFloatingLabel=!0)}_resetLabel(){this._manuallyFloatingLabel&&(this._formField&&(this._formField.floatLabel="auto"),this._manuallyFloatingLabel=!1)}_subscribeToClosingActions(){const ie=this._zone.onStable.pipe((0,O.q)(1)),pe=this.autocomplete.options.changes.pipe((0,R.b)(()=>this._positionStrategy.reapplyLastPosition()),(0,j.g)(0));return(0,h.T)(ie,pe).pipe((0,T.w)(()=>(this._zone.run(()=>{const Te=this.panelOpen;this._resetActiveItem(),this._updatePanelState(),this._changeDetectorRef.detectChanges(),this.panelOpen&&this._overlayRef.updatePosition(),Te!==this.panelOpen&&(this.panelOpen?this.autocomplete.opened.emit():this.autocomplete.closed.emit())}),this.panelClosingActions)),(0,O.q)(1)).subscribe(Te=>this._setValueAndClose(Te))}_destroyPanel(){this._overlayRef&&(this.closePanel(),this._overlayRef.dispose(),this._overlayRef=null)}_assignOptionValue(ie){const pe=this.autocomplete&&this.autocomplete.displayWith?this.autocomplete.displayWith(ie):ie;this._updateNativeInputValue(pe??"")}_updateNativeInputValue(ie){this._formField?this._formField._control.value=ie:this._element.nativeElement.value=ie,this._previousValue=ie}_setValueAndClose(ie){const pe=ie?ie.source:this._pendingAutoselectedOption;pe&&(this._clearPreviousSelectedOption(pe),this._assignOptionValue(pe.value),this._onChange(pe.value),this.autocomplete._emitSelectEvent(pe),this._element.nativeElement.focus()),this.closePanel()}_clearPreviousSelectedOption(ie,pe){this.autocomplete&&this.autocomplete.options&&this.autocomplete.options.forEach(Te=>{Te!==ie&&Te.selected&&Te.deselect(pe)})}_attachOverlay(){let ie=this._overlayRef;ie?(this._positionStrategy.setOrigin(this._getConnectedElement()),ie.updateSize({width:this._getPanelWidth()})):(this._portal=new x.UE(this.autocomplete.template,this._viewContainerRef,{id:this._formField?.getLabelId()}),ie=this._overlay.create(this._getOverlayConfig()),this._overlayRef=ie,this._viewportSubscription=this._viewportRuler.change().subscribe(()=>{this.panelOpen&&ie&&ie.updateSize({width:this._getPanelWidth()})})),ie&&!ie.hasAttached()&&(ie.attach(this._portal),this._closingActionsSubscription=this._subscribeToClosingActions());const pe=this.panelOpen;this.autocomplete._isOpen=this._overlayAttached=!0,this.autocomplete._setColor(this._formField?.color),this._updatePanelState(),this._applyModalPanelOwnership(),this.panelOpen&&pe!==this.panelOpen&&this.autocomplete.opened.emit()}_updatePanelState(){if(this.autocomplete._setVisibility(),this.panelOpen){const ie=this._overlayRef;this._keydownSubscription||(this._keydownSubscription=ie.keydownEvents().subscribe(this._handlePanelKeydown)),this._outsideClickSubscription||(this._outsideClickSubscription=ie.outsidePointerEvents().subscribe())}else this._keydownSubscription?.unsubscribe(),this._outsideClickSubscription?.unsubscribe(),this._keydownSubscription=this._outsideClickSubscription=null}_getOverlayConfig(){return new v.X_({positionStrategy:this._getOverlayPosition(),scrollStrategy:this._scrollStrategy(),width:this._getPanelWidth(),direction:this._dir??void 0,panelClass:this._defaults?.overlayPanelClass})}_getOverlayPosition(){const ie=this._overlay.position().flexibleConnectedTo(this._getConnectedElement()).withFlexibleDimensions(!1).withPush(!1);return this._setStrategyPositions(ie),this._positionStrategy=ie,ie}_setStrategyPositions(ie){const pe=[{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"},{originX:"end",originY:"bottom",overlayX:"end",overlayY:"top"}],Te=this._aboveClass,ct=[{originX:"start",originY:"top",overlayX:"start",overlayY:"bottom",panelClass:Te},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom",panelClass:Te}];let Lt;Lt="above"===this.position?ct:"below"===this.position?pe:[...pe,...ct],ie.withPositions(Lt)}_getConnectedElement(){return this.connectedTo?this.connectedTo.elementRef:this._formField?this._formField.getConnectedOverlayOrigin():this._element}_getPanelWidth(){return this.autocomplete.panelWidth||this._getHostWidth()}_getHostWidth(){return this._getConnectedElement().nativeElement.getBoundingClientRect().width}_resetActiveItem(){const ie=this.autocomplete;if(ie.autoActiveFirstOption){let pe=-1;for(let Te=0;Te .cdk-overlay-container [aria-modal="true"]');if(!ie)return;const pe=this.autocomplete.id;this._trackedModal&&(0,a.iD)(this._trackedModal,"aria-owns",pe),(0,a.Zf)(ie,"aria-owns",pe),this._trackedModal=ie}_clearFromModal(){this._trackedModal&&((0,a.iD)(this._trackedModal,"aria-owns",this.autocomplete.id),this._trackedModal=null)}}return ee.\u0275fac=function(ie){return new(ie||ee)(n.\u0275\u0275directiveInject(n.ElementRef),n.\u0275\u0275directiveInject(v.aV),n.\u0275\u0275directiveInject(n.ViewContainerRef),n.\u0275\u0275directiveInject(n.NgZone),n.\u0275\u0275directiveInject(n.ChangeDetectorRef),n.\u0275\u0275directiveInject($e),n.\u0275\u0275directiveInject(N.Is,8),n.\u0275\u0275directiveInject(L.G_,9),n.\u0275\u0275directiveInject(b.DOCUMENT,8),n.\u0275\u0275directiveInject(o.rL),n.\u0275\u0275directiveInject($,8))},ee.\u0275dir=n.\u0275\u0275defineDirective({type:ee,inputs:{autocomplete:["matAutocomplete","autocomplete"],position:["matAutocompletePosition","position"],connectedTo:["matAutocompleteConnectedTo","connectedTo"],autocompleteAttribute:["autocomplete","autocompleteAttribute"],autocompleteDisabled:["matAutocompleteDisabled","autocompleteDisabled"]},features:[n.\u0275\u0275NgOnChangesFeature]}),ee})();function xt(ee,ae){if(1&ee&&(n.\u0275\u0275elementStart(0,"div",0,1),n.\u0275\u0275projection(2),n.\u0275\u0275elementEnd()),2&ee){const ie=ae.id,pe=n.\u0275\u0275nextContext();n.\u0275\u0275property("id",pe.id)("ngClass",pe._classList),n.\u0275\u0275attribute("aria-label",pe.ariaLabel||null)("aria-labelledby",pe._getPanelAriaLabelledby(ie))}}const nt=["*"];let ot=(()=>{class ee extends Q{constructor(){super(...arguments),this._visibleClass="mat-autocomplete-visible",this._hiddenClass="mat-autocomplete-hidden"}}return ee.\u0275fac=function(){let ae;return function(pe){return(ae||(ae=n.\u0275\u0275getInheritedFactory(ee)))(pe||ee)}}(),ee.\u0275cmp=n.\u0275\u0275defineComponent({type:ee,selectors:[["mat-autocomplete"]],contentQueries:function(ie,pe,Te){if(1&ie&&(n.\u0275\u0275contentQuery(Te,p.MAT_OPTGROUP,5),n.\u0275\u0275contentQuery(Te,C.MatLegacyOption,5)),2&ie){let ct;n.\u0275\u0275queryRefresh(ct=n.\u0275\u0275loadQuery())&&(pe.optionGroups=ct),n.\u0275\u0275queryRefresh(ct=n.\u0275\u0275loadQuery())&&(pe.options=ct)}},hostAttrs:["ngSkipHydration","",1,"mat-autocomplete"],inputs:{disableRipple:"disableRipple"},exportAs:["matAutocomplete"],features:[n.\u0275\u0275ProvidersFeature([{provide:p.MAT_OPTION_PARENT_COMPONENT,useExisting:ee}]),n.\u0275\u0275InheritDefinitionFeature],ngContentSelectors:nt,decls:1,vars:0,consts:[["role","listbox",1,"mat-autocomplete-panel",3,"id","ngClass"],["panel",""]],template:function(ie,pe){1&ie&&(n.\u0275\u0275projectionDef(),n.\u0275\u0275template(0,xt,3,4,"ng-template"))},dependencies:[b.NgClass],styles:[".mat-autocomplete-panel{min-width:112px;max-width:280px;overflow:auto;-webkit-overflow-scrolling:touch;visibility:hidden;max-width:none;max-height:256px;position:relative;width:100%;border-bottom-left-radius:4px;border-bottom-right-radius:4px}.mat-autocomplete-panel.mat-autocomplete-visible{visibility:visible}.mat-autocomplete-panel.mat-autocomplete-hidden{visibility:hidden}.mat-autocomplete-panel-above .mat-autocomplete-panel{border-radius:0;border-top-left-radius:4px;border-top-right-radius:4px}.mat-autocomplete-panel .mat-divider-horizontal{margin-top:-1px}.cdk-high-contrast-active .mat-autocomplete-panel{outline:solid 1px}mat-autocomplete{display:none}"],encapsulation:2,changeDetection:0}),ee})();const vt={provide:w.NG_VALUE_ACCESSOR,useExisting:(0,n.forwardRef)(()=>rt),multi:!0};let rt=(()=>{class ee extends tt{constructor(){super(...arguments),this._aboveClass="mat-autocomplete-panel-above"}}return ee.\u0275fac=function(){let ae;return function(pe){return(ae||(ae=n.\u0275\u0275getInheritedFactory(ee)))(pe||ee)}}(),ee.\u0275dir=n.\u0275\u0275defineDirective({type:ee,selectors:[["input","matAutocomplete",""],["textarea","matAutocomplete",""]],hostAttrs:[1,"mat-autocomplete-trigger"],hostVars:7,hostBindings:function(ie,pe){1&ie&&n.\u0275\u0275listener("focusin",function(){return pe._handleFocus()})("blur",function(){return pe._onTouched()})("input",function(ct){return pe._handleInput(ct)})("keydown",function(ct){return pe._handleKeydown(ct)})("click",function(){return pe._handleClick()}),2&ie&&n.\u0275\u0275attribute("autocomplete",pe.autocompleteAttribute)("role",pe.autocompleteDisabled?null:"combobox")("aria-autocomplete",pe.autocompleteDisabled?null:"list")("aria-activedescendant",pe.panelOpen&&pe.activeOption?pe.activeOption.id:null)("aria-expanded",pe.autocompleteDisabled?null:pe.panelOpen.toString())("aria-owns",pe.autocompleteDisabled||!pe.panelOpen||null==pe.autocomplete?null:pe.autocomplete.id)("aria-haspopup",pe.autocompleteDisabled?null:"listbox")},exportAs:["matAutocompleteTrigger"],features:[n.\u0275\u0275ProvidersFeature([vt]),n.\u0275\u0275InheritDefinitionFeature]}),ee})(),J=(()=>{class ee extends Me{}return ee.\u0275fac=function(){let ae;return function(pe){return(ae||(ae=n.\u0275\u0275getInheritedFactory(ee)))(pe||ee)}}(),ee.\u0275dir=n.\u0275\u0275defineDirective({type:ee,selectors:[["","matAutocompleteOrigin",""]],exportAs:["matAutocompleteOrigin"],features:[n.\u0275\u0275InheritDefinitionFeature]}),ee})(),Ce=(()=>{class ee{}return ee.\u0275fac=function(ie){return new(ie||ee)},ee.\u0275mod=n.\u0275\u0275defineNgModule({type:ee}),ee.\u0275inj=n.\u0275\u0275defineInjector({providers:[Mt],imports:[v.U8,C.MatLegacyOptionModule,p.MatCommonModule,b.CommonModule,o.ZD,C.MatLegacyOptionModule,p.MatCommonModule]}),ee})()},4505:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{MatLegacyAnchor:()=>d,MatLegacyButton:()=>l,MatLegacyButtonModule:()=>r});var n=g(5879),p=g(3680),C=g(4300);const b=["mat-button",""],o=["*"],c=["mat-button","mat-flat-button","mat-icon-button","mat-raised-button","mat-stroked-button","mat-mini-fab","mat-fab"],s=(0,p.mixinColor)((0,p.mixinDisabled)((0,p.mixinDisableRipple)(class{constructor(u){this._elementRef=u}})));let l=(()=>{class u extends s{constructor(m,_,M){super(m),this._focusMonitor=_,this._animationMode=M,this.isRoundButton=this._hasHostAttributes("mat-fab","mat-mini-fab"),this.isIconButton=this._hasHostAttributes("mat-icon-button");for(const x of c)this._hasHostAttributes(x)&&this._getHostElement().classList.add(x);m.nativeElement.classList.add("mat-button-base"),this.isRoundButton&&(this.color="accent")}ngAfterViewInit(){this._focusMonitor.monitor(this._elementRef,!0)}ngOnDestroy(){this._focusMonitor.stopMonitoring(this._elementRef)}focus(m,_){m?this._focusMonitor.focusVia(this._getHostElement(),m,_):this._getHostElement().focus(_)}_getHostElement(){return this._elementRef.nativeElement}_isRippleDisabled(){return this.disableRipple||this.disabled}_hasHostAttributes(...m){return m.some(_=>this._getHostElement().hasAttribute(_))}}return u.\u0275fac=function(m){return new(m||u)(n.\u0275\u0275directiveInject(n.ElementRef),n.\u0275\u0275directiveInject(C.tE),n.\u0275\u0275directiveInject(n.ANIMATION_MODULE_TYPE,8))},u.\u0275cmp=n.\u0275\u0275defineComponent({type:u,selectors:[["button","mat-button",""],["button","mat-raised-button",""],["button","mat-icon-button",""],["button","mat-fab",""],["button","mat-mini-fab",""],["button","mat-stroked-button",""],["button","mat-flat-button",""]],viewQuery:function(m,_){if(1&m&&n.\u0275\u0275viewQuery(p.MatRipple,5),2&m){let M;n.\u0275\u0275queryRefresh(M=n.\u0275\u0275loadQuery())&&(_.ripple=M.first)}},hostAttrs:[1,"mat-focus-indicator"],hostVars:5,hostBindings:function(m,_){2&m&&(n.\u0275\u0275attribute("disabled",_.disabled||null),n.\u0275\u0275classProp("_mat-animation-noopable","NoopAnimations"===_._animationMode)("mat-button-disabled",_.disabled))},inputs:{disabled:"disabled",disableRipple:"disableRipple",color:"color"},exportAs:["matButton"],features:[n.\u0275\u0275InheritDefinitionFeature],attrs:b,ngContentSelectors:o,decls:4,vars:5,consts:[[1,"mat-button-wrapper"],["matRipple","",1,"mat-button-ripple",3,"matRippleDisabled","matRippleCentered","matRippleTrigger"],[1,"mat-button-focus-overlay"]],template:function(m,_){1&m&&(n.\u0275\u0275projectionDef(),n.\u0275\u0275elementStart(0,"span",0),n.\u0275\u0275projection(1),n.\u0275\u0275elementEnd(),n.\u0275\u0275element(2,"span",1)(3,"span",2)),2&m&&(n.\u0275\u0275advance(2),n.\u0275\u0275classProp("mat-button-ripple-round",_.isRoundButton||_.isIconButton),n.\u0275\u0275property("matRippleDisabled",_._isRippleDisabled())("matRippleCentered",_.isIconButton)("matRippleTrigger",_._getHostElement()))},dependencies:[p.MatRipple],styles:[".mat-button .mat-button-focus-overlay,.mat-icon-button .mat-button-focus-overlay{opacity:0}.mat-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay,.mat-stroked-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay{opacity:.04}@media(hover: none){.mat-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay,.mat-stroked-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay{opacity:0}}.mat-button,.mat-icon-button,.mat-stroked-button,.mat-flat-button{box-sizing:border-box;position:relative;-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:rgba(0,0,0,0);display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible}.mat-button::-moz-focus-inner,.mat-icon-button::-moz-focus-inner,.mat-stroked-button::-moz-focus-inner,.mat-flat-button::-moz-focus-inner{border:0}.mat-button.mat-button-disabled,.mat-icon-button.mat-button-disabled,.mat-stroked-button.mat-button-disabled,.mat-flat-button.mat-button-disabled{cursor:default}.mat-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-button.cdk-program-focused .mat-button-focus-overlay,.mat-icon-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-icon-button.cdk-program-focused .mat-button-focus-overlay,.mat-stroked-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-stroked-button.cdk-program-focused .mat-button-focus-overlay,.mat-flat-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-flat-button.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-button::-moz-focus-inner,.mat-icon-button::-moz-focus-inner,.mat-stroked-button::-moz-focus-inner,.mat-flat-button::-moz-focus-inner{border:0}.mat-raised-button{box-sizing:border-box;position:relative;-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:rgba(0,0,0,0);display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible;transform:translate3d(0, 0, 0);transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-raised-button::-moz-focus-inner{border:0}.mat-raised-button.mat-button-disabled{cursor:default}.mat-raised-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-raised-button.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-raised-button::-moz-focus-inner{border:0}.mat-raised-button._mat-animation-noopable{transition:none !important;animation:none !important}.mat-stroked-button{border:1px solid currentColor;padding:0 15px;line-height:34px}.mat-stroked-button .mat-button-ripple.mat-ripple,.mat-stroked-button .mat-button-focus-overlay{top:-1px;left:-1px;right:-1px;bottom:-1px}.mat-fab{box-sizing:border-box;position:relative;-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:rgba(0,0,0,0);display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible;transform:translate3d(0, 0, 0);transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);min-width:0;border-radius:50%;width:56px;height:56px;padding:0;flex-shrink:0}.mat-fab::-moz-focus-inner{border:0}.mat-fab.mat-button-disabled{cursor:default}.mat-fab.cdk-keyboard-focused .mat-button-focus-overlay,.mat-fab.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-fab::-moz-focus-inner{border:0}.mat-fab._mat-animation-noopable{transition:none !important;animation:none !important}.mat-fab .mat-button-wrapper{padding:16px 0;display:inline-block;line-height:24px}.mat-mini-fab{box-sizing:border-box;position:relative;-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:rgba(0,0,0,0);display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible;transform:translate3d(0, 0, 0);transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);min-width:0;border-radius:50%;width:40px;height:40px;padding:0;flex-shrink:0}.mat-mini-fab::-moz-focus-inner{border:0}.mat-mini-fab.mat-button-disabled{cursor:default}.mat-mini-fab.cdk-keyboard-focused .mat-button-focus-overlay,.mat-mini-fab.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-mini-fab::-moz-focus-inner{border:0}.mat-mini-fab._mat-animation-noopable{transition:none !important;animation:none !important}.mat-mini-fab .mat-button-wrapper{padding:8px 0;display:inline-block;line-height:24px}.mat-icon-button{padding:0;min-width:0;width:40px;height:40px;flex-shrink:0;line-height:40px;border-radius:50%}.mat-icon-button i,.mat-icon-button .mat-icon{line-height:24px}.mat-button-ripple.mat-ripple,.mat-button-focus-overlay{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none;border-radius:inherit}.mat-button-ripple.mat-ripple:not(:empty){transform:translateZ(0)}.mat-button-focus-overlay{opacity:0;transition:opacity 200ms cubic-bezier(0.35, 0, 0.25, 1),background-color 200ms cubic-bezier(0.35, 0, 0.25, 1)}._mat-animation-noopable .mat-button-focus-overlay{transition:none}.mat-button-ripple-round{border-radius:50%;z-index:1}.mat-button .mat-button-wrapper>*,.mat-flat-button .mat-button-wrapper>*,.mat-stroked-button .mat-button-wrapper>*,.mat-raised-button .mat-button-wrapper>*,.mat-icon-button .mat-button-wrapper>*,.mat-fab .mat-button-wrapper>*,.mat-mini-fab .mat-button-wrapper>*{vertical-align:middle}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mat-icon-button,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-icon-button{display:inline-flex;justify-content:center;align-items:center;font-size:inherit;width:2.5em;height:2.5em}.mat-flat-button::before,.mat-raised-button::before,.mat-fab::before,.mat-mini-fab::before{margin:calc(calc(var(--mat-focus-indicator-border-width, 3px) + 2px) * -1)}.mat-stroked-button::before{margin:calc(calc(var(--mat-focus-indicator-border-width, 3px) + 3px) * -1)}.cdk-high-contrast-active .mat-button,.cdk-high-contrast-active .mat-flat-button,.cdk-high-contrast-active .mat-raised-button,.cdk-high-contrast-active .mat-icon-button,.cdk-high-contrast-active .mat-fab,.cdk-high-contrast-active .mat-mini-fab{outline:solid 1px}.mat-datepicker-toggle .mat-mdc-button-base{width:40px;height:40px;padding:8px 0}.mat-datepicker-actions .mat-button-base+.mat-button-base{margin-left:8px}[dir=rtl] .mat-datepicker-actions .mat-button-base+.mat-button-base{margin-left:0;margin-right:8px}"],encapsulation:2,changeDetection:0}),u})(),d=(()=>{class u extends l{constructor(m,_,M,x){super(_,m,M),this._ngZone=x,this._haltDisabledEvents=w=>{this.disabled&&(w.preventDefault(),w.stopImmediatePropagation())}}ngAfterViewInit(){super.ngAfterViewInit(),this._ngZone?this._ngZone.runOutsideAngular(()=>{this._elementRef.nativeElement.addEventListener("click",this._haltDisabledEvents)}):this._elementRef.nativeElement.addEventListener("click",this._haltDisabledEvents)}ngOnDestroy(){super.ngOnDestroy(),this._elementRef.nativeElement.removeEventListener("click",this._haltDisabledEvents)}}return u.\u0275fac=function(m){return new(m||u)(n.\u0275\u0275directiveInject(C.tE),n.\u0275\u0275directiveInject(n.ElementRef),n.\u0275\u0275directiveInject(n.ANIMATION_MODULE_TYPE,8),n.\u0275\u0275directiveInject(n.NgZone,8))},u.\u0275cmp=n.\u0275\u0275defineComponent({type:u,selectors:[["a","mat-button",""],["a","mat-raised-button",""],["a","mat-icon-button",""],["a","mat-fab",""],["a","mat-mini-fab",""],["a","mat-stroked-button",""],["a","mat-flat-button",""]],hostAttrs:[1,"mat-focus-indicator"],hostVars:7,hostBindings:function(m,_){2&m&&(n.\u0275\u0275attribute("tabindex",_.disabled?-1:_.tabIndex)("disabled",_.disabled||null)("aria-disabled",_.disabled.toString()),n.\u0275\u0275classProp("_mat-animation-noopable","NoopAnimations"===_._animationMode)("mat-button-disabled",_.disabled))},inputs:{disabled:"disabled",disableRipple:"disableRipple",color:"color",tabIndex:"tabIndex"},exportAs:["matButton","matAnchor"],features:[n.\u0275\u0275InheritDefinitionFeature],attrs:b,ngContentSelectors:o,decls:4,vars:5,consts:[[1,"mat-button-wrapper"],["matRipple","",1,"mat-button-ripple",3,"matRippleDisabled","matRippleCentered","matRippleTrigger"],[1,"mat-button-focus-overlay"]],template:function(m,_){1&m&&(n.\u0275\u0275projectionDef(),n.\u0275\u0275elementStart(0,"span",0),n.\u0275\u0275projection(1),n.\u0275\u0275elementEnd(),n.\u0275\u0275element(2,"span",1)(3,"span",2)),2&m&&(n.\u0275\u0275advance(2),n.\u0275\u0275classProp("mat-button-ripple-round",_.isRoundButton||_.isIconButton),n.\u0275\u0275property("matRippleDisabled",_._isRippleDisabled())("matRippleCentered",_.isIconButton)("matRippleTrigger",_._getHostElement()))},dependencies:[p.MatRipple],styles:[".mat-button .mat-button-focus-overlay,.mat-icon-button .mat-button-focus-overlay{opacity:0}.mat-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay,.mat-stroked-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay{opacity:.04}@media(hover: none){.mat-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay,.mat-stroked-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay{opacity:0}}.mat-button,.mat-icon-button,.mat-stroked-button,.mat-flat-button{box-sizing:border-box;position:relative;-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:rgba(0,0,0,0);display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible}.mat-button::-moz-focus-inner,.mat-icon-button::-moz-focus-inner,.mat-stroked-button::-moz-focus-inner,.mat-flat-button::-moz-focus-inner{border:0}.mat-button.mat-button-disabled,.mat-icon-button.mat-button-disabled,.mat-stroked-button.mat-button-disabled,.mat-flat-button.mat-button-disabled{cursor:default}.mat-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-button.cdk-program-focused .mat-button-focus-overlay,.mat-icon-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-icon-button.cdk-program-focused .mat-button-focus-overlay,.mat-stroked-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-stroked-button.cdk-program-focused .mat-button-focus-overlay,.mat-flat-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-flat-button.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-button::-moz-focus-inner,.mat-icon-button::-moz-focus-inner,.mat-stroked-button::-moz-focus-inner,.mat-flat-button::-moz-focus-inner{border:0}.mat-raised-button{box-sizing:border-box;position:relative;-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:rgba(0,0,0,0);display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible;transform:translate3d(0, 0, 0);transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-raised-button::-moz-focus-inner{border:0}.mat-raised-button.mat-button-disabled{cursor:default}.mat-raised-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-raised-button.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-raised-button::-moz-focus-inner{border:0}.mat-raised-button._mat-animation-noopable{transition:none !important;animation:none !important}.mat-stroked-button{border:1px solid currentColor;padding:0 15px;line-height:34px}.mat-stroked-button .mat-button-ripple.mat-ripple,.mat-stroked-button .mat-button-focus-overlay{top:-1px;left:-1px;right:-1px;bottom:-1px}.mat-fab{box-sizing:border-box;position:relative;-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:rgba(0,0,0,0);display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible;transform:translate3d(0, 0, 0);transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);min-width:0;border-radius:50%;width:56px;height:56px;padding:0;flex-shrink:0}.mat-fab::-moz-focus-inner{border:0}.mat-fab.mat-button-disabled{cursor:default}.mat-fab.cdk-keyboard-focused .mat-button-focus-overlay,.mat-fab.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-fab::-moz-focus-inner{border:0}.mat-fab._mat-animation-noopable{transition:none !important;animation:none !important}.mat-fab .mat-button-wrapper{padding:16px 0;display:inline-block;line-height:24px}.mat-mini-fab{box-sizing:border-box;position:relative;-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:rgba(0,0,0,0);display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible;transform:translate3d(0, 0, 0);transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);min-width:0;border-radius:50%;width:40px;height:40px;padding:0;flex-shrink:0}.mat-mini-fab::-moz-focus-inner{border:0}.mat-mini-fab.mat-button-disabled{cursor:default}.mat-mini-fab.cdk-keyboard-focused .mat-button-focus-overlay,.mat-mini-fab.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-mini-fab::-moz-focus-inner{border:0}.mat-mini-fab._mat-animation-noopable{transition:none !important;animation:none !important}.mat-mini-fab .mat-button-wrapper{padding:8px 0;display:inline-block;line-height:24px}.mat-icon-button{padding:0;min-width:0;width:40px;height:40px;flex-shrink:0;line-height:40px;border-radius:50%}.mat-icon-button i,.mat-icon-button .mat-icon{line-height:24px}.mat-button-ripple.mat-ripple,.mat-button-focus-overlay{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none;border-radius:inherit}.mat-button-ripple.mat-ripple:not(:empty){transform:translateZ(0)}.mat-button-focus-overlay{opacity:0;transition:opacity 200ms cubic-bezier(0.35, 0, 0.25, 1),background-color 200ms cubic-bezier(0.35, 0, 0.25, 1)}._mat-animation-noopable .mat-button-focus-overlay{transition:none}.mat-button-ripple-round{border-radius:50%;z-index:1}.mat-button .mat-button-wrapper>*,.mat-flat-button .mat-button-wrapper>*,.mat-stroked-button .mat-button-wrapper>*,.mat-raised-button .mat-button-wrapper>*,.mat-icon-button .mat-button-wrapper>*,.mat-fab .mat-button-wrapper>*,.mat-mini-fab .mat-button-wrapper>*{vertical-align:middle}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mat-icon-button,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-icon-button{display:inline-flex;justify-content:center;align-items:center;font-size:inherit;width:2.5em;height:2.5em}.mat-flat-button::before,.mat-raised-button::before,.mat-fab::before,.mat-mini-fab::before{margin:calc(calc(var(--mat-focus-indicator-border-width, 3px) + 2px) * -1)}.mat-stroked-button::before{margin:calc(calc(var(--mat-focus-indicator-border-width, 3px) + 3px) * -1)}.cdk-high-contrast-active .mat-button,.cdk-high-contrast-active .mat-flat-button,.cdk-high-contrast-active .mat-raised-button,.cdk-high-contrast-active .mat-icon-button,.cdk-high-contrast-active .mat-fab,.cdk-high-contrast-active .mat-mini-fab{outline:solid 1px}.mat-datepicker-toggle .mat-mdc-button-base{width:40px;height:40px;padding:8px 0}.mat-datepicker-actions .mat-button-base+.mat-button-base{margin-left:8px}[dir=rtl] .mat-datepicker-actions .mat-button-base+.mat-button-base{margin-left:0;margin-right:8px}"],encapsulation:2,changeDetection:0}),u})(),r=(()=>{class u{}return u.\u0275fac=function(m){return new(m||u)},u.\u0275mod=n.\u0275\u0275defineNgModule({type:u}),u.\u0275inj=n.\u0275\u0275defineInjector({imports:[p.MatRippleModule,p.MatCommonModule,p.MatCommonModule]}),u})()},9025:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{MatLegacyCard:()=>L,MatLegacyCardActions:()=>r,MatLegacyCardAvatar:()=>w,MatLegacyCardContent:()=>s,MatLegacyCardFooter:()=>u,MatLegacyCardHeader:()=>A,MatLegacyCardImage:()=>h,MatLegacyCardLgImage:()=>M,MatLegacyCardMdImage:()=>_,MatLegacyCardModule:()=>O,MatLegacyCardSmImage:()=>m,MatLegacyCardSubtitle:()=>d,MatLegacyCardTitle:()=>l,MatLegacyCardTitleGroup:()=>T,MatLegacyCardXlImage:()=>x});var n=g(5879),p=g(3680);const C=["*",[["mat-card-footer"]]],b=["*","mat-card-footer"],o=[[["","mat-card-avatar",""],["","matCardAvatar",""]],[["mat-card-title"],["mat-card-subtitle"],["","mat-card-title",""],["","mat-card-subtitle",""],["","matCardTitle",""],["","matCardSubtitle",""]],"*"],v=["[mat-card-avatar], [matCardAvatar]","mat-card-title, mat-card-subtitle,\n [mat-card-title], [mat-card-subtitle],\n [matCardTitle], [matCardSubtitle]","*"],a=[[["mat-card-title"],["mat-card-subtitle"],["","mat-card-title",""],["","mat-card-subtitle",""],["","matCardTitle",""],["","matCardSubtitle",""]],[["img"]],"*"],c=["mat-card-title, mat-card-subtitle,\n [mat-card-title], [mat-card-subtitle],\n [matCardTitle], [matCardSubtitle]","img","*"];let s=(()=>{class E{}return E.\u0275fac=function(R){return new(R||E)},E.\u0275dir=n.\u0275\u0275defineDirective({type:E,selectors:[["mat-card-content"],["","mat-card-content",""],["","matCardContent",""]],hostAttrs:[1,"mat-card-content"]}),E})(),l=(()=>{class E{}return E.\u0275fac=function(R){return new(R||E)},E.\u0275dir=n.\u0275\u0275defineDirective({type:E,selectors:[["mat-card-title"],["","mat-card-title",""],["","matCardTitle",""]],hostAttrs:[1,"mat-card-title"]}),E})(),d=(()=>{class E{}return E.\u0275fac=function(R){return new(R||E)},E.\u0275dir=n.\u0275\u0275defineDirective({type:E,selectors:[["mat-card-subtitle"],["","mat-card-subtitle",""],["","matCardSubtitle",""]],hostAttrs:[1,"mat-card-subtitle"]}),E})(),r=(()=>{class E{constructor(){this.align="start"}}return E.\u0275fac=function(R){return new(R||E)},E.\u0275dir=n.\u0275\u0275defineDirective({type:E,selectors:[["mat-card-actions"]],hostAttrs:[1,"mat-card-actions"],hostVars:2,hostBindings:function(R,j){2&R&&n.\u0275\u0275classProp("mat-card-actions-align-end","end"===j.align)},inputs:{align:"align"},exportAs:["matCardActions"]}),E})(),u=(()=>{class E{}return E.\u0275fac=function(R){return new(R||E)},E.\u0275dir=n.\u0275\u0275defineDirective({type:E,selectors:[["mat-card-footer"]],hostAttrs:[1,"mat-card-footer"]}),E})(),h=(()=>{class E{}return E.\u0275fac=function(R){return new(R||E)},E.\u0275dir=n.\u0275\u0275defineDirective({type:E,selectors:[["","mat-card-image",""],["","matCardImage",""]],hostAttrs:[1,"mat-card-image"]}),E})(),m=(()=>{class E{}return E.\u0275fac=function(R){return new(R||E)},E.\u0275dir=n.\u0275\u0275defineDirective({type:E,selectors:[["","mat-card-sm-image",""],["","matCardImageSmall",""]],hostAttrs:[1,"mat-card-sm-image"]}),E})(),_=(()=>{class E{}return E.\u0275fac=function(R){return new(R||E)},E.\u0275dir=n.\u0275\u0275defineDirective({type:E,selectors:[["","mat-card-md-image",""],["","matCardImageMedium",""]],hostAttrs:[1,"mat-card-md-image"]}),E})(),M=(()=>{class E{}return E.\u0275fac=function(R){return new(R||E)},E.\u0275dir=n.\u0275\u0275defineDirective({type:E,selectors:[["","mat-card-lg-image",""],["","matCardImageLarge",""]],hostAttrs:[1,"mat-card-lg-image"]}),E})(),x=(()=>{class E{}return E.\u0275fac=function(R){return new(R||E)},E.\u0275dir=n.\u0275\u0275defineDirective({type:E,selectors:[["","mat-card-xl-image",""],["","matCardImageXLarge",""]],hostAttrs:[1,"mat-card-xl-image"]}),E})(),w=(()=>{class E{}return E.\u0275fac=function(R){return new(R||E)},E.\u0275dir=n.\u0275\u0275defineDirective({type:E,selectors:[["","mat-card-avatar",""],["","matCardAvatar",""]],hostAttrs:[1,"mat-card-avatar"]}),E})(),L=(()=>{class E{constructor(R){this._animationMode=R}}return E.\u0275fac=function(R){return new(R||E)(n.\u0275\u0275directiveInject(n.ANIMATION_MODULE_TYPE,8))},E.\u0275cmp=n.\u0275\u0275defineComponent({type:E,selectors:[["mat-card"]],hostAttrs:[1,"mat-card","mat-focus-indicator"],hostVars:2,hostBindings:function(R,j){2&R&&n.\u0275\u0275classProp("_mat-animation-noopable","NoopAnimations"===j._animationMode)},exportAs:["matCard"],ngContentSelectors:b,decls:2,vars:0,template:function(R,j){1&R&&(n.\u0275\u0275projectionDef(C),n.\u0275\u0275projection(0),n.\u0275\u0275projection(1,1))},styles:[".mat-card{transition:box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);display:block;position:relative;padding:16px;border-radius:4px}.mat-card._mat-animation-noopable{transition:none !important;animation:none !important}.mat-card>.mat-divider-horizontal{position:absolute;left:0;width:100%}[dir=rtl] .mat-card>.mat-divider-horizontal{left:auto;right:0}.mat-card>.mat-divider-horizontal.mat-divider-inset{position:static;margin:0}[dir=rtl] .mat-card>.mat-divider-horizontal.mat-divider-inset{margin-right:0}.cdk-high-contrast-active .mat-card{outline:solid 1px}.mat-card-actions,.mat-card-subtitle,.mat-card-content{display:block;margin-bottom:16px}.mat-card-title{display:block;margin-bottom:8px}.mat-card-actions{margin-left:-8px;margin-right:-8px;padding:8px 0}.mat-card-actions-align-end{display:flex;justify-content:flex-end}.mat-card-image{width:calc(100% + 32px);margin:0 -16px 16px -16px;display:block;overflow:hidden}.mat-card-image img{width:100%}.mat-card-footer{display:block;margin:0 -16px -16px -16px}.mat-card-actions .mat-button,.mat-card-actions .mat-raised-button,.mat-card-actions .mat-stroked-button{margin:0 8px}.mat-card-header{display:flex;flex-direction:row}.mat-card-header .mat-card-title{margin-bottom:12px}.mat-card-header-text{margin:0 16px}.mat-card-avatar{height:40px;width:40px;border-radius:50%;flex-shrink:0;object-fit:cover}.mat-card-title-group{display:flex;justify-content:space-between}.mat-card-sm-image{width:80px;height:80px}.mat-card-md-image{width:112px;height:112px}.mat-card-lg-image{width:152px;height:152px}.mat-card-xl-image{width:240px;height:240px;margin:-8px}.mat-card-title-group>.mat-card-xl-image{margin:-8px 0 8px}@media(max-width: 599px){.mat-card-title-group{margin:0}.mat-card-xl-image{margin-left:0;margin-right:0}}.mat-card>:first-child,.mat-card-content>:first-child{margin-top:0}.mat-card>:last-child:not(.mat-card-footer),.mat-card-content>:last-child:not(.mat-card-footer){margin-bottom:0}.mat-card-image:first-child{margin-top:-16px;border-top-left-radius:inherit;border-top-right-radius:inherit}.mat-card>.mat-card-actions:last-child{margin-bottom:-8px;padding-bottom:0}.mat-card-actions:not(.mat-card-actions-align-end) .mat-button:first-child,.mat-card-actions:not(.mat-card-actions-align-end) .mat-raised-button:first-child,.mat-card-actions:not(.mat-card-actions-align-end) .mat-stroked-button:first-child{margin-left:0;margin-right:0}.mat-card-actions-align-end .mat-button:last-child,.mat-card-actions-align-end .mat-raised-button:last-child,.mat-card-actions-align-end .mat-stroked-button:last-child{margin-left:0;margin-right:0}.mat-card-title:not(:first-child),.mat-card-subtitle:not(:first-child){margin-top:-4px}.mat-card-header .mat-card-subtitle:not(:first-child){margin-top:-8px}.mat-card>.mat-card-xl-image:first-child{margin-top:-8px}.mat-card>.mat-card-xl-image:last-child{margin-bottom:-8px}"],encapsulation:2,changeDetection:0}),E})(),A=(()=>{class E{}return E.\u0275fac=function(R){return new(R||E)},E.\u0275cmp=n.\u0275\u0275defineComponent({type:E,selectors:[["mat-card-header"]],hostAttrs:[1,"mat-card-header"],ngContentSelectors:v,decls:4,vars:0,consts:[[1,"mat-card-header-text"]],template:function(R,j){1&R&&(n.\u0275\u0275projectionDef(o),n.\u0275\u0275projection(0),n.\u0275\u0275elementStart(1,"div",0),n.\u0275\u0275projection(2,1),n.\u0275\u0275elementEnd(),n.\u0275\u0275projection(3,2))},encapsulation:2,changeDetection:0}),E})(),T=(()=>{class E{}return E.\u0275fac=function(R){return new(R||E)},E.\u0275cmp=n.\u0275\u0275defineComponent({type:E,selectors:[["mat-card-title-group"]],hostAttrs:[1,"mat-card-title-group"],ngContentSelectors:c,decls:4,vars:0,template:function(R,j){1&R&&(n.\u0275\u0275projectionDef(a),n.\u0275\u0275elementStart(0,"div"),n.\u0275\u0275projection(1),n.\u0275\u0275elementEnd(),n.\u0275\u0275projection(2,1),n.\u0275\u0275projection(3,2))},encapsulation:2,changeDetection:0}),E})(),O=(()=>{class E{}return E.\u0275fac=function(R){return new(R||E)},E.\u0275mod=n.\u0275\u0275defineNgModule({type:E}),E.\u0275inj=n.\u0275\u0275defineInjector({imports:[p.MatCommonModule,p.MatCommonModule]}),E})()},4021:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{MAT_LEGACY_CHECKBOX_CONTROL_VALUE_ACCESSOR:()=>R,MAT_LEGACY_CHECKBOX_DEFAULT_OPTIONS:()=>s,MAT_LEGACY_CHECKBOX_DEFAULT_OPTIONS_FACTORY:()=>l,MAT_LEGACY_CHECKBOX_REQUIRED_VALIDATOR:()=>x,MatLegacyCheckbox:()=>j,MatLegacyCheckboxChange:()=>D,MatLegacyCheckboxModule:()=>N,MatLegacyCheckboxRequiredValidator:()=>w,_MatLegacyCheckboxRequiredValidatorModule:()=>L});var n=g(4300),p=g(5879),C=g(6223),b=g(3680),o=g(2495);const v=["input"],a=["label"],s=new p.InjectionToken("mat-checkbox-default-options",{providedIn:"root",factory:l});function l(){return{color:"accent",clickAction:"check-indeterminate"}}let u=0;const h=l(),m=(0,b.mixinTabIndex)((0,b.mixinColor)((0,b.mixinDisableRipple)((0,b.mixinDisabled)(class{constructor(S){this._elementRef=S}}))));let _=(()=>{class S extends m{get inputId(){return`${this.id||this._uniqueId}-input`}get required(){return this._required}set required(F){this._required=(0,o.Ig)(F)}constructor(F,Y,se,ne,me,$,q){super(Y),this._changeDetectorRef=se,this._ngZone=ne,this._animationMode=$,this._options=q,this.ariaLabel="",this.ariaLabelledby=null,this.labelPosition="after",this.name=null,this.change=new p.EventEmitter,this.indeterminateChange=new p.EventEmitter,this._onTouched=()=>{},this._currentAnimationClass="",this._currentCheckState=0,this._controlValueAccessorChangeFn=()=>{},this._checked=!1,this._disabled=!1,this._indeterminate=!1,this._options=this._options||h,this.color=this.defaultColor=this._options.color||h.color,this.tabIndex=parseInt(me)||0,this.id=this._uniqueId=`${F}${++u}`}ngAfterViewInit(){this._syncIndeterminate(this._indeterminate)}get checked(){return this._checked}set checked(F){const Y=(0,o.Ig)(F);Y!=this.checked&&(this._checked=Y,this._changeDetectorRef.markForCheck())}get disabled(){return this._disabled}set disabled(F){const Y=(0,o.Ig)(F);Y!==this.disabled&&(this._disabled=Y,this._changeDetectorRef.markForCheck())}get indeterminate(){return this._indeterminate}set indeterminate(F){const Y=F!=this._indeterminate;this._indeterminate=(0,o.Ig)(F),Y&&(this._transitionCheckState(this._indeterminate?3:this.checked?1:2),this.indeterminateChange.emit(this._indeterminate)),this._syncIndeterminate(this._indeterminate)}_isRippleDisabled(){return this.disableRipple||this.disabled}_onLabelTextChange(){this._changeDetectorRef.detectChanges()}writeValue(F){this.checked=!!F}registerOnChange(F){this._controlValueAccessorChangeFn=F}registerOnTouched(F){this._onTouched=F}setDisabledState(F){this.disabled=F}_transitionCheckState(F){let Y=this._currentCheckState,se=this._getAnimationTargetElement();if(Y!==F&&se&&(this._currentAnimationClass&&se.classList.remove(this._currentAnimationClass),this._currentAnimationClass=this._getAnimationClassForCheckStateTransition(Y,F),this._currentCheckState=F,this._currentAnimationClass.length>0)){se.classList.add(this._currentAnimationClass);const ne=this._currentAnimationClass;this._ngZone.runOutsideAngular(()=>{setTimeout(()=>{se.classList.remove(ne)},1e3)})}}_emitChangeEvent(){this._controlValueAccessorChangeFn(this.checked),this.change.emit(this._createChangeEvent(this.checked)),this._inputElement&&(this._inputElement.nativeElement.checked=this.checked)}toggle(){this.checked=!this.checked,this._controlValueAccessorChangeFn(this.checked)}_handleInputClick(){const F=this._options?.clickAction;this.disabled||"noop"===F?!this.disabled&&"noop"===F&&(this._inputElement.nativeElement.checked=this.checked,this._inputElement.nativeElement.indeterminate=this.indeterminate):(this.indeterminate&&"check"!==F&&Promise.resolve().then(()=>{this._indeterminate=!1,this.indeterminateChange.emit(this._indeterminate)}),this._checked=!this._checked,this._transitionCheckState(this._checked?1:2),this._emitChangeEvent())}_onInteractionEvent(F){F.stopPropagation()}_onBlur(){Promise.resolve().then(()=>{this._onTouched(),this._changeDetectorRef.markForCheck()})}_getAnimationClassForCheckStateTransition(F,Y){if("NoopAnimations"===this._animationMode)return"";switch(F){case 0:if(1===Y)return this._animationClasses.uncheckedToChecked;if(3==Y)return this._checked?this._animationClasses.checkedToIndeterminate:this._animationClasses.uncheckedToIndeterminate;break;case 2:return 1===Y?this._animationClasses.uncheckedToChecked:this._animationClasses.uncheckedToIndeterminate;case 1:return 2===Y?this._animationClasses.checkedToUnchecked:this._animationClasses.checkedToIndeterminate;case 3:return 1===Y?this._animationClasses.indeterminateToChecked:this._animationClasses.indeterminateToUnchecked}return""}_syncIndeterminate(F){const Y=this._inputElement;Y&&(Y.nativeElement.indeterminate=F)}}return S.\u0275fac=function(F){p.\u0275\u0275invalidFactory()},S.\u0275dir=p.\u0275\u0275defineDirective({type:S,viewQuery:function(F,Y){if(1&F&&(p.\u0275\u0275viewQuery(v,5),p.\u0275\u0275viewQuery(a,5),p.\u0275\u0275viewQuery(b.MatRipple,5)),2&F){let se;p.\u0275\u0275queryRefresh(se=p.\u0275\u0275loadQuery())&&(Y._inputElement=se.first),p.\u0275\u0275queryRefresh(se=p.\u0275\u0275loadQuery())&&(Y._labelElement=se.first),p.\u0275\u0275queryRefresh(se=p.\u0275\u0275loadQuery())&&(Y.ripple=se.first)}},inputs:{ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],ariaDescribedby:["aria-describedby","ariaDescribedby"],id:"id",required:"required",labelPosition:"labelPosition",name:"name",value:"value",checked:"checked",disabled:"disabled",indeterminate:"indeterminate"},outputs:{change:"change",indeterminateChange:"indeterminateChange"},features:[p.\u0275\u0275InheritDefinitionFeature]}),S})();const x={provide:C.NG_VALIDATORS,useExisting:(0,p.forwardRef)(()=>w),multi:!0};let w=(()=>{class S extends C.CheckboxRequiredValidator{}return S.\u0275fac=function(){let k;return function(Y){return(k||(k=p.\u0275\u0275getInheritedFactory(S)))(Y||S)}}(),S.\u0275dir=p.\u0275\u0275defineDirective({type:S,selectors:[["mat-checkbox","required","","formControlName",""],["mat-checkbox","required","","formControl",""],["mat-checkbox","required","","ngModel",""]],features:[p.\u0275\u0275ProvidersFeature([x]),p.\u0275\u0275InheritDefinitionFeature]}),S})(),L=(()=>{class S{}return S.\u0275fac=function(F){return new(F||S)},S.\u0275mod=p.\u0275\u0275defineNgModule({type:S}),S.\u0275inj=p.\u0275\u0275defineInjector({}),S})();var T=g(7131);const O=function(S){return{enterDuration:S}},E=["*"];class D{}const R={provide:C.NG_VALUE_ACCESSOR,useExisting:(0,p.forwardRef)(()=>j),multi:!0};let j=(()=>{class S extends _{constructor(F,Y,se,ne,me,$,q){super("mat-checkbox-",F,Y,ne,me,$,q),this._focusMonitor=se,this._animationClasses={uncheckedToChecked:"mat-checkbox-anim-unchecked-checked",uncheckedToIndeterminate:"mat-checkbox-anim-unchecked-indeterminate",checkedToUnchecked:"mat-checkbox-anim-checked-unchecked",checkedToIndeterminate:"mat-checkbox-anim-checked-indeterminate",indeterminateToChecked:"mat-checkbox-anim-indeterminate-checked",indeterminateToUnchecked:"mat-checkbox-anim-indeterminate-unchecked"}}_createChangeEvent(F){const Y=new D;return Y.source=this,Y.checked=F,Y}_getAnimationTargetElement(){return this._elementRef.nativeElement}ngAfterViewInit(){super.ngAfterViewInit(),this._focusMonitor.monitor(this._elementRef,!0).subscribe(F=>{F||this._onBlur()})}ngOnDestroy(){this._focusMonitor.stopMonitoring(this._elementRef)}_onInputClick(F){F.stopPropagation(),super._handleInputClick()}focus(F,Y){F?this._focusMonitor.focusVia(this._inputElement,F,Y):this._inputElement.nativeElement.focus(Y)}}return S.\u0275fac=function(F){return new(F||S)(p.\u0275\u0275directiveInject(p.ElementRef),p.\u0275\u0275directiveInject(p.ChangeDetectorRef),p.\u0275\u0275directiveInject(n.tE),p.\u0275\u0275directiveInject(p.NgZone),p.\u0275\u0275injectAttribute("tabindex"),p.\u0275\u0275directiveInject(p.ANIMATION_MODULE_TYPE,8),p.\u0275\u0275directiveInject(s,8))},S.\u0275cmp=p.\u0275\u0275defineComponent({type:S,selectors:[["mat-checkbox"]],hostAttrs:[1,"mat-checkbox"],hostVars:14,hostBindings:function(F,Y){2&F&&(p.\u0275\u0275hostProperty("id",Y.id),p.\u0275\u0275attribute("tabindex",null)("aria-label",null)("aria-labelledby",null),p.\u0275\u0275classProp("mat-checkbox-indeterminate",Y.indeterminate)("mat-checkbox-checked",Y.checked)("mat-checkbox-disabled",Y.disabled)("mat-checkbox-label-before","before"==Y.labelPosition)("_mat-animation-noopable","NoopAnimations"===Y._animationMode))},inputs:{disableRipple:"disableRipple",color:"color",tabIndex:"tabIndex"},exportAs:["matCheckbox"],features:[p.\u0275\u0275ProvidersFeature([R]),p.\u0275\u0275InheritDefinitionFeature],ngContentSelectors:E,decls:17,vars:20,consts:[[1,"mat-checkbox-layout"],["label",""],[1,"mat-checkbox-inner-container"],["type","checkbox",1,"mat-checkbox-input","cdk-visually-hidden",3,"id","required","checked","disabled","tabIndex","change","click"],["input",""],["matRipple","",1,"mat-checkbox-ripple","mat-focus-indicator",3,"matRippleTrigger","matRippleDisabled","matRippleRadius","matRippleCentered","matRippleAnimation"],[1,"mat-ripple-element","mat-checkbox-persistent-ripple"],[1,"mat-checkbox-frame"],[1,"mat-checkbox-background"],["version","1.1","focusable","false","viewBox","0 0 24 24","aria-hidden","true",1,"mat-checkbox-checkmark"],["fill","none","stroke","white","d","M4.1,12.7 9,17.6 20.3,6.3",1,"mat-checkbox-checkmark-path"],[1,"mat-checkbox-mixedmark"],[1,"mat-checkbox-label",3,"cdkObserveContent"],["checkboxLabel",""],[2,"display","none"]],template:function(F,Y){if(1&F&&(p.\u0275\u0275projectionDef(),p.\u0275\u0275elementStart(0,"label",0,1)(2,"span",2)(3,"input",3,4),p.\u0275\u0275listener("change",function(ne){return Y._onInteractionEvent(ne)})("click",function(ne){return Y._onInputClick(ne)}),p.\u0275\u0275elementEnd(),p.\u0275\u0275elementStart(5,"span",5),p.\u0275\u0275element(6,"span",6),p.\u0275\u0275elementEnd(),p.\u0275\u0275element(7,"span",7),p.\u0275\u0275elementStart(8,"span",8),p.\u0275\u0275namespaceSVG(),p.\u0275\u0275elementStart(9,"svg",9),p.\u0275\u0275element(10,"path",10),p.\u0275\u0275elementEnd(),p.\u0275\u0275namespaceHTML(),p.\u0275\u0275element(11,"span",11),p.\u0275\u0275elementEnd()(),p.\u0275\u0275elementStart(12,"span",12,13),p.\u0275\u0275listener("cdkObserveContent",function(){return Y._onLabelTextChange()}),p.\u0275\u0275elementStart(14,"span",14),p.\u0275\u0275text(15,"\xa0"),p.\u0275\u0275elementEnd(),p.\u0275\u0275projection(16),p.\u0275\u0275elementEnd()()),2&F){const se=p.\u0275\u0275reference(1),ne=p.\u0275\u0275reference(13);p.\u0275\u0275attribute("for",Y.inputId),p.\u0275\u0275advance(2),p.\u0275\u0275classProp("mat-checkbox-inner-container-no-side-margin",!ne.textContent||!ne.textContent.trim()),p.\u0275\u0275advance(1),p.\u0275\u0275property("id",Y.inputId)("required",Y.required)("checked",Y.checked)("disabled",Y.disabled)("tabIndex",Y.tabIndex),p.\u0275\u0275attribute("value",Y.value)("name",Y.name)("aria-label",Y.ariaLabel||null)("aria-labelledby",Y.ariaLabelledby)("aria-describedby",Y.ariaDescribedby),p.\u0275\u0275advance(2),p.\u0275\u0275property("matRippleTrigger",se)("matRippleDisabled",Y._isRippleDisabled())("matRippleRadius",20)("matRippleCentered",!0)("matRippleAnimation",p.\u0275\u0275pureFunction1(18,O,"NoopAnimations"===Y._animationMode?0:150))}},dependencies:[b.MatRipple,T.wD],styles:['@keyframes mat-checkbox-fade-in-background{0%{opacity:0}50%{opacity:1}}@keyframes mat-checkbox-fade-out-background{0%,50%{opacity:1}100%{opacity:0}}@keyframes mat-checkbox-unchecked-checked-checkmark-path{0%,50%{stroke-dashoffset:22.910259}50%{animation-timing-function:cubic-bezier(0, 0, 0.2, 0.1)}100%{stroke-dashoffset:0}}@keyframes mat-checkbox-unchecked-indeterminate-mixedmark{0%,68.2%{transform:scaleX(0)}68.2%{animation-timing-function:cubic-bezier(0, 0, 0, 1)}100%{transform:scaleX(1)}}@keyframes mat-checkbox-checked-unchecked-checkmark-path{from{animation-timing-function:cubic-bezier(0.4, 0, 1, 1);stroke-dashoffset:0}to{stroke-dashoffset:-22.910259}}@keyframes mat-checkbox-checked-indeterminate-checkmark{from{animation-timing-function:cubic-bezier(0, 0, 0.2, 0.1);opacity:1;transform:rotate(0deg)}to{opacity:0;transform:rotate(45deg)}}@keyframes mat-checkbox-indeterminate-checked-checkmark{from{animation-timing-function:cubic-bezier(0.14, 0, 0, 1);opacity:0;transform:rotate(45deg)}to{opacity:1;transform:rotate(360deg)}}@keyframes mat-checkbox-checked-indeterminate-mixedmark{from{animation-timing-function:cubic-bezier(0, 0, 0.2, 0.1);opacity:0;transform:rotate(-45deg)}to{opacity:1;transform:rotate(0deg)}}@keyframes mat-checkbox-indeterminate-checked-mixedmark{from{animation-timing-function:cubic-bezier(0.14, 0, 0, 1);opacity:1;transform:rotate(0deg)}to{opacity:0;transform:rotate(315deg)}}@keyframes mat-checkbox-indeterminate-unchecked-mixedmark{0%{animation-timing-function:linear;opacity:1;transform:scaleX(1)}32.8%,100%{opacity:0;transform:scaleX(0)}}.mat-checkbox-background,.mat-checkbox-frame{top:0;left:0;right:0;bottom:0;position:absolute;border-radius:2px;box-sizing:border-box;pointer-events:none}.mat-checkbox{display:inline-block;transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);cursor:pointer;-webkit-tap-highlight-color:rgba(0,0,0,0);position:relative}.mat-checkbox._mat-animation-noopable{transition:none !important;animation:none !important}.mat-checkbox .mat-ripple-element:not(.mat-checkbox-persistent-ripple){opacity:.16}.mat-checkbox .mat-checkbox-ripple{position:absolute;left:calc(50% - 20px);top:calc(50% - 20px);height:40px;width:40px;z-index:1;pointer-events:none}.mat-checkbox-layout{-webkit-user-select:none;user-select:none;cursor:inherit;align-items:baseline;vertical-align:middle;display:inline-flex;white-space:nowrap}.mat-checkbox-label{-webkit-user-select:auto;user-select:auto}.mat-checkbox-inner-container{display:inline-block;height:16px;line-height:0;margin:auto;margin-right:8px;order:0;position:relative;vertical-align:middle;white-space:nowrap;width:16px;flex-shrink:0}[dir=rtl] .mat-checkbox-inner-container{margin-left:8px;margin-right:auto}.mat-checkbox-inner-container-no-side-margin{margin-left:0;margin-right:0}.mat-checkbox-frame{background-color:rgba(0,0,0,0);transition:border-color 90ms cubic-bezier(0, 0, 0.2, 0.1);border-width:2px;border-style:solid}._mat-animation-noopable .mat-checkbox-frame{transition:none}.mat-checkbox-background{align-items:center;display:inline-flex;justify-content:center;transition:background-color 90ms cubic-bezier(0, 0, 0.2, 0.1),opacity 90ms cubic-bezier(0, 0, 0.2, 0.1);-webkit-print-color-adjust:exact;color-adjust:exact}._mat-animation-noopable .mat-checkbox-background{transition:none}.cdk-high-contrast-active .mat-checkbox .mat-checkbox-background{background:none}.mat-checkbox-persistent-ripple{display:block;width:100%;height:100%;transform:none}.mat-checkbox-inner-container:hover .mat-checkbox-persistent-ripple{opacity:.04}.mat-checkbox.cdk-keyboard-focused .mat-checkbox-persistent-ripple{opacity:.12}.mat-checkbox-persistent-ripple,.mat-checkbox.mat-checkbox-disabled .mat-checkbox-inner-container:hover .mat-checkbox-persistent-ripple{opacity:0}@media(hover: none){.mat-checkbox-inner-container:hover .mat-checkbox-persistent-ripple{display:none}}.mat-checkbox-checkmark{top:0;left:0;right:0;bottom:0;position:absolute;width:100%}.mat-checkbox-checkmark-path{stroke-dashoffset:22.910259;stroke-dasharray:22.910259;stroke-width:2.1333333333px}.cdk-high-contrast-black-on-white .mat-checkbox-checkmark-path{stroke:#000 !important}.mat-checkbox-mixedmark{width:calc(100% - 6px);height:2px;opacity:0;transform:scaleX(0) rotate(0deg);border-radius:2px}.cdk-high-contrast-active .mat-checkbox-mixedmark{height:0;border-top:solid 2px;margin-top:2px}.mat-checkbox-label-before .mat-checkbox-inner-container{order:1;margin-left:8px;margin-right:auto}[dir=rtl] .mat-checkbox-label-before .mat-checkbox-inner-container{margin-left:auto;margin-right:8px}.mat-checkbox-checked .mat-checkbox-checkmark{opacity:1}.mat-checkbox-checked .mat-checkbox-checkmark-path{stroke-dashoffset:0}.mat-checkbox-checked .mat-checkbox-mixedmark{transform:scaleX(1) rotate(-45deg)}.mat-checkbox-indeterminate .mat-checkbox-checkmark{opacity:0;transform:rotate(45deg)}.mat-checkbox-indeterminate .mat-checkbox-checkmark-path{stroke-dashoffset:0}.mat-checkbox-indeterminate .mat-checkbox-mixedmark{opacity:1;transform:scaleX(1) rotate(0deg)}.mat-checkbox-unchecked .mat-checkbox-background{background-color:rgba(0,0,0,0)}.mat-checkbox-disabled{cursor:default}.cdk-high-contrast-active .mat-checkbox-disabled{opacity:.5}.mat-checkbox-anim-unchecked-checked .mat-checkbox-background{animation:180ms linear 0ms mat-checkbox-fade-in-background}.mat-checkbox-anim-unchecked-checked .mat-checkbox-checkmark-path{animation:180ms linear 0ms mat-checkbox-unchecked-checked-checkmark-path}.mat-checkbox-anim-unchecked-indeterminate .mat-checkbox-background{animation:180ms linear 0ms mat-checkbox-fade-in-background}.mat-checkbox-anim-unchecked-indeterminate .mat-checkbox-mixedmark{animation:90ms linear 0ms mat-checkbox-unchecked-indeterminate-mixedmark}.mat-checkbox-anim-checked-unchecked .mat-checkbox-background{animation:180ms linear 0ms mat-checkbox-fade-out-background}.mat-checkbox-anim-checked-unchecked .mat-checkbox-checkmark-path{animation:90ms linear 0ms mat-checkbox-checked-unchecked-checkmark-path}.mat-checkbox-anim-checked-indeterminate .mat-checkbox-checkmark{animation:90ms linear 0ms mat-checkbox-checked-indeterminate-checkmark}.mat-checkbox-anim-checked-indeterminate .mat-checkbox-mixedmark{animation:90ms linear 0ms mat-checkbox-checked-indeterminate-mixedmark}.mat-checkbox-anim-indeterminate-checked .mat-checkbox-checkmark{animation:500ms linear 0ms mat-checkbox-indeterminate-checked-checkmark}.mat-checkbox-anim-indeterminate-checked .mat-checkbox-mixedmark{animation:500ms linear 0ms mat-checkbox-indeterminate-checked-mixedmark}.mat-checkbox-anim-indeterminate-unchecked .mat-checkbox-background{animation:180ms linear 0ms mat-checkbox-fade-out-background}.mat-checkbox-anim-indeterminate-unchecked .mat-checkbox-mixedmark{animation:300ms linear 0ms mat-checkbox-indeterminate-unchecked-mixedmark}.mat-checkbox-input{bottom:0;left:50%}.mat-checkbox-input:focus~.mat-focus-indicator::before{content:""}'],encapsulation:2,changeDetection:0}),S})(),N=(()=>{class S{}return S.\u0275fac=function(F){return new(F||S)},S.\u0275mod=p.\u0275\u0275defineNgModule({type:S}),S.\u0275inj=p.\u0275\u0275defineInjector({imports:[b.MatRippleModule,b.MatCommonModule,T.Q8,L,b.MatCommonModule,L]}),S})()},4678:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{LEGACY_VERSION:()=>C.VERSION,LegacyAnimationCurves:()=>C.AnimationCurves,LegacyAnimationDurations:()=>C.AnimationDurations,LegacyDateAdapter:()=>C.DateAdapter,LegacyErrorStateMatcher:()=>C.ErrorStateMatcher,LegacyNativeDateAdapter:()=>C.NativeDateAdapter,LegacyNativeDateModule:()=>C.NativeDateModule,LegacyRippleRef:()=>C.RippleRef,LegacyRippleRenderer:()=>C.RippleRenderer,LegacyShowOnDirtyErrorStateMatcher:()=>C.ShowOnDirtyErrorStateMatcher,MATERIAL_LEGACY_SANITY_CHECKS:()=>C.MATERIAL_SANITY_CHECKS,MAT_LEGACY_DATE_FORMATS:()=>C.MAT_DATE_FORMATS,MAT_LEGACY_DATE_LOCALE:()=>C.MAT_DATE_LOCALE,MAT_LEGACY_DATE_LOCALE_FACTORY:()=>C.MAT_DATE_LOCALE_FACTORY,MAT_LEGACY_NATIVE_DATE_FORMATS:()=>C.MAT_NATIVE_DATE_FORMATS,MAT_LEGACY_OPTGROUP:()=>C.MAT_OPTGROUP,MAT_LEGACY_OPTION_PARENT_COMPONENT:()=>C.MAT_OPTION_PARENT_COMPONENT,MAT_LEGACY_RIPPLE_GLOBAL_OPTIONS:()=>C.MAT_RIPPLE_GLOBAL_OPTIONS,MatLegacyCommonModule:()=>C.MatCommonModule,MatLegacyLine:()=>C.MatLine,MatLegacyLineModule:()=>C.MatLineModule,MatLegacyNativeDateModule:()=>C.MatNativeDateModule,MatLegacyOptgroup:()=>s,MatLegacyOption:()=>l,MatLegacyOptionModule:()=>d,MatLegacyOptionSelectionChange:()=>C.MatOptionSelectionChange,MatLegacyPseudoCheckbox:()=>C.MatPseudoCheckbox,MatLegacyPseudoCheckboxModule:()=>C.MatPseudoCheckboxModule,MatLegacyRipple:()=>C.MatRipple,MatLegacyRippleModule:()=>C.MatRippleModule,_MatLegacyOptgroupBase:()=>C._MatOptgroupBase,_MatLegacyOptionBase:()=>C._MatOptionBase,_countGroupLabelsBeforeLegacyOption:()=>C._countGroupLabelsBeforeOption,_getLegacyOptionScrollPosition:()=>C._getOptionScrollPosition,legacyDefaultRippleAnimationConfig:()=>C.defaultRippleAnimationConfig,legacyMixinColor:()=>C.mixinColor,legacyMixinDisableRipple:()=>C.mixinDisableRipple,legacyMixinDisabled:()=>C.mixinDisabled,legacyMixinErrorState:()=>C.mixinErrorState,legacyMixinInitialized:()=>C.mixinInitialized,legacyMixinTabIndex:()=>C.mixinTabIndex,legacySetLines:()=>C.setLines});var n=g(5879),p=g(6814),C=g(3680);const b=["*",[["mat-option"],["ng-container"]]],o=["*","mat-option, ng-container"];function v(r,u){if(1&r&&n.\u0275\u0275element(0,"mat-pseudo-checkbox",5),2&r){const h=n.\u0275\u0275nextContext();n.\u0275\u0275property("state",h.selected?"checked":"unchecked")("disabled",h.disabled)}}function a(r,u){if(1&r&&(n.\u0275\u0275elementStart(0,"span",6),n.\u0275\u0275text(1),n.\u0275\u0275elementEnd()),2&r){const h=n.\u0275\u0275nextContext();n.\u0275\u0275advance(1),n.\u0275\u0275textInterpolate1("(",h.group.label,")")}}const c=["*"];let s=(()=>{class r extends C._MatOptgroupBase{}return r.\u0275fac=function(){let u;return function(m){return(u||(u=n.\u0275\u0275getInheritedFactory(r)))(m||r)}}(),r.\u0275cmp=n.\u0275\u0275defineComponent({type:r,selectors:[["mat-optgroup"]],hostAttrs:[1,"mat-optgroup"],hostVars:5,hostBindings:function(h,m){2&h&&(n.\u0275\u0275attribute("role",m._inert?null:"group")("aria-disabled",m._inert?null:m.disabled.toString())("aria-labelledby",m._inert?null:m._labelId),n.\u0275\u0275classProp("mat-optgroup-disabled",m.disabled))},inputs:{disabled:"disabled"},exportAs:["matOptgroup"],features:[n.\u0275\u0275ProvidersFeature([{provide:C.MAT_OPTGROUP,useExisting:r}]),n.\u0275\u0275InheritDefinitionFeature],ngContentSelectors:o,decls:4,vars:2,consts:[["role","presentation",1,"mat-optgroup-label",3,"id"]],template:function(h,m){1&h&&(n.\u0275\u0275projectionDef(b),n.\u0275\u0275elementStart(0,"span",0),n.\u0275\u0275text(1),n.\u0275\u0275projection(2),n.\u0275\u0275elementEnd(),n.\u0275\u0275projection(3,1)),2&h&&(n.\u0275\u0275property("id",m._labelId),n.\u0275\u0275advance(1),n.\u0275\u0275textInterpolate1("",m.label," "))},styles:[".mat-optgroup-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;line-height:48px;height:48px;padding:0 16px;text-align:left;text-decoration:none;max-width:100%;-webkit-user-select:none;user-select:none;cursor:default}.mat-optgroup-label[disabled]{cursor:default}[dir=rtl] .mat-optgroup-label{text-align:right}.mat-optgroup-label .mat-icon{margin-right:16px;vertical-align:middle}.mat-optgroup-label .mat-icon svg{vertical-align:top}[dir=rtl] .mat-optgroup-label .mat-icon{margin-left:16px;margin-right:0}"],encapsulation:2,changeDetection:0}),r})(),l=(()=>{class r extends C._MatOptionBase{constructor(h,m,_,M){super(h,m,_,M)}}return r.\u0275fac=function(h){return new(h||r)(n.\u0275\u0275directiveInject(n.ElementRef),n.\u0275\u0275directiveInject(n.ChangeDetectorRef),n.\u0275\u0275directiveInject(C.MAT_OPTION_PARENT_COMPONENT,8),n.\u0275\u0275directiveInject(C.MAT_OPTGROUP,8))},r.\u0275cmp=n.\u0275\u0275defineComponent({type:r,selectors:[["mat-option"]],hostAttrs:["role","option",1,"mat-option","mat-focus-indicator"],hostVars:12,hostBindings:function(h,m){1&h&&n.\u0275\u0275listener("click",function(){return m._selectViaInteraction()})("keydown",function(M){return m._handleKeydown(M)}),2&h&&(n.\u0275\u0275hostProperty("id",m.id),n.\u0275\u0275attribute("tabindex",m._getTabIndex())("aria-selected",m.selected)("aria-disabled",m.disabled.toString()),n.\u0275\u0275classProp("mat-selected",m.selected)("mat-option-multiple",m.multiple)("mat-active",m.active)("mat-option-disabled",m.disabled))},exportAs:["matOption"],features:[n.\u0275\u0275InheritDefinitionFeature],ngContentSelectors:c,decls:6,vars:4,consts:[["class","mat-option-pseudo-checkbox",3,"state","disabled",4,"ngIf"],[1,"mat-option-text"],["text",""],["class","cdk-visually-hidden",4,"ngIf"],["mat-ripple","",1,"mat-option-ripple",3,"matRippleTrigger","matRippleDisabled"],[1,"mat-option-pseudo-checkbox",3,"state","disabled"],[1,"cdk-visually-hidden"]],template:function(h,m){1&h&&(n.\u0275\u0275projectionDef(),n.\u0275\u0275template(0,v,1,2,"mat-pseudo-checkbox",0),n.\u0275\u0275elementStart(1,"span",1,2),n.\u0275\u0275projection(3),n.\u0275\u0275elementEnd(),n.\u0275\u0275template(4,a,2,1,"span",3),n.\u0275\u0275element(5,"div",4)),2&h&&(n.\u0275\u0275property("ngIf",m.multiple),n.\u0275\u0275advance(4),n.\u0275\u0275property("ngIf",m.group&&m.group._inert),n.\u0275\u0275advance(1),n.\u0275\u0275property("matRippleTrigger",m._getHostElement())("matRippleDisabled",m.disabled||m.disableRipple))},dependencies:[C.MatRipple,p.NgIf,C.MatPseudoCheckbox],styles:['.mat-option{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;line-height:48px;height:48px;padding:0 16px;text-align:left;text-decoration:none;max-width:100%;position:relative;cursor:pointer;outline:none;display:flex;flex-direction:row;max-width:100%;box-sizing:border-box;align-items:center;-webkit-tap-highlight-color:rgba(0,0,0,0)}.mat-option[disabled]{cursor:default}[dir=rtl] .mat-option{text-align:right}.mat-option .mat-icon{margin-right:16px;vertical-align:middle}.mat-option .mat-icon svg{vertical-align:top}[dir=rtl] .mat-option .mat-icon{margin-left:16px;margin-right:0}.mat-option[aria-disabled=true]{-webkit-user-select:none;user-select:none;cursor:default}.mat-optgroup .mat-option:not(.mat-option-multiple){padding-left:32px}[dir=rtl] .mat-optgroup .mat-option:not(.mat-option-multiple){padding-left:16px;padding-right:32px}.mat-option.mat-active::before{content:""}.cdk-high-contrast-active .mat-option[aria-disabled=true]{opacity:.5}.cdk-high-contrast-active .mat-option.mat-selected:not(.mat-option-multiple)::after{content:"";position:absolute;top:50%;right:16px;transform:translateY(-50%);width:10px;height:0;border-bottom:solid 10px;border-radius:10px}[dir=rtl] .cdk-high-contrast-active .mat-option.mat-selected:not(.mat-option-multiple)::after{right:auto;left:16px}.mat-option-text{display:inline-block;flex-grow:1;overflow:hidden;text-overflow:ellipsis}.mat-option .mat-option-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}.mat-option-pseudo-checkbox{margin-right:8px}[dir=rtl] .mat-option-pseudo-checkbox{margin-left:8px;margin-right:0}'],encapsulation:2,changeDetection:0}),r})(),d=(()=>{class r{}return r.\u0275fac=function(h){return new(h||r)},r.\u0275mod=n.\u0275\u0275defineNgModule({type:r}),r.\u0275inj=n.\u0275\u0275defineInjector({imports:[C.MatRippleModule,p.CommonModule,C.MatCommonModule,C.MatPseudoCheckboxModule]}),r})()},4187:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{MAT_LEGACY_ERROR:()=>o.ab,MAT_LEGACY_FORM_FIELD:()=>o.G_,MAT_LEGACY_FORM_FIELD_DEFAULT_OPTIONS:()=>Xe,MAT_LEGACY_PREFIX:()=>o.Px,MAT_LEGACY_SUFFIX:()=>o.Ve,MatLegacyError:()=>Y,MatLegacyFormField:()=>Be,MatLegacyFormFieldControl:()=>o.Eo,MatLegacyFormFieldModule:()=>Mt,MatLegacyHint:()=>me,MatLegacyLabel:()=>$,MatLegacyPlaceholder:()=>q,MatLegacyPrefix:()=>$e,MatLegacySuffix:()=>st,_MAT_LEGACY_HINT:()=>ne,getMatLegacyFormFieldDuplicatedHintError:()=>o.Bi,getMatLegacyFormFieldMissingControlError:()=>o.Lv,getMatLegacyFormFieldPlaceholderConflictError:()=>o.UO,matLegacyFormFieldAnimations:()=>o.TN});var n=g(7131),p=g(6814),C=g(5879),b=g(3680),o=g(1043),v=g(9388),a=g(2495),c=g(8645),s=g(3019),l=g(2438),d=g(7921),r=g(9773),u=g(8180),h=g(2831);const m=["connectionContainer"],_=["inputContainer"],M=["label"];function x(tt,St){1&tt&&(C.\u0275\u0275elementContainerStart(0),C.\u0275\u0275elementStart(1,"div",14),C.\u0275\u0275element(2,"div",15)(3,"div",16)(4,"div",17),C.\u0275\u0275elementEnd(),C.\u0275\u0275elementStart(5,"div",18),C.\u0275\u0275element(6,"div",15)(7,"div",16)(8,"div",17),C.\u0275\u0275elementEnd(),C.\u0275\u0275elementContainerEnd())}function w(tt,St){if(1&tt){const bt=C.\u0275\u0275getCurrentView();C.\u0275\u0275elementStart(0,"div",19),C.\u0275\u0275listener("cdkObserveContent",function(){C.\u0275\u0275restoreView(bt);const nt=C.\u0275\u0275nextContext();return C.\u0275\u0275resetView(nt.updateOutlineGap())}),C.\u0275\u0275projection(1,1),C.\u0275\u0275elementEnd()}if(2&tt){const bt=C.\u0275\u0275nextContext();C.\u0275\u0275property("cdkObserveContentDisabled","outline"!=bt.appearance)}}function L(tt,St){if(1&tt&&(C.\u0275\u0275elementContainerStart(0),C.\u0275\u0275projection(1,2),C.\u0275\u0275elementStart(2,"span"),C.\u0275\u0275text(3),C.\u0275\u0275elementEnd(),C.\u0275\u0275elementContainerEnd()),2&tt){const bt=C.\u0275\u0275nextContext(2);C.\u0275\u0275advance(3),C.\u0275\u0275textInterpolate(bt._control.placeholder)}}function A(tt,St){1&tt&&C.\u0275\u0275projection(0,3,["*ngSwitchCase","true"])}function T(tt,St){1&tt&&(C.\u0275\u0275elementStart(0,"span",23),C.\u0275\u0275text(1," *"),C.\u0275\u0275elementEnd())}function O(tt,St){if(1&tt){const bt=C.\u0275\u0275getCurrentView();C.\u0275\u0275elementStart(0,"label",20,21),C.\u0275\u0275listener("cdkObserveContent",function(){C.\u0275\u0275restoreView(bt);const nt=C.\u0275\u0275nextContext();return C.\u0275\u0275resetView(nt.updateOutlineGap())}),C.\u0275\u0275template(2,L,4,1,"ng-container",12),C.\u0275\u0275template(3,A,1,0,"ng-content",12),C.\u0275\u0275template(4,T,2,0,"span",22),C.\u0275\u0275elementEnd()}if(2&tt){const bt=C.\u0275\u0275nextContext();C.\u0275\u0275classProp("mat-empty",bt._control.empty&&!bt._shouldAlwaysFloat())("mat-form-field-empty",bt._control.empty&&!bt._shouldAlwaysFloat())("mat-accent","accent"==bt.color)("mat-warn","warn"==bt.color),C.\u0275\u0275property("cdkObserveContentDisabled","outline"!=bt.appearance)("id",bt._labelId)("ngSwitch",bt._hasLabel()),C.\u0275\u0275attribute("for",bt._control.id)("aria-owns",bt._control.id),C.\u0275\u0275advance(2),C.\u0275\u0275property("ngSwitchCase",!1),C.\u0275\u0275advance(1),C.\u0275\u0275property("ngSwitchCase",!0),C.\u0275\u0275advance(1),C.\u0275\u0275property("ngIf",!bt.hideRequiredMarker&&bt._control.required&&!bt._control.disabled)}}function E(tt,St){1&tt&&(C.\u0275\u0275elementStart(0,"div",24),C.\u0275\u0275projection(1,4),C.\u0275\u0275elementEnd())}function D(tt,St){if(1&tt&&(C.\u0275\u0275elementStart(0,"div",25),C.\u0275\u0275element(1,"span",26),C.\u0275\u0275elementEnd()),2&tt){const bt=C.\u0275\u0275nextContext();C.\u0275\u0275advance(1),C.\u0275\u0275classProp("mat-accent","accent"==bt.color)("mat-warn","warn"==bt.color)}}function R(tt,St){if(1&tt&&(C.\u0275\u0275elementStart(0,"div"),C.\u0275\u0275projection(1,5),C.\u0275\u0275elementEnd()),2&tt){const bt=C.\u0275\u0275nextContext();C.\u0275\u0275property("@transitionMessages",bt._subscriptAnimationState)}}function j(tt,St){if(1&tt&&(C.\u0275\u0275elementStart(0,"div",30),C.\u0275\u0275text(1),C.\u0275\u0275elementEnd()),2&tt){const bt=C.\u0275\u0275nextContext(2);C.\u0275\u0275property("id",bt._hintLabelId),C.\u0275\u0275advance(1),C.\u0275\u0275textInterpolate(bt.hintLabel)}}function N(tt,St){if(1&tt&&(C.\u0275\u0275elementStart(0,"div",27),C.\u0275\u0275template(1,j,2,2,"div",28),C.\u0275\u0275projection(2,6),C.\u0275\u0275element(3,"div",29),C.\u0275\u0275projection(4,7),C.\u0275\u0275elementEnd()),2&tt){const bt=C.\u0275\u0275nextContext();C.\u0275\u0275property("@transitionMessages",bt._subscriptAnimationState),C.\u0275\u0275advance(1),C.\u0275\u0275property("ngIf",bt.hintLabel)}}const S=["*",[["","matPrefix",""]],[["mat-placeholder"]],[["mat-label"]],[["","matSuffix",""]],[["mat-error"]],[["mat-hint",3,"align","end"]],[["mat-hint","align","end"]]],k=["*","[matPrefix]","mat-placeholder","mat-label","[matSuffix]","mat-error","mat-hint:not([align='end'])","mat-hint[align='end']"];let F=0,Y=(()=>{class tt{constructor(bt,xt){this.id="mat-error-"+F++,bt||xt.nativeElement.setAttribute("aria-live","polite")}}return tt.\u0275fac=function(bt){return new(bt||tt)(C.\u0275\u0275injectAttribute("aria-live"),C.\u0275\u0275directiveInject(C.ElementRef))},tt.\u0275dir=C.\u0275\u0275defineDirective({type:tt,selectors:[["mat-error"]],hostAttrs:["aria-atomic","true",1,"mat-error"],hostVars:1,hostBindings:function(bt,xt){2&bt&&C.\u0275\u0275attribute("id",xt.id)},inputs:{id:"id"},features:[C.\u0275\u0275ProvidersFeature([{provide:o.ab,useExisting:tt}])]}),tt})(),se=0;const ne=new C.InjectionToken("MatHint");let me=(()=>{class tt{constructor(){this.align="start",this.id="mat-hint-"+se++}}return tt.\u0275fac=function(bt){return new(bt||tt)},tt.\u0275dir=C.\u0275\u0275defineDirective({type:tt,selectors:[["mat-hint"]],hostAttrs:[1,"mat-hint"],hostVars:4,hostBindings:function(bt,xt){2&bt&&(C.\u0275\u0275attribute("id",xt.id)("align",null),C.\u0275\u0275classProp("mat-form-field-hint-end","end"===xt.align))},inputs:{align:"align",id:"id"},features:[C.\u0275\u0275ProvidersFeature([{provide:ne,useExisting:tt}])]}),tt})(),$=(()=>{class tt{}return tt.\u0275fac=function(bt){return new(bt||tt)},tt.\u0275dir=C.\u0275\u0275defineDirective({type:tt,selectors:[["mat-label"]]}),tt})(),q=(()=>{class tt{}return tt.\u0275fac=function(bt){return new(bt||tt)},tt.\u0275dir=C.\u0275\u0275defineDirective({type:tt,selectors:[["mat-placeholder"]]}),tt})(),Q=0;const Oe=(0,b.mixinColor)(class{constructor(tt){this._elementRef=tt}},"primary"),Xe=new C.InjectionToken("MAT_FORM_FIELD_DEFAULT_OPTIONS");let Be=(()=>{class tt extends Oe{get appearance(){return this._appearance}set appearance(bt){const xt=this._appearance;this._appearance=bt||this._defaults?.appearance||"legacy","outline"===this._appearance&&xt!==bt&&(this._outlineGapCalculationNeededOnStable=!0)}get hideRequiredMarker(){return this._hideRequiredMarker}set hideRequiredMarker(bt){this._hideRequiredMarker=(0,a.Ig)(bt)}_shouldAlwaysFloat(){return"always"===this.floatLabel&&!this._showAlwaysAnimate}_canLabelFloat(){return"never"!==this.floatLabel}get hintLabel(){return this._hintLabel}set hintLabel(bt){this._hintLabel=bt,this._processHints()}get floatLabel(){return"legacy"!==this.appearance&&"never"===this._floatLabel?"auto":this._floatLabel}set floatLabel(bt){bt!==this._floatLabel&&(this._floatLabel=bt||this._getDefaultFloatLabelState(),this._changeDetectorRef.markForCheck())}get _control(){return this._explicitFormFieldControl||this._controlNonStatic||this._controlStatic}set _control(bt){this._explicitFormFieldControl=bt}constructor(bt,xt,nt,ot,vt,rt,J){super(bt),this._changeDetectorRef=xt,this._dir=nt,this._defaults=ot,this._platform=vt,this._ngZone=rt,this._outlineGapCalculationNeededImmediately=!1,this._outlineGapCalculationNeededOnStable=!1,this._destroyed=new c.x,this._hideRequiredMarker=!1,this._showAlwaysAnimate=!1,this._subscriptAnimationState="",this._hintLabel="",this._hintLabelId="mat-hint-"+Q++,this._labelId="mat-form-field-label-"+Q++,this.floatLabel=this._getDefaultFloatLabelState(),this._animationsEnabled="NoopAnimations"!==J,this.appearance=ot?.appearance||"legacy",ot&&(this._hideRequiredMarker=!!ot.hideRequiredMarker,ot.color&&(this.color=this.defaultColor=ot.color))}getLabelId(){return this._hasFloatingLabel()?this._labelId:null}getConnectedOverlayOrigin(){return this._connectionContainerRef||this._elementRef}ngAfterContentInit(){this._validateControlChild();const bt=this._control;bt.controlType&&this._elementRef.nativeElement.classList.add(`mat-form-field-type-${bt.controlType}`),bt.stateChanges.pipe((0,d.O)(null)).subscribe(()=>{this._validatePlaceholders(),this._syncDescribedByIds(),this._changeDetectorRef.markForCheck()}),bt.ngControl&&bt.ngControl.valueChanges&&bt.ngControl.valueChanges.pipe((0,r.R)(this._destroyed)).subscribe(()=>this._changeDetectorRef.markForCheck()),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.pipe((0,r.R)(this._destroyed)).subscribe(()=>{this._outlineGapCalculationNeededOnStable&&this.updateOutlineGap()})}),(0,s.T)(this._prefixChildren.changes,this._suffixChildren.changes).subscribe(()=>{this._outlineGapCalculationNeededOnStable=!0,this._changeDetectorRef.markForCheck()}),this._hintChildren.changes.pipe((0,d.O)(null)).subscribe(()=>{this._processHints(),this._changeDetectorRef.markForCheck()}),this._errorChildren.changes.pipe((0,d.O)(null)).subscribe(()=>{this._syncDescribedByIds(),this._changeDetectorRef.markForCheck()}),this._dir&&this._dir.change.pipe((0,r.R)(this._destroyed)).subscribe(()=>{"function"==typeof requestAnimationFrame?this._ngZone.runOutsideAngular(()=>{requestAnimationFrame(()=>this.updateOutlineGap())}):this.updateOutlineGap()})}ngAfterContentChecked(){this._validateControlChild(),this._outlineGapCalculationNeededImmediately&&this.updateOutlineGap()}ngAfterViewInit(){this._subscriptAnimationState="enter",this._changeDetectorRef.detectChanges()}ngOnDestroy(){this._destroyed.next(),this._destroyed.complete()}_shouldForward(bt){const xt=this._control?this._control.ngControl:null;return xt&&xt[bt]}_hasPlaceholder(){return!!(this._control&&this._control.placeholder||this._placeholderChild)}_hasLabel(){return!(!this._labelChildNonStatic&&!this._labelChildStatic)}_shouldLabelFloat(){return this._canLabelFloat()&&(this._control&&this._control.shouldLabelFloat||this._shouldAlwaysFloat())}_hideControlPlaceholder(){return"legacy"===this.appearance&&!this._hasLabel()||this._hasLabel()&&!this._shouldLabelFloat()}_hasFloatingLabel(){return this._hasLabel()||"legacy"===this.appearance&&this._hasPlaceholder()}_getDisplayedMessages(){return this._errorChildren&&this._errorChildren.length>0&&this._control.errorState?"error":"hint"}_animateAndLockLabel(){this._hasFloatingLabel()&&this._canLabelFloat()&&(this._animationsEnabled&&this._label&&(this._showAlwaysAnimate=!0,(0,l.R)(this._label.nativeElement,"transitionend").pipe((0,u.q)(1)).subscribe(()=>{this._showAlwaysAnimate=!1})),this.floatLabel="always",this._changeDetectorRef.markForCheck())}_validatePlaceholders(){}_processHints(){this._validateHints(),this._syncDescribedByIds()}_validateHints(){}_getDefaultFloatLabelState(){return this._defaults&&this._defaults.floatLabel||"auto"}_syncDescribedByIds(){if(this._control){let bt=[];if(this._control.userAriaDescribedBy&&"string"==typeof this._control.userAriaDescribedBy&&bt.push(...this._control.userAriaDescribedBy.split(" ")),"hint"===this._getDisplayedMessages()){const xt=this._hintChildren?this._hintChildren.find(ot=>"start"===ot.align):null,nt=this._hintChildren?this._hintChildren.find(ot=>"end"===ot.align):null;xt?bt.push(xt.id):this._hintLabel&&bt.push(this._hintLabelId),nt&&bt.push(nt.id)}else this._errorChildren&&bt.push(...this._errorChildren.map(xt=>xt.id));this._control.setDescribedByIds(bt)}}_validateControlChild(){}updateOutlineGap(){const bt=this._label?this._label.nativeElement:null,xt=this._connectionContainerRef.nativeElement,nt=".mat-form-field-outline-start",ot=".mat-form-field-outline-gap";if("outline"!==this.appearance||!this._platform.isBrowser)return;if(!bt||!bt.children.length||!bt.textContent.trim()){const ee=xt.querySelectorAll(`${nt}, ${ot}`);for(let ae=0;ae0?.75*Te+10:0}for(let ee=0;ee{class tt{}return tt.\u0275fac=function(bt){return new(bt||tt)},tt.\u0275dir=C.\u0275\u0275defineDirective({type:tt,selectors:[["","matPrefix",""]],features:[C.\u0275\u0275ProvidersFeature([{provide:o.Px,useExisting:tt}])]}),tt})(),st=(()=>{class tt{}return tt.\u0275fac=function(bt){return new(bt||tt)},tt.\u0275dir=C.\u0275\u0275defineDirective({type:tt,selectors:[["","matSuffix",""]],features:[C.\u0275\u0275ProvidersFeature([{provide:o.Ve,useExisting:tt}])]}),tt})(),Mt=(()=>{class tt{}return tt.\u0275fac=function(bt){return new(bt||tt)},tt.\u0275mod=C.\u0275\u0275defineNgModule({type:tt}),tt.\u0275inj=C.\u0275\u0275defineInjector({imports:[p.CommonModule,b.MatCommonModule,n.Q8,b.MatCommonModule]}),tt})()},2400:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{MAT_LEGACY_INPUT_VALUE_ACCESSOR:()=>p.Jk,MatLegacyInput:()=>a,MatLegacyInputModule:()=>c,getMatLegacyInputUnsupportedTypeError:()=>p.b7});var n=g(5879),p=g(4516),C=g(1043),b=g(4187),o=g(6263),v=g(3680);let a=(()=>{class s extends p.Nt{constructor(){super(...arguments),this._legacyFormField=(0,n.inject)(C.G_,{optional:!0})}_getPlaceholder(){const d=this._legacyFormField;return d&&"legacy"===d.appearance&&!d._hasLabel?.()?null:this.placeholder}}return s.\u0275fac=function(){let l;return function(r){return(l||(l=n.\u0275\u0275getInheritedFactory(s)))(r||s)}}(),s.\u0275dir=n.\u0275\u0275defineDirective({type:s,selectors:[["input","matInput",""],["textarea","matInput",""],["select","matNativeControl",""],["input","matNativeControl",""],["textarea","matNativeControl",""]],hostAttrs:[1,"mat-input-element","mat-form-field-autofill-control"],hostVars:15,hostBindings:function(d,r){2&d&&(n.\u0275\u0275attribute("data-placeholder",r.placeholder),n.\u0275\u0275classProp("mat-input-server",r._isServer)("mat-mdc-input-element",!1)("mat-mdc-form-field-textarea-control",!1)("mat-mdc-form-field-input-control",!1)("mdc-text-field__input",!1)("mat-mdc-native-select-inline",!1)("mat-native-select-inline",r._isInlineSelect()))},exportAs:["matInput"],features:[n.\u0275\u0275ProvidersFeature([{provide:C.Eo,useExisting:s}]),n.\u0275\u0275InheritDefinitionFeature]}),s})(),c=(()=>{class s{}return s.\u0275fac=function(d){return new(d||s)},s.\u0275mod=n.\u0275\u0275defineNgModule({type:s}),s.\u0275inj=n.\u0275\u0275defineInjector({providers:[v.ErrorStateMatcher],imports:[o.Ky,b.MatLegacyFormFieldModule,v.MatCommonModule,o.Ky,b.MatLegacyFormFieldModule]}),s})()},6718:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{MAT_LEGACY_MENU_CONTENT:()=>me,MAT_LEGACY_MENU_DEFAULT_OPTIONS:()=>Xe,MAT_LEGACY_MENU_PANEL:()=>S,MAT_LEGACY_MENU_SCROLL_STRATEGY:()=>Mt,MatLegacyMenu:()=>ie,MatLegacyMenuContent:()=>ct,MatLegacyMenuItem:()=>pe,MatLegacyMenuModule:()=>Lt,MatLegacyMenuTrigger:()=>Te,fadeInLegacyItems:()=>ue,matLegacyMenuAnimations:()=>Q,transformLegacyMenu:()=>Me});var n=g(5879),p=g(4300),C=g(2495),b=g(6028),o=g(8645),v=g(3019),a=g(7394),c=g(2096),s=g(6410),l=g(7921),d=g(4664),r=g(8180),u=g(9773),h=g(2181),m=g(7547),_=g(3680),M=g(6814),x=g(8484),w=g(6825),L=g(9388),A=g(9594),T=g(2831);const O=["mat-menu-item",""];function E(Dt,Kt){1&Dt&&(n.\u0275\u0275namespaceSVG(),n.\u0275\u0275elementStart(0,"svg",3),n.\u0275\u0275element(1,"polygon",4),n.\u0275\u0275elementEnd())}const D=[[["mat-icon"],["","matMenuItemIcon",""]],"*"],R=["mat-icon, [matMenuItemIcon]","*"],S=new n.InjectionToken("MAT_MENU_PANEL"),k=(0,_.mixinDisableRipple)((0,_.mixinDisabled)(class{}));let F=(()=>{class Dt extends k{constructor(ze,yt,Bt,$t,Yt){super(),this._elementRef=ze,this._document=yt,this._focusMonitor=Bt,this._parentMenu=$t,this._changeDetectorRef=Yt,this.role="menuitem",this._hovered=new o.x,this._focused=new o.x,this._highlighted=!1,this._triggersSubmenu=!1,$t?.addItem?.(this)}focus(ze,yt){this._focusMonitor&&ze?this._focusMonitor.focusVia(this._getHostElement(),ze,yt):this._getHostElement().focus(yt),this._focused.next(this)}ngAfterViewInit(){this._focusMonitor&&this._focusMonitor.monitor(this._elementRef,!1)}ngOnDestroy(){this._focusMonitor&&this._focusMonitor.stopMonitoring(this._elementRef),this._parentMenu&&this._parentMenu.removeItem&&this._parentMenu.removeItem(this),this._hovered.complete(),this._focused.complete()}_getTabIndex(){return this.disabled?"-1":"0"}_getHostElement(){return this._elementRef.nativeElement}_checkDisabled(ze){this.disabled&&(ze.preventDefault(),ze.stopPropagation())}_handleMouseEnter(){this._hovered.next(this)}getLabel(){const ze=this._elementRef.nativeElement.cloneNode(!0),yt=ze.querySelectorAll("mat-icon, .material-icons");for(let Bt=0;Bt{class Dt{constructor(ze,yt,Bt,$t,Yt,Ue,We){this._template=ze,this._componentFactoryResolver=yt,this._appRef=Bt,this._injector=$t,this._viewContainerRef=Yt,this._document=Ue,this._changeDetectorRef=We,this._attached=new o.x}attach(ze={}){this._portal||(this._portal=new x.UE(this._template,this._viewContainerRef)),this.detach(),this._outlet||(this._outlet=new x.u0(this._document.createElement("div"),this._componentFactoryResolver,this._appRef,this._injector));const yt=this._template.elementRef.nativeElement;yt.parentNode.insertBefore(this._outlet.outletElement,yt),this._changeDetectorRef?.markForCheck(),this._portal.attach(this._outlet,ze),this._attached.next()}detach(){this._portal.isAttached&&this._portal.detach()}ngOnDestroy(){this._outlet&&this._outlet.dispose()}}return Dt.\u0275fac=function(ze){return new(ze||Dt)(n.\u0275\u0275directiveInject(n.TemplateRef),n.\u0275\u0275directiveInject(n.ComponentFactoryResolver),n.\u0275\u0275directiveInject(n.ApplicationRef),n.\u0275\u0275directiveInject(n.Injector),n.\u0275\u0275directiveInject(n.ViewContainerRef),n.\u0275\u0275directiveInject(M.DOCUMENT),n.\u0275\u0275directiveInject(n.ChangeDetectorRef))},Dt.\u0275dir=n.\u0275\u0275defineDirective({type:Dt}),Dt})();const Q={transformMenu:(0,w.X$)("transformMenu",[(0,w.SB)("void",(0,w.oB)({opacity:0,transform:"scale(0.8)"})),(0,w.eR)("void => enter",(0,w.jt)("120ms cubic-bezier(0, 0, 0.2, 1)",(0,w.oB)({opacity:1,transform:"scale(1)"}))),(0,w.eR)("* => void",(0,w.jt)("100ms 25ms linear",(0,w.oB)({opacity:0})))]),fadeInItems:(0,w.X$)("fadeInItems",[(0,w.SB)("showing",(0,w.oB)({opacity:1})),(0,w.eR)("void => *",[(0,w.oB)({opacity:0}),(0,w.jt)("400ms 100ms cubic-bezier(0.55, 0, 0.55, 0.2)")])])},ue=Q.fadeInItems,Me=Q.transformMenu;let Oe=0;const Xe=new n.InjectionToken("mat-menu-default-options",{providedIn:"root",factory:function Be(){return{overlapTrigger:!1,xPosition:"after",yPosition:"below",backdropClass:"cdk-overlay-transparent-backdrop"}}});let $e=(()=>{class Dt{get xPosition(){return this._xPosition}set xPosition(ze){this._xPosition=ze,this.setPositionClasses()}get yPosition(){return this._yPosition}set yPosition(ze){this._yPosition=ze,this.setPositionClasses()}get overlapTrigger(){return this._overlapTrigger}set overlapTrigger(ze){this._overlapTrigger=(0,C.Ig)(ze)}get hasBackdrop(){return this._hasBackdrop}set hasBackdrop(ze){this._hasBackdrop=(0,C.Ig)(ze)}set panelClass(ze){const yt=this._previousPanelClass;yt&&yt.length&&yt.split(" ").forEach(Bt=>{this._classList[Bt]=!1}),this._previousPanelClass=ze,ze&&ze.length&&(ze.split(" ").forEach(Bt=>{this._classList[Bt]=!0}),this._elementRef.nativeElement.className="")}get classList(){return this.panelClass}set classList(ze){this.panelClass=ze}constructor(ze,yt,Bt,$t){this._elementRef=ze,this._ngZone=yt,this._changeDetectorRef=$t,this._directDescendantItems=new n.QueryList,this._classList={},this._panelAnimationState="void",this._animationDone=new o.x,this.closed=new n.EventEmitter,this.close=this.closed,this.panelId="mat-menu-panel-"+Oe++,this.overlayPanelClass=Bt.overlayPanelClass||"",this._xPosition=Bt.xPosition,this._yPosition=Bt.yPosition,this.backdropClass=Bt.backdropClass,this._overlapTrigger=Bt.overlapTrigger,this._hasBackdrop=Bt.hasBackdrop}ngOnInit(){this.setPositionClasses()}ngAfterContentInit(){this._updateDirectDescendants(),this._keyManager=new p.Em(this._directDescendantItems).withWrap().withTypeAhead().withHomeAndEnd(),this._keyManager.tabOut.subscribe(()=>this.closed.emit("tab")),this._directDescendantItems.changes.pipe((0,l.O)(this._directDescendantItems),(0,d.w)(ze=>(0,v.T)(...ze.map(yt=>yt._focused)))).subscribe(ze=>this._keyManager.updateActiveItem(ze)),this._directDescendantItems.changes.subscribe(ze=>{const yt=this._keyManager;if("enter"===this._panelAnimationState&&yt.activeItem?._hasFocus()){const Bt=ze.toArray(),$t=Math.max(0,Math.min(Bt.length-1,yt.activeItemIndex||0));Bt[$t]&&!Bt[$t].disabled?yt.setActiveItem($t):yt.setNextItemActive()}})}ngOnDestroy(){this._keyManager?.destroy(),this._directDescendantItems.destroy(),this.closed.complete(),this._firstItemFocusSubscription?.unsubscribe()}_hovered(){return this._directDescendantItems.changes.pipe((0,l.O)(this._directDescendantItems),(0,d.w)(yt=>(0,v.T)(...yt.map(Bt=>Bt._hovered))))}addItem(ze){}removeItem(ze){}_handleKeydown(ze){const yt=ze.keyCode,Bt=this._keyManager;switch(yt){case b.hY:(0,b.Vb)(ze)||(ze.preventDefault(),this.closed.emit("keydown"));break;case b.oh:this.parentMenu&&"ltr"===this.direction&&this.closed.emit("keydown");break;case b.SV:this.parentMenu&&"rtl"===this.direction&&this.closed.emit("keydown");break;default:return(yt===b.LH||yt===b.JH)&&Bt.setFocusOrigin("keyboard"),void Bt.onKeydown(ze)}ze.stopPropagation()}focusFirstItem(ze="program"){this._firstItemFocusSubscription?.unsubscribe(),this._firstItemFocusSubscription=this._ngZone.onStable.pipe((0,r.q)(1)).subscribe(()=>{let yt=null;if(this._directDescendantItems.length&&(yt=this._directDescendantItems.first._getHostElement().closest('[role="menu"]')),!yt||!yt.contains(document.activeElement)){const Bt=this._keyManager;Bt.setFocusOrigin(ze).setFirstItemActive(),!Bt.activeItem&&yt&&yt.focus()}})}resetActiveItem(){this._keyManager.setActiveItem(-1)}setElevation(ze){const yt=Math.min(this._baseElevation+ze,24),Bt=`${this._elevationPrefix}${yt}`,$t=Object.keys(this._classList).find(Yt=>Yt.startsWith(this._elevationPrefix));(!$t||$t===this._previousElevation)&&(this._previousElevation&&(this._classList[this._previousElevation]=!1),this._classList[Bt]=!0,this._previousElevation=Bt)}setPositionClasses(ze=this.xPosition,yt=this.yPosition){const Bt=this._classList;Bt["mat-menu-before"]="before"===ze,Bt["mat-menu-after"]="after"===ze,Bt["mat-menu-above"]="above"===yt,Bt["mat-menu-below"]="below"===yt,this._changeDetectorRef?.markForCheck()}_startAnimation(){this._panelAnimationState="enter"}_resetAnimation(){this._panelAnimationState="void"}_onAnimationDone(ze){this._animationDone.next(ze),this._isAnimating=!1}_onAnimationStart(ze){this._isAnimating=!0,"enter"===ze.toState&&0===this._keyManager.activeItemIndex&&(ze.element.scrollTop=0)}_updateDirectDescendants(){this._allItems.changes.pipe((0,l.O)(this._allItems)).subscribe(ze=>{this._directDescendantItems.reset(ze.filter(yt=>yt._parentMenu===this)),this._directDescendantItems.notifyOnChanges()})}}return Dt.\u0275fac=function(ze){return new(ze||Dt)(n.\u0275\u0275directiveInject(n.ElementRef),n.\u0275\u0275directiveInject(n.NgZone),n.\u0275\u0275directiveInject(Xe),n.\u0275\u0275directiveInject(n.ChangeDetectorRef))},Dt.\u0275dir=n.\u0275\u0275defineDirective({type:Dt,contentQueries:function(ze,yt,Bt){if(1&ze&&(n.\u0275\u0275contentQuery(Bt,me,5),n.\u0275\u0275contentQuery(Bt,F,5),n.\u0275\u0275contentQuery(Bt,F,4)),2&ze){let $t;n.\u0275\u0275queryRefresh($t=n.\u0275\u0275loadQuery())&&(yt.lazyContent=$t.first),n.\u0275\u0275queryRefresh($t=n.\u0275\u0275loadQuery())&&(yt._allItems=$t),n.\u0275\u0275queryRefresh($t=n.\u0275\u0275loadQuery())&&(yt.items=$t)}},viewQuery:function(ze,yt){if(1&ze&&n.\u0275\u0275viewQuery(n.TemplateRef,5),2&ze){let Bt;n.\u0275\u0275queryRefresh(Bt=n.\u0275\u0275loadQuery())&&(yt.templateRef=Bt.first)}},inputs:{backdropClass:"backdropClass",ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],ariaDescribedby:["aria-describedby","ariaDescribedby"],xPosition:"xPosition",yPosition:"yPosition",overlapTrigger:"overlapTrigger",hasBackdrop:"hasBackdrop",panelClass:["class","panelClass"],classList:"classList"},outputs:{closed:"closed",close:"close"}}),Dt})();const Mt=new n.InjectionToken("mat-menu-scroll-strategy"),St={provide:Mt,deps:[A.aV],useFactory:function tt(Dt){return()=>Dt.scrollStrategies.reposition()}},bt=(0,T.i$)({passive:!0});let nt=(()=>{class Dt{get _deprecatedMatMenuTriggerFor(){return this.menu}set _deprecatedMatMenuTriggerFor(ze){this.menu=ze}get menu(){return this._menu}set menu(ze){ze!==this._menu&&(this._menu=ze,this._menuCloseSubscription.unsubscribe(),ze&&(this._menuCloseSubscription=ze.close.subscribe(yt=>{this._destroyMenu(yt),("click"===yt||"tab"===yt)&&this._parentMaterialMenu&&this._parentMaterialMenu.closed.emit(yt)})),this._menuItemInstance?._setTriggersSubmenu(this.triggersSubmenu()))}constructor(ze,yt,Bt,$t,Yt,Ue,We,ve,we){this._overlay=ze,this._element=yt,this._viewContainerRef=Bt,this._menuItemInstance=Ue,this._dir=We,this._focusMonitor=ve,this._ngZone=we,this._overlayRef=null,this._menuOpen=!1,this._closingActionsSubscription=a.w0.EMPTY,this._hoverSubscription=a.w0.EMPTY,this._menuCloseSubscription=a.w0.EMPTY,this._changeDetectorRef=(0,n.inject)(n.ChangeDetectorRef),this._handleTouchStart=at=>{(0,p.yG)(at)||(this._openedBy="touch")},this._openedBy=void 0,this.restoreFocus=!0,this.menuOpened=new n.EventEmitter,this.onMenuOpen=this.menuOpened,this.menuClosed=new n.EventEmitter,this.onMenuClose=this.menuClosed,this._scrollStrategy=$t,this._parentMaterialMenu=Yt instanceof $e?Yt:void 0,yt.nativeElement.addEventListener("touchstart",this._handleTouchStart,bt)}ngAfterContentInit(){this._handleHover()}ngOnDestroy(){this._overlayRef&&(this._overlayRef.dispose(),this._overlayRef=null),this._element.nativeElement.removeEventListener("touchstart",this._handleTouchStart,bt),this._menuCloseSubscription.unsubscribe(),this._closingActionsSubscription.unsubscribe(),this._hoverSubscription.unsubscribe()}get menuOpen(){return this._menuOpen}get dir(){return this._dir&&"rtl"===this._dir.value?"rtl":"ltr"}triggersSubmenu(){return!!(this._menuItemInstance&&this._parentMaterialMenu&&this.menu)}toggleMenu(){return this._menuOpen?this.closeMenu():this.openMenu()}openMenu(){const ze=this.menu;if(this._menuOpen||!ze)return;const yt=this._createOverlay(ze),Bt=yt.getConfig(),$t=Bt.positionStrategy;this._setPosition(ze,$t),Bt.hasBackdrop=null==ze.hasBackdrop?!this.triggersSubmenu():ze.hasBackdrop,yt.attach(this._getPortal(ze)),ze.lazyContent&&ze.lazyContent.attach(this.menuData),this._closingActionsSubscription=this._menuClosingActions().subscribe(()=>this.closeMenu()),this._initMenu(ze),ze instanceof $e&&(ze._startAnimation(),ze._directDescendantItems.changes.pipe((0,u.R)(ze.close)).subscribe(()=>{$t.withLockedPosition(!1).reapplyLastPosition(),$t.withLockedPosition(!0)}))}closeMenu(){this.menu?.close.emit()}focus(ze,yt){this._focusMonitor&&ze?this._focusMonitor.focusVia(this._element,ze,yt):this._element.nativeElement.focus(yt)}updatePosition(){this._overlayRef?.updatePosition()}_destroyMenu(ze){if(!this._overlayRef||!this.menuOpen)return;const yt=this.menu;this._closingActionsSubscription.unsubscribe(),this._overlayRef.detach(),this.restoreFocus&&("keydown"===ze||!this._openedBy||!this.triggersSubmenu())&&this.focus(this._openedBy),this._openedBy=void 0,yt instanceof $e?(yt._resetAnimation(),yt.lazyContent?yt._animationDone.pipe((0,h.h)(Bt=>"void"===Bt.toState),(0,r.q)(1),(0,u.R)(yt.lazyContent._attached)).subscribe({next:()=>yt.lazyContent.detach(),complete:()=>this._setIsMenuOpen(!1)}):this._setIsMenuOpen(!1)):(this._setIsMenuOpen(!1),yt?.lazyContent?.detach())}_initMenu(ze){ze.parentMenu=this.triggersSubmenu()?this._parentMaterialMenu:void 0,ze.direction=this.dir,this._setMenuElevation(ze),ze.focusFirstItem(this._openedBy||"program"),this._setIsMenuOpen(!0)}_setMenuElevation(ze){if(ze.setElevation){let yt=0,Bt=ze.parentMenu;for(;Bt;)yt++,Bt=Bt.parentMenu;ze.setElevation(yt)}}_setIsMenuOpen(ze){ze!==this._menuOpen&&(this._menuOpen=ze,this._menuOpen?this.menuOpened.emit():this.menuClosed.emit(),this.triggersSubmenu()&&this._menuItemInstance._setHighlighted(ze),this._changeDetectorRef.markForCheck())}_createOverlay(ze){if(!this._overlayRef){const yt=this._getOverlayConfig(ze);this._subscribeToPositions(ze,yt.positionStrategy),this._overlayRef=this._overlay.create(yt),this._overlayRef.keydownEvents().subscribe()}return this._overlayRef}_getOverlayConfig(ze){return new A.X_({positionStrategy:this._overlay.position().flexibleConnectedTo(this._element).withLockedPosition().withGrowAfterOpen().withTransformOriginOn(".mat-menu-panel, .mat-mdc-menu-panel"),backdropClass:ze.backdropClass||"cdk-overlay-transparent-backdrop",panelClass:ze.overlayPanelClass,scrollStrategy:this._scrollStrategy(),direction:this._dir})}_subscribeToPositions(ze,yt){ze.setPositionClasses&&yt.positionChanges.subscribe(Bt=>{const $t="start"===Bt.connectionPair.overlayX?"after":"before",Yt="top"===Bt.connectionPair.overlayY?"below":"above";this._ngZone?this._ngZone.run(()=>ze.setPositionClasses($t,Yt)):ze.setPositionClasses($t,Yt)})}_setPosition(ze,yt){let[Bt,$t]="before"===ze.xPosition?["end","start"]:["start","end"],[Yt,Ue]="above"===ze.yPosition?["bottom","top"]:["top","bottom"],[We,ve]=[Yt,Ue],[we,at]=[Bt,$t],De=0;if(this.triggersSubmenu()){if(at=Bt="before"===ze.xPosition?"start":"end",$t=we="end"===Bt?"start":"end",this._parentMaterialMenu){if(null==this._parentInnerPadding){const je=this._parentMaterialMenu.items.first;this._parentInnerPadding=je?je._getHostElement().offsetTop:0}De="bottom"===Yt?this._parentInnerPadding:-this._parentInnerPadding}}else ze.overlapTrigger||(We="top"===Yt?"bottom":"top",ve="top"===Ue?"bottom":"top");yt.withPositions([{originX:Bt,originY:We,overlayX:we,overlayY:Yt,offsetY:De},{originX:$t,originY:We,overlayX:at,overlayY:Yt,offsetY:De},{originX:Bt,originY:ve,overlayX:we,overlayY:Ue,offsetY:-De},{originX:$t,originY:ve,overlayX:at,overlayY:Ue,offsetY:-De}])}_menuClosingActions(){const ze=this._overlayRef.backdropClick(),yt=this._overlayRef.detachments(),Bt=this._parentMaterialMenu?this._parentMaterialMenu.closed:(0,c.of)(),$t=this._parentMaterialMenu?this._parentMaterialMenu._hovered().pipe((0,h.h)(Yt=>Yt!==this._menuItemInstance),(0,h.h)(()=>this._menuOpen)):(0,c.of)();return(0,v.T)(ze,Bt,$t,yt)}_handleMousedown(ze){(0,p.X6)(ze)||(this._openedBy=0===ze.button?"mouse":void 0,this.triggersSubmenu()&&ze.preventDefault())}_handleKeydown(ze){const yt=ze.keyCode;(yt===b.K5||yt===b.L_)&&(this._openedBy="keyboard"),this.triggersSubmenu()&&(yt===b.SV&&"ltr"===this.dir||yt===b.oh&&"rtl"===this.dir)&&(this._openedBy="keyboard",this.openMenu())}_handleClick(ze){this.triggersSubmenu()?(ze.stopPropagation(),this.openMenu()):this.toggleMenu()}_handleHover(){!this.triggersSubmenu()||!this._parentMaterialMenu||(this._hoverSubscription=this._parentMaterialMenu._hovered().pipe((0,h.h)(ze=>ze===this._menuItemInstance&&!ze.disabled),(0,m.g)(0,s.E)).subscribe(()=>{this._openedBy="mouse",this.menu instanceof $e&&this.menu._isAnimating?this.menu._animationDone.pipe((0,r.q)(1),(0,m.g)(0,s.E),(0,u.R)(this._parentMaterialMenu._hovered())).subscribe(()=>this.openMenu()):this.openMenu()}))}_getPortal(ze){return(!this._portal||this._portal.templateRef!==ze.templateRef)&&(this._portal=new x.UE(ze.templateRef,this._viewContainerRef)),this._portal}}return Dt.\u0275fac=function(ze){return new(ze||Dt)(n.\u0275\u0275directiveInject(A.aV),n.\u0275\u0275directiveInject(n.ElementRef),n.\u0275\u0275directiveInject(n.ViewContainerRef),n.\u0275\u0275directiveInject(Mt),n.\u0275\u0275directiveInject(S,8),n.\u0275\u0275directiveInject(F,10),n.\u0275\u0275directiveInject(L.Is,8),n.\u0275\u0275directiveInject(p.tE),n.\u0275\u0275directiveInject(n.NgZone))},Dt.\u0275dir=n.\u0275\u0275defineDirective({type:Dt,hostVars:3,hostBindings:function(ze,yt){1&ze&&n.\u0275\u0275listener("click",function($t){return yt._handleClick($t)})("mousedown",function($t){return yt._handleMousedown($t)})("keydown",function($t){return yt._handleKeydown($t)}),2&ze&&n.\u0275\u0275attribute("aria-haspopup",yt.menu?"menu":null)("aria-expanded",yt.menuOpen)("aria-controls",yt.menuOpen?yt.menu.panelId:null)},inputs:{_deprecatedMatMenuTriggerFor:["mat-menu-trigger-for","_deprecatedMatMenuTriggerFor"],menu:["matMenuTriggerFor","menu"],menuData:["matMenuTriggerData","menuData"],restoreFocus:["matMenuTriggerRestoreFocus","restoreFocus"]},outputs:{menuOpened:"menuOpened",onMenuOpen:"onMenuOpen",menuClosed:"menuClosed",onMenuClose:"onMenuClose"}}),Dt})();var rt=g(6672);function J(Dt,Kt){if(1&Dt){const ze=n.\u0275\u0275getCurrentView();n.\u0275\u0275elementStart(0,"div",0),n.\u0275\u0275listener("keydown",function(Bt){n.\u0275\u0275restoreView(ze);const $t=n.\u0275\u0275nextContext();return n.\u0275\u0275resetView($t._handleKeydown(Bt))})("click",function(){n.\u0275\u0275restoreView(ze);const Bt=n.\u0275\u0275nextContext();return n.\u0275\u0275resetView(Bt.closed.emit("click"))})("@transformMenu.start",function(Bt){n.\u0275\u0275restoreView(ze);const $t=n.\u0275\u0275nextContext();return n.\u0275\u0275resetView($t._onAnimationStart(Bt))})("@transformMenu.done",function(Bt){n.\u0275\u0275restoreView(ze);const $t=n.\u0275\u0275nextContext();return n.\u0275\u0275resetView($t._onAnimationDone(Bt))}),n.\u0275\u0275elementStart(1,"div",1),n.\u0275\u0275projection(2),n.\u0275\u0275elementEnd()()}if(2&Dt){const ze=n.\u0275\u0275nextContext();n.\u0275\u0275property("id",ze.panelId)("ngClass",ze._classList)("@transformMenu",ze._panelAnimationState),n.\u0275\u0275attribute("aria-label",ze.ariaLabel||null)("aria-labelledby",ze.ariaLabelledby||null)("aria-describedby",ze.ariaDescribedby||null)}}const Ce=["*"],ee=["mat-menu-item",""];function ae(Dt,Kt){1&Dt&&(n.\u0275\u0275namespaceSVG(),n.\u0275\u0275elementStart(0,"svg",2),n.\u0275\u0275element(1,"polygon",3),n.\u0275\u0275elementEnd())}let ie=(()=>{class Dt extends $e{constructor(ze,yt,Bt,$t){super(ze,yt,Bt,$t),this._elevationPrefix="mat-elevation-z",this._baseElevation=4}}return Dt.\u0275fac=function(ze){return new(ze||Dt)(n.\u0275\u0275directiveInject(n.ElementRef),n.\u0275\u0275directiveInject(n.NgZone),n.\u0275\u0275directiveInject(Xe),n.\u0275\u0275directiveInject(n.ChangeDetectorRef))},Dt.\u0275cmp=n.\u0275\u0275defineComponent({type:Dt,selectors:[["mat-menu"]],hostAttrs:["ngSkipHydration",""],hostVars:4,hostBindings:function(ze,yt){2&ze&&n.\u0275\u0275attribute("aria-label",null)("aria-labelledby",null)("aria-describedby",null)("mat-id-collision",null)},exportAs:["matMenu"],features:[n.\u0275\u0275ProvidersFeature([{provide:S,useExisting:Dt}]),n.\u0275\u0275InheritDefinitionFeature],ngContentSelectors:Ce,decls:1,vars:0,consts:[["tabindex","-1","role","menu",1,"mat-menu-panel",3,"id","ngClass","keydown","click"],[1,"mat-menu-content"]],template:function(ze,yt){1&ze&&(n.\u0275\u0275projectionDef(),n.\u0275\u0275template(0,J,3,6,"ng-template"))},dependencies:[M.NgClass],styles:['mat-menu{display:none}.mat-menu-panel{min-width:112px;max-width:280px;overflow:auto;-webkit-overflow-scrolling:touch;max-height:calc(100vh - 48px);border-radius:4px;outline:0;min-height:64px;position:relative}.mat-menu-panel.ng-animating{pointer-events:none}.cdk-high-contrast-active .mat-menu-panel{outline:solid 1px}.mat-menu-content:not(:empty){padding-top:8px;padding-bottom:8px}.mat-menu-item{-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:rgba(0,0,0,0);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;line-height:48px;height:48px;padding:0 16px;text-align:left;text-decoration:none;max-width:100%;position:relative}.mat-menu-item::-moz-focus-inner{border:0}.mat-menu-item[disabled]{cursor:default}[dir=rtl] .mat-menu-item{text-align:right}.mat-menu-item .mat-icon{margin-right:16px;vertical-align:middle}.mat-menu-item .mat-icon svg{vertical-align:top}[dir=rtl] .mat-menu-item .mat-icon{margin-left:16px;margin-right:0}.mat-menu-item[disabled]::after{display:block;position:absolute;content:"";top:0;left:0;bottom:0;right:0}.cdk-high-contrast-active .mat-menu-item{margin-top:1px}.mat-menu-item-submenu-trigger{padding-right:32px}[dir=rtl] .mat-menu-item-submenu-trigger{padding-right:16px;padding-left:32px}.mat-menu-submenu-icon{position:absolute;top:50%;right:16px;transform:translateY(-50%);width:5px;height:10px;fill:currentColor}[dir=rtl] .mat-menu-submenu-icon{right:auto;left:16px;transform:translateY(-50%) scaleX(-1)}.cdk-high-contrast-active .mat-menu-submenu-icon{fill:CanvasText}button.mat-menu-item{width:100%}.mat-menu-item .mat-menu-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}'],encapsulation:2,data:{animation:[Q.transformMenu,Q.fadeInItems]},changeDetection:0}),Dt})(),pe=(()=>{class Dt extends F{}return Dt.\u0275fac=function(){let Kt;return function(yt){return(Kt||(Kt=n.\u0275\u0275getInheritedFactory(Dt)))(yt||Dt)}}(),Dt.\u0275cmp=n.\u0275\u0275defineComponent({type:Dt,selectors:[["","mat-menu-item",""]],hostAttrs:[1,"mat-focus-indicator"],hostVars:20,hostBindings:function(ze,yt){2&ze&&(n.\u0275\u0275attribute("role",yt.role)("tabindex",yt._getTabIndex())("aria-disabled",yt.disabled.toString())("disabled",yt.disabled||null),n.\u0275\u0275classProp("mat-menu-item",!0)("mat-menu-item-highlighted",yt._highlighted)("mat-menu-item-submenu-trigger",yt._triggersSubmenu)("mat-mdc-menu-item",!1)("mat-mdc-focus-indicator",!1)("mdc-list-item",!1)("mat-mdc-menu-item-highlighted",!1)("mat-mdc-menu-item-submenu-trigger",!1))},inputs:{disabled:"disabled",disableRipple:"disableRipple"},exportAs:["matMenuItem"],features:[n.\u0275\u0275ProvidersFeature([{provide:F,useExisting:Dt}]),n.\u0275\u0275InheritDefinitionFeature],attrs:ee,ngContentSelectors:Ce,decls:3,vars:3,consts:[["matRipple","",1,"mat-menu-ripple",3,"matRippleDisabled","matRippleTrigger"],["class","mat-menu-submenu-icon","viewBox","0 0 5 10","focusable","false","aria-hidden","true",4,"ngIf"],["viewBox","0 0 5 10","focusable","false","aria-hidden","true",1,"mat-menu-submenu-icon"],["points","0,0 5,5 0,10"]],template:function(ze,yt){1&ze&&(n.\u0275\u0275projectionDef(),n.\u0275\u0275projection(0),n.\u0275\u0275element(1,"div",0),n.\u0275\u0275template(2,ae,2,0,"svg",1)),2&ze&&(n.\u0275\u0275advance(1),n.\u0275\u0275property("matRippleDisabled",yt.disableRipple||yt.disabled)("matRippleTrigger",yt._getHostElement()),n.\u0275\u0275advance(1),n.\u0275\u0275property("ngIf",yt._triggersSubmenu))},dependencies:[M.NgIf,_.MatRipple],encapsulation:2,changeDetection:0}),Dt})(),Te=(()=>{class Dt extends nt{}return Dt.\u0275fac=function(){let Kt;return function(yt){return(Kt||(Kt=n.\u0275\u0275getInheritedFactory(Dt)))(yt||Dt)}}(),Dt.\u0275dir=n.\u0275\u0275defineDirective({type:Dt,selectors:[["","mat-menu-trigger-for",""],["","matMenuTriggerFor",""]],hostAttrs:[1,"mat-menu-trigger"],exportAs:["matMenuTrigger"],features:[n.\u0275\u0275InheritDefinitionFeature]}),Dt})(),ct=(()=>{class Dt extends ${}return Dt.\u0275fac=function(){let Kt;return function(yt){return(Kt||(Kt=n.\u0275\u0275getInheritedFactory(Dt)))(yt||Dt)}}(),Dt.\u0275dir=n.\u0275\u0275defineDirective({type:Dt,selectors:[["ng-template","matMenuContent",""]],features:[n.\u0275\u0275ProvidersFeature([{provide:me,useExisting:Dt}]),n.\u0275\u0275InheritDefinitionFeature]}),Dt})(),Lt=(()=>{class Dt{}return Dt.\u0275fac=function(ze){return new(ze||Dt)},Dt.\u0275mod=n.\u0275\u0275defineNgModule({type:Dt}),Dt.\u0275inj=n.\u0275\u0275defineInjector({providers:[St],imports:[M.CommonModule,_.MatCommonModule,_.MatRippleModule,A.U8,rt.ZD,_.MatCommonModule]}),Dt})()},9559:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{LegacyPageEvent:()=>Ce,MAT_LEGACY_PAGINATOR_DEFAULT_OPTIONS:()=>Ue,MAT_LEGACY_PAGINATOR_INTL_PROVIDER:()=>rt,MAT_LEGACY_PAGINATOR_INTL_PROVIDER_FACTORY:()=>vt,MatLegacyPaginator:()=>We,MatLegacyPaginatorIntl:()=>ot,MatLegacyPaginatorModule:()=>ve,_MatLegacyPaginatorBase:()=>ie});var n=g(6814),p=g(5879),C=g(3680),b=g(4505),o=g(1798),v=g(9594),a=g(4300),c=g(6672),s=g(9388),l=g(1088),d=g(2831),r=g(9773),u=g(8180),h=g(2495),m=g(6028),_=g(8484),M=g(8645);g(6825);const T=new p.InjectionToken("mat-tooltip-scroll-strategy"),E={provide:T,deps:[v.aV],useFactory:function O(we){return()=>we.scrollStrategies.reposition({scrollThrottle:20})}},R=new p.InjectionToken("mat-tooltip-default-options",{providedIn:"root",factory:function D(){return{showDelay:0,hideDelay:0,touchendHideDelay:1500}}}),N="tooltip-panel",S=(0,d.i$)({passive:!0});let me=(()=>{class we{get position(){return this._position}set position(De){De!==this._position&&(this._position=De,this._overlayRef&&(this._updatePosition(this._overlayRef),this._tooltipInstance?.show(0),this._overlayRef.updatePosition()))}get positionAtOrigin(){return this._positionAtOrigin}set positionAtOrigin(De){this._positionAtOrigin=(0,h.Ig)(De),this._detach(),this._overlayRef=null}get disabled(){return this._disabled}set disabled(De){this._disabled=(0,h.Ig)(De),this._disabled?this.hide(0):this._setupPointerEnterEventsIfNeeded()}get showDelay(){return this._showDelay}set showDelay(De){this._showDelay=(0,h.su)(De)}get hideDelay(){return this._hideDelay}set hideDelay(De){this._hideDelay=(0,h.su)(De),this._tooltipInstance&&(this._tooltipInstance._mouseLeaveHideDelay=this._hideDelay)}get message(){return this._message}set message(De){this._ariaDescriber.removeDescription(this._elementRef.nativeElement,this._message,"tooltip"),this._message=null!=De?String(De).trim():"",!this._message&&this._isTooltipVisible()?this.hide(0):(this._setupPointerEnterEventsIfNeeded(),this._updateTooltipMessage(),this._ngZone.runOutsideAngular(()=>{Promise.resolve().then(()=>{this._ariaDescriber.describe(this._elementRef.nativeElement,this.message,"tooltip")})}))}get tooltipClass(){return this._tooltipClass}set tooltipClass(De){this._tooltipClass=De,this._tooltipInstance&&this._setTooltipClass(this._tooltipClass)}constructor(De,je,ke,Z,re,ce,Ee,it,Rt,Ye,qe,Ne){this._overlay=De,this._elementRef=je,this._scrollDispatcher=ke,this._viewContainerRef=Z,this._ngZone=re,this._platform=ce,this._ariaDescriber=Ee,this._focusMonitor=it,this._dir=Ye,this._defaultOptions=qe,this._position="below",this._positionAtOrigin=!1,this._disabled=!1,this._viewInitialized=!1,this._pointerExitEventsInitialized=!1,this._viewportMargin=8,this._cssClassPrefix="mat",this.touchGestures="auto",this._message="",this._passiveListeners=[],this._destroyed=new M.x,this._scrollStrategy=Rt,this._document=Ne,qe&&(this._showDelay=qe.showDelay,this._hideDelay=qe.hideDelay,qe.position&&(this.position=qe.position),qe.positionAtOrigin&&(this.positionAtOrigin=qe.positionAtOrigin),qe.touchGestures&&(this.touchGestures=qe.touchGestures)),Ye.change.pipe((0,r.R)(this._destroyed)).subscribe(()=>{this._overlayRef&&this._updatePosition(this._overlayRef)})}ngAfterViewInit(){this._viewInitialized=!0,this._setupPointerEnterEventsIfNeeded(),this._focusMonitor.monitor(this._elementRef).pipe((0,r.R)(this._destroyed)).subscribe(De=>{De?"keyboard"===De&&this._ngZone.run(()=>this.show()):this._ngZone.run(()=>this.hide(0))})}ngOnDestroy(){const De=this._elementRef.nativeElement;clearTimeout(this._touchstartTimeout),this._overlayRef&&(this._overlayRef.dispose(),this._tooltipInstance=null),this._passiveListeners.forEach(([je,ke])=>{De.removeEventListener(je,ke,S)}),this._passiveListeners.length=0,this._destroyed.next(),this._destroyed.complete(),this._ariaDescriber.removeDescription(De,this.message,"tooltip"),this._focusMonitor.stopMonitoring(De)}show(De=this.showDelay,je){if(this.disabled||!this.message||this._isTooltipVisible())return void this._tooltipInstance?._cancelPendingAnimations();const ke=this._createOverlay(je);this._detach(),this._portal=this._portal||new _.C5(this._tooltipComponent,this._viewContainerRef);const Z=this._tooltipInstance=ke.attach(this._portal).instance;Z._triggerElement=this._elementRef.nativeElement,Z._mouseLeaveHideDelay=this._hideDelay,Z.afterHidden().pipe((0,r.R)(this._destroyed)).subscribe(()=>this._detach()),this._setTooltipClass(this._tooltipClass),this._updateTooltipMessage(),Z.show(De)}hide(De=this.hideDelay){const je=this._tooltipInstance;je&&(je.isVisible()?je.hide(De):(je._cancelPendingAnimations(),this._detach()))}toggle(De){this._isTooltipVisible()?this.hide():this.show(void 0,De)}_isTooltipVisible(){return!!this._tooltipInstance&&this._tooltipInstance.isVisible()}_createOverlay(De){if(this._overlayRef){const Z=this._overlayRef.getConfig().positionStrategy;if((!this.positionAtOrigin||!De)&&Z._origin instanceof p.ElementRef)return this._overlayRef;this._detach()}const je=this._scrollDispatcher.getAncestorScrollContainers(this._elementRef),ke=this._overlay.position().flexibleConnectedTo(this.positionAtOrigin&&De||this._elementRef).withTransformOriginOn(`.${this._cssClassPrefix}-tooltip`).withFlexibleDimensions(!1).withViewportMargin(this._viewportMargin).withScrollableContainers(je);return ke.positionChanges.pipe((0,r.R)(this._destroyed)).subscribe(Z=>{this._updateCurrentPositionClass(Z.connectionPair),this._tooltipInstance&&Z.scrollableViewProperties.isOverlayClipped&&this._tooltipInstance.isVisible()&&this._ngZone.run(()=>this.hide(0))}),this._overlayRef=this._overlay.create({direction:this._dir,positionStrategy:ke,panelClass:`${this._cssClassPrefix}-${N}`,scrollStrategy:this._scrollStrategy()}),this._updatePosition(this._overlayRef),this._overlayRef.detachments().pipe((0,r.R)(this._destroyed)).subscribe(()=>this._detach()),this._overlayRef.outsidePointerEvents().pipe((0,r.R)(this._destroyed)).subscribe(()=>this._tooltipInstance?._handleBodyInteraction()),this._overlayRef.keydownEvents().pipe((0,r.R)(this._destroyed)).subscribe(Z=>{this._isTooltipVisible()&&Z.keyCode===m.hY&&!(0,m.Vb)(Z)&&(Z.preventDefault(),Z.stopPropagation(),this._ngZone.run(()=>this.hide(0)))}),this._defaultOptions?.disableTooltipInteractivity&&this._overlayRef.addPanelClass(`${this._cssClassPrefix}-tooltip-panel-non-interactive`),this._overlayRef}_detach(){this._overlayRef&&this._overlayRef.hasAttached()&&this._overlayRef.detach(),this._tooltipInstance=null}_updatePosition(De){const je=De.getConfig().positionStrategy,ke=this._getOrigin(),Z=this._getOverlayPosition();je.withPositions([this._addOffset({...ke.main,...Z.main}),this._addOffset({...ke.fallback,...Z.fallback})])}_addOffset(De){return De}_getOrigin(){const De=!this._dir||"ltr"==this._dir.value,je=this.position;let ke;"above"==je||"below"==je?ke={originX:"center",originY:"above"==je?"top":"bottom"}:"before"==je||"left"==je&&De||"right"==je&&!De?ke={originX:"start",originY:"center"}:("after"==je||"right"==je&&De||"left"==je&&!De)&&(ke={originX:"end",originY:"center"});const{x:Z,y:re}=this._invertPosition(ke.originX,ke.originY);return{main:ke,fallback:{originX:Z,originY:re}}}_getOverlayPosition(){const De=!this._dir||"ltr"==this._dir.value,je=this.position;let ke;"above"==je?ke={overlayX:"center",overlayY:"bottom"}:"below"==je?ke={overlayX:"center",overlayY:"top"}:"before"==je||"left"==je&&De||"right"==je&&!De?ke={overlayX:"end",overlayY:"center"}:("after"==je||"right"==je&&De||"left"==je&&!De)&&(ke={overlayX:"start",overlayY:"center"});const{x:Z,y:re}=this._invertPosition(ke.overlayX,ke.overlayY);return{main:ke,fallback:{overlayX:Z,overlayY:re}}}_updateTooltipMessage(){this._tooltipInstance&&(this._tooltipInstance.message=this.message,this._tooltipInstance._markForCheck(),this._ngZone.onMicrotaskEmpty.pipe((0,u.q)(1),(0,r.R)(this._destroyed)).subscribe(()=>{this._tooltipInstance&&this._overlayRef.updatePosition()}))}_setTooltipClass(De){this._tooltipInstance&&(this._tooltipInstance.tooltipClass=De,this._tooltipInstance._markForCheck())}_invertPosition(De,je){return"above"===this.position||"below"===this.position?"top"===je?je="bottom":"bottom"===je&&(je="top"):"end"===De?De="start":"start"===De&&(De="end"),{x:De,y:je}}_updateCurrentPositionClass(De){const{overlayY:je,originX:ke,originY:Z}=De;let re;if(re="center"===je?this._dir&&"rtl"===this._dir.value?"end"===ke?"left":"right":"start"===ke?"left":"right":"bottom"===je&&"top"===Z?"above":"below",re!==this._currentPosition){const ce=this._overlayRef;if(ce){const Ee=`${this._cssClassPrefix}-${N}-`;ce.removePanelClass(Ee+this._currentPosition),ce.addPanelClass(Ee+re)}this._currentPosition=re}}_setupPointerEnterEventsIfNeeded(){this._disabled||!this.message||!this._viewInitialized||this._passiveListeners.length||(this._platformSupportsMouseEvents()?this._passiveListeners.push(["mouseenter",De=>{let je;this._setupPointerExitEventsIfNeeded(),void 0!==De.x&&void 0!==De.y&&(je=De),this.show(void 0,je)}]):"off"!==this.touchGestures&&(this._disableNativeGesturesIfNecessary(),this._passiveListeners.push(["touchstart",De=>{const je=De.targetTouches?.[0],ke=je?{x:je.clientX,y:je.clientY}:void 0;this._setupPointerExitEventsIfNeeded(),clearTimeout(this._touchstartTimeout),this._touchstartTimeout=setTimeout(()=>this.show(void 0,ke),500)}])),this._addListeners(this._passiveListeners))}_setupPointerExitEventsIfNeeded(){if(this._pointerExitEventsInitialized)return;this._pointerExitEventsInitialized=!0;const De=[];if(this._platformSupportsMouseEvents())De.push(["mouseleave",je=>{const ke=je.relatedTarget;(!ke||!this._overlayRef?.overlayElement.contains(ke))&&this.hide()}],["wheel",je=>this._wheelListener(je)]);else if("off"!==this.touchGestures){this._disableNativeGesturesIfNecessary();const je=()=>{clearTimeout(this._touchstartTimeout),this.hide(this._defaultOptions.touchendHideDelay)};De.push(["touchend",je],["touchcancel",je])}this._addListeners(De),this._passiveListeners.push(...De)}_addListeners(De){De.forEach(([je,ke])=>{this._elementRef.nativeElement.addEventListener(je,ke,S)})}_platformSupportsMouseEvents(){return!this._platform.IOS&&!this._platform.ANDROID}_wheelListener(De){if(this._isTooltipVisible()){const je=this._document.elementFromPoint(De.clientX,De.clientY),ke=this._elementRef.nativeElement;je!==ke&&!ke.contains(je)&&this.hide()}}_disableNativeGesturesIfNecessary(){const De=this.touchGestures;if("off"!==De){const je=this._elementRef.nativeElement,ke=je.style;("on"===De||"INPUT"!==je.nodeName&&"TEXTAREA"!==je.nodeName)&&(ke.userSelect=ke.msUserSelect=ke.webkitUserSelect=ke.MozUserSelect="none"),("on"===De||!je.draggable)&&(ke.webkitUserDrag="none"),ke.touchAction="none",ke.webkitTapHighlightColor="transparent"}}}return we.\u0275fac=function(De){p.\u0275\u0275invalidFactory()},we.\u0275dir=p.\u0275\u0275defineDirective({type:we,inputs:{position:["matTooltipPosition","position"],positionAtOrigin:["matTooltipPositionAtOrigin","positionAtOrigin"],disabled:["matTooltipDisabled","disabled"],showDelay:["matTooltipShowDelay","showDelay"],hideDelay:["matTooltipHideDelay","hideDelay"],touchGestures:["matTooltipTouchGestures","touchGestures"],message:["matTooltip","message"],tooltipClass:["matTooltipClass","tooltipClass"]}}),we})(),q=(()=>{class we{constructor(De,je){this._changeDetectorRef=De,this._closeOnInteraction=!1,this._isVisible=!1,this._onHide=new M.x,this._animationsDisabled="NoopAnimations"===je}show(De){null!=this._hideTimeoutId&&clearTimeout(this._hideTimeoutId),this._showTimeoutId=setTimeout(()=>{this._toggleVisibility(!0),this._showTimeoutId=void 0},De)}hide(De){null!=this._showTimeoutId&&clearTimeout(this._showTimeoutId),this._hideTimeoutId=setTimeout(()=>{this._toggleVisibility(!1),this._hideTimeoutId=void 0},De)}afterHidden(){return this._onHide}isVisible(){return this._isVisible}ngOnDestroy(){this._cancelPendingAnimations(),this._onHide.complete(),this._triggerElement=null}_handleBodyInteraction(){this._closeOnInteraction&&this.hide(0)}_markForCheck(){this._changeDetectorRef.markForCheck()}_handleMouseLeave({relatedTarget:De}){(!De||!this._triggerElement.contains(De))&&(this.isVisible()?this.hide(this._mouseLeaveHideDelay):this._finalizeAnimation(!1))}_onShow(){}_handleAnimationEnd({animationName:De}){(De===this._showAnimation||De===this._hideAnimation)&&this._finalizeAnimation(De===this._showAnimation)}_cancelPendingAnimations(){null!=this._showTimeoutId&&clearTimeout(this._showTimeoutId),null!=this._hideTimeoutId&&clearTimeout(this._hideTimeoutId),this._showTimeoutId=this._hideTimeoutId=void 0}_finalizeAnimation(De){De?this._closeOnInteraction=!0:this.isVisible()||this._onHide.next()}_toggleVisibility(De){const je=this._tooltip.nativeElement,ke=this._showAnimation,Z=this._hideAnimation;if(je.classList.remove(De?Z:ke),je.classList.add(De?ke:Z),this._isVisible=De,De&&!this._animationsDisabled&&"function"==typeof getComputedStyle){const re=getComputedStyle(je);("0s"===re.getPropertyValue("animation-duration")||"none"===re.getPropertyValue("animation-name"))&&(this._animationsDisabled=!0)}De&&this._onShow(),this._animationsDisabled&&(je.classList.add("_mat-animation-noopable"),this._finalizeAnimation(De))}}return we.\u0275fac=function(De){return new(De||we)(p.\u0275\u0275directiveInject(p.ChangeDetectorRef),p.\u0275\u0275directiveInject(p.ANIMATION_MODULE_TYPE,8))},we.\u0275dir=p.\u0275\u0275defineDirective({type:we}),we})();const Oe=["tooltip"];let Xe=(()=>{class we extends me{constructor(De,je,ke,Z,re,ce,Ee,it,Rt,Ye,qe,Ne){super(De,je,ke,Z,re,ce,Ee,it,Rt,Ye,qe,Ne),this._tooltipComponent=Be}}return we.\u0275fac=function(De){return new(De||we)(p.\u0275\u0275directiveInject(v.aV),p.\u0275\u0275directiveInject(p.ElementRef),p.\u0275\u0275directiveInject(c.mF),p.\u0275\u0275directiveInject(p.ViewContainerRef),p.\u0275\u0275directiveInject(p.NgZone),p.\u0275\u0275directiveInject(d.t4),p.\u0275\u0275directiveInject(a.$s),p.\u0275\u0275directiveInject(a.tE),p.\u0275\u0275directiveInject(T),p.\u0275\u0275directiveInject(s.Is,8),p.\u0275\u0275directiveInject(R,8),p.\u0275\u0275directiveInject(n.DOCUMENT))},we.\u0275dir=p.\u0275\u0275defineDirective({type:we,selectors:[["","matTooltip",""]],hostAttrs:[1,"mat-tooltip-trigger"],hostVars:2,hostBindings:function(De,je){2&De&&p.\u0275\u0275classProp("mat-tooltip-disabled",je.disabled)},exportAs:["matTooltip"],features:[p.\u0275\u0275InheritDefinitionFeature]}),we})(),Be=(()=>{class we extends q{constructor(De,je,ke){super(De,ke),this._showAnimation="mat-tooltip-show",this._hideAnimation="mat-tooltip-hide",this._isHandset=je.observe(l.u3.Handset)}}return we.\u0275fac=function(De){return new(De||we)(p.\u0275\u0275directiveInject(p.ChangeDetectorRef),p.\u0275\u0275directiveInject(l.Yg),p.\u0275\u0275directiveInject(p.ANIMATION_MODULE_TYPE,8))},we.\u0275cmp=p.\u0275\u0275defineComponent({type:we,selectors:[["mat-tooltip-component"]],viewQuery:function(De,je){if(1&De&&p.\u0275\u0275viewQuery(Oe,7),2&De){let ke;p.\u0275\u0275queryRefresh(ke=p.\u0275\u0275loadQuery())&&(je._tooltip=ke.first)}},hostAttrs:["aria-hidden","true"],hostVars:3,hostBindings:function(De,je){1&De&&p.\u0275\u0275listener("mouseleave",function(Z){return je._handleMouseLeave(Z)}),2&De&&(p.\u0275\u0275attribute("mat-id-collision",null),p.\u0275\u0275styleProp("zoom",je.isVisible()?1:null))},features:[p.\u0275\u0275InheritDefinitionFeature],decls:4,vars:6,consts:[[1,"mat-tooltip",3,"ngClass","animationend"],["tooltip",""]],template:function(De,je){if(1&De&&(p.\u0275\u0275elementStart(0,"div",0,1),p.\u0275\u0275listener("animationend",function(Z){return je._handleAnimationEnd(Z)}),p.\u0275\u0275pipe(2,"async"),p.\u0275\u0275text(3),p.\u0275\u0275elementEnd()),2&De){let ke;p.\u0275\u0275classProp("mat-tooltip-handset",null==(ke=p.\u0275\u0275pipeBind1(2,4,je._isHandset))?null:ke.matches),p.\u0275\u0275property("ngClass",je.tooltipClass),p.\u0275\u0275advance(3),p.\u0275\u0275textInterpolate(je.message)}},dependencies:[n.NgClass,n.AsyncPipe],styles:[".mat-tooltip{color:#fff;border-radius:4px;margin:14px;max-width:250px;padding-left:8px;padding-right:8px;overflow:hidden;text-overflow:ellipsis;transform:scale(0)}.mat-tooltip._mat-animation-noopable{animation:none;transform:scale(1)}.cdk-high-contrast-active .mat-tooltip{outline:solid 1px}.mat-tooltip-handset{margin:24px;padding-left:16px;padding-right:16px}.mat-tooltip-panel-non-interactive{pointer-events:none}@keyframes mat-tooltip-show{0%{opacity:0;transform:scale(0)}50%{opacity:.5;transform:scale(0.99)}100%{opacity:1;transform:scale(1)}}@keyframes mat-tooltip-hide{0%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(1)}}.mat-tooltip-show{animation:mat-tooltip-show 200ms cubic-bezier(0, 0, 0.2, 1) forwards}.mat-tooltip-hide{animation:mat-tooltip-hide 100ms cubic-bezier(0, 0, 0.2, 1) forwards}"],encapsulation:2,changeDetection:0}),we})(),$e=(()=>{class we{}return we.\u0275fac=function(De){return new(De||we)},we.\u0275mod=p.\u0275\u0275defineNgModule({type:we}),we.\u0275inj=p.\u0275\u0275defineInjector({providers:[E],imports:[a.rt,n.CommonModule,v.U8,C.MatCommonModule,C.MatCommonModule,c.ZD]}),we})(),ot=(()=>{class we{constructor(){this.changes=new M.x,this.itemsPerPageLabel="Items per page:",this.nextPageLabel="Next page",this.previousPageLabel="Previous page",this.firstPageLabel="First page",this.lastPageLabel="Last page",this.getRangeLabel=(De,je,ke)=>{if(0==ke||0==je)return`0 of ${ke}`;const Z=De*je;return`${Z+1} \u2013 ${Z<(ke=Math.max(ke,0))?Math.min(Z+je,ke):Z+je} of ${ke}`}}}return we.\u0275fac=function(De){return new(De||we)},we.\u0275prov=p.\u0275\u0275defineInjectable({token:we,factory:we.\u0275fac,providedIn:"root"}),we})();function vt(we){return we||new ot}const rt={provide:ot,deps:[[new p.Optional,new p.SkipSelf,ot]],useFactory:vt};class Ce{}const ae=(0,C.mixinDisabled)((0,C.mixinInitialized)(class{}));let ie=(()=>{class we extends ae{get pageIndex(){return this._pageIndex}set pageIndex(De){this._pageIndex=Math.max((0,h.su)(De),0),this._changeDetectorRef.markForCheck()}get length(){return this._length}set length(De){this._length=(0,h.su)(De),this._changeDetectorRef.markForCheck()}get pageSize(){return this._pageSize}set pageSize(De){this._pageSize=Math.max((0,h.su)(De),0),this._updateDisplayedPageSizeOptions()}get pageSizeOptions(){return this._pageSizeOptions}set pageSizeOptions(De){this._pageSizeOptions=(De||[]).map(je=>(0,h.su)(je)),this._updateDisplayedPageSizeOptions()}get hidePageSize(){return this._hidePageSize}set hidePageSize(De){this._hidePageSize=(0,h.Ig)(De)}get showFirstLastButtons(){return this._showFirstLastButtons}set showFirstLastButtons(De){this._showFirstLastButtons=(0,h.Ig)(De)}constructor(De,je,ke){if(super(),this._intl=De,this._changeDetectorRef=je,this._pageIndex=0,this._length=0,this._pageSizeOptions=[],this._hidePageSize=!1,this._showFirstLastButtons=!1,this.selectConfig={},this.page=new p.EventEmitter,this._intlChanges=De.changes.subscribe(()=>this._changeDetectorRef.markForCheck()),ke){const{pageSize:Z,pageSizeOptions:re,hidePageSize:ce,showFirstLastButtons:Ee}=ke;null!=Z&&(this._pageSize=Z),null!=re&&(this._pageSizeOptions=re),null!=ce&&(this._hidePageSize=ce),null!=Ee&&(this._showFirstLastButtons=Ee)}}ngOnInit(){this._initialized=!0,this._updateDisplayedPageSizeOptions(),this._markInitialized()}ngOnDestroy(){this._intlChanges.unsubscribe()}nextPage(){if(!this.hasNextPage())return;const De=this.pageIndex;this.pageIndex=this.pageIndex+1,this._emitPageEvent(De)}previousPage(){if(!this.hasPreviousPage())return;const De=this.pageIndex;this.pageIndex=this.pageIndex-1,this._emitPageEvent(De)}firstPage(){if(!this.hasPreviousPage())return;const De=this.pageIndex;this.pageIndex=0,this._emitPageEvent(De)}lastPage(){if(!this.hasNextPage())return;const De=this.pageIndex;this.pageIndex=this.getNumberOfPages()-1,this._emitPageEvent(De)}hasPreviousPage(){return this.pageIndex>=1&&0!=this.pageSize}hasNextPage(){const De=this.getNumberOfPages()-1;return this.pageIndexDe-je),this._changeDetectorRef.markForCheck())}_emitPageEvent(De){this.page.emit({previousPageIndex:De,pageIndex:this.pageIndex,pageSize:this.pageSize,length:this.length})}}return we.\u0275fac=function(De){p.\u0275\u0275invalidFactory()},we.\u0275dir=p.\u0275\u0275defineDirective({type:we,inputs:{color:"color",pageIndex:"pageIndex",length:"length",pageSize:"pageSize",pageSizeOptions:"pageSizeOptions",hidePageSize:"hidePageSize",showFirstLastButtons:"showFirstLastButtons",selectConfig:"selectConfig"},outputs:{page:"page"},features:[p.\u0275\u0275InheritDefinitionFeature]}),we})();var Lt=g(4187),Dt=g(4678);function Kt(we,at){if(1&we&&(p.\u0275\u0275elementStart(0,"mat-option",19),p.\u0275\u0275text(1),p.\u0275\u0275elementEnd()),2&we){const De=at.$implicit;p.\u0275\u0275property("value",De),p.\u0275\u0275advance(1),p.\u0275\u0275textInterpolate1(" ",De," ")}}function ze(we,at){if(1&we){const De=p.\u0275\u0275getCurrentView();p.\u0275\u0275elementStart(0,"mat-form-field",16)(1,"mat-select",17),p.\u0275\u0275listener("selectionChange",function(ke){p.\u0275\u0275restoreView(De);const Z=p.\u0275\u0275nextContext(2);return p.\u0275\u0275resetView(Z._changePageSize(ke.value))}),p.\u0275\u0275template(2,Kt,2,2,"mat-option",18),p.\u0275\u0275elementEnd()()}if(2&we){const De=p.\u0275\u0275nextContext(2);p.\u0275\u0275property("appearance",De._formFieldAppearance)("color",De.color),p.\u0275\u0275advance(1),p.\u0275\u0275property("value",De.pageSize)("disabled",De.disabled)("panelClass",De.selectConfig.panelClass||"")("disableOptionCentering",De.selectConfig.disableOptionCentering)("aria-label",De._intl.itemsPerPageLabel),p.\u0275\u0275advance(1),p.\u0275\u0275property("ngForOf",De._displayedPageSizeOptions)}}function yt(we,at){if(1&we&&(p.\u0275\u0275elementStart(0,"div",20),p.\u0275\u0275text(1),p.\u0275\u0275elementEnd()),2&we){const De=p.\u0275\u0275nextContext(2);p.\u0275\u0275advance(1),p.\u0275\u0275textInterpolate(De.pageSize)}}function Bt(we,at){if(1&we&&(p.\u0275\u0275elementStart(0,"div",12)(1,"div",13),p.\u0275\u0275text(2),p.\u0275\u0275elementEnd(),p.\u0275\u0275template(3,ze,3,8,"mat-form-field",14),p.\u0275\u0275template(4,yt,2,1,"div",15),p.\u0275\u0275elementEnd()),2&we){const De=p.\u0275\u0275nextContext();p.\u0275\u0275advance(2),p.\u0275\u0275textInterpolate1(" ",De._intl.itemsPerPageLabel," "),p.\u0275\u0275advance(1),p.\u0275\u0275property("ngIf",De._displayedPageSizeOptions.length>1),p.\u0275\u0275advance(1),p.\u0275\u0275property("ngIf",De._displayedPageSizeOptions.length<=1)}}function $t(we,at){if(1&we){const De=p.\u0275\u0275getCurrentView();p.\u0275\u0275elementStart(0,"button",21),p.\u0275\u0275listener("click",function(){p.\u0275\u0275restoreView(De);const ke=p.\u0275\u0275nextContext();return p.\u0275\u0275resetView(ke.firstPage())}),p.\u0275\u0275namespaceSVG(),p.\u0275\u0275elementStart(1,"svg",7),p.\u0275\u0275element(2,"path",22),p.\u0275\u0275elementEnd()()}if(2&we){const De=p.\u0275\u0275nextContext();p.\u0275\u0275property("matTooltip",De._intl.firstPageLabel)("matTooltipDisabled",De._previousButtonsDisabled())("matTooltipPosition","above")("disabled",De._previousButtonsDisabled()),p.\u0275\u0275attribute("aria-label",De._intl.firstPageLabel)}}function Yt(we,at){if(1&we){const De=p.\u0275\u0275getCurrentView();p.\u0275\u0275namespaceSVG(),p.\u0275\u0275namespaceHTML(),p.\u0275\u0275elementStart(0,"button",23),p.\u0275\u0275listener("click",function(){p.\u0275\u0275restoreView(De);const ke=p.\u0275\u0275nextContext();return p.\u0275\u0275resetView(ke.lastPage())}),p.\u0275\u0275namespaceSVG(),p.\u0275\u0275elementStart(1,"svg",7),p.\u0275\u0275element(2,"path",24),p.\u0275\u0275elementEnd()()}if(2&we){const De=p.\u0275\u0275nextContext();p.\u0275\u0275property("matTooltip",De._intl.lastPageLabel)("matTooltipDisabled",De._nextButtonsDisabled())("matTooltipPosition","above")("disabled",De._nextButtonsDisabled()),p.\u0275\u0275attribute("aria-label",De._intl.lastPageLabel)}}const Ue=new p.InjectionToken("MAT_LEGACY_PAGINATOR_DEFAULT_OPTIONS");let We=(()=>{class we extends ie{constructor(De,je,ke){super(De,je,ke),ke&&null!=ke.formFieldAppearance&&(this._formFieldAppearance=ke.formFieldAppearance)}}return we.\u0275fac=function(De){return new(De||we)(p.\u0275\u0275directiveInject(ot),p.\u0275\u0275directiveInject(p.ChangeDetectorRef),p.\u0275\u0275directiveInject(Ue,8))},we.\u0275cmp=p.\u0275\u0275defineComponent({type:we,selectors:[["mat-paginator"]],hostAttrs:["role","group",1,"mat-paginator"],inputs:{disabled:"disabled"},exportAs:["matPaginator"],features:[p.\u0275\u0275InheritDefinitionFeature],decls:14,vars:14,consts:[[1,"mat-paginator-outer-container"],[1,"mat-paginator-container"],["class","mat-paginator-page-size",4,"ngIf"],[1,"mat-paginator-range-actions"],[1,"mat-paginator-range-label"],["mat-icon-button","","type","button","class","mat-paginator-navigation-first",3,"matTooltip","matTooltipDisabled","matTooltipPosition","disabled","click",4,"ngIf"],["mat-icon-button","","type","button",1,"mat-paginator-navigation-previous",3,"matTooltip","matTooltipDisabled","matTooltipPosition","disabled","click"],["viewBox","0 0 24 24","focusable","false","aria-hidden","true",1,"mat-paginator-icon"],["d","M15.41 7.41L14 6l-6 6 6 6 1.41-1.41L10.83 12z"],["mat-icon-button","","type","button",1,"mat-paginator-navigation-next",3,"matTooltip","matTooltipDisabled","matTooltipPosition","disabled","click"],["d","M10 6L8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"],["mat-icon-button","","type","button","class","mat-paginator-navigation-last",3,"matTooltip","matTooltipDisabled","matTooltipPosition","disabled","click",4,"ngIf"],[1,"mat-paginator-page-size"],[1,"mat-paginator-page-size-label"],["class","mat-paginator-page-size-select",3,"appearance","color",4,"ngIf"],["class","mat-paginator-page-size-value",4,"ngIf"],[1,"mat-paginator-page-size-select",3,"appearance","color"],[3,"value","disabled","panelClass","disableOptionCentering","aria-label","selectionChange"],[3,"value",4,"ngFor","ngForOf"],[3,"value"],[1,"mat-paginator-page-size-value"],["mat-icon-button","","type","button",1,"mat-paginator-navigation-first",3,"matTooltip","matTooltipDisabled","matTooltipPosition","disabled","click"],["d","M18.41 16.59L13.82 12l4.59-4.59L17 6l-6 6 6 6zM6 6h2v12H6z"],["mat-icon-button","","type","button",1,"mat-paginator-navigation-last",3,"matTooltip","matTooltipDisabled","matTooltipPosition","disabled","click"],["d","M5.59 7.41L10.18 12l-4.59 4.59L7 18l6-6-6-6zM16 6h2v12h-2z"]],template:function(De,je){1&De&&(p.\u0275\u0275elementStart(0,"div",0)(1,"div",1),p.\u0275\u0275template(2,Bt,5,3,"div",2),p.\u0275\u0275elementStart(3,"div",3)(4,"div",4),p.\u0275\u0275text(5),p.\u0275\u0275elementEnd(),p.\u0275\u0275template(6,$t,3,5,"button",5),p.\u0275\u0275elementStart(7,"button",6),p.\u0275\u0275listener("click",function(){return je.previousPage()}),p.\u0275\u0275namespaceSVG(),p.\u0275\u0275elementStart(8,"svg",7),p.\u0275\u0275element(9,"path",8),p.\u0275\u0275elementEnd()(),p.\u0275\u0275namespaceHTML(),p.\u0275\u0275elementStart(10,"button",9),p.\u0275\u0275listener("click",function(){return je.nextPage()}),p.\u0275\u0275namespaceSVG(),p.\u0275\u0275elementStart(11,"svg",7),p.\u0275\u0275element(12,"path",10),p.\u0275\u0275elementEnd()(),p.\u0275\u0275template(13,Yt,3,5,"button",11),p.\u0275\u0275elementEnd()()()),2&De&&(p.\u0275\u0275advance(2),p.\u0275\u0275property("ngIf",!je.hidePageSize),p.\u0275\u0275advance(3),p.\u0275\u0275textInterpolate1(" ",je._intl.getRangeLabel(je.pageIndex,je.pageSize,je.length)," "),p.\u0275\u0275advance(1),p.\u0275\u0275property("ngIf",je.showFirstLastButtons),p.\u0275\u0275advance(1),p.\u0275\u0275property("matTooltip",je._intl.previousPageLabel)("matTooltipDisabled",je._previousButtonsDisabled())("matTooltipPosition","above")("disabled",je._previousButtonsDisabled()),p.\u0275\u0275attribute("aria-label",je._intl.previousPageLabel),p.\u0275\u0275advance(3),p.\u0275\u0275property("matTooltip",je._intl.nextPageLabel)("matTooltipDisabled",je._nextButtonsDisabled())("matTooltipPosition","above")("disabled",je._nextButtonsDisabled()),p.\u0275\u0275attribute("aria-label",je._intl.nextPageLabel),p.\u0275\u0275advance(3),p.\u0275\u0275property("ngIf",je.showFirstLastButtons))},dependencies:[n.NgForOf,n.NgIf,b.MatLegacyButton,Lt.MatLegacyFormField,o.MatLegacySelect,Dt.MatLegacyOption,Xe],styles:[".mat-paginator{display:block}.mat-paginator-outer-container{display:flex}.mat-paginator-container{display:flex;align-items:center;justify-content:flex-end;padding:0 8px;flex-wrap:wrap-reverse;width:100%}.mat-paginator-page-size{display:flex;align-items:baseline;margin-right:8px}[dir=rtl] .mat-paginator-page-size{margin-right:0;margin-left:8px}.mat-paginator-page-size-label{margin:0 4px}.mat-paginator-page-size-select{margin:6px 4px 0 4px;width:56px}.mat-paginator-page-size-select.mat-form-field-appearance-outline{width:64px}.mat-paginator-page-size-select.mat-form-field-appearance-fill{width:64px}.mat-paginator-range-label{margin:0 32px 0 24px}.mat-paginator-range-actions{display:flex;align-items:center}.mat-paginator-icon{display:inline-block;width:28px;fill:currentColor}[dir=rtl] .mat-paginator-icon{transform:rotate(180deg)}.cdk-high-contrast-active .mat-paginator-icon{fill:CanvasText}"],encapsulation:2,changeDetection:0}),we})(),ve=(()=>{class we{}return we.\u0275fac=function(De){return new(De||we)},we.\u0275mod=p.\u0275\u0275defineNgModule({type:we}),we.\u0275inj=p.\u0275\u0275defineInjector({providers:[rt],imports:[n.CommonModule,b.MatLegacyButtonModule,o.MatLegacySelectModule,$e,C.MatCommonModule]}),we})()},1438:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{MAT_LEGACY_PROGRESS_SPINNER_DEFAULT_OPTIONS:()=>l,MAT_LEGACY_PROGRESS_SPINNER_DEFAULT_OPTIONS_FACTORY:()=>d,MatLegacyProgressSpinner:()=>E,MatLegacyProgressSpinnerModule:()=>D,MatLegacySpinner:()=>R});var n=g(2495),p=g(2831),C=g(6672),b=g(6814),o=g(5879),v=g(3680);const l=new o.InjectionToken("mat-progress-spinner-default-options",{providedIn:"root",factory:d});function d(){return{diameter:r}}const r=100;var M=g(7394);function x(j,N){if(1&j&&(o.\u0275\u0275namespaceSVG(),o.\u0275\u0275element(0,"circle",4)),2&j){const S=o.\u0275\u0275nextContext(),k=o.\u0275\u0275reference(1);o.\u0275\u0275styleProp("animation-name","mat-progress-spinner-stroke-rotate-"+S._spinnerAnimationLabel)("stroke-dashoffset",S._getStrokeDashOffset(),"px")("stroke-dasharray",S._getStrokeCircumference(),"px")("stroke-width",S._getCircleStrokeWidth(),"%")("transform-origin",S._getCircleTransformOrigin(k)),o.\u0275\u0275attribute("r",S._getCircleRadius())}}function w(j,N){if(1&j&&(o.\u0275\u0275namespaceSVG(),o.\u0275\u0275element(0,"circle",4)),2&j){const S=o.\u0275\u0275nextContext(),k=o.\u0275\u0275reference(1);o.\u0275\u0275styleProp("stroke-dashoffset",S._getStrokeDashOffset(),"px")("stroke-dasharray",S._getStrokeCircumference(),"px")("stroke-width",S._getCircleStrokeWidth(),"%")("transform-origin",S._getCircleTransformOrigin(k)),o.\u0275\u0275attribute("r",S._getCircleRadius())}}const T=(0,v.mixinColor)(class{constructor(j){this._elementRef=j}},"primary");class E extends T{get diameter(){return this._diameter}set diameter(N){this._diameter=(0,n.su)(N),this._spinnerAnimationLabel=this._getSpinnerAnimationLabel(),this._styleRoot&&this._attachStyleNode()}get strokeWidth(){return this._strokeWidth||this.diameter/10}set strokeWidth(N){this._strokeWidth=(0,n.su)(N)}get value(){return"determinate"===this.mode?this._value:0}set value(N){this._value=Math.max(0,Math.min(100,(0,n.su)(N)))}constructor(N,S,k,F,Y,se,ne,me,$){super(N),this._document=k,this._nonce=$,this._diameter=100,this._value=0,this._resizeSubscription=M.w0.EMPTY,this.mode="determinate";const q=E._diameters;this._spinnerAnimationLabel=this._getSpinnerAnimationLabel(),q.has(k.head)||q.set(k.head,new Set([100])),this._noopAnimations="NoopAnimations"===F&&!!Y&&!Y._forceAnimations,"mat-spinner"===N.nativeElement.nodeName.toLowerCase()&&(this.mode="indeterminate"),Y&&(Y.color&&(this.color=this.defaultColor=Y.color),Y.diameter&&(this.diameter=Y.diameter),Y.strokeWidth&&(this.strokeWidth=Y.strokeWidth)),S.isBrowser&&S.SAFARI&&ne&&se&&me&&(this._resizeSubscription=ne.change(150).subscribe(()=>{"indeterminate"===this.mode&&me.run(()=>se.markForCheck())}))}ngOnInit(){const N=this._elementRef.nativeElement;this._styleRoot=(0,p.kV)(N)||this._document.head,this._attachStyleNode(),N.classList.add("mat-progress-spinner-indeterminate-animation")}ngOnDestroy(){this._resizeSubscription.unsubscribe()}_getCircleRadius(){return(this.diameter-10)/2}_getViewBox(){const N=2*this._getCircleRadius()+this.strokeWidth;return`0 0 ${N} ${N}`}_getStrokeCircumference(){return 2*Math.PI*this._getCircleRadius()}_getStrokeDashOffset(){return"determinate"===this.mode?this._getStrokeCircumference()*(100-this._value)/100:null}_getCircleStrokeWidth(){return this.strokeWidth/this.diameter*100}_getCircleTransformOrigin(N){const S=50*(N.currentScale??1);return`${S}% ${S}%`}_attachStyleNode(){const N=this._styleRoot,S=this._diameter,k=E._diameters;let F=k.get(N);if(!F||!F.has(S)){const Y=this._document.createElement("style");this._nonce&&(Y.nonce=this._nonce),Y.setAttribute("mat-spinner-animation",this._spinnerAnimationLabel),Y.textContent=this._getAnimationText(),N.appendChild(Y),F||(F=new Set,k.set(N,F)),F.add(S)}}_getAnimationText(){const N=this._getStrokeCircumference();return"\n @keyframes mat-progress-spinner-stroke-rotate-DIAMETER {\n 0% { stroke-dashoffset: START_VALUE; transform: rotate(0); }\n 12.5% { stroke-dashoffset: END_VALUE; transform: rotate(0); }\n 12.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(72.5deg); }\n 25% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(72.5deg); }\n\n 25.0001% { stroke-dashoffset: START_VALUE; transform: rotate(270deg); }\n 37.5% { stroke-dashoffset: END_VALUE; transform: rotate(270deg); }\n 37.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(161.5deg); }\n 50% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(161.5deg); }\n\n 50.0001% { stroke-dashoffset: START_VALUE; transform: rotate(180deg); }\n 62.5% { stroke-dashoffset: END_VALUE; transform: rotate(180deg); }\n 62.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(251.5deg); }\n 75% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(251.5deg); }\n\n 75.0001% { stroke-dashoffset: START_VALUE; transform: rotate(90deg); }\n 87.5% { stroke-dashoffset: END_VALUE; transform: rotate(90deg); }\n 87.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(341.5deg); }\n 100% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(341.5deg); }\n }\n".replace(/START_VALUE/g,""+.95*N).replace(/END_VALUE/g,""+.2*N).replace(/DIAMETER/g,`${this._spinnerAnimationLabel}`)}_getSpinnerAnimationLabel(){return this.diameter.toString().replace(".","_")}}E._diameters=new WeakMap,E.\u0275fac=function(N){return new(N||E)(o.\u0275\u0275directiveInject(o.ElementRef),o.\u0275\u0275directiveInject(p.t4),o.\u0275\u0275directiveInject(b.DOCUMENT,8),o.\u0275\u0275directiveInject(o.ANIMATION_MODULE_TYPE,8),o.\u0275\u0275directiveInject(l),o.\u0275\u0275directiveInject(o.ChangeDetectorRef),o.\u0275\u0275directiveInject(C.rL),o.\u0275\u0275directiveInject(o.NgZone),o.\u0275\u0275directiveInject(o.CSP_NONCE,8))},E.\u0275cmp=o.\u0275\u0275defineComponent({type:E,selectors:[["mat-progress-spinner"],["mat-spinner"]],hostAttrs:["role","progressbar","tabindex","-1",1,"mat-progress-spinner","mat-spinner"],hostVars:10,hostBindings:function(N,S){2&N&&(o.\u0275\u0275attribute("aria-valuemin","determinate"===S.mode?0:null)("aria-valuemax","determinate"===S.mode?100:null)("aria-valuenow","determinate"===S.mode?S.value:null)("mode",S.mode),o.\u0275\u0275styleProp("width",S.diameter,"px")("height",S.diameter,"px"),o.\u0275\u0275classProp("_mat-animation-noopable",S._noopAnimations))},inputs:{color:"color",diameter:"diameter",strokeWidth:"strokeWidth",mode:"mode",value:"value"},exportAs:["matProgressSpinner"],features:[o.\u0275\u0275InheritDefinitionFeature],decls:4,vars:8,consts:[["preserveAspectRatio","xMidYMid meet","focusable","false","aria-hidden","true",3,"ngSwitch"],["svg",""],["cx","50%","cy","50%",3,"animation-name","stroke-dashoffset","stroke-dasharray","stroke-width","transform-origin",4,"ngSwitchCase"],["cx","50%","cy","50%",3,"stroke-dashoffset","stroke-dasharray","stroke-width","transform-origin",4,"ngSwitchCase"],["cx","50%","cy","50%"]],template:function(N,S){1&N&&(o.\u0275\u0275namespaceSVG(),o.\u0275\u0275elementStart(0,"svg",0,1),o.\u0275\u0275template(2,x,1,11,"circle",2),o.\u0275\u0275template(3,w,1,9,"circle",3),o.\u0275\u0275elementEnd()),2&N&&(o.\u0275\u0275styleProp("width",S.diameter,"px")("height",S.diameter,"px"),o.\u0275\u0275property("ngSwitch","indeterminate"===S.mode),o.\u0275\u0275attribute("viewBox",S._getViewBox()),o.\u0275\u0275advance(2),o.\u0275\u0275property("ngSwitchCase",!0),o.\u0275\u0275advance(1),o.\u0275\u0275property("ngSwitchCase",!1))},dependencies:[b.NgSwitch,b.NgSwitchCase],styles:[".mat-progress-spinner{display:block;position:relative;overflow:hidden}.mat-progress-spinner svg{position:absolute;transform:rotate(-90deg);top:0;left:0;transform-origin:center;overflow:visible}.mat-progress-spinner circle{fill:rgba(0,0,0,0);transition:stroke-dashoffset 225ms linear}.cdk-high-contrast-active .mat-progress-spinner circle{stroke:CanvasText}.mat-progress-spinner[mode=indeterminate] svg{animation:mat-progress-spinner-linear-rotate 2000ms linear infinite}.mat-progress-spinner[mode=indeterminate] circle{transition-property:stroke;animation-duration:4000ms;animation-timing-function:cubic-bezier(0.35, 0, 0.25, 1);animation-iteration-count:infinite}.mat-progress-spinner._mat-animation-noopable svg,.mat-progress-spinner._mat-animation-noopable circle{animation:none;transition:none}@keyframes mat-progress-spinner-linear-rotate{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@keyframes mat-progress-spinner-stroke-rotate-100{0%{stroke-dashoffset:268.606171575px;transform:rotate(0)}12.5%{stroke-dashoffset:56.5486677px;transform:rotate(0)}12.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(72.5deg)}25%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(72.5deg)}25.0001%{stroke-dashoffset:268.606171575px;transform:rotate(270deg)}37.5%{stroke-dashoffset:56.5486677px;transform:rotate(270deg)}37.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(161.5deg)}50%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(161.5deg)}50.0001%{stroke-dashoffset:268.606171575px;transform:rotate(180deg)}62.5%{stroke-dashoffset:56.5486677px;transform:rotate(180deg)}62.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(251.5deg)}75%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(251.5deg)}75.0001%{stroke-dashoffset:268.606171575px;transform:rotate(90deg)}87.5%{stroke-dashoffset:56.5486677px;transform:rotate(90deg)}87.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(341.5deg)}100%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(341.5deg)}}"],encapsulation:2,changeDetection:0});let D=(()=>{class j{}return j.\u0275fac=function(S){return new(S||j)},j.\u0275mod=o.\u0275\u0275defineNgModule({type:j}),j.\u0275inj=o.\u0275\u0275defineInjector({imports:[v.MatCommonModule,b.CommonModule,v.MatCommonModule]}),j})();const R=E},1036:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{MAT_LEGACY_RADIO_DEFAULT_OPTIONS:()=>u,MAT_LEGACY_RADIO_DEFAULT_OPTIONS_FACTORY:()=>h,MAT_LEGACY_RADIO_GROUP:()=>r,MAT_LEGACY_RADIO_GROUP_CONTROL_VALUE_ACCESSOR:()=>E,MatLegacyRadioButton:()=>R,MatLegacyRadioChange:()=>l,MatLegacyRadioGroup:()=>D,MatLegacyRadioModule:()=>j});var n=g(5879),p=g(3680),C=g(4300),b=g(8337),o=g(6223),v=g(2495);const a=["input"];let s=0;class l{constructor(S,k){this.source=S,this.value=k}}const r=new n.InjectionToken("MatRadioGroup"),u=new n.InjectionToken("mat-radio-default-options",{providedIn:"root",factory:h});function h(){return{color:"accent"}}let m=(()=>{class N{get name(){return this._name}set name(k){this._name=k,this._updateRadioButtonNames()}get labelPosition(){return this._labelPosition}set labelPosition(k){this._labelPosition="before"===k?"before":"after",this._markRadiosForCheck()}get value(){return this._value}set value(k){this._value!==k&&(this._value=k,this._updateSelectedRadioFromValue(),this._checkSelectedRadioButton())}_checkSelectedRadioButton(){this._selected&&!this._selected.checked&&(this._selected.checked=!0)}get selected(){return this._selected}set selected(k){this._selected=k,this.value=k?k.value:null,this._checkSelectedRadioButton()}get disabled(){return this._disabled}set disabled(k){this._disabled=(0,v.Ig)(k),this._markRadiosForCheck()}get required(){return this._required}set required(k){this._required=(0,v.Ig)(k),this._markRadiosForCheck()}constructor(k){this._changeDetector=k,this._value=null,this._name="mat-radio-group-"+s++,this._selected=null,this._isInitialized=!1,this._labelPosition="after",this._disabled=!1,this._required=!1,this._controlValueAccessorChangeFn=()=>{},this.onTouched=()=>{},this.change=new n.EventEmitter}ngAfterContentInit(){this._isInitialized=!0,this._buttonChanges=this._radios.changes.subscribe(()=>{this.selected&&!this._radios.find(k=>k===this.selected)&&(this._selected=null)})}ngOnDestroy(){this._buttonChanges?.unsubscribe()}_touch(){this.onTouched&&this.onTouched()}_updateRadioButtonNames(){this._radios&&this._radios.forEach(k=>{k.name=this.name,k._markForCheck()})}_updateSelectedRadioFromValue(){this._radios&&(null===this._selected||this._selected.value!==this._value)&&(this._selected=null,this._radios.forEach(F=>{F.checked=this.value===F.value,F.checked&&(this._selected=F)}))}_emitChangeEvent(){this._isInitialized&&this.change.emit(new l(this._selected,this._value))}_markRadiosForCheck(){this._radios&&this._radios.forEach(k=>k._markForCheck())}writeValue(k){this.value=k,this._changeDetector.markForCheck()}registerOnChange(k){this._controlValueAccessorChangeFn=k}registerOnTouched(k){this.onTouched=k}setDisabledState(k){this.disabled=k,this._changeDetector.markForCheck()}}return N.\u0275fac=function(k){return new(k||N)(n.\u0275\u0275directiveInject(n.ChangeDetectorRef))},N.\u0275dir=n.\u0275\u0275defineDirective({type:N,inputs:{color:"color",name:"name",labelPosition:"labelPosition",value:"value",selected:"selected",disabled:"disabled",required:"required"},outputs:{change:"change"}}),N})();class _{constructor(S){this._elementRef=S}}const M=(0,p.mixinDisableRipple)((0,p.mixinTabIndex)(_));let x=(()=>{class N extends M{get checked(){return this._checked}set checked(k){const F=(0,v.Ig)(k);this._checked!==F&&(this._checked=F,F&&this.radioGroup&&this.radioGroup.value!==this.value?this.radioGroup.selected=this:!F&&this.radioGroup&&this.radioGroup.value===this.value&&(this.radioGroup.selected=null),F&&this._radioDispatcher.notify(this.id,this.name),this._changeDetector.markForCheck())}get value(){return this._value}set value(k){this._value!==k&&(this._value=k,null!==this.radioGroup&&(this.checked||(this.checked=this.radioGroup.value===k),this.checked&&(this.radioGroup.selected=this)))}get labelPosition(){return this._labelPosition||this.radioGroup&&this.radioGroup.labelPosition||"after"}set labelPosition(k){this._labelPosition=k}get disabled(){return this._disabled||null!==this.radioGroup&&this.radioGroup.disabled}set disabled(k){this._setDisabled((0,v.Ig)(k))}get required(){return this._required||this.radioGroup&&this.radioGroup.required}set required(k){this._required=(0,v.Ig)(k)}get color(){return this._color||this.radioGroup&&this.radioGroup.color||this._providerOverride&&this._providerOverride.color||"accent"}set color(k){this._color=k}get inputId(){return`${this.id||this._uniqueId}-input`}constructor(k,F,Y,se,ne,me,$,q){super(F),this._changeDetector=Y,this._focusMonitor=se,this._radioDispatcher=ne,this._providerOverride=$,this._uniqueId="mat-radio-"+ ++s,this.id=this._uniqueId,this.change=new n.EventEmitter,this._checked=!1,this._value=null,this._removeUniqueSelectionListener=()=>{},this.radioGroup=k,this._noopAnimations="NoopAnimations"===me,q&&(this.tabIndex=(0,v.su)(q,0))}focus(k,F){F?this._focusMonitor.focusVia(this._inputElement,F,k):this._inputElement.nativeElement.focus(k)}_markForCheck(){this._changeDetector.markForCheck()}ngOnInit(){this.radioGroup&&(this.checked=this.radioGroup.value===this._value,this.checked&&(this.radioGroup.selected=this),this.name=this.radioGroup.name),this._removeUniqueSelectionListener=this._radioDispatcher.listen((k,F)=>{k!==this.id&&F===this.name&&(this.checked=!1)})}ngDoCheck(){this._updateTabIndex()}ngAfterViewInit(){this._updateTabIndex(),this._focusMonitor.monitor(this._elementRef,!0).subscribe(k=>{!k&&this.radioGroup&&this.radioGroup._touch()})}ngOnDestroy(){this._focusMonitor.stopMonitoring(this._elementRef),this._removeUniqueSelectionListener()}_emitChangeEvent(){this.change.emit(new l(this,this._value))}_isRippleDisabled(){return this.disableRipple||this.disabled}_onInputClick(k){k.stopPropagation()}_onInputInteraction(k){if(k.stopPropagation(),!this.checked&&!this.disabled){const F=this.radioGroup&&this.value!==this.radioGroup.value;this.checked=!0,this._emitChangeEvent(),this.radioGroup&&(this.radioGroup._controlValueAccessorChangeFn(this.value),F&&this.radioGroup._emitChangeEvent())}}_onTouchTargetClick(k){this._onInputInteraction(k),this.disabled||this._inputElement.nativeElement.focus()}_setDisabled(k){this._disabled!==k&&(this._disabled=k,this._changeDetector.markForCheck())}_updateTabIndex(){const k=this.radioGroup;let F;if(F=k&&k.selected&&!this.disabled?k.selected===this?this.tabIndex:-1:this.tabIndex,F!==this._previousTabIndex){const Y=this._inputElement?.nativeElement;Y&&(Y.setAttribute("tabindex",F+""),this._previousTabIndex=F)}}}return N.\u0275fac=function(k){n.\u0275\u0275invalidFactory()},N.\u0275dir=n.\u0275\u0275defineDirective({type:N,viewQuery:function(k,F){if(1&k&&n.\u0275\u0275viewQuery(a,5),2&k){let Y;n.\u0275\u0275queryRefresh(Y=n.\u0275\u0275loadQuery())&&(F._inputElement=Y.first)}},inputs:{id:"id",name:"name",ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],ariaDescribedby:["aria-describedby","ariaDescribedby"],checked:"checked",value:"value",labelPosition:"labelPosition",disabled:"disabled",required:"required",color:"color"},outputs:{change:"change"},features:[n.\u0275\u0275InheritDefinitionFeature]}),N})();const T=function(N){return{enterDuration:N}},O=["*"],E={provide:o.NG_VALUE_ACCESSOR,useExisting:(0,n.forwardRef)(()=>D),multi:!0};let D=(()=>{class N extends m{}return N.\u0275fac=function(){let S;return function(F){return(S||(S=n.\u0275\u0275getInheritedFactory(N)))(F||N)}}(),N.\u0275dir=n.\u0275\u0275defineDirective({type:N,selectors:[["mat-radio-group"]],contentQueries:function(k,F,Y){if(1&k&&n.\u0275\u0275contentQuery(Y,R,5),2&k){let se;n.\u0275\u0275queryRefresh(se=n.\u0275\u0275loadQuery())&&(F._radios=se)}},hostAttrs:["role","radiogroup",1,"mat-radio-group"],exportAs:["matRadioGroup"],features:[n.\u0275\u0275ProvidersFeature([E,{provide:r,useExisting:N}]),n.\u0275\u0275InheritDefinitionFeature]}),N})(),R=(()=>{class N extends x{constructor(k,F,Y,se,ne,me,$,q){super(k,F,Y,se,ne,me,$,q)}}return N.\u0275fac=function(k){return new(k||N)(n.\u0275\u0275directiveInject(r,8),n.\u0275\u0275directiveInject(n.ElementRef),n.\u0275\u0275directiveInject(n.ChangeDetectorRef),n.\u0275\u0275directiveInject(C.tE),n.\u0275\u0275directiveInject(b.A8),n.\u0275\u0275directiveInject(n.ANIMATION_MODULE_TYPE,8),n.\u0275\u0275directiveInject(u,8),n.\u0275\u0275injectAttribute("tabindex"))},N.\u0275cmp=n.\u0275\u0275defineComponent({type:N,selectors:[["mat-radio-button"]],hostAttrs:[1,"mat-radio-button"],hostVars:17,hostBindings:function(k,F){1&k&&n.\u0275\u0275listener("focus",function(){return F._inputElement.nativeElement.focus()}),2&k&&(n.\u0275\u0275attribute("tabindex",null)("id",F.id)("aria-label",null)("aria-labelledby",null)("aria-describedby",null),n.\u0275\u0275classProp("mat-radio-checked",F.checked)("mat-radio-disabled",F.disabled)("_mat-animation-noopable",F._noopAnimations)("mat-primary","primary"===F.color)("mat-accent","accent"===F.color)("mat-warn","warn"===F.color))},inputs:{disableRipple:"disableRipple",tabIndex:"tabIndex"},exportAs:["matRadioButton"],features:[n.\u0275\u0275InheritDefinitionFeature],ngContentSelectors:O,decls:13,vars:19,consts:[[1,"mat-radio-label"],["label",""],[1,"mat-radio-container"],[1,"mat-radio-outer-circle"],[1,"mat-radio-inner-circle"],["type","radio",1,"mat-radio-input",3,"id","checked","disabled","required","change","click"],["input",""],["mat-ripple","",1,"mat-radio-ripple","mat-focus-indicator",3,"matRippleTrigger","matRippleDisabled","matRippleCentered","matRippleRadius","matRippleAnimation"],[1,"mat-ripple-element","mat-radio-persistent-ripple"],[1,"mat-radio-label-content"],[2,"display","none"]],template:function(k,F){if(1&k&&(n.\u0275\u0275projectionDef(),n.\u0275\u0275elementStart(0,"label",0,1)(2,"span",2),n.\u0275\u0275element(3,"span",3)(4,"span",4),n.\u0275\u0275elementStart(5,"input",5,6),n.\u0275\u0275listener("change",function(se){return F._onInputInteraction(se)})("click",function(se){return F._onInputClick(se)}),n.\u0275\u0275elementEnd(),n.\u0275\u0275elementStart(7,"span",7),n.\u0275\u0275element(8,"span",8),n.\u0275\u0275elementEnd()(),n.\u0275\u0275elementStart(9,"span",9)(10,"span",10),n.\u0275\u0275text(11,"\xa0"),n.\u0275\u0275elementEnd(),n.\u0275\u0275projection(12),n.\u0275\u0275elementEnd()()),2&k){const Y=n.\u0275\u0275reference(1);n.\u0275\u0275attribute("for",F.inputId),n.\u0275\u0275advance(5),n.\u0275\u0275property("id",F.inputId)("checked",F.checked)("disabled",F.disabled)("required",F.required),n.\u0275\u0275attribute("name",F.name)("value",F.value)("aria-label",F.ariaLabel)("aria-labelledby",F.ariaLabelledby)("aria-describedby",F.ariaDescribedby),n.\u0275\u0275advance(2),n.\u0275\u0275property("matRippleTrigger",Y)("matRippleDisabled",F._isRippleDisabled())("matRippleCentered",!0)("matRippleRadius",20)("matRippleAnimation",n.\u0275\u0275pureFunction1(17,T,F._noopAnimations?0:150)),n.\u0275\u0275advance(2),n.\u0275\u0275classProp("mat-radio-label-before","before"==F.labelPosition)}},dependencies:[p.MatRipple],styles:['.mat-radio-button{display:inline-block;-webkit-tap-highlight-color:rgba(0,0,0,0);outline:0}.mat-radio-label{-webkit-user-select:none;user-select:none;cursor:pointer;display:inline-flex;align-items:center;white-space:nowrap;vertical-align:middle;width:100%}.mat-radio-container{box-sizing:border-box;display:inline-block;position:relative;width:20px;height:20px;flex-shrink:0}.mat-radio-outer-circle{box-sizing:border-box;display:block;height:20px;left:0;position:absolute;top:0;transition:border-color ease 280ms;width:20px;border-width:2px;border-style:solid;border-radius:50%}._mat-animation-noopable .mat-radio-outer-circle{transition:none}.mat-radio-inner-circle{border-radius:50%;box-sizing:border-box;display:block;height:20px;left:0;position:absolute;top:0;opacity:0;transition:transform ease 280ms,background-color ease 280ms,opacity linear 1ms 280ms;width:20px;transform:scale(0.001);-webkit-print-color-adjust:exact;color-adjust:exact}.mat-radio-checked .mat-radio-inner-circle{transform:scale(0.5);opacity:1;transition:transform ease 280ms,background-color ease 280ms}.cdk-high-contrast-active .mat-radio-checked .mat-radio-inner-circle{border:solid 10px}._mat-animation-noopable .mat-radio-inner-circle{transition:none}.mat-radio-label-content{-webkit-user-select:auto;user-select:auto;display:inline-block;order:0;line-height:inherit;padding-left:8px;padding-right:0}[dir=rtl] .mat-radio-label-content{padding-right:8px;padding-left:0}.mat-radio-label-content.mat-radio-label-before{order:-1;padding-left:0;padding-right:8px}[dir=rtl] .mat-radio-label-content.mat-radio-label-before{padding-right:0;padding-left:8px}.mat-radio-disabled,.mat-radio-disabled .mat-radio-label{cursor:default}.mat-radio-button .mat-radio-ripple{position:absolute;left:calc(50% - 20px);top:calc(50% - 20px);height:40px;width:40px;z-index:1;pointer-events:none}.mat-radio-button .mat-radio-ripple .mat-ripple-element:not(.mat-radio-persistent-ripple){opacity:.16}.mat-radio-persistent-ripple{width:100%;height:100%;transform:none;top:0;left:0}.mat-radio-container:hover .mat-radio-persistent-ripple{opacity:.04}.mat-radio-button:not(.mat-radio-disabled).cdk-keyboard-focused .mat-radio-persistent-ripple,.mat-radio-button:not(.mat-radio-disabled).cdk-program-focused .mat-radio-persistent-ripple{opacity:.12}.mat-radio-persistent-ripple,.mat-radio-disabled .mat-radio-container:hover .mat-radio-persistent-ripple{opacity:0}@media(hover: none){.mat-radio-container:hover .mat-radio-persistent-ripple{display:none}}.mat-radio-input{opacity:0;position:absolute;top:0;left:0;margin:0;width:100%;height:100%;cursor:inherit;z-index:-1}.mat-radio-input:focus~.mat-focus-indicator::before{content:""}.cdk-high-contrast-active .mat-radio-disabled{opacity:.5}'],encapsulation:2,changeDetection:0}),N})(),j=(()=>{class N{}return N.\u0275fac=function(k){return new(k||N)},N.\u0275mod=n.\u0275\u0275defineNgModule({type:N}),N.\u0275inj=n.\u0275\u0275defineInjector({imports:[p.MatRippleModule,p.MatCommonModule,p.MatCommonModule]}),N})()},1798:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{MAT_LEGACY_SELECT_CONFIG:()=>Xe,MAT_LEGACY_SELECT_SCROLL_STRATEGY:()=>Me,MAT_LEGACY_SELECT_SCROLL_STRATEGY_PROVIDER:()=>Be,MAT_LEGACY_SELECT_SCROLL_STRATEGY_PROVIDER_FACTORY:()=>Oe,MAT_LEGACY_SELECT_TRIGGER:()=>$e,MatLegacySelect:()=>yt,MatLegacySelectChange:()=>Kt,MatLegacySelectModule:()=>Bt,MatLegacySelectTrigger:()=>ze,matLegacySelectAnimations:()=>ae});var n=g(9594),p=g(6814),C=g(5879),b=g(3680),o=g(4678),v=g(1043),a=g(4187),c=g(6672),s=g(4300),l=g(9388),d=g(2495),r=g(8337),u=g(6028),h=g(6223),m=g(8645),_=g(4911),M=g(3019),x=g(7921),w=g(4664),L=g(8180),A=g(2181),T=g(7398),O=g(3997),E=g(9773),D=g(6825);const R=["trigger"],j=["panel"];let ue=0;const Me=new C.InjectionToken("mat-select-scroll-strategy");function Oe($t){return()=>$t.scrollStrategies.reposition()}const Xe=new C.InjectionToken("MAT_SELECT_CONFIG"),Be={provide:Me,deps:[n.aV],useFactory:Oe},$e=new C.InjectionToken("MatSelectTrigger"),Mt=(0,b.mixinDisableRipple)((0,b.mixinTabIndex)((0,b.mixinDisabled)((0,b.mixinErrorState)(class{constructor($t,Yt,Ue,We,ve){this._elementRef=$t,this._defaultErrorStateMatcher=Yt,this._parentForm=Ue,this._parentFormGroup=We,this.ngControl=ve,this.stateChanges=new m.x}}))));let tt=(()=>{class $t extends Mt{get focused(){return this._focused||this._panelOpen}get placeholder(){return this._placeholder}set placeholder(Ue){this._placeholder=Ue,this.stateChanges.next()}get required(){return this._required??this.ngControl?.control?.hasValidator(h.Validators.required)??!1}set required(Ue){this._required=(0,d.Ig)(Ue),this.stateChanges.next()}get multiple(){return this._multiple}set multiple(Ue){this._multiple=(0,d.Ig)(Ue)}get disableOptionCentering(){return this._disableOptionCentering}set disableOptionCentering(Ue){this._disableOptionCentering=(0,d.Ig)(Ue)}get compareWith(){return this._compareWith}set compareWith(Ue){this._compareWith=Ue,this._selectionModel&&this._initializeSelection()}get value(){return this._value}set value(Ue){this._assignValue(Ue)&&this._onChange(Ue)}get typeaheadDebounceInterval(){return this._typeaheadDebounceInterval}set typeaheadDebounceInterval(Ue){this._typeaheadDebounceInterval=(0,d.su)(Ue)}get id(){return this._id}set id(Ue){this._id=Ue||this._uid,this.stateChanges.next()}constructor(Ue,We,ve,we,at,De,je,ke,Z,re,ce,Ee,it,Rt){super(at,we,je,ke,re),this._viewportRuler=Ue,this._changeDetectorRef=We,this._ngZone=ve,this._dir=De,this._parentFormField=Z,this._liveAnnouncer=it,this._defaultOptions=Rt,this._panelOpen=!1,this._compareWith=(Ye,qe)=>Ye===qe,this._uid="mat-select-"+ue++,this._triggerAriaLabelledBy=null,this._destroy=new m.x,this._onChange=()=>{},this._onTouched=()=>{},this._valueId="mat-select-value-"+ue++,this._panelDoneAnimatingStream=new m.x,this._overlayPanelClass=this._defaultOptions?.overlayPanelClass||"",this._focused=!1,this.controlType="mat-select",this._multiple=!1,this._disableOptionCentering=this._defaultOptions?.disableOptionCentering??!1,this.ariaLabel="",this.optionSelectionChanges=(0,_.P)(()=>{const Ye=this.options;return Ye?Ye.changes.pipe((0,x.O)(Ye),(0,w.w)(()=>(0,M.T)(...Ye.map(qe=>qe.onSelectionChange)))):this._ngZone.onStable.pipe((0,L.q)(1),(0,w.w)(()=>this.optionSelectionChanges))}),this.openedChange=new C.EventEmitter,this._openedStream=this.openedChange.pipe((0,A.h)(Ye=>Ye),(0,T.U)(()=>{})),this._closedStream=this.openedChange.pipe((0,A.h)(Ye=>!Ye),(0,T.U)(()=>{})),this.selectionChange=new C.EventEmitter,this.valueChange=new C.EventEmitter,this._trackedModal=null,this.ngControl&&(this.ngControl.valueAccessor=this),null!=Rt?.typeaheadDebounceInterval&&(this._typeaheadDebounceInterval=Rt.typeaheadDebounceInterval),this._scrollStrategyFactory=Ee,this._scrollStrategy=this._scrollStrategyFactory(),this.tabIndex=parseInt(ce)||0,this.id=this.id}ngOnInit(){this._selectionModel=new r.Ov(this.multiple),this.stateChanges.next(),this._panelDoneAnimatingStream.pipe((0,O.x)(),(0,E.R)(this._destroy)).subscribe(()=>this._panelDoneAnimating(this.panelOpen))}ngAfterContentInit(){this._initKeyManager(),this._selectionModel.changed.pipe((0,E.R)(this._destroy)).subscribe(Ue=>{Ue.added.forEach(We=>We.select()),Ue.removed.forEach(We=>We.deselect())}),this.options.changes.pipe((0,x.O)(null),(0,E.R)(this._destroy)).subscribe(()=>{this._resetOptions(),this._initializeSelection()})}ngDoCheck(){const Ue=this._getTriggerAriaLabelledby(),We=this.ngControl;if(Ue!==this._triggerAriaLabelledBy){const ve=this._elementRef.nativeElement;this._triggerAriaLabelledBy=Ue,Ue?ve.setAttribute("aria-labelledby",Ue):ve.removeAttribute("aria-labelledby")}We&&(this._previousControl!==We.control&&(void 0!==this._previousControl&&null!==We.disabled&&We.disabled!==this.disabled&&(this.disabled=We.disabled),this._previousControl=We.control),this.updateErrorState())}ngOnChanges(Ue){(Ue.disabled||Ue.userAriaDescribedBy)&&this.stateChanges.next(),Ue.typeaheadDebounceInterval&&this._keyManager&&this._keyManager.withTypeAhead(this._typeaheadDebounceInterval)}ngOnDestroy(){this._keyManager?.destroy(),this._destroy.next(),this._destroy.complete(),this.stateChanges.complete(),this._clearFromModal()}toggle(){this.panelOpen?this.close():this.open()}open(){this._canOpen()&&(this._applyModalPanelOwnership(),this._panelOpen=!0,this._keyManager.withHorizontalOrientation(null),this._highlightCorrectOption(),this._changeDetectorRef.markForCheck())}_applyModalPanelOwnership(){const Ue=this._elementRef.nativeElement.closest('body > .cdk-overlay-container [aria-modal="true"]');if(!Ue)return;const We=`${this.id}-panel`;this._trackedModal&&(0,s.iD)(this._trackedModal,"aria-owns",We),(0,s.Zf)(Ue,"aria-owns",We),this._trackedModal=Ue}_clearFromModal(){this._trackedModal&&((0,s.iD)(this._trackedModal,"aria-owns",`${this.id}-panel`),this._trackedModal=null)}close(){this._panelOpen&&(this._panelOpen=!1,this._keyManager.withHorizontalOrientation(this._isRtl()?"rtl":"ltr"),this._changeDetectorRef.markForCheck(),this._onTouched())}writeValue(Ue){this._assignValue(Ue)}registerOnChange(Ue){this._onChange=Ue}registerOnTouched(Ue){this._onTouched=Ue}setDisabledState(Ue){this.disabled=Ue,this._changeDetectorRef.markForCheck(),this.stateChanges.next()}get panelOpen(){return this._panelOpen}get selected(){return this.multiple?this._selectionModel?.selected||[]:this._selectionModel?.selected[0]}get triggerValue(){if(this.empty)return"";if(this._multiple){const Ue=this._selectionModel.selected.map(We=>We.viewValue);return this._isRtl()&&Ue.reverse(),Ue.join(", ")}return this._selectionModel.selected[0].viewValue}_isRtl(){return!!this._dir&&"rtl"===this._dir.value}_handleKeydown(Ue){this.disabled||(this.panelOpen?this._handleOpenKeydown(Ue):this._handleClosedKeydown(Ue))}_handleClosedKeydown(Ue){const We=Ue.keyCode,ve=We===u.JH||We===u.LH||We===u.oh||We===u.SV,we=We===u.K5||We===u.L_,at=this._keyManager;if(!at.isTyping()&&we&&!(0,u.Vb)(Ue)||(this.multiple||Ue.altKey)&&ve)Ue.preventDefault(),this.open();else if(!this.multiple){const De=this.selected;at.onKeydown(Ue);const je=this.selected;je&&De!==je&&this._liveAnnouncer.announce(je.viewValue,1e4)}}_handleOpenKeydown(Ue){const We=this._keyManager,ve=Ue.keyCode,we=ve===u.JH||ve===u.LH,at=We.isTyping();if(we&&Ue.altKey)Ue.preventDefault(),this.close();else if(at||ve!==u.K5&&ve!==u.L_||!We.activeItem||(0,u.Vb)(Ue))if(!at&&this._multiple&&ve===u.A&&Ue.ctrlKey){Ue.preventDefault();const De=this.options.some(je=>!je.disabled&&!je.selected);this.options.forEach(je=>{je.disabled||(De?je.select():je.deselect())})}else{const De=We.activeItemIndex;We.onKeydown(Ue),this._multiple&&we&&Ue.shiftKey&&We.activeItem&&We.activeItemIndex!==De&&We.activeItem._selectViaInteraction()}else Ue.preventDefault(),We.activeItem._selectViaInteraction()}_onFocus(){this.disabled||(this._focused=!0,this.stateChanges.next())}_onBlur(){this._focused=!1,this._keyManager?.cancelTypeahead(),!this.disabled&&!this.panelOpen&&(this._onTouched(),this._changeDetectorRef.markForCheck(),this.stateChanges.next())}_onAttached(){this._overlayDir.positionChange.pipe((0,L.q)(1)).subscribe(()=>{this._changeDetectorRef.detectChanges(),this._positioningSettled()})}_getPanelTheme(){return this._parentFormField?`mat-${this._parentFormField.color}`:""}get empty(){return!this._selectionModel||this._selectionModel.isEmpty()}_initializeSelection(){Promise.resolve().then(()=>{this.ngControl&&(this._value=this.ngControl.value),this._setSelectionByValue(this._value),this.stateChanges.next()})}_setSelectionByValue(Ue){if(this.options.forEach(We=>We.setInactiveStyles()),this._selectionModel.clear(),this.multiple&&Ue)Array.isArray(Ue),Ue.forEach(We=>this._selectOptionByValue(We)),this._sortValues();else{const We=this._selectOptionByValue(Ue);We?this._keyManager.updateActiveItem(We):this.panelOpen||this._keyManager.updateActiveItem(-1)}this._changeDetectorRef.markForCheck()}_selectOptionByValue(Ue){const We=this.options.find(ve=>{if(this._selectionModel.isSelected(ve))return!1;try{return null!=ve.value&&this._compareWith(ve.value,Ue)}catch{return!1}});return We&&this._selectionModel.select(We),We}_assignValue(Ue){return!!(Ue!==this._value||this._multiple&&Array.isArray(Ue))&&(this.options&&this._setSelectionByValue(Ue),this._value=Ue,!0)}_skipPredicate(Ue){return Ue.disabled}_initKeyManager(){this._keyManager=new s.s1(this.options).withTypeAhead(this._typeaheadDebounceInterval).withVerticalOrientation().withHorizontalOrientation(this._isRtl()?"rtl":"ltr").withHomeAndEnd().withPageUpDown().withAllowedModifierKeys(["shiftKey"]).skipPredicate(this._skipPredicate),this._keyManager.tabOut.subscribe(()=>{this.panelOpen&&(!this.multiple&&this._keyManager.activeItem&&this._keyManager.activeItem._selectViaInteraction(),this.focus(),this.close())}),this._keyManager.change.subscribe(()=>{this._panelOpen&&this.panel?this._scrollOptionIntoView(this._keyManager.activeItemIndex||0):!this._panelOpen&&!this.multiple&&this._keyManager.activeItem&&this._keyManager.activeItem._selectViaInteraction()})}_resetOptions(){const Ue=(0,M.T)(this.options.changes,this._destroy);this.optionSelectionChanges.pipe((0,E.R)(Ue)).subscribe(We=>{this._onSelect(We.source,We.isUserInput),We.isUserInput&&!this.multiple&&this._panelOpen&&(this.close(),this.focus())}),(0,M.T)(...this.options.map(We=>We._stateChanges)).pipe((0,E.R)(Ue)).subscribe(()=>{this._changeDetectorRef.detectChanges(),this.stateChanges.next()})}_onSelect(Ue,We){const ve=this._selectionModel.isSelected(Ue);null!=Ue.value||this._multiple?(ve!==Ue.selected&&(Ue.selected?this._selectionModel.select(Ue):this._selectionModel.deselect(Ue)),We&&this._keyManager.setActiveItem(Ue),this.multiple&&(this._sortValues(),We&&this.focus())):(Ue.deselect(),this._selectionModel.clear(),null!=this.value&&this._propagateChanges(Ue.value)),ve!==this._selectionModel.isSelected(Ue)&&this._propagateChanges(),this.stateChanges.next()}_sortValues(){if(this.multiple){const Ue=this.options.toArray();this._selectionModel.sort((We,ve)=>this.sortComparator?this.sortComparator(We,ve,Ue):Ue.indexOf(We)-Ue.indexOf(ve)),this.stateChanges.next()}}_propagateChanges(Ue){let We=null;We=this.multiple?this.selected.map(ve=>ve.value):this.selected?this.selected.value:Ue,this._value=We,this.valueChange.emit(We),this._onChange(We),this.selectionChange.emit(this._getChangeEvent(We)),this._changeDetectorRef.markForCheck()}_highlightCorrectOption(){if(this._keyManager)if(this.empty){let Ue=-1;for(let We=0;We0}focus(Ue){this._elementRef.nativeElement.focus(Ue)}_getPanelAriaLabelledby(){if(this.ariaLabel)return null;const Ue=this._parentFormField?.getLabelId();return this.ariaLabelledby?(Ue?Ue+" ":"")+this.ariaLabelledby:Ue}_getAriaActiveDescendant(){return this.panelOpen&&this._keyManager&&this._keyManager.activeItem?this._keyManager.activeItem.id:null}_getTriggerAriaLabelledby(){if(this.ariaLabel)return null;const Ue=this._parentFormField?.getLabelId();let We=(Ue?Ue+" ":"")+this._valueId;return this.ariaLabelledby&&(We+=" "+this.ariaLabelledby),We}_panelDoneAnimating(Ue){this.openedChange.emit(Ue)}setDescribedByIds(Ue){Ue.length?this._elementRef.nativeElement.setAttribute("aria-describedby",Ue.join(" ")):this._elementRef.nativeElement.removeAttribute("aria-describedby")}onContainerClick(){this.focus(),this.open()}get shouldLabelFloat(){return this._panelOpen||!this.empty||this._focused&&!!this._placeholder}}return $t.\u0275fac=function(Ue){return new(Ue||$t)(C.\u0275\u0275directiveInject(c.rL),C.\u0275\u0275directiveInject(C.ChangeDetectorRef),C.\u0275\u0275directiveInject(C.NgZone),C.\u0275\u0275directiveInject(b.ErrorStateMatcher),C.\u0275\u0275directiveInject(C.ElementRef),C.\u0275\u0275directiveInject(l.Is,8),C.\u0275\u0275directiveInject(h.NgForm,8),C.\u0275\u0275directiveInject(h.FormGroupDirective,8),C.\u0275\u0275directiveInject(v.G_,8),C.\u0275\u0275directiveInject(h.NgControl,10),C.\u0275\u0275injectAttribute("tabindex"),C.\u0275\u0275directiveInject(Me),C.\u0275\u0275directiveInject(s.Kd),C.\u0275\u0275directiveInject(Xe,8))},$t.\u0275dir=C.\u0275\u0275defineDirective({type:$t,viewQuery:function(Ue,We){if(1&Ue&&(C.\u0275\u0275viewQuery(R,5),C.\u0275\u0275viewQuery(j,5),C.\u0275\u0275viewQuery(n.pI,5)),2&Ue){let ve;C.\u0275\u0275queryRefresh(ve=C.\u0275\u0275loadQuery())&&(We.trigger=ve.first),C.\u0275\u0275queryRefresh(ve=C.\u0275\u0275loadQuery())&&(We.panel=ve.first),C.\u0275\u0275queryRefresh(ve=C.\u0275\u0275loadQuery())&&(We._overlayDir=ve.first)}},inputs:{userAriaDescribedBy:["aria-describedby","userAriaDescribedBy"],panelClass:"panelClass",placeholder:"placeholder",required:"required",multiple:"multiple",disableOptionCentering:"disableOptionCentering",compareWith:"compareWith",value:"value",ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],errorStateMatcher:"errorStateMatcher",typeaheadDebounceInterval:"typeaheadDebounceInterval",sortComparator:"sortComparator",id:"id"},outputs:{openedChange:"openedChange",_openedStream:"opened",_closedStream:"closed",selectionChange:"selectionChange",valueChange:"valueChange"},features:[C.\u0275\u0275InheritDefinitionFeature,C.\u0275\u0275NgOnChangesFeature]}),$t})();function nt($t,Yt){if(1&$t&&(C.\u0275\u0275elementStart(0,"span",8),C.\u0275\u0275text(1),C.\u0275\u0275elementEnd()),2&$t){const Ue=C.\u0275\u0275nextContext();C.\u0275\u0275advance(1),C.\u0275\u0275textInterpolate(Ue.placeholder)}}function ot($t,Yt){if(1&$t&&(C.\u0275\u0275elementStart(0,"span",12),C.\u0275\u0275text(1),C.\u0275\u0275elementEnd()),2&$t){const Ue=C.\u0275\u0275nextContext(2);C.\u0275\u0275advance(1),C.\u0275\u0275textInterpolate(Ue.triggerValue)}}function vt($t,Yt){1&$t&&C.\u0275\u0275projection(0,0,["*ngSwitchCase","true"])}function rt($t,Yt){if(1&$t&&(C.\u0275\u0275elementStart(0,"span",9),C.\u0275\u0275template(1,ot,2,1,"span",10),C.\u0275\u0275template(2,vt,1,0,"ng-content",11),C.\u0275\u0275elementEnd()),2&$t){const Ue=C.\u0275\u0275nextContext();C.\u0275\u0275property("ngSwitch",!!Ue.customTrigger),C.\u0275\u0275advance(2),C.\u0275\u0275property("ngSwitchCase",!0)}}function J($t,Yt){if(1&$t){const Ue=C.\u0275\u0275getCurrentView();C.\u0275\u0275elementStart(0,"div",13)(1,"div",14,15),C.\u0275\u0275listener("@transformPanel.done",function(ve){C.\u0275\u0275restoreView(Ue);const we=C.\u0275\u0275nextContext();return C.\u0275\u0275resetView(we._panelDoneAnimatingStream.next(ve.toState))})("keydown",function(ve){C.\u0275\u0275restoreView(Ue);const we=C.\u0275\u0275nextContext();return C.\u0275\u0275resetView(we._handleKeydown(ve))}),C.\u0275\u0275projection(3,1),C.\u0275\u0275elementEnd()()}if(2&$t){const Ue=C.\u0275\u0275nextContext();C.\u0275\u0275property("@transformPanelWrap",void 0),C.\u0275\u0275advance(1),C.\u0275\u0275classMapInterpolate1("mat-select-panel ",Ue._getPanelTheme(),""),C.\u0275\u0275styleProp("transform-origin",Ue._transformOrigin)("font-size",Ue._triggerFontSize,"px"),C.\u0275\u0275property("ngClass",Ue.panelClass)("@transformPanel",Ue.multiple?"showing-multiple":"showing"),C.\u0275\u0275attribute("id",Ue.id+"-panel")("aria-multiselectable",Ue.multiple)("aria-label",Ue.ariaLabel||null)("aria-labelledby",Ue._getPanelAriaLabelledby())}}const Ce=[[["mat-select-trigger"]],"*"],ee=["mat-select-trigger","*"],ae={transformPanelWrap:(0,D.X$)("transformPanelWrap",[(0,D.eR)("* => void",(0,D.IO)("@transformPanel",[(0,D.pV)()],{optional:!0}))]),transformPanel:(0,D.X$)("transformPanel",[(0,D.SB)("void",(0,D.oB)({transform:"scaleY(0.8)",minWidth:"100%",opacity:0})),(0,D.SB)("showing",(0,D.oB)({opacity:1,minWidth:"calc(100% + 32px)",transform:"scaleY(1)"})),(0,D.SB)("showing-multiple",(0,D.oB)({opacity:1,minWidth:"calc(100% + 64px)",transform:"scaleY(1)"})),(0,D.eR)("void => *",(0,D.jt)("120ms cubic-bezier(0, 0, 0.2, 1)")),(0,D.eR)("* => void",(0,D.jt)("100ms 25ms linear",(0,D.oB)({opacity:0})))])};class Kt{constructor(Yt,Ue){this.source=Yt,this.value=Ue}}let ze=(()=>{class $t{}return $t.\u0275fac=function(Ue){return new(Ue||$t)},$t.\u0275dir=C.\u0275\u0275defineDirective({type:$t,selectors:[["mat-select-trigger"]],features:[C.\u0275\u0275ProvidersFeature([{provide:$e,useExisting:$t}])]}),$t})(),yt=(()=>{class $t extends tt{constructor(){super(...arguments),this._scrollTop=0,this._triggerFontSize=0,this._transformOrigin="top",this._offsetY=0,this._positions=[{originX:"start",originY:"top",overlayX:"start",overlayY:"top"},{originX:"start",originY:"bottom",overlayX:"start",overlayY:"bottom"}]}_calculateOverlayScroll(Ue,We,ve){const we=this._getItemHeight();return Math.min(Math.max(0,we*Ue-We+we/2),ve)}ngOnInit(){super.ngOnInit(),this._viewportRuler.change().pipe((0,E.R)(this._destroy)).subscribe(()=>{this.panelOpen&&(this._triggerRect=this.trigger.nativeElement.getBoundingClientRect(),this._changeDetectorRef.markForCheck())})}open(){super._canOpen()&&(super.open(),this._triggerRect=this.trigger.nativeElement.getBoundingClientRect(),this._triggerFontSize=parseInt(getComputedStyle(this.trigger.nativeElement).fontSize||"0"),this._calculateOverlayPosition(),this._ngZone.onStable.pipe((0,L.q)(1)).subscribe(()=>{this._triggerFontSize&&this._overlayDir.overlayRef&&this._overlayDir.overlayRef.overlayElement&&(this._overlayDir.overlayRef.overlayElement.style.fontSize=`${this._triggerFontSize}px`)}))}_scrollOptionIntoView(Ue){const We=(0,b._countGroupLabelsBeforeOption)(Ue,this.options,this.optionGroups),ve=this._getItemHeight();this.panel.nativeElement.scrollTop=0===Ue&&1===We?0:(0,b._getOptionScrollPosition)((Ue+We)*ve,ve,this.panel.nativeElement.scrollTop,256)}_positioningSettled(){this._calculateOverlayOffsetX(),this.panel.nativeElement.scrollTop=this._scrollTop}_panelDoneAnimating(Ue){this.panelOpen?this._scrollTop=0:(this._overlayDir.offsetX=0,this._changeDetectorRef.markForCheck()),super._panelDoneAnimating(Ue)}_getChangeEvent(Ue){return new Kt(this,Ue)}_getOverlayMinWidth(){return this._triggerRect?.width}_calculateOverlayOffsetX(){const Ue=this._overlayDir.overlayRef.overlayElement.getBoundingClientRect(),We=this._viewportRuler.getViewportSize(),ve=this._isRtl(),we=this.multiple?56:32;let at;if(this.multiple)at=40;else if(this.disableOptionCentering)at=16;else{let ke=this._selectionModel.selected[0]||this.options.first;at=ke&&ke.group?32:16}ve||(at*=-1);const De=0-(Ue.left+at-(ve?we:0)),je=Ue.right+at-We.width+(ve?0:we);De>0?at+=De+8:je>0&&(at-=je+8),this._overlayDir.offsetX=Math.round(at),this._overlayDir.overlayRef.updatePosition()}_calculateOverlayOffsetY(Ue,We,ve){const we=this._getItemHeight(),at=(we-this._triggerRect.height)/2,De=Math.floor(256/we);let je;return this.disableOptionCentering?0:(je=0===this._scrollTop?Ue*we:this._scrollTop===ve?(Ue-(this._getItemCount()-De))*we+(we-(this._getItemCount()*we-256)%we):We-we/2,Math.round(-1*je-at))}_checkOverlayWithinViewport(Ue){const We=this._getItemHeight(),ve=this._viewportRuler.getViewportSize(),we=this._triggerRect.top-8,at=ve.height-this._triggerRect.bottom-8,De=Math.abs(this._offsetY),ke=Math.min(this._getItemCount()*We,256)-De-this._triggerRect.height;ke>at?this._adjustPanelUp(ke,at):De>we?this._adjustPanelDown(De,we,Ue):this._transformOrigin=this._getOriginBasedOnOption()}_adjustPanelUp(Ue,We){const ve=Math.round(Ue-We);this._scrollTop-=ve,this._offsetY-=ve,this._transformOrigin=this._getOriginBasedOnOption(),this._scrollTop<=0&&(this._scrollTop=0,this._offsetY=0,this._transformOrigin="50% bottom 0px")}_adjustPanelDown(Ue,We,ve){const we=Math.round(Ue-We);if(this._scrollTop+=we,this._offsetY+=we,this._transformOrigin=this._getOriginBasedOnOption(),this._scrollTop>=ve)return this._scrollTop=ve,this._offsetY=0,void(this._transformOrigin="50% top 0px")}_calculateOverlayPosition(){const Ue=this._getItemHeight(),We=this._getItemCount(),ve=Math.min(We*Ue,256),at=We*Ue-ve;let De;De=this.empty?0:Math.max(this.options.toArray().indexOf(this._selectionModel.selected[0]),0),De+=(0,b._countGroupLabelsBeforeOption)(De,this.options,this.optionGroups);const je=ve/2;this._scrollTop=this._calculateOverlayScroll(De,je,at),this._offsetY=this._calculateOverlayOffsetY(De,je,at),this._checkOverlayWithinViewport(at)}_getOriginBasedOnOption(){const Ue=this._getItemHeight(),We=(Ue-this._triggerRect.height)/2;return`50% ${Math.abs(this._offsetY)-We+Ue/2}px 0px`}_getItemHeight(){return 3*this._triggerFontSize}_getItemCount(){return this.options.length+this.optionGroups.length}}return $t.\u0275fac=function(){let Yt;return function(We){return(Yt||(Yt=C.\u0275\u0275getInheritedFactory($t)))(We||$t)}}(),$t.\u0275cmp=C.\u0275\u0275defineComponent({type:$t,selectors:[["mat-select"]],contentQueries:function(Ue,We,ve){if(1&Ue&&(C.\u0275\u0275contentQuery(ve,$e,5),C.\u0275\u0275contentQuery(ve,o.MatLegacyOption,5),C.\u0275\u0275contentQuery(ve,b.MAT_OPTGROUP,5)),2&Ue){let we;C.\u0275\u0275queryRefresh(we=C.\u0275\u0275loadQuery())&&(We.customTrigger=we.first),C.\u0275\u0275queryRefresh(we=C.\u0275\u0275loadQuery())&&(We.options=we),C.\u0275\u0275queryRefresh(we=C.\u0275\u0275loadQuery())&&(We.optionGroups=we)}},hostAttrs:["role","combobox","aria-autocomplete","none","aria-haspopup","true","ngSkipHydration","",1,"mat-select"],hostVars:19,hostBindings:function(Ue,We){1&Ue&&C.\u0275\u0275listener("keydown",function(we){return We._handleKeydown(we)})("focus",function(){return We._onFocus()})("blur",function(){return We._onBlur()}),2&Ue&&(C.\u0275\u0275attribute("id",We.id)("tabindex",We.tabIndex)("aria-controls",We.panelOpen?We.id+"-panel":null)("aria-expanded",We.panelOpen)("aria-label",We.ariaLabel||null)("aria-required",We.required.toString())("aria-disabled",We.disabled.toString())("aria-invalid",We.errorState)("aria-activedescendant",We._getAriaActiveDescendant()),C.\u0275\u0275classProp("mat-select-disabled",We.disabled)("mat-select-invalid",We.errorState)("mat-select-required",We.required)("mat-select-empty",We.empty)("mat-select-multiple",We.multiple))},inputs:{disabled:"disabled",disableRipple:"disableRipple",tabIndex:"tabIndex"},exportAs:["matSelect"],features:[C.\u0275\u0275ProvidersFeature([{provide:v.Eo,useExisting:$t},{provide:b.MAT_OPTION_PARENT_COMPONENT,useExisting:$t}]),C.\u0275\u0275InheritDefinitionFeature],ngContentSelectors:ee,decls:9,vars:12,consts:[["cdk-overlay-origin","",1,"mat-select-trigger",3,"click"],["origin","cdkOverlayOrigin","trigger",""],[1,"mat-select-value",3,"ngSwitch"],["class","mat-select-placeholder mat-select-min-line",4,"ngSwitchCase"],["class","mat-select-value-text",3,"ngSwitch",4,"ngSwitchCase"],[1,"mat-select-arrow-wrapper"],[1,"mat-select-arrow"],["cdk-connected-overlay","","cdkConnectedOverlayLockPosition","","cdkConnectedOverlayHasBackdrop","","cdkConnectedOverlayBackdropClass","cdk-overlay-transparent-backdrop",3,"cdkConnectedOverlayPanelClass","cdkConnectedOverlayScrollStrategy","cdkConnectedOverlayOrigin","cdkConnectedOverlayOpen","cdkConnectedOverlayPositions","cdkConnectedOverlayMinWidth","cdkConnectedOverlayOffsetY","backdropClick","attach","detach"],[1,"mat-select-placeholder","mat-select-min-line"],[1,"mat-select-value-text",3,"ngSwitch"],["class","mat-select-min-line",4,"ngSwitchDefault"],[4,"ngSwitchCase"],[1,"mat-select-min-line"],[1,"mat-select-panel-wrap"],["role","listbox","tabindex","-1",3,"ngClass","keydown"],["panel",""]],template:function(Ue,We){if(1&Ue&&(C.\u0275\u0275projectionDef(Ce),C.\u0275\u0275elementStart(0,"div",0,1),C.\u0275\u0275listener("click",function(){return We.toggle()}),C.\u0275\u0275elementStart(3,"div",2),C.\u0275\u0275template(4,nt,2,1,"span",3),C.\u0275\u0275template(5,rt,3,2,"span",4),C.\u0275\u0275elementEnd(),C.\u0275\u0275elementStart(6,"div",5),C.\u0275\u0275element(7,"div",6),C.\u0275\u0275elementEnd()(),C.\u0275\u0275template(8,J,4,14,"ng-template",7),C.\u0275\u0275listener("backdropClick",function(){return We.close()})("attach",function(){return We._onAttached()})("detach",function(){return We.close()})),2&Ue){const ve=C.\u0275\u0275reference(1);C.\u0275\u0275attribute("aria-owns",We.panelOpen?We.id+"-panel":null),C.\u0275\u0275advance(3),C.\u0275\u0275property("ngSwitch",We.empty),C.\u0275\u0275attribute("id",We._valueId),C.\u0275\u0275advance(1),C.\u0275\u0275property("ngSwitchCase",!0),C.\u0275\u0275advance(1),C.\u0275\u0275property("ngSwitchCase",!1),C.\u0275\u0275advance(3),C.\u0275\u0275property("cdkConnectedOverlayPanelClass",We._overlayPanelClass)("cdkConnectedOverlayScrollStrategy",We._scrollStrategy)("cdkConnectedOverlayOrigin",ve)("cdkConnectedOverlayOpen",We.panelOpen)("cdkConnectedOverlayPositions",We._positions)("cdkConnectedOverlayMinWidth",We._getOverlayMinWidth())("cdkConnectedOverlayOffsetY",We._offsetY)}},dependencies:[p.NgClass,p.NgSwitch,p.NgSwitchCase,p.NgSwitchDefault,n.pI,n.xu],styles:['.mat-select{display:inline-block;width:100%;outline:none}.mat-select-trigger{display:inline-flex;align-items:center;cursor:pointer;position:relative;box-sizing:border-box;width:100%}.mat-select-disabled .mat-select-trigger{-webkit-user-select:none;user-select:none;cursor:default}.mat-select-value{width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mat-select-value-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mat-select-arrow-wrapper{height:16px;flex-shrink:0;display:inline-flex;align-items:center}.mat-form-field-appearance-fill .mat-select-arrow-wrapper{transform:translateY(-50%)}.mat-form-field-appearance-outline .mat-select-arrow-wrapper{transform:translateY(-25%)}.mat-form-field-appearance-standard.mat-form-field-has-label .mat-select:not(.mat-select-empty) .mat-select-arrow-wrapper{transform:translateY(-50%)}.mat-form-field-appearance-standard .mat-select.mat-select-empty .mat-select-arrow-wrapper{transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}._mat-animation-noopable.mat-form-field-appearance-standard .mat-select.mat-select-empty .mat-select-arrow-wrapper{transition:none}.mat-select-arrow{width:0;height:0;border-left:5px solid rgba(0,0,0,0);border-right:5px solid rgba(0,0,0,0);border-top:5px solid;margin:0 4px}.mat-form-field.mat-focused .mat-select-arrow{transform:translateX(0)}.mat-select-panel-wrap{flex-basis:100%}.mat-select-panel{min-width:112px;max-width:280px;overflow:auto;-webkit-overflow-scrolling:touch;padding-top:0;padding-bottom:0;max-height:256px;min-width:100%;border-radius:4px;outline:0}.cdk-high-contrast-active .mat-select-panel{outline:solid 1px}.mat-select-panel .mat-optgroup-label,.mat-select-panel .mat-option{font-size:inherit;line-height:3em;height:3em}.mat-form-field-type-mat-select:not(.mat-form-field-disabled) .mat-form-field-flex{cursor:pointer}.mat-form-field-type-mat-select .mat-form-field-label{width:calc(100% - 18px)}.mat-select-placeholder{transition:color 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1)}._mat-animation-noopable .mat-select-placeholder{transition:none}.mat-form-field-hide-placeholder .mat-select-placeholder{color:rgba(0,0,0,0);-webkit-text-fill-color:rgba(0,0,0,0);transition:none;display:block}.mat-select-min-line:empty::before{content:" ";white-space:pre;width:1px;display:inline-block;visibility:hidden}'],encapsulation:2,data:{animation:[ae.transformPanelWrap,ae.transformPanel]},changeDetection:0}),$t})(),Bt=(()=>{class $t{}return $t.\u0275fac=function(Ue){return new(Ue||$t)},$t.\u0275mod=C.\u0275\u0275defineNgModule({type:$t}),$t.\u0275inj=C.\u0275\u0275defineInjector({providers:[Be],imports:[p.CommonModule,n.U8,o.MatLegacyOptionModule,b.MatCommonModule,c.ZD,a.MatLegacyFormFieldModule,o.MatLegacyOptionModule,b.MatCommonModule]}),$t})()},1830:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{MAT_LEGACY_SLIDE_TOGGLE_DEFAULT_OPTIONS:()=>O,MAT_LEGACY_SLIDE_TOGGLE_REQUIRED_VALIDATOR:()=>_,MAT_LEGACY_SLIDE_TOGGLE_VALUE_ACCESSOR:()=>E,MatLegacySlideToggle:()=>R,MatLegacySlideToggleChange:()=>D,MatLegacySlideToggleModule:()=>j,MatLegacySlideToggleRequiredValidator:()=>M,_MatLegacySlideToggleBase:()=>h,_MatLegacySlideToggleRequiredValidatorModule:()=>x});var n=g(7131),p=g(5879),C=g(3680),b=g(4300),o=g(6223),v=g(2495);let r=0;const u=(0,C.mixinTabIndex)((0,C.mixinColor)((0,C.mixinDisableRipple)((0,C.mixinDisabled)(class{constructor(N){this._elementRef=N}}))));let h=(()=>{class N extends u{get required(){return this._required}set required(k){this._required=(0,v.Ig)(k)}get checked(){return this._checked}set checked(k){this._checked=(0,v.Ig)(k),this._changeDetectorRef.markForCheck()}get inputId(){return`${this.id||this._uniqueId}-input`}constructor(k,F,Y,se,ne,me,$){super(k),this._focusMonitor=F,this._changeDetectorRef=Y,this.defaults=ne,this._onChange=q=>{},this._onTouched=()=>{},this._required=!1,this._checked=!1,this.name=null,this.labelPosition="after",this.ariaLabel=null,this.ariaLabelledby=null,this.change=new p.EventEmitter,this.toggleChange=new p.EventEmitter,this.tabIndex=parseInt(se)||0,this.color=this.defaultColor=ne.color||"accent",this._noopAnimations="NoopAnimations"===me,this.id=this._uniqueId=`${$}${++r}`}ngAfterContentInit(){this._focusMonitor.monitor(this._elementRef,!0).subscribe(k=>{"keyboard"===k||"program"===k?(this._focused=!0,this._changeDetectorRef.markForCheck()):k||Promise.resolve().then(()=>{this._focused=!1,this._onTouched(),this._changeDetectorRef.markForCheck()})})}ngOnDestroy(){this._focusMonitor.stopMonitoring(this._elementRef)}writeValue(k){this.checked=!!k}registerOnChange(k){this._onChange=k}registerOnTouched(k){this._onTouched=k}setDisabledState(k){this.disabled=k,this._changeDetectorRef.markForCheck()}toggle(){this.checked=!this.checked,this._onChange(this.checked)}_emitChangeEvent(){this._onChange(this.checked),this.change.emit(this._createChangeEvent(this.checked))}}return N.\u0275fac=function(k){p.\u0275\u0275invalidFactory()},N.\u0275dir=p.\u0275\u0275defineDirective({type:N,inputs:{name:"name",id:"id",labelPosition:"labelPosition",ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],ariaDescribedby:["aria-describedby","ariaDescribedby"],required:"required",checked:"checked"},outputs:{change:"change",toggleChange:"toggleChange"},features:[p.\u0275\u0275InheritDefinitionFeature]}),N})();const _={provide:o.NG_VALIDATORS,useExisting:(0,p.forwardRef)(()=>M),multi:!0};let M=(()=>{class N extends o.CheckboxRequiredValidator{}return N.\u0275fac=function(){let S;return function(F){return(S||(S=p.\u0275\u0275getInheritedFactory(N)))(F||N)}}(),N.\u0275dir=p.\u0275\u0275defineDirective({type:N,selectors:[["mat-slide-toggle","required","","formControlName",""],["mat-slide-toggle","required","","formControl",""],["mat-slide-toggle","required","","ngModel",""]],features:[p.\u0275\u0275ProvidersFeature([_]),p.\u0275\u0275InheritDefinitionFeature]}),N})(),x=(()=>{class N{}return N.\u0275fac=function(k){return new(k||N)},N.\u0275mod=p.\u0275\u0275defineNgModule({type:N}),N.\u0275inj=p.\u0275\u0275defineInjector({}),N})();const L=["input"],A=function(N){return{enterDuration:N}},T=["*"],O=new p.InjectionToken("mat-slide-toggle-default-options",{providedIn:"root",factory:()=>({disableToggleValue:!1})}),E={provide:o.NG_VALUE_ACCESSOR,useExisting:(0,p.forwardRef)(()=>R),multi:!0};class D{constructor(S,k){this.source=S,this.checked=k}}let R=(()=>{class N extends h{constructor(k,F,Y,se,ne,me){super(k,F,Y,se,ne,me,"mat-slide-toggle-")}_createChangeEvent(k){return new D(this,k)}_onChangeEvent(k){k.stopPropagation(),this.toggleChange.emit(),this.defaults.disableToggleValue?this._inputElement.nativeElement.checked=this.checked:(this.checked=this._inputElement.nativeElement.checked,this._emitChangeEvent())}_onInputClick(k){k.stopPropagation()}focus(k,F){F?this._focusMonitor.focusVia(this._inputElement,F,k):this._inputElement.nativeElement.focus(k)}_onLabelTextChange(){this._changeDetectorRef.detectChanges()}}return N.\u0275fac=function(k){return new(k||N)(p.\u0275\u0275directiveInject(p.ElementRef),p.\u0275\u0275directiveInject(b.tE),p.\u0275\u0275directiveInject(p.ChangeDetectorRef),p.\u0275\u0275injectAttribute("tabindex"),p.\u0275\u0275directiveInject(O),p.\u0275\u0275directiveInject(p.ANIMATION_MODULE_TYPE,8))},N.\u0275cmp=p.\u0275\u0275defineComponent({type:N,selectors:[["mat-slide-toggle"]],viewQuery:function(k,F){if(1&k&&p.\u0275\u0275viewQuery(L,5),2&k){let Y;p.\u0275\u0275queryRefresh(Y=p.\u0275\u0275loadQuery())&&(F._inputElement=Y.first)}},hostAttrs:[1,"mat-slide-toggle"],hostVars:13,hostBindings:function(k,F){2&k&&(p.\u0275\u0275hostProperty("id",F.id),p.\u0275\u0275attribute("tabindex",null)("aria-label",null)("aria-labelledby",null)("name",null),p.\u0275\u0275classProp("mat-checked",F.checked)("mat-disabled",F.disabled)("mat-slide-toggle-label-before","before"==F.labelPosition)("_mat-animation-noopable",F._noopAnimations))},inputs:{disabled:"disabled",disableRipple:"disableRipple",color:"color",tabIndex:"tabIndex"},exportAs:["matSlideToggle"],features:[p.\u0275\u0275ProvidersFeature([E]),p.\u0275\u0275InheritDefinitionFeature],ngContentSelectors:T,decls:14,vars:20,consts:[[1,"mat-slide-toggle-label"],["label",""],[1,"mat-slide-toggle-bar"],["type","checkbox","role","switch",1,"mat-slide-toggle-input","cdk-visually-hidden",3,"id","required","tabIndex","checked","disabled","change","click"],["input",""],[1,"mat-slide-toggle-thumb-container"],[1,"mat-slide-toggle-thumb"],["mat-ripple","",1,"mat-slide-toggle-ripple","mat-focus-indicator",3,"matRippleTrigger","matRippleDisabled","matRippleCentered","matRippleRadius","matRippleAnimation"],[1,"mat-ripple-element","mat-slide-toggle-persistent-ripple"],[1,"mat-slide-toggle-content",3,"cdkObserveContent"],["labelContent",""],[2,"display","none"]],template:function(k,F){if(1&k&&(p.\u0275\u0275projectionDef(),p.\u0275\u0275elementStart(0,"label",0,1)(2,"span",2)(3,"input",3,4),p.\u0275\u0275listener("change",function(se){return F._onChangeEvent(se)})("click",function(se){return F._onInputClick(se)}),p.\u0275\u0275elementEnd(),p.\u0275\u0275elementStart(5,"span",5),p.\u0275\u0275element(6,"span",6),p.\u0275\u0275elementStart(7,"span",7),p.\u0275\u0275element(8,"span",8),p.\u0275\u0275elementEnd()()(),p.\u0275\u0275elementStart(9,"span",9,10),p.\u0275\u0275listener("cdkObserveContent",function(){return F._onLabelTextChange()}),p.\u0275\u0275elementStart(11,"span",11),p.\u0275\u0275text(12,"\xa0"),p.\u0275\u0275elementEnd(),p.\u0275\u0275projection(13),p.\u0275\u0275elementEnd()()),2&k){const Y=p.\u0275\u0275reference(1),se=p.\u0275\u0275reference(10);p.\u0275\u0275attribute("for",F.inputId),p.\u0275\u0275advance(2),p.\u0275\u0275classProp("mat-slide-toggle-bar-no-side-margin",!se.textContent||!se.textContent.trim()),p.\u0275\u0275advance(1),p.\u0275\u0275property("id",F.inputId)("required",F.required)("tabIndex",F.tabIndex)("checked",F.checked)("disabled",F.disabled),p.\u0275\u0275attribute("name",F.name)("aria-checked",F.checked)("aria-label",F.ariaLabel)("aria-labelledby",F.ariaLabelledby)("aria-describedby",F.ariaDescribedby),p.\u0275\u0275advance(4),p.\u0275\u0275property("matRippleTrigger",Y)("matRippleDisabled",F.disableRipple||F.disabled)("matRippleCentered",!0)("matRippleRadius",20)("matRippleAnimation",p.\u0275\u0275pureFunction1(18,A,F._noopAnimations?0:150))}},dependencies:[C.MatRipple,n.wD],styles:['.mat-slide-toggle{display:inline-block;height:24px;max-width:100%;line-height:24px;white-space:nowrap;outline:none;-webkit-tap-highlight-color:rgba(0,0,0,0)}.mat-slide-toggle.mat-checked .mat-slide-toggle-thumb-container{transform:translate3d(16px, 0, 0)}[dir=rtl] .mat-slide-toggle.mat-checked .mat-slide-toggle-thumb-container{transform:translate3d(-16px, 0, 0)}.mat-slide-toggle.mat-disabled{opacity:.38}.mat-slide-toggle.mat-disabled .mat-slide-toggle-label,.mat-slide-toggle.mat-disabled .mat-slide-toggle-thumb-container{cursor:default}.mat-slide-toggle-label{-webkit-user-select:none;user-select:none;display:flex;flex:1;flex-direction:row;align-items:center;height:inherit;cursor:pointer}.mat-slide-toggle-content{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mat-slide-toggle-label-before .mat-slide-toggle-label{order:1}.mat-slide-toggle-label-before .mat-slide-toggle-bar{order:2}[dir=rtl] .mat-slide-toggle-label-before .mat-slide-toggle-bar,.mat-slide-toggle-bar{margin-right:8px;margin-left:0}[dir=rtl] .mat-slide-toggle-bar,.mat-slide-toggle-label-before .mat-slide-toggle-bar{margin-left:8px;margin-right:0}.mat-slide-toggle-bar-no-side-margin{margin-left:0;margin-right:0}.mat-slide-toggle-thumb-container{position:absolute;z-index:1;width:20px;height:20px;top:-3px;left:0;transform:translate3d(0, 0, 0);transition:all 80ms linear;transition-property:transform}._mat-animation-noopable .mat-slide-toggle-thumb-container{transition:none}[dir=rtl] .mat-slide-toggle-thumb-container{left:auto;right:0}.mat-slide-toggle-thumb{height:20px;width:20px;border-radius:50%;display:block}.mat-slide-toggle-bar{position:relative;width:36px;height:14px;flex-shrink:0;border-radius:8px}.mat-slide-toggle-input{bottom:0;left:10px}[dir=rtl] .mat-slide-toggle-input{left:auto;right:10px}.mat-slide-toggle-bar,.mat-slide-toggle-thumb{transition:all 80ms linear;transition-property:background-color;transition-delay:50ms}._mat-animation-noopable .mat-slide-toggle-bar,._mat-animation-noopable .mat-slide-toggle-thumb{transition:none}.mat-slide-toggle .mat-slide-toggle-ripple{position:absolute;top:calc(50% - 20px);left:calc(50% - 20px);height:40px;width:40px;z-index:1;pointer-events:none}.mat-slide-toggle .mat-slide-toggle-ripple .mat-ripple-element:not(.mat-slide-toggle-persistent-ripple){opacity:.12}.mat-slide-toggle-persistent-ripple{width:100%;height:100%;transform:none}.mat-slide-toggle-bar:hover .mat-slide-toggle-persistent-ripple{opacity:.04}.mat-slide-toggle:not(.mat-disabled).cdk-keyboard-focused .mat-slide-toggle-persistent-ripple{opacity:.12}.mat-slide-toggle-persistent-ripple,.mat-slide-toggle.mat-disabled .mat-slide-toggle-bar:hover .mat-slide-toggle-persistent-ripple{opacity:0}@media(hover: none){.mat-slide-toggle-bar:hover .mat-slide-toggle-persistent-ripple{display:none}}.mat-slide-toggle-input:focus~.mat-slide-toggle-thumb-container .mat-focus-indicator::before{content:""}.cdk-high-contrast-active .mat-slide-toggle-thumb,.cdk-high-contrast-active .mat-slide-toggle-bar{border:1px solid}'],encapsulation:2,changeDetection:0}),N})(),j=(()=>{class N{}return N.\u0275fac=function(k){return new(k||N)},N.\u0275mod=p.\u0275\u0275defineNgModule({type:N}),N.\u0275inj=p.\u0275\u0275defineInjector({imports:[x,C.MatRippleModule,C.MatCommonModule,n.Q8,x,C.MatCommonModule]}),N})()},4433:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{MAT_LEGACY_SLIDER_VALUE_ACCESSOR:()=>M,MatLegacySlider:()=>L,MatLegacySliderChange:()=>x,MatLegacySliderModule:()=>R});var n=g(6814),p=g(5879),C=g(3680),b=g(4300),o=g(9388),v=g(2495),a=g(6028),c=g(6223),s=g(2831),l=g(7394);const d=["sliderWrapper"],r=(0,s.i$)({passive:!1}),M={provide:c.NG_VALUE_ACCESSOR,useExisting:(0,p.forwardRef)(()=>L),multi:!0};class x{}const w=(0,C.mixinTabIndex)((0,C.mixinColor)((0,C.mixinDisabled)(class{constructor(j){this._elementRef=j}}),"accent"));let L=(()=>{class j extends w{get invert(){return this._invert}set invert(S){this._invert=(0,v.Ig)(S)}get max(){return this._max}set max(S){this._max=(0,v.su)(S,this._max),this._percent=this._calculatePercentage(this._value),this._changeDetectorRef.markForCheck()}get min(){return this._min}set min(S){this._min=(0,v.su)(S,this._min),this._percent=this._calculatePercentage(this._value),this._changeDetectorRef.markForCheck()}get step(){return this._step}set step(S){this._step=(0,v.su)(S,this._step),this._step%1!=0&&(this._roundToDecimal=this._step.toString().split(".").pop().length),this._changeDetectorRef.markForCheck()}get thumbLabel(){return this._thumbLabel}set thumbLabel(S){this._thumbLabel=(0,v.Ig)(S)}get tickInterval(){return this._tickInterval}set tickInterval(S){this._tickInterval="auto"===S?"auto":"number"==typeof S||"string"==typeof S?(0,v.su)(S,this._tickInterval):0}get value(){return null===this._value&&(this.value=this._min),this._value}set value(S){if(S!==this._value){let k=(0,v.su)(S,0);this._roundToDecimal&&k!==this.min&&k!==this.max&&(k=parseFloat(k.toFixed(this._roundToDecimal))),this._value=k,this._percent=this._calculatePercentage(this._value),this._changeDetectorRef.markForCheck()}}get vertical(){return this._vertical}set vertical(S){this._vertical=(0,v.Ig)(S)}get displayValue(){return this.displayWith?this.displayWith(this.value):this._roundToDecimal&&this.value&&this.value%1!=0?this.value.toFixed(this._roundToDecimal):this.value||0}focus(S){this._focusHostElement(S)}blur(){this._blurHostElement()}get percent(){return this._clamp(this._percent)}_shouldInvertAxis(){return this.vertical?!this.invert:this.invert}_isMinValue(){return 0===this.percent}_getThumbGap(){return this.disabled?7:this._isMinValue()&&!this.thumbLabel?this._isActive?10:7:0}_getTrackBackgroundStyles(){const k=this.vertical?`1, ${1-this.percent}, 1`:1-this.percent+", 1, 1";return{transform:`translate${this.vertical?"Y":"X"}(${this._shouldInvertMouseCoords()?"-":""}${this._getThumbGap()}px) scale3d(${k})`}}_getTrackFillStyles(){const S=this.percent,F=this.vertical?`1, ${S}, 1`:`${S}, 1, 1`;return{transform:`translate${this.vertical?"Y":"X"}(${this._shouldInvertMouseCoords()?"":"-"}${this._getThumbGap()}px) scale3d(${F})`,display:0===S?"none":""}}_getTicksContainerStyles(){return{transform:`translate${this.vertical?"Y":"X"}(${this.vertical||"rtl"!=this._getDirection()?"-":""}${this._tickIntervalPercent/2*100}%)`}}_getTicksStyles(){let S=100*this._tickIntervalPercent,ne={backgroundSize:this.vertical?`2px ${S}%`:`${S}% 2px`,transform:`translateZ(0) translate${this.vertical?"Y":"X"}(${this.vertical||"rtl"!=this._getDirection()?"":"-"}${S/2}%)${this.vertical||"rtl"!=this._getDirection()?"":" rotate(180deg)"}`};if(this._isMinValue()&&this._getThumbGap()){const me=this._shouldInvertAxis();let $;$=this.vertical?me?"Bottom":"Top":me?"Right":"Left",ne[`padding${$}`]=`${this._getThumbGap()}px`}return ne}_getThumbContainerStyles(){const S=this._shouldInvertAxis();return{transform:`translate${this.vertical?"Y":"X"}(-${100*(("rtl"!=this._getDirection()||this.vertical?S:!S)?this.percent:1-this.percent)}%)`}}_shouldInvertMouseCoords(){const S=this._shouldInvertAxis();return"rtl"!=this._getDirection()||this.vertical?S:!S}_getDirection(){return this._dir&&"rtl"==this._dir.value?"rtl":"ltr"}constructor(S,k,F,Y,se,ne,me,$){super(S),this._focusMonitor=k,this._changeDetectorRef=F,this._dir=Y,this._ngZone=ne,this._animationMode=$,this._invert=!1,this._max=100,this._min=0,this._step=1,this._thumbLabel=!1,this._tickInterval=0,this._value=null,this._vertical=!1,this.change=new p.EventEmitter,this.input=new p.EventEmitter,this.valueChange=new p.EventEmitter,this.onTouched=()=>{},this._percent=0,this._isSliding=null,this._isActive=!1,this._tickIntervalPercent=0,this._sliderDimensions=null,this._controlValueAccessorChangeFn=()=>{},this._dirChangeSubscription=l.w0.EMPTY,this._pointerDown=q=>{this.disabled||this._isSliding||!T(q)&&0!==q.button||this._ngZone.run(()=>{this._touchId=T(q)?function D(j,N){for(let S=0;S{if("pointer"===this._isSliding){const Q=O(q,this._touchId);if(Q){q.cancelable&&q.preventDefault();const ue=this.value;this._lastPointerEvent=q,this._updateValueFromPosition(Q),ue!=this.value&&this._emitInputEvent()}}},this._pointerUp=q=>{"pointer"===this._isSliding&&(!T(q)||"number"!=typeof this._touchId||E(q.changedTouches,this._touchId))&&(q.cancelable&&q.preventDefault(),this._removeGlobalEvents(),this._isSliding=null,this._touchId=void 0,this._valueOnSlideStart!=this.value&&!this.disabled&&this._emitChangeEvent(),this._valueOnSlideStart=this._lastPointerEvent=null)},this._windowBlur=()=>{this._lastPointerEvent&&this._pointerUp(this._lastPointerEvent)},this._document=me,this.tabIndex=parseInt(se)||0,ne.runOutsideAngular(()=>{const q=S.nativeElement;q.addEventListener("mousedown",this._pointerDown,r),q.addEventListener("touchstart",this._pointerDown,r)})}ngAfterViewInit(){this._focusMonitor.monitor(this._elementRef,!0).subscribe(S=>{this._isActive=!!S&&"keyboard"!==S,this._changeDetectorRef.detectChanges()}),this._dir&&(this._dirChangeSubscription=this._dir.change.subscribe(()=>{this._changeDetectorRef.markForCheck()}))}ngOnDestroy(){const S=this._elementRef.nativeElement;S.removeEventListener("mousedown",this._pointerDown,r),S.removeEventListener("touchstart",this._pointerDown,r),this._lastPointerEvent=null,this._removeGlobalEvents(),this._focusMonitor.stopMonitoring(this._elementRef),this._dirChangeSubscription.unsubscribe()}_onMouseenter(){this.disabled||(this._sliderDimensions=this._getSliderDimensions(),this._updateTickIntervalPercent())}_onFocus(){this._sliderDimensions=this._getSliderDimensions(),this._updateTickIntervalPercent()}_onBlur(){this.onTouched()}_onKeydown(S){if(this.disabled||(0,a.Vb)(S)||this._isSliding&&"keyboard"!==this._isSliding)return;const k=this.value;switch(S.keyCode){case a.Ku:this._increment(10);break;case a.VM:this._increment(-10);break;case a.uR:this.value=this.max;break;case a.Sd:this.value=this.min;break;case a.oh:this._increment("rtl"==this._getDirection()?1:-1);break;case a.LH:this._increment(1);break;case a.SV:this._increment("rtl"==this._getDirection()?-1:1);break;case a.JH:this._increment(-1);break;default:return}k!=this.value&&(this._emitInputEvent(),this._emitChangeEvent()),this._isSliding="keyboard",S.preventDefault()}_onKeyup(){"keyboard"===this._isSliding&&(this._isSliding=null)}_getWindow(){return this._document.defaultView||window}_bindGlobalEvents(S){const k=this._document,F=T(S),se=F?"touchend":"mouseup";k.addEventListener(F?"touchmove":"mousemove",this._pointerMove,r),k.addEventListener(se,this._pointerUp,r),F&&k.addEventListener("touchcancel",this._pointerUp,r);const ne=this._getWindow();typeof ne<"u"&&ne&&ne.addEventListener("blur",this._windowBlur)}_removeGlobalEvents(){const S=this._document;S.removeEventListener("mousemove",this._pointerMove,r),S.removeEventListener("mouseup",this._pointerUp,r),S.removeEventListener("touchmove",this._pointerMove,r),S.removeEventListener("touchend",this._pointerUp,r),S.removeEventListener("touchcancel",this._pointerUp,r);const k=this._getWindow();typeof k<"u"&&k&&k.removeEventListener("blur",this._windowBlur)}_increment(S){const k=this._clamp(this.value||0,this.min,this.max);this.value=this._clamp(k+this.step*S,this.min,this.max)}_updateValueFromPosition(S){if(!this._sliderDimensions)return;let se=this._clamp(((this.vertical?S.y:S.x)-(this.vertical?this._sliderDimensions.top:this._sliderDimensions.left))/(this.vertical?this._sliderDimensions.height:this._sliderDimensions.width));if(this._shouldInvertMouseCoords()&&(se=1-se),0===se)this.value=this.min;else if(1===se)this.value=this.max;else{const ne=this._calculateValue(se),me=Math.round((ne-this.min)/this.step)*this.step+this.min;this.value=this._clamp(me,this.min,this.max)}}_emitChangeEvent(){this._controlValueAccessorChangeFn(this.value),this.valueChange.emit(this.value),this.change.emit(this._createChangeEvent())}_emitInputEvent(){this.input.emit(this._createChangeEvent())}_updateTickIntervalPercent(){if(!this.tickInterval||!this._sliderDimensions)return;let S;if("auto"==this.tickInterval){let k=this.vertical?this._sliderDimensions.height:this._sliderDimensions.width;S=Math.ceil(30/(k*this.step/(this.max-this.min)))*this.step/k}else S=this.tickInterval*this.step/(this.max-this.min);this._tickIntervalPercent=A(S)?S:0}_createChangeEvent(S=this.value){let k=new x;return k.source=this,k.value=S,k}_calculatePercentage(S){const k=((S||0)-this.min)/(this.max-this.min);return A(k)?k:0}_calculateValue(S){return this.min+S*(this.max-this.min)}_clamp(S,k=0,F=1){return Math.max(k,Math.min(S,F))}_getSliderDimensions(){return this._sliderWrapper?this._sliderWrapper.nativeElement.getBoundingClientRect():null}_focusHostElement(S){this._elementRef.nativeElement.focus(S)}_blurHostElement(){this._elementRef.nativeElement.blur()}writeValue(S){this.value=S}registerOnChange(S){this._controlValueAccessorChangeFn=S}registerOnTouched(S){this.onTouched=S}setDisabledState(S){this.disabled=S}}return j.\u0275fac=function(S){return new(S||j)(p.\u0275\u0275directiveInject(p.ElementRef),p.\u0275\u0275directiveInject(b.tE),p.\u0275\u0275directiveInject(p.ChangeDetectorRef),p.\u0275\u0275directiveInject(o.Is,8),p.\u0275\u0275injectAttribute("tabindex"),p.\u0275\u0275directiveInject(p.NgZone),p.\u0275\u0275directiveInject(n.DOCUMENT),p.\u0275\u0275directiveInject(p.ANIMATION_MODULE_TYPE,8))},j.\u0275cmp=p.\u0275\u0275defineComponent({type:j,selectors:[["mat-slider"]],viewQuery:function(S,k){if(1&S&&p.\u0275\u0275viewQuery(d,5),2&S){let F;p.\u0275\u0275queryRefresh(F=p.\u0275\u0275loadQuery())&&(k._sliderWrapper=F.first)}},hostAttrs:["role","slider",1,"mat-slider","mat-focus-indicator"],hostVars:29,hostBindings:function(S,k){1&S&&p.\u0275\u0275listener("focus",function(){return k._onFocus()})("blur",function(){return k._onBlur()})("keydown",function(Y){return k._onKeydown(Y)})("keyup",function(){return k._onKeyup()})("mouseenter",function(){return k._onMouseenter()})("selectstart",function(Y){return Y.preventDefault()}),2&S&&(p.\u0275\u0275hostProperty("tabIndex",k.tabIndex),p.\u0275\u0275attribute("aria-disabled",k.disabled)("aria-valuemax",k.max)("aria-valuemin",k.min)("aria-valuenow",k.value)("aria-valuetext",null==k.valueText?k.displayValue:k.valueText)("aria-orientation",k.vertical?"vertical":"horizontal"),p.\u0275\u0275classProp("mat-slider-disabled",k.disabled)("mat-slider-has-ticks",k.tickInterval)("mat-slider-horizontal",!k.vertical)("mat-slider-axis-inverted",k._shouldInvertAxis())("mat-slider-invert-mouse-coords",k._shouldInvertMouseCoords())("mat-slider-sliding",k._isSliding)("mat-slider-thumb-label-showing",k.thumbLabel)("mat-slider-vertical",k.vertical)("mat-slider-min-value",k._isMinValue())("mat-slider-hide-last-tick",k.disabled||k._isMinValue()&&k._getThumbGap()&&k._shouldInvertAxis())("_mat-animation-noopable","NoopAnimations"===k._animationMode))},inputs:{disabled:"disabled",color:"color",tabIndex:"tabIndex",invert:"invert",max:"max",min:"min",step:"step",thumbLabel:"thumbLabel",tickInterval:"tickInterval",value:"value",displayWith:"displayWith",valueText:"valueText",vertical:"vertical"},outputs:{change:"change",input:"input",valueChange:"valueChange"},exportAs:["matSlider"],features:[p.\u0275\u0275ProvidersFeature([M]),p.\u0275\u0275InheritDefinitionFeature],decls:13,vars:6,consts:[[1,"mat-slider-wrapper"],["sliderWrapper",""],[1,"mat-slider-track-wrapper"],[1,"mat-slider-track-background",3,"ngStyle"],[1,"mat-slider-track-fill",3,"ngStyle"],[1,"mat-slider-ticks-container",3,"ngStyle"],[1,"mat-slider-ticks",3,"ngStyle"],[1,"mat-slider-thumb-container",3,"ngStyle"],[1,"mat-slider-focus-ring"],[1,"mat-slider-thumb"],[1,"mat-slider-thumb-label"],[1,"mat-slider-thumb-label-text"]],template:function(S,k){1&S&&(p.\u0275\u0275elementStart(0,"div",0,1)(2,"div",2),p.\u0275\u0275element(3,"div",3)(4,"div",4),p.\u0275\u0275elementEnd(),p.\u0275\u0275elementStart(5,"div",5),p.\u0275\u0275element(6,"div",6),p.\u0275\u0275elementEnd(),p.\u0275\u0275elementStart(7,"div",7),p.\u0275\u0275element(8,"div",8)(9,"div",9),p.\u0275\u0275elementStart(10,"div",10)(11,"span",11),p.\u0275\u0275text(12),p.\u0275\u0275elementEnd()()()()),2&S&&(p.\u0275\u0275advance(3),p.\u0275\u0275property("ngStyle",k._getTrackBackgroundStyles()),p.\u0275\u0275advance(1),p.\u0275\u0275property("ngStyle",k._getTrackFillStyles()),p.\u0275\u0275advance(1),p.\u0275\u0275property("ngStyle",k._getTicksContainerStyles()),p.\u0275\u0275advance(1),p.\u0275\u0275property("ngStyle",k._getTicksStyles()),p.\u0275\u0275advance(1),p.\u0275\u0275property("ngStyle",k._getThumbContainerStyles()),p.\u0275\u0275advance(5),p.\u0275\u0275textInterpolate(k.displayValue))},dependencies:[n.NgStyle],styles:['.mat-slider{display:inline-block;position:relative;box-sizing:border-box;padding:8px;outline:none;vertical-align:middle}.mat-slider:not(.mat-slider-disabled):active,.mat-slider.mat-slider-sliding:not(.mat-slider-disabled){cursor:grabbing}.mat-slider-wrapper{-webkit-print-color-adjust:exact;color-adjust:exact;position:absolute}.mat-slider-track-wrapper{position:absolute;top:0;left:0;overflow:hidden}.mat-slider-track-fill{position:absolute;transform-origin:0 0;transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1),background-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-track-background{position:absolute;transform-origin:100% 100%;transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1),background-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-ticks-container{position:absolute;left:0;top:0;overflow:hidden}.mat-slider-ticks{-webkit-background-clip:content-box;background-clip:content-box;background-repeat:repeat;box-sizing:border-box;opacity:0;transition:opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-thumb-container{position:absolute;z-index:1;transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-focus-ring{position:absolute;width:30px;height:30px;border-radius:50%;transform:scale(0);opacity:0;transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1),background-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1),opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider.cdk-keyboard-focused .mat-slider-focus-ring,.mat-slider.cdk-program-focused .mat-slider-focus-ring{transform:scale(1);opacity:1}.mat-slider:not(.mat-slider-disabled):not(.mat-slider-sliding) .mat-slider-thumb-label,.mat-slider:not(.mat-slider-disabled):not(.mat-slider-sliding) .mat-slider-thumb{cursor:grab}.mat-slider-thumb{position:absolute;right:-10px;bottom:-10px;box-sizing:border-box;width:20px;height:20px;border:3px solid rgba(0,0,0,0);border-radius:50%;transform:scale(0.7);transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1),background-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1),border-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-thumb-label{display:none;align-items:center;justify-content:center;position:absolute;width:28px;height:28px;border-radius:50%;transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1),border-radius 400ms cubic-bezier(0.25, 0.8, 0.25, 1),background-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.cdk-high-contrast-active .mat-slider-thumb-label{outline:solid 1px}.mat-slider-thumb-label-text{z-index:1;opacity:0;transition:opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-sliding .mat-slider-track-fill,.mat-slider-sliding .mat-slider-track-background,.mat-slider-sliding .mat-slider-thumb-container{transition-duration:0ms}.mat-slider-has-ticks .mat-slider-wrapper::after{content:"";position:absolute;border-width:0;border-style:solid;opacity:0;transition:opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-has-ticks.cdk-focused:not(.mat-slider-hide-last-tick) .mat-slider-wrapper::after,.mat-slider-has-ticks:hover:not(.mat-slider-hide-last-tick) .mat-slider-wrapper::after{opacity:1}.mat-slider-has-ticks.cdk-focused:not(.mat-slider-disabled) .mat-slider-ticks,.mat-slider-has-ticks:hover:not(.mat-slider-disabled) .mat-slider-ticks{opacity:1}.mat-slider-thumb-label-showing .mat-slider-focus-ring{display:none}.mat-slider-thumb-label-showing .mat-slider-thumb-label{display:flex}.mat-slider-axis-inverted .mat-slider-track-fill{transform-origin:100% 100%}.mat-slider-axis-inverted .mat-slider-track-background{transform-origin:0 0}.mat-slider:not(.mat-slider-disabled).cdk-focused.mat-slider-thumb-label-showing .mat-slider-thumb{transform:scale(0)}.mat-slider:not(.mat-slider-disabled).cdk-focused .mat-slider-thumb-label{border-radius:50% 50% 0}.mat-slider:not(.mat-slider-disabled).cdk-focused .mat-slider-thumb-label-text{opacity:1}.mat-slider:not(.mat-slider-disabled).cdk-mouse-focused .mat-slider-thumb,.mat-slider:not(.mat-slider-disabled).cdk-touch-focused .mat-slider-thumb,.mat-slider:not(.mat-slider-disabled).cdk-program-focused .mat-slider-thumb{border-width:2px;transform:scale(1)}.mat-slider-disabled .mat-slider-focus-ring{transform:scale(0);opacity:0}.mat-slider-disabled .mat-slider-thumb{border-width:4px;transform:scale(0.5)}.mat-slider-disabled .mat-slider-thumb-label{display:none}.mat-slider-horizontal{height:48px;min-width:128px}.mat-slider-horizontal .mat-slider-wrapper{height:2px;top:23px;left:8px;right:8px}.mat-slider-horizontal .mat-slider-wrapper::after{height:2px;border-left-width:2px;right:0;top:0}.mat-slider-horizontal .mat-slider-track-wrapper{height:2px;width:100%}.mat-slider-horizontal .mat-slider-track-fill{height:2px;width:100%;transform:scaleX(0)}.mat-slider-horizontal .mat-slider-track-background{height:2px;width:100%;transform:scaleX(1)}.mat-slider-horizontal .mat-slider-ticks-container{height:2px;width:100%}.cdk-high-contrast-active .mat-slider-horizontal .mat-slider-ticks-container{height:0;outline:solid 2px;top:1px}.mat-slider-horizontal .mat-slider-ticks{height:2px;width:100%}.mat-slider-horizontal .mat-slider-thumb-container{width:100%;height:0;top:50%}.mat-slider-horizontal .mat-slider-focus-ring{top:-15px;right:-15px}.mat-slider-horizontal .mat-slider-thumb-label{right:-14px;top:-40px;transform:translateY(26px) scale(0.01) rotate(45deg)}.mat-slider-horizontal .mat-slider-thumb-label-text{transform:rotate(-45deg)}.mat-slider-horizontal.cdk-focused .mat-slider-thumb-label{transform:rotate(45deg)}.cdk-high-contrast-active .mat-slider-horizontal.cdk-focused .mat-slider-thumb-label,.cdk-high-contrast-active .mat-slider-horizontal.cdk-focused .mat-slider-thumb-label-text{transform:none}.mat-slider-vertical{width:48px;min-height:128px}.mat-slider-vertical .mat-slider-wrapper{width:2px;top:8px;bottom:8px;left:23px}.mat-slider-vertical .mat-slider-wrapper::after{width:2px;border-top-width:2px;bottom:0;left:0}.mat-slider-vertical .mat-slider-track-wrapper{height:100%;width:2px}.mat-slider-vertical .mat-slider-track-fill{height:100%;width:2px;transform:scaleY(0)}.mat-slider-vertical .mat-slider-track-background{height:100%;width:2px;transform:scaleY(1)}.mat-slider-vertical .mat-slider-ticks-container{width:2px;height:100%}.cdk-high-contrast-active .mat-slider-vertical .mat-slider-ticks-container{width:0;outline:solid 2px;left:1px}.mat-slider-vertical .mat-slider-focus-ring{bottom:-15px;left:-15px}.mat-slider-vertical .mat-slider-ticks{width:2px;height:100%}.mat-slider-vertical .mat-slider-thumb-container{height:100%;width:0;left:50%}.mat-slider-vertical .mat-slider-thumb{-webkit-backface-visibility:hidden;backface-visibility:hidden}.mat-slider-vertical .mat-slider-thumb-label{bottom:-14px;left:-40px;transform:translateX(26px) scale(0.01) rotate(-45deg)}.mat-slider-vertical .mat-slider-thumb-label-text{transform:rotate(45deg)}.mat-slider-vertical.cdk-focused .mat-slider-thumb-label{transform:rotate(-45deg)}[dir=rtl] .mat-slider-wrapper::after{left:0;right:auto}[dir=rtl] .mat-slider-horizontal .mat-slider-track-fill{transform-origin:100% 100%}[dir=rtl] .mat-slider-horizontal .mat-slider-track-background{transform-origin:0 0}[dir=rtl] .mat-slider-horizontal.mat-slider-axis-inverted .mat-slider-track-fill{transform-origin:0 0}[dir=rtl] .mat-slider-horizontal.mat-slider-axis-inverted .mat-slider-track-background{transform-origin:100% 100%}.mat-slider._mat-animation-noopable .mat-slider-track-fill,.mat-slider._mat-animation-noopable .mat-slider-track-background,.mat-slider._mat-animation-noopable .mat-slider-ticks,.mat-slider._mat-animation-noopable .mat-slider-thumb-container,.mat-slider._mat-animation-noopable .mat-slider-focus-ring,.mat-slider._mat-animation-noopable .mat-slider-thumb,.mat-slider._mat-animation-noopable .mat-slider-thumb-label,.mat-slider._mat-animation-noopable .mat-slider-thumb-label-text,.mat-slider._mat-animation-noopable .mat-slider-has-ticks .mat-slider-wrapper::after{transition:none}'],encapsulation:2,changeDetection:0}),j})();function A(j){return!isNaN(j)&&isFinite(j)}function T(j){return"t"===j.type[0]}function O(j,N){let S;return S=T(j)?"number"==typeof N?E(j.touches,N)||E(j.changedTouches,N):j.touches[0]||j.changedTouches[0]:j,S?{x:S.clientX,y:S.clientY}:void 0}function E(j,N){for(let S=0;S{class j{}return j.\u0275fac=function(S){return new(S||j)},j.\u0275mod=p.\u0275\u0275defineNgModule({type:j}),j.\u0275inj=p.\u0275\u0275defineInjector({imports:[n.CommonModule,C.MatCommonModule,C.MatCommonModule]}),j})()},2214:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{MatLegacyCell:()=>Dn,MatLegacyCellDef:()=>Zn,MatLegacyColumnDef:()=>ri,MatLegacyFooterCell:()=>en,MatLegacyFooterCellDef:()=>Qn,MatLegacyFooterRow:()=>Ii,MatLegacyFooterRowDef:()=>Yn,MatLegacyHeaderCell:()=>ln,MatLegacyHeaderCellDef:()=>mi,MatLegacyHeaderRow:()=>ii,MatLegacyHeaderRowDef:()=>An,MatLegacyNoDataRow:()=>li,MatLegacyRecycleRows:()=>$n,MatLegacyRow:()=>oi,MatLegacyRowDef:()=>si,MatLegacyTable:()=>In,MatLegacyTableDataSource:()=>Ae,MatLegacyTableModule:()=>Ft,MatLegacyTextColumn:()=>Pi,_MatLegacyTableDataSource:()=>mt});var n=g(5879),p=g(9388),C=g(2495),b=g(8337),o=g(2831),v=g(6672),a=g(6814),c=g(8645),s=g(2459),l=g(5619),d=g(2664),r=g(2096),u=g(9773),h=g(8180);const m=[[["caption"]],[["colgroup"],["col"]]],_=["caption","colgroup, col"];function M(W,be){if(1&W&&(n.\u0275\u0275elementStart(0,"th",3),n.\u0275\u0275text(1),n.\u0275\u0275elementEnd()),2&W){const ge=n.\u0275\u0275nextContext();n.\u0275\u0275styleProp("text-align",ge.justify),n.\u0275\u0275advance(1),n.\u0275\u0275textInterpolate1(" ",ge.headerText," ")}}function x(W,be){if(1&W&&(n.\u0275\u0275elementStart(0,"td",4),n.\u0275\u0275text(1),n.\u0275\u0275elementEnd()),2&W){const ge=be.$implicit,Ge=n.\u0275\u0275nextContext();n.\u0275\u0275styleProp("text-align",Ge.justify),n.\u0275\u0275advance(1),n.\u0275\u0275textInterpolate1(" ",Ge.dataAccessor(ge,Ge.name)," ")}}function w(W){return class extends W{get sticky(){return this._sticky}set sticky(be){const ge=this._sticky;this._sticky=(0,C.Ig)(be),this._hasStickyChanged=ge!==this._sticky}hasStickyChanged(){const be=this._hasStickyChanged;return this._hasStickyChanged=!1,be}resetStickyChanged(){this._hasStickyChanged=!1}constructor(...be){super(...be),this._sticky=!1,this._hasStickyChanged=!1}}}const L=new n.InjectionToken("CDK_TABLE"),A=new n.InjectionToken("text-column-options");let T=(()=>{class W{constructor(ge){this.template=ge}}return W.\u0275fac=function(ge){return new(ge||W)(n.\u0275\u0275directiveInject(n.TemplateRef))},W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["","cdkCellDef",""]]}),W})(),O=(()=>{class W{constructor(ge){this.template=ge}}return W.\u0275fac=function(ge){return new(ge||W)(n.\u0275\u0275directiveInject(n.TemplateRef))},W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["","cdkHeaderCellDef",""]]}),W})(),E=(()=>{class W{constructor(ge){this.template=ge}}return W.\u0275fac=function(ge){return new(ge||W)(n.\u0275\u0275directiveInject(n.TemplateRef))},W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["","cdkFooterCellDef",""]]}),W})();class D{}const R=w(D);let j=(()=>{class W extends R{get name(){return this._name}set name(ge){this._setNameInput(ge)}get stickyEnd(){return this._stickyEnd}set stickyEnd(ge){const Ge=this._stickyEnd;this._stickyEnd=(0,C.Ig)(ge),this._hasStickyChanged=Ge!==this._stickyEnd}constructor(ge){super(),this._table=ge,this._stickyEnd=!1}_updateColumnCssClassName(){this._columnCssClassName=[`cdk-column-${this.cssClassFriendlyName}`]}_setNameInput(ge){ge&&(this._name=ge,this.cssClassFriendlyName=ge.replace(/[^a-z0-9_-]/gi,"-"),this._updateColumnCssClassName())}}return W.\u0275fac=function(ge){return new(ge||W)(n.\u0275\u0275directiveInject(L,8))},W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["","cdkColumnDef",""]],contentQueries:function(ge,Ge,It){if(1&ge&&(n.\u0275\u0275contentQuery(It,T,5),n.\u0275\u0275contentQuery(It,O,5),n.\u0275\u0275contentQuery(It,E,5)),2&ge){let zt;n.\u0275\u0275queryRefresh(zt=n.\u0275\u0275loadQuery())&&(Ge.cell=zt.first),n.\u0275\u0275queryRefresh(zt=n.\u0275\u0275loadQuery())&&(Ge.headerCell=zt.first),n.\u0275\u0275queryRefresh(zt=n.\u0275\u0275loadQuery())&&(Ge.footerCell=zt.first)}},inputs:{sticky:"sticky",name:["cdkColumnDef","name"],stickyEnd:"stickyEnd"},features:[n.\u0275\u0275ProvidersFeature([{provide:"MAT_SORT_HEADER_COLUMN_DEF",useExisting:W}]),n.\u0275\u0275InheritDefinitionFeature]}),W})();class N{constructor(be,ge){ge.nativeElement.classList.add(...be._columnCssClassName)}}let S=(()=>{class W extends N{constructor(ge,Ge){super(ge,Ge)}}return W.\u0275fac=function(ge){return new(ge||W)(n.\u0275\u0275directiveInject(j),n.\u0275\u0275directiveInject(n.ElementRef))},W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["cdk-header-cell"],["th","cdk-header-cell",""]],hostAttrs:["role","columnheader",1,"cdk-header-cell"],features:[n.\u0275\u0275InheritDefinitionFeature]}),W})(),k=(()=>{class W extends N{constructor(ge,Ge){if(super(ge,Ge),1===ge._table?._elementRef.nativeElement.nodeType){const It=ge._table._elementRef.nativeElement.getAttribute("role");Ge.nativeElement.setAttribute("role","grid"===It||"treegrid"===It?"gridcell":"cell")}}}return W.\u0275fac=function(ge){return new(ge||W)(n.\u0275\u0275directiveInject(j),n.\u0275\u0275directiveInject(n.ElementRef))},W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["cdk-footer-cell"],["td","cdk-footer-cell",""]],hostAttrs:[1,"cdk-footer-cell"],features:[n.\u0275\u0275InheritDefinitionFeature]}),W})(),F=(()=>{class W extends N{constructor(ge,Ge){if(super(ge,Ge),1===ge._table?._elementRef.nativeElement.nodeType){const It=ge._table._elementRef.nativeElement.getAttribute("role");Ge.nativeElement.setAttribute("role","grid"===It||"treegrid"===It?"gridcell":"cell")}}}return W.\u0275fac=function(ge){return new(ge||W)(n.\u0275\u0275directiveInject(j),n.\u0275\u0275directiveInject(n.ElementRef))},W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["cdk-cell"],["td","cdk-cell",""]],hostAttrs:[1,"cdk-cell"],features:[n.\u0275\u0275InheritDefinitionFeature]}),W})();class Y{constructor(){this.tasks=[],this.endTasks=[]}}const se=new n.InjectionToken("_COALESCED_STYLE_SCHEDULER");let ne=(()=>{class W{constructor(ge){this._ngZone=ge,this._currentSchedule=null,this._destroyed=new c.x}schedule(ge){this._createScheduleIfNeeded(),this._currentSchedule.tasks.push(ge)}scheduleEnd(ge){this._createScheduleIfNeeded(),this._currentSchedule.endTasks.push(ge)}ngOnDestroy(){this._destroyed.next(),this._destroyed.complete()}_createScheduleIfNeeded(){this._currentSchedule||(this._currentSchedule=new Y,this._getScheduleObservable().pipe((0,u.R)(this._destroyed)).subscribe(()=>{for(;this._currentSchedule.tasks.length||this._currentSchedule.endTasks.length;){const ge=this._currentSchedule;this._currentSchedule=new Y;for(const Ge of ge.tasks)Ge();for(const Ge of ge.endTasks)Ge()}this._currentSchedule=null}))}_getScheduleObservable(){return this._ngZone.isStable?(0,s.D)(Promise.resolve(void 0)):this._ngZone.onStable.pipe((0,h.q)(1))}}return W.\u0275fac=function(ge){return new(ge||W)(n.\u0275\u0275inject(n.NgZone))},W.\u0275prov=n.\u0275\u0275defineInjectable({token:W,factory:W.\u0275fac}),W})(),$=(()=>{class W{constructor(ge,Ge){this.template=ge,this._differs=Ge}ngOnChanges(ge){if(!this._columnsDiffer){const Ge=ge.columns&&ge.columns.currentValue||[];this._columnsDiffer=this._differs.find(Ge).create(),this._columnsDiffer.diff(Ge)}}getColumnsDiff(){return this._columnsDiffer.diff(this.columns)}extractCellTemplate(ge){return this instanceof ue?ge.headerCell.template:this instanceof Xe?ge.footerCell.template:ge.cell.template}}return W.\u0275fac=function(ge){return new(ge||W)(n.\u0275\u0275directiveInject(n.TemplateRef),n.\u0275\u0275directiveInject(n.IterableDiffers))},W.\u0275dir=n.\u0275\u0275defineDirective({type:W,features:[n.\u0275\u0275NgOnChangesFeature]}),W})();class q extends ${}const Q=w(q);let ue=(()=>{class W extends Q{constructor(ge,Ge,It){super(ge,Ge),this._table=It}ngOnChanges(ge){super.ngOnChanges(ge)}}return W.\u0275fac=function(ge){return new(ge||W)(n.\u0275\u0275directiveInject(n.TemplateRef),n.\u0275\u0275directiveInject(n.IterableDiffers),n.\u0275\u0275directiveInject(L,8))},W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["","cdkHeaderRowDef",""]],inputs:{columns:["cdkHeaderRowDef","columns"],sticky:["cdkHeaderRowDefSticky","sticky"]},features:[n.\u0275\u0275InheritDefinitionFeature,n.\u0275\u0275NgOnChangesFeature]}),W})();class Me extends ${}const Oe=w(Me);let Xe=(()=>{class W extends Oe{constructor(ge,Ge,It){super(ge,Ge),this._table=It}ngOnChanges(ge){super.ngOnChanges(ge)}}return W.\u0275fac=function(ge){return new(ge||W)(n.\u0275\u0275directiveInject(n.TemplateRef),n.\u0275\u0275directiveInject(n.IterableDiffers),n.\u0275\u0275directiveInject(L,8))},W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["","cdkFooterRowDef",""]],inputs:{columns:["cdkFooterRowDef","columns"],sticky:["cdkFooterRowDefSticky","sticky"]},features:[n.\u0275\u0275InheritDefinitionFeature,n.\u0275\u0275NgOnChangesFeature]}),W})(),Be=(()=>{class W extends ${constructor(ge,Ge,It){super(ge,Ge),this._table=It}}return W.\u0275fac=function(ge){return new(ge||W)(n.\u0275\u0275directiveInject(n.TemplateRef),n.\u0275\u0275directiveInject(n.IterableDiffers),n.\u0275\u0275directiveInject(L,8))},W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["","cdkRowDef",""]],inputs:{columns:["cdkRowDefColumns","columns"],when:["cdkRowDefWhen","when"]},features:[n.\u0275\u0275InheritDefinitionFeature]}),W})(),$e=(()=>{class W{constructor(ge){this._viewContainer=ge,W.mostRecentCellOutlet=this}ngOnDestroy(){W.mostRecentCellOutlet===this&&(W.mostRecentCellOutlet=null)}}return W.mostRecentCellOutlet=null,W.\u0275fac=function(ge){return new(ge||W)(n.\u0275\u0275directiveInject(n.ViewContainerRef))},W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["","cdkCellOutlet",""]]}),W})(),st=(()=>{class W{}return W.\u0275fac=function(ge){return new(ge||W)},W.\u0275cmp=n.\u0275\u0275defineComponent({type:W,selectors:[["cdk-header-row"],["tr","cdk-header-row",""]],hostAttrs:["role","row",1,"cdk-header-row"],decls:1,vars:0,consts:[["cdkCellOutlet",""]],template:function(ge,Ge){1&ge&&n.\u0275\u0275elementContainer(0,0)},dependencies:[$e],encapsulation:2}),W})(),Mt=(()=>{class W{}return W.\u0275fac=function(ge){return new(ge||W)},W.\u0275cmp=n.\u0275\u0275defineComponent({type:W,selectors:[["cdk-footer-row"],["tr","cdk-footer-row",""]],hostAttrs:["role","row",1,"cdk-footer-row"],decls:1,vars:0,consts:[["cdkCellOutlet",""]],template:function(ge,Ge){1&ge&&n.\u0275\u0275elementContainer(0,0)},dependencies:[$e],encapsulation:2}),W})(),tt=(()=>{class W{}return W.\u0275fac=function(ge){return new(ge||W)},W.\u0275cmp=n.\u0275\u0275defineComponent({type:W,selectors:[["cdk-row"],["tr","cdk-row",""]],hostAttrs:["role","row",1,"cdk-row"],decls:1,vars:0,consts:[["cdkCellOutlet",""]],template:function(ge,Ge){1&ge&&n.\u0275\u0275elementContainer(0,0)},dependencies:[$e],encapsulation:2}),W})(),St=(()=>{class W{constructor(ge){this.templateRef=ge,this._contentClassName="cdk-no-data-row"}}return W.\u0275fac=function(ge){return new(ge||W)(n.\u0275\u0275directiveInject(n.TemplateRef))},W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["ng-template","cdkNoDataRow",""]]}),W})();const bt=["top","bottom","left","right"];class xt{constructor(be,ge,Ge,It,zt=!0,an=!0,gn){this._isNativeHtmlTable=be,this._stickCellCss=ge,this.direction=Ge,this._coalescedStyleScheduler=It,this._isBrowser=zt,this._needsPositionStickyOnElement=an,this._positionListener=gn,this._cachedCellWidths=[],this._borderCellCss={top:`${ge}-border-elem-top`,bottom:`${ge}-border-elem-bottom`,left:`${ge}-border-elem-left`,right:`${ge}-border-elem-right`}}clearStickyPositioning(be,ge){const Ge=[];for(const It of be)if(It.nodeType===It.ELEMENT_NODE){Ge.push(It);for(let zt=0;zt{for(const It of Ge)this._removeStickyStyle(It,ge)})}updateStickyColumns(be,ge,Ge,It=!0){if(!be.length||!this._isBrowser||!ge.some(Un=>Un)&&!Ge.some(Un=>Un))return void(this._positionListener&&(this._positionListener.stickyColumnsUpdated({sizes:[]}),this._positionListener.stickyEndColumnsUpdated({sizes:[]})));const zt=be[0],an=zt.children.length,gn=this._getCellWidths(zt,It),pn=this._getStickyStartColumnPositions(gn,ge),Jn=this._getStickyEndColumnPositions(gn,Ge),Nn=ge.lastIndexOf(!0),kn=Ge.indexOf(!0);this._coalescedStyleScheduler.schedule(()=>{const Un="rtl"===this.direction,vi=Un?"right":"left",$i=Un?"left":"right";for(const er of be)for(let fn=0;fnge[fn]?er:null)}),this._positionListener.stickyEndColumnsUpdated({sizes:-1===kn?[]:gn.slice(kn).map((er,fn)=>Ge[fn+kn]?er:null).reverse()}))})}stickRows(be,ge,Ge){if(!this._isBrowser)return;const It="bottom"===Ge?be.slice().reverse():be,zt="bottom"===Ge?ge.slice().reverse():ge,an=[],gn=[],pn=[];for(let Nn=0,kn=0;Nn{for(let Nn=0;Nn{ge.some(It=>!It)?this._removeStickyStyle(Ge,["bottom"]):this._addStickyStyle(Ge,"bottom",0,!1)})}_removeStickyStyle(be,ge){for(const It of ge)be.style[It]="",be.classList.remove(this._borderCellCss[It]);bt.some(It=>-1===ge.indexOf(It)&&be.style[It])?be.style.zIndex=this._getCalculatedZIndex(be):(be.style.zIndex="",this._needsPositionStickyOnElement&&(be.style.position=""),be.classList.remove(this._stickCellCss))}_addStickyStyle(be,ge,Ge,It){be.classList.add(this._stickCellCss),It&&be.classList.add(this._borderCellCss[ge]),be.style[ge]=`${Ge}px`,be.style.zIndex=this._getCalculatedZIndex(be),this._needsPositionStickyOnElement&&(be.style.cssText+="position: -webkit-sticky; position: sticky; ")}_getCalculatedZIndex(be){const ge={top:100,bottom:10,left:1,right:1};let Ge=0;for(const It of bt)be.style[It]&&(Ge+=ge[It]);return Ge?`${Ge}`:""}_getCellWidths(be,ge=!0){if(!ge&&this._cachedCellWidths.length)return this._cachedCellWidths;const Ge=[],It=be.children;for(let zt=0;zt0;zt--)ge[zt]&&(Ge[zt]=It,It+=be[zt]);return Ge}}const ie=new n.InjectionToken("CDK_SPL");let Te=(()=>{class W{constructor(ge,Ge){this.viewContainer=ge,this.elementRef=Ge}}return W.\u0275fac=function(ge){return new(ge||W)(n.\u0275\u0275directiveInject(n.ViewContainerRef),n.\u0275\u0275directiveInject(n.ElementRef))},W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["","rowOutlet",""]]}),W})(),ct=(()=>{class W{constructor(ge,Ge){this.viewContainer=ge,this.elementRef=Ge}}return W.\u0275fac=function(ge){return new(ge||W)(n.\u0275\u0275directiveInject(n.ViewContainerRef),n.\u0275\u0275directiveInject(n.ElementRef))},W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["","headerRowOutlet",""]]}),W})(),Lt=(()=>{class W{constructor(ge,Ge){this.viewContainer=ge,this.elementRef=Ge}}return W.\u0275fac=function(ge){return new(ge||W)(n.\u0275\u0275directiveInject(n.ViewContainerRef),n.\u0275\u0275directiveInject(n.ElementRef))},W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["","footerRowOutlet",""]]}),W})(),Dt=(()=>{class W{constructor(ge,Ge){this.viewContainer=ge,this.elementRef=Ge}}return W.\u0275fac=function(ge){return new(ge||W)(n.\u0275\u0275directiveInject(n.ViewContainerRef),n.\u0275\u0275directiveInject(n.ElementRef))},W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["","noDataRowOutlet",""]]}),W})(),yt=(()=>{class W{get trackBy(){return this._trackByFn}set trackBy(ge){this._trackByFn=ge}get dataSource(){return this._dataSource}set dataSource(ge){this._dataSource!==ge&&this._switchDataSource(ge)}get multiTemplateDataRows(){return this._multiTemplateDataRows}set multiTemplateDataRows(ge){this._multiTemplateDataRows=(0,C.Ig)(ge),this._rowOutlet&&this._rowOutlet.viewContainer.length&&(this._forceRenderDataRows(),this.updateStickyColumnStyles())}get fixedLayout(){return this._fixedLayout}set fixedLayout(ge){this._fixedLayout=(0,C.Ig)(ge),this._forceRecalculateCellWidths=!0,this._stickyColumnStylesNeedReset=!0}constructor(ge,Ge,It,zt,an,gn,pn,Jn,Nn,kn,Un,vi){this._differs=ge,this._changeDetectorRef=Ge,this._elementRef=It,this._dir=an,this._platform=pn,this._viewRepeater=Jn,this._coalescedStyleScheduler=Nn,this._viewportRuler=kn,this._stickyPositioningListener=Un,this._ngZone=vi,this._onDestroy=new c.x,this._columnDefsByName=new Map,this._customColumnDefs=new Set,this._customRowDefs=new Set,this._customHeaderRowDefs=new Set,this._customFooterRowDefs=new Set,this._headerRowDefChanged=!0,this._footerRowDefChanged=!0,this._stickyColumnStylesNeedReset=!0,this._forceRecalculateCellWidths=!0,this._cachedRenderRowsMap=new Map,this.stickyCssClass="cdk-table-sticky",this.needsPositionStickyOnElement=!0,this._isShowingNoDataRow=!1,this._multiTemplateDataRows=!1,this._fixedLayout=!1,this.contentChanged=new n.EventEmitter,this.viewChange=new l.X({start:0,end:Number.MAX_VALUE}),zt||this._elementRef.nativeElement.setAttribute("role","table"),this._document=gn,this._isNativeHtmlTable="TABLE"===this._elementRef.nativeElement.nodeName}ngOnInit(){this._setupStickyStyler(),this._isNativeHtmlTable&&this._applyNativeTableSections(),this._dataDiffer=this._differs.find([]).create((ge,Ge)=>this.trackBy?this.trackBy(Ge.dataIndex,Ge.data):Ge),this._viewportRuler.change().pipe((0,u.R)(this._onDestroy)).subscribe(()=>{this._forceRecalculateCellWidths=!0})}ngAfterContentChecked(){this._cacheRowDefs(),this._cacheColumnDefs();const Ge=this._renderUpdatedColumns()||this._headerRowDefChanged||this._footerRowDefChanged;this._stickyColumnStylesNeedReset=this._stickyColumnStylesNeedReset||Ge,this._forceRecalculateCellWidths=Ge,this._headerRowDefChanged&&(this._forceRenderHeaderRows(),this._headerRowDefChanged=!1),this._footerRowDefChanged&&(this._forceRenderFooterRows(),this._footerRowDefChanged=!1),this.dataSource&&this._rowDefs.length>0&&!this._renderChangeSubscription?this._observeRenderChanges():this._stickyColumnStylesNeedReset&&this.updateStickyColumnStyles(),this._checkStickyStates()}ngOnDestroy(){[this._rowOutlet.viewContainer,this._headerRowOutlet.viewContainer,this._footerRowOutlet.viewContainer,this._cachedRenderRowsMap,this._customColumnDefs,this._customRowDefs,this._customHeaderRowDefs,this._customFooterRowDefs,this._columnDefsByName].forEach(ge=>{ge.clear()}),this._headerRowDefs=[],this._footerRowDefs=[],this._defaultRowDef=null,this._onDestroy.next(),this._onDestroy.complete(),(0,b.Z9)(this.dataSource)&&this.dataSource.disconnect(this)}renderRows(){this._renderRows=this._getAllRenderRows();const ge=this._dataDiffer.diff(this._renderRows);if(!ge)return this._updateNoDataRow(),void this.contentChanged.next();const Ge=this._rowOutlet.viewContainer;this._viewRepeater.applyChanges(ge,Ge,(It,zt,an)=>this._getEmbeddedViewArgs(It.item,an),It=>It.item.data,It=>{1===It.operation&&It.context&&this._renderCellTemplateForItem(It.record.item.rowDef,It.context)}),this._updateRowIndexContext(),ge.forEachIdentityChange(It=>{Ge.get(It.currentIndex).context.$implicit=It.item.data}),this._updateNoDataRow(),this._ngZone&&n.NgZone.isInAngularZone()?this._ngZone.onStable.pipe((0,h.q)(1),(0,u.R)(this._onDestroy)).subscribe(()=>{this.updateStickyColumnStyles()}):this.updateStickyColumnStyles(),this.contentChanged.next()}addColumnDef(ge){this._customColumnDefs.add(ge)}removeColumnDef(ge){this._customColumnDefs.delete(ge)}addRowDef(ge){this._customRowDefs.add(ge)}removeRowDef(ge){this._customRowDefs.delete(ge)}addHeaderRowDef(ge){this._customHeaderRowDefs.add(ge),this._headerRowDefChanged=!0}removeHeaderRowDef(ge){this._customHeaderRowDefs.delete(ge),this._headerRowDefChanged=!0}addFooterRowDef(ge){this._customFooterRowDefs.add(ge),this._footerRowDefChanged=!0}removeFooterRowDef(ge){this._customFooterRowDefs.delete(ge),this._footerRowDefChanged=!0}setNoDataRow(ge){this._customNoDataRow=ge}updateStickyHeaderRowStyles(){const ge=this._getRenderedRows(this._headerRowOutlet),It=this._elementRef.nativeElement.querySelector("thead");It&&(It.style.display=ge.length?"":"none");const zt=this._headerRowDefs.map(an=>an.sticky);this._stickyStyler.clearStickyPositioning(ge,["top"]),this._stickyStyler.stickRows(ge,zt,"top"),this._headerRowDefs.forEach(an=>an.resetStickyChanged())}updateStickyFooterRowStyles(){const ge=this._getRenderedRows(this._footerRowOutlet),It=this._elementRef.nativeElement.querySelector("tfoot");It&&(It.style.display=ge.length?"":"none");const zt=this._footerRowDefs.map(an=>an.sticky);this._stickyStyler.clearStickyPositioning(ge,["bottom"]),this._stickyStyler.stickRows(ge,zt,"bottom"),this._stickyStyler.updateStickyFooterContainer(this._elementRef.nativeElement,zt),this._footerRowDefs.forEach(an=>an.resetStickyChanged())}updateStickyColumnStyles(){const ge=this._getRenderedRows(this._headerRowOutlet),Ge=this._getRenderedRows(this._rowOutlet),It=this._getRenderedRows(this._footerRowOutlet);(this._isNativeHtmlTable&&!this._fixedLayout||this._stickyColumnStylesNeedReset)&&(this._stickyStyler.clearStickyPositioning([...ge,...Ge,...It],["left","right"]),this._stickyColumnStylesNeedReset=!1),ge.forEach((zt,an)=>{this._addStickyColumnStyles([zt],this._headerRowDefs[an])}),this._rowDefs.forEach(zt=>{const an=[];for(let gn=0;gn{this._addStickyColumnStyles([zt],this._footerRowDefs[an])}),Array.from(this._columnDefsByName.values()).forEach(zt=>zt.resetStickyChanged())}_getAllRenderRows(){const ge=[],Ge=this._cachedRenderRowsMap;this._cachedRenderRowsMap=new Map;for(let It=0;It{const gn=It&&It.has(an)?It.get(an):[];if(gn.length){const pn=gn.shift();return pn.dataIndex=Ge,pn}return{data:ge,rowDef:an,dataIndex:Ge}})}_cacheColumnDefs(){this._columnDefsByName.clear(),Bt(this._getOwnDefs(this._contentColumnDefs),this._customColumnDefs).forEach(Ge=>{this._columnDefsByName.has(Ge.name),this._columnDefsByName.set(Ge.name,Ge)})}_cacheRowDefs(){this._headerRowDefs=Bt(this._getOwnDefs(this._contentHeaderRowDefs),this._customHeaderRowDefs),this._footerRowDefs=Bt(this._getOwnDefs(this._contentFooterRowDefs),this._customFooterRowDefs),this._rowDefs=Bt(this._getOwnDefs(this._contentRowDefs),this._customRowDefs);const ge=this._rowDefs.filter(Ge=>!Ge.when);this._defaultRowDef=ge[0]}_renderUpdatedColumns(){const ge=(an,gn)=>an||!!gn.getColumnsDiff(),Ge=this._rowDefs.reduce(ge,!1);Ge&&this._forceRenderDataRows();const It=this._headerRowDefs.reduce(ge,!1);It&&this._forceRenderHeaderRows();const zt=this._footerRowDefs.reduce(ge,!1);return zt&&this._forceRenderFooterRows(),Ge||It||zt}_switchDataSource(ge){this._data=[],(0,b.Z9)(this.dataSource)&&this.dataSource.disconnect(this),this._renderChangeSubscription&&(this._renderChangeSubscription.unsubscribe(),this._renderChangeSubscription=null),ge||(this._dataDiffer&&this._dataDiffer.diff([]),this._rowOutlet.viewContainer.clear()),this._dataSource=ge}_observeRenderChanges(){if(!this.dataSource)return;let ge;(0,b.Z9)(this.dataSource)?ge=this.dataSource.connect(this):(0,d.b)(this.dataSource)?ge=this.dataSource:Array.isArray(this.dataSource)&&(ge=(0,r.of)(this.dataSource)),this._renderChangeSubscription=ge.pipe((0,u.R)(this._onDestroy)).subscribe(Ge=>{this._data=Ge||[],this.renderRows()})}_forceRenderHeaderRows(){this._headerRowOutlet.viewContainer.length>0&&this._headerRowOutlet.viewContainer.clear(),this._headerRowDefs.forEach((ge,Ge)=>this._renderRow(this._headerRowOutlet,ge,Ge)),this.updateStickyHeaderRowStyles()}_forceRenderFooterRows(){this._footerRowOutlet.viewContainer.length>0&&this._footerRowOutlet.viewContainer.clear(),this._footerRowDefs.forEach((ge,Ge)=>this._renderRow(this._footerRowOutlet,ge,Ge)),this.updateStickyFooterRowStyles()}_addStickyColumnStyles(ge,Ge){const It=Array.from(Ge.columns||[]).map(gn=>this._columnDefsByName.get(gn)),zt=It.map(gn=>gn.sticky),an=It.map(gn=>gn.stickyEnd);this._stickyStyler.updateStickyColumns(ge,zt,an,!this._fixedLayout||this._forceRecalculateCellWidths)}_getRenderedRows(ge){const Ge=[];for(let It=0;It!zt.when||zt.when(Ge,ge));else{let zt=this._rowDefs.find(an=>an.when&&an.when(Ge,ge))||this._defaultRowDef;zt&&It.push(zt)}return It}_getEmbeddedViewArgs(ge,Ge){return{templateRef:ge.rowDef.template,context:{$implicit:ge.data},index:Ge}}_renderRow(ge,Ge,It,zt={}){const an=ge.viewContainer.createEmbeddedView(Ge.template,zt,It);return this._renderCellTemplateForItem(Ge,zt),an}_renderCellTemplateForItem(ge,Ge){for(let It of this._getCellTemplates(ge))$e.mostRecentCellOutlet&&$e.mostRecentCellOutlet._viewContainer.createEmbeddedView(It,Ge);this._changeDetectorRef.markForCheck()}_updateRowIndexContext(){const ge=this._rowOutlet.viewContainer;for(let Ge=0,It=ge.length;Ge{const It=this._columnDefsByName.get(Ge);return ge.extractCellTemplate(It)}):[]}_applyNativeTableSections(){const ge=this._document.createDocumentFragment(),Ge=[{tag:"thead",outlets:[this._headerRowOutlet]},{tag:"tbody",outlets:[this._rowOutlet,this._noDataRowOutlet]},{tag:"tfoot",outlets:[this._footerRowOutlet]}];for(const It of Ge){const zt=this._document.createElement(It.tag);zt.setAttribute("role","rowgroup");for(const an of It.outlets)zt.appendChild(an.elementRef.nativeElement);ge.appendChild(zt)}this._elementRef.nativeElement.appendChild(ge)}_forceRenderDataRows(){this._dataDiffer.diff([]),this._rowOutlet.viewContainer.clear(),this.renderRows()}_checkStickyStates(){const ge=(Ge,It)=>Ge||It.hasStickyChanged();this._headerRowDefs.reduce(ge,!1)&&this.updateStickyHeaderRowStyles(),this._footerRowDefs.reduce(ge,!1)&&this.updateStickyFooterRowStyles(),Array.from(this._columnDefsByName.values()).reduce(ge,!1)&&(this._stickyColumnStylesNeedReset=!0,this.updateStickyColumnStyles())}_setupStickyStyler(){this._stickyStyler=new xt(this._isNativeHtmlTable,this.stickyCssClass,this._dir?this._dir.value:"ltr",this._coalescedStyleScheduler,this._platform.isBrowser,this.needsPositionStickyOnElement,this._stickyPositioningListener),(this._dir?this._dir.change:(0,r.of)()).pipe((0,u.R)(this._onDestroy)).subscribe(Ge=>{this._stickyStyler.direction=Ge,this.updateStickyColumnStyles()})}_getOwnDefs(ge){return ge.filter(Ge=>!Ge._table||Ge._table===this)}_updateNoDataRow(){const ge=this._customNoDataRow||this._noDataRow;if(!ge)return;const Ge=0===this._rowOutlet.viewContainer.length;if(Ge===this._isShowingNoDataRow)return;const It=this._noDataRowOutlet.viewContainer;if(Ge){const zt=It.createEmbeddedView(ge.templateRef),an=zt.rootNodes[0];1===zt.rootNodes.length&&an?.nodeType===this._document.ELEMENT_NODE&&(an.setAttribute("role","row"),an.classList.add(ge._contentClassName))}else It.clear();this._isShowingNoDataRow=Ge}}return W.\u0275fac=function(ge){return new(ge||W)(n.\u0275\u0275directiveInject(n.IterableDiffers),n.\u0275\u0275directiveInject(n.ChangeDetectorRef),n.\u0275\u0275directiveInject(n.ElementRef),n.\u0275\u0275injectAttribute("role"),n.\u0275\u0275directiveInject(p.Is,8),n.\u0275\u0275directiveInject(a.DOCUMENT),n.\u0275\u0275directiveInject(o.t4),n.\u0275\u0275directiveInject(b.k),n.\u0275\u0275directiveInject(se),n.\u0275\u0275directiveInject(v.rL),n.\u0275\u0275directiveInject(ie,12),n.\u0275\u0275directiveInject(n.NgZone,8))},W.\u0275cmp=n.\u0275\u0275defineComponent({type:W,selectors:[["cdk-table"],["table","cdk-table",""]],contentQueries:function(ge,Ge,It){if(1&ge&&(n.\u0275\u0275contentQuery(It,St,5),n.\u0275\u0275contentQuery(It,j,5),n.\u0275\u0275contentQuery(It,Be,5),n.\u0275\u0275contentQuery(It,ue,5),n.\u0275\u0275contentQuery(It,Xe,5)),2&ge){let zt;n.\u0275\u0275queryRefresh(zt=n.\u0275\u0275loadQuery())&&(Ge._noDataRow=zt.first),n.\u0275\u0275queryRefresh(zt=n.\u0275\u0275loadQuery())&&(Ge._contentColumnDefs=zt),n.\u0275\u0275queryRefresh(zt=n.\u0275\u0275loadQuery())&&(Ge._contentRowDefs=zt),n.\u0275\u0275queryRefresh(zt=n.\u0275\u0275loadQuery())&&(Ge._contentHeaderRowDefs=zt),n.\u0275\u0275queryRefresh(zt=n.\u0275\u0275loadQuery())&&(Ge._contentFooterRowDefs=zt)}},viewQuery:function(ge,Ge){if(1&ge&&(n.\u0275\u0275viewQuery(Te,7),n.\u0275\u0275viewQuery(ct,7),n.\u0275\u0275viewQuery(Lt,7),n.\u0275\u0275viewQuery(Dt,7)),2&ge){let It;n.\u0275\u0275queryRefresh(It=n.\u0275\u0275loadQuery())&&(Ge._rowOutlet=It.first),n.\u0275\u0275queryRefresh(It=n.\u0275\u0275loadQuery())&&(Ge._headerRowOutlet=It.first),n.\u0275\u0275queryRefresh(It=n.\u0275\u0275loadQuery())&&(Ge._footerRowOutlet=It.first),n.\u0275\u0275queryRefresh(It=n.\u0275\u0275loadQuery())&&(Ge._noDataRowOutlet=It.first)}},hostAttrs:["ngSkipHydration","",1,"cdk-table"],hostVars:2,hostBindings:function(ge,Ge){2&ge&&n.\u0275\u0275classProp("cdk-table-fixed-layout",Ge.fixedLayout)},inputs:{trackBy:"trackBy",dataSource:"dataSource",multiTemplateDataRows:"multiTemplateDataRows",fixedLayout:"fixedLayout"},outputs:{contentChanged:"contentChanged"},exportAs:["cdkTable"],features:[n.\u0275\u0275ProvidersFeature([{provide:L,useExisting:W},{provide:b.k,useClass:b.yy},{provide:se,useClass:ne},{provide:ie,useValue:null}])],ngContentSelectors:_,decls:6,vars:0,consts:[["headerRowOutlet",""],["rowOutlet",""],["noDataRowOutlet",""],["footerRowOutlet",""]],template:function(ge,Ge){1&ge&&(n.\u0275\u0275projectionDef(m),n.\u0275\u0275projection(0),n.\u0275\u0275projection(1,1),n.\u0275\u0275elementContainer(2,0)(3,1)(4,2)(5,3))},dependencies:[Te,ct,Lt,Dt],styles:[".cdk-table-fixed-layout{table-layout:fixed}"],encapsulation:2}),W})();function Bt(W,be){return W.concat(Array.from(be))}let $t=(()=>{class W{get name(){return this._name}set name(ge){this._name=ge,this._syncColumnDefName()}constructor(ge,Ge){this._table=ge,this._options=Ge,this.justify="start",this._options=Ge||{}}ngOnInit(){this._syncColumnDefName(),void 0===this.headerText&&(this.headerText=this._createDefaultHeaderText()),this.dataAccessor||(this.dataAccessor=this._options.defaultDataAccessor||((ge,Ge)=>ge[Ge])),this._table&&(this.columnDef.cell=this.cell,this.columnDef.headerCell=this.headerCell,this._table.addColumnDef(this.columnDef))}ngOnDestroy(){this._table&&this._table.removeColumnDef(this.columnDef)}_createDefaultHeaderText(){const ge=this.name;return this._options&&this._options.defaultHeaderTextTransform?this._options.defaultHeaderTextTransform(ge):ge[0].toUpperCase()+ge.slice(1)}_syncColumnDefName(){this.columnDef&&(this.columnDef.name=this.name)}}return W.\u0275fac=function(ge){return new(ge||W)(n.\u0275\u0275directiveInject(yt,8),n.\u0275\u0275directiveInject(A,8))},W.\u0275cmp=n.\u0275\u0275defineComponent({type:W,selectors:[["cdk-text-column"]],viewQuery:function(ge,Ge){if(1&ge&&(n.\u0275\u0275viewQuery(j,7),n.\u0275\u0275viewQuery(T,7),n.\u0275\u0275viewQuery(O,7)),2&ge){let It;n.\u0275\u0275queryRefresh(It=n.\u0275\u0275loadQuery())&&(Ge.columnDef=It.first),n.\u0275\u0275queryRefresh(It=n.\u0275\u0275loadQuery())&&(Ge.cell=It.first),n.\u0275\u0275queryRefresh(It=n.\u0275\u0275loadQuery())&&(Ge.headerCell=It.first)}},inputs:{name:"name",headerText:"headerText",dataAccessor:"dataAccessor",justify:"justify"},decls:3,vars:0,consts:[["cdkColumnDef",""],["cdk-header-cell","",3,"text-align",4,"cdkHeaderCellDef"],["cdk-cell","",3,"text-align",4,"cdkCellDef"],["cdk-header-cell",""],["cdk-cell",""]],template:function(ge,Ge){1&ge&&(n.\u0275\u0275elementContainerStart(0,0),n.\u0275\u0275template(1,M,2,3,"th",1),n.\u0275\u0275template(2,x,2,3,"td",2),n.\u0275\u0275elementContainerEnd())},dependencies:[T,O,j,F,S],encapsulation:2}),W})(),Ue=(()=>{class W{}return W.\u0275fac=function(ge){return new(ge||W)},W.\u0275mod=n.\u0275\u0275defineNgModule({type:W}),W.\u0275inj=n.\u0275\u0275defineInjector({imports:[v.Cl]}),W})();var We=g(3680),ve=g(3019),we=g(2572),at=g(7398);class mt extends b.o2{get data(){return this._data.value}set data(be){be=Array.isArray(be)?be:[],this._data.next(be),this._renderChangesSubscription||this._filterData(be)}get filter(){return this._filter.value}set filter(be){this._filter.next(be),this._renderChangesSubscription||this._filterData(this.data)}get sort(){return this._sort}set sort(be){this._sort=be,this._updateChangeSubscription()}get paginator(){return this._paginator}set paginator(be){this._paginator=be,this._updateChangeSubscription()}constructor(be=[]){super(),this._renderData=new l.X([]),this._filter=new l.X(""),this._internalPageChanges=new c.x,this._renderChangesSubscription=null,this.sortingDataAccessor=(ge,Ge)=>{const It=ge[Ge];if((0,C.t6)(It)){const zt=Number(It);return zt<9007199254740991?zt:It}return It},this.sortData=(ge,Ge)=>{const It=Ge.active,zt=Ge.direction;return It&&""!=zt?ge.sort((an,gn)=>{let pn=this.sortingDataAccessor(an,It),Jn=this.sortingDataAccessor(gn,It);const Nn=typeof pn,kn=typeof Jn;Nn!==kn&&("number"===Nn&&(pn+=""),"number"===kn&&(Jn+=""));let Un=0;return null!=pn&&null!=Jn?pn>Jn?Un=1:pn{const It=Object.keys(ge).reduce((an,gn)=>an+ge[gn]+"\u25ec","").toLowerCase(),zt=Ge.trim().toLowerCase();return-1!=It.indexOf(zt)},this._data=new l.X(be),this._updateChangeSubscription()}_updateChangeSubscription(){const be=this._sort?(0,ve.T)(this._sort.sortChange,this._sort.initialized):(0,r.of)(null),ge=this._paginator?(0,ve.T)(this._paginator.page,this._internalPageChanges,this._paginator.initialized):(0,r.of)(null),It=(0,we.a)([this._data,this._filter]).pipe((0,at.U)(([gn])=>this._filterData(gn))),zt=(0,we.a)([It,be]).pipe((0,at.U)(([gn])=>this._orderData(gn))),an=(0,we.a)([zt,ge]).pipe((0,at.U)(([gn])=>this._pageData(gn)));this._renderChangesSubscription?.unsubscribe(),this._renderChangesSubscription=an.subscribe(gn=>this._renderData.next(gn))}_filterData(be){return this.filteredData=null==this.filter||""===this.filter?be:be.filter(ge=>this.filterPredicate(ge,this.filter)),this.paginator&&this._updatePaginator(this.filteredData.length),this.filteredData}_orderData(be){return this.sort?this.sortData(be.slice(),this.sort):be}_pageData(be){if(!this.paginator)return be;const ge=this.paginator.pageIndex*this.paginator.pageSize;return be.slice(ge,ge+this.paginator.pageSize)}_updatePaginator(be){Promise.resolve().then(()=>{const ge=this.paginator;if(ge&&(ge.length=be,ge.pageIndex>0)){const Ge=Math.ceil(ge.length/ge.pageSize)-1||0,It=Math.min(ge.pageIndex,Ge);It!==ge.pageIndex&&(ge.pageIndex=It,this._internalPageChanges.next())}})}connect(){return this._renderChangesSubscription||this._updateChangeSubscription(),this._renderData}disconnect(){this._renderChangesSubscription?.unsubscribe(),this._renderChangesSubscription=null}}const qt=[[["caption"]],[["colgroup"],["col"]]],on=["caption","colgroup, col"];function hn(W,be){if(1&W&&(n.\u0275\u0275elementStart(0,"th",3),n.\u0275\u0275text(1),n.\u0275\u0275elementEnd()),2&W){const ge=n.\u0275\u0275nextContext();n.\u0275\u0275styleProp("text-align",ge.justify),n.\u0275\u0275advance(1),n.\u0275\u0275textInterpolate1(" ",ge.headerText," ")}}function un(W,be){if(1&W&&(n.\u0275\u0275elementStart(0,"td",4),n.\u0275\u0275text(1),n.\u0275\u0275elementEnd()),2&W){const ge=be.$implicit,Ge=n.\u0275\u0275nextContext();n.\u0275\u0275styleProp("text-align",Ge.justify),n.\u0275\u0275advance(1),n.\u0275\u0275textInterpolate1(" ",Ge.dataAccessor(ge,Ge.name)," ")}}let $n=(()=>{class W{}return W.\u0275fac=function(ge){return new(ge||W)},W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["mat-table","recycleRows",""],["table","mat-table","","recycleRows",""]],features:[n.\u0275\u0275ProvidersFeature([{provide:b.k,useClass:b.eX}])]}),W})(),In=(()=>{class W extends yt{constructor(){super(...arguments),this.stickyCssClass="mat-table-sticky",this.needsPositionStickyOnElement=!1}}return W.\u0275fac=function(){let be;return function(Ge){return(be||(be=n.\u0275\u0275getInheritedFactory(W)))(Ge||W)}}(),W.\u0275cmp=n.\u0275\u0275defineComponent({type:W,selectors:[["mat-table"],["table","mat-table",""]],hostAttrs:["ngSkipHydration","",1,"mat-table"],hostVars:2,hostBindings:function(ge,Ge){2&ge&&n.\u0275\u0275classProp("mat-table-fixed-layout",Ge.fixedLayout)},exportAs:["matTable"],features:[n.\u0275\u0275ProvidersFeature([{provide:b.k,useClass:b.yy},{provide:yt,useExisting:W},{provide:L,useExisting:W},{provide:se,useClass:ne},{provide:ie,useValue:null}]),n.\u0275\u0275InheritDefinitionFeature],ngContentSelectors:on,decls:6,vars:0,consts:[["headerRowOutlet",""],["rowOutlet",""],["noDataRowOutlet",""],["footerRowOutlet",""]],template:function(ge,Ge){1&ge&&(n.\u0275\u0275projectionDef(qt),n.\u0275\u0275projection(0),n.\u0275\u0275projection(1,1),n.\u0275\u0275elementContainer(2,0)(3,1)(4,2)(5,3))},dependencies:[Te,ct,Lt,Dt],styles:["mat-table{display:block}mat-header-row{min-height:56px}mat-row,mat-footer-row{min-height:48px}mat-row,mat-header-row,mat-footer-row{display:flex;border-width:0;border-bottom-width:1px;border-style:solid;align-items:center;box-sizing:border-box}mat-cell:first-of-type,mat-header-cell:first-of-type,mat-footer-cell:first-of-type{padding-left:24px}[dir=rtl] mat-cell:first-of-type:not(:only-of-type),[dir=rtl] mat-header-cell:first-of-type:not(:only-of-type),[dir=rtl] mat-footer-cell:first-of-type:not(:only-of-type){padding-left:0;padding-right:24px}mat-cell:last-of-type,mat-header-cell:last-of-type,mat-footer-cell:last-of-type{padding-right:24px}[dir=rtl] mat-cell:last-of-type:not(:only-of-type),[dir=rtl] mat-header-cell:last-of-type:not(:only-of-type),[dir=rtl] mat-footer-cell:last-of-type:not(:only-of-type){padding-right:0;padding-left:24px}mat-cell,mat-header-cell,mat-footer-cell{flex:1;display:flex;align-items:center;overflow:hidden;word-wrap:break-word;min-height:inherit}table.mat-table{border-spacing:0}tr.mat-header-row{height:56px}tr.mat-row,tr.mat-footer-row{height:48px}th.mat-header-cell{text-align:left}[dir=rtl] th.mat-header-cell{text-align:right}th.mat-header-cell,td.mat-cell,td.mat-footer-cell{padding:0;border-bottom-width:1px;border-bottom-style:solid}th.mat-header-cell:first-of-type,td.mat-cell:first-of-type,td.mat-footer-cell:first-of-type{padding-left:24px}[dir=rtl] th.mat-header-cell:first-of-type:not(:only-of-type),[dir=rtl] td.mat-cell:first-of-type:not(:only-of-type),[dir=rtl] td.mat-footer-cell:first-of-type:not(:only-of-type){padding-left:0;padding-right:24px}th.mat-header-cell:last-of-type,td.mat-cell:last-of-type,td.mat-footer-cell:last-of-type{padding-right:24px}[dir=rtl] th.mat-header-cell:last-of-type:not(:only-of-type),[dir=rtl] td.mat-cell:last-of-type:not(:only-of-type),[dir=rtl] td.mat-footer-cell:last-of-type:not(:only-of-type){padding-right:0;padding-left:24px}.mat-table-sticky{position:sticky !important}.mat-table-fixed-layout{table-layout:fixed}"],encapsulation:2}),W})(),Zn=(()=>{class W extends T{}return W.\u0275fac=function(){let be;return function(Ge){return(be||(be=n.\u0275\u0275getInheritedFactory(W)))(Ge||W)}}(),W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["","matCellDef",""]],features:[n.\u0275\u0275ProvidersFeature([{provide:T,useExisting:W}]),n.\u0275\u0275InheritDefinitionFeature]}),W})(),mi=(()=>{class W extends O{}return W.\u0275fac=function(){let be;return function(Ge){return(be||(be=n.\u0275\u0275getInheritedFactory(W)))(Ge||W)}}(),W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["","matHeaderCellDef",""]],features:[n.\u0275\u0275ProvidersFeature([{provide:O,useExisting:W}]),n.\u0275\u0275InheritDefinitionFeature]}),W})(),Qn=(()=>{class W extends E{}return W.\u0275fac=function(){let be;return function(Ge){return(be||(be=n.\u0275\u0275getInheritedFactory(W)))(Ge||W)}}(),W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["","matFooterCellDef",""]],features:[n.\u0275\u0275ProvidersFeature([{provide:E,useExisting:W}]),n.\u0275\u0275InheritDefinitionFeature]}),W})(),ri=(()=>{class W extends j{get name(){return this._name}set name(ge){this._setNameInput(ge)}_updateColumnCssClassName(){super._updateColumnCssClassName(),this._columnCssClassName.push(`mat-column-${this.cssClassFriendlyName}`)}}return W.\u0275fac=function(){let be;return function(Ge){return(be||(be=n.\u0275\u0275getInheritedFactory(W)))(Ge||W)}}(),W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["","matColumnDef",""]],inputs:{sticky:"sticky",name:["matColumnDef","name"]},features:[n.\u0275\u0275ProvidersFeature([{provide:j,useExisting:W},{provide:"MAT_SORT_HEADER_COLUMN_DEF",useExisting:W}]),n.\u0275\u0275InheritDefinitionFeature]}),W})(),ln=(()=>{class W extends S{}return W.\u0275fac=function(){let be;return function(Ge){return(be||(be=n.\u0275\u0275getInheritedFactory(W)))(Ge||W)}}(),W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["mat-header-cell"],["th","mat-header-cell",""]],hostAttrs:["role","columnheader",1,"mat-header-cell"],features:[n.\u0275\u0275InheritDefinitionFeature]}),W})(),en=(()=>{class W extends k{}return W.\u0275fac=function(){let be;return function(Ge){return(be||(be=n.\u0275\u0275getInheritedFactory(W)))(Ge||W)}}(),W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["mat-footer-cell"],["td","mat-footer-cell",""]],hostAttrs:["role","gridcell",1,"mat-footer-cell"],features:[n.\u0275\u0275InheritDefinitionFeature]}),W})(),Dn=(()=>{class W extends F{}return W.\u0275fac=function(){let be;return function(Ge){return(be||(be=n.\u0275\u0275getInheritedFactory(W)))(Ge||W)}}(),W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["mat-cell"],["td","mat-cell",""]],hostAttrs:["role","gridcell",1,"mat-cell"],features:[n.\u0275\u0275InheritDefinitionFeature]}),W})(),An=(()=>{class W extends ue{}return W.\u0275fac=function(){let be;return function(Ge){return(be||(be=n.\u0275\u0275getInheritedFactory(W)))(Ge||W)}}(),W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["","matHeaderRowDef",""]],inputs:{columns:["matHeaderRowDef","columns"],sticky:["matHeaderRowDefSticky","sticky"]},features:[n.\u0275\u0275ProvidersFeature([{provide:ue,useExisting:W}]),n.\u0275\u0275InheritDefinitionFeature]}),W})(),Yn=(()=>{class W extends Xe{}return W.\u0275fac=function(){let be;return function(Ge){return(be||(be=n.\u0275\u0275getInheritedFactory(W)))(Ge||W)}}(),W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["","matFooterRowDef",""]],inputs:{columns:["matFooterRowDef","columns"],sticky:["matFooterRowDefSticky","sticky"]},features:[n.\u0275\u0275ProvidersFeature([{provide:Xe,useExisting:W}]),n.\u0275\u0275InheritDefinitionFeature]}),W})(),si=(()=>{class W extends Be{}return W.\u0275fac=function(){let be;return function(Ge){return(be||(be=n.\u0275\u0275getInheritedFactory(W)))(Ge||W)}}(),W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["","matRowDef",""]],inputs:{columns:["matRowDefColumns","columns"],when:["matRowDefWhen","when"]},features:[n.\u0275\u0275ProvidersFeature([{provide:Be,useExisting:W}]),n.\u0275\u0275InheritDefinitionFeature]}),W})(),ii=(()=>{class W extends st{}return W.\u0275fac=function(){let be;return function(Ge){return(be||(be=n.\u0275\u0275getInheritedFactory(W)))(Ge||W)}}(),W.\u0275cmp=n.\u0275\u0275defineComponent({type:W,selectors:[["mat-header-row"],["tr","mat-header-row",""]],hostAttrs:["role","row",1,"mat-header-row"],exportAs:["matHeaderRow"],features:[n.\u0275\u0275ProvidersFeature([{provide:st,useExisting:W}]),n.\u0275\u0275InheritDefinitionFeature],decls:1,vars:0,consts:[["cdkCellOutlet",""]],template:function(ge,Ge){1&ge&&n.\u0275\u0275elementContainer(0,0)},dependencies:[$e],encapsulation:2}),W})(),Ii=(()=>{class W extends Mt{}return W.\u0275fac=function(){let be;return function(Ge){return(be||(be=n.\u0275\u0275getInheritedFactory(W)))(Ge||W)}}(),W.\u0275cmp=n.\u0275\u0275defineComponent({type:W,selectors:[["mat-footer-row"],["tr","mat-footer-row",""]],hostAttrs:["role","row",1,"mat-footer-row"],exportAs:["matFooterRow"],features:[n.\u0275\u0275ProvidersFeature([{provide:Mt,useExisting:W}]),n.\u0275\u0275InheritDefinitionFeature],decls:1,vars:0,consts:[["cdkCellOutlet",""]],template:function(ge,Ge){1&ge&&n.\u0275\u0275elementContainer(0,0)},dependencies:[$e],encapsulation:2}),W})(),oi=(()=>{class W extends tt{}return W.\u0275fac=function(){let be;return function(Ge){return(be||(be=n.\u0275\u0275getInheritedFactory(W)))(Ge||W)}}(),W.\u0275cmp=n.\u0275\u0275defineComponent({type:W,selectors:[["mat-row"],["tr","mat-row",""]],hostAttrs:["role","row",1,"mat-row"],exportAs:["matRow"],features:[n.\u0275\u0275ProvidersFeature([{provide:tt,useExisting:W}]),n.\u0275\u0275InheritDefinitionFeature],decls:1,vars:0,consts:[["cdkCellOutlet",""]],template:function(ge,Ge){1&ge&&n.\u0275\u0275elementContainer(0,0)},dependencies:[$e],encapsulation:2}),W})(),li=(()=>{class W extends St{constructor(){super(...arguments),this._contentClassName="mat-no-data-row"}}return W.\u0275fac=function(){let be;return function(Ge){return(be||(be=n.\u0275\u0275getInheritedFactory(W)))(Ge||W)}}(),W.\u0275dir=n.\u0275\u0275defineDirective({type:W,selectors:[["ng-template","matNoDataRow",""]],features:[n.\u0275\u0275ProvidersFeature([{provide:St,useExisting:W}]),n.\u0275\u0275InheritDefinitionFeature]}),W})(),Pi=(()=>{class W extends $t{}return W.\u0275fac=function(){let be;return function(Ge){return(be||(be=n.\u0275\u0275getInheritedFactory(W)))(Ge||W)}}(),W.\u0275cmp=n.\u0275\u0275defineComponent({type:W,selectors:[["mat-text-column"]],hostVars:1,hostBindings:function(ge,Ge){2&ge&&n.\u0275\u0275attribute("mat-id-collision",null)},features:[n.\u0275\u0275InheritDefinitionFeature],decls:3,vars:0,consts:[["matColumnDef",""],["mat-header-cell","",3,"text-align",4,"matHeaderCellDef"],["mat-cell","",3,"text-align",4,"matCellDef"],["mat-header-cell",""],["mat-cell",""]],template:function(ge,Ge){1&ge&&(n.\u0275\u0275elementContainerStart(0,0),n.\u0275\u0275template(1,hn,2,3,"th",1),n.\u0275\u0275template(2,un,2,3,"td",2),n.\u0275\u0275elementContainerEnd())},dependencies:[mi,ri,Zn,ln,Dn],encapsulation:2}),W})(),Ft=(()=>{class W{}return W.\u0275fac=function(ge){return new(ge||W)},W.\u0275mod=n.\u0275\u0275defineNgModule({type:W}),W.\u0275inj=n.\u0275\u0275defineInjector({imports:[Ue,We.MatCommonModule,We.MatCommonModule]}),W})();class Ae extends mt{}},8615:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{MAT_LEGACY_TAB:()=>rt,MAT_LEGACY_TABS_CONFIG:()=>De,MAT_LEGACY_TAB_CONTENT:()=>nt,MAT_LEGACY_TAB_GROUP:()=>yt,MatLegacyInkBar:()=>mi,MatLegacyPaginatedTabHeader:()=>ve,MatLegacyTab:()=>Qn,MatLegacyTabBody:()=>ln,MatLegacyTabBodyPortal:()=>ri,MatLegacyTabChangeEvent:()=>ce,MatLegacyTabContent:()=>li,MatLegacyTabGroup:()=>An,MatLegacyTabHeader:()=>Dn,MatLegacyTabLabel:()=>oi,MatLegacyTabLabelWrapper:()=>en,MatLegacyTabLink:()=>ii,MatLegacyTabNav:()=>si,MatLegacyTabNavPanel:()=>Ii,MatLegacyTabsModule:()=>Pi,_MAT_LEGACY_INK_BAR_POSITIONER:()=>Te,_MAT_LEGACY_INK_BAR_POSITIONER_FACTORY:()=>pe,_MatLegacyTabBase:()=>Bt,_MatLegacyTabBodyBase:()=>bt,_MatLegacyTabGroupBase:()=>Z,_MatLegacyTabHeaderBase:()=>we,_MatLegacyTabLinkBase:()=>Ye,_MatLegacyTabNavBase:()=>it,matLegacyTabsAnimations:()=>tt});var n=g(4300),p=g(7131),C=g(8484),b=g(6814),o=g(5879),v=g(3680),a=g(8180),c=g(9388),s=g(7394),l=g(8645),d=g(2438),r=g(2096),u=g(3019),h=g(6232),m=g(5592),_=g(9080),M=g(7921),x=g(3997),w=g(9773),L=g(4664),A=g(836),T=g(2181),O=g(6825),E=g(2495),D=g(6672),R=g(2831),j=g(6028);function N(Ct,Ft){}const S=function(Ct){return{animationDuration:Ct}},k=function(Ct,Ft){return{value:Ct,params:Ft}},tt={translateTab:(0,O.X$)("translateTab",[(0,O.SB)("center, void, left-origin-center, right-origin-center",(0,O.oB)({transform:"none"})),(0,O.SB)("left",(0,O.oB)({transform:"translate3d(-100%, 0, 0)",minHeight:"1px",visibility:"hidden"})),(0,O.SB)("right",(0,O.oB)({transform:"translate3d(100%, 0, 0)",minHeight:"1px",visibility:"hidden"})),(0,O.eR)("* => left, * => right, left => center, right => center",(0,O.jt)("{{animationDuration}} cubic-bezier(0.35, 0, 0.25, 1)")),(0,O.eR)("void => left-origin-center",[(0,O.oB)({transform:"translate3d(-100%, 0, 0)",visibility:"hidden"}),(0,O.jt)("{{animationDuration}} cubic-bezier(0.35, 0, 0.25, 1)")]),(0,O.eR)("void => right-origin-center",[(0,O.oB)({transform:"translate3d(100%, 0, 0)",visibility:"hidden"}),(0,O.jt)("{{animationDuration}} cubic-bezier(0.35, 0, 0.25, 1)")])])};let St=(()=>{class Ct extends C.Pl{constructor(Ae,W,be,ge){super(Ae,W,ge),this._host=be,this._centeringSub=s.w0.EMPTY,this._leavingSub=s.w0.EMPTY}ngOnInit(){super.ngOnInit(),this._centeringSub=this._host._beforeCentering.pipe((0,M.O)(this._host._isCenterPosition(this._host._position))).subscribe(Ae=>{Ae&&!this.hasAttached()&&this.attach(this._host._content)}),this._leavingSub=this._host._afterLeavingCenter.subscribe(()=>{this._host.preserveContent||this.detach()})}ngOnDestroy(){super.ngOnDestroy(),this._centeringSub.unsubscribe(),this._leavingSub.unsubscribe()}}return Ct.\u0275fac=function(Ae){return new(Ae||Ct)(o.\u0275\u0275directiveInject(o.ComponentFactoryResolver),o.\u0275\u0275directiveInject(o.ViewContainerRef),o.\u0275\u0275directiveInject((0,o.forwardRef)(()=>xt)),o.\u0275\u0275directiveInject(b.DOCUMENT))},Ct.\u0275dir=o.\u0275\u0275defineDirective({type:Ct,selectors:[["","matTabBodyHost",""]],features:[o.\u0275\u0275InheritDefinitionFeature]}),Ct})(),bt=(()=>{class Ct{set position(Ae){this._positionIndex=Ae,this._computePositionAnimationState()}constructor(Ae,W,be){this._elementRef=Ae,this._dir=W,this._dirChangeSubscription=s.w0.EMPTY,this._translateTabComplete=new l.x,this._onCentering=new o.EventEmitter,this._beforeCentering=new o.EventEmitter,this._afterLeavingCenter=new o.EventEmitter,this._onCentered=new o.EventEmitter(!0),this.animationDuration="500ms",this.preserveContent=!1,W&&(this._dirChangeSubscription=W.change.subscribe(ge=>{this._computePositionAnimationState(ge),be.markForCheck()})),this._translateTabComplete.pipe((0,x.x)((ge,Ge)=>ge.fromState===Ge.fromState&&ge.toState===Ge.toState)).subscribe(ge=>{this._isCenterPosition(ge.toState)&&this._isCenterPosition(this._position)&&this._onCentered.emit(),this._isCenterPosition(ge.fromState)&&!this._isCenterPosition(this._position)&&this._afterLeavingCenter.emit()})}ngOnInit(){"center"==this._position&&null!=this.origin&&(this._position=this._computePositionFromOrigin(this.origin))}ngOnDestroy(){this._dirChangeSubscription.unsubscribe(),this._translateTabComplete.complete()}_onTranslateTabStarted(Ae){const W=this._isCenterPosition(Ae.toState);this._beforeCentering.emit(W),W&&this._onCentering.emit(this._elementRef.nativeElement.clientHeight)}_getLayoutDirection(){return this._dir&&"rtl"===this._dir.value?"rtl":"ltr"}_isCenterPosition(Ae){return"center"==Ae||"left-origin-center"==Ae||"right-origin-center"==Ae}_computePositionAnimationState(Ae=this._getLayoutDirection()){this._position=this._positionIndex<0?"ltr"==Ae?"left":"right":this._positionIndex>0?"ltr"==Ae?"right":"left":"center"}_computePositionFromOrigin(Ae){const W=this._getLayoutDirection();return"ltr"==W&&Ae<=0||"rtl"==W&&Ae>0?"left-origin-center":"right-origin-center"}}return Ct.\u0275fac=function(Ae){return new(Ae||Ct)(o.\u0275\u0275directiveInject(o.ElementRef),o.\u0275\u0275directiveInject(c.Is,8),o.\u0275\u0275directiveInject(o.ChangeDetectorRef))},Ct.\u0275dir=o.\u0275\u0275defineDirective({type:Ct,inputs:{_content:["content","_content"],origin:"origin",animationDuration:"animationDuration",preserveContent:"preserveContent",position:"position"},outputs:{_onCentering:"_onCentering",_beforeCentering:"_beforeCentering",_afterLeavingCenter:"_afterLeavingCenter",_onCentered:"_onCentered"}}),Ct})(),xt=(()=>{class Ct extends bt{constructor(Ae,W,be){super(Ae,W,be)}}return Ct.\u0275fac=function(Ae){return new(Ae||Ct)(o.\u0275\u0275directiveInject(o.ElementRef),o.\u0275\u0275directiveInject(c.Is,8),o.\u0275\u0275directiveInject(o.ChangeDetectorRef))},Ct.\u0275cmp=o.\u0275\u0275defineComponent({type:Ct,selectors:[["mat-tab-body"]],viewQuery:function(Ae,W){if(1&Ae&&o.\u0275\u0275viewQuery(C.Pl,5),2&Ae){let be;o.\u0275\u0275queryRefresh(be=o.\u0275\u0275loadQuery())&&(W._portalHost=be.first)}},hostAttrs:[1,"mat-mdc-tab-body"],features:[o.\u0275\u0275InheritDefinitionFeature],decls:3,vars:6,consts:[["cdkScrollable","",1,"mat-mdc-tab-body-content"],["content",""],["matTabBodyHost",""]],template:function(Ae,W){1&Ae&&(o.\u0275\u0275elementStart(0,"div",0,1),o.\u0275\u0275listener("@translateTab.start",function(ge){return W._onTranslateTabStarted(ge)})("@translateTab.done",function(ge){return W._translateTabComplete.next(ge)}),o.\u0275\u0275template(2,N,0,0,"ng-template",2),o.\u0275\u0275elementEnd()),2&Ae&&o.\u0275\u0275property("@translateTab",o.\u0275\u0275pureFunction2(3,k,W._position,o.\u0275\u0275pureFunction1(1,S,W.animationDuration)))},dependencies:[St],styles:['.mat-mdc-tab-body{top:0;left:0;right:0;bottom:0;position:absolute;display:block;overflow:hidden;outline:0;flex-basis:100%}.mat-mdc-tab-body.mat-mdc-tab-body-active{position:relative;overflow-x:hidden;overflow-y:auto;z-index:1;flex-grow:1}.mat-mdc-tab-group.mat-mdc-tab-group-dynamic-height .mat-mdc-tab-body.mat-mdc-tab-body-active{overflow-y:hidden}.mat-mdc-tab-body-content{height:100%;overflow:auto}.mat-mdc-tab-group-dynamic-height .mat-mdc-tab-body-content{overflow:hidden}.mat-mdc-tab-body-content[style*="visibility: hidden"]{display:none}'],encapsulation:2,data:{animation:[tt.translateTab]}}),Ct})();const nt=new o.InjectionToken("MatTabContent");let ot=(()=>{class Ct{constructor(Ae){this.template=Ae}}return Ct.\u0275fac=function(Ae){return new(Ae||Ct)(o.\u0275\u0275directiveInject(o.TemplateRef))},Ct.\u0275dir=o.\u0275\u0275defineDirective({type:Ct,selectors:[["","matTabContent",""]],features:[o.\u0275\u0275ProvidersFeature([{provide:nt,useExisting:Ct}])]}),Ct})();const vt=new o.InjectionToken("MatTabLabel"),rt=new o.InjectionToken("MAT_TAB");let J=(()=>{class Ct extends C.ig{constructor(Ae,W,be){super(Ae,W),this._closestTab=be}}return Ct.\u0275fac=function(Ae){return new(Ae||Ct)(o.\u0275\u0275directiveInject(o.TemplateRef),o.\u0275\u0275directiveInject(o.ViewContainerRef),o.\u0275\u0275directiveInject(rt,8))},Ct.\u0275dir=o.\u0275\u0275defineDirective({type:Ct,selectors:[["","mat-tab-label",""],["","matTabLabel",""]],features:[o.\u0275\u0275ProvidersFeature([{provide:vt,useExisting:Ct}]),o.\u0275\u0275InheritDefinitionFeature]}),Ct})();function pe(){return Ft=>({left:Ft?(Ft.offsetLeft||0)+"px":"0",width:Ft?(Ft.offsetWidth||0)+"px":"0"})}const Te=new o.InjectionToken("MatInkBarPositioner",{providedIn:"root",factory:pe}),ct=(0,v.mixinDisabled)(class{});let Lt=(()=>{class Ct extends ct{constructor(Ae){super(),this.elementRef=Ae}focus(){this.elementRef.nativeElement.focus()}getOffsetLeft(){return this.elementRef.nativeElement.offsetLeft}getOffsetWidth(){return this.elementRef.nativeElement.offsetWidth}}return Ct.\u0275fac=function(Ae){return new(Ae||Ct)(o.\u0275\u0275directiveInject(o.ElementRef))},Ct.\u0275dir=o.\u0275\u0275defineDirective({type:Ct,features:[o.\u0275\u0275InheritDefinitionFeature]}),Ct})();const ze=(0,v.mixinDisabled)(class{}),yt=new o.InjectionToken("MAT_TAB_GROUP");let Bt=(()=>{class Ct extends ze{get content(){return this._contentPortal}constructor(Ae,W){super(),this._viewContainerRef=Ae,this._closestTabGroup=W,this.textLabel="",this._contentPortal=null,this._stateChanges=new l.x,this.position=null,this.origin=null,this.isActive=!1}ngOnChanges(Ae){(Ae.hasOwnProperty("textLabel")||Ae.hasOwnProperty("disabled"))&&this._stateChanges.next()}ngOnDestroy(){this._stateChanges.complete()}ngOnInit(){this._contentPortal=new C.UE(this._explicitContent||this._implicitContent,this._viewContainerRef)}_setTemplateLabelInput(Ae){Ae&&Ae._closestTab===this&&(this._templateLabel=Ae)}}return Ct.\u0275fac=function(Ae){return new(Ae||Ct)(o.\u0275\u0275directiveInject(o.ViewContainerRef),o.\u0275\u0275directiveInject(yt,8))},Ct.\u0275dir=o.\u0275\u0275defineDirective({type:Ct,viewQuery:function(Ae,W){if(1&Ae&&o.\u0275\u0275viewQuery(o.TemplateRef,7),2&Ae){let be;o.\u0275\u0275queryRefresh(be=o.\u0275\u0275loadQuery())&&(W._implicitContent=be.first)}},inputs:{textLabel:["label","textLabel"],ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],labelClass:"labelClass",bodyClass:"bodyClass"},features:[o.\u0275\u0275InheritDefinitionFeature,o.\u0275\u0275NgOnChangesFeature]}),Ct})();const Yt=(0,R.i$)({passive:!0});let ve=(()=>{class Ct{get disablePagination(){return this._disablePagination}set disablePagination(Ae){this._disablePagination=(0,E.Ig)(Ae)}get selectedIndex(){return this._selectedIndex}set selectedIndex(Ae){Ae=(0,E.su)(Ae),this._selectedIndex!=Ae&&(this._selectedIndexChanged=!0,this._selectedIndex=Ae,this._keyManager&&this._keyManager.updateActiveItem(Ae))}constructor(Ae,W,be,ge,Ge,It,zt){this._elementRef=Ae,this._changeDetectorRef=W,this._viewportRuler=be,this._dir=ge,this._ngZone=Ge,this._platform=It,this._animationMode=zt,this._scrollDistance=0,this._selectedIndexChanged=!1,this._destroyed=new l.x,this._showPaginationControls=!1,this._disableScrollAfter=!0,this._disableScrollBefore=!0,this._stopScrolling=new l.x,this._disablePagination=!1,this._selectedIndex=0,this.selectFocusedIndex=new o.EventEmitter,this.indexFocused=new o.EventEmitter,Ge.runOutsideAngular(()=>{(0,d.R)(Ae.nativeElement,"mouseleave").pipe((0,w.R)(this._destroyed)).subscribe(()=>{this._stopInterval()})})}ngAfterViewInit(){(0,d.R)(this._previousPaginator.nativeElement,"touchstart",Yt).pipe((0,w.R)(this._destroyed)).subscribe(()=>{this._handlePaginatorPress("before")}),(0,d.R)(this._nextPaginator.nativeElement,"touchstart",Yt).pipe((0,w.R)(this._destroyed)).subscribe(()=>{this._handlePaginatorPress("after")})}ngAfterContentInit(){const Ae=this._dir?this._dir.change:(0,r.of)("ltr"),W=this._viewportRuler.change(150),be=()=>{this.updatePagination(),this._alignInkBarToSelectedTab()};this._keyManager=new n.Em(this._items).withHorizontalOrientation(this._getLayoutDirection()).withHomeAndEnd().withWrap().skipPredicate(()=>!1),this._keyManager.updateActiveItem(this._selectedIndex),this._ngZone.onStable.pipe((0,a.q)(1)).subscribe(be),(0,u.T)(Ae,W,this._items.changes,this._itemsResized()).pipe((0,w.R)(this._destroyed)).subscribe(()=>{this._ngZone.run(()=>{Promise.resolve().then(()=>{this._scrollDistance=Math.max(0,Math.min(this._getMaxScrollDistance(),this._scrollDistance)),be()})}),this._keyManager.withHorizontalOrientation(this._getLayoutDirection())}),this._keyManager.change.subscribe(ge=>{this.indexFocused.emit(ge),this._setTabFocus(ge)})}_itemsResized(){return"function"!=typeof ResizeObserver?h.E:this._items.changes.pipe((0,M.O)(this._items),(0,L.w)(Ae=>new m.y(W=>this._ngZone.runOutsideAngular(()=>{const be=new ResizeObserver(ge=>W.next(ge));return Ae.forEach(ge=>be.observe(ge.elementRef.nativeElement)),()=>{be.disconnect()}}))),(0,A.T)(1),(0,T.h)(Ae=>Ae.some(W=>W.contentRect.width>0&&W.contentRect.height>0)))}ngAfterContentChecked(){this._tabLabelCount!=this._items.length&&(this.updatePagination(),this._tabLabelCount=this._items.length,this._changeDetectorRef.markForCheck()),this._selectedIndexChanged&&(this._scrollToLabel(this._selectedIndex),this._checkScrollingControls(),this._alignInkBarToSelectedTab(),this._selectedIndexChanged=!1,this._changeDetectorRef.markForCheck()),this._scrollDistanceChanged&&(this._updateTabScrollPosition(),this._scrollDistanceChanged=!1,this._changeDetectorRef.markForCheck())}ngOnDestroy(){this._keyManager?.destroy(),this._destroyed.next(),this._destroyed.complete(),this._stopScrolling.complete()}_handleKeydown(Ae){if(!(0,j.Vb)(Ae))switch(Ae.keyCode){case j.K5:case j.L_:if(this.focusIndex!==this.selectedIndex){const W=this._items.get(this.focusIndex);W&&!W.disabled&&(this.selectFocusedIndex.emit(this.focusIndex),this._itemSelected(Ae))}break;default:this._keyManager.onKeydown(Ae)}}_onContentChanges(){const Ae=this._elementRef.nativeElement.textContent;Ae!==this._currentTextContent&&(this._currentTextContent=Ae||"",this._ngZone.run(()=>{this.updatePagination(),this._alignInkBarToSelectedTab(),this._changeDetectorRef.markForCheck()}))}updatePagination(){this._checkPaginationEnabled(),this._checkScrollingControls(),this._updateTabScrollPosition()}get focusIndex(){return this._keyManager?this._keyManager.activeItemIndex:0}set focusIndex(Ae){!this._isValidIndex(Ae)||this.focusIndex===Ae||!this._keyManager||this._keyManager.setActiveItem(Ae)}_isValidIndex(Ae){return!this._items||!!this._items.toArray()[Ae]}_setTabFocus(Ae){if(this._showPaginationControls&&this._scrollToLabel(Ae),this._items&&this._items.length){this._items.toArray()[Ae].focus();const W=this._tabListContainer.nativeElement;W.scrollLeft="ltr"==this._getLayoutDirection()?0:W.scrollWidth-W.offsetWidth}}_getLayoutDirection(){return this._dir&&"rtl"===this._dir.value?"rtl":"ltr"}_updateTabScrollPosition(){if(this.disablePagination)return;const Ae=this.scrollDistance,W="ltr"===this._getLayoutDirection()?-Ae:Ae;this._tabList.nativeElement.style.transform=`translateX(${Math.round(W)}px)`,(this._platform.TRIDENT||this._platform.EDGE)&&(this._tabListContainer.nativeElement.scrollLeft=0)}get scrollDistance(){return this._scrollDistance}set scrollDistance(Ae){this._scrollTo(Ae)}_scrollHeader(Ae){return this._scrollTo(this._scrollDistance+("before"==Ae?-1:1)*this._tabListContainer.nativeElement.offsetWidth/3)}_handlePaginatorClick(Ae){this._stopInterval(),this._scrollHeader(Ae)}_scrollToLabel(Ae){if(this.disablePagination)return;const W=this._items?this._items.toArray()[Ae]:null;if(!W)return;const be=this._tabListContainer.nativeElement.offsetWidth,{offsetLeft:ge,offsetWidth:Ge}=W.elementRef.nativeElement;let It,zt;"ltr"==this._getLayoutDirection()?(It=ge,zt=It+Ge):(zt=this._tabListInner.nativeElement.offsetWidth-ge,It=zt-Ge);const an=this.scrollDistance,gn=this.scrollDistance+be;Itgn&&(this.scrollDistance+=Math.min(zt-gn,It-an))}_checkPaginationEnabled(){if(this.disablePagination)this._showPaginationControls=!1;else{const Ae=this._tabListInner.nativeElement.scrollWidth>this._elementRef.nativeElement.offsetWidth;Ae||(this.scrollDistance=0),Ae!==this._showPaginationControls&&this._changeDetectorRef.markForCheck(),this._showPaginationControls=Ae}}_checkScrollingControls(){this.disablePagination?this._disableScrollAfter=this._disableScrollBefore=!0:(this._disableScrollBefore=0==this.scrollDistance,this._disableScrollAfter=this.scrollDistance==this._getMaxScrollDistance(),this._changeDetectorRef.markForCheck())}_getMaxScrollDistance(){return this._tabListInner.nativeElement.scrollWidth-this._tabListContainer.nativeElement.offsetWidth||0}_alignInkBarToSelectedTab(){const Ae=this._items&&this._items.length?this._items.toArray()[this.selectedIndex]:null,W=Ae?Ae.elementRef.nativeElement:null;W?this._inkBar.alignToElement(W):this._inkBar.hide()}_stopInterval(){this._stopScrolling.next()}_handlePaginatorPress(Ae,W){W&&null!=W.button&&0!==W.button||(this._stopInterval(),(0,_.H)(650,100).pipe((0,w.R)((0,u.T)(this._stopScrolling,this._destroyed))).subscribe(()=>{const{maxScrollDistance:be,distance:ge}=this._scrollHeader(Ae);(0===ge||ge>=be)&&this._stopInterval()}))}_scrollTo(Ae){if(this.disablePagination)return{maxScrollDistance:0,distance:0};const W=this._getMaxScrollDistance();return this._scrollDistance=Math.max(0,Math.min(W,Ae)),this._scrollDistanceChanged=!0,this._checkScrollingControls(),{maxScrollDistance:W,distance:this._scrollDistance}}}return Ct.\u0275fac=function(Ae){return new(Ae||Ct)(o.\u0275\u0275directiveInject(o.ElementRef),o.\u0275\u0275directiveInject(o.ChangeDetectorRef),o.\u0275\u0275directiveInject(D.rL),o.\u0275\u0275directiveInject(c.Is,8),o.\u0275\u0275directiveInject(o.NgZone),o.\u0275\u0275directiveInject(R.t4),o.\u0275\u0275directiveInject(o.ANIMATION_MODULE_TYPE,8))},Ct.\u0275dir=o.\u0275\u0275defineDirective({type:Ct,inputs:{disablePagination:"disablePagination"}}),Ct})(),we=(()=>{class Ct extends ve{get disableRipple(){return this._disableRipple}set disableRipple(Ae){this._disableRipple=(0,E.Ig)(Ae)}constructor(Ae,W,be,ge,Ge,It,zt){super(Ae,W,be,ge,Ge,It,zt),this._disableRipple=!1}_itemSelected(Ae){Ae.preventDefault()}}return Ct.\u0275fac=function(Ae){return new(Ae||Ct)(o.\u0275\u0275directiveInject(o.ElementRef),o.\u0275\u0275directiveInject(o.ChangeDetectorRef),o.\u0275\u0275directiveInject(D.rL),o.\u0275\u0275directiveInject(c.Is,8),o.\u0275\u0275directiveInject(o.NgZone),o.\u0275\u0275directiveInject(R.t4),o.\u0275\u0275directiveInject(o.ANIMATION_MODULE_TYPE,8))},Ct.\u0275dir=o.\u0275\u0275defineDirective({type:Ct,inputs:{disableRipple:"disableRipple"},features:[o.\u0275\u0275InheritDefinitionFeature]}),Ct})();const De=new o.InjectionToken("MAT_TABS_CONFIG");let je=0;const ke=(0,v.mixinColor)((0,v.mixinDisableRipple)(class{constructor(Ct){this._elementRef=Ct}}),"primary");let Z=(()=>{class Ct extends ke{get dynamicHeight(){return this._dynamicHeight}set dynamicHeight(Ae){this._dynamicHeight=(0,E.Ig)(Ae)}get selectedIndex(){return this._selectedIndex}set selectedIndex(Ae){this._indexToSelect=(0,E.su)(Ae,null)}get animationDuration(){return this._animationDuration}set animationDuration(Ae){this._animationDuration=/^\d+$/.test(Ae+"")?Ae+"ms":Ae}get contentTabIndex(){return this._contentTabIndex}set contentTabIndex(Ae){this._contentTabIndex=(0,E.su)(Ae,null)}get disablePagination(){return this._disablePagination}set disablePagination(Ae){this._disablePagination=(0,E.Ig)(Ae)}get preserveContent(){return this._preserveContent}set preserveContent(Ae){this._preserveContent=(0,E.Ig)(Ae)}get backgroundColor(){return this._backgroundColor}set backgroundColor(Ae){const W=this._elementRef.nativeElement.classList;W.remove("mat-tabs-with-background",`mat-background-${this.backgroundColor}`),Ae&&W.add("mat-tabs-with-background",`mat-background-${Ae}`),this._backgroundColor=Ae}constructor(Ae,W,be,ge){super(Ae),this._changeDetectorRef=W,this._animationMode=ge,this._tabs=new o.QueryList,this._indexToSelect=0,this._lastFocusedTabIndex=null,this._tabBodyWrapperHeight=0,this._tabsSubscription=s.w0.EMPTY,this._tabLabelSubscription=s.w0.EMPTY,this._dynamicHeight=!1,this._selectedIndex=null,this.headerPosition="above",this._disablePagination=!1,this._preserveContent=!1,this.selectedIndexChange=new o.EventEmitter,this.focusChange=new o.EventEmitter,this.animationDone=new o.EventEmitter,this.selectedTabChange=new o.EventEmitter(!0),this._groupId=je++,this.animationDuration=be&&be.animationDuration?be.animationDuration:"500ms",this.disablePagination=!(!be||null==be.disablePagination)&&be.disablePagination,this.dynamicHeight=!(!be||null==be.dynamicHeight)&&be.dynamicHeight,this.contentTabIndex=be?.contentTabIndex??null,this.preserveContent=!!be?.preserveContent}ngAfterContentChecked(){const Ae=this._indexToSelect=this._clampTabIndex(this._indexToSelect);if(this._selectedIndex!=Ae){const W=null==this._selectedIndex;if(!W){this.selectedTabChange.emit(this._createChangeEvent(Ae));const be=this._tabBodyWrapper.nativeElement;be.style.minHeight=be.clientHeight+"px"}Promise.resolve().then(()=>{this._tabs.forEach((be,ge)=>be.isActive=ge===Ae),W||(this.selectedIndexChange.emit(Ae),this._tabBodyWrapper.nativeElement.style.minHeight="")})}this._tabs.forEach((W,be)=>{W.position=be-Ae,null!=this._selectedIndex&&0==W.position&&!W.origin&&(W.origin=Ae-this._selectedIndex)}),this._selectedIndex!==Ae&&(this._selectedIndex=Ae,this._lastFocusedTabIndex=null,this._changeDetectorRef.markForCheck())}ngAfterContentInit(){this._subscribeToAllTabChanges(),this._subscribeToTabLabels(),this._tabsSubscription=this._tabs.changes.subscribe(()=>{const Ae=this._clampTabIndex(this._indexToSelect);if(Ae===this._selectedIndex){const W=this._tabs.toArray();let be;for(let ge=0;ge{W[Ae].isActive=!0,this.selectedTabChange.emit(this._createChangeEvent(Ae))})}this._changeDetectorRef.markForCheck()})}_subscribeToAllTabChanges(){this._allTabs.changes.pipe((0,M.O)(this._allTabs)).subscribe(Ae=>{this._tabs.reset(Ae.filter(W=>W._closestTabGroup===this||!W._closestTabGroup)),this._tabs.notifyOnChanges()})}ngOnDestroy(){this._tabs.destroy(),this._tabsSubscription.unsubscribe(),this._tabLabelSubscription.unsubscribe()}realignInkBar(){this._tabHeader&&this._tabHeader._alignInkBarToSelectedTab()}updatePagination(){this._tabHeader&&this._tabHeader.updatePagination()}focusTab(Ae){const W=this._tabHeader;W&&(W.focusIndex=Ae)}_focusChanged(Ae){this._lastFocusedTabIndex=Ae,this.focusChange.emit(this._createChangeEvent(Ae))}_createChangeEvent(Ae){const W=new ce;return W.index=Ae,this._tabs&&this._tabs.length&&(W.tab=this._tabs.toArray()[Ae]),W}_subscribeToTabLabels(){this._tabLabelSubscription&&this._tabLabelSubscription.unsubscribe(),this._tabLabelSubscription=(0,u.T)(...this._tabs.map(Ae=>Ae._stateChanges)).subscribe(()=>this._changeDetectorRef.markForCheck())}_clampTabIndex(Ae){return Math.min(this._tabs.length-1,Math.max(Ae||0,0))}_getTabLabelId(Ae){return`mat-tab-label-${this._groupId}-${Ae}`}_getTabContentId(Ae){return`mat-tab-content-${this._groupId}-${Ae}`}_setTabBodyWrapperHeight(Ae){if(!this._dynamicHeight||!this._tabBodyWrapperHeight)return;const W=this._tabBodyWrapper.nativeElement;W.style.height=this._tabBodyWrapperHeight+"px",this._tabBodyWrapper.nativeElement.offsetHeight&&(W.style.height=Ae+"px")}_removeTabBodyWrapperHeight(){const Ae=this._tabBodyWrapper.nativeElement;this._tabBodyWrapperHeight=Ae.clientHeight,Ae.style.height="",this.animationDone.emit()}_handleClick(Ae,W,be){W.focusIndex=be,Ae.disabled||(this.selectedIndex=be)}_getTabIndex(Ae){return Ae===(this._lastFocusedTabIndex??this.selectedIndex)?0:-1}_tabFocusChanged(Ae,W){Ae&&"mouse"!==Ae&&"touch"!==Ae&&(this._tabHeader.focusIndex=W)}}return Ct.\u0275fac=function(Ae){return new(Ae||Ct)(o.\u0275\u0275directiveInject(o.ElementRef),o.\u0275\u0275directiveInject(o.ChangeDetectorRef),o.\u0275\u0275directiveInject(De,8),o.\u0275\u0275directiveInject(o.ANIMATION_MODULE_TYPE,8))},Ct.\u0275dir=o.\u0275\u0275defineDirective({type:Ct,inputs:{dynamicHeight:"dynamicHeight",selectedIndex:"selectedIndex",headerPosition:"headerPosition",animationDuration:"animationDuration",contentTabIndex:"contentTabIndex",disablePagination:"disablePagination",preserveContent:"preserveContent",backgroundColor:"backgroundColor"},outputs:{selectedIndexChange:"selectedIndexChange",focusChange:"focusChange",animationDone:"animationDone",selectedTabChange:"selectedTabChange"},features:[o.\u0275\u0275InheritDefinitionFeature]}),Ct})();class ce{}let Ee=0,it=(()=>{class Ct extends ve{get backgroundColor(){return this._backgroundColor}set backgroundColor(Ae){const W=this._elementRef.nativeElement.classList;W.remove("mat-tabs-with-background",`mat-background-${this.backgroundColor}`),Ae&&W.add("mat-tabs-with-background",`mat-background-${Ae}`),this._backgroundColor=Ae}get disableRipple(){return this._disableRipple}set disableRipple(Ae){this._disableRipple=(0,E.Ig)(Ae)}constructor(Ae,W,be,ge,Ge,It,zt){super(Ae,ge,Ge,W,be,It,zt),this._disableRipple=!1,this.color="primary"}_itemSelected(){}ngAfterContentInit(){this._items.changes.pipe((0,M.O)(null),(0,w.R)(this._destroyed)).subscribe(()=>{this.updateActiveLink()}),super.ngAfterContentInit()}updateActiveLink(){if(!this._items)return;const Ae=this._items.toArray();for(let W=0;W{class Ct extends Rt{get active(){return this._isActive}set active(Ae){const W=(0,E.Ig)(Ae);W!==this._isActive&&(this._isActive=W,this._tabNavBar.updateActiveLink())}get rippleDisabled(){return this.disabled||this.disableRipple||this._tabNavBar.disableRipple||!!this.rippleConfig.disabled}constructor(Ae,W,be,ge,Ge,It){super(),this._tabNavBar=Ae,this.elementRef=W,this._focusMonitor=Ge,this._isActive=!1,this.id="mat-tab-link-"+Ee++,this.rippleConfig=be||{},this.tabIndex=parseInt(ge)||0,"NoopAnimations"===It&&(this.rippleConfig.animation={enterDuration:0,exitDuration:0})}focus(){this.elementRef.nativeElement.focus()}ngAfterViewInit(){this._focusMonitor.monitor(this.elementRef)}ngOnDestroy(){this._focusMonitor.stopMonitoring(this.elementRef)}_handleFocus(){this._tabNavBar.focusIndex=this._tabNavBar._items.toArray().indexOf(this)}_handleKeydown(Ae){!this.disabled||Ae.keyCode!==j.L_&&Ae.keyCode!==j.K5?this._tabNavBar.tabPanel&&Ae.keyCode===j.L_&&this.elementRef.nativeElement.click():Ae.preventDefault()}_getAriaControls(){return this._tabNavBar.tabPanel?this._tabNavBar.tabPanel?.id:this.elementRef.nativeElement.getAttribute("aria-controls")}_getAriaSelected(){return this._tabNavBar.tabPanel?this.active?"true":"false":this.elementRef.nativeElement.getAttribute("aria-selected")}_getAriaCurrent(){return this.active&&!this._tabNavBar.tabPanel?"page":null}_getRole(){return this._tabNavBar.tabPanel?"tab":this.elementRef.nativeElement.getAttribute("role")}_getTabIndex(){return this._tabNavBar.tabPanel?this._isActive&&!this.disabled?0:-1:this.tabIndex}}return Ct.\u0275fac=function(Ae){return new(Ae||Ct)(o.\u0275\u0275directiveInject(it),o.\u0275\u0275directiveInject(o.ElementRef),o.\u0275\u0275directiveInject(v.MAT_RIPPLE_GLOBAL_OPTIONS,8),o.\u0275\u0275injectAttribute("tabindex"),o.\u0275\u0275directiveInject(n.tE),o.\u0275\u0275directiveInject(o.ANIMATION_MODULE_TYPE,8))},Ct.\u0275dir=o.\u0275\u0275defineDirective({type:Ct,inputs:{active:"active",id:"id"},features:[o.\u0275\u0275InheritDefinitionFeature]}),Ct})();function wn(Ct,Ft){1&Ct&&o.\u0275\u0275projection(0)}const Tn=["*"];function Sn(Ct,Ft){}const Mn=function(Ct){return{animationDuration:Ct}},Ci=function(Ct,Ft){return{value:Ct,params:Ft}},di=["tabListContainer"],Li=["tabList"],Qi=["tabListInner"],wt=["nextPaginator"],mt=["previousPaginator"],pt=["tabBodyWrapper"],qt=["tabHeader"];function on(Ct,Ft){}function hn(Ct,Ft){if(1&Ct&&o.\u0275\u0275template(0,on,0,0,"ng-template",10),2&Ct){const Ae=o.\u0275\u0275nextContext().$implicit;o.\u0275\u0275property("cdkPortalOutlet",Ae.templateLabel)}}function un(Ct,Ft){if(1&Ct&&o.\u0275\u0275text(0),2&Ct){const Ae=o.\u0275\u0275nextContext().$implicit;o.\u0275\u0275textInterpolate(Ae.textLabel)}}function $n(Ct,Ft){if(1&Ct){const Ae=o.\u0275\u0275getCurrentView();o.\u0275\u0275elementStart(0,"div",6),o.\u0275\u0275listener("click",function(){const be=o.\u0275\u0275restoreView(Ae),ge=be.$implicit,Ge=be.index,It=o.\u0275\u0275nextContext(),zt=o.\u0275\u0275reference(1);return o.\u0275\u0275resetView(It._handleClick(ge,zt,Ge))})("cdkFocusChange",function(be){const Ge=o.\u0275\u0275restoreView(Ae).index,It=o.\u0275\u0275nextContext();return o.\u0275\u0275resetView(It._tabFocusChanged(be,Ge))}),o.\u0275\u0275elementStart(1,"div",7),o.\u0275\u0275template(2,hn,1,1,"ng-template",8),o.\u0275\u0275template(3,un,1,1,"ng-template",null,9,o.\u0275\u0275templateRefExtractor),o.\u0275\u0275elementEnd()()}if(2&Ct){const Ae=Ft.$implicit,W=Ft.index,be=o.\u0275\u0275reference(4),ge=o.\u0275\u0275nextContext();o.\u0275\u0275classProp("mat-tab-label-active",ge.selectedIndex===W),o.\u0275\u0275property("id",ge._getTabLabelId(W))("ngClass",Ae.labelClass)("disabled",Ae.disabled)("matRippleDisabled",Ae.disabled||ge.disableRipple),o.\u0275\u0275attribute("tabIndex",ge._getTabIndex(W))("aria-posinset",W+1)("aria-setsize",ge._tabs.length)("aria-controls",ge._getTabContentId(W))("aria-selected",ge.selectedIndex===W)("aria-label",Ae.ariaLabel||null)("aria-labelledby",!Ae.ariaLabel&&Ae.ariaLabelledby?Ae.ariaLabelledby:null),o.\u0275\u0275advance(2),o.\u0275\u0275property("ngIf",Ae.templateLabel)("ngIfElse",be)}}function In(Ct,Ft){if(1&Ct){const Ae=o.\u0275\u0275getCurrentView();o.\u0275\u0275elementStart(0,"mat-tab-body",11),o.\u0275\u0275listener("_onCentered",function(){o.\u0275\u0275restoreView(Ae);const be=o.\u0275\u0275nextContext();return o.\u0275\u0275resetView(be._removeTabBodyWrapperHeight())})("_onCentering",function(be){o.\u0275\u0275restoreView(Ae);const ge=o.\u0275\u0275nextContext();return o.\u0275\u0275resetView(ge._setTabBodyWrapperHeight(be))}),o.\u0275\u0275elementEnd()}if(2&Ct){const Ae=Ft.$implicit,W=Ft.index,be=o.\u0275\u0275nextContext();o.\u0275\u0275classProp("mat-tab-body-active",be.selectedIndex===W),o.\u0275\u0275property("id",be._getTabContentId(W))("ngClass",Ae.bodyClass)("content",Ae.content)("position",Ae.position)("origin",Ae.origin)("animationDuration",be.animationDuration)("preserveContent",be.preserveContent),o.\u0275\u0275attribute("tabindex",null!=be.contentTabIndex&&be.selectedIndex===W?be.contentTabIndex:null)("aria-labelledby",be._getTabLabelId(W))}}const Zn=["mat-tab-nav-bar",""];let mi=(()=>{class Ct{constructor(Ae,W,be,ge){this._elementRef=Ae,this._ngZone=W,this._inkBarPositioner=be,this._animationMode=ge}alignToElement(Ae){this.show(),this._ngZone.run(()=>{this._ngZone.onStable.pipe((0,a.q)(1)).subscribe(()=>{const W=this._inkBarPositioner(Ae),be=this._elementRef.nativeElement;be.style.left=W.left,be.style.width=W.width})})}show(){this._elementRef.nativeElement.style.visibility="visible"}hide(){this._elementRef.nativeElement.style.visibility="hidden"}}return Ct.\u0275fac=function(Ae){return new(Ae||Ct)(o.\u0275\u0275directiveInject(o.ElementRef),o.\u0275\u0275directiveInject(o.NgZone),o.\u0275\u0275directiveInject(Te),o.\u0275\u0275directiveInject(o.ANIMATION_MODULE_TYPE,8))},Ct.\u0275dir=o.\u0275\u0275defineDirective({type:Ct,selectors:[["mat-ink-bar"]],hostAttrs:[1,"mat-ink-bar"],hostVars:2,hostBindings:function(Ae,W){2&Ae&&o.\u0275\u0275classProp("_mat-animation-noopable","NoopAnimations"===W._animationMode)}}),Ct})(),Qn=(()=>{class Ct extends Bt{constructor(){super(...arguments),this._explicitContent=void 0}get templateLabel(){return this._templateLabel}set templateLabel(Ae){this._setTemplateLabelInput(Ae)}}return Ct.\u0275fac=function(){let Ft;return function(W){return(Ft||(Ft=o.\u0275\u0275getInheritedFactory(Ct)))(W||Ct)}}(),Ct.\u0275cmp=o.\u0275\u0275defineComponent({type:Ct,selectors:[["mat-tab"]],contentQueries:function(Ae,W,be){if(1&Ae&&(o.\u0275\u0275contentQuery(be,vt,5),o.\u0275\u0275contentQuery(be,nt,7,o.TemplateRef)),2&Ae){let ge;o.\u0275\u0275queryRefresh(ge=o.\u0275\u0275loadQuery())&&(W.templateLabel=ge.first),o.\u0275\u0275queryRefresh(ge=o.\u0275\u0275loadQuery())&&(W._explicitContent=ge.first)}},hostVars:1,hostBindings:function(Ae,W){2&Ae&&o.\u0275\u0275attribute("mat-id-collision",null)},inputs:{disabled:"disabled"},exportAs:["matTab"],features:[o.\u0275\u0275ProvidersFeature([{provide:rt,useExisting:Ct}]),o.\u0275\u0275InheritDefinitionFeature],ngContentSelectors:Tn,decls:1,vars:0,template:function(Ae,W){1&Ae&&(o.\u0275\u0275projectionDef(),o.\u0275\u0275template(0,wn,1,0,"ng-template"))},encapsulation:2}),Ct})(),ri=(()=>{class Ct extends St{constructor(Ae,W,be,ge){super(Ae,W,be,ge)}}return Ct.\u0275fac=function(Ae){return new(Ae||Ct)(o.\u0275\u0275directiveInject(o.ComponentFactoryResolver),o.\u0275\u0275directiveInject(o.ViewContainerRef),o.\u0275\u0275directiveInject((0,o.forwardRef)(()=>ln)),o.\u0275\u0275directiveInject(b.DOCUMENT))},Ct.\u0275dir=o.\u0275\u0275defineDirective({type:Ct,selectors:[["","matTabBodyHost",""]],features:[o.\u0275\u0275InheritDefinitionFeature]}),Ct})(),ln=(()=>{class Ct extends bt{constructor(Ae,W,be){super(Ae,W,be)}}return Ct.\u0275fac=function(Ae){return new(Ae||Ct)(o.\u0275\u0275directiveInject(o.ElementRef),o.\u0275\u0275directiveInject(c.Is,8),o.\u0275\u0275directiveInject(o.ChangeDetectorRef))},Ct.\u0275cmp=o.\u0275\u0275defineComponent({type:Ct,selectors:[["mat-tab-body"]],viewQuery:function(Ae,W){if(1&Ae&&o.\u0275\u0275viewQuery(C.Pl,5),2&Ae){let be;o.\u0275\u0275queryRefresh(be=o.\u0275\u0275loadQuery())&&(W._portalHost=be.first)}},hostAttrs:[1,"mat-tab-body"],features:[o.\u0275\u0275InheritDefinitionFeature],decls:3,vars:6,consts:[["cdkScrollable","",1,"mat-tab-body-content"],["content",""],["matTabBodyHost",""]],template:function(Ae,W){1&Ae&&(o.\u0275\u0275elementStart(0,"div",0,1),o.\u0275\u0275listener("@translateTab.start",function(ge){return W._onTranslateTabStarted(ge)})("@translateTab.done",function(ge){return W._translateTabComplete.next(ge)}),o.\u0275\u0275template(2,Sn,0,0,"ng-template",2),o.\u0275\u0275elementEnd()),2&Ae&&o.\u0275\u0275property("@translateTab",o.\u0275\u0275pureFunction2(3,Ci,W._position,o.\u0275\u0275pureFunction1(1,Mn,W.animationDuration)))},dependencies:[ri],styles:['.mat-tab-body-content{height:100%;overflow:auto}.mat-tab-group-dynamic-height .mat-tab-body-content{overflow:hidden}.mat-tab-body-content[style*="visibility: hidden"]{display:none}'],encapsulation:2,data:{animation:[tt.translateTab]}}),Ct})(),en=(()=>{class Ct extends Lt{}return Ct.\u0275fac=function(){let Ft;return function(W){return(Ft||(Ft=o.\u0275\u0275getInheritedFactory(Ct)))(W||Ct)}}(),Ct.\u0275dir=o.\u0275\u0275defineDirective({type:Ct,selectors:[["","matTabLabelWrapper",""]],hostVars:3,hostBindings:function(Ae,W){2&Ae&&(o.\u0275\u0275attribute("aria-disabled",!!W.disabled),o.\u0275\u0275classProp("mat-tab-disabled",W.disabled))},inputs:{disabled:"disabled"},features:[o.\u0275\u0275InheritDefinitionFeature]}),Ct})(),Dn=(()=>{class Ct extends we{constructor(Ae,W,be,ge,Ge,It,zt){super(Ae,W,be,ge,Ge,It,zt)}}return Ct.\u0275fac=function(Ae){return new(Ae||Ct)(o.\u0275\u0275directiveInject(o.ElementRef),o.\u0275\u0275directiveInject(o.ChangeDetectorRef),o.\u0275\u0275directiveInject(D.rL),o.\u0275\u0275directiveInject(c.Is,8),o.\u0275\u0275directiveInject(o.NgZone),o.\u0275\u0275directiveInject(R.t4),o.\u0275\u0275directiveInject(o.ANIMATION_MODULE_TYPE,8))},Ct.\u0275cmp=o.\u0275\u0275defineComponent({type:Ct,selectors:[["mat-tab-header"]],contentQueries:function(Ae,W,be){if(1&Ae&&o.\u0275\u0275contentQuery(be,en,4),2&Ae){let ge;o.\u0275\u0275queryRefresh(ge=o.\u0275\u0275loadQuery())&&(W._items=ge)}},viewQuery:function(Ae,W){if(1&Ae&&(o.\u0275\u0275viewQuery(mi,7),o.\u0275\u0275viewQuery(di,7),o.\u0275\u0275viewQuery(Li,7),o.\u0275\u0275viewQuery(Qi,7),o.\u0275\u0275viewQuery(wt,5),o.\u0275\u0275viewQuery(mt,5)),2&Ae){let be;o.\u0275\u0275queryRefresh(be=o.\u0275\u0275loadQuery())&&(W._inkBar=be.first),o.\u0275\u0275queryRefresh(be=o.\u0275\u0275loadQuery())&&(W._tabListContainer=be.first),o.\u0275\u0275queryRefresh(be=o.\u0275\u0275loadQuery())&&(W._tabList=be.first),o.\u0275\u0275queryRefresh(be=o.\u0275\u0275loadQuery())&&(W._tabListInner=be.first),o.\u0275\u0275queryRefresh(be=o.\u0275\u0275loadQuery())&&(W._nextPaginator=be.first),o.\u0275\u0275queryRefresh(be=o.\u0275\u0275loadQuery())&&(W._previousPaginator=be.first)}},hostAttrs:[1,"mat-tab-header"],hostVars:4,hostBindings:function(Ae,W){2&Ae&&o.\u0275\u0275classProp("mat-tab-header-pagination-controls-enabled",W._showPaginationControls)("mat-tab-header-rtl","rtl"==W._getLayoutDirection())},inputs:{selectedIndex:"selectedIndex"},outputs:{selectFocusedIndex:"selectFocusedIndex",indexFocused:"indexFocused"},features:[o.\u0275\u0275InheritDefinitionFeature],ngContentSelectors:Tn,decls:14,vars:10,consts:[["aria-hidden","true","type","button","mat-ripple","","tabindex","-1",1,"mat-tab-header-pagination","mat-tab-header-pagination-before","mat-elevation-z4",3,"matRippleDisabled","disabled","click","mousedown","touchend"],["previousPaginator",""],[1,"mat-tab-header-pagination-chevron"],[1,"mat-tab-label-container",3,"keydown"],["tabListContainer",""],["role","tablist",1,"mat-tab-list",3,"cdkObserveContent"],["tabList",""],[1,"mat-tab-labels"],["tabListInner",""],["aria-hidden","true","type","button","mat-ripple","","tabindex","-1",1,"mat-tab-header-pagination","mat-tab-header-pagination-after","mat-elevation-z4",3,"matRippleDisabled","disabled","mousedown","click","touchend"],["nextPaginator",""]],template:function(Ae,W){1&Ae&&(o.\u0275\u0275projectionDef(),o.\u0275\u0275elementStart(0,"button",0,1),o.\u0275\u0275listener("click",function(){return W._handlePaginatorClick("before")})("mousedown",function(ge){return W._handlePaginatorPress("before",ge)})("touchend",function(){return W._stopInterval()}),o.\u0275\u0275element(2,"div",2),o.\u0275\u0275elementEnd(),o.\u0275\u0275elementStart(3,"div",3,4),o.\u0275\u0275listener("keydown",function(ge){return W._handleKeydown(ge)}),o.\u0275\u0275elementStart(5,"div",5,6),o.\u0275\u0275listener("cdkObserveContent",function(){return W._onContentChanges()}),o.\u0275\u0275elementStart(7,"div",7,8),o.\u0275\u0275projection(9),o.\u0275\u0275elementEnd(),o.\u0275\u0275element(10,"mat-ink-bar"),o.\u0275\u0275elementEnd()(),o.\u0275\u0275elementStart(11,"button",9,10),o.\u0275\u0275listener("mousedown",function(ge){return W._handlePaginatorPress("after",ge)})("click",function(){return W._handlePaginatorClick("after")})("touchend",function(){return W._stopInterval()}),o.\u0275\u0275element(13,"div",2),o.\u0275\u0275elementEnd()),2&Ae&&(o.\u0275\u0275classProp("mat-tab-header-pagination-disabled",W._disableScrollBefore),o.\u0275\u0275property("matRippleDisabled",W._disableScrollBefore||W.disableRipple)("disabled",W._disableScrollBefore||null),o.\u0275\u0275advance(5),o.\u0275\u0275classProp("_mat-animation-noopable","NoopAnimations"===W._animationMode),o.\u0275\u0275advance(6),o.\u0275\u0275classProp("mat-tab-header-pagination-disabled",W._disableScrollAfter),o.\u0275\u0275property("matRippleDisabled",W._disableScrollAfter||W.disableRipple)("disabled",W._disableScrollAfter||null))},dependencies:[v.MatRipple,p.wD,mi],styles:[".mat-tab-header{display:flex;overflow:hidden;position:relative;flex-shrink:0}.mat-tab-header-pagination{-webkit-user-select:none;user-select:none;position:relative;display:none;justify-content:center;align-items:center;min-width:32px;cursor:pointer;z-index:2;-webkit-tap-highlight-color:rgba(0,0,0,0);touch-action:none;box-sizing:content-box;background:none;border:none;outline:0;padding:0}.mat-tab-header-pagination::-moz-focus-inner{border:0}.mat-tab-header-pagination-controls-enabled .mat-tab-header-pagination{display:flex}.mat-tab-header-pagination-before,.mat-tab-header-rtl .mat-tab-header-pagination-after{padding-left:4px}.mat-tab-header-pagination-before .mat-tab-header-pagination-chevron,.mat-tab-header-rtl .mat-tab-header-pagination-after .mat-tab-header-pagination-chevron{transform:rotate(-135deg)}.mat-tab-header-rtl .mat-tab-header-pagination-before,.mat-tab-header-pagination-after{padding-right:4px}.mat-tab-header-rtl .mat-tab-header-pagination-before .mat-tab-header-pagination-chevron,.mat-tab-header-pagination-after .mat-tab-header-pagination-chevron{transform:rotate(45deg)}.mat-tab-header-pagination-chevron{border-style:solid;border-width:2px 2px 0 0;height:8px;width:8px}.mat-tab-header-pagination-disabled{box-shadow:none;cursor:default}.mat-tab-list{flex-grow:1;position:relative;transition:transform 500ms cubic-bezier(0.35, 0, 0.25, 1)}.mat-ink-bar{position:absolute;bottom:0;height:2px;transition:500ms cubic-bezier(0.35, 0, 0.25, 1)}.mat-ink-bar._mat-animation-noopable{transition:none !important;animation:none !important}.mat-tab-group-inverted-header .mat-ink-bar{bottom:auto;top:0}.cdk-high-contrast-active .mat-ink-bar{outline:solid 2px;height:0}.mat-tab-labels{display:flex}[mat-align-tabs=center]>.mat-tab-header .mat-tab-labels{justify-content:center}[mat-align-tabs=end]>.mat-tab-header .mat-tab-labels{justify-content:flex-end}.mat-tab-label-container{display:flex;flex-grow:1;overflow:hidden;z-index:1}.mat-tab-list._mat-animation-noopable{transition:none !important;animation:none !important}.mat-tab-label{height:48px;padding:0 24px;cursor:pointer;box-sizing:border-box;opacity:.6;min-width:160px;text-align:center;display:inline-flex;justify-content:center;align-items:center;white-space:nowrap;position:relative}.mat-tab-label:focus{outline:none}.mat-tab-label:focus:not(.mat-tab-disabled){opacity:1}.mat-tab-label.mat-tab-disabled{cursor:default}.cdk-high-contrast-active .mat-tab-label.mat-tab-disabled{opacity:.5}.mat-tab-label .mat-tab-label-content{display:inline-flex;justify-content:center;align-items:center;white-space:nowrap}.cdk-high-contrast-active .mat-tab-label{opacity:1}.mat-tab-label::before{margin:5px}@media(max-width: 599px){.mat-tab-label{min-width:72px}}"],encapsulation:2}),Ct})(),An=(()=>{class Ct extends Z{constructor(Ae,W,be,ge){super(Ae,W,be,ge)}}return Ct.\u0275fac=function(Ae){return new(Ae||Ct)(o.\u0275\u0275directiveInject(o.ElementRef),o.\u0275\u0275directiveInject(o.ChangeDetectorRef),o.\u0275\u0275directiveInject(De,8),o.\u0275\u0275directiveInject(o.ANIMATION_MODULE_TYPE,8))},Ct.\u0275cmp=o.\u0275\u0275defineComponent({type:Ct,selectors:[["mat-tab-group"]],contentQueries:function(Ae,W,be){if(1&Ae&&o.\u0275\u0275contentQuery(be,Qn,5),2&Ae){let ge;o.\u0275\u0275queryRefresh(ge=o.\u0275\u0275loadQuery())&&(W._allTabs=ge)}},viewQuery:function(Ae,W){if(1&Ae&&(o.\u0275\u0275viewQuery(pt,5),o.\u0275\u0275viewQuery(qt,5)),2&Ae){let be;o.\u0275\u0275queryRefresh(be=o.\u0275\u0275loadQuery())&&(W._tabBodyWrapper=be.first),o.\u0275\u0275queryRefresh(be=o.\u0275\u0275loadQuery())&&(W._tabHeader=be.first)}},hostAttrs:["ngSkipHydration","",1,"mat-tab-group"],hostVars:4,hostBindings:function(Ae,W){2&Ae&&o.\u0275\u0275classProp("mat-tab-group-dynamic-height",W.dynamicHeight)("mat-tab-group-inverted-header","below"===W.headerPosition)},inputs:{color:"color",disableRipple:"disableRipple"},exportAs:["matTabGroup"],features:[o.\u0275\u0275ProvidersFeature([{provide:yt,useExisting:Ct}]),o.\u0275\u0275InheritDefinitionFeature],decls:6,vars:7,consts:[[3,"selectedIndex","disableRipple","disablePagination","indexFocused","selectFocusedIndex"],["tabHeader",""],["class","mat-tab-label mat-focus-indicator","role","tab","matTabLabelWrapper","","mat-ripple","","cdkMonitorElementFocus","",3,"id","mat-tab-label-active","ngClass","disabled","matRippleDisabled","click","cdkFocusChange",4,"ngFor","ngForOf"],[1,"mat-tab-body-wrapper"],["tabBodyWrapper",""],["role","tabpanel",3,"id","mat-tab-body-active","ngClass","content","position","origin","animationDuration","preserveContent","_onCentered","_onCentering",4,"ngFor","ngForOf"],["role","tab","matTabLabelWrapper","","mat-ripple","","cdkMonitorElementFocus","",1,"mat-tab-label","mat-focus-indicator",3,"id","ngClass","disabled","matRippleDisabled","click","cdkFocusChange"],[1,"mat-tab-label-content"],[3,"ngIf","ngIfElse"],["tabTextLabel",""],[3,"cdkPortalOutlet"],["role","tabpanel",3,"id","ngClass","content","position","origin","animationDuration","preserveContent","_onCentered","_onCentering"]],template:function(Ae,W){1&Ae&&(o.\u0275\u0275elementStart(0,"mat-tab-header",0,1),o.\u0275\u0275listener("indexFocused",function(ge){return W._focusChanged(ge)})("selectFocusedIndex",function(ge){return W.selectedIndex=ge}),o.\u0275\u0275template(2,$n,5,15,"div",2),o.\u0275\u0275elementEnd(),o.\u0275\u0275elementStart(3,"div",3,4),o.\u0275\u0275template(5,In,1,11,"mat-tab-body",5),o.\u0275\u0275elementEnd()),2&Ae&&(o.\u0275\u0275property("selectedIndex",W.selectedIndex||0)("disableRipple",W.disableRipple)("disablePagination",W.disablePagination),o.\u0275\u0275advance(2),o.\u0275\u0275property("ngForOf",W._tabs),o.\u0275\u0275advance(1),o.\u0275\u0275classProp("_mat-animation-noopable","NoopAnimations"===W._animationMode),o.\u0275\u0275advance(2),o.\u0275\u0275property("ngForOf",W._tabs))},dependencies:[b.NgClass,b.NgForOf,b.NgIf,C.Pl,v.MatRipple,n.kH,en,ln,Dn],styles:[".mat-tab-group{display:flex;flex-direction:column;max-width:100%}.mat-tab-group.mat-tab-group-inverted-header{flex-direction:column-reverse}.mat-tab-label{height:48px;padding:0 24px;cursor:pointer;box-sizing:border-box;opacity:.6;min-width:160px;text-align:center;display:inline-flex;justify-content:center;align-items:center;white-space:nowrap;position:relative}.mat-tab-label:focus{outline:none}.mat-tab-label:focus:not(.mat-tab-disabled){opacity:1}.mat-tab-label.mat-tab-disabled{cursor:default}.cdk-high-contrast-active .mat-tab-label.mat-tab-disabled{opacity:.5}.mat-tab-label .mat-tab-label-content{display:inline-flex;justify-content:center;align-items:center;white-space:nowrap}.cdk-high-contrast-active .mat-tab-label{opacity:1}@media(max-width: 599px){.mat-tab-label{padding:0 12px}}@media(max-width: 959px){.mat-tab-label{padding:0 12px}}.mat-tab-group[mat-stretch-tabs]>.mat-tab-header .mat-tab-label{flex-basis:0;flex-grow:1}.mat-tab-body-wrapper{position:relative;overflow:hidden;display:flex;transition:height 500ms cubic-bezier(0.35, 0, 0.25, 1)}.mat-tab-body-wrapper._mat-animation-noopable{transition:none !important;animation:none !important}.mat-tab-body{top:0;left:0;right:0;bottom:0;position:absolute;display:block;overflow:hidden;outline:0;flex-basis:100%}.mat-tab-body.mat-tab-body-active{position:relative;overflow-x:hidden;overflow-y:auto;z-index:1;flex-grow:1}.mat-tab-group.mat-tab-group-dynamic-height .mat-tab-body.mat-tab-body-active{overflow-y:hidden}"],encapsulation:2}),Ct})(),Yn=0,si=(()=>{class Ct extends it{constructor(Ae,W,be,ge,Ge,It,zt){super(Ae,W,be,ge,Ge,It,zt)}}return Ct.\u0275fac=function(Ae){return new(Ae||Ct)(o.\u0275\u0275directiveInject(o.ElementRef),o.\u0275\u0275directiveInject(c.Is,8),o.\u0275\u0275directiveInject(o.NgZone),o.\u0275\u0275directiveInject(o.ChangeDetectorRef),o.\u0275\u0275directiveInject(D.rL),o.\u0275\u0275directiveInject(R.t4),o.\u0275\u0275directiveInject(o.ANIMATION_MODULE_TYPE,8))},Ct.\u0275cmp=o.\u0275\u0275defineComponent({type:Ct,selectors:[["","mat-tab-nav-bar",""]],contentQueries:function(Ae,W,be){if(1&Ae&&o.\u0275\u0275contentQuery(be,ii,5),2&Ae){let ge;o.\u0275\u0275queryRefresh(ge=o.\u0275\u0275loadQuery())&&(W._items=ge)}},viewQuery:function(Ae,W){if(1&Ae&&(o.\u0275\u0275viewQuery(mi,7),o.\u0275\u0275viewQuery(di,7),o.\u0275\u0275viewQuery(Li,7),o.\u0275\u0275viewQuery(Qi,7),o.\u0275\u0275viewQuery(wt,5),o.\u0275\u0275viewQuery(mt,5)),2&Ae){let be;o.\u0275\u0275queryRefresh(be=o.\u0275\u0275loadQuery())&&(W._inkBar=be.first),o.\u0275\u0275queryRefresh(be=o.\u0275\u0275loadQuery())&&(W._tabListContainer=be.first),o.\u0275\u0275queryRefresh(be=o.\u0275\u0275loadQuery())&&(W._tabList=be.first),o.\u0275\u0275queryRefresh(be=o.\u0275\u0275loadQuery())&&(W._tabListInner=be.first),o.\u0275\u0275queryRefresh(be=o.\u0275\u0275loadQuery())&&(W._nextPaginator=be.first),o.\u0275\u0275queryRefresh(be=o.\u0275\u0275loadQuery())&&(W._previousPaginator=be.first)}},hostAttrs:[1,"mat-tab-nav-bar","mat-tab-header"],hostVars:11,hostBindings:function(Ae,W){2&Ae&&(o.\u0275\u0275attribute("role",W._getRole()),o.\u0275\u0275classProp("mat-tab-header-pagination-controls-enabled",W._showPaginationControls)("mat-tab-header-rtl","rtl"==W._getLayoutDirection())("mat-primary","warn"!==W.color&&"accent"!==W.color)("mat-accent","accent"===W.color)("mat-warn","warn"===W.color))},inputs:{color:"color"},exportAs:["matTabNavBar","matTabNav"],features:[o.\u0275\u0275InheritDefinitionFeature],attrs:Zn,ngContentSelectors:Tn,decls:14,vars:10,consts:[["aria-hidden","true","type","button","mat-ripple","","tabindex","-1",1,"mat-tab-header-pagination","mat-tab-header-pagination-before","mat-elevation-z4",3,"matRippleDisabled","disabled","click","mousedown","touchend"],["previousPaginator",""],[1,"mat-tab-header-pagination-chevron"],[1,"mat-tab-link-container",3,"keydown"],["tabListContainer",""],[1,"mat-tab-list",3,"cdkObserveContent"],["tabList",""],[1,"mat-tab-links"],["tabListInner",""],["aria-hidden","true","type","button","mat-ripple","","tabindex","-1",1,"mat-tab-header-pagination","mat-tab-header-pagination-after","mat-elevation-z4",3,"matRippleDisabled","disabled","mousedown","click","touchend"],["nextPaginator",""]],template:function(Ae,W){1&Ae&&(o.\u0275\u0275projectionDef(),o.\u0275\u0275elementStart(0,"button",0,1),o.\u0275\u0275listener("click",function(){return W._handlePaginatorClick("before")})("mousedown",function(ge){return W._handlePaginatorPress("before",ge)})("touchend",function(){return W._stopInterval()}),o.\u0275\u0275element(2,"div",2),o.\u0275\u0275elementEnd(),o.\u0275\u0275elementStart(3,"div",3,4),o.\u0275\u0275listener("keydown",function(ge){return W._handleKeydown(ge)}),o.\u0275\u0275elementStart(5,"div",5,6),o.\u0275\u0275listener("cdkObserveContent",function(){return W._onContentChanges()}),o.\u0275\u0275elementStart(7,"div",7,8),o.\u0275\u0275projection(9),o.\u0275\u0275elementEnd(),o.\u0275\u0275element(10,"mat-ink-bar"),o.\u0275\u0275elementEnd()(),o.\u0275\u0275elementStart(11,"button",9,10),o.\u0275\u0275listener("mousedown",function(ge){return W._handlePaginatorPress("after",ge)})("click",function(){return W._handlePaginatorClick("after")})("touchend",function(){return W._stopInterval()}),o.\u0275\u0275element(13,"div",2),o.\u0275\u0275elementEnd()),2&Ae&&(o.\u0275\u0275classProp("mat-tab-header-pagination-disabled",W._disableScrollBefore),o.\u0275\u0275property("matRippleDisabled",W._disableScrollBefore||W.disableRipple)("disabled",W._disableScrollBefore||null),o.\u0275\u0275advance(5),o.\u0275\u0275classProp("_mat-animation-noopable","NoopAnimations"===W._animationMode),o.\u0275\u0275advance(6),o.\u0275\u0275classProp("mat-tab-header-pagination-disabled",W._disableScrollAfter),o.\u0275\u0275property("matRippleDisabled",W._disableScrollAfter||W.disableRipple)("disabled",W._disableScrollAfter||null))},dependencies:[v.MatRipple,p.wD,mi],styles:[".mat-tab-header{display:flex;overflow:hidden;position:relative;flex-shrink:0}.mat-tab-header-pagination{-webkit-user-select:none;user-select:none;position:relative;display:none;justify-content:center;align-items:center;min-width:32px;cursor:pointer;z-index:2;-webkit-tap-highlight-color:rgba(0,0,0,0);touch-action:none;box-sizing:content-box;background:none;border:none;outline:0;padding:0}.mat-tab-header-pagination::-moz-focus-inner{border:0}.mat-tab-header-pagination-controls-enabled .mat-tab-header-pagination{display:flex}.mat-tab-header-pagination-before,.mat-tab-header-rtl .mat-tab-header-pagination-after{padding-left:4px}.mat-tab-header-pagination-before .mat-tab-header-pagination-chevron,.mat-tab-header-rtl .mat-tab-header-pagination-after .mat-tab-header-pagination-chevron{transform:rotate(-135deg)}.mat-tab-header-rtl .mat-tab-header-pagination-before,.mat-tab-header-pagination-after{padding-right:4px}.mat-tab-header-rtl .mat-tab-header-pagination-before .mat-tab-header-pagination-chevron,.mat-tab-header-pagination-after .mat-tab-header-pagination-chevron{transform:rotate(45deg)}.mat-tab-header-pagination-chevron{border-style:solid;border-width:2px 2px 0 0;height:8px;width:8px}.mat-tab-header-pagination-disabled{box-shadow:none;cursor:default}.mat-tab-list{flex-grow:1;position:relative;transition:transform 500ms cubic-bezier(0.35, 0, 0.25, 1)}.mat-tab-links{display:flex}[mat-align-tabs=center]>.mat-tab-link-container .mat-tab-links{justify-content:center}[mat-align-tabs=end]>.mat-tab-link-container .mat-tab-links{justify-content:flex-end}.mat-ink-bar{position:absolute;bottom:0;height:2px;transition:500ms cubic-bezier(0.35, 0, 0.25, 1)}.mat-ink-bar._mat-animation-noopable{transition:none !important;animation:none !important}.mat-tab-group-inverted-header .mat-ink-bar{bottom:auto;top:0}.cdk-high-contrast-active .mat-ink-bar{outline:solid 2px;height:0}.mat-tab-link-container{display:flex;flex-grow:1;overflow:hidden;z-index:1}.mat-tab-link{height:48px;padding:0 24px;cursor:pointer;box-sizing:border-box;opacity:.6;min-width:160px;text-align:center;display:inline-flex;justify-content:center;align-items:center;white-space:nowrap;vertical-align:top;text-decoration:none;position:relative;overflow:hidden;-webkit-tap-highlight-color:rgba(0,0,0,0)}.mat-tab-link:focus{outline:none}.mat-tab-link:focus:not(.mat-tab-disabled){opacity:1}.mat-tab-link.mat-tab-disabled{cursor:default}.cdk-high-contrast-active .mat-tab-link.mat-tab-disabled{opacity:.5}.mat-tab-link .mat-tab-label-content{display:inline-flex;justify-content:center;align-items:center;white-space:nowrap}.cdk-high-contrast-active .mat-tab-link{opacity:1}[mat-stretch-tabs] .mat-tab-link{flex-basis:0;flex-grow:1}.mat-tab-link.mat-tab-disabled{pointer-events:none}.mat-tab-link::before{margin:5px}@media(max-width: 599px){.mat-tab-link{min-width:72px}}"],encapsulation:2}),Ct})(),ii=(()=>{class Ct extends Ye{constructor(Ae,W,be,ge,Ge,It,zt,an){super(Ae,W,Ge,It,zt,an),this._tabLinkRipple=new v.RippleRenderer(this,be,W,ge),this._tabLinkRipple.setupTriggerEvents(W.nativeElement)}ngOnDestroy(){super.ngOnDestroy(),this._tabLinkRipple._removeTriggerEvents()}}return Ct.\u0275fac=function(Ae){return new(Ae||Ct)(o.\u0275\u0275directiveInject(si),o.\u0275\u0275directiveInject(o.ElementRef),o.\u0275\u0275directiveInject(o.NgZone),o.\u0275\u0275directiveInject(R.t4),o.\u0275\u0275directiveInject(v.MAT_RIPPLE_GLOBAL_OPTIONS,8),o.\u0275\u0275injectAttribute("tabindex"),o.\u0275\u0275directiveInject(n.tE),o.\u0275\u0275directiveInject(o.ANIMATION_MODULE_TYPE,8))},Ct.\u0275dir=o.\u0275\u0275defineDirective({type:Ct,selectors:[["","mat-tab-link",""],["","matTabLink",""]],hostAttrs:[1,"mat-tab-link","mat-focus-indicator"],hostVars:11,hostBindings:function(Ae,W){1&Ae&&o.\u0275\u0275listener("focus",function(){return W._handleFocus()})("keydown",function(ge){return W._handleKeydown(ge)}),2&Ae&&(o.\u0275\u0275attribute("aria-controls",W._getAriaControls())("aria-current",W._getAriaCurrent())("aria-disabled",W.disabled)("aria-selected",W._getAriaSelected())("id",W.id)("tabIndex",W._getTabIndex())("role",W._getRole()),o.\u0275\u0275classProp("mat-tab-disabled",W.disabled)("mat-tab-label-active",W.active))},inputs:{disabled:"disabled",disableRipple:"disableRipple",tabIndex:"tabIndex"},exportAs:["matTabLink"],features:[o.\u0275\u0275InheritDefinitionFeature]}),Ct})(),Ii=(()=>{class Ct{constructor(){this.id="mat-tab-nav-panel-"+Yn++}}return Ct.\u0275fac=function(Ae){return new(Ae||Ct)},Ct.\u0275cmp=o.\u0275\u0275defineComponent({type:Ct,selectors:[["mat-tab-nav-panel"]],hostAttrs:["role","tabpanel",1,"mat-tab-nav-panel"],hostVars:2,hostBindings:function(Ae,W){2&Ae&&o.\u0275\u0275attribute("aria-labelledby",W._activeTabId)("id",W.id)},inputs:{id:"id"},exportAs:["matTabNavPanel"],ngContentSelectors:Tn,decls:1,vars:0,template:function(Ae,W){1&Ae&&(o.\u0275\u0275projectionDef(),o.\u0275\u0275projection(0))},encapsulation:2,changeDetection:0}),Ct})(),oi=(()=>{class Ct extends J{}return Ct.\u0275fac=function(){let Ft;return function(W){return(Ft||(Ft=o.\u0275\u0275getInheritedFactory(Ct)))(W||Ct)}}(),Ct.\u0275dir=o.\u0275\u0275defineDirective({type:Ct,selectors:[["","mat-tab-label",""],["","matTabLabel",""]],features:[o.\u0275\u0275ProvidersFeature([{provide:vt,useExisting:Ct}]),o.\u0275\u0275InheritDefinitionFeature]}),Ct})(),li=(()=>{class Ct extends ot{}return Ct.\u0275fac=function(){let Ft;return function(W){return(Ft||(Ft=o.\u0275\u0275getInheritedFactory(Ct)))(W||Ct)}}(),Ct.\u0275dir=o.\u0275\u0275defineDirective({type:Ct,selectors:[["","matTabContent",""]],features:[o.\u0275\u0275ProvidersFeature([{provide:nt,useExisting:Ct}]),o.\u0275\u0275InheritDefinitionFeature]}),Ct})(),Pi=(()=>{class Ct{}return Ct.\u0275fac=function(Ae){return new(Ae||Ct)},Ct.\u0275mod=o.\u0275\u0275defineNgModule({type:Ct}),Ct.\u0275inj=o.\u0275\u0275defineInjector({imports:[b.CommonModule,v.MatCommonModule,C.eL,v.MatRippleModule,p.Q8,n.rt,v.MatCommonModule]}),Ct})()},1274:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{MatToolbar:()=>s,MatToolbarModule:()=>d,MatToolbarRow:()=>c,throwToolbarMixedModesError:()=>l});var n=g(5879),p=g(3680),C=g(2831),b=g(6814);const o=["*",[["mat-toolbar-row"]]],v=["*","mat-toolbar-row"],a=(0,p.mixinColor)(class{constructor(r){this._elementRef=r}});let c=(()=>{class r{}return r.\u0275fac=function(h){return new(h||r)},r.\u0275dir=n.\u0275\u0275defineDirective({type:r,selectors:[["mat-toolbar-row"]],hostAttrs:[1,"mat-toolbar-row"],exportAs:["matToolbarRow"]}),r})(),s=(()=>{class r extends a{constructor(h,m,_){super(h),this._platform=m,this._document=_}ngAfterViewInit(){this._platform.isBrowser&&(this._checkToolbarMixedModes(),this._toolbarRows.changes.subscribe(()=>this._checkToolbarMixedModes()))}_checkToolbarMixedModes(){}}return r.\u0275fac=function(h){return new(h||r)(n.\u0275\u0275directiveInject(n.ElementRef),n.\u0275\u0275directiveInject(C.t4),n.\u0275\u0275directiveInject(b.DOCUMENT))},r.\u0275cmp=n.\u0275\u0275defineComponent({type:r,selectors:[["mat-toolbar"]],contentQueries:function(h,m,_){if(1&h&&n.\u0275\u0275contentQuery(_,c,5),2&h){let M;n.\u0275\u0275queryRefresh(M=n.\u0275\u0275loadQuery())&&(m._toolbarRows=M)}},hostAttrs:[1,"mat-toolbar"],hostVars:4,hostBindings:function(h,m){2&h&&n.\u0275\u0275classProp("mat-toolbar-multiple-rows",m._toolbarRows.length>0)("mat-toolbar-single-row",0===m._toolbarRows.length)},inputs:{color:"color"},exportAs:["matToolbar"],features:[n.\u0275\u0275InheritDefinitionFeature],ngContentSelectors:v,decls:2,vars:0,template:function(h,m){1&h&&(n.\u0275\u0275projectionDef(o),n.\u0275\u0275projection(0),n.\u0275\u0275projection(1,1))},styles:[".mat-toolbar{background:var(--mat-toolbar-container-background-color);color:var(--mat-toolbar-container-text-color)}.mat-toolbar,.mat-toolbar h1,.mat-toolbar h2,.mat-toolbar h3,.mat-toolbar h4,.mat-toolbar h5,.mat-toolbar h6{font-family:var(--mat-toolbar-title-text-font);font-size:var(--mat-toolbar-title-text-size);line-height:var(--mat-toolbar-title-text-line-height);font-weight:var(--mat-toolbar-title-text-weight);letter-spacing:var(--mat-toolbar-title-text-tracking);margin:0}.cdk-high-contrast-active .mat-toolbar{outline:solid 1px}.mat-toolbar .mat-form-field-underline,.mat-toolbar .mat-form-field-ripple,.mat-toolbar .mat-focused .mat-form-field-ripple{background-color:currentColor}.mat-toolbar .mat-form-field-label,.mat-toolbar .mat-focused .mat-form-field-label,.mat-toolbar .mat-select-value,.mat-toolbar .mat-select-arrow,.mat-toolbar .mat-form-field.mat-focused .mat-select-arrow{color:inherit}.mat-toolbar .mat-input-element{caret-color:currentColor}.mat-toolbar .mat-mdc-button-base.mat-unthemed{--mdc-text-button-label-text-color: inherit;--mdc-outlined-button-label-text-color: inherit}.mat-toolbar-row,.mat-toolbar-single-row{display:flex;box-sizing:border-box;padding:0 16px;width:100%;flex-direction:row;align-items:center;white-space:nowrap;height:var(--mat-toolbar-standard-height)}@media(max-width: 599px){.mat-toolbar-row,.mat-toolbar-single-row{height:var(--mat-toolbar-mobile-height)}}.mat-toolbar-multiple-rows{display:flex;box-sizing:border-box;flex-direction:column;width:100%;min-height:var(--mat-toolbar-standard-height)}@media(max-width: 599px){.mat-toolbar-multiple-rows{min-height:var(--mat-toolbar-mobile-height)}}"],encapsulation:2,changeDetection:0}),r})();function l(){throw Error("MatToolbar: Attempting to combine different toolbar modes. Either specify multiple `` elements explicitly or just place content inside of a `` for a single row.")}let d=(()=>{class r{}return r.\u0275fac=function(h){return new(h||r)},r.\u0275mod=n.\u0275\u0275defineNgModule({type:r}),r.\u0275inj=n.\u0275\u0275defineInjector({imports:[p.MatCommonModule,p.MatCommonModule]}),r})()},6593:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{BrowserModule:()=>ot,By:()=>ze,DomSanitizer:()=>we,EVENT_MANAGER_PLUGINS:()=>r,EventManager:()=>u,HAMMER_GESTURE_CONFIG:()=>$t,HAMMER_LOADER:()=>Yt,HammerGestureConfig:()=>Ue,HammerModule:()=>ve,Meta:()=>rt,REMOVE_STYLES_ON_COMPONENT_DESTROY:()=>O,Title:()=>ee,TransferState:()=>Rt,VERSION:()=>Ee,bootstrapApplication:()=>Me,createApplication:()=>Oe,disableDebugTools:()=>Kt,enableDebugTools:()=>Dt,makeStateKey:()=>it,platformBrowser:()=>St,provideClientHydration:()=>ce,provideProtractorTestingSupport:()=>Be,withNoDomReuse:()=>ke,withNoHttpTransferCache:()=>Z,\u0275BrowserDomAdapter:()=>o,\u0275BrowserGetTestability:()=>l,\u0275DomEventsPlugin:()=>me,\u0275DomRendererFactory2:()=>j,\u0275DomSanitizerImpl:()=>De,\u0275HammerGesturesPlugin:()=>We,\u0275INTERNAL_BROWSER_PLATFORM_PROVIDERS:()=>tt,\u0275KeyEventsPlugin:()=>ue,\u0275SharedStylesHost:()=>_,\u0275getDOM:()=>p.\u0275getDOM,\u0275initDomAdapter:()=>$e});var n=g(5879),p=g(6814),C=g(9862);class b extends p.\u0275DomAdapter{constructor(){super(...arguments),this.supportsDOMEvents=!0}}class o extends b{static makeCurrent(){(0,p.\u0275setRootDomAdapter)(new o)}onAndCancel(qe,Ne,dt){return qe.addEventListener(Ne,dt),()=>{qe.removeEventListener(Ne,dt)}}dispatchEvent(qe,Ne){qe.dispatchEvent(Ne)}remove(qe){qe.parentNode&&qe.parentNode.removeChild(qe)}createElement(qe,Ne){return(Ne=Ne||this.getDefaultDocument()).createElement(qe)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(qe){return qe.nodeType===Node.ELEMENT_NODE}isShadowRoot(qe){return qe instanceof DocumentFragment}getGlobalEventTarget(qe,Ne){return"window"===Ne?window:"document"===Ne?qe:"body"===Ne?qe.body:null}getBaseHref(qe){const Ne=function a(){return v=v||document.querySelector("base"),v?v.getAttribute("href"):null}();return null==Ne?null:function s(Ye){c=c||document.createElement("a"),c.setAttribute("href",Ye);const qe=c.pathname;return"/"===qe.charAt(0)?qe:`/${qe}`}(Ne)}resetBaseElement(){v=null}getUserAgent(){return window.navigator.userAgent}getCookie(qe){return(0,p.\u0275parseCookieValue)(document.cookie,qe)}}let c,v=null;class l{addToWindow(qe){n.\u0275global.getAngularTestability=(dt,At=!0)=>{const tn=qe.findTestabilityInTree(dt,At);if(null==tn)throw new n.\u0275RuntimeError(5103,!1);return tn},n.\u0275global.getAllAngularTestabilities=()=>qe.getAllTestabilities(),n.\u0275global.getAllAngularRootElements=()=>qe.getAllRootElements(),n.\u0275global.frameworkStabilizers||(n.\u0275global.frameworkStabilizers=[]),n.\u0275global.frameworkStabilizers.push(dt=>{const At=n.\u0275global.getAllAngularTestabilities();let tn=At.length,wn=!1;const Tn=function(Sn){wn=wn||Sn,tn--,0==tn&&dt(wn)};At.forEach(Sn=>{Sn.whenStable(Tn)})})}findTestabilityInTree(qe,Ne,dt){return null==Ne?null:qe.getTestability(Ne)??(dt?(0,p.\u0275getDOM)().isShadowRoot(Ne)?this.findTestabilityInTree(qe,Ne.host,!0):this.findTestabilityInTree(qe,Ne.parentElement,!0):null)}}let d=(()=>{class Ye{build(){return new XMLHttpRequest}}return Ye.\u0275fac=function(Ne){return new(Ne||Ye)},Ye.\u0275prov=n.\u0275\u0275defineInjectable({token:Ye,factory:Ye.\u0275fac}),Ye})();const r=new n.InjectionToken("EventManagerPlugins");let u=(()=>{class Ye{constructor(Ne,dt){this._zone=dt,this._eventNameToPlugin=new Map,Ne.forEach(At=>{At.manager=this}),this._plugins=Ne.slice().reverse()}addEventListener(Ne,dt,At){return this._findPluginFor(dt).addEventListener(Ne,dt,At)}getZone(){return this._zone}_findPluginFor(Ne){let dt=this._eventNameToPlugin.get(Ne);if(dt)return dt;if(dt=this._plugins.find(tn=>tn.supports(Ne)),!dt)throw new n.\u0275RuntimeError(5101,!1);return this._eventNameToPlugin.set(Ne,dt),dt}}return Ye.\u0275fac=function(Ne){return new(Ne||Ye)(n.\u0275\u0275inject(r),n.\u0275\u0275inject(n.NgZone))},Ye.\u0275prov=n.\u0275\u0275defineInjectable({token:Ye,factory:Ye.\u0275fac}),Ye})();class h{constructor(qe){this._doc=qe}}const m="ng-app-id";let _=(()=>{class Ye{constructor(Ne,dt,At,tn={}){this.doc=Ne,this.appId=dt,this.nonce=At,this.platformId=tn,this.styleRef=new Map,this.hostNodes=new Set,this.styleNodesInDOM=this.collectServerRenderedStyles(),this.platformIsServer=(0,p.isPlatformServer)(tn),this.resetHostNodes()}addStyles(Ne){for(const dt of Ne)1===this.changeUsageCount(dt,1)&&this.onStyleAdded(dt)}removeStyles(Ne){for(const dt of Ne)this.changeUsageCount(dt,-1)<=0&&this.onStyleRemoved(dt)}ngOnDestroy(){const Ne=this.styleNodesInDOM;Ne&&(Ne.forEach(dt=>dt.remove()),Ne.clear());for(const dt of this.getAllStyles())this.onStyleRemoved(dt);this.resetHostNodes()}addHost(Ne){this.hostNodes.add(Ne);for(const dt of this.getAllStyles())this.addStyleToHost(Ne,dt)}removeHost(Ne){this.hostNodes.delete(Ne)}getAllStyles(){return this.styleRef.keys()}onStyleAdded(Ne){for(const dt of this.hostNodes)this.addStyleToHost(dt,Ne)}onStyleRemoved(Ne){const dt=this.styleRef;dt.get(Ne)?.elements?.forEach(At=>At.remove()),dt.delete(Ne)}collectServerRenderedStyles(){const Ne=this.doc.head?.querySelectorAll(`style[${m}="${this.appId}"]`);if(Ne?.length){const dt=new Map;return Ne.forEach(At=>{null!=At.textContent&&dt.set(At.textContent,At)}),dt}return null}changeUsageCount(Ne,dt){const At=this.styleRef;if(At.has(Ne)){const tn=At.get(Ne);return tn.usage+=dt,tn.usage}return At.set(Ne,{usage:dt,elements:[]}),dt}getStyleElement(Ne,dt){const At=this.styleNodesInDOM,tn=At?.get(dt);if(tn?.parentNode===Ne)return At.delete(dt),tn.removeAttribute(m),tn;{const wn=this.doc.createElement("style");return this.nonce&&wn.setAttribute("nonce",this.nonce),wn.textContent=dt,this.platformIsServer&&wn.setAttribute(m,this.appId),wn}}addStyleToHost(Ne,dt){const At=this.getStyleElement(Ne,dt);Ne.appendChild(At);const tn=this.styleRef,wn=tn.get(dt)?.elements;wn?wn.push(At):tn.set(dt,{elements:[At],usage:1})}resetHostNodes(){const Ne=this.hostNodes;Ne.clear(),Ne.add(this.doc.head)}}return Ye.\u0275fac=function(Ne){return new(Ne||Ye)(n.\u0275\u0275inject(p.DOCUMENT),n.\u0275\u0275inject(n.APP_ID),n.\u0275\u0275inject(n.CSP_NONCE,8),n.\u0275\u0275inject(n.PLATFORM_ID))},Ye.\u0275prov=n.\u0275\u0275defineInjectable({token:Ye,factory:Ye.\u0275fac}),Ye})();const M={svg:"http://www.w3.org/2000/svg",xhtml:"http://www.w3.org/1999/xhtml",xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/",math:"http://www.w3.org/1998/MathML/"},x=/%COMP%/g,w="%COMP%",L=`_nghost-${w}`,A=`_ngcontent-${w}`,O=new n.InjectionToken("RemoveStylesOnCompDestroy",{providedIn:"root",factory:()=>!1});function R(Ye,qe){return qe.map(Ne=>Ne.replace(x,Ye))}let j=(()=>{class Ye{constructor(Ne,dt,At,tn,wn,Tn,Sn,Mn=null){this.eventManager=Ne,this.sharedStylesHost=dt,this.appId=At,this.removeStylesOnCompDestroy=tn,this.doc=wn,this.platformId=Tn,this.ngZone=Sn,this.nonce=Mn,this.rendererByCompId=new Map,this.platformIsServer=(0,p.isPlatformServer)(Tn),this.defaultRenderer=new N(Ne,wn,Sn,this.platformIsServer)}createRenderer(Ne,dt){if(!Ne||!dt)return this.defaultRenderer;this.platformIsServer&&dt.encapsulation===n.ViewEncapsulation.ShadowDom&&(dt={...dt,encapsulation:n.ViewEncapsulation.Emulated});const At=this.getOrCreateRenderer(Ne,dt);return At instanceof ne?At.applyToHost(Ne):At instanceof se&&At.applyStyles(),At}getOrCreateRenderer(Ne,dt){const At=this.rendererByCompId;let tn=At.get(dt.id);if(!tn){const wn=this.doc,Tn=this.ngZone,Sn=this.eventManager,Mn=this.sharedStylesHost,Ci=this.removeStylesOnCompDestroy,di=this.platformIsServer;switch(dt.encapsulation){case n.ViewEncapsulation.Emulated:tn=new ne(Sn,Mn,dt,this.appId,Ci,wn,Tn,di);break;case n.ViewEncapsulation.ShadowDom:return new Y(Sn,Mn,Ne,dt,wn,Tn,this.nonce,di);default:tn=new se(Sn,Mn,dt,Ci,wn,Tn,di)}At.set(dt.id,tn)}return tn}ngOnDestroy(){this.rendererByCompId.clear()}}return Ye.\u0275fac=function(Ne){return new(Ne||Ye)(n.\u0275\u0275inject(u),n.\u0275\u0275inject(_),n.\u0275\u0275inject(n.APP_ID),n.\u0275\u0275inject(O),n.\u0275\u0275inject(p.DOCUMENT),n.\u0275\u0275inject(n.PLATFORM_ID),n.\u0275\u0275inject(n.NgZone),n.\u0275\u0275inject(n.CSP_NONCE))},Ye.\u0275prov=n.\u0275\u0275defineInjectable({token:Ye,factory:Ye.\u0275fac}),Ye})();class N{constructor(qe,Ne,dt,At){this.eventManager=qe,this.doc=Ne,this.ngZone=dt,this.platformIsServer=At,this.data=Object.create(null),this.destroyNode=null}destroy(){}createElement(qe,Ne){return Ne?this.doc.createElementNS(M[Ne]||Ne,qe):this.doc.createElement(qe)}createComment(qe){return this.doc.createComment(qe)}createText(qe){return this.doc.createTextNode(qe)}appendChild(qe,Ne){(F(qe)?qe.content:qe).appendChild(Ne)}insertBefore(qe,Ne,dt){qe&&(F(qe)?qe.content:qe).insertBefore(Ne,dt)}removeChild(qe,Ne){qe&&qe.removeChild(Ne)}selectRootElement(qe,Ne){let dt="string"==typeof qe?this.doc.querySelector(qe):qe;if(!dt)throw new n.\u0275RuntimeError(-5104,!1);return Ne||(dt.textContent=""),dt}parentNode(qe){return qe.parentNode}nextSibling(qe){return qe.nextSibling}setAttribute(qe,Ne,dt,At){if(At){Ne=At+":"+Ne;const tn=M[At];tn?qe.setAttributeNS(tn,Ne,dt):qe.setAttribute(Ne,dt)}else qe.setAttribute(Ne,dt)}removeAttribute(qe,Ne,dt){if(dt){const At=M[dt];At?qe.removeAttributeNS(At,Ne):qe.removeAttribute(`${dt}:${Ne}`)}else qe.removeAttribute(Ne)}addClass(qe,Ne){qe.classList.add(Ne)}removeClass(qe,Ne){qe.classList.remove(Ne)}setStyle(qe,Ne,dt,At){At&(n.RendererStyleFlags2.DashCase|n.RendererStyleFlags2.Important)?qe.style.setProperty(Ne,dt,At&n.RendererStyleFlags2.Important?"important":""):qe.style[Ne]=dt}removeStyle(qe,Ne,dt){dt&n.RendererStyleFlags2.DashCase?qe.style.removeProperty(Ne):qe.style[Ne]=""}setProperty(qe,Ne,dt){qe[Ne]=dt}setValue(qe,Ne){qe.nodeValue=Ne}listen(qe,Ne,dt){if("string"==typeof qe&&!(qe=(0,p.\u0275getDOM)().getGlobalEventTarget(this.doc,qe)))throw new Error(`Unsupported event target ${qe} for event ${Ne}`);return this.eventManager.addEventListener(qe,Ne,this.decoratePreventDefault(dt))}decoratePreventDefault(qe){return Ne=>{if("__ngUnwrap__"===Ne)return qe;!1===(this.platformIsServer?this.ngZone.runGuarded(()=>qe(Ne)):qe(Ne))&&Ne.preventDefault()}}}function F(Ye){return"TEMPLATE"===Ye.tagName&&void 0!==Ye.content}class Y extends N{constructor(qe,Ne,dt,At,tn,wn,Tn,Sn){super(qe,tn,wn,Sn),this.sharedStylesHost=Ne,this.hostEl=dt,this.shadowRoot=dt.attachShadow({mode:"open"}),this.sharedStylesHost.addHost(this.shadowRoot);const Mn=R(At.id,At.styles);for(const Ci of Mn){const di=document.createElement("style");Tn&&di.setAttribute("nonce",Tn),di.textContent=Ci,this.shadowRoot.appendChild(di)}}nodeOrShadowRoot(qe){return qe===this.hostEl?this.shadowRoot:qe}appendChild(qe,Ne){return super.appendChild(this.nodeOrShadowRoot(qe),Ne)}insertBefore(qe,Ne,dt){return super.insertBefore(this.nodeOrShadowRoot(qe),Ne,dt)}removeChild(qe,Ne){return super.removeChild(this.nodeOrShadowRoot(qe),Ne)}parentNode(qe){return this.nodeOrShadowRoot(super.parentNode(this.nodeOrShadowRoot(qe)))}destroy(){this.sharedStylesHost.removeHost(this.shadowRoot)}}class se extends N{constructor(qe,Ne,dt,At,tn,wn,Tn,Sn){super(qe,tn,wn,Tn),this.sharedStylesHost=Ne,this.removeStylesOnCompDestroy=At,this.styles=Sn?R(Sn,dt.styles):dt.styles}applyStyles(){this.sharedStylesHost.addStyles(this.styles)}destroy(){this.removeStylesOnCompDestroy&&this.sharedStylesHost.removeStyles(this.styles)}}class ne extends se{constructor(qe,Ne,dt,At,tn,wn,Tn,Sn){const Mn=At+"-"+dt.id;super(qe,Ne,dt,tn,wn,Tn,Sn,Mn),this.contentAttr=function E(Ye){return A.replace(x,Ye)}(Mn),this.hostAttr=function D(Ye){return L.replace(x,Ye)}(Mn)}applyToHost(qe){this.applyStyles(),this.setAttribute(qe,this.hostAttr,"")}createElement(qe,Ne){const dt=super.createElement(qe,Ne);return super.setAttribute(dt,this.contentAttr,""),dt}}let me=(()=>{class Ye extends h{constructor(Ne){super(Ne)}supports(Ne){return!0}addEventListener(Ne,dt,At){return Ne.addEventListener(dt,At,!1),()=>this.removeEventListener(Ne,dt,At)}removeEventListener(Ne,dt,At){return Ne.removeEventListener(dt,At)}}return Ye.\u0275fac=function(Ne){return new(Ne||Ye)(n.\u0275\u0275inject(p.DOCUMENT))},Ye.\u0275prov=n.\u0275\u0275defineInjectable({token:Ye,factory:Ye.\u0275fac}),Ye})();const $=["alt","control","meta","shift"],q={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},Q={alt:Ye=>Ye.altKey,control:Ye=>Ye.ctrlKey,meta:Ye=>Ye.metaKey,shift:Ye=>Ye.shiftKey};let ue=(()=>{class Ye extends h{constructor(Ne){super(Ne)}supports(Ne){return null!=Ye.parseEventName(Ne)}addEventListener(Ne,dt,At){const tn=Ye.parseEventName(dt),wn=Ye.eventCallback(tn.fullKey,At,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>(0,p.\u0275getDOM)().onAndCancel(Ne,tn.domEventName,wn))}static parseEventName(Ne){const dt=Ne.toLowerCase().split("."),At=dt.shift();if(0===dt.length||"keydown"!==At&&"keyup"!==At)return null;const tn=Ye._normalizeKey(dt.pop());let wn="",Tn=dt.indexOf("code");if(Tn>-1&&(dt.splice(Tn,1),wn="code."),$.forEach(Mn=>{const Ci=dt.indexOf(Mn);Ci>-1&&(dt.splice(Ci,1),wn+=Mn+".")}),wn+=tn,0!=dt.length||0===tn.length)return null;const Sn={};return Sn.domEventName=At,Sn.fullKey=wn,Sn}static matchEventFullKeyCode(Ne,dt){let At=q[Ne.key]||Ne.key,tn="";return dt.indexOf("code.")>-1&&(At=Ne.code,tn="code."),!(null==At||!At)&&(At=At.toLowerCase()," "===At?At="space":"."===At&&(At="dot"),$.forEach(wn=>{wn!==At&&(0,Q[wn])(Ne)&&(tn+=wn+".")}),tn+=At,tn===dt)}static eventCallback(Ne,dt,At){return tn=>{Ye.matchEventFullKeyCode(tn,Ne)&&At.runGuarded(()=>dt(tn))}}static _normalizeKey(Ne){return"esc"===Ne?"escape":Ne}}return Ye.\u0275fac=function(Ne){return new(Ne||Ye)(n.\u0275\u0275inject(p.DOCUMENT))},Ye.\u0275prov=n.\u0275\u0275defineInjectable({token:Ye,factory:Ye.\u0275fac}),Ye})();function Me(Ye,qe){return(0,n.\u0275internalCreateApplication)({rootComponent:Ye,...Xe(qe)})}function Oe(Ye){return(0,n.\u0275internalCreateApplication)(Xe(Ye))}function Xe(Ye){return{appProviders:[...nt,...Ye?.providers??[]],platformProviders:tt}}function Be(){return[...xt]}function $e(){o.makeCurrent()}const tt=[{provide:n.PLATFORM_ID,useValue:p.\u0275PLATFORM_BROWSER_ID},{provide:n.PLATFORM_INITIALIZER,useValue:$e,multi:!0},{provide:p.DOCUMENT,useFactory:function Mt(){return(0,n.\u0275setDocument)(document),document},deps:[]}],St=(0,n.createPlatformFactory)(n.platformCore,"browser",tt),bt=new n.InjectionToken(""),xt=[{provide:n.\u0275TESTABILITY_GETTER,useClass:l,deps:[]},{provide:n.\u0275TESTABILITY,useClass:n.Testability,deps:[n.NgZone,n.TestabilityRegistry,n.\u0275TESTABILITY_GETTER]},{provide:n.Testability,useClass:n.Testability,deps:[n.NgZone,n.TestabilityRegistry,n.\u0275TESTABILITY_GETTER]}],nt=[{provide:n.\u0275INJECTOR_SCOPE,useValue:"root"},{provide:n.ErrorHandler,useFactory:function st(){return new n.ErrorHandler},deps:[]},{provide:r,useClass:me,multi:!0,deps:[p.DOCUMENT,n.NgZone,n.PLATFORM_ID]},{provide:r,useClass:ue,multi:!0,deps:[p.DOCUMENT]},j,_,u,{provide:n.RendererFactory2,useExisting:j},{provide:p.XhrFactory,useClass:d,deps:[]},[]];let ot=(()=>{class Ye{constructor(Ne){}static withServerTransition(Ne){return{ngModule:Ye,providers:[{provide:n.APP_ID,useValue:Ne.appId}]}}}return Ye.\u0275fac=function(Ne){return new(Ne||Ye)(n.\u0275\u0275inject(bt,12))},Ye.\u0275mod=n.\u0275\u0275defineNgModule({type:Ye}),Ye.\u0275inj=n.\u0275\u0275defineInjector({providers:[...nt,...xt],imports:[p.CommonModule,n.ApplicationModule]}),Ye})(),rt=(()=>{class Ye{constructor(Ne){this._doc=Ne,this._dom=(0,p.\u0275getDOM)()}addTag(Ne,dt=!1){return Ne?this._getOrCreateElement(Ne,dt):null}addTags(Ne,dt=!1){return Ne?Ne.reduce((At,tn)=>(tn&&At.push(this._getOrCreateElement(tn,dt)),At),[]):[]}getTag(Ne){return Ne&&this._doc.querySelector(`meta[${Ne}]`)||null}getTags(Ne){if(!Ne)return[];const dt=this._doc.querySelectorAll(`meta[${Ne}]`);return dt?[].slice.call(dt):[]}updateTag(Ne,dt){if(!Ne)return null;dt=dt||this._parseSelector(Ne);const At=this.getTag(dt);return At?this._setMetaElementAttributes(Ne,At):this._getOrCreateElement(Ne,!0)}removeTag(Ne){this.removeTagElement(this.getTag(Ne))}removeTagElement(Ne){Ne&&this._dom.remove(Ne)}_getOrCreateElement(Ne,dt=!1){if(!dt){const wn=this._parseSelector(Ne),Tn=this.getTags(wn).filter(Sn=>this._containsAttributes(Ne,Sn))[0];if(void 0!==Tn)return Tn}const At=this._dom.createElement("meta");return this._setMetaElementAttributes(Ne,At),this._doc.getElementsByTagName("head")[0].appendChild(At),At}_setMetaElementAttributes(Ne,dt){return Object.keys(Ne).forEach(At=>dt.setAttribute(this._getMetaKeyMap(At),Ne[At])),dt}_parseSelector(Ne){const dt=Ne.name?"name":"property";return`${dt}="${Ne[dt]}"`}_containsAttributes(Ne,dt){return Object.keys(Ne).every(At=>dt.getAttribute(this._getMetaKeyMap(At))===Ne[At])}_getMetaKeyMap(Ne){return J[Ne]||Ne}}return Ye.\u0275fac=function(Ne){return new(Ne||Ye)(n.\u0275\u0275inject(p.DOCUMENT))},Ye.\u0275prov=n.\u0275\u0275defineInjectable({token:Ye,factory:function(Ne){let dt=null;return dt=Ne?new Ne:function vt(){return new rt((0,n.\u0275\u0275inject)(p.DOCUMENT))}(),dt},providedIn:"root"}),Ye})();const J={httpEquiv:"http-equiv"};let ee=(()=>{class Ye{constructor(Ne){this._doc=Ne}getTitle(){return this._doc.title}setTitle(Ne){this._doc.title=Ne||""}}return Ye.\u0275fac=function(Ne){return new(Ne||Ye)(n.\u0275\u0275inject(p.DOCUMENT))},Ye.\u0275prov=n.\u0275\u0275defineInjectable({token:Ye,factory:function(Ne){let dt=null;return dt=Ne?new Ne:function Ce(){return new ee((0,n.\u0275\u0275inject)(p.DOCUMENT))}(),dt},providedIn:"root"}),Ye})();function ae(Ye,qe){(typeof COMPILED>"u"||!COMPILED)&&((n.\u0275global.ng=n.\u0275global.ng||{})[Ye]=qe)}const ie=typeof window<"u"&&window||{};class pe{constructor(qe,Ne){this.msPerTick=qe,this.numTicks=Ne}}class Te{constructor(qe){this.appRef=qe.injector.get(n.ApplicationRef)}timeChangeDetection(qe){const Ne=qe&&qe.record,dt="Change Detection",At=null!=ie.console.profile;Ne&&At&&ie.console.profile(dt);const tn=ct();let wn=0;for(;wn<5||ct()-tn<500;)this.appRef.tick(),wn++;const Tn=ct();Ne&&At&&ie.console.profileEnd(dt);const Sn=(Tn-tn)/wn;return ie.console.log(`ran ${wn} change detection cycles`),ie.console.log(`${Sn.toFixed(2)} ms per check`),new pe(Sn,wn)}}function ct(){return ie.performance&&ie.performance.now?ie.performance.now():(new Date).getTime()}const Lt="profiler";function Dt(Ye){return ae(Lt,new Te(Ye)),Ye}function Kt(){ae(Lt,null)}class ze{static all(){return()=>!0}static css(qe){return Ne=>null!=Ne.nativeElement&&function yt(Ye,qe){return!!(0,p.\u0275getDOM)().isElementNode(Ye)&&(Ye.matches&&Ye.matches(qe)||Ye.msMatchesSelector&&Ye.msMatchesSelector(qe)||Ye.webkitMatchesSelector&&Ye.webkitMatchesSelector(qe))}(Ne.nativeElement,qe)}static directive(qe){return Ne=>-1!==Ne.providerTokens.indexOf(qe)}}const Bt={pan:!0,panstart:!0,panmove:!0,panend:!0,pancancel:!0,panleft:!0,panright:!0,panup:!0,pandown:!0,pinch:!0,pinchstart:!0,pinchmove:!0,pinchend:!0,pinchcancel:!0,pinchin:!0,pinchout:!0,press:!0,pressup:!0,rotate:!0,rotatestart:!0,rotatemove:!0,rotateend:!0,rotatecancel:!0,swipe:!0,swipeleft:!0,swiperight:!0,swipeup:!0,swipedown:!0,tap:!0,doubletap:!0},$t=new n.InjectionToken("HammerGestureConfig"),Yt=new n.InjectionToken("HammerLoader");let Ue=(()=>{class Ye{constructor(){this.events=[],this.overrides={}}buildHammer(Ne){const dt=new Hammer(Ne,this.options);dt.get("pinch").set({enable:!0}),dt.get("rotate").set({enable:!0});for(const At in this.overrides)dt.get(At).set(this.overrides[At]);return dt}}return Ye.\u0275fac=function(Ne){return new(Ne||Ye)},Ye.\u0275prov=n.\u0275\u0275defineInjectable({token:Ye,factory:Ye.\u0275fac}),Ye})(),We=(()=>{class Ye extends h{constructor(Ne,dt,At,tn){super(Ne),this._config=dt,this.console=At,this.loader=tn,this._loaderPromise=null}supports(Ne){return!(!Bt.hasOwnProperty(Ne.toLowerCase())&&!this.isCustomEvent(Ne)||!window.Hammer&&!this.loader)}addEventListener(Ne,dt,At){const tn=this.manager.getZone();if(dt=dt.toLowerCase(),!window.Hammer&&this.loader){this._loaderPromise=this._loaderPromise||tn.runOutsideAngular(()=>this.loader());let wn=!1,Tn=()=>{wn=!0};return tn.runOutsideAngular(()=>this._loaderPromise.then(()=>{window.Hammer?wn||(Tn=this.addEventListener(Ne,dt,At)):Tn=()=>{}}).catch(()=>{Tn=()=>{}})),()=>{Tn()}}return tn.runOutsideAngular(()=>{const wn=this._config.buildHammer(Ne),Tn=function(Sn){tn.runGuarded(function(){At(Sn)})};return wn.on(dt,Tn),()=>{wn.off(dt,Tn),"function"==typeof wn.destroy&&wn.destroy()}})}isCustomEvent(Ne){return this._config.events.indexOf(Ne)>-1}}return Ye.\u0275fac=function(Ne){return new(Ne||Ye)(n.\u0275\u0275inject(p.DOCUMENT),n.\u0275\u0275inject($t),n.\u0275\u0275inject(n.\u0275Console),n.\u0275\u0275inject(Yt,8))},Ye.\u0275prov=n.\u0275\u0275defineInjectable({token:Ye,factory:Ye.\u0275fac}),Ye})(),ve=(()=>{class Ye{}return Ye.\u0275fac=function(Ne){return new(Ne||Ye)},Ye.\u0275mod=n.\u0275\u0275defineNgModule({type:Ye}),Ye.\u0275inj=n.\u0275\u0275defineInjector({providers:[{provide:r,useClass:We,multi:!0,deps:[p.DOCUMENT,$t,n.\u0275Console,[new n.Optional,Yt]]},{provide:$t,useClass:Ue,deps:[]}]}),Ye})(),we=(()=>{class Ye{}return Ye.\u0275fac=function(Ne){return new(Ne||Ye)},Ye.\u0275prov=n.\u0275\u0275defineInjectable({token:Ye,factory:function(Ne){let dt=null;return dt=Ne?new(Ne||Ye):n.\u0275\u0275inject(De),dt},providedIn:"root"}),Ye})(),De=(()=>{class Ye extends we{constructor(Ne){super(),this._doc=Ne}sanitize(Ne,dt){if(null==dt)return null;switch(Ne){case n.SecurityContext.NONE:return dt;case n.SecurityContext.HTML:return(0,n.\u0275allowSanitizationBypassAndThrow)(dt,"HTML")?(0,n.\u0275unwrapSafeValue)(dt):(0,n.\u0275_sanitizeHtml)(this._doc,String(dt)).toString();case n.SecurityContext.STYLE:return(0,n.\u0275allowSanitizationBypassAndThrow)(dt,"Style")?(0,n.\u0275unwrapSafeValue)(dt):dt;case n.SecurityContext.SCRIPT:if((0,n.\u0275allowSanitizationBypassAndThrow)(dt,"Script"))return(0,n.\u0275unwrapSafeValue)(dt);throw new n.\u0275RuntimeError(5200,!1);case n.SecurityContext.URL:return(0,n.\u0275allowSanitizationBypassAndThrow)(dt,"URL")?(0,n.\u0275unwrapSafeValue)(dt):(0,n.\u0275_sanitizeUrl)(String(dt));case n.SecurityContext.RESOURCE_URL:if((0,n.\u0275allowSanitizationBypassAndThrow)(dt,"ResourceURL"))return(0,n.\u0275unwrapSafeValue)(dt);throw new n.\u0275RuntimeError(5201,!1);default:throw new n.\u0275RuntimeError(5202,!1)}}bypassSecurityTrustHtml(Ne){return(0,n.\u0275bypassSanitizationTrustHtml)(Ne)}bypassSecurityTrustStyle(Ne){return(0,n.\u0275bypassSanitizationTrustStyle)(Ne)}bypassSecurityTrustScript(Ne){return(0,n.\u0275bypassSanitizationTrustScript)(Ne)}bypassSecurityTrustUrl(Ne){return(0,n.\u0275bypassSanitizationTrustUrl)(Ne)}bypassSecurityTrustResourceUrl(Ne){return(0,n.\u0275bypassSanitizationTrustResourceUrl)(Ne)}}return Ye.\u0275fac=function(Ne){return new(Ne||Ye)(n.\u0275\u0275inject(p.DOCUMENT))},Ye.\u0275prov=n.\u0275\u0275defineInjectable({token:Ye,factory:function(Ne){let dt=null;return dt=Ne?new Ne:function at(Ye){return new De(Ye.get(p.DOCUMENT))}(n.\u0275\u0275inject(n.Injector)),dt},providedIn:"root"}),Ye})();function je(Ye,qe=[]){return{\u0275kind:Ye,\u0275providers:qe}}function ke(){return je(0)}function Z(){return je(1)}function ce(...Ye){const qe=[],Ne=new Set;for(const{\u0275providers:dt,\u0275kind:At}of Ye)Ne.add(At),dt.length&&qe.push(dt);return(0,n.makeEnvironmentProviders)([[],Ne.has(0)?[]:(0,n.\u0275withDomHydration)(),Ne.has(1)?[]:(0,C.\u0275withHttpTransferCache)(),qe])}const Ee=new n.Version("16.1.7"),it=n.makeStateKey,Rt=n.TransferState},5187:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{ActivatedRoute:()=>kn,ActivatedRouteSnapshot:()=>$i,ActivationEnd:()=>Ft,ActivationStart:()=>Ct,BaseRouteReuseStrategy:()=>z,ChildActivationEnd:()=>Pi,ChildActivationStart:()=>li,ChildrenOutletContexts:()=>ge,DefaultTitleStrategy:()=>Oo,DefaultUrlSerializer:()=>Te,GuardsCheckEnd:()=>Yn,GuardsCheckStart:()=>An,NavigationCancel:()=>ri,NavigationEnd:()=>Qn,NavigationError:()=>en,NavigationSkipped:()=>ln,NavigationStart:()=>mi,NoPreloading:()=>fr,OutletContext:()=>be,PRIMARY_OUTLET:()=>me,PreloadAllModules:()=>Kn,PreloadingStrategy:()=>wr,ROUTER_CONFIGURATION:()=>le,ROUTER_INITIALIZER:()=>co,ROUTES:()=>Pr,ResolveEnd:()=>ii,ResolveStart:()=>si,RouteConfigLoadEnd:()=>oi,RouteConfigLoadStart:()=>Ii,RouteReuseStrategy:()=>Oi,Router:()=>Rn,RouterEvent:()=>Zn,RouterLink:()=>Si,RouterLinkActive:()=>ir,RouterLinkWithHref:()=>Si,RouterModule:()=>Br,RouterOutlet:()=>ti,RouterPreloader:()=>Kr,RouterState:()=>pn,RouterStateSnapshot:()=>er,RoutesRecognized:()=>Dn,Scroll:()=>Ae,TitleStrategy:()=>Co,UrlHandlingStrategy:()=>Fe,UrlSegment:()=>Ce,UrlSegmentGroup:()=>J,UrlSerializer:()=>pe,UrlTree:()=>rt,VERSION:()=>No,convertToParamMap:()=>Q,createUrlTreeFromSnapshot:()=>Ne,defaultUrlMatcher:()=>ue,mapToCanActivate:()=>Ys,mapToCanActivateChild:()=>os,mapToCanDeactivate:()=>Pa,mapToCanMatch:()=>Fo,mapToResolve:()=>wo,provideRouter:()=>js,provideRoutes:()=>gs,withComponentInputBinding:()=>Ws,withDebugTracing:()=>cr,withDisabledInitialNavigation:()=>vs,withEnabledBlockingInitialNavigation:()=>_s,withHashLocation:()=>ys,withInMemoryScrolling:()=>rs,withNavigationErrorHandler:()=>Cs,withPreloading:()=>xo,withRouterConfig:()=>Ur,\u0275EmptyOutletComponent:()=>Pn,\u0275ROUTER_PROVIDERS:()=>dr,\u0275afterNextNavigation:()=>Zt});var n=g(5879),p=g(2664),C=g(2459),b=g(2096),o=g(5619),v=g(2572),a=g(6973),c=g(34),s=g(4911),l=g(8407),d=g(8504),r=g(6232),u=g(3168),h=g(8645),m=g(6814),_=g(7398),M=g(4664),x=g(8180),w=g(7921),L=g(2181),A=g(9769),T=g(1374),O=g(6328),E=g(9397),D=g(6306),R=g(6424),j=g(3572),N=g(2032),S=g(4418),k=g(975),F=g(4716),Y=g(6196),se=g(7537),ne=g(6593);const me="primary",$=Symbol("RouteTitle");class q{constructor(te){this.params=te||{}}has(te){return Object.prototype.hasOwnProperty.call(this.params,te)}get(te){if(this.has(te)){const V=this.params[te];return Array.isArray(V)?V[0]:V}return null}getAll(te){if(this.has(te)){const V=this.params[te];return Array.isArray(V)?V:[V]}return[]}get keys(){return Object.keys(this.params)}}function Q(G){return new q(G)}function ue(G,te,V){const de=V.path.split("/");if(de.length>G.length||"full"===V.pathMatch&&(te.hasChildren()||de.lengthde[Qe]===Le)}return G===te}function Be(G){return G.length>0?G[G.length-1]:null}function $e(G){return(0,p.b)(G)?G:(0,n.\u0275isPromise)(G)?(0,C.D)(Promise.resolve(G)):(0,b.of)(G)}const st={exact:function bt(G,te,V){if(!ae(G.segments,te.segments)||!vt(G.segments,te.segments,V)||G.numberOfChildren!==te.numberOfChildren)return!1;for(const de in te.children)if(!G.children[de]||!bt(G.children[de],te.children[de],V))return!1;return!0},subset:nt},Mt={exact:function St(G,te){return Oe(G,te)},subset:function xt(G,te){return Object.keys(te).length<=Object.keys(G).length&&Object.keys(te).every(V=>Xe(G[V],te[V]))},ignored:()=>!0};function tt(G,te,V){return st[V.paths](G.root,te.root,V.matrixParams)&&Mt[V.queryParams](G.queryParams,te.queryParams)&&!("exact"===V.fragment&&G.fragment!==te.fragment)}function nt(G,te,V){return ot(G,te,te.segments,V)}function ot(G,te,V,de){if(G.segments.length>V.length){const Le=G.segments.slice(0,V.length);return!(!ae(Le,V)||te.hasChildren()||!vt(Le,V,de))}if(G.segments.length===V.length){if(!ae(G.segments,V)||!vt(G.segments,V,de))return!1;for(const Le in te.children)if(!G.children[Le]||!nt(G.children[Le],te.children[Le],de))return!1;return!0}{const Le=V.slice(0,G.segments.length),Qe=V.slice(G.segments.length);return!!(ae(G.segments,Le)&&vt(G.segments,Le,de)&&G.children[me])&&ot(G.children[me],te,Qe,de)}}function vt(G,te,V){return te.every((de,Le)=>Mt[V](G[Le].parameters,de.parameters))}class rt{constructor(te=new J([],{}),V={},de=null){this.root=te,this.queryParams=V,this.fragment=de}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=Q(this.queryParams)),this._queryParamMap}toString(){return ct.serialize(this)}}class J{constructor(te,V){this.segments=te,this.children=V,this.parent=null,Object.values(V).forEach(de=>de.parent=this)}hasChildren(){return this.numberOfChildren>0}get numberOfChildren(){return Object.keys(this.children).length}toString(){return Lt(this)}}class Ce{constructor(te,V){this.path=te,this.parameters=V}get parameterMap(){return this._parameterMap||(this._parameterMap=Q(this.parameters)),this._parameterMap}toString(){return Ue(this)}}function ae(G,te){return G.length===te.length&&G.every((V,de)=>V.path===te[de].path)}let pe=(()=>{class G{}return G.\u0275fac=function(V){return new(V||G)},G.\u0275prov=n.\u0275\u0275defineInjectable({token:G,factory:function(){return new Te},providedIn:"root"}),G})();class Te{parse(te){const V=new Ee(te);return new rt(V.parseRootSegment(),V.parseQueryParams(),V.parseFragment())}serialize(te){const V=`/${Dt(te.root,!0)}`,de=function ve(G){const te=Object.keys(G).map(V=>{const de=G[V];return Array.isArray(de)?de.map(Le=>`${ze(V)}=${ze(Le)}`).join("&"):`${ze(V)}=${ze(de)}`}).filter(V=>!!V);return te.length?`?${te.join("&")}`:""}(te.queryParams);return`${V}${de}${"string"==typeof te.fragment?`#${function yt(G){return encodeURI(G)}(te.fragment)}`:""}`}}const ct=new Te;function Lt(G){return G.segments.map(te=>Ue(te)).join("/")}function Dt(G,te){if(!G.hasChildren())return Lt(G);if(te){const V=G.children[me]?Dt(G.children[me],!1):"",de=[];return Object.entries(G.children).forEach(([Le,Qe])=>{Le!==me&&de.push(`${Le}:${Dt(Qe,!1)}`)}),de.length>0?`${V}(${de.join("//")})`:V}{const V=function ie(G,te){let V=[];return Object.entries(G.children).forEach(([de,Le])=>{de===me&&(V=V.concat(te(Le,de)))}),Object.entries(G.children).forEach(([de,Le])=>{de!==me&&(V=V.concat(te(Le,de)))}),V}(G,(de,Le)=>Le===me?[Dt(G.children[me],!1)]:[`${Le}:${Dt(de,!1)}`]);return 1===Object.keys(G.children).length&&null!=G.children[me]?`${Lt(G)}/${V[0]}`:`${Lt(G)}/(${V.join("//")})`}}function Kt(G){return encodeURIComponent(G).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function ze(G){return Kt(G).replace(/%3B/gi,";")}function Bt(G){return Kt(G).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function $t(G){return decodeURIComponent(G)}function Yt(G){return $t(G.replace(/\+/g,"%20"))}function Ue(G){return`${Bt(G.path)}${function We(G){return Object.keys(G).map(te=>`;${Bt(te)}=${Bt(G[te])}`).join("")}(G.parameters)}`}const we=/^[^\/()?;#]+/;function at(G){const te=G.match(we);return te?te[0]:""}const De=/^[^\/()?;=#]+/,ke=/^[^=?&#]+/,re=/^[^&#]+/;class Ee{constructor(te){this.url=te,this.remaining=te}parseRootSegment(){return this.consumeOptional("/"),""===this.remaining||this.peekStartsWith("?")||this.peekStartsWith("#")?new J([],{}):new J([],this.parseChildren())}parseQueryParams(){const te={};if(this.consumeOptional("?"))do{this.parseQueryParam(te)}while(this.consumeOptional("&"));return te}parseFragment(){return this.consumeOptional("#")?decodeURIComponent(this.remaining):null}parseChildren(){if(""===this.remaining)return{};this.consumeOptional("/");const te=[];for(this.peekStartsWith("(")||te.push(this.parseSegment());this.peekStartsWith("/")&&!this.peekStartsWith("//")&&!this.peekStartsWith("/(");)this.capture("/"),te.push(this.parseSegment());let V={};this.peekStartsWith("/(")&&(this.capture("/"),V=this.parseParens(!0));let de={};return this.peekStartsWith("(")&&(de=this.parseParens(!1)),(te.length>0||Object.keys(V).length>0)&&(de[me]=new J(te,V)),de}parseSegment(){const te=at(this.remaining);if(""===te&&this.peekStartsWith(";"))throw new n.\u0275RuntimeError(4009,!1);return this.capture(te),new Ce($t(te),this.parseMatrixParams())}parseMatrixParams(){const te={};for(;this.consumeOptional(";");)this.parseParam(te);return te}parseParam(te){const V=function je(G){const te=G.match(De);return te?te[0]:""}(this.remaining);if(!V)return;this.capture(V);let de="";if(this.consumeOptional("=")){const Le=at(this.remaining);Le&&(de=Le,this.capture(de))}te[$t(V)]=$t(de)}parseQueryParam(te){const V=function Z(G){const te=G.match(ke);return te?te[0]:""}(this.remaining);if(!V)return;this.capture(V);let de="";if(this.consumeOptional("=")){const et=function ce(G){const te=G.match(re);return te?te[0]:""}(this.remaining);et&&(de=et,this.capture(de))}const Le=Yt(V),Qe=Yt(de);if(te.hasOwnProperty(Le)){let et=te[Le];Array.isArray(et)||(et=[et],te[Le]=et),et.push(Qe)}else te[Le]=Qe}parseParens(te){const V={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){const de=at(this.remaining),Le=this.remaining[de.length];if("/"!==Le&&")"!==Le&&";"!==Le)throw new n.\u0275RuntimeError(4010,!1);let Qe;de.indexOf(":")>-1?(Qe=de.slice(0,de.indexOf(":")),this.capture(Qe),this.capture(":")):te&&(Qe=me);const et=this.parseChildren();V[Qe]=1===Object.keys(et).length?et[me]:new J([],et),this.consumeOptional("//")}return V}peekStartsWith(te){return this.remaining.startsWith(te)}consumeOptional(te){return!!this.peekStartsWith(te)&&(this.remaining=this.remaining.substring(te.length),!0)}capture(te){if(!this.consumeOptional(te))throw new n.\u0275RuntimeError(4011,!1)}}function it(G){return G.segments.length>0?new J([],{[me]:G}):G}function Rt(G){const te={};for(const de of Object.keys(G.children)){const Qe=Rt(G.children[de]);if(de===me&&0===Qe.segments.length&&Qe.hasChildren())for(const[et,Nt]of Object.entries(Qe.children))te[et]=Nt;else(Qe.segments.length>0||Qe.hasChildren())&&(te[de]=Qe)}return function Ye(G){if(1===G.numberOfChildren&&G.children[me]){const te=G.children[me];return new J(G.segments.concat(te.segments),te.children)}return G}(new J(G.segments,te))}function qe(G){return G instanceof rt}function Ne(G,te,V=null,de=null){return At(dt(G),te,V,de)}function dt(G){let te;const Le=it(function V(Qe){const et={};for(const mn of Qe.children){const Ln=V(mn);et[mn.outlet]=Ln}const Nt=new J(Qe.url,et);return Qe===G&&(te=Nt),Nt}(G.root));return te??Le}function At(G,te,V,de){let Le=G;for(;Le.parent;)Le=Le.parent;if(0===te.length)return Tn(Le,Le,Le,V,de);const Qe=function Ci(G){if("string"==typeof G[0]&&1===G.length&&"/"===G[0])return new Mn(!0,0,G);let te=0,V=!1;const de=G.reduce((Le,Qe,et)=>{if("object"==typeof Qe&&null!=Qe){if(Qe.outlets){const Nt={};return Object.entries(Qe.outlets).forEach(([mn,Ln])=>{Nt[mn]="string"==typeof Ln?Ln.split("/"):Ln}),[...Le,{outlets:Nt}]}if(Qe.segmentPath)return[...Le,Qe.segmentPath]}return"string"!=typeof Qe?[...Le,Qe]:0===et?(Qe.split("/").forEach((Nt,mn)=>{0==mn&&"."===Nt||(0==mn&&""===Nt?V=!0:".."===Nt?te++:""!=Nt&&Le.push(Nt))}),Le):[...Le,Qe]},[]);return new Mn(V,te,de)}(te);if(Qe.toRoot())return Tn(Le,Le,new J([],{}),V,de);const et=function Li(G,te,V){if(G.isAbsolute)return new di(te,!0,0);if(!V)return new di(te,!1,NaN);if(null===V.parent)return new di(V,!0,0);const de=tn(G.commands[0])?0:1;return function Qi(G,te,V){let de=G,Le=te,Qe=V;for(;Qe>Le;){if(Qe-=Le,de=de.parent,!de)throw new n.\u0275RuntimeError(4005,!1);Le=de.segments.length}return new di(de,!1,Le-Qe)}(V,V.segments.length-1+de,G.numberOfDoubleDots)}(Qe,Le,G),Nt=et.processChildren?pt(et.segmentGroup,et.index,Qe.commands):mt(et.segmentGroup,et.index,Qe.commands);return Tn(Le,et.segmentGroup,Nt,V,de)}function tn(G){return"object"==typeof G&&null!=G&&!G.outlets&&!G.segmentPath}function wn(G){return"object"==typeof G&&null!=G&&G.outlets}function Tn(G,te,V,de,Le){let et,Qe={};de&&Object.entries(de).forEach(([mn,Ln])=>{Qe[mn]=Array.isArray(Ln)?Ln.map(Gn=>`${Gn}`):`${Ln}`}),et=G===te?V:Sn(G,te,V);const Nt=it(Rt(et));return new rt(Nt,Qe,Le)}function Sn(G,te,V){const de={};return Object.entries(G.children).forEach(([Le,Qe])=>{de[Le]=Qe===te?V:Sn(Qe,te,V)}),new J(G.segments,de)}class Mn{constructor(te,V,de){if(this.isAbsolute=te,this.numberOfDoubleDots=V,this.commands=de,te&&de.length>0&&tn(de[0]))throw new n.\u0275RuntimeError(4003,!1);const Le=de.find(wn);if(Le&&Le!==Be(de))throw new n.\u0275RuntimeError(4004,!1)}toRoot(){return this.isAbsolute&&1===this.commands.length&&"/"==this.commands[0]}}class di{constructor(te,V,de){this.segmentGroup=te,this.processChildren=V,this.index=de}}function mt(G,te,V){if(G||(G=new J([],{})),0===G.segments.length&&G.hasChildren())return pt(G,te,V);const de=function qt(G,te,V){let de=0,Le=te;const Qe={match:!1,pathIndex:0,commandIndex:0};for(;Le=V.length)return Qe;const et=G.segments[Le],Nt=V[de];if(wn(Nt))break;const mn=`${Nt}`,Ln=de0&&void 0===mn)break;if(mn&&Ln&&"object"==typeof Ln&&void 0===Ln.outlets){if(!$n(mn,Ln,et))return Qe;de+=2}else{if(!$n(mn,{},et))return Qe;de++}Le++}return{match:!0,pathIndex:Le,commandIndex:de}}(G,te,V),Le=V.slice(de.commandIndex);if(de.match&&de.pathIndex{"string"==typeof et&&(et=[et]),null!==et&&(Le[Qe]=mt(G.children[Qe],te,et))}),Object.entries(G.children).forEach(([Qe,et])=>{void 0===de[Qe]&&(Le[Qe]=et)}),new J(G.segments,Le)}}function on(G,te,V){const de=G.segments.slice(0,te);let Le=0;for(;Le{"string"==typeof de&&(de=[de]),null!==de&&(te[V]=on(new J([],{}),0,de))}),te}function un(G){const te={};return Object.entries(G).forEach(([V,de])=>te[V]=`${de}`),te}function $n(G,te,V){return G==V.path&&Oe(te,V.parameters)}const In="imperative";class Zn{constructor(te,V){this.id=te,this.url=V}}class mi extends Zn{constructor(te,V,de="imperative",Le=null){super(te,V),this.type=0,this.navigationTrigger=de,this.restoredState=Le}toString(){return`NavigationStart(id: ${this.id}, url: '${this.url}')`}}class Qn extends Zn{constructor(te,V,de){super(te,V),this.urlAfterRedirects=de,this.type=1}toString(){return`NavigationEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}')`}}class ri extends Zn{constructor(te,V,de,Le){super(te,V),this.reason=de,this.code=Le,this.type=2}toString(){return`NavigationCancel(id: ${this.id}, url: '${this.url}')`}}class ln extends Zn{constructor(te,V,de,Le){super(te,V),this.reason=de,this.code=Le,this.type=16}}class en extends Zn{constructor(te,V,de,Le){super(te,V),this.error=de,this.target=Le,this.type=3}toString(){return`NavigationError(id: ${this.id}, url: '${this.url}', error: ${this.error})`}}class Dn extends Zn{constructor(te,V,de,Le){super(te,V),this.urlAfterRedirects=de,this.state=Le,this.type=4}toString(){return`RoutesRecognized(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class An extends Zn{constructor(te,V,de,Le){super(te,V),this.urlAfterRedirects=de,this.state=Le,this.type=7}toString(){return`GuardsCheckStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class Yn extends Zn{constructor(te,V,de,Le,Qe){super(te,V),this.urlAfterRedirects=de,this.state=Le,this.shouldActivate=Qe,this.type=8}toString(){return`GuardsCheckEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state}, shouldActivate: ${this.shouldActivate})`}}class si extends Zn{constructor(te,V,de,Le){super(te,V),this.urlAfterRedirects=de,this.state=Le,this.type=5}toString(){return`ResolveStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class ii extends Zn{constructor(te,V,de,Le){super(te,V),this.urlAfterRedirects=de,this.state=Le,this.type=6}toString(){return`ResolveEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class Ii{constructor(te){this.route=te,this.type=9}toString(){return`RouteConfigLoadStart(path: ${this.route.path})`}}class oi{constructor(te){this.route=te,this.type=10}toString(){return`RouteConfigLoadEnd(path: ${this.route.path})`}}class li{constructor(te){this.snapshot=te,this.type=11}toString(){return`ChildActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class Pi{constructor(te){this.snapshot=te,this.type=12}toString(){return`ChildActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class Ct{constructor(te){this.snapshot=te,this.type=13}toString(){return`ActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class Ft{constructor(te){this.snapshot=te,this.type=14}toString(){return`ActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class Ae{constructor(te,V,de){this.routerEvent=te,this.position=V,this.anchor=de,this.type=15}toString(){return`Scroll(anchor: '${this.anchor}', position: '${this.position?`${this.position[0]}, ${this.position[1]}`:null}')`}}class be{constructor(){this.outlet=null,this.route=null,this.injector=null,this.children=new ge,this.attachRef=null}}let ge=(()=>{class G{constructor(){this.contexts=new Map}onChildOutletCreated(V,de){const Le=this.getOrCreateContext(V);Le.outlet=de,this.contexts.set(V,Le)}onChildOutletDestroyed(V){const de=this.getContext(V);de&&(de.outlet=null,de.attachRef=null)}onOutletDeactivated(){const V=this.contexts;return this.contexts=new Map,V}onOutletReAttached(V){this.contexts=V}getOrCreateContext(V){let de=this.getContext(V);return de||(de=new be,this.contexts.set(V,de)),de}getContext(V){return this.contexts.get(V)||null}}return G.\u0275fac=function(V){return new(V||G)},G.\u0275prov=n.\u0275\u0275defineInjectable({token:G,factory:G.\u0275fac,providedIn:"root"}),G})();class Ge{constructor(te){this._root=te}get root(){return this._root.value}parent(te){const V=this.pathFromRoot(te);return V.length>1?V[V.length-2]:null}children(te){const V=It(te,this._root);return V?V.children.map(de=>de.value):[]}firstChild(te){const V=It(te,this._root);return V&&V.children.length>0?V.children[0].value:null}siblings(te){const V=zt(te,this._root);return V.length<2?[]:V[V.length-2].children.map(Le=>Le.value).filter(Le=>Le!==te)}pathFromRoot(te){return zt(te,this._root).map(V=>V.value)}}function It(G,te){if(G===te.value)return te;for(const V of te.children){const de=It(G,V);if(de)return de}return null}function zt(G,te){if(G===te.value)return[te];for(const V of te.children){const de=zt(G,V);if(de.length)return de.unshift(te),de}return[]}class an{constructor(te,V){this.value=te,this.children=V}toString(){return`TreeNode(${this.value})`}}function gn(G){const te={};return G&&G.children.forEach(V=>te[V.value.outlet]=V),te}class pn extends Ge{constructor(te,V){super(te),this.snapshot=V,fn(this,te)}toString(){return this.snapshot.toString()}}function Jn(G,te){const V=function Nn(G,te){const et=new $i([],{},{},"",{},me,te,null,{});return new er("",new an(et,[]))}(0,te),de=new o.X([new Ce("",{})]),Le=new o.X({}),Qe=new o.X({}),et=new o.X({}),Nt=new o.X(""),mn=new kn(de,Le,et,Nt,Qe,me,te,V.root);return mn.snapshot=V.root,new pn(new an(mn,[]),V)}class kn{constructor(te,V,de,Le,Qe,et,Nt,mn){this.urlSubject=te,this.paramsSubject=V,this.queryParamsSubject=de,this.fragmentSubject=Le,this.dataSubject=Qe,this.outlet=et,this.component=Nt,this._futureSnapshot=mn,this.title=this.dataSubject?.pipe((0,_.U)(Ln=>Ln[$]))??(0,b.of)(void 0),this.url=te,this.params=V,this.queryParams=de,this.fragment=Le,this.data=Qe}get routeConfig(){return this._futureSnapshot.routeConfig}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap||(this._paramMap=this.params.pipe((0,_.U)(te=>Q(te)))),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=this.queryParams.pipe((0,_.U)(te=>Q(te)))),this._queryParamMap}toString(){return this.snapshot?this.snapshot.toString():`Future(${this._futureSnapshot})`}}function Un(G,te="emptyOnly"){const V=G.pathFromRoot;let de=0;if("always"!==te)for(de=V.length-1;de>=1;){const Le=V[de],Qe=V[de-1];if(Le.routeConfig&&""===Le.routeConfig.path)de--;else{if(Qe.component)break;de--}}return function vi(G){return G.reduce((te,V)=>({params:{...te.params,...V.params},data:{...te.data,...V.data},resolve:{...V.data,...te.resolve,...V.routeConfig?.data,...V._resolvedData}}),{params:{},data:{},resolve:{}})}(V.slice(de))}class $i{get title(){return this.data?.[$]}constructor(te,V,de,Le,Qe,et,Nt,mn,Ln){this.url=te,this.params=V,this.queryParams=de,this.fragment=Le,this.data=Qe,this.outlet=et,this.component=Nt,this.routeConfig=mn,this._resolve=Ln}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap||(this._paramMap=Q(this.params)),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=Q(this.queryParams)),this._queryParamMap}toString(){return`Route(url:'${this.url.map(de=>de.toString()).join("/")}', path:'${this.routeConfig?this.routeConfig.path:""}')`}}class er extends Ge{constructor(te,V){super(V),this.url=te,fn(this,V)}toString(){return yn(this._root)}}function fn(G,te){te.value._routerState=G,te.children.forEach(V=>fn(G,V))}function yn(G){const te=G.children.length>0?` { ${G.children.map(yn).join(", ")} } `:"";return`${G.value}${te}`}function rn(G){if(G.snapshot){const te=G.snapshot,V=G._futureSnapshot;G.snapshot=V,Oe(te.queryParams,V.queryParams)||G.queryParamsSubject.next(V.queryParams),te.fragment!==V.fragment&&G.fragmentSubject.next(V.fragment),Oe(te.params,V.params)||G.paramsSubject.next(V.params),function Me(G,te){if(G.length!==te.length)return!1;for(let V=0;VOe(V.parameters,te[de].parameters))}(G.url,te.url);return V&&!(!G.parent!=!te.parent)&&(!G.parent||xn(G.parent,te.parent))}let ti=(()=>{class G{constructor(){this.activated=null,this._activatedRoute=null,this.name=me,this.activateEvents=new n.EventEmitter,this.deactivateEvents=new n.EventEmitter,this.attachEvents=new n.EventEmitter,this.detachEvents=new n.EventEmitter,this.parentContexts=(0,n.inject)(ge),this.location=(0,n.inject)(n.ViewContainerRef),this.changeDetector=(0,n.inject)(n.ChangeDetectorRef),this.environmentInjector=(0,n.inject)(n.EnvironmentInjector),this.inputBinder=(0,n.inject)(zi,{optional:!0}),this.supportsBindingToComponentInputs=!0}get activatedComponentRef(){return this.activated}ngOnChanges(V){if(V.name){const{firstChange:de,previousValue:Le}=V.name;if(de)return;this.isTrackedInParentContexts(Le)&&(this.deactivate(),this.parentContexts.onChildOutletDestroyed(Le)),this.initializeOutletWithName()}}ngOnDestroy(){this.isTrackedInParentContexts(this.name)&&this.parentContexts.onChildOutletDestroyed(this.name),this.inputBinder?.unsubscribeFromRouteData(this)}isTrackedInParentContexts(V){return this.parentContexts.getContext(V)?.outlet===this}ngOnInit(){this.initializeOutletWithName()}initializeOutletWithName(){if(this.parentContexts.onChildOutletCreated(this.name,this),this.activated)return;const V=this.parentContexts.getContext(this.name);V?.route&&(V.attachRef?this.attach(V.attachRef,V.route):this.activateWith(V.route,V.injector))}get isActivated(){return!!this.activated}get component(){if(!this.activated)throw new n.\u0275RuntimeError(4012,!1);return this.activated.instance}get activatedRoute(){if(!this.activated)throw new n.\u0275RuntimeError(4012,!1);return this._activatedRoute}get activatedRouteData(){return this._activatedRoute?this._activatedRoute.snapshot.data:{}}detach(){if(!this.activated)throw new n.\u0275RuntimeError(4012,!1);this.location.detach();const V=this.activated;return this.activated=null,this._activatedRoute=null,this.detachEvents.emit(V.instance),V}attach(V,de){this.activated=V,this._activatedRoute=de,this.location.insert(V.hostView),this.inputBinder?.bindActivatedRouteToOutletComponent(this),this.attachEvents.emit(V.instance)}deactivate(){if(this.activated){const V=this.component;this.activated.destroy(),this.activated=null,this._activatedRoute=null,this.deactivateEvents.emit(V)}}activateWith(V,de){if(this.isActivated)throw new n.\u0275RuntimeError(4013,!1);this._activatedRoute=V;const Le=this.location,et=V.snapshot.component,Nt=this.parentContexts.getOrCreateContext(this.name).children,mn=new Ti(V,Nt,Le.injector);this.activated=Le.createComponent(et,{index:Le.length,injector:mn,environmentInjector:de??this.environmentInjector}),this.changeDetector.markForCheck(),this.inputBinder?.bindActivatedRouteToOutletComponent(this),this.activateEvents.emit(this.activated.instance)}}return G.\u0275fac=function(V){return new(V||G)},G.\u0275dir=n.\u0275\u0275defineDirective({type:G,selectors:[["router-outlet"]],inputs:{name:"name"},outputs:{activateEvents:"activate",deactivateEvents:"deactivate",attachEvents:"attach",detachEvents:"detach"},exportAs:["outlet"],standalone:!0,features:[n.\u0275\u0275NgOnChangesFeature]}),G})();class Ti{constructor(te,V,de){this.route=te,this.childContexts=V,this.parent=de}get(te,V){return te===kn?this.route:te===ge?this.childContexts:this.parent.get(te,V)}}const zi=new n.InjectionToken("");let xi=(()=>{class G{constructor(){this.outletDataSubscriptions=new Map}bindActivatedRouteToOutletComponent(V){this.unsubscribeFromRouteData(V),this.subscribeToRouteData(V)}unsubscribeFromRouteData(V){this.outletDataSubscriptions.get(V)?.unsubscribe(),this.outletDataSubscriptions.delete(V)}subscribeToRouteData(V){const{activatedRoute:de}=V,Le=(0,v.a)([de.queryParams,de.params,de.data]).pipe((0,M.w)(([Qe,et,Nt],mn)=>(Nt={...Qe,...et,...Nt},0===mn?(0,b.of)(Nt):Promise.resolve(Nt)))).subscribe(Qe=>{if(!V.isActivated||!V.activatedComponentRef||V.activatedRoute!==de||null===de.component)return void this.unsubscribeFromRouteData(V);const et=(0,n.reflectComponentType)(de.component);if(et)for(const{templateName:Nt}of et.inputs)V.activatedComponentRef.setInput(Nt,Qe[Nt]);else this.unsubscribeFromRouteData(V)});this.outletDataSubscriptions.set(V,Le)}}return G.\u0275fac=function(V){return new(V||G)},G.\u0275prov=n.\u0275\u0275defineInjectable({token:G,factory:G.\u0275fac}),G})();function gi(G,te,V){if(V&&G.shouldReuseRoute(te.value,V.value.snapshot)){const de=V.value;de._futureSnapshot=te.value;const Le=function Ke(G,te,V){return te.children.map(de=>{for(const Le of V.children)if(G.shouldReuseRoute(de.value,Le.value.snapshot))return gi(G,de,Le);return gi(G,de)})}(G,te,V);return new an(de,Le)}{if(G.shouldAttach(te.value)){const Qe=G.retrieve(te.value);if(null!==Qe){const et=Qe.route;return et.value._futureSnapshot=te.value,et.children=te.children.map(Nt=>gi(G,Nt)),et}}const de=function kt(G){return new kn(new o.X(G.url),new o.X(G.params),new o.X(G.queryParams),new o.X(G.fragment),new o.X(G.data),G.outlet,G.component,G)}(te.value),Le=te.children.map(Qe=>gi(G,Qe));return new an(de,Le)}}const U="ngNavigationCancelingError";function fe(G,te){const{redirectTo:V,navigationBehaviorOptions:de}=qe(te)?{redirectTo:te,navigationBehaviorOptions:void 0}:te,Le=Pe(!1,0,te);return Le.url=V,Le.navigationBehaviorOptions=de,Le}function Pe(G,te,V){const de=new Error("NavigationCancelingError: "+(G||""));return de[U]=!0,de.cancellationCode=te,V&&(de.url=V),de}function Je(G){return Gt(G)&&qe(G.url)}function Gt(G){return G&&G[U]}let Pn=(()=>{class G{}return G.\u0275fac=function(V){return new(V||G)},G.\u0275cmp=n.\u0275\u0275defineComponent({type:G,selectors:[["ng-component"]],standalone:!0,features:[n.\u0275\u0275StandaloneFeature],decls:1,vars:0,template:function(V,de){1&V&&n.\u0275\u0275element(0,"router-outlet")},dependencies:[ti],encapsulation:2}),G})();function Tt(G){const te=G.children&&G.children.map(Tt),V=te?{...G,children:te}:{...G};return!V.component&&!V.loadComponent&&(te||V.loadChildren)&&V.outlet&&V.outlet!==me&&(V.component=Pn),V}function Ut(G){return G.outlet||me}function nn(G){if(!G)return null;if(G.routeConfig?._injector)return G.routeConfig._injector;for(let te=G.parent;te;te=te.parent){const V=te.routeConfig;if(V?._loadedInjector)return V._loadedInjector;if(V?._injector)return V._injector}return null}class zn{constructor(te,V,de,Le,Qe){this.routeReuseStrategy=te,this.futureState=V,this.currState=de,this.forwardEvent=Le,this.inputBindingEnabled=Qe}activate(te){const V=this.futureState._root,de=this.currState?this.currState._root:null;this.deactivateChildRoutes(V,de,te),rn(this.futureState.root),this.activateChildRoutes(V,de,te)}deactivateChildRoutes(te,V,de){const Le=gn(V);te.children.forEach(Qe=>{const et=Qe.value.outlet;this.deactivateRoutes(Qe,Le[et],de),delete Le[et]}),Object.values(Le).forEach(Qe=>{this.deactivateRouteAndItsChildren(Qe,de)})}deactivateRoutes(te,V,de){const Le=te.value,Qe=V?V.value:null;if(Le===Qe)if(Le.component){const et=de.getContext(Le.outlet);et&&this.deactivateChildRoutes(te,V,et.children)}else this.deactivateChildRoutes(te,V,de);else Qe&&this.deactivateRouteAndItsChildren(V,de)}deactivateRouteAndItsChildren(te,V){te.value.component&&this.routeReuseStrategy.shouldDetach(te.value.snapshot)?this.detachAndStoreRouteSubtree(te,V):this.deactivateRouteAndOutlet(te,V)}detachAndStoreRouteSubtree(te,V){const de=V.getContext(te.value.outlet),Le=de&&te.value.component?de.children:V,Qe=gn(te);for(const et of Object.keys(Qe))this.deactivateRouteAndItsChildren(Qe[et],Le);if(de&&de.outlet){const et=de.outlet.detach(),Nt=de.children.onOutletDeactivated();this.routeReuseStrategy.store(te.value.snapshot,{componentRef:et,route:te,contexts:Nt})}}deactivateRouteAndOutlet(te,V){const de=V.getContext(te.value.outlet),Le=de&&te.value.component?de.children:V,Qe=gn(te);for(const et of Object.keys(Qe))this.deactivateRouteAndItsChildren(Qe[et],Le);de&&(de.outlet&&(de.outlet.deactivate(),de.children.onOutletDeactivated()),de.attachRef=null,de.route=null)}activateChildRoutes(te,V,de){const Le=gn(V);te.children.forEach(Qe=>{this.activateRoutes(Qe,Le[Qe.value.outlet],de),this.forwardEvent(new Ft(Qe.value.snapshot))}),te.children.length&&this.forwardEvent(new Pi(te.value.snapshot))}activateRoutes(te,V,de){const Le=te.value,Qe=V?V.value:null;if(rn(Le),Le===Qe)if(Le.component){const et=de.getOrCreateContext(Le.outlet);this.activateChildRoutes(te,V,et.children)}else this.activateChildRoutes(te,V,de);else if(Le.component){const et=de.getOrCreateContext(Le.outlet);if(this.routeReuseStrategy.shouldAttach(Le.snapshot)){const Nt=this.routeReuseStrategy.retrieve(Le.snapshot);this.routeReuseStrategy.store(Le.snapshot,null),et.children.onOutletReAttached(Nt.contexts),et.attachRef=Nt.componentRef,et.route=Nt.route.value,et.outlet&&et.outlet.attach(Nt.componentRef,Nt.route.value),rn(Nt.route.value),this.activateChildRoutes(te,null,et.children)}else{const Nt=nn(Le.snapshot);et.attachRef=null,et.route=Le,et.injector=Nt,et.outlet&&et.outlet.activateWith(Le,et.injector),this.activateChildRoutes(te,null,et.children)}}else this.activateChildRoutes(te,null,de)}}class Vn{constructor(te){this.path=te,this.route=this.path[this.path.length-1]}}class Ri{constructor(te,V){this.component=te,this.route=V}}function ci(G,te,V){const de=G._root;return Xn(de,te?te._root:null,V,[de.value])}function ni(G,te){const V=Symbol(),de=te.get(G,V);return de===V?"function"!=typeof G||(0,n.\u0275isInjectable)(G)?te.get(G):G:de}function Xn(G,te,V,de,Le={canDeactivateChecks:[],canActivateChecks:[]}){const Qe=gn(te);return G.children.forEach(et=>{(function ai(G,te,V,de,Le={canDeactivateChecks:[],canActivateChecks:[]}){const Qe=G.value,et=te?te.value:null,Nt=V?V.getContext(G.value.outlet):null;if(et&&Qe.routeConfig===et.routeConfig){const mn=function Fi(G,te,V){if("function"==typeof V)return V(G,te);switch(V){case"pathParamsChange":return!ae(G.url,te.url);case"pathParamsOrQueryParamsChange":return!ae(G.url,te.url)||!Oe(G.queryParams,te.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!xn(G,te)||!Oe(G.queryParams,te.queryParams);default:return!xn(G,te)}}(et,Qe,Qe.routeConfig.runGuardsAndResolvers);mn?Le.canActivateChecks.push(new Vn(de)):(Qe.data=et.data,Qe._resolvedData=et._resolvedData),Xn(G,te,Qe.component?Nt?Nt.children:null:V,de,Le),mn&&Nt&&Nt.outlet&&Nt.outlet.isActivated&&Le.canDeactivateChecks.push(new Ri(Nt.outlet.component,et))}else et&&Xi(te,Nt,Le),Le.canActivateChecks.push(new Vn(de)),Xn(G,null,Qe.component?Nt?Nt.children:null:V,de,Le)})(et,Qe[et.value.outlet],V,de.concat([et.value]),Le),delete Qe[et.value.outlet]}),Object.entries(Qe).forEach(([et,Nt])=>Xi(Nt,V.getContext(et),Le)),Le}function Xi(G,te,V){const de=gn(G),Le=G.value;Object.entries(de).forEach(([Qe,et])=>{Xi(et,Le.component?te?te.children.getContext(Qe):null:te,V)}),V.canDeactivateChecks.push(new Ri(Le.component&&te&&te.outlet&&te.outlet.isActivated?te.outlet.component:null,Le))}function Jr(G){return"function"==typeof G}function Vr(G){return G instanceof a.K||"EmptyError"===G?.name}const jr=Symbol("INITIAL_VALUE");function Hr(){return(0,M.w)(G=>(0,v.a)(G.map(te=>te.pipe((0,x.q)(1),(0,w.O)(jr)))).pipe((0,_.U)(te=>{for(const V of te)if(!0!==V){if(V===jr)return jr;if(!1===V||V instanceof rt)return V}return!0}),(0,L.h)(te=>te!==jr),(0,x.q)(1)))}function xr(G){return(0,l.z)((0,E.b)(te=>{if(qe(te))throw fe(0,te)}),(0,_.U)(te=>!0===te))}class Mr{constructor(te){this.segmentGroup=te||null}}class _o{constructor(te){this.urlTree=te}}function Or(G){return(0,d._)(new Mr(G))}function qr(G){return(0,d._)(new _o(G))}class fs{constructor(te,V){this.urlSerializer=te,this.urlTree=V}noMatchError(te){return new n.\u0275RuntimeError(4002,!1)}lineralizeSegments(te,V){let de=[],Le=V.root;for(;;){if(de=de.concat(Le.segments),0===Le.numberOfChildren)return(0,b.of)(de);if(Le.numberOfChildren>1||!Le.children[me])return(0,d._)(new n.\u0275RuntimeError(4e3,!1));Le=Le.children[me]}}applyRedirectCommands(te,V,de){return this.applyRedirectCreateUrlTree(V,this.urlSerializer.parse(V),te,de)}applyRedirectCreateUrlTree(te,V,de,Le){const Qe=this.createSegmentGroup(te,V.root,de,Le);return new rt(Qe,this.createQueryParams(V.queryParams,this.urlTree.queryParams),V.fragment)}createQueryParams(te,V){const de={};return Object.entries(te).forEach(([Le,Qe])=>{if("string"==typeof Qe&&Qe.startsWith(":")){const Nt=Qe.substring(1);de[Le]=V[Nt]}else de[Le]=Qe}),de}createSegmentGroup(te,V,de,Le){const Qe=this.createSegments(te,V.segments,de,Le);let et={};return Object.entries(V.children).forEach(([Nt,mn])=>{et[Nt]=this.createSegmentGroup(te,mn,de,Le)}),new J(Qe,et)}createSegments(te,V,de,Le){return V.map(Qe=>Qe.path.startsWith(":")?this.findPosParam(te,Qe,Le):this.findOrReturn(Qe,de))}findPosParam(te,V,de){const Le=de[V.path.substring(1)];if(!Le)throw new n.\u0275RuntimeError(4001,!1);return Le}findOrReturn(te,V){let de=0;for(const Le of V){if(Le.path===te.path)return V.splice(de),Le;de++}return te}}const vo={matched:!1,consumedSegments:[],remainingSegments:[],parameters:{},positionalParamSegments:{}};function Zo(G,te,V,de,Le){const Qe=yr(G,te,V);return Qe.matched?(de=function Gi(G,te){return G.providers&&!G._injector&&(G._injector=(0,n.createEnvironmentInjector)(G.providers,te,`Route: ${G.path}`)),G._injector??te}(te,de),function sr(G,te,V,de){const Le=te.canMatch;if(!Le||0===Le.length)return(0,b.of)(!0);const Qe=Le.map(et=>{const Nt=ni(et,G);return $e(function Wo(G){return G&&Jr(G.canMatch)}(Nt)?Nt.canMatch(te,V):G.runInContext(()=>Nt(te,V)))});return(0,b.of)(Qe).pipe(Hr(),xr())}(de,te,V).pipe((0,_.U)(et=>!0===et?Qe:{...vo}))):(0,b.of)(Qe)}function yr(G,te,V){if(""===te.path)return"full"===te.pathMatch&&(G.hasChildren()||V.length>0)?{...vo}:{matched:!0,consumedSegments:[],remainingSegments:V,parameters:{},positionalParamSegments:{}};const Le=(te.matcher||ue)(V,G,te);if(!Le)return{...vo};const Qe={};Object.entries(Le.posParams??{}).forEach(([Nt,mn])=>{Qe[Nt]=mn.path});const et=Le.consumed.length>0?{...Qe,...Le.consumed[Le.consumed.length-1].parameters}:Qe;return{matched:!0,consumedSegments:Le.consumed,remainingSegments:V.slice(Le.consumed.length),parameters:et,positionalParamSegments:Le.posParams??{}}}function Cr(G,te,V,de){return V.length>0&&function Qo(G,te,V){return V.some(de=>zr(G,te,de)&&Ut(de)!==me)}(G,V,de)?{segmentGroup:new J(te,so(de,new J(V,G.children))),slicedSegments:[]}:0===V.length&&function ao(G,te,V){return V.some(de=>zr(G,te,de))}(G,V,de)?{segmentGroup:new J(G.segments,Ji(G,0,V,de,G.children)),slicedSegments:V}:{segmentGroup:new J(G.segments,G.children),slicedSegments:V}}function Ji(G,te,V,de,Le){const Qe={};for(const et of de)if(zr(G,V,et)&&!Le[Ut(et)]){const Nt=new J([],{});Qe[Ut(et)]=Nt}return{...Le,...Qe}}function so(G,te){const V={};V[me]=te;for(const de of G)if(""===de.path&&Ut(de)!==me){const Le=new J([],{});V[Ut(de)]=Le}return V}function zr(G,te,V){return(!(G.hasChildren()||te.length>0)||"full"!==V.pathMatch)&&""===V.path}class Ao{constructor(te,V,de,Le,Qe,et,Nt){this.injector=te,this.configLoader=V,this.rootComponentType=de,this.config=Le,this.urlTree=Qe,this.paramsInheritanceStrategy=et,this.urlSerializer=Nt,this.allowRedirects=!0,this.applyRedirects=new fs(this.urlSerializer,this.urlTree)}noMatchError(te){return new n.\u0275RuntimeError(4002,!1)}recognize(){const te=Cr(this.urlTree.root,[],[],this.config).segmentGroup;return this.processSegmentGroup(this.injector,this.config,te,me).pipe((0,D.K)(V=>{if(V instanceof _o)return this.allowRedirects=!1,this.urlTree=V.urlTree,this.match(V.urlTree);throw V instanceof Mr?this.noMatchError(V):V}),(0,_.U)(V=>{const de=new $i([],Object.freeze({}),Object.freeze({...this.urlTree.queryParams}),this.urlTree.fragment,{},me,this.rootComponentType,null,{}),Le=new an(de,V),Qe=new er("",Le),et=Ne(de,[],this.urlTree.queryParams,this.urlTree.fragment);return et.queryParams=this.urlTree.queryParams,Qe.url=this.urlSerializer.serialize(et),this.inheritParamsAndData(Qe._root),{state:Qe,tree:et}}))}match(te){return this.processSegmentGroup(this.injector,this.config,te.root,me).pipe((0,D.K)(de=>{throw de instanceof Mr?this.noMatchError(de):de}))}inheritParamsAndData(te){const V=te.value,de=Un(V,this.paramsInheritanceStrategy);V.params=Object.freeze(de.params),V.data=Object.freeze(de.data),te.children.forEach(Le=>this.inheritParamsAndData(Le))}processSegmentGroup(te,V,de,Le){return 0===de.segments.length&&de.hasChildren()?this.processChildren(te,V,de):this.processSegment(te,V,de,de.segments,Le,!0)}processChildren(te,V,de){const Le=[];for(const Qe of Object.keys(de.children))"primary"===Qe?Le.unshift(Qe):Le.push(Qe);return(0,C.D)(Le).pipe((0,O.b)(Qe=>{const et=de.children[Qe],Nt=function Wt(G,te){const V=G.filter(de=>Ut(de)===te);return V.push(...G.filter(de=>Ut(de)!==te)),V}(V,Qe);return this.processSegmentGroup(te,Nt,et,Qe)}),(0,R.R)((Qe,et)=>(Qe.push(...et),Qe)),(0,j.d)(null),(0,N.Z)(),(0,A.z)(Qe=>{if(null===Qe)return Or(de);const et=eo(Qe);return function ar(G){G.sort((te,V)=>te.value.outlet===me?-1:V.value.outlet===me?1:te.value.outlet.localeCompare(V.value.outlet))}(et),(0,b.of)(et)}))}processSegment(te,V,de,Le,Qe,et){return(0,C.D)(V).pipe((0,O.b)(Nt=>this.processSegmentAgainstRoute(Nt._injector??te,V,Nt,de,Le,Qe,et).pipe((0,D.K)(mn=>{if(mn instanceof Mr)return(0,b.of)(null);throw mn}))),(0,T.P)(Nt=>!!Nt),(0,D.K)(Nt=>{if(Vr(Nt))return function Gr(G,te,V){return 0===te.length&&!G.children[V]}(de,Le,Qe)?(0,b.of)([]):Or(de);throw Nt}))}processSegmentAgainstRoute(te,V,de,Le,Qe,et,Nt){return function Wr(G,te,V,de){return!!(Ut(G)===de||de!==me&&zr(te,V,G))&&("**"===G.path||yr(te,G,V).matched)}(de,Le,Qe,et)?void 0===de.redirectTo?this.matchSegmentAgainstRoute(te,Le,de,Qe,et,Nt):Nt&&this.allowRedirects?this.expandSegmentAgainstRouteUsingRedirect(te,Le,V,de,Qe,et):Or(Le):Or(Le)}expandSegmentAgainstRouteUsingRedirect(te,V,de,Le,Qe,et){return"**"===Le.path?this.expandWildCardWithParamsAgainstRouteUsingRedirect(te,de,Le,et):this.expandRegularSegmentAgainstRouteUsingRedirect(te,V,de,Le,Qe,et)}expandWildCardWithParamsAgainstRouteUsingRedirect(te,V,de,Le){const Qe=this.applyRedirects.applyRedirectCommands([],de.redirectTo,{});return de.redirectTo.startsWith("/")?qr(Qe):this.applyRedirects.lineralizeSegments(de,Qe).pipe((0,A.z)(et=>{const Nt=new J(et,{});return this.processSegment(te,V,Nt,et,Le,!1)}))}expandRegularSegmentAgainstRouteUsingRedirect(te,V,de,Le,Qe,et){const{matched:Nt,consumedSegments:mn,remainingSegments:Ln,positionalParamSegments:Gn}=yr(V,Le,Qe);if(!Nt)return Or(V);const Wi=this.applyRedirects.applyRedirectCommands(mn,Le.redirectTo,Gn);return Le.redirectTo.startsWith("/")?qr(Wi):this.applyRedirects.lineralizeSegments(Le,Wi).pipe((0,A.z)(br=>this.processSegment(te,de,V,br.concat(Ln),et,!1)))}matchSegmentAgainstRoute(te,V,de,Le,Qe,et){let Nt;if("**"===de.path){const mn=Le.length>0?Be(Le).parameters:{},Ln=new $i(Le,mn,Object.freeze({...this.urlTree.queryParams}),this.urlTree.fragment,Jo(de),Ut(de),de.component??de._loadedComponent??null,de,ko(de));Nt=(0,b.of)({snapshot:Ln,consumedSegments:[],remainingSegments:[]}),V.children={}}else Nt=Zo(V,de,Le,te).pipe((0,_.U)(({matched:mn,consumedSegments:Ln,remainingSegments:Gn,parameters:Wi})=>mn?{snapshot:new $i(Ln,Wi,Object.freeze({...this.urlTree.queryParams}),this.urlTree.fragment,Jo(de),Ut(de),de.component??de._loadedComponent??null,de,ko(de)),consumedSegments:Ln,remainingSegments:Gn}:null));return Nt.pipe((0,M.w)(mn=>null===mn?Or(V):this.getChildConfig(te=de._injector??te,de,Le).pipe((0,M.w)(({routes:Ln})=>{const Gn=de._loadedInjector??te,{snapshot:Wi,consumedSegments:br,remainingSegments:Ms}=mn,{segmentGroup:Eo,slicedSegments:uo}=Cr(V,br,Ms,Ln);if(0===uo.length&&Eo.hasChildren())return this.processChildren(Gn,Ln,Eo).pipe((0,_.U)(Er=>null===Er?null:[new an(Wi,Er)]));if(0===Ln.length&&0===uo.length)return(0,b.of)([new an(Wi,[])]);const ho=Ut(de)===Qe;return this.processSegment(Gn,Ln,Eo,uo,ho?me:Qe,!0).pipe((0,_.U)(Er=>[new an(Wi,Er)]))}))))}getChildConfig(te,V,de){return V.children?(0,b.of)({routes:V.children,injector:te}):V.loadChildren?void 0!==V._loadedRoutes?(0,b.of)({routes:V._loadedRoutes,injector:V._loadedInjector}):function tr(G,te,V,de){const Le=te.canLoad;if(void 0===Le||0===Le.length)return(0,b.of)(!0);const Qe=Le.map(et=>{const Nt=ni(et,G);return $e(function us(G){return G&&Jr(G.canLoad)}(Nt)?Nt.canLoad(te,V):G.runInContext(()=>Nt(te,V)))});return(0,b.of)(Qe).pipe(Hr(),xr())}(te,V,de).pipe((0,A.z)(Le=>Le?this.configLoader.loadChildren(te,V).pipe((0,E.b)(Qe=>{V._loadedRoutes=Qe.routes,V._loadedInjector=Qe.injector})):function hs(G){return(0,d._)(Pe(!1,3))}())):(0,b.of)({routes:[],injector:te})}}function Xo(G){const te=G.value.routeConfig;return te&&""===te.path}function eo(G){const te=[],V=new Set;for(const de of G){if(!Xo(de)){te.push(de);continue}const Le=te.find(Qe=>de.value.routeConfig===Qe.value.routeConfig);void 0!==Le?(Le.children.push(...de.children),V.add(Le)):te.push(de)}for(const de of V){const Le=eo(de.children);te.push(new an(de.value,Le))}return te.filter(de=>!V.has(de))}function Jo(G){return G.data||{}}function ko(G){return G.resolve||{}}function ns(G){return"string"==typeof G.title||null===G.title}function Ro(G){return(0,M.w)(te=>{const V=G(te);return V?(0,C.D)(V).pipe((0,_.U)(()=>te)):(0,b.of)(te)})}const Pr=new n.InjectionToken("ROUTES");let to=(()=>{class G{constructor(){this.componentLoaders=new WeakMap,this.childrenLoaders=new WeakMap,this.compiler=(0,n.inject)(n.Compiler)}loadComponent(V){if(this.componentLoaders.get(V))return this.componentLoaders.get(V);if(V._loadedComponent)return(0,b.of)(V._loadedComponent);this.onLoadStartListener&&this.onLoadStartListener(V);const de=$e(V.loadComponent()).pipe((0,_.U)(lo),(0,E.b)(Qe=>{this.onLoadEndListener&&this.onLoadEndListener(V),V._loadedComponent=Qe}),(0,F.x)(()=>{this.componentLoaders.delete(V)})),Le=new u.c(de,()=>new h.x).pipe((0,Y.x)());return this.componentLoaders.set(V,Le),Le}loadChildren(V,de){if(this.childrenLoaders.get(de))return this.childrenLoaders.get(de);if(de._loadedRoutes)return(0,b.of)({routes:de._loadedRoutes,injector:de._loadedInjector});this.onLoadStartListener&&this.onLoadStartListener(de);const Qe=this.loadModuleFactoryOrRoutes(de.loadChildren).pipe((0,_.U)(Nt=>{this.onLoadEndListener&&this.onLoadEndListener(de);let mn,Ln;return Array.isArray(Nt)?Ln=Nt:(mn=Nt.create(V).injector,Ln=mn.get(Pr,[],n.InjectFlags.Self|n.InjectFlags.Optional).flat()),{routes:Ln.map(Tt),injector:mn}}),(0,F.x)(()=>{this.childrenLoaders.delete(de)})),et=new u.c(Qe,()=>new h.x).pipe((0,Y.x)());return this.childrenLoaders.set(de,et),et}loadModuleFactoryOrRoutes(V){return $e(V()).pipe((0,_.U)(lo),(0,A.z)(de=>de instanceof n.NgModuleFactory||Array.isArray(de)?(0,b.of)(de):(0,C.D)(this.compiler.compileModuleAsync(de))))}}return G.\u0275fac=function(V){return new(V||G)},G.\u0275prov=n.\u0275\u0275defineInjectable({token:G,factory:G.\u0275fac,providedIn:"root"}),G})();function lo(G){return function Fr(G){return G&&"object"==typeof G&&"default"in G}(G)?G.default:G}let yo=(()=>{class G{get hasRequestedNavigation(){return 0!==this.navigationId}constructor(){this.currentNavigation=null,this.lastSuccessfulNavigation=null,this.events=new h.x,this.configLoader=(0,n.inject)(to),this.environmentInjector=(0,n.inject)(n.EnvironmentInjector),this.urlSerializer=(0,n.inject)(pe),this.rootContexts=(0,n.inject)(ge),this.inputBindingEnabled=null!==(0,n.inject)(zi,{optional:!0}),this.navigationId=0,this.afterPreactivation=()=>(0,b.of)(void 0),this.rootComponentType=null,this.configLoader.onLoadEndListener=Le=>this.events.next(new oi(Le)),this.configLoader.onLoadStartListener=Le=>this.events.next(new Ii(Le))}complete(){this.transitions?.complete()}handleNavigationRequest(V){const de=++this.navigationId;this.transitions?.next({...this.transitions.value,...V,id:de})}setupNavigations(V){return this.transitions=new o.X({id:0,currentUrlTree:V.currentUrlTree,currentRawUrl:V.currentUrlTree,extractedUrl:V.urlHandlingStrategy.extract(V.currentUrlTree),urlAfterRedirects:V.urlHandlingStrategy.extract(V.currentUrlTree),rawUrl:V.currentUrlTree,extras:{},resolve:null,reject:null,promise:Promise.resolve(!0),source:In,restoredState:null,currentSnapshot:V.routerState.snapshot,targetSnapshot:null,currentRouterState:V.routerState,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null}),this.transitions.pipe((0,L.h)(de=>0!==de.id),(0,_.U)(de=>({...de,extractedUrl:V.urlHandlingStrategy.extract(de.rawUrl)})),(0,M.w)(de=>{let Le=!1,Qe=!1;return(0,b.of)(de).pipe((0,E.b)(et=>{this.currentNavigation={id:et.id,initialUrl:et.rawUrl,extractedUrl:et.extractedUrl,trigger:et.source,extras:et.extras,previousNavigation:this.lastSuccessfulNavigation?{...this.lastSuccessfulNavigation,previousNavigation:null}:null}}),(0,M.w)(et=>{const Nt=V.browserUrlTree.toString(),mn=!V.navigated||et.extractedUrl.toString()!==Nt||Nt!==V.currentUrlTree.toString();if(!mn&&"reload"!==(et.extras.onSameUrlNavigation??V.onSameUrlNavigation)){const Gn="";return this.events.next(new ln(et.id,V.serializeUrl(de.rawUrl),Gn,0)),V.rawUrlTree=et.rawUrl,et.resolve(null),r.E}if(V.urlHandlingStrategy.shouldProcessUrl(et.rawUrl))return vr(et.source)&&(V.browserUrlTree=et.extractedUrl),(0,b.of)(et).pipe((0,M.w)(Gn=>{const Wi=this.transitions?.getValue();return this.events.next(new mi(Gn.id,this.urlSerializer.serialize(Gn.extractedUrl),Gn.source,Gn.restoredState)),Wi!==this.transitions?.getValue()?r.E:Promise.resolve(Gn)}),function ps(G,te,V,de,Le,Qe){return(0,A.z)(et=>function ms(G,te,V,de,Le,Qe,et="emptyOnly"){return new Ao(G,te,V,de,Le,et,Qe).recognize()}(G,te,V,de,et.extractedUrl,Le,Qe).pipe((0,_.U)(({state:Nt,tree:mn})=>({...et,targetSnapshot:Nt,urlAfterRedirects:mn}))))}(this.environmentInjector,this.configLoader,this.rootComponentType,V.config,this.urlSerializer,V.paramsInheritanceStrategy),(0,E.b)(Gn=>{if(de.targetSnapshot=Gn.targetSnapshot,de.urlAfterRedirects=Gn.urlAfterRedirects,this.currentNavigation={...this.currentNavigation,finalUrl:Gn.urlAfterRedirects},"eager"===V.urlUpdateStrategy){if(!Gn.extras.skipLocationChange){const br=V.urlHandlingStrategy.merge(Gn.urlAfterRedirects,Gn.rawUrl);V.setBrowserUrl(br,Gn)}V.browserUrlTree=Gn.urlAfterRedirects}const Wi=new Dn(Gn.id,this.urlSerializer.serialize(Gn.extractedUrl),this.urlSerializer.serialize(Gn.urlAfterRedirects),Gn.targetSnapshot);this.events.next(Wi)}));if(mn&&V.urlHandlingStrategy.shouldProcessUrl(V.rawUrlTree)){const{id:Gn,extractedUrl:Wi,source:br,restoredState:Ms,extras:Eo}=et,uo=new mi(Gn,this.urlSerializer.serialize(Wi),br,Ms);this.events.next(uo);const ho=Jn(0,this.rootComponentType).snapshot;return de={...et,targetSnapshot:ho,urlAfterRedirects:Wi,extras:{...Eo,skipLocationChange:!1,replaceUrl:!1}},(0,b.of)(de)}{const Gn="";return this.events.next(new ln(et.id,V.serializeUrl(de.extractedUrl),Gn,1)),V.rawUrlTree=et.rawUrl,et.resolve(null),r.E}}),(0,E.b)(et=>{const Nt=new An(et.id,this.urlSerializer.serialize(et.extractedUrl),this.urlSerializer.serialize(et.urlAfterRedirects),et.targetSnapshot);this.events.next(Nt)}),(0,_.U)(et=>de={...et,guards:ci(et.targetSnapshot,et.currentSnapshot,this.rootContexts)}),function Ko(G,te){return(0,A.z)(V=>{const{targetSnapshot:de,currentSnapshot:Le,guards:{canActivateChecks:Qe,canDeactivateChecks:et}}=V;return 0===et.length&&0===Qe.length?(0,b.of)({...V,guardsResult:!0}):function Yo(G,te,V,de){return(0,C.D)(G).pipe((0,A.z)(Le=>function En(G,te,V,de,Le){const Qe=te&&te.routeConfig?te.routeConfig.canDeactivate:null;if(!Qe||0===Qe.length)return(0,b.of)(!0);const et=Qe.map(Nt=>{const mn=nn(te)??Le,Ln=ni(Nt,mn);return $e(function zo(G){return G&&Jr(G.canDeactivate)}(Ln)?Ln.canDeactivate(G,te,V,de):mn.runInContext(()=>Ln(G,te,V,de))).pipe((0,T.P)())});return(0,b.of)(et).pipe(Hr())}(Le.component,Le.route,V,te,de)),(0,T.P)(Le=>!0!==Le,!0))}(et,de,Le,G).pipe((0,A.z)(Nt=>Nt&&function Ho(G){return"boolean"==typeof G}(Nt)?function ye(G,te,V,de){return(0,C.D)(te).pipe((0,O.b)(Le=>(0,c.z)(function he(G,te){return null!==G&&te&&te(new li(G)),(0,b.of)(!0)}(Le.route.parent,de),function _e(G,te){return null!==G&&te&&te(new Ct(G)),(0,b.of)(!0)}(Le.route,de),function Qt(G,te,V){const de=te[te.length-1],Qe=te.slice(0,te.length-1).reverse().map(et=>function Mi(G){const te=G.routeConfig?G.routeConfig.canActivateChild:null;return te&&0!==te.length?{node:G,guards:te}:null}(et)).filter(et=>null!==et).map(et=>(0,s.P)(()=>{const Nt=et.guards.map(mn=>{const Ln=nn(et.node)??V,Gn=ni(mn,Ln);return $e(function Ir(G){return G&&Jr(G.canActivateChild)}(Gn)?Gn.canActivateChild(de,G):Ln.runInContext(()=>Gn(de,G))).pipe((0,T.P)())});return(0,b.of)(Nt).pipe(Hr())}));return(0,b.of)(Qe).pipe(Hr())}(G,Le.path,V),function He(G,te,V){const de=te.routeConfig?te.routeConfig.canActivate:null;if(!de||0===de.length)return(0,b.of)(!0);const Le=de.map(Qe=>(0,s.P)(()=>{const et=nn(te)??V,Nt=ni(Qe,et);return $e(function oo(G){return G&&Jr(G.canActivate)}(Nt)?Nt.canActivate(te,G):et.runInContext(()=>Nt(te,G))).pipe((0,T.P)())}));return(0,b.of)(Le).pipe(Hr())}(G,Le.route,V))),(0,T.P)(Le=>!0!==Le,!0))}(de,Qe,G,te):(0,b.of)(Nt)),(0,_.U)(Nt=>({...V,guardsResult:Nt})))})}(this.environmentInjector,et=>this.events.next(et)),(0,E.b)(et=>{if(de.guardsResult=et.guardsResult,qe(et.guardsResult))throw fe(0,et.guardsResult);const Nt=new Yn(et.id,this.urlSerializer.serialize(et.extractedUrl),this.urlSerializer.serialize(et.urlAfterRedirects),et.targetSnapshot,!!et.guardsResult);this.events.next(Nt)}),(0,L.h)(et=>!!et.guardsResult||(V.restoreHistory(et),this.cancelNavigationTransition(et,"",3),!1)),Ro(et=>{if(et.guards.canActivateChecks.length)return(0,b.of)(et).pipe((0,E.b)(Nt=>{const mn=new si(Nt.id,this.urlSerializer.serialize(Nt.extractedUrl),this.urlSerializer.serialize(Nt.urlAfterRedirects),Nt.targetSnapshot);this.events.next(mn)}),(0,M.w)(Nt=>{let mn=!1;return(0,b.of)(Nt).pipe(function qo(G,te){return(0,A.z)(V=>{const{targetSnapshot:de,guards:{canActivateChecks:Le}}=V;if(!Le.length)return(0,b.of)(V);let Qe=0;return(0,C.D)(Le).pipe((0,O.b)(et=>function es(G,te,V,de){const Le=G.routeConfig,Qe=G._resolve;return void 0!==Le?.title&&!ns(Le)&&(Qe[$]=Le.title),function ts(G,te,V,de){const Le=function bo(G){return[...Object.keys(G),...Object.getOwnPropertySymbols(G)]}(G);if(0===Le.length)return(0,b.of)({});const Qe={};return(0,C.D)(Le).pipe((0,A.z)(et=>function Lo(G,te,V,de){const Le=nn(te)??de,Qe=ni(G,Le);return $e(Qe.resolve?Qe.resolve(te,V):Le.runInContext(()=>Qe(te,V)))}(G[et],te,V,de).pipe((0,T.P)(),(0,E.b)(Nt=>{Qe[et]=Nt}))),(0,S.h)(1),(0,k.h)(Qe),(0,D.K)(et=>Vr(et)?r.E:(0,d._)(et)))}(Qe,G,te,de).pipe((0,_.U)(et=>(G._resolvedData=et,G.data=Un(G,V).resolve,Le&&ns(Le)&&(G.data[$]=Le.title),null)))}(et.route,de,G,te)),(0,E.b)(()=>Qe++),(0,S.h)(1),(0,A.z)(et=>Qe===Le.length?(0,b.of)(V):r.E))})}(V.paramsInheritanceStrategy,this.environmentInjector),(0,E.b)({next:()=>mn=!0,complete:()=>{mn||(V.restoreHistory(Nt),this.cancelNavigationTransition(Nt,"",2))}}))}),(0,E.b)(Nt=>{const mn=new ii(Nt.id,this.urlSerializer.serialize(Nt.extractedUrl),this.urlSerializer.serialize(Nt.urlAfterRedirects),Nt.targetSnapshot);this.events.next(mn)}))}),Ro(et=>{const Nt=mn=>{const Ln=[];mn.routeConfig?.loadComponent&&!mn.routeConfig._loadedComponent&&Ln.push(this.configLoader.loadComponent(mn.routeConfig).pipe((0,E.b)(Gn=>{mn.component=Gn}),(0,_.U)(()=>{})));for(const Gn of mn.children)Ln.push(...Nt(Gn));return Ln};return(0,v.a)(Nt(et.targetSnapshot.root)).pipe((0,j.d)(),(0,x.q)(1))}),Ro(()=>this.afterPreactivation()),(0,_.U)(et=>{const Nt=function _r(G,te,V){const de=gi(G,te._root,V?V._root:void 0);return new pn(de,te)}(V.routeReuseStrategy,et.targetSnapshot,et.currentRouterState);return de={...et,targetRouterState:Nt}}),(0,E.b)(et=>{V.currentUrlTree=et.urlAfterRedirects,V.rawUrlTree=V.urlHandlingStrategy.merge(et.urlAfterRedirects,et.rawUrl),V.routerState=et.targetRouterState,"deferred"===V.urlUpdateStrategy&&(et.extras.skipLocationChange||V.setBrowserUrl(V.rawUrlTree,et),V.browserUrlTree=et.urlAfterRedirects)}),((G,te,V,de)=>(0,_.U)(Le=>(new zn(te,Le.targetRouterState,Le.currentRouterState,V,de).activate(G),Le)))(this.rootContexts,V.routeReuseStrategy,et=>this.events.next(et),this.inputBindingEnabled),(0,x.q)(1),(0,E.b)({next:et=>{Le=!0,this.lastSuccessfulNavigation=this.currentNavigation,V.navigated=!0,this.events.next(new Qn(et.id,this.urlSerializer.serialize(et.extractedUrl),this.urlSerializer.serialize(V.currentUrlTree))),V.titleStrategy?.updateTitle(et.targetRouterState.snapshot),et.resolve(!0)},complete:()=>{Le=!0}}),(0,F.x)(()=>{Le||Qe||this.cancelNavigationTransition(de,"",1),this.currentNavigation?.id===de.id&&(this.currentNavigation=null)}),(0,D.K)(et=>{if(Qe=!0,Gt(et)){Je(et)||(V.navigated=!0,V.restoreHistory(de,!0));const Nt=new ri(de.id,this.urlSerializer.serialize(de.extractedUrl),et.message,et.cancellationCode);if(this.events.next(Nt),Je(et)){const mn=V.urlHandlingStrategy.merge(et.url,V.rawUrlTree),Ln={skipLocationChange:de.extras.skipLocationChange,replaceUrl:"eager"===V.urlUpdateStrategy||vr(de.source)};V.scheduleNavigation(mn,In,null,Ln,{resolve:de.resolve,reject:de.reject,promise:de.promise})}else de.resolve(!1)}else{V.restoreHistory(de,!0);const Nt=new en(de.id,this.urlSerializer.serialize(de.extractedUrl),et,de.targetSnapshot??void 0);this.events.next(Nt);try{de.resolve(V.errorHandler(et))}catch(mn){de.reject(mn)}}return r.E}))}))}cancelNavigationTransition(V,de,Le){const Qe=new ri(V.id,this.urlSerializer.serialize(V.extractedUrl),de,Le);this.events.next(Qe),V.resolve(!1)}}return G.\u0275fac=function(V){return new(V||G)},G.\u0275prov=n.\u0275\u0275defineInjectable({token:G,factory:G.\u0275fac,providedIn:"root"}),G})();function vr(G){return G!==In}let Co=(()=>{class G{buildTitle(V){let de,Le=V.root;for(;void 0!==Le;)de=this.getResolvedTitleForRoute(Le)??de,Le=Le.children.find(Qe=>Qe.outlet===me);return de}getResolvedTitleForRoute(V){return V.data[$]}}return G.\u0275fac=function(V){return new(V||G)},G.\u0275prov=n.\u0275\u0275defineInjectable({token:G,factory:function(){return(0,n.inject)(Oo)},providedIn:"root"}),G})(),Oo=(()=>{class G extends Co{constructor(V){super(),this.title=V}updateTitle(V){const de=this.buildTitle(V);void 0!==de&&this.title.setTitle(de)}}return G.\u0275fac=function(V){return new(V||G)(n.\u0275\u0275inject(ne.Title))},G.\u0275prov=n.\u0275\u0275defineInjectable({token:G,factory:G.\u0275fac,providedIn:"root"}),G})(),Oi=(()=>{class G{}return G.\u0275fac=function(V){return new(V||G)},G.\u0275prov=n.\u0275\u0275defineInjectable({token:G,factory:function(){return(0,n.inject)(Ie)},providedIn:"root"}),G})();class z{shouldDetach(te){return!1}store(te,V){}shouldAttach(te){return!1}retrieve(te){return null}shouldReuseRoute(te,V){return te.routeConfig===V.routeConfig}}let Ie=(()=>{class G extends z{}return G.\u0275fac=function(){let te;return function(de){return(te||(te=n.\u0275\u0275getInheritedFactory(G)))(de||G)}}(),G.\u0275prov=n.\u0275\u0275defineInjectable({token:G,factory:G.\u0275fac,providedIn:"root"}),G})();const le=new n.InjectionToken("",{providedIn:"root",factory:()=>({})});let Fe=(()=>{class G{}return G.\u0275fac=function(V){return new(V||G)},G.\u0275prov=n.\u0275\u0275defineInjectable({token:G,factory:function(){return(0,n.inject)(ht)},providedIn:"root"}),G})(),ht=(()=>{class G{shouldProcessUrl(V){return!0}extract(V){return V}merge(V,de){return V}}return G.\u0275fac=function(V){return new(V||G)},G.\u0275prov=n.\u0275\u0275defineInjectable({token:G,factory:G.\u0275fac,providedIn:"root"}),G})();var Ht=function(G){return G[G.COMPLETE=0]="COMPLETE",G[G.FAILED=1]="FAILED",G[G.REDIRECTING=2]="REDIRECTING",G}(Ht||{});function Zt(G,te){G.events.pipe((0,L.h)(V=>V instanceof Qn||V instanceof ri||V instanceof en||V instanceof ln),(0,_.U)(V=>V instanceof Qn||V instanceof ln?Ht.COMPLETE:V instanceof ri&&(0===V.code||1===V.code)?Ht.REDIRECTING:Ht.FAILED),(0,L.h)(V=>V!==Ht.REDIRECTING),(0,x.q)(1)).subscribe(()=>{te()})}function jn(G){throw G}function Ni(G,te,V){return te.parse("/")}const ji={paths:"exact",fragment:"ignored",matrixParams:"ignored",queryParams:"exact"},pi={paths:"subset",fragment:"ignored",matrixParams:"ignored",queryParams:"subset"};let Rn=(()=>{class G{get navigationId(){return this.navigationTransitions.navigationId}get browserPageId(){if("computed"===this.canceledNavigationResolution)return this.location.getState()?.\u0275routerPageId}get events(){return this.navigationTransitions.events}constructor(){this.disposed=!1,this.currentPageId=0,this.console=(0,n.inject)(n.\u0275Console),this.isNgZoneEnabled=!1,this.options=(0,n.inject)(le,{optional:!0})||{},this.pendingTasks=(0,n.inject)(n.\u0275InitialRenderPendingTasks),this.errorHandler=this.options.errorHandler||jn,this.malformedUriErrorHandler=this.options.malformedUriErrorHandler||Ni,this.navigated=!1,this.lastSuccessfulId=-1,this.urlHandlingStrategy=(0,n.inject)(Fe),this.routeReuseStrategy=(0,n.inject)(Oi),this.titleStrategy=(0,n.inject)(Co),this.onSameUrlNavigation=this.options.onSameUrlNavigation||"ignore",this.paramsInheritanceStrategy=this.options.paramsInheritanceStrategy||"emptyOnly",this.urlUpdateStrategy=this.options.urlUpdateStrategy||"deferred",this.canceledNavigationResolution=this.options.canceledNavigationResolution||"replace",this.config=(0,n.inject)(Pr,{optional:!0})?.flat()??[],this.navigationTransitions=(0,n.inject)(yo),this.urlSerializer=(0,n.inject)(pe),this.location=(0,n.inject)(m.Location),this.componentInputBindingEnabled=!!(0,n.inject)(zi,{optional:!0}),this.isNgZoneEnabled=(0,n.inject)(n.NgZone)instanceof n.NgZone&&n.NgZone.isInAngularZone(),this.resetConfig(this.config),this.currentUrlTree=new rt,this.rawUrlTree=this.currentUrlTree,this.browserUrlTree=this.currentUrlTree,this.routerState=Jn(0,null),this.navigationTransitions.setupNavigations(this).subscribe(V=>{this.lastSuccessfulId=V.id,this.currentPageId=this.browserPageId??0},V=>{this.console.warn(`Unhandled Navigation Error: ${V}`)})}resetRootComponentType(V){this.routerState.root.component=V,this.navigationTransitions.rootComponentType=V}initialNavigation(){if(this.setUpLocationChangeListener(),!this.navigationTransitions.hasRequestedNavigation){const V=this.location.getState();this.navigateToSyncWithBrowser(this.location.path(!0),In,V)}}setUpLocationChangeListener(){this.locationSubscription||(this.locationSubscription=this.location.subscribe(V=>{const de="popstate"===V.type?"popstate":"hashchange";"popstate"===de&&setTimeout(()=>{this.navigateToSyncWithBrowser(V.url,de,V.state)},0)}))}navigateToSyncWithBrowser(V,de,Le){const Qe={replaceUrl:!0},et=Le?.navigationId?Le:null;if(Le){const mn={...Le};delete mn.navigationId,delete mn.\u0275routerPageId,0!==Object.keys(mn).length&&(Qe.state=mn)}const Nt=this.parseUrl(V);this.scheduleNavigation(Nt,de,et,Qe)}get url(){return this.serializeUrl(this.currentUrlTree)}getCurrentNavigation(){return this.navigationTransitions.currentNavigation}get lastSuccessfulNavigation(){return this.navigationTransitions.lastSuccessfulNavigation}resetConfig(V){this.config=V.map(Tt),this.navigated=!1,this.lastSuccessfulId=-1}ngOnDestroy(){this.dispose()}dispose(){this.navigationTransitions.complete(),this.locationSubscription&&(this.locationSubscription.unsubscribe(),this.locationSubscription=void 0),this.disposed=!0}createUrlTree(V,de={}){const{relativeTo:Le,queryParams:Qe,fragment:et,queryParamsHandling:Nt,preserveFragment:mn}=de,Ln=mn?this.currentUrlTree.fragment:et;let Wi,Gn=null;switch(Nt){case"merge":Gn={...this.currentUrlTree.queryParams,...Qe};break;case"preserve":Gn=this.currentUrlTree.queryParams;break;default:Gn=Qe||null}null!==Gn&&(Gn=this.removeEmptyProps(Gn));try{Wi=dt(Le?Le.snapshot:this.routerState.snapshot.root)}catch{("string"!=typeof V[0]||!V[0].startsWith("/"))&&(V=[]),Wi=this.currentUrlTree.root}return At(Wi,V,Gn,Ln??null)}navigateByUrl(V,de={skipLocationChange:!1}){const Le=qe(V)?V:this.parseUrl(V),Qe=this.urlHandlingStrategy.merge(Le,this.rawUrlTree);return this.scheduleNavigation(Qe,In,null,de)}navigate(V,de={skipLocationChange:!1}){return function qi(G){for(let te=0;te{const Qe=V[Le];return null!=Qe&&(de[Le]=Qe),de},{})}scheduleNavigation(V,de,Le,Qe,et){if(this.disposed)return Promise.resolve(!1);let Nt,mn,Ln;et?(Nt=et.resolve,mn=et.reject,Ln=et.promise):Ln=new Promise((Wi,br)=>{Nt=Wi,mn=br});const Gn=this.pendingTasks.add();return Zt(this,()=>{queueMicrotask(()=>this.pendingTasks.remove(Gn))}),this.navigationTransitions.handleNavigationRequest({source:de,restoredState:Le,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,rawUrl:V,extras:Qe,resolve:Nt,reject:mn,promise:Ln,currentSnapshot:this.routerState.snapshot,currentRouterState:this.routerState}),Ln.catch(Wi=>Promise.reject(Wi))}setBrowserUrl(V,de){const Le=this.urlSerializer.serialize(V);if(this.location.isCurrentPathEqualTo(Le)||de.extras.replaceUrl){const et={...de.extras.state,...this.generateNgRouterState(de.id,this.browserPageId)};this.location.replaceState(Le,"",et)}else{const Qe={...de.extras.state,...this.generateNgRouterState(de.id,(this.browserPageId??0)+1)};this.location.go(Le,"",Qe)}}restoreHistory(V,de=!1){if("computed"===this.canceledNavigationResolution){const Qe=this.currentPageId-(this.browserPageId??this.currentPageId);0!==Qe?this.location.historyGo(Qe):this.currentUrlTree===this.getCurrentNavigation()?.finalUrl&&0===Qe&&(this.resetState(V),this.browserUrlTree=V.currentUrlTree,this.resetUrlToCurrentUrlTree())}else"replace"===this.canceledNavigationResolution&&(de&&this.resetState(V),this.resetUrlToCurrentUrlTree())}resetState(V){this.routerState=V.currentRouterState,this.currentUrlTree=V.currentUrlTree,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,V.rawUrl)}resetUrlToCurrentUrlTree(){this.location.replaceState(this.urlSerializer.serialize(this.rawUrlTree),"",this.generateNgRouterState(this.lastSuccessfulId,this.currentPageId))}generateNgRouterState(V,de){return"computed"===this.canceledNavigationResolution?{navigationId:V,\u0275routerPageId:de}:{navigationId:V}}}return G.\u0275fac=function(V){return new(V||G)},G.\u0275prov=n.\u0275\u0275defineInjectable({token:G,factory:G.\u0275fac,providedIn:"root"}),G})(),Si=(()=>{class G{constructor(V,de,Le,Qe,et,Nt){this.router=V,this.route=de,this.tabIndexAttribute=Le,this.renderer=Qe,this.el=et,this.locationStrategy=Nt,this.href=null,this.commands=null,this.onChanges=new h.x,this.preserveFragment=!1,this.skipLocationChange=!1,this.replaceUrl=!1;const mn=et.nativeElement.tagName?.toLowerCase();this.isAnchorElement="a"===mn||"area"===mn,this.isAnchorElement?this.subscription=V.events.subscribe(Ln=>{Ln instanceof Qn&&this.updateHref()}):this.setTabIndexIfNotOnNativeEl("0")}setTabIndexIfNotOnNativeEl(V){null!=this.tabIndexAttribute||this.isAnchorElement||this.applyAttributeValue("tabindex",V)}ngOnChanges(V){this.isAnchorElement&&this.updateHref(),this.onChanges.next(this)}set routerLink(V){null!=V?(this.commands=Array.isArray(V)?V:[V],this.setTabIndexIfNotOnNativeEl("0")):(this.commands=null,this.setTabIndexIfNotOnNativeEl(null))}onClick(V,de,Le,Qe,et){return!!(null===this.urlTree||this.isAnchorElement&&(0!==V||de||Le||Qe||et||"string"==typeof this.target&&"_self"!=this.target))||(this.router.navigateByUrl(this.urlTree,{skipLocationChange:this.skipLocationChange,replaceUrl:this.replaceUrl,state:this.state}),!this.isAnchorElement)}ngOnDestroy(){this.subscription?.unsubscribe()}updateHref(){this.href=null!==this.urlTree&&this.locationStrategy?this.locationStrategy?.prepareExternalUrl(this.router.serializeUrl(this.urlTree)):null;const V=null===this.href?null:(0,n.\u0275\u0275sanitizeUrlOrResourceUrl)(this.href,this.el.nativeElement.tagName.toLowerCase(),"href");this.applyAttributeValue("href",V)}applyAttributeValue(V,de){const Le=this.renderer,Qe=this.el.nativeElement;null!==de?Le.setAttribute(Qe,V,de):Le.removeAttribute(Qe,V)}get urlTree(){return null===this.commands?null:this.router.createUrlTree(this.commands,{relativeTo:void 0!==this.relativeTo?this.relativeTo:this.route,queryParams:this.queryParams,fragment:this.fragment,queryParamsHandling:this.queryParamsHandling,preserveFragment:this.preserveFragment})}}return G.\u0275fac=function(V){return new(V||G)(n.\u0275\u0275directiveInject(Rn),n.\u0275\u0275directiveInject(kn),n.\u0275\u0275injectAttribute("tabindex"),n.\u0275\u0275directiveInject(n.Renderer2),n.\u0275\u0275directiveInject(n.ElementRef),n.\u0275\u0275directiveInject(m.LocationStrategy))},G.\u0275dir=n.\u0275\u0275defineDirective({type:G,selectors:[["","routerLink",""]],hostVars:1,hostBindings:function(V,de){1&V&&n.\u0275\u0275listener("click",function(Qe){return de.onClick(Qe.button,Qe.ctrlKey,Qe.shiftKey,Qe.altKey,Qe.metaKey)}),2&V&&n.\u0275\u0275attribute("target",de.target)},inputs:{target:"target",queryParams:"queryParams",fragment:"fragment",queryParamsHandling:"queryParamsHandling",state:"state",relativeTo:"relativeTo",preserveFragment:["preserveFragment","preserveFragment",n.booleanAttribute],skipLocationChange:["skipLocationChange","skipLocationChange",n.booleanAttribute],replaceUrl:["replaceUrl","replaceUrl",n.booleanAttribute],routerLink:"routerLink"},standalone:!0,features:[n.\u0275\u0275InputTransformsFeature,n.\u0275\u0275NgOnChangesFeature]}),G})(),ir=(()=>{class G{get isActive(){return this._isActive}constructor(V,de,Le,Qe,et){this.router=V,this.element=de,this.renderer=Le,this.cdr=Qe,this.link=et,this.classes=[],this._isActive=!1,this.routerLinkActiveOptions={exact:!1},this.isActiveChange=new n.EventEmitter,this.routerEventsSubscription=V.events.subscribe(Nt=>{Nt instanceof Qn&&this.update()})}ngAfterContentInit(){(0,b.of)(this.links.changes,(0,b.of)(null)).pipe((0,se.J)()).subscribe(V=>{this.update(),this.subscribeToEachLinkOnChanges()})}subscribeToEachLinkOnChanges(){this.linkInputChangesSubscription?.unsubscribe();const V=[...this.links.toArray(),this.link].filter(de=>!!de).map(de=>de.onChanges);this.linkInputChangesSubscription=(0,C.D)(V).pipe((0,se.J)()).subscribe(de=>{this._isActive!==this.isLinkActive(this.router)(de)&&this.update()})}set routerLinkActive(V){const de=Array.isArray(V)?V:V.split(" ");this.classes=de.filter(Le=>!!Le)}ngOnChanges(V){this.update()}ngOnDestroy(){this.routerEventsSubscription.unsubscribe(),this.linkInputChangesSubscription?.unsubscribe()}update(){!this.links||!this.router.navigated||queueMicrotask(()=>{const V=this.hasActiveLinks();this._isActive!==V&&(this._isActive=V,this.cdr.markForCheck(),this.classes.forEach(de=>{V?this.renderer.addClass(this.element.nativeElement,de):this.renderer.removeClass(this.element.nativeElement,de)}),V&&void 0!==this.ariaCurrentWhenActive?this.renderer.setAttribute(this.element.nativeElement,"aria-current",this.ariaCurrentWhenActive.toString()):this.renderer.removeAttribute(this.element.nativeElement,"aria-current"),this.isActiveChange.emit(V))})}isLinkActive(V){const de=function Ar(G){return!!G.paths}(this.routerLinkActiveOptions)?this.routerLinkActiveOptions:this.routerLinkActiveOptions.exact||!1;return Le=>!!Le.urlTree&&V.isActive(Le.urlTree,de)}hasActiveLinks(){const V=this.isLinkActive(this.router);return this.link&&V(this.link)||this.links.some(V)}}return G.\u0275fac=function(V){return new(V||G)(n.\u0275\u0275directiveInject(Rn),n.\u0275\u0275directiveInject(n.ElementRef),n.\u0275\u0275directiveInject(n.Renderer2),n.\u0275\u0275directiveInject(n.ChangeDetectorRef),n.\u0275\u0275directiveInject(Si,8))},G.\u0275dir=n.\u0275\u0275defineDirective({type:G,selectors:[["","routerLinkActive",""]],contentQueries:function(V,de,Le){if(1&V&&n.\u0275\u0275contentQuery(Le,Si,5),2&V){let Qe;n.\u0275\u0275queryRefresh(Qe=n.\u0275\u0275loadQuery())&&(de.links=Qe)}},inputs:{routerLinkActiveOptions:"routerLinkActiveOptions",ariaCurrentWhenActive:"ariaCurrentWhenActive",routerLinkActive:"routerLinkActive"},outputs:{isActiveChange:"isActiveChange"},exportAs:["routerLinkActive"],standalone:!0,features:[n.\u0275\u0275NgOnChangesFeature]}),G})();class wr{}let Kn=(()=>{class G{preload(V,de){return de().pipe((0,D.K)(()=>(0,b.of)(null)))}}return G.\u0275fac=function(V){return new(V||G)},G.\u0275prov=n.\u0275\u0275defineInjectable({token:G,factory:G.\u0275fac,providedIn:"root"}),G})(),fr=(()=>{class G{preload(V,de){return(0,b.of)(null)}}return G.\u0275fac=function(V){return new(V||G)},G.\u0275prov=n.\u0275\u0275defineInjectable({token:G,factory:G.\u0275fac,providedIn:"root"}),G})(),Kr=(()=>{class G{constructor(V,de,Le,Qe,et){this.router=V,this.injector=Le,this.preloadingStrategy=Qe,this.loader=et}setUpPreloading(){this.subscription=this.router.events.pipe((0,L.h)(V=>V instanceof Qn),(0,O.b)(()=>this.preload())).subscribe(()=>{})}preload(){return this.processRoutes(this.injector,this.router.config)}ngOnDestroy(){this.subscription&&this.subscription.unsubscribe()}processRoutes(V,de){const Le=[];for(const Qe of de){Qe.providers&&!Qe._injector&&(Qe._injector=(0,n.createEnvironmentInjector)(Qe.providers,V,`Route: ${Qe.path}`));const et=Qe._injector??V,Nt=Qe._loadedInjector??et;(Qe.loadChildren&&!Qe._loadedRoutes&&void 0===Qe.canLoad||Qe.loadComponent&&!Qe._loadedComponent)&&Le.push(this.preloadConfig(et,Qe)),(Qe.children||Qe._loadedRoutes)&&Le.push(this.processRoutes(Nt,Qe.children??Qe._loadedRoutes))}return(0,C.D)(Le).pipe((0,se.J)())}preloadConfig(V,de){return this.preloadingStrategy.preload(de,()=>{let Le;Le=de.loadChildren&&void 0===de.canLoad?this.loader.loadChildren(V,de):(0,b.of)(null);const Qe=Le.pipe((0,A.z)(et=>null===et?(0,b.of)(void 0):(de._loadedRoutes=et.routes,de._loadedInjector=et.injector,this.processRoutes(et.injector??V,et.routes))));if(de.loadComponent&&!de._loadedComponent){const et=this.loader.loadComponent(de);return(0,C.D)([Qe,et]).pipe((0,se.J)())}return Qe})}}return G.\u0275fac=function(V){return new(V||G)(n.\u0275\u0275inject(Rn),n.\u0275\u0275inject(n.Compiler),n.\u0275\u0275inject(n.EnvironmentInjector),n.\u0275\u0275inject(wr),n.\u0275\u0275inject(to))},G.\u0275prov=n.\u0275\u0275defineInjectable({token:G,factory:G.\u0275fac,providedIn:"root"}),G})();const lr=new n.InjectionToken("");let Nr=(()=>{class G{constructor(V,de,Le,Qe,et={}){this.urlSerializer=V,this.transitions=de,this.viewportScroller=Le,this.zone=Qe,this.options=et,this.lastId=0,this.lastSource="imperative",this.restoredId=0,this.store={},et.scrollPositionRestoration=et.scrollPositionRestoration||"disabled",et.anchorScrolling=et.anchorScrolling||"disabled"}init(){"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.setHistoryScrollRestoration("manual"),this.routerEventsSubscription=this.createScrollEvents(),this.scrollEventsSubscription=this.consumeScrollEvents()}createScrollEvents(){return this.transitions.events.subscribe(V=>{V instanceof mi?(this.store[this.lastId]=this.viewportScroller.getScrollPosition(),this.lastSource=V.navigationTrigger,this.restoredId=V.restoredState?V.restoredState.navigationId:0):V instanceof Qn?(this.lastId=V.id,this.scheduleScrollEvent(V,this.urlSerializer.parse(V.urlAfterRedirects).fragment)):V instanceof ln&&0===V.code&&(this.lastSource=void 0,this.restoredId=0,this.scheduleScrollEvent(V,this.urlSerializer.parse(V.url).fragment))})}consumeScrollEvents(){return this.transitions.events.subscribe(V=>{V instanceof Ae&&(V.position?"top"===this.options.scrollPositionRestoration?this.viewportScroller.scrollToPosition([0,0]):"enabled"===this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition(V.position):V.anchor&&"enabled"===this.options.anchorScrolling?this.viewportScroller.scrollToAnchor(V.anchor):"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition([0,0]))})}scheduleScrollEvent(V,de){this.zone.runOutsideAngular(()=>{setTimeout(()=>{this.zone.run(()=>{this.transitions.events.next(new Ae(V,"popstate"===this.lastSource?this.store[this.restoredId]:null,de))})},0)})}ngOnDestroy(){this.routerEventsSubscription?.unsubscribe(),this.scrollEventsSubscription?.unsubscribe()}}return G.\u0275fac=function(V){n.\u0275\u0275invalidFactory()},G.\u0275prov=n.\u0275\u0275defineInjectable({token:G,factory:G.\u0275fac}),G})();function js(G,...te){return(0,n.makeEnvironmentProviders)([{provide:Pr,multi:!0,useValue:G},[],{provide:kn,useFactory:is,deps:[Rn]},{provide:n.APP_BOOTSTRAP_LISTENER,multi:!0,useFactory:zs},te.map(V=>V.\u0275providers)])}function is(G){return G.routerState.root}function mr(G,te){return{\u0275kind:G,\u0275providers:te}}function gs(G){return[{provide:Pr,multi:!0,useValue:G},[]]}function rs(G={}){return mr(4,[{provide:lr,useFactory:()=>{const V=(0,n.inject)(m.ViewportScroller),de=(0,n.inject)(n.NgZone),Le=(0,n.inject)(yo),Qe=(0,n.inject)(pe);return new Nr(Qe,Le,V,de,G)}}])}function zs(){const G=(0,n.inject)(n.Injector);return te=>{const V=G.get(n.ApplicationRef);if(te!==V.components[0])return;const de=G.get(Rn),Le=G.get(dn);1===G.get(yi)&&de.initialNavigation(),G.get(bs,null,n.InjectFlags.Optional)?.setUpPreloading(),G.get(lr,null,n.InjectFlags.Optional)?.init(),de.resetRootComponentType(V.componentTypes[0]),Le.closed||(Le.next(),Le.complete(),Le.unsubscribe())}}const dn=new n.InjectionToken("",{factory:()=>new h.x}),yi=new n.InjectionToken("",{providedIn:"root",factory:()=>1});function _s(){return mr(2,[{provide:yi,useValue:0},{provide:n.APP_INITIALIZER,multi:!0,deps:[n.Injector],useFactory:te=>{const V=te.get(m.LOCATION_INITIALIZED,Promise.resolve());return()=>V.then(()=>new Promise(de=>{const Le=te.get(Rn),Qe=te.get(dn);Zt(Le,()=>{de(!0)}),te.get(yo).afterPreactivation=()=>(de(!0),Qe.closed?(0,b.of)(void 0):Qe),Le.initialNavigation()}))}}])}function vs(){return mr(3,[{provide:n.APP_INITIALIZER,multi:!0,useFactory:()=>{const te=(0,n.inject)(Rn);return()=>{te.setUpLocationChangeListener()}}},{provide:yi,useValue:2}])}function cr(){let G=[];return G=[],mr(1,G)}const bs=new n.InjectionToken("");function xo(G){return mr(0,[{provide:bs,useExisting:Kr},{provide:wr,useExisting:G}])}function Ur(G){return mr(5,[{provide:le,useValue:G}])}function ys(){return mr(5,[{provide:m.LocationStrategy,useClass:m.HashLocationStrategy}])}function Cs(G){return mr(7,[{provide:n.ENVIRONMENT_INITIALIZER,multi:!0,useValue:()=>{const V=(0,n.inject)(n.EnvironmentInjector);(0,n.inject)(Rn).events.subscribe(de=>{de instanceof en&&V.runInContext(()=>G(de))})}}])}function Ws(){return mr(8,[xi,{provide:zi,useExisting:xi}])}const xs=new n.InjectionToken("ROUTER_FORROOT_GUARD"),dr=[m.Location,{provide:pe,useClass:Te},Rn,ge,{provide:kn,useFactory:is,deps:[Rn]},to,[]];function Yr(){return new n.NgProbeToken("Router",Rn)}let Br=(()=>{class G{constructor(V){}static forRoot(V,de){return{ngModule:G,providers:[dr,[],{provide:Pr,multi:!0,useValue:V},{provide:xs,useFactory:Ks,deps:[[Rn,new n.Optional,new n.SkipSelf]]},{provide:le,useValue:de||{}},de?.useHash?{provide:m.LocationStrategy,useClass:m.HashLocationStrategy}:{provide:m.LocationStrategy,useClass:m.PathLocationStrategy},{provide:lr,useFactory:()=>{const G=(0,n.inject)(m.ViewportScroller),te=(0,n.inject)(n.NgZone),V=(0,n.inject)(le),de=(0,n.inject)(yo),Le=(0,n.inject)(pe);return V.scrollOffset&&G.setOffset(V.scrollOffset),new Nr(Le,de,G,te,V)}},de?.preloadingStrategy?xo(de.preloadingStrategy).\u0275providers:[],{provide:n.NgProbeToken,multi:!0,useFactory:Yr},de?.initialNavigation?Oa(de):[],de?.bindToComponentInputs?Ws().\u0275providers:[],[{provide:co,useFactory:zs},{provide:n.APP_BOOTSTRAP_LISTENER,multi:!0,useExisting:co}]]}}static forChild(V){return{ngModule:G,providers:[{provide:Pr,multi:!0,useValue:V}]}}}return G.\u0275fac=function(V){return new(V||G)(n.\u0275\u0275inject(xs,8))},G.\u0275mod=n.\u0275\u0275defineNgModule({type:G}),G.\u0275inj=n.\u0275\u0275defineInjector({}),G})();function Ks(G){return"guarded"}function Oa(G){return["disabled"===G.initialNavigation?vs().\u0275providers:[],"enabledBlocking"===G.initialNavigation?_s().\u0275providers:[]]}const co=new n.InjectionToken("");function Fo(G){return G.map(te=>(...V)=>(0,n.inject)(te).canMatch(...V))}function Ys(G){return G.map(te=>(...V)=>(0,n.inject)(te).canActivate(...V))}function os(G){return G.map(te=>(...V)=>(0,n.inject)(te).canActivateChild(...V))}function Pa(G){return G.map(te=>(...V)=>(0,n.inject)(te).canDeactivate(...V))}function wo(G){return(...te)=>(0,n.inject)(G).resolve(...te)}const No=new n.Version("16.1.7")},9515:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{DEFAULT_LANGUAGE:()=>N,FakeMissingTranslationHandler:()=>_,MissingTranslationHandler:()=>m,TranslateCompiler:()=>O,TranslateDefaultParser:()=>T,TranslateDirective:()=>F,TranslateFakeCompiler:()=>E,TranslateFakeLoader:()=>h,TranslateLoader:()=>u,TranslateModule:()=>se,TranslateParser:()=>A,TranslatePipe:()=>Y,TranslateService:()=>k,TranslateStore:()=>D,USE_DEFAULT_LANG:()=>j,USE_EXTEND:()=>S,USE_STORE:()=>R});var n=g(1180),p=g(5879),C=g(2096),b=g(2664),o=g(9315),v=g(34),a=g(4911),c=g(8180),s=g(7081),l=g(7398),d=g(6328),r=g(4664);class u{}let h=(()=>{class ne extends u{getTranslation($){return(0,C.of)({})}}return(0,n.Z)(ne,"\u0275fac",function(){let me;return function(q){return(me||(me=p.\u0275\u0275getInheritedFactory(ne)))(q||ne)}}()),(0,n.Z)(ne,"\u0275prov",p.\u0275\u0275defineInjectable({token:ne,factory:ne.\u0275fac})),ne})();class m{}let _=(()=>{class ne{handle($){return $.key}}return(0,n.Z)(ne,"\u0275fac",function($){return new($||ne)}),(0,n.Z)(ne,"\u0275prov",p.\u0275\u0275defineInjectable({token:ne,factory:ne.\u0275fac})),ne})();function M(ne,me){if(ne===me)return!0;if(null===ne||null===me)return!1;if(ne!=ne&&me!=me)return!0;let Q,ue,Me,$=typeof ne;if($==typeof me&&"object"==$){if(!Array.isArray(ne)){if(Array.isArray(me))return!1;for(ue in Me=Object.create(null),ne){if(!M(ne[ue],me[ue]))return!1;Me[ue]=!0}for(ue in me)if(!(ue in Me)&&typeof me[ue]<"u")return!1;return!0}if(!Array.isArray(me))return!1;if((Q=ne.length)==me.length){for(ue=0;ue{w(me[q])?q in ne?$[q]=L(ne[q],me[q]):Object.assign($,{[q]:me[q]}):Object.assign($,{[q]:me[q]})}),$}class A{}let T=(()=>{class ne extends A{constructor(...$){super(...$),(0,n.Z)(this,"templateMatcher",/{{\s?([^{}\s]*)\s?}}/g)}interpolate($,q){let Q;return Q="string"==typeof $?this.interpolateString($,q):"function"==typeof $?this.interpolateFunction($,q):$,Q}getValue($,q){let Q="string"==typeof q?q.split("."):[q];q="";do{q+=Q.shift(),!x($)||!x($[q])||"object"!=typeof $[q]&&Q.length?Q.length?q+=".":$=void 0:($=$[q],q="")}while(Q.length);return $}interpolateFunction($,q){return $(q)}interpolateString($,q){return q?$.replace(this.templateMatcher,(Q,ue)=>{let Me=this.getValue(q,ue);return x(Me)?Me:Q}):$}}return(0,n.Z)(ne,"\u0275fac",function(){let me;return function(q){return(me||(me=p.\u0275\u0275getInheritedFactory(ne)))(q||ne)}}()),(0,n.Z)(ne,"\u0275prov",p.\u0275\u0275defineInjectable({token:ne,factory:ne.\u0275fac})),ne})();class O{}let E=(()=>{class ne extends O{compile($,q){return $}compileTranslations($,q){return $}}return(0,n.Z)(ne,"\u0275fac",function(){let me;return function(q){return(me||(me=p.\u0275\u0275getInheritedFactory(ne)))(q||ne)}}()),(0,n.Z)(ne,"\u0275prov",p.\u0275\u0275defineInjectable({token:ne,factory:ne.\u0275fac})),ne})();class D{constructor(){(0,n.Z)(this,"defaultLang",void 0),(0,n.Z)(this,"currentLang",this.defaultLang),(0,n.Z)(this,"translations",{}),(0,n.Z)(this,"langs",[]),(0,n.Z)(this,"onTranslationChange",new p.EventEmitter),(0,n.Z)(this,"onLangChange",new p.EventEmitter),(0,n.Z)(this,"onDefaultLangChange",new p.EventEmitter)}}const R=new p.InjectionToken("USE_STORE"),j=new p.InjectionToken("USE_DEFAULT_LANG"),N=new p.InjectionToken("DEFAULT_LANGUAGE"),S=new p.InjectionToken("USE_EXTEND");let k=(()=>{class ne{get onTranslationChange(){return this.isolate?this._onTranslationChange:this.store.onTranslationChange}get onLangChange(){return this.isolate?this._onLangChange:this.store.onLangChange}get onDefaultLangChange(){return this.isolate?this._onDefaultLangChange:this.store.onDefaultLangChange}get defaultLang(){return this.isolate?this._defaultLang:this.store.defaultLang}set defaultLang($){this.isolate?this._defaultLang=$:this.store.defaultLang=$}get currentLang(){return this.isolate?this._currentLang:this.store.currentLang}set currentLang($){this.isolate?this._currentLang=$:this.store.currentLang=$}get langs(){return this.isolate?this._langs:this.store.langs}set langs($){this.isolate?this._langs=$:this.store.langs=$}get translations(){return this.isolate?this._translations:this.store.translations}set translations($){this.isolate?this._translations=$:this.store.translations=$}constructor($,q,Q,ue,Me,Oe=!0,Xe=!1,Be=!1,$e){(0,n.Z)(this,"store",void 0),(0,n.Z)(this,"currentLoader",void 0),(0,n.Z)(this,"compiler",void 0),(0,n.Z)(this,"parser",void 0),(0,n.Z)(this,"missingTranslationHandler",void 0),(0,n.Z)(this,"useDefaultLang",void 0),(0,n.Z)(this,"isolate",void 0),(0,n.Z)(this,"extend",void 0),(0,n.Z)(this,"loadingTranslations",void 0),(0,n.Z)(this,"pending",!1),(0,n.Z)(this,"_onTranslationChange",new p.EventEmitter),(0,n.Z)(this,"_onLangChange",new p.EventEmitter),(0,n.Z)(this,"_onDefaultLangChange",new p.EventEmitter),(0,n.Z)(this,"_defaultLang",void 0),(0,n.Z)(this,"_currentLang",void 0),(0,n.Z)(this,"_langs",[]),(0,n.Z)(this,"_translations",{}),(0,n.Z)(this,"_translationRequests",{}),this.store=$,this.currentLoader=q,this.compiler=Q,this.parser=ue,this.missingTranslationHandler=Me,this.useDefaultLang=Oe,this.isolate=Xe,this.extend=Be,$e&&this.setDefaultLang($e)}setDefaultLang($){if($===this.defaultLang)return;let q=this.retrieveTranslations($);typeof q<"u"?(null==this.defaultLang&&(this.defaultLang=$),q.pipe((0,c.q)(1)).subscribe(Q=>{this.changeDefaultLang($)})):this.changeDefaultLang($)}getDefaultLang(){return this.defaultLang}use($){if($===this.currentLang)return(0,C.of)(this.translations[$]);let q=this.retrieveTranslations($);return typeof q<"u"?(this.currentLang||(this.currentLang=$),q.pipe((0,c.q)(1)).subscribe(Q=>{this.changeLang($)}),q):(this.changeLang($),(0,C.of)(this.translations[$]))}retrieveTranslations($){let q;return(typeof this.translations[$]>"u"||this.extend)&&(this._translationRequests[$]=this._translationRequests[$]||this.getTranslation($),q=this._translationRequests[$]),q}getTranslation($){this.pending=!0;const q=this.currentLoader.getTranslation($).pipe((0,s.d)(1),(0,c.q)(1));return this.loadingTranslations=q.pipe((0,l.U)(Q=>this.compiler.compileTranslations(Q,$)),(0,s.d)(1),(0,c.q)(1)),this.loadingTranslations.subscribe({next:Q=>{this.translations[$]=this.extend&&this.translations[$]?{...Q,...this.translations[$]}:Q,this.updateLangs(),this.pending=!1},error:Q=>{this.pending=!1}}),q}setTranslation($,q,Q=!1){q=this.compiler.compileTranslations(q,$),this.translations[$]=(Q||this.extend)&&this.translations[$]?L(this.translations[$],q):q,this.updateLangs(),this.onTranslationChange.emit({lang:$,translations:this.translations[$]})}getLangs(){return this.langs}addLangs($){$.forEach(q=>{-1===this.langs.indexOf(q)&&this.langs.push(q)})}updateLangs(){this.addLangs(Object.keys(this.translations))}getParsedResult($,q,Q){let ue;if(q instanceof Array){let Me={},Oe=!1;for(let Xe of q)Me[Xe]=this.getParsedResult($,Xe,Q),(0,b.b)(Me[Xe])&&(Oe=!0);if(Oe){const Xe=q.map(Be=>(0,b.b)(Me[Be])?Me[Be]:(0,C.of)(Me[Be]));return(0,o.D)(Xe).pipe((0,l.U)(Be=>{let $e={};return Be.forEach((st,Mt)=>{$e[q[Mt]]=st}),$e}))}return Me}if($&&(ue=this.parser.interpolate(this.parser.getValue($,q),Q)),typeof ue>"u"&&null!=this.defaultLang&&this.defaultLang!==this.currentLang&&this.useDefaultLang&&(ue=this.parser.interpolate(this.parser.getValue(this.translations[this.defaultLang],q),Q)),typeof ue>"u"){let Me={key:q,translateService:this};typeof Q<"u"&&(Me.interpolateParams=Q),ue=this.missingTranslationHandler.handle(Me)}return typeof ue<"u"?ue:q}get($,q){if(!x($)||!$.length)throw new Error('Parameter "key" required');if(this.pending)return this.loadingTranslations.pipe((0,d.b)(Q=>(Q=this.getParsedResult(Q,$,q),(0,b.b)(Q)?Q:(0,C.of)(Q))));{let Q=this.getParsedResult(this.translations[this.currentLang],$,q);return(0,b.b)(Q)?Q:(0,C.of)(Q)}}getStreamOnTranslationChange($,q){if(!x($)||!$.length)throw new Error('Parameter "key" required');return(0,v.z)((0,a.P)(()=>this.get($,q)),this.onTranslationChange.pipe((0,r.w)(Q=>{const ue=this.getParsedResult(Q.translations,$,q);return"function"==typeof ue.subscribe?ue:(0,C.of)(ue)})))}stream($,q){if(!x($)||!$.length)throw new Error('Parameter "key" required');return(0,v.z)((0,a.P)(()=>this.get($,q)),this.onLangChange.pipe((0,r.w)(Q=>{const ue=this.getParsedResult(Q.translations,$,q);return(0,b.b)(ue)?ue:(0,C.of)(ue)})))}instant($,q){if(!x($)||!$.length)throw new Error('Parameter "key" required');let Q=this.getParsedResult(this.translations[this.currentLang],$,q);if((0,b.b)(Q)){if($ instanceof Array){let ue={};return $.forEach((Me,Oe)=>{ue[$[Oe]]=$[Oe]}),ue}return $}return Q}set($,q,Q=this.currentLang){this.translations[Q][$]=this.compiler.compile(q,Q),this.updateLangs(),this.onTranslationChange.emit({lang:Q,translations:this.translations[Q]})}changeLang($){this.currentLang=$,this.onLangChange.emit({lang:$,translations:this.translations[$]}),null==this.defaultLang&&this.changeDefaultLang($)}changeDefaultLang($){this.defaultLang=$,this.onDefaultLangChange.emit({lang:$,translations:this.translations[$]})}reloadLang($){return this.resetLang($),this.getTranslation($)}resetLang($){this._translationRequests[$]=void 0,this.translations[$]=void 0}getBrowserLang(){if(typeof window>"u"||typeof window.navigator>"u")return;let $=window.navigator.languages?window.navigator.languages[0]:null;return $=$||window.navigator.language||window.navigator.browserLanguage||window.navigator.userLanguage,typeof $>"u"?void 0:(-1!==$.indexOf("-")&&($=$.split("-")[0]),-1!==$.indexOf("_")&&($=$.split("_")[0]),$)}getBrowserCultureLang(){if(typeof window>"u"||typeof window.navigator>"u")return;let $=window.navigator.languages?window.navigator.languages[0]:null;return $=$||window.navigator.language||window.navigator.browserLanguage||window.navigator.userLanguage,$}}return(0,n.Z)(ne,"\u0275fac",function($){return new($||ne)(p.\u0275\u0275inject(D),p.\u0275\u0275inject(u),p.\u0275\u0275inject(O),p.\u0275\u0275inject(A),p.\u0275\u0275inject(m),p.\u0275\u0275inject(j),p.\u0275\u0275inject(R),p.\u0275\u0275inject(S),p.\u0275\u0275inject(N))}),(0,n.Z)(ne,"\u0275prov",p.\u0275\u0275defineInjectable({token:ne,factory:ne.\u0275fac})),ne})(),F=(()=>{class ne{set translate($){$&&(this.key=$,this.checkNodes())}set translateParams($){M(this.currentParams,$)||(this.currentParams=$,this.checkNodes(!0))}constructor($,q,Q){(0,n.Z)(this,"translateService",void 0),(0,n.Z)(this,"element",void 0),(0,n.Z)(this,"_ref",void 0),(0,n.Z)(this,"key",void 0),(0,n.Z)(this,"lastParams",void 0),(0,n.Z)(this,"currentParams",void 0),(0,n.Z)(this,"onLangChangeSub",void 0),(0,n.Z)(this,"onDefaultLangChangeSub",void 0),(0,n.Z)(this,"onTranslationChangeSub",void 0),this.translateService=$,this.element=q,this._ref=Q,this.onTranslationChangeSub||(this.onTranslationChangeSub=this.translateService.onTranslationChange.subscribe(ue=>{ue.lang===this.translateService.currentLang&&this.checkNodes(!0,ue.translations)})),this.onLangChangeSub||(this.onLangChangeSub=this.translateService.onLangChange.subscribe(ue=>{this.checkNodes(!0,ue.translations)})),this.onDefaultLangChangeSub||(this.onDefaultLangChangeSub=this.translateService.onDefaultLangChange.subscribe(ue=>{this.checkNodes(!0)}))}ngAfterViewChecked(){this.checkNodes()}checkNodes($=!1,q){let Q=this.element.nativeElement.childNodes;Q.length||(this.setContent(this.element.nativeElement,this.key),Q=this.element.nativeElement.childNodes);for(let ue=0;ue{Me!==$&&(q.lastKey=$),q.originalContent||(q.originalContent=this.getContent(q)),q.currentValue=x(Me)?Me:q.originalContent||$,this.setContent(q,this.key?q.currentValue:q.originalContent.replace($,q.currentValue)),this._ref.markForCheck()};if(x(Q)){let Me=this.translateService.getParsedResult(Q,$,this.currentParams);(0,b.b)(Me)?Me.subscribe({next:ue}):ue(Me)}else this.translateService.get($,this.currentParams).subscribe(ue)}}getContent($){return x($.textContent)?$.textContent:$.data}setContent($,q){x($.textContent)?$.textContent=q:$.data=q}ngOnDestroy(){this.onLangChangeSub&&this.onLangChangeSub.unsubscribe(),this.onDefaultLangChangeSub&&this.onDefaultLangChangeSub.unsubscribe(),this.onTranslationChangeSub&&this.onTranslationChangeSub.unsubscribe()}}return(0,n.Z)(ne,"\u0275fac",function($){return new($||ne)(p.\u0275\u0275directiveInject(k),p.\u0275\u0275directiveInject(p.ElementRef),p.\u0275\u0275directiveInject(p.ChangeDetectorRef))}),(0,n.Z)(ne,"\u0275dir",p.\u0275\u0275defineDirective({type:ne,selectors:[["","translate",""],["","ngx-translate",""]],inputs:{translate:"translate",translateParams:"translateParams"}})),ne})(),Y=(()=>{class ne{constructor($,q){(0,n.Z)(this,"translate",void 0),(0,n.Z)(this,"_ref",void 0),(0,n.Z)(this,"value",""),(0,n.Z)(this,"lastKey",null),(0,n.Z)(this,"lastParams",[]),(0,n.Z)(this,"onTranslationChange",void 0),(0,n.Z)(this,"onLangChange",void 0),(0,n.Z)(this,"onDefaultLangChange",void 0),this.translate=$,this._ref=q}updateValue($,q,Q){let ue=Me=>{this.value=void 0!==Me?Me:$,this.lastKey=$,this._ref.markForCheck()};if(Q){let Me=this.translate.getParsedResult(Q,$,q);(0,b.b)(Me.subscribe)?Me.subscribe(ue):ue(Me)}this.translate.get($,q).subscribe(ue)}transform($,...q){if(!$||!$.length)return $;if(M($,this.lastKey)&&M(q,this.lastParams))return this.value;let Q;if(x(q[0])&&q.length)if("string"==typeof q[0]&&q[0].length){let ue=q[0].replace(/(\')?([a-zA-Z0-9_]+)(\')?(\s)?:/g,'"$2":').replace(/:(\s)?(\')(.*?)(\')/g,':"$3"');try{Q=JSON.parse(ue)}catch{throw new SyntaxError(`Wrong parameter in TranslatePipe. Expected a valid Object, received: ${q[0]}`)}}else"object"==typeof q[0]&&!Array.isArray(q[0])&&(Q=q[0]);return this.lastKey=$,this.lastParams=q,this.updateValue($,Q),this._dispose(),this.onTranslationChange||(this.onTranslationChange=this.translate.onTranslationChange.subscribe(ue=>{this.lastKey&&ue.lang===this.translate.currentLang&&(this.lastKey=null,this.updateValue($,Q,ue.translations))})),this.onLangChange||(this.onLangChange=this.translate.onLangChange.subscribe(ue=>{this.lastKey&&(this.lastKey=null,this.updateValue($,Q,ue.translations))})),this.onDefaultLangChange||(this.onDefaultLangChange=this.translate.onDefaultLangChange.subscribe(()=>{this.lastKey&&(this.lastKey=null,this.updateValue($,Q))})),this.value}_dispose(){typeof this.onTranslationChange<"u"&&(this.onTranslationChange.unsubscribe(),this.onTranslationChange=void 0),typeof this.onLangChange<"u"&&(this.onLangChange.unsubscribe(),this.onLangChange=void 0),typeof this.onDefaultLangChange<"u"&&(this.onDefaultLangChange.unsubscribe(),this.onDefaultLangChange=void 0)}ngOnDestroy(){this._dispose()}}return(0,n.Z)(ne,"\u0275fac",function($){return new($||ne)(p.\u0275\u0275directiveInject(k,16),p.\u0275\u0275directiveInject(p.ChangeDetectorRef,16))}),(0,n.Z)(ne,"\u0275pipe",p.\u0275\u0275definePipe({name:"translate",type:ne,pure:!1})),(0,n.Z)(ne,"\u0275prov",p.\u0275\u0275defineInjectable({token:ne,factory:ne.\u0275fac})),ne})(),se=(()=>{class ne{static forRoot($={}){return{ngModule:ne,providers:[$.loader||{provide:u,useClass:h},$.compiler||{provide:O,useClass:E},$.parser||{provide:A,useClass:T},$.missingTranslationHandler||{provide:m,useClass:_},D,{provide:R,useValue:$.isolate},{provide:j,useValue:$.useDefaultLang},{provide:S,useValue:$.extend},{provide:N,useValue:$.defaultLanguage},k]}}static forChild($={}){return{ngModule:ne,providers:[$.loader||{provide:u,useClass:h},$.compiler||{provide:O,useClass:E},$.parser||{provide:A,useClass:T},$.missingTranslationHandler||{provide:m,useClass:_},{provide:R,useValue:$.isolate},{provide:j,useValue:$.useDefaultLang},{provide:S,useValue:$.extend},{provide:N,useValue:$.defaultLanguage},k]}}}return(0,n.Z)(ne,"\u0275fac",function($){return new($||ne)}),(0,n.Z)(ne,"\u0275mod",p.\u0275\u0275defineNgModule({type:ne})),(0,n.Z)(ne,"\u0275inj",p.\u0275\u0275defineInjector({})),ne})()},5061:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{TranslateHttpLoader:()=>p});var n=g(1180);class p{constructor(b,o="/assets/i18n/",v=".json"){(0,n.Z)(this,"http",void 0),(0,n.Z)(this,"prefix",void 0),(0,n.Z)(this,"suffix",void 0),this.http=b,this.prefix=o,this.suffix=v}getTranslation(b){return this.http.get(`${this.prefix}${b}${this.suffix}`)}}},6381:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{AUTH_CONFIG:()=>Yt,AbstractValidationHandler:()=>Xe,AuthConfig:()=>ue,DateTimeProvider:()=>R,DefaultHashHandler:()=>ie,DefaultOAuthInterceptor:()=>Lt,HashHandler:()=>Ce,JwksValidationHandler:()=>$t,LoginOptions:()=>N,MemoryStorage:()=>F,NullValidationHandler:()=>O,OAuthErrorEvent:()=>$,OAuthEvent:()=>se,OAuthInfoEvent:()=>me,OAuthLogger:()=>S,OAuthModule:()=>yt,OAuthModuleConfig:()=>E,OAuthNoopResourceServerErrorHandler:()=>ct,OAuthResourceServerConfig:()=>D,OAuthResourceServerErrorHandler:()=>Te,OAuthService:()=>pe,OAuthStorage:()=>k,OAuthSuccessEvent:()=>ne,ReceivedTokens:()=>Y,SystemDateTimeProvider:()=>j,UrlHelperService:()=>Be,ValidationHandler:()=>Oe,provideOAuthClient:()=>ze});var n=g(5861),p=g(5879),C=g(6814),b=g(9862),o=g(8645),v=g(2096),a=g(2459),c=g(3684),s=g(8504),l=g(2572),d=g(3019),r=g(2181),u=g(9397),h=g(3620),m=g(7547),_=g(4664),M=g(7398),x=g(1374),w=g(6306),L=g(5178),A=g(8180),T=g(9769);class O{validateSignature(We){return Promise.resolve(null)}validateAtHash(We){return Promise.resolve(!0)}}class E{}class D{}class R{}let j=(()=>{class Ue extends R{now(){return Date.now()}new(){return new Date}}return Ue.\u0275fac=function(){let We;return function(we){return(We||(We=p.\u0275\u0275getInheritedFactory(Ue)))(we||Ue)}}(),Ue.\u0275prov=p.\u0275\u0275defineInjectable({token:Ue,factory:Ue.\u0275fac}),Ue})();class N{constructor(){this.disableNonceCheck=!1,this.preventClearHashAfterLogin=!1}}class S{}class k{}let F=(()=>{class Ue{constructor(){this.data=new Map}getItem(ve){return this.data.get(ve)}removeItem(ve){this.data.delete(ve)}setItem(ve,we){this.data.set(ve,we)}}return Ue.\u0275fac=function(ve){return new(ve||Ue)},Ue.\u0275prov=p.\u0275\u0275defineInjectable({token:Ue,factory:Ue.\u0275fac}),Ue})();class Y{}class se{constructor(We){this.type=We}}class ne extends se{constructor(We,ve=null){super(We),this.info=ve}}class me extends se{constructor(We,ve=null){super(We),this.info=ve}}class $ extends se{constructor(We,ve,we=null){super(We),this.reason=ve,this.params=we}}function q(Ue){const We=Ue.replace(/\-/g,"+").replace(/\_/g,"/");return decodeURIComponent(atob(We).split("").map(function(ve){return"%"+("00"+ve.charCodeAt(0).toString(16)).slice(-2)}).join(""))}function Q(Ue){return btoa(Ue).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}class ue{constructor(We){this.clientId="",this.redirectUri="",this.postLogoutRedirectUri="",this.redirectUriAsPostLogoutRedirectUriFallback=!0,this.loginUrl="",this.scope="openid profile",this.resource="",this.rngUrl="",this.oidc=!0,this.requestAccessToken=!0,this.options=null,this.issuer="",this.logoutUrl="",this.clearHashAfterLogin=!0,this.tokenEndpoint=null,this.revocationEndpoint=null,this.customTokenParameters=[],this.userinfoEndpoint=null,this.responseType="",this.showDebugInformation=!1,this.silentRefreshRedirectUri="",this.silentRefreshMessagePrefix="",this.silentRefreshShowIFrame=!1,this.siletRefreshTimeout=2e4,this.silentRefreshTimeout=2e4,this.dummyClientSecret="",this.requireHttps="remoteOnly",this.strictDiscoveryDocumentValidation=!0,this.jwks=null,this.customQueryParams=null,this.silentRefreshIFrameName="angular-oauth-oidc-silent-refresh-iframe",this.timeoutFactor=.75,this.sessionChecksEnabled=!1,this.sessionCheckIntervall=3e3,this.sessionCheckIFrameUrl=null,this.sessionCheckIFrameName="angular-oauth-oidc-check-session-iframe",this.disableAtHashCheck=!1,this.skipSubjectCheck=!1,this.useIdTokenHintForSilentRefresh=!1,this.skipIssuerCheck=!1,this.nonceStateSeparator=";",this.useHttpBasicAuth=!1,this.decreaseExpirationBySec=0,this.waitForTokenInMsec=0,this.disablePKCE=!1,this.preserveRequestedRoute=!1,this.disableIdTokenTimer=!1,this.checkOrigin=!1,this.openUri=ve=>{location.href=ve},We&&Object.assign(this,We)}}class Me{encodeKey(We){return encodeURIComponent(We)}encodeValue(We){return encodeURIComponent(We)}decodeKey(We){return decodeURIComponent(We)}decodeValue(We){return decodeURIComponent(We)}}class Oe{}class Xe{validateAtHash(We){var ve=this;return(0,n.Z)(function*(){let we=ve.inferHashAlgorithm(We.idTokenHeader),at=yield ve.calcHash(We.accessToken,we),je=Q(at.substr(0,at.length/2)),ke=We.idTokenClaims.at_hash.replace(/=/g,"");return je!==ke&&(console.error("exptected at_hash: "+je),console.error("actual at_hash: "+ke)),je===ke})()}inferHashAlgorithm(We){let ve=We.alg;if(!ve.match(/^.S[0-9]{3}$/))throw new Error("Algorithm not supported: "+ve);return"sha-"+ve.substr(2)}}let Be=(()=>{class Ue{getHashFragmentParams(ve){let we=ve||window.location.hash;if(we=decodeURIComponent(we),0!==we.indexOf("#"))return{};const at=we.indexOf("?");return we=we.substr(at>-1?at+1:1),this.parseQueryString(we)}parseQueryString(ve){const we={};let at,De,je,ke,Z,re,ce;if(null===ve)return we;at=ve.split("&");for(let Ee=0;Ee=64;){for(De=We[0],je=We[1],ke=We[2],Z=We[3],re=We[4],ce=We[5],Ee=We[6],it=We[7],Ye=0;Ye<16;Ye++)qe=we+4*Ye,Ue[Ye]=(255&ve[qe])<<24|(255&ve[qe+1])<<16|(255&ve[qe+2])<<8|255&ve[qe+3];for(Ye=16;Ye<64;Ye++)Rt=Ue[Ye-2],Ne=(Rt>>>17|Rt<<15)^(Rt>>>19|Rt<<13)^Rt>>>10,Rt=Ue[Ye-15],dt=(Rt>>>7|Rt<<25)^(Rt>>>18|Rt<<14)^Rt>>>3,Ue[Ye]=(Ne+Ue[Ye-7]|0)+(dt+Ue[Ye-16]|0);for(Ye=0;Ye<64;Ye++)Ne=(((re>>>6|re<<26)^(re>>>11|re<<21)^(re>>>25|re<<7))+(re&ce^~re&Ee)|0)+(it+(Mt[Ye]+Ue[Ye]|0)|0)|0,dt=((De>>>2|De<<30)^(De>>>13|De<<19)^(De>>>22|De<<10))+(De&je^De&ke^je&ke)|0,it=Ee,Ee=ce,ce=re,re=Z+Ne|0,Z=ke,ke=je,je=De,De=Ne+dt|0;We[0]+=De,We[1]+=je,We[2]+=ke,We[3]+=Z,We[4]+=re,We[5]+=ce,We[6]+=Ee,We[7]+=it,we+=64,at-=64}return we}class St{constructor(){this.digestLength=32,this.blockSize=64,this.state=new Int32Array(8),this.temp=new Int32Array(64),this.buffer=new Uint8Array(128),this.bufferLength=0,this.bytesHashed=0,this.finished=!1,this.reset()}reset(){return this.state[0]=1779033703,this.state[1]=3144134277,this.state[2]=1013904242,this.state[3]=2773480762,this.state[4]=1359893119,this.state[5]=2600822924,this.state[6]=528734635,this.state[7]=1541459225,this.bufferLength=0,this.bytesHashed=0,this.finished=!1,this}clean(){for(let We=0;We0){for(;this.bufferLength<64&&ve>0;)this.buffer[this.bufferLength++]=We[we++],ve--;64===this.bufferLength&&(tt(this.temp,this.state,this.buffer,0,64),this.bufferLength=0)}for(ve>=64&&(we=tt(this.temp,this.state,We,we,ve),ve%=64);ve>0;)this.buffer[this.bufferLength++]=We[we++],ve--;return this}finish(We){if(!this.finished){const ve=this.bytesHashed,we=this.bufferLength,at=ve/536870912|0,De=ve<<3,je=ve%64<56?64:128;this.buffer[we]=128;for(let ke=we+1;ke>>24&255,this.buffer[je-7]=at>>>16&255,this.buffer[je-6]=at>>>8&255,this.buffer[je-5]=at>>>0&255,this.buffer[je-4]=De>>>24&255,this.buffer[je-3]=De>>>16&255,this.buffer[je-2]=De>>>8&255,this.buffer[je-1]=De>>>0&255,tt(this.temp,this.state,this.buffer,0,je),this.finished=!0}for(let ve=0;ve<8;ve++)We[4*ve+0]=this.state[ve]>>>24&255,We[4*ve+1]=this.state[ve]>>>16&255,We[4*ve+2]=this.state[ve]>>>8&255,We[4*ve+3]=this.state[ve]>>>0&255;return this}digest(){const We=new Uint8Array(this.digestLength);return this.finish(We),We}_saveState(We){for(let ve=0;ve{class Ue{calcHash(ve,we){return(0,n.Z)(function*(){return function ae(Ue){var We,ve=[];for(We=0;We{class Ue extends ue{constructor(ve,we,at,De,je,ke,Z,re,ce,Ee){super(),this.ngZone=ve,this.http=we,this.config=je,this.urlHelper=ke,this.logger=Z,this.crypto=re,this.dateTimeService=Ee,this.discoveryDocumentLoaded=!1,this.state="",this.eventsSubject=new o.x,this.discoveryDocumentLoadedSubject=new o.x,this.grantTypesSupported=[],this.inImplicitFlow=!1,this.saveNoncesInLocalStorage=!1,this.debug("angular-oauth2-oidc v10"),this.document=ce,je||(je={}),this.discoveryDocumentLoaded$=this.discoveryDocumentLoadedSubject.asObservable(),this.events=this.eventsSubject.asObservable(),De&&(this.tokenValidationHandler=De),je&&this.configure(je);try{at?this.setStorage(at):typeof sessionStorage<"u"&&this.setStorage(sessionStorage)}catch(it){console.error("No OAuthStorage provided and cannot access default (sessionStorage).Consider providing a custom OAuthStorage implementation in your module.",it)}if(this.checkLocalStorageAccessable()){const it=window?.navigator?.userAgent;(it?.includes("MSIE ")||it?.includes("Trident"))&&(this.saveNoncesInLocalStorage=!0)}this.setupRefreshTimer()}checkLocalStorageAccessable(){if(typeof window>"u")return!1;const ve="test";try{return!(typeof window.localStorage>"u"||(localStorage.setItem(ve,ve),localStorage.removeItem(ve),0))}catch{return!1}}configure(ve){Object.assign(this,new ue,ve),this.config=Object.assign({},new ue,ve),this.sessionChecksEnabled&&this.setupSessionCheck(),this.configChanged()}configChanged(){this.setupRefreshTimer()}restartSessionChecksIfStillLoggedIn(){this.hasValidIdToken()&&this.initSessionCheck()}restartRefreshTimerIfStillLoggedIn(){this.setupExpirationTimers()}setupSessionCheck(){this.events.pipe((0,r.h)(ve=>"token_received"===ve.type)).subscribe(ve=>{this.initSessionCheck()})}setupAutomaticSilentRefresh(ve={},we,at=!0){let De=!0;this.clearAutomaticRefreshTimer(),this.automaticRefreshSubscription=this.events.pipe((0,u.b)(je=>{"token_received"===je.type?De=!0:"logout"===je.type&&(De=!1)}),(0,r.h)(je=>"token_expires"===je.type&&(null==we||"any"===we||je.info===we)),(0,h.b)(1e3)).subscribe(je=>{De&&this.refreshInternal(ve,at).catch(ke=>{this.debug("Automatic silent refresh did not work")})}),this.restartRefreshTimerIfStillLoggedIn()}refreshInternal(ve,we){return this.useSilentRefresh||"code"!==this.responseType?this.silentRefresh(ve,we):this.refreshToken()}loadDiscoveryDocumentAndTryLogin(ve=null){return this.loadDiscoveryDocument().then(we=>this.tryLogin(ve))}loadDiscoveryDocumentAndLogin(ve=null){return this.loadDiscoveryDocumentAndTryLogin(ve=ve||{}).then(we=>!(!this.hasValidIdToken()||!this.hasValidAccessToken())||(this.initLoginFlow("string"==typeof ve.state?ve.state:""),!1))}debug(...ve){this.showDebugInformation&&this.logger.debug.apply(this.logger,ve)}validateUrlFromDiscoveryDocument(ve){const we=[],at=this.validateUrlForHttps(ve),De=this.validateUrlAgainstIssuer(ve);return at||we.push("https for all urls required. Also for urls received by discovery."),De||we.push("Every url in discovery document has to start with the issuer url.Also see property strictDiscoveryDocumentValidation."),we}validateUrlForHttps(ve){if(!ve)return!0;const we=ve.toLowerCase();return!(!1!==this.requireHttps&&(!we.match(/^http:\/\/localhost($|[:\/])/)&&!we.match(/^http:\/\/localhost($|[:\/])/)||"remoteOnly"!==this.requireHttps))||we.startsWith("https://")}assertUrlNotNullAndCorrectProtocol(ve,we){if(!ve)throw new Error(`'${we}' should not be null`);if(!this.validateUrlForHttps(ve))throw new Error(`'${we}' must use HTTPS (with TLS), or config value for property 'requireHttps' must be set to 'false' and allow HTTP (without TLS).`)}validateUrlAgainstIssuer(ve){return!this.strictDiscoveryDocumentValidation||!ve||ve.toLowerCase().startsWith(this.issuer.toLowerCase())}setupRefreshTimer(){typeof window>"u"?this.debug("timer not supported on this plattform"):((this.hasValidIdToken()||this.hasValidAccessToken())&&(this.clearAccessTokenTimer(),this.clearIdTokenTimer(),this.setupExpirationTimers()),this.tokenReceivedSubscription&&this.tokenReceivedSubscription.unsubscribe(),this.tokenReceivedSubscription=this.events.pipe((0,r.h)(ve=>"token_received"===ve.type)).subscribe(ve=>{this.clearAccessTokenTimer(),this.clearIdTokenTimer(),this.setupExpirationTimers()}))}setupExpirationTimers(){this.hasValidAccessToken()&&this.setupAccessTokenTimer(),!this.disableIdTokenTimer&&this.hasValidIdToken()&&this.setupIdTokenTimer()}setupAccessTokenTimer(){const ve=this.getAccessTokenExpiration(),we=this.getAccessTokenStoredAt(),at=this.calcTimeout(we,ve);this.ngZone.runOutsideAngular(()=>{this.accessTokenTimeoutSubscription=(0,v.of)(new me("token_expires","access_token")).pipe((0,m.g)(at)).subscribe(De=>{this.ngZone.run(()=>{this.eventsSubject.next(De)})})})}setupIdTokenTimer(){const ve=this.getIdTokenExpiration(),we=this.getIdTokenStoredAt(),at=this.calcTimeout(we,ve);this.ngZone.runOutsideAngular(()=>{this.idTokenTimeoutSubscription=(0,v.of)(new me("token_expires","id_token")).pipe((0,m.g)(at)).subscribe(De=>{this.ngZone.run(()=>{this.eventsSubject.next(De)})})})}stopAutomaticRefresh(){this.clearAccessTokenTimer(),this.clearIdTokenTimer(),this.clearAutomaticRefreshTimer()}clearAccessTokenTimer(){this.accessTokenTimeoutSubscription&&this.accessTokenTimeoutSubscription.unsubscribe()}clearIdTokenTimer(){this.idTokenTimeoutSubscription&&this.idTokenTimeoutSubscription.unsubscribe()}clearAutomaticRefreshTimer(){this.automaticRefreshSubscription&&this.automaticRefreshSubscription.unsubscribe()}calcTimeout(ve,we){const at=this.dateTimeService.now(),je=Math.max(0,(we-ve)*this.timeoutFactor-(at-ve)),ke=2147483647;return je>ke?ke:je}setStorage(ve){this._storage=ve,this.configChanged()}loadDiscoveryDocument(ve=null){return new Promise((we,at)=>{ve||((ve=this.issuer||"").endsWith("/")||(ve+="/"),ve+=".well-known/openid-configuration"),this.validateUrlForHttps(ve)?this.http.get(ve).subscribe(De=>{if(!this.validateDiscoveryDocument(De))return this.eventsSubject.next(new $("discovery_document_validation_error",null)),void at("discovery_document_validation_error");this.loginUrl=De.authorization_endpoint,this.logoutUrl=De.end_session_endpoint||this.logoutUrl,this.grantTypesSupported=De.grant_types_supported,this.issuer=De.issuer,this.tokenEndpoint=De.token_endpoint,this.userinfoEndpoint=De.userinfo_endpoint||this.userinfoEndpoint,this.jwksUri=De.jwks_uri,this.sessionCheckIFrameUrl=De.check_session_iframe||this.sessionCheckIFrameUrl,this.discoveryDocumentLoaded=!0,this.discoveryDocumentLoadedSubject.next(De),this.revocationEndpoint=De.revocation_endpoint||this.revocationEndpoint,this.sessionChecksEnabled&&this.restartSessionChecksIfStillLoggedIn(),this.loadJwks().then(je=>{const Z=new ne("discovery_document_loaded",{discoveryDocument:De,jwks:je});this.eventsSubject.next(Z),we(Z)}).catch(je=>{this.eventsSubject.next(new $("discovery_document_load_error",je)),at(je)})},De=>{this.logger.error("error loading discovery document",De),this.eventsSubject.next(new $("discovery_document_load_error",De)),at(De)}):at("issuer must use HTTPS (with TLS), or config value for property 'requireHttps' must be set to 'false' and allow HTTP (without TLS).")})}loadJwks(){return new Promise((ve,we)=>{this.jwksUri?this.http.get(this.jwksUri).subscribe(at=>{this.jwks=at,ve(at)},at=>{this.logger.error("error loading jwks",at),this.eventsSubject.next(new $("jwks_load_error",at)),we(at)}):ve(null)})}validateDiscoveryDocument(ve){let we;return this.skipIssuerCheck||ve.issuer===this.issuer?(we=this.validateUrlFromDiscoveryDocument(ve.authorization_endpoint),we.length>0?(this.logger.error("error validating authorization_endpoint in discovery document",we),!1):(we=this.validateUrlFromDiscoveryDocument(ve.end_session_endpoint),we.length>0?(this.logger.error("error validating end_session_endpoint in discovery document",we),!1):(we=this.validateUrlFromDiscoveryDocument(ve.token_endpoint),we.length>0&&this.logger.error("error validating token_endpoint in discovery document",we),we=this.validateUrlFromDiscoveryDocument(ve.revocation_endpoint),we.length>0&&this.logger.error("error validating revocation_endpoint in discovery document",we),we=this.validateUrlFromDiscoveryDocument(ve.userinfo_endpoint),we.length>0?(this.logger.error("error validating userinfo_endpoint in discovery document",we),!1):(we=this.validateUrlFromDiscoveryDocument(ve.jwks_uri),we.length>0?(this.logger.error("error validating jwks_uri in discovery document",we),!1):(this.sessionChecksEnabled&&!ve.check_session_iframe&&this.logger.warn("sessionChecksEnabled is activated but discovery document does not contain a check_session_iframe field"),!0))))):(this.logger.error("invalid issuer in discovery document","expected: "+this.issuer,"current: "+ve.issuer),!1)}fetchTokenUsingPasswordFlowAndLoadUserProfile(ve,we,at=new b.HttpHeaders){return this.fetchTokenUsingPasswordFlow(ve,we,at).then(()=>this.loadUserProfile())}loadUserProfile(){if(!this.hasValidAccessToken())throw new Error("Can not load User Profile without access_token");if(!this.validateUrlForHttps(this.userinfoEndpoint))throw new Error("userinfoEndpoint must use HTTPS (with TLS), or config value for property 'requireHttps' must be set to 'false' and allow HTTP (without TLS).");return new Promise((ve,we)=>{const at=(new b.HttpHeaders).set("Authorization","Bearer "+this.getAccessToken());this.http.get(this.userinfoEndpoint,{headers:at,observe:"response",responseType:"text"}).subscribe(De=>{if(this.debug("userinfo received",JSON.stringify(De)),De.headers.get("content-type").startsWith("application/json")){let je=JSON.parse(De.body);const ke=this.getIdentityClaims()||{};if(!this.skipSubjectCheck&&this.oidc&&(!ke.sub||je.sub!==ke.sub))return void we("if property oidc is true, the received user-id (sub) has to be the user-id of the user that has logged in with oidc.\nif you are not using oidc but just oauth2 password flow set oidc to false");je=Object.assign({},ke,je),this._storage.setItem("id_token_claims_obj",JSON.stringify(je)),this.eventsSubject.next(new ne("user_profile_loaded")),ve({info:je})}else this.debug("userinfo is not JSON, treating it as JWE/JWS"),this.eventsSubject.next(new ne("user_profile_loaded")),ve(JSON.parse(De.body))},De=>{this.logger.error("error loading user info",De),this.eventsSubject.next(new $("user_profile_load_error",De)),we(De)})})}fetchTokenUsingPasswordFlow(ve,we,at=new b.HttpHeaders){return this.fetchTokenUsingGrant("password",{username:ve,password:we},at)}fetchTokenUsingGrant(ve,we,at=new b.HttpHeaders){this.assertUrlNotNullAndCorrectProtocol(this.tokenEndpoint,"tokenEndpoint");let De=new b.HttpParams({encoder:new Me}).set("grant_type",ve).set("scope",this.scope);if(this.useHttpBasicAuth){const je=btoa(`${this.clientId}:${this.dummyClientSecret}`);at=at.set("Authorization","Basic "+je)}if(this.useHttpBasicAuth||(De=De.set("client_id",this.clientId)),!this.useHttpBasicAuth&&this.dummyClientSecret&&(De=De.set("client_secret",this.dummyClientSecret)),this.customQueryParams)for(const je of Object.getOwnPropertyNames(this.customQueryParams))De=De.set(je,this.customQueryParams[je]);for(const je of Object.keys(we))De=De.set(je,we[je]);return at=at.set("Content-Type","application/x-www-form-urlencoded"),new Promise((je,ke)=>{this.http.post(this.tokenEndpoint,De,{headers:at}).subscribe(Z=>{this.debug("tokenResponse",Z),this.storeAccessTokenResponse(Z.access_token,Z.refresh_token,Z.expires_in||this.fallbackAccessTokenExpirationTimeInSec,Z.scope,this.extractRecognizedCustomParameters(Z)),this.oidc&&Z.id_token&&this.processIdToken(Z.id_token,Z.access_token).then(re=>{this.storeIdToken(re),je(Z)}),this.eventsSubject.next(new ne("token_received")),je(Z)},Z=>{this.logger.error("Error performing ${grantType} flow",Z),this.eventsSubject.next(new $("token_error",Z)),ke(Z)})})}refreshToken(){return this.assertUrlNotNullAndCorrectProtocol(this.tokenEndpoint,"tokenEndpoint"),new Promise((ve,we)=>{let at=new b.HttpParams({encoder:new Me}).set("grant_type","refresh_token").set("scope",this.scope).set("refresh_token",this._storage.getItem("refresh_token")),De=(new b.HttpHeaders).set("Content-Type","application/x-www-form-urlencoded");if(this.useHttpBasicAuth){const je=btoa(`${this.clientId}:${this.dummyClientSecret}`);De=De.set("Authorization","Basic "+je)}if(this.useHttpBasicAuth||(at=at.set("client_id",this.clientId)),!this.useHttpBasicAuth&&this.dummyClientSecret&&(at=at.set("client_secret",this.dummyClientSecret)),this.customQueryParams)for(const je of Object.getOwnPropertyNames(this.customQueryParams))at=at.set(je,this.customQueryParams[je]);this.http.post(this.tokenEndpoint,at,{headers:De}).pipe((0,_.w)(je=>this.oidc&&je.id_token?(0,a.D)(this.processIdToken(je.id_token,je.access_token,!0)).pipe((0,u.b)(ke=>this.storeIdToken(ke)),(0,M.U)(ke=>je)):(0,v.of)(je))).subscribe(je=>{this.debug("refresh tokenResponse",je),this.storeAccessTokenResponse(je.access_token,je.refresh_token,je.expires_in||this.fallbackAccessTokenExpirationTimeInSec,je.scope,this.extractRecognizedCustomParameters(je)),this.eventsSubject.next(new ne("token_received")),this.eventsSubject.next(new ne("token_refreshed")),ve(je)},je=>{this.logger.error("Error refreshing token",je),this.eventsSubject.next(new $("token_refresh_error",je)),we(je)})})}removeSilentRefreshEventListener(){this.silentRefreshPostMessageEventListener&&(window.removeEventListener("message",this.silentRefreshPostMessageEventListener),this.silentRefreshPostMessageEventListener=null)}setupSilentRefreshEventListener(){this.removeSilentRefreshEventListener(),this.silentRefreshPostMessageEventListener=ve=>{const we=this.processMessageEventMessage(ve);this.checkOrigin&&ve.origin!==location.origin&&console.error("wrong origin requested silent refresh!"),this.tryLogin({customHashFragment:we,preventClearHashAfterLogin:!0,customRedirectUri:this.silentRefreshRedirectUri||this.redirectUri}).catch(at=>this.debug("tryLogin during silent refresh failed",at))},window.addEventListener("message",this.silentRefreshPostMessageEventListener)}silentRefresh(ve={},we=!0){const at=this.getIdentityClaims()||{};if(this.useIdTokenHintForSilentRefresh&&this.hasValidIdToken()&&(ve.id_token_hint=this.getIdToken()),!this.validateUrlForHttps(this.loginUrl))throw new Error("loginUrl must use HTTPS (with TLS), or config value for property 'requireHttps' must be set to 'false' and allow HTTP (without TLS).");if(typeof this.document>"u")throw new Error("silent refresh is not supported on this platform");const De=this.document.getElementById(this.silentRefreshIFrameName);De&&this.document.body.removeChild(De),this.silentRefreshSubject=at.sub;const je=this.document.createElement("iframe");je.id=this.silentRefreshIFrameName,this.setupSilentRefreshEventListener(),this.createLoginUrl(null,null,this.silentRefreshRedirectUri||this.redirectUri,we,ve).then(Ee=>{je.setAttribute("src",Ee),this.silentRefreshShowIFrame||(je.style.display="none"),this.document.body.appendChild(je)});const Z=this.events.pipe((0,r.h)(Ee=>Ee instanceof $),(0,x.P)()),re=this.events.pipe((0,r.h)(Ee=>"token_received"===Ee.type),(0,x.P)()),ce=(0,v.of)(new $("silent_refresh_timeout",null)).pipe((0,m.g)(this.silentRefreshTimeout));return(0,c.S)([Z,re,ce]).pipe((0,M.U)(Ee=>{if(Ee instanceof $)throw"silent_refresh_timeout"===Ee.type||(Ee=new $("silent_refresh_error",Ee)),this.eventsSubject.next(Ee),Ee;return"token_received"===Ee.type&&(Ee=new ne("silently_refreshed"),this.eventsSubject.next(Ee)),Ee})).toPromise()}initImplicitFlowInPopup(ve){return this.initLoginFlowInPopup(ve)}initLoginFlowInPopup(ve){return ve=ve||{},this.createLoginUrl(null,null,this.silentRefreshRedirectUri,!1,{display:"popup"}).then(we=>new Promise((at,De)=>{let Z,ke=null;ve.windowRef?ve.windowRef&&!ve.windowRef.closed&&(ke=ve.windowRef,ke.location.href=we):ke=window.open(we,"ngx-oauth2-oidc-login",this.calculatePopupFeatures(ve));const re=Ye=>{this.tryLogin({customHashFragment:Ye,preventClearHashAfterLogin:!0,customRedirectUri:this.silentRefreshRedirectUri}).then(()=>{Ee(),at(!0)},qe=>{Ee(),De(qe)})};ke?Z=window.setInterval(()=>{(!ke||ke.closed)&&(Ee(),De(new $("popup_closed",{})))},500):De(new $("popup_blocked",{}));const Ee=()=>{window.clearInterval(Z),window.removeEventListener("storage",Rt),window.removeEventListener("message",it),null!==ke&&ke.close(),ke=null},it=Ye=>{const qe=this.processMessageEventMessage(Ye);qe&&null!==qe?(window.removeEventListener("storage",Rt),re(qe)):console.log("false event firing")},Rt=Ye=>{"auth_hash"===Ye.key&&(window.removeEventListener("message",it),re(Ye.newValue))};window.addEventListener("message",it),window.addEventListener("storage",Rt)}))}calculatePopupFeatures(ve){const we=ve.height||470,at=ve.width||500,De=window.screenLeft+(window.outerWidth-at)/2;return`location=no,toolbar=no,width=${at},height=${we},top=${window.screenTop+(window.outerHeight-we)/2},left=${De}`}processMessageEventMessage(ve){let we="#";if(this.silentRefreshMessagePrefix&&(we+=this.silentRefreshMessagePrefix),!ve||!ve.data||"string"!=typeof ve.data)return;const at=ve.data;return at.startsWith(we)?"#"+at.substr(we.length):void 0}canPerformSessionCheck(){return!(!this.sessionChecksEnabled||(this.sessionCheckIFrameUrl?this.getSessionState()?typeof this.document>"u":(console.warn("sessionChecksEnabled is activated but there is no session_state"),1):(console.warn("sessionChecksEnabled is activated but there is no sessionCheckIFrameUrl"),1)))}setupSessionCheckEventListener(){this.removeSessionCheckEventListener(),this.sessionCheckEventListener=ve=>{const we=ve.origin.toLowerCase(),at=this.issuer.toLowerCase();if(this.debug("sessionCheckEventListener"),at.startsWith(we)){switch(ve.data){case"unchanged":this.ngZone.run(()=>{this.handleSessionUnchanged()});break;case"changed":this.ngZone.run(()=>{this.handleSessionChange()});break;case"error":this.ngZone.run(()=>{this.handleSessionError()})}this.debug("got info from session check inframe",ve)}else this.debug("sessionCheckEventListener","wrong origin",we,"expected",at,"event",ve)},this.ngZone.runOutsideAngular(()=>{window.addEventListener("message",this.sessionCheckEventListener)})}handleSessionUnchanged(){this.debug("session check","session unchanged"),this.eventsSubject.next(new me("session_unchanged"))}handleSessionChange(){this.eventsSubject.next(new me("session_changed")),this.stopSessionCheckTimer(),this.useSilentRefresh||"code"!==this.responseType?this.silentRefreshRedirectUri?(this.silentRefresh().catch(ve=>this.debug("silent refresh failed after session changed")),this.waitForSilentRefreshAfterSessionChange()):(this.eventsSubject.next(new me("session_terminated")),this.logOut(!0)):this.refreshToken().then(ve=>{this.debug("token refresh after session change worked")}).catch(ve=>{this.debug("token refresh did not work after session changed"),this.eventsSubject.next(new me("session_terminated")),this.logOut(!0)})}waitForSilentRefreshAfterSessionChange(){this.events.pipe((0,r.h)(ve=>"silently_refreshed"===ve.type||"silent_refresh_timeout"===ve.type||"silent_refresh_error"===ve.type),(0,x.P)()).subscribe(ve=>{"silently_refreshed"!==ve.type&&(this.debug("silent refresh did not work after session changed"),this.eventsSubject.next(new me("session_terminated")),this.logOut(!0))})}handleSessionError(){this.stopSessionCheckTimer(),this.eventsSubject.next(new me("session_error"))}removeSessionCheckEventListener(){this.sessionCheckEventListener&&(window.removeEventListener("message",this.sessionCheckEventListener),this.sessionCheckEventListener=null)}initSessionCheck(){if(!this.canPerformSessionCheck())return;const ve=this.document.getElementById(this.sessionCheckIFrameName);ve&&this.document.body.removeChild(ve);const we=this.document.createElement("iframe");we.id=this.sessionCheckIFrameName,this.setupSessionCheckEventListener(),we.setAttribute("src",this.sessionCheckIFrameUrl),we.style.display="none",this.document.body.appendChild(we),this.startSessionCheckTimer()}startSessionCheckTimer(){this.stopSessionCheckTimer(),this.ngZone.runOutsideAngular(()=>{this.sessionCheckTimer=setInterval(this.checkSession.bind(this),this.sessionCheckIntervall)})}stopSessionCheckTimer(){this.sessionCheckTimer&&(clearInterval(this.sessionCheckTimer),this.sessionCheckTimer=null)}checkSession(){const ve=this.document.getElementById(this.sessionCheckIFrameName);ve||this.logger.warn("checkSession did not find iframe",this.sessionCheckIFrameName);const we=this.getSessionState();we||this.stopSessionCheckTimer(),ve.contentWindow.postMessage(this.clientId+" "+we,this.issuer)}createLoginUrl(ve="",we="",at="",De=!1,je={}){var ke=this;return(0,n.Z)(function*(){const Z=ke;let re;re=at||ke.redirectUri;const ce=yield ke.createAndSaveNonce();if(ve=ve?ce+ke.config.nonceStateSeparator+encodeURIComponent(ve):ce,!ke.requestAccessToken&&!ke.oidc)throw new Error("Either requestAccessToken or oidc or both must be true");ke.responseType=ke.config.responseType?ke.config.responseType:ke.oidc&&ke.requestAccessToken?"id_token token":ke.oidc&&!ke.requestAccessToken?"id_token":"token";const Ee=Z.loginUrl.indexOf("?")>-1?"&":"?";let it=Z.scope;ke.oidc&&!it.match(/(^|\s)openid($|\s)/)&&(it="openid "+it);let Rt=Z.loginUrl+Ee+"response_type="+encodeURIComponent(Z.responseType)+"&client_id="+encodeURIComponent(Z.clientId)+"&state="+encodeURIComponent(ve)+"&redirect_uri="+encodeURIComponent(re)+"&scope="+encodeURIComponent(it);if(ke.responseType.includes("code")&&!ke.disablePKCE){const[Ye,qe]=yield ke.createChallangeVerifierPairForPKCE();ke.saveNoncesInLocalStorage&&typeof window.localStorage<"u"?localStorage.setItem("PKCE_verifier",qe):ke._storage.setItem("PKCE_verifier",qe),Rt+="&code_challenge="+Ye,Rt+="&code_challenge_method=S256"}we&&(Rt+="&login_hint="+encodeURIComponent(we)),Z.resource&&(Rt+="&resource="+encodeURIComponent(Z.resource)),Z.oidc&&(Rt+="&nonce="+encodeURIComponent(ce)),De&&(Rt+="&prompt=none");for(const Ye of Object.keys(je))Rt+="&"+encodeURIComponent(Ye)+"="+encodeURIComponent(je[Ye]);if(ke.customQueryParams)for(const Ye of Object.getOwnPropertyNames(ke.customQueryParams))Rt+="&"+Ye+"="+encodeURIComponent(ke.customQueryParams[Ye]);return Rt})()}initImplicitFlowInternal(ve="",we=""){if(this.inImplicitFlow)return;if(this.inImplicitFlow=!0,!this.validateUrlForHttps(this.loginUrl))throw new Error("loginUrl must use HTTPS (with TLS), or config value for property 'requireHttps' must be set to 'false' and allow HTTP (without TLS).");let at={},De=null;"string"==typeof we?De=we:"object"==typeof we&&(at=we),this.createLoginUrl(ve,De,null,!1,at).then(this.config.openUri).catch(je=>{console.error("Error in initImplicitFlow",je),this.inImplicitFlow=!1})}initImplicitFlow(ve="",we=""){""!==this.loginUrl?this.initImplicitFlowInternal(ve,we):this.events.pipe((0,r.h)(at=>"discovery_document_loaded"===at.type)).subscribe(at=>this.initImplicitFlowInternal(ve,we))}resetImplicitFlow(){this.inImplicitFlow=!1}callOnTokenReceivedIfExists(ve){const we=this;if(ve.onTokenReceived){const at={idClaims:we.getIdentityClaims(),idToken:we.getIdToken(),accessToken:we.getAccessToken(),state:we.state};ve.onTokenReceived(at)}}storeAccessTokenResponse(ve,we,at,De,je){if(this._storage.setItem("access_token",ve),De&&!Array.isArray(De)?this._storage.setItem("granted_scopes",JSON.stringify(De.split(" "))):De&&Array.isArray(De)&&this._storage.setItem("granted_scopes",JSON.stringify(De)),this._storage.setItem("access_token_stored_at",""+this.dateTimeService.now()),at){const ke=1e3*at,re=this.dateTimeService.new().getTime()+ke;this._storage.setItem("expires_at",""+re)}we&&this._storage.setItem("refresh_token",we),je&&je.forEach((ke,Z)=>{this._storage.setItem(Z,ke)})}tryLogin(ve=null){return"code"===this.config.responseType?this.tryLoginCodeFlow(ve).then(we=>!0):this.tryLoginImplicitFlow(ve)}parseQueryString(ve){return ve&&0!==ve.length?("?"===ve.charAt(0)&&(ve=ve.substr(1)),this.urlHelper.parseQueryString(ve)):{}}tryLoginCodeFlow(ve=null){var we=this;return(0,n.Z)(function*(){const at=(ve=ve||{}).customHashFragment?ve.customHashFragment.substring(1):window.location.search,De=we.getCodePartsFromUrl(at),je=De.code,ke=De.state,Z=De.session_state;if(!ve.preventClearHashAfterLogin){const Ee=location.origin+location.pathname+location.search.replace(/code=[^&\$]*/,"").replace(/scope=[^&\$]*/,"").replace(/state=[^&\$]*/,"").replace(/session_state=[^&\$]*/,"").replace(/^\?&/,"?").replace(/&$/,"").replace(/^\?$/,"").replace(/&+/g,"&").replace(/\?&/,"?").replace(/\?$/,"")+location.hash;history.replaceState(null,window.name,Ee)}let[re,ce]=we.parseState(ke);if(we.state=ce,De.error){we.debug("error trying to login"),we.handleLoginError(ve,De);const Ee=new $("code_error",{},De);return we.eventsSubject.next(Ee),Promise.reject(Ee)}if(!ve.disableNonceCheck){if(!re)return we.saveRequestedRoute(),Promise.resolve();if(!ve.disableOAuth2StateCheck&&!we.validateNonce(re)){const it=new $("invalid_nonce_in_state",null);return we.eventsSubject.next(it),Promise.reject(it)}}return we.storeSessionState(Z),je&&(yield we.getTokenFromCode(je,ve),we.restoreRequestedRoute()),Promise.resolve()})()}saveRequestedRoute(){this.config.preserveRequestedRoute&&this._storage.setItem("requested_route",window.location.pathname+window.location.search)}restoreRequestedRoute(){const ve=this._storage.getItem("requested_route");ve&&history.replaceState(null,"",window.location.origin+ve)}getCodePartsFromUrl(ve){return ve&&0!==ve.length?("?"===ve.charAt(0)&&(ve=ve.substr(1)),this.urlHelper.parseQueryString(ve)):this.urlHelper.getHashFragmentParams()}getTokenFromCode(ve,we){let at=new b.HttpParams({encoder:new Me}).set("grant_type","authorization_code").set("code",ve).set("redirect_uri",we.customRedirectUri||this.redirectUri);if(!this.disablePKCE){let De;De=this.saveNoncesInLocalStorage&&typeof window.localStorage<"u"?localStorage.getItem("PKCE_verifier"):this._storage.getItem("PKCE_verifier"),De?at=at.set("code_verifier",De):console.warn("No PKCE verifier found in oauth storage!")}return this.fetchAndProcessToken(at,we)}fetchAndProcessToken(ve,we){we=we||{},this.assertUrlNotNullAndCorrectProtocol(this.tokenEndpoint,"tokenEndpoint");let at=(new b.HttpHeaders).set("Content-Type","application/x-www-form-urlencoded");if(this.useHttpBasicAuth){const De=btoa(`${this.clientId}:${this.dummyClientSecret}`);at=at.set("Authorization","Basic "+De)}return this.useHttpBasicAuth||(ve=ve.set("client_id",this.clientId)),!this.useHttpBasicAuth&&this.dummyClientSecret&&(ve=ve.set("client_secret",this.dummyClientSecret)),new Promise((De,je)=>{if(this.customQueryParams)for(let ke of Object.getOwnPropertyNames(this.customQueryParams))ve=ve.set(ke,this.customQueryParams[ke]);this.http.post(this.tokenEndpoint,ve,{headers:at}).subscribe(ke=>{this.debug("refresh tokenResponse",ke),this.storeAccessTokenResponse(ke.access_token,ke.refresh_token,ke.expires_in||this.fallbackAccessTokenExpirationTimeInSec,ke.scope,this.extractRecognizedCustomParameters(ke)),this.oidc&&ke.id_token?this.processIdToken(ke.id_token,ke.access_token,we.disableNonceCheck).then(Z=>{this.storeIdToken(Z),this.eventsSubject.next(new ne("token_received")),this.eventsSubject.next(new ne("token_refreshed")),De(ke)}).catch(Z=>{this.eventsSubject.next(new $("token_validation_error",Z)),console.error("Error validating tokens"),console.error(Z),je(Z)}):(this.eventsSubject.next(new ne("token_received")),this.eventsSubject.next(new ne("token_refreshed")),De(ke))},ke=>{console.error("Error getting token",ke),this.eventsSubject.next(new $("token_refresh_error",ke)),je(ke)})})}tryLoginImplicitFlow(ve=null){let we;we=(ve=ve||{}).customHashFragment?this.urlHelper.getHashFragmentParams(ve.customHashFragment):this.urlHelper.getHashFragmentParams(),this.debug("parsed url",we);const at=we.state;let[De,je]=this.parseState(at);if(this.state=je,we.error){this.debug("error trying to login"),this.handleLoginError(ve,we);const Ee=new $("token_error",{},we);return this.eventsSubject.next(Ee),Promise.reject(Ee)}const ke=we.access_token,Z=we.id_token,re=we.session_state,ce=we.scope;if(!this.requestAccessToken&&!this.oidc)return Promise.reject("Either requestAccessToken or oidc (or both) must be true.");if(this.requestAccessToken&&!ke||this.requestAccessToken&&!ve.disableOAuth2StateCheck&&!at||this.oidc&&!Z)return Promise.resolve(!1);if(this.sessionChecksEnabled&&!re&&this.logger.warn("session checks (Session Status Change Notification) were activated in the configuration but the id_token does not contain a session_state claim"),this.requestAccessToken&&!ve.disableNonceCheck&&!this.validateNonce(De)){const it=new $("invalid_nonce_in_state",null);return this.eventsSubject.next(it),Promise.reject(it)}return this.requestAccessToken&&this.storeAccessTokenResponse(ke,null,we.expires_in||this.fallbackAccessTokenExpirationTimeInSec,ce),this.oidc?this.processIdToken(Z,ke,ve.disableNonceCheck).then(Ee=>ve.validationHandler?ve.validationHandler({accessToken:ke,idClaims:Ee.idTokenClaims,idToken:Ee.idToken,state:at}).then(it=>Ee):Ee).then(Ee=>(this.storeIdToken(Ee),this.storeSessionState(re),this.clearHashAfterLogin&&!ve.preventClearHashAfterLogin&&this.clearLocationHash(),this.eventsSubject.next(new ne("token_received")),this.callOnTokenReceivedIfExists(ve),this.inImplicitFlow=!1,!0)).catch(Ee=>(this.eventsSubject.next(new $("token_validation_error",Ee)),this.logger.error("Error validating tokens"),this.logger.error(Ee),Promise.reject(Ee))):(this.eventsSubject.next(new ne("token_received")),this.clearHashAfterLogin&&!ve.preventClearHashAfterLogin&&this.clearLocationHash(),this.callOnTokenReceivedIfExists(ve),Promise.resolve(!0))}parseState(ve){let we=ve,at="";if(ve){const De=ve.indexOf(this.config.nonceStateSeparator);De>-1&&(we=ve.substr(0,De),at=ve.substr(De+this.config.nonceStateSeparator.length))}return[we,at]}validateNonce(ve){let we;return we=this.saveNoncesInLocalStorage&&typeof window.localStorage<"u"?localStorage.getItem("nonce"):this._storage.getItem("nonce"),we===ve||(console.error("Validating access_token failed, wrong state/nonce.",we,ve),!1)}storeIdToken(ve){this._storage.setItem("id_token",ve.idToken),this._storage.setItem("id_token_claims_obj",ve.idTokenClaimsJson),this._storage.setItem("id_token_expires_at",""+ve.idTokenExpiresAt),this._storage.setItem("id_token_stored_at",""+this.dateTimeService.now())}storeSessionState(ve){this._storage.setItem("session_state",ve)}getSessionState(){return this._storage.getItem("session_state")}handleLoginError(ve,we){ve.onLoginError&&ve.onLoginError(we),this.clearHashAfterLogin&&!ve.preventClearHashAfterLogin&&this.clearLocationHash()}getClockSkewInMsec(ve=6e5){return this.clockSkewInSec||0===this.clockSkewInSec?1e3*this.clockSkewInSec:ve}processIdToken(ve,we,at=!1){const De=ve.split("."),ke=q(this.padBase64(De[0])),Z=JSON.parse(ke),ce=q(this.padBase64(De[1])),Ee=JSON.parse(ce);let it;if(it=this.saveNoncesInLocalStorage&&typeof window.localStorage<"u"?localStorage.getItem("nonce"):this._storage.getItem("nonce"),Array.isArray(Ee.aud)){if(Ee.aud.every(At=>At!==this.clientId)){const At="Wrong audience: "+Ee.aud.join(",");return this.logger.warn(At),Promise.reject(At)}}else if(Ee.aud!==this.clientId){const At="Wrong audience: "+Ee.aud;return this.logger.warn(At),Promise.reject(At)}if(!Ee.sub){const At="No sub claim in id_token";return this.logger.warn(At),Promise.reject(At)}if(this.sessionChecksEnabled&&this.silentRefreshSubject&&this.silentRefreshSubject!==Ee.sub){const At=`After refreshing, we got an id_token for another user (sub). Expected sub: ${this.silentRefreshSubject}, received sub: ${Ee.sub}`;return this.logger.warn(At),Promise.reject(At)}if(!Ee.iat){const At="No iat claim in id_token";return this.logger.warn(At),Promise.reject(At)}if(!this.skipIssuerCheck&&Ee.iss!==this.issuer){const At="Wrong issuer: "+Ee.iss;return this.logger.warn(At),Promise.reject(At)}if(!at&&Ee.nonce!==it){const At="Wrong nonce: "+Ee.nonce;return this.logger.warn(At),Promise.reject(At)}if(this.hasOwnProperty("responseType")&&("code"===this.responseType||"id_token"===this.responseType)&&(this.disableAtHashCheck=!0),!this.disableAtHashCheck&&this.requestAccessToken&&!Ee.at_hash){const At="An at_hash is needed!";return this.logger.warn(At),Promise.reject(At)}const Rt=this.dateTimeService.now(),Ye=1e3*Ee.iat,qe=1e3*Ee.exp,Ne=this.getClockSkewInMsec();if(Ye-Ne>=Rt||qe+Ne-this.decreaseExpirationBySec<=Rt){const At="Token has expired";return console.error(At),console.error({now:Rt,issuedAtMSec:Ye,expiresAtMSec:qe}),Promise.reject(At)}const dt={accessToken:we,idToken:ve,jwks:this.jwks,idTokenClaims:Ee,idTokenHeader:Z,loadKeys:()=>this.loadJwks()};return this.disableAtHashCheck?this.checkSignature(dt).then(At=>({idToken:ve,idTokenClaims:Ee,idTokenClaimsJson:ce,idTokenHeader:Z,idTokenHeaderJson:ke,idTokenExpiresAt:qe})):this.checkAtHash(dt).then(At=>{if(!this.disableAtHashCheck&&this.requestAccessToken&&!At){const tn="Wrong at_hash";return this.logger.warn(tn),Promise.reject(tn)}return this.checkSignature(dt).then(tn=>{const Tn={idToken:ve,idTokenClaims:Ee,idTokenClaimsJson:ce,idTokenHeader:Z,idTokenHeaderJson:ke,idTokenExpiresAt:qe};return this.disableAtHashCheck?Tn:this.checkAtHash(dt).then(Sn=>{if(this.requestAccessToken&&!Sn){const Mn="Wrong at_hash";return this.logger.warn(Mn),Promise.reject(Mn)}return Tn})})})}getIdentityClaims(){const ve=this._storage.getItem("id_token_claims_obj");return ve?JSON.parse(ve):null}getGrantedScopes(){const ve=this._storage.getItem("granted_scopes");return ve?JSON.parse(ve):null}getIdToken(){return this._storage?this._storage.getItem("id_token"):null}padBase64(ve){for(;ve.length%4!=0;)ve+="=";return ve}getAccessToken(){return this._storage?this._storage.getItem("access_token"):null}getRefreshToken(){return this._storage?this._storage.getItem("refresh_token"):null}getAccessTokenExpiration(){return this._storage.getItem("expires_at")?parseInt(this._storage.getItem("expires_at"),10):null}getAccessTokenStoredAt(){return parseInt(this._storage.getItem("access_token_stored_at"),10)}getIdTokenStoredAt(){return parseInt(this._storage.getItem("id_token_stored_at"),10)}getIdTokenExpiration(){return this._storage.getItem("id_token_expires_at")?parseInt(this._storage.getItem("id_token_expires_at"),10):null}hasValidAccessToken(){if(this.getAccessToken()){const ve=this._storage.getItem("expires_at"),we=this.dateTimeService.new();return!(ve&&parseInt(ve,10)-this.decreaseExpirationBySec=0&&null!==this._storage.getItem(ve)?JSON.parse(this._storage.getItem(ve)):null}authorizationHeader(){return"Bearer "+this.getAccessToken()}logOut(ve={},we=""){let at=!1;"boolean"==typeof ve&&(at=ve,ve={});const De=this.getIdToken();if(this._storage.removeItem("access_token"),this._storage.removeItem("id_token"),this._storage.removeItem("refresh_token"),this.saveNoncesInLocalStorage?(localStorage.removeItem("nonce"),localStorage.removeItem("PKCE_verifier")):(this._storage.removeItem("nonce"),this._storage.removeItem("PKCE_verifier")),this._storage.removeItem("expires_at"),this._storage.removeItem("id_token_claims_obj"),this._storage.removeItem("id_token_expires_at"),this._storage.removeItem("id_token_stored_at"),this._storage.removeItem("access_token_stored_at"),this._storage.removeItem("granted_scopes"),this._storage.removeItem("session_state"),this.config.customTokenParameters&&this.config.customTokenParameters.forEach(ke=>this._storage.removeItem(ke)),this.silentRefreshSubject=null,this.eventsSubject.next(new me("logout")),!this.logoutUrl||at)return;let je;if(!this.validateUrlForHttps(this.logoutUrl))throw new Error("logoutUrl must use HTTPS (with TLS), or config value for property 'requireHttps' must be set to 'false' and allow HTTP (without TLS).");if(this.logoutUrl.indexOf("{{")>-1)je=this.logoutUrl.replace(/\{\{id_token\}\}/,encodeURIComponent(De)).replace(/\{\{client_id\}\}/,encodeURIComponent(this.clientId));else{let ke=new b.HttpParams({encoder:new Me});De&&(ke=ke.set("id_token_hint",De));const Z=this.postLogoutRedirectUri||this.redirectUriAsPostLogoutRedirectUriFallback&&this.redirectUri||"";Z&&(ke=ke.set("post_logout_redirect_uri",Z),we&&(ke=ke.set("state",we)));for(let re in ve)ke=ke.set(re,ve[re]);je=this.logoutUrl+(this.logoutUrl.indexOf("?")>-1?"&":"?")+ke.toString()}this.config.openUri(je)}createAndSaveNonce(){const ve=this;return this.createNonce().then(function(we){return ve.saveNoncesInLocalStorage&&typeof window.localStorage<"u"?localStorage.setItem("nonce",we):ve._storage.setItem("nonce",we),we})}ngOnDestroy(){this.clearAccessTokenTimer(),this.clearIdTokenTimer(),this.removeSilentRefreshEventListener();const ve=this.document.getElementById(this.silentRefreshIFrameName);ve&&ve.remove(),this.stopSessionCheckTimer(),this.removeSessionCheckEventListener();const we=this.document.getElementById(this.sessionCheckIFrameName);we&&we.remove()}createNonce(){return new Promise(ve=>{if(this.rngUrl)throw new Error("createNonce with rng-web-api has not been implemented so far");const we="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-._~";let at=45,De="";const je=typeof self>"u"?null:self.crypto||self.msCrypto;if(je){let ke=new Uint8Array(at);je.getRandomValues(ke),ke.map||(ke.map=Array.prototype.map),ke=ke.map(Z=>we.charCodeAt(Z%66)),De=String.fromCharCode.apply(null,ke)}else for(;0"discovery_document_loaded"===at.type)).subscribe(at=>this.initCodeFlowInternal(ve,we))}initCodeFlowInternal(ve="",we={}){if(!this.validateUrlForHttps(this.loginUrl))throw new Error("loginUrl must use HTTPS (with TLS), or config value for property 'requireHttps' must be set to 'false' and allow HTTP (without TLS).");let at={},De=null;"string"==typeof we?De=we:"object"==typeof we&&(at=we),this.createLoginUrl(ve,De,null,!1,at).then(this.config.openUri).catch(je=>{console.error("Error in initAuthorizationCodeFlow"),console.error(je)})}createChallangeVerifierPairForPKCE(){var ve=this;return(0,n.Z)(function*(){if(!ve.crypto)throw new Error("PKCE support for code flow needs a CryptoHander. Did you import the OAuthModule using forRoot() ?");const we=yield ve.createNonce();return[Q(yield ve.crypto.calcHash(we,"sha-256")),we]})()}extractRecognizedCustomParameters(ve){let we=new Map;return this.config.customTokenParameters&&this.config.customTokenParameters.forEach(at=>{ve[at]&&we.set(at,JSON.stringify(ve[at]))}),we}revokeTokenAndLogout(ve={},we=!1){let at=this.revocationEndpoint,De=this.getAccessToken(),je=this.getRefreshToken();if(!De)return Promise.resolve();let ke=new b.HttpParams({encoder:new Me}),Z=(new b.HttpHeaders).set("Content-Type","application/x-www-form-urlencoded");if(this.useHttpBasicAuth){const re=btoa(`${this.clientId}:${this.dummyClientSecret}`);Z=Z.set("Authorization","Basic "+re)}if(this.useHttpBasicAuth||(ke=ke.set("client_id",this.clientId)),!this.useHttpBasicAuth&&this.dummyClientSecret&&(ke=ke.set("client_secret",this.dummyClientSecret)),this.customQueryParams)for(const re of Object.getOwnPropertyNames(this.customQueryParams))ke=ke.set(re,this.customQueryParams[re]);return new Promise((re,ce)=>{let Ee,it;if(De){let Rt=ke.set("token",De).set("token_type_hint","access_token");Ee=this.http.post(at,Rt,{headers:Z})}else Ee=(0,v.of)(null);if(je){let Rt=ke.set("token",je).set("token_type_hint","refresh_token");it=this.http.post(at,Rt,{headers:Z})}else it=(0,v.of)(null);we&&(Ee=Ee.pipe((0,w.K)(Rt=>0===Rt.status?(0,v.of)(null):(0,s._)(Rt))),it=it.pipe((0,w.K)(Rt=>0===Rt.status?(0,v.of)(null):(0,s._)(Rt)))),(0,l.a)([Ee,it]).subscribe(Rt=>{this.logOut(ve),re(Rt),this.logger.info("Token successfully revoked")},Rt=>{this.logger.error("Error revoking token",Rt),this.eventsSubject.next(new $("token_revoke_error",Rt)),ce(Rt)})})}clearLocationHash(){""!=location.hash&&(location.hash="")}}return Ue.\u0275fac=function(ve){return new(ve||Ue)(p.\u0275\u0275inject(p.NgZone),p.\u0275\u0275inject(b.HttpClient),p.\u0275\u0275inject(k,8),p.\u0275\u0275inject(Oe,8),p.\u0275\u0275inject(ue,8),p.\u0275\u0275inject(Be),p.\u0275\u0275inject(S),p.\u0275\u0275inject(Ce,8),p.\u0275\u0275inject(C.DOCUMENT),p.\u0275\u0275inject(R))},Ue.\u0275prov=p.\u0275\u0275defineInjectable({token:Ue,factory:Ue.\u0275fac}),Ue})();class Te{}class ct{handleError(We){return(0,s._)(We)}}let Lt=(()=>{class Ue{constructor(ve,we,at){this.oAuthService=ve,this.errorHandler=we,this.moduleConfig=at}checkUrl(ve){return this.moduleConfig.resourceServer.customUrlValidation?this.moduleConfig.resourceServer.customUrlValidation(ve):!this.moduleConfig.resourceServer.allowedUrls||!!this.moduleConfig.resourceServer.allowedUrls.find(we=>ve.toLowerCase().startsWith(we.toLowerCase()))}intercept(ve,we){const at=ve.url.toLowerCase();return this.moduleConfig&&this.moduleConfig.resourceServer&&this.checkUrl(at)?this.moduleConfig.resourceServer.sendAccessToken?(0,d.T)((0,v.of)(this.oAuthService.getAccessToken()).pipe((0,r.h)(je=>!!je)),this.oAuthService.events.pipe((0,r.h)(je=>"token_received"===je.type),(0,L.V)(this.oAuthService.waitForTokenInMsec||0),(0,w.K)(je=>(0,v.of)(null)),(0,M.U)(je=>this.oAuthService.getAccessToken()))).pipe((0,A.q)(1),(0,T.z)(je=>{if(je){const Z=ve.headers.set("Authorization","Bearer "+je);ve=ve.clone({headers:Z})}return we.handle(ve).pipe((0,w.K)(ke=>this.errorHandler.handleError(ke)))})):we.handle(ve).pipe((0,w.K)(je=>this.errorHandler.handleError(je))):we.handle(ve)}}return Ue.\u0275fac=function(ve){return new(ve||Ue)(p.\u0275\u0275inject(pe),p.\u0275\u0275inject(Te),p.\u0275\u0275inject(E,8))},Ue.\u0275prov=p.\u0275\u0275defineInjectable({token:Ue,factory:Ue.\u0275fac}),Ue})();function Dt(){return console}function Kt(){return typeof sessionStorage<"u"?sessionStorage:new F}function ze(Ue=null,We=O){return(0,p.makeEnvironmentProviders)([pe,Be,{provide:S,useFactory:Dt},{provide:k,useFactory:Kt},{provide:Oe,useClass:We},{provide:Ce,useClass:ie},{provide:Te,useClass:ct},{provide:E,useValue:Ue},{provide:b.HTTP_INTERCEPTORS,useClass:Lt,multi:!0},{provide:R,useClass:j}])}let yt=(()=>{class Ue{static forRoot(ve=null,we=O){return{ngModule:Ue,providers:[ze(ve,we)]}}}return Ue.\u0275fac=function(ve){return new(ve||Ue)},Ue.\u0275mod=p.\u0275\u0275defineNgModule({type:Ue}),Ue.\u0275inj=p.\u0275\u0275defineInjector({imports:[C.CommonModule]}),Ue})();class $t extends O{constructor(){super(),console.error("PLEASE READ THIS CAREFULLY:\n\nBeginning with angular-oauth2-oidc version 9, the JwksValidationHandler\nhas been moved to an library of its own. If you need it for implementing\nOAuth2/OIDC **implicit flow**, please install it using npm:\n\n npm i angular-oauth2-oidc-jwks --save\n\nAfter that, you can import it into your application:\n\n import { JwksValidationHandler } from 'angular-oauth2-oidc-jwks';\n\nPlease note, that this dependency is not needed for the **code flow**,\nwhich is nowadays the **recommented** one for single page applications.\nThis also results in smaller bundle sizes.\n")}}const Yt=new p.InjectionToken("AUTH_CONFIG")},9949:(Se,X,g)=>{"use strict";g.r(X),g.d(X,{HIGHLIGHT_OPTIONS:()=>_,Highlight:()=>O,HighlightJS:()=>T,HighlightLoader:()=>L,HighlightModule:()=>E});var n=g(5879),p=g(6814),C=g(5619),b=g(2181),o=g(8180),v=g(4664),a=g(9397),c=g(6232),s=g(6306),l=g(8504),d=g(9278),r=g(7398),u=g(2459),h=g(927),m=g(6593);const _=new n.InjectionToken("HIGHLIGHT_OPTIONS");let M;let L=(()=>{class D{constructor(j,N,S){this.doc=j,this.platformId=N,this._options=S,this._ready=new C.X(null),this.ready=this._ready.asObservable().pipe((0,b.h)(k=>!!k),(0,o.q)(1)),(0,p.isPlatformBrowser)(N)&&(j.defaultView.hljs?this._ready.next(j.defaultView.hljs):(this._loadLibrary().pipe((0,v.w)(k=>this._options&&this._options.lineNumbersLoader?(j.defaultView.hljs=k,this.loadLineNumbers().pipe((0,a.b)(F=>{F.activateLineNumbers(),this._ready.next(k)}))):(this._ready.next(k),c.E)),(0,s.K)(k=>(console.error("[HLJS] ",k),c.E))).subscribe(),this._options?.themePath&&this.loadTheme(this._options.themePath)))}_loadLibrary(){if(this._options){if(this._options.fullLibraryLoader&&this._options.coreLibraryLoader)return(0,l._)(()=>"The full library and the core library were imported, only one of them should be imported!");if(this._options.fullLibraryLoader&&this._options.languages)return(0,l._)(()=>"The highlighting languages were imported they are not needed!");if(this._options.coreLibraryLoader&&!this._options.languages)return(0,l._)(()=>"The highlighting languages were not imported!");if(!this._options.coreLibraryLoader&&this._options.languages)return(0,l._)(()=>"The core library was not imported!");if(this._options.fullLibraryLoader)return this.loadFullLibrary();if(this._options.coreLibraryLoader&&this._options.languages&&Object.keys(this._options.languages).length)return this.loadCoreLibrary().pipe((0,v.w)(j=>this._loadLanguages(j)))}return(0,l._)(()=>"Highlight.js library was not imported!")}_loadLanguages(j){const N=Object.entries(this._options.languages).map(([S,k])=>A(k()).pipe((0,a.b)(F=>j.registerLanguage(S,F))));return(0,d.$)(...N).pipe((0,r.U)(()=>j))}loadCoreLibrary(){return A(this._options.coreLibraryLoader())}loadFullLibrary(){return A(this._options.fullLibraryLoader())}loadLineNumbers(){return(0,u.D)(this._options.lineNumbersLoader())}setTheme(j){(0,p.isPlatformBrowser)(this.platformId)&&(this._themeLinkElement?this._themeLinkElement.href=j:this.loadTheme(j))}loadTheme(j){this._themeLinkElement=this.doc.createElement("link"),this._themeLinkElement.href=j,this._themeLinkElement.type="text/css",this._themeLinkElement.rel="stylesheet",this._themeLinkElement.media="screen,print",this.doc.head.appendChild(this._themeLinkElement)}}return D.\u0275fac=function(j){return new(j||D)(n.\u0275\u0275inject(p.DOCUMENT),n.\u0275\u0275inject(n.PLATFORM_ID),n.\u0275\u0275inject(_,8))},D.\u0275prov=n.\u0275\u0275defineInjectable({token:D,factory:D.\u0275fac,providedIn:"root"}),D})();const A=D=>(0,u.D)(D).pipe((0,b.h)(R=>!!R?.default),(0,r.U)(R=>R.default));let T=(()=>{class D{get hljs(){return this._hljs}constructor(j,N){this._loader=j,this._hljs=null,j.ready.subscribe(S=>{this._hljs=S,N&&N.config&&(S.configure(N.config),S.listLanguages().length<1&&console.error("[HighlightJS]: No languages were registered!"))})}highlight(j,{language:N,ignoreIllegals:S}){return this._loader.ready.pipe((0,r.U)(k=>k.highlight(j,{language:N,ignoreIllegals:S})))}highlightAuto(j,N){return this._loader.ready.pipe((0,r.U)(S=>S.highlightAuto(j,N)))}highlightElement(j){return this._loader.ready.pipe((0,r.U)(N=>N.highlightElement(j)))}highlightAll(){return this._loader.ready.pipe((0,r.U)(j=>j.highlightAll()))}configure(j){return this._loader.ready.pipe((0,r.U)(N=>N.configure(j)))}registerLanguage(j,N){return this._loader.ready.pipe((0,a.b)(S=>S.registerLanguage(j,N)))}unregisterLanguage(j){return this._loader.ready.pipe((0,a.b)(N=>N.unregisterLanguage(j)))}registerAliases(j,{languageName:N}){return this._loader.ready.pipe((0,a.b)(S=>S.registerAliases(j,{languageName:N})))}listLanguages(){return this._loader.ready.pipe((0,r.U)(j=>j.listLanguages()))}getLanguage(j){return this._loader.ready.pipe((0,r.U)(N=>N.getLanguage(j)))}safeMode(){return this._loader.ready.pipe((0,r.U)(j=>j.safeMode()))}debugMode(){return this._loader.ready.pipe((0,r.U)(j=>j.debugMode()))}lineNumbersBlock(j){return this._loader.ready.pipe((0,b.h)(N=>!!N.lineNumbersBlock),(0,a.b)(N=>N.lineNumbersBlock(j)))}}return D.\u0275fac=function(j){return new(j||D)(n.\u0275\u0275inject(L),n.\u0275\u0275inject(_,8))},D.\u0275prov=n.\u0275\u0275defineInjectable({token:D,factory:D.\u0275fac,providedIn:"root"}),D})(),O=(()=>{class D{constructor(j,N,S,k,F){this._hljs=N,this._sanitizer=S,this.platformId=k,this._options=F,this.highlighted=new n.EventEmitter,this._nativeElement=j.nativeElement}ngOnChanges(j){(0,p.isPlatformBrowser)(this.platformId)&&null!==j?.code?.currentValue&&j.code.currentValue!==j.code.previousValue&&(this.code?this.highlightElement(this.code,this.languages):this.setTextContent(""))}highlightElement(j,N){this.setTextContent(j),this._hljs.highlightAuto(j,N).subscribe(S=>{this.setInnerHTML(S?.value),this.lineNumbers&&this._options&&this._options.lineNumbersLoader&&this.addLineNumbers(),this.highlighted.emit(S)})}addLineNumbers(){this.destroyLineNumbersObserver(),h.Z.schedule(()=>{this._hljs.lineNumbersBlock(this._nativeElement).subscribe(),this._lineNumbersObs=new MutationObserver(()=>{this._nativeElement.firstElementChild&&"TABLE"===this._nativeElement.firstElementChild.tagName.toUpperCase()&&this._nativeElement.classList.add("hljs-line-numbers"),this.destroyLineNumbersObserver()}),this._lineNumbersObs.observe(this._nativeElement,{childList:!0})})}destroyLineNumbersObserver(){this._lineNumbersObs&&(this._lineNumbersObs.disconnect(),this._lineNumbersObs=null)}setTextContent(j){h.Z.schedule(()=>this._nativeElement.textContent=j)}setInnerHTML(j){h.Z.schedule(()=>this._nativeElement.innerHTML=function w(D){return function x(){if(!M)try{M=window?.trustedTypes?.createPolicy("ngx-highlightjs",{createHTML:D=>D})}catch{}return M}()?.createHTML(D)||D}(this._sanitizer.sanitize(n.SecurityContext.HTML,j)||""))}}return D.\u0275fac=function(j){return new(j||D)(n.\u0275\u0275directiveInject(n.ElementRef),n.\u0275\u0275directiveInject(T),n.\u0275\u0275directiveInject(m.DomSanitizer),n.\u0275\u0275directiveInject(n.PLATFORM_ID),n.\u0275\u0275directiveInject(_,8))},D.\u0275dir=n.\u0275\u0275defineDirective({type:D,selectors:[["","highlight",""]],hostVars:2,hostBindings:function(j,N){2&j&&n.\u0275\u0275classProp("hljs",!0)},inputs:{code:["highlight","code"],languages:"languages",lineNumbers:"lineNumbers"},outputs:{highlighted:"highlighted"},standalone:!0,features:[n.\u0275\u0275NgOnChangesFeature]}),D})(),E=(()=>{class D{}return D.\u0275fac=function(j){return new(j||D)},D.\u0275mod=n.\u0275\u0275defineNgModule({type:D}),D.\u0275inj=n.\u0275\u0275defineInjector({}),D})()},827:(Se,X,g)=>{"use strict";function o(P){let Re=P.length;for(;--Re>=0;)P[Re]=0}g.r(X),g.d(X,{Deflate:()=>uo,Inflate:()=>ws,constants:()=>Fa,default:()=>Ml,deflate:()=>ho,deflateRaw:()=>Er,gzip:()=>xl,inflate:()=>Es,inflateRaw:()=>Ds,ungzip:()=>Zs});const E=new Uint8Array([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0]),D=new Uint8Array([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13]),R=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7]),j=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),S=new Array(576);o(S);const k=new Array(60);o(k);const F=new Array(512);o(F);const Y=new Array(256);o(Y);const se=new Array(29);o(se);const ne=new Array(30);function me(P,Re,H,Ze,gt){this.static_tree=P,this.extra_bits=Re,this.extra_base=H,this.elems=Ze,this.max_length=gt,this.has_stree=P&&P.length}let $,q,Q;function ue(P,Re){this.dyn_tree=P,this.max_code=0,this.stat_desc=Re}o(ne);const Me=P=>P<256?F[P]:F[256+(P>>>7)],Oe=(P,Re)=>{P.pending_buf[P.pending++]=255&Re,P.pending_buf[P.pending++]=Re>>>8&255},Xe=(P,Re,H)=>{P.bi_valid>16-H?(P.bi_buf|=Re<>16-P.bi_valid,P.bi_valid+=H-16):(P.bi_buf|=Re<{Xe(P,H[2*Re],H[2*Re+1])},$e=(P,Re)=>{let H=0;do{H|=1&P,P>>>=1,H<<=1}while(--Re>0);return H>>>1},tt=(P,Re,H)=>{const Ze=new Array(16);let ut,Xt,gt=0;for(ut=1;ut<=15;ut++)gt=gt+H[ut-1]<<1,Ze[ut]=gt;for(Xt=0;Xt<=Re;Xt++){let Vt=P[2*Xt+1];0!==Vt&&(P[2*Xt]=$e(Ze[Vt]++,Vt))}},bt=P=>{let Re;for(Re=0;Re<286;Re++)P.dyn_ltree[2*Re]=0;for(Re=0;Re<30;Re++)P.dyn_dtree[2*Re]=0;for(Re=0;Re<19;Re++)P.bl_tree[2*Re]=0;P.dyn_ltree[512]=1,P.opt_len=P.static_len=0,P.sym_next=P.matches=0},xt=P=>{P.bi_valid>8?Oe(P,P.bi_buf):P.bi_valid>0&&(P.pending_buf[P.pending++]=P.bi_buf),P.bi_buf=0,P.bi_valid=0},nt=(P,Re,H,Ze)=>{const gt=2*Re,ut=2*H;return P[gt]{const Ze=P.heap[H];let gt=H<<1;for(;gt<=P.heap_len&&(gt{let Ze,gt,Xt,Vt,ut=0;if(0!==P.sym_next)do{Ze=255&P.pending_buf[P.sym_buf+ut++],Ze+=(255&P.pending_buf[P.sym_buf+ut++])<<8,gt=P.pending_buf[P.sym_buf+ut++],0===Ze?Be(P,gt,Re):(Xt=Y[gt],Be(P,Xt+256+1,Re),Vt=E[Xt],0!==Vt&&(gt-=se[Xt],Xe(P,gt,Vt)),Ze--,Xt=Me(Ze),Be(P,Xt,H),Vt=D[Xt],0!==Vt&&(Ze-=ne[Xt],Xe(P,Ze,Vt)))}while(ut{const H=Re.dyn_tree,Ze=Re.stat_desc.static_tree,gt=Re.stat_desc.has_stree,ut=Re.stat_desc.elems;let Xt,Vt,Ot,Hn=-1;for(P.heap_len=0,P.heap_max=573,Xt=0;Xt>1;Xt>=1;Xt--)ot(P,H,Xt);Ot=ut;do{Xt=P.heap[1],P.heap[1]=P.heap[P.heap_len--],ot(P,H,1),Vt=P.heap[1],P.heap[--P.heap_max]=Xt,P.heap[--P.heap_max]=Vt,H[2*Ot]=H[2*Xt]+H[2*Vt],P.depth[Ot]=(P.depth[Xt]>=P.depth[Vt]?P.depth[Xt]:P.depth[Vt])+1,H[2*Xt+1]=H[2*Vt+1]=Ot,P.heap[1]=Ot++,ot(P,H,1)}while(P.heap_len>=2);P.heap[--P.heap_max]=P.heap[1],((P,Re)=>{const H=Re.dyn_tree,Ze=Re.max_code,gt=Re.stat_desc.static_tree,ut=Re.stat_desc.has_stree,Xt=Re.stat_desc.extra_bits,Vt=Re.stat_desc.extra_base,Hn=Re.stat_desc.max_length;let Ot,Jt,Ui,Fn,bn,qn,nr=0;for(Fn=0;Fn<=15;Fn++)P.bl_count[Fn]=0;for(H[2*P.heap[P.heap_max]+1]=0,Ot=P.heap_max+1;Ot<573;Ot++)Jt=P.heap[Ot],Fn=H[2*H[2*Jt+1]+1]+1,Fn>Hn&&(Fn=Hn,nr++),H[2*Jt+1]=Fn,!(Jt>Ze)&&(P.bl_count[Fn]++,bn=0,Jt>=Vt&&(bn=Xt[Jt-Vt]),qn=H[2*Jt],P.opt_len+=qn*(Fn+bn),ut&&(P.static_len+=qn*(gt[2*Jt+1]+bn)));if(0!==nr){do{for(Fn=Hn-1;0===P.bl_count[Fn];)Fn--;P.bl_count[Fn]--,P.bl_count[Fn+1]+=2,P.bl_count[Hn]--,nr-=2}while(nr>0);for(Fn=Hn;0!==Fn;Fn--)for(Jt=P.bl_count[Fn];0!==Jt;)Ui=P.heap[--Ot],!(Ui>Ze)&&(H[2*Ui+1]!==Fn&&(P.opt_len+=(Fn-H[2*Ui+1])*H[2*Ui],H[2*Ui+1]=Fn),Jt--)}})(P,Re),tt(H,Hn,P.bl_count)},J=(P,Re,H)=>{let Ze,ut,gt=-1,Xt=Re[1],Vt=0,Hn=7,Ot=4;for(0===Xt&&(Hn=138,Ot=3),Re[2*(H+1)+1]=65535,Ze=0;Ze<=H;Ze++)ut=Xt,Xt=Re[2*(Ze+1)+1],!(++Vt{let Ze,ut,gt=-1,Xt=Re[1],Vt=0,Hn=7,Ot=4;for(0===Xt&&(Hn=138,Ot=3),Ze=0;Ze<=H;Ze++)if(ut=Xt,Xt=Re[2*(Ze+1)+1],!(++Vt{Xe(P,0+(Ze?1:0),3),xt(P),Oe(P,H),Oe(P,~H),H&&P.pending_buf.set(P.window.subarray(Re,Re+H),P.pending),P.pending+=H};var Ue={_tr_init:P=>{pe||((()=>{let P,Re,H,Ze,gt;const ut=new Array(16);for(H=0,Ze=0;Ze<28;Ze++)for(se[Ze]=H,P=0;P<1<>=7;Ze<30;Ze++)for(ne[Ze]=gt<<7,P=0;P<1<{let gt,ut,Xt=0;P.level>0?(2===P.strm.data_type&&(P.strm.data_type=(P=>{let H,Re=4093624447;for(H=0;H<=31;H++,Re>>>=1)if(1&Re&&0!==P.dyn_ltree[2*H])return 0;if(0!==P.dyn_ltree[18]||0!==P.dyn_ltree[20]||0!==P.dyn_ltree[26])return 1;for(H=32;H<256;H++)if(0!==P.dyn_ltree[2*H])return 1;return 0})(P)),rt(P,P.l_desc),rt(P,P.d_desc),Xt=(P=>{let Re;for(J(P,P.dyn_ltree,P.l_desc.max_code),J(P,P.dyn_dtree,P.d_desc.max_code),rt(P,P.bl_desc),Re=18;Re>=3&&0===P.bl_tree[2*j[Re]+1];Re--);return P.opt_len+=3*(Re+1)+5+5+4,Re})(P),gt=P.opt_len+3+7>>>3,ut=P.static_len+3+7>>>3,ut<=gt&&(gt=ut)):gt=ut=H+5,H+4<=gt&&-1!==Re?ct(P,Re,H,Ze):4===P.strategy||ut===gt?(Xe(P,2+(Ze?1:0),3),vt(P,S,k)):(Xe(P,4+(Ze?1:0),3),((P,Re,H,Ze)=>{let gt;for(Xe(P,Re-257,5),Xe(P,H-1,5),Xe(P,Ze-4,4),gt=0;gt(P.pending_buf[P.sym_buf+P.sym_next++]=Re,P.pending_buf[P.sym_buf+P.sym_next++]=Re>>8,P.pending_buf[P.sym_buf+P.sym_next++]=H,0===Re?P.dyn_ltree[2*H]++:(P.matches++,Re--,P.dyn_ltree[2*(Y[H]+256+1)]++,P.dyn_dtree[2*Me(Re)]++),P.sym_next===P.sym_end),_tr_align:P=>{Xe(P,2,3),Be(P,256,S),(P=>{16===P.bi_valid?(Oe(P,P.bi_buf),P.bi_buf=0,P.bi_valid=0):P.bi_valid>=8&&(P.pending_buf[P.pending++]=255&P.bi_buf,P.bi_buf>>=8,P.bi_valid-=8)})(P)}},ve=(P,Re,H,Ze)=>{let gt=65535&P|0,ut=P>>>16&65535|0,Xt=0;for(;0!==H;){Xt=H>2e3?2e3:H,H-=Xt;do{gt=gt+Re[Ze++]|0,ut=ut+gt|0}while(--Xt);gt%=65521,ut%=65521}return gt|ut<<16|0};const at=new Uint32Array((()=>{let P,Re=[];for(var H=0;H<256;H++){P=H;for(var Ze=0;Ze<8;Ze++)P=1&P?3988292384^P>>>1:P>>>1;Re[H]=P}return Re})());var je=(P,Re,H,Ze)=>{const gt=at,ut=Ze+H;P^=-1;for(let Xt=Ze;Xt>>8^gt[255&(P^Re[Xt])];return-1^P},ke={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"},Z={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8};const{_tr_init:re,_tr_stored_block:ce,_tr_flush_block:Ee,_tr_tally:it,_tr_align:Rt}=Ue,{Z_NO_FLUSH:Ye,Z_PARTIAL_FLUSH:qe,Z_FULL_FLUSH:Ne,Z_FINISH:dt,Z_BLOCK:At,Z_OK:tn,Z_STREAM_END:wn,Z_STREAM_ERROR:Tn,Z_DATA_ERROR:Sn,Z_BUF_ERROR:Mn,Z_DEFAULT_COMPRESSION:Ci,Z_FILTERED:di,Z_HUFFMAN_ONLY:Li,Z_RLE:Qi,Z_FIXED:wt,Z_DEFAULT_STRATEGY:mt,Z_UNKNOWN:pt,Z_DEFLATED:qt}=Z,An=262,It=(P,Re)=>(P.msg=ke[Re],Re),zt=P=>2*P-(P>4?9:0),an=P=>{let Re=P.length;for(;--Re>=0;)P[Re]=0},gn=P=>{let Re,H,Ze,gt=P.w_size;Re=P.hash_size,Ze=Re;do{H=P.head[--Ze],P.head[Ze]=H>=gt?H-gt:0}while(--Re);Re=gt,Ze=Re;do{H=P.prev[--Ze],P.prev[Ze]=H>=gt?H-gt:0}while(--Re)};let Jn=(P,Re,H)=>(Re<{const Re=P.state;let H=Re.pending;H>P.avail_out&&(H=P.avail_out),0!==H&&(P.output.set(Re.pending_buf.subarray(Re.pending_out,Re.pending_out+H),P.next_out),P.next_out+=H,Re.pending_out+=H,P.total_out+=H,P.avail_out-=H,Re.pending-=H,0===Re.pending&&(Re.pending_out=0))},kn=(P,Re)=>{Ee(P,P.block_start>=0?P.block_start:-1,P.strstart-P.block_start,Re),P.block_start=P.strstart,Nn(P.strm)},Un=(P,Re)=>{P.pending_buf[P.pending++]=Re},vi=(P,Re)=>{P.pending_buf[P.pending++]=Re>>>8&255,P.pending_buf[P.pending++]=255&Re},$i=(P,Re,H,Ze)=>{let gt=P.avail_in;return gt>Ze&&(gt=Ze),0===gt?0:(P.avail_in-=gt,Re.set(P.input.subarray(P.next_in,P.next_in+gt),H),1===P.state.wrap?P.adler=ve(P.adler,Re,gt,H):2===P.state.wrap&&(P.adler=je(P.adler,Re,gt,H)),P.next_in+=gt,P.total_in+=gt,gt)},er=(P,Re)=>{let gt,ut,H=P.max_chain_length,Ze=P.strstart,Xt=P.prev_length,Vt=P.nice_match;const Hn=P.strstart>P.w_size-An?P.strstart-(P.w_size-An):0,Ot=P.window,Jt=P.w_mask,Ui=P.prev,Fn=P.strstart+258;let bn=Ot[Ze+Xt-1],qn=Ot[Ze+Xt];P.prev_length>=P.good_match&&(H>>=2),Vt>P.lookahead&&(Vt=P.lookahead);do{if(gt=Re,Ot[gt+Xt]===qn&&Ot[gt+Xt-1]===bn&&Ot[gt]===Ot[Ze]&&Ot[++gt]===Ot[Ze+1]){Ze+=2,gt++;do{}while(Ot[++Ze]===Ot[++gt]&&Ot[++Ze]===Ot[++gt]&&Ot[++Ze]===Ot[++gt]&&Ot[++Ze]===Ot[++gt]&&Ot[++Ze]===Ot[++gt]&&Ot[++Ze]===Ot[++gt]&&Ot[++Ze]===Ot[++gt]&&Ot[++Ze]===Ot[++gt]&&ZeXt){if(P.match_start=Re,Xt=ut,ut>=Vt)break;bn=Ot[Ze+Xt-1],qn=Ot[Ze+Xt]}}}while((Re=Ui[Re&Jt])>Hn&&0!=--H);return Xt<=P.lookahead?Xt:P.lookahead},fn=P=>{const Re=P.w_size;let H,Ze,gt;do{if(Ze=P.window_size-P.lookahead-P.strstart,P.strstart>=Re+(Re-An)&&(P.window.set(P.window.subarray(Re,Re+Re-Ze),0),P.match_start-=Re,P.strstart-=Re,P.block_start-=Re,P.insert>P.strstart&&(P.insert=P.strstart),gn(P),Ze+=Re),0===P.strm.avail_in)break;if(H=$i(P.strm,P.window,P.strstart+P.lookahead,Ze),P.lookahead+=H,P.lookahead+P.insert>=3)for(gt=P.strstart-P.insert,P.ins_h=P.window[gt],P.ins_h=Jn(P,P.ins_h,P.window[gt+1]);P.insert&&(P.ins_h=Jn(P,P.ins_h,P.window[gt+3-1]),P.prev[gt&P.w_mask]=P.head[P.ins_h],P.head[P.ins_h]=gt,gt++,P.insert--,!(P.lookahead+P.insert<3)););}while(P.lookahead{let Ze,gt,ut,H=P.pending_buf_size-5>P.w_size?P.w_size:P.pending_buf_size-5,Xt=0,Vt=P.strm.avail_in;do{if(Ze=65535,ut=P.bi_valid+42>>3,P.strm.avail_outgt+P.strm.avail_in&&(Ze=gt+P.strm.avail_in),Ze>ut&&(Ze=ut),Ze>8,P.pending_buf[P.pending-2]=~Ze,P.pending_buf[P.pending-1]=~Ze>>8,Nn(P.strm),gt&&(gt>Ze&&(gt=Ze),P.strm.output.set(P.window.subarray(P.block_start,P.block_start+gt),P.strm.next_out),P.strm.next_out+=gt,P.strm.avail_out-=gt,P.strm.total_out+=gt,P.block_start+=gt,Ze-=gt),Ze&&($i(P.strm,P.strm.output,P.strm.next_out,Ze),P.strm.next_out+=Ze,P.strm.avail_out-=Ze,P.strm.total_out+=Ze)}while(0===Xt);return Vt-=P.strm.avail_in,Vt&&(Vt>=P.w_size?(P.matches=2,P.window.set(P.strm.input.subarray(P.strm.next_in-P.w_size,P.strm.next_in),0),P.strstart=P.w_size,P.insert=P.strstart):(P.window_size-P.strstart<=Vt&&(P.strstart-=P.w_size,P.window.set(P.window.subarray(P.w_size,P.w_size+P.strstart),0),P.matches<2&&P.matches++,P.insert>P.strstart&&(P.insert=P.strstart)),P.window.set(P.strm.input.subarray(P.strm.next_in-Vt,P.strm.next_in),P.strstart),P.strstart+=Vt,P.insert+=Vt>P.w_size-P.insert?P.w_size-P.insert:Vt),P.block_start=P.strstart),P.high_waterut&&P.block_start>=P.w_size&&(P.block_start-=P.w_size,P.strstart-=P.w_size,P.window.set(P.window.subarray(P.w_size,P.w_size+P.strstart),0),P.matches<2&&P.matches++,ut+=P.w_size,P.insert>P.strstart&&(P.insert=P.strstart)),ut>P.strm.avail_in&&(ut=P.strm.avail_in),ut&&($i(P.strm,P.window,P.strstart,ut),P.strstart+=ut,P.insert+=ut>P.w_size-P.insert?P.w_size-P.insert:ut),P.high_water>3,ut=P.pending_buf_size-ut>65535?65535:P.pending_buf_size-ut,H=ut>P.w_size?P.w_size:ut,gt=P.strstart-P.block_start,(gt>=H||(gt||Re===dt)&&Re!==Ye&&0===P.strm.avail_in&><=ut)&&(Ze=gt>ut?ut:gt,Xt=Re===dt&&0===P.strm.avail_in&&Ze===gt?1:0,ce(P,P.block_start,Ze,Xt),P.block_start+=Ze,Nn(P.strm)),Xt?3:1)},rn=(P,Re)=>{let H,Ze;for(;;){if(P.lookahead=3&&(P.ins_h=Jn(P,P.ins_h,P.window[P.strstart+3-1]),H=P.prev[P.strstart&P.w_mask]=P.head[P.ins_h],P.head[P.ins_h]=P.strstart),0!==H&&P.strstart-H<=P.w_size-An&&(P.match_length=er(P,H)),P.match_length>=3)if(Ze=it(P,P.strstart-P.match_start,P.match_length-3),P.lookahead-=P.match_length,P.match_length<=P.max_lazy_match&&P.lookahead>=3){P.match_length--;do{P.strstart++,P.ins_h=Jn(P,P.ins_h,P.window[P.strstart+3-1]),H=P.prev[P.strstart&P.w_mask]=P.head[P.ins_h],P.head[P.ins_h]=P.strstart}while(0!=--P.match_length);P.strstart++}else P.strstart+=P.match_length,P.match_length=0,P.ins_h=P.window[P.strstart],P.ins_h=Jn(P,P.ins_h,P.window[P.strstart+1]);else Ze=it(P,0,P.window[P.strstart]),P.lookahead--,P.strstart++;if(Ze&&(kn(P,!1),0===P.strm.avail_out))return 1}return P.insert=P.strstart<2?P.strstart:2,Re===dt?(kn(P,!0),0===P.strm.avail_out?3:4):P.sym_next&&(kn(P,!1),0===P.strm.avail_out)?1:2},xn=(P,Re)=>{let H,Ze,gt;for(;;){if(P.lookahead=3&&(P.ins_h=Jn(P,P.ins_h,P.window[P.strstart+3-1]),H=P.prev[P.strstart&P.w_mask]=P.head[P.ins_h],P.head[P.ins_h]=P.strstart),P.prev_length=P.match_length,P.prev_match=P.match_start,P.match_length=2,0!==H&&P.prev_length4096)&&(P.match_length=2)),P.prev_length>=3&&P.match_length<=P.prev_length){gt=P.strstart+P.lookahead-3,Ze=it(P,P.strstart-1-P.prev_match,P.prev_length-3),P.lookahead-=P.prev_length-1,P.prev_length-=2;do{++P.strstart<=gt&&(P.ins_h=Jn(P,P.ins_h,P.window[P.strstart+3-1]),H=P.prev[P.strstart&P.w_mask]=P.head[P.ins_h],P.head[P.ins_h]=P.strstart)}while(0!=--P.prev_length);if(P.match_available=0,P.match_length=2,P.strstart++,Ze&&(kn(P,!1),0===P.strm.avail_out))return 1}else if(P.match_available){if(Ze=it(P,0,P.window[P.strstart-1]),Ze&&kn(P,!1),P.strstart++,P.lookahead--,0===P.strm.avail_out)return 1}else P.match_available=1,P.strstart++,P.lookahead--}return P.match_available&&(Ze=it(P,0,P.window[P.strstart-1]),P.match_available=0),P.insert=P.strstart<2?P.strstart:2,Re===dt?(kn(P,!0),0===P.strm.avail_out?3:4):P.sym_next&&(kn(P,!1),0===P.strm.avail_out)?1:2};function zi(P,Re,H,Ze,gt){this.good_length=P,this.max_lazy=Re,this.nice_length=H,this.max_chain=Ze,this.func=gt}const xi=[new zi(0,0,0,0,yn),new zi(4,4,8,4,rn),new zi(4,5,16,8,rn),new zi(4,6,32,32,rn),new zi(4,4,16,16,xn),new zi(8,16,32,32,xn),new zi(8,16,128,128,xn),new zi(8,32,128,256,xn),new zi(32,128,258,1024,xn),new zi(32,258,258,4096,xn)];function gi(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=qt,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new Uint16Array(1146),this.dyn_dtree=new Uint16Array(122),this.bl_tree=new Uint16Array(78),an(this.dyn_ltree),an(this.dyn_dtree),an(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new Uint16Array(16),this.heap=new Uint16Array(573),an(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new Uint16Array(573),an(this.depth),this.sym_buf=0,this.lit_bufsize=0,this.sym_next=0,this.sym_end=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}const Ke=P=>{if(!P)return 1;const Re=P.state;return!Re||Re.strm!==P||42!==Re.status&&57!==Re.status&&69!==Re.status&&73!==Re.status&&91!==Re.status&&103!==Re.status&&113!==Re.status&&666!==Re.status?1:0},kt=P=>{if(Ke(P))return It(P,Tn);P.total_in=P.total_out=0,P.data_type=pt;const Re=P.state;return Re.pending=0,Re.pending_out=0,Re.wrap<0&&(Re.wrap=-Re.wrap),Re.status=2===Re.wrap?57:Re.wrap?42:113,P.adler=2===Re.wrap?0:1,Re.last_flush=-2,re(Re),tn},U=P=>{const Re=kt(P);return Re===tn&&(P=>{P.window_size=2*P.w_size,an(P.head),P.max_lazy_match=xi[P.level].max_lazy,P.good_match=xi[P.level].good_length,P.nice_match=xi[P.level].nice_length,P.max_chain_length=xi[P.level].max_chain,P.strstart=0,P.block_start=0,P.lookahead=0,P.insert=0,P.match_length=P.prev_length=2,P.match_available=0,P.ins_h=0})(P.state),Re},Pe=(P,Re,H,Ze,gt,ut)=>{if(!P)return Tn;let Xt=1;if(Re===Ci&&(Re=6),Ze<0?(Xt=0,Ze=-Ze):Ze>15&&(Xt=2,Ze-=16),gt<1||gt>9||H!==qt||Ze<8||Ze>15||Re<0||Re>9||ut<0||ut>wt||8===Ze&&1!==Xt)return It(P,Tn);8===Ze&&(Ze=9);const Vt=new gi;return P.state=Vt,Vt.strm=P,Vt.status=42,Vt.wrap=Xt,Vt.gzhead=null,Vt.w_bits=Ze,Vt.w_size=1<Pe(P,Re,qt,15,8,mt),deflateInit2:Pe,deflateReset:U,deflateResetKeep:kt,deflateSetHeader:(P,Re)=>Ke(P)||2!==P.state.wrap?Tn:(P.state.gzhead=Re,tn),deflate:(P,Re)=>{if(Ke(P)||Re>At||Re<0)return P?It(P,Tn):Tn;const H=P.state;if(!P.output||0!==P.avail_in&&!P.input||666===H.status&&Re!==dt)return It(P,0===P.avail_out?Mn:Tn);const Ze=H.last_flush;if(H.last_flush=Re,0!==H.pending){if(Nn(P),0===P.avail_out)return H.last_flush=-1,tn}else if(0===P.avail_in&&zt(Re)<=zt(Ze)&&Re!==dt)return It(P,Mn);if(666===H.status&&0!==P.avail_in)return It(P,Mn);if(42===H.status&&0===H.wrap&&(H.status=113),42===H.status){let gt=qt+(H.w_bits-8<<4)<<8,ut=-1;if(ut=H.strategy>=Li||H.level<2?0:H.level<6?1:6===H.level?2:3,gt|=ut<<6,0!==H.strstart&&(gt|=32),gt+=31-gt%31,vi(H,gt),0!==H.strstart&&(vi(H,P.adler>>>16),vi(H,65535&P.adler)),P.adler=1,H.status=113,Nn(P),0!==H.pending)return H.last_flush=-1,tn}if(57===H.status)if(P.adler=0,Un(H,31),Un(H,139),Un(H,8),H.gzhead)Un(H,(H.gzhead.text?1:0)+(H.gzhead.hcrc?2:0)+(H.gzhead.extra?4:0)+(H.gzhead.name?8:0)+(H.gzhead.comment?16:0)),Un(H,255&H.gzhead.time),Un(H,H.gzhead.time>>8&255),Un(H,H.gzhead.time>>16&255),Un(H,H.gzhead.time>>24&255),Un(H,9===H.level?2:H.strategy>=Li||H.level<2?4:0),Un(H,255&H.gzhead.os),H.gzhead.extra&&H.gzhead.extra.length&&(Un(H,255&H.gzhead.extra.length),Un(H,H.gzhead.extra.length>>8&255)),H.gzhead.hcrc&&(P.adler=je(P.adler,H.pending_buf,H.pending,0)),H.gzindex=0,H.status=69;else if(Un(H,0),Un(H,0),Un(H,0),Un(H,0),Un(H,0),Un(H,9===H.level?2:H.strategy>=Li||H.level<2?4:0),Un(H,3),H.status=113,Nn(P),0!==H.pending)return H.last_flush=-1,tn;if(69===H.status){if(H.gzhead.extra){let gt=H.pending,ut=(65535&H.gzhead.extra.length)-H.gzindex;for(;H.pending+ut>H.pending_buf_size;){let Vt=H.pending_buf_size-H.pending;if(H.pending_buf.set(H.gzhead.extra.subarray(H.gzindex,H.gzindex+Vt),H.pending),H.pending=H.pending_buf_size,H.gzhead.hcrc&&H.pending>gt&&(P.adler=je(P.adler,H.pending_buf,H.pending-gt,gt)),H.gzindex+=Vt,Nn(P),0!==H.pending)return H.last_flush=-1,tn;gt=0,ut-=Vt}let Xt=new Uint8Array(H.gzhead.extra);H.pending_buf.set(Xt.subarray(H.gzindex,H.gzindex+ut),H.pending),H.pending+=ut,H.gzhead.hcrc&&H.pending>gt&&(P.adler=je(P.adler,H.pending_buf,H.pending-gt,gt)),H.gzindex=0}H.status=73}if(73===H.status){if(H.gzhead.name){let ut,gt=H.pending;do{if(H.pending===H.pending_buf_size){if(H.gzhead.hcrc&&H.pending>gt&&(P.adler=je(P.adler,H.pending_buf,H.pending-gt,gt)),Nn(P),0!==H.pending)return H.last_flush=-1,tn;gt=0}ut=H.gzindexgt&&(P.adler=je(P.adler,H.pending_buf,H.pending-gt,gt)),H.gzindex=0}H.status=91}if(91===H.status){if(H.gzhead.comment){let ut,gt=H.pending;do{if(H.pending===H.pending_buf_size){if(H.gzhead.hcrc&&H.pending>gt&&(P.adler=je(P.adler,H.pending_buf,H.pending-gt,gt)),Nn(P),0!==H.pending)return H.last_flush=-1,tn;gt=0}ut=H.gzindexgt&&(P.adler=je(P.adler,H.pending_buf,H.pending-gt,gt))}H.status=103}if(103===H.status){if(H.gzhead.hcrc){if(H.pending+2>H.pending_buf_size&&(Nn(P),0!==H.pending))return H.last_flush=-1,tn;Un(H,255&P.adler),Un(H,P.adler>>8&255),P.adler=0}if(H.status=113,Nn(P),0!==H.pending)return H.last_flush=-1,tn}if(0!==P.avail_in||0!==H.lookahead||Re!==Ye&&666!==H.status){let gt=0===H.level?yn(H,Re):H.strategy===Li?((P,Re)=>{let H;for(;;){if(0===P.lookahead&&(fn(P),0===P.lookahead)){if(Re===Ye)return 1;break}if(P.match_length=0,H=it(P,0,P.window[P.strstart]),P.lookahead--,P.strstart++,H&&(kn(P,!1),0===P.strm.avail_out))return 1}return P.insert=0,Re===dt?(kn(P,!0),0===P.strm.avail_out?3:4):P.sym_next&&(kn(P,!1),0===P.strm.avail_out)?1:2})(H,Re):H.strategy===Qi?((P,Re)=>{let H,Ze,gt,ut;const Xt=P.window;for(;;){if(P.lookahead<=258){if(fn(P),P.lookahead<=258&&Re===Ye)return 1;if(0===P.lookahead)break}if(P.match_length=0,P.lookahead>=3&&P.strstart>0&&(gt=P.strstart-1,Ze=Xt[gt],Ze===Xt[++gt]&&Ze===Xt[++gt]&&Ze===Xt[++gt])){ut=P.strstart+258;do{}while(Ze===Xt[++gt]&&Ze===Xt[++gt]&&Ze===Xt[++gt]&&Ze===Xt[++gt]&&Ze===Xt[++gt]&&Ze===Xt[++gt]&&Ze===Xt[++gt]&&Ze===Xt[++gt]&>P.lookahead&&(P.match_length=P.lookahead)}if(P.match_length>=3?(H=it(P,1,P.match_length-3),P.lookahead-=P.match_length,P.strstart+=P.match_length,P.match_length=0):(H=it(P,0,P.window[P.strstart]),P.lookahead--,P.strstart++),H&&(kn(P,!1),0===P.strm.avail_out))return 1}return P.insert=0,Re===dt?(kn(P,!0),0===P.strm.avail_out?3:4):P.sym_next&&(kn(P,!1),0===P.strm.avail_out)?1:2})(H,Re):xi[H.level].func(H,Re);if((3===gt||4===gt)&&(H.status=666),1===gt||3===gt)return 0===P.avail_out&&(H.last_flush=-1),tn;if(2===gt&&(Re===qe?Rt(H):Re!==At&&(ce(H,0,0,!1),Re===Ne&&(an(H.head),0===H.lookahead&&(H.strstart=0,H.block_start=0,H.insert=0))),Nn(P),0===P.avail_out))return H.last_flush=-1,tn}return Re!==dt?tn:H.wrap<=0?wn:(2===H.wrap?(Un(H,255&P.adler),Un(H,P.adler>>8&255),Un(H,P.adler>>16&255),Un(H,P.adler>>24&255),Un(H,255&P.total_in),Un(H,P.total_in>>8&255),Un(H,P.total_in>>16&255),Un(H,P.total_in>>24&255)):(vi(H,P.adler>>>16),vi(H,65535&P.adler)),Nn(P),H.wrap>0&&(H.wrap=-H.wrap),0!==H.pending?tn:wn)},deflateEnd:P=>{if(Ke(P))return Tn;const Re=P.state.status;return P.state=null,113===Re?It(P,Sn):tn},deflateSetDictionary:(P,Re)=>{let H=Re.length;if(Ke(P))return Tn;const Ze=P.state,gt=Ze.wrap;if(2===gt||1===gt&&42!==Ze.status||Ze.lookahead)return Tn;if(1===gt&&(P.adler=ve(P.adler,Re,H,0)),Ze.wrap=0,H>=Ze.w_size){0===gt&&(an(Ze.head),Ze.strstart=0,Ze.block_start=0,Ze.insert=0);let Hn=new Uint8Array(Ze.w_size);Hn.set(Re.subarray(H-Ze.w_size,H),0),Re=Hn,H=Ze.w_size}const ut=P.avail_in,Xt=P.next_in,Vt=P.input;for(P.avail_in=H,P.next_in=0,P.input=Re,fn(Ze);Ze.lookahead>=3;){let Hn=Ze.strstart,Ot=Ze.lookahead-2;do{Ze.ins_h=Jn(Ze,Ze.ins_h,Ze.window[Hn+3-1]),Ze.prev[Hn&Ze.w_mask]=Ze.head[Ze.ins_h],Ze.head[Ze.ins_h]=Hn,Hn++}while(--Ot);Ze.strstart=Hn,Ze.lookahead=2,fn(Ze)}return Ze.strstart+=Ze.lookahead,Ze.block_start=Ze.strstart,Ze.insert=Ze.lookahead,Ze.lookahead=0,Ze.match_length=Ze.prev_length=2,Ze.match_available=0,P.next_in=Xt,P.input=Vt,P.avail_in=ut,Ze.wrap=gt,tn},deflateInfo:"pako deflate (from Nodeca project)"};const Wt=(P,Re)=>Object.prototype.hasOwnProperty.call(P,Re);var _n={assign:function(P){const Re=Array.prototype.slice.call(arguments,1);for(;Re.length;){const H=Re.shift();if(H){if("object"!=typeof H)throw new TypeError(H+"must be non-object");for(const Ze in H)Wt(H,Ze)&&(P[Ze]=H[Ze])}}return P},flattenChunks:P=>{let Re=0;for(let Ze=0,gt=P.length;Ze=252?6:P>=248?5:P>=240?4:P>=224?3:P>=192?2:1;Vn[254]=Vn[254]=1;var Xn={string2buf:P=>{if("function"==typeof TextEncoder&&TextEncoder.prototype.encode)return(new TextEncoder).encode(P);let Re,H,Ze,gt,ut,Xt=P.length,Vt=0;for(gt=0;gt>>6,Re[ut++]=128|63&H):H<65536?(Re[ut++]=224|H>>>12,Re[ut++]=128|H>>>6&63,Re[ut++]=128|63&H):(Re[ut++]=240|H>>>18,Re[ut++]=128|H>>>12&63,Re[ut++]=128|H>>>6&63,Re[ut++]=128|63&H);return Re},buf2string:(P,Re)=>{const H=Re||P.length;if("function"==typeof TextDecoder&&TextDecoder.prototype.decode)return(new TextDecoder).decode(P.subarray(0,Re));let Ze,gt;const ut=new Array(2*H);for(gt=0,Ze=0;Ze4)ut[gt++]=65533,Ze+=Vt-1;else{for(Xt&=2===Vt?31:3===Vt?15:7;Vt>1&&Ze1?ut[gt++]=65533:Xt<65536?ut[gt++]=Xt:(Xt-=65536,ut[gt++]=55296|Xt>>10&1023,ut[gt++]=56320|1023&Xt)}}return((P,Re)=>{if(Re<65534&&P.subarray&&zn)return String.fromCharCode.apply(null,P.length===Re?P:P.subarray(0,Re));let H="";for(let Ze=0;Ze{(Re=Re||P.length)>P.length&&(Re=P.length);let H=Re-1;for(;H>=0&&128==(192&P[H]);)H--;return H<0||0===H?Re:H+Vn[P[H]]>Re?H:Re}},Fi=function ai(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0};const Xi=Object.prototype.toString,{Z_NO_FLUSH:Jr,Z_SYNC_FLUSH:Ho,Z_FULL_FLUSH:us,Z_FINISH:oo,Z_OK:Ir,Z_STREAM_END:zo,Z_DEFAULT_COMPRESSION:Wo,Z_DEFAULT_STRATEGY:Go,Z_DEFLATED:go}=Z;function Vr(P){this.options=_n.assign({level:Wo,method:go,chunkSize:16384,windowBits:15,memLevel:8,strategy:Go},P||{});let Re=this.options;Re.raw&&Re.windowBits>0?Re.windowBits=-Re.windowBits:Re.gzip&&Re.windowBits>0&&Re.windowBits<16&&(Re.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new Fi,this.strm.avail_out=0;let H=Ut.deflateInit2(this.strm,Re.level,Re.method,Re.windowBits,Re.memLevel,Re.strategy);if(H!==Ir)throw new Error(ke[H]);if(Re.header&&Ut.deflateSetHeader(this.strm,Re.header),Re.dictionary){let Ze;if(Ze="string"==typeof Re.dictionary?Xn.string2buf(Re.dictionary):"[object ArrayBuffer]"===Xi.call(Re.dictionary)?new Uint8Array(Re.dictionary):Re.dictionary,H=Ut.deflateSetDictionary(this.strm,Ze),H!==Ir)throw new Error(ke[H]);this._dict_set=!0}}function jr(P,Re){const H=new Vr(Re);if(H.push(P,!0),H.err)throw H.msg||ke[H.err];return H.result}Vr.prototype.push=function(P,Re){const H=this.strm,Ze=this.options.chunkSize;let gt,ut;if(this.ended)return!1;for(ut=Re===~~Re?Re:!0===Re?oo:Jr,H.input="string"==typeof P?Xn.string2buf(P):"[object ArrayBuffer]"===Xi.call(P)?new Uint8Array(P):P,H.next_in=0,H.avail_in=H.input.length;;)if(0===H.avail_out&&(H.output=new Uint8Array(Ze),H.next_out=0,H.avail_out=Ze),(ut===Ho||ut===us)&&H.avail_out<=6)this.onData(H.output.subarray(0,H.next_out)),H.avail_out=0;else{if(gt=Ut.deflate(H,ut),gt===zo)return H.next_out>0&&this.onData(H.output.subarray(0,H.next_out)),gt=Ut.deflateEnd(this.strm),this.onEnd(gt),this.ended=!0,gt===Ir;if(0!==H.avail_out){if(ut>0&&H.next_out>0)this.onData(H.output.subarray(0,H.next_out)),H.avail_out=0;else if(0===H.avail_in)break}else this.onData(H.output)}return!0},Vr.prototype.onData=function(P){this.chunks.push(P)},Vr.prototype.onEnd=function(P){P===Ir&&(this.result=_n.flattenChunks(this.chunks)),this.chunks=[],this.err=P,this.msg=this.strm.msg};var Qt={Deflate:Vr,deflate:jr,deflateRaw:function Hr(P,Re){return(Re=Re||{}).raw=!0,jr(P,Re)},gzip:function Ko(P,Re){return(Re=Re||{}).gzip=!0,jr(P,Re)},constants:Z};const En=16209;var xr=function(Re,H){let Ze,gt,ut,Xt,Vt,Hn,Ot,Jt,Ui,Fn,bn,qn,nr,wi,bi,Hi,Ei,Bn,_i,hr,ei,Ki,Ai,ui;const Di=Re.state;Ze=Re.next_in,Ai=Re.input,gt=Ze+(Re.avail_in-5),ut=Re.next_out,ui=Re.output,Xt=ut-(H-Re.avail_out),Vt=ut+(Re.avail_out-257),Hn=Di.dmax,Ot=Di.wsize,Jt=Di.whave,Ui=Di.wnext,Fn=Di.window,bn=Di.hold,qn=Di.bits,nr=Di.lencode,wi=Di.distcode,bi=(1<>>24,bn>>>=Bn,qn-=Bn,Bn=Ei>>>16&255,0===Bn)ui[ut++]=65535&Ei;else{if(!(16&Bn)){if(64&Bn){if(32&Bn){Di.mode=16191;break e}Re.msg="invalid literal/length code",Di.mode=En;break e}Ei=nr[(65535&Ei)+(bn&(1<>>=Bn,qn-=Bn),qn<15&&(bn+=Ai[Ze++]<>>24,bn>>>=Bn,qn-=Bn,Bn=Ei>>>16&255,16&Bn){if(hr=65535&Ei,Bn&=15,qnHn){Re.msg="invalid distance too far back",Di.mode=En;break e}if(bn>>>=Bn,qn-=Bn,Bn=ut-Xt,hr>Bn){if(Bn=hr-Bn,Bn>Jt&&Di.sane){Re.msg="invalid distance too far back",Di.mode=En;break e}if(ei=0,Ki=Fn,0===Ui){if(ei+=Ot-Bn,Bn<_i){_i-=Bn;do{ui[ut++]=Fn[ei++]}while(--Bn);ei=ut-hr,Ki=ui}}else if(Ui2;)ui[ut++]=Ki[ei++],ui[ut++]=Ki[ei++],ui[ut++]=Ki[ei++],_i-=3;_i&&(ui[ut++]=Ki[ei++],_i>1&&(ui[ut++]=Ki[ei++]))}else{ei=ut-hr;do{ui[ut++]=ui[ei++],ui[ut++]=ui[ei++],ui[ut++]=ui[ei++],_i-=3}while(_i>2);_i&&(ui[ut++]=ui[ei++],_i>1&&(ui[ut++]=ui[ei++]))}break}if(64&Bn){Re.msg="invalid distance code",Di.mode=En;break e}Ei=wi[(65535&Ei)+(bn&(1<>3,Ze-=_i,qn-=_i<<3,bn&=(1<{const Hn=Vt.bits;let Ei,Bn,_i,hr,ei,Ai,Ot=0,Jt=0,Ui=0,Fn=0,bn=0,qn=0,nr=0,wi=0,bi=0,Hi=0,Ki=null;const ui=new Uint16Array(16),Di=new Uint16Array(16);let Na,Ts,Ss,Uo=null;for(Ot=0;Ot<=15;Ot++)ui[Ot]=0;for(Jt=0;Jt=1&&0===ui[Fn];Fn--);if(bn>Fn&&(bn=Fn),0===Fn)return gt[ut++]=20971520,gt[ut++]=20971520,Vt.bits=1,0;for(Ui=1;Ui0&&(0===P||1!==Fn))return-1;for(Di[1]=0,Ot=1;Ot<15;Ot++)Di[Ot+1]=Di[Ot]+ui[Ot];for(Jt=0;Jt852||2===P&&bi>592)return 1;for(;;){Na=Ot-nr,Xt[Jt]+1=Ai?(Ts=Uo[Xt[Jt]-Ai],Ss=Ki[Xt[Jt]-Ai]):(Ts=96,Ss=0),Ei=1<>nr)+Bn]=Na<<24|Ts<<16|Ss|0}while(0!==Bn);for(Ei=1<>=1;if(0!==Ei?(Hi&=Ei-1,Hi+=Ei):Hi=0,Jt++,0==--ui[Ot]){if(Ot===Fn)break;Ot=Re[H+Xt[Jt]]}if(Ot>bn&&(Hi&hr)!==_i){for(0===nr&&(nr=bn),ei+=Ui,qn=Ot-nr,wi=1<852||2===P&&bi>592)return 1;_i=Hi&hr,gt[_i]=bn<<24|qn<<16|ei-ut|0}}return 0!==Hi&&(gt[ei+Hi]=Ot-nr<<24|64<<16|0),Vt.bits=bn,0};const{Z_FINISH:ao,Z_BLOCK:zr,Z_TREES:Wr,Z_OK:Gr,Z_STREAM_END:ms,Z_NEED_DICT:Ao,Z_STREAM_ERROR:ar,Z_DATA_ERROR:Xo,Z_MEM_ERROR:eo,Z_BUF_ERROR:La,Z_DEFLATED:Jo}=Z,ko=16180,to=16190,Fr=16191,Ie=16199,le=16200,Rn=16209,fr=P=>(P>>>24&255)+(P>>>8&65280)+((65280&P)<<8)+((255&P)<<24);function Kr(){this.strm=null,this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new Uint16Array(320),this.work=new Uint16Array(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}const lr=P=>{if(!P)return 1;const Re=P.state;return!Re||Re.strm!==P||Re.mode16211?1:0},Nr=P=>{if(lr(P))return ar;const Re=P.state;return P.total_in=P.total_out=Re.total=0,P.msg="",Re.wrap&&(P.adler=1&Re.wrap),Re.mode=ko,Re.last=0,Re.havedict=0,Re.flags=-1,Re.dmax=32768,Re.head=null,Re.hold=0,Re.bits=0,Re.lencode=Re.lendyn=new Int32Array(852),Re.distcode=Re.distdyn=new Int32Array(592),Re.sane=1,Re.back=-1,Gr},js=P=>{if(lr(P))return ar;const Re=P.state;return Re.wsize=0,Re.whave=0,Re.wnext=0,Nr(P)},is=(P,Re)=>{let H;if(lr(P))return ar;const Ze=P.state;return Re<0?(H=0,Re=-Re):(H=5+(Re>>4),Re<48&&(Re&=15)),Re&&(Re<8||Re>15)?ar:(null!==Ze.window&&Ze.wbits!==Re&&(Ze.window=null),Ze.wrap=H,Ze.wbits=Re,js(P))},mr=(P,Re)=>{if(!P)return ar;const H=new Kr;P.state=H,H.strm=P,H.window=null,H.mode=ko;const Ze=is(P,Re);return Ze!==Gr&&(P.state=null),Ze};let gs,rs,Hs=!0;const zs=P=>{if(Hs){gs=new Int32Array(512),rs=new Int32Array(32);let Re=0;for(;Re<144;)P.lens[Re++]=8;for(;Re<256;)P.lens[Re++]=9;for(;Re<280;)P.lens[Re++]=7;for(;Re<288;)P.lens[Re++]=8;for(Cr(1,P.lens,0,288,gs,0,P.work,{bits:9}),Re=0;Re<32;)P.lens[Re++]=5;Cr(2,P.lens,0,32,rs,0,P.work,{bits:5}),Hs=!1}P.lencode=gs,P.lenbits=9,P.distcode=rs,P.distbits=5},dn=(P,Re,H,Ze)=>{let gt;const ut=P.state;return null===ut.window&&(ut.wsize=1<=ut.wsize?(ut.window.set(Re.subarray(H-ut.wsize,H),0),ut.wnext=0,ut.whave=ut.wsize):(gt=ut.wsize-ut.wnext,gt>Ze&&(gt=Ze),ut.window.set(Re.subarray(H-Ze,H-Ze+gt),ut.wnext),(Ze-=gt)?(ut.window.set(Re.subarray(H-Ze,H),0),ut.wnext=Ze,ut.whave=ut.wsize):(ut.wnext+=gt,ut.wnext===ut.wsize&&(ut.wnext=0),ut.whavemr(P,15),inflateInit2:mr,inflate:(P,Re)=>{let H,Ze,gt,ut,Xt,Vt,Hn,Ot,Jt,Ui,Fn,bn,qn,nr,bi,Hi,Ei,Bn,_i,hr,ei,Ki,wi=0;const Ai=new Uint8Array(4);let ui,Di;const Uo=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);if(lr(P)||!P.output||!P.input&&0!==P.avail_in)return ar;H=P.state,H.mode===Fr&&(H.mode=16192),Xt=P.next_out,gt=P.output,Hn=P.avail_out,ut=P.next_in,Ze=P.input,Vt=P.avail_in,Ot=H.hold,Jt=H.bits,Ui=Vt,Fn=Hn,Ki=Gr;e:for(;;)switch(H.mode){case ko:if(0===H.wrap){H.mode=16192;break}for(;Jt<16;){if(0===Vt)break e;Vt--,Ot+=Ze[ut++]<>>8&255,H.check=je(H.check,Ai,2,0),Ot=0,Jt=0,H.mode=16181;break}if(H.head&&(H.head.done=!1),!(1&H.wrap)||(((255&Ot)<<8)+(Ot>>8))%31){P.msg="incorrect header check",H.mode=Rn;break}if((15&Ot)!==Jo){P.msg="unknown compression method",H.mode=Rn;break}if(Ot>>>=4,Jt-=4,ei=8+(15&Ot),0===H.wbits&&(H.wbits=ei),ei>15||ei>H.wbits){P.msg="invalid window size",H.mode=Rn;break}H.dmax=1<>8&1),512&H.flags&&4&H.wrap&&(Ai[0]=255&Ot,Ai[1]=Ot>>>8&255,H.check=je(H.check,Ai,2,0)),Ot=0,Jt=0,H.mode=16182;case 16182:for(;Jt<32;){if(0===Vt)break e;Vt--,Ot+=Ze[ut++]<>>8&255,Ai[2]=Ot>>>16&255,Ai[3]=Ot>>>24&255,H.check=je(H.check,Ai,4,0)),Ot=0,Jt=0,H.mode=16183;case 16183:for(;Jt<16;){if(0===Vt)break e;Vt--,Ot+=Ze[ut++]<>8),512&H.flags&&4&H.wrap&&(Ai[0]=255&Ot,Ai[1]=Ot>>>8&255,H.check=je(H.check,Ai,2,0)),Ot=0,Jt=0,H.mode=16184;case 16184:if(1024&H.flags){for(;Jt<16;){if(0===Vt)break e;Vt--,Ot+=Ze[ut++]<>>8&255,H.check=je(H.check,Ai,2,0)),Ot=0,Jt=0}else H.head&&(H.head.extra=null);H.mode=16185;case 16185:if(1024&H.flags&&(bn=H.length,bn>Vt&&(bn=Vt),bn&&(H.head&&(ei=H.head.extra_len-H.length,H.head.extra||(H.head.extra=new Uint8Array(H.head.extra_len)),H.head.extra.set(Ze.subarray(ut,ut+bn),ei)),512&H.flags&&4&H.wrap&&(H.check=je(H.check,Ze,bn,ut)),Vt-=bn,ut+=bn,H.length-=bn),H.length))break e;H.length=0,H.mode=16186;case 16186:if(2048&H.flags){if(0===Vt)break e;bn=0;do{ei=Ze[ut+bn++],H.head&&ei&&H.length<65536&&(H.head.name+=String.fromCharCode(ei))}while(ei&&bn>9&1,H.head.done=!0),P.adler=H.check=0,H.mode=Fr;break;case 16189:for(;Jt<32;){if(0===Vt)break e;Vt--,Ot+=Ze[ut++]<>>=7&Jt,Jt-=7&Jt,H.mode=16206;break}for(;Jt<3;){if(0===Vt)break e;Vt--,Ot+=Ze[ut++]<>>=1,Jt-=1,3&Ot){case 0:H.mode=16193;break;case 1:if(zs(H),H.mode=Ie,Re===Wr){Ot>>>=2,Jt-=2;break e}break;case 2:H.mode=16196;break;case 3:P.msg="invalid block type",H.mode=Rn}Ot>>>=2,Jt-=2;break;case 16193:for(Ot>>>=7&Jt,Jt-=7&Jt;Jt<32;){if(0===Vt)break e;Vt--,Ot+=Ze[ut++]<>>16^65535)){P.msg="invalid stored block lengths",H.mode=Rn;break}if(H.length=65535&Ot,Ot=0,Jt=0,H.mode=16194,Re===Wr)break e;case 16194:H.mode=16195;case 16195:if(bn=H.length,bn){if(bn>Vt&&(bn=Vt),bn>Hn&&(bn=Hn),0===bn)break e;gt.set(Ze.subarray(ut,ut+bn),Xt),Vt-=bn,ut+=bn,Hn-=bn,Xt+=bn,H.length-=bn;break}H.mode=Fr;break;case 16196:for(;Jt<14;){if(0===Vt)break e;Vt--,Ot+=Ze[ut++]<>>=5,Jt-=5,H.ndist=1+(31&Ot),Ot>>>=5,Jt-=5,H.ncode=4+(15&Ot),Ot>>>=4,Jt-=4,H.nlen>286||H.ndist>30){P.msg="too many length or distance symbols",H.mode=Rn;break}H.have=0,H.mode=16197;case 16197:for(;H.have>>=3,Jt-=3}for(;H.have<19;)H.lens[Uo[H.have++]]=0;if(H.lencode=H.lendyn,H.lenbits=7,ui={bits:H.lenbits},Ki=Cr(0,H.lens,0,19,H.lencode,0,H.work,ui),H.lenbits=ui.bits,Ki){P.msg="invalid code lengths set",H.mode=Rn;break}H.have=0,H.mode=16198;case 16198:for(;H.have>>24,Hi=wi>>>16&255,Ei=65535&wi,!(bi<=Jt);){if(0===Vt)break e;Vt--,Ot+=Ze[ut++]<>>=bi,Jt-=bi,H.lens[H.have++]=Ei;else{if(16===Ei){for(Di=bi+2;Jt>>=bi,Jt-=bi,0===H.have){P.msg="invalid bit length repeat",H.mode=Rn;break}ei=H.lens[H.have-1],bn=3+(3&Ot),Ot>>>=2,Jt-=2}else if(17===Ei){for(Di=bi+3;Jt>>=bi,Jt-=bi,ei=0,bn=3+(7&Ot),Ot>>>=3,Jt-=3}else{for(Di=bi+7;Jt>>=bi,Jt-=bi,ei=0,bn=11+(127&Ot),Ot>>>=7,Jt-=7}if(H.have+bn>H.nlen+H.ndist){P.msg="invalid bit length repeat",H.mode=Rn;break}for(;bn--;)H.lens[H.have++]=ei}}if(H.mode===Rn)break;if(0===H.lens[256]){P.msg="invalid code -- missing end-of-block",H.mode=Rn;break}if(H.lenbits=9,ui={bits:H.lenbits},Ki=Cr(1,H.lens,0,H.nlen,H.lencode,0,H.work,ui),H.lenbits=ui.bits,Ki){P.msg="invalid literal/lengths set",H.mode=Rn;break}if(H.distbits=6,H.distcode=H.distdyn,ui={bits:H.distbits},Ki=Cr(2,H.lens,H.nlen,H.ndist,H.distcode,0,H.work,ui),H.distbits=ui.bits,Ki){P.msg="invalid distances set",H.mode=Rn;break}if(H.mode=Ie,Re===Wr)break e;case Ie:H.mode=le;case le:if(Vt>=6&&Hn>=258){P.next_out=Xt,P.avail_out=Hn,P.next_in=ut,P.avail_in=Vt,H.hold=Ot,H.bits=Jt,xr(P,Fn),Xt=P.next_out,gt=P.output,Hn=P.avail_out,ut=P.next_in,Ze=P.input,Vt=P.avail_in,Ot=H.hold,Jt=H.bits,H.mode===Fr&&(H.back=-1);break}for(H.back=0;wi=H.lencode[Ot&(1<>>24,Hi=wi>>>16&255,Ei=65535&wi,!(bi<=Jt);){if(0===Vt)break e;Vt--,Ot+=Ze[ut++]<>Bn)],bi=wi>>>24,Hi=wi>>>16&255,Ei=65535&wi,!(Bn+bi<=Jt);){if(0===Vt)break e;Vt--,Ot+=Ze[ut++]<>>=Bn,Jt-=Bn,H.back+=Bn}if(Ot>>>=bi,Jt-=bi,H.back+=bi,H.length=Ei,0===Hi){H.mode=16205;break}if(32&Hi){H.back=-1,H.mode=Fr;break}if(64&Hi){P.msg="invalid literal/length code",H.mode=Rn;break}H.extra=15&Hi,H.mode=16201;case 16201:if(H.extra){for(Di=H.extra;Jt>>=H.extra,Jt-=H.extra,H.back+=H.extra}H.was=H.length,H.mode=16202;case 16202:for(;wi=H.distcode[Ot&(1<>>24,Hi=wi>>>16&255,Ei=65535&wi,!(bi<=Jt);){if(0===Vt)break e;Vt--,Ot+=Ze[ut++]<>Bn)],bi=wi>>>24,Hi=wi>>>16&255,Ei=65535&wi,!(Bn+bi<=Jt);){if(0===Vt)break e;Vt--,Ot+=Ze[ut++]<>>=Bn,Jt-=Bn,H.back+=Bn}if(Ot>>>=bi,Jt-=bi,H.back+=bi,64&Hi){P.msg="invalid distance code",H.mode=Rn;break}H.offset=Ei,H.extra=15&Hi,H.mode=16203;case 16203:if(H.extra){for(Di=H.extra;Jt>>=H.extra,Jt-=H.extra,H.back+=H.extra}if(H.offset>H.dmax){P.msg="invalid distance too far back",H.mode=Rn;break}H.mode=16204;case 16204:if(0===Hn)break e;if(bn=Fn-Hn,H.offset>bn){if(bn=H.offset-bn,bn>H.whave&&H.sane){P.msg="invalid distance too far back",H.mode=Rn;break}bn>H.wnext?(bn-=H.wnext,qn=H.wsize-bn):qn=H.wnext-bn,bn>H.length&&(bn=H.length),nr=H.window}else nr=gt,qn=Xt-H.offset,bn=H.length;bn>Hn&&(bn=Hn),Hn-=bn,H.length-=bn;do{gt[Xt++]=nr[qn++]}while(--bn);0===H.length&&(H.mode=le);break;case 16205:if(0===Hn)break e;gt[Xt++]=H.length,Hn--,H.mode=le;break;case 16206:if(H.wrap){for(;Jt<32;){if(0===Vt)break e;Vt--,Ot|=Ze[ut++]<{if(lr(P))return ar;let Re=P.state;return Re.window&&(Re.window=null),P.state=null,Gr},inflateGetHeader:(P,Re)=>{if(lr(P))return ar;const H=P.state;return 2&H.wrap?(H.head=Re,Re.done=!1,Gr):ar},inflateSetDictionary:(P,Re)=>{const H=Re.length;let Ze,gt,ut;return lr(P)||(Ze=P.state,0!==Ze.wrap&&Ze.mode!==to)?ar:Ze.mode===to&&(gt=1,gt=ve(gt,Re,H,0),gt!==Ze.check)?Xo:(ut=dn(P,Re,H,H),ut?(Ze.mode=16210,eo):(Ze.havedict=1,Gr))},inflateInfo:"pako inflate (from Nodeca project)"},Zr=function Mo(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1};const Gs=Object.prototype.toString,{Z_NO_FLUSH:Ks,Z_FINISH:Oa,Z_OK:co,Z_STREAM_END:Po,Z_NEED_DICT:Fo,Z_STREAM_ERROR:Ys,Z_DATA_ERROR:os,Z_MEM_ERROR:Pa}=Z;function wo(P){this.options=_n.assign({chunkSize:65536,windowBits:15,to:""},P||{});const Re=this.options;Re.raw&&Re.windowBits>=0&&Re.windowBits<16&&(Re.windowBits=-Re.windowBits,0===Re.windowBits&&(Re.windowBits=-15)),Re.windowBits>=0&&Re.windowBits<16&&!(P&&P.windowBits)&&(Re.windowBits+=32),Re.windowBits>15&&Re.windowBits<48&&(15&Re.windowBits||(Re.windowBits|=15)),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new Fi,this.strm.avail_out=0;let H=Br.inflateInit2(this.strm,Re.windowBits);if(H!==co)throw new Error(ke[H]);if(this.header=new Zr,Br.inflateGetHeader(this.strm,this.header),Re.dictionary&&("string"==typeof Re.dictionary?Re.dictionary=Xn.string2buf(Re.dictionary):"[object ArrayBuffer]"===Gs.call(Re.dictionary)&&(Re.dictionary=new Uint8Array(Re.dictionary)),Re.raw&&(H=Br.inflateSetDictionary(this.strm,Re.dictionary),H!==co)))throw new Error(ke[H])}function No(P,Re){const H=new wo(Re);if(H.push(P),H.err)throw H.msg||ke[H.err];return H.result}wo.prototype.push=function(P,Re){const H=this.strm,Ze=this.options.chunkSize,gt=this.options.dictionary;let ut,Xt,Vt;if(this.ended)return!1;for(Xt=Re===~~Re?Re:!0===Re?Oa:Ks,H.input="[object ArrayBuffer]"===Gs.call(P)?new Uint8Array(P):P,H.next_in=0,H.avail_in=H.input.length;;){for(0===H.avail_out&&(H.output=new Uint8Array(Ze),H.next_out=0,H.avail_out=Ze),ut=Br.inflate(H,Xt),ut===Fo&>&&(ut=Br.inflateSetDictionary(H,gt),ut===co?ut=Br.inflate(H,Xt):ut===os&&(ut=Fo));H.avail_in>0&&ut===Po&&H.state.wrap>0&&0!==P[H.next_in];)Br.inflateReset(H),ut=Br.inflate(H,Xt);switch(ut){case Ys:case os:case Fo:case Pa:return this.onEnd(ut),this.ended=!0,!1}if(Vt=H.avail_out,H.next_out&&(0===H.avail_out||ut===Po))if("string"===this.options.to){let Hn=Xn.utf8border(H.output,H.next_out),Ot=H.next_out-Hn,Jt=Xn.buf2string(H.output,Hn);H.next_out=Ot,H.avail_out=Ze-Ot,Ot&&H.output.set(H.output.subarray(Hn,Hn+Ot),0),this.onData(Jt)}else this.onData(H.output.length===H.next_out?H.output:H.output.subarray(0,H.next_out));if(ut!==co||0!==Vt){if(ut===Po)return ut=Br.inflateEnd(this.strm),this.onEnd(ut),this.ended=!0,!0;if(0===H.avail_in)break}}return!0},wo.prototype.onData=function(P){this.chunks.push(P)},wo.prototype.onEnd=function(P){P===co&&(this.result="string"===this.options.to?this.chunks.join(""):_n.flattenChunks(this.chunks)),this.chunks=[],this.err=P,this.msg=this.strm.msg};var et={Inflate:wo,inflate:No,inflateRaw:function G(P,Re){return(Re=Re||{}).raw=!0,No(P,Re)},ungzip:No,constants:Z};const{Deflate:Nt,deflate:mn,deflateRaw:Ln,gzip:Gn}=Qt,{Inflate:Wi,inflate:br,inflateRaw:Ms,ungzip:Eo}=et;var uo=Nt,ho=mn,Er=Ln,xl=Gn,ws=Wi,Es=br,Ds=Ms,Zs=Eo,Fa=Z,Ml={Deflate:Nt,deflate:mn,deflateRaw:Ln,gzip:Gn,Inflate:Wi,inflate:br,inflateRaw:Ms,ungzip:Eo,constants:Z}},5861:(Se,X,g)=>{"use strict";function n(C,b,o,v,a,c,s){try{var l=C[c](s),d=l.value}catch(r){return void o(r)}l.done?b(d):Promise.resolve(d).then(v,a)}function p(C){return function(){var b=this,o=arguments;return new Promise(function(v,a){var c=C.apply(b,o);function s(d){n(c,v,a,s,l,"next",d)}function l(d){n(c,v,a,s,l,"throw",d)}s(void 0)})}}g.d(X,{Z:()=>p})},1180:(Se,X,g)=>{"use strict";function n(o){return(n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(v){return typeof v}:function(v){return v&&"function"==typeof Symbol&&v.constructor===Symbol&&v!==Symbol.prototype?"symbol":typeof v})(o)}function b(o,v,a){return(v=function C(o){var v=function p(o,v){if("object"!==n(o)||null===o)return o;var a=o[Symbol.toPrimitive];if(void 0!==a){var c=a.call(o,v||"default");if("object"!==n(c))return c;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===v?String:Number)(o)}(o,"string");return"symbol"===n(v)?v:String(v)}(v))in o?Object.defineProperty(o,v,{value:a,enumerable:!0,configurable:!0,writable:!0}):o[v]=a,o}g.d(X,{Z:()=>b})},8210:Se=>{"use strict";Se.exports=JSON.parse('{"license":"The following data (prefixes and units) was generated by the UCUM LHC code from the UCUM data and selected LOINC combinations of UCUM units. The license for the UCUM LHC code (demo and library code as well as the combined units) is located at https://github.com/lhncbc/ucum-lhc/blob/LICENSE.md.","prefixes":{"config":["code_","ciCode_","name_","printSymbol_","value_","exp_"],"data":[["E","EX","exa","E",1000000000000000000,"18"],["G","GA","giga","G",1000000000,"9"],["Gi","GIB","gibi","Gi",1073741824,null],["Ki","KIB","kibi","Ki",1024,null],["M","MA","mega","M",1000000,"6"],["Mi","MIB","mebi","Mi",1048576,null],["P","PT","peta","P",1000000000000000,"15"],["T","TR","tera","T",1000000000000,"12"],["Ti","TIB","tebi","Ti",1099511627776,null],["Y","YA","yotta","Y",1e+24,"24"],["Z","ZA","zetta","Z",1e+21,"21"],["a","A","atto","a",1e-18,"-18"],["c","C","centi","c",0.01,"-2"],["d","D","deci","d",0.1,"-1"],["da","DA","deka","da",10,"1"],["f","F","femto","f",1e-15,"-15"],["h","H","hecto","h",100,"2"],["k","K","kilo","k",1000,"3"],["m","M","milli","m",0.001,"-3"],["n","N","nano","n",1e-9,"-9"],["p","P","pico","p",1e-12,"-12"],["u","U","micro","\u03bc",0.000001,"-6"],["y","YO","yocto","y",1.0000000000000001e-24,"-24"],["z","ZO","zepto","z",1e-21,"-21"]]},"units":{"config":["isBase_","name_","csCode_","ciCode_","property_","magnitude_",["dim_","dimVec_"],"printSymbol_","class_","isMetric_","variable_","cnv_","cnvPfx_","isSpecial_","isArbitrary_","moleExp_","synonyms_","source_","loincProperty_","category_","guidance_","csUnitString_","ciUnitString_","baseFactorStr_","baseFactor_","defError_"],"data":[[true,"meter","m","M","length",1,[1,0,0,0,0,0,0],"m",null,false,"L",null,1,false,false,0,"meters; metres; distance","UCUM","Len","Clinical","unit of length = 1.09361 yards",null,null,null,null,false],[true,"second - time","s","S","time",1,[0,1,0,0,0,0,0],"s",null,false,"T",null,1,false,false,0,"seconds","UCUM","Time","Clinical","",null,null,null,null,false],[true,"gram","g","G","mass",1,[0,0,1,0,0,0,0],"g",null,false,"M",null,1,false,false,0,"grams; gm","UCUM","Mass","Clinical","",null,null,null,null,false],[true,"radian","rad","RAD","plane angle",1,[0,0,0,1,0,0,0],"rad",null,false,"A",null,1,false,false,0,"radians","UCUM","Angle","Clinical","unit of angular measure where 1 radian = 1/2\u03c0 turn = 57.296 degrees. ",null,null,null,null,false],[true,"degree Kelvin","K","K","temperature",1,[0,0,0,0,1,0,0],"K",null,false,"C",null,1,false,false,0,"Kelvin; degrees","UCUM","Temp","Clinical","absolute, thermodynamic temperature scale ",null,null,null,null,false],[true,"coulomb","C","C","electric charge",1,[0,0,0,0,0,1,0],"C",null,false,"Q",null,1,false,false,0,"coulombs","UCUM","","Clinical","defined as amount of 1 electron charge = 6.2415093\xd710^18 e, and equivalent to 1 Ampere-second",null,null,null,null,false],[true,"candela","cd","CD","luminous intensity",1,[0,0,0,0,0,0,1],"cd",null,false,"F",null,1,false,false,0,"candelas","UCUM","","Clinical","SI base unit of luminous intensity",null,null,null,null,false],[false,"the number ten for arbitrary powers","10*","10*","number",10,[0,0,0,0,0,0,0],"10","dimless",false,null,null,1,false,false,0,"10^; 10 to the arbitrary powers","UCUM","Num","Clinical","10* by itself is the same as 10, but users can add digits after the *. For example, 10*3 = 1000.","1","1","10",10,false],[false,"the number ten for arbitrary powers","10^","10^","number",10,[0,0,0,0,0,0,0],"10","dimless",false,null,null,1,false,false,0,"10*; 10 to the arbitrary power","UCUM","Num","Clinical","10* by itself is the same as 10, but users can add digits after the *. For example, 10*3 = 1000.","1","1","10",10,false],[false,"the number pi","[pi]","[PI]","number",3.141592653589793,[0,0,0,0,0,0,0],"\u03c0","dimless",false,null,null,1,false,false,0,"\u03c0","UCUM","","Constant","a mathematical constant; the ratio of a circle\'s circumference to its diameter \u2248 3.14159","1","1","3.1415926535897932384626433832795028841971693993751058209749445923",3.141592653589793,false],[false,"","%","%","fraction",0.01,[0,0,0,0,0,0,0],"%","dimless",false,null,null,1,false,false,0,"percents","UCUM","FR; NFR; MFR; CFR; SFR Rto; etc. ","Clinical","","10*-2","10*-2","1",1,false],[false,"parts per thousand","[ppth]","[PPTH]","fraction",0.001,[0,0,0,0,0,0,0],"ppth","dimless",false,null,null,1,false,false,0,"ppth; 10^-3","UCUM","MCnc; MCnt","Clinical","[ppth] is often used in solution concentrations as 1 g/L or 1 g/kg.\\n\\nCan be ambigous and would be better if the metric units was used directly. ","10*-3","10*-3","1",1,false],[false,"parts per million","[ppm]","[PPM]","fraction",0.000001,[0,0,0,0,0,0,0],"ppm","dimless",false,null,null,1,false,false,0,"ppm; 10^-6","UCUM","MCnt; MCnc; SFr","Clinical","[ppm] is often used in solution concentrations as 1 mg/L or 1 mg/kg. Also used to express mole fractions as 1 mmol/mol.\\n\\n[ppm] is also used in nuclear magnetic resonance (NMR) to represent chemical shift - the difference of a measured frequency in parts per million from the reference frequency.\\n\\nCan be ambigous and would be better if the metric units was used directly. ","10*-6","10*-6","1",1,false],[false,"parts per billion","[ppb]","[PPB]","fraction",1e-9,[0,0,0,0,0,0,0],"ppb","dimless",false,null,null,1,false,false,0,"ppb; 10^-9","UCUM","MCnt; MCnc; SFr","Clinical","[ppb] is often used in solution concentrations as 1 ug/L or 1 ug/kg. Also used to express mole fractions as 1 umol/mol.\\n\\nCan be ambigous and would be better if the metric units was used directly. ","10*-9","10*-9","1",1,false],[false,"parts per trillion","[pptr]","[PPTR]","fraction",1e-12,[0,0,0,0,0,0,0],"pptr","dimless",false,null,null,1,false,false,0,"pptr; 10^-12","UCUM","MCnt; MCnc; SFr","Clinical","[pptr] is often used in solution concentrations as 1 ng/L or 1 ng/kg. Also used to express mole fractions as 1 nmol/mol.\\n\\nCan be ambigous and would be better if the metric units was used directly. ","10*-12","10*-12","1",1,false],[false,"mole","mol","MOL","amount of substance",6.0221367e+23,[0,0,0,0,0,0,0],"mol","si",true,null,null,1,false,false,1,"moles","UCUM","Sub","Clinical","Measure the number of molecules ","10*23","10*23","6.0221367",6.0221367,false],[false,"steradian - solid angle","sr","SR","solid angle",1,[0,0,0,2,0,0,0],"sr","si",true,null,null,1,false,false,0,"square radian; rad2; rad^2","UCUM","Angle","Clinical","unit of solid angle in three-dimensional geometry analagous to radian; used in photometry which measures the perceived brightness of object by human eye (e.g. radiant intensity = watt/steradian)","rad2","RAD2","1",1,false],[false,"hertz","Hz","HZ","frequency",1,[0,-1,0,0,0,0,0],"Hz","si",true,null,null,1,false,false,0,"Herz; frequency; frequencies","UCUM","Freq; Num","Clinical","equal to one cycle per second","s-1","S-1","1",1,false],[false,"newton","N","N","force",1000,[1,-2,1,0,0,0,0],"N","si",true,null,null,1,false,false,0,"Newtons","UCUM","Force","Clinical","unit of force with base units kg.m/s2","kg.m/s2","KG.M/S2","1",1,false],[false,"pascal","Pa","PAL","pressure",1000,[-1,-2,1,0,0,0,0],"Pa","si",true,null,null,1,false,false,0,"pascals","UCUM","Pres","Clinical","standard unit of pressure equal to 1 newton per square meter (N/m2)","N/m2","N/M2","1",1,false],[false,"joule","J","J","energy",1000,[2,-2,1,0,0,0,0],"J","si",true,null,null,1,false,false,0,"joules","UCUM","Enrg","Clinical","unit of energy defined as the work required to move an object 1 m with a force of 1 N (N.m) or an electric charge of 1 C through 1 V (C.V), or to produce 1 W for 1 s (W.s) ","N.m","N.M","1",1,false],[false,"watt","W","W","power",1000,[2,-3,1,0,0,0,0],"W","si",true,null,null,1,false,false,0,"watts","UCUM","EngRat","Clinical","unit of power equal to 1 Joule per second (J/s) = kg\u22c5m2\u22c5s\u22123","J/s","J/S","1",1,false],[false,"Ampere","A","A","electric current",1,[0,-1,0,0,0,1,0],"A","si",true,null,null,1,false,false,0,"Amperes","UCUM","ElpotRat","Clinical","unit of electric current equal to flow rate of electrons equal to 16.2415\xd710^18 elementary charges moving past a boundary in one second or 1 Coulomb/second","C/s","C/S","1",1,false],[false,"volt","V","V","electric potential",1000,[2,-2,1,0,0,-1,0],"V","si",true,null,null,1,false,false,0,"volts","UCUM","Elpot","Clinical","unit of electric potential (voltage) = 1 Joule per Coulomb (J/C)","J/C","J/C","1",1,false],[false,"farad","F","F","electric capacitance",0.001,[-2,2,-1,0,0,2,0],"F","si",true,null,null,1,false,false,0,"farads; electric capacitance","UCUM","","Clinical","CGS unit of electric capacitance with base units C/V (Coulomb per Volt)","C/V","C/V","1",1,false],[false,"ohm","Ohm","OHM","electric resistance",1000,[2,-1,1,0,0,-2,0],"\u03a9","si",true,null,null,1,false,false,0,"\u03a9; resistance; ohms","UCUM","","Clinical","unit of electrical resistance with units of Volt per Ampere","V/A","V/A","1",1,false],[false,"siemens","S","SIE","electric conductance",0.001,[-2,1,-1,0,0,2,0],"S","si",true,null,null,1,false,false,0,"Reciprocal ohm; mho; \u03a9\u22121; conductance","UCUM","","Clinical","unit of electric conductance (the inverse of electrical resistance) equal to ohm^-1","Ohm-1","OHM-1","1",1,false],[false,"weber","Wb","WB","magnetic flux",1000,[2,-1,1,0,0,-1,0],"Wb","si",true,null,null,1,false,false,0,"magnetic flux; webers","UCUM","","Clinical","unit of magnetic flux equal to Volt second","V.s","V.S","1",1,false],[false,"degree Celsius","Cel","CEL","temperature",1,[0,0,0,0,1,0,0],"\xb0C","si",true,null,"Cel",1,true,false,0,"\xb0C; degrees","UCUM","Temp","Clinical","","K",null,null,1,false],[false,"tesla","T","T","magnetic flux density",1000,[0,-1,1,0,0,-1,0],"T","si",true,null,null,1,false,false,0,"Teslas; magnetic field","UCUM","","Clinical","SI unit of magnetic field strength for magnetic field B equal to 1 Weber/square meter = 1 kg/(s2*A)","Wb/m2","WB/M2","1",1,false],[false,"henry","H","H","inductance",1000,[2,0,1,0,0,-2,0],"H","si",true,null,null,1,false,false,0,"henries; inductance","UCUM","","Clinical","unit of electrical inductance; usually expressed in millihenrys (mH) or microhenrys (uH).","Wb/A","WB/A","1",1,false],[false,"lumen","lm","LM","luminous flux",1,[0,0,0,2,0,0,1],"lm","si",true,null,null,1,false,false,0,"luminous flux; lumens","UCUM","","Clinical","unit of luminous flux defined as 1 lm = 1 cd\u22c5sr (candela times sphere)","cd.sr","CD.SR","1",1,false],[false,"lux","lx","LX","illuminance",1,[-2,0,0,2,0,0,1],"lx","si",true,null,null,1,false,false,0,"illuminance; luxes","UCUM","","Clinical","unit of illuminance equal to one lumen per square meter. ","lm/m2","LM/M2","1",1,false],[false,"becquerel","Bq","BQ","radioactivity",1,[0,-1,0,0,0,0,0],"Bq","si",true,null,null,1,false,false,0,"activity; radiation; becquerels","UCUM","","Clinical","measure of the atomic radiation rate with units s^-1","s-1","S-1","1",1,false],[false,"gray","Gy","GY","energy dose",1,[2,-2,0,0,0,0,0],"Gy","si",true,null,null,1,false,false,0,"absorbed doses; ionizing radiation doses; kerma; grays","UCUM","EngCnt","Clinical","unit of ionizing radiation dose with base units of 1 joule of radiation energy per kilogram of matter","J/kg","J/KG","1",1,false],[false,"sievert","Sv","SV","dose equivalent",1,[2,-2,0,0,0,0,0],"Sv","si",true,null,null,1,false,false,0,"sieverts; radiation dose quantities; equivalent doses; effective dose; operational dose; committed dose","UCUM","","Clinical","SI unit for radiation dose equivalent equal to 1 Joule/kilogram.","J/kg","J/KG","1",1,false],[false,"degree - plane angle","deg","DEG","plane angle",0.017453292519943295,[0,0,0,1,0,0,0],"\xb0","iso1000",false,null,null,1,false,false,0,"\xb0; degree of arc; arc degree; arcdegree; angle","UCUM","Angle","Clinical","one degree is equivalent to \u03c0/180 radians.","[pi].rad/360","[PI].RAD/360","2",2,false],[false,"gon","gon","GON","plane angle",0.015707963267948967,[0,0,0,1,0,0,0],"\u25a1g","iso1000",false,null,null,1,false,false,0,"gon (grade); gons","UCUM","Angle","Nonclinical","unit of plane angle measurement equal to 1/400 circle","deg","DEG","0.9",0.9,false],[false,"arc minute","\'","\'","plane angle",0.0002908882086657216,[0,0,0,1,0,0,0],"\'","iso1000",false,null,null,1,false,false,0,"arcminutes; arcmin; arc minutes; arc mins","UCUM","Angle","Clinical","equal to 1/60 degree; used in optometry and opthamology (e.g. visual acuity tests)","deg/60","DEG/60","1",1,false],[false,"arc second","\'\'","\'\'","plane angle",0.00000484813681109536,[0,0,0,1,0,0,0],"\'\'","iso1000",false,null,null,1,false,false,0,"arcseconds; arcsecs","UCUM","Angle","Clinical","equal to 1/60 arcminute = 1/3600 degree; used in optometry and opthamology (e.g. visual acuity tests)","\'/60","\'/60","1",1,false],[false,"Liters","l","L","volume",0.001,[3,0,0,0,0,0,0],"l","iso1000",true,null,null,1,false,false,0,"cubic decimeters; decimeters cubed; decimetres; dm3; dm^3; litres; liters, LT ","UCUM","Vol","Clinical","Because lower case \\"l\\" can be read as the number \\"1\\", though this is a valid UCUM units. UCUM strongly reccomends using \\"L\\"","dm3","DM3","1",1,false],[false,"Liters","L","L","volume",0.001,[3,0,0,0,0,0,0],"L","iso1000",true,null,null,1,false,false,0,"cubic decimeters; decimeters cubed; decimetres; dm3; dm^3; litres; liters, LT ","UCUM","Vol","Clinical","Because lower case \\"l\\" can be read as the number \\"1\\", though this is a valid UCUM units. UCUM strongly reccomends using \\"L\\"","l",null,"1",1,false],[false,"are","ar","AR","area",100,[2,0,0,0,0,0,0],"a","iso1000",true,null,null,1,false,false,0,"100 m2; 100 m^2; 100 square meter; meters squared; metres","UCUM","Area","Clinical","metric base unit for area defined as 100 m^2","m2","M2","100",100,false],[false,"minute","min","MIN","time",60,[0,1,0,0,0,0,0],"min","iso1000",false,null,null,1,false,false,0,"minutes","UCUM","Time","Clinical","","s","S","60",60,false],[false,"hour","h","HR","time",3600,[0,1,0,0,0,0,0],"h","iso1000",false,null,null,1,false,false,0,"hours; hrs; age","UCUM","Time","Clinical","","min","MIN","60",60,false],[false,"day","d","D","time",86400,[0,1,0,0,0,0,0],"d","iso1000",false,null,null,1,false,false,0,"days; age; dy; 24 hours; 24 hrs","UCUM","Time","Clinical","","h","HR","24",24,false],[false,"tropical year","a_t","ANN_T","time",31556925.216,[0,1,0,0,0,0,0],"at","iso1000",false,null,null,1,false,false,0,"solar years; a tropical; years","UCUM","Time","Clinical","has an average of 365.242181 days but is constantly changing.","d","D","365.24219",365.24219,false],[false,"mean Julian year","a_j","ANN_J","time",31557600,[0,1,0,0,0,0,0],"aj","iso1000",false,null,null,1,false,false,0,"mean Julian yr; a julian; years","UCUM","Time","Clinical","has an average of 365.25 days, and in everyday use, has been replaced by the Gregorian year. However, this unit is used in astronomy to calculate light year. ","d","D","365.25",365.25,false],[false,"mean Gregorian year","a_g","ANN_G","time",31556952,[0,1,0,0,0,0,0],"ag","iso1000",false,null,null,1,false,false,0,"mean Gregorian yr; a gregorian; years","UCUM","Time","Clinical","has an average of 365.2425 days and is the most internationally used civil calendar.","d","D","365.2425",365.2425,false],[false,"year","a","ANN","time",31557600,[0,1,0,0,0,0,0],"a","iso1000",false,null,null,1,false,false,0,"years; a; yr, yrs; annum","UCUM","Time","Clinical","","a_j","ANN_J","1",1,false],[false,"week","wk","WK","time",604800,[0,1,0,0,0,0,0],"wk","iso1000",false,null,null,1,false,false,0,"weeks; wks","UCUM","Time","Clinical","","d","D","7",7,false],[false,"synodal month","mo_s","MO_S","time",2551442.976,[0,1,0,0,0,0,0],"mos","iso1000",false,null,null,1,false,false,0,"Moon; synodic month; lunar month; mo-s; mo s; months; moons","UCUM","Time","Nonclinical","has an average of 29.53 days per month, unit used in astronomy","d","D","29.53059",29.53059,false],[false,"mean Julian month","mo_j","MO_J","time",2629800,[0,1,0,0,0,0,0],"moj","iso1000",false,null,null,1,false,false,0,"mo-julian; mo Julian; months","UCUM","Time","Clinical","has an average of 30.435 days per month","a_j/12","ANN_J/12","1",1,false],[false,"mean Gregorian month","mo_g","MO_G","time",2629746,[0,1,0,0,0,0,0],"mog","iso1000",false,null,null,1,false,false,0,"months; month-gregorian; mo-gregorian","UCUM","Time","Clinical","has an average 30.436875 days per month and is from the most internationally used civil calendar.","a_g/12","ANN_G/12","1",1,false],[false,"month","mo","MO","time",2629800,[0,1,0,0,0,0,0],"mo","iso1000",false,null,null,1,false,false,0,"months; duration","UCUM","Time","Clinical","based on Julian calendar which has an average of 30.435 days per month (this unit is used in astronomy but not in everyday life - see mo_g)","mo_j","MO_J","1",1,false],[false,"metric ton","t","TNE","mass",1000000,[0,0,1,0,0,0,0],"t","iso1000",true,null,null,1,false,false,0,"tonnes; megagrams; tons","UCUM","Mass","Nonclinical","equal to 1000 kg used in the US (recognized by NIST as metric ton), and internationally (recognized as tonne)","kg","KG","1e3",1000,false],[false,"bar","bar","BAR","pressure",100000000,[-1,-2,1,0,0,0,0],"bar","iso1000",true,null,null,1,false,false,0,"bars","UCUM","Pres","Nonclinical","unit of pressure equal to 10^5 Pascals, primarily used by meteorologists and in weather forecasting","Pa","PAL","1e5",100000,false],[false,"unified atomic mass unit","u","AMU","mass",1.6605402e-24,[0,0,1,0,0,0,0],"u","iso1000",true,null,null,1,false,false,0,"unified atomic mass units; amu; Dalton; Da","UCUM","Mass","Clinical","the mass of 1/12 of an unbound Carbon-12 atom nuclide equal to 1.6606x10^-27 kg ","g","G","1.6605402e-24",1.6605402e-24,false],[false,"astronomic unit","AU","ASU","length",149597870691,[1,0,0,0,0,0,0],"AU","iso1000",false,null,null,1,false,false,0,"AU; units","UCUM","Len","Clinical","unit of length used in astronomy for measuring distance in Solar system","Mm","MAM","149597.870691",149597.870691,false],[false,"parsec","pc","PRS","length",30856780000000000,[1,0,0,0,0,0,0],"pc","iso1000",true,null,null,1,false,false,0,"parsecs","UCUM","Len","Clinical","unit of length equal to 3.26 light years, nad used to measure large distances to objects outside our Solar System","m","M","3.085678e16",30856780000000000,false],[false,"velocity of light in a vacuum","[c]","[C]","velocity",299792458,[1,-1,0,0,0,0,0],"c","const",true,null,null,1,false,false,0,"speed of light","UCUM","Vel","Constant","equal to 299792458 m/s (approximately 3 x 10^8 m/s)","m/s","M/S","299792458",299792458,false],[false,"Planck constant","[h]","[H]","action",6.6260755e-31,[2,-1,1,0,0,0,0],"h","const",true,null,null,1,false,false,0,"Planck\'s constant","UCUM","","Constant","constant = 6.62607004 \xd7 10-34 m2.kg/s; defined as quantum of action","J.s","J.S","6.6260755e-34",6.6260755e-34,false],[false,"Boltzmann constant","[k]","[K]","(unclassified)",1.380658e-20,[2,-2,1,0,-1,0,0],"k","const",true,null,null,1,false,false,0,"k; kB","UCUM","","Constant","physical constant relating energy at the individual particle level with temperature = 1.38064852 \xd710^\u221223 J/K","J/K","J/K","1.380658e-23",1.380658e-23,false],[false,"permittivity of vacuum - electric","[eps_0]","[EPS_0]","electric permittivity",8.854187817000001e-15,[-3,2,-1,0,0,2,0],"\u03b50","const",true,null,null,1,false,false,0,"\u03b50; Electric Constant; vacuum permittivity; permittivity of free space ","UCUM","","Constant","approximately equal to 8.854\u2009\xd7 10^\u221212 F/m (farads per meter)","F/m","F/M","8.854187817e-12",8.854187817e-12,false],[false,"permeability of vacuum - magnetic","[mu_0]","[MU_0]","magnetic permeability",0.0012566370614359172,[1,0,1,0,0,-2,0],"\u03bc0","const",true,null,null,1,false,false,0,"\u03bc0; vacuum permeability; permeability of free space; magnetic constant","UCUM","","Constant","equal to 4\u03c0\xd710^\u22127 N/A2 (Newtons per square ampere) \u2248 1.2566\xd710^\u22126 H/m (Henry per meter)","N/A2","4.[PI].10*-7.N/A2","1",0.0000012566370614359173,false],[false,"elementary charge","[e]","[E]","electric charge",1.60217733e-19,[0,0,0,0,0,1,0],"e","const",true,null,null,1,false,false,0,"e; q; electric charges","UCUM","","Constant","the magnitude of the electric charge carried by a single electron or proton \u2248 1.60217\xd710^-19 Coulombs","C","C","1.60217733e-19",1.60217733e-19,false],[false,"electronvolt","eV","EV","energy",1.60217733e-16,[2,-2,1,0,0,0,0],"eV","iso1000",true,null,null,1,false,false,0,"Electron Volts; electronvolts","UCUM","Eng","Clinical","unit of kinetic energy = 1 V * 1.602\xd710^\u221219 C = 1.6\xd710\u221219 Joules","[e].V","[E].V","1",1,false],[false,"electron mass","[m_e]","[M_E]","mass",9.1093897e-28,[0,0,1,0,0,0,0],"me","const",true,null,null,1,false,false,0,"electron rest mass; me","UCUM","Mass","Constant","approximately equal to 9.10938356 \xd7 10-31 kg; defined as the mass of a stationary electron","g","g","9.1093897e-28",9.1093897e-28,false],[false,"proton mass","[m_p]","[M_P]","mass",1.6726231e-24,[0,0,1,0,0,0,0],"mp","const",true,null,null,1,false,false,0,"mp; masses","UCUM","Mass","Constant","approximately equal to 1.672622\xd710\u221227 kg","g","g","1.6726231e-24",1.6726231e-24,false],[false,"Newtonian constant of gravitation","[G]","[GC]","(unclassified)",6.67259e-14,[3,-2,-1,0,0,0,0],"G","const",true,null,null,1,false,false,0,"G; gravitational constant; Newton\'s constant","UCUM","","Constant","gravitational constant = 6.674\xd710\u221211 N\u22c5m2/kg2","m3.kg-1.s-2","M3.KG-1.S-2","6.67259e-11",6.67259e-11,false],[false,"standard acceleration of free fall","[g]","[G]","acceleration",9.80665,[1,-2,0,0,0,0,0],"gn","const",true,null,null,1,false,false,0,"standard gravity; g; \u02610; \u0261n","UCUM","Accel","Constant","defined by standard = 9.80665 m/s2","m/s2","M/S2","980665e-5",9.80665,false],[false,"Torr","Torr","Torr","pressure",133322,[-1,-2,1,0,0,0,0],"Torr","const",false,null,null,1,false,false,0,"torrs","UCUM","Pres","Clinical","1 torr = 1 mmHg; unit used to measure blood pressure","Pa","PAL","133.322",133.322,false],[false,"standard atmosphere","atm","ATM","pressure",101325000,[-1,-2,1,0,0,0,0],"atm","const",false,null,null,1,false,false,0,"reference pressure; atmos; std atmosphere","UCUM","Pres","Clinical","defined as being precisely equal to 101,325 Pa","Pa","PAL","101325",101325,false],[false,"light-year","[ly]","[LY]","length",9460730472580800,[1,0,0,0,0,0,0],"l.y.","const",true,null,null,1,false,false,0,"light years; ly","UCUM","Len","Constant","unit of astronomal distance = 5.88\xd710^12 mi","[c].a_j","[C].ANN_J","1",1,false],[false,"gram-force","gf","GF","force",9.80665,[1,-2,1,0,0,0,0],"gf","const",true,null,null,1,false,false,0,"Newtons; gram forces","UCUM","Force","Clinical","May be specific to unit related to cardiac output","g.[g]","G.[G]","1",1,false],[false,"Kayser","Ky","KY","lineic number",100,[-1,0,0,0,0,0,0],"K","cgs",true,null,null,1,false,false,0,"wavenumbers; kaysers","UCUM","InvLen","Clinical","unit of wavelength equal to cm^-1","cm-1","CM-1","1",1,false],[false,"Gal","Gal","GL","acceleration",0.01,[1,-2,0,0,0,0,0],"Gal","cgs",true,null,null,1,false,false,0,"galileos; Gals","UCUM","Accel","Clinical","unit of acceleration used in gravimetry; equivalent to cm/s2 ","cm/s2","CM/S2","1",1,false],[false,"dyne","dyn","DYN","force",0.01,[1,-2,1,0,0,0,0],"dyn","cgs",true,null,null,1,false,false,0,"dynes","UCUM","Force","Clinical","unit of force equal to 10^-5 Newtons","g.cm/s2","G.CM/S2","1",1,false],[false,"erg","erg","ERG","energy",0.0001,[2,-2,1,0,0,0,0],"erg","cgs",true,null,null,1,false,false,0,"10^-7 Joules, 10-7 Joules; 100 nJ; 100 nanoJoules; 1 dyne cm; 1 g.cm2/s2","UCUM","Eng","Clinical","unit of energy = 1 dyne centimeter = 10^-7 Joules","dyn.cm","DYN.CM","1",1,false],[false,"Poise","P","P","dynamic viscosity",100,[-1,-1,1,0,0,0,0],"P","cgs",true,null,null,1,false,false,0,"dynamic viscosity; poises","UCUM","Visc","Clinical","unit of dynamic viscosity where 1 Poise = 1/10 Pascal second","dyn.s/cm2","DYN.S/CM2","1",1,false],[false,"Biot","Bi","BI","electric current",10,[0,-1,0,0,0,1,0],"Bi","cgs",true,null,null,1,false,false,0,"Bi; abamperes; abA","UCUM","ElpotRat","Clinical","equal to 10 amperes","A","A","10",10,false],[false,"Stokes","St","ST","kinematic viscosity",0.0001,[2,-1,0,0,0,0,0],"St","cgs",true,null,null,1,false,false,0,"kinematic viscosity","UCUM","Visc","Clinical","unit of kimematic viscosity with units cm2/s","cm2/s","CM2/S","1",1,false],[false,"Maxwell","Mx","MX","flux of magnetic induction",0.00001,[2,-1,1,0,0,-1,0],"Mx","cgs",true,null,null,1,false,false,0,"magnetix flux; Maxwells","UCUM","","Clinical","unit of magnetic flux","Wb","WB","1e-8",1e-8,false],[false,"Gauss","G","GS","magnetic flux density",0.1,[0,-1,1,0,0,-1,0],"Gs","cgs",true,null,null,1,false,false,0,"magnetic fields; magnetic flux density; induction; B","UCUM","magnetic","Clinical","CGS unit of magnetic flux density, known as magnetic field B; defined as one maxwell unit per square centimeter (see Oersted for CGS unit for H field)","T","T","1e-4",0.0001,false],[false,"Oersted","Oe","OE","magnetic field intensity",79.57747154594767,[-1,-1,0,0,0,1,0],"Oe","cgs",true,null,null,1,false,false,0,"H magnetic B field; Oersteds","UCUM","","Clinical","CGS unit of the auxiliary magnetic field H defined as 1 dyne per unit pole = 1000/4\u03c0 amperes per meter (see Gauss for CGS unit for B field)","A/m","/[PI].A/M","250",79.57747154594767,false],[false,"Gilbert","Gb","GB","magnetic tension",0.7957747154594768,[0,-1,0,0,0,1,0],"Gb","cgs",true,null,null,1,false,false,0,"Gi; magnetomotive force; Gilberts","UCUM","","Clinical","unit of magnetomotive force (magnetic potential)","Oe.cm","OE.CM","1",1,false],[false,"stilb","sb","SB","lum. intensity density",10000,[-2,0,0,0,0,0,1],"sb","cgs",true,null,null,1,false,false,0,"stilbs","UCUM","","Obsolete","unit of luminance; equal to and replaced by unit candela per square centimeter (cd/cm2)","cd/cm2","CD/CM2","1",1,false],[false,"Lambert","Lmb","LMB","brightness",3183.098861837907,[-2,0,0,0,0,0,1],"L","cgs",true,null,null,1,false,false,0,"luminance; lamberts","UCUM","","Clinical","unit of luminance defined as 1 lambert = 1/ \u03c0 candela per square meter","cd/cm2/[pi]","CD/CM2/[PI]","1",1,false],[false,"phot","ph","PHT","illuminance",0.0001,[-2,0,0,2,0,0,1],"ph","cgs",true,null,null,1,false,false,0,"phots","UCUM","","Clinical","CGS photometric unit of illuminance, or luminous flux through an area equal to 10000 lumens per square meter = 10000 lux","lx","LX","1e-4",0.0001,false],[false,"Curie","Ci","CI","radioactivity",37000000000,[0,-1,0,0,0,0,0],"Ci","cgs",true,null,null,1,false,false,0,"curies","UCUM","","Obsolete","unit for measuring atomic disintegration rate; replaced by the Bequerel (Bq) unit","Bq","BQ","37e9",37000000000,false],[false,"Roentgen","R","ROE","ion dose",2.58e-7,[0,0,-1,0,0,1,0],"R","cgs",true,null,null,1,false,false,0,"r\xf6ntgen; Roentgens","UCUM","","Clinical","unit of exposure of X-rays and gamma rays in air; unit used primarily in the US but strongly discouraged by NIST","C/kg","C/KG","2.58e-4",0.000258,false],[false,"radiation absorbed dose","RAD","[RAD]","energy dose",0.01,[2,-2,0,0,0,0,0],"RAD","cgs",true,null,null,1,false,false,0,"doses","UCUM","","Clinical","unit of radiation absorbed dose used primarily in the US with base units 100 ergs per gram of material. Also see the SI unit Gray (Gy).","erg/g","ERG/G","100",100,false],[false,"radiation equivalent man","REM","[REM]","dose equivalent",0.01,[2,-2,0,0,0,0,0],"REM","cgs",true,null,null,1,false,false,0,"Roentgen Equivalent in Man; rems; dose equivalents","UCUM","","Clinical","unit of equivalent dose which measures the effect of radiation on humans equal to 0.01 sievert. Used primarily in the US. Also see SI unit Sievert (Sv)","RAD","[RAD]","1",1,false],[false,"inch","[in_i]","[IN_I]","length",0.025400000000000002,[1,0,0,0,0,0,0],"in","intcust",false,null,null,1,false,false,0,"inches; in; international inch; body height","UCUM","Len","Clinical","standard unit for inch in the US and internationally","cm","CM","254e-2",2.54,false],[false,"foot","[ft_i]","[FT_I]","length",0.3048,[1,0,0,0,0,0,0],"ft","intcust",false,null,null,1,false,false,0,"ft; fts; foot; international foot; feet; international feet; height","UCUM","Len","Clinical","unit used in the US and internationally","[in_i]","[IN_I]","12",12,false],[false,"yard","[yd_i]","[YD_I]","length",0.9144000000000001,[1,0,0,0,0,0,0],"yd","intcust",false,null,null,1,false,false,0,"international yards; yds; distance","UCUM","Len","Clinical","standard unit used in the US and internationally","[ft_i]","[FT_I]","3",3,false],[false,"mile","[mi_i]","[MI_I]","length",1609.344,[1,0,0,0,0,0,0],"mi","intcust",false,null,null,1,false,false,0,"international miles; mi I; statute mile","UCUM","Len","Clinical","standard unit used in the US and internationally","[ft_i]","[FT_I]","5280",5280,false],[false,"fathom","[fth_i]","[FTH_I]","depth of water",1.8288000000000002,[1,0,0,0,0,0,0],"fth","intcust",false,null,null,1,false,false,0,"international fathoms","UCUM","Len","Nonclinical","unit used in the US and internationally to measure depth of water; same length as the US fathom","[ft_i]","[FT_I]","6",6,false],[false,"nautical mile","[nmi_i]","[NMI_I]","length",1852,[1,0,0,0,0,0,0],"n.mi","intcust",false,null,null,1,false,false,0,"nautical mile; nautical miles; international nautical mile; international nautical miles; nm; n.m.; nmi","UCUM","Len","Nonclinical","standard unit used in the US and internationally","m","M","1852",1852,false],[false,"knot","[kn_i]","[KN_I]","velocity",0.5144444444444445,[1,-1,0,0,0,0,0],"knot","intcust",false,null,null,1,false,false,0,"kn; kt; international knots","UCUM","Vel","Nonclinical","defined as equal to one nautical mile (1.852 km) per hour","[nmi_i]/h","[NMI_I]/H","1",1,false],[false,"square inch","[sin_i]","[SIN_I]","area",0.0006451600000000001,[2,0,0,0,0,0,0],null,"intcust",false,null,null,1,false,false,0,"in2; in^2; inches squared; sq inch; inches squared; international","UCUM","Area","Clinical","standard unit used in the US and internationally","[in_i]2","[IN_I]2","1",1,false],[false,"square foot","[sft_i]","[SFT_I]","area",0.09290304,[2,0,0,0,0,0,0],null,"intcust",false,null,null,1,false,false,0,"ft2; ft^2; ft squared; sq ft; feet; international","UCUM","Area","Clinical","standard unit used in the US and internationally","[ft_i]2","[FT_I]2","1",1,false],[false,"square yard","[syd_i]","[SYD_I]","area",0.8361273600000002,[2,0,0,0,0,0,0],null,"intcust",false,null,null,1,false,false,0,"yd2; yd^2; sq. yds; yards squared; international","UCUM","Area","Clinical","standard unit used in the US and internationally","[yd_i]2","[YD_I]2","1",1,false],[false,"cubic inch","[cin_i]","[CIN_I]","volume",0.000016387064000000003,[3,0,0,0,0,0,0],null,"intcust",false,null,null,1,false,false,0,"in3; in^3; in*3; inches^3; inches*3; cu. in; cu in; cubic inches; inches cubed; cin","UCUM","Vol","Clinical","standard unit used in the US and internationally","[in_i]3","[IN_I]3","1",1,false],[false,"cubic foot","[cft_i]","[CFT_I]","volume",0.028316846592000004,[3,0,0,0,0,0,0],null,"intcust",false,null,null,1,false,false,0,"ft3; ft^3; ft*3; cu. ft; cubic feet; cubed; [ft_i]3; international","UCUM","Vol","Clinical","","[ft_i]3","[FT_I]3","1",1,false],[false,"cubic yard","[cyd_i]","[CYD_I]","volume",0.7645548579840002,[3,0,0,0,0,0,0],"cu.yd","intcust",false,null,null,1,false,false,0,"cubic yards; cubic yds; cu yards; CYs; yards^3; yd^3; yds^3; yd3; yds3","UCUM","Vol","Nonclinical","standard unit used in the US and internationally","[yd_i]3","[YD_I]3","1",1,false],[false,"board foot","[bf_i]","[BF_I]","volume",0.002359737216,[3,0,0,0,0,0,0],null,"intcust",false,null,null,1,false,false,0,"BDFT; FBM; BF; board feet; international","UCUM","Vol","Nonclinical","unit of volume used to measure lumber","[in_i]3","[IN_I]3","144",144,false],[false,"cord","[cr_i]","[CR_I]","volume",3.6245563637760005,[3,0,0,0,0,0,0],null,"intcust",false,null,null,1,false,false,0,"crd I; international cords","UCUM","Vol","Nonclinical","unit of measure of dry volume used to measure firewood equal 128 ft3","[ft_i]3","[FT_I]3","128",128,false],[false,"mil","[mil_i]","[MIL_I]","length",0.000025400000000000004,[1,0,0,0,0,0,0],"mil","intcust",false,null,null,1,false,false,0,"thou, thousandth; mils; international","UCUM","Len","Clinical","equal to 0.001 international inch","[in_i]","[IN_I]","1e-3",0.001,false],[false,"circular mil","[cml_i]","[CML_I]","area",5.067074790974979e-10,[2,0,0,0,0,0,0],"circ.mil","intcust",false,null,null,1,false,false,0,"circular mils; cml I; international","UCUM","Area","Clinical","","[pi]/4.[mil_i]2","[PI]/4.[MIL_I]2","1",1,false],[false,"hand","[hd_i]","[HD_I]","height of horses",0.10160000000000001,[1,0,0,0,0,0,0],"hd","intcust",false,null,null,1,false,false,0,"hands; international","UCUM","Len","Nonclinical","used to measure horse height","[in_i]","[IN_I]","4",4,false],[false,"foot - US","[ft_us]","[FT_US]","length",0.3048006096012192,[1,0,0,0,0,0,0],"ftus","us-lengths",false,null,null,1,false,false,0,"US foot; foot US; us ft; ft us; height; visual distance; feet","UCUM","Len","Obsolete","Better to use [ft_i] which refers to the length used worldwide, including in the US; [ft_us] may be confused with land survey units. ","m/3937","M/3937","1200",1200,false],[false,"yard - US","[yd_us]","[YD_US]","length",0.9144018288036575,[1,0,0,0,0,0,0],null,"us-lengths",false,null,null,1,false,false,0,"US yards; us yds; distance","UCUM","Len; Nrat","Obsolete","Better to use [yd_i] which refers to the length used worldwide, including in the US; [yd_us] refers to unit used in land surveys in the US","[ft_us]","[FT_US]","3",3,false],[false,"inch - US","[in_us]","[IN_US]","length",0.0254000508001016,[1,0,0,0,0,0,0],null,"us-lengths",false,null,null,1,false,false,0,"US inches; in us; us in; inch US","UCUM","Len","Obsolete","Better to use [in_i] which refers to the length used worldwide, including in the US","[ft_us]/12","[FT_US]/12","1",1,false],[false,"rod - US","[rd_us]","[RD_US]","length",5.029210058420117,[1,0,0,0,0,0,0],null,"us-lengths",false,null,null,1,false,false,0,"US rod; US rods; rd US; US rd","UCUM","Len","Obsolete","","[ft_us]","[FT_US]","16.5",16.5,false],[false,"Gunter\'s chain - US","[ch_us]","[CH_US]","length",20.116840233680467,[1,0,0,0,0,0,0],null,"us-lengths",false,null,null,1,false,false,0,"surveyor\'s chain; Surveyor\'s chain USA; Gunter\u2019s measurement; surveyor\u2019s measurement; Gunter\'s Chain USA","UCUM","Len","Obsolete","historical unit used for land survey used only in the US","[rd_us]","[RD_US]","4",4,false],[false,"link for Gunter\'s chain - US","[lk_us]","[LK_US]","length",0.20116840233680466,[1,0,0,0,0,0,0],null,"us-lengths",false,null,null,1,false,false,0,"Links for Gunter\'s Chain USA","UCUM","Len","Obsolete","","[ch_us]/100","[CH_US]/100","1",1,false],[false,"Ramden\'s chain - US","[rch_us]","[RCH_US]","length",30.480060960121918,[1,0,0,0,0,0,0],null,"us-lengths",false,null,null,1,false,false,0,"Ramsden\'s chain; engineer\'s chains","UCUM","Len","Obsolete","distance measuring device used for\xa0land survey","[ft_us]","[FT_US]","100",100,false],[false,"link for Ramden\'s chain - US","[rlk_us]","[RLK_US]","length",0.3048006096012192,[1,0,0,0,0,0,0],null,"us-lengths",false,null,null,1,false,false,0,"links for Ramsden\'s chain","UCUM","Len","Obsolete","","[rch_us]/100","[RCH_US]/100","1",1,false],[false,"fathom - US","[fth_us]","[FTH_US]","length",1.828803657607315,[1,0,0,0,0,0,0],null,"us-lengths",false,null,null,1,false,false,0,"US fathoms; fathom USA; fth us","UCUM","Len","Obsolete","same length as the international fathom - better to use international fathom ([fth_i])","[ft_us]","[FT_US]","6",6,false],[false,"furlong - US","[fur_us]","[FUR_US]","length",201.16840233680466,[1,0,0,0,0,0,0],null,"us-lengths",false,null,null,1,false,false,0,"US furlongs; fur us","UCUM","Len","Nonclinical","distance unit in horse racing","[rd_us]","[RD_US]","40",40,false],[false,"mile - US","[mi_us]","[MI_US]","length",1609.3472186944373,[1,0,0,0,0,0,0],null,"us-lengths",false,null,null,1,false,false,0,"U.S. Survey Miles; US statute miles; survey mi; US mi; distance","UCUM","Len","Nonclinical","Better to use [mi_i] which refers to the length used worldwide, including in the US","[fur_us]","[FUR_US]","8",8,false],[false,"acre - US","[acr_us]","[ACR_US]","area",4046.872609874252,[2,0,0,0,0,0,0],null,"us-lengths",false,null,null,1,false,false,0,"Acre USA Survey; Acre USA; survey acres","UCUM","Area","Nonclinical","an older unit based on pre 1959 US statute lengths that is still sometimes used in the US only for land survey purposes. ","[rd_us]2","[RD_US]2","160",160,false],[false,"square rod - US","[srd_us]","[SRD_US]","area",25.292953811714074,[2,0,0,0,0,0,0],null,"us-lengths",false,null,null,1,false,false,0,"rod2; rod^2; sq. rod; rods squared","UCUM","Area","Nonclinical","Used only in the US to measure land area, based on US statute land survey length units","[rd_us]2","[RD_US]2","1",1,false],[false,"square mile - US","[smi_us]","[SMI_US]","area",2589998.470319521,[2,0,0,0,0,0,0],null,"us-lengths",false,null,null,1,false,false,0,"mi2; mi^2; sq mi; miles squared","UCUM","Area","Nonclinical","historical unit used only in the US for land survey purposes (based on the US survey mile), not the internationally recognized [mi_i]","[mi_us]2","[MI_US]2","1",1,false],[false,"section","[sct]","[SCT]","area",2589998.470319521,[2,0,0,0,0,0,0],null,"us-lengths",false,null,null,1,false,false,0,"sct; sections","UCUM","Area","Nonclinical","tract of land approximately equal to 1 mile square containing 640 acres","[mi_us]2","[MI_US]2","1",1,false],[false,"township","[twp]","[TWP]","area",93239944.93150276,[2,0,0,0,0,0,0],null,"us-lengths",false,null,null,1,false,false,0,"twp; townships","UCUM","Area","Nonclinical","land measurement equal to 6 mile square","[sct]","[SCT]","36",36,false],[false,"mil - US","[mil_us]","[MIL_US]","length",0.0000254000508001016,[1,0,0,0,0,0,0],null,"us-lengths",false,null,null,1,false,false,0,"thou, thousandth; mils","UCUM","Len","Obsolete","better to use [mil_i] which is based on the internationally recognized inch","[in_us]","[IN_US]","1e-3",0.001,false],[false,"inch - British","[in_br]","[IN_BR]","length",0.025399980000000003,[1,0,0,0,0,0,0],null,"brit-length",false,null,null,1,false,false,0,"imperial inches; imp in; br in; british inches","UCUM","Len","Obsolete","","cm","CM","2.539998",2.539998,false],[false,"foot - British","[ft_br]","[FT_BR]","length",0.30479976000000003,[1,0,0,0,0,0,0],null,"brit-length",false,null,null,1,false,false,0,"British Foot; Imperial Foot; feet; imp fts; br fts","UCUM","Len","Obsolete","","[in_br]","[IN_BR]","12",12,false],[false,"rod - British","[rd_br]","[RD_BR]","length",5.02919604,[1,0,0,0,0,0,0],null,"brit-length",false,null,null,1,false,false,0,"British rods; br rd","UCUM","Len","Obsolete","","[ft_br]","[FT_BR]","16.5",16.5,false],[false,"Gunter\'s chain - British","[ch_br]","[CH_BR]","length",20.11678416,[1,0,0,0,0,0,0],null,"brit-length",false,null,null,1,false,false,0,"Gunter\'s Chain British; Gunters Chain British; Surveyor\'s Chain British","UCUM","Len","Obsolete","historical unit used for land survey used only in Great Britain","[rd_br]","[RD_BR]","4",4,false],[false,"link for Gunter\'s chain - British","[lk_br]","[LK_BR]","length",0.2011678416,[1,0,0,0,0,0,0],null,"brit-length",false,null,null,1,false,false,0,"Links for Gunter\'s Chain British","UCUM","Len","Obsolete","","[ch_br]/100","[CH_BR]/100","1",1,false],[false,"fathom - British","[fth_br]","[FTH_BR]","length",1.82879856,[1,0,0,0,0,0,0],null,"brit-length",false,null,null,1,false,false,0,"British fathoms; imperial fathoms; br fth; imp fth","UCUM","Len","Obsolete","","[ft_br]","[FT_BR]","6",6,false],[false,"pace - British","[pc_br]","[PC_BR]","length",0.7619994000000001,[1,0,0,0,0,0,0],null,"brit-length",false,null,null,1,false,false,0,"British paces; br pc","UCUM","Len","Nonclinical","traditional unit of length equal to 152.4 centimeters, or 1.52 meter. ","[ft_br]","[FT_BR]","2.5",2.5,false],[false,"yard - British","[yd_br]","[YD_BR]","length",0.91439928,[1,0,0,0,0,0,0],null,"brit-length",false,null,null,1,false,false,0,"British yards; Br yds; distance","UCUM","Len","Obsolete","","[ft_br]","[FT_BR]","3",3,false],[false,"mile - British","[mi_br]","[MI_BR]","length",1609.3427328000002,[1,0,0,0,0,0,0],null,"brit-length",false,null,null,1,false,false,0,"imperial miles; British miles; English statute miles; imp mi, br mi","UCUM","Len","Obsolete","","[ft_br]","[FT_BR]","5280",5280,false],[false,"nautical mile - British","[nmi_br]","[NMI_BR]","length",1853.1825408000002,[1,0,0,0,0,0,0],null,"brit-length",false,null,null,1,false,false,0,"British nautical miles; Imperial nautical miles; Admiralty miles; n.m. br; imp nm","UCUM","Len","Obsolete","","[ft_br]","[FT_BR]","6080",6080,false],[false,"knot - British","[kn_br]","[KN_BR]","velocity",0.5147729280000001,[1,-1,0,0,0,0,0],null,"brit-length",false,null,null,1,false,false,0,"British knots; kn br; kt","UCUM","Vel","Obsolete","based on obsolete British nautical mile ","[nmi_br]/h","[NMI_BR]/H","1",1,false],[false,"acre","[acr_br]","[ACR_BR]","area",4046.850049400269,[2,0,0,0,0,0,0],null,"brit-length",false,null,null,1,false,false,0,"Imperial acres; British; a; ac; ar; acr","UCUM","Area","Nonclinical","the standard unit for acre used in the US and internationally","[yd_br]2","[YD_BR]2","4840",4840,false],[false,"gallon - US","[gal_us]","[GAL_US]","fluid volume",0.0037854117840000006,[3,0,0,0,0,0,0],null,"us-volumes",false,null,null,1,false,false,0,"US gallons; US liquid gallon; gal us; Queen Anne\'s wine gallon","UCUM","Vol","Nonclinical","only gallon unit used in the US; [gal_us] is only used in some other countries in South American and Africa to measure gasoline volume","[in_i]3","[IN_I]3","231",231,false],[false,"barrel - US","[bbl_us]","[BBL_US]","fluid volume",0.158987294928,[3,0,0,0,0,0,0],null,"us-volumes",false,null,null,1,false,false,0,"bbl","UCUM","Vol","Nonclinical","[bbl_us] is the standard unit for oil barrel, which is a unit only used in the US to measure the volume oil. ","[gal_us]","[GAL_US]","42",42,false],[false,"quart - US","[qt_us]","[QT_US]","fluid volume",0.0009463529460000001,[3,0,0,0,0,0,0],null,"us-volumes",false,null,null,1,false,false,0,"US quarts; us qts","UCUM","Vol","Clinical","Used only in the US","[gal_us]/4","[GAL_US]/4","1",1,false],[false,"pint - US","[pt_us]","[PT_US]","fluid volume",0.00047317647300000007,[3,0,0,0,0,0,0],null,"us-volumes",false,null,null,1,false,false,0,"US pints; pint US; liquid pint; pt us; us pt","UCUM","Vol","Clinical","Used only in the US","[qt_us]/2","[QT_US]/2","1",1,false],[false,"gill - US","[gil_us]","[GIL_US]","fluid volume",0.00011829411825000002,[3,0,0,0,0,0,0],null,"us-volumes",false,null,null,1,false,false,0,"US gills; gil us","UCUM","Vol","Nonclinical","only used in the context of alcohol volume in the US","[pt_us]/4","[PT_US]/4","1",1,false],[false,"fluid ounce - US","[foz_us]","[FOZ_US]","fluid volume",0.000029573529562500005,[3,0,0,0,0,0,0],"oz fl","us-volumes",false,null,null,1,false,false,0,"US fluid ounces; fl ozs; FO; fl. oz.; foz us","UCUM","Vol","Clinical","unit used only in the US","[gil_us]/4","[GIL_US]/4","1",1,false],[false,"fluid dram - US","[fdr_us]","[FDR_US]","fluid volume",0.0000036966911953125006,[3,0,0,0,0,0,0],null,"us-volumes",false,null,null,1,false,false,0,"US fluid drams; fdr us","UCUM","Vol","Nonclinical","equal to 1/8 US fluid ounce = 3.69 mL; used informally to mean small amount of liquor, especially Scotch whiskey","[foz_us]/8","[FOZ_US]/8","1",1,false],[false,"minim - US","[min_us]","[MIN_US]","fluid volume",6.1611519921875e-8,[3,0,0,0,0,0,0],null,"us-volumes",false,null,null,1,false,false,0,"min US; US min; \u264f US","UCUM","Vol","Obsolete","","[fdr_us]/60","[FDR_US]/60","1",1,false],[false,"cord - US","[crd_us]","[CRD_US]","fluid volume",3.6245563637760005,[3,0,0,0,0,0,0],null,"us-volumes",false,null,null,1,false,false,0,"US cord; US cords; crd us; us crd","UCUM","Vol","Nonclinical","unit of measure of dry volume used to measure firewood equal 128 ft3 (the same as international cord [cr_i])","[ft_i]3","[FT_I]3","128",128,false],[false,"bushel - US","[bu_us]","[BU_US]","dry volume",0.03523907016688001,[3,0,0,0,0,0,0],null,"us-volumes",false,null,null,1,false,false,0,"US bushels; US bsh; US bu","UCUM","Vol","Obsolete","Historical unit of dry volume that is rarely used today","[in_i]3","[IN_I]3","2150.42",2150.42,false],[false,"gallon - historical","[gal_wi]","[GAL_WI]","dry volume",0.004404883770860001,[3,0,0,0,0,0,0],null,"us-volumes",false,null,null,1,false,false,0,"Corn Gallon British; Dry Gallon US; Gallons Historical; Grain Gallon British; Winchester Corn Gallon; historical winchester gallons; wi gal","UCUM","Vol","Obsolete","historical unit of dry volume no longer used","[bu_us]/8","[BU_US]/8","1",1,false],[false,"peck - US","[pk_us]","[PK_US]","dry volume",0.008809767541720002,[3,0,0,0,0,0,0],null,"us-volumes",false,null,null,1,false,false,0,"US pecks; US pk","UCUM","Vol","Nonclinical","unit of dry volume rarely used today (can be used to measure volume of apples)","[bu_us]/4","[BU_US]/4","1",1,false],[false,"dry quart - US","[dqt_us]","[DQT_US]","dry volume",0.0011012209427150002,[3,0,0,0,0,0,0],null,"us-volumes",false,null,null,1,false,false,0,"dry quarts; dry quart US; US dry quart; dry qt; us dry qt; dqt; dqt us","UCUM","Vol","Nonclinical","historical unit of dry volume only in the US, but is rarely used today","[pk_us]/8","[PK_US]/8","1",1,false],[false,"dry pint - US","[dpt_us]","[DPT_US]","dry volume",0.0005506104713575001,[3,0,0,0,0,0,0],null,"us-volumes",false,null,null,1,false,false,0,"dry pints; dry pint US; US dry pint; dry pt; dpt; dpt us","UCUM","Vol","Nonclinical","historical unit of dry volume only in the US, but is rarely used today","[dqt_us]/2","[DQT_US]/2","1",1,false],[false,"tablespoon - US","[tbs_us]","[TBS_US]","volume",0.000014786764781250002,[3,0,0,0,0,0,0],null,"us-volumes",false,null,null,1,false,false,0,"Tbs; tbsp; tbs us; US tablespoons","UCUM","Vol","Clinical","unit defined as 0.5 US fluid ounces or 3 teaspoons - used only in the US. See [tbs_m] for the unit used internationally and in the US for nutrional labelling. ","[foz_us]/2","[FOZ_US]/2","1",1,false],[false,"teaspoon - US","[tsp_us]","[TSP_US]","volume",0.0000049289215937500005,[3,0,0,0,0,0,0],null,"us-volumes",false,null,null,1,false,false,0,"tsp; t; US teaspoons","UCUM","Vol","Nonclinical","unit defined as 1/6 US fluid ounces - used only in the US. See [tsp_m] for the unit used internationally and in the US for nutrional labelling. ","[tbs_us]/3","[TBS_US]/3","1",1,false],[false,"cup - US customary","[cup_us]","[CUP_US]","volume",0.00023658823650000004,[3,0,0,0,0,0,0],null,"us-volumes",false,null,null,1,false,false,0,"cup us; us cups","UCUM","Vol","Nonclinical","Unit defined as 1/2 US pint or 16 US tablespoons \u2248 236.59 mL, which is not the standard unit defined by the FDA of 240 mL - see [cup_m] (metric cup)","[tbs_us]","[TBS_US]","16",16,false],[false,"fluid ounce - metric","[foz_m]","[FOZ_M]","fluid volume",0.000029999999999999997,[3,0,0,0,0,0,0],"oz fl","us-volumes",false,null,null,1,false,false,0,"metric fluid ounces; fozs m; fl ozs m","UCUM","Vol","Clinical","unit used only in the US for nutritional labelling, as set by the FDA","mL","ML","30",30,false],[false,"cup - US legal","[cup_m]","[CUP_M]","volume",0.00023999999999999998,[3,0,0,0,0,0,0],null,"us-volumes",false,null,null,1,false,false,0,"cup m; metric cups","UCUM","Vol","Clinical","standard unit equal to 240 mL used in the US for nutritional labelling, as defined by the FDA. Note that this is different from the US customary cup (236.59 mL) and the metric cup used in Commonwealth nations (250 mL).","mL","ML","240",240,false],[false,"teaspoon - metric","[tsp_m]","[TSP_M]","volume",0.0000049999999999999996,[3,0,0,0,0,0,0],null,"us-volumes",false,null,null,1,false,false,0,"tsp; t; metric teaspoons","UCUM","Vol","Clinical","standard unit used in the US and internationally","mL","mL","5",5,false],[false,"tablespoon - metric","[tbs_m]","[TBS_M]","volume",0.000014999999999999999,[3,0,0,0,0,0,0],null,"us-volumes",false,null,null,1,false,false,0,"metric tablespoons; Tbs; tbsp; T; tbs m","UCUM","Vol","Clinical","standard unit used in the US and internationally","mL","mL","15",15,false],[false,"gallon- British","[gal_br]","[GAL_BR]","volume",0.004546090000000001,[3,0,0,0,0,0,0],null,"brit-volumes",false,null,null,1,false,false,0,"imperial gallons, UK gallons; British gallons; br gal; imp gal","UCUM","Vol","Nonclinical","Used only in Great Britain and other Commonwealth countries","l","L","4.54609",4.54609,false],[false,"peck - British","[pk_br]","[PK_BR]","volume",0.009092180000000002,[3,0,0,0,0,0,0],null,"brit-volumes",false,null,null,1,false,false,0,"imperial pecks; British pecks; br pk; imp pk","UCUM","Vol","Nonclinical","unit of dry volume rarely used today (can be used to measure volume of apples)","[gal_br]","[GAL_BR]","2",2,false],[false,"bushel - British","[bu_br]","[BU_BR]","volume",0.03636872000000001,[3,0,0,0,0,0,0],null,"brit-volumes",false,null,null,1,false,false,0,"British bushels; imperial; br bsh; br bu; imp","UCUM","Vol","Obsolete","Historical unit of dry volume that is rarely used today","[pk_br]","[PK_BR]","4",4,false],[false,"quart - British","[qt_br]","[QT_BR]","volume",0.0011365225000000002,[3,0,0,0,0,0,0],null,"brit-volumes",false,null,null,1,false,false,0,"British quarts; imperial quarts; br qts","UCUM","Vol","Clinical","Used only in Great Britain and other Commonwealth countries","[gal_br]/4","[GAL_BR]/4","1",1,false],[false,"pint - British","[pt_br]","[PT_BR]","volume",0.0005682612500000001,[3,0,0,0,0,0,0],null,"brit-volumes",false,null,null,1,false,false,0,"British pints; imperial pints; pt br; br pt; imp pt; pt imp","UCUM","Vol","Clinical","Used only in Great Britain and other Commonwealth countries","[qt_br]/2","[QT_BR]/2","1",1,false],[false,"gill - British","[gil_br]","[GIL_BR]","volume",0.00014206531250000003,[3,0,0,0,0,0,0],null,"brit-volumes",false,null,null,1,false,false,0,"imperial gills; British gills; imp gill, br gill","UCUM","Vol","Nonclinical","only used in the context of alcohol volume in Great Britain","[pt_br]/4","[PT_BR]/4","1",1,false],[false,"fluid ounce - British","[foz_br]","[FOZ_BR]","volume",0.000028413062500000005,[3,0,0,0,0,0,0],null,"brit-volumes",false,null,null,1,false,false,0,"British fluid ounces; Imperial fluid ounces; br fozs; imp fozs; br fl ozs","UCUM","Vol","Clinical","Used only in Great Britain and other Commonwealth countries","[gil_br]/5","[GIL_BR]/5","1",1,false],[false,"fluid dram - British","[fdr_br]","[FDR_BR]","volume",0.0000035516328125000006,[3,0,0,0,0,0,0],null,"brit-volumes",false,null,null,1,false,false,0,"British fluid drams; fdr br","UCUM","Vol","Nonclinical","equal to 1/8 Imperial fluid ounce = 3.55 mL; used informally to mean small amount of liquor, especially Scotch whiskey","[foz_br]/8","[FOZ_BR]/8","1",1,false],[false,"minim - British","[min_br]","[MIN_BR]","volume",5.919388020833334e-8,[3,0,0,0,0,0,0],null,"brit-volumes",false,null,null,1,false,false,0,"min br; br min; \u264f br","UCUM","Vol","Obsolete","","[fdr_br]/60","[FDR_BR]/60","1",1,false],[false,"grain","[gr]","[GR]","mass",0.06479891,[0,0,1,0,0,0,0],null,"avoirdupois",false,null,null,1,false,false,0,"gr; grains","UCUM","Mass","Nonclinical","an apothecary measure of mass rarely used today","mg","MG","64.79891",64.79891,false],[false,"pound","[lb_av]","[LB_AV]","mass",453.59237,[0,0,1,0,0,0,0],"lb","avoirdupois",false,null,null,1,false,false,0,"avoirdupois pounds, international pounds; av lbs; pounds","UCUM","Mass","Clinical","standard unit used in the US and internationally","[gr]","[GR]","7000",7000,false],[false,"pound force - US","[lbf_av]","[LBF_AV]","force",4448.2216152605,[1,-2,1,0,0,0,0],"lbf","const",false,null,null,1,false,false,0,"lbfs; US lbf; US pound forces","UCUM","Force","Clinical","only rarely needed in health care - see [lb_av] which is the more common unit to express weight","[lb_av].[g]","[LB_AV].[G]","1",1,false],[false,"ounce","[oz_av]","[OZ_AV]","mass",28.349523125,[0,0,1,0,0,0,0],"oz","avoirdupois",false,null,null,1,false,false,0,"ounces; international ounces; avoirdupois ounces; av ozs","UCUM","Mass","Clinical","standard unit used in the US and internationally","[lb_av]/16","[LB_AV]/16","1",1,false],[false,"Dram mass unit","[dr_av]","[DR_AV]","mass",1.7718451953125,[0,0,1,0,0,0,0],null,"avoirdupois",false,null,null,1,false,false,0,"Dram; drams avoirdupois; avoidupois dram; international dram","UCUM","Mass","Clinical","unit from the avoirdupois system, which is used in the US and internationally","[oz_av]/16","[OZ_AV]/16","1",1,false],[false,"short hundredweight","[scwt_av]","[SCWT_AV]","mass",45359.237,[0,0,1,0,0,0,0],null,"avoirdupois",false,null,null,1,false,false,0,"hundredweights; s cwt; scwt; avoirdupois","UCUM","Mass","Nonclinical","Used only in the US to equal 100 pounds","[lb_av]","[LB_AV]","100",100,false],[false,"long hundredweight","[lcwt_av]","[LCWT_AV]","mass",50802.345440000005,[0,0,1,0,0,0,0],null,"avoirdupois",false,null,null,1,false,false,0,"imperial hundredweights; imp cwt; lcwt; avoirdupois","UCUM","Mass","Obsolete","","[lb_av]","[LB_AV]","112",112,false],[false,"short ton - US","[ston_av]","[STON_AV]","mass",907184.74,[0,0,1,0,0,0,0],null,"avoirdupois",false,null,null,1,false,false,0,"ton; US tons; avoirdupois tons","UCUM","Mass","Clinical","Used only in the US","[scwt_av]","[SCWT_AV]","20",20,false],[false,"long ton - British","[lton_av]","[LTON_AV]","mass",1016046.9088000001,[0,0,1,0,0,0,0],null,"avoirdupois",false,null,null,1,false,false,0,"imperial tons; weight tons; British long tons; long ton avoirdupois","UCUM","Mass","Nonclinical","Used only in Great Britain and other Commonwealth countries","[lcwt_av]","[LCWT_AV]","20",20,false],[false,"stone - British","[stone_av]","[STONE_AV]","mass",6350.293180000001,[0,0,1,0,0,0,0],null,"avoirdupois",false,null,null,1,false,false,0,"British stones; avoirdupois","UCUM","Mass","Nonclinical","Used primarily in the UK and Ireland to measure body weight","[lb_av]","[LB_AV]","14",14,false],[false,"pennyweight - troy","[pwt_tr]","[PWT_TR]","mass",1.5551738400000001,[0,0,1,0,0,0,0],null,"troy",false,null,null,1,false,false,0,"dwt; denarius weights","UCUM","Mass","Obsolete","historical unit used to measure mass and cost of precious metals","[gr]","[GR]","24",24,false],[false,"ounce - troy","[oz_tr]","[OZ_TR]","mass",31.103476800000003,[0,0,1,0,0,0,0],null,"troy",false,null,null,1,false,false,0,"troy ounces; tr ozs","UCUM","Mass","Nonclinical","unit of mass for precious metals and gemstones only","[pwt_tr]","[PWT_TR]","20",20,false],[false,"pound - troy","[lb_tr]","[LB_TR]","mass",373.2417216,[0,0,1,0,0,0,0],null,"troy",false,null,null,1,false,false,0,"troy pounds; tr lbs","UCUM","Mass","Nonclinical","only used for weighing precious metals","[oz_tr]","[OZ_TR]","12",12,false],[false,"scruple","[sc_ap]","[SC_AP]","mass",1.2959782,[0,0,1,0,0,0,0],null,"apoth",false,null,null,1,false,false,0,"scruples; sc ap","UCUM","Mass","Obsolete","","[gr]","[GR]","20",20,false],[false,"dram - apothecary","[dr_ap]","[DR_AP]","mass",3.8879346,[0,0,1,0,0,0,0],null,"apoth",false,null,null,1,false,false,0,"\u0292; drachm; apothecaries drams; dr ap; dram ap","UCUM","Mass","Nonclinical","unit still used in the US occasionally to measure amount of drugs in pharmacies","[sc_ap]","[SC_AP]","3",3,false],[false,"ounce - apothecary","[oz_ap]","[OZ_AP]","mass",31.1034768,[0,0,1,0,0,0,0],null,"apoth",false,null,null,1,false,false,0,"apothecary ounces; oz ap; ap ozs; ozs ap","UCUM","Mass","Obsolete","","[dr_ap]","[DR_AP]","8",8,false],[false,"pound - apothecary","[lb_ap]","[LB_AP]","mass",373.2417216,[0,0,1,0,0,0,0],null,"apoth",false,null,null,1,false,false,0,"apothecary pounds; apothecaries pounds; ap lb; lb ap; ap lbs; lbs ap","UCUM","Mass","Obsolete","","[oz_ap]","[OZ_AP]","12",12,false],[false,"ounce - metric","[oz_m]","[OZ_M]","mass",28,[0,0,1,0,0,0,0],null,"apoth",false,null,null,1,false,false,0,"metric ounces; m ozs","UCUM","Mass","Clinical","see [oz_av] (the avoirdupois ounce) for the standard ounce used internationally; [oz_m] is equal to 28 grams and is based on the apothecaries\' system of mass units which is used in some US pharmacies. ","g","g","28",28,false],[false,"line","[lne]","[LNE]","length",0.002116666666666667,[1,0,0,0,0,0,0],null,"typeset",false,null,null,1,false,false,0,"British lines; br L; L; l","UCUM","Len","Obsolete","","[in_i]/12","[IN_I]/12","1",1,false],[false,"point (typography)","[pnt]","[PNT]","length",0.0003527777777777778,[1,0,0,0,0,0,0],null,"typeset",false,null,null,1,false,false,0,"DTP points; desktop publishing point; pt; pnt","UCUM","Len","Nonclinical","typography unit for typesetter\'s length","[lne]/6","[LNE]/6","1",1,false],[false,"pica (typography)","[pca]","[PCA]","length",0.004233333333333334,[1,0,0,0,0,0,0],null,"typeset",false,null,null,1,false,false,0,"picas","UCUM","Len","Nonclinical","typography unit for typesetter\'s length","[pnt]","[PNT]","12",12,false],[false,"Printer\'s point (typography)","[pnt_pr]","[PNT_PR]","length",0.00035145980000000004,[1,0,0,0,0,0,0],null,"typeset",false,null,null,1,false,false,0,"pnt pr","UCUM","Len","Nonclinical","typography unit for typesetter\'s length","[in_i]","[IN_I]","0.013837",0.013837,false],[false,"Printer\'s pica (typography)","[pca_pr]","[PCA_PR]","length",0.004217517600000001,[1,0,0,0,0,0,0],null,"typeset",false,null,null,1,false,false,0,"pca pr; Printer\'s picas","UCUM","Len","Nonclinical","typography unit for typesetter\'s length","[pnt_pr]","[PNT_PR]","12",12,false],[false,"pied","[pied]","[PIED]","length",0.3248,[1,0,0,0,0,0,0],null,"typeset",false,null,null,1,false,false,0,"pieds du roi; Paris foot; royal; French; feet","UCUM","Len","Obsolete","","cm","CM","32.48",32.48,false],[false,"pouce","[pouce]","[POUCE]","length",0.027066666666666666,[1,0,0,0,0,0,0],null,"typeset",false,null,null,1,false,false,0,"historical French inches; French royal inches","UCUM","Len","Obsolete","","[pied]/12","[PIED]/12","1",1,false],[false,"ligne","[ligne]","[LIGNE]","length",0.0022555555555555554,[1,0,0,0,0,0,0],null,"typeset",false,null,null,1,false,false,0,"Paris lines; lignes","UCUM","Len","Obsolete","","[pouce]/12","[POUCE]/12","1",1,false],[false,"didot","[didot]","[DIDOT]","length",0.0003759259259259259,[1,0,0,0,0,0,0],null,"typeset",false,null,null,1,false,false,0,"Didot point; dd; Didots Point; didots; points","UCUM","Len","Obsolete","typography unit for typesetter\'s length","[ligne]/6","[LIGNE]/6","1",1,false],[false,"cicero","[cicero]","[CICERO]","length",0.004511111111111111,[1,0,0,0,0,0,0],null,"typeset",false,null,null,1,false,false,0,"Didot\'s pica; ciceros; picas","UCUM","Len","Obsolete","typography unit for typesetter\'s length","[didot]","[DIDOT]","12",12,false],[false,"degrees Fahrenheit","[degF]","[DEGF]","temperature",0.5555555555555556,[0,0,0,0,1,0,0],"\xb0F","heat",false,null,"degF",1,true,false,0,"\xb0F; deg F","UCUM","Temp","Clinical","","K",null,null,0.5555555555555556,false],[false,"degrees Rankine","[degR]","[degR]","temperature",0.5555555555555556,[0,0,0,0,1,0,0],"\xb0R","heat",false,null,null,1,false,false,0,"\xb0R; \xb0Ra; Rankine","UCUM","Temp","Obsolete","Replaced by Kelvin","K/9","K/9","5",5,false],[false,"degrees R\xe9aumur","[degRe]","[degRe]","temperature",1.25,[0,0,0,0,1,0,0],"\xb0R\xe9","heat",false,null,"degRe",1,true,false,0,"\xb0R\xe9, \xb0Re, \xb0r; R\xe9aumur; degree Reaumur; Reaumur","UCUM","Temp","Obsolete","replaced by Celsius","K",null,null,1.25,false],[false,"calorie at 15\xb0C","cal_[15]","CAL_[15]","energy",4185.8,[2,-2,1,0,0,0,0],"cal15\xb0C","heat",true,null,null,1,false,false,0,"calorie 15 C; cals 15 C; calories at 15 C","UCUM","Enrg","Nonclinical","equal to 4.1855 joules; calorie most often used in engineering","J","J","4.18580",4.1858,false],[false,"calorie at 20\xb0C","cal_[20]","CAL_[20]","energy",4181.9,[2,-2,1,0,0,0,0],"cal20\xb0C","heat",true,null,null,1,false,false,0,"calorie 20 C; cal 20 C; calories at 20 C","UCUM","Enrg","Clinical","equal to 4.18190 joules. ","J","J","4.18190",4.1819,false],[false,"mean calorie","cal_m","CAL_M","energy",4190.0199999999995,[2,-2,1,0,0,0,0],"calm","heat",true,null,null,1,false,false,0,"mean cals; mean calories","UCUM","Enrg","Clinical","equal to 4.19002 joules. ","J","J","4.19002",4.19002,false],[false,"international table calorie","cal_IT","CAL_IT","energy",4186.8,[2,-2,1,0,0,0,0],"calIT","heat",true,null,null,1,false,false,0,"calories IT; IT cals; international steam table calories","UCUM","Enrg","Nonclinical","used in engineering steam tables and defined as 1/860 international watt-hour; equal to 4.1868 joules","J","J","4.1868",4.1868,false],[false,"thermochemical calorie","cal_th","CAL_TH","energy",4184,[2,-2,1,0,0,0,0],"calth","heat",true,null,null,1,false,false,0,"thermochemical calories; th cals","UCUM","Enrg","Clinical","equal to 4.184 joules; used as the unit in medicine and biochemistry (equal to cal)","J","J","4.184",4.184,false],[false,"calorie","cal","CAL","energy",4184,[2,-2,1,0,0,0,0],"cal","heat",true,null,null,1,false,false,0,"gram calories; small calories","UCUM","Enrg","Clinical","equal to 4.184 joules (the same value as the thermochemical calorie, which is the most common calorie used in medicine and biochemistry)","cal_th","CAL_TH","1",1,false],[false,"nutrition label Calories","[Cal]","[CAL]","energy",4184000,[2,-2,1,0,0,0,0],"Cal","heat",false,null,null,1,false,false,0,"food calories; Cal; kcal","UCUM","Eng","Clinical","","kcal_th","KCAL_TH","1",1,false],[false,"British thermal unit at 39\xb0F","[Btu_39]","[BTU_39]","energy",1059670,[2,-2,1,0,0,0,0],"Btu39\xb0F","heat",false,null,null,1,false,false,0,"BTU 39F; BTU 39 F; B.T.U. 39 F; B.Th.U. 39 F; BThU 39 F; British thermal units","UCUM","Eng","Nonclinical","equal to 1.05967 kJ; used as a measure of power in the electric power, steam generation, heating, and air conditioning industries","kJ","kJ","1.05967",1.05967,false],[false,"British thermal unit at 59\xb0F","[Btu_59]","[BTU_59]","energy",1054800,[2,-2,1,0,0,0,0],"Btu59\xb0F","heat",false,null,null,1,false,false,0,"BTU 59 F; BTU 59F; B.T.U. 59 F; B.Th.U. 59 F; BThU 59F; British thermal units","UCUM","Eng","Nonclinical","equal to 1.05480 kJ; used as a measure of power in the electric power, steam generation, heating, and air conditioning industries","kJ","kJ","1.05480",1.0548,false],[false,"British thermal unit at 60\xb0F","[Btu_60]","[BTU_60]","energy",1054680,[2,-2,1,0,0,0,0],"Btu60\xb0F","heat",false,null,null,1,false,false,0,"BTU 60 F; BTU 60F; B.T.U. 60 F; B.Th.U. 60 F; BThU 60 F; British thermal units 60 F","UCUM","Eng","Nonclinical","equal to 1.05468 kJ; used as a measure of power in the electric power, steam generation, heating, and air conditioning industries","kJ","kJ","1.05468",1.05468,false],[false,"mean British thermal unit","[Btu_m]","[BTU_M]","energy",1055870,[2,-2,1,0,0,0,0],"Btum","heat",false,null,null,1,false,false,0,"BTU mean; B.T.U. mean; B.Th.U. mean; BThU mean; British thermal units mean; ","UCUM","Eng","Nonclinical","equal to 1.05587 kJ; used as a measure of power in the electric power, steam generation, heating, and air conditioning industries","kJ","kJ","1.05587",1.05587,false],[false,"international table British thermal unit","[Btu_IT]","[BTU_IT]","energy",1055055.85262,[2,-2,1,0,0,0,0],"BtuIT","heat",false,null,null,1,false,false,0,"BTU IT; B.T.U. IT; B.Th.U. IT; BThU IT; British thermal units IT","UCUM","Eng","Nonclinical","equal to 1.055 kJ; used as a measure of power in the electric power, steam generation, heating, and air conditioning industries","kJ","kJ","1.05505585262",1.05505585262,false],[false,"thermochemical British thermal unit","[Btu_th]","[BTU_TH]","energy",1054350,[2,-2,1,0,0,0,0],"Btuth","heat",false,null,null,1,false,false,0,"BTU Th; B.T.U. Th; B.Th.U. Th; BThU Th; thermochemical British thermal units","UCUM","Eng","Nonclinical","equal to 1.054350 kJ; used as a measure of power in the electric power, steam generation, heating, and air conditioning industries","kJ","kJ","1.054350",1.05435,false],[false,"British thermal unit","[Btu]","[BTU]","energy",1054350,[2,-2,1,0,0,0,0],"btu","heat",false,null,null,1,false,false,0,"BTU; B.T.U. ; B.Th.U.; BThU; British thermal units","UCUM","Eng","Nonclinical","equal to the thermochemical British thermal unit equal to 1.054350 kJ; used as a measure of power in the electric power, steam generation, heating, and air conditioning industries","[Btu_th]","[BTU_TH]","1",1,false],[false,"horsepower - mechanical","[HP]","[HP]","power",745699.8715822703,[2,-3,1,0,0,0,0],null,"heat",false,null,null,1,false,false,0,"imperial horsepowers","UCUM","EngRat","Nonclinical","refers to mechanical horsepower, which is unit used to measure engine power primarily in the US. ","[ft_i].[lbf_av]/s","[FT_I].[LBF_AV]/S","550",550,false],[false,"tex","tex","TEX","linear mass density (of textile thread)",0.001,[-1,0,1,0,0,0,0],"tex","heat",true,null,null,1,false,false,0,"linear mass density; texes","UCUM","","Clinical","unit of linear mass density for fibers equal to gram per 1000 meters","g/km","G/KM","1",1,false],[false,"Denier (linear mass density)","[den]","[DEN]","linear mass density (of textile thread)",0.0001111111111111111,[-1,0,1,0,0,0,0],"den","heat",false,null,null,1,false,false,0,"den; deniers","UCUM","","Nonclinical","equal to the mass in grams per 9000 meters of the fiber (1 denier = 1 strand of silk)","g/9/km","G/9/KM","1",1,false],[false,"meter of water column","m[H2O]","M[H2O]","pressure",9806650,[-1,-2,1,0,0,0,0],"m\xa0HO2","clinical",true,null,null,1,false,false,0,"mH2O; m H2O; meters of water column; metres; pressure","UCUM","Pres","Clinical","","kPa","KPAL","980665e-5",9.80665,false],[false,"meter of mercury column","m[Hg]","M[HG]","pressure",133322000,[-1,-2,1,0,0,0,0],"m\xa0Hg","clinical",true,null,null,1,false,false,0,"mHg; m Hg; meters of mercury column; metres; pressure","UCUM","Pres","Clinical","","kPa","KPAL","133.3220",133.322,false],[false,"inch of water column","[in_i\'H2O]","[IN_I\'H2O]","pressure",249088.91000000003,[-1,-2,1,0,0,0,0],"in\xa0HO2","clinical",false,null,null,1,false,false,0,"inches WC; inAq; in H2O; inch of water gauge; iwg; pressure","UCUM","Pres","Clinical","unit of pressure, especially in respiratory and ventilation care","m[H2O].[in_i]/m","M[H2O].[IN_I]/M","1",1,false],[false,"inch of mercury column","[in_i\'Hg]","[IN_I\'HG]","pressure",3386378.8000000003,[-1,-2,1,0,0,0,0],"in\xa0Hg","clinical",false,null,null,1,false,false,0,"inHg; in Hg; pressure; inches","UCUM","Pres","Clinical","unit of pressure used in US to measure barometric pressure and occasionally blood pressure (see mm[Hg] for unit used internationally)","m[Hg].[in_i]/m","M[HG].[IN_I]/M","1",1,false],[false,"peripheral vascular resistance unit","[PRU]","[PRU]","fluid resistance",133322000000,[-4,-1,1,0,0,0,0],"P.R.U.","clinical",false,null,null,1,false,false,0,"peripheral vascular resistance units; peripheral resistance unit; peripheral resistance units; PRU","UCUM","FldResist","Clinical","used to assess blood flow in the capillaries; equal to 1 mmH.min/mL = 133.3 Pa\xb7min/mL","mm[Hg].s/ml","MM[HG].S/ML","1",1,false],[false,"Wood unit","[wood\'U]","[WOOD\'U]","fluid resistance",7999320000,[-4,-1,1,0,0,0,0],"Wood U.","clinical",false,null,null,1,false,false,0,"hybrid reference units; HRU; mmHg.min/L; vascular resistance","UCUM","Pres","Clinical","simplified unit of measurement for for measuring pulmonary vascular resistance that uses pressure; equal to mmHg.min/L","mm[Hg].min/L","MM[HG].MIN/L","1",1,false],[false,"diopter (lens)","[diop]","[DIOP]","refraction of a lens",1,[1,0,0,0,0,0,0],"dpt","clinical",false,null,"inv",1,false,false,0,"diopters; diop; dioptre; dpt; refractive power","UCUM","InvLen","Clinical","unit of optical power of lens represented by inverse meters (m^-1)","m","/M","1",1,false],[false,"prism diopter (magnifying power)","[p\'diop]","[P\'DIOP]","refraction of a prism",1,[0,0,0,1,0,0,0],"PD","clinical",false,null,"tanTimes100",1,true,false,0,"diopters; dioptres; p diops; pdiop; dpt; pdptr; \u0394; cm/m; centimeter per meter; centimetre; metre","UCUM","Angle","Clinical","unit for prism correction in eyeglass prescriptions","rad",null,null,1,false],[false,"percent of slope","%[slope]","%[SLOPE]","slope",0.017453292519943295,[0,0,0,1,0,0,0],"%","clinical",false,null,"100tan",1,true,false,0,"% slope; %slope; percents slopes","UCUM","VelFr; ElpotRatFr; VelRtoFr; AccelFr","Clinical","","deg",null,null,1,false],[false,"mesh","[mesh_i]","[MESH_I]","lineic number",0.025400000000000002,[1,0,0,0,0,0,0],null,"clinical",false,null,"inv",1,false,false,0,"meshes","UCUM","NLen (lineic number)","Clinical","traditional unit of length defined as the number of strands or particles per inch","[in_i]","/[IN_I]","1",1,false],[false,"French (catheter gauge) ","[Ch]","[CH]","gauge of catheters",0.0003333333333333333,[1,0,0,0,0,0,0],"Ch","clinical",false,null,null,1,false,false,0,"Charri\xe8res, French scales; French gauges; Fr, Fg, Ga, FR, Ch","UCUM","Len; Circ; Diam","Clinical","","mm/3","MM/3","1",1,false],[false,"drop - metric (1/20 mL)","[drp]","[DRP]","volume",5e-8,[3,0,0,0,0,0,0],"drp","clinical",false,null,null,1,false,false,0,"drop dosing units; metric drops; gtt","UCUM","Vol","Clinical","standard unit used in the US and internationally for clinical medicine but note that although [drp] is defined as 1/20 milliliter, in practice, drop sizes will vary due to external factors","ml/20","ML/20","1",1,false],[false,"Hounsfield unit","[hnsf\'U]","[HNSF\'U]","x-ray attenuation",1,[0,0,0,0,0,0,0],"HF","clinical",false,null,null,1,false,false,0,"HU; units","UCUM","","Clinical","used to measure X-ray attenuation, especially in CT scans.","1","1","1",1,false],[false,"Metabolic Equivalent of Task ","[MET]","[MET]","metabolic cost of physical activity",5.833333333333334e-11,[3,-1,-1,0,0,0,0],"MET","clinical",false,null,null,1,false,false,0,"metabolic equivalents","UCUM","RelEngRat","Clinical","unit used to measure rate of energy expenditure per power in treadmill and other functional tests","mL/min/kg","ML/MIN/KG","3.5",3.5,false],[false,"homeopathic potency of decimal series (retired)","[hp\'_X]","[HP\'_X]","homeopathic potency (retired)",1,[0,0,0,0,0,0,0],"X","clinical",false,null,"hpX",1,true,false,0,null,"UCUM",null,null,null,"1",null,null,1,false],[false,"homeopathic potency of centesimal series (retired)","[hp\'_C]","[HP\'_C]","homeopathic potency (retired)",1,[0,0,0,0,0,0,0],"C","clinical",false,null,"hpC",1,true,false,0,null,"UCUM",null,null,null,"1",null,null,1,false],[false,"homeopathic potency of millesimal series (retired)","[hp\'_M]","[HP\'_M]","homeopathic potency (retired)",1,[0,0,0,0,0,0,0],"M","clinical",false,null,"hpM",1,true,false,0,null,"UCUM",null,null,null,"1",null,null,1,false],[false,"homeopathic potency of quintamillesimal series (retired)","[hp\'_Q]","[HP\'_Q]","homeopathic potency (retired)",1,[0,0,0,0,0,0,0],"Q","clinical",false,null,"hpQ",1,true,false,0,null,"UCUM",null,null,null,"1",null,null,1,false],[false,"homeopathic potency of decimal hahnemannian series","[hp_X]","[HP_X]","homeopathic potency (Hahnemann)",1,[0,0,0,0,0,0,0],"X","clinical",false,null,null,1,false,true,0,null,"UCUM",null,null,null,"1","1","1",1,false],[false,"homeopathic potency of centesimal hahnemannian series","[hp_C]","[HP_C]","homeopathic potency (Hahnemann)",1,[0,0,0,0,0,0,0],"C","clinical",false,null,null,1,false,true,0,null,"UCUM",null,null,null,"1","1","1",1,false],[false,"homeopathic potency of millesimal hahnemannian series","[hp_M]","[HP_M]","homeopathic potency (Hahnemann)",1,[0,0,0,0,0,0,0],"M","clinical",false,null,null,1,false,true,0,null,"UCUM",null,null,null,"1","1","1",1,false],[false,"homeopathic potency of quintamillesimal hahnemannian series","[hp_Q]","[HP_Q]","homeopathic potency (Hahnemann)",1,[0,0,0,0,0,0,0],"Q","clinical",false,null,null,1,false,true,0,null,"UCUM",null,null,null,"1","1","1",1,false],[false,"homeopathic potency of decimal korsakovian series","[kp_X]","[KP_X]","homeopathic potency (Korsakov)",1,[0,0,0,0,0,0,0],"X","clinical",false,null,null,1,false,true,0,null,"UCUM",null,null,null,"1","1","1",1,false],[false,"homeopathic potency of centesimal korsakovian series","[kp_C]","[KP_C]","homeopathic potency (Korsakov)",1,[0,0,0,0,0,0,0],"C","clinical",false,null,null,1,false,true,0,null,"UCUM",null,null,null,"1","1","1",1,false],[false,"homeopathic potency of millesimal korsakovian series","[kp_M]","[KP_M]","homeopathic potency (Korsakov)",1,[0,0,0,0,0,0,0],"M","clinical",false,null,null,1,false,true,0,null,"UCUM",null,null,null,"1","1","1",1,false],[false,"homeopathic potency of quintamillesimal korsakovian series","[kp_Q]","[KP_Q]","homeopathic potency (Korsakov)",1,[0,0,0,0,0,0,0],"Q","clinical",false,null,null,1,false,true,0,null,"UCUM",null,null,null,"1","1","1",1,false],[false,"equivalent","eq","EQ","amount of substance",6.0221367e+23,[0,0,0,0,0,0,0],"eq","chemical",true,null,null,1,false,false,1,"equivalents","UCUM","Sub","Clinical","equivalence equals moles per valence","mol","MOL","1",1,false],[false,"osmole","osm","OSM","amount of substance (dissolved particles)",6.0221367e+23,[0,0,0,0,0,0,0],"osm","chemical",true,null,null,1,false,false,1,"osmoles; osmols","UCUM","Osmol","Clinical","the number of moles of solute that contribute to the osmotic pressure of a solution","mol","MOL","1",1,false],[false,"pH","[pH]","[PH]","acidity",6.0221366999999994e+26,[-3,0,0,0,0,0,0],"pH","chemical",false,null,"pH",1,true,false,0,"pH scale","UCUM","LogCnc","Clinical","Log concentration of H+","mol/l",null,null,1,false],[false,"gram percent","g%","G%","mass concentration",10000,[-3,0,1,0,0,0,0],"g%","chemical",true,null,null,1,false,false,0,"gram %; gram%; grams per deciliter; g/dL; gm per dL; gram percents","UCUM","MCnc","Clinical","equivalent to unit gram per deciliter (g/dL), a unit often used in medical tests to represent solution concentrations","g/dl","G/DL","1",1,false],[false,"Svedberg unit","[S]","[S]","sedimentation coefficient",1e-13,[0,1,0,0,0,0,0],"S","chemical",false,null,null,1,false,false,0,"Sv; 10^-13 seconds; 100 fs; 100 femtoseconds","UCUM","Time","Clinical","unit of time used in measuring particle\'s sedimentation rate, usually after centrifugation. ","s","10*-13.S","1",1e-13,false],[false,"high power field (microscope)","[HPF]","[HPF]","view area in microscope",1,[0,0,0,0,0,0,0],"HPF","chemical",false,null,null,1,false,false,0,"HPF","UCUM","Area","Clinical","area visible under the maximum magnification power of the objective in microscopy (usually 400x)\\n","1","1","1",1,false],[false,"low power field (microscope)","[LPF]","[LPF]","view area in microscope",1,[0,0,0,0,0,0,0],"LPF","chemical",false,null,null,1,false,false,0,"LPF; fields","UCUM","Area","Clinical","area visible under the low magnification of the objective in microscopy (usually 100 x)\\n","1","1","100",100,false],[false,"katal","kat","KAT","catalytic activity",6.0221367e+23,[0,-1,0,0,0,0,0],"kat","chemical",true,null,null,1,false,false,1,"mol/secs; moles per second; mol*sec-1; mol*s-1; mol.s-1; katals; catalytic activity; enzymatic; enzyme units; activities","UCUM","CAct","Clinical","kat is a unit of catalytic activity with base units = mol/s. Rarely used because its units are too large to practically express catalytic activity. See enzyme unit [U] which is the standard unit for catalytic activity.","mol/s","MOL/S","1",1,false],[false,"enzyme unit","U","U","catalytic activity",10036894500000000,[0,-1,0,0,0,0,0],"U","chemical",true,null,null,1,false,false,1,"micromoles per minute; umol/min; umol per minute; umol min-1; enzymatic activity; enzyme activity","UCUM","CAct","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min)","umol/min","UMOL/MIN","1",1,false],[false,"international unit - arbitrary","[iU]","[IU]","arbitrary",1,[0,0,0,0,0,0,0],"IU","chemical",true,null,null,1,false,true,0,"international units; IE; F2","UCUM","Arb","Clinical","International units (IU) are analyte and reference specimen specific arbitrary units (held at WHO)","1","1","1",1,false],[false,"international unit - arbitrary","[IU]","[IU]","arbitrary",1,[0,0,0,0,0,0,0],"i.U.","chemical",true,null,null,1,false,true,0,"international units; IE; F2","UCUM","Arb","Clinical","International units (IU) are analyte and reference specimen specific arbitrary units (held at WHO)","[iU]","[IU]","1",1,false],[false,"arbitary unit","[arb\'U]","[ARB\'U]","arbitrary",1,[0,0,0,0,0,0,0],"arb. U","chemical",false,null,null,1,false,true,0,"arbitary units; arb units; arbU","UCUM","Arb","Clinical","relative unit of measurement to show the ratio of test measurement to reference measurement","1","1","1",1,false],[false,"United States Pharmacopeia unit","[USP\'U]","[USP\'U]","arbitrary",1,[0,0,0,0,0,0,0],"U.S.P.","chemical",false,null,null,1,false,true,0,"USP U; USP\'U","UCUM","Arb","Clinical","a dose unit to express potency of drugs and vitamins defined by the United States Pharmacopoeia; usually 1 USP = 1 IU","1","1","1",1,false],[false,"GPL unit","[GPL\'U]","[GPL\'U]","biologic activity of anticardiolipin IgG",1,[0,0,0,0,0,0,0],null,"chemical",false,null,null,1,false,true,0,"GPL Units; GPL U; IgG anticardiolipin units; IgG Phospholipid","UCUM","ACnc; AMass","Clinical","Units for an antiphospholipid test","1","1","1",1,false],[false,"MPL unit","[MPL\'U]","[MPL\'U]","biologic activity of anticardiolipin IgM",1,[0,0,0,0,0,0,0],null,"chemical",false,null,null,1,false,true,0,"MPL units; MPL U; MPL\'U; IgM anticardiolipin units; IgM Phospholipid Units ","UCUM","ACnc","Clinical","units for antiphospholipid test","1","1","1",1,false],[false,"APL unit","[APL\'U]","[APL\'U]","biologic activity of anticardiolipin IgA",1,[0,0,0,0,0,0,0],null,"chemical",false,null,null,1,false,true,0,"APL units; APL U; IgA anticardiolipin; IgA Phospholipid; biologic activity of","UCUM","AMass; ACnc","Clinical","Units for an anti phospholipid syndrome test","1","1","1",1,false],[false,"Bethesda unit","[beth\'U]","[BETH\'U]","biologic activity of factor VIII inhibitor",1,[0,0,0,0,0,0,0],null,"chemical",false,null,null,1,false,true,0,"BU","UCUM","ACnc","Clinical","measures of blood coagulation inhibitior for many blood factors","1","1","1",1,false],[false,"anti factor Xa unit","[anti\'Xa\'U]","[ANTI\'XA\'U]","biologic activity of factor Xa inhibitor (heparin)",1,[0,0,0,0,0,0,0],null,"chemical",false,null,null,1,false,true,0,"units","UCUM","ACnc","Clinical","[anti\'Xa\'U] unit is equivalent to and can be converted to IU/mL. ","1","1","1",1,false],[false,"Todd unit","[todd\'U]","[TODD\'U]","biologic activity antistreptolysin O",1,[0,0,0,0,0,0,0],null,"chemical",false,null,null,1,false,true,0,"units","UCUM","InvThres; RtoThres","Clinical","the unit for the results of the testing for antistreptolysin O (ASO)","1","1","1",1,false],[false,"Dye unit","[dye\'U]","[DYE\'U]","biologic activity of amylase",1,[0,0,0,0,0,0,0],null,"chemical",false,null,null,1,false,true,0,"units","UCUM","CCnc","Obsolete","equivalent to the Somogyi unit, which is an enzyme unit for amylase but better to use U, the standard enzyme unit for measuring catalytic activity","1","1","1",1,false],[false,"Somogyi unit","[smgy\'U]","[SMGY\'U]","biologic activity of amylase",1,[0,0,0,0,0,0,0],null,"chemical",false,null,null,1,false,true,0,"Somogyi units; smgy U","UCUM","CAct","Clinical","measures the enzymatic activity of amylase in blood serum - better to use base units mg/mL ","1","1","1",1,false],[false,"Bodansky unit","[bdsk\'U]","[BDSK\'U]","biologic activity of phosphatase",1,[0,0,0,0,0,0,0],null,"chemical",false,null,null,1,false,true,0,"","UCUM","ACnc","Obsolete","Enzyme unit specific to alkaline phosphatase - better to use standard enzyme unit of U","1","1","1",1,false],[false,"King-Armstrong unit","[ka\'U]","[KA\'U]","biologic activity of phosphatase",1,[0,0,0,0,0,0,0],null,"chemical",false,null,null,1,false,true,0,"King-Armstrong Units; King units","UCUM","AMass","Obsolete","enzyme units for acid phosphatase - better to use enzyme unit [U]","1","1","1",1,false],[false,"Kunkel unit","[knk\'U]","[KNK\'U]","arbitrary biologic activity",1,[0,0,0,0,0,0,0],null,"chemical",false,null,null,1,false,true,0,null,"UCUM",null,null,null,"1","1","1",1,false],[false,"Mac Lagan unit","[mclg\'U]","[MCLG\'U]","arbitrary biologic activity",1,[0,0,0,0,0,0,0],null,"chemical",false,null,null,1,false,true,0,"galactose index; galactose tolerance test; thymol turbidity test unit; mclg U; units; indexes","UCUM","ACnc","Obsolete","unit for liver tests - previously used in thymol turbidity tests for liver disease diagnoses, and now is sometimes referred to in the oral galactose tolerance test","1","1","1",1,false],[false,"tuberculin unit","[tb\'U]","[TB\'U]","biologic activity of tuberculin",1,[0,0,0,0,0,0,0],null,"chemical",false,null,null,1,false,true,0,"TU; units","UCUM","Arb","Clinical","amount of tuberculin antigen -usually in reference to a TB skin test ","1","1","1",1,false],[false,"50% cell culture infectious dose","[CCID_50]","[CCID_50]","biologic activity (infectivity) of an infectious agent preparation",1,[0,0,0,0,0,0,0],"CCID50","chemical",false,null,null,1,false,true,0,"CCID50; 50% cell culture infective doses","UCUM","NumThres","Clinical","","1","1","1",1,false],[false,"50% tissue culture infectious dose","[TCID_50]","[TCID_50]","biologic activity (infectivity) of an infectious agent preparation",1,[0,0,0,0,0,0,0],"TCID50","chemical",false,null,null,1,false,true,0,"TCID50; 50% tissue culture infective dose","UCUM","NumThres","Clinical","","1","1","1",1,false],[false,"50% embryo infectious dose","[EID_50]","[EID_50]","biologic activity (infectivity) of an infectious agent preparation",1,[0,0,0,0,0,0,0],"EID50","chemical",false,null,null,1,false,true,0,"EID50; 50% embryo infective doses; EID50 Egg Infective Dosage","UCUM","thresNum","Clinical","","1","1","1",1,false],[false,"plaque forming units","[PFU]","[PFU]","amount of an infectious agent",1,[0,0,0,0,0,0,0],"PFU","chemical",false,null,null,1,false,true,0,"PFU","UCUM","ACnc","Clinical","tests usually report unit as number of PFU per unit volume","1","1","1",1,false],[false,"focus forming units (cells)","[FFU]","[FFU]","amount of an infectious agent",1,[0,0,0,0,0,0,0],"FFU","chemical",false,null,null,1,false,true,0,"FFU","UCUM","EntNum","Clinical","","1","1","1",1,false],[false,"colony forming units","[CFU]","[CFU]","amount of a proliferating organism",1,[0,0,0,0,0,0,0],"CFU","chemical",false,null,null,1,false,true,0,"CFU","UCUM","Num","Clinical","","1","1","1",1,false],[false,"index of reactivity (allergen)","[IR]","[IR]","amount of an allergen callibrated through in-vivo testing using the Stallergenes\xae method.",1,[0,0,0,0,0,0,0],"IR","chemical",false,null,null,1,false,true,0,"IR; indexes","UCUM","Acnc","Clinical","amount of an allergen callibrated through in-vivo testing using the Stallergenes method. Usually reported in tests as IR/mL","1","1","1",1,false],[false,"bioequivalent allergen unit","[BAU]","[BAU]","amount of an allergen callibrated through in-vivo testing based on the ID50EAL method of (intradermal dilution for 50mm sum of erythema diameters",1,[0,0,0,0,0,0,0],"BAU","chemical",false,null,null,1,false,true,0,"BAU; Bioequivalent Allergy Units; bioequivalent allergen units","UCUM","Arb","Clinical","","1","1","1",1,false],[false,"allergy unit","[AU]","[AU]","procedure defined amount of an allergen using some reference standard",1,[0,0,0,0,0,0,0],"AU","chemical",false,null,null,1,false,true,0,"allergy units; allergen units; AU","UCUM","Arb","Clinical","Most standard test allergy units are reported as [IU] or as %. ","1","1","1",1,false],[false,"allergen unit for Ambrosia artemisiifolia","[Amb\'a\'1\'U]","[AMB\'A\'1\'U]","procedure defined amount of the major allergen of ragweed.",1,[0,0,0,0,0,0,0],"Amb a 1 U","chemical",false,null,null,1,false,true,0,"Amb a 1 unit; Antigen E; AgE U; allergen units","UCUM","Arb","Clinical","Amb a 1 is the major allergen in short ragweed, and can be converted Bioequivalent allergen units (BAU) where 350 Amb a 1 U/mL = 100,000 BAU/mL","1","1","1",1,false],[false,"protein nitrogen unit (allergen testing)","[PNU]","[PNU]","procedure defined amount of a protein substance",1,[0,0,0,0,0,0,0],"PNU","chemical",false,null,null,1,false,true,0,"protein nitrogen units; PNU","UCUM","Mass","Clinical","defined as 0.01 ug of phosphotungstic acid-precipitable protein nitrogen. Being replaced by bioequivalent allergy units (BAU).","1","1","1",1,false],[false,"Limit of flocculation","[Lf]","[LF]","procedure defined amount of an antigen substance",1,[0,0,0,0,0,0,0],"Lf","chemical",false,null,null,1,false,true,0,"Lf doses","UCUM","Arb","Clinical","the antigen content forming 1:1 ratio against 1 unit of antitoxin","1","1","1",1,false],[false,"D-antigen unit (polio)","[D\'ag\'U]","[D\'AG\'U]","procedure defined amount of a poliomyelitis d-antigen substance",1,[0,0,0,0,0,0,0],null,"chemical",false,null,null,1,false,true,0,"DAgU; units","UCUM","Acnc","Clinical","unit of potency of poliovirus vaccine used for poliomyelitis prevention reported as D antigen units/mL. The unit is poliovirus type-specific.","1","1","1",1,false],[false,"fibrinogen equivalent units","[FEU]","[FEU]","amount of fibrinogen broken down into the measured d-dimers",1,[0,0,0,0,0,0,0],null,"chemical",false,null,null,1,false,true,0,"FEU","UCUM","MCnc","Clinical","Note both the FEU and DDU units are used to report D-dimer measurements. 1 DDU = 1/2 FFU","1","1","1",1,false],[false,"ELISA unit","[ELU]","[ELU]","arbitrary ELISA unit",1,[0,0,0,0,0,0,0],null,"chemical",false,null,null,1,false,true,0,"Enzyme-Linked Immunosorbent Assay Units; ELU; EL. U","UCUM","ACnc","Clinical","","1","1","1",1,false],[false,"Ehrlich units (urobilinogen)","[EU]","[EU]","Ehrlich unit",1,[0,0,0,0,0,0,0],null,"chemical",false,null,null,1,false,true,0,"EU/dL; mg{urobilinogen}/dL","UCUM","ACnc","Clinical","","1","1","1",1,false],[false,"neper","Np","NEP","level",1,[0,0,0,0,0,0,0],"Np","levels",true,null,"ln",1,true,false,0,"nepers","UCUM","LogRto","Clinical","logarithmic unit for ratios of measurements of physical field and power quantities, such as gain and loss of electronic signals","1",null,null,1,false],[false,"bel","B","B","level",1,[0,0,0,0,0,0,0],"B","levels",true,null,"lg",1,true,false,0,"bels","UCUM","LogRto","Clinical","Logarithm of the ratio of power- or field-type quantities; usually expressed in decibels ","1",null,null,1,false],[false,"bel sound pressure","B[SPL]","B[SPL]","pressure level",0.02,[-1,-2,1,0,0,0,0],"B(SPL)","levels",true,null,"lgTimes2",1,true,false,0,"bel SPL; B SPL; sound pressure bels","UCUM","LogRto","Clinical","used to measure sound level in acoustics","Pa",null,null,0.00002,false],[false,"bel volt","B[V]","B[V]","electric potential level",1000,[2,-2,1,0,0,-1,0],"B(V)","levels",true,null,"lgTimes2",1,true,false,0,"bel V; B V; volts bels","UCUM","LogRtoElp","Clinical","used to express power gain in electrical circuits","V",null,null,1,false],[false,"bel millivolt","B[mV]","B[MV]","electric potential level",1,[2,-2,1,0,0,-1,0],"B(mV)","levels",true,null,"lgTimes2",1,true,false,0,"bel mV; B mV; millivolt bels; 10^-3V bels; 10*-3V ","UCUM","LogRtoElp","Clinical","used to express power gain in electrical circuits","mV",null,null,1,false],[false,"bel microvolt","B[uV]","B[UV]","electric potential level",0.001,[2,-2,1,0,0,-1,0],"B(\u03bcV)","levels",true,null,"lgTimes2",1,true,false,0,"bel uV; B uV; microvolts bels; 10^-6V bel; 10*-6V bel","UCUM","LogRto","Clinical","used to express power gain in electrical circuits","uV",null,null,1,false],[false,"bel 10 nanovolt","B[10.nV]","B[10.NV]","electric potential level",0.000010000000000000003,[2,-2,1,0,0,-1,0],"B(10 nV)","levels",true,null,"lgTimes2",1,true,false,0,"bel 10 nV; B 10 nV; 10 nanovolts bels","UCUM","LogRtoElp","Clinical","used to express power gain in electrical circuits","nV",null,null,10,false],[false,"bel watt","B[W]","B[W]","power level",1000,[2,-3,1,0,0,0,0],"B(W)","levels",true,null,"lg",1,true,false,0,"bel W; b W; b Watt; Watts bels","UCUM","LogRto","Clinical","used to express power","W",null,null,1,false],[false,"bel kilowatt","B[kW]","B[KW]","power level",1000000,[2,-3,1,0,0,0,0],"B(kW)","levels",true,null,"lg",1,true,false,0,"bel kW; B kW; kilowatt bel; kW bel; kW B","UCUM","LogRto","Clinical","used to express power","kW",null,null,1,false],[false,"stere","st","STR","volume",1,[3,0,0,0,0,0,0],"st","misc",true,null,null,1,false,false,0,"st\xe8re; m3; cubic meter; m^3; meters cubed; metre","UCUM","Vol","Nonclinical","equal to one cubic meter, usually used for measuring firewoord","m3","M3","1",1,false],[false,"\xc5ngstr\xf6m","Ao","AO","length",1.0000000000000002e-10,[1,0,0,0,0,0,0],"\xc5","misc",false,null,null,1,false,false,0,"\xc5; Angstroms; Ao; \xc5ngstr\xf6ms","UCUM","Len","Clinical","equal to 10^-10 meters; used to express wave lengths and atom scaled differences ","nm","NM","0.1",0.1,false],[false,"barn","b","BRN","action area",9.999999999999999e-29,[2,0,0,0,0,0,0],"b","misc",false,null,null,1,false,false,0,"barns","UCUM","Area","Clinical","used in high-energy physics to express cross-sectional areas","fm2","FM2","100",100,false],[false,"technical atmosphere","att","ATT","pressure",98066499.99999999,[-1,-2,1,0,0,0,0],"at","misc",false,null,null,1,false,false,0,"at; tech atm; tech atmosphere; kgf/cm2; atms; atmospheres","UCUM","Pres","Obsolete","non-SI unit of pressure equal to one kilogram-force per square centimeter","kgf/cm2","KGF/CM2","1",1,false],[false,"mho","mho","MHO","electric conductance",0.001,[-2,1,-1,0,0,2,0],"mho","misc",true,null,null,1,false,false,0,"siemens; ohm reciprocals; \u03a9^\u22121; \u03a9-1 ","UCUM","","Obsolete","unit of electric conductance (the inverse of electrical resistance) equal to ohm^-1","S","S","1",1,false],[false,"pound per square inch","[psi]","[PSI]","pressure",6894757.293168359,[-1,-2,1,0,0,0,0],"psi","misc",false,null,null,1,false,false,0,"psi; lb/in2; lb per in2","UCUM","Pres","Clinical","","[lbf_av]/[in_i]2","[LBF_AV]/[IN_I]2","1",1,false],[false,"circle - plane angle","circ","CIRC","plane angle",6.283185307179586,[0,0,0,1,0,0,0],"circ","misc",false,null,null,1,false,false,0,"angles; circles","UCUM","Angle","Clinical","","[pi].rad","[PI].RAD","2",2,false],[false,"spere - solid angle","sph","SPH","solid angle",12.566370614359172,[0,0,0,2,0,0,0],"sph","misc",false,null,null,1,false,false,0,"speres","UCUM","Angle","Clinical","equal to the solid angle of an entire sphere = 4\u03c0sr (sr = steradian) ","[pi].sr","[PI].SR","4",4,false],[false,"metric carat","[car_m]","[CAR_M]","mass",0.2,[0,0,1,0,0,0,0],"ctm","misc",false,null,null,1,false,false,0,"carats; ct; car m","UCUM","Mass","Nonclinical","unit of mass for gemstones","g","G","2e-1",0.2,false],[false,"carat of gold alloys","[car_Au]","[CAR_AU]","mass fraction",0.041666666666666664,[0,0,0,0,0,0,0],"ctAu","misc",false,null,null,1,false,false,0,"karats; k; kt; car au; carats","UCUM","MFr","Nonclinical","unit of purity for gold alloys","/24","/24","1",1,false],[false,"Smoot","[smoot]","[SMOOT]","length",1.7018000000000002,[1,0,0,0,0,0,0],null,"misc",false,null,null,1,false,false,0,"","UCUM","Len","Nonclinical","prank unit of length from MIT","[in_i]","[IN_I]","67",67,false],[false,"meter per square seconds per square root of hertz","[m/s2/Hz^(1/2)]","[M/S2/HZ^(1/2)]","amplitude spectral density",1,[2,-3,0,0,0,0,0],null,"misc",false,null,"sqrt",1,true,false,0,"m/s2/(Hz^.5); m/s2/(Hz^(1/2)); m per s2 per Hz^1/2","UCUM","","Constant","measures amplitude spectral density, and is equal to the square root of power spectral density\\n ","m2/s4/Hz",null,null,1,false],[false,"bit - logarithmic","bit_s","BIT_S","amount of information",1,[0,0,0,0,0,0,0],"bits","infotech",false,null,"ld",1,true,false,0,"bit-s; bit s; bit logarithmic","UCUM","LogA","Nonclinical","defined as the log base 2 of the number of distinct signals; cannot practically be used to express more than 1000 bits\\n\\nIn information theory, the definition of the amount of self-information and information entropy is often expressed with the binary logarithm (log base 2)","1",null,null,1,false],[false,"bit","bit","BIT","amount of information",1,[0,0,0,0,0,0,0],"bit","infotech",true,null,null,1,false,false,0,"bits","UCUM","","Nonclinical","dimensionless information unit of 1 used in computing and digital communications","1","1","1",1,false],[false,"byte","By","BY","amount of information",8,[0,0,0,0,0,0,0],"B","infotech",true,null,null,1,false,false,0,"bytes","UCUM","","Nonclinical","equal to 8 bits","bit","bit","8",8,false],[false,"baud","Bd","BD","signal transmission rate",1,[0,1,0,0,0,0,0],"Bd","infotech",true,null,"inv",1,false,false,0,"Bd; bauds","UCUM","Freq","Nonclinical","unit to express rate in symbols per second or pulses per second. ","s","/s","1",1,false],[false,"per twelve hour","/(12.h)","/HR","",0.000023148148148148147,[0,-1,0,0,0,0,0],"/h",null,false,null,null,1,false,false,0,"per 12 hours; 12hrs; 12 hrs; /12hrs","LOINC","Rat","Clinical","",null,null,null,null,false],[false,"per arbitrary unit","/[arb\'U]","/[ARB\'U]","",1,[0,0,0,0,0,0,0],"/arb/ U",null,false,null,null,1,false,true,0,"/arbU","LOINC","InvA ","Clinical","",null,null,null,null,false],[false,"per high power field","/[HPF]","/[HPF]","",1,[0,0,0,0,0,0,0],"/HPF",null,false,null,null,1,false,false,0,"/HPF; per HPF","LOINC","Naric","Clinical","",null,null,null,null,false],[false,"per international unit","/[IU]","/[IU]","",1,[0,0,0,0,0,0,0],"/i/U.",null,false,null,null,1,false,true,0,"international units; /IU; per IU","LOINC","InvA","Clinical","International units (IU) are analyte and reference specimen specific arbitrary units (held at WHO)",null,null,null,null,false],[false,"per low power field","/[LPF]","/[LPF]","",1,[0,0,0,0,0,0,0],"/LPF",null,false,null,null,1,false,false,0,"/LPF; per LPF","LOINC","Naric","Clinical","",null,null,null,null,false],[false,"per 10 billion ","/10*10","/10*10","",1e-10,[0,0,0,0,0,0,0],"/1010<.sup>",null,false,null,null,1,false,false,0,"/10^10; per 10*10","LOINC","NFr","Clinical","used for counting entities, e.g. blood cells; usually these kinds of terms have numerators such as moles or milligrams, and counting that amount per the number in the denominator",null,null,null,null,false],[false,"per trillion ","/10*12","/10*12","",1e-12,[0,0,0,0,0,0,0],"/1012<.sup>",null,false,null,null,1,false,false,0,"/10^12; per 10*12","LOINC","NFr","Clinical","used for counting entities, e.g. blood cells; usually these kinds of terms have numerators such as moles or milligrams, and counting that amount per the number in the denominator",null,null,null,null,false],[false,"per thousand","/10*3","/10*3","",0.001,[0,0,0,0,0,0,0],"/103<.sup>",null,false,null,null,1,false,false,0,"/10^3; per 10*3","LOINC","NFr","Clinical","used for counting entities, e.g. blood cells; usually these kinds of terms have numerators such as moles or milligrams, and counting that amount per the number in the denominator",null,null,null,null,false],[false,"per million","/10*6","/10*6","",0.000001,[0,0,0,0,0,0,0],"/106<.sup>",null,false,null,null,1,false,false,0,"/10^6; per 10*6;","LOINC","NFr","Clinical","used for counting entities, e.g. blood cells; usually these kinds of terms have numerators such as moles or milligrams, and counting that amount per the number in the denominator",null,null,null,null,false],[false,"per billion","/10*9","/10*9","",1e-9,[0,0,0,0,0,0,0],"/109<.sup>",null,false,null,null,1,false,false,0,"/10^9; per 10*9","LOINC","NFr","Clinical","used for counting entities, e.g. blood cells; usually these kinds of terms have numerators such as moles or milligrams, and counting that amount per the number in the denominator",null,null,null,null,false],[false,"per 100","/100","","",0.01,[0,0,0,0,0,0,0],null,null,false,null,null,1,false,false,0,"per hundred; 10^2; 10*2","LOINC","NFr","Clinical","used for counting entities, e.g. blood cells; usually these kinds of terms have numerators such as moles or milligrams, and counting that amount per the number in the denominator",null,null,null,null,false],[false,"per 100 cells","/100{cells}","","",0.01,[0,0,0,0,0,0,0],null,null,false,null,null,1,false,false,0,"/100 cells; /100cells; per hundred","LOINC","EntMass; EntNum; NFr","Clinical","",null,null,null,null,false],[false,"per 100 neutrophils","/100{neutrophils}","","",0.01,[0,0,0,0,0,0,0],null,null,false,null,null,1,false,false,0,"/100 neutrophils; /100neutrophils; per hundred","LOINC","EntMass; EntNum; NFr","Clinical","",null,null,null,null,false],[false,"per 100 spermatozoa","/100{spermatozoa}","","",0.01,[0,0,0,0,0,0,0],null,null,false,null,null,1,false,false,0,"/100 spermatozoa; /100spermatozoa; per hundred","LOINC","NFr","Clinical","",null,null,null,null,false],[false,"per 100 white blood cells","/100{WBCs}","","",0.01,[0,0,0,0,0,0,0],null,null,false,null,null,1,false,false,0,"/100 WBCs; /100WBCs; per hundred","LOINC","Ratio; NFr","Clinical","",null,null,null,null,false],[false,"per year","/a","/ANN","",3.168808781402895e-8,[0,-1,0,0,0,0,0],"/a",null,false,null,null,1,false,false,0,"/Years; /yrs; yearly","LOINC","NRat","Clinical","",null,null,null,null,false],[false,"per centimeter of water","/cm[H2O]","/CM[H2O]","",0.000010197162129779282,[1,2,-1,0,0,0,0],"/cm\xa0HO2<.r>",null,false,null,null,1,false,false,0,"/cmH2O; /cm H2O; centimeters; centimetres","LOINC","InvPress","Clinical","",null,null,null,null,false],[false,"per day","/d","/D","",0.000011574074074074073,[0,-1,0,0,0,0,0],"/d",null,false,null,null,1,false,false,0,"/dy; per day","LOINC","NRat","Clinical","",null,null,null,null,false],[false,"per deciliter","/dL","/DL","",10000,[-3,0,0,0,0,0,0],"/dL",null,false,null,null,1,false,false,0,"per dL; /deciliter; decilitre","LOINC","NCnc","Clinical","",null,null,null,null,false],[false,"per gram","/g","/G","",1,[0,0,-1,0,0,0,0],"/g",null,false,null,null,1,false,false,0,"/gm; /gram; per g","LOINC","NCnt","Clinical","",null,null,null,null,false],[false,"per hour","/h","/HR","",0.0002777777777777778,[0,-1,0,0,0,0,0],"/h",null,false,null,null,1,false,false,0,"/hr; /hour; per hr","LOINC","NRat","Clinical","",null,null,null,null,false],[false,"per kilogram","/kg","/KG","",0.001,[0,0,-1,0,0,0,0],"/kg",null,false,null,null,1,false,false,0,"per kg; per kilogram","LOINC","NCnt","Clinical","",null,null,null,null,false],[false,"per liter","/L","/L","",1000,[-3,0,0,0,0,0,0],"/L",null,false,null,null,1,false,false,0,"/liter; litre","LOINC","NCnc","Clinical","",null,null,null,null,false],[false,"per square meter","/m2","/M2","",1,[-2,0,0,0,0,0,0],"/m2<.sup>",null,false,null,null,1,false,false,0,"/m^2; /m*2; /sq. m; per square meter; meter squared; metre","LOINC","Naric","Clinical","",null,null,null,null,false],[false,"per cubic meter","/m3","/M3","",1,[-3,0,0,0,0,0,0],"/m3<.sup>",null,false,null,null,1,false,false,0,"/m^3; /m*3; /cu. m; per cubic meter; meter cubed; per m3; metre","LOINC","NCncn","Clinical","",null,null,null,null,false],[false,"per milligram","/mg","/MG","",1000,[0,0,-1,0,0,0,0],"/mg",null,false,null,null,1,false,false,0,"/milligram; per mg","LOINC","NCnt","Clinical","",null,null,null,null,false],[false,"per minute","/min","/MIN","",0.016666666666666666,[0,-1,0,0,0,0,0],"/min",null,false,null,null,1,false,false,0,"/minute; per mins; breaths beats per minute","LOINC","NRat","Clinical","",null,null,null,null,false],[false,"per milliliter","/mL","/ML","",1000000,[-3,0,0,0,0,0,0],"/mL",null,false,null,null,1,false,false,0,"/milliliter; per mL; millilitre","LOINC","NCncn","Clinical","",null,null,null,null,false],[false,"per millimeter","/mm","/MM","",1000,[-1,0,0,0,0,0,0],"/mm",null,false,null,null,1,false,false,0,"/millimeter; per mm; millimetre","LOINC","InvLen","Clinical","",null,null,null,null,false],[false,"per month","/mo","/MO","",3.802570537683474e-7,[0,-1,0,0,0,0,0],"/mo",null,false,null,null,1,false,false,0,"/month; per mo; monthly; month","LOINC","NRat","Clinical","",null,null,null,null,false],[false,"per second","/s","/S","",1,[0,-1,0,0,0,0,0],"/s",null,false,null,null,1,false,false,0,"/second; /sec; per sec; frequency; Hertz; Herz; Hz; becquerels; Bq; s-1; s^-1","LOINC","NRat","Clinical","",null,null,null,null,false],[false,"per enzyme unit","/U","/U","",9.963241120049633e-17,[0,1,0,0,0,0,0],"/U",null,false,null,null,1,false,false,-1,"/enzyme units; per U","LOINC","InvC; NCat","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min)",null,null,null,null,false],[false,"per microliter","/uL","/UL","",999999999.9999999,[-3,0,0,0,0,0,0],"/\u03bcL",null,false,null,null,1,false,false,0,"/microliter; microlitre; /mcl; per uL","LOINC","ACnc","Clinical","",null,null,null,null,false],[false,"per week","/wk","/WK","",0.0000016534391534391535,[0,-1,0,0,0,0,0],"/wk",null,false,null,null,1,false,false,0,"/week; per wk; weekly, weeks","LOINC","NRat","Clinical","",null,null,null,null,false],[false,"APL unit per milliliter","[APL\'U]/mL","[APL\'U]/ML","biologic activity of anticardiolipin IgA",1000000,[-3,0,0,0,0,0,0],"/mL","chemical",false,null,null,1,false,true,0,"APL/mL; APL\'U/mL; APL U/mL; APL/milliliter; IgA anticardiolipin units per milliliter; IgA Phospholipid Units; millilitre; biologic activity of","LOINC","ACnc","Clinical","Units for an anti phospholipid syndrome test","1","1","1",1,false],[false,"arbitrary unit per milliliter","[arb\'U]/mL","[ARB\'U]/ML","arbitrary",1000000,[-3,0,0,0,0,0,0],"(arb. U)/mL","chemical",false,null,null,1,false,true,0,"arb\'U/mL; arbU/mL; arb U/mL; arbitrary units per milliliter; millilitre","LOINC","ACnc","Clinical","relative unit of measurement to show the ratio of test measurement to reference measurement","1","1","1",1,false],[false,"colony forming units per liter","[CFU]/L","[CFU]/L","amount of a proliferating organism",1000,[-3,0,0,0,0,0,0],"CFU/L","chemical",false,null,null,1,false,true,0,"CFU per Liter; CFU/L","LOINC","NCnc","Clinical","","1","1","1",1,false],[false,"colony forming units per milliliter","[CFU]/mL","[CFU]/ML","amount of a proliferating organism",1000000,[-3,0,0,0,0,0,0],"CFU/mL","chemical",false,null,null,1,false,true,0,"CFU per mL; CFU/mL","LOINC","NCnc","Clinical","","1","1","1",1,false],[false,"foot per foot - US","[ft_us]/[ft_us]","[FT_US]/[FT_US]","length",1,[0,0,0,0,0,0,0],"(ftus)/(ftus)","us-lengths",false,null,null,1,false,false,0,"ft/ft; ft per ft; feet per feet; visual acuity","","LenRto","Clinical","distance ratio to measure 20:20 vision","m/3937","M/3937","1200",1200,false],[false,"GPL unit per milliliter","[GPL\'U]/mL","[GPL\'U]/ML","biologic activity of anticardiolipin IgG",1000000,[-3,0,0,0,0,0,0],"/mL","chemical",false,null,null,1,false,true,0,"GPL U/mL; GPL\'U/mL; GPL/mL; GPL U per mL; IgG Phospholipid Units per milliliters; IgG anticardiolipin units; millilitres ","LOINC","ACnc; AMass","Clinical","Units for an antiphospholipid test","1","1","1",1,false],[false,"international unit per 2 hour","[IU]/(2.h)","[IU]/HR","arbitrary",0.0001388888888888889,[0,-1,0,0,0,0,0],"(i.U.)/h","chemical",true,null,null,1,false,true,0,"IU/2hrs; IU/2 hours; IU per 2 hrs; international units per 2 hours","LOINC","ARat","Clinical","International units (IU) are analyte and reference specimen specific arbitrary units (held at WHO)","[iU]","[IU]","1",1,false],[false,"international unit per 24 hour","[IU]/(24.h)","[IU]/HR","arbitrary",0.000011574074074074073,[0,-1,0,0,0,0,0],"(i.U.)/h","chemical",true,null,null,1,false,true,0,"IU/24hr; IU/24 hours; IU per 24 hrs; international units per 24 hours","LOINC","ARat","Clinical","International units (IU) are analyte and reference specimen specific arbitrary units (held at WHO)","[iU]","[IU]","1",1,false],[false,"international unit per day","[IU]/d","[IU]/D","arbitrary",0.000011574074074074073,[0,-1,0,0,0,0,0],"(i.U.)/d","chemical",true,null,null,1,false,true,0,"IU/dy; IU/days; IU per dys; international units per day","LOINC","ARat","Clinical","International units (IU) are analyte and reference specimen specific arbitrary units (held at WHO)","[iU]","[IU]","1",1,false],[false,"international unit per deciliter","[IU]/dL","[IU]/DL","arbitrary",10000,[-3,0,0,0,0,0,0],"(i.U.)/dL","chemical",true,null,null,1,false,true,0,"IU/dL; IU per dL; international units per deciliters; decilitres","LOINC","ACnc","Clinical","International units (IU) are analyte and reference specimen specific arbitrary units (held at WHO)","[iU]","[IU]","1",1,false],[false,"international unit per gram","[IU]/g","[IU]/G","arbitrary",1,[0,0,-1,0,0,0,0],"(i.U.)/g","chemical",true,null,null,1,false,true,0,"IU/gm; IU/gram; IU per gm; IU per g; international units per gram","LOINC","ACnt","Clinical","International units (IU) are analyte and reference specimen specific arbitrary units (held at WHO)","[iU]","[IU]","1",1,false],[false,"international unit per hour","[IU]/h","[IU]/HR","arbitrary",0.0002777777777777778,[0,-1,0,0,0,0,0],"(i.U.)/h","chemical",true,null,null,1,false,true,0,"IU/hrs; IU per hours; international units per hour","LOINC","ARat","Clinical","International units (IU) are analyte and reference specimen specific arbitrary units (held at WHO)","[iU]","[IU]","1",1,false],[false,"international unit per kilogram","[IU]/kg","[IU]/KG","arbitrary",0.001,[0,0,-1,0,0,0,0],"(i.U.)/kg","chemical",true,null,null,1,false,true,0,"IU/kg; IU/kilogram; IU per kg; units","LOINC","ACnt","Clinical","International units (IU) are analyte and reference specimen specific arbitrary units (held at WHO)","[iU]","[IU]","1",1,false],[false,"international unit per kilogram per day","[IU]/kg/d","([IU]/KG)/D","arbitrary",1.1574074074074074e-8,[0,-1,-1,0,0,0,0],"((i.U.)/kg)/d","chemical",true,null,null,1,false,true,0,"IU/kg/dy; IU/kg/day; IU/kilogram/day; IU per kg per day; units","LOINC","ACntRat","Clinical","International units (IU) are analyte and reference specimen specific arbitrary units (held at WHO)","[iU]","[IU]","1",1,false],[false,"international unit per liter","[IU]/L","[IU]/L","arbitrary",1000,[-3,0,0,0,0,0,0],"(i.U.)/L","chemical",true,null,null,1,false,true,0,"IU/L; IU/liter; IU per liter; units; litre","LOINC","ACnc","Clinical","International units (IU) are analyte and reference specimen specific arbitrary units (held at WHO)","[iU]","[IU]","1",1,false],[false,"international unit per minute","[IU]/min","[IU]/MIN","arbitrary",0.016666666666666666,[0,-1,0,0,0,0,0],"(i.U.)/min","chemical",true,null,null,1,false,true,0,"IU/min; IU/minute; IU per minute; international units","LOINC","ARat","Clinical","International units (IU) are analyte and reference specimen specific arbitrary units (held at WHO)","[iU]","[IU]","1",1,false],[false,"international unit per milliliter","[IU]/mL","[IU]/ML","arbitrary",1000000,[-3,0,0,0,0,0,0],"(i.U.)/mL","chemical",true,null,null,1,false,true,0,"IU/mL; IU per mL; international units per milliliter; millilitre","LOINC","ACnc","Clinical","International units (IU) are analyte and reference specimen specific arbitrary units (held at WHO)","[iU]","[IU]","1",1,false],[false,"MPL unit per milliliter","[MPL\'U]/mL","[MPL\'U]/ML","biologic activity of anticardiolipin IgM",1000000,[-3,0,0,0,0,0,0],"/mL","chemical",false,null,null,1,false,true,0,"MPL/mL; MPL U/mL; MPL\'U/mL; IgM anticardiolipin units; IgM Phospholipid Units; millilitre ","LOINC","ACnc","Clinical","units for antiphospholipid test\\n","1","1","1",1,false],[false,"number per high power field","{#}/[HPF]","/[HPF]","",1,[0,0,0,0,0,0,0],"/HPF",null,false,null,null,1,false,false,0,"#/HPF; # per HPF; number/HPF; numbers per high power field","LOINC","Naric","Clinical","",null,null,null,null,false],[false,"number per low power field","{#}/[LPF]","/[LPF]","",1,[0,0,0,0,0,0,0],"/LPF",null,false,null,null,1,false,false,0,"#/LPF; # per LPF; number/LPF; numbers per low power field","LOINC","Naric","Clinical","",null,null,null,null,false],[false,"IgA antiphosphatidylserine unit ","{APS\'U}","","",1,[0,0,0,0,0,0,0],null,null,false,null,null,1,false,false,0,"APS Unit; Phosphatidylserine Antibody IgA Units","LOINC","ACnc","Clinical","unit for antiphospholipid test",null,null,null,null,false],[false,"EIA index","{EIA_index}","","",1,[0,0,0,0,0,0,0],null,null,false,null,null,1,false,false,0,"enzyme immunoassay index","LOINC","ACnc","Clinical","",null,null,null,null,false],[false,"kaolin clotting time","{KCT\'U}","","",1,[0,0,0,0,0,0,0],null,null,false,null,null,1,false,false,0,"KCT","LOINC","Time","Clinical","sensitive\xa0test to detect\xa0lupus anticoagulants; measured in seconds",null,null,null,null,false],[false,"IgM antiphosphatidylserine unit","{MPS\'U}","","",1,[0,0,0,0,0,0,0],null,null,false,null,null,1,false,false,0,"Phosphatidylserine Antibody IgM Measurement ","LOINC","ACnc","Clinical","",null,null,null,null,false],[false,"trillion per liter","10*12/L","(10*12)/L","number",1000000000000000,[-3,0,0,0,0,0,0],"(1012)/L","dimless",false,null,null,1,false,false,0,"10^12/L; 10*12 per Liter; trillion per liter; litre","LOINC","NCncn","Clinical","","1","1","10",10,false],[false,"10^3 (used for cell count)","10*3","10*3","number",1000,[0,0,0,0,0,0,0],"103","dimless",false,null,null,1,false,false,0,"10^3; thousand","LOINC","Num","Clinical","usually used for counting entities (e.g. blood cells) per volume","1","1","10",10,false],[false,"thousand per liter","10*3/L","(10*3)/L","number",1000000,[-3,0,0,0,0,0,0],"(103)/L","dimless",false,null,null,1,false,false,0,"10^3/L; 10*3 per liter; litre","LOINC","NCncn","Clinical","","1","1","10",10,false],[false,"thousand per milliliter","10*3/mL","(10*3)/ML","number",1000000000,[-3,0,0,0,0,0,0],"(103)/mL","dimless",false,null,null,1,false,false,0,"10^3/mL; 10*3 per mL; thousand per milliliter; millilitre","LOINC","NCncn","Clinical","","1","1","10",10,false],[false,"thousand per microliter","10*3/uL","(10*3)/UL","number",999999999999.9999,[-3,0,0,0,0,0,0],"(103)/\u03bcL","dimless",false,null,null,1,false,false,0,"10^3/uL; 10*3 per uL; thousand per microliter; microlitre","LOINC","NCncn","Clinical","","1","1","10",10,false],[false,"10 thousand per microliter","10*4/uL","(10*4)/UL","number",10000000000000,[-3,0,0,0,0,0,0],"(104)/\u03bcL","dimless",false,null,null,1,false,false,0,"10^4/uL; 10*4 per uL; microlitre","LOINC","NCncn","Clinical","","1","1","10",10,false],[false,"10^5 ","10*5","10*5","number",100000,[0,0,0,0,0,0,0],"105","dimless",false,null,null,1,false,false,0,"one hundred thousand","LOINC","Num","Clinical","","1","1","10",10,false],[false,"10^6","10*6","10*6","number",1000000,[0,0,0,0,0,0,0],"106","dimless",false,null,null,1,false,false,0,"","LOINC","Num","Clinical","","1","1","10",10,false],[false,"million colony forming unit per liter","10*6.[CFU]/L","((10*6).[CFU])/L","number",1000000000,[-3,0,0,0,0,0,0],"((106).CFU)/L","dimless",false,null,null,1,false,true,0,"10*6 CFU/L; 10^6 CFU/L; 10^6CFU; 10^6 CFU per liter; million colony forming units; litre","LOINC","ACnc","Clinical","","1","1","10",10,false],[false,"million international unit","10*6.[IU]","(10*6).[IU]","number",1000000,[0,0,0,0,0,0,0],"(106).(i.U.)","dimless",false,null,null,1,false,true,0,"10*6 IU; 10^6 IU; international units","LOINC","arb","Clinical","International units (IU) are analyte and reference specimen specific arbitrary units (held at WHO)","1","1","10",10,false],[false,"million per 24 hour","10*6/(24.h)","(10*6)/HR","number",11.574074074074074,[0,-1,0,0,0,0,0],"(106)/h","dimless",false,null,null,1,false,false,0,"10*6/24hrs; 10^6/24 hrs; 10*6 per 24 hrs; 10^6 per 24 hours","LOINC","NRat","Clinical","","1","1","10",10,false],[false,"million per kilogram","10*6/kg","(10*6)/KG","number",1000,[0,0,-1,0,0,0,0],"(106)/kg","dimless",false,null,null,1,false,false,0,"10^6/kg; 10*6 per kg; 10*6 per kilogram; millions","LOINC","NCnt","Clinical","","1","1","10",10,false],[false,"million per liter","10*6/L","(10*6)/L","number",1000000000,[-3,0,0,0,0,0,0],"(106)/L","dimless",false,null,null,1,false,false,0,"10^6/L; 10*6 per Liter; 10^6 per Liter; litre","LOINC","NCncn","Clinical","","1","1","10",10,false],[false,"million per milliliter","10*6/mL","(10*6)/ML","number",1000000000000,[-3,0,0,0,0,0,0],"(106)/mL","dimless",false,null,null,1,false,false,0,"10^6/mL; 10*6 per mL; 10*6 per milliliter; millilitre","LOINC","NCncn","Clinical","","1","1","10",10,false],[false,"million per microliter","10*6/uL","(10*6)/UL","number",1000000000000000,[-3,0,0,0,0,0,0],"(106)/\u03bcL","dimless",false,null,null,1,false,false,0,"10^6/uL; 10^6 per uL; 10^6/mcl; 10^6 per mcl; 10^6 per microliter; microlitre","LOINC","NCncn","Clinical","","1","1","10",10,false],[false,"10^8","10*8","10*8","number",100000000,[0,0,0,0,0,0,0],"108","dimless",false,null,null,1,false,false,0,"100 million; one hundred million; 10^8","LOINC","Num","Clinical","","1","1","10",10,false],[false,"billion per liter","10*9/L","(10*9)/L","number",1000000000000,[-3,0,0,0,0,0,0],"(109)/L","dimless",false,null,null,1,false,false,0,"10^9/L; 10*9 per Liter; litre","LOINC","NCncn","Clinical","","1","1","10",10,false],[false,"billion per milliliter","10*9/mL","(10*9)/ML","number",1000000000000000,[-3,0,0,0,0,0,0],"(109)/mL","dimless",false,null,null,1,false,false,0,"10^9/mL; 10*9 per mL; 10^9 per mL; 10*9 per milliliter; millilitre","LOINC","NCncn","Clinical","","1","1","10",10,false],[false,"billion per microliter","10*9/uL","(10*9)/UL","number",1000000000000000000,[-3,0,0,0,0,0,0],"(109)/\u03bcL","dimless",false,null,null,1,false,false,0,"10^9/uL; 10^9 per uL; 10^9/mcl; 10^9 per mcl; 10*9 per uL; 10*9 per mcl; 10*9/mcl; 10^9 per microliter; microlitre","LOINC","NCncn","Clinical","","1","1","10",10,false],[false,"10 liter per minute per square meter","10.L/(min.m2)","L/(MIN.M2)","",0.00016666666666666666,[1,-1,0,0,0,0,0],"L/(min.(m2))",null,false,null,null,1,false,false,0,"10 liters per minutes per square meter; 10 L per min per m2; m^2; 10 L/(min*m2); 10L/(min*m^2); litres; sq. meter; metre; meters squared","LOINC","ArVRat","Clinical","",null,null,null,null,false],[false,"10 liter per minute","10.L/min","L/MIN","",0.00016666666666666666,[3,-1,0,0,0,0,0],"L/min",null,false,null,null,1,false,false,0,"10 liters per minute; 10 L per min; 10L; 10 L/min; litre","LOINC","VRat","Clinical","",null,null,null,null,false],[false,"10 micronewton second per centimeter to the fifth power per square meter","10.uN.s/(cm5.m2)","(UN.S)/(CM5.M2)","",100000000,[-6,-1,1,0,0,0,0],"(\u03bcN.s)/(cm5).(m2)",null,false,null,null,1,false,false,0,"dyne seconds per centimeter5 and square meter; dyn.s/(cm5.m2); dyn.s/cm5/m2; cm^5; m^2","LOINC","","Clinical","unit to measure systemic vascular resistance per body surface area",null,null,null,null,false],[false,"24 hour","24.h","HR","",86400,[0,1,0,0,0,0,0],"h",null,false,null,null,1,false,false,0,"24hrs; 24 hrs; 24 hours; days; dy","LOINC","Time","Clinical","",null,null,null,null,false],[false,"ampere per meter","A/m","A/M","electric current",1,[-1,-1,0,0,0,1,0],"A/m","si",true,null,null,1,false,false,0,"A/m; amp/meter; magnetic field strength; H; B; amperes per meter; metre","LOINC","","Clinical","unit of magnetic field strength","C/s","C/S","1",1,false],[false,"centigram","cg","CG","mass",0.01,[0,0,1,0,0,0,0],"cg",null,false,"M",null,1,false,false,0,"centigrams; cg; cgm","LOINC","Mass","Clinical","",null,null,null,null,false],[false,"centiliter","cL","CL","volume",0.00001,[3,0,0,0,0,0,0],"cL","iso1000",true,null,null,1,false,false,0,"centiliters; centilitres","LOINC","Vol","Clinical","","l",null,"1",1,false],[false,"centimeter","cm","CM","length",0.01,[1,0,0,0,0,0,0],"cm",null,false,"L",null,1,false,false,0,"centimeters; centimetres","LOINC","Len","Clinical","",null,null,null,null,false],[false,"centimeter of water","cm[H2O]","CM[H2O]","pressure",98066.5,[-1,-2,1,0,0,0,0],"cm\xa0HO2","clinical",true,null,null,1,false,false,0,"cm H2O; cmH2O; centimetres; pressure","LOINC","Pres","Clinical","unit of pressure mostly applies to blood pressure","kPa","KPAL","980665e-5",9.80665,false],[false,"centimeter of water per liter per second","cm[H2O]/L/s","(CM[H2O]/L)/S","pressure",98066500,[-4,-3,1,0,0,0,0],"((cm\xa0HO2)/L)/s","clinical",true,null,null,1,false,false,0,"cm[H2O]/(L/s); cm[H2O].s/L; cm H2O/L/sec; cmH2O/L/sec; cmH2O/Liter; cmH2O per L per secs; centimeters of water per liters per second; centimetres; litres; cm[H2O]/(L/s)","LOINC","PresRat","Clinical","unit used to measure mean pulmonary resistance","kPa","KPAL","980665e-5",9.80665,false],[false,"centimeter of water per second per meter","cm[H2O]/s/m","(CM[H2O]/S)/M","pressure",98066.5,[-2,-3,1,0,0,0,0],"((cm\xa0HO2)/s)/m","clinical",true,null,null,1,false,false,0,"cm[H2O]/(s.m); cm H2O/s/m; cmH2O; cmH2O/sec/m; cmH2O per secs per meters; centimeters of water per seconds per meter; centimetres; metre","LOINC","PresRat","Clinical","unit used to measure pulmonary pressure time product","kPa","KPAL","980665e-5",9.80665,false],[false,"centimeter of mercury","cm[Hg]","CM[HG]","pressure",1333220,[-1,-2,1,0,0,0,0],"cm\xa0Hg","clinical",true,null,null,1,false,false,0,"centimeters of mercury; centimetres; cmHg; cm Hg","LOINC","Pres","Clinical","unit of pressure where 1 cmHg = 10 torr","kPa","KPAL","133.3220",133.322,false],[false,"square centimeter","cm2","CM2","length",0.0001,[2,0,0,0,0,0,0],"cm2",null,false,"L",null,1,false,false,0,"cm^2; sq cm; centimeters squared; square centimeters; centimetre; area","LOINC","Area","Clinical","",null,null,null,null,false],[false,"square centimeter per second","cm2/s","CM2/S","length",0.0001,[2,-1,0,0,0,0,0],"(cm2)/s",null,false,"L",null,1,false,false,0,"cm^2/sec; square centimeters per second; sq cm per sec; cm2; centimeters squared; centimetres","LOINC","AreaRat","Clinical","",null,null,null,null,false],[false,"centipoise","cP","CP","dynamic viscosity",1,[-1,-1,1,0,0,0,0],"cP","cgs",true,null,null,1,false,false,0,"cps; centiposes","LOINC","Visc","Clinical","unit of dynamic viscosity in the CGS system with base units: 10^\u22123 Pa.s = 1 mPa\xb7.s (1 millipascal second)","dyn.s/cm2","DYN.S/CM2","1",1,false],[false,"centistoke","cSt","CST","kinematic viscosity",0.0000010000000000000002,[2,-1,0,0,0,0,0],"cSt","cgs",true,null,null,1,false,false,0,"centistokes","LOINC","Visc","Clinical","unit for kinematic viscosity with base units of mm^2/s (square millimeter per second)","cm2/s","CM2/S","1",1,false],[false,"dekaliter per minute","daL/min","DAL/MIN","volume",0.00016666666666666666,[3,-1,0,0,0,0,0],"daL/min","iso1000",true,null,null,1,false,false,0,"dekalitres; dekaliters per minute; per min","LOINC","VRat","Clinical","","l",null,"1",1,false],[false,"dekaliter per minute per square meter","daL/min/m2","(DAL/MIN)/M2","volume",0.00016666666666666666,[1,-1,0,0,0,0,0],"(daL/min)/(m2)","iso1000",true,null,null,1,false,false,0,"daL/min/m^2; daL/minute/m2; sq. meter; dekaliters per minutes per square meter; meter squared; dekalitres; metre","LOINC","ArVRat","Clinical","The area usually is the body surface area used to normalize cardiovascular measures for patient\'s size","l",null,"1",1,false],[false,"decibel","dB","DB","level",1,[0,0,0,0,0,0,0],"dB","levels",true,null,"lg",0.1,true,false,0,"decibels","LOINC","LogRto","Clinical","unit most commonly used in acoustics as unit of sound pressure level. (also see B[SPL] or bel sound pressure level). ","1",null,null,1,false],[false,"degree per second","deg/s","DEG/S","plane angle",0.017453292519943295,[0,-1,0,1,0,0,0],"\xb0/s","iso1000",false,null,null,1,false,false,0,"deg/sec; deg per sec; \xb0/sec; twist rate; angular speed; rotational speed","LOINC","ARat","Clinical","unit of angular (rotational) speed used to express turning rate","[pi].rad/360","[PI].RAD/360","2",2,false],[false,"decigram","dg","DG","mass",0.1,[0,0,1,0,0,0,0],"dg",null,false,"M",null,1,false,false,0,"decigrams; dgm; 0.1 grams; 1/10 gm","LOINC","Mass","Clinical","equal to 1/10 gram",null,null,null,null,false],[false,"deciliter","dL","DL","volume",0.0001,[3,0,0,0,0,0,0],"dL","iso1000",true,null,null,1,false,false,0,"deciliters; decilitres; 0.1 liters; 1/10 L","LOINC","Vol","Clinical","equal to 1/10 liter","l",null,"1",1,false],[false,"decimeter","dm","DM","length",0.1,[1,0,0,0,0,0,0],"dm",null,false,"L",null,1,false,false,0,"decimeters; decimetres; 0.1 meters; 1/10 m; 10 cm; centimeters","LOINC","Len","Clinical","equal to 1/10 meter or 10 centimeters",null,null,null,null,false],[false,"square decimeter per square second","dm2/s2","DM2/S2","length",0.010000000000000002,[2,-2,0,0,0,0,0],"(dm2)/(s2)",null,false,"L",null,1,false,false,0,"dm2 per s2; dm^2/s^2; decimeters squared per second squared; sq dm; sq sec","LOINC","EngMass (massic energy)","Clinical","units for energy per unit mass or Joules per kilogram (J/kg = kg.m2/s2/kg = m2/s2) ",null,null,null,null,false],[false,"dyne second per centimeter per square meter","dyn.s/(cm.m2)","(DYN.S)/(CM.M2)","force",1,[-2,-1,1,0,0,0,0],"(dyn.s)/(cm.(m2))","cgs",true,null,null,1,false,false,0,"(dyn*s)/(cm*m2); (dyn*s)/(cm*m^2); dyn s per cm per m2; m^2; dyne seconds per centimeters per square meter; centimetres; sq. meter; squared","LOINC","","Clinical","","g.cm/s2","G.CM/S2","1",1,false],[false,"dyne second per centimeter","dyn.s/cm","(DYN.S)/CM","force",1,[0,-1,1,0,0,0,0],"(dyn.s)/cm","cgs",true,null,null,1,false,false,0,"(dyn*s)/cm; dyn sec per cm; seconds; centimetre; dyne seconds","LOINC","","Clinical","","g.cm/s2","G.CM/S2","1",1,false],[false,"equivalent per liter","eq/L","EQ/L","amount of substance",6.0221366999999994e+26,[-3,0,0,0,0,0,0],"eq/L","chemical",true,null,null,1,false,false,1,"eq/liter; eq/litre; eqs; equivalents per liter; litre","LOINC","SCnc","Clinical","equivalence equals moles per valence","mol","MOL","1",1,false],[false,"equivalent per milliliter","eq/mL","EQ/ML","amount of substance",6.0221367e+29,[-3,0,0,0,0,0,0],"eq/mL","chemical",true,null,null,1,false,false,1,"equivalent/milliliter; equivalents per milliliter; eq per mL; millilitre","LOINC","SCnc","Clinical","equivalence equals moles per valence","mol","MOL","1",1,false],[false,"equivalent per millimole","eq/mmol","EQ/MMOL","amount of substance",1000,[0,0,0,0,0,0,0],"eq/mmol","chemical",true,null,null,1,false,false,0,"equivalent/millimole; equivalents per millimole; eq per mmol","LOINC","SRto","Clinical","equivalence equals moles per valence","mol","MOL","1",1,false],[false,"equivalent per micromole","eq/umol","EQ/UMOL","amount of substance",1000000,[0,0,0,0,0,0,0],"eq/\u03bcmol","chemical",true,null,null,1,false,false,0,"equivalent/micromole; equivalents per micromole; eq per umol","LOINC","SRto","Clinical","equivalence equals moles per valence","mol","MOL","1",1,false],[false,"femtogram","fg","FG","mass",1e-15,[0,0,1,0,0,0,0],"fg",null,false,"M",null,1,false,false,0,"fg; fgm; femtograms; weight","LOINC","Mass","Clinical","equal to 10^-15 grams",null,null,null,null,false],[false,"femtoliter","fL","FL","volume",1e-18,[3,0,0,0,0,0,0],"fL","iso1000",true,null,null,1,false,false,0,"femtolitres; femtoliters","LOINC","Vol; EntVol","Clinical","equal to 10^-15 liters","l",null,"1",1,false],[false,"femtometer","fm","FM","length",1e-15,[1,0,0,0,0,0,0],"fm",null,false,"L",null,1,false,false,0,"femtometres; femtometers","LOINC","Len","Clinical","equal to 10^-15 meters",null,null,null,null,false],[false,"femtomole","fmol","FMOL","amount of substance",602213670,[0,0,0,0,0,0,0],"fmol","si",true,null,null,1,false,false,1,"femtomoles","LOINC","EntSub","Clinical","equal to 10^-15 moles","10*23","10*23","6.0221367",6.0221367,false],[false,"femtomole per gram","fmol/g","FMOL/G","amount of substance",602213670,[0,0,-1,0,0,0,0],"fmol/g","si",true,null,null,1,false,false,1,"femtomoles; fmol/gm; fmol per gm","LOINC","SCnt","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"femtomole per liter","fmol/L","FMOL/L","amount of substance",602213670000,[-3,0,0,0,0,0,0],"fmol/L","si",true,null,null,1,false,false,1,"femtomoles; fmol per liter; litre","LOINC","SCnc","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"femtomole per milligram","fmol/mg","FMOL/MG","amount of substance",602213670000,[0,0,-1,0,0,0,0],"fmol/mg","si",true,null,null,1,false,false,1,"fmol per mg; femtomoles","LOINC","SCnt","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"femtomole per milliliter","fmol/mL","FMOL/ML","amount of substance",602213670000000,[-3,0,0,0,0,0,0],"fmol/mL","si",true,null,null,1,false,false,1,"femtomoles; millilitre; fmol per mL; fmol per milliliter","LOINC","SCnc","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"gram meter","g.m","G.M","mass",1,[1,0,1,0,0,0,0],"g.m",null,false,"M",null,1,false,false,0,"g*m; gxm; meters; metres","LOINC","Enrg","Clinical","Unit for measuring stroke work (heart work)",null,null,null,null,false],[false,"gram per 100 gram","g/(100.g)","G/G","mass",0.01,[0,0,0,0,0,0,0],"g/g",null,false,"M",null,1,false,false,0,"g/100 gm; 100gm; grams per 100 grams; gm per 100 gm","LOINC","MCnt","Clinical","",null,null,null,null,false],[false,"gram per 12 hour","g/(12.h)","G/HR","mass",0.000023148148148148147,[0,-1,1,0,0,0,0],"g/h",null,false,"M",null,1,false,false,0,"gm/12hrs; 12 hrs; gm per 12 hrs; 12hrs; grams per 12 hours","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"gram per 24 hour","g/(24.h)","G/HR","mass",0.000011574074074074073,[0,-1,1,0,0,0,0],"g/h",null,false,"M",null,1,false,false,0,"gm/24hrs; gm/24 hrs; gm per 24 hrs; 24hrs; grams per 24 hours; gm/dy; gm per dy; grams per day","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"gram per 3 days","g/(3.d)","G/D","mass",0.000003858024691358025,[0,-1,1,0,0,0,0],"g/d",null,false,"M",null,1,false,false,0,"gm/3dy; gm/3 dy; gm per 3 days; grams","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"gram per 4 hour","g/(4.h)","G/HR","mass",0.00006944444444444444,[0,-1,1,0,0,0,0],"g/h",null,false,"M",null,1,false,false,0,"gm/4hrs; gm/4 hrs; gm per 4 hrs; 4hrs; grams per 4 hours","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"gram per 48 hour","g/(48.h)","G/HR","mass",0.000005787037037037037,[0,-1,1,0,0,0,0],"g/h",null,false,"M",null,1,false,false,0,"gm/48hrs; gm/48 hrs; gm per 48 hrs; 48hrs; grams per 48 hours","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"gram per 5 hour","g/(5.h)","G/HR","mass",0.00005555555555555556,[0,-1,1,0,0,0,0],"g/h",null,false,"M",null,1,false,false,0,"gm/5hrs; gm/5 hrs; gm per 5 hrs; 5hrs; grams per 5 hours","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"gram per 6 hour","g/(6.h)","G/HR","mass",0.000046296296296296294,[0,-1,1,0,0,0,0],"g/h",null,false,"M",null,1,false,false,0,"gm/6hrs; gm/6 hrs; gm per 6 hrs; 6hrs; grams per 6 hours","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"gram per 72 hour","g/(72.h)","G/HR","mass",0.000003858024691358025,[0,-1,1,0,0,0,0],"g/h",null,false,"M",null,1,false,false,0,"gm/72hrs; gm/72 hrs; gm per 72 hrs; 72hrs; grams per 72 hours","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"gram per cubic centimeter","g/cm3","G/CM3","mass",999999.9999999999,[-3,0,1,0,0,0,0],"g/(cm3)",null,false,"M",null,1,false,false,0,"g/cm^3; gm per cm3; g per cm^3; grams per centimeter cubed; cu. cm; centimetre; g/mL; gram per milliliter; millilitre","LOINC","MCnc","Clinical","g/cm3 = g/mL",null,null,null,null,false],[false,"gram per day","g/d","G/D","mass",0.000011574074074074073,[0,-1,1,0,0,0,0],"g/d",null,false,"M",null,1,false,false,0,"gm/dy; gm per dy; grams per day; gm/24hrs; gm/24 hrs; gm per 24 hrs; 24hrs; grams per 24 hours; serving","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"gram per deciliter","g/dL","G/DL","mass",10000,[-3,0,1,0,0,0,0],"g/dL",null,false,"M",null,1,false,false,0,"gm/dL; gm per dL; grams per deciliter; decilitre","LOINC","MCnc","Clinical","",null,null,null,null,false],[false,"gram per gram","g/g","G/G","mass",1,[0,0,0,0,0,0,0],"g/g",null,false,"M",null,1,false,false,0,"gm; grams","LOINC","MRto ","Clinical","",null,null,null,null,false],[false,"gram per hour","g/h","G/HR","mass",0.0002777777777777778,[0,-1,1,0,0,0,0],"g/h",null,false,"M",null,1,false,false,0,"gm/hr; gm per hr; grams; intake; output","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"gram per hour per square meter","g/h/m2","(G/HR)/M2","mass",0.0002777777777777778,[-2,-1,1,0,0,0,0],"(g/h)/(m2)",null,false,"M",null,1,false,false,0,"gm/hr/m2; gm/h/m2; /m^2; sq. m; g per hr per m2; grams per hours per square meter; meter squared; metre","LOINC","ArMRat","Clinical","",null,null,null,null,false],[false,"gram per kilogram","g/kg ","G/KG","mass",0.001,[0,0,0,0,0,0,0],"g/kg",null,false,"M",null,1,false,false,0,"g per kg; gram per kilograms","LOINC","MCnt","Clinical","",null,null,null,null,false],[false,"gram per kilogram per 8 hour ","g/kg/(8.h)","(G/KG)/HR","mass",3.472222222222222e-8,[0,-1,0,0,0,0,0],"(g/kg)/h",null,false,"M",null,1,false,false,0,"g/(8.kg.h); gm/kg/8hrs; 8 hrs; g per kg per 8 hrs; 8hrs; grams per kilograms per 8 hours; shift","LOINC","MCntRat; RelMRat","Clinical","unit often used to describe mass in grams of protein consumed in a 8 hours, divided by the subject\'s body weight in kilograms. Also used to measure mass dose rate per body mass",null,null,null,null,false],[false,"gram per kilogram per day","g/kg/d","(G/KG)/D","mass",1.1574074074074074e-8,[0,-1,0,0,0,0,0],"(g/kg)/d",null,false,"M",null,1,false,false,0,"g/(kg.d); gm/kg/dy; gm per kg per dy; grams per kilograms per day","LOINC","RelMRat","Clinical","unit often used to describe mass in grams of protein consumed in a day, divided by the subject\'s body weight in kilograms. Also used to measure mass dose rate per body mass",null,null,null,null,false],[false,"gram per kilogram per hour","g/kg/h","(G/KG)/HR","mass",2.7777777777777776e-7,[0,-1,0,0,0,0,0],"(g/kg)/h",null,false,"M",null,1,false,false,0,"g/(kg.h); g/kg/hr; g per kg per hrs; grams per kilograms per hour","LOINC","MCntRat; RelMRat","Clinical","unit used to measure mass dose rate per body mass",null,null,null,null,false],[false,"gram per kilogram per minute","g/kg/min","(G/KG)/MIN","mass",0.000016666666666666667,[0,-1,0,0,0,0,0],"(g/kg)/min",null,false,"M",null,1,false,false,0,"g/(kg.min); g/kg/min; g per kg per min; grams per kilograms per minute","LOINC","MCntRat; RelMRat","Clinical","unit used to measure mass dose rate per body mass",null,null,null,null,false],[false,"gram per liter","g/L","G/L","mass",1000,[-3,0,1,0,0,0,0],"g/L",null,false,"M",null,1,false,false,0,"gm per liter; g/liter; grams per liter; litre","LOINC","MCnc","Clinical","",null,null,null,null,false],[false,"gram per square meter","g/m2","G/M2","mass",1,[-2,0,1,0,0,0,0],"g/(m2)",null,false,"M",null,1,false,false,0,"g/m^2; gram/square meter; g/sq m; g per m2; g per m^2; grams per square meter; meters squared; metre","LOINC","ArMass","Clinical","Tests measure myocardial mass (heart ventricle system) per body surface area; unit used to measure mass dose per body surface area",null,null,null,null,false],[false,"gram per milligram","g/mg","G/MG","mass",1000,[0,0,0,0,0,0,0],"g/mg",null,false,"M",null,1,false,false,0,"g per mg; grams per milligram","LOINC","MCnt; MRto","Clinical","",null,null,null,null,false],[false,"gram per minute","g/min","G/MIN","mass",0.016666666666666666,[0,-1,1,0,0,0,0],"g/min",null,false,"M",null,1,false,false,0,"g per min; grams per minute; gram/minute","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"gram per milliliter","g/mL","G/ML","mass",1000000,[-3,0,1,0,0,0,0],"g/mL",null,false,"M",null,1,false,false,0,"g per mL; grams per milliliter; millilitre","LOINC","MCnc","Clinical","",null,null,null,null,false],[false,"gram per millimole","g/mmol","G/MMOL","mass",1.6605401866749388e-21,[0,0,1,0,0,0,0],"g/mmol",null,false,"M",null,1,false,false,-1,"grams per millimole; g per mmol","LOINC","Ratio","Clinical","",null,null,null,null,false],[false,"joule per liter","J/L","J/L","energy",1000000,[-1,-2,1,0,0,0,0],"J/L","si",true,null,null,1,false,false,0,"joules per liter; litre; J per L","LOINC","EngCnc","Clinical","","N.m","N.M","1",1,false],[false,"degree Kelvin per Watt","K/W","K/W","temperature",0.001,[-2,3,-1,0,1,0,0],"K/W",null,false,"C",null,1,false,false,0,"degree Kelvin/Watt; K per W; thermal ohm; thermal resistance; degrees","LOINC","TempEngRat","Clinical","unit for absolute thermal resistance equal to the reciprocal of thermal conductance. Unit used for tests to measure work of breathing",null,null,null,null,false],[false,"kilo international unit per liter","k[IU]/L","K[IU]/L","arbitrary",1000000,[-3,0,0,0,0,0,0],"(ki.U.)/L","chemical",true,null,null,1,false,true,0,"kIU/L; kIU per L; kIU per liter; kilo international units; litre; allergens; allergy units","LOINC","ACnc","Clinical","IgE has an WHO reference standard so IgE allergen testing can be reported as k[IU]/L","[iU]","[IU]","1",1,false],[false,"kilo international unit per milliliter","k[IU]/mL","K[IU]/ML","arbitrary",1000000000,[-3,0,0,0,0,0,0],"(ki.U.)/mL","chemical",true,null,null,1,false,true,0,"kIU/mL; kIU per mL; kIU per milliliter; kilo international units; millilitre; allergens; allergy units","LOINC","ACnc","Clinical","IgE has an WHO reference standard so IgE allergen testing can be reported as k[IU]/mL","[iU]","[IU]","1",1,false],[false,"katal per kilogram","kat/kg","KAT/KG","catalytic activity",602213670000000000000,[0,-1,-1,0,0,0,0],"kat/kg","chemical",true,null,null,1,false,false,1,"kat per kg; katals per kilogram; mol/s/kg; moles per seconds per kilogram","LOINC","CCnt","Clinical","kat is a unit of catalytic activity with base units = mol/s. Rarely used because its units are too large to practically express catalytic activity. See enzyme unit [U] which is the standard unit for catalytic activity.","mol/s","MOL/S","1",1,false],[false,"katal per liter","kat/L","KAT/L","catalytic activity",6.0221366999999994e+26,[-3,-1,0,0,0,0,0],"kat/L","chemical",true,null,null,1,false,false,1,"kat per L; katals per liter; litre; mol/s/L; moles per seconds per liter","LOINC","CCnc","Clinical","kat is a unit of catalytic activity with base units = mol/s. Rarely used because its units are too large to practically express catalytic activity. See enzyme unit [U] which is the standard unit for catalytic activity.","mol/s","MOL/S","1",1,false],[false,"kilocalorie","kcal","KCAL","energy",4184000,[2,-2,1,0,0,0,0],"kcal","heat",true,null,null,1,false,false,0,"kilogram calories; large calories; food calories; kcals","LOINC","EngRat","Clinical","It is equal to 1000 calories (equal to 4.184 kJ). But in practical usage, kcal refers to food calories which excludes caloric content in fiber and other constitutes that is not digestible by humans. Also see nutrition label Calories ([Cal])","cal_th","CAL_TH","1",1,false],[false,"kilocalorie per 24 hour","kcal/(24.h)","KCAL/HR","energy",48.425925925925924,[2,-3,1,0,0,0,0],"kcal/h","heat",true,null,null,1,false,false,0,"kcal/24hrs; kcal/24 hrs; kcal per 24hrs; kilocalories per 24 hours; kilojoules; kJ/24hr; kJ/(24.h); kJ/dy; kilojoules per days; intake; calories burned; metabolic rate; food calories","","EngRat","Clinical","","cal_th","CAL_TH","1",1,false],[false,"kilocalorie per ounce","kcal/[oz_av]","KCAL/[OZ_AV]","energy",147586.25679704445,[2,-2,0,0,0,0,0],"kcal/oz","heat",true,null,null,1,false,false,0,"kcal/oz; kcal per ozs; large calories per ounces; food calories; servings; international","LOINC","EngCnt","Clinical","used in nutrition to represent calorie of food","cal_th","CAL_TH","1",1,false],[false,"kilocalorie per day","kcal/d","KCAL/D","energy",48.425925925925924,[2,-3,1,0,0,0,0],"kcal/d","heat",true,null,null,1,false,false,0,"kcal/dy; kcal per day; kilocalories per days; kilojoules; kJ/dy; kilojoules per days; intake; calories burned; metabolic rate; food calories","LOINC","EngRat","Clinical","unit in nutrition for food intake (measured in calories) in a day","cal_th","CAL_TH","1",1,false],[false,"kilocalorie per hour","kcal/h","KCAL/HR","energy",1162.2222222222222,[2,-3,1,0,0,0,0],"kcal/h","heat",true,null,null,1,false,false,0,"kcal/hrs; kcals per hr; intake; kilocalories per hours; kilojoules","LOINC","EngRat","Clinical","used in nutrition to represent caloric requirement or consumption","cal_th","CAL_TH","1",1,false],[false,"kilocalorie per kilogram per 24 hour","kcal/kg/(24.h)","(KCAL/KG)/HR","energy",0.04842592592592593,[2,-3,0,0,0,0,0],"(kcal/kg)/h","heat",true,null,null,1,false,false,0,"kcal/kg/24hrs; 24 hrs; kcal per kg per 24hrs; kilocalories per kilograms per 24 hours; kilojoules","LOINC","EngCntRat","Clinical","used in nutrition to represent caloric requirement per day based on subject\'s body weight in kilograms","cal_th","CAL_TH","1",1,false],[false,"kilogram","kg","KG","mass",1000,[0,0,1,0,0,0,0],"kg",null,false,"M",null,1,false,false,0,"kilograms; kgs","LOINC","Mass","Clinical","",null,null,null,null,false],[false,"kilogram meter per second","kg.m/s","(KG.M)/S","mass",1000,[1,-1,1,0,0,0,0],"(kg.m)/s",null,false,"M",null,1,false,false,0,"kg*m/s; kg.m per sec; kg*m per sec; p; momentum","LOINC","","Clinical","unit for momentum = mass times velocity",null,null,null,null,false],[false,"kilogram per second per square meter","kg/(s.m2)","KG/(S.M2)","mass",1000,[-2,-1,1,0,0,0,0],"kg/(s.(m2))",null,false,"M",null,1,false,false,0,"kg/(s*m2); kg/(s*m^2); kg per s per m2; per sec; per m^2; kilograms per seconds per square meter; meter squared; metre","LOINC","ArMRat","Clinical","",null,null,null,null,false],[false,"kilogram per hour","kg/h","KG/HR","mass",0.2777777777777778,[0,-1,1,0,0,0,0],"kg/h",null,false,"M",null,1,false,false,0,"kg/hr; kg per hr; kilograms per hour","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"kilogram per liter","kg/L","KG/L","mass",1000000,[-3,0,1,0,0,0,0],"kg/L",null,false,"M",null,1,false,false,0,"kg per liter; litre; kilograms","LOINC","MCnc","Clinical","",null,null,null,null,false],[false,"kilogram per square meter","kg/m2","KG/M2","mass",1000,[-2,0,1,0,0,0,0],"kg/(m2)",null,false,"M",null,1,false,false,0,"kg/m^2; kg/sq. m; kg per m2; per m^2; per sq. m; kilograms; meter squared; metre; BMI","LOINC","Ratio","Clinical","units for body mass index (BMI)",null,null,null,null,false],[false,"kilogram per cubic meter","kg/m3","KG/M3","mass",1000,[-3,0,1,0,0,0,0],"kg/(m3)",null,false,"M",null,1,false,false,0,"kg/m^3; kg/cu. m; kg per m3; per m^3; per cu. m; kilograms; meters cubed; metre","LOINC","MCnc","Clinical","",null,null,null,null,false],[false,"kilogram per minute","kg/min","KG/MIN","mass",16.666666666666668,[0,-1,1,0,0,0,0],"kg/min",null,false,"M",null,1,false,false,0,"kilogram/minute; kg per min; kilograms per minute","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"kilogram per mole","kg/mol","KG/MOL","mass",1.6605401866749388e-21,[0,0,1,0,0,0,0],"kg/mol",null,false,"M",null,1,false,false,-1,"kilogram/mole; kg per mol; kilograms per mole","LOINC","SCnt","Clinical","",null,null,null,null,false],[false,"kilogram per second","kg/s","KG/S","mass",1000,[0,-1,1,0,0,0,0],"kg/s",null,false,"M",null,1,false,false,0,"kg/sec; kilogram/second; kg per sec; kilograms; second","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"kiloliter","kL","KL","volume",1,[3,0,0,0,0,0,0],"kL","iso1000",true,null,null,1,false,false,0,"kiloliters; kilolitres; m3; m^3; meters cubed; metre","LOINC","Vol","Clinical","","l",null,"1",1,false],[false,"kilometer","km","KM","length",1000,[1,0,0,0,0,0,0],"km",null,false,"L",null,1,false,false,0,"kilometers; kilometres; distance","LOINC","Len","Clinical","",null,null,null,null,false],[false,"kilopascal","kPa","KPAL","pressure",1000000,[-1,-2,1,0,0,0,0],"kPa","si",true,null,null,1,false,false,0,"kilopascals; pressure","LOINC","Pres; PPresDiff","Clinical","","N/m2","N/M2","1",1,false],[false,"kilosecond","ks","KS","time",1000,[0,1,0,0,0,0,0],"ks",null,false,"T",null,1,false,false,0,"kiloseconds; ksec","LOINC","Time","Clinical","",null,null,null,null,false],[false,"kilo enzyme unit","kU","KU","catalytic activity",10036894500000000000,[0,-1,0,0,0,0,0],"kU","chemical",true,null,null,1,false,false,1,"units; mmol/min; millimoles per minute","LOINC","CAct","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min); 1 kU = 1 mmol/min","umol/min","UMOL/MIN","1",1,false],[false,"kilo enzyme unit per gram","kU/g","KU/G","catalytic activity",10036894500000000000,[0,-1,-1,0,0,0,0],"kU/g","chemical",true,null,null,1,false,false,1,"units per grams; kU per gm","LOINC","CCnt","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min); 1 kU = 1 mmol/min","umol/min","UMOL/MIN","1",1,false],[false,"kilo enzyme unit per liter","kU/L","KU/L","catalytic activity",1.00368945e+22,[-3,-1,0,0,0,0,0],"kU/L","chemical",true,null,null,1,false,false,1,"units per liter; litre; enzymatic activity; enzyme activity per volume; activities","LOINC","ACnc; CCnc","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min); 1 kU = 1 mmol/min","umol/min","UMOL/MIN","1",1,false],[false,"kilo enzyme unit per milliliter","kU/mL","KU/ML","catalytic activity",1.00368945e+25,[-3,-1,0,0,0,0,0],"kU/mL","chemical",true,null,null,1,false,false,1,"kU per mL; units per milliliter; millilitre; enzymatic activity per volume; enzyme activities","LOINC","CCnc","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min); 1 kU = 1 mmol/min","umol/min","UMOL/MIN","1",1,false],[false,"Liters per 24 hour","L/(24.h)","L/HR","volume",1.1574074074074074e-8,[3,-1,0,0,0,0,0],"L/h","iso1000",true,null,null,1,false,false,0,"L/24hrs; L/24 hrs; L per 24hrs; liters per 24 hours; day; dy; litres; volume flow rate","LOINC","VRat","Clinical","","l",null,"1",1,false],[false,"Liters per 8 hour","L/(8.h)","L/HR","volume",3.472222222222222e-8,[3,-1,0,0,0,0,0],"L/h","iso1000",true,null,null,1,false,false,0,"L/8hrs; L/8 hrs; L per 8hrs; liters per 8 hours; litres; volume flow rate; shift","LOINC","VRat","Clinical","","l",null,"1",1,false],[false,"Liters per minute per square meter","L/(min.m2) ","L/(MIN.M2)","volume",0.000016666666666666667,[1,-1,0,0,0,0,0],"L/(min.(m2))","iso1000",true,null,null,1,false,false,0,"L/(min.m2); L/min/m^2; L/min/sq. meter; L per min per m2; m^2; liters per minutes per square meter; meter squared; litres; metre ","LOINC","ArVRat","Clinical","unit for tests that measure cardiac output per body surface area (cardiac index)","l",null,"1",1,false],[false,"Liters per day","L/d","L/D","volume",1.1574074074074074e-8,[3,-1,0,0,0,0,0],"L/d","iso1000",true,null,null,1,false,false,0,"L/dy; L per day; 24hrs; 24 hrs; 24 hours; liters; litres","LOINC","VRat","Clinical","","l",null,"1",1,false],[false,"Liters per hour","L/h","L/HR","volume",2.7777777777777776e-7,[3,-1,0,0,0,0,0],"L/h","iso1000",true,null,null,1,false,false,0,"L/hr; L per hr; litres","LOINC","VRat","Clinical","","l",null,"1",1,false],[false,"Liters per kilogram","L/kg","L/KG","volume",0.000001,[3,0,-1,0,0,0,0],"L/kg","iso1000",true,null,null,1,false,false,0,"L per kg; litre","LOINC","VCnt","Clinical","","l",null,"1",1,false],[false,"Liters per liter","L/L","L/L","volume",1,[0,0,0,0,0,0,0],"L/L","iso1000",true,null,null,1,false,false,0,"L per L; liter/liter; litre","LOINC","VFr","Clinical","","l",null,"1",1,false],[false,"Liters per minute","L/min","L/MIN","volume",0.000016666666666666667,[3,-1,0,0,0,0,0],"L/min","iso1000",true,null,null,1,false,false,0,"liters per minute; litre","LOINC","VRat","Clinical","","l",null,"1",1,false],[false,"Liters per minute per square meter","L/min/m2","(L/MIN)/M2","volume",0.000016666666666666667,[1,-1,0,0,0,0,0],"(L/min)/(m2)","iso1000",true,null,null,1,false,false,0,"L/(min.m2); L/min/m^2; L/min/sq. meter; L per min per m2; m^2; liters per minutes per square meter; meter squared; litres; metre ","","ArVRat","Clinical","unit for tests that measure cardiac output per body surface area (cardiac index)","l",null,"1",1,false],[false,"Liters per second","L/s","L/S","volume",0.001,[3,-1,0,0,0,0,0],"L/s","iso1000",true,null,null,1,false,false,0,"L per sec; litres","LOINC","VRat","Clinical","unit used often to measure gas flow and peak expiratory flow","l",null,"1",1,false],[false,"Liters per second per square second","L/s/s2","(L/S)/S2","volume",0.001,[3,-3,0,0,0,0,0],"(L/s)/(s2)","iso1000",true,null,null,1,false,false,0,"L/s/s^2; L/sec/sec2; L/sec/sec^2; L/sec/sq. sec; L per s per s2; L per sec per sec2; s^2; sec^2; liters per seconds per square second; second squared; litres ","LOINC","ArVRat","Clinical","unit for tests that measure cardiac output/body surface area","l",null,"1",1,false],[false,"lumen square meter","lm.m2","LM.M2","luminous flux",1,[2,0,0,2,0,0,1],"lm.(m2)","si",true,null,null,1,false,false,0,"lm*m2; lm*m^2; lumen meters squared; lumen sq. meters; metres","LOINC","","Clinical","","cd.sr","CD.SR","1",1,false],[false,"meter per second","m/s","M/S","length",1,[1,-1,0,0,0,0,0],"m/s",null,false,"L",null,1,false,false,0,"meter/second; m per sec; meters per second; metres; velocity; speed","LOINC","Vel","Clinical","unit of velocity",null,null,null,null,false],[false,"meter per square second","m/s2","M/S2","length",1,[1,-2,0,0,0,0,0],"m/(s2)",null,false,"L",null,1,false,false,0,"m/s^2; m/sq. sec; m per s2; per s^2; meters per square second; second squared; sq second; metres; acceleration","LOINC","Accel","Clinical","unit of acceleration",null,null,null,null,false],[false,"milli international unit per liter","m[IU]/L","M[IU]/L","arbitrary",1,[-3,0,0,0,0,0,0],"(mi.U.)/L","chemical",true,null,null,1,false,true,0,"mIU/L; m IU/L; mIU per liter; units; litre","LOINC","ACnc","Clinical","International units (IU) are analyte and reference specimen specific arbitrary units (held at WHO)","[iU]","[IU]","1",1,false],[false,"milli international unit per milliliter","m[IU]/mL","M[IU]/ML","arbitrary",1000.0000000000001,[-3,0,0,0,0,0,0],"(mi.U.)/mL","chemical",true,null,null,1,false,true,0,"mIU/mL; m IU/mL; mIU per mL; milli international units per milliliter; millilitre","LOINC","ACnc","Clinical","International units (IU) are analyte and reference specimen specific arbitrary units (held at WHO)","[iU]","[IU]","1",1,false],[false,"square meter","m2","M2","length",1,[2,0,0,0,0,0,0],"m2",null,false,"L",null,1,false,false,0,"m^2; sq m; square meters; meters squared; metres","LOINC","Area","Clinical","unit often used to represent body surface area",null,null,null,null,false],[false,"square meter per second","m2/s","M2/S","length",1,[2,-1,0,0,0,0,0],"(m2)/s",null,false,"L",null,1,false,false,0,"m^2/sec; m2 per sec; m^2 per sec; sq m/sec; meters squared/seconds; sq m per sec; meters squared; metres","LOINC","ArRat","Clinical","",null,null,null,null,false],[false,"cubic meter per second","m3/s","M3/S","length",1,[3,-1,0,0,0,0,0],"(m3)/s",null,false,"L",null,1,false,false,0,"m^3/sec; m3 per sec; m^3 per sec; cu m/sec; cubic meters per seconds; meters cubed; metres","LOINC","VRat","Clinical","",null,null,null,null,false],[false,"milliampere","mA","MA","electric current",0.001,[0,-1,0,0,0,1,0],"mA","si",true,null,null,1,false,false,0,"mamp; milliamperes","LOINC","ElpotRat","Clinical","unit of electric current","C/s","C/S","1",1,false],[false,"millibar","mbar","MBAR","pressure",100000,[-1,-2,1,0,0,0,0],"mbar","iso1000",true,null,null,1,false,false,0,"millibars","LOINC","Pres","Clinical","unit of pressure","Pa","PAL","1e5",100000,false],[false,"millibar second per liter","mbar.s/L","(MBAR.S)/L","pressure",100000000,[-4,-1,1,0,0,0,0],"(mbar.s)/L","iso1000",true,null,null,1,false,false,0,"mbar*s/L; mbar.s per L; mbar*s per L; millibar seconds per liter; millibar second per litre","LOINC","","Clinical","unit to measure expiratory resistance","Pa","PAL","1e5",100000,false],[false,"millibar per liter per second","mbar/L/s","(MBAR/L)/S","pressure",100000000,[-4,-3,1,0,0,0,0],"(mbar/L)/s","iso1000",true,null,null,1,false,false,0,"mbar/(L.s); mbar/L/sec; mbar/liter/second; mbar per L per sec; mbar per liter per second; millibars per liters per seconds; litres","LOINC","PresCncRat","Clinical","unit to measure expiratory resistance","Pa","PAL","1e5",100000,false],[false,"milliequivalent","meq","MEQ","amount of substance",602213670000000000000,[0,0,0,0,0,0,0],"meq","chemical",true,null,null,1,false,false,1,"milliequivalents; meqs","LOINC","Sub","Clinical","equivalence equals moles per valence","mol","MOL","1",1,false],[false,"milliequivalent per 2 hour","meq/(2.h)","MEQ/HR","amount of substance",83640787500000000,[0,-1,0,0,0,0,0],"meq/h","chemical",true,null,null,1,false,false,1,"meq/2hrs; meq/2 hrs; meq per 2 hrs; milliequivalents per 2 hours","LOINC","SRat","Clinical","equivalence equals moles per valence","mol","MOL","1",1,false],[false,"milliequivalent per 24 hour","meq/(24.h)","MEQ/HR","amount of substance",6970065625000000,[0,-1,0,0,0,0,0],"meq/h","chemical",true,null,null,1,false,false,1,"meq/24hrs; meq/24 hrs; meq per 24 hrs; milliequivalents per 24 hours","LOINC","SRat","Clinical","equivalence equals moles per valence","mol","MOL","1",1,false],[false,"milliequivalent per 8 hour","meq/(8.h)","MEQ/HR","amount of substance",20910196875000000,[0,-1,0,0,0,0,0],"meq/h","chemical",true,null,null,1,false,false,1,"meq/8hrs; meq/8 hrs; meq per 8 hrs; milliequivalents per 8 hours; shift","LOINC","SRat","Clinical","equivalence equals moles per valence","mol","MOL","1",1,false],[false,"milliequivalent per day","meq/d","MEQ/D","amount of substance",6970065625000000,[0,-1,0,0,0,0,0],"meq/d","chemical",true,null,null,1,false,false,1,"meq/dy; meq per day; milliquivalents per days; meq/24hrs; meq/24 hrs; meq per 24 hrs; milliequivalents per 24 hours","LOINC","SRat","Clinical","equivalence equals moles per valence","mol","MOL","1",1,false],[false,"milliequivalent per deciliter","meq/dL","MEQ/DL","amount of substance",6.022136699999999e+24,[-3,0,0,0,0,0,0],"meq/dL","chemical",true,null,null,1,false,false,1,"meq per dL; milliequivalents per deciliter; decilitre","LOINC","SCnc","Clinical","equivalence equals moles per valence","mol","MOL","1",1,false],[false,"milliequivalent per gram","meq/g","MEQ/G","amount of substance",602213670000000000000,[0,0,-1,0,0,0,0],"meq/g","chemical",true,null,null,1,false,false,1,"mgq/gm; meq per gm; milliequivalents per gram","LOINC","MCnt","Clinical","equivalence equals moles per valence","mol","MOL","1",1,false],[false,"milliequivalent per hour","meq/h","MEQ/HR","amount of substance",167281575000000000,[0,-1,0,0,0,0,0],"meq/h","chemical",true,null,null,1,false,false,1,"meq/hrs; meq per hrs; milliequivalents per hour","LOINC","SRat","Clinical","equivalence equals moles per valence","mol","MOL","1",1,false],[false,"milliequivalent per kilogram","meq/kg","MEQ/KG","amount of substance",602213670000000000,[0,0,-1,0,0,0,0],"meq/kg","chemical",true,null,null,1,false,false,1,"meq per kg; milliequivalents per kilogram","LOINC","SCnt","Clinical","equivalence equals moles per valence; used to measure dose per patient body mass","mol","MOL","1",1,false],[false,"milliequivalent per kilogram per hour","meq/kg/h","(MEQ/KG)/HR","amount of substance",167281575000000,[0,-1,-1,0,0,0,0],"(meq/kg)/h","chemical",true,null,null,1,false,false,1,"meq/(kg.h); meq/kg/hr; meq per kg per hr; milliequivalents per kilograms per hour","LOINC","SCntRat","Clinical","equivalence equals moles per valence; unit used to measure dose rate per patient body mass","mol","MOL","1",1,false],[false,"milliequivalent per liter","meq/L","MEQ/L","amount of substance",6.0221367e+23,[-3,0,0,0,0,0,0],"meq/L","chemical",true,null,null,1,false,false,1,"milliequivalents per liter; litre; meq per l; acidity","LOINC","SCnc","Clinical","equivalence equals moles per valence","mol","MOL","1",1,false],[false,"milliequivalent per square meter","meq/m2","MEQ/M2","amount of substance",602213670000000000000,[-2,0,0,0,0,0,0],"meq/(m2)","chemical",true,null,null,1,false,false,1,"meq/m^2; meq/sq. m; milliequivalents per square meter; meter squared; metre","LOINC","ArSub","Clinical","equivalence equals moles per valence; note that the use of m2 in clinical units ofter refers to body surface area","mol","MOL","1",1,false],[false,"milliequivalent per minute","meq/min","MEQ/MIN","amount of substance",10036894500000000000,[0,-1,0,0,0,0,0],"meq/min","chemical",true,null,null,1,false,false,1,"meq per min; milliequivalents per minute","LOINC","SRat","Clinical","equivalence equals moles per valence","mol","MOL","1",1,false],[false,"milliequivalent per milliliter","meq/mL","MEQ/ML","amount of substance",6.0221367e+26,[-3,0,0,0,0,0,0],"meq/mL","chemical",true,null,null,1,false,false,1,"meq per mL; milliequivalents per milliliter; millilitre","LOINC","SCnc","Clinical","equivalence equals moles per valence","mol","MOL","1",1,false],[false,"milligram","mg","MG","mass",0.001,[0,0,1,0,0,0,0],"mg",null,false,"M",null,1,false,false,0,"milligrams","LOINC","Mass","Clinical","",null,null,null,null,false],[false,"milligram per 10 hour","mg/(10.h)","MG/HR","mass",2.7777777777777777e-8,[0,-1,1,0,0,0,0],"mg/h",null,false,"M",null,1,false,false,0,"mg/10hrs; mg/10 hrs; mg per 10 hrs; milligrams per 10 hours","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"milligram per 12 hour","mg/(12.h)","MG/HR","mass",2.3148148148148148e-8,[0,-1,1,0,0,0,0],"mg/h",null,false,"M",null,1,false,false,0,"mg/12hrs; mg/12 hrs; per 12 hrs; 12hrs; milligrams per 12 hours","LOINC","MRat","Clinical","units used for tests in urine",null,null,null,null,false],[false,"milligram per 2 hour","mg/(2.h)","MG/HR","mass",1.3888888888888888e-7,[0,-1,1,0,0,0,0],"mg/h",null,false,"M",null,1,false,false,0,"mg/2hrs; mg/2 hrs; mg per 2 hrs; 2hrs; milligrams per 2 hours","LOINC","MRat","Clinical","units used for tests in urine",null,null,null,null,false],[false,"milligram per 24 hour","mg/(24.h)","MG/HR","mass",1.1574074074074074e-8,[0,-1,1,0,0,0,0],"mg/h",null,false,"M",null,1,false,false,0,"mg/24hrs; mg/24 hrs; milligrams per 24 hours; mg/kg/dy; mg per kg per day; milligrams per kilograms per days","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"milligram per 6 hour","mg/(6.h)","MG/HR","mass",4.6296296296296295e-8,[0,-1,1,0,0,0,0],"mg/h",null,false,"M",null,1,false,false,0,"mg/6hrs; mg/6 hrs; mg per 6 hrs; 6hrs; milligrams per 6 hours","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"milligram per 72 hour","mg/(72.h)","MG/HR","mass",3.858024691358025e-9,[0,-1,1,0,0,0,0],"mg/h",null,false,"M",null,1,false,false,0,"mg/72hrs; mg/72 hrs; 72 hrs; 72hrs; milligrams per 72 hours","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"milligram per 8 hour","mg/(8.h)","MG/HR","mass",3.472222222222222e-8,[0,-1,1,0,0,0,0],"mg/h",null,false,"M",null,1,false,false,0,"mg/8hrs; mg/8 hrs; milligrams per 8 hours; shift","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"milligram per day","mg/d","MG/D","mass",1.1574074074074074e-8,[0,-1,1,0,0,0,0],"mg/d",null,false,"M",null,1,false,false,0,"mg/24hrs; mg/24 hrs; milligrams per 24 hours; mg/dy; mg per day; milligrams","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"milligram per deciliter","mg/dL","MG/DL","mass",10,[-3,0,1,0,0,0,0],"mg/dL",null,false,"M",null,1,false,false,0,"mg per dL; milligrams per deciliter; decilitre","LOINC","MCnc","Clinical","",null,null,null,null,false],[false,"milligram per gram","mg/g","MG/G","mass",0.001,[0,0,0,0,0,0,0],"mg/g",null,false,"M",null,1,false,false,0,"mg per gm; milligrams per gram","LOINC","MCnt; MRto","Clinical","",null,null,null,null,false],[false,"milligram per hour","mg/h","MG/HR","mass",2.7777777777777776e-7,[0,-1,1,0,0,0,0],"mg/h",null,false,"M",null,1,false,false,0,"mg/hr; mg per hr; milligrams","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"milligram per kilogram","mg/kg","MG/KG","mass",0.000001,[0,0,0,0,0,0,0],"mg/kg",null,false,"M",null,1,false,false,0,"mg per kg; milligrams per kilograms","LOINC","MCnt","Clinical","",null,null,null,null,false],[false,"milligram per kilogram per 8 hour","mg/kg/(8.h)","(MG/KG)/HR","mass",3.472222222222222e-11,[0,-1,0,0,0,0,0],"(mg/kg)/h",null,false,"M",null,1,false,false,0,"mg/(8.h.kg); mg/kg/8hrs; mg/kg/8 hrs; mg per kg per 8hrs; 8 hrs; milligrams per kilograms per 8 hours; shift","LOINC","RelMRat; MCntRat","Clinical","unit used to measure mass dose rate per patient body mass",null,null,null,null,false],[false,"milligram per kilogram per day","mg/kg/d","(MG/KG)/D","mass",1.1574074074074074e-11,[0,-1,0,0,0,0,0],"(mg/kg)/d",null,false,"M",null,1,false,false,0,"mg/(kg.d); mg/(kg.24.h)mg/kg/dy; mg per kg per day; milligrams per kilograms per days; mg/kg/(24.h); mg/kg/24hrs; 24 hrs; 24 hours","LOINC","RelMRat ","Clinical","unit used to measure mass dose rate per patient body mass",null,null,null,null,false],[false,"milligram per kilogram per hour","mg/kg/h","(MG/KG)/HR","mass",2.7777777777777777e-10,[0,-1,0,0,0,0,0],"(mg/kg)/h",null,false,"M",null,1,false,false,0,"mg/(kg.h); mg/kg/hr; mg per kg per hr; milligrams per kilograms per hour","LOINC","RelMRat; MCntRat","Clinical","unit used to measure mass dose rate per patient body mass",null,null,null,null,false],[false,"milligram per kilogram per minute","mg/kg/min","(MG/KG)/MIN","mass",1.6666666666666667e-8,[0,-1,0,0,0,0,0],"(mg/kg)/min",null,false,"M",null,1,false,false,0,"mg/(kg.min); mg per kg per min; milligrams per kilograms per minute","LOINC","RelMRat; MCntRat","Clinical","unit used to measure mass dose rate per patient body mass",null,null,null,null,false],[false,"milligram per liter","mg/L","MG/L","mass",1,[-3,0,1,0,0,0,0],"mg/L",null,false,"M",null,1,false,false,0,"mg per l; milligrams per liter; litre","LOINC","MCnc","Clinical","",null,null,null,null,false],[false,"milligram per square meter","mg/m2","MG/M2","mass",0.001,[-2,0,1,0,0,0,0],"mg/(m2)",null,false,"M",null,1,false,false,0,"mg/m^2; mg/sq. m; mg per m2; mg per m^2; mg per sq. milligrams; meter squared; metre","LOINC","ArMass","Clinical","",null,null,null,null,false],[false,"milligram per cubic meter","mg/m3","MG/M3","mass",0.001,[-3,0,1,0,0,0,0],"mg/(m3)",null,false,"M",null,1,false,false,0,"mg/m^3; mg/cu. m; mg per m3; milligrams per cubic meter; meter cubed; metre","LOINC","MCnc","Clinical","",null,null,null,null,false],[false,"milligram per milligram","mg/mg","MG/MG","mass",1,[0,0,0,0,0,0,0],"mg/mg",null,false,"M",null,1,false,false,0,"mg per mg; milligrams; milligram/milligram","LOINC","MRto","Clinical","",null,null,null,null,false],[false,"milligram per minute","mg/min","MG/MIN","mass",0.000016666666666666667,[0,-1,1,0,0,0,0],"mg/min",null,false,"M",null,1,false,false,0,"mg per min; milligrams per minutes; milligram/minute","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"milligram per milliliter","mg/mL","MG/ML","mass",1000.0000000000001,[-3,0,1,0,0,0,0],"mg/mL",null,false,"M",null,1,false,false,0,"mg per mL; milligrams per milliliters; millilitre","LOINC","MCnc","Clinical","",null,null,null,null,false],[false,"milligram per millimole","mg/mmol","MG/MMOL","mass",1.660540186674939e-24,[0,0,1,0,0,0,0],"mg/mmol",null,false,"M",null,1,false,false,-1,"mg per mmol; milligrams per millimole; ","LOINC","Ratio","Clinical","",null,null,null,null,false],[false,"milligram per week","mg/wk","MG/WK","mass",1.6534391534391535e-9,[0,-1,1,0,0,0,0],"mg/wk",null,false,"M",null,1,false,false,0,"mg/week; mg per wk; milligrams per weeks; milligram/week","LOINC","Mrat","Clinical","",null,null,null,null,false],[false,"milliliter","mL","ML","volume",0.000001,[3,0,0,0,0,0,0],"mL","iso1000",true,null,null,1,false,false,0,"milliliters; millilitres","LOINC","Vol","Clinical","","l",null,"1",1,false],[false,"milliliter per 10 hour","mL/(10.h)","ML/HR","volume",2.7777777777777777e-11,[3,-1,0,0,0,0,0],"mL/h","iso1000",true,null,null,1,false,false,0,"ml/10hrs; ml/10 hrs; mL per 10hrs; 10 hrs; milliliters per 10 hours; millilitres","LOINC","VRat","Clinical","","l",null,"1",1,false],[false,"milliliter per 12 hour","mL/(12.h)","ML/HR","volume",2.3148148148148147e-11,[3,-1,0,0,0,0,0],"mL/h","iso1000",true,null,null,1,false,false,0,"ml/12hrs; ml/12 hrs; mL per 12hrs; 12 hrs; milliliters per 12 hours; millilitres","LOINC","VRat","Clinical","","l",null,"1",1,false],[false,"milliliter per 2 hour","mL/(2.h)","ML/HR","volume",1.3888888888888888e-10,[3,-1,0,0,0,0,0],"mL/h","iso1000",true,null,null,1,false,false,0,"ml/2hrs; ml/2 hrs; mL per 2hrs; 2 hrs; milliliters per 2 hours; millilitres ","LOINC","VRat","Clinical","","l",null,"1",1,false],[false,"milliliter per 24 hour","mL/(24.h)","ML/HR","volume",1.1574074074074074e-11,[3,-1,0,0,0,0,0],"mL/h","iso1000",true,null,null,1,false,false,0,"ml/24hrs; ml/24 hrs; mL per 24hrs; 24 hrs; milliliters per 24 hours; millilitres; ml/dy; /day; ml per dy; days; fluid outputs; fluid inputs; flow rate","LOINC","VRat","Clinical","","l",null,"1",1,false],[false,"milliliter per 4 hour","mL/(4.h)","ML/HR","volume",6.944444444444444e-11,[3,-1,0,0,0,0,0],"mL/h","iso1000",true,null,null,1,false,false,0,"ml/4hrs; ml/4 hrs; mL per 4hrs; 4 hrs; milliliters per 4 hours; millilitres","LOINC","VRat","Clinical","","l",null,"1",1,false],[false,"milliliter per 5 hour","mL/(5.h)","ML/HR","volume",5.5555555555555553e-11,[3,-1,0,0,0,0,0],"mL/h","iso1000",true,null,null,1,false,false,0,"ml/5hrs; ml/5 hrs; mL per 5hrs; 5 hrs; milliliters per 5 hours; millilitres","LOINC","VRat","Clinical","","l",null,"1",1,false],[false,"milliliter per 6 hour","mL/(6.h)","ML/HR","volume",4.6296296296296294e-11,[3,-1,0,0,0,0,0],"mL/h","iso1000",true,null,null,1,false,false,0,"ml/6hrs; ml/6 hrs; mL per 6hrs; 6 hrs; milliliters per 6 hours; millilitres","LOINC","VRat","Clinical","","l",null,"1",1,false],[false,"milliliter per 72 hour","mL/(72.h)","ML/HR","volume",3.8580246913580245e-12,[3,-1,0,0,0,0,0],"mL/h","iso1000",true,null,null,1,false,false,0,"ml/72hrs; ml/72 hrs; mL per 72hrs; 72 hrs; milliliters per 72 hours; millilitres","LOINC","VRat","Clinical","","l",null,"1",1,false],[false,"milliliter per 8 hour","mL/(8.h)","ML/HR","volume",3.472222222222222e-11,[3,-1,0,0,0,0,0],"mL/h","iso1000",true,null,null,1,false,false,0,"ml/8hrs; ml/8 hrs; mL per 8hrs; 8 hrs; milliliters per 8 hours; millilitres; shift","LOINC","VRat","Clinical","","l",null,"1",1,false],[false,"milliliter per 8 hour per kilogram","mL/(8.h)/kg","(ML/HR)/KG","volume",3.472222222222222e-14,[3,-1,-1,0,0,0,0],"(mL/h)/kg","iso1000",true,null,null,1,false,false,0,"mL/kg/(8.h); ml/8h/kg; ml/8 h/kg; ml/8hr/kg; ml/8 hr/kgr; mL per 8h per kg; 8 h; 8hr; 8 hr; milliliters per 8 hours per kilogram; millilitres; shift","LOINC","VRatCnt","Clinical","unit used to measure renal excretion volume rate per body mass","l",null,"1",1,false],[false,"milliliter per square inch (international)","mL/[sin_i]","ML/[SIN_I]","volume",0.0015500031000061998,[1,0,0,0,0,0,0],"mL","iso1000",true,null,null,1,false,false,0,"mL/sin; mL/in2; mL/in^2; mL per sin; in2; in^2; sq. in; milliliters per square inch; inch squared","LOINC","ArVol","Clinical","","l",null,"1",1,false],[false,"milliliter per centimeter of water","mL/cm[H2O]","ML/CM[H2O]","volume",1.0197162129779282e-11,[4,2,-1,0,0,0,0],"mL/(cm\xa0HO2)","iso1000",true,null,null,1,false,false,0,"milliliters per centimeter of water; millilitre per centimetre of water; millilitres per centimetre of water; mL/cmH2O; mL/cm H2O; mL per cmH2O; mL per cm H2O","LOINC","Compli","Clinical","unit used to measure dynamic lung compliance","l",null,"1",1,false],[false,"milliliter per day","mL/d","ML/D","volume",1.1574074074074074e-11,[3,-1,0,0,0,0,0],"mL/d","iso1000",true,null,null,1,false,false,0,"ml/day; ml per day; milliliters per day; 24 hours; 24hrs; millilitre;","LOINC","VRat","Clinical","usually used to measure fluid output or input; flow rate","l",null,"1",1,false],[false,"milliliter per deciliter","mL/dL","ML/DL","volume",0.009999999999999998,[0,0,0,0,0,0,0],"mL/dL","iso1000",true,null,null,1,false,false,0,"mL per dL; millilitres; decilitre; milliliters","LOINC","VFr; VFrDiff","Clinical","","l",null,"1",1,false],[false,"milliliter per hour","mL/h","ML/HR","volume",2.7777777777777777e-10,[3,-1,0,0,0,0,0],"mL/h","iso1000",true,null,null,1,false,false,0,"mL/hr; mL per hr; milliliters per hour; millilitres; fluid intake; fluid output","LOINC","VRat","Clinical","","l",null,"1",1,false],[false,"milliliter per kilogram","mL/kg","ML/KG","volume",9.999999999999999e-10,[3,0,-1,0,0,0,0],"mL/kg","iso1000",true,null,null,1,false,false,0,"mL per kg; milliliters per kilogram; millilitres","LOINC","VCnt","Clinical","","l",null,"1",1,false],[false,"milliliter per kilogram per 8 hour","mL/kg/(8.h)","(ML/KG)/HR","volume",3.472222222222222e-14,[3,-1,-1,0,0,0,0],"(mL/kg)/h","iso1000",true,null,null,1,false,false,0,"mL/(8.h.kg); mL/kg/8hrs; mL/kg/8 hrs; mL per kg per 8hrs; 8 hrs; milliliters per kilograms per 8 hours; millilitres; shift","LOINC","VCntRat; RelEngRat","Clinical","unit used to measure renal excretion volume rate per body mass","l",null,"1",1,false],[false,"milliliter per kilogram per day","mL/kg/d","(ML/KG)/D","volume",1.1574074074074072e-14,[3,-1,-1,0,0,0,0],"(mL/kg)/d","iso1000",true,null,null,1,false,false,0,"mL/(kg.d); mL/kg/dy; mL per kg per day; milliliters per kilograms per day; mg/kg/24hrs; 24 hrs; per 24 hours millilitres","LOINC","VCntRat; RelEngRat","Clinical","unit used to measure renal excretion volume rate per body mass","l",null,"1",1,false],[false,"milliliter per kilogram per hour","mL/kg/h","(ML/KG)/HR","volume",2.7777777777777774e-13,[3,-1,-1,0,0,0,0],"(mL/kg)/h","iso1000",true,null,null,1,false,false,0,"mL/(kg.h); mL/kg/hr; mL per kg per hr; milliliters per kilograms per hour; millilitres","LOINC","VCntRat; RelEngRat","Clinical","unit used to measure renal excretion volume rate per body mass","l",null,"1",1,false],[false,"milliliter per kilogram per minute","mL/kg/min","(ML/KG)/MIN","volume",1.6666666666666664e-11,[3,-1,-1,0,0,0,0],"(mL/kg)/min","iso1000",true,null,null,1,false,false,0,"mL/(kg.min); mL/kg/dy; mL per kg per day; milliliters per kilograms per day; millilitres","LOINC","RelEngRat","Clinical","used for tests that measure activity metabolic rate compared to standard resting metabolic rate ","l",null,"1",1,false],[false,"milliliter per square meter","mL/m2","ML/M2","volume",0.000001,[1,0,0,0,0,0,0],"mL/(m2)","iso1000",true,null,null,1,false,false,0,"mL/m^2; mL/sq. meter; mL per m2; m^2; sq. meter; milliliters per square meter; millilitres; meter squared","LOINC","ArVol","Clinical","used for tests that relate to heart work - e.g. ventricular stroke volume; atrial volume per body surface area","l",null,"1",1,false],[false,"milliliter per millibar","mL/mbar","ML/MBAR","volume",1e-11,[4,2,-1,0,0,0,0],"mL/mbar","iso1000",true,null,null,1,false,false,0,"mL per mbar; milliliters per millibar; millilitres","LOINC","","Clinical","unit used to measure dynamic lung compliance","l",null,"1",1,false],[false,"milliliter per minute","mL/min","ML/MIN","volume",1.6666666666666667e-8,[3,-1,0,0,0,0,0],"mL/min","iso1000",true,null,null,1,false,false,0,"mL per min; milliliters; millilitres","LOINC","VRat","Clinical","","l",null,"1",1,false],[false,"milliliter per minute per square meter","mL/min/m2","(ML/MIN)/M2","volume",1.6666666666666667e-8,[1,-1,0,0,0,0,0],"(mL/min)/(m2)","iso1000",true,null,null,1,false,false,0,"ml/min/m^2; ml/min/sq. meter; mL per min per m2; m^2; sq. meter; milliliters per minutes per square meter; millilitres; metre; meter squared","LOINC","ArVRat","Clinical","unit used to measure volume per body surface area; oxygen consumption index","l",null,"1",1,false],[false,"milliliter per millimeter","mL/mm","ML/MM","volume",0.001,[2,0,0,0,0,0,0],"mL/mm","iso1000",true,null,null,1,false,false,0,"mL per mm; milliliters per millimeter; millilitres; millimetre","LOINC","Lineic Volume","Clinical","","l",null,"1",1,false],[false,"milliliter per second","mL/s","ML/S","volume",0.000001,[3,-1,0,0,0,0,0],"mL/s","iso1000",true,null,null,1,false,false,0,"ml/sec; mL per sec; milliliters per second; millilitres","LOINC","Vel; VelRat; VRat","Clinical","","l",null,"1",1,false],[false,"millimeter","mm","MM","length",0.001,[1,0,0,0,0,0,0],"mm",null,false,"L",null,1,false,false,0,"millimeters; millimetres; height; length; diameter; thickness; axis; curvature; size","LOINC","Len","Clinical","",null,null,null,null,false],[false,"millimeter per hour","mm/h","MM/HR","length",2.7777777777777776e-7,[1,-1,0,0,0,0,0],"mm/h",null,false,"L",null,1,false,false,0,"mm/hr; mm per hr; millimeters per hour; millimetres","LOINC","Vel","Clinical","unit to measure sedimentation rate",null,null,null,null,false],[false,"millimeter per minute","mm/min","MM/MIN","length",0.000016666666666666667,[1,-1,0,0,0,0,0],"mm/min",null,false,"L",null,1,false,false,0,"mm per min; millimeters per minute; millimetres","LOINC","Vel","Clinical","",null,null,null,null,false],[false,"millimeter of water","mm[H2O]","MM[H2O]","pressure",9806.65,[-1,-2,1,0,0,0,0],"mm\xa0HO2","clinical",true,null,null,1,false,false,0,"mmH2O; mm H2O; millimeters of water; millimetres","LOINC","Pres","Clinical","","kPa","KPAL","980665e-5",9.80665,false],[false,"millimeter of mercury","mm[Hg]","MM[HG]","pressure",133322,[-1,-2,1,0,0,0,0],"mm\xa0Hg","clinical",true,null,null,1,false,false,0,"mmHg; mm Hg; millimeters of mercury; millimetres","LOINC","Pres; PPres; Ratio","Clinical","1 mm[Hg] = 1 torr; unit to measure blood pressure","kPa","KPAL","133.3220",133.322,false],[false,"square millimeter","mm2","MM2","length",0.000001,[2,0,0,0,0,0,0],"mm2",null,false,"L",null,1,false,false,0,"mm^2; sq. mm.; sq. millimeters; millimeters squared; millimetres","LOINC","Area","Clinical","",null,null,null,null,false],[false,"millimole","mmol","MMOL","amount of substance",602213670000000000000,[0,0,0,0,0,0,0],"mmol","si",true,null,null,1,false,false,1,"millimoles","LOINC","Sub","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"millimole per 12 hour","mmol/(12.h)","MMOL/HR","amount of substance",13940131250000000,[0,-1,0,0,0,0,0],"mmol/h","si",true,null,null,1,false,false,1,"mmol/12hrs; mmol/12 hrs; mmol per 12 hrs; 12hrs; millimoles per 12 hours","LOINC","SRat","Clinical","unit for tests related to urine","10*23","10*23","6.0221367",6.0221367,false],[false,"millimole per 2 hour","mmol/(2.h)","MMOL/HR","amount of substance",83640787500000000,[0,-1,0,0,0,0,0],"mmol/h","si",true,null,null,1,false,false,1,"mmol/2hrs; mmol/2 hrs; mmol per 2 hrs; 2hrs; millimoles per 2 hours","LOINC","SRat","Clinical","unit for tests related to urine","10*23","10*23","6.0221367",6.0221367,false],[false,"millimole per 24 hour","mmol/(24.h)","MMOL/HR","amount of substance",6970065625000000,[0,-1,0,0,0,0,0],"mmol/h","si",true,null,null,1,false,false,1,"mmol/24hrs; mmol/24 hrs; mmol per 24 hrs; 24hrs; millimoles per 24 hours","LOINC","SRat","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"millimole per 5 hour","mmol/(5.h)","MMOL/HR","amount of substance",33456315000000000,[0,-1,0,0,0,0,0],"mmol/h","si",true,null,null,1,false,false,1,"mmol/5hrs; mmol/5 hrs; mmol per 5 hrs; 5hrs; millimoles per 5 hours","LOINC","SRat","Clinical","unit for tests related to doses","10*23","10*23","6.0221367",6.0221367,false],[false,"millimole per 6 hour","mmol/(6.h)","MMOL/HR","amount of substance",27880262500000000,[0,-1,0,0,0,0,0],"mmol/h","si",true,null,null,1,false,false,1,"mmol/6hrs; mmol/6 hrs; mmol per 6 hrs; 6hrs; millimoles per 6 hours","LOINC","SRat","Clinical","unit for tests related to urine","10*23","10*23","6.0221367",6.0221367,false],[false,"millimole per 8 hour","mmol/(8.h)","MMOL/HR","amount of substance",20910196875000000,[0,-1,0,0,0,0,0],"mmol/h","si",true,null,null,1,false,false,1,"mmol/8hrs; mmol/8 hrs; mmol per 8 hrs; 8hrs; millimoles per 8 hours; shift","LOINC","SRat","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"millimole per day","mmol/d","MMOL/D","amount of substance",6970065625000000,[0,-1,0,0,0,0,0],"mmol/d","si",true,null,null,1,false,false,1,"mmol/24hrs; mmol/24 hrs; mmol per 24 hrs; 24hrs; millimoles per 24 hours","LOINC","SRat","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"millimole per deciliter","mmol/dL","MMOL/DL","amount of substance",6.022136699999999e+24,[-3,0,0,0,0,0,0],"mmol/dL","si",true,null,null,1,false,false,1,"mmol per dL; millimoles; decilitre","LOINC","SCnc","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"millimole per gram","mmol/g","MMOL/G","amount of substance",602213670000000000000,[0,0,-1,0,0,0,0],"mmol/g","si",true,null,null,1,false,false,1,"mmol per gram; millimoles","LOINC","SCnt","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"millimole per hour","mmol/h","MMOL/HR","amount of substance",167281575000000000,[0,-1,0,0,0,0,0],"mmol/h","si",true,null,null,1,false,false,1,"mmol/hr; mmol per hr; millimoles per hour","LOINC","SRat","Clinical","unit for tests related to urine","10*23","10*23","6.0221367",6.0221367,false],[false,"millimole per kilogram","mmol/kg","MMOL/KG","amount of substance",602213670000000000,[0,0,-1,0,0,0,0],"mmol/kg","si",true,null,null,1,false,false,1,"mmol per kg; millimoles per kilogram","LOINC","SCnt","Clinical","unit for tests related to stool","10*23","10*23","6.0221367",6.0221367,false],[false,"millimole per kilogram per 8 hour","mmol/kg/(8.h)","(MMOL/KG)/HR","amount of substance",20910196875000,[0,-1,-1,0,0,0,0],"(mmol/kg)/h","si",true,null,null,1,false,false,1,"mmol/(8.h.kg); mmol/kg/8hrs; mmol/kg/8 hrs; mmol per kg per 8hrs; 8 hrs; millimoles per kilograms per 8 hours; shift","LOINC","CCnt","Clinical","unit used to measure molar dose rate per patient body mass","10*23","10*23","6.0221367",6.0221367,false],[false,"millimole per kilogram per day","mmol/kg/d","(MMOL/KG)/D","amount of substance",6970065625000,[0,-1,-1,0,0,0,0],"(mmol/kg)/d","si",true,null,null,1,false,false,1,"mmol/kg/dy; mmol/kg/day; mmol per kg per dy; millimoles per kilograms per day","LOINC","RelSRat","Clinical","unit used to measure molar dose rate per patient body mass","10*23","10*23","6.0221367",6.0221367,false],[false,"millimole per kilogram per hour","mmol/kg/h","(MMOL/KG)/HR","amount of substance",167281575000000,[0,-1,-1,0,0,0,0],"(mmol/kg)/h","si",true,null,null,1,false,false,1,"mmol/kg/hr; mmol per kg per hr; millimoles per kilograms per hour","LOINC","CCnt","Clinical","unit used to measure molar dose rate per patient body mass","10*23","10*23","6.0221367",6.0221367,false],[false,"millimole per kilogram per minute","mmol/kg/min","(MMOL/KG)/MIN","amount of substance",10036894500000000,[0,-1,-1,0,0,0,0],"(mmol/kg)/min","si",true,null,null,1,false,false,1,"mmol/(kg.min); mmol/kg/min; mmol per kg per min; millimoles per kilograms per minute","LOINC","CCnt","Clinical","unit used to measure molar dose rate per patient body mass; note that the unit for the enzyme unit U = umol/min. mmol/kg/min = kU/kg; ","10*23","10*23","6.0221367",6.0221367,false],[false,"millimole per liter","mmol/L","MMOL/L","amount of substance",6.0221367e+23,[-3,0,0,0,0,0,0],"mmol/L","si",true,null,null,1,false,false,1,"mmol per L; millimoles per liter; litre","LOINC","SCnc","Clinical","unit for tests related to doses","10*23","10*23","6.0221367",6.0221367,false],[false,"millimole per square meter","mmol/m2","MMOL/M2","amount of substance",602213670000000000000,[-2,0,0,0,0,0,0],"mmol/(m2)","si",true,null,null,1,false,false,1,"mmol/m^2; mmol/sq. meter; mmol per m2; m^2; sq. meter; millimoles; meter squared; metre","LOINC","ArSub","Clinical","unit used to measure molar dose per patient body surface area","10*23","10*23","6.0221367",6.0221367,false],[false,"millimole per minute","mmol/min","MMOL/MIN","amount of substance",10036894500000000000,[0,-1,0,0,0,0,0],"mmol/min","si",true,null,null,1,false,false,1,"mmol per min; millimoles per minute","LOINC","Srat; CAct","Clinical","unit for the enzyme unit U = umol/min. mmol/min = kU","10*23","10*23","6.0221367",6.0221367,false],[false,"millimole per millimole","mmol/mmol","MMOL/MMOL","amount of substance",1,[0,0,0,0,0,0,0],"mmol/mmol","si",true,null,null,1,false,false,0,"mmol per mmol; millimoles per millimole","LOINC","SRto","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"millimole per mole","mmol/mol","MMOL/MOL","amount of substance",0.001,[0,0,0,0,0,0,0],"mmol/mol","si",true,null,null,1,false,false,0,"mmol per mol; millimoles per mole","LOINC","SRto","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"millimole per second per liter","mmol/s/L","(MMOL/S)/L","amount of substance",6.0221367e+23,[-3,-1,0,0,0,0,0],"(mmol/s)/L","si",true,null,null,1,false,false,1,"mmol/sec/L; mmol per s per L; per sec; millimoles per seconds per liter; litre","LOINC","CCnc ","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"mole per kilogram","mol/kg","MOL/KG","amount of substance",602213670000000000000,[0,0,-1,0,0,0,0],"mol/kg","si",true,null,null,1,false,false,1,"mol per kg; moles; mols","LOINC","SCnt","Clinical","unit for tests related to stool","10*23","10*23","6.0221367",6.0221367,false],[false,"mole per kilogram per second","mol/kg/s","(MOL/KG)/S","amount of substance",602213670000000000000,[0,-1,-1,0,0,0,0],"(mol/kg)/s","si",true,null,null,1,false,false,1,"mol/kg/sec; mol per kg per sec; moles per kilograms per second; mols","LOINC","CCnt","Clinical","unit of catalytic activity (mol/s) per mass (kg)","10*23","10*23","6.0221367",6.0221367,false],[false,"mole per liter","mol/L","MOL/L","amount of substance",6.0221366999999994e+26,[-3,0,0,0,0,0,0],"mol/L","si",true,null,null,1,false,false,1,"mol per L; moles per liter; litre; moles; mols","LOINC","SCnc","Clinical","unit often used in tests measuring oxygen content","10*23","10*23","6.0221367",6.0221367,false],[false,"mole per cubic meter","mol/m3","MOL/M3","amount of substance",6.0221367e+23,[-3,0,0,0,0,0,0],"mol/(m3)","si",true,null,null,1,false,false,1,"mol/m^3; mol/cu. m; mol per m3; m^3; cu. meter; mols; moles; meters cubed; metre; mole per kiloliter; kilolitre; mol/kL","LOINC","SCnc","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"mole per milliliter","mol/mL","MOL/ML","amount of substance",6.0221367e+29,[-3,0,0,0,0,0,0],"mol/mL","si",true,null,null,1,false,false,1,"mol per mL; moles; millilitre; mols","LOINC","SCnc","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"mole per mole","mol/mol","MOL/MOL","amount of substance",1,[0,0,0,0,0,0,0],"mol/mol","si",true,null,null,1,false,false,0,"mol per mol; moles per mol; mols","LOINC","SRto","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"mole per second","mol/s","MOL/S","amount of substance",6.0221367e+23,[0,-1,0,0,0,0,0],"mol/s","si",true,null,null,1,false,false,1,"mol per sec; moles per second; mols","LOINC","SRat","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"milliosmole","mosm","MOSM","amount of substance (dissolved particles)",602213670000000000000,[0,0,0,0,0,0,0],"mosm","chemical",true,null,null,1,false,false,1,"milliosmoles","LOINC","Osmol","Clinical","equal to 1/1000 of an osmole","mol","MOL","1",1,false],[false,"milliosmole per kilogram","mosm/kg","MOSM/KG","amount of substance (dissolved particles)",602213670000000000,[0,0,-1,0,0,0,0],"mosm/kg","chemical",true,null,null,1,false,false,1,"mosm per kg; milliosmoles per kilogram","LOINC","Osmol","Clinical","","mol","MOL","1",1,false],[false,"milliosmole per liter","mosm/L","MOSM/L","amount of substance (dissolved particles)",6.0221367e+23,[-3,0,0,0,0,0,0],"mosm/L","chemical",true,null,null,1,false,false,1,"mosm per liter; litre; milliosmoles","LOINC","Osmol","Clinical","","mol","MOL","1",1,false],[false,"millipascal","mPa","MPAL","pressure",1,[-1,-2,1,0,0,0,0],"mPa","si",true,null,null,1,false,false,0,"millipascals","LOINC","Pres","Clinical","unit of pressure","N/m2","N/M2","1",1,false],[false,"millipascal second","mPa.s","MPAL.S","pressure",1,[-1,-1,1,0,0,0,0],"mPa.s","si",true,null,null,1,false,false,0,"mPa*s; millipoise; mP; dynamic viscosity","LOINC","Visc","Clinical","base units for millipoise, a measurement of dynamic viscosity","N/m2","N/M2","1",1,false],[false,"megasecond","Ms","MAS","time",1000000,[0,1,0,0,0,0,0],"Ms",null,false,"T",null,1,false,false,0,"megaseconds","LOINC","Time","Clinical","",null,null,null,null,false],[false,"millisecond","ms","MS","time",0.001,[0,1,0,0,0,0,0],"ms",null,false,"T",null,1,false,false,0,"milliseconds; duration","LOINC","Time","Clinical","",null,null,null,null,false],[false,"milli enzyme unit per gram","mU/g","MU/G","catalytic activity",10036894500000,[0,-1,-1,0,0,0,0],"mU/g","chemical",true,null,null,1,false,false,1,"mU per gm; milli enzyme units per gram; enzyme activity; enzymatic activity per mass","LOINC","CCnt","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min); 1 mU = 1 nmol/min","umol/min","UMOL/MIN","1",1,false],[false,"milli enzyme unit per liter","mU/L","MU/L","catalytic activity",10036894500000000,[-3,-1,0,0,0,0,0],"mU/L","chemical",true,null,null,1,false,false,1,"mU per liter; litre; milli enzyme units enzymatic activity per volume; enzyme activity","LOINC","CCnc","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min); 1 mU = 1 nmol/min","umol/min","UMOL/MIN","1",1,false],[false,"milli enzyme unit per milligram","mU/mg","MU/MG","catalytic activity",10036894500000000,[0,-1,-1,0,0,0,0],"mU/mg","chemical",true,null,null,1,false,false,1,"mU per mg; milli enzyme units per milligram","LOINC","CCnt","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min); 1 mU = 1 nmol/min","umol/min","UMOL/MIN","1",1,false],[false,"milli enzyme unit per milliliter","mU/mL","MU/ML","catalytic activity",10036894500000000000,[-3,-1,0,0,0,0,0],"mU/mL","chemical",true,null,null,1,false,false,1,"mU per mL; milli enzyme units per milliliter; millilitre; enzymatic activity per volume; enzyme activity","LOINC","CCnc","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min); 1 mU = 1 nmol/min","umol/min","UMOL/MIN","1",1,false],[false,"milli enzyme unit per milliliter per minute","mU/mL/min","(MU/ML)/MIN","catalytic activity",167281575000000000,[-3,-2,0,0,0,0,0],"(mU/mL)/min","chemical",true,null,null,1,false,false,1,"mU per mL per min; mU per milliliters per minute; millilitres; milli enzyme units; enzymatic activity; enzyme activity","LOINC","CCncRat","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min); 1 mU = 1 nmol/min","umol/min","UMOL/MIN","1",1,false],[false,"millivolt","mV","MV","electric potential",1,[2,-2,1,0,0,-1,0],"mV","si",true,null,null,1,false,false,0,"millivolts","LOINC","Elpot","Clinical","unit of electric potential (voltage)","J/C","J/C","1",1,false],[false,"Newton centimeter","N.cm","N.CM","force",10,[2,-2,1,0,0,0,0],"N.cm","si",true,null,null,1,false,false,0,"N*cm; Ncm; N cm; Newton*centimeters; Newton* centimetres; torque; work","LOINC","","Clinical","as a measurement of work, N.cm = 1/100 Joules;\\nnote that N.m is the standard unit of measurement for torque (although dimensionally equivalent to Joule), and N.cm can also be thought of as a torqe unit","kg.m/s2","KG.M/S2","1",1,false],[false,"Newton second","N.s","N.S","force",1000,[1,-1,1,0,0,0,0],"N.s","si",true,null,null,1,false,false,0,"Newton*seconds; N*s; N s; Ns; impulse; imp","LOINC","","Clinical","standard unit of impulse","kg.m/s2","KG.M/S2","1",1,false],[false,"nanogram","ng","NG","mass",1e-9,[0,0,1,0,0,0,0],"ng",null,false,"M",null,1,false,false,0,"nanograms","LOINC","Mass","Clinical","",null,null,null,null,false],[false,"nanogram per 24 hour","ng/(24.h)","NG/HR","mass",1.1574074074074075e-14,[0,-1,1,0,0,0,0],"ng/h",null,false,"M",null,1,false,false,0,"ng/24hrs; ng/24 hrs; nanograms per 24 hours","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"nanogram per 8 hour","ng/(8.h)","NG/HR","mass",3.4722222222222224e-14,[0,-1,1,0,0,0,0],"ng/h",null,false,"M",null,1,false,false,0,"ng/8hrs; ng/8 hrs; nanograms per 8 hours","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"nanogram per million","ng/10*6","NG/(10*6)","mass",1e-15,[0,0,1,0,0,0,0],"ng/(106)",null,false,"M",null,1,false,false,0,"ng/10^6; ng per 10*6; 10^6; nanograms","LOINC","MNum","Clinical","",null,null,null,null,false],[false,"nanogram per day","ng/d","NG/D","mass",1.1574074074074075e-14,[0,-1,1,0,0,0,0],"ng/d",null,false,"M",null,1,false,false,0,"ng/dy; ng per day; nanograms ","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"nanogram per deciliter","ng/dL","NG/DL","mass",0.00001,[-3,0,1,0,0,0,0],"ng/dL",null,false,"M",null,1,false,false,0,"ng per dL; nanograms per deciliter; decilitre","LOINC","MCnc","Clinical","",null,null,null,null,false],[false,"nanogram per gram","ng/g","NG/G","mass",1e-9,[0,0,0,0,0,0,0],"ng/g",null,false,"M",null,1,false,false,0,"ng/gm; ng per gm; nanograms per gram","LOINC","MCnt","Clinical","",null,null,null,null,false],[false,"nanogram per hour","ng/h","NG/HR","mass",2.777777777777778e-13,[0,-1,1,0,0,0,0],"ng/h",null,false,"M",null,1,false,false,0,"ng/hr; ng per hr; nanograms per hour","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"nanogram per kilogram","ng/kg","NG/KG","mass",1e-12,[0,0,0,0,0,0,0],"ng/kg",null,false,"M",null,1,false,false,0,"ng per kg; nanograms per kilogram","LOINC","MCnt","Clinical","",null,null,null,null,false],[false,"nanogram per kilogram per 8 hour","ng/kg/(8.h)","(NG/KG)/HR","mass",3.472222222222222e-17,[0,-1,0,0,0,0,0],"(ng/kg)/h",null,false,"M",null,1,false,false,0,"ng/(8.h.kg); ng/kg/8hrs; ng/kg/8 hrs; ng per kg per 8hrs; 8 hrs; nanograms per kilograms per 8 hours; shift","LOINC","MRtoRat ","Clinical","unit used to measure mass dose rate per patient body mass",null,null,null,null,false],[false,"nanogram per kilogram per hour","ng/kg/h","(NG/KG)/HR","mass",2.7777777777777775e-16,[0,-1,0,0,0,0,0],"(ng/kg)/h",null,false,"M",null,1,false,false,0,"ng/(kg.h); ng/kg/hr; ng per kg per hr; nanograms per kilograms per hour","LOINC","MRtoRat ","Clinical","unit used to measure mass dose rate per patient body mass",null,null,null,null,false],[false,"nanogram per kilogram per minute","ng/kg/min","(NG/KG)/MIN","mass",1.6666666666666667e-14,[0,-1,0,0,0,0,0],"(ng/kg)/min",null,false,"M",null,1,false,false,0,"ng/(kg.min); ng per kg per min; nanograms per kilograms per minute","LOINC","MRtoRat ","Clinical","unit used to measure mass dose rate per patient body mass",null,null,null,null,false],[false,"nanogram per liter","ng/L","NG/L","mass",0.000001,[-3,0,1,0,0,0,0],"ng/L",null,false,"M",null,1,false,false,0,"ng per L; nanograms per liter; litre","LOINC","MCnc","Clinical","",null,null,null,null,false],[false,"nanogram per square meter","ng/m2","NG/M2","mass",1e-9,[-2,0,1,0,0,0,0],"ng/(m2)",null,false,"M",null,1,false,false,0,"ng/m^2; ng/sq. m; ng per m2; m^2; sq. meter; nanograms; meter squared; metre","LOINC","ArMass","Clinical","unit used to measure mass dose per patient body surface area",null,null,null,null,false],[false,"nanogram per milligram","ng/mg","NG/MG","mass",0.000001,[0,0,0,0,0,0,0],"ng/mg",null,false,"M",null,1,false,false,0,"ng per mg; nanograms","LOINC","MCnt","Clinical","",null,null,null,null,false],[false,"nanogram per milligram per hour","ng/mg/h","(NG/MG)/HR","mass",2.7777777777777777e-10,[0,-1,0,0,0,0,0],"(ng/mg)/h",null,false,"M",null,1,false,false,0,"ng/mg/hr; ng per mg per hr; nanograms per milligrams per hour","LOINC","MRtoRat ","Clinical","",null,null,null,null,false],[false,"nanogram per minute","ng/min","NG/MIN","mass",1.6666666666666667e-11,[0,-1,1,0,0,0,0],"ng/min",null,false,"M",null,1,false,false,0,"ng per min; nanograms","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"nanogram per millliiter","ng/mL","NG/ML","mass",0.001,[-3,0,1,0,0,0,0],"ng/mL",null,false,"M",null,1,false,false,0,"ng per mL; nanograms; millilitre","LOINC","MCnc","Clinical","",null,null,null,null,false],[false,"nanogram per milliliter per hour","ng/mL/h","(NG/ML)/HR","mass",2.7777777777777776e-7,[-3,-1,1,0,0,0,0],"(ng/mL)/h",null,false,"M",null,1,false,false,0,"ng/mL/hr; ng per mL per mL; nanograms per milliliter per hour; nanogram per millilitre per hour; nanograms per millilitre per hour; enzymatic activity per volume; enzyme activity per milliliters","LOINC","CCnc","Clinical","tests that measure enzymatic activity",null,null,null,null,false],[false,"nanogram per second","ng/s","NG/S","mass",1e-9,[0,-1,1,0,0,0,0],"ng/s",null,false,"M",null,1,false,false,0,"ng/sec; ng per sec; nanograms per second","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"nanogram per enzyme unit","ng/U","NG/U","mass",9.963241120049634e-26,[0,1,1,0,0,0,0],"ng/U",null,false,"M",null,1,false,false,-1,"ng per U; nanograms per enzyme unit","LOINC","CMass","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min)",null,null,null,null,false],[false,"nanokatal","nkat","NKAT","catalytic activity",602213670000000,[0,-1,0,0,0,0,0],"nkat","chemical",true,null,null,1,false,false,1,"nanokatals","LOINC","CAct","Clinical","kat is a unit of catalytic activity with base units = mol/s. Rarely used because its units are too large to practically express catalytic activity. See enzyme unit [U] which is the standard unit for catalytic activity.","mol/s","MOL/S","1",1,false],[false,"nanoliter","nL","NL","volume",1.0000000000000002e-12,[3,0,0,0,0,0,0],"nL","iso1000",true,null,null,1,false,false,0,"nanoliters; nanolitres","LOINC","Vol","Clinical","","l",null,"1",1,false],[false,"nanometer","nm","NM","length",1e-9,[1,0,0,0,0,0,0],"nm",null,false,"L",null,1,false,false,0,"nanometers; nanometres","LOINC","Len","Clinical","",null,null,null,null,false],[false,"nanometer per second per liter","nm/s/L","(NM/S)/L","length",0.000001,[-2,-1,0,0,0,0,0],"(nm/s)/L",null,false,"L",null,1,false,false,0,"nm/sec/liter; nm/sec/litre; nm per s per l; nm per sec per l; nanometers per second per liter; nanometre per second per litre; nanometres per second per litre","LOINC","VelCnc","Clinical","",null,null,null,null,false],[false,"nanomole","nmol","NMOL","amount of substance",602213670000000,[0,0,0,0,0,0,0],"nmol","si",true,null,null,1,false,false,1,"nanomoles","LOINC","Sub","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"nanomole per 24 hour","nmol/(24.h)","NMOL/HR","amount of substance",6970065625,[0,-1,0,0,0,0,0],"nmol/h","si",true,null,null,1,false,false,1,"nmol/24hr; nmol/24 hr; nanomoles per 24 hours; nmol/day; nanomoles per day; nmol per day; nanomole/day; nanomol/day","LOINC","SRat","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"nanomole per day","nmol/d","NMOL/D","amount of substance",6970065625,[0,-1,0,0,0,0,0],"nmol/d","si",true,null,null,1,false,false,1,"nmol/day; nanomoles per day; nmol per day; nanomole/day; nanomol/day; nmol/24hr; nmol/24 hr; nanomoles per 24 hours; ","LOINC","SRat","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"nanomole per deciliter","nmol/dL","NMOL/DL","amount of substance",6022136700000000000,[-3,0,0,0,0,0,0],"nmol/dL","si",true,null,null,1,false,false,1,"nmol per dL; nanomoles per deciliter; nanomole per decilitre; nanomoles per decilitre; nanomole/deciliter; nanomole/decilitre; nanomol/deciliter; nanomol/decilitre","LOINC","SCnc","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"nanomole per gram","nmol/g","NMOL/G","amount of substance",602213670000000,[0,0,-1,0,0,0,0],"nmol/g","si",true,null,null,1,false,false,1,"nmol per gram; nanomoles per gram; nanomole/gram","LOINC","SCnt","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"nanomole per hour per liter","nmol/h/L","(NMOL/HR)/L","amount of substance",167281575000000,[-3,-1,0,0,0,0,0],"(nmol/h)/L","si",true,null,null,1,false,false,1,"nmol/hrs/L; nmol per hrs per L; nanomoles per hours per liter; litre; enzymatic activity per volume; enzyme activities","LOINC","CCnc","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"nanomole per liter","nmol/L","NMOL/L","amount of substance",602213670000000000,[-3,0,0,0,0,0,0],"nmol/L","si",true,null,null,1,false,false,1,"nmol per L; nanomoles per liter; litre","LOINC","SCnc","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"nanomole per milligram","nmol/mg","NMOL/MG","amount of substance",602213670000000000,[0,0,-1,0,0,0,0],"nmol/mg","si",true,null,null,1,false,false,1,"nmol per mg; nanomoles per milligram","LOINC","SCnt","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"nanomole per milligram per hour","nmol/mg/h","(NMOL/MG)/HR","amount of substance",167281575000000,[0,-1,-1,0,0,0,0],"(nmol/mg)/h","si",true,null,null,1,false,false,1,"nmol/mg/hr; nmol per mg per hr; nanomoles per milligrams per hour","LOINC","SCntRat","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"nanomole per milligram of protein","nmol/mg{prot}","NMOL/MG","amount of substance",602213670000000000,[0,0,-1,0,0,0,0],"nmol/mg","si",true,null,null,1,false,false,1,"nanomoles; nmol/mg prot; nmol per mg prot","LOINC","Ratio; CCnt","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"nanomole per minute","nmol/min","NMOL/MIN","amount of substance",10036894500000,[0,-1,0,0,0,0,0],"nmol/min","si",true,null,null,1,false,false,1,"nmol per min; nanomoles per minute; milli enzyme units; enzyme activity per volume; enzymatic activity","LOINC","CCnc","Clinical","unit for the enzyme unit U = umol/min. nmol/min = mU (milli enzyme unit)","10*23","10*23","6.0221367",6.0221367,false],[false,"nanomole per minute per milliliter","nmol/min/mL","(NMOL/MIN)/ML","amount of substance",10036894500000000000,[-3,-1,0,0,0,0,0],"(nmol/min)/mL","si",true,null,null,1,false,false,1,"nmol per min per mL; nanomoles per minutes per milliliter; millilitre; milli enzyme units per volume; enzyme activity; enzymatic activity","LOINC","CCnc","Clinical","unit for the enzyme unit U = umol/min. nmol/mL/min = mU/mL","10*23","10*23","6.0221367",6.0221367,false],[false,"nanomole per milliliter","nmol/mL","NMOL/ML","amount of substance",602213670000000000000,[-3,0,0,0,0,0,0],"nmol/mL","si",true,null,null,1,false,false,1,"nmol per mL; nanomoles per milliliter; millilitre","LOINC","SCnc","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"nanomole per milliliter per hour","nmol/mL/h","(NMOL/ML)/HR","amount of substance",167281575000000000,[-3,-1,0,0,0,0,0],"(nmol/mL)/h","si",true,null,null,1,false,false,1,"nmol/mL/hr; nmol per mL per hr; nanomoles per milliliters per hour; millilitres; milli enzyme units per volume; enzyme activity; enzymatic activity","LOINC","CCnc","Clinical","unit for the enzyme unit U = umol/min.","10*23","10*23","6.0221367",6.0221367,false],[false,"nanomole per milliliter per minute","nmol/mL/min","(NMOL/ML)/MIN","amount of substance",10036894500000000000,[-3,-1,0,0,0,0,0],"(nmol/mL)/min","si",true,null,null,1,false,false,1,"nmol per mL per min; nanomoles per milliliters per min; millilitres; milli enzyme units per volume; enzyme activity; enzymatic activity","LOINC","CCnc","Clinical","unit for the enzyme unit U = umol/min. nmol/mL/min = mU/mL","10*23","10*23","6.0221367",6.0221367,false],[false,"nanomole per millimole","nmol/mmol","NMOL/MMOL","amount of substance",0.000001,[0,0,0,0,0,0,0],"nmol/mmol","si",true,null,null,1,false,false,0,"nmol per mmol; nanomoles per millimole","LOINC","SRto","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"nanomole per millimole of creatinine","nmol/mmol{creat}","NMOL/MMOL","amount of substance",0.000001,[0,0,0,0,0,0,0],"nmol/mmol","si",true,null,null,1,false,false,0,"nanomoles","LOINC","SRto","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"nanomole per mole","nmol/mol","NMOL/MOL","amount of substance",1e-9,[0,0,0,0,0,0,0],"nmol/mol","si",true,null,null,1,false,false,0,"nmol per mole; nanomoles","LOINC","SRto","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"nanomole per nanomole","nmol/nmol","NMOL/NMOL","amount of substance",1,[0,0,0,0,0,0,0],"nmol/nmol","si",true,null,null,1,false,false,0,"nmol per nmol; nanomoles","LOINC","SRto","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"nanomole per second","nmol/s","NMOL/S","amount of substance",602213670000000,[0,-1,0,0,0,0,0],"nmol/s","si",true,null,null,1,false,false,1,"nmol/sec; nmol per sec; nanomoles per sercond; milli enzyme units; enzyme activity; enzymatic activity","LOINC","CCnc","Clinical","unit for the enzyme unit U = umol/min.","10*23","10*23","6.0221367",6.0221367,false],[false,"nanomole per second per liter","nmol/s/L","(NMOL/S)/L","amount of substance",602213670000000000,[-3,-1,0,0,0,0,0],"(nmol/s)/L","si",true,null,null,1,false,false,1,"nmol/sec/L; nmol per s per L; nmol per sec per L; nanomoles per seconds per liter; litre; milli enzyme units per volume; enzyme activity; enzymatic activity","LOINC","CCnc","Clinical","unit for the enzyme unit U = umol/min.","10*23","10*23","6.0221367",6.0221367,false],[false,"nanosecond","ns","NS","time",1e-9,[0,1,0,0,0,0,0],"ns",null,false,"T",null,1,false,false,0,"nanoseconds","LOINC","Time","Clinical","",null,null,null,null,false],[false,"nanoenzyme unit per milliliter","nU/mL","NU/ML","catalytic activity",10036894500000,[-3,-1,0,0,0,0,0],"nU/mL","chemical",true,null,null,1,false,false,1,"nU per mL; nanoenzyme units per milliliter; millilitre; enzymatic activity per volume; enzyme activity","LOINC","CCnc","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min); 1 fU = pmol/min","umol/min","UMOL/MIN","1",1,false],[false,"Ohm meter","Ohm.m","OHM.M","electric resistance",1000,[3,-1,1,0,0,-2,0],"\u03a9.m","si",true,null,null,1,false,false,0,"electric resistivity; meters; metres","LOINC","","Clinical","unit of electric resistivity","V/A","V/A","1",1,false],[false,"osmole per kilogram","osm/kg","OSM/KG","amount of substance (dissolved particles)",602213670000000000000,[0,0,-1,0,0,0,0],"osm/kg","chemical",true,null,null,1,false,false,1,"osm per kg; osmoles per kilogram; osmols","LOINC","Osmol","Clinical","","mol","MOL","1",1,false],[false,"osmole per liter","osm/L","OSM/L","amount of substance (dissolved particles)",6.0221366999999994e+26,[-3,0,0,0,0,0,0],"osm/L","chemical",true,null,null,1,false,false,1,"osm per L; osmoles per liter; litre; osmols","LOINC","Osmol","Clinical","","mol","MOL","1",1,false],[false,"picoampere","pA","PA","electric current",1e-12,[0,-1,0,0,0,1,0],"pA","si",true,null,null,1,false,false,0,"picoamperes","LOINC","","Clinical","equal to 10^-12 amperes","C/s","C/S","1",1,false],[false,"picogram","pg","PG","mass",1e-12,[0,0,1,0,0,0,0],"pg",null,false,"M",null,1,false,false,0,"picograms","LOINC","Mass; EntMass","Clinical","",null,null,null,null,false],[false,"picogram per deciliter","pg/dL","PG/DL","mass",9.999999999999999e-9,[-3,0,1,0,0,0,0],"pg/dL",null,false,"M",null,1,false,false,0,"pg per dL; picograms; decilitre","LOINC","MCnc","Clinical","",null,null,null,null,false],[false,"picogram per liter","pg/L","PG/L","mass",1e-9,[-3,0,1,0,0,0,0],"pg/L",null,false,"M",null,1,false,false,0,"pg per L; picograms; litre","LOINC","MCnc","Clinical","",null,null,null,null,false],[false,"picogram per milligram","pg/mg","PG/MG","mass",1e-9,[0,0,0,0,0,0,0],"pg/mg",null,false,"M",null,1,false,false,0,"pg per mg; picograms","LOINC","MCnt","Clinical","",null,null,null,null,false],[false,"picogram per milliliter","pg/mL","PG/ML","mass",0.000001,[-3,0,1,0,0,0,0],"pg/mL",null,false,"M",null,1,false,false,0,"pg per mL; picograms per milliliter; millilitre","LOINC","MCnc","Clinical","",null,null,null,null,false],[false,"picogram per millimeter","pg/mm","PG/MM","mass",1e-9,[-1,0,1,0,0,0,0],"pg/mm",null,false,"M",null,1,false,false,0,"pg per mm; picogram/millimeter; picogram/millimetre; picograms per millimeter; millimetre","LOINC","Lineic Mass","Clinical","",null,null,null,null,false],[false,"picokatal","pkat","PKAT","catalytic activity",602213670000,[0,-1,0,0,0,0,0],"pkat","chemical",true,null,null,1,false,false,1,"pkats; picokatals","LOINC","CAct","Clinical","kat is a unit of catalytic activity with base units = mol/s. Rarely used because its units are too large to practically express catalytic activity. See enzyme unit [U] which is the standard unit for catalytic activity.","mol/s","MOL/S","1",1,false],[false,"picoliter","pL","PL","volume",1e-15,[3,0,0,0,0,0,0],"pL","iso1000",true,null,null,1,false,false,0,"picoliters; picolitres","LOINC","Vol","Clinical","","l",null,"1",1,false],[false,"picometer","pm","PM","length",1e-12,[1,0,0,0,0,0,0],"pm",null,false,"L",null,1,false,false,0,"picometers; picometres","LOINC","Len","Clinical","",null,null,null,null,false],[false,"picomole","pmol","PMOL","amount of substance",602213670000,[0,0,0,0,0,0,0],"pmol","si",true,null,null,1,false,false,1,"picomoles; pmols","LOINC","Sub","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"picomole per 24 hour","pmol/(24.h)","PMOL/HR","amount of substance",6970065.625,[0,-1,0,0,0,0,0],"pmol/h","si",true,null,null,1,false,false,1,"pmol/24hrs; pmol/24 hrs; pmol per 24 hrs; 24hrs; days; dy; picomoles per 24 hours","LOINC","SRat","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"picomole per day","pmol/d","PMOL/D","amount of substance",6970065.625,[0,-1,0,0,0,0,0],"pmol/d","si",true,null,null,1,false,false,1,"pmol/dy; pmol per day; 24 hours; 24hrs; 24 hrs; picomoles","LOINC","SRat","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"picomole per deciliter","pmol/dL","PMOL/DL","amount of substance",6022136700000000,[-3,0,0,0,0,0,0],"pmol/dL","si",true,null,null,1,false,false,1,"pmol per dL; picomoles per deciliter; decilitre","LOINC","SCnc","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"picomole per gram","pmol/g","PMOL/G","amount of substance",602213670000,[0,0,-1,0,0,0,0],"pmol/g","si",true,null,null,1,false,false,1,"pmol per gm; picomoles per gram; picomole/gram","LOINC","SCnt","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"picomole per hour per milliliter ","pmol/h/mL","(PMOL/HR)/ML","amount of substance",167281575000000,[-3,-1,0,0,0,0,0],"(pmol/h)/mL","si",true,null,null,1,false,false,1,"pmol/hrs/mL; pmol per hrs per mL; picomoles per hour per milliliter; millilitre; micro enzyme units per volume; enzymatic activity; enzyme activity","LOINC","CCnc","Clinical","unit for the enzyme unit U = umol/min. ","10*23","10*23","6.0221367",6.0221367,false],[false,"picomole per liter","pmol/L","PMOL/L","amount of substance",602213670000000,[-3,0,0,0,0,0,0],"pmol/L","si",true,null,null,1,false,false,1,"picomole/liter; pmol per L; picomoles; litre","LOINC","SCnc","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"picomole per minute","pmol/min","PMOL/MIN","amount of substance",10036894500,[0,-1,0,0,0,0,0],"pmol/min","si",true,null,null,1,false,false,1,"picomole/minute; pmol per min; picomoles per minute; micro enzyme units; enzymatic activity; enzyme activity","LOINC","CCnc","Clinical","unit for the enzyme unit U = umol/min. pmol/min = uU (micro enzyme unit)","10*23","10*23","6.0221367",6.0221367,false],[false,"picomole per milliliter","pmol/mL","PMOL/ML","amount of substance",602213670000000000,[-3,0,0,0,0,0,0],"pmol/mL","si",true,null,null,1,false,false,1,"picomole/milliliter; picomole/millilitre; pmol per mL; picomoles; millilitre; picomols; pmols","LOINC","SCnc","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"picomole per micromole","pmol/umol","PMOL/UMOL","amount of substance",0.000001,[0,0,0,0,0,0,0],"pmol/\u03bcmol","si",true,null,null,1,false,false,0,"pmol/mcgmol; picomole/micromole; pmol per umol; pmol per mcgmol; picomoles ","LOINC","SRto","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"picosecond","ps","PS","time",1e-12,[0,1,0,0,0,0,0],"ps",null,false,"T",null,1,false,false,0,"picoseconds; psec","LOINC","Time","Clinical","",null,null,null,null,false],[false,"picotesla","pT","PT","magnetic flux density",1e-9,[0,-1,1,0,0,-1,0],"pT","si",true,null,null,1,false,false,0,"picoteslas","LOINC","","Clinical","SI unit of magnetic field strength for magnetic field B","Wb/m2","WB/M2","1",1,false],[false,"enzyme unit per 12 hour","U/(12.h)","U/HR","catalytic activity",232335520833.33334,[0,-2,0,0,0,0,0],"U/h","chemical",true,null,null,1,false,false,1,"U/12hrs; U/ 12hrs; U per 12 hrs; 12hrs; enzyme units per 12 hours; enzyme activity; enzymatic activity per time; umol per min per 12 hours; micromoles per minute per 12 hours; umol/min/12hr","LOINC","CRat","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min)","umol/min","UMOL/MIN","1",1,false],[false,"enzyme unit per 2 hour","U/(2.h)","U/HR","catalytic activity",1394013125000,[0,-2,0,0,0,0,0],"U/h","chemical",true,null,null,1,false,false,1,"U/2hrs; U/ 2hrs; U per 2 hrs; 2hrs; enzyme units per 2 hours; enzyme activity; enzymatic activity per time; umol per minute per 2 hours; micromoles per minute; umol/min/2hr; umol per min per 2hr","LOINC","CRat","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min)","umol/min","UMOL/MIN","1",1,false],[false,"enzyme unit per 24 hour","U/(24.h)","U/HR","catalytic activity",116167760416.66667,[0,-2,0,0,0,0,0],"U/h","chemical",true,null,null,1,false,false,1,"U/24hrs; U/ 24hrs; U per 24 hrs; 24hrs; enzyme units per 24 hours; enzyme activity; enzymatic activity per time; micromoles per minute per 24 hours; umol/min/24hr; umol per min per 24hr","LOINC","CRat","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min)","umol/min","UMOL/MIN","1",1,false],[false,"enzyme unit per 10","U/10","U","catalytic activity",1003689450000000,[0,-1,0,0,0,0,0],"U","chemical",true,null,null,1,false,false,1,"enzyme unit/10; U per 10; enzyme units per 10; enzymatic activity; enzyme activity; micromoles per minute; umol/min/10","LOINC","CCnc","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min)","umol/min","UMOL/MIN","1",1,false],[false,"enzyme unit per 10 billion","U/10*10","U/(10*10)","catalytic activity",1003689.45,[0,-1,0,0,0,0,0],"U/(1010)","chemical",true,null,null,1,false,false,1,"U per 10*10; enzyme units per 10*10; U per 10 billion; enzyme units; enzymatic activity; micromoles per minute per 10 billion; umol/min/10*10","LOINC","CCnc","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min)","umol/min","UMOL/MIN","1",1,false],[false,"enzyme unit per trillion","U/10*12","U/(10*12)","catalytic activity",10036.8945,[0,-1,0,0,0,0,0],"U/(1012)","chemical",true,null,null,1,false,false,1,"enzyme unit/10*12; U per 10*12; enzyme units per 10*12; enzyme units per trillion; enzymatic activity; micromoles per minute per trillion; umol/min/10*12; umol per min per 10*12","LOINC","CCnc","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min)","umol/min","UMOL/MIN","1",1,false],[false,"enzyme unit per million","U/10*6","U/(10*6)","catalytic activity",10036894500,[0,-1,0,0,0,0,0],"U/(106)","chemical",true,null,null,1,false,false,1,"enzyme unit/10*6; U per 10*6; enzyme units per 10*6; enzyme units; enzymatic activity per volume; micromoles per minute per million; umol/min/10*6; umol per min per 10*6","LOINC","CCnc","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min)","umol/min","UMOL/MIN","1",1,false],[false,"enzyme unit per billion","U/10*9","U/(10*9)","catalytic activity",10036894.5,[0,-1,0,0,0,0,0],"U/(109)","chemical",true,null,null,1,false,false,1,"enzyme unit/10*9; U per 10*9; enzyme units per 10*9; enzymatic activity per volume; micromoles per minute per billion; umol/min/10*9; umol per min per 10*9","LOINC","CCnc","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min)","umol/min","UMOL/MIN","1",1,false],[false,"enzyme unit per day","U/d","U/D","catalytic activity",116167760416.66667,[0,-2,0,0,0,0,0],"U/d","chemical",true,null,null,1,false,false,1,"U/dy; enzyme units per day; enzyme units; enzyme activity; enzymatic activity per time; micromoles per minute per day; umol/min/day; umol per min per day","LOINC","CRat","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min)","umol/min","UMOL/MIN","1",1,false],[false,"enzyme unit per deciliter","U/dL","U/DL","catalytic activity",100368945000000000000,[-3,-1,0,0,0,0,0],"U/dL","chemical",true,null,null,1,false,false,1,"U per dL; enzyme units per deciliter; decilitre; micromoles per minute per deciliter; umol/min/dL; umol per min per dL","LOINC","CCnc","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min)","umol/min","UMOL/MIN","1",1,false],[false,"enzyme unit per gram","U/g","U/G","catalytic activity",10036894500000000,[0,-1,-1,0,0,0,0],"U/g","chemical",true,null,null,1,false,false,1,"U/gm; U per gm; enzyme units per gram; micromoles per minute per gram; umol/min/g; umol per min per g","LOINC","CCnt","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min)","umol/min","UMOL/MIN","1",1,false],[false,"enzyme unit per hour","U/h","U/HR","catalytic activity",2788026250000,[0,-2,0,0,0,0,0],"U/h","chemical",true,null,null,1,false,false,1,"U/hr; U per hr; enzyme units per hour; micromoles per minute per hour; umol/min/hr; umol per min per hr","LOINC","CRat","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min)","umol/min","UMOL/MIN","1",1,false],[false,"enzyme unit per liter","U/L","U/L","catalytic activity",10036894500000000000,[-3,-1,0,0,0,0,0],"U/L","chemical",true,null,null,1,false,false,1,"enzyme unit/liter; enzyme unit/litre; U per L; enzyme units per liter; enzyme unit per litre; micromoles per minute per liter; umol/min/L; umol per min per L","LOINC","CCnc","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min)","umol/min","UMOL/MIN","1",1,false],[false,"enzyme unit per minute","U/min","U/MIN","catalytic activity",167281575000000,[0,-2,0,0,0,0,0],"U/min","chemical",true,null,null,1,false,false,1,"enzyme unit/minute; U per min; enzyme units; umol/min/min; micromoles per minute per minute; micromoles per min per min; umol","LOINC","CRat","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min)","umol/min","UMOL/MIN","1",1,false],[false,"enzyme unit per milliliter","U/mL","U/ML","catalytic activity",1.00368945e+22,[-3,-1,0,0,0,0,0],"U/mL","chemical",true,null,null,1,false,false,1,"U per mL; enzyme units per milliliter; millilitre; micromoles per minute per milliliter; umol/min/mL; umol per min per mL","LOINC","CCnc","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min)","umol/min","UMOL/MIN","1",1,false],[false,"enzyme unit per second","U/s","U/S","catalytic activity",10036894500000000,[0,-2,0,0,0,0,0],"U/s","chemical",true,null,null,1,false,false,1,"U/sec; U per second; enzyme units per second; micromoles per minute per second; umol/min/sec; umol per min per sec","LOINC","CRat","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min)","umol/min","UMOL/MIN","1",1,false],[false,"micro international unit","u[IU]","U[IU]","arbitrary",0.000001,[0,0,0,0,0,0,0],"\u03bci.U.","chemical",true,null,null,1,false,true,0,"uIU; u IU; microinternational units","LOINC","Arb","Clinical","International units (IU) are analyte and reference specimen specific arbitrary units (held at WHO)","[iU]","[IU]","1",1,false],[false,"micro international unit per liter","u[IU]/L","U[IU]/L","arbitrary",0.001,[-3,0,0,0,0,0,0],"(\u03bci.U.)/L","chemical",true,null,null,1,false,true,0,"uIU/L; u IU/L; uIU per L; microinternational units per liter; litre; ","LOINC","ACnc","Clinical","International units (IU) are analyte and reference specimen specific arbitrary units (held at WHO)","[iU]","[IU]","1",1,false],[false,"micro international unit per milliliter","u[IU]/mL","U[IU]/ML","arbitrary",1,[-3,0,0,0,0,0,0],"(\u03bci.U.)/mL","chemical",true,null,null,1,false,true,0,"uIU/mL; u IU/mL; uIU per mL; microinternational units per milliliter; millilitre","LOINC","ACnc","Clinical","International units (IU) are analyte and reference specimen specific arbitrary units (held at WHO)","[iU]","[IU]","1",1,false],[false,"microequivalent","ueq","UEQ","amount of substance",602213670000000000,[0,0,0,0,0,0,0],"\u03bceq","chemical",true,null,null,1,false,false,1,"microequivalents; 10^-6 equivalents; 10-6 equivalents","LOINC","Sub","Clinical","","mol","MOL","1",1,false],[false,"microequivalent per liter","ueq/L","UEQ/L","amount of substance",602213670000000000000,[-3,0,0,0,0,0,0],"\u03bceq/L","chemical",true,null,null,1,false,false,1,"ueq per liter; litre; microequivalents","LOINC","MCnc","Clinical","","mol","MOL","1",1,false],[false,"microequivalent per milliliter","ueq/mL","UEQ/ML","amount of substance",6.0221367000000003e+23,[-3,0,0,0,0,0,0],"\u03bceq/mL","chemical",true,null,null,1,false,false,1,"ueq per milliliter; millilitre; microequivalents","LOINC","MCnc","Clinical","","mol","MOL","1",1,false],[false,"microgram","ug","UG","mass",0.000001,[0,0,1,0,0,0,0],"\u03bcg",null,false,"M",null,1,false,false,0,"mcg; micrograms; 10^-6 grams; 10-6 grams","LOINC","Mass","Clinical","",null,null,null,null,false],[false,"microgram per 100 gram","ug/(100.g)","UG/G","mass",1e-8,[0,0,0,0,0,0,0],"\u03bcg/g",null,false,"M",null,1,false,false,0,"ug/100gm; ug/100 gm; mcg; ug per 100g; 100 gm; mcg per 100g; micrograms per 100 grams","LOINC","MCnt","Clinical","",null,null,null,null,false],[false,"microgram per 24 hour","ug/(24.h)","UG/HR","mass",1.1574074074074074e-11,[0,-1,1,0,0,0,0],"\u03bcg/h",null,false,"M",null,1,false,false,0,"ug/24hrs; ug/24 hrs; mcg/24hrs; ug per 24hrs; mcg per 24hrs; 24 hrs; micrograms per 24 hours","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"microgram per 8 hour","ug/(8.h)","UG/HR","mass",3.472222222222222e-11,[0,-1,1,0,0,0,0],"\u03bcg/h",null,false,"M",null,1,false,false,0,"ug/8hrs; ug/8 hrs; mcg/8hrs; ug per 8hrs; mcg per 8hrs; 8 hrs; micrograms per 8 hours; shift","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"microgram per square foot (international)","ug/[sft_i]","UG/[SFT_I]","mass",0.000010763910416709721,[-2,0,1,0,0,0,0],"\u03bcg",null,false,"M",null,1,false,false,0,"ug/sft; ug/ft2; ug/ft^2; ug/sq. ft; micrograms; sq. foot; foot squared","LOINC","ArMass","Clinical","",null,null,null,null,false],[false,"microgram per day","ug/d","UG/D","mass",1.1574074074074074e-11,[0,-1,1,0,0,0,0],"\u03bcg/d",null,false,"M",null,1,false,false,0,"ug/dy; mcg/dy; ug per day; mcg; micrograms per day","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"microgram per deciliter","ug/dL","UG/DL","mass",0.009999999999999998,[-3,0,1,0,0,0,0],"\u03bcg/dL",null,false,"M",null,1,false,false,0,"ug per dL; mcg/dl; mcg per dl; micrograms per deciliter; decilitre","LOINC","MCnc","Clinical","",null,null,null,null,false],[false,"microgram per gram","ug/g","UG/G","mass",0.000001,[0,0,0,0,0,0,0],"\u03bcg/g",null,false,"M",null,1,false,false,0,"ug per gm; mcg/gm; mcg per g; micrograms per gram","LOINC","MCnt","Clinical","",null,null,null,null,false],[false,"microgram per hour","ug/h","UG/HR","mass",2.7777777777777777e-10,[0,-1,1,0,0,0,0],"\u03bcg/h",null,false,"M",null,1,false,false,0,"ug/hr; mcg/hr; mcg per hr; ug per hr; ug per hour; micrograms","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"microgram per kilogram","ug/kg","UG/KG","mass",9.999999999999999e-10,[0,0,0,0,0,0,0],"\u03bcg/kg",null,false,"M",null,1,false,false,0,"ug per kg; mcg/kg; mcg per kg; micrograms per kilogram","LOINC","MCnt","Clinical","",null,null,null,null,false],[false,"microgram per kilogram per 8 hour","ug/kg/(8.h)","(UG/KG)/HR","mass",3.472222222222222e-14,[0,-1,0,0,0,0,0],"(\u03bcg/kg)/h",null,false,"M",null,1,false,false,0,"ug/kg/8hrs; mcg/kg/8hrs; ug/kg/8 hrs; mcg/kg/8 hrs; ug per kg per 8hrs; 8 hrs; mcg per kg per 8hrs; micrograms per kilograms per 8 hours; shift","LOINC","","Clinical","unit used to measure mass dose rate per patient body mass",null,null,null,null,false],[false,"microgram per kilogram per day","ug/kg/d","(UG/KG)/D","mass",1.1574074074074072e-14,[0,-1,0,0,0,0,0],"(\u03bcg/kg)/d",null,false,"M",null,1,false,false,0,"ug/(kg.d); ug/kg/dy; mcg/kg/day; ug per kg per dy; 24 hours; 24hrs; mcg; kilograms; microgram per kilogram and day","LOINC","","Clinical","unit used to measure mass dose rate per patient body mass",null,null,null,null,false],[false,"microgram per kilogram per hour","ug/kg/h","(UG/KG)/HR","mass",2.7777777777777774e-13,[0,-1,0,0,0,0,0],"(\u03bcg/kg)/h",null,false,"M",null,1,false,false,0,"ug/(kg.h); ug/kg/hr; mcg/kg/hr; ug per kg per hr; mcg per kg per hr; kilograms","LOINC","","Clinical","unit used to measure mass dose rate per patient body mass",null,null,null,null,false],[false,"microgram per kilogram per minute","ug/kg/min","(UG/KG)/MIN","mass",1.6666666666666664e-11,[0,-1,0,0,0,0,0],"(\u03bcg/kg)/min",null,false,"M",null,1,false,false,0,"ug/kg/min; ug/kg/min; mcg/kg/min; ug per kg per min; mcg; micrograms per kilograms per minute ","LOINC","","Clinical","unit used to measure mass dose rate per patient body mass",null,null,null,null,false],[false,"microgram per liter","ug/L","UG/L","mass",0.001,[-3,0,1,0,0,0,0],"\u03bcg/L",null,false,"M",null,1,false,false,0,"mcg/L; ug per L; mcg; micrograms per liter; litre ","LOINC","MCnc","Clinical","",null,null,null,null,false],[false,"microgram per liter per 24 hour","ug/L/(24.h)","(UG/L)/HR","mass",1.1574074074074074e-8,[-3,-1,1,0,0,0,0],"(\u03bcg/L)/h",null,false,"M",null,1,false,false,0,"ug/L/24hrs; ug/L/24 hrs; mcg/L/24hrs; ug per L per 24hrs; 24 hrs; day; dy mcg; micrograms per liters per 24 hours; litres","LOINC","","Clinical","unit used to measure mass dose rate per patient body mass",null,null,null,null,false],[false,"microgram per square meter","ug/m2","UG/M2","mass",0.000001,[-2,0,1,0,0,0,0],"\u03bcg/(m2)",null,false,"M",null,1,false,false,0,"ug/m^2; ug/sq. m; mcg/m2; mcg/m^2; mcg/sq. m; ug per m2; m^2; sq. meter; mcg; micrograms per square meter; meter squared; metre","LOINC","ArMass","Clinical","unit used to measure mass dose per patient body surface area",null,null,null,null,false],[false,"microgram per cubic meter","ug/m3","UG/M3","mass",0.000001,[-3,0,1,0,0,0,0],"\u03bcg/(m3)",null,false,"M",null,1,false,false,0,"ug/m^3; ug/cu. m; mcg/m3; mcg/m^3; mcg/cu. m; ug per m3; ug per m^3; ug per cu. m; mcg; micrograms per cubic meter; meter cubed; metre","LOINC","MCnc","Clinical","",null,null,null,null,false],[false,"microgram per milligram","ug/mg","UG/MG","mass",0.001,[0,0,0,0,0,0,0],"\u03bcg/mg",null,false,"M",null,1,false,false,0,"ug per mg; mcg/mg; mcg per mg; micromilligrams per milligram","LOINC","MCnt","Clinical","",null,null,null,null,false],[false,"microgram per minute","ug/min","UG/MIN","mass",1.6666666666666667e-8,[0,-1,1,0,0,0,0],"\u03bcg/min",null,false,"M",null,1,false,false,0,"ug per min; mcg/min; mcg per min; microminutes per minute","LOINC","MRat","Clinical","",null,null,null,null,false],[false,"microgram per milliliter","ug/mL","UG/ML","mass",1,[-3,0,1,0,0,0,0],"\u03bcg/mL",null,false,"M",null,1,false,false,0,"ug per mL; mcg/mL; mcg per mL; micrograms per milliliter; millilitre","LOINC","MCnc","Clinical","",null,null,null,null,false],[false,"microgram per millimole","ug/mmol","UG/MMOL","mass",1.660540186674939e-27,[0,0,1,0,0,0,0],"\u03bcg/mmol",null,false,"M",null,1,false,false,-1,"ug per mmol; mcg/mmol; mcg per mmol; micrograms per millimole","LOINC","Ratio","Clinical","",null,null,null,null,false],[false,"microgram per nanogram","ug/ng","UG/NG","mass",999.9999999999999,[0,0,0,0,0,0,0],"\u03bcg/ng",null,false,"M",null,1,false,false,0,"ug per ng; mcg/ng; mcg per ng; micrograms per nanogram","LOINC","MCnt","Clinical","",null,null,null,null,false],[false,"microkatal","ukat","UKAT","catalytic activity",602213670000000000,[0,-1,0,0,0,0,0],"\u03bckat","chemical",true,null,null,1,false,false,1,"microkatals; ukats","LOINC","CAct","Clinical","kat is a unit of catalytic activity with base units = mol/s. Rarely used because its units are too large to practically express catalytic activity. See enzyme unit [U] which is the standard unit for catalytic activity.","mol/s","MOL/S","1",1,false],[false,"microliter","uL","UL","volume",1e-9,[3,0,0,0,0,0,0],"\u03bcL","iso1000",true,null,null,1,false,false,0,"microliters; microlitres; mcl","LOINC","Vol","Clinical","","l",null,"1",1,false],[false,"microliter per 2 hour","uL/(2.h)","UL/HR","volume",1.388888888888889e-13,[3,-1,0,0,0,0,0],"\u03bcL/h","iso1000",true,null,null,1,false,false,0,"uL/2hrs; uL/2 hrs; mcg/2hr; mcg per 2hr; uL per 2hr; uL per 2 hrs; microliters per 2 hours; microlitres ","LOINC","VRat","Clinical","","l",null,"1",1,false],[false,"microliter per hour","uL/h","UL/HR","volume",2.777777777777778e-13,[3,-1,0,0,0,0,0],"\u03bcL/h","iso1000",true,null,null,1,false,false,0,"uL/hr; mcg/hr; mcg per hr; uL per hr; microliters per hour; microlitres","LOINC","VRat","Clinical","","l",null,"1",1,false],[false,"micrometer","um","UM","length",0.000001,[1,0,0,0,0,0,0],"\u03bcm",null,false,"L",null,1,false,false,0,"micrometers; micrometres; \u03bcm; microns","LOINC","Len","Clinical","Unit of length that is usually used in tests related to the eye",null,null,null,null,false],[false,"microns per second","um/s","UM/S","length",0.000001,[1,-1,0,0,0,0,0],"\u03bcm/s",null,false,"L",null,1,false,false,0,"um/sec; micron/second; microns/second; um per sec; micrometers per second; micrometres","LOINC","Vel","Clinical","",null,null,null,null,false],[false,"micromole","umol","UMOL","amount of substance",602213670000000000,[0,0,0,0,0,0,0],"\u03bcmol","si",true,null,null,1,false,false,1,"micromoles; umols","LOINC","Sub","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"micromole per 2 hour","umol/(2.h)","UMOL/HR","amount of substance",83640787500000,[0,-1,0,0,0,0,0],"\u03bcmol/h","si",true,null,null,1,false,false,1,"umol/2hrs; umol/2 hrs; umol per 2 hrs; 2hrs; micromoles per 2 hours","LOINC","SRat","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"micromole per 24 hour","umol/(24.h)","UMOL/HR","amount of substance",6970065625000,[0,-1,0,0,0,0,0],"\u03bcmol/h","si",true,null,null,1,false,false,1,"umol/24hrs; umol/24 hrs; umol per 24 hrs; per 24hrs; micromoles per 24 hours","LOINC","SRat","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"micromole per 8 hour","umol/(8.h)","UMOL/HR","amount of substance",20910196875000,[0,-1,0,0,0,0,0],"\u03bcmol/h","si",true,null,null,1,false,false,1,"umol/8hr; umol/8 hr; umol per 8 hr; umol per 8hr; umols per 8hr; umol per 8 hours; micromoles per 8 hours; shift","LOINC","SRat","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"micromole per day","umol/d","UMOL/D","amount of substance",6970065625000,[0,-1,0,0,0,0,0],"\u03bcmol/d","si",true,null,null,1,false,false,1,"umol/day; umol per day; umols per day; umol per days; micromoles per days; umol/24hr; umol/24 hr; umol per 24 hr; umol per 24hr; umols per 24hr; umol per 24 hours; micromoles per 24 hours","LOINC","SRat","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"micromole per deciliter","umol/dL","UMOL/DL","amount of substance",6.0221367e+21,[-3,0,0,0,0,0,0],"\u03bcmol/dL","si",true,null,null,1,false,false,1,"micromole/deciliter; micromole/decilitre; umol per dL; micromoles per deciliters; micromole per decilitres","LOINC","SCnc","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"micromole per gram","umol/g","UMOL/G","amount of substance",602213670000000000,[0,0,-1,0,0,0,0],"\u03bcmol/g","si",true,null,null,1,false,false,1,"micromole/gram; umol per g; micromoles per gram","LOINC","SCnt; Ratio","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"micromole per hour","umol/h","UMOL/HR","amount of substance",167281575000000,[0,-1,0,0,0,0,0],"\u03bcmol/h","si",true,null,null,1,false,false,1,"umol/hr; umol per hr; umol per hour; micromoles per hours","LOINC","SRat","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"micromole per kilogram","umol/kg","UMOL/KG","amount of substance",602213670000000,[0,0,-1,0,0,0,0],"\u03bcmol/kg","si",true,null,null,1,false,false,1,"umol per kg; micromoles per kilogram","LOINC","SCnt","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"micromole per liter","umol/L","UMOL/L","amount of substance",602213670000000000000,[-3,0,0,0,0,0,0],"\u03bcmol/L","si",true,null,null,1,false,false,1,"micromole/liter; micromole/litre; umol per liter; micromoles per liter; litre","LOINC","SCnc","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"micromole per liter per hour","umol/L/h","(UMOL/L)/HR","amount of substance",167281575000000000,[-3,-1,0,0,0,0,0],"(\u03bcmol/L)/h","si",true,null,null,1,false,false,1,"umol/liter/hr; umol/litre/hr; umol per L per hr; umol per liter per hour; micromoles per liters per hour; litre","LOINC","CCnc","Clinical","unit for the enzyme unit U = umol/min; umol/L/h is a derived unit of enzyme units","10*23","10*23","6.0221367",6.0221367,false],[false,"micromole per milligram","umol/mg","UMOL/MG","amount of substance",602213670000000000000,[0,0,-1,0,0,0,0],"\u03bcmol/mg","si",true,null,null,1,false,false,1,"micromole/milligram; umol per mg; micromoles per milligram","LOINC","SCnt","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"micromole per minute","umol/min","UMOL/MIN","amount of substance",10036894500000000,[0,-1,0,0,0,0,0],"\u03bcmol/min","si",true,null,null,1,false,false,1,"micromole/minute; umol per min; micromoles per minute; enzyme units","LOINC","CAct","Clinical","unit for the enzyme unit U = umol/min","10*23","10*23","6.0221367",6.0221367,false],[false,"micromole per minute per gram","umol/min/g","(UMOL/MIN)/G","amount of substance",10036894500000000,[0,-1,-1,0,0,0,0],"(\u03bcmol/min)/g","si",true,null,null,1,false,false,1,"umol/min/gm; umol per min per gm; micromoles per minutes per gram; U/g; enzyme units","LOINC","CCnt","Clinical","unit for the enzyme unit U = umol/min. umol/min/g = U/g","10*23","10*23","6.0221367",6.0221367,false],[false,"micromole per minute per liter","umol/min/L","(UMOL/MIN)/L","amount of substance",10036894500000000000,[-3,-1,0,0,0,0,0],"(\u03bcmol/min)/L","si",true,null,null,1,false,false,1,"umol/min/liter; umol/minute/liter; micromoles per minutes per liter; litre; enzyme units; U/L","LOINC","CCnc","Clinical","unit for the enzyme unit U = umol/min. umol/min/L = U/L","10*23","10*23","6.0221367",6.0221367,false],[false,"micromole per milliliter","umol/mL","UMOL/ML","amount of substance",6.0221367000000003e+23,[-3,0,0,0,0,0,0],"\u03bcmol/mL","si",true,null,null,1,false,false,1,"umol per mL; micromoles per milliliter; millilitre","LOINC","SCnc","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"micromole per milliliter per minute","umol/mL/min","(UMOL/ML)/MIN","amount of substance",1.00368945e+22,[-3,-1,0,0,0,0,0],"(\u03bcmol/mL)/min","si",true,null,null,1,false,false,1,"umol per mL per min; micromoles per milliliters per minute; millilitres","LOINC","CCnc","Clinical","unit for the enzyme unit U = umol/min. umol/mL/min = U/mL","10*23","10*23","6.0221367",6.0221367,false],[false,"micromole per millimole","umol/mmol","UMOL/MMOL","amount of substance",0.001,[0,0,0,0,0,0,0],"\u03bcmol/mmol","si",true,null,null,1,false,false,0,"umol per mmol; micromoles per millimole","LOINC","SRto","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"micromole per mole","umol/mol","UMOL/MOL","amount of substance",0.000001,[0,0,0,0,0,0,0],"\u03bcmol/mol","si",true,null,null,1,false,false,0,"umol per mol; micromoles per mole","LOINC","SRto","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"micromole per micromole","umol/umol","UMOL/UMOL","amount of substance",1,[0,0,0,0,0,0,0],"\u03bcmol/\u03bcmol","si",true,null,null,1,false,false,0,"umol per umol; micromoles per micromole","LOINC","Srto; SFr; EntSRto","Clinical","","10*23","10*23","6.0221367",6.0221367,false],[false,"microOhm","uOhm","UOHM","electric resistance",0.001,[2,-1,1,0,0,-2,0],"\u03bc\u03a9","si",true,null,null,1,false,false,0,"microOhms; \xb5\u03a9","LOINC","","Clinical","unit of electric resistance","V/A","V/A","1",1,false],[false,"microsecond","us","US","time",0.000001,[0,1,0,0,0,0,0],"\u03bcs",null,false,"T",null,1,false,false,0,"microseconds","LOINC","Time","Clinical","",null,null,null,null,false],[false,"micro enzyme unit per gram","uU/g","UU/G","catalytic activity",10036894500,[0,-1,-1,0,0,0,0],"\u03bcU/g","chemical",true,null,null,1,false,false,1,"uU per gm; micro enzyme units per gram; micro enzymatic activity per mass; enzyme activity","LOINC","CCnt","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min); 1 uU = 1pmol/min","umol/min","UMOL/MIN","1",1,false],[false,"micro enzyme unit per liter","uU/L","UU/L","catalytic activity",10036894500000,[-3,-1,0,0,0,0,0],"\u03bcU/L","chemical",true,null,null,1,false,false,1,"uU per L; micro enzyme units per liter; litre; enzymatic activity per volume; enzyme activity ","LOINC","CCnc","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min); 1 uU = 1pmol/min","umol/min","UMOL/MIN","1",1,false],[false,"micro enzyme unit per milliliter","uU/mL","UU/ML","catalytic activity",10036894500000000,[-3,-1,0,0,0,0,0],"\u03bcU/mL","chemical",true,null,null,1,false,false,1,"uU per mL; micro enzyme units per milliliter; millilitre; enzymatic activity per volume; enzyme activity","LOINC","CCnc","Clinical","1 U is the standard enzyme unit which equals 1 micromole substrate catalyzed per minute (1 umol/min); 1 uU = 1pmol/min","umol/min","UMOL/MIN","1",1,false],[false,"microvolt","uV","UV","electric potential",0.001,[2,-2,1,0,0,-1,0],"\u03bcV","si",true,null,null,1,false,false,0,"microvolts","LOINC","Elpot","Clinical","unit of electric potential (voltage)","J/C","J/C","1",1,false]]}}')},82:Se=>{"use strict";Se.exports=JSON.parse('{"name":"fhirpath","version":"3.6.0","description":"A FHIRPath engine","main":"src/fhirpath.js","dependencies":{"@lhncbc/ucum-lhc":"^4.1.3","antlr4":"~4.9.3","commander":"^2.18.0","date-fns":"^1.30.1","js-yaml":"^3.13.1"},"devDependencies":{"@babel/core":"^7.21.4","@babel/eslint-parser":"^7.17.0","@babel/preset-env":"^7.16.11","babel-loader":"^8.2.3","benny":"^3.7.1","bestzip":"^2.2.0","copy-webpack-plugin":"^6.0.3","cypress":"^10.3.0","eslint":"^8.10.0","fhir":"^4.10.3","grunt":"^1.5.2","grunt-cli":"^1.4.3","grunt-text-replace":"^0.4.0","jasmine-spec-reporter":"^4.2.1","jest":"^27.3.1","jit-grunt":"^0.10.0","lodash":"^4.17.21","open":"^8.4.0","rimraf":"^3.0.0","tmp":"0.0.33","webpack":"^5.11.1","webpack-bundle-analyzer":"^4.4.2","webpack-cli":"^4.9.1","xml2js":"^0.5.0","yargs":"^15.1.0"},"engines":{"node":">=8.9.0"},"scripts":{"generateParser":"cd src/parser; rimraf ./generated/*; java -Xmx500M -cp \\"../../antlr-4.9.3-complete.jar:$CLASSPATH\\" org.antlr.v4.Tool -o generated -Dlanguage=JavaScript FHIRPath.g4; grunt updateParserRequirements","build":"cd browser-build && webpack && rimraf fhirpath.zip && bestzip fhirpath.zip LICENSE.md fhirpath.min.js fhirpath.r5.min.js fhirpath.r4.min.js fhirpath.stu3.min.js fhirpath.dstu2.min.js && rimraf LICENSE.md","test:unit":"jest && TZ=America/New_York jest && TZ=Europe/Paris jest","test:unit:debug":"echo \'open chrome chrome://inspect/\' && node --inspect node_modules/.bin/jest --runInBand","build:demo":"npm run build && cd demo && npm run build","test:e2e":"npm run build:demo && cypress run","test":"npm run lint && npm run test:unit && npm run test:e2e && echo \\"For tests specific to IE 11, open browser-build/test/index.html in IE 11, and confirm that the tests on that page pass.\\"","lint":"eslint src/parser/index.js src/*.js converter/","compare-performance":"node ./test/benchmark.js"},"bin":{"fhirpath":"bin/fhirpath"},"repository":"github:HL7/fhirpath.js","license":"MIT"}')},4147:Se=>{"use strict";Se.exports=JSON.parse('{"name":"matchbox","version":"3.5.1","license":"MIT","scripts":{"ng":"ng","start":"ng serve","build":"ng build --configuration production","build-matchbox":"ng build --configuration production --output-path ../matchbox-server/src/main/resources/static","test":"ng test","test-ci":"ng test --no-watch --no-progress --browsers=ChromeHeadlessNoSandbox --code-coverage","lint":"ng lint","e2e":"ng e2e"},"private":true,"dependencies":{"@angular-devkit/build-angular":"^16.1.4","@angular/animations":"^16.1.5","@angular/cdk":"^16.1.5","@angular/common":"^16.1.7","@angular/core":"^16.1.7","@angular/forms":"^16.1.7","@angular/material":"^16.1.6","@angular/platform-browser":"^16.1.7","@angular/platform-browser-dynamic":"^16.1.7","@angular/router":"^16.1.7","@ngx-translate/core":"^15.0.0","@ngx-translate/http-loader":"^8.0.0","ace-builds":"^1.23.4","angular-oauth2-oidc":"^15.0.1","browserify-zlib":"^0.2.0","debug":"^4.3.1","fhir-kit-client":"1.9.2","fhirpath":"^3.6.0","highlightjs-line-numbers.js":"^2.8.0","js-untar":"^2.0.0","ngx-highlightjs":"^10.0.0","pako":"^2.1.0","rxjs":"^7.8.1","tslib":"^2.6.1","zone.js":"^0.13.1"},"devDependencies":{"@angular/cli":"^16.1.6","@angular-eslint/builder":"^16.1.0","@angular-eslint/eslint-plugin":"^16.1.0","@angular-eslint/eslint-plugin-template":"^16.1.0","@angular-eslint/schematics":"^16.1.0","@angular-eslint/template-parser":"^16.1.0","@angular/compiler":"^16.1.7","@angular/compiler-cli":"^16.1.7","@angular/language-service":"^16.1.5","@types/debug":"^4.1.8","@types/jasmine":"^4.3.5","@types/node":"^20.4.5","@types/pako":"^2.0.0","@typescript-eslint/eslint-plugin":"^6.2.0","@typescript-eslint/parser":"^6.2.0","eslint":"^8.45.0","husky":"^8.0.3","jasmine":"^5.1.0","jasmine-core":"^5.1.0","jasmine-spec-reporter":"^7.0.0","json-patch":"^0.7.0","karma":"^6.3.1","karma-chrome-launcher":"^3.2.0","karma-cli":"~2.0.0","karma-coverage-istanbul-reporter":"~3.0.2","karma-jasmine":"^5.1.0","karma-jasmine-html-reporter":"^2.1.0","prettier":"^3.0.0","pretty-quick":"^3.1.3","protractor":"~7.0.0","ts-node":"^10.9.1","tslint":"~6.1.0","typescript":"^5.1.6"},"browser":{"fs":false,"os":false,"path":false,"zlib":false},"husky":{"hooks":{"pre-commit":"pretty-quick --staged"}}}')}},Se=>{Se(Se.s=4913)}]); \ No newline at end of file diff --git a/pom.xml b/pom.xml index c8c056d8fd4..29b6fd7e8df 100644 --- a/pom.xml +++ b/pom.xml @@ -9,7 +9,7 @@ health.matchbox matchbox - 3.5.1 + 3.5.2 pom matchbox An open-source implementation to support testing and implementation of FHIR based solutions and map or