@nocobase/plugin-block-workbench 1.4.0-beta.1 → 1.4.0-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/client/index.js +54 -1
- package/dist/externalVersion.js +3 -3
- package/package.json +2 -2
package/dist/client/index.js
CHANGED
|
@@ -7,4 +7,57 @@
|
|
|
7
7
|
* For more information, please refer to: https://www.nocobase.com/agreement.
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
|
-
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("@nocobase/client"),require("@ant-design/icons"),require("@formily/react"),require("react"),require("react-i18next"),require("@emotion/css"),require("@nocobase/utils/client"),require("antd"),require("antd-style"),require("react-router-dom")):"function"==typeof define&&define.amd?define("@nocobase/plugin-block-workbench",["@nocobase/client","@ant-design/icons","@formily/react","react","react-i18next","@emotion/css","@nocobase/utils/client","antd","antd-style","react-router-dom"],t):"object"==typeof exports?exports["@nocobase/plugin-block-workbench"]=t(require("@nocobase/client"),require("@ant-design/icons"),require("@formily/react"),require("react"),require("react-i18next"),require("@emotion/css"),require("@nocobase/utils/client"),require("antd"),require("antd-style"),require("react-router-dom")):e["@nocobase/plugin-block-workbench"]=t(e["@nocobase/client"],e["@ant-design/icons"],e["@formily/react"],e.react,e["react-i18next"],e["@emotion/css"],e["@nocobase/utils/client"],e.antd,e["antd-style"],e["react-router-dom"])}(self,function(e,t,r,n,i,o,a,s,l,c){return function(){var u={103:function(e,t,r){var n;n=0,function(e){"use strict";let t;function n(e){return null==e}var i,o,a,s,l,c,u,h,d,f,g,p,m,w,A,C,E,I,S,y,_,T,N=Object.setPrototypeOf||({__proto__:[]})instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])},M=function(e){function t(t){var r,n,i,o,a,s,l=this.constructor,c=e.call(this,t)||this;return Object.defineProperty(c,"name",{value:l.name,enumerable:!1}),r=c,n=l.prototype,(i=Object.setPrototypeOf)?i(r,n):r.__proto__=n,o=c,void 0===a&&(a=o.constructor),(s=Error.captureStackTrace)&&s(o,a),c}return!function(e,t){function r(){this.constructor=e}N(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}(t,e),t}(Error);class b extends M{constructor(e){super(e),this.message=e}getKind(){return this.constructor.kind}}b.kind="Exception";class D extends b{}D.kind="ArgumentException";class R extends b{}R.kind="IllegalArgumentException";class O{constructor(e){if(this.binarizer=e,null===e)throw new R("Binarizer must be non-null.")}getWidth(){return this.binarizer.getWidth()}getHeight(){return this.binarizer.getHeight()}getBlackRow(e,t){return this.binarizer.getBlackRow(e,t)}getBlackMatrix(){return(null===this.matrix||void 0===this.matrix)&&(this.matrix=this.binarizer.getBlackMatrix()),this.matrix}isCropSupported(){return this.binarizer.getLuminanceSource().isCropSupported()}crop(e,t,r,n){let i=this.binarizer.getLuminanceSource().crop(e,t,r,n);return new O(this.binarizer.createBinarizer(i))}isRotateSupported(){return this.binarizer.getLuminanceSource().isRotateSupported()}rotateCounterClockwise(){let e=this.binarizer.getLuminanceSource().rotateCounterClockwise();return new O(this.binarizer.createBinarizer(e))}rotateCounterClockwise45(){let e=this.binarizer.getLuminanceSource().rotateCounterClockwise45();return new O(this.binarizer.createBinarizer(e))}toString(){try{return this.getBlackMatrix().toString()}catch(e){return""}}}class v extends b{static getChecksumInstance(){return new v}}v.kind="ChecksumException";class B{constructor(e){this.source=e}getLuminanceSource(){return this.source}getWidth(){return this.source.getWidth()}getHeight(){return this.source.getHeight()}}class P{static arraycopy(e,t,r,n,i){for(;i--;)r[n++]=e[t++]}static currentTimeMillis(){return Date.now()}}class L extends b{}L.kind="IndexOutOfBoundsException";class x extends L{constructor(e,t){super(t),this.index=e,this.message=t}}x.kind="ArrayIndexOutOfBoundsException";class F{static fill(e,t){for(let r=0,n=e.length;r<n;r++)e[r]=t}static fillWithin(e,t,r,n){F.rangeCheck(e.length,t,r);for(let i=t;i<r;i++)e[i]=n}static rangeCheck(e,t,r){if(t>r)throw new R("fromIndex("+t+") > toIndex("+r+")");if(t<0)throw new x(t);if(r>e)throw new x(r)}static asList(...e){return e}static create(e,t,r){return Array.from({length:e}).map(e=>Array.from({length:t}).fill(r))}static createInt32Array(e,t,r){return Array.from({length:e}).map(e=>Int32Array.from({length:t}).fill(r))}static equals(e,t){if(!e||!t||!e.length||!t.length||e.length!==t.length)return!1;for(let r=0,n=e.length;r<n;r++)if(e[r]!==t[r])return!1;return!0}static hashCode(e){if(null===e)return 0;let t=1;for(let r of e)t=31*t+r;return t}static fillUint8Array(e,t){for(let r=0;r!==e.length;r++)e[r]=t}static copyOf(e,t){return e.slice(0,t)}static copyOfUint8Array(e,t){if(e.length<=t){let r=new Uint8Array(t);return r.set(e),r}return e.slice(0,t)}static copyOfRange(e,t,r){let n=r-t,i=new Int32Array(n);return P.arraycopy(e,t,i,0,n),i}static binarySearch(e,t,r){void 0===r&&(r=F.numberComparator);let n=0,i=e.length-1;for(;n<=i;){let o=i+n>>1,a=r(t,e[o]);if(a>0)n=o+1;else{if(!(a<0))return o;i=o-1}}return-n-1}static numberComparator(e,t){return e-t}}class k{static numberOfTrailingZeros(e){let t;if(0===e)return 32;let r=31;return 0!=(t=e<<16)&&(r-=16,e=t),0!=(t=e<<8)&&(r-=8,e=t),0!=(t=e<<4)&&(r-=4,e=t),0!=(t=e<<2)&&(r-=2,e=t),r-(e<<1>>>31)}static numberOfLeadingZeros(e){if(0===e)return 32;let t=1;return e>>>16==0&&(t+=16,e<<=16),e>>>24==0&&(t+=8,e<<=8),e>>>28==0&&(t+=4,e<<=4),e>>>30==0&&(t+=2,e<<=2),t-=e>>>31}static toHexString(e){return e.toString(16)}static toBinaryString(e){return String(parseInt(String(e),2))}static bitCount(e){return e-=e>>>1&0x55555555,e=(e=(0x33333333&e)+(e>>>2&0x33333333))+(e>>>4)&0xf0f0f0f,e+=e>>>8,63&(e+=e>>>16)}static truncDivision(e,t){return Math.trunc(e/t)}static parseInt(e,t){return parseInt(e,t)}}k.MIN_VALUE_32_BITS=-0x80000000,k.MAX_VALUE=Number.MAX_SAFE_INTEGER;class U{constructor(e,t){void 0===e?(this.size=0,this.bits=new Int32Array(1)):(this.size=e,null==t?this.bits=U.makeArray(e):this.bits=t)}getSize(){return this.size}getSizeInBytes(){return Math.floor((this.size+7)/8)}ensureCapacity(e){if(e>32*this.bits.length){let t=U.makeArray(e);P.arraycopy(this.bits,0,t,0,this.bits.length),this.bits=t}}get(e){return(this.bits[Math.floor(e/32)]&1<<(31&e))!=0}set(e){this.bits[Math.floor(e/32)]|=1<<(31&e)}flip(e){this.bits[Math.floor(e/32)]^=1<<(31&e)}getNextSet(e){let t=this.size;if(e>=t)return t;let r=this.bits,n=Math.floor(e/32),i=r[n];i&=~((1<<(31&e))-1);let o=r.length;for(;0===i;){if(++n===o)return t;i=r[n]}let a=32*n+k.numberOfTrailingZeros(i);return a>t?t:a}getNextUnset(e){let t=this.size;if(e>=t)return t;let r=this.bits,n=Math.floor(e/32),i=~r[n];i&=~((1<<(31&e))-1);let o=r.length;for(;0===i;){if(++n===o)return t;i=~r[n]}let a=32*n+k.numberOfTrailingZeros(i);return a>t?t:a}setBulk(e,t){this.bits[Math.floor(e/32)]=t}setRange(e,t){if(t<e||e<0||t>this.size)throw new R;if(t===e)return;let r=Math.floor(e/32),n=Math.floor(--t/32),i=this.bits;for(let o=r;o<=n;o++){let a=o>r?0:31&e,s=(2<<(o<n?31:31&t))-(1<<a);i[o]|=s}}clear(){let e=this.bits.length,t=this.bits;for(let r=0;r<e;r++)t[r]=0}isRange(e,t,r){if(t<e||e<0||t>this.size)throw new R;if(t===e)return!0;let n=Math.floor(e/32),i=Math.floor(--t/32),o=this.bits;for(let a=n;a<=i;a++){let s=a>n?0:31&e,l=(2<<(a<i?31:31&t))-(1<<s)&0xffffffff;if((o[a]&l)!==(r?l:0))return!1}return!0}appendBit(e){this.ensureCapacity(this.size+1),e&&(this.bits[Math.floor(this.size/32)]|=1<<(31&this.size)),this.size++}appendBits(e,t){if(t<0||t>32)throw new R("Num bits must be between 0 and 32");this.ensureCapacity(this.size+t);for(let r=t;r>0;r--)this.appendBit((e>>r-1&1)==1)}appendBitArray(e){let t=e.size;this.ensureCapacity(this.size+t);for(let r=0;r<t;r++)this.appendBit(e.get(r))}xor(e){if(this.size!==e.size)throw new R("Sizes don't match");let t=this.bits;for(let r=0,n=t.length;r<n;r++)t[r]^=e.bits[r]}toBytes(e,t,r,n){for(let i=0;i<n;i++){let n=0;for(let t=0;t<8;t++)this.get(e)&&(n|=1<<7-t),e++;t[r+i]=n}}getBitArray(){return this.bits}reverse(){let e=new Int32Array(this.bits.length),t=Math.floor((this.size-1)/32),r=t+1,n=this.bits;for(let i=0;i<r;i++){let r=n[i];r=(r=(r=(r=(r=r>>1&0x55555555|(0x55555555&r)<<1)>>2&0x33333333|(0x33333333&r)<<2)>>4&0xf0f0f0f|(0xf0f0f0f&r)<<4)>>8&0xff00ff|(0xff00ff&r)<<8)>>16&65535|(65535&r)<<16,e[t-i]=r}if(this.size!==32*r){let t=32*r-this.size,n=e[0]>>>t;for(let i=1;i<r;i++){let r=e[i];n|=r<<32-t,e[i-1]=n,n=r>>>t}e[r-1]=n}this.bits=e}static makeArray(e){return new Int32Array(Math.floor((e+31)/32))}equals(e){return e instanceof U&&this.size===e.size&&F.equals(this.bits,e.bits)}hashCode(){return 31*this.size+F.hashCode(this.bits)}toString(){let e="";for(let t=0,r=this.size;t<r;t++)(7&t)==0&&(e+=" "),e+=this.get(t)?"X":".";return e}clone(){return new U(this.size,this.bits.slice())}}(i=p||(p={}))[i.OTHER=0]="OTHER",i[i.PURE_BARCODE=1]="PURE_BARCODE",i[i.POSSIBLE_FORMATS=2]="POSSIBLE_FORMATS",i[i.TRY_HARDER=3]="TRY_HARDER",i[i.CHARACTER_SET=4]="CHARACTER_SET",i[i.ALLOWED_LENGTHS=5]="ALLOWED_LENGTHS",i[i.ASSUME_CODE_39_CHECK_DIGIT=6]="ASSUME_CODE_39_CHECK_DIGIT",i[i.ASSUME_GS1=7]="ASSUME_GS1",i[i.RETURN_CODABAR_START_END=8]="RETURN_CODABAR_START_END",i[i.NEED_RESULT_POINT_CALLBACK=9]="NEED_RESULT_POINT_CALLBACK",i[i.ALLOWED_EAN_EXTENSIONS=10]="ALLOWED_EAN_EXTENSIONS";var H=p;class z extends b{static getFormatInstance(){return new z}}z.kind="FormatException",(o=m||(m={}))[o.Cp437=0]="Cp437",o[o.ISO8859_1=1]="ISO8859_1",o[o.ISO8859_2=2]="ISO8859_2",o[o.ISO8859_3=3]="ISO8859_3",o[o.ISO8859_4=4]="ISO8859_4",o[o.ISO8859_5=5]="ISO8859_5",o[o.ISO8859_6=6]="ISO8859_6",o[o.ISO8859_7=7]="ISO8859_7",o[o.ISO8859_8=8]="ISO8859_8",o[o.ISO8859_9=9]="ISO8859_9",o[o.ISO8859_10=10]="ISO8859_10",o[o.ISO8859_11=11]="ISO8859_11",o[o.ISO8859_13=12]="ISO8859_13",o[o.ISO8859_14=13]="ISO8859_14",o[o.ISO8859_15=14]="ISO8859_15",o[o.ISO8859_16=15]="ISO8859_16",o[o.SJIS=16]="SJIS",o[o.Cp1250=17]="Cp1250",o[o.Cp1251=18]="Cp1251",o[o.Cp1252=19]="Cp1252",o[o.Cp1256=20]="Cp1256",o[o.UnicodeBigUnmarked=21]="UnicodeBigUnmarked",o[o.UTF8=22]="UTF8",o[o.ASCII=23]="ASCII",o[o.Big5=24]="Big5",o[o.GB18030=25]="GB18030",o[o.EUC_KR=26]="EUC_KR";class V{constructor(e,t,r,...n){this.valueIdentifier=e,this.name=r,"number"==typeof t?this.values=Int32Array.from([t]):this.values=t,this.otherEncodingNames=n,V.VALUE_IDENTIFIER_TO_ECI.set(e,this),V.NAME_TO_ECI.set(r,this);let i=this.values;for(let e=0,t=i.length;e!==t;e++){let t=i[e];V.VALUES_TO_ECI.set(t,this)}for(let e of n)V.NAME_TO_ECI.set(e,this)}getValueIdentifier(){return this.valueIdentifier}getName(){return this.name}getValue(){return this.values[0]}static getCharacterSetECIByValue(e){if(e<0||e>=900)throw new z("incorect value");let t=V.VALUES_TO_ECI.get(e);if(void 0===t)throw new z("incorect value");return t}static getCharacterSetECIByName(e){let t=V.NAME_TO_ECI.get(e);if(void 0===t)throw new z("incorect value");return t}equals(e){return e instanceof V&&this.getName()===e.getName()}}V.VALUE_IDENTIFIER_TO_ECI=new Map,V.VALUES_TO_ECI=new Map,V.NAME_TO_ECI=new Map,V.Cp437=new V(m.Cp437,Int32Array.from([0,2]),"Cp437"),V.ISO8859_1=new V(m.ISO8859_1,Int32Array.from([1,3]),"ISO-8859-1","ISO88591","ISO8859_1"),V.ISO8859_2=new V(m.ISO8859_2,4,"ISO-8859-2","ISO88592","ISO8859_2"),V.ISO8859_3=new V(m.ISO8859_3,5,"ISO-8859-3","ISO88593","ISO8859_3"),V.ISO8859_4=new V(m.ISO8859_4,6,"ISO-8859-4","ISO88594","ISO8859_4"),V.ISO8859_5=new V(m.ISO8859_5,7,"ISO-8859-5","ISO88595","ISO8859_5"),V.ISO8859_6=new V(m.ISO8859_6,8,"ISO-8859-6","ISO88596","ISO8859_6"),V.ISO8859_7=new V(m.ISO8859_7,9,"ISO-8859-7","ISO88597","ISO8859_7"),V.ISO8859_8=new V(m.ISO8859_8,10,"ISO-8859-8","ISO88598","ISO8859_8"),V.ISO8859_9=new V(m.ISO8859_9,11,"ISO-8859-9","ISO88599","ISO8859_9"),V.ISO8859_10=new V(m.ISO8859_10,12,"ISO-8859-10","ISO885910","ISO8859_10"),V.ISO8859_11=new V(m.ISO8859_11,13,"ISO-8859-11","ISO885911","ISO8859_11"),V.ISO8859_13=new V(m.ISO8859_13,15,"ISO-8859-13","ISO885913","ISO8859_13"),V.ISO8859_14=new V(m.ISO8859_14,16,"ISO-8859-14","ISO885914","ISO8859_14"),V.ISO8859_15=new V(m.ISO8859_15,17,"ISO-8859-15","ISO885915","ISO8859_15"),V.ISO8859_16=new V(m.ISO8859_16,18,"ISO-8859-16","ISO885916","ISO8859_16"),V.SJIS=new V(m.SJIS,20,"SJIS","Shift_JIS"),V.Cp1250=new V(m.Cp1250,21,"Cp1250","windows-1250"),V.Cp1251=new V(m.Cp1251,22,"Cp1251","windows-1251"),V.Cp1252=new V(m.Cp1252,23,"Cp1252","windows-1252"),V.Cp1256=new V(m.Cp1256,24,"Cp1256","windows-1256"),V.UnicodeBigUnmarked=new V(m.UnicodeBigUnmarked,25,"UnicodeBigUnmarked","UTF-16BE","UnicodeBig"),V.UTF8=new V(m.UTF8,26,"UTF8","UTF-8"),V.ASCII=new V(m.ASCII,Int32Array.from([27,170]),"ASCII","US-ASCII"),V.Big5=new V(m.Big5,28,"Big5"),V.GB18030=new V(m.GB18030,29,"GB18030","GB2312","EUC_CN","GBK"),V.EUC_KR=new V(m.EUC_KR,30,"EUC_KR","EUC-KR");class j extends b{}j.kind="UnsupportedOperationException";class G{static decode(e,t){let r=this.encodingName(t);return this.customDecoder?this.customDecoder(e,r):"undefined"==typeof TextDecoder||this.shouldDecodeOnFallback(r)?this.decodeFallback(e,r):new TextDecoder(r).decode(e)}static shouldDecodeOnFallback(e){return!G.isBrowser()&&"ISO-8859-1"===e}static encode(e,t){let r=this.encodingName(t);return this.customEncoder?this.customEncoder(e,r):"undefined"==typeof TextEncoder?this.encodeFallback(e):new TextEncoder().encode(e)}static isBrowser(){return"undefined"!=typeof window&&"[object Window]"===({}).toString.call(window)}static encodingName(e){return"string"==typeof e?e:e.getName()}static encodingCharacterSet(e){return e instanceof V?e:V.getCharacterSetECIByName(e)}static decodeFallback(e,t){let r=this.encodingCharacterSet(t);if(G.isDecodeFallbackSupported(r)){let t="";for(let r=0,n=e.length;r<n;r++){let n=e[r].toString(16);n.length<2&&(n="0"+n),t+="%"+n}return decodeURIComponent(t)}if(r.equals(V.UnicodeBigUnmarked))return String.fromCharCode.apply(null,new Uint16Array(e.buffer));throw new j(`Encoding ${this.encodingName(t)} not supported by fallback.`)}static isDecodeFallbackSupported(e){return e.equals(V.UTF8)||e.equals(V.ISO8859_1)||e.equals(V.ASCII)}static encodeFallback(e){let t=btoa(unescape(encodeURIComponent(e))).split(""),r=[];for(let e=0;e<t.length;e++)r.push(t[e].charCodeAt(0));return new Uint8Array(r)}}class W{static castAsNonUtf8Char(e,t=null){let r=t?t.getName():this.ISO88591;return G.decode(new Uint8Array([e]),r)}static guessEncoding(e,t){if(null!=t&&void 0!==t.get(H.CHARACTER_SET))return t.get(H.CHARACTER_SET).toString();let r=e.length,n=!0,i=!0,o=!0,a=0,s=0,l=0,c=0,u=0,h=0,d=0,f=0,g=0,p=0,m=0,w=e.length>3&&239===e[0]&&187===e[1]&&191===e[2];for(let t=0;t<r&&(n||i||o);t++){let r=255&e[t];o&&(a>0?(128&r)==0?o=!1:a--:(128&r)!=0&&((64&r)==0?o=!1:(a++,(32&r)==0?s++:(a++,(16&r)==0?l++:(a++,(8&r)==0?c++:o=!1))))),n&&(r>127&&r<160?n=!1:r>159&&(r<192||215===r||247===r)&&m++),i&&(u>0?r<64||127===r||r>252?i=!1:u--:128===r||160===r||r>239?i=!1:r>160&&r<224?(h++,f=0,++d>g&&(g=d)):r>127?(u++,d=0,++f>p&&(p=f)):(d=0,f=0))}return(o&&a>0&&(o=!1),i&&u>0&&(i=!1),o&&(w||s+l+c>0))?W.UTF8:i&&(W.ASSUME_SHIFT_JIS||g>=3||p>=3)?W.SHIFT_JIS:n&&i?2===g&&2===h||10*m>=r?W.SHIFT_JIS:W.ISO88591:n?W.ISO88591:i?W.SHIFT_JIS:o?W.UTF8:W.PLATFORM_DEFAULT_ENCODING}static format(e,...t){let r=-1;return e.replace(/%(-)?(0?[0-9]+)?([.][0-9]+)?([#][0-9]+)?([scfpexd%])/g,function(e,n,i,o,a,s){let l;if("%%"===e)return"%";if(void 0===t[++r])return;e=o?parseInt(o.substr(1)):void 0;let c=a?parseInt(a.substr(1)):void 0;switch(s){case"s":l=t[r];break;case"c":l=t[r][0];break;case"f":l=parseFloat(t[r]).toFixed(e);break;case"p":l=parseFloat(t[r]).toPrecision(e);break;case"e":l=parseFloat(t[r]).toExponential(e);break;case"x":l=parseInt(t[r]).toString(c||16);break;case"d":l=parseFloat(parseInt(t[r],c||10).toPrecision(e)).toFixed(0)}l="object"==typeof l?JSON.stringify(l):(+l).toString(c);let u=parseInt(i),h=i&&i[0]+""=="0"?"0":" ";for(;l.length<u;)l=void 0!==n?l+h:h+l;return l})}static getBytes(e,t){return G.encode(e,t)}static getCharCode(e,t=0){return e.charCodeAt(t)}static getCharAt(e){return String.fromCharCode(e)}}W.SHIFT_JIS=V.SJIS.getName(),W.GB2312="GB2312",W.ISO88591=V.ISO8859_1.getName(),W.EUC_JP="EUC_JP",W.UTF8=V.UTF8.getName(),W.PLATFORM_DEFAULT_ENCODING=W.UTF8,W.ASSUME_SHIFT_JIS=!1;class Y{constructor(e=""){this.value=e}enableDecoding(e){return this.encoding=e,this}append(e){return"string"==typeof e?this.value+=e.toString():this.encoding?this.value+=W.castAsNonUtf8Char(e,this.encoding):this.value+=String.fromCharCode(e),this}appendChars(e,t,r){for(let n=t;t<t+r;n++)this.append(e[n]);return this}length(){return this.value.length}charAt(e){return this.value.charAt(e)}deleteCharAt(e){this.value=this.value.substr(0,e)+this.value.substring(e+1)}setCharAt(e,t){this.value=this.value.substr(0,e)+t+this.value.substr(e+1)}substring(e,t){return this.value.substring(e,t)}setLengthToZero(){this.value=""}toString(){return this.value}insert(e,t){this.value=this.value.substr(0,e)+t+this.value.substr(e+t.length)}}class X{constructor(e,t,r,n){if(this.width=e,this.height=t,this.rowSize=r,this.bits=n,null==t&&(t=e),this.height=t,e<1||t<1)throw new R("Both dimensions must be greater than 0");null==r&&(r=Math.floor((e+31)/32)),this.rowSize=r,null==n&&(this.bits=new Int32Array(this.rowSize*this.height))}static parseFromBooleanArray(e){let t=e.length,r=e[0].length,n=new X(r,t);for(let i=0;i<t;i++){let t=e[i];for(let e=0;e<r;e++)t[e]&&n.set(e,i)}return n}static parseFromString(e,t,r){if(null===e)throw new R("stringRepresentation cannot be null");let n=Array(e.length),i=0,o=0,a=-1,s=0,l=0;for(;l<e.length;)if("\n"===e.charAt(l)||"\r"===e.charAt(l)){if(i>o){if(-1===a)a=i-o;else if(i-o!==a)throw new R("row lengths do not match");o=i,s++}l++}else if(e.substring(l,l+t.length)===t)l+=t.length,n[i]=!0,i++;else if(e.substring(l,l+r.length)===r)l+=r.length,n[i]=!1,i++;else throw new R("illegal character encountered: "+e.substring(l));if(i>o){if(-1===a)a=i-o;else if(i-o!==a)throw new R("row lengths do not match");s++}let c=new X(a,s);for(let e=0;e<i;e++)n[e]&&c.set(Math.floor(e%a),Math.floor(e/a));return c}get(e,t){let r=t*this.rowSize+Math.floor(e/32);return(this.bits[r]>>>(31&e)&1)!=0}set(e,t){let r=t*this.rowSize+Math.floor(e/32);this.bits[r]|=1<<(31&e)&0xffffffff}unset(e,t){let r=t*this.rowSize+Math.floor(e/32);this.bits[r]&=~(1<<(31&e)&0xffffffff)}flip(e,t){let r=t*this.rowSize+Math.floor(e/32);this.bits[r]^=1<<(31&e)&0xffffffff}xor(e){if(this.width!==e.getWidth()||this.height!==e.getHeight()||this.rowSize!==e.getRowSize())throw new R("input matrix dimensions do not match");let t=new U(Math.floor(this.width/32)+1),r=this.rowSize,n=this.bits;for(let i=0,o=this.height;i<o;i++){let o=i*r,a=e.getRow(i,t).getBitArray();for(let e=0;e<r;e++)n[o+e]^=a[e]}}clear(){let e=this.bits,t=e.length;for(let r=0;r<t;r++)e[r]=0}setRegion(e,t,r,n){if(t<0||e<0)throw new R("Left and top must be nonnegative");if(n<1||r<1)throw new R("Height and width must be at least 1");let i=e+r,o=t+n;if(o>this.height||i>this.width)throw new R("The region must fit inside the matrix");let a=this.rowSize,s=this.bits;for(let r=t;r<o;r++){let t=r*a;for(let r=e;r<i;r++)s[t+Math.floor(r/32)]|=1<<(31&r)&0xffffffff}}getRow(e,t){null==t||t.getSize()<this.width?t=new U(this.width):t.clear();let r=this.rowSize,n=this.bits,i=e*r;for(let e=0;e<r;e++)t.setBulk(32*e,n[i+e]);return t}setRow(e,t){P.arraycopy(t.getBitArray(),0,this.bits,e*this.rowSize,this.rowSize)}rotate180(){let e=this.getWidth(),t=this.getHeight(),r=new U(e),n=new U(e);for(let e=0,i=Math.floor((t+1)/2);e<i;e++)r=this.getRow(e,r),n=this.getRow(t-1-e,n),r.reverse(),n.reverse(),this.setRow(e,n),this.setRow(t-1-e,r)}getEnclosingRectangle(){let e=this.width,t=this.height,r=this.rowSize,n=this.bits,i=e,o=t,a=-1,s=-1;for(let e=0;e<t;e++)for(let t=0;t<r;t++){let l=n[e*r+t];if(0!==l){if(e<o&&(o=e),e>s&&(s=e),32*t<i){let e=0;for(;(l<<31-e&0xffffffff)==0;)e++;32*t+e<i&&(i=32*t+e)}if(32*t+31>a){let e=31;for(;l>>>e==0;)e--;32*t+e>a&&(a=32*t+e)}}}return a<i||s<o?null:Int32Array.from([i,o,a-i+1,s-o+1])}getTopLeftOnBit(){let e=this.rowSize,t=this.bits,r=0;for(;r<t.length&&0===t[r];)r++;if(r===t.length)return null;let n=r/e,i=r%e*32,o=t[r],a=0;for(;(o<<31-a&0xffffffff)==0;)a++;return i+=a,Int32Array.from([i,n])}getBottomRightOnBit(){let e=this.rowSize,t=this.bits,r=t.length-1;for(;r>=0&&0===t[r];)r--;if(r<0)return null;let n=Math.floor(r/e),i=32*Math.floor(r%e),o=t[r],a=31;for(;o>>>a==0;)a--;return i+=a,Int32Array.from([i,n])}getWidth(){return this.width}getHeight(){return this.height}getRowSize(){return this.rowSize}equals(e){return e instanceof X&&this.width===e.width&&this.height===e.height&&this.rowSize===e.rowSize&&F.equals(this.bits,e.bits)}hashCode(){let e=this.width;return e=31*(e=31*(e=31*(e=31*e+this.width)+this.height)+this.rowSize)+F.hashCode(this.bits)}toString(e="X ",t=" ",r="\n"){return this.buildToString(e,t,r)}buildToString(e,t,r){let n=new Y;for(let i=0,o=this.height;i<o;i++){for(let r=0,o=this.width;r<o;r++)n.append(this.get(r,i)?e:t);n.append(r)}return n.toString()}clone(){return new X(this.width,this.height,this.rowSize,this.bits.slice())}}class Z extends b{static getNotFoundInstance(){return new Z}}Z.kind="NotFoundException";class Q extends B{constructor(e){super(e),this.luminances=Q.EMPTY,this.buckets=new Int32Array(Q.LUMINANCE_BUCKETS)}getBlackRow(e,t){let r=this.getLuminanceSource(),n=r.getWidth();null==t||t.getSize()<n?t=new U(n):t.clear(),this.initArrays(n);let i=r.getRow(e,this.luminances),o=this.buckets;for(let e=0;e<n;e++)o[(255&i[e])>>Q.LUMINANCE_SHIFT]++;let a=Q.estimateBlackPoint(o);if(n<3)for(let e=0;e<n;e++)(255&i[e])<a&&t.set(e);else{let e=255&i[0],r=255&i[1];for(let o=1;o<n-1;o++){let n=255&i[o+1];(4*r-e-n)/2<a&&t.set(o),e=r,r=n}}return t}getBlackMatrix(){let e=this.getLuminanceSource(),t=e.getWidth(),r=e.getHeight(),n=new X(t,r);this.initArrays(t);let i=this.buckets;for(let n=1;n<5;n++){let o=Math.floor(r*n/5),a=e.getRow(o,this.luminances),s=Math.floor(4*t/5);for(let e=Math.floor(t/5);e<s;e++){let t=255&a[e];i[t>>Q.LUMINANCE_SHIFT]++}}let o=Q.estimateBlackPoint(i),a=e.getMatrix();for(let e=0;e<r;e++){let r=e*t;for(let i=0;i<t;i++)(255&a[r+i])<o&&n.set(i,e)}return n}createBinarizer(e){return new Q(e)}initArrays(e){this.luminances.length<e&&(this.luminances=new Uint8ClampedArray(e));let t=this.buckets;for(let e=0;e<Q.LUMINANCE_BUCKETS;e++)t[e]=0}static estimateBlackPoint(e){let t=e.length,r=0,n=0,i=0;for(let o=0;o<t;o++)e[o]>i&&(n=o,i=e[o]),e[o]>r&&(r=e[o]);let o=0,a=0;for(let r=0;r<t;r++){let t=r-n,i=e[r]*t*t;i>a&&(o=r,a=i)}if(n>o){let e=n;n=o,o=e}if(o-n<=t/16)throw new Z;let s=o-1,l=-1;for(let t=o-1;t>n;t--){let i=t-n,a=i*i*(o-t)*(r-e[t]);a>l&&(s=t,l=a)}return s<<Q.LUMINANCE_SHIFT}}Q.LUMINANCE_BITS=5,Q.LUMINANCE_SHIFT=8-Q.LUMINANCE_BITS,Q.LUMINANCE_BUCKETS=1<<Q.LUMINANCE_BITS,Q.EMPTY=Uint8ClampedArray.from([0]);class q extends Q{constructor(e){super(e),this.matrix=null}getBlackMatrix(){if(null!==this.matrix)return this.matrix;let e=this.getLuminanceSource(),t=e.getWidth(),r=e.getHeight();if(t>=q.MINIMUM_DIMENSION&&r>=q.MINIMUM_DIMENSION){let n=e.getMatrix(),i=t>>q.BLOCK_SIZE_POWER;(t&q.BLOCK_SIZE_MASK)!=0&&i++;let o=r>>q.BLOCK_SIZE_POWER;(r&q.BLOCK_SIZE_MASK)!=0&&o++;let a=q.calculateBlackPoints(n,i,o,t,r),s=new X(t,r);q.calculateThresholdForBlock(n,i,o,t,r,a,s),this.matrix=s}else this.matrix=super.getBlackMatrix();return this.matrix}createBinarizer(e){return new q(e)}static calculateThresholdForBlock(e,t,r,n,i,o,a){let s=i-q.BLOCK_SIZE,l=n-q.BLOCK_SIZE;for(let i=0;i<r;i++){let c=i<<q.BLOCK_SIZE_POWER;c>s&&(c=s);let u=q.cap(i,2,r-3);for(let r=0;r<t;r++){let i=r<<q.BLOCK_SIZE_POWER;i>l&&(i=l);let s=q.cap(r,2,t-3),h=0;for(let e=-2;e<=2;e++){let t=o[u+e];h+=t[s-2]+t[s-1]+t[s]+t[s+1]+t[s+2]}let d=h/25;q.thresholdBlock(e,i,c,d,n,a)}}}static cap(e,t,r){return e<t?t:e>r?r:e}static thresholdBlock(e,t,r,n,i,o){for(let a=0,s=r*i+t;a<q.BLOCK_SIZE;a++,s+=i)for(let i=0;i<q.BLOCK_SIZE;i++)(255&e[s+i])<=n&&o.set(t+i,r+a)}static calculateBlackPoints(e,t,r,n,i){let o=i-q.BLOCK_SIZE,a=n-q.BLOCK_SIZE,s=Array(r);for(let i=0;i<r;i++){s[i]=new Int32Array(t);let r=i<<q.BLOCK_SIZE_POWER;r>o&&(r=o);for(let o=0;o<t;o++){let t=o<<q.BLOCK_SIZE_POWER;t>a&&(t=a);let l=0,c=255,u=0;for(let i=0,o=r*n+t;i<q.BLOCK_SIZE;i++,o+=n){for(let t=0;t<q.BLOCK_SIZE;t++){let r=255&e[o+t];l+=r,r<c&&(c=r),r>u&&(u=r)}if(u-c>q.MIN_DYNAMIC_RANGE)for(i++,o+=n;i<q.BLOCK_SIZE;i++,o+=n)for(let t=0;t<q.BLOCK_SIZE;t++)l+=255&e[o+t]}let h=l>>2*q.BLOCK_SIZE_POWER;if(u-c<=q.MIN_DYNAMIC_RANGE&&(h=c/2,i>0&&o>0)){let e=(s[i-1][o]+2*s[i][o-1]+s[i-1][o-1])/4;c<e&&(h=e)}s[i][o]=h}}return s}}q.BLOCK_SIZE_POWER=3,q.BLOCK_SIZE=1<<q.BLOCK_SIZE_POWER,q.BLOCK_SIZE_MASK=q.BLOCK_SIZE-1,q.MINIMUM_DIMENSION=5*q.BLOCK_SIZE,q.MIN_DYNAMIC_RANGE=24;class K{constructor(e,t){this.width=e,this.height=t}getWidth(){return this.width}getHeight(){return this.height}isCropSupported(){return!1}crop(e,t,r,n){throw new j("This luminance source does not support cropping.")}isRotateSupported(){return!1}rotateCounterClockwise(){throw new j("This luminance source does not support rotation by 90 degrees.")}rotateCounterClockwise45(){throw new j("This luminance source does not support rotation by 45 degrees.")}toString(){let e=new Uint8ClampedArray(this.width),t=new Y;for(let r=0;r<this.height;r++){let n=this.getRow(r,e);for(let e=0;e<this.width;e++){let r;let i=255&n[e];r=i<64?"#":i<128?"+":i<192?".":" ",t.append(r)}t.append("\n")}return t.toString()}}class J extends K{constructor(e){super(e.getWidth(),e.getHeight()),this.delegate=e}getRow(e,t){let r=this.delegate.getRow(e,t),n=this.getWidth();for(let e=0;e<n;e++)r[e]=255-(255&r[e]);return r}getMatrix(){let e=this.delegate.getMatrix(),t=this.getWidth()*this.getHeight(),r=new Uint8ClampedArray(t);for(let n=0;n<t;n++)r[n]=255-(255&e[n]);return r}isCropSupported(){return this.delegate.isCropSupported()}crop(e,t,r,n){return new J(this.delegate.crop(e,t,r,n))}isRotateSupported(){return this.delegate.isRotateSupported()}invert(){return this.delegate}rotateCounterClockwise(){return new J(this.delegate.rotateCounterClockwise())}rotateCounterClockwise45(){return new J(this.delegate.rotateCounterClockwise45())}}class $ extends K{constructor(e){super(e.width,e.height),this.canvas=e,this.tempCanvasElement=null,this.buffer=$.makeBufferFromCanvasImageData(e)}static makeBufferFromCanvasImageData(e){let t=e.getContext("2d").getImageData(0,0,e.width,e.height);return $.toGrayscaleBuffer(t.data,e.width,e.height)}static toGrayscaleBuffer(e,t,r){let n=new Uint8ClampedArray(t*r);for(let t=0,r=0,i=e.length;t<i;t+=4,r++){let i;if(0===e[t+3])i=255;else{let r=e[t],n=e[t+1];i=306*r+601*n+117*e[t+2]+512>>10}n[r]=i}return n}getRow(e,t){if(e<0||e>=this.getHeight())throw new R("Requested row is outside the image: "+e);let r=this.getWidth(),n=e*r;return null===t?t=this.buffer.slice(n,n+r):(t.length<r&&(t=new Uint8ClampedArray(r)),t.set(this.buffer.slice(n,n+r))),t}getMatrix(){return this.buffer}isCropSupported(){return!0}crop(e,t,r,n){return super.crop(e,t,r,n),this}isRotateSupported(){return!0}rotateCounterClockwise(){return this.rotate(-90),this}rotateCounterClockwise45(){return this.rotate(-45),this}getTempCanvasElement(){if(null===this.tempCanvasElement){let e=this.canvas.ownerDocument.createElement("canvas");e.width=this.canvas.width,e.height=this.canvas.height,this.tempCanvasElement=e}return this.tempCanvasElement}rotate(e){let t=this.getTempCanvasElement(),r=t.getContext("2d"),n=e*$.DEGREE_TO_RADIANS,i=this.canvas.width,o=this.canvas.height,a=Math.ceil(Math.abs(Math.cos(n))*i+Math.abs(Math.sin(n))*o),s=Math.ceil(Math.abs(Math.sin(n))*i+Math.abs(Math.cos(n))*o);return t.width=a,t.height=s,r.translate(a/2,s/2),r.rotate(n),r.drawImage(this.canvas,-(i/2),-(o/2)),this.buffer=$.makeBufferFromCanvasImageData(t),this}invert(){return new J(this)}}$.DEGREE_TO_RADIANS=Math.PI/180;class ee{constructor(e,t,r){this.deviceId=e,this.label=t,this.kind="videoinput",this.groupId=r||void 0}toJSON(){return{kind:this.kind,groupId:this.groupId,deviceId:this.deviceId,label:this.label}}}var et=(globalThis||r.g||self||window||void 0)&&(globalThis||r.g||self||window||void 0).__awaiter||function(e,t,r,n){return new(r||(r=Promise))(function(i,o){function a(e){try{l(n.next(e))}catch(e){o(e)}}function s(e){try{l(n.throw(e))}catch(e){o(e)}}function l(e){var t;e.done?i(e.value):((t=e.value)instanceof r?t:new r(function(e){e(t)})).then(a,s)}l((n=n.apply(e,t||[])).next())})};class er{constructor(e,t=500,r){this.reader=e,this.timeBetweenScansMillis=t,this._hints=r,this._stopContinuousDecode=!1,this._stopAsyncDecode=!1,this._timeBetweenDecodingAttempts=0}get hasNavigator(){return"undefined"!=typeof navigator}get isMediaDevicesSuported(){return this.hasNavigator&&!!navigator.mediaDevices}get canEnumerateDevices(){return!!(this.isMediaDevicesSuported&&navigator.mediaDevices.enumerateDevices)}get timeBetweenDecodingAttempts(){return this._timeBetweenDecodingAttempts}set timeBetweenDecodingAttempts(e){this._timeBetweenDecodingAttempts=e<0?0:e}set hints(e){this._hints=e||null}get hints(){return this._hints}listVideoInputDevices(){return et(this,void 0,void 0,function*(){if(!this.hasNavigator)throw Error("Can't enumerate devices, navigator is not present.");if(!this.canEnumerateDevices)throw Error("Can't enumerate devices, method not supported.");let e=yield navigator.mediaDevices.enumerateDevices(),t=[];for(let r of e){let e="video"===r.kind?"videoinput":r.kind;if("videoinput"!==e)continue;let n=r.deviceId||r.id,i=r.label||`Video device ${t.length+1}`,o={deviceId:n,label:i,kind:e,groupId:r.groupId};t.push(o)}return t})}getVideoInputDevices(){return et(this,void 0,void 0,function*(){return(yield this.listVideoInputDevices()).map(e=>new ee(e.deviceId,e.label))})}findDeviceById(e){return et(this,void 0,void 0,function*(){let t=yield this.listVideoInputDevices();return t?t.find(t=>t.deviceId===e):null})}decodeFromInputVideoDevice(e,t){return et(this,void 0,void 0,function*(){return yield this.decodeOnceFromVideoDevice(e,t)})}decodeOnceFromVideoDevice(e,t){return et(this,void 0,void 0,function*(){let r;this.reset();let n={video:r=e?{deviceId:{exact:e}}:{facingMode:"environment"}};return yield this.decodeOnceFromConstraints(n,t)})}decodeOnceFromConstraints(e,t){return et(this,void 0,void 0,function*(){let r=yield navigator.mediaDevices.getUserMedia(e);return yield this.decodeOnceFromStream(r,t)})}decodeOnceFromStream(e,t){return et(this,void 0,void 0,function*(){this.reset();let r=yield this.attachStreamToVideo(e,t);return yield this.decodeOnce(r)})}decodeFromInputVideoDeviceContinuously(e,t,r){return et(this,void 0,void 0,function*(){return yield this.decodeFromVideoDevice(e,t,r)})}decodeFromVideoDevice(e,t,r){return et(this,void 0,void 0,function*(){let n;let i={video:n=e?{deviceId:{exact:e}}:{facingMode:"environment"}};return yield this.decodeFromConstraints(i,t,r)})}decodeFromConstraints(e,t,r){return et(this,void 0,void 0,function*(){let n=yield navigator.mediaDevices.getUserMedia(e);return yield this.decodeFromStream(n,t,r)})}decodeFromStream(e,t,r){return et(this,void 0,void 0,function*(){this.reset();let n=yield this.attachStreamToVideo(e,t);return yield this.decodeContinuously(n,r)})}stopAsyncDecode(){this._stopAsyncDecode=!0}stopContinuousDecode(){this._stopContinuousDecode=!0}attachStreamToVideo(e,t){return et(this,void 0,void 0,function*(){let r=this.prepareVideoElement(t);return this.addVideoSource(r,e),this.videoElement=r,this.stream=e,yield this.playVideoOnLoadAsync(r),r})}playVideoOnLoadAsync(e){return new Promise((t,r)=>this.playVideoOnLoad(e,()=>t()))}playVideoOnLoad(e,t){this.videoEndedListener=()=>this.stopStreams(),this.videoCanPlayListener=()=>this.tryPlayVideo(e),e.addEventListener("ended",this.videoEndedListener),e.addEventListener("canplay",this.videoCanPlayListener),e.addEventListener("playing",t),this.tryPlayVideo(e)}isVideoPlaying(e){return e.currentTime>0&&!e.paused&&!e.ended&&e.readyState>2}tryPlayVideo(e){return et(this,void 0,void 0,function*(){if(this.isVideoPlaying(e)){console.warn("Trying to play video that is already playing.");return}try{yield e.play()}catch(e){console.warn("It was not possible to play the video.")}})}getMediaElement(e,t){let r=document.getElementById(e);if(!r)throw new D(`element with id '${e}' not found`);if(r.nodeName.toLowerCase()!==t.toLowerCase())throw new D(`element with id '${e}' must be an ${t} element`);return r}decodeFromImage(e,t){if(!e&&!t)throw new D("either imageElement with a src set or an url must be provided");return t&&!e?this.decodeFromImageUrl(t):this.decodeFromImageElement(e)}decodeFromVideo(e,t){if(!e&&!t)throw new D("Either an element with a src set or an URL must be provided");return t&&!e?this.decodeFromVideoUrl(t):this.decodeFromVideoElement(e)}decodeFromVideoContinuously(e,t,r){if(void 0===e&&void 0===t)throw new D("Either an element with a src set or an URL must be provided");return t&&!e?this.decodeFromVideoUrlContinuously(t,r):this.decodeFromVideoElementContinuously(e,r)}decodeFromImageElement(e){let t;if(!e)throw new D("An image element must be provided.");this.reset();let r=this.prepareImageElement(e);return this.imageElement=r,t=this.isImageLoaded(r)?this.decodeOnce(r,!1,!0):this._decodeOnLoadImage(r)}decodeFromVideoElement(e){let t=this._decodeFromVideoElementSetup(e);return this._decodeOnLoadVideo(t)}decodeFromVideoElementContinuously(e,t){let r=this._decodeFromVideoElementSetup(e);return this._decodeOnLoadVideoContinuously(r,t)}_decodeFromVideoElementSetup(e){if(!e)throw new D("A video element must be provided.");this.reset();let t=this.prepareVideoElement(e);return this.videoElement=t,t}decodeFromImageUrl(e){if(!e)throw new D("An URL must be provided.");this.reset();let t=this.prepareImageElement();this.imageElement=t;let r=this._decodeOnLoadImage(t);return t.src=e,r}decodeFromVideoUrl(e){if(!e)throw new D("An URL must be provided.");this.reset();let t=this.prepareVideoElement(),r=this.decodeFromVideoElement(t);return t.src=e,r}decodeFromVideoUrlContinuously(e,t){if(!e)throw new D("An URL must be provided.");this.reset();let r=this.prepareVideoElement(),n=this.decodeFromVideoElementContinuously(r,t);return r.src=e,n}_decodeOnLoadImage(e){return new Promise((t,r)=>{this.imageLoadedListener=()=>this.decodeOnce(e,!1,!0).then(t,r),e.addEventListener("load",this.imageLoadedListener)})}_decodeOnLoadVideo(e){return et(this,void 0,void 0,function*(){return yield this.playVideoOnLoadAsync(e),yield this.decodeOnce(e)})}_decodeOnLoadVideoContinuously(e,t){return et(this,void 0,void 0,function*(){yield this.playVideoOnLoadAsync(e),this.decodeContinuously(e,t)})}isImageLoaded(e){return!!e.complete&&0!==e.naturalWidth||!1}prepareImageElement(e){let t;return void 0===e&&((t=document.createElement("img")).width=200,t.height=200),"string"==typeof e&&(t=this.getMediaElement(e,"img")),e instanceof HTMLImageElement&&(t=e),t}prepareVideoElement(e){let t;return!e&&"undefined"!=typeof document&&((t=document.createElement("video")).width=200,t.height=200),"string"==typeof e&&(t=this.getMediaElement(e,"video")),e instanceof HTMLVideoElement&&(t=e),t.setAttribute("autoplay","true"),t.setAttribute("muted","true"),t.setAttribute("playsinline","true"),t}decodeOnce(e,t=!0,r=!0){this._stopAsyncDecode=!1;let n=(i,o)=>{if(this._stopAsyncDecode){o(new Z("Video stream has ended before any code could be detected.")),this._stopAsyncDecode=void 0;return}try{let t=this.decode(e);i(t)}catch(s){let e=t&&s instanceof Z,a=s instanceof v||s instanceof z;if(e||a&&r)return setTimeout(n,this._timeBetweenDecodingAttempts,i,o);o(s)}};return new Promise((e,t)=>n(e,t))}decodeContinuously(e,t){this._stopContinuousDecode=!1;let r=()=>{if(this._stopContinuousDecode){this._stopContinuousDecode=void 0;return}try{let n=this.decode(e);t(n,null),setTimeout(r,this.timeBetweenScansMillis)}catch(i){t(null,i);let e=i instanceof v||i instanceof z,n=i instanceof Z;(e||n)&&setTimeout(r,this._timeBetweenDecodingAttempts)}};r()}decode(e){let t=this.createBinaryBitmap(e);return this.decodeBitmap(t)}_isHTMLVideoElement(e){return 0!==e.videoWidth}drawFrameOnCanvas(e,t,r){!t&&(t={sx:0,sy:0,sWidth:e.videoWidth,sHeight:e.videoHeight,dx:0,dy:0,dWidth:e.videoWidth,dHeight:e.videoHeight}),!r&&(r=this.captureCanvasContext),r.drawImage(e,t.sx,t.sy,t.sWidth,t.sHeight,t.dx,t.dy,t.dWidth,t.dHeight)}drawImageOnCanvas(e,t,r=this.captureCanvasContext){!t&&(t={sx:0,sy:0,sWidth:e.naturalWidth,sHeight:e.naturalHeight,dx:0,dy:0,dWidth:e.naturalWidth,dHeight:e.naturalHeight}),!r&&(r=this.captureCanvasContext),r.drawImage(e,t.sx,t.sy,t.sWidth,t.sHeight,t.dx,t.dy,t.dWidth,t.dHeight)}createBinaryBitmap(e){return this.getCaptureCanvasContext(e),this._isHTMLVideoElement(e)?this.drawFrameOnCanvas(e):this.drawImageOnCanvas(e),new O(new q(new $(this.getCaptureCanvas(e))))}getCaptureCanvasContext(e){if(!this.captureCanvasContext){let t=this.getCaptureCanvas(e).getContext("2d");this.captureCanvasContext=t}return this.captureCanvasContext}getCaptureCanvas(e){if(!this.captureCanvas){let t=this.createCaptureCanvas(e);this.captureCanvas=t}return this.captureCanvas}decodeBitmap(e){return this.reader.decode(e,this._hints)}createCaptureCanvas(e){let t,r;if("undefined"==typeof document)return this._destroyCaptureCanvas(),null;let n=document.createElement("canvas");return void 0!==e&&(e instanceof HTMLVideoElement?(t=e.videoWidth,r=e.videoHeight):e instanceof HTMLImageElement&&(t=e.naturalWidth||e.width,r=e.naturalHeight||e.height)),n.style.width=t+"px",n.style.height=r+"px",n.width=t,n.height=r,n}stopStreams(){this.stream&&(this.stream.getVideoTracks().forEach(e=>e.stop()),this.stream=void 0),!1===this._stopAsyncDecode&&this.stopAsyncDecode(),!1===this._stopContinuousDecode&&this.stopContinuousDecode()}reset(){this.stopStreams(),this._destroyVideoElement(),this._destroyImageElement(),this._destroyCaptureCanvas()}_destroyVideoElement(){if(!!this.videoElement)void 0!==this.videoEndedListener&&this.videoElement.removeEventListener("ended",this.videoEndedListener),void 0!==this.videoPlayingEventListener&&this.videoElement.removeEventListener("playing",this.videoPlayingEventListener),void 0!==this.videoCanPlayListener&&this.videoElement.removeEventListener("loadedmetadata",this.videoCanPlayListener),this.cleanVideoSource(this.videoElement),this.videoElement=void 0}_destroyImageElement(){if(!!this.imageElement)void 0!==this.imageLoadedListener&&this.imageElement.removeEventListener("load",this.imageLoadedListener),this.imageElement.src=void 0,this.imageElement.removeAttribute("src"),this.imageElement=void 0}_destroyCaptureCanvas(){this.captureCanvasContext=void 0,this.captureCanvas=void 0}addVideoSource(e,t){try{e.srcObject=t}catch(r){e.src=URL.createObjectURL(t)}}cleanVideoSource(e){try{e.srcObject=null}catch(t){e.src=""}this.videoElement.removeAttribute("src")}}class en{constructor(e,t,r=null==t?0:8*t.length,n,i,o=P.currentTimeMillis()){this.text=e,this.rawBytes=t,this.numBits=r,this.resultPoints=n,this.format=i,this.timestamp=o,this.text=e,this.rawBytes=t,null==r?this.numBits=null==t?0:8*t.length:this.numBits=r,this.resultPoints=n,this.format=i,this.resultMetadata=null,null==o?this.timestamp=P.currentTimeMillis():this.timestamp=o}getText(){return this.text}getRawBytes(){return this.rawBytes}getNumBits(){return this.numBits}getResultPoints(){return this.resultPoints}getBarcodeFormat(){return this.format}getResultMetadata(){return this.resultMetadata}putMetadata(e,t){null===this.resultMetadata&&(this.resultMetadata=new Map),this.resultMetadata.set(e,t)}putAllMetadata(e){null!==e&&(null===this.resultMetadata?this.resultMetadata=e:this.resultMetadata=new Map(e))}addResultPoints(e){let t=this.resultPoints;if(null===t)this.resultPoints=e;else if(null!==e&&e.length>0){let r=Array(t.length+e.length);P.arraycopy(t,0,r,0,t.length),P.arraycopy(e,0,r,t.length,e.length),this.resultPoints=r}}getTimestamp(){return this.timestamp}toString(){return this.text}}(a=w||(w={}))[a.AZTEC=0]="AZTEC",a[a.CODABAR=1]="CODABAR",a[a.CODE_39=2]="CODE_39",a[a.CODE_93=3]="CODE_93",a[a.CODE_128=4]="CODE_128",a[a.DATA_MATRIX=5]="DATA_MATRIX",a[a.EAN_8=6]="EAN_8",a[a.EAN_13=7]="EAN_13",a[a.ITF=8]="ITF",a[a.MAXICODE=9]="MAXICODE",a[a.PDF_417=10]="PDF_417",a[a.QR_CODE=11]="QR_CODE",a[a.RSS_14=12]="RSS_14",a[a.RSS_EXPANDED=13]="RSS_EXPANDED",a[a.UPC_A=14]="UPC_A",a[a.UPC_E=15]="UPC_E",a[a.UPC_EAN_EXTENSION=16]="UPC_EAN_EXTENSION";var ei=w;(s=A||(A={}))[s.OTHER=0]="OTHER",s[s.ORIENTATION=1]="ORIENTATION",s[s.BYTE_SEGMENTS=2]="BYTE_SEGMENTS",s[s.ERROR_CORRECTION_LEVEL=3]="ERROR_CORRECTION_LEVEL",s[s.ISSUE_NUMBER=4]="ISSUE_NUMBER",s[s.SUGGESTED_PRICE=5]="SUGGESTED_PRICE",s[s.POSSIBLE_COUNTRY=6]="POSSIBLE_COUNTRY",s[s.UPC_EAN_EXTENSION=7]="UPC_EAN_EXTENSION",s[s.PDF417_EXTRA_METADATA=8]="PDF417_EXTRA_METADATA",s[s.STRUCTURED_APPEND_SEQUENCE=9]="STRUCTURED_APPEND_SEQUENCE",s[s.STRUCTURED_APPEND_PARITY=10]="STRUCTURED_APPEND_PARITY";var eo=A;class ea{constructor(e,t,r,n,i=-1,o=-1){this.rawBytes=e,this.text=t,this.byteSegments=r,this.ecLevel=n,this.structuredAppendSequenceNumber=i,this.structuredAppendParity=o,this.numBits=null==e?0:8*e.length}getRawBytes(){return this.rawBytes}getNumBits(){return this.numBits}setNumBits(e){this.numBits=e}getText(){return this.text}getByteSegments(){return this.byteSegments}getECLevel(){return this.ecLevel}getErrorsCorrected(){return this.errorsCorrected}setErrorsCorrected(e){this.errorsCorrected=e}getErasures(){return this.erasures}setErasures(e){this.erasures=e}getOther(){return this.other}setOther(e){this.other=e}hasStructuredAppend(){return this.structuredAppendParity>=0&&this.structuredAppendSequenceNumber>=0}getStructuredAppendParity(){return this.structuredAppendParity}getStructuredAppendSequenceNumber(){return this.structuredAppendSequenceNumber}}class es{exp(e){return this.expTable[e]}log(e){if(0===e)throw new R;return this.logTable[e]}static addOrSubtract(e,t){return e^t}}class el{constructor(e,t){if(0===t.length)throw new R;this.field=e;let r=t.length;if(r>1&&0===t[0]){let e=1;for(;e<r&&0===t[e];)e++;e===r?this.coefficients=Int32Array.from([0]):(this.coefficients=new Int32Array(r-e),P.arraycopy(t,e,this.coefficients,0,this.coefficients.length))}else this.coefficients=t}getCoefficients(){return this.coefficients}getDegree(){return this.coefficients.length-1}isZero(){return 0===this.coefficients[0]}getCoefficient(e){return this.coefficients[this.coefficients.length-1-e]}evaluateAt(e){let t;if(0===e)return this.getCoefficient(0);let r=this.coefficients;if(1===e){t=0;for(let e=0,n=r.length;e!==n;e++){let n=r[e];t=es.addOrSubtract(t,n)}return t}t=r[0];let n=r.length,i=this.field;for(let o=1;o<n;o++)t=es.addOrSubtract(i.multiply(e,t),r[o]);return t}addOrSubtract(e){if(!this.field.equals(e.field))throw new R("GenericGFPolys do not have same GenericGF field");if(this.isZero())return e;if(e.isZero())return this;let t=this.coefficients,r=e.coefficients;if(t.length>r.length){let e=t;t=r,r=e}let n=new Int32Array(r.length),i=r.length-t.length;P.arraycopy(r,0,n,0,i);for(let e=i;e<r.length;e++)n[e]=es.addOrSubtract(t[e-i],r[e]);return new el(this.field,n)}multiply(e){if(!this.field.equals(e.field))throw new R("GenericGFPolys do not have same GenericGF field");if(this.isZero()||e.isZero())return this.field.getZero();let t=this.coefficients,r=t.length,n=e.coefficients,i=n.length,o=new Int32Array(r+i-1),a=this.field;for(let e=0;e<r;e++){let r=t[e];for(let t=0;t<i;t++)o[e+t]=es.addOrSubtract(o[e+t],a.multiply(r,n[t]))}return new el(a,o)}multiplyScalar(e){if(0===e)return this.field.getZero();if(1===e)return this;let t=this.coefficients.length,r=this.field,n=new Int32Array(t),i=this.coefficients;for(let o=0;o<t;o++)n[o]=r.multiply(i[o],e);return new el(r,n)}multiplyByMonomial(e,t){if(e<0)throw new R;if(0===t)return this.field.getZero();let r=this.coefficients,n=r.length,i=new Int32Array(n+e),o=this.field;for(let e=0;e<n;e++)i[e]=o.multiply(r[e],t);return new el(o,i)}divide(e){if(!this.field.equals(e.field))throw new R("GenericGFPolys do not have same GenericGF field");if(e.isZero())throw new R("Divide by 0");let t=this.field,r=t.getZero(),n=this,i=e.getCoefficient(e.getDegree()),o=t.inverse(i);for(;n.getDegree()>=e.getDegree()&&!n.isZero();){let i=n.getDegree()-e.getDegree(),a=t.multiply(n.getCoefficient(n.getDegree()),o),s=e.multiplyByMonomial(i,a),l=t.buildMonomial(i,a);r=r.addOrSubtract(l),n=n.addOrSubtract(s)}return[r,n]}toString(){let e="";for(let t=this.getDegree();t>=0;t--){let r=this.getCoefficient(t);if(0!==r){if(r<0?(e+=" - ",r=-r):e.length>0&&(e+=" + "),0===t||1!==r){let t=this.field.log(r);0===t?e+="1":1===t?e+="a":(e+="a^",e+=t)}0!==t&&(1===t?e+="x":(e+="x^",e+=t))}}return e}}class ec extends b{}ec.kind="ArithmeticException";class eu extends es{constructor(e,t,r){super(),this.primitive=e,this.size=t,this.generatorBase=r;let n=new Int32Array(t),i=1;for(let r=0;r<t;r++)n[r]=i,(i*=2)>=t&&(i^=e,i&=t-1);this.expTable=n;let o=new Int32Array(t);for(let e=0;e<t-1;e++)o[n[e]]=e;this.logTable=o,this.zero=new el(this,Int32Array.from([0])),this.one=new el(this,Int32Array.from([1]))}getZero(){return this.zero}getOne(){return this.one}buildMonomial(e,t){if(e<0)throw new R;if(0===t)return this.zero;let r=new Int32Array(e+1);return r[0]=t,new el(this,r)}inverse(e){if(0===e)throw new ec;return this.expTable[this.size-this.logTable[e]-1]}multiply(e,t){return 0===e||0===t?0:this.expTable[(this.logTable[e]+this.logTable[t])%(this.size-1)]}getSize(){return this.size}getGeneratorBase(){return this.generatorBase}toString(){return"GF(0x"+k.toHexString(this.primitive)+","+this.size+")"}equals(e){return e===this}}eu.AZTEC_DATA_12=new eu(4201,4096,1),eu.AZTEC_DATA_10=new eu(1033,1024,1),eu.AZTEC_DATA_6=new eu(67,64,1),eu.AZTEC_PARAM=new eu(19,16,1),eu.QR_CODE_FIELD_256=new eu(285,256,0),eu.DATA_MATRIX_FIELD_256=new eu(301,256,1),eu.AZTEC_DATA_8=eu.DATA_MATRIX_FIELD_256,eu.MAXICODE_FIELD_64=eu.AZTEC_DATA_6;class eh extends b{}eh.kind="ReedSolomonException";class ed extends b{}ed.kind="IllegalStateException";class ef{constructor(e){this.field=e}decode(e,t){let r=this.field,n=new el(r,e),i=new Int32Array(t),o=!0;for(let e=0;e<t;e++){let t=n.evaluateAt(r.exp(e+r.getGeneratorBase()));i[i.length-1-e]=t,0!==t&&(o=!1)}if(o)return;let a=new el(r,i),s=this.runEuclideanAlgorithm(r.buildMonomial(t,1),a,t),l=s[0],c=s[1],u=this.findErrorLocations(l),h=this.findErrorMagnitudes(c,u);for(let t=0;t<u.length;t++){let n=e.length-1-r.log(u[t]);if(n<0)throw new eh("Bad error location");e[n]=eu.addOrSubtract(e[n],h[t])}}runEuclideanAlgorithm(e,t,r){if(e.getDegree()<t.getDegree()){let r=e;e=t,t=r}let n=this.field,i=e,o=t,a=n.getZero(),s=n.getOne();for(;o.getDegree()>=(r/2|0);){let e=i,t=a;if(i=o,a=s,i.isZero())throw new eh("r_{i-1} was zero");o=e;let r=n.getZero(),l=i.getCoefficient(i.getDegree()),c=n.inverse(l);for(;o.getDegree()>=i.getDegree()&&!o.isZero();){let e=o.getDegree()-i.getDegree(),t=n.multiply(o.getCoefficient(o.getDegree()),c);r=r.addOrSubtract(n.buildMonomial(e,t)),o=o.addOrSubtract(i.multiplyByMonomial(e,t))}if(s=r.multiply(a).addOrSubtract(t),o.getDegree()>=i.getDegree())throw new ed("Division algorithm failed to reduce polynomial?")}let l=s.getCoefficient(0);if(0===l)throw new eh("sigmaTilde(0) was zero");let c=n.inverse(l),u=s.multiplyScalar(c);return[u,o.multiplyScalar(c)]}findErrorLocations(e){let t=e.getDegree();if(1===t)return Int32Array.from([e.getCoefficient(1)]);let r=new Int32Array(t),n=0,i=this.field;for(let o=1;o<i.getSize()&&n<t;o++)0===e.evaluateAt(o)&&(r[n]=i.inverse(o),n++);if(n!==t)throw new eh("Error locator degree does not match number of roots");return r}findErrorMagnitudes(e,t){let r=t.length,n=new Int32Array(r),i=this.field;for(let o=0;o<r;o++){let a=i.inverse(t[o]),s=1;for(let e=0;e<r;e++)if(o!==e){let r=i.multiply(t[e],a),n=(1&r)==0?1|r:-2&r;s=i.multiply(s,n)}n[o]=i.multiply(e.evaluateAt(a),i.inverse(s)),0!==i.getGeneratorBase()&&(n[o]=i.multiply(n[o],a))}return n}}(l=C||(C={}))[l.UPPER=0]="UPPER",l[l.LOWER=1]="LOWER",l[l.MIXED=2]="MIXED",l[l.DIGIT=3]="DIGIT",l[l.PUNCT=4]="PUNCT",l[l.BINARY=5]="BINARY";class eg{decode(e){this.ddata=e;let t=e.getBits(),r=this.extractBits(t),n=this.correctBits(r),i=new ea(eg.convertBoolArrayToByteArray(n),eg.getEncodedData(n),null,null);return i.setNumBits(n.length),i}static highLevelDecode(e){return this.getEncodedData(e)}static getEncodedData(e){let t=e.length,r=C.UPPER,n=C.UPPER,i="",o=0;for(;o<t;)if(n===C.BINARY){if(t-o<5)break;let a=eg.readCode(e,o,5);if(o+=5,0===a){if(t-o<11)break;a=eg.readCode(e,o,11)+31,o+=11}for(let r=0;r<a;r++){if(t-o<8){o=t;break}let r=eg.readCode(e,o,8);i+=W.castAsNonUtf8Char(r),o+=8}n=r}else{let a=n===C.DIGIT?4:5;if(t-o<a)break;let s=eg.readCode(e,o,a);o+=a;let l=eg.getCharacter(n,s);l.startsWith("CTRL_")?(r=n,n=eg.getTable(l.charAt(5)),"L"===l.charAt(6)&&(r=n)):(i+=l,n=r)}return i}static getTable(e){switch(e){case"L":return C.LOWER;case"P":return C.PUNCT;case"M":return C.MIXED;case"D":return C.DIGIT;case"B":return C.BINARY;default:return C.UPPER}}static getCharacter(e,t){switch(e){case C.UPPER:return eg.UPPER_TABLE[t];case C.LOWER:return eg.LOWER_TABLE[t];case C.MIXED:return eg.MIXED_TABLE[t];case C.PUNCT:return eg.PUNCT_TABLE[t];case C.DIGIT:return eg.DIGIT_TABLE[t];default:throw new ed("Bad table")}}correctBits(e){let t,r;2>=this.ddata.getNbLayers()?(r=6,t=eu.AZTEC_DATA_6):8>=this.ddata.getNbLayers()?(r=8,t=eu.AZTEC_DATA_8):22>=this.ddata.getNbLayers()?(r=10,t=eu.AZTEC_DATA_10):(r=12,t=eu.AZTEC_DATA_12);let n=this.ddata.getNbDatablocks(),i=e.length/r;if(i<n)throw new z;let o=e.length%r,a=new Int32Array(i);for(let t=0;t<i;t++,o+=r)a[t]=eg.readCode(e,o,r);try{new ef(t).decode(a,i-n)}catch(e){throw new z(e)}let s=(1<<r)-1,l=0;for(let e=0;e<n;e++){let t=a[e];if(0===t||t===s)throw new z;(1===t||t===s-1)&&l++}let c=Array(n*r-l),u=0;for(let e=0;e<n;e++){let t=a[e];if(1===t||t===s-1)c.fill(t>1,u,u+r-1),u+=r-1;else for(let e=r-1;e>=0;--e)c[u++]=(t&1<<e)!=0}return c}extractBits(e){let t=this.ddata.isCompact(),r=this.ddata.getNbLayers(),n=(t?11:14)+4*r,i=new Int32Array(n),o=Array(this.totalBitsInLayer(r,t));if(t)for(let e=0;e<i.length;e++)i[e]=e;else{let e=n+1+2*k.truncDivision(k.truncDivision(n,2)-1,15),t=n/2,r=k.truncDivision(e,2);for(let e=0;e<t;e++){let n=e+k.truncDivision(e,15);i[t-e-1]=r-n-1,i[t+e]=r+n+1}}for(let a=0,s=0;a<r;a++){let l=(r-a)*4+(t?9:12),c=2*a,u=n-1-c;for(let t=0;t<l;t++){let r=2*t;for(let n=0;n<2;n++)o[s+r+n]=e.get(i[c+n],i[c+t]),o[s+2*l+r+n]=e.get(i[c+t],i[u-n]),o[s+4*l+r+n]=e.get(i[u-n],i[u-t]),o[s+6*l+r+n]=e.get(i[u-t],i[c+n])}s+=8*l}return o}static readCode(e,t,r){let n=0;for(let i=t;i<t+r;i++)n<<=1,e[i]&&(n|=1);return n}static readByte(e,t){let r=e.length-t;return r>=8?eg.readCode(e,t,8):eg.readCode(e,t,r)<<8-r}static convertBoolArrayToByteArray(e){let t=new Uint8Array((e.length+7)/8);for(let r=0;r<t.length;r++)t[r]=eg.readByte(e,8*r);return t}totalBitsInLayer(e,t){return((t?88:112)+16*e)*e}}eg.UPPER_TABLE=["CTRL_PS"," ","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","CTRL_LL","CTRL_ML","CTRL_DL","CTRL_BS"],eg.LOWER_TABLE=["CTRL_PS"," ","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","CTRL_US","CTRL_ML","CTRL_DL","CTRL_BS"],eg.MIXED_TABLE=["CTRL_PS"," ","\\1","\\2","\\3","\\4","\\5","\\6","\\7","\b"," ","\n","\\13","\f","\r","\\33","\\34","\\35","\\36","\\37","@","\\","^","_","`","|","~","\\177","CTRL_LL","CTRL_UL","CTRL_PL","CTRL_BS"],eg.PUNCT_TABLE=["","\r","\r\n",". ",", ",": ","!",'"',"#","$","%","&","'","(",")","*","+",",","-",".","/",":",";","<","=",">","?","[","]","{","}","CTRL_UL"],eg.DIGIT_TABLE=["CTRL_PS"," ","0","1","2","3","4","5","6","7","8","9",",",".","CTRL_UL","CTRL_US"];class ep{constructor(){}static round(e){return e<=Number.MIN_SAFE_INTEGER?Number.MIN_SAFE_INTEGER:e>=Number.MAX_SAFE_INTEGER?Number.MAX_SAFE_INTEGER:e+(e<0?-.5:.5)|0}static distance(e,t,r,n){let i=e-r,o=t-n;return Math.sqrt(i*i+o*o)}static sum(e){let t=0;for(let r=0,n=e.length;r!==n;r++)t+=e[r];return t}}class em{static floatToIntBits(e){return e}}em.MAX_VALUE=Number.MAX_SAFE_INTEGER;class ew{constructor(e,t){this.x=e,this.y=t}getX(){return this.x}getY(){return this.y}equals(e){return e instanceof ew&&this.x===e.x&&this.y===e.y}hashCode(){return 31*em.floatToIntBits(this.x)+em.floatToIntBits(this.y)}toString(){return"("+this.x+","+this.y+")"}static orderBestPatterns(e){let t,r,n;let i=this.distance(e[0],e[1]),o=this.distance(e[1],e[2]),a=this.distance(e[0],e[2]);if(o>=i&&o>=a?(r=e[0],t=e[1],n=e[2]):a>=o&&a>=i?(r=e[1],t=e[0],n=e[2]):(r=e[2],t=e[0],n=e[1]),0>this.crossProductZ(t,r,n)){let e=t;t=n,n=e}e[0]=t,e[1]=r,e[2]=n}static distance(e,t){return ep.distance(e.x,e.y,t.x,t.y)}static crossProductZ(e,t,r){let n=t.x,i=t.y;return(r.x-n)*(e.y-i)-(r.y-i)*(e.x-n)}}class eA{constructor(e,t){this.bits=e,this.points=t}getBits(){return this.bits}getPoints(){return this.points}}class eC extends eA{constructor(e,t,r,n,i){super(e,t),this.compact=r,this.nbDatablocks=n,this.nbLayers=i}getNbLayers(){return this.nbLayers}getNbDatablocks(){return this.nbDatablocks}isCompact(){return this.compact}}class eE{constructor(e,t,r,n){this.image=e,this.height=e.getHeight(),this.width=e.getWidth(),null==t&&(t=eE.INIT_SIZE),null==r&&(r=e.getWidth()/2|0),null==n&&(n=e.getHeight()/2|0);let i=t/2|0;if(this.leftInit=r-i,this.rightInit=r+i,this.upInit=n-i,this.downInit=n+i,this.upInit<0||this.leftInit<0||this.downInit>=this.height||this.rightInit>=this.width)throw new Z}detect(){let e=this.leftInit,t=this.rightInit,r=this.upInit,n=this.downInit,i=!1,o=!0,a=!1,s=!1,l=!1,c=!1,u=!1,h=this.width,d=this.height;for(;o;){o=!1;let f=!0;for(;(f||!s)&&t<h;)(f=this.containsBlackPoint(r,n,t,!1))?(t++,o=!0,s=!0):!s&&t++;if(t>=h){i=!0;break}let g=!0;for(;(g||!l)&&n<d;)(g=this.containsBlackPoint(e,t,n,!0))?(n++,o=!0,l=!0):!l&&n++;if(n>=d){i=!0;break}let p=!0;for(;(p||!c)&&e>=0;)(p=this.containsBlackPoint(r,n,e,!1))?(e--,o=!0,c=!0):!c&&e--;if(e<0){i=!0;break}let m=!0;for(;(m||!u)&&r>=0;)(m=this.containsBlackPoint(e,t,r,!0))?(r--,o=!0,u=!0):!u&&r--;if(r<0){i=!0;break}o&&(a=!0)}if(!i&&a){let i=t-e,o=null;for(let t=1;null===o&&t<i;t++)o=this.getBlackPointOnSegment(e,n-t,e+t,n);if(null==o)throw new Z;let a=null;for(let t=1;null===a&&t<i;t++)a=this.getBlackPointOnSegment(e,r+t,e+t,r);if(null==a)throw new Z;let s=null;for(let e=1;null===s&&e<i;e++)s=this.getBlackPointOnSegment(t,r+e,t-e,r);if(null==s)throw new Z;let l=null;for(let e=1;null===l&&e<i;e++)l=this.getBlackPointOnSegment(t,n-e,t-e,n);if(null==l)throw new Z;return this.centerEdges(l,o,s,a)}throw new Z}getBlackPointOnSegment(e,t,r,n){let i=ep.round(ep.distance(e,t,r,n)),o=(r-e)/i,a=(n-t)/i,s=this.image;for(let r=0;r<i;r++){let n=ep.round(e+r*o),i=ep.round(t+r*a);if(s.get(n,i))return new ew(n,i)}return null}centerEdges(e,t,r,n){let i=e.getX(),o=e.getY(),a=t.getX(),s=t.getY(),l=r.getX(),c=r.getY(),u=n.getX(),h=n.getY(),d=eE.CORR;return i<this.width/2?[new ew(u-d,h+d),new ew(a+d,s+d),new ew(l-d,c-d),new ew(i+d,o-d)]:[new ew(u+d,h+d),new ew(a+d,s-d),new ew(l-d,c+d),new ew(i-d,o-d)]}containsBlackPoint(e,t,r,n){let i=this.image;if(n){for(let n=e;n<=t;n++)if(i.get(n,r))return!0}else for(let n=e;n<=t;n++)if(i.get(r,n))return!0;return!1}}eE.INIT_SIZE=10,eE.CORR=1;class eI{static checkAndNudgePoints(e,t){let r=e.getWidth(),n=e.getHeight(),i=!0;for(let e=0;e<t.length&&i;e+=2){let o=Math.floor(t[e]),a=Math.floor(t[e+1]);if(o<-1||o>r||a<-1||a>n)throw new Z;i=!1,-1===o?(t[e]=0,i=!0):o===r&&(t[e]=r-1,i=!0),-1===a?(t[e+1]=0,i=!0):a===n&&(t[e+1]=n-1,i=!0)}i=!0;for(let e=t.length-2;e>=0&&i;e-=2){let o=Math.floor(t[e]),a=Math.floor(t[e+1]);if(o<-1||o>r||a<-1||a>n)throw new Z;i=!1,-1===o?(t[e]=0,i=!0):o===r&&(t[e]=r-1,i=!0),-1===a?(t[e+1]=0,i=!0):a===n&&(t[e+1]=n-1,i=!0)}}}class eS{constructor(e,t,r,n,i,o,a,s,l){this.a11=e,this.a21=t,this.a31=r,this.a12=n,this.a22=i,this.a32=o,this.a13=a,this.a23=s,this.a33=l}static quadrilateralToQuadrilateral(e,t,r,n,i,o,a,s,l,c,u,h,d,f,g,p){let m=eS.quadrilateralToSquare(e,t,r,n,i,o,a,s);return eS.squareToQuadrilateral(l,c,u,h,d,f,g,p).times(m)}transformPoints(e){let t=e.length,r=this.a11,n=this.a12,i=this.a13,o=this.a21,a=this.a22,s=this.a23,l=this.a31,c=this.a32,u=this.a33;for(let h=0;h<t;h+=2){let t=e[h],d=e[h+1],f=i*t+s*d+u;e[h]=(r*t+o*d+l)/f,e[h+1]=(n*t+a*d+c)/f}}transformPointsWithValues(e,t){let r=this.a11,n=this.a12,i=this.a13,o=this.a21,a=this.a22,s=this.a23,l=this.a31,c=this.a32,u=this.a33,h=e.length;for(let d=0;d<h;d++){let h=e[d],f=t[d],g=i*h+s*f+u;e[d]=(r*h+o*f+l)/g,t[d]=(n*h+a*f+c)/g}}static squareToQuadrilateral(e,t,r,n,i,o,a,s){let l=e-r+i-a,c=t-n+o-s;if(0===l&&0===c)return new eS(r-e,i-r,e,n-t,o-n,t,0,0,1);{let u=r-i,h=a-i,d=n-o,f=s-o,g=u*f-h*d,p=(l*f-h*c)/g,m=(u*c-l*d)/g;return new eS(r-e+p*r,a-e+m*a,e,n-t+p*n,s-t+m*s,t,p,m,1)}}static quadrilateralToSquare(e,t,r,n,i,o,a,s){return eS.squareToQuadrilateral(e,t,r,n,i,o,a,s).buildAdjoint()}buildAdjoint(){return new eS(this.a22*this.a33-this.a23*this.a32,this.a23*this.a31-this.a21*this.a33,this.a21*this.a32-this.a22*this.a31,this.a13*this.a32-this.a12*this.a33,this.a11*this.a33-this.a13*this.a31,this.a12*this.a31-this.a11*this.a32,this.a12*this.a23-this.a13*this.a22,this.a13*this.a21-this.a11*this.a23,this.a11*this.a22-this.a12*this.a21)}times(e){return new eS(this.a11*e.a11+this.a21*e.a12+this.a31*e.a13,this.a11*e.a21+this.a21*e.a22+this.a31*e.a23,this.a11*e.a31+this.a21*e.a32+this.a31*e.a33,this.a12*e.a11+this.a22*e.a12+this.a32*e.a13,this.a12*e.a21+this.a22*e.a22+this.a32*e.a23,this.a12*e.a31+this.a22*e.a32+this.a32*e.a33,this.a13*e.a11+this.a23*e.a12+this.a33*e.a13,this.a13*e.a21+this.a23*e.a22+this.a33*e.a23,this.a13*e.a31+this.a23*e.a32+this.a33*e.a33)}}class ey extends eI{sampleGrid(e,t,r,n,i,o,a,s,l,c,u,h,d,f,g,p,m,w,A){let C=eS.quadrilateralToQuadrilateral(n,i,o,a,s,l,c,u,h,d,f,g,p,m,w,A);return this.sampleGridWithTransform(e,t,r,C)}sampleGridWithTransform(e,t,r,n){if(t<=0||r<=0)throw new Z;let i=new X(t,r),o=new Float32Array(2*t);for(let t=0;t<r;t++){let r=o.length,a=t+.5;for(let e=0;e<r;e+=2)o[e]=e/2+.5,o[e+1]=a;n.transformPoints(o),eI.checkAndNudgePoints(e,o);try{for(let n=0;n<r;n+=2)e.get(Math.floor(o[n]),Math.floor(o[n+1]))&&i.set(n/2,t)}catch(e){throw new Z}}return i}}class e_{static setGridSampler(e){e_.gridSampler=e}static getInstance(){return e_.gridSampler}}e_.gridSampler=new ey;class eT{constructor(e,t){this.x=e,this.y=t}toResultPoint(){return new ew(this.getX(),this.getY())}getX(){return this.x}getY(){return this.y}}class eN{constructor(e){this.EXPECTED_CORNER_BITS=new Int32Array([3808,476,2107,1799]),this.image=e}detect(){return this.detectMirror(!1)}detectMirror(e){let t=this.getMatrixCenter(),r=this.getBullsEyeCorners(t);if(e){let e=r[0];r[0]=r[2],r[2]=e}return this.extractParameters(r),new eC(this.sampleGrid(this.image,r[this.shift%4],r[(this.shift+1)%4],r[(this.shift+2)%4],r[(this.shift+3)%4]),this.getMatrixCornerPoints(r),this.compact,this.nbDataBlocks,this.nbLayers)}extractParameters(e){if(!this.isValidPoint(e[0])||!this.isValidPoint(e[1])||!this.isValidPoint(e[2])||!this.isValidPoint(e[3]))throw new Z;let t=2*this.nbCenterLayers,r=new Int32Array([this.sampleLine(e[0],e[1],t),this.sampleLine(e[1],e[2],t),this.sampleLine(e[2],e[3],t),this.sampleLine(e[3],e[0],t)]);this.shift=this.getRotation(r,t);let n=0;for(let e=0;e<4;e++){let t=r[(this.shift+e)%4];this.compact?(n<<=7,n+=t>>1&127):(n<<=10,n+=(t>>2&992)+(t>>1&31))}let i=this.getCorrectedParameterData(n,this.compact);this.compact?(this.nbLayers=(i>>6)+1,this.nbDataBlocks=(63&i)+1):(this.nbLayers=(i>>11)+1,this.nbDataBlocks=(2047&i)+1)}getRotation(e,t){let r=0;e.forEach((e,n,i)=>{r=(r<<3)+((e>>t-2<<1)+(1&e))}),r=((1&r)<<11)+(r>>1);for(let e=0;e<4;e++)if(2>=k.bitCount(r^this.EXPECTED_CORNER_BITS[e]))return e;throw new Z}getCorrectedParameterData(e,t){let r,n;t?(r=7,n=2):(r=10,n=4);let i=r-n,o=new Int32Array(r);for(let t=r-1;t>=0;--t)o[t]=15&e,e>>=4;try{new ef(eu.AZTEC_PARAM).decode(o,i)}catch(e){throw new Z}let a=0;for(let e=0;e<n;e++)a=(a<<4)+o[e];return a}getBullsEyeCorners(e){let t=e,r=e,n=e,i=e,o=!0;for(this.nbCenterLayers=1;this.nbCenterLayers<9;this.nbCenterLayers++){let e=this.getFirstDifferent(t,o,1,-1),a=this.getFirstDifferent(r,o,1,1),s=this.getFirstDifferent(n,o,-1,1),l=this.getFirstDifferent(i,o,-1,-1);if(this.nbCenterLayers>2){let r=this.distancePoint(l,e)*this.nbCenterLayers/(this.distancePoint(i,t)*(this.nbCenterLayers+2));if(r<.75||r>1.25||!this.isWhiteOrBlackRectangle(e,a,s,l))break}t=e,r=a,n=s,i=l,o=!o}if(5!==this.nbCenterLayers&&7!==this.nbCenterLayers)throw new Z;this.compact=5===this.nbCenterLayers;let a=new ew(t.getX()+.5,t.getY()-.5),s=new ew(r.getX()+.5,r.getY()+.5),l=new ew(n.getX()-.5,n.getY()+.5),c=new ew(i.getX()-.5,i.getY()-.5);return this.expandSquare([a,s,l,c],2*this.nbCenterLayers-3,2*this.nbCenterLayers)}getMatrixCenter(){let e,t,r,n;try{let i=new eE(this.image).detect();e=i[0],t=i[1],r=i[2],n=i[3]}catch(a){let i=this.image.getWidth()/2,o=this.image.getHeight()/2;e=this.getFirstDifferent(new eT(i+7,o-7),!1,1,-1).toResultPoint(),t=this.getFirstDifferent(new eT(i+7,o+7),!1,1,1).toResultPoint(),r=this.getFirstDifferent(new eT(i-7,o+7),!1,-1,1).toResultPoint(),n=this.getFirstDifferent(new eT(i-7,o-7),!1,-1,-1).toResultPoint()}let i=ep.round((e.getX()+n.getX()+t.getX()+r.getX())/4),o=ep.round((e.getY()+n.getY()+t.getY()+r.getY())/4);try{let a=new eE(this.image,15,i,o).detect();e=a[0],t=a[1],r=a[2],n=a[3]}catch(a){e=this.getFirstDifferent(new eT(i+7,o-7),!1,1,-1).toResultPoint(),t=this.getFirstDifferent(new eT(i+7,o+7),!1,1,1).toResultPoint(),r=this.getFirstDifferent(new eT(i-7,o+7),!1,-1,1).toResultPoint(),n=this.getFirstDifferent(new eT(i-7,o-7),!1,-1,-1).toResultPoint()}return i=ep.round((e.getX()+n.getX()+t.getX()+r.getX())/4),new eT(i,o=ep.round((e.getY()+n.getY()+t.getY()+r.getY())/4))}getMatrixCornerPoints(e){return this.expandSquare(e,2*this.nbCenterLayers,this.getDimension())}sampleGrid(e,t,r,n,i){let o=e_.getInstance(),a=this.getDimension(),s=a/2-this.nbCenterLayers,l=a/2+this.nbCenterLayers;return o.sampleGrid(e,a,a,s,s,l,s,l,l,s,l,t.getX(),t.getY(),r.getX(),r.getY(),n.getX(),n.getY(),i.getX(),i.getY())}sampleLine(e,t,r){let n=0,i=this.distanceResultPoint(e,t),o=i/r,a=e.getX(),s=e.getY(),l=o*(t.getX()-e.getX())/i,c=o*(t.getY()-e.getY())/i;for(let e=0;e<r;e++)this.image.get(ep.round(a+e*l),ep.round(s+e*c))&&(n|=1<<r-e-1);return n}isWhiteOrBlackRectangle(e,t,r,n){e=new eT(e.getX()-3,e.getY()+3),t=new eT(t.getX()-3,t.getY()-3),r=new eT(r.getX()+3,r.getY()-3),n=new eT(n.getX()+3,n.getY()+3);let i=this.getColor(n,e);if(0===i)return!1;let o=this.getColor(e,t);return o===i&&(o=this.getColor(t,r))===i&&(o=this.getColor(r,n))===i}getColor(e,t){let r=this.distancePoint(e,t),n=(t.getX()-e.getX())/r,i=(t.getY()-e.getY())/r,o=0,a=e.getX(),s=e.getY(),l=this.image.get(e.getX(),e.getY()),c=Math.ceil(r);for(let e=0;e<c;e++)a+=n,s+=i,this.image.get(ep.round(a),ep.round(s))!==l&&o++;let u=o/r;return u>.1&&u<.9?0:u<=.1===l?1:-1}getFirstDifferent(e,t,r,n){let i=e.getX()+r,o=e.getY()+n;for(;this.isValid(i,o)&&this.image.get(i,o)===t;)i+=r,o+=n;for(i-=r,o-=n;this.isValid(i,o)&&this.image.get(i,o)===t;)i+=r;for(i-=r;this.isValid(i,o)&&this.image.get(i,o)===t;)o+=n;return new eT(i,o-=n)}expandSquare(e,t,r){let n=r/(2*t),i=e[0].getX()-e[2].getX(),o=e[0].getY()-e[2].getY(),a=(e[0].getX()+e[2].getX())/2,s=(e[0].getY()+e[2].getY())/2,l=new ew(a+n*i,s+n*o),c=new ew(a-n*i,s-n*o);i=e[1].getX()-e[3].getX(),o=e[1].getY()-e[3].getY(),a=(e[1].getX()+e[3].getX())/2;let u=new ew(a+n*i,(s=(e[1].getY()+e[3].getY())/2)+n*o),h=new ew(a-n*i,s-n*o);return[l,u,c,h]}isValid(e,t){return e>=0&&e<this.image.getWidth()&&t>0&&t<this.image.getHeight()}isValidPoint(e){let t=ep.round(e.getX()),r=ep.round(e.getY());return this.isValid(t,r)}distancePoint(e,t){return ep.distance(e.getX(),e.getY(),t.getX(),t.getY())}distanceResultPoint(e,t){return ep.distance(e.getX(),e.getY(),t.getX(),t.getY())}getDimension(){return this.compact?4*this.nbLayers+11:this.nbLayers<=4?4*this.nbLayers+15:4*this.nbLayers+2*(k.truncDivision(this.nbLayers-4,8)+1)+15}}class eM{decode(e,t=null){let r=null,n=new eN(e.getBlackMatrix()),i=null,o=null;try{let e=n.detectMirror(!1);i=e.getPoints(),this.reportFoundResultPoints(t,i),o=new eg().decode(e)}catch(e){r=e}if(null==o)try{let e=n.detectMirror(!0);i=e.getPoints(),this.reportFoundResultPoints(t,i),o=new eg().decode(e)}catch(e){if(null!=r)throw r;throw e}let a=new en(o.getText(),o.getRawBytes(),o.getNumBits(),i,ei.AZTEC,P.currentTimeMillis()),s=o.getByteSegments();null!=s&&a.putMetadata(eo.BYTE_SEGMENTS,s);let l=o.getECLevel();return null!=l&&a.putMetadata(eo.ERROR_CORRECTION_LEVEL,l),a}reportFoundResultPoints(e,t){if(null!=e){let r=e.get(H.NEED_RESULT_POINT_CALLBACK);null!=r&&t.forEach((e,t,n)=>{r.foundPossibleResultPoint(e)})}}reset(){}}class eb{decode(e,t){try{return this.doDecode(e,t)}catch(r){if(t&&!0===t.get(H.TRY_HARDER)&&e.isRotateSupported()){let r=e.rotateCounterClockwise(),n=this.doDecode(r,t),i=n.getResultMetadata(),o=270;null!==i&&!0===i.get(eo.ORIENTATION)&&(o+=i.get(eo.ORIENTATION)%360),n.putMetadata(eo.ORIENTATION,o);let a=n.getResultPoints();if(null!==a){let e=r.getHeight();for(let t=0;t<a.length;t++)a[t]=new ew(e-a[t].getY()-1,a[t].getX())}return n}throw new Z}}reset(){}doDecode(e,t){let r;let n=e.getWidth(),i=e.getHeight(),o=new U(n),a=t&&!0===t.get(H.TRY_HARDER),s=Math.max(1,i>>(a?8:5));r=a?i:15;let l=Math.trunc(i/2);for(let a=0;a<r;a++){let r=Math.trunc((a+1)/2),c=l+s*((1&a)==0?r:-r);if(c<0||c>=i)break;try{o=e.getBlackRow(c,o)}catch(e){continue}for(let e=0;e<2;e++){if(1===e&&(o.reverse(),t&&!0===t.get(H.NEED_RESULT_POINT_CALLBACK))){let e=new Map;t.forEach((t,r)=>e.set(r,t)),e.delete(H.NEED_RESULT_POINT_CALLBACK),t=e}try{let r=this.decodeRow(c,o,t);if(1===e){r.putMetadata(eo.ORIENTATION,180);let e=r.getResultPoints();null!==e&&(e[0]=new ew(n-e[0].getX()-1,e[0].getY()),e[1]=new ew(n-e[1].getX()-1,e[1].getY()))}return r}catch(e){}}}throw new Z}static recordPattern(e,t,r){let n=r.length;for(let e=0;e<n;e++)r[e]=0;let i=e.getSize();if(t>=i)throw new Z;let o=!e.get(t),a=0,s=t;for(;s<i;){if(e.get(s)!==o)r[a]++;else{if(++a===n)break;r[a]=1,o=!o}s++}if(!(a===n||a===n-1&&s===i))throw new Z}static recordPatternInReverse(e,t,r){let n=r.length,i=e.get(t);for(;t>0&&n>=0;)e.get(--t)!==i&&(n--,i=!i);if(n>=0)throw new Z;eb.recordPattern(e,t+1,r)}static patternMatchVariance(e,t,r){let n=e.length,i=0,o=0;for(let r=0;r<n;r++)i+=e[r],o+=t[r];if(i<o)return Number.POSITIVE_INFINITY;let a=i/o;r*=a;let s=0;for(let i=0;i<n;i++){let n=e[i],o=t[i]*a,l=n>o?n-o:o-n;if(l>r)return Number.POSITIVE_INFINITY;s+=l}return s/i}}class eD extends eb{static findStartPattern(e){let t=e.getSize(),r=e.getNextSet(0),n=0,i=Int32Array.from([0,0,0,0,0,0]),o=r,a=!1;for(let s=r;s<t;s++)if(e.get(s)!==a)i[n]++;else{if(5===n){let t=eD.MAX_AVG_VARIANCE,r=-1;for(let e=eD.CODE_START_A;e<=eD.CODE_START_C;e++){let n=eb.patternMatchVariance(i,eD.CODE_PATTERNS[e],eD.MAX_INDIVIDUAL_VARIANCE);n<t&&(t=n,r=e)}if(r>=0&&e.isRange(Math.max(0,o-(s-o)/2),o,!1))return Int32Array.from([o,s,r]);o+=i[0]+i[1],(i=i.slice(2,i.length-1))[n-1]=0,i[n]=0,n--}else n++;i[n]=1,a=!a}throw new Z}static decodeCode(e,t,r){eb.recordPattern(e,r,t);let n=eD.MAX_AVG_VARIANCE,i=-1;for(let e=0;e<eD.CODE_PATTERNS.length;e++){let r=eD.CODE_PATTERNS[e],o=this.patternMatchVariance(t,r,eD.MAX_INDIVIDUAL_VARIANCE);o<n&&(n=o,i=e)}if(i>=0)return i;throw new Z}decodeRow(e,t,r){let n;let i=r&&!0===r.get(H.ASSUME_GS1),o=eD.findStartPattern(t),a=o[2],s=0,l=new Uint8Array(20);switch(l[s++]=a,a){case eD.CODE_START_A:n=eD.CODE_CODE_A;break;case eD.CODE_START_B:n=eD.CODE_CODE_B;break;case eD.CODE_START_C:n=eD.CODE_CODE_C;break;default:throw new z}let c=!1,u=!1,h="",d=o[0],f=o[1],g=Int32Array.from([0,0,0,0,0,0]),p=0,m=0,w=a,A=0,C=!0,E=!1,I=!1;for(;!c;){let e=u;switch(u=!1,p=m,m=eD.decodeCode(t,g,f),l[s++]=m,m!==eD.CODE_STOP&&(C=!0),m!==eD.CODE_STOP&&(w+=++A*m),d=f,f+=g.reduce((e,t)=>e+t,0),m){case eD.CODE_START_A:case eD.CODE_START_B:case eD.CODE_START_C:throw new z}switch(n){case eD.CODE_CODE_A:if(m<64)I===E?h+=String.fromCharCode(32+m):h+=String.fromCharCode(32+m+128),I=!1;else if(m<96)I===E?h+=String.fromCharCode(m-64):h+=String.fromCharCode(m+64),I=!1;else switch(m!==eD.CODE_STOP&&(C=!1),m){case eD.CODE_FNC_1:i&&(0===h.length?h+="]C1":h+="\x1d");break;case eD.CODE_FNC_2:case eD.CODE_FNC_3:break;case eD.CODE_FNC_4_A:!E&&I?(E=!0,I=!1):E&&I?(E=!1,I=!1):I=!0;break;case eD.CODE_SHIFT:u=!0,n=eD.CODE_CODE_B;break;case eD.CODE_CODE_B:n=eD.CODE_CODE_B;break;case eD.CODE_CODE_C:n=eD.CODE_CODE_C;break;case eD.CODE_STOP:c=!0}break;case eD.CODE_CODE_B:if(m<96)I===E?h+=String.fromCharCode(32+m):h+=String.fromCharCode(32+m+128),I=!1;else switch(m!==eD.CODE_STOP&&(C=!1),m){case eD.CODE_FNC_1:i&&(0===h.length?h+="]C1":h+="\x1d");break;case eD.CODE_FNC_2:case eD.CODE_FNC_3:break;case eD.CODE_FNC_4_B:!E&&I?(E=!0,I=!1):E&&I?(E=!1,I=!1):I=!0;break;case eD.CODE_SHIFT:u=!0,n=eD.CODE_CODE_A;break;case eD.CODE_CODE_A:n=eD.CODE_CODE_A;break;case eD.CODE_CODE_C:n=eD.CODE_CODE_C;break;case eD.CODE_STOP:c=!0}break;case eD.CODE_CODE_C:if(m<100)m<10&&(h+="0"),h+=m;else switch(m!==eD.CODE_STOP&&(C=!1),m){case eD.CODE_FNC_1:i&&(0===h.length?h+="]C1":h+="\x1d");break;case eD.CODE_CODE_A:n=eD.CODE_CODE_A;break;case eD.CODE_CODE_B:n=eD.CODE_CODE_B;break;case eD.CODE_STOP:c=!0}}e&&(n=n===eD.CODE_CODE_A?eD.CODE_CODE_B:eD.CODE_CODE_A)}let S=f-d;if(f=t.getNextUnset(f),!t.isRange(f,Math.min(t.getSize(),f+(f-d)/2),!1))throw new Z;if((w-=A*p)%103!==p)throw new v;let y=h.length;if(0===y)throw new Z;y>0&&C&&(h=n===eD.CODE_CODE_C?h.substring(0,y-2):h.substring(0,y-1));let _=(o[1]+o[0])/2,T=d+S/2,N=l.length,M=new Uint8Array(N);for(let e=0;e<N;e++)M[e]=l[e];return new en(h,M,0,[new ew(_,e),new ew(T,e)],ei.CODE_128,new Date().getTime())}}eD.CODE_PATTERNS=[Int32Array.from([2,1,2,2,2,2]),Int32Array.from([2,2,2,1,2,2]),Int32Array.from([2,2,2,2,2,1]),Int32Array.from([1,2,1,2,2,3]),Int32Array.from([1,2,1,3,2,2]),Int32Array.from([1,3,1,2,2,2]),Int32Array.from([1,2,2,2,1,3]),Int32Array.from([1,2,2,3,1,2]),Int32Array.from([1,3,2,2,1,2]),Int32Array.from([2,2,1,2,1,3]),Int32Array.from([2,2,1,3,1,2]),Int32Array.from([2,3,1,2,1,2]),Int32Array.from([1,1,2,2,3,2]),Int32Array.from([1,2,2,1,3,2]),Int32Array.from([1,2,2,2,3,1]),Int32Array.from([1,1,3,2,2,2]),Int32Array.from([1,2,3,1,2,2]),Int32Array.from([1,2,3,2,2,1]),Int32Array.from([2,2,3,2,1,1]),Int32Array.from([2,2,1,1,3,2]),Int32Array.from([2,2,1,2,3,1]),Int32Array.from([2,1,3,2,1,2]),Int32Array.from([2,2,3,1,1,2]),Int32Array.from([3,1,2,1,3,1]),Int32Array.from([3,1,1,2,2,2]),Int32Array.from([3,2,1,1,2,2]),Int32Array.from([3,2,1,2,2,1]),Int32Array.from([3,1,2,2,1,2]),Int32Array.from([3,2,2,1,1,2]),Int32Array.from([3,2,2,2,1,1]),Int32Array.from([2,1,2,1,2,3]),Int32Array.from([2,1,2,3,2,1]),Int32Array.from([2,3,2,1,2,1]),Int32Array.from([1,1,1,3,2,3]),Int32Array.from([1,3,1,1,2,3]),Int32Array.from([1,3,1,3,2,1]),Int32Array.from([1,1,2,3,1,3]),Int32Array.from([1,3,2,1,1,3]),Int32Array.from([1,3,2,3,1,1]),Int32Array.from([2,1,1,3,1,3]),Int32Array.from([2,3,1,1,1,3]),Int32Array.from([2,3,1,3,1,1]),Int32Array.from([1,1,2,1,3,3]),Int32Array.from([1,1,2,3,3,1]),Int32Array.from([1,3,2,1,3,1]),Int32Array.from([1,1,3,1,2,3]),Int32Array.from([1,1,3,3,2,1]),Int32Array.from([1,3,3,1,2,1]),Int32Array.from([3,1,3,1,2,1]),Int32Array.from([2,1,1,3,3,1]),Int32Array.from([2,3,1,1,3,1]),Int32Array.from([2,1,3,1,1,3]),Int32Array.from([2,1,3,3,1,1]),Int32Array.from([2,1,3,1,3,1]),Int32Array.from([3,1,1,1,2,3]),Int32Array.from([3,1,1,3,2,1]),Int32Array.from([3,3,1,1,2,1]),Int32Array.from([3,1,2,1,1,3]),Int32Array.from([3,1,2,3,1,1]),Int32Array.from([3,3,2,1,1,1]),Int32Array.from([3,1,4,1,1,1]),Int32Array.from([2,2,1,4,1,1]),Int32Array.from([4,3,1,1,1,1]),Int32Array.from([1,1,1,2,2,4]),Int32Array.from([1,1,1,4,2,2]),Int32Array.from([1,2,1,1,2,4]),Int32Array.from([1,2,1,4,2,1]),Int32Array.from([1,4,1,1,2,2]),Int32Array.from([1,4,1,2,2,1]),Int32Array.from([1,1,2,2,1,4]),Int32Array.from([1,1,2,4,1,2]),Int32Array.from([1,2,2,1,1,4]),Int32Array.from([1,2,2,4,1,1]),Int32Array.from([1,4,2,1,1,2]),Int32Array.from([1,4,2,2,1,1]),Int32Array.from([2,4,1,2,1,1]),Int32Array.from([2,2,1,1,1,4]),Int32Array.from([4,1,3,1,1,1]),Int32Array.from([2,4,1,1,1,2]),Int32Array.from([1,3,4,1,1,1]),Int32Array.from([1,1,1,2,4,2]),Int32Array.from([1,2,1,1,4,2]),Int32Array.from([1,2,1,2,4,1]),Int32Array.from([1,1,4,2,1,2]),Int32Array.from([1,2,4,1,1,2]),Int32Array.from([1,2,4,2,1,1]),Int32Array.from([4,1,1,2,1,2]),Int32Array.from([4,2,1,1,1,2]),Int32Array.from([4,2,1,2,1,1]),Int32Array.from([2,1,2,1,4,1]),Int32Array.from([2,1,4,1,2,1]),Int32Array.from([4,1,2,1,2,1]),Int32Array.from([1,1,1,1,4,3]),Int32Array.from([1,1,1,3,4,1]),Int32Array.from([1,3,1,1,4,1]),Int32Array.from([1,1,4,1,1,3]),Int32Array.from([1,1,4,3,1,1]),Int32Array.from([4,1,1,1,1,3]),Int32Array.from([4,1,1,3,1,1]),Int32Array.from([1,1,3,1,4,1]),Int32Array.from([1,1,4,1,3,1]),Int32Array.from([3,1,1,1,4,1]),Int32Array.from([4,1,1,1,3,1]),Int32Array.from([2,1,1,4,1,2]),Int32Array.from([2,1,1,2,1,4]),Int32Array.from([2,1,1,2,3,2]),Int32Array.from([2,3,3,1,1,1,2])],eD.MAX_AVG_VARIANCE=.25,eD.MAX_INDIVIDUAL_VARIANCE=.7,eD.CODE_SHIFT=98,eD.CODE_CODE_C=99,eD.CODE_CODE_B=100,eD.CODE_CODE_A=101,eD.CODE_FNC_1=102,eD.CODE_FNC_2=97,eD.CODE_FNC_3=96,eD.CODE_FNC_4_A=101,eD.CODE_FNC_4_B=100,eD.CODE_START_A=103,eD.CODE_START_B=104,eD.CODE_START_C=105,eD.CODE_STOP=106;class eR extends eb{constructor(e=!1,t=!1){super(),this.usingCheckDigit=e,this.extendedMode=t,this.decodeRowResult="",this.counters=new Int32Array(9)}decodeRow(e,t,r){let n,i,o,a=this.counters;a.fill(0),this.decodeRowResult="";let s=eR.findAsteriskPattern(t,a),l=t.getNextSet(s[1]),c=t.getSize();do{eR.recordPattern(t,l,a);let e=eR.toNarrowWidePattern(a);if(e<0)throw new Z;for(let t of(n=eR.patternToChar(e),this.decodeRowResult+=n,i=l,a))l+=t;l=t.getNextSet(l)}while("*"!==n);this.decodeRowResult=this.decodeRowResult.substring(0,this.decodeRowResult.length-1);let u=0;for(let e of a)u+=e;let h=l-i-u;if(l!==c&&2*h<u)throw new Z;if(this.usingCheckDigit){let e=this.decodeRowResult.length-1,t=0;for(let r=0;r<e;r++)t+=eR.ALPHABET_STRING.indexOf(this.decodeRowResult.charAt(r));if(this.decodeRowResult.charAt(e)!==eR.ALPHABET_STRING.charAt(t%43))throw new v;this.decodeRowResult=this.decodeRowResult.substring(0,e)}if(0===this.decodeRowResult.length)throw new Z;o=this.extendedMode?eR.decodeExtended(this.decodeRowResult):this.decodeRowResult;let d=(s[1]+s[0])/2,f=i+u/2;return new en(o,null,0,[new ew(d,e),new ew(f,e)],ei.CODE_39,new Date().getTime())}static findAsteriskPattern(e,t){let r=e.getSize(),n=e.getNextSet(0),i=0,o=n,a=!1,s=t.length;for(let l=n;l<r;l++)if(e.get(l)!==a)t[i]++;else{if(i===s-1){if(this.toNarrowWidePattern(t)===eR.ASTERISK_ENCODING&&e.isRange(Math.max(0,o-Math.floor((l-o)/2)),o,!1))return[o,l];o+=t[0]+t[1],t.copyWithin(0,2,2+i-1),t[i-1]=0,t[i]=0,i--}else i++;t[i]=1,a=!a}throw new Z}static toNarrowWidePattern(e){let t,r=e.length,n=0;do{let i=0x7fffffff;for(let t of e)t<i&&t>n&&(i=t);n=i,t=0;let o=0,a=0;for(let i=0;i<r;i++){let s=e[i];s>n&&(a|=1<<r-1-i,t++,o+=s)}if(3===t){for(let i=0;i<r&&t>0;i++){let r=e[i];if(r>n&&(t--,2*r>=o))return -1}return a}}while(t>3);return -1}static patternToChar(e){for(let t=0;t<eR.CHARACTER_ENCODINGS.length;t++)if(eR.CHARACTER_ENCODINGS[t]===e)return eR.ALPHABET_STRING.charAt(t);if(e===eR.ASTERISK_ENCODING)return"*";throw new Z}static decodeExtended(e){let t=e.length,r="";for(let n=0;n<t;n++){let t=e.charAt(n);if("+"===t||"$"===t||"%"===t||"/"===t){let i=e.charAt(n+1),o="\0";switch(t){case"+":if(i>="A"&&i<="Z")o=String.fromCharCode(i.charCodeAt(0)+32);else throw new z;break;case"$":if(i>="A"&&i<="Z")o=String.fromCharCode(i.charCodeAt(0)-64);else throw new z;break;case"%":if(i>="A"&&i<="E")o=String.fromCharCode(i.charCodeAt(0)-38);else if(i>="F"&&i<="J")o=String.fromCharCode(i.charCodeAt(0)-11);else if(i>="K"&&i<="O")o=String.fromCharCode(i.charCodeAt(0)+16);else if(i>="P"&&i<="T")o=String.fromCharCode(i.charCodeAt(0)+43);else if("U"===i)o="\0";else if("V"===i)o="@";else if("W"===i)o="`";else if("X"===i||"Y"===i||"Z"===i)o="\x7f";else throw new z;break;case"/":if(i>="A"&&i<="O")o=String.fromCharCode(i.charCodeAt(0)-32);else if("Z"===i)o=":";else throw new z}r+=o,n++}else r+=t}return r}}eR.ALPHABET_STRING="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ-. $/+%",eR.CHARACTER_ENCODINGS=[52,289,97,352,49,304,112,37,292,100,265,73,328,25,280,88,13,268,76,28,259,67,322,19,274,82,7,262,70,22,385,193,448,145,400,208,133,388,196,168,162,138,42],eR.ASTERISK_ENCODING=148;class eO extends eb{constructor(){super(...arguments),this.narrowLineWidth=-1}decodeRow(e,t,r){let n=this.decodeStart(t),i=this.decodeEnd(t),o=new Y;eO.decodeMiddle(t,n[1],i[0],o);let a=o.toString(),s=null;null!=r&&(s=r.get(H.ALLOWED_LENGTHS)),null==s&&(s=eO.DEFAULT_ALLOWED_LENGTHS);let l=a.length,c=!1,u=0;for(let e of s){if(l===e){c=!0;break}e>u&&(u=e)}if(!c&&l>u&&(c=!0),!c)throw new z;return new en(a,null,0,[new ew(n[1],e),new ew(i[0],e)],ei.ITF,new Date().getTime())}static decodeMiddle(e,t,r,n){let i=new Int32Array(10),o=new Int32Array(5),a=new Int32Array(5);for(i.fill(0),o.fill(0),a.fill(0);t<r;){eb.recordPattern(e,t,i);for(let e=0;e<5;e++){let t=2*e;o[e]=i[t],a[e]=i[t+1]}let r=eO.decodeDigit(o);n.append(r.toString()),r=this.decodeDigit(a),n.append(r.toString()),i.forEach(function(e){t+=e})}}decodeStart(e){let t=eO.skipWhiteSpace(e),r=eO.findGuardPattern(e,t,eO.START_PATTERN);return this.narrowLineWidth=(r[1]-r[0])/4,this.validateQuietZone(e,r[0]),r}validateQuietZone(e,t){let r=10*this.narrowLineWidth;r=r<t?r:t;for(let n=t-1;r>0&&n>=0&&!e.get(n);n--){;r--}if(0!==r)throw new Z}static skipWhiteSpace(e){let t=e.getSize(),r=e.getNextSet(0);if(r===t)throw new Z;return r}decodeEnd(e){e.reverse();try{let t,r=eO.skipWhiteSpace(e);try{t=eO.findGuardPattern(e,r,eO.END_PATTERN_REVERSED[0])}catch(n){n instanceof Z&&(t=eO.findGuardPattern(e,r,eO.END_PATTERN_REVERSED[1]))}this.validateQuietZone(e,t[0]);let n=t[0];return t[0]=e.getSize()-t[1],t[1]=e.getSize()-n,t}finally{e.reverse()}}static findGuardPattern(e,t,r){let n=r.length,i=new Int32Array(n),o=e.getSize(),a=!1,s=0,l=t;i.fill(0);for(let c=t;c<o;c++)if(e.get(c)!==a)i[s]++;else{if(s===n-1){if(eb.patternMatchVariance(i,r,eO.MAX_INDIVIDUAL_VARIANCE)<eO.MAX_AVG_VARIANCE)return[l,c];l+=i[0]+i[1],P.arraycopy(i,2,i,0,s-1),i[s-1]=0,i[s]=0,s--}else s++;i[s]=1,a=!a}throw new Z}static decodeDigit(e){let t=eO.MAX_AVG_VARIANCE,r=-1,n=eO.PATTERNS.length;for(let i=0;i<n;i++){let n=eO.PATTERNS[i],o=eb.patternMatchVariance(e,n,eO.MAX_INDIVIDUAL_VARIANCE);o<t?(t=o,r=i):o===t&&(r=-1)}if(r>=0)return r%10;throw new Z}}eO.PATTERNS=[Int32Array.from([1,1,2,2,1]),Int32Array.from([2,1,1,1,2]),Int32Array.from([1,2,1,1,2]),Int32Array.from([2,2,1,1,1]),Int32Array.from([1,1,2,1,2]),Int32Array.from([2,1,2,1,1]),Int32Array.from([1,2,2,1,1]),Int32Array.from([1,1,1,2,2]),Int32Array.from([2,1,1,2,1]),Int32Array.from([1,2,1,2,1]),Int32Array.from([1,1,3,3,1]),Int32Array.from([3,1,1,1,3]),Int32Array.from([1,3,1,1,3]),Int32Array.from([3,3,1,1,1]),Int32Array.from([1,1,3,1,3]),Int32Array.from([3,1,3,1,1]),Int32Array.from([1,3,3,1,1]),Int32Array.from([1,1,1,3,3]),Int32Array.from([3,1,1,3,1]),Int32Array.from([1,3,1,3,1])],eO.MAX_AVG_VARIANCE=.38,eO.MAX_INDIVIDUAL_VARIANCE=.5,eO.DEFAULT_ALLOWED_LENGTHS=[6,8,10,12,14],eO.START_PATTERN=Int32Array.from([1,1,1,1]),eO.END_PATTERN_REVERSED=[Int32Array.from([1,1,2]),Int32Array.from([1,1,3])];class ev extends eb{constructor(){super(...arguments),this.decodeRowStringBuffer=""}static findStartGuardPattern(e){let t,r=!1,n=0,i=Int32Array.from([0,0,0]);for(;!r;){i=Int32Array.from([0,0,0]);let o=(t=ev.findGuardPattern(e,n,!1,this.START_END_PATTERN,i))[0],a=o-((n=t[1])-o);a>=0&&(r=e.isRange(a,o,!1))}return t}static checkChecksum(e){return ev.checkStandardUPCEANChecksum(e)}static checkStandardUPCEANChecksum(e){let t=e.length;if(0===t)return!1;let r=parseInt(e.charAt(t-1),10);return ev.getStandardUPCEANChecksum(e.substring(0,t-1))===r}static getStandardUPCEANChecksum(e){let t=e.length,r=0;for(let n=t-1;n>=0;n-=2){let t=e.charAt(n).charCodeAt(0)-48;if(t<0||t>9)throw new z;r+=t}r*=3;for(let n=t-2;n>=0;n-=2){let t=e.charAt(n).charCodeAt(0)-48;if(t<0||t>9)throw new z;r+=t}return(1e3-r)%10}static decodeEnd(e,t){return ev.findGuardPattern(e,t,!1,ev.START_END_PATTERN,new Int32Array(ev.START_END_PATTERN.length).fill(0))}static findGuardPatternWithoutCounters(e,t,r,n){return this.findGuardPattern(e,t,r,n,new Int32Array(n.length))}static findGuardPattern(e,t,r,n,i){let o=e.getSize();t=r?e.getNextUnset(t):e.getNextSet(t);let a=0,s=t,l=n.length,c=r;for(let r=t;r<o;r++)if(e.get(r)!==c)i[a]++;else{if(a===l-1){if(eb.patternMatchVariance(i,n,ev.MAX_INDIVIDUAL_VARIANCE)<ev.MAX_AVG_VARIANCE)return Int32Array.from([s,r]);s+=i[0]+i[1];let e=i.slice(2,i.length-1);for(let t=0;t<a-1;t++)i[t]=e[t];i[a-1]=0,i[a]=0,a--}else a++;i[a]=1,c=!c}throw new Z}static decodeDigit(e,t,r,n){this.recordPattern(e,r,t);let i=this.MAX_AVG_VARIANCE,o=-1,a=n.length;for(let e=0;e<a;e++){let r=n[e],a=eb.patternMatchVariance(t,r,ev.MAX_INDIVIDUAL_VARIANCE);a<i&&(i=a,o=e)}if(o>=0)return o;throw new Z}}ev.MAX_AVG_VARIANCE=.48,ev.MAX_INDIVIDUAL_VARIANCE=.7,ev.START_END_PATTERN=Int32Array.from([1,1,1]),ev.MIDDLE_PATTERN=Int32Array.from([1,1,1,1,1]),ev.END_PATTERN=Int32Array.from([1,1,1,1,1,1]),ev.L_PATTERNS=[Int32Array.from([3,2,1,1]),Int32Array.from([2,2,2,1]),Int32Array.from([2,1,2,2]),Int32Array.from([1,4,1,1]),Int32Array.from([1,1,3,2]),Int32Array.from([1,2,3,1]),Int32Array.from([1,1,1,4]),Int32Array.from([1,3,1,2]),Int32Array.from([1,2,1,3]),Int32Array.from([3,1,1,2])];class eB{constructor(){this.CHECK_DIGIT_ENCODINGS=[24,20,18,17,12,6,3,10,9,5],this.decodeMiddleCounters=Int32Array.from([0,0,0,0]),this.decodeRowStringBuffer=""}decodeRow(e,t,r){let n=this.decodeRowStringBuffer,i=this.decodeMiddle(t,r,n),o=n.toString(),a=eB.parseExtensionString(o),s=new en(o,null,0,[new ew((r[0]+r[1])/2,e),new ew(i,e)],ei.UPC_EAN_EXTENSION,new Date().getTime());return null!=a&&s.putAllMetadata(a),s}decodeMiddle(e,t,r){let n=this.decodeMiddleCounters;n[0]=0,n[1]=0,n[2]=0,n[3]=0;let i=e.getSize(),o=t[1],a=0;for(let t=0;t<5&&o<i;t++){let i=ev.decodeDigit(e,n,o,ev.L_AND_G_PATTERNS);for(let e of(r+=String.fromCharCode(48+i%10),n))o+=e;i>=10&&(a|=1<<4-t),4!==t&&(o=e.getNextSet(o),o=e.getNextUnset(o))}if(5!==r.length)throw new Z;let s=this.determineCheckDigit(a);if(eB.extensionChecksum(r.toString())!==s)throw new Z;return o}static extensionChecksum(e){let t=e.length,r=0;for(let n=t-2;n>=0;n-=2)r+=e.charAt(n).charCodeAt(0)-48;r*=3;for(let n=t-1;n>=0;n-=2)r+=e.charAt(n).charCodeAt(0)-48;return(r*=3)%10}determineCheckDigit(e){for(let t=0;t<10;t++)if(e===this.CHECK_DIGIT_ENCODINGS[t])return t;throw new Z}static parseExtensionString(e){if(5!==e.length)return null;let t=eB.parseExtension5String(e);return null==t?null:new Map([[eo.SUGGESTED_PRICE,t]])}static parseExtension5String(e){let t;switch(e.charAt(0)){case"0":t="\xa3";break;case"5":t="$";break;case"9":switch(e){case"90000":return null;case"99991":return"0.00";case"99990":return"Used"}t="";break;default:t=""}let r=parseInt(e.substring(1)),n=(r/100).toString(),i=r%100;return t+n+"."+(i<10?"0"+i:i.toString())}}class eP{constructor(){this.decodeMiddleCounters=Int32Array.from([0,0,0,0]),this.decodeRowStringBuffer=""}decodeRow(e,t,r){let n=this.decodeRowStringBuffer,i=this.decodeMiddle(t,r,n),o=n.toString(),a=eP.parseExtensionString(o),s=new en(o,null,0,[new ew((r[0]+r[1])/2,e),new ew(i,e)],ei.UPC_EAN_EXTENSION,new Date().getTime());return null!=a&&s.putAllMetadata(a),s}decodeMiddle(e,t,r){let n=this.decodeMiddleCounters;n[0]=0,n[1]=0,n[2]=0,n[3]=0;let i=e.getSize(),o=t[1],a=0;for(let t=0;t<2&&o<i;t++){let i=ev.decodeDigit(e,n,o,ev.L_AND_G_PATTERNS);for(let e of(r+=String.fromCharCode(48+i%10),n))o+=e;i>=10&&(a|=1<<1-t),1!==t&&(o=e.getNextSet(o),o=e.getNextUnset(o))}if(2!==r.length||parseInt(r.toString())%4!==a)throw new Z;return o}static parseExtensionString(e){return 2!==e.length?null:new Map([[eo.ISSUE_NUMBER,parseInt(e)]])}}class eL{static decodeRow(e,t,r){let n=ev.findGuardPattern(t,r,!1,this.EXTENSION_START_PATTERN,new Int32Array(this.EXTENSION_START_PATTERN.length).fill(0));try{return new eB().decodeRow(e,t,n)}catch(r){return new eP().decodeRow(e,t,n)}}}eL.EXTENSION_START_PATTERN=Int32Array.from([1,1,2]);class ex extends ev{constructor(){super(),this.decodeRowStringBuffer="",ex.L_AND_G_PATTERNS=ex.L_PATTERNS.map(e=>Int32Array.from(e));for(let e=10;e<20;e++){let t=ex.L_PATTERNS[e-10],r=new Int32Array(t.length);for(let e=0;e<t.length;e++)r[e]=t[t.length-e-1];ex.L_AND_G_PATTERNS[e]=r}}decodeRow(e,t,r){let n=ex.findStartGuardPattern(t),i=null==r?null:r.get(H.NEED_RESULT_POINT_CALLBACK);if(null!=i){let t=new ew((n[0]+n[1])/2,e);i.foundPossibleResultPoint(t)}let o=this.decodeMiddle(t,n,this.decodeRowStringBuffer),a=o.rowOffset,s=o.resultString;if(null!=i){let t=new ew(a,e);i.foundPossibleResultPoint(t)}let l=this.decodeEnd(t,a);if(null!=i){let t=new ew((l[0]+l[1])/2,e);i.foundPossibleResultPoint(t)}let c=l[1],u=c+(c-l[0]);if(u>=t.getSize()||!t.isRange(c,u,!1))throw new Z;let h=s.toString();if(h.length<8)throw new z;if(!ex.checkChecksum(h))throw new v;let d=(n[1]+n[0])/2,f=(l[1]+l[0])/2,g=this.getBarcodeFormat(),p=new en(h,null,0,[new ew(d,e),new ew(f,e)],g,new Date().getTime()),m=0;try{let r=eL.decodeRow(e,t,l[1]);p.putMetadata(eo.UPC_EAN_EXTENSION,r.getText()),p.putAllMetadata(r.getResultMetadata()),p.addResultPoints(r.getResultPoints()),m=r.getText().length}catch(e){}let w=null==r?null:r.get(H.ALLOWED_EAN_EXTENSIONS);if(null!=w){let e=!1;for(let t in w)if(m.toString()===t){e=!0;break}if(!e)throw new Z}return p}decodeEnd(e,t){return ex.findGuardPattern(e,t,!1,ex.START_END_PATTERN,new Int32Array(ex.START_END_PATTERN.length).fill(0))}static checkChecksum(e){return ex.checkStandardUPCEANChecksum(e)}static checkStandardUPCEANChecksum(e){let t=e.length;if(0===t)return!1;let r=parseInt(e.charAt(t-1),10);return ex.getStandardUPCEANChecksum(e.substring(0,t-1))===r}static getStandardUPCEANChecksum(e){let t=e.length,r=0;for(let n=t-1;n>=0;n-=2){let t=e.charAt(n).charCodeAt(0)-48;if(t<0||t>9)throw new z;r+=t}r*=3;for(let n=t-2;n>=0;n-=2){let t=e.charAt(n).charCodeAt(0)-48;if(t<0||t>9)throw new z;r+=t}return(1e3-r)%10}}class eF extends ex{constructor(){super(),this.decodeMiddleCounters=Int32Array.from([0,0,0,0])}decodeMiddle(e,t,r){let n=this.decodeMiddleCounters;n[0]=0,n[1]=0,n[2]=0,n[3]=0;let i=e.getSize(),o=t[1],a=0;for(let t=0;t<6&&o<i;t++){let i=ex.decodeDigit(e,n,o,ex.L_AND_G_PATTERNS);for(let e of(r+=String.fromCharCode(48+i%10),n))o+=e;i>=10&&(a|=1<<5-t)}r=eF.determineFirstDigit(r,a),o=ex.findGuardPattern(e,o,!0,ex.MIDDLE_PATTERN,new Int32Array(ex.MIDDLE_PATTERN.length).fill(0))[1];for(let t=0;t<6&&o<i;t++){let t=ex.decodeDigit(e,n,o,ex.L_PATTERNS);for(let e of(r+=String.fromCharCode(48+t),n))o+=e}return{rowOffset:o,resultString:r}}getBarcodeFormat(){return ei.EAN_13}static determineFirstDigit(e,t){for(let r=0;r<10;r++)if(t===this.FIRST_DIGIT_ENCODINGS[r])return e=String.fromCharCode(48+r)+e;throw new Z}}eF.FIRST_DIGIT_ENCODINGS=[0,11,13,14,19,25,28,21,22,26];class ek extends ex{constructor(){super(),this.decodeMiddleCounters=Int32Array.from([0,0,0,0])}decodeMiddle(e,t,r){let n=this.decodeMiddleCounters;n[0]=0,n[1]=0,n[2]=0,n[3]=0;let i=e.getSize(),o=t[1];for(let t=0;t<4&&o<i;t++){let t=ex.decodeDigit(e,n,o,ex.L_PATTERNS);for(let e of(r+=String.fromCharCode(48+t),n))o+=e}o=ex.findGuardPattern(e,o,!0,ex.MIDDLE_PATTERN,new Int32Array(ex.MIDDLE_PATTERN.length).fill(0))[1];for(let t=0;t<4&&o<i;t++){let t=ex.decodeDigit(e,n,o,ex.L_PATTERNS);for(let e of(r+=String.fromCharCode(48+t),n))o+=e}return{rowOffset:o,resultString:r}}getBarcodeFormat(){return ei.EAN_8}}class eU extends ex{constructor(){super(...arguments),this.ean13Reader=new eF}getBarcodeFormat(){return ei.UPC_A}decode(e,t){return this.maybeReturnResult(this.ean13Reader.decode(e))}decodeRow(e,t,r){return this.maybeReturnResult(this.ean13Reader.decodeRow(e,t,r))}decodeMiddle(e,t,r){return this.ean13Reader.decodeMiddle(e,t,r)}maybeReturnResult(e){let t=e.getText();if("0"===t.charAt(0)){let r=new en(t.substring(1),null,null,e.getResultPoints(),ei.UPC_A);return null!=e.getResultMetadata()&&r.putAllMetadata(e.getResultMetadata()),r}throw new Z}reset(){this.ean13Reader.reset()}}class eH extends ex{constructor(){super(),this.decodeMiddleCounters=new Int32Array(4)}decodeMiddle(e,t,r){let n=this.decodeMiddleCounters.map(e=>e);n[0]=0,n[1]=0,n[2]=0,n[3]=0;let i=e.getSize(),o=t[1],a=0;for(let t=0;t<6&&o<i;t++){let i=eH.decodeDigit(e,n,o,eH.L_AND_G_PATTERNS);for(let e of(r+=String.fromCharCode(48+i%10),n))o+=e;i>=10&&(a|=1<<5-t)}return{rowOffset:o,resultString:eH.determineNumSysAndCheckDigit(r,a)}}decodeEnd(e,t){return eH.findGuardPatternWithoutCounters(e,t,!0,eH.MIDDLE_END_PATTERN)}checkChecksum(e){return ex.checkChecksum(eH.convertUPCEtoUPCA(e))}static determineNumSysAndCheckDigit(e,t){for(let r=0;r<=1;r++)for(let n=0;n<10;n++)if(t===this.NUMSYS_AND_CHECK_DIGIT_PATTERNS[r][n])return String.fromCharCode(48+r)+e+String.fromCharCode(48+n);throw Z.getNotFoundInstance()}getBarcodeFormat(){return ei.UPC_E}static convertUPCEtoUPCA(e){let t=e.slice(1,7).split("").map(e=>e.charCodeAt(0)),r=new Y;r.append(e.charAt(0));let n=t[5];switch(n){case 0:case 1:case 2:r.appendChars(t,0,2),r.append(n),r.append("0000"),r.appendChars(t,2,3);break;case 3:r.appendChars(t,0,3),r.append("00000"),r.appendChars(t,3,2);break;case 4:r.appendChars(t,0,4),r.append("00000"),r.append(t[4]);break;default:r.appendChars(t,0,5),r.append("0000"),r.append(n)}return e.length>=8&&r.append(e.charAt(7)),r.toString()}}eH.MIDDLE_END_PATTERN=Int32Array.from([1,1,1,1,1,1]),eH.NUMSYS_AND_CHECK_DIGIT_PATTERNS=[Int32Array.from([56,52,50,49,44,38,35,42,41,37]),Int32Array.from([7,11,13,14,19,25,28,21,22,26])];class ez extends eb{constructor(e){var t;super();let r=null==e?null:e.get(H.POSSIBLE_FORMATS),n=[];if(null==(t=r))n.push(new eF),n.push(new eU),n.push(new ek),n.push(new eH);else r.indexOf(ei.EAN_13)>-1&&n.push(new eF),r.indexOf(ei.UPC_A)>-1&&n.push(new eU),r.indexOf(ei.EAN_8)>-1&&n.push(new ek),r.indexOf(ei.UPC_E)>-1&&n.push(new eH);this.readers=n}decodeRow(e,t,r){for(let n of this.readers)try{let i=n.decodeRow(e,t,r),o=i.getBarcodeFormat()===ei.EAN_13&&"0"===i.getText().charAt(0),a=null==r?null:r.get(H.POSSIBLE_FORMATS),s=null==a||a.includes(ei.UPC_A);if(o&&s){let e=i.getRawBytes(),t=new en(i.getText().substring(1),e,e?e.length:null,i.getResultPoints(),ei.UPC_A);return t.putAllMetadata(i.getResultMetadata()),t}return i}catch(e){}throw new Z}reset(){for(let e of this.readers)e.reset()}}class eV extends eb{constructor(){super(),this.decodeFinderCounters=new Int32Array(4),this.dataCharacterCounters=new Int32Array(8),this.oddRoundingErrors=[,,,,],this.evenRoundingErrors=[,,,,],this.oddCounts=Array(this.dataCharacterCounters.length/2),this.evenCounts=Array(this.dataCharacterCounters.length/2)}getDecodeFinderCounters(){return this.decodeFinderCounters}getDataCharacterCounters(){return this.dataCharacterCounters}getOddRoundingErrors(){return this.oddRoundingErrors}getEvenRoundingErrors(){return this.evenRoundingErrors}getOddCounts(){return this.oddCounts}getEvenCounts(){return this.evenCounts}parseFinderValue(e,t){for(let r=0;r<t.length;r++)if(eb.patternMatchVariance(e,t[r],eV.MAX_INDIVIDUAL_VARIANCE)<eV.MAX_AVG_VARIANCE)return r;throw new Z}static count(e){return ep.sum(new Int32Array(e))}static increment(e,t){let r=0,n=t[0];for(let i=1;i<e.length;i++)t[i]>n&&(n=t[i],r=i);e[r]++}static decrement(e,t){let r=0,n=t[0];for(let i=1;i<e.length;i++)t[i]<n&&(n=t[i],r=i);e[r]--}static isFinderPattern(e){let t=e[0]+e[1],r=t+e[2]+e[3],n=t/r;if(n>=eV.MIN_FINDER_PATTERN_RATIO&&n<=eV.MAX_FINDER_PATTERN_RATIO){let t=Number.MAX_SAFE_INTEGER,r=Number.MIN_SAFE_INTEGER;for(let n of e)n>r&&(r=n),n<t&&(t=n);return r<10*t}return!1}}eV.MAX_AVG_VARIANCE=.2,eV.MAX_INDIVIDUAL_VARIANCE=.45,eV.MIN_FINDER_PATTERN_RATIO=9.5/12,eV.MAX_FINDER_PATTERN_RATIO=12.5/14;class ej{constructor(e,t){this.value=e,this.checksumPortion=t}getValue(){return this.value}getChecksumPortion(){return this.checksumPortion}toString(){return this.value+"("+this.checksumPortion+")"}equals(e){return e instanceof ej&&this.value===e.value&&this.checksumPortion===e.checksumPortion}hashCode(){return this.value^this.checksumPortion}}class eG{constructor(e,t,r,n,i){this.value=e,this.startEnd=t,this.value=e,this.startEnd=t,this.resultPoints=[],this.resultPoints.push(new ew(r,i)),this.resultPoints.push(new ew(n,i))}getValue(){return this.value}getStartEnd(){return this.startEnd}getResultPoints(){return this.resultPoints}equals(e){return e instanceof eG&&this.value===e.value}hashCode(){return this.value}}class eW{constructor(){}static getRSSvalue(e,t,r){let n=0;for(let t of e)n+=t;let i=0,o=0,a=e.length;for(let s=0;s<a-1;s++){let l;for(l=1,o|=1<<s;l<e[s];l++,o&=~(1<<s)){let e=eW.combins(n-l-1,a-s-2);if(r&&0===o&&n-l-(a-s-1)>=a-s-1&&(e-=eW.combins(n-l-(a-s),a-s-2)),a-s-1>1){let r=0;for(let e=n-l-(a-s-2);e>t;e--)r+=eW.combins(n-l-e-1,a-s-3);e-=r*(a-1-s)}else n-l>t&&e--;i+=e}n-=l}return i}static combins(e,t){let r,n;e-t>t?(n=t,r=e-t):(n=e-t,r=t);let i=1,o=1;for(let t=e;t>r;t--)i*=t,o<=n&&(i/=o,o++);for(;o<=n;)i/=o,o++;return i}}class eY{static buildBitArray(e){let t=2*e.length-1;null==e[e.length-1].getRightChar()&&(t-=1);let r=new U(12*t),n=0,i=e[0].getRightChar().getValue();for(let e=11;e>=0;--e)(i&1<<e)!=0&&r.set(n),n++;for(let t=1;t<e.length;++t){let i=e[t],o=i.getLeftChar().getValue();for(let e=11;e>=0;--e)(o&1<<e)!=0&&r.set(n),n++;if(null!=i.getRightChar()){let e=i.getRightChar().getValue();for(let t=11;t>=0;--t)(e&1<<t)!=0&&r.set(n),n++}}return r}}class eX{constructor(e,t){t?this.decodedInformation=null:(this.finished=e,this.decodedInformation=t)}getDecodedInformation(){return this.decodedInformation}isFinished(){return this.finished}}class eZ{constructor(e){this.newPosition=e}getNewPosition(){return this.newPosition}}class eQ extends eZ{constructor(e,t){super(e),this.value=t}getValue(){return this.value}isFNC1(){return this.value===eQ.FNC1}}eQ.FNC1="$";class eq extends eZ{constructor(e,t,r){super(e),r?(this.remaining=!0,this.remainingValue=this.remainingValue):(this.remaining=!1,this.remainingValue=0),this.newString=t}getNewString(){return this.newString}isRemaining(){return this.remaining}getRemainingValue(){return this.remainingValue}}class eK extends eZ{constructor(e,t,r){if(super(e),t<0||t>10||r<0||r>10)throw new z;this.firstDigit=t,this.secondDigit=r}getFirstDigit(){return this.firstDigit}getSecondDigit(){return this.secondDigit}getValue(){return 10*this.firstDigit+this.secondDigit}isFirstDigitFNC1(){return this.firstDigit===eK.FNC1}isSecondDigitFNC1(){return this.secondDigit===eK.FNC1}isAnyFNC1(){return this.firstDigit===eK.FNC1||this.secondDigit===eK.FNC1}}eK.FNC1=10;class eJ{constructor(){}static parseFieldsInGeneralPurpose(e){if(!e)return null;if(e.length<2)throw new Z;let t=e.substring(0,2);for(let r of eJ.TWO_DIGIT_DATA_LENGTH)if(r[0]===t){if(r[1]===eJ.VARIABLE_LENGTH)return eJ.processVariableAI(2,r[2],e);return eJ.processFixedAI(2,r[1],e)}if(e.length<3)throw new Z;let r=e.substring(0,3);for(let t of eJ.THREE_DIGIT_DATA_LENGTH)if(t[0]===r){if(t[1]===eJ.VARIABLE_LENGTH)return eJ.processVariableAI(3,t[2],e);return eJ.processFixedAI(3,t[1],e)}for(let t of eJ.THREE_DIGIT_PLUS_DIGIT_DATA_LENGTH)if(t[0]===r){if(t[1]===eJ.VARIABLE_LENGTH)return eJ.processVariableAI(4,t[2],e);return eJ.processFixedAI(4,t[1],e)}if(e.length<4)throw new Z;let n=e.substring(0,4);for(let t of eJ.FOUR_DIGIT_DATA_LENGTH)if(t[0]===n){if(t[1]===eJ.VARIABLE_LENGTH)return eJ.processVariableAI(4,t[2],e);return eJ.processFixedAI(4,t[1],e)}throw new Z}static processFixedAI(e,t,r){if(r.length<e)throw new Z;let n=r.substring(0,e);if(r.length<e+t)throw new Z;let i=r.substring(e,e+t),o=r.substring(e+t),a="("+n+")"+i,s=eJ.parseFieldsInGeneralPurpose(o);return null==s?a:a+s}static processVariableAI(e,t,r){let n,i=r.substring(0,e);n=r.length<e+t?r.length:e+t;let o=r.substring(e,n),a=r.substring(n),s="("+i+")"+o,l=eJ.parseFieldsInGeneralPurpose(a);return null==l?s:s+l}}eJ.VARIABLE_LENGTH=[],eJ.TWO_DIGIT_DATA_LENGTH=[["00",18],["01",14],["02",14],["10",eJ.VARIABLE_LENGTH,20],["11",6],["12",6],["13",6],["15",6],["17",6],["20",2],["21",eJ.VARIABLE_LENGTH,20],["22",eJ.VARIABLE_LENGTH,29],["30",eJ.VARIABLE_LENGTH,8],["37",eJ.VARIABLE_LENGTH,8],["90",eJ.VARIABLE_LENGTH,30],["91",eJ.VARIABLE_LENGTH,30],["92",eJ.VARIABLE_LENGTH,30],["93",eJ.VARIABLE_LENGTH,30],["94",eJ.VARIABLE_LENGTH,30],["95",eJ.VARIABLE_LENGTH,30],["96",eJ.VARIABLE_LENGTH,30],["97",eJ.VARIABLE_LENGTH,3],["98",eJ.VARIABLE_LENGTH,30],["99",eJ.VARIABLE_LENGTH,30]],eJ.THREE_DIGIT_DATA_LENGTH=[["240",eJ.VARIABLE_LENGTH,30],["241",eJ.VARIABLE_LENGTH,30],["242",eJ.VARIABLE_LENGTH,6],["250",eJ.VARIABLE_LENGTH,30],["251",eJ.VARIABLE_LENGTH,30],["253",eJ.VARIABLE_LENGTH,17],["254",eJ.VARIABLE_LENGTH,20],["400",eJ.VARIABLE_LENGTH,30],["401",eJ.VARIABLE_LENGTH,30],["402",17],["403",eJ.VARIABLE_LENGTH,30],["410",13],["411",13],["412",13],["413",13],["414",13],["420",eJ.VARIABLE_LENGTH,20],["421",eJ.VARIABLE_LENGTH,15],["422",3],["423",eJ.VARIABLE_LENGTH,15],["424",3],["425",3],["426",3]],eJ.THREE_DIGIT_PLUS_DIGIT_DATA_LENGTH=[["310",6],["311",6],["312",6],["313",6],["314",6],["315",6],["316",6],["320",6],["321",6],["322",6],["323",6],["324",6],["325",6],["326",6],["327",6],["328",6],["329",6],["330",6],["331",6],["332",6],["333",6],["334",6],["335",6],["336",6],["340",6],["341",6],["342",6],["343",6],["344",6],["345",6],["346",6],["347",6],["348",6],["349",6],["350",6],["351",6],["352",6],["353",6],["354",6],["355",6],["356",6],["357",6],["360",6],["361",6],["362",6],["363",6],["364",6],["365",6],["366",6],["367",6],["368",6],["369",6],["390",eJ.VARIABLE_LENGTH,15],["391",eJ.VARIABLE_LENGTH,18],["392",eJ.VARIABLE_LENGTH,15],["393",eJ.VARIABLE_LENGTH,18],["703",eJ.VARIABLE_LENGTH,30]],eJ.FOUR_DIGIT_DATA_LENGTH=[["7001",13],["7002",eJ.VARIABLE_LENGTH,30],["7003",10],["8001",14],["8002",eJ.VARIABLE_LENGTH,20],["8003",eJ.VARIABLE_LENGTH,30],["8004",eJ.VARIABLE_LENGTH,30],["8005",6],["8006",18],["8007",eJ.VARIABLE_LENGTH,30],["8008",eJ.VARIABLE_LENGTH,12],["8018",18],["8020",eJ.VARIABLE_LENGTH,25],["8100",6],["8101",10],["8102",2],["8110",eJ.VARIABLE_LENGTH,70],["8200",eJ.VARIABLE_LENGTH,70]];class e${constructor(e){this.buffer=new Y,this.information=e}decodeAllCodes(e,t){let r=t,n=null;for(;;){let t=this.decodeGeneralPurposeField(r,n),i=eJ.parseFieldsInGeneralPurpose(t.getNewString());if(null!=i&&e.append(i),n=t.isRemaining()?""+t.getRemainingValue():null,r===t.getNewPosition())break;r=t.getNewPosition()}return e.toString()}isStillNumeric(e){if(e+7>this.information.getSize())return e+4<=this.information.getSize();for(let t=e;t<e+3;++t)if(this.information.get(t))return!0;return this.information.get(e+3)}decodeNumeric(e){if(e+7>this.information.getSize()){let t=this.extractNumericValueFromBitArray(e,4);return 0===t?new eK(this.information.getSize(),eK.FNC1,eK.FNC1):new eK(this.information.getSize(),t-1,eK.FNC1)}let t=this.extractNumericValueFromBitArray(e,7);return new eK(e+7,(t-8)/11,(t-8)%11)}extractNumericValueFromBitArray(e,t){return e$.extractNumericValueFromBitArray(this.information,e,t)}static extractNumericValueFromBitArray(e,t,r){let n=0;for(let i=0;i<r;++i)e.get(t+i)&&(n|=1<<r-i-1);return n}decodeGeneralPurposeField(e,t){this.buffer.setLengthToZero(),null!=t&&this.buffer.append(t),this.current.setPosition(e);let r=this.parseBlocks();return null!=r&&r.isRemaining()?new eq(this.current.getPosition(),this.buffer.toString(),r.getRemainingValue()):new eq(this.current.getPosition(),this.buffer.toString())}parseBlocks(){let e,t;do{let r=this.current.getPosition();if(e=this.current.isAlpha()?(t=this.parseAlphaBlock()).isFinished():this.current.isIsoIec646()?(t=this.parseIsoIec646Block()).isFinished():(t=this.parseNumericBlock()).isFinished(),!(r!==this.current.getPosition())&&!e)break}while(!e);return t.getDecodedInformation()}parseNumericBlock(){for(;this.isStillNumeric(this.current.getPosition());){let e=this.decodeNumeric(this.current.getPosition());if(this.current.setPosition(e.getNewPosition()),e.isFirstDigitFNC1()){let t;return new eX(!0,t=e.isSecondDigitFNC1()?new eq(this.current.getPosition(),this.buffer.toString()):new eq(this.current.getPosition(),this.buffer.toString(),e.getSecondDigit()))}if(this.buffer.append(e.getFirstDigit()),e.isSecondDigitFNC1())return new eX(!0,new eq(this.current.getPosition(),this.buffer.toString()));this.buffer.append(e.getSecondDigit())}return this.isNumericToAlphaNumericLatch(this.current.getPosition())&&(this.current.setAlpha(),this.current.incrementPosition(4)),new eX(!1)}parseIsoIec646Block(){for(;this.isStillIsoIec646(this.current.getPosition());){let e=this.decodeIsoIec646(this.current.getPosition());if(this.current.setPosition(e.getNewPosition()),e.isFNC1())return new eX(!0,new eq(this.current.getPosition(),this.buffer.toString()));this.buffer.append(e.getValue())}return this.isAlphaOr646ToNumericLatch(this.current.getPosition())?(this.current.incrementPosition(3),this.current.setNumeric()):this.isAlphaTo646ToAlphaLatch(this.current.getPosition())&&(this.current.getPosition()+5<this.information.getSize()?this.current.incrementPosition(5):this.current.setPosition(this.information.getSize()),this.current.setAlpha()),new eX(!1)}parseAlphaBlock(){for(;this.isStillAlpha(this.current.getPosition());){let e=this.decodeAlphanumeric(this.current.getPosition());if(this.current.setPosition(e.getNewPosition()),e.isFNC1())return new eX(!0,new eq(this.current.getPosition(),this.buffer.toString()));this.buffer.append(e.getValue())}return this.isAlphaOr646ToNumericLatch(this.current.getPosition())?(this.current.incrementPosition(3),this.current.setNumeric()):this.isAlphaTo646ToAlphaLatch(this.current.getPosition())&&(this.current.getPosition()+5<this.information.getSize()?this.current.incrementPosition(5):this.current.setPosition(this.information.getSize()),this.current.setIsoIec646()),new eX(!1)}isStillIsoIec646(e){if(e+5>this.information.getSize())return!1;let t=this.extractNumericValueFromBitArray(e,5);if(t>=5&&t<16)return!0;if(e+7>this.information.getSize())return!1;let r=this.extractNumericValueFromBitArray(e,7);if(r>=64&&r<116)return!0;if(e+8>this.information.getSize())return!1;let n=this.extractNumericValueFromBitArray(e,8);return n>=232&&n<253}decodeIsoIec646(e){let t,r=this.extractNumericValueFromBitArray(e,5);if(15===r)return new eQ(e+5,eQ.FNC1);if(r>=5&&r<15)return new eQ(e+5,"0"+(r-5));let n=this.extractNumericValueFromBitArray(e,7);if(n>=64&&n<90)return new eQ(e+7,""+(n+1));if(n>=90&&n<116)return new eQ(e+7,""+(n+7));switch(this.extractNumericValueFromBitArray(e,8)){case 232:t="!";break;case 233:t='"';break;case 234:t="%";break;case 235:t="&";break;case 236:t="'";break;case 237:t="(";break;case 238:t=")";break;case 239:t="*";break;case 240:t="+";break;case 241:t=",";break;case 242:t="-";break;case 243:t=".";break;case 244:t="/";break;case 245:t=":";break;case 246:t=";";break;case 247:t="<";break;case 248:t="=";break;case 249:t=">";break;case 250:t="?";break;case 251:t="_";break;case 252:t=" ";break;default:throw new z}return new eQ(e+8,t)}isStillAlpha(e){if(e+5>this.information.getSize())return!1;let t=this.extractNumericValueFromBitArray(e,5);if(t>=5&&t<16)return!0;if(e+6>this.information.getSize())return!1;let r=this.extractNumericValueFromBitArray(e,6);return r>=16&&r<63}decodeAlphanumeric(e){let t,r=this.extractNumericValueFromBitArray(e,5);if(15===r)return new eQ(e+5,eQ.FNC1);if(r>=5&&r<15)return new eQ(e+5,"0"+(r-5));let n=this.extractNumericValueFromBitArray(e,6);if(n>=32&&n<58)return new eQ(e+6,""+(n+33));switch(n){case 58:t="*";break;case 59:t=",";break;case 60:t="-";break;case 61:t=".";break;case 62:t="/";break;default:throw new ed("Decoding invalid alphanumeric value: "+n)}return new eQ(e+6,t)}isAlphaTo646ToAlphaLatch(e){if(e+1>this.information.getSize())return!1;for(let t=0;t<5&&t+e<this.information.getSize();++t)if(2===t){if(!this.information.get(e+2))return!1}else if(this.information.get(e+t))return!1;return!0}isAlphaOr646ToNumericLatch(e){if(e+3>this.information.getSize())return!1;for(let t=e;t<e+3;++t)if(this.information.get(t))return!1;return!0}isNumericToAlphaNumericLatch(e){if(e+1>this.information.getSize())return!1;for(let t=0;t<4&&t+e<this.information.getSize();++t)if(this.information.get(e+t))return!1;return!0}}class e1{constructor(e){this.information=e,this.generalDecoder=new e$(e)}getInformation(){return this.information}getGeneralDecoder(){return this.generalDecoder}}class e0 extends e1{constructor(e){super(e)}encodeCompressedGtin(e,t){e.append("(01)");let r=e.length();e.append("9"),this.encodeCompressedGtinWithoutAI(e,t,r)}encodeCompressedGtinWithoutAI(e,t,r){for(let r=0;r<4;++r){let n=this.getGeneralDecoder().extractNumericValueFromBitArray(t+10*r,10);n/100==0&&e.append("0"),n/10==0&&e.append("0"),e.append(n)}e0.appendCheckDigit(e,r)}static appendCheckDigit(e,t){let r=0;for(let n=0;n<13;n++){let i=e.charAt(n+t).charCodeAt(0)-48;r+=(1&n)==0?3*i:i}10==(r=10-r%10)&&(r=0),e.append(r)}}e0.GTIN_SIZE=40;class e2 extends e0{constructor(e){super(e)}parseInformation(){let e=new Y;e.append("(01)");let t=e.length(),r=this.getGeneralDecoder().extractNumericValueFromBitArray(e2.HEADER_SIZE,4);return e.append(r),this.encodeCompressedGtinWithoutAI(e,e2.HEADER_SIZE+4,t),this.getGeneralDecoder().decodeAllCodes(e,e2.HEADER_SIZE+44)}}e2.HEADER_SIZE=4;class e3 extends e1{constructor(e){super(e)}parseInformation(){let e=new Y;return this.getGeneralDecoder().decodeAllCodes(e,e3.HEADER_SIZE)}}e3.HEADER_SIZE=5;class e4 extends e0{constructor(e){super(e)}encodeCompressedWeight(e,t,r){let n=this.getGeneralDecoder().extractNumericValueFromBitArray(t,r);this.addWeightCode(e,n);let i=this.checkWeight(n),o=1e5;for(let t=0;t<5;++t)i/o==0&&e.append("0"),o/=10;e.append(i)}}class e8 extends e4{constructor(e){super(e)}parseInformation(){if(this.getInformation().getSize()!=e8.HEADER_SIZE+e4.GTIN_SIZE+e8.WEIGHT_SIZE)throw new Z;let e=new Y;return this.encodeCompressedGtin(e,e8.HEADER_SIZE),this.encodeCompressedWeight(e,e8.HEADER_SIZE+e4.GTIN_SIZE,e8.WEIGHT_SIZE),e.toString()}}e8.HEADER_SIZE=5,e8.WEIGHT_SIZE=15;class e6 extends e8{constructor(e){super(e)}addWeightCode(e,t){e.append("(3103)")}checkWeight(e){return e}}class e5 extends e8{constructor(e){super(e)}addWeightCode(e,t){t<1e4?e.append("(3202)"):e.append("(3203)")}checkWeight(e){return e<1e4?e:e-1e4}}class e7 extends e0{constructor(e){super(e)}parseInformation(){if(this.getInformation().getSize()<e7.HEADER_SIZE+e0.GTIN_SIZE)throw new Z;let e=new Y;this.encodeCompressedGtin(e,e7.HEADER_SIZE);let t=this.getGeneralDecoder().extractNumericValueFromBitArray(e7.HEADER_SIZE+e0.GTIN_SIZE,e7.LAST_DIGIT_SIZE);e.append("(392"),e.append(t),e.append(")");let r=this.getGeneralDecoder().decodeGeneralPurposeField(e7.HEADER_SIZE+e0.GTIN_SIZE+e7.LAST_DIGIT_SIZE,null);return e.append(r.getNewString()),e.toString()}}e7.HEADER_SIZE=8,e7.LAST_DIGIT_SIZE=2;class e9 extends e0{constructor(e){super(e)}parseInformation(){if(this.getInformation().getSize()<e9.HEADER_SIZE+e0.GTIN_SIZE)throw new Z;let e=new Y;this.encodeCompressedGtin(e,e9.HEADER_SIZE);let t=this.getGeneralDecoder().extractNumericValueFromBitArray(e9.HEADER_SIZE+e0.GTIN_SIZE,e9.LAST_DIGIT_SIZE);e.append("(393"),e.append(t),e.append(")");let r=this.getGeneralDecoder().extractNumericValueFromBitArray(e9.HEADER_SIZE+e0.GTIN_SIZE+e9.LAST_DIGIT_SIZE,e9.FIRST_THREE_DIGITS_SIZE);r/100==0&&e.append("0"),r/10==0&&e.append("0"),e.append(r);let n=this.getGeneralDecoder().decodeGeneralPurposeField(e9.HEADER_SIZE+e0.GTIN_SIZE+e9.LAST_DIGIT_SIZE+e9.FIRST_THREE_DIGITS_SIZE,null);return e.append(n.getNewString()),e.toString()}}e9.HEADER_SIZE=8,e9.LAST_DIGIT_SIZE=2,e9.FIRST_THREE_DIGITS_SIZE=10;class te extends e4{constructor(e,t,r){super(e),this.dateCode=r,this.firstAIdigits=t}parseInformation(){if(this.getInformation().getSize()!=te.HEADER_SIZE+te.GTIN_SIZE+te.WEIGHT_SIZE+te.DATE_SIZE)throw new Z;let e=new Y;return this.encodeCompressedGtin(e,te.HEADER_SIZE),this.encodeCompressedWeight(e,te.HEADER_SIZE+te.GTIN_SIZE,te.WEIGHT_SIZE),this.encodeCompressedDate(e,te.HEADER_SIZE+te.GTIN_SIZE+te.WEIGHT_SIZE),e.toString()}encodeCompressedDate(e,t){let r=this.getGeneralDecoder().extractNumericValueFromBitArray(t,te.DATE_SIZE);if(38400==r)return;e.append("("),e.append(this.dateCode),e.append(")");let n=r%32,i=(r/=32)%12+1,o=r/=12;o/10==0&&e.append("0"),e.append(o),i/10==0&&e.append("0"),e.append(i),n/10==0&&e.append("0"),e.append(n)}addWeightCode(e,t){e.append("("),e.append(this.firstAIdigits),e.append(t/1e5),e.append(")")}checkWeight(e){return e%1e5}}function tt(e){try{if(e.get(1))return new e2(e);if(!e.get(2))return new e3(e);switch(e$.extractNumericValueFromBitArray(e,1,4)){case 4:return new e6(e);case 5:return new e5(e)}switch(e$.extractNumericValueFromBitArray(e,1,5)){case 12:return new e7(e);case 13:return new e9(e)}switch(e$.extractNumericValueFromBitArray(e,1,7)){case 56:return new te(e,"310","11");case 57:return new te(e,"320","11");case 58:return new te(e,"310","13");case 59:return new te(e,"320","13");case 60:return new te(e,"310","15");case 61:return new te(e,"320","15");case 62:return new te(e,"310","17");case 63:return new te(e,"320","17")}}catch(t){throw console.log(t),new ed("unknown decoder: "+e)}}te.HEADER_SIZE=8,te.WEIGHT_SIZE=20,te.DATE_SIZE=16;class tr{constructor(e,t,r,n){this.leftchar=e,this.rightchar=t,this.finderpattern=r,this.maybeLast=n}mayBeLast(){return this.maybeLast}getLeftChar(){return this.leftchar}getRightChar(){return this.rightchar}getFinderPattern(){return this.finderpattern}mustBeLast(){return null==this.rightchar}toString(){return"[ "+this.leftchar+", "+this.rightchar+" : "+(null==this.finderpattern?"null":this.finderpattern.getValue())+" ]"}static equals(e,t){return e instanceof tr&&tr.equalsOrNull(e.leftchar,t.leftchar)&&tr.equalsOrNull(e.rightchar,t.rightchar)&&tr.equalsOrNull(e.finderpattern,t.finderpattern)}static equalsOrNull(e,t){return null===e?null===t:tr.equals(e,t)}hashCode(){return this.leftchar.getValue()^this.rightchar.getValue()^this.finderpattern.getValue()}}class tn{constructor(e,t,r){this.pairs=e,this.rowNumber=t,this.wasReversed=r}getPairs(){return this.pairs}getRowNumber(){return this.rowNumber}isReversed(){return this.wasReversed}isEquivalent(e){return this.checkEqualitity(this,e)}toString(){return"{ "+this.pairs+" }"}equals(e,t){return e instanceof tn&&this.checkEqualitity(e,t)&&e.wasReversed===t.wasReversed}checkEqualitity(e,t){let r;if(e&&t)return e.forEach((e,n)=>{t.forEach(t=>{e.getLeftChar().getValue()===t.getLeftChar().getValue()&&e.getRightChar().getValue()===t.getRightChar().getValue()&&e.getFinderPatter().getValue()===t.getFinderPatter().getValue()&&(r=!0)})}),r}}class ti extends eV{constructor(e){super(...arguments),this.pairs=Array(ti.MAX_PAIRS),this.rows=[],this.startEnd=[2],this.verbose=!0===e}decodeRow(e,t,r){this.pairs.length=0,this.startFromEven=!1;try{return ti.constructResult(this.decodeRow2pairs(e,t))}catch(e){this.verbose&&console.log(e)}return this.pairs.length=0,this.startFromEven=!0,ti.constructResult(this.decodeRow2pairs(e,t))}reset(){this.pairs.length=0,this.rows.length=0}decodeRow2pairs(e,t){let r,n=!1;for(;!n;)try{this.pairs.push(this.retrieveNextPair(t,this.pairs,e))}catch(e){if(e instanceof Z){if(!this.pairs.length)throw new Z;n=!0}}if(this.checkChecksum())return this.pairs;if(r=!!this.rows.length||!1,this.storeRow(e,!1),r){let e=this.checkRowsBoolean(!1);if(null!=e||null!=(e=this.checkRowsBoolean(!0)))return e}throw new Z}checkRowsBoolean(e){if(this.rows.length>25)return this.rows.length=0,null;this.pairs.length=0,e&&(this.rows=this.rows.reverse());let t=null;try{t=this.checkRows([],0)}catch(e){this.verbose&&console.log(e)}return e&&(this.rows=this.rows.reverse()),t}checkRows(e,t){for(let r=t;r<this.rows.length;r++){let t=this.rows[r];for(let t of(this.pairs.length=0,e))this.pairs.push(t.getPairs());if(this.pairs.push(t.getPairs()),!ti.isValidSequence(this.pairs))continue;if(this.checkChecksum())return this.pairs;let n=Array(e);n.push(t);try{return this.checkRows(n,r+1)}catch(e){this.verbose&&console.log(e)}}throw new Z}static isValidSequence(e){for(let t of ti.FINDER_PATTERN_SEQUENCES){if(e.length>t.length)continue;let r=!0;for(let n=0;n<e.length;n++)if(e[n].getFinderPattern().getValue()!=t[n]){r=!1;break}if(r)return!0}return!1}storeRow(e,t){let r=0,n=!1,i=!1;for(;r<this.rows.length;){let t=this.rows[r];if(t.getRowNumber()>e){i=t.isEquivalent(this.pairs);break}n=t.isEquivalent(this.pairs),r++}if(!(i||n||ti.isPartialRow(this.pairs,this.rows)))this.rows.push(r,new tn(this.pairs,e,t)),this.removePartialRows(this.pairs,this.rows)}removePartialRows(e,t){for(let r of t){if(r.getPairs().length!==e.length){for(let t of r.getPairs())for(let r of e)if(tr.equals(t,r))break}}}static isPartialRow(e,t){for(let r of t){let t=!0;for(let n of e){let e=!1;for(let t of r.getPairs())if(n.equals(t)){e=!0;break}if(!e){t=!1;break}}if(t)return!0}return!1}getRows(){return this.rows}static constructResult(e){let t=tt(eY.buildBitArray(e)).parseInformation(),r=e[0].getFinderPattern().getResultPoints(),n=e[e.length-1].getFinderPattern().getResultPoints();return new en(t,null,null,[r[0],r[1],n[0],n[1]],ei.RSS_EXPANDED,null)}checkChecksum(){let e=this.pairs.get(0),t=e.getLeftChar(),r=e.getRightChar();if(null==r)return!1;let n=r.getChecksumPortion(),i=2;for(let e=1;e<this.pairs.size();++e){let t=this.pairs.get(e);n+=t.getLeftChar().getChecksumPortion(),i++;let r=t.getRightChar();null!=r&&(n+=r.getChecksumPortion(),i++)}return 211*(i-4)+(n%=211)==t.getValue()}static getNextSecondBar(e,t){let r;return e.get(t)?(r=e.getNextUnset(t),r=e.getNextSet(r)):(r=e.getNextSet(t),r=e.getNextUnset(r)),r}retrieveNextPair(e,t,r){let n,i,o=t.length%2==0;this.startFromEven&&(o=!o);let a=!0,s=-1;do this.findNextPair(e,t,s),null==(n=this.parseFoundFinderPattern(e,r,o))?s=ti.getNextSecondBar(e,this.startEnd[0]):a=!1;while(a);let l=this.decodeDataCharacter(e,n,o,!0);if(!this.isEmptyPair(t)&&t[t.length-1].mustBeLast())throw new Z;try{i=this.decodeDataCharacter(e,n,o,!1)}catch(e){i=null,this.verbose&&console.log(e)}return new tr(l,i,n,!0)}isEmptyPair(e){return 0===e.length||!1}findNextPair(e,t,r){let n,i=this.getDecodeFinderCounters();i[0]=0,i[1]=0,i[2]=0,i[3]=0;let o=e.getSize();n=r>=0?r:this.isEmptyPair(t)?0:t[t.length-1].getFinderPattern().getStartEnd()[1];let a=t.length%2!=0;this.startFromEven&&(a=!a);let s=!1;for(;n<o&&(s=!e.get(n));){;n++}let l=0,c=n;for(let t=n;t<o;t++)if(e.get(t)!=s)i[l]++;else{if(3==l){if(a&&ti.reverseCounters(i),ti.isFinderPattern(i)){this.startEnd[0]=c,this.startEnd[1]=t;return}a&&ti.reverseCounters(i),c+=i[0]+i[1],i[0]=i[2],i[1]=i[3],i[2]=0,i[3]=0,l--}else l++;i[l]=1,s=!s}throw new Z}static reverseCounters(e){let t=e.length;for(let r=0;r<t/2;++r){let n=e[r];e[r]=e[t-r-1],e[t-r-1]=n}}parseFoundFinderPattern(e,t,r){let n,i,o,a;if(r){let t=this.startEnd[0]-1;for(;t>=0&&!e.get(t);)t--;t++,n=this.startEnd[0]-t,i=t,o=this.startEnd[1]}else i=this.startEnd[0],n=(o=e.getNextUnset(this.startEnd[1]+1))-this.startEnd[1];let s=this.getDecodeFinderCounters();P.arraycopy(s,0,s,1,s.length-1),s[0]=n;try{a=this.parseFinderValue(s,ti.FINDER_PATTERNS)}catch(e){return null}return new eG(a,[i,o],i,o,t)}decodeDataCharacter(e,t,r,n){let i=this.getDataCharacterCounters();for(let e=0;e<i.length;e++)i[e]=0;if(n)ti.recordPatternInReverse(e,t.getStartEnd()[0],i);else{ti.recordPattern(e,t.getStartEnd()[1],i);for(let e=0,t=i.length-1;e<t;e++,t--){let r=i[e];i[e]=i[t],i[t]=r}}let o=ep.sum(new Int32Array(i))/17,a=(t.getStartEnd()[1]-t.getStartEnd()[0])/15;if(Math.abs(o-a)/a>.3)throw new Z;let s=this.getOddCounts(),l=this.getEvenCounts(),c=this.getOddRoundingErrors(),u=this.getEvenRoundingErrors();for(let e=0;e<i.length;e++){let t=1*i[e]/o,r=t+.5;if(r<1){if(t<.3)throw new Z;r=1}else if(r>8){if(t>8.7)throw new Z;r=8}let n=e/2;(1&e)==0?(s[n]=r,c[n]=t-r):(l[n]=r,u[n]=t-r)}this.adjustOddEvenCounts(17);let h=4*t.getValue()+(r?0:2)+(n?0:1)-1,d=0,f=0;for(let e=s.length-1;e>=0;e--){if(ti.isNotA1left(t,r,n)){let t=ti.WEIGHTS[h][2*e];f+=s[e]*t}d+=s[e]}let g=0;for(let e=l.length-1;e>=0;e--)if(ti.isNotA1left(t,r,n)){let t=ti.WEIGHTS[h][2*e+1];g+=l[e]*t}let p=f+g;if((1&d)!=0||d>13||d<4)throw new Z;let m=(13-d)/2,w=ti.SYMBOL_WIDEST[m],A=eW.getRSSvalue(s,w,!0),C=eW.getRSSvalue(l,9-w,!1),E=ti.EVEN_TOTAL_SUBSET[m],I=ti.GSUM[m];return new ej(A*E+C+I,p)}static isNotA1left(e,t,r){return!(0==e.getValue()&&t&&r)}adjustOddEvenCounts(e){let t=ep.sum(new Int32Array(this.getOddCounts())),r=ep.sum(new Int32Array(this.getEvenCounts())),n=!1,i=!1;t>13?i=!0:t<4&&(n=!0);let o=!1,a=!1;r>13?a=!0:r<4&&(o=!0);let s=t+r-e,l=(1&t)==1,c=(1&r)==0;if(1==s){if(l){if(c)throw new Z;i=!0}else{if(!c)throw new Z;a=!0}}else if(-1==s){if(l){if(c)throw new Z;n=!0}else{if(!c)throw new Z;o=!0}}else if(0==s){if(l){if(!c)throw new Z;t<r?(n=!0,a=!0):(i=!0,o=!0)}else if(c)throw new Z}else throw new Z;if(n){if(i)throw new Z;ti.increment(this.getOddCounts(),this.getOddRoundingErrors())}if(i&&ti.decrement(this.getOddCounts(),this.getOddRoundingErrors()),o){if(a)throw new Z;ti.increment(this.getEvenCounts(),this.getOddRoundingErrors())}a&&ti.decrement(this.getEvenCounts(),this.getEvenRoundingErrors())}}ti.SYMBOL_WIDEST=[7,5,4,3,1],ti.EVEN_TOTAL_SUBSET=[4,20,52,104,204],ti.GSUM=[0,348,1388,2948,3988],ti.FINDER_PATTERNS=[Int32Array.from([1,8,4,1]),Int32Array.from([3,6,4,1]),Int32Array.from([3,4,6,1]),Int32Array.from([3,2,8,1]),Int32Array.from([2,6,5,1]),Int32Array.from([2,2,9,1])],ti.WEIGHTS=[[1,3,9,27,81,32,96,77],[20,60,180,118,143,7,21,63],[189,145,13,39,117,140,209,205],[193,157,49,147,19,57,171,91],[62,186,136,197,169,85,44,132],[185,133,188,142,4,12,36,108],[113,128,173,97,80,29,87,50],[150,28,84,41,123,158,52,156],[46,138,203,187,139,206,196,166],[76,17,51,153,37,111,122,155],[43,129,176,106,107,110,119,146],[16,48,144,10,30,90,59,177],[109,116,137,200,178,112,125,164],[70,210,208,202,184,130,179,115],[134,191,151,31,93,68,204,190],[148,22,66,198,172,94,71,2],[6,18,54,162,64,192,154,40],[120,149,25,75,14,42,126,167],[79,26,78,23,69,207,199,175],[103,98,83,38,114,131,182,124],[161,61,183,127,170,88,53,159],[55,165,73,8,24,72,5,15],[45,135,194,160,58,174,100,89]],ti.FINDER_PAT_A=0,ti.FINDER_PAT_B=1,ti.FINDER_PAT_C=2,ti.FINDER_PAT_D=3,ti.FINDER_PAT_E=4,ti.FINDER_PAT_F=5,ti.FINDER_PATTERN_SEQUENCES=[[ti.FINDER_PAT_A,ti.FINDER_PAT_A],[ti.FINDER_PAT_A,ti.FINDER_PAT_B,ti.FINDER_PAT_B],[ti.FINDER_PAT_A,ti.FINDER_PAT_C,ti.FINDER_PAT_B,ti.FINDER_PAT_D],[ti.FINDER_PAT_A,ti.FINDER_PAT_E,ti.FINDER_PAT_B,ti.FINDER_PAT_D,ti.FINDER_PAT_C],[ti.FINDER_PAT_A,ti.FINDER_PAT_E,ti.FINDER_PAT_B,ti.FINDER_PAT_D,ti.FINDER_PAT_D,ti.FINDER_PAT_F],[ti.FINDER_PAT_A,ti.FINDER_PAT_E,ti.FINDER_PAT_B,ti.FINDER_PAT_D,ti.FINDER_PAT_E,ti.FINDER_PAT_F,ti.FINDER_PAT_F],[ti.FINDER_PAT_A,ti.FINDER_PAT_A,ti.FINDER_PAT_B,ti.FINDER_PAT_B,ti.FINDER_PAT_C,ti.FINDER_PAT_C,ti.FINDER_PAT_D,ti.FINDER_PAT_D],[ti.FINDER_PAT_A,ti.FINDER_PAT_A,ti.FINDER_PAT_B,ti.FINDER_PAT_B,ti.FINDER_PAT_C,ti.FINDER_PAT_C,ti.FINDER_PAT_D,ti.FINDER_PAT_E,ti.FINDER_PAT_E],[ti.FINDER_PAT_A,ti.FINDER_PAT_A,ti.FINDER_PAT_B,ti.FINDER_PAT_B,ti.FINDER_PAT_C,ti.FINDER_PAT_C,ti.FINDER_PAT_D,ti.FINDER_PAT_E,ti.FINDER_PAT_F,ti.FINDER_PAT_F],[ti.FINDER_PAT_A,ti.FINDER_PAT_A,ti.FINDER_PAT_B,ti.FINDER_PAT_B,ti.FINDER_PAT_C,ti.FINDER_PAT_D,ti.FINDER_PAT_D,ti.FINDER_PAT_E,ti.FINDER_PAT_E,ti.FINDER_PAT_F,ti.FINDER_PAT_F]],ti.MAX_PAIRS=11;class to extends ej{constructor(e,t,r){super(e,t),this.count=0,this.finderPattern=r}getFinderPattern(){return this.finderPattern}getCount(){return this.count}incrementCount(){this.count++}}class ta extends eV{constructor(){super(...arguments),this.possibleLeftPairs=[],this.possibleRightPairs=[]}decodeRow(e,t,r){let n=this.decodePair(t,!1,e,r);ta.addOrTally(this.possibleLeftPairs,n),t.reverse();let i=this.decodePair(t,!0,e,r);for(let e of(ta.addOrTally(this.possibleRightPairs,i),t.reverse(),this.possibleLeftPairs))if(e.getCount()>1){for(let t of this.possibleRightPairs)if(t.getCount()>1&&ta.checkChecksum(e,t))return ta.constructResult(e,t)}throw new Z}static addOrTally(e,t){if(null==t)return;let r=!1;for(let n of e)if(n.getValue()===t.getValue()){n.incrementCount(),r=!0;break}!r&&e.push(t)}reset(){this.possibleLeftPairs.length=0,this.possibleRightPairs.length=0}static constructResult(e,t){let r=new String(4537077*e.getValue()+t.getValue()).toString(),n=new Y;for(let e=13-r.length;e>0;e--)n.append("0");n.append(r);let i=0;for(let e=0;e<13;e++){let t=n.charAt(e).charCodeAt(0)-48;i+=(1&e)==0?3*t:t}10==(i=10-i%10)&&(i=0),n.append(i.toString());let o=e.getFinderPattern().getResultPoints(),a=t.getFinderPattern().getResultPoints();return new en(n.toString(),null,0,[o[0],o[1],a[0],a[1]],ei.RSS_14,new Date().getTime())}static checkChecksum(e,t){let r=(e.getChecksumPortion()+16*t.getChecksumPortion())%79,n=9*e.getFinderPattern().getValue()+t.getFinderPattern().getValue();return n>72&&n--,n>8&&n--,r===n}decodePair(e,t,r,n){try{let i=this.findFinderPattern(e,t),o=this.parseFoundFinderPattern(e,r,t,i),a=null==n?null:n.get(H.NEED_RESULT_POINT_CALLBACK);if(null!=a){let n=(i[0]+i[1])/2;t&&(n=e.getSize()-1-n),a.foundPossibleResultPoint(new ew(n,r))}let s=this.decodeDataCharacter(e,o,!0),l=this.decodeDataCharacter(e,o,!1);return new to(1597*s.getValue()+l.getValue(),s.getChecksumPortion()+4*l.getChecksumPortion(),o)}catch(e){return null}}decodeDataCharacter(e,t,r){let n=this.getDataCharacterCounters();for(let e=0;e<n.length;e++)n[e]=0;if(r)eb.recordPatternInReverse(e,t.getStartEnd()[0],n);else{eb.recordPattern(e,t.getStartEnd()[1]+1,n);for(let e=0,t=n.length-1;e<t;e++,t--){let r=n[e];n[e]=n[t],n[t]=r}}let i=r?16:15,o=ep.sum(new Int32Array(n))/i,a=this.getOddCounts(),s=this.getEvenCounts(),l=this.getOddRoundingErrors(),c=this.getEvenRoundingErrors();for(let e=0;e<n.length;e++){let t=n[e]/o,r=Math.floor(t+.5);r<1?r=1:r>8&&(r=8);let i=Math.floor(e/2);(1&e)==0?(a[i]=r,l[i]=t-r):(s[i]=r,c[i]=t-r)}this.adjustOddEvenCounts(r,i);let u=0,h=0;for(let e=a.length-1;e>=0;e--)h*=9,h+=a[e],u+=a[e];let d=0,f=0;for(let e=s.length-1;e>=0;e--)d*=9,d+=s[e],f+=s[e];let g=h+3*d;if(r){if((1&u)!=0||u>12||u<4)throw new Z;let e=(12-u)/2,t=ta.OUTSIDE_ODD_WIDEST[e],r=eW.getRSSvalue(a,t,!1),n=eW.getRSSvalue(s,9-t,!0);return new ej(r*ta.OUTSIDE_EVEN_TOTAL_SUBSET[e]+n+ta.OUTSIDE_GSUM[e],g)}{if((1&f)!=0||f>10||f<4)throw new Z;let e=(10-f)/2,t=ta.INSIDE_ODD_WIDEST[e],r=eW.getRSSvalue(a,t,!0);return new ej(eW.getRSSvalue(s,9-t,!1)*ta.INSIDE_ODD_TOTAL_SUBSET[e]+r+ta.INSIDE_GSUM[e],g)}}findFinderPattern(e,t){let r=this.getDecodeFinderCounters();r[0]=0,r[1]=0,r[2]=0,r[3]=0;let n=e.getSize(),i=!1,o=0;for(;o<n&&t!==(i=!e.get(o));){;o++}let a=0,s=o;for(let t=o;t<n;t++)if(e.get(t)!==i)r[a]++;else{if(3===a){if(eV.isFinderPattern(r))return[s,t];s+=r[0]+r[1],r[0]=r[2],r[1]=r[3],r[2]=0,r[3]=0,a--}else a++;r[a]=1,i=!i}throw new Z}parseFoundFinderPattern(e,t,r,n){let i=e.get(n[0]),o=n[0]-1;for(;o>=0&&i!==e.get(o);)o--;o++;let a=n[0]-o,s=this.getDecodeFinderCounters(),l=new Int32Array(s.length);P.arraycopy(s,0,l,1,s.length-1),l[0]=a;let c=this.parseFinderValue(l,ta.FINDER_PATTERNS),u=o,h=n[1];return r&&(u=e.getSize()-1-u,h=e.getSize()-1-h),new eG(c,[o,n[1]],u,h,t)}adjustOddEvenCounts(e,t){let r=ep.sum(new Int32Array(this.getOddCounts())),n=ep.sum(new Int32Array(this.getEvenCounts())),i=!1,o=!1,a=!1,s=!1;e?(r>12?o=!0:r<4&&(i=!0),n>12?s=!0:n<4&&(a=!0)):(r>11?o=!0:r<5&&(i=!0),n>10?s=!0:n<4&&(a=!0));let l=r+n-t,c=(1&r)==(e?1:0),u=(1&n)==1;if(1===l){if(c){if(u)throw new Z;o=!0}else{if(!u)throw new Z;s=!0}}else if(-1===l){if(c){if(u)throw new Z;i=!0}else{if(!u)throw new Z;a=!0}}else if(0===l){if(c){if(!u)throw new Z;r<n?(i=!0,s=!0):(o=!0,a=!0)}else if(u)throw new Z}else throw new Z;if(i){if(o)throw new Z;eV.increment(this.getOddCounts(),this.getOddRoundingErrors())}if(o&&eV.decrement(this.getOddCounts(),this.getOddRoundingErrors()),a){if(s)throw new Z;eV.increment(this.getEvenCounts(),this.getOddRoundingErrors())}s&&eV.decrement(this.getEvenCounts(),this.getEvenRoundingErrors())}}ta.OUTSIDE_EVEN_TOTAL_SUBSET=[1,10,34,70,126],ta.INSIDE_ODD_TOTAL_SUBSET=[4,20,48,81],ta.OUTSIDE_GSUM=[0,161,961,2015,2715],ta.INSIDE_GSUM=[0,336,1036,1516],ta.OUTSIDE_ODD_WIDEST=[8,6,4,3,1],ta.INSIDE_ODD_WIDEST=[2,4,6,8],ta.FINDER_PATTERNS=[Int32Array.from([3,8,2,1]),Int32Array.from([3,5,5,1]),Int32Array.from([3,3,7,1]),Int32Array.from([3,1,9,1]),Int32Array.from([2,7,4,1]),Int32Array.from([2,5,6,1]),Int32Array.from([2,3,8,1]),Int32Array.from([1,5,7,1]),Int32Array.from([1,3,9,1])];class ts extends eb{constructor(e,t){super(),this.readers=[],this.verbose=!0===t;let r=e?e.get(H.POSSIBLE_FORMATS):null,n=e&&void 0!==e.get(H.ASSUME_CODE_39_CHECK_DIGIT);r?((r.includes(ei.EAN_13)||r.includes(ei.UPC_A)||r.includes(ei.EAN_8)||r.includes(ei.UPC_E))&&this.readers.push(new ez(e)),r.includes(ei.CODE_39)&&this.readers.push(new eR(n)),r.includes(ei.CODE_128)&&this.readers.push(new eD),r.includes(ei.ITF)&&this.readers.push(new eO),r.includes(ei.RSS_14)&&this.readers.push(new ta),r.includes(ei.RSS_EXPANDED)&&this.readers.push(new ti(this.verbose))):(this.readers.push(new ez(e)),this.readers.push(new eR),this.readers.push(new ez(e)),this.readers.push(new eD),this.readers.push(new eO),this.readers.push(new ta),this.readers.push(new ti(this.verbose)))}decodeRow(e,t,r){for(let n=0;n<this.readers.length;n++)try{return this.readers[n].decodeRow(e,t,r)}catch(e){}throw new Z}reset(){this.readers.forEach(e=>e.reset())}}class tl{constructor(e,t,r){this.ecCodewords=e,this.ecBlocks=[t],r&&this.ecBlocks.push(r)}getECCodewords(){return this.ecCodewords}getECBlocks(){return this.ecBlocks}}class tc{constructor(e,t){this.count=e,this.dataCodewords=t}getCount(){return this.count}getDataCodewords(){return this.dataCodewords}}class tu{constructor(e,t,r,n,i,o){this.versionNumber=e,this.symbolSizeRows=t,this.symbolSizeColumns=r,this.dataRegionSizeRows=n,this.dataRegionSizeColumns=i,this.ecBlocks=o;let a=0,s=o.getECCodewords();for(let e of o.getECBlocks())a+=e.getCount()*(e.getDataCodewords()+s);this.totalCodewords=a}getVersionNumber(){return this.versionNumber}getSymbolSizeRows(){return this.symbolSizeRows}getSymbolSizeColumns(){return this.symbolSizeColumns}getDataRegionSizeRows(){return this.dataRegionSizeRows}getDataRegionSizeColumns(){return this.dataRegionSizeColumns}getTotalCodewords(){return this.totalCodewords}getECBlocks(){return this.ecBlocks}static getVersionForDimensions(e,t){if((1&e)!=0||(1&t)!=0)throw new z;for(let r of tu.VERSIONS)if(r.symbolSizeRows===e&&r.symbolSizeColumns===t)return r;throw new z}toString(){return""+this.versionNumber}static buildVersions(){return[new tu(1,10,10,8,8,new tl(5,new tc(1,3))),new tu(2,12,12,10,10,new tl(7,new tc(1,5))),new tu(3,14,14,12,12,new tl(10,new tc(1,8))),new tu(4,16,16,14,14,new tl(12,new tc(1,12))),new tu(5,18,18,16,16,new tl(14,new tc(1,18))),new tu(6,20,20,18,18,new tl(18,new tc(1,22))),new tu(7,22,22,20,20,new tl(20,new tc(1,30))),new tu(8,24,24,22,22,new tl(24,new tc(1,36))),new tu(9,26,26,24,24,new tl(28,new tc(1,44))),new tu(10,32,32,14,14,new tl(36,new tc(1,62))),new tu(11,36,36,16,16,new tl(42,new tc(1,86))),new tu(12,40,40,18,18,new tl(48,new tc(1,114))),new tu(13,44,44,20,20,new tl(56,new tc(1,144))),new tu(14,48,48,22,22,new tl(68,new tc(1,174))),new tu(15,52,52,24,24,new tl(42,new tc(2,102))),new tu(16,64,64,14,14,new tl(56,new tc(2,140))),new tu(17,72,72,16,16,new tl(36,new tc(4,92))),new tu(18,80,80,18,18,new tl(48,new tc(4,114))),new tu(19,88,88,20,20,new tl(56,new tc(4,144))),new tu(20,96,96,22,22,new tl(68,new tc(4,174))),new tu(21,104,104,24,24,new tl(56,new tc(6,136))),new tu(22,120,120,18,18,new tl(68,new tc(6,175))),new tu(23,132,132,20,20,new tl(62,new tc(8,163))),new tu(24,144,144,22,22,new tl(62,new tc(8,156),new tc(2,155))),new tu(25,8,18,6,16,new tl(7,new tc(1,5))),new tu(26,8,32,6,14,new tl(11,new tc(1,10))),new tu(27,12,26,10,24,new tl(14,new tc(1,16))),new tu(28,12,36,10,16,new tl(18,new tc(1,22))),new tu(29,16,36,14,16,new tl(24,new tc(1,32))),new tu(30,16,48,14,22,new tl(28,new tc(1,49)))]}}tu.VERSIONS=tu.buildVersions();class th{constructor(e){let t=e.getHeight();if(t<8||t>144||(1&t)!=0)throw new z;this.version=th.readVersion(e),this.mappingBitMatrix=this.extractDataRegion(e),this.readMappingMatrix=new X(this.mappingBitMatrix.getWidth(),this.mappingBitMatrix.getHeight())}getVersion(){return this.version}static readVersion(e){let t=e.getHeight(),r=e.getWidth();return tu.getVersionForDimensions(t,r)}readCodewords(){let e=new Int8Array(this.version.getTotalCodewords()),t=0,r=4,n=0,i=this.mappingBitMatrix.getHeight(),o=this.mappingBitMatrix.getWidth(),a=!1,s=!1,l=!1,c=!1;do if(r!==i||0!==n||a){if(r!==i-2||0!==n||(3&o)==0||s){if(r!==i+4||2!==n||(7&o)!=0||l){if(r!==i-2||0!==n||(7&o)!=4||c){do r<i&&n>=0&&!this.readMappingMatrix.get(n,r)&&(e[t++]=255&this.readUtah(r,n,i,o)),r-=2,n+=2;while(r>=0&&n<o);r+=1,n+=3;do r>=0&&n<o&&!this.readMappingMatrix.get(n,r)&&(e[t++]=255&this.readUtah(r,n,i,o)),r+=2,n-=2;while(r<i&&n>=0);r+=3,n+=1}else e[t++]=255&this.readCorner4(i,o),r-=2,n+=2,c=!0}else e[t++]=255&this.readCorner3(i,o),r-=2,n+=2,l=!0}else e[t++]=255&this.readCorner2(i,o),r-=2,n+=2,s=!0}else e[t++]=255&this.readCorner1(i,o),r-=2,n+=2,a=!0;while(r<i||n<o);if(t!==this.version.getTotalCodewords())throw new z;return e}readModule(e,t,r,n){return e<0&&(e+=r,t+=4-(r+4&7)),t<0&&(t+=n,e+=4-(n+4&7)),this.readMappingMatrix.set(t,e),this.mappingBitMatrix.get(t,e)}readUtah(e,t,r,n){let i=0;return this.readModule(e-2,t-2,r,n)&&(i|=1),i<<=1,this.readModule(e-2,t-1,r,n)&&(i|=1),i<<=1,this.readModule(e-1,t-2,r,n)&&(i|=1),i<<=1,this.readModule(e-1,t-1,r,n)&&(i|=1),i<<=1,this.readModule(e-1,t,r,n)&&(i|=1),i<<=1,this.readModule(e,t-2,r,n)&&(i|=1),i<<=1,this.readModule(e,t-1,r,n)&&(i|=1),i<<=1,this.readModule(e,t,r,n)&&(i|=1),i}readCorner1(e,t){let r=0;return this.readModule(e-1,0,e,t)&&(r|=1),r<<=1,this.readModule(e-1,1,e,t)&&(r|=1),r<<=1,this.readModule(e-1,2,e,t)&&(r|=1),r<<=1,this.readModule(0,t-2,e,t)&&(r|=1),r<<=1,this.readModule(0,t-1,e,t)&&(r|=1),r<<=1,this.readModule(1,t-1,e,t)&&(r|=1),r<<=1,this.readModule(2,t-1,e,t)&&(r|=1),r<<=1,this.readModule(3,t-1,e,t)&&(r|=1),r}readCorner2(e,t){let r=0;return this.readModule(e-3,0,e,t)&&(r|=1),r<<=1,this.readModule(e-2,0,e,t)&&(r|=1),r<<=1,this.readModule(e-1,0,e,t)&&(r|=1),r<<=1,this.readModule(0,t-4,e,t)&&(r|=1),r<<=1,this.readModule(0,t-3,e,t)&&(r|=1),r<<=1,this.readModule(0,t-2,e,t)&&(r|=1),r<<=1,this.readModule(0,t-1,e,t)&&(r|=1),r<<=1,this.readModule(1,t-1,e,t)&&(r|=1),r}readCorner3(e,t){let r=0;return this.readModule(e-1,0,e,t)&&(r|=1),r<<=1,this.readModule(e-1,t-1,e,t)&&(r|=1),r<<=1,this.readModule(0,t-3,e,t)&&(r|=1),r<<=1,this.readModule(0,t-2,e,t)&&(r|=1),r<<=1,this.readModule(0,t-1,e,t)&&(r|=1),r<<=1,this.readModule(1,t-3,e,t)&&(r|=1),r<<=1,this.readModule(1,t-2,e,t)&&(r|=1),r<<=1,this.readModule(1,t-1,e,t)&&(r|=1),r}readCorner4(e,t){let r=0;return this.readModule(e-3,0,e,t)&&(r|=1),r<<=1,this.readModule(e-2,0,e,t)&&(r|=1),r<<=1,this.readModule(e-1,0,e,t)&&(r|=1),r<<=1,this.readModule(0,t-2,e,t)&&(r|=1),r<<=1,this.readModule(0,t-1,e,t)&&(r|=1),r<<=1,this.readModule(1,t-1,e,t)&&(r|=1),r<<=1,this.readModule(2,t-1,e,t)&&(r|=1),r<<=1,this.readModule(3,t-1,e,t)&&(r|=1),r}extractDataRegion(e){let t=this.version.getSymbolSizeRows(),r=this.version.getSymbolSizeColumns();if(e.getHeight()!==t)throw new R("Dimension of bitMatrix must match the version size");let n=this.version.getDataRegionSizeRows(),i=this.version.getDataRegionSizeColumns(),o=t/n|0,a=r/i|0,s=new X(a*i,o*n);for(let t=0;t<o;++t){let r=t*n;for(let o=0;o<a;++o){let a=o*i;for(let l=0;l<n;++l){let c=t*(n+2)+1+l,u=r+l;for(let t=0;t<i;++t){let r=o*(i+2)+1+t;if(e.get(r,c)){let e=a+t;s.set(e,u)}}}}}return s}}class td{constructor(e,t){this.numDataCodewords=e,this.codewords=t}static getDataBlocks(e,t){let r=t.getECBlocks(),n=0,i=r.getECBlocks();for(let e of i)n+=e.getCount();let o=Array(n),a=0;for(let e of i)for(let t=0;t<e.getCount();t++){let t=e.getDataCodewords(),n=r.getECCodewords()+t;o[a++]=new td(t,new Uint8Array(n))}let s=o[0].codewords.length-r.getECCodewords(),l=s-1,c=0;for(let t=0;t<l;t++)for(let r=0;r<a;r++)o[r].codewords[t]=e[c++];let u=24===t.getVersionNumber(),h=u?8:a;for(let t=0;t<h;t++)o[t].codewords[s-1]=e[c++];let d=o[0].codewords.length;for(let t=s;t<d;t++)for(let r=0;r<a;r++){let n=u?(r+8)%a:r,i=u&&n>7?t-1:t;o[n].codewords[i]=e[c++]}if(c!==e.length)throw new R;return o}getNumDataCodewords(){return this.numDataCodewords}getCodewords(){return this.codewords}}class tf{constructor(e){this.bytes=e,this.byteOffset=0,this.bitOffset=0}getBitOffset(){return this.bitOffset}getByteOffset(){return this.byteOffset}readBits(e){if(e<1||e>32||e>this.available())throw new R(""+e);let t=0,r=this.bitOffset,n=this.byteOffset,i=this.bytes;if(r>0){let o=8-r,a=e<o?e:o,s=o-a;t=(i[n]&255>>8-a<<s)>>s,e-=a,8===(r+=a)&&(r=0,n++)}if(e>0){for(;e>=8;)t=t<<8|255&i[n],n++,e-=8;if(e>0){let o=8-e;t=t<<e|(i[n]&255>>o<<o)>>o,r+=e}}return this.bitOffset=r,this.byteOffset=n,t}available(){return 8*(this.bytes.length-this.byteOffset)-this.bitOffset}}(c=E||(E={}))[c.PAD_ENCODE=0]="PAD_ENCODE",c[c.ASCII_ENCODE=1]="ASCII_ENCODE",c[c.C40_ENCODE=2]="C40_ENCODE",c[c.TEXT_ENCODE=3]="TEXT_ENCODE",c[c.ANSIX12_ENCODE=4]="ANSIX12_ENCODE",c[c.EDIFACT_ENCODE=5]="EDIFACT_ENCODE",c[c.BASE256_ENCODE=6]="BASE256_ENCODE";class tg{static decode(e){let t=new tf(e),r=new Y,n=new Y,i=[],o=E.ASCII_ENCODE;do if(o===E.ASCII_ENCODE)o=this.decodeAsciiSegment(t,r,n);else{switch(o){case E.C40_ENCODE:this.decodeC40Segment(t,r);break;case E.TEXT_ENCODE:this.decodeTextSegment(t,r);break;case E.ANSIX12_ENCODE:this.decodeAnsiX12Segment(t,r);break;case E.EDIFACT_ENCODE:this.decodeEdifactSegment(t,r);break;case E.BASE256_ENCODE:this.decodeBase256Segment(t,r,i);break;default:throw new z}o=E.ASCII_ENCODE}while(o!==E.PAD_ENCODE&&t.available()>0);return n.length()>0&&r.append(n.toString()),new ea(e,r.toString(),0===i.length?null:i,null)}static decodeAsciiSegment(e,t,r){let n=!1;do{let i=e.readBits(8);if(0===i)throw new z;if(i<=128){n&&(i+=128),t.append(String.fromCharCode(i-1));break}else if(129===i)return E.PAD_ENCODE;else if(i<=229){let e=i-130;e<10&&t.append("0"),t.append(""+e)}else switch(i){case 230:return E.C40_ENCODE;case 231:return E.BASE256_ENCODE;case 232:t.append("\x1d");break;case 233:case 234:case 241:break;case 235:n=!0;break;case 236:t.append("[)>\x1e05\x1d"),r.insert(0,"\x1e\x04");break;case 237:t.append("[)>\x1e06\x1d"),r.insert(0,"\x1e\x04");break;case 238:return E.ANSIX12_ENCODE;case 239:return E.TEXT_ENCODE;case 240:return E.EDIFACT_ENCODE;default:if(254!==i||0!==e.available())throw new z}}while(e.available()>0);return E.ASCII_ENCODE}static decodeC40Segment(e,t){let r=!1,n=[],i=0;do{if(8===e.available())return;let o=e.readBits(8);if(254===o)return;this.parseTwoBytes(o,e.readBits(8),n);for(let e=0;e<3;e++){let o=n[e];switch(i){case 0:if(o<3)i=o+1;else if(o<this.C40_BASIC_SET_CHARS.length){let e=this.C40_BASIC_SET_CHARS[o];r?(t.append(String.fromCharCode(e.charCodeAt(0)+128)),r=!1):t.append(e)}else throw new z;break;case 1:r?(t.append(String.fromCharCode(o+128)),r=!1):t.append(String.fromCharCode(o)),i=0;break;case 2:if(o<this.C40_SHIFT2_SET_CHARS.length){let e=this.C40_SHIFT2_SET_CHARS[o];r?(t.append(String.fromCharCode(e.charCodeAt(0)+128)),r=!1):t.append(e)}else switch(o){case 27:t.append("\x1d");break;case 30:r=!0;break;default:throw new z}i=0;break;case 3:r?(t.append(String.fromCharCode(o+224)),r=!1):t.append(String.fromCharCode(o+96)),i=0;break;default:throw new z}}}while(e.available()>0)}static decodeTextSegment(e,t){let r=!1,n=[],i=0;do{if(8===e.available())return;let o=e.readBits(8);if(254===o)return;this.parseTwoBytes(o,e.readBits(8),n);for(let e=0;e<3;e++){let o=n[e];switch(i){case 0:if(o<3)i=o+1;else if(o<this.TEXT_BASIC_SET_CHARS.length){let e=this.TEXT_BASIC_SET_CHARS[o];r?(t.append(String.fromCharCode(e.charCodeAt(0)+128)),r=!1):t.append(e)}else throw new z;break;case 1:r?(t.append(String.fromCharCode(o+128)),r=!1):t.append(String.fromCharCode(o)),i=0;break;case 2:if(o<this.TEXT_SHIFT2_SET_CHARS.length){let e=this.TEXT_SHIFT2_SET_CHARS[o];r?(t.append(String.fromCharCode(e.charCodeAt(0)+128)),r=!1):t.append(e)}else switch(o){case 27:t.append("\x1d");break;case 30:r=!0;break;default:throw new z}i=0;break;case 3:if(o<this.TEXT_SHIFT3_SET_CHARS.length){let e=this.TEXT_SHIFT3_SET_CHARS[o];r?(t.append(String.fromCharCode(e.charCodeAt(0)+128)),r=!1):t.append(e),i=0}else throw new z;break;default:throw new z}}}while(e.available()>0)}static decodeAnsiX12Segment(e,t){let r=[];do{if(8===e.available())return;let n=e.readBits(8);if(254===n)return;this.parseTwoBytes(n,e.readBits(8),r);for(let e=0;e<3;e++){let n=r[e];switch(n){case 0:t.append("\r");break;case 1:t.append("*");break;case 2:t.append(">");break;case 3:t.append(" ");break;default:if(n<14)t.append(String.fromCharCode(n+44));else if(n<40)t.append(String.fromCharCode(n+51));else throw new z}}}while(e.available()>0)}static parseTwoBytes(e,t,r){let n=(e<<8)+t-1,i=Math.floor(n/1600);r[0]=i,n-=1600*i,i=Math.floor(n/40),r[1]=i,r[2]=n-40*i}static decodeEdifactSegment(e,t){do{if(16>=e.available())return;for(let r=0;r<4;r++){let r=e.readBits(6);if(31===r){let t=8-e.getBitOffset();8!==t&&e.readBits(t);return}(32&r)==0&&(r|=64),t.append(String.fromCharCode(r))}}while(e.available()>0)}static decodeBase256Segment(e,t,r){let n,i=1+e.getByteOffset(),o=this.unrandomize255State(e.readBits(8),i++);if((n=0===o?e.available()/8|0:o<250?o:250*(o-249)+this.unrandomize255State(e.readBits(8),i++))<0)throw new z;let a=new Uint8Array(n);for(let t=0;t<n;t++){if(8>e.available())throw new z;a[t]=this.unrandomize255State(e.readBits(8),i++)}r.push(a);try{t.append(G.decode(a,W.ISO88591))}catch(e){throw new ed("Platform does not support required encoding: "+e.message)}}static unrandomize255State(e,t){let r=e-(149*t%255+1);return r>=0?r:r+256}}tg.C40_BASIC_SET_CHARS=["*","*","*"," ","0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"],tg.C40_SHIFT2_SET_CHARS=["!",'"',"#","$","%","&","'","(",")","*","+",",","-",".","/",":",";","<","=",">","?","@","[","\\","]","^","_"],tg.TEXT_BASIC_SET_CHARS=["*","*","*"," ","0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z"],tg.TEXT_SHIFT2_SET_CHARS=tg.C40_SHIFT2_SET_CHARS,tg.TEXT_SHIFT3_SET_CHARS=["`","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","{","|","}","~","\x7f"];class tp{constructor(){this.rsDecoder=new ef(eu.DATA_MATRIX_FIELD_256)}decode(e){let t=new th(e),r=t.getVersion(),n=t.readCodewords(),i=td.getDataBlocks(n,r),o=0;for(let e of i)o+=e.getNumDataCodewords();let a=new Uint8Array(o),s=i.length;for(let e=0;e<s;e++){let t=i[e],r=t.getCodewords(),n=t.getNumDataCodewords();this.correctErrors(r,n);for(let t=0;t<n;t++)a[t*s+e]=r[t]}return tg.decode(a)}correctErrors(e,t){let r=new Int32Array(e);try{this.rsDecoder.decode(r,e.length-t)}catch(e){throw new v}for(let n=0;n<t;n++)e[n]=r[n]}}class tm{constructor(e){this.image=e,this.rectangleDetector=new eE(this.image)}detect(){let e=this.rectangleDetector.detect(),t=this.detectSolid1(e);if((t=this.detectSolid2(t))[3]=this.correctTopRight(t),!t[3])throw new Z;let r=(t=this.shiftToModuleCenter(t))[0],n=t[1],i=t[2],o=t[3],a=this.transitionsBetween(r,o)+1,s=this.transitionsBetween(i,o)+1;return(1&a)==1&&(a+=1),(1&s)==1&&(s+=1),4*a<7*s&&4*s<7*a&&(a=s=Math.max(a,s)),new eA(tm.sampleGrid(this.image,r,n,i,o,a,s),[r,n,i,o])}static shiftPoint(e,t,r){let n=(t.getX()-e.getX())/(r+1),i=(t.getY()-e.getY())/(r+1);return new ew(e.getX()+n,e.getY()+i)}static moveAway(e,t,r){let n=e.getX(),i=e.getY();return n<t?n-=1:n+=1,i<r?i-=1:i+=1,new ew(n,i)}detectSolid1(e){let t=e[0],r=e[1],n=e[3],i=e[2],o=this.transitionsBetween(t,r),a=this.transitionsBetween(r,n),s=this.transitionsBetween(n,i),l=this.transitionsBetween(i,t),c=o,u=[i,t,r,n];return c>a&&(c=a,u[0]=t,u[1]=r,u[2]=n,u[3]=i),c>s&&(c=s,u[0]=r,u[1]=n,u[2]=i,u[3]=t),c>l&&(u[0]=n,u[1]=i,u[2]=t,u[3]=r),u}detectSolid2(e){let t=e[0],r=e[1],n=e[2],i=e[3],o=this.transitionsBetween(t,i),a=tm.shiftPoint(r,n,(o+1)*4),s=tm.shiftPoint(n,r,(o+1)*4);return this.transitionsBetween(a,t)<this.transitionsBetween(s,i)?(e[0]=t,e[1]=r,e[2]=n,e[3]=i):(e[0]=r,e[1]=n,e[2]=i,e[3]=t),e}correctTopRight(e){let t=e[0],r=e[1],n=e[2],i=e[3],o=this.transitionsBetween(t,i),a=this.transitionsBetween(r,i),s=tm.shiftPoint(t,r,(a+1)*4),l=tm.shiftPoint(n,r,(o+1)*4);o=this.transitionsBetween(s,i),a=this.transitionsBetween(l,i);let c=new ew(i.getX()+(n.getX()-r.getX())/(o+1),i.getY()+(n.getY()-r.getY())/(o+1)),u=new ew(i.getX()+(t.getX()-r.getX())/(a+1),i.getY()+(t.getY()-r.getY())/(a+1));if(!this.isValid(c))return this.isValid(u)?u:null;return this.isValid(u)?this.transitionsBetween(s,c)+this.transitionsBetween(l,c)>this.transitionsBetween(s,u)+this.transitionsBetween(l,u)?c:u:c}shiftToModuleCenter(e){let t,r,n=e[0],i=e[1],o=e[2],a=e[3],s=this.transitionsBetween(n,a)+1,l=this.transitionsBetween(o,a)+1,c=tm.shiftPoint(n,i,4*l),u=tm.shiftPoint(o,i,4*s);s=this.transitionsBetween(c,a)+1,l=this.transitionsBetween(u,a)+1,(1&s)==1&&(s+=1),(1&l)==1&&(l+=1);let h=(n.getX()+i.getX()+o.getX()+a.getX())/4,d=(n.getY()+i.getY()+o.getY()+a.getY())/4;return n=tm.moveAway(n,h,d),i=tm.moveAway(i,h,d),o=tm.moveAway(o,h,d),a=tm.moveAway(a,h,d),c=tm.shiftPoint(n,i,4*l),c=tm.shiftPoint(c,a,4*s),t=tm.shiftPoint(i,n,4*l),t=tm.shiftPoint(t,o,4*s),u=tm.shiftPoint(o,a,4*l),u=tm.shiftPoint(u,i,4*s),r=tm.shiftPoint(a,o,4*l),[c,t,u,r=tm.shiftPoint(r,n,4*s)]}isValid(e){return e.getX()>=0&&e.getX()<this.image.getWidth()&&e.getY()>0&&e.getY()<this.image.getHeight()}static sampleGrid(e,t,r,n,i,o,a){return e_.getInstance().sampleGrid(e,o,a,.5,.5,o-.5,.5,o-.5,a-.5,.5,a-.5,t.getX(),t.getY(),i.getX(),i.getY(),n.getX(),n.getY(),r.getX(),r.getY())}transitionsBetween(e,t){let r=Math.trunc(e.getX()),n=Math.trunc(e.getY()),i=Math.trunc(t.getX()),o=Math.trunc(t.getY()),a=Math.abs(o-n)>Math.abs(i-r);if(a){let e=r;r=n,n=e,e=i,i=o,o=e}let s=Math.abs(i-r),l=Math.abs(o-n),c=-s/2,u=n<o?1:-1,h=r<i?1:-1,d=0,f=this.image.get(a?n:r,a?r:n);for(let e=r,t=n;e!==i;e+=h){let r=this.image.get(a?t:e,a?e:t);if(r!==f&&(d++,f=r),(c+=l)>0){if(t===o)break;t+=u,c-=s}}return d}}class tw{constructor(){this.decoder=new tp}decode(e,t=null){let r,n;if(null!=t&&t.has(H.PURE_BARCODE)){let t=tw.extractPureBits(e.getBlackMatrix());r=this.decoder.decode(t),n=tw.NO_POINTS}else{let t=new tm(e.getBlackMatrix()).detect();r=this.decoder.decode(t.getBits()),n=t.getPoints()}let i=r.getRawBytes(),o=new en(r.getText(),i,8*i.length,n,ei.DATA_MATRIX,P.currentTimeMillis()),a=r.getByteSegments();null!=a&&o.putMetadata(eo.BYTE_SEGMENTS,a);let s=r.getECLevel();return null!=s&&o.putMetadata(eo.ERROR_CORRECTION_LEVEL,s),o}reset(){}static extractPureBits(e){let t=e.getTopLeftOnBit(),r=e.getBottomRightOnBit();if(null==t||null==r)throw new Z;let n=this.moduleSize(t,e),i=t[1],o=r[1],a=t[0],s=(r[0]-a+1)/n,l=(o-i+1)/n;if(s<=0||l<=0)throw new Z;let c=n/2;i+=c,a+=c;let u=new X(s,l);for(let t=0;t<l;t++){let r=i+t*n;for(let i=0;i<s;i++)e.get(a+i*n,r)&&u.set(i,t)}return u}static moduleSize(e,t){let r=t.getWidth(),n=e[0],i=e[1];for(;n<r&&t.get(n,i);)n++;if(n===r)throw new Z;let o=n-e[0];if(0===o)throw new Z;return o}}tw.NO_POINTS=[];(u=I||(I={}))[u.L=0]="L",u[u.M=1]="M",u[u.Q=2]="Q",u[u.H=3]="H";class tA{constructor(e,t,r){this.value=e,this.stringValue=t,this.bits=r,tA.FOR_BITS.set(r,this),tA.FOR_VALUE.set(e,this)}getValue(){return this.value}getBits(){return this.bits}static fromString(e){switch(e){case"L":return tA.L;case"M":return tA.M;case"Q":return tA.Q;case"H":return tA.H;default:throw new D(e+"not available")}}toString(){return this.stringValue}equals(e){return e instanceof tA&&this.value===e.value}static forBits(e){if(e<0||e>=tA.FOR_BITS.size)throw new R;return tA.FOR_BITS.get(e)}}tA.FOR_BITS=new Map,tA.FOR_VALUE=new Map,tA.L=new tA(I.L,"L",1),tA.M=new tA(I.M,"M",0),tA.Q=new tA(I.Q,"Q",3),tA.H=new tA(I.H,"H",2);class tC{constructor(e){this.errorCorrectionLevel=tA.forBits(e>>3&3),this.dataMask=7&e}static numBitsDiffering(e,t){return k.bitCount(e^t)}static decodeFormatInformation(e,t){let r=tC.doDecodeFormatInformation(e,t);return null!==r?r:tC.doDecodeFormatInformation(e^tC.FORMAT_INFO_MASK_QR,t^tC.FORMAT_INFO_MASK_QR)}static doDecodeFormatInformation(e,t){let r=Number.MAX_SAFE_INTEGER,n=0;for(let i of tC.FORMAT_INFO_DECODE_LOOKUP){let o=i[0];if(o===e||o===t)return new tC(i[1]);let a=tC.numBitsDiffering(e,o);a<r&&(n=i[1],r=a),e!==t&&(a=tC.numBitsDiffering(t,o))<r&&(n=i[1],r=a)}return r<=3?new tC(n):null}getErrorCorrectionLevel(){return this.errorCorrectionLevel}getDataMask(){return this.dataMask}hashCode(){return this.errorCorrectionLevel.getBits()<<3|this.dataMask}equals(e){return e instanceof tC&&this.errorCorrectionLevel===e.errorCorrectionLevel&&this.dataMask===e.dataMask}}tC.FORMAT_INFO_MASK_QR=21522,tC.FORMAT_INFO_DECODE_LOOKUP=[Int32Array.from([21522,0]),Int32Array.from([20773,1]),Int32Array.from([24188,2]),Int32Array.from([23371,3]),Int32Array.from([17913,4]),Int32Array.from([16590,5]),Int32Array.from([20375,6]),Int32Array.from([19104,7]),Int32Array.from([30660,8]),Int32Array.from([29427,9]),Int32Array.from([32170,10]),Int32Array.from([30877,11]),Int32Array.from([26159,12]),Int32Array.from([25368,13]),Int32Array.from([27713,14]),Int32Array.from([26998,15]),Int32Array.from([5769,16]),Int32Array.from([5054,17]),Int32Array.from([7399,18]),Int32Array.from([6608,19]),Int32Array.from([1890,20]),Int32Array.from([597,21]),Int32Array.from([3340,22]),Int32Array.from([2107,23]),Int32Array.from([13663,24]),Int32Array.from([12392,25]),Int32Array.from([16177,26]),Int32Array.from([14854,27]),Int32Array.from([9396,28]),Int32Array.from([8579,29]),Int32Array.from([11994,30]),Int32Array.from([11245,31])];class tE{constructor(e,...t){this.ecCodewordsPerBlock=e,this.ecBlocks=t}getECCodewordsPerBlock(){return this.ecCodewordsPerBlock}getNumBlocks(){let e=0;for(let t of this.ecBlocks)e+=t.getCount();return e}getTotalECCodewords(){return this.ecCodewordsPerBlock*this.getNumBlocks()}getECBlocks(){return this.ecBlocks}}class tI{constructor(e,t){this.count=e,this.dataCodewords=t}getCount(){return this.count}getDataCodewords(){return this.dataCodewords}}class tS{constructor(e,t,...r){this.versionNumber=e,this.alignmentPatternCenters=t,this.ecBlocks=r;let n=0,i=r[0].getECCodewordsPerBlock();for(let e of r[0].getECBlocks())n+=e.getCount()*(e.getDataCodewords()+i);this.totalCodewords=n}getVersionNumber(){return this.versionNumber}getAlignmentPatternCenters(){return this.alignmentPatternCenters}getTotalCodewords(){return this.totalCodewords}getDimensionForVersion(){return 17+4*this.versionNumber}getECBlocksForLevel(e){return this.ecBlocks[e.getValue()]}static getProvisionalVersionForDimension(e){if(e%4!=1)throw new z;try{return this.getVersionForNumber((e-17)/4)}catch(e){throw new z}}static getVersionForNumber(e){if(e<1||e>40)throw new R;return tS.VERSIONS[e-1]}static decodeVersionInformation(e){let t=Number.MAX_SAFE_INTEGER,r=0;for(let n=0;n<tS.VERSION_DECODE_INFO.length;n++){let i=tS.VERSION_DECODE_INFO[n];if(i===e)return tS.getVersionForNumber(n+7);let o=tC.numBitsDiffering(e,i);o<t&&(r=n+7,t=o)}return t<=3?tS.getVersionForNumber(r):null}buildFunctionPattern(){let e=this.getDimensionForVersion(),t=new X(e);t.setRegion(0,0,9,9),t.setRegion(e-8,0,8,9),t.setRegion(0,e-8,9,8);let r=this.alignmentPatternCenters.length;for(let e=0;e<r;e++){let n=this.alignmentPatternCenters[e]-2;for(let i=0;i<r;i++){if((0!==e||0!==i&&i!==r-1)&&(e!==r-1||0!==i))t.setRegion(this.alignmentPatternCenters[i]-2,n,5,5)}}return t.setRegion(6,9,1,e-17),t.setRegion(9,6,e-17,1),this.versionNumber>6&&(t.setRegion(e-11,0,3,6),t.setRegion(0,e-11,6,3)),t}toString(){return""+this.versionNumber}}tS.VERSION_DECODE_INFO=Int32Array.from([31892,34236,39577,42195,48118,51042,55367,58893,63784,68472,70749,76311,79154,84390,87683,92361,96236,102084,102881,110507,110734,117786,119615,126325,127568,133589,136944,141498,145311,150283,152622,158308,161089,167017]),tS.VERSIONS=[new tS(1,new Int32Array(0),new tE(7,new tI(1,19)),new tE(10,new tI(1,16)),new tE(13,new tI(1,13)),new tE(17,new tI(1,9))),new tS(2,Int32Array.from([6,18]),new tE(10,new tI(1,34)),new tE(16,new tI(1,28)),new tE(22,new tI(1,22)),new tE(28,new tI(1,16))),new tS(3,Int32Array.from([6,22]),new tE(15,new tI(1,55)),new tE(26,new tI(1,44)),new tE(18,new tI(2,17)),new tE(22,new tI(2,13))),new tS(4,Int32Array.from([6,26]),new tE(20,new tI(1,80)),new tE(18,new tI(2,32)),new tE(26,new tI(2,24)),new tE(16,new tI(4,9))),new tS(5,Int32Array.from([6,30]),new tE(26,new tI(1,108)),new tE(24,new tI(2,43)),new tE(18,new tI(2,15),new tI(2,16)),new tE(22,new tI(2,11),new tI(2,12))),new tS(6,Int32Array.from([6,34]),new tE(18,new tI(2,68)),new tE(16,new tI(4,27)),new tE(24,new tI(4,19)),new tE(28,new tI(4,15))),new tS(7,Int32Array.from([6,22,38]),new tE(20,new tI(2,78)),new tE(18,new tI(4,31)),new tE(18,new tI(2,14),new tI(4,15)),new tE(26,new tI(4,13),new tI(1,14))),new tS(8,Int32Array.from([6,24,42]),new tE(24,new tI(2,97)),new tE(22,new tI(2,38),new tI(2,39)),new tE(22,new tI(4,18),new tI(2,19)),new tE(26,new tI(4,14),new tI(2,15))),new tS(9,Int32Array.from([6,26,46]),new tE(30,new tI(2,116)),new tE(22,new tI(3,36),new tI(2,37)),new tE(20,new tI(4,16),new tI(4,17)),new tE(24,new tI(4,12),new tI(4,13))),new tS(10,Int32Array.from([6,28,50]),new tE(18,new tI(2,68),new tI(2,69)),new tE(26,new tI(4,43),new tI(1,44)),new tE(24,new tI(6,19),new tI(2,20)),new tE(28,new tI(6,15),new tI(2,16))),new tS(11,Int32Array.from([6,30,54]),new tE(20,new tI(4,81)),new tE(30,new tI(1,50),new tI(4,51)),new tE(28,new tI(4,22),new tI(4,23)),new tE(24,new tI(3,12),new tI(8,13))),new tS(12,Int32Array.from([6,32,58]),new tE(24,new tI(2,92),new tI(2,93)),new tE(22,new tI(6,36),new tI(2,37)),new tE(26,new tI(4,20),new tI(6,21)),new tE(28,new tI(7,14),new tI(4,15))),new tS(13,Int32Array.from([6,34,62]),new tE(26,new tI(4,107)),new tE(22,new tI(8,37),new tI(1,38)),new tE(24,new tI(8,20),new tI(4,21)),new tE(22,new tI(12,11),new tI(4,12))),new tS(14,Int32Array.from([6,26,46,66]),new tE(30,new tI(3,115),new tI(1,116)),new tE(24,new tI(4,40),new tI(5,41)),new tE(20,new tI(11,16),new tI(5,17)),new tE(24,new tI(11,12),new tI(5,13))),new tS(15,Int32Array.from([6,26,48,70]),new tE(22,new tI(5,87),new tI(1,88)),new tE(24,new tI(5,41),new tI(5,42)),new tE(30,new tI(5,24),new tI(7,25)),new tE(24,new tI(11,12),new tI(7,13))),new tS(16,Int32Array.from([6,26,50,74]),new tE(24,new tI(5,98),new tI(1,99)),new tE(28,new tI(7,45),new tI(3,46)),new tE(24,new tI(15,19),new tI(2,20)),new tE(30,new tI(3,15),new tI(13,16))),new tS(17,Int32Array.from([6,30,54,78]),new tE(28,new tI(1,107),new tI(5,108)),new tE(28,new tI(10,46),new tI(1,47)),new tE(28,new tI(1,22),new tI(15,23)),new tE(28,new tI(2,14),new tI(17,15))),new tS(18,Int32Array.from([6,30,56,82]),new tE(30,new tI(5,120),new tI(1,121)),new tE(26,new tI(9,43),new tI(4,44)),new tE(28,new tI(17,22),new tI(1,23)),new tE(28,new tI(2,14),new tI(19,15))),new tS(19,Int32Array.from([6,30,58,86]),new tE(28,new tI(3,113),new tI(4,114)),new tE(26,new tI(3,44),new tI(11,45)),new tE(26,new tI(17,21),new tI(4,22)),new tE(26,new tI(9,13),new tI(16,14))),new tS(20,Int32Array.from([6,34,62,90]),new tE(28,new tI(3,107),new tI(5,108)),new tE(26,new tI(3,41),new tI(13,42)),new tE(30,new tI(15,24),new tI(5,25)),new tE(28,new tI(15,15),new tI(10,16))),new tS(21,Int32Array.from([6,28,50,72,94]),new tE(28,new tI(4,116),new tI(4,117)),new tE(26,new tI(17,42)),new tE(28,new tI(17,22),new tI(6,23)),new tE(30,new tI(19,16),new tI(6,17))),new tS(22,Int32Array.from([6,26,50,74,98]),new tE(28,new tI(2,111),new tI(7,112)),new tE(28,new tI(17,46)),new tE(30,new tI(7,24),new tI(16,25)),new tE(24,new tI(34,13))),new tS(23,Int32Array.from([6,30,54,78,102]),new tE(30,new tI(4,121),new tI(5,122)),new tE(28,new tI(4,47),new tI(14,48)),new tE(30,new tI(11,24),new tI(14,25)),new tE(30,new tI(16,15),new tI(14,16))),new tS(24,Int32Array.from([6,28,54,80,106]),new tE(30,new tI(6,117),new tI(4,118)),new tE(28,new tI(6,45),new tI(14,46)),new tE(30,new tI(11,24),new tI(16,25)),new tE(30,new tI(30,16),new tI(2,17))),new tS(25,Int32Array.from([6,32,58,84,110]),new tE(26,new tI(8,106),new tI(4,107)),new tE(28,new tI(8,47),new tI(13,48)),new tE(30,new tI(7,24),new tI(22,25)),new tE(30,new tI(22,15),new tI(13,16))),new tS(26,Int32Array.from([6,30,58,86,114]),new tE(28,new tI(10,114),new tI(2,115)),new tE(28,new tI(19,46),new tI(4,47)),new tE(28,new tI(28,22),new tI(6,23)),new tE(30,new tI(33,16),new tI(4,17))),new tS(27,Int32Array.from([6,34,62,90,118]),new tE(30,new tI(8,122),new tI(4,123)),new tE(28,new tI(22,45),new tI(3,46)),new tE(30,new tI(8,23),new tI(26,24)),new tE(30,new tI(12,15),new tI(28,16))),new tS(28,Int32Array.from([6,26,50,74,98,122]),new tE(30,new tI(3,117),new tI(10,118)),new tE(28,new tI(3,45),new tI(23,46)),new tE(30,new tI(4,24),new tI(31,25)),new tE(30,new tI(11,15),new tI(31,16))),new tS(29,Int32Array.from([6,30,54,78,102,126]),new tE(30,new tI(7,116),new tI(7,117)),new tE(28,new tI(21,45),new tI(7,46)),new tE(30,new tI(1,23),new tI(37,24)),new tE(30,new tI(19,15),new tI(26,16))),new tS(30,Int32Array.from([6,26,52,78,104,130]),new tE(30,new tI(5,115),new tI(10,116)),new tE(28,new tI(19,47),new tI(10,48)),new tE(30,new tI(15,24),new tI(25,25)),new tE(30,new tI(23,15),new tI(25,16))),new tS(31,Int32Array.from([6,30,56,82,108,134]),new tE(30,new tI(13,115),new tI(3,116)),new tE(28,new tI(2,46),new tI(29,47)),new tE(30,new tI(42,24),new tI(1,25)),new tE(30,new tI(23,15),new tI(28,16))),new tS(32,Int32Array.from([6,34,60,86,112,138]),new tE(30,new tI(17,115)),new tE(28,new tI(10,46),new tI(23,47)),new tE(30,new tI(10,24),new tI(35,25)),new tE(30,new tI(19,15),new tI(35,16))),new tS(33,Int32Array.from([6,30,58,86,114,142]),new tE(30,new tI(17,115),new tI(1,116)),new tE(28,new tI(14,46),new tI(21,47)),new tE(30,new tI(29,24),new tI(19,25)),new tE(30,new tI(11,15),new tI(46,16))),new tS(34,Int32Array.from([6,34,62,90,118,146]),new tE(30,new tI(13,115),new tI(6,116)),new tE(28,new tI(14,46),new tI(23,47)),new tE(30,new tI(44,24),new tI(7,25)),new tE(30,new tI(59,16),new tI(1,17))),new tS(35,Int32Array.from([6,30,54,78,102,126,150]),new tE(30,new tI(12,121),new tI(7,122)),new tE(28,new tI(12,47),new tI(26,48)),new tE(30,new tI(39,24),new tI(14,25)),new tE(30,new tI(22,15),new tI(41,16))),new tS(36,Int32Array.from([6,24,50,76,102,128,154]),new tE(30,new tI(6,121),new tI(14,122)),new tE(28,new tI(6,47),new tI(34,48)),new tE(30,new tI(46,24),new tI(10,25)),new tE(30,new tI(2,15),new tI(64,16))),new tS(37,Int32Array.from([6,28,54,80,106,132,158]),new tE(30,new tI(17,122),new tI(4,123)),new tE(28,new tI(29,46),new tI(14,47)),new tE(30,new tI(49,24),new tI(10,25)),new tE(30,new tI(24,15),new tI(46,16))),new tS(38,Int32Array.from([6,32,58,84,110,136,162]),new tE(30,new tI(4,122),new tI(18,123)),new tE(28,new tI(13,46),new tI(32,47)),new tE(30,new tI(48,24),new tI(14,25)),new tE(30,new tI(42,15),new tI(32,16))),new tS(39,Int32Array.from([6,26,54,82,110,138,166]),new tE(30,new tI(20,117),new tI(4,118)),new tE(28,new tI(40,47),new tI(7,48)),new tE(30,new tI(43,24),new tI(22,25)),new tE(30,new tI(10,15),new tI(67,16))),new tS(40,Int32Array.from([6,30,58,86,114,142,170]),new tE(30,new tI(19,118),new tI(6,119)),new tE(28,new tI(18,47),new tI(31,48)),new tE(30,new tI(34,24),new tI(34,25)),new tE(30,new tI(20,15),new tI(61,16)))],(h=S||(S={}))[h.DATA_MASK_000=0]="DATA_MASK_000",h[h.DATA_MASK_001=1]="DATA_MASK_001",h[h.DATA_MASK_010=2]="DATA_MASK_010",h[h.DATA_MASK_011=3]="DATA_MASK_011",h[h.DATA_MASK_100=4]="DATA_MASK_100",h[h.DATA_MASK_101=5]="DATA_MASK_101",h[h.DATA_MASK_110=6]="DATA_MASK_110",h[h.DATA_MASK_111=7]="DATA_MASK_111";class ty{constructor(e,t){this.value=e,this.isMasked=t}unmaskBitMatrix(e,t){for(let r=0;r<t;r++)for(let n=0;n<t;n++)this.isMasked(r,n)&&e.flip(n,r)}}ty.values=new Map([[S.DATA_MASK_000,new ty(S.DATA_MASK_000,(e,t)=>(e+t&1)==0)],[S.DATA_MASK_001,new ty(S.DATA_MASK_001,(e,t)=>(1&e)==0)],[S.DATA_MASK_010,new ty(S.DATA_MASK_010,(e,t)=>t%3==0)],[S.DATA_MASK_011,new ty(S.DATA_MASK_011,(e,t)=>(e+t)%3==0)],[S.DATA_MASK_100,new ty(S.DATA_MASK_100,(e,t)=>(Math.floor(e/2)+Math.floor(t/3)&1)==0)],[S.DATA_MASK_101,new ty(S.DATA_MASK_101,(e,t)=>e*t%6==0)],[S.DATA_MASK_110,new ty(S.DATA_MASK_110,(e,t)=>e*t%6<3)],[S.DATA_MASK_111,new ty(S.DATA_MASK_111,(e,t)=>(e+t+e*t%3&1)==0)]]);class t_{constructor(e){let t=e.getHeight();if(t<21||(3&t)!=1)throw new z;this.bitMatrix=e}readFormatInformation(){if(null!==this.parsedFormatInfo&&void 0!==this.parsedFormatInfo)return this.parsedFormatInfo;let e=0;for(let t=0;t<6;t++)e=this.copyBit(t,8,e);e=this.copyBit(7,8,e),e=this.copyBit(8,8,e),e=this.copyBit(8,7,e);for(let t=5;t>=0;t--)e=this.copyBit(8,t,e);let t=this.bitMatrix.getHeight(),r=0,n=t-7;for(let e=t-1;e>=n;e--)r=this.copyBit(8,e,r);for(let e=t-8;e<t;e++)r=this.copyBit(e,8,r);if(this.parsedFormatInfo=tC.decodeFormatInformation(e,r),null!==this.parsedFormatInfo)return this.parsedFormatInfo;throw new z}readVersion(){if(null!==this.parsedVersion&&void 0!==this.parsedVersion)return this.parsedVersion;let e=this.bitMatrix.getHeight(),t=Math.floor((e-17)/4);if(t<=6)return tS.getVersionForNumber(t);let r=0,n=e-11;for(let t=5;t>=0;t--)for(let i=e-9;i>=n;i--)r=this.copyBit(i,t,r);let i=tS.decodeVersionInformation(r);if(null!==i&&i.getDimensionForVersion()===e)return this.parsedVersion=i,i;r=0;for(let t=5;t>=0;t--)for(let i=e-9;i>=n;i--)r=this.copyBit(t,i,r);if(null!==(i=tS.decodeVersionInformation(r))&&i.getDimensionForVersion()===e)return this.parsedVersion=i,i;throw new z}copyBit(e,t,r){return(this.isMirror?this.bitMatrix.get(t,e):this.bitMatrix.get(e,t))?r<<1|1:r<<1}readCodewords(){let e=this.readFormatInformation(),t=this.readVersion(),r=ty.values.get(e.getDataMask()),n=this.bitMatrix.getHeight();r.unmaskBitMatrix(this.bitMatrix,n);let i=t.buildFunctionPattern(),o=!0,a=new Uint8Array(t.getTotalCodewords()),s=0,l=0,c=0;for(let e=n-1;e>0;e-=2){6===e&&e--;for(let t=0;t<n;t++){let r=o?n-1-t:t;for(let t=0;t<2;t++)!i.get(e-t,r)&&(c++,l<<=1,this.bitMatrix.get(e-t,r)&&(l|=1),8===c&&(a[s++]=l,c=0,l=0))}o=!o}if(s!==t.getTotalCodewords())throw new z;return a}remask(){if(null===this.parsedFormatInfo)return;let e=ty.values[this.parsedFormatInfo.getDataMask()],t=this.bitMatrix.getHeight();e.unmaskBitMatrix(this.bitMatrix,t)}setMirror(e){this.parsedVersion=null,this.parsedFormatInfo=null,this.isMirror=e}mirror(){let e=this.bitMatrix;for(let t=0,r=e.getWidth();t<r;t++)for(let r=t+1,n=e.getHeight();r<n;r++)e.get(t,r)!==e.get(r,t)&&(e.flip(r,t),e.flip(t,r))}}class tT{constructor(e,t){this.numDataCodewords=e,this.codewords=t}static getDataBlocks(e,t,r){if(e.length!==t.getTotalCodewords())throw new R;let n=t.getECBlocksForLevel(r),i=0,o=n.getECBlocks();for(let e of o)i+=e.getCount();let a=Array(i),s=0;for(let e of o)for(let t=0;t<e.getCount();t++){let t=e.getDataCodewords(),r=n.getECCodewordsPerBlock()+t;a[s++]=new tT(t,new Uint8Array(r))}let l=a[0].codewords.length,c=a.length-1;for(;c>=0&&a[c].codewords.length!==l;){;c--}c++;let u=l-n.getECCodewordsPerBlock(),h=0;for(let t=0;t<u;t++)for(let r=0;r<s;r++)a[r].codewords[t]=e[h++];for(let t=c;t<s;t++)a[t].codewords[u]=e[h++];let d=a[0].codewords.length;for(let t=u;t<d;t++)for(let r=0;r<s;r++){let n=r<c?t:t+1;a[r].codewords[n]=e[h++]}return a}getNumDataCodewords(){return this.numDataCodewords}getCodewords(){return this.codewords}}(d=y||(y={}))[d.TERMINATOR=0]="TERMINATOR",d[d.NUMERIC=1]="NUMERIC",d[d.ALPHANUMERIC=2]="ALPHANUMERIC",d[d.STRUCTURED_APPEND=3]="STRUCTURED_APPEND",d[d.BYTE=4]="BYTE",d[d.ECI=5]="ECI",d[d.KANJI=6]="KANJI",d[d.FNC1_FIRST_POSITION=7]="FNC1_FIRST_POSITION",d[d.FNC1_SECOND_POSITION=8]="FNC1_SECOND_POSITION",d[d.HANZI=9]="HANZI";class tN{constructor(e,t,r,n){this.value=e,this.stringValue=t,this.characterCountBitsForVersions=r,this.bits=n,tN.FOR_BITS.set(n,this),tN.FOR_VALUE.set(e,this)}static forBits(e){let t=tN.FOR_BITS.get(e);if(void 0===t)throw new R;return t}getCharacterCountBits(e){let t;let r=e.getVersionNumber();return t=r<=9?0:r<=26?1:2,this.characterCountBitsForVersions[t]}getValue(){return this.value}getBits(){return this.bits}equals(e){return e instanceof tN&&this.value===e.value}toString(){return this.stringValue}}tN.FOR_BITS=new Map,tN.FOR_VALUE=new Map,tN.TERMINATOR=new tN(y.TERMINATOR,"TERMINATOR",Int32Array.from([0,0,0]),0),tN.NUMERIC=new tN(y.NUMERIC,"NUMERIC",Int32Array.from([10,12,14]),1),tN.ALPHANUMERIC=new tN(y.ALPHANUMERIC,"ALPHANUMERIC",Int32Array.from([9,11,13]),2),tN.STRUCTURED_APPEND=new tN(y.STRUCTURED_APPEND,"STRUCTURED_APPEND",Int32Array.from([0,0,0]),3),tN.BYTE=new tN(y.BYTE,"BYTE",Int32Array.from([8,16,16]),4),tN.ECI=new tN(y.ECI,"ECI",Int32Array.from([0,0,0]),7),tN.KANJI=new tN(y.KANJI,"KANJI",Int32Array.from([8,10,12]),8),tN.FNC1_FIRST_POSITION=new tN(y.FNC1_FIRST_POSITION,"FNC1_FIRST_POSITION",Int32Array.from([0,0,0]),5),tN.FNC1_SECOND_POSITION=new tN(y.FNC1_SECOND_POSITION,"FNC1_SECOND_POSITION",Int32Array.from([0,0,0]),9),tN.HANZI=new tN(y.HANZI,"HANZI",Int32Array.from([8,10,12]),13);class tM{static decode(e,t,r,n){let i=new tf(e),o=new Y,a=[],s=-1,l=-1;try{let e,r=null,c=!1;do{if(4>i.available())e=tN.TERMINATOR;else{let t=i.readBits(4);e=tN.forBits(t)}switch(e){case tN.TERMINATOR:break;case tN.FNC1_FIRST_POSITION:case tN.FNC1_SECOND_POSITION:c=!0;break;case tN.STRUCTURED_APPEND:if(16>i.available())throw new z;s=i.readBits(8),l=i.readBits(8);break;case tN.ECI:let u=tM.parseECIValue(i);if(r=V.getCharacterSetECIByValue(u),null===r)throw new z;break;case tN.HANZI:let h=i.readBits(4),d=i.readBits(e.getCharacterCountBits(t));h===tM.GB2312_SUBSET&&tM.decodeHanziSegment(i,o,d);break;default:let f=i.readBits(e.getCharacterCountBits(t));switch(e){case tN.NUMERIC:tM.decodeNumericSegment(i,o,f);break;case tN.ALPHANUMERIC:tM.decodeAlphanumericSegment(i,o,f,c);break;case tN.BYTE:tM.decodeByteSegment(i,o,f,r,a,n);break;case tN.KANJI:tM.decodeKanjiSegment(i,o,f);break;default:throw new z}}}while(e!==tN.TERMINATOR)}catch(e){throw new z}return new ea(e,o.toString(),0===a.length?null:a,null===r?null:r.toString(),s,l)}static decodeHanziSegment(e,t,r){if(13*r>e.available())throw new z;let n=new Uint8Array(2*r),i=0;for(;r>0;){let t=e.readBits(13),o=t/96<<8&0xffffffff|t%96;o<959?o+=41377:o+=42657,n[i]=o>>8&255,n[i+1]=255&o,i+=2,r--}try{t.append(G.decode(n,W.GB2312))}catch(e){throw new z(e)}}static decodeKanjiSegment(e,t,r){if(13*r>e.available())throw new z;let n=new Uint8Array(2*r),i=0;for(;r>0;){let t=e.readBits(13),o=t/192<<8&0xffffffff|t%192;o<7936?o+=33088:o+=49472,n[i]=o>>8,n[i+1]=o,i+=2,r--}try{t.append(G.decode(n,W.SHIFT_JIS))}catch(e){throw new z(e)}}static decodeByteSegment(e,t,r,n,i,o){let a;if(8*r>e.available())throw new z;let s=new Uint8Array(r);for(let t=0;t<r;t++)s[t]=e.readBits(8);a=null===n?W.guessEncoding(s,o):n.getName();try{t.append(G.decode(s,a))}catch(e){throw new z(e)}i.push(s)}static toAlphaNumericChar(e){if(e>=tM.ALPHANUMERIC_CHARS.length)throw new z;return tM.ALPHANUMERIC_CHARS[e]}static decodeAlphanumericSegment(e,t,r,n){let i=t.length();for(;r>1;){if(11>e.available())throw new z;let n=e.readBits(11);t.append(tM.toAlphaNumericChar(Math.floor(n/45))),t.append(tM.toAlphaNumericChar(n%45)),r-=2}if(1===r){if(6>e.available())throw new z;t.append(tM.toAlphaNumericChar(e.readBits(6)))}if(n)for(let e=i;e<t.length();e++)"%"===t.charAt(e)&&(e<t.length()-1&&"%"===t.charAt(e+1)?t.deleteCharAt(e+1):t.setCharAt(e,"\x1d"))}static decodeNumericSegment(e,t,r){for(;r>=3;){if(10>e.available())throw new z;let n=e.readBits(10);if(n>=1e3)throw new z;t.append(tM.toAlphaNumericChar(Math.floor(n/100))),t.append(tM.toAlphaNumericChar(Math.floor(n/10)%10)),t.append(tM.toAlphaNumericChar(n%10)),r-=3}if(2===r){if(7>e.available())throw new z;let r=e.readBits(7);if(r>=100)throw new z;t.append(tM.toAlphaNumericChar(Math.floor(r/10))),t.append(tM.toAlphaNumericChar(r%10))}else if(1===r){if(4>e.available())throw new z;let r=e.readBits(4);if(r>=10)throw new z;t.append(tM.toAlphaNumericChar(r))}}static parseECIValue(e){let t=e.readBits(8);if((128&t)==0)return 127&t;if((192&t)==128)return(63&t)<<8&0xffffffff|e.readBits(8);if((224&t)==192)return(31&t)<<16&0xffffffff|e.readBits(16);throw new z}}tM.ALPHANUMERIC_CHARS="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ $%*+-./:",tM.GB2312_SUBSET=1;class tb{constructor(e){this.mirrored=e}isMirrored(){return this.mirrored}applyMirroredCorrection(e){if(!this.mirrored||null===e||e.length<3)return;let t=e[0];e[0]=e[2],e[2]=t}}class tD{constructor(){this.rsDecoder=new ef(eu.QR_CODE_FIELD_256)}decodeBooleanArray(e,t){return this.decodeBitMatrix(X.parseFromBooleanArray(e),t)}decodeBitMatrix(e,t){let r=new t_(e),n=null;try{return this.decodeBitMatrixParser(r,t)}catch(e){n=e}try{r.remask(),r.setMirror(!0),r.readVersion(),r.readFormatInformation(),r.mirror();let e=this.decodeBitMatrixParser(r,t);return e.setOther(new tb(!0)),e}catch(e){if(null!==n)throw n;throw e}}decodeBitMatrixParser(e,t){let r=e.readVersion(),n=e.readFormatInformation().getErrorCorrectionLevel(),i=e.readCodewords(),o=tT.getDataBlocks(i,r,n),a=0;for(let e of o)a+=e.getNumDataCodewords();let s=new Uint8Array(a),l=0;for(let e of o){let t=e.getCodewords(),r=e.getNumDataCodewords();this.correctErrors(t,r);for(let e=0;e<r;e++)s[l++]=t[e]}return tM.decode(s,r,n,t)}correctErrors(e,t){let r=new Int32Array(e);try{this.rsDecoder.decode(r,e.length-t)}catch(e){throw new v}for(let n=0;n<t;n++)e[n]=r[n]}}class tR extends ew{constructor(e,t,r){super(e,t),this.estimatedModuleSize=r}aboutEquals(e,t,r){if(Math.abs(t-this.getY())<=e&&Math.abs(r-this.getX())<=e){let t=Math.abs(e-this.estimatedModuleSize);return t<=1||t<=this.estimatedModuleSize}return!1}combineEstimate(e,t,r){let n=(this.getX()+t)/2,i=(this.getY()+e)/2;return new tR(n,i,(this.estimatedModuleSize+r)/2)}}class tO{constructor(e,t,r,n,i,o,a){this.image=e,this.startX=t,this.startY=r,this.width=n,this.height=i,this.moduleSize=o,this.resultPointCallback=a,this.possibleCenters=[],this.crossCheckStateCount=new Int32Array(3)}find(){let e=this.startX,t=this.height,r=e+this.width,n=this.startY+t/2,i=new Int32Array(3),o=this.image;for(let a=0;a<t;a++){let t=n+((1&a)==0?Math.floor((a+1)/2):-Math.floor((a+1)/2));i[0]=0,i[1]=0,i[2]=0;let s=e;for(;s<r&&!o.get(s,t);)s++;let l=0;for(;s<r;){if(o.get(s,t)){if(1===l)i[1]++;else if(2===l){if(this.foundPatternCross(i)){let e=this.handlePossibleCenter(i,t,s);if(null!==e)return e}i[0]=i[2],i[1]=1,i[2]=0,l=1}else i[++l]++}else 1===l&&l++,i[l]++;s++}if(this.foundPatternCross(i)){let e=this.handlePossibleCenter(i,t,r);if(null!==e)return e}}if(0!==this.possibleCenters.length)return this.possibleCenters[0];throw new Z}static centerFromEnd(e,t){return t-e[2]-e[1]/2}foundPatternCross(e){let t=this.moduleSize,r=t/2;for(let n=0;n<3;n++)if(Math.abs(t-e[n])>=r)return!1;return!0}crossCheckVertical(e,t,r,n){let i=this.image,o=i.getHeight(),a=this.crossCheckStateCount;a[0]=0,a[1]=0,a[2]=0;let s=e;for(;s>=0&&i.get(t,s)&&a[1]<=r;)a[1]++,s--;if(s<0||a[1]>r)return NaN;for(;s>=0&&!i.get(t,s)&&a[0]<=r;)a[0]++,s--;if(a[0]>r)return NaN;for(s=e+1;s<o&&i.get(t,s)&&a[1]<=r;)a[1]++,s++;if(s===o||a[1]>r)return NaN;for(;s<o&&!i.get(t,s)&&a[2]<=r;)a[2]++,s++;return a[2]>r||5*Math.abs(a[0]+a[1]+a[2]-n)>=2*n?NaN:this.foundPatternCross(a)?tO.centerFromEnd(a,s):NaN}handlePossibleCenter(e,t,r){let n=e[0]+e[1]+e[2],i=tO.centerFromEnd(e,r),o=this.crossCheckVertical(t,i,2*e[1],n);if(!isNaN(o)){let t=(e[0]+e[1]+e[2])/3;for(let e of this.possibleCenters)if(e.aboutEquals(t,o,i))return e.combineEstimate(o,i,t);let r=new tR(i,o,t);this.possibleCenters.push(r),null!==this.resultPointCallback&&void 0!==this.resultPointCallback&&this.resultPointCallback.foundPossibleResultPoint(r)}return null}}class tv extends ew{constructor(e,t,r,n){super(e,t),this.estimatedModuleSize=r,this.count=n,void 0===n&&(this.count=1)}getEstimatedModuleSize(){return this.estimatedModuleSize}getCount(){return this.count}aboutEquals(e,t,r){if(Math.abs(t-this.getY())<=e&&Math.abs(r-this.getX())<=e){let t=Math.abs(e-this.estimatedModuleSize);return t<=1||t<=this.estimatedModuleSize}return!1}combineEstimate(e,t,r){let n=this.count+1,i=(this.count*this.getX()+t)/n,o=(this.count*this.getY()+e)/n;return new tv(i,o,(this.count*this.estimatedModuleSize+r)/n,n)}}class tB{constructor(e){this.bottomLeft=e[0],this.topLeft=e[1],this.topRight=e[2]}getBottomLeft(){return this.bottomLeft}getTopLeft(){return this.topLeft}getTopRight(){return this.topRight}}class tP{constructor(e,t){this.image=e,this.resultPointCallback=t,this.possibleCenters=[],this.crossCheckStateCount=new Int32Array(5),this.resultPointCallback=t}getImage(){return this.image}getPossibleCenters(){return this.possibleCenters}find(e){let t=null!=e&&void 0!==e.get(H.TRY_HARDER),r=null!=e&&void 0!==e.get(H.PURE_BARCODE),n=this.image,i=n.getHeight(),o=n.getWidth(),a=Math.floor(3*i/(4*tP.MAX_MODULES));(a<tP.MIN_SKIP||t)&&(a=tP.MIN_SKIP);let s=!1,l=new Int32Array(5);for(let e=a-1;e<i&&!s;e+=a){l[0]=0,l[1]=0,l[2]=0,l[3]=0,l[4]=0;let t=0;for(let i=0;i<o;i++)if(n.get(i,e))(1&t)==1&&t++,l[t]++;else if((1&t)==0){if(4===t){if(tP.foundPatternCross(l)){if(!0===this.handlePossibleCenter(l,e,i,r)){if(a=2,!0===this.hasSkipped)s=this.haveMultiplyConfirmedCenters();else{let t=this.findRowSkip();t>l[2]&&(e+=t-l[2]-a,i=o-1)}}else{l[0]=l[2],l[1]=l[3],l[2]=l[4],l[3]=1,l[4]=0,t=3;continue}t=0,l[0]=0,l[1]=0,l[2]=0,l[3]=0,l[4]=0}else l[0]=l[2],l[1]=l[3],l[2]=l[4],l[3]=1,l[4]=0,t=3}else l[++t]++}else l[t]++;tP.foundPatternCross(l)&&!0===this.handlePossibleCenter(l,e,o,r)&&(a=l[0],this.hasSkipped&&(s=this.haveMultiplyConfirmedCenters()))}let c=this.selectBestPatterns();return ew.orderBestPatterns(c),new tB(c)}static centerFromEnd(e,t){return t-e[4]-e[3]-e[2]/2}static foundPatternCross(e){let t=0;for(let r=0;r<5;r++){let n=e[r];if(0===n)return!1;t+=n}if(t<7)return!1;let r=t/7,n=r/2;return Math.abs(r-e[0])<n&&Math.abs(r-e[1])<n&&Math.abs(3*r-e[2])<3*n&&Math.abs(r-e[3])<n&&Math.abs(r-e[4])<n}getCrossCheckStateCount(){let e=this.crossCheckStateCount;return e[0]=0,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e}crossCheckDiagonal(e,t,r,n){let i=this.getCrossCheckStateCount(),o=0,a=this.image;for(;e>=o&&t>=o&&a.get(t-o,e-o);)i[2]++,o++;if(e<o||t<o)return!1;for(;e>=o&&t>=o&&!a.get(t-o,e-o)&&i[1]<=r;)i[1]++,o++;if(e<o||t<o||i[1]>r)return!1;for(;e>=o&&t>=o&&a.get(t-o,e-o)&&i[0]<=r;)i[0]++,o++;if(i[0]>r)return!1;let s=a.getHeight(),l=a.getWidth();for(o=1;e+o<s&&t+o<l&&a.get(t+o,e+o);)i[2]++,o++;if(e+o>=s||t+o>=l)return!1;for(;e+o<s&&t+o<l&&!a.get(t+o,e+o)&&i[3]<r;)i[3]++,o++;if(e+o>=s||t+o>=l||i[3]>=r)return!1;for(;e+o<s&&t+o<l&&a.get(t+o,e+o)&&i[4]<r;)i[4]++,o++;return!(i[4]>=r)&&Math.abs(i[0]+i[1]+i[2]+i[3]+i[4]-n)<2*n&&tP.foundPatternCross(i)}crossCheckVertical(e,t,r,n){let i=this.image,o=i.getHeight(),a=this.getCrossCheckStateCount(),s=e;for(;s>=0&&i.get(t,s);)a[2]++,s--;if(s<0)return NaN;for(;s>=0&&!i.get(t,s)&&a[1]<=r;)a[1]++,s--;if(s<0||a[1]>r)return NaN;for(;s>=0&&i.get(t,s)&&a[0]<=r;)a[0]++,s--;if(a[0]>r)return NaN;for(s=e+1;s<o&&i.get(t,s);)a[2]++,s++;if(s===o)return NaN;for(;s<o&&!i.get(t,s)&&a[3]<r;)a[3]++,s++;if(s===o||a[3]>=r)return NaN;for(;s<o&&i.get(t,s)&&a[4]<r;)a[4]++,s++;return a[4]>=r||5*Math.abs(a[0]+a[1]+a[2]+a[3]+a[4]-n)>=2*n?NaN:tP.foundPatternCross(a)?tP.centerFromEnd(a,s):NaN}crossCheckHorizontal(e,t,r,n){let i=this.image,o=i.getWidth(),a=this.getCrossCheckStateCount(),s=e;for(;s>=0&&i.get(s,t);)a[2]++,s--;if(s<0)return NaN;for(;s>=0&&!i.get(s,t)&&a[1]<=r;)a[1]++,s--;if(s<0||a[1]>r)return NaN;for(;s>=0&&i.get(s,t)&&a[0]<=r;)a[0]++,s--;if(a[0]>r)return NaN;for(s=e+1;s<o&&i.get(s,t);)a[2]++,s++;if(s===o)return NaN;for(;s<o&&!i.get(s,t)&&a[3]<r;)a[3]++,s++;if(s===o||a[3]>=r)return NaN;for(;s<o&&i.get(s,t)&&a[4]<r;)a[4]++,s++;return a[4]>=r||5*Math.abs(a[0]+a[1]+a[2]+a[3]+a[4]-n)>=n?NaN:tP.foundPatternCross(a)?tP.centerFromEnd(a,s):NaN}handlePossibleCenter(e,t,r,n){let i=e[0]+e[1]+e[2]+e[3]+e[4],o=tP.centerFromEnd(e,r),a=this.crossCheckVertical(t,Math.floor(o),e[2],i);if(!isNaN(a)&&!isNaN(o=this.crossCheckHorizontal(Math.floor(o),Math.floor(a),e[2],i))&&(!n||this.crossCheckDiagonal(Math.floor(a),Math.floor(o),e[2],i))){let e=i/7,t=!1,r=this.possibleCenters;for(let n=0,i=r.length;n<i;n++){let i=r[n];if(i.aboutEquals(e,a,o)){r[n]=i.combineEstimate(a,o,e),t=!0;break}}if(!t){let t=new tv(o,a,e);r.push(t),null!==this.resultPointCallback&&void 0!==this.resultPointCallback&&this.resultPointCallback.foundPossibleResultPoint(t)}return!0}return!1}findRowSkip(){if(this.possibleCenters.length<=1)return 0;let e=null;for(let t of this.possibleCenters)if(t.getCount()>=tP.CENTER_QUORUM){if(null!=e)return this.hasSkipped=!0,Math.floor((Math.abs(e.getX()-t.getX())-Math.abs(e.getY()-t.getY()))/2);e=t}return 0}haveMultiplyConfirmedCenters(){let e=0,t=0,r=this.possibleCenters.length;for(let r of this.possibleCenters)r.getCount()>=tP.CENTER_QUORUM&&(e++,t+=r.getEstimatedModuleSize());if(e<3)return!1;let n=t/r,i=0;for(let e of this.possibleCenters)i+=Math.abs(e.getEstimatedModuleSize()-n);return i<=.05*t}selectBestPatterns(){let e;let t=this.possibleCenters.length;if(t<3)throw new Z;let r=this.possibleCenters;if(t>3){let n=0,i=0;for(let e of this.possibleCenters){let t=e.getEstimatedModuleSize();n+=t,i+=t*t}e=n/t;let o=Math.sqrt(i/t-e*e);r.sort((t,r)=>{let n=Math.abs(r.getEstimatedModuleSize()-e),i=Math.abs(t.getEstimatedModuleSize()-e);return n<i?-1:n>i?1:0});let a=Math.max(.2*e,o);for(let t=0;t<r.length&&r.length>3;t++)Math.abs(r[t].getEstimatedModuleSize()-e)>a&&(r.splice(t,1),t--)}if(r.length>3){let t=0;for(let e of r)t+=e.getEstimatedModuleSize();e=t/r.length,r.sort((t,r)=>{if(r.getCount()!==t.getCount())return r.getCount()-t.getCount();{let n=Math.abs(r.getEstimatedModuleSize()-e),i=Math.abs(t.getEstimatedModuleSize()-e);return n<i?1:n>i?-1:0}}),r.splice(3)}return[r[0],r[1],r[2]]}}tP.CENTER_QUORUM=2,tP.MIN_SKIP=3,tP.MAX_MODULES=57;class tL{constructor(e){this.image=e}getImage(){return this.image}getResultPointCallback(){return this.resultPointCallback}detect(e){this.resultPointCallback=null==e?null:e.get(H.NEED_RESULT_POINT_CALLBACK);let t=new tP(this.image,this.resultPointCallback).find(e);return this.processFinderPatternInfo(t)}processFinderPatternInfo(e){let t;let r=e.getTopLeft(),n=e.getTopRight(),i=e.getBottomLeft(),o=this.calculateModuleSize(r,n,i);if(o<1)throw new Z("No pattern found in proccess finder.");let a=tL.computeDimension(r,n,i,o),s=tS.getProvisionalVersionForDimension(a),l=s.getDimensionForVersion()-7,c=null;if(s.getAlignmentPatternCenters().length>0){let e=n.getX()-r.getX()+i.getX(),t=n.getY()-r.getY()+i.getY(),a=1-3/l,s=Math.floor(r.getX()+a*(e-r.getX())),u=Math.floor(r.getY()+a*(t-r.getY()));for(let e=4;e<=16;e<<=1)try{c=this.findAlignmentInRegion(o,s,u,e);break}catch(e){if(!(e instanceof Z))throw e}}let u=tL.createTransform(r,n,i,c,a),h=tL.sampleGrid(this.image,u,a);return new eA(h,t=null===c?[i,r,n]:[i,r,n,c])}static createTransform(e,t,r,n,i){let o,a,s,l;let c=i-3.5;return null!==n?(o=n.getX(),a=n.getY(),l=s=c-3):(o=t.getX()-e.getX()+r.getX(),a=t.getY()-e.getY()+r.getY(),s=c,l=c),eS.quadrilateralToQuadrilateral(3.5,3.5,c,3.5,s,l,3.5,c,e.getX(),e.getY(),t.getX(),t.getY(),o,a,r.getX(),r.getY())}static sampleGrid(e,t,r){return e_.getInstance().sampleGridWithTransform(e,r,r,t)}static computeDimension(e,t,r,n){let i=ep.round(ew.distance(e,t)/n),o=Math.floor((i+ep.round(ew.distance(e,r)/n))/2)+7;switch(3&o){case 0:o++;break;case 2:o--;break;case 3:throw new Z("Dimensions could be not found.")}return o}calculateModuleSize(e,t,r){return(this.calculateModuleSizeOneWay(e,t)+this.calculateModuleSizeOneWay(e,r))/2}calculateModuleSizeOneWay(e,t){let r=this.sizeOfBlackWhiteBlackRunBothWays(Math.floor(e.getX()),Math.floor(e.getY()),Math.floor(t.getX()),Math.floor(t.getY())),n=this.sizeOfBlackWhiteBlackRunBothWays(Math.floor(t.getX()),Math.floor(t.getY()),Math.floor(e.getX()),Math.floor(e.getY()));return isNaN(r)?n/7:isNaN(n)?r/7:(r+n)/14}sizeOfBlackWhiteBlackRunBothWays(e,t,r,n){let i=this.sizeOfBlackWhiteBlackRun(e,t,r,n),o=1,a=e-(r-e);a<0?(o=e/(e-a),a=0):a>=this.image.getWidth()&&(o=(this.image.getWidth()-1-e)/(a-e),a=this.image.getWidth()-1);let s=Math.floor(t-(n-t)*o);return o=1,s<0?(o=t/(t-s),s=0):s>=this.image.getHeight()&&(o=(this.image.getHeight()-1-t)/(s-t),s=this.image.getHeight()-1),a=Math.floor(e+(a-e)*o),(i+=this.sizeOfBlackWhiteBlackRun(e,t,a,s))-1}sizeOfBlackWhiteBlackRun(e,t,r,n){let i=Math.abs(n-t)>Math.abs(r-e);if(i){let i=e;e=t,t=i,i=r,r=n,n=i}let o=Math.abs(r-e),a=Math.abs(n-t),s=-o/2,l=e<r?1:-1,c=t<n?1:-1,u=0,h=r+l;for(let r=e,d=t;r!==h;r+=l){let l=i?d:r,h=i?r:d;if(1===u===this.image.get(l,h)){if(2===u)return ep.distance(r,d,e,t);u++}if((s+=a)>0){if(d===n)break;d+=c,s-=o}}return 2===u?ep.distance(r+l,n,e,t):NaN}findAlignmentInRegion(e,t,r,n){let i=Math.floor(n*e),o=Math.max(0,t-i),a=Math.min(this.image.getWidth()-1,t+i);if(a-o<3*e)throw new Z("Alignment top exceeds estimated module size.");let s=Math.max(0,r-i),l=Math.min(this.image.getHeight()-1,r+i);if(l-s<3*e)throw new Z("Alignment bottom exceeds estimated module size.");return new tO(this.image,o,s,a-o,l-s,e,this.resultPointCallback).find()}}class tx{constructor(){this.decoder=new tD}getDecoder(){return this.decoder}decode(e,t){let r,n;if(null!=t&&void 0!==t.get(H.PURE_BARCODE)){let i=tx.extractPureBits(e.getBlackMatrix());r=this.decoder.decodeBitMatrix(i,t),n=tx.NO_POINTS}else{let i=new tL(e.getBlackMatrix()).detect(t);r=this.decoder.decodeBitMatrix(i.getBits(),t),n=i.getPoints()}r.getOther() instanceof tb&&r.getOther().applyMirroredCorrection(n);let i=new en(r.getText(),r.getRawBytes(),void 0,n,ei.QR_CODE,void 0),o=r.getByteSegments();null!==o&&i.putMetadata(eo.BYTE_SEGMENTS,o);let a=r.getECLevel();return null!==a&&i.putMetadata(eo.ERROR_CORRECTION_LEVEL,a),r.hasStructuredAppend()&&(i.putMetadata(eo.STRUCTURED_APPEND_SEQUENCE,r.getStructuredAppendSequenceNumber()),i.putMetadata(eo.STRUCTURED_APPEND_PARITY,r.getStructuredAppendParity())),i}reset(){}static extractPureBits(e){let t=e.getTopLeftOnBit(),r=e.getBottomRightOnBit();if(null===t||null===r)throw new Z;let n=this.moduleSize(t,e),i=t[1],o=r[1],a=t[0],s=r[0];if(a>=s||i>=o||o-i!=s-a&&(s=a+(o-i))>=e.getWidth())throw new Z;let l=Math.round((s-a+1)/n),c=Math.round((o-i+1)/n);if(l<=0||c<=0||c!==l)throw new Z;let u=Math.floor(n/2);i+=u;let h=(a+=u)+Math.floor((l-1)*n)-s;if(h>0){if(h>u)throw new Z;a-=h}let d=i+Math.floor((c-1)*n)-o;if(d>0){if(d>u)throw new Z;i-=d}let f=new X(l,c);for(let t=0;t<c;t++){let r=i+Math.floor(t*n);for(let i=0;i<l;i++)e.get(a+Math.floor(i*n),r)&&f.set(i,t)}return f}static moduleSize(e,t){let r=t.getHeight(),n=t.getWidth(),i=e[0],o=e[1],a=!0,s=0;for(;i<n&&o<r;){if(a!==t.get(i,o)){if(5==++s)break;a=!a}i++,o++}if(i===n||o===r)throw new Z;return(i-e[0])/7}}tx.NO_POINTS=[];class tF{PDF417Common(){}static getBitCountSum(e){return ep.sum(e)}static toIntArray(e){if(null==e||!e.length)return tF.EMPTY_INT_ARRAY;let t=new Int32Array(e.length),r=0;for(let n of e)t[r++]=n;return t}static getCodeword(e){let t=F.binarySearch(tF.SYMBOL_TABLE,262143&e);return t<0?-1:(tF.CODEWORD_TABLE[t]-1)%tF.NUMBER_OF_CODEWORDS}}tF.NUMBER_OF_CODEWORDS=929,tF.MAX_CODEWORDS_IN_BARCODE=tF.NUMBER_OF_CODEWORDS-1,tF.MIN_ROWS_IN_BARCODE=3,tF.MAX_ROWS_IN_BARCODE=90,tF.MODULES_IN_CODEWORD=17,tF.MODULES_IN_STOP_PATTERN=18,tF.BARS_IN_MODULE=8,tF.EMPTY_INT_ARRAY=new Int32Array([]),tF.SYMBOL_TABLE=Int32Array.from([66142,66170,66206,66236,66290,66292,66350,66382,66396,66454,66470,66476,66594,66600,66614,66626,66628,66632,66640,66654,66662,66668,66682,66690,66718,66720,66748,66758,66776,66798,66802,66804,66820,66824,66832,66846,66848,66876,66880,66936,66950,66956,66968,66992,67006,67022,67036,67042,67044,67048,67062,67118,67150,67164,67214,67228,67256,67294,67322,67350,67366,67372,67398,67404,67416,67438,67474,67476,67490,67492,67496,67510,67618,67624,67650,67656,67664,67678,67686,67692,67706,67714,67716,67728,67742,67744,67772,67782,67788,67800,67822,67826,67828,67842,67848,67870,67872,67900,67904,67960,67974,67992,68016,68030,68046,68060,68066,68068,68072,68086,68104,68112,68126,68128,68156,68160,68216,68336,68358,68364,68376,68400,68414,68448,68476,68494,68508,68536,68546,68548,68552,68560,68574,68582,68588,68654,68686,68700,68706,68708,68712,68726,68750,68764,68792,68802,68804,68808,68816,68830,68838,68844,68858,68878,68892,68920,68976,68990,68994,68996,69e3,69008,69022,69024,69052,69062,69068,69080,69102,69106,69108,69142,69158,69164,69190,69208,69230,69254,69260,69272,69296,69310,69326,69340,69386,69394,69396,69410,69416,69430,69442,69444,69448,69456,69470,69478,69484,69554,69556,69666,69672,69698,69704,69712,69726,69754,69762,69764,69776,69790,69792,69820,69830,69836,69848,69870,69874,69876,69890,69918,69920,69948,69952,70008,70022,70040,70064,70078,70094,70108,70114,70116,70120,70134,70152,70174,70176,70264,70384,70412,70448,70462,70496,70524,70542,70556,70584,70594,70600,70608,70622,70630,70636,70664,70672,70686,70688,70716,70720,70776,70896,71136,71180,71192,71216,71230,71264,71292,71360,71416,71452,71480,71536,71550,71554,71556,71560,71568,71582,71584,71612,71622,71628,71640,71662,71726,71732,71758,71772,71778,71780,71784,71798,71822,71836,71864,71874,71880,71888,71902,71910,71916,71930,71950,71964,71992,72048,72062,72066,72068,72080,72094,72096,72124,72134,72140,72152,72174,72178,72180,72206,72220,72248,72304,72318,72416,72444,72456,72464,72478,72480,72508,72512,72568,72588,72600,72624,72638,72654,72668,72674,72676,72680,72694,72726,72742,72748,72774,72780,72792,72814,72838,72856,72880,72894,72910,72924,72930,72932,72936,72950,72966,72972,72984,73008,73022,73056,73084,73102,73116,73144,73156,73160,73168,73182,73190,73196,73210,73226,73234,73236,73250,73252,73256,73270,73282,73284,73296,73310,73318,73324,73346,73348,73352,73360,73374,73376,73404,73414,73420,73432,73454,73498,73518,73522,73524,73550,73564,73570,73572,73576,73590,73800,73822,73858,73860,73872,73886,73888,73916,73944,73970,73972,73992,74014,74016,74044,74048,74104,74118,74136,74160,74174,74210,74212,74216,74230,74244,74256,74270,74272,74360,74480,74502,74508,74544,74558,74592,74620,74638,74652,74680,74690,74696,74704,74726,74732,74782,74784,74812,74992,75232,75288,75326,75360,75388,75456,75512,75576,75632,75646,75650,75652,75664,75678,75680,75708,75718,75724,75736,75758,75808,75836,75840,75896,76016,76256,76736,76824,76848,76862,76896,76924,76992,77048,77296,77340,77368,77424,77438,77536,77564,77572,77576,77584,77600,77628,77632,77688,77702,77708,77720,77744,77758,77774,77788,77870,77902,77916,77922,77928,77966,77980,78008,78018,78024,78032,78046,78060,78074,78094,78136,78192,78206,78210,78212,78224,78238,78240,78268,78278,78284,78296,78322,78324,78350,78364,78448,78462,78560,78588,78600,78622,78624,78652,78656,78712,78726,78744,78768,78782,78798,78812,78818,78820,78824,78838,78862,78876,78904,78960,78974,79072,79100,79296,79352,79368,79376,79390,79392,79420,79424,79480,79600,79628,79640,79664,79678,79712,79740,79772,79800,79810,79812,79816,79824,79838,79846,79852,79894,79910,79916,79942,79948,79960,79982,79988,80006,80024,80048,80062,80078,80092,80098,80100,80104,80134,80140,80176,80190,80224,80252,80270,80284,80312,80328,80336,80350,80358,80364,80378,80390,80396,80408,80432,80446,80480,80508,80576,80632,80654,80668,80696,80752,80766,80776,80784,80798,80800,80828,80844,80856,80878,80882,80884,80914,80916,80930,80932,80936,80950,80962,80968,80976,80990,80998,81004,81026,81028,81040,81054,81056,81084,81094,81100,81112,81134,81154,81156,81160,81168,81182,81184,81212,81216,81272,81286,81292,81304,81328,81342,81358,81372,81380,81384,81398,81434,81454,81458,81460,81486,81500,81506,81508,81512,81526,81550,81564,81592,81602,81604,81608,81616,81630,81638,81644,81702,81708,81722,81734,81740,81752,81774,81778,81780,82050,82078,82080,82108,82180,82184,82192,82206,82208,82236,82240,82296,82316,82328,82352,82366,82402,82404,82408,82440,82448,82462,82464,82492,82496,82552,82672,82694,82700,82712,82736,82750,82784,82812,82830,82882,82884,82888,82896,82918,82924,82952,82960,82974,82976,83004,83008,83064,83184,83424,83468,83480,83504,83518,83552,83580,83648,83704,83740,83768,83824,83838,83842,83844,83848,83856,83872,83900,83910,83916,83928,83950,83984,84e3,84028,84032,84088,84208,84448,84928,85040,85054,85088,85116,85184,85240,85488,85560,85616,85630,85728,85756,85764,85768,85776,85790,85792,85820,85824,85880,85894,85900,85912,85936,85966,85980,86048,86080,86136,86256,86496,86976,88160,88188,88256,88312,88560,89056,89200,89214,89312,89340,89536,89592,89608,89616,89632,89664,89720,89840,89868,89880,89904,89952,89980,89998,90012,90040,90190,90204,90254,90268,90296,90306,90308,90312,90334,90382,90396,90424,90480,90494,90500,90504,90512,90526,90528,90556,90566,90572,90584,90610,90612,90638,90652,90680,90736,90750,90848,90876,90884,90888,90896,90910,90912,90940,90944,91e3,91014,91020,91032,91056,91070,91086,91100,91106,91108,91112,91126,91150,91164,91192,91248,91262,91360,91388,91584,91640,91664,91678,91680,91708,91712,91768,91888,91928,91952,91966,92e3,92028,92046,92060,92088,92098,92100,92104,92112,92126,92134,92140,92188,92216,92272,92384,92412,92608,92664,93168,93200,93214,93216,93244,93248,93304,93424,93664,93720,93744,93758,93792,93820,93888,93944,93980,94008,94064,94078,94084,94088,94096,94110,94112,94140,94150,94156,94168,94246,94252,94278,94284,94296,94318,94342,94348,94360,94384,94398,94414,94428,94440,94470,94476,94488,94512,94526,94560,94588,94606,94620,94648,94658,94660,94664,94672,94686,94694,94700,94714,94726,94732,94744,94768,94782,94816,94844,94912,94968,94990,95004,95032,95088,95102,95112,95120,95134,95136,95164,95180,95192,95214,95218,95220,95244,95256,95280,95294,95328,95356,95424,95480,95728,95758,95772,95800,95856,95870,95968,95996,96008,96016,96030,96032,96060,96064,96120,96152,96176,96190,96220,96226,96228,96232,96290,96292,96296,96310,96322,96324,96328,96336,96350,96358,96364,96386,96388,96392,96400,96414,96416,96444,96454,96460,96472,96494,96498,96500,96514,96516,96520,96528,96542,96544,96572,96576,96632,96646,96652,96664,96688,96702,96718,96732,96738,96740,96744,96758,96772,96776,96784,96798,96800,96828,96832,96888,97008,97030,97036,97048,97072,97086,97120,97148,97166,97180,97208,97220,97224,97232,97246,97254,97260,97326,97330,97332,97358,97372,97378,97380,97384,97398,97422,97436,97464,97474,97476,97480,97488,97502,97510,97516,97550,97564,97592,97648,97666,97668,97672,97680,97694,97696,97724,97734,97740,97752,97774,97830,97836,97850,97862,97868,97880,97902,97906,97908,97926,97932,97944,97968,97998,98012,98018,98020,98024,98038,98618,98674,98676,98838,98854,98874,98892,98904,98926,98930,98932,98968,99006,99042,99044,99048,99062,99166,99194,99246,99286,99350,99366,99372,99386,99398,99416,99438,99442,99444,99462,99504,99518,99534,99548,99554,99556,99560,99574,99590,99596,99608,99632,99646,99680,99708,99726,99740,99768,99778,99780,99784,99792,99806,99814,99820,99834,99858,99860,99874,99880,99894,99906,99920,99934,99962,99970,99972,99976,99984,99998,1e5,100028,100038,100044,100056,100078,100082,100084,100142,100174,100188,100246,100262,100268,100306,100308,100390,100396,100410,100422,100428,100440,100462,100466,100468,100486,100504,100528,100542,100558,100572,100578,100580,100584,100598,100620,100656,100670,100704,100732,100750,100792,100802,100808,100816,100830,100838,100844,100858,100888,100912,100926,100960,100988,101056,101112,101148,101176,101232,101246,101250,101252,101256,101264,101278,101280,101308,101318,101324,101336,101358,101362,101364,101410,101412,101416,101430,101442,101448,101456,101470,101478,101498,101506,101508,101520,101534,101536,101564,101580,101618,101620,101636,101640,101648,101662,101664,101692,101696,101752,101766,101784,101838,101858,101860,101864,101934,101938,101940,101966,101980,101986,101988,101992,102030,102044,102072,102082,102084,102088,102096,102138,102166,102182,102188,102214,102220,102232,102254,102282,102290,102292,102306,102308,102312,102326,102444,102458,102470,102476,102488,102514,102516,102534,102552,102576,102590,102606,102620,102626,102632,102646,102662,102668,102704,102718,102752,102780,102798,102812,102840,102850,102856,102864,102878,102886,102892,102906,102936,102974,103008,103036,103104,103160,103224,103280,103294,103298,103300,103312,103326,103328,103356,103366,103372,103384,103406,103410,103412,103472,103486,103520,103548,103616,103672,103920,103992,104048,104062,104160,104188,104194,104196,104200,104208,104224,104252,104256,104312,104326,104332,104344,104368,104382,104398,104412,104418,104420,104424,104482,104484,104514,104520,104528,104542,104550,104570,104578,104580,104592,104606,104608,104636,104652,104690,104692,104706,104712,104734,104736,104764,104768,104824,104838,104856,104910,104930,104932,104936,104968,104976,104990,104992,105020,105024,105080,105200,105240,105278,105312,105372,105410,105412,105416,105424,105446,105518,105524,105550,105564,105570,105572,105576,105614,105628,105656,105666,105672,105680,105702,105722,105742,105756,105784,105840,105854,105858,105860,105864,105872,105888,105932,105970,105972,106006,106022,106028,106054,106060,106072,106100,106118,106124,106136,106160,106174,106190,106210,106212,106216,106250,106258,106260,106274,106276,106280,106306,106308,106312,106320,106334,106348,106394,106414,106418,106420,106566,106572,106610,106612,106630,106636,106648,106672,106686,106722,106724,106728,106742,106758,106764,106776,106800,106814,106848,106876,106894,106908,106936,106946,106948,106952,106960,106974,106982,106988,107032,107056,107070,107104,107132,107200,107256,107292,107320,107376,107390,107394,107396,107400,107408,107422,107424,107452,107462,107468,107480,107502,107506,107508,107544,107568,107582,107616,107644,107712,107768,108016,108060,108088,108144,108158,108256,108284,108290,108292,108296,108304,108318,108320,108348,108352,108408,108422,108428,108440,108464,108478,108494,108508,108514,108516,108520,108592,108640,108668,108736,108792,109040,109536,109680,109694,109792,109820,110016,110072,110084,110088,110096,110112,110140,110144,110200,110320,110342,110348,110360,110384,110398,110432,110460,110478,110492,110520,110532,110536,110544,110558,110658,110686,110714,110722,110724,110728,110736,110750,110752,110780,110796,110834,110836,110850,110852,110856,110864,110878,110880,110908,110912,110968,110982,111e3,111054,111074,111076,111080,111108,111112,111120,111134,111136,111164,111168,111224,111344,111372,111422,111456,111516,111554,111556,111560,111568,111590,111632,111646,111648,111676,111680,111736,111856,112096,112152,112224,112252,112320,112440,112514,112516,112520,112528,112542,112544,112588,112686,112718,112732,112782,112796,112824,112834,112836,112840,112848,112870,112890,112910,112924,112952,113008,113022,113026,113028,113032,113040,113054,113056,113100,113138,113140,113166,113180,113208,113264,113278,113376,113404,113416,113424,113440,113468,113472,113560,113614,113634,113636,113640,113686,113702,113708,113734,113740,113752,113778,113780,113798,113804,113816,113840,113854,113870,113890,113892,113896,113926,113932,113944,113968,113982,114016,114044,114076,114114,114116,114120,114128,114150,114170,114194,114196,114210,114212,114216,114242,114244,114248,114256,114270,114278,114306,114308,114312,114320,114334,114336,114364,114380,114420,114458,114478,114482,114484,114510,114524,114530,114532,114536,114842,114866,114868,114970,114994,114996,115042,115044,115048,115062,115130,115226,115250,115252,115278,115292,115298,115300,115304,115318,115342,115394,115396,115400,115408,115422,115430,115436,115450,115478,115494,115514,115526,115532,115570,115572,115738,115758,115762,115764,115790,115804,115810,115812,115816,115830,115854,115868,115896,115906,115912,115920,115934,115942,115948,115962,115996,116024,116080,116094,116098,116100,116104,116112,116126,116128,116156,116166,116172,116184,116206,116210,116212,116246,116262,116268,116282,116294,116300,116312,116334,116338,116340,116358,116364,116376,116400,116414,116430,116444,116450,116452,116456,116498,116500,116514,116520,116534,116546,116548,116552,116560,116574,116582,116588,116602,116654,116694,116714,116762,116782,116786,116788,116814,116828,116834,116836,116840,116854,116878,116892,116920,116930,116936,116944,116958,116966,116972,116986,117006,117048,117104,117118,117122,117124,117136,117150,117152,117180,117190,117196,117208,117230,117234,117236,117304,117360,117374,117472,117500,117506,117508,117512,117520,117536,117564,117568,117624,117638,117644,117656,117680,117694,117710,117724,117730,117732,117736,117750,117782,117798,117804,117818,117830,117848,117874,117876,117894,117936,117950,117966,117986,117988,117992,118022,118028,118040,118064,118078,118112,118140,118172,118210,118212,118216,118224,118238,118246,118266,118306,118312,118338,118352,118366,118374,118394,118402,118404,118408,118416,118430,118432,118460,118476,118514,118516,118574,118578,118580,118606,118620,118626,118628,118632,118678,118694,118700,118730,118738,118740,118830,118834,118836,118862,118876,118882,118884,118888,118902,118926,118940,118968,118978,118980,118984,118992,119006,119014,119020,119034,119068,119096,119152,119166,119170,119172,119176,119184,119198,119200,119228,119238,119244,119256,119278,119282,119284,119324,119352,119408,119422,119520,119548,119554,119556,119560,119568,119582,119584,119612,119616,119672,119686,119692,119704,119728,119742,119758,119772,119778,119780,119784,119798,119920,119934,120032,120060,120256,120312,120324,120328,120336,120352,120384,120440,120560,120582,120588,120600,120624,120638,120672,120700,120718,120732,120760,120770,120772,120776,120784,120798,120806,120812,120870,120876,120890,120902,120908,120920,120946,120948,120966,120972,120984,121008,121022,121038,121058,121060,121064,121078,121100,121112,121136,121150,121184,121212,121244,121282,121284,121288,121296,121318,121338,121356,121368,121392,121406,121440,121468,121536,121592,121656,121730,121732,121736,121744,121758,121760,121804,121842,121844,121890,121922,121924,121928,121936,121950,121958,121978,121986,121988,121992,122e3,122014,122016,122044,122060,122098,122100,122116,122120,122128,122142,122144,122172,122176,122232,122246,122264,122318,122338,122340,122344,122414,122418,122420,122446,122460,122466,122468,122472,122510,122524,122552,122562,122564,122568,122576,122598,122618,122646,122662,122668,122694,122700,122712,122738,122740,122762,122770,122772,122786,122788,122792,123018,123026,123028,123042,123044,123048,123062,123098,123146,123154,123156,123170,123172,123176,123190,123202,123204,123208,123216,123238,123244,123258,123290,123314,123316,123402,123410,123412,123426,123428,123432,123446,123458,123464,123472,123486,123494,123500,123514,123522,123524,123528,123536,123552,123580,123590,123596,123608,123630,123634,123636,123674,123698,123700,123740,123746,123748,123752,123834,123914,123922,123924,123938,123944,123958,123970,123976,123984,123998,124006,124012,124026,124034,124036,124048,124062,124064,124092,124102,124108,124120,124142,124146,124148,124162,124164,124168,124176,124190,124192,124220,124224,124280,124294,124300,124312,124336,124350,124366,124380,124386,124388,124392,124406,124442,124462,124466,124468,124494,124508,124514,124520,124558,124572,124600,124610,124612,124616,124624,124646,124666,124694,124710,124716,124730,124742,124748,124760,124786,124788,124818,124820,124834,124836,124840,124854,124946,124948,124962,124964,124968,124982,124994,124996,125e3,125008,125022,125030,125036,125050,125058,125060,125064,125072,125086,125088,125116,125126,125132,125144,125166,125170,125172,125186,125188,125192,125200,125216,125244,125248,125304,125318,125324,125336,125360,125374,125390,125404,125410,125412,125416,125430,125444,125448,125456,125472,125504,125560,125680,125702,125708,125720,125744,125758,125792,125820,125838,125852,125880,125890,125892,125896,125904,125918,125926,125932,125978,125998,126002,126004,126030,126044,126050,126052,126056,126094,126108,126136,126146,126148,126152,126160,126182,126202,126222,126236,126264,126320,126334,126338,126340,126344,126352,126366,126368,126412,126450,126452,126486,126502,126508,126522,126534,126540,126552,126574,126578,126580,126598,126604,126616,126640,126654,126670,126684,126690,126692,126696,126738,126754,126756,126760,126774,126786,126788,126792,126800,126814,126822,126828,126842,126894,126898,126900,126934,127126,127142,127148,127162,127178,127186,127188,127254,127270,127276,127290,127302,127308,127320,127342,127346,127348,127370,127378,127380,127394,127396,127400,127450,127510,127526,127532,127546,127558,127576,127598,127602,127604,127622,127628,127640,127664,127678,127694,127708,127714,127716,127720,127734,127754,127762,127764,127778,127784,127810,127812,127816,127824,127838,127846,127866,127898,127918,127922,127924,128022,128038,128044,128058,128070,128076,128088,128110,128114,128116,128134,128140,128152,128176,128190,128206,128220,128226,128228,128232,128246,128262,128268,128280,128304,128318,128352,128380,128398,128412,128440,128450,128452,128456,128464,128478,128486,128492,128506,128522,128530,128532,128546,128548,128552,128566,128578,128580,128584,128592,128606,128614,128634,128642,128644,128648,128656,128670,128672,128700,128716,128754,128756,128794,128814,128818,128820,128846,128860,128866,128868,128872,128886,128918,128934,128940,128954,128978,128980,129178,129198,129202,129204,129238,129258,129306,129326,129330,129332,129358,129372,129378,129380,129384,129398,129430,129446,129452,129466,129482,129490,129492,129562,129582,129586,129588,129614,129628,129634,129636,129640,129654,129678,129692,129720,129730,129732,129736,129744,129758,129766,129772,129814,129830,129836,129850,129862,129868,129880,129902,129906,129908,129930,129938,129940,129954,129956,129960,129974,130010]),tF.CODEWORD_TABLE=Int32Array.from([2627,1819,2622,2621,1813,1812,2729,2724,2723,2779,2774,2773,902,896,908,868,865,861,859,2511,873,871,1780,835,2493,825,2491,842,837,844,1764,1762,811,810,809,2483,807,2482,806,2480,815,814,813,812,2484,817,816,1745,1744,1742,1746,2655,2637,2635,2626,2625,2623,2628,1820,2752,2739,2737,2728,2727,2725,2730,2785,2783,2778,2777,2775,2780,787,781,747,739,736,2413,754,752,1719,692,689,681,2371,678,2369,700,697,694,703,1688,1686,642,638,2343,631,2341,627,2338,651,646,643,2345,654,652,1652,1650,1647,1654,601,599,2322,596,2321,594,2319,2317,611,610,608,606,2324,603,2323,615,614,612,1617,1616,1614,1612,616,1619,1618,2575,2538,2536,905,901,898,909,2509,2507,2504,870,867,864,860,2512,875,872,1781,2490,2489,2487,2485,1748,836,834,832,830,2494,827,2492,843,841,839,845,1765,1763,2701,2676,2674,2653,2648,2656,2634,2633,2631,2629,1821,2638,2636,2770,2763,2761,2750,2745,2753,2736,2735,2733,2731,1848,2740,2738,2786,2784,591,588,576,569,566,2296,1590,537,534,526,2276,522,2274,545,542,539,548,1572,1570,481,2245,466,2242,462,2239,492,485,482,2249,496,494,1534,1531,1528,1538,413,2196,406,2191,2188,425,419,2202,415,2199,432,430,427,1472,1467,1464,433,1476,1474,368,367,2160,365,2159,362,2157,2155,2152,378,377,375,2166,372,2165,369,2162,383,381,379,2168,1419,1418,1416,1414,385,1411,384,1423,1422,1420,1424,2461,802,2441,2439,790,786,783,794,2409,2406,2403,750,742,738,2414,756,753,1720,2367,2365,2362,2359,1663,693,691,684,2373,680,2370,702,699,696,704,1690,1687,2337,2336,2334,2332,1624,2329,1622,640,637,2344,634,2342,630,2340,650,648,645,2346,655,653,1653,1651,1649,1655,2612,2597,2595,2571,2568,2565,2576,2534,2529,2526,1787,2540,2537,907,904,900,910,2503,2502,2500,2498,1768,2495,1767,2510,2508,2506,869,866,863,2513,876,874,1782,2720,2713,2711,2697,2694,2691,2702,2672,2670,2664,1828,2678,2675,2647,2646,2644,2642,1823,2639,1822,2654,2652,2650,2657,2771,1855,2765,2762,1850,1849,2751,2749,2747,2754,353,2148,344,342,336,2142,332,2140,345,1375,1373,306,2130,299,2128,295,2125,319,314,311,2132,1354,1352,1349,1356,262,257,2101,253,2096,2093,274,273,267,2107,263,2104,280,278,275,1316,1311,1308,1320,1318,2052,202,2050,2044,2040,219,2063,212,2060,208,2055,224,221,2066,1260,1258,1252,231,1248,229,1266,1264,1261,1268,155,1998,153,1996,1994,1991,1988,165,164,2007,162,2006,159,2003,2e3,172,171,169,2012,166,2010,1186,1184,1182,1179,175,1176,173,1192,1191,1189,1187,176,1194,1193,2313,2307,2305,592,589,2294,2292,2289,578,572,568,2297,580,1591,2272,2267,2264,1547,538,536,529,2278,525,2275,547,544,541,1574,1571,2237,2235,2229,1493,2225,1489,478,2247,470,2244,465,2241,493,488,484,2250,498,495,1536,1533,1530,1539,2187,2186,2184,2182,1432,2179,1430,2176,1427,414,412,2197,409,2195,405,2193,2190,426,424,421,2203,418,2201,431,429,1473,1471,1469,1466,434,1477,1475,2478,2472,2470,2459,2457,2454,2462,803,2437,2432,2429,1726,2443,2440,792,789,785,2401,2399,2393,1702,2389,1699,2411,2408,2405,745,741,2415,758,755,1721,2358,2357,2355,2353,1661,2350,1660,2347,1657,2368,2366,2364,2361,1666,690,687,2374,683,2372,701,698,705,1691,1689,2619,2617,2610,2608,2605,2613,2593,2588,2585,1803,2599,2596,2563,2561,2555,1797,2551,1795,2573,2570,2567,2577,2525,2524,2522,2520,1786,2517,1785,2514,1783,2535,2533,2531,2528,1788,2541,2539,906,903,911,2721,1844,2715,2712,1838,1836,2699,2696,2693,2703,1827,1826,1824,2673,2671,2669,2666,1829,2679,2677,1858,1857,2772,1854,1853,1851,1856,2766,2764,143,1987,139,1986,135,133,131,1984,128,1983,125,1981,138,137,136,1985,1133,1132,1130,112,110,1974,107,1973,104,1971,1969,122,121,119,117,1977,114,1976,124,1115,1114,1112,1110,1117,1116,84,83,1953,81,1952,78,1950,1948,1945,94,93,91,1959,88,1958,85,1955,99,97,95,1961,1086,1085,1083,1081,1078,100,1090,1089,1087,1091,49,47,1917,44,1915,1913,1910,1907,59,1926,56,1925,53,1922,1919,66,64,1931,61,1929,1042,1040,1038,71,1035,70,1032,68,1048,1047,1045,1043,1050,1049,12,10,1869,1867,1864,1861,21,1880,19,1877,1874,1871,28,1888,25,1886,22,1883,982,980,977,974,32,30,991,989,987,984,34,995,994,992,2151,2150,2147,2146,2144,356,355,354,2149,2139,2138,2136,2134,1359,343,341,338,2143,335,2141,348,347,346,1376,1374,2124,2123,2121,2119,1326,2116,1324,310,308,305,2131,302,2129,298,2127,320,318,316,313,2133,322,321,1355,1353,1351,1357,2092,2091,2089,2087,1276,2084,1274,2081,1271,259,2102,256,2100,252,2098,2095,272,269,2108,266,2106,281,279,277,1317,1315,1313,1310,282,1321,1319,2039,2037,2035,2032,1203,2029,1200,1197,207,2053,205,2051,201,2049,2046,2043,220,218,2064,215,2062,211,2059,228,226,223,2069,1259,1257,1254,232,1251,230,1267,1265,1263,2316,2315,2312,2311,2309,2314,2304,2303,2301,2299,1593,2308,2306,590,2288,2287,2285,2283,1578,2280,1577,2295,2293,2291,579,577,574,571,2298,582,581,1592,2263,2262,2260,2258,1545,2255,1544,2252,1541,2273,2271,2269,2266,1550,535,532,2279,528,2277,546,543,549,1575,1573,2224,2222,2220,1486,2217,1485,2214,1482,1479,2238,2236,2234,2231,1496,2228,1492,480,477,2248,473,2246,469,2243,490,487,2251,497,1537,1535,1532,2477,2476,2474,2479,2469,2468,2466,2464,1730,2473,2471,2453,2452,2450,2448,1729,2445,1728,2460,2458,2456,2463,805,804,2428,2427,2425,2423,1725,2420,1724,2417,1722,2438,2436,2434,2431,1727,2444,2442,793,791,788,795,2388,2386,2384,1697,2381,1696,2378,1694,1692,2402,2400,2398,2395,1703,2392,1701,2412,2410,2407,751,748,744,2416,759,757,1807,2620,2618,1806,1805,2611,2609,2607,2614,1802,1801,1799,2594,2592,2590,2587,1804,2600,2598,1794,1793,1791,1789,2564,2562,2560,2557,1798,2554,1796,2574,2572,2569,2578,1847,1846,2722,1843,1842,1840,1845,2716,2714,1835,1834,1832,1830,1839,1837,2700,2698,2695,2704,1817,1811,1810,897,862,1777,829,826,838,1760,1758,808,2481,1741,1740,1738,1743,2624,1818,2726,2776,782,740,737,1715,686,679,695,1682,1680,639,628,2339,647,644,1645,1643,1640,1648,602,600,597,595,2320,593,2318,609,607,604,1611,1610,1608,1606,613,1615,1613,2328,926,924,892,886,899,857,850,2505,1778,824,823,821,819,2488,818,2486,833,831,828,840,1761,1759,2649,2632,2630,2746,2734,2732,2782,2781,570,567,1587,531,527,523,540,1566,1564,476,467,463,2240,486,483,1524,1521,1518,1529,411,403,2192,399,2189,423,416,1462,1457,1454,428,1468,1465,2210,366,363,2158,360,2156,357,2153,376,373,370,2163,1410,1409,1407,1405,382,1402,380,1417,1415,1412,1421,2175,2174,777,774,771,784,732,725,722,2404,743,1716,676,674,668,2363,665,2360,685,1684,1681,626,624,622,2335,620,2333,617,2330,641,635,649,1646,1644,1642,2566,928,925,2530,2527,894,891,888,2501,2499,2496,858,856,854,851,1779,2692,2668,2665,2645,2643,2640,2651,2768,2759,2757,2744,2743,2741,2748,352,1382,340,337,333,1371,1369,307,300,296,2126,315,312,1347,1342,1350,261,258,250,2097,246,2094,271,268,264,1306,1301,1298,276,1312,1309,2115,203,2048,195,2045,191,2041,213,209,2056,1246,1244,1238,225,1234,222,1256,1253,1249,1262,2080,2079,154,1997,150,1995,147,1992,1989,163,160,2004,156,2001,1175,1174,1172,1170,1167,170,1164,167,1185,1183,1180,1177,174,1190,1188,2025,2024,2022,587,586,564,559,556,2290,573,1588,520,518,512,2268,508,2265,530,1568,1565,461,457,2233,450,2230,446,2226,479,471,489,1526,1523,1520,397,395,2185,392,2183,389,2180,2177,410,2194,402,422,1463,1461,1459,1456,1470,2455,799,2433,2430,779,776,773,2397,2394,2390,734,728,724,746,1717,2356,2354,2351,2348,1658,677,675,673,670,667,688,1685,1683,2606,2589,2586,2559,2556,2552,927,2523,2521,2518,2515,1784,2532,895,893,890,2718,2709,2707,2689,2687,2684,2663,2662,2660,2658,1825,2667,2769,1852,2760,2758,142,141,1139,1138,134,132,129,126,1982,1129,1128,1126,1131,113,111,108,105,1972,101,1970,120,118,115,1109,1108,1106,1104,123,1113,1111,82,79,1951,75,1949,72,1946,92,89,86,1956,1077,1076,1074,1072,98,1069,96,1084,1082,1079,1088,1968,1967,48,45,1916,42,1914,39,1911,1908,60,57,54,1923,50,1920,1031,1030,1028,1026,67,1023,65,1020,62,1041,1039,1036,1033,69,1046,1044,1944,1943,1941,11,9,1868,7,1865,1862,1859,20,1878,16,1875,13,1872,970,968,966,963,29,960,26,23,983,981,978,975,33,971,31,990,988,985,1906,1904,1902,993,351,2145,1383,331,330,328,326,2137,323,2135,339,1372,1370,294,293,291,289,2122,286,2120,283,2117,309,303,317,1348,1346,1344,245,244,242,2090,239,2088,236,2085,2082,260,2099,249,270,1307,1305,1303,1300,1314,189,2038,186,2036,183,2033,2030,2026,206,198,2047,194,216,1247,1245,1243,1240,227,1237,1255,2310,2302,2300,2286,2284,2281,565,563,561,558,575,1589,2261,2259,2256,2253,1542,521,519,517,514,2270,511,533,1569,1567,2223,2221,2218,2215,1483,2211,1480,459,456,453,2232,449,474,491,1527,1525,1522,2475,2467,2465,2451,2449,2446,801,800,2426,2424,2421,2418,1723,2435,780,778,775,2387,2385,2382,2379,1695,2375,1693,2396,735,733,730,727,749,1718,2616,2615,2604,2603,2601,2584,2583,2581,2579,1800,2591,2550,2549,2547,2545,1792,2542,1790,2558,929,2719,1841,2710,2708,1833,1831,2690,2688,2686,1815,1809,1808,1774,1756,1754,1737,1736,1734,1739,1816,1711,1676,1674,633,629,1638,1636,1633,1641,598,1605,1604,1602,1600,605,1609,1607,2327,887,853,1775,822,820,1757,1755,1584,524,1560,1558,468,464,1514,1511,1508,1519,408,404,400,1452,1447,1444,417,1458,1455,2208,364,361,358,2154,1401,1400,1398,1396,374,1393,371,1408,1406,1403,1413,2173,2172,772,726,723,1712,672,669,666,682,1678,1675,625,623,621,618,2331,636,632,1639,1637,1635,920,918,884,880,889,849,848,847,846,2497,855,852,1776,2641,2742,2787,1380,334,1367,1365,301,297,1340,1338,1335,1343,255,251,247,1296,1291,1288,265,1302,1299,2113,204,196,192,2042,1232,1230,1224,214,1220,210,1242,1239,1235,1250,2077,2075,151,148,1993,144,1990,1163,1162,1160,1158,1155,161,1152,157,1173,1171,1168,1165,168,1181,1178,2021,2020,2018,2023,585,560,557,1585,516,509,1562,1559,458,447,2227,472,1516,1513,1510,398,396,393,390,2181,386,2178,407,1453,1451,1449,1446,420,1460,2209,769,764,720,712,2391,729,1713,664,663,661,659,2352,656,2349,671,1679,1677,2553,922,919,2519,2516,885,883,881,2685,2661,2659,2767,2756,2755,140,1137,1136,130,127,1125,1124,1122,1127,109,106,102,1103,1102,1100,1098,116,1107,1105,1980,80,76,73,1947,1068,1067,1065,1063,90,1060,87,1075,1073,1070,1080,1966,1965,46,43,40,1912,36,1909,1019,1018,1016,1014,58,1011,55,1008,51,1029,1027,1024,1021,63,1037,1034,1940,1939,1937,1942,8,1866,4,1863,1,1860,956,954,952,949,946,17,14,969,967,964,961,27,957,24,979,976,972,1901,1900,1898,1896,986,1905,1903,350,349,1381,329,327,324,1368,1366,292,290,287,284,2118,304,1341,1339,1337,1345,243,240,237,2086,233,2083,254,1297,1295,1293,1290,1304,2114,190,187,184,2034,180,2031,177,2027,199,1233,1231,1229,1226,217,1223,1241,2078,2076,584,555,554,552,550,2282,562,1586,507,506,504,502,2257,499,2254,515,1563,1561,445,443,441,2219,438,2216,435,2212,460,454,475,1517,1515,1512,2447,798,797,2422,2419,770,768,766,2383,2380,2376,721,719,717,714,731,1714,2602,2582,2580,2548,2546,2543,923,921,2717,2706,2705,2683,2682,2680,1771,1752,1750,1733,1732,1731,1735,1814,1707,1670,1668,1631,1629,1626,1634,1599,1598,1596,1594,1603,1601,2326,1772,1753,1751,1581,1554,1552,1504,1501,1498,1509,1442,1437,1434,401,1448,1445,2206,1392,1391,1389,1387,1384,359,1399,1397,1394,1404,2171,2170,1708,1672,1669,619,1632,1630,1628,1773,1378,1363,1361,1333,1328,1336,1286,1281,1278,248,1292,1289,2111,1218,1216,1210,197,1206,193,1228,1225,1221,1236,2073,2071,1151,1150,1148,1146,152,1143,149,1140,145,1161,1159,1156,1153,158,1169,1166,2017,2016,2014,2019,1582,510,1556,1553,452,448,1506,1500,394,391,387,1443,1441,1439,1436,1450,2207,765,716,713,1709,662,660,657,1673,1671,916,914,879,878,877,882,1135,1134,1121,1120,1118,1123,1097,1096,1094,1092,103,1101,1099,1979,1059,1058,1056,1054,77,1051,74,1066,1064,1061,1071,1964,1963,1007,1006,1004,1002,999,41,996,37,1017,1015,1012,1009,52,1025,1022,1936,1935,1933,1938,942,940,938,935,932,5,2,955,953,950,947,18,943,15,965,962,958,1895,1894,1892,1890,973,1899,1897,1379,325,1364,1362,288,285,1334,1332,1330,241,238,234,1287,1285,1283,1280,1294,2112,188,185,181,178,2028,1219,1217,1215,1212,200,1209,1227,2074,2072,583,553,551,1583,505,503,500,513,1557,1555,444,442,439,436,2213,455,451,1507,1505,1502,796,763,762,760,767,711,710,708,706,2377,718,715,1710,2544,917,915,2681,1627,1597,1595,2325,1769,1749,1747,1499,1438,1435,2204,1390,1388,1385,1395,2169,2167,1704,1665,1662,1625,1623,1620,1770,1329,1282,1279,2109,1214,1207,1222,2068,2065,1149,1147,1144,1141,146,1157,1154,2013,2011,2008,2015,1579,1549,1546,1495,1487,1433,1431,1428,1425,388,1440,2205,1705,658,1667,1664,1119,1095,1093,1978,1057,1055,1052,1062,1962,1960,1005,1003,1e3,997,38,1013,1010,1932,1930,1927,1934,941,939,936,933,6,930,3,951,948,944,1889,1887,1884,1881,959,1893,1891,35,1377,1360,1358,1327,1325,1322,1331,1277,1275,1272,1269,235,1284,2110,1205,1204,1201,1198,182,1195,179,1213,2070,2067,1580,501,1551,1548,440,437,1497,1494,1490,1503,761,709,707,1706,913,912,2198,1386,2164,2161,1621,1766,2103,1208,2058,2054,1145,1142,2005,2002,1999,2009,1488,1429,1426,2200,1698,1659,1656,1975,1053,1957,1954,1001,998,1924,1921,1918,1928,937,934,931,1879,1876,1873,1870,945,1885,1882,1323,1273,1270,2105,1202,1199,1196,1211,2061,2057,1576,1543,1540,1484,1481,1478,1491,1700]);class tk{constructor(e,t){this.bits=e,this.points=t}getBits(){return this.bits}getPoints(){return this.points}}class tU{static detectMultiple(e,t,r){let n=e.getBlackMatrix(),i=tU.detect(r,n);return!i.length&&((n=n.clone()).rotate180(),i=tU.detect(r,n)),new tk(n,i)}static detect(e,t){let r=[],n=0,i=0,o=!1;for(;n<t.getHeight();){let a=tU.findVertices(t,n,i);if(null==a[0]&&null==a[3]){if(!o)break;for(let e of(o=!1,i=0,r))null!=e[1]&&(n=Math.trunc(Math.max(n,e[1].getY()))),null!=e[3]&&(n=Math.max(n,Math.trunc(e[3].getY())));n+=tU.ROW_STEP;continue}if(o=!0,r.push(a),!e)break;null!=a[2]?(i=Math.trunc(a[2].getX()),n=Math.trunc(a[2].getY())):(i=Math.trunc(a[4].getX()),n=Math.trunc(a[4].getY()))}return r}static findVertices(e,t,r){let n=e.getHeight(),i=e.getWidth(),o=Array(8);return tU.copyToResult(o,tU.findRowsWithPattern(e,n,i,t,r,tU.START_PATTERN),tU.INDEXES_START_PATTERN),null!=o[4]&&(r=Math.trunc(o[4].getX()),t=Math.trunc(o[4].getY())),tU.copyToResult(o,tU.findRowsWithPattern(e,n,i,t,r,tU.STOP_PATTERN),tU.INDEXES_STOP_PATTERN),o}static copyToResult(e,t,r){for(let n=0;n<r.length;n++)e[r[n]]=t[n]}static findRowsWithPattern(e,t,r,n,i,o){let a=[,,,,],s=!1,l=new Int32Array(o.length);for(;n<t;n+=tU.ROW_STEP){let t=tU.findGuardPattern(e,i,n,r,!1,o,l);if(null!=t){for(;n>0;){let a=tU.findGuardPattern(e,i,--n,r,!1,o,l);if(null!=a)t=a;else{n++;break}}a[0]=new ew(t[0],n),a[1]=new ew(t[1],n),s=!0;break}}let c=n+1;if(s){let n=0,i=Int32Array.from([Math.trunc(a[0].getX()),Math.trunc(a[1].getX())]);for(;c<t;c++){let t=tU.findGuardPattern(e,i[0],c,r,!1,o,l);if(null!=t&&Math.abs(i[0]-t[0])<tU.MAX_PATTERN_DRIFT&&Math.abs(i[1]-t[1])<tU.MAX_PATTERN_DRIFT)i=t,n=0;else{if(n>tU.SKIPPED_ROW_COUNT_MAX)break;n++}}c-=n+1,a[2]=new ew(i[0],c),a[3]=new ew(i[1],c)}return c-n<tU.BARCODE_MIN_HEIGHT&&F.fill(a,null),a}static findGuardPattern(e,t,r,n,i,o,a){F.fillWithin(a,0,a.length,0);let s=t,l=0;for(;e.get(s,r)&&s>0&&l++<tU.MAX_PIXEL_DRIFT;)s--;let c=s,u=0,h=o.length;for(let t=i;c<n;c++)if(e.get(c,r)!==t)a[u]++;else{if(u===h-1){if(tU.patternMatchVariance(a,o,tU.MAX_INDIVIDUAL_VARIANCE)<tU.MAX_AVG_VARIANCE)return new Int32Array([s,c]);s+=a[0]+a[1],P.arraycopy(a,2,a,0,u-1),a[u-1]=0,a[u]=0,u--}else u++;a[u]=1,t=!t}return u===h-1&&tU.patternMatchVariance(a,o,tU.MAX_INDIVIDUAL_VARIANCE)<tU.MAX_AVG_VARIANCE?new Int32Array([s,c-1]):null}static patternMatchVariance(e,t,r){let n=e.length,i=0,o=0;for(let r=0;r<n;r++)i+=e[r],o+=t[r];if(i<o)return 1/0;let a=i/o;r*=a;let s=0;for(let i=0;i<n;i++){let n=e[i],o=t[i]*a,l=n>o?n-o:o-n;if(l>r)return 1/0;s+=l}return s/i}}tU.INDEXES_START_PATTERN=Int32Array.from([0,4,1,5]),tU.INDEXES_STOP_PATTERN=Int32Array.from([6,2,7,3]),tU.MAX_AVG_VARIANCE=.42,tU.MAX_INDIVIDUAL_VARIANCE=.8,tU.START_PATTERN=Int32Array.from([8,1,1,1,1,1,1,3]),tU.STOP_PATTERN=Int32Array.from([7,1,1,3,1,1,1,2,1]),tU.MAX_PIXEL_DRIFT=3,tU.MAX_PATTERN_DRIFT=5,tU.SKIPPED_ROW_COUNT_MAX=25,tU.ROW_STEP=5,tU.BARCODE_MIN_HEIGHT=10;class tH{constructor(e,t){if(0===t.length)throw new R;this.field=e;let r=t.length;if(r>1&&0===t[0]){let e=1;for(;e<r&&0===t[e];)e++;e===r?this.coefficients=new Int32Array([0]):(this.coefficients=new Int32Array(r-e),P.arraycopy(t,e,this.coefficients,0,this.coefficients.length))}else this.coefficients=t}getCoefficients(){return this.coefficients}getDegree(){return this.coefficients.length-1}isZero(){return 0===this.coefficients[0]}getCoefficient(e){return this.coefficients[this.coefficients.length-1-e]}evaluateAt(e){if(0===e)return this.getCoefficient(0);if(1===e){let e=0;for(let t of this.coefficients)e=this.field.add(e,t);return e}let t=this.coefficients[0],r=this.coefficients.length;for(let n=1;n<r;n++)t=this.field.add(this.field.multiply(e,t),this.coefficients[n]);return t}add(e){if(!this.field.equals(e.field))throw new R("ModulusPolys do not have same ModulusGF field");if(this.isZero())return e;if(e.isZero())return this;let t=this.coefficients,r=e.coefficients;if(t.length>r.length){let e=t;t=r,r=e}let n=new Int32Array(r.length),i=r.length-t.length;P.arraycopy(r,0,n,0,i);for(let e=i;e<r.length;e++)n[e]=this.field.add(t[e-i],r[e]);return new tH(this.field,n)}subtract(e){if(!this.field.equals(e.field))throw new R("ModulusPolys do not have same ModulusGF field");return e.isZero()?this:this.add(e.negative())}multiply(e){return e instanceof tH?this.multiplyOther(e):this.multiplyScalar(e)}multiplyOther(e){if(!this.field.equals(e.field))throw new R("ModulusPolys do not have same ModulusGF field");if(this.isZero()||e.isZero())return new tH(this.field,new Int32Array([0]));let t=this.coefficients,r=t.length,n=e.coefficients,i=n.length,o=new Int32Array(r+i-1);for(let e=0;e<r;e++){let r=t[e];for(let t=0;t<i;t++)o[e+t]=this.field.add(o[e+t],this.field.multiply(r,n[t]))}return new tH(this.field,o)}negative(){let e=this.coefficients.length,t=new Int32Array(e);for(let r=0;r<e;r++)t[r]=this.field.subtract(0,this.coefficients[r]);return new tH(this.field,t)}multiplyScalar(e){if(0===e)return new tH(this.field,new Int32Array([0]));if(1===e)return this;let t=this.coefficients.length,r=new Int32Array(t);for(let n=0;n<t;n++)r[n]=this.field.multiply(this.coefficients[n],e);return new tH(this.field,r)}multiplyByMonomial(e,t){if(e<0)throw new R;if(0===t)return new tH(this.field,new Int32Array([0]));let r=this.coefficients.length,n=new Int32Array(r+e);for(let e=0;e<r;e++)n[e]=this.field.multiply(this.coefficients[e],t);return new tH(this.field,n)}toString(){let e=new Y;for(let t=this.getDegree();t>=0;t--){let r=this.getCoefficient(t);0!==r&&(r<0?(e.append(" - "),r=-r):e.length()>0&&e.append(" + "),(0===t||1!==r)&&e.append(r),0!==t&&(1===t?e.append("x"):(e.append("x^"),e.append(t))))}return e.toString()}}class tz{add(e,t){return(e+t)%this.modulus}subtract(e,t){return(this.modulus+e-t)%this.modulus}exp(e){return this.expTable[e]}log(e){if(0===e)throw new R;return this.logTable[e]}inverse(e){if(0===e)throw new ec;return this.expTable[this.modulus-this.logTable[e]-1]}multiply(e,t){return 0===e||0===t?0:this.expTable[(this.logTable[e]+this.logTable[t])%(this.modulus-1)]}getSize(){return this.modulus}equals(e){return e===this}}class tV extends tz{constructor(e,t){super(),this.modulus=e,this.expTable=new Int32Array(e),this.logTable=new Int32Array(e);let r=1;for(let n=0;n<e;n++)this.expTable[n]=r,r=r*t%e;for(let t=0;t<e-1;t++)this.logTable[this.expTable[t]]=t;this.zero=new tH(this,new Int32Array([0])),this.one=new tH(this,new Int32Array([1]))}getZero(){return this.zero}getOne(){return this.one}buildMonomial(e,t){if(e<0)throw new R;if(0===t)return this.zero;let r=new Int32Array(e+1);return r[0]=t,new tH(this,r)}}tV.PDF417_GF=new tV(tF.NUMBER_OF_CODEWORDS,3);class tj{constructor(){this.field=tV.PDF417_GF}decode(e,t,r){let n=new tH(this.field,e),i=new Int32Array(t),o=!1;for(let e=t;e>0;e--){let r=n.evaluateAt(this.field.exp(e));i[t-e]=r,0!==r&&(o=!0)}if(!o)return 0;let a=this.field.getOne();if(null!=r)for(let t of r){let r=this.field.exp(e.length-1-t),n=new tH(this.field,new Int32Array([this.field.subtract(0,r),1]));a=a.multiply(n)}let s=new tH(this.field,i),l=this.runEuclideanAlgorithm(this.field.buildMonomial(t,1),s,t),c=l[0],u=l[1],h=this.findErrorLocations(c),d=this.findErrorMagnitudes(u,c,h);for(let t=0;t<h.length;t++){let r=e.length-1-this.field.log(h[t]);if(r<0)throw v.getChecksumInstance();e[r]=this.field.subtract(e[r],d[t])}return h.length}runEuclideanAlgorithm(e,t,r){if(e.getDegree()<t.getDegree()){let r=e;e=t,t=r}let n=e,i=t,o=this.field.getZero(),a=this.field.getOne();for(;i.getDegree()>=Math.round(r/2);){let e=n,t=o;if(n=i,o=a,n.isZero())throw v.getChecksumInstance();i=e;let r=this.field.getZero(),s=n.getCoefficient(n.getDegree()),l=this.field.inverse(s);for(;i.getDegree()>=n.getDegree()&&!i.isZero();){let e=i.getDegree()-n.getDegree(),t=this.field.multiply(i.getCoefficient(i.getDegree()),l);r=r.add(this.field.buildMonomial(e,t)),i=i.subtract(n.multiplyByMonomial(e,t))}a=r.multiply(o).subtract(t).negative()}let s=a.getCoefficient(0);if(0===s)throw v.getChecksumInstance();let l=this.field.inverse(s);return[a.multiply(l),i.multiply(l)]}findErrorLocations(e){let t=e.getDegree(),r=new Int32Array(t),n=0;for(let i=1;i<this.field.getSize()&&n<t;i++)0===e.evaluateAt(i)&&(r[n]=this.field.inverse(i),n++);if(n!==t)throw v.getChecksumInstance();return r}findErrorMagnitudes(e,t,r){let n=t.getDegree(),i=new Int32Array(n);for(let e=1;e<=n;e++)i[n-e]=this.field.multiply(e,t.getCoefficient(e));let o=new tH(this.field,i),a=r.length,s=new Int32Array(a);for(let t=0;t<a;t++){let n=this.field.inverse(r[t]),i=this.field.subtract(0,e.evaluateAt(n)),a=this.field.inverse(o.evaluateAt(n));s[t]=this.field.multiply(i,a)}return s}}class tG{constructor(e,t,r,n,i){e instanceof tG?this.constructor_2(e):this.constructor_1(e,t,r,n,i)}constructor_1(e,t,r,n,i){let o=null==t||null==r,a=null==n||null==i;if(o&&a)throw new Z;o?(t=new ew(0,n.getY()),r=new ew(0,i.getY())):a&&(n=new ew(e.getWidth()-1,t.getY()),i=new ew(e.getWidth()-1,r.getY())),this.image=e,this.topLeft=t,this.bottomLeft=r,this.topRight=n,this.bottomRight=i,this.minX=Math.trunc(Math.min(t.getX(),r.getX())),this.maxX=Math.trunc(Math.max(n.getX(),i.getX())),this.minY=Math.trunc(Math.min(t.getY(),n.getY())),this.maxY=Math.trunc(Math.max(r.getY(),i.getY()))}constructor_2(e){this.image=e.image,this.topLeft=e.getTopLeft(),this.bottomLeft=e.getBottomLeft(),this.topRight=e.getTopRight(),this.bottomRight=e.getBottomRight(),this.minX=e.getMinX(),this.maxX=e.getMaxX(),this.minY=e.getMinY(),this.maxY=e.getMaxY()}static merge(e,t){return null==e?t:null==t?e:new tG(e.image,e.topLeft,e.bottomLeft,t.topRight,t.bottomRight)}addMissingRows(e,t,r){let n=this.topLeft,i=this.bottomLeft,o=this.topRight,a=this.bottomRight;if(e>0){let t=r?this.topLeft:this.topRight,i=Math.trunc(t.getY()-e);i<0&&(i=0);let a=new ew(t.getX(),i);r?n=a:o=a}if(t>0){let e=r?this.bottomLeft:this.bottomRight,n=Math.trunc(e.getY()+t);n>=this.image.getHeight()&&(n=this.image.getHeight()-1);let o=new ew(e.getX(),n);r?i=o:a=o}return new tG(this.image,n,i,o,a)}getMinX(){return this.minX}getMaxX(){return this.maxX}getMinY(){return this.minY}getMaxY(){return this.maxY}getTopLeft(){return this.topLeft}getTopRight(){return this.topRight}getBottomLeft(){return this.bottomLeft}getBottomRight(){return this.bottomRight}}class tW{constructor(e,t,r,n){this.columnCount=e,this.errorCorrectionLevel=n,this.rowCountUpperPart=t,this.rowCountLowerPart=r,this.rowCount=t+r}getColumnCount(){return this.columnCount}getErrorCorrectionLevel(){return this.errorCorrectionLevel}getRowCount(){return this.rowCount}getRowCountUpperPart(){return this.rowCountUpperPart}getRowCountLowerPart(){return this.rowCountLowerPart}}class tY{constructor(){this.buffer=""}static form(e,t){let r=-1;return e.replace(/%(-)?(0?[0-9]+)?([.][0-9]+)?([#][0-9]+)?([scfpexd%])/g,function(e,n,i,o,a,s){let l;if("%%"===e)return"%";if(void 0===t[++r])return;e=o?parseInt(o.substr(1)):void 0;let c=a?parseInt(a.substr(1)):void 0;switch(s){case"s":l=t[r];break;case"c":l=t[r][0];break;case"f":l=parseFloat(t[r]).toFixed(e);break;case"p":l=parseFloat(t[r]).toPrecision(e);break;case"e":l=parseFloat(t[r]).toExponential(e);break;case"x":l=parseInt(t[r]).toString(c||16);break;case"d":l=parseFloat(parseInt(t[r],c||10).toPrecision(e)).toFixed(0)}l="object"==typeof l?JSON.stringify(l):(+l).toString(c);let u=parseInt(i),h=i&&i[0]+""=="0"?"0":" ";for(;l.length<u;)l=void 0!==n?l+h:h+l;return l})}format(e,...t){this.buffer+=tY.form(e,t)}toString(){return this.buffer}}class tX{constructor(e){this.boundingBox=new tG(e),this.codewords=Array(e.getMaxY()-e.getMinY()+1)}getCodewordNearby(e){let t=this.getCodeword(e);if(null!=t)return t;for(let r=1;r<tX.MAX_NEARBY_DISTANCE;r++){let n=this.imageRowToCodewordIndex(e)-r;if(n>=0&&null!=(t=this.codewords[n])||(n=this.imageRowToCodewordIndex(e)+r)<this.codewords.length&&null!=(t=this.codewords[n]))return t}return null}imageRowToCodewordIndex(e){return e-this.boundingBox.getMinY()}setCodeword(e,t){this.codewords[this.imageRowToCodewordIndex(e)]=t}getCodeword(e){return this.codewords[this.imageRowToCodewordIndex(e)]}getBoundingBox(){return this.boundingBox}getCodewords(){return this.codewords}toString(){let e=new tY,t=0;for(let r of this.codewords){if(null==r){e.format("%3d: | %n",t++);continue}e.format("%3d: %3d|%3d%n",t++,r.getRowNumber(),r.getValue())}return e.toString()}}tX.MAX_NEARBY_DISTANCE=5;class tZ{constructor(){this.values=new Map}setValue(e){e=Math.trunc(e);let t=this.values.get(e);null==t&&(t=0),t++,this.values.set(e,t)}getValue(){let e=-1,t=[];for(let[r,n]of this.values.entries()){let i={getKey:()=>r,getValue:()=>n};i.getValue()>e?(e=i.getValue(),(t=[]).push(i.getKey())):i.getValue()===e&&t.push(i.getKey())}return tF.toIntArray(t)}getConfidence(e){return this.values.get(e)}}class tQ extends tX{constructor(e,t){super(e),this._isLeft=t}setRowNumbers(){for(let e of this.getCodewords())null!=e&&e.setRowNumberAsRowIndicatorColumn()}adjustCompleteIndicatorColumnRowNumbers(e){let t=this.getCodewords();this.setRowNumbers(),this.removeIncorrectCodewords(t,e);let r=this.getBoundingBox(),n=this._isLeft?r.getTopLeft():r.getTopRight(),i=this._isLeft?r.getBottomLeft():r.getBottomRight(),o=this.imageRowToCodewordIndex(Math.trunc(n.getY())),a=this.imageRowToCodewordIndex(Math.trunc(i.getY())),s=-1,l=1,c=0;for(let r=o;r<a;r++){if(null==t[r])continue;let n=t[r],i=n.getRowNumber()-s;if(0===i)c++;else if(1===i)l=Math.max(l,c),c=1,s=n.getRowNumber();else if(i<0||n.getRowNumber()>=e.getRowCount()||i>r)t[r]=null;else{let e;let o=(e=l>2?(l-2)*i:i)>=r;for(let n=1;n<=e&&!o;n++)o=null!=t[r-n];o?t[r]=null:(s=n.getRowNumber(),c=1)}}}getRowHeights(){let e=this.getBarcodeMetadata();if(null==e)return null;this.adjustIncompleteIndicatorColumnRowNumbers(e);let t=new Int32Array(e.getRowCount());for(let e of this.getCodewords())if(null!=e){let r=e.getRowNumber();if(r>=t.length)continue;t[r]++}return t}adjustIncompleteIndicatorColumnRowNumbers(e){let t=this.getBoundingBox(),r=this._isLeft?t.getTopLeft():t.getTopRight(),n=this._isLeft?t.getBottomLeft():t.getBottomRight(),i=this.imageRowToCodewordIndex(Math.trunc(r.getY())),o=this.imageRowToCodewordIndex(Math.trunc(n.getY())),a=this.getCodewords(),s=-1;for(let t=i;t<o;t++){if(null==a[t])continue;let r=a[t];r.setRowNumberAsRowIndicatorColumn();let n=r.getRowNumber()-s;0===n||(1===n?s=r.getRowNumber():r.getRowNumber()>=e.getRowCount()?a[t]=null:s=r.getRowNumber())}}getBarcodeMetadata(){let e=this.getCodewords(),t=new tZ,r=new tZ,n=new tZ,i=new tZ;for(let o of e){if(null==o)continue;o.setRowNumberAsRowIndicatorColumn();let e=o.getValue()%30,a=o.getRowNumber();switch(!this._isLeft&&(a+=2),a%3){case 0:r.setValue(3*e+1);break;case 1:i.setValue(e/3),n.setValue(e%3);break;case 2:t.setValue(e+1)}}if(0===t.getValue().length||0===r.getValue().length||0===n.getValue().length||0===i.getValue().length||t.getValue()[0]<1||r.getValue()[0]+n.getValue()[0]<tF.MIN_ROWS_IN_BARCODE||r.getValue()[0]+n.getValue()[0]>tF.MAX_ROWS_IN_BARCODE)return null;let o=new tW(t.getValue()[0],r.getValue()[0],n.getValue()[0],i.getValue()[0]);return this.removeIncorrectCodewords(e,o),o}removeIncorrectCodewords(e,t){for(let r=0;r<e.length;r++){let n=e[r];if(null==e[r])continue;let i=n.getValue()%30,o=n.getRowNumber();if(o>t.getRowCount()){e[r]=null;continue}switch(!this._isLeft&&(o+=2),o%3){case 0:3*i+1!==t.getRowCountUpperPart()&&(e[r]=null);break;case 1:(Math.trunc(i/3)!==t.getErrorCorrectionLevel()||i%3!==t.getRowCountLowerPart())&&(e[r]=null);break;case 2:i+1!==t.getColumnCount()&&(e[r]=null)}}}isLeft(){return this._isLeft}toString(){return"IsLeft: "+this._isLeft+"\n"+super.toString()}}class tq{constructor(e,t){this.ADJUST_ROW_NUMBER_SKIP=2,this.barcodeMetadata=e,this.barcodeColumnCount=e.getColumnCount(),this.boundingBox=t,this.detectionResultColumns=Array(this.barcodeColumnCount+2)}getDetectionResultColumns(){let e;this.adjustIndicatorColumnRowNumbers(this.detectionResultColumns[0]),this.adjustIndicatorColumnRowNumbers(this.detectionResultColumns[this.barcodeColumnCount+1]);let t=tF.MAX_CODEWORDS_IN_BARCODE;do e=t,t=this.adjustRowNumbersAndGetCount();while(t>0&&t<e);return this.detectionResultColumns}adjustIndicatorColumnRowNumbers(e){null!=e&&e.adjustCompleteIndicatorColumnRowNumbers(this.barcodeMetadata)}adjustRowNumbersAndGetCount(){let e=this.adjustRowNumbersByRow();if(0===e)return 0;for(let e=1;e<this.barcodeColumnCount+1;e++){let t=this.detectionResultColumns[e].getCodewords();for(let r=0;r<t.length;r++){if(null!=t[r])!t[r].hasValidRowNumber()&&this.adjustRowNumbers(e,r,t)}}return e}adjustRowNumbersByRow(){return this.adjustRowNumbersFromBothRI(),this.adjustRowNumbersFromLRI()+this.adjustRowNumbersFromRRI()}adjustRowNumbersFromBothRI(){if(null==this.detectionResultColumns[0]||null==this.detectionResultColumns[this.barcodeColumnCount+1])return;let e=this.detectionResultColumns[0].getCodewords(),t=this.detectionResultColumns[this.barcodeColumnCount+1].getCodewords();for(let r=0;r<e.length;r++)if(null!=e[r]&&null!=t[r]&&e[r].getRowNumber()===t[r].getRowNumber())for(let t=1;t<=this.barcodeColumnCount;t++){let n=this.detectionResultColumns[t].getCodewords()[r];if(null!=n)n.setRowNumber(e[r].getRowNumber()),!n.hasValidRowNumber()&&(this.detectionResultColumns[t].getCodewords()[r]=null)}}adjustRowNumbersFromRRI(){if(null==this.detectionResultColumns[this.barcodeColumnCount+1])return 0;let e=0,t=this.detectionResultColumns[this.barcodeColumnCount+1].getCodewords();for(let r=0;r<t.length;r++){if(null==t[r])continue;let n=t[r].getRowNumber(),i=0;for(let t=this.barcodeColumnCount+1;t>0&&i<this.ADJUST_ROW_NUMBER_SKIP;t--){let o=this.detectionResultColumns[t].getCodewords()[r];null!=o&&(i=tq.adjustRowNumberIfValid(n,i,o),!o.hasValidRowNumber()&&e++)}}return e}adjustRowNumbersFromLRI(){if(null==this.detectionResultColumns[0])return 0;let e=0,t=this.detectionResultColumns[0].getCodewords();for(let r=0;r<t.length;r++){if(null==t[r])continue;let n=t[r].getRowNumber(),i=0;for(let t=1;t<this.barcodeColumnCount+1&&i<this.ADJUST_ROW_NUMBER_SKIP;t++){let o=this.detectionResultColumns[t].getCodewords()[r];null!=o&&(i=tq.adjustRowNumberIfValid(n,i,o),!o.hasValidRowNumber()&&e++)}}return e}static adjustRowNumberIfValid(e,t,r){return null==r?t:(!r.hasValidRowNumber()&&(r.isValidRowNumber(e)?(r.setRowNumber(e),t=0):++t),t)}adjustRowNumbers(e,t,r){if(!this.detectionResultColumns[e-1])return;let n=r[t],i=this.detectionResultColumns[e-1].getCodewords(),o=i;null!=this.detectionResultColumns[e+1]&&(o=this.detectionResultColumns[e+1].getCodewords());let a=Array(14);for(let e of(a[2]=i[t],a[3]=o[t],t>0&&(a[0]=r[t-1],a[4]=i[t-1],a[5]=o[t-1]),t>1&&(a[8]=r[t-2],a[10]=i[t-2],a[11]=o[t-2]),t<r.length-1&&(a[1]=r[t+1],a[6]=i[t+1],a[7]=o[t+1]),t<r.length-2&&(a[9]=r[t+2],a[12]=i[t+2],a[13]=o[t+2]),a))if(tq.adjustRowNumber(n,e))return}static adjustRowNumber(e,t){return null!=t&&!!t.hasValidRowNumber()&&t.getBucket()===e.getBucket()&&(e.setRowNumber(t.getRowNumber()),!0)}getBarcodeColumnCount(){return this.barcodeColumnCount}getBarcodeRowCount(){return this.barcodeMetadata.getRowCount()}getBarcodeECLevel(){return this.barcodeMetadata.getErrorCorrectionLevel()}setBoundingBox(e){this.boundingBox=e}getBoundingBox(){return this.boundingBox}setDetectionResultColumn(e,t){this.detectionResultColumns[e]=t}getDetectionResultColumn(e){return this.detectionResultColumns[e]}toString(){let e=this.detectionResultColumns[0];null==e&&(e=this.detectionResultColumns[this.barcodeColumnCount+1]);let t=new tY;for(let r=0;r<e.getCodewords().length;r++){t.format("CW %3d:",r);for(let e=0;e<this.barcodeColumnCount+2;e++){if(null==this.detectionResultColumns[e]){t.format(" | ");continue}let n=this.detectionResultColumns[e].getCodewords()[r];if(null==n){t.format(" | ");continue}t.format(" %3d|%3d",n.getRowNumber(),n.getValue())}t.format("%n")}return t.toString()}}class tK{constructor(e,t,r,n){this.rowNumber=tK.BARCODE_ROW_UNKNOWN,this.startX=Math.trunc(e),this.endX=Math.trunc(t),this.bucket=Math.trunc(r),this.value=Math.trunc(n)}hasValidRowNumber(){return this.isValidRowNumber(this.rowNumber)}isValidRowNumber(e){return e!==tK.BARCODE_ROW_UNKNOWN&&this.bucket===e%3*3}setRowNumberAsRowIndicatorColumn(){this.rowNumber=Math.trunc(3*Math.trunc(this.value/30)+Math.trunc(this.bucket/3))}getWidth(){return this.endX-this.startX}getStartX(){return this.startX}getEndX(){return this.endX}getBucket(){return this.bucket}getValue(){return this.value}getRowNumber(){return this.rowNumber}setRowNumber(e){this.rowNumber=e}toString(){return this.rowNumber+"|"+this.value}}tK.BARCODE_ROW_UNKNOWN=-1;class tJ{static initialize(){for(let e=0;e<tF.SYMBOL_TABLE.length;e++){let t=tF.SYMBOL_TABLE[e],r=1&t;for(let n=0;n<tF.BARS_IN_MODULE;n++){let i=0;for(;(1&t)===r;)i+=1,t>>=1;r=1&t,!tJ.RATIOS_TABLE[e]&&(tJ.RATIOS_TABLE[e]=Array(tF.BARS_IN_MODULE)),tJ.RATIOS_TABLE[e][tF.BARS_IN_MODULE-n-1]=Math.fround(i/tF.MODULES_IN_CODEWORD)}}this.bSymbolTableReady=!0}static getDecodedValue(e){let t=tJ.getDecodedCodewordValue(tJ.sampleBitCounts(e));return -1!==t?t:tJ.getClosestDecodedValue(e)}static sampleBitCounts(e){let t=ep.sum(e),r=new Int32Array(tF.BARS_IN_MODULE),n=0,i=0;for(let o=0;o<tF.MODULES_IN_CODEWORD;o++){let a=t/(2*tF.MODULES_IN_CODEWORD)+o*t/tF.MODULES_IN_CODEWORD;i+e[n]<=a&&(i+=e[n],n++),r[n]++}return r}static getDecodedCodewordValue(e){let t=tJ.getBitValue(e);return -1===tF.getCodeword(t)?-1:t}static getBitValue(e){let t=0;for(let r=0;r<e.length;r++)for(let n=0;n<e[r];n++)t=t<<1|(r%2==0?1:0);return Math.trunc(t)}static getClosestDecodedValue(e){let t=ep.sum(e),r=Array(tF.BARS_IN_MODULE);if(t>1)for(let n=0;n<r.length;n++)r[n]=Math.fround(e[n]/t);let n=em.MAX_VALUE,i=-1;!this.bSymbolTableReady&&tJ.initialize();for(let e=0;e<tJ.RATIOS_TABLE.length;e++){let t=0,o=tJ.RATIOS_TABLE[e];for(let e=0;e<tF.BARS_IN_MODULE;e++){let i=Math.fround(o[e]-r[e]);if((t+=Math.fround(i*i))>=n)break}t<n&&(n=t,i=tF.SYMBOL_TABLE[e])}return i}}tJ.bSymbolTableReady=!1,tJ.RATIOS_TABLE=Array(tF.SYMBOL_TABLE.length).map(e=>Array(tF.BARS_IN_MODULE));class t${constructor(){this.segmentCount=-1,this.fileSize=-1,this.timestamp=-1,this.checksum=-1}getSegmentIndex(){return this.segmentIndex}setSegmentIndex(e){this.segmentIndex=e}getFileId(){return this.fileId}setFileId(e){this.fileId=e}getOptionalData(){return this.optionalData}setOptionalData(e){this.optionalData=e}isLastSegment(){return this.lastSegment}setLastSegment(e){this.lastSegment=e}getSegmentCount(){return this.segmentCount}setSegmentCount(e){this.segmentCount=e}getSender(){return this.sender||null}setSender(e){this.sender=e}getAddressee(){return this.addressee||null}setAddressee(e){this.addressee=e}getFileName(){return this.fileName}setFileName(e){this.fileName=e}getFileSize(){return this.fileSize}setFileSize(e){this.fileSize=e}getChecksum(){return this.checksum}setChecksum(e){this.checksum=e}getTimestamp(){return this.timestamp}setTimestamp(e){this.timestamp=e}}class t1{static parseLong(e,t){return parseInt(e,t)}}class t0 extends b{}t0.kind="NullPointerException";class t2{writeBytes(e){this.writeBytesOffset(e,0,e.length)}writeBytesOffset(e,t,r){if(null==e)throw new t0;if(t<0||t>e.length||r<0||t+r>e.length||t+r<0)throw new L;if(0!==r)for(let n=0;n<r;n++)this.write(e[t+n])}flush(){}close(){}}class t3 extends b{}class t4 extends t2{constructor(e=32){if(super(),this.count=0,e<0)throw new R("Negative initial size: "+e);this.buf=new Uint8Array(e)}ensureCapacity(e){e-this.buf.length>0&&this.grow(e)}grow(e){let t=this.buf.length<<1;if(t-e<0&&(t=e),t<0){if(e<0)throw new t3;t=k.MAX_VALUE}this.buf=F.copyOfUint8Array(this.buf,t)}write(e){this.ensureCapacity(this.count+1),this.buf[this.count]=e,this.count+=1}writeBytesOffset(e,t,r){if(t<0||t>e.length||r<0||t+r-e.length>0)throw new L;this.ensureCapacity(this.count+r),P.arraycopy(e,t,this.buf,this.count,r),this.count+=r}writeTo(e){e.writeBytesOffset(this.buf,0,this.count)}reset(){this.count=0}toByteArray(){return F.copyOfUint8Array(this.buf,this.count)}size(){return this.count}toString(e){return e?"string"==typeof e?this.toString_string(e):this.toString_number(e):this.toString_void()}toString_void(){return new String(this.buf).toString()}toString_string(e){return new String(this.buf).toString()}toString_number(e){return new String(this.buf).toString()}close(){}}function t8(){if("undefined"!=typeof window)return window.BigInt||null;if(void 0!==r.g)return r.g.BigInt||null;if("undefined"!=typeof self)return self.BigInt||null;throw Error("Can't search globals for BigInt!")}function t6(e){if(void 0===t&&(t=t8()),null===t)throw Error("BigInt is not supported!");return t(e)}(f=_||(_={}))[f.ALPHA=0]="ALPHA",f[f.LOWER=1]="LOWER",f[f.MIXED=2]="MIXED",f[f.PUNCT=3]="PUNCT",f[f.ALPHA_SHIFT=4]="ALPHA_SHIFT",f[f.PUNCT_SHIFT=5]="PUNCT_SHIFT";class t5{static decode(e,t){let r=new Y(""),n=V.ISO8859_1;r.enableDecoding(n);let i=1,o=e[i++],a=new t$;for(;i<e[0];){switch(o){case t5.TEXT_COMPACTION_MODE_LATCH:i=t5.textCompaction(e,i,r);break;case t5.BYTE_COMPACTION_MODE_LATCH:case t5.BYTE_COMPACTION_MODE_LATCH_6:i=t5.byteCompaction(o,e,n,i,r);break;case t5.MODE_SHIFT_TO_BYTE_COMPACTION_MODE:r.append(e[i++]);break;case t5.NUMERIC_COMPACTION_MODE_LATCH:i=t5.numericCompaction(e,i,r);break;case t5.ECI_CHARSET:V.getCharacterSetECIByValue(e[i++]);break;case t5.ECI_GENERAL_PURPOSE:i+=2;break;case t5.ECI_USER_DEFINED:i++;break;case t5.BEGIN_MACRO_PDF417_CONTROL_BLOCK:i=t5.decodeMacroBlock(e,i,a);break;case t5.BEGIN_MACRO_PDF417_OPTIONAL_FIELD:case t5.MACRO_PDF417_TERMINATOR:throw new z;default:i--,i=t5.textCompaction(e,i,r)}if(i<e.length)o=e[i++];else throw z.getFormatInstance()}if(0===r.length())throw z.getFormatInstance();let s=new ea(null,r.toString(),null,t);return s.setOther(a),s}static decodeMacroBlock(e,t,r){if(t+t5.NUMBER_OF_SEQUENCE_CODEWORDS>e[0])throw z.getFormatInstance();let n=new Int32Array(t5.NUMBER_OF_SEQUENCE_CODEWORDS);for(let r=0;r<t5.NUMBER_OF_SEQUENCE_CODEWORDS;r++,t++)n[r]=e[t];r.setSegmentIndex(k.parseInt(t5.decodeBase900toBase10(n,t5.NUMBER_OF_SEQUENCE_CODEWORDS)));let i=new Y;t=t5.textCompaction(e,t,i),r.setFileId(i.toString());let o=-1;for(e[t]===t5.BEGIN_MACRO_PDF417_OPTIONAL_FIELD&&(o=t+1);t<e[0];)switch(e[t]){case t5.BEGIN_MACRO_PDF417_OPTIONAL_FIELD:switch(e[++t]){case t5.MACRO_PDF417_OPTIONAL_FIELD_FILE_NAME:let n=new Y;t=t5.textCompaction(e,t+1,n),r.setFileName(n.toString());break;case t5.MACRO_PDF417_OPTIONAL_FIELD_SENDER:let i=new Y;t=t5.textCompaction(e,t+1,i),r.setSender(i.toString());break;case t5.MACRO_PDF417_OPTIONAL_FIELD_ADDRESSEE:let o=new Y;t=t5.textCompaction(e,t+1,o),r.setAddressee(o.toString());break;case t5.MACRO_PDF417_OPTIONAL_FIELD_SEGMENT_COUNT:let a=new Y;t=t5.numericCompaction(e,t+1,a),r.setSegmentCount(k.parseInt(a.toString()));break;case t5.MACRO_PDF417_OPTIONAL_FIELD_TIME_STAMP:let s=new Y;t=t5.numericCompaction(e,t+1,s),r.setTimestamp(t1.parseLong(s.toString()));break;case t5.MACRO_PDF417_OPTIONAL_FIELD_CHECKSUM:let l=new Y;t=t5.numericCompaction(e,t+1,l),r.setChecksum(k.parseInt(l.toString()));break;case t5.MACRO_PDF417_OPTIONAL_FIELD_FILE_SIZE:let c=new Y;t=t5.numericCompaction(e,t+1,c),r.setFileSize(t1.parseLong(c.toString()));break;default:throw z.getFormatInstance()}break;case t5.MACRO_PDF417_TERMINATOR:t++,r.setLastSegment(!0);break;default:throw z.getFormatInstance()}if(-1!==o){let n=t-o;r.isLastSegment()&&n--,r.setOptionalData(F.copyOfRange(e,o,o+n))}return t}static textCompaction(e,t,r){let n=new Int32Array((e[0]-t)*2),i=new Int32Array((e[0]-t)*2),o=0,a=!1;for(;t<e[0]&&!a;){let r=e[t++];if(r<t5.TEXT_COMPACTION_MODE_LATCH)n[o]=r/30,n[o+1]=r%30,o+=2;else switch(r){case t5.TEXT_COMPACTION_MODE_LATCH:n[o++]=t5.TEXT_COMPACTION_MODE_LATCH;break;case t5.BYTE_COMPACTION_MODE_LATCH:case t5.BYTE_COMPACTION_MODE_LATCH_6:case t5.NUMERIC_COMPACTION_MODE_LATCH:case t5.BEGIN_MACRO_PDF417_CONTROL_BLOCK:case t5.BEGIN_MACRO_PDF417_OPTIONAL_FIELD:case t5.MACRO_PDF417_TERMINATOR:t--,a=!0;break;case t5.MODE_SHIFT_TO_BYTE_COMPACTION_MODE:n[o]=t5.MODE_SHIFT_TO_BYTE_COMPACTION_MODE,r=e[t++],i[o]=r,o++}}return t5.decodeTextCompaction(n,i,o,r),t}static decodeTextCompaction(e,t,r,n){let i=_.ALPHA,o=_.ALPHA,a=0;for(;a<r;){let r=e[a],s="";switch(i){case _.ALPHA:if(r<26)s=String.fromCharCode(65+r);else switch(r){case 26:s=" ";break;case t5.LL:i=_.LOWER;break;case t5.ML:i=_.MIXED;break;case t5.PS:o=i,i=_.PUNCT_SHIFT;break;case t5.MODE_SHIFT_TO_BYTE_COMPACTION_MODE:n.append(t[a]);break;case t5.TEXT_COMPACTION_MODE_LATCH:i=_.ALPHA}break;case _.LOWER:if(r<26)s=String.fromCharCode(97+r);else switch(r){case 26:s=" ";break;case t5.AS:o=i,i=_.ALPHA_SHIFT;break;case t5.ML:i=_.MIXED;break;case t5.PS:o=i,i=_.PUNCT_SHIFT;break;case t5.MODE_SHIFT_TO_BYTE_COMPACTION_MODE:n.append(t[a]);break;case t5.TEXT_COMPACTION_MODE_LATCH:i=_.ALPHA}break;case _.MIXED:if(r<t5.PL)s=t5.MIXED_CHARS[r];else switch(r){case t5.PL:i=_.PUNCT;break;case 26:s=" ";break;case t5.LL:i=_.LOWER;break;case t5.AL:i=_.ALPHA;break;case t5.PS:o=i,i=_.PUNCT_SHIFT;break;case t5.MODE_SHIFT_TO_BYTE_COMPACTION_MODE:n.append(t[a]);break;case t5.TEXT_COMPACTION_MODE_LATCH:i=_.ALPHA}break;case _.PUNCT:if(r<t5.PAL)s=t5.PUNCT_CHARS[r];else switch(r){case t5.PAL:i=_.ALPHA;break;case t5.MODE_SHIFT_TO_BYTE_COMPACTION_MODE:n.append(t[a]);break;case t5.TEXT_COMPACTION_MODE_LATCH:i=_.ALPHA}break;case _.ALPHA_SHIFT:if(i=o,r<26)s=String.fromCharCode(65+r);else switch(r){case 26:s=" ";break;case t5.TEXT_COMPACTION_MODE_LATCH:i=_.ALPHA}break;case _.PUNCT_SHIFT:if(i=o,r<t5.PAL)s=t5.PUNCT_CHARS[r];else switch(r){case t5.PAL:i=_.ALPHA;break;case t5.MODE_SHIFT_TO_BYTE_COMPACTION_MODE:n.append(t[a]);break;case t5.TEXT_COMPACTION_MODE_LATCH:i=_.ALPHA}}""!==s&&n.append(s),a++}}static byteCompaction(e,t,r,n,i){let o=new t4,a=0,s=0,l=!1;switch(e){case t5.BYTE_COMPACTION_MODE_LATCH:let c=new Int32Array(6),u=t[n++];for(;n<t[0]&&!l;)switch(c[a++]=u,s=900*s+u,u=t[n++]){case t5.TEXT_COMPACTION_MODE_LATCH:case t5.BYTE_COMPACTION_MODE_LATCH:case t5.NUMERIC_COMPACTION_MODE_LATCH:case t5.BYTE_COMPACTION_MODE_LATCH_6:case t5.BEGIN_MACRO_PDF417_CONTROL_BLOCK:case t5.BEGIN_MACRO_PDF417_OPTIONAL_FIELD:case t5.MACRO_PDF417_TERMINATOR:n--,l=!0;break;default:if(a%5==0&&a>0){for(let e=0;e<6;++e)o.write(Number(t6(s)>>t6(8*(5-e))));s=0,a=0}}n===t[0]&&u<t5.TEXT_COMPACTION_MODE_LATCH&&(c[a++]=u);for(let e=0;e<a;e++)o.write(c[e]);break;case t5.BYTE_COMPACTION_MODE_LATCH_6:for(;n<t[0]&&!l;){let e=t[n++];if(e<t5.TEXT_COMPACTION_MODE_LATCH)a++,s=900*s+e;else switch(e){case t5.TEXT_COMPACTION_MODE_LATCH:case t5.BYTE_COMPACTION_MODE_LATCH:case t5.NUMERIC_COMPACTION_MODE_LATCH:case t5.BYTE_COMPACTION_MODE_LATCH_6:case t5.BEGIN_MACRO_PDF417_CONTROL_BLOCK:case t5.BEGIN_MACRO_PDF417_OPTIONAL_FIELD:case t5.MACRO_PDF417_TERMINATOR:n--,l=!0}if(a%5==0&&a>0){for(let e=0;e<6;++e)o.write(Number(t6(s)>>t6(8*(5-e))));s=0,a=0}}}return i.append(G.decode(o.toByteArray(),r)),n}static numericCompaction(e,t,r){let n=0,i=!1,o=new Int32Array(t5.MAX_NUMERIC_CODEWORDS);for(;t<e[0]&&!i;){let a=e[t++];if(t===e[0]&&(i=!0),a<t5.TEXT_COMPACTION_MODE_LATCH)o[n]=a,n++;else switch(a){case t5.TEXT_COMPACTION_MODE_LATCH:case t5.BYTE_COMPACTION_MODE_LATCH:case t5.BYTE_COMPACTION_MODE_LATCH_6:case t5.BEGIN_MACRO_PDF417_CONTROL_BLOCK:case t5.BEGIN_MACRO_PDF417_OPTIONAL_FIELD:case t5.MACRO_PDF417_TERMINATOR:t--,i=!0}(n%t5.MAX_NUMERIC_CODEWORDS==0||a===t5.NUMERIC_COMPACTION_MODE_LATCH||i)&&n>0&&(r.append(t5.decodeBase900toBase10(o,n)),n=0)}return t}static decodeBase900toBase10(e,t){let r=t6(0);for(let n=0;n<t;n++)r+=t5.EXP900[t-n-1]*t6(e[n]);let n=r.toString();if("1"!==n.charAt(0))throw new z;return n.substring(1)}}t5.TEXT_COMPACTION_MODE_LATCH=900,t5.BYTE_COMPACTION_MODE_LATCH=901,t5.NUMERIC_COMPACTION_MODE_LATCH=902,t5.BYTE_COMPACTION_MODE_LATCH_6=924,t5.ECI_USER_DEFINED=925,t5.ECI_GENERAL_PURPOSE=926,t5.ECI_CHARSET=927,t5.BEGIN_MACRO_PDF417_CONTROL_BLOCK=928,t5.BEGIN_MACRO_PDF417_OPTIONAL_FIELD=923,t5.MACRO_PDF417_TERMINATOR=922,t5.MODE_SHIFT_TO_BYTE_COMPACTION_MODE=913,t5.MAX_NUMERIC_CODEWORDS=15,t5.MACRO_PDF417_OPTIONAL_FIELD_FILE_NAME=0,t5.MACRO_PDF417_OPTIONAL_FIELD_SEGMENT_COUNT=1,t5.MACRO_PDF417_OPTIONAL_FIELD_TIME_STAMP=2,t5.MACRO_PDF417_OPTIONAL_FIELD_SENDER=3,t5.MACRO_PDF417_OPTIONAL_FIELD_ADDRESSEE=4,t5.MACRO_PDF417_OPTIONAL_FIELD_FILE_SIZE=5,t5.MACRO_PDF417_OPTIONAL_FIELD_CHECKSUM=6,t5.PL=25,t5.LL=27,t5.AS=27,t5.ML=28,t5.AL=28,t5.PS=29,t5.PAL=29,t5.PUNCT_CHARS=";<>@[\\]_`~!\r ,:\n-.$/\"|*()?{}'",t5.MIXED_CHARS="0123456789&\r ,:#-.$/+%*=^",t5.EXP900=t8()?function(){let e=[];e[0]=t6(1);let t=t6(900);e[1]=t;for(let r=2;r<16;r++)e[r]=e[r-1]*t;return e}():[],t5.NUMBER_OF_SEQUENCE_CODEWORDS=2;class t7{constructor(){}static decode(e,t,r,n,i,o,a){let s,l=new tG(e,t,r,n,i),c=null,u=null;for(let r=!0;;r=!1){if(null!=t&&(c=t7.getRowIndicatorColumn(e,l,t,!0,o,a)),null!=n&&(u=t7.getRowIndicatorColumn(e,l,n,!1,o,a)),null==(s=t7.merge(c,u)))throw Z.getNotFoundInstance();let i=s.getBoundingBox();if(r&&null!=i&&(i.getMinY()<l.getMinY()||i.getMaxY()>l.getMaxY()))l=i;else break}s.setBoundingBox(l);let h=s.getBarcodeColumnCount()+1;s.setDetectionResultColumn(0,c),s.setDetectionResultColumn(h,u);let d=null!=c;for(let t=1;t<=h;t++){let r,n=d?t:h-t;if(void 0!==s.getDetectionResultColumn(n))continue;r=0===n||n===h?new tQ(l,0===n):new tX(l),s.setDetectionResultColumn(n,r);let i=-1,c=-1;for(let t=l.getMinY();t<=l.getMaxY();t++){if((i=t7.getStartColumn(s,n,t,d))<0||i>l.getMaxX()){if(-1===c)continue;i=c}let u=t7.detectCodeword(e,l.getMinX(),l.getMaxX(),d,i,t,o,a);null!=u&&(r.setCodeword(t,u),c=i,o=Math.min(o,u.getWidth()),a=Math.max(a,u.getWidth()))}}return t7.createDecoderResult(s)}static merge(e,t){if(null==e&&null==t)return null;let r=t7.getBarcodeMetadata(e,t);return null==r?null:new tq(r,tG.merge(t7.adjustBoundingBox(e),t7.adjustBoundingBox(t)))}static adjustBoundingBox(e){if(null==e)return null;let t=e.getRowHeights();if(null==t)return null;let r=t7.getMax(t),n=0;for(let e of t)if(n+=r-e,e>0)break;let i=e.getCodewords();for(let e=0;n>0&&null==i[e];e++)n--;let o=0;for(let e=t.length-1;e>=0&&(o+=r-t[e],!(t[e]>0));e--);for(let e=i.length-1;o>0&&null==i[e];e--)o--;return e.getBoundingBox().addMissingRows(n,o,e.isLeft())}static getMax(e){let t=-1;for(let r of e)t=Math.max(t,r);return t}static getBarcodeMetadata(e,t){let r,n;return null==e||null==(r=e.getBarcodeMetadata())?null==t?null:t.getBarcodeMetadata():null==t||null==(n=t.getBarcodeMetadata())?r:r.getColumnCount()!==n.getColumnCount()&&r.getErrorCorrectionLevel()!==n.getErrorCorrectionLevel()&&r.getRowCount()!==n.getRowCount()?null:r}static getRowIndicatorColumn(e,t,r,n,i,o){let a=new tQ(t,n);for(let s=0;s<2;s++){let l=0===s?1:-1,c=Math.trunc(Math.trunc(r.getX()));for(let s=Math.trunc(Math.trunc(r.getY()));s<=t.getMaxY()&&s>=t.getMinY();s+=l){let t=t7.detectCodeword(e,0,e.getWidth(),n,c,s,i,o);null!=t&&(a.setCodeword(s,t),c=n?t.getStartX():t.getEndX())}}return a}static adjustCodewordCount(e,t){let r=t[0][1],n=r.getValue(),i=e.getBarcodeColumnCount()*e.getBarcodeRowCount()-t7.getNumberOfECCodeWords(e.getBarcodeECLevel());if(0===n.length){if(i<1||i>tF.MAX_CODEWORDS_IN_BARCODE)throw Z.getNotFoundInstance();r.setValue(i)}else n[0]!==i&&r.setValue(i)}static createDecoderResult(e){let t=t7.createBarcodeMatrix(e);t7.adjustCodewordCount(e,t);let r=[],n=new Int32Array(e.getBarcodeRowCount()*e.getBarcodeColumnCount()),i=[],o=[];for(let a=0;a<e.getBarcodeRowCount();a++)for(let s=0;s<e.getBarcodeColumnCount();s++){let l=t[a][s+1].getValue(),c=a*e.getBarcodeColumnCount()+s;0===l.length?r.push(c):1===l.length?n[c]=l[0]:(o.push(c),i.push(l))}let a=Array(i.length);for(let e=0;e<a.length;e++)a[e]=i[e];return t7.createDecoderResultFromAmbiguousValues(e.getBarcodeECLevel(),n,tF.toIntArray(r),tF.toIntArray(o),a)}static createDecoderResultFromAmbiguousValues(e,t,r,n,i){let o=new Int32Array(n.length),a=100;for(;a-- >0;){for(let e=0;e<o.length;e++)t[n[e]]=i[e][o[e]];try{return t7.decodeCodewords(t,e,r)}catch(e){if(!(e instanceof v))throw e}if(0===o.length)break;for(let e=0;e<o.length;e++){if(o[e]<i[e].length-1){o[e]++;break}if(o[e]=0,e===o.length-1)throw v.getChecksumInstance()}}throw v.getChecksumInstance()}static createBarcodeMatrix(e){let t=Array.from({length:e.getBarcodeRowCount()},()=>Array(e.getBarcodeColumnCount()+2));for(let e=0;e<t.length;e++)for(let r=0;r<t[e].length;r++)t[e][r]=new tZ;let r=0;for(let n of e.getDetectionResultColumns()){if(null!=n){for(let e of n.getCodewords())if(null!=e){let n=e.getRowNumber();if(n>=0){if(n>=t.length)continue;t[n][r].setValue(e.getValue())}}}r++}return t}static isValidBarcodeColumn(e,t){return t>=0&&t<=e.getBarcodeColumnCount()+1}static getStartColumn(e,t,r,n){let i=n?1:-1,o=null;if(t7.isValidBarcodeColumn(e,t-i)&&(o=e.getDetectionResultColumn(t-i).getCodeword(r)),null!=o)return n?o.getEndX():o.getStartX();if(null!=(o=e.getDetectionResultColumn(t).getCodewordNearby(r)))return n?o.getStartX():o.getEndX();if(t7.isValidBarcodeColumn(e,t-i)&&(o=e.getDetectionResultColumn(t-i).getCodewordNearby(r)),null!=o)return n?o.getEndX():o.getStartX();let a=0;for(;t7.isValidBarcodeColumn(e,t-i);){for(let r of(t-=i,e.getDetectionResultColumn(t).getCodewords()))if(null!=r)return(n?r.getEndX():r.getStartX())+i*a*(r.getEndX()-r.getStartX());a++}return n?e.getBoundingBox().getMinX():e.getBoundingBox().getMaxX()}static detectCodeword(e,t,r,n,i,o,a,s){let l;i=t7.adjustCodewordStartColumn(e,t,r,n,i,o);let c=t7.getModuleBitCount(e,t,r,n,i,o);if(null==c)return null;let u=ep.sum(c);if(n)l=i+u;else{for(let e=0;e<c.length/2;e++){let t=c[e];c[e]=c[c.length-1-e],c[c.length-1-e]=t}i=(l=i)-u}if(!t7.checkCodewordSkew(u,a,s))return null;let h=tJ.getDecodedValue(c),d=tF.getCodeword(h);return -1===d?null:new tK(i,l,t7.getCodewordBucketNumber(h),d)}static getModuleBitCount(e,t,r,n,i,o){let a=i,s=new Int32Array(8),l=0,c=n?1:-1,u=n;for(;(n?a<r:a>=t)&&l<s.length;)e.get(a,o)===u?(s[l]++,a+=c):(l++,u=!u);return l===s.length||a===(n?r:t)&&l===s.length-1?s:null}static getNumberOfECCodeWords(e){return 2<<e}static adjustCodewordStartColumn(e,t,r,n,i,o){let a=i,s=n?-1:1;for(let l=0;l<2;l++){for(;(n?a>=t:a<r)&&n===e.get(a,o);){if(Math.abs(i-a)>t7.CODEWORD_SKEW_SIZE)return i;a+=s}s=-s,n=!n}return a}static checkCodewordSkew(e,t,r){return t-t7.CODEWORD_SKEW_SIZE<=e&&e<=r+t7.CODEWORD_SKEW_SIZE}static decodeCodewords(e,t,r){if(0===e.length)throw z.getFormatInstance();let n=1<<t+1,i=t7.correctErrors(e,r,n);t7.verifyCodewordCount(e,n);let o=t5.decode(e,""+t);return o.setErrorsCorrected(i),o.setErasures(r.length),o}static correctErrors(e,t,r){if(null!=t&&t.length>r/2+t7.MAX_ERRORS||r<0||r>t7.MAX_EC_CODEWORDS)throw v.getChecksumInstance();return t7.errorCorrection.decode(e,r,t)}static verifyCodewordCount(e,t){if(e.length<4)throw z.getFormatInstance();let r=e[0];if(r>e.length)throw z.getFormatInstance();if(0===r){if(t<e.length)e[0]=e.length-t;else throw z.getFormatInstance()}}static getBitCountForCodeword(e){let t=new Int32Array(8),r=0,n=t.length-1;for(;!((1&e)!==r&&(r=1&e,--n<0));){;t[n]++,e>>=1}return t}static getCodewordBucketNumber(e){return e instanceof Int32Array?this.getCodewordBucketNumber_Int32Array(e):this.getCodewordBucketNumber_number(e)}static getCodewordBucketNumber_number(e){return t7.getCodewordBucketNumber(t7.getBitCountForCodeword(e))}static getCodewordBucketNumber_Int32Array(e){return(e[0]-e[2]+e[4]-e[6]+9)%9}static toString(e){let t=new tY;for(let r=0;r<e.length;r++){t.format("Row %2d: ",r);for(let n=0;n<e[r].length;n++){let i=e[r][n];0===i.getValue().length?t.format(" ",null):t.format("%4d(%2d)",i.getValue()[0],i.getConfidence(i.getValue()[0]))}t.format("%n")}return t.toString()}}t7.CODEWORD_SKEW_SIZE=2,t7.MAX_ERRORS=3,t7.MAX_EC_CODEWORDS=512,t7.errorCorrection=new tj;class t9{decode(e,t=null){let r=t9.decode(e,t,!1);if(null==r||0===r.length||null==r[0])throw Z.getNotFoundInstance();return r[0]}decodeMultiple(e,t=null){try{return t9.decode(e,t,!0)}catch(e){if(e instanceof z||e instanceof v)throw Z.getNotFoundInstance();throw e}}static decode(e,t,r){let n=[],i=tU.detectMultiple(e,t,r);for(let e of i.getPoints()){let t=t7.decode(i.getBits(),e[4],e[5],e[6],e[7],t9.getMinCodewordWidth(e),t9.getMaxCodewordWidth(e)),r=new en(t.getText(),t.getRawBytes(),void 0,e,ei.PDF_417);r.putMetadata(eo.ERROR_CORRECTION_LEVEL,t.getECLevel());let o=t.getOther();null!=o&&r.putMetadata(eo.PDF417_EXTRA_METADATA,o),n.push(r)}return n.map(e=>e)}static getMaxWidth(e,t){return null==e||null==t?0:Math.trunc(Math.abs(e.getX()-t.getX()))}static getMinWidth(e,t){return null==e||null==t?k.MAX_VALUE:Math.trunc(Math.abs(e.getX()-t.getX()))}static getMaxCodewordWidth(e){return Math.floor(Math.max(Math.max(t9.getMaxWidth(e[0],e[4]),t9.getMaxWidth(e[6],e[2])*tF.MODULES_IN_CODEWORD/tF.MODULES_IN_STOP_PATTERN),Math.max(t9.getMaxWidth(e[1],e[5]),t9.getMaxWidth(e[7],e[3])*tF.MODULES_IN_CODEWORD/tF.MODULES_IN_STOP_PATTERN)))}static getMinCodewordWidth(e){return Math.floor(Math.min(Math.min(t9.getMinWidth(e[0],e[4]),t9.getMinWidth(e[6],e[2])*tF.MODULES_IN_CODEWORD/tF.MODULES_IN_STOP_PATTERN),Math.min(t9.getMinWidth(e[1],e[5]),t9.getMinWidth(e[7],e[3])*tF.MODULES_IN_CODEWORD/tF.MODULES_IN_STOP_PATTERN)))}reset(){}}class re extends b{}re.kind="ReaderException";class rt{constructor(e,t){this.verbose=!0===e,t&&this.setHints(t)}decode(e,t){return t&&this.setHints(t),this.decodeInternal(e)}decodeWithState(e){return(null===this.readers||void 0===this.readers)&&this.setHints(null),this.decodeInternal(e)}setHints(e){var t,r,n;this.hints=e;let i=null!=(t=e)&&!0===e.get(H.TRY_HARDER);let o=null==(r=e)?null:e.get(H.POSSIBLE_FORMATS),a=[];if(null!=(n=o)){let t=o.some(e=>e===ei.UPC_A||e===ei.UPC_E||e===ei.EAN_13||e===ei.EAN_8||e===ei.CODABAR||e===ei.CODE_39||e===ei.CODE_93||e===ei.CODE_128||e===ei.ITF||e===ei.RSS_14||e===ei.RSS_EXPANDED);t&&!i&&a.push(new ts(e,this.verbose)),o.includes(ei.QR_CODE)&&a.push(new tx),o.includes(ei.DATA_MATRIX)&&a.push(new tw),o.includes(ei.AZTEC)&&a.push(new eM),o.includes(ei.PDF_417)&&a.push(new t9),t&&i&&a.push(new ts(e,this.verbose))}0===a.length&&(!i&&a.push(new ts(e,this.verbose)),a.push(new tx),a.push(new tw),a.push(new eM),a.push(new t9),i&&a.push(new ts(e,this.verbose))),this.readers=a}reset(){if(null!==this.readers)for(let e of this.readers)e.reset()}decodeInternal(e){if(null===this.readers)throw new re("No readers where selected, nothing can be read.");for(let t of this.readers)try{return t.decode(e,this.hints)}catch(e){if(e instanceof re)continue}throw new Z("No MultiFormat Readers were able to detect the code.")}}(g=T||(T={}))[g.ERROR_CORRECTION=0]="ERROR_CORRECTION",g[g.CHARACTER_SET=1]="CHARACTER_SET",g[g.DATA_MATRIX_SHAPE=2]="DATA_MATRIX_SHAPE",g[g.MIN_SIZE=3]="MIN_SIZE",g[g.MAX_SIZE=4]="MAX_SIZE",g[g.MARGIN=5]="MARGIN",g[g.PDF417_COMPACT=6]="PDF417_COMPACT",g[g.PDF417_COMPACTION=7]="PDF417_COMPACTION",g[g.PDF417_DIMENSIONS=8]="PDF417_DIMENSIONS",g[g.AZTEC_LAYERS=9]="AZTEC_LAYERS",g[g.QR_VERSION=10]="QR_VERSION";var rr=T;class rn{constructor(e){this.field=e,this.cachedGenerators=[],this.cachedGenerators.push(new el(e,Int32Array.from([1])))}buildGenerator(e){let t=this.cachedGenerators;if(e>=t.length){let r=t[t.length-1],n=this.field;for(let i=t.length;i<=e;i++){let e=r.multiply(new el(n,Int32Array.from([1,n.exp(i-1+n.getGeneratorBase())])));t.push(e),r=e}}return t[e]}encode(e,t){if(0===t)throw new R("No error correction bytes");let r=e.length-t;if(r<=0)throw new R("No data bytes provided");let n=this.buildGenerator(t),i=new Int32Array(r);P.arraycopy(e,0,i,0,r);let o=new el(this.field,i),a=(o=o.multiplyByMonomial(t,1)).divide(n)[1].getCoefficients(),s=t-a.length;for(let t=0;t<s;t++)e[r+t]=0;P.arraycopy(a,0,e,r+s,a.length)}}class ri{constructor(){}static applyMaskPenaltyRule1(e){return ri.applyMaskPenaltyRule1Internal(e,!0)+ri.applyMaskPenaltyRule1Internal(e,!1)}static applyMaskPenaltyRule2(e){let t=0,r=e.getArray(),n=e.getWidth(),i=e.getHeight();for(let e=0;e<i-1;e++){let i=r[e];for(let o=0;o<n-1;o++){let n=i[o];n===i[o+1]&&n===r[e+1][o]&&n===r[e+1][o+1]&&t++}}return ri.N2*t}static applyMaskPenaltyRule3(e){let t=0,r=e.getArray(),n=e.getWidth(),i=e.getHeight();for(let e=0;e<i;e++)for(let o=0;o<n;o++){let a=r[e];o+6<n&&1===a[o]&&0===a[o+1]&&1===a[o+2]&&1===a[o+3]&&1===a[o+4]&&0===a[o+5]&&1===a[o+6]&&(ri.isWhiteHorizontal(a,o-4,o)||ri.isWhiteHorizontal(a,o+7,o+11))&&t++,e+6<i&&1===r[e][o]&&0===r[e+1][o]&&1===r[e+2][o]&&1===r[e+3][o]&&1===r[e+4][o]&&0===r[e+5][o]&&1===r[e+6][o]&&(ri.isWhiteVertical(r,o,e-4,e)||ri.isWhiteVertical(r,o,e+7,e+11))&&t++}return t*ri.N3}static isWhiteHorizontal(e,t,r){t=Math.max(t,0),r=Math.min(r,e.length);for(let n=t;n<r;n++)if(1===e[n])return!1;return!0}static isWhiteVertical(e,t,r,n){r=Math.max(r,0),n=Math.min(n,e.length);for(let i=r;i<n;i++)if(1===e[i][t])return!1;return!0}static applyMaskPenaltyRule4(e){let t=0,r=e.getArray(),n=e.getWidth(),i=e.getHeight();for(let e=0;e<i;e++){let i=r[e];for(let e=0;e<n;e++)1===i[e]&&t++}let o=e.getHeight()*e.getWidth();return Math.floor(10*Math.abs(2*t-o)/o)*ri.N4}static getDataMaskBit(e,t,r){let n,i;switch(e){case 0:n=r+t&1;break;case 1:n=1&r;break;case 2:n=t%3;break;case 3:n=(r+t)%3;break;case 4:n=Math.floor(r/2)+Math.floor(t/3)&1;break;case 5:n=(1&(i=r*t))+i%3;break;case 6:n=(1&(i=r*t))+i%3&1;break;case 7:n=(i=r*t)%3+(r+t&1)&1;break;default:throw new R("Invalid mask pattern: "+e)}return 0===n}static applyMaskPenaltyRule1Internal(e,t){let r=0,n=t?e.getHeight():e.getWidth(),i=t?e.getWidth():e.getHeight(),o=e.getArray();for(let e=0;e<n;e++){let n=0,a=-1;for(let s=0;s<i;s++){let i=t?o[e][s]:o[s][e];i===a?n++:(n>=5&&(r+=ri.N1+(n-5)),n=1,a=i)}n>=5&&(r+=ri.N1+(n-5))}return r}}ri.N1=3,ri.N2=3,ri.N3=40,ri.N4=10;class ro{constructor(e,t){this.width=e,this.height=t;let r=Array(t);for(let n=0;n!==t;n++)r[n]=new Uint8Array(e);this.bytes=r}getHeight(){return this.height}getWidth(){return this.width}get(e,t){return this.bytes[t][e]}getArray(){return this.bytes}setNumber(e,t,r){this.bytes[t][e]=r}setBoolean(e,t,r){this.bytes[t][e]=r?1:0}clear(e){for(let t of this.bytes)F.fill(t,e)}equals(e){if(!(e instanceof ro))return!1;if(this.width!==e.width||this.height!==e.height)return!1;for(let t=0,r=this.height;t<r;++t){let r=this.bytes[t],n=e.bytes[t];for(let e=0,t=this.width;e<t;++e)if(r[e]!==n[e])return!1}return!0}toString(){let e=new Y;for(let t=0,r=this.height;t<r;++t){let r=this.bytes[t];for(let t=0,n=this.width;t<n;++t)switch(r[t]){case 0:e.append(" 0");break;case 1:e.append(" 1");break;default:e.append(" ")}e.append("\n")}return e.toString()}}class ra{constructor(){this.maskPattern=-1}getMode(){return this.mode}getECLevel(){return this.ecLevel}getVersion(){return this.version}getMaskPattern(){return this.maskPattern}getMatrix(){return this.matrix}toString(){let e=new Y;return e.append("<<\n"),e.append(" mode: "),e.append(this.mode?this.mode.toString():"null"),e.append("\n ecLevel: "),e.append(this.ecLevel?this.ecLevel.toString():"null"),e.append("\n version: "),e.append(this.version?this.version.toString():"null"),e.append("\n maskPattern: "),e.append(this.maskPattern.toString()),this.matrix?(e.append("\n matrix:\n"),e.append(this.matrix.toString())):e.append("\n matrix: null\n"),e.append(">>\n"),e.toString()}setMode(e){this.mode=e}setECLevel(e){this.ecLevel=e}setVersion(e){this.version=e}setMaskPattern(e){this.maskPattern=e}setMatrix(e){this.matrix=e}static isValidMaskPattern(e){return e>=0&&e<ra.NUM_MASK_PATTERNS}}ra.NUM_MASK_PATTERNS=8;class rs extends b{}rs.kind="WriterException";class rl{constructor(){}static clearMatrix(e){e.clear(255)}static buildMatrix(e,t,r,n,i){rl.clearMatrix(i),rl.embedBasicPatterns(r,i),rl.embedTypeInfo(t,n,i),rl.maybeEmbedVersionInfo(r,i),rl.embedDataBits(e,n,i)}static embedBasicPatterns(e,t){rl.embedPositionDetectionPatternsAndSeparators(t),rl.embedDarkDotAtLeftBottomCorner(t),rl.maybeEmbedPositionAdjustmentPatterns(e,t),rl.embedTimingPatterns(t)}static embedTypeInfo(e,t,r){let n=new U;rl.makeTypeInfoBits(e,t,n);for(let e=0,t=n.getSize();e<t;++e){let t=n.get(n.getSize()-1-e),i=rl.TYPE_INFO_COORDINATES[e],o=i[0],a=i[1];if(r.setBoolean(o,a,t),e<8){let n=r.getWidth()-e-1;r.setBoolean(n,8,t)}else{let n=r.getHeight()-7+(e-8);r.setBoolean(8,n,t)}}}static maybeEmbedVersionInfo(e,t){if(7>e.getVersionNumber())return;let r=new U;rl.makeVersionInfoBits(e,r);let n=17;for(let e=0;e<6;++e)for(let i=0;i<3;++i){let o=r.get(n);n--,t.setBoolean(e,t.getHeight()-11+i,o),t.setBoolean(t.getHeight()-11+i,e,o)}}static embedDataBits(e,t,r){let n=0,i=-1,o=r.getWidth()-1,a=r.getHeight()-1;for(;o>0;){for(6===o&&(o-=1);a>=0&&a<r.getHeight();){for(let i=0;i<2;++i){let s;let l=o-i;if(!!rl.isEmpty(r.get(l,a)))n<e.getSize()?(s=e.get(n),++n):s=!1,255!==t&&ri.getDataMaskBit(t,l,a)&&(s=!s),r.setBoolean(l,a,s)}a+=i}a+=i=-i,o-=2}if(n!==e.getSize())throw new rs("Not all bits consumed: "+n+"/"+e.getSize())}static findMSBSet(e){return 32-k.numberOfLeadingZeros(e)}static calculateBCHCode(e,t){if(0===t)throw new R("0 polynomial");let r=rl.findMSBSet(t);for(e<<=r-1;rl.findMSBSet(e)>=r;)e^=t<<rl.findMSBSet(e)-r;return e}static makeTypeInfoBits(e,t,r){if(!ra.isValidMaskPattern(t))throw new rs("Invalid mask pattern");let n=e.getBits()<<3|t;r.appendBits(n,5);let i=rl.calculateBCHCode(n,rl.TYPE_INFO_POLY);r.appendBits(i,10);let o=new U;if(o.appendBits(rl.TYPE_INFO_MASK_PATTERN,15),r.xor(o),15!==r.getSize())throw new rs("should not happen but we got: "+r.getSize())}static makeVersionInfoBits(e,t){t.appendBits(e.getVersionNumber(),6);let r=rl.calculateBCHCode(e.getVersionNumber(),rl.VERSION_INFO_POLY);if(t.appendBits(r,12),18!==t.getSize())throw new rs("should not happen but we got: "+t.getSize())}static isEmpty(e){return 255===e}static embedTimingPatterns(e){for(let t=8;t<e.getWidth()-8;++t){let r=(t+1)%2;rl.isEmpty(e.get(t,6))&&e.setNumber(t,6,r),rl.isEmpty(e.get(6,t))&&e.setNumber(6,t,r)}}static embedDarkDotAtLeftBottomCorner(e){if(0===e.get(8,e.getHeight()-8))throw new rs;e.setNumber(8,e.getHeight()-8,1)}static embedHorizontalSeparationPattern(e,t,r){for(let n=0;n<8;++n){if(!rl.isEmpty(r.get(e+n,t)))throw new rs;r.setNumber(e+n,t,0)}}static embedVerticalSeparationPattern(e,t,r){for(let n=0;n<7;++n){if(!rl.isEmpty(r.get(e,t+n)))throw new rs;r.setNumber(e,t+n,0)}}static embedPositionAdjustmentPattern(e,t,r){for(let n=0;n<5;++n){let i=rl.POSITION_ADJUSTMENT_PATTERN[n];for(let o=0;o<5;++o)r.setNumber(e+o,t+n,i[o])}}static embedPositionDetectionPattern(e,t,r){for(let n=0;n<7;++n){let i=rl.POSITION_DETECTION_PATTERN[n];for(let o=0;o<7;++o)r.setNumber(e+o,t+n,i[o])}}static embedPositionDetectionPatternsAndSeparators(e){let t=rl.POSITION_DETECTION_PATTERN[0].length;rl.embedPositionDetectionPattern(0,0,e),rl.embedPositionDetectionPattern(e.getWidth()-t,0,e),rl.embedPositionDetectionPattern(0,e.getWidth()-t,e);rl.embedHorizontalSeparationPattern(0,7,e),rl.embedHorizontalSeparationPattern(e.getWidth()-8,7,e),rl.embedHorizontalSeparationPattern(0,e.getWidth()-8,e);rl.embedVerticalSeparationPattern(7,0,e),rl.embedVerticalSeparationPattern(e.getHeight()-7-1,0,e),rl.embedVerticalSeparationPattern(7,e.getHeight()-7,e)}static maybeEmbedPositionAdjustmentPatterns(e,t){if(2>e.getVersionNumber())return;let r=e.getVersionNumber()-1,n=rl.POSITION_ADJUSTMENT_PATTERN_COORDINATE_TABLE[r];for(let e=0,r=n.length;e!==r;e++){let i=n[e];if(i>=0)for(let e=0;e!==r;e++){let r=n[e];r>=0&&rl.isEmpty(t.get(r,i))&&rl.embedPositionAdjustmentPattern(r-2,i-2,t)}}}}rl.POSITION_DETECTION_PATTERN=Array.from([Int32Array.from([1,1,1,1,1,1,1]),Int32Array.from([1,0,0,0,0,0,1]),Int32Array.from([1,0,1,1,1,0,1]),Int32Array.from([1,0,1,1,1,0,1]),Int32Array.from([1,0,1,1,1,0,1]),Int32Array.from([1,0,0,0,0,0,1]),Int32Array.from([1,1,1,1,1,1,1])]),rl.POSITION_ADJUSTMENT_PATTERN=Array.from([Int32Array.from([1,1,1,1,1]),Int32Array.from([1,0,0,0,1]),Int32Array.from([1,0,1,0,1]),Int32Array.from([1,0,0,0,1]),Int32Array.from([1,1,1,1,1])]),rl.POSITION_ADJUSTMENT_PATTERN_COORDINATE_TABLE=Array.from([Int32Array.from([-1,-1,-1,-1,-1,-1,-1]),Int32Array.from([6,18,-1,-1,-1,-1,-1]),Int32Array.from([6,22,-1,-1,-1,-1,-1]),Int32Array.from([6,26,-1,-1,-1,-1,-1]),Int32Array.from([6,30,-1,-1,-1,-1,-1]),Int32Array.from([6,34,-1,-1,-1,-1,-1]),Int32Array.from([6,22,38,-1,-1,-1,-1]),Int32Array.from([6,24,42,-1,-1,-1,-1]),Int32Array.from([6,26,46,-1,-1,-1,-1]),Int32Array.from([6,28,50,-1,-1,-1,-1]),Int32Array.from([6,30,54,-1,-1,-1,-1]),Int32Array.from([6,32,58,-1,-1,-1,-1]),Int32Array.from([6,34,62,-1,-1,-1,-1]),Int32Array.from([6,26,46,66,-1,-1,-1]),Int32Array.from([6,26,48,70,-1,-1,-1]),Int32Array.from([6,26,50,74,-1,-1,-1]),Int32Array.from([6,30,54,78,-1,-1,-1]),Int32Array.from([6,30,56,82,-1,-1,-1]),Int32Array.from([6,30,58,86,-1,-1,-1]),Int32Array.from([6,34,62,90,-1,-1,-1]),Int32Array.from([6,28,50,72,94,-1,-1]),Int32Array.from([6,26,50,74,98,-1,-1]),Int32Array.from([6,30,54,78,102,-1,-1]),Int32Array.from([6,28,54,80,106,-1,-1]),Int32Array.from([6,32,58,84,110,-1,-1]),Int32Array.from([6,30,58,86,114,-1,-1]),Int32Array.from([6,34,62,90,118,-1,-1]),Int32Array.from([6,26,50,74,98,122,-1]),Int32Array.from([6,30,54,78,102,126,-1]),Int32Array.from([6,26,52,78,104,130,-1]),Int32Array.from([6,30,56,82,108,134,-1]),Int32Array.from([6,34,60,86,112,138,-1]),Int32Array.from([6,30,58,86,114,142,-1]),Int32Array.from([6,34,62,90,118,146,-1]),Int32Array.from([6,30,54,78,102,126,150]),Int32Array.from([6,24,50,76,102,128,154]),Int32Array.from([6,28,54,80,106,132,158]),Int32Array.from([6,32,58,84,110,136,162]),Int32Array.from([6,26,54,82,110,138,166]),Int32Array.from([6,30,58,86,114,142,170])]),rl.TYPE_INFO_COORDINATES=Array.from([Int32Array.from([8,0]),Int32Array.from([8,1]),Int32Array.from([8,2]),Int32Array.from([8,3]),Int32Array.from([8,4]),Int32Array.from([8,5]),Int32Array.from([8,7]),Int32Array.from([8,8]),Int32Array.from([7,8]),Int32Array.from([5,8]),Int32Array.from([4,8]),Int32Array.from([3,8]),Int32Array.from([2,8]),Int32Array.from([1,8]),Int32Array.from([0,8])]),rl.VERSION_INFO_POLY=7973,rl.TYPE_INFO_POLY=1335,rl.TYPE_INFO_MASK_PATTERN=21522;class rc{constructor(e,t){this.dataBytes=e,this.errorCorrectionBytes=t}getDataBytes(){return this.dataBytes}getErrorCorrectionBytes(){return this.errorCorrectionBytes}}class ru{constructor(){}static calculateMaskPenalty(e){return ri.applyMaskPenaltyRule1(e)+ri.applyMaskPenaltyRule2(e)+ri.applyMaskPenaltyRule3(e)+ri.applyMaskPenaltyRule4(e)}static encode(e,t,r=null){let n,i=ru.DEFAULT_BYTE_MODE_ENCODING,o=null!==r&&void 0!==r.get(rr.CHARACTER_SET);o&&(i=r.get(rr.CHARACTER_SET).toString());let a=this.chooseMode(e,i),s=new U;if(a===tN.BYTE&&(o||ru.DEFAULT_BYTE_MODE_ENCODING!==i)){let e=V.getCharacterSetECIByName(i);void 0!==e&&this.appendECI(e,s)}this.appendModeInfo(a,s);let l=new U;if(this.appendBytes(e,a,l,i),null!==r&&void 0!==r.get(rr.QR_VERSION)){let e=Number.parseInt(r.get(rr.QR_VERSION).toString(),10);n=tS.getVersionForNumber(e);let i=this.calculateBitsNeeded(a,s,l,n);if(!this.willFit(i,n,t))throw new rs("Data too big for requested version")}else n=this.recommendVersion(t,a,s,l);let c=new U;c.appendBitArray(s);let u=a===tN.BYTE?l.getSizeInBytes():e.length;this.appendLengthInfo(u,n,a,c),c.appendBitArray(l);let h=n.getECBlocksForLevel(t),d=n.getTotalCodewords()-h.getTotalECCodewords();this.terminateBits(d,c);let f=this.interleaveWithECBytes(c,n.getTotalCodewords(),d,h.getNumBlocks()),g=new ra;g.setECLevel(t),g.setMode(a),g.setVersion(n);let p=n.getDimensionForVersion(),m=new ro(p,p),w=this.chooseMaskPattern(f,t,n,m);return g.setMaskPattern(w),rl.buildMatrix(f,t,n,w,m),g.setMatrix(m),g}static recommendVersion(e,t,r,n){let i=this.calculateBitsNeeded(t,r,n,tS.getVersionForNumber(1)),o=this.chooseVersion(i,e),a=this.calculateBitsNeeded(t,r,n,o);return this.chooseVersion(a,e)}static calculateBitsNeeded(e,t,r,n){return t.getSize()+e.getCharacterCountBits(n)+r.getSize()}static getAlphanumericCode(e){return e<ru.ALPHANUMERIC_TABLE.length?ru.ALPHANUMERIC_TABLE[e]:-1}static chooseMode(e,t=null){if(V.SJIS.getName()===t&&this.isOnlyDoubleByteKanji(e))return tN.KANJI;let r=!1,n=!1;for(let t=0,i=e.length;t<i;++t){let i=e.charAt(t);if(ru.isDigit(i))r=!0;else{if(-1===this.getAlphanumericCode(i.charCodeAt(0)))return tN.BYTE;n=!0}}return n?tN.ALPHANUMERIC:r?tN.NUMERIC:tN.BYTE}static isOnlyDoubleByteKanji(e){let t;try{t=G.encode(e,V.SJIS)}catch(e){return!1}let r=t.length;if(r%2!=0)return!1;for(let e=0;e<r;e+=2){let r=255&t[e];if((r<129||r>159)&&(r<224||r>235))return!1}return!0}static chooseMaskPattern(e,t,r,n){let i=Number.MAX_SAFE_INTEGER,o=-1;for(let a=0;a<ra.NUM_MASK_PATTERNS;a++){rl.buildMatrix(e,t,r,a,n);let s=this.calculateMaskPenalty(n);s<i&&(i=s,o=a)}return o}static chooseVersion(e,t){for(let r=1;r<=40;r++){let n=tS.getVersionForNumber(r);if(ru.willFit(e,n,t))return n}throw new rs("Data too big")}static willFit(e,t,r){let n=t.getTotalCodewords(),i=t.getECBlocksForLevel(r).getTotalECCodewords();return n-i>=(e+7)/8}static terminateBits(e,t){let r=8*e;if(t.getSize()>r)throw new rs("data bits cannot fit in the QR Code"+t.getSize()+" > "+r);for(let e=0;e<4&&t.getSize()<r;++e)t.appendBit(!1);let n=7&t.getSize();if(n>0)for(let e=n;e<8;e++)t.appendBit(!1);let i=e-t.getSizeInBytes();for(let e=0;e<i;++e)t.appendBits((1&e)==0?236:17,8);if(t.getSize()!==r)throw new rs("Bits size does not equal capacity")}static getNumDataBytesAndNumECBytesForBlockID(e,t,r,n,i,o){if(n>=r)throw new rs("Block ID too large");let a=e%r,s=r-a,l=Math.floor(e/r),c=Math.floor(t/r),u=c+1,h=l-c,d=l+1-u;if(h!==d)throw new rs("EC bytes mismatch");if(r!==s+a)throw new rs("RS blocks mismatch");if(e!==(c+h)*s+(u+d)*a)throw new rs("Total bytes mismatch");n<s?(i[0]=c,o[0]=h):(i[0]=u,o[0]=d)}static interleaveWithECBytes(e,t,r,n){if(e.getSizeInBytes()!==r)throw new rs("Number of bits and data bytes does not match");let i=0,o=0,a=0,s=[];for(let l=0;l<n;++l){let c=new Int32Array(1),u=new Int32Array(1);ru.getNumDataBytesAndNumECBytesForBlockID(t,r,n,l,c,u);let h=c[0],d=new Uint8Array(h);e.toBytes(8*i,d,0,h);let f=ru.generateECBytes(d,u[0]);s.push(new rc(d,f)),o=Math.max(o,h),a=Math.max(a,f.length),i+=c[0]}if(r!==i)throw new rs("Data bytes does not match offset");let l=new U;for(let e=0;e<o;++e)for(let t of s){let r=t.getDataBytes();e<r.length&&l.appendBits(r[e],8)}for(let e=0;e<a;++e)for(let t of s){let r=t.getErrorCorrectionBytes();e<r.length&&l.appendBits(r[e],8)}if(t!==l.getSizeInBytes())throw new rs("Interleaving error: "+t+" and "+l.getSizeInBytes()+" differ.");return l}static generateECBytes(e,t){let r=e.length,n=new Int32Array(r+t);for(let t=0;t<r;t++)n[t]=255&e[t];new rn(eu.QR_CODE_FIELD_256).encode(n,t);let i=new Uint8Array(t);for(let e=0;e<t;e++)i[e]=n[r+e];return i}static appendModeInfo(e,t){t.appendBits(e.getBits(),4)}static appendLengthInfo(e,t,r,n){let i=r.getCharacterCountBits(t);if(e>=1<<i)throw new rs(e+" is bigger than "+((1<<i)-1));n.appendBits(e,i)}static appendBytes(e,t,r,n){switch(t){case tN.NUMERIC:ru.appendNumericBytes(e,r);break;case tN.ALPHANUMERIC:ru.appendAlphanumericBytes(e,r);break;case tN.BYTE:ru.append8BitBytes(e,r,n);break;case tN.KANJI:ru.appendKanjiBytes(e,r);break;default:throw new rs("Invalid mode: "+t)}}static getDigit(e){return e.charCodeAt(0)-48}static isDigit(e){let t=ru.getDigit(e);return t>=0&&t<=9}static appendNumericBytes(e,t){let r=e.length,n=0;for(;n<r;){let i=ru.getDigit(e.charAt(n));if(n+2<r){let r=ru.getDigit(e.charAt(n+1)),o=ru.getDigit(e.charAt(n+2));t.appendBits(100*i+10*r+o,10),n+=3}else if(n+1<r){let r=ru.getDigit(e.charAt(n+1));t.appendBits(10*i+r,7),n+=2}else t.appendBits(i,4),n++}}static appendAlphanumericBytes(e,t){let r=e.length,n=0;for(;n<r;){let i=ru.getAlphanumericCode(e.charCodeAt(n));if(-1===i)throw new rs;if(n+1<r){let r=ru.getAlphanumericCode(e.charCodeAt(n+1));if(-1===r)throw new rs;t.appendBits(45*i+r,11),n+=2}else t.appendBits(i,6),n++}}static append8BitBytes(e,t,r){let n;try{n=G.encode(e,r)}catch(e){throw new rs(e)}for(let e=0,r=n.length;e!==r;e++){let r=n[e];t.appendBits(r,8)}}static appendKanjiBytes(e,t){let r;try{r=G.encode(e,V.SJIS)}catch(e){throw new rs(e)}let n=r.length;for(let e=0;e<n;e+=2){let n=255&r[e],i=n<<8&0xffffffff|255&r[e+1],o=-1;if(i>=33088&&i<=40956?o=i-33088:i>=57408&&i<=60351&&(o=i-49472),-1===o)throw new rs("Invalid byte sequence");let a=(o>>8)*192+(255&o);t.appendBits(a,13)}}static appendECI(e,t){t.appendBits(tN.ECI.getBits(),4),t.appendBits(e.getValue(),8)}}ru.ALPHANUMERIC_TABLE=Int32Array.from([-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,36,-1,-1,-1,37,38,-1,-1,-1,-1,39,40,-1,41,42,43,0,1,2,3,4,5,6,7,8,9,44,-1,-1,-1,-1,-1,-1,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,-1,-1,-1,-1,-1]),ru.DEFAULT_BYTE_MODE_ENCODING=V.UTF8.getName();class rh{write(e,t,r,n=null){if(0===e.length)throw new R("Found empty contents");if(t<0||r<0)throw new R("Requested dimensions are too small: "+t+"x"+r);let i=tA.L,o=rh.QUIET_ZONE_SIZE;null!==n&&(void 0!==n.get(rr.ERROR_CORRECTION)&&(i=tA.fromString(n.get(rr.ERROR_CORRECTION).toString())),void 0!==n.get(rr.MARGIN)&&(o=Number.parseInt(n.get(rr.MARGIN).toString(),10)));let a=ru.encode(e,i,n);return this.renderResult(a,t,r,o)}writeToDom(e,t,r,n,i=null){"string"==typeof e&&(e=document.querySelector(e));let o=this.write(t,r,n,i);e&&e.appendChild(o)}renderResult(e,t,r,n){let i=e.getMatrix();if(null===i)throw new ed;let o=i.getWidth(),a=i.getHeight(),s=o+2*n,l=a+2*n,c=Math.max(t,s),u=Math.max(r,l),h=Math.min(Math.floor(c/s),Math.floor(u/l)),d=Math.floor((c-o*h)/2),f=Math.floor((u-a*h)/2),g=this.createSVGElement(c,u);for(let e=0,t=f;e<a;e++,t+=h)for(let r=0,n=d;r<o;r++,n+=h)if(1===i.get(r,e)){let e=this.createSvgRectElement(n,t,h,h);g.appendChild(e)}return g}createSVGElement(e,t){let r=document.createElementNS(rh.SVG_NS,"svg");return r.setAttributeNS(null,"height",e.toString()),r.setAttributeNS(null,"width",t.toString()),r}createSvgRectElement(e,t,r,n){let i=document.createElementNS(rh.SVG_NS,"rect");return i.setAttributeNS(null,"x",e.toString()),i.setAttributeNS(null,"y",t.toString()),i.setAttributeNS(null,"height",r.toString()),i.setAttributeNS(null,"width",n.toString()),i.setAttributeNS(null,"fill","#000000"),i}}rh.QUIET_ZONE_SIZE=4,rh.SVG_NS="http://www.w3.org/2000/svg";class rd{encode(e,t,r,n,i){if(0===e.length)throw new R("Found empty contents");if(t!==ei.QR_CODE)throw new R("Can only encode QR_CODE, but got "+t);if(r<0||n<0)throw new R(`Requested dimensions are too small: ${r}x${n}`);let o=tA.L,a=rd.QUIET_ZONE_SIZE;null!==i&&(void 0!==i.get(rr.ERROR_CORRECTION)&&(o=tA.fromString(i.get(rr.ERROR_CORRECTION).toString())),void 0!==i.get(rr.MARGIN)&&(a=Number.parseInt(i.get(rr.MARGIN).toString(),10)));let s=ru.encode(e,o,i);return rd.renderResult(s,r,n,a)}static renderResult(e,t,r,n){let i=e.getMatrix();if(null===i)throw new ed;let o=i.getWidth(),a=i.getHeight(),s=o+2*n,l=a+2*n,c=Math.max(t,s),u=Math.max(r,l),h=Math.min(Math.floor(c/s),Math.floor(u/l)),d=Math.floor((c-o*h)/2),f=Math.floor((u-a*h)/2),g=new X(c,u);for(let e=0,t=f;e<a;e++,t+=h)for(let r=0,n=d;r<o;r++,n+=h)1===i.get(r,e)&&g.setRegion(n,t,h,h);return g}}rd.QUIET_ZONE_SIZE=4;class rf extends K{constructor(e,t,r,n,i,o,a,s){if(super(o,a),this.yuvData=e,this.dataWidth=t,this.dataHeight=r,this.left=n,this.top=i,n+o>t||i+a>r)throw new R("Crop rectangle does not fit within image data.");s&&this.reverseHorizontal(o,a)}getRow(e,t){if(e<0||e>=this.getHeight())throw new R("Requested row is outside the image: "+e);let r=this.getWidth();(null==t||t.length<r)&&(t=new Uint8ClampedArray(r));let n=(e+this.top)*this.dataWidth+this.left;return P.arraycopy(this.yuvData,n,t,0,r),t}getMatrix(){let e=this.getWidth(),t=this.getHeight();if(e===this.dataWidth&&t===this.dataHeight)return this.yuvData;let r=e*t,n=new Uint8ClampedArray(r),i=this.top*this.dataWidth+this.left;if(e===this.dataWidth)return P.arraycopy(this.yuvData,i,n,0,r),n;for(let r=0;r<t;r++){let t=r*e;P.arraycopy(this.yuvData,i,n,t,e),i+=this.dataWidth}return n}isCropSupported(){return!0}crop(e,t,r,n){return new rf(this.yuvData,this.dataWidth,this.dataHeight,this.left+e,this.top+t,r,n,!1)}renderThumbnail(){let e=this.getWidth()/rf.THUMBNAIL_SCALE_FACTOR,t=this.getHeight()/rf.THUMBNAIL_SCALE_FACTOR,r=new Int32Array(e*t),n=this.yuvData,i=this.top*this.dataWidth+this.left;for(let o=0;o<t;o++){let t=o*e;for(let o=0;o<e;o++){let e=255&n[i+o*rf.THUMBNAIL_SCALE_FACTOR];r[t+o]=0xff000000|65793*e}i+=this.dataWidth*rf.THUMBNAIL_SCALE_FACTOR}return r}getThumbnailWidth(){return this.getWidth()/rf.THUMBNAIL_SCALE_FACTOR}getThumbnailHeight(){return this.getHeight()/rf.THUMBNAIL_SCALE_FACTOR}reverseHorizontal(e,t){let r=this.yuvData;for(let n=0,i=this.top*this.dataWidth+this.left;n<t;n++,i+=this.dataWidth){let t=i+e/2;for(let n=i,o=i+e-1;n<t;n++,o--){let e=r[n];r[n]=r[o],r[o]=e}}}invert(){return new J(this)}}rf.THUMBNAIL_SCALE_FACTOR=2;class rg extends K{constructor(e,t,r,n,i,o,a){if(super(t,r),this.dataWidth=n,this.dataHeight=i,this.left=o,this.top=a,4===e.BYTES_PER_ELEMENT){let n=t*r,i=new Uint8ClampedArray(n);for(let t=0;t<n;t++){let r=e[t],n=r>>16&255,o=r>>7&510,a=255&r;i[t]=(n+o+a)/4&255}this.luminances=i}else this.luminances=e;if(void 0===n&&(this.dataWidth=t),void 0===i&&(this.dataHeight=r),void 0===o&&(this.left=0),void 0===a&&(this.top=0),this.left+t>this.dataWidth||this.top+r>this.dataHeight)throw new R("Crop rectangle does not fit within image data.")}getRow(e,t){if(e<0||e>=this.getHeight())throw new R("Requested row is outside the image: "+e);let r=this.getWidth();(null==t||t.length<r)&&(t=new Uint8ClampedArray(r));let n=(e+this.top)*this.dataWidth+this.left;return P.arraycopy(this.luminances,n,t,0,r),t}getMatrix(){let e=this.getWidth(),t=this.getHeight();if(e===this.dataWidth&&t===this.dataHeight)return this.luminances;let r=e*t,n=new Uint8ClampedArray(r),i=this.top*this.dataWidth+this.left;if(e===this.dataWidth)return P.arraycopy(this.luminances,i,n,0,r),n;for(let r=0;r<t;r++){let t=r*e;P.arraycopy(this.luminances,i,n,t,e),i+=this.dataWidth}return n}isCropSupported(){return!0}crop(e,t,r,n){return new rg(this.luminances,r,n,this.dataWidth,this.dataHeight,this.left+e,this.top+t)}invert(){return new J(this)}}class rp extends V{static forName(e){return this.getCharacterSetECIByName(e)}}class rm{}rm.ISO_8859_1=V.ISO8859_1;class rw{isCompact(){return this.compact}setCompact(e){this.compact=e}getSize(){return this.size}setSize(e){this.size=e}getLayers(){return this.layers}setLayers(e){this.layers=e}getCodeWords(){return this.codeWords}setCodeWords(e){this.codeWords=e}getMatrix(){return this.matrix}setMatrix(e){this.matrix=e}}class rA{static singletonList(e){return[e]}static min(e,t){return e.sort(t)[0]}}class rC{constructor(e){this.previous=e}getPrevious(){return this.previous}}class rE extends rC{constructor(e,t,r){super(e),this.value=t,this.bitCount=r}appendTo(e,t){e.appendBits(this.value,this.bitCount)}add(e,t){return new rE(this,e,t)}addBinaryShift(e,t){return console.warn("addBinaryShift on SimpleToken, this simply returns a copy of this token"),new rE(this,e,t)}toString(){let e=this.value&(1<<this.bitCount)-1;return e|=1<<this.bitCount,"<"+k.toBinaryString(e|1<<this.bitCount).substring(1)+">"}}class rI extends rE{constructor(e,t,r){super(e,0,0),this.binaryShiftStart=t,this.binaryShiftByteCount=r}appendTo(e,t){for(let r=0;r<this.binaryShiftByteCount;r++)(0===r||31===r&&this.binaryShiftByteCount<=62)&&(e.appendBits(31,5),this.binaryShiftByteCount>62?e.appendBits(this.binaryShiftByteCount-31,16):0===r?e.appendBits(Math.min(this.binaryShiftByteCount,31),5):e.appendBits(this.binaryShiftByteCount-31,5)),e.appendBits(t[this.binaryShiftStart+r],8)}addBinaryShift(e,t){return new rI(this,e,t)}toString(){return"<"+this.binaryShiftStart+"::"+(this.binaryShiftStart+this.binaryShiftByteCount-1)+">"}}function rS(e,t,r){return new rE(e,t,r)}let ry=["UPPER","LOWER","DIGIT","MIXED","PUNCT"],r_=new rE(null,0,0),rT=[Int32Array.from([0,327708,327710,327709,656318]),Int32Array.from([590318,0,327710,327709,656318]),Int32Array.from([262158,590300,0,590301,932798]),Int32Array.from([327709,327708,656318,0,327710]),Int32Array.from([327711,656380,656382,656381,0])],rN=function(e){for(let t of e)F.fill(t,-1);return e[0][4]=0,e[1][4]=0,e[1][0]=28,e[3][4]=0,e[2][4]=0,e[2][0]=15,e}(F.createInt32Array(6,6));class rM{constructor(e,t,r,n){this.token=e,this.mode=t,this.binaryShiftByteCount=r,this.bitCount=n}getMode(){return this.mode}getToken(){return this.token}getBinaryShiftByteCount(){return this.binaryShiftByteCount}getBitCount(){return this.bitCount}latchAndAppend(e,t){let r=this.bitCount,n=this.token;if(e!==this.mode){let t=rT[this.mode][e];n=rS(n,65535&t,t>>16),r+=t>>16}let i=2===e?4:5;return new rM(n=rS(n,t,i),e,0,r+i)}shiftAndAppend(e,t){let r=this.token,n=2===this.mode?4:5;return r=rS(r,rN[this.mode][e],n),new rM(r=rS(r,t,5),this.mode,0,this.bitCount+n+5)}addBinaryShiftChar(e){let t=this.token,r=this.mode,n=this.bitCount;if(4===this.mode||2===this.mode){let e=rT[r][0];t=rS(t,65535&e,e>>16),n+=e>>16,r=0}let i=0===this.binaryShiftByteCount||31===this.binaryShiftByteCount?18:62===this.binaryShiftByteCount?9:8,o=new rM(t,r,this.binaryShiftByteCount+1,n+i);return 2078===o.binaryShiftByteCount&&(o=o.endBinaryShift(e+1)),o}endBinaryShift(e){var t,r;if(0===this.binaryShiftByteCount)return this;let n=this.token;return t=n,r=e-this.binaryShiftByteCount,new rM(n=new rI(t,r,this.binaryShiftByteCount),this.mode,0,this.bitCount)}isBetterThanOrEqualTo(e){let t=this.bitCount+(rT[this.mode][e.mode]>>16);return this.binaryShiftByteCount<e.binaryShiftByteCount?t+=rM.calculateBinaryShiftCost(e)-rM.calculateBinaryShiftCost(this):this.binaryShiftByteCount>e.binaryShiftByteCount&&e.binaryShiftByteCount>0&&(t+=10),t<=e.bitCount}toBitArray(e){let t=[];for(let r=this.endBinaryShift(e.length).token;null!==r;r=r.getPrevious())t.unshift(r);let r=new U;for(let n of t)n.appendTo(r,e);return r}toString(){return W.format("%s bits=%d bytes=%d",ry[this.mode],this.bitCount,this.binaryShiftByteCount)}static calculateBinaryShiftCost(e){return e.binaryShiftByteCount>62?21:e.binaryShiftByteCount>31?20:e.binaryShiftByteCount>0?10:0}}rM.INITIAL_STATE=new rM(r_,0,0,0);let rb=function(e){let t=W.getCharCode(" "),r=W.getCharCode("."),n=W.getCharCode(",");e[0][t]=1;let i=W.getCharCode("Z"),o=W.getCharCode("A");for(let t=o;t<=i;t++)e[0][t]=t-o+2;e[1][t]=1;let a=W.getCharCode("z"),s=W.getCharCode("a");for(let t=s;t<=a;t++)e[1][t]=t-s+2;e[2][t]=1;let l=W.getCharCode("9"),c=W.getCharCode("0");for(let t=c;t<=l;t++)e[2][t]=t-c+2;e[2][n]=12,e[2][r]=13;let u=["\0"," ","\x01","\x02","\x03","\x04","\x05","\x06","\x07","\b"," ","\n","\v","\f","\r","\x1b","\x1c","\x1d","\x1e","\x1f","@","\\","^","_","`","|","~","\x7f"];for(let t=0;t<u.length;t++)e[3][W.getCharCode(u[t])]=t;let h=["\0","\r","\0","\0","\0","\0","!","'","#","$","%","&","'","(",")","*","+",",","-",".","/",":",";","<","=",">","?","[","]","{","}"];for(let t=0;t<h.length;t++)W.getCharCode(h[t])>0&&(e[4][W.getCharCode(h[t])]=t);return e}(F.createInt32Array(5,256));class rD{constructor(e){this.text=e}encode(){let e=W.getCharCode(" "),t=W.getCharCode("\n"),r=rA.singletonList(rM.INITIAL_STATE);for(let n=0;n<this.text.length;n++){let i;let o=n+1<this.text.length?this.text[n+1]:0;switch(this.text[n]){case W.getCharCode("\r"):i=o===t?2:0;break;case W.getCharCode("."):i=o===e?3:0;break;case W.getCharCode(","):i=o===e?4:0;break;case W.getCharCode(":"):i=o===e?5:0;break;default:i=0}i>0?(r=rD.updateStateListForPair(r,n,i),n++):r=this.updateStateListForChar(r,n)}return rA.min(r,(e,t)=>e.getBitCount()-t.getBitCount()).toBitArray(this.text)}updateStateListForChar(e,t){let r=[];for(let n of e)this.updateStateForChar(n,t,r);return rD.simplifyStates(r)}updateStateForChar(e,t,r){let n=255&this.text[t],i=rb[e.getMode()][n]>0,o=null;for(let a=0;a<=4;a++){let s=rb[a][n];if(s>0){if(null==o&&(o=e.endBinaryShift(t)),!i||a===e.getMode()||2===a){let e=o.latchAndAppend(a,s);r.push(e)}if(!i&&rN[e.getMode()][a]>=0){let e=o.shiftAndAppend(a,s);r.push(e)}}}if(e.getBinaryShiftByteCount()>0||0===rb[e.getMode()][n]){let n=e.addBinaryShiftChar(t);r.push(n)}}static updateStateListForPair(e,t,r){let n=[];for(let i of e)this.updateStateForPair(i,t,r,n);return this.simplifyStates(n)}static updateStateForPair(e,t,r,n){let i=e.endBinaryShift(t);if(n.push(i.latchAndAppend(4,r)),4!==e.getMode()&&n.push(i.shiftAndAppend(4,r)),3===r||4===r){let e=i.latchAndAppend(2,16-r).latchAndAppend(2,1);n.push(e)}if(e.getBinaryShiftByteCount()>0){let r=e.addBinaryShiftChar(t).addBinaryShiftChar(t+1);n.push(r)}}static simplifyStates(e){let t=[];for(let r of e){let e=!0;for(let n of t){if(n.isBetterThanOrEqualTo(r)){e=!1;break}r.isBetterThanOrEqualTo(n)&&(t=t.filter(e=>e!==n))}e&&t.push(r)}return t}}class rR{constructor(){}static encodeBytes(e){return rR.encode(e,rR.DEFAULT_EC_PERCENT,rR.DEFAULT_AZTEC_LAYERS)}static encode(e,t,r){let n,i,o,a,s,l,c=new rD(e).encode(),u=k.truncDivision(c.getSize()*t,100)+11,h=c.getSize()+u;if(r!==rR.DEFAULT_AZTEC_LAYERS){if(n=r<0,(i=Math.abs(r))>(n?rR.MAX_NB_BITS_COMPACT:rR.MAX_NB_BITS))throw new R(W.format("Illegal value %s for layers",r));o=rR.totalBitsInLayer(i,n);let e=o-o%(a=rR.WORD_SIZE[i]);if((s=rR.stuffBits(c,a)).getSize()+u>e||n&&s.getSize()>64*a)throw new R("Data to large for user specified layer")}else{a=0,s=null;for(let e=0;;e++){if(e>rR.MAX_NB_BITS)throw new R("Data too large for an Aztec code");if(i=(n=e<=3)?e+1:e,h>(o=rR.totalBitsInLayer(i,n)))continue;(null==s||a!==rR.WORD_SIZE[i])&&(a=rR.WORD_SIZE[i],s=rR.stuffBits(c,a));let t=o-o%a;if(!(n&&s.getSize()>64*a)){if(s.getSize()+u<=t)break}}}let d=rR.generateCheckWords(s,o,a),f=s.getSize()/a,g=rR.generateModeMessage(n,i,f),p=(n?11:14)+4*i,m=new Int32Array(p);if(n){l=p;for(let e=0;e<m.length;e++)m[e]=e}else{l=p+1+2*k.truncDivision(k.truncDivision(p,2)-1,15);let e=k.truncDivision(p,2),t=k.truncDivision(l,2);for(let r=0;r<e;r++){let n=r+k.truncDivision(r,15);m[e-r-1]=t-n-1,m[e+r]=t+n+1}}let w=new X(l);for(let e=0,t=0;e<i;e++){let r=(i-e)*4+(n?9:12);for(let n=0;n<r;n++){let i=2*n;for(let o=0;o<2;o++)d.get(t+i+o)&&w.set(m[2*e+o],m[2*e+n]),d.get(t+2*r+i+o)&&w.set(m[2*e+n],m[p-1-2*e-o]),d.get(t+4*r+i+o)&&w.set(m[p-1-2*e-o],m[p-1-2*e-n]),d.get(t+6*r+i+o)&&w.set(m[p-1-2*e-n],m[2*e+o])}t+=8*r}if(rR.drawModeMessage(w,n,l,g),n)rR.drawBullsEye(w,k.truncDivision(l,2),5);else{rR.drawBullsEye(w,k.truncDivision(l,2),7);for(let e=0,t=0;e<k.truncDivision(p,2)-1;e+=15,t+=16)for(let e=1&k.truncDivision(l,2);e<l;e+=2)w.set(k.truncDivision(l,2)-t,e),w.set(k.truncDivision(l,2)+t,e),w.set(e,k.truncDivision(l,2)-t),w.set(e,k.truncDivision(l,2)+t)}let A=new rw;return A.setCompact(n),A.setSize(l),A.setLayers(i),A.setCodeWords(f),A.setMatrix(w),A}static drawBullsEye(e,t,r){for(let n=0;n<r;n+=2)for(let r=t-n;r<=t+n;r++)e.set(r,t-n),e.set(r,t+n),e.set(t-n,r),e.set(t+n,r);e.set(t-r,t-r),e.set(t-r+1,t-r),e.set(t-r,t-r+1),e.set(t+r,t-r),e.set(t+r,t-r+1),e.set(t+r,t+r-1)}static generateModeMessage(e,t,r){let n=new U;return e?(n.appendBits(t-1,2),n.appendBits(r-1,6),n=rR.generateCheckWords(n,28,4)):(n.appendBits(t-1,5),n.appendBits(r-1,11),n=rR.generateCheckWords(n,40,4)),n}static drawModeMessage(e,t,r,n){let i=k.truncDivision(r,2);if(t)for(let t=0;t<7;t++){let r=i-3+t;n.get(t)&&e.set(r,i-5),n.get(t+7)&&e.set(i+5,r),n.get(20-t)&&e.set(r,i+5),n.get(27-t)&&e.set(i-5,r)}else for(let t=0;t<10;t++){let r=i-5+t+k.truncDivision(t,5);n.get(t)&&e.set(r,i-7),n.get(t+10)&&e.set(i+7,r),n.get(29-t)&&e.set(r,i+7),n.get(39-t)&&e.set(i-7,r)}}static generateCheckWords(e,t,r){let n=e.getSize()/r,i=new rn(rR.getGF(r)),o=k.truncDivision(t,r),a=rR.bitsToWords(e,r,o);i.encode(a,o-n);let s=t%r,l=new U;for(let e of(l.appendBits(0,s),Array.from(a)))l.appendBits(e,r);return l}static bitsToWords(e,t,r){let n,i,o=new Int32Array(r);for(n=0,i=e.getSize()/t;n<i;n++){let r=0;for(let i=0;i<t;i++)r|=e.get(n*t+i)?1<<t-i-1:0;o[n]=r}return o}static getGF(e){switch(e){case 4:return eu.AZTEC_PARAM;case 6:return eu.AZTEC_DATA_6;case 8:return eu.AZTEC_DATA_8;case 10:return eu.AZTEC_DATA_10;case 12:return eu.AZTEC_DATA_12;default:throw new R("Unsupported word size "+e)}}static stuffBits(e,t){let r=new U,n=e.getSize(),i=(1<<t)-2;for(let o=0;o<n;o+=t){let a=0;for(let r=0;r<t;r++)(o+r>=n||e.get(o+r))&&(a|=1<<t-1-r);(a&i)===i?(r.appendBits(a&i,t),o--):(a&i)==0?(r.appendBits(1|a,t),o--):r.appendBits(a,t)}return r}static totalBitsInLayer(e,t){return((t?88:112)+16*e)*e}}rR.DEFAULT_EC_PERCENT=33,rR.DEFAULT_AZTEC_LAYERS=0,rR.MAX_NB_BITS=32,rR.MAX_NB_BITS_COMPACT=4,rR.WORD_SIZE=Int32Array.from([4,6,6,8,8,8,8,8,8,10,10,10,10,10,10,10,10,10,10,10,10,10,10,12,12,12,12,12,12,12,12,12,12]);class rO{encode(e,t,r,n){return this.encodeWithHints(e,t,r,n,null)}encodeWithHints(e,t,r,n,i){let o=rm.ISO_8859_1,a=rR.DEFAULT_EC_PERCENT,s=rR.DEFAULT_AZTEC_LAYERS;return null!=i&&(i.has(rr.CHARACTER_SET)&&(o=rp.forName(i.get(rr.CHARACTER_SET).toString())),i.has(rr.ERROR_CORRECTION)&&(a=k.parseInt(i.get(rr.ERROR_CORRECTION).toString())),i.has(rr.AZTEC_LAYERS)&&(s=k.parseInt(i.get(rr.AZTEC_LAYERS).toString()))),rO.encodeLayers(e,t,r,n,o,a,s)}static encodeLayers(e,t,r,n,i,o,a){if(t!==ei.AZTEC)throw new R("Can only encode AZTEC, but got "+t);let s=rR.encode(W.getBytes(e,i),o,a);return rO.renderResult(s,r,n)}static renderResult(e,t,r){let n=e.getMatrix();if(null==n)throw new ed;let i=n.getWidth(),o=n.getHeight(),a=Math.max(t,i),s=Math.max(r,o),l=Math.min(a/i,s/o),c=(a-i*l)/2,u=(s-o*l)/2,h=new X(a,s);for(let e=0,t=u;e<o;e++,t+=l)for(let r=0,o=c;r<i;r++,o+=l)n.get(r,e)&&h.setRegion(o,t,l,l);return h}}e.AbstractExpandedDecoder=e1,e.ArgumentException=D,e.ArithmeticException=ec,e.AztecCode=rw,e.AztecCodeReader=eM,e.AztecCodeWriter=rO,e.AztecDecoder=eg,e.AztecDetector=eN,e.AztecDetectorResult=eC,e.AztecEncoder=rR,e.AztecHighLevelEncoder=rD,e.AztecPoint=eT,e.BarcodeFormat=ei,e.Binarizer=B,e.BinaryBitmap=O,e.BitArray=U,e.BitMatrix=X,e.BitSource=tf,e.BrowserAztecCodeReader=class e extends er{constructor(e=500){super(new eM,e)}},e.BrowserBarcodeReader=class e extends er{constructor(e=500,t){super(new ts(t),e,t)}},e.BrowserCodeReader=er,e.BrowserDatamatrixCodeReader=class e extends er{constructor(e=500){super(new tw,e)}},e.BrowserMultiFormatReader=class e extends er{constructor(e=null,t=500){let r=new rt;r.setHints(e),super(r,t)}decodeBitmap(e){return this.reader.decodeWithState(e)}},e.BrowserPDF417Reader=class e extends er{constructor(e=500){super(new t9,e)}},e.BrowserQRCodeReader=class e extends er{constructor(e=500){super(new tx,e)}},e.BrowserQRCodeSvgWriter=rh,e.CharacterSetECI=V,e.ChecksumException=v,e.Code128Reader=eD,e.Code39Reader=eR,e.DataMatrixDecodedBitStreamParser=tg,e.DataMatrixReader=tw,e.DecodeHintType=H,e.DecoderResult=ea,e.DefaultGridSampler=ey,e.DetectorResult=eA,e.EAN13Reader=eF,e.EncodeHintType=rr,e.Exception=b,e.FormatException=z,e.GenericGF=eu,e.GenericGFPoly=el,e.GlobalHistogramBinarizer=Q,e.GridSampler=eI,e.GridSamplerInstance=e_,e.HTMLCanvasElementLuminanceSource=$,e.HybridBinarizer=q,e.ITFReader=eO,e.IllegalArgumentException=R,e.IllegalStateException=ed,e.InvertedLuminanceSource=J,e.LuminanceSource=K,e.MathUtils=ep,e.MultiFormatOneDReader=ts,e.MultiFormatReader=rt,e.MultiFormatWriter=class e{encode(e,t,r,n,i){let o;if(t===ei.QR_CODE)o=new rd;else throw new R("No encoder available for format "+t);return o.encode(e,t,r,n,i)}},e.NotFoundException=Z,e.OneDReader=eb,e.PDF417DecodedBitStreamParser=t5,e.PDF417DecoderErrorCorrection=tj,e.PDF417Reader=t9,e.PDF417ResultMetadata=t$,e.PerspectiveTransform=eS,e.PlanarYUVLuminanceSource=rf,e.QRCodeByteMatrix=ro,e.QRCodeDataMask=ty,e.QRCodeDecodedBitStreamParser=tM,e.QRCodeDecoderErrorCorrectionLevel=tA,e.QRCodeDecoderFormatInformation=tC,e.QRCodeEncoder=ru,e.QRCodeEncoderQRCode=ra,e.QRCodeMaskUtil=ri,e.QRCodeMatrixUtil=rl,e.QRCodeMode=tN,e.QRCodeReader=tx,e.QRCodeVersion=tS,e.QRCodeWriter=rd,e.RGBLuminanceSource=rg,e.RSS14Reader=ta,e.RSSExpandedReader=ti,e.ReaderException=re,e.ReedSolomonDecoder=ef,e.ReedSolomonEncoder=rn,e.ReedSolomonException=eh,e.Result=en,e.ResultMetadataType=eo,e.ResultPoint=ew,e.StringUtils=W,e.UnsupportedOperationException=j,e.VideoInputDevice=ee,e.WhiteRectangleDetector=eE,e.WriterException=rs,e.ZXingArrays=F,e.ZXingCharset=rp,e.ZXingInteger=k,e.ZXingStandardCharsets=rm,e.ZXingStringBuilder=Y,e.ZXingStringEncoding=G,e.ZXingSystem=P,e.createAbstractExpandedDecoder=tt,Object.defineProperty(e,"__esModule",{value:!0})}(t)},482:function(e){"use strict";e.exports=t},964:function(e){"use strict";e.exports=o},505:function(e){"use strict";e.exports=r},772:function(t){"use strict";t.exports=e},584:function(e){"use strict";e.exports=a},721:function(e){"use strict";e.exports=s},202:function(e){"use strict";e.exports=l},156:function(e){"use strict";e.exports=n},238:function(e){"use strict";e.exports=i},128:function(e){"use strict";e.exports=c}},h={};function d(e){var t=h[e];if(void 0!==t)return t.exports;var r=h[e]={exports:{}};return u[e].call(r.exports,r,r.exports,d),r.exports}d.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return d.d(t,{a:t}),t},d.d=function(e,t){for(var r in t)d.o(t,r)&&!d.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},d.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||Function("return this")()}catch(e){if("object"==typeof window)return window}}(),d.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},d.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var f={};return!function(){"use strict";d.r(f),d.d(f,{PluginBlockWorkbenchClient:function(){return tI},default:function(){return tS}});var e,t,r,n,i,o,a,s,l,c,u,h,g,p,m=d("772"),w=d("482");(e=l||(l={}))[e.QR_CODE=0]="QR_CODE",e[e.AZTEC=1]="AZTEC",e[e.CODABAR=2]="CODABAR",e[e.CODE_39=3]="CODE_39",e[e.CODE_93=4]="CODE_93",e[e.CODE_128=5]="CODE_128",e[e.DATA_MATRIX=6]="DATA_MATRIX",e[e.MAXICODE=7]="MAXICODE",e[e.ITF=8]="ITF",e[e.EAN_13=9]="EAN_13",e[e.EAN_8=10]="EAN_8",e[e.PDF_417=11]="PDF_417",e[e.RSS_14=12]="RSS_14",e[e.RSS_EXPANDED=13]="RSS_EXPANDED",e[e.UPC_A=14]="UPC_A",e[e.UPC_E=15]="UPC_E",e[e.UPC_EAN_EXTENSION=16]="UPC_EAN_EXTENSION";var A=new Map([[l.QR_CODE,"QR_CODE"],[l.AZTEC,"AZTEC"],[l.CODABAR,"CODABAR"],[l.CODE_39,"CODE_39"],[l.CODE_93,"CODE_93"],[l.CODE_128,"CODE_128"],[l.DATA_MATRIX,"DATA_MATRIX"],[l.MAXICODE,"MAXICODE"],[l.ITF,"ITF"],[l.EAN_13,"EAN_13"],[l.EAN_8,"EAN_8"],[l.PDF_417,"PDF_417"],[l.RSS_14,"RSS_14"],[l.RSS_EXPANDED,"RSS_EXPANDED"],[l.UPC_A,"UPC_A"],[l.UPC_E,"UPC_E"],[l.UPC_EAN_EXTENSION,"UPC_EAN_EXTENSION"]]);(t=c||(c={}))[t.UNKNOWN=0]="UNKNOWN",t[t.URL=1]="URL";(r=u||(u={}))[r.SCAN_TYPE_CAMERA=0]="SCAN_TYPE_CAMERA",r[r.SCAN_TYPE_FILE=1]="SCAN_TYPE_FILE";var C=function(){function e(){}return e.GITHUB_PROJECT_URL="https://github.com/mebjas/html5-qrcode",e.SCAN_DEFAULT_FPS=2,e.DEFAULT_DISABLE_FLIP=!1,e.DEFAULT_REMEMBER_LAST_CAMERA_USED=!0,e.DEFAULT_SUPPORTED_SCAN_TYPE=[u.SCAN_TYPE_CAMERA,u.SCAN_TYPE_FILE],e}(),E=function(){function e(e,t){this.format=e,this.formatName=t}return e.prototype.toString=function(){return this.formatName},e.create=function(t){if(!A.has(t))throw"".concat(t," not in html5QrcodeSupportedFormatsTextMap");return new e(t,A.get(t))},e}(),I=function(){function e(){}return e.createFromText=function(e){return{decodedText:e,result:{text:e}}},e.createFromQrcodeResult=function(e){return{decodedText:e.text,result:e}},e}();(n=h||(h={}))[n.UNKWOWN_ERROR=0]="UNKWOWN_ERROR",n[n.IMPLEMENTATION_ERROR=1]="IMPLEMENTATION_ERROR",n[n.NO_CODE_FOUND_ERROR=2]="NO_CODE_FOUND_ERROR";var S=function(){function e(){}return e.createFrom=function(e){return{errorMessage:e,type:h.UNKWOWN_ERROR}},e}(),y=function(){function e(e){this.verbose=e}return e.prototype.log=function(e){this.verbose&&console.log(e)},e.prototype.warn=function(e){this.verbose&&console.warn(e)},e.prototype.logError=function(e,t){(this.verbose||!0===t)&&console.error(e)},e.prototype.logErrors=function(e){if(0===e.length)throw"Logger#logError called without arguments";this.verbose&&console.error(e)},e}();function _(e){return null==e}var T=function(){function e(){}return e.codeParseError=function(e){return"QR code parse error, error = ".concat(e)},e.errorGettingUserMedia=function(e){return"Error getting userMedia, error = ".concat(e)},e.onlyDeviceSupportedError=function(){return"The device doesn't support navigator.mediaDevices , only supported cameraIdOrConfig in this case is deviceId parameter (string)."},e.cameraStreamingNotSupported=function(){return"Camera streaming not supported by the browser."},e.unableToQuerySupportedDevices=function(){return"Unable to query supported devices, unknown error."},e.insecureContextCameraQueryError=function(){return"Camera access is only supported in secure context like https or localhost."},e.scannerPaused=function(){return"Scanner paused"},e}(),N=function(){function e(){}return e.scanningStatus=function(){return"Scanning"},e.idleStatus=function(){return"Idle"},e.errorStatus=function(){return"Error"},e.permissionStatus=function(){return"Permission"},e.noCameraFoundErrorStatus=function(){return"No Cameras"},e.lastMatch=function(e){return"Last Match: ".concat(e)},e.codeScannerTitle=function(){return"Code Scanner"},e.cameraPermissionTitle=function(){return"Request Camera Permissions"},e.cameraPermissionRequesting=function(){return"Requesting camera permissions..."},e.noCameraFound=function(){return"No camera found"},e.scanButtonStopScanningText=function(){return"Stop Scanning"},e.scanButtonStartScanningText=function(){return"Start Scanning"},e.torchOnButton=function(){return"Switch On Torch"},e.torchOffButton=function(){return"Switch Off Torch"},e.torchOnFailedMessage=function(){return"Failed to turn on torch"},e.torchOffFailedMessage=function(){return"Failed to turn off torch"},e.scanButtonScanningStarting=function(){return"Launching Camera..."},e.textIfCameraScanSelected=function(){return"Scan an Image File"},e.textIfFileScanSelected=function(){return"Scan using camera directly"},e.selectCamera=function(){return"Select Camera"},e.fileSelectionChooseImage=function(){return"Choose Image"},e.fileSelectionChooseAnother=function(){return"Choose Another"},e.fileSelectionNoImageSelected=function(){return"No image choosen"},e.anonymousCameraPrefix=function(){return"Anonymous Camera"},e.dragAndDropMessage=function(){return"Or drop an image to scan"},e.dragAndDropMessageOnlyImages=function(){return"Or drop an image to scan (other files not supported)"},e.zoom=function(){return"zoom"},e.loadingImage=function(){return"Loading image..."},e.cameraScanAltText=function(){return"Camera based scan"},e.fileScanAltText=function(){return"Fule based scan"},e}(),M=function(){function e(){}return e.poweredBy=function(){return"Powered by "},e.reportIssues=function(){return"Report issues"},e}(),b=function(){function e(){}return e.isMediaStreamConstraintsValid=function(e,t){if("object"!=typeof e){var r=typeof e;return t.logError("videoConstraints should be of type object, the "+"object passed is of type ".concat(r,"."),!0),!1}for(var n=new Set(["autoGainControl","channelCount","echoCancellation","latency","noiseSuppression","sampleRate","sampleSize","volume"]),i=Object.keys(e),o=0;o<i.length;o++){var a=i[o];if(n.has(a))return t.logError("".concat(a," is not supported videoConstaints."),!0),!1}return!0},e}(),D=d("103"),R=function(){function e(e,t,r){if(this.formatMap=new Map([[l.QR_CODE,D.BarcodeFormat.QR_CODE],[l.AZTEC,D.BarcodeFormat.AZTEC],[l.CODABAR,D.BarcodeFormat.CODABAR],[l.CODE_39,D.BarcodeFormat.CODE_39],[l.CODE_93,D.BarcodeFormat.CODE_93],[l.CODE_128,D.BarcodeFormat.CODE_128],[l.DATA_MATRIX,D.BarcodeFormat.DATA_MATRIX],[l.MAXICODE,D.BarcodeFormat.MAXICODE],[l.ITF,D.BarcodeFormat.ITF],[l.EAN_13,D.BarcodeFormat.EAN_13],[l.EAN_8,D.BarcodeFormat.EAN_8],[l.PDF_417,D.BarcodeFormat.PDF_417],[l.RSS_14,D.BarcodeFormat.RSS_14],[l.RSS_EXPANDED,D.BarcodeFormat.RSS_EXPANDED],[l.UPC_A,D.BarcodeFormat.UPC_A],[l.UPC_E,D.BarcodeFormat.UPC_E],[l.UPC_EAN_EXTENSION,D.BarcodeFormat.UPC_EAN_EXTENSION]]),this.reverseFormatMap=this.createReverseFormatMap(),!D)throw"Use html5qrcode.min.js without edit, ZXing not found.";this.verbose=t,this.logger=r;var n=this.createZXingFormats(e),i=new Map;i.set(D.DecodeHintType.POSSIBLE_FORMATS,n),i.set(D.DecodeHintType.TRY_HARDER,!1),this.hints=i}return e.prototype.decodeAsync=function(e){var t=this;return new Promise(function(r,n){try{r(t.decode(e))}catch(e){n(e)}})},e.prototype.decode=function(e){var t=new D.MultiFormatReader(this.verbose,this.hints),r=new D.HTMLCanvasElementLuminanceSource(e),n=new D.BinaryBitmap(new D.HybridBinarizer(r)),i=t.decode(n);return{text:i.text,format:E.create(this.toHtml5QrcodeSupportedFormats(i.format)),debugData:this.createDebugData()}},e.prototype.createReverseFormatMap=function(){var e=new Map;return this.formatMap.forEach(function(t,r,n){e.set(t,r)}),e},e.prototype.toHtml5QrcodeSupportedFormats=function(e){if(!this.reverseFormatMap.has(e))throw"reverseFormatMap doesn't have ".concat(e);return this.reverseFormatMap.get(e)},e.prototype.createZXingFormats=function(e){for(var t=[],r=0;r<e.length;r++){var n=e[r];this.formatMap.has(n)?t.push(this.formatMap.get(n)):this.logger.logError("".concat(n," is not supported by")+"ZXingHtml5QrcodeShim")}return t},e.prototype.createDebugData=function(){return{decoderName:"zxing-js"}},e}(),O=function(e,t){var r,n,i,o,a={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(s){return function(l){return function(s){if(r)throw TypeError("Generator is already executing.");for(;o&&(o=0,s[0]&&(a=0)),a;)try{if(r=1,n&&(i=2&s[0]?n.return:s[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,s[1])).done)return i;switch(n=0,i&&(s=[2&s[0],i.value]),s[0]){case 0:case 1:i=s;break;case 4:return a.label++,{value:s[1],done:!1};case 5:a.label++,n=s[1],s=[0];continue;case 7:s=a.ops.pop(),a.trys.pop();continue;default:if(!(i=(i=a.trys).length>0&&i[i.length-1])&&(6===s[0]||2===s[0])){a=0;continue}if(3===s[0]&&(!i||s[1]>i[0]&&s[1]<i[3])){a.label=s[1];break}if(6===s[0]&&a.label<i[1]){a.label=i[1],i=s;break}if(i&&a.label<i[2]){a.label=i[2],a.ops.push(s);break}i[2]&&a.ops.pop(),a.trys.pop();continue}s=t.call(e,a)}catch(e){s=[6,e],n=0}finally{r=i=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,l])}}},v=function(){function e(t,r,n){if(this.formatMap=new Map([[l.QR_CODE,"qr_code"],[l.AZTEC,"aztec"],[l.CODABAR,"codabar"],[l.CODE_39,"code_39"],[l.CODE_93,"code_93"],[l.CODE_128,"code_128"],[l.DATA_MATRIX,"data_matrix"],[l.ITF,"itf"],[l.EAN_13,"ean_13"],[l.EAN_8,"ean_8"],[l.PDF_417,"pdf417"],[l.UPC_A,"upc_a"],[l.UPC_E,"upc_e"]]),this.reverseFormatMap=this.createReverseFormatMap(),!e.isSupported())throw"Use html5qrcode.min.js without edit, Use BarcodeDetectorDelegate only if it isSupported();";this.verbose=r,this.logger=n;var i=this.createBarcodeDetectorFormats(t);if(this.detector=new BarcodeDetector(i),!this.detector)throw"BarcodeDetector detector not supported"}return e.isSupported=function(){return"BarcodeDetector"in window&&(new BarcodeDetector({formats:["qr_code"]}),true)},e.prototype.decodeAsync=function(e){var t,r,n,i;return t=this,r=void 0,n=void 0,i=function(){var t,r;return O(this,function(n){switch(n.label){case 0:return[4,this.detector.detect(e)];case 1:if(!(t=n.sent())||0===t.length)throw"No barcode or QR code detected.";return[2,{text:(r=this.selectLargestBarcode(t)).rawValue,format:E.create(this.toHtml5QrcodeSupportedFormats(r.format)),debugData:this.createDebugData()}]}})},new(n||(n=Promise))(function(e,o){function a(e){try{l(i.next(e))}catch(e){o(e)}}function s(e){try{l(i.throw(e))}catch(e){o(e)}}function l(t){var r;t.done?e(t.value):((r=t.value)instanceof n?r:new n(function(e){e(r)})).then(a,s)}l((i=i.apply(t,r||[])).next())})},e.prototype.selectLargestBarcode=function(e){for(var t=null,r=0,n=0;n<e.length;n++){var i=e[n],o=i.boundingBox.width*i.boundingBox.height;o>r&&(r=o,t=i)}if(!t)throw"No largest barcode found";return t},e.prototype.createBarcodeDetectorFormats=function(e){for(var t=[],r=0;r<e.length;r++){var n=e[r];this.formatMap.has(n)?t.push(this.formatMap.get(n)):this.logger.warn("".concat(n," is not supported by")+"BarcodeDetectorDelegate")}return{formats:t}},e.prototype.toHtml5QrcodeSupportedFormats=function(e){if(!this.reverseFormatMap.has(e))throw"reverseFormatMap doesn't have ".concat(e);return this.reverseFormatMap.get(e)},e.prototype.createReverseFormatMap=function(){var e=new Map;return this.formatMap.forEach(function(t,r,n){e.set(t,r)}),e},e.prototype.createDebugData=function(){return{decoderName:"BarcodeDetector"}},e}(),B=function(e,t,r,n){return new(r||(r=Promise))(function(i,o){function a(e){try{l(n.next(e))}catch(e){o(e)}}function s(e){try{l(n.throw(e))}catch(e){o(e)}}function l(e){var t;e.done?i(e.value):((t=e.value)instanceof r?t:new r(function(e){e(t)})).then(a,s)}l((n=n.apply(e,t||[])).next())})},P=function(e,t){var r,n,i,o,a={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(s){return function(l){return function(s){if(r)throw TypeError("Generator is already executing.");for(;o&&(o=0,s[0]&&(a=0)),a;)try{if(r=1,n&&(i=2&s[0]?n.return:s[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,s[1])).done)return i;switch(n=0,i&&(s=[2&s[0],i.value]),s[0]){case 0:case 1:i=s;break;case 4:return a.label++,{value:s[1],done:!1};case 5:a.label++,n=s[1],s=[0];continue;case 7:s=a.ops.pop(),a.trys.pop();continue;default:if(!(i=(i=a.trys).length>0&&i[i.length-1])&&(6===s[0]||2===s[0])){a=0;continue}if(3===s[0]&&(!i||s[1]>i[0]&&s[1]<i[3])){a.label=s[1];break}if(6===s[0]&&a.label<i[1]){a.label=i[1],i=s;break}if(i&&a.label<i[2]){a.label=i[2],a.ops.push(s);break}i[2]&&a.ops.pop(),a.trys.pop();continue}s=t.call(e,a)}catch(e){s=[6,e],n=0}finally{r=i=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,l])}}},L=function(){function e(e,t,r,n){this.EXECUTIONS_TO_REPORT_PERFORMANCE=100,this.executions=0,this.executionResults=[],this.wasPrimaryDecoderUsedInLastDecode=!1,this.verbose=r,t&&v.isSupported()?(this.primaryDecoder=new v(e,r,n),this.secondaryDecoder=new R(e,r,n)):this.primaryDecoder=new R(e,r,n)}return e.prototype.decodeAsync=function(e){return B(this,void 0,void 0,function(){var t;return P(this,function(r){switch(r.label){case 0:t=performance.now(),r.label=1;case 1:return r.trys.push([1,,3,4]),[4,this.getDecoder().decodeAsync(e)];case 2:return[2,r.sent()];case 3:return this.possiblyLogPerformance(t),[7];case 4:return[2]}})})},e.prototype.decodeRobustlyAsync=function(e){return B(this,void 0,void 0,function(){var t,r;return P(this,function(n){switch(n.label){case 0:t=performance.now(),n.label=1;case 1:return n.trys.push([1,3,4,5]),[4,this.primaryDecoder.decodeAsync(e)];case 2:return[2,n.sent()];case 3:if(r=n.sent(),this.secondaryDecoder)return[2,this.secondaryDecoder.decodeAsync(e)];throw r;case 4:return this.possiblyLogPerformance(t),[7];case 5:return[2]}})})},e.prototype.getDecoder=function(){return this.secondaryDecoder?!1===this.wasPrimaryDecoderUsedInLastDecode?(this.wasPrimaryDecoderUsedInLastDecode=!0,this.primaryDecoder):(this.wasPrimaryDecoderUsedInLastDecode=!1,this.secondaryDecoder):this.primaryDecoder},e.prototype.possiblyLogPerformance=function(e){if(!!this.verbose){var t=performance.now()-e;this.executionResults.push(t),this.executions++,this.possiblyFlushPerformanceReport()}},e.prototype.possiblyFlushPerformanceReport=function(){if(!(this.executions<this.EXECUTIONS_TO_REPORT_PERFORMANCE)){for(var e=0,t=0,r=this.executionResults;t<r.length;t++)e+=r[t];var n=e/this.executionResults.length;console.log("".concat(n," ms for ").concat(this.executionResults.length," last runs.")),this.executions=0,this.executionResults=[]}},e}();var x=(i=function(e,t){return(i=Object.setPrototypeOf||({__proto__:[]})instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw TypeError("Class extends value "+String(t)+" is not a constructor or null");function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),F=function(e,t,r,n){return new(r||(r=Promise))(function(i,o){function a(e){try{l(n.next(e))}catch(e){o(e)}}function s(e){try{l(n.throw(e))}catch(e){o(e)}}function l(e){var t;e.done?i(e.value):((t=e.value)instanceof r?t:new r(function(e){e(t)})).then(a,s)}l((n=n.apply(e,t||[])).next())})},k=function(e,t){var r,n,i,o,a={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(s){return function(l){return function(s){if(r)throw TypeError("Generator is already executing.");for(;o&&(o=0,s[0]&&(a=0)),a;)try{if(r=1,n&&(i=2&s[0]?n.return:s[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,s[1])).done)return i;switch(n=0,i&&(s=[2&s[0],i.value]),s[0]){case 0:case 1:i=s;break;case 4:return a.label++,{value:s[1],done:!1};case 5:a.label++,n=s[1],s=[0];continue;case 7:s=a.ops.pop(),a.trys.pop();continue;default:if(!(i=(i=a.trys).length>0&&i[i.length-1])&&(6===s[0]||2===s[0])){a=0;continue}if(3===s[0]&&(!i||s[1]>i[0]&&s[1]<i[3])){a.label=s[1];break}if(6===s[0]&&a.label<i[1]){a.label=i[1],i=s;break}if(i&&a.label<i[2]){a.label=i[2],a.ops.push(s);break}i[2]&&a.ops.pop(),a.trys.pop();continue}s=t.call(e,a)}catch(e){s=[6,e],n=0}finally{r=i=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,l])}}},U=function(){function e(e,t){this.name=e,this.track=t}return e.prototype.isSupported=function(){return!!this.track.getCapabilities&&this.name in this.track.getCapabilities()},e.prototype.apply=function(e){var t={};return t[this.name]=e,this.track.applyConstraints({advanced:[t]})},e.prototype.value=function(){var e=this.track.getSettings();return this.name in e?e[this.name]:null},e}(),H=function(e){function t(t){return e.call(this,"zoom",t)||this}return x(t,e),t}(function(e){function t(t,r){return e.call(this,t,r)||this}return x(t,e),t.prototype.min=function(){return this.getCapabilities().min},t.prototype.max=function(){return this.getCapabilities().max},t.prototype.step=function(){return this.getCapabilities().step},t.prototype.apply=function(e){var t={};return t[this.name]=e,this.track.applyConstraints({advanced:[t]})},t.prototype.getCapabilities=function(){this.failIfNotSupported();var e=this.track.getCapabilities()[this.name];return{min:e.min,max:e.max,step:e.step}},t.prototype.failIfNotSupported=function(){if(!this.isSupported())throw Error("".concat(this.name," capability not supported"))},t}(U)),z=function(e){function t(t){return e.call(this,"torch",t)||this}return x(t,e),t}(U),V=function(){function e(e){this.track=e}return e.prototype.zoomFeature=function(){return new H(this.track)},e.prototype.torchFeature=function(){return new z(this.track)},e}(),j=function(){function e(e,t,r){this.isClosed=!1,this.parentElement=e,this.mediaStream=t,this.callbacks=r,this.surface=this.createVideoElement(this.parentElement.clientWidth),e.append(this.surface)}return e.prototype.createVideoElement=function(e){var t=document.createElement("video");return t.style.width="".concat(e,"px"),t.style.display="block",t.muted=!0,t.setAttribute("muted","true"),t.playsInline=!0,t},e.prototype.setupSurface=function(){var e=this;this.surface.onabort=function(){throw"RenderedCameraImpl video surface onabort() called"},this.surface.onerror=function(){throw"RenderedCameraImpl video surface onerror() called"};var t=function(){var r=e.surface.clientWidth,n=e.surface.clientHeight;e.callbacks.onRenderSurfaceReady(r,n),e.surface.removeEventListener("playing",t)};this.surface.addEventListener("playing",t),this.surface.srcObject=this.mediaStream,this.surface.play()},e.create=function(t,r,n,i){return F(this,void 0,void 0,function(){var o,a;return k(this,function(s){switch(s.label){case 0:if(o=new e(t,r,i),!n.aspectRatio)return[3,2];return a={aspectRatio:n.aspectRatio},[4,o.getFirstTrackOrFail().applyConstraints(a)];case 1:s.sent(),s.label=2;case 2:return o.setupSurface(),[2,o]}})})},e.prototype.failIfClosed=function(){if(this.isClosed)throw"The RenderedCamera has already been closed."},e.prototype.getFirstTrackOrFail=function(){if(this.failIfClosed(),0===this.mediaStream.getVideoTracks().length)throw"No video tracks found";return this.mediaStream.getVideoTracks()[0]},e.prototype.pause=function(){this.failIfClosed(),this.surface.pause()},e.prototype.resume=function(e){this.failIfClosed();var t=this,r=function(){setTimeout(e,200),t.surface.removeEventListener("playing",r)};this.surface.addEventListener("playing",r),this.surface.play()},e.prototype.isPaused=function(){return this.failIfClosed(),this.surface.paused},e.prototype.getSurface=function(){return this.failIfClosed(),this.surface},e.prototype.getRunningTrackCapabilities=function(){return this.getFirstTrackOrFail().getCapabilities()},e.prototype.getRunningTrackSettings=function(){return this.getFirstTrackOrFail().getSettings()},e.prototype.applyVideoConstraints=function(e){return F(this,void 0,void 0,function(){return k(this,function(t){if("aspectRatio"in e)throw"Changing 'aspectRatio' in run-time is not yet supported.";return[2,this.getFirstTrackOrFail().applyConstraints(e)]})})},e.prototype.close=function(){if(this.isClosed)return Promise.resolve();var e=this;return new Promise(function(t,r){var n=e.mediaStream.getVideoTracks().length,i=0;e.mediaStream.getVideoTracks().forEach(function(r){e.mediaStream.removeTrack(r),r.stop(),++i>=n&&(e.isClosed=!0,e.parentElement.removeChild(e.surface),t())})})},e.prototype.getCapabilities=function(){return new V(this.getFirstTrackOrFail())},e}(),G=function(){function e(e){this.mediaStream=e}return e.prototype.render=function(e,t,r){return F(this,void 0,void 0,function(){return k(this,function(n){return[2,j.create(e,this.mediaStream,t,r)]})})},e.create=function(t){return F(this,void 0,void 0,function(){var r;return k(this,function(n){switch(n.label){case 0:if(!navigator.mediaDevices)throw"navigator.mediaDevices not supported";return r={audio:!1,video:t},[4,navigator.mediaDevices.getUserMedia(r)];case 1:return[2,new e(n.sent())]}})})},e}(),W=function(e,t,r,n){return new(r||(r=Promise))(function(i,o){function a(e){try{l(n.next(e))}catch(e){o(e)}}function s(e){try{l(n.throw(e))}catch(e){o(e)}}function l(e){var t;e.done?i(e.value):((t=e.value)instanceof r?t:new r(function(e){e(t)})).then(a,s)}l((n=n.apply(e,t||[])).next())})},Y=function(e,t){var r,n,i,o,a={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(s){return function(l){return function(s){if(r)throw TypeError("Generator is already executing.");for(;o&&(o=0,s[0]&&(a=0)),a;)try{if(r=1,n&&(i=2&s[0]?n.return:s[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,s[1])).done)return i;switch(n=0,i&&(s=[2&s[0],i.value]),s[0]){case 0:case 1:i=s;break;case 4:return a.label++,{value:s[1],done:!1};case 5:a.label++,n=s[1],s=[0];continue;case 7:s=a.ops.pop(),a.trys.pop();continue;default:if(!(i=(i=a.trys).length>0&&i[i.length-1])&&(6===s[0]||2===s[0])){a=0;continue}if(3===s[0]&&(!i||s[1]>i[0]&&s[1]<i[3])){a.label=s[1];break}if(6===s[0]&&a.label<i[1]){a.label=i[1],i=s;break}if(i&&a.label<i[2]){a.label=i[2],a.ops.push(s);break}i[2]&&a.ops.pop(),a.trys.pop();continue}s=t.call(e,a)}catch(e){s=[6,e],n=0}finally{r=i=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,l])}}},X=function(){function e(){}return e.failIfNotSupported=function(){return W(this,void 0,void 0,function(){return Y(this,function(t){if(!navigator.mediaDevices)throw"navigator.mediaDevices not supported";return[2,new e]})})},e.prototype.create=function(e){return W(this,void 0,void 0,function(){return Y(this,function(t){return[2,G.create(e)]})})},e}(),Z=function(e,t){var r,n,i,o,a={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(s){return function(l){return function(s){if(r)throw TypeError("Generator is already executing.");for(;o&&(o=0,s[0]&&(a=0)),a;)try{if(r=1,n&&(i=2&s[0]?n.return:s[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,s[1])).done)return i;switch(n=0,i&&(s=[2&s[0],i.value]),s[0]){case 0:case 1:i=s;break;case 4:return a.label++,{value:s[1],done:!1};case 5:a.label++,n=s[1],s=[0];continue;case 7:s=a.ops.pop(),a.trys.pop();continue;default:if(!(i=(i=a.trys).length>0&&i[i.length-1])&&(6===s[0]||2===s[0])){a=0;continue}if(3===s[0]&&(!i||s[1]>i[0]&&s[1]<i[3])){a.label=s[1];break}if(6===s[0]&&a.label<i[1]){a.label=i[1],i=s;break}if(i&&a.label<i[2]){a.label=i[2],a.ops.push(s);break}i[2]&&a.ops.pop(),a.trys.pop();continue}s=t.call(e,a)}catch(e){s=[6,e],n=0}finally{r=i=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,l])}}},Q=function(){function e(){}return e.retrieve=function(){if(navigator.mediaDevices)return e.getCamerasFromMediaDevices();var t=MediaStreamTrack;return MediaStreamTrack&&t.getSources?e.getCamerasFromMediaStreamTrack():e.rejectWithError()},e.rejectWithError=function(){var t=T.unableToQuerySupportedDevices();return!e.isHttpsOrLocalhost()&&(t=T.insecureContextCameraQueryError()),Promise.reject(t)},e.isHttpsOrLocalhost=function(){if("https:"===location.protocol)return!0;var e=location.host.split(":")[0];return"127.0.0.1"===e||"localhost"===e},e.getCamerasFromMediaDevices=function(){var e,t,r,n;return e=this,t=void 0,r=void 0,n=function(){var e,t,r,n,i,o,a;return Z(this,function(s){switch(s.label){case 0:return e=function(e){for(var t=e.getVideoTracks(),r=0;r<t.length;r++){var n=t[r];n.enabled=!1,n.stop(),e.removeTrack(n)}},[4,navigator.mediaDevices.getUserMedia({audio:!1,video:!0})];case 1:return t=s.sent(),[4,navigator.mediaDevices.enumerateDevices()];case 2:for(i=0,r=s.sent(),n=[],o=r;i<o.length;i++)"videoinput"===(a=o[i]).kind&&n.push({id:a.deviceId,label:a.label});return e(t),[2,n]}})},new(r||(r=Promise))(function(i,o){function a(e){try{l(n.next(e))}catch(e){o(e)}}function s(e){try{l(n.throw(e))}catch(e){o(e)}}function l(e){var t;e.done?i(e.value):((t=e.value)instanceof r?t:new r(function(e){e(t)})).then(a,s)}l((n=n.apply(e,t||[])).next())})},e.getCamerasFromMediaStreamTrack=function(){return new Promise(function(e,t){MediaStreamTrack.getSources(function(t){for(var r=[],n=0;n<t.length;n++){var i=t[n];"video"===i.kind&&r.push({id:i.id,label:i.label})}e(r)})})},e}();(o=g||(g={}))[o.UNKNOWN=0]="UNKNOWN",o[o.NOT_STARTED=1]="NOT_STARTED",o[o.SCANNING=2]="SCANNING",o[o.PAUSED=3]="PAUSED";var q=function(){function e(){this.state=g.NOT_STARTED,this.onGoingTransactionNewState=g.UNKNOWN}return e.prototype.directTransition=function(e){this.failIfTransitionOngoing(),this.validateTransition(e),this.state=e},e.prototype.startTransition=function(e){return this.failIfTransitionOngoing(),this.validateTransition(e),this.onGoingTransactionNewState=e,this},e.prototype.execute=function(){if(this.onGoingTransactionNewState===g.UNKNOWN)throw"Transaction is already cancelled, cannot execute().";var e=this.onGoingTransactionNewState;this.onGoingTransactionNewState=g.UNKNOWN,this.directTransition(e)},e.prototype.cancel=function(){if(this.onGoingTransactionNewState===g.UNKNOWN)throw"Transaction is already cancelled, cannot cancel().";this.onGoingTransactionNewState=g.UNKNOWN},e.prototype.getState=function(){return this.state},e.prototype.failIfTransitionOngoing=function(){if(this.onGoingTransactionNewState!==g.UNKNOWN)throw"Cannot transition to a new state, already under transition"},e.prototype.validateTransition=function(e){switch(this.state){case g.UNKNOWN:throw"Transition from unknown is not allowed";case g.NOT_STARTED:this.failIfNewStateIs(e,[g.PAUSED]);case g.SCANNING:case g.PAUSED:}},e.prototype.failIfNewStateIs=function(e,t){for(var r=0;r<t.length;r++)if(e===t[r])throw"Cannot transition from ".concat(this.state," to ").concat(e)},e}(),K=function(){function e(e){this.stateManager=e}return e.prototype.startTransition=function(e){return this.stateManager.startTransition(e)},e.prototype.directTransition=function(e){this.stateManager.directTransition(e)},e.prototype.getState=function(){return this.stateManager.getState()},e.prototype.canScanFile=function(){return this.stateManager.getState()===g.NOT_STARTED},e.prototype.isScanning=function(){return this.stateManager.getState()!==g.NOT_STARTED},e.prototype.isStrictlyScanning=function(){return this.stateManager.getState()===g.SCANNING},e.prototype.isPaused=function(){return this.stateManager.getState()===g.PAUSED},e}(),J=function(){function e(){}return e.create=function(){return new K(new q)},e}();var $=(a=function(e,t){return(a=Object.setPrototypeOf||({__proto__:[]})instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw TypeError("Class extends value "+String(t)+" is not a constructor or null");function r(){this.constructor=e}a(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),ee=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return $(t,e),t.DEFAULT_WIDTH=300,t.DEFAULT_WIDTH_OFFSET=2,t.FILE_SCAN_MIN_HEIGHT=300,t.FILE_SCAN_HIDDEN_CANVAS_PADDING=100,t.MIN_QR_BOX_SIZE=50,t.SHADED_LEFT=1,t.SHADED_RIGHT=2,t.SHADED_TOP=3,t.SHADED_BOTTOM=4,t.SHADED_REGION_ELEMENT_ID="qr-shaded-region",t.VERBOSE=!1,t.BORDER_SHADER_DEFAULT_COLOR="#ffffff",t.BORDER_SHADER_MATCH_COLOR="rgb(90, 193, 56)",t}(C),et=function(){function e(e,t){this.logger=t,this.fps=ee.SCAN_DEFAULT_FPS,e?(e.fps&&(this.fps=e.fps),this.disableFlip=!0===e.disableFlip,this.qrbox=e.qrbox,this.aspectRatio=e.aspectRatio,this.videoConstraints=e.videoConstraints):this.disableFlip=ee.DEFAULT_DISABLE_FLIP}return e.prototype.isMediaStreamConstraintsValid=function(){return this.videoConstraints?b.isMediaStreamConstraintsValid(this.videoConstraints,this.logger):(this.logger.logError("Empty videoConstraints",!0),!1)},e.prototype.isShadedBoxEnabled=function(){return!_(this.qrbox)},e.create=function(t,r){return new e(t,r)},e}(),er=function(){function e(e,t){var r,n;if(this.element=null,this.canvasElement=null,this.scannerPausedUiElement=null,this.hasBorderShaders=null,this.borderShaders=null,this.qrMatch=null,this.renderedCamera=null,this.qrRegion=null,this.context=null,this.lastScanImageFile=null,this.isScanning=!1,!document.getElementById(e))throw"HTML Element with id=".concat(e," not found");this.elementId=e,this.verbose=!1,"boolean"==typeof t?this.verbose=!0===t:t&&(n=t,this.verbose=!0===n.verbose,n.experimentalFeatures),this.logger=new y(this.verbose),this.qrcode=new L(this.getSupportedFormats(t),this.getUseBarCodeDetectorIfSupported(n),this.verbose,this.logger),this.foreverScanTimeout,this.shouldScan=!0,this.stateManagerProxy=J.create()}return e.prototype.start=function(e,t,r,n){var i,o=this;if(!e)throw"cameraIdOrConfig is required";if(!r||"function"!=typeof r)throw"qrCodeSuccessCallback is required and should be a function.";i=n?n:this.verbose?this.logger.log:function(){};var a=et.create(t,this.logger);this.clearElement();var s=!1;a.videoConstraints&&(a.isMediaStreamConstraintsValid()?s=!0:this.logger.logError("'videoConstraints' is not valid 'MediaStreamConstraints, it will be ignored.'",!0));var l=s,c=document.getElementById(this.elementId);c.clientWidth?c.clientWidth:ee.DEFAULT_WIDTH,c.style.position="relative",this.shouldScan=!0,this.element=c;var u=this,h=this.stateManagerProxy.startTransition(g.SCANNING);return new Promise(function(t,n){var s=l?a.videoConstraints:u.createVideoConstraints(e);if(!s){h.cancel(),n("videoConstraints should be defined");return}var c={};(!l||a.aspectRatio)&&(c.aspectRatio=a.aspectRatio);var d={onRenderSurfaceReady:function(e,t){u.setupUi(e,t,a),u.isScanning=!0,u.foreverScan(a,r,i)}};X.failIfNotSupported().then(function(e){e.create(s).then(function(e){return e.render(o.element,c,d).then(function(e){u.renderedCamera=e,h.execute(),t(null)}).catch(function(e){h.cancel(),n(e)})}).catch(function(e){h.cancel(),n(T.errorGettingUserMedia(e))})}).catch(function(e){h.cancel(),n(T.cameraStreamingNotSupported())})})},e.prototype.pause=function(e){if(!this.stateManagerProxy.isStrictlyScanning())throw"Cannot pause, scanner is not scanning.";this.stateManagerProxy.directTransition(g.PAUSED),this.showPausedState(),(_(e)||!0!==e)&&(e=!1),e&&this.renderedCamera&&this.renderedCamera.pause()},e.prototype.resume=function(){if(!this.stateManagerProxy.isPaused())throw"Cannot result, scanner is not paused.";if(!this.renderedCamera)throw"renderedCamera doesn't exist while trying resume()";var e=this,t=function(){e.stateManagerProxy.directTransition(g.SCANNING),e.hidePausedState()};if(!this.renderedCamera.isPaused()){t();return}this.renderedCamera.resume(function(){t()})},e.prototype.getState=function(){return this.stateManagerProxy.getState()},e.prototype.stop=function(){var e=this;if(!this.stateManagerProxy.isScanning())throw"Cannot stop, scanner is not running or paused.";var t=this.stateManagerProxy.startTransition(g.NOT_STARTED);this.shouldScan=!1,this.foreverScanTimeout&&clearTimeout(this.foreverScanTimeout);var r=function(){if(!!e.element){var t=document.getElementById(ee.SHADED_REGION_ELEMENT_ID);t&&e.element.removeChild(t)}},n=this;return this.renderedCamera.close().then(function(){return n.renderedCamera=null,n.element&&(n.element.removeChild(n.canvasElement),n.canvasElement=null),r(),n.qrRegion&&(n.qrRegion=null),n.context&&(n.context=null),t.execute(),n.hidePausedState(),n.isScanning=!1,Promise.resolve()})},e.prototype.scanFile=function(e,t){return this.scanFileV2(e,t).then(function(e){return e.decodedText})},e.prototype.scanFileV2=function(e,t){var r=this;if(!e||!(e instanceof File))throw"imageFile argument is mandatory and should be instance of File. Use 'event.target.files[0]'.";if(_(t)&&(t=!0),!this.stateManagerProxy.canScanFile())throw"Cannot start file scan - ongoing camera scan";return new Promise(function(n,i){r.possiblyCloseLastScanImageFile(),r.clearElement(),r.lastScanImageFile=URL.createObjectURL(e);var o=new Image;o.onload=function(){var e=o.width,a=o.height,s=document.getElementById(r.elementId),l=s.clientWidth?s.clientWidth:ee.DEFAULT_WIDTH,c=Math.max(s.clientHeight?s.clientHeight:a,ee.FILE_SCAN_MIN_HEIGHT),u=r.computeCanvasDrawConfig(e,a,l,c);if(t){var h=r.createCanvasElement(l,c,"qr-canvas-visible");h.style.display="inline-block",s.appendChild(h);var d=h.getContext("2d");if(!d)throw"Unable to get 2d context from canvas";d.canvas.width=l,d.canvas.height=c,d.drawImage(o,0,0,e,a,u.x,u.y,u.width,u.height)}var f=ee.FILE_SCAN_HIDDEN_CANVAS_PADDING,g=Math.max(o.width,u.width),p=Math.max(o.height,u.height),m=g+2*f,w=p+2*f,A=r.createCanvasElement(m,w);s.appendChild(A);var C=A.getContext("2d");if(!C)throw"Unable to get 2d context from canvas";C.canvas.width=m,C.canvas.height=w,C.drawImage(o,0,0,e,a,f,f,g,p);try{r.qrcode.decodeRobustlyAsync(A).then(function(e){n(I.createFromQrcodeResult(e))}).catch(i)}catch(e){i("QR code parse error, error = ".concat(e))}},o.onerror=i,o.onabort=i,o.onstalled=i,o.onsuspend=i,o.src=URL.createObjectURL(e)})},e.prototype.clear=function(){this.clearElement()},e.getCameras=function(){return Q.retrieve()},e.prototype.getRunningTrackCapabilities=function(){return this.getRenderedCameraOrFail().getRunningTrackCapabilities()},e.prototype.getRunningTrackSettings=function(){return this.getRenderedCameraOrFail().getRunningTrackSettings()},e.prototype.getRunningTrackCameraCapabilities=function(){return this.getRenderedCameraOrFail().getCapabilities()},e.prototype.applyVideoConstraints=function(e){if(e){if(!b.isMediaStreamConstraintsValid(e,this.logger))throw"invalid videoConstaints passed, check logs for more details"}else throw"videoConstaints is required argument.";return this.getRenderedCameraOrFail().applyVideoConstraints(e)},e.prototype.getRenderedCameraOrFail=function(){if(null==this.renderedCamera)throw"Scanning is not in running state, call this API only when QR code scanning using camera is in running state.";return this.renderedCamera},e.prototype.getSupportedFormats=function(e){var t=[l.QR_CODE,l.AZTEC,l.CODABAR,l.CODE_39,l.CODE_93,l.CODE_128,l.DATA_MATRIX,l.MAXICODE,l.ITF,l.EAN_13,l.EAN_8,l.PDF_417,l.RSS_14,l.RSS_EXPANDED,l.UPC_A,l.UPC_E,l.UPC_EAN_EXTENSION];if(!e||"boolean"==typeof e||!e.formatsToSupport)return t;if(!Array.isArray(e.formatsToSupport))throw"configOrVerbosityFlag.formatsToSupport should be undefined or an array.";if(0===e.formatsToSupport.length)throw"Atleast 1 formatsToSupport is needed.";for(var r=[],n=0,i=e.formatsToSupport;n<i.length;n++){var o,a=i[n];if(o=a,Object.values(l).includes(o))r.push(a);else this.logger.warn("Invalid format: ".concat(a," passed in config, ignoring."))}if(0===r.length)throw"None of formatsToSupport match supported values.";return r},e.prototype.getUseBarCodeDetectorIfSupported=function(e){if(_(e))return!0;if(!_(e.useBarCodeDetectorIfSupported))return!1!==e.useBarCodeDetectorIfSupported;if(_(e.experimentalFeatures))return!0;var t=e.experimentalFeatures;return!!_(t.useBarCodeDetectorIfSupported)||!1!==t.useBarCodeDetectorIfSupported},e.prototype.validateQrboxSize=function(e,t,r){var n,i=this,o=r.qrbox;this.validateQrboxConfig(o);var a=this.toQrdimensions(e,t,o),s=function(e){if(e<ee.MIN_QR_BOX_SIZE)throw"minimum size of 'config.qrbox' dimension value is"+" ".concat(ee.MIN_QR_BOX_SIZE,"px.")};s(a.width),s(a.height),a.width=((n=a.width)>e&&(i.logger.warn("`qrbox.width` or `qrbox` is larger than the width of the root element. The width will be truncated to the width of root element."),n=e),n)},e.prototype.validateQrboxConfig=function(e){if("number"!=typeof e&&"function"!=typeof e){if(void 0===e.width||void 0===e.height)throw"Invalid instance of QrDimensions passed for 'config.qrbox'. Both 'width' and 'height' should be set."}},e.prototype.toQrdimensions=function(e,t,r){if("number"==typeof r)return{width:r,height:r};if("function"==typeof r)try{return r(e,t)}catch(e){throw Error("qrbox config was passed as a function but it failed with unknown error"+e)}return r},e.prototype.setupUi=function(e,t,r){r.isShadedBoxEnabled()&&this.validateQrboxSize(e,t,r);var n=_(r.qrbox)?{width:e,height:t}:r.qrbox;this.validateQrboxConfig(n);var i=this.toQrdimensions(e,t,n);i.height>t&&this.logger.warn("[Html5Qrcode] config.qrbox has height that isgreater than the height of the video stream. Shading will be ignored");var o=r.isShadedBoxEnabled()&&i.height<=t,a=o?this.getShadedRegionBounds(e,t,i):{x:0,y:0,width:e,height:t},s=this.createCanvasElement(a.width,a.height),l=s.getContext("2d",{willReadFrequently:!0});l.canvas.width=a.width,l.canvas.height=a.height,this.element.append(s),o&&this.possiblyInsertShadingElement(this.element,e,t,i),this.createScannerPausedUiElement(this.element),this.qrRegion=a,this.context=l,this.canvasElement=s},e.prototype.createScannerPausedUiElement=function(e){var t=document.createElement("div");t.innerText=T.scannerPaused(),t.style.display="none",t.style.position="absolute",t.style.top="0px",t.style.zIndex="1",t.style.background="rgba(9, 9, 9, 0.46)",t.style.color="#FFECEC",t.style.textAlign="center",t.style.width="100%",e.appendChild(t),this.scannerPausedUiElement=t},e.prototype.scanContext=function(e,t){var r=this;return this.stateManagerProxy.isPaused()?Promise.resolve(!1):this.qrcode.decodeAsync(this.canvasElement).then(function(t){return e(t.text,I.createFromQrcodeResult(t)),r.possiblyUpdateShaders(!0),!0}).catch(function(e){r.possiblyUpdateShaders(!1);var n=T.codeParseError(e);return t(n,S.createFrom(n)),!1})},e.prototype.foreverScan=function(e,t,r){var n=this;if(!!this.shouldScan&&!!this.renderedCamera){var i=this.renderedCamera.getSurface(),o=i.videoWidth/i.clientWidth,a=i.videoHeight/i.clientHeight;if(!this.qrRegion)throw"qrRegion undefined when localMediaStream is ready.";var s=this.qrRegion.width*o,l=this.qrRegion.height*a,c=this.qrRegion.x*o,u=this.qrRegion.y*a;this.context.drawImage(i,c,u,s,l,0,0,this.qrRegion.width,this.qrRegion.height);var h=function(){n.foreverScanTimeout=setTimeout(function(){n.foreverScan(e,t,r)},n.getTimeoutFps(e.fps))};this.scanContext(t,r).then(function(i){i||!0===e.disableFlip?h():(n.context.translate(n.context.canvas.width,0),n.context.scale(-1,1),n.scanContext(t,r).finally(function(){h()}))}).catch(function(e){n.logger.logError("Error happend while scanning context",e),h()})}},e.prototype.createVideoConstraints=function(e){if("string"==typeof e)return{deviceId:{exact:e}};if("object"==typeof e){var t="facingMode",r="deviceId",n={user:!0,environment:!0},i="exact",o=function(e){if(e in n)return!0;throw"config has invalid 'facingMode' value = "+"'".concat(e,"'")},a=Object.keys(e);if(1!==a.length)throw"'cameraIdOrConfig' object should have exactly 1 key,"+" if passed as an object, found ".concat(a.length," keys");var s=Object.keys(e)[0];if(s!==t&&s!==r)throw"Only '".concat(t,"' and '").concat(r,"' ")+" are supported for 'cameraIdOrConfig'";if(s===t){var l=e.facingMode;if("string"==typeof l){if(o(l))return{facingMode:l}}else if("object"==typeof l){if(i in l){if(o(l["".concat(i)]))return{facingMode:{exact:l["".concat(i)]}}}else throw"'facingMode' should be string or object with"+" ".concat(i," as key.")}else{var c=typeof l;throw"Invalid type of 'facingMode' = ".concat(c)}}else{var u=e.deviceId;if("string"==typeof u)return{deviceId:u};if("object"==typeof u){if(i in u)return{deviceId:{exact:u["".concat(i)]}};throw"'deviceId' should be string or object with"+" ".concat(i," as key.")}else{var h=typeof u;throw"Invalid type of 'deviceId' = ".concat(h)}}}var d=typeof e;throw"Invalid type of 'cameraIdOrConfig' = ".concat(d)},e.prototype.computeCanvasDrawConfig=function(e,t,r,n){if(e<=r&&t<=n)return{x:(r-e)/2,y:(n-t)/2,width:e,height:t};var i=e,o=t;return e>r&&(t=r/e*t,e=r),t>n&&(e=n/t*e,t=n),this.logger.log("Image downsampled from "+"".concat(i,"X").concat(o)+" to ".concat(e,"X").concat(t,".")),this.computeCanvasDrawConfig(e,t,r,n)},e.prototype.clearElement=function(){if(this.stateManagerProxy.isScanning())throw"Cannot clear while scan is ongoing, close it first.";var e=document.getElementById(this.elementId);e&&(e.innerHTML="")},e.prototype.possiblyUpdateShaders=function(e){if(this.qrMatch!==e)this.hasBorderShaders&&this.borderShaders&&this.borderShaders.length&&this.borderShaders.forEach(function(t){t.style.backgroundColor=e?ee.BORDER_SHADER_MATCH_COLOR:ee.BORDER_SHADER_DEFAULT_COLOR}),this.qrMatch=e},e.prototype.possiblyCloseLastScanImageFile=function(){this.lastScanImageFile&&(URL.revokeObjectURL(this.lastScanImageFile),this.lastScanImageFile=null)},e.prototype.createCanvasElement=function(e,t,r){var n=document.createElement("canvas");return n.style.width="".concat(e,"px"),n.style.height="".concat(t,"px"),n.style.display="none",n.id=_(r)?"qr-canvas":r,n},e.prototype.getShadedRegionBounds=function(e,t,r){if(r.width>e||r.height>t)throw"'config.qrbox' dimensions should not be greater than the dimensions of the root HTML element.";return{x:(e-r.width)/2,y:(t-r.height)/2,width:r.width,height:r.height}},e.prototype.possiblyInsertShadingElement=function(e,t,r,n){if(!(t-n.width<1)&&!(r-n.height<1)){var i=document.createElement("div");i.style.position="absolute";var o=(t-n.width)/2,a=(r-n.height)/2;i.style.borderLeft="".concat(o,"px solid rgba(0, 0, 0, 0.48)"),i.style.borderRight="".concat(o,"px solid rgba(0, 0, 0, 0.48)"),i.style.borderTop="".concat(a,"px solid rgba(0, 0, 0, 0.48)"),i.style.borderBottom="".concat(a,"px solid rgba(0, 0, 0, 0.48)"),i.style.boxSizing="border-box",i.style.top="0px",i.style.bottom="0px",i.style.left="0px",i.style.right="0px",i.id="".concat(ee.SHADED_REGION_ELEMENT_ID),t-n.width<11||r-n.height<11?this.hasBorderShaders=!1:(this.insertShaderBorders(i,40,5,-5,null,0,!0),this.insertShaderBorders(i,40,5,-5,null,0,!1),this.insertShaderBorders(i,40,5,null,-5,0,!0),this.insertShaderBorders(i,40,5,null,-5,0,!1),this.insertShaderBorders(i,5,45,-5,null,-5,!0),this.insertShaderBorders(i,5,45,null,-5,-5,!0),this.insertShaderBorders(i,5,45,-5,null,-5,!1),this.insertShaderBorders(i,5,45,null,-5,-5,!1),this.hasBorderShaders=!0),e.append(i)}},e.prototype.insertShaderBorders=function(e,t,r,n,i,o,a){var s=document.createElement("div");s.style.position="absolute",s.style.backgroundColor=ee.BORDER_SHADER_DEFAULT_COLOR,s.style.width="".concat(t,"px"),s.style.height="".concat(r,"px"),null!==n&&(s.style.top="".concat(n,"px")),null!==i&&(s.style.bottom="".concat(i,"px")),a?s.style.left="".concat(o,"px"):s.style.right="".concat(o,"px"),!this.borderShaders&&(this.borderShaders=[]),this.borderShaders.push(s),e.appendChild(s)},e.prototype.showPausedState=function(){if(!this.scannerPausedUiElement)throw"[internal error] scanner paused UI element not found";this.scannerPausedUiElement.style.display="block"},e.prototype.hidePausedState=function(){if(!this.scannerPausedUiElement)throw"[internal error] scanner paused UI element not found";this.scannerPausedUiElement.style.display="none"},e.prototype.getTimeoutFps=function(e){return 1e3/e},e}(),en="data:image/svg+xml;base64,",ei=en+"PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAzNzEuNjQzIDM3MS42NDMiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDM3MS42NDMgMzcxLjY0MyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PHBhdGggZD0iTTEwNS4wODQgMzguMjcxaDE2My43Njh2MjBIMTA1LjA4NHoiLz48cGF0aCBkPSJNMzExLjU5NiAxOTAuMTg5Yy03LjQ0MS05LjM0Ny0xOC40MDMtMTYuMjA2LTMyLjc0My0yMC41MjJWMzBjMC0xNi41NDItMTMuNDU4LTMwLTMwLTMwSDEyNS4wODRjLTE2LjU0MiAwLTMwIDEzLjQ1OC0zMCAzMHYxMjAuMTQzaC04LjI5NmMtMTYuNTQyIDAtMzAgMTMuNDU4LTMwIDMwdjEuMzMzYTI5LjgwNCAyOS44MDQgMCAwIDAgNC42MDMgMTUuOTM5Yy03LjM0IDUuNDc0LTEyLjEwMyAxNC4yMjEtMTIuMTAzIDI0LjA2MXYxLjMzM2MwIDkuODQgNC43NjMgMTguNTg3IDEyLjEwMyAyNC4wNjJhMjkuODEgMjkuODEgMCAwIDAtNC42MDMgMTUuOTM4djEuMzMzYzAgMTYuNTQyIDEzLjQ1OCAzMCAzMCAzMGg4LjMyNGMuNDI3IDExLjYzMSA3LjUwMyAyMS41ODcgMTcuNTM0IDI2LjE3Ny45MzEgMTAuNTAzIDQuMDg0IDMwLjE4NyAxNC43NjggNDUuNTM3YTkuOTg4IDkuOTg4IDAgMCAwIDguMjE2IDQuMjg4IDkuOTU4IDkuOTU4IDAgMCAwIDUuNzA0LTEuNzkzYzQuNTMzLTMuMTU1IDUuNjUtOS4zODggMi40OTUtMTMuOTIxLTYuNzk4LTkuNzY3LTkuNjAyLTIyLjYwOC0xMC43Ni0zMS40aDgyLjY4NWMuMjcyLjQxNC41NDUuODE4LjgxNSAxLjIxIDMuMTQyIDQuNTQxIDkuMzcyIDUuNjc5IDEzLjkxMyAyLjUzNCA0LjU0Mi0zLjE0MiA1LjY3Ny05LjM3MSAyLjUzNS0xMy45MTMtMTEuOTE5LTE3LjIyOS04Ljc4Ny0zNS44ODQgOS41ODEtNTcuMDEyIDMuMDY3LTIuNjUyIDEyLjMwNy0xMS43MzIgMTEuMjE3LTI0LjAzMy0uODI4LTkuMzQzLTcuMTA5LTE3LjE5NC0xOC42NjktMjMuMzM3YTkuODU3IDkuODU3IDAgMCAwLTEuMDYxLS40ODZjLS40NjYtLjE4Mi0xMS40MDMtNC41NzktOS43NDEtMTUuNzA2IDEuMDA3LTYuNzM3IDE0Ljc2OC04LjI3MyAyMy43NjYtNy42NjYgMjMuMTU2IDEuNTY5IDM5LjY5OCA3LjgwMyA0Ny44MzYgMTguMDI2IDUuNzUyIDcuMjI1IDcuNjA3IDE2LjYyMyA1LjY3MyAyOC43MzMtLjQxMyAyLjU4NS0uODI0IDUuMjQxLTEuMjQ1IDcuOTU5LTUuNzU2IDM3LjE5NC0xMi45MTkgODMuNDgzLTQ5Ljg3IDExNC42NjEtNC4yMjEgMy41NjEtNC43NTYgOS44Ny0xLjE5NCAxNC4wOTJhOS45OCA5Ljk4IDAgMCAwIDcuNjQ4IDMuNTUxIDkuOTU1IDkuOTU1IDAgMCAwIDYuNDQ0LTIuMzU4YzQyLjY3Mi0zNi4wMDUgNTAuODAyLTg4LjUzMyA1Ni43MzctMTI2Ljg4OC40MTUtMi42ODQuODIxLTUuMzA5IDEuMjI5LTcuODYzIDIuODM0LTE3LjcyMS0uNDU1LTMyLjY0MS05Ljc3Mi00NC4zNDV6bS0yMzIuMzA4IDQyLjYyYy01LjUxNCAwLTEwLTQuNDg2LTEwLTEwdi0xLjMzM2MwLTUuNTE0IDQuNDg2LTEwIDEwLTEwaDE1djIxLjMzM2gtMTV6bS0yLjUtNTIuNjY2YzAtNS41MTQgNC40ODYtMTAgMTAtMTBoNy41djIxLjMzM2gtNy41Yy01LjUxNCAwLTEwLTQuNDg2LTEwLTEwdi0xLjMzM3ptMTcuNSA5My45OTloLTcuNWMtNS41MTQgMC0xMC00LjQ4Ni0xMC0xMHYtMS4zMzNjMC01LjUxNCA0LjQ4Ni0xMCAxMC0xMGg3LjV2MjEuMzMzem0zMC43OTYgMjguODg3Yy01LjUxNCAwLTEwLTQuNDg2LTEwLTEwdi04LjI3MWg5MS40NTdjLS44NTEgNi42NjgtLjQzNyAxMi43ODcuNzMxIDE4LjI3MWgtODIuMTg4em03OS40ODItMTEzLjY5OGMtMy4xMjQgMjAuOTA2IDEyLjQyNyAzMy4xODQgMjEuNjI1IDM3LjA0IDUuNDQxIDIuOTY4IDcuNTUxIDUuNjQ3IDcuNzAxIDcuMTg4LjIxIDIuMTUtMi41NTMgNS42ODQtNC40NzcgNy4yNTEtLjQ4Mi4zNzgtLjkyOS44LTEuMzM1IDEuMjYxLTYuOTg3IDcuOTM2LTExLjk4MiAxNS41Mi0xNS40MzIgMjIuNjg4aC05Ny41NjRWMzBjMC01LjUxNCA0LjQ4Ni0xMCAxMC0xMGgxMjMuNzY5YzUuNTE0IDAgMTAgNC40ODYgMTAgMTB2MTM1LjU3OWMtMy4wMzItLjM4MS02LjE1LS42OTQtOS4zODktLjkxNC0yNS4xNTktMS42OTQtNDIuMzcgNy43NDgtNDQuODk4IDI0LjY2NnoiLz48cGF0aCBkPSJNMTc5LjEyOSA4My4xNjdoLTI0LjA2YTUgNSAwIDAgMC01IDV2MjQuMDYxYTUgNSAwIDAgMCA1IDVoMjQuMDZhNSA1IDAgMCAwIDUtNVY4OC4xNjdhNSA1IDAgMCAwLTUtNXpNMTcyLjYyOSAxNDIuODZoLTEyLjU2VjEzMC44YTUgNSAwIDEgMC0xMCAwdjE3LjA2MWE1IDUgMCAwIDAgNSA1aDE3LjU2YTUgNSAwIDEgMCAwLTEwLjAwMXpNMjE2LjU2OCA4My4xNjdoLTI0LjA2YTUgNSAwIDAgMC01IDV2MjQuMDYxYTUgNSAwIDAgMCA1IDVoMjQuMDZhNSA1IDAgMCAwIDUtNVY4OC4xNjdhNSA1IDAgMCAwLTUtNXptLTUgMjQuMDYxaC0xNC4wNlY5My4xNjdoMTQuMDZ2MTQuMDYxek0yMTEuNjY5IDEyNS45MzZIMTk3LjQxYTUgNSAwIDAgMC01IDV2MTQuMjU3YTUgNSAwIDAgMCA1IDVoMTQuMjU5YTUgNSAwIDAgMCA1LTV2LTE0LjI1N2E1IDUgMCAwIDAtNS01eiIvPjwvc3ZnPg==",eo=en+"PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1OS4wMTggNTkuMDE4IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCA1OS4wMTggNTkuMDE4IiB4bWw6c3BhY2U9InByZXNlcnZlIj48cGF0aCBkPSJtNTguNzQxIDU0LjgwOS01Ljk2OS02LjI0NGExMC43NCAxMC43NCAwIDAgMCAyLjgyLTcuMjVjMC01Ljk1My00Ljg0My0xMC43OTYtMTAuNzk2LTEwLjc5NlMzNCAzNS4zNjEgMzQgNDEuMzE0IDM4Ljg0MyA1Mi4xMSA0NC43OTYgNTIuMTFjMi40NDEgMCA0LjY4OC0uODI0IDYuNDk5LTIuMTk2bDYuMDAxIDYuMjc3YS45OTguOTk4IDAgMCAwIDEuNDE0LjAzMiAxIDEgMCAwIDAgLjAzMS0xLjQxNHpNMzYgNDEuMzE0YzAtNC44NSAzLjk0Ni04Ljc5NiA4Ljc5Ni04Ljc5NnM4Ljc5NiAzLjk0NiA4Ljc5NiA4Ljc5Ni0zLjk0NiA4Ljc5Ni04Ljc5NiA4Ljc5NlMzNiA0Ni4xNjQgMzYgNDEuMzE0ek0xMC40MzEgMTYuMDg4YzAgMy4wNyAyLjQ5OCA1LjU2OCA1LjU2OSA1LjU2OHM1LjU2OS0yLjQ5OCA1LjU2OS01LjU2OGMwLTMuMDcxLTIuNDk4LTUuNTY5LTUuNTY5LTUuNTY5cy01LjU2OSAyLjQ5OC01LjU2OSA1LjU2OXptOS4xMzggMGMwIDEuOTY4LTEuNjAyIDMuNTY4LTMuNTY5IDMuNTY4cy0zLjU2OS0xLjYwMS0zLjU2OS0zLjU2OCAxLjYwMi0zLjU2OSAzLjU2OS0zLjU2OSAzLjU2OSAxLjYwMSAzLjU2OSAzLjU2OXoiLz48cGF0aCBkPSJtMzAuODgyIDI4Ljk4NyA5LjE4LTEwLjA1NCAxMS4yNjIgMTAuMzIzYTEgMSAwIDAgMCAxLjM1MS0xLjQ3NWwtMTItMTFhMSAxIDAgMCAwLTEuNDE0LjA2M2wtOS43OTQgMTAuNzI3LTQuNzQzLTQuNzQzYTEuMDAzIDEuMDAzIDAgMCAwLTEuMzY4LS4wNDRMNi4zMzkgMzcuNzY4YTEgMSAwIDEgMCAxLjMyMiAxLjUwMWwxNi4zMTMtMTQuMzYyIDcuMzE5IDcuMzE4YS45OTkuOTk5IDAgMSAwIDEuNDE0LTEuNDE0bC0xLjgyNS0xLjgyNHoiLz48cGF0aCBkPSJNMzAgNDYuNTE4SDJ2LTQyaDU0djI4YTEgMSAwIDEgMCAyIDB2LTI5YTEgMSAwIDAgMC0xLTFIMWExIDEgMCAwIDAtMSAxdjQ0YTEgMSAwIDAgMCAxIDFoMjlhMSAxIDAgMSAwIDAtMnoiLz48L3N2Zz4=",ea=en+"PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0NjAgNDYwIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCA0NjAgNDYwIiB4bWw6c3BhY2U9InByZXNlcnZlIj48cGF0aCBkPSJNMjMwIDBDMTAyLjk3NSAwIDAgMTAyLjk3NSAwIDIzMHMxMDIuOTc1IDIzMCAyMzAgMjMwIDIzMC0xMDIuOTc0IDIzMC0yMzBTMzU3LjAyNSAwIDIzMCAwem0zOC4zMzMgMzc3LjM2YzAgOC42NzYtNy4wMzQgMTUuNzEtMTUuNzEgMTUuNzFoLTQzLjEwMWMtOC42NzYgMC0xNS43MS03LjAzNC0xNS43MS0xNS43MVYyMDIuNDc3YzAtOC42NzYgNy4wMzMtMTUuNzEgMTUuNzEtMTUuNzFoNDMuMTAxYzguNjc2IDAgMTUuNzEgNy4wMzMgMTUuNzEgMTUuNzFWMzc3LjM2ek0yMzAgMTU3Yy0yMS41MzkgMC0zOS0xNy40NjEtMzktMzlzMTcuNDYxLTM5IDM5LTM5IDM5IDE3LjQ2MSAzOSAzOS0xNy40NjEgMzktMzkgMzl6Ii8+PC9zdmc+",es=function(){function e(){}return e.createDefault=function(){return{hasPermission:!1,lastUsedCameraId:null}},e}(),el=function(){function e(){this.data=es.createDefault();var t=localStorage.getItem(e.LOCAL_STORAGE_KEY);t?this.data=JSON.parse(t):this.reset()}return e.prototype.hasCameraPermissions=function(){return this.data.hasPermission},e.prototype.getLastUsedCameraId=function(){return this.data.lastUsedCameraId},e.prototype.setHasPermission=function(e){this.data.hasPermission=e,this.flush()},e.prototype.setLastUsedCameraId=function(e){this.data.lastUsedCameraId=e,this.flush()},e.prototype.resetLastUsedCameraId=function(){this.data.lastUsedCameraId=null,this.flush()},e.prototype.reset=function(){this.data=es.createDefault(),this.flush()},e.prototype.flush=function(){localStorage.setItem(e.LOCAL_STORAGE_KEY,JSON.stringify(this.data))},e.LOCAL_STORAGE_KEY="HTML5_QRCODE_DATA",e}(),ec=function(){function e(){this.infoDiv=document.createElement("div")}return e.prototype.renderInto=function(e){this.infoDiv.style.position="absolute",this.infoDiv.style.top="10px",this.infoDiv.style.right="10px",this.infoDiv.style.zIndex="2",this.infoDiv.style.display="none",this.infoDiv.style.padding="5pt",this.infoDiv.style.border="1px solid #171717",this.infoDiv.style.fontSize="10pt",this.infoDiv.style.background="rgb(0 0 0 / 69%)",this.infoDiv.style.borderRadius="5px",this.infoDiv.style.textAlign="center",this.infoDiv.style.fontWeight="400",this.infoDiv.style.color="white",this.infoDiv.innerText=M.poweredBy();var t=document.createElement("a");t.innerText="ScanApp",t.href="https://scanapp.org",t.target="new",t.style.color="white",this.infoDiv.appendChild(t);var r=document.createElement("br"),n=document.createElement("br");this.infoDiv.appendChild(r),this.infoDiv.appendChild(n);var i=document.createElement("a");i.innerText=M.reportIssues(),i.href="https://github.com/mebjas/html5-qrcode/issues",i.target="new",i.style.color="white",this.infoDiv.appendChild(i),e.appendChild(this.infoDiv)},e.prototype.show=function(){this.infoDiv.style.display="block"},e.prototype.hide=function(){this.infoDiv.style.display="none"},e}(),eu=function(){function e(e,t){this.isShowingInfoIcon=!0,this.onTapIn=e,this.onTapOut=t,this.infoIcon=document.createElement("img")}return e.prototype.renderInto=function(e){var t=this;this.infoIcon.alt="Info icon",this.infoIcon.src=ea,this.infoIcon.style.position="absolute",this.infoIcon.style.top="4px",this.infoIcon.style.right="4px",this.infoIcon.style.opacity="0.6",this.infoIcon.style.cursor="pointer",this.infoIcon.style.zIndex="2",this.infoIcon.style.width="16px",this.infoIcon.style.height="16px",this.infoIcon.onmouseover=function(e){return t.onHoverIn()},this.infoIcon.onmouseout=function(e){return t.onHoverOut()},this.infoIcon.onclick=function(e){return t.onClick()},e.appendChild(this.infoIcon)},e.prototype.onHoverIn=function(){this.isShowingInfoIcon&&(this.infoIcon.style.opacity="1")},e.prototype.onHoverOut=function(){this.isShowingInfoIcon&&(this.infoIcon.style.opacity="0.6")},e.prototype.onClick=function(){this.isShowingInfoIcon?(this.isShowingInfoIcon=!1,this.onTapIn(),this.infoIcon.src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAAQgAAAEIBarqQRAAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAE1SURBVDiNfdI7S0NBEAXgLya1otFgpbYSbISAgpXYi6CmiH9KCAiChaVga6OiWPgfRDQ+0itaGVNosXtluWwcuMzePfM4M3sq8lbHBubwg1dc4m1E/J/N4ghDPOIsfk/4xiEao5KX0McFljN4C9d4QTPXuY99jP3DsIoDPGM6BY5i5yI5R7O4q+ImFkJY2DCh3cAH2klyB+9J1xUMMAG7eCh1a+Mr+k48b5diXrFVwwLuS+BJ9MfR7+G0FHOHhTHhnXNWS87VDF4pcnfQK4Ep7XScNLmPTZgURNKKYENYWDpzW1BhscS1WHS8CDgURFJQrWcoF3c13KKbgg1BYQfy8xZWEzTTw1QZbAoKu8FqJnktdu5hcVSHmchiILzzuaDQvjBzV2m8yohCE1jHfPx/xhU+y4G/D75ELlRJsSYAAAAASUVORK5CYII=",this.infoIcon.style.opacity="1"):(this.isShowingInfoIcon=!0,this.onTapOut(),this.infoIcon.src=ea,this.infoIcon.style.opacity="0.6")},e}(),eh=function(){function e(){var e=this;this.infoDiv=new ec,this.infoIcon=new eu(function(){e.infoDiv.show()},function(){e.infoDiv.hide()})}return e.prototype.renderInto=function(e){this.infoDiv.renderInto(e),this.infoIcon.renderInto(e)},e}(),ed=function(e,t){var r,n,i,o,a={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(s){return function(l){return function(s){if(r)throw TypeError("Generator is already executing.");for(;o&&(o=0,s[0]&&(a=0)),a;)try{if(r=1,n&&(i=2&s[0]?n.return:s[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,s[1])).done)return i;switch(n=0,i&&(s=[2&s[0],i.value]),s[0]){case 0:case 1:i=s;break;case 4:return a.label++,{value:s[1],done:!1};case 5:a.label++,n=s[1],s=[0];continue;case 7:s=a.ops.pop(),a.trys.pop();continue;default:if(!(i=(i=a.trys).length>0&&i[i.length-1])&&(6===s[0]||2===s[0])){a=0;continue}if(3===s[0]&&(!i||s[1]>i[0]&&s[1]<i[3])){a.label=s[1];break}if(6===s[0]&&a.label<i[1]){a.label=i[1],i=s;break}if(i&&a.label<i[2]){a.label=i[2],a.ops.push(s);break}i[2]&&a.ops.pop(),a.trys.pop();continue}s=t.call(e,a)}catch(e){s=[6,e],n=0}finally{r=i=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,l])}}},ef=function(){function e(){}return e.hasPermissions=function(){var e,t,r,n;return e=this,t=void 0,r=void 0,n=function(){var e,t,r,n;return ed(this,function(i){switch(i.label){case 0:return[4,navigator.mediaDevices.enumerateDevices()];case 1:for(t=0,e=i.sent(),r=e;t<r.length;t++)if("videoinput"===(n=r[t]).kind&&n.label)return[2,!0];return[2,!1]}})},new(r||(r=Promise))(function(i,o){function a(e){try{l(n.next(e))}catch(e){o(e)}}function s(e){try{l(n.throw(e))}catch(e){o(e)}}function l(e){var t;e.done?i(e.value):((t=e.value)instanceof r?t:new r(function(e){e(t)})).then(a,s)}l((n=n.apply(e,t||[])).next())})},e}(),eg=function(){function e(e){this.supportedScanTypes=this.validateAndReturnScanTypes(e)}return e.prototype.getDefaultScanType=function(){return this.supportedScanTypes[0]},e.prototype.hasMoreThanOneScanType=function(){return this.supportedScanTypes.length>1},e.prototype.isCameraScanRequired=function(){for(var t=0,r=this.supportedScanTypes;t<r.length;t++){var n=r[t];if(e.isCameraScanType(n))return!0}return!1},e.isCameraScanType=function(e){return e===u.SCAN_TYPE_CAMERA},e.isFileScanType=function(e){return e===u.SCAN_TYPE_FILE},e.prototype.validateAndReturnScanTypes=function(e){if(!e||0===e.length)return C.DEFAULT_SUPPORTED_SCAN_TYPE;var t=C.DEFAULT_SUPPORTED_SCAN_TYPE.length;if(e.length>t)throw"Max ".concat(t," values expected for ")+"supportedScanTypes";for(var r=0;r<e.length;r++){var n=e[r];if(!C.DEFAULT_SUPPORTED_SCAN_TYPE.includes(n))throw"Unsupported scan type ".concat(n)}return e},e}(),ep=function(){function e(){}return e.ALL_ELEMENT_CLASS="html5-qrcode-element",e.CAMERA_PERMISSION_BUTTON_ID="html5-qrcode-button-camera-permission",e.CAMERA_START_BUTTON_ID="html5-qrcode-button-camera-start",e.CAMERA_STOP_BUTTON_ID="html5-qrcode-button-camera-stop",e.TORCH_BUTTON_ID="html5-qrcode-button-torch",e.CAMERA_SELECTION_SELECT_ID="html5-qrcode-select-camera",e.FILE_SELECTION_BUTTON_ID="html5-qrcode-button-file-selection",e.ZOOM_SLIDER_ID="html5-qrcode-input-range-zoom",e.SCAN_TYPE_CHANGE_ANCHOR_ID="html5-qrcode-anchor-scan-type-change",e.TORCH_BUTTON_CLASS_TORCH_ON="html5-qrcode-button-torch-on",e.TORCH_BUTTON_CLASS_TORCH_OFF="html5-qrcode-button-torch-off",e}(),em=function(){function e(){}return e.createElement=function(e,t){var r=document.createElement(e);return r.id=t,r.classList.add(ep.ALL_ELEMENT_CLASS),"button"===e&&r.setAttribute("type","button"),r},e}(),ew=function(e,t,r,n){return new(r||(r=Promise))(function(i,o){function a(e){try{l(n.next(e))}catch(e){o(e)}}function s(e){try{l(n.throw(e))}catch(e){o(e)}}function l(e){var t;e.done?i(e.value):((t=e.value)instanceof r?t:new r(function(e){e(t)})).then(a,s)}l((n=n.apply(e,t||[])).next())})},eA=function(e,t){var r,n,i,o,a={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(s){return function(l){return function(s){if(r)throw TypeError("Generator is already executing.");for(;o&&(o=0,s[0]&&(a=0)),a;)try{if(r=1,n&&(i=2&s[0]?n.return:s[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,s[1])).done)return i;switch(n=0,i&&(s=[2&s[0],i.value]),s[0]){case 0:case 1:i=s;break;case 4:return a.label++,{value:s[1],done:!1};case 5:a.label++,n=s[1],s=[0];continue;case 7:s=a.ops.pop(),a.trys.pop();continue;default:if(!(i=(i=a.trys).length>0&&i[i.length-1])&&(6===s[0]||2===s[0])){a=0;continue}if(3===s[0]&&(!i||s[1]>i[0]&&s[1]<i[3])){a.label=s[1];break}if(6===s[0]&&a.label<i[1]){a.label=i[1],i=s;break}if(i&&a.label<i[2]){a.label=i[2],a.ops.push(s);break}i[2]&&a.ops.pop(),a.trys.pop();continue}s=t.call(e,a)}catch(e){s=[6,e],n=0}finally{r=i=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,l])}}},eC=function(){function e(e,t,r){this.isTorchOn=!1,this.torchCapability=e,this.buttonController=t,this.onTorchActionFailureCallback=r}return e.prototype.isTorchEnabled=function(){return this.isTorchOn},e.prototype.flipState=function(){return ew(this,void 0,void 0,function(){var e,t;return eA(this,function(r){switch(r.label){case 0:this.buttonController.disable(),e=!this.isTorchOn,r.label=1;case 1:return r.trys.push([1,3,,4]),[4,this.torchCapability.apply(e)];case 2:return r.sent(),this.updateUiBasedOnLatestSettings(this.torchCapability.value(),e),[3,4];case 3:return t=r.sent(),this.propagateFailure(e,t),this.buttonController.enable(),[3,4];case 4:return[2]}})})},e.prototype.updateUiBasedOnLatestSettings=function(e,t){e===t?(this.buttonController.setText(t?N.torchOffButton():N.torchOnButton()),this.isTorchOn=t):this.propagateFailure(t),this.buttonController.enable()},e.prototype.propagateFailure=function(e,t){var r=e?N.torchOnFailedMessage():N.torchOffFailedMessage();t&&(r+="; Error = "+t),this.onTorchActionFailureCallback(r)},e.prototype.reset=function(){this.isTorchOn=!1},e}(),eE=function(){function e(e,t){this.onTorchActionFailureCallback=t,this.torchButton=em.createElement("button",ep.TORCH_BUTTON_ID),this.torchController=new eC(e,this,t)}return e.prototype.render=function(e,t){var r=this;this.torchButton.innerText=N.torchOnButton(),this.torchButton.style.display=t.display,this.torchButton.style.marginLeft=t.marginLeft;var n=this;this.torchButton.addEventListener("click",function(e){return ew(r,void 0,void 0,function(){return eA(this,function(e){switch(e.label){case 0:return[4,n.torchController.flipState()];case 1:return e.sent(),n.torchController.isTorchEnabled()?(n.torchButton.classList.remove(ep.TORCH_BUTTON_CLASS_TORCH_OFF),n.torchButton.classList.add(ep.TORCH_BUTTON_CLASS_TORCH_ON)):(n.torchButton.classList.remove(ep.TORCH_BUTTON_CLASS_TORCH_ON),n.torchButton.classList.add(ep.TORCH_BUTTON_CLASS_TORCH_OFF)),[2]}})})}),e.appendChild(this.torchButton)},e.prototype.updateTorchCapability=function(e){this.torchController=new eC(e,this,this.onTorchActionFailureCallback)},e.prototype.getTorchButton=function(){return this.torchButton},e.prototype.hide=function(){this.torchButton.style.display="none"},e.prototype.show=function(){this.torchButton.style.display="inline-block"},e.prototype.disable=function(){this.torchButton.disabled=!0},e.prototype.enable=function(){this.torchButton.disabled=!1},e.prototype.setText=function(e){this.torchButton.innerText=e},e.prototype.reset=function(){this.torchButton.innerText=N.torchOnButton(),this.torchController.reset()},e.create=function(t,r,n,i){var o=new e(r,i);return o.render(t,n),o},e}(),eI=function(){function e(e,t,r){this.fileBasedScanRegion=this.createFileBasedScanRegion(),this.fileBasedScanRegion.style.display=t?"block":"none",e.appendChild(this.fileBasedScanRegion);var n=document.createElement("label");n.setAttribute("for",this.getFileScanInputId()),n.style.display="inline-block",this.fileBasedScanRegion.appendChild(n),this.fileSelectionButton=em.createElement("button",ep.FILE_SELECTION_BUTTON_ID),this.setInitialValueToButton(),this.fileSelectionButton.addEventListener("click",function(e){n.click()}),n.append(this.fileSelectionButton),this.fileScanInput=em.createElement("input",this.getFileScanInputId()),this.fileScanInput.type="file",this.fileScanInput.accept="image/*",this.fileScanInput.style.display="none",n.appendChild(this.fileScanInput);var i=this;this.fileScanInput.addEventListener("change",function(e){if(null==e||null==e.target)return;var t=e.target;if(!t.files||0!==t.files.length){var n=t.files[0],o=n.name;i.setImageNameToButton(o),r(n)}});var o=this.createDragAndDropMessage();this.fileBasedScanRegion.appendChild(o),this.fileBasedScanRegion.addEventListener("dragenter",function(e){i.fileBasedScanRegion.style.border=i.fileBasedScanRegionActiveBorder(),e.stopPropagation(),e.preventDefault()}),this.fileBasedScanRegion.addEventListener("dragleave",function(e){i.fileBasedScanRegion.style.border=i.fileBasedScanRegionDefaultBorder(),e.stopPropagation(),e.preventDefault()}),this.fileBasedScanRegion.addEventListener("dragover",function(e){i.fileBasedScanRegion.style.border=i.fileBasedScanRegionActiveBorder(),e.stopPropagation(),e.preventDefault()}),this.fileBasedScanRegion.addEventListener("drop",function(e){e.stopPropagation(),e.preventDefault(),i.fileBasedScanRegion.style.border=i.fileBasedScanRegionDefaultBorder();var t=e.dataTransfer;if(t){var n=t.files;if(!n||0===n.length)return;for(var a=!1,s=0;s<n.length;++s){var l=n.item(s);if(!l)continue;var c=/image.*/;if(!!l.type.match(c)){a=!0;var u=l.name;i.setImageNameToButton(u),r(l),o.innerText=N.dragAndDropMessage();break}}!a&&(o.innerText=N.dragAndDropMessageOnlyImages())}})}return e.prototype.hide=function(){this.fileBasedScanRegion.style.display="none",this.fileScanInput.disabled=!0},e.prototype.show=function(){this.fileBasedScanRegion.style.display="block",this.fileScanInput.disabled=!1},e.prototype.isShowing=function(){return"block"===this.fileBasedScanRegion.style.display},e.prototype.resetValue=function(){this.fileScanInput.value="",this.setInitialValueToButton()},e.prototype.createFileBasedScanRegion=function(){var e=document.createElement("div");return e.style.textAlign="center",e.style.margin="auto",e.style.width="80%",e.style.maxWidth="600px",e.style.border=this.fileBasedScanRegionDefaultBorder(),e.style.padding="10px",e.style.marginBottom="10px",e},e.prototype.fileBasedScanRegionDefaultBorder=function(){return"6px dashed #ebebeb"},e.prototype.fileBasedScanRegionActiveBorder=function(){return"6px dashed rgb(153 151 151)"},e.prototype.createDragAndDropMessage=function(){var e=document.createElement("div");return e.innerText=N.dragAndDropMessage(),e.style.fontWeight="400",e},e.prototype.setImageNameToButton=function(e){if(e.length>20){var t=e.substring(0,8),r=e.length,n=e.substring(r-8,r);e="".concat(t,"....").concat(n)}var i=N.fileSelectionChooseAnother()+" - "+e;this.fileSelectionButton.innerText=i},e.prototype.setInitialValueToButton=function(){var e=N.fileSelectionChooseImage()+" - "+N.fileSelectionNoImageSelected();this.fileSelectionButton.innerText=e},e.prototype.getFileScanInputId=function(){return"html5-qrcode-private-filescan-input"},e.create=function(t,r,n){return new e(t,r,n)},e}(),eS=function(){function e(e){this.selectElement=em.createElement("select",ep.CAMERA_SELECTION_SELECT_ID),this.cameras=e,this.options=[]}return e.prototype.render=function(e){var t=document.createElement("span");t.style.marginRight="10px";var r=this.cameras.length;if(0===r)throw Error("No cameras found");if(1===r)t.style.display="none";else{var n=N.selectCamera();t.innerText="".concat(n," (").concat(this.cameras.length,") ")}for(var i=1,o=0,a=this.cameras;o<a.length;o++){var s=a[o],l=s.id,c=null==s.label?l:s.label;(!c||""===c)&&(c=[N.anonymousCameraPrefix(),i++].join(" "));var u=document.createElement("option");u.value=l,u.innerText=c,this.options.push(u),this.selectElement.appendChild(u)}t.appendChild(this.selectElement),e.appendChild(t)},e.prototype.disable=function(){this.selectElement.disabled=!0},e.prototype.isDisabled=function(){return!0===this.selectElement.disabled},e.prototype.enable=function(){this.selectElement.disabled=!1},e.prototype.getValue=function(){return this.selectElement.value},e.prototype.hasValue=function(e){for(var t=0,r=this.options;t<r.length;t++)if(r[t].value===e)return!0;return!1},e.prototype.setValue=function(e){if(!this.hasValue(e))throw Error("".concat(e," is not present in the camera list."));this.selectElement.value=e},e.prototype.hasSingleItem=function(){return 1===this.cameras.length},e.prototype.numCameras=function(){return this.cameras.length},e.create=function(t,r){var n=new e(r);return n.render(t),n},e}(),ey=function(){function e(){this.onChangeCallback=null,this.zoomElementContainer=document.createElement("div"),this.rangeInput=em.createElement("input",ep.ZOOM_SLIDER_ID),this.rangeInput.type="range",this.rangeText=document.createElement("span"),this.rangeInput.min="1",this.rangeInput.max="5",this.rangeInput.value="1",this.rangeInput.step="0.1"}return e.prototype.render=function(e,t){this.zoomElementContainer.style.display=t?"block":"none",this.zoomElementContainer.style.padding="5px 10px",this.zoomElementContainer.style.textAlign="center",e.appendChild(this.zoomElementContainer),this.rangeInput.style.display="inline-block",this.rangeInput.style.width="50%",this.rangeInput.style.height="5px",this.rangeInput.style.background="#d3d3d3",this.rangeInput.style.outline="none",this.rangeInput.style.opacity="0.7";var r=N.zoom();this.rangeText.innerText="".concat(this.rangeInput.value,"x ").concat(r),this.rangeText.style.marginRight="10px";var n=this;this.rangeInput.addEventListener("input",function(){return n.onValueChange()}),this.rangeInput.addEventListener("change",function(){return n.onValueChange()}),this.zoomElementContainer.appendChild(this.rangeInput),this.zoomElementContainer.appendChild(this.rangeText)},e.prototype.onValueChange=function(){var e=N.zoom();this.rangeText.innerText="".concat(this.rangeInput.value,"x ").concat(e),this.onChangeCallback&&this.onChangeCallback(parseFloat(this.rangeInput.value))},e.prototype.setValues=function(e,t,r,n){this.rangeInput.min=e.toString(),this.rangeInput.max=t.toString(),this.rangeInput.step=n.toString(),this.rangeInput.value=r.toString(),this.onValueChange()},e.prototype.show=function(){this.zoomElementContainer.style.display="block"},e.prototype.hide=function(){this.zoomElementContainer.style.display="none"},e.prototype.setOnCameraZoomValueChangeCallback=function(e){this.onChangeCallback=e},e.prototype.removeOnCameraZoomValueChangeCallback=function(){this.onChangeCallback=null},e.create=function(t,r){var n=new e;return n.render(t,r),n},e}();(s=p||(p={}))[s.STATUS_DEFAULT=0]="STATUS_DEFAULT",s[s.STATUS_SUCCESS=1]="STATUS_SUCCESS",s[s.STATUS_WARNING=2]="STATUS_WARNING",s[s.STATUS_REQUESTING_PERMISSION=3]="STATUS_REQUESTING_PERMISSION";!function(){function e(e,t,r){if(this.lastMatchFound=null,this.cameraScanImage=null,this.fileScanImage=null,this.fileSelectionUi=null,this.elementId=e,this.config=this.createConfig(t),this.verbose=!0===r,!document.getElementById(e))throw"HTML Element with id=".concat(e," not found");this.scanTypeSelector=new eg(this.config.supportedScanTypes),this.currentScanType=this.scanTypeSelector.getDefaultScanType(),this.sectionSwapAllowed=!0,this.logger=new y(this.verbose),this.persistedDataManager=new el,!0!==t.rememberLastUsedCamera&&this.persistedDataManager.reset()}e.prototype.render=function(e,t){var r,n,i=this;this.lastMatchFound=null,this.qrCodeSuccessCallback=function(t,r){if(e)e(t,r);else{if(i.lastMatchFound===t)return;i.lastMatchFound=t,i.setHeaderMessage(N.lastMatch(t),p.STATUS_SUCCESS)}},this.qrCodeErrorCallback=function(e,r){t&&t(e,r)};var o=document.getElementById(this.elementId);if(!o)throw"HTML Element with id=".concat(this.elementId," not found");o.innerHTML="",this.createBasicLayout(o),this.html5Qrcode=new er(this.getScanRegionId(),(r=this.config,n=this.verbose,{formatsToSupport:r.formatsToSupport,useBarCodeDetectorIfSupported:r.useBarCodeDetectorIfSupported,experimentalFeatures:r.experimentalFeatures,verbose:n}))},e.prototype.pause=function(e){(_(e)||!0!==e)&&(e=!1),this.getHtml5QrcodeOrFail().pause(e)},e.prototype.resume=function(){this.getHtml5QrcodeOrFail().resume()},e.prototype.getState=function(){return this.getHtml5QrcodeOrFail().getState()},e.prototype.clear=function(){var e=this,t=function(){var t=document.getElementById(e.elementId);t&&(t.innerHTML="",e.resetBasicLayout(t))};return this.html5Qrcode?new Promise(function(r,n){if(!e.html5Qrcode){r();return}e.html5Qrcode.isScanning?e.html5Qrcode.stop().then(function(n){if(!e.html5Qrcode){r();return}e.html5Qrcode.clear(),t(),r()}).catch(function(t){e.verbose&&e.logger.logError("Unable to stop qrcode scanner",t),n(t)}):(e.html5Qrcode.clear(),t(),r())}):Promise.resolve()},e.prototype.getRunningTrackCapabilities=function(){return this.getHtml5QrcodeOrFail().getRunningTrackCapabilities()},e.prototype.getRunningTrackSettings=function(){return this.getHtml5QrcodeOrFail().getRunningTrackSettings()},e.prototype.applyVideoConstraints=function(e){return this.getHtml5QrcodeOrFail().applyVideoConstraints(e)},e.prototype.getHtml5QrcodeOrFail=function(){if(!this.html5Qrcode)throw"Code scanner not initialized.";return this.html5Qrcode},e.prototype.createConfig=function(e){return e?(!e.fps&&(e.fps=C.SCAN_DEFAULT_FPS),!C.DEFAULT_REMEMBER_LAST_CAMERA_USED!==e.rememberLastUsedCamera&&(e.rememberLastUsedCamera=C.DEFAULT_REMEMBER_LAST_CAMERA_USED),!e.supportedScanTypes&&(e.supportedScanTypes=C.DEFAULT_SUPPORTED_SCAN_TYPE),e):{fps:C.SCAN_DEFAULT_FPS,rememberLastUsedCamera:C.DEFAULT_REMEMBER_LAST_CAMERA_USED,supportedScanTypes:C.DEFAULT_SUPPORTED_SCAN_TYPE}},e.prototype.createBasicLayout=function(e){e.style.position="relative",e.style.padding="0px",e.style.border="1px solid silver",this.createHeader(e);var t=document.createElement("div"),r=this.getScanRegionId();t.id=r,t.style.width="100%",t.style.minHeight="100px",t.style.textAlign="center",e.appendChild(t),eg.isCameraScanType(this.currentScanType)?this.insertCameraScanImageToScanRegion():this.insertFileScanImageToScanRegion();var n=document.createElement("div"),i=this.getDashboardId();n.id=i,n.style.width="100%",e.appendChild(n),this.setupInitialDashboard(n)},e.prototype.resetBasicLayout=function(e){e.style.border="none"},e.prototype.setupInitialDashboard=function(e){this.createSection(e),this.createSectionControlPanel(),this.scanTypeSelector.hasMoreThanOneScanType()&&this.createSectionSwap()},e.prototype.createHeader=function(e){var t=document.createElement("div");t.style.textAlign="left",t.style.margin="0px",e.appendChild(t),new eh().renderInto(t);var r=document.createElement("div");r.id=this.getHeaderMessageContainerId(),r.style.display="none",r.style.textAlign="center",r.style.fontSize="14px",r.style.padding="2px 10px",r.style.margin="4px",r.style.borderTop="1px solid #f6f6f6",t.appendChild(r)},e.prototype.createSection=function(e){var t=document.createElement("div");t.id=this.getDashboardSectionId(),t.style.width="100%",t.style.padding="10px 0px 10px 0px",t.style.textAlign="left",e.appendChild(t)},e.prototype.createCameraListUi=function(e,t,r){var n=this;n.showHideScanTypeSwapLink(!1),n.setHeaderMessage(N.cameraPermissionRequesting());var i=function(){!r&&n.createPermissionButton(e,t)};er.getCameras().then(function(r){n.persistedDataManager.setHasPermission(!0),n.showHideScanTypeSwapLink(!0),n.resetHeaderMessage(),r&&r.length>0?(e.removeChild(t),n.renderCameraSelection(r)):(n.setHeaderMessage(N.noCameraFound(),p.STATUS_WARNING),i())}).catch(function(e){n.persistedDataManager.setHasPermission(!1),r?r.disabled=!1:i(),n.setHeaderMessage(e,p.STATUS_WARNING),n.showHideScanTypeSwapLink(!0)})},e.prototype.createPermissionButton=function(e,t){var r=this,n=em.createElement("button",this.getCameraPermissionButtonId());n.innerText=N.cameraPermissionTitle(),n.addEventListener("click",function(){n.disabled=!0,r.createCameraListUi(e,t,n)}),t.appendChild(n)},e.prototype.createPermissionsUi=function(e,t){var r=this;if(eg.isCameraScanType(this.currentScanType)&&this.persistedDataManager.hasCameraPermissions()){ef.hasPermissions().then(function(n){n?r.createCameraListUi(e,t):(r.persistedDataManager.setHasPermission(!1),r.createPermissionButton(e,t))}).catch(function(n){r.persistedDataManager.setHasPermission(!1),r.createPermissionButton(e,t)});return}this.createPermissionButton(e,t)},e.prototype.createSectionControlPanel=function(){var e=document.getElementById(this.getDashboardSectionId()),t=document.createElement("div");e.appendChild(t);var r=document.createElement("div");r.id=this.getDashboardSectionCameraScanRegionId(),r.style.display=eg.isCameraScanType(this.currentScanType)?"block":"none",t.appendChild(r);var n=document.createElement("div");n.style.textAlign="center",r.appendChild(n),this.scanTypeSelector.isCameraScanRequired()&&this.createPermissionsUi(r,n),this.renderFileScanUi(t)},e.prototype.renderFileScanUi=function(e){var t=eg.isFileScanType(this.currentScanType),r=this;this.fileSelectionUi=eI.create(e,t,function(e){if(!r.html5Qrcode)throw"html5Qrcode not defined";if(!!eg.isFileScanType(r.currentScanType))r.setHeaderMessage(N.loadingImage()),r.html5Qrcode.scanFileV2(e,!0).then(function(e){r.resetHeaderMessage(),r.qrCodeSuccessCallback(e.decodedText,e)}).catch(function(e){r.setHeaderMessage(e,p.STATUS_WARNING),r.qrCodeErrorCallback(e,S.createFrom(e))})})},e.prototype.renderCameraSelection=function(e){var t,r=this,n=this,i=document.getElementById(this.getDashboardSectionCameraScanRegionId());i.style.textAlign="center";var o=ey.create(i,!1),a=function(e){var t,n,i,a=e.zoomFeature();if(!!a.isSupported()){o.setOnCameraZoomValueChangeCallback(function(e){a.apply(e)});var s=1;r.config.defaultZoomValueIfSupported&&(s=r.config.defaultZoomValueIfSupported),t=s,n=a.min(),s=t>(i=a.max())?i:t<n?n:t,o.setValues(a.min(),a.max(),s,a.step()),o.show()}},s=eS.create(i,e),l=document.createElement("span"),c=em.createElement("button",ep.CAMERA_START_BUTTON_ID);c.innerText=N.scanButtonStartScanningText(),l.appendChild(c);var u=em.createElement("button",ep.CAMERA_STOP_BUTTON_ID);u.innerText=N.scanButtonStopScanningText(),u.style.display="none",u.disabled=!0,l.appendChild(u);var h=function(e){if(!e.torchFeature().isSupported()){t&&t.hide();return}t?t.updateTorchCapability(e.torchFeature()):t=eE.create(l,e.torchFeature(),{display:"none",marginLeft:"5px"},function(e){n.setHeaderMessage(e,p.STATUS_WARNING)}),t.show()};i.appendChild(l);var d=function(e){!e&&(c.style.display="none"),c.innerText=N.scanButtonStartScanningText(),c.style.opacity="1",c.disabled=!1,e&&(c.style.display="inline-block")};if(c.addEventListener("click",function(e){c.innerText=N.scanButtonScanningStarting(),s.disable(),c.disabled=!0,c.style.opacity="0.5",r.scanTypeSelector.hasMoreThanOneScanType()&&n.showHideScanTypeSwapLink(!1),n.resetHeaderMessage();var t,i=s.getValue();n.persistedDataManager.setLastUsedCameraId(i),n.html5Qrcode.start(i,{fps:(t=n.config).fps,qrbox:t.qrbox,aspectRatio:t.aspectRatio,disableFlip:t.disableFlip,videoConstraints:t.videoConstraints},n.qrCodeSuccessCallback,n.qrCodeErrorCallback).then(function(e){u.disabled=!1,u.style.display="inline-block",d(!1);var t=n.html5Qrcode.getRunningTrackCameraCapabilities();!0===r.config.showTorchButtonIfSupported&&h(t),!0===r.config.showZoomSliderIfSupported&&a(t)}).catch(function(e){n.showHideScanTypeSwapLink(!0),s.enable(),d(!0),n.setHeaderMessage(e,p.STATUS_WARNING)})}),s.hasSingleItem()&&c.click(),u.addEventListener("click",function(e){if(!n.html5Qrcode)throw"html5Qrcode not defined";u.disabled=!0,n.html5Qrcode.stop().then(function(e){r.scanTypeSelector.hasMoreThanOneScanType()&&n.showHideScanTypeSwapLink(!0),s.enable(),c.disabled=!1,u.style.display="none",c.style.display="inline-block",t&&(t.reset(),t.hide()),o.removeOnCameraZoomValueChangeCallback(),o.hide(),n.insertCameraScanImageToScanRegion()}).catch(function(e){u.disabled=!1,n.setHeaderMessage(e,p.STATUS_WARNING)})}),n.persistedDataManager.getLastUsedCameraId()){var f=n.persistedDataManager.getLastUsedCameraId();s.hasValue(f)?(s.setValue(f),c.click()):n.persistedDataManager.resetLastUsedCameraId()}},e.prototype.createSectionSwap=function(){var e=this,t=N.textIfCameraScanSelected(),r=N.textIfFileScanSelected(),n=document.getElementById(this.getDashboardSectionId()),i=document.createElement("div");i.style.textAlign="center";var o=em.createElement("span",this.getDashboardSectionSwapLinkId());o.style.textDecoration="underline",o.style.cursor="pointer",o.innerText=eg.isCameraScanType(this.currentScanType)?t:r,o.addEventListener("click",function(){if(!e.sectionSwapAllowed){e.verbose&&e.logger.logError("Section swap called when not allowed");return}e.resetHeaderMessage(),e.fileSelectionUi.resetValue(),e.sectionSwapAllowed=!1,eg.isCameraScanType(e.currentScanType)?(e.clearScanRegion(),e.getCameraScanRegion().style.display="none",e.fileSelectionUi.show(),o.innerText=r,e.currentScanType=u.SCAN_TYPE_FILE,e.insertFileScanImageToScanRegion()):(e.clearScanRegion(),e.getCameraScanRegion().style.display="block",e.fileSelectionUi.hide(),o.innerText=t,e.currentScanType=u.SCAN_TYPE_CAMERA,e.insertCameraScanImageToScanRegion(),e.startCameraScanIfPermissionExistsOnSwap()),e.sectionSwapAllowed=!0}),i.appendChild(o),n.appendChild(i)},e.prototype.startCameraScanIfPermissionExistsOnSwap=function(){var e=this,t=this;if(this.persistedDataManager.hasCameraPermissions()){ef.hasPermissions().then(function(r){if(r){var n=document.getElementById(t.getCameraPermissionButtonId());if(!n)throw e.logger.logError("Permission button not found, fail;"),"Permission button not found";n.click()}else t.persistedDataManager.setHasPermission(!1)}).catch(function(e){t.persistedDataManager.setHasPermission(!1)});return}},e.prototype.resetHeaderMessage=function(){document.getElementById(this.getHeaderMessageContainerId()).style.display="none"},e.prototype.setHeaderMessage=function(e,t){!t&&(t=p.STATUS_DEFAULT);var r=this.getHeaderMessageDiv();switch(r.innerText=e,r.style.display="block",t){case p.STATUS_SUCCESS:r.style.background="rgba(106, 175, 80, 0.26)",r.style.color="#477735";break;case p.STATUS_WARNING:r.style.background="rgba(203, 36, 49, 0.14)",r.style.color="#cb2431";break;case p.STATUS_DEFAULT:default:r.style.background="rgba(0, 0, 0, 0)",r.style.color="rgb(17, 17, 17)"}},e.prototype.showHideScanTypeSwapLink=function(e){this.scanTypeSelector.hasMoreThanOneScanType()&&(!0!==e&&(e=!1),this.sectionSwapAllowed=e,this.getDashboardSectionSwapLink().style.display=e?"inline-block":"none")},e.prototype.insertCameraScanImageToScanRegion=function(){var e=this,t=document.getElementById(this.getScanRegionId());if(this.cameraScanImage){t.innerHTML="<br>",t.appendChild(this.cameraScanImage);return}this.cameraScanImage=new Image,this.cameraScanImage.onload=function(r){t.innerHTML="<br>",t.appendChild(e.cameraScanImage)},this.cameraScanImage.width=64,this.cameraScanImage.style.opacity="0.8",this.cameraScanImage.src=ei,this.cameraScanImage.alt=N.cameraScanAltText()},e.prototype.insertFileScanImageToScanRegion=function(){var e=this,t=document.getElementById(this.getScanRegionId());if(this.fileScanImage){t.innerHTML="<br>",t.appendChild(this.fileScanImage);return}this.fileScanImage=new Image,this.fileScanImage.onload=function(r){t.innerHTML="<br>",t.appendChild(e.fileScanImage)},this.fileScanImage.width=64,this.fileScanImage.style.opacity="0.8",this.fileScanImage.src=eo,this.fileScanImage.alt=N.fileScanAltText()},e.prototype.clearScanRegion=function(){document.getElementById(this.getScanRegionId()).innerHTML=""},e.prototype.getDashboardSectionId=function(){return"".concat(this.elementId,"__dashboard_section")},e.prototype.getDashboardSectionCameraScanRegionId=function(){return"".concat(this.elementId,"__dashboard_section_csr")},e.prototype.getDashboardSectionSwapLinkId=function(){return ep.SCAN_TYPE_CHANGE_ANCHOR_ID},e.prototype.getScanRegionId=function(){return"".concat(this.elementId,"__scan_region")},e.prototype.getDashboardId=function(){return"".concat(this.elementId,"__dashboard")},e.prototype.getHeaderMessageContainerId=function(){return"".concat(this.elementId,"__header_message")},e.prototype.getCameraPermissionButtonId=function(){return ep.CAMERA_PERMISSION_BUTTON_ID},e.prototype.getCameraScanRegion=function(){return document.getElementById(this.getDashboardSectionCameraScanRegionId())},e.prototype.getDashboardSectionSwapLink=function(){return document.getElementById(this.getDashboardSectionSwapLinkId())},e.prototype.getHeaderMessageDiv=function(){return document.getElementById(this.getHeaderMessageContainerId())}}();var e_=d("156"),eT=d.n(e_),eN=d("238");function eM(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),n.forEach(function(t){var n,i,o;n=e,i=t,o=r[t],i in n?Object.defineProperty(n,i,{value:o,enumerable:!0,configurable:!0,writable:!0}):n[i]=o})}return e}function eb(e){var t=e.style,r={position:"absolute",backgroundColor:"rgb(255, 255, 255)"};return eT().createElement("div",{id:"qr-scan-box",style:eM({boxSizing:"border-box",inset:"0px"},void 0===t?{}:t)},eT().createElement("div",{style:eM({width:"40px",height:"5px",top:"-5px",left:"0px"},r)}),eT().createElement("div",{style:eM({width:"40px",height:"5px",top:"-5px",right:"0px"},r)}),eT().createElement("div",{style:eM({width:"40px",height:"5px",bottom:"-5px",left:"0px"},r)}),eT().createElement("div",{style:eM({width:"40px",height:"5px",bottom:"-5px",right:"0px"},r)}),eT().createElement("div",{style:eM({width:"5px",height:"45px",top:"-5px",left:"-5px"},r)}),eT().createElement("div",{style:eM({width:"5px",height:"45px",bottom:"-5px",left:"-5px"},r)}),eT().createElement("div",{style:eM({width:"5px",height:"45px",top:"-5px",right:"-5px"},r)}),eT().createElement("div",{style:eM({width:"5px",height:"45px",bottom:"-5px",right:"-5px"},r)}))}var eD=d("128");function eR(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function eO(e,t,r,n,i,o,a){try{var s=e[o](a),l=s.value}catch(e){r(e);return}s.done?t(l):Promise.resolve(l).then(n,i)}function ev(e){return function(){var t=this,r=arguments;return new Promise(function(n,i){var o=e.apply(t,r);function a(e){eO(o,n,i,a,s,"next",e)}function s(e){eO(o,n,i,a,s,"throw",e)}a(void 0)})}}function eB(e,t){var r,n,i,o,a={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(r)throw TypeError("Generator is already executing.");for(;a;)try{if(r=1,n&&(i=2&o[0]?n.return:o[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,o[1])).done)return i;switch(n=0,i&&(o=[2&o[0],i.value]),o[0]){case 0:case 1:i=o;break;case 4:return a.label++,{value:o[1],done:!1};case 5:a.label++,n=o[1],o=[0];continue;case 7:o=a.ops.pop(),a.trys.pop();continue;default:if(!(i=(i=a.trys).length>0&&i[i.length-1])&&(6===o[0]||2===o[0])){a=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]<i[3])){a.label=o[1];break}if(6===o[0]&&a.label<i[1]){a.label=i[1],i=o;break}if(i&&a.label<i[2]){a.label=i[2],a.ops.push(o);break}i[2]&&a.ops.pop(),a.trys.pop();continue}o=t.call(e,a)}catch(e){o=[6,e],n=0}finally{r=i=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,s])}}}function eP(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function eL(e,t,r,n,i,o,a){try{var s=e[o](a),l=s.value}catch(e){r(e);return}s.done?t(l):Promise.resolve(l).then(n,i)}function ex(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r,n,i=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=i){var o=[],a=!0,s=!1;try{for(i=i.call(e);!(a=(r=i.next()).done)&&(o.push(r.value),!t||o.length!==t);a=!0);}catch(e){s=!0,n=e}finally{try{!a&&null!=i.return&&i.return()}finally{if(s)throw n}}return o}}(e,t)||function(e,t){if(e){if("string"==typeof e)return eP(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if("Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r)return Array.from(r);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return eP(e,t)}}(e,t)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}var eF="qrcode",ek=function(e){var t,r,n,i,o,a,s,l,c,u,h,d,f,p,m,A,C,E,I=(0,e_.useRef)(),S=(0,e_.useRef)(),y=(0,eN.useTranslation)("block-workbench").t,_=ex((0,e_.useState)({width:0,height:0}),2),T=_[0],N=_[1],M=Math.max(document.documentElement.clientWidth||0,window.innerWidth||0),b=Math.max(document.documentElement.clientHeight||0,window.innerHeight||0);var D=(r=(t={onScannerSizeChanged:N,elementId:eF}).onScannerSizeChanged,n=t.elementId,s=(a=(i=(0,e_.useState)(),o=2,function(e){if(Array.isArray(e))return e}(i)||function(e,t){var r,n,i=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=i){var o=[],a=!0,s=!1;try{for(i=i.call(e);!(a=(r=i.next()).done)&&(o.push(r.value),!t||o.length!==t);a=!0);}catch(e){s=!0,n=e}finally{try{!a&&null!=i.return&&i.return()}finally{if(s)throw n}}return o}}(i,2)||function(e,t){if(e){if("string"==typeof e)return eR(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if("Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r)return Array.from(r);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return eR(e,t)}}(i,o)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()))[0],l=a[1],c=(0,eD.useNavigate)(),u=(0,eN.useTranslation)("block-workbench").t,h=(0,e_.useMemo)(function(){return{width:Math.max(document.documentElement.clientWidth||0,window.innerWidth||0),height:Math.max(document.documentElement.clientHeight||0,window.innerHeight||0)}},[]),f=(0,e_.useCallback)((d=ev(function(e){return eB(this,function(t){return[2,e.start({facingMode:"environment"},{fps:10,qrbox:function(e,t){return r({width:e,height:t}),{width:h.width,height:h.height}}},function(e){c(e)},void 0)]})}),function(e){return d.apply(this,arguments)}),[c,r,h]),m=(0,e_.useCallback)((p=ev(function(e){var t;return eB(this,function(r){return(t=e.getState(),[g.SCANNING,g.PAUSED].includes(t))?[2,e.stop()]:[2]})}),function(e){return p.apply(this,arguments)}),[]),C=(0,e_.useCallback)((A=ev(function(e){var t;return eB(this,function(t){switch(t.label){case 0:return[4,m(s)];case 1:t.sent(),t.label=2;case 2:return t.trys.push([2,4,,5]),[4,s.scanFileV2(e,!1)];case 3:return c(t.sent().decodedText),[3,5];case 4:return t.sent(),alert(u("QR code recognition failed, please scan again")),f(s),[3,5];case 5:return[2]}})}),function(e){return A.apply(this,arguments)}),[s,m,f,u,c]),(0,e_.useEffect)(function(){var e=new er(n);return l(e),f(e),function(){m(e)}},[n,f,m]),{startScanCamera:f,startScanFile:C}).startScanFile,R=function(){S.current&&S.current.click()},O=function(e){var t=e.target.files;if(t.length>0){var r=t[0];r.size<1e6?D(r):alert(y("The image size is too large. Please compress it to below 1MB before uploading"))}};(0,e_.useEffect)(function(){return document.documentElement.style.overscrollBehavior="none",function(){document.documentElement.style.overscrollBehavior="default"}},[]),(0,e_.useEffect)(function(){var e=T.width,t=T.height,r=Math.max(document.documentElement.clientWidth||0,window.innerWidth||0),n=Math.max(document.documentElement.clientHeight||0,window.innerHeight||0);if(e>0&&t>0&&t<n){var i=Math.floor(n/t*e),o=document.getElementsByTagName("video")[0];o.style.height="".concat(n,"px"),o.style.width="".concat(i,"px"),I.current.style.left="".concat((r-i)/2,"px"),I.current.style.position="absolute"}},[T]);var v={zIndex:"1003",fontSize:"1.8em",fontWeight:"bold"};return eT().createElement(eT().Fragment,null,eT().createElement("div",{ref:I,id:eF,style:{position:"absolute"}}),eT().createElement(eb,{style:function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),n.forEach(function(t){var n,i,o;n=e,i=t,o=r[t],i in n?Object.defineProperty(n,i,{value:o,enumerable:!0,configurable:!0,writable:!0}):n[i]=o})}return e}({},(E=Math.floor(.6*Math.min(M,b)),{left:"".concat((M-E)/2,"px"),top:"".concat((b-E)/2,"px"),position:"fixed",width:"".concat(E,"px"),height:"".concat(E,"px")}))}),eT().createElement(function(){return eT().createElement("div",{style:{position:"absolute",bottom:"20px",left:"20px",padding:"10px 60px"}},eT().createElement("div",{style:{color:"white",width:"40px",display:"flex",flexDirection:"column",alignItems:"center"}},eT().createElement(w.FileImageOutlined,{style:v,onClick:R}),y("Album"),eT().createElement("input",{ref:S,type:"file",accept:"image/*",onChange:O,style:{visibility:"hidden"}})))},null))},eU=function(e){var t=(0,m.useActionContext)(),r=t.visible,n=t.setVisible,i=ex((0,e_.useState)(!1),2),o=i[0],a=i[1],s=(0,eN.useTranslation)("block-workbench").t;return(0,e_.useEffect)(function(){var e,t,i=(t=(e=function(){var e,t,r;return function(e,t){var r,n,i,o,a={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(r)throw TypeError("Generator is already executing.");for(;a;)try{if(r=1,n&&(i=2&o[0]?n.return:o[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,o[1])).done)return i;switch(n=0,i&&(o=[2&o[0],i.value]),o[0]){case 0:case 1:i=o;break;case 4:return a.label++,{value:o[1],done:!1};case 5:a.label++,n=o[1],o=[0];continue;case 7:o=a.ops.pop(),a.trys.pop();continue;default:if(!(i=(i=a.trys).length>0&&i[i.length-1])&&(6===o[0]||2===o[0])){a=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]<i[3])){a.label=o[1];break}if(6===o[0]&&a.label<i[1]){a.label=i[1],i=o;break}if(i&&a.label<i[2]){a.label=i[2],a.ops.push(o);break}i[2]&&a.ops.pop(),a.trys.pop();continue}o=t.call(e,a)}catch(e){o=[6,e],n=0}finally{r=i=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,s])}}}(this,function(i){switch(i.label){case 0:return i.trys.push([0,2,,3]),[4,er.getCameras()];case 1:return 0===i.sent().length?alert(s("No camera device detected")):a(!0),[3,3];case 2:return e=i.sent(),t={NotFoundError:s("No camera device detected"),NotAllowedError:s("You have not granted permission to use the camera")},console.log(e),alert(null!=(r=t[e.name])?r:e),a(!1),n(!1),[3,3];case 3:return[2]}})},function(){var t=this,r=arguments;return new Promise(function(n,i){var o=e.apply(t,r);function a(e){eL(o,n,i,a,s,"next",e)}function s(e){eL(o,n,i,a,s,"throw",e)}a(void 0)})}),function(){return t.apply(this,arguments)});r&&!o&&i()},[r,o,n,s]),r&&o?eT().createElement("div",{style:{position:"fixed",width:"100%",height:"100%",background:"black",zIndex:"1001",top:0,left:0,overflow:"hidden"}},eT().createElement(ek,null),eT().createElement(w.LeftOutlined,{style:{position:"absolute",top:"22px",left:"20px",zIndex:"1003",color:"white",fontSize:"1.8em",fontWeight:"bold"},onClick:function(){return n(!1)}}),eT().createElement("div",{style:{position:"absolute",color:"white",fontSize:"1.5em",left:0,right:0,top:"20px",zIndex:"1002",marginLeft:"auto",marginRight:"auto",textAlign:"center"}},s("Scan QR code"))):null},eH=d("505"),ez=d("721"),eV=d("202"),ej=d("964");function eG(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var eW={Grid:"grid",List:"list"},eY=new m.SchemaSettings({name:"blockSettings:workbench",items:[{name:"title",Component:function(){var e,t=(0,eH.useField)(),r=(0,eH.useFieldSchema)(),n=(0,m.useDesignable)().dn,i=(0,eN.useTranslation)().t;return eT().createElement(m.SchemaSettingsModalItem,{title:i("Edit block title"),schema:{type:"object",title:i("Edit block title"),properties:{title:{title:i("Block title"),type:"string",default:null==r?void 0:null===(e=r["x-decorator-props"])||void 0===e?void 0:e.title,"x-decorator":"FormItem","x-component":"Input"}}},onSubmit:function(e){var i,o=e.title;console.log("titleSchemaTest",r,t);var a=r["x-decorator-props"]||{};a.title=o,r["x-decorator-props"]=a,t.decoratorProps.title=o,n.emit("patch",{schema:(eG(i={},"x-uid",r["x-uid"]),eG(i,"x-decorator-props",r["x-decorator-props"]),i)}),n.refresh()}})}},{name:"setTheBlockHeight",Component:m.SchemaSettingsBlockHeightItem},{name:"layout",Component:function(){var e,t=(0,eN.useTranslation)().t,r=(0,eH.useFieldSchema)(),n=(0,eH.useField)(),i=(0,m.useDesignable)().dn;return eT().createElement(m.SchemaSettingsSelectItem,{title:t("Layout",{ns:"block-workbench"}),options:[{label:t("Grid",{ns:"block-workbench"}),value:eW.Grid},{label:t("List",{ns:"block-workbench"}),value:eW.List}],value:(null==r?void 0:null===(e=r["x-component-props"])||void 0===e?void 0:e.layout)||eW.Grid,onChange:function(e){n.componentProps.layout=e;var t={"x-uid":r["x-uid"]};r["x-component-props"]=r["x-component-props"]||{},t["x-component-props"]=r["x-component-props"]||{},t["x-component-props"].layout=e,r["x-component-props"].layout=e,i.emit("patch",{schema:t}),i.refresh()}})}},{type:"remove",name:"remove"}]});function eX(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function eZ(e,t){return!t&&(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}))}function eQ(){var e=eZ(["\n .ant-list-item-meta-avatar {\n margin-inline-end: 0px !important;\n }\n .ant-list-item-meta-title {\n overflow: hidden;\n text-overflow: ellipsis;\n font-size: 14px;\n }\n .ant-list-item-meta-title button {\n font-size: 14px;\n overflow: hidden;\n text-overflow: ellipsis;\n width: 100%;\n text-align: left;\n }\n "]);return eQ=function(){return e},e}function eq(){var e=eZ(["\n .nb-action-panel-warp {\n height: ",";\n overflow-y: auto;\n margin-left: -24px;\n margin-right: -24px;\n padding-left: 24px;\n padding-right: 24px;\n }\n "]);return eq=function(){return e},e}var eK=(0,eH.observer)(function(){var e=(0,eH.useFieldSchema)();return(0,(0,m.useSchemaInitializerRender)(e["x-initializer"]).render)()},{displayName:"WorkbenchConfigureActionsButton"}),eJ=function(){var e,t,r=(0,eH.useFieldSchema)(),n=(0,m.useDesignable)().designable,i=(r.parent["x-component-props"]||{}).layout,o=void 0===i?eW.Grid:i;var a=(e=(0,e_.useState)(8),t=2,function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r,n,i=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=i){var o=[],a=!0,s=!1;try{for(i=i.call(e);!(a=(r=i.next()).done)&&(o.push(r.value),!t||o.length!==t);a=!0);}catch(e){s=!0,n=e}finally{try{!a&&null!=i.return&&i.return()}finally{if(s)throw n}}return o}}(e,2)||function(e,t){if(e){if("string"==typeof e)return eX(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if("Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r)return Array.from(r);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return eX(e,t)}}(e,t)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),s=a[0],l=a[1];return(0,e_.useEffect)(function(){var e=function(){var e=document.getElementsByClassName("mobile-page-content")[0];if(e){var t=e.offsetWidth-48,r=Math.floor(t/100),n=t-100*r;n>0?l(n/(r-1)):l(0)}};return window.addEventListener("resize",e),e(),function(){window.removeEventListener("resize",e)}},[Object.keys((null==r?void 0:r.properties)||{}).length]),eT().createElement("div",{style:{marginBottom:n?"1rem":0},className:"nb-action-panel-warp"},eT().createElement(m.DndContext,null,o===eW.Grid?eT().createElement(ez.Space,{wrap:!0,size:s},r.mapProperties(function(e,t){return eT().createElement(eH.RecursionField,{name:t,schema:e,key:t})})):eT().createElement(ez.List,{itemLayout:"horizontal"},r.mapProperties(function(e,t){var r,n,i=null===(r=e["x-component-props"])||void 0===r?void 0:r.icon,o=null===(n=e["x-component-props"])||void 0===n?void 0:n.iconColor;return eT().createElement(ez.List.Item,{key:t,className:(0,ej.css)(eQ())},eT().createElement(ez.List.Item.Meta,{avatar:eT().createElement(ez.Avatar,{style:{backgroundColor:o},icon:eT().createElement(m.Icon,{type:i})}),title:eT().createElement(eH.RecursionField,{name:t,schema:e,key:t})}))}))))},e$=(0,e_.createContext)({layout:"grid"}),e1=(0,m.withDynamicSchemaProps)(function(e){var t=((0,eH.useFieldSchema)()["x-component-props"]||{}).layout,r=(0,m.useBlockHeight)(),n=ez.theme.useToken().token,i=(0,m.useDesignable)().designable;return eT().createElement("div",{className:"nb-action-penal-container"},eT().createElement("div",{className:(0,ej.css)(eq(),r?r-(i?4:2)*n.marginLG+"px":"100%")},eT().createElement(e$.Provider,{value:{layout:void 0===t?"grid":t}},eT().createElement(m.DataSourceContext.Provider,{value:void 0},eT().createElement(m.CollectionContext.Provider,{value:void 0},e.children)))))},{displayName:"WorkbenchBlock"});e1.ActionBar=function(){return eT().createElement(eT().Fragment,null,eT().createElement(eJ,null),eT().createElement(eK,null))};function e0(e,t){return!t&&(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}))}function e2(){var e=e0(["\n background-color: transparent;\n border: 0;\n height: auto;\n box-shadow: none;\n "]);return e2=function(){return e},e}function e3(){var e=e0(["\n margin-top: ","px;\n text-overflow: ellipsis;\n overflow: hidden;\n "]);return e3=function(){return e},e}var e4=(0,eV.createStyles)(function(e){var t=e.token,r=e.css;return{action:r(e2()),title:r(e3(),t.marginSM)}});function e8(){var e,t,r=(0,eH.useFieldSchema)(),n=null===(e=r["x-component-props"])||void 0===e?void 0:e.icon,i=null===(t=r["x-component-props"])||void 0===t?void 0:t.iconColor,o=(0,e_.useContext)(e$).layout,a=e4(),s=a.styles,l=a.cx;return o===eW.Grid?eT().createElement("div",{title:r.title,style:{width:"70px",overflow:"hidden"}},eT().createElement(ez.Avatar,{style:{backgroundColor:i},size:54,icon:eT().createElement(m.Icon,{type:n})}),eT().createElement("div",{className:l(s.title)},r.title)):eT().createElement("span",null,r.title)}var e6=(0,m.withDynamicSchemaProps)(function(e){var t,r,n=e.className,i=function(e,t){if(null==e)return{};var r,n,i=function(e,t){if(null==e)return{};var r,n,i={},o=Object.keys(e);for(n=0;n<o.length;n++)r=o[n],!(t.indexOf(r)>=0)&&(i[r]=e[r]);return i}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n<o.length;n++){if(r=o[n],!(t.indexOf(r)>=0))Object.prototype.propertyIsEnumerable.call(e,r)&&(i[r]=e[r])}}return i}(e,["className"]),o=e4(),a=o.styles,s=o.cx,l=(0,eH.useFieldSchema)(),c=(0,m.useComponent)(null==e?void 0:e.targetComponent)||m.Action;return eT().createElement(c,(t=function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),n.forEach(function(t){var n,i,o;n=e,i=t,o=r[t],i in n?Object.defineProperty(n,i,{value:o,enumerable:!0,configurable:!0,writable:!0}):n[i]=o})}return e}({className:s(n,a.action,"nb-action-panel")},i),r=(r={icon:null,title:eT().createElement(e8,null),confirmTitle:l.title},r),Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):(function(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r.push.apply(r,n)}return r})(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))}),t))}),e5={type:"void","x-decorator":"CardItem","x-decorator-props":{title:""},"x-settings":"blockSettings:workbench","x-schema-toolbar":"BlockSchemaToolbar","x-component":"WorkbenchBlock",properties:{actions:{"x-component":"WorkbenchBlock.ActionBar","x-initializer":"workbench:configureActions"}}},e7={type:"item",name:"workbenchBlock",icon:"FileImageOutlined",useComponentProps:function(){var e=(0,eN.useTranslation)("@nocobase/plugin-block-workbench").t,t=(0,m.useSchemaInitializer)().insert;return{title:e("Action panel"),onClick:function(){t(e5)}}}},e9=d("584");function te(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function tt(e,t,r,n,i,o,a){try{var s=e[o](a),l=s.value}catch(e){r(e);return}s.done?t(l):Promise.resolve(l).then(n,i)}function tr(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),n.forEach(function(t){var n,i,o;n=e,i=t,o=r[t],i in n?Object.defineProperty(n,i,{value:o,enumerable:!0,configurable:!0,writable:!0}):n[i]=o})}return e}function tn(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r.push.apply(r,n)}return r})(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))}),e}function ti(e,t){if(null==e)return{};var r,n,i=function(e,t){if(null==e)return{};var r,n,i={},o=Object.keys(e);for(n=0;n<o.length;n++)r=o[n],!(t.indexOf(r)>=0)&&(i[r]=e[r]);return i}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n<o.length;n++){if(r=o[n],!(t.indexOf(r)>=0))Object.prototype.propertyIsEnumerable.call(e,r)&&(i[r]=e[r])}}return i}function to(e){var t,r,n=e.modalSchema,i=void 0===n?{}:n,o=ti(e,["modalSchema"]),a=i.properties,s=ti(i,["properties"]);var l=(t=(0,e_.useState)(!1),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r,n,i=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=i){var o=[],a=!0,s=!1;try{for(i=i.call(e);!(a=(r=i.next()).done)&&(o.push(r.value),!t||o.length!==t);a=!0);}catch(e){s=!0,n=e}finally{try{!a&&null!=i.return&&i.return()}finally{if(s)throw n}}return o}}(t,2)||function(e,t){if(e){if("string"==typeof e)return te(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if("Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r)return Array.from(r);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return te(e,t)}}(t,r)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),c=l[0],u=l[1],h=(0,m.useSchemaInitializer)().setVisible,d=(0,e_.useMemo)(function(){return tn(tr({name:(0,e9.uid)(),"x-component":"Action.Modal","x-component-props":{width:"520px"},type:"void","x-decorator":"FormV2","x-decorator-props":{}},s),{properties:tn(tr({},a),{footer1:{"x-component":"Action.Modal.Footer",type:"void",properties:{close:{title:"Cancel","x-component":"Action","x-component-props":{type:"default"},"x-use-component-props":function(){return{onClick:function(){var t;u(!1),null==e||null===(t=e.onCancel)||void 0===t||t.call(e)}}}},submit:{title:"OK","x-component":"Action","x-component-props":{type:"primary"},"x-use-component-props":function(){var t=(0,eH.useForm)();return{onClick:function(){var r;return(r=function(){var r;return function(e,t){var r,n,i,o,a={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(r)throw TypeError("Generator is already executing.");for(;a;)try{if(r=1,n&&(i=2&o[0]?n.return:o[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,o[1])).done)return i;switch(n=0,i&&(o=[2&o[0],i.value]),o[0]){case 0:case 1:i=o;break;case 4:return a.label++,{value:o[1],done:!1};case 5:a.label++,n=o[1],o=[0];continue;case 7:o=a.ops.pop(),a.trys.pop();continue;default:if(!(i=(i=a.trys).length>0&&i[i.length-1])&&(6===o[0]||2===o[0])){a=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]<i[3])){a.label=o[1];break}if(6===o[0]&&a.label<i[1]){a.label=i[1],i=o;break}if(i&&a.label<i[2]){a.label=i[2],a.ops.push(o);break}i[2]&&a.ops.pop(),a.trys.pop();continue}o=t.call(e,a)}catch(e){o=[6,e],n=0}finally{r=i=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,s])}}}(this,function(n){switch(n.label){case 0:return[4,t.submit()];case 1:return n.sent(),u(!1),null==e||null===(r=e.onSubmit)||void 0===r||r.call(e,t.values),[2]}})},function(){var e=this,t=arguments;return new Promise(function(n,i){var o=r.apply(e,t);function a(e){tt(o,n,i,a,s,"next",e)}function s(e){tt(o,n,i,a,s,"throw",e)}a(void 0)})})()}}}}}}})})},[c]);return eT().createElement(eT().Fragment,null,eT().createElement(m.SchemaInitializerItem,tn(tr({},o),{onClick:function(t){var r;h(!1),u(!0),null==e||null===(r=e.onClick)||void 0===r||r.call(e,t)}})),eT().createElement(m.ActionContextProvider,{value:{visible:c,setVisible:u}},eT().createElement(m.SchemaComponent,{components:{Action:m.Action},schema:d})))}var ta=new m.SchemaSettings({name:"workbench:actionSettings:link",items:[{name:"editButton",Component:m.ButtonEditor,useComponentProps:function(){return{hasIconColor:!0}}},{name:"editLink",Component:m.SchemaSettingsActionLinkItem},{sort:800,name:"d1",type:"divider"},{sort:900,type:"remove",name:"remove"}]}),ts=new m.SchemaInitializer({name:"workbench:configureActions",title:'{{t("Configure actions")}}',insertPosition:"beforeEnd",items:[{name:"link",title:'{{t("Link")}}',Component:function(e){var t=(0,m.useSchemaInitializerItem)(),r=(0,m.useSchemaInitializer)().insert,n=(0,eN.useTranslation)().t;return eT().createElement(to,{title:t.title,modalSchema:{title:n("Add link"),properties:{title:{title:n("Title"),required:!0,"x-component":"Input","x-decorator":"FormItem"},icon:{title:n("Icon"),required:!0,"x-component":"IconPicker","x-decorator":"FormItem"},iconColor:{title:n("Color"),required:!0,default:"#1677FF","x-component":"ColorPicker","x-decorator":"FormItem"}}},onSubmit:function(e){r({type:"void",title:e.title,"x-action":"customize:link","x-toolbar":"ActionSchemaToolbar","x-settings":"workbench:actionSettings:link","x-component":"WorkbenchAction","x-use-component-props":"useLinkActionProps","x-component-props":{icon:e.icon,iconColor:e.iconColor}})}})}}]}),tl=new m.SchemaSettings({name:"workbench:actionSettings:popup",items:[{name:"editButton",Component:m.ButtonEditor,useComponentProps:function(){return{hasIconColor:!0}}},{name:"openMode",Component:m.SchemaSettingOpenModeSchemaItems,useComponentProps:function(){var e=(0,eN.useTranslation)().t,t=(0,m.useOpenModeContext)().hideOpenMode;return{openSize:!t,modeOptions:t&&[{label:e("Drawer"),value:"drawer"},{label:e("Page"),value:"page"}]}}},{sort:800,name:"d1",type:"divider"},{sort:900,type:"remove",name:"remove"}]});function tc(e){var t=(0,m.useSchemaInitializer)().insert,r=(0,eN.useTranslation)().t,n=(0,m.useOpenModeContext)().isMobile;return eT().createElement(to,{title:r("Popup"),modalSchema:{title:r("Add popup",{ns:"block-workbench"}),properties:{title:{title:r("Title"),required:!0,"x-component":"Input","x-decorator":"FormItem"},icon:{title:r("Icon"),required:!0,"x-component":"IconPicker","x-decorator":"FormItem"},iconColor:{title:r("Color"),required:!0,default:"#1677FF","x-component":"ColorPicker","x-decorator":"FormItem"}}},onSubmit:function(e){t({type:"void",title:e.title,"x-action":"customize:popup","x-toolbar":"ActionSchemaToolbar","x-settings":"workbench:actionSettings:popup","x-component":"WorkbenchAction","x-component-props":{icon:e.icon,iconColor:e.iconColor,refreshDataBlockRequest:!1},properties:{drawer:{type:"void",title:e.title,"x-component":"Action.Container","x-component-props":{className:"nb-action-popup"},properties:{tabs:{type:"void","x-component":"Tabs","x-component-props":{},"x-initializer":"popup:addTab",properties:{tab1:{type:"void",title:'{{t("Details")}}',"x-component":"Tabs.TabPane","x-designer":"Tabs.Designer","x-component-props":{},properties:{grid:{type:"void","x-component":"Grid","x-initializer":n?"mobile:addBlock":"page:addBlock",properties:{}}}}}}}}}})}})}var tu=new m.SchemaSettings({name:"workbench:actionSettings:scanQrCode",items:[{name:"editButton",Component:m.ButtonEditor,useComponentProps:function(){return{hasIconColor:!0}}},{name:"d1",type:"divider"},{type:"remove",name:"remove"}]});function th(e){(0,m.useSchemaInitializerItem)();var t=(0,m.useSchemaInitializer)().insert,r=(0,eN.useTranslation)().t;return eT().createElement(to,{title:r("Scan QR code",{ns:"block-workbench"}),modalSchema:{title:r("Scan QR code",{ns:"block-workbench"}),properties:{title:{title:r("Title"),required:!0,"x-component":"Input","x-decorator":"FormItem"},icon:{title:r("Icon"),required:!0,"x-component":"IconPicker","x-decorator":"FormItem"},iconColor:{title:r("Color"),required:!0,default:"#1677FF","x-component":"ColorPicker","x-decorator":"FormItem"}}},onSubmit:function(e){t({type:"void",title:e.title,"x-component":"WorkbenchAction","x-toolbar":"ActionSchemaToolbar","x-settings":"workbench:actionSettings:scanQrCode","x-component-props":{icon:e.icon,iconColor:e.iconColor,openMode:"modal"},properties:{modal:{type:"void","x-component":"QRCodeScanner",title:r("Scan QR code",{ns:"block-workbench"})}}})}})}var td=new m.SchemaSettings({name:"workbench:actionSettings:customRequest",items:[{name:"editButton",Component:m.ButtonEditor,useComponentProps:function(){return{hasIconColor:!0}}},{name:"editLink",Component:m.SchemaSettingsActionLinkItem},{sort:800,name:"d1",type:"divider"},{sort:900,type:"remove",name:"remove"}]});function tf(e){var t=(0,m.useSchemaInitializer)().insert,r=(0,eN.useTranslation)().t;return eT().createElement(to,{title:r("Custom request"),modalSchema:{title:r("Add custom request",{ns:"block-workbench"}),properties:{title:{title:r("Title"),required:!0,"x-component":"Input","x-decorator":"FormItem"},icon:{title:r("Icon"),required:!0,"x-component":"IconPicker","x-decorator":"FormItem"},iconColor:{title:r("Color"),required:!0,default:"#1677FF","x-component":"ColorPicker","x-decorator":"FormItem"}}},onSubmit:function(e){t({type:"void",title:e.title,"x-component":"WorkbenchAction","x-component-props":{icon:e.icon,iconColor:e.iconColor,targetComponent:"CustomRequestAction"},"x-action":"customize:form:request","x-toolbar":"ActionSchemaToolbar","x-settings":"actionSettings:customRequest","x-decorator":"CustomRequestAction.Decorator","x-action-settings":{onSuccess:{manualClose:!1,redirecting:!1,successMessage:'{{t("Request success")}}'}}})}})}function tg(e,t,r,n,i,o,a){try{var s=e[o](a),l=s.value}catch(e){r(e);return}s.done?t(l):Promise.resolve(l).then(n,i)}function tp(e,t,r){return(tp=tE()?Reflect.construct:function(e,t,r){var n=[null];n.push.apply(n,t);var i=new(Function.bind.apply(e,n));return r&&tA(i,r.prototype),i}).apply(null,arguments)}function tm(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}function tw(e){return(tw=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function tA(e,t){return(tA=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function tC(e){var t="function"==typeof Map?new Map:void 0;return(tC=function(e){var r;if(null===e||(r=e,-1===Function.toString.call(r).indexOf("[native code]")))return e;if("function"!=typeof e)throw TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,n)}function n(){return tp(e,arguments,tw(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),tA(n,e)})(e)}function tE(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(tE=function(){return!!e})()}var tI=function(e){var t,r,n;function i(){var e,t,r;return!function(e,t){if(!(e instanceof t))throw TypeError("Cannot call a class as a function")}(this,i),e=this,t=i,r=arguments,t=tw(t),function(e,t){return t&&("object"===function(e){return e&&"undefined"!=typeof Symbol&&e.constructor===Symbol?"symbol":typeof e}(t)||"function"==typeof t)?t:function(e){if(void 0===e)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,tE()?Reflect.construct(t,r||[],tw(e).constructor):t.apply(e,r))}return!function(e,t){if("function"!=typeof t&&null!==t)throw TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&tA(e,t)}(i,e),t=i,r=[{key:"load",value:function(){var e,t=this;return(e=function(){return function(e,t){var r,n,i,o,a={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(r)throw TypeError("Generator is already executing.");for(;a;)try{if(r=1,n&&(i=2&o[0]?n.return:o[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,o[1])).done)return i;switch(n=0,i&&(o=[2&o[0],i.value]),o[0]){case 0:case 1:i=o;break;case 4:return a.label++,{value:o[1],done:!1};case 5:a.label++,n=o[1],o=[0];continue;case 7:o=a.ops.pop(),a.trys.pop();continue;default:if(!(i=(i=a.trys).length>0&&i[i.length-1])&&(6===o[0]||2===o[0])){a=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]<i[3])){a.label=o[1];break}if(6===o[0]&&a.label<i[1]){a.label=i[1],i=o;break}if(i&&a.label<i[2]){a.label=i[2],a.ops.push(o);break}i[2]&&a.ops.pop(),a.trys.pop();continue}o=t.call(e,a)}catch(e){o=[6,e],n=0}finally{r=i=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,s])}}}(this,function(e){return t.app.addComponents({WorkbenchBlock:e1,QRCodeScanner:eU,WorkbenchAction:e6}),t.app.schemaSettingsManager.add(eY),t.app.schemaInitializerManager.add(ts),t.app.schemaInitializerManager.addItem("page:addBlock","otherBlocks.".concat(e7.name),e7),t.app.schemaInitializerManager.addItem("popup:common:addBlock","otherBlocks.".concat(e7.name),e7),t.app.schemaInitializerManager.addItem("mobilePage:addBlock","otherBlocks.".concat(e7.name),e7),t.app.schemaInitializerManager.addItem("mobile:addBlock","otherBlocks.".concat(e7.name),e7),t.app.schemaSettingsManager.add(ta),t.app.schemaSettingsManager.add(tu),t.app.schemaInitializerManager.addItem("workbench:configureActions","qrcode",{Component:th}),t.app.schemaSettingsManager.add(tl),t.app.schemaInitializerManager.addItem("workbench:configureActions","popup",{Component:tc}),t.app.schemaSettingsManager.add(td),t.app.schemaInitializerManager.addItem("workbench:configureActions","customRequest",{Component:tf}),[2]})},function(){var t=this,r=arguments;return new Promise(function(n,i){var o=e.apply(t,r);function a(e){tg(o,n,i,a,s,"next",e)}function s(e){tg(o,n,i,a,s,"throw",e)}a(void 0)})})()}}],tm(t.prototype,r),i}(tC(m.Plugin)),tS=tI}(),f}()});
|
|
10
|
+
(function(oe,W){typeof exports=="object"&&typeof module!="undefined"?W(exports,require("@nocobase/client"),require("react/jsx-runtime"),require("@ant-design/icons"),require("react"),require("react-i18next"),require("react-router-dom"),require("@formily/react"),require("antd"),require("antd-style"),require("@emotion/css"),require("@nocobase/utils/client")):typeof define=="function"&&define.amd?define(["exports","@nocobase/client","react/jsx-runtime","@ant-design/icons","react","react-i18next","react-router-dom","@formily/react","antd","antd-style","@emotion/css","@nocobase/utils/client"],W):(oe=typeof globalThis!="undefined"?globalThis:oe||self,W(oe["@nocobase/plugin-block-workbench"]={},oe["@nocobase/client"],oe.jsxRuntime,oe["@ant-design/icons"],oe.react,oe["react-i18next"],oe["react-router-dom"],oe["@formily/react"],oe.antd,oe["antd-style"],oe["@emotion/css"],oe["@nocobase/utils"]))})(this,function(oe,W,G,ot,Me,xt,Kn,Ye,$e,dn,Er,hi){"use strict";var vs=Object.defineProperty,Ps=Object.defineProperties;var Ls=Object.getOwnPropertyDescriptors;var Yn=Object.getOwnPropertySymbols;var li=Object.prototype.hasOwnProperty,ci=Object.prototype.propertyIsEnumerable;var ai=(oe,W,G)=>W in oe?vs(oe,W,{enumerable:!0,configurable:!0,writable:!0,value:G}):oe[W]=G,st=(oe,W)=>{for(var G in W||(W={}))li.call(W,G)&&ai(oe,G,W[G]);if(Yn)for(var G of Yn(W))ci.call(W,G)&&ai(oe,G,W[G]);return oe},_n=(oe,W)=>Ps(oe,Ls(W));var Zn=(oe,W)=>{var G={};for(var ot in oe)li.call(oe,ot)&&W.indexOf(ot)<0&&(G[ot]=oe[ot]);if(oe!=null&&Yn)for(var ot of Yn(oe))W.indexOf(ot)<0&&ci.call(oe,ot)&&(G[ot]=oe[ot]);return G};var Jt=(oe,W,G)=>new Promise((ot,Me)=>{var xt=$e=>{try{Ye(G.next($e))}catch(dn){Me(dn)}},Kn=$e=>{try{Ye(G.throw($e))}catch(dn){Me(dn)}},Ye=$e=>$e.done?ot($e.value):Promise.resolve($e.value).then(xt,Kn);Ye((G=G.apply(oe,W)).next())});function ui(g,d){for(var h=0;h<d.length;h++){const m=d[h];if(typeof m!="string"&&!Array.isArray(m)){for(const p in m)if(p!=="default"&&!(p in g)){const x=Object.getOwnPropertyDescriptor(m,p);x&&Object.defineProperty(g,p,x.get?x:{enumerable:!0,get:()=>m[p]})}}}return Object.freeze(Object.defineProperty(g,Symbol.toStringTag,{value:"Module"}))}var H;(function(g){g[g.QR_CODE=0]="QR_CODE",g[g.AZTEC=1]="AZTEC",g[g.CODABAR=2]="CODABAR",g[g.CODE_39=3]="CODE_39",g[g.CODE_93=4]="CODE_93",g[g.CODE_128=5]="CODE_128",g[g.DATA_MATRIX=6]="DATA_MATRIX",g[g.MAXICODE=7]="MAXICODE",g[g.ITF=8]="ITF",g[g.EAN_13=9]="EAN_13",g[g.EAN_8=10]="EAN_8",g[g.PDF_417=11]="PDF_417",g[g.RSS_14=12]="RSS_14",g[g.RSS_EXPANDED=13]="RSS_EXPANDED",g[g.UPC_A=14]="UPC_A",g[g.UPC_E=15]="UPC_E",g[g.UPC_EAN_EXTENSION=16]="UPC_EAN_EXTENSION"})(H||(H={}));var pr=new Map([[H.QR_CODE,"QR_CODE"],[H.AZTEC,"AZTEC"],[H.CODABAR,"CODABAR"],[H.CODE_39,"CODE_39"],[H.CODE_93,"CODE_93"],[H.CODE_128,"CODE_128"],[H.DATA_MATRIX,"DATA_MATRIX"],[H.MAXICODE,"MAXICODE"],[H.ITF,"ITF"],[H.EAN_13,"EAN_13"],[H.EAN_8,"EAN_8"],[H.PDF_417,"PDF_417"],[H.RSS_14,"RSS_14"],[H.RSS_EXPANDED,"RSS_EXPANDED"],[H.UPC_A,"UPC_A"],[H.UPC_E,"UPC_E"],[H.UPC_EAN_EXTENSION,"UPC_EAN_EXTENSION"]]),Ir;(function(g){g[g.UNKNOWN=0]="UNKNOWN",g[g.URL=1]="URL"})(Ir||(Ir={}));function fi(g){return Object.values(H).includes(g)}var On;(function(g){g[g.SCAN_TYPE_CAMERA=0]="SCAN_TYPE_CAMERA",g[g.SCAN_TYPE_FILE=1]="SCAN_TYPE_FILE"})(On||(On={}));var di=function(){function g(){}return g.GITHUB_PROJECT_URL="https://github.com/mebjas/html5-qrcode",g.SCAN_DEFAULT_FPS=2,g.DEFAULT_DISABLE_FLIP=!1,g.DEFAULT_REMEMBER_LAST_CAMERA_USED=!0,g.DEFAULT_SUPPORTED_SCAN_TYPE=[On.SCAN_TYPE_CAMERA,On.SCAN_TYPE_FILE],g}(),br=function(){function g(d,h){this.format=d,this.formatName=h}return g.prototype.toString=function(){return this.formatName},g.create=function(d){if(!pr.has(d))throw"".concat(d," not in html5QrcodeSupportedFormatsTextMap");return new g(d,pr.get(d))},g}(),yr=function(){function g(){}return g.createFromText=function(d){var h={text:d};return{decodedText:d,result:h}},g.createFromQrcodeResult=function(d){return{decodedText:d.text,result:d}},g}(),jn;(function(g){g[g.UNKWOWN_ERROR=0]="UNKWOWN_ERROR",g[g.IMPLEMENTATION_ERROR=1]="IMPLEMENTATION_ERROR",g[g.NO_CODE_FOUND_ERROR=2]="NO_CODE_FOUND_ERROR"})(jn||(jn={}));var xi=function(){function g(){}return g.createFrom=function(d){return{errorMessage:d,type:jn.UNKWOWN_ERROR}},g}(),gi=function(){function g(d){this.verbose=d}return g.prototype.log=function(d){this.verbose&&console.log(d)},g.prototype.warn=function(d){this.verbose&&console.warn(d)},g.prototype.logError=function(d,h){(this.verbose||h===!0)&&console.error(d)},g.prototype.logErrors=function(d){if(d.length===0)throw"Logger#logError called without arguments";this.verbose&&console.error(d)},g}();function Mt(g){return typeof g=="undefined"||g===null}var $t=function(){function g(){}return g.codeParseError=function(d){return"QR code parse error, error = ".concat(d)},g.errorGettingUserMedia=function(d){return"Error getting userMedia, error = ".concat(d)},g.onlyDeviceSupportedError=function(){return"The device doesn't support navigator.mediaDevices , only supported cameraIdOrConfig in this case is deviceId parameter (string)."},g.cameraStreamingNotSupported=function(){return"Camera streaming not supported by the browser."},g.unableToQuerySupportedDevices=function(){return"Unable to query supported devices, unknown error."},g.insecureContextCameraQueryError=function(){return"Camera access is only supported in secure context like https or localhost."},g.scannerPaused=function(){return"Scanner paused"},g}(),Sr=function(){function g(){}return g.isMediaStreamConstraintsValid=function(d,h){if(typeof d!="object"){var m=typeof d;return h.logError("videoConstraints should be of type object, the "+"object passed is of type ".concat(m,"."),!0),!1}for(var p=["autoGainControl","channelCount","echoCancellation","latency","noiseSuppression","sampleRate","sampleSize","volume"],x=new Set(p),y=Object.keys(d),M=0,B=y;M<B.length;M++){var A=B[M];if(x.has(A))return h.logError("".concat(A," is not supported videoConstaints."),!0),!1}return!0},g}(),xn=typeof globalThis!="undefined"?globalThis:typeof window!="undefined"?window:typeof global!="undefined"?global:typeof self!="undefined"?self:{};function wi(g){return g&&g.__esModule&&Object.prototype.hasOwnProperty.call(g,"default")?g.default:g}var qn={exports:{}};(function(g,d){(function(h,m){m(d)})(xn,function(h){function m(u){return u==null}var p=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(u,e){u.__proto__=e}||function(u,e){for(var t in e)e.hasOwnProperty(t)&&(u[t]=e[t])};function x(u,e){p(u,e);function t(){this.constructor=u}u.prototype=e===null?Object.create(e):(t.prototype=e.prototype,new t)}function y(u,e){var t=Object.setPrototypeOf;t?t(u,e):u.__proto__=e}function M(u,e){e===void 0&&(e=u.constructor);var t=Error.captureStackTrace;t&&t(u,e)}var B=function(u){x(e,u);function e(t){var n=this.constructor,r=u.call(this,t)||this;return Object.defineProperty(r,"name",{value:n.name,enumerable:!1}),y(r,n.prototype),M(r),r}return e}(Error);class A extends B{constructor(e=void 0){super(e),this.message=e}getKind(){return this.constructor.kind}}A.kind="Exception";class _ extends A{}_.kind="ArgumentException";class R extends A{}R.kind="IllegalArgumentException";class ${constructor(e){if(this.binarizer=e,e===null)throw new R("Binarizer must be non-null.")}getWidth(){return this.binarizer.getWidth()}getHeight(){return this.binarizer.getHeight()}getBlackRow(e,t){return this.binarizer.getBlackRow(e,t)}getBlackMatrix(){return(this.matrix===null||this.matrix===void 0)&&(this.matrix=this.binarizer.getBlackMatrix()),this.matrix}isCropSupported(){return this.binarizer.getLuminanceSource().isCropSupported()}crop(e,t,n,r){const i=this.binarizer.getLuminanceSource().crop(e,t,n,r);return new $(this.binarizer.createBinarizer(i))}isRotateSupported(){return this.binarizer.getLuminanceSource().isRotateSupported()}rotateCounterClockwise(){const e=this.binarizer.getLuminanceSource().rotateCounterClockwise();return new $(this.binarizer.createBinarizer(e))}rotateCounterClockwise45(){const e=this.binarizer.getLuminanceSource().rotateCounterClockwise45();return new $(this.binarizer.createBinarizer(e))}toString(){try{return this.getBlackMatrix().toString()}catch(e){return""}}}class ee extends A{static getChecksumInstance(){return new ee}}ee.kind="ChecksumException";class Ne{constructor(e){this.source=e}getLuminanceSource(){return this.source}getWidth(){return this.source.getWidth()}getHeight(){return this.source.getHeight()}}class te{static arraycopy(e,t,n,r,i){for(;i--;)n[r++]=e[t++]}static currentTimeMillis(){return Date.now()}}class et extends A{}et.kind="IndexOutOfBoundsException";class At extends et{constructor(e=void 0,t=void 0){super(t),this.index=e,this.message=t}}At.kind="ArrayIndexOutOfBoundsException";class Ae{static fill(e,t){for(let n=0,r=e.length;n<r;n++)e[n]=t}static fillWithin(e,t,n,r){Ae.rangeCheck(e.length,t,n);for(let i=t;i<n;i++)e[i]=r}static rangeCheck(e,t,n){if(t>n)throw new R("fromIndex("+t+") > toIndex("+n+")");if(t<0)throw new At(t);if(n>e)throw new At(n)}static asList(...e){return e}static create(e,t,n){return Array.from({length:e}).map(i=>Array.from({length:t}).fill(n))}static createInt32Array(e,t,n){return Array.from({length:e}).map(i=>Int32Array.from({length:t}).fill(n))}static equals(e,t){if(!e||!t||!e.length||!t.length||e.length!==t.length)return!1;for(let n=0,r=e.length;n<r;n++)if(e[n]!==t[n])return!1;return!0}static hashCode(e){if(e===null)return 0;let t=1;for(const n of e)t=31*t+n;return t}static fillUint8Array(e,t){for(let n=0;n!==e.length;n++)e[n]=t}static copyOf(e,t){return e.slice(0,t)}static copyOfUint8Array(e,t){if(e.length<=t){const n=new Uint8Array(t);return n.set(e),n}return e.slice(0,t)}static copyOfRange(e,t,n){const r=n-t,i=new Int32Array(r);return te.arraycopy(e,t,i,0,r),i}static binarySearch(e,t,n){n===void 0&&(n=Ae.numberComparator);let r=0,i=e.length-1;for(;r<=i;){const s=i+r>>1,o=n(t,e[s]);if(o>0)r=s+1;else if(o<0)i=s-1;else return s}return-r-1}static numberComparator(e,t){return e-t}}class K{static numberOfTrailingZeros(e){let t;if(e===0)return 32;let n=31;return t=e<<16,t!==0&&(n-=16,e=t),t=e<<8,t!==0&&(n-=8,e=t),t=e<<4,t!==0&&(n-=4,e=t),t=e<<2,t!==0&&(n-=2,e=t),n-(e<<1>>>31)}static numberOfLeadingZeros(e){if(e===0)return 32;let t=1;return e>>>16||(t+=16,e<<=16),e>>>24||(t+=8,e<<=8),e>>>28||(t+=4,e<<=4),e>>>30||(t+=2,e<<=2),t-=e>>>31,t}static toHexString(e){return e.toString(16)}static toBinaryString(e){return String(parseInt(String(e),2))}static bitCount(e){return e=e-(e>>>1&1431655765),e=(e&858993459)+(e>>>2&858993459),e=e+(e>>>4)&252645135,e=e+(e>>>8),e=e+(e>>>16),e&63}static truncDivision(e,t){return Math.trunc(e/t)}static parseInt(e,t=void 0){return parseInt(e,t)}}K.MIN_VALUE_32_BITS=-2147483648,K.MAX_VALUE=Number.MAX_SAFE_INTEGER;class le{constructor(e,t){e===void 0?(this.size=0,this.bits=new Int32Array(1)):(this.size=e,t==null?this.bits=le.makeArray(e):this.bits=t)}getSize(){return this.size}getSizeInBytes(){return Math.floor((this.size+7)/8)}ensureCapacity(e){if(e>this.bits.length*32){const t=le.makeArray(e);te.arraycopy(this.bits,0,t,0,this.bits.length),this.bits=t}}get(e){return(this.bits[Math.floor(e/32)]&1<<(e&31))!==0}set(e){this.bits[Math.floor(e/32)]|=1<<(e&31)}flip(e){this.bits[Math.floor(e/32)]^=1<<(e&31)}getNextSet(e){const t=this.size;if(e>=t)return t;const n=this.bits;let r=Math.floor(e/32),i=n[r];i&=~((1<<(e&31))-1);const s=n.length;for(;i===0;){if(++r===s)return t;i=n[r]}const o=r*32+K.numberOfTrailingZeros(i);return o>t?t:o}getNextUnset(e){const t=this.size;if(e>=t)return t;const n=this.bits;let r=Math.floor(e/32),i=~n[r];i&=~((1<<(e&31))-1);const s=n.length;for(;i===0;){if(++r===s)return t;i=~n[r]}const o=r*32+K.numberOfTrailingZeros(i);return o>t?t:o}setBulk(e,t){this.bits[Math.floor(e/32)]=t}setRange(e,t){if(t<e||e<0||t>this.size)throw new R;if(t===e)return;t--;const n=Math.floor(e/32),r=Math.floor(t/32),i=this.bits;for(let s=n;s<=r;s++){const o=s>n?0:e&31,l=(2<<(s<r?31:t&31))-(1<<o);i[s]|=l}}clear(){const e=this.bits.length,t=this.bits;for(let n=0;n<e;n++)t[n]=0}isRange(e,t,n){if(t<e||e<0||t>this.size)throw new R;if(t===e)return!0;t--;const r=Math.floor(e/32),i=Math.floor(t/32),s=this.bits;for(let o=r;o<=i;o++){const a=o>r?0:e&31,c=(2<<(o<i?31:t&31))-(1<<a)&4294967295;if((s[o]&c)!==(n?c:0))return!1}return!0}appendBit(e){this.ensureCapacity(this.size+1),e&&(this.bits[Math.floor(this.size/32)]|=1<<(this.size&31)),this.size++}appendBits(e,t){if(t<0||t>32)throw new R("Num bits must be between 0 and 32");this.ensureCapacity(this.size+t);for(let n=t;n>0;n--)this.appendBit((e>>n-1&1)===1)}appendBitArray(e){const t=e.size;this.ensureCapacity(this.size+t);for(let n=0;n<t;n++)this.appendBit(e.get(n))}xor(e){if(this.size!==e.size)throw new R("Sizes don't match");const t=this.bits;for(let n=0,r=t.length;n<r;n++)t[n]^=e.bits[n]}toBytes(e,t,n,r){for(let i=0;i<r;i++){let s=0;for(let o=0;o<8;o++)this.get(e)&&(s|=1<<7-o),e++;t[n+i]=s}}getBitArray(){return this.bits}reverse(){const e=new Int32Array(this.bits.length),t=Math.floor((this.size-1)/32),n=t+1,r=this.bits;for(let i=0;i<n;i++){let s=r[i];s=s>>1&1431655765|(s&1431655765)<<1,s=s>>2&858993459|(s&858993459)<<2,s=s>>4&252645135|(s&252645135)<<4,s=s>>8&16711935|(s&16711935)<<8,s=s>>16&65535|(s&65535)<<16,e[t-i]=s}if(this.size!==n*32){const i=n*32-this.size;let s=e[0]>>>i;for(let o=1;o<n;o++){const a=e[o];s|=a<<32-i,e[o-1]=s,s=a>>>i}e[n-1]=s}this.bits=e}static makeArray(e){return new Int32Array(Math.floor((e+31)/32))}equals(e){if(!(e instanceof le))return!1;const t=e;return this.size===t.size&&Ae.equals(this.bits,t.bits)}hashCode(){return 31*this.size+Ae.hashCode(this.bits)}toString(){let e="";for(let t=0,n=this.size;t<n;t++)t&7||(e+=" "),e+=this.get(t)?"X":".";return e}clone(){return new le(this.size,this.bits.slice())}}var Pt;(function(u){u[u.OTHER=0]="OTHER",u[u.PURE_BARCODE=1]="PURE_BARCODE",u[u.POSSIBLE_FORMATS=2]="POSSIBLE_FORMATS",u[u.TRY_HARDER=3]="TRY_HARDER",u[u.CHARACTER_SET=4]="CHARACTER_SET",u[u.ALLOWED_LENGTHS=5]="ALLOWED_LENGTHS",u[u.ASSUME_CODE_39_CHECK_DIGIT=6]="ASSUME_CODE_39_CHECK_DIGIT",u[u.ASSUME_GS1=7]="ASSUME_GS1",u[u.RETURN_CODABAR_START_END=8]="RETURN_CODABAR_START_END",u[u.NEED_RESULT_POINT_CALLBACK=9]="NEED_RESULT_POINT_CALLBACK",u[u.ALLOWED_EAN_EXTENSIONS=10]="ALLOWED_EAN_EXTENSIONS"})(Pt||(Pt={}));var Ce=Pt;class U extends A{static getFormatInstance(){return new U}}U.kind="FormatException";var we;(function(u){u[u.Cp437=0]="Cp437",u[u.ISO8859_1=1]="ISO8859_1",u[u.ISO8859_2=2]="ISO8859_2",u[u.ISO8859_3=3]="ISO8859_3",u[u.ISO8859_4=4]="ISO8859_4",u[u.ISO8859_5=5]="ISO8859_5",u[u.ISO8859_6=6]="ISO8859_6",u[u.ISO8859_7=7]="ISO8859_7",u[u.ISO8859_8=8]="ISO8859_8",u[u.ISO8859_9=9]="ISO8859_9",u[u.ISO8859_10=10]="ISO8859_10",u[u.ISO8859_11=11]="ISO8859_11",u[u.ISO8859_13=12]="ISO8859_13",u[u.ISO8859_14=13]="ISO8859_14",u[u.ISO8859_15=14]="ISO8859_15",u[u.ISO8859_16=15]="ISO8859_16",u[u.SJIS=16]="SJIS",u[u.Cp1250=17]="Cp1250",u[u.Cp1251=18]="Cp1251",u[u.Cp1252=19]="Cp1252",u[u.Cp1256=20]="Cp1256",u[u.UnicodeBigUnmarked=21]="UnicodeBigUnmarked",u[u.UTF8=22]="UTF8",u[u.ASCII=23]="ASCII",u[u.Big5=24]="Big5",u[u.GB18030=25]="GB18030",u[u.EUC_KR=26]="EUC_KR"})(we||(we={}));class F{constructor(e,t,n,...r){this.valueIdentifier=e,this.name=n,typeof t=="number"?this.values=Int32Array.from([t]):this.values=t,this.otherEncodingNames=r,F.VALUE_IDENTIFIER_TO_ECI.set(e,this),F.NAME_TO_ECI.set(n,this);const i=this.values;for(let s=0,o=i.length;s!==o;s++){const a=i[s];F.VALUES_TO_ECI.set(a,this)}for(const s of r)F.NAME_TO_ECI.set(s,this)}getValueIdentifier(){return this.valueIdentifier}getName(){return this.name}getValue(){return this.values[0]}static getCharacterSetECIByValue(e){if(e<0||e>=900)throw new U("incorect value");const t=F.VALUES_TO_ECI.get(e);if(t===void 0)throw new U("incorect value");return t}static getCharacterSetECIByName(e){const t=F.NAME_TO_ECI.get(e);if(t===void 0)throw new U("incorect value");return t}equals(e){if(!(e instanceof F))return!1;const t=e;return this.getName()===t.getName()}}F.VALUE_IDENTIFIER_TO_ECI=new Map,F.VALUES_TO_ECI=new Map,F.NAME_TO_ECI=new Map,F.Cp437=new F(we.Cp437,Int32Array.from([0,2]),"Cp437"),F.ISO8859_1=new F(we.ISO8859_1,Int32Array.from([1,3]),"ISO-8859-1","ISO88591","ISO8859_1"),F.ISO8859_2=new F(we.ISO8859_2,4,"ISO-8859-2","ISO88592","ISO8859_2"),F.ISO8859_3=new F(we.ISO8859_3,5,"ISO-8859-3","ISO88593","ISO8859_3"),F.ISO8859_4=new F(we.ISO8859_4,6,"ISO-8859-4","ISO88594","ISO8859_4"),F.ISO8859_5=new F(we.ISO8859_5,7,"ISO-8859-5","ISO88595","ISO8859_5"),F.ISO8859_6=new F(we.ISO8859_6,8,"ISO-8859-6","ISO88596","ISO8859_6"),F.ISO8859_7=new F(we.ISO8859_7,9,"ISO-8859-7","ISO88597","ISO8859_7"),F.ISO8859_8=new F(we.ISO8859_8,10,"ISO-8859-8","ISO88598","ISO8859_8"),F.ISO8859_9=new F(we.ISO8859_9,11,"ISO-8859-9","ISO88599","ISO8859_9"),F.ISO8859_10=new F(we.ISO8859_10,12,"ISO-8859-10","ISO885910","ISO8859_10"),F.ISO8859_11=new F(we.ISO8859_11,13,"ISO-8859-11","ISO885911","ISO8859_11"),F.ISO8859_13=new F(we.ISO8859_13,15,"ISO-8859-13","ISO885913","ISO8859_13"),F.ISO8859_14=new F(we.ISO8859_14,16,"ISO-8859-14","ISO885914","ISO8859_14"),F.ISO8859_15=new F(we.ISO8859_15,17,"ISO-8859-15","ISO885915","ISO8859_15"),F.ISO8859_16=new F(we.ISO8859_16,18,"ISO-8859-16","ISO885916","ISO8859_16"),F.SJIS=new F(we.SJIS,20,"SJIS","Shift_JIS"),F.Cp1250=new F(we.Cp1250,21,"Cp1250","windows-1250"),F.Cp1251=new F(we.Cp1251,22,"Cp1251","windows-1251"),F.Cp1252=new F(we.Cp1252,23,"Cp1252","windows-1252"),F.Cp1256=new F(we.Cp1256,24,"Cp1256","windows-1256"),F.UnicodeBigUnmarked=new F(we.UnicodeBigUnmarked,25,"UnicodeBigUnmarked","UTF-16BE","UnicodeBig"),F.UTF8=new F(we.UTF8,26,"UTF8","UTF-8"),F.ASCII=new F(we.ASCII,Int32Array.from([27,170]),"ASCII","US-ASCII"),F.Big5=new F(we.Big5,28,"Big5"),F.GB18030=new F(we.GB18030,29,"GB18030","GB2312","EUC_CN","GBK"),F.EUC_KR=new F(we.EUC_KR,30,"EUC_KR","EUC-KR");class tn extends A{}tn.kind="UnsupportedOperationException";class at{static decode(e,t){const n=this.encodingName(t);return this.customDecoder?this.customDecoder(e,n):typeof TextDecoder=="undefined"||this.shouldDecodeOnFallback(n)?this.decodeFallback(e,n):new TextDecoder(n).decode(e)}static shouldDecodeOnFallback(e){return!at.isBrowser()&&e==="ISO-8859-1"}static encode(e,t){const n=this.encodingName(t);return this.customEncoder?this.customEncoder(e,n):typeof TextEncoder=="undefined"?this.encodeFallback(e):new TextEncoder().encode(e)}static isBrowser(){return typeof window!="undefined"&&{}.toString.call(window)==="[object Window]"}static encodingName(e){return typeof e=="string"?e:e.getName()}static encodingCharacterSet(e){return e instanceof F?e:F.getCharacterSetECIByName(e)}static decodeFallback(e,t){const n=this.encodingCharacterSet(t);if(at.isDecodeFallbackSupported(n)){let r="";for(let i=0,s=e.length;i<s;i++){let o=e[i].toString(16);o.length<2&&(o="0"+o),r+="%"+o}return decodeURIComponent(r)}if(n.equals(F.UnicodeBigUnmarked))return String.fromCharCode.apply(null,new Uint16Array(e.buffer));throw new tn(`Encoding ${this.encodingName(t)} not supported by fallback.`)}static isDecodeFallbackSupported(e){return e.equals(F.UTF8)||e.equals(F.ISO8859_1)||e.equals(F.ASCII)}static encodeFallback(e){const n=btoa(unescape(encodeURIComponent(e))).split(""),r=[];for(let i=0;i<n.length;i++)r.push(n[i].charCodeAt(0));return new Uint8Array(r)}}class J{static castAsNonUtf8Char(e,t=null){const n=t?t.getName():this.ISO88591;return at.decode(new Uint8Array([e]),n)}static guessEncoding(e,t){if(t!=null&&t.get(Ce.CHARACTER_SET)!==void 0)return t.get(Ce.CHARACTER_SET).toString();const n=e.length;let r=!0,i=!0,s=!0,o=0,a=0,l=0,c=0,f=0,w=0,E=0,I=0,b=0,S=0,O=0;const L=e.length>3&&e[0]===239&&e[1]===187&&e[2]===191;for(let k=0;k<n&&(r||i||s);k++){const P=e[k]&255;s&&(o>0?P&128?o--:s=!1:P&128&&(P&64?(o++,P&32?(o++,P&16?(o++,P&8?s=!1:c++):l++):a++):s=!1)),r&&(P>127&&P<160?r=!1:P>159&&(P<192||P===215||P===247)&&O++),i&&(f>0?P<64||P===127||P>252?i=!1:f--:P===128||P===160||P>239?i=!1:P>160&&P<224?(w++,I=0,E++,E>b&&(b=E)):P>127?(f++,E=0,I++,I>S&&(S=I)):(E=0,I=0))}return s&&o>0&&(s=!1),i&&f>0&&(i=!1),s&&(L||a+l+c>0)?J.UTF8:i&&(J.ASSUME_SHIFT_JIS||b>=3||S>=3)?J.SHIFT_JIS:r&&i?b===2&&w===2||O*10>=n?J.SHIFT_JIS:J.ISO88591:r?J.ISO88591:i?J.SHIFT_JIS:s?J.UTF8:J.PLATFORM_DEFAULT_ENCODING}static format(e,...t){let n=-1;function r(s,o,a,l,c,f){if(s==="%%")return"%";if(t[++n]===void 0)return;s=l?parseInt(l.substr(1)):void 0;let w=c?parseInt(c.substr(1)):void 0,E;switch(f){case"s":E=t[n];break;case"c":E=t[n][0];break;case"f":E=parseFloat(t[n]).toFixed(s);break;case"p":E=parseFloat(t[n]).toPrecision(s);break;case"e":E=parseFloat(t[n]).toExponential(s);break;case"x":E=parseInt(t[n]).toString(w||16);break;case"d":E=parseFloat(parseInt(t[n],w||10).toPrecision(s)).toFixed(0);break}E=typeof E=="object"?JSON.stringify(E):(+E).toString(w);let I=parseInt(a),b=a&&a[0]+""=="0"?"0":" ";for(;E.length<I;)E=o!==void 0?E+b:b+E;return E}let i=/%(-)?(0?[0-9]+)?([.][0-9]+)?([#][0-9]+)?([scfpexd%])/g;return e.replace(i,r)}static getBytes(e,t){return at.encode(e,t)}static getCharCode(e,t=0){return e.charCodeAt(t)}static getCharAt(e){return String.fromCharCode(e)}}J.SHIFT_JIS=F.SJIS.getName(),J.GB2312="GB2312",J.ISO88591=F.ISO8859_1.getName(),J.EUC_JP="EUC_JP",J.UTF8=F.UTF8.getName(),J.PLATFORM_DEFAULT_ENCODING=J.UTF8,J.ASSUME_SHIFT_JIS=!1;class me{constructor(e=""){this.value=e}enableDecoding(e){return this.encoding=e,this}append(e){return typeof e=="string"?this.value+=e.toString():this.encoding?this.value+=J.castAsNonUtf8Char(e,this.encoding):this.value+=String.fromCharCode(e),this}appendChars(e,t,n){for(let r=t;t<t+n;r++)this.append(e[r]);return this}length(){return this.value.length}charAt(e){return this.value.charAt(e)}deleteCharAt(e){this.value=this.value.substr(0,e)+this.value.substring(e+1)}setCharAt(e,t){this.value=this.value.substr(0,e)+t+this.value.substr(e+1)}substring(e,t){return this.value.substring(e,t)}setLengthToZero(){this.value=""}toString(){return this.value}insert(e,t){this.value=this.value.substr(0,e)+t+this.value.substr(e+t.length)}}class Ge{constructor(e,t,n,r){if(this.width=e,this.height=t,this.rowSize=n,this.bits=r,t==null&&(t=e),this.height=t,e<1||t<1)throw new R("Both dimensions must be greater than 0");n==null&&(n=Math.floor((e+31)/32)),this.rowSize=n,r==null&&(this.bits=new Int32Array(this.rowSize*this.height))}static parseFromBooleanArray(e){const t=e.length,n=e[0].length,r=new Ge(n,t);for(let i=0;i<t;i++){const s=e[i];for(let o=0;o<n;o++)s[o]&&r.set(o,i)}return r}static parseFromString(e,t,n){if(e===null)throw new R("stringRepresentation cannot be null");const r=new Array(e.length);let i=0,s=0,o=-1,a=0,l=0;for(;l<e.length;)if(e.charAt(l)===`
|
|
11
|
+
`||e.charAt(l)==="\r"){if(i>s){if(o===-1)o=i-s;else if(i-s!==o)throw new R("row lengths do not match");s=i,a++}l++}else if(e.substring(l,l+t.length)===t)l+=t.length,r[i]=!0,i++;else if(e.substring(l,l+n.length)===n)l+=n.length,r[i]=!1,i++;else throw new R("illegal character encountered: "+e.substring(l));if(i>s){if(o===-1)o=i-s;else if(i-s!==o)throw new R("row lengths do not match");a++}const c=new Ge(o,a);for(let f=0;f<i;f++)r[f]&&c.set(Math.floor(f%o),Math.floor(f/o));return c}get(e,t){const n=t*this.rowSize+Math.floor(e/32);return(this.bits[n]>>>(e&31)&1)!==0}set(e,t){const n=t*this.rowSize+Math.floor(e/32);this.bits[n]|=1<<(e&31)&4294967295}unset(e,t){const n=t*this.rowSize+Math.floor(e/32);this.bits[n]&=~(1<<(e&31)&4294967295)}flip(e,t){const n=t*this.rowSize+Math.floor(e/32);this.bits[n]^=1<<(e&31)&4294967295}xor(e){if(this.width!==e.getWidth()||this.height!==e.getHeight()||this.rowSize!==e.getRowSize())throw new R("input matrix dimensions do not match");const t=new le(Math.floor(this.width/32)+1),n=this.rowSize,r=this.bits;for(let i=0,s=this.height;i<s;i++){const o=i*n,a=e.getRow(i,t).getBitArray();for(let l=0;l<n;l++)r[o+l]^=a[l]}}clear(){const e=this.bits,t=e.length;for(let n=0;n<t;n++)e[n]=0}setRegion(e,t,n,r){if(t<0||e<0)throw new R("Left and top must be nonnegative");if(r<1||n<1)throw new R("Height and width must be at least 1");const i=e+n,s=t+r;if(s>this.height||i>this.width)throw new R("The region must fit inside the matrix");const o=this.rowSize,a=this.bits;for(let l=t;l<s;l++){const c=l*o;for(let f=e;f<i;f++)a[c+Math.floor(f/32)]|=1<<(f&31)&4294967295}}getRow(e,t){t==null||t.getSize()<this.width?t=new le(this.width):t.clear();const n=this.rowSize,r=this.bits,i=e*n;for(let s=0;s<n;s++)t.setBulk(s*32,r[i+s]);return t}setRow(e,t){te.arraycopy(t.getBitArray(),0,this.bits,e*this.rowSize,this.rowSize)}rotate180(){const e=this.getWidth(),t=this.getHeight();let n=new le(e),r=new le(e);for(let i=0,s=Math.floor((t+1)/2);i<s;i++)n=this.getRow(i,n),r=this.getRow(t-1-i,r),n.reverse(),r.reverse(),this.setRow(i,r),this.setRow(t-1-i,n)}getEnclosingRectangle(){const e=this.width,t=this.height,n=this.rowSize,r=this.bits;let i=e,s=t,o=-1,a=-1;for(let l=0;l<t;l++)for(let c=0;c<n;c++){const f=r[l*n+c];if(f!==0){if(l<s&&(s=l),l>a&&(a=l),c*32<i){let w=0;for(;!(f<<31-w&4294967295);)w++;c*32+w<i&&(i=c*32+w)}if(c*32+31>o){let w=31;for(;!(f>>>w);)w--;c*32+w>o&&(o=c*32+w)}}}return o<i||a<s?null:Int32Array.from([i,s,o-i+1,a-s+1])}getTopLeftOnBit(){const e=this.rowSize,t=this.bits;let n=0;for(;n<t.length&&t[n]===0;)n++;if(n===t.length)return null;const r=n/e;let i=n%e*32;const s=t[n];let o=0;for(;!(s<<31-o&4294967295);)o++;return i+=o,Int32Array.from([i,r])}getBottomRightOnBit(){const e=this.rowSize,t=this.bits;let n=t.length-1;for(;n>=0&&t[n]===0;)n--;if(n<0)return null;const r=Math.floor(n/e);let i=Math.floor(n%e)*32;const s=t[n];let o=31;for(;!(s>>>o);)o--;return i+=o,Int32Array.from([i,r])}getWidth(){return this.width}getHeight(){return this.height}getRowSize(){return this.rowSize}equals(e){if(!(e instanceof Ge))return!1;const t=e;return this.width===t.width&&this.height===t.height&&this.rowSize===t.rowSize&&Ae.equals(this.bits,t.bits)}hashCode(){let e=this.width;return e=31*e+this.width,e=31*e+this.height,e=31*e+this.rowSize,e=31*e+Ae.hashCode(this.bits),e}toString(e="X ",t=" ",n=`
|
|
12
|
+
`){return this.buildToString(e,t,n)}buildToString(e,t,n){let r=new me;for(let i=0,s=this.height;i<s;i++){for(let o=0,a=this.width;o<a;o++)r.append(this.get(o,i)?e:t);r.append(n)}return r.toString()}clone(){return new Ge(this.width,this.height,this.rowSize,this.bits.slice())}}class D extends A{static getNotFoundInstance(){return new D}}D.kind="NotFoundException";class We extends Ne{constructor(e){super(e),this.luminances=We.EMPTY,this.buckets=new Int32Array(We.LUMINANCE_BUCKETS)}getBlackRow(e,t){const n=this.getLuminanceSource(),r=n.getWidth();t==null||t.getSize()<r?t=new le(r):t.clear(),this.initArrays(r);const i=n.getRow(e,this.luminances),s=this.buckets;for(let a=0;a<r;a++)s[(i[a]&255)>>We.LUMINANCE_SHIFT]++;const o=We.estimateBlackPoint(s);if(r<3)for(let a=0;a<r;a++)(i[a]&255)<o&&t.set(a);else{let a=i[0]&255,l=i[1]&255;for(let c=1;c<r-1;c++){const f=i[c+1]&255;(l*4-a-f)/2<o&&t.set(c),a=l,l=f}}return t}getBlackMatrix(){const e=this.getLuminanceSource(),t=e.getWidth(),n=e.getHeight(),r=new Ge(t,n);this.initArrays(t);const i=this.buckets;for(let a=1;a<5;a++){const l=Math.floor(n*a/5),c=e.getRow(l,this.luminances),f=Math.floor(t*4/5);for(let w=Math.floor(t/5);w<f;w++){const E=c[w]&255;i[E>>We.LUMINANCE_SHIFT]++}}const s=We.estimateBlackPoint(i),o=e.getMatrix();for(let a=0;a<n;a++){const l=a*t;for(let c=0;c<t;c++)(o[l+c]&255)<s&&r.set(c,a)}return r}createBinarizer(e){return new We(e)}initArrays(e){this.luminances.length<e&&(this.luminances=new Uint8ClampedArray(e));const t=this.buckets;for(let n=0;n<We.LUMINANCE_BUCKETS;n++)t[n]=0}static estimateBlackPoint(e){const t=e.length;let n=0,r=0,i=0;for(let c=0;c<t;c++)e[c]>i&&(r=c,i=e[c]),e[c]>n&&(n=e[c]);let s=0,o=0;for(let c=0;c<t;c++){const f=c-r,w=e[c]*f*f;w>o&&(s=c,o=w)}if(r>s){const c=r;r=s,s=c}if(s-r<=t/16)throw new D;let a=s-1,l=-1;for(let c=s-1;c>r;c--){const f=c-r,w=f*f*(s-c)*(n-e[c]);w>l&&(a=c,l=w)}return a<<We.LUMINANCE_SHIFT}}We.LUMINANCE_BITS=5,We.LUMINANCE_SHIFT=8-We.LUMINANCE_BITS,We.LUMINANCE_BUCKETS=1<<We.LUMINANCE_BITS,We.EMPTY=Uint8ClampedArray.from([0]);class re extends We{constructor(e){super(e),this.matrix=null}getBlackMatrix(){if(this.matrix!==null)return this.matrix;const e=this.getLuminanceSource(),t=e.getWidth(),n=e.getHeight();if(t>=re.MINIMUM_DIMENSION&&n>=re.MINIMUM_DIMENSION){const r=e.getMatrix();let i=t>>re.BLOCK_SIZE_POWER;t&re.BLOCK_SIZE_MASK&&i++;let s=n>>re.BLOCK_SIZE_POWER;n&re.BLOCK_SIZE_MASK&&s++;const o=re.calculateBlackPoints(r,i,s,t,n),a=new Ge(t,n);re.calculateThresholdForBlock(r,i,s,t,n,o,a),this.matrix=a}else this.matrix=super.getBlackMatrix();return this.matrix}createBinarizer(e){return new re(e)}static calculateThresholdForBlock(e,t,n,r,i,s,o){const a=i-re.BLOCK_SIZE,l=r-re.BLOCK_SIZE;for(let c=0;c<n;c++){let f=c<<re.BLOCK_SIZE_POWER;f>a&&(f=a);const w=re.cap(c,2,n-3);for(let E=0;E<t;E++){let I=E<<re.BLOCK_SIZE_POWER;I>l&&(I=l);const b=re.cap(E,2,t-3);let S=0;for(let L=-2;L<=2;L++){const k=s[w+L];S+=k[b-2]+k[b-1]+k[b]+k[b+1]+k[b+2]}const O=S/25;re.thresholdBlock(e,I,f,O,r,o)}}}static cap(e,t,n){return e<t?t:e>n?n:e}static thresholdBlock(e,t,n,r,i,s){for(let o=0,a=n*i+t;o<re.BLOCK_SIZE;o++,a+=i)for(let l=0;l<re.BLOCK_SIZE;l++)(e[a+l]&255)<=r&&s.set(t+l,n+o)}static calculateBlackPoints(e,t,n,r,i){const s=i-re.BLOCK_SIZE,o=r-re.BLOCK_SIZE,a=new Array(n);for(let l=0;l<n;l++){a[l]=new Int32Array(t);let c=l<<re.BLOCK_SIZE_POWER;c>s&&(c=s);for(let f=0;f<t;f++){let w=f<<re.BLOCK_SIZE_POWER;w>o&&(w=o);let E=0,I=255,b=0;for(let O=0,L=c*r+w;O<re.BLOCK_SIZE;O++,L+=r){for(let k=0;k<re.BLOCK_SIZE;k++){const P=e[L+k]&255;E+=P,P<I&&(I=P),P>b&&(b=P)}if(b-I>re.MIN_DYNAMIC_RANGE)for(O++,L+=r;O<re.BLOCK_SIZE;O++,L+=r)for(let k=0;k<re.BLOCK_SIZE;k++)E+=e[L+k]&255}let S=E>>re.BLOCK_SIZE_POWER*2;if(b-I<=re.MIN_DYNAMIC_RANGE&&(S=I/2,l>0&&f>0)){const O=(a[l-1][f]+2*a[l][f-1]+a[l-1][f-1])/4;I<O&&(S=O)}a[l][f]=S}}return a}}re.BLOCK_SIZE_POWER=3,re.BLOCK_SIZE=1<<re.BLOCK_SIZE_POWER,re.BLOCK_SIZE_MASK=re.BLOCK_SIZE-1,re.MINIMUM_DIMENSION=re.BLOCK_SIZE*5,re.MIN_DYNAMIC_RANGE=24;class gn{constructor(e,t){this.width=e,this.height=t}getWidth(){return this.width}getHeight(){return this.height}isCropSupported(){return!1}crop(e,t,n,r){throw new tn("This luminance source does not support cropping.")}isRotateSupported(){return!1}rotateCounterClockwise(){throw new tn("This luminance source does not support rotation by 90 degrees.")}rotateCounterClockwise45(){throw new tn("This luminance source does not support rotation by 45 degrees.")}toString(){const e=new Uint8ClampedArray(this.width);let t=new me;for(let n=0;n<this.height;n++){const r=this.getRow(n,e);for(let i=0;i<this.width;i++){const s=r[i]&255;let o;s<64?o="#":s<128?o="+":s<192?o=".":o=" ",t.append(o)}t.append(`
|
|
13
|
+
`)}return t.toString()}}class Lt extends gn{constructor(e){super(e.getWidth(),e.getHeight()),this.delegate=e}getRow(e,t){const n=this.delegate.getRow(e,t),r=this.getWidth();for(let i=0;i<r;i++)n[i]=255-(n[i]&255);return n}getMatrix(){const e=this.delegate.getMatrix(),t=this.getWidth()*this.getHeight(),n=new Uint8ClampedArray(t);for(let r=0;r<t;r++)n[r]=255-(e[r]&255);return n}isCropSupported(){return this.delegate.isCropSupported()}crop(e,t,n,r){return new Lt(this.delegate.crop(e,t,n,r))}isRotateSupported(){return this.delegate.isRotateSupported()}invert(){return this.delegate}rotateCounterClockwise(){return new Lt(this.delegate.rotateCounterClockwise())}rotateCounterClockwise45(){return new Lt(this.delegate.rotateCounterClockwise45())}}class kt extends gn{constructor(e){super(e.width,e.height),this.canvas=e,this.tempCanvasElement=null,this.buffer=kt.makeBufferFromCanvasImageData(e)}static makeBufferFromCanvasImageData(e){const t=e.getContext("2d").getImageData(0,0,e.width,e.height);return kt.toGrayscaleBuffer(t.data,e.width,e.height)}static toGrayscaleBuffer(e,t,n){const r=new Uint8ClampedArray(t*n);for(let i=0,s=0,o=e.length;i<o;i+=4,s++){let a;if(e[i+3]===0)a=255;else{const c=e[i],f=e[i+1],w=e[i+2];a=306*c+601*f+117*w+512>>10}r[s]=a}return r}getRow(e,t){if(e<0||e>=this.getHeight())throw new R("Requested row is outside the image: "+e);const n=this.getWidth(),r=e*n;return t===null?t=this.buffer.slice(r,r+n):(t.length<n&&(t=new Uint8ClampedArray(n)),t.set(this.buffer.slice(r,r+n))),t}getMatrix(){return this.buffer}isCropSupported(){return!0}crop(e,t,n,r){return super.crop(e,t,n,r),this}isRotateSupported(){return!0}rotateCounterClockwise(){return this.rotate(-90),this}rotateCounterClockwise45(){return this.rotate(-45),this}getTempCanvasElement(){if(this.tempCanvasElement===null){const e=this.canvas.ownerDocument.createElement("canvas");e.width=this.canvas.width,e.height=this.canvas.height,this.tempCanvasElement=e}return this.tempCanvasElement}rotate(e){const t=this.getTempCanvasElement(),n=t.getContext("2d"),r=e*kt.DEGREE_TO_RADIANS,i=this.canvas.width,s=this.canvas.height,o=Math.ceil(Math.abs(Math.cos(r))*i+Math.abs(Math.sin(r))*s),a=Math.ceil(Math.abs(Math.sin(r))*i+Math.abs(Math.cos(r))*s);return t.width=o,t.height=a,n.translate(o/2,a/2),n.rotate(r),n.drawImage(this.canvas,i/-2,s/-2),this.buffer=kt.makeBufferFromCanvasImageData(t),this}invert(){return new Lt(this)}}kt.DEGREE_TO_RADIANS=Math.PI/180;class Vr{constructor(e,t,n){this.deviceId=e,this.label=t,this.kind="videoinput",this.groupId=n||void 0}toJSON(){return{kind:this.kind,groupId:this.groupId,deviceId:this.deviceId,label:this.label}}}var tt=(globalThis||xn||self||window||void 0)&&(globalThis||xn||self||window||void 0).__awaiter||function(u,e,t,n){function r(i){return i instanceof t?i:new t(function(s){s(i)})}return new(t||(t=Promise))(function(i,s){function o(c){try{l(n.next(c))}catch(f){s(f)}}function a(c){try{l(n.throw(c))}catch(f){s(f)}}function l(c){c.done?i(c.value):r(c.value).then(o,a)}l((n=n.apply(u,e||[])).next())})};class zt{constructor(e,t=500,n){this.reader=e,this.timeBetweenScansMillis=t,this._hints=n,this._stopContinuousDecode=!1,this._stopAsyncDecode=!1,this._timeBetweenDecodingAttempts=0}get hasNavigator(){return typeof navigator!="undefined"}get isMediaDevicesSuported(){return this.hasNavigator&&!!navigator.mediaDevices}get canEnumerateDevices(){return!!(this.isMediaDevicesSuported&&navigator.mediaDevices.enumerateDevices)}get timeBetweenDecodingAttempts(){return this._timeBetweenDecodingAttempts}set timeBetweenDecodingAttempts(e){this._timeBetweenDecodingAttempts=e<0?0:e}set hints(e){this._hints=e||null}get hints(){return this._hints}listVideoInputDevices(){return tt(this,void 0,void 0,function*(){if(!this.hasNavigator)throw new Error("Can't enumerate devices, navigator is not present.");if(!this.canEnumerateDevices)throw new Error("Can't enumerate devices, method not supported.");const e=yield navigator.mediaDevices.enumerateDevices(),t=[];for(const n of e){const r=n.kind==="video"?"videoinput":n.kind;if(r!=="videoinput")continue;const i=n.deviceId||n.id,s=n.label||`Video device ${t.length+1}`,o=n.groupId,a={deviceId:i,label:s,kind:r,groupId:o};t.push(a)}return t})}getVideoInputDevices(){return tt(this,void 0,void 0,function*(){return(yield this.listVideoInputDevices()).map(t=>new Vr(t.deviceId,t.label))})}findDeviceById(e){return tt(this,void 0,void 0,function*(){const t=yield this.listVideoInputDevices();return t?t.find(n=>n.deviceId===e):null})}decodeFromInputVideoDevice(e,t){return tt(this,void 0,void 0,function*(){return yield this.decodeOnceFromVideoDevice(e,t)})}decodeOnceFromVideoDevice(e,t){return tt(this,void 0,void 0,function*(){this.reset();let n;e?n={deviceId:{exact:e}}:n={facingMode:"environment"};const r={video:n};return yield this.decodeOnceFromConstraints(r,t)})}decodeOnceFromConstraints(e,t){return tt(this,void 0,void 0,function*(){const n=yield navigator.mediaDevices.getUserMedia(e);return yield this.decodeOnceFromStream(n,t)})}decodeOnceFromStream(e,t){return tt(this,void 0,void 0,function*(){this.reset();const n=yield this.attachStreamToVideo(e,t);return yield this.decodeOnce(n)})}decodeFromInputVideoDeviceContinuously(e,t,n){return tt(this,void 0,void 0,function*(){return yield this.decodeFromVideoDevice(e,t,n)})}decodeFromVideoDevice(e,t,n){return tt(this,void 0,void 0,function*(){let r;e?r={deviceId:{exact:e}}:r={facingMode:"environment"};const i={video:r};return yield this.decodeFromConstraints(i,t,n)})}decodeFromConstraints(e,t,n){return tt(this,void 0,void 0,function*(){const r=yield navigator.mediaDevices.getUserMedia(e);return yield this.decodeFromStream(r,t,n)})}decodeFromStream(e,t,n){return tt(this,void 0,void 0,function*(){this.reset();const r=yield this.attachStreamToVideo(e,t);return yield this.decodeContinuously(r,n)})}stopAsyncDecode(){this._stopAsyncDecode=!0}stopContinuousDecode(){this._stopContinuousDecode=!0}attachStreamToVideo(e,t){return tt(this,void 0,void 0,function*(){const n=this.prepareVideoElement(t);return this.addVideoSource(n,e),this.videoElement=n,this.stream=e,yield this.playVideoOnLoadAsync(n),n})}playVideoOnLoadAsync(e){return new Promise((t,n)=>this.playVideoOnLoad(e,()=>t()))}playVideoOnLoad(e,t){this.videoEndedListener=()=>this.stopStreams(),this.videoCanPlayListener=()=>this.tryPlayVideo(e),e.addEventListener("ended",this.videoEndedListener),e.addEventListener("canplay",this.videoCanPlayListener),e.addEventListener("playing",t),this.tryPlayVideo(e)}isVideoPlaying(e){return e.currentTime>0&&!e.paused&&!e.ended&&e.readyState>2}tryPlayVideo(e){return tt(this,void 0,void 0,function*(){if(this.isVideoPlaying(e)){console.warn("Trying to play video that is already playing.");return}try{yield e.play()}catch(t){console.warn("It was not possible to play the video.")}})}getMediaElement(e,t){const n=document.getElementById(e);if(!n)throw new _(`element with id '${e}' not found`);if(n.nodeName.toLowerCase()!==t.toLowerCase())throw new _(`element with id '${e}' must be an ${t} element`);return n}decodeFromImage(e,t){if(!e&&!t)throw new _("either imageElement with a src set or an url must be provided");return t&&!e?this.decodeFromImageUrl(t):this.decodeFromImageElement(e)}decodeFromVideo(e,t){if(!e&&!t)throw new _("Either an element with a src set or an URL must be provided");return t&&!e?this.decodeFromVideoUrl(t):this.decodeFromVideoElement(e)}decodeFromVideoContinuously(e,t,n){if(e===void 0&&t===void 0)throw new _("Either an element with a src set or an URL must be provided");return t&&!e?this.decodeFromVideoUrlContinuously(t,n):this.decodeFromVideoElementContinuously(e,n)}decodeFromImageElement(e){if(!e)throw new _("An image element must be provided.");this.reset();const t=this.prepareImageElement(e);this.imageElement=t;let n;return this.isImageLoaded(t)?n=this.decodeOnce(t,!1,!0):n=this._decodeOnLoadImage(t),n}decodeFromVideoElement(e){const t=this._decodeFromVideoElementSetup(e);return this._decodeOnLoadVideo(t)}decodeFromVideoElementContinuously(e,t){const n=this._decodeFromVideoElementSetup(e);return this._decodeOnLoadVideoContinuously(n,t)}_decodeFromVideoElementSetup(e){if(!e)throw new _("A video element must be provided.");this.reset();const t=this.prepareVideoElement(e);return this.videoElement=t,t}decodeFromImageUrl(e){if(!e)throw new _("An URL must be provided.");this.reset();const t=this.prepareImageElement();this.imageElement=t;const n=this._decodeOnLoadImage(t);return t.src=e,n}decodeFromVideoUrl(e){if(!e)throw new _("An URL must be provided.");this.reset();const t=this.prepareVideoElement(),n=this.decodeFromVideoElement(t);return t.src=e,n}decodeFromVideoUrlContinuously(e,t){if(!e)throw new _("An URL must be provided.");this.reset();const n=this.prepareVideoElement(),r=this.decodeFromVideoElementContinuously(n,t);return n.src=e,r}_decodeOnLoadImage(e){return new Promise((t,n)=>{this.imageLoadedListener=()=>this.decodeOnce(e,!1,!0).then(t,n),e.addEventListener("load",this.imageLoadedListener)})}_decodeOnLoadVideo(e){return tt(this,void 0,void 0,function*(){return yield this.playVideoOnLoadAsync(e),yield this.decodeOnce(e)})}_decodeOnLoadVideoContinuously(e,t){return tt(this,void 0,void 0,function*(){yield this.playVideoOnLoadAsync(e),this.decodeContinuously(e,t)})}isImageLoaded(e){return!(!e.complete||e.naturalWidth===0)}prepareImageElement(e){let t;return typeof e=="undefined"&&(t=document.createElement("img"),t.width=200,t.height=200),typeof e=="string"&&(t=this.getMediaElement(e,"img")),e instanceof HTMLImageElement&&(t=e),t}prepareVideoElement(e){let t;return!e&&typeof document!="undefined"&&(t=document.createElement("video"),t.width=200,t.height=200),typeof e=="string"&&(t=this.getMediaElement(e,"video")),e instanceof HTMLVideoElement&&(t=e),t.setAttribute("autoplay","true"),t.setAttribute("muted","true"),t.setAttribute("playsinline","true"),t}decodeOnce(e,t=!0,n=!0){this._stopAsyncDecode=!1;const r=(i,s)=>{if(this._stopAsyncDecode){s(new D("Video stream has ended before any code could be detected.")),this._stopAsyncDecode=void 0;return}try{const o=this.decode(e);i(o)}catch(o){const a=t&&o instanceof D,c=(o instanceof ee||o instanceof U)&&n;if(a||c)return setTimeout(r,this._timeBetweenDecodingAttempts,i,s);s(o)}};return new Promise((i,s)=>r(i,s))}decodeContinuously(e,t){this._stopContinuousDecode=!1;const n=()=>{if(this._stopContinuousDecode){this._stopContinuousDecode=void 0;return}try{const r=this.decode(e);t(r,null),setTimeout(n,this.timeBetweenScansMillis)}catch(r){t(null,r);const i=r instanceof ee||r instanceof U,s=r instanceof D;(i||s)&&setTimeout(n,this._timeBetweenDecodingAttempts)}};n()}decode(e){const t=this.createBinaryBitmap(e);return this.decodeBitmap(t)}_isHTMLVideoElement(e){return e.videoWidth!==0}drawFrameOnCanvas(e,t,n){t||(t={sx:0,sy:0,sWidth:e.videoWidth,sHeight:e.videoHeight,dx:0,dy:0,dWidth:e.videoWidth,dHeight:e.videoHeight}),n||(n=this.captureCanvasContext),n.drawImage(e,t.sx,t.sy,t.sWidth,t.sHeight,t.dx,t.dy,t.dWidth,t.dHeight)}drawImageOnCanvas(e,t,n=this.captureCanvasContext){t||(t={sx:0,sy:0,sWidth:e.naturalWidth,sHeight:e.naturalHeight,dx:0,dy:0,dWidth:e.naturalWidth,dHeight:e.naturalHeight}),n||(n=this.captureCanvasContext),n.drawImage(e,t.sx,t.sy,t.sWidth,t.sHeight,t.dx,t.dy,t.dWidth,t.dHeight)}createBinaryBitmap(e){this.getCaptureCanvasContext(e),this._isHTMLVideoElement(e)?this.drawFrameOnCanvas(e):this.drawImageOnCanvas(e);const t=this.getCaptureCanvas(e),n=new kt(t),r=new re(n);return new $(r)}getCaptureCanvasContext(e){if(!this.captureCanvasContext){const n=this.getCaptureCanvas(e).getContext("2d");this.captureCanvasContext=n}return this.captureCanvasContext}getCaptureCanvas(e){if(!this.captureCanvas){const t=this.createCaptureCanvas(e);this.captureCanvas=t}return this.captureCanvas}decodeBitmap(e){return this.reader.decode(e,this._hints)}createCaptureCanvas(e){if(typeof document=="undefined")return this._destroyCaptureCanvas(),null;const t=document.createElement("canvas");let n,r;return typeof e!="undefined"&&(e instanceof HTMLVideoElement?(n=e.videoWidth,r=e.videoHeight):e instanceof HTMLImageElement&&(n=e.naturalWidth||e.width,r=e.naturalHeight||e.height)),t.style.width=n+"px",t.style.height=r+"px",t.width=n,t.height=r,t}stopStreams(){this.stream&&(this.stream.getVideoTracks().forEach(e=>e.stop()),this.stream=void 0),this._stopAsyncDecode===!1&&this.stopAsyncDecode(),this._stopContinuousDecode===!1&&this.stopContinuousDecode()}reset(){this.stopStreams(),this._destroyVideoElement(),this._destroyImageElement(),this._destroyCaptureCanvas()}_destroyVideoElement(){this.videoElement&&(typeof this.videoEndedListener!="undefined"&&this.videoElement.removeEventListener("ended",this.videoEndedListener),typeof this.videoPlayingEventListener!="undefined"&&this.videoElement.removeEventListener("playing",this.videoPlayingEventListener),typeof this.videoCanPlayListener!="undefined"&&this.videoElement.removeEventListener("loadedmetadata",this.videoCanPlayListener),this.cleanVideoSource(this.videoElement),this.videoElement=void 0)}_destroyImageElement(){this.imageElement&&(this.imageLoadedListener!==void 0&&this.imageElement.removeEventListener("load",this.imageLoadedListener),this.imageElement.src=void 0,this.imageElement.removeAttribute("src"),this.imageElement=void 0)}_destroyCaptureCanvas(){this.captureCanvasContext=void 0,this.captureCanvas=void 0}addVideoSource(e,t){try{e.srcObject=t}catch(n){e.src=URL.createObjectURL(t)}}cleanVideoSource(e){try{e.srcObject=null}catch(t){e.src=""}this.videoElement.removeAttribute("src")}}class nt{constructor(e,t,n=t==null?0:8*t.length,r,i,s=te.currentTimeMillis()){this.text=e,this.rawBytes=t,this.numBits=n,this.resultPoints=r,this.format=i,this.timestamp=s,this.text=e,this.rawBytes=t,n==null?this.numBits=t==null?0:8*t.length:this.numBits=n,this.resultPoints=r,this.format=i,this.resultMetadata=null,s==null?this.timestamp=te.currentTimeMillis():this.timestamp=s}getText(){return this.text}getRawBytes(){return this.rawBytes}getNumBits(){return this.numBits}getResultPoints(){return this.resultPoints}getBarcodeFormat(){return this.format}getResultMetadata(){return this.resultMetadata}putMetadata(e,t){this.resultMetadata===null&&(this.resultMetadata=new Map),this.resultMetadata.set(e,t)}putAllMetadata(e){e!==null&&(this.resultMetadata===null?this.resultMetadata=e:this.resultMetadata=new Map(e))}addResultPoints(e){const t=this.resultPoints;if(t===null)this.resultPoints=e;else if(e!==null&&e.length>0){const n=new Array(t.length+e.length);te.arraycopy(t,0,n,0,t.length),te.arraycopy(e,0,n,t.length,e.length),this.resultPoints=n}}getTimestamp(){return this.timestamp}toString(){return this.text}}var Jn;(function(u){u[u.AZTEC=0]="AZTEC",u[u.CODABAR=1]="CODABAR",u[u.CODE_39=2]="CODE_39",u[u.CODE_93=3]="CODE_93",u[u.CODE_128=4]="CODE_128",u[u.DATA_MATRIX=5]="DATA_MATRIX",u[u.EAN_8=6]="EAN_8",u[u.EAN_13=7]="EAN_13",u[u.ITF=8]="ITF",u[u.MAXICODE=9]="MAXICODE",u[u.PDF_417=10]="PDF_417",u[u.QR_CODE=11]="QR_CODE",u[u.RSS_14=12]="RSS_14",u[u.RSS_EXPANDED=13]="RSS_EXPANDED",u[u.UPC_A=14]="UPC_A",u[u.UPC_E=15]="UPC_E",u[u.UPC_EAN_EXTENSION=16]="UPC_EAN_EXTENSION"})(Jn||(Jn={}));var j=Jn,$n;(function(u){u[u.OTHER=0]="OTHER",u[u.ORIENTATION=1]="ORIENTATION",u[u.BYTE_SEGMENTS=2]="BYTE_SEGMENTS",u[u.ERROR_CORRECTION_LEVEL=3]="ERROR_CORRECTION_LEVEL",u[u.ISSUE_NUMBER=4]="ISSUE_NUMBER",u[u.SUGGESTED_PRICE=5]="SUGGESTED_PRICE",u[u.POSSIBLE_COUNTRY=6]="POSSIBLE_COUNTRY",u[u.UPC_EAN_EXTENSION=7]="UPC_EAN_EXTENSION",u[u.PDF417_EXTRA_METADATA=8]="PDF417_EXTRA_METADATA",u[u.STRUCTURED_APPEND_SEQUENCE=9]="STRUCTURED_APPEND_SEQUENCE",u[u.STRUCTURED_APPEND_PARITY=10]="STRUCTURED_APPEND_PARITY"})($n||($n={}));var He=$n;class wn{constructor(e,t,n,r,i=-1,s=-1){this.rawBytes=e,this.text=t,this.byteSegments=n,this.ecLevel=r,this.structuredAppendSequenceNumber=i,this.structuredAppendParity=s,this.numBits=e==null?0:8*e.length}getRawBytes(){return this.rawBytes}getNumBits(){return this.numBits}setNumBits(e){this.numBits=e}getText(){return this.text}getByteSegments(){return this.byteSegments}getECLevel(){return this.ecLevel}getErrorsCorrected(){return this.errorsCorrected}setErrorsCorrected(e){this.errorsCorrected=e}getErasures(){return this.erasures}setErasures(e){this.erasures=e}getOther(){return this.other}setOther(e){this.other=e}hasStructuredAppend(){return this.structuredAppendParity>=0&&this.structuredAppendSequenceNumber>=0}getStructuredAppendParity(){return this.structuredAppendParity}getStructuredAppendSequenceNumber(){return this.structuredAppendSequenceNumber}}class An{exp(e){return this.expTable[e]}log(e){if(e===0)throw new R;return this.logTable[e]}static addOrSubtract(e,t){return e^t}}class lt{constructor(e,t){if(t.length===0)throw new R;this.field=e;const n=t.length;if(n>1&&t[0]===0){let r=1;for(;r<n&&t[r]===0;)r++;r===n?this.coefficients=Int32Array.from([0]):(this.coefficients=new Int32Array(n-r),te.arraycopy(t,r,this.coefficients,0,this.coefficients.length))}else this.coefficients=t}getCoefficients(){return this.coefficients}getDegree(){return this.coefficients.length-1}isZero(){return this.coefficients[0]===0}getCoefficient(e){return this.coefficients[this.coefficients.length-1-e]}evaluateAt(e){if(e===0)return this.getCoefficient(0);const t=this.coefficients;let n;if(e===1){n=0;for(let s=0,o=t.length;s!==o;s++){const a=t[s];n=An.addOrSubtract(n,a)}return n}n=t[0];const r=t.length,i=this.field;for(let s=1;s<r;s++)n=An.addOrSubtract(i.multiply(e,n),t[s]);return n}addOrSubtract(e){if(!this.field.equals(e.field))throw new R("GenericGFPolys do not have same GenericGF field");if(this.isZero())return e;if(e.isZero())return this;let t=this.coefficients,n=e.coefficients;if(t.length>n.length){const s=t;t=n,n=s}let r=new Int32Array(n.length);const i=n.length-t.length;te.arraycopy(n,0,r,0,i);for(let s=i;s<n.length;s++)r[s]=An.addOrSubtract(t[s-i],n[s]);return new lt(this.field,r)}multiply(e){if(!this.field.equals(e.field))throw new R("GenericGFPolys do not have same GenericGF field");if(this.isZero()||e.isZero())return this.field.getZero();const t=this.coefficients,n=t.length,r=e.coefficients,i=r.length,s=new Int32Array(n+i-1),o=this.field;for(let a=0;a<n;a++){const l=t[a];for(let c=0;c<i;c++)s[a+c]=An.addOrSubtract(s[a+c],o.multiply(l,r[c]))}return new lt(o,s)}multiplyScalar(e){if(e===0)return this.field.getZero();if(e===1)return this;const t=this.coefficients.length,n=this.field,r=new Int32Array(t),i=this.coefficients;for(let s=0;s<t;s++)r[s]=n.multiply(i[s],e);return new lt(n,r)}multiplyByMonomial(e,t){if(e<0)throw new R;if(t===0)return this.field.getZero();const n=this.coefficients,r=n.length,i=new Int32Array(r+e),s=this.field;for(let o=0;o<r;o++)i[o]=s.multiply(n[o],t);return new lt(s,i)}divide(e){if(!this.field.equals(e.field))throw new R("GenericGFPolys do not have same GenericGF field");if(e.isZero())throw new R("Divide by 0");const t=this.field;let n=t.getZero(),r=this;const i=e.getCoefficient(e.getDegree()),s=t.inverse(i);for(;r.getDegree()>=e.getDegree()&&!r.isZero();){const o=r.getDegree()-e.getDegree(),a=t.multiply(r.getCoefficient(r.getDegree()),s),l=e.multiplyByMonomial(o,a),c=t.buildMonomial(o,a);n=n.addOrSubtract(c),r=r.addOrSubtract(l)}return[n,r]}toString(){let e="";for(let t=this.getDegree();t>=0;t--){let n=this.getCoefficient(t);if(n!==0){if(n<0?(e+=" - ",n=-n):e.length>0&&(e+=" + "),t===0||n!==1){const r=this.field.log(n);r===0?e+="1":r===1?e+="a":(e+="a^",e+=r)}t!==0&&(t===1?e+="x":(e+="x^",e+=t))}}return e}}class Bn extends A{}Bn.kind="ArithmeticException";class fe extends An{constructor(e,t,n){super(),this.primitive=e,this.size=t,this.generatorBase=n;const r=new Int32Array(t);let i=1;for(let o=0;o<t;o++)r[o]=i,i*=2,i>=t&&(i^=e,i&=t-1);this.expTable=r;const s=new Int32Array(t);for(let o=0;o<t-1;o++)s[r[o]]=o;this.logTable=s,this.zero=new lt(this,Int32Array.from([0])),this.one=new lt(this,Int32Array.from([1]))}getZero(){return this.zero}getOne(){return this.one}buildMonomial(e,t){if(e<0)throw new R;if(t===0)return this.zero;const n=new Int32Array(e+1);return n[0]=t,new lt(this,n)}inverse(e){if(e===0)throw new Bn;return this.expTable[this.size-this.logTable[e]-1]}multiply(e,t){return e===0||t===0?0:this.expTable[(this.logTable[e]+this.logTable[t])%(this.size-1)]}getSize(){return this.size}getGeneratorBase(){return this.generatorBase}toString(){return"GF(0x"+K.toHexString(this.primitive)+","+this.size+")"}equals(e){return e===this}}fe.AZTEC_DATA_12=new fe(4201,4096,1),fe.AZTEC_DATA_10=new fe(1033,1024,1),fe.AZTEC_DATA_6=new fe(67,64,1),fe.AZTEC_PARAM=new fe(19,16,1),fe.QR_CODE_FIELD_256=new fe(285,256,0),fe.DATA_MATRIX_FIELD_256=new fe(301,256,1),fe.AZTEC_DATA_8=fe.DATA_MATRIX_FIELD_256,fe.MAXICODE_FIELD_64=fe.AZTEC_DATA_6;class nn extends A{}nn.kind="ReedSolomonException";class St extends A{}St.kind="IllegalStateException";class Cn{constructor(e){this.field=e}decode(e,t){const n=this.field,r=new lt(n,e),i=new Int32Array(t);let s=!0;for(let E=0;E<t;E++){const I=r.evaluateAt(n.exp(E+n.getGeneratorBase()));i[i.length-1-E]=I,I!==0&&(s=!1)}if(s)return;const o=new lt(n,i),a=this.runEuclideanAlgorithm(n.buildMonomial(t,1),o,t),l=a[0],c=a[1],f=this.findErrorLocations(l),w=this.findErrorMagnitudes(c,f);for(let E=0;E<f.length;E++){const I=e.length-1-n.log(f[E]);if(I<0)throw new nn("Bad error location");e[I]=fe.addOrSubtract(e[I],w[E])}}runEuclideanAlgorithm(e,t,n){if(e.getDegree()<t.getDegree()){const E=e;e=t,t=E}const r=this.field;let i=e,s=t,o=r.getZero(),a=r.getOne();for(;s.getDegree()>=(n/2|0);){let E=i,I=o;if(i=s,o=a,i.isZero())throw new nn("r_{i-1} was zero");s=E;let b=r.getZero();const S=i.getCoefficient(i.getDegree()),O=r.inverse(S);for(;s.getDegree()>=i.getDegree()&&!s.isZero();){const L=s.getDegree()-i.getDegree(),k=r.multiply(s.getCoefficient(s.getDegree()),O);b=b.addOrSubtract(r.buildMonomial(L,k)),s=s.addOrSubtract(i.multiplyByMonomial(L,k))}if(a=b.multiply(o).addOrSubtract(I),s.getDegree()>=i.getDegree())throw new St("Division algorithm failed to reduce polynomial?")}const l=a.getCoefficient(0);if(l===0)throw new nn("sigmaTilde(0) was zero");const c=r.inverse(l),f=a.multiplyScalar(c),w=s.multiplyScalar(c);return[f,w]}findErrorLocations(e){const t=e.getDegree();if(t===1)return Int32Array.from([e.getCoefficient(1)]);const n=new Int32Array(t);let r=0;const i=this.field;for(let s=1;s<i.getSize()&&r<t;s++)e.evaluateAt(s)===0&&(n[r]=i.inverse(s),r++);if(r!==t)throw new nn("Error locator degree does not match number of roots");return n}findErrorMagnitudes(e,t){const n=t.length,r=new Int32Array(n),i=this.field;for(let s=0;s<n;s++){const o=i.inverse(t[s]);let a=1;for(let l=0;l<n;l++)if(s!==l){const c=i.multiply(t[l],o),f=c&1?c&-2:c|1;a=i.multiply(a,f)}r[s]=i.multiply(e.evaluateAt(o),i.inverse(a)),i.getGeneratorBase()!==0&&(r[s]=i.multiply(r[s],o))}return r}}var Ze;(function(u){u[u.UPPER=0]="UPPER",u[u.LOWER=1]="LOWER",u[u.MIXED=2]="MIXED",u[u.DIGIT=3]="DIGIT",u[u.PUNCT=4]="PUNCT",u[u.BINARY=5]="BINARY"})(Ze||(Ze={}));class ye{decode(e){this.ddata=e;let t=e.getBits(),n=this.extractBits(t),r=this.correctBits(n),i=ye.convertBoolArrayToByteArray(r),s=ye.getEncodedData(r),o=new wn(i,s,null,null);return o.setNumBits(r.length),o}static highLevelDecode(e){return this.getEncodedData(e)}static getEncodedData(e){let t=e.length,n=Ze.UPPER,r=Ze.UPPER,i="",s=0;for(;s<t;)if(r===Ze.BINARY){if(t-s<5)break;let o=ye.readCode(e,s,5);if(s+=5,o===0){if(t-s<11)break;o=ye.readCode(e,s,11)+31,s+=11}for(let a=0;a<o;a++){if(t-s<8){s=t;break}const l=ye.readCode(e,s,8);i+=J.castAsNonUtf8Char(l),s+=8}r=n}else{let o=r===Ze.DIGIT?4:5;if(t-s<o)break;let a=ye.readCode(e,s,o);s+=o;let l=ye.getCharacter(r,a);l.startsWith("CTRL_")?(n=r,r=ye.getTable(l.charAt(5)),l.charAt(6)==="L"&&(n=r)):(i+=l,r=n)}return i}static getTable(e){switch(e){case"L":return Ze.LOWER;case"P":return Ze.PUNCT;case"M":return Ze.MIXED;case"D":return Ze.DIGIT;case"B":return Ze.BINARY;case"U":default:return Ze.UPPER}}static getCharacter(e,t){switch(e){case Ze.UPPER:return ye.UPPER_TABLE[t];case Ze.LOWER:return ye.LOWER_TABLE[t];case Ze.MIXED:return ye.MIXED_TABLE[t];case Ze.PUNCT:return ye.PUNCT_TABLE[t];case Ze.DIGIT:return ye.DIGIT_TABLE[t];default:throw new St("Bad table")}}correctBits(e){let t,n;this.ddata.getNbLayers()<=2?(n=6,t=fe.AZTEC_DATA_6):this.ddata.getNbLayers()<=8?(n=8,t=fe.AZTEC_DATA_8):this.ddata.getNbLayers()<=22?(n=10,t=fe.AZTEC_DATA_10):(n=12,t=fe.AZTEC_DATA_12);let r=this.ddata.getNbDatablocks(),i=e.length/n;if(i<r)throw new U;let s=e.length%n,o=new Int32Array(i);for(let w=0;w<i;w++,s+=n)o[w]=ye.readCode(e,s,n);try{new Cn(t).decode(o,i-r)}catch(w){throw new U(w)}let a=(1<<n)-1,l=0;for(let w=0;w<r;w++){let E=o[w];if(E===0||E===a)throw new U;(E===1||E===a-1)&&l++}let c=new Array(r*n-l),f=0;for(let w=0;w<r;w++){let E=o[w];if(E===1||E===a-1)c.fill(E>1,f,f+n-1),f+=n-1;else for(let I=n-1;I>=0;--I)c[f++]=(E&1<<I)!==0}return c}extractBits(e){let t=this.ddata.isCompact(),n=this.ddata.getNbLayers(),r=(t?11:14)+n*4,i=new Int32Array(r),s=new Array(this.totalBitsInLayer(n,t));if(t)for(let o=0;o<i.length;o++)i[o]=o;else{let o=r+1+2*K.truncDivision(K.truncDivision(r,2)-1,15),a=r/2,l=K.truncDivision(o,2);for(let c=0;c<a;c++){let f=c+K.truncDivision(c,15);i[a-c-1]=l-f-1,i[a+c]=l+f+1}}for(let o=0,a=0;o<n;o++){let l=(n-o)*4+(t?9:12),c=o*2,f=r-1-c;for(let w=0;w<l;w++){let E=w*2;for(let I=0;I<2;I++)s[a+E+I]=e.get(i[c+I],i[c+w]),s[a+2*l+E+I]=e.get(i[c+w],i[f-I]),s[a+4*l+E+I]=e.get(i[f-I],i[f-w]),s[a+6*l+E+I]=e.get(i[f-w],i[c+I])}a+=l*8}return s}static readCode(e,t,n){let r=0;for(let i=t;i<t+n;i++)r<<=1,e[i]&&(r|=1);return r}static readByte(e,t){let n=e.length-t;return n>=8?ye.readCode(e,t,8):ye.readCode(e,t,n)<<8-n}static convertBoolArrayToByteArray(e){let t=new Uint8Array((e.length+7)/8);for(let n=0;n<t.length;n++)t[n]=ye.readByte(e,8*n);return t}totalBitsInLayer(e,t){return((t?88:112)+16*e)*e}}ye.UPPER_TABLE=["CTRL_PS"," ","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","CTRL_LL","CTRL_ML","CTRL_DL","CTRL_BS"],ye.LOWER_TABLE=["CTRL_PS"," ","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","CTRL_US","CTRL_ML","CTRL_DL","CTRL_BS"],ye.MIXED_TABLE=["CTRL_PS"," ","\\1","\\2","\\3","\\4","\\5","\\6","\\7","\b"," ",`
|
|
14
|
+
`,"\\13","\f","\r","\\33","\\34","\\35","\\36","\\37","@","\\","^","_","`","|","~","\\177","CTRL_LL","CTRL_UL","CTRL_PL","CTRL_BS"],ye.PUNCT_TABLE=["","\r",`\r
|
|
15
|
+
`,". ",", ",": ","!",'"',"#","$","%","&","'","(",")","*","+",",","-",".","/",":",";","<","=",">","?","[","]","{","}","CTRL_UL"],ye.DIGIT_TABLE=["CTRL_PS"," ","0","1","2","3","4","5","6","7","8","9",",",".","CTRL_UL","CTRL_US"];class he{constructor(){}static round(e){return e===NaN?0:e<=Number.MIN_SAFE_INTEGER?Number.MIN_SAFE_INTEGER:e>=Number.MAX_SAFE_INTEGER?Number.MAX_SAFE_INTEGER:e+(e<0?-.5:.5)|0}static distance(e,t,n,r){const i=e-n,s=t-r;return Math.sqrt(i*i+s*s)}static sum(e){let t=0;for(let n=0,r=e.length;n!==r;n++){const i=e[n];t+=i}return t}}class vn{static floatToIntBits(e){return e}}vn.MAX_VALUE=Number.MAX_SAFE_INTEGER;class z{constructor(e,t){this.x=e,this.y=t}getX(){return this.x}getY(){return this.y}equals(e){if(e instanceof z){const t=e;return this.x===t.x&&this.y===t.y}return!1}hashCode(){return 31*vn.floatToIntBits(this.x)+vn.floatToIntBits(this.y)}toString(){return"("+this.x+","+this.y+")"}static orderBestPatterns(e){const t=this.distance(e[0],e[1]),n=this.distance(e[1],e[2]),r=this.distance(e[0],e[2]);let i,s,o;if(n>=t&&n>=r?(s=e[0],i=e[1],o=e[2]):r>=n&&r>=t?(s=e[1],i=e[0],o=e[2]):(s=e[2],i=e[0],o=e[1]),this.crossProductZ(i,s,o)<0){const a=i;i=o,o=a}e[0]=i,e[1]=s,e[2]=o}static distance(e,t){return he.distance(e.x,e.y,t.x,t.y)}static crossProductZ(e,t,n){const r=t.x,i=t.y;return(n.x-r)*(e.y-i)-(n.y-i)*(e.x-r)}}class Pn{constructor(e,t){this.bits=e,this.points=t}getBits(){return this.bits}getPoints(){return this.points}}class Gr extends Pn{constructor(e,t,n,r,i){super(e,t),this.compact=n,this.nbDatablocks=r,this.nbLayers=i}getNbLayers(){return this.nbLayers}getNbDatablocks(){return this.nbDatablocks}isCompact(){return this.compact}}class Bt{constructor(e,t,n,r){this.image=e,this.height=e.getHeight(),this.width=e.getWidth(),t==null&&(t=Bt.INIT_SIZE),n==null&&(n=e.getWidth()/2|0),r==null&&(r=e.getHeight()/2|0);const i=t/2|0;if(this.leftInit=n-i,this.rightInit=n+i,this.upInit=r-i,this.downInit=r+i,this.upInit<0||this.leftInit<0||this.downInit>=this.height||this.rightInit>=this.width)throw new D}detect(){let e=this.leftInit,t=this.rightInit,n=this.upInit,r=this.downInit,i=!1,s=!0,o=!1,a=!1,l=!1,c=!1,f=!1;const w=this.width,E=this.height;for(;s;){s=!1;let I=!0;for(;(I||!a)&&t<w;)I=this.containsBlackPoint(n,r,t,!1),I?(t++,s=!0,a=!0):a||t++;if(t>=w){i=!0;break}let b=!0;for(;(b||!l)&&r<E;)b=this.containsBlackPoint(e,t,r,!0),b?(r++,s=!0,l=!0):l||r++;if(r>=E){i=!0;break}let S=!0;for(;(S||!c)&&e>=0;)S=this.containsBlackPoint(n,r,e,!1),S?(e--,s=!0,c=!0):c||e--;if(e<0){i=!0;break}let O=!0;for(;(O||!f)&&n>=0;)O=this.containsBlackPoint(e,t,n,!0),O?(n--,s=!0,f=!0):f||n--;if(n<0){i=!0;break}s&&(o=!0)}if(!i&&o){const I=t-e;let b=null;for(let k=1;b===null&&k<I;k++)b=this.getBlackPointOnSegment(e,r-k,e+k,r);if(b==null)throw new D;let S=null;for(let k=1;S===null&&k<I;k++)S=this.getBlackPointOnSegment(e,n+k,e+k,n);if(S==null)throw new D;let O=null;for(let k=1;O===null&&k<I;k++)O=this.getBlackPointOnSegment(t,n+k,t-k,n);if(O==null)throw new D;let L=null;for(let k=1;L===null&&k<I;k++)L=this.getBlackPointOnSegment(t,r-k,t-k,r);if(L==null)throw new D;return this.centerEdges(L,b,O,S)}else throw new D}getBlackPointOnSegment(e,t,n,r){const i=he.round(he.distance(e,t,n,r)),s=(n-e)/i,o=(r-t)/i,a=this.image;for(let l=0;l<i;l++){const c=he.round(e+l*s),f=he.round(t+l*o);if(a.get(c,f))return new z(c,f)}return null}centerEdges(e,t,n,r){const i=e.getX(),s=e.getY(),o=t.getX(),a=t.getY(),l=n.getX(),c=n.getY(),f=r.getX(),w=r.getY(),E=Bt.CORR;return i<this.width/2?[new z(f-E,w+E),new z(o+E,a+E),new z(l-E,c-E),new z(i+E,s-E)]:[new z(f+E,w+E),new z(o+E,a-E),new z(l-E,c+E),new z(i-E,s-E)]}containsBlackPoint(e,t,n,r){const i=this.image;if(r){for(let s=e;s<=t;s++)if(i.get(s,n))return!0}else for(let s=e;s<=t;s++)if(i.get(n,s))return!0;return!1}}Bt.INIT_SIZE=10,Bt.CORR=1;class er{static checkAndNudgePoints(e,t){const n=e.getWidth(),r=e.getHeight();let i=!0;for(let s=0;s<t.length&&i;s+=2){const o=Math.floor(t[s]),a=Math.floor(t[s+1]);if(o<-1||o>n||a<-1||a>r)throw new D;i=!1,o===-1?(t[s]=0,i=!0):o===n&&(t[s]=n-1,i=!0),a===-1?(t[s+1]=0,i=!0):a===r&&(t[s+1]=r-1,i=!0)}i=!0;for(let s=t.length-2;s>=0&&i;s-=2){const o=Math.floor(t[s]),a=Math.floor(t[s+1]);if(o<-1||o>n||a<-1||a>r)throw new D;i=!1,o===-1?(t[s]=0,i=!0):o===n&&(t[s]=n-1,i=!0),a===-1?(t[s+1]=0,i=!0):a===r&&(t[s+1]=r-1,i=!0)}}}class It{constructor(e,t,n,r,i,s,o,a,l){this.a11=e,this.a21=t,this.a31=n,this.a12=r,this.a22=i,this.a32=s,this.a13=o,this.a23=a,this.a33=l}static quadrilateralToQuadrilateral(e,t,n,r,i,s,o,a,l,c,f,w,E,I,b,S){const O=It.quadrilateralToSquare(e,t,n,r,i,s,o,a);return It.squareToQuadrilateral(l,c,f,w,E,I,b,S).times(O)}transformPoints(e){const t=e.length,n=this.a11,r=this.a12,i=this.a13,s=this.a21,o=this.a22,a=this.a23,l=this.a31,c=this.a32,f=this.a33;for(let w=0;w<t;w+=2){const E=e[w],I=e[w+1],b=i*E+a*I+f;e[w]=(n*E+s*I+l)/b,e[w+1]=(r*E+o*I+c)/b}}transformPointsWithValues(e,t){const n=this.a11,r=this.a12,i=this.a13,s=this.a21,o=this.a22,a=this.a23,l=this.a31,c=this.a32,f=this.a33,w=e.length;for(let E=0;E<w;E++){const I=e[E],b=t[E],S=i*I+a*b+f;e[E]=(n*I+s*b+l)/S,t[E]=(r*I+o*b+c)/S}}static squareToQuadrilateral(e,t,n,r,i,s,o,a){const l=e-n+i-o,c=t-r+s-a;if(l===0&&c===0)return new It(n-e,i-n,e,r-t,s-r,t,0,0,1);{const f=n-i,w=o-i,E=r-s,I=a-s,b=f*I-w*E,S=(l*I-w*c)/b,O=(f*c-l*E)/b;return new It(n-e+S*n,o-e+O*o,e,r-t+S*r,a-t+O*a,t,S,O,1)}}static quadrilateralToSquare(e,t,n,r,i,s,o,a){return It.squareToQuadrilateral(e,t,n,r,i,s,o,a).buildAdjoint()}buildAdjoint(){return new It(this.a22*this.a33-this.a23*this.a32,this.a23*this.a31-this.a21*this.a33,this.a21*this.a32-this.a22*this.a31,this.a13*this.a32-this.a12*this.a33,this.a11*this.a33-this.a13*this.a31,this.a12*this.a31-this.a11*this.a32,this.a12*this.a23-this.a13*this.a22,this.a13*this.a21-this.a11*this.a23,this.a11*this.a22-this.a12*this.a21)}times(e){return new It(this.a11*e.a11+this.a21*e.a12+this.a31*e.a13,this.a11*e.a21+this.a21*e.a22+this.a31*e.a23,this.a11*e.a31+this.a21*e.a32+this.a31*e.a33,this.a12*e.a11+this.a22*e.a12+this.a32*e.a13,this.a12*e.a21+this.a22*e.a22+this.a32*e.a23,this.a12*e.a31+this.a22*e.a32+this.a32*e.a33,this.a13*e.a11+this.a23*e.a12+this.a33*e.a13,this.a13*e.a21+this.a23*e.a22+this.a33*e.a23,this.a13*e.a31+this.a23*e.a32+this.a33*e.a33)}}class Wr extends er{sampleGrid(e,t,n,r,i,s,o,a,l,c,f,w,E,I,b,S,O,L,k){const P=It.quadrilateralToQuadrilateral(r,i,s,o,a,l,c,f,w,E,I,b,S,O,L,k);return this.sampleGridWithTransform(e,t,n,P)}sampleGridWithTransform(e,t,n,r){if(t<=0||n<=0)throw new D;const i=new Ge(t,n),s=new Float32Array(2*t);for(let o=0;o<n;o++){const a=s.length,l=o+.5;for(let c=0;c<a;c+=2)s[c]=c/2+.5,s[c+1]=l;r.transformPoints(s),er.checkAndNudgePoints(e,s);try{for(let c=0;c<a;c+=2)e.get(Math.floor(s[c]),Math.floor(s[c+1]))&&i.set(c/2,o)}catch(c){throw new D}}return i}}class Ft{static setGridSampler(e){Ft.gridSampler=e}static getInstance(){return Ft.gridSampler}}Ft.gridSampler=new Wr;class rt{constructor(e,t){this.x=e,this.y=t}toResultPoint(){return new z(this.getX(),this.getY())}getX(){return this.x}getY(){return this.y}}class Hr{constructor(e){this.EXPECTED_CORNER_BITS=new Int32Array([3808,476,2107,1799]),this.image=e}detect(){return this.detectMirror(!1)}detectMirror(e){let t=this.getMatrixCenter(),n=this.getBullsEyeCorners(t);if(e){let s=n[0];n[0]=n[2],n[2]=s}this.extractParameters(n);let r=this.sampleGrid(this.image,n[this.shift%4],n[(this.shift+1)%4],n[(this.shift+2)%4],n[(this.shift+3)%4]),i=this.getMatrixCornerPoints(n);return new Gr(r,i,this.compact,this.nbDataBlocks,this.nbLayers)}extractParameters(e){if(!this.isValidPoint(e[0])||!this.isValidPoint(e[1])||!this.isValidPoint(e[2])||!this.isValidPoint(e[3]))throw new D;let t=2*this.nbCenterLayers,n=new Int32Array([this.sampleLine(e[0],e[1],t),this.sampleLine(e[1],e[2],t),this.sampleLine(e[2],e[3],t),this.sampleLine(e[3],e[0],t)]);this.shift=this.getRotation(n,t);let r=0;for(let s=0;s<4;s++){let o=n[(this.shift+s)%4];this.compact?(r<<=7,r+=o>>1&127):(r<<=10,r+=(o>>2&992)+(o>>1&31))}let i=this.getCorrectedParameterData(r,this.compact);this.compact?(this.nbLayers=(i>>6)+1,this.nbDataBlocks=(i&63)+1):(this.nbLayers=(i>>11)+1,this.nbDataBlocks=(i&2047)+1)}getRotation(e,t){let n=0;e.forEach((r,i,s)=>{let o=(r>>t-2<<1)+(r&1);n=(n<<3)+o}),n=((n&1)<<11)+(n>>1);for(let r=0;r<4;r++)if(K.bitCount(n^this.EXPECTED_CORNER_BITS[r])<=2)return r;throw new D}getCorrectedParameterData(e,t){let n,r;t?(n=7,r=2):(n=10,r=4);let i=n-r,s=new Int32Array(n);for(let a=n-1;a>=0;--a)s[a]=e&15,e>>=4;try{new Cn(fe.AZTEC_PARAM).decode(s,i)}catch(a){throw new D}let o=0;for(let a=0;a<r;a++)o=(o<<4)+s[a];return o}getBullsEyeCorners(e){let t=e,n=e,r=e,i=e,s=!0;for(this.nbCenterLayers=1;this.nbCenterLayers<9;this.nbCenterLayers++){let f=this.getFirstDifferent(t,s,1,-1),w=this.getFirstDifferent(n,s,1,1),E=this.getFirstDifferent(r,s,-1,1),I=this.getFirstDifferent(i,s,-1,-1);if(this.nbCenterLayers>2){let b=this.distancePoint(I,f)*this.nbCenterLayers/(this.distancePoint(i,t)*(this.nbCenterLayers+2));if(b<.75||b>1.25||!this.isWhiteOrBlackRectangle(f,w,E,I))break}t=f,n=w,r=E,i=I,s=!s}if(this.nbCenterLayers!==5&&this.nbCenterLayers!==7)throw new D;this.compact=this.nbCenterLayers===5;let o=new z(t.getX()+.5,t.getY()-.5),a=new z(n.getX()+.5,n.getY()+.5),l=new z(r.getX()-.5,r.getY()+.5),c=new z(i.getX()-.5,i.getY()-.5);return this.expandSquare([o,a,l,c],2*this.nbCenterLayers-3,2*this.nbCenterLayers)}getMatrixCenter(){let e,t,n,r;try{let o=new Bt(this.image).detect();e=o[0],t=o[1],n=o[2],r=o[3]}catch(o){let a=this.image.getWidth()/2,l=this.image.getHeight()/2;e=this.getFirstDifferent(new rt(a+7,l-7),!1,1,-1).toResultPoint(),t=this.getFirstDifferent(new rt(a+7,l+7),!1,1,1).toResultPoint(),n=this.getFirstDifferent(new rt(a-7,l+7),!1,-1,1).toResultPoint(),r=this.getFirstDifferent(new rt(a-7,l-7),!1,-1,-1).toResultPoint()}let i=he.round((e.getX()+r.getX()+t.getX()+n.getX())/4),s=he.round((e.getY()+r.getY()+t.getY()+n.getY())/4);try{let o=new Bt(this.image,15,i,s).detect();e=o[0],t=o[1],n=o[2],r=o[3]}catch(o){e=this.getFirstDifferent(new rt(i+7,s-7),!1,1,-1).toResultPoint(),t=this.getFirstDifferent(new rt(i+7,s+7),!1,1,1).toResultPoint(),n=this.getFirstDifferent(new rt(i-7,s+7),!1,-1,1).toResultPoint(),r=this.getFirstDifferent(new rt(i-7,s-7),!1,-1,-1).toResultPoint()}return i=he.round((e.getX()+r.getX()+t.getX()+n.getX())/4),s=he.round((e.getY()+r.getY()+t.getY()+n.getY())/4),new rt(i,s)}getMatrixCornerPoints(e){return this.expandSquare(e,2*this.nbCenterLayers,this.getDimension())}sampleGrid(e,t,n,r,i){let s=Ft.getInstance(),o=this.getDimension(),a=o/2-this.nbCenterLayers,l=o/2+this.nbCenterLayers;return s.sampleGrid(e,o,o,a,a,l,a,l,l,a,l,t.getX(),t.getY(),n.getX(),n.getY(),r.getX(),r.getY(),i.getX(),i.getY())}sampleLine(e,t,n){let r=0,i=this.distanceResultPoint(e,t),s=i/n,o=e.getX(),a=e.getY(),l=s*(t.getX()-e.getX())/i,c=s*(t.getY()-e.getY())/i;for(let f=0;f<n;f++)this.image.get(he.round(o+f*l),he.round(a+f*c))&&(r|=1<<n-f-1);return r}isWhiteOrBlackRectangle(e,t,n,r){let i=3;e=new rt(e.getX()-i,e.getY()+i),t=new rt(t.getX()-i,t.getY()-i),n=new rt(n.getX()+i,n.getY()-i),r=new rt(r.getX()+i,r.getY()+i);let s=this.getColor(r,e);if(s===0)return!1;let o=this.getColor(e,t);return o!==s||(o=this.getColor(t,n),o!==s)?!1:(o=this.getColor(n,r),o===s)}getColor(e,t){let n=this.distancePoint(e,t),r=(t.getX()-e.getX())/n,i=(t.getY()-e.getY())/n,s=0,o=e.getX(),a=e.getY(),l=this.image.get(e.getX(),e.getY()),c=Math.ceil(n);for(let w=0;w<c;w++)o+=r,a+=i,this.image.get(he.round(o),he.round(a))!==l&&s++;let f=s/n;return f>.1&&f<.9?0:f<=.1===l?1:-1}getFirstDifferent(e,t,n,r){let i=e.getX()+n,s=e.getY()+r;for(;this.isValid(i,s)&&this.image.get(i,s)===t;)i+=n,s+=r;for(i-=n,s-=r;this.isValid(i,s)&&this.image.get(i,s)===t;)i+=n;for(i-=n;this.isValid(i,s)&&this.image.get(i,s)===t;)s+=r;return s-=r,new rt(i,s)}expandSquare(e,t,n){let r=n/(2*t),i=e[0].getX()-e[2].getX(),s=e[0].getY()-e[2].getY(),o=(e[0].getX()+e[2].getX())/2,a=(e[0].getY()+e[2].getY())/2,l=new z(o+r*i,a+r*s),c=new z(o-r*i,a-r*s);i=e[1].getX()-e[3].getX(),s=e[1].getY()-e[3].getY(),o=(e[1].getX()+e[3].getX())/2,a=(e[1].getY()+e[3].getY())/2;let f=new z(o+r*i,a+r*s),w=new z(o-r*i,a-r*s);return[l,f,c,w]}isValid(e,t){return e>=0&&e<this.image.getWidth()&&t>0&&t<this.image.getHeight()}isValidPoint(e){let t=he.round(e.getX()),n=he.round(e.getY());return this.isValid(t,n)}distancePoint(e,t){return he.distance(e.getX(),e.getY(),t.getX(),t.getY())}distanceResultPoint(e,t){return he.distance(e.getX(),e.getY(),t.getX(),t.getY())}getDimension(){return this.compact?4*this.nbLayers+11:this.nbLayers<=4?4*this.nbLayers+15:4*this.nbLayers+2*(K.truncDivision(this.nbLayers-4,8)+1)+15}}class Ln{decode(e,t=null){let n=null,r=new Hr(e.getBlackMatrix()),i=null,s=null;try{let c=r.detectMirror(!1);i=c.getPoints(),this.reportFoundResultPoints(t,i),s=new ye().decode(c)}catch(c){n=c}if(s==null)try{let c=r.detectMirror(!0);i=c.getPoints(),this.reportFoundResultPoints(t,i),s=new ye().decode(c)}catch(c){throw n!=null?n:c}let o=new nt(s.getText(),s.getRawBytes(),s.getNumBits(),i,j.AZTEC,te.currentTimeMillis()),a=s.getByteSegments();a!=null&&o.putMetadata(He.BYTE_SEGMENTS,a);let l=s.getECLevel();return l!=null&&o.putMetadata(He.ERROR_CORRECTION_LEVEL,l),o}reportFoundResultPoints(e,t){if(e!=null){let n=e.get(Ce.NEED_RESULT_POINT_CALLBACK);n!=null&&t.forEach((r,i,s)=>{n.foundPossibleResultPoint(r)})}}reset(){}}class rs extends zt{constructor(e=500){super(new Ln,e)}}class ke{decode(e,t){try{return this.doDecode(e,t)}catch(n){if(t&&t.get(Ce.TRY_HARDER)===!0&&e.isRotateSupported()){const i=e.rotateCounterClockwise(),s=this.doDecode(i,t),o=s.getResultMetadata();let a=270;o!==null&&o.get(He.ORIENTATION)===!0&&(a=a+o.get(He.ORIENTATION)%360),s.putMetadata(He.ORIENTATION,a);const l=s.getResultPoints();if(l!==null){const c=i.getHeight();for(let f=0;f<l.length;f++)l[f]=new z(c-l[f].getY()-1,l[f].getX())}return s}else throw new D}}reset(){}doDecode(e,t){const n=e.getWidth(),r=e.getHeight();let i=new le(n);const s=t&&t.get(Ce.TRY_HARDER)===!0,o=Math.max(1,r>>(s?8:5));let a;s?a=r:a=15;const l=Math.trunc(r/2);for(let c=0;c<a;c++){const f=Math.trunc((c+1)/2),w=(c&1)===0,E=l+o*(w?f:-f);if(E<0||E>=r)break;try{i=e.getBlackRow(E,i)}catch(I){continue}for(let I=0;I<2;I++){if(I===1&&(i.reverse(),t&&t.get(Ce.NEED_RESULT_POINT_CALLBACK)===!0)){const b=new Map;t.forEach((S,O)=>b.set(O,S)),b.delete(Ce.NEED_RESULT_POINT_CALLBACK),t=b}try{const b=this.decodeRow(E,i,t);if(I===1){b.putMetadata(He.ORIENTATION,180);const S=b.getResultPoints();S!==null&&(S[0]=new z(n-S[0].getX()-1,S[0].getY()),S[1]=new z(n-S[1].getX()-1,S[1].getY()))}return b}catch(b){}}}throw new D}static recordPattern(e,t,n){const r=n.length;for(let l=0;l<r;l++)n[l]=0;const i=e.getSize();if(t>=i)throw new D;let s=!e.get(t),o=0,a=t;for(;a<i;){if(e.get(a)!==s)n[o]++;else{if(++o===r)break;n[o]=1,s=!s}a++}if(!(o===r||o===r-1&&a===i))throw new D}static recordPatternInReverse(e,t,n){let r=n.length,i=e.get(t);for(;t>0&&r>=0;)e.get(--t)!==i&&(r--,i=!i);if(r>=0)throw new D;ke.recordPattern(e,t+1,n)}static patternMatchVariance(e,t,n){const r=e.length;let i=0,s=0;for(let l=0;l<r;l++)i+=e[l],s+=t[l];if(i<s)return Number.POSITIVE_INFINITY;const o=i/s;n*=o;let a=0;for(let l=0;l<r;l++){const c=e[l],f=t[l]*o,w=c>f?c-f:f-c;if(w>n)return Number.POSITIVE_INFINITY;a+=w}return a/i}}class V extends ke{static findStartPattern(e){const t=e.getSize(),n=e.getNextSet(0);let r=0,i=Int32Array.from([0,0,0,0,0,0]),s=n,o=!1;const a=6;for(let l=n;l<t;l++)if(e.get(l)!==o)i[r]++;else{if(r===a-1){let c=V.MAX_AVG_VARIANCE,f=-1;for(let w=V.CODE_START_A;w<=V.CODE_START_C;w++){const E=ke.patternMatchVariance(i,V.CODE_PATTERNS[w],V.MAX_INDIVIDUAL_VARIANCE);E<c&&(c=E,f=w)}if(f>=0&&e.isRange(Math.max(0,s-(l-s)/2),s,!1))return Int32Array.from([s,l,f]);s+=i[0]+i[1],i=i.slice(2,i.length-1),i[r-1]=0,i[r]=0,r--}else r++;i[r]=1,o=!o}throw new D}static decodeCode(e,t,n){ke.recordPattern(e,n,t);let r=V.MAX_AVG_VARIANCE,i=-1;for(let s=0;s<V.CODE_PATTERNS.length;s++){const o=V.CODE_PATTERNS[s],a=this.patternMatchVariance(t,o,V.MAX_INDIVIDUAL_VARIANCE);a<r&&(r=a,i=s)}if(i>=0)return i;throw new D}decodeRow(e,t,n){const r=n&&n.get(Ce.ASSUME_GS1)===!0,i=V.findStartPattern(t),s=i[2];let o=0;const a=new Uint8Array(20);a[o++]=s;let l;switch(s){case V.CODE_START_A:l=V.CODE_CODE_A;break;case V.CODE_START_B:l=V.CODE_CODE_B;break;case V.CODE_START_C:l=V.CODE_CODE_C;break;default:throw new U}let c=!1,f=!1,w="",E=i[0],I=i[1];const b=Int32Array.from([0,0,0,0,0,0]);let S=0,O=0,L=s,k=0,P=!0,ae=!1,ne=!1;for(;!c;){const fn=f;switch(f=!1,S=O,O=V.decodeCode(t,b,I),a[o++]=O,O!==V.CODE_STOP&&(P=!0),O!==V.CODE_STOP&&(k++,L+=k*O),E=I,I+=b.reduce((Ms,Bs)=>Ms+Bs,0),O){case V.CODE_START_A:case V.CODE_START_B:case V.CODE_START_C:throw new U}switch(l){case V.CODE_CODE_A:if(O<64)ne===ae?w+=String.fromCharCode(32+O):w+=String.fromCharCode(32+O+128),ne=!1;else if(O<96)ne===ae?w+=String.fromCharCode(O-64):w+=String.fromCharCode(O+64),ne=!1;else switch(O!==V.CODE_STOP&&(P=!1),O){case V.CODE_FNC_1:r&&(w.length===0?w+="]C1":w+="");break;case V.CODE_FNC_2:case V.CODE_FNC_3:break;case V.CODE_FNC_4_A:!ae&&ne?(ae=!0,ne=!1):ae&&ne?(ae=!1,ne=!1):ne=!0;break;case V.CODE_SHIFT:f=!0,l=V.CODE_CODE_B;break;case V.CODE_CODE_B:l=V.CODE_CODE_B;break;case V.CODE_CODE_C:l=V.CODE_CODE_C;break;case V.CODE_STOP:c=!0;break}break;case V.CODE_CODE_B:if(O<96)ne===ae?w+=String.fromCharCode(32+O):w+=String.fromCharCode(32+O+128),ne=!1;else switch(O!==V.CODE_STOP&&(P=!1),O){case V.CODE_FNC_1:r&&(w.length===0?w+="]C1":w+="");break;case V.CODE_FNC_2:case V.CODE_FNC_3:break;case V.CODE_FNC_4_B:!ae&&ne?(ae=!0,ne=!1):ae&&ne?(ae=!1,ne=!1):ne=!0;break;case V.CODE_SHIFT:f=!0,l=V.CODE_CODE_A;break;case V.CODE_CODE_A:l=V.CODE_CODE_A;break;case V.CODE_CODE_C:l=V.CODE_CODE_C;break;case V.CODE_STOP:c=!0;break}break;case V.CODE_CODE_C:if(O<100)O<10&&(w+="0"),w+=O;else switch(O!==V.CODE_STOP&&(P=!1),O){case V.CODE_FNC_1:r&&(w.length===0?w+="]C1":w+="");break;case V.CODE_CODE_A:l=V.CODE_CODE_A;break;case V.CODE_CODE_B:l=V.CODE_CODE_B;break;case V.CODE_STOP:c=!0;break}break}fn&&(l=l===V.CODE_CODE_A?V.CODE_CODE_B:V.CODE_CODE_A)}const ft=I-E;if(I=t.getNextUnset(I),!t.isRange(I,Math.min(t.getSize(),I+(I-E)/2),!1))throw new D;if(L-=k*S,L%103!==S)throw new ee;const yt=w.length;if(yt===0)throw new D;yt>0&&P&&(l===V.CODE_CODE_C?w=w.substring(0,yt-2):w=w.substring(0,yt-1));const dt=(i[1]+i[0])/2,be=E+ft/2,qe=a.length,wt=new Uint8Array(qe);for(let fn=0;fn<qe;fn++)wt[fn]=a[fn];const un=[new z(dt,e),new z(be,e)];return new nt(w,wt,0,un,j.CODE_128,new Date().getTime())}}V.CODE_PATTERNS=[Int32Array.from([2,1,2,2,2,2]),Int32Array.from([2,2,2,1,2,2]),Int32Array.from([2,2,2,2,2,1]),Int32Array.from([1,2,1,2,2,3]),Int32Array.from([1,2,1,3,2,2]),Int32Array.from([1,3,1,2,2,2]),Int32Array.from([1,2,2,2,1,3]),Int32Array.from([1,2,2,3,1,2]),Int32Array.from([1,3,2,2,1,2]),Int32Array.from([2,2,1,2,1,3]),Int32Array.from([2,2,1,3,1,2]),Int32Array.from([2,3,1,2,1,2]),Int32Array.from([1,1,2,2,3,2]),Int32Array.from([1,2,2,1,3,2]),Int32Array.from([1,2,2,2,3,1]),Int32Array.from([1,1,3,2,2,2]),Int32Array.from([1,2,3,1,2,2]),Int32Array.from([1,2,3,2,2,1]),Int32Array.from([2,2,3,2,1,1]),Int32Array.from([2,2,1,1,3,2]),Int32Array.from([2,2,1,2,3,1]),Int32Array.from([2,1,3,2,1,2]),Int32Array.from([2,2,3,1,1,2]),Int32Array.from([3,1,2,1,3,1]),Int32Array.from([3,1,1,2,2,2]),Int32Array.from([3,2,1,1,2,2]),Int32Array.from([3,2,1,2,2,1]),Int32Array.from([3,1,2,2,1,2]),Int32Array.from([3,2,2,1,1,2]),Int32Array.from([3,2,2,2,1,1]),Int32Array.from([2,1,2,1,2,3]),Int32Array.from([2,1,2,3,2,1]),Int32Array.from([2,3,2,1,2,1]),Int32Array.from([1,1,1,3,2,3]),Int32Array.from([1,3,1,1,2,3]),Int32Array.from([1,3,1,3,2,1]),Int32Array.from([1,1,2,3,1,3]),Int32Array.from([1,3,2,1,1,3]),Int32Array.from([1,3,2,3,1,1]),Int32Array.from([2,1,1,3,1,3]),Int32Array.from([2,3,1,1,1,3]),Int32Array.from([2,3,1,3,1,1]),Int32Array.from([1,1,2,1,3,3]),Int32Array.from([1,1,2,3,3,1]),Int32Array.from([1,3,2,1,3,1]),Int32Array.from([1,1,3,1,2,3]),Int32Array.from([1,1,3,3,2,1]),Int32Array.from([1,3,3,1,2,1]),Int32Array.from([3,1,3,1,2,1]),Int32Array.from([2,1,1,3,3,1]),Int32Array.from([2,3,1,1,3,1]),Int32Array.from([2,1,3,1,1,3]),Int32Array.from([2,1,3,3,1,1]),Int32Array.from([2,1,3,1,3,1]),Int32Array.from([3,1,1,1,2,3]),Int32Array.from([3,1,1,3,2,1]),Int32Array.from([3,3,1,1,2,1]),Int32Array.from([3,1,2,1,1,3]),Int32Array.from([3,1,2,3,1,1]),Int32Array.from([3,3,2,1,1,1]),Int32Array.from([3,1,4,1,1,1]),Int32Array.from([2,2,1,4,1,1]),Int32Array.from([4,3,1,1,1,1]),Int32Array.from([1,1,1,2,2,4]),Int32Array.from([1,1,1,4,2,2]),Int32Array.from([1,2,1,1,2,4]),Int32Array.from([1,2,1,4,2,1]),Int32Array.from([1,4,1,1,2,2]),Int32Array.from([1,4,1,2,2,1]),Int32Array.from([1,1,2,2,1,4]),Int32Array.from([1,1,2,4,1,2]),Int32Array.from([1,2,2,1,1,4]),Int32Array.from([1,2,2,4,1,1]),Int32Array.from([1,4,2,1,1,2]),Int32Array.from([1,4,2,2,1,1]),Int32Array.from([2,4,1,2,1,1]),Int32Array.from([2,2,1,1,1,4]),Int32Array.from([4,1,3,1,1,1]),Int32Array.from([2,4,1,1,1,2]),Int32Array.from([1,3,4,1,1,1]),Int32Array.from([1,1,1,2,4,2]),Int32Array.from([1,2,1,1,4,2]),Int32Array.from([1,2,1,2,4,1]),Int32Array.from([1,1,4,2,1,2]),Int32Array.from([1,2,4,1,1,2]),Int32Array.from([1,2,4,2,1,1]),Int32Array.from([4,1,1,2,1,2]),Int32Array.from([4,2,1,1,1,2]),Int32Array.from([4,2,1,2,1,1]),Int32Array.from([2,1,2,1,4,1]),Int32Array.from([2,1,4,1,2,1]),Int32Array.from([4,1,2,1,2,1]),Int32Array.from([1,1,1,1,4,3]),Int32Array.from([1,1,1,3,4,1]),Int32Array.from([1,3,1,1,4,1]),Int32Array.from([1,1,4,1,1,3]),Int32Array.from([1,1,4,3,1,1]),Int32Array.from([4,1,1,1,1,3]),Int32Array.from([4,1,1,3,1,1]),Int32Array.from([1,1,3,1,4,1]),Int32Array.from([1,1,4,1,3,1]),Int32Array.from([3,1,1,1,4,1]),Int32Array.from([4,1,1,1,3,1]),Int32Array.from([2,1,1,4,1,2]),Int32Array.from([2,1,1,2,1,4]),Int32Array.from([2,1,1,2,3,2]),Int32Array.from([2,3,3,1,1,1,2])],V.MAX_AVG_VARIANCE=.25,V.MAX_INDIVIDUAL_VARIANCE=.7,V.CODE_SHIFT=98,V.CODE_CODE_C=99,V.CODE_CODE_B=100,V.CODE_CODE_A=101,V.CODE_FNC_1=102,V.CODE_FNC_2=97,V.CODE_FNC_3=96,V.CODE_FNC_4_A=101,V.CODE_FNC_4_B=100,V.CODE_START_A=103,V.CODE_START_B=104,V.CODE_START_C=105,V.CODE_STOP=106;class Fe extends ke{constructor(e=!1,t=!1){super(),this.usingCheckDigit=e,this.extendedMode=t,this.decodeRowResult="",this.counters=new Int32Array(9)}decodeRow(e,t,n){let r=this.counters;r.fill(0),this.decodeRowResult="";let i=Fe.findAsteriskPattern(t,r),s=t.getNextSet(i[1]),o=t.getSize(),a,l;do{Fe.recordPattern(t,s,r);let b=Fe.toNarrowWidePattern(r);if(b<0)throw new D;a=Fe.patternToChar(b),this.decodeRowResult+=a,l=s;for(let S of r)s+=S;s=t.getNextSet(s)}while(a!=="*");this.decodeRowResult=this.decodeRowResult.substring(0,this.decodeRowResult.length-1);let c=0;for(let b of r)c+=b;let f=s-l-c;if(s!==o&&f*2<c)throw new D;if(this.usingCheckDigit){let b=this.decodeRowResult.length-1,S=0;for(let O=0;O<b;O++)S+=Fe.ALPHABET_STRING.indexOf(this.decodeRowResult.charAt(O));if(this.decodeRowResult.charAt(b)!==Fe.ALPHABET_STRING.charAt(S%43))throw new ee;this.decodeRowResult=this.decodeRowResult.substring(0,b)}if(this.decodeRowResult.length===0)throw new D;let w;this.extendedMode?w=Fe.decodeExtended(this.decodeRowResult):w=this.decodeRowResult;let E=(i[1]+i[0])/2,I=l+c/2;return new nt(w,null,0,[new z(E,e),new z(I,e)],j.CODE_39,new Date().getTime())}static findAsteriskPattern(e,t){let n=e.getSize(),r=e.getNextSet(0),i=0,s=r,o=!1,a=t.length;for(let l=r;l<n;l++)if(e.get(l)!==o)t[i]++;else{if(i===a-1){if(this.toNarrowWidePattern(t)===Fe.ASTERISK_ENCODING&&e.isRange(Math.max(0,s-Math.floor((l-s)/2)),s,!1))return[s,l];s+=t[0]+t[1],t.copyWithin(0,2,2+i-1),t[i-1]=0,t[i]=0,i--}else i++;t[i]=1,o=!o}throw new D}static toNarrowWidePattern(e){let t=e.length,n=0,r;do{let i=2147483647;for(let a of e)a<i&&a>n&&(i=a);n=i,r=0;let s=0,o=0;for(let a=0;a<t;a++){let l=e[a];l>n&&(o|=1<<t-1-a,r++,s+=l)}if(r===3){for(let a=0;a<t&&r>0;a++){let l=e[a];if(l>n&&(r--,l*2>=s))return-1}return o}}while(r>3);return-1}static patternToChar(e){for(let t=0;t<Fe.CHARACTER_ENCODINGS.length;t++)if(Fe.CHARACTER_ENCODINGS[t]===e)return Fe.ALPHABET_STRING.charAt(t);if(e===Fe.ASTERISK_ENCODING)return"*";throw new D}static decodeExtended(e){let t=e.length,n="";for(let r=0;r<t;r++){let i=e.charAt(r);if(i==="+"||i==="$"||i==="%"||i==="/"){let s=e.charAt(r+1),o="\0";switch(i){case"+":if(s>="A"&&s<="Z")o=String.fromCharCode(s.charCodeAt(0)+32);else throw new U;break;case"$":if(s>="A"&&s<="Z")o=String.fromCharCode(s.charCodeAt(0)-64);else throw new U;break;case"%":if(s>="A"&&s<="E")o=String.fromCharCode(s.charCodeAt(0)-38);else if(s>="F"&&s<="J")o=String.fromCharCode(s.charCodeAt(0)-11);else if(s>="K"&&s<="O")o=String.fromCharCode(s.charCodeAt(0)+16);else if(s>="P"&&s<="T")o=String.fromCharCode(s.charCodeAt(0)+43);else if(s==="U")o="\0";else if(s==="V")o="@";else if(s==="W")o="`";else if(s==="X"||s==="Y"||s==="Z")o="";else throw new U;break;case"/":if(s>="A"&&s<="O")o=String.fromCharCode(s.charCodeAt(0)-32);else if(s==="Z")o=":";else throw new U;break}n+=o,r++}else n+=i}return n}}Fe.ALPHABET_STRING="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ-. $/+%",Fe.CHARACTER_ENCODINGS=[52,289,97,352,49,304,112,37,292,100,265,73,328,25,280,88,13,268,76,28,259,67,322,19,274,82,7,262,70,22,385,193,448,145,400,208,133,388,196,168,162,138,42],Fe.ASTERISK_ENCODING=148;class pe extends ke{constructor(){super(...arguments),this.narrowLineWidth=-1}decodeRow(e,t,n){let r=this.decodeStart(t),i=this.decodeEnd(t),s=new me;pe.decodeMiddle(t,r[1],i[0],s);let o=s.toString(),a=null;n!=null&&(a=n.get(Ce.ALLOWED_LENGTHS)),a==null&&(a=pe.DEFAULT_ALLOWED_LENGTHS);let l=o.length,c=!1,f=0;for(let I of a){if(l===I){c=!0;break}I>f&&(f=I)}if(!c&&l>f&&(c=!0),!c)throw new U;const w=[new z(r[1],e),new z(i[0],e)];return new nt(o,null,0,w,j.ITF,new Date().getTime())}static decodeMiddle(e,t,n,r){let i=new Int32Array(10),s=new Int32Array(5),o=new Int32Array(5);for(i.fill(0),s.fill(0),o.fill(0);t<n;){ke.recordPattern(e,t,i);for(let l=0;l<5;l++){let c=2*l;s[l]=i[c],o[l]=i[c+1]}let a=pe.decodeDigit(s);r.append(a.toString()),a=this.decodeDigit(o),r.append(a.toString()),i.forEach(function(l){t+=l})}}decodeStart(e){let t=pe.skipWhiteSpace(e),n=pe.findGuardPattern(e,t,pe.START_PATTERN);return this.narrowLineWidth=(n[1]-n[0])/4,this.validateQuietZone(e,n[0]),n}validateQuietZone(e,t){let n=this.narrowLineWidth*10;n=n<t?n:t;for(let r=t-1;n>0&&r>=0&&!e.get(r);r--)n--;if(n!==0)throw new D}static skipWhiteSpace(e){const t=e.getSize(),n=e.getNextSet(0);if(n===t)throw new D;return n}decodeEnd(e){e.reverse();try{let t=pe.skipWhiteSpace(e),n;try{n=pe.findGuardPattern(e,t,pe.END_PATTERN_REVERSED[0])}catch(i){i instanceof D&&(n=pe.findGuardPattern(e,t,pe.END_PATTERN_REVERSED[1]))}this.validateQuietZone(e,n[0]);let r=n[0];return n[0]=e.getSize()-n[1],n[1]=e.getSize()-r,n}finally{e.reverse()}}static findGuardPattern(e,t,n){let r=n.length,i=new Int32Array(r),s=e.getSize(),o=!1,a=0,l=t;i.fill(0);for(let c=t;c<s;c++)if(e.get(c)!==o)i[a]++;else{if(a===r-1){if(ke.patternMatchVariance(i,n,pe.MAX_INDIVIDUAL_VARIANCE)<pe.MAX_AVG_VARIANCE)return[l,c];l+=i[0]+i[1],te.arraycopy(i,2,i,0,a-1),i[a-1]=0,i[a]=0,a--}else a++;i[a]=1,o=!o}throw new D}static decodeDigit(e){let t=pe.MAX_AVG_VARIANCE,n=-1,r=pe.PATTERNS.length;for(let i=0;i<r;i++){let s=pe.PATTERNS[i],o=ke.patternMatchVariance(e,s,pe.MAX_INDIVIDUAL_VARIANCE);o<t?(t=o,n=i):o===t&&(n=-1)}if(n>=0)return n%10;throw new D}}pe.PATTERNS=[Int32Array.from([1,1,2,2,1]),Int32Array.from([2,1,1,1,2]),Int32Array.from([1,2,1,1,2]),Int32Array.from([2,2,1,1,1]),Int32Array.from([1,1,2,1,2]),Int32Array.from([2,1,2,1,1]),Int32Array.from([1,2,2,1,1]),Int32Array.from([1,1,1,2,2]),Int32Array.from([2,1,1,2,1]),Int32Array.from([1,2,1,2,1]),Int32Array.from([1,1,3,3,1]),Int32Array.from([3,1,1,1,3]),Int32Array.from([1,3,1,1,3]),Int32Array.from([3,3,1,1,1]),Int32Array.from([1,1,3,1,3]),Int32Array.from([3,1,3,1,1]),Int32Array.from([1,3,3,1,1]),Int32Array.from([1,1,1,3,3]),Int32Array.from([3,1,1,3,1]),Int32Array.from([1,3,1,3,1])],pe.MAX_AVG_VARIANCE=.38,pe.MAX_INDIVIDUAL_VARIANCE=.5,pe.DEFAULT_ALLOWED_LENGTHS=[6,8,10,12,14],pe.START_PATTERN=Int32Array.from([1,1,1,1]),pe.END_PATTERN_REVERSED=[Int32Array.from([1,1,2]),Int32Array.from([1,1,3])];class Be extends ke{constructor(){super(...arguments),this.decodeRowStringBuffer=""}static findStartGuardPattern(e){let t=!1,n,r=0,i=Int32Array.from([0,0,0]);for(;!t;){i=Int32Array.from([0,0,0]),n=Be.findGuardPattern(e,r,!1,this.START_END_PATTERN,i);let s=n[0];r=n[1];let o=s-(r-s);o>=0&&(t=e.isRange(o,s,!1))}return n}static checkChecksum(e){return Be.checkStandardUPCEANChecksum(e)}static checkStandardUPCEANChecksum(e){let t=e.length;if(t===0)return!1;let n=parseInt(e.charAt(t-1),10);return Be.getStandardUPCEANChecksum(e.substring(0,t-1))===n}static getStandardUPCEANChecksum(e){let t=e.length,n=0;for(let r=t-1;r>=0;r-=2){let i=e.charAt(r).charCodeAt(0)-48;if(i<0||i>9)throw new U;n+=i}n*=3;for(let r=t-2;r>=0;r-=2){let i=e.charAt(r).charCodeAt(0)-48;if(i<0||i>9)throw new U;n+=i}return(1e3-n)%10}static decodeEnd(e,t){return Be.findGuardPattern(e,t,!1,Be.START_END_PATTERN,new Int32Array(Be.START_END_PATTERN.length).fill(0))}static findGuardPatternWithoutCounters(e,t,n,r){return this.findGuardPattern(e,t,n,r,new Int32Array(r.length))}static findGuardPattern(e,t,n,r,i){let s=e.getSize();t=n?e.getNextUnset(t):e.getNextSet(t);let o=0,a=t,l=r.length,c=n;for(let f=t;f<s;f++)if(e.get(f)!==c)i[o]++;else{if(o===l-1){if(ke.patternMatchVariance(i,r,Be.MAX_INDIVIDUAL_VARIANCE)<Be.MAX_AVG_VARIANCE)return Int32Array.from([a,f]);a+=i[0]+i[1];let w=i.slice(2,i.length-1);for(let E=0;E<o-1;E++)i[E]=w[E];i[o-1]=0,i[o]=0,o--}else o++;i[o]=1,c=!c}throw new D}static decodeDigit(e,t,n,r){this.recordPattern(e,n,t);let i=this.MAX_AVG_VARIANCE,s=-1,o=r.length;for(let a=0;a<o;a++){let l=r[a],c=ke.patternMatchVariance(t,l,Be.MAX_INDIVIDUAL_VARIANCE);c<i&&(i=c,s=a)}if(s>=0)return s;throw new D}}Be.MAX_AVG_VARIANCE=.48,Be.MAX_INDIVIDUAL_VARIANCE=.7,Be.START_END_PATTERN=Int32Array.from([1,1,1]),Be.MIDDLE_PATTERN=Int32Array.from([1,1,1,1,1]),Be.END_PATTERN=Int32Array.from([1,1,1,1,1,1]),Be.L_PATTERNS=[Int32Array.from([3,2,1,1]),Int32Array.from([2,2,2,1]),Int32Array.from([2,1,2,2]),Int32Array.from([1,4,1,1]),Int32Array.from([1,1,3,2]),Int32Array.from([1,2,3,1]),Int32Array.from([1,1,1,4]),Int32Array.from([1,3,1,2]),Int32Array.from([1,2,1,3]),Int32Array.from([3,1,1,2])];class mn{constructor(){this.CHECK_DIGIT_ENCODINGS=[24,20,18,17,12,6,3,10,9,5],this.decodeMiddleCounters=Int32Array.from([0,0,0,0]),this.decodeRowStringBuffer=""}decodeRow(e,t,n){let r=this.decodeRowStringBuffer,i=this.decodeMiddle(t,n,r),s=r.toString(),o=mn.parseExtensionString(s),a=[new z((n[0]+n[1])/2,e),new z(i,e)],l=new nt(s,null,0,a,j.UPC_EAN_EXTENSION,new Date().getTime());return o!=null&&l.putAllMetadata(o),l}decodeMiddle(e,t,n){let r=this.decodeMiddleCounters;r[0]=0,r[1]=0,r[2]=0,r[3]=0;let i=e.getSize(),s=t[1],o=0;for(let l=0;l<5&&s<i;l++){let c=Be.decodeDigit(e,r,s,Be.L_AND_G_PATTERNS);n+=String.fromCharCode(48+c%10);for(let f of r)s+=f;c>=10&&(o|=1<<4-l),l!==4&&(s=e.getNextSet(s),s=e.getNextUnset(s))}if(n.length!==5)throw new D;let a=this.determineCheckDigit(o);if(mn.extensionChecksum(n.toString())!==a)throw new D;return s}static extensionChecksum(e){let t=e.length,n=0;for(let r=t-2;r>=0;r-=2)n+=e.charAt(r).charCodeAt(0)-48;n*=3;for(let r=t-1;r>=0;r-=2)n+=e.charAt(r).charCodeAt(0)-48;return n*=3,n%10}determineCheckDigit(e){for(let t=0;t<10;t++)if(e===this.CHECK_DIGIT_ENCODINGS[t])return t;throw new D}static parseExtensionString(e){if(e.length!==5)return null;let t=mn.parseExtension5String(e);return t==null?null:new Map([[He.SUGGESTED_PRICE,t]])}static parseExtension5String(e){let t;switch(e.charAt(0)){case"0":t="£";break;case"5":t="$";break;case"9":switch(e){case"90000":return null;case"99991":return"0.00";case"99990":return"Used"}t="";break;default:t="";break}let n=parseInt(e.substring(1)),r=(n/100).toString(),i=n%100,s=i<10?"0"+i:i.toString();return t+r+"."+s}}class tr{constructor(){this.decodeMiddleCounters=Int32Array.from([0,0,0,0]),this.decodeRowStringBuffer=""}decodeRow(e,t,n){let r=this.decodeRowStringBuffer,i=this.decodeMiddle(t,n,r),s=r.toString(),o=tr.parseExtensionString(s),a=[new z((n[0]+n[1])/2,e),new z(i,e)],l=new nt(s,null,0,a,j.UPC_EAN_EXTENSION,new Date().getTime());return o!=null&&l.putAllMetadata(o),l}decodeMiddle(e,t,n){let r=this.decodeMiddleCounters;r[0]=0,r[1]=0,r[2]=0,r[3]=0;let i=e.getSize(),s=t[1],o=0;for(let a=0;a<2&&s<i;a++){let l=Be.decodeDigit(e,r,s,Be.L_AND_G_PATTERNS);n+=String.fromCharCode(48+l%10);for(let c of r)s+=c;l>=10&&(o|=1<<1-a),a!==1&&(s=e.getNextSet(s),s=e.getNextUnset(s))}if(n.length!==2)throw new D;if(parseInt(n.toString())%4!==o)throw new D;return s}static parseExtensionString(e){return e.length!==2?null:new Map([[He.ISSUE_NUMBER,parseInt(e)]])}}class Xr{static decodeRow(e,t,n){let r=Be.findGuardPattern(t,n,!1,this.EXTENSION_START_PATTERN,new Int32Array(this.EXTENSION_START_PATTERN.length).fill(0));try{return new mn().decodeRow(e,t,r)}catch(i){return new tr().decodeRow(e,t,r)}}}Xr.EXTENSION_START_PATTERN=Int32Array.from([1,1,2]);class de extends Be{constructor(){super(),this.decodeRowStringBuffer="",de.L_AND_G_PATTERNS=de.L_PATTERNS.map(e=>Int32Array.from(e));for(let e=10;e<20;e++){let t=de.L_PATTERNS[e-10],n=new Int32Array(t.length);for(let r=0;r<t.length;r++)n[r]=t[t.length-r-1];de.L_AND_G_PATTERNS[e]=n}}decodeRow(e,t,n){let r=de.findStartGuardPattern(t),i=n==null?null:n.get(Ce.NEED_RESULT_POINT_CALLBACK);if(i!=null){const P=new z((r[0]+r[1])/2,e);i.foundPossibleResultPoint(P)}let s=this.decodeMiddle(t,r,this.decodeRowStringBuffer),o=s.rowOffset,a=s.resultString;if(i!=null){const P=new z(o,e);i.foundPossibleResultPoint(P)}let l=this.decodeEnd(t,o);if(i!=null){const P=new z((l[0]+l[1])/2,e);i.foundPossibleResultPoint(P)}let c=l[1],f=c+(c-l[0]);if(f>=t.getSize()||!t.isRange(c,f,!1))throw new D;let w=a.toString();if(w.length<8)throw new U;if(!de.checkChecksum(w))throw new ee;let E=(r[1]+r[0])/2,I=(l[1]+l[0])/2,b=this.getBarcodeFormat(),S=[new z(E,e),new z(I,e)],O=new nt(w,null,0,S,b,new Date().getTime()),L=0;try{let P=Xr.decodeRow(e,t,l[1]);O.putMetadata(He.UPC_EAN_EXTENSION,P.getText()),O.putAllMetadata(P.getResultMetadata()),O.addResultPoints(P.getResultPoints()),L=P.getText().length}catch(P){}let k=n==null?null:n.get(Ce.ALLOWED_EAN_EXTENSIONS);if(k!=null){let P=!1;for(let ae in k)if(L.toString()===ae){P=!0;break}if(!P)throw new D}return O}decodeEnd(e,t){return de.findGuardPattern(e,t,!1,de.START_END_PATTERN,new Int32Array(de.START_END_PATTERN.length).fill(0))}static checkChecksum(e){return de.checkStandardUPCEANChecksum(e)}static checkStandardUPCEANChecksum(e){let t=e.length;if(t===0)return!1;let n=parseInt(e.charAt(t-1),10);return de.getStandardUPCEANChecksum(e.substring(0,t-1))===n}static getStandardUPCEANChecksum(e){let t=e.length,n=0;for(let r=t-1;r>=0;r-=2){let i=e.charAt(r).charCodeAt(0)-48;if(i<0||i>9)throw new U;n+=i}n*=3;for(let r=t-2;r>=0;r-=2){let i=e.charAt(r).charCodeAt(0)-48;if(i<0||i>9)throw new U;n+=i}return(1e3-n)%10}}class Yt extends de{constructor(){super(),this.decodeMiddleCounters=Int32Array.from([0,0,0,0])}decodeMiddle(e,t,n){let r=this.decodeMiddleCounters;r[0]=0,r[1]=0,r[2]=0,r[3]=0;let i=e.getSize(),s=t[1],o=0;for(let l=0;l<6&&s<i;l++){let c=de.decodeDigit(e,r,s,de.L_AND_G_PATTERNS);n+=String.fromCharCode(48+c%10);for(let f of r)s+=f;c>=10&&(o|=1<<5-l)}n=Yt.determineFirstDigit(n,o),s=de.findGuardPattern(e,s,!0,de.MIDDLE_PATTERN,new Int32Array(de.MIDDLE_PATTERN.length).fill(0))[1];for(let l=0;l<6&&s<i;l++){let c=de.decodeDigit(e,r,s,de.L_PATTERNS);n+=String.fromCharCode(48+c);for(let f of r)s+=f}return{rowOffset:s,resultString:n}}getBarcodeFormat(){return j.EAN_13}static determineFirstDigit(e,t){for(let n=0;n<10;n++)if(t===this.FIRST_DIGIT_ENCODINGS[n])return e=String.fromCharCode(48+n)+e,e;throw new D}}Yt.FIRST_DIGIT_ENCODINGS=[0,11,13,14,19,25,28,21,22,26];class zr extends de{constructor(){super(),this.decodeMiddleCounters=Int32Array.from([0,0,0,0])}decodeMiddle(e,t,n){const r=this.decodeMiddleCounters;r[0]=0,r[1]=0,r[2]=0,r[3]=0;let i=e.getSize(),s=t[1];for(let a=0;a<4&&s<i;a++){let l=de.decodeDigit(e,r,s,de.L_PATTERNS);n+=String.fromCharCode(48+l);for(let c of r)s+=c}s=de.findGuardPattern(e,s,!0,de.MIDDLE_PATTERN,new Int32Array(de.MIDDLE_PATTERN.length).fill(0))[1];for(let a=0;a<4&&s<i;a++){let l=de.decodeDigit(e,r,s,de.L_PATTERNS);n+=String.fromCharCode(48+l);for(let c of r)s+=c}return{rowOffset:s,resultString:n}}getBarcodeFormat(){return j.EAN_8}}class Yr extends de{constructor(){super(...arguments),this.ean13Reader=new Yt}getBarcodeFormat(){return j.UPC_A}decode(e,t){return this.maybeReturnResult(this.ean13Reader.decode(e))}decodeRow(e,t,n){return this.maybeReturnResult(this.ean13Reader.decodeRow(e,t,n))}decodeMiddle(e,t,n){return this.ean13Reader.decodeMiddle(e,t,n)}maybeReturnResult(e){let t=e.getText();if(t.charAt(0)==="0"){let n=new nt(t.substring(1),null,null,e.getResultPoints(),j.UPC_A);return e.getResultMetadata()!=null&&n.putAllMetadata(e.getResultMetadata()),n}else throw new D}reset(){this.ean13Reader.reset()}}class bt extends de{constructor(){super(),this.decodeMiddleCounters=new Int32Array(4)}decodeMiddle(e,t,n){const r=this.decodeMiddleCounters.map(l=>l);r[0]=0,r[1]=0,r[2]=0,r[3]=0;const i=e.getSize();let s=t[1],o=0;for(let l=0;l<6&&s<i;l++){const c=bt.decodeDigit(e,r,s,bt.L_AND_G_PATTERNS);n+=String.fromCharCode(48+c%10);for(let f of r)s+=f;c>=10&&(o|=1<<5-l)}let a=bt.determineNumSysAndCheckDigit(n,o);return{rowOffset:s,resultString:a}}decodeEnd(e,t){return bt.findGuardPatternWithoutCounters(e,t,!0,bt.MIDDLE_END_PATTERN)}checkChecksum(e){return de.checkChecksum(bt.convertUPCEtoUPCA(e))}static determineNumSysAndCheckDigit(e,t){for(let n=0;n<=1;n++)for(let r=0;r<10;r++)if(t===this.NUMSYS_AND_CHECK_DIGIT_PATTERNS[n][r]){let i=String.fromCharCode(48+n),s=String.fromCharCode(48+r);return i+e+s}throw D.getNotFoundInstance()}getBarcodeFormat(){return j.UPC_E}static convertUPCEtoUPCA(e){const t=e.slice(1,7).split("").map(i=>i.charCodeAt(0)),n=new me;n.append(e.charAt(0));let r=t[5];switch(r){case 0:case 1:case 2:n.appendChars(t,0,2),n.append(r),n.append("0000"),n.appendChars(t,2,3);break;case 3:n.appendChars(t,0,3),n.append("00000"),n.appendChars(t,3,2);break;case 4:n.appendChars(t,0,4),n.append("00000"),n.append(t[4]);break;default:n.appendChars(t,0,5),n.append("0000"),n.append(r);break}return e.length>=8&&n.append(e.charAt(7)),n.toString()}}bt.MIDDLE_END_PATTERN=Int32Array.from([1,1,1,1,1,1]),bt.NUMSYS_AND_CHECK_DIGIT_PATTERNS=[Int32Array.from([56,52,50,49,44,38,35,42,41,37]),Int32Array.from([7,11,13,14,19,25,28,21,22,26])];class nr extends ke{constructor(e){super();let t=e==null?null:e.get(Ce.POSSIBLE_FORMATS),n=[];m(t)?(n.push(new Yt),n.push(new Yr),n.push(new zr),n.push(new bt)):(t.indexOf(j.EAN_13)>-1&&n.push(new Yt),t.indexOf(j.UPC_A)>-1&&n.push(new Yr),t.indexOf(j.EAN_8)>-1&&n.push(new zr),t.indexOf(j.UPC_E)>-1&&n.push(new bt)),this.readers=n}decodeRow(e,t,n){for(let r of this.readers)try{const i=r.decodeRow(e,t,n),s=i.getBarcodeFormat()===j.EAN_13&&i.getText().charAt(0)==="0",o=n==null?null:n.get(Ce.POSSIBLE_FORMATS),a=o==null||o.includes(j.UPC_A);if(s&&a){const l=i.getRawBytes(),c=new nt(i.getText().substring(1),l,l?l.length:null,i.getResultPoints(),j.UPC_A);return c.putAllMetadata(i.getResultMetadata()),c}return i}catch(i){}throw new D}reset(){for(let e of this.readers)e.reset()}}class Qe extends ke{constructor(){super(),this.decodeFinderCounters=new Int32Array(4),this.dataCharacterCounters=new Int32Array(8),this.oddRoundingErrors=new Array(4),this.evenRoundingErrors=new Array(4),this.oddCounts=new Array(this.dataCharacterCounters.length/2),this.evenCounts=new Array(this.dataCharacterCounters.length/2)}getDecodeFinderCounters(){return this.decodeFinderCounters}getDataCharacterCounters(){return this.dataCharacterCounters}getOddRoundingErrors(){return this.oddRoundingErrors}getEvenRoundingErrors(){return this.evenRoundingErrors}getOddCounts(){return this.oddCounts}getEvenCounts(){return this.evenCounts}parseFinderValue(e,t){for(let n=0;n<t.length;n++)if(ke.patternMatchVariance(e,t[n],Qe.MAX_INDIVIDUAL_VARIANCE)<Qe.MAX_AVG_VARIANCE)return n;throw new D}static count(e){return he.sum(new Int32Array(e))}static increment(e,t){let n=0,r=t[0];for(let i=1;i<e.length;i++)t[i]>r&&(r=t[i],n=i);e[n]++}static decrement(e,t){let n=0,r=t[0];for(let i=1;i<e.length;i++)t[i]<r&&(r=t[i],n=i);e[n]--}static isFinderPattern(e){let t=e[0]+e[1],n=t+e[2]+e[3],r=t/n;if(r>=Qe.MIN_FINDER_PATTERN_RATIO&&r<=Qe.MAX_FINDER_PATTERN_RATIO){let i=Number.MAX_SAFE_INTEGER,s=Number.MIN_SAFE_INTEGER;for(let o of e)o>s&&(s=o),o<i&&(i=o);return s<10*i}return!1}}Qe.MAX_AVG_VARIANCE=.2,Qe.MAX_INDIVIDUAL_VARIANCE=.45,Qe.MIN_FINDER_PATTERN_RATIO=9.5/12,Qe.MAX_FINDER_PATTERN_RATIO=12.5/14;class rn{constructor(e,t){this.value=e,this.checksumPortion=t}getValue(){return this.value}getChecksumPortion(){return this.checksumPortion}toString(){return this.value+"("+this.checksumPortion+")"}equals(e){if(!(e instanceof rn))return!1;const t=e;return this.value===t.value&&this.checksumPortion===t.checksumPortion}hashCode(){return this.value^this.checksumPortion}}class kn{constructor(e,t,n,r,i){this.value=e,this.startEnd=t,this.value=e,this.startEnd=t,this.resultPoints=new Array,this.resultPoints.push(new z(n,i)),this.resultPoints.push(new z(r,i))}getValue(){return this.value}getStartEnd(){return this.startEnd}getResultPoints(){return this.resultPoints}equals(e){if(!(e instanceof kn))return!1;const t=e;return this.value===t.value}hashCode(){return this.value}}class Tt{constructor(){}static getRSSvalue(e,t,n){let r=0;for(let a of e)r+=a;let i=0,s=0,o=e.length;for(let a=0;a<o-1;a++){let l;for(l=1,s|=1<<a;l<e[a];l++,s&=~(1<<a)){let c=Tt.combins(r-l-1,o-a-2);if(n&&s===0&&r-l-(o-a-1)>=o-a-1&&(c-=Tt.combins(r-l-(o-a),o-a-2)),o-a-1>1){let f=0;for(let w=r-l-(o-a-2);w>t;w--)f+=Tt.combins(r-l-w-1,o-a-3);c-=f*(o-1-a)}else r-l>t&&c--;i+=c}r-=l}return i}static combins(e,t){let n,r;e-t>t?(r=t,n=e-t):(r=e-t,n=t);let i=1,s=1;for(let o=e;o>n;o--)i*=o,s<=r&&(i/=s,s++);for(;s<=r;)i/=s,s++;return i}}class is{static buildBitArray(e){let t=e.length*2-1;e[e.length-1].getRightChar()==null&&(t-=1);let n=12*t,r=new le(n),i=0,o=e[0].getRightChar().getValue();for(let a=11;a>=0;--a)o&1<<a&&r.set(i),i++;for(let a=1;a<e.length;++a){let l=e[a],c=l.getLeftChar().getValue();for(let f=11;f>=0;--f)c&1<<f&&r.set(i),i++;if(l.getRightChar()!=null){let f=l.getRightChar().getValue();for(let w=11;w>=0;--w)f&1<<w&&r.set(i),i++}}return r}}class Zt{constructor(e,t){t?this.decodedInformation=null:(this.finished=e,this.decodedInformation=t)}getDecodedInformation(){return this.decodedInformation}isFinished(){return this.finished}}class rr{constructor(e){this.newPosition=e}getNewPosition(){return this.newPosition}}class ct extends rr{constructor(e,t){super(e),this.value=t}getValue(){return this.value}isFNC1(){return this.value===ct.FNC1}}ct.FNC1="$";class Kt extends rr{constructor(e,t,n){super(e),n?(this.remaining=!0,this.remainingValue=this.remainingValue):(this.remaining=!1,this.remainingValue=0),this.newString=t}getNewString(){return this.newString}isRemaining(){return this.remaining}getRemainingValue(){return this.remainingValue}}class Ct extends rr{constructor(e,t,n){if(super(e),t<0||t>10||n<0||n>10)throw new U;this.firstDigit=t,this.secondDigit=n}getFirstDigit(){return this.firstDigit}getSecondDigit(){return this.secondDigit}getValue(){return this.firstDigit*10+this.secondDigit}isFirstDigitFNC1(){return this.firstDigit===Ct.FNC1}isSecondDigitFNC1(){return this.secondDigit===Ct.FNC1}isAnyFNC1(){return this.firstDigit===Ct.FNC1||this.secondDigit===Ct.FNC1}}Ct.FNC1=10;class X{constructor(){}static parseFieldsInGeneralPurpose(e){if(!e)return null;if(e.length<2)throw new D;let t=e.substring(0,2);for(let i of X.TWO_DIGIT_DATA_LENGTH)if(i[0]===t)return i[1]===X.VARIABLE_LENGTH?X.processVariableAI(2,i[2],e):X.processFixedAI(2,i[1],e);if(e.length<3)throw new D;let n=e.substring(0,3);for(let i of X.THREE_DIGIT_DATA_LENGTH)if(i[0]===n)return i[1]===X.VARIABLE_LENGTH?X.processVariableAI(3,i[2],e):X.processFixedAI(3,i[1],e);for(let i of X.THREE_DIGIT_PLUS_DIGIT_DATA_LENGTH)if(i[0]===n)return i[1]===X.VARIABLE_LENGTH?X.processVariableAI(4,i[2],e):X.processFixedAI(4,i[1],e);if(e.length<4)throw new D;let r=e.substring(0,4);for(let i of X.FOUR_DIGIT_DATA_LENGTH)if(i[0]===r)return i[1]===X.VARIABLE_LENGTH?X.processVariableAI(4,i[2],e):X.processFixedAI(4,i[1],e);throw new D}static processFixedAI(e,t,n){if(n.length<e)throw new D;let r=n.substring(0,e);if(n.length<e+t)throw new D;let i=n.substring(e,e+t),s=n.substring(e+t),o="("+r+")"+i,a=X.parseFieldsInGeneralPurpose(s);return a==null?o:o+a}static processVariableAI(e,t,n){let r=n.substring(0,e),i;n.length<e+t?i=n.length:i=e+t;let s=n.substring(e,i),o=n.substring(i),a="("+r+")"+s,l=X.parseFieldsInGeneralPurpose(o);return l==null?a:a+l}}X.VARIABLE_LENGTH=[],X.TWO_DIGIT_DATA_LENGTH=[["00",18],["01",14],["02",14],["10",X.VARIABLE_LENGTH,20],["11",6],["12",6],["13",6],["15",6],["17",6],["20",2],["21",X.VARIABLE_LENGTH,20],["22",X.VARIABLE_LENGTH,29],["30",X.VARIABLE_LENGTH,8],["37",X.VARIABLE_LENGTH,8],["90",X.VARIABLE_LENGTH,30],["91",X.VARIABLE_LENGTH,30],["92",X.VARIABLE_LENGTH,30],["93",X.VARIABLE_LENGTH,30],["94",X.VARIABLE_LENGTH,30],["95",X.VARIABLE_LENGTH,30],["96",X.VARIABLE_LENGTH,30],["97",X.VARIABLE_LENGTH,3],["98",X.VARIABLE_LENGTH,30],["99",X.VARIABLE_LENGTH,30]],X.THREE_DIGIT_DATA_LENGTH=[["240",X.VARIABLE_LENGTH,30],["241",X.VARIABLE_LENGTH,30],["242",X.VARIABLE_LENGTH,6],["250",X.VARIABLE_LENGTH,30],["251",X.VARIABLE_LENGTH,30],["253",X.VARIABLE_LENGTH,17],["254",X.VARIABLE_LENGTH,20],["400",X.VARIABLE_LENGTH,30],["401",X.VARIABLE_LENGTH,30],["402",17],["403",X.VARIABLE_LENGTH,30],["410",13],["411",13],["412",13],["413",13],["414",13],["420",X.VARIABLE_LENGTH,20],["421",X.VARIABLE_LENGTH,15],["422",3],["423",X.VARIABLE_LENGTH,15],["424",3],["425",3],["426",3]],X.THREE_DIGIT_PLUS_DIGIT_DATA_LENGTH=[["310",6],["311",6],["312",6],["313",6],["314",6],["315",6],["316",6],["320",6],["321",6],["322",6],["323",6],["324",6],["325",6],["326",6],["327",6],["328",6],["329",6],["330",6],["331",6],["332",6],["333",6],["334",6],["335",6],["336",6],["340",6],["341",6],["342",6],["343",6],["344",6],["345",6],["346",6],["347",6],["348",6],["349",6],["350",6],["351",6],["352",6],["353",6],["354",6],["355",6],["356",6],["357",6],["360",6],["361",6],["362",6],["363",6],["364",6],["365",6],["366",6],["367",6],["368",6],["369",6],["390",X.VARIABLE_LENGTH,15],["391",X.VARIABLE_LENGTH,18],["392",X.VARIABLE_LENGTH,15],["393",X.VARIABLE_LENGTH,18],["703",X.VARIABLE_LENGTH,30]],X.FOUR_DIGIT_DATA_LENGTH=[["7001",13],["7002",X.VARIABLE_LENGTH,30],["7003",10],["8001",14],["8002",X.VARIABLE_LENGTH,20],["8003",X.VARIABLE_LENGTH,30],["8004",X.VARIABLE_LENGTH,30],["8005",6],["8006",18],["8007",X.VARIABLE_LENGTH,30],["8008",X.VARIABLE_LENGTH,12],["8018",18],["8020",X.VARIABLE_LENGTH,25],["8100",6],["8101",10],["8102",2],["8110",X.VARIABLE_LENGTH,70],["8200",X.VARIABLE_LENGTH,70]];class sn{constructor(e){this.buffer=new me,this.information=e}decodeAllCodes(e,t){let n=t,r=null;do{let i=this.decodeGeneralPurposeField(n,r),s=X.parseFieldsInGeneralPurpose(i.getNewString());if(s!=null&&e.append(s),i.isRemaining()?r=""+i.getRemainingValue():r=null,n===i.getNewPosition())break;n=i.getNewPosition()}while(!0);return e.toString()}isStillNumeric(e){if(e+7>this.information.getSize())return e+4<=this.information.getSize();for(let t=e;t<e+3;++t)if(this.information.get(t))return!0;return this.information.get(e+3)}decodeNumeric(e){if(e+7>this.information.getSize()){let i=this.extractNumericValueFromBitArray(e,4);return i===0?new Ct(this.information.getSize(),Ct.FNC1,Ct.FNC1):new Ct(this.information.getSize(),i-1,Ct.FNC1)}let t=this.extractNumericValueFromBitArray(e,7),n=(t-8)/11,r=(t-8)%11;return new Ct(e+7,n,r)}extractNumericValueFromBitArray(e,t){return sn.extractNumericValueFromBitArray(this.information,e,t)}static extractNumericValueFromBitArray(e,t,n){let r=0;for(let i=0;i<n;++i)e.get(t+i)&&(r|=1<<n-i-1);return r}decodeGeneralPurposeField(e,t){this.buffer.setLengthToZero(),t!=null&&this.buffer.append(t),this.current.setPosition(e);let n=this.parseBlocks();return n!=null&&n.isRemaining()?new Kt(this.current.getPosition(),this.buffer.toString(),n.getRemainingValue()):new Kt(this.current.getPosition(),this.buffer.toString())}parseBlocks(){let e,t;do{let n=this.current.getPosition();if(this.current.isAlpha()?(t=this.parseAlphaBlock(),e=t.isFinished()):this.current.isIsoIec646()?(t=this.parseIsoIec646Block(),e=t.isFinished()):(t=this.parseNumericBlock(),e=t.isFinished()),!(n!==this.current.getPosition())&&!e)break}while(!e);return t.getDecodedInformation()}parseNumericBlock(){for(;this.isStillNumeric(this.current.getPosition());){let e=this.decodeNumeric(this.current.getPosition());if(this.current.setPosition(e.getNewPosition()),e.isFirstDigitFNC1()){let t;return e.isSecondDigitFNC1()?t=new Kt(this.current.getPosition(),this.buffer.toString()):t=new Kt(this.current.getPosition(),this.buffer.toString(),e.getSecondDigit()),new Zt(!0,t)}if(this.buffer.append(e.getFirstDigit()),e.isSecondDigitFNC1()){let t=new Kt(this.current.getPosition(),this.buffer.toString());return new Zt(!0,t)}this.buffer.append(e.getSecondDigit())}return this.isNumericToAlphaNumericLatch(this.current.getPosition())&&(this.current.setAlpha(),this.current.incrementPosition(4)),new Zt(!1)}parseIsoIec646Block(){for(;this.isStillIsoIec646(this.current.getPosition());){let e=this.decodeIsoIec646(this.current.getPosition());if(this.current.setPosition(e.getNewPosition()),e.isFNC1()){let t=new Kt(this.current.getPosition(),this.buffer.toString());return new Zt(!0,t)}this.buffer.append(e.getValue())}return this.isAlphaOr646ToNumericLatch(this.current.getPosition())?(this.current.incrementPosition(3),this.current.setNumeric()):this.isAlphaTo646ToAlphaLatch(this.current.getPosition())&&(this.current.getPosition()+5<this.information.getSize()?this.current.incrementPosition(5):this.current.setPosition(this.information.getSize()),this.current.setAlpha()),new Zt(!1)}parseAlphaBlock(){for(;this.isStillAlpha(this.current.getPosition());){let e=this.decodeAlphanumeric(this.current.getPosition());if(this.current.setPosition(e.getNewPosition()),e.isFNC1()){let t=new Kt(this.current.getPosition(),this.buffer.toString());return new Zt(!0,t)}this.buffer.append(e.getValue())}return this.isAlphaOr646ToNumericLatch(this.current.getPosition())?(this.current.incrementPosition(3),this.current.setNumeric()):this.isAlphaTo646ToAlphaLatch(this.current.getPosition())&&(this.current.getPosition()+5<this.information.getSize()?this.current.incrementPosition(5):this.current.setPosition(this.information.getSize()),this.current.setIsoIec646()),new Zt(!1)}isStillIsoIec646(e){if(e+5>this.information.getSize())return!1;let t=this.extractNumericValueFromBitArray(e,5);if(t>=5&&t<16)return!0;if(e+7>this.information.getSize())return!1;let n=this.extractNumericValueFromBitArray(e,7);if(n>=64&&n<116)return!0;if(e+8>this.information.getSize())return!1;let r=this.extractNumericValueFromBitArray(e,8);return r>=232&&r<253}decodeIsoIec646(e){let t=this.extractNumericValueFromBitArray(e,5);if(t===15)return new ct(e+5,ct.FNC1);if(t>=5&&t<15)return new ct(e+5,"0"+(t-5));let n=this.extractNumericValueFromBitArray(e,7);if(n>=64&&n<90)return new ct(e+7,""+(n+1));if(n>=90&&n<116)return new ct(e+7,""+(n+7));let r=this.extractNumericValueFromBitArray(e,8),i;switch(r){case 232:i="!";break;case 233:i='"';break;case 234:i="%";break;case 235:i="&";break;case 236:i="'";break;case 237:i="(";break;case 238:i=")";break;case 239:i="*";break;case 240:i="+";break;case 241:i=",";break;case 242:i="-";break;case 243:i=".";break;case 244:i="/";break;case 245:i=":";break;case 246:i=";";break;case 247:i="<";break;case 248:i="=";break;case 249:i=">";break;case 250:i="?";break;case 251:i="_";break;case 252:i=" ";break;default:throw new U}return new ct(e+8,i)}isStillAlpha(e){if(e+5>this.information.getSize())return!1;let t=this.extractNumericValueFromBitArray(e,5);if(t>=5&&t<16)return!0;if(e+6>this.information.getSize())return!1;let n=this.extractNumericValueFromBitArray(e,6);return n>=16&&n<63}decodeAlphanumeric(e){let t=this.extractNumericValueFromBitArray(e,5);if(t===15)return new ct(e+5,ct.FNC1);if(t>=5&&t<15)return new ct(e+5,"0"+(t-5));let n=this.extractNumericValueFromBitArray(e,6);if(n>=32&&n<58)return new ct(e+6,""+(n+33));let r;switch(n){case 58:r="*";break;case 59:r=",";break;case 60:r="-";break;case 61:r=".";break;case 62:r="/";break;default:throw new St("Decoding invalid alphanumeric value: "+n)}return new ct(e+6,r)}isAlphaTo646ToAlphaLatch(e){if(e+1>this.information.getSize())return!1;for(let t=0;t<5&&t+e<this.information.getSize();++t)if(t===2){if(!this.information.get(e+2))return!1}else if(this.information.get(e+t))return!1;return!0}isAlphaOr646ToNumericLatch(e){if(e+3>this.information.getSize())return!1;for(let t=e;t<e+3;++t)if(this.information.get(t))return!1;return!0}isNumericToAlphaNumericLatch(e){if(e+1>this.information.getSize())return!1;for(let t=0;t<4&&t+e<this.information.getSize();++t)if(this.information.get(e+t))return!1;return!0}}class ir{constructor(e){this.information=e,this.generalDecoder=new sn(e)}getInformation(){return this.information}getGeneralDecoder(){return this.generalDecoder}}class ht extends ir{constructor(e){super(e)}encodeCompressedGtin(e,t){e.append("(01)");let n=e.length();e.append("9"),this.encodeCompressedGtinWithoutAI(e,t,n)}encodeCompressedGtinWithoutAI(e,t,n){for(let r=0;r<4;++r){let i=this.getGeneralDecoder().extractNumericValueFromBitArray(t+10*r,10);i/100===0&&e.append("0"),i/10===0&&e.append("0"),e.append(i)}ht.appendCheckDigit(e,n)}static appendCheckDigit(e,t){let n=0;for(let r=0;r<13;r++){let i=e.charAt(r+t).charCodeAt(0)-48;n+=r&1?i:3*i}n=10-n%10,n===10&&(n=0),e.append(n)}}ht.GTIN_SIZE=40;class on extends ht{constructor(e){super(e)}parseInformation(){let e=new me;e.append("(01)");let t=e.length(),n=this.getGeneralDecoder().extractNumericValueFromBitArray(on.HEADER_SIZE,4);return e.append(n),this.encodeCompressedGtinWithoutAI(e,on.HEADER_SIZE+4,t),this.getGeneralDecoder().decodeAllCodes(e,on.HEADER_SIZE+44)}}on.HEADER_SIZE=4;class Fn extends ir{constructor(e){super(e)}parseInformation(){let e=new me;return this.getGeneralDecoder().decodeAllCodes(e,Fn.HEADER_SIZE)}}Fn.HEADER_SIZE=5;class Un extends ht{constructor(e){super(e)}encodeCompressedWeight(e,t,n){let r=this.getGeneralDecoder().extractNumericValueFromBitArray(t,n);this.addWeightCode(e,r);let i=this.checkWeight(r),s=1e5;for(let o=0;o<5;++o)i/s===0&&e.append("0"),s/=10;e.append(i)}}class Nt extends Un{constructor(e){super(e)}parseInformation(){if(this.getInformation().getSize()!=Nt.HEADER_SIZE+Un.GTIN_SIZE+Nt.WEIGHT_SIZE)throw new D;let e=new me;return this.encodeCompressedGtin(e,Nt.HEADER_SIZE),this.encodeCompressedWeight(e,Nt.HEADER_SIZE+Un.GTIN_SIZE,Nt.WEIGHT_SIZE),e.toString()}}Nt.HEADER_SIZE=5,Nt.WEIGHT_SIZE=15;class ss extends Nt{constructor(e){super(e)}addWeightCode(e,t){e.append("(3103)")}checkWeight(e){return e}}class os extends Nt{constructor(e){super(e)}addWeightCode(e,t){t<1e4?e.append("(3202)"):e.append("(3203)")}checkWeight(e){return e<1e4?e:e-1e4}}class _t extends ht{constructor(e){super(e)}parseInformation(){if(this.getInformation().getSize()<_t.HEADER_SIZE+ht.GTIN_SIZE)throw new D;let e=new me;this.encodeCompressedGtin(e,_t.HEADER_SIZE);let t=this.getGeneralDecoder().extractNumericValueFromBitArray(_t.HEADER_SIZE+ht.GTIN_SIZE,_t.LAST_DIGIT_SIZE);e.append("(392"),e.append(t),e.append(")");let n=this.getGeneralDecoder().decodeGeneralPurposeField(_t.HEADER_SIZE+ht.GTIN_SIZE+_t.LAST_DIGIT_SIZE,null);return e.append(n.getNewString()),e.toString()}}_t.HEADER_SIZE=8,_t.LAST_DIGIT_SIZE=2;class it extends ht{constructor(e){super(e)}parseInformation(){if(this.getInformation().getSize()<it.HEADER_SIZE+ht.GTIN_SIZE)throw new D;let e=new me;this.encodeCompressedGtin(e,it.HEADER_SIZE);let t=this.getGeneralDecoder().extractNumericValueFromBitArray(it.HEADER_SIZE+ht.GTIN_SIZE,it.LAST_DIGIT_SIZE);e.append("(393"),e.append(t),e.append(")");let n=this.getGeneralDecoder().extractNumericValueFromBitArray(it.HEADER_SIZE+ht.GTIN_SIZE+it.LAST_DIGIT_SIZE,it.FIRST_THREE_DIGITS_SIZE);n/100==0&&e.append("0"),n/10==0&&e.append("0"),e.append(n);let r=this.getGeneralDecoder().decodeGeneralPurposeField(it.HEADER_SIZE+ht.GTIN_SIZE+it.LAST_DIGIT_SIZE+it.FIRST_THREE_DIGITS_SIZE,null);return e.append(r.getNewString()),e.toString()}}it.HEADER_SIZE=8,it.LAST_DIGIT_SIZE=2,it.FIRST_THREE_DIGITS_SIZE=10;class Re extends Un{constructor(e,t,n){super(e),this.dateCode=n,this.firstAIdigits=t}parseInformation(){if(this.getInformation().getSize()!=Re.HEADER_SIZE+Re.GTIN_SIZE+Re.WEIGHT_SIZE+Re.DATE_SIZE)throw new D;let e=new me;return this.encodeCompressedGtin(e,Re.HEADER_SIZE),this.encodeCompressedWeight(e,Re.HEADER_SIZE+Re.GTIN_SIZE,Re.WEIGHT_SIZE),this.encodeCompressedDate(e,Re.HEADER_SIZE+Re.GTIN_SIZE+Re.WEIGHT_SIZE),e.toString()}encodeCompressedDate(e,t){let n=this.getGeneralDecoder().extractNumericValueFromBitArray(t,Re.DATE_SIZE);if(n==38400)return;e.append("("),e.append(this.dateCode),e.append(")");let r=n%32;n/=32;let i=n%12+1;n/=12;let s=n;s/10==0&&e.append("0"),e.append(s),i/10==0&&e.append("0"),e.append(i),r/10==0&&e.append("0"),e.append(r)}addWeightCode(e,t){e.append("("),e.append(this.firstAIdigits),e.append(t/1e5),e.append(")")}checkWeight(e){return e%1e5}}Re.HEADER_SIZE=8,Re.WEIGHT_SIZE=20,Re.DATE_SIZE=16;function Zr(u){try{if(u.get(1))return new on(u);if(!u.get(2))return new Fn(u);switch(sn.extractNumericValueFromBitArray(u,1,4)){case 4:return new ss(u);case 5:return new os(u)}switch(sn.extractNumericValueFromBitArray(u,1,5)){case 12:return new _t(u);case 13:return new it(u)}switch(sn.extractNumericValueFromBitArray(u,1,7)){case 56:return new Re(u,"310","11");case 57:return new Re(u,"320","11");case 58:return new Re(u,"310","13");case 59:return new Re(u,"320","13");case 60:return new Re(u,"310","15");case 61:return new Re(u,"320","15");case 62:return new Re(u,"310","17");case 63:return new Re(u,"320","17")}}catch(e){throw console.log(e),new St("unknown decoder: "+u)}}class Ut{constructor(e,t,n,r){this.leftchar=e,this.rightchar=t,this.finderpattern=n,this.maybeLast=r}mayBeLast(){return this.maybeLast}getLeftChar(){return this.leftchar}getRightChar(){return this.rightchar}getFinderPattern(){return this.finderpattern}mustBeLast(){return this.rightchar==null}toString(){return"[ "+this.leftchar+", "+this.rightchar+" : "+(this.finderpattern==null?"null":this.finderpattern.getValue())+" ]"}static equals(e,t){return e instanceof Ut?Ut.equalsOrNull(e.leftchar,t.leftchar)&&Ut.equalsOrNull(e.rightchar,t.rightchar)&&Ut.equalsOrNull(e.finderpattern,t.finderpattern):!1}static equalsOrNull(e,t){return e===null?t===null:Ut.equals(e,t)}hashCode(){return this.leftchar.getValue()^this.rightchar.getValue()^this.finderpattern.getValue()}}class sr{constructor(e,t,n){this.pairs=e,this.rowNumber=t,this.wasReversed=n}getPairs(){return this.pairs}getRowNumber(){return this.rowNumber}isReversed(){return this.wasReversed}isEquivalent(e){return this.checkEqualitity(this,e)}toString(){return"{ "+this.pairs+" }"}equals(e,t){return e instanceof sr?this.checkEqualitity(e,t)&&e.wasReversed===t.wasReversed:!1}checkEqualitity(e,t){if(!e||!t)return;let n;return e.forEach((r,i)=>{t.forEach(s=>{r.getLeftChar().getValue()===s.getLeftChar().getValue()&&r.getRightChar().getValue()===s.getRightChar().getValue()&&r.getFinderPatter().getValue()===s.getFinderPatter().getValue()&&(n=!0)})}),n}}class v extends Qe{constructor(e){super(...arguments),this.pairs=new Array(v.MAX_PAIRS),this.rows=new Array,this.startEnd=[2],this.verbose=e===!0}decodeRow(e,t,n){this.pairs.length=0,this.startFromEven=!1;try{return v.constructResult(this.decodeRow2pairs(e,t))}catch(r){this.verbose&&console.log(r)}return this.pairs.length=0,this.startFromEven=!0,v.constructResult(this.decodeRow2pairs(e,t))}reset(){this.pairs.length=0,this.rows.length=0}decodeRow2pairs(e,t){let n=!1;for(;!n;)try{this.pairs.push(this.retrieveNextPair(t,this.pairs,e))}catch(i){if(i instanceof D){if(!this.pairs.length)throw new D;n=!0}}if(this.checkChecksum())return this.pairs;let r;if(this.rows.length?r=!0:r=!1,this.storeRow(e,!1),r){let i=this.checkRowsBoolean(!1);if(i!=null||(i=this.checkRowsBoolean(!0),i!=null))return i}throw new D}checkRowsBoolean(e){if(this.rows.length>25)return this.rows.length=0,null;this.pairs.length=0,e&&(this.rows=this.rows.reverse());let t=null;try{t=this.checkRows(new Array,0)}catch(n){this.verbose&&console.log(n)}return e&&(this.rows=this.rows.reverse()),t}checkRows(e,t){for(let n=t;n<this.rows.length;n++){let r=this.rows[n];this.pairs.length=0;for(let s of e)this.pairs.push(s.getPairs());if(this.pairs.push(r.getPairs()),!v.isValidSequence(this.pairs))continue;if(this.checkChecksum())return this.pairs;let i=new Array(e);i.push(r);try{return this.checkRows(i,n+1)}catch(s){this.verbose&&console.log(s)}}throw new D}static isValidSequence(e){for(let t of v.FINDER_PATTERN_SEQUENCES){if(e.length>t.length)continue;let n=!0;for(let r=0;r<e.length;r++)if(e[r].getFinderPattern().getValue()!=t[r]){n=!1;break}if(n)return!0}return!1}storeRow(e,t){let n=0,r=!1,i=!1;for(;n<this.rows.length;){let s=this.rows[n];if(s.getRowNumber()>e){i=s.isEquivalent(this.pairs);break}r=s.isEquivalent(this.pairs),n++}i||r||v.isPartialRow(this.pairs,this.rows)||(this.rows.push(n,new sr(this.pairs,e,t)),this.removePartialRows(this.pairs,this.rows))}removePartialRows(e,t){for(let n of t)if(n.getPairs().length!==e.length){for(let r of n.getPairs())for(let i of e)if(Ut.equals(r,i))break}}static isPartialRow(e,t){for(let n of t){let r=!0;for(let i of e){let s=!1;for(let o of n.getPairs())if(i.equals(o)){s=!0;break}if(!s){r=!1;break}}if(r)return!0}return!1}getRows(){return this.rows}static constructResult(e){let t=is.buildBitArray(e),r=Zr(t).parseInformation(),i=e[0].getFinderPattern().getResultPoints(),s=e[e.length-1].getFinderPattern().getResultPoints(),o=[i[0],i[1],s[0],s[1]];return new nt(r,null,null,o,j.RSS_EXPANDED,null)}checkChecksum(){let e=this.pairs.get(0),t=e.getLeftChar(),n=e.getRightChar();if(n==null)return!1;let r=n.getChecksumPortion(),i=2;for(let o=1;o<this.pairs.size();++o){let a=this.pairs.get(o);r+=a.getLeftChar().getChecksumPortion(),i++;let l=a.getRightChar();l!=null&&(r+=l.getChecksumPortion(),i++)}return r%=211,211*(i-4)+r==t.getValue()}static getNextSecondBar(e,t){let n;return e.get(t)?(n=e.getNextUnset(t),n=e.getNextSet(n)):(n=e.getNextSet(t),n=e.getNextUnset(n)),n}retrieveNextPair(e,t,n){let r=t.length%2==0;this.startFromEven&&(r=!r);let i,s=!0,o=-1;do this.findNextPair(e,t,o),i=this.parseFoundFinderPattern(e,n,r),i==null?o=v.getNextSecondBar(e,this.startEnd[0]):s=!1;while(s);let a=this.decodeDataCharacter(e,i,r,!0);if(!this.isEmptyPair(t)&&t[t.length-1].mustBeLast())throw new D;let l;try{l=this.decodeDataCharacter(e,i,r,!1)}catch(c){l=null,this.verbose&&console.log(c)}return new Ut(a,l,i,!0)}isEmptyPair(e){return e.length===0}findNextPair(e,t,n){let r=this.getDecodeFinderCounters();r[0]=0,r[1]=0,r[2]=0,r[3]=0;let i=e.getSize(),s;n>=0?s=n:this.isEmptyPair(t)?s=0:s=t[t.length-1].getFinderPattern().getStartEnd()[1];let o=t.length%2!=0;this.startFromEven&&(o=!o);let a=!1;for(;s<i&&(a=!e.get(s),!!a);)s++;let l=0,c=s;for(let f=s;f<i;f++)if(e.get(f)!=a)r[l]++;else{if(l==3){if(o&&v.reverseCounters(r),v.isFinderPattern(r)){this.startEnd[0]=c,this.startEnd[1]=f;return}o&&v.reverseCounters(r),c+=r[0]+r[1],r[0]=r[2],r[1]=r[3],r[2]=0,r[3]=0,l--}else l++;r[l]=1,a=!a}throw new D}static reverseCounters(e){let t=e.length;for(let n=0;n<t/2;++n){let r=e[n];e[n]=e[t-n-1],e[t-n-1]=r}}parseFoundFinderPattern(e,t,n){let r,i,s;if(n){let l=this.startEnd[0]-1;for(;l>=0&&!e.get(l);)l--;l++,r=this.startEnd[0]-l,i=l,s=this.startEnd[1]}else i=this.startEnd[0],s=e.getNextUnset(this.startEnd[1]+1),r=s-this.startEnd[1];let o=this.getDecodeFinderCounters();te.arraycopy(o,0,o,1,o.length-1),o[0]=r;let a;try{a=this.parseFinderValue(o,v.FINDER_PATTERNS)}catch(l){return null}return new kn(a,[i,s],i,s,t)}decodeDataCharacter(e,t,n,r){let i=this.getDataCharacterCounters();for(let be=0;be<i.length;be++)i[be]=0;if(r)v.recordPatternInReverse(e,t.getStartEnd()[0],i);else{v.recordPattern(e,t.getStartEnd()[1],i);for(let be=0,qe=i.length-1;be<qe;be++,qe--){let wt=i[be];i[be]=i[qe],i[qe]=wt}}let s=17,o=he.sum(new Int32Array(i))/s,a=(t.getStartEnd()[1]-t.getStartEnd()[0])/15;if(Math.abs(o-a)/a>.3)throw new D;let l=this.getOddCounts(),c=this.getEvenCounts(),f=this.getOddRoundingErrors(),w=this.getEvenRoundingErrors();for(let be=0;be<i.length;be++){let qe=1*i[be]/o,wt=qe+.5;if(wt<1){if(qe<.3)throw new D;wt=1}else if(wt>8){if(qe>8.7)throw new D;wt=8}let un=be/2;be&1?(c[un]=wt,w[un]=qe-wt):(l[un]=wt,f[un]=qe-wt)}this.adjustOddEvenCounts(s);let E=4*t.getValue()+(n?0:2)+(r?0:1)-1,I=0,b=0;for(let be=l.length-1;be>=0;be--){if(v.isNotA1left(t,n,r)){let qe=v.WEIGHTS[E][2*be];b+=l[be]*qe}I+=l[be]}let S=0;for(let be=c.length-1;be>=0;be--)if(v.isNotA1left(t,n,r)){let qe=v.WEIGHTS[E][2*be+1];S+=c[be]*qe}let O=b+S;if(I&1||I>13||I<4)throw new D;let L=(13-I)/2,k=v.SYMBOL_WIDEST[L],P=9-k,ae=Tt.getRSSvalue(l,k,!0),ne=Tt.getRSSvalue(c,P,!1),ft=v.EVEN_TOTAL_SUBSET[L],yt=v.GSUM[L],dt=ae*ft+ne+yt;return new rn(dt,O)}static isNotA1left(e,t,n){return!(e.getValue()==0&&t&&n)}adjustOddEvenCounts(e){let t=he.sum(new Int32Array(this.getOddCounts())),n=he.sum(new Int32Array(this.getEvenCounts())),r=!1,i=!1;t>13?i=!0:t<4&&(r=!0);let s=!1,o=!1;n>13?o=!0:n<4&&(s=!0);let a=t+n-e,l=(t&1)==1,c=(n&1)==0;if(a==1)if(l){if(c)throw new D;i=!0}else{if(!c)throw new D;o=!0}else if(a==-1)if(l){if(c)throw new D;r=!0}else{if(!c)throw new D;s=!0}else if(a==0){if(l){if(!c)throw new D;t<n?(r=!0,o=!0):(i=!0,s=!0)}else if(c)throw new D}else throw new D;if(r){if(i)throw new D;v.increment(this.getOddCounts(),this.getOddRoundingErrors())}if(i&&v.decrement(this.getOddCounts(),this.getOddRoundingErrors()),s){if(o)throw new D;v.increment(this.getEvenCounts(),this.getOddRoundingErrors())}o&&v.decrement(this.getEvenCounts(),this.getEvenRoundingErrors())}}v.SYMBOL_WIDEST=[7,5,4,3,1],v.EVEN_TOTAL_SUBSET=[4,20,52,104,204],v.GSUM=[0,348,1388,2948,3988],v.FINDER_PATTERNS=[Int32Array.from([1,8,4,1]),Int32Array.from([3,6,4,1]),Int32Array.from([3,4,6,1]),Int32Array.from([3,2,8,1]),Int32Array.from([2,6,5,1]),Int32Array.from([2,2,9,1])],v.WEIGHTS=[[1,3,9,27,81,32,96,77],[20,60,180,118,143,7,21,63],[189,145,13,39,117,140,209,205],[193,157,49,147,19,57,171,91],[62,186,136,197,169,85,44,132],[185,133,188,142,4,12,36,108],[113,128,173,97,80,29,87,50],[150,28,84,41,123,158,52,156],[46,138,203,187,139,206,196,166],[76,17,51,153,37,111,122,155],[43,129,176,106,107,110,119,146],[16,48,144,10,30,90,59,177],[109,116,137,200,178,112,125,164],[70,210,208,202,184,130,179,115],[134,191,151,31,93,68,204,190],[148,22,66,198,172,94,71,2],[6,18,54,162,64,192,154,40],[120,149,25,75,14,42,126,167],[79,26,78,23,69,207,199,175],[103,98,83,38,114,131,182,124],[161,61,183,127,170,88,53,159],[55,165,73,8,24,72,5,15],[45,135,194,160,58,174,100,89]],v.FINDER_PAT_A=0,v.FINDER_PAT_B=1,v.FINDER_PAT_C=2,v.FINDER_PAT_D=3,v.FINDER_PAT_E=4,v.FINDER_PAT_F=5,v.FINDER_PATTERN_SEQUENCES=[[v.FINDER_PAT_A,v.FINDER_PAT_A],[v.FINDER_PAT_A,v.FINDER_PAT_B,v.FINDER_PAT_B],[v.FINDER_PAT_A,v.FINDER_PAT_C,v.FINDER_PAT_B,v.FINDER_PAT_D],[v.FINDER_PAT_A,v.FINDER_PAT_E,v.FINDER_PAT_B,v.FINDER_PAT_D,v.FINDER_PAT_C],[v.FINDER_PAT_A,v.FINDER_PAT_E,v.FINDER_PAT_B,v.FINDER_PAT_D,v.FINDER_PAT_D,v.FINDER_PAT_F],[v.FINDER_PAT_A,v.FINDER_PAT_E,v.FINDER_PAT_B,v.FINDER_PAT_D,v.FINDER_PAT_E,v.FINDER_PAT_F,v.FINDER_PAT_F],[v.FINDER_PAT_A,v.FINDER_PAT_A,v.FINDER_PAT_B,v.FINDER_PAT_B,v.FINDER_PAT_C,v.FINDER_PAT_C,v.FINDER_PAT_D,v.FINDER_PAT_D],[v.FINDER_PAT_A,v.FINDER_PAT_A,v.FINDER_PAT_B,v.FINDER_PAT_B,v.FINDER_PAT_C,v.FINDER_PAT_C,v.FINDER_PAT_D,v.FINDER_PAT_E,v.FINDER_PAT_E],[v.FINDER_PAT_A,v.FINDER_PAT_A,v.FINDER_PAT_B,v.FINDER_PAT_B,v.FINDER_PAT_C,v.FINDER_PAT_C,v.FINDER_PAT_D,v.FINDER_PAT_E,v.FINDER_PAT_F,v.FINDER_PAT_F],[v.FINDER_PAT_A,v.FINDER_PAT_A,v.FINDER_PAT_B,v.FINDER_PAT_B,v.FINDER_PAT_C,v.FINDER_PAT_D,v.FINDER_PAT_D,v.FINDER_PAT_E,v.FINDER_PAT_E,v.FINDER_PAT_F,v.FINDER_PAT_F]],v.MAX_PAIRS=11;class as extends rn{constructor(e,t,n){super(e,t),this.count=0,this.finderPattern=n}getFinderPattern(){return this.finderPattern}getCount(){return this.count}incrementCount(){this.count++}}class ve extends Qe{constructor(){super(...arguments),this.possibleLeftPairs=[],this.possibleRightPairs=[]}decodeRow(e,t,n){const r=this.decodePair(t,!1,e,n);ve.addOrTally(this.possibleLeftPairs,r),t.reverse();let i=this.decodePair(t,!0,e,n);ve.addOrTally(this.possibleRightPairs,i),t.reverse();for(let s of this.possibleLeftPairs)if(s.getCount()>1){for(let o of this.possibleRightPairs)if(o.getCount()>1&&ve.checkChecksum(s,o))return ve.constructResult(s,o)}throw new D}static addOrTally(e,t){if(t==null)return;let n=!1;for(let r of e)if(r.getValue()===t.getValue()){r.incrementCount(),n=!0;break}n||e.push(t)}reset(){this.possibleLeftPairs.length=0,this.possibleRightPairs.length=0}static constructResult(e,t){let n=4537077*e.getValue()+t.getValue(),r=new String(n).toString(),i=new me;for(let l=13-r.length;l>0;l--)i.append("0");i.append(r);let s=0;for(let l=0;l<13;l++){let c=i.charAt(l).charCodeAt(0)-48;s+=l&1?c:3*c}s=10-s%10,s===10&&(s=0),i.append(s.toString());let o=e.getFinderPattern().getResultPoints(),a=t.getFinderPattern().getResultPoints();return new nt(i.toString(),null,0,[o[0],o[1],a[0],a[1]],j.RSS_14,new Date().getTime())}static checkChecksum(e,t){let n=(e.getChecksumPortion()+16*t.getChecksumPortion())%79,r=9*e.getFinderPattern().getValue()+t.getFinderPattern().getValue();return r>72&&r--,r>8&&r--,n===r}decodePair(e,t,n,r){try{let i=this.findFinderPattern(e,t),s=this.parseFoundFinderPattern(e,n,t,i),o=r==null?null:r.get(Ce.NEED_RESULT_POINT_CALLBACK);if(o!=null){let c=(i[0]+i[1])/2;t&&(c=e.getSize()-1-c),o.foundPossibleResultPoint(new z(c,n))}let a=this.decodeDataCharacter(e,s,!0),l=this.decodeDataCharacter(e,s,!1);return new as(1597*a.getValue()+l.getValue(),a.getChecksumPortion()+4*l.getChecksumPortion(),s)}catch(i){return null}}decodeDataCharacter(e,t,n){let r=this.getDataCharacterCounters();for(let S=0;S<r.length;S++)r[S]=0;if(n)ke.recordPatternInReverse(e,t.getStartEnd()[0],r);else{ke.recordPattern(e,t.getStartEnd()[1]+1,r);for(let S=0,O=r.length-1;S<O;S++,O--){let L=r[S];r[S]=r[O],r[O]=L}}let i=n?16:15,s=he.sum(new Int32Array(r))/i,o=this.getOddCounts(),a=this.getEvenCounts(),l=this.getOddRoundingErrors(),c=this.getEvenRoundingErrors();for(let S=0;S<r.length;S++){let O=r[S]/s,L=Math.floor(O+.5);L<1?L=1:L>8&&(L=8);let k=Math.floor(S/2);S&1?(a[k]=L,c[k]=O-L):(o[k]=L,l[k]=O-L)}this.adjustOddEvenCounts(n,i);let f=0,w=0;for(let S=o.length-1;S>=0;S--)w*=9,w+=o[S],f+=o[S];let E=0,I=0;for(let S=a.length-1;S>=0;S--)E*=9,E+=a[S],I+=a[S];let b=w+3*E;if(n){if(f&1||f>12||f<4)throw new D;let S=(12-f)/2,O=ve.OUTSIDE_ODD_WIDEST[S],L=9-O,k=Tt.getRSSvalue(o,O,!1),P=Tt.getRSSvalue(a,L,!0),ae=ve.OUTSIDE_EVEN_TOTAL_SUBSET[S],ne=ve.OUTSIDE_GSUM[S];return new rn(k*ae+P+ne,b)}else{if(I&1||I>10||I<4)throw new D;let S=(10-I)/2,O=ve.INSIDE_ODD_WIDEST[S],L=9-O,k=Tt.getRSSvalue(o,O,!0),P=Tt.getRSSvalue(a,L,!1),ae=ve.INSIDE_ODD_TOTAL_SUBSET[S],ne=ve.INSIDE_GSUM[S];return new rn(P*ae+k+ne,b)}}findFinderPattern(e,t){let n=this.getDecodeFinderCounters();n[0]=0,n[1]=0,n[2]=0,n[3]=0;let r=e.getSize(),i=!1,s=0;for(;s<r&&(i=!e.get(s),t!==i);)s++;let o=0,a=s;for(let l=s;l<r;l++)if(e.get(l)!==i)n[o]++;else{if(o===3){if(Qe.isFinderPattern(n))return[a,l];a+=n[0]+n[1],n[0]=n[2],n[1]=n[3],n[2]=0,n[3]=0,o--}else o++;n[o]=1,i=!i}throw new D}parseFoundFinderPattern(e,t,n,r){let i=e.get(r[0]),s=r[0]-1;for(;s>=0&&i!==e.get(s);)s--;s++;const o=r[0]-s,a=this.getDecodeFinderCounters(),l=new Int32Array(a.length);te.arraycopy(a,0,l,1,a.length-1),l[0]=o;const c=this.parseFinderValue(l,ve.FINDER_PATTERNS);let f=s,w=r[1];return n&&(f=e.getSize()-1-f,w=e.getSize()-1-w),new kn(c,[s,r[1]],f,w,t)}adjustOddEvenCounts(e,t){let n=he.sum(new Int32Array(this.getOddCounts())),r=he.sum(new Int32Array(this.getEvenCounts())),i=!1,s=!1,o=!1,a=!1;e?(n>12?s=!0:n<4&&(i=!0),r>12?a=!0:r<4&&(o=!0)):(n>11?s=!0:n<5&&(i=!0),r>10?a=!0:r<4&&(o=!0));let l=n+r-t,c=(n&1)===(e?1:0),f=(r&1)===1;if(l===1)if(c){if(f)throw new D;s=!0}else{if(!f)throw new D;a=!0}else if(l===-1)if(c){if(f)throw new D;i=!0}else{if(!f)throw new D;o=!0}else if(l===0){if(c){if(!f)throw new D;n<r?(i=!0,a=!0):(s=!0,o=!0)}else if(f)throw new D}else throw new D;if(i){if(s)throw new D;Qe.increment(this.getOddCounts(),this.getOddRoundingErrors())}if(s&&Qe.decrement(this.getOddCounts(),this.getOddRoundingErrors()),o){if(a)throw new D;Qe.increment(this.getEvenCounts(),this.getOddRoundingErrors())}a&&Qe.decrement(this.getEvenCounts(),this.getEvenRoundingErrors())}}ve.OUTSIDE_EVEN_TOTAL_SUBSET=[1,10,34,70,126],ve.INSIDE_ODD_TOTAL_SUBSET=[4,20,48,81],ve.OUTSIDE_GSUM=[0,161,961,2015,2715],ve.INSIDE_GSUM=[0,336,1036,1516],ve.OUTSIDE_ODD_WIDEST=[8,6,4,3,1],ve.INSIDE_ODD_WIDEST=[2,4,6,8],ve.FINDER_PATTERNS=[Int32Array.from([3,8,2,1]),Int32Array.from([3,5,5,1]),Int32Array.from([3,3,7,1]),Int32Array.from([3,1,9,1]),Int32Array.from([2,7,4,1]),Int32Array.from([2,5,6,1]),Int32Array.from([2,3,8,1]),Int32Array.from([1,5,7,1]),Int32Array.from([1,3,9,1])];class an extends ke{constructor(e,t){super(),this.readers=[],this.verbose=t===!0;const n=e?e.get(Ce.POSSIBLE_FORMATS):null,r=e&&e.get(Ce.ASSUME_CODE_39_CHECK_DIGIT)!==void 0;n?((n.includes(j.EAN_13)||n.includes(j.UPC_A)||n.includes(j.EAN_8)||n.includes(j.UPC_E))&&this.readers.push(new nr(e)),n.includes(j.CODE_39)&&this.readers.push(new Fe(r)),n.includes(j.CODE_128)&&this.readers.push(new V),n.includes(j.ITF)&&this.readers.push(new pe),n.includes(j.RSS_14)&&this.readers.push(new ve),n.includes(j.RSS_EXPANDED)&&this.readers.push(new v(this.verbose))):(this.readers.push(new nr(e)),this.readers.push(new Fe),this.readers.push(new nr(e)),this.readers.push(new V),this.readers.push(new pe),this.readers.push(new ve),this.readers.push(new v(this.verbose)))}decodeRow(e,t,n){for(let r=0;r<this.readers.length;r++)try{return this.readers[r].decodeRow(e,t,n)}catch(i){}throw new D}reset(){this.readers.forEach(e=>e.reset())}}class ls extends zt{constructor(e=500,t){super(new an(t),e,t)}}class ge{constructor(e,t,n){this.ecCodewords=e,this.ecBlocks=[t],n&&this.ecBlocks.push(n)}getECCodewords(){return this.ecCodewords}getECBlocks(){return this.ecBlocks}}class xe{constructor(e,t){this.count=e,this.dataCodewords=t}getCount(){return this.count}getDataCodewords(){return this.dataCodewords}}class ce{constructor(e,t,n,r,i,s){this.versionNumber=e,this.symbolSizeRows=t,this.symbolSizeColumns=n,this.dataRegionSizeRows=r,this.dataRegionSizeColumns=i,this.ecBlocks=s;let o=0;const a=s.getECCodewords(),l=s.getECBlocks();for(let c of l)o+=c.getCount()*(c.getDataCodewords()+a);this.totalCodewords=o}getVersionNumber(){return this.versionNumber}getSymbolSizeRows(){return this.symbolSizeRows}getSymbolSizeColumns(){return this.symbolSizeColumns}getDataRegionSizeRows(){return this.dataRegionSizeRows}getDataRegionSizeColumns(){return this.dataRegionSizeColumns}getTotalCodewords(){return this.totalCodewords}getECBlocks(){return this.ecBlocks}static getVersionForDimensions(e,t){if(e&1||t&1)throw new U;for(let n of ce.VERSIONS)if(n.symbolSizeRows===e&&n.symbolSizeColumns===t)return n;throw new U}toString(){return""+this.versionNumber}static buildVersions(){return[new ce(1,10,10,8,8,new ge(5,new xe(1,3))),new ce(2,12,12,10,10,new ge(7,new xe(1,5))),new ce(3,14,14,12,12,new ge(10,new xe(1,8))),new ce(4,16,16,14,14,new ge(12,new xe(1,12))),new ce(5,18,18,16,16,new ge(14,new xe(1,18))),new ce(6,20,20,18,18,new ge(18,new xe(1,22))),new ce(7,22,22,20,20,new ge(20,new xe(1,30))),new ce(8,24,24,22,22,new ge(24,new xe(1,36))),new ce(9,26,26,24,24,new ge(28,new xe(1,44))),new ce(10,32,32,14,14,new ge(36,new xe(1,62))),new ce(11,36,36,16,16,new ge(42,new xe(1,86))),new ce(12,40,40,18,18,new ge(48,new xe(1,114))),new ce(13,44,44,20,20,new ge(56,new xe(1,144))),new ce(14,48,48,22,22,new ge(68,new xe(1,174))),new ce(15,52,52,24,24,new ge(42,new xe(2,102))),new ce(16,64,64,14,14,new ge(56,new xe(2,140))),new ce(17,72,72,16,16,new ge(36,new xe(4,92))),new ce(18,80,80,18,18,new ge(48,new xe(4,114))),new ce(19,88,88,20,20,new ge(56,new xe(4,144))),new ce(20,96,96,22,22,new ge(68,new xe(4,174))),new ce(21,104,104,24,24,new ge(56,new xe(6,136))),new ce(22,120,120,18,18,new ge(68,new xe(6,175))),new ce(23,132,132,20,20,new ge(62,new xe(8,163))),new ce(24,144,144,22,22,new ge(62,new xe(8,156),new xe(2,155))),new ce(25,8,18,6,16,new ge(7,new xe(1,5))),new ce(26,8,32,6,14,new ge(11,new xe(1,10))),new ce(27,12,26,10,24,new ge(14,new xe(1,16))),new ce(28,12,36,10,16,new ge(18,new xe(1,22))),new ce(29,16,36,14,16,new ge(24,new xe(1,32))),new ce(30,16,48,14,22,new ge(28,new xe(1,49)))]}}ce.VERSIONS=ce.buildVersions();class or{constructor(e){const t=e.getHeight();if(t<8||t>144||t&1)throw new U;this.version=or.readVersion(e),this.mappingBitMatrix=this.extractDataRegion(e),this.readMappingMatrix=new Ge(this.mappingBitMatrix.getWidth(),this.mappingBitMatrix.getHeight())}getVersion(){return this.version}static readVersion(e){const t=e.getHeight(),n=e.getWidth();return ce.getVersionForDimensions(t,n)}readCodewords(){const e=new Int8Array(this.version.getTotalCodewords());let t=0,n=4,r=0;const i=this.mappingBitMatrix.getHeight(),s=this.mappingBitMatrix.getWidth();let o=!1,a=!1,l=!1,c=!1;do if(n===i&&r===0&&!o)e[t++]=this.readCorner1(i,s)&255,n-=2,r+=2,o=!0;else if(n===i-2&&r===0&&s&3&&!a)e[t++]=this.readCorner2(i,s)&255,n-=2,r+=2,a=!0;else if(n===i+4&&r===2&&!(s&7)&&!l)e[t++]=this.readCorner3(i,s)&255,n-=2,r+=2,l=!0;else if(n===i-2&&r===0&&(s&7)===4&&!c)e[t++]=this.readCorner4(i,s)&255,n-=2,r+=2,c=!0;else{do n<i&&r>=0&&!this.readMappingMatrix.get(r,n)&&(e[t++]=this.readUtah(n,r,i,s)&255),n-=2,r+=2;while(n>=0&&r<s);n+=1,r+=3;do n>=0&&r<s&&!this.readMappingMatrix.get(r,n)&&(e[t++]=this.readUtah(n,r,i,s)&255),n+=2,r-=2;while(n<i&&r>=0);n+=3,r+=1}while(n<i||r<s);if(t!==this.version.getTotalCodewords())throw new U;return e}readModule(e,t,n,r){return e<0&&(e+=n,t+=4-(n+4&7)),t<0&&(t+=r,e+=4-(r+4&7)),this.readMappingMatrix.set(t,e),this.mappingBitMatrix.get(t,e)}readUtah(e,t,n,r){let i=0;return this.readModule(e-2,t-2,n,r)&&(i|=1),i<<=1,this.readModule(e-2,t-1,n,r)&&(i|=1),i<<=1,this.readModule(e-1,t-2,n,r)&&(i|=1),i<<=1,this.readModule(e-1,t-1,n,r)&&(i|=1),i<<=1,this.readModule(e-1,t,n,r)&&(i|=1),i<<=1,this.readModule(e,t-2,n,r)&&(i|=1),i<<=1,this.readModule(e,t-1,n,r)&&(i|=1),i<<=1,this.readModule(e,t,n,r)&&(i|=1),i}readCorner1(e,t){let n=0;return this.readModule(e-1,0,e,t)&&(n|=1),n<<=1,this.readModule(e-1,1,e,t)&&(n|=1),n<<=1,this.readModule(e-1,2,e,t)&&(n|=1),n<<=1,this.readModule(0,t-2,e,t)&&(n|=1),n<<=1,this.readModule(0,t-1,e,t)&&(n|=1),n<<=1,this.readModule(1,t-1,e,t)&&(n|=1),n<<=1,this.readModule(2,t-1,e,t)&&(n|=1),n<<=1,this.readModule(3,t-1,e,t)&&(n|=1),n}readCorner2(e,t){let n=0;return this.readModule(e-3,0,e,t)&&(n|=1),n<<=1,this.readModule(e-2,0,e,t)&&(n|=1),n<<=1,this.readModule(e-1,0,e,t)&&(n|=1),n<<=1,this.readModule(0,t-4,e,t)&&(n|=1),n<<=1,this.readModule(0,t-3,e,t)&&(n|=1),n<<=1,this.readModule(0,t-2,e,t)&&(n|=1),n<<=1,this.readModule(0,t-1,e,t)&&(n|=1),n<<=1,this.readModule(1,t-1,e,t)&&(n|=1),n}readCorner3(e,t){let n=0;return this.readModule(e-1,0,e,t)&&(n|=1),n<<=1,this.readModule(e-1,t-1,e,t)&&(n|=1),n<<=1,this.readModule(0,t-3,e,t)&&(n|=1),n<<=1,this.readModule(0,t-2,e,t)&&(n|=1),n<<=1,this.readModule(0,t-1,e,t)&&(n|=1),n<<=1,this.readModule(1,t-3,e,t)&&(n|=1),n<<=1,this.readModule(1,t-2,e,t)&&(n|=1),n<<=1,this.readModule(1,t-1,e,t)&&(n|=1),n}readCorner4(e,t){let n=0;return this.readModule(e-3,0,e,t)&&(n|=1),n<<=1,this.readModule(e-2,0,e,t)&&(n|=1),n<<=1,this.readModule(e-1,0,e,t)&&(n|=1),n<<=1,this.readModule(0,t-2,e,t)&&(n|=1),n<<=1,this.readModule(0,t-1,e,t)&&(n|=1),n<<=1,this.readModule(1,t-1,e,t)&&(n|=1),n<<=1,this.readModule(2,t-1,e,t)&&(n|=1),n<<=1,this.readModule(3,t-1,e,t)&&(n|=1),n}extractDataRegion(e){const t=this.version.getSymbolSizeRows(),n=this.version.getSymbolSizeColumns();if(e.getHeight()!==t)throw new R("Dimension of bitMatrix must match the version size");const r=this.version.getDataRegionSizeRows(),i=this.version.getDataRegionSizeColumns(),s=t/r|0,o=n/i|0,a=s*r,l=o*i,c=new Ge(l,a);for(let f=0;f<s;++f){const w=f*r;for(let E=0;E<o;++E){const I=E*i;for(let b=0;b<r;++b){const S=f*(r+2)+1+b,O=w+b;for(let L=0;L<i;++L){const k=E*(i+2)+1+L;if(e.get(k,S)){const P=I+L;c.set(P,O)}}}}}return c}}class ar{constructor(e,t){this.numDataCodewords=e,this.codewords=t}static getDataBlocks(e,t){const n=t.getECBlocks();let r=0;const i=n.getECBlocks();for(let b of i)r+=b.getCount();const s=new Array(r);let o=0;for(let b of i)for(let S=0;S<b.getCount();S++){const O=b.getDataCodewords(),L=n.getECCodewords()+O;s[o++]=new ar(O,new Uint8Array(L))}const l=s[0].codewords.length-n.getECCodewords(),c=l-1;let f=0;for(let b=0;b<c;b++)for(let S=0;S<o;S++)s[S].codewords[b]=e[f++];const w=t.getVersionNumber()===24,E=w?8:o;for(let b=0;b<E;b++)s[b].codewords[l-1]=e[f++];const I=s[0].codewords.length;for(let b=l;b<I;b++)for(let S=0;S<o;S++){const O=w?(S+8)%o:S,L=w&&O>7?b-1:b;s[O].codewords[L]=e[f++]}if(f!==e.length)throw new R;return s}getNumDataCodewords(){return this.numDataCodewords}getCodewords(){return this.codewords}}class lr{constructor(e){this.bytes=e,this.byteOffset=0,this.bitOffset=0}getBitOffset(){return this.bitOffset}getByteOffset(){return this.byteOffset}readBits(e){if(e<1||e>32||e>this.available())throw new R(""+e);let t=0,n=this.bitOffset,r=this.byteOffset;const i=this.bytes;if(n>0){const s=8-n,o=e<s?e:s,a=s-o,l=255>>8-o<<a;t=(i[r]&l)>>a,e-=o,n+=o,n===8&&(n=0,r++)}if(e>0){for(;e>=8;)t=t<<8|i[r]&255,r++,e-=8;if(e>0){const s=8-e,o=255>>s<<s;t=t<<e|(i[r]&o)>>s,n+=e}}return this.bitOffset=n,this.byteOffset=r,t}available(){return 8*(this.bytes.length-this.byteOffset)-this.bitOffset}}var Ue;(function(u){u[u.PAD_ENCODE=0]="PAD_ENCODE",u[u.ASCII_ENCODE=1]="ASCII_ENCODE",u[u.C40_ENCODE=2]="C40_ENCODE",u[u.TEXT_ENCODE=3]="TEXT_ENCODE",u[u.ANSIX12_ENCODE=4]="ANSIX12_ENCODE",u[u.EDIFACT_ENCODE=5]="EDIFACT_ENCODE",u[u.BASE256_ENCODE=6]="BASE256_ENCODE"})(Ue||(Ue={}));class Vt{static decode(e){const t=new lr(e),n=new me,r=new me,i=new Array;let s=Ue.ASCII_ENCODE;do if(s===Ue.ASCII_ENCODE)s=this.decodeAsciiSegment(t,n,r);else{switch(s){case Ue.C40_ENCODE:this.decodeC40Segment(t,n);break;case Ue.TEXT_ENCODE:this.decodeTextSegment(t,n);break;case Ue.ANSIX12_ENCODE:this.decodeAnsiX12Segment(t,n);break;case Ue.EDIFACT_ENCODE:this.decodeEdifactSegment(t,n);break;case Ue.BASE256_ENCODE:this.decodeBase256Segment(t,n,i);break;default:throw new U}s=Ue.ASCII_ENCODE}while(s!==Ue.PAD_ENCODE&&t.available()>0);return r.length()>0&&n.append(r.toString()),new wn(e,n.toString(),i.length===0?null:i,null)}static decodeAsciiSegment(e,t,n){let r=!1;do{let i=e.readBits(8);if(i===0)throw new U;if(i<=128)return r&&(i+=128),t.append(String.fromCharCode(i-1)),Ue.ASCII_ENCODE;if(i===129)return Ue.PAD_ENCODE;if(i<=229){const s=i-130;s<10&&t.append("0"),t.append(""+s)}else switch(i){case 230:return Ue.C40_ENCODE;case 231:return Ue.BASE256_ENCODE;case 232:t.append("");break;case 233:case 234:break;case 235:r=!0;break;case 236:t.append("[)>05"),n.insert(0,"");break;case 237:t.append("[)>06"),n.insert(0,"");break;case 238:return Ue.ANSIX12_ENCODE;case 239:return Ue.TEXT_ENCODE;case 240:return Ue.EDIFACT_ENCODE;case 241:break;default:if(i!==254||e.available()!==0)throw new U;break}}while(e.available()>0);return Ue.ASCII_ENCODE}static decodeC40Segment(e,t){let n=!1;const r=[];let i=0;do{if(e.available()===8)return;const s=e.readBits(8);if(s===254)return;this.parseTwoBytes(s,e.readBits(8),r);for(let o=0;o<3;o++){const a=r[o];switch(i){case 0:if(a<3)i=a+1;else if(a<this.C40_BASIC_SET_CHARS.length){const l=this.C40_BASIC_SET_CHARS[a];n?(t.append(String.fromCharCode(l.charCodeAt(0)+128)),n=!1):t.append(l)}else throw new U;break;case 1:n?(t.append(String.fromCharCode(a+128)),n=!1):t.append(String.fromCharCode(a)),i=0;break;case 2:if(a<this.C40_SHIFT2_SET_CHARS.length){const l=this.C40_SHIFT2_SET_CHARS[a];n?(t.append(String.fromCharCode(l.charCodeAt(0)+128)),n=!1):t.append(l)}else switch(a){case 27:t.append("");break;case 30:n=!0;break;default:throw new U}i=0;break;case 3:n?(t.append(String.fromCharCode(a+224)),n=!1):t.append(String.fromCharCode(a+96)),i=0;break;default:throw new U}}}while(e.available()>0)}static decodeTextSegment(e,t){let n=!1,r=[],i=0;do{if(e.available()===8)return;const s=e.readBits(8);if(s===254)return;this.parseTwoBytes(s,e.readBits(8),r);for(let o=0;o<3;o++){const a=r[o];switch(i){case 0:if(a<3)i=a+1;else if(a<this.TEXT_BASIC_SET_CHARS.length){const l=this.TEXT_BASIC_SET_CHARS[a];n?(t.append(String.fromCharCode(l.charCodeAt(0)+128)),n=!1):t.append(l)}else throw new U;break;case 1:n?(t.append(String.fromCharCode(a+128)),n=!1):t.append(String.fromCharCode(a)),i=0;break;case 2:if(a<this.TEXT_SHIFT2_SET_CHARS.length){const l=this.TEXT_SHIFT2_SET_CHARS[a];n?(t.append(String.fromCharCode(l.charCodeAt(0)+128)),n=!1):t.append(l)}else switch(a){case 27:t.append("");break;case 30:n=!0;break;default:throw new U}i=0;break;case 3:if(a<this.TEXT_SHIFT3_SET_CHARS.length){const l=this.TEXT_SHIFT3_SET_CHARS[a];n?(t.append(String.fromCharCode(l.charCodeAt(0)+128)),n=!1):t.append(l),i=0}else throw new U;break;default:throw new U}}}while(e.available()>0)}static decodeAnsiX12Segment(e,t){const n=[];do{if(e.available()===8)return;const r=e.readBits(8);if(r===254)return;this.parseTwoBytes(r,e.readBits(8),n);for(let i=0;i<3;i++){const s=n[i];switch(s){case 0:t.append("\r");break;case 1:t.append("*");break;case 2:t.append(">");break;case 3:t.append(" ");break;default:if(s<14)t.append(String.fromCharCode(s+44));else if(s<40)t.append(String.fromCharCode(s+51));else throw new U;break}}}while(e.available()>0)}static parseTwoBytes(e,t,n){let r=(e<<8)+t-1,i=Math.floor(r/1600);n[0]=i,r-=i*1600,i=Math.floor(r/40),n[1]=i,n[2]=r-i*40}static decodeEdifactSegment(e,t){do{if(e.available()<=16)return;for(let n=0;n<4;n++){let r=e.readBits(6);if(r===31){const i=8-e.getBitOffset();i!==8&&e.readBits(i);return}r&32||(r|=64),t.append(String.fromCharCode(r))}}while(e.available()>0)}static decodeBase256Segment(e,t,n){let r=1+e.getByteOffset();const i=this.unrandomize255State(e.readBits(8),r++);let s;if(i===0?s=e.available()/8|0:i<250?s=i:s=250*(i-249)+this.unrandomize255State(e.readBits(8),r++),s<0)throw new U;const o=new Uint8Array(s);for(let a=0;a<s;a++){if(e.available()<8)throw new U;o[a]=this.unrandomize255State(e.readBits(8),r++)}n.push(o);try{t.append(at.decode(o,J.ISO88591))}catch(a){throw new St("Platform does not support required encoding: "+a.message)}}static unrandomize255State(e,t){const n=149*t%255+1,r=e-n;return r>=0?r:r+256}}Vt.C40_BASIC_SET_CHARS=["*","*","*"," ","0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"],Vt.C40_SHIFT2_SET_CHARS=["!",'"',"#","$","%","&","'","(",")","*","+",",","-",".","/",":",";","<","=",">","?","@","[","\\","]","^","_"],Vt.TEXT_BASIC_SET_CHARS=["*","*","*"," ","0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z"],Vt.TEXT_SHIFT2_SET_CHARS=Vt.C40_SHIFT2_SET_CHARS,Vt.TEXT_SHIFT3_SET_CHARS=["`","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","{","|","}","~",""];class cs{constructor(){this.rsDecoder=new Cn(fe.DATA_MATRIX_FIELD_256)}decode(e){const t=new or(e),n=t.getVersion(),r=t.readCodewords(),i=ar.getDataBlocks(r,n);let s=0;for(let l of i)s+=l.getNumDataCodewords();const o=new Uint8Array(s),a=i.length;for(let l=0;l<a;l++){const c=i[l],f=c.getCodewords(),w=c.getNumDataCodewords();this.correctErrors(f,w);for(let E=0;E<w;E++)o[E*a+l]=f[E]}return Vt.decode(o)}correctErrors(e,t){const n=new Int32Array(e);try{this.rsDecoder.decode(n,e.length-t)}catch(r){throw new ee}for(let r=0;r<t;r++)e[r]=n[r]}}class Le{constructor(e){this.image=e,this.rectangleDetector=new Bt(this.image)}detect(){const e=this.rectangleDetector.detect();let t=this.detectSolid1(e);if(t=this.detectSolid2(t),t[3]=this.correctTopRight(t),!t[3])throw new D;t=this.shiftToModuleCenter(t);const n=t[0],r=t[1],i=t[2],s=t[3];let o=this.transitionsBetween(n,s)+1,a=this.transitionsBetween(i,s)+1;(o&1)===1&&(o+=1),(a&1)===1&&(a+=1),4*o<7*a&&4*a<7*o&&(o=a=Math.max(o,a));let l=Le.sampleGrid(this.image,n,r,i,s,o,a);return new Pn(l,[n,r,i,s])}static shiftPoint(e,t,n){let r=(t.getX()-e.getX())/(n+1),i=(t.getY()-e.getY())/(n+1);return new z(e.getX()+r,e.getY()+i)}static moveAway(e,t,n){let r=e.getX(),i=e.getY();return r<t?r-=1:r+=1,i<n?i-=1:i+=1,new z(r,i)}detectSolid1(e){let t=e[0],n=e[1],r=e[3],i=e[2],s=this.transitionsBetween(t,n),o=this.transitionsBetween(n,r),a=this.transitionsBetween(r,i),l=this.transitionsBetween(i,t),c=s,f=[i,t,n,r];return c>o&&(c=o,f[0]=t,f[1]=n,f[2]=r,f[3]=i),c>a&&(c=a,f[0]=n,f[1]=r,f[2]=i,f[3]=t),c>l&&(f[0]=r,f[1]=i,f[2]=t,f[3]=n),f}detectSolid2(e){let t=e[0],n=e[1],r=e[2],i=e[3],s=this.transitionsBetween(t,i),o=Le.shiftPoint(n,r,(s+1)*4),a=Le.shiftPoint(r,n,(s+1)*4),l=this.transitionsBetween(o,t),c=this.transitionsBetween(a,i);return l<c?(e[0]=t,e[1]=n,e[2]=r,e[3]=i):(e[0]=n,e[1]=r,e[2]=i,e[3]=t),e}correctTopRight(e){let t=e[0],n=e[1],r=e[2],i=e[3],s=this.transitionsBetween(t,i),o=this.transitionsBetween(n,i),a=Le.shiftPoint(t,n,(o+1)*4),l=Le.shiftPoint(r,n,(s+1)*4);s=this.transitionsBetween(a,i),o=this.transitionsBetween(l,i);let c=new z(i.getX()+(r.getX()-n.getX())/(s+1),i.getY()+(r.getY()-n.getY())/(s+1)),f=new z(i.getX()+(t.getX()-n.getX())/(o+1),i.getY()+(t.getY()-n.getY())/(o+1));if(!this.isValid(c))return this.isValid(f)?f:null;if(!this.isValid(f))return c;let w=this.transitionsBetween(a,c)+this.transitionsBetween(l,c),E=this.transitionsBetween(a,f)+this.transitionsBetween(l,f);return w>E?c:f}shiftToModuleCenter(e){let t=e[0],n=e[1],r=e[2],i=e[3],s=this.transitionsBetween(t,i)+1,o=this.transitionsBetween(r,i)+1,a=Le.shiftPoint(t,n,o*4),l=Le.shiftPoint(r,n,s*4);s=this.transitionsBetween(a,i)+1,o=this.transitionsBetween(l,i)+1,(s&1)===1&&(s+=1),(o&1)===1&&(o+=1);let c=(t.getX()+n.getX()+r.getX()+i.getX())/4,f=(t.getY()+n.getY()+r.getY()+i.getY())/4;t=Le.moveAway(t,c,f),n=Le.moveAway(n,c,f),r=Le.moveAway(r,c,f),i=Le.moveAway(i,c,f);let w,E;return a=Le.shiftPoint(t,n,o*4),a=Le.shiftPoint(a,i,s*4),w=Le.shiftPoint(n,t,o*4),w=Le.shiftPoint(w,r,s*4),l=Le.shiftPoint(r,i,o*4),l=Le.shiftPoint(l,n,s*4),E=Le.shiftPoint(i,r,o*4),E=Le.shiftPoint(E,t,s*4),[a,w,l,E]}isValid(e){return e.getX()>=0&&e.getX()<this.image.getWidth()&&e.getY()>0&&e.getY()<this.image.getHeight()}static sampleGrid(e,t,n,r,i,s,o){return Ft.getInstance().sampleGrid(e,s,o,.5,.5,s-.5,.5,s-.5,o-.5,.5,o-.5,t.getX(),t.getY(),i.getX(),i.getY(),r.getX(),r.getY(),n.getX(),n.getY())}transitionsBetween(e,t){let n=Math.trunc(e.getX()),r=Math.trunc(e.getY()),i=Math.trunc(t.getX()),s=Math.trunc(t.getY()),o=Math.abs(s-r)>Math.abs(i-n);if(o){let b=n;n=r,r=b,b=i,i=s,s=b}let a=Math.abs(i-n),l=Math.abs(s-r),c=-a/2,f=r<s?1:-1,w=n<i?1:-1,E=0,I=this.image.get(o?r:n,o?n:r);for(let b=n,S=r;b!==i;b+=w){let O=this.image.get(o?S:b,o?b:S);if(O!==I&&(E++,I=O),c+=l,c>0){if(S===s)break;S+=f,c-=a}}return E}}class Gt{constructor(){this.decoder=new cs}decode(e,t=null){let n,r;if(t!=null&&t.has(Ce.PURE_BARCODE)){const l=Gt.extractPureBits(e.getBlackMatrix());n=this.decoder.decode(l),r=Gt.NO_POINTS}else{const l=new Le(e.getBlackMatrix()).detect();n=this.decoder.decode(l.getBits()),r=l.getPoints()}const i=n.getRawBytes(),s=new nt(n.getText(),i,8*i.length,r,j.DATA_MATRIX,te.currentTimeMillis()),o=n.getByteSegments();o!=null&&s.putMetadata(He.BYTE_SEGMENTS,o);const a=n.getECLevel();return a!=null&&s.putMetadata(He.ERROR_CORRECTION_LEVEL,a),s}reset(){}static extractPureBits(e){const t=e.getTopLeftOnBit(),n=e.getBottomRightOnBit();if(t==null||n==null)throw new D;const r=this.moduleSize(t,e);let i=t[1];const s=n[1];let o=t[0];const l=(n[0]-o+1)/r,c=(s-i+1)/r;if(l<=0||c<=0)throw new D;const f=r/2;i+=f,o+=f;const w=new Ge(l,c);for(let E=0;E<c;E++){const I=i+E*r;for(let b=0;b<l;b++)e.get(o+b*r,I)&&w.set(b,E)}return w}static moduleSize(e,t){const n=t.getWidth();let r=e[0];const i=e[1];for(;r<n&&t.get(r,i);)r++;if(r===n)throw new D;const s=r-e[0];if(s===0)throw new D;return s}}Gt.NO_POINTS=[];class hs extends zt{constructor(e=500){super(new Gt,e)}}var ln;(function(u){u[u.L=0]="L",u[u.M=1]="M",u[u.Q=2]="Q",u[u.H=3]="H"})(ln||(ln={}));class Se{constructor(e,t,n){this.value=e,this.stringValue=t,this.bits=n,Se.FOR_BITS.set(n,this),Se.FOR_VALUE.set(e,this)}getValue(){return this.value}getBits(){return this.bits}static fromString(e){switch(e){case"L":return Se.L;case"M":return Se.M;case"Q":return Se.Q;case"H":return Se.H;default:throw new _(e+"not available")}}toString(){return this.stringValue}equals(e){if(!(e instanceof Se))return!1;const t=e;return this.value===t.value}static forBits(e){if(e<0||e>=Se.FOR_BITS.size)throw new R;return Se.FOR_BITS.get(e)}}Se.FOR_BITS=new Map,Se.FOR_VALUE=new Map,Se.L=new Se(ln.L,"L",1),Se.M=new Se(ln.M,"M",0),Se.Q=new Se(ln.Q,"Q",3),Se.H=new Se(ln.H,"H",2);class Je{constructor(e){this.errorCorrectionLevel=Se.forBits(e>>3&3),this.dataMask=e&7}static numBitsDiffering(e,t){return K.bitCount(e^t)}static decodeFormatInformation(e,t){const n=Je.doDecodeFormatInformation(e,t);return n!==null?n:Je.doDecodeFormatInformation(e^Je.FORMAT_INFO_MASK_QR,t^Je.FORMAT_INFO_MASK_QR)}static doDecodeFormatInformation(e,t){let n=Number.MAX_SAFE_INTEGER,r=0;for(const i of Je.FORMAT_INFO_DECODE_LOOKUP){const s=i[0];if(s===e||s===t)return new Je(i[1]);let o=Je.numBitsDiffering(e,s);o<n&&(r=i[1],n=o),e!==t&&(o=Je.numBitsDiffering(t,s),o<n&&(r=i[1],n=o))}return n<=3?new Je(r):null}getErrorCorrectionLevel(){return this.errorCorrectionLevel}getDataMask(){return this.dataMask}hashCode(){return this.errorCorrectionLevel.getBits()<<3|this.dataMask}equals(e){if(!(e instanceof Je))return!1;const t=e;return this.errorCorrectionLevel===t.errorCorrectionLevel&&this.dataMask===t.dataMask}}Je.FORMAT_INFO_MASK_QR=21522,Je.FORMAT_INFO_DECODE_LOOKUP=[Int32Array.from([21522,0]),Int32Array.from([20773,1]),Int32Array.from([24188,2]),Int32Array.from([23371,3]),Int32Array.from([17913,4]),Int32Array.from([16590,5]),Int32Array.from([20375,6]),Int32Array.from([19104,7]),Int32Array.from([30660,8]),Int32Array.from([29427,9]),Int32Array.from([32170,10]),Int32Array.from([30877,11]),Int32Array.from([26159,12]),Int32Array.from([25368,13]),Int32Array.from([27713,14]),Int32Array.from([26998,15]),Int32Array.from([5769,16]),Int32Array.from([5054,17]),Int32Array.from([7399,18]),Int32Array.from([6608,19]),Int32Array.from([1890,20]),Int32Array.from([597,21]),Int32Array.from([3340,22]),Int32Array.from([2107,23]),Int32Array.from([13663,24]),Int32Array.from([12392,25]),Int32Array.from([16177,26]),Int32Array.from([14854,27]),Int32Array.from([9396,28]),Int32Array.from([8579,29]),Int32Array.from([11994,30]),Int32Array.from([11245,31])];class T{constructor(e,...t){this.ecCodewordsPerBlock=e,this.ecBlocks=t}getECCodewordsPerBlock(){return this.ecCodewordsPerBlock}getNumBlocks(){let e=0;const t=this.ecBlocks;for(const n of t)e+=n.getCount();return e}getTotalECCodewords(){return this.ecCodewordsPerBlock*this.getNumBlocks()}getECBlocks(){return this.ecBlocks}}class C{constructor(e,t){this.count=e,this.dataCodewords=t}getCount(){return this.count}getDataCodewords(){return this.dataCodewords}}class Y{constructor(e,t,...n){this.versionNumber=e,this.alignmentPatternCenters=t,this.ecBlocks=n;let r=0;const i=n[0].getECCodewordsPerBlock(),s=n[0].getECBlocks();for(const o of s)r+=o.getCount()*(o.getDataCodewords()+i);this.totalCodewords=r}getVersionNumber(){return this.versionNumber}getAlignmentPatternCenters(){return this.alignmentPatternCenters}getTotalCodewords(){return this.totalCodewords}getDimensionForVersion(){return 17+4*this.versionNumber}getECBlocksForLevel(e){return this.ecBlocks[e.getValue()]}static getProvisionalVersionForDimension(e){if(e%4!==1)throw new U;try{return this.getVersionForNumber((e-17)/4)}catch(t){throw new U}}static getVersionForNumber(e){if(e<1||e>40)throw new R;return Y.VERSIONS[e-1]}static decodeVersionInformation(e){let t=Number.MAX_SAFE_INTEGER,n=0;for(let r=0;r<Y.VERSION_DECODE_INFO.length;r++){const i=Y.VERSION_DECODE_INFO[r];if(i===e)return Y.getVersionForNumber(r+7);const s=Je.numBitsDiffering(e,i);s<t&&(n=r+7,t=s)}return t<=3?Y.getVersionForNumber(n):null}buildFunctionPattern(){const e=this.getDimensionForVersion(),t=new Ge(e);t.setRegion(0,0,9,9),t.setRegion(e-8,0,8,9),t.setRegion(0,e-8,9,8);const n=this.alignmentPatternCenters.length;for(let r=0;r<n;r++){const i=this.alignmentPatternCenters[r]-2;for(let s=0;s<n;s++)r===0&&(s===0||s===n-1)||r===n-1&&s===0||t.setRegion(this.alignmentPatternCenters[s]-2,i,5,5)}return t.setRegion(6,9,1,e-17),t.setRegion(9,6,e-17,1),this.versionNumber>6&&(t.setRegion(e-11,0,3,6),t.setRegion(0,e-11,6,3)),t}toString(){return""+this.versionNumber}}Y.VERSION_DECODE_INFO=Int32Array.from([31892,34236,39577,42195,48118,51042,55367,58893,63784,68472,70749,76311,79154,84390,87683,92361,96236,102084,102881,110507,110734,117786,119615,126325,127568,133589,136944,141498,145311,150283,152622,158308,161089,167017]),Y.VERSIONS=[new Y(1,new Int32Array(0),new T(7,new C(1,19)),new T(10,new C(1,16)),new T(13,new C(1,13)),new T(17,new C(1,9))),new Y(2,Int32Array.from([6,18]),new T(10,new C(1,34)),new T(16,new C(1,28)),new T(22,new C(1,22)),new T(28,new C(1,16))),new Y(3,Int32Array.from([6,22]),new T(15,new C(1,55)),new T(26,new C(1,44)),new T(18,new C(2,17)),new T(22,new C(2,13))),new Y(4,Int32Array.from([6,26]),new T(20,new C(1,80)),new T(18,new C(2,32)),new T(26,new C(2,24)),new T(16,new C(4,9))),new Y(5,Int32Array.from([6,30]),new T(26,new C(1,108)),new T(24,new C(2,43)),new T(18,new C(2,15),new C(2,16)),new T(22,new C(2,11),new C(2,12))),new Y(6,Int32Array.from([6,34]),new T(18,new C(2,68)),new T(16,new C(4,27)),new T(24,new C(4,19)),new T(28,new C(4,15))),new Y(7,Int32Array.from([6,22,38]),new T(20,new C(2,78)),new T(18,new C(4,31)),new T(18,new C(2,14),new C(4,15)),new T(26,new C(4,13),new C(1,14))),new Y(8,Int32Array.from([6,24,42]),new T(24,new C(2,97)),new T(22,new C(2,38),new C(2,39)),new T(22,new C(4,18),new C(2,19)),new T(26,new C(4,14),new C(2,15))),new Y(9,Int32Array.from([6,26,46]),new T(30,new C(2,116)),new T(22,new C(3,36),new C(2,37)),new T(20,new C(4,16),new C(4,17)),new T(24,new C(4,12),new C(4,13))),new Y(10,Int32Array.from([6,28,50]),new T(18,new C(2,68),new C(2,69)),new T(26,new C(4,43),new C(1,44)),new T(24,new C(6,19),new C(2,20)),new T(28,new C(6,15),new C(2,16))),new Y(11,Int32Array.from([6,30,54]),new T(20,new C(4,81)),new T(30,new C(1,50),new C(4,51)),new T(28,new C(4,22),new C(4,23)),new T(24,new C(3,12),new C(8,13))),new Y(12,Int32Array.from([6,32,58]),new T(24,new C(2,92),new C(2,93)),new T(22,new C(6,36),new C(2,37)),new T(26,new C(4,20),new C(6,21)),new T(28,new C(7,14),new C(4,15))),new Y(13,Int32Array.from([6,34,62]),new T(26,new C(4,107)),new T(22,new C(8,37),new C(1,38)),new T(24,new C(8,20),new C(4,21)),new T(22,new C(12,11),new C(4,12))),new Y(14,Int32Array.from([6,26,46,66]),new T(30,new C(3,115),new C(1,116)),new T(24,new C(4,40),new C(5,41)),new T(20,new C(11,16),new C(5,17)),new T(24,new C(11,12),new C(5,13))),new Y(15,Int32Array.from([6,26,48,70]),new T(22,new C(5,87),new C(1,88)),new T(24,new C(5,41),new C(5,42)),new T(30,new C(5,24),new C(7,25)),new T(24,new C(11,12),new C(7,13))),new Y(16,Int32Array.from([6,26,50,74]),new T(24,new C(5,98),new C(1,99)),new T(28,new C(7,45),new C(3,46)),new T(24,new C(15,19),new C(2,20)),new T(30,new C(3,15),new C(13,16))),new Y(17,Int32Array.from([6,30,54,78]),new T(28,new C(1,107),new C(5,108)),new T(28,new C(10,46),new C(1,47)),new T(28,new C(1,22),new C(15,23)),new T(28,new C(2,14),new C(17,15))),new Y(18,Int32Array.from([6,30,56,82]),new T(30,new C(5,120),new C(1,121)),new T(26,new C(9,43),new C(4,44)),new T(28,new C(17,22),new C(1,23)),new T(28,new C(2,14),new C(19,15))),new Y(19,Int32Array.from([6,30,58,86]),new T(28,new C(3,113),new C(4,114)),new T(26,new C(3,44),new C(11,45)),new T(26,new C(17,21),new C(4,22)),new T(26,new C(9,13),new C(16,14))),new Y(20,Int32Array.from([6,34,62,90]),new T(28,new C(3,107),new C(5,108)),new T(26,new C(3,41),new C(13,42)),new T(30,new C(15,24),new C(5,25)),new T(28,new C(15,15),new C(10,16))),new Y(21,Int32Array.from([6,28,50,72,94]),new T(28,new C(4,116),new C(4,117)),new T(26,new C(17,42)),new T(28,new C(17,22),new C(6,23)),new T(30,new C(19,16),new C(6,17))),new Y(22,Int32Array.from([6,26,50,74,98]),new T(28,new C(2,111),new C(7,112)),new T(28,new C(17,46)),new T(30,new C(7,24),new C(16,25)),new T(24,new C(34,13))),new Y(23,Int32Array.from([6,30,54,78,102]),new T(30,new C(4,121),new C(5,122)),new T(28,new C(4,47),new C(14,48)),new T(30,new C(11,24),new C(14,25)),new T(30,new C(16,15),new C(14,16))),new Y(24,Int32Array.from([6,28,54,80,106]),new T(30,new C(6,117),new C(4,118)),new T(28,new C(6,45),new C(14,46)),new T(30,new C(11,24),new C(16,25)),new T(30,new C(30,16),new C(2,17))),new Y(25,Int32Array.from([6,32,58,84,110]),new T(26,new C(8,106),new C(4,107)),new T(28,new C(8,47),new C(13,48)),new T(30,new C(7,24),new C(22,25)),new T(30,new C(22,15),new C(13,16))),new Y(26,Int32Array.from([6,30,58,86,114]),new T(28,new C(10,114),new C(2,115)),new T(28,new C(19,46),new C(4,47)),new T(28,new C(28,22),new C(6,23)),new T(30,new C(33,16),new C(4,17))),new Y(27,Int32Array.from([6,34,62,90,118]),new T(30,new C(8,122),new C(4,123)),new T(28,new C(22,45),new C(3,46)),new T(30,new C(8,23),new C(26,24)),new T(30,new C(12,15),new C(28,16))),new Y(28,Int32Array.from([6,26,50,74,98,122]),new T(30,new C(3,117),new C(10,118)),new T(28,new C(3,45),new C(23,46)),new T(30,new C(4,24),new C(31,25)),new T(30,new C(11,15),new C(31,16))),new Y(29,Int32Array.from([6,30,54,78,102,126]),new T(30,new C(7,116),new C(7,117)),new T(28,new C(21,45),new C(7,46)),new T(30,new C(1,23),new C(37,24)),new T(30,new C(19,15),new C(26,16))),new Y(30,Int32Array.from([6,26,52,78,104,130]),new T(30,new C(5,115),new C(10,116)),new T(28,new C(19,47),new C(10,48)),new T(30,new C(15,24),new C(25,25)),new T(30,new C(23,15),new C(25,16))),new Y(31,Int32Array.from([6,30,56,82,108,134]),new T(30,new C(13,115),new C(3,116)),new T(28,new C(2,46),new C(29,47)),new T(30,new C(42,24),new C(1,25)),new T(30,new C(23,15),new C(28,16))),new Y(32,Int32Array.from([6,34,60,86,112,138]),new T(30,new C(17,115)),new T(28,new C(10,46),new C(23,47)),new T(30,new C(10,24),new C(35,25)),new T(30,new C(19,15),new C(35,16))),new Y(33,Int32Array.from([6,30,58,86,114,142]),new T(30,new C(17,115),new C(1,116)),new T(28,new C(14,46),new C(21,47)),new T(30,new C(29,24),new C(19,25)),new T(30,new C(11,15),new C(46,16))),new Y(34,Int32Array.from([6,34,62,90,118,146]),new T(30,new C(13,115),new C(6,116)),new T(28,new C(14,46),new C(23,47)),new T(30,new C(44,24),new C(7,25)),new T(30,new C(59,16),new C(1,17))),new Y(35,Int32Array.from([6,30,54,78,102,126,150]),new T(30,new C(12,121),new C(7,122)),new T(28,new C(12,47),new C(26,48)),new T(30,new C(39,24),new C(14,25)),new T(30,new C(22,15),new C(41,16))),new Y(36,Int32Array.from([6,24,50,76,102,128,154]),new T(30,new C(6,121),new C(14,122)),new T(28,new C(6,47),new C(34,48)),new T(30,new C(46,24),new C(10,25)),new T(30,new C(2,15),new C(64,16))),new Y(37,Int32Array.from([6,28,54,80,106,132,158]),new T(30,new C(17,122),new C(4,123)),new T(28,new C(29,46),new C(14,47)),new T(30,new C(49,24),new C(10,25)),new T(30,new C(24,15),new C(46,16))),new Y(38,Int32Array.from([6,32,58,84,110,136,162]),new T(30,new C(4,122),new C(18,123)),new T(28,new C(13,46),new C(32,47)),new T(30,new C(48,24),new C(14,25)),new T(30,new C(42,15),new C(32,16))),new Y(39,Int32Array.from([6,26,54,82,110,138,166]),new T(30,new C(20,117),new C(4,118)),new T(28,new C(40,47),new C(7,48)),new T(30,new C(43,24),new C(22,25)),new T(30,new C(10,15),new C(67,16))),new Y(40,Int32Array.from([6,30,58,86,114,142,170]),new T(30,new C(19,118),new C(6,119)),new T(28,new C(18,47),new C(31,48)),new T(30,new C(34,24),new C(34,25)),new T(30,new C(20,15),new C(61,16)))];var Xe;(function(u){u[u.DATA_MASK_000=0]="DATA_MASK_000",u[u.DATA_MASK_001=1]="DATA_MASK_001",u[u.DATA_MASK_010=2]="DATA_MASK_010",u[u.DATA_MASK_011=3]="DATA_MASK_011",u[u.DATA_MASK_100=4]="DATA_MASK_100",u[u.DATA_MASK_101=5]="DATA_MASK_101",u[u.DATA_MASK_110=6]="DATA_MASK_110",u[u.DATA_MASK_111=7]="DATA_MASK_111"})(Xe||(Xe={}));class mt{constructor(e,t){this.value=e,this.isMasked=t}unmaskBitMatrix(e,t){for(let n=0;n<t;n++)for(let r=0;r<t;r++)this.isMasked(n,r)&&e.flip(r,n)}}mt.values=new Map([[Xe.DATA_MASK_000,new mt(Xe.DATA_MASK_000,(u,e)=>(u+e&1)===0)],[Xe.DATA_MASK_001,new mt(Xe.DATA_MASK_001,(u,e)=>(u&1)===0)],[Xe.DATA_MASK_010,new mt(Xe.DATA_MASK_010,(u,e)=>e%3===0)],[Xe.DATA_MASK_011,new mt(Xe.DATA_MASK_011,(u,e)=>(u+e)%3===0)],[Xe.DATA_MASK_100,new mt(Xe.DATA_MASK_100,(u,e)=>(Math.floor(u/2)+Math.floor(e/3)&1)===0)],[Xe.DATA_MASK_101,new mt(Xe.DATA_MASK_101,(u,e)=>u*e%6===0)],[Xe.DATA_MASK_110,new mt(Xe.DATA_MASK_110,(u,e)=>u*e%6<3)],[Xe.DATA_MASK_111,new mt(Xe.DATA_MASK_111,(u,e)=>(u+e+u*e%3&1)===0)]]);class us{constructor(e){const t=e.getHeight();if(t<21||(t&3)!==1)throw new U;this.bitMatrix=e}readFormatInformation(){if(this.parsedFormatInfo!==null&&this.parsedFormatInfo!==void 0)return this.parsedFormatInfo;let e=0;for(let i=0;i<6;i++)e=this.copyBit(i,8,e);e=this.copyBit(7,8,e),e=this.copyBit(8,8,e),e=this.copyBit(8,7,e);for(let i=5;i>=0;i--)e=this.copyBit(8,i,e);const t=this.bitMatrix.getHeight();let n=0;const r=t-7;for(let i=t-1;i>=r;i--)n=this.copyBit(8,i,n);for(let i=t-8;i<t;i++)n=this.copyBit(i,8,n);if(this.parsedFormatInfo=Je.decodeFormatInformation(e,n),this.parsedFormatInfo!==null)return this.parsedFormatInfo;throw new U}readVersion(){if(this.parsedVersion!==null&&this.parsedVersion!==void 0)return this.parsedVersion;const e=this.bitMatrix.getHeight(),t=Math.floor((e-17)/4);if(t<=6)return Y.getVersionForNumber(t);let n=0;const r=e-11;for(let s=5;s>=0;s--)for(let o=e-9;o>=r;o--)n=this.copyBit(o,s,n);let i=Y.decodeVersionInformation(n);if(i!==null&&i.getDimensionForVersion()===e)return this.parsedVersion=i,i;n=0;for(let s=5;s>=0;s--)for(let o=e-9;o>=r;o--)n=this.copyBit(s,o,n);if(i=Y.decodeVersionInformation(n),i!==null&&i.getDimensionForVersion()===e)return this.parsedVersion=i,i;throw new U}copyBit(e,t,n){return(this.isMirror?this.bitMatrix.get(t,e):this.bitMatrix.get(e,t))?n<<1|1:n<<1}readCodewords(){const e=this.readFormatInformation(),t=this.readVersion(),n=mt.values.get(e.getDataMask()),r=this.bitMatrix.getHeight();n.unmaskBitMatrix(this.bitMatrix,r);const i=t.buildFunctionPattern();let s=!0;const o=new Uint8Array(t.getTotalCodewords());let a=0,l=0,c=0;for(let f=r-1;f>0;f-=2){f===6&&f--;for(let w=0;w<r;w++){const E=s?r-1-w:w;for(let I=0;I<2;I++)i.get(f-I,E)||(c++,l<<=1,this.bitMatrix.get(f-I,E)&&(l|=1),c===8&&(o[a++]=l,c=0,l=0))}s=!s}if(a!==t.getTotalCodewords())throw new U;return o}remask(){if(this.parsedFormatInfo===null)return;const e=mt.values[this.parsedFormatInfo.getDataMask()],t=this.bitMatrix.getHeight();e.unmaskBitMatrix(this.bitMatrix,t)}setMirror(e){this.parsedVersion=null,this.parsedFormatInfo=null,this.isMirror=e}mirror(){const e=this.bitMatrix;for(let t=0,n=e.getWidth();t<n;t++)for(let r=t+1,i=e.getHeight();r<i;r++)e.get(t,r)!==e.get(r,t)&&(e.flip(r,t),e.flip(t,r))}}class cr{constructor(e,t){this.numDataCodewords=e,this.codewords=t}static getDataBlocks(e,t,n){if(e.length!==t.getTotalCodewords())throw new R;const r=t.getECBlocksForLevel(n);let i=0;const s=r.getECBlocks();for(const I of s)i+=I.getCount();const o=new Array(i);let a=0;for(const I of s)for(let b=0;b<I.getCount();b++){const S=I.getDataCodewords(),O=r.getECCodewordsPerBlock()+S;o[a++]=new cr(S,new Uint8Array(O))}const l=o[0].codewords.length;let c=o.length-1;for(;c>=0&&o[c].codewords.length!==l;)c--;c++;const f=l-r.getECCodewordsPerBlock();let w=0;for(let I=0;I<f;I++)for(let b=0;b<a;b++)o[b].codewords[I]=e[w++];for(let I=c;I<a;I++)o[I].codewords[f]=e[w++];const E=o[0].codewords.length;for(let I=f;I<E;I++)for(let b=0;b<a;b++){const S=b<c?I:I+1;o[b].codewords[S]=e[w++]}return o}getNumDataCodewords(){return this.numDataCodewords}getCodewords(){return this.codewords}}var Et;(function(u){u[u.TERMINATOR=0]="TERMINATOR",u[u.NUMERIC=1]="NUMERIC",u[u.ALPHANUMERIC=2]="ALPHANUMERIC",u[u.STRUCTURED_APPEND=3]="STRUCTURED_APPEND",u[u.BYTE=4]="BYTE",u[u.ECI=5]="ECI",u[u.KANJI=6]="KANJI",u[u.FNC1_FIRST_POSITION=7]="FNC1_FIRST_POSITION",u[u.FNC1_SECOND_POSITION=8]="FNC1_SECOND_POSITION",u[u.HANZI=9]="HANZI"})(Et||(Et={}));class Z{constructor(e,t,n,r){this.value=e,this.stringValue=t,this.characterCountBitsForVersions=n,this.bits=r,Z.FOR_BITS.set(r,this),Z.FOR_VALUE.set(e,this)}static forBits(e){const t=Z.FOR_BITS.get(e);if(t===void 0)throw new R;return t}getCharacterCountBits(e){const t=e.getVersionNumber();let n;return t<=9?n=0:t<=26?n=1:n=2,this.characterCountBitsForVersions[n]}getValue(){return this.value}getBits(){return this.bits}equals(e){if(!(e instanceof Z))return!1;const t=e;return this.value===t.value}toString(){return this.stringValue}}Z.FOR_BITS=new Map,Z.FOR_VALUE=new Map,Z.TERMINATOR=new Z(Et.TERMINATOR,"TERMINATOR",Int32Array.from([0,0,0]),0),Z.NUMERIC=new Z(Et.NUMERIC,"NUMERIC",Int32Array.from([10,12,14]),1),Z.ALPHANUMERIC=new Z(Et.ALPHANUMERIC,"ALPHANUMERIC",Int32Array.from([9,11,13]),2),Z.STRUCTURED_APPEND=new Z(Et.STRUCTURED_APPEND,"STRUCTURED_APPEND",Int32Array.from([0,0,0]),3),Z.BYTE=new Z(Et.BYTE,"BYTE",Int32Array.from([8,16,16]),4),Z.ECI=new Z(Et.ECI,"ECI",Int32Array.from([0,0,0]),7),Z.KANJI=new Z(Et.KANJI,"KANJI",Int32Array.from([8,10,12]),8),Z.FNC1_FIRST_POSITION=new Z(Et.FNC1_FIRST_POSITION,"FNC1_FIRST_POSITION",Int32Array.from([0,0,0]),5),Z.FNC1_SECOND_POSITION=new Z(Et.FNC1_SECOND_POSITION,"FNC1_SECOND_POSITION",Int32Array.from([0,0,0]),9),Z.HANZI=new Z(Et.HANZI,"HANZI",Int32Array.from([8,10,12]),13);class De{static decode(e,t,n,r){const i=new lr(e);let s=new me;const o=new Array;let a=-1,l=-1;try{let c=null,f=!1,w;do{if(i.available()<4)w=Z.TERMINATOR;else{const E=i.readBits(4);w=Z.forBits(E)}switch(w){case Z.TERMINATOR:break;case Z.FNC1_FIRST_POSITION:case Z.FNC1_SECOND_POSITION:f=!0;break;case Z.STRUCTURED_APPEND:if(i.available()<16)throw new U;a=i.readBits(8),l=i.readBits(8);break;case Z.ECI:const E=De.parseECIValue(i);if(c=F.getCharacterSetECIByValue(E),c===null)throw new U;break;case Z.HANZI:const I=i.readBits(4),b=i.readBits(w.getCharacterCountBits(t));I===De.GB2312_SUBSET&&De.decodeHanziSegment(i,s,b);break;default:const S=i.readBits(w.getCharacterCountBits(t));switch(w){case Z.NUMERIC:De.decodeNumericSegment(i,s,S);break;case Z.ALPHANUMERIC:De.decodeAlphanumericSegment(i,s,S,f);break;case Z.BYTE:De.decodeByteSegment(i,s,S,c,o,r);break;case Z.KANJI:De.decodeKanjiSegment(i,s,S);break;default:throw new U}break}}while(w!==Z.TERMINATOR)}catch(c){throw new U}return new wn(e,s.toString(),o.length===0?null:o,n===null?null:n.toString(),a,l)}static decodeHanziSegment(e,t,n){if(n*13>e.available())throw new U;const r=new Uint8Array(2*n);let i=0;for(;n>0;){const s=e.readBits(13);let o=s/96<<8&4294967295|s%96;o<959?o+=41377:o+=42657,r[i]=o>>8&255,r[i+1]=o&255,i+=2,n--}try{t.append(at.decode(r,J.GB2312))}catch(s){throw new U(s)}}static decodeKanjiSegment(e,t,n){if(n*13>e.available())throw new U;const r=new Uint8Array(2*n);let i=0;for(;n>0;){const s=e.readBits(13);let o=s/192<<8&4294967295|s%192;o<7936?o+=33088:o+=49472,r[i]=o>>8,r[i+1]=o,i+=2,n--}try{t.append(at.decode(r,J.SHIFT_JIS))}catch(s){throw new U(s)}}static decodeByteSegment(e,t,n,r,i,s){if(8*n>e.available())throw new U;const o=new Uint8Array(n);for(let l=0;l<n;l++)o[l]=e.readBits(8);let a;r===null?a=J.guessEncoding(o,s):a=r.getName();try{t.append(at.decode(o,a))}catch(l){throw new U(l)}i.push(o)}static toAlphaNumericChar(e){if(e>=De.ALPHANUMERIC_CHARS.length)throw new U;return De.ALPHANUMERIC_CHARS[e]}static decodeAlphanumericSegment(e,t,n,r){const i=t.length();for(;n>1;){if(e.available()<11)throw new U;const s=e.readBits(11);t.append(De.toAlphaNumericChar(Math.floor(s/45))),t.append(De.toAlphaNumericChar(s%45)),n-=2}if(n===1){if(e.available()<6)throw new U;t.append(De.toAlphaNumericChar(e.readBits(6)))}if(r)for(let s=i;s<t.length();s++)t.charAt(s)==="%"&&(s<t.length()-1&&t.charAt(s+1)==="%"?t.deleteCharAt(s+1):t.setCharAt(s,""))}static decodeNumericSegment(e,t,n){for(;n>=3;){if(e.available()<10)throw new U;const r=e.readBits(10);if(r>=1e3)throw new U;t.append(De.toAlphaNumericChar(Math.floor(r/100))),t.append(De.toAlphaNumericChar(Math.floor(r/10)%10)),t.append(De.toAlphaNumericChar(r%10)),n-=3}if(n===2){if(e.available()<7)throw new U;const r=e.readBits(7);if(r>=100)throw new U;t.append(De.toAlphaNumericChar(Math.floor(r/10))),t.append(De.toAlphaNumericChar(r%10))}else if(n===1){if(e.available()<4)throw new U;const r=e.readBits(4);if(r>=10)throw new U;t.append(De.toAlphaNumericChar(r))}}static parseECIValue(e){const t=e.readBits(8);if(!(t&128))return t&127;if((t&192)===128){const n=e.readBits(8);return(t&63)<<8&4294967295|n}if((t&224)===192){const n=e.readBits(16);return(t&31)<<16&4294967295|n}throw new U}}De.ALPHANUMERIC_CHARS="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ $%*+-./:",De.GB2312_SUBSET=1;class Kr{constructor(e){this.mirrored=e}isMirrored(){return this.mirrored}applyMirroredCorrection(e){if(!this.mirrored||e===null||e.length<3)return;const t=e[0];e[0]=e[2],e[2]=t}}class fs{constructor(){this.rsDecoder=new Cn(fe.QR_CODE_FIELD_256)}decodeBooleanArray(e,t){return this.decodeBitMatrix(Ge.parseFromBooleanArray(e),t)}decodeBitMatrix(e,t){const n=new us(e);let r=null;try{return this.decodeBitMatrixParser(n,t)}catch(i){r=i}try{n.remask(),n.setMirror(!0),n.readVersion(),n.readFormatInformation(),n.mirror();const i=this.decodeBitMatrixParser(n,t);return i.setOther(new Kr(!0)),i}catch(i){throw r!==null?r:i}}decodeBitMatrixParser(e,t){const n=e.readVersion(),r=e.readFormatInformation().getErrorCorrectionLevel(),i=e.readCodewords(),s=cr.getDataBlocks(i,n,r);let o=0;for(const c of s)o+=c.getNumDataCodewords();const a=new Uint8Array(o);let l=0;for(const c of s){const f=c.getCodewords(),w=c.getNumDataCodewords();this.correctErrors(f,w);for(let E=0;E<w;E++)a[l++]=f[E]}return De.decode(a,n,r,t)}correctErrors(e,t){const n=new Int32Array(e);try{this.rsDecoder.decode(n,e.length-t)}catch(r){throw new ee}for(let r=0;r<t;r++)e[r]=n[r]}}class hr extends z{constructor(e,t,n){super(e,t),this.estimatedModuleSize=n}aboutEquals(e,t,n){if(Math.abs(t-this.getY())<=e&&Math.abs(n-this.getX())<=e){const r=Math.abs(e-this.estimatedModuleSize);return r<=1||r<=this.estimatedModuleSize}return!1}combineEstimate(e,t,n){const r=(this.getX()+t)/2,i=(this.getY()+e)/2,s=(this.estimatedModuleSize+n)/2;return new hr(r,i,s)}}class Vn{constructor(e,t,n,r,i,s,o){this.image=e,this.startX=t,this.startY=n,this.width=r,this.height=i,this.moduleSize=s,this.resultPointCallback=o,this.possibleCenters=[],this.crossCheckStateCount=new Int32Array(3)}find(){const e=this.startX,t=this.height,n=this.width,r=e+n,i=this.startY+t/2,s=new Int32Array(3),o=this.image;for(let a=0;a<t;a++){const l=i+(a&1?-Math.floor((a+1)/2):Math.floor((a+1)/2));s[0]=0,s[1]=0,s[2]=0;let c=e;for(;c<r&&!o.get(c,l);)c++;let f=0;for(;c<r;){if(o.get(c,l))if(f===1)s[1]++;else if(f===2){if(this.foundPatternCross(s)){const w=this.handlePossibleCenter(s,l,c);if(w!==null)return w}s[0]=s[2],s[1]=1,s[2]=0,f=1}else s[++f]++;else f===1&&f++,s[f]++;c++}if(this.foundPatternCross(s)){const w=this.handlePossibleCenter(s,l,r);if(w!==null)return w}}if(this.possibleCenters.length!==0)return this.possibleCenters[0];throw new D}static centerFromEnd(e,t){return t-e[2]-e[1]/2}foundPatternCross(e){const t=this.moduleSize,n=t/2;for(let r=0;r<3;r++)if(Math.abs(t-e[r])>=n)return!1;return!0}crossCheckVertical(e,t,n,r){const i=this.image,s=i.getHeight(),o=this.crossCheckStateCount;o[0]=0,o[1]=0,o[2]=0;let a=e;for(;a>=0&&i.get(t,a)&&o[1]<=n;)o[1]++,a--;if(a<0||o[1]>n)return NaN;for(;a>=0&&!i.get(t,a)&&o[0]<=n;)o[0]++,a--;if(o[0]>n)return NaN;for(a=e+1;a<s&&i.get(t,a)&&o[1]<=n;)o[1]++,a++;if(a===s||o[1]>n)return NaN;for(;a<s&&!i.get(t,a)&&o[2]<=n;)o[2]++,a++;if(o[2]>n)return NaN;const l=o[0]+o[1]+o[2];return 5*Math.abs(l-r)>=2*r?NaN:this.foundPatternCross(o)?Vn.centerFromEnd(o,a):NaN}handlePossibleCenter(e,t,n){const r=e[0]+e[1]+e[2],i=Vn.centerFromEnd(e,n),s=this.crossCheckVertical(t,i,2*e[1],r);if(!isNaN(s)){const o=(e[0]+e[1]+e[2])/3;for(const l of this.possibleCenters)if(l.aboutEquals(o,s,i))return l.combineEstimate(s,i,o);const a=new hr(i,s,o);this.possibleCenters.push(a),this.resultPointCallback!==null&&this.resultPointCallback!==void 0&&this.resultPointCallback.foundPossibleResultPoint(a)}return null}}class ur extends z{constructor(e,t,n,r){super(e,t),this.estimatedModuleSize=n,this.count=r,r===void 0&&(this.count=1)}getEstimatedModuleSize(){return this.estimatedModuleSize}getCount(){return this.count}aboutEquals(e,t,n){if(Math.abs(t-this.getY())<=e&&Math.abs(n-this.getX())<=e){const r=Math.abs(e-this.estimatedModuleSize);return r<=1||r<=this.estimatedModuleSize}return!1}combineEstimate(e,t,n){const r=this.count+1,i=(this.count*this.getX()+t)/r,s=(this.count*this.getY()+e)/r,o=(this.count*this.estimatedModuleSize+n)/r;return new ur(i,s,o,r)}}class ds{constructor(e){this.bottomLeft=e[0],this.topLeft=e[1],this.topRight=e[2]}getBottomLeft(){return this.bottomLeft}getTopLeft(){return this.topLeft}getTopRight(){return this.topRight}}class ze{constructor(e,t){this.image=e,this.resultPointCallback=t,this.possibleCenters=[],this.crossCheckStateCount=new Int32Array(5),this.resultPointCallback=t}getImage(){return this.image}getPossibleCenters(){return this.possibleCenters}find(e){const t=e!=null&&e.get(Ce.TRY_HARDER)!==void 0,n=e!=null&&e.get(Ce.PURE_BARCODE)!==void 0,r=this.image,i=r.getHeight(),s=r.getWidth();let o=Math.floor(3*i/(4*ze.MAX_MODULES));(o<ze.MIN_SKIP||t)&&(o=ze.MIN_SKIP);let a=!1;const l=new Int32Array(5);for(let f=o-1;f<i&&!a;f+=o){l[0]=0,l[1]=0,l[2]=0,l[3]=0,l[4]=0;let w=0;for(let E=0;E<s;E++)if(r.get(E,f))(w&1)===1&&w++,l[w]++;else if(w&1)l[w]++;else if(w===4)if(ze.foundPatternCross(l)){if(this.handlePossibleCenter(l,f,E,n)===!0)if(o=2,this.hasSkipped===!0)a=this.haveMultiplyConfirmedCenters();else{const b=this.findRowSkip();b>l[2]&&(f+=b-l[2]-o,E=s-1)}else{l[0]=l[2],l[1]=l[3],l[2]=l[4],l[3]=1,l[4]=0,w=3;continue}w=0,l[0]=0,l[1]=0,l[2]=0,l[3]=0,l[4]=0}else l[0]=l[2],l[1]=l[3],l[2]=l[4],l[3]=1,l[4]=0,w=3;else l[++w]++;ze.foundPatternCross(l)&&this.handlePossibleCenter(l,f,s,n)===!0&&(o=l[0],this.hasSkipped&&(a=this.haveMultiplyConfirmedCenters()))}const c=this.selectBestPatterns();return z.orderBestPatterns(c),new ds(c)}static centerFromEnd(e,t){return t-e[4]-e[3]-e[2]/2}static foundPatternCross(e){let t=0;for(let i=0;i<5;i++){const s=e[i];if(s===0)return!1;t+=s}if(t<7)return!1;const n=t/7,r=n/2;return Math.abs(n-e[0])<r&&Math.abs(n-e[1])<r&&Math.abs(3*n-e[2])<3*r&&Math.abs(n-e[3])<r&&Math.abs(n-e[4])<r}getCrossCheckStateCount(){const e=this.crossCheckStateCount;return e[0]=0,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e}crossCheckDiagonal(e,t,n,r){const i=this.getCrossCheckStateCount();let s=0;const o=this.image;for(;e>=s&&t>=s&&o.get(t-s,e-s);)i[2]++,s++;if(e<s||t<s)return!1;for(;e>=s&&t>=s&&!o.get(t-s,e-s)&&i[1]<=n;)i[1]++,s++;if(e<s||t<s||i[1]>n)return!1;for(;e>=s&&t>=s&&o.get(t-s,e-s)&&i[0]<=n;)i[0]++,s++;if(i[0]>n)return!1;const a=o.getHeight(),l=o.getWidth();for(s=1;e+s<a&&t+s<l&&o.get(t+s,e+s);)i[2]++,s++;if(e+s>=a||t+s>=l)return!1;for(;e+s<a&&t+s<l&&!o.get(t+s,e+s)&&i[3]<n;)i[3]++,s++;if(e+s>=a||t+s>=l||i[3]>=n)return!1;for(;e+s<a&&t+s<l&&o.get(t+s,e+s)&&i[4]<n;)i[4]++,s++;if(i[4]>=n)return!1;const c=i[0]+i[1]+i[2]+i[3]+i[4];return Math.abs(c-r)<2*r&&ze.foundPatternCross(i)}crossCheckVertical(e,t,n,r){const i=this.image,s=i.getHeight(),o=this.getCrossCheckStateCount();let a=e;for(;a>=0&&i.get(t,a);)o[2]++,a--;if(a<0)return NaN;for(;a>=0&&!i.get(t,a)&&o[1]<=n;)o[1]++,a--;if(a<0||o[1]>n)return NaN;for(;a>=0&&i.get(t,a)&&o[0]<=n;)o[0]++,a--;if(o[0]>n)return NaN;for(a=e+1;a<s&&i.get(t,a);)o[2]++,a++;if(a===s)return NaN;for(;a<s&&!i.get(t,a)&&o[3]<n;)o[3]++,a++;if(a===s||o[3]>=n)return NaN;for(;a<s&&i.get(t,a)&&o[4]<n;)o[4]++,a++;if(o[4]>=n)return NaN;const l=o[0]+o[1]+o[2]+o[3]+o[4];return 5*Math.abs(l-r)>=2*r?NaN:ze.foundPatternCross(o)?ze.centerFromEnd(o,a):NaN}crossCheckHorizontal(e,t,n,r){const i=this.image,s=i.getWidth(),o=this.getCrossCheckStateCount();let a=e;for(;a>=0&&i.get(a,t);)o[2]++,a--;if(a<0)return NaN;for(;a>=0&&!i.get(a,t)&&o[1]<=n;)o[1]++,a--;if(a<0||o[1]>n)return NaN;for(;a>=0&&i.get(a,t)&&o[0]<=n;)o[0]++,a--;if(o[0]>n)return NaN;for(a=e+1;a<s&&i.get(a,t);)o[2]++,a++;if(a===s)return NaN;for(;a<s&&!i.get(a,t)&&o[3]<n;)o[3]++,a++;if(a===s||o[3]>=n)return NaN;for(;a<s&&i.get(a,t)&&o[4]<n;)o[4]++,a++;if(o[4]>=n)return NaN;const l=o[0]+o[1]+o[2]+o[3]+o[4];return 5*Math.abs(l-r)>=r?NaN:ze.foundPatternCross(o)?ze.centerFromEnd(o,a):NaN}handlePossibleCenter(e,t,n,r){const i=e[0]+e[1]+e[2]+e[3]+e[4];let s=ze.centerFromEnd(e,n),o=this.crossCheckVertical(t,Math.floor(s),e[2],i);if(!isNaN(o)&&(s=this.crossCheckHorizontal(Math.floor(s),Math.floor(o),e[2],i),!isNaN(s)&&(!r||this.crossCheckDiagonal(Math.floor(o),Math.floor(s),e[2],i)))){const a=i/7;let l=!1;const c=this.possibleCenters;for(let f=0,w=c.length;f<w;f++){const E=c[f];if(E.aboutEquals(a,o,s)){c[f]=E.combineEstimate(o,s,a),l=!0;break}}if(!l){const f=new ur(s,o,a);c.push(f),this.resultPointCallback!==null&&this.resultPointCallback!==void 0&&this.resultPointCallback.foundPossibleResultPoint(f)}return!0}return!1}findRowSkip(){if(this.possibleCenters.length<=1)return 0;let t=null;for(const n of this.possibleCenters)if(n.getCount()>=ze.CENTER_QUORUM)if(t==null)t=n;else return this.hasSkipped=!0,Math.floor((Math.abs(t.getX()-n.getX())-Math.abs(t.getY()-n.getY()))/2);return 0}haveMultiplyConfirmedCenters(){let e=0,t=0;const n=this.possibleCenters.length;for(const s of this.possibleCenters)s.getCount()>=ze.CENTER_QUORUM&&(e++,t+=s.getEstimatedModuleSize());if(e<3)return!1;const r=t/n;let i=0;for(const s of this.possibleCenters)i+=Math.abs(s.getEstimatedModuleSize()-r);return i<=.05*t}selectBestPatterns(){const e=this.possibleCenters.length;if(e<3)throw new D;const t=this.possibleCenters;let n;if(e>3){let r=0,i=0;for(const a of this.possibleCenters){const l=a.getEstimatedModuleSize();r+=l,i+=l*l}n=r/e;let s=Math.sqrt(i/e-n*n);t.sort((a,l)=>{const c=Math.abs(l.getEstimatedModuleSize()-n),f=Math.abs(a.getEstimatedModuleSize()-n);return c<f?-1:c>f?1:0});const o=Math.max(.2*n,s);for(let a=0;a<t.length&&t.length>3;a++){const l=t[a];Math.abs(l.getEstimatedModuleSize()-n)>o&&(t.splice(a,1),a--)}}if(t.length>3){let r=0;for(const i of t)r+=i.getEstimatedModuleSize();n=r/t.length,t.sort((i,s)=>{if(s.getCount()===i.getCount()){const o=Math.abs(s.getEstimatedModuleSize()-n),a=Math.abs(i.getEstimatedModuleSize()-n);return o<a?1:o>a?-1:0}else return s.getCount()-i.getCount()}),t.splice(3)}return[t[0],t[1],t[2]]}}ze.CENTER_QUORUM=2,ze.MIN_SKIP=3,ze.MAX_MODULES=57;class En{constructor(e){this.image=e}getImage(){return this.image}getResultPointCallback(){return this.resultPointCallback}detect(e){this.resultPointCallback=e==null?null:e.get(Ce.NEED_RESULT_POINT_CALLBACK);const n=new ze(this.image,this.resultPointCallback).find(e);return this.processFinderPatternInfo(n)}processFinderPatternInfo(e){const t=e.getTopLeft(),n=e.getTopRight(),r=e.getBottomLeft(),i=this.calculateModuleSize(t,n,r);if(i<1)throw new D("No pattern found in proccess finder.");const s=En.computeDimension(t,n,r,i),o=Y.getProvisionalVersionForDimension(s),a=o.getDimensionForVersion()-7;let l=null;if(o.getAlignmentPatternCenters().length>0){const E=n.getX()-t.getX()+r.getX(),I=n.getY()-t.getY()+r.getY(),b=1-3/a,S=Math.floor(t.getX()+b*(E-t.getX())),O=Math.floor(t.getY()+b*(I-t.getY()));for(let L=4;L<=16;L<<=1)try{l=this.findAlignmentInRegion(i,S,O,L);break}catch(k){if(!(k instanceof D))throw k}}const c=En.createTransform(t,n,r,l,s),f=En.sampleGrid(this.image,c,s);let w;return l===null?w=[r,t,n]:w=[r,t,n,l],new Pn(f,w)}static createTransform(e,t,n,r,i){const s=i-3.5;let o,a,l,c;return r!==null?(o=r.getX(),a=r.getY(),l=s-3,c=l):(o=t.getX()-e.getX()+n.getX(),a=t.getY()-e.getY()+n.getY(),l=s,c=s),It.quadrilateralToQuadrilateral(3.5,3.5,s,3.5,l,c,3.5,s,e.getX(),e.getY(),t.getX(),t.getY(),o,a,n.getX(),n.getY())}static sampleGrid(e,t,n){return Ft.getInstance().sampleGridWithTransform(e,n,n,t)}static computeDimension(e,t,n,r){const i=he.round(z.distance(e,t)/r),s=he.round(z.distance(e,n)/r);let o=Math.floor((i+s)/2)+7;switch(o&3){case 0:o++;break;case 2:o--;break;case 3:throw new D("Dimensions could be not found.")}return o}calculateModuleSize(e,t,n){return(this.calculateModuleSizeOneWay(e,t)+this.calculateModuleSizeOneWay(e,n))/2}calculateModuleSizeOneWay(e,t){const n=this.sizeOfBlackWhiteBlackRunBothWays(Math.floor(e.getX()),Math.floor(e.getY()),Math.floor(t.getX()),Math.floor(t.getY())),r=this.sizeOfBlackWhiteBlackRunBothWays(Math.floor(t.getX()),Math.floor(t.getY()),Math.floor(e.getX()),Math.floor(e.getY()));return isNaN(n)?r/7:isNaN(r)?n/7:(n+r)/14}sizeOfBlackWhiteBlackRunBothWays(e,t,n,r){let i=this.sizeOfBlackWhiteBlackRun(e,t,n,r),s=1,o=e-(n-e);o<0?(s=e/(e-o),o=0):o>=this.image.getWidth()&&(s=(this.image.getWidth()-1-e)/(o-e),o=this.image.getWidth()-1);let a=Math.floor(t-(r-t)*s);return s=1,a<0?(s=t/(t-a),a=0):a>=this.image.getHeight()&&(s=(this.image.getHeight()-1-t)/(a-t),a=this.image.getHeight()-1),o=Math.floor(e+(o-e)*s),i+=this.sizeOfBlackWhiteBlackRun(e,t,o,a),i-1}sizeOfBlackWhiteBlackRun(e,t,n,r){const i=Math.abs(r-t)>Math.abs(n-e);if(i){let E=e;e=t,t=E,E=n,n=r,r=E}const s=Math.abs(n-e),o=Math.abs(r-t);let a=-s/2;const l=e<n?1:-1,c=t<r?1:-1;let f=0;const w=n+l;for(let E=e,I=t;E!==w;E+=l){const b=i?I:E,S=i?E:I;if(f===1===this.image.get(b,S)){if(f===2)return he.distance(E,I,e,t);f++}if(a+=o,a>0){if(I===r)break;I+=c,a-=s}}return f===2?he.distance(n+l,r,e,t):NaN}findAlignmentInRegion(e,t,n,r){const i=Math.floor(r*e),s=Math.max(0,t-i),o=Math.min(this.image.getWidth()-1,t+i);if(o-s<e*3)throw new D("Alignment top exceeds estimated module size.");const a=Math.max(0,n-i),l=Math.min(this.image.getHeight()-1,n+i);if(l-a<e*3)throw new D("Alignment bottom exceeds estimated module size.");return new Vn(this.image,s,a,o-s,l-a,e,this.resultPointCallback).find()}}class Wt{constructor(){this.decoder=new fs}getDecoder(){return this.decoder}decode(e,t){let n,r;if(t!=null&&t.get(Ce.PURE_BARCODE)!==void 0){const a=Wt.extractPureBits(e.getBlackMatrix());n=this.decoder.decodeBitMatrix(a,t),r=Wt.NO_POINTS}else{const a=new En(e.getBlackMatrix()).detect(t);n=this.decoder.decodeBitMatrix(a.getBits(),t),r=a.getPoints()}n.getOther()instanceof Kr&&n.getOther().applyMirroredCorrection(r);const i=new nt(n.getText(),n.getRawBytes(),void 0,r,j.QR_CODE,void 0),s=n.getByteSegments();s!==null&&i.putMetadata(He.BYTE_SEGMENTS,s);const o=n.getECLevel();return o!==null&&i.putMetadata(He.ERROR_CORRECTION_LEVEL,o),n.hasStructuredAppend()&&(i.putMetadata(He.STRUCTURED_APPEND_SEQUENCE,n.getStructuredAppendSequenceNumber()),i.putMetadata(He.STRUCTURED_APPEND_PARITY,n.getStructuredAppendParity())),i}reset(){}static extractPureBits(e){const t=e.getTopLeftOnBit(),n=e.getBottomRightOnBit();if(t===null||n===null)throw new D;const r=this.moduleSize(t,e);let i=t[1],s=n[1],o=t[0],a=n[0];if(o>=a||i>=s)throw new D;if(s-i!==a-o&&(a=o+(s-i),a>=e.getWidth()))throw new D;const l=Math.round((a-o+1)/r),c=Math.round((s-i+1)/r);if(l<=0||c<=0)throw new D;if(c!==l)throw new D;const f=Math.floor(r/2);i+=f,o+=f;const w=o+Math.floor((l-1)*r)-a;if(w>0){if(w>f)throw new D;o-=w}const E=i+Math.floor((c-1)*r)-s;if(E>0){if(E>f)throw new D;i-=E}const I=new Ge(l,c);for(let b=0;b<c;b++){const S=i+Math.floor(b*r);for(let O=0;O<l;O++)e.get(o+Math.floor(O*r),S)&&I.set(O,b)}return I}static moduleSize(e,t){const n=t.getHeight(),r=t.getWidth();let i=e[0],s=e[1],o=!0,a=0;for(;i<r&&s<n;){if(o!==t.get(i,s)){if(++a===5)break;o=!o}i++,s++}if(i===r||s===n)throw new D;return(i-e[0])/7}}Wt.NO_POINTS=new Array;class Q{PDF417Common(){}static getBitCountSum(e){return he.sum(e)}static toIntArray(e){if(e==null||!e.length)return Q.EMPTY_INT_ARRAY;const t=new Int32Array(e.length);let n=0;for(const r of e)t[n++]=r;return t}static getCodeword(e){const t=Ae.binarySearch(Q.SYMBOL_TABLE,e&262143);return t<0?-1:(Q.CODEWORD_TABLE[t]-1)%Q.NUMBER_OF_CODEWORDS}}Q.NUMBER_OF_CODEWORDS=929,Q.MAX_CODEWORDS_IN_BARCODE=Q.NUMBER_OF_CODEWORDS-1,Q.MIN_ROWS_IN_BARCODE=3,Q.MAX_ROWS_IN_BARCODE=90,Q.MODULES_IN_CODEWORD=17,Q.MODULES_IN_STOP_PATTERN=18,Q.BARS_IN_MODULE=8,Q.EMPTY_INT_ARRAY=new Int32Array([]),Q.SYMBOL_TABLE=Int32Array.from([66142,66170,66206,66236,66290,66292,66350,66382,66396,66454,66470,66476,66594,66600,66614,66626,66628,66632,66640,66654,66662,66668,66682,66690,66718,66720,66748,66758,66776,66798,66802,66804,66820,66824,66832,66846,66848,66876,66880,66936,66950,66956,66968,66992,67006,67022,67036,67042,67044,67048,67062,67118,67150,67164,67214,67228,67256,67294,67322,67350,67366,67372,67398,67404,67416,67438,67474,67476,67490,67492,67496,67510,67618,67624,67650,67656,67664,67678,67686,67692,67706,67714,67716,67728,67742,67744,67772,67782,67788,67800,67822,67826,67828,67842,67848,67870,67872,67900,67904,67960,67974,67992,68016,68030,68046,68060,68066,68068,68072,68086,68104,68112,68126,68128,68156,68160,68216,68336,68358,68364,68376,68400,68414,68448,68476,68494,68508,68536,68546,68548,68552,68560,68574,68582,68588,68654,68686,68700,68706,68708,68712,68726,68750,68764,68792,68802,68804,68808,68816,68830,68838,68844,68858,68878,68892,68920,68976,68990,68994,68996,69e3,69008,69022,69024,69052,69062,69068,69080,69102,69106,69108,69142,69158,69164,69190,69208,69230,69254,69260,69272,69296,69310,69326,69340,69386,69394,69396,69410,69416,69430,69442,69444,69448,69456,69470,69478,69484,69554,69556,69666,69672,69698,69704,69712,69726,69754,69762,69764,69776,69790,69792,69820,69830,69836,69848,69870,69874,69876,69890,69918,69920,69948,69952,70008,70022,70040,70064,70078,70094,70108,70114,70116,70120,70134,70152,70174,70176,70264,70384,70412,70448,70462,70496,70524,70542,70556,70584,70594,70600,70608,70622,70630,70636,70664,70672,70686,70688,70716,70720,70776,70896,71136,71180,71192,71216,71230,71264,71292,71360,71416,71452,71480,71536,71550,71554,71556,71560,71568,71582,71584,71612,71622,71628,71640,71662,71726,71732,71758,71772,71778,71780,71784,71798,71822,71836,71864,71874,71880,71888,71902,71910,71916,71930,71950,71964,71992,72048,72062,72066,72068,72080,72094,72096,72124,72134,72140,72152,72174,72178,72180,72206,72220,72248,72304,72318,72416,72444,72456,72464,72478,72480,72508,72512,72568,72588,72600,72624,72638,72654,72668,72674,72676,72680,72694,72726,72742,72748,72774,72780,72792,72814,72838,72856,72880,72894,72910,72924,72930,72932,72936,72950,72966,72972,72984,73008,73022,73056,73084,73102,73116,73144,73156,73160,73168,73182,73190,73196,73210,73226,73234,73236,73250,73252,73256,73270,73282,73284,73296,73310,73318,73324,73346,73348,73352,73360,73374,73376,73404,73414,73420,73432,73454,73498,73518,73522,73524,73550,73564,73570,73572,73576,73590,73800,73822,73858,73860,73872,73886,73888,73916,73944,73970,73972,73992,74014,74016,74044,74048,74104,74118,74136,74160,74174,74210,74212,74216,74230,74244,74256,74270,74272,74360,74480,74502,74508,74544,74558,74592,74620,74638,74652,74680,74690,74696,74704,74726,74732,74782,74784,74812,74992,75232,75288,75326,75360,75388,75456,75512,75576,75632,75646,75650,75652,75664,75678,75680,75708,75718,75724,75736,75758,75808,75836,75840,75896,76016,76256,76736,76824,76848,76862,76896,76924,76992,77048,77296,77340,77368,77424,77438,77536,77564,77572,77576,77584,77600,77628,77632,77688,77702,77708,77720,77744,77758,77774,77788,77870,77902,77916,77922,77928,77966,77980,78008,78018,78024,78032,78046,78060,78074,78094,78136,78192,78206,78210,78212,78224,78238,78240,78268,78278,78284,78296,78322,78324,78350,78364,78448,78462,78560,78588,78600,78622,78624,78652,78656,78712,78726,78744,78768,78782,78798,78812,78818,78820,78824,78838,78862,78876,78904,78960,78974,79072,79100,79296,79352,79368,79376,79390,79392,79420,79424,79480,79600,79628,79640,79664,79678,79712,79740,79772,79800,79810,79812,79816,79824,79838,79846,79852,79894,79910,79916,79942,79948,79960,79982,79988,80006,80024,80048,80062,80078,80092,80098,80100,80104,80134,80140,80176,80190,80224,80252,80270,80284,80312,80328,80336,80350,80358,80364,80378,80390,80396,80408,80432,80446,80480,80508,80576,80632,80654,80668,80696,80752,80766,80776,80784,80798,80800,80828,80844,80856,80878,80882,80884,80914,80916,80930,80932,80936,80950,80962,80968,80976,80990,80998,81004,81026,81028,81040,81054,81056,81084,81094,81100,81112,81134,81154,81156,81160,81168,81182,81184,81212,81216,81272,81286,81292,81304,81328,81342,81358,81372,81380,81384,81398,81434,81454,81458,81460,81486,81500,81506,81508,81512,81526,81550,81564,81592,81602,81604,81608,81616,81630,81638,81644,81702,81708,81722,81734,81740,81752,81774,81778,81780,82050,82078,82080,82108,82180,82184,82192,82206,82208,82236,82240,82296,82316,82328,82352,82366,82402,82404,82408,82440,82448,82462,82464,82492,82496,82552,82672,82694,82700,82712,82736,82750,82784,82812,82830,82882,82884,82888,82896,82918,82924,82952,82960,82974,82976,83004,83008,83064,83184,83424,83468,83480,83504,83518,83552,83580,83648,83704,83740,83768,83824,83838,83842,83844,83848,83856,83872,83900,83910,83916,83928,83950,83984,84e3,84028,84032,84088,84208,84448,84928,85040,85054,85088,85116,85184,85240,85488,85560,85616,85630,85728,85756,85764,85768,85776,85790,85792,85820,85824,85880,85894,85900,85912,85936,85966,85980,86048,86080,86136,86256,86496,86976,88160,88188,88256,88312,88560,89056,89200,89214,89312,89340,89536,89592,89608,89616,89632,89664,89720,89840,89868,89880,89904,89952,89980,89998,90012,90040,90190,90204,90254,90268,90296,90306,90308,90312,90334,90382,90396,90424,90480,90494,90500,90504,90512,90526,90528,90556,90566,90572,90584,90610,90612,90638,90652,90680,90736,90750,90848,90876,90884,90888,90896,90910,90912,90940,90944,91e3,91014,91020,91032,91056,91070,91086,91100,91106,91108,91112,91126,91150,91164,91192,91248,91262,91360,91388,91584,91640,91664,91678,91680,91708,91712,91768,91888,91928,91952,91966,92e3,92028,92046,92060,92088,92098,92100,92104,92112,92126,92134,92140,92188,92216,92272,92384,92412,92608,92664,93168,93200,93214,93216,93244,93248,93304,93424,93664,93720,93744,93758,93792,93820,93888,93944,93980,94008,94064,94078,94084,94088,94096,94110,94112,94140,94150,94156,94168,94246,94252,94278,94284,94296,94318,94342,94348,94360,94384,94398,94414,94428,94440,94470,94476,94488,94512,94526,94560,94588,94606,94620,94648,94658,94660,94664,94672,94686,94694,94700,94714,94726,94732,94744,94768,94782,94816,94844,94912,94968,94990,95004,95032,95088,95102,95112,95120,95134,95136,95164,95180,95192,95214,95218,95220,95244,95256,95280,95294,95328,95356,95424,95480,95728,95758,95772,95800,95856,95870,95968,95996,96008,96016,96030,96032,96060,96064,96120,96152,96176,96190,96220,96226,96228,96232,96290,96292,96296,96310,96322,96324,96328,96336,96350,96358,96364,96386,96388,96392,96400,96414,96416,96444,96454,96460,96472,96494,96498,96500,96514,96516,96520,96528,96542,96544,96572,96576,96632,96646,96652,96664,96688,96702,96718,96732,96738,96740,96744,96758,96772,96776,96784,96798,96800,96828,96832,96888,97008,97030,97036,97048,97072,97086,97120,97148,97166,97180,97208,97220,97224,97232,97246,97254,97260,97326,97330,97332,97358,97372,97378,97380,97384,97398,97422,97436,97464,97474,97476,97480,97488,97502,97510,97516,97550,97564,97592,97648,97666,97668,97672,97680,97694,97696,97724,97734,97740,97752,97774,97830,97836,97850,97862,97868,97880,97902,97906,97908,97926,97932,97944,97968,97998,98012,98018,98020,98024,98038,98618,98674,98676,98838,98854,98874,98892,98904,98926,98930,98932,98968,99006,99042,99044,99048,99062,99166,99194,99246,99286,99350,99366,99372,99386,99398,99416,99438,99442,99444,99462,99504,99518,99534,99548,99554,99556,99560,99574,99590,99596,99608,99632,99646,99680,99708,99726,99740,99768,99778,99780,99784,99792,99806,99814,99820,99834,99858,99860,99874,99880,99894,99906,99920,99934,99962,99970,99972,99976,99984,99998,1e5,100028,100038,100044,100056,100078,100082,100084,100142,100174,100188,100246,100262,100268,100306,100308,100390,100396,100410,100422,100428,100440,100462,100466,100468,100486,100504,100528,100542,100558,100572,100578,100580,100584,100598,100620,100656,100670,100704,100732,100750,100792,100802,100808,100816,100830,100838,100844,100858,100888,100912,100926,100960,100988,101056,101112,101148,101176,101232,101246,101250,101252,101256,101264,101278,101280,101308,101318,101324,101336,101358,101362,101364,101410,101412,101416,101430,101442,101448,101456,101470,101478,101498,101506,101508,101520,101534,101536,101564,101580,101618,101620,101636,101640,101648,101662,101664,101692,101696,101752,101766,101784,101838,101858,101860,101864,101934,101938,101940,101966,101980,101986,101988,101992,102030,102044,102072,102082,102084,102088,102096,102138,102166,102182,102188,102214,102220,102232,102254,102282,102290,102292,102306,102308,102312,102326,102444,102458,102470,102476,102488,102514,102516,102534,102552,102576,102590,102606,102620,102626,102632,102646,102662,102668,102704,102718,102752,102780,102798,102812,102840,102850,102856,102864,102878,102886,102892,102906,102936,102974,103008,103036,103104,103160,103224,103280,103294,103298,103300,103312,103326,103328,103356,103366,103372,103384,103406,103410,103412,103472,103486,103520,103548,103616,103672,103920,103992,104048,104062,104160,104188,104194,104196,104200,104208,104224,104252,104256,104312,104326,104332,104344,104368,104382,104398,104412,104418,104420,104424,104482,104484,104514,104520,104528,104542,104550,104570,104578,104580,104592,104606,104608,104636,104652,104690,104692,104706,104712,104734,104736,104764,104768,104824,104838,104856,104910,104930,104932,104936,104968,104976,104990,104992,105020,105024,105080,105200,105240,105278,105312,105372,105410,105412,105416,105424,105446,105518,105524,105550,105564,105570,105572,105576,105614,105628,105656,105666,105672,105680,105702,105722,105742,105756,105784,105840,105854,105858,105860,105864,105872,105888,105932,105970,105972,106006,106022,106028,106054,106060,106072,106100,106118,106124,106136,106160,106174,106190,106210,106212,106216,106250,106258,106260,106274,106276,106280,106306,106308,106312,106320,106334,106348,106394,106414,106418,106420,106566,106572,106610,106612,106630,106636,106648,106672,106686,106722,106724,106728,106742,106758,106764,106776,106800,106814,106848,106876,106894,106908,106936,106946,106948,106952,106960,106974,106982,106988,107032,107056,107070,107104,107132,107200,107256,107292,107320,107376,107390,107394,107396,107400,107408,107422,107424,107452,107462,107468,107480,107502,107506,107508,107544,107568,107582,107616,107644,107712,107768,108016,108060,108088,108144,108158,108256,108284,108290,108292,108296,108304,108318,108320,108348,108352,108408,108422,108428,108440,108464,108478,108494,108508,108514,108516,108520,108592,108640,108668,108736,108792,109040,109536,109680,109694,109792,109820,110016,110072,110084,110088,110096,110112,110140,110144,110200,110320,110342,110348,110360,110384,110398,110432,110460,110478,110492,110520,110532,110536,110544,110558,110658,110686,110714,110722,110724,110728,110736,110750,110752,110780,110796,110834,110836,110850,110852,110856,110864,110878,110880,110908,110912,110968,110982,111e3,111054,111074,111076,111080,111108,111112,111120,111134,111136,111164,111168,111224,111344,111372,111422,111456,111516,111554,111556,111560,111568,111590,111632,111646,111648,111676,111680,111736,111856,112096,112152,112224,112252,112320,112440,112514,112516,112520,112528,112542,112544,112588,112686,112718,112732,112782,112796,112824,112834,112836,112840,112848,112870,112890,112910,112924,112952,113008,113022,113026,113028,113032,113040,113054,113056,113100,113138,113140,113166,113180,113208,113264,113278,113376,113404,113416,113424,113440,113468,113472,113560,113614,113634,113636,113640,113686,113702,113708,113734,113740,113752,113778,113780,113798,113804,113816,113840,113854,113870,113890,113892,113896,113926,113932,113944,113968,113982,114016,114044,114076,114114,114116,114120,114128,114150,114170,114194,114196,114210,114212,114216,114242,114244,114248,114256,114270,114278,114306,114308,114312,114320,114334,114336,114364,114380,114420,114458,114478,114482,114484,114510,114524,114530,114532,114536,114842,114866,114868,114970,114994,114996,115042,115044,115048,115062,115130,115226,115250,115252,115278,115292,115298,115300,115304,115318,115342,115394,115396,115400,115408,115422,115430,115436,115450,115478,115494,115514,115526,115532,115570,115572,115738,115758,115762,115764,115790,115804,115810,115812,115816,115830,115854,115868,115896,115906,115912,115920,115934,115942,115948,115962,115996,116024,116080,116094,116098,116100,116104,116112,116126,116128,116156,116166,116172,116184,116206,116210,116212,116246,116262,116268,116282,116294,116300,116312,116334,116338,116340,116358,116364,116376,116400,116414,116430,116444,116450,116452,116456,116498,116500,116514,116520,116534,116546,116548,116552,116560,116574,116582,116588,116602,116654,116694,116714,116762,116782,116786,116788,116814,116828,116834,116836,116840,116854,116878,116892,116920,116930,116936,116944,116958,116966,116972,116986,117006,117048,117104,117118,117122,117124,117136,117150,117152,117180,117190,117196,117208,117230,117234,117236,117304,117360,117374,117472,117500,117506,117508,117512,117520,117536,117564,117568,117624,117638,117644,117656,117680,117694,117710,117724,117730,117732,117736,117750,117782,117798,117804,117818,117830,117848,117874,117876,117894,117936,117950,117966,117986,117988,117992,118022,118028,118040,118064,118078,118112,118140,118172,118210,118212,118216,118224,118238,118246,118266,118306,118312,118338,118352,118366,118374,118394,118402,118404,118408,118416,118430,118432,118460,118476,118514,118516,118574,118578,118580,118606,118620,118626,118628,118632,118678,118694,118700,118730,118738,118740,118830,118834,118836,118862,118876,118882,118884,118888,118902,118926,118940,118968,118978,118980,118984,118992,119006,119014,119020,119034,119068,119096,119152,119166,119170,119172,119176,119184,119198,119200,119228,119238,119244,119256,119278,119282,119284,119324,119352,119408,119422,119520,119548,119554,119556,119560,119568,119582,119584,119612,119616,119672,119686,119692,119704,119728,119742,119758,119772,119778,119780,119784,119798,119920,119934,120032,120060,120256,120312,120324,120328,120336,120352,120384,120440,120560,120582,120588,120600,120624,120638,120672,120700,120718,120732,120760,120770,120772,120776,120784,120798,120806,120812,120870,120876,120890,120902,120908,120920,120946,120948,120966,120972,120984,121008,121022,121038,121058,121060,121064,121078,121100,121112,121136,121150,121184,121212,121244,121282,121284,121288,121296,121318,121338,121356,121368,121392,121406,121440,121468,121536,121592,121656,121730,121732,121736,121744,121758,121760,121804,121842,121844,121890,121922,121924,121928,121936,121950,121958,121978,121986,121988,121992,122e3,122014,122016,122044,122060,122098,122100,122116,122120,122128,122142,122144,122172,122176,122232,122246,122264,122318,122338,122340,122344,122414,122418,122420,122446,122460,122466,122468,122472,122510,122524,122552,122562,122564,122568,122576,122598,122618,122646,122662,122668,122694,122700,122712,122738,122740,122762,122770,122772,122786,122788,122792,123018,123026,123028,123042,123044,123048,123062,123098,123146,123154,123156,123170,123172,123176,123190,123202,123204,123208,123216,123238,123244,123258,123290,123314,123316,123402,123410,123412,123426,123428,123432,123446,123458,123464,123472,123486,123494,123500,123514,123522,123524,123528,123536,123552,123580,123590,123596,123608,123630,123634,123636,123674,123698,123700,123740,123746,123748,123752,123834,123914,123922,123924,123938,123944,123958,123970,123976,123984,123998,124006,124012,124026,124034,124036,124048,124062,124064,124092,124102,124108,124120,124142,124146,124148,124162,124164,124168,124176,124190,124192,124220,124224,124280,124294,124300,124312,124336,124350,124366,124380,124386,124388,124392,124406,124442,124462,124466,124468,124494,124508,124514,124520,124558,124572,124600,124610,124612,124616,124624,124646,124666,124694,124710,124716,124730,124742,124748,124760,124786,124788,124818,124820,124834,124836,124840,124854,124946,124948,124962,124964,124968,124982,124994,124996,125e3,125008,125022,125030,125036,125050,125058,125060,125064,125072,125086,125088,125116,125126,125132,125144,125166,125170,125172,125186,125188,125192,125200,125216,125244,125248,125304,125318,125324,125336,125360,125374,125390,125404,125410,125412,125416,125430,125444,125448,125456,125472,125504,125560,125680,125702,125708,125720,125744,125758,125792,125820,125838,125852,125880,125890,125892,125896,125904,125918,125926,125932,125978,125998,126002,126004,126030,126044,126050,126052,126056,126094,126108,126136,126146,126148,126152,126160,126182,126202,126222,126236,126264,126320,126334,126338,126340,126344,126352,126366,126368,126412,126450,126452,126486,126502,126508,126522,126534,126540,126552,126574,126578,126580,126598,126604,126616,126640,126654,126670,126684,126690,126692,126696,126738,126754,126756,126760,126774,126786,126788,126792,126800,126814,126822,126828,126842,126894,126898,126900,126934,127126,127142,127148,127162,127178,127186,127188,127254,127270,127276,127290,127302,127308,127320,127342,127346,127348,127370,127378,127380,127394,127396,127400,127450,127510,127526,127532,127546,127558,127576,127598,127602,127604,127622,127628,127640,127664,127678,127694,127708,127714,127716,127720,127734,127754,127762,127764,127778,127784,127810,127812,127816,127824,127838,127846,127866,127898,127918,127922,127924,128022,128038,128044,128058,128070,128076,128088,128110,128114,128116,128134,128140,128152,128176,128190,128206,128220,128226,128228,128232,128246,128262,128268,128280,128304,128318,128352,128380,128398,128412,128440,128450,128452,128456,128464,128478,128486,128492,128506,128522,128530,128532,128546,128548,128552,128566,128578,128580,128584,128592,128606,128614,128634,128642,128644,128648,128656,128670,128672,128700,128716,128754,128756,128794,128814,128818,128820,128846,128860,128866,128868,128872,128886,128918,128934,128940,128954,128978,128980,129178,129198,129202,129204,129238,129258,129306,129326,129330,129332,129358,129372,129378,129380,129384,129398,129430,129446,129452,129466,129482,129490,129492,129562,129582,129586,129588,129614,129628,129634,129636,129640,129654,129678,129692,129720,129730,129732,129736,129744,129758,129766,129772,129814,129830,129836,129850,129862,129868,129880,129902,129906,129908,129930,129938,129940,129954,129956,129960,129974,130010]),Q.CODEWORD_TABLE=Int32Array.from([2627,1819,2622,2621,1813,1812,2729,2724,2723,2779,2774,2773,902,896,908,868,865,861,859,2511,873,871,1780,835,2493,825,2491,842,837,844,1764,1762,811,810,809,2483,807,2482,806,2480,815,814,813,812,2484,817,816,1745,1744,1742,1746,2655,2637,2635,2626,2625,2623,2628,1820,2752,2739,2737,2728,2727,2725,2730,2785,2783,2778,2777,2775,2780,787,781,747,739,736,2413,754,752,1719,692,689,681,2371,678,2369,700,697,694,703,1688,1686,642,638,2343,631,2341,627,2338,651,646,643,2345,654,652,1652,1650,1647,1654,601,599,2322,596,2321,594,2319,2317,611,610,608,606,2324,603,2323,615,614,612,1617,1616,1614,1612,616,1619,1618,2575,2538,2536,905,901,898,909,2509,2507,2504,870,867,864,860,2512,875,872,1781,2490,2489,2487,2485,1748,836,834,832,830,2494,827,2492,843,841,839,845,1765,1763,2701,2676,2674,2653,2648,2656,2634,2633,2631,2629,1821,2638,2636,2770,2763,2761,2750,2745,2753,2736,2735,2733,2731,1848,2740,2738,2786,2784,591,588,576,569,566,2296,1590,537,534,526,2276,522,2274,545,542,539,548,1572,1570,481,2245,466,2242,462,2239,492,485,482,2249,496,494,1534,1531,1528,1538,413,2196,406,2191,2188,425,419,2202,415,2199,432,430,427,1472,1467,1464,433,1476,1474,368,367,2160,365,2159,362,2157,2155,2152,378,377,375,2166,372,2165,369,2162,383,381,379,2168,1419,1418,1416,1414,385,1411,384,1423,1422,1420,1424,2461,802,2441,2439,790,786,783,794,2409,2406,2403,750,742,738,2414,756,753,1720,2367,2365,2362,2359,1663,693,691,684,2373,680,2370,702,699,696,704,1690,1687,2337,2336,2334,2332,1624,2329,1622,640,637,2344,634,2342,630,2340,650,648,645,2346,655,653,1653,1651,1649,1655,2612,2597,2595,2571,2568,2565,2576,2534,2529,2526,1787,2540,2537,907,904,900,910,2503,2502,2500,2498,1768,2495,1767,2510,2508,2506,869,866,863,2513,876,874,1782,2720,2713,2711,2697,2694,2691,2702,2672,2670,2664,1828,2678,2675,2647,2646,2644,2642,1823,2639,1822,2654,2652,2650,2657,2771,1855,2765,2762,1850,1849,2751,2749,2747,2754,353,2148,344,342,336,2142,332,2140,345,1375,1373,306,2130,299,2128,295,2125,319,314,311,2132,1354,1352,1349,1356,262,257,2101,253,2096,2093,274,273,267,2107,263,2104,280,278,275,1316,1311,1308,1320,1318,2052,202,2050,2044,2040,219,2063,212,2060,208,2055,224,221,2066,1260,1258,1252,231,1248,229,1266,1264,1261,1268,155,1998,153,1996,1994,1991,1988,165,164,2007,162,2006,159,2003,2e3,172,171,169,2012,166,2010,1186,1184,1182,1179,175,1176,173,1192,1191,1189,1187,176,1194,1193,2313,2307,2305,592,589,2294,2292,2289,578,572,568,2297,580,1591,2272,2267,2264,1547,538,536,529,2278,525,2275,547,544,541,1574,1571,2237,2235,2229,1493,2225,1489,478,2247,470,2244,465,2241,493,488,484,2250,498,495,1536,1533,1530,1539,2187,2186,2184,2182,1432,2179,1430,2176,1427,414,412,2197,409,2195,405,2193,2190,426,424,421,2203,418,2201,431,429,1473,1471,1469,1466,434,1477,1475,2478,2472,2470,2459,2457,2454,2462,803,2437,2432,2429,1726,2443,2440,792,789,785,2401,2399,2393,1702,2389,1699,2411,2408,2405,745,741,2415,758,755,1721,2358,2357,2355,2353,1661,2350,1660,2347,1657,2368,2366,2364,2361,1666,690,687,2374,683,2372,701,698,705,1691,1689,2619,2617,2610,2608,2605,2613,2593,2588,2585,1803,2599,2596,2563,2561,2555,1797,2551,1795,2573,2570,2567,2577,2525,2524,2522,2520,1786,2517,1785,2514,1783,2535,2533,2531,2528,1788,2541,2539,906,903,911,2721,1844,2715,2712,1838,1836,2699,2696,2693,2703,1827,1826,1824,2673,2671,2669,2666,1829,2679,2677,1858,1857,2772,1854,1853,1851,1856,2766,2764,143,1987,139,1986,135,133,131,1984,128,1983,125,1981,138,137,136,1985,1133,1132,1130,112,110,1974,107,1973,104,1971,1969,122,121,119,117,1977,114,1976,124,1115,1114,1112,1110,1117,1116,84,83,1953,81,1952,78,1950,1948,1945,94,93,91,1959,88,1958,85,1955,99,97,95,1961,1086,1085,1083,1081,1078,100,1090,1089,1087,1091,49,47,1917,44,1915,1913,1910,1907,59,1926,56,1925,53,1922,1919,66,64,1931,61,1929,1042,1040,1038,71,1035,70,1032,68,1048,1047,1045,1043,1050,1049,12,10,1869,1867,1864,1861,21,1880,19,1877,1874,1871,28,1888,25,1886,22,1883,982,980,977,974,32,30,991,989,987,984,34,995,994,992,2151,2150,2147,2146,2144,356,355,354,2149,2139,2138,2136,2134,1359,343,341,338,2143,335,2141,348,347,346,1376,1374,2124,2123,2121,2119,1326,2116,1324,310,308,305,2131,302,2129,298,2127,320,318,316,313,2133,322,321,1355,1353,1351,1357,2092,2091,2089,2087,1276,2084,1274,2081,1271,259,2102,256,2100,252,2098,2095,272,269,2108,266,2106,281,279,277,1317,1315,1313,1310,282,1321,1319,2039,2037,2035,2032,1203,2029,1200,1197,207,2053,205,2051,201,2049,2046,2043,220,218,2064,215,2062,211,2059,228,226,223,2069,1259,1257,1254,232,1251,230,1267,1265,1263,2316,2315,2312,2311,2309,2314,2304,2303,2301,2299,1593,2308,2306,590,2288,2287,2285,2283,1578,2280,1577,2295,2293,2291,579,577,574,571,2298,582,581,1592,2263,2262,2260,2258,1545,2255,1544,2252,1541,2273,2271,2269,2266,1550,535,532,2279,528,2277,546,543,549,1575,1573,2224,2222,2220,1486,2217,1485,2214,1482,1479,2238,2236,2234,2231,1496,2228,1492,480,477,2248,473,2246,469,2243,490,487,2251,497,1537,1535,1532,2477,2476,2474,2479,2469,2468,2466,2464,1730,2473,2471,2453,2452,2450,2448,1729,2445,1728,2460,2458,2456,2463,805,804,2428,2427,2425,2423,1725,2420,1724,2417,1722,2438,2436,2434,2431,1727,2444,2442,793,791,788,795,2388,2386,2384,1697,2381,1696,2378,1694,1692,2402,2400,2398,2395,1703,2392,1701,2412,2410,2407,751,748,744,2416,759,757,1807,2620,2618,1806,1805,2611,2609,2607,2614,1802,1801,1799,2594,2592,2590,2587,1804,2600,2598,1794,1793,1791,1789,2564,2562,2560,2557,1798,2554,1796,2574,2572,2569,2578,1847,1846,2722,1843,1842,1840,1845,2716,2714,1835,1834,1832,1830,1839,1837,2700,2698,2695,2704,1817,1811,1810,897,862,1777,829,826,838,1760,1758,808,2481,1741,1740,1738,1743,2624,1818,2726,2776,782,740,737,1715,686,679,695,1682,1680,639,628,2339,647,644,1645,1643,1640,1648,602,600,597,595,2320,593,2318,609,607,604,1611,1610,1608,1606,613,1615,1613,2328,926,924,892,886,899,857,850,2505,1778,824,823,821,819,2488,818,2486,833,831,828,840,1761,1759,2649,2632,2630,2746,2734,2732,2782,2781,570,567,1587,531,527,523,540,1566,1564,476,467,463,2240,486,483,1524,1521,1518,1529,411,403,2192,399,2189,423,416,1462,1457,1454,428,1468,1465,2210,366,363,2158,360,2156,357,2153,376,373,370,2163,1410,1409,1407,1405,382,1402,380,1417,1415,1412,1421,2175,2174,777,774,771,784,732,725,722,2404,743,1716,676,674,668,2363,665,2360,685,1684,1681,626,624,622,2335,620,2333,617,2330,641,635,649,1646,1644,1642,2566,928,925,2530,2527,894,891,888,2501,2499,2496,858,856,854,851,1779,2692,2668,2665,2645,2643,2640,2651,2768,2759,2757,2744,2743,2741,2748,352,1382,340,337,333,1371,1369,307,300,296,2126,315,312,1347,1342,1350,261,258,250,2097,246,2094,271,268,264,1306,1301,1298,276,1312,1309,2115,203,2048,195,2045,191,2041,213,209,2056,1246,1244,1238,225,1234,222,1256,1253,1249,1262,2080,2079,154,1997,150,1995,147,1992,1989,163,160,2004,156,2001,1175,1174,1172,1170,1167,170,1164,167,1185,1183,1180,1177,174,1190,1188,2025,2024,2022,587,586,564,559,556,2290,573,1588,520,518,512,2268,508,2265,530,1568,1565,461,457,2233,450,2230,446,2226,479,471,489,1526,1523,1520,397,395,2185,392,2183,389,2180,2177,410,2194,402,422,1463,1461,1459,1456,1470,2455,799,2433,2430,779,776,773,2397,2394,2390,734,728,724,746,1717,2356,2354,2351,2348,1658,677,675,673,670,667,688,1685,1683,2606,2589,2586,2559,2556,2552,927,2523,2521,2518,2515,1784,2532,895,893,890,2718,2709,2707,2689,2687,2684,2663,2662,2660,2658,1825,2667,2769,1852,2760,2758,142,141,1139,1138,134,132,129,126,1982,1129,1128,1126,1131,113,111,108,105,1972,101,1970,120,118,115,1109,1108,1106,1104,123,1113,1111,82,79,1951,75,1949,72,1946,92,89,86,1956,1077,1076,1074,1072,98,1069,96,1084,1082,1079,1088,1968,1967,48,45,1916,42,1914,39,1911,1908,60,57,54,1923,50,1920,1031,1030,1028,1026,67,1023,65,1020,62,1041,1039,1036,1033,69,1046,1044,1944,1943,1941,11,9,1868,7,1865,1862,1859,20,1878,16,1875,13,1872,970,968,966,963,29,960,26,23,983,981,978,975,33,971,31,990,988,985,1906,1904,1902,993,351,2145,1383,331,330,328,326,2137,323,2135,339,1372,1370,294,293,291,289,2122,286,2120,283,2117,309,303,317,1348,1346,1344,245,244,242,2090,239,2088,236,2085,2082,260,2099,249,270,1307,1305,1303,1300,1314,189,2038,186,2036,183,2033,2030,2026,206,198,2047,194,216,1247,1245,1243,1240,227,1237,1255,2310,2302,2300,2286,2284,2281,565,563,561,558,575,1589,2261,2259,2256,2253,1542,521,519,517,514,2270,511,533,1569,1567,2223,2221,2218,2215,1483,2211,1480,459,456,453,2232,449,474,491,1527,1525,1522,2475,2467,2465,2451,2449,2446,801,800,2426,2424,2421,2418,1723,2435,780,778,775,2387,2385,2382,2379,1695,2375,1693,2396,735,733,730,727,749,1718,2616,2615,2604,2603,2601,2584,2583,2581,2579,1800,2591,2550,2549,2547,2545,1792,2542,1790,2558,929,2719,1841,2710,2708,1833,1831,2690,2688,2686,1815,1809,1808,1774,1756,1754,1737,1736,1734,1739,1816,1711,1676,1674,633,629,1638,1636,1633,1641,598,1605,1604,1602,1600,605,1609,1607,2327,887,853,1775,822,820,1757,1755,1584,524,1560,1558,468,464,1514,1511,1508,1519,408,404,400,1452,1447,1444,417,1458,1455,2208,364,361,358,2154,1401,1400,1398,1396,374,1393,371,1408,1406,1403,1413,2173,2172,772,726,723,1712,672,669,666,682,1678,1675,625,623,621,618,2331,636,632,1639,1637,1635,920,918,884,880,889,849,848,847,846,2497,855,852,1776,2641,2742,2787,1380,334,1367,1365,301,297,1340,1338,1335,1343,255,251,247,1296,1291,1288,265,1302,1299,2113,204,196,192,2042,1232,1230,1224,214,1220,210,1242,1239,1235,1250,2077,2075,151,148,1993,144,1990,1163,1162,1160,1158,1155,161,1152,157,1173,1171,1168,1165,168,1181,1178,2021,2020,2018,2023,585,560,557,1585,516,509,1562,1559,458,447,2227,472,1516,1513,1510,398,396,393,390,2181,386,2178,407,1453,1451,1449,1446,420,1460,2209,769,764,720,712,2391,729,1713,664,663,661,659,2352,656,2349,671,1679,1677,2553,922,919,2519,2516,885,883,881,2685,2661,2659,2767,2756,2755,140,1137,1136,130,127,1125,1124,1122,1127,109,106,102,1103,1102,1100,1098,116,1107,1105,1980,80,76,73,1947,1068,1067,1065,1063,90,1060,87,1075,1073,1070,1080,1966,1965,46,43,40,1912,36,1909,1019,1018,1016,1014,58,1011,55,1008,51,1029,1027,1024,1021,63,1037,1034,1940,1939,1937,1942,8,1866,4,1863,1,1860,956,954,952,949,946,17,14,969,967,964,961,27,957,24,979,976,972,1901,1900,1898,1896,986,1905,1903,350,349,1381,329,327,324,1368,1366,292,290,287,284,2118,304,1341,1339,1337,1345,243,240,237,2086,233,2083,254,1297,1295,1293,1290,1304,2114,190,187,184,2034,180,2031,177,2027,199,1233,1231,1229,1226,217,1223,1241,2078,2076,584,555,554,552,550,2282,562,1586,507,506,504,502,2257,499,2254,515,1563,1561,445,443,441,2219,438,2216,435,2212,460,454,475,1517,1515,1512,2447,798,797,2422,2419,770,768,766,2383,2380,2376,721,719,717,714,731,1714,2602,2582,2580,2548,2546,2543,923,921,2717,2706,2705,2683,2682,2680,1771,1752,1750,1733,1732,1731,1735,1814,1707,1670,1668,1631,1629,1626,1634,1599,1598,1596,1594,1603,1601,2326,1772,1753,1751,1581,1554,1552,1504,1501,1498,1509,1442,1437,1434,401,1448,1445,2206,1392,1391,1389,1387,1384,359,1399,1397,1394,1404,2171,2170,1708,1672,1669,619,1632,1630,1628,1773,1378,1363,1361,1333,1328,1336,1286,1281,1278,248,1292,1289,2111,1218,1216,1210,197,1206,193,1228,1225,1221,1236,2073,2071,1151,1150,1148,1146,152,1143,149,1140,145,1161,1159,1156,1153,158,1169,1166,2017,2016,2014,2019,1582,510,1556,1553,452,448,1506,1500,394,391,387,1443,1441,1439,1436,1450,2207,765,716,713,1709,662,660,657,1673,1671,916,914,879,878,877,882,1135,1134,1121,1120,1118,1123,1097,1096,1094,1092,103,1101,1099,1979,1059,1058,1056,1054,77,1051,74,1066,1064,1061,1071,1964,1963,1007,1006,1004,1002,999,41,996,37,1017,1015,1012,1009,52,1025,1022,1936,1935,1933,1938,942,940,938,935,932,5,2,955,953,950,947,18,943,15,965,962,958,1895,1894,1892,1890,973,1899,1897,1379,325,1364,1362,288,285,1334,1332,1330,241,238,234,1287,1285,1283,1280,1294,2112,188,185,181,178,2028,1219,1217,1215,1212,200,1209,1227,2074,2072,583,553,551,1583,505,503,500,513,1557,1555,444,442,439,436,2213,455,451,1507,1505,1502,796,763,762,760,767,711,710,708,706,2377,718,715,1710,2544,917,915,2681,1627,1597,1595,2325,1769,1749,1747,1499,1438,1435,2204,1390,1388,1385,1395,2169,2167,1704,1665,1662,1625,1623,1620,1770,1329,1282,1279,2109,1214,1207,1222,2068,2065,1149,1147,1144,1141,146,1157,1154,2013,2011,2008,2015,1579,1549,1546,1495,1487,1433,1431,1428,1425,388,1440,2205,1705,658,1667,1664,1119,1095,1093,1978,1057,1055,1052,1062,1962,1960,1005,1003,1e3,997,38,1013,1010,1932,1930,1927,1934,941,939,936,933,6,930,3,951,948,944,1889,1887,1884,1881,959,1893,1891,35,1377,1360,1358,1327,1325,1322,1331,1277,1275,1272,1269,235,1284,2110,1205,1204,1201,1198,182,1195,179,1213,2070,2067,1580,501,1551,1548,440,437,1497,1494,1490,1503,761,709,707,1706,913,912,2198,1386,2164,2161,1621,1766,2103,1208,2058,2054,1145,1142,2005,2002,1999,2009,1488,1429,1426,2200,1698,1659,1656,1975,1053,1957,1954,1001,998,1924,1921,1918,1928,937,934,931,1879,1876,1873,1870,945,1885,1882,1323,1273,1270,2105,1202,1199,1196,1211,2061,2057,1576,1543,1540,1484,1481,1478,1491,1700]);class xs{constructor(e,t){this.bits=e,this.points=t}getBits(){return this.bits}getPoints(){return this.points}}class ie{static detectMultiple(e,t,n){let r=e.getBlackMatrix(),i=ie.detect(n,r);return i.length||(r=r.clone(),r.rotate180(),i=ie.detect(n,r)),new xs(r,i)}static detect(e,t){const n=new Array;let r=0,i=0,s=!1;for(;r<t.getHeight();){const o=ie.findVertices(t,r,i);if(o[0]==null&&o[3]==null){if(!s)break;s=!1,i=0;for(const a of n)a[1]!=null&&(r=Math.trunc(Math.max(r,a[1].getY()))),a[3]!=null&&(r=Math.max(r,Math.trunc(a[3].getY())));r+=ie.ROW_STEP;continue}if(s=!0,n.push(o),!e)break;o[2]!=null?(i=Math.trunc(o[2].getX()),r=Math.trunc(o[2].getY())):(i=Math.trunc(o[4].getX()),r=Math.trunc(o[4].getY()))}return n}static findVertices(e,t,n){const r=e.getHeight(),i=e.getWidth(),s=new Array(8);return ie.copyToResult(s,ie.findRowsWithPattern(e,r,i,t,n,ie.START_PATTERN),ie.INDEXES_START_PATTERN),s[4]!=null&&(n=Math.trunc(s[4].getX()),t=Math.trunc(s[4].getY())),ie.copyToResult(s,ie.findRowsWithPattern(e,r,i,t,n,ie.STOP_PATTERN),ie.INDEXES_STOP_PATTERN),s}static copyToResult(e,t,n){for(let r=0;r<n.length;r++)e[n[r]]=t[r]}static findRowsWithPattern(e,t,n,r,i,s){const o=new Array(4);let a=!1;const l=new Int32Array(s.length);for(;r<t;r+=ie.ROW_STEP){let f=ie.findGuardPattern(e,i,r,n,!1,s,l);if(f!=null){for(;r>0;){const w=ie.findGuardPattern(e,i,--r,n,!1,s,l);if(w!=null)f=w;else{r++;break}}o[0]=new z(f[0],r),o[1]=new z(f[1],r),a=!0;break}}let c=r+1;if(a){let f=0,w=Int32Array.from([Math.trunc(o[0].getX()),Math.trunc(o[1].getX())]);for(;c<t;c++){const E=ie.findGuardPattern(e,w[0],c,n,!1,s,l);if(E!=null&&Math.abs(w[0]-E[0])<ie.MAX_PATTERN_DRIFT&&Math.abs(w[1]-E[1])<ie.MAX_PATTERN_DRIFT)w=E,f=0;else{if(f>ie.SKIPPED_ROW_COUNT_MAX)break;f++}}c-=f+1,o[2]=new z(w[0],c),o[3]=new z(w[1],c)}return c-r<ie.BARCODE_MIN_HEIGHT&&Ae.fill(o,null),o}static findGuardPattern(e,t,n,r,i,s,o){Ae.fillWithin(o,0,o.length,0);let a=t,l=0;for(;e.get(a,n)&&a>0&&l++<ie.MAX_PIXEL_DRIFT;)a--;let c=a,f=0,w=s.length;for(let E=i;c<r;c++)if(e.get(c,n)!==E)o[f]++;else{if(f===w-1){if(ie.patternMatchVariance(o,s,ie.MAX_INDIVIDUAL_VARIANCE)<ie.MAX_AVG_VARIANCE)return new Int32Array([a,c]);a+=o[0]+o[1],te.arraycopy(o,2,o,0,f-1),o[f-1]=0,o[f]=0,f--}else f++;o[f]=1,E=!E}return f===w-1&&ie.patternMatchVariance(o,s,ie.MAX_INDIVIDUAL_VARIANCE)<ie.MAX_AVG_VARIANCE?new Int32Array([a,c-1]):null}static patternMatchVariance(e,t,n){let r=e.length,i=0,s=0;for(let l=0;l<r;l++)i+=e[l],s+=t[l];if(i<s)return 1/0;let o=i/s;n*=o;let a=0;for(let l=0;l<r;l++){let c=e[l],f=t[l]*o,w=c>f?c-f:f-c;if(w>n)return 1/0;a+=w}return a/i}}ie.INDEXES_START_PATTERN=Int32Array.from([0,4,1,5]),ie.INDEXES_STOP_PATTERN=Int32Array.from([6,2,7,3]),ie.MAX_AVG_VARIANCE=.42,ie.MAX_INDIVIDUAL_VARIANCE=.8,ie.START_PATTERN=Int32Array.from([8,1,1,1,1,1,1,3]),ie.STOP_PATTERN=Int32Array.from([7,1,1,3,1,1,1,2,1]),ie.MAX_PIXEL_DRIFT=3,ie.MAX_PATTERN_DRIFT=5,ie.SKIPPED_ROW_COUNT_MAX=25,ie.ROW_STEP=5,ie.BARCODE_MIN_HEIGHT=10;class Ke{constructor(e,t){if(t.length===0)throw new R;this.field=e;let n=t.length;if(n>1&&t[0]===0){let r=1;for(;r<n&&t[r]===0;)r++;r===n?this.coefficients=new Int32Array([0]):(this.coefficients=new Int32Array(n-r),te.arraycopy(t,r,this.coefficients,0,this.coefficients.length))}else this.coefficients=t}getCoefficients(){return this.coefficients}getDegree(){return this.coefficients.length-1}isZero(){return this.coefficients[0]===0}getCoefficient(e){return this.coefficients[this.coefficients.length-1-e]}evaluateAt(e){if(e===0)return this.getCoefficient(0);if(e===1){let r=0;for(let i of this.coefficients)r=this.field.add(r,i);return r}let t=this.coefficients[0],n=this.coefficients.length;for(let r=1;r<n;r++)t=this.field.add(this.field.multiply(e,t),this.coefficients[r]);return t}add(e){if(!this.field.equals(e.field))throw new R("ModulusPolys do not have same ModulusGF field");if(this.isZero())return e;if(e.isZero())return this;let t=this.coefficients,n=e.coefficients;if(t.length>n.length){let s=t;t=n,n=s}let r=new Int32Array(n.length),i=n.length-t.length;te.arraycopy(n,0,r,0,i);for(let s=i;s<n.length;s++)r[s]=this.field.add(t[s-i],n[s]);return new Ke(this.field,r)}subtract(e){if(!this.field.equals(e.field))throw new R("ModulusPolys do not have same ModulusGF field");return e.isZero()?this:this.add(e.negative())}multiply(e){return e instanceof Ke?this.multiplyOther(e):this.multiplyScalar(e)}multiplyOther(e){if(!this.field.equals(e.field))throw new R("ModulusPolys do not have same ModulusGF field");if(this.isZero()||e.isZero())return new Ke(this.field,new Int32Array([0]));let t=this.coefficients,n=t.length,r=e.coefficients,i=r.length,s=new Int32Array(n+i-1);for(let o=0;o<n;o++){let a=t[o];for(let l=0;l<i;l++)s[o+l]=this.field.add(s[o+l],this.field.multiply(a,r[l]))}return new Ke(this.field,s)}negative(){let e=this.coefficients.length,t=new Int32Array(e);for(let n=0;n<e;n++)t[n]=this.field.subtract(0,this.coefficients[n]);return new Ke(this.field,t)}multiplyScalar(e){if(e===0)return new Ke(this.field,new Int32Array([0]));if(e===1)return this;let t=this.coefficients.length,n=new Int32Array(t);for(let r=0;r<t;r++)n[r]=this.field.multiply(this.coefficients[r],e);return new Ke(this.field,n)}multiplyByMonomial(e,t){if(e<0)throw new R;if(t===0)return new Ke(this.field,new Int32Array([0]));let n=this.coefficients.length,r=new Int32Array(n+e);for(let i=0;i<n;i++)r[i]=this.field.multiply(this.coefficients[i],t);return new Ke(this.field,r)}toString(){let e=new me;for(let t=this.getDegree();t>=0;t--){let n=this.getCoefficient(t);n!==0&&(n<0?(e.append(" - "),n=-n):e.length()>0&&e.append(" + "),(t===0||n!==1)&&e.append(n),t!==0&&(t===1?e.append("x"):(e.append("x^"),e.append(t))))}return e.toString()}}class gs{add(e,t){return(e+t)%this.modulus}subtract(e,t){return(this.modulus+e-t)%this.modulus}exp(e){return this.expTable[e]}log(e){if(e===0)throw new R;return this.logTable[e]}inverse(e){if(e===0)throw new Bn;return this.expTable[this.modulus-this.logTable[e]-1]}multiply(e,t){return e===0||t===0?0:this.expTable[(this.logTable[e]+this.logTable[t])%(this.modulus-1)]}getSize(){return this.modulus}equals(e){return e===this}}class fr extends gs{constructor(e,t){super(),this.modulus=e,this.expTable=new Int32Array(e),this.logTable=new Int32Array(e);let n=1;for(let r=0;r<e;r++)this.expTable[r]=n,n=n*t%e;for(let r=0;r<e-1;r++)this.logTable[this.expTable[r]]=r;this.zero=new Ke(this,new Int32Array([0])),this.one=new Ke(this,new Int32Array([1]))}getZero(){return this.zero}getOne(){return this.one}buildMonomial(e,t){if(e<0)throw new R;if(t===0)return this.zero;let n=new Int32Array(e+1);return n[0]=t,new Ke(this,n)}}fr.PDF417_GF=new fr(Q.NUMBER_OF_CODEWORDS,3);class jr{constructor(){this.field=fr.PDF417_GF}decode(e,t,n){let r=new Ke(this.field,e),i=new Int32Array(t),s=!1;for(let I=t;I>0;I--){let b=r.evaluateAt(this.field.exp(I));i[t-I]=b,b!==0&&(s=!0)}if(!s)return 0;let o=this.field.getOne();if(n!=null)for(const I of n){let b=this.field.exp(e.length-1-I),S=new Ke(this.field,new Int32Array([this.field.subtract(0,b),1]));o=o.multiply(S)}let a=new Ke(this.field,i),l=this.runEuclideanAlgorithm(this.field.buildMonomial(t,1),a,t),c=l[0],f=l[1],w=this.findErrorLocations(c),E=this.findErrorMagnitudes(f,c,w);for(let I=0;I<w.length;I++){let b=e.length-1-this.field.log(w[I]);if(b<0)throw ee.getChecksumInstance();e[b]=this.field.subtract(e[b],E[I])}return w.length}runEuclideanAlgorithm(e,t,n){if(e.getDegree()<t.getDegree()){let w=e;e=t,t=w}let r=e,i=t,s=this.field.getZero(),o=this.field.getOne();for(;i.getDegree()>=Math.round(n/2);){let w=r,E=s;if(r=i,s=o,r.isZero())throw ee.getChecksumInstance();i=w;let I=this.field.getZero(),b=r.getCoefficient(r.getDegree()),S=this.field.inverse(b);for(;i.getDegree()>=r.getDegree()&&!i.isZero();){let O=i.getDegree()-r.getDegree(),L=this.field.multiply(i.getCoefficient(i.getDegree()),S);I=I.add(this.field.buildMonomial(O,L)),i=i.subtract(r.multiplyByMonomial(O,L))}o=I.multiply(s).subtract(E).negative()}let a=o.getCoefficient(0);if(a===0)throw ee.getChecksumInstance();let l=this.field.inverse(a),c=o.multiply(l),f=i.multiply(l);return[c,f]}findErrorLocations(e){let t=e.getDegree(),n=new Int32Array(t),r=0;for(let i=1;i<this.field.getSize()&&r<t;i++)e.evaluateAt(i)===0&&(n[r]=this.field.inverse(i),r++);if(r!==t)throw ee.getChecksumInstance();return n}findErrorMagnitudes(e,t,n){let r=t.getDegree(),i=new Int32Array(r);for(let l=1;l<=r;l++)i[r-l]=this.field.multiply(l,t.getCoefficient(l));let s=new Ke(this.field,i),o=n.length,a=new Int32Array(o);for(let l=0;l<o;l++){let c=this.field.inverse(n[l]),f=this.field.subtract(0,e.evaluateAt(c)),w=this.field.inverse(s.evaluateAt(c));a[l]=this.field.multiply(f,w)}return a}}class jt{constructor(e,t,n,r,i){e instanceof jt?this.constructor_2(e):this.constructor_1(e,t,n,r,i)}constructor_1(e,t,n,r,i){const s=t==null||n==null,o=r==null||i==null;if(s&&o)throw new D;s?(t=new z(0,r.getY()),n=new z(0,i.getY())):o&&(r=new z(e.getWidth()-1,t.getY()),i=new z(e.getWidth()-1,n.getY())),this.image=e,this.topLeft=t,this.bottomLeft=n,this.topRight=r,this.bottomRight=i,this.minX=Math.trunc(Math.min(t.getX(),n.getX())),this.maxX=Math.trunc(Math.max(r.getX(),i.getX())),this.minY=Math.trunc(Math.min(t.getY(),r.getY())),this.maxY=Math.trunc(Math.max(n.getY(),i.getY()))}constructor_2(e){this.image=e.image,this.topLeft=e.getTopLeft(),this.bottomLeft=e.getBottomLeft(),this.topRight=e.getTopRight(),this.bottomRight=e.getBottomRight(),this.minX=e.getMinX(),this.maxX=e.getMaxX(),this.minY=e.getMinY(),this.maxY=e.getMaxY()}static merge(e,t){return e==null?t:t==null?e:new jt(e.image,e.topLeft,e.bottomLeft,t.topRight,t.bottomRight)}addMissingRows(e,t,n){let r=this.topLeft,i=this.bottomLeft,s=this.topRight,o=this.bottomRight;if(e>0){let a=n?this.topLeft:this.topRight,l=Math.trunc(a.getY()-e);l<0&&(l=0);let c=new z(a.getX(),l);n?r=c:s=c}if(t>0){let a=n?this.bottomLeft:this.bottomRight,l=Math.trunc(a.getY()+t);l>=this.image.getHeight()&&(l=this.image.getHeight()-1);let c=new z(a.getX(),l);n?i=c:o=c}return new jt(this.image,r,i,s,o)}getMinX(){return this.minX}getMaxX(){return this.maxX}getMinY(){return this.minY}getMaxY(){return this.maxY}getTopLeft(){return this.topLeft}getTopRight(){return this.topRight}getBottomLeft(){return this.bottomLeft}getBottomRight(){return this.bottomRight}}class ws{constructor(e,t,n,r){this.columnCount=e,this.errorCorrectionLevel=r,this.rowCountUpperPart=t,this.rowCountLowerPart=n,this.rowCount=t+n}getColumnCount(){return this.columnCount}getErrorCorrectionLevel(){return this.errorCorrectionLevel}getRowCount(){return this.rowCount}getRowCountUpperPart(){return this.rowCountUpperPart}getRowCountLowerPart(){return this.rowCountLowerPart}}class pn{constructor(){this.buffer=""}static form(e,t){let n=-1;function r(s,o,a,l,c,f){if(s==="%%")return"%";if(t[++n]===void 0)return;s=l?parseInt(l.substr(1)):void 0;let w=c?parseInt(c.substr(1)):void 0,E;switch(f){case"s":E=t[n];break;case"c":E=t[n][0];break;case"f":E=parseFloat(t[n]).toFixed(s);break;case"p":E=parseFloat(t[n]).toPrecision(s);break;case"e":E=parseFloat(t[n]).toExponential(s);break;case"x":E=parseInt(t[n]).toString(w||16);break;case"d":E=parseFloat(parseInt(t[n],w||10).toPrecision(s)).toFixed(0);break}E=typeof E=="object"?JSON.stringify(E):(+E).toString(w);let I=parseInt(a),b=a&&a[0]+""=="0"?"0":" ";for(;E.length<I;)E=o!==void 0?E+b:b+E;return E}let i=/%(-)?(0?[0-9]+)?([.][0-9]+)?([#][0-9]+)?([scfpexd%])/g;return e.replace(i,r)}format(e,...t){this.buffer+=pn.form(e,t)}toString(){return this.buffer}}class In{constructor(e){this.boundingBox=new jt(e),this.codewords=new Array(e.getMaxY()-e.getMinY()+1)}getCodewordNearby(e){let t=this.getCodeword(e);if(t!=null)return t;for(let n=1;n<In.MAX_NEARBY_DISTANCE;n++){let r=this.imageRowToCodewordIndex(e)-n;if(r>=0&&(t=this.codewords[r],t!=null)||(r=this.imageRowToCodewordIndex(e)+n,r<this.codewords.length&&(t=this.codewords[r],t!=null)))return t}return null}imageRowToCodewordIndex(e){return e-this.boundingBox.getMinY()}setCodeword(e,t){this.codewords[this.imageRowToCodewordIndex(e)]=t}getCodeword(e){return this.codewords[this.imageRowToCodewordIndex(e)]}getBoundingBox(){return this.boundingBox}getCodewords(){return this.codewords}toString(){const e=new pn;let t=0;for(const n of this.codewords){if(n==null){e.format("%3d: | %n",t++);continue}e.format("%3d: %3d|%3d%n",t++,n.getRowNumber(),n.getValue())}return e.toString()}}In.MAX_NEARBY_DISTANCE=5;class bn{constructor(){this.values=new Map}setValue(e){e=Math.trunc(e);let t=this.values.get(e);t==null&&(t=0),t++,this.values.set(e,t)}getValue(){let e=-1,t=new Array;for(const[n,r]of this.values.entries()){const i={getKey:()=>n,getValue:()=>r};i.getValue()>e?(e=i.getValue(),t=[],t.push(i.getKey())):i.getValue()===e&&t.push(i.getKey())}return Q.toIntArray(t)}getConfidence(e){return this.values.get(e)}}class qr extends In{constructor(e,t){super(e),this._isLeft=t}setRowNumbers(){for(let e of this.getCodewords())e!=null&&e.setRowNumberAsRowIndicatorColumn()}adjustCompleteIndicatorColumnRowNumbers(e){let t=this.getCodewords();this.setRowNumbers(),this.removeIncorrectCodewords(t,e);let n=this.getBoundingBox(),r=this._isLeft?n.getTopLeft():n.getTopRight(),i=this._isLeft?n.getBottomLeft():n.getBottomRight(),s=this.imageRowToCodewordIndex(Math.trunc(r.getY())),o=this.imageRowToCodewordIndex(Math.trunc(i.getY())),a=-1,l=1,c=0;for(let f=s;f<o;f++){if(t[f]==null)continue;let w=t[f],E=w.getRowNumber()-a;if(E===0)c++;else if(E===1)l=Math.max(l,c),c=1,a=w.getRowNumber();else if(E<0||w.getRowNumber()>=e.getRowCount()||E>f)t[f]=null;else{let I;l>2?I=(l-2)*E:I=E;let b=I>=f;for(let S=1;S<=I&&!b;S++)b=t[f-S]!=null;b?t[f]=null:(a=w.getRowNumber(),c=1)}}}getRowHeights(){let e=this.getBarcodeMetadata();if(e==null)return null;this.adjustIncompleteIndicatorColumnRowNumbers(e);let t=new Int32Array(e.getRowCount());for(let n of this.getCodewords())if(n!=null){let r=n.getRowNumber();if(r>=t.length)continue;t[r]++}return t}adjustIncompleteIndicatorColumnRowNumbers(e){let t=this.getBoundingBox(),n=this._isLeft?t.getTopLeft():t.getTopRight(),r=this._isLeft?t.getBottomLeft():t.getBottomRight(),i=this.imageRowToCodewordIndex(Math.trunc(n.getY())),s=this.imageRowToCodewordIndex(Math.trunc(r.getY())),o=this.getCodewords(),a=-1;for(let l=i;l<s;l++){if(o[l]==null)continue;let c=o[l];c.setRowNumberAsRowIndicatorColumn();let f=c.getRowNumber()-a;f===0||(f===1?a=c.getRowNumber():c.getRowNumber()>=e.getRowCount()?o[l]=null:a=c.getRowNumber())}}getBarcodeMetadata(){let e=this.getCodewords(),t=new bn,n=new bn,r=new bn,i=new bn;for(let o of e){if(o==null)continue;o.setRowNumberAsRowIndicatorColumn();let a=o.getValue()%30,l=o.getRowNumber();switch(this._isLeft||(l+=2),l%3){case 0:n.setValue(a*3+1);break;case 1:i.setValue(a/3),r.setValue(a%3);break;case 2:t.setValue(a+1);break}}if(t.getValue().length===0||n.getValue().length===0||r.getValue().length===0||i.getValue().length===0||t.getValue()[0]<1||n.getValue()[0]+r.getValue()[0]<Q.MIN_ROWS_IN_BARCODE||n.getValue()[0]+r.getValue()[0]>Q.MAX_ROWS_IN_BARCODE)return null;let s=new ws(t.getValue()[0],n.getValue()[0],r.getValue()[0],i.getValue()[0]);return this.removeIncorrectCodewords(e,s),s}removeIncorrectCodewords(e,t){for(let n=0;n<e.length;n++){let r=e[n];if(e[n]==null)continue;let i=r.getValue()%30,s=r.getRowNumber();if(s>t.getRowCount()){e[n]=null;continue}switch(this._isLeft||(s+=2),s%3){case 0:i*3+1!==t.getRowCountUpperPart()&&(e[n]=null);break;case 1:(Math.trunc(i/3)!==t.getErrorCorrectionLevel()||i%3!==t.getRowCountLowerPart())&&(e[n]=null);break;case 2:i+1!==t.getColumnCount()&&(e[n]=null);break}}}isLeft(){return this._isLeft}toString(){return"IsLeft: "+this._isLeft+`
|
|
16
|
+
`+super.toString()}}class yn{constructor(e,t){this.ADJUST_ROW_NUMBER_SKIP=2,this.barcodeMetadata=e,this.barcodeColumnCount=e.getColumnCount(),this.boundingBox=t,this.detectionResultColumns=new Array(this.barcodeColumnCount+2)}getDetectionResultColumns(){this.adjustIndicatorColumnRowNumbers(this.detectionResultColumns[0]),this.adjustIndicatorColumnRowNumbers(this.detectionResultColumns[this.barcodeColumnCount+1]);let e=Q.MAX_CODEWORDS_IN_BARCODE,t;do t=e,e=this.adjustRowNumbersAndGetCount();while(e>0&&e<t);return this.detectionResultColumns}adjustIndicatorColumnRowNumbers(e){e!=null&&e.adjustCompleteIndicatorColumnRowNumbers(this.barcodeMetadata)}adjustRowNumbersAndGetCount(){let e=this.adjustRowNumbersByRow();if(e===0)return 0;for(let t=1;t<this.barcodeColumnCount+1;t++){let n=this.detectionResultColumns[t].getCodewords();for(let r=0;r<n.length;r++)n[r]!=null&&(n[r].hasValidRowNumber()||this.adjustRowNumbers(t,r,n))}return e}adjustRowNumbersByRow(){return this.adjustRowNumbersFromBothRI(),this.adjustRowNumbersFromLRI()+this.adjustRowNumbersFromRRI()}adjustRowNumbersFromBothRI(){if(this.detectionResultColumns[0]==null||this.detectionResultColumns[this.barcodeColumnCount+1]==null)return;let e=this.detectionResultColumns[0].getCodewords(),t=this.detectionResultColumns[this.barcodeColumnCount+1].getCodewords();for(let n=0;n<e.length;n++)if(e[n]!=null&&t[n]!=null&&e[n].getRowNumber()===t[n].getRowNumber())for(let r=1;r<=this.barcodeColumnCount;r++){let i=this.detectionResultColumns[r].getCodewords()[n];i!=null&&(i.setRowNumber(e[n].getRowNumber()),i.hasValidRowNumber()||(this.detectionResultColumns[r].getCodewords()[n]=null))}}adjustRowNumbersFromRRI(){if(this.detectionResultColumns[this.barcodeColumnCount+1]==null)return 0;let e=0,t=this.detectionResultColumns[this.barcodeColumnCount+1].getCodewords();for(let n=0;n<t.length;n++){if(t[n]==null)continue;let r=t[n].getRowNumber(),i=0;for(let s=this.barcodeColumnCount+1;s>0&&i<this.ADJUST_ROW_NUMBER_SKIP;s--){let o=this.detectionResultColumns[s].getCodewords()[n];o!=null&&(i=yn.adjustRowNumberIfValid(r,i,o),o.hasValidRowNumber()||e++)}}return e}adjustRowNumbersFromLRI(){if(this.detectionResultColumns[0]==null)return 0;let e=0,t=this.detectionResultColumns[0].getCodewords();for(let n=0;n<t.length;n++){if(t[n]==null)continue;let r=t[n].getRowNumber(),i=0;for(let s=1;s<this.barcodeColumnCount+1&&i<this.ADJUST_ROW_NUMBER_SKIP;s++){let o=this.detectionResultColumns[s].getCodewords()[n];o!=null&&(i=yn.adjustRowNumberIfValid(r,i,o),o.hasValidRowNumber()||e++)}}return e}static adjustRowNumberIfValid(e,t,n){return n==null||n.hasValidRowNumber()||(n.isValidRowNumber(e)?(n.setRowNumber(e),t=0):++t),t}adjustRowNumbers(e,t,n){if(!this.detectionResultColumns[e-1])return;let r=n[t],i=this.detectionResultColumns[e-1].getCodewords(),s=i;this.detectionResultColumns[e+1]!=null&&(s=this.detectionResultColumns[e+1].getCodewords());let o=new Array(14);o[2]=i[t],o[3]=s[t],t>0&&(o[0]=n[t-1],o[4]=i[t-1],o[5]=s[t-1]),t>1&&(o[8]=n[t-2],o[10]=i[t-2],o[11]=s[t-2]),t<n.length-1&&(o[1]=n[t+1],o[6]=i[t+1],o[7]=s[t+1]),t<n.length-2&&(o[9]=n[t+2],o[12]=i[t+2],o[13]=s[t+2]);for(let a of o)if(yn.adjustRowNumber(r,a))return}static adjustRowNumber(e,t){return t==null?!1:t.hasValidRowNumber()&&t.getBucket()===e.getBucket()?(e.setRowNumber(t.getRowNumber()),!0):!1}getBarcodeColumnCount(){return this.barcodeColumnCount}getBarcodeRowCount(){return this.barcodeMetadata.getRowCount()}getBarcodeECLevel(){return this.barcodeMetadata.getErrorCorrectionLevel()}setBoundingBox(e){this.boundingBox=e}getBoundingBox(){return this.boundingBox}setDetectionResultColumn(e,t){this.detectionResultColumns[e]=t}getDetectionResultColumn(e){return this.detectionResultColumns[e]}toString(){let e=this.detectionResultColumns[0];e==null&&(e=this.detectionResultColumns[this.barcodeColumnCount+1]);let t=new pn;for(let n=0;n<e.getCodewords().length;n++){t.format("CW %3d:",n);for(let r=0;r<this.barcodeColumnCount+2;r++){if(this.detectionResultColumns[r]==null){t.format(" | ");continue}let i=this.detectionResultColumns[r].getCodewords()[n];if(i==null){t.format(" | ");continue}t.format(" %3d|%3d",i.getRowNumber(),i.getValue())}t.format("%n")}return t.toString()}}class Sn{constructor(e,t,n,r){this.rowNumber=Sn.BARCODE_ROW_UNKNOWN,this.startX=Math.trunc(e),this.endX=Math.trunc(t),this.bucket=Math.trunc(n),this.value=Math.trunc(r)}hasValidRowNumber(){return this.isValidRowNumber(this.rowNumber)}isValidRowNumber(e){return e!==Sn.BARCODE_ROW_UNKNOWN&&this.bucket===e%3*3}setRowNumberAsRowIndicatorColumn(){this.rowNumber=Math.trunc(Math.trunc(this.value/30)*3+Math.trunc(this.bucket/3))}getWidth(){return this.endX-this.startX}getStartX(){return this.startX}getEndX(){return this.endX}getBucket(){return this.bucket}getValue(){return this.value}getRowNumber(){return this.rowNumber}setRowNumber(e){this.rowNumber=e}toString(){return this.rowNumber+"|"+this.value}}Sn.BARCODE_ROW_UNKNOWN=-1;class ut{static initialize(){for(let e=0;e<Q.SYMBOL_TABLE.length;e++){let t=Q.SYMBOL_TABLE[e],n=t&1;for(let r=0;r<Q.BARS_IN_MODULE;r++){let i=0;for(;(t&1)===n;)i+=1,t>>=1;n=t&1,ut.RATIOS_TABLE[e]||(ut.RATIOS_TABLE[e]=new Array(Q.BARS_IN_MODULE)),ut.RATIOS_TABLE[e][Q.BARS_IN_MODULE-r-1]=Math.fround(i/Q.MODULES_IN_CODEWORD)}}this.bSymbolTableReady=!0}static getDecodedValue(e){let t=ut.getDecodedCodewordValue(ut.sampleBitCounts(e));return t!==-1?t:ut.getClosestDecodedValue(e)}static sampleBitCounts(e){let t=he.sum(e),n=new Int32Array(Q.BARS_IN_MODULE),r=0,i=0;for(let s=0;s<Q.MODULES_IN_CODEWORD;s++){let o=t/(2*Q.MODULES_IN_CODEWORD)+s*t/Q.MODULES_IN_CODEWORD;i+e[r]<=o&&(i+=e[r],r++),n[r]++}return n}static getDecodedCodewordValue(e){let t=ut.getBitValue(e);return Q.getCodeword(t)===-1?-1:t}static getBitValue(e){let t=0;for(let n=0;n<e.length;n++)for(let r=0;r<e[n];r++)t=t<<1|(n%2===0?1:0);return Math.trunc(t)}static getClosestDecodedValue(e){let t=he.sum(e),n=new Array(Q.BARS_IN_MODULE);if(t>1)for(let s=0;s<n.length;s++)n[s]=Math.fround(e[s]/t);let r=vn.MAX_VALUE,i=-1;this.bSymbolTableReady||ut.initialize();for(let s=0;s<ut.RATIOS_TABLE.length;s++){let o=0,a=ut.RATIOS_TABLE[s];for(let l=0;l<Q.BARS_IN_MODULE;l++){let c=Math.fround(a[l]-n[l]);if(o+=Math.fround(c*c),o>=r)break}o<r&&(r=o,i=Q.SYMBOL_TABLE[s])}return i}}ut.bSymbolTableReady=!1,ut.RATIOS_TABLE=new Array(Q.SYMBOL_TABLE.length).map(u=>new Array(Q.BARS_IN_MODULE));class Qr{constructor(){this.segmentCount=-1,this.fileSize=-1,this.timestamp=-1,this.checksum=-1}getSegmentIndex(){return this.segmentIndex}setSegmentIndex(e){this.segmentIndex=e}getFileId(){return this.fileId}setFileId(e){this.fileId=e}getOptionalData(){return this.optionalData}setOptionalData(e){this.optionalData=e}isLastSegment(){return this.lastSegment}setLastSegment(e){this.lastSegment=e}getSegmentCount(){return this.segmentCount}setSegmentCount(e){this.segmentCount=e}getSender(){return this.sender||null}setSender(e){this.sender=e}getAddressee(){return this.addressee||null}setAddressee(e){this.addressee=e}getFileName(){return this.fileName}setFileName(e){this.fileName=e}getFileSize(){return this.fileSize}setFileSize(e){this.fileSize=e}getChecksum(){return this.checksum}setChecksum(e){this.checksum=e}getTimestamp(){return this.timestamp}setTimestamp(e){this.timestamp=e}}class Jr{static parseLong(e,t=void 0){return parseInt(e,t)}}class $r extends A{}$r.kind="NullPointerException";class As{writeBytes(e){this.writeBytesOffset(e,0,e.length)}writeBytesOffset(e,t,n){if(e==null)throw new $r;if(t<0||t>e.length||n<0||t+n>e.length||t+n<0)throw new et;if(n===0)return;for(let r=0;r<n;r++)this.write(e[t+r])}flush(){}close(){}}class Cs extends A{}class ms extends As{constructor(e=32){if(super(),this.count=0,e<0)throw new R("Negative initial size: "+e);this.buf=new Uint8Array(e)}ensureCapacity(e){e-this.buf.length>0&&this.grow(e)}grow(e){let n=this.buf.length<<1;if(n-e<0&&(n=e),n<0){if(e<0)throw new Cs;n=K.MAX_VALUE}this.buf=Ae.copyOfUint8Array(this.buf,n)}write(e){this.ensureCapacity(this.count+1),this.buf[this.count]=e,this.count+=1}writeBytesOffset(e,t,n){if(t<0||t>e.length||n<0||t+n-e.length>0)throw new et;this.ensureCapacity(this.count+n),te.arraycopy(e,t,this.buf,this.count,n),this.count+=n}writeTo(e){e.writeBytesOffset(this.buf,0,this.count)}reset(){this.count=0}toByteArray(){return Ae.copyOfUint8Array(this.buf,this.count)}size(){return this.count}toString(e){return e?typeof e=="string"?this.toString_string(e):this.toString_number(e):this.toString_void()}toString_void(){return new String(this.buf).toString()}toString_string(e){return new String(this.buf).toString()}toString_number(e){return new String(this.buf).toString()}close(){}}var Ee;(function(u){u[u.ALPHA=0]="ALPHA",u[u.LOWER=1]="LOWER",u[u.MIXED=2]="MIXED",u[u.PUNCT=3]="PUNCT",u[u.ALPHA_SHIFT=4]="ALPHA_SHIFT",u[u.PUNCT_SHIFT=5]="PUNCT_SHIFT"})(Ee||(Ee={}));function ei(){if(typeof window!="undefined")return window.BigInt||null;if(typeof xn!="undefined")return xn.BigInt||null;if(typeof self!="undefined")return self.BigInt||null;throw new Error("Can't search globals for BigInt!")}let Gn;function Ht(u){if(typeof Gn=="undefined"&&(Gn=ei()),Gn===null)throw new Error("BigInt is not supported!");return Gn(u)}function Es(){let u=[];u[0]=Ht(1);let e=Ht(900);u[1]=e;for(let t=2;t<16;t++)u[t]=u[t-1]*e;return u}class N{static decode(e,t){let n=new me(""),r=F.ISO8859_1;n.enableDecoding(r);let i=1,s=e[i++],o=new Qr;for(;i<e[0];){switch(s){case N.TEXT_COMPACTION_MODE_LATCH:i=N.textCompaction(e,i,n);break;case N.BYTE_COMPACTION_MODE_LATCH:case N.BYTE_COMPACTION_MODE_LATCH_6:i=N.byteCompaction(s,e,r,i,n);break;case N.MODE_SHIFT_TO_BYTE_COMPACTION_MODE:n.append(e[i++]);break;case N.NUMERIC_COMPACTION_MODE_LATCH:i=N.numericCompaction(e,i,n);break;case N.ECI_CHARSET:F.getCharacterSetECIByValue(e[i++]);break;case N.ECI_GENERAL_PURPOSE:i+=2;break;case N.ECI_USER_DEFINED:i++;break;case N.BEGIN_MACRO_PDF417_CONTROL_BLOCK:i=N.decodeMacroBlock(e,i,o);break;case N.BEGIN_MACRO_PDF417_OPTIONAL_FIELD:case N.MACRO_PDF417_TERMINATOR:throw new U;default:i--,i=N.textCompaction(e,i,n);break}if(i<e.length)s=e[i++];else throw U.getFormatInstance()}if(n.length()===0)throw U.getFormatInstance();let a=new wn(null,n.toString(),null,t);return a.setOther(o),a}static decodeMacroBlock(e,t,n){if(t+N.NUMBER_OF_SEQUENCE_CODEWORDS>e[0])throw U.getFormatInstance();let r=new Int32Array(N.NUMBER_OF_SEQUENCE_CODEWORDS);for(let o=0;o<N.NUMBER_OF_SEQUENCE_CODEWORDS;o++,t++)r[o]=e[t];n.setSegmentIndex(K.parseInt(N.decodeBase900toBase10(r,N.NUMBER_OF_SEQUENCE_CODEWORDS)));let i=new me;t=N.textCompaction(e,t,i),n.setFileId(i.toString());let s=-1;for(e[t]===N.BEGIN_MACRO_PDF417_OPTIONAL_FIELD&&(s=t+1);t<e[0];)switch(e[t]){case N.BEGIN_MACRO_PDF417_OPTIONAL_FIELD:switch(t++,e[t]){case N.MACRO_PDF417_OPTIONAL_FIELD_FILE_NAME:let o=new me;t=N.textCompaction(e,t+1,o),n.setFileName(o.toString());break;case N.MACRO_PDF417_OPTIONAL_FIELD_SENDER:let a=new me;t=N.textCompaction(e,t+1,a),n.setSender(a.toString());break;case N.MACRO_PDF417_OPTIONAL_FIELD_ADDRESSEE:let l=new me;t=N.textCompaction(e,t+1,l),n.setAddressee(l.toString());break;case N.MACRO_PDF417_OPTIONAL_FIELD_SEGMENT_COUNT:let c=new me;t=N.numericCompaction(e,t+1,c),n.setSegmentCount(K.parseInt(c.toString()));break;case N.MACRO_PDF417_OPTIONAL_FIELD_TIME_STAMP:let f=new me;t=N.numericCompaction(e,t+1,f),n.setTimestamp(Jr.parseLong(f.toString()));break;case N.MACRO_PDF417_OPTIONAL_FIELD_CHECKSUM:let w=new me;t=N.numericCompaction(e,t+1,w),n.setChecksum(K.parseInt(w.toString()));break;case N.MACRO_PDF417_OPTIONAL_FIELD_FILE_SIZE:let E=new me;t=N.numericCompaction(e,t+1,E),n.setFileSize(Jr.parseLong(E.toString()));break;default:throw U.getFormatInstance()}break;case N.MACRO_PDF417_TERMINATOR:t++,n.setLastSegment(!0);break;default:throw U.getFormatInstance()}if(s!==-1){let o=t-s;n.isLastSegment()&&o--,n.setOptionalData(Ae.copyOfRange(e,s,s+o))}return t}static textCompaction(e,t,n){let r=new Int32Array((e[0]-t)*2),i=new Int32Array((e[0]-t)*2),s=0,o=!1;for(;t<e[0]&&!o;){let a=e[t++];if(a<N.TEXT_COMPACTION_MODE_LATCH)r[s]=a/30,r[s+1]=a%30,s+=2;else switch(a){case N.TEXT_COMPACTION_MODE_LATCH:r[s++]=N.TEXT_COMPACTION_MODE_LATCH;break;case N.BYTE_COMPACTION_MODE_LATCH:case N.BYTE_COMPACTION_MODE_LATCH_6:case N.NUMERIC_COMPACTION_MODE_LATCH:case N.BEGIN_MACRO_PDF417_CONTROL_BLOCK:case N.BEGIN_MACRO_PDF417_OPTIONAL_FIELD:case N.MACRO_PDF417_TERMINATOR:t--,o=!0;break;case N.MODE_SHIFT_TO_BYTE_COMPACTION_MODE:r[s]=N.MODE_SHIFT_TO_BYTE_COMPACTION_MODE,a=e[t++],i[s]=a,s++;break}}return N.decodeTextCompaction(r,i,s,n),t}static decodeTextCompaction(e,t,n,r){let i=Ee.ALPHA,s=Ee.ALPHA,o=0;for(;o<n;){let a=e[o],l="";switch(i){case Ee.ALPHA:if(a<26)l=String.fromCharCode(65+a);else switch(a){case 26:l=" ";break;case N.LL:i=Ee.LOWER;break;case N.ML:i=Ee.MIXED;break;case N.PS:s=i,i=Ee.PUNCT_SHIFT;break;case N.MODE_SHIFT_TO_BYTE_COMPACTION_MODE:r.append(t[o]);break;case N.TEXT_COMPACTION_MODE_LATCH:i=Ee.ALPHA;break}break;case Ee.LOWER:if(a<26)l=String.fromCharCode(97+a);else switch(a){case 26:l=" ";break;case N.AS:s=i,i=Ee.ALPHA_SHIFT;break;case N.ML:i=Ee.MIXED;break;case N.PS:s=i,i=Ee.PUNCT_SHIFT;break;case N.MODE_SHIFT_TO_BYTE_COMPACTION_MODE:r.append(t[o]);break;case N.TEXT_COMPACTION_MODE_LATCH:i=Ee.ALPHA;break}break;case Ee.MIXED:if(a<N.PL)l=N.MIXED_CHARS[a];else switch(a){case N.PL:i=Ee.PUNCT;break;case 26:l=" ";break;case N.LL:i=Ee.LOWER;break;case N.AL:i=Ee.ALPHA;break;case N.PS:s=i,i=Ee.PUNCT_SHIFT;break;case N.MODE_SHIFT_TO_BYTE_COMPACTION_MODE:r.append(t[o]);break;case N.TEXT_COMPACTION_MODE_LATCH:i=Ee.ALPHA;break}break;case Ee.PUNCT:if(a<N.PAL)l=N.PUNCT_CHARS[a];else switch(a){case N.PAL:i=Ee.ALPHA;break;case N.MODE_SHIFT_TO_BYTE_COMPACTION_MODE:r.append(t[o]);break;case N.TEXT_COMPACTION_MODE_LATCH:i=Ee.ALPHA;break}break;case Ee.ALPHA_SHIFT:if(i=s,a<26)l=String.fromCharCode(65+a);else switch(a){case 26:l=" ";break;case N.TEXT_COMPACTION_MODE_LATCH:i=Ee.ALPHA;break}break;case Ee.PUNCT_SHIFT:if(i=s,a<N.PAL)l=N.PUNCT_CHARS[a];else switch(a){case N.PAL:i=Ee.ALPHA;break;case N.MODE_SHIFT_TO_BYTE_COMPACTION_MODE:r.append(t[o]);break;case N.TEXT_COMPACTION_MODE_LATCH:i=Ee.ALPHA;break}break}l!==""&&r.append(l),o++}}static byteCompaction(e,t,n,r,i){let s=new ms,o=0,a=0,l=!1;switch(e){case N.BYTE_COMPACTION_MODE_LATCH:let c=new Int32Array(6),f=t[r++];for(;r<t[0]&&!l;)switch(c[o++]=f,a=900*a+f,f=t[r++],f){case N.TEXT_COMPACTION_MODE_LATCH:case N.BYTE_COMPACTION_MODE_LATCH:case N.NUMERIC_COMPACTION_MODE_LATCH:case N.BYTE_COMPACTION_MODE_LATCH_6:case N.BEGIN_MACRO_PDF417_CONTROL_BLOCK:case N.BEGIN_MACRO_PDF417_OPTIONAL_FIELD:case N.MACRO_PDF417_TERMINATOR:r--,l=!0;break;default:if(o%5===0&&o>0){for(let w=0;w<6;++w)s.write(Number(Ht(a)>>Ht(8*(5-w))));a=0,o=0}break}r===t[0]&&f<N.TEXT_COMPACTION_MODE_LATCH&&(c[o++]=f);for(let w=0;w<o;w++)s.write(c[w]);break;case N.BYTE_COMPACTION_MODE_LATCH_6:for(;r<t[0]&&!l;){let w=t[r++];if(w<N.TEXT_COMPACTION_MODE_LATCH)o++,a=900*a+w;else switch(w){case N.TEXT_COMPACTION_MODE_LATCH:case N.BYTE_COMPACTION_MODE_LATCH:case N.NUMERIC_COMPACTION_MODE_LATCH:case N.BYTE_COMPACTION_MODE_LATCH_6:case N.BEGIN_MACRO_PDF417_CONTROL_BLOCK:case N.BEGIN_MACRO_PDF417_OPTIONAL_FIELD:case N.MACRO_PDF417_TERMINATOR:r--,l=!0;break}if(o%5===0&&o>0){for(let E=0;E<6;++E)s.write(Number(Ht(a)>>Ht(8*(5-E))));a=0,o=0}}break}return i.append(at.decode(s.toByteArray(),n)),r}static numericCompaction(e,t,n){let r=0,i=!1,s=new Int32Array(N.MAX_NUMERIC_CODEWORDS);for(;t<e[0]&&!i;){let o=e[t++];if(t===e[0]&&(i=!0),o<N.TEXT_COMPACTION_MODE_LATCH)s[r]=o,r++;else switch(o){case N.TEXT_COMPACTION_MODE_LATCH:case N.BYTE_COMPACTION_MODE_LATCH:case N.BYTE_COMPACTION_MODE_LATCH_6:case N.BEGIN_MACRO_PDF417_CONTROL_BLOCK:case N.BEGIN_MACRO_PDF417_OPTIONAL_FIELD:case N.MACRO_PDF417_TERMINATOR:t--,i=!0;break}(r%N.MAX_NUMERIC_CODEWORDS===0||o===N.NUMERIC_COMPACTION_MODE_LATCH||i)&&r>0&&(n.append(N.decodeBase900toBase10(s,r)),r=0)}return t}static decodeBase900toBase10(e,t){let n=Ht(0);for(let i=0;i<t;i++)n+=N.EXP900[t-i-1]*Ht(e[i]);let r=n.toString();if(r.charAt(0)!=="1")throw new U;return r.substring(1)}}N.TEXT_COMPACTION_MODE_LATCH=900,N.BYTE_COMPACTION_MODE_LATCH=901,N.NUMERIC_COMPACTION_MODE_LATCH=902,N.BYTE_COMPACTION_MODE_LATCH_6=924,N.ECI_USER_DEFINED=925,N.ECI_GENERAL_PURPOSE=926,N.ECI_CHARSET=927,N.BEGIN_MACRO_PDF417_CONTROL_BLOCK=928,N.BEGIN_MACRO_PDF417_OPTIONAL_FIELD=923,N.MACRO_PDF417_TERMINATOR=922,N.MODE_SHIFT_TO_BYTE_COMPACTION_MODE=913,N.MAX_NUMERIC_CODEWORDS=15,N.MACRO_PDF417_OPTIONAL_FIELD_FILE_NAME=0,N.MACRO_PDF417_OPTIONAL_FIELD_SEGMENT_COUNT=1,N.MACRO_PDF417_OPTIONAL_FIELD_TIME_STAMP=2,N.MACRO_PDF417_OPTIONAL_FIELD_SENDER=3,N.MACRO_PDF417_OPTIONAL_FIELD_ADDRESSEE=4,N.MACRO_PDF417_OPTIONAL_FIELD_FILE_SIZE=5,N.MACRO_PDF417_OPTIONAL_FIELD_CHECKSUM=6,N.PL=25,N.LL=27,N.AS=27,N.ML=28,N.AL=28,N.PS=29,N.PAL=29,N.PUNCT_CHARS=`;<>@[\\]_\`~!\r ,:
|
|
17
|
+
-.$/"|*()?{}'`,N.MIXED_CHARS="0123456789&\r ,:#-.$/+%*=^",N.EXP900=ei()?Es():[],N.NUMBER_OF_SEQUENCE_CODEWORDS=2;class se{constructor(){}static decode(e,t,n,r,i,s,o){let a=new jt(e,t,n,r,i),l=null,c=null,f;for(let I=!0;;I=!1){if(t!=null&&(l=se.getRowIndicatorColumn(e,a,t,!0,s,o)),r!=null&&(c=se.getRowIndicatorColumn(e,a,r,!1,s,o)),f=se.merge(l,c),f==null)throw D.getNotFoundInstance();let b=f.getBoundingBox();if(I&&b!=null&&(b.getMinY()<a.getMinY()||b.getMaxY()>a.getMaxY()))a=b;else break}f.setBoundingBox(a);let w=f.getBarcodeColumnCount()+1;f.setDetectionResultColumn(0,l),f.setDetectionResultColumn(w,c);let E=l!=null;for(let I=1;I<=w;I++){let b=E?I:w-I;if(f.getDetectionResultColumn(b)!==void 0)continue;let S;b===0||b===w?S=new qr(a,b===0):S=new In(a),f.setDetectionResultColumn(b,S);let O=-1,L=O;for(let k=a.getMinY();k<=a.getMaxY();k++){if(O=se.getStartColumn(f,b,k,E),O<0||O>a.getMaxX()){if(L===-1)continue;O=L}let P=se.detectCodeword(e,a.getMinX(),a.getMaxX(),E,O,k,s,o);P!=null&&(S.setCodeword(k,P),L=O,s=Math.min(s,P.getWidth()),o=Math.max(o,P.getWidth()))}}return se.createDecoderResult(f)}static merge(e,t){if(e==null&&t==null)return null;let n=se.getBarcodeMetadata(e,t);if(n==null)return null;let r=jt.merge(se.adjustBoundingBox(e),se.adjustBoundingBox(t));return new yn(n,r)}static adjustBoundingBox(e){if(e==null)return null;let t=e.getRowHeights();if(t==null)return null;let n=se.getMax(t),r=0;for(let o of t)if(r+=n-o,o>0)break;let i=e.getCodewords();for(let o=0;r>0&&i[o]==null;o++)r--;let s=0;for(let o=t.length-1;o>=0&&(s+=n-t[o],!(t[o]>0));o--);for(let o=i.length-1;s>0&&i[o]==null;o--)s--;return e.getBoundingBox().addMissingRows(r,s,e.isLeft())}static getMax(e){let t=-1;for(let n of e)t=Math.max(t,n);return t}static getBarcodeMetadata(e,t){let n;if(e==null||(n=e.getBarcodeMetadata())==null)return t==null?null:t.getBarcodeMetadata();let r;return t==null||(r=t.getBarcodeMetadata())==null?n:n.getColumnCount()!==r.getColumnCount()&&n.getErrorCorrectionLevel()!==r.getErrorCorrectionLevel()&&n.getRowCount()!==r.getRowCount()?null:n}static getRowIndicatorColumn(e,t,n,r,i,s){let o=new qr(t,r);for(let a=0;a<2;a++){let l=a===0?1:-1,c=Math.trunc(Math.trunc(n.getX()));for(let f=Math.trunc(Math.trunc(n.getY()));f<=t.getMaxY()&&f>=t.getMinY();f+=l){let w=se.detectCodeword(e,0,e.getWidth(),r,c,f,i,s);w!=null&&(o.setCodeword(f,w),r?c=w.getStartX():c=w.getEndX())}}return o}static adjustCodewordCount(e,t){let n=t[0][1],r=n.getValue(),i=e.getBarcodeColumnCount()*e.getBarcodeRowCount()-se.getNumberOfECCodeWords(e.getBarcodeECLevel());if(r.length===0){if(i<1||i>Q.MAX_CODEWORDS_IN_BARCODE)throw D.getNotFoundInstance();n.setValue(i)}else r[0]!==i&&n.setValue(i)}static createDecoderResult(e){let t=se.createBarcodeMatrix(e);se.adjustCodewordCount(e,t);let n=new Array,r=new Int32Array(e.getBarcodeRowCount()*e.getBarcodeColumnCount()),i=[],s=new Array;for(let a=0;a<e.getBarcodeRowCount();a++)for(let l=0;l<e.getBarcodeColumnCount();l++){let c=t[a][l+1].getValue(),f=a*e.getBarcodeColumnCount()+l;c.length===0?n.push(f):c.length===1?r[f]=c[0]:(s.push(f),i.push(c))}let o=new Array(i.length);for(let a=0;a<o.length;a++)o[a]=i[a];return se.createDecoderResultFromAmbiguousValues(e.getBarcodeECLevel(),r,Q.toIntArray(n),Q.toIntArray(s),o)}static createDecoderResultFromAmbiguousValues(e,t,n,r,i){let s=new Int32Array(r.length),o=100;for(;o-- >0;){for(let a=0;a<s.length;a++)t[r[a]]=i[a][s[a]];try{return se.decodeCodewords(t,e,n)}catch(a){if(!(a instanceof ee))throw a}if(s.length===0)throw ee.getChecksumInstance();for(let a=0;a<s.length;a++)if(s[a]<i[a].length-1){s[a]++;break}else if(s[a]=0,a===s.length-1)throw ee.getChecksumInstance()}throw ee.getChecksumInstance()}static createBarcodeMatrix(e){let t=Array.from({length:e.getBarcodeRowCount()},()=>new Array(e.getBarcodeColumnCount()+2));for(let r=0;r<t.length;r++)for(let i=0;i<t[r].length;i++)t[r][i]=new bn;let n=0;for(let r of e.getDetectionResultColumns()){if(r!=null){for(let i of r.getCodewords())if(i!=null){let s=i.getRowNumber();if(s>=0){if(s>=t.length)continue;t[s][n].setValue(i.getValue())}}}n++}return t}static isValidBarcodeColumn(e,t){return t>=0&&t<=e.getBarcodeColumnCount()+1}static getStartColumn(e,t,n,r){let i=r?1:-1,s=null;if(se.isValidBarcodeColumn(e,t-i)&&(s=e.getDetectionResultColumn(t-i).getCodeword(n)),s!=null)return r?s.getEndX():s.getStartX();if(s=e.getDetectionResultColumn(t).getCodewordNearby(n),s!=null)return r?s.getStartX():s.getEndX();if(se.isValidBarcodeColumn(e,t-i)&&(s=e.getDetectionResultColumn(t-i).getCodewordNearby(n)),s!=null)return r?s.getEndX():s.getStartX();let o=0;for(;se.isValidBarcodeColumn(e,t-i);){t-=i;for(let a of e.getDetectionResultColumn(t).getCodewords())if(a!=null)return(r?a.getEndX():a.getStartX())+i*o*(a.getEndX()-a.getStartX());o++}return r?e.getBoundingBox().getMinX():e.getBoundingBox().getMaxX()}static detectCodeword(e,t,n,r,i,s,o,a){i=se.adjustCodewordStartColumn(e,t,n,r,i,s);let l=se.getModuleBitCount(e,t,n,r,i,s);if(l==null)return null;let c,f=he.sum(l);if(r)c=i+f;else{for(let I=0;I<l.length/2;I++){let b=l[I];l[I]=l[l.length-1-I],l[l.length-1-I]=b}c=i,i=c-f}if(!se.checkCodewordSkew(f,o,a))return null;let w=ut.getDecodedValue(l),E=Q.getCodeword(w);return E===-1?null:new Sn(i,c,se.getCodewordBucketNumber(w),E)}static getModuleBitCount(e,t,n,r,i,s){let o=i,a=new Int32Array(8),l=0,c=r?1:-1,f=r;for(;(r?o<n:o>=t)&&l<a.length;)e.get(o,s)===f?(a[l]++,o+=c):(l++,f=!f);return l===a.length||o===(r?n:t)&&l===a.length-1?a:null}static getNumberOfECCodeWords(e){return 2<<e}static adjustCodewordStartColumn(e,t,n,r,i,s){let o=i,a=r?-1:1;for(let l=0;l<2;l++){for(;(r?o>=t:o<n)&&r===e.get(o,s);){if(Math.abs(i-o)>se.CODEWORD_SKEW_SIZE)return i;o+=a}a=-a,r=!r}return o}static checkCodewordSkew(e,t,n){return t-se.CODEWORD_SKEW_SIZE<=e&&e<=n+se.CODEWORD_SKEW_SIZE}static decodeCodewords(e,t,n){if(e.length===0)throw U.getFormatInstance();let r=1<<t+1,i=se.correctErrors(e,n,r);se.verifyCodewordCount(e,r);let s=N.decode(e,""+t);return s.setErrorsCorrected(i),s.setErasures(n.length),s}static correctErrors(e,t,n){if(t!=null&&t.length>n/2+se.MAX_ERRORS||n<0||n>se.MAX_EC_CODEWORDS)throw ee.getChecksumInstance();return se.errorCorrection.decode(e,n,t)}static verifyCodewordCount(e,t){if(e.length<4)throw U.getFormatInstance();let n=e[0];if(n>e.length)throw U.getFormatInstance();if(n===0)if(t<e.length)e[0]=e.length-t;else throw U.getFormatInstance()}static getBitCountForCodeword(e){let t=new Int32Array(8),n=0,r=t.length-1;for(;!((e&1)!==n&&(n=e&1,r--,r<0));)t[r]++,e>>=1;return t}static getCodewordBucketNumber(e){return e instanceof Int32Array?this.getCodewordBucketNumber_Int32Array(e):this.getCodewordBucketNumber_number(e)}static getCodewordBucketNumber_number(e){return se.getCodewordBucketNumber(se.getBitCountForCodeword(e))}static getCodewordBucketNumber_Int32Array(e){return(e[0]-e[2]+e[4]-e[6]+9)%9}static toString(e){let t=new pn;for(let n=0;n<e.length;n++){t.format("Row %2d: ",n);for(let r=0;r<e[n].length;r++){let i=e[n][r];i.getValue().length===0?t.format(" ",null):t.format("%4d(%2d)",i.getValue()[0],i.getConfidence(i.getValue()[0]))}t.format("%n")}return t.toString()}}se.CODEWORD_SKEW_SIZE=2,se.MAX_ERRORS=3,se.MAX_EC_CODEWORDS=512,se.errorCorrection=new jr;class je{decode(e,t=null){let n=je.decode(e,t,!1);if(n==null||n.length===0||n[0]==null)throw D.getNotFoundInstance();return n[0]}decodeMultiple(e,t=null){try{return je.decode(e,t,!0)}catch(n){throw n instanceof U||n instanceof ee?D.getNotFoundInstance():n}}static decode(e,t,n){const r=new Array,i=ie.detectMultiple(e,t,n);for(const s of i.getPoints()){const o=se.decode(i.getBits(),s[4],s[5],s[6],s[7],je.getMinCodewordWidth(s),je.getMaxCodewordWidth(s)),a=new nt(o.getText(),o.getRawBytes(),void 0,s,j.PDF_417);a.putMetadata(He.ERROR_CORRECTION_LEVEL,o.getECLevel());const l=o.getOther();l!=null&&a.putMetadata(He.PDF417_EXTRA_METADATA,l),r.push(a)}return r.map(s=>s)}static getMaxWidth(e,t){return e==null||t==null?0:Math.trunc(Math.abs(e.getX()-t.getX()))}static getMinWidth(e,t){return e==null||t==null?K.MAX_VALUE:Math.trunc(Math.abs(e.getX()-t.getX()))}static getMaxCodewordWidth(e){return Math.floor(Math.max(Math.max(je.getMaxWidth(e[0],e[4]),je.getMaxWidth(e[6],e[2])*Q.MODULES_IN_CODEWORD/Q.MODULES_IN_STOP_PATTERN),Math.max(je.getMaxWidth(e[1],e[5]),je.getMaxWidth(e[7],e[3])*Q.MODULES_IN_CODEWORD/Q.MODULES_IN_STOP_PATTERN)))}static getMinCodewordWidth(e){return Math.floor(Math.min(Math.min(je.getMinWidth(e[0],e[4]),je.getMinWidth(e[6],e[2])*Q.MODULES_IN_CODEWORD/Q.MODULES_IN_STOP_PATTERN),Math.min(je.getMinWidth(e[1],e[5]),je.getMinWidth(e[7],e[3])*Q.MODULES_IN_CODEWORD/Q.MODULES_IN_STOP_PATTERN)))}reset(){}}class Wn extends A{}Wn.kind="ReaderException";class ti{constructor(e,t){this.verbose=e===!0,t&&this.setHints(t)}decode(e,t){return t&&this.setHints(t),this.decodeInternal(e)}decodeWithState(e){return(this.readers===null||this.readers===void 0)&&this.setHints(null),this.decodeInternal(e)}setHints(e){this.hints=e;const t=!m(e)&&e.get(Ce.TRY_HARDER)===!0,n=m(e)?null:e.get(Ce.POSSIBLE_FORMATS),r=new Array;if(!m(n)){const i=n.some(s=>s===j.UPC_A||s===j.UPC_E||s===j.EAN_13||s===j.EAN_8||s===j.CODABAR||s===j.CODE_39||s===j.CODE_93||s===j.CODE_128||s===j.ITF||s===j.RSS_14||s===j.RSS_EXPANDED);i&&!t&&r.push(new an(e,this.verbose)),n.includes(j.QR_CODE)&&r.push(new Wt),n.includes(j.DATA_MATRIX)&&r.push(new Gt),n.includes(j.AZTEC)&&r.push(new Ln),n.includes(j.PDF_417)&&r.push(new je),i&&t&&r.push(new an(e,this.verbose))}r.length===0&&(t||r.push(new an(e,this.verbose)),r.push(new Wt),r.push(new Gt),r.push(new Ln),r.push(new je),t&&r.push(new an(e,this.verbose))),this.readers=r}reset(){if(this.readers!==null)for(const e of this.readers)e.reset()}decodeInternal(e){if(this.readers===null)throw new Wn("No readers where selected, nothing can be read.");for(const t of this.readers)try{return t.decode(e,this.hints)}catch(n){if(n instanceof Wn)continue}throw new D("No MultiFormat Readers were able to detect the code.")}}class ps extends zt{constructor(e=null,t=500){const n=new ti;n.setHints(e),super(n,t)}decodeBitmap(e){return this.reader.decodeWithState(e)}}class Is extends zt{constructor(e=500){super(new je,e)}}class bs extends zt{constructor(e=500){super(new Wt,e)}}var dr;(function(u){u[u.ERROR_CORRECTION=0]="ERROR_CORRECTION",u[u.CHARACTER_SET=1]="CHARACTER_SET",u[u.DATA_MATRIX_SHAPE=2]="DATA_MATRIX_SHAPE",u[u.MIN_SIZE=3]="MIN_SIZE",u[u.MAX_SIZE=4]="MAX_SIZE",u[u.MARGIN=5]="MARGIN",u[u.PDF417_COMPACT=6]="PDF417_COMPACT",u[u.PDF417_COMPACTION=7]="PDF417_COMPACTION",u[u.PDF417_DIMENSIONS=8]="PDF417_DIMENSIONS",u[u.AZTEC_LAYERS=9]="AZTEC_LAYERS",u[u.QR_VERSION=10]="QR_VERSION"})(dr||(dr={}));var Ve=dr;class xr{constructor(e){this.field=e,this.cachedGenerators=[],this.cachedGenerators.push(new lt(e,Int32Array.from([1])))}buildGenerator(e){const t=this.cachedGenerators;if(e>=t.length){let n=t[t.length-1];const r=this.field;for(let i=t.length;i<=e;i++){const s=n.multiply(new lt(r,Int32Array.from([1,r.exp(i-1+r.getGeneratorBase())])));t.push(s),n=s}}return t[e]}encode(e,t){if(t===0)throw new R("No error correction bytes");const n=e.length-t;if(n<=0)throw new R("No data bytes provided");const r=this.buildGenerator(t),i=new Int32Array(n);te.arraycopy(e,0,i,0,n);let s=new lt(this.field,i);s=s.multiplyByMonomial(t,1);const a=s.divide(r)[1].getCoefficients(),l=t-a.length;for(let c=0;c<l;c++)e[n+c]=0;te.arraycopy(a,0,e,n+l,a.length)}}class Pe{constructor(){}static applyMaskPenaltyRule1(e){return Pe.applyMaskPenaltyRule1Internal(e,!0)+Pe.applyMaskPenaltyRule1Internal(e,!1)}static applyMaskPenaltyRule2(e){let t=0;const n=e.getArray(),r=e.getWidth(),i=e.getHeight();for(let s=0;s<i-1;s++){const o=n[s];for(let a=0;a<r-1;a++){const l=o[a];l===o[a+1]&&l===n[s+1][a]&&l===n[s+1][a+1]&&t++}}return Pe.N2*t}static applyMaskPenaltyRule3(e){let t=0;const n=e.getArray(),r=e.getWidth(),i=e.getHeight();for(let s=0;s<i;s++)for(let o=0;o<r;o++){const a=n[s];o+6<r&&a[o]===1&&a[o+1]===0&&a[o+2]===1&&a[o+3]===1&&a[o+4]===1&&a[o+5]===0&&a[o+6]===1&&(Pe.isWhiteHorizontal(a,o-4,o)||Pe.isWhiteHorizontal(a,o+7,o+11))&&t++,s+6<i&&n[s][o]===1&&n[s+1][o]===0&&n[s+2][o]===1&&n[s+3][o]===1&&n[s+4][o]===1&&n[s+5][o]===0&&n[s+6][o]===1&&(Pe.isWhiteVertical(n,o,s-4,s)||Pe.isWhiteVertical(n,o,s+7,s+11))&&t++}return t*Pe.N3}static isWhiteHorizontal(e,t,n){t=Math.max(t,0),n=Math.min(n,e.length);for(let r=t;r<n;r++)if(e[r]===1)return!1;return!0}static isWhiteVertical(e,t,n,r){n=Math.max(n,0),r=Math.min(r,e.length);for(let i=n;i<r;i++)if(e[i][t]===1)return!1;return!0}static applyMaskPenaltyRule4(e){let t=0;const n=e.getArray(),r=e.getWidth(),i=e.getHeight();for(let a=0;a<i;a++){const l=n[a];for(let c=0;c<r;c++)l[c]===1&&t++}const s=e.getHeight()*e.getWidth();return Math.floor(Math.abs(t*2-s)*10/s)*Pe.N4}static getDataMaskBit(e,t,n){let r,i;switch(e){case 0:r=n+t&1;break;case 1:r=n&1;break;case 2:r=t%3;break;case 3:r=(n+t)%3;break;case 4:r=Math.floor(n/2)+Math.floor(t/3)&1;break;case 5:i=n*t,r=(i&1)+i%3;break;case 6:i=n*t,r=(i&1)+i%3&1;break;case 7:i=n*t,r=i%3+(n+t&1)&1;break;default:throw new R("Invalid mask pattern: "+e)}return r===0}static applyMaskPenaltyRule1Internal(e,t){let n=0;const r=t?e.getHeight():e.getWidth(),i=t?e.getWidth():e.getHeight(),s=e.getArray();for(let o=0;o<r;o++){let a=0,l=-1;for(let c=0;c<i;c++){const f=t?s[o][c]:s[c][o];f===l?a++:(a>=5&&(n+=Pe.N1+(a-5)),a=1,l=f)}a>=5&&(n+=Pe.N1+(a-5))}return n}}Pe.N1=3,Pe.N2=3,Pe.N3=40,Pe.N4=10;class Hn{constructor(e,t){this.width=e,this.height=t;const n=new Array(t);for(let r=0;r!==t;r++)n[r]=new Uint8Array(e);this.bytes=n}getHeight(){return this.height}getWidth(){return this.width}get(e,t){return this.bytes[t][e]}getArray(){return this.bytes}setNumber(e,t,n){this.bytes[t][e]=n}setBoolean(e,t,n){this.bytes[t][e]=n?1:0}clear(e){for(const t of this.bytes)Ae.fill(t,e)}equals(e){if(!(e instanceof Hn))return!1;const t=e;if(this.width!==t.width||this.height!==t.height)return!1;for(let n=0,r=this.height;n<r;++n){const i=this.bytes[n],s=t.bytes[n];for(let o=0,a=this.width;o<a;++o)if(i[o]!==s[o])return!1}return!0}toString(){const e=new me;for(let t=0,n=this.height;t<n;++t){const r=this.bytes[t];for(let i=0,s=this.width;i<s;++i)switch(r[i]){case 0:e.append(" 0");break;case 1:e.append(" 1");break;default:e.append(" ");break}e.append(`
|
|
18
|
+
`)}return e.toString()}}class qt{constructor(){this.maskPattern=-1}getMode(){return this.mode}getECLevel(){return this.ecLevel}getVersion(){return this.version}getMaskPattern(){return this.maskPattern}getMatrix(){return this.matrix}toString(){const e=new me;return e.append(`<<
|
|
19
|
+
`),e.append(" mode: "),e.append(this.mode?this.mode.toString():"null"),e.append(`
|
|
20
|
+
ecLevel: `),e.append(this.ecLevel?this.ecLevel.toString():"null"),e.append(`
|
|
21
|
+
version: `),e.append(this.version?this.version.toString():"null"),e.append(`
|
|
22
|
+
maskPattern: `),e.append(this.maskPattern.toString()),this.matrix?(e.append(`
|
|
23
|
+
matrix:
|
|
24
|
+
`),e.append(this.matrix.toString())):e.append(`
|
|
25
|
+
matrix: null
|
|
26
|
+
`),e.append(`>>
|
|
27
|
+
`),e.toString()}setMode(e){this.mode=e}setECLevel(e){this.ecLevel=e}setVersion(e){this.version=e}setMaskPattern(e){this.maskPattern=e}setMatrix(e){this.matrix=e}static isValidMaskPattern(e){return e>=0&&e<qt.NUM_MASK_PATTERNS}}qt.NUM_MASK_PATTERNS=8;class Ie extends A{}Ie.kind="WriterException";class q{constructor(){}static clearMatrix(e){e.clear(255)}static buildMatrix(e,t,n,r,i){q.clearMatrix(i),q.embedBasicPatterns(n,i),q.embedTypeInfo(t,r,i),q.maybeEmbedVersionInfo(n,i),q.embedDataBits(e,r,i)}static embedBasicPatterns(e,t){q.embedPositionDetectionPatternsAndSeparators(t),q.embedDarkDotAtLeftBottomCorner(t),q.maybeEmbedPositionAdjustmentPatterns(e,t),q.embedTimingPatterns(t)}static embedTypeInfo(e,t,n){const r=new le;q.makeTypeInfoBits(e,t,r);for(let i=0,s=r.getSize();i<s;++i){const o=r.get(r.getSize()-1-i),a=q.TYPE_INFO_COORDINATES[i],l=a[0],c=a[1];if(n.setBoolean(l,c,o),i<8){const f=n.getWidth()-i-1,w=8;n.setBoolean(f,w,o)}else{const w=n.getHeight()-7+(i-8);n.setBoolean(8,w,o)}}}static maybeEmbedVersionInfo(e,t){if(e.getVersionNumber()<7)return;const n=new le;q.makeVersionInfoBits(e,n);let r=6*3-1;for(let i=0;i<6;++i)for(let s=0;s<3;++s){const o=n.get(r);r--,t.setBoolean(i,t.getHeight()-11+s,o),t.setBoolean(t.getHeight()-11+s,i,o)}}static embedDataBits(e,t,n){let r=0,i=-1,s=n.getWidth()-1,o=n.getHeight()-1;for(;s>0;){for(s===6&&(s-=1);o>=0&&o<n.getHeight();){for(let a=0;a<2;++a){const l=s-a;if(!q.isEmpty(n.get(l,o)))continue;let c;r<e.getSize()?(c=e.get(r),++r):c=!1,t!==255&&Pe.getDataMaskBit(t,l,o)&&(c=!c),n.setBoolean(l,o,c)}o+=i}i=-i,o+=i,s-=2}if(r!==e.getSize())throw new Ie("Not all bits consumed: "+r+"/"+e.getSize())}static findMSBSet(e){return 32-K.numberOfLeadingZeros(e)}static calculateBCHCode(e,t){if(t===0)throw new R("0 polynomial");const n=q.findMSBSet(t);for(e<<=n-1;q.findMSBSet(e)>=n;)e^=t<<q.findMSBSet(e)-n;return e}static makeTypeInfoBits(e,t,n){if(!qt.isValidMaskPattern(t))throw new Ie("Invalid mask pattern");const r=e.getBits()<<3|t;n.appendBits(r,5);const i=q.calculateBCHCode(r,q.TYPE_INFO_POLY);n.appendBits(i,10);const s=new le;if(s.appendBits(q.TYPE_INFO_MASK_PATTERN,15),n.xor(s),n.getSize()!==15)throw new Ie("should not happen but we got: "+n.getSize())}static makeVersionInfoBits(e,t){t.appendBits(e.getVersionNumber(),6);const n=q.calculateBCHCode(e.getVersionNumber(),q.VERSION_INFO_POLY);if(t.appendBits(n,12),t.getSize()!==18)throw new Ie("should not happen but we got: "+t.getSize())}static isEmpty(e){return e===255}static embedTimingPatterns(e){for(let t=8;t<e.getWidth()-8;++t){const n=(t+1)%2;q.isEmpty(e.get(t,6))&&e.setNumber(t,6,n),q.isEmpty(e.get(6,t))&&e.setNumber(6,t,n)}}static embedDarkDotAtLeftBottomCorner(e){if(e.get(8,e.getHeight()-8)===0)throw new Ie;e.setNumber(8,e.getHeight()-8,1)}static embedHorizontalSeparationPattern(e,t,n){for(let r=0;r<8;++r){if(!q.isEmpty(n.get(e+r,t)))throw new Ie;n.setNumber(e+r,t,0)}}static embedVerticalSeparationPattern(e,t,n){for(let r=0;r<7;++r){if(!q.isEmpty(n.get(e,t+r)))throw new Ie;n.setNumber(e,t+r,0)}}static embedPositionAdjustmentPattern(e,t,n){for(let r=0;r<5;++r){const i=q.POSITION_ADJUSTMENT_PATTERN[r];for(let s=0;s<5;++s)n.setNumber(e+s,t+r,i[s])}}static embedPositionDetectionPattern(e,t,n){for(let r=0;r<7;++r){const i=q.POSITION_DETECTION_PATTERN[r];for(let s=0;s<7;++s)n.setNumber(e+s,t+r,i[s])}}static embedPositionDetectionPatternsAndSeparators(e){const t=q.POSITION_DETECTION_PATTERN[0].length;q.embedPositionDetectionPattern(0,0,e),q.embedPositionDetectionPattern(e.getWidth()-t,0,e),q.embedPositionDetectionPattern(0,e.getWidth()-t,e);const n=8;q.embedHorizontalSeparationPattern(0,n-1,e),q.embedHorizontalSeparationPattern(e.getWidth()-n,n-1,e),q.embedHorizontalSeparationPattern(0,e.getWidth()-n,e);const r=7;q.embedVerticalSeparationPattern(r,0,e),q.embedVerticalSeparationPattern(e.getHeight()-r-1,0,e),q.embedVerticalSeparationPattern(r,e.getHeight()-r,e)}static maybeEmbedPositionAdjustmentPatterns(e,t){if(e.getVersionNumber()<2)return;const n=e.getVersionNumber()-1,r=q.POSITION_ADJUSTMENT_PATTERN_COORDINATE_TABLE[n];for(let i=0,s=r.length;i!==s;i++){const o=r[i];if(o>=0)for(let a=0;a!==s;a++){const l=r[a];l>=0&&q.isEmpty(t.get(l,o))&&q.embedPositionAdjustmentPattern(l-2,o-2,t)}}}}q.POSITION_DETECTION_PATTERN=Array.from([Int32Array.from([1,1,1,1,1,1,1]),Int32Array.from([1,0,0,0,0,0,1]),Int32Array.from([1,0,1,1,1,0,1]),Int32Array.from([1,0,1,1,1,0,1]),Int32Array.from([1,0,1,1,1,0,1]),Int32Array.from([1,0,0,0,0,0,1]),Int32Array.from([1,1,1,1,1,1,1])]),q.POSITION_ADJUSTMENT_PATTERN=Array.from([Int32Array.from([1,1,1,1,1]),Int32Array.from([1,0,0,0,1]),Int32Array.from([1,0,1,0,1]),Int32Array.from([1,0,0,0,1]),Int32Array.from([1,1,1,1,1])]),q.POSITION_ADJUSTMENT_PATTERN_COORDINATE_TABLE=Array.from([Int32Array.from([-1,-1,-1,-1,-1,-1,-1]),Int32Array.from([6,18,-1,-1,-1,-1,-1]),Int32Array.from([6,22,-1,-1,-1,-1,-1]),Int32Array.from([6,26,-1,-1,-1,-1,-1]),Int32Array.from([6,30,-1,-1,-1,-1,-1]),Int32Array.from([6,34,-1,-1,-1,-1,-1]),Int32Array.from([6,22,38,-1,-1,-1,-1]),Int32Array.from([6,24,42,-1,-1,-1,-1]),Int32Array.from([6,26,46,-1,-1,-1,-1]),Int32Array.from([6,28,50,-1,-1,-1,-1]),Int32Array.from([6,30,54,-1,-1,-1,-1]),Int32Array.from([6,32,58,-1,-1,-1,-1]),Int32Array.from([6,34,62,-1,-1,-1,-1]),Int32Array.from([6,26,46,66,-1,-1,-1]),Int32Array.from([6,26,48,70,-1,-1,-1]),Int32Array.from([6,26,50,74,-1,-1,-1]),Int32Array.from([6,30,54,78,-1,-1,-1]),Int32Array.from([6,30,56,82,-1,-1,-1]),Int32Array.from([6,30,58,86,-1,-1,-1]),Int32Array.from([6,34,62,90,-1,-1,-1]),Int32Array.from([6,28,50,72,94,-1,-1]),Int32Array.from([6,26,50,74,98,-1,-1]),Int32Array.from([6,30,54,78,102,-1,-1]),Int32Array.from([6,28,54,80,106,-1,-1]),Int32Array.from([6,32,58,84,110,-1,-1]),Int32Array.from([6,30,58,86,114,-1,-1]),Int32Array.from([6,34,62,90,118,-1,-1]),Int32Array.from([6,26,50,74,98,122,-1]),Int32Array.from([6,30,54,78,102,126,-1]),Int32Array.from([6,26,52,78,104,130,-1]),Int32Array.from([6,30,56,82,108,134,-1]),Int32Array.from([6,34,60,86,112,138,-1]),Int32Array.from([6,30,58,86,114,142,-1]),Int32Array.from([6,34,62,90,118,146,-1]),Int32Array.from([6,30,54,78,102,126,150]),Int32Array.from([6,24,50,76,102,128,154]),Int32Array.from([6,28,54,80,106,132,158]),Int32Array.from([6,32,58,84,110,136,162]),Int32Array.from([6,26,54,82,110,138,166]),Int32Array.from([6,30,58,86,114,142,170])]),q.TYPE_INFO_COORDINATES=Array.from([Int32Array.from([8,0]),Int32Array.from([8,1]),Int32Array.from([8,2]),Int32Array.from([8,3]),Int32Array.from([8,4]),Int32Array.from([8,5]),Int32Array.from([8,7]),Int32Array.from([8,8]),Int32Array.from([7,8]),Int32Array.from([5,8]),Int32Array.from([4,8]),Int32Array.from([3,8]),Int32Array.from([2,8]),Int32Array.from([1,8]),Int32Array.from([0,8])]),q.VERSION_INFO_POLY=7973,q.TYPE_INFO_POLY=1335,q.TYPE_INFO_MASK_PATTERN=21522;class ys{constructor(e,t){this.dataBytes=e,this.errorCorrectionBytes=t}getDataBytes(){return this.dataBytes}getErrorCorrectionBytes(){return this.errorCorrectionBytes}}class _e{constructor(){}static calculateMaskPenalty(e){return Pe.applyMaskPenaltyRule1(e)+Pe.applyMaskPenaltyRule2(e)+Pe.applyMaskPenaltyRule3(e)+Pe.applyMaskPenaltyRule4(e)}static encode(e,t,n=null){let r=_e.DEFAULT_BYTE_MODE_ENCODING;const i=n!==null&&n.get(Ve.CHARACTER_SET)!==void 0;i&&(r=n.get(Ve.CHARACTER_SET).toString());const s=this.chooseMode(e,r),o=new le;if(s===Z.BYTE&&(i||_e.DEFAULT_BYTE_MODE_ENCODING!==r)){const k=F.getCharacterSetECIByName(r);k!==void 0&&this.appendECI(k,o)}this.appendModeInfo(s,o);const a=new le;this.appendBytes(e,s,a,r);let l;if(n!==null&&n.get(Ve.QR_VERSION)!==void 0){const k=Number.parseInt(n.get(Ve.QR_VERSION).toString(),10);l=Y.getVersionForNumber(k);const P=this.calculateBitsNeeded(s,o,a,l);if(!this.willFit(P,l,t))throw new Ie("Data too big for requested version")}else l=this.recommendVersion(t,s,o,a);const c=new le;c.appendBitArray(o);const f=s===Z.BYTE?a.getSizeInBytes():e.length;this.appendLengthInfo(f,l,s,c),c.appendBitArray(a);const w=l.getECBlocksForLevel(t),E=l.getTotalCodewords()-w.getTotalECCodewords();this.terminateBits(E,c);const I=this.interleaveWithECBytes(c,l.getTotalCodewords(),E,w.getNumBlocks()),b=new qt;b.setECLevel(t),b.setMode(s),b.setVersion(l);const S=l.getDimensionForVersion(),O=new Hn(S,S),L=this.chooseMaskPattern(I,t,l,O);return b.setMaskPattern(L),q.buildMatrix(I,t,l,L,O),b.setMatrix(O),b}static recommendVersion(e,t,n,r){const i=this.calculateBitsNeeded(t,n,r,Y.getVersionForNumber(1)),s=this.chooseVersion(i,e),o=this.calculateBitsNeeded(t,n,r,s);return this.chooseVersion(o,e)}static calculateBitsNeeded(e,t,n,r){return t.getSize()+e.getCharacterCountBits(r)+n.getSize()}static getAlphanumericCode(e){return e<_e.ALPHANUMERIC_TABLE.length?_e.ALPHANUMERIC_TABLE[e]:-1}static chooseMode(e,t=null){if(F.SJIS.getName()===t&&this.isOnlyDoubleByteKanji(e))return Z.KANJI;let n=!1,r=!1;for(let i=0,s=e.length;i<s;++i){const o=e.charAt(i);if(_e.isDigit(o))n=!0;else if(this.getAlphanumericCode(o.charCodeAt(0))!==-1)r=!0;else return Z.BYTE}return r?Z.ALPHANUMERIC:n?Z.NUMERIC:Z.BYTE}static isOnlyDoubleByteKanji(e){let t;try{t=at.encode(e,F.SJIS)}catch(r){return!1}const n=t.length;if(n%2!==0)return!1;for(let r=0;r<n;r+=2){const i=t[r]&255;if((i<129||i>159)&&(i<224||i>235))return!1}return!0}static chooseMaskPattern(e,t,n,r){let i=Number.MAX_SAFE_INTEGER,s=-1;for(let o=0;o<qt.NUM_MASK_PATTERNS;o++){q.buildMatrix(e,t,n,o,r);let a=this.calculateMaskPenalty(r);a<i&&(i=a,s=o)}return s}static chooseVersion(e,t){for(let n=1;n<=40;n++){const r=Y.getVersionForNumber(n);if(_e.willFit(e,r,t))return r}throw new Ie("Data too big")}static willFit(e,t,n){const r=t.getTotalCodewords(),s=t.getECBlocksForLevel(n).getTotalECCodewords(),o=r-s,a=(e+7)/8;return o>=a}static terminateBits(e,t){const n=e*8;if(t.getSize()>n)throw new Ie("data bits cannot fit in the QR Code"+t.getSize()+" > "+n);for(let s=0;s<4&&t.getSize()<n;++s)t.appendBit(!1);const r=t.getSize()&7;if(r>0)for(let s=r;s<8;s++)t.appendBit(!1);const i=e-t.getSizeInBytes();for(let s=0;s<i;++s)t.appendBits(s&1?17:236,8);if(t.getSize()!==n)throw new Ie("Bits size does not equal capacity")}static getNumDataBytesAndNumECBytesForBlockID(e,t,n,r,i,s){if(r>=n)throw new Ie("Block ID too large");const o=e%n,a=n-o,l=Math.floor(e/n),c=l+1,f=Math.floor(t/n),w=f+1,E=l-f,I=c-w;if(E!==I)throw new Ie("EC bytes mismatch");if(n!==a+o)throw new Ie("RS blocks mismatch");if(e!==(f+E)*a+(w+I)*o)throw new Ie("Total bytes mismatch");r<a?(i[0]=f,s[0]=E):(i[0]=w,s[0]=I)}static interleaveWithECBytes(e,t,n,r){if(e.getSizeInBytes()!==n)throw new Ie("Number of bits and data bytes does not match");let i=0,s=0,o=0;const a=new Array;for(let c=0;c<r;++c){const f=new Int32Array(1),w=new Int32Array(1);_e.getNumDataBytesAndNumECBytesForBlockID(t,n,r,c,f,w);const E=f[0],I=new Uint8Array(E);e.toBytes(8*i,I,0,E);const b=_e.generateECBytes(I,w[0]);a.push(new ys(I,b)),s=Math.max(s,E),o=Math.max(o,b.length),i+=f[0]}if(n!==i)throw new Ie("Data bytes does not match offset");const l=new le;for(let c=0;c<s;++c)for(const f of a){const w=f.getDataBytes();c<w.length&&l.appendBits(w[c],8)}for(let c=0;c<o;++c)for(const f of a){const w=f.getErrorCorrectionBytes();c<w.length&&l.appendBits(w[c],8)}if(t!==l.getSizeInBytes())throw new Ie("Interleaving error: "+t+" and "+l.getSizeInBytes()+" differ.");return l}static generateECBytes(e,t){const n=e.length,r=new Int32Array(n+t);for(let s=0;s<n;s++)r[s]=e[s]&255;new xr(fe.QR_CODE_FIELD_256).encode(r,t);const i=new Uint8Array(t);for(let s=0;s<t;s++)i[s]=r[n+s];return i}static appendModeInfo(e,t){t.appendBits(e.getBits(),4)}static appendLengthInfo(e,t,n,r){const i=n.getCharacterCountBits(t);if(e>=1<<i)throw new Ie(e+" is bigger than "+((1<<i)-1));r.appendBits(e,i)}static appendBytes(e,t,n,r){switch(t){case Z.NUMERIC:_e.appendNumericBytes(e,n);break;case Z.ALPHANUMERIC:_e.appendAlphanumericBytes(e,n);break;case Z.BYTE:_e.append8BitBytes(e,n,r);break;case Z.KANJI:_e.appendKanjiBytes(e,n);break;default:throw new Ie("Invalid mode: "+t)}}static getDigit(e){return e.charCodeAt(0)-48}static isDigit(e){const t=_e.getDigit(e);return t>=0&&t<=9}static appendNumericBytes(e,t){const n=e.length;let r=0;for(;r<n;){const i=_e.getDigit(e.charAt(r));if(r+2<n){const s=_e.getDigit(e.charAt(r+1)),o=_e.getDigit(e.charAt(r+2));t.appendBits(i*100+s*10+o,10),r+=3}else if(r+1<n){const s=_e.getDigit(e.charAt(r+1));t.appendBits(i*10+s,7),r+=2}else t.appendBits(i,4),r++}}static appendAlphanumericBytes(e,t){const n=e.length;let r=0;for(;r<n;){const i=_e.getAlphanumericCode(e.charCodeAt(r));if(i===-1)throw new Ie;if(r+1<n){const s=_e.getAlphanumericCode(e.charCodeAt(r+1));if(s===-1)throw new Ie;t.appendBits(i*45+s,11),r+=2}else t.appendBits(i,6),r++}}static append8BitBytes(e,t,n){let r;try{r=at.encode(e,n)}catch(i){throw new Ie(i)}for(let i=0,s=r.length;i!==s;i++){const o=r[i];t.appendBits(o,8)}}static appendKanjiBytes(e,t){let n;try{n=at.encode(e,F.SJIS)}catch(i){throw new Ie(i)}const r=n.length;for(let i=0;i<r;i+=2){const s=n[i]&255,o=n[i+1]&255,a=s<<8&4294967295|o;let l=-1;if(a>=33088&&a<=40956?l=a-33088:a>=57408&&a<=60351&&(l=a-49472),l===-1)throw new Ie("Invalid byte sequence");const c=(l>>8)*192+(l&255);t.appendBits(c,13)}}static appendECI(e,t){t.appendBits(Z.ECI.getBits(),4),t.appendBits(e.getValue(),8)}}_e.ALPHANUMERIC_TABLE=Int32Array.from([-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,36,-1,-1,-1,37,38,-1,-1,-1,-1,39,40,-1,41,42,43,0,1,2,3,4,5,6,7,8,9,44,-1,-1,-1,-1,-1,-1,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,-1,-1,-1,-1,-1]),_e.DEFAULT_BYTE_MODE_ENCODING=F.UTF8.getName();class Qt{write(e,t,n,r=null){if(e.length===0)throw new R("Found empty contents");if(t<0||n<0)throw new R("Requested dimensions are too small: "+t+"x"+n);let i=Se.L,s=Qt.QUIET_ZONE_SIZE;r!==null&&(r.get(Ve.ERROR_CORRECTION)!==void 0&&(i=Se.fromString(r.get(Ve.ERROR_CORRECTION).toString())),r.get(Ve.MARGIN)!==void 0&&(s=Number.parseInt(r.get(Ve.MARGIN).toString(),10)));const o=_e.encode(e,i,r);return this.renderResult(o,t,n,s)}writeToDom(e,t,n,r,i=null){typeof e=="string"&&(e=document.querySelector(e));const s=this.write(t,n,r,i);e&&e.appendChild(s)}renderResult(e,t,n,r){const i=e.getMatrix();if(i===null)throw new St;const s=i.getWidth(),o=i.getHeight(),a=s+r*2,l=o+r*2,c=Math.max(t,a),f=Math.max(n,l),w=Math.min(Math.floor(c/a),Math.floor(f/l)),E=Math.floor((c-s*w)/2),I=Math.floor((f-o*w)/2),b=this.createSVGElement(c,f);for(let S=0,O=I;S<o;S++,O+=w)for(let L=0,k=E;L<s;L++,k+=w)if(i.get(L,S)===1){const P=this.createSvgRectElement(k,O,w,w);b.appendChild(P)}return b}createSVGElement(e,t){const n=document.createElementNS(Qt.SVG_NS,"svg");return n.setAttributeNS(null,"height",e.toString()),n.setAttributeNS(null,"width",t.toString()),n}createSvgRectElement(e,t,n,r){const i=document.createElementNS(Qt.SVG_NS,"rect");return i.setAttributeNS(null,"x",e.toString()),i.setAttributeNS(null,"y",t.toString()),i.setAttributeNS(null,"height",n.toString()),i.setAttributeNS(null,"width",r.toString()),i.setAttributeNS(null,"fill","#000000"),i}}Qt.QUIET_ZONE_SIZE=4,Qt.SVG_NS="http://www.w3.org/2000/svg";class cn{encode(e,t,n,r,i){if(e.length===0)throw new R("Found empty contents");if(t!==j.QR_CODE)throw new R("Can only encode QR_CODE, but got "+t);if(n<0||r<0)throw new R(`Requested dimensions are too small: ${n}x${r}`);let s=Se.L,o=cn.QUIET_ZONE_SIZE;i!==null&&(i.get(Ve.ERROR_CORRECTION)!==void 0&&(s=Se.fromString(i.get(Ve.ERROR_CORRECTION).toString())),i.get(Ve.MARGIN)!==void 0&&(o=Number.parseInt(i.get(Ve.MARGIN).toString(),10)));const a=_e.encode(e,s,i);return cn.renderResult(a,n,r,o)}static renderResult(e,t,n,r){const i=e.getMatrix();if(i===null)throw new St;const s=i.getWidth(),o=i.getHeight(),a=s+r*2,l=o+r*2,c=Math.max(t,a),f=Math.max(n,l),w=Math.min(Math.floor(c/a),Math.floor(f/l)),E=Math.floor((c-s*w)/2),I=Math.floor((f-o*w)/2),b=new Ge(c,f);for(let S=0,O=I;S<o;S++,O+=w)for(let L=0,k=E;L<s;L++,k+=w)i.get(L,S)===1&&b.setRegion(k,O,w,w);return b}}cn.QUIET_ZONE_SIZE=4;class Ss{encode(e,t,n,r,i){let s;switch(t){case j.QR_CODE:s=new cn;break;default:throw new R("No encoder available for format "+t)}return s.encode(e,t,n,r,i)}}class Ot extends gn{constructor(e,t,n,r,i,s,o,a){if(super(s,o),this.yuvData=e,this.dataWidth=t,this.dataHeight=n,this.left=r,this.top=i,r+s>t||i+o>n)throw new R("Crop rectangle does not fit within image data.");a&&this.reverseHorizontal(s,o)}getRow(e,t){if(e<0||e>=this.getHeight())throw new R("Requested row is outside the image: "+e);const n=this.getWidth();(t==null||t.length<n)&&(t=new Uint8ClampedArray(n));const r=(e+this.top)*this.dataWidth+this.left;return te.arraycopy(this.yuvData,r,t,0,n),t}getMatrix(){const e=this.getWidth(),t=this.getHeight();if(e===this.dataWidth&&t===this.dataHeight)return this.yuvData;const n=e*t,r=new Uint8ClampedArray(n);let i=this.top*this.dataWidth+this.left;if(e===this.dataWidth)return te.arraycopy(this.yuvData,i,r,0,n),r;for(let s=0;s<t;s++){const o=s*e;te.arraycopy(this.yuvData,i,r,o,e),i+=this.dataWidth}return r}isCropSupported(){return!0}crop(e,t,n,r){return new Ot(this.yuvData,this.dataWidth,this.dataHeight,this.left+e,this.top+t,n,r,!1)}renderThumbnail(){const e=this.getWidth()/Ot.THUMBNAIL_SCALE_FACTOR,t=this.getHeight()/Ot.THUMBNAIL_SCALE_FACTOR,n=new Int32Array(e*t),r=this.yuvData;let i=this.top*this.dataWidth+this.left;for(let s=0;s<t;s++){const o=s*e;for(let a=0;a<e;a++){const l=r[i+a*Ot.THUMBNAIL_SCALE_FACTOR]&255;n[o+a]=4278190080|l*65793}i+=this.dataWidth*Ot.THUMBNAIL_SCALE_FACTOR}return n}getThumbnailWidth(){return this.getWidth()/Ot.THUMBNAIL_SCALE_FACTOR}getThumbnailHeight(){return this.getHeight()/Ot.THUMBNAIL_SCALE_FACTOR}reverseHorizontal(e,t){const n=this.yuvData;for(let r=0,i=this.top*this.dataWidth+this.left;r<t;r++,i+=this.dataWidth){const s=i+e/2;for(let o=i,a=i+e-1;o<s;o++,a--){const l=n[o];n[o]=n[a],n[a]=l}}}invert(){return new Lt(this)}}Ot.THUMBNAIL_SCALE_FACTOR=2;class gr extends gn{constructor(e,t,n,r,i,s,o){if(super(t,n),this.dataWidth=r,this.dataHeight=i,this.left=s,this.top=o,e.BYTES_PER_ELEMENT===4){const a=t*n,l=new Uint8ClampedArray(a);for(let c=0;c<a;c++){const f=e[c],w=f>>16&255,E=f>>7&510,I=f&255;l[c]=(w+E+I)/4&255}this.luminances=l}else this.luminances=e;if(r===void 0&&(this.dataWidth=t),i===void 0&&(this.dataHeight=n),s===void 0&&(this.left=0),o===void 0&&(this.top=0),this.left+t>this.dataWidth||this.top+n>this.dataHeight)throw new R("Crop rectangle does not fit within image data.")}getRow(e,t){if(e<0||e>=this.getHeight())throw new R("Requested row is outside the image: "+e);const n=this.getWidth();(t==null||t.length<n)&&(t=new Uint8ClampedArray(n));const r=(e+this.top)*this.dataWidth+this.left;return te.arraycopy(this.luminances,r,t,0,n),t}getMatrix(){const e=this.getWidth(),t=this.getHeight();if(e===this.dataWidth&&t===this.dataHeight)return this.luminances;const n=e*t,r=new Uint8ClampedArray(n);let i=this.top*this.dataWidth+this.left;if(e===this.dataWidth)return te.arraycopy(this.luminances,i,r,0,n),r;for(let s=0;s<t;s++){const o=s*e;te.arraycopy(this.luminances,i,r,o,e),i+=this.dataWidth}return r}isCropSupported(){return!0}crop(e,t,n,r){return new gr(this.luminances,n,r,this.dataWidth,this.dataHeight,this.left+e,this.top+t)}invert(){return new Lt(this)}}class ni extends F{static forName(e){return this.getCharacterSetECIByName(e)}}class wr{}wr.ISO_8859_1=F.ISO8859_1;class ri{isCompact(){return this.compact}setCompact(e){this.compact=e}getSize(){return this.size}setSize(e){this.size=e}getLayers(){return this.layers}setLayers(e){this.layers=e}getCodeWords(){return this.codeWords}setCodeWords(e){this.codeWords=e}getMatrix(){return this.matrix}setMatrix(e){this.matrix=e}}class ii{static singletonList(e){return[e]}static min(e,t){return e.sort(t)[0]}}class Ts{constructor(e){this.previous=e}getPrevious(){return this.previous}}class hn extends Ts{constructor(e,t,n){super(e),this.value=t,this.bitCount=n}appendTo(e,t){e.appendBits(this.value,this.bitCount)}add(e,t){return new hn(this,e,t)}addBinaryShift(e,t){return console.warn("addBinaryShift on SimpleToken, this simply returns a copy of this token"),new hn(this,e,t)}toString(){let e=this.value&(1<<this.bitCount)-1;return e|=1<<this.bitCount,"<"+K.toBinaryString(e|1<<this.bitCount).substring(1)+">"}}class Ar extends hn{constructor(e,t,n){super(e,0,0),this.binaryShiftStart=t,this.binaryShiftByteCount=n}appendTo(e,t){for(let n=0;n<this.binaryShiftByteCount;n++)(n===0||n===31&&this.binaryShiftByteCount<=62)&&(e.appendBits(31,5),this.binaryShiftByteCount>62?e.appendBits(this.binaryShiftByteCount-31,16):n===0?e.appendBits(Math.min(this.binaryShiftByteCount,31),5):e.appendBits(this.binaryShiftByteCount-31,5)),e.appendBits(t[this.binaryShiftStart+n],8)}addBinaryShift(e,t){return new Ar(this,e,t)}toString(){return"<"+this.binaryShiftStart+"::"+(this.binaryShiftStart+this.binaryShiftByteCount-1)+">"}}function Ns(u,e,t){return new Ar(u,e,t)}function Tn(u,e,t){return new hn(u,e,t)}const _s=["UPPER","LOWER","DIGIT","MIXED","PUNCT"],Xt=0,Xn=1,pt=2,si=3,Rt=4,Os=new hn(null,0,0),Cr=[Int32Array.from([0,(5<<16)+28,(5<<16)+30,(5<<16)+29,656318]),Int32Array.from([(9<<16)+480+14,0,(5<<16)+30,(5<<16)+29,656318]),Int32Array.from([(4<<16)+14,(9<<16)+448+28,0,(9<<16)+448+29,932798]),Int32Array.from([(5<<16)+29,(5<<16)+28,656318,0,(5<<16)+30]),Int32Array.from([(5<<16)+31,656380,656382,656381,0])];function Rs(u){for(let e of u)Ae.fill(e,-1);return u[Xt][Rt]=0,u[Xn][Rt]=0,u[Xn][Xt]=28,u[si][Rt]=0,u[pt][Rt]=0,u[pt][Xt]=15,u}const oi=Rs(Ae.createInt32Array(6,6));class Dt{constructor(e,t,n,r){this.token=e,this.mode=t,this.binaryShiftByteCount=n,this.bitCount=r}getMode(){return this.mode}getToken(){return this.token}getBinaryShiftByteCount(){return this.binaryShiftByteCount}getBitCount(){return this.bitCount}latchAndAppend(e,t){let n=this.bitCount,r=this.token;if(e!==this.mode){let s=Cr[this.mode][e];r=Tn(r,s&65535,s>>16),n+=s>>16}let i=e===pt?4:5;return r=Tn(r,t,i),new Dt(r,e,0,n+i)}shiftAndAppend(e,t){let n=this.token,r=this.mode===pt?4:5;return n=Tn(n,oi[this.mode][e],r),n=Tn(n,t,5),new Dt(n,this.mode,0,this.bitCount+r+5)}addBinaryShiftChar(e){let t=this.token,n=this.mode,r=this.bitCount;if(this.mode===Rt||this.mode===pt){let o=Cr[n][Xt];t=Tn(t,o&65535,o>>16),r+=o>>16,n=Xt}let i=this.binaryShiftByteCount===0||this.binaryShiftByteCount===31?18:this.binaryShiftByteCount===62?9:8,s=new Dt(t,n,this.binaryShiftByteCount+1,r+i);return s.binaryShiftByteCount===2078&&(s=s.endBinaryShift(e+1)),s}endBinaryShift(e){if(this.binaryShiftByteCount===0)return this;let t=this.token;return t=Ns(t,e-this.binaryShiftByteCount,this.binaryShiftByteCount),new Dt(t,this.mode,0,this.bitCount)}isBetterThanOrEqualTo(e){let t=this.bitCount+(Cr[this.mode][e.mode]>>16);return this.binaryShiftByteCount<e.binaryShiftByteCount?t+=Dt.calculateBinaryShiftCost(e)-Dt.calculateBinaryShiftCost(this):this.binaryShiftByteCount>e.binaryShiftByteCount&&e.binaryShiftByteCount>0&&(t+=10),t<=e.bitCount}toBitArray(e){let t=[];for(let r=this.endBinaryShift(e.length).token;r!==null;r=r.getPrevious())t.unshift(r);let n=new le;for(const r of t)r.appendTo(n,e);return n}toString(){return J.format("%s bits=%d bytes=%d",_s[this.mode],this.bitCount,this.binaryShiftByteCount)}static calculateBinaryShiftCost(e){return e.binaryShiftByteCount>62?21:e.binaryShiftByteCount>31?20:e.binaryShiftByteCount>0?10:0}}Dt.INITIAL_STATE=new Dt(Os,Xt,0,0);function Ds(u){const e=J.getCharCode(" "),t=J.getCharCode("."),n=J.getCharCode(",");u[Xt][e]=1;const r=J.getCharCode("Z"),i=J.getCharCode("A");for(let w=i;w<=r;w++)u[Xt][w]=w-i+2;u[Xn][e]=1;const s=J.getCharCode("z"),o=J.getCharCode("a");for(let w=o;w<=s;w++)u[Xn][w]=w-o+2;u[pt][e]=1;const a=J.getCharCode("9"),l=J.getCharCode("0");for(let w=l;w<=a;w++)u[pt][w]=w-l+2;u[pt][n]=12,u[pt][t]=13;const c=["\0"," ","","","","","","","\x07","\b"," ",`
|
|
28
|
+
`,"\v","\f","\r","\x1B","","","","","@","\\","^","_","`","|","~",""];for(let w=0;w<c.length;w++)u[si][J.getCharCode(c[w])]=w;const f=["\0","\r","\0","\0","\0","\0","!","'","#","$","%","&","'","(",")","*","+",",","-",".","/",":",";","<","=",">","?","[","]","{","}"];for(let w=0;w<f.length;w++)J.getCharCode(f[w])>0&&(u[Rt][J.getCharCode(f[w])]=w);return u}const mr=Ds(Ae.createInt32Array(5,256));class Nn{constructor(e){this.text=e}encode(){const e=J.getCharCode(" "),t=J.getCharCode(`
|
|
29
|
+
`);let n=ii.singletonList(Dt.INITIAL_STATE);for(let i=0;i<this.text.length;i++){let s,o=i+1<this.text.length?this.text[i+1]:0;switch(this.text[i]){case J.getCharCode("\r"):s=o===t?2:0;break;case J.getCharCode("."):s=o===e?3:0;break;case J.getCharCode(","):s=o===e?4:0;break;case J.getCharCode(":"):s=o===e?5:0;break;default:s=0}s>0?(n=Nn.updateStateListForPair(n,i,s),i++):n=this.updateStateListForChar(n,i)}return ii.min(n,(i,s)=>i.getBitCount()-s.getBitCount()).toBitArray(this.text)}updateStateListForChar(e,t){const n=[];for(let r of e)this.updateStateForChar(r,t,n);return Nn.simplifyStates(n)}updateStateForChar(e,t,n){let r=this.text[t]&255,i=mr[e.getMode()][r]>0,s=null;for(let o=0;o<=Rt;o++){let a=mr[o][r];if(a>0){if(s==null&&(s=e.endBinaryShift(t)),!i||o===e.getMode()||o===pt){const l=s.latchAndAppend(o,a);n.push(l)}if(!i&&oi[e.getMode()][o]>=0){const l=s.shiftAndAppend(o,a);n.push(l)}}}if(e.getBinaryShiftByteCount()>0||mr[e.getMode()][r]===0){let o=e.addBinaryShiftChar(t);n.push(o)}}static updateStateListForPair(e,t,n){const r=[];for(let i of e)this.updateStateForPair(i,t,n,r);return this.simplifyStates(r)}static updateStateForPair(e,t,n,r){let i=e.endBinaryShift(t);if(r.push(i.latchAndAppend(Rt,n)),e.getMode()!==Rt&&r.push(i.shiftAndAppend(Rt,n)),n===3||n===4){let s=i.latchAndAppend(pt,16-n).latchAndAppend(pt,1);r.push(s)}if(e.getBinaryShiftByteCount()>0){let s=e.addBinaryShiftChar(t).addBinaryShiftChar(t+1);r.push(s)}}static simplifyStates(e){let t=[];for(const n of e){let r=!0;for(const i of t){if(i.isBetterThanOrEqualTo(n)){r=!1;break}n.isBetterThanOrEqualTo(i)&&(t=t.filter(s=>s!==i))}r&&t.push(n)}return t}}class ue{constructor(){}static encodeBytes(e){return ue.encode(e,ue.DEFAULT_EC_PERCENT,ue.DEFAULT_AZTEC_LAYERS)}static encode(e,t,n){let r=new Nn(e).encode(),i=K.truncDivision(r.getSize()*t,100)+11,s=r.getSize()+i,o,a,l,c,f;if(n!==ue.DEFAULT_AZTEC_LAYERS){if(o=n<0,a=Math.abs(n),a>(o?ue.MAX_NB_BITS_COMPACT:ue.MAX_NB_BITS))throw new R(J.format("Illegal value %s for layers",n));l=ue.totalBitsInLayer(a,o),c=ue.WORD_SIZE[a];let P=l-l%c;if(f=ue.stuffBits(r,c),f.getSize()+i>P)throw new R("Data to large for user specified layer");if(o&&f.getSize()>c*64)throw new R("Data to large for user specified layer")}else{c=0,f=null;for(let P=0;;P++){if(P>ue.MAX_NB_BITS)throw new R("Data too large for an Aztec code");if(o=P<=3,a=o?P+1:P,l=ue.totalBitsInLayer(a,o),s>l)continue;(f==null||c!==ue.WORD_SIZE[a])&&(c=ue.WORD_SIZE[a],f=ue.stuffBits(r,c));let ae=l-l%c;if(!(o&&f.getSize()>c*64)&&f.getSize()+i<=ae)break}}let w=ue.generateCheckWords(f,l,c),E=f.getSize()/c,I=ue.generateModeMessage(o,a,E),b=(o?11:14)+a*4,S=new Int32Array(b),O;if(o){O=b;for(let P=0;P<S.length;P++)S[P]=P}else{O=b+1+2*K.truncDivision(K.truncDivision(b,2)-1,15);let P=K.truncDivision(b,2),ae=K.truncDivision(O,2);for(let ne=0;ne<P;ne++){let ft=ne+K.truncDivision(ne,15);S[P-ne-1]=ae-ft-1,S[P+ne]=ae+ft+1}}let L=new Ge(O);for(let P=0,ae=0;P<a;P++){let ne=(a-P)*4+(o?9:12);for(let ft=0;ft<ne;ft++){let yt=ft*2;for(let dt=0;dt<2;dt++)w.get(ae+yt+dt)&&L.set(S[P*2+dt],S[P*2+ft]),w.get(ae+ne*2+yt+dt)&&L.set(S[P*2+ft],S[b-1-P*2-dt]),w.get(ae+ne*4+yt+dt)&&L.set(S[b-1-P*2-dt],S[b-1-P*2-ft]),w.get(ae+ne*6+yt+dt)&&L.set(S[b-1-P*2-ft],S[P*2+dt])}ae+=ne*8}if(ue.drawModeMessage(L,o,O,I),o)ue.drawBullsEye(L,K.truncDivision(O,2),5);else{ue.drawBullsEye(L,K.truncDivision(O,2),7);for(let P=0,ae=0;P<K.truncDivision(b,2)-1;P+=15,ae+=16)for(let ne=K.truncDivision(O,2)&1;ne<O;ne+=2)L.set(K.truncDivision(O,2)-ae,ne),L.set(K.truncDivision(O,2)+ae,ne),L.set(ne,K.truncDivision(O,2)-ae),L.set(ne,K.truncDivision(O,2)+ae)}let k=new ri;return k.setCompact(o),k.setSize(O),k.setLayers(a),k.setCodeWords(E),k.setMatrix(L),k}static drawBullsEye(e,t,n){for(let r=0;r<n;r+=2)for(let i=t-r;i<=t+r;i++)e.set(i,t-r),e.set(i,t+r),e.set(t-r,i),e.set(t+r,i);e.set(t-n,t-n),e.set(t-n+1,t-n),e.set(t-n,t-n+1),e.set(t+n,t-n),e.set(t+n,t-n+1),e.set(t+n,t+n-1)}static generateModeMessage(e,t,n){let r=new le;return e?(r.appendBits(t-1,2),r.appendBits(n-1,6),r=ue.generateCheckWords(r,28,4)):(r.appendBits(t-1,5),r.appendBits(n-1,11),r=ue.generateCheckWords(r,40,4)),r}static drawModeMessage(e,t,n,r){let i=K.truncDivision(n,2);if(t)for(let s=0;s<7;s++){let o=i-3+s;r.get(s)&&e.set(o,i-5),r.get(s+7)&&e.set(i+5,o),r.get(20-s)&&e.set(o,i+5),r.get(27-s)&&e.set(i-5,o)}else for(let s=0;s<10;s++){let o=i-5+s+K.truncDivision(s,5);r.get(s)&&e.set(o,i-7),r.get(s+10)&&e.set(i+7,o),r.get(29-s)&&e.set(o,i+7),r.get(39-s)&&e.set(i-7,o)}}static generateCheckWords(e,t,n){let r=e.getSize()/n,i=new xr(ue.getGF(n)),s=K.truncDivision(t,n),o=ue.bitsToWords(e,n,s);i.encode(o,s-r);let a=t%n,l=new le;l.appendBits(0,a);for(const c of Array.from(o))l.appendBits(c,n);return l}static bitsToWords(e,t,n){let r=new Int32Array(n),i,s;for(i=0,s=e.getSize()/t;i<s;i++){let o=0;for(let a=0;a<t;a++)o|=e.get(i*t+a)?1<<t-a-1:0;r[i]=o}return r}static getGF(e){switch(e){case 4:return fe.AZTEC_PARAM;case 6:return fe.AZTEC_DATA_6;case 8:return fe.AZTEC_DATA_8;case 10:return fe.AZTEC_DATA_10;case 12:return fe.AZTEC_DATA_12;default:throw new R("Unsupported word size "+e)}}static stuffBits(e,t){let n=new le,r=e.getSize(),i=(1<<t)-2;for(let s=0;s<r;s+=t){let o=0;for(let a=0;a<t;a++)(s+a>=r||e.get(s+a))&&(o|=1<<t-1-a);(o&i)===i?(n.appendBits(o&i,t),s--):o&i?n.appendBits(o,t):(n.appendBits(o|1,t),s--)}return n}static totalBitsInLayer(e,t){return((t?88:112)+16*e)*e}}ue.DEFAULT_EC_PERCENT=33,ue.DEFAULT_AZTEC_LAYERS=0,ue.MAX_NB_BITS=32,ue.MAX_NB_BITS_COMPACT=4,ue.WORD_SIZE=Int32Array.from([4,6,6,8,8,8,8,8,8,10,10,10,10,10,10,10,10,10,10,10,10,10,10,12,12,12,12,12,12,12,12,12,12]);class zn{encode(e,t,n,r){return this.encodeWithHints(e,t,n,r,null)}encodeWithHints(e,t,n,r,i){let s=wr.ISO_8859_1,o=ue.DEFAULT_EC_PERCENT,a=ue.DEFAULT_AZTEC_LAYERS;return i!=null&&(i.has(Ve.CHARACTER_SET)&&(s=ni.forName(i.get(Ve.CHARACTER_SET).toString())),i.has(Ve.ERROR_CORRECTION)&&(o=K.parseInt(i.get(Ve.ERROR_CORRECTION).toString())),i.has(Ve.AZTEC_LAYERS)&&(a=K.parseInt(i.get(Ve.AZTEC_LAYERS).toString()))),zn.encodeLayers(e,t,n,r,s,o,a)}static encodeLayers(e,t,n,r,i,s,o){if(t!==j.AZTEC)throw new R("Can only encode AZTEC, but got "+t);let a=ue.encode(J.getBytes(e,i),s,o);return zn.renderResult(a,n,r)}static renderResult(e,t,n){let r=e.getMatrix();if(r==null)throw new St;let i=r.getWidth(),s=r.getHeight(),o=Math.max(t,i),a=Math.max(n,s),l=Math.min(o/i,a/s),c=(o-i*l)/2,f=(a-s*l)/2,w=new Ge(o,a);for(let E=0,I=f;E<s;E++,I+=l)for(let b=0,S=c;b<i;b++,S+=l)r.get(b,E)&&w.setRegion(S,I,l,l);return w}}h.AbstractExpandedDecoder=ir,h.ArgumentException=_,h.ArithmeticException=Bn,h.AztecCode=ri,h.AztecCodeReader=Ln,h.AztecCodeWriter=zn,h.AztecDecoder=ye,h.AztecDetector=Hr,h.AztecDetectorResult=Gr,h.AztecEncoder=ue,h.AztecHighLevelEncoder=Nn,h.AztecPoint=rt,h.BarcodeFormat=j,h.Binarizer=Ne,h.BinaryBitmap=$,h.BitArray=le,h.BitMatrix=Ge,h.BitSource=lr,h.BrowserAztecCodeReader=rs,h.BrowserBarcodeReader=ls,h.BrowserCodeReader=zt,h.BrowserDatamatrixCodeReader=hs,h.BrowserMultiFormatReader=ps,h.BrowserPDF417Reader=Is,h.BrowserQRCodeReader=bs,h.BrowserQRCodeSvgWriter=Qt,h.CharacterSetECI=F,h.ChecksumException=ee,h.Code128Reader=V,h.Code39Reader=Fe,h.DataMatrixDecodedBitStreamParser=Vt,h.DataMatrixReader=Gt,h.DecodeHintType=Ce,h.DecoderResult=wn,h.DefaultGridSampler=Wr,h.DetectorResult=Pn,h.EAN13Reader=Yt,h.EncodeHintType=Ve,h.Exception=A,h.FormatException=U,h.GenericGF=fe,h.GenericGFPoly=lt,h.GlobalHistogramBinarizer=We,h.GridSampler=er,h.GridSamplerInstance=Ft,h.HTMLCanvasElementLuminanceSource=kt,h.HybridBinarizer=re,h.ITFReader=pe,h.IllegalArgumentException=R,h.IllegalStateException=St,h.InvertedLuminanceSource=Lt,h.LuminanceSource=gn,h.MathUtils=he,h.MultiFormatOneDReader=an,h.MultiFormatReader=ti,h.MultiFormatWriter=Ss,h.NotFoundException=D,h.OneDReader=ke,h.PDF417DecodedBitStreamParser=N,h.PDF417DecoderErrorCorrection=jr,h.PDF417Reader=je,h.PDF417ResultMetadata=Qr,h.PerspectiveTransform=It,h.PlanarYUVLuminanceSource=Ot,h.QRCodeByteMatrix=Hn,h.QRCodeDataMask=mt,h.QRCodeDecodedBitStreamParser=De,h.QRCodeDecoderErrorCorrectionLevel=Se,h.QRCodeDecoderFormatInformation=Je,h.QRCodeEncoder=_e,h.QRCodeEncoderQRCode=qt,h.QRCodeMaskUtil=Pe,h.QRCodeMatrixUtil=q,h.QRCodeMode=Z,h.QRCodeReader=Wt,h.QRCodeVersion=Y,h.QRCodeWriter=cn,h.RGBLuminanceSource=gr,h.RSS14Reader=ve,h.RSSExpandedReader=v,h.ReaderException=Wn,h.ReedSolomonDecoder=Cn,h.ReedSolomonEncoder=xr,h.ReedSolomonException=nn,h.Result=nt,h.ResultMetadataType=He,h.ResultPoint=z,h.StringUtils=J,h.UnsupportedOperationException=tn,h.VideoInputDevice=Vr,h.WhiteRectangleDetector=Bt,h.WriterException=Ie,h.ZXingArrays=Ae,h.ZXingCharset=ni,h.ZXingInteger=K,h.ZXingStandardCharsets=wr,h.ZXingStringBuilder=me,h.ZXingStringEncoding=at,h.ZXingSystem=te,h.createAbstractExpandedDecoder=Zr,Object.defineProperty(h,"__esModule",{value:!0})})})(qn,qn.exports);var Te=qn.exports;const Ai=ui({__proto__:null,default:wi(Te)},[Te]);var Tr=function(){function g(d,h,m){if(this.formatMap=new Map([[H.QR_CODE,Te.BarcodeFormat.QR_CODE],[H.AZTEC,Te.BarcodeFormat.AZTEC],[H.CODABAR,Te.BarcodeFormat.CODABAR],[H.CODE_39,Te.BarcodeFormat.CODE_39],[H.CODE_93,Te.BarcodeFormat.CODE_93],[H.CODE_128,Te.BarcodeFormat.CODE_128],[H.DATA_MATRIX,Te.BarcodeFormat.DATA_MATRIX],[H.MAXICODE,Te.BarcodeFormat.MAXICODE],[H.ITF,Te.BarcodeFormat.ITF],[H.EAN_13,Te.BarcodeFormat.EAN_13],[H.EAN_8,Te.BarcodeFormat.EAN_8],[H.PDF_417,Te.BarcodeFormat.PDF_417],[H.RSS_14,Te.BarcodeFormat.RSS_14],[H.RSS_EXPANDED,Te.BarcodeFormat.RSS_EXPANDED],[H.UPC_A,Te.BarcodeFormat.UPC_A],[H.UPC_E,Te.BarcodeFormat.UPC_E],[H.UPC_EAN_EXTENSION,Te.BarcodeFormat.UPC_EAN_EXTENSION]]),this.reverseFormatMap=this.createReverseFormatMap(),!Ai)throw"Use html5qrcode.min.js without edit, ZXing not found.";this.verbose=h,this.logger=m;var p=this.createZXingFormats(d),x=new Map;x.set(Te.DecodeHintType.POSSIBLE_FORMATS,p),x.set(Te.DecodeHintType.TRY_HARDER,!1),this.hints=x}return g.prototype.decodeAsync=function(d){var h=this;return new Promise(function(m,p){try{m(h.decode(d))}catch(x){p(x)}})},g.prototype.decode=function(d){var h=new Te.MultiFormatReader(this.verbose,this.hints),m=new Te.HTMLCanvasElementLuminanceSource(d),p=new Te.BinaryBitmap(new Te.HybridBinarizer(m)),x=h.decode(p);return{text:x.text,format:br.create(this.toHtml5QrcodeSupportedFormats(x.format)),debugData:this.createDebugData()}},g.prototype.createReverseFormatMap=function(){var d=new Map;return this.formatMap.forEach(function(h,m,p){d.set(h,m)}),d},g.prototype.toHtml5QrcodeSupportedFormats=function(d){if(!this.reverseFormatMap.has(d))throw"reverseFormatMap doesn't have ".concat(d);return this.reverseFormatMap.get(d)},g.prototype.createZXingFormats=function(d){for(var h=[],m=0,p=d;m<p.length;m++){var x=p[m];this.formatMap.has(x)?h.push(this.formatMap.get(x)):this.logger.logError("".concat(x," is not supported by")+"ZXingHtml5QrcodeShim")}return h},g.prototype.createDebugData=function(){return{decoderName:"zxing-js"}},g}(),Ci=function(g,d,h,m){function p(x){return x instanceof h?x:new h(function(y){y(x)})}return new(h||(h=Promise))(function(x,y){function M(_){try{A(m.next(_))}catch(R){y(R)}}function B(_){try{A(m.throw(_))}catch(R){y(R)}}function A(_){_.done?x(_.value):p(_.value).then(M,B)}A((m=m.apply(g,d||[])).next())})},mi=function(g,d){var h={label:0,sent:function(){if(x[0]&1)throw x[1];return x[1]},trys:[],ops:[]},m,p,x,y;return y={next:M(0),throw:M(1),return:M(2)},typeof Symbol=="function"&&(y[Symbol.iterator]=function(){return this}),y;function M(A){return function(_){return B([A,_])}}function B(A){if(m)throw new TypeError("Generator is already executing.");for(;y&&(y=0,A[0]&&(h=0)),h;)try{if(m=1,p&&(x=A[0]&2?p.return:A[0]?p.throw||((x=p.return)&&x.call(p),0):p.next)&&!(x=x.call(p,A[1])).done)return x;switch(p=0,x&&(A=[A[0]&2,x.value]),A[0]){case 0:case 1:x=A;break;case 4:return h.label++,{value:A[1],done:!1};case 5:h.label++,p=A[1],A=[0];continue;case 7:A=h.ops.pop(),h.trys.pop();continue;default:if(x=h.trys,!(x=x.length>0&&x[x.length-1])&&(A[0]===6||A[0]===2)){h=0;continue}if(A[0]===3&&(!x||A[1]>x[0]&&A[1]<x[3])){h.label=A[1];break}if(A[0]===6&&h.label<x[1]){h.label=x[1],x=A;break}if(x&&h.label<x[2]){h.label=x[2],h.ops.push(A);break}x[2]&&h.ops.pop(),h.trys.pop();continue}A=d.call(g,h)}catch(_){A=[6,_],p=0}finally{m=x=0}if(A[0]&5)throw A[1];return{value:A[0]?A[1]:void 0,done:!0}}},Nr=function(){function g(d,h,m){if(this.formatMap=new Map([[H.QR_CODE,"qr_code"],[H.AZTEC,"aztec"],[H.CODABAR,"codabar"],[H.CODE_39,"code_39"],[H.CODE_93,"code_93"],[H.CODE_128,"code_128"],[H.DATA_MATRIX,"data_matrix"],[H.ITF,"itf"],[H.EAN_13,"ean_13"],[H.EAN_8,"ean_8"],[H.PDF_417,"pdf417"],[H.UPC_A,"upc_a"],[H.UPC_E,"upc_e"]]),this.reverseFormatMap=this.createReverseFormatMap(),!g.isSupported())throw"Use html5qrcode.min.js without edit, Use BarcodeDetectorDelegate only if it isSupported();";this.verbose=h,this.logger=m;var p=this.createBarcodeDetectorFormats(d);if(this.detector=new BarcodeDetector(p),!this.detector)throw"BarcodeDetector detector not supported"}return g.isSupported=function(){if(!("BarcodeDetector"in window))return!1;var d=new BarcodeDetector({formats:["qr_code"]});return typeof d!="undefined"},g.prototype.decodeAsync=function(d){return Ci(this,void 0,void 0,function(){var h,m;return mi(this,function(p){switch(p.label){case 0:return[4,this.detector.detect(d)];case 1:if(h=p.sent(),!h||h.length===0)throw"No barcode or QR code detected.";return m=this.selectLargestBarcode(h),[2,{text:m.rawValue,format:br.create(this.toHtml5QrcodeSupportedFormats(m.format)),debugData:this.createDebugData()}]}})})},g.prototype.selectLargestBarcode=function(d){for(var h=null,m=0,p=0,x=d;p<x.length;p++){var y=x[p],M=y.boundingBox.width*y.boundingBox.height;M>m&&(m=M,h=y)}if(!h)throw"No largest barcode found";return h},g.prototype.createBarcodeDetectorFormats=function(d){for(var h=[],m=0,p=d;m<p.length;m++){var x=p[m];this.formatMap.has(x)?h.push(this.formatMap.get(x)):this.logger.warn("".concat(x," is not supported by")+"BarcodeDetectorDelegate")}return{formats:h}},g.prototype.toHtml5QrcodeSupportedFormats=function(d){if(!this.reverseFormatMap.has(d))throw"reverseFormatMap doesn't have ".concat(d);return this.reverseFormatMap.get(d)},g.prototype.createReverseFormatMap=function(){var d=new Map;return this.formatMap.forEach(function(h,m,p){d.set(h,m)}),d},g.prototype.createDebugData=function(){return{decoderName:"BarcodeDetector"}},g}(),_r=function(g,d,h,m){function p(x){return x instanceof h?x:new h(function(y){y(x)})}return new(h||(h=Promise))(function(x,y){function M(_){try{A(m.next(_))}catch(R){y(R)}}function B(_){try{A(m.throw(_))}catch(R){y(R)}}function A(_){_.done?x(_.value):p(_.value).then(M,B)}A((m=m.apply(g,d||[])).next())})},Or=function(g,d){var h={label:0,sent:function(){if(x[0]&1)throw x[1];return x[1]},trys:[],ops:[]},m,p,x,y;return y={next:M(0),throw:M(1),return:M(2)},typeof Symbol=="function"&&(y[Symbol.iterator]=function(){return this}),y;function M(A){return function(_){return B([A,_])}}function B(A){if(m)throw new TypeError("Generator is already executing.");for(;y&&(y=0,A[0]&&(h=0)),h;)try{if(m=1,p&&(x=A[0]&2?p.return:A[0]?p.throw||((x=p.return)&&x.call(p),0):p.next)&&!(x=x.call(p,A[1])).done)return x;switch(p=0,x&&(A=[A[0]&2,x.value]),A[0]){case 0:case 1:x=A;break;case 4:return h.label++,{value:A[1],done:!1};case 5:h.label++,p=A[1],A=[0];continue;case 7:A=h.ops.pop(),h.trys.pop();continue;default:if(x=h.trys,!(x=x.length>0&&x[x.length-1])&&(A[0]===6||A[0]===2)){h=0;continue}if(A[0]===3&&(!x||A[1]>x[0]&&A[1]<x[3])){h.label=A[1];break}if(A[0]===6&&h.label<x[1]){h.label=x[1],x=A;break}if(x&&h.label<x[2]){h.label=x[2],h.ops.push(A);break}x[2]&&h.ops.pop(),h.trys.pop();continue}A=d.call(g,h)}catch(_){A=[6,_],p=0}finally{m=x=0}if(A[0]&5)throw A[1];return{value:A[0]?A[1]:void 0,done:!0}}},Ei=function(){function g(d,h,m,p){this.EXECUTIONS_TO_REPORT_PERFORMANCE=100,this.executions=0,this.executionResults=[],this.wasPrimaryDecoderUsedInLastDecode=!1,this.verbose=m,h&&Nr.isSupported()?(this.primaryDecoder=new Nr(d,m,p),this.secondaryDecoder=new Tr(d,m,p)):this.primaryDecoder=new Tr(d,m,p)}return g.prototype.decodeAsync=function(d){return _r(this,void 0,void 0,function(){var h;return Or(this,function(m){switch(m.label){case 0:h=performance.now(),m.label=1;case 1:return m.trys.push([1,,3,4]),[4,this.getDecoder().decodeAsync(d)];case 2:return[2,m.sent()];case 3:return this.possiblyLogPerformance(h),[7];case 4:return[2]}})})},g.prototype.decodeRobustlyAsync=function(d){return _r(this,void 0,void 0,function(){var h,m;return Or(this,function(p){switch(p.label){case 0:h=performance.now(),p.label=1;case 1:return p.trys.push([1,3,4,5]),[4,this.primaryDecoder.decodeAsync(d)];case 2:return[2,p.sent()];case 3:if(m=p.sent(),this.secondaryDecoder)return[2,this.secondaryDecoder.decodeAsync(d)];throw m;case 4:return this.possiblyLogPerformance(h),[7];case 5:return[2]}})})},g.prototype.getDecoder=function(){return this.secondaryDecoder?this.wasPrimaryDecoderUsedInLastDecode===!1?(this.wasPrimaryDecoderUsedInLastDecode=!0,this.primaryDecoder):(this.wasPrimaryDecoderUsedInLastDecode=!1,this.secondaryDecoder):this.primaryDecoder},g.prototype.possiblyLogPerformance=function(d){if(this.verbose){var h=performance.now()-d;this.executionResults.push(h),this.executions++,this.possiblyFlushPerformanceReport()}},g.prototype.possiblyFlushPerformanceReport=function(){if(!(this.executions<this.EXECUTIONS_TO_REPORT_PERFORMANCE)){for(var d=0,h=0,m=this.executionResults;h<m.length;h++){var p=m[h];d+=p}var x=d/this.executionResults.length;console.log("".concat(x," ms for ").concat(this.executionResults.length," last runs.")),this.executions=0,this.executionResults=[]}},g}(),Qn=function(){var g=function(d,h){return g=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(m,p){m.__proto__=p}||function(m,p){for(var x in p)Object.prototype.hasOwnProperty.call(p,x)&&(m[x]=p[x])},g(d,h)};return function(d,h){if(typeof h!="function"&&h!==null)throw new TypeError("Class extends value "+String(h)+" is not a constructor or null");g(d,h);function m(){this.constructor=d}d.prototype=h===null?Object.create(h):(m.prototype=h.prototype,new m)}}(),Rn=function(g,d,h,m){function p(x){return x instanceof h?x:new h(function(y){y(x)})}return new(h||(h=Promise))(function(x,y){function M(_){try{A(m.next(_))}catch(R){y(R)}}function B(_){try{A(m.throw(_))}catch(R){y(R)}}function A(_){_.done?x(_.value):p(_.value).then(M,B)}A((m=m.apply(g,d||[])).next())})},Dn=function(g,d){var h={label:0,sent:function(){if(x[0]&1)throw x[1];return x[1]},trys:[],ops:[]},m,p,x,y;return y={next:M(0),throw:M(1),return:M(2)},typeof Symbol=="function"&&(y[Symbol.iterator]=function(){return this}),y;function M(A){return function(_){return B([A,_])}}function B(A){if(m)throw new TypeError("Generator is already executing.");for(;y&&(y=0,A[0]&&(h=0)),h;)try{if(m=1,p&&(x=A[0]&2?p.return:A[0]?p.throw||((x=p.return)&&x.call(p),0):p.next)&&!(x=x.call(p,A[1])).done)return x;switch(p=0,x&&(A=[A[0]&2,x.value]),A[0]){case 0:case 1:x=A;break;case 4:return h.label++,{value:A[1],done:!1};case 5:h.label++,p=A[1],A=[0];continue;case 7:A=h.ops.pop(),h.trys.pop();continue;default:if(x=h.trys,!(x=x.length>0&&x[x.length-1])&&(A[0]===6||A[0]===2)){h=0;continue}if(A[0]===3&&(!x||A[1]>x[0]&&A[1]<x[3])){h.label=A[1];break}if(A[0]===6&&h.label<x[1]){h.label=x[1],x=A;break}if(x&&h.label<x[2]){h.label=x[2],h.ops.push(A);break}x[2]&&h.ops.pop(),h.trys.pop();continue}A=d.call(g,h)}catch(_){A=[6,_],p=0}finally{m=x=0}if(A[0]&5)throw A[1];return{value:A[0]?A[1]:void 0,done:!0}}},Rr=function(){function g(d,h){this.name=d,this.track=h}return g.prototype.isSupported=function(){return this.track.getCapabilities?this.name in this.track.getCapabilities():!1},g.prototype.apply=function(d){var h={};h[this.name]=d;var m={advanced:[h]};return this.track.applyConstraints(m)},g.prototype.value=function(){var d=this.track.getSettings();if(this.name in d){var h=d[this.name];return h}return null},g}(),pi=function(g){Qn(d,g);function d(h,m){return g.call(this,h,m)||this}return d.prototype.min=function(){return this.getCapabilities().min},d.prototype.max=function(){return this.getCapabilities().max},d.prototype.step=function(){return this.getCapabilities().step},d.prototype.apply=function(h){var m={};m[this.name]=h;var p={advanced:[m]};return this.track.applyConstraints(p)},d.prototype.getCapabilities=function(){this.failIfNotSupported();var h=this.track.getCapabilities(),m=h[this.name];return{min:m.min,max:m.max,step:m.step}},d.prototype.failIfNotSupported=function(){if(!this.isSupported())throw new Error("".concat(this.name," capability not supported"))},d}(Rr),Ii=function(g){Qn(d,g);function d(h){return g.call(this,"zoom",h)||this}return d}(pi),bi=function(g){Qn(d,g);function d(h){return g.call(this,"torch",h)||this}return d}(Rr),yi=function(){function g(d){this.track=d}return g.prototype.zoomFeature=function(){return new Ii(this.track)},g.prototype.torchFeature=function(){return new bi(this.track)},g}(),Si=function(){function g(d,h,m){this.isClosed=!1,this.parentElement=d,this.mediaStream=h,this.callbacks=m,this.surface=this.createVideoElement(this.parentElement.clientWidth),d.append(this.surface)}return g.prototype.createVideoElement=function(d){var h=document.createElement("video");return h.style.width="".concat(d,"px"),h.style.display="block",h.muted=!0,h.setAttribute("muted","true"),h.playsInline=!0,h},g.prototype.setupSurface=function(){var d=this;this.surface.onabort=function(){throw"RenderedCameraImpl video surface onabort() called"},this.surface.onerror=function(){throw"RenderedCameraImpl video surface onerror() called"};var h=function(){var m=d.surface.clientWidth,p=d.surface.clientHeight;d.callbacks.onRenderSurfaceReady(m,p),d.surface.removeEventListener("playing",h)};this.surface.addEventListener("playing",h),this.surface.srcObject=this.mediaStream,this.surface.play()},g.create=function(d,h,m,p){return Rn(this,void 0,void 0,function(){var x,y;return Dn(this,function(M){switch(M.label){case 0:return x=new g(d,h,p),m.aspectRatio?(y={aspectRatio:m.aspectRatio},[4,x.getFirstTrackOrFail().applyConstraints(y)]):[3,2];case 1:M.sent(),M.label=2;case 2:return x.setupSurface(),[2,x]}})})},g.prototype.failIfClosed=function(){if(this.isClosed)throw"The RenderedCamera has already been closed."},g.prototype.getFirstTrackOrFail=function(){if(this.failIfClosed(),this.mediaStream.getVideoTracks().length===0)throw"No video tracks found";return this.mediaStream.getVideoTracks()[0]},g.prototype.pause=function(){this.failIfClosed(),this.surface.pause()},g.prototype.resume=function(d){this.failIfClosed();var h=this,m=function(){setTimeout(d,200),h.surface.removeEventListener("playing",m)};this.surface.addEventListener("playing",m),this.surface.play()},g.prototype.isPaused=function(){return this.failIfClosed(),this.surface.paused},g.prototype.getSurface=function(){return this.failIfClosed(),this.surface},g.prototype.getRunningTrackCapabilities=function(){return this.getFirstTrackOrFail().getCapabilities()},g.prototype.getRunningTrackSettings=function(){return this.getFirstTrackOrFail().getSettings()},g.prototype.applyVideoConstraints=function(d){return Rn(this,void 0,void 0,function(){return Dn(this,function(h){if("aspectRatio"in d)throw"Changing 'aspectRatio' in run-time is not yet supported.";return[2,this.getFirstTrackOrFail().applyConstraints(d)]})})},g.prototype.close=function(){if(this.isClosed)return Promise.resolve();var d=this;return new Promise(function(h,m){var p=d.mediaStream.getVideoTracks(),x=p.length,y=0;d.mediaStream.getVideoTracks().forEach(function(M){d.mediaStream.removeTrack(M),M.stop(),++y,y>=x&&(d.isClosed=!0,d.parentElement.removeChild(d.surface),h())})})},g.prototype.getCapabilities=function(){return new yi(this.getFirstTrackOrFail())},g}(),Ti=function(){function g(d){this.mediaStream=d}return g.prototype.render=function(d,h,m){return Rn(this,void 0,void 0,function(){return Dn(this,function(p){return[2,Si.create(d,this.mediaStream,h,m)]})})},g.create=function(d){return Rn(this,void 0,void 0,function(){var h,m;return Dn(this,function(p){switch(p.label){case 0:if(!navigator.mediaDevices)throw"navigator.mediaDevices not supported";return h={audio:!1,video:d},[4,navigator.mediaDevices.getUserMedia(h)];case 1:return m=p.sent(),[2,new g(m)]}})})},g}(),Dr=function(g,d,h,m){function p(x){return x instanceof h?x:new h(function(y){y(x)})}return new(h||(h=Promise))(function(x,y){function M(_){try{A(m.next(_))}catch(R){y(R)}}function B(_){try{A(m.throw(_))}catch(R){y(R)}}function A(_){_.done?x(_.value):p(_.value).then(M,B)}A((m=m.apply(g,d||[])).next())})},Mr=function(g,d){var h={label:0,sent:function(){if(x[0]&1)throw x[1];return x[1]},trys:[],ops:[]},m,p,x,y;return y={next:M(0),throw:M(1),return:M(2)},typeof Symbol=="function"&&(y[Symbol.iterator]=function(){return this}),y;function M(A){return function(_){return B([A,_])}}function B(A){if(m)throw new TypeError("Generator is already executing.");for(;y&&(y=0,A[0]&&(h=0)),h;)try{if(m=1,p&&(x=A[0]&2?p.return:A[0]?p.throw||((x=p.return)&&x.call(p),0):p.next)&&!(x=x.call(p,A[1])).done)return x;switch(p=0,x&&(A=[A[0]&2,x.value]),A[0]){case 0:case 1:x=A;break;case 4:return h.label++,{value:A[1],done:!1};case 5:h.label++,p=A[1],A=[0];continue;case 7:A=h.ops.pop(),h.trys.pop();continue;default:if(x=h.trys,!(x=x.length>0&&x[x.length-1])&&(A[0]===6||A[0]===2)){h=0;continue}if(A[0]===3&&(!x||A[1]>x[0]&&A[1]<x[3])){h.label=A[1];break}if(A[0]===6&&h.label<x[1]){h.label=x[1],x=A;break}if(x&&h.label<x[2]){h.label=x[2],h.ops.push(A);break}x[2]&&h.ops.pop(),h.trys.pop();continue}A=d.call(g,h)}catch(_){A=[6,_],p=0}finally{m=x=0}if(A[0]&5)throw A[1];return{value:A[0]?A[1]:void 0,done:!0}}},Ni=function(){function g(){}return g.failIfNotSupported=function(){return Dr(this,void 0,void 0,function(){return Mr(this,function(d){if(!navigator.mediaDevices)throw"navigator.mediaDevices not supported";return[2,new g]})})},g.prototype.create=function(d){return Dr(this,void 0,void 0,function(){return Mr(this,function(h){return[2,Ti.create(d)]})})},g}(),_i=function(g,d,h,m){function p(x){return x instanceof h?x:new h(function(y){y(x)})}return new(h||(h=Promise))(function(x,y){function M(_){try{A(m.next(_))}catch(R){y(R)}}function B(_){try{A(m.throw(_))}catch(R){y(R)}}function A(_){_.done?x(_.value):p(_.value).then(M,B)}A((m=m.apply(g,d||[])).next())})},Oi=function(g,d){var h={label:0,sent:function(){if(x[0]&1)throw x[1];return x[1]},trys:[],ops:[]},m,p,x,y;return y={next:M(0),throw:M(1),return:M(2)},typeof Symbol=="function"&&(y[Symbol.iterator]=function(){return this}),y;function M(A){return function(_){return B([A,_])}}function B(A){if(m)throw new TypeError("Generator is already executing.");for(;y&&(y=0,A[0]&&(h=0)),h;)try{if(m=1,p&&(x=A[0]&2?p.return:A[0]?p.throw||((x=p.return)&&x.call(p),0):p.next)&&!(x=x.call(p,A[1])).done)return x;switch(p=0,x&&(A=[A[0]&2,x.value]),A[0]){case 0:case 1:x=A;break;case 4:return h.label++,{value:A[1],done:!1};case 5:h.label++,p=A[1],A=[0];continue;case 7:A=h.ops.pop(),h.trys.pop();continue;default:if(x=h.trys,!(x=x.length>0&&x[x.length-1])&&(A[0]===6||A[0]===2)){h=0;continue}if(A[0]===3&&(!x||A[1]>x[0]&&A[1]<x[3])){h.label=A[1];break}if(A[0]===6&&h.label<x[1]){h.label=x[1],x=A;break}if(x&&h.label<x[2]){h.label=x[2],h.ops.push(A);break}x[2]&&h.ops.pop(),h.trys.pop();continue}A=d.call(g,h)}catch(_){A=[6,_],p=0}finally{m=x=0}if(A[0]&5)throw A[1];return{value:A[0]?A[1]:void 0,done:!0}}},Ri=function(){function g(){}return g.retrieve=function(){if(navigator.mediaDevices)return g.getCamerasFromMediaDevices();var d=MediaStreamTrack;return MediaStreamTrack&&d.getSources?g.getCamerasFromMediaStreamTrack():g.rejectWithError()},g.rejectWithError=function(){var d=$t.unableToQuerySupportedDevices();return g.isHttpsOrLocalhost()||(d=$t.insecureContextCameraQueryError()),Promise.reject(d)},g.isHttpsOrLocalhost=function(){if(location.protocol==="https:")return!0;var d=location.host.split(":")[0];return d==="127.0.0.1"||d==="localhost"},g.getCamerasFromMediaDevices=function(){return _i(this,void 0,void 0,function(){var d,h,m,p,x,y,M;return Oi(this,function(B){switch(B.label){case 0:return d=function(A){for(var _=A.getVideoTracks(),R=0,$=_;R<$.length;R++){var ee=$[R];ee.enabled=!1,ee.stop(),A.removeTrack(ee)}},[4,navigator.mediaDevices.getUserMedia({audio:!1,video:!0})];case 1:return h=B.sent(),[4,navigator.mediaDevices.enumerateDevices()];case 2:for(m=B.sent(),p=[],x=0,y=m;x<y.length;x++)M=y[x],M.kind==="videoinput"&&p.push({id:M.deviceId,label:M.label});return d(h),[2,p]}})})},g.getCamerasFromMediaStreamTrack=function(){return new Promise(function(d,h){var m=function(x){for(var y=[],M=0,B=x;M<B.length;M++){var A=B[M];A.kind==="video"&&y.push({id:A.id,label:A.label})}d(y)},p=MediaStreamTrack;p.getSources(m)})},g}(),Oe;(function(g){g[g.UNKNOWN=0]="UNKNOWN",g[g.NOT_STARTED=1]="NOT_STARTED",g[g.SCANNING=2]="SCANNING",g[g.PAUSED=3]="PAUSED"})(Oe||(Oe={}));var Di=function(){function g(){this.state=Oe.NOT_STARTED,this.onGoingTransactionNewState=Oe.UNKNOWN}return g.prototype.directTransition=function(d){this.failIfTransitionOngoing(),this.validateTransition(d),this.state=d},g.prototype.startTransition=function(d){return this.failIfTransitionOngoing(),this.validateTransition(d),this.onGoingTransactionNewState=d,this},g.prototype.execute=function(){if(this.onGoingTransactionNewState===Oe.UNKNOWN)throw"Transaction is already cancelled, cannot execute().";var d=this.onGoingTransactionNewState;this.onGoingTransactionNewState=Oe.UNKNOWN,this.directTransition(d)},g.prototype.cancel=function(){if(this.onGoingTransactionNewState===Oe.UNKNOWN)throw"Transaction is already cancelled, cannot cancel().";this.onGoingTransactionNewState=Oe.UNKNOWN},g.prototype.getState=function(){return this.state},g.prototype.failIfTransitionOngoing=function(){if(this.onGoingTransactionNewState!==Oe.UNKNOWN)throw"Cannot transition to a new state, already under transition"},g.prototype.validateTransition=function(d){switch(this.state){case Oe.UNKNOWN:throw"Transition from unknown is not allowed";case Oe.NOT_STARTED:this.failIfNewStateIs(d,[Oe.PAUSED]);break;case Oe.SCANNING:break;case Oe.PAUSED:break}},g.prototype.failIfNewStateIs=function(d,h){for(var m=0,p=h;m<p.length;m++){var x=p[m];if(d===x)throw"Cannot transition from ".concat(this.state," to ").concat(d)}},g}(),Mi=function(){function g(d){this.stateManager=d}return g.prototype.startTransition=function(d){return this.stateManager.startTransition(d)},g.prototype.directTransition=function(d){this.stateManager.directTransition(d)},g.prototype.getState=function(){return this.stateManager.getState()},g.prototype.canScanFile=function(){return this.stateManager.getState()===Oe.NOT_STARTED},g.prototype.isScanning=function(){return this.stateManager.getState()!==Oe.NOT_STARTED},g.prototype.isStrictlyScanning=function(){return this.stateManager.getState()===Oe.SCANNING},g.prototype.isPaused=function(){return this.stateManager.getState()===Oe.PAUSED},g}(),Bi=function(){function g(){}return g.create=function(){return new Mi(new Di)},g}(),vi=function(){var g=function(d,h){return g=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(m,p){m.__proto__=p}||function(m,p){for(var x in p)Object.prototype.hasOwnProperty.call(p,x)&&(m[x]=p[x])},g(d,h)};return function(d,h){if(typeof h!="function"&&h!==null)throw new TypeError("Class extends value "+String(h)+" is not a constructor or null");g(d,h);function m(){this.constructor=d}d.prototype=h===null?Object.create(h):(m.prototype=h.prototype,new m)}}(),gt=function(g){vi(d,g);function d(){return g!==null&&g.apply(this,arguments)||this}return d.DEFAULT_WIDTH=300,d.DEFAULT_WIDTH_OFFSET=2,d.FILE_SCAN_MIN_HEIGHT=300,d.FILE_SCAN_HIDDEN_CANVAS_PADDING=100,d.MIN_QR_BOX_SIZE=50,d.SHADED_LEFT=1,d.SHADED_RIGHT=2,d.SHADED_TOP=3,d.SHADED_BOTTOM=4,d.SHADED_REGION_ELEMENT_ID="qr-shaded-region",d.VERBOSE=!1,d.BORDER_SHADER_DEFAULT_COLOR="#ffffff",d.BORDER_SHADER_MATCH_COLOR="rgb(90, 193, 56)",d}(di),Pi=function(){function g(d,h){this.logger=h,this.fps=gt.SCAN_DEFAULT_FPS,d?(d.fps&&(this.fps=d.fps),this.disableFlip=d.disableFlip===!0,this.qrbox=d.qrbox,this.aspectRatio=d.aspectRatio,this.videoConstraints=d.videoConstraints):this.disableFlip=gt.DEFAULT_DISABLE_FLIP}return g.prototype.isMediaStreamConstraintsValid=function(){return this.videoConstraints?Sr.isMediaStreamConstraintsValid(this.videoConstraints,this.logger):(this.logger.logError("Empty videoConstraints",!0),!1)},g.prototype.isShadedBoxEnabled=function(){return!Mt(this.qrbox)},g.create=function(d,h){return new g(d,h)},g}(),Br=function(){function g(d,h){if(this.element=null,this.canvasElement=null,this.scannerPausedUiElement=null,this.hasBorderShaders=null,this.borderShaders=null,this.qrMatch=null,this.renderedCamera=null,this.qrRegion=null,this.context=null,this.lastScanImageFile=null,this.isScanning=!1,!document.getElementById(d))throw"HTML Element with id=".concat(d," not found");this.elementId=d,this.verbose=!1;var m;typeof h=="boolean"?this.verbose=h===!0:h&&(m=h,this.verbose=m.verbose===!0,m.experimentalFeatures),this.logger=new gi(this.verbose),this.qrcode=new Ei(this.getSupportedFormats(h),this.getUseBarCodeDetectorIfSupported(m),this.verbose,this.logger),this.foreverScanTimeout,this.shouldScan=!0,this.stateManagerProxy=Bi.create()}return g.prototype.start=function(d,h,m,p){var x=this;if(!d)throw"cameraIdOrConfig is required";if(!m||typeof m!="function")throw"qrCodeSuccessCallback is required and should be a function.";var y;p?y=p:y=this.verbose?this.logger.log:function(){};var M=Pi.create(h,this.logger);this.clearElement();var B=!1;M.videoConstraints&&(M.isMediaStreamConstraintsValid()?B=!0:this.logger.logError("'videoConstraints' is not valid 'MediaStreamConstraints, it will be ignored.'",!0));var A=B,_=document.getElementById(this.elementId);_.clientWidth?_.clientWidth:gt.DEFAULT_WIDTH,_.style.position="relative",this.shouldScan=!0,this.element=_;var R=this,$=this.stateManagerProxy.startTransition(Oe.SCANNING);return new Promise(function(ee,Ne){var te=A?M.videoConstraints:R.createVideoConstraints(d);if(!te){$.cancel(),Ne("videoConstraints should be defined");return}var et={};(!A||M.aspectRatio)&&(et.aspectRatio=M.aspectRatio);var At={onRenderSurfaceReady:function(Ae,K){R.setupUi(Ae,K,M),R.isScanning=!0,R.foreverScan(M,m,y)}};Ni.failIfNotSupported().then(function(Ae){Ae.create(te).then(function(K){return K.render(x.element,et,At).then(function(le){R.renderedCamera=le,$.execute(),ee(null)}).catch(function(le){$.cancel(),Ne(le)})}).catch(function(K){$.cancel(),Ne($t.errorGettingUserMedia(K))})}).catch(function(Ae){$.cancel(),Ne($t.cameraStreamingNotSupported())})})},g.prototype.pause=function(d){if(!this.stateManagerProxy.isStrictlyScanning())throw"Cannot pause, scanner is not scanning.";this.stateManagerProxy.directTransition(Oe.PAUSED),this.showPausedState(),(Mt(d)||d!==!0)&&(d=!1),d&&this.renderedCamera&&this.renderedCamera.pause()},g.prototype.resume=function(){if(!this.stateManagerProxy.isPaused())throw"Cannot result, scanner is not paused.";if(!this.renderedCamera)throw"renderedCamera doesn't exist while trying resume()";var d=this,h=function(){d.stateManagerProxy.directTransition(Oe.SCANNING),d.hidePausedState()};if(!this.renderedCamera.isPaused()){h();return}this.renderedCamera.resume(function(){h()})},g.prototype.getState=function(){return this.stateManagerProxy.getState()},g.prototype.stop=function(){var d=this;if(!this.stateManagerProxy.isScanning())throw"Cannot stop, scanner is not running or paused.";var h=this.stateManagerProxy.startTransition(Oe.NOT_STARTED);this.shouldScan=!1,this.foreverScanTimeout&&clearTimeout(this.foreverScanTimeout);var m=function(){if(d.element){var x=document.getElementById(gt.SHADED_REGION_ELEMENT_ID);x&&d.element.removeChild(x)}},p=this;return this.renderedCamera.close().then(function(){return p.renderedCamera=null,p.element&&(p.element.removeChild(p.canvasElement),p.canvasElement=null),m(),p.qrRegion&&(p.qrRegion=null),p.context&&(p.context=null),h.execute(),p.hidePausedState(),p.isScanning=!1,Promise.resolve()})},g.prototype.scanFile=function(d,h){return this.scanFileV2(d,h).then(function(m){return m.decodedText})},g.prototype.scanFileV2=function(d,h){var m=this;if(!d||!(d instanceof File))throw"imageFile argument is mandatory and should be instance of File. Use 'event.target.files[0]'.";if(Mt(h)&&(h=!0),!this.stateManagerProxy.canScanFile())throw"Cannot start file scan - ongoing camera scan";return new Promise(function(p,x){m.possiblyCloseLastScanImageFile(),m.clearElement(),m.lastScanImageFile=URL.createObjectURL(d);var y=new Image;y.onload=function(){var M=y.width,B=y.height,A=document.getElementById(m.elementId),_=A.clientWidth?A.clientWidth:gt.DEFAULT_WIDTH,R=Math.max(A.clientHeight?A.clientHeight:B,gt.FILE_SCAN_MIN_HEIGHT),$=m.computeCanvasDrawConfig(M,B,_,R);if(h){var ee=m.createCanvasElement(_,R,"qr-canvas-visible");ee.style.display="inline-block",A.appendChild(ee);var Ne=ee.getContext("2d");if(!Ne)throw"Unable to get 2d context from canvas";Ne.canvas.width=_,Ne.canvas.height=R,Ne.drawImage(y,0,0,M,B,$.x,$.y,$.width,$.height)}var te=gt.FILE_SCAN_HIDDEN_CANVAS_PADDING,et=Math.max(y.width,$.width),At=Math.max(y.height,$.height),Ae=et+2*te,K=At+2*te,le=m.createCanvasElement(Ae,K);A.appendChild(le);var Pt=le.getContext("2d");if(!Pt)throw"Unable to get 2d context from canvas";Pt.canvas.width=Ae,Pt.canvas.height=K,Pt.drawImage(y,0,0,M,B,te,te,et,At);try{m.qrcode.decodeRobustlyAsync(le).then(function(Ce){p(yr.createFromQrcodeResult(Ce))}).catch(x)}catch(Ce){x("QR code parse error, error = ".concat(Ce))}},y.onerror=x,y.onabort=x,y.onstalled=x,y.onsuspend=x,y.src=URL.createObjectURL(d)})},g.prototype.clear=function(){this.clearElement()},g.getCameras=function(){return Ri.retrieve()},g.prototype.getRunningTrackCapabilities=function(){return this.getRenderedCameraOrFail().getRunningTrackCapabilities()},g.prototype.getRunningTrackSettings=function(){return this.getRenderedCameraOrFail().getRunningTrackSettings()},g.prototype.getRunningTrackCameraCapabilities=function(){return this.getRenderedCameraOrFail().getCapabilities()},g.prototype.applyVideoConstraints=function(d){if(d){if(!Sr.isMediaStreamConstraintsValid(d,this.logger))throw"invalid videoConstaints passed, check logs for more details"}else throw"videoConstaints is required argument.";return this.getRenderedCameraOrFail().applyVideoConstraints(d)},g.prototype.getRenderedCameraOrFail=function(){if(this.renderedCamera==null)throw"Scanning is not in running state, call this API only when QR code scanning using camera is in running state.";return this.renderedCamera},g.prototype.getSupportedFormats=function(d){var h=[H.QR_CODE,H.AZTEC,H.CODABAR,H.CODE_39,H.CODE_93,H.CODE_128,H.DATA_MATRIX,H.MAXICODE,H.ITF,H.EAN_13,H.EAN_8,H.PDF_417,H.RSS_14,H.RSS_EXPANDED,H.UPC_A,H.UPC_E,H.UPC_EAN_EXTENSION];if(!d||typeof d=="boolean"||!d.formatsToSupport)return h;if(!Array.isArray(d.formatsToSupport))throw"configOrVerbosityFlag.formatsToSupport should be undefined or an array.";if(d.formatsToSupport.length===0)throw"Atleast 1 formatsToSupport is needed.";for(var m=[],p=0,x=d.formatsToSupport;p<x.length;p++){var y=x[p];fi(y)?m.push(y):this.logger.warn("Invalid format: ".concat(y," passed in config, ignoring."))}if(m.length===0)throw"None of formatsToSupport match supported values.";return m},g.prototype.getUseBarCodeDetectorIfSupported=function(d){if(Mt(d))return!0;if(!Mt(d.useBarCodeDetectorIfSupported))return d.useBarCodeDetectorIfSupported!==!1;if(Mt(d.experimentalFeatures))return!0;var h=d.experimentalFeatures;return Mt(h.useBarCodeDetectorIfSupported)?!0:h.useBarCodeDetectorIfSupported!==!1},g.prototype.validateQrboxSize=function(d,h,m){var p=this,x=m.qrbox;this.validateQrboxConfig(x);var y=this.toQrdimensions(d,h,x),M=function(A){if(A<gt.MIN_QR_BOX_SIZE)throw"minimum size of 'config.qrbox' dimension value is"+" ".concat(gt.MIN_QR_BOX_SIZE,"px.")},B=function(A){return A>d&&(p.logger.warn("`qrbox.width` or `qrbox` is larger than the width of the root element. The width will be truncated to the width of root element."),A=d),A};M(y.width),M(y.height),y.width=B(y.width)},g.prototype.validateQrboxConfig=function(d){if(typeof d!="number"&&typeof d!="function"&&(d.width===void 0||d.height===void 0))throw"Invalid instance of QrDimensions passed for 'config.qrbox'. Both 'width' and 'height' should be set."},g.prototype.toQrdimensions=function(d,h,m){if(typeof m=="number")return{width:m,height:m};if(typeof m=="function")try{return m(d,h)}catch(p){throw new Error("qrbox config was passed as a function but it failed with unknown error"+p)}return m},g.prototype.setupUi=function(d,h,m){m.isShadedBoxEnabled()&&this.validateQrboxSize(d,h,m);var p=Mt(m.qrbox)?{width:d,height:h}:m.qrbox;this.validateQrboxConfig(p);var x=this.toQrdimensions(d,h,p);x.height>h&&this.logger.warn("[Html5Qrcode] config.qrbox has height that isgreater than the height of the video stream. Shading will be ignored");var y=m.isShadedBoxEnabled()&&x.height<=h,M={x:0,y:0,width:d,height:h},B=y?this.getShadedRegionBounds(d,h,x):M,A=this.createCanvasElement(B.width,B.height),_={willReadFrequently:!0},R=A.getContext("2d",_);R.canvas.width=B.width,R.canvas.height=B.height,this.element.append(A),y&&this.possiblyInsertShadingElement(this.element,d,h,x),this.createScannerPausedUiElement(this.element),this.qrRegion=B,this.context=R,this.canvasElement=A},g.prototype.createScannerPausedUiElement=function(d){var h=document.createElement("div");h.innerText=$t.scannerPaused(),h.style.display="none",h.style.position="absolute",h.style.top="0px",h.style.zIndex="1",h.style.background="rgba(9, 9, 9, 0.46)",h.style.color="#FFECEC",h.style.textAlign="center",h.style.width="100%",d.appendChild(h),this.scannerPausedUiElement=h},g.prototype.scanContext=function(d,h){var m=this;return this.stateManagerProxy.isPaused()?Promise.resolve(!1):this.qrcode.decodeAsync(this.canvasElement).then(function(p){return d(p.text,yr.createFromQrcodeResult(p)),m.possiblyUpdateShaders(!0),!0}).catch(function(p){m.possiblyUpdateShaders(!1);var x=$t.codeParseError(p);return h(x,xi.createFrom(x)),!1})},g.prototype.foreverScan=function(d,h,m){var p=this;if(this.shouldScan&&this.renderedCamera){var x=this.renderedCamera.getSurface(),y=x.videoWidth/x.clientWidth,M=x.videoHeight/x.clientHeight;if(!this.qrRegion)throw"qrRegion undefined when localMediaStream is ready.";var B=this.qrRegion.width*y,A=this.qrRegion.height*M,_=this.qrRegion.x*y,R=this.qrRegion.y*M;this.context.drawImage(x,_,R,B,A,0,0,this.qrRegion.width,this.qrRegion.height);var $=function(){p.foreverScanTimeout=setTimeout(function(){p.foreverScan(d,h,m)},p.getTimeoutFps(d.fps))};this.scanContext(h,m).then(function(ee){!ee&&d.disableFlip!==!0?(p.context.translate(p.context.canvas.width,0),p.context.scale(-1,1),p.scanContext(h,m).finally(function(){$()})):$()}).catch(function(ee){p.logger.logError("Error happend while scanning context",ee),$()})}},g.prototype.createVideoConstraints=function(d){if(typeof d=="string")return{deviceId:{exact:d}};if(typeof d=="object"){var h="facingMode",m="deviceId",p={user:!0,environment:!0},x="exact",y=function(Ne){if(Ne in p)return!0;throw"config has invalid 'facingMode' value = "+"'".concat(Ne,"'")},M=Object.keys(d);if(M.length!==1)throw"'cameraIdOrConfig' object should have exactly 1 key,"+" if passed as an object, found ".concat(M.length," keys");var B=Object.keys(d)[0];if(B!==h&&B!==m)throw"Only '".concat(h,"' and '").concat(m,"' ")+" are supported for 'cameraIdOrConfig'";if(B===h){var A=d.facingMode;if(typeof A=="string"){if(y(A))return{facingMode:A}}else if(typeof A=="object")if(x in A){if(y(A["".concat(x)]))return{facingMode:{exact:A["".concat(x)]}}}else throw"'facingMode' should be string or object with"+" ".concat(x," as key.");else{var _=typeof A;throw"Invalid type of 'facingMode' = ".concat(_)}}else{var R=d.deviceId;if(typeof R=="string")return{deviceId:R};if(typeof R=="object"){if(x in R)return{deviceId:{exact:R["".concat(x)]}};throw"'deviceId' should be string or object with"+" ".concat(x," as key.")}else{var $=typeof R;throw"Invalid type of 'deviceId' = ".concat($)}}}var ee=typeof d;throw"Invalid type of 'cameraIdOrConfig' = ".concat(ee)},g.prototype.computeCanvasDrawConfig=function(d,h,m,p){if(d<=m&&h<=p){var x=(m-d)/2,y=(p-h)/2;return{x,y,width:d,height:h}}else{var M=d,B=h;return d>m&&(h=m/d*h,d=m),h>p&&(d=p/h*d,h=p),this.logger.log("Image downsampled from "+"".concat(M,"X").concat(B)+" to ".concat(d,"X").concat(h,".")),this.computeCanvasDrawConfig(d,h,m,p)}},g.prototype.clearElement=function(){if(this.stateManagerProxy.isScanning())throw"Cannot clear while scan is ongoing, close it first.";var d=document.getElementById(this.elementId);d&&(d.innerHTML="")},g.prototype.possiblyUpdateShaders=function(d){this.qrMatch!==d&&(this.hasBorderShaders&&this.borderShaders&&this.borderShaders.length&&this.borderShaders.forEach(function(h){h.style.backgroundColor=d?gt.BORDER_SHADER_MATCH_COLOR:gt.BORDER_SHADER_DEFAULT_COLOR}),this.qrMatch=d)},g.prototype.possiblyCloseLastScanImageFile=function(){this.lastScanImageFile&&(URL.revokeObjectURL(this.lastScanImageFile),this.lastScanImageFile=null)},g.prototype.createCanvasElement=function(d,h,m){var p=d,x=h,y=document.createElement("canvas");return y.style.width="".concat(p,"px"),y.style.height="".concat(x,"px"),y.style.display="none",y.id=Mt(m)?"qr-canvas":m,y},g.prototype.getShadedRegionBounds=function(d,h,m){if(m.width>d||m.height>h)throw"'config.qrbox' dimensions should not be greater than the dimensions of the root HTML element.";return{x:(d-m.width)/2,y:(h-m.height)/2,width:m.width,height:m.height}},g.prototype.possiblyInsertShadingElement=function(d,h,m,p){if(!(h-p.width<1||m-p.height<1)){var x=document.createElement("div");x.style.position="absolute";var y=(h-p.width)/2,M=(m-p.height)/2;if(x.style.borderLeft="".concat(y,"px solid rgba(0, 0, 0, 0.48)"),x.style.borderRight="".concat(y,"px solid rgba(0, 0, 0, 0.48)"),x.style.borderTop="".concat(M,"px solid rgba(0, 0, 0, 0.48)"),x.style.borderBottom="".concat(M,"px solid rgba(0, 0, 0, 0.48)"),x.style.boxSizing="border-box",x.style.top="0px",x.style.bottom="0px",x.style.left="0px",x.style.right="0px",x.id="".concat(gt.SHADED_REGION_ELEMENT_ID),h-p.width<11||m-p.height<11)this.hasBorderShaders=!1;else{var B=5,A=40;this.insertShaderBorders(x,A,B,-B,null,0,!0),this.insertShaderBorders(x,A,B,-B,null,0,!1),this.insertShaderBorders(x,A,B,null,-B,0,!0),this.insertShaderBorders(x,A,B,null,-B,0,!1),this.insertShaderBorders(x,B,A+B,-B,null,-B,!0),this.insertShaderBorders(x,B,A+B,null,-B,-B,!0),this.insertShaderBorders(x,B,A+B,-B,null,-B,!1),this.insertShaderBorders(x,B,A+B,null,-B,-B,!1),this.hasBorderShaders=!0}d.append(x)}},g.prototype.insertShaderBorders=function(d,h,m,p,x,y,M){var B=document.createElement("div");B.style.position="absolute",B.style.backgroundColor=gt.BORDER_SHADER_DEFAULT_COLOR,B.style.width="".concat(h,"px"),B.style.height="".concat(m,"px"),p!==null&&(B.style.top="".concat(p,"px")),x!==null&&(B.style.bottom="".concat(x,"px")),M?B.style.left="".concat(y,"px"):B.style.right="".concat(y,"px"),this.borderShaders||(this.borderShaders=[]),this.borderShaders.push(B),d.appendChild(B)},g.prototype.showPausedState=function(){if(!this.scannerPausedUiElement)throw"[internal error] scanner paused UI element not found";this.scannerPausedUiElement.style.display="block"},g.prototype.hidePausedState=function(){if(!this.scannerPausedUiElement)throw"[internal error] scanner paused UI element not found";this.scannerPausedUiElement.style.display="none"},g.prototype.getTimeoutFps=function(d){return 1e3/d},g}(),vr;(function(g){g[g.STATUS_DEFAULT=0]="STATUS_DEFAULT",g[g.STATUS_SUCCESS=1]="STATUS_SUCCESS",g[g.STATUS_WARNING=2]="STATUS_WARNING",g[g.STATUS_REQUESTING_PERMISSION=3]="STATUS_REQUESTING_PERMISSION"})(vr||(vr={}));function Li({style:g={}}){const d={position:"absolute",backgroundColor:"rgb(255, 255, 255)"};return G.jsxs("div",{id:"qr-scan-box",style:st({boxSizing:"border-box",inset:"0px"},g),children:[G.jsx("div",{style:st({width:"40px",height:"5px",top:"-5px",left:"0px"},d)}),G.jsx("div",{style:st({width:"40px",height:"5px",top:"-5px",right:"0px"},d)}),G.jsx("div",{style:st({width:"40px",height:"5px",bottom:"-5px",left:"0px"},d)}),G.jsx("div",{style:st({width:"40px",height:"5px",bottom:"-5px",right:"0px"},d)}),G.jsx("div",{style:st({width:"5px",height:"45px",top:"-5px",left:"-5px"},d)}),G.jsx("div",{style:st({width:"5px",height:"45px",bottom:"-5px",left:"-5px"},d)}),G.jsx("div",{style:st({width:"5px",height:"45px",top:"-5px",right:"-5px"},d)}),G.jsx("div",{style:st({width:"5px",height:"45px",bottom:"-5px",right:"-5px"},d)})]})}function ki({onScannerSizeChanged:g,elementId:d}){const[h,m]=Me.useState(),p=Kn.useNavigate(),{t:x}=xt.useTranslation("block-workbench"),y=Me.useMemo(()=>{const _=Math.max(document.documentElement.clientWidth||0,window.innerWidth||0),R=Math.max(document.documentElement.clientHeight||0,window.innerHeight||0);return{width:_,height:R}},[]),M=Me.useCallback(_=>Jt(this,null,function*(){return _.start({facingMode:"environment"},{fps:10,qrbox(R,$){return g({width:R,height:$}),{width:y.width,height:y.height}}},R=>{p(R)},void 0)}),[p,g,y]),B=Me.useCallback(_=>Jt(this,null,function*(){const R=_.getState();if([Oe.SCANNING,Oe.PAUSED].includes(R))return _.stop()}),[]),A=Me.useCallback(_=>Jt(this,null,function*(){yield B(h);try{const{decodedText:R}=yield h.scanFileV2(_,!1);p(R)}catch(R){alert(x("QR code recognition failed, please scan again")),M(h)}}),[h,B,M,x,p]);return Me.useEffect(()=>{const _=new Br(d);return m(_),M(_),()=>{B(_)}},[d,M,B]),{startScanCamera:M,startScanFile:A}}const Pr="qrcode",Fi=g=>{const d=Me.useRef(),h=Me.useRef(),{t:m}=xt.useTranslation("block-workbench"),[p,x]=Me.useState({width:0,height:0}),y=Math.max(document.documentElement.clientWidth||0,window.innerWidth||0),M=Math.max(document.documentElement.clientHeight||0,window.innerHeight||0),{startScanFile:B}=ki({onScannerSizeChanged:x,elementId:Pr}),A=()=>{const Ne=Math.floor(Math.min(y,M)*.6);return{left:`${(y-Ne)/2}px`,top:`${(M-Ne)/2}px`,position:"fixed",width:`${Ne}px`,height:`${Ne}px`}},_=()=>{h.current&&h.current.click()},R=Ne=>{const te=Ne.target.files;if(te.length>0){const et=te[0];et.size<1e6?B(et):alert(m("The image size is too large. Please compress it to below 1MB before uploading"))}};Me.useEffect(()=>(document.documentElement.style.overscrollBehavior="none",()=>{document.documentElement.style.overscrollBehavior="default"}),[]),Me.useEffect(()=>{const{width:Ne,height:te}=p,et=Math.max(document.documentElement.clientWidth||0,window.innerWidth||0),At=Math.max(document.documentElement.clientHeight||0,window.innerHeight||0);if(Ne>0&&te>0&&te<At){const Ae=At/te,K=Math.floor(Ae*Ne),le=document.getElementsByTagName("video")[0];le.style.height=`${At}px`,le.style.width=`${K}px`,d.current.style.left=`${(et-K)/2}px`,d.current.style.position="absolute"}},[p]);const $=()=>G.jsx("div",{style:{position:"absolute",bottom:"20px",left:"20px",padding:"10px 60px"},children:G.jsxs("div",{style:{color:"white",width:"40px",display:"flex",flexDirection:"column",alignItems:"center"},children:[G.jsx(ot.FileImageOutlined,{style:ee,onClick:_}),m("Album"),G.jsx("input",{ref:h,type:"file",accept:"image/*",onChange:R,style:{visibility:"hidden"}})]})}),ee={zIndex:"1003",fontSize:"1.8em",fontWeight:"bold"};return G.jsxs(G.Fragment,{children:[G.jsx("div",{ref:d,id:Pr,style:{position:"absolute"}}),G.jsx(Li,{style:st({},A())}),G.jsx($,{})]})},Ui=g=>{const{visible:d,setVisible:h}=W.useActionContext(),[m,p]=Me.useState(!1),{t:x}=xt.useTranslation("block-workbench");Me.useEffect(()=>{d&&!m&&Jt(this,null,function*(){try{(yield Br.getCameras()).length===0?alert(x("No camera device detected")):p(!0)}catch(_){const R={NotFoundError:x("No camera device detected"),NotAllowedError:x("You have not granted permission to use the camera")};console.log(_);const $=R[_.name];alert($!=null?$:_),p(!1),h(!1)}})},[d,m,h,x]);const y={position:"fixed",width:"100%",height:"100%",background:"black",zIndex:"1001",top:0,left:0,overflow:"hidden"},M={position:"absolute",top:"22px",left:"20px",zIndex:"1003",color:"white",fontSize:"1.8em",fontWeight:"bold"},B={position:"absolute",color:"white",fontSize:"1.5em",left:0,right:0,top:"20px",zIndex:"1002",marginLeft:"auto",marginRight:"auto",textAlign:"center"};return d&&m?G.jsxs("div",{style:y,children:[G.jsx(Fi,{}),G.jsx(ot.LeftOutlined,{style:M,onClick:()=>h(!1)}),G.jsx("div",{style:B,children:x("Scan QR code")})]}):null};function Vi(){var p;const g=Ye.useField(),d=Ye.useFieldSchema(),{dn:h}=W.useDesignable(),{t:m}=xt.useTranslation();return G.jsx(W.SchemaSettingsModalItem,{title:m("Edit block title"),schema:{type:"object",title:m("Edit block title"),properties:{title:{title:m("Block title"),type:"string",default:(p=d==null?void 0:d["x-decorator-props"])==null?void 0:p.title,"x-decorator":"FormItem","x-component":"Input"}}},onSubmit:({title:x})=>{console.log("titleSchemaTest",d,g);const y=d["x-decorator-props"]||{};y.title=x,d["x-decorator-props"]=y,g.decoratorProps.title=x,h.emit("patch",{schema:{"x-uid":d["x-uid"],"x-decorator-props":d["x-decorator-props"]}}),h.refresh()}})}const en={Grid:"grid",List:"list"},Gi=()=>{var p;const{t:g}=xt.useTranslation(),d=Ye.useFieldSchema(),h=Ye.useField(),{dn:m}=W.useDesignable();return G.jsx(W.SchemaSettingsSelectItem,{title:g("Layout",{ns:"block-workbench"}),options:[{label:g("Grid",{ns:"block-workbench"}),value:en.Grid},{label:g("List",{ns:"block-workbench"}),value:en.List}],value:((p=d==null?void 0:d["x-component-props"])==null?void 0:p.layout)||en.Grid,onChange:x=>{h.componentProps.layout=x;const y={"x-uid":d["x-uid"]};d["x-component-props"]=d["x-component-props"]||{},y["x-component-props"]=d["x-component-props"]||{},y["x-component-props"].layout=x,d["x-component-props"].layout=x,m.emit("patch",{schema:y}),m.refresh()}})},Wi=new W.SchemaSettings({name:"blockSettings:workbench",items:[{name:"title",Component:Vi},{name:"setTheBlockHeight",Component:W.SchemaSettingsBlockHeightItem},{name:"layout",Component:Gi},{type:"remove",name:"remove"}]}),Hi=Ye.observer(()=>{const g=Ye.useFieldSchema(),{render:d}=W.useSchemaInitializerRender(g["x-initializer"]);return d()},{displayName:"WorkbenchConfigureActionsButton"}),Xi=()=>{const g=Ye.useFieldSchema(),{designable:d}=W.useDesignable(),{layout:h=en.Grid}=g.parent["x-component-props"]||{},[m,p]=Me.useState(8);return Me.useEffect(()=>{const x=()=>{const y=document.getElementsByClassName("mobile-page-content")[0];if(y){const M=y.offsetWidth-48,B=100,A=Math.floor(M/B),_=A*B,$=M-_;$>0?p($/(A-1)):p(0)}};return window.addEventListener("resize",x),x(),()=>{window.removeEventListener("resize",x)}},[Object.keys((g==null?void 0:g.properties)||{}).length]),G.jsx("div",{style:{marginBottom:d?"1rem":0},className:"nb-action-panel-warp",children:G.jsx(W.DndContext,{children:h===en.Grid?G.jsx($e.Space,{wrap:!0,size:m,children:g.mapProperties((x,y)=>G.jsx(Ye.RecursionField,{name:y,schema:x},y))}):G.jsx($e.List,{itemLayout:"horizontal",children:g.mapProperties((x,y)=>{var A,_;const M=(A=x["x-component-props"])==null?void 0:A.icon,B=(_=x["x-component-props"])==null?void 0:_.iconColor;return G.jsx($e.List.Item,{className:Er.css`
|
|
30
|
+
.ant-list-item-meta-avatar {
|
|
31
|
+
margin-inline-end: 0px !important;
|
|
32
|
+
}
|
|
33
|
+
.ant-list-item-meta-title {
|
|
34
|
+
overflow: hidden;
|
|
35
|
+
text-overflow: ellipsis;
|
|
36
|
+
font-size: 14px;
|
|
37
|
+
}
|
|
38
|
+
.ant-list-item-meta-title button {
|
|
39
|
+
font-size: 14px;
|
|
40
|
+
overflow: hidden;
|
|
41
|
+
text-overflow: ellipsis;
|
|
42
|
+
width: 100%;
|
|
43
|
+
text-align: left;
|
|
44
|
+
}
|
|
45
|
+
`,children:G.jsx($e.List.Item.Meta,{avatar:G.jsx($e.Avatar,{style:{backgroundColor:B},icon:G.jsx(W.Icon,{type:M})}),title:G.jsx(Ye.RecursionField,{name:y,schema:x},y)})},y)})})})})},Lr=Me.createContext({layout:"grid"}),kr=W.withDynamicSchemaProps(g=>{const d=Ye.useFieldSchema(),{layout:h="grid"}=d["x-component-props"]||{},m=W.useBlockHeight(),{token:p}=$e.theme.useToken(),{designable:x}=W.useDesignable();return G.jsx("div",{className:"nb-action-penal-container",children:G.jsx("div",{className:Er.css`
|
|
46
|
+
.nb-action-panel-warp {
|
|
47
|
+
height: ${m?m-(x?4:2)*p.marginLG+"px":"100%"};
|
|
48
|
+
overflow-y: auto;
|
|
49
|
+
margin-left: -24px;
|
|
50
|
+
margin-right: -24px;
|
|
51
|
+
padding-left: 24px;
|
|
52
|
+
padding-right: 24px;
|
|
53
|
+
}
|
|
54
|
+
`,children:G.jsx(Lr.Provider,{value:{layout:h},children:G.jsx(W.DataSourceContext.Provider,{value:void 0,children:G.jsx(W.CollectionContext.Provider,{value:void 0,children:g.children})})})})})},{displayName:"WorkbenchBlock"});kr.ActionBar=()=>G.jsxs(G.Fragment,{children:[G.jsx(Xi,{}),G.jsx(Hi,{})]});const Fr=dn.createStyles(({token:g,css:d})=>({action:d`
|
|
55
|
+
background-color: transparent;
|
|
56
|
+
border: 0;
|
|
57
|
+
height: auto;
|
|
58
|
+
box-shadow: none;
|
|
59
|
+
`,title:d`
|
|
60
|
+
margin-top: ${g.marginSM}px;
|
|
61
|
+
text-overflow: ellipsis;
|
|
62
|
+
overflow: hidden;
|
|
63
|
+
`}));function zi(){var y,M;const g=Ye.useFieldSchema(),d=(y=g["x-component-props"])==null?void 0:y.icon,h=(M=g["x-component-props"])==null?void 0:M.iconColor,{layout:m}=Me.useContext(Lr),{styles:p,cx:x}=Fr();return m===en.Grid?G.jsxs("div",{title:g.title,style:{width:"70px",overflow:"hidden"},children:[G.jsx($e.Avatar,{style:{backgroundColor:h},size:54,icon:G.jsx(W.Icon,{type:d})}),G.jsx("div",{className:x(p.title),children:g.title})]}):G.jsx("span",{children:g.title})}const Yi=W.withDynamicSchemaProps(g=>{const M=g,{className:d}=M,h=Zn(M,["className"]),{styles:m,cx:p}=Fr(),x=Ye.useFieldSchema(),y=W.useComponent(g==null?void 0:g.targetComponent)||W.Action;return G.jsx(y,_n(st({className:p(d,m.action,"nb-action-panel")},h),{icon:null,title:G.jsx(zi,{}),confirmTitle:x.title}))}),Zi={type:"void","x-decorator":"CardItem","x-decorator-props":{title:""},"x-settings":"blockSettings:workbench","x-schema-toolbar":"BlockSchemaToolbar","x-component":"WorkbenchBlock",properties:{actions:{"x-component":"WorkbenchBlock.ActionBar","x-initializer":"workbench:configureActions"}}},vt={type:"item",name:"workbenchBlock",icon:"FileImageOutlined",useComponentProps(){const{t:g}=xt.useTranslation("@nocobase/plugin-block-workbench"),{insert:d}=W.useSchemaInitializer();return{title:g("Action panel"),onClick:()=>{d(Zi)}}}};function Mn(g){const A=g,{modalSchema:d={}}=A,h=Zn(A,["modalSchema"]),_=d,{properties:m}=_,p=Zn(_,["properties"]),[x,y]=Me.useState(!1),{setVisible:M}=W.useSchemaInitializer(),B=Me.useMemo(()=>_n(st({name:hi.uid(),"x-component":"Action.Modal","x-component-props":{width:"520px"},type:"void","x-decorator":"FormV2","x-decorator-props":{}},p),{properties:_n(st({},m),{footer1:{"x-component":"Action.Modal.Footer",type:"void",properties:{close:{title:"Cancel","x-component":"Action","x-component-props":{type:"default"},"x-use-component-props":()=>({onClick(){var R;y(!1),(R=g==null?void 0:g.onCancel)==null||R.call(g)}})},submit:{title:"OK","x-component":"Action","x-component-props":{type:"primary"},"x-use-component-props":()=>{const R=Ye.useForm();return{onClick(){return Jt(this,null,function*(){var ee;yield R.submit(),y(!1),(ee=g==null?void 0:g.onSubmit)==null||ee.call(g,R.values)})}}}}}}})}),[x]);return G.jsxs(G.Fragment,{children:[G.jsx(W.SchemaInitializerItem,_n(st({},h),{onClick:R=>{var $;M(!1),y(!0),($=g==null?void 0:g.onClick)==null||$.call(g,R)}})),G.jsx(W.ActionContextProvider,{value:{visible:x,setVisible:y},children:G.jsx(W.SchemaComponent,{components:{Action:W.Action},schema:B})})]})}const Ki=new W.SchemaSettings({name:"workbench:actionSettings:link",items:[{name:"editButton",Component:W.ButtonEditor,useComponentProps(){return{hasIconColor:!0}}},{name:"editLink",Component:W.SchemaSettingsActionLinkItem},{sort:800,name:"d1",type:"divider"},{sort:900,type:"remove",name:"remove"}]});function ji(g){const d=W.useSchemaInitializerItem(),{insert:h}=W.useSchemaInitializer(),{t:m}=xt.useTranslation();return G.jsx(Mn,{title:d.title,modalSchema:{title:m("Add link"),properties:{title:{title:m("Title"),required:!0,"x-component":"Input","x-decorator":"FormItem"},icon:{title:m("Icon"),required:!0,"x-component":"IconPicker","x-decorator":"FormItem"},iconColor:{title:m("Color"),required:!0,default:"#1677FF","x-component":"ColorPicker","x-decorator":"FormItem"}}},onSubmit:p=>{h({type:"void",title:p.title,"x-action":"customize:link","x-toolbar":"ActionSchemaToolbar","x-settings":"workbench:actionSettings:link","x-component":"WorkbenchAction","x-use-component-props":"useLinkActionProps","x-component-props":{icon:p.icon,iconColor:p.iconColor}})}})}const qi=new W.SchemaInitializer({name:"workbench:configureActions",title:'{{t("Configure actions")}}',insertPosition:"beforeEnd",items:[{name:"link",title:'{{t("Link")}}',Component:ji}]}),Qi=new W.SchemaSettings({name:"workbench:actionSettings:popup",items:[{name:"editButton",Component:W.ButtonEditor,useComponentProps(){return{hasIconColor:!0}}},{name:"openMode",Component:W.SchemaSettingOpenModeSchemaItems,useComponentProps(){const{t:g}=xt.useTranslation(),{hideOpenMode:d}=W.useOpenModeContext();return{openSize:!d,modeOptions:d&&[{label:g("Drawer"),value:"drawer"},{label:g("Page"),value:"page"}]}}},{sort:800,name:"d1",type:"divider"},{sort:900,type:"remove",name:"remove"}]});function Ji(g){const{insert:d}=W.useSchemaInitializer(),{t:h}=xt.useTranslation(),{isMobile:m}=W.useOpenModeContext();return G.jsx(Mn,{title:h("Popup"),modalSchema:{title:h("Add popup",{ns:"block-workbench"}),properties:{title:{title:h("Title"),required:!0,"x-component":"Input","x-decorator":"FormItem"},icon:{title:h("Icon"),required:!0,"x-component":"IconPicker","x-decorator":"FormItem"},iconColor:{title:h("Color"),required:!0,default:"#1677FF","x-component":"ColorPicker","x-decorator":"FormItem"}}},onSubmit:p=>{d({type:"void",title:p.title,"x-action":"customize:popup","x-toolbar":"ActionSchemaToolbar","x-settings":"workbench:actionSettings:popup","x-component":"WorkbenchAction","x-component-props":{icon:p.icon,iconColor:p.iconColor,refreshDataBlockRequest:!1},properties:{drawer:{type:"void",title:p.title,"x-component":"Action.Container","x-component-props":{className:"nb-action-popup"},properties:{tabs:{type:"void","x-component":"Tabs","x-component-props":{},"x-initializer":"popup:addTab",properties:{tab1:{type:"void",title:'{{t("Details")}}',"x-component":"Tabs.TabPane","x-designer":"Tabs.Designer","x-component-props":{},properties:{grid:{type:"void","x-component":"Grid","x-initializer":m?"mobile:addBlock":"page:addBlock",properties:{}}}}}}}}}})}})}const $i=new W.SchemaSettings({name:"workbench:actionSettings:scanQrCode",items:[{name:"editButton",Component:W.ButtonEditor,useComponentProps(){return{hasIconColor:!0}}},{name:"d1",type:"divider"},{type:"remove",name:"remove"}]});function es(g){W.useSchemaInitializerItem();const{insert:d}=W.useSchemaInitializer(),{t:h}=xt.useTranslation();return G.jsx(Mn,{title:h("Scan QR code",{ns:"block-workbench"}),modalSchema:{title:h("Scan QR code",{ns:"block-workbench"}),properties:{title:{title:h("Title"),required:!0,"x-component":"Input","x-decorator":"FormItem"},icon:{title:h("Icon"),required:!0,"x-component":"IconPicker","x-decorator":"FormItem"},iconColor:{title:h("Color"),required:!0,default:"#1677FF","x-component":"ColorPicker","x-decorator":"FormItem"}}},onSubmit:m=>{d({type:"void",title:m.title,"x-component":"WorkbenchAction","x-toolbar":"ActionSchemaToolbar","x-settings":"workbench:actionSettings:scanQrCode","x-component-props":{icon:m.icon,iconColor:m.iconColor,openMode:"modal"},properties:{modal:{type:"void","x-component":"QRCodeScanner",title:h("Scan QR code",{ns:"block-workbench"})}}})}})}const ts=new W.SchemaSettings({name:"workbench:actionSettings:customRequest",items:[{name:"editButton",Component:W.ButtonEditor,useComponentProps(){return{hasIconColor:!0}}},{name:"editLink",Component:W.SchemaSettingsActionLinkItem},{sort:800,name:"d1",type:"divider"},{sort:900,type:"remove",name:"remove"}]});function ns(g){const{insert:d}=W.useSchemaInitializer(),{t:h}=xt.useTranslation();return G.jsx(Mn,{title:h("Custom request"),modalSchema:{title:h("Add custom request",{ns:"block-workbench"}),properties:{title:{title:h("Title"),required:!0,"x-component":"Input","x-decorator":"FormItem"},icon:{title:h("Icon"),required:!0,"x-component":"IconPicker","x-decorator":"FormItem"},iconColor:{title:h("Color"),required:!0,default:"#1677FF","x-component":"ColorPicker","x-decorator":"FormItem"}}},onSubmit:m=>{d({type:"void",title:m.title,"x-component":"WorkbenchAction","x-component-props":{icon:m.icon,iconColor:m.iconColor,targetComponent:"CustomRequestAction"},"x-action":"customize:form:request","x-toolbar":"ActionSchemaToolbar","x-settings":"actionSettings:customRequest","x-decorator":"CustomRequestAction.Decorator","x-action-settings":{onSuccess:{manualClose:!1,redirecting:!1,successMessage:'{{t("Request success")}}'}}})}})}class Ur extends W.Plugin{load(){return Jt(this,null,function*(){this.app.addComponents({WorkbenchBlock:kr,QRCodeScanner:Ui,WorkbenchAction:Yi}),this.app.schemaSettingsManager.add(Wi),this.app.schemaInitializerManager.add(qi),this.app.schemaInitializerManager.addItem("page:addBlock",`otherBlocks.${vt.name}`,vt),this.app.schemaInitializerManager.addItem("popup:common:addBlock",`otherBlocks.${vt.name}`,vt),this.app.schemaInitializerManager.addItem("mobilePage:addBlock",`otherBlocks.${vt.name}`,vt),this.app.schemaInitializerManager.addItem("mobile:addBlock",`otherBlocks.${vt.name}`,vt),this.app.schemaSettingsManager.add(Ki),this.app.schemaSettingsManager.add($i),this.app.schemaInitializerManager.addItem("workbench:configureActions","qrcode",{Component:es}),this.app.schemaSettingsManager.add(Qi),this.app.schemaInitializerManager.addItem("workbench:configureActions","popup",{Component:Ji}),this.app.schemaSettingsManager.add(ts),this.app.schemaInitializerManager.addItem("workbench:configureActions","customRequest",{Component:ns})})}}oe.PluginBlockWorkbenchClient=Ur,oe.default=Ur,Object.defineProperties(oe,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|