25 lines
276 KiB
JavaScript
25 lines
276 KiB
JavaScript
/*!
|
|
* Tiny Commercial License Key Manager
|
|
*
|
|
* Copyright (c) 2025 Ephox Corporation DBA Tiny Technologies, Inc.
|
|
* Licensed under the Tiny commercial license. See https://www.tiny.cloud/legal/
|
|
*
|
|
* Version: 8.3.0-112
|
|
*/
|
|
/*!
|
|
* This resource uses the code from the following libraries:
|
|
*
|
|
* jose
|
|
* Copyright (c) Filip Skokan.
|
|
* https://github.com/panva/jose
|
|
*
|
|
* x509
|
|
* Copyright (c) Peculiar Ventures.
|
|
* https://github.com/PeculiarVentures/x509
|
|
*
|
|
* protobuf
|
|
* Copyright 2021-2024 Buf Technologies, Inc.
|
|
* https://github.com/bufbuild/protobuf-es/tree/main/packages/protobuf
|
|
*
|
|
*/
|
|
(function(){"use strict";function e(e,t,r,n){var i;var o=arguments.length;var s=o<3?t:n===null?n=Object.getOwnPropertyDescriptor(t,r):n;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function"){s=Reflect.decorate(e,t,r,n)}else{for(var a=e.length-1;a>=0;a--){if(i=e[a]){s=(o<3?i(s):o>3?i(t,r,s):i(t,r))||s}}}if(o>3&&s){Object.defineProperty(t,r,s)}return s}if(typeof SuppressedError=="function"){SuppressedError}const t=e=>t=>(e=>{const t=typeof e;if(e===null){return"null"}else if(t==="object"&&Array.isArray(e)){return"array"}else if(t==="object"&&(r=n=e,(i=String).prototype.isPrototypeOf(r)||n.constructor?.name===i.name)){return"string"}else{return t}var r;var n;var i})(t)===e;const r=t("string");const n=t("object");const i=e=>!(e=>e==null)(e);const o=()=>{};const s=e=>()=>e;const a=e=>e;const c=e=>e();const l=s(false);const u=s(true);class p{tag;value;static singletonNone=new p(false);constructor(e,t){this.tag=e;this.value=t}static some(e){return new p(true,e)}static none(){return p.singletonNone}fold(e,t){if(this.tag){return t(this.value)}else{return e()}}isSome(){return this.tag}isNone(){return!this.tag}map(e){if(this.tag){return p.some(e(this.value))}else{return p.none()}}bind(e){if(this.tag){return e(this.value)}else{return p.none()}}exists(e){return this.tag&&e(this.value)}forall(e){return!this.tag||e(this.value)}filter(e){if(!this.tag||e(this.value)){return this}else{return p.none()}}getOr(e){if(this.tag){return this.value}else{return e}}or(e){if(this.tag){return this}else{return e}}getOrThunk(e){if(this.tag){return this.value}else{return e()}}orThunk(e){if(this.tag){return this}else{return e()}}getOrDie(e){if(this.tag){return this.value}throw new Error(e??"Called getOrDie on None")}static from(e){if(i(e)){return p.some(e)}else{return p.none()}}getOrNull(){if(this.tag){return this.value}else{return null}}getOrUndefined(){return this.value}each(e){if(this.tag){e(this.value)}}toArray(){if(this.tag){return[this.value]}else{return[]}}toString(){if(this.tag){return`some(${this.value})`}else{return"none()"}}}const h=Array.prototype.indexOf;const f=(e,t)=>{for(let r=0,n=e.length;r<n;r++){if(t(e[r],r)){return true}}return false};const d=(e,t)=>{const r=e.length;const n=new Array(r);for(let i=0;i<r;i++){const r=e[i];n[i]=t(r,i)}return n};const y=Object.hasOwnProperty;const m=e=>{const t=t=>t(e);const r=s(e);const n=()=>i;const i={tag:true,inner:e,fold:(t,r)=>r(e),isValue:u,isError:l,map:t=>v.value(t(e)),mapError:n,bind:t,exists:t,forall:t,getOr:r,or:n,getOrThunk:r,orThunk:n,getOrDie:r,each:t=>{t(e)},toOptional:()=>p.some(e)};return i};const g=e=>{const t=()=>r;const r={tag:false,inner:e,fold:(t,r)=>t(e),isValue:l,isError:u,map:t,mapError:t=>v.error(t(e)),bind:t,exists:l,forall:u,getOr:a,or:a,getOrThunk:c,orThunk:c,getOrDie:(n=String(e),()=>{throw new Error(n)}),each:o,toOptional:p.none};var n;return r};const v={value:m,error:g,fromOption:(e,t)=>e.fold(()=>g(t),m)};const b=(e,t)=>e?p.some(t):p.none();const E=e=>{let t;let r=false;return(...n)=>{if(!r){r=true;t=e.apply(null,n)}return t}};const w=(e,t)=>{const{type:r,message:n}=t;e.notificationManager.open({type:r,text:n})};const S=e=>{(e=>{switch(e){case"error":return console.error;case"info":return console.info;case"warn":return console.warn;default:return console.log}})(e.type)(e.message)};const A=(e,t)=>{const{console:r,editor:n}=t;if(i(n)){if(e._skinLoaded){w(e,n)}else{e.on("SkinLoaded",()=>{w(e,n)})}}if(i(r)){S(r)}};const N=e=>parseInt(e,10);const T=(e,t)=>{const r=e-t;if(r===0){return 0}else if(r>0){return 1}else{return-1}};const O=(e,t,r)=>({major:e,minor:t,patch:r});const I=e=>{const t=/([0-9]+)\.([0-9]+)\.([0-9]+)(?:(\-.+)?)/.exec(e);if(t){return O(N(t[1]),N(t[2]),N(t[3]))}else{return O(0,0,0)}};const k=(e,t)=>{const r=T(e.major,t.major);if(r!==0){return r}const n=T(e.minor,t.minor);if(n!==0){return n}const i=T(e.patch,t.patch);if(i!==0){return i}else{return 0}};x=[0];const B=(e,t)=>{const r=k(e,t);n=x;i=r;return h.call(n,i)>-1;var n;var i};var x;const _0x2c56ee=_0x3d8ae1=>I((_0x3c881a=>[_0x3c881a.majorVersion,_0x3c881a.minorVersion].join(".").split(".").slice(0,3).join("."))(_0x3d8ae1));const _0x3040cd=(_0x17658a,_0x3a071b)=>!!_0x17658a&&k(_0x2c56ee(_0x17658a),I(_0x3a071b))===-1;const _0x5f0b94=I("8.3.0");const _0x3c7e1e=`${_0x5f0b94.major}.${_0x5f0b94.minor}.0`;const _0x4736ec=`${_0x5f0b94.major+1}.0.0`;const _0x2a81b9=(_0x2586f6,_0x5aa42e)=>{try{return v.value(_0x2586f6())}catch(_0x507be6){return v.error(_0x5aa42e(_0x507be6))}};const _0x14826e=_0x6830b3=>_0x2a334b=>_0x2a334b instanceof Error?_0x2a334b:new Error(_0x6830b3);new window.TextEncoder;new window.TextDecoder;const _0x3f9df1=_0x164af9=>_0x2a81b9(()=>(_0x9e149c=>{const _0x441d2f=window.atob(_0x9e149c);return Uint8Array.from(_0x441d2f,_0x417aae=>_0x417aae.charCodeAt(0))})(_0x164af9.replace(/-/g,"+").replace(/_/g,"/").replace(/\s/g,"")),_0x14826e("Unable to decode base64 url"));var _0x28ac07;(function(_0x10ae82){_0x10ae82.FormatInvalid="jws_format_invalid";_0x10ae82.DecodeFailure="jws_decode_failure"})(_0x28ac07||={});function F(e,t){return e!==null&&typeof e=="object"&&!!("$typeName"in e)&&typeof e.$typeName=="string"&&(t===undefined||t.typeName===e.$typeName)}var M;function H(){let e=0;let t=0;for(let r=0;r<28;r+=7){let n=this.buf[this.pos++];e|=(n&127)<<r;if(!(n&128)){this.assertBounds();return[e,t]}}let r=this.buf[this.pos++];e|=(r&15)<<28;t=(r&112)>>4;if(!(r&128)){this.assertBounds();return[e,t]}for(let r=3;r<=31;r+=7){let n=this.buf[this.pos++];t|=(n&127)<<r;if(!(n&128)){this.assertBounds();return[e,t]}}throw new Error("invalid varint")}(function(e){e[e.DOUBLE=1]="DOUBLE";e[e.FLOAT=2]="FLOAT";e[e.INT64=3]="INT64";e[e.UINT64=4]="UINT64";e[e.INT32=5]="INT32";e[e.FIXED64=6]="FIXED64";e[e.FIXED32=7]="FIXED32";e[e.BOOL=8]="BOOL";e[e.STRING=9]="STRING";e[e.BYTES=12]="BYTES";e[e.UINT32=13]="UINT32";e[e.SFIXED32=15]="SFIXED32";e[e.SFIXED64=16]="SFIXED64";e[e.SINT32=17]="SINT32";e[e.SINT64=18]="SINT64"})(M||={});const K=4294967296;function $(e){const t=e[0]==="-";if(t){e=e.slice(1)}const r=1e6;let n=0;let i=0;function o(t,o){const s=Number(e.slice(t,o));i*=r;n=n*r+s;if(n>=K){i+=n/K|0;n%=K}}o(-24,-18);o(-18,-12);o(-12,-6);o(-6);if(t){return Y(n,i)}else{return W(n,i)}}function G(e,t){({lo:e,hi:t}=function(e,t){return{lo:e>>>0,hi:t>>>0}}(e,t));if(t<=2097151){return String(K*t+e)}const r=(e>>>24|t<<8)&16777215;const n=t>>16&65535;let i=(e&16777215)+r*6777216+n*6710656;let o=r+n*8147497;let s=n*2;const a=1e7;if(i>=a){o+=Math.floor(i/a);i%=a}if(o>=a){s+=Math.floor(o/a);o%=a}return s.toString()+J(o)+J(i)}function W(e,t){return{lo:e|0,hi:t|0}}function Y(e,t){t=~t;if(e){e=1+~e}else{t+=1}return W(e,t)}const J=e=>{const t=String(e);return"0000000".slice(t.length)+t};function z(){let e=this.buf[this.pos++];let t=e&127;if(!(e&128)){this.assertBounds();return t}e=this.buf[this.pos++];t|=(e&127)<<7;if(!(e&128)){this.assertBounds();return t}e=this.buf[this.pos++];t|=(e&127)<<14;if(!(e&128)){this.assertBounds();return t}e=this.buf[this.pos++];t|=(e&127)<<21;if(!(e&128)){this.assertBounds();return t}e=this.buf[this.pos++];t|=(e&15)<<28;for(let t=5;e&128&&t<10;t++){e=this.buf[this.pos++]}if(e&128){throw new Error("invalid varint")}this.assertBounds();return t>>>0}const X=q();function q(){const e=new DataView(new ArrayBuffer(8));if(typeof BigInt=="function"&&typeof e.getBigInt64=="function"&&typeof e.getBigUint64=="function"&&typeof e.setBigInt64=="function"&&typeof e.setBigUint64=="function"&&(typeof process!="object"||typeof process.env!="object"||process.env.BUF_BIGINT_DISABLE!=="1")){const t=BigInt("-9223372036854775808");const r=BigInt("9223372036854775807");const n=BigInt("0");const i=BigInt("18446744073709551615");return{zero:BigInt(0),supported:true,parse(e){const n=typeof e=="bigint"?e:BigInt(e);if(n>r||n<t){throw new Error(`invalid int64: ${e}`)}return n},uParse(e){const t=typeof e=="bigint"?e:BigInt(e);if(t>i||t<n){throw new Error(`invalid uint64: ${e}`)}return t},enc(t){e.setBigInt64(0,this.parse(t),true);return{lo:e.getInt32(0,true),hi:e.getInt32(4,true)}},uEnc(t){e.setBigInt64(0,this.uParse(t),true);return{lo:e.getInt32(0,true),hi:e.getInt32(4,true)}},dec:(t,r)=>{e.setInt32(0,t,true);e.setInt32(4,r,true);return e.getBigInt64(0,true)},uDec:(t,r)=>{e.setInt32(0,t,true);e.setInt32(4,r,true);return e.getBigUint64(0,true)}}}return{zero:"0",supported:false,parse:e=>{if(typeof e!="string"){e=e.toString()}Q(e);return e},uParse:e=>{if(typeof e!="string"){e=e.toString()}Z(e);return e},enc:e=>{if(typeof e!="string"){e=e.toString()}Q(e);return $(e)},uEnc:e=>{if(typeof e!="string"){e=e.toString()}Z(e);return $(e)},dec:(e,t)=>function(e,t){let r=W(e,t);const n=r.hi&2147483648;if(n){r=Y(r.lo,r.hi)}const i=G(r.lo,r.hi);if(n){return"-"+i}else{return i}}(e,t),uDec:(e,t)=>G(e,t)}}function Q(e){if(!/^-?[0-9]+$/.test(e)){throw new Error("invalid int64: "+e)}}function Z(e){if(!/^[0-9]+$/.test(e)){throw new Error("invalid uint64: "+e)}}function ee(e,t){switch(e){case M.STRING:return"";case M.BOOL:return false;case M.DOUBLE:case M.FLOAT:return 0;case M.INT64:case M.UINT64:case M.SFIXED64:case M.FIXED64:case M.SINT64:if(t){return"0"}else{return X.zero}case M.BYTES:return new Uint8Array(0);default:return 0}}const te=Symbol.for("reflect unsafe local");function re(e,t){const r=e[t.localName].case;if(r===undefined){return r}else{return t.fields.find(e=>e.localName===r)}}function ne(e,t){return Object.prototype.hasOwnProperty.call(e,t)&&e[t]!==undefined}function ie(e,t){if(t.oneof){const r=e[t.oneof.localName];if(r.case===t.localName){return r.value}else{return undefined}}return e[t.localName]}function oe(e,t,r){if(t.oneof){e[t.oneof.localName]={case:t.localName,value:r}}else{e[t.localName]=r}}function se(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function ae(e,t){if(se(e)&&te in e&&"add"in e&&"field"in e&&typeof e.field=="function"){if(t!==undefined){const s=t;const a=e.field();return s.listKind==a.listKind&&s.scalar===a.scalar&&s.message?.typeName===a.message?.typeName&&s.enum?.typeName===a.enum?.typeName}return true}return false}function ce(e,t){if(se(e)&&te in e&&"has"in e&&"field"in e&&typeof e.field=="function"){if(t!==undefined){const s=t;const a=e.field();return s.mapKey===a.mapKey&&s.mapKind==a.mapKind&&s.scalar===a.scalar&&s.message?.typeName===a.message?.typeName&&s.enum?.typeName===a.enum?.typeName}return true}return false}function le(e,t){return se(e)&&te in e&&"desc"in e&&se(e.desc)&&e.desc.kind==="message"&&(t===undefined||e.desc.typeName==t.typeName)}function ue(e){const t=e.fields[0];return pe(e.typeName)&&t!==undefined&&t.fieldKind=="scalar"&&t.name=="value"&&t.number==1}function pe(e){return e.startsWith("google.protobuf.")&&["DoubleValue","FloatValue","Int64Value","UInt64Value","Int32Value","UInt32Value","BoolValue","StringValue","BytesValue"].includes(e.substring(16))}function he(e,t){if(F(t,e)){return t}const r=function(e){let t;if(function(e){switch(e.file.edition){case 999:return false;case 998:return true;default:return e.fields.some(e=>e.presence!=2&&e.fieldKind!="message"&&!e.oneof)}}(e)){const r=Ee.get(e);let n;let i;if(r){({prototype:n,members:i}=r)}else{n={};i=new Set;for(const t of e.members){if(t.kind!="oneof"){if(t.fieldKind=="scalar"||t.fieldKind=="enum"){if(t.presence!=2){i.add(t);n[t.localName]=we(t)}}}}Ee.set(e,{prototype:n,members:i})}t=Object.create(n);t.$typeName=e.typeName;for(const r of e.members){if(!i.has(r)){if(r.kind=="field"){if(r.fieldKind=="message"){continue}if((r.fieldKind=="scalar"||r.fieldKind=="enum")&&r.presence!=2){continue}}t[r.localName]=we(r)}}}else{t={$typeName:e.typeName};for(const r of e.members){if(r.kind=="oneof"||r.presence==2){t[r.localName]=we(r)}}}return t}(e);if(t!==undefined){(function(e,t,r){for(const n of e.members){let e;let i=r[n.localName];if(i!=null){if(n.kind=="oneof"){const t=re(r,n);if(!t){continue}e=t;i=ie(r,t)}else{e=n}switch(e.fieldKind){case"message":i=me(e,i);break;case"scalar":i=fe(e,i);break;case"list":i=ye(e,i);break;case"map":i=de(e,i)}oe(t,e,i)}}})(e,r,t)}return r}function fe(e,t){if(e.scalar==M.BYTES){return ge(t)}else{return t}}function de(e,t){if(se(t)){if(e.scalar==M.BYTES){return ve(t,ge)}if(e.mapKind=="message"){return ve(t,t=>me(e,t))}}return t}function ye(e,t){if(Array.isArray(t)){if(e.scalar==M.BYTES){return t.map(ge)}if(e.listKind=="message"){return t.map(t=>me(e,t))}}return t}function me(e,t){if(e.fieldKind=="message"&&!e.oneof&&ue(e.message)){return fe(e.message.fields[0],t)}if(se(t)){if(e.message.typeName=="google.protobuf.Struct"&&e.parent.typeName!=="google.protobuf.Value"){return t}if(!F(t,e.message)){return he(e.message,t)}}return t}function ge(e){if(Array.isArray(e)){return new Uint8Array(e)}else{return e}}function ve(e,t){const r={};for(const n of Object.entries(e)){r[n[0]]=t(n[1])}return r}const be=Symbol();const Ee=new WeakMap;function we(e){if(e.kind=="oneof"){return{case:undefined}}if(e.fieldKind=="list"){return[]}if(e.fieldKind=="map"){return{}}if(e.fieldKind=="message"){return be}const t=e.getDefaultValue();if(t!==undefined){if(e.fieldKind=="scalar"&&e.longAsString){return t.toString()}else{return t}}else if(e.fieldKind=="scalar"){return ee(e.scalar,e.longAsString)}else{return e.enum.values[0].number}}class Se extends Error{constructor(e,t,r="FieldValueInvalidError"){super(t);this.name=r;this.field=()=>e}}const Ae=Symbol.for("@bufbuild/protobuf/text-encoding");function Ne(){if(globalThis[Ae]==null){const e=new globalThis.TextEncoder;const t=new globalThis.TextDecoder;globalThis[Ae]={encodeUtf8:t=>e.encode(t),decodeUtf8:e=>t.decode(e),checkUtf8(e){try{encodeURIComponent(e);return true}catch(e){return false}}}}return globalThis[Ae]}var Te;(function(e){e[e.Varint=0]="Varint";e[e.Bit64=1]="Bit64";e[e.LengthDelimited=2]="LengthDelimited";e[e.StartGroup=3]="StartGroup";e[e.EndGroup=4]="EndGroup";e[e.Bit32=5]="Bit32"})(Te||={});class Oe{constructor(e,t=Ne().decodeUtf8){this.decodeUtf8=t;this.varint64=H;this.uint32=z;this.buf=e;this.len=e.length;this.pos=0;this.view=new DataView(e.buffer,e.byteOffset,e.byteLength)}tag(){let e=this.uint32();let t=e>>>3;let r=e&7;if(t<=0||r<0||r>5){throw new Error("illegal tag: field no "+t+" wire type "+r)}return[t,r]}skip(e,t){let r=this.pos;switch(e){case Te.Varint:while(this.buf[this.pos++]&128);break;case Te.Bit64:this.pos+=4;case Te.Bit32:this.pos+=4;break;case Te.LengthDelimited:let r=this.uint32();this.pos+=r;break;case Te.StartGroup:while(true){const[e,r]=this.tag();if(r===Te.EndGroup){if(t!==undefined&&e!==t){throw new Error("invalid end group tag")}break}this.skip(r,e)}break;default:throw new Error("cant skip wire type "+e)}this.assertBounds();return this.buf.subarray(r,this.pos)}assertBounds(){if(this.pos>this.len){throw new RangeError("premature EOF")}}int32(){return this.uint32()|0}sint32(){let e=this.uint32();return e>>>1^-(e&1)}int64(){return X.dec(...this.varint64())}uint64(){return X.uDec(...this.varint64())}sint64(){let[e,t]=this.varint64();let r=-(e&1);e=(e>>>1|(t&1)<<31)^r;t=t>>>1^r;return X.dec(e,t)}bool(){let[e,t]=this.varint64();return e!==0||t!==0}fixed32(){return this.view.getUint32((this.pos+=4)-4,true)}sfixed32(){return this.view.getInt32((this.pos+=4)-4,true)}fixed64(){return X.uDec(this.sfixed32(),this.sfixed32())}sfixed64(){return X.dec(this.sfixed32(),this.sfixed32())}float(){return this.view.getFloat32((this.pos+=4)-4,true)}double(){return this.view.getFloat64((this.pos+=8)-8,true)}bytes(){let e=this.uint32();let t=this.pos;this.pos+=e;this.assertBounds();return this.buf.subarray(t,t+e)}string(){return this.decodeUtf8(this.bytes())}}function Ie(e,t,r){const n=ke(e,r);if(n!==true){return new Se(e,`list item #${t+1}: ${xe(e,r,n)}`)}}function ke(e,t){if(e.scalar!==undefined){return Be(t,e.scalar)}else if(e.enum!==undefined){if(e.enum.open){return Number.isInteger(t)}else{return e.enum.values.some(e=>e.number===t)}}else{return le(t,e.message)}}function Be(e,t){switch(t){case M.DOUBLE:return typeof e=="number";case M.FLOAT:return typeof e=="number"&&(!!Number.isNaN(e)||!Number.isFinite(e)||!(e>34028234663852886e22)&&!(e<-34028234663852886e22)||`${e.toFixed()} out of range`);case M.INT32:case M.SFIXED32:case M.SINT32:return typeof e=="number"&&!!Number.isInteger(e)&&(!(e>2147483647)&&!(e<-2147483648)||`${e.toFixed()} out of range`);case M.FIXED32:case M.UINT32:return typeof e=="number"&&!!Number.isInteger(e)&&(!(e>4294967295)&&!(e<0)||`${e.toFixed()} out of range`);case M.BOOL:return typeof e=="boolean";case M.STRING:return typeof e=="string"&&(Ne().checkUtf8(e)||"invalid UTF8");case M.BYTES:return e instanceof Uint8Array;case M.INT64:case M.SFIXED64:case M.SINT64:if(typeof e=="bigint"||typeof e=="number"||typeof e=="string"&&e.length>0){try{X.parse(e);return true}catch(t){return`${e} out of range`}}return false;case M.FIXED64:case M.UINT64:if(typeof e=="bigint"||typeof e=="number"||typeof e=="string"&&e.length>0){try{X.uParse(e);return true}catch(t){return`${e} out of range`}}return false}}function xe(e,t,r){r=typeof r=="string"?`: ${r}`:`, got ${Ce(t)}`;if(e.scalar!==undefined){return`expected ${function(e){switch(e){case M.STRING:return"string";case M.BOOL:return"boolean";case M.INT64:case M.SINT64:case M.SFIXED64:return"bigint (int64)";case M.UINT64:case M.FIXED64:return"bigint (uint64)";case M.BYTES:return"Uint8Array";case M.DOUBLE:return"number (float64)";case M.FLOAT:return"number (float32)";case M.FIXED32:case M.UINT32:return"number (uint32)";case M.INT32:case M.SFIXED32:case M.SINT32:return"number (int32)"}}(e.scalar)}${r}`}else if(e.enum!==undefined){return`expected ${e.enum.toString()}${r}`}else{return`expected ${Re(e.message)}${r}`}}function Ce(e){switch(typeof e){case"object":if(e===null){return"null"}else if(e instanceof Uint8Array){return`Uint8Array(${e.length})`}else if(Array.isArray(e)){return`Array(${e.length})`}else if(ae(e)){return _e(e.field())}else if(ce(e)){return Ue(e.field())}else if(le(e)){return Re(e.desc)}else if(F(e)){return`message ${e.$typeName}`}else{return"object"}case"string":if(e.length>30){return"string"}else{return`"${e.split('"').join('\\"')}"`}case"boolean":case"number":return String(e);case"bigint":return String(e)+"n";default:return typeof e}}function Re(e){return`ReflectMessage (${e.typeName})`}function _e(e){switch(e.listKind){case"message":return`ReflectList (${e.message.toString()})`;case"enum":return`ReflectList (${e.enum.toString()})`;case"scalar":return`ReflectList (${M[e.scalar]})`}}function Ue(e){switch(e.mapKind){case"message":return`ReflectMap (${M[e.mapKey]}, ${e.message.toString()})`;case"enum":return`ReflectMap (${M[e.mapKey]}, ${e.enum.toString()})`;case"scalar":return`ReflectMap (${M[e.mapKey]}, ${M[e.scalar]})`}}function De(e,t,r=true){return new Pe(e,t,r)}class Pe{get sortedFields(){return this._sortedFields??=this.desc.fields.concat().sort((e,t)=>e.number-t.number)}constructor(e,t,r=true){this.lists=new Map;this.maps=new Map;this.check=r;this.desc=e;this.message=this[te]=t??he(e);this.fields=e.fields;this.oneofs=e.oneofs;this.members=e.members}findNumber(e){this._fieldsByNumber||=new Map(this.desc.fields.map(e=>[e.number,e]));return this._fieldsByNumber.get(e)}oneofCase(e){Ve(this.message,e);return re(this.message,e)}isSet(e){Ve(this.message,e);return function(e,t){const r=t.localName;if(t.oneof){return e[t.oneof.localName].case===r}if(t.presence!=2){return e[r]!==undefined&&Object.prototype.hasOwnProperty.call(e,r)}switch(t.fieldKind){case"list":return e[r].length>0;case"map":return Object.keys(e[r]).length>0;case"scalar":return!function(e,t){switch(e){case M.BOOL:return t===false;case M.STRING:return t==="";case M.BYTES:return t instanceof Uint8Array&&!t.byteLength;default:return t==0}}(t.scalar,e[r]);case"enum":return e[r]!==t.enum.values[0].number}throw new Error("message field with implicit presence")}(this.message,e)}clear(e){Ve(this.message,e);(function(e,t){const r=t.localName;if(t.oneof){const n=t.oneof.localName;if(e[n].case===r){e[n]={case:undefined}}}else if(t.presence!=2){delete e[r]}else{switch(t.fieldKind){case"map":e[r]={};break;case"list":e[r]=[];break;case"enum":e[r]=t.enum.values[0].number;break;case"scalar":e[r]=ee(t.scalar,t.longAsString)}}})(this.message,e)}get(e){Ve(this.message,e);const t=ie(this.message,e);switch(e.fieldKind){case"list":let r=this.lists.get(e);if(!r||r[te]!==t){this.lists.set(e,r=new je(e,t,this.check))}return r;case"map":let n=this.maps.get(e);if(!n||n[te]!==t){this.maps.set(e,n=new Le(e,t,this.check))}return n;case"message":return Me(e,t,this.check);case"scalar":if(t===undefined){return ee(e.scalar,false)}else{return Ye(e,t)}case"enum":return t??e.enum.values[0].number}}set(e,t){Ve(this.message,e);if(this.check){const r=function(e,t){const r=e.fieldKind=="list"?ae(t,e):e.fieldKind=="map"?ce(t,e):ke(e,t);if(r===true){return}let n;switch(e.fieldKind){case"list":n=`expected ${_e(e)}, got ${Ce(t)}`;break;case"map":n=`expected ${Ue(e)}, got ${Ce(t)}`;break;default:n=xe(e,t,r)}return new Se(e,n)}(e,t);if(r){throw r}}let r;r=e.fieldKind=="message"?Fe(e,t):ce(t)||ae(t)?t[te]:Je(e,t);oe(this.message,e,r)}getUnknown(){return this.message.$unknown}setUnknown(e){this.message.$unknown=e}}function Ve(e,t){if(t.parent.typeName!==e.$typeName){throw new Se(t,`cannot use ${t.toString()} with message ${e.$typeName}`,"ForeignFieldError")}}class je{field(){return this._field}get size(){return this._arr.length}constructor(e,t,r){this._field=e;this._arr=this[te]=t;this.check=r}get(e){const t=this._arr[e];if(t===undefined){return undefined}else{return Ke(this._field,t,this.check)}}set(e,t){if(e<0||e>=this._arr.length){throw new Se(this._field,`list item #${e+1}: out of range`)}if(this.check){const r=Ie(this._field,e,t);if(r){throw r}}this._arr[e]=He(this._field,t)}add(e){if(this.check){const t=Ie(this._field,this._arr.length,e);if(t){throw t}}this._arr.push(He(this._field,e))}clear(){this._arr.splice(0,this._arr.length)}[Symbol.iterator](){return this.values()}keys(){return this._arr.keys()}*values(){for(const e of this._arr){yield Ke(this._field,e,this.check)}}*entries(){for(let e=0;e<this._arr.length;e++){yield[e,Ke(this._field,this._arr[e],this.check)]}}}class Le{constructor(e,t,r=true){this.obj=this[te]=t??{};this.check=r;this._field=e}field(){return this._field}set(e,t){if(this.check){const r=function(e,t,r){const n=Be(t,e.mapKey);if(n!==true){return new Se(e,`invalid map key: ${xe({scalar:e.mapKey},t,n)}`)}const i=ke(e,r);if(i!==true){return new Se(e,`map entry ${Ce(t)}: ${xe(e,r,i)}`)}else{return undefined}}(this._field,e,t);if(r){throw r}}this.obj[Ge(e)]=function(e,t){if(e.mapKind=="message"){return Fe(e,t)}else{return Je(e,t)}}(this._field,t);return this}delete(e){const t=Ge(e);const r=Object.prototype.hasOwnProperty.call(this.obj,t);if(r){delete this.obj[t]}return r}clear(){for(const e of Object.keys(this.obj)){delete this.obj[e]}}get(e){let t=this.obj[Ge(e)];if(t!==undefined){t=$e(this._field,t,this.check)}return t}has(e){return Object.prototype.hasOwnProperty.call(this.obj,Ge(e))}*keys(){for(const e of Object.keys(this.obj)){yield We(e,this._field.mapKey)}}*entries(){for(const e of Object.entries(this.obj)){yield[We(e[0],this._field.mapKey),$e(this._field,e[1],this.check)]}}[Symbol.iterator](){return this.entries()}get size(){return Object.keys(this.obj).length}*values(){for(const e of Object.values(this.obj)){yield $e(this._field,e,this.check)}}forEach(e,t){for(const r of this.entries()){e.call(t,r[1],r[0],this)}}}function Fe(e,t){if(le(t)){if(pe(t.message.$typeName)&&!e.oneof&&e.fieldKind=="message"){return t.message.value}else if(t.desc.typeName=="google.protobuf.Struct"&&e.parent.typeName!="google.protobuf.Value"){return Xe(t.message)}else{return t.message}}else{return t}}function Me(e,t,r){if(t!==undefined){if(ue(e.message)&&!e.oneof&&e.fieldKind=="message"){t={$typeName:e.message.typeName,value:Ye(e.message.fields[0],t)}}else if(e.message.typeName=="google.protobuf.Struct"&&e.parent.typeName!="google.protobuf.Value"&&se(t)){t=ze(t)}}return new Pe(e.message,t,r)}function He(e,t){if(e.listKind=="message"){return Fe(e,t)}else{return Je(e,t)}}function Ke(e,t,r){if(e.listKind=="message"){return Me(e,t,r)}else{return Ye(e,t)}}function $e(e,t,r){if(e.mapKind=="message"){return Me(e,t,r)}else{return t}}function Ge(e){if(typeof e=="string"||typeof e=="number"){return e}else{return String(e)}}function We(e,t){switch(t){case M.STRING:return e;case M.INT32:case M.FIXED32:case M.UINT32:case M.SFIXED32:case M.SINT32:{const t=Number.parseInt(e);if(Number.isFinite(t)){return t}break}case M.BOOL:switch(e){case"true":return true;case"false":return false}break;case M.UINT64:case M.FIXED64:try{return X.uParse(e)}catch(e){}break;default:try{return X.parse(e)}catch(e){}}return e}function Ye(e,t){switch(e.scalar){case M.INT64:case M.SFIXED64:case M.SINT64:if("longAsString"in e&&e.longAsString&&typeof t=="string"){t=X.parse(t)}break;case M.FIXED64:case M.UINT64:if("longAsString"in e&&e.longAsString&&typeof t=="string"){t=X.uParse(t)}}return t}function Je(e,t){switch(e.scalar){case M.INT64:case M.SFIXED64:case M.SINT64:if("longAsString"in e&&e.longAsString){t=String(t)}else if(typeof t=="string"||typeof t=="number"){t=X.parse(t)}break;case M.FIXED64:case M.UINT64:if("longAsString"in e&&e.longAsString){t=String(t)}else if(typeof t=="string"||typeof t=="number"){t=X.uParse(t)}}return t}function ze(e){const t={$typeName:"google.protobuf.Struct",fields:{}};if(se(e)){for(const[r,n]of Object.entries(e)){t.fields[r]=Qe(n)}}return t}function Xe(e){const t={};for(const[r,n]of Object.entries(e.fields)){t[r]=qe(n)}return t}function qe(e){switch(e.kind.case){case"structValue":return Xe(e.kind.value);case"listValue":return e.kind.value.values.map(qe);case"nullValue":case undefined:return null;default:return e.kind.value}}function Qe(e){const t={$typeName:"google.protobuf.Value",kind:{case:undefined}};switch(typeof e){case"number":t.kind={case:"numberValue",value:e};break;case"string":t.kind={case:"stringValue",value:e};break;case"boolean":t.kind={case:"boolValue",value:e};break;case"object":if(e===null){const e=0;t.kind={case:"nullValue",value:e}}else if(Array.isArray(e)){const r={$typeName:"google.protobuf.ListValue",values:[]};if(Array.isArray(e)){for(const t of e){r.values.push(Qe(t))}}t.kind={case:"listValue",value:r}}else{t.kind={case:"structValue",value:ze(e)}}}return t}let Ze;let et;function tt(e){let t=false;const r=[];for(let n=0;n<e.length;n++){let i=e.charAt(n);switch(i){case"_":t=true;break;case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":r.push(i);t=false;break;default:if(t){t=false;i=i.toUpperCase()}r.push(i)}}return r.join("")}const rt=new Set(["constructor","toString","toJSON","valueOf"]);function nt(e){if(rt.has(e)){return e+"$"}else{return e}}function it(e){for(const t of e.field){if(!ne(t,"jsonName")){t.jsonName=tt(t.name)}}e.nestedType.forEach(it)}function*ot(e){switch(e.kind){case"file":for(const t of e.messages){yield t;yield*ot(t)}yield*e.enums;yield*e.services;yield*e.extensions;break;case"message":for(const t of e.nestedMessages){yield t;yield*ot(t)}yield*e.nestedEnums;yield*e.nestedExtensions}}function st(...e){const t=function(){const e=new Map;const t=new Map;const r=new Map;return{kind:"registry",types:e,extendees:t,[Symbol.iterator]:()=>e.values(),get files(){return r.values()},addFile(e,t,n){r.set(e.proto.name,e);if(!t){for(const t of ot(e)){this.add(t)}}if(n){for(const r of e.dependencies){this.addFile(r,t,n)}}},add(r){if(r.kind=="extension"){let e=t.get(r.extendee.typeName);if(!e){t.set(r.extendee.typeName,e=new Map)}e.set(r.number,r)}e.set(r.typeName,r)},get:t=>e.get(t),getFile:e=>r.get(e),getMessage(t){const r=e.get(t);if((r==null?undefined:r.kind)=="message"){return r}else{return undefined}},getEnum(t){const r=e.get(t);if((r==null?undefined:r.kind)=="enum"){return r}else{return undefined}},getExtension(t){const r=e.get(t);if((r==null?undefined:r.kind)=="extension"){return r}else{return undefined}},getExtensionFor(e,r){var n;if((n=t.get(e.typeName))===null||n===undefined){return undefined}else{return n.get(r)}},getService(t){const r=e.get(t);if((r==null?undefined:r.kind)=="service"){return r}else{return undefined}}}}();if(!e.length){return t}if("$typeName"in e[0]&&e[0].$typeName=="google.protobuf.FileDescriptorSet"){for(const r of e[0].file){Tt(r,t)}return t}if("$typeName"in e[0]){const n=e[0];const i=e[1];const o=new Set;function s(e){const r=[];for(const n of e.dependency){if(t.getFile(n)!=null){continue}if(o.has(n)){continue}const s=i(n);if(!s){throw new Error(`Unable to resolve ${n}, imported by ${e.name}`)}if("kind"in s){t.addFile(s,false,true)}else{o.add(s.name);r.push(s)}}return r.concat(...r.map(s))}for(const a of[n,...s(n)].reverse()){Tt(a,t)}}else{for(const c of e){for(const l of c.files){t.addFile(l)}}}return t}const at=998;const ct=999;const lt=9;const ut=10;const pt=11;const ht=12;const ft=14;const dt=3;const yt=2;const mt=1;const gt=0;const vt=1;const bt=2;const Et=3;const wt=1;const St=2;const At=1;const Nt={998:{fieldPresence:1,enumType:2,repeatedFieldEncoding:2,utf8Validation:3,messageEncoding:1,jsonFormat:2,enforceNamingStyle:2},999:{fieldPresence:2,enumType:1,repeatedFieldEncoding:1,utf8Validation:2,messageEncoding:1,jsonFormat:1,enforceNamingStyle:2},1e3:{fieldPresence:1,enumType:1,repeatedFieldEncoding:1,utf8Validation:2,messageEncoding:1,jsonFormat:1,enforceNamingStyle:2}};function Tt(e,t){var n;const i={kind:"file",proto:e,deprecated:(n=e.options?.deprecated)!==null&&n!==undefined&&n,edition:_t(e),name:e.name.replace(/\.proto$/,""),dependencies:Ut(e,t),enums:[],messages:[],extensions:[],services:[],toString:()=>`file ${e.name}`};const o=new Map;const s={get:e=>o.get(e),add(e){Mt(e.proto.options?.mapEntry===true);o.set(e.typeName,e)}};for(const r of e.enumType){kt(r,i,undefined,t)}for(const r of e.messageType){Bt(r,i,undefined,t,s)}for(const r of e.service){xt(r,i,t)}Ot(i,t);for(const e of o.values()){It(e,t,s)}for(const e of i.messages){It(e,t,s);Ot(e,t)}t.addFile(i,true)}function Ot(e,t){switch(e.kind){case"file":for(const r of e.proto.extension){const n=Rt(r,e,t);e.extensions.push(n);t.add(n)}break;case"message":for(const r of e.proto.extension){const n=Rt(r,e,t);e.nestedExtensions.push(n);t.add(n)}for(const r of e.nestedMessages){Ot(r,t)}}}function It(e,t,r){const n=e.proto.oneofDecl.map(t=>function(e,t){return{kind:"oneof",proto:e,deprecated:false,parent:t,fields:[],name:e.name,localName:nt(tt(e.name)),toString(){return`oneof ${t.typeName}.${this.name}`}}}(t,e));const i=new Set;for(const o of e.proto.field){const s=Vt(o,n);const a=Rt(o,e,t,s,r);e.fields.push(a);e.field[a.localName]=a;if(s===undefined){e.members.push(a)}else{s.fields.push(a);if(!i.has(s)){i.add(s);e.members.push(s)}}}for(const t of n.filter(e=>i.has(e))){e.oneofs.push(t)}for(const n of e.nestedMessages){It(n,t,r)}}function kt(e,t,r,n){var o;var a;const l=function(e,t){const r=((n=e).substring(0,1)+n.substring(1).replace(/[A-Z]/g,e=>"_"+e)).toLowerCase()+"_";var n;for(const e of t){if(!e.name.toLowerCase().startsWith(r)){return}const t=e.name.substring(r.length);if(t.length==0){return}if(/^\d/.test(t)){return}}return r}(e.name,e.value);const u={kind:"enum",proto:e,deprecated:(o=e.options?.deprecated)!==null&&o!==undefined&&o,file:t,parent:r,open:true,name:e.name,typeName:Dt(e,r,t),value:{},values:[],sharedPrefix:l,toString(){return`enum ${this.typeName}`}};u.open=function(e){return At==Ft("enumType",{proto:e.proto,parent:e.parent??e.file})}(u);n.add(u);for(const t of e.value){const e=t.name;u.values.push(u.value[t.number]={kind:"enum_value",proto:t,deprecated:(a=t.options?.deprecated)!==null&&a!==undefined&&a,parent:u,name:e,localName:nt(l==null?e:e.substring(l.length)),number:t.number,toString:()=>`enum value ${u.typeName}.${e}`})}((r==null?undefined:r.nestedEnums)??t.enums).push(u)}function Bt(e,t,r,n,i){var s;const l={kind:"message",proto:e,deprecated:(s=e.options?.deprecated)!==null&&s!==undefined&&s,file:t,parent:r,name:e.name,typeName:Dt(e,r,t),fields:[],field:{},oneofs:[],members:[],nestedEnums:[],nestedMessages:[],nestedExtensions:[],toString(){return`message ${this.typeName}`}};if(e.options?.mapEntry===true){i.add(l)}else{((r==null?undefined:r.nestedMessages)??t.messages).push(l);n.add(l)}for(const r of e.enumType){kt(r,t,l,n)}for(const r of e.nestedType){Bt(r,t,l,n,i)}}function xt(e,t,r){var i;const o={kind:"service",proto:e,deprecated:(i=e.options?.deprecated)!==null&&i!==undefined&&i,file:t,name:e.name,typeName:Dt(e,undefined,t),methods:[],method:{},toString(){return`service ${this.typeName}`}};t.services.push(o);r.add(o);for(const t of e.method){const e=Ct(t,o,r);o.methods.push(e);o.method[e.localName]=e}}function Ct(e,t,r){var i;let a;a=e.clientStreaming&&e.serverStreaming?"bidi_streaming":e.clientStreaming?"client_streaming":e.serverStreaming?"server_streaming":"unary";const c=r.getMessage(Pt(e.inputType));const l=r.getMessage(Pt(e.outputType));Mt(c,`invalid MethodDescriptorProto: input_type ${e.inputType} not found`);Mt(l,`invalid MethodDescriptorProto: output_type ${e.inputType} not found`);const u=e.name;return{kind:"rpc",proto:e,deprecated:(i=e.options?.deprecated)!==null&&i!==undefined&&i,parent:t,name:u,localName:nt(u.length?nt(u[0].toLowerCase()+u.substring(1)):u),methodKind:a,input:c,output:l,idempotency:e.options?.idempotencyLevel??gt,toString:()=>`rpc ${t.typeName}.${u}`}}function Rt(e,t,r,n,i){var s;const c=i===undefined;const l={kind:"field",proto:e,deprecated:(s=e.options?.deprecated)!==null&&s!==undefined&&s,name:e.name,number:e.number,scalar:undefined,message:undefined,enum:undefined,presence:jt(e,n,c,t),listKind:undefined,mapKind:undefined,mapKey:undefined,delimitedEncoding:undefined,packed:undefined,longAsString:false,getDefaultValue:undefined};if(c){const n=t.kind=="file"?t:t.file;const i=t.kind=="file"?undefined:t;const o=Dt(e,i,n);l.kind="extension";l.file=n;l.parent=i;l.oneof=undefined;l.typeName=o;l.jsonName=`[${o}]`;l.toString=()=>`extension ${o}`;const s=r.getMessage(Pt(e.extendee));Mt(s,`invalid FieldDescriptorProto: extendee ${e.extendee} not found`);l.extendee=s}else{const r=t;Mt(r.kind=="message");l.parent=r;l.oneof=n;l.localName=n?tt(e.name):nt(tt(e.name));l.jsonName=e.jsonName;l.toString=()=>`field ${r.typeName}.${e.name}`}const u=e.label;const p=e.type;const h=e.options?.jstype;if(u===dt){const n=p==pt?i==null?undefined:i.get(Pt(e.typeName)):undefined;if(n){l.fieldKind="map";const{key:e,value:t}=function(e){const t=e.fields.find(e=>e.number===1);const r=e.fields.find(e=>e.number===2);Mt(t&&t.fieldKind=="scalar"&&t.scalar!=M.BYTES&&t.scalar!=M.FLOAT&&t.scalar!=M.DOUBLE&&r&&r.fieldKind!="list"&&r.fieldKind!="map");return{key:t,value:r}}(n);l.mapKey=e.scalar;l.mapKind=t.fieldKind;l.message=t.message;l.delimitedEncoding=false;l.enum=t.enum;l.scalar=t.scalar;return l}l.fieldKind="list";switch(p){case pt:case ut:l.listKind="message";l.message=r.getMessage(Pt(e.typeName));Mt(l.message);l.delimitedEncoding=Lt(e,t);break;case ft:l.listKind="enum";l.enum=r.getEnum(Pt(e.typeName));Mt(l.enum);break;default:l.listKind="scalar";l.scalar=p;l.longAsString=h==mt}l.packed=function(e,t){if(e.label!=dt){return false}switch(e.type){case lt:case ht:case ut:case pt:return false}const r=e.options;if(r&&ne(r,"packed")){return r.packed}else{return wt==Ft("repeatedFieldEncoding",{proto:e,parent:t})}}(e,t);return l}switch(p){case pt:case ut:l.fieldKind="message";l.message=r.getMessage(Pt(e.typeName));Mt(l.message,`invalid FieldDescriptorProto: type_name ${e.typeName} not found`);l.delimitedEncoding=Lt(e,t);l.getDefaultValue=()=>{};break;case ft:{const t=r.getEnum(Pt(e.typeName));Mt(t!==undefined,`invalid FieldDescriptorProto: type_name ${e.typeName} not found`);l.fieldKind="enum";l.enum=r.getEnum(Pt(e.typeName));l.getDefaultValue=()=>ne(e,"defaultValue")?function(e,t){const r=e.values.find(e=>e.name===t);if(!r){throw new Error(`cannot parse ${e} default value: ${t}`)}return r.number}(t,e.defaultValue):undefined;break}default:l.fieldKind="scalar";l.scalar=p;l.longAsString=h==mt;l.getDefaultValue=()=>ne(e,"defaultValue")?function(e,t){switch(e){case M.STRING:return t;case M.BYTES:{const r=function(e){const t=[];const r={tail:e,c:"",next(){return this.tail.length!=0&&(this.c=this.tail[0],this.tail=this.tail.substring(1),true)},take(e){if(this.tail.length>=e){const t=this.tail.substring(0,e);this.tail=this.tail.substring(e);return t}return false}};while(r.next()){if(r.c==="\\"){if(r.next()){switch(r.c){case"\\":t.push(r.c.charCodeAt(0));break;case"b":t.push(8);break;case"f":t.push(12);break;case"n":t.push(10);break;case"r":t.push(13);break;case"t":t.push(9);break;case"v":t.push(11);break;case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":{const e=r.c;const n=r.take(2);if(n===false){return false}const i=parseInt(e+n,8);if(Number.isNaN(i)){return false}t.push(i);break}case"x":{const e=r.c;const n=r.take(2);if(n===false){return false}const i=parseInt(e+n,16);if(Number.isNaN(i)){return false}t.push(i);break}case"u":{const e=r.c;const n=r.take(4);if(n===false){return false}const i=parseInt(e+n,16);if(Number.isNaN(i)){return false}const o=new Uint8Array(4);new DataView(o.buffer).setInt32(0,i,true);t.push(o[0],o[1],o[2],o[3]);break}case"U":{const e=r.c;const n=r.take(8);if(n===false){return false}const i=X.uEnc(e+n);const o=new Uint8Array(8);const s=new DataView(o.buffer);s.setInt32(0,i.lo,true);s.setInt32(4,i.hi,true);t.push(o[0],o[1],o[2],o[3],o[4],o[5],o[6],o[7]);break}}}}else{t.push(r.c.charCodeAt(0))}}return new Uint8Array(t)}(t);if(r===false){throw new Error(`cannot parse ${M[e]} default value: ${t}`)}return r}case M.INT64:case M.SFIXED64:case M.SINT64:return X.parse(t);case M.UINT64:case M.FIXED64:return X.uParse(t);case M.DOUBLE:case M.FLOAT:switch(t){case"inf":return Number.POSITIVE_INFINITY;case"-inf":return Number.NEGATIVE_INFINITY;case"nan":return Number.NaN;default:return parseFloat(t)}case M.BOOL:return t==="true";case M.INT32:case M.UINT32:case M.SINT32:case M.FIXED32:case M.SFIXED32:return parseInt(t,10)}}(p,e.defaultValue):undefined}return l}function _t(e){switch(e.syntax){case"":case"proto2":return at;case"proto3":return ct;case"editions":if(e.edition in Nt){return e.edition}throw new Error(`${e.name}: unsupported edition`);default:throw new Error(`${e.name}: unsupported syntax "${e.syntax}"`)}}function Ut(e,t){return e.dependency.map(r=>{const n=t.getFile(r);if(!n){throw new Error(`Cannot find ${r}, imported by ${e.name}`)}return n})}function Dt(e,t,r){let n;n=t?`${t.typeName}.${e.name}`:r.proto.package.length>0?`${r.proto.package}.${e.name}`:`${e.name}`;return n}function Pt(e){if(e.startsWith(".")){return e.substring(1)}else{return e}}function Vt(e,t){if(!ne(e,"oneofIndex")){return}if(e.proto3Optional){return}const r=t[e.oneofIndex];Mt(r,`invalid FieldDescriptorProto: oneof #${e.oneofIndex} for field #${e.number} not found`);return r}function jt(e,t,r,n){if(e.label==yt){return Et}if(e.label==dt){return bt}if(t||e.proto3Optional){return vt}if(r){return vt}const i=Ft("fieldPresence",{proto:e,parent:n});if(i!=bt||e.type!=pt&&e.type!=ut){return i}else{return vt}}function Lt(e,t){return e.type==ut||St==Ft("messageEncoding",{proto:e,parent:t})}function Ft(e,t){const i=t.proto.options?.features;if(i){const t=i[e];if(t!=0){return t}}if("kind"in t){if(t.kind=="message"){return Ft(e,t.parent??t.file)}const r=Nt[t.edition];if(!r){throw new Error(`feature default for edition ${t.edition} not found`)}return r[e]}return Ft(e,t.parent)}function Mt(e,t){if(!e){throw new Error(t)}}function Ht(e){const t=function(e){const t=Object.create({syntax:"",edition:0});return Object.assign(t,Object.assign(Object.assign({$typeName:"google.protobuf.FileDescriptorProto",dependency:[],publicDependency:[],weakDependency:[],service:[],extension:[]},e),{messageType:e.messageType.map(Kt),enumType:e.enumType.map(Wt)}))}(e);t.messageType.forEach(it);return st(t,()=>{}).getFile(t.name)}function Kt(e){var t;var n;var o;var a;return{$typeName:"google.protobuf.DescriptorProto",name:e.name,field:((t=e.field)===null||t===undefined?undefined:t.map($t))??[],extension:[],nestedType:((n=e.nestedType)===null||n===undefined?undefined:n.map(Kt))??[],enumType:((o=e.enumType)===null||o===undefined?undefined:o.map(Wt))??[],extensionRange:((a=e.extensionRange)===null||a===undefined?undefined:a.map(e=>Object.assign({$typeName:"google.protobuf.DescriptorProto.ExtensionRange"},e)))??[],oneofDecl:[],reservedRange:[],reservedName:[]}}function $t(e){const t=Object.create({label:1,typeName:"",extendee:"",defaultValue:"",oneofIndex:0,jsonName:"",proto3Optional:false});return Object.assign(t,Object.assign(Object.assign({$typeName:"google.protobuf.FieldDescriptorProto"},e),{options:e.options?Gt(e.options):undefined}))}function Gt(e){var r;const i=Object.create({ctype:0,packed:false,jstype:0,lazy:false,unverifiedLazy:false,deprecated:false,weak:false,debugRedact:false,retention:0});return Object.assign(i,Object.assign(Object.assign({$typeName:"google.protobuf.FieldOptions"},e),{targets:e.targets??[],editionDefaults:((r=e.editionDefaults)===null||r===undefined?undefined:r.map(e=>Object.assign({$typeName:"google.protobuf.FieldOptions.EditionDefault"},e)))??[],uninterpretedOption:[]}))}function Wt(e){return{$typeName:"google.protobuf.EnumDescriptorProto",name:e.name,reservedName:[],reservedRange:[],value:e.value.map(e=>Object.assign({$typeName:"google.protobuf.EnumValueDescriptorProto"},e))}}function Yt(e,t,...r){return r.reduce((e,t)=>e.nestedMessages[t],e.messages[t])}const Jt=Yt(Ht({name:"google/protobuf/descriptor.proto",package:"google.protobuf",messageType:[{name:"FileDescriptorSet",field:[{name:"file",number:1,type:11,label:3,typeName:".google.protobuf.FileDescriptorProto"}],extensionRange:[{start:536e6,end:536000001}]},{name:"FileDescriptorProto",field:[{name:"name",number:1,type:9,label:1},{name:"package",number:2,type:9,label:1},{name:"dependency",number:3,type:9,label:3},{name:"public_dependency",number:10,type:5,label:3},{name:"weak_dependency",number:11,type:5,label:3},{name:"message_type",number:4,type:11,label:3,typeName:".google.protobuf.DescriptorProto"},{name:"enum_type",number:5,type:11,label:3,typeName:".google.protobuf.EnumDescriptorProto"},{name:"service",number:6,type:11,label:3,typeName:".google.protobuf.ServiceDescriptorProto"},{name:"extension",number:7,type:11,label:3,typeName:".google.protobuf.FieldDescriptorProto"},{name:"options",number:8,type:11,label:1,typeName:".google.protobuf.FileOptions"},{name:"source_code_info",number:9,type:11,label:1,typeName:".google.protobuf.SourceCodeInfo"},{name:"syntax",number:12,type:9,label:1},{name:"edition",number:14,type:14,label:1,typeName:".google.protobuf.Edition"}]},{name:"DescriptorProto",field:[{name:"name",number:1,type:9,label:1},{name:"field",number:2,type:11,label:3,typeName:".google.protobuf.FieldDescriptorProto"},{name:"extension",number:6,type:11,label:3,typeName:".google.protobuf.FieldDescriptorProto"},{name:"nested_type",number:3,type:11,label:3,typeName:".google.protobuf.DescriptorProto"},{name:"enum_type",number:4,type:11,label:3,typeName:".google.protobuf.EnumDescriptorProto"},{name:"extension_range",number:5,type:11,label:3,typeName:".google.protobuf.DescriptorProto.ExtensionRange"},{name:"oneof_decl",number:8,type:11,label:3,typeName:".google.protobuf.OneofDescriptorProto"},{name:"options",number:7,type:11,label:1,typeName:".google.protobuf.MessageOptions"},{name:"reserved_range",number:9,type:11,label:3,typeName:".google.protobuf.DescriptorProto.ReservedRange"},{name:"reserved_name",number:10,type:9,label:3}],nestedType:[{name:"ExtensionRange",field:[{name:"start",number:1,type:5,label:1},{name:"end",number:2,type:5,label:1},{name:"options",number:3,type:11,label:1,typeName:".google.protobuf.ExtensionRangeOptions"}]},{name:"ReservedRange",field:[{name:"start",number:1,type:5,label:1},{name:"end",number:2,type:5,label:1}]}]},{name:"ExtensionRangeOptions",field:[{name:"uninterpreted_option",number:999,type:11,label:3,typeName:".google.protobuf.UninterpretedOption"},{name:"declaration",number:2,type:11,label:3,typeName:".google.protobuf.ExtensionRangeOptions.Declaration",options:{retention:2}},{name:"features",number:50,type:11,label:1,typeName:".google.protobuf.FeatureSet"},{name:"verification",number:3,type:14,label:1,typeName:".google.protobuf.ExtensionRangeOptions.VerificationState",defaultValue:"UNVERIFIED",options:{retention:2}}],nestedType:[{name:"Declaration",field:[{name:"number",number:1,type:5,label:1},{name:"full_name",number:2,type:9,label:1},{name:"type",number:3,type:9,label:1},{name:"reserved",number:5,type:8,label:1},{name:"repeated",number:6,type:8,label:1}]}],enumType:[{name:"VerificationState",value:[{name:"DECLARATION",number:0},{name:"UNVERIFIED",number:1}]}],extensionRange:[{start:1e3,end:536870912}]},{name:"FieldDescriptorProto",field:[{name:"name",number:1,type:9,label:1},{name:"number",number:3,type:5,label:1},{name:"label",number:4,type:14,label:1,typeName:".google.protobuf.FieldDescriptorProto.Label"},{name:"type",number:5,type:14,label:1,typeName:".google.protobuf.FieldDescriptorProto.Type"},{name:"type_name",number:6,type:9,label:1},{name:"extendee",number:2,type:9,label:1},{name:"default_value",number:7,type:9,label:1},{name:"oneof_index",number:9,type:5,label:1},{name:"json_name",number:10,type:9,label:1},{name:"options",number:8,type:11,label:1,typeName:".google.protobuf.FieldOptions"},{name:"proto3_optional",number:17,type:8,label:1}],enumType:[{name:"Type",value:[{name:"TYPE_DOUBLE",number:1},{name:"TYPE_FLOAT",number:2},{name:"TYPE_INT64",number:3},{name:"TYPE_UINT64",number:4},{name:"TYPE_INT32",number:5},{name:"TYPE_FIXED64",number:6},{name:"TYPE_FIXED32",number:7},{name:"TYPE_BOOL",number:8},{name:"TYPE_STRING",number:9},{name:"TYPE_GROUP",number:10},{name:"TYPE_MESSAGE",number:11},{name:"TYPE_BYTES",number:12},{name:"TYPE_UINT32",number:13},{name:"TYPE_ENUM",number:14},{name:"TYPE_SFIXED32",number:15},{name:"TYPE_SFIXED64",number:16},{name:"TYPE_SINT32",number:17},{name:"TYPE_SINT64",number:18}]},{name:"Label",value:[{name:"LABEL_OPTIONAL",number:1},{name:"LABEL_REPEATED",number:3},{name:"LABEL_REQUIRED",number:2}]}]},{name:"OneofDescriptorProto",field:[{name:"name",number:1,type:9,label:1},{name:"options",number:2,type:11,label:1,typeName:".google.protobuf.OneofOptions"}]},{name:"EnumDescriptorProto",field:[{name:"name",number:1,type:9,label:1},{name:"value",number:2,type:11,label:3,typeName:".google.protobuf.EnumValueDescriptorProto"},{name:"options",number:3,type:11,label:1,typeName:".google.protobuf.EnumOptions"},{name:"reserved_range",number:4,type:11,label:3,typeName:".google.protobuf.EnumDescriptorProto.EnumReservedRange"},{name:"reserved_name",number:5,type:9,label:3}],nestedType:[{name:"EnumReservedRange",field:[{name:"start",number:1,type:5,label:1},{name:"end",number:2,type:5,label:1}]}]},{name:"EnumValueDescriptorProto",field:[{name:"name",number:1,type:9,label:1},{name:"number",number:2,type:5,label:1},{name:"options",number:3,type:11,label:1,typeName:".google.protobuf.EnumValueOptions"}]},{name:"ServiceDescriptorProto",field:[{name:"name",number:1,type:9,label:1},{name:"method",number:2,type:11,label:3,typeName:".google.protobuf.MethodDescriptorProto"},{name:"options",number:3,type:11,label:1,typeName:".google.protobuf.ServiceOptions"}]},{name:"MethodDescriptorProto",field:[{name:"name",number:1,type:9,label:1},{name:"input_type",number:2,type:9,label:1},{name:"output_type",number:3,type:9,label:1},{name:"options",number:4,type:11,label:1,typeName:".google.protobuf.MethodOptions"},{name:"client_streaming",number:5,type:8,label:1,defaultValue:"false"},{name:"server_streaming",number:6,type:8,label:1,defaultValue:"false"}]},{name:"FileOptions",field:[{name:"java_package",number:1,type:9,label:1},{name:"java_outer_classname",number:8,type:9,label:1},{name:"java_multiple_files",number:10,type:8,label:1,defaultValue:"false"},{name:"java_generate_equals_and_hash",number:20,type:8,label:1,options:{deprecated:true}},{name:"java_string_check_utf8",number:27,type:8,label:1,defaultValue:"false"},{name:"optimize_for",number:9,type:14,label:1,typeName:".google.protobuf.FileOptions.OptimizeMode",defaultValue:"SPEED"},{name:"go_package",number:11,type:9,label:1},{name:"cc_generic_services",number:16,type:8,label:1,defaultValue:"false"},{name:"java_generic_services",number:17,type:8,label:1,defaultValue:"false"},{name:"py_generic_services",number:18,type:8,label:1,defaultValue:"false"},{name:"deprecated",number:23,type:8,label:1,defaultValue:"false"},{name:"cc_enable_arenas",number:31,type:8,label:1,defaultValue:"true"},{name:"objc_class_prefix",number:36,type:9,label:1},{name:"csharp_namespace",number:37,type:9,label:1},{name:"swift_prefix",number:39,type:9,label:1},{name:"php_class_prefix",number:40,type:9,label:1},{name:"php_namespace",number:41,type:9,label:1},{name:"php_metadata_namespace",number:44,type:9,label:1},{name:"ruby_package",number:45,type:9,label:1},{name:"features",number:50,type:11,label:1,typeName:".google.protobuf.FeatureSet"},{name:"uninterpreted_option",number:999,type:11,label:3,typeName:".google.protobuf.UninterpretedOption"}],enumType:[{name:"OptimizeMode",value:[{name:"SPEED",number:1},{name:"CODE_SIZE",number:2},{name:"LITE_RUNTIME",number:3}]}],extensionRange:[{start:1e3,end:536870912}]},{name:"MessageOptions",field:[{name:"message_set_wire_format",number:1,type:8,label:1,defaultValue:"false"},{name:"no_standard_descriptor_accessor",number:2,type:8,label:1,defaultValue:"false"},{name:"deprecated",number:3,type:8,label:1,defaultValue:"false"},{name:"map_entry",number:7,type:8,label:1},{name:"deprecated_legacy_json_field_conflicts",number:11,type:8,label:1,options:{deprecated:true}},{name:"features",number:12,type:11,label:1,typeName:".google.protobuf.FeatureSet"},{name:"uninterpreted_option",number:999,type:11,label:3,typeName:".google.protobuf.UninterpretedOption"}],extensionRange:[{start:1e3,end:536870912}]},{name:"FieldOptions",field:[{name:"ctype",number:1,type:14,label:1,typeName:".google.protobuf.FieldOptions.CType",defaultValue:"STRING"},{name:"packed",number:2,type:8,label:1},{name:"jstype",number:6,type:14,label:1,typeName:".google.protobuf.FieldOptions.JSType",defaultValue:"JS_NORMAL"},{name:"lazy",number:5,type:8,label:1,defaultValue:"false"},{name:"unverified_lazy",number:15,type:8,label:1,defaultValue:"false"},{name:"deprecated",number:3,type:8,label:1,defaultValue:"false"},{name:"weak",number:10,type:8,label:1,defaultValue:"false"},{name:"debug_redact",number:16,type:8,label:1,defaultValue:"false"},{name:"retention",number:17,type:14,label:1,typeName:".google.protobuf.FieldOptions.OptionRetention"},{name:"targets",number:19,type:14,label:3,typeName:".google.protobuf.FieldOptions.OptionTargetType"},{name:"edition_defaults",number:20,type:11,label:3,typeName:".google.protobuf.FieldOptions.EditionDefault"},{name:"features",number:21,type:11,label:1,typeName:".google.protobuf.FeatureSet"},{name:"feature_support",number:22,type:11,label:1,typeName:".google.protobuf.FieldOptions.FeatureSupport"},{name:"uninterpreted_option",number:999,type:11,label:3,typeName:".google.protobuf.UninterpretedOption"}],nestedType:[{name:"EditionDefault",field:[{name:"edition",number:3,type:14,label:1,typeName:".google.protobuf.Edition"},{name:"value",number:2,type:9,label:1}]},{name:"FeatureSupport",field:[{name:"edition_introduced",number:1,type:14,label:1,typeName:".google.protobuf.Edition"},{name:"edition_deprecated",number:2,type:14,label:1,typeName:".google.protobuf.Edition"},{name:"deprecation_warning",number:3,type:9,label:1},{name:"edition_removed",number:4,type:14,label:1,typeName:".google.protobuf.Edition"}]}],enumType:[{name:"CType",value:[{name:"STRING",number:0},{name:"CORD",number:1},{name:"STRING_PIECE",number:2}]},{name:"JSType",value:[{name:"JS_NORMAL",number:0},{name:"JS_STRING",number:1},{name:"JS_NUMBER",number:2}]},{name:"OptionRetention",value:[{name:"RETENTION_UNKNOWN",number:0},{name:"RETENTION_RUNTIME",number:1},{name:"RETENTION_SOURCE",number:2}]},{name:"OptionTargetType",value:[{name:"TARGET_TYPE_UNKNOWN",number:0},{name:"TARGET_TYPE_FILE",number:1},{name:"TARGET_TYPE_EXTENSION_RANGE",number:2},{name:"TARGET_TYPE_MESSAGE",number:3},{name:"TARGET_TYPE_FIELD",number:4},{name:"TARGET_TYPE_ONEOF",number:5},{name:"TARGET_TYPE_ENUM",number:6},{name:"TARGET_TYPE_ENUM_ENTRY",number:7},{name:"TARGET_TYPE_SERVICE",number:8},{name:"TARGET_TYPE_METHOD",number:9}]}],extensionRange:[{start:1e3,end:536870912}]},{name:"OneofOptions",field:[{name:"features",number:1,type:11,label:1,typeName:".google.protobuf.FeatureSet"},{name:"uninterpreted_option",number:999,type:11,label:3,typeName:".google.protobuf.UninterpretedOption"}],extensionRange:[{start:1e3,end:536870912}]},{name:"EnumOptions",field:[{name:"allow_alias",number:2,type:8,label:1},{name:"deprecated",number:3,type:8,label:1,defaultValue:"false"},{name:"deprecated_legacy_json_field_conflicts",number:6,type:8,label:1,options:{deprecated:true}},{name:"features",number:7,type:11,label:1,typeName:".google.protobuf.FeatureSet"},{name:"uninterpreted_option",number:999,type:11,label:3,typeName:".google.protobuf.UninterpretedOption"}],extensionRange:[{start:1e3,end:536870912}]},{name:"EnumValueOptions",field:[{name:"deprecated",number:1,type:8,label:1,defaultValue:"false"},{name:"features",number:2,type:11,label:1,typeName:".google.protobuf.FeatureSet"},{name:"debug_redact",number:3,type:8,label:1,defaultValue:"false"},{name:"feature_support",number:4,type:11,label:1,typeName:".google.protobuf.FieldOptions.FeatureSupport"},{name:"uninterpreted_option",number:999,type:11,label:3,typeName:".google.protobuf.UninterpretedOption"}],extensionRange:[{start:1e3,end:536870912}]},{name:"ServiceOptions",field:[{name:"features",number:34,type:11,label:1,typeName:".google.protobuf.FeatureSet"},{name:"deprecated",number:33,type:8,label:1,defaultValue:"false"},{name:"uninterpreted_option",number:999,type:11,label:3,typeName:".google.protobuf.UninterpretedOption"}],extensionRange:[{start:1e3,end:536870912}]},{name:"MethodOptions",field:[{name:"deprecated",number:33,type:8,label:1,defaultValue:"false"},{name:"idempotency_level",number:34,type:14,label:1,typeName:".google.protobuf.MethodOptions.IdempotencyLevel",defaultValue:"IDEMPOTENCY_UNKNOWN"},{name:"features",number:35,type:11,label:1,typeName:".google.protobuf.FeatureSet"},{name:"uninterpreted_option",number:999,type:11,label:3,typeName:".google.protobuf.UninterpretedOption"}],enumType:[{name:"IdempotencyLevel",value:[{name:"IDEMPOTENCY_UNKNOWN",number:0},{name:"NO_SIDE_EFFECTS",number:1},{name:"IDEMPOTENT",number:2}]}],extensionRange:[{start:1e3,end:536870912}]},{name:"UninterpretedOption",field:[{name:"name",number:2,type:11,label:3,typeName:".google.protobuf.UninterpretedOption.NamePart"},{name:"identifier_value",number:3,type:9,label:1},{name:"positive_int_value",number:4,type:4,label:1},{name:"negative_int_value",number:5,type:3,label:1},{name:"double_value",number:6,type:1,label:1},{name:"string_value",number:7,type:12,label:1},{name:"aggregate_value",number:8,type:9,label:1}],nestedType:[{name:"NamePart",field:[{name:"name_part",number:1,type:9,label:2},{name:"is_extension",number:2,type:8,label:2}]}]},{name:"FeatureSet",field:[{name:"field_presence",number:1,type:14,label:1,typeName:".google.protobuf.FeatureSet.FieldPresence",options:{retention:1,targets:[4,1],editionDefaults:[{value:"EXPLICIT",edition:900},{value:"IMPLICIT",edition:999},{value:"EXPLICIT",edition:1e3}]}},{name:"enum_type",number:2,type:14,label:1,typeName:".google.protobuf.FeatureSet.EnumType",options:{retention:1,targets:[6,1],editionDefaults:[{value:"CLOSED",edition:900},{value:"OPEN",edition:999}]}},{name:"repeated_field_encoding",number:3,type:14,label:1,typeName:".google.protobuf.FeatureSet.RepeatedFieldEncoding",options:{retention:1,targets:[4,1],editionDefaults:[{value:"EXPANDED",edition:900},{value:"PACKED",edition:999}]}},{name:"utf8_validation",number:4,type:14,label:1,typeName:".google.protobuf.FeatureSet.Utf8Validation",options:{retention:1,targets:[4,1],editionDefaults:[{value:"NONE",edition:900},{value:"VERIFY",edition:999}]}},{name:"message_encoding",number:5,type:14,label:1,typeName:".google.protobuf.FeatureSet.MessageEncoding",options:{retention:1,targets:[4,1],editionDefaults:[{value:"LENGTH_PREFIXED",edition:900}]}},{name:"json_format",number:6,type:14,label:1,typeName:".google.protobuf.FeatureSet.JsonFormat",options:{retention:1,targets:[3,6,1],editionDefaults:[{value:"LEGACY_BEST_EFFORT",edition:900},{value:"ALLOW",edition:999}]}},{name:"enforce_naming_style",number:7,type:14,label:1,typeName:".google.protobuf.FeatureSet.EnforceNamingStyle",options:{retention:2,targets:[1,2,3,4,5,6,7,8,9],editionDefaults:[{value:"STYLE_LEGACY",edition:900},{value:"STYLE2024",edition:1001}]}}],enumType:[{name:"FieldPresence",value:[{name:"FIELD_PRESENCE_UNKNOWN",number:0},{name:"EXPLICIT",number:1},{name:"IMPLICIT",number:2},{name:"LEGACY_REQUIRED",number:3}]},{name:"EnumType",value:[{name:"ENUM_TYPE_UNKNOWN",number:0},{name:"OPEN",number:1},{name:"CLOSED",number:2}]},{name:"RepeatedFieldEncoding",value:[{name:"REPEATED_FIELD_ENCODING_UNKNOWN",number:0},{name:"PACKED",number:1},{name:"EXPANDED",number:2}]},{name:"Utf8Validation",value:[{name:"UTF8_VALIDATION_UNKNOWN",number:0},{name:"VERIFY",number:2},{name:"NONE",number:3}]},{name:"MessageEncoding",value:[{name:"MESSAGE_ENCODING_UNKNOWN",number:0},{name:"LENGTH_PREFIXED",number:1},{name:"DELIMITED",number:2}]},{name:"JsonFormat",value:[{name:"JSON_FORMAT_UNKNOWN",number:0},{name:"ALLOW",number:1},{name:"LEGACY_BEST_EFFORT",number:2}]},{name:"EnforceNamingStyle",value:[{name:"ENFORCE_NAMING_STYLE_UNKNOWN",number:0},{name:"STYLE2024",number:1},{name:"STYLE_LEGACY",number:2}]}],extensionRange:[{start:1e3,end:9995},{start:9995,end:1e4},{start:1e4,end:10001}]},{name:"FeatureSetDefaults",field:[{name:"defaults",number:1,type:11,label:3,typeName:".google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault"},{name:"minimum_edition",number:4,type:14,label:1,typeName:".google.protobuf.Edition"},{name:"maximum_edition",number:5,type:14,label:1,typeName:".google.protobuf.Edition"}],nestedType:[{name:"FeatureSetEditionDefault",field:[{name:"edition",number:3,type:14,label:1,typeName:".google.protobuf.Edition"},{name:"overridable_features",number:4,type:11,label:1,typeName:".google.protobuf.FeatureSet"},{name:"fixed_features",number:5,type:11,label:1,typeName:".google.protobuf.FeatureSet"}]}]},{name:"SourceCodeInfo",field:[{name:"location",number:1,type:11,label:3,typeName:".google.protobuf.SourceCodeInfo.Location"}],nestedType:[{name:"Location",field:[{name:"path",number:1,type:5,label:3,options:{packed:true}},{name:"span",number:2,type:5,label:3,options:{packed:true}},{name:"leading_comments",number:3,type:9,label:1},{name:"trailing_comments",number:4,type:9,label:1},{name:"leading_detached_comments",number:6,type:9,label:3}]}],extensionRange:[{start:536e6,end:536000001}]},{name:"GeneratedCodeInfo",field:[{name:"annotation",number:1,type:11,label:3,typeName:".google.protobuf.GeneratedCodeInfo.Annotation"}],nestedType:[{name:"Annotation",field:[{name:"path",number:1,type:5,label:3,options:{packed:true}},{name:"source_file",number:2,type:9,label:1},{name:"begin",number:3,type:5,label:1},{name:"end",number:4,type:5,label:1},{name:"semantic",number:5,type:14,label:1,typeName:".google.protobuf.GeneratedCodeInfo.Annotation.Semantic"}],enumType:[{name:"Semantic",value:[{name:"NONE",number:0},{name:"SET",number:1},{name:"ALIAS",number:2}]}]}]}],enumType:[{name:"Edition",value:[{name:"EDITION_UNKNOWN",number:0},{name:"EDITION_LEGACY",number:900},{name:"EDITION_PROTO2",number:998},{name:"EDITION_PROTO3",number:999},{name:"EDITION_2023",number:1e3},{name:"EDITION_2024",number:1001},{name:"EDITION_1_TEST_ONLY",number:1},{name:"EDITION_2_TEST_ONLY",number:2},{name:"EDITION_99997_TEST_ONLY",number:99997},{name:"EDITION_99998_TEST_ONLY",number:99998},{name:"EDITION_99999_TEST_ONLY",number:99999},{name:"EDITION_MAX",number:2147483647}]}]}),1);var zt;var Xt;var qt;var Qt;var Zt;var er;var tr;var rr;var nr;var ir;var or;var sr;var ar;var cr;var lr;var ur;var pr;var hr;(function(e){e[e.DECLARATION=0]="DECLARATION";e[e.UNVERIFIED=1]="UNVERIFIED"})(zt||={});(function(e){e[e.DOUBLE=1]="DOUBLE";e[e.FLOAT=2]="FLOAT";e[e.INT64=3]="INT64";e[e.UINT64=4]="UINT64";e[e.INT32=5]="INT32";e[e.FIXED64=6]="FIXED64";e[e.FIXED32=7]="FIXED32";e[e.BOOL=8]="BOOL";e[e.STRING=9]="STRING";e[e.GROUP=10]="GROUP";e[e.MESSAGE=11]="MESSAGE";e[e.BYTES=12]="BYTES";e[e.UINT32=13]="UINT32";e[e.ENUM=14]="ENUM";e[e.SFIXED32=15]="SFIXED32";e[e.SFIXED64=16]="SFIXED64";e[e.SINT32=17]="SINT32";e[e.SINT64=18]="SINT64"})(Xt||={});(function(e){e[e.OPTIONAL=1]="OPTIONAL";e[e.REPEATED=3]="REPEATED";e[e.REQUIRED=2]="REQUIRED"})(qt||={});(function(e){e[e.SPEED=1]="SPEED";e[e.CODE_SIZE=2]="CODE_SIZE";e[e.LITE_RUNTIME=3]="LITE_RUNTIME"})(Qt||={});(function(e){e[e.STRING=0]="STRING";e[e.CORD=1]="CORD";e[e.STRING_PIECE=2]="STRING_PIECE"})(Zt||={});(function(e){e[e.JS_NORMAL=0]="JS_NORMAL";e[e.JS_STRING=1]="JS_STRING";e[e.JS_NUMBER=2]="JS_NUMBER"})(er||={});(function(e){e[e.RETENTION_UNKNOWN=0]="RETENTION_UNKNOWN";e[e.RETENTION_RUNTIME=1]="RETENTION_RUNTIME";e[e.RETENTION_SOURCE=2]="RETENTION_SOURCE"})(tr||={});(function(e){e[e.TARGET_TYPE_UNKNOWN=0]="TARGET_TYPE_UNKNOWN";e[e.TARGET_TYPE_FILE=1]="TARGET_TYPE_FILE";e[e.TARGET_TYPE_EXTENSION_RANGE=2]="TARGET_TYPE_EXTENSION_RANGE";e[e.TARGET_TYPE_MESSAGE=3]="TARGET_TYPE_MESSAGE";e[e.TARGET_TYPE_FIELD=4]="TARGET_TYPE_FIELD";e[e.TARGET_TYPE_ONEOF=5]="TARGET_TYPE_ONEOF";e[e.TARGET_TYPE_ENUM=6]="TARGET_TYPE_ENUM";e[e.TARGET_TYPE_ENUM_ENTRY=7]="TARGET_TYPE_ENUM_ENTRY";e[e.TARGET_TYPE_SERVICE=8]="TARGET_TYPE_SERVICE";e[e.TARGET_TYPE_METHOD=9]="TARGET_TYPE_METHOD"})(rr||={});(function(e){e[e.IDEMPOTENCY_UNKNOWN=0]="IDEMPOTENCY_UNKNOWN";e[e.NO_SIDE_EFFECTS=1]="NO_SIDE_EFFECTS";e[e.IDEMPOTENT=2]="IDEMPOTENT"})(nr||={});(function(e){e[e.FIELD_PRESENCE_UNKNOWN=0]="FIELD_PRESENCE_UNKNOWN";e[e.EXPLICIT=1]="EXPLICIT";e[e.IMPLICIT=2]="IMPLICIT";e[e.LEGACY_REQUIRED=3]="LEGACY_REQUIRED"})(ir||={});(function(e){e[e.ENUM_TYPE_UNKNOWN=0]="ENUM_TYPE_UNKNOWN";e[e.OPEN=1]="OPEN";e[e.CLOSED=2]="CLOSED"})(or||={});(function(e){e[e.REPEATED_FIELD_ENCODING_UNKNOWN=0]="REPEATED_FIELD_ENCODING_UNKNOWN";e[e.PACKED=1]="PACKED";e[e.EXPANDED=2]="EXPANDED"})(sr||={});(function(e){e[e.UTF8_VALIDATION_UNKNOWN=0]="UTF8_VALIDATION_UNKNOWN";e[e.VERIFY=2]="VERIFY";e[e.NONE=3]="NONE"})(ar||={});(function(e){e[e.MESSAGE_ENCODING_UNKNOWN=0]="MESSAGE_ENCODING_UNKNOWN";e[e.LENGTH_PREFIXED=1]="LENGTH_PREFIXED";e[e.DELIMITED=2]="DELIMITED"})(cr||={});(function(e){e[e.JSON_FORMAT_UNKNOWN=0]="JSON_FORMAT_UNKNOWN";e[e.ALLOW=1]="ALLOW";e[e.LEGACY_BEST_EFFORT=2]="LEGACY_BEST_EFFORT"})(lr||={});(function(e){e[e.ENFORCE_NAMING_STYLE_UNKNOWN=0]="ENFORCE_NAMING_STYLE_UNKNOWN";e[e.STYLE2024=1]="STYLE2024";e[e.STYLE_LEGACY=2]="STYLE_LEGACY"})(ur||={});(function(e){e[e.NONE=0]="NONE";e[e.SET=1]="SET";e[e.ALIAS=2]="ALIAS"})(pr||={});(function(e){e[e.EDITION_UNKNOWN=0]="EDITION_UNKNOWN";e[e.EDITION_LEGACY=900]="EDITION_LEGACY";e[e.EDITION_PROTO2=998]="EDITION_PROTO2";e[e.EDITION_PROTO3=999]="EDITION_PROTO3";e[e.EDITION_2023=1e3]="EDITION_2023";e[e.EDITION_2024=1001]="EDITION_2024";e[e.EDITION_1_TEST_ONLY=1]="EDITION_1_TEST_ONLY";e[e.EDITION_2_TEST_ONLY=2]="EDITION_2_TEST_ONLY";e[e.EDITION_99997_TEST_ONLY=99997]="EDITION_99997_TEST_ONLY";e[e.EDITION_99998_TEST_ONLY=99998]="EDITION_99998_TEST_ONLY";e[e.EDITION_99999_TEST_ONLY=99999]="EDITION_99999_TEST_ONLY";e[e.EDITION_MAX=2147483647]="EDITION_MAX"})(hr||={});const fr={readUnknownFields:true};function dr(e,t,r){const n=De(e,undefined,false);yr(n,new Oe(t),function(e){if(e){return Object.assign(Object.assign({},fr),e)}else{return fr}}(r),false,t.byteLength);return n.message}function yr(e,t,r,n,i){const s=n?t.len:t.pos+i;let a;let c;const l=e.getUnknown()??[];while(t.pos<s&&([a,c]=t.tag(),!n||c!=Te.EndGroup)){const n=e.findNumber(a);if(n){mr(e,t,n,c,r)}else{const e=t.skip(c,a);if(r.readUnknownFields){l.push({no:a,wireType:c,data:e})}}}if(n&&(c!=Te.EndGroup||a!==i)){throw new Error("invalid end group tag")}if(l.length>0){e.setUnknown(l)}}function mr(e,t,r,n,i){switch(r.fieldKind){case"scalar":e.set(r,vr(t,r.scalar));break;case"enum":e.set(r,vr(t,M.INT32));break;case"message":e.set(r,gr(t,i,r,e.get(r)));break;case"list":(function(e,t,r,n){const o=r.field();if(o.listKind==="message"){r.add(gr(e,n,o));return}const s=o.scalar??M.INT32;if(t!=Te.LengthDelimited||s==M.STRING||s==M.BYTES){r.add(vr(e,s));return}const a=e.uint32()+e.pos;while(e.pos<a){r.add(vr(e,s))}})(t,n,e.get(r),i);break;case"map":(function(e,t,r){const n=t.field();let i;let o;const s=e.pos+e.uint32();while(e.pos<s){const[t]=e.tag();switch(t){case 1:i=vr(e,n.mapKey);break;case 2:switch(n.mapKind){case"scalar":o=vr(e,n.scalar);break;case"enum":o=e.int32();break;case"message":o=gr(e,r,n)}}}if(i===undefined){i=ee(n.mapKey,false)}if(o===undefined){switch(n.mapKind){case"scalar":o=ee(n.scalar,false);break;case"enum":o=n.enum.values[0].number;break;case"message":o=De(n.message,undefined,false)}}t.set(i,o)})(t,e.get(r),i)}}function gr(e,t,r,n){const i=r.delimitedEncoding;const o=n??De(r.message,undefined,false);yr(o,e,t,i,i?r.number:e.uint32());return o}function vr(e,t){switch(t){case M.STRING:return e.string();case M.BOOL:return e.bool();case M.DOUBLE:return e.double();case M.FLOAT:return e.float();case M.INT32:return e.int32();case M.INT64:return e.int64();case M.UINT64:return e.uint64();case M.FIXED64:return e.fixed64();case M.BYTES:return e.bytes();case M.FIXED32:return e.fixed32();case M.SFIXED32:return e.sfixed32();case M.SFIXED64:return e.sfixed64();case M.SINT64:return e.sint64();case M.UINT32:return e.uint32();case M.SINT32:return e.sint32()}}function br(e,t){const n=dr(Jt,function(e){const t=function(){if(!et){et=[];if(!Ze){Ze="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");Ze.slice(0,-2).concat("-","_")}const e=Ze;for(let t=0;t<e.length;t++){et[e[t].charCodeAt(0)]=t}et["-".charCodeAt(0)]=e.indexOf("+");et["_".charCodeAt(0)]=e.indexOf("/")}return et}();let r=e.length*3/4;if(e[e.length-2]=="="){r-=2}else if(e[e.length-1]=="="){r-=1}let n;let i=new Uint8Array(r);let o=0;let s=0;let a=0;for(let r=0;r<e.length;r++){n=t[e.charCodeAt(r)];if(n===undefined){switch(e[r]){case"=":s=0;case"\n":case"\r":case"\t":case" ":continue;default:throw Error("invalid base64 string")}}switch(s){case 0:a=n;s=1;break;case 1:i[o++]=a<<2|(n&48)>>4;a=n;s=2;break;case 2:i[o++]=(a&15)<<4|(n&60)>>2;a=n;s=3;break;case 3:i[o++]=(a&3)<<6|n;s=0}}if(s==1){throw Error("invalid base64 string")}return i.subarray(0,o)}(e));n.messageType.forEach(it);n.dependency=(t==null?undefined:t.map(e=>e.proto.name))??[];return st(n,e=>t==null?undefined:t.find(t=>t.proto.name===e)).getFile(n.name)}const Er=br("Ch9nb29nbGUvcHJvdG9idWYvdGltZXN0YW1wLnByb3RvEg9nb29nbGUucHJvdG9idWYiKwoJVGltZXN0YW1wEg8KB3NlY29uZHMYASABKAMSDQoFbmFub3MYAiABKAVChQEKE2NvbS5nb29nbGUucHJvdG9idWZCDlRpbWVzdGFtcFByb3RvUAFaMmdvb2dsZS5nb2xhbmcub3JnL3Byb3RvYnVmL3R5cGVzL2tub3duL3RpbWVzdGFtcHBi+AEBogIDR1BCqgIeR29vZ2xlLlByb3RvYnVmLldlbGxLbm93blR5cGVzYgZwcm90bzM");const wr=Yt(Er,0);const Sr=Yt(br("CiBsaWNlbnNlX2tleS92MS9saWNlbnNlX2tleS5wcm90bxIObGljZW5zZV9rZXkudjEiQwoNT3JpZ2luTWF0Y2hlchIPCgVleGFjdBgBIAEoCUgAEhAKBnJlZ2V4cBgCIAEoCUgAQg8KDW1hdGNoX3BhdHRlcm4iYQoKRXhwaXJhdGlvbhIpCgVzdGFydBgBIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASKAoFZ3JhY2UYAiABKAsyGS5nb29nbGUucHJvdG9idWYuRHVyYXRpb24iKAoXTWlub3JWZXJzaW9uUmVzdHJpY3Rpb24SDQoFbWlub3IYASABKA0iNwoXUGF0Y2hWZXJzaW9uUmVzdHJpY3Rpb24SDQoFbWlub3IYASABKA0SDQoFcGF0Y2gYAiABKA0iqwEKDlZlcnNpb25NYXRjaGVyEkAKDW1pbm9yX3ZlcnNpb24YASABKAsyJy5saWNlbnNlX2tleS52MS5NaW5vclZlcnNpb25SZXN0cmljdGlvbkgAEkAKDXBhdGNoX3ZlcnNpb24YAiABKAsyJy5saWNlbnNlX2tleS52MS5QYXRjaFZlcnNpb25SZXN0cmljdGlvbkgAQhUKE3ZlcnNpb25fcmVzdHJpY3Rpb24i2gIKDkxpY2Vuc2VQYXlsb2FkEgoKAmlkGAEgASgJEg0KBXRyaWFsGAogASgIEhMKC2RldmVsb3BtZW50GBQgASgIEhIKCmVkaXRvcl9ncGwYHiABKAgSLgoKZXhwaXJhdGlvbhgoIAEoCzIaLmxpY2Vuc2Vfa2V5LnYxLkV4cGlyYXRpb24SEgoKZWRpdG9yX3VpZBgyIAEoCRIQCghwYWdlX3VpZBg8IAEoCRIcChRlZGl0b3JfbWFqb3JfdmVyc2lvbhhGIAEoDRI3Cg9lZGl0b3JfdmVyc2lvbnMYUCADKAsyHi5saWNlbnNlX2tleS52MS5WZXJzaW9uTWF0Y2hlchInCgdwbHVnaW5zGFogAygOMhYubGljZW5zZV9rZXkudjEuUGx1Z2luEi4KB29yaWdpbnMYZCADKAsyHS5saWNlbnNlX2tleS52MS5PcmlnaW5NYXRjaGVyKr8GCgZQbHVnaW4SFgoSUExVR0lOX1VOU1BFQ0lGSUVEEAASDgoKUExVR0lOX0FMTBABEhYKElBMVUdJTl9BMTFZQ0hFQ0tFUhACEhIKDlBMVUdJTl9BRFZDT0RFEAMSEwoPUExVR0lOX0FEVlRBQkxFEAQSFgoSUExVR0lOX0FEVlRFTVBMQVRFEAUSDQoJUExVR0lOX0FJEAYSFgoSUExVR0lOX0FVVE9DT1JSRUNUEAcSFQoRUExVR0lOX0NBU0VDSEFOR0UQCBIUChBQTFVHSU5fQ0hFQ0tMSVNUEAkSFAoQUExVR0lOX0VESVRJTUFHRRAKEhEKDVBMVUdJTl9FWFBPUlQQCxIUChBQTFVHSU5fRVhQT1JUUERGEAwSFQoRUExVR0lOX0VYUE9SVFdPUkQQDRIUChBQTFVHSU5fRk9PVE5PVEVTEA4SGAoUUExVR0lOX0ZPUk1BVFBBSU5URVIQDxIVChFQTFVHSU5fSU1QT1JUV09SRBAQEhQKEFBMVUdJTl9JTkxJTkVDU1MQERIWChJQTFVHSU5fTElOS0NIRUNLRVIQEhIPCgtQTFVHSU5fTUFUSBATEhMKD1BMVUdJTl9NQVJLRE9XThAUEhUKEVBMVUdJTl9NRURJQUVNQkVEEBUSEwoPUExVR0lOX01FTlRJT05TEBYSFAoQUExVR0lOX01FUkdFVEFHUxAXEhQKEFBMVUdJTl9QQUdFRU1CRUQQGBIXChNQTFVHSU5fUEVSTUFORU5UUEVOEBkSFQoRUExVR0lOX1BPV0VSUEFTVEUQGhIaChZQTFVHSU5fUkVWSVNJT05ISVNUT1JZEBsSGgoWUExVR0lOX1RBQkxFT0ZDT05URU5UUxAcEhcKE1BMVUdJTl9USU5ZQ09NTUVOVFMQHRIUChBQTFVHSU5fVElOWURSSVZFEB4SHgoaUExVR0lOX1RJTllNQ0VTUEVMTENIRUNLRVIQHxIVChFQTFVHSU5fVFlQT0dSQVBIWRAgEhUKEVBMVUdJTl9VUExPQURDQVJFECESGQoVUExVR0lOX1NVR0dFU1RFREVESVRTECISFwoTUExVR0lOX0ZVTExQQUdFSFRNTBAjQnoKEmNvbS5saWNlbnNlX2tleS52MUIPTGljZW5zZUtleVByb3RvUAGiAgNMWFiqAg1MaWNlbnNlS2V5LlYxygINTGljZW5zZUtleVxWMeICGUxpY2Vuc2VLZXlcVjFcR1BCTWV0YWRhdGHqAg5MaWNlbnNlS2V5OjpWMWIGcHJvdG8z",[br("Ch5nb29nbGUvcHJvdG9idWYvZHVyYXRpb24ucHJvdG8SD2dvb2dsZS5wcm90b2J1ZiIqCghEdXJhdGlvbhIPCgdzZWNvbmRzGAEgASgDEg0KBW5hbm9zGAIgASgFQoMBChNjb20uZ29vZ2xlLnByb3RvYnVmQg1EdXJhdGlvblByb3RvUAFaMWdvb2dsZS5nb2xhbmcub3JnL3Byb3RvYnVmL3R5cGVzL2tub3duL2R1cmF0aW9ucGL4AQGiAgNHUEKqAh5Hb29nbGUuUHJvdG9idWYuV2VsbEtub3duVHlwZXNiBnByb3RvMw"),Er]),5);var _0x369b1b;(function(_0x556a83){_0x556a83[_0x556a83.UNSPECIFIED=0]="UNSPECIFIED";_0x556a83[_0x556a83.ALL=1]="ALL";_0x556a83[_0x556a83.A11YCHECKER=2]="A11YCHECKER";_0x556a83[_0x556a83.ADVCODE=3]="ADVCODE";_0x556a83[_0x556a83.ADVTABLE=4]="ADVTABLE";_0x556a83[_0x556a83.ADVTEMPLATE=5]="ADVTEMPLATE";_0x556a83[_0x556a83.AI=6]="AI";_0x556a83[_0x556a83.AUTOCORRECT=7]="AUTOCORRECT";_0x556a83[_0x556a83.CASECHANGE=8]="CASECHANGE";_0x556a83[_0x556a83.CHECKLIST=9]="CHECKLIST";_0x556a83[_0x556a83.EDITIMAGE=10]="EDITIMAGE";_0x556a83[_0x556a83.EXPORT=11]="EXPORT";_0x556a83[_0x556a83.EXPORTPDF=12]="EXPORTPDF";_0x556a83[_0x556a83.EXPORTWORD=13]="EXPORTWORD";_0x556a83[_0x556a83.FOOTNOTES=14]="FOOTNOTES";_0x556a83[_0x556a83.FORMATPAINTER=15]="FORMATPAINTER";_0x556a83[_0x556a83.IMPORTWORD=16]="IMPORTWORD";_0x556a83[_0x556a83.INLINECSS=17]="INLINECSS";_0x556a83[_0x556a83.LINKCHECKER=18]="LINKCHECKER";_0x556a83[_0x556a83.MATH=19]="MATH";_0x556a83[_0x556a83.MARKDOWN=20]="MARKDOWN";_0x556a83[_0x556a83.MEDIAEMBED=21]="MEDIAEMBED";_0x556a83[_0x556a83.MENTIONS=22]="MENTIONS";_0x556a83[_0x556a83.MERGETAGS=23]="MERGETAGS";_0x556a83[_0x556a83.PAGEEMBED=24]="PAGEEMBED";_0x556a83[_0x556a83.PERMANENTPEN=25]="PERMANENTPEN";_0x556a83[_0x556a83.POWERPASTE=26]="POWERPASTE";_0x556a83[_0x556a83.REVISIONHISTORY=27]="REVISIONHISTORY";_0x556a83[_0x556a83.TABLEOFCONTENTS=28]="TABLEOFCONTENTS";_0x556a83[_0x556a83.TINYCOMMENTS=29]="TINYCOMMENTS";_0x556a83[_0x556a83.TINYDRIVE=30]="TINYDRIVE";_0x556a83[_0x556a83.TINYMCESPELLCHECKER=31]="TINYMCESPELLCHECKER";_0x556a83[_0x556a83.TYPOGRAPHY=32]="TYPOGRAPHY";_0x556a83[_0x556a83.UPLOADCARE=33]="UPLOADCARE";_0x556a83[_0x556a83.SUGGESTEDEDITS=34]="SUGGESTEDEDITS";_0x556a83[_0x556a83.FULLPAGEHTML=35]="FULLPAGEHTML"})(_0x369b1b||={});const _0x449265=_0x5ae8b7=>function(_0x2f5dbd){return new Date(function(_0x3d2a13){return Number(_0x3d2a13.seconds)*1e3+Math.ceil(_0x3d2a13.nanos/1e6)}(_0x2f5dbd))}(he(wr,_0x5ae8b7));const _0x56babb=_0x59303b=>Number(_0x59303b.seconds??0)*1e3;const _0x3a8ac5=_0x1f9041=>{const _0x664fb6=p.from(_0x1f9041.grace).getOr(0);return p.from(_0x1f9041.start).map(_0x432a34=>new Date(_0x432a34.getTime()+_0x664fb6))};const _0x350c42=_0x35ccf1=>({$typeName:"license_key.v1.Expiration",start:p.from(_0x35ccf1.start).map(_0x449265).getOrUndefined(),grace:p.from(_0x35ccf1.grace).map(_0x56babb).getOrUndefined()});Object.keys(_0x369b1b).filter(_0x27f8c7=>Number.isNaN(+_0x27f8c7));const _0xf6e815=_0x5a801b=>_0x369b1b[_0x5a801b];var _0x4108c4;(function(_0x2e8cf6){_0x2e8cf6.FormatInvalid="decode_format_invalid";_0x2e8cf6.PayloadFailture="decode_payload_failure";_0x2e8cf6.ParseFailure="decode_parse_failure"})(_0x4108c4||={});const _0x387dcf=/^(GPL\+)?T(\d+)LK:([a-zA-Z0-9_-]+\.([a-zA-Z0-9_-]+)\.[a-zA-Z0-9_-]+)$/;const _0x56e779=_0x15fa54=>(_0x4b68e3=>v.fromOption(p.from(_0x387dcf.exec(_0x4b68e3)),{type:_0x4108c4.FormatInvalid,message:"License key is an incorrect format."}).bind(_0x557250=>{const _0x3d84f0=i(_0x557250[1]);const _0x24310a=((_0x199269,_0x32a7be=10)=>{const _0x2cbbc3=parseInt(_0x199269,_0x32a7be);if(isNaN(_0x2cbbc3)){return p.none()}else{return p.some(_0x2cbbc3)}})(_0x557250[2]);_0x4156dc=p.from(_0x557250[3]);_0x2ec4ee=(_0xf4de3b,_0x4b1c67)=>({hasGplTag:_0x3d84f0,version:_0xf4de3b,jws:_0x4b1c67});const _0x4ff4b8=(_0x6b7d28=_0x24310a).isSome()&&_0x4156dc.isSome()?p.some(_0x2ec4ee(_0x6b7d28.getOrDie(),_0x4156dc.getOrDie())):p.none();var _0x6b7d28;var _0x4156dc;var _0x2ec4ee;return v.fromOption(_0x4ff4b8,{type:_0x4108c4.FormatInvalid,message:"License key is an incorrect format."})}))(_0x15fa54).bind(_0xb52f9b=>(_0x166c76=>{const _0x47707c=_0x166c76.split(".");if(_0x47707c.length!==3){return v.error(_0x28ac07.FormatInvalid)}const[_0x4a6f37,_0x296369,_0x502785]=_0x47707c;const _0x54f981=new window.TextDecoder;const _0x1a6a33=_0x3f9df1(_0x4a6f37).bind(_0xe55f1e=>_0x2a81b9(()=>JSON.parse(_0x54f981.decode(_0xe55f1e)),_0x14826e("Unable to parse protected header"))).toOptional();_0x9fa609=_0x3f9df1(_0x296369).toOptional();_0x4db416=_0x3f9df1(_0x502785).toOptional();_0x7052f2=(_0x55b5f9,_0x1468cb,_0x3ba699)=>({protectedHeader:_0x55b5f9,payload:_0x1468cb,signature:_0x3ba699});const _0xe498e1=(_0xabe6e9=_0x1a6a33).isSome()&&_0x9fa609.isSome()&&_0x4db416.isSome()?p.some(_0x7052f2(_0xabe6e9.getOrDie(),_0x9fa609.getOrDie(),_0x4db416.getOrDie())):p.none();var _0xabe6e9;var _0x9fa609;var _0x4db416;var _0x7052f2;return v.fromOption(_0xe498e1,_0x28ac07.DecodeFailure)})(_0xb52f9b.jws).mapError(()=>({type:_0x4108c4.ParseFailure,message:"License key is an incorrect format."})).bind(_0x1679eb=>{return(_0x45598d=_0x1679eb.payload,(_0x4e6a35=>(_0x9bf1fa=>{try{const _0x3b90c9=dr(Sr,_0x9bf1fa,{readUnknownFields:false});return v.value(_0x3b90c9)}catch(_0xd28be2){const _0x35a05f=_0xd28be2 instanceof Error?_0xd28be2:new Error("Unable to decode payload");return v.error(_0x35a05f)}})(_0x4e6a35).map(_0x404594=>{const _0x12ed12=_0x404594.expiration;const _0x530a25=p.from(_0x12ed12).map(_0x350c42).getOrUndefined();return{..._0x404594,expiration:_0x530a25}}))(_0x45598d).mapError(()=>({type:_0x4108c4.PayloadFailture,message:"License key payload is invalid."}))).map(_0x2c5102=>({..._0xb52f9b,..._0x1679eb,payload:_0x2c5102}));var _0x45598d}));var Rr;(function(e){(function(){var t=typeof globalThis=="object"?globalThis:typeof global=="object"?global:typeof self=="object"?self:typeof this=="object"?this:function(){try{return Function("return this;")()}catch(e){}}()||function(){try{return(0,eval)("(function() { return this; })()")}catch(e){}}();var r=n(e);function n(e,t){return function(r,n){Object.defineProperty(e,r,{configurable:true,writable:true,value:n});if(t){t(r,n)}}}if(t.Reflect!==undefined){r=n(t.Reflect,r)}(function(e,t){var r=Object.prototype.hasOwnProperty;var n=typeof Symbol=="function";var i=n&&Symbol.toPrimitive!==undefined?Symbol.toPrimitive:"@@toPrimitive";var o=n&&Symbol.iterator!==undefined?Symbol.iterator:"@@iterator";var s=typeof Object.create=="function";var a={__proto__:[]}instanceof Array;var c=!s&&!a;var l={create:s?function(){return H(Object.create(null))}:a?function(){return H({__proto__:null})}:function(){return H({})},has:c?function(e,t){return r.call(e,t)}:function(e,t){return t in e},get:c?function(e,t){if(r.call(e,t)){return e[t]}else{return undefined}}:function(e,t){return e[t]}};var u=Object.getPrototypeOf(Function);var p=typeof Map=="function"&&typeof Map.prototype.entries=="function"?Map:function(){var e={};var t=[];var r=function(){function e(e,t,r){this._index=0;this._keys=e;this._values=t;this._selector=r}e.prototype["@@iterator"]=function(){return this};e.prototype[o]=function(){return this};e.prototype.next=function(){var e=this._index;if(e>=0&&e<this._keys.length){var r=this._selector(this._keys[e],this._values[e]);if(e+1>=this._keys.length){this._index=-1;this._keys=t;this._values=t}else{this._index++}return{value:r,done:false}}return{value:undefined,done:true}};e.prototype.throw=function(e){if(this._index>=0){this._index=-1;this._keys=t;this._values=t}throw e};e.prototype.return=function(e){if(this._index>=0){this._index=-1;this._keys=t;this._values=t}return{value:e,done:true}};return e}();var n=function(){function t(){this._keys=[];this._values=[];this._cacheKey=e;this._cacheIndex=-2}Object.defineProperty(t.prototype,"size",{get:function(){return this._keys.length},enumerable:true,configurable:true});t.prototype.has=function(e){return this._find(e,false)>=0};t.prototype.get=function(e){var t=this._find(e,false);if(t>=0){return this._values[t]}else{return undefined}};t.prototype.set=function(e,t){var r=this._find(e,true);this._values[r]=t;return this};t.prototype.delete=function(t){var r=this._find(t,false);if(r>=0){for(var n=this._keys.length,i=r+1;i<n;i++){this._keys[i-1]=this._keys[i];this._values[i-1]=this._values[i]}this._keys.length--;this._values.length--;if(U(t,this._cacheKey)){this._cacheKey=e;this._cacheIndex=-2}return true}return false};t.prototype.clear=function(){this._keys.length=0;this._values.length=0;this._cacheKey=e;this._cacheIndex=-2};t.prototype.keys=function(){return new r(this._keys,this._values,i)};t.prototype.values=function(){return new r(this._keys,this._values,s)};t.prototype.entries=function(){return new r(this._keys,this._values,a)};t.prototype["@@iterator"]=function(){return this.entries()};t.prototype[o]=function(){return this.entries()};t.prototype._find=function(e,t){if(!U(this._cacheKey,e)){this._cacheIndex=-1;for(var r=0;r<this._keys.length;r++){if(U(this._keys[r],e)){this._cacheIndex=r;break}}}if(this._cacheIndex<0&&t){this._cacheIndex=this._keys.length;this._keys.push(e);this._values.push(undefined)}return this._cacheIndex};return t}();return n;function i(e,t){return e}function s(e,t){return t}function a(e,t){return[e,t]}}();var h=typeof Set=="function"&&typeof Set.prototype.entries=="function"?Set:function(){var e=function(){function e(){this._map=new p}Object.defineProperty(e.prototype,"size",{get:function(){return this._map.size},enumerable:true,configurable:true});e.prototype.has=function(e){return this._map.has(e)};e.prototype.add=function(e){this._map.set(e,e);return this};e.prototype.delete=function(e){return this._map.delete(e)};e.prototype.clear=function(){this._map.clear()};e.prototype.keys=function(){return this._map.keys()};e.prototype.values=function(){return this._map.keys()};e.prototype.entries=function(){return this._map.entries()};e.prototype["@@iterator"]=function(){return this.keys()};e.prototype[o]=function(){return this.keys()};return e}();return e}();var f=typeof WeakMap=="function"?WeakMap:function(){var e=l.create();var t=n();return function(){function e(){this._key=n()}e.prototype.has=function(e){var t=i(e,false);return t!==undefined&&l.has(t,this._key)};e.prototype.get=function(e){var t=i(e,false);if(t!==undefined){return l.get(t,this._key)}else{return undefined}};e.prototype.set=function(e,t){i(e,true)[this._key]=t;return this};e.prototype.delete=function(e){var t=i(e,false);return t!==undefined&&delete t[this._key]};e.prototype.clear=function(){this._key=n()};return e}();function n(){var t;do{t="@@WeakMap@@"+s()}while(l.has(e,t));e[t]=true;return t}function i(e,n){if(!r.call(e,t)){if(!n){return}Object.defineProperty(e,t,{value:l.create()})}return e[t]}function o(e,t){for(var r=0;r<t;++r){e[r]=Math.random()*255|0}return e}function s(){var e=function(e){if(typeof Uint8Array=="function"){var t=new Uint8Array(e);if(typeof crypto!="undefined"){crypto.getRandomValues(t)}else if(typeof msCrypto!="undefined"){msCrypto.getRandomValues(t)}else{o(t,e)}return t}return o(new Array(e),e)}(16);e[6]=e[6]&79|64;e[8]=e[8]&191|128;var t="";for(var r=0;r<16;++r){var n=e[r];if(r===4||r===6||r===8){t+="-"}if(n<16){t+="0"}t+=n.toString(16).toLowerCase()}return t}}();var d=n?Symbol.for("@reflect-metadata:registry"):undefined;var y=function(){var e;if(!T(d)&&I(t.Reflect)&&Object.isExtensible(t.Reflect)){e=t.Reflect[d]}if(T(e)){e=function(){var e;var r;var n;var i;if(!T(d)&&t.Reflect!==undefined&&!(d in t.Reflect)&&typeof t.Reflect.defineMetadata=="function"){e=function(e){var t=e.defineMetadata;var r=e.hasOwnMetadata;var n=e.getOwnMetadata;var i=e.getOwnMetadataKeys;var o=e.deleteMetadata;var s=new f;return{isProviderFor:function(e,t){var r=s.get(e);return!T(r)&&!!r.has(t)||!!i(e,t).length&&(T(r)&&(r=new h,s.set(e,r)),r.add(t),true)},OrdinaryDefineOwnMetadata:t,OrdinaryHasOwnMetadata:r,OrdinaryGetOwnMetadata:n,OrdinaryOwnMetadataKeys:i,OrdinaryDeleteMetadata:o}}(t.Reflect)}var o=new f;var s={registerProvider:a,getProvider:l,setProvider:y};return s;function a(t){if(!Object.isExtensible(s)){throw new Error("Cannot add provider to a frozen registry.")}switch(true){case e===t:break;case T(r):r=t;break;case r===t:break;case T(n):n=t;break;case n===t:break;default:if(i===undefined){i=new h}i.add(t)}}function c(t,o){if(!T(r)){if(r.isProviderFor(t,o)){return r}if(!T(n)){if(n.isProviderFor(t,o)){return r}if(!T(i)){var s=P(i);while(true){var a=j(s);if(!a){return}var c=V(a);if(c.isProviderFor(t,o)){L(s);return c}}}}}if(!T(e)&&e.isProviderFor(t,o)){return e}}function l(e,t){var r;var n=o.get(e);if(!T(n)){r=n.get(t)}if(T(r)){if(!T(r=c(e,t))){if(T(n)){n=new p;o.set(e,n)}n.set(t,r)}return r}else{return r}}function u(e){if(T(e)){throw new TypeError}return r===e||n===e||!T(i)&&i.has(e)}function y(e,t,r){if(!u(r)){throw new Error("Metadata provider not registered.")}var n=l(e,t);if(n!==r){if(!T(n)){return false}var i=o.get(e);if(T(i)){i=new p;o.set(e,i)}i.set(t,r)}return true}}()}if(!T(d)&&I(t.Reflect)&&Object.isExtensible(t.Reflect)){Object.defineProperty(t.Reflect,d,{enumerable:false,configurable:false,writable:false,value:e})}return e}();var m=function(e){var t=new f;var r={isProviderFor:function(e,r){var n=t.get(e);return!T(n)&&n.has(r)},OrdinaryDefineOwnMetadata:function(e,t,r,i){n(r,i,true).set(e,t)},OrdinaryHasOwnMetadata:function(e,t,r){var i=n(t,r,false);return!T(i)&&B(i.has(e))},OrdinaryGetOwnMetadata:function(e,t,r){var i=n(t,r,false);if(!T(i)){return i.get(e)}},OrdinaryOwnMetadataKeys:function(e,t){var r=[];var i=n(e,t,false);if(T(i)){return r}var o=P(i.keys());var s=0;while(true){var a=j(o);if(!a){r.length=s;return r}var c=V(a);try{r[s]=c}catch(e){try{L(o)}finally{throw e}}s++}},OrdinaryDeleteMetadata:function(e,r,i){var o=n(r,i,false);if(T(o)){return false}if(!o.delete(e)){return false}if(o.size===0){var s=t.get(r);if(!T(s)){s.delete(i);if(s.size===0){t.delete(s)}}}return true}};y.registerProvider(r);return r;function n(n,i,o){var s=t.get(n);var a=false;if(T(s)){if(!o){return}s=new p;t.set(n,s);a=true}var c=s.get(i);if(T(c)){if(!o){return}c=new p;s.set(i,c);if(!e.setProvider(n,i,r)){s.delete(i);if(a){t.delete(n)}throw new Error("Wrong provider for target.")}}return c}}(y);function g(e,t,r){if(v(e,t,r)){return true}var n=F(t);return!O(n)&&g(e,n,r)}function v(e,t,r){var n=M(t,r,false);return!T(n)&&B(n.OrdinaryHasOwnMetadata(e,t,r))}function b(e,t,r){if(v(e,t,r)){return E(e,t,r)}var n=F(t);if(O(n)){return undefined}else{return b(e,n,r)}}function E(e,t,r){var n=M(t,r,false);if(!T(n)){return n.OrdinaryGetOwnMetadata(e,t,r)}}function w(e,t,r,n){M(r,n,true).OrdinaryDefineOwnMetadata(e,t,r,n)}function S(e,t){var r=A(e,t);var n=F(e);if(n===null){return r}var i=S(n,t);if(i.length<=0){return r}if(r.length<=0){return i}var o=new h;var s=[];for(var a=0,c=r;a<c.length;a++){var l=c[a];if(!o.has(l)){o.add(l);s.push(l)}}for(var u=0,p=i;u<p.length;u++){l=p[u];if(!o.has(l)){o.add(l);s.push(l)}}return s}function A(e,t){var r=M(e,t,false);if(r){return r.OrdinaryOwnMetadataKeys(e,t)}else{return[]}}function N(e){if(e===null){return 1}switch(typeof e){case"undefined":return 0;case"boolean":return 2;case"string":return 3;case"symbol":return 4;case"number":return 5;case"object":if(e===null){return 1}else{return 6}default:return 6}}function T(e){return e===undefined}function O(e){return e===null}function I(e){if(typeof e=="object"){return e!==null}else{return typeof e=="function"}}function k(e,t){switch(N(e)){case 0:case 1:case 2:case 3:case 4:case 5:return e}var r=D(e,i);if(r!==undefined){var n=r.call(e,"string");if(I(n)){throw new TypeError}return n}return function(e){var t;var r;var n=e.toString;if(R(n)&&!I(r=n.call(e))){return r}if(R(t=e.valueOf)&&!I(r=t.call(e))){return r}throw new TypeError}(e)}function B(e){return!!e}function x(e){var t=k(e);if(typeof t=="symbol"){return t}else{return function(e){return""+e}(t)}}function C(e){if(Array.isArray){return Array.isArray(e)}else if(e instanceof Object){return e instanceof Array}else{return Object.prototype.toString.call(e)==="[object Array]"}}function R(e){return typeof e=="function"}function _(e){return typeof e=="function"}function U(e,t){return e===t||e!=e&&t!=t}function D(e,t){var r=e[t];if(r!=null){if(!R(r)){throw new TypeError}return r}}function P(e){var t=D(e,o);if(!R(t)){throw new TypeError}var r=t.call(e);if(!I(r)){throw new TypeError}return r}function V(e){return e.value}function j(e){var t=e.next();return!t.done&&t}function L(e){var t=e.return;if(t){t.call(e)}}function F(e){var t=Object.getPrototypeOf(e);if(typeof e!="function"||e===u){return t}if(t!==u){return t}var r=e.prototype;var n=r&&Object.getPrototypeOf(r);if(n==null||n===Object.prototype){return t}var i=n.constructor;if(typeof i!="function"||i===e){return t}else{return i}}function M(e,t,r){var n=y.getProvider(e,t);if(!T(n)){return n}if(r){if(y.setProvider(e,t,m)){return m}throw new Error("Illegal state.")}}function H(e){e.__=undefined;delete e.__;return e}e("decorate",function(e,t,r,n){if(T(r)){if(!C(e)){throw new TypeError}if(!_(t)){throw new TypeError}return function(e,t){for(var r=e.length-1;r>=0;--r){var n=(0,e[r])(t);if(!T(n)&&!O(n)){if(!_(n)){throw new TypeError}t=n}}return t}(e,t)}if(!C(e)){throw new TypeError}if(!I(t)){throw new TypeError}if(!I(n)&&!T(n)&&!O(n)){throw new TypeError}if(O(n)){n=undefined}return function(e,t,r,n){for(var i=e.length-1;i>=0;--i){var o=(0,e[i])(t,r,n);if(!T(o)&&!O(o)){if(!I(o)){throw new TypeError}n=o}}return n}(e,t,r=x(r),n)});e("metadata",function(e,t){return function(r,n){if(!I(r)){throw new TypeError}if(!T(n)&&!function(e){switch(N(e)){case 3:case 4:return true;default:return false}}(n)){throw new TypeError}w(e,t,r,n)}});e("defineMetadata",function(e,t,r,n){if(!I(r)){throw new TypeError}if(!T(n)){n=x(n)}return w(e,t,r,n)});e("hasMetadata",function(e,t,r){if(!I(t)){throw new TypeError}if(!T(r)){r=x(r)}return g(e,t,r)});e("hasOwnMetadata",function(e,t,r){if(!I(t)){throw new TypeError}if(!T(r)){r=x(r)}return v(e,t,r)});e("getMetadata",function(e,t,r){if(!I(t)){throw new TypeError}if(!T(r)){r=x(r)}return b(e,t,r)});e("getOwnMetadata",function(e,t,r){if(!I(t)){throw new TypeError}if(!T(r)){r=x(r)}return E(e,t,r)});e("getMetadataKeys",function(e,t){if(!I(e)){throw new TypeError}if(!T(t)){t=x(t)}return S(e,t)});e("getOwnMetadataKeys",function(e,t){if(!I(e)){throw new TypeError}if(!T(t)){t=x(t)}return A(e,t)});e("deleteMetadata",function(e,t,r){if(!I(t)){throw new TypeError}if(!T(r)){r=x(r)}if(!I(t)){throw new TypeError}if(!T(r)){r=x(r)}var n=M(t,r,false);return!T(n)&&n.OrdinaryDeleteMetadata(e,t,r)})})(r,t);if(t.Reflect===undefined){t.Reflect=e}})()})(Rr||={});class _r{static isArrayBuffer(e){return Object.prototype.toString.call(e)==="[object ArrayBuffer]"}static toArrayBuffer(e){if(this.isArrayBuffer(e)){return e}else if(e.byteLength===e.buffer.byteLength||e.byteOffset===0&&e.byteLength===e.buffer.byteLength){return e.buffer}else{return this.toUint8Array(e.buffer).slice(e.byteOffset,e.byteOffset+e.byteLength).buffer}}static toUint8Array(e){return this.toView(e,Uint8Array)}static toView(e,t){if(e.constructor===t){return e}if(this.isArrayBuffer(e)){return new t(e)}if(this.isArrayBufferView(e)){return new t(e.buffer,e.byteOffset,e.byteLength)}throw new TypeError("The provided value is not of type '(ArrayBuffer or ArrayBufferView)'")}static isBufferSource(e){return this.isArrayBufferView(e)||this.isArrayBuffer(e)}static isArrayBufferView(e){return ArrayBuffer.isView(e)||e&&this.isArrayBuffer(e.buffer)}static isEqual(e,t){const r=_r.toUint8Array(e);const n=_r.toUint8Array(t);if(r.length!==n.byteLength){return false}for(let e=0;e<r.length;e++){if(r[e]!==n[e]){return false}}return true}static concat(...e){let t;t=!Array.isArray(e[0])||e[1]instanceof Function?Array.isArray(e[0])&&e[1]instanceof Function?e[0]:e[e.length-1]instanceof Function?e.slice(0,e.length-1):e:e[0];let r=0;for(const e of t){r+=e.byteLength}const n=new Uint8Array(r);let i=0;for(const e of t){const t=this.toUint8Array(e);n.set(t,i);i+=t.length}if(e[e.length-1]instanceof Function){return this.toView(n,e[e.length-1])}else{return n.buffer}}}const Ur="string";const Dr=/^[0-9a-f\s]+$/i;const Pr=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/;const Vr=/^[a-zA-Z0-9-_]+$/;class jr{static fromString(e){const t=unescape(encodeURIComponent(e));const r=new Uint8Array(t.length);for(let e=0;e<t.length;e++){r[e]=t.charCodeAt(e)}return r.buffer}static toString(e){const t=_r.toUint8Array(e);let r="";for(let e=0;e<t.length;e++){r+=String.fromCharCode(t[e])}return decodeURIComponent(escape(r))}}class Lr{static toString(e,t=false){const r=_r.toArrayBuffer(e);const n=new DataView(r);let i="";for(let e=0;e<r.byteLength;e+=2){const r=n.getUint16(e,t);i+=String.fromCharCode(r)}return i}static fromString(e,t=false){const r=new ArrayBuffer(e.length*2);const n=new DataView(r);for(let r=0;r<e.length;r++){n.setUint16(r*2,e.charCodeAt(r),t)}return r}}class Fr{static isHex(e){return typeof e===Ur&&Dr.test(e)}static isBase64(e){return typeof e===Ur&&Pr.test(e)}static isBase64Url(e){return typeof e===Ur&&Vr.test(e)}static ToString(e,t="utf8"){const r=_r.toUint8Array(e);switch(t.toLowerCase()){case"utf8":return this.ToUtf8String(r);case"binary":return this.ToBinary(r);case"hex":return this.ToHex(r);case"base64":return this.ToBase64(r);case"base64url":return this.ToBase64Url(r);case"utf16le":return Lr.toString(r,true);case"utf16":case"utf16be":return Lr.toString(r);default:throw new Error(`Unknown type of encoding '${t}'`)}}static FromString(e,t="utf8"){if(!e){return new ArrayBuffer(0)}switch(t.toLowerCase()){case"utf8":return this.FromUtf8String(e);case"binary":return this.FromBinary(e);case"hex":return this.FromHex(e);case"base64":return this.FromBase64(e);case"base64url":return this.FromBase64Url(e);case"utf16le":return Lr.fromString(e,true);case"utf16":case"utf16be":return Lr.fromString(e);default:throw new Error(`Unknown type of encoding '${t}'`)}}static ToBase64(e){const t=_r.toUint8Array(e);if(typeof btoa!="undefined"){const e=this.ToString(t,"binary");return btoa(e)}return Buffer.from(t).toString("base64")}static FromBase64(e){const t=this.formatString(e);if(!t){return new ArrayBuffer(0)}if(!Fr.isBase64(t)){throw new TypeError("Argument 'base64Text' is not Base64 encoded")}if(typeof atob!="undefined"){return this.FromBinary(atob(t))}else{return new Uint8Array(Buffer.from(t,"base64")).buffer}}static FromBase64Url(e){const t=this.formatString(e);if(!t){return new ArrayBuffer(0)}if(!Fr.isBase64Url(t)){throw new TypeError("Argument 'base64url' is not Base64Url encoded")}return this.FromBase64(this.Base64Padding(t.replace(/\-/g,"+").replace(/\_/g,"/")))}static ToBase64Url(e){return this.ToBase64(e).replace(/\+/g,"-").replace(/\//g,"_").replace(/\=/g,"")}static FromUtf8String(e,t=Fr.DEFAULT_UTF8_ENCODING){switch(t){case"ascii":return this.FromBinary(e);case"utf8":return jr.fromString(e);case"utf16":case"utf16be":return Lr.fromString(e);case"utf16le":case"usc2":return Lr.fromString(e,true);default:throw new Error(`Unknown type of encoding '${t}'`)}}static ToUtf8String(e,t=Fr.DEFAULT_UTF8_ENCODING){switch(t){case"ascii":return this.ToBinary(e);case"utf8":return jr.toString(e);case"utf16":case"utf16be":return Lr.toString(e);case"utf16le":case"usc2":return Lr.toString(e,true);default:throw new Error(`Unknown type of encoding '${t}'`)}}static FromBinary(e){const t=e.length;const r=new Uint8Array(t);for(let n=0;n<t;n++){r[n]=e.charCodeAt(n)}return r.buffer}static ToBinary(e){const t=_r.toUint8Array(e);let r="";for(let e=0;e<t.length;e++){r+=String.fromCharCode(t[e])}return r}static ToHex(e){const t=_r.toUint8Array(e);let r="";const n=t.length;for(let e=0;e<n;e++){const n=t[e];if(n<16){r+="0"}r+=n.toString(16)}return r}static FromHex(e){let t=this.formatString(e);if(!t){return new ArrayBuffer(0)}if(!Fr.isHex(t)){throw new TypeError("Argument 'hexString' is not HEX encoded")}if(t.length%2){t=`0${t}`}const r=new Uint8Array(t.length/2);for(let e=0;e<t.length;e+=2){const n=t.slice(e,e+2);r[e/2]=parseInt(n,16)}return r.buffer}static ToUtf16String(e,t=false){return Lr.toString(e,t)}static FromUtf16String(e,t=false){return Lr.fromString(e,t)}static Base64Padding(e){const t=4-e.length%4;if(t<4){for(let r=0;r<t;r++){e+="="}}return e}static formatString(e){return(e==null?undefined:e.replace(/[\n\r\t ]/g,""))||""}}function Mr(e,t){if(!e||!t){return false}if(e.byteLength!==t.byteLength){return false}const r=new Uint8Array(e);const n=new Uint8Array(t);for(let t=0;t<e.byteLength;t++){if(r[t]!==n[t]){return false}}return true}function Hr(e,t){let r=0;if(e.length===1){return e[0]}for(let n=e.length-1;n>=0;n--){r+=e[e.length-1-n]*Math.pow(2,t*n)}return r}function Kr(e,t,r=-1){const n=r;let i=e;let o=0;let s=Math.pow(2,t);for(let r=1;r<8;r++){if(e<s){let e;if(n<0){e=new ArrayBuffer(r);o=r}else{if(n<r){return new ArrayBuffer(0)}e=new ArrayBuffer(n);o=n}const s=new Uint8Array(e);for(let e=r-1;e>=0;e--){const r=Math.pow(2,e*t);s[o-e-1]=Math.floor(i/r);i-=s[o-e-1]*r}return e}s*=Math.pow(2,t)}return new ArrayBuffer(0)}function $r(...e){let t=0;let r=0;for(const r of e){t+=r.length}const n=new ArrayBuffer(t);const i=new Uint8Array(n);for(const t of e){i.set(t,r);r+=t.length}return i}function Gr(){const e=new Uint8Array(this.valueHex);if(this.valueHex.byteLength>=2){const t=e[0]===255&&e[1]&128;const r=e[0]===0&&!(e[1]&128);if(t||r){this.warnings.push("Needlessly long format")}}const t=new ArrayBuffer(this.valueHex.byteLength);const r=new Uint8Array(t);for(let e=0;e<this.valueHex.byteLength;e++){r[e]=0}r[0]=e[0]&128;const n=Hr(r,8);const i=new ArrayBuffer(this.valueHex.byteLength);const o=new Uint8Array(i);for(let t=0;t<this.valueHex.byteLength;t++){o[t]=e[t]}o[0]&=127;return Hr(o,8)-n}function Wr(e,t){const r=e.toString(10);if(t<r.length){return""}const n=t-r.length;const i=new Array(n);for(let e=0;e<n;e++){i[e]="0"}return i.join("").concat(r)}function Yr(){if(typeof BigInt=="undefined"){throw new Error("BigInt is not defined. Your environment doesn't implement BigInt.")}}function Jr(e){let t=0;let r=0;for(let r=0;r<e.length;r++){t+=e[r].byteLength}const n=new Uint8Array(t);for(let t=0;t<e.length;t++){const i=e[t];n.set(new Uint8Array(i),r);r+=i.byteLength}return n.buffer}function zr(e,t,r,n){if(t instanceof Uint8Array){if(t.byteLength){if(r<0){e.error="Wrong parameter: inputOffset less than zero";return false}else if(n<0){e.error="Wrong parameter: inputLength less than zero";return false}else{return!(t.byteLength-r-n<0)||!(e.error="End of input reached before message was fully decoded (inconsistent offset and length values)",1)}}else{e.error="Wrong parameter: inputBuffer has zero length";return false}}else{e.error="Wrong parameter: inputBuffer must be 'Uint8Array'";return false}}Fr.DEFAULT_UTF8_ENCODING="utf8";class Xr{constructor(){this.items=[]}write(e){this.items.push(e)}final(){return Jr(this.items)}}const qr=[new Uint8Array([1])];const Qr="0123456789";const Zr="name";const en="valueHexView";const tn="";const rn=new ArrayBuffer(0);const nn=new Uint8Array(0);const on="EndOfContent";const sn="OCTET STRING";const an="BIT STRING";function cn(e){var t;t=class extends e{get valueHex(){return this.valueHexView.slice().buffer}set valueHex(e){this.valueHexView=new Uint8Array(e)}constructor(...e){var t;super(...e);const r=e[0]||{};this.isHexOnly=(t=r.isHexOnly)!==null&&t!==undefined&&t;this.valueHexView=r.valueHex?_r.toUint8Array(r.valueHex):nn}fromBER(e,t,r){const n=e instanceof ArrayBuffer?new Uint8Array(e):e;if(!zr(this,n,t,r)){return-1}const i=t+r;this.valueHexView=n.subarray(t,i);if(this.valueHexView.length){this.blockLength=r;return i}else{this.warnings.push("Zero buffer length");return t}}toBER(e=false){if(this.isHexOnly){if(e){return new ArrayBuffer(this.valueHexView.byteLength)}else if(this.valueHexView.byteLength===this.valueHexView.buffer.byteLength){return this.valueHexView.buffer}else{return this.valueHexView.slice().buffer}}else{this.error="Flag 'isHexOnly' is not set, abort";return rn}}toJSON(){return{...super.toJSON(),isHexOnly:this.isHexOnly,valueHex:Fr.ToHex(this.valueHexView)}}};t.NAME="hexBlock";return t}class ln{static blockName(){return this.NAME}get valueBeforeDecode(){return this.valueBeforeDecodeView.slice().buffer}set valueBeforeDecode(e){this.valueBeforeDecodeView=new Uint8Array(e)}constructor({blockLength:e=0,error:t="",warnings:r=[],valueBeforeDecode:n=nn}={}){this.blockLength=e;this.error=t;this.warnings=r;this.valueBeforeDecodeView=_r.toUint8Array(n)}toJSON(){return{blockName:this.constructor.NAME,blockLength:this.blockLength,error:this.error,warnings:this.warnings,valueBeforeDecode:Fr.ToHex(this.valueBeforeDecodeView)}}}ln.NAME="baseBlock";class un extends ln{fromBER(e,t,r){throw TypeError("User need to make a specific function in a class which extends 'ValueBlock'")}toBER(e,t){throw TypeError("User need to make a specific function in a class which extends 'ValueBlock'")}}un.NAME="valueBlock";class pn extends(cn(ln)){constructor({idBlock:e={}}={}){var t;var i;super();if(e){this.isHexOnly=(t=e.isHexOnly)!==null&&t!==undefined&&t;this.valueHexView=e.valueHex?_r.toUint8Array(e.valueHex):nn;this.tagClass=e.tagClass??-1;this.tagNumber=e.tagNumber??-1;this.isConstructed=(i=e.isConstructed)!==null&&i!==undefined&&i}else{this.tagClass=-1;this.tagNumber=-1;this.isConstructed=false}}toBER(e=false){let t=0;switch(this.tagClass){case 1:t|=0;break;case 2:t|=64;break;case 3:t|=128;break;case 4:t|=192;break;default:this.error="Unknown tag class";return rn}if(this.isConstructed){t|=32}if(this.tagNumber<31&&!this.isHexOnly){const r=new Uint8Array(1);if(!e){let e=this.tagNumber;e&=31;t|=e;r[0]=t}return r.buffer}if(!this.isHexOnly){const r=Kr(this.tagNumber,7);const n=new Uint8Array(r);const i=r.byteLength;const o=new Uint8Array(i+1);o[0]=t|31;if(!e){for(let e=0;e<i-1;e++){o[e+1]=n[e]|128}o[i]=n[i-1]}return o.buffer}const r=new Uint8Array(this.valueHexView.byteLength+1);r[0]=t|31;if(!e){const e=this.valueHexView;for(let t=0;t<e.length-1;t++){r[t+1]=e[t]|128}r[this.valueHexView.byteLength]=e[e.length-1]}return r.buffer}fromBER(e,t,r){const n=_r.toUint8Array(e);if(!zr(this,n,t,r)){return-1}const i=n.subarray(t,t+r);if(i.length===0){this.error="Zero buffer length";return-1}switch(i[0]&192){case 0:this.tagClass=1;break;case 64:this.tagClass=2;break;case 128:this.tagClass=3;break;case 192:this.tagClass=4;break;default:this.error="Unknown tag class";return-1}this.isConstructed=!(~i[0]&32);this.isHexOnly=false;const o=i[0]&31;if(o!==31){this.tagNumber=o;this.blockLength=1}else{let e=1;let t=this.valueHexView=new Uint8Array(255);let r=255;while(i[e]&128){t[e-1]=i[e]&127;e++;if(e>=i.length){this.error="End of input reached before message was fully decoded";return-1}if(e===r){r+=255;const e=new Uint8Array(r);for(let r=0;r<t.length;r++){e[r]=t[r]}t=this.valueHexView=new Uint8Array(r)}}this.blockLength=e+1;t[e-1]=i[e]&127;const n=new Uint8Array(e);for(let r=0;r<e;r++){n[r]=t[r]}t=this.valueHexView=new Uint8Array(e);t.set(n);if(this.blockLength<=9){this.tagNumber=Hr(t,7)}else{this.isHexOnly=true;this.warnings.push("Tag too long, represented as hex-coded")}}if(this.tagClass===1&&this.isConstructed){switch(this.tagNumber){case 1:case 2:case 5:case 6:case 9:case 13:case 14:case 23:case 24:case 31:case 32:case 33:case 34:this.error="Constructed encoding used for primitive type";return-1}}return t+this.blockLength}toJSON(){return{...super.toJSON(),tagClass:this.tagClass,tagNumber:this.tagNumber,isConstructed:this.isConstructed}}}pn.NAME="identificationBlock";class hn extends ln{constructor({lenBlock:e={}}={}){var t;var r;super();this.isIndefiniteForm=(t=e.isIndefiniteForm)!==null&&t!==undefined&&t;this.longFormUsed=(r=e.longFormUsed)!==null&&r!==undefined&&r;this.length=e.length??0}fromBER(e,t,r){const n=_r.toUint8Array(e);if(!zr(this,n,t,r)){return-1}const i=n.subarray(t,t+r);if(i.length===0){this.error="Zero buffer length";return-1}if(i[0]===255){this.error="Length block 0xFF is reserved by standard";return-1}this.isIndefiniteForm=i[0]===128;if(this.isIndefiniteForm){this.blockLength=1;return t+this.blockLength}this.longFormUsed=!!(i[0]&128);if(this.longFormUsed===false){this.length=i[0];this.blockLength=1;return t+this.blockLength}const o=i[0]&127;if(o>8){this.error="Too big integer";return-1}if(o+1>i.length){this.error="End of input reached before message was fully decoded";return-1}const s=t+1;const a=n.subarray(s,s+o);if(a[o-1]===0){this.warnings.push("Needlessly long encoded length")}this.length=Hr(a,8);if(this.longFormUsed&&this.length<=127){this.warnings.push("Unnecessary usage of long length form")}this.blockLength=o+1;return t+this.blockLength}toBER(e=false){let t;let r;if(this.length>127){this.longFormUsed=true}if(this.isIndefiniteForm){t=new ArrayBuffer(1);if(e===false){r=new Uint8Array(t);r[0]=128}return t}if(this.longFormUsed){const n=Kr(this.length,8);if(n.byteLength>127){this.error="Too big length";return rn}t=new ArrayBuffer(n.byteLength+1);if(e){return t}const i=new Uint8Array(n);r=new Uint8Array(t);r[0]=n.byteLength|128;for(let e=0;e<n.byteLength;e++){r[e+1]=i[e]}return t}t=new ArrayBuffer(1);if(e===false){r=new Uint8Array(t);r[0]=this.length}return t}toJSON(){return{...super.toJSON(),isIndefiniteForm:this.isIndefiniteForm,longFormUsed:this.longFormUsed,length:this.length}}}hn.NAME="lengthBlock";const fn={};class dn extends ln{constructor({name:e="",optional:t=false,primitiveSchema:r,...n}={},i){super(n);this.name=e;this.optional=t;if(r){this.primitiveSchema=r}this.idBlock=new pn(n);this.lenBlock=new hn(n);this.valueBlock=i?new i(n):new un(n)}fromBER(e,t,r){const n=this.valueBlock.fromBER(e,t,this.lenBlock.isIndefiniteForm?r:this.lenBlock.length);if(n===-1){this.error=this.valueBlock.error;return n}else{if(!this.idBlock.error.length){this.blockLength+=this.idBlock.blockLength}if(!this.lenBlock.error.length){this.blockLength+=this.lenBlock.blockLength}if(!this.valueBlock.error.length){this.blockLength+=this.valueBlock.blockLength}return n}}toBER(e,t){const r=t||new Xr;if(!t){yn(this)}const n=this.idBlock.toBER(e);r.write(n);if(this.lenBlock.isIndefiniteForm){r.write(new Uint8Array([128]).buffer);this.valueBlock.toBER(e,r);r.write(new ArrayBuffer(2))}else{const t=this.valueBlock.toBER(e);this.lenBlock.length=t.byteLength;const n=this.lenBlock.toBER(e);r.write(n);r.write(t)}if(t){return rn}else{return r.final()}}toJSON(){const e={...super.toJSON(),idBlock:this.idBlock.toJSON(),lenBlock:this.lenBlock.toJSON(),valueBlock:this.valueBlock.toJSON(),name:this.name,optional:this.optional};if(this.primitiveSchema){e.primitiveSchema=this.primitiveSchema.toJSON()}return e}toString(e="ascii"){if(e==="ascii"){return this.onAsciiEncoding()}else{return Fr.ToHex(this.toBER())}}onAsciiEncoding(){return`${this.constructor.NAME} : ${Fr.ToHex(this.valueBlock.valueBeforeDecodeView)}`}isEqual(e){return this===e||e instanceof this.constructor&&function(e,t){if(e.byteLength!==t.byteLength){return false}const r=new Uint8Array(e);const n=new Uint8Array(t);for(let e=0;e<r.length;e++){if(r[e]!==n[e]){return false}}return true}(this.toBER(),e.toBER())}}function yn(e){if(e instanceof fn.Constructed){for(const t of e.valueBlock.value){if(yn(t)){e.lenBlock.isIndefiniteForm=true}}}return!!e.lenBlock?.isIndefiniteForm}dn.NAME="BaseBlock";class mn extends dn{getValue(){return this.valueBlock.value}setValue(e){this.valueBlock.value=e}constructor({value:e="",...t}={},r){super(t,r);if(e){this.fromString(e)}}fromBER(e,t,r){const n=this.valueBlock.fromBER(e,t,this.lenBlock.isIndefiniteForm?r:this.lenBlock.length);if(n===-1){this.error=this.valueBlock.error;return n}else{this.fromBuffer(this.valueBlock.valueHexView);if(!this.idBlock.error.length){this.blockLength+=this.idBlock.blockLength}if(!this.lenBlock.error.length){this.blockLength+=this.lenBlock.blockLength}if(!this.valueBlock.error.length){this.blockLength+=this.valueBlock.blockLength}return n}}onAsciiEncoding(){return`${this.constructor.NAME} : '${this.valueBlock.value}'`}}mn.NAME="BaseStringBlock";class gn extends(cn(un)){constructor({isHexOnly:e=true,...t}={}){super(t);this.isHexOnly=e}}var vn;var bn;var En;var wn;var Sn;gn.NAME="PrimitiveValueBlock";class An extends dn{constructor(e={}){super(e,gn);this.idBlock.isConstructed=false}}function Nn(e,t=0,r=e.length){const n=t;let i=new dn({},un);const o=new ln;if(!zr(o,e,t,r)){i.error=o.error;return{offset:-1,result:i}}if(!e.subarray(t,t+r).length){i.error="Zero buffer length";return{offset:-1,result:i}}let s=i.idBlock.fromBER(e,t,r);if(i.idBlock.warnings.length){i.warnings.concat(i.idBlock.warnings)}if(s===-1){i.error=i.idBlock.error;return{offset:-1,result:i}}t=s;r-=i.idBlock.blockLength;s=i.lenBlock.fromBER(e,t,r);if(i.lenBlock.warnings.length){i.warnings.concat(i.lenBlock.warnings)}if(s===-1){i.error=i.lenBlock.error;return{offset:-1,result:i}}t=s;r-=i.lenBlock.blockLength;if(!i.idBlock.isConstructed&&i.lenBlock.isIndefiniteForm){i.error="Indefinite length form used for primitive encoding form";return{offset:-1,result:i}}let a=dn;if(i.idBlock.tagClass===1){if(i.idBlock.tagNumber>=37&&i.idBlock.isHexOnly===false){i.error="UNIVERSAL 37 and upper tags are reserved by ASN.1 standard";return{offset:-1,result:i}}switch(i.idBlock.tagNumber){case 0:if(i.idBlock.isConstructed&&i.lenBlock.length>0){i.error="Type [UNIVERSAL 0] is reserved";return{offset:-1,result:i}}a=fn.EndOfContent;break;case 1:a=fn.Boolean;break;case 2:a=fn.Integer;break;case 3:a=fn.BitString;break;case 4:a=fn.OctetString;break;case 5:a=fn.Null;break;case 6:a=fn.ObjectIdentifier;break;case 10:a=fn.Enumerated;break;case 12:a=fn.Utf8String;break;case 13:a=fn.RelativeObjectIdentifier;break;case 14:a=fn.TIME;break;case 15:i.error="[UNIVERSAL 15] is reserved by ASN.1 standard";return{offset:-1,result:i};case 16:a=fn.Sequence;break;case 17:a=fn.Set;break;case 18:a=fn.NumericString;break;case 19:a=fn.PrintableString;break;case 20:a=fn.TeletexString;break;case 21:a=fn.VideotexString;break;case 22:a=fn.IA5String;break;case 23:a=fn.UTCTime;break;case 24:a=fn.GeneralizedTime;break;case 25:a=fn.GraphicString;break;case 26:a=fn.VisibleString;break;case 27:a=fn.GeneralString;break;case 28:a=fn.UniversalString;break;case 29:a=fn.CharacterString;break;case 30:a=fn.BmpString;break;case 31:a=fn.DATE;break;case 32:a=fn.TimeOfDay;break;case 33:a=fn.DateTime;break;case 34:a=fn.Duration;break;default:{const e=i.idBlock.isConstructed?new fn.Constructed:new fn.Primitive;e.idBlock=i.idBlock;e.lenBlock=i.lenBlock;e.warnings=i.warnings;i=e}}}else{a=i.idBlock.isConstructed?fn.Constructed:fn.Primitive}i=function(e,t){if(e instanceof t){return e}const r=new t;r.idBlock=e.idBlock;r.lenBlock=e.lenBlock;r.warnings=e.warnings;r.valueBeforeDecodeView=e.valueBeforeDecodeView;return r}(i,a);s=i.fromBER(e,t,i.lenBlock.isIndefiniteForm?r:i.lenBlock.length);i.valueBeforeDecodeView=e.subarray(n,n+i.blockLength);return{offset:s,result:i}}function Tn(e){if(!e.byteLength){const e=new dn({},un);e.error="Input buffer has zero length";return{offset:-1,result:e}}return Nn(_r.toUint8Array(e).slice(),0,e.byteLength)}vn=An;fn.Primitive=vn;An.NAME="PRIMITIVE";class On extends un{constructor({value:e=[],isIndefiniteForm:t=false,...r}={}){super(r);this.value=e;this.isIndefiniteForm=t}fromBER(e,t,r){const n=_r.toUint8Array(e);if(!zr(this,n,t,r)){return-1}this.valueBeforeDecodeView=n.subarray(t,t+r);if(this.valueBeforeDecodeView.length===0){this.warnings.push("Zero buffer length");return t}let i=t;while((this.isIndefiniteForm?1:r)>0){const e=Nn(n,i,r);if(e.offset===-1){this.error=e.result.error;this.warnings.concat(e.result.warnings);return-1}i=e.offset;this.blockLength+=e.result.blockLength;r-=e.result.blockLength;this.value.push(e.result);if(this.isIndefiniteForm&&e.result.constructor.NAME===on){break}}if(this.isIndefiniteForm){if(this.value[this.value.length-1].constructor.NAME===on){this.value.pop()}else{this.warnings.push("No EndOfContent block encoded")}}return i}toBER(e,t){const r=t||new Xr;for(let t=0;t<this.value.length;t++){this.value[t].toBER(e,r)}if(t){return rn}else{return r.final()}}toJSON(){const e={...super.toJSON(),isIndefiniteForm:this.isIndefiniteForm,value:[]};for(const t of this.value){e.value.push(t.toJSON())}return e}}On.NAME="ConstructedValueBlock";class In extends dn{constructor(e={}){super(e,On);this.idBlock.isConstructed=true}fromBER(e,t,r){this.valueBlock.isIndefiniteForm=this.lenBlock.isIndefiniteForm;const n=this.valueBlock.fromBER(e,t,this.lenBlock.isIndefiniteForm?r:this.lenBlock.length);if(n===-1){this.error=this.valueBlock.error;return n}else{if(!this.idBlock.error.length){this.blockLength+=this.idBlock.blockLength}if(!this.lenBlock.error.length){this.blockLength+=this.lenBlock.blockLength}if(!this.valueBlock.error.length){this.blockLength+=this.valueBlock.blockLength}return n}}onAsciiEncoding(){const e=[];for(const t of this.valueBlock.value){e.push(t.toString("ascii").split("\n").map(e=>` ${e}`).join("\n"))}const t=this.idBlock.tagClass===3?`[${this.idBlock.tagNumber}]`:this.constructor.NAME;if(e.length){return`${t} :\n${e.join("\n")}`}else{return`${t} :`}}}bn=In;fn.Constructed=bn;In.NAME="CONSTRUCTED";class kn extends un{fromBER(e,t,r){return t}toBER(e){return rn}}kn.override="EndOfContentValueBlock";class Bn extends dn{constructor(e={}){super(e,kn);this.idBlock.tagClass=1;this.idBlock.tagNumber=0}}En=Bn;fn.EndOfContent=En;Bn.NAME=on;class xn extends dn{constructor(e={}){super(e,un);this.idBlock.tagClass=1;this.idBlock.tagNumber=5}fromBER(e,t,r){if(this.lenBlock.length>0){this.warnings.push("Non-zero length of value block for Null type")}if(!this.idBlock.error.length){this.blockLength+=this.idBlock.blockLength}if(!this.lenBlock.error.length){this.blockLength+=this.lenBlock.blockLength}this.blockLength+=r;if(t+r>e.byteLength){this.error="End of input reached before message was fully decoded (inconsistent offset and length values)";return-1}else{return t+r}}toBER(e,t){const r=new ArrayBuffer(2);if(!e){const e=new Uint8Array(r);e[0]=5;e[1]=0}if(t){t.write(r)}return r}onAsciiEncoding(){return`${this.constructor.NAME}`}}wn=xn;fn.Null=wn;xn.NAME="NULL";class Cn extends(cn(un)){get value(){for(const e of this.valueHexView){if(e>0){return true}}return false}set value(e){this.valueHexView[0]=e?255:0}constructor({value:e,...t}={}){super(t);if(t.valueHex){this.valueHexView=_r.toUint8Array(t.valueHex)}else{this.valueHexView=new Uint8Array(1)}if(e){this.value=e}}fromBER(e,t,r){const n=_r.toUint8Array(e);if(zr(this,n,t,r)){this.valueHexView=n.subarray(t,t+r);if(r>1){this.warnings.push("Boolean value encoded in more then 1 octet")}this.isHexOnly=true;Gr.call(this);this.blockLength=r;return t+r}else{return-1}}toBER(){return this.valueHexView.slice()}toJSON(){return{...super.toJSON(),value:this.value}}}Cn.NAME="BooleanValueBlock";let Rn=class extends dn{getValue(){return this.valueBlock.value}setValue(e){this.valueBlock.value=e}constructor(e={}){super(e,Cn);this.idBlock.tagClass=1;this.idBlock.tagNumber=1}onAsciiEncoding(){return`${this.constructor.NAME} : ${this.getValue}`}};Sn=Rn;fn.Boolean=Sn;Rn.NAME="BOOLEAN";class _n extends(cn(On)){constructor({isConstructed:e=false,...t}={}){super(t);this.isConstructed=e}fromBER(e,t,r){let n=0;if(this.isConstructed){this.isHexOnly=false;n=On.prototype.fromBER.call(this,e,t,r);if(n===-1){return n}for(let e=0;e<this.value.length;e++){const t=this.value[e].constructor.NAME;if(t===on){if(this.isIndefiniteForm){break}this.error="EndOfContent is unexpected, OCTET STRING may consists of OCTET STRINGs only";return-1}if(t!==sn){this.error="OCTET STRING may consists of OCTET STRINGs only";return-1}}}else{this.isHexOnly=true;n=super.fromBER(e,t,r);this.blockLength=r}return n}toBER(e,t){if(this.isConstructed){return On.prototype.toBER.call(this,e,t)}else if(e){return new ArrayBuffer(this.valueHexView.byteLength)}else{return this.valueHexView.slice().buffer}}toJSON(){return{...super.toJSON(),isConstructed:this.isConstructed}}}var Un;_n.NAME="OctetStringValueBlock";let Dn=class extends dn{constructor({idBlock:e={},lenBlock:t={},...r}={}){var n;if((n=r.isConstructed)===null||n===undefined){r.isConstructed=!!r.value?.length}super({idBlock:{isConstructed:r.isConstructed,...e},lenBlock:{...t,isIndefiniteForm:!!r.isIndefiniteForm},...r},_n);this.idBlock.tagClass=1;this.idBlock.tagNumber=4}fromBER(e,t,r){this.valueBlock.isConstructed=this.idBlock.isConstructed;this.valueBlock.isIndefiniteForm=this.lenBlock.isIndefiniteForm;if(r===0){if(this.idBlock.error.length===0){this.blockLength+=this.idBlock.blockLength}if(this.lenBlock.error.length===0){this.blockLength+=this.lenBlock.blockLength}return t}if(!this.valueBlock.isConstructed){const n=(e instanceof ArrayBuffer?new Uint8Array(e):e).subarray(t,t+r);try{if(n.byteLength){const e=Nn(n,0,n.byteLength);if(e.offset!==-1&&e.offset===r){this.valueBlock.value=[e.result]}}}catch{}}return super.fromBER(e,t,r)}onAsciiEncoding(){if(this.valueBlock.isConstructed||this.valueBlock.value&&this.valueBlock.value.length){return In.prototype.onAsciiEncoding.call(this)}else{return`${this.constructor.NAME} : ${Fr.ToHex(this.valueBlock.valueHexView)}`}}getValue(){if(!this.idBlock.isConstructed){return this.valueBlock.valueHexView.slice().buffer}const e=[];for(const t of this.valueBlock.value){if(t instanceof Un){e.push(t.valueBlock.valueHexView)}}return _r.concat(e)}};Un=Dn;fn.OctetString=Un;Dn.NAME=sn;class Pn extends(cn(On)){constructor({unusedBits:e=0,isConstructed:t=false,...r}={}){super(r);this.unusedBits=e;this.isConstructed=t;this.blockLength=this.valueHexView.byteLength}fromBER(e,t,r){if(!r){return t}let n=-1;if(this.isConstructed){n=On.prototype.fromBER.call(this,e,t,r);if(n===-1){return n}for(const e of this.value){const t=e.constructor.NAME;if(t===on){if(this.isIndefiniteForm){break}this.error="EndOfContent is unexpected, BIT STRING may consists of BIT STRINGs only";return-1}if(t!==an){this.error="BIT STRING may consists of BIT STRINGs only";return-1}const r=e.valueBlock;if(this.unusedBits>0&&r.unusedBits>0){this.error='Using of "unused bits" inside constructive BIT STRING allowed for least one only';return-1}this.unusedBits=r.unusedBits}return n}const i=_r.toUint8Array(e);if(!zr(this,i,t,r)){return-1}const o=i.subarray(t,t+r);this.unusedBits=o[0];if(this.unusedBits>7){this.error="Unused bits for BitString must be in range 0-7";return-1}if(!this.unusedBits){const e=o.subarray(1);try{if(e.byteLength){const t=Nn(e,0,e.byteLength);if(t.offset!==-1&&t.offset===r-1){this.value=[t.result]}}}catch{}}this.valueHexView=o.subarray(1);this.blockLength=o.length;return t+r}toBER(e,t){if(this.isConstructed){return On.prototype.toBER.call(this,e,t)}if(e){return new ArrayBuffer(this.valueHexView.byteLength+1)}if(!this.valueHexView.byteLength){return rn}const r=new Uint8Array(this.valueHexView.length+1);r[0]=this.unusedBits;r.set(this.valueHexView,1);return r.buffer}toJSON(){return{...super.toJSON(),unusedBits:this.unusedBits,isConstructed:this.isConstructed}}}var Vn;Pn.NAME="BitStringValueBlock";let jn=class extends dn{constructor({idBlock:e={},lenBlock:t={},...r}={}){var n;if((n=r.isConstructed)===null||n===undefined){r.isConstructed=!!r.value?.length}super({idBlock:{isConstructed:r.isConstructed,...e},lenBlock:{...t,isIndefiniteForm:!!r.isIndefiniteForm},...r},Pn);this.idBlock.tagClass=1;this.idBlock.tagNumber=3}fromBER(e,t,r){this.valueBlock.isConstructed=this.idBlock.isConstructed;this.valueBlock.isIndefiniteForm=this.lenBlock.isIndefiniteForm;return super.fromBER(e,t,r)}onAsciiEncoding(){if(this.valueBlock.isConstructed||this.valueBlock.value&&this.valueBlock.value.length){return In.prototype.onAsciiEncoding.call(this)}{const e=[];const t=this.valueBlock.valueHexView;for(const r of t){e.push(r.toString(2).padStart(8,"0"))}const r=e.join("");return`${this.constructor.NAME} : ${r.substring(0,r.length-this.valueBlock.unusedBits)}`}}};var Ln;var Fn;var Mn;var Hn;var Kn;var $n;var Gn;function Wn(e,t){const r=new Uint8Array([0]);const n=new Uint8Array(e);const i=new Uint8Array(t);let o=n.slice(0);const s=o.length-1;const a=i.slice(0);const c=a.length-1;let l=0;let u=0;for(let e=c<s?s:c;e>=0;e--,u++){l=u<a.length==1?o[s-u]+a[c-u]+r[0]:o[s-u]+r[0];r[0]=l/10;if(u>=o.length==1){o=$r(new Uint8Array([l%10]),o)}else{o[s-u]=l%10}}if(r[0]>0){o=$r(r,o)}return o}function Yn(e){if(e>=qr.length){for(let t=qr.length;t<=e;t++){const e=new Uint8Array([0]);let r=qr[t-1].slice(0);for(let t=r.length-1;t>=0;t--){const n=new Uint8Array([(r[t]<<1)+e[0]]);e[0]=n[0]/10;r[t]=n[0]%10}if(e[0]>0){r=$r(e,r)}qr.push(r)}}return qr[e]}function Jn(e,t){let r=0;const n=new Uint8Array(e);const i=new Uint8Array(t);const o=n.slice(0);const s=o.length-1;const a=i.slice(0);const c=a.length-1;let l;let u=0;for(let e=c;e>=0;e--,u++){l=o[s-u]-a[c-u]-r;if(l<0==1){r=1;o[s-u]=l+10}else{r=0;o[s-u]=l}}if(r>0){for(let e=s-c+1;e>=0;e--,u++){l=o[s-u]-r;if(!(l<0)){r=0;o[s-u]=l;break}r=1;o[s-u]=l+10}}return o.slice()}Vn=jn;fn.BitString=Vn;jn.NAME=an;class zn extends(cn(un)){setValueHex(){if(this.valueHexView.length>=4){this.warnings.push("Too big Integer for decoding, hex only");this.isHexOnly=true;this._valueDec=0}else{this.isHexOnly=false;if(this.valueHexView.length>0){this._valueDec=Gr.call(this)}}}constructor({value:e,...t}={}){super(t);this._valueDec=0;if(t.valueHex){this.setValueHex()}if(e!==undefined){this.valueDec=e}}set valueDec(e){this._valueDec=e;this.isHexOnly=false;this.valueHexView=new Uint8Array(function(e){const t=e<0?e*-1:e;let r=128;for(let n=1;n<8;n++){if(t<=r){if(e<0){const e=Kr(r-t,8,n);new Uint8Array(e)[0]|=128;return e}let i=Kr(t,8,n);let o=new Uint8Array(i);if(o[0]&128){const e=i.slice(0);const t=new Uint8Array(e);i=new ArrayBuffer(i.byteLength+1);o=new Uint8Array(i);for(let r=0;r<e.byteLength;r++){o[r+1]=t[r]}o[0]=0}return i}r*=Math.pow(2,8)}return new ArrayBuffer(0)}(e))}get valueDec(){return this._valueDec}fromDER(e,t,r,n=0){const i=this.fromBER(e,t,r);if(i===-1){return i}const o=this.valueHexView;if(o[0]===0&&o[1]&128){this.valueHexView=o.subarray(1)}else if(n!==0&&o.length<n){if(n-o.length>1){n=o.length+1}this.valueHexView=o.subarray(n-o.length)}return i}toDER(e=false){const t=this.valueHexView;switch(true){case!!(t[0]&128):{const e=new Uint8Array(this.valueHexView.length+1);e[0]=0;e.set(t,1);this.valueHexView=e}break;case t[0]===0&&!(t[1]&128):this.valueHexView=this.valueHexView.subarray(1)}return this.toBER(e)}fromBER(e,t,r){const n=super.fromBER(e,t,r);if(n!==-1){this.setValueHex()}return n}toBER(e){if(e){return new ArrayBuffer(this.valueHexView.length)}else{return this.valueHexView.slice().buffer}}toJSON(){return{...super.toJSON(),valueDec:this.valueDec}}toString(){const e=this.valueHexView.length*8-1;let t;let r=new Uint8Array(this.valueHexView.length*8/3);let n=0;const i=this.valueHexView;let o="";let s=false;for(let s=i.byteLength-1;s>=0;s--){t=i[s];for(let i=0;i<8;i++){if(!(~t&1)){if(n===e){r=Jn(Yn(n),r);o="-"}else{r=Wn(r,Yn(n))}}n++;t>>=1}}for(let e=0;e<r.length;e++){if(r[e]){s=true}if(s){o+=Qr.charAt(r[e])}}if(s===false){o+=Qr.charAt(0)}return o}}Ln=zn;zn.NAME="IntegerValueBlock";Object.defineProperty(Ln.prototype,"valueHex",{set:function(e){this.valueHexView=new Uint8Array(e);this.setValueHex()},get:function(){return this.valueHexView.slice().buffer}});class Xn extends dn{constructor(e={}){super(e,zn);this.idBlock.tagClass=1;this.idBlock.tagNumber=2}toBigInt(){Yr();return BigInt(this.valueBlock.toString())}static fromBigInt(e){Yr();const t=BigInt(e);const r=new Xr;const n=t.toString(16).replace(/^-/,"");const i=new Uint8Array(Fr.FromHex(n));if(t<0){const e=new Uint8Array(i.length+(i[0]&128?1:0));e[0]|=128;const n=BigInt(`0x${Fr.ToHex(e)}`)+t;const o=_r.toUint8Array(Fr.FromHex(n.toString(16)));o[0]|=128;r.write(o)}else{if(i[0]&128){r.write(new Uint8Array([0]))}r.write(i)}return new Fn({valueHex:r.final()})}convertToDER(){const e=new Fn({valueHex:this.valueBlock.valueHexView});e.valueBlock.toDER();return e}convertFromDER(){return new Fn({valueHex:this.valueBlock.valueHexView[0]===0?this.valueBlock.valueHexView.subarray(1):this.valueBlock.valueHexView})}onAsciiEncoding(){return`${this.constructor.NAME} : ${this.valueBlock.toString()}`}}Fn=Xn;fn.Integer=Fn;Xn.NAME="INTEGER";class qn extends Xn{constructor(e={}){super(e);this.idBlock.tagClass=1;this.idBlock.tagNumber=10}}Mn=qn;fn.Enumerated=Mn;qn.NAME="ENUMERATED";class Qn extends(cn(un)){constructor({valueDec:e=-1,isFirstSid:t=false,...r}={}){super(r);this.valueDec=e;this.isFirstSid=t}fromBER(e,t,r){if(!r){return t}const n=_r.toUint8Array(e);if(!zr(this,n,t,r)){return-1}const i=n.subarray(t,t+r);this.valueHexView=new Uint8Array(r);for(let e=0;e<r&&(this.valueHexView[e]=i[e]&127,this.blockLength++,i[e]&128);e++);const o=new Uint8Array(this.blockLength);for(let e=0;e<this.blockLength;e++){o[e]=this.valueHexView[e]}this.valueHexView=o;if(i[this.blockLength-1]&128){this.error="End of input reached before message was fully decoded";return-1}else{if(this.valueHexView[0]===0){this.warnings.push("Needlessly long format of SID encoding")}if(this.blockLength<=8){this.valueDec=Hr(this.valueHexView,7)}else{this.isHexOnly=true;this.warnings.push("Too big SID for decoding, hex only")}return t+this.blockLength}}set valueBigInt(e){Yr();let t=BigInt(e).toString(2);while(t.length%7){t="0"+t}const r=new Uint8Array(t.length/7);for(let e=0;e<r.length;e++){r[e]=parseInt(t.slice(e*7,e*7+7),2)+(e+1<r.length?128:0)}this.fromBER(r.buffer,0,r.length)}toBER(e){if(this.isHexOnly){if(e){return new ArrayBuffer(this.valueHexView.byteLength)}const t=this.valueHexView;const r=new Uint8Array(this.blockLength);for(let e=0;e<this.blockLength-1;e++){r[e]=t[e]|128}r[this.blockLength-1]=t[this.blockLength-1];return r.buffer}const t=Kr(this.valueDec,7);if(t.byteLength===0){this.error="Error during encoding SID value";return rn}const r=new Uint8Array(t.byteLength);if(!e){const e=new Uint8Array(t);const n=t.byteLength-1;for(let t=0;t<n;t++){r[t]=e[t]|128}r[n]=e[n]}return r}toString(){let e="";if(this.isHexOnly){e=Fr.ToHex(this.valueHexView)}else if(this.isFirstSid){let t=this.valueDec;if(this.valueDec<=39){e="0."}else if(this.valueDec<=79){e="1.";t-=40}else{e="2.";t-=80}e+=t.toString()}else{e=this.valueDec.toString()}return e}toJSON(){return{...super.toJSON(),valueDec:this.valueDec,isFirstSid:this.isFirstSid}}}Qn.NAME="sidBlock";class Zn extends un{constructor({value:e="",...t}={}){super(t);this.value=[];if(e){this.fromString(e)}}fromBER(e,t,r){let n=t;while(r>0){const t=new Qn;n=t.fromBER(e,n,r);if(n===-1){this.blockLength=0;this.error=t.error;return n}if(this.value.length===0){t.isFirstSid=true}this.blockLength+=t.blockLength;r-=t.blockLength;this.value.push(t)}return n}toBER(e){const t=[];for(let r=0;r<this.value.length;r++){const n=this.value[r].toBER(e);if(n.byteLength===0){this.error=this.value[r].error;return rn}t.push(n)}return Jr(t)}fromString(e){this.value=[];let t=0;let r=0;let n="";let i=false;do{r=e.indexOf(".",t);n=r===-1?e.substring(t):e.substring(t,r);t=r+1;if(i){const e=this.value[0];let t=0;switch(e.valueDec){case 0:break;case 1:t=40;break;case 2:t=80;break;default:this.value=[];return}const r=parseInt(n,10);if(isNaN(r)){return}e.valueDec=r+t;i=false}else{const e=new Qn;if(n>Number.MAX_SAFE_INTEGER){Yr();const t=BigInt(n);e.valueBigInt=t}else{e.valueDec=parseInt(n,10);if(isNaN(e.valueDec)){return}}if(!this.value.length){e.isFirstSid=true;i=true}this.value.push(e)}}while(r!==-1)}toString(){let e="";let t=false;for(let r=0;r<this.value.length;r++){t=this.value[r].isHexOnly;let n=this.value[r].toString();if(r!==0){e=`${e}.`}if(t){n=`{${n}}`;if(this.value[r].isFirstSid){e=`2.{${n} - 80}`}else{e+=n}}else{e+=n}}return e}toJSON(){const e={...super.toJSON(),value:this.toString(),sidArray:[]};for(let t=0;t<this.value.length;t++){e.sidArray.push(this.value[t].toJSON())}return e}}Zn.NAME="ObjectIdentifierValueBlock";class ei extends dn{getValue(){return this.valueBlock.toString()}setValue(e){this.valueBlock.fromString(e)}constructor(e={}){super(e,Zn);this.idBlock.tagClass=1;this.idBlock.tagNumber=6}onAsciiEncoding(){return`${this.constructor.NAME} : ${this.valueBlock.toString()||"empty"}`}toJSON(){return{...super.toJSON(),value:this.getValue()}}}Hn=ei;fn.ObjectIdentifier=Hn;ei.NAME="OBJECT IDENTIFIER";class ti extends(cn(ln)){constructor({valueDec:e=0,...t}={}){super(t);this.valueDec=e}fromBER(e,t,r){if(r===0){return t}const n=_r.toUint8Array(e);if(!zr(this,n,t,r)){return-1}const i=n.subarray(t,t+r);this.valueHexView=new Uint8Array(r);for(let e=0;e<r&&(this.valueHexView[e]=i[e]&127,this.blockLength++,i[e]&128);e++);const o=new Uint8Array(this.blockLength);for(let e=0;e<this.blockLength;e++){o[e]=this.valueHexView[e]}this.valueHexView=o;if(i[this.blockLength-1]&128){this.error="End of input reached before message was fully decoded";return-1}else{if(this.valueHexView[0]===0){this.warnings.push("Needlessly long format of SID encoding")}if(this.blockLength<=8){this.valueDec=Hr(this.valueHexView,7)}else{this.isHexOnly=true;this.warnings.push("Too big SID for decoding, hex only")}return t+this.blockLength}}toBER(e){if(this.isHexOnly){if(e){return new ArrayBuffer(this.valueHexView.byteLength)}const t=this.valueHexView;const r=new Uint8Array(this.blockLength);for(let e=0;e<this.blockLength-1;e++){r[e]=t[e]|128}r[this.blockLength-1]=t[this.blockLength-1];return r.buffer}const t=Kr(this.valueDec,7);if(t.byteLength===0){this.error="Error during encoding SID value";return rn}const r=new Uint8Array(t.byteLength);if(!e){const e=new Uint8Array(t);const n=t.byteLength-1;for(let t=0;t<n;t++){r[t]=e[t]|128}r[n]=e[n]}return r.buffer}toString(){let e="";e=this.isHexOnly?Fr.ToHex(this.valueHexView):this.valueDec.toString();return e}toJSON(){return{...super.toJSON(),valueDec:this.valueDec}}}ti.NAME="relativeSidBlock";class ri extends un{constructor({value:e="",...t}={}){super(t);this.value=[];if(e){this.fromString(e)}}fromBER(e,t,r){let n=t;while(r>0){const t=new ti;n=t.fromBER(e,n,r);if(n===-1){this.blockLength=0;this.error=t.error;return n}this.blockLength+=t.blockLength;r-=t.blockLength;this.value.push(t)}return n}toBER(e,t){const r=[];for(let t=0;t<this.value.length;t++){const n=this.value[t].toBER(e);if(n.byteLength===0){this.error=this.value[t].error;return rn}r.push(n)}return Jr(r)}fromString(e){this.value=[];let t=0;let r=0;let n="";do{r=e.indexOf(".",t);n=r===-1?e.substring(t):e.substring(t,r);t=r+1;const i=new ti;i.valueDec=parseInt(n,10);if(isNaN(i.valueDec)){return true}this.value.push(i)}while(r!==-1);return true}toString(){let e="";let t=false;for(let r=0;r<this.value.length;r++){t=this.value[r].isHexOnly;let n=this.value[r].toString();if(r!==0){e=`${e}.`}if(t){n=`{${n}}`;e+=n}else{e+=n}}return e}toJSON(){const e={...super.toJSON(),value:this.toString(),sidArray:[]};for(let t=0;t<this.value.length;t++){e.sidArray.push(this.value[t].toJSON())}return e}}ri.NAME="RelativeObjectIdentifierValueBlock";class ni extends dn{getValue(){return this.valueBlock.toString()}setValue(e){this.valueBlock.fromString(e)}constructor(e={}){super(e,ri);this.idBlock.tagClass=1;this.idBlock.tagNumber=13}onAsciiEncoding(){return`${this.constructor.NAME} : ${this.valueBlock.toString()||"empty"}`}toJSON(){return{...super.toJSON(),value:this.getValue()}}}Kn=ni;fn.RelativeObjectIdentifier=Kn;ni.NAME="RelativeObjectIdentifier";class ii extends In{constructor(e={}){super(e);this.idBlock.tagClass=1;this.idBlock.tagNumber=16}}$n=ii;fn.Sequence=$n;ii.NAME="SEQUENCE";let oi=class extends In{constructor(e={}){super(e);this.idBlock.tagClass=1;this.idBlock.tagNumber=17}};Gn=oi;fn.Set=Gn;oi.NAME="SET";class si extends(cn(un)){constructor({...e}={}){super(e);this.isHexOnly=true;this.value=tn}toJSON(){return{...super.toJSON(),value:this.value}}}si.NAME="StringValueBlock";class ai extends si{}ai.NAME="SimpleStringValueBlock";class ci extends mn{constructor({...e}={}){super(e,ai)}fromBuffer(e){this.valueBlock.value=String.fromCharCode.apply(null,_r.toUint8Array(e))}fromString(e){const t=e.length;const r=this.valueBlock.valueHexView=new Uint8Array(t);for(let n=0;n<t;n++){r[n]=e.charCodeAt(n)}this.valueBlock.value=e}}ci.NAME="SIMPLE STRING";class li extends ci{fromBuffer(e){this.valueBlock.valueHexView=_r.toUint8Array(e);try{this.valueBlock.value=Fr.ToUtf8String(e)}catch(t){this.warnings.push(`Error during "decodeURIComponent": ${t}, using raw string`);this.valueBlock.value=Fr.ToBinary(e)}}fromString(e){this.valueBlock.valueHexView=new Uint8Array(Fr.FromUtf8String(e));this.valueBlock.value=e}}var ui;var pi;var hi;var fi;var di;var yi;var mi;var gi;var vi;var bi;var Ei;var wi;var Si;var Ai;var Ni;var Ti;var Oi;var Ii;var ki;li.NAME="Utf8StringValueBlock";class Bi extends li{constructor(e={}){super(e);this.idBlock.tagClass=1;this.idBlock.tagNumber=12}}ui=Bi;fn.Utf8String=ui;Bi.NAME="UTF8String";class xi extends ci{fromBuffer(e){this.valueBlock.value=Fr.ToUtf16String(e);this.valueBlock.valueHexView=_r.toUint8Array(e)}fromString(e){this.valueBlock.value=e;this.valueBlock.valueHexView=new Uint8Array(Fr.FromUtf16String(e))}}xi.NAME="BmpStringValueBlock";class Ci extends xi{constructor({...e}={}){super(e);this.idBlock.tagClass=1;this.idBlock.tagNumber=30}}pi=Ci;fn.BmpString=pi;Ci.NAME="BMPString";class Ri extends ci{fromBuffer(e){const t=ArrayBuffer.isView(e)?e.slice().buffer:e.slice(0);const r=new Uint8Array(t);for(let e=0;e<r.length;e+=4){r[e]=r[e+3];r[e+1]=r[e+2];r[e+2]=0;r[e+3]=0}this.valueBlock.value=String.fromCharCode.apply(null,new Uint32Array(t))}fromString(e){const t=e.length;const r=this.valueBlock.valueHexView=new Uint8Array(t*4);for(let n=0;n<t;n++){const t=Kr(e.charCodeAt(n),8);const i=new Uint8Array(t);if(i.length>4){continue}const o=4-i.length;for(let e=i.length-1;e>=0;e--){r[n*4+e+o]=i[e]}}this.valueBlock.value=e}}Ri.NAME="UniversalStringValueBlock";class _i extends Ri{constructor({...e}={}){super(e);this.idBlock.tagClass=1;this.idBlock.tagNumber=28}}hi=_i;fn.UniversalString=hi;_i.NAME="UniversalString";class Ui extends ci{constructor(e={}){super(e);this.idBlock.tagClass=1;this.idBlock.tagNumber=18}}fi=Ui;fn.NumericString=fi;Ui.NAME="NumericString";class Di extends ci{constructor(e={}){super(e);this.idBlock.tagClass=1;this.idBlock.tagNumber=19}}di=Di;fn.PrintableString=di;Di.NAME="PrintableString";class Pi extends ci{constructor(e={}){super(e);this.idBlock.tagClass=1;this.idBlock.tagNumber=20}}yi=Pi;fn.TeletexString=yi;Pi.NAME="TeletexString";class Vi extends ci{constructor(e={}){super(e);this.idBlock.tagClass=1;this.idBlock.tagNumber=21}}mi=Vi;fn.VideotexString=mi;Vi.NAME="VideotexString";class ji extends ci{constructor(e={}){super(e);this.idBlock.tagClass=1;this.idBlock.tagNumber=22}}gi=ji;fn.IA5String=gi;ji.NAME="IA5String";class Li extends ci{constructor(e={}){super(e);this.idBlock.tagClass=1;this.idBlock.tagNumber=25}}vi=Li;fn.GraphicString=vi;Li.NAME="GraphicString";class Fi extends ci{constructor(e={}){super(e);this.idBlock.tagClass=1;this.idBlock.tagNumber=26}}bi=Fi;fn.VisibleString=bi;Fi.NAME="VisibleString";class Mi extends ci{constructor(e={}){super(e);this.idBlock.tagClass=1;this.idBlock.tagNumber=27}}Ei=Mi;fn.GeneralString=Ei;Mi.NAME="GeneralString";class Hi extends ci{constructor(e={}){super(e);this.idBlock.tagClass=1;this.idBlock.tagNumber=29}}wi=Hi;fn.CharacterString=wi;Hi.NAME="CharacterString";class Ki extends Fi{constructor({value:e,valueDate:t,...r}={}){super(r);this.year=0;this.month=0;this.day=0;this.hour=0;this.minute=0;this.second=0;if(e){this.fromString(e);this.valueBlock.valueHexView=new Uint8Array(e.length);for(let t=0;t<e.length;t++){this.valueBlock.valueHexView[t]=e.charCodeAt(t)}}if(t){this.fromDate(t);this.valueBlock.valueHexView=new Uint8Array(this.toBuffer())}this.idBlock.tagClass=1;this.idBlock.tagNumber=23}fromBuffer(e){this.fromString(String.fromCharCode.apply(null,_r.toUint8Array(e)))}toBuffer(){const e=this.toString();const t=new ArrayBuffer(e.length);const r=new Uint8Array(t);for(let t=0;t<e.length;t++){r[t]=e.charCodeAt(t)}return t}fromDate(e){this.year=e.getUTCFullYear();this.month=e.getUTCMonth()+1;this.day=e.getUTCDate();this.hour=e.getUTCHours();this.minute=e.getUTCMinutes();this.second=e.getUTCSeconds()}toDate(){return new Date(Date.UTC(this.year,this.month-1,this.day,this.hour,this.minute,this.second))}fromString(e){const t=/(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})Z/gi.exec(e);if(t===null){this.error="Wrong input string for conversion";return}const r=parseInt(t[1],10);this.year=r>=50?1900+r:2e3+r;this.month=parseInt(t[2],10);this.day=parseInt(t[3],10);this.hour=parseInt(t[4],10);this.minute=parseInt(t[5],10);this.second=parseInt(t[6],10)}toString(e="iso"){if(e==="iso"){const e=new Array(7);e[0]=Wr(this.year<2e3?this.year-1900:this.year-2e3,2);e[1]=Wr(this.month,2);e[2]=Wr(this.day,2);e[3]=Wr(this.hour,2);e[4]=Wr(this.minute,2);e[5]=Wr(this.second,2);e[6]="Z";return e.join("")}return super.toString(e)}onAsciiEncoding(){return`${this.constructor.NAME} : ${this.toDate().toISOString()}`}toJSON(){return{...super.toJSON(),year:this.year,month:this.month,day:this.day,hour:this.hour,minute:this.minute,second:this.second}}}Si=Ki;fn.UTCTime=Si;Ki.NAME="UTCTime";class $i extends Ki{constructor(e={}){var t;super(e);if((t=this.millisecond)===null||t===undefined){this.millisecond=0}this.idBlock.tagClass=1;this.idBlock.tagNumber=24}fromDate(e){super.fromDate(e);this.millisecond=e.getUTCMilliseconds()}toDate(){const e=Date.UTC(this.year,this.month-1,this.day,this.hour,this.minute,this.second,this.millisecond);return new Date(e)}fromString(e){let t;let r=false;let n="";let i="";let o=0;let s=0;let a=0;if(e[e.length-1]==="Z"){n=e.substring(0,e.length-1);r=true}else{const t=new Number(e[e.length-1]);if(isNaN(t.valueOf())){throw new Error("Wrong input string for conversion")}n=e}if(r){if(n.indexOf("+")!==-1){throw new Error("Wrong input string for conversion")}if(n.indexOf("-")!==-1){throw new Error("Wrong input string for conversion")}}else{let e=1;let t=n.indexOf("+");let r="";if(t===-1){t=n.indexOf("-");e=-1}if(t!==-1){r=n.substring(t+1);n=n.substring(0,t);if(r.length!==2&&r.length!==4){throw new Error("Wrong input string for conversion")}let i=parseInt(r.substring(0,2),10);if(isNaN(i.valueOf())){throw new Error("Wrong input string for conversion")}s=e*i;if(r.length===4){i=parseInt(r.substring(2,4),10);if(isNaN(i.valueOf())){throw new Error("Wrong input string for conversion")}a=e*i}}}let c=n.indexOf(".");if(c===-1){c=n.indexOf(",")}if(c!==-1){const e=new Number(`0${n.substring(c)}`);if(isNaN(e.valueOf())){throw new Error("Wrong input string for conversion")}o=e.valueOf();i=n.substring(0,c)}else{i=n}switch(true){case i.length===8:t=/(\d{4})(\d{2})(\d{2})/gi;if(c!==-1){throw new Error("Wrong input string for conversion")}break;case i.length===10:t=/(\d{4})(\d{2})(\d{2})(\d{2})/gi;if(c!==-1){let e=o*60;this.minute=Math.floor(e);e=(e-this.minute)*60;this.second=Math.floor(e);e=(e-this.second)*1e3;this.millisecond=Math.floor(e)}break;case i.length===12:t=/(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})/gi;if(c!==-1){let e=o*60;this.second=Math.floor(e);e=(e-this.second)*1e3;this.millisecond=Math.floor(e)}break;case i.length===14:t=/(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})/gi;if(c!==-1){const e=o*1e3;this.millisecond=Math.floor(e)}break;default:throw new Error("Wrong input string for conversion")}const l=t.exec(i);if(l===null){throw new Error("Wrong input string for conversion")}for(let e=1;e<l.length;e++){switch(e){case 1:this.year=parseInt(l[e],10);break;case 2:this.month=parseInt(l[e],10);break;case 3:this.day=parseInt(l[e],10);break;case 4:this.hour=parseInt(l[e],10)+s;break;case 5:this.minute=parseInt(l[e],10)+a;break;case 6:this.second=parseInt(l[e],10);break;default:throw new Error("Wrong input string for conversion")}}if(r===false){const e=new Date(this.year,this.month,this.day,this.hour,this.minute,this.second,this.millisecond);this.year=e.getUTCFullYear();this.month=e.getUTCMonth();this.day=e.getUTCDay();this.hour=e.getUTCHours();this.minute=e.getUTCMinutes();this.second=e.getUTCSeconds();this.millisecond=e.getUTCMilliseconds()}}toString(e="iso"){if(e==="iso"){const e=[];e.push(Wr(this.year,4));e.push(Wr(this.month,2));e.push(Wr(this.day,2));e.push(Wr(this.hour,2));e.push(Wr(this.minute,2));e.push(Wr(this.second,2));if(this.millisecond!==0){e.push(".");e.push(Wr(this.millisecond,3))}e.push("Z");return e.join("")}return super.toString(e)}toJSON(){return{...super.toJSON(),millisecond:this.millisecond}}}Ai=$i;fn.GeneralizedTime=Ai;$i.NAME="GeneralizedTime";class Gi extends Bi{constructor(e={}){super(e);this.idBlock.tagClass=1;this.idBlock.tagNumber=31}}Ni=Gi;fn.DATE=Ni;Gi.NAME="DATE";class Wi extends Bi{constructor(e={}){super(e);this.idBlock.tagClass=1;this.idBlock.tagNumber=32}}Ti=Wi;fn.TimeOfDay=Ti;Wi.NAME="TimeOfDay";class Yi extends Bi{constructor(e={}){super(e);this.idBlock.tagClass=1;this.idBlock.tagNumber=33}}Oi=Yi;fn.DateTime=Oi;Yi.NAME="DateTime";class Ji extends Bi{constructor(e={}){super(e);this.idBlock.tagClass=1;this.idBlock.tagNumber=34}}Ii=Ji;fn.Duration=Ii;Ji.NAME="Duration";class zi extends Bi{constructor(e={}){super(e);this.idBlock.tagClass=1;this.idBlock.tagNumber=14}}ki=zi;fn.TIME=ki;zi.NAME="TIME";class Xi{constructor({name:e="",optional:t=false}={}){this.name=e;this.optional=t}}class qi extends Xi{constructor({value:e=[],...t}={}){super(t);this.value=e}}class Qi extends Xi{constructor({value:e=new Xi,local:t=false,...r}={}){super(r);this.value=e;this.local=t}}function Zi(e,t,r){return{verified:true,result:e}}var eo;var to;var ro=Object.freeze({__proto__:null,Any:Xi,BaseBlock:dn,BaseStringBlock:mn,BitString:jn,BmpString:Ci,Boolean:Rn,CharacterString:Hi,Choice:qi,Constructed:In,DATE:Gi,DateTime:Yi,Duration:Ji,EndOfContent:Bn,Enumerated:qn,GeneralString:Mi,GeneralizedTime:$i,GraphicString:Li,HexBlock:cn,IA5String:ji,Integer:Xn,Null:xn,NumericString:Ui,ObjectIdentifier:ei,OctetString:Dn,Primitive:An,PrintableString:Di,RawData:class{get data(){return this.dataView.slice().buffer}set data(e){this.dataView=_r.toUint8Array(e)}constructor({data:e=nn}={}){this.dataView=_r.toUint8Array(e)}fromBER(e,t,r){const n=t+r;this.dataView=_r.toUint8Array(e).subarray(t,n);return n}toBER(e){return this.dataView.slice().buffer}},RelativeObjectIdentifier:ni,Repeated:Qi,Sequence:ii,Set:oi,TIME:zi,TeletexString:Pi,TimeOfDay:Wi,UTCTime:Ki,UniversalString:_i,Utf8String:Bi,ValueBlock:un,VideotexString:Vi,ViewWriter:Xr,VisibleString:Fi,compareSchema:Zi,fromBER:Tn,verifySchema:function(e,t){if(t instanceof Object==0){return{verified:false,result:{error:"Wrong ASN.1 schema type"}}}const r=Nn(_r.toUint8Array(e));if(r.offset===-1){return{verified:false,result:r.result}}else{return Zi(r.result,r.result,t)}}});(function(e){e[e.Sequence=0]="Sequence";e[e.Set=1]="Set";e[e.Choice=2]="Choice"})(eo||={});(function(e){e[e.Any=1]="Any";e[e.Boolean=2]="Boolean";e[e.OctetString=3]="OctetString";e[e.BitString=4]="BitString";e[e.Integer=5]="Integer";e[e.Enumerated=6]="Enumerated";e[e.ObjectIdentifier=7]="ObjectIdentifier";e[e.Utf8String=8]="Utf8String";e[e.BmpString=9]="BmpString";e[e.UniversalString=10]="UniversalString";e[e.NumericString=11]="NumericString";e[e.PrintableString=12]="PrintableString";e[e.TeletexString=13]="TeletexString";e[e.VideotexString=14]="VideotexString";e[e.IA5String=15]="IA5String";e[e.GraphicString=16]="GraphicString";e[e.VisibleString=17]="VisibleString";e[e.GeneralString=18]="GeneralString";e[e.CharacterString=19]="CharacterString";e[e.UTCTime=20]="UTCTime";e[e.GeneralizedTime=21]="GeneralizedTime";e[e.DATE=22]="DATE";e[e.TimeOfDay=23]="TimeOfDay";e[e.DateTime=24]="DateTime";e[e.Duration=25]="Duration";e[e.TIME=26]="TIME";e[e.Null=27]="Null"})(to||={});class no{constructor(e,t=0){this.unusedBits=0;this.value=new ArrayBuffer(0);if(e){if(typeof e=="number"){this.fromNumber(e)}else{if(!_r.isBufferSource(e)){throw TypeError("Unsupported type of 'params' argument for BitString")}this.unusedBits=t;this.value=_r.toArrayBuffer(e)}}}fromASN(e){if(!(e instanceof jn)){throw new TypeError("Argument 'asn' is not instance of ASN.1 BitString")}this.unusedBits=e.valueBlock.unusedBits;this.value=e.valueBlock.valueHex;return this}toASN(){return new jn({unusedBits:this.unusedBits,valueHex:this.value})}toSchema(e){return new jn({name:e})}toNumber(){let e="";const t=new Uint8Array(this.value);for(const r of t){e+=r.toString(2).padStart(8,"0")}e=e.split("").reverse().join("");if(this.unusedBits){e=e.slice(this.unusedBits).padStart(this.unusedBits,"0")}return parseInt(e,2)}fromNumber(e){let t=e.toString(2);const r=t.length+7>>3;this.unusedBits=(r<<3)-t.length;const n=new Uint8Array(r);t=t.padStart(r<<3,"0").split("").reverse().join("");let i=0;while(i<r){n[i]=parseInt(t.slice(i<<3,8+(i<<3)),2);i++}this.value=n.buffer}}class io{get byteLength(){return this.buffer.byteLength}get byteOffset(){return 0}constructor(e){if(typeof e=="number"){this.buffer=new ArrayBuffer(e)}else if(_r.isBufferSource(e)){this.buffer=_r.toArrayBuffer(e)}else if(Array.isArray(e)){this.buffer=new Uint8Array(e)}else{this.buffer=new ArrayBuffer(0)}}fromASN(e){if(!(e instanceof Dn)){throw new TypeError("Argument 'asn' is not instance of ASN.1 OctetString")}this.buffer=e.valueBlock.valueHex;return this}toASN(){return new Dn({valueHex:this.buffer})}toSchema(e){return new Dn({name:e})}}const oo={fromASN:e=>e instanceof xn?null:e.valueBeforeDecodeView,toASN:e=>{if(e===null){return new xn}const t=Tn(e);if(t.result.error){throw new Error(t.result.error)}return t.result}};const so={fromASN:e=>e.valueBlock.valueHexView.byteLength>=4?e.valueBlock.toString():e.valueBlock.valueDec,toASN:e=>new Xn({value:+e})};const ao={fromASN:e=>e.valueBlock.valueDec,toASN:e=>new qn({value:e})};const co={fromASN:e=>e.valueBlock.valueHexView,toASN:e=>new Xn({valueHex:e})};const lo={fromASN:e=>e.valueBlock.valueHexView,toASN:e=>new jn({valueHex:e})};const uo={fromASN:e=>e.valueBlock.toString(),toASN:e=>new ei({value:e})};const po={fromASN:e=>e.valueBlock.value,toASN:e=>new Rn({value:e})};const ho={fromASN:e=>e.valueBlock.valueHexView,toASN:e=>new Dn({valueHex:e})};const fo={fromASN:e=>new io(e.getValue()),toASN:e=>e.toASN()};function yo(e){return{fromASN:e=>e.valueBlock.value,toASN:t=>new e({value:t})}}const mo=yo(Bi);const go=yo(Ci);const vo=yo(_i);const bo=yo(Ui);const Eo=yo(Di);const wo=yo(Pi);const So=yo(Vi);const Ao=yo(ji);const No=yo(Li);const To=yo(Fi);const Oo=yo(Mi);const Io=yo(Hi);const ko={fromASN:e=>e.toDate(),toASN:e=>new Ki({valueDate:e})};const Bo={fromASN:e=>e.toDate(),toASN:e=>new $i({valueDate:e})};const xo={fromASN:()=>null,toASN:()=>new xn};function Co(e){switch(e){case to.Any:return oo;case to.BitString:return lo;case to.BmpString:return go;case to.Boolean:return po;case to.CharacterString:return Io;case to.Enumerated:return ao;case to.GeneralString:return Oo;case to.GeneralizedTime:return Bo;case to.GraphicString:return No;case to.IA5String:return Ao;case to.Integer:return so;case to.Null:return xo;case to.NumericString:return bo;case to.ObjectIdentifier:return uo;case to.OctetString:return ho;case to.PrintableString:return Eo;case to.TeletexString:return wo;case to.UTCTime:return ko;case to.UniversalString:return vo;case to.Utf8String:return mo;case to.VideotexString:return So;case to.VisibleString:return To;default:return null}}function Ro(e){if(typeof e=="function"&&e.prototype){return!!e.prototype.toASN&&!!e.prototype.fromASN||Ro(e.prototype)}else{return!!e&&typeof e=="object"&&!!("toASN"in e)&&!!("fromASN"in e)}}function _o(e){if(e){const r=Object.getPrototypeOf(e);return(r==null?undefined:r.prototype)?.constructor===Array||_o(r)}return false}function Uo(e,t){if(!e||!t){return false}if(e.byteLength!==t.byteLength){return false}const r=new Uint8Array(e);const n=new Uint8Array(t);for(let t=0;t<e.byteLength;t++){if(r[t]!==n[t]){return false}}return true}const Do=new class{constructor(){this.items=new WeakMap}has(e){return this.items.has(e)}get(e,t=false){const r=this.items.get(e);if(!r){throw new Error(`Cannot get schema for '${e.prototype.constructor.name}' target`)}if(t&&!r.schema){throw new Error(`Schema '${e.prototype.constructor.name}' doesn't contain ASN.1 schema. Call 'AsnSchemaStorage.cache'.`)}return r}cache(e){const t=this.get(e);t.schema||=this.create(e,true)}createDefault(e){const t={type:eo.Sequence,items:{}};const r=this.findParentSchema(e);if(r){Object.assign(t,r);t.items=Object.assign({},t.items,r.items)}return t}create(e,t){const r=this.items.get(e)||this.createDefault(e);const n=[];for(const e in r.items){const i=r.items[e];const o=t?e:"";let s;if(typeof i.type=="number"){const e=to[i.type];const t=ro[e];if(!t){throw new Error(`Cannot get ASN1 class by name '${e}'`)}s=new t({name:o})}else if(Ro(i.type)){s=(new i.type).toSchema(o)}else if(i.optional){if(this.get(i.type).type===eo.Choice){s=new Xi({name:o})}else{s=this.create(i.type,false);s.name=o}}else{s=new Xi({name:o})}const a=!!i.optional||i.defaultValue!==undefined;if(i.repeated){s.name="";s=new(i.repeated==="set"?oi:ii)({name:"",value:[new Qi({name:o,value:s})]})}if(i.context!==null&&i.context!==undefined){if(i.implicit){if(typeof i.type=="number"||Ro(i.type)){const e=i.repeated?In:An;n.push(new e({name:o,optional:a,idBlock:{tagClass:3,tagNumber:i.context}}))}else{this.cache(i.type);const e=!!i.repeated;let t=e?s:this.get(i.type,true).schema;t="valueBlock"in t?t.valueBlock.value:t.value;n.push(new In({name:e?"":o,optional:a,idBlock:{tagClass:3,tagNumber:i.context},value:t}))}}else{n.push(new In({optional:a,idBlock:{tagClass:3,tagNumber:i.context},value:[s]}))}}else{s.optional=a;n.push(s)}}switch(r.type){case eo.Sequence:return new ii({value:n,name:""});case eo.Set:return new oi({value:n,name:""});case eo.Choice:return new qi({value:n,name:""});default:throw new Error("Unsupported ASN1 type in use")}}set(e,t){this.items.set(e,t);return this}findParentSchema(e){const t=Object.getPrototypeOf(e);if(t){return this.items.get(t)||this.findParentSchema(t)}else{return null}}};const Po=e=>t=>{let r;if(Do.has(t)){r=Do.get(t)}else{r=Do.createDefault(t);Do.set(t,r)}Object.assign(r,e)};const Vo=e=>(t,r)=>{let n;if(Do.has(t.constructor)){n=Do.get(t.constructor)}else{n=Do.createDefault(t.constructor);Do.set(t.constructor,n)}const i=Object.assign({},e);if(typeof i.type=="number"&&!i.converter){const n=Co(e.type);if(!n){throw new Error(`Cannot get default converter for property '${r}' of ${t.constructor.name}`)}i.converter=n}n.items[r]=i};class jo extends Error{constructor(){super(...arguments);this.schemas=[]}}class Lo{static parse(e,t){const r=Tn(e);if(r.result.error){throw new Error(r.result.error)}return this.fromASN(r.result,t)}static fromASN(e,t){try{if(Ro(t)){return(new t).fromASN(e)}const n=Do.get(t);Do.cache(t);let i=n.schema;if(e.constructor===In&&n.type!==eo.Choice){i=new In({idBlock:{tagClass:3,tagNumber:e.idBlock.tagNumber},value:n.schema.valueBlock.value});for(const t in n.items){delete e[t]}}const o=Zi({},e,i);if(!o.verified){throw new jo(`Data does not match to ${t.name} ASN1 schema. ${o.result.error}`)}const s=new t;if(_o(t)){if(!("value"in e.valueBlock)||!Array.isArray(e.valueBlock.value)){throw new Error("Cannot get items from the ASN.1 parsed value. ASN.1 object is not constructed.")}const r=n.itemType;if(typeof r=="number"){const n=Co(r);if(!n){throw new Error(`Cannot get default converter for array item of ${t.name} ASN1 schema`)}return t.from(e.valueBlock.value,e=>n.fromASN(e))}return t.from(e.valueBlock.value,e=>this.fromASN(e,r))}for(const e in n.items){const t=o.result[e];if(!t){continue}const i=n.items[e];const a=i.type;if(typeof a=="number"||Ro(a)){const n=i.converter??(Ro(a)?new a:null);if(!n){throw new Error("Converter is empty")}if(i.repeated){if(i.implicit){const r=new(i.repeated==="sequence"?ii:oi);r.valueBlock=t.valueBlock;const o=Tn(r.toBER(false));if(o.offset===-1){throw new Error(`Cannot parse the child item. ${o.result.error}`)}if(!("value"in o.result.valueBlock)||!Array.isArray(o.result.valueBlock.value)){throw new Error("Cannot get items from the ASN.1 parsed value. ASN.1 object is not constructed.")}const a=o.result.valueBlock.value;s[e]=Array.from(a,e=>n.fromASN(e))}else{s[e]=Array.from(t,e=>n.fromASN(e))}}else{let r=t;if(i.implicit){let e;if(Ro(a)){e=(new a).toSchema("")}else{const t=to[a];const r=ro[t];if(!r){throw new Error(`Cannot get '${t}' class from asn1js module`)}e=new r}e.valueBlock=r.valueBlock;r=Tn(e.toBER(false)).result}s[e]=n.fromASN(r)}}else if(i.repeated){if(!Array.isArray(t)){throw new Error("Cannot get list of items from the ASN.1 parsed value. ASN.1 value should be iterable.")}s[e]=Array.from(t,e=>this.fromASN(e,a))}else{s[e]=this.fromASN(t,a)}}return s}catch(e){if(e instanceof jo){e.schemas.push(t.name)}throw e}}}class Fo{static serialize(e){if(e instanceof dn){return e.toBER(false)}else{return this.toASN(e).toBER(false)}}static toASN(e){if(e&&typeof e=="object"&&Ro(e)){return e.toASN()}if(!e||typeof e!="object"){throw new TypeError("Parameter 1 should be type of Object.")}const t=e.constructor;const r=Do.get(t);Do.cache(t);let n;let i=[];if(r.itemType){if(!Array.isArray(e)){throw new TypeError("Parameter 1 should be type of Array.")}if(typeof r.itemType=="number"){const n=Co(r.itemType);if(!n){throw new Error(`Cannot get default converter for array item of ${t.name} ASN1 schema`)}i=e.map(e=>n.toASN(e))}else{i=e.map(e=>this.toAsnItem({type:r.itemType},"[]",t,e))}}else{for(const n in r.items){const o=r.items[n];const s=e[n];if(s===undefined||o.defaultValue===s||typeof o.defaultValue=="object"&&typeof s=="object"&&Uo(this.serialize(o.defaultValue),this.serialize(s))){continue}const a=Fo.toAsnItem(o,n,t,s);if(typeof o.context=="number"){if(o.implicit){if(o.repeated||typeof o.type!="number"&&!Ro(o.type)){i.push(new In({optional:o.optional,idBlock:{tagClass:3,tagNumber:o.context},value:a.valueBlock.value}))}else{const e={};e.valueHex=a instanceof xn?a.valueBeforeDecodeView:a.valueBlock.toBER();i.push(new An({optional:o.optional,idBlock:{tagClass:3,tagNumber:o.context},...e}))}}else{i.push(new In({optional:o.optional,idBlock:{tagClass:3,tagNumber:o.context},value:[a]}))}}else if(o.repeated){i=i.concat(a)}else{i.push(a)}}}switch(r.type){case eo.Sequence:n=new ii({value:i});break;case eo.Set:n=new oi({value:i});break;case eo.Choice:if(!i[0]){throw new Error(`Schema '${t.name}' has wrong data. Choice cannot be empty.`)}n=i[0]}return n}static toAsnItem(e,t,r,n){let i;if(typeof e.type=="number"){const o=e.converter;if(!o){throw new Error(`Property '${t}' doesn't have converter for type ${to[e.type]} in schema '${r.name}'`)}if(e.repeated){if(!Array.isArray(n)){throw new TypeError("Parameter 'objProp' should be type of Array.")}const t=Array.from(n,e=>o.toASN(e));i=new(e.repeated==="sequence"?ii:oi)({value:t})}else{i=o.toASN(n)}}else if(e.repeated){if(!Array.isArray(n)){throw new TypeError("Parameter 'objProp' should be type of Array.")}const t=Array.from(n,e=>this.toASN(e));i=new(e.repeated==="sequence"?ii:oi)({value:t})}else{i=this.toASN(n)}return i}}class Mo extends Array{constructor(e=[]){if(typeof e=="number"){super(e)}else{super();for(const t of e){this.push(t)}}}}class Ho{static serialize(e){return Fo.serialize(e)}static parse(e,t){return Lo.parse(e,t)}static toString(e){const t=Tn(_r.isBufferSource(e)?_r.toArrayBuffer(e):Ho.serialize(e));if(t.offset===-1){throw new Error(`Cannot decode ASN.1 data. ${t.result.error}`)}return t.result.toString()}}class Ko{static isIPv4(e){return/^(\d{1,3}\.){3}\d{1,3}$/.test(e)}static parseIPv4(e){const t=e.split(".");if(t.length!==4){throw new Error("Invalid IPv4 address")}return t.map(e=>{const t=parseInt(e,10);if(isNaN(t)||t<0||t>255){throw new Error("Invalid IPv4 address part")}return t})}static parseIPv6(e){const t=this.expandIPv6(e).split(":");if(t.length!==8){throw new Error("Invalid IPv6 address")}return t.reduce((e,t)=>{const r=parseInt(t,16);if(isNaN(r)||r<0||r>65535){throw new Error("Invalid IPv6 address part")}e.push(r>>8&255);e.push(r&255);return e},[])}static expandIPv6(e){if(!e.includes("::")){return e}const t=e.split("::");if(t.length>2){throw new Error("Invalid IPv6 address")}const r=t[0]?t[0].split(":"):[];const n=t[1]?t[1].split(":"):[];const i=8-(r.length+n.length);if(i<0){throw new Error("Invalid IPv6 address")}return[...r,...Array(i).fill("0"),...n].join(":")}static formatIPv6(e){const t=[];for(let r=0;r<16;r+=2){t.push((e[r]<<8|e[r+1]).toString(16))}return this.compressIPv6(t.join(":"))}static compressIPv6(e){const t=e.split(":");let r=-1;let n=0;let i=-1;let o=0;for(let e=0;e<t.length;e++){if(t[e]==="0"){if(i===-1){i=e}o++}else{if(o>n){r=i;n=o}i=-1;o=0}}if(o>n){r=i;n=o}if(n>1){return`${t.slice(0,r).join(":")}::${t.slice(r+n).join(":")}`}else{return e}}static parseCIDR(e){const[t,r]=e.split("/");const n=parseInt(r,10);if(this.isIPv4(t)){if(n<0||n>32){throw new Error("Invalid IPv4 prefix length")}return[this.parseIPv4(t),n]}if(n<0||n>128){throw new Error("Invalid IPv6 prefix length")}return[this.parseIPv6(t),n]}static decodeIP(e){if(e.length===64&&parseInt(e,16)===0){return"::/0"}if(e.length!==16){return e}const t=parseInt(e.slice(8),16).toString(2).split("").reduce((e,t)=>e+ +t,0);let r=e.slice(0,8).replace(/(.{2})/g,e=>`${parseInt(e,16)}.`);r=r.slice(0,-1);return`${r}/${t}`}static toString(e){const t=new Uint8Array(e);if(t.length===4){return Array.from(t).join(".")}if(t.length===16){return this.formatIPv6(t)}if(t.length===8||t.length===32){const e=t.length/2;const r=t.slice(0,e);const n=t.slice(e);if(t.every(e=>e===0)){if(t.length===8){return"0.0.0.0/0"}else{return"::/0"}}const i=n.reduce((e,t)=>e+(t.toString(2).match(/1/g)||[]).length,0);if(t.length===8){return`${Array.from(r).join(".")}/${i}`}else{return`${this.formatIPv6(r)}/${i}`}}return this.decodeIP(Fr.ToHex(e))}static fromString(e){if(e.includes("/")){const[t,r]=this.parseCIDR(e);const n=new Uint8Array(t.length);let i=r;for(let e=0;e<n.length;e++){if(i>=8){n[e]=255;i-=8}else if(i>0){n[e]=255<<8-i;i=0}}const o=new Uint8Array(t.length*2);o.set(t,0);o.set(n,t.length);return o.buffer}const t=this.isIPv4(e)?this.parseIPv4(e):this.parseIPv6(e);return new Uint8Array(t).buffer}}var $o;var Go;var Wo;let Yo=class{constructor(e={}){Object.assign(this,e)}toString(){return this.bmpString||this.printableString||this.teletexString||this.universalString||this.utf8String||""}};e([Vo({type:to.TeletexString})],Yo.prototype,"teletexString",undefined);e([Vo({type:to.PrintableString})],Yo.prototype,"printableString",undefined);e([Vo({type:to.UniversalString})],Yo.prototype,"universalString",undefined);e([Vo({type:to.Utf8String})],Yo.prototype,"utf8String",undefined);e([Vo({type:to.BmpString})],Yo.prototype,"bmpString",undefined);Yo=e([Po({type:eo.Choice})],Yo);let Jo=class extends Yo{constructor(e={}){super(e);Object.assign(this,e)}toString(){return this.ia5String||(this.anyValue?Fr.ToHex(this.anyValue):super.toString())}};e([Vo({type:to.IA5String})],Jo.prototype,"ia5String",undefined);e([Vo({type:to.Any})],Jo.prototype,"anyValue",undefined);Jo=e([Po({type:eo.Choice})],Jo);class zo{constructor(e={}){this.type="";this.value=new Jo;Object.assign(this,e)}}e([Vo({type:to.ObjectIdentifier})],zo.prototype,"type",undefined);e([Vo({type:Jo})],zo.prototype,"value",undefined);let Xo=$o=class extends Mo{constructor(e){super(e);Object.setPrototypeOf(this,$o.prototype)}};Xo=$o=e([Po({type:eo.Set,itemType:zo})],Xo);let qo=Go=class extends Mo{constructor(e){super(e);Object.setPrototypeOf(this,Go.prototype)}};qo=Go=e([Po({type:eo.Sequence,itemType:Xo})],qo);let Qo=Wo=class extends qo{constructor(e){super(e);Object.setPrototypeOf(this,Wo.prototype)}};Qo=Wo=e([Po({type:eo.Sequence})],Qo);const Zo={fromASN:e=>Ko.toString(ho.fromASN(e)),toASN:e=>ho.toASN(Ko.fromString(e))};class es{constructor(e={}){this.typeId="";this.value=new ArrayBuffer(0);Object.assign(this,e)}}e([Vo({type:to.ObjectIdentifier})],es.prototype,"typeId",undefined);e([Vo({type:to.Any,context:0})],es.prototype,"value",undefined);class ts{constructor(e={}){this.partyName=new Yo;Object.assign(this,e)}}e([Vo({type:Yo,optional:true,context:0,implicit:true})],ts.prototype,"nameAssigner",undefined);e([Vo({type:Yo,context:1,implicit:true})],ts.prototype,"partyName",undefined);let rs=class{constructor(e={}){Object.assign(this,e)}};e([Vo({type:es,context:0,implicit:true})],rs.prototype,"otherName",undefined);e([Vo({type:to.IA5String,context:1,implicit:true})],rs.prototype,"rfc822Name",undefined);e([Vo({type:to.IA5String,context:2,implicit:true})],rs.prototype,"dNSName",undefined);e([Vo({type:to.Any,context:3,implicit:true})],rs.prototype,"x400Address",undefined);e([Vo({type:Qo,context:4,implicit:false})],rs.prototype,"directoryName",undefined);e([Vo({type:ts,context:5})],rs.prototype,"ediPartyName",undefined);e([Vo({type:to.IA5String,context:6,implicit:true})],rs.prototype,"uniformResourceIdentifier",undefined);e([Vo({type:to.OctetString,context:7,implicit:true,converter:Zo})],rs.prototype,"iPAddress",undefined);e([Vo({type:to.ObjectIdentifier,context:8,implicit:true})],rs.prototype,"registeredID",undefined);rs=e([Po({type:eo.Choice})],rs);const ns="1.3.6.1.5.5.7";const is=`${ns}.3`;const os=`${ns}.48`;const ss=`${os}.1`;const as=`${os}.2`;const cs=`${os}.3`;const ls=`${os}.5`;const us="2.5.29";var ps;const hs=`${ns}.1.1`;class fs{constructor(e={}){this.accessMethod="";this.accessLocation=new rs;Object.assign(this,e)}}e([Vo({type:to.ObjectIdentifier})],fs.prototype,"accessMethod",undefined);e([Vo({type:rs})],fs.prototype,"accessLocation",undefined);let ds=ps=class extends Mo{constructor(e){super(e);Object.setPrototypeOf(this,ps.prototype)}};ds=ps=e([Po({type:eo.Sequence,itemType:fs})],ds);const ys=`${us}.35`;class ms extends io{}class gs{constructor(e={}){if(e){Object.assign(this,e)}}}e([Vo({type:ms,context:0,optional:true,implicit:true})],gs.prototype,"keyIdentifier",undefined);e([Vo({type:rs,context:1,optional:true,implicit:true,repeated:"sequence"})],gs.prototype,"authorityCertIssuer",undefined);e([Vo({type:to.Integer,context:2,optional:true,implicit:true,converter:co})],gs.prototype,"authorityCertSerialNumber",undefined);const vs=`${us}.19`;class bs{constructor(e={}){this.cA=false;Object.assign(this,e)}}var Es;e([Vo({type:to.Boolean,defaultValue:false})],bs.prototype,"cA",undefined);e([Vo({type:to.Integer,optional:true})],bs.prototype,"pathLenConstraint",undefined);let ws=Es=class extends Mo{constructor(e){super(e);Object.setPrototypeOf(this,Es.prototype)}};var Ss;ws=Es=e([Po({type:eo.Sequence,itemType:rs})],ws);let As=Ss=class extends ws{constructor(e){super(e);Object.setPrototypeOf(this,Ss.prototype)}};var Ns;As=Ss=e([Po({type:eo.Sequence})],As);const Ts=`${us}.32`;let Os=class{constructor(e={}){Object.assign(this,e)}toString(){return this.ia5String||this.visibleString||this.bmpString||this.utf8String||""}};e([Vo({type:to.IA5String})],Os.prototype,"ia5String",undefined);e([Vo({type:to.VisibleString})],Os.prototype,"visibleString",undefined);e([Vo({type:to.BmpString})],Os.prototype,"bmpString",undefined);e([Vo({type:to.Utf8String})],Os.prototype,"utf8String",undefined);Os=e([Po({type:eo.Choice})],Os);class Is{constructor(e={}){this.organization=new Os;this.noticeNumbers=[];Object.assign(this,e)}}e([Vo({type:Os})],Is.prototype,"organization",undefined);e([Vo({type:to.Integer,repeated:"sequence"})],Is.prototype,"noticeNumbers",undefined);class ks{constructor(e={}){Object.assign(this,e)}}e([Vo({type:Is,optional:true})],ks.prototype,"noticeRef",undefined);e([Vo({type:Os,optional:true})],ks.prototype,"explicitText",undefined);let Bs=class{constructor(e={}){Object.assign(this,e)}};e([Vo({type:to.IA5String})],Bs.prototype,"cPSuri",undefined);e([Vo({type:ks})],Bs.prototype,"userNotice",undefined);Bs=e([Po({type:eo.Choice})],Bs);class xs{constructor(e={}){this.policyQualifierId="";this.qualifier=new ArrayBuffer(0);Object.assign(this,e)}}e([Vo({type:to.ObjectIdentifier})],xs.prototype,"policyQualifierId",undefined);e([Vo({type:to.Any})],xs.prototype,"qualifier",undefined);class Cs{constructor(e={}){this.policyIdentifier="";Object.assign(this,e)}}e([Vo({type:to.ObjectIdentifier})],Cs.prototype,"policyIdentifier",undefined);e([Vo({type:xs,repeated:"sequence",optional:true})],Cs.prototype,"policyQualifiers",undefined);let Rs=Ns=class extends Mo{constructor(e){super(e);Object.setPrototypeOf(this,Ns.prototype)}};Rs=Ns=e([Po({type:eo.Sequence,itemType:Cs})],Rs);let _s=class{constructor(e=0){this.value=e}};e([Vo({type:to.Integer})],_s.prototype,"value",undefined);_s=e([Po({type:eo.Choice})],_s);let Us=class extends _s{};var Ds;Us=e([Po({type:eo.Choice})],Us);const Ps=`${us}.31`;var Vs;(function(e){e[e.unused=1]="unused";e[e.keyCompromise=2]="keyCompromise";e[e.cACompromise=4]="cACompromise";e[e.affiliationChanged=8]="affiliationChanged";e[e.superseded=16]="superseded";e[e.cessationOfOperation=32]="cessationOfOperation";e[e.certificateHold=64]="certificateHold";e[e.privilegeWithdrawn=128]="privilegeWithdrawn";e[e.aACompromise=256]="aACompromise"})(Vs||={});class js extends no{toJSON(){const e=[];const t=this.toNumber();if(t&Vs.aACompromise){e.push("aACompromise")}if(t&Vs.affiliationChanged){e.push("affiliationChanged")}if(t&Vs.cACompromise){e.push("cACompromise")}if(t&Vs.certificateHold){e.push("certificateHold")}if(t&Vs.cessationOfOperation){e.push("cessationOfOperation")}if(t&Vs.keyCompromise){e.push("keyCompromise")}if(t&Vs.privilegeWithdrawn){e.push("privilegeWithdrawn")}if(t&Vs.superseded){e.push("superseded")}if(t&Vs.unused){e.push("unused")}return e}toString(){return`[${this.toJSON().join(", ")}]`}}let Ls=class{constructor(e={}){Object.assign(this,e)}};e([Vo({type:rs,context:0,repeated:"sequence",implicit:true})],Ls.prototype,"fullName",undefined);e([Vo({type:Xo,context:1,implicit:true})],Ls.prototype,"nameRelativeToCRLIssuer",undefined);Ls=e([Po({type:eo.Choice})],Ls);class Fs{constructor(e={}){Object.assign(this,e)}}e([Vo({type:Ls,context:0,optional:true})],Fs.prototype,"distributionPoint",undefined);e([Vo({type:js,context:1,optional:true,implicit:true})],Fs.prototype,"reasons",undefined);e([Vo({type:rs,context:2,optional:true,repeated:"sequence",implicit:true})],Fs.prototype,"cRLIssuer",undefined);let Ms=Ds=class extends Mo{constructor(e){super(e);Object.setPrototypeOf(this,Ds.prototype)}};var Hs;Ms=Ds=e([Po({type:eo.Sequence,itemType:Fs})],Ms);let Ks=Hs=class extends Ms{constructor(e){super(e);Object.setPrototypeOf(this,Hs.prototype)}};Ks=Hs=e([Po({type:eo.Sequence,itemType:Fs})],Ks);class $s{constructor(e={}){this.onlyContainsUserCerts=$s.ONLY;this.onlyContainsCACerts=$s.ONLY;this.indirectCRL=$s.ONLY;this.onlyContainsAttributeCerts=$s.ONLY;Object.assign(this,e)}}var Gs;$s.ONLY=false;e([Vo({type:Ls,context:0,optional:true})],$s.prototype,"distributionPoint",undefined);e([Vo({type:to.Boolean,context:1,defaultValue:$s.ONLY,implicit:true})],$s.prototype,"onlyContainsUserCerts",undefined);e([Vo({type:to.Boolean,context:2,defaultValue:$s.ONLY,implicit:true})],$s.prototype,"onlyContainsCACerts",undefined);e([Vo({type:js,context:3,optional:true,implicit:true})],$s.prototype,"onlySomeReasons",undefined);e([Vo({type:to.Boolean,context:4,defaultValue:$s.ONLY,implicit:true})],$s.prototype,"indirectCRL",undefined);e([Vo({type:to.Boolean,context:5,defaultValue:$s.ONLY,implicit:true})],$s.prototype,"onlyContainsAttributeCerts",undefined);(function(e){e[e.unspecified=0]="unspecified";e[e.keyCompromise=1]="keyCompromise";e[e.cACompromise=2]="cACompromise";e[e.affiliationChanged=3]="affiliationChanged";e[e.superseded=4]="superseded";e[e.cessationOfOperation=5]="cessationOfOperation";e[e.certificateHold=6]="certificateHold";e[e.removeFromCRL=8]="removeFromCRL";e[e.privilegeWithdrawn=9]="privilegeWithdrawn";e[e.aACompromise=10]="aACompromise"})(Gs||={});let Ws=class{constructor(e=Gs.unspecified){this.reason=Gs.unspecified;this.reason=e}toJSON(){return Gs[this.reason]}toString(){return this.toJSON()}};var Ys;e([Vo({type:to.Enumerated})],Ws.prototype,"reason",undefined);Ws=e([Po({type:eo.Choice})],Ws);const Js=`${us}.37`;let zs=Ys=class extends Mo{constructor(e){super(e);Object.setPrototypeOf(this,Ys.prototype)}};zs=Ys=e([Po({type:eo.Sequence,itemType:to.ObjectIdentifier})],zs);const Xs=`${is}.1`;const qs=`${is}.2`;const Qs=`${is}.3`;const Zs=`${is}.4`;const ea=`${is}.8`;const ta=`${is}.9`;let ra=class{constructor(e=new ArrayBuffer(0)){this.value=e}};e([Vo({type:to.Integer,converter:co})],ra.prototype,"value",undefined);ra=e([Po({type:eo.Choice})],ra);let na=class{constructor(e){this.value=new Date;if(e){this.value=e}}};var ia;e([Vo({type:to.GeneralizedTime})],na.prototype,"value",undefined);na=e([Po({type:eo.Choice})],na);let oa=ia=class extends ws{constructor(e){super(e);Object.setPrototypeOf(this,ia.prototype)}};oa=ia=e([Po({type:eo.Sequence})],oa);const sa=`${us}.15`;var aa;var ca;(function(e){e[e.digitalSignature=1]="digitalSignature";e[e.nonRepudiation=2]="nonRepudiation";e[e.keyEncipherment=4]="keyEncipherment";e[e.dataEncipherment=8]="dataEncipherment";e[e.keyAgreement=16]="keyAgreement";e[e.keyCertSign=32]="keyCertSign";e[e.cRLSign=64]="cRLSign";e[e.encipherOnly=128]="encipherOnly";e[e.decipherOnly=256]="decipherOnly"})(aa||={});class la extends no{toJSON(){const e=this.toNumber();const t=[];if(e&aa.cRLSign){t.push("crlSign")}if(e&aa.dataEncipherment){t.push("dataEncipherment")}if(e&aa.decipherOnly){t.push("decipherOnly")}if(e&aa.digitalSignature){t.push("digitalSignature")}if(e&aa.encipherOnly){t.push("encipherOnly")}if(e&aa.keyAgreement){t.push("keyAgreement")}if(e&aa.keyCertSign){t.push("keyCertSign")}if(e&aa.keyEncipherment){t.push("keyEncipherment")}if(e&aa.nonRepudiation){t.push("nonRepudiation")}return t}toString(){return`[${this.toJSON().join(", ")}]`}}class ua{constructor(e={}){this.base=new rs;this.minimum=0;Object.assign(this,e)}}e([Vo({type:rs})],ua.prototype,"base",undefined);e([Vo({type:to.Integer,context:0,defaultValue:0,implicit:true})],ua.prototype,"minimum",undefined);e([Vo({type:to.Integer,context:1,optional:true,implicit:true})],ua.prototype,"maximum",undefined);let pa=ca=class extends Mo{constructor(e){super(e);Object.setPrototypeOf(this,ca.prototype)}};pa=ca=e([Po({type:eo.Sequence,itemType:ua})],pa);class ha{constructor(e={}){Object.assign(this,e)}}e([Vo({type:pa,context:0,optional:true,implicit:true})],ha.prototype,"permittedSubtrees",undefined);e([Vo({type:pa,context:1,optional:true,implicit:true})],ha.prototype,"excludedSubtrees",undefined);class fa{constructor(e={}){Object.assign(this,e)}}var da;e([Vo({type:to.Integer,context:0,implicit:true,optional:true,converter:co})],fa.prototype,"requireExplicitPolicy",undefined);e([Vo({type:to.Integer,context:1,implicit:true,optional:true,converter:co})],fa.prototype,"inhibitPolicyMapping",undefined);class ya{constructor(e={}){this.issuerDomainPolicy="";this.subjectDomainPolicy="";Object.assign(this,e)}}e([Vo({type:to.ObjectIdentifier})],ya.prototype,"issuerDomainPolicy",undefined);e([Vo({type:to.ObjectIdentifier})],ya.prototype,"subjectDomainPolicy",undefined);let ma=da=class extends Mo{constructor(e){super(e);Object.setPrototypeOf(this,da.prototype)}};var ga;ma=da=e([Po({type:eo.Sequence,itemType:ya})],ma);const va=`${us}.17`;let ba=ga=class extends ws{constructor(e){super(e);Object.setPrototypeOf(this,ga.prototype)}};ba=ga=e([Po({type:eo.Sequence})],ba);let Ea=class{constructor(e={}){this.type="";this.values=[];Object.assign(this,e)}};var wa;e([Vo({type:to.ObjectIdentifier})],Ea.prototype,"type",undefined);e([Vo({type:to.Any,repeated:"set"})],Ea.prototype,"values",undefined);let Sa=wa=class extends Mo{constructor(e){super(e);Object.setPrototypeOf(this,wa.prototype)}};Sa=wa=e([Po({type:eo.Sequence,itemType:Ea})],Sa);const Aa=`${us}.14`;class Na extends ms{}class Ta{constructor(e={}){Object.assign(this,e)}}var Oa;var Ia;e([Vo({type:to.GeneralizedTime,context:0,implicit:true,optional:true})],Ta.prototype,"notBefore",undefined);e([Vo({type:to.GeneralizedTime,context:1,implicit:true,optional:true})],Ta.prototype,"notAfter",undefined);(function(e){e[e.keyUpdateAllowed=1]="keyUpdateAllowed";e[e.newExtensions=2]="newExtensions";e[e.pKIXCertificate=4]="pKIXCertificate"})(Oa||={});class ka extends no{toJSON(){const e=[];const t=this.toNumber();if(t&Oa.pKIXCertificate){e.push("pKIXCertificate")}if(t&Oa.newExtensions){e.push("newExtensions")}if(t&Oa.keyUpdateAllowed){e.push("keyUpdateAllowed")}return e}toString(){return`[${this.toJSON().join(", ")}]`}}class Ba{constructor(e={}){this.entrustVers="";this.entrustInfoFlags=new ka;Object.assign(this,e)}}e([Vo({type:to.GeneralString})],Ba.prototype,"entrustVers",undefined);e([Vo({type:ka})],Ba.prototype,"entrustInfoFlags",undefined);let xa=Ia=class extends Mo{constructor(e){super(e);Object.setPrototypeOf(this,Ia.prototype)}};xa=Ia=e([Po({type:eo.Sequence,itemType:fs})],xa);class Ca{constructor(e={}){this.algorithm="";Object.assign(this,e)}isEqual(e){return e instanceof Ca&&e.algorithm==this.algorithm&&(e.parameters&&this.parameters&&Mr(e.parameters,this.parameters)||e.parameters===this.parameters)}}e([Vo({type:to.ObjectIdentifier})],Ca.prototype,"algorithm",undefined);e([Vo({type:to.Any,optional:true})],Ca.prototype,"parameters",undefined);class Ra{constructor(e={}){this.algorithm=new Ca;this.subjectPublicKey=new ArrayBuffer(0);Object.assign(this,e)}}e([Vo({type:Ca})],Ra.prototype,"algorithm",undefined);e([Vo({type:to.BitString})],Ra.prototype,"subjectPublicKey",undefined);let _a=class{constructor(e){if(e){if(typeof e=="string"||typeof e=="number"||e instanceof Date){const t=new Date(e);if(t.getUTCFullYear()>2049){this.generalTime=t}else{this.utcTime=t}}else{Object.assign(this,e)}}}getTime(){const e=this.utcTime||this.generalTime;if(!e){throw new Error("Cannot get time from CHOICE object")}return e}};e([Vo({type:to.UTCTime})],_a.prototype,"utcTime",undefined);e([Vo({type:to.GeneralizedTime})],_a.prototype,"generalTime",undefined);_a=e([Po({type:eo.Choice})],_a);class Ua{constructor(e){this.notBefore=new _a(new Date);this.notAfter=new _a(new Date);if(e){this.notBefore=new _a(e.notBefore);this.notAfter=new _a(e.notAfter)}}}var Da;e([Vo({type:_a})],Ua.prototype,"notBefore",undefined);e([Vo({type:_a})],Ua.prototype,"notAfter",undefined);let Pa=class e{constructor(t={}){this.extnID="";this.critical=e.CRITICAL;this.extnValue=new io;Object.assign(this,t)}};Pa.CRITICAL=false;e([Vo({type:to.ObjectIdentifier})],Pa.prototype,"extnID",undefined);e([Vo({type:to.Boolean,defaultValue:Pa.CRITICAL})],Pa.prototype,"critical",undefined);e([Vo({type:io})],Pa.prototype,"extnValue",undefined);let Va=Da=class extends Mo{constructor(e){super(e);Object.setPrototypeOf(this,Da.prototype)}};var ja;Va=Da=e([Po({type:eo.Sequence,itemType:Pa})],Va);(function(e){e[e.v1=0]="v1";e[e.v2=1]="v2";e[e.v3=2]="v3"})(ja||={});class La{constructor(e={}){this.version=ja.v1;this.serialNumber=new ArrayBuffer(0);this.signature=new Ca;this.issuer=new Qo;this.validity=new Ua;this.subject=new Qo;this.subjectPublicKeyInfo=new Ra;Object.assign(this,e)}}e([Vo({type:to.Integer,context:0,defaultValue:ja.v1})],La.prototype,"version",undefined);e([Vo({type:to.Integer,converter:co})],La.prototype,"serialNumber",undefined);e([Vo({type:Ca})],La.prototype,"signature",undefined);e([Vo({type:Qo})],La.prototype,"issuer",undefined);e([Vo({type:Ua})],La.prototype,"validity",undefined);e([Vo({type:Qo})],La.prototype,"subject",undefined);e([Vo({type:Ra})],La.prototype,"subjectPublicKeyInfo",undefined);e([Vo({type:to.BitString,context:1,implicit:true,optional:true})],La.prototype,"issuerUniqueID",undefined);e([Vo({type:to.BitString,context:2,implicit:true,optional:true})],La.prototype,"subjectUniqueID",undefined);e([Vo({type:Va,context:3,optional:true})],La.prototype,"extensions",undefined);class Fa{constructor(e={}){this.tbsCertificate=new La;this.signatureAlgorithm=new Ca;this.signatureValue=new ArrayBuffer(0);Object.assign(this,e)}}e([Vo({type:La})],Fa.prototype,"tbsCertificate",undefined);e([Vo({type:Ca})],Fa.prototype,"signatureAlgorithm",undefined);e([Vo({type:to.BitString})],Fa.prototype,"signatureValue",undefined);class Ma{constructor(e={}){this.userCertificate=new ArrayBuffer(0);this.revocationDate=new _a;Object.assign(this,e)}}e([Vo({type:to.Integer,converter:co})],Ma.prototype,"userCertificate",undefined);e([Vo({type:_a})],Ma.prototype,"revocationDate",undefined);e([Vo({type:Pa,optional:true,repeated:"sequence"})],Ma.prototype,"crlEntryExtensions",undefined);class Ha{constructor(e={}){this.signature=new Ca;this.issuer=new Qo;this.thisUpdate=new _a;Object.assign(this,e)}}e([Vo({type:to.Integer,optional:true})],Ha.prototype,"version",undefined);e([Vo({type:Ca})],Ha.prototype,"signature",undefined);e([Vo({type:Qo})],Ha.prototype,"issuer",undefined);e([Vo({type:_a})],Ha.prototype,"thisUpdate",undefined);e([Vo({type:_a,optional:true})],Ha.prototype,"nextUpdate",undefined);e([Vo({type:Ma,repeated:"sequence",optional:true})],Ha.prototype,"revokedCertificates",undefined);e([Vo({type:Pa,optional:true,context:0,repeated:"sequence"})],Ha.prototype,"crlExtensions",undefined);class Ka{constructor(e={}){this.tbsCertList=new Ha;this.signatureAlgorithm=new Ca;this.signature=new ArrayBuffer(0);Object.assign(this,e)}}e([Vo({type:Ha})],Ka.prototype,"tbsCertList",undefined);e([Vo({type:Ca})],Ka.prototype,"signatureAlgorithm",undefined);e([Vo({type:to.BitString})],Ka.prototype,"signature",undefined);class $a{constructor(e={}){this.issuer=new Qo;this.serialNumber=new ArrayBuffer(0);Object.assign(this,e)}}e([Vo({type:Qo})],$a.prototype,"issuer",undefined);e([Vo({type:to.Integer,converter:co})],$a.prototype,"serialNumber",undefined);let Ga=class{constructor(e={}){Object.assign(this,e)}};var Wa;e([Vo({type:Na,context:0,implicit:true})],Ga.prototype,"subjectKeyIdentifier",undefined);e([Vo({type:$a})],Ga.prototype,"issuerAndSerialNumber",undefined);Ga=e([Po({type:eo.Choice})],Ga);(function(e){e[e.v0=0]="v0";e[e.v1=1]="v1";e[e.v2=2]="v2";e[e.v3=3]="v3";e[e.v4=4]="v4";e[e.v5=5]="v5"})(Wa||={});let Ya=class extends Ca{};Ya=e([Po({type:eo.Sequence})],Ya);let Ja=class extends Ca{};Ja=e([Po({type:eo.Sequence})],Ja);let za=class extends Ca{};za=e([Po({type:eo.Sequence})],za);let Xa=class extends Ca{};Xa=e([Po({type:eo.Sequence})],Xa);let qa=class extends Ca{};qa=e([Po({type:eo.Sequence})],qa);let Qa=class extends Ca{};Qa=e([Po({type:eo.Sequence})],Qa);let Za=class{constructor(e={}){this.attrType="";this.attrValues=[];Object.assign(this,e)}};var ec;e([Vo({type:to.ObjectIdentifier})],Za.prototype,"attrType",undefined);e([Vo({type:to.Any,repeated:"set"})],Za.prototype,"attrValues",undefined);class tc{constructor(e={}){this.version=Wa.v0;this.sid=new Ga;this.digestAlgorithm=new Ya;this.signatureAlgorithm=new Ja;this.signature=new io;Object.assign(this,e)}}e([Vo({type:to.Integer})],tc.prototype,"version",undefined);e([Vo({type:Ga})],tc.prototype,"sid",undefined);e([Vo({type:Ya})],tc.prototype,"digestAlgorithm",undefined);e([Vo({type:Za,repeated:"set",context:0,implicit:true,optional:true})],tc.prototype,"signedAttrs",undefined);e([Vo({type:Ja})],tc.prototype,"signatureAlgorithm",undefined);e([Vo({type:io})],tc.prototype,"signature",undefined);e([Vo({type:Za,repeated:"set",context:1,implicit:true,optional:true})],tc.prototype,"unsignedAttrs",undefined);let rc=ec=class extends Mo{constructor(e){super(e);Object.setPrototypeOf(this,ec.prototype)}};rc=ec=e([Po({type:eo.Set,itemType:tc})],rc);let nc=class extends _a{};nc=e([Po({type:eo.Choice})],nc);let ic=class extends tc{};ic=e([Po({type:eo.Sequence})],ic);class oc{constructor(e={}){this.acIssuer=new rs;this.acSerial=0;this.attrs=[];Object.assign(this,e)}}var sc;e([Vo({type:rs})],oc.prototype,"acIssuer",undefined);e([Vo({type:to.Integer})],oc.prototype,"acSerial",undefined);e([Vo({type:Ea,repeated:"sequence"})],oc.prototype,"attrs",undefined);let ac=sc=class extends Mo{constructor(e){super(e);Object.setPrototypeOf(this,sc.prototype)}};ac=sc=e([Po({type:eo.Sequence,itemType:to.ObjectIdentifier})],ac);class cc{constructor(e={}){this.permitUnSpecified=true;Object.assign(this,e)}}e([Vo({type:to.Integer,optional:true})],cc.prototype,"pathLenConstraint",undefined);e([Vo({type:ac,implicit:true,context:0,optional:true})],cc.prototype,"permittedAttrs",undefined);e([Vo({type:ac,implicit:true,context:1,optional:true})],cc.prototype,"excludedAttrs",undefined);e([Vo({type:to.Boolean,defaultValue:true})],cc.prototype,"permitUnSpecified",undefined);class lc{constructor(e={}){this.issuer=new ws;this.serial=new ArrayBuffer(0);this.issuerUID=new ArrayBuffer(0);Object.assign(this,e)}}var uc;e([Vo({type:ws})],lc.prototype,"issuer",undefined);e([Vo({type:to.Integer,converter:co})],lc.prototype,"serial",undefined);e([Vo({type:to.BitString,optional:true})],lc.prototype,"issuerUID",undefined);(function(e){e[e.publicKey=0]="publicKey";e[e.publicKeyCert=1]="publicKeyCert";e[e.otherObjectTypes=2]="otherObjectTypes"})(uc||={});class pc{constructor(e={}){this.digestedObjectType=uc.publicKey;this.digestAlgorithm=new Ca;this.objectDigest=new ArrayBuffer(0);Object.assign(this,e)}}e([Vo({type:to.Enumerated})],pc.prototype,"digestedObjectType",undefined);e([Vo({type:to.ObjectIdentifier,optional:true})],pc.prototype,"otherObjectTypeID",undefined);e([Vo({type:Ca})],pc.prototype,"digestAlgorithm",undefined);e([Vo({type:to.BitString})],pc.prototype,"objectDigest",undefined);class hc{constructor(e={}){Object.assign(this,e)}}e([Vo({type:ws,optional:true})],hc.prototype,"issuerName",undefined);e([Vo({type:lc,context:0,implicit:true,optional:true})],hc.prototype,"baseCertificateID",undefined);e([Vo({type:pc,context:1,implicit:true,optional:true})],hc.prototype,"objectDigestInfo",undefined);let fc=class{constructor(e={}){Object.assign(this,e)}};e([Vo({type:rs,repeated:"sequence"})],fc.prototype,"v1Form",undefined);e([Vo({type:hc,context:0,implicit:true})],fc.prototype,"v2Form",undefined);fc=e([Po({type:eo.Choice})],fc);class dc{constructor(e={}){this.notBeforeTime=new Date;this.notAfterTime=new Date;Object.assign(this,e)}}e([Vo({type:to.GeneralizedTime})],dc.prototype,"notBeforeTime",undefined);e([Vo({type:to.GeneralizedTime})],dc.prototype,"notAfterTime",undefined);class yc{constructor(e={}){Object.assign(this,e)}}var mc;var gc;var vc;e([Vo({type:lc,implicit:true,context:0,optional:true})],yc.prototype,"baseCertificateID",undefined);e([Vo({type:ws,implicit:true,context:1,optional:true})],yc.prototype,"entityName",undefined);e([Vo({type:pc,implicit:true,context:2,optional:true})],yc.prototype,"objectDigestInfo",undefined);(function(e){e[e.v2=1]="v2"})(mc||={});class bc{constructor(e={}){this.version=mc.v2;this.holder=new yc;this.issuer=new fc;this.signature=new Ca;this.serialNumber=new ArrayBuffer(0);this.attrCertValidityPeriod=new dc;this.attributes=[];Object.assign(this,e)}}e([Vo({type:to.Integer})],bc.prototype,"version",undefined);e([Vo({type:yc})],bc.prototype,"holder",undefined);e([Vo({type:fc})],bc.prototype,"issuer",undefined);e([Vo({type:Ca})],bc.prototype,"signature",undefined);e([Vo({type:to.Integer,converter:co})],bc.prototype,"serialNumber",undefined);e([Vo({type:dc})],bc.prototype,"attrCertValidityPeriod",undefined);e([Vo({type:Ea,repeated:"sequence"})],bc.prototype,"attributes",undefined);e([Vo({type:to.BitString,optional:true})],bc.prototype,"issuerUniqueID",undefined);e([Vo({type:Va,optional:true})],bc.prototype,"extensions",undefined);class Ec{constructor(e={}){this.acinfo=new bc;this.signatureAlgorithm=new Ca;this.signatureValue=new ArrayBuffer(0);Object.assign(this,e)}}e([Vo({type:bc})],Ec.prototype,"acinfo",undefined);e([Vo({type:Ca})],Ec.prototype,"signatureAlgorithm",undefined);e([Vo({type:to.BitString})],Ec.prototype,"signatureValue",undefined);(function(e){e[e.unmarked=1]="unmarked";e[e.unclassified=2]="unclassified";e[e.restricted=4]="restricted";e[e.confidential=8]="confidential";e[e.secret=16]="secret";e[e.topSecret=32]="topSecret"})(gc||={});class wc extends no{}class Sc{constructor(e={}){this.type="";this.value=new ArrayBuffer(0);Object.assign(this,e)}}e([Vo({type:to.ObjectIdentifier,implicit:true,context:0})],Sc.prototype,"type",undefined);e([Vo({type:to.Any,implicit:true,context:1})],Sc.prototype,"value",undefined);class Ac{constructor(e={}){this.policyId="";this.classList=new wc(gc.unclassified);Object.assign(this,e)}}e([Vo({type:to.ObjectIdentifier})],Ac.prototype,"policyId",undefined);e([Vo({type:wc,defaultValue:new wc(gc.unclassified)})],Ac.prototype,"classList",undefined);e([Vo({type:Sc,repeated:"set"})],Ac.prototype,"securityCategories",undefined);class Nc{constructor(e={}){Object.assign(this,e)}}e([Vo({type:io})],Nc.prototype,"cotets",undefined);e([Vo({type:to.ObjectIdentifier})],Nc.prototype,"oid",undefined);e([Vo({type:to.Utf8String})],Nc.prototype,"string",undefined);class Tc{constructor(e={}){this.values=[];Object.assign(this,e)}}e([Vo({type:ws,implicit:true,context:0,optional:true})],Tc.prototype,"policyAuthority",undefined);e([Vo({type:Nc,repeated:"sequence"})],Tc.prototype,"values",undefined);class Oc{constructor(e={}){this.targetCertificate=new lc;Object.assign(this,e)}}e([Vo({type:lc})],Oc.prototype,"targetCertificate",undefined);e([Vo({type:rs,optional:true})],Oc.prototype,"targetName",undefined);e([Vo({type:pc,optional:true})],Oc.prototype,"certDigestInfo",undefined);let Ic=class{constructor(e={}){Object.assign(this,e)}};e([Vo({type:rs,context:0,implicit:true})],Ic.prototype,"targetName",undefined);e([Vo({type:rs,context:1,implicit:true})],Ic.prototype,"targetGroup",undefined);e([Vo({type:Oc,context:2,implicit:true})],Ic.prototype,"targetCert",undefined);Ic=e([Po({type:eo.Choice})],Ic);let kc=vc=class extends Mo{constructor(e){super(e);Object.setPrototypeOf(this,vc.prototype)}};var Bc;kc=vc=e([Po({type:eo.Sequence,itemType:Ic})],kc);let xc=Bc=class extends Mo{constructor(e){super(e);Object.setPrototypeOf(this,Bc.prototype)}};xc=Bc=e([Po({type:eo.Sequence,itemType:kc})],xc);class Cc{constructor(e={}){Object.assign(this,e)}}e([Vo({type:ws,implicit:true,context:0,optional:true})],Cc.prototype,"roleAuthority",undefined);e([Vo({type:rs,implicit:true,context:1})],Cc.prototype,"roleName",undefined);class Rc{constructor(e={}){this.service=new rs;this.ident=new rs;Object.assign(this,e)}}var _c;e([Vo({type:rs})],Rc.prototype,"service",undefined);e([Vo({type:rs})],Rc.prototype,"ident",undefined);e([Vo({type:io,optional:true})],Rc.prototype,"authInfo",undefined);class Uc{constructor(e={}){this.otherCertFormat="";this.otherCert=new ArrayBuffer(0);Object.assign(this,e)}}e([Vo({type:to.ObjectIdentifier})],Uc.prototype,"otherCertFormat",undefined);e([Vo({type:to.Any})],Uc.prototype,"otherCert",undefined);let Dc=class{constructor(e={}){Object.assign(this,e)}};e([Vo({type:Fa})],Dc.prototype,"certificate",undefined);e([Vo({type:Ec,context:2,implicit:true})],Dc.prototype,"v2AttrCert",undefined);e([Vo({type:Uc,context:3,implicit:true})],Dc.prototype,"other",undefined);Dc=e([Po({type:eo.Choice})],Dc);let Pc=_c=class extends Mo{constructor(e){super(e);Object.setPrototypeOf(this,_c.prototype)}};Pc=_c=e([Po({type:eo.Set,itemType:Dc})],Pc);class Vc{constructor(e={}){this.contentType="";this.content=new ArrayBuffer(0);Object.assign(this,e)}}e([Vo({type:to.ObjectIdentifier})],Vc.prototype,"contentType",undefined);e([Vo({type:to.Any,context:0})],Vc.prototype,"content",undefined);let jc=class{constructor(e={}){Object.assign(this,e)}};e([Vo({type:io})],jc.prototype,"single",undefined);e([Vo({type:to.Any})],jc.prototype,"any",undefined);jc=e([Po({type:eo.Choice})],jc);class Lc{constructor(e={}){this.eContentType="";Object.assign(this,e)}}e([Vo({type:to.ObjectIdentifier})],Lc.prototype,"eContentType",undefined);e([Vo({type:jc,context:0,optional:true})],Lc.prototype,"eContent",undefined);let Fc=class{constructor(e={}){Object.assign(this,e)}};e([Vo({type:io,context:0,implicit:true,optional:true})],Fc.prototype,"value",undefined);e([Vo({type:io,converter:fo,context:0,implicit:true,optional:true,repeated:"sequence"})],Fc.prototype,"constructedValue",undefined);Fc=e([Po({type:eo.Choice})],Fc);class Mc{constructor(e={}){this.contentType="";this.contentEncryptionAlgorithm=new Xa;Object.assign(this,e)}}e([Vo({type:to.ObjectIdentifier})],Mc.prototype,"contentType",undefined);e([Vo({type:Xa})],Mc.prototype,"contentEncryptionAlgorithm",undefined);e([Vo({type:Fc,optional:true})],Mc.prototype,"encryptedContent",undefined);class Hc{constructor(e={}){this.keyAttrId="";Object.assign(this,e)}}var Kc;e([Vo({type:to.ObjectIdentifier})],Hc.prototype,"keyAttrId",undefined);e([Vo({type:to.Any,optional:true})],Hc.prototype,"keyAttr",undefined);class $c{constructor(e={}){this.subjectKeyIdentifier=new Na;Object.assign(this,e)}}e([Vo({type:Na})],$c.prototype,"subjectKeyIdentifier",undefined);e([Vo({type:to.GeneralizedTime,optional:true})],$c.prototype,"date",undefined);e([Vo({type:Hc,optional:true})],$c.prototype,"other",undefined);let Gc=class{constructor(e={}){Object.assign(this,e)}};e([Vo({type:$c,context:0,implicit:true,optional:true})],Gc.prototype,"rKeyId",undefined);e([Vo({type:$a,optional:true})],Gc.prototype,"issuerAndSerialNumber",undefined);Gc=e([Po({type:eo.Choice})],Gc);class Wc{constructor(e={}){this.rid=new Gc;this.encryptedKey=new io;Object.assign(this,e)}}e([Vo({type:Gc})],Wc.prototype,"rid",undefined);e([Vo({type:io})],Wc.prototype,"encryptedKey",undefined);let Yc=Kc=class extends Mo{constructor(e){super(e);Object.setPrototypeOf(this,Kc.prototype)}};Yc=Kc=e([Po({type:eo.Sequence,itemType:Wc})],Yc);class Jc{constructor(e={}){this.algorithm=new Ca;this.publicKey=new ArrayBuffer(0);Object.assign(this,e)}}e([Vo({type:Ca})],Jc.prototype,"algorithm",undefined);e([Vo({type:to.BitString})],Jc.prototype,"publicKey",undefined);let zc=class{constructor(e={}){Object.assign(this,e)}};e([Vo({type:Na,context:0,implicit:true,optional:true})],zc.prototype,"subjectKeyIdentifier",undefined);e([Vo({type:Jc,context:1,implicit:true,optional:true})],zc.prototype,"originatorKey",undefined);e([Vo({type:$a,optional:true})],zc.prototype,"issuerAndSerialNumber",undefined);zc=e([Po({type:eo.Choice})],zc);class Xc{constructor(e={}){this.version=Wa.v3;this.originator=new zc;this.keyEncryptionAlgorithm=new za;this.recipientEncryptedKeys=new Yc;Object.assign(this,e)}}e([Vo({type:to.Integer})],Xc.prototype,"version",undefined);e([Vo({type:zc,context:0})],Xc.prototype,"originator",undefined);e([Vo({type:io,context:1,optional:true})],Xc.prototype,"ukm",undefined);e([Vo({type:za})],Xc.prototype,"keyEncryptionAlgorithm",undefined);e([Vo({type:Yc})],Xc.prototype,"recipientEncryptedKeys",undefined);let qc=class{constructor(e={}){Object.assign(this,e)}};e([Vo({type:Na,context:0,implicit:true})],qc.prototype,"subjectKeyIdentifier",undefined);e([Vo({type:$a})],qc.prototype,"issuerAndSerialNumber",undefined);qc=e([Po({type:eo.Choice})],qc);class Qc{constructor(e={}){this.version=Wa.v0;this.rid=new qc;this.keyEncryptionAlgorithm=new za;this.encryptedKey=new io;Object.assign(this,e)}}e([Vo({type:to.Integer})],Qc.prototype,"version",undefined);e([Vo({type:qc})],Qc.prototype,"rid",undefined);e([Vo({type:za})],Qc.prototype,"keyEncryptionAlgorithm",undefined);e([Vo({type:io})],Qc.prototype,"encryptedKey",undefined);class Zc{constructor(e={}){this.keyIdentifier=new io;Object.assign(this,e)}}e([Vo({type:io})],Zc.prototype,"keyIdentifier",undefined);e([Vo({type:to.GeneralizedTime,optional:true})],Zc.prototype,"date",undefined);e([Vo({type:Hc,optional:true})],Zc.prototype,"other",undefined);class el{constructor(e={}){this.version=Wa.v4;this.kekid=new Zc;this.keyEncryptionAlgorithm=new za;this.encryptedKey=new io;Object.assign(this,e)}}e([Vo({type:to.Integer})],el.prototype,"version",undefined);e([Vo({type:Zc})],el.prototype,"kekid",undefined);e([Vo({type:za})],el.prototype,"keyEncryptionAlgorithm",undefined);e([Vo({type:io})],el.prototype,"encryptedKey",undefined);class tl{constructor(e={}){this.version=Wa.v0;this.keyEncryptionAlgorithm=new za;this.encryptedKey=new io;Object.assign(this,e)}}e([Vo({type:to.Integer})],tl.prototype,"version",undefined);e([Vo({type:Qa,context:0,optional:true})],tl.prototype,"keyDerivationAlgorithm",undefined);e([Vo({type:za})],tl.prototype,"keyEncryptionAlgorithm",undefined);e([Vo({type:io})],tl.prototype,"encryptedKey",undefined);class rl{constructor(e={}){this.oriType="";this.oriValue=new ArrayBuffer(0);Object.assign(this,e)}}e([Vo({type:to.ObjectIdentifier})],rl.prototype,"oriType",undefined);e([Vo({type:to.Any})],rl.prototype,"oriValue",undefined);let nl=class{constructor(e={}){Object.assign(this,e)}};var il;e([Vo({type:Qc,optional:true})],nl.prototype,"ktri",undefined);e([Vo({type:Xc,context:1,implicit:true,optional:true})],nl.prototype,"kari",undefined);e([Vo({type:el,context:2,implicit:true,optional:true})],nl.prototype,"kekri",undefined);e([Vo({type:tl,context:3,implicit:true,optional:true})],nl.prototype,"pwri",undefined);e([Vo({type:rl,context:4,implicit:true,optional:true})],nl.prototype,"ori",undefined);nl=e([Po({type:eo.Choice})],nl);let ol=il=class extends Mo{constructor(e){super(e);Object.setPrototypeOf(this,il.prototype)}};var sl;ol=il=e([Po({type:eo.Set,itemType:nl})],ol);class al{constructor(e={}){this.otherRevInfoFormat="";this.otherRevInfo=new ArrayBuffer(0);Object.assign(this,e)}}e([Vo({type:to.ObjectIdentifier})],al.prototype,"otherRevInfoFormat",undefined);e([Vo({type:to.Any})],al.prototype,"otherRevInfo",undefined);let cl=class{constructor(e={}){this.other=new al;Object.assign(this,e)}};e([Vo({type:al,context:1,implicit:true})],cl.prototype,"other",undefined);cl=e([Po({type:eo.Choice})],cl);let ll=sl=class extends Mo{constructor(e){super(e);Object.setPrototypeOf(this,sl.prototype)}};ll=sl=e([Po({type:eo.Set,itemType:cl})],ll);class ul{constructor(e={}){Object.assign(this,e)}}var pl;e([Vo({type:Pc,context:0,implicit:true,optional:true})],ul.prototype,"certs",undefined);e([Vo({type:ll,context:1,implicit:true,optional:true})],ul.prototype,"crls",undefined);let hl=pl=class extends Mo{constructor(e){super(e);Object.setPrototypeOf(this,pl.prototype)}};hl=pl=e([Po({type:eo.Set,itemType:Za})],hl);class fl{constructor(e={}){this.version=Wa.v0;this.recipientInfos=new ol;this.encryptedContentInfo=new Mc;Object.assign(this,e)}}e([Vo({type:to.Integer})],fl.prototype,"version",undefined);e([Vo({type:ul,context:0,implicit:true,optional:true})],fl.prototype,"originatorInfo",undefined);e([Vo({type:ol})],fl.prototype,"recipientInfos",undefined);e([Vo({type:Mc})],fl.prototype,"encryptedContentInfo",undefined);e([Vo({type:hl,context:1,implicit:true,optional:true})],fl.prototype,"unprotectedAttrs",undefined);const dl="1.2.840.113549.1.7.2";var yl;let ml=yl=class extends Mo{constructor(e){super(e);Object.setPrototypeOf(this,yl.prototype)}};ml=yl=e([Po({type:eo.Set,itemType:Ya})],ml);class gl{constructor(e={}){this.version=Wa.v0;this.digestAlgorithms=new ml;this.encapContentInfo=new Lc;this.signerInfos=new rc;Object.assign(this,e)}}e([Vo({type:to.Integer})],gl.prototype,"version",undefined);e([Vo({type:ml})],gl.prototype,"digestAlgorithms",undefined);e([Vo({type:Lc})],gl.prototype,"encapContentInfo",undefined);e([Vo({type:Pc,context:0,implicit:true,optional:true})],gl.prototype,"certificates",undefined);e([Vo({type:ll,context:1,implicit:true,optional:true})],gl.prototype,"crls",undefined);e([Vo({type:rc})],gl.prototype,"signerInfos",undefined);const vl="1.2.840.10045.2.1";const bl="1.2.840.10045.4.1";const El="1.2.840.10045.4.3.1";const wl="1.2.840.10045.4.3.2";const Sl="1.2.840.10045.4.3.3";const Al="1.2.840.10045.4.3.4";const Nl="1.2.840.10045.3.1.7";const Tl="1.3.132.0.34";const Ol="1.3.132.0.35";function Il(e){return new Ca({algorithm:e})}const kl=Il(bl);Il(El);const Bl=Il(wl);const xl=Il(Sl);const Cl=Il(Al);let Rl=class{constructor(e={}){Object.assign(this,e)}};e([Vo({type:to.ObjectIdentifier})],Rl.prototype,"fieldType",undefined);e([Vo({type:to.Any})],Rl.prototype,"parameters",undefined);Rl=e([Po({type:eo.Sequence})],Rl);let _l=class{constructor(e={}){Object.assign(this,e)}};var Ul;e([Vo({type:to.OctetString})],_l.prototype,"a",undefined);e([Vo({type:to.OctetString})],_l.prototype,"b",undefined);e([Vo({type:to.BitString,optional:true})],_l.prototype,"seed",undefined);_l=e([Po({type:eo.Sequence})],_l);(function(e){e[e.ecpVer1=1]="ecpVer1"})(Ul||={});let Dl=class{constructor(e={}){this.version=Ul.ecpVer1;Object.assign(this,e)}};e([Vo({type:to.Integer})],Dl.prototype,"version",undefined);e([Vo({type:Rl})],Dl.prototype,"fieldID",undefined);e([Vo({type:_l})],Dl.prototype,"curve",undefined);e([Vo({type:class extends io{}})],Dl.prototype,"base",undefined);e([Vo({type:to.Integer,converter:co})],Dl.prototype,"order",undefined);e([Vo({type:to.Integer,optional:true})],Dl.prototype,"cofactor",undefined);Dl=e([Po({type:eo.Sequence})],Dl);let Pl=class{constructor(e={}){Object.assign(this,e)}};e([Vo({type:to.ObjectIdentifier})],Pl.prototype,"namedCurve",undefined);e([Vo({type:to.Null})],Pl.prototype,"implicitCurve",undefined);e([Vo({type:Dl})],Pl.prototype,"specifiedCurve",undefined);Pl=e([Po({type:eo.Choice})],Pl);class Vl{constructor(e={}){this.version=1;this.privateKey=new io;Object.assign(this,e)}}e([Vo({type:to.Integer})],Vl.prototype,"version",undefined);e([Vo({type:io})],Vl.prototype,"privateKey",undefined);e([Vo({type:Pl,context:0,optional:true})],Vl.prototype,"parameters",undefined);e([Vo({type:to.BitString,context:1,optional:true})],Vl.prototype,"publicKey",undefined);class jl{constructor(e={}){this.r=new ArrayBuffer(0);this.s=new ArrayBuffer(0);Object.assign(this,e)}}e([Vo({type:to.Integer,converter:co})],jl.prototype,"r",undefined);e([Vo({type:to.Integer,converter:co})],jl.prototype,"s",undefined);const Ll="1.2.840.113549.1.1";const Fl=`${Ll}.1`;const Ml=`${Ll}.7`;const Hl=`${Ll}.9`;const Kl=`${Ll}.10`;const $l=`${Ll}.2`;const Gl=`${Ll}.4`;const Wl=`${Ll}.5`;const Yl=`${Ll}.14`;const Jl=`${Ll}.11`;const zl=`${Ll}.12`;const Xl=`${Ll}.13`;const ql=`${Ll}.15`;const Ql=`${Ll}.16`;const Zl="1.3.14.3.2.26";const eu="2.16.840.1.101.3.4.2.4";const tu="2.16.840.1.101.3.4.2.1";const ru="2.16.840.1.101.3.4.2.2";const nu="2.16.840.1.101.3.4.2.3";const iu=`${Ll}.8`;function ou(e){return new Ca({algorithm:e,parameters:null})}ou("1.2.840.113549.2.2");ou("1.2.840.113549.2.5");const su=ou(Zl);ou(eu);ou(tu);ou(ru);ou(nu);ou("2.16.840.1.101.3.4.2.5");ou("2.16.840.1.101.3.4.2.6");const au=new Ca({algorithm:iu,parameters:Ho.serialize(su)});const cu=new Ca({algorithm:Hl,parameters:Ho.serialize(ho.toASN(new Uint8Array([218,57,163,238,94,107,75,13,50,85,191,239,149,96,24,144,175,216,7,9]).buffer))});ou(Fl);ou($l);ou(Gl);ou(Wl);ou(ql);ou(Ql);ou(zl);ou(Xl);ou(ql);ou(Ql);class lu{constructor(e={}){this.hashAlgorithm=new Ca(su);this.maskGenAlgorithm=new Ca({algorithm:iu,parameters:Ho.serialize(su)});this.pSourceAlgorithm=new Ca(cu);Object.assign(this,e)}}e([Vo({type:Ca,context:0,defaultValue:su})],lu.prototype,"hashAlgorithm",undefined);e([Vo({type:Ca,context:1,defaultValue:au})],lu.prototype,"maskGenAlgorithm",undefined);e([Vo({type:Ca,context:2,defaultValue:cu})],lu.prototype,"pSourceAlgorithm",undefined);new Ca({algorithm:Ml,parameters:Ho.serialize(new lu)});class uu{constructor(e={}){this.hashAlgorithm=new Ca(su);this.maskGenAlgorithm=new Ca({algorithm:iu,parameters:Ho.serialize(su)});this.saltLength=20;this.trailerField=1;Object.assign(this,e)}}e([Vo({type:Ca,context:0,defaultValue:su})],uu.prototype,"hashAlgorithm",undefined);e([Vo({type:Ca,context:1,defaultValue:au})],uu.prototype,"maskGenAlgorithm",undefined);e([Vo({type:to.Integer,context:2,defaultValue:20})],uu.prototype,"saltLength",undefined);e([Vo({type:to.Integer,context:3,defaultValue:1})],uu.prototype,"trailerField",undefined);new Ca({algorithm:Kl,parameters:Ho.serialize(new uu)});class pu{constructor(e={}){this.digestAlgorithm=new Ca;this.digest=new io;Object.assign(this,e)}}var hu;e([Vo({type:Ca})],pu.prototype,"digestAlgorithm",undefined);e([Vo({type:io})],pu.prototype,"digest",undefined);class fu{constructor(e={}){this.prime=new ArrayBuffer(0);this.exponent=new ArrayBuffer(0);this.coefficient=new ArrayBuffer(0);Object.assign(this,e)}}e([Vo({type:to.Integer,converter:co})],fu.prototype,"prime",undefined);e([Vo({type:to.Integer,converter:co})],fu.prototype,"exponent",undefined);e([Vo({type:to.Integer,converter:co})],fu.prototype,"coefficient",undefined);let du=hu=class extends Mo{constructor(e){super(e);Object.setPrototypeOf(this,hu.prototype)}};du=hu=e([Po({type:eo.Sequence,itemType:fu})],du);class yu{constructor(e={}){this.version=0;this.modulus=new ArrayBuffer(0);this.publicExponent=new ArrayBuffer(0);this.privateExponent=new ArrayBuffer(0);this.prime1=new ArrayBuffer(0);this.prime2=new ArrayBuffer(0);this.exponent1=new ArrayBuffer(0);this.exponent2=new ArrayBuffer(0);this.coefficient=new ArrayBuffer(0);Object.assign(this,e)}}e([Vo({type:to.Integer})],yu.prototype,"version",undefined);e([Vo({type:to.Integer,converter:co})],yu.prototype,"modulus",undefined);e([Vo({type:to.Integer,converter:co})],yu.prototype,"publicExponent",undefined);e([Vo({type:to.Integer,converter:co})],yu.prototype,"privateExponent",undefined);e([Vo({type:to.Integer,converter:co})],yu.prototype,"prime1",undefined);e([Vo({type:to.Integer,converter:co})],yu.prototype,"prime2",undefined);e([Vo({type:to.Integer,converter:co})],yu.prototype,"exponent1",undefined);e([Vo({type:to.Integer,converter:co})],yu.prototype,"exponent2",undefined);e([Vo({type:to.Integer,converter:co})],yu.prototype,"coefficient",undefined);e([Vo({type:du,optional:true})],yu.prototype,"otherPrimeInfos",undefined);class mu{constructor(e={}){this.modulus=new ArrayBuffer(0);this.publicExponent=new ArrayBuffer(0);Object.assign(this,e)}}var gu;e([Vo({type:to.Integer,converter:co})],mu.prototype,"modulus",undefined);e([Vo({type:to.Integer,converter:co})],mu.prototype,"publicExponent",undefined);(function(e){e[e.Transient=0]="Transient";e[e.Singleton=1]="Singleton";e[e.ResolutionScoped=2]="ResolutionScoped";e[e.ContainerScoped=3]="ContainerScoped"})(gu||={});var vu=gu;function bu(e,t){bu=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t){if(t.hasOwnProperty(r)){e[r]=t[r]}}};return bu(e,t)}function Eu(e,t){function r(){this.constructor=e}bu(e,t);e.prototype=t===null?Object.create(t):(r.prototype=t.prototype,new r)}function wu(e){var t=typeof Symbol=="function"&&Symbol.iterator;var r=t&&e[t];var n=0;if(r){return r.call(e)}if(e&&typeof e.length=="number"){return{next:function(){if(e&&n>=e.length){e=undefined}return{value:e&&e[n++],done:!e}}}}throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function Su(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r){return e}var n;var i;var o=r.call(e);var s=[];try{while((t===undefined||t-- >0)&&!(n=o.next()).done){s.push(n.value)}}catch(e){i={error:e}}finally{try{if(n&&!n.done&&(r=o.return)){r.call(o)}}finally{if(i){throw i.error}}}return s}function Au(){var e=[];for(var t=0;t<arguments.length;t++){e=e.concat(Su(arguments[t]))}return e}function Nu(e){return!!e.useClass}function Tu(e){return!!e.useFactory}var Ou=function(){function e(e){this.wrap=e;this.reflectMethods=["get","getPrototypeOf","setPrototypeOf","getOwnPropertyDescriptor","defineProperty","has","set","deleteProperty","apply","construct","ownKeys"]}e.prototype.createProxy=function(e){var t;var r=this;var n=false;return new Proxy({},this.createHandler(function(){if(!n){t=e(r.wrap());n=true}return t}))};e.prototype.createHandler=function(e){var t={};this.reflectMethods.forEach(function(r){t[r]=function(){var t=[];for(var n=0;n<arguments.length;n++){t[n]=arguments[n]}t[0]=e();return Reflect[r].apply(undefined,Au(t))}});return t};return e}();function Iu(e){return typeof e=="string"||typeof e=="symbol"}function ku(e){return typeof e=="object"&&"token"in e&&"transform"in e}function Bu(e){return!!e.useToken}function xu(e){return e.useValue!=null}var Cu=function(){function e(){this._registryMap=new Map}e.prototype.entries=function(){return this._registryMap.entries()};e.prototype.getAll=function(e){this.ensure(e);return this._registryMap.get(e)};e.prototype.get=function(e){this.ensure(e);var t=this._registryMap.get(e);return t[t.length-1]||null};e.prototype.set=function(e,t){this.ensure(e);this._registryMap.get(e).push(t)};e.prototype.setAll=function(e,t){this._registryMap.set(e,t)};e.prototype.has=function(e){this.ensure(e);return this._registryMap.get(e).length>0};e.prototype.clear=function(){this._registryMap.clear()};e.prototype.ensure=function(e){if(!this._registryMap.has(e)){this._registryMap.set(e,[])}};return e}();var Ru=function(e){function t(){return e!==null&&e.apply(this,arguments)||this}Eu(t,e);return t}(Cu);function _u(){this.scopedResolutions=new Map}var Uu;var Du=function(e){function t(){return e!==null&&e.apply(this,arguments)||this}Eu(t,e);return t}(Cu);var Pu=function(e){function t(){return e!==null&&e.apply(this,arguments)||this}Eu(t,e);return t}(Cu);function Vu(){this.preResolution=new Du;this.postResolution=new Pu}var ju=new Map;var Lu=function(){function e(e){this.parent=e;this._registry=new Ru;this.interceptors=new Vu;this.disposed=false;this.disposables=new Set}e.prototype.register=function(e,t,r){var n;if(r===undefined){r={lifecycle:vu.Transient}}this.ensureNotDisposed();n=function(e){return Nu(e)||xu(e)||Bu(e)||Tu(e)}(t)?t:{useClass:t};if(Bu(n)){var i=[e];for(var o=n;o!=null;){var s=o.useToken;if(i.includes(s)){throw new Error("Token registration cycle detected! "+Au(i,[s]).join(" -> "))}i.push(s);var a=this._registry.get(s);o=a&&Bu(a.provider)?a.provider:null}}if((r.lifecycle===vu.Singleton||r.lifecycle==vu.ContainerScoped||r.lifecycle==vu.ResolutionScoped)&&(xu(n)||Tu(n))){throw new Error('Cannot use lifecycle "'+vu[r.lifecycle]+'" with ValueProviders or FactoryProviders')}this._registry.set(e,{provider:n,options:r});return this};e.prototype.registerType=function(e,t){this.ensureNotDisposed();if(Iu(t)){return this.register(e,{useToken:t})}else{return this.register(e,{useClass:t})}};e.prototype.registerInstance=function(e,t){this.ensureNotDisposed();return this.register(e,{useValue:t})};e.prototype.registerSingleton=function(e,t){this.ensureNotDisposed();if(Iu(e)){if(Iu(t)){return this.register(e,{useToken:t},{lifecycle:vu.Singleton})}if(t){return this.register(e,{useClass:t},{lifecycle:vu.Singleton})}throw new Error('Cannot register a type name as a singleton without a "to" token')}var r=e;if(t&&!Iu(t)){r=t}return this.register(e,{useClass:r},{lifecycle:vu.Singleton})};e.prototype.resolve=function(e,t=new _u,r=false){this.ensureNotDisposed();var n=this.getRegistration(e);if(!n&&Iu(e)){if(r){return}throw new Error('Attempted to resolve unregistered dependency token: "'+e.toString()+'"')}this.executePreResolutionInterceptor(e,"Single");if(n){var i=this.resolveRegistration(n,t);this.executePostResolutionInterceptor(e,i,"Single");return i}if(function(e){return typeof e=="function"||e instanceof Ou}(e)){i=this.construct(e,t);this.executePostResolutionInterceptor(e,i,"Single");return i}throw new Error("Attempted to construct an undefined constructor. Could mean a circular dependency problem. Try using `delay` function.")};e.prototype.executePreResolutionInterceptor=function(e,t){var r;var n;if(this.interceptors.preResolution.has(e)){var i=[];try{for(var o=wu(this.interceptors.preResolution.getAll(e)),s=o.next();!s.done;s=o.next()){var a=s.value;if(a.options.frequency!="Once"){i.push(a)}a.callback(e,t)}}catch(e){r={error:e}}finally{try{if(s&&!s.done&&(n=o.return)){n.call(o)}}finally{if(r){throw r.error}}}this.interceptors.preResolution.setAll(e,i)}};e.prototype.executePostResolutionInterceptor=function(e,t,r){var n;var i;if(this.interceptors.postResolution.has(e)){var o=[];try{for(var s=wu(this.interceptors.postResolution.getAll(e)),a=s.next();!a.done;a=s.next()){var c=a.value;if(c.options.frequency!="Once"){o.push(c)}c.callback(e,t,r)}}catch(e){n={error:e}}finally{try{if(a&&!a.done&&(i=s.return)){i.call(s)}}finally{if(n){throw n.error}}}this.interceptors.postResolution.setAll(e,o)}};e.prototype.resolveRegistration=function(e,t){this.ensureNotDisposed();if(e.options.lifecycle===vu.ResolutionScoped&&t.scopedResolutions.has(e)){return t.scopedResolutions.get(e)}var r;var n=e.options.lifecycle===vu.Singleton;var i=e.options.lifecycle===vu.ContainerScoped;var o=n||i;r=xu(e.provider)?e.provider.useValue:Bu(e.provider)?o?e.instance||=this.resolve(e.provider.useToken,t):this.resolve(e.provider.useToken,t):Nu(e.provider)?o?e.instance||=this.construct(e.provider.useClass,t):this.construct(e.provider.useClass,t):Tu(e.provider)?e.provider.useFactory(this):this.construct(e.provider,t);if(e.options.lifecycle===vu.ResolutionScoped){t.scopedResolutions.set(e,r)}return r};e.prototype.resolveAll=function(e,t,r){var n=this;if(t===undefined){t=new _u}if(r===undefined){r=false}this.ensureNotDisposed();var i=this.getAllRegistrations(e);if(!i&&Iu(e)){if(r){return[]}throw new Error('Attempted to resolve unregistered dependency token: "'+e.toString()+'"')}this.executePreResolutionInterceptor(e,"All");if(i){var o=i.map(function(e){return n.resolveRegistration(e,t)});this.executePostResolutionInterceptor(e,o,"All");return o}var s=[this.construct(e,t)];this.executePostResolutionInterceptor(e,s,"All");return s};e.prototype.isRegistered=function(e,t=false){this.ensureNotDisposed();return this._registry.has(e)||t&&(this.parent||false)&&this.parent.isRegistered(e,true)};e.prototype.reset=function(){this.ensureNotDisposed();this._registry.clear();this.interceptors.preResolution.clear();this.interceptors.postResolution.clear()};e.prototype.clearInstances=function(){var e;var t;this.ensureNotDisposed();try{for(var r=wu(this._registry.entries()),n=r.next();!n.done;n=r.next()){var i=Su(n.value,2);var o=i[0];var s=i[1];this._registry.setAll(o,s.filter(function(e){return!xu(e.provider)}).map(function(e){e.instance=undefined;return e}))}}catch(t){e={error:t}}finally{try{if(n&&!n.done&&(t=r.return)){t.call(r)}}finally{if(e){throw e.error}}}};e.prototype.createChildContainer=function(){var t;var r;this.ensureNotDisposed();var n=new e(this);try{for(var i=wu(this._registry.entries()),o=i.next();!o.done;o=i.next()){var s=Su(o.value,2);var a=s[0];var c=s[1];if(c.some(function(e){return e.options.lifecycle===vu.ContainerScoped})){n._registry.setAll(a,c.map(function(e){if(e.options.lifecycle===vu.ContainerScoped){return{provider:e.provider,options:e.options}}else{return e}}))}}}catch(e){t={error:e}}finally{try{if(o&&!o.done&&(r=i.return)){r.call(i)}}finally{if(t){throw t.error}}}return n};e.prototype.beforeResolution=function(e,t,r={frequency:"Always"}){this.interceptors.preResolution.set(e,{callback:t,options:r})};e.prototype.afterResolution=function(e,t,r={frequency:"Always"}){this.interceptors.postResolution.set(e,{callback:t,options:r})};e.prototype.dispose=function(){e=this;r=function(){var e;return function(e,t){var r;var n;var i;var o;var s={label:0,sent:function(){if(i[0]&1){throw i[1]}return i[1]},trys:[],ops:[]};o={next:a(0),throw:a(1),return:a(2)};if(typeof Symbol=="function"){o[Symbol.iterator]=function(){return this}}return o;function a(o){return function(a){return function(o){if(r){throw new TypeError("Generator is already executing.")}while(s){try{r=1;if(n&&(i=o[0]&2?n.return:o[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,o[1])).done){return i}n=0;if(i){o=[o[0]&2,i.value]}switch(o[0]){case 0:case 1:i=o;break;case 4:s.label++;return{value:o[1],done:false};case 5:s.label++;n=o[1];o=[0];continue;case 7:o=s.ops.pop();s.trys.pop();continue;default:if(!(i=(i=s.trys).length>0&&i[i.length-1])&&(o[0]===6||o[0]===2)){s=0;continue}if(o[0]===3&&(!i||o[1]>i[0]&&o[1]<i[3])){s.label=o[1];break}if(o[0]===6&&s.label<i[1]){s.label=i[1];i=o;break}if(i&&s.label<i[2]){s.label=i[2];s.ops.push(o);break}if(i[2]){s.ops.pop()}s.trys.pop();continue}o=t.call(e,s)}catch(e){o=[6,e];n=0}finally{r=i=0}}if(o[0]&5){throw o[1]}return{value:o[0]?o[1]:undefined,done:true}}([o,a])}}}(this,function(t){switch(t.label){case 0:this.disposed=true;e=[];this.disposables.forEach(function(t){var r=t.dispose();if(r){e.push(r)}});return[4,Promise.all(e)];case 1:t.sent();return[2]}})};return new((t=undefined)||(t=Promise))(function(n,i){function o(e){try{a(r.next(e))}catch(e){i(e)}}function s(e){try{a(r.throw(e))}catch(e){i(e)}}function a(e){if(e.done){n(e.value)}else{(function(e){if(e instanceof t){return e}else{return new t(function(t){t(e)})}})(e.value).then(o,s)}}a((r=r.apply(e,[])).next())});var e;var t;var r};e.prototype.getRegistration=function(e){if(this.isRegistered(e)){return this._registry.get(e)}else if(this.parent){return this.parent.getRegistration(e)}else{return null}};e.prototype.getAllRegistrations=function(e){if(this.isRegistered(e)){return this._registry.getAll(e)}else if(this.parent){return this.parent.getAllRegistrations(e)}else{return null}};e.prototype.construct=function(e,t){var r=this;if(e instanceof Ou){return e.createProxy(function(e){return r.resolve(e,t)})}var n=function(){var n=ju.get(e);if(!n||n.length===0){if(e.length===0){return new e}throw new Error('TypeInfo not known for "'+e.name+'"')}var i=n.map(r.resolveParams(t,e));return new(e.bind.apply(e,Au([undefined],i)))}();if(function(e){return typeof e.dispose=="function"&&!(e.dispose.length>0)}(n)){this.disposables.add(n)}return n};e.prototype.resolveParams=function(e,t){var r=this;return function(n,i){var o;var s;var a;var c;try{if(typeof(c=n)=="object"&&"token"in c&&"multiple"in c){if(ku(n)){if(n.multiple){return(o=r.resolve(n.transform)).transform.apply(o,Au([r.resolveAll(n.token,new _u,n.isOptional)],n.transformArgs))}else{return(s=r.resolve(n.transform)).transform.apply(s,Au([r.resolve(n.token,e,n.isOptional)],n.transformArgs))}}else if(n.multiple){return r.resolveAll(n.token,new _u,n.isOptional)}else{return r.resolve(n.token,e,n.isOptional)}}else if(ku(n)){return(a=r.resolve(n.transform,e)).transform.apply(a,Au([r.resolve(n.token,e)],n.transformArgs))}else{return r.resolve(n,e)}}catch(e){throw new Error(function(e,t,r){var n;var i;var o;var s;var a=Su(e.toString().match(/constructor\(([\w, ]+)\)/)||[],2)[1];n="Cannot inject the dependency "+(s=t,((o=a===undefined?null:a)===null?"at position #"+s:'"'+o.split(",")[s].trim()+'" at position #'+s)+' of "')+e.name+'" constructor. Reason:';if(i===undefined){i=" "}return Au([n],r.message.split("\n").map(function(e){return i+e})).join("\n")}(t,i,e))}}};e.prototype.ensureNotDisposed=function(){if(this.disposed){throw new Error("This container has been disposed, you cannot interact with a disposed container")}};return e}();var Fu=new Lu;function Mu(e){return function(e){ju.set(e,function(e){var t=Reflect.getMetadata("design:paramtypes",e)||[];var r=Reflect.getOwnMetadata("injectionTokens",e)||{};Object.keys(r).forEach(function(e){t[+e]=r[e]});return t}(e))}}if(typeof Reflect=="undefined"||!Reflect.getMetadata){throw new Error("tsyringe requires a reflect polyfill. Please add 'import \"reflect-metadata\"' to the top of your entry point.")}class Hu{constructor(e={}){this.attrId="";this.attrValues=[];Object.assign(e)}}e([Vo({type:to.ObjectIdentifier})],Hu.prototype,"attrId",undefined);e([Vo({type:to.Any,repeated:"set"})],Hu.prototype,"attrValues",undefined);let Ku=Uu=class extends Mo{constructor(e){super(e);Object.setPrototypeOf(this,Uu.prototype)}};var $u;Ku=Uu=e([Po({type:eo.Sequence,itemType:Hu})],Ku);let Gu=$u=class extends Mo{constructor(e){super(e);Object.setPrototypeOf(this,$u.prototype)}};Gu=$u=e([Po({type:eo.Sequence,itemType:Vc})],Gu);class Wu{constructor(e={}){this.certId="";this.certValue=new ArrayBuffer(0);Object.assign(this,e)}}e([Vo({type:to.ObjectIdentifier})],Wu.prototype,"certId",undefined);e([Vo({type:to.Any,context:0})],Wu.prototype,"certValue",undefined);class Yu{constructor(e={}){this.crlId="";this.crltValue=new ArrayBuffer(0);Object.assign(this,e)}}e([Vo({type:to.ObjectIdentifier})],Yu.prototype,"crlId",undefined);e([Vo({type:to.Any,context:0})],Yu.prototype,"crltValue",undefined);class Ju extends io{}let zu=class{constructor(e={}){this.encryptionAlgorithm=new Ca;this.encryptedData=new Ju;Object.assign(this,e)}};var Xu;var qu;e([Vo({type:Ca})],zu.prototype,"encryptionAlgorithm",undefined);e([Vo({type:Ju})],zu.prototype,"encryptedData",undefined);(function(e){e[e.v1=0]="v1"})(qu||={});class Qu extends io{}let Zu=Xu=class extends Mo{constructor(e){super(e);Object.setPrototypeOf(this,Xu.prototype)}};Zu=Xu=e([Po({type:eo.Sequence,itemType:Ea})],Zu);class ep{constructor(e={}){this.version=qu.v1;this.privateKeyAlgorithm=new Ca;this.privateKey=new Qu;Object.assign(this,e)}}e([Vo({type:to.Integer})],ep.prototype,"version",undefined);e([Vo({type:Ca})],ep.prototype,"privateKeyAlgorithm",undefined);e([Vo({type:Qu})],ep.prototype,"privateKey",undefined);e([Vo({type:Zu,implicit:true,context:0,optional:true})],ep.prototype,"attributes",undefined);let tp=class extends ep{};tp=e([Po({type:eo.Sequence})],tp);let rp=class extends zu{};rp=e([Po({type:eo.Sequence})],rp);class np{constructor(e={}){this.secretTypeId="";this.secretValue=new ArrayBuffer(0);Object.assign(this,e)}}e([Vo({type:to.ObjectIdentifier})],np.prototype,"secretTypeId",undefined);e([Vo({type:to.Any,context:0})],np.prototype,"secretValue",undefined);class ip{constructor(e={}){this.mac=new pu;this.macSalt=new io;this.iterations=1;Object.assign(this,e)}}e([Vo({type:pu})],ip.prototype,"mac",undefined);e([Vo({type:io})],ip.prototype,"macSalt",undefined);e([Vo({type:to.Integer,defaultValue:1})],ip.prototype,"iterations",undefined);class op{constructor(e={}){this.version=3;this.authSafe=new Vc;this.macData=new ip;Object.assign(this,e)}}var sp;e([Vo({type:to.Integer})],op.prototype,"version",undefined);e([Vo({type:Vc})],op.prototype,"authSafe",undefined);e([Vo({type:ip,optional:true})],op.prototype,"macData",undefined);class ap{constructor(e={}){this.bagId="";this.bagValue=new ArrayBuffer(0);Object.assign(this,e)}}e([Vo({type:to.ObjectIdentifier})],ap.prototype,"bagId",undefined);e([Vo({type:to.Any,context:0})],ap.prototype,"bagValue",undefined);e([Vo({type:Hu,repeated:"set",optional:true})],ap.prototype,"bagAttributes",undefined);let cp=sp=class extends Mo{constructor(e){super(e);Object.setPrototypeOf(this,sp.prototype)}};var lp;var up;var pp;cp=sp=e([Po({type:eo.Sequence,itemType:ap})],cp);const hp="1.2.840.113549.1.9";const fp=`${hp}.7`;const dp=`${hp}.14`;let yp=class extends Yo{constructor(e={}){super(e)}toString(){return this.ia5String||super.toString()}};e([Vo({type:to.IA5String})],yp.prototype,"ia5String",undefined);yp=e([Po({type:eo.Choice})],yp);let mp=class extends Vc{};mp=e([Po({type:eo.Sequence})],mp);let gp=class extends op{};gp=e([Po({type:eo.Sequence})],gp);let vp=class extends zu{};vp=e([Po({type:eo.Sequence})],vp);let bp=class{constructor(e=""){this.value=e}toString(){return this.value}};e([Vo({type:to.IA5String})],bp.prototype,"value",undefined);bp=e([Po({type:eo.Choice})],bp);let Ep=class extends yp{};Ep=e([Po({type:eo.Choice})],Ep);let wp=class extends Yo{};wp=e([Po({type:eo.Choice})],wp);let Sp=class{constructor(e=new Date){this.value=e}};e([Vo({type:to.GeneralizedTime})],Sp.prototype,"value",undefined);Sp=e([Po({type:eo.Choice})],Sp);let Ap=class extends Yo{};Ap=e([Po({type:eo.Choice})],Ap);let Np=class{constructor(e="M"){this.value=e}toString(){return this.value}};e([Vo({type:to.PrintableString})],Np.prototype,"value",undefined);Np=e([Po({type:eo.Choice})],Np);let Tp=class{constructor(e=""){this.value=e}toString(){return this.value}};e([Vo({type:to.PrintableString})],Tp.prototype,"value",undefined);Tp=e([Po({type:eo.Choice})],Tp);let Op=class extends Tp{};Op=e([Po({type:eo.Choice})],Op);let Ip=class extends Yo{};Ip=e([Po({type:eo.Choice})],Ip);let kp=class{constructor(e=""){this.value=e}toString(){return this.value}};e([Vo({type:to.ObjectIdentifier})],kp.prototype,"value",undefined);kp=e([Po({type:eo.Choice})],kp);let Bp=class extends _a{};Bp=e([Po({type:eo.Choice})],Bp);let xp=class{constructor(e=0){this.value=e}toString(){return this.value.toString()}};e([Vo({type:to.Integer})],xp.prototype,"value",undefined);xp=e([Po({type:eo.Choice})],xp);let Cp=class extends tc{};Cp=e([Po({type:eo.Sequence})],Cp);let Rp=class extends Yo{};Rp=e([Po({type:eo.Choice})],Rp);let _p=lp=class extends Va{constructor(e){super(e);Object.setPrototypeOf(this,lp.prototype)}};_p=lp=e([Po({type:eo.Sequence})],_p);let Up=up=class extends Mo{constructor(e){super(e);Object.setPrototypeOf(this,up.prototype)}};Up=up=e([Po({type:eo.Set,itemType:Za})],Up);let Dp=class{constructor(e=""){this.value=e}toString(){return this.value}};e([Vo({type:to.BmpString})],Dp.prototype,"value",undefined);Dp=e([Po({type:eo.Choice})],Dp);let Pp=class extends Ca{};Pp=e([Po({type:eo.Sequence})],Pp);let Vp=pp=class extends Mo{constructor(e){super(e);Object.setPrototypeOf(this,pp.prototype)}};var jp;Vp=pp=e([Po({type:eo.Sequence,itemType:Pp})],Vp);let Lp=jp=class extends Mo{constructor(e){super(e);Object.setPrototypeOf(this,jp.prototype)}};Lp=jp=e([Po({type:eo.Sequence,itemType:Ea})],Lp);class Fp{constructor(e={}){this.version=0;this.subject=new Qo;this.subjectPKInfo=new Ra;this.attributes=new Lp;Object.assign(this,e)}}e([Vo({type:to.Integer})],Fp.prototype,"version",undefined);e([Vo({type:Qo})],Fp.prototype,"subject",undefined);e([Vo({type:Ra})],Fp.prototype,"subjectPKInfo",undefined);e([Vo({type:Lp,implicit:true,context:0})],Fp.prototype,"attributes",undefined);class Mp{constructor(e={}){this.certificationRequestInfo=new Fp;this.signatureAlgorithm=new Ca;this.signature=new ArrayBuffer(0);Object.assign(this,e)}}e([Vo({type:Fp})],Mp.prototype,"certificationRequestInfo",undefined);e([Vo({type:Ca})],Mp.prototype,"signatureAlgorithm",undefined);e([Vo({type:to.BitString})],Mp.prototype,"signature",undefined);const Hp="crypto.algorithm";const Kp="crypto.algorithmProvider";var $p;Fu.registerSingleton(Kp,class{getAlgorithms(){return Fu.resolveAll(Hp)}toAsnAlgorithm(e){for(const t of this.getAlgorithms()){const r=t.toAsnAlgorithm(e);if(r){return r}}if(/^[0-9.]+$/.test(e.name)){const t=new Ca({algorithm:e.name});if("parameters"in e){const r=e;t.parameters=r.parameters}return t}throw new Error("Cannot convert WebCrypto algorithm to ASN.1 algorithm")}toWebAlgorithm(e){for(const t of this.getAlgorithms()){const r=t.toWebAlgorithm(e);if(r){return r}}return{name:e.algorithm,parameters:e.parameters}}});const Gp="1.3.36.3.3.2.8.1.1";const Wp=`${Gp}.1`;const Yp=`${Gp}.2`;const Jp=`${Gp}.3`;const zp=`${Gp}.4`;const Xp=`${Gp}.5`;const qp=`${Gp}.6`;const Qp=`${Gp}.7`;const Zp=`${Gp}.8`;const eh=`${Gp}.9`;const th=`${Gp}.10`;const rh=`${Gp}.11`;const nh=`${Gp}.12`;const ih=`${Gp}.13`;const oh=`${Gp}.14`;const sh="brainpoolP160r1";const ah="brainpoolP160t1";const ch="brainpoolP192r1";const lh="brainpoolP192t1";const uh="brainpoolP224r1";const ph="brainpoolP224t1";const hh="brainpoolP256r1";const fh="brainpoolP256t1";const dh="brainpoolP320r1";const yh="brainpoolP320t1";const mh="brainpoolP384r1";const gh="brainpoolP384t1";const vh="brainpoolP512r1";const bh="brainpoolP512t1";const Eh="ECDSA";let wh=$p=class{toAsnAlgorithm(e){if(e.name.toLowerCase()===Eh.toLowerCase()){if("hash"in e){switch((typeof e.hash=="string"?e.hash:e.hash.name).toLowerCase()){case"sha-1":return kl;case"sha-256":return Bl;case"sha-384":return xl;case"sha-512":return Cl}}else if("namedCurve"in e){let t="";switch(e.namedCurve){case"P-256":t=Nl;break;case"K-256":t=$p.SECP256K1;break;case"P-384":t=Tl;break;case"P-521":t=Ol;break;case sh:t=Wp;break;case ah:t=Yp;break;case ch:t=Jp;break;case lh:t=zp;break;case uh:t=Xp;break;case ph:t=qp;break;case hh:t=Qp;break;case fh:t=Zp;break;case dh:t=eh;break;case yh:t=th;break;case mh:t=rh;break;case gh:t=nh;break;case vh:t=ih;break;case bh:t=oh}if(t){return new Ca({algorithm:vl,parameters:Ho.serialize(new Pl({namedCurve:t}))})}}}return null}toWebAlgorithm(e){switch(e.algorithm){case bl:return{name:Eh,hash:{name:"SHA-1"}};case wl:return{name:Eh,hash:{name:"SHA-256"}};case Sl:return{name:Eh,hash:{name:"SHA-384"}};case Al:return{name:Eh,hash:{name:"SHA-512"}};case vl:if(!e.parameters){throw new TypeError("Cannot get required parameters from EC algorithm")}switch(Ho.parse(e.parameters,Pl).namedCurve){case Nl:return{name:Eh,namedCurve:"P-256"};case $p.SECP256K1:return{name:Eh,namedCurve:"K-256"};case Tl:return{name:Eh,namedCurve:"P-384"};case Ol:return{name:Eh,namedCurve:"P-521"};case Wp:return{name:Eh,namedCurve:sh};case Yp:return{name:Eh,namedCurve:ah};case Jp:return{name:Eh,namedCurve:ch};case zp:return{name:Eh,namedCurve:lh};case Xp:return{name:Eh,namedCurve:uh};case qp:return{name:Eh,namedCurve:ph};case Qp:return{name:Eh,namedCurve:hh};case Zp:return{name:Eh,namedCurve:fh};case eh:return{name:Eh,namedCurve:dh};case th:return{name:Eh,namedCurve:yh};case rh:return{name:Eh,namedCurve:mh};case nh:return{name:Eh,namedCurve:gh};case ih:return{name:Eh,namedCurve:vh};case oh:return{name:Eh,namedCurve:bh}}}return null}};wh.SECP256K1="1.3.132.0.10";wh=$p=e([Mu()],wh);Fu.registerSingleton(Hp,wh);const Sh=Symbol("name");const Ah=Symbol("value");class Nh{constructor(e,t={},r=""){this[Sh]=e;this[Ah]=r;for(const e in t){this[e]=t[e]}}}Nh.NAME=Sh;Nh.VALUE=Ah;class Th{static toString(e){return this.items[e]||e}}Th.items={[Zl]:"sha1",[eu]:"sha224",[tu]:"sha256",[ru]:"sha384",[nu]:"sha512",[Fl]:"rsaEncryption",[Wl]:"sha1WithRSAEncryption",[Yl]:"sha224WithRSAEncryption",[Jl]:"sha256WithRSAEncryption",[zl]:"sha384WithRSAEncryption",[Xl]:"sha512WithRSAEncryption",[vl]:"ecPublicKey",[bl]:"ecdsaWithSHA1",[El]:"ecdsaWithSHA224",[wl]:"ecdsaWithSHA256",[Sl]:"ecdsaWithSHA384",[Al]:"ecdsaWithSHA512",[Xs]:"TLS WWW server authentication",[qs]:"TLS WWW client authentication",[Qs]:"Code Signing",[Zs]:"E-mail Protection",[ea]:"Time Stamping",[ta]:"OCSP Signing",[dl]:"Signed Data"};class Oh{static serialize(e){return this.serializeObj(e).join("\n")}static pad(e=0){return"".padStart(e*2," ")}static serializeObj(e,t=0){const r=[];let n=this.pad(t++);let i="";const o=e[Nh.VALUE];if(o){i=` ${o}`}r.push(`${n}${e[Nh.NAME]}:${i}`);n=this.pad(t);for(const i in e){if(typeof i=="symbol"){continue}const o=e[i];const s=i?`${i}: `:"";if(typeof o=="string"||typeof o=="number"||typeof o=="boolean"){r.push(`${n}${s}${o}`)}else if(o instanceof Date){r.push(`${n}${s}${o.toUTCString()}`)}else if(Array.isArray(o)){for(const e of o){e[Nh.NAME]=i;r.push(...this.serializeObj(e,t))}}else if(o instanceof Nh){o[Nh.NAME]=i;r.push(...this.serializeObj(o,t))}else if(_r.isBufferSource(o)){if(i){r.push(`${n}${s}`);r.push(...this.serializeBufferSource(o,t+1))}else{r.push(...this.serializeBufferSource(o,t))}}else{if(!("toTextObject"in o)){throw new TypeError("Cannot serialize data in text format. Unsupported type.")}{const e=o.toTextObject();e[Nh.NAME]=i;r.push(...this.serializeObj(e,t))}}}return r}static serializeBufferSource(e,t=0){const r=this.pad(t);const n=_r.toUint8Array(e);const i=[];for(let e=0;e<n.length;){const t=[];for(let r=0;r<16&&e<n.length;r++){if(r===8){t.push("")}const i=n[e++].toString(16).padStart(2,"0");t.push(i)}i.push(`${r}${t.join(" ")}`)}return i}static serializeAlgorithm(e){return this.algorithmSerializer.toTextObject(e)}}Oh.oidSerializer=Th;Oh.algorithmSerializer=class{static toTextObject(e){const t=new Nh("Algorithm Identifier",{},Th.toString(e.algorithm));if(e.parameters){switch(e.algorithm){case vl:{const r=(new wh).toWebAlgorithm(e);if(r&&"namedCurve"in r){t["Named Curve"]=r.namedCurve}else{t.Parameters=e.parameters}break}default:t.Parameters=e.parameters}}return t}};class Ih{constructor(...e){if(e.length===1){const t=e[0];this.rawData=Ho.serialize(t);this.onInit(t)}else{const t=Ho.parse(e[0],e[1]);this.rawData=_r.toArrayBuffer(e[0]);this.onInit(t)}}equal(e){return e instanceof Ih&&Mr(e.rawData,this.rawData)}toString(e="text"){switch(e){case"asn":return Ho.toString(this.rawData);case"text":return Oh.serialize(this.toTextObject());case"hex":return Fr.ToHex(this.rawData);case"base64":return Fr.ToBase64(this.rawData);case"base64url":return Fr.ToBase64Url(this.rawData);default:throw TypeError("Argument 'format' is unsupported value")}}getTextName(){return this.constructor.NAME}toTextObject(){const e=this.toTextObjectEmpty();e[""]=this.rawData;return e}toTextObjectEmpty(e){return new Nh(this.getTextName(),{},e)}}Ih.NAME="ASN";class kh extends Ih{constructor(...e){let t;t=_r.isBufferSource(e[0])?_r.toArrayBuffer(e[0]):Ho.serialize(new Pa({extnID:e[0],critical:e[1],extnValue:new io(_r.toArrayBuffer(e[2]))}));super(t,Pa)}onInit(e){this.type=e.extnID;this.critical=e.critical;this.value=e.extnValue.buffer}toTextObject(){const e=this.toTextObjectWithoutValue();e[""]=this.value;return e}toTextObjectWithoutValue(){const e=this.toTextObjectEmpty(this.critical?"critical":undefined);if(e[Nh.NAME]===kh.NAME){e[Nh.NAME]=Th.toString(this.type)}return e}}var Bh;class xh{static isCryptoKeyPair(e){return e&&e.privateKey&&e.publicKey}static isCryptoKey(e){return e&&e.usages&&e.type&&e.algorithm&&e.extractable!==undefined}constructor(){this.items=new Map;this[Bh]="CryptoProvider";if(typeof self!="undefined"&&typeof crypto!="undefined"){this.set(xh.DEFAULT,crypto)}else if(typeof global!="undefined"&&global.crypto&&global.crypto.subtle){this.set(xh.DEFAULT,global.crypto)}}clear(){this.items.clear()}delete(e){return this.items.delete(e)}forEach(e,t){return this.items.forEach(e,t)}has(e){return this.items.has(e)}get size(){return this.items.size}entries(){return this.items.entries()}keys(){return this.items.keys()}values(){return this.items.values()}[Symbol.iterator](){return this.items[Symbol.iterator]()}get(e=xh.DEFAULT){const t=this.items.get(e.toLowerCase());if(!t){throw new Error(`Cannot get Crypto by name '${e}'`)}return t}set(e,t){if(typeof e=="string"){if(!t){throw new TypeError("Argument 'value' is required")}this.items.set(e.toLowerCase(),t)}else{this.items.set(xh.DEFAULT,e)}return this}}Bh=Symbol.toStringTag;xh.DEFAULT="default";const Ch=new xh;const Rh=/^[0-2](?:\.[1-9][0-9]*)+$/;class _h{constructor(e={}){this.items={};for(const t in e){this.register(t,e[t])}}get(e){return this.items[e]||null}findId(e){t=e;if(new RegExp(Rh).test(t)){return e}else{return this.get(e)}var t}register(e,t){this.items[e]=t;this.items[t]=e}}const Uh=new _h;function Dh(e,t){return`\\${Fr.ToHex(Fr.FromUtf8String(t)).toUpperCase()}`}Uh.register("CN","2.5.4.3");Uh.register("L","2.5.4.7");Uh.register("ST","2.5.4.8");Uh.register("O","2.5.4.10");Uh.register("OU","2.5.4.11");Uh.register("C","2.5.4.6");Uh.register("DC","0.9.2342.19200300.100.1.25");Uh.register("E","1.2.840.113549.1.9.1");Uh.register("G","2.5.4.42");Uh.register("I","2.5.4.43");Uh.register("SN","2.5.4.4");Uh.register("T","2.5.4.12");class Ph{static isASCII(e){for(let t=0;t<e.length;t++){if(e.charCodeAt(t)>255){return false}}return true}static isPrintableString(e){return/^[A-Za-z0-9 '()+,-./:=?]*$/g.test(e)}constructor(e,t={}){this.extraNames=new _h;this.asn=new Qo;for(const e in t){if(Object.prototype.hasOwnProperty.call(t,e)){const r=t[e];this.extraNames.register(e,r)}}if(typeof e=="string"){this.asn=this.fromString(e)}else if(e instanceof Qo){this.asn=e}else if(_r.isBufferSource(e)){this.asn=Ho.parse(e,Qo)}else{this.asn=this.fromJSON(e)}}getField(e){const t=this.extraNames.findId(e)||Uh.findId(e);const r=[];for(const e of this.asn){for(const n of e){if(n.type===t){r.push(n.value.toString())}}}return r}getName(e){return this.extraNames.get(e)||Uh.get(e)}toString(){return this.asn.map(e=>e.map(e=>`${this.getName(e.type)||e.type}=${e.value.anyValue?`#${Fr.ToHex(e.value.anyValue)}`:e.value.toString().replace(/([,+"\\<>;])/g,"\\$1").replace(/^([ #])/,"\\$1").replace(/([ ]$)/,"\\$1").replace(/([\r\n\t])/,Dh)}`).join("+")).join(", ")}toJSON(){var e;const t=[];for(const r of this.asn){const n={};for(const t of r){const r=this.getName(t.type)||t.type;if((e=n[r])===null||e===undefined){n[r]=[]}n[r].push(t.value.anyValue?`#${Fr.ToHex(t.value.anyValue)}`:t.value.toString())}t.push(n)}return t}fromString(e){const t=new Qo;const r=/(\d\.[\d.]*\d|[A-Za-z]+)=((?:"")|(?:".*?[^\\]")|(?:[^,+"\\](?=[,+]|$))|(?:[^,+].*?(?:[^\\][,+]))|(?:))([,+])?/g;let n=null;let i=",";while(n=r.exec(`${e},`)){let[,e,r]=n;const o=r[r.length-1];if(o===","||o==="+"){r=r.slice(0,r.length-1);n[3]=o}const s=n[3];e=this.getTypeOid(e);const a=this.createAttribute(e,r);if(i==="+"){t[t.length-1].push(a)}else{t.push(new Xo([a]))}i=s}return t}fromJSON(e){const t=new Qo;for(const r of e){const e=new Xo;for(const t in r){const n=this.getTypeOid(t);const i=r[t];for(const t of i){const r=this.createAttribute(n,t);e.push(r)}}t.push(e)}return t}getTypeOid(e){if(!/[\d.]+/.test(e)){e=this.getName(e)||""}if(!e){throw new Error(`Cannot get OID for name type '${e}'`)}return e}createAttribute(e,t){const r=new zo({type:e});if(typeof t=="object"){for(const e in t){switch(e){case"ia5String":r.value.ia5String=t[e];break;case"utf8String":r.value.utf8String=t[e];break;case"universalString":r.value.universalString=t[e];break;case"bmpString":r.value.bmpString=t[e];break;case"printableString":r.value.printableString=t[e]}}}else if(t[0]==="#"){r.value.anyValue=Fr.FromHex(t.slice(1))}else{const n=this.processStringValue(t);if(e===this.getName("E")||e===this.getName("DC")){r.value.ia5String=n}else if(Ph.isPrintableString(n)){r.value.printableString=n}else{r.value.utf8String=n}}return r}processStringValue(e){const t=/"(.*?[^\\])?"/.exec(e);if(t){e=t[1]}return e.replace(/\\0a/gi,"\n").replace(/\\0d/gi,"\r").replace(/\\0g/gi,"\t").replace(/\\(.)/g,"$1")}toArrayBuffer(){return Ho.serialize(this.asn)}async getThumbprint(...e){let r;let n="SHA-1";if(e.length>=1&&!e[0]?.subtle){n=e[0]||n;r=e[1]||Ch.get()}else{r=e[0]||Ch.get()}return await r.subtle.digest(n,this.toArrayBuffer())}}const Vh="Cannot initialize GeneralName from ASN.1 data.";const jh=`${Vh} Unsupported string format in use.`;const Lh=`${Vh} Value doesn't match to GUID regular expression.`;const Fh=/^([0-9a-f]{8})-?([0-9a-f]{4})-?([0-9a-f]{4})-?([0-9a-f]{4})-?([0-9a-f]{12})$/i;const Mh="1.3.6.1.4.1.311.25.1";const Hh="1.3.6.1.4.1.311.20.2.3";const Kh="dns";const $h="dn";const Gh="email";const Wh="ip";const Yh="url";const Jh="guid";const zh="upn";const Xh="id";class qh extends Ih{constructor(...e){let t;if(e.length===2){switch(e[0]){case $h:{const r=new Ph(e[1]).toArrayBuffer();const n=Ho.parse(r,Qo);t=new rs({directoryName:n});break}case Kh:t=new rs({dNSName:e[1]});break;case Gh:t=new rs({rfc822Name:e[1]});break;case Jh:{const r=new RegExp(Fh,"i").exec(e[1]);if(!r){throw new Error("Cannot parse GUID value. Value doesn't match to regular expression")}const n=r.slice(1).map((e,t)=>t<3?Fr.ToHex(new Uint8Array(Fr.FromHex(e)).reverse()):e).join("");t=new rs({otherName:new es({typeId:Mh,value:Ho.serialize(new io(Fr.FromHex(n)))})});break}case Wh:t=new rs({iPAddress:e[1]});break;case Xh:t=new rs({registeredID:e[1]});break;case zh:t=new rs({otherName:new es({typeId:Hh,value:Ho.serialize(mo.toASN(e[1]))})});break;case Yh:t=new rs({uniformResourceIdentifier:e[1]});break;default:throw new Error("Cannot create GeneralName. Unsupported type of the name")}}else{t=_r.isBufferSource(e[0])?Ho.parse(e[0],rs):e[0]}super(t)}onInit(e){if(e.dNSName!=null){this.type=Kh;this.value=e.dNSName}else if(e.rfc822Name!=null){this.type=Gh;this.value=e.rfc822Name}else if(e.iPAddress!=null){this.type=Wh;this.value=e.iPAddress}else if(e.uniformResourceIdentifier!=null){this.type=Yh;this.value=e.uniformResourceIdentifier}else if(e.registeredID!=null){this.type=Xh;this.value=e.registeredID}else if(e.directoryName!=null){this.type=$h;this.value=new Ph(e.directoryName).toString()}else{if(e.otherName==null){throw new Error(jh)}if(e.otherName.typeId===Mh){this.type=Jh;const t=Ho.parse(e.otherName.value,io);const r=new RegExp(Fh,"i").exec(Fr.ToHex(t));if(!r){throw new Error(Lh)}this.value=r.slice(1).map((e,t)=>t<3?Fr.ToHex(new Uint8Array(Fr.FromHex(e)).reverse()):e).join("-")}else{if(e.otherName.typeId!==Hh){throw new Error(jh)}this.type=zh;this.value=Ho.parse(e.otherName.value,Yo).toString()}}}toJSON(){return{type:this.type,value:this.value}}toTextObject(){let e;switch(this.type){case $h:case Kh:case Jh:case Wh:case Xh:case zh:case Yh:e=this.type.toUpperCase();break;case Gh:e="Email";break;default:throw new Error("Unsupported GeneralName type")}let t=this.value;if(this.type===Xh){t=Th.toString(t)}return new Nh(e,undefined,t)}}class Qh extends Ih{constructor(e){let t;if(e instanceof ws){t=e}else if(Array.isArray(e)){const r=[];for(const t of e){if(t instanceof rs){r.push(t)}else{const e=Ho.parse(new qh(t.type,t.value).rawData,rs);r.push(e)}}t=new ws(r)}else{if(!_r.isBufferSource(e)){throw new Error("Cannot initialize GeneralNames. Incorrect incoming arguments")}t=Ho.parse(e,ws)}super(t)}onInit(e){const t=[];for(const r of e){let e=null;try{e=new qh(r)}catch{continue}t.push(e)}this.items=t}toJSON(){return this.items.map(e=>e.toJSON())}toTextObject(){const e=super.toTextObjectEmpty();for(const t of this.items){const r=t.toTextObject();let n=e[r[Nh.NAME]];if(!Array.isArray(n)){n=[];e[r[Nh.NAME]]=n}n.push(r)}return e}}Qh.NAME="GeneralNames";const Zh="-{5}";const ef="\\n";const tf="\\n";const rf=`${Zh}BEGIN ([^${ef}]+(?=${Zh}))${Zh}${tf}(?:((?:[^:${ef}]+: (?:[^${ef}]+${tf}(?: +[^${ef}]+${tf})*))+))?${tf}?((?:[a-zA-Z0-9=+/]+${tf})+)${Zh}END \\1${Zh}`;class nf{static isPem(e){return typeof e=="string"&&new RegExp(rf,"g").test(e.replace(/\r/g,""))}static decodeWithHeaders(e){e=e.replace(/\r/g,"");const t=new RegExp(rf,"g");const r=[];let n=null;while(n=t.exec(e)){const e=n[3].replace(new RegExp(`[${ef}]+`,"g"),"");const t={type:n[1],headers:[],rawData:Fr.FromBase64(e)};const i=n[2];if(i){const e=i.split(new RegExp(tf,"g"));let r=null;for(const n of e){const[e,i]=n.split(/:(.*)/);if(i===undefined){if(!r){throw new Error("Cannot parse PEM string. Incorrect header value")}r.value+=e.trim()}else{if(r){t.headers.push(r)}r={key:e,value:i.trim()}}}if(r){t.headers.push(r)}}r.push(t)}return r}static decode(e){return this.decodeWithHeaders(e).map(e=>e.rawData)}static decodeFirst(e){const t=this.decode(e);if(!t.length){throw new RangeError("PEM string doesn't contain any objects")}return t[0]}static encode(e,t){if(Array.isArray(e)){const r=new Array;if(t){e.forEach(e=>{if(!_r.isBufferSource(e)){throw new TypeError("Cannot encode array of BufferSource in PEM format. Not all items of the array are BufferSource")}r.push(this.encodeStruct({type:t,rawData:_r.toArrayBuffer(e)}))})}else{e.forEach(e=>{if(!("type"in e)){throw new TypeError("Cannot encode array of PemStruct in PEM format. Not all items of the array are PemStrut")}r.push(this.encodeStruct(e))})}return r.join("\n")}if(!t){throw new Error("Required argument 'tag' is missed")}return this.encodeStruct({type:t,rawData:_r.toArrayBuffer(e)})}static encodeStruct(e){const r=e.type.toLocaleUpperCase();const n=[];n.push(`-----BEGIN ${r}-----`);if(e.headers?.length){for(const t of e.headers){n.push(`${t.key}: ${t.value}`)}n.push("")}const i=Fr.ToBase64(e.rawData);let o;let s=0;const a=Array();while(s<i.length&&(i.length-s<64?o=i.substring(s):(o=i.substring(s,s+64),s+=64),o.length!==0)&&(a.push(o),!(o.length<64)));n.push(...a);n.push(`-----END ${r}-----`);return n.join("\n")}}nf.CertificateTag="CERTIFICATE";nf.CrlTag="CRL";nf.CertificateRequestTag="CERTIFICATE REQUEST";nf.PublicKeyTag="PUBLIC KEY";nf.PrivateKeyTag="PRIVATE KEY";class of extends Ih{static isAsnEncoded(e){return _r.isBufferSource(e)||typeof e=="string"}static toArrayBuffer(e){if(typeof e=="string"){if(nf.isPem(e)){return nf.decode(e)[0]}if(Fr.isHex(e)){return Fr.FromHex(e)}if(Fr.isBase64(e)){return Fr.FromBase64(e)}if(Fr.isBase64Url(e)){return Fr.FromBase64Url(e)}throw new TypeError("Unsupported format of 'raw' argument. Must be one of DER, PEM, HEX, Base64, or Base4Url")}{const t=Fr.ToBinary(e);if(nf.isPem(t)){return nf.decode(t)[0]}else if(Fr.isHex(t)){return Fr.FromHex(t)}else if(Fr.isBase64(t)){return Fr.FromBase64(t)}else if(Fr.isBase64Url(t)){return Fr.FromBase64Url(t)}else{return _r.toArrayBuffer(e)}}}constructor(...e){if(of.isAsnEncoded(e[0])){super(of.toArrayBuffer(e[0]),e[1])}else{super(e[0])}}toString(e="pem"){if(e==="pem"){return nf.encode(this.rawData,this.tag)}else{return super.toString(e)}}}class sf extends of{static async create(e,t=Ch.get()){if(e instanceof sf){return e}if(xh.isCryptoKey(e)){if(e.type!=="public"){throw new TypeError("Public key is required")}const r=await t.subtle.exportKey("spki",e);return new sf(r)}if(e.publicKey){return e.publicKey}if(_r.isBufferSource(e)){return new sf(e)}throw new TypeError("Unsupported PublicKeyType")}constructor(e){if(of.isAsnEncoded(e)){super(e,Ra)}else{super(e)}this.tag=nf.PublicKeyTag}async export(...e){let t;let r=["verify"];let n={hash:"SHA-256",...this.algorithm};if(e.length>1){n=e[0]||n;r=e[1]||r;t=e[2]||Ch.get()}else{t=e[0]||Ch.get()}let i=this.rawData;const o=Ho.parse(this.rawData,Ra);if(o.algorithm.algorithm===Kl){i=function(e){e.algorithm=new Ca({algorithm:Fl,parameters:null});return Ho.serialize(e)}(o)}return t.subtle.importKey("spki",i,n,true,r)}onInit(e){const t=Fu.resolve(Kp);const r=this.algorithm=t.toWebAlgorithm(e.algorithm);switch(e.algorithm.algorithm){case Fl:{const t=Ho.parse(e.subjectPublicKey,mu);const n=_r.toUint8Array(t.modulus);r.publicExponent=_r.toUint8Array(t.publicExponent);r.modulusLength=(n[0]?n:n.slice(1)).byteLength<<3;break}}}async getThumbprint(...e){let r;let n="SHA-1";if(e.length>=1&&!e[0]?.subtle){n=e[0]||n;r=e[1]||Ch.get()}else{r=e[0]||Ch.get()}return await r.subtle.digest(n,this.rawData)}async getKeyIdentifier(...e){let t;let r="SHA-1";if(e.length===1){if(typeof e[0]=="string"){r=e[0];t=Ch.get()}else{t=e[0]}}else if(e.length===2){r=e[0];t=e[1]}else{t=Ch.get()}const n=Ho.parse(this.rawData,Ra);return await t.subtle.digest(r,n.subjectPublicKey)}toTextObject(){const e=this.toTextObjectEmpty();const t=Ho.parse(this.rawData,Ra);e.Algorithm=Oh.serializeAlgorithm(t.algorithm);if(t.algorithm.algorithm===vl){e["EC Point"]=t.subjectPublicKey}else{e["Raw Data"]=t.subjectPublicKey}return e}}class af extends kh{static async create(e,t=false,r=Ch.get()){if("name"in e&&"serialNumber"in e){return new af(e,t)}const n=await sf.create(e,r);const i=await n.getKeyIdentifier(r);return new af(Fr.ToHex(i),t)}constructor(...e){if(_r.isBufferSource(e[0])){super(e[0])}else if(typeof e[0]=="string"){const t=new gs({keyIdentifier:new ms(Fr.FromHex(e[0]))});super(ys,e[1],Ho.serialize(t))}else{const t=e[0];const r=t.name instanceof Qh?Ho.parse(t.name.rawData,ws):t.name;const n=new gs({authorityCertIssuer:r,authorityCertSerialNumber:Fr.FromHex(t.serialNumber)});super(ys,e[1],Ho.serialize(n))}}onInit(e){super.onInit(e);const t=Ho.parse(e.extnValue,gs);if(t.keyIdentifier){this.keyId=Fr.ToHex(t.keyIdentifier)}if(t.authorityCertIssuer||t.authorityCertSerialNumber){this.certId={name:t.authorityCertIssuer||[],serialNumber:t.authorityCertSerialNumber?Fr.ToHex(t.authorityCertSerialNumber):""}}}toTextObject(){const e=this.toTextObjectWithoutValue();const t=Ho.parse(this.value,gs);if(t.authorityCertIssuer){e["Authority Issuer"]=new Qh(t.authorityCertIssuer).toTextObject()}if(t.authorityCertSerialNumber){e["Authority Serial Number"]=t.authorityCertSerialNumber}if(t.keyIdentifier){e[""]=t.keyIdentifier}return e}}af.NAME="Authority Key Identifier";class cf extends kh{constructor(...e){if(_r.isBufferSource(e[0])){super(e[0]);const t=Ho.parse(this.value,bs);this.ca=t.cA;this.pathLength=t.pathLenConstraint}else{const t=new bs({cA:e[0],pathLenConstraint:e[1]});super(vs,e[2],Ho.serialize(t));this.ca=e[0];this.pathLength=e[1]}}toTextObject(){const e=this.toTextObjectWithoutValue();if(this.ca){e.CA=this.ca}if(this.pathLength!==undefined){e["Path Length"]=this.pathLength}return e}}var lf;var uf;cf.NAME="Basic Constraints";(function(e){e.serverAuth="1.3.6.1.5.5.7.3.1";e.clientAuth="1.3.6.1.5.5.7.3.2";e.codeSigning="1.3.6.1.5.5.7.3.3";e.emailProtection="1.3.6.1.5.5.7.3.4";e.timeStamping="1.3.6.1.5.5.7.3.8";e.ocspSigning="1.3.6.1.5.5.7.3.9"})(lf||={});class pf extends kh{constructor(...e){if(_r.isBufferSource(e[0])){super(e[0]);const t=Ho.parse(this.value,zs);this.usages=t.map(e=>e)}else{const t=new zs(e[0]);super(Js,e[1],Ho.serialize(t));this.usages=e[0]}}toTextObject(){const e=this.toTextObjectWithoutValue();e[""]=this.usages.map(e=>Th.toString(e)).join(", ");return e}}pf.NAME="Extended Key Usages";(function(e){e[e.digitalSignature=1]="digitalSignature";e[e.nonRepudiation=2]="nonRepudiation";e[e.keyEncipherment=4]="keyEncipherment";e[e.dataEncipherment=8]="dataEncipherment";e[e.keyAgreement=16]="keyAgreement";e[e.keyCertSign=32]="keyCertSign";e[e.cRLSign=64]="cRLSign";e[e.encipherOnly=128]="encipherOnly";e[e.decipherOnly=256]="decipherOnly"})(uf||={});class hf extends kh{constructor(...e){if(_r.isBufferSource(e[0])){super(e[0]);const t=Ho.parse(this.value,la);this.usages=t.toNumber()}else{const t=new la(e[0]);super(sa,e[1],Ho.serialize(t));this.usages=e[0]}}toTextObject(){const e=this.toTextObjectWithoutValue();const t=Ho.parse(this.value,la);e[""]=t.toJSON().join(", ");return e}}hf.NAME="Key Usages";class ff extends kh{static async create(e,t=false,r=Ch.get()){const n=await sf.create(e,r);const i=await n.getKeyIdentifier(r);return new ff(Fr.ToHex(i),t)}constructor(...e){if(_r.isBufferSource(e[0])){super(e[0]);const t=Ho.parse(this.value,Na);this.keyId=Fr.ToHex(t)}else{const t=typeof e[0]=="string"?Fr.FromHex(e[0]):e[0];const r=new Na(t);super(Aa,e[1],Ho.serialize(r));this.keyId=Fr.ToHex(t)}}toTextObject(){const e=this.toTextObjectWithoutValue();const t=Ho.parse(this.value,Na);e[""]=t;return e}}ff.NAME="Subject Key Identifier";class df extends kh{constructor(...e){if(_r.isBufferSource(e[0])){super(e[0])}else{super(va,e[1],new Qh(e[0]||[]).rawData)}}onInit(e){super.onInit(e);const t=Ho.parse(e.extnValue,ba);this.names=new Qh(t)}toTextObject(){const e=this.toTextObjectWithoutValue();const t=this.names.toTextObject();for(const r in t){e[r]=t[r]}return e}}df.NAME="Subject Alternative Name";class yf{static register(e,t){this.items.set(e,t)}static create(e){const t=new kh(e);const r=this.items.get(t.type);if(r){return new r(e)}else{return t}}}yf.items=new Map;class mf extends kh{constructor(...e){var t;if(_r.isBufferSource(e[0])){super(e[0]);const t=Ho.parse(this.value,Rs);this.policies=t.map(e=>e.policyIdentifier)}else{const r=e[0];const n=(t=e[1])!==null&&t!==undefined&&t;const i=new Rs(r.map(e=>new Cs({policyIdentifier:e})));super(Ts,n,Ho.serialize(i));this.policies=r}}toTextObject(){const e=this.toTextObjectWithoutValue();e.Policy=this.policies.map(e=>new Nh("",{},Th.toString(e)));return e}}mf.NAME="Certificate Policies";yf.register(Ts,mf);class gf extends kh{constructor(...e){var t;if(_r.isBufferSource(e[0])){super(e[0])}else if(Array.isArray(e[0])&&typeof e[0][0]=="string"){const t=e[0].map(e=>new Fs({distributionPoint:new Ls({fullName:[new rs({uniformResourceIdentifier:e})]})}));const r=new Ms(t);super(Ps,e[1],Ho.serialize(r))}else{const t=new Ms(e[0]);super(Ps,e[1],Ho.serialize(t))}if((t=this.distributionPoints)===null||t===undefined){this.distributionPoints=[]}}onInit(e){super.onInit(e);const t=Ho.parse(e.extnValue,Ms);this.distributionPoints=t}toTextObject(){const e=this.toTextObjectWithoutValue();e["Distribution Point"]=this.distributionPoints.map(e=>{var t;const r={};if(e.distributionPoint){r[""]=(t=e.distributionPoint.fullName)===null||t===undefined?undefined:t.map(e=>new qh(e).toString()).join(", ")}if(e.reasons){r.Reasons=e.reasons.toString()}if(e.cRLIssuer){r["CRL Issuer"]=e.cRLIssuer.map(e=>e.toString()).join(", ")}return r});return e}}gf.NAME="CRL Distribution Points";class vf extends kh{constructor(...e){var t;var r;var n;var i;if(_r.isBufferSource(e[0])){super(e[0])}else if(e[0]instanceof ds){const t=new ds(e[0]);super(hs,e[1],Ho.serialize(t))}else{const t=e[0];const r=new ds;Ef(r,t,ss,"ocsp");Ef(r,t,as,"caIssuers");Ef(r,t,cs,"timeStamping");Ef(r,t,ls,"caRepository");super(hs,e[1],Ho.serialize(r))}if((t=this.ocsp)===null||t===undefined){this.ocsp=[]}if((r=this.caIssuers)===null||r===undefined){this.caIssuers=[]}if((n=this.timeStamping)===null||n===undefined){this.timeStamping=[]}if((i=this.caRepository)===null||i===undefined){this.caRepository=[]}}onInit(e){super.onInit(e);this.ocsp=[];this.caIssuers=[];this.timeStamping=[];this.caRepository=[];Ho.parse(e.extnValue,ds).forEach(e=>{switch(e.accessMethod){case ss:this.ocsp.push(new qh(e.accessLocation));break;case as:this.caIssuers.push(new qh(e.accessLocation));break;case cs:this.timeStamping.push(new qh(e.accessLocation));break;case ls:this.caRepository.push(new qh(e.accessLocation))}})}toTextObject(){const e=this.toTextObjectWithoutValue();if(this.ocsp.length){bf(e,"OCSP",this.ocsp)}if(this.caIssuers.length){bf(e,"CA Issuers",this.caIssuers)}if(this.timeStamping.length){bf(e,"Time Stamping",this.timeStamping)}if(this.caRepository.length){bf(e,"CA Repository",this.caRepository)}return e}}function bf(e,t,r){if(r.length===1){e[t]=r[0].toTextObject()}else{const n=new Nh("");r.forEach((e,t)=>{const r=e.toTextObject();const i=`${r[Nh.NAME]} ${t+1}`;let o=n[i];if(!Array.isArray(o)){o=[];n[i]=o}o.push(r)});e[t]=n}}function Ef(e,t,r,n){const i=t[n];if(i){(Array.isArray(i)?i:[i]).forEach(t=>{if(typeof t=="string"){t=new qh("url",t)}e.push(new fs({accessMethod:r,accessLocation:Ho.parse(t.rawData,rs)}))})}}vf.NAME="Authority Info Access";class wf extends Ih{constructor(...e){let t;if(_r.isBufferSource(e[0])){t=_r.toArrayBuffer(e[0])}else{const r=e[0];const n=Array.isArray(e[1])?e[1].map(e=>_r.toArrayBuffer(e)):[];t=Ho.serialize(new Ea({type:r,values:n}))}super(t,Ea)}onInit(e){this.type=e.type;this.values=e.values}toTextObject(){const e=this.toTextObjectWithoutValue();e.Value=this.values.map(e=>new Nh("",{"":e}));return e}toTextObjectWithoutValue(){const e=this.toTextObjectEmpty();if(e[Nh.NAME]===wf.NAME){e[Nh.NAME]=Th.toString(this.type)}return e}}wf.NAME="Attribute";class Sf extends wf{constructor(...e){var t;if(_r.isBufferSource(e[0])){super(e[0])}else{const t=new Rp({printableString:e[0]});super(fp,[Ho.serialize(t)])}if((t=this.password)===null||t===undefined){this.password=""}}onInit(e){super.onInit(e);if(this.values[0]){const e=Ho.parse(this.values[0],Rp);this.password=e.toString()}}toTextObject(){const e=this.toTextObjectWithoutValue();e[Nh.VALUE]=this.password;return e}}Sf.NAME="Challenge Password";class Af extends wf{constructor(...e){var t;if(_r.isBufferSource(e[0])){super(e[0])}else{const t=e[0];const r=new Va;for(const e of t){r.push(Ho.parse(e.rawData,Pa))}super(dp,[Ho.serialize(r)])}if((t=this.items)===null||t===undefined){this.items=[]}}onInit(e){super.onInit(e);if(this.values[0]){const e=Ho.parse(this.values[0],Va);this.items=e.map(e=>yf.create(Ho.serialize(e)))}}toTextObject(){const e=this.toTextObjectWithoutValue();const t=this.items.map(e=>e.toTextObject());for(const r of t){e[r[Nh.NAME]]=r}return e}}Af.NAME="Extensions";class Nf{static register(e,t){this.items.set(e,t)}static create(e){const t=new wf(e);const r=this.items.get(t.type);if(r){return new r(e)}else{return t}}}Nf.items=new Map;const Tf="crypto.signatureFormatter";var Of;let If=Of=class{static createPssParams(e,t){const r=Of.getHashAlgorithm(e);if(r){return new uu({hashAlgorithm:r,maskGenAlgorithm:new Ca({algorithm:iu,parameters:Ho.serialize(r)}),saltLength:t})}else{return null}}static getHashAlgorithm(e){const t=Fu.resolve(Kp);if(typeof e=="string"){return t.toAsnAlgorithm({name:e})}else if(typeof e=="object"&&e&&"name"in e){return t.toAsnAlgorithm(e)}else{return null}}toAsnAlgorithm(e){switch(e.name.toLowerCase()){case"rsassa-pkcs1-v1_5":if(!("hash"in e)){return new Ca({algorithm:Fl,parameters:null})}{let t;if(typeof e.hash=="string"){t=e.hash}else{if(!e.hash||typeof e.hash!="object"||!("name"in e.hash)||typeof e.hash.name!="string"){throw new Error("Cannot get hash algorithm name")}t=e.hash.name.toUpperCase()}switch(t.toLowerCase()){case"sha-1":return new Ca({algorithm:Wl,parameters:null});case"sha-256":return new Ca({algorithm:Jl,parameters:null});case"sha-384":return new Ca({algorithm:zl,parameters:null});case"sha-512":return new Ca({algorithm:Xl,parameters:null})}}break;case"rsa-pss":if("hash"in e){if(!("saltLength"in e)||typeof e.saltLength!="number"){throw new Error("Cannot get 'saltLength' from 'alg' argument")}const t=Of.createPssParams(e.hash,e.saltLength);if(!t){throw new Error("Cannot create PSS parameters")}return new Ca({algorithm:Kl,parameters:Ho.serialize(t)})}return new Ca({algorithm:Kl,parameters:null})}return null}toWebAlgorithm(e){switch(e.algorithm){case Fl:return{name:"RSASSA-PKCS1-v1_5"};case Wl:return{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-1"}};case Jl:return{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-256"}};case zl:return{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-384"}};case Xl:return{name:"RSASSA-PKCS1-v1_5",hash:{name:"SHA-512"}};case Kl:if(e.parameters){const t=Ho.parse(e.parameters,uu);return{name:"RSA-PSS",hash:Fu.resolve(Kp).toWebAlgorithm(t.hashAlgorithm),saltLength:t.saltLength}}return{name:"RSA-PSS"}}return null}};If=Of=e([Mu()],If);Fu.registerSingleton(Hp,If);let kf=class{toAsnAlgorithm(e){switch(e.name.toLowerCase()){case"sha-1":return new Ca({algorithm:Zl});case"sha-256":return new Ca({algorithm:tu});case"sha-384":return new Ca({algorithm:ru});case"sha-512":return new Ca({algorithm:nu})}return null}toWebAlgorithm(e){switch(e.algorithm){case Zl:return{name:"SHA-1"};case tu:return{name:"SHA-256"};case ru:return{name:"SHA-384"};case nu:return{name:"SHA-512"}}return null}};kf=e([Mu()],kf);Fu.registerSingleton(Hp,kf);class Bf{addPadding(e,t){const r=_r.toUint8Array(t);const n=new Uint8Array(e);n.set(r,e-r.length);return n}removePadding(e,t=false){let r=_r.toUint8Array(e);for(let e=0;e<r.length;e++){if(r[e]){r=r.slice(e);break}}if(t&&r[0]>127){const e=new Uint8Array(r.length+1);e.set(r,1);return e.buffer}return r.buffer}toAsnSignature(e,t){if(e.name==="ECDSA"){const r=e.namedCurve;const n=Bf.namedCurveSize.get(r)||Bf.defaultNamedCurveSize;const i=new jl;const o=_r.toUint8Array(t);i.r=this.removePadding(o.slice(0,n),true);i.s=this.removePadding(o.slice(n,n+n),true);return Ho.serialize(i)}return null}toWebSignature(e,t){if(e.name==="ECDSA"){const r=Ho.parse(t,jl);const n=e.namedCurve;const i=Bf.namedCurveSize.get(n)||Bf.defaultNamedCurveSize;return function(...e){const t=e.map(e=>e.byteLength).reduce((e,t)=>e+t);const r=new Uint8Array(t);let n=0;e.map(e=>new Uint8Array(e)).forEach(e=>{for(const t of e){r[n++]=t}});return r.buffer}(this.addPadding(i,this.removePadding(r.r)),this.addPadding(i,this.removePadding(r.s)))}return null}}Bf.namedCurveSize=new Map;Bf.defaultNamedCurveSize=32;const xf="1.3.101.110";const Cf="1.3.101.111";const Rf="1.3.101.112";const _f="1.3.101.113";let Uf=class{toAsnAlgorithm(e){let t=null;switch(e.name.toLowerCase()){case"ed25519":t=Rf;break;case"x25519":t=xf;break;case"eddsa":switch(e.namedCurve.toLowerCase()){case"ed25519":t=Rf;break;case"ed448":t=_f}break;case"ecdh-es":switch(e.namedCurve.toLowerCase()){case"x25519":t=xf;break;case"x448":t=Cf}}if(t){return new Ca({algorithm:t})}else{return null}}toWebAlgorithm(e){switch(e.algorithm){case Rf:return{name:"Ed25519"};case _f:return{name:"EdDSA",namedCurve:"Ed448"};case xf:return{name:"X25519"};case Cf:return{name:"ECDH-ES",namedCurve:"X448"}}return null}};Uf=e([Mu()],Uf);Fu.registerSingleton(Hp,Uf);(class extends of{constructor(e){if(of.isAsnEncoded(e)){super(e,Mp)}else{super(e)}this.tag=nf.CertificateRequestTag}onInit(e){this.tbs=Ho.serialize(e.certificationRequestInfo);this.publicKey=new sf(e.certificationRequestInfo.subjectPKInfo);const t=Fu.resolve(Kp);this.signatureAlgorithm=t.toWebAlgorithm(e.signatureAlgorithm);this.signature=e.signature;this.attributes=e.certificationRequestInfo.attributes.map(e=>Nf.create(Ho.serialize(e)));const r=this.getAttribute(dp);this.extensions=[];if(r instanceof Af){this.extensions=r.items}this.subjectName=new Ph(e.certificationRequestInfo.subject);this.subject=this.subjectName.toString()}getAttribute(e){for(const t of this.attributes){if(t.type===e){return t}}return null}getAttributes(e){return this.attributes.filter(t=>t.type===e)}getExtension(e){for(const t of this.extensions){if(t.type===e){return t}}return null}getExtensions(e){return this.extensions.filter(t=>t.type===e)}async verify(e=Ch.get()){const t={...this.publicKey.algorithm,...this.signatureAlgorithm};const r=await this.publicKey.export(t,["verify"],e);const n=Fu.resolveAll(Tf).reverse();let i=null;for(const e of n){i=e.toWebSignature(t,this.signature);if(i){break}}if(!i){throw Error("Cannot convert WebCrypto signature value to ASN.1 format")}return await e.subtle.verify(this.signatureAlgorithm,r,i,this.tbs)}toTextObject(){const e=this.toTextObjectEmpty();const t=Ho.parse(this.rawData,Mp);const r=t.certificationRequestInfo;const n=new Nh("",{Version:`${ja[r.version]} (${r.version})`,Subject:this.subject,"Subject Public Key Info":this.publicKey});if(this.attributes.length){const e=new Nh("");for(const t of this.attributes){const r=t.toTextObject();e[r[Nh.NAME]]=r}n.Attributes=e}e.Data=n;e.Signature=new Nh("",{Algorithm:Oh.serializeAlgorithm(t.signatureAlgorithm),"":t.signature});return e}}).NAME="PKCS#10 Certificate Request";class Df extends of{constructor(e){if(of.isAsnEncoded(e)){super(e,Fa)}else{super(e)}this.tag=nf.CertificateTag}onInit(e){const t=e.tbsCertificate;this.tbs=Ho.serialize(t);let r=new Uint8Array(t.serialNumber);if(r.length>1&&r[0]===0&&r[1]>127){r=r.slice(1)}this.serialNumber=Fr.ToHex(r);this.subjectName=new Ph(t.subject);this.subject=new Ph(t.subject).toString();this.issuerName=new Ph(t.issuer);this.issuer=this.issuerName.toString();const n=Fu.resolve(Kp);this.signatureAlgorithm=n.toWebAlgorithm(e.signatureAlgorithm);this.signature=e.signatureValue;const i=t.validity.notBefore.utcTime||t.validity.notBefore.generalTime;if(!i){throw new Error("Cannot get 'notBefore' value")}this.notBefore=i;const o=t.validity.notAfter.utcTime||t.validity.notAfter.generalTime;if(!o){throw new Error("Cannot get 'notAfter' value")}this.notAfter=o;this.extensions=[];if(t.extensions){this.extensions=t.extensions.map(e=>yf.create(Ho.serialize(e)))}this.publicKey=new sf(t.subjectPublicKeyInfo)}getExtension(e){for(const t of this.extensions){if(typeof e=="string"){if(t.type===e){return t}}else if(t instanceof e){return t}}return null}getExtensions(e){return this.extensions.filter(t=>typeof e=="string"?t.type===e:t instanceof e)}async verify(e={},t=Ch.get()){let r;let n;const i=e.publicKey;try{if(i){if("publicKey"in i){r={...i.publicKey.algorithm,...this.signatureAlgorithm};n=await i.publicKey.export(r,["verify"],t)}else if(i instanceof sf){r={...i.algorithm,...this.signatureAlgorithm};n=await i.export(r,["verify"],t)}else if(_r.isBufferSource(i)){const e=new sf(i);r={...e.algorithm,...this.signatureAlgorithm};n=await e.export(r,["verify"],t)}else{r={...i.algorithm,...this.signatureAlgorithm};n=i}}else{r={...this.publicKey.algorithm,...this.signatureAlgorithm};n=await this.publicKey.export(r,["verify"],t)}}catch(e){return false}const o=Fu.resolveAll(Tf).reverse();let s=null;for(const e of o){s=e.toWebSignature(r,this.signature);if(s){break}}if(!s){throw Error("Cannot convert ASN.1 signature value to WebCrypto format")}const a=await t.subtle.verify(this.signatureAlgorithm,n,s,this.tbs);if(e.signatureOnly){return a}{const t=(e.date||new Date).getTime();return a&&this.notBefore.getTime()<t&&t<this.notAfter.getTime()}}async getThumbprint(...e){let t;let r="SHA-1";if(e[0]){if(e[0].subtle){t=e[0]}else{r=e[0]||r;t=e[1]}}if(t==null){t=Ch.get()}return await t.subtle.digest(r,this.rawData)}async isSelfSigned(e=Ch.get()){return this.subject===this.issuer&&await this.verify({signatureOnly:true},e)}toTextObject(){const e=this.toTextObjectEmpty();const t=Ho.parse(this.rawData,Fa);const r=t.tbsCertificate;const n=new Nh("",{Version:`${ja[r.version]} (${r.version})`,"Serial Number":r.serialNumber,"Signature Algorithm":Oh.serializeAlgorithm(r.signature),Issuer:this.issuer,Validity:new Nh("",{"Not Before":r.validity.notBefore.getTime(),"Not After":r.validity.notAfter.getTime()}),Subject:this.subject,"Subject Public Key Info":this.publicKey});if(r.issuerUniqueID){n["Issuer Unique ID"]=r.issuerUniqueID}if(r.subjectUniqueID){n["Subject Unique ID"]=r.subjectUniqueID}if(this.extensions.length){const e=new Nh("");for(const t of this.extensions){const r=t.toTextObject();e[r[Nh.NAME]]=r}n.Extensions=e}e.Data=n;e.Signature=new Nh("",{Algorithm:Oh.serializeAlgorithm(t.signatureAlgorithm),"":t.signatureValue});return e}}var Pf;Df.NAME="Certificate";(function(e){e[e.unspecified=0]="unspecified";e[e.keyCompromise=1]="keyCompromise";e[e.cACompromise=2]="cACompromise";e[e.affiliationChanged=3]="affiliationChanged";e[e.superseded=4]="superseded";e[e.cessationOfOperation=5]="cessationOfOperation";e[e.certificateHold=6]="certificateHold";e[e.removeFromCRL=8]="removeFromCRL";e[e.privilegeWithdrawn=9]="privilegeWithdrawn";e[e.aACompromise=10]="aACompromise"})(Pf||={});yf.register(vs,cf);yf.register(Js,pf);yf.register(sa,hf);yf.register(Aa,ff);yf.register(ys,af);yf.register(va,df);yf.register(Ps,gf);yf.register(hs,vf);Nf.register(fp,Sf);Nf.register(dp,Af);Fu.registerSingleton(Tf,class{toAsnSignature(e,t){return _r.toArrayBuffer(t)}toWebSignature(e,t){return _r.toArrayBuffer(t)}});Fu.registerSingleton(Tf,Bf);Bf.namedCurveSize.set("P-256",32);Bf.namedCurveSize.set("K-256",32);Bf.namedCurveSize.set("P-384",48);Bf.namedCurveSize.set("P-521",66);const Vf=new TextEncoder;const jf=new TextDecoder;function Lf(e){if(Uint8Array.fromBase64){return Uint8Array.fromBase64(typeof e=="string"?e:jf.decode(e),{alphabet:"base64url"})}let t=e;if(t instanceof Uint8Array){t=jf.decode(t)}t=t.replace(/-/g,"+").replace(/_/g,"/").replace(/\s/g,"");try{return function(e){if(Uint8Array.fromBase64){return Uint8Array.fromBase64(e)}const t=atob(e);const r=new Uint8Array(t.length);for(let e=0;e<t.length;e++){r[e]=t.charCodeAt(e)}return r}(t)}catch{throw new TypeError("The input to be decoded is not correctly encoded.")}}class Ff extends Error{static code="ERR_JOSE_GENERIC";code="ERR_JOSE_GENERIC";constructor(e,t){super(e,t);this.name=this.constructor.name;Error.captureStackTrace?.(this,this.constructor)}}class Mf extends Ff{static code="ERR_JOSE_NOT_SUPPORTED";code="ERR_JOSE_NOT_SUPPORTED"}class Hf extends Ff{static code="ERR_JWS_INVALID";code="ERR_JWS_INVALID"}class Kf extends Ff{static code="ERR_JWS_SIGNATURE_VERIFICATION_FAILED";code="ERR_JWS_SIGNATURE_VERIFICATION_FAILED";constructor(e="signature verification failed",t){super(e,t)}}function $f(e,t="algorithm.name"){return new TypeError(`CryptoKey does not support this operation, its ${t} must be ${e}`)}function Gf(e,t){return e.name===t}function Wf(e){return parseInt(e.name.slice(4),10)}function Yf(e,t,...r){if((r=r.filter(Boolean)).length>2){const t=r.pop();e+=`one of type ${r.join(", ")}, or ${t}.`}else if(r.length===2){e+=`one of type ${r[0]} or ${r[1]}.`}else{e+=`of type ${r[0]}.`}if(t==null){e+=` Received ${t}`}else if(typeof t=="function"&&t.name){e+=` Received function ${t.name}`}else if(typeof t=="object"&&t!=null&&t.constructor?.name){e+=` Received an instance of ${t.constructor.name}`}return e}function Jf(e,t,...r){return Yf(`Key for the ${e} algorithm must be `,t,...r)}function zf(e){return e?.[Symbol.toStringTag]==="CryptoKey"}function Xf(e){return e?.[Symbol.toStringTag]==="KeyObject"}var qf=e=>zf(e)||Xf(e);var Qf=e=>{if(!function(e){return typeof e=="object"&&e!==null}(e)||Object.prototype.toString.call(e)!=="[object Object]"){return false}if(Object.getPrototypeOf(e)===null){return true}let t=e;while(Object.getPrototypeOf(t)!==null){t=Object.getPrototypeOf(t)}return Object.getPrototypeOf(e)===t};function Zf(e){return Qf(e)&&typeof e.kty=="string"}let ed;const td=async(e,t,r,n=false)=>{ed||=new WeakMap;let i=ed.get(e);if(i?.[r]){return i[r]}const o=await(async e=>{if(!e.alg){throw new TypeError('"alg" argument is required when "jwk.alg" is not present')}const{algorithm:t,keyUsages:r}=function(e){let t;let r;switch(e.kty){case"RSA":switch(e.alg){case"PS256":case"PS384":case"PS512":t={name:"RSA-PSS",hash:`SHA-${e.alg.slice(-3)}`};r=e.d?["sign"]:["verify"];break;case"RS256":case"RS384":case"RS512":t={name:"RSASSA-PKCS1-v1_5",hash:`SHA-${e.alg.slice(-3)}`};r=e.d?["sign"]:["verify"];break;case"RSA-OAEP":case"RSA-OAEP-256":case"RSA-OAEP-384":case"RSA-OAEP-512":t={name:"RSA-OAEP",hash:`SHA-${parseInt(e.alg.slice(-3),10)||1}`};r=e.d?["decrypt","unwrapKey"]:["encrypt","wrapKey"];break;default:throw new Mf('Invalid or unsupported JWK "alg" (Algorithm) Parameter value')}break;case"EC":switch(e.alg){case"ES256":t={name:"ECDSA",namedCurve:"P-256"};r=e.d?["sign"]:["verify"];break;case"ES384":t={name:"ECDSA",namedCurve:"P-384"};r=e.d?["sign"]:["verify"];break;case"ES512":t={name:"ECDSA",namedCurve:"P-521"};r=e.d?["sign"]:["verify"];break;case"ECDH-ES":case"ECDH-ES+A128KW":case"ECDH-ES+A192KW":case"ECDH-ES+A256KW":t={name:"ECDH",namedCurve:e.crv};r=e.d?["deriveBits"]:[];break;default:throw new Mf('Invalid or unsupported JWK "alg" (Algorithm) Parameter value')}break;case"OKP":switch(e.alg){case"Ed25519":case"EdDSA":t={name:"Ed25519"};r=e.d?["sign"]:["verify"];break;case"ECDH-ES":case"ECDH-ES+A128KW":case"ECDH-ES+A192KW":case"ECDH-ES+A256KW":t={name:e.crv};r=e.d?["deriveBits"]:[];break;default:throw new Mf('Invalid or unsupported JWK "alg" (Algorithm) Parameter value')}break;default:throw new Mf('Invalid or unsupported JWK "kty" (Key Type) Parameter value')}return{algorithm:t,keyUsages:r}}(e);const n={...e};delete n.alg;delete n.use;return crypto.subtle.importKey("jwk",n,t,e.ext??!e.d,e.key_ops??r)})({...t,alg:r});if(n){Object.freeze(e)}if(i){i[r]=o}else{ed.set(e,{[r]:o})}return o};const rd=e=>e?.[Symbol.toStringTag];const nd=(e,t,r)=>{if(t.use!==undefined){let e;switch(r){case"sign":case"verify":e="sig";break;case"encrypt":case"decrypt":e="enc"}if(t.use!==e){throw new TypeError(`Invalid key for this operation, its "use" must be "${e}" when present`)}}if(t.alg!==undefined&&t.alg!==e){throw new TypeError(`Invalid key for this operation, its "alg" must be "${e}" when present`)}if(Array.isArray(t.key_ops)){let n;switch(true){case r==="verify":case e==="dir":case e.includes("CBC-HS"):n=r;break;case e.startsWith("PBES2"):n="deriveBits";break;case/^A\d{3}(?:GCM)?(?:KW)?$/.test(e):n=!e.includes("GCM")&&e.endsWith("KW")?"unwrapKey":r;break;case r==="encrypt":n="wrapKey";break;case r==="decrypt":n=e.startsWith("RSA")?"unwrapKey":"deriveBits"}if(n&&t.key_ops?.includes?.(n)===false){throw new TypeError(`Invalid key for this operation, its "key_ops" must include "${n}" when present`)}}return true};var id;var od=async(e,t,r)=>{if(t instanceof Uint8Array){if(!e.startsWith("HS")){throw new TypeError(Yf("Key must be ",t,"CryptoKey","KeyObject","JSON Web Key"))}return crypto.subtle.importKey("raw",t,{hash:`SHA-${e.slice(-3)}`,name:"HMAC"},false,[r])}(function(e,t,r){switch(t){case"HS256":case"HS384":case"HS512":{if(!Gf(e.algorithm,"HMAC")){throw $f("HMAC")}const r=parseInt(t.slice(2),10);if(Wf(e.algorithm.hash)!==r){throw $f(`SHA-${r}`,"algorithm.hash")}break}case"RS256":case"RS384":case"RS512":{if(!Gf(e.algorithm,"RSASSA-PKCS1-v1_5")){throw $f("RSASSA-PKCS1-v1_5")}const r=parseInt(t.slice(2),10);if(Wf(e.algorithm.hash)!==r){throw $f(`SHA-${r}`,"algorithm.hash")}break}case"PS256":case"PS384":case"PS512":{if(!Gf(e.algorithm,"RSA-PSS")){throw $f("RSA-PSS")}const r=parseInt(t.slice(2),10);if(Wf(e.algorithm.hash)!==r){throw $f(`SHA-${r}`,"algorithm.hash")}break}case"Ed25519":case"EdDSA":if(!Gf(e.algorithm,"Ed25519")){throw $f("Ed25519")}break;case"ES256":case"ES384":case"ES512":{if(!Gf(e.algorithm,"ECDSA")){throw $f("ECDSA")}const r=function(e){switch(e){case"ES256":return"P-256";case"ES384":return"P-384";case"ES512":return"P-521";default:throw new Error("unreachable")}}(t);if(e.algorithm.namedCurve!==r){throw $f(r,"algorithm.namedCurve")}break}default:throw new TypeError("CryptoKey does not support this operation")}(function(e,t){if(!e.usages.includes(t)){throw new TypeError(`CryptoKey does not support this operation, its usages must include ${t}.`)}})(e,r)})(t,e,r);return t};async function sd(e,t,r){if(!Qf(e)){throw new Hf("Flattened JWS must be an object")}if(e.protected===undefined&&e.header===undefined){throw new Hf('Flattened JWS must have either of the "protected" or "header" members')}if(e.protected!==undefined&&typeof e.protected!="string"){throw new Hf("JWS Protected Header incorrect type")}if(e.payload===undefined){throw new Hf("JWS Payload missing")}if(typeof e.signature!="string"){throw new Hf("JWS Signature missing or incorrect type")}if(e.header!==undefined&&!Qf(e.header)){throw new Hf("JWS Unprotected Header incorrect type")}let n={};if(e.protected){try{const t=Lf(e.protected);n=JSON.parse(jf.decode(t))}catch{throw new Hf("JWS Protected Header is invalid")}}if(!((...e)=>{const t=e.filter(Boolean);if(t.length===0||t.length===1){return true}let r;for(const e of t){const t=Object.keys(e);if(r&&r.size!==0){for(const e of t){if(r.has(e)){return false}r.add(e)}}else{r=new Set(t)}}return true})(n,e.header)){throw new Hf("JWS Protected and JWS Unprotected Header Parameter names must be disjoint")}const i={...n,...e.header};const o=((e,t,r,n,i)=>{if(i.crit!==undefined&&n?.crit===undefined){throw new e('"crit" (Critical) Header Parameter MUST be integrity protected')}if(!n||n.crit===undefined){return new Set}if(!Array.isArray(n.crit)||n.crit.length===0||n.crit.some(e=>typeof e!="string"||e.length===0)){throw new e('"crit" (Critical) Header Parameter MUST be an array of non-empty strings when present')}let o;o=t;for(const t of n.crit){if(!o.has(t)){throw new Mf(`Extension Header Parameter "${t}" is not recognized`)}if(i[t]===undefined){throw new e(`Extension Header Parameter "${t}" is missing`)}if(o.get(t)&&n[t]===undefined){throw new e(`Extension Header Parameter "${t}" MUST be integrity protected`)}}return new Set(n.crit)})(Hf,new Map([["b64",true]]),0,n,i);let s=true;if(o.has("b64")&&(s=n.b64,typeof s!="boolean")){throw new Hf('The "b64" (base64url-encode payload) Header Parameter must be a boolean')}const{alg:a}=i;if(typeof a!="string"||!a){throw new Hf('JWS "alg" (Algorithm) Header Parameter missing or invalid')}if(s){if(typeof e.payload!="string"){throw new Hf("JWS Payload must be a string")}}else if(typeof e.payload!="string"&&!(e.payload instanceof Uint8Array)){throw new Hf("JWS Payload must be a string or an Uint8Array instance")}let c=false;if(typeof t=="function"){t=await t(n,e);c=true}((e,t,r)=>{if(e.startsWith("HS")||e==="dir"||e.startsWith("PBES2")||/^A(?:128|192|256)(?:GCM)?(?:KW)?$/.test(e)||/^A(?:128|192|256)CBC-HS(?:256|384|512)$/.test(e)){((e,t,r)=>{if(!(t instanceof Uint8Array)){if(Zf(t)){if(function(e){return e.kty==="oct"&&typeof e.k=="string"}(t)&&nd(e,t,r)){return}throw new TypeError('JSON Web Key for symmetric algorithms must have JWK "kty" (Key Type) equal to "oct" and the JWK "k" (Key Value) present')}if(!qf(t)){throw new TypeError(Jf(e,t,"CryptoKey","KeyObject","JSON Web Key","Uint8Array"))}if(t.type!=="secret"){throw new TypeError(`${rd(t)} instances for symmetric algorithms must be of type "secret"`)}}})(e,t,r)}else{((e,t,r)=>{if(Zf(t)){switch(r){case"decrypt":case"sign":if(function(e){return e.kty!=="oct"&&typeof e.d=="string"}(t)&&nd(e,t,r)){return}throw new TypeError("JSON Web Key for this operation be a private JWK");case"encrypt":case"verify":if(function(e){return e.kty!=="oct"&&e.d===undefined}(t)&&nd(e,t,r)){return}throw new TypeError("JSON Web Key for this operation be a public JWK")}}if(!qf(t)){throw new TypeError(Jf(e,t,"CryptoKey","KeyObject","JSON Web Key"))}if(t.type==="secret"){throw new TypeError(`${rd(t)} instances for asymmetric algorithms must not be of type "secret"`)}if(t.type==="public"){switch(r){case"sign":throw new TypeError(`${rd(t)} instances for asymmetric algorithm signing must be of type "private"`);case"decrypt":throw new TypeError(`${rd(t)} instances for asymmetric algorithm decryption must be of type "private"`)}}if(t.type==="private"){switch(r){case"verify":throw new TypeError(`${rd(t)} instances for asymmetric algorithm verifying must be of type "public"`);case"encrypt":throw new TypeError(`${rd(t)} instances for asymmetric algorithm encryption must be of type "public"`)}}})(e,t,r)}})(a,t,"verify");const l=function(...e){const t=e.reduce((e,{length:t})=>e+t,0);const r=new Uint8Array(t);let n=0;for(const t of e){r.set(t,n);n+=t.length}return r}(Vf.encode(e.protected??""),Vf.encode("."),typeof e.payload=="string"?Vf.encode(e.payload):e.payload);let u;try{u=Lf(e.signature)}catch{throw new Hf("Failed to base64url decode the signature")}const p=await(async(e,t)=>{if(e instanceof Uint8Array){return e}if(zf(e)){return e}if(Xf(e)){if(e.type==="secret"){return e.export()}if("toCryptoKey"in e&&typeof e.toCryptoKey=="function"){try{return((e,t)=>{ed||=new WeakMap;let r=ed.get(e);if(r?.[t]){return r[t]}const n=e.type==="public";const i=!!n;let o;if(e.asymmetricKeyType==="x25519"){switch(t){case"ECDH-ES":case"ECDH-ES+A128KW":case"ECDH-ES+A192KW":case"ECDH-ES+A256KW":break;default:throw new TypeError("given KeyObject instance cannot be used for this algorithm")}o=e.toCryptoKey(e.asymmetricKeyType,i,n?[]:["deriveBits"])}if(e.asymmetricKeyType==="ed25519"){if(t!=="EdDSA"&&t!=="Ed25519"){throw new TypeError("given KeyObject instance cannot be used for this algorithm")}o=e.toCryptoKey(e.asymmetricKeyType,i,[n?"verify":"sign"])}if(e.asymmetricKeyType==="rsa"){let r;switch(t){case"RSA-OAEP":r="SHA-1";break;case"RS256":case"PS256":case"RSA-OAEP-256":r="SHA-256";break;case"RS384":case"PS384":case"RSA-OAEP-384":r="SHA-384";break;case"RS512":case"PS512":case"RSA-OAEP-512":r="SHA-512";break;default:throw new TypeError("given KeyObject instance cannot be used for this algorithm")}if(t.startsWith("RSA-OAEP")){return e.toCryptoKey({name:"RSA-OAEP",hash:r},i,n?["encrypt"]:["decrypt"])}o=e.toCryptoKey({name:t.startsWith("PS")?"RSA-PSS":"RSASSA-PKCS1-v1_5",hash:r},i,[n?"verify":"sign"])}if(e.asymmetricKeyType==="ec"){const r=new Map([["prime256v1","P-256"],["secp384r1","P-384"],["secp521r1","P-521"]]).get(e.asymmetricKeyDetails?.namedCurve);if(!r){throw new TypeError("given KeyObject instance cannot be used for this algorithm")}if(t==="ES256"&&r==="P-256"){o=e.toCryptoKey({name:"ECDSA",namedCurve:r},i,[n?"verify":"sign"])}if(t==="ES384"&&r==="P-384"){o=e.toCryptoKey({name:"ECDSA",namedCurve:r},i,[n?"verify":"sign"])}if(t==="ES512"&&r==="P-521"){o=e.toCryptoKey({name:"ECDSA",namedCurve:r},i,[n?"verify":"sign"])}if(t.startsWith("ECDH-ES")){o=e.toCryptoKey({name:"ECDH",namedCurve:r},i,n?[]:["deriveBits"])}}if(!o){throw new TypeError("given KeyObject instance cannot be used for this algorithm")}if(r){r[t]=o}else{ed.set(e,{[t]:o})}return o})(e,t)}catch(e){if(e instanceof TypeError){throw e}}}let r=e.export({format:"jwk"});return td(e,r,t)}if(Zf(e)){if(e.k){return Lf(e.k)}else{return td(e,e,t,true)}}throw new Error("unreachable")})(t,a);if(!await(async(e,t,r,n)=>{const i=await od(e,t,"verify");((e,t)=>{if(e.startsWith("RS")||e.startsWith("PS")){const{modulusLength:r}=t.algorithm;if(typeof r!="number"||r<2048){throw new TypeError(`${e} requires key modulusLength to be 2048 bits or larger`)}}})(e,i);const o=((e,t)=>{const r=`SHA-${e.slice(-3)}`;switch(e){case"HS256":case"HS384":case"HS512":return{hash:r,name:"HMAC"};case"PS256":case"PS384":case"PS512":return{hash:r,name:"RSA-PSS",saltLength:parseInt(e.slice(-3),10)>>3};case"RS256":case"RS384":case"RS512":return{hash:r,name:"RSASSA-PKCS1-v1_5"};case"ES256":case"ES384":case"ES512":return{hash:r,name:"ECDSA",namedCurve:t.namedCurve};case"Ed25519":case"EdDSA":return{name:"Ed25519"};default:throw new Mf(`alg ${e} is not supported either by JOSE or your javascript runtime`)}})(e,i.algorithm);try{return await crypto.subtle.verify(o,i,r,n)}catch{return false}})(a,p,u,l)){throw new Kf}let h;if(s){try{h=Lf(e.payload)}catch{throw new Hf("Failed to base64url decode the payload")}}else{h=typeof e.payload=="string"?Vf.encode(e.payload):e.payload}const f={payload:h};if(e.protected!==undefined){f.protectedHeader=n}if(e.header!==undefined){f.unprotectedHeader=e.header}if(c){return{...f,key:p}}else{return f}}(function(e){e.InsecureContext="verify_insecure_context";e.CertificateChainEmpty="verify_certificate_chain_empty";e.CertificateChainNotTrusted="verify_certificate_chain_not_trusted";e.SignatureInvalid="verify_signature_invalid";e.PrefixMismatch="verify_prefix_mismatch";e.FormatInvalid="verify_format_invalid"})(id||={});const ad=async e=>{const t=(e=>{{return{verified:true}}})(e);if(t.verified){return(async e=>({verified:true}))(e.jws)}else{return t}};const _0x45bee1=(_0x1253b1,_0x4653b6)=>!_0x1253b1||!_0x4653b6||_0x1253b1===_0x4653b6;const _0x577a62=(_0x189836,_0x502655)=>!i(_0x502655)||_0x189836<_0x502655;var _0x2c1d30;var _0x477fec;var _0x1e6715;(function(_0x3928fb){_0x3928fb.InvalidEditorMajorVersion="validate_editor_major_version";_0x3928fb.InvalidEditorVersion="validate_editor_version";_0x3928fb.InvalidEditorUid="validate_editor_uid";_0x3928fb.InvalidPageUid="validate_page_uid";_0x3928fb.InvalidOrigin="validate_origin"})(_0x2c1d30||={});(function(_0x59eb1b){_0x59eb1b.InvalidSoftExpiration="validate_soft_expiration";_0x59eb1b.InvalidHardExpiration="validate_hard_expiration"})(_0x477fec||={});(function(_0x217f7b){_0x217f7b.InvalidPlugin="validate_plugin"})(_0x1e6715||={});const _0x536327=(_0x393fb8,_0x4dfd99)=>{const _0x49d8d6=_0x4dfd99.tinymceVersion;const _0x141442=_0x393fb8.editorMajorVersion;if(!((_0x8af806,_0x4bd9d3)=>_0x8af806!==0&&_0x4bd9d3!==0&&_0x8af806===_0x4bd9d3)(_0x49d8d6.major,_0x141442)){return{validated:false,type:_0x2c1d30.InvalidEditorMajorVersion,message:""}}if(!((_0xe6157d,_0x70ddd6,_0x392a25)=>_0x392a25.length===0&&_0x70ddd6===_0xe6157d.major||f(_0x392a25,_0x2efacb=>{const _0x261f06=_0x2efacb.versionRestriction;switch(_0x261f06.case){case"patchVersion":{const{minor:_0x1df06c,patch:_0x2d3842}=_0x261f06.value;const _0x32ce0a=O(_0x70ddd6,_0x1df06c,_0x2d3842);return B(_0xe6157d,_0x32ce0a)}case"minorVersion":{const{minor:_0x44461d}=_0x261f06.value;const _0x5dbe1a=O(_0x70ddd6,_0x44461d,0);const _0x24e08f=O(_0xe6157d.major,_0xe6157d.minor,0);return B(_0x24e08f,_0x5dbe1a)}default:return true}}))(_0x49d8d6,_0x141442,_0x393fb8.editorVersions)){return{validated:false,type:_0x2c1d30.InvalidEditorVersion,message:""}}const _0x58e113=_0x4dfd99.editorUid;const _0x28bc4a=_0x393fb8.editorUid;if(!_0x45bee1(_0x58e113,_0x28bc4a)){return{validated:false,type:_0x2c1d30.InvalidEditorUid,message:""}}const _0x568569=_0x4dfd99.pageUid;const _0x1527e4=_0x393fb8.pageUid;if(!_0x45bee1(_0x568569,_0x1527e4)){return{validated:false,type:_0x2c1d30.InvalidPageUid,message:""}}if(((_0x152574,_0x2cb87d)=>_0x2cb87d.length===0||f(_0x2cb87d,_0x35f338=>{switch(_0x35f338.matchPattern.case){case"exact":{const _0x20f36c=_0x35f338.matchPattern.value;return _0x152574===_0x20f36c}case"regexp":{const _0x3cd571=_0x35f338.matchPattern.value;return _0x2a81b9(()=>(_0x241df2=>{_0x352398=_0x241df2.split("");_0x4fc01b=(_0x2b03ae,_0x35a7fe)=>{const{result:_0x40e8c2,inClass:_0x2ea9c9,inEscape:_0x22f49f}=_0x2b03ae;if(_0x22f49f){return{result:_0x40e8c2+_0x35a7fe,inClass:_0x2ea9c9,inEscape:false}}else if(_0x35a7fe==="\\"){return{result:_0x40e8c2+_0x35a7fe,inClass:_0x2ea9c9,inEscape:true}}else if(_0x35a7fe==="["){return{result:_0x40e8c2+_0x35a7fe,inClass:true,inEscape:_0x22f49f}}else if(_0x35a7fe==="]"){return{result:_0x40e8c2+_0x35a7fe,inClass:false,inEscape:_0x22f49f}}else if(_0x35a7fe!=="."||_0x2ea9c9){return{result:_0x40e8c2+_0x35a7fe,inClass:_0x2ea9c9,inEscape:_0x22f49f}}else{return{result:_0x40e8c2+"[^\\n\\r]",inClass:_0x2ea9c9,inEscape:_0x22f49f}}};_0x27741f={result:"",inClass:false,inEscape:false};((_0x3808d8,_0x1acf80)=>{for(let _0x24fe34=0,_0x12294d=_0x3808d8.length;_0x24fe34<_0x12294d;_0x24fe34++){_0x1acf80(_0x3808d8[_0x24fe34],_0x24fe34)}})(_0x352398,(_0x3b8cd0,_0x504618)=>{_0x27741f=_0x4fc01b(_0x27741f,_0x3b8cd0)});const _0x5eae00=_0x27741f;var _0x352398;var _0x4fc01b;var _0x27741f;return new RegExp(`^(?:${_0x5eae00.result})$`,"u")})(_0x3cd571).test(_0x152574),()=>new Error("Unable to test regexp origin")).getOr(false)}default:return true}}))(_0x4dfd99.originUrl,_0x393fb8.origins)){return{validated:true}}else{return{validated:false,type:_0x2c1d30.InvalidOrigin,message:""}}};const _0x18b803=new WeakMap;const _0x291e8e=_0x5f0ff5=>{if(n(_0x5f0ff5)){return(_0x339240=_0x5f0ff5,_0x1f822c="plugin",((_0x46c16c,_0x265457)=>y.call(_0x46c16c,_0x265457))(_0x339240,_0x1f822c)?p.from(_0x339240[_0x1f822c]):p.none()).filter(_0x3c3cbb=>r(_0x3c3cbb)&&_0x3c3cbb.length>0)}else{return p.none()}var _0x339240;var _0x1f822c};const _0x299767=(_0x5745ed,_0x1354e4=true)=>`${_0x5745ed}${_0x1354e4?" Read more: https://www.tiny.cloud/docs/tinymce/latest/license-key/":""}`;const _0x2de547=(_0x31e2bf,_0x782fba)=>{const _0x1abdb2="The editor is disabled because the license key provided is invalid";A(_0x31e2bf,{console:{type:"error",message:_0x299767(`${_0x1abdb2} [${_0x782fba}].`)},editor:{type:"warning",message:`${_0x1abdb2}.`}})};const _0x10f8e0=async(_0xcb6f8e,_0x321cc6)=>(async _0x56f24e=>_0x56e779(_0x56f24e).fold(_0x110201=>Promise.resolve(v.error(_0x110201)),_0x2541f0=>ad(_0x2541f0).then(_0x51fdee=>_0x51fdee.verified||_0x51fdee.type===id.InsecureContext?v.value(_0x2541f0.payload):v.error({type:_0x51fdee.type,message:_0x51fdee.message}))))(_0x321cc6).then(_0x5b2c17=>_0x5b2c17.fold(_0x235424=>{_0x2de547(_0xcb6f8e,_0x235424.type);return p.none()},_0x2770a0=>p.some(_0x2770a0)));const _0x2e3971=(_0x5d3079,_0x13605a)=>{const _0x59017a=(_0x2b7f33=>{const _0x8930e6={currentDate:new Date}.currentDate;return{validated:true}})(_0x13605a);if(_0x59017a.validated){return"not_expired"}switch(_0x59017a.type){case _0x477fec.InvalidSoftExpiration:(_0x185106=>{const _0x2c3750="The editor will be disabled in the near future because the license key has expired.";A(_0x185106,{console:{type:"warn",message:_0x299767(_0x2c3750)},editor:{type:"warning",message:_0x2c3750}})})(_0x5d3079);return"not_expired";case _0x477fec.InvalidHardExpiration:(_0xa9dc27=>{const _0x34048a="The editor is disabled because the license key has expired and is no longer valid.";A(_0xa9dc27,{console:{type:"error",message:_0x299767(_0x34048a)},editor:{type:"warning",message:_0x34048a}})})(_0x5d3079);return"expired"}};const _0x49ca4c=(_0x369f2d,_0x53b455)=>{const _0x32e4e5={tinymceVersion:_0x2c56ee(tinymce),originUrl:window.origin,editorUid:_0x369f2d.editorUid,pageUid:_0x369f2d.editorManager.pageUid};const _0x5694a1=_0x536327(_0x53b455,_0x32e4e5);if(true){return true}switch(_0x5694a1.type){case _0x2c1d30.InvalidEditorMajorVersion:case _0x2c1d30.InvalidEditorVersion:(_0x211012=>{const _0x5df8da="The editor is disabled because the license key is not valid with this version of TinyMCE.";A(_0x211012,{console:{type:"error",message:_0x299767(_0x5df8da)},editor:{type:"warning",message:_0x5df8da}})})(_0x369f2d);break;default:_0x2de547(_0x369f2d,_0x5694a1.type)}return false};const _0x46a9be=(_0x4c03e5,_0x598e62,_0x433fcd,_0x192d9b)=>{const _0x461626={pluginCode:_0x598e62};const{validated:_0x4a1e42}=((_0xf2e34f,_0x249148)=>{const _0x536456=d(_0xf2e34f.plugins,_0xf6e815);const _0x4dd691=((_0x3d8044,_0x1a2aa6)=>{const _0xdad5ac=new Set(_0x1a2aa6);return!!_0xdad5ac.has("ALL")||_0xdad5ac.has(_0x3d8044.toUpperCase())})(_0x249148.pluginCode,_0x536456);if(true){return{validated:true}}else{return{validated:false,type:_0x1e6715.InvalidPlugin,message:""}}})(_0x433fcd,_0x461626);if(!_0x4a1e42){((_0xff3731,_0x43ff02,_0x35a532)=>{A(_0xff3731,{console:{type:"error",message:_0x299767(`The "${_0x43ff02}" plugin requires a valid TinyMCE license key.`)},..._0x35a532?{}:{editor:{type:"warning",message:"One or more premium plugins are disabled due to license key restrictions."}}})})(_0x4c03e5,_0x598e62,_0x192d9b.get());_0x192d9b.set(true)}return _0x4a1e42};if(((_0xfa0676,_0x10d0d3)=>_0x3040cd(_0xfa0676,_0x3c7e1e)?(console.error(`The "${_0x10d0d3}" plugin requires at least version ${_0x3c7e1e} of TinyMCE.`),false):!!_0x3040cd(_0xfa0676,_0x4736ec)||(console.error(`The "${_0x10d0d3}" plugin requires at least version ${_0x3c7e1e} of TinyMCE but less than ${_0x4736ec}.`),false))(tinymce,"licensekeymanager")){tinymce.Resource.add("licensekeymanager.6nle0b3ulk",_0x56d10a=>{const _0x4714f2=E(_0x10f8e0);const _0x96b4f6=E(_0x49ca4c);const _0x1d50a6=E(_0x2e3971);const _0x578f82=(()=>{let _0x298390=false;return{get:()=>_0x298390,set:_0x124d64=>{_0x298390=_0x124d64}}})();return{validate:async(_0x2611e1,_0x12b763)=>_0x4714f2(_0x56d10a,_0x2611e1).then(_0x46ffcf=>_0x46ffcf.bind(_0x3503ad=>{const _0x5f00bd=_0x1d50a6(_0x56d10a,_0x3503ad);return b(_0x5f00bd!=="expired",_0x3503ad)}).bind(_0x44d23c=>{const _0x5c073d=_0x96b4f6(_0x56d10a,_0x44d23c);return b(_0x5c073d,_0x44d23c)}).fold(()=>(_0xaa1c02=>{(_0x4fa474=>{if(!_0x18b803.has(_0x4fa474)){_0x18b803.set(_0x4fa474,true);if(_0x4fa474.initialized){if(!_0x4fa474.removed){_0x4fa474.mode.set("readonly")}_0x4fa474.options.set("disabled",true)}else{_0x4fa474.on("init",()=>{if(!_0x4fa474.removed){_0x4fa474.mode.set("readonly")}_0x4fa474.options.set("disabled",true)})}_0x4fa474.on("DisabledStateChange",_0xf94b39=>{const{state:_0x5d2403}=_0xf94b39;if(!_0x5d2403){_0xf94b39.preventDefault()}},true);_0x4fa474.on("SwitchMode",_0x533b20=>{const{mode:_0x49baa9}=_0x533b20;if(_0x49baa9!=="readonly"){_0x4fa474.mode.set("readonly")}})}})(_0xaa1c02);return false})(_0x56d10a),_0x8471a4=>_0x291e8e(_0x12b763).forall(_0x3d2440=>_0x46a9be(_0x56d10a,_0x3d2440,_0x8471a4,_0x578f82))))}})}})(); |