@nocobase/plugin-block-workbench 1.7.0-beta.8 → 1.8.0-beta.1
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/LICENSE.txt +4 -4
- package/dist/client/a057862e45868f49.js +10 -0
- package/dist/client/components/qrcode-scanner/index.d.ts +3 -1
- package/dist/client/components/qrcode-scanner/useScanner.d.ts +2 -1
- package/dist/client/d180e3dfa95b10ab.js +10 -0
- package/dist/client/index.js +1 -1
- package/dist/externalVersion.js +4 -4
- package/package.json +3 -2
- package/dist/client/0e3ed2c078d01117.js +0 -10
- package/dist/client/cf4d19b3b27978aa.js +0 -10
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* This file is part of the NocoBase (R) project.
|
|
3
|
-
* Copyright (c) 2020-2024 NocoBase Co., Ltd.
|
|
4
|
-
* Authors: NocoBase Team.
|
|
5
|
-
*
|
|
6
|
-
* This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
|
|
7
|
-
* For more information, please refer to: https://www.nocobase.com/agreement.
|
|
8
|
-
*/
|
|
9
|
-
|
|
10
|
-
(self.webpackChunk_nocobase_plugin_block_workbench=self.webpackChunk_nocobase_plugin_block_workbench||[]).push([["918"],{738:function(e,t,r){"use strict";r.d(t,{t2:function(){return et},lz:function(){return w}}),(c=u||(u={}))[c.QR_CODE=0]="QR_CODE",c[c.AZTEC=1]="AZTEC",c[c.CODABAR=2]="CODABAR",c[c.CODE_39=3]="CODE_39",c[c.CODE_93=4]="CODE_93",c[c.CODE_128=5]="CODE_128",c[c.DATA_MATRIX=6]="DATA_MATRIX",c[c.MAXICODE=7]="MAXICODE",c[c.ITF=8]="ITF",c[c.EAN_13=9]="EAN_13",c[c.EAN_8=10]="EAN_8",c[c.PDF_417=11]="PDF_417",c[c.RSS_14=12]="RSS_14",c[c.RSS_EXPANDED=13]="RSS_EXPANDED",c[c.UPC_A=14]="UPC_A",c[c.UPC_E=15]="UPC_E",c[c.UPC_EAN_EXTENSION=16]="UPC_EAN_EXTENSION";var n,i,o,s,a,l,h,c,u,d,f,g,w,m,p=new Map([[u.QR_CODE,"QR_CODE"],[u.AZTEC,"AZTEC"],[u.CODABAR,"CODABAR"],[u.CODE_39,"CODE_39"],[u.CODE_93,"CODE_93"],[u.CODE_128,"CODE_128"],[u.DATA_MATRIX,"DATA_MATRIX"],[u.MAXICODE,"MAXICODE"],[u.ITF,"ITF"],[u.EAN_13,"EAN_13"],[u.EAN_8,"EAN_8"],[u.PDF_417,"PDF_417"],[u.RSS_14,"RSS_14"],[u.RSS_EXPANDED,"RSS_EXPANDED"],[u.UPC_A,"UPC_A"],[u.UPC_E,"UPC_E"],[u.UPC_EAN_EXTENSION,"UPC_EAN_EXTENSION"]]);(n=d||(d={}))[n.UNKNOWN=0]="UNKNOWN",n[n.URL=1]="URL";(i=f||(f={}))[i.SCAN_TYPE_CAMERA=0]="SCAN_TYPE_CAMERA",i[i.SCAN_TYPE_FILE=1]="SCAN_TYPE_FILE";var A=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=[f.SCAN_TYPE_CAMERA,f.SCAN_TYPE_FILE],e}(),C=function(){function e(e,t){this.format=e,this.formatName=t}return e.prototype.toString=function(){return this.formatName},e.create=function(t){if(!p.has(t))throw"".concat(t," not in html5QrcodeSupportedFormatsTextMap");return new e(t,p.get(t))},e}(),E=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}();(o=g||(g={}))[o.UNKWOWN_ERROR=0]="UNKWOWN_ERROR",o[o.IMPLEMENTATION_ERROR=1]="IMPLEMENTATION_ERROR",o[o.NO_CODE_FOUND_ERROR=2]="NO_CODE_FOUND_ERROR";var I=function(){function e(){}return e.createFrom=function(e){return{errorMessage:e,type:g.UNKWOWN_ERROR}},e}(),S=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}(),y=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}(),N=function(){function e(){}return e.poweredBy=function(){return"Powered by "},e.reportIssues=function(){return"Report issues"},e}(),D=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 s=i[o];if(n.has(s))return t.logError("".concat(s," is not supported videoConstaints."),!0),!1}return!0},e}(),M=r("103"),R=function(){function e(e,t,r){if(this.formatMap=new Map([[u.QR_CODE,M.BarcodeFormat.QR_CODE],[u.AZTEC,M.BarcodeFormat.AZTEC],[u.CODABAR,M.BarcodeFormat.CODABAR],[u.CODE_39,M.BarcodeFormat.CODE_39],[u.CODE_93,M.BarcodeFormat.CODE_93],[u.CODE_128,M.BarcodeFormat.CODE_128],[u.DATA_MATRIX,M.BarcodeFormat.DATA_MATRIX],[u.MAXICODE,M.BarcodeFormat.MAXICODE],[u.ITF,M.BarcodeFormat.ITF],[u.EAN_13,M.BarcodeFormat.EAN_13],[u.EAN_8,M.BarcodeFormat.EAN_8],[u.PDF_417,M.BarcodeFormat.PDF_417],[u.RSS_14,M.BarcodeFormat.RSS_14],[u.RSS_EXPANDED,M.BarcodeFormat.RSS_EXPANDED],[u.UPC_A,M.BarcodeFormat.UPC_A],[u.UPC_E,M.BarcodeFormat.UPC_E],[u.UPC_EAN_EXTENSION,M.BarcodeFormat.UPC_EAN_EXTENSION]]),this.reverseFormatMap=this.createReverseFormatMap(),!M)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(M.DecodeHintType.POSSIBLE_FORMATS,n),i.set(M.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 M.MultiFormatReader(this.verbose,this.hints),r=new M.HTMLCanvasElementLuminanceSource(e),n=new M.BinaryBitmap(new M.HybridBinarizer(r)),i=t.decode(n);return{text:i.text,format:C.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,s={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function a(a){return function(l){return function(a){if(r)throw TypeError("Generator is already executing.");for(;o&&(o=0,a[0]&&(s=0)),s;)try{if(r=1,n&&(i=2&a[0]?n.return:a[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,a[1])).done)return i;switch(n=0,i&&(a=[2&a[0],i.value]),a[0]){case 0:case 1:i=a;break;case 4:return s.label++,{value:a[1],done:!1};case 5:s.label++,n=a[1],a=[0];continue;case 7:a=s.ops.pop(),s.trys.pop();continue;default:if(!(i=(i=s.trys).length>0&&i[i.length-1])&&(6===a[0]||2===a[0])){s=0;continue}if(3===a[0]&&(!i||a[1]>i[0]&&a[1]<i[3])){s.label=a[1];break}if(6===a[0]&&s.label<i[1]){s.label=i[1],i=a;break}if(i&&s.label<i[2]){s.label=i[2],s.ops.push(a);break}i[2]&&s.ops.pop(),s.trys.pop();continue}a=t.call(e,s)}catch(e){a=[6,e],n=0}finally{r=i=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,l])}}},b=function(){function e(t,r,n){if(this.formatMap=new Map([[u.QR_CODE,"qr_code"],[u.AZTEC,"aztec"],[u.CODABAR,"codabar"],[u.CODE_39,"code_39"],[u.CODE_93,"code_93"],[u.CODE_128,"code_128"],[u.DATA_MATRIX,"data_matrix"],[u.ITF,"itf"],[u.EAN_13,"ean_13"],[u.EAN_8,"ean_8"],[u.PDF_417,"pdf417"],[u.UPC_A,"upc_a"],[u.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:C.create(this.toHtml5QrcodeSupportedFormats(r.format)),debugData:this.createDebugData()}]}})},new(n||(n=Promise))(function(e,o){function s(e){try{l(i.next(e))}catch(e){o(e)}}function a(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(s,a)}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 s(e){try{l(n.next(e))}catch(e){o(e)}}function a(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(s,a)}l((n=n.apply(e,t||[])).next())})},L=function(e,t){var r,n,i,o,s={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function a(a){return function(l){return function(a){if(r)throw TypeError("Generator is already executing.");for(;o&&(o=0,a[0]&&(s=0)),s;)try{if(r=1,n&&(i=2&a[0]?n.return:a[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,a[1])).done)return i;switch(n=0,i&&(a=[2&a[0],i.value]),a[0]){case 0:case 1:i=a;break;case 4:return s.label++,{value:a[1],done:!1};case 5:s.label++,n=a[1],a=[0];continue;case 7:a=s.ops.pop(),s.trys.pop();continue;default:if(!(i=(i=s.trys).length>0&&i[i.length-1])&&(6===a[0]||2===a[0])){s=0;continue}if(3===a[0]&&(!i||a[1]>i[0]&&a[1]<i[3])){s.label=a[1];break}if(6===a[0]&&s.label<i[1]){s.label=i[1],i=a;break}if(i&&s.label<i[2]){s.label=i[2],s.ops.push(a);break}i[2]&&s.ops.pop(),s.trys.pop();continue}a=t.call(e,s)}catch(e){a=[6,e],n=0}finally{r=i=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,l])}}},P=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&&b.isSupported()?(this.primaryDecoder=new b(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 L(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 L(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 v=(s=function(e,t){return(s=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}s(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 s(e){try{l(n.next(e))}catch(e){o(e)}}function a(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(s,a)}l((n=n.apply(e,t||[])).next())})},x=function(e,t){var r,n,i,o,s={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function a(a){return function(l){return function(a){if(r)throw TypeError("Generator is already executing.");for(;o&&(o=0,a[0]&&(s=0)),s;)try{if(r=1,n&&(i=2&a[0]?n.return:a[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,a[1])).done)return i;switch(n=0,i&&(a=[2&a[0],i.value]),a[0]){case 0:case 1:i=a;break;case 4:return s.label++,{value:a[1],done:!1};case 5:s.label++,n=a[1],a=[0];continue;case 7:a=s.ops.pop(),s.trys.pop();continue;default:if(!(i=(i=s.trys).length>0&&i[i.length-1])&&(6===a[0]||2===a[0])){s=0;continue}if(3===a[0]&&(!i||a[1]>i[0]&&a[1]<i[3])){s.label=a[1];break}if(6===a[0]&&s.label<i[1]){s.label=i[1],i=a;break}if(i&&s.label<i[2]){s.label=i[2],s.ops.push(a);break}i[2]&&s.ops.pop(),s.trys.pop();continue}a=t.call(e,s)}catch(e){a=[6,e],n=0}finally{r=i=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,l])}}},k=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}(),U=function(e){function t(t){return e.call(this,"zoom",t)||this}return v(t,e),t}(function(e){function t(t,r){return e.call(this,t,r)||this}return v(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}(k)),H=function(e){function t(t){return e.call(this,"torch",t)||this}return v(t,e),t}(k),V=function(){function e(e){this.track=e}return e.prototype.zoomFeature=function(){return new U(this.track)},e.prototype.torchFeature=function(){return new H(this.track)},e}(),z=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,s;return x(this,function(a){switch(a.label){case 0:if(o=new e(t,r,i),!n.aspectRatio)return[3,2];return s={aspectRatio:n.aspectRatio},[4,o.getFirstTrackOrFail().applyConstraints(s)];case 1:a.sent(),a.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 x(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 x(this,function(n){return[2,z.create(e,this.mediaStream,t,r)]})})},e.create=function(t){return F(this,void 0,void 0,function(){var r;return x(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}(),Y=function(e,t,r,n){return new(r||(r=Promise))(function(i,o){function s(e){try{l(n.next(e))}catch(e){o(e)}}function a(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(s,a)}l((n=n.apply(e,t||[])).next())})},X=function(e,t){var r,n,i,o,s={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function a(a){return function(l){return function(a){if(r)throw TypeError("Generator is already executing.");for(;o&&(o=0,a[0]&&(s=0)),s;)try{if(r=1,n&&(i=2&a[0]?n.return:a[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,a[1])).done)return i;switch(n=0,i&&(a=[2&a[0],i.value]),a[0]){case 0:case 1:i=a;break;case 4:return s.label++,{value:a[1],done:!1};case 5:s.label++,n=a[1],a=[0];continue;case 7:a=s.ops.pop(),s.trys.pop();continue;default:if(!(i=(i=s.trys).length>0&&i[i.length-1])&&(6===a[0]||2===a[0])){s=0;continue}if(3===a[0]&&(!i||a[1]>i[0]&&a[1]<i[3])){s.label=a[1];break}if(6===a[0]&&s.label<i[1]){s.label=i[1],i=a;break}if(i&&s.label<i[2]){s.label=i[2],s.ops.push(a);break}i[2]&&s.ops.pop(),s.trys.pop();continue}a=t.call(e,s)}catch(e){a=[6,e],n=0}finally{r=i=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,l])}}},W=function(){function e(){}return e.failIfNotSupported=function(){return Y(this,void 0,void 0,function(){return X(this,function(t){if(!navigator.mediaDevices)throw"navigator.mediaDevices not supported";return[2,new e]})})},e.prototype.create=function(e){return Y(this,void 0,void 0,function(){return X(this,function(t){return[2,G.create(e)]})})},e}(),j=function(e,t){var r,n,i,o,s={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function a(a){return function(l){return function(a){if(r)throw TypeError("Generator is already executing.");for(;o&&(o=0,a[0]&&(s=0)),s;)try{if(r=1,n&&(i=2&a[0]?n.return:a[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,a[1])).done)return i;switch(n=0,i&&(a=[2&a[0],i.value]),a[0]){case 0:case 1:i=a;break;case 4:return s.label++,{value:a[1],done:!1};case 5:s.label++,n=a[1],a=[0];continue;case 7:a=s.ops.pop(),s.trys.pop();continue;default:if(!(i=(i=s.trys).length>0&&i[i.length-1])&&(6===a[0]||2===a[0])){s=0;continue}if(3===a[0]&&(!i||a[1]>i[0]&&a[1]<i[3])){s.label=a[1];break}if(6===a[0]&&s.label<i[1]){s.label=i[1],i=a;break}if(i&&s.label<i[2]){s.label=i[2],s.ops.push(a);break}i[2]&&s.ops.pop(),s.trys.pop();continue}a=t.call(e,s)}catch(e){a=[6,e],n=0}finally{r=i=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,l])}}},Z=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,s;return j(this,function(a){switch(a.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=a.sent(),[4,navigator.mediaDevices.enumerateDevices()];case 2:for(i=0,r=a.sent(),n=[],o=r;i<o.length;i++)"videoinput"===(s=o[i]).kind&&n.push({id:s.deviceId,label:s.label});return e(t),[2,n]}})},new(r||(r=Promise))(function(i,o){function s(e){try{l(n.next(e))}catch(e){o(e)}}function a(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(s,a)}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}();(a=w||(w={}))[a.UNKNOWN=0]="UNKNOWN",a[a.NOT_STARTED=1]="NOT_STARTED",a[a.SCANNING=2]="SCANNING",a[a.PAUSED=3]="PAUSED";var Q=function(){function e(){this.state=w.NOT_STARTED,this.onGoingTransactionNewState=w.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===w.UNKNOWN)throw"Transaction is already cancelled, cannot execute().";var e=this.onGoingTransactionNewState;this.onGoingTransactionNewState=w.UNKNOWN,this.directTransition(e)},e.prototype.cancel=function(){if(this.onGoingTransactionNewState===w.UNKNOWN)throw"Transaction is already cancelled, cannot cancel().";this.onGoingTransactionNewState=w.UNKNOWN},e.prototype.getState=function(){return this.state},e.prototype.failIfTransitionOngoing=function(){if(this.onGoingTransactionNewState!==w.UNKNOWN)throw"Cannot transition to a new state, already under transition"},e.prototype.validateTransition=function(e){switch(this.state){case w.UNKNOWN:throw"Transition from unknown is not allowed";case w.NOT_STARTED:this.failIfNewStateIs(e,[w.PAUSED]);case w.SCANNING:case w.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()===w.NOT_STARTED},e.prototype.isScanning=function(){return this.stateManager.getState()!==w.NOT_STARTED},e.prototype.isStrictlyScanning=function(){return this.stateManager.getState()===w.SCANNING},e.prototype.isPaused=function(){return this.stateManager.getState()===w.PAUSED},e}(),q=function(){function e(){}return e.create=function(){return new K(new Q)},e}();var J=(l=function(e,t){return(l=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}l(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),$=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return J(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}(A),ee=function(){function e(e,t){this.logger=t,this.fps=$.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=$.DEFAULT_DISABLE_FLIP}return e.prototype.isMediaStreamConstraintsValid=function(){return this.videoConstraints?D.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}(),et=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 S(this.verbose),this.qrcode=new P(this.getSupportedFormats(t),this.getUseBarCodeDetectorIfSupported(n),this.verbose,this.logger),this.foreverScanTimeout,this.shouldScan=!0,this.stateManagerProxy=q.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 s=ee.create(t,this.logger);this.clearElement();var a=!1;s.videoConstraints&&(s.isMediaStreamConstraintsValid()?a=!0:this.logger.logError("'videoConstraints' is not valid 'MediaStreamConstraints, it will be ignored.'",!0));var l=a,h=document.getElementById(this.elementId);h.clientWidth?h.clientWidth:$.DEFAULT_WIDTH,h.style.position="relative",this.shouldScan=!0,this.element=h;var c=this,u=this.stateManagerProxy.startTransition(w.SCANNING);return new Promise(function(t,n){var a=l?s.videoConstraints:c.createVideoConstraints(e);if(!a){u.cancel(),n("videoConstraints should be defined");return}var h={};(!l||s.aspectRatio)&&(h.aspectRatio=s.aspectRatio);var d={onRenderSurfaceReady:function(e,t){c.setupUi(e,t,s),c.isScanning=!0,c.foreverScan(s,r,i)}};W.failIfNotSupported().then(function(e){e.create(a).then(function(e){return e.render(o.element,h,d).then(function(e){c.renderedCamera=e,u.execute(),t(null)}).catch(function(e){u.cancel(),n(e)})}).catch(function(e){u.cancel(),n(T.errorGettingUserMedia(e))})}).catch(function(e){u.cancel(),n(T.cameraStreamingNotSupported())})})},e.prototype.pause=function(e){if(!this.stateManagerProxy.isStrictlyScanning())throw"Cannot pause, scanner is not scanning.";this.stateManagerProxy.directTransition(w.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(w.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(w.NOT_STARTED);this.shouldScan=!1,this.foreverScanTimeout&&clearTimeout(this.foreverScanTimeout);var r=function(){if(!!e.element){var t=document.getElementById($.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,s=o.height,a=document.getElementById(r.elementId),l=a.clientWidth?a.clientWidth:$.DEFAULT_WIDTH,h=Math.max(a.clientHeight?a.clientHeight:s,$.FILE_SCAN_MIN_HEIGHT),c=r.computeCanvasDrawConfig(e,s,l,h);if(t){var u=r.createCanvasElement(l,h,"qr-canvas-visible");u.style.display="inline-block",a.appendChild(u);var d=u.getContext("2d");if(!d)throw"Unable to get 2d context from canvas";d.canvas.width=l,d.canvas.height=h,d.drawImage(o,0,0,e,s,c.x,c.y,c.width,c.height)}var f=$.FILE_SCAN_HIDDEN_CANVAS_PADDING,g=Math.max(o.width,c.width),w=Math.max(o.height,c.height),m=g+2*f,p=w+2*f,A=r.createCanvasElement(m,p);a.appendChild(A);var C=A.getContext("2d");if(!C)throw"Unable to get 2d context from canvas";C.canvas.width=m,C.canvas.height=p,C.drawImage(o,0,0,e,s,f,f,g,w);try{r.qrcode.decodeRobustlyAsync(A).then(function(e){n(E.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 Z.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(!D.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=[u.QR_CODE,u.AZTEC,u.CODABAR,u.CODE_39,u.CODE_93,u.CODE_128,u.DATA_MATRIX,u.MAXICODE,u.ITF,u.EAN_13,u.EAN_8,u.PDF_417,u.RSS_14,u.RSS_EXPANDED,u.UPC_A,u.UPC_E,u.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,s=i[n];if(o=s,Object.values(u).includes(o))r.push(s);else this.logger.warn("Invalid format: ".concat(s," 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 s=this.toQrdimensions(e,t,o),a=function(e){if(e<$.MIN_QR_BOX_SIZE)throw"minimum size of 'config.qrbox' dimension value is"+" ".concat($.MIN_QR_BOX_SIZE,"px.")};a(s.width),a(s.height),s.width=((n=s.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,s=o?this.getShadedRegionBounds(e,t,i):{x:0,y:0,width:e,height:t},a=this.createCanvasElement(s.width,s.height),l=a.getContext("2d",{willReadFrequently:!0});l.canvas.width=s.width,l.canvas.height=s.height,this.element.append(a),o&&this.possiblyInsertShadingElement(this.element,e,t,i),this.createScannerPausedUiElement(this.element),this.qrRegion=s,this.context=l,this.canvasElement=a},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,E.createFromQrcodeResult(t)),r.possiblyUpdateShaders(!0),!0}).catch(function(e){r.possiblyUpdateShaders(!1);var n=T.codeParseError(e);return t(n,I.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,s=i.videoHeight/i.clientHeight;if(!this.qrRegion)throw"qrRegion undefined when localMediaStream is ready.";var a=this.qrRegion.width*o,l=this.qrRegion.height*s,h=this.qrRegion.x*o,c=this.qrRegion.y*s;this.context.drawImage(i,h,c,a,l,0,0,this.qrRegion.width,this.qrRegion.height);var u=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?u():(n.context.translate(n.context.canvas.width,0),n.context.scale(-1,1),n.scanContext(t,r).finally(function(){u()}))}).catch(function(e){n.logger.logError("Error happend while scanning context",e),u()})}},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,"'")},s=Object.keys(e);if(1!==s.length)throw"'cameraIdOrConfig' object should have exactly 1 key,"+" if passed as an object, found ".concat(s.length," keys");var a=Object.keys(e)[0];if(a!==t&&a!==r)throw"Only '".concat(t,"' and '").concat(r,"' ")+" are supported for 'cameraIdOrConfig'";if(a===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 h=typeof l;throw"Invalid type of 'facingMode' = ".concat(h)}}else{var c=e.deviceId;if("string"==typeof c)return{deviceId:c};if("object"==typeof c){if(i in c)return{deviceId:{exact:c["".concat(i)]}};throw"'deviceId' should be string or object with"+" ".concat(i," as key.")}else{var u=typeof c;throw"Invalid type of 'deviceId' = ".concat(u)}}}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?$.BORDER_SHADER_MATCH_COLOR:$.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,s=(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(s,"px solid rgba(0, 0, 0, 0.48)"),i.style.borderBottom="".concat(s,"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($.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,s){var a=document.createElement("div");a.style.position="absolute",a.style.backgroundColor=$.BORDER_SHADER_DEFAULT_COLOR,a.style.width="".concat(t,"px"),a.style.height="".concat(r,"px"),null!==n&&(a.style.top="".concat(n,"px")),null!==i&&(a.style.bottom="".concat(i,"px")),s?a.style.left="".concat(o,"px"):a.style.right="".concat(o,"px"),!this.borderShaders&&(this.borderShaders=[]),this.borderShaders.push(a),e.appendChild(a)},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}(),er="data:image/svg+xml;base64,",en=er+"PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAzNzEuNjQzIDM3MS42NDMiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDM3MS42NDMgMzcxLjY0MyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PHBhdGggZD0iTTEwNS4wODQgMzguMjcxaDE2My43Njh2MjBIMTA1LjA4NHoiLz48cGF0aCBkPSJNMzExLjU5NiAxOTAuMTg5Yy03LjQ0MS05LjM0Ny0xOC40MDMtMTYuMjA2LTMyLjc0My0yMC41MjJWMzBjMC0xNi41NDItMTMuNDU4LTMwLTMwLTMwSDEyNS4wODRjLTE2LjU0MiAwLTMwIDEzLjQ1OC0zMCAzMHYxMjAuMTQzaC04LjI5NmMtMTYuNTQyIDAtMzAgMTMuNDU4LTMwIDMwdjEuMzMzYTI5LjgwNCAyOS44MDQgMCAwIDAgNC42MDMgMTUuOTM5Yy03LjM0IDUuNDc0LTEyLjEwMyAxNC4yMjEtMTIuMTAzIDI0LjA2MXYxLjMzM2MwIDkuODQgNC43NjMgMTguNTg3IDEyLjEwMyAyNC4wNjJhMjkuODEgMjkuODEgMCAwIDAtNC42MDMgMTUuOTM4djEuMzMzYzAgMTYuNTQyIDEzLjQ1OCAzMCAzMCAzMGg4LjMyNGMuNDI3IDExLjYzMSA3LjUwMyAyMS41ODcgMTcuNTM0IDI2LjE3Ny45MzEgMTAuNTAzIDQuMDg0IDMwLjE4NyAxNC43NjggNDUuNTM3YTkuOTg4IDkuOTg4IDAgMCAwIDguMjE2IDQuMjg4IDkuOTU4IDkuOTU4IDAgMCAwIDUuNzA0LTEuNzkzYzQuNTMzLTMuMTU1IDUuNjUtOS4zODggMi40OTUtMTMuOTIxLTYuNzk4LTkuNzY3LTkuNjAyLTIyLjYwOC0xMC43Ni0zMS40aDgyLjY4NWMuMjcyLjQxNC41NDUuODE4LjgxNSAxLjIxIDMuMTQyIDQuNTQxIDkuMzcyIDUuNjc5IDEzLjkxMyAyLjUzNCA0LjU0Mi0zLjE0MiA1LjY3Ny05LjM3MSAyLjUzNS0xMy45MTMtMTEuOTE5LTE3LjIyOS04Ljc4Ny0zNS44ODQgOS41ODEtNTcuMDEyIDMuMDY3LTIuNjUyIDEyLjMwNy0xMS43MzIgMTEuMjE3LTI0LjAzMy0uODI4LTkuMzQzLTcuMTA5LTE3LjE5NC0xOC42NjktMjMuMzM3YTkuODU3IDkuODU3IDAgMCAwLTEuMDYxLS40ODZjLS40NjYtLjE4Mi0xMS40MDMtNC41NzktOS43NDEtMTUuNzA2IDEuMDA3LTYuNzM3IDE0Ljc2OC04LjI3MyAyMy43NjYtNy42NjYgMjMuMTU2IDEuNTY5IDM5LjY5OCA3LjgwMyA0Ny44MzYgMTguMDI2IDUuNzUyIDcuMjI1IDcuNjA3IDE2LjYyMyA1LjY3MyAyOC43MzMtLjQxMyAyLjU4NS0uODI0IDUuMjQxLTEuMjQ1IDcuOTU5LTUuNzU2IDM3LjE5NC0xMi45MTkgODMuNDgzLTQ5Ljg3IDExNC42NjEtNC4yMjEgMy41NjEtNC43NTYgOS44Ny0xLjE5NCAxNC4wOTJhOS45OCA5Ljk4IDAgMCAwIDcuNjQ4IDMuNTUxIDkuOTU1IDkuOTU1IDAgMCAwIDYuNDQ0LTIuMzU4YzQyLjY3Mi0zNi4wMDUgNTAuODAyLTg4LjUzMyA1Ni43MzctMTI2Ljg4OC40MTUtMi42ODQuODIxLTUuMzA5IDEuMjI5LTcuODYzIDIuODM0LTE3LjcyMS0uNDU1LTMyLjY0MS05Ljc3Mi00NC4zNDV6bS0yMzIuMzA4IDQyLjYyYy01LjUxNCAwLTEwLTQuNDg2LTEwLTEwdi0xLjMzM2MwLTUuNTE0IDQuNDg2LTEwIDEwLTEwaDE1djIxLjMzM2gtMTV6bS0yLjUtNTIuNjY2YzAtNS41MTQgNC40ODYtMTAgMTAtMTBoNy41djIxLjMzM2gtNy41Yy01LjUxNCAwLTEwLTQuNDg2LTEwLTEwdi0xLjMzM3ptMTcuNSA5My45OTloLTcuNWMtNS41MTQgMC0xMC00LjQ4Ni0xMC0xMHYtMS4zMzNjMC01LjUxNCA0LjQ4Ni0xMCAxMC0xMGg3LjV2MjEuMzMzem0zMC43OTYgMjguODg3Yy01LjUxNCAwLTEwLTQuNDg2LTEwLTEwdi04LjI3MWg5MS40NTdjLS44NTEgNi42NjgtLjQzNyAxMi43ODcuNzMxIDE4LjI3MWgtODIuMTg4em03OS40ODItMTEzLjY5OGMtMy4xMjQgMjAuOTA2IDEyLjQyNyAzMy4xODQgMjEuNjI1IDM3LjA0IDUuNDQxIDIuOTY4IDcuNTUxIDUuNjQ3IDcuNzAxIDcuMTg4LjIxIDIuMTUtMi41NTMgNS42ODQtNC40NzcgNy4yNTEtLjQ4Mi4zNzgtLjkyOS44LTEuMzM1IDEuMjYxLTYuOTg3IDcuOTM2LTExLjk4MiAxNS41Mi0xNS40MzIgMjIuNjg4aC05Ny41NjRWMzBjMC01LjUxNCA0LjQ4Ni0xMCAxMC0xMGgxMjMuNzY5YzUuNTE0IDAgMTAgNC40ODYgMTAgMTB2MTM1LjU3OWMtMy4wMzItLjM4MS02LjE1LS42OTQtOS4zODktLjkxNC0yNS4xNTktMS42OTQtNDIuMzcgNy43NDgtNDQuODk4IDI0LjY2NnoiLz48cGF0aCBkPSJNMTc5LjEyOSA4My4xNjdoLTI0LjA2YTUgNSAwIDAgMC01IDV2MjQuMDYxYTUgNSAwIDAgMCA1IDVoMjQuMDZhNSA1IDAgMCAwIDUtNVY4OC4xNjdhNSA1IDAgMCAwLTUtNXpNMTcyLjYyOSAxNDIuODZoLTEyLjU2VjEzMC44YTUgNSAwIDEgMC0xMCAwdjE3LjA2MWE1IDUgMCAwIDAgNSA1aDE3LjU2YTUgNSAwIDEgMCAwLTEwLjAwMXpNMjE2LjU2OCA4My4xNjdoLTI0LjA2YTUgNSAwIDAgMC01IDV2MjQuMDYxYTUgNSAwIDAgMCA1IDVoMjQuMDZhNSA1IDAgMCAwIDUtNVY4OC4xNjdhNSA1IDAgMCAwLTUtNXptLTUgMjQuMDYxaC0xNC4wNlY5My4xNjdoMTQuMDZ2MTQuMDYxek0yMTEuNjY5IDEyNS45MzZIMTk3LjQxYTUgNSAwIDAgMC01IDV2MTQuMjU3YTUgNSAwIDAgMCA1IDVoMTQuMjU5YTUgNSAwIDAgMCA1LTV2LTE0LjI1N2E1IDUgMCAwIDAtNS01eiIvPjwvc3ZnPg==",ei=er+"PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1OS4wMTggNTkuMDE4IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCA1OS4wMTggNTkuMDE4IiB4bWw6c3BhY2U9InByZXNlcnZlIj48cGF0aCBkPSJtNTguNzQxIDU0LjgwOS01Ljk2OS02LjI0NGExMC43NCAxMC43NCAwIDAgMCAyLjgyLTcuMjVjMC01Ljk1My00Ljg0My0xMC43OTYtMTAuNzk2LTEwLjc5NlMzNCAzNS4zNjEgMzQgNDEuMzE0IDM4Ljg0MyA1Mi4xMSA0NC43OTYgNTIuMTFjMi40NDEgMCA0LjY4OC0uODI0IDYuNDk5LTIuMTk2bDYuMDAxIDYuMjc3YS45OTguOTk4IDAgMCAwIDEuNDE0LjAzMiAxIDEgMCAwIDAgLjAzMS0xLjQxNHpNMzYgNDEuMzE0YzAtNC44NSAzLjk0Ni04Ljc5NiA4Ljc5Ni04Ljc5NnM4Ljc5NiAzLjk0NiA4Ljc5NiA4Ljc5Ni0zLjk0NiA4Ljc5Ni04Ljc5NiA4Ljc5NlMzNiA0Ni4xNjQgMzYgNDEuMzE0ek0xMC40MzEgMTYuMDg4YzAgMy4wNyAyLjQ5OCA1LjU2OCA1LjU2OSA1LjU2OHM1LjU2OS0yLjQ5OCA1LjU2OS01LjU2OGMwLTMuMDcxLTIuNDk4LTUuNTY5LTUuNTY5LTUuNTY5cy01LjU2OSAyLjQ5OC01LjU2OSA1LjU2OXptOS4xMzggMGMwIDEuOTY4LTEuNjAyIDMuNTY4LTMuNTY5IDMuNTY4cy0zLjU2OS0xLjYwMS0zLjU2OS0zLjU2OCAxLjYwMi0zLjU2OSAzLjU2OS0zLjU2OSAzLjU2OSAxLjYwMSAzLjU2OSAzLjU2OXoiLz48cGF0aCBkPSJtMzAuODgyIDI4Ljk4NyA5LjE4LTEwLjA1NCAxMS4yNjIgMTAuMzIzYTEgMSAwIDAgMCAxLjM1MS0xLjQ3NWwtMTItMTFhMSAxIDAgMCAwLTEuNDE0LjA2M2wtOS43OTQgMTAuNzI3LTQuNzQzLTQuNzQzYTEuMDAzIDEuMDAzIDAgMCAwLTEuMzY4LS4wNDRMNi4zMzkgMzcuNzY4YTEgMSAwIDEgMCAxLjMyMiAxLjUwMWwxNi4zMTMtMTQuMzYyIDcuMzE5IDcuMzE4YS45OTkuOTk5IDAgMSAwIDEuNDE0LTEuNDE0bC0xLjgyNS0xLjgyNHoiLz48cGF0aCBkPSJNMzAgNDYuNTE4SDJ2LTQyaDU0djI4YTEgMSAwIDEgMCAyIDB2LTI5YTEgMSAwIDAgMC0xLTFIMWExIDEgMCAwIDAtMSAxdjQ0YTEgMSAwIDAgMCAxIDFoMjlhMSAxIDAgMSAwIDAtMnoiLz48L3N2Zz4=",eo=er+"PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0NjAgNDYwIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCA0NjAgNDYwIiB4bWw6c3BhY2U9InByZXNlcnZlIj48cGF0aCBkPSJNMjMwIDBDMTAyLjk3NSAwIDAgMTAyLjk3NSAwIDIzMHMxMDIuOTc1IDIzMCAyMzAgMjMwIDIzMC0xMDIuOTc0IDIzMC0yMzBTMzU3LjAyNSAwIDIzMCAwem0zOC4zMzMgMzc3LjM2YzAgOC42NzYtNy4wMzQgMTUuNzEtMTUuNzEgMTUuNzFoLTQzLjEwMWMtOC42NzYgMC0xNS43MS03LjAzNC0xNS43MS0xNS43MVYyMDIuNDc3YzAtOC42NzYgNy4wMzMtMTUuNzEgMTUuNzEtMTUuNzFoNDMuMTAxYzguNjc2IDAgMTUuNzEgNy4wMzMgMTUuNzEgMTUuNzFWMzc3LjM2ek0yMzAgMTU3Yy0yMS41MzkgMC0zOS0xNy40NjEtMzktMzlzMTcuNDYxLTM5IDM5LTM5IDM5IDE3LjQ2MSAzOSAzOS0xNy40NjEgMzktMzkgMzl6Ii8+PC9zdmc+",es=function(){function e(){}return e.createDefault=function(){return{hasPermission:!1,lastUsedCameraId:null}},e}(),ea=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}(),el=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=N.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=N.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}(),eh=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=eo,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=eo,this.infoIcon.style.opacity="0.6")},e}(),ec=function(){function e(){var e=this;this.infoDiv=new el,this.infoIcon=new eh(function(){e.infoDiv.show()},function(){e.infoDiv.hide()})}return e.prototype.renderInto=function(e){this.infoDiv.renderInto(e),this.infoIcon.renderInto(e)},e}(),eu=function(e,t){var r,n,i,o,s={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function a(a){return function(l){return function(a){if(r)throw TypeError("Generator is already executing.");for(;o&&(o=0,a[0]&&(s=0)),s;)try{if(r=1,n&&(i=2&a[0]?n.return:a[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,a[1])).done)return i;switch(n=0,i&&(a=[2&a[0],i.value]),a[0]){case 0:case 1:i=a;break;case 4:return s.label++,{value:a[1],done:!1};case 5:s.label++,n=a[1],a=[0];continue;case 7:a=s.ops.pop(),s.trys.pop();continue;default:if(!(i=(i=s.trys).length>0&&i[i.length-1])&&(6===a[0]||2===a[0])){s=0;continue}if(3===a[0]&&(!i||a[1]>i[0]&&a[1]<i[3])){s.label=a[1];break}if(6===a[0]&&s.label<i[1]){s.label=i[1],i=a;break}if(i&&s.label<i[2]){s.label=i[2],s.ops.push(a);break}i[2]&&s.ops.pop(),s.trys.pop();continue}a=t.call(e,s)}catch(e){a=[6,e],n=0}finally{r=i=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,l])}}},ed=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 eu(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 s(e){try{l(n.next(e))}catch(e){o(e)}}function a(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(s,a)}l((n=n.apply(e,t||[])).next())})},e}(),ef=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===f.SCAN_TYPE_CAMERA},e.isFileScanType=function(e){return e===f.SCAN_TYPE_FILE},e.prototype.validateAndReturnScanTypes=function(e){if(!e||0===e.length)return A.DEFAULT_SUPPORTED_SCAN_TYPE;var t=A.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(!A.DEFAULT_SUPPORTED_SCAN_TYPE.includes(n))throw"Unsupported scan type ".concat(n)}return e},e}(),eg=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}(),ew=function(){function e(){}return e.createElement=function(e,t){var r=document.createElement(e);return r.id=t,r.classList.add(eg.ALL_ELEMENT_CLASS),"button"===e&&r.setAttribute("type","button"),r},e}(),em=function(e,t,r,n){return new(r||(r=Promise))(function(i,o){function s(e){try{l(n.next(e))}catch(e){o(e)}}function a(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(s,a)}l((n=n.apply(e,t||[])).next())})},ep=function(e,t){var r,n,i,o,s={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function a(a){return function(l){return function(a){if(r)throw TypeError("Generator is already executing.");for(;o&&(o=0,a[0]&&(s=0)),s;)try{if(r=1,n&&(i=2&a[0]?n.return:a[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,a[1])).done)return i;switch(n=0,i&&(a=[2&a[0],i.value]),a[0]){case 0:case 1:i=a;break;case 4:return s.label++,{value:a[1],done:!1};case 5:s.label++,n=a[1],a=[0];continue;case 7:a=s.ops.pop(),s.trys.pop();continue;default:if(!(i=(i=s.trys).length>0&&i[i.length-1])&&(6===a[0]||2===a[0])){s=0;continue}if(3===a[0]&&(!i||a[1]>i[0]&&a[1]<i[3])){s.label=a[1];break}if(6===a[0]&&s.label<i[1]){s.label=i[1],i=a;break}if(i&&s.label<i[2]){s.label=i[2],s.ops.push(a);break}i[2]&&s.ops.pop(),s.trys.pop();continue}a=t.call(e,s)}catch(e){a=[6,e],n=0}finally{r=i=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,l])}}},eA=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 em(this,void 0,void 0,function(){var e,t;return ep(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?y.torchOffButton():y.torchOnButton()),this.isTorchOn=t):this.propagateFailure(t),this.buttonController.enable()},e.prototype.propagateFailure=function(e,t){var r=e?y.torchOnFailedMessage():y.torchOffFailedMessage();t&&(r+="; Error = "+t),this.onTorchActionFailureCallback(r)},e.prototype.reset=function(){this.isTorchOn=!1},e}(),eC=function(){function e(e,t){this.onTorchActionFailureCallback=t,this.torchButton=ew.createElement("button",eg.TORCH_BUTTON_ID),this.torchController=new eA(e,this,t)}return e.prototype.render=function(e,t){var r=this;this.torchButton.innerText=y.torchOnButton(),this.torchButton.style.display=t.display,this.torchButton.style.marginLeft=t.marginLeft;var n=this;this.torchButton.addEventListener("click",function(e){return em(r,void 0,void 0,function(){return ep(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(eg.TORCH_BUTTON_CLASS_TORCH_OFF),n.torchButton.classList.add(eg.TORCH_BUTTON_CLASS_TORCH_ON)):(n.torchButton.classList.remove(eg.TORCH_BUTTON_CLASS_TORCH_ON),n.torchButton.classList.add(eg.TORCH_BUTTON_CLASS_TORCH_OFF)),[2]}})})}),e.appendChild(this.torchButton)},e.prototype.updateTorchCapability=function(e){this.torchController=new eA(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=y.torchOnButton(),this.torchController.reset()},e.create=function(t,r,n,i){var o=new e(r,i);return o.render(t,n),o},e}(),eE=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=ew.createElement("button",eg.FILE_SELECTION_BUTTON_ID),this.setInitialValueToButton(),this.fileSelectionButton.addEventListener("click",function(e){n.click()}),n.append(this.fileSelectionButton),this.fileScanInput=ew.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 s=!1,a=0;a<n.length;++a){var l=n.item(a);if(!l)continue;var h=/image.*/;if(!!l.type.match(h)){s=!0;var c=l.name;i.setImageNameToButton(c),r(l),o.innerText=y.dragAndDropMessage();break}}!s&&(o.innerText=y.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=y.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=y.fileSelectionChooseAnother()+" - "+e;this.fileSelectionButton.innerText=i},e.prototype.setInitialValueToButton=function(){var e=y.fileSelectionChooseImage()+" - "+y.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}(),eI=function(){function e(e){this.selectElement=ew.createElement("select",eg.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=y.selectCamera();t.innerText="".concat(n," (").concat(this.cameras.length,") ")}for(var i=1,o=0,s=this.cameras;o<s.length;o++){var a=s[o],l=a.id,h=null==a.label?l:a.label;(!h||""===h)&&(h=[y.anonymousCameraPrefix(),i++].join(" "));var c=document.createElement("option");c.value=l,c.innerText=h,this.options.push(c),this.selectElement.appendChild(c)}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}(),eS=function(){function e(){this.onChangeCallback=null,this.zoomElementContainer=document.createElement("div"),this.rangeInput=ew.createElement("input",eg.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=y.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=y.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}();(h=m||(m={}))[h.STATUS_DEFAULT=0]="STATUS_DEFAULT",h[h.STATUS_SUCCESS=1]="STATUS_SUCCESS",h[h.STATUS_WARNING=2]="STATUS_WARNING",h[h.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 ef(this.config.supportedScanTypes),this.currentScanType=this.scanTypeSelector.getDefaultScanType(),this.sectionSwapAllowed=!0,this.logger=new S(this.verbose),this.persistedDataManager=new ea,!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(y.lastMatch(t),m.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 et(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=A.SCAN_DEFAULT_FPS),!A.DEFAULT_REMEMBER_LAST_CAMERA_USED!==e.rememberLastUsedCamera&&(e.rememberLastUsedCamera=A.DEFAULT_REMEMBER_LAST_CAMERA_USED),!e.supportedScanTypes&&(e.supportedScanTypes=A.DEFAULT_SUPPORTED_SCAN_TYPE),e):{fps:A.SCAN_DEFAULT_FPS,rememberLastUsedCamera:A.DEFAULT_REMEMBER_LAST_CAMERA_USED,supportedScanTypes:A.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),ef.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 ec().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(y.cameraPermissionRequesting());var i=function(){!r&&n.createPermissionButton(e,t)};et.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(y.noCameraFound(),m.STATUS_WARNING),i())}).catch(function(e){n.persistedDataManager.setHasPermission(!1),r?r.disabled=!1:i(),n.setHeaderMessage(e,m.STATUS_WARNING),n.showHideScanTypeSwapLink(!0)})},e.prototype.createPermissionButton=function(e,t){var r=this,n=ew.createElement("button",this.getCameraPermissionButtonId());n.innerText=y.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(ef.isCameraScanType(this.currentScanType)&&this.persistedDataManager.hasCameraPermissions()){ed.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=ef.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=ef.isFileScanType(this.currentScanType),r=this;this.fileSelectionUi=eE.create(e,t,function(e){if(!r.html5Qrcode)throw"html5Qrcode not defined";if(!!ef.isFileScanType(r.currentScanType))r.setHeaderMessage(y.loadingImage()),r.html5Qrcode.scanFileV2(e,!0).then(function(e){r.resetHeaderMessage(),r.qrCodeSuccessCallback(e.decodedText,e)}).catch(function(e){r.setHeaderMessage(e,m.STATUS_WARNING),r.qrCodeErrorCallback(e,I.createFrom(e))})})},e.prototype.renderCameraSelection=function(e){var t,r=this,n=this,i=document.getElementById(this.getDashboardSectionCameraScanRegionId());i.style.textAlign="center";var o=eS.create(i,!1),s=function(e){var t,n,i,s=e.zoomFeature();if(!!s.isSupported()){o.setOnCameraZoomValueChangeCallback(function(e){s.apply(e)});var a=1;r.config.defaultZoomValueIfSupported&&(a=r.config.defaultZoomValueIfSupported),t=a,n=s.min(),a=t>(i=s.max())?i:t<n?n:t,o.setValues(s.min(),s.max(),a,s.step()),o.show()}},a=eI.create(i,e),l=document.createElement("span"),h=ew.createElement("button",eg.CAMERA_START_BUTTON_ID);h.innerText=y.scanButtonStartScanningText(),l.appendChild(h);var c=ew.createElement("button",eg.CAMERA_STOP_BUTTON_ID);c.innerText=y.scanButtonStopScanningText(),c.style.display="none",c.disabled=!0,l.appendChild(c);var u=function(e){if(!e.torchFeature().isSupported()){t&&t.hide();return}t?t.updateTorchCapability(e.torchFeature()):t=eC.create(l,e.torchFeature(),{display:"none",marginLeft:"5px"},function(e){n.setHeaderMessage(e,m.STATUS_WARNING)}),t.show()};i.appendChild(l);var d=function(e){!e&&(h.style.display="none"),h.innerText=y.scanButtonStartScanningText(),h.style.opacity="1",h.disabled=!1,e&&(h.style.display="inline-block")};if(h.addEventListener("click",function(e){h.innerText=y.scanButtonScanningStarting(),a.disable(),h.disabled=!0,h.style.opacity="0.5",r.scanTypeSelector.hasMoreThanOneScanType()&&n.showHideScanTypeSwapLink(!1),n.resetHeaderMessage();var t,i=a.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){c.disabled=!1,c.style.display="inline-block",d(!1);var t=n.html5Qrcode.getRunningTrackCameraCapabilities();!0===r.config.showTorchButtonIfSupported&&u(t),!0===r.config.showZoomSliderIfSupported&&s(t)}).catch(function(e){n.showHideScanTypeSwapLink(!0),a.enable(),d(!0),n.setHeaderMessage(e,m.STATUS_WARNING)})}),a.hasSingleItem()&&h.click(),c.addEventListener("click",function(e){if(!n.html5Qrcode)throw"html5Qrcode not defined";c.disabled=!0,n.html5Qrcode.stop().then(function(e){r.scanTypeSelector.hasMoreThanOneScanType()&&n.showHideScanTypeSwapLink(!0),a.enable(),h.disabled=!1,c.style.display="none",h.style.display="inline-block",t&&(t.reset(),t.hide()),o.removeOnCameraZoomValueChangeCallback(),o.hide(),n.insertCameraScanImageToScanRegion()}).catch(function(e){c.disabled=!1,n.setHeaderMessage(e,m.STATUS_WARNING)})}),n.persistedDataManager.getLastUsedCameraId()){var f=n.persistedDataManager.getLastUsedCameraId();a.hasValue(f)?(a.setValue(f),h.click()):n.persistedDataManager.resetLastUsedCameraId()}},e.prototype.createSectionSwap=function(){var e=this,t=y.textIfCameraScanSelected(),r=y.textIfFileScanSelected(),n=document.getElementById(this.getDashboardSectionId()),i=document.createElement("div");i.style.textAlign="center";var o=ew.createElement("span",this.getDashboardSectionSwapLinkId());o.style.textDecoration="underline",o.style.cursor="pointer",o.innerText=ef.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,ef.isCameraScanType(e.currentScanType)?(e.clearScanRegion(),e.getCameraScanRegion().style.display="none",e.fileSelectionUi.show(),o.innerText=r,e.currentScanType=f.SCAN_TYPE_FILE,e.insertFileScanImageToScanRegion()):(e.clearScanRegion(),e.getCameraScanRegion().style.display="block",e.fileSelectionUi.hide(),o.innerText=t,e.currentScanType=f.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()){ed.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=m.STATUS_DEFAULT);var r=this.getHeaderMessageDiv();switch(r.innerText=e,r.style.display="block",t){case m.STATUS_SUCCESS:r.style.background="rgba(106, 175, 80, 0.26)",r.style.color="#477735";break;case m.STATUS_WARNING:r.style.background="rgba(203, 36, 49, 0.14)",r.style.color="#cb2431";break;case m.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=en,this.cameraScanImage.alt=y.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=ei,this.fileScanImage.alt=y.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 eg.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 eg.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())}}()},103:function(e,t,r){var n;n=0,function(e){"use strict";let t;function n(e){return null==e}var i,o,s,a,l,h,c,u,d,f,g,w,m,p,A,C,E,I,S,_,T,y,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])},D=function(e){function t(t){var r,n,i,o,s,a,l=this.constructor,h=e.call(this,t)||this;return Object.defineProperty(h,"name",{value:l.name,enumerable:!1}),r=h,n=l.prototype,(i=Object.setPrototypeOf)?i(r,n):r.__proto__=n,o=h,void 0===s&&(s=o.constructor),(a=Error.captureStackTrace)&&a(o,s),h}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 M extends D{constructor(e){super(e),this.message=e}getKind(){return this.constructor.kind}}M.kind="Exception";class R extends M{}R.kind="ArgumentException";class O extends M{}O.kind="IllegalArgumentException";class b{constructor(e){if(this.binarizer=e,null===e)throw new O("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 b(this.binarizer.createBinarizer(i))}isRotateSupported(){return this.binarizer.getLuminanceSource().isRotateSupported()}rotateCounterClockwise(){let e=this.binarizer.getLuminanceSource().rotateCounterClockwise();return new b(this.binarizer.createBinarizer(e))}rotateCounterClockwise45(){let e=this.binarizer.getLuminanceSource().rotateCounterClockwise45();return new b(this.binarizer.createBinarizer(e))}toString(){try{return this.getBlackMatrix().toString()}catch(e){return""}}}class B extends M{static getChecksumInstance(){return new B}}B.kind="ChecksumException";class L{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 v extends M{}v.kind="IndexOutOfBoundsException";class F extends v{constructor(e,t){super(t),this.index=e,this.message=t}}F.kind="ArrayIndexOutOfBoundsException";class x{static fill(e,t){for(let r=0,n=e.length;r<n;r++)e[r]=t}static fillWithin(e,t,r,n){x.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 O("fromIndex("+t+") > toIndex("+r+")");if(t<0)throw new F(t);if(r>e)throw new F(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=x.numberComparator);let n=0,i=e.length-1;for(;n<=i;){let o=i+n>>1,s=r(t,e[o]);if(s>0)n=o+1;else{if(!(s<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 s=32*n+k.numberOfTrailingZeros(i);return s>t?t:s}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 s=32*n+k.numberOfTrailingZeros(i);return s>t?t:s}setBulk(e,t){this.bits[Math.floor(e/32)]=t}setRange(e,t){if(t<e||e<0||t>this.size)throw new O;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 s=o>r?0:31&e,a=(2<<(o<n?31:31&t))-(1<<s);i[o]|=a}}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 O;if(t===e)return!0;let n=Math.floor(e/32),i=Math.floor(--t/32),o=this.bits;for(let s=n;s<=i;s++){let a=s>n?0:31&e,l=(2<<(s<i?31:31&t))-(1<<a)&0xffffffff;if((o[s]&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 O("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 O("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&&x.equals(this.bits,e.bits)}hashCode(){return 31*this.size+x.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=w||(w={}))[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=w;class V extends M{static getFormatInstance(){return new V}}V.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 z{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,z.VALUE_IDENTIFIER_TO_ECI.set(e,this),z.NAME_TO_ECI.set(r,this);let i=this.values;for(let e=0,t=i.length;e!==t;e++){let t=i[e];z.VALUES_TO_ECI.set(t,this)}for(let e of n)z.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 V("incorect value");let t=z.VALUES_TO_ECI.get(e);if(void 0===t)throw new V("incorect value");return t}static getCharacterSetECIByName(e){let t=z.NAME_TO_ECI.get(e);if(void 0===t)throw new V("incorect value");return t}equals(e){return e instanceof z&&this.getName()===e.getName()}}z.VALUE_IDENTIFIER_TO_ECI=new Map,z.VALUES_TO_ECI=new Map,z.NAME_TO_ECI=new Map,z.Cp437=new z(m.Cp437,Int32Array.from([0,2]),"Cp437"),z.ISO8859_1=new z(m.ISO8859_1,Int32Array.from([1,3]),"ISO-8859-1","ISO88591","ISO8859_1"),z.ISO8859_2=new z(m.ISO8859_2,4,"ISO-8859-2","ISO88592","ISO8859_2"),z.ISO8859_3=new z(m.ISO8859_3,5,"ISO-8859-3","ISO88593","ISO8859_3"),z.ISO8859_4=new z(m.ISO8859_4,6,"ISO-8859-4","ISO88594","ISO8859_4"),z.ISO8859_5=new z(m.ISO8859_5,7,"ISO-8859-5","ISO88595","ISO8859_5"),z.ISO8859_6=new z(m.ISO8859_6,8,"ISO-8859-6","ISO88596","ISO8859_6"),z.ISO8859_7=new z(m.ISO8859_7,9,"ISO-8859-7","ISO88597","ISO8859_7"),z.ISO8859_8=new z(m.ISO8859_8,10,"ISO-8859-8","ISO88598","ISO8859_8"),z.ISO8859_9=new z(m.ISO8859_9,11,"ISO-8859-9","ISO88599","ISO8859_9"),z.ISO8859_10=new z(m.ISO8859_10,12,"ISO-8859-10","ISO885910","ISO8859_10"),z.ISO8859_11=new z(m.ISO8859_11,13,"ISO-8859-11","ISO885911","ISO8859_11"),z.ISO8859_13=new z(m.ISO8859_13,15,"ISO-8859-13","ISO885913","ISO8859_13"),z.ISO8859_14=new z(m.ISO8859_14,16,"ISO-8859-14","ISO885914","ISO8859_14"),z.ISO8859_15=new z(m.ISO8859_15,17,"ISO-8859-15","ISO885915","ISO8859_15"),z.ISO8859_16=new z(m.ISO8859_16,18,"ISO-8859-16","ISO885916","ISO8859_16"),z.SJIS=new z(m.SJIS,20,"SJIS","Shift_JIS"),z.Cp1250=new z(m.Cp1250,21,"Cp1250","windows-1250"),z.Cp1251=new z(m.Cp1251,22,"Cp1251","windows-1251"),z.Cp1252=new z(m.Cp1252,23,"Cp1252","windows-1252"),z.Cp1256=new z(m.Cp1256,24,"Cp1256","windows-1256"),z.UnicodeBigUnmarked=new z(m.UnicodeBigUnmarked,25,"UnicodeBigUnmarked","UTF-16BE","UnicodeBig"),z.UTF8=new z(m.UTF8,26,"UTF8","UTF-8"),z.ASCII=new z(m.ASCII,Int32Array.from([27,170]),"ASCII","US-ASCII"),z.Big5=new z(m.Big5,28,"Big5"),z.GB18030=new z(m.GB18030,29,"GB18030","GB2312","EUC_CN","GBK"),z.EUC_KR=new z(m.EUC_KR,30,"EUC_KR","EUC-KR");class G extends M{}G.kind="UnsupportedOperationException";class Y{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!Y.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 z?e:z.getCharacterSetECIByName(e)}static decodeFallback(e,t){let r=this.encodingCharacterSet(t);if(Y.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(z.UnicodeBigUnmarked))return String.fromCharCode.apply(null,new Uint16Array(e.buffer));throw new G(`Encoding ${this.encodingName(t)} not supported by fallback.`)}static isDecodeFallbackSupported(e){return e.equals(z.UTF8)||e.equals(z.ISO8859_1)||e.equals(z.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 X{static castAsNonUtf8Char(e,t=null){let r=t?t.getName():this.ISO88591;return Y.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,s=0,a=0,l=0,h=0,c=0,u=0,d=0,f=0,g=0,w=0,m=0,p=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&&(s>0?(128&r)==0?o=!1:s--:(128&r)!=0&&((64&r)==0?o=!1:(s++,(32&r)==0?a++:(s++,(16&r)==0?l++:(s++,(8&r)==0?h++:o=!1))))),n&&(r>127&&r<160?n=!1:r>159&&(r<192||215===r||247===r)&&m++),i&&(c>0?r<64||127===r||r>252?i=!1:c--:128===r||160===r||r>239?i=!1:r>160&&r<224?(u++,f=0,++d>g&&(g=d)):r>127?(c++,d=0,++f>w&&(w=f)):(d=0,f=0))}return(o&&s>0&&(o=!1),i&&c>0&&(i=!1),o&&(p||a+l+h>0))?X.UTF8:i&&(X.ASSUME_SHIFT_JIS||g>=3||w>=3)?X.SHIFT_JIS:n&&i?2===g&&2===u||10*m>=r?X.SHIFT_JIS:X.ISO88591:n?X.ISO88591:i?X.SHIFT_JIS:o?X.UTF8:X.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,s,a){let l;if("%%"===e)return"%";if(void 0===t[++r])return;e=o?parseInt(o.substr(1)):void 0;let h=s?parseInt(s.substr(1)):void 0;switch(a){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(h||16);break;case"d":l=parseFloat(parseInt(t[r],h||10).toPrecision(e)).toFixed(0)}l="object"==typeof l?JSON.stringify(l):(+l).toString(h);let c=parseInt(i),u=i&&i[0]+""=="0"?"0":" ";for(;l.length<c;)l=void 0!==n?l+u:u+l;return l})}static getBytes(e,t){return Y.encode(e,t)}static getCharCode(e,t=0){return e.charCodeAt(t)}static getCharAt(e){return String.fromCharCode(e)}}X.SHIFT_JIS=z.SJIS.getName(),X.GB2312="GB2312",X.ISO88591=z.ISO8859_1.getName(),X.EUC_JP="EUC_JP",X.UTF8=z.UTF8.getName(),X.PLATFORM_DEFAULT_ENCODING=X.UTF8,X.ASSUME_SHIFT_JIS=!1;class W{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+=X.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 j{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 O("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 j(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 O("stringRepresentation cannot be null");let n=Array(e.length),i=0,o=0,s=-1,a=0,l=0;for(;l<e.length;)if("\n"===e.charAt(l)||"\r"===e.charAt(l)){if(i>o){if(-1===s)s=i-o;else if(i-o!==s)throw new O("row lengths do not match");o=i,a++}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 O("illegal character encountered: "+e.substring(l));if(i>o){if(-1===s)s=i-o;else if(i-o!==s)throw new O("row lengths do not match");a++}let h=new j(s,a);for(let e=0;e<i;e++)n[e]&&h.set(Math.floor(e%s),Math.floor(e/s));return h}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 O("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,s=e.getRow(i,t).getBitArray();for(let e=0;e<r;e++)n[o+e]^=s[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 O("Left and top must be nonnegative");if(n<1||r<1)throw new O("Height and width must be at least 1");let i=e+r,o=t+n;if(o>this.height||i>this.width)throw new O("The region must fit inside the matrix");let s=this.rowSize,a=this.bits;for(let r=t;r<o;r++){let t=r*s;for(let r=e;r<i;r++)a[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,s=-1,a=-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>a&&(a=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>s){let e=31;for(;l>>>e==0;)e--;32*t+e>s&&(s=32*t+e)}}}return s<i||a<o?null:Int32Array.from([i,o,s-i+1,a-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],s=0;for(;(o<<31-s&0xffffffff)==0;)s++;return i+=s,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],s=31;for(;o>>>s==0;)s--;return i+=s,Int32Array.from([i,n])}getWidth(){return this.width}getHeight(){return this.height}getRowSize(){return this.rowSize}equals(e){return e instanceof j&&this.width===e.width&&this.height===e.height&&this.rowSize===e.rowSize&&x.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)+x.hashCode(this.bits)}toString(e="X ",t=" ",r="\n"){return this.buildToString(e,t,r)}buildToString(e,t,r){let n=new W;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 j(this.width,this.height,this.rowSize,this.bits.slice())}}class Z extends M{static getNotFoundInstance(){return new Z}}Z.kind="NotFoundException";class Q extends L{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 s=Q.estimateBlackPoint(o);if(n<3)for(let e=0;e<n;e++)(255&i[e])<s&&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<s&&t.set(o),e=r,r=n}}return t}getBlackMatrix(){let e=this.getLuminanceSource(),t=e.getWidth(),r=e.getHeight(),n=new j(t,r);this.initArrays(t);let i=this.buckets;for(let n=1;n<5;n++){let o=Math.floor(r*n/5),s=e.getRow(o,this.luminances),a=Math.floor(4*t/5);for(let e=Math.floor(t/5);e<a;e++){let t=255&s[e];i[t>>Q.LUMINANCE_SHIFT]++}}let o=Q.estimateBlackPoint(i),s=e.getMatrix();for(let e=0;e<r;e++){let r=e*t;for(let i=0;i<t;i++)(255&s[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,s=0;for(let r=0;r<t;r++){let t=r-n,i=e[r]*t*t;i>s&&(o=r,s=i)}if(n>o){let e=n;n=o,o=e}if(o-n<=t/16)throw new Z;let a=o-1,l=-1;for(let t=o-1;t>n;t--){let i=t-n,s=i*i*(o-t)*(r-e[t]);s>l&&(a=t,l=s)}return a<<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 K 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>=K.MINIMUM_DIMENSION&&r>=K.MINIMUM_DIMENSION){let n=e.getMatrix(),i=t>>K.BLOCK_SIZE_POWER;(t&K.BLOCK_SIZE_MASK)!=0&&i++;let o=r>>K.BLOCK_SIZE_POWER;(r&K.BLOCK_SIZE_MASK)!=0&&o++;let s=K.calculateBlackPoints(n,i,o,t,r),a=new j(t,r);K.calculateThresholdForBlock(n,i,o,t,r,s,a),this.matrix=a}else this.matrix=super.getBlackMatrix();return this.matrix}createBinarizer(e){return new K(e)}static calculateThresholdForBlock(e,t,r,n,i,o,s){let a=i-K.BLOCK_SIZE,l=n-K.BLOCK_SIZE;for(let i=0;i<r;i++){let h=i<<K.BLOCK_SIZE_POWER;h>a&&(h=a);let c=K.cap(i,2,r-3);for(let r=0;r<t;r++){let i=r<<K.BLOCK_SIZE_POWER;i>l&&(i=l);let a=K.cap(r,2,t-3),u=0;for(let e=-2;e<=2;e++){let t=o[c+e];u+=t[a-2]+t[a-1]+t[a]+t[a+1]+t[a+2]}let d=u/25;K.thresholdBlock(e,i,h,d,n,s)}}}static cap(e,t,r){return e<t?t:e>r?r:e}static thresholdBlock(e,t,r,n,i,o){for(let s=0,a=r*i+t;s<K.BLOCK_SIZE;s++,a+=i)for(let i=0;i<K.BLOCK_SIZE;i++)(255&e[a+i])<=n&&o.set(t+i,r+s)}static calculateBlackPoints(e,t,r,n,i){let o=i-K.BLOCK_SIZE,s=n-K.BLOCK_SIZE,a=Array(r);for(let i=0;i<r;i++){a[i]=new Int32Array(t);let r=i<<K.BLOCK_SIZE_POWER;r>o&&(r=o);for(let o=0;o<t;o++){let t=o<<K.BLOCK_SIZE_POWER;t>s&&(t=s);let l=0,h=255,c=0;for(let i=0,o=r*n+t;i<K.BLOCK_SIZE;i++,o+=n){for(let t=0;t<K.BLOCK_SIZE;t++){let r=255&e[o+t];l+=r,r<h&&(h=r),r>c&&(c=r)}if(c-h>K.MIN_DYNAMIC_RANGE)for(i++,o+=n;i<K.BLOCK_SIZE;i++,o+=n)for(let t=0;t<K.BLOCK_SIZE;t++)l+=255&e[o+t]}let u=l>>2*K.BLOCK_SIZE_POWER;if(c-h<=K.MIN_DYNAMIC_RANGE&&(u=h/2,i>0&&o>0)){let e=(a[i-1][o]+2*a[i][o-1]+a[i-1][o-1])/4;h<e&&(u=e)}a[i][o]=u}}return a}}K.BLOCK_SIZE_POWER=3,K.BLOCK_SIZE=1<<K.BLOCK_SIZE_POWER,K.BLOCK_SIZE_MASK=K.BLOCK_SIZE-1,K.MINIMUM_DIMENSION=5*K.BLOCK_SIZE,K.MIN_DYNAMIC_RANGE=24;class q{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 G("This luminance source does not support cropping.")}isRotateSupported(){return!1}rotateCounterClockwise(){throw new G("This luminance source does not support rotation by 90 degrees.")}rotateCounterClockwise45(){throw new G("This luminance source does not support rotation by 45 degrees.")}toString(){let e=new Uint8ClampedArray(this.width),t=new W;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 q{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 q{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 O("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,s=Math.ceil(Math.abs(Math.cos(n))*i+Math.abs(Math.sin(n))*o),a=Math.ceil(Math.abs(Math.sin(n))*i+Math.abs(Math.cos(n))*o);return t.width=s,t.height=a,r.translate(s/2,a/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 s(e){try{l(n.next(e))}catch(e){o(e)}}function a(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(s,a)}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 R(`element with id '${e}' not found`);if(r.nodeName.toLowerCase()!==t.toLowerCase())throw new R(`element with id '${e}' must be an ${t} element`);return r}decodeFromImage(e,t){if(!e&&!t)throw new R("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 R("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 R("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 R("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 R("A video element must be provided.");this.reset();let t=this.prepareVideoElement(e);return this.videoElement=t,t}decodeFromImageUrl(e){if(!e)throw new R("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 R("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 R("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(a){let e=t&&a instanceof Z,s=a instanceof B||a instanceof V;if(e||s&&r)return setTimeout(n,this._timeBetweenDecodingAttempts,i,o);o(a)}};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 B||i instanceof V,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 b(new K(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}}(s=p||(p={}))[s.AZTEC=0]="AZTEC",s[s.CODABAR=1]="CODABAR",s[s.CODE_39=2]="CODE_39",s[s.CODE_93=3]="CODE_93",s[s.CODE_128=4]="CODE_128",s[s.DATA_MATRIX=5]="DATA_MATRIX",s[s.EAN_8=6]="EAN_8",s[s.EAN_13=7]="EAN_13",s[s.ITF=8]="ITF",s[s.MAXICODE=9]="MAXICODE",s[s.PDF_417=10]="PDF_417",s[s.QR_CODE=11]="QR_CODE",s[s.RSS_14=12]="RSS_14",s[s.RSS_EXPANDED=13]="RSS_EXPANDED",s[s.UPC_A=14]="UPC_A",s[s.UPC_E=15]="UPC_E",s[s.UPC_EAN_EXTENSION=16]="UPC_EAN_EXTENSION";var ei=p;(a=A||(A={}))[a.OTHER=0]="OTHER",a[a.ORIENTATION=1]="ORIENTATION",a[a.BYTE_SEGMENTS=2]="BYTE_SEGMENTS",a[a.ERROR_CORRECTION_LEVEL=3]="ERROR_CORRECTION_LEVEL",a[a.ISSUE_NUMBER=4]="ISSUE_NUMBER",a[a.SUGGESTED_PRICE=5]="SUGGESTED_PRICE",a[a.POSSIBLE_COUNTRY=6]="POSSIBLE_COUNTRY",a[a.UPC_EAN_EXTENSION=7]="UPC_EAN_EXTENSION",a[a.PDF417_EXTRA_METADATA=8]="PDF417_EXTRA_METADATA",a[a.STRUCTURED_APPEND_SEQUENCE=9]="STRUCTURED_APPEND_SEQUENCE",a[a.STRUCTURED_APPEND_PARITY=10]="STRUCTURED_APPEND_PARITY";var eo=A;class es{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 ea{exp(e){return this.expTable[e]}log(e){if(0===e)throw new O;return this.logTable[e]}static addOrSubtract(e,t){return e^t}}class el{constructor(e,t){if(0===t.length)throw new O;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=ea.addOrSubtract(t,n)}return t}t=r[0];let n=r.length,i=this.field;for(let o=1;o<n;o++)t=ea.addOrSubtract(i.multiply(e,t),r[o]);return t}addOrSubtract(e){if(!this.field.equals(e.field))throw new O("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]=ea.addOrSubtract(t[e-i],r[e]);return new el(this.field,n)}multiply(e){if(!this.field.equals(e.field))throw new O("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),s=this.field;for(let e=0;e<r;e++){let r=t[e];for(let t=0;t<i;t++)o[e+t]=ea.addOrSubtract(o[e+t],s.multiply(r,n[t]))}return new el(s,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 O;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 O("GenericGFPolys do not have same GenericGF field");if(e.isZero())throw new O("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(),s=t.multiply(n.getCoefficient(n.getDegree()),o),a=e.multiplyByMonomial(i,s),l=t.buildMonomial(i,s);r=r.addOrSubtract(l),n=n.addOrSubtract(a)}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 eh extends M{}eh.kind="ArithmeticException";class ec extends ea{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 O;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 eh;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}}ec.AZTEC_DATA_12=new ec(4201,4096,1),ec.AZTEC_DATA_10=new ec(1033,1024,1),ec.AZTEC_DATA_6=new ec(67,64,1),ec.AZTEC_PARAM=new ec(19,16,1),ec.QR_CODE_FIELD_256=new ec(285,256,0),ec.DATA_MATRIX_FIELD_256=new ec(301,256,1),ec.AZTEC_DATA_8=ec.DATA_MATRIX_FIELD_256,ec.MAXICODE_FIELD_64=ec.AZTEC_DATA_6;class eu extends M{}eu.kind="ReedSolomonException";class ed extends M{}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 s=new el(r,i),a=this.runEuclideanAlgorithm(r.buildMonomial(t,1),s,t),l=a[0],h=a[1],c=this.findErrorLocations(l),u=this.findErrorMagnitudes(h,c);for(let t=0;t<c.length;t++){let n=e.length-1-r.log(c[t]);if(n<0)throw new eu("Bad error location");e[n]=ec.addOrSubtract(e[n],u[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,s=n.getZero(),a=n.getOne();for(;o.getDegree()>=(r/2|0);){let e=i,t=s;if(i=o,s=a,i.isZero())throw new eu("r_{i-1} was zero");o=e;let r=n.getZero(),l=i.getCoefficient(i.getDegree()),h=n.inverse(l);for(;o.getDegree()>=i.getDegree()&&!o.isZero();){let e=o.getDegree()-i.getDegree(),t=n.multiply(o.getCoefficient(o.getDegree()),h);r=r.addOrSubtract(n.buildMonomial(e,t)),o=o.addOrSubtract(i.multiplyByMonomial(e,t))}if(a=r.multiply(s).addOrSubtract(t),o.getDegree()>=i.getDegree())throw new ed("Division algorithm failed to reduce polynomial?")}let l=a.getCoefficient(0);if(0===l)throw new eu("sigmaTilde(0) was zero");let h=n.inverse(l),c=a.multiplyScalar(h);return[c,o.multiplyScalar(h)]}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 eu("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 s=i.inverse(t[o]),a=1;for(let e=0;e<r;e++)if(o!==e){let r=i.multiply(t[e],s),n=(1&r)==0?1|r:-2&r;a=i.multiply(a,n)}n[o]=i.multiply(e.evaluateAt(s),i.inverse(a)),0!==i.getGeneratorBase()&&(n[o]=i.multiply(n[o],s))}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 es(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 s=eg.readCode(e,o,5);if(o+=5,0===s){if(t-o<11)break;s=eg.readCode(e,o,11)+31,o+=11}for(let r=0;r<s;r++){if(t-o<8){o=t;break}let r=eg.readCode(e,o,8);i+=X.castAsNonUtf8Char(r),o+=8}n=r}else{let s=n===C.DIGIT?4:5;if(t-o<s)break;let a=eg.readCode(e,o,s);o+=s;let l=eg.getCharacter(n,a);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=ec.AZTEC_DATA_6):8>=this.ddata.getNbLayers()?(r=8,t=ec.AZTEC_DATA_8):22>=this.ddata.getNbLayers()?(r=10,t=ec.AZTEC_DATA_10):(r=12,t=ec.AZTEC_DATA_12);let n=this.ddata.getNbDatablocks(),i=e.length/r;if(i<n)throw new V;let o=e.length%r,s=new Int32Array(i);for(let t=0;t<i;t++,o+=r)s[t]=eg.readCode(e,o,r);try{new ef(t).decode(s,i-n)}catch(e){throw new V(e)}let a=(1<<r)-1,l=0;for(let e=0;e<n;e++){let t=s[e];if(0===t||t===a)throw new V;(1===t||t===a-1)&&l++}let h=Array(n*r-l),c=0;for(let e=0;e<n;e++){let t=s[e];if(1===t||t===a-1)h.fill(t>1,c,c+r-1),c+=r-1;else for(let e=r-1;e>=0;--e)h[c++]=(t&1<<e)!=0}return h}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 s=0,a=0;s<r;s++){let l=(r-s)*4+(t?9:12),h=2*s,c=n-1-h;for(let t=0;t<l;t++){let r=2*t;for(let n=0;n<2;n++)o[a+r+n]=e.get(i[h+n],i[h+t]),o[a+2*l+r+n]=e.get(i[h+t],i[c-n]),o[a+4*l+r+n]=e.get(i[c-n],i[c-t]),o[a+6*l+r+n]=e.get(i[c-t],i[h+n])}a+=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 ew{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 ep{constructor(e,t){this.x=e,this.y=t}getX(){return this.x}getY(){return this.y}equals(e){return e instanceof ep&&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]),s=this.distance(e[0],e[2]);if(o>=i&&o>=s?(r=e[0],t=e[1],n=e[2]):s>=o&&s>=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 ew.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,s=!1,a=!1,l=!1,h=!1,c=!1,u=this.width,d=this.height;for(;o;){o=!1;let f=!0;for(;(f||!a)&&t<u;)(f=this.containsBlackPoint(r,n,t,!1))?(t++,o=!0,a=!0):!a&&t++;if(t>=u){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 w=!0;for(;(w||!h)&&e>=0;)(w=this.containsBlackPoint(r,n,e,!1))?(e--,o=!0,h=!0):!h&&e--;if(e<0){i=!0;break}let m=!0;for(;(m||!c)&&r>=0;)(m=this.containsBlackPoint(e,t,r,!0))?(r--,o=!0,c=!0):!c&&r--;if(r<0){i=!0;break}o&&(s=!0)}if(!i&&s){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 s=null;for(let t=1;null===s&&t<i;t++)s=this.getBlackPointOnSegment(e,r+t,e+t,r);if(null==s)throw new Z;let a=null;for(let e=1;null===a&&e<i;e++)a=this.getBlackPointOnSegment(t,r+e,t-e,r);if(null==a)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,a,s)}throw new Z}getBlackPointOnSegment(e,t,r,n){let i=ew.round(ew.distance(e,t,r,n)),o=(r-e)/i,s=(n-t)/i,a=this.image;for(let r=0;r<i;r++){let n=ew.round(e+r*o),i=ew.round(t+r*s);if(a.get(n,i))return new ep(n,i)}return null}centerEdges(e,t,r,n){let i=e.getX(),o=e.getY(),s=t.getX(),a=t.getY(),l=r.getX(),h=r.getY(),c=n.getX(),u=n.getY(),d=eE.CORR;return i<this.width/2?[new ep(c-d,u+d),new ep(s+d,a+d),new ep(l-d,h-d),new ep(i+d,o-d)]:[new ep(c+d,u+d),new ep(s+d,a-d),new ep(l-d,h+d),new ep(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]),s=Math.floor(t[e+1]);if(o<-1||o>r||s<-1||s>n)throw new Z;i=!1,-1===o?(t[e]=0,i=!0):o===r&&(t[e]=r-1,i=!0),-1===s?(t[e+1]=0,i=!0):s===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]),s=Math.floor(t[e+1]);if(o<-1||o>r||s<-1||s>n)throw new Z;i=!1,-1===o?(t[e]=0,i=!0):o===r&&(t[e]=r-1,i=!0),-1===s?(t[e+1]=0,i=!0):s===n&&(t[e+1]=n-1,i=!0)}}}class eS{constructor(e,t,r,n,i,o,s,a,l){this.a11=e,this.a21=t,this.a31=r,this.a12=n,this.a22=i,this.a32=o,this.a13=s,this.a23=a,this.a33=l}static quadrilateralToQuadrilateral(e,t,r,n,i,o,s,a,l,h,c,u,d,f,g,w){let m=eS.quadrilateralToSquare(e,t,r,n,i,o,s,a);return eS.squareToQuadrilateral(l,h,c,u,d,f,g,w).times(m)}transformPoints(e){let t=e.length,r=this.a11,n=this.a12,i=this.a13,o=this.a21,s=this.a22,a=this.a23,l=this.a31,h=this.a32,c=this.a33;for(let u=0;u<t;u+=2){let t=e[u],d=e[u+1],f=i*t+a*d+c;e[u]=(r*t+o*d+l)/f,e[u+1]=(n*t+s*d+h)/f}}transformPointsWithValues(e,t){let r=this.a11,n=this.a12,i=this.a13,o=this.a21,s=this.a22,a=this.a23,l=this.a31,h=this.a32,c=this.a33,u=e.length;for(let d=0;d<u;d++){let u=e[d],f=t[d],g=i*u+a*f+c;e[d]=(r*u+o*f+l)/g,t[d]=(n*u+s*f+h)/g}}static squareToQuadrilateral(e,t,r,n,i,o,s,a){let l=e-r+i-s,h=t-n+o-a;if(0===l&&0===h)return new eS(r-e,i-r,e,n-t,o-n,t,0,0,1);{let c=r-i,u=s-i,d=n-o,f=a-o,g=c*f-u*d,w=(l*f-u*h)/g,m=(c*h-l*d)/g;return new eS(r-e+w*r,s-e+m*s,e,n-t+w*n,a-t+m*a,t,w,m,1)}}static quadrilateralToSquare(e,t,r,n,i,o,s,a){return eS.squareToQuadrilateral(e,t,r,n,i,o,s,a).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 e_ extends eI{sampleGrid(e,t,r,n,i,o,s,a,l,h,c,u,d,f,g,w,m,p,A){let C=eS.quadrilateralToQuadrilateral(n,i,o,s,a,l,h,c,u,d,f,g,w,m,p,A);return this.sampleGridWithTransform(e,t,r,C)}sampleGridWithTransform(e,t,r,n){if(t<=0||r<=0)throw new Z;let i=new j(t,r),o=new Float32Array(2*t);for(let t=0;t<r;t++){let r=o.length,s=t+.5;for(let e=0;e<r;e+=2)o[e]=e/2+.5,o[e+1]=s;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 eT{static setGridSampler(e){eT.gridSampler=e}static getInstance(){return eT.gridSampler}}eT.gridSampler=new e_;class ey{constructor(e,t){this.x=e,this.y=t}toResultPoint(){return new ep(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(ec.AZTEC_PARAM).decode(o,i)}catch(e){throw new Z}let s=0;for(let e=0;e<n;e++)s=(s<<4)+o[e];return s}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),s=this.getFirstDifferent(r,o,1,1),a=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,s,a,l))break}t=e,r=s,n=a,i=l,o=!o}if(5!==this.nbCenterLayers&&7!==this.nbCenterLayers)throw new Z;this.compact=5===this.nbCenterLayers;let s=new ep(t.getX()+.5,t.getY()-.5),a=new ep(r.getX()+.5,r.getY()+.5),l=new ep(n.getX()-.5,n.getY()+.5),h=new ep(i.getX()-.5,i.getY()-.5);return this.expandSquare([s,a,l,h],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(s){let i=this.image.getWidth()/2,o=this.image.getHeight()/2;e=this.getFirstDifferent(new ey(i+7,o-7),!1,1,-1).toResultPoint(),t=this.getFirstDifferent(new ey(i+7,o+7),!1,1,1).toResultPoint(),r=this.getFirstDifferent(new ey(i-7,o+7),!1,-1,1).toResultPoint(),n=this.getFirstDifferent(new ey(i-7,o-7),!1,-1,-1).toResultPoint()}let i=ew.round((e.getX()+n.getX()+t.getX()+r.getX())/4),o=ew.round((e.getY()+n.getY()+t.getY()+r.getY())/4);try{let s=new eE(this.image,15,i,o).detect();e=s[0],t=s[1],r=s[2],n=s[3]}catch(s){e=this.getFirstDifferent(new ey(i+7,o-7),!1,1,-1).toResultPoint(),t=this.getFirstDifferent(new ey(i+7,o+7),!1,1,1).toResultPoint(),r=this.getFirstDifferent(new ey(i-7,o+7),!1,-1,1).toResultPoint(),n=this.getFirstDifferent(new ey(i-7,o-7),!1,-1,-1).toResultPoint()}return i=ew.round((e.getX()+n.getX()+t.getX()+r.getX())/4),new ey(i,o=ew.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=eT.getInstance(),s=this.getDimension(),a=s/2-this.nbCenterLayers,l=s/2+this.nbCenterLayers;return o.sampleGrid(e,s,s,a,a,l,a,l,l,a,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,s=e.getX(),a=e.getY(),l=o*(t.getX()-e.getX())/i,h=o*(t.getY()-e.getY())/i;for(let e=0;e<r;e++)this.image.get(ew.round(s+e*l),ew.round(a+e*h))&&(n|=1<<r-e-1);return n}isWhiteOrBlackRectangle(e,t,r,n){e=new ey(e.getX()-3,e.getY()+3),t=new ey(t.getX()-3,t.getY()-3),r=new ey(r.getX()+3,r.getY()-3),n=new ey(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,s=e.getX(),a=e.getY(),l=this.image.get(e.getX(),e.getY()),h=Math.ceil(r);for(let e=0;e<h;e++)s+=n,a+=i,this.image.get(ew.round(s),ew.round(a))!==l&&o++;let c=o/r;return c>.1&&c<.9?0:c<=.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 ey(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(),s=(e[0].getX()+e[2].getX())/2,a=(e[0].getY()+e[2].getY())/2,l=new ep(s+n*i,a+n*o),h=new ep(s-n*i,a-n*o);i=e[1].getX()-e[3].getX(),o=e[1].getY()-e[3].getY(),s=(e[1].getX()+e[3].getX())/2;let c=new ep(s+n*i,(a=(e[1].getY()+e[3].getY())/2)+n*o),u=new ep(s-n*i,a-n*o);return[l,c,h,u]}isValid(e,t){return e>=0&&e<this.image.getWidth()&&t>0&&t<this.image.getHeight()}isValidPoint(e){let t=ew.round(e.getX()),r=ew.round(e.getY());return this.isValid(t,r)}distancePoint(e,t){return ew.distance(e.getX(),e.getY(),t.getX(),t.getY())}distanceResultPoint(e,t){return ew.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 eD{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 s=new en(o.getText(),o.getRawBytes(),o.getNumBits(),i,ei.AZTEC,P.currentTimeMillis()),a=o.getByteSegments();null!=a&&s.putMetadata(eo.BYTE_SEGMENTS,a);let l=o.getECLevel();return null!=l&&s.putMetadata(eo.ERROR_CORRECTION_LEVEL,l),s}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 eM{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 s=n.getResultPoints();if(null!==s){let e=r.getHeight();for(let t=0;t<s.length;t++)s[t]=new ep(e-s[t].getY()-1,s[t].getX())}return n}throw new Z}}reset(){}doDecode(e,t){let r;let n=e.getWidth(),i=e.getHeight(),o=new U(n),s=t&&!0===t.get(H.TRY_HARDER),a=Math.max(1,i>>(s?8:5));r=s?i:15;let l=Math.trunc(i/2);for(let s=0;s<r;s++){let r=Math.trunc((s+1)/2),h=l+a*((1&s)==0?r:-r);if(h<0||h>=i)break;try{o=e.getBlackRow(h,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(h,o,t);if(1===e){r.putMetadata(eo.ORIENTATION,180);let e=r.getResultPoints();null!==e&&(e[0]=new ep(n-e[0].getX()-1,e[0].getY()),e[1]=new ep(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),s=0,a=t;for(;a<i;){if(e.get(a)!==o)r[s]++;else{if(++s===n)break;r[s]=1,o=!o}a++}if(!(s===n||s===n-1&&a===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;eM.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 s=i/o;r*=s;let a=0;for(let i=0;i<n;i++){let n=e[i],o=t[i]*s,l=n>o?n-o:o-n;if(l>r)return Number.POSITIVE_INFINITY;a+=l}return a/i}}class eR extends eM{static findStartPattern(e){let t=e.getSize(),r=e.getNextSet(0),n=0,i=Int32Array.from([0,0,0,0,0,0]),o=r,s=!1;for(let a=r;a<t;a++)if(e.get(a)!==s)i[n]++;else{if(5===n){let t=eR.MAX_AVG_VARIANCE,r=-1;for(let e=eR.CODE_START_A;e<=eR.CODE_START_C;e++){let n=eM.patternMatchVariance(i,eR.CODE_PATTERNS[e],eR.MAX_INDIVIDUAL_VARIANCE);n<t&&(t=n,r=e)}if(r>=0&&e.isRange(Math.max(0,o-(a-o)/2),o,!1))return Int32Array.from([o,a,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,s=!s}throw new Z}static decodeCode(e,t,r){eM.recordPattern(e,r,t);let n=eR.MAX_AVG_VARIANCE,i=-1;for(let e=0;e<eR.CODE_PATTERNS.length;e++){let r=eR.CODE_PATTERNS[e],o=this.patternMatchVariance(t,r,eR.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=eR.findStartPattern(t),s=o[2],a=0,l=new Uint8Array(20);switch(l[a++]=s,s){case eR.CODE_START_A:n=eR.CODE_CODE_A;break;case eR.CODE_START_B:n=eR.CODE_CODE_B;break;case eR.CODE_START_C:n=eR.CODE_CODE_C;break;default:throw new V}let h=!1,c=!1,u="",d=o[0],f=o[1],g=Int32Array.from([0,0,0,0,0,0]),w=0,m=0,p=s,A=0,C=!0,E=!1,I=!1;for(;!h;){let e=c;switch(c=!1,w=m,m=eR.decodeCode(t,g,f),l[a++]=m,m!==eR.CODE_STOP&&(C=!0),m!==eR.CODE_STOP&&(p+=++A*m),d=f,f+=g.reduce((e,t)=>e+t,0),m){case eR.CODE_START_A:case eR.CODE_START_B:case eR.CODE_START_C:throw new V}switch(n){case eR.CODE_CODE_A:if(m<64)I===E?u+=String.fromCharCode(32+m):u+=String.fromCharCode(32+m+128),I=!1;else if(m<96)I===E?u+=String.fromCharCode(m-64):u+=String.fromCharCode(m+64),I=!1;else switch(m!==eR.CODE_STOP&&(C=!1),m){case eR.CODE_FNC_1:i&&(0===u.length?u+="]C1":u+="\x1d");break;case eR.CODE_FNC_2:case eR.CODE_FNC_3:break;case eR.CODE_FNC_4_A:!E&&I?(E=!0,I=!1):E&&I?(E=!1,I=!1):I=!0;break;case eR.CODE_SHIFT:c=!0,n=eR.CODE_CODE_B;break;case eR.CODE_CODE_B:n=eR.CODE_CODE_B;break;case eR.CODE_CODE_C:n=eR.CODE_CODE_C;break;case eR.CODE_STOP:h=!0}break;case eR.CODE_CODE_B:if(m<96)I===E?u+=String.fromCharCode(32+m):u+=String.fromCharCode(32+m+128),I=!1;else switch(m!==eR.CODE_STOP&&(C=!1),m){case eR.CODE_FNC_1:i&&(0===u.length?u+="]C1":u+="\x1d");break;case eR.CODE_FNC_2:case eR.CODE_FNC_3:break;case eR.CODE_FNC_4_B:!E&&I?(E=!0,I=!1):E&&I?(E=!1,I=!1):I=!0;break;case eR.CODE_SHIFT:c=!0,n=eR.CODE_CODE_A;break;case eR.CODE_CODE_A:n=eR.CODE_CODE_A;break;case eR.CODE_CODE_C:n=eR.CODE_CODE_C;break;case eR.CODE_STOP:h=!0}break;case eR.CODE_CODE_C:if(m<100)m<10&&(u+="0"),u+=m;else switch(m!==eR.CODE_STOP&&(C=!1),m){case eR.CODE_FNC_1:i&&(0===u.length?u+="]C1":u+="\x1d");break;case eR.CODE_CODE_A:n=eR.CODE_CODE_A;break;case eR.CODE_CODE_B:n=eR.CODE_CODE_B;break;case eR.CODE_STOP:h=!0}}e&&(n=n===eR.CODE_CODE_A?eR.CODE_CODE_B:eR.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((p-=A*w)%103!==w)throw new B;let _=u.length;if(0===_)throw new Z;_>0&&C&&(u=n===eR.CODE_CODE_C?u.substring(0,_-2):u.substring(0,_-1));let T=(o[1]+o[0])/2,y=d+S/2,N=l.length,D=new Uint8Array(N);for(let e=0;e<N;e++)D[e]=l[e];return new en(u,D,0,[new ep(T,e),new ep(y,e)],ei.CODE_128,new Date().getTime())}}eR.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])],eR.MAX_AVG_VARIANCE=.25,eR.MAX_INDIVIDUAL_VARIANCE=.7,eR.CODE_SHIFT=98,eR.CODE_CODE_C=99,eR.CODE_CODE_B=100,eR.CODE_CODE_A=101,eR.CODE_FNC_1=102,eR.CODE_FNC_2=97,eR.CODE_FNC_3=96,eR.CODE_FNC_4_A=101,eR.CODE_FNC_4_B=100,eR.CODE_START_A=103,eR.CODE_START_B=104,eR.CODE_START_C=105,eR.CODE_STOP=106;class eO extends eM{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,s=this.counters;s.fill(0),this.decodeRowResult="";let a=eO.findAsteriskPattern(t,s),l=t.getNextSet(a[1]),h=t.getSize();do{eO.recordPattern(t,l,s);let e=eO.toNarrowWidePattern(s);if(e<0)throw new Z;for(let t of(n=eO.patternToChar(e),this.decodeRowResult+=n,i=l,s))l+=t;l=t.getNextSet(l)}while("*"!==n);this.decodeRowResult=this.decodeRowResult.substring(0,this.decodeRowResult.length-1);let c=0;for(let e of s)c+=e;let u=l-i-c;if(l!==h&&2*u<c)throw new Z;if(this.usingCheckDigit){let e=this.decodeRowResult.length-1,t=0;for(let r=0;r<e;r++)t+=eO.ALPHABET_STRING.indexOf(this.decodeRowResult.charAt(r));if(this.decodeRowResult.charAt(e)!==eO.ALPHABET_STRING.charAt(t%43))throw new B;this.decodeRowResult=this.decodeRowResult.substring(0,e)}if(0===this.decodeRowResult.length)throw new Z;o=this.extendedMode?eO.decodeExtended(this.decodeRowResult):this.decodeRowResult;let d=(a[1]+a[0])/2,f=i+c/2;return new en(o,null,0,[new ep(d,e),new ep(f,e)],ei.CODE_39,new Date().getTime())}static findAsteriskPattern(e,t){let r=e.getSize(),n=e.getNextSet(0),i=0,o=n,s=!1,a=t.length;for(let l=n;l<r;l++)if(e.get(l)!==s)t[i]++;else{if(i===a-1){if(this.toNarrowWidePattern(t)===eO.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,s=!s}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,s=0;for(let i=0;i<r;i++){let a=e[i];a>n&&(s|=1<<r-1-i,t++,o+=a)}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 s}}while(t>3);return -1}static patternToChar(e){for(let t=0;t<eO.CHARACTER_ENCODINGS.length;t++)if(eO.CHARACTER_ENCODINGS[t]===e)return eO.ALPHABET_STRING.charAt(t);if(e===eO.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 V;break;case"$":if(i>="A"&&i<="Z")o=String.fromCharCode(i.charCodeAt(0)-64);else throw new V;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 V;break;case"/":if(i>="A"&&i<="O")o=String.fromCharCode(i.charCodeAt(0)-32);else if("Z"===i)o=":";else throw new V}r+=o,n++}else r+=t}return r}}eO.ALPHABET_STRING="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ-. $/+%",eO.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],eO.ASTERISK_ENCODING=148;class eb extends eM{constructor(){super(...arguments),this.narrowLineWidth=-1}decodeRow(e,t,r){let n=this.decodeStart(t),i=this.decodeEnd(t),o=new W;eb.decodeMiddle(t,n[1],i[0],o);let s=o.toString(),a=null;null!=r&&(a=r.get(H.ALLOWED_LENGTHS)),null==a&&(a=eb.DEFAULT_ALLOWED_LENGTHS);let l=s.length,h=!1,c=0;for(let e of a){if(l===e){h=!0;break}e>c&&(c=e)}if(!h&&l>c&&(h=!0),!h)throw new V;return new en(s,null,0,[new ep(n[1],e),new ep(i[0],e)],ei.ITF,new Date().getTime())}static decodeMiddle(e,t,r,n){let i=new Int32Array(10),o=new Int32Array(5),s=new Int32Array(5);for(i.fill(0),o.fill(0),s.fill(0);t<r;){eM.recordPattern(e,t,i);for(let e=0;e<5;e++){let t=2*e;o[e]=i[t],s[e]=i[t+1]}let r=eb.decodeDigit(o);n.append(r.toString()),r=this.decodeDigit(s),n.append(r.toString()),i.forEach(function(e){t+=e})}}decodeStart(e){let t=eb.skipWhiteSpace(e),r=eb.findGuardPattern(e,t,eb.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=eb.skipWhiteSpace(e);try{t=eb.findGuardPattern(e,r,eb.END_PATTERN_REVERSED[0])}catch(n){n instanceof Z&&(t=eb.findGuardPattern(e,r,eb.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(),s=!1,a=0,l=t;i.fill(0);for(let h=t;h<o;h++)if(e.get(h)!==s)i[a]++;else{if(a===n-1){if(eM.patternMatchVariance(i,r,eb.MAX_INDIVIDUAL_VARIANCE)<eb.MAX_AVG_VARIANCE)return[l,h];l+=i[0]+i[1],P.arraycopy(i,2,i,0,a-1),i[a-1]=0,i[a]=0,a--}else a++;i[a]=1,s=!s}throw new Z}static decodeDigit(e){let t=eb.MAX_AVG_VARIANCE,r=-1,n=eb.PATTERNS.length;for(let i=0;i<n;i++){let n=eb.PATTERNS[i],o=eM.patternMatchVariance(e,n,eb.MAX_INDIVIDUAL_VARIANCE);o<t?(t=o,r=i):o===t&&(r=-1)}if(r>=0)return r%10;throw new Z}}eb.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])],eb.MAX_AVG_VARIANCE=.38,eb.MAX_INDIVIDUAL_VARIANCE=.5,eb.DEFAULT_ALLOWED_LENGTHS=[6,8,10,12,14],eb.START_PATTERN=Int32Array.from([1,1,1,1]),eb.END_PATTERN_REVERSED=[Int32Array.from([1,1,2]),Int32Array.from([1,1,3])];class eB extends eM{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=eB.findGuardPattern(e,n,!1,this.START_END_PATTERN,i))[0],s=o-((n=t[1])-o);s>=0&&(r=e.isRange(s,o,!1))}return t}static checkChecksum(e){return eB.checkStandardUPCEANChecksum(e)}static checkStandardUPCEANChecksum(e){let t=e.length;if(0===t)return!1;let r=parseInt(e.charAt(t-1),10);return eB.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 V;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 V;r+=t}return(1e3-r)%10}static decodeEnd(e,t){return eB.findGuardPattern(e,t,!1,eB.START_END_PATTERN,new Int32Array(eB.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 s=0,a=t,l=n.length,h=r;for(let r=t;r<o;r++)if(e.get(r)!==h)i[s]++;else{if(s===l-1){if(eM.patternMatchVariance(i,n,eB.MAX_INDIVIDUAL_VARIANCE)<eB.MAX_AVG_VARIANCE)return Int32Array.from([a,r]);a+=i[0]+i[1];let e=i.slice(2,i.length-1);for(let t=0;t<s-1;t++)i[t]=e[t];i[s-1]=0,i[s]=0,s--}else s++;i[s]=1,h=!h}throw new Z}static decodeDigit(e,t,r,n){this.recordPattern(e,r,t);let i=this.MAX_AVG_VARIANCE,o=-1,s=n.length;for(let e=0;e<s;e++){let r=n[e],s=eM.patternMatchVariance(t,r,eB.MAX_INDIVIDUAL_VARIANCE);s<i&&(i=s,o=e)}if(o>=0)return o;throw new Z}}eB.MAX_AVG_VARIANCE=.48,eB.MAX_INDIVIDUAL_VARIANCE=.7,eB.START_END_PATTERN=Int32Array.from([1,1,1]),eB.MIDDLE_PATTERN=Int32Array.from([1,1,1,1,1]),eB.END_PATTERN=Int32Array.from([1,1,1,1,1,1]),eB.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 eL{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(),s=eL.parseExtensionString(o),a=new en(o,null,0,[new ep((r[0]+r[1])/2,e),new ep(i,e)],ei.UPC_EAN_EXTENSION,new Date().getTime());return null!=s&&a.putAllMetadata(s),a}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],s=0;for(let t=0;t<5&&o<i;t++){let i=eB.decodeDigit(e,n,o,eB.L_AND_G_PATTERNS);for(let e of(r+=String.fromCharCode(48+i%10),n))o+=e;i>=10&&(s|=1<<4-t),4!==t&&(o=e.getNextSet(o),o=e.getNextUnset(o))}if(5!==r.length)throw new Z;let a=this.determineCheckDigit(s);if(eL.extensionChecksum(r.toString())!==a)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=eL.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(),s=eP.parseExtensionString(o),a=new en(o,null,0,[new ep((r[0]+r[1])/2,e),new ep(i,e)],ei.UPC_EAN_EXTENSION,new Date().getTime());return null!=s&&a.putAllMetadata(s),a}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],s=0;for(let t=0;t<2&&o<i;t++){let i=eB.decodeDigit(e,n,o,eB.L_AND_G_PATTERNS);for(let e of(r+=String.fromCharCode(48+i%10),n))o+=e;i>=10&&(s|=1<<1-t),1!==t&&(o=e.getNextSet(o),o=e.getNextUnset(o))}if(2!==r.length||parseInt(r.toString())%4!==s)throw new Z;return o}static parseExtensionString(e){return 2!==e.length?null:new Map([[eo.ISSUE_NUMBER,parseInt(e)]])}}class ev{static decodeRow(e,t,r){let n=eB.findGuardPattern(t,r,!1,this.EXTENSION_START_PATTERN,new Int32Array(this.EXTENSION_START_PATTERN.length).fill(0));try{return new eL().decodeRow(e,t,n)}catch(r){return new eP().decodeRow(e,t,n)}}}ev.EXTENSION_START_PATTERN=Int32Array.from([1,1,2]);class eF extends eB{constructor(){super(),this.decodeRowStringBuffer="",eF.L_AND_G_PATTERNS=eF.L_PATTERNS.map(e=>Int32Array.from(e));for(let e=10;e<20;e++){let t=eF.L_PATTERNS[e-10],r=new Int32Array(t.length);for(let e=0;e<t.length;e++)r[e]=t[t.length-e-1];eF.L_AND_G_PATTERNS[e]=r}}decodeRow(e,t,r){let n=eF.findStartGuardPattern(t),i=null==r?null:r.get(H.NEED_RESULT_POINT_CALLBACK);if(null!=i){let t=new ep((n[0]+n[1])/2,e);i.foundPossibleResultPoint(t)}let o=this.decodeMiddle(t,n,this.decodeRowStringBuffer),s=o.rowOffset,a=o.resultString;if(null!=i){let t=new ep(s,e);i.foundPossibleResultPoint(t)}let l=this.decodeEnd(t,s);if(null!=i){let t=new ep((l[0]+l[1])/2,e);i.foundPossibleResultPoint(t)}let h=l[1],c=h+(h-l[0]);if(c>=t.getSize()||!t.isRange(h,c,!1))throw new Z;let u=a.toString();if(u.length<8)throw new V;if(!eF.checkChecksum(u))throw new B;let d=(n[1]+n[0])/2,f=(l[1]+l[0])/2,g=this.getBarcodeFormat(),w=new en(u,null,0,[new ep(d,e),new ep(f,e)],g,new Date().getTime()),m=0;try{let r=ev.decodeRow(e,t,l[1]);w.putMetadata(eo.UPC_EAN_EXTENSION,r.getText()),w.putAllMetadata(r.getResultMetadata()),w.addResultPoints(r.getResultPoints()),m=r.getText().length}catch(e){}let p=null==r?null:r.get(H.ALLOWED_EAN_EXTENSIONS);if(null!=p){let e=!1;for(let t in p)if(m.toString()===t){e=!0;break}if(!e)throw new Z}return w}decodeEnd(e,t){return eF.findGuardPattern(e,t,!1,eF.START_END_PATTERN,new Int32Array(eF.START_END_PATTERN.length).fill(0))}static checkChecksum(e){return eF.checkStandardUPCEANChecksum(e)}static checkStandardUPCEANChecksum(e){let t=e.length;if(0===t)return!1;let r=parseInt(e.charAt(t-1),10);return eF.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 V;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 V;r+=t}return(1e3-r)%10}}class ex extends eF{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],s=0;for(let t=0;t<6&&o<i;t++){let i=eF.decodeDigit(e,n,o,eF.L_AND_G_PATTERNS);for(let e of(r+=String.fromCharCode(48+i%10),n))o+=e;i>=10&&(s|=1<<5-t)}r=ex.determineFirstDigit(r,s),o=eF.findGuardPattern(e,o,!0,eF.MIDDLE_PATTERN,new Int32Array(eF.MIDDLE_PATTERN.length).fill(0))[1];for(let t=0;t<6&&o<i;t++){let t=eF.decodeDigit(e,n,o,eF.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}}ex.FIRST_DIGIT_ENCODINGS=[0,11,13,14,19,25,28,21,22,26];class ek extends eF{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=eF.decodeDigit(e,n,o,eF.L_PATTERNS);for(let e of(r+=String.fromCharCode(48+t),n))o+=e}o=eF.findGuardPattern(e,o,!0,eF.MIDDLE_PATTERN,new Int32Array(eF.MIDDLE_PATTERN.length).fill(0))[1];for(let t=0;t<4&&o<i;t++){let t=eF.decodeDigit(e,n,o,eF.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 eF{constructor(){super(...arguments),this.ean13Reader=new ex}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 eF{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],s=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&&(s|=1<<5-t)}return{rowOffset:o,resultString:eH.determineNumSysAndCheckDigit(r,s)}}decodeEnd(e,t){return eH.findGuardPatternWithoutCounters(e,t,!0,eH.MIDDLE_END_PATTERN)}checkChecksum(e){return eF.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 W;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 eV extends eM{constructor(e){var t;super();let r=null==e?null:e.get(H.POSSIBLE_FORMATS),n=[];if(null==(t=r))n.push(new ex),n.push(new eU),n.push(new ek),n.push(new eH);else r.indexOf(ei.EAN_13)>-1&&n.push(new ex),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),s=null==r?null:r.get(H.POSSIBLE_FORMATS),a=null==s||s.includes(ei.UPC_A);if(o&&a){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 ez extends eM{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(eM.patternMatchVariance(e,t[r],ez.MAX_INDIVIDUAL_VARIANCE)<ez.MAX_AVG_VARIANCE)return r;throw new Z}static count(e){return ew.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>=ez.MIN_FINDER_PATTERN_RATIO&&n<=ez.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}}ez.MAX_AVG_VARIANCE=.2,ez.MAX_INDIVIDUAL_VARIANCE=.45,ez.MIN_FINDER_PATTERN_RATIO=9.5/12,ez.MAX_FINDER_PATTERN_RATIO=12.5/14;class eG{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 eG&&this.value===e.value&&this.checksumPortion===e.checksumPortion}hashCode(){return this.value^this.checksumPortion}}class eY{constructor(e,t,r,n,i){this.value=e,this.startEnd=t,this.value=e,this.startEnd=t,this.resultPoints=[],this.resultPoints.push(new ep(r,i)),this.resultPoints.push(new ep(n,i))}getValue(){return this.value}getStartEnd(){return this.startEnd}getResultPoints(){return this.resultPoints}equals(e){return e instanceof eY&&this.value===e.value}hashCode(){return this.value}}class eX{constructor(){}static getRSSvalue(e,t,r){let n=0;for(let t of e)n+=t;let i=0,o=0,s=e.length;for(let a=0;a<s-1;a++){let l;for(l=1,o|=1<<a;l<e[a];l++,o&=~(1<<a)){let e=eX.combins(n-l-1,s-a-2);if(r&&0===o&&n-l-(s-a-1)>=s-a-1&&(e-=eX.combins(n-l-(s-a),s-a-2)),s-a-1>1){let r=0;for(let e=n-l-(s-a-2);e>t;e--)r+=eX.combins(n-l-e-1,s-a-3);e-=r*(s-1-a)}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 eW{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 ej{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 eK 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 eq extends eZ{constructor(e,t,r){if(super(e),t<0||t>10||r<0||r>10)throw new V;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===eq.FNC1}isSecondDigitFNC1(){return this.secondDigit===eq.FNC1}isAnyFNC1(){return this.firstDigit===eq.FNC1||this.secondDigit===eq.FNC1}}eq.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),s="("+n+")"+i,a=eJ.parseFieldsInGeneralPurpose(o);return null==a?s:s+a}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),s=r.substring(n),a="("+i+")"+o,l=eJ.parseFieldsInGeneralPurpose(s);return null==l?a:a+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 W,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 eq(this.information.getSize(),eq.FNC1,eq.FNC1):new eq(this.information.getSize(),t-1,eq.FNC1)}let t=this.extractNumericValueFromBitArray(e,7);return new eq(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 eK(this.current.getPosition(),this.buffer.toString(),r.getRemainingValue()):new eK(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 ej(!0,t=e.isSecondDigitFNC1()?new eK(this.current.getPosition(),this.buffer.toString()):new eK(this.current.getPosition(),this.buffer.toString(),e.getSecondDigit()))}if(this.buffer.append(e.getFirstDigit()),e.isSecondDigitFNC1())return new ej(!0,new eK(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 ej(!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 ej(!0,new eK(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 ej(!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 ej(!0,new eK(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 ej(!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 V}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 e2 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)}e2.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)}}e2.GTIN_SIZE=40;class e0 extends e2{constructor(e){super(e)}parseInformation(){let e=new W;e.append("(01)");let t=e.length(),r=this.getGeneralDecoder().extractNumericValueFromBitArray(e0.HEADER_SIZE,4);return e.append(r),this.encodeCompressedGtinWithoutAI(e,e0.HEADER_SIZE+4,t),this.getGeneralDecoder().decodeAllCodes(e,e0.HEADER_SIZE+44)}}e0.HEADER_SIZE=4;class e3 extends e1{constructor(e){super(e)}parseInformation(){let e=new W;return this.getGeneralDecoder().decodeAllCodes(e,e3.HEADER_SIZE)}}e3.HEADER_SIZE=5;class e4 extends e2{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 W;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 e2{constructor(e){super(e)}parseInformation(){if(this.getInformation().getSize()<e7.HEADER_SIZE+e2.GTIN_SIZE)throw new Z;let e=new W;this.encodeCompressedGtin(e,e7.HEADER_SIZE);let t=this.getGeneralDecoder().extractNumericValueFromBitArray(e7.HEADER_SIZE+e2.GTIN_SIZE,e7.LAST_DIGIT_SIZE);e.append("(392"),e.append(t),e.append(")");let r=this.getGeneralDecoder().decodeGeneralPurposeField(e7.HEADER_SIZE+e2.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 e2{constructor(e){super(e)}parseInformation(){if(this.getInformation().getSize()<e9.HEADER_SIZE+e2.GTIN_SIZE)throw new Z;let e=new W;this.encodeCompressedGtin(e,e9.HEADER_SIZE);let t=this.getGeneralDecoder().extractNumericValueFromBitArray(e9.HEADER_SIZE+e2.GTIN_SIZE,e9.LAST_DIGIT_SIZE);e.append("(393"),e.append(t),e.append(")");let r=this.getGeneralDecoder().extractNumericValueFromBitArray(e9.HEADER_SIZE+e2.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+e2.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 W;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 e0(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 ez{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(eW.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 s=!0,a=-1;do this.findNextPair(e,t,a),null==(n=this.parseFoundFinderPattern(e,r,o))?a=ti.getNextSecondBar(e,this.startEnd[0]):s=!1;while(s);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 s=t.length%2!=0;this.startFromEven&&(s=!s);let a=!1;for(;n<o&&(a=!e.get(n));){;n++}let l=0,h=n;for(let t=n;t<o;t++)if(e.get(t)!=a)i[l]++;else{if(3==l){if(s&&ti.reverseCounters(i),ti.isFinderPattern(i)){this.startEnd[0]=h,this.startEnd[1]=t;return}s&&ti.reverseCounters(i),h+=i[0]+i[1],i[0]=i[2],i[1]=i[3],i[2]=0,i[3]=0,l--}else l++;i[l]=1,a=!a}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,s;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 a=this.getDecodeFinderCounters();P.arraycopy(a,0,a,1,a.length-1),a[0]=n;try{s=this.parseFinderValue(a,ti.FINDER_PATTERNS)}catch(e){return null}return new eY(s,[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=ew.sum(new Int32Array(i))/17,s=(t.getStartEnd()[1]-t.getStartEnd()[0])/15;if(Math.abs(o-s)/s>.3)throw new Z;let a=this.getOddCounts(),l=this.getEvenCounts(),h=this.getOddRoundingErrors(),c=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?(a[n]=r,h[n]=t-r):(l[n]=r,c[n]=t-r)}this.adjustOddEvenCounts(17);let u=4*t.getValue()+(r?0:2)+(n?0:1)-1,d=0,f=0;for(let e=a.length-1;e>=0;e--){if(ti.isNotA1left(t,r,n)){let t=ti.WEIGHTS[u][2*e];f+=a[e]*t}d+=a[e]}let g=0;for(let e=l.length-1;e>=0;e--)if(ti.isNotA1left(t,r,n)){let t=ti.WEIGHTS[u][2*e+1];g+=l[e]*t}let w=f+g;if((1&d)!=0||d>13||d<4)throw new Z;let m=(13-d)/2,p=ti.SYMBOL_WIDEST[m],A=eX.getRSSvalue(a,p,!0),C=eX.getRSSvalue(l,9-p,!1),E=ti.EVEN_TOTAL_SUBSET[m],I=ti.GSUM[m];return new eG(A*E+C+I,w)}static isNotA1left(e,t,r){return!(0==e.getValue()&&t&&r)}adjustOddEvenCounts(e){let t=ew.sum(new Int32Array(this.getOddCounts())),r=ew.sum(new Int32Array(this.getEvenCounts())),n=!1,i=!1;t>13?i=!0:t<4&&(n=!0);let o=!1,s=!1;r>13?s=!0:r<4&&(o=!0);let a=t+r-e,l=(1&t)==1,h=(1&r)==0;if(1==a){if(l){if(h)throw new Z;i=!0}else{if(!h)throw new Z;s=!0}}else if(-1==a){if(l){if(h)throw new Z;n=!0}else{if(!h)throw new Z;o=!0}}else if(0==a){if(l){if(!h)throw new Z;t<r?(n=!0,s=!0):(i=!0,o=!0)}else if(h)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(s)throw new Z;ti.increment(this.getEvenCounts(),this.getOddRoundingErrors())}s&&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 eG{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 ts extends ez{constructor(){super(...arguments),this.possibleLeftPairs=[],this.possibleRightPairs=[]}decodeRow(e,t,r){let n=this.decodePair(t,!1,e,r);ts.addOrTally(this.possibleLeftPairs,n),t.reverse();let i=this.decodePair(t,!0,e,r);for(let e of(ts.addOrTally(this.possibleRightPairs,i),t.reverse(),this.possibleLeftPairs))if(e.getCount()>1){for(let t of this.possibleRightPairs)if(t.getCount()>1&&ts.checkChecksum(e,t))return ts.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 W;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(),s=t.getFinderPattern().getResultPoints();return new en(n.toString(),null,0,[o[0],o[1],s[0],s[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),s=null==n?null:n.get(H.NEED_RESULT_POINT_CALLBACK);if(null!=s){let n=(i[0]+i[1])/2;t&&(n=e.getSize()-1-n),s.foundPossibleResultPoint(new ep(n,r))}let a=this.decodeDataCharacter(e,o,!0),l=this.decodeDataCharacter(e,o,!1);return new to(1597*a.getValue()+l.getValue(),a.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)eM.recordPatternInReverse(e,t.getStartEnd()[0],n);else{eM.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=ew.sum(new Int32Array(n))/i,s=this.getOddCounts(),a=this.getEvenCounts(),l=this.getOddRoundingErrors(),h=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?(s[i]=r,l[i]=t-r):(a[i]=r,h[i]=t-r)}this.adjustOddEvenCounts(r,i);let c=0,u=0;for(let e=s.length-1;e>=0;e--)u*=9,u+=s[e],c+=s[e];let d=0,f=0;for(let e=a.length-1;e>=0;e--)d*=9,d+=a[e],f+=a[e];let g=u+3*d;if(r){if((1&c)!=0||c>12||c<4)throw new Z;let e=(12-c)/2,t=ts.OUTSIDE_ODD_WIDEST[e],r=eX.getRSSvalue(s,t,!1),n=eX.getRSSvalue(a,9-t,!0);return new eG(r*ts.OUTSIDE_EVEN_TOTAL_SUBSET[e]+n+ts.OUTSIDE_GSUM[e],g)}{if((1&f)!=0||f>10||f<4)throw new Z;let e=(10-f)/2,t=ts.INSIDE_ODD_WIDEST[e],r=eX.getRSSvalue(s,t,!0);return new eG(eX.getRSSvalue(a,9-t,!1)*ts.INSIDE_ODD_TOTAL_SUBSET[e]+r+ts.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 s=0,a=o;for(let t=o;t<n;t++)if(e.get(t)!==i)r[s]++;else{if(3===s){if(ez.isFinderPattern(r))return[a,t];a+=r[0]+r[1],r[0]=r[2],r[1]=r[3],r[2]=0,r[3]=0,s--}else s++;r[s]=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 s=n[0]-o,a=this.getDecodeFinderCounters(),l=new Int32Array(a.length);P.arraycopy(a,0,l,1,a.length-1),l[0]=s;let h=this.parseFinderValue(l,ts.FINDER_PATTERNS),c=o,u=n[1];return r&&(c=e.getSize()-1-c,u=e.getSize()-1-u),new eY(h,[o,n[1]],c,u,t)}adjustOddEvenCounts(e,t){let r=ew.sum(new Int32Array(this.getOddCounts())),n=ew.sum(new Int32Array(this.getEvenCounts())),i=!1,o=!1,s=!1,a=!1;e?(r>12?o=!0:r<4&&(i=!0),n>12?a=!0:n<4&&(s=!0)):(r>11?o=!0:r<5&&(i=!0),n>10?a=!0:n<4&&(s=!0));let l=r+n-t,h=(1&r)==(e?1:0),c=(1&n)==1;if(1===l){if(h){if(c)throw new Z;o=!0}else{if(!c)throw new Z;a=!0}}else if(-1===l){if(h){if(c)throw new Z;i=!0}else{if(!c)throw new Z;s=!0}}else if(0===l){if(h){if(!c)throw new Z;r<n?(i=!0,a=!0):(o=!0,s=!0)}else if(c)throw new Z}else throw new Z;if(i){if(o)throw new Z;ez.increment(this.getOddCounts(),this.getOddRoundingErrors())}if(o&&ez.decrement(this.getOddCounts(),this.getOddRoundingErrors()),s){if(a)throw new Z;ez.increment(this.getEvenCounts(),this.getOddRoundingErrors())}a&&ez.decrement(this.getEvenCounts(),this.getEvenRoundingErrors())}}ts.OUTSIDE_EVEN_TOTAL_SUBSET=[1,10,34,70,126],ts.INSIDE_ODD_TOTAL_SUBSET=[4,20,48,81],ts.OUTSIDE_GSUM=[0,161,961,2015,2715],ts.INSIDE_GSUM=[0,336,1036,1516],ts.OUTSIDE_ODD_WIDEST=[8,6,4,3,1],ts.INSIDE_ODD_WIDEST=[2,4,6,8],ts.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 ta extends eM{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 eV(e)),r.includes(ei.CODE_39)&&this.readers.push(new eO(n)),r.includes(ei.CODE_128)&&this.readers.push(new eR),r.includes(ei.ITF)&&this.readers.push(new eb),r.includes(ei.RSS_14)&&this.readers.push(new ts),r.includes(ei.RSS_EXPANDED)&&this.readers.push(new ti(this.verbose))):(this.readers.push(new eV(e)),this.readers.push(new eO),this.readers.push(new eV(e)),this.readers.push(new eR),this.readers.push(new eb),this.readers.push(new ts),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 th{constructor(e,t){this.count=e,this.dataCodewords=t}getCount(){return this.count}getDataCodewords(){return this.dataCodewords}}class tc{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 s=0,a=o.getECCodewords();for(let e of o.getECBlocks())s+=e.getCount()*(e.getDataCodewords()+a);this.totalCodewords=s}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 V;for(let r of tc.VERSIONS)if(r.symbolSizeRows===e&&r.symbolSizeColumns===t)return r;throw new V}toString(){return""+this.versionNumber}static buildVersions(){return[new tc(1,10,10,8,8,new tl(5,new th(1,3))),new tc(2,12,12,10,10,new tl(7,new th(1,5))),new tc(3,14,14,12,12,new tl(10,new th(1,8))),new tc(4,16,16,14,14,new tl(12,new th(1,12))),new tc(5,18,18,16,16,new tl(14,new th(1,18))),new tc(6,20,20,18,18,new tl(18,new th(1,22))),new tc(7,22,22,20,20,new tl(20,new th(1,30))),new tc(8,24,24,22,22,new tl(24,new th(1,36))),new tc(9,26,26,24,24,new tl(28,new th(1,44))),new tc(10,32,32,14,14,new tl(36,new th(1,62))),new tc(11,36,36,16,16,new tl(42,new th(1,86))),new tc(12,40,40,18,18,new tl(48,new th(1,114))),new tc(13,44,44,20,20,new tl(56,new th(1,144))),new tc(14,48,48,22,22,new tl(68,new th(1,174))),new tc(15,52,52,24,24,new tl(42,new th(2,102))),new tc(16,64,64,14,14,new tl(56,new th(2,140))),new tc(17,72,72,16,16,new tl(36,new th(4,92))),new tc(18,80,80,18,18,new tl(48,new th(4,114))),new tc(19,88,88,20,20,new tl(56,new th(4,144))),new tc(20,96,96,22,22,new tl(68,new th(4,174))),new tc(21,104,104,24,24,new tl(56,new th(6,136))),new tc(22,120,120,18,18,new tl(68,new th(6,175))),new tc(23,132,132,20,20,new tl(62,new th(8,163))),new tc(24,144,144,22,22,new tl(62,new th(8,156),new th(2,155))),new tc(25,8,18,6,16,new tl(7,new th(1,5))),new tc(26,8,32,6,14,new tl(11,new th(1,10))),new tc(27,12,26,10,24,new tl(14,new th(1,16))),new tc(28,12,36,10,16,new tl(18,new th(1,22))),new tc(29,16,36,14,16,new tl(24,new th(1,32))),new tc(30,16,48,14,22,new tl(28,new th(1,49)))]}}tc.VERSIONS=tc.buildVersions();class tu{constructor(e){let t=e.getHeight();if(t<8||t>144||(1&t)!=0)throw new V;this.version=tu.readVersion(e),this.mappingBitMatrix=this.extractDataRegion(e),this.readMappingMatrix=new j(this.mappingBitMatrix.getWidth(),this.mappingBitMatrix.getHeight())}getVersion(){return this.version}static readVersion(e){let t=e.getHeight(),r=e.getWidth();return tc.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(),s=!1,a=!1,l=!1,h=!1;do if(r!==i||0!==n||s){if(r!==i-2||0!==n||(3&o)==0||a){if(r!==i+4||2!==n||(7&o)!=0||l){if(r!==i-2||0!==n||(7&o)!=4||h){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,h=!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,a=!0}else e[t++]=255&this.readCorner1(i,o),r-=2,n+=2,s=!0;while(r<i||n<o);if(t!==this.version.getTotalCodewords())throw new V;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 O("Dimension of bitMatrix must match the version size");let n=this.version.getDataRegionSizeRows(),i=this.version.getDataRegionSizeColumns(),o=t/n|0,s=r/i|0,a=new j(s*i,o*n);for(let t=0;t<o;++t){let r=t*n;for(let o=0;o<s;++o){let s=o*i;for(let l=0;l<n;++l){let h=t*(n+2)+1+l,c=r+l;for(let t=0;t<i;++t){let r=o*(i+2)+1+t;if(e.get(r,h)){let e=s+t;a.set(e,c)}}}}}return a}}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),s=0;for(let e of i)for(let t=0;t<e.getCount();t++){let t=e.getDataCodewords(),n=r.getECCodewords()+t;o[s++]=new td(t,new Uint8Array(n))}let a=o[0].codewords.length-r.getECCodewords(),l=a-1,h=0;for(let t=0;t<l;t++)for(let r=0;r<s;r++)o[r].codewords[t]=e[h++];let c=24===t.getVersionNumber(),u=c?8:s;for(let t=0;t<u;t++)o[t].codewords[a-1]=e[h++];let d=o[0].codewords.length;for(let t=a;t<d;t++)for(let r=0;r<s;r++){let n=c?(r+8)%s:r,i=c&&n>7?t-1:t;o[n].codewords[i]=e[h++]}if(h!==e.length)throw new O;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 O(""+e);let t=0,r=this.bitOffset,n=this.byteOffset,i=this.bytes;if(r>0){let o=8-r,s=e<o?e:o,a=o-s;t=(i[n]&255>>8-s<<a)>>a,e-=s,8===(r+=s)&&(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}}(h=E||(E={}))[h.PAD_ENCODE=0]="PAD_ENCODE",h[h.ASCII_ENCODE=1]="ASCII_ENCODE",h[h.C40_ENCODE=2]="C40_ENCODE",h[h.TEXT_ENCODE=3]="TEXT_ENCODE",h[h.ANSIX12_ENCODE=4]="ANSIX12_ENCODE",h[h.EDIFACT_ENCODE=5]="EDIFACT_ENCODE",h[h.BASE256_ENCODE=6]="BASE256_ENCODE";class tg{static decode(e){let t=new tf(e),r=new W,n=new W,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 V}o=E.ASCII_ENCODE}while(o!==E.PAD_ENCODE&&t.available()>0);return n.length()>0&&r.append(n.toString()),new es(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 V;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 V}}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 V;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 V}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 V}}}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 V;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 V}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 V;break;default:throw new V}}}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 V}}}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 V;let s=new Uint8Array(n);for(let t=0;t<n;t++){if(8>e.available())throw new V;s[t]=this.unrandomize255State(e.readBits(8),i++)}r.push(s);try{t.append(Y.decode(s,X.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 tw{constructor(){this.rsDecoder=new ef(ec.DATA_MATRIX_FIELD_256)}decode(e){let t=new tu(e),r=t.getVersion(),n=t.readCodewords(),i=td.getDataBlocks(n,r),o=0;for(let e of i)o+=e.getNumDataCodewords();let s=new Uint8Array(o),a=i.length;for(let e=0;e<a;e++){let t=i[e],r=t.getCodewords(),n=t.getNumDataCodewords();this.correctErrors(r,n);for(let t=0;t<n;t++)s[t*a+e]=r[t]}return tg.decode(s)}correctErrors(e,t){let r=new Int32Array(e);try{this.rsDecoder.decode(r,e.length-t)}catch(e){throw new B}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],s=this.transitionsBetween(r,o)+1,a=this.transitionsBetween(i,o)+1;return(1&s)==1&&(s+=1),(1&a)==1&&(a+=1),4*s<7*a&&4*a<7*s&&(s=a=Math.max(s,a)),new eA(tm.sampleGrid(this.image,r,n,i,o,s,a),[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 ep(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 ep(n,i)}detectSolid1(e){let t=e[0],r=e[1],n=e[3],i=e[2],o=this.transitionsBetween(t,r),s=this.transitionsBetween(r,n),a=this.transitionsBetween(n,i),l=this.transitionsBetween(i,t),h=o,c=[i,t,r,n];return h>s&&(h=s,c[0]=t,c[1]=r,c[2]=n,c[3]=i),h>a&&(h=a,c[0]=r,c[1]=n,c[2]=i,c[3]=t),h>l&&(c[0]=n,c[1]=i,c[2]=t,c[3]=r),c}detectSolid2(e){let t=e[0],r=e[1],n=e[2],i=e[3],o=this.transitionsBetween(t,i),s=tm.shiftPoint(r,n,(o+1)*4),a=tm.shiftPoint(n,r,(o+1)*4);return this.transitionsBetween(s,t)<this.transitionsBetween(a,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),s=this.transitionsBetween(r,i),a=tm.shiftPoint(t,r,(s+1)*4),l=tm.shiftPoint(n,r,(o+1)*4);o=this.transitionsBetween(a,i),s=this.transitionsBetween(l,i);let h=new ep(i.getX()+(n.getX()-r.getX())/(o+1),i.getY()+(n.getY()-r.getY())/(o+1)),c=new ep(i.getX()+(t.getX()-r.getX())/(s+1),i.getY()+(t.getY()-r.getY())/(s+1));if(!this.isValid(h))return this.isValid(c)?c:null;return this.isValid(c)?this.transitionsBetween(a,h)+this.transitionsBetween(l,h)>this.transitionsBetween(a,c)+this.transitionsBetween(l,c)?h:c:h}shiftToModuleCenter(e){let t,r,n=e[0],i=e[1],o=e[2],s=e[3],a=this.transitionsBetween(n,s)+1,l=this.transitionsBetween(o,s)+1,h=tm.shiftPoint(n,i,4*l),c=tm.shiftPoint(o,i,4*a);a=this.transitionsBetween(h,s)+1,l=this.transitionsBetween(c,s)+1,(1&a)==1&&(a+=1),(1&l)==1&&(l+=1);let u=(n.getX()+i.getX()+o.getX()+s.getX())/4,d=(n.getY()+i.getY()+o.getY()+s.getY())/4;return n=tm.moveAway(n,u,d),i=tm.moveAway(i,u,d),o=tm.moveAway(o,u,d),s=tm.moveAway(s,u,d),h=tm.shiftPoint(n,i,4*l),h=tm.shiftPoint(h,s,4*a),t=tm.shiftPoint(i,n,4*l),t=tm.shiftPoint(t,o,4*a),c=tm.shiftPoint(o,s,4*l),c=tm.shiftPoint(c,i,4*a),r=tm.shiftPoint(s,o,4*l),[h,t,c,r=tm.shiftPoint(r,n,4*a)]}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,s){return eT.getInstance().sampleGrid(e,o,s,.5,.5,o-.5,.5,o-.5,s-.5,.5,s-.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()),s=Math.abs(o-n)>Math.abs(i-r);if(s){let e=r;r=n,n=e,e=i,i=o,o=e}let a=Math.abs(i-r),l=Math.abs(o-n),h=-a/2,c=n<o?1:-1,u=r<i?1:-1,d=0,f=this.image.get(s?n:r,s?r:n);for(let e=r,t=n;e!==i;e+=u){let r=this.image.get(s?t:e,s?e:t);if(r!==f&&(d++,f=r),(h+=l)>0){if(t===o)break;t+=c,h-=a}}return d}}class tp{constructor(){this.decoder=new tw}decode(e,t=null){let r,n;if(null!=t&&t.has(H.PURE_BARCODE)){let t=tp.extractPureBits(e.getBlackMatrix());r=this.decoder.decode(t),n=tp.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()),s=r.getByteSegments();null!=s&&o.putMetadata(eo.BYTE_SEGMENTS,s);let a=r.getECLevel();return null!=a&&o.putMetadata(eo.ERROR_CORRECTION_LEVEL,a),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],s=t[0],a=(r[0]-s+1)/n,l=(o-i+1)/n;if(a<=0||l<=0)throw new Z;let h=n/2;i+=h,s+=h;let c=new j(a,l);for(let t=0;t<l;t++){let r=i+t*n;for(let i=0;i<a;i++)e.get(s+i*n,r)&&c.set(i,t)}return c}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}}tp.NO_POINTS=[];(c=I||(I={}))[c.L=0]="L",c[c.M=1]="M",c[c.Q=2]="Q",c[c.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 R(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 O;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 s=tC.numBitsDiffering(e,o);s<r&&(n=i[1],r=s),e!==t&&(s=tC.numBitsDiffering(t,o))<r&&(n=i[1],r=s)}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 V;try{return this.getVersionForNumber((e-17)/4)}catch(e){throw new V}}static getVersionForNumber(e){if(e<1||e>40)throw new O;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 j(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)))],(u=S||(S={}))[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";class t_{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)}}t_.values=new Map([[S.DATA_MASK_000,new t_(S.DATA_MASK_000,(e,t)=>(e+t&1)==0)],[S.DATA_MASK_001,new t_(S.DATA_MASK_001,(e,t)=>(1&e)==0)],[S.DATA_MASK_010,new t_(S.DATA_MASK_010,(e,t)=>t%3==0)],[S.DATA_MASK_011,new t_(S.DATA_MASK_011,(e,t)=>(e+t)%3==0)],[S.DATA_MASK_100,new t_(S.DATA_MASK_100,(e,t)=>(Math.floor(e/2)+Math.floor(t/3)&1)==0)],[S.DATA_MASK_101,new t_(S.DATA_MASK_101,(e,t)=>e*t%6==0)],[S.DATA_MASK_110,new t_(S.DATA_MASK_110,(e,t)=>e*t%6<3)],[S.DATA_MASK_111,new t_(S.DATA_MASK_111,(e,t)=>(e+t+e*t%3&1)==0)]]);class tT{constructor(e){let t=e.getHeight();if(t<21||(3&t)!=1)throw new V;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 V}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 V}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=t_.values.get(e.getDataMask()),n=this.bitMatrix.getHeight();r.unmaskBitMatrix(this.bitMatrix,n);let i=t.buildFunctionPattern(),o=!0,s=new Uint8Array(t.getTotalCodewords()),a=0,l=0,h=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)&&(h++,l<<=1,this.bitMatrix.get(e-t,r)&&(l|=1),8===h&&(s[a++]=l,h=0,l=0))}o=!o}if(a!==t.getTotalCodewords())throw new V;return s}remask(){if(null===this.parsedFormatInfo)return;let e=t_.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 ty{constructor(e,t){this.numDataCodewords=e,this.codewords=t}static getDataBlocks(e,t,r){if(e.length!==t.getTotalCodewords())throw new O;let n=t.getECBlocksForLevel(r),i=0,o=n.getECBlocks();for(let e of o)i+=e.getCount();let s=Array(i),a=0;for(let e of o)for(let t=0;t<e.getCount();t++){let t=e.getDataCodewords(),r=n.getECCodewordsPerBlock()+t;s[a++]=new ty(t,new Uint8Array(r))}let l=s[0].codewords.length,h=s.length-1;for(;h>=0&&s[h].codewords.length!==l;){;h--}h++;let c=l-n.getECCodewordsPerBlock(),u=0;for(let t=0;t<c;t++)for(let r=0;r<a;r++)s[r].codewords[t]=e[u++];for(let t=h;t<a;t++)s[t].codewords[c]=e[u++];let d=s[0].codewords.length;for(let t=c;t<d;t++)for(let r=0;r<a;r++){let n=r<h?t:t+1;s[r].codewords[n]=e[u++]}return s}getNumDataCodewords(){return this.numDataCodewords}getCodewords(){return this.codewords}}(d=_||(_={}))[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 O;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(_.TERMINATOR,"TERMINATOR",Int32Array.from([0,0,0]),0),tN.NUMERIC=new tN(_.NUMERIC,"NUMERIC",Int32Array.from([10,12,14]),1),tN.ALPHANUMERIC=new tN(_.ALPHANUMERIC,"ALPHANUMERIC",Int32Array.from([9,11,13]),2),tN.STRUCTURED_APPEND=new tN(_.STRUCTURED_APPEND,"STRUCTURED_APPEND",Int32Array.from([0,0,0]),3),tN.BYTE=new tN(_.BYTE,"BYTE",Int32Array.from([8,16,16]),4),tN.ECI=new tN(_.ECI,"ECI",Int32Array.from([0,0,0]),7),tN.KANJI=new tN(_.KANJI,"KANJI",Int32Array.from([8,10,12]),8),tN.FNC1_FIRST_POSITION=new tN(_.FNC1_FIRST_POSITION,"FNC1_FIRST_POSITION",Int32Array.from([0,0,0]),5),tN.FNC1_SECOND_POSITION=new tN(_.FNC1_SECOND_POSITION,"FNC1_SECOND_POSITION",Int32Array.from([0,0,0]),9),tN.HANZI=new tN(_.HANZI,"HANZI",Int32Array.from([8,10,12]),13);class tD{static decode(e,t,r,n){let i=new tf(e),o=new W,s=[],a=-1,l=-1;try{let e,r=null,h=!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:h=!0;break;case tN.STRUCTURED_APPEND:if(16>i.available())throw new V;a=i.readBits(8),l=i.readBits(8);break;case tN.ECI:let c=tD.parseECIValue(i);if(r=z.getCharacterSetECIByValue(c),null===r)throw new V;break;case tN.HANZI:let u=i.readBits(4),d=i.readBits(e.getCharacterCountBits(t));u===tD.GB2312_SUBSET&&tD.decodeHanziSegment(i,o,d);break;default:let f=i.readBits(e.getCharacterCountBits(t));switch(e){case tN.NUMERIC:tD.decodeNumericSegment(i,o,f);break;case tN.ALPHANUMERIC:tD.decodeAlphanumericSegment(i,o,f,h);break;case tN.BYTE:tD.decodeByteSegment(i,o,f,r,s,n);break;case tN.KANJI:tD.decodeKanjiSegment(i,o,f);break;default:throw new V}}}while(e!==tN.TERMINATOR)}catch(e){throw new V}return new es(e,o.toString(),0===s.length?null:s,null===r?null:r.toString(),a,l)}static decodeHanziSegment(e,t,r){if(13*r>e.available())throw new V;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(Y.decode(n,X.GB2312))}catch(e){throw new V(e)}}static decodeKanjiSegment(e,t,r){if(13*r>e.available())throw new V;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(Y.decode(n,X.SHIFT_JIS))}catch(e){throw new V(e)}}static decodeByteSegment(e,t,r,n,i,o){let s;if(8*r>e.available())throw new V;let a=new Uint8Array(r);for(let t=0;t<r;t++)a[t]=e.readBits(8);s=null===n?X.guessEncoding(a,o):n.getName();try{t.append(Y.decode(a,s))}catch(e){throw new V(e)}i.push(a)}static toAlphaNumericChar(e){if(e>=tD.ALPHANUMERIC_CHARS.length)throw new V;return tD.ALPHANUMERIC_CHARS[e]}static decodeAlphanumericSegment(e,t,r,n){let i=t.length();for(;r>1;){if(11>e.available())throw new V;let n=e.readBits(11);t.append(tD.toAlphaNumericChar(Math.floor(n/45))),t.append(tD.toAlphaNumericChar(n%45)),r-=2}if(1===r){if(6>e.available())throw new V;t.append(tD.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 V;let n=e.readBits(10);if(n>=1e3)throw new V;t.append(tD.toAlphaNumericChar(Math.floor(n/100))),t.append(tD.toAlphaNumericChar(Math.floor(n/10)%10)),t.append(tD.toAlphaNumericChar(n%10)),r-=3}if(2===r){if(7>e.available())throw new V;let r=e.readBits(7);if(r>=100)throw new V;t.append(tD.toAlphaNumericChar(Math.floor(r/10))),t.append(tD.toAlphaNumericChar(r%10))}else if(1===r){if(4>e.available())throw new V;let r=e.readBits(4);if(r>=10)throw new V;t.append(tD.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 V}}tD.ALPHANUMERIC_CHARS="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ $%*+-./:",tD.GB2312_SUBSET=1;class tM{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 tR{constructor(){this.rsDecoder=new ef(ec.QR_CODE_FIELD_256)}decodeBooleanArray(e,t){return this.decodeBitMatrix(j.parseFromBooleanArray(e),t)}decodeBitMatrix(e,t){let r=new tT(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 tM(!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=ty.getDataBlocks(i,r,n),s=0;for(let e of o)s+=e.getNumDataCodewords();let a=new Uint8Array(s),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++)a[l++]=t[e]}return tD.decode(a,r,n,t)}correctErrors(e,t){let r=new Int32Array(e);try{this.rsDecoder.decode(r,e.length-t)}catch(e){throw new B}for(let n=0;n<t;n++)e[n]=r[n]}}class tO extends ep{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 tO(n,i,(this.estimatedModuleSize+r)/2)}}class tb{constructor(e,t,r,n,i,o,s){this.image=e,this.startX=t,this.startY=r,this.width=n,this.height=i,this.moduleSize=o,this.resultPointCallback=s,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 s=0;s<t;s++){let t=n+((1&s)==0?Math.floor((s+1)/2):-Math.floor((s+1)/2));i[0]=0,i[1]=0,i[2]=0;let a=e;for(;a<r&&!o.get(a,t);)a++;let l=0;for(;a<r;){if(o.get(a,t)){if(1===l)i[1]++;else if(2===l){if(this.foundPatternCross(i)){let e=this.handlePossibleCenter(i,t,a);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]++;a++}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(),s=this.crossCheckStateCount;s[0]=0,s[1]=0,s[2]=0;let a=e;for(;a>=0&&i.get(t,a)&&s[1]<=r;)s[1]++,a--;if(a<0||s[1]>r)return NaN;for(;a>=0&&!i.get(t,a)&&s[0]<=r;)s[0]++,a--;if(s[0]>r)return NaN;for(a=e+1;a<o&&i.get(t,a)&&s[1]<=r;)s[1]++,a++;if(a===o||s[1]>r)return NaN;for(;a<o&&!i.get(t,a)&&s[2]<=r;)s[2]++,a++;return s[2]>r||5*Math.abs(s[0]+s[1]+s[2]-n)>=2*n?NaN:this.foundPatternCross(s)?tb.centerFromEnd(s,a):NaN}handlePossibleCenter(e,t,r){let n=e[0]+e[1]+e[2],i=tb.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 tO(i,o,t);this.possibleCenters.push(r),null!==this.resultPointCallback&&void 0!==this.resultPointCallback&&this.resultPointCallback.foundPossibleResultPoint(r)}return null}}class tB extends ep{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 tB(i,o,(this.count*this.estimatedModuleSize+r)/n,n)}}class tL{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(),s=Math.floor(3*i/(4*tP.MAX_MODULES));(s<tP.MIN_SKIP||t)&&(s=tP.MIN_SKIP);let a=!1,l=new Int32Array(5);for(let e=s-1;e<i&&!a;e+=s){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(s=2,!0===this.hasSkipped)a=this.haveMultiplyConfirmedCenters();else{let t=this.findRowSkip();t>l[2]&&(e+=t-l[2]-s,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)&&(s=l[0],this.hasSkipped&&(a=this.haveMultiplyConfirmedCenters()))}let h=this.selectBestPatterns();return ep.orderBestPatterns(h),new tL(h)}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,s=this.image;for(;e>=o&&t>=o&&s.get(t-o,e-o);)i[2]++,o++;if(e<o||t<o)return!1;for(;e>=o&&t>=o&&!s.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&&s.get(t-o,e-o)&&i[0]<=r;)i[0]++,o++;if(i[0]>r)return!1;let a=s.getHeight(),l=s.getWidth();for(o=1;e+o<a&&t+o<l&&s.get(t+o,e+o);)i[2]++,o++;if(e+o>=a||t+o>=l)return!1;for(;e+o<a&&t+o<l&&!s.get(t+o,e+o)&&i[3]<r;)i[3]++,o++;if(e+o>=a||t+o>=l||i[3]>=r)return!1;for(;e+o<a&&t+o<l&&s.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(),s=this.getCrossCheckStateCount(),a=e;for(;a>=0&&i.get(t,a);)s[2]++,a--;if(a<0)return NaN;for(;a>=0&&!i.get(t,a)&&s[1]<=r;)s[1]++,a--;if(a<0||s[1]>r)return NaN;for(;a>=0&&i.get(t,a)&&s[0]<=r;)s[0]++,a--;if(s[0]>r)return NaN;for(a=e+1;a<o&&i.get(t,a);)s[2]++,a++;if(a===o)return NaN;for(;a<o&&!i.get(t,a)&&s[3]<r;)s[3]++,a++;if(a===o||s[3]>=r)return NaN;for(;a<o&&i.get(t,a)&&s[4]<r;)s[4]++,a++;return s[4]>=r||5*Math.abs(s[0]+s[1]+s[2]+s[3]+s[4]-n)>=2*n?NaN:tP.foundPatternCross(s)?tP.centerFromEnd(s,a):NaN}crossCheckHorizontal(e,t,r,n){let i=this.image,o=i.getWidth(),s=this.getCrossCheckStateCount(),a=e;for(;a>=0&&i.get(a,t);)s[2]++,a--;if(a<0)return NaN;for(;a>=0&&!i.get(a,t)&&s[1]<=r;)s[1]++,a--;if(a<0||s[1]>r)return NaN;for(;a>=0&&i.get(a,t)&&s[0]<=r;)s[0]++,a--;if(s[0]>r)return NaN;for(a=e+1;a<o&&i.get(a,t);)s[2]++,a++;if(a===o)return NaN;for(;a<o&&!i.get(a,t)&&s[3]<r;)s[3]++,a++;if(a===o||s[3]>=r)return NaN;for(;a<o&&i.get(a,t)&&s[4]<r;)s[4]++,a++;return s[4]>=r||5*Math.abs(s[0]+s[1]+s[2]+s[3]+s[4]-n)>=n?NaN:tP.foundPatternCross(s)?tP.centerFromEnd(s,a):NaN}handlePossibleCenter(e,t,r,n){let i=e[0]+e[1]+e[2]+e[3]+e[4],o=tP.centerFromEnd(e,r),s=this.crossCheckVertical(t,Math.floor(o),e[2],i);if(!isNaN(s)&&!isNaN(o=this.crossCheckHorizontal(Math.floor(o),Math.floor(s),e[2],i))&&(!n||this.crossCheckDiagonal(Math.floor(s),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,s,o)){r[n]=i.combineEstimate(s,o,e),t=!0;break}}if(!t){let t=new tB(o,s,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 s=Math.max(.2*e,o);for(let t=0;t<r.length&&r.length>3;t++)Math.abs(r[t].getEstimatedModuleSize()-e)>s&&(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 tv{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 s=tv.computeDimension(r,n,i,o),a=tS.getProvisionalVersionForDimension(s),l=a.getDimensionForVersion()-7,h=null;if(a.getAlignmentPatternCenters().length>0){let e=n.getX()-r.getX()+i.getX(),t=n.getY()-r.getY()+i.getY(),s=1-3/l,a=Math.floor(r.getX()+s*(e-r.getX())),c=Math.floor(r.getY()+s*(t-r.getY()));for(let e=4;e<=16;e<<=1)try{h=this.findAlignmentInRegion(o,a,c,e);break}catch(e){if(!(e instanceof Z))throw e}}let c=tv.createTransform(r,n,i,h,s),u=tv.sampleGrid(this.image,c,s);return new eA(u,t=null===h?[i,r,n]:[i,r,n,h])}static createTransform(e,t,r,n,i){let o,s,a,l;let h=i-3.5;return null!==n?(o=n.getX(),s=n.getY(),l=a=h-3):(o=t.getX()-e.getX()+r.getX(),s=t.getY()-e.getY()+r.getY(),a=h,l=h),eS.quadrilateralToQuadrilateral(3.5,3.5,h,3.5,a,l,3.5,h,e.getX(),e.getY(),t.getX(),t.getY(),o,s,r.getX(),r.getY())}static sampleGrid(e,t,r){return eT.getInstance().sampleGridWithTransform(e,r,r,t)}static computeDimension(e,t,r,n){let i=ew.round(ep.distance(e,t)/n),o=Math.floor((i+ew.round(ep.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,s=e-(r-e);s<0?(o=e/(e-s),s=0):s>=this.image.getWidth()&&(o=(this.image.getWidth()-1-e)/(s-e),s=this.image.getWidth()-1);let a=Math.floor(t-(n-t)*o);return o=1,a<0?(o=t/(t-a),a=0):a>=this.image.getHeight()&&(o=(this.image.getHeight()-1-t)/(a-t),a=this.image.getHeight()-1),s=Math.floor(e+(s-e)*o),(i+=this.sizeOfBlackWhiteBlackRun(e,t,s,a))-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),s=Math.abs(n-t),a=-o/2,l=e<r?1:-1,h=t<n?1:-1,c=0,u=r+l;for(let r=e,d=t;r!==u;r+=l){let l=i?d:r,u=i?r:d;if(1===c===this.image.get(l,u)){if(2===c)return ew.distance(r,d,e,t);c++}if((a+=s)>0){if(d===n)break;d+=h,a-=o}}return 2===c?ew.distance(r+l,n,e,t):NaN}findAlignmentInRegion(e,t,r,n){let i=Math.floor(n*e),o=Math.max(0,t-i),s=Math.min(this.image.getWidth()-1,t+i);if(s-o<3*e)throw new Z("Alignment top exceeds estimated module size.");let a=Math.max(0,r-i),l=Math.min(this.image.getHeight()-1,r+i);if(l-a<3*e)throw new Z("Alignment bottom exceeds estimated module size.");return new tb(this.image,o,a,s-o,l-a,e,this.resultPointCallback).find()}}class tF{constructor(){this.decoder=new tR}getDecoder(){return this.decoder}decode(e,t){let r,n;if(null!=t&&void 0!==t.get(H.PURE_BARCODE)){let i=tF.extractPureBits(e.getBlackMatrix());r=this.decoder.decodeBitMatrix(i,t),n=tF.NO_POINTS}else{let i=new tv(e.getBlackMatrix()).detect(t);r=this.decoder.decodeBitMatrix(i.getBits(),t),n=i.getPoints()}r.getOther()instanceof tM&&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 s=r.getECLevel();return null!==s&&i.putMetadata(eo.ERROR_CORRECTION_LEVEL,s),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],s=t[0],a=r[0];if(s>=a||i>=o||o-i!=a-s&&(a=s+(o-i))>=e.getWidth())throw new Z;let l=Math.round((a-s+1)/n),h=Math.round((o-i+1)/n);if(l<=0||h<=0||h!==l)throw new Z;let c=Math.floor(n/2);i+=c;let u=(s+=c)+Math.floor((l-1)*n)-a;if(u>0){if(u>c)throw new Z;s-=u}let d=i+Math.floor((h-1)*n)-o;if(d>0){if(d>c)throw new Z;i-=d}let f=new j(l,h);for(let t=0;t<h;t++){let r=i+Math.floor(t*n);for(let i=0;i<l;i++)e.get(s+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],s=!0,a=0;for(;i<n&&o<r;){if(s!==t.get(i,o)){if(5==++a)break;s=!s}i++,o++}if(i===n||o===r)throw new Z;return(i-e[0])/7}}tF.NO_POINTS=[];class tx{PDF417Common(){}static getBitCountSum(e){return ew.sum(e)}static toIntArray(e){if(null==e||!e.length)return tx.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=x.binarySearch(tx.SYMBOL_TABLE,262143&e);return t<0?-1:(tx.CODEWORD_TABLE[t]-1)%tx.NUMBER_OF_CODEWORDS}}tx.NUMBER_OF_CODEWORDS=929,tx.MAX_CODEWORDS_IN_BARCODE=tx.NUMBER_OF_CODEWORDS-1,tx.MIN_ROWS_IN_BARCODE=3,tx.MAX_ROWS_IN_BARCODE=90,tx.MODULES_IN_CODEWORD=17,tx.MODULES_IN_STOP_PATTERN=18,tx.BARS_IN_MODULE=8,tx.EMPTY_INT_ARRAY=new Int32Array([]),tx.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]),tx.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 s=tU.findVertices(t,n,i);if(null==s[0]&&null==s[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(s),!e)break;null!=s[2]?(i=Math.trunc(s[2].getX()),n=Math.trunc(s[2].getY())):(i=Math.trunc(s[4].getX()),n=Math.trunc(s[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 s=[,,,,],a=!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 s=tU.findGuardPattern(e,i,--n,r,!1,o,l);if(null!=s)t=s;else{n++;break}}s[0]=new ep(t[0],n),s[1]=new ep(t[1],n),a=!0;break}}let h=n+1;if(a){let n=0,i=Int32Array.from([Math.trunc(s[0].getX()),Math.trunc(s[1].getX())]);for(;h<t;h++){let t=tU.findGuardPattern(e,i[0],h,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++}}h-=n+1,s[2]=new ep(i[0],h),s[3]=new ep(i[1],h)}return h-n<tU.BARCODE_MIN_HEIGHT&&x.fill(s,null),s}static findGuardPattern(e,t,r,n,i,o,s){x.fillWithin(s,0,s.length,0);let a=t,l=0;for(;e.get(a,r)&&a>0&&l++<tU.MAX_PIXEL_DRIFT;)a--;let h=a,c=0,u=o.length;for(let t=i;h<n;h++)if(e.get(h,r)!==t)s[c]++;else{if(c===u-1){if(tU.patternMatchVariance(s,o,tU.MAX_INDIVIDUAL_VARIANCE)<tU.MAX_AVG_VARIANCE)return new Int32Array([a,h]);a+=s[0]+s[1],P.arraycopy(s,2,s,0,c-1),s[c-1]=0,s[c]=0,c--}else c++;s[c]=1,t=!t}return c===u-1&&tU.patternMatchVariance(s,o,tU.MAX_INDIVIDUAL_VARIANCE)<tU.MAX_AVG_VARIANCE?new Int32Array([a,h-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 s=i/o;r*=s;let a=0;for(let i=0;i<n;i++){let n=e[i],o=t[i]*s,l=n>o?n-o:o-n;if(l>r)return 1/0;a+=l}return a/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 O;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 O("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 O("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 O("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 O;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 W;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 tV{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 O;return this.logTable[e]}inverse(e){if(0===e)throw new eh;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 tz extends tV{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 O;if(0===t)return this.zero;let r=new Int32Array(e+1);return r[0]=t,new tH(this,r)}}tz.PDF417_GF=new tz(tx.NUMBER_OF_CODEWORDS,3);class tG{constructor(){this.field=tz.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 s=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]));s=s.multiply(n)}let a=new tH(this.field,i),l=this.runEuclideanAlgorithm(this.field.buildMonomial(t,1),a,t),h=l[0],c=l[1],u=this.findErrorLocations(h),d=this.findErrorMagnitudes(c,h,u);for(let t=0;t<u.length;t++){let r=e.length-1-this.field.log(u[t]);if(r<0)throw B.getChecksumInstance();e[r]=this.field.subtract(e[r],d[t])}return u.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(),s=this.field.getOne();for(;i.getDegree()>=Math.round(r/2);){let e=n,t=o;if(n=i,o=s,n.isZero())throw B.getChecksumInstance();i=e;let r=this.field.getZero(),a=n.getCoefficient(n.getDegree()),l=this.field.inverse(a);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))}s=r.multiply(o).subtract(t).negative()}let a=s.getCoefficient(0);if(0===a)throw B.getChecksumInstance();let l=this.field.inverse(a);return[s.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 B.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),s=r.length,a=new Int32Array(s);for(let t=0;t<s;t++){let n=this.field.inverse(r[t]),i=this.field.subtract(0,e.evaluateAt(n)),s=this.field.inverse(o.evaluateAt(n));a[t]=this.field.multiply(i,s)}return a}}class tY{constructor(e,t,r,n,i){e instanceof tY?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,s=null==n||null==i;if(o&&s)throw new Z;o?(t=new ep(0,n.getY()),r=new ep(0,i.getY())):s&&(n=new ep(e.getWidth()-1,t.getY()),i=new ep(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 tY(e.image,e.topLeft,e.bottomLeft,t.topRight,t.bottomRight)}addMissingRows(e,t,r){let n=this.topLeft,i=this.bottomLeft,o=this.topRight,s=this.bottomRight;if(e>0){let t=r?this.topLeft:this.topRight,i=Math.trunc(t.getY()-e);i<0&&(i=0);let s=new ep(t.getX(),i);r?n=s:o=s}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 ep(e.getX(),n);r?i=o:s=o}return new tY(this.image,n,i,o,s)}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 tX{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 tW{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,s,a){let l;if("%%"===e)return"%";if(void 0===t[++r])return;e=o?parseInt(o.substr(1)):void 0;let h=s?parseInt(s.substr(1)):void 0;switch(a){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(h||16);break;case"d":l=parseFloat(parseInt(t[r],h||10).toPrecision(e)).toFixed(0)}l="object"==typeof l?JSON.stringify(l):(+l).toString(h);let c=parseInt(i),u=i&&i[0]+""=="0"?"0":" ";for(;l.length<c;)l=void 0!==n?l+u:u+l;return l})}format(e,...t){this.buffer+=tW.form(e,t)}toString(){return this.buffer}}class tj{constructor(e){this.boundingBox=new tY(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<tj.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 tW,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()}}tj.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 tx.toIntArray(t)}getConfidence(e){return this.values.get(e)}}class tQ extends tj{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())),s=this.imageRowToCodewordIndex(Math.trunc(i.getY())),a=-1,l=1,h=0;for(let r=o;r<s;r++){if(null==t[r])continue;let n=t[r],i=n.getRowNumber()-a;if(0===i)h++;else if(1===i)l=Math.max(l,h),h=1,a=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:(a=n.getRowNumber(),h=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())),s=this.getCodewords(),a=-1;for(let t=i;t<o;t++){if(null==s[t])continue;let r=s[t];r.setRowNumberAsRowIndicatorColumn();let n=r.getRowNumber()-a;0===n||(1===n?a=r.getRowNumber():r.getRowNumber()>=e.getRowCount()?s[t]=null:a=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,s=o.getRowNumber();switch(!this._isLeft&&(s+=2),s%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]<tx.MIN_ROWS_IN_BARCODE||r.getValue()[0]+n.getValue()[0]>tx.MAX_ROWS_IN_BARCODE)return null;let o=new tX(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 tK{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=tx.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=tK.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=tK.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 s=Array(14);for(let e of(s[2]=i[t],s[3]=o[t],t>0&&(s[0]=r[t-1],s[4]=i[t-1],s[5]=o[t-1]),t>1&&(s[8]=r[t-2],s[10]=i[t-2],s[11]=o[t-2]),t<r.length-1&&(s[1]=r[t+1],s[6]=i[t+1],s[7]=o[t+1]),t<r.length-2&&(s[9]=r[t+2],s[12]=i[t+2],s[13]=o[t+2]),s))if(tK.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 tW;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 tq{constructor(e,t,r,n){this.rowNumber=tq.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!==tq.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}}tq.BARCODE_ROW_UNKNOWN=-1;class tJ{static initialize(){for(let e=0;e<tx.SYMBOL_TABLE.length;e++){let t=tx.SYMBOL_TABLE[e],r=1&t;for(let n=0;n<tx.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(tx.BARS_IN_MODULE)),tJ.RATIOS_TABLE[e][tx.BARS_IN_MODULE-n-1]=Math.fround(i/tx.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=ew.sum(e),r=new Int32Array(tx.BARS_IN_MODULE),n=0,i=0;for(let o=0;o<tx.MODULES_IN_CODEWORD;o++){let s=t/(2*tx.MODULES_IN_CODEWORD)+o*t/tx.MODULES_IN_CODEWORD;i+e[n]<=s&&(i+=e[n],n++),r[n]++}return r}static getDecodedCodewordValue(e){let t=tJ.getBitValue(e);return -1===tx.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=ew.sum(e),r=Array(tx.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<tx.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=tx.SYMBOL_TABLE[e])}return i}}tJ.bSymbolTableReady=!1,tJ.RATIOS_TABLE=Array(tx.SYMBOL_TABLE.length).map(e=>Array(tx.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 t2 extends M{}t2.kind="NullPointerException";class t0{writeBytes(e){this.writeBytesOffset(e,0,e.length)}writeBytesOffset(e,t,r){if(null==e)throw new t2;if(t<0||t>e.length||r<0||t+r>e.length||t+r<0)throw new v;if(0!==r)for(let n=0;n<r;n++)this.write(e[t+n])}flush(){}close(){}}class t3 extends M{}class t4 extends t0{constructor(e=32){if(super(),this.count=0,e<0)throw new O("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=x.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 v;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 x.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=T||(T={}))[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 W(""),n=z.ISO8859_1;r.enableDecoding(n);let i=1,o=e[i++],s=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:z.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,s);break;case t5.BEGIN_MACRO_PDF417_OPTIONAL_FIELD:case t5.MACRO_PDF417_TERMINATOR:throw new V;default:i--,i=t5.textCompaction(e,i,r)}if(i<e.length)o=e[i++];else throw V.getFormatInstance()}if(0===r.length())throw V.getFormatInstance();let a=new es(null,r.toString(),null,t);return a.setOther(s),a}static decodeMacroBlock(e,t,r){if(t+t5.NUMBER_OF_SEQUENCE_CODEWORDS>e[0])throw V.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 W;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 W;t=t5.textCompaction(e,t+1,n),r.setFileName(n.toString());break;case t5.MACRO_PDF417_OPTIONAL_FIELD_SENDER:let i=new W;t=t5.textCompaction(e,t+1,i),r.setSender(i.toString());break;case t5.MACRO_PDF417_OPTIONAL_FIELD_ADDRESSEE:let o=new W;t=t5.textCompaction(e,t+1,o),r.setAddressee(o.toString());break;case t5.MACRO_PDF417_OPTIONAL_FIELD_SEGMENT_COUNT:let s=new W;t=t5.numericCompaction(e,t+1,s),r.setSegmentCount(k.parseInt(s.toString()));break;case t5.MACRO_PDF417_OPTIONAL_FIELD_TIME_STAMP:let a=new W;t=t5.numericCompaction(e,t+1,a),r.setTimestamp(t1.parseLong(a.toString()));break;case t5.MACRO_PDF417_OPTIONAL_FIELD_CHECKSUM:let l=new W;t=t5.numericCompaction(e,t+1,l),r.setChecksum(k.parseInt(l.toString()));break;case t5.MACRO_PDF417_OPTIONAL_FIELD_FILE_SIZE:let h=new W;t=t5.numericCompaction(e,t+1,h),r.setFileSize(t1.parseLong(h.toString()));break;default:throw V.getFormatInstance()}break;case t5.MACRO_PDF417_TERMINATOR:t++,r.setLastSegment(!0);break;default:throw V.getFormatInstance()}if(-1!==o){let n=t-o;r.isLastSegment()&&n--,r.setOptionalData(x.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,s=!1;for(;t<e[0]&&!s;){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--,s=!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=T.ALPHA,o=T.ALPHA,s=0;for(;s<r;){let r=e[s],a="";switch(i){case T.ALPHA:if(r<26)a=String.fromCharCode(65+r);else switch(r){case 26:a=" ";break;case t5.LL:i=T.LOWER;break;case t5.ML:i=T.MIXED;break;case t5.PS:o=i,i=T.PUNCT_SHIFT;break;case t5.MODE_SHIFT_TO_BYTE_COMPACTION_MODE:n.append(t[s]);break;case t5.TEXT_COMPACTION_MODE_LATCH:i=T.ALPHA}break;case T.LOWER:if(r<26)a=String.fromCharCode(97+r);else switch(r){case 26:a=" ";break;case t5.AS:o=i,i=T.ALPHA_SHIFT;break;case t5.ML:i=T.MIXED;break;case t5.PS:o=i,i=T.PUNCT_SHIFT;break;case t5.MODE_SHIFT_TO_BYTE_COMPACTION_MODE:n.append(t[s]);break;case t5.TEXT_COMPACTION_MODE_LATCH:i=T.ALPHA}break;case T.MIXED:if(r<t5.PL)a=t5.MIXED_CHARS[r];else switch(r){case t5.PL:i=T.PUNCT;break;case 26:a=" ";break;case t5.LL:i=T.LOWER;break;case t5.AL:i=T.ALPHA;break;case t5.PS:o=i,i=T.PUNCT_SHIFT;break;case t5.MODE_SHIFT_TO_BYTE_COMPACTION_MODE:n.append(t[s]);break;case t5.TEXT_COMPACTION_MODE_LATCH:i=T.ALPHA}break;case T.PUNCT:if(r<t5.PAL)a=t5.PUNCT_CHARS[r];else switch(r){case t5.PAL:i=T.ALPHA;break;case t5.MODE_SHIFT_TO_BYTE_COMPACTION_MODE:n.append(t[s]);break;case t5.TEXT_COMPACTION_MODE_LATCH:i=T.ALPHA}break;case T.ALPHA_SHIFT:if(i=o,r<26)a=String.fromCharCode(65+r);else switch(r){case 26:a=" ";break;case t5.TEXT_COMPACTION_MODE_LATCH:i=T.ALPHA}break;case T.PUNCT_SHIFT:if(i=o,r<t5.PAL)a=t5.PUNCT_CHARS[r];else switch(r){case t5.PAL:i=T.ALPHA;break;case t5.MODE_SHIFT_TO_BYTE_COMPACTION_MODE:n.append(t[s]);break;case t5.TEXT_COMPACTION_MODE_LATCH:i=T.ALPHA}}""!==a&&n.append(a),s++}}static byteCompaction(e,t,r,n,i){let o=new t4,s=0,a=0,l=!1;switch(e){case t5.BYTE_COMPACTION_MODE_LATCH:let h=new Int32Array(6),c=t[n++];for(;n<t[0]&&!l;)switch(h[s++]=c,a=900*a+c,c=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(s%5==0&&s>0){for(let e=0;e<6;++e)o.write(Number(t6(a)>>t6(8*(5-e))));a=0,s=0}}n===t[0]&&c<t5.TEXT_COMPACTION_MODE_LATCH&&(h[s++]=c);for(let e=0;e<s;e++)o.write(h[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)s++,a=900*a+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(s%5==0&&s>0){for(let e=0;e<6;++e)o.write(Number(t6(a)>>t6(8*(5-e))));a=0,s=0}}}return i.append(Y.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 s=e[t++];if(t===e[0]&&(i=!0),s<t5.TEXT_COMPACTION_MODE_LATCH)o[n]=s,n++;else switch(s){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||s===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 V;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,s){let a,l=new tY(e,t,r,n,i),h=null,c=null;for(let r=!0;;r=!1){if(null!=t&&(h=t7.getRowIndicatorColumn(e,l,t,!0,o,s)),null!=n&&(c=t7.getRowIndicatorColumn(e,l,n,!1,o,s)),null==(a=t7.merge(h,c)))throw Z.getNotFoundInstance();let i=a.getBoundingBox();if(r&&null!=i&&(i.getMinY()<l.getMinY()||i.getMaxY()>l.getMaxY()))l=i;else break}a.setBoundingBox(l);let u=a.getBarcodeColumnCount()+1;a.setDetectionResultColumn(0,h),a.setDetectionResultColumn(u,c);let d=null!=h;for(let t=1;t<=u;t++){let r,n=d?t:u-t;if(void 0!==a.getDetectionResultColumn(n))continue;r=0===n||n===u?new tQ(l,0===n):new tj(l),a.setDetectionResultColumn(n,r);let i=-1,h=-1;for(let t=l.getMinY();t<=l.getMaxY();t++){if((i=t7.getStartColumn(a,n,t,d))<0||i>l.getMaxX()){if(-1===h)continue;i=h}let c=t7.detectCodeword(e,l.getMinX(),l.getMaxX(),d,i,t,o,s);null!=c&&(r.setCodeword(t,c),h=i,o=Math.min(o,c.getWidth()),s=Math.max(s,c.getWidth()))}}return t7.createDecoderResult(a)}static merge(e,t){if(null==e&&null==t)return null;let r=t7.getBarcodeMetadata(e,t);return null==r?null:new tK(r,tY.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 s=new tQ(t,n);for(let a=0;a<2;a++){let l=0===a?1:-1,h=Math.trunc(Math.trunc(r.getX()));for(let a=Math.trunc(Math.trunc(r.getY()));a<=t.getMaxY()&&a>=t.getMinY();a+=l){let t=t7.detectCodeword(e,0,e.getWidth(),n,h,a,i,o);null!=t&&(s.setCodeword(a,t),h=n?t.getStartX():t.getEndX())}}return s}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>tx.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 s=0;s<e.getBarcodeRowCount();s++)for(let a=0;a<e.getBarcodeColumnCount();a++){let l=t[s][a+1].getValue(),h=s*e.getBarcodeColumnCount()+a;0===l.length?r.push(h):1===l.length?n[h]=l[0]:(o.push(h),i.push(l))}let s=Array(i.length);for(let e=0;e<s.length;e++)s[e]=i[e];return t7.createDecoderResultFromAmbiguousValues(e.getBarcodeECLevel(),n,tx.toIntArray(r),tx.toIntArray(o),s)}static createDecoderResultFromAmbiguousValues(e,t,r,n,i){let o=new Int32Array(n.length),s=100;for(;s-- >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 B))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 B.getChecksumInstance()}}throw B.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 s=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*s*(r.getEndX()-r.getStartX());s++}return n?e.getBoundingBox().getMinX():e.getBoundingBox().getMaxX()}static detectCodeword(e,t,r,n,i,o,s,a){let l;i=t7.adjustCodewordStartColumn(e,t,r,n,i,o);let h=t7.getModuleBitCount(e,t,r,n,i,o);if(null==h)return null;let c=ew.sum(h);if(n)l=i+c;else{for(let e=0;e<h.length/2;e++){let t=h[e];h[e]=h[h.length-1-e],h[h.length-1-e]=t}i=(l=i)-c}if(!t7.checkCodewordSkew(c,s,a))return null;let u=tJ.getDecodedValue(h),d=tx.getCodeword(u);return -1===d?null:new tq(i,l,t7.getCodewordBucketNumber(u),d)}static getModuleBitCount(e,t,r,n,i,o){let s=i,a=new Int32Array(8),l=0,h=n?1:-1,c=n;for(;(n?s<r:s>=t)&&l<a.length;)e.get(s,o)===c?(a[l]++,s+=h):(l++,c=!c);return l===a.length||s===(n?r:t)&&l===a.length-1?a:null}static getNumberOfECCodeWords(e){return 2<<e}static adjustCodewordStartColumn(e,t,r,n,i,o){let s=i,a=n?-1:1;for(let l=0;l<2;l++){for(;(n?s>=t:s<r)&&n===e.get(s,o);){if(Math.abs(i-s)>t7.CODEWORD_SKEW_SIZE)return i;s+=a}a=-a,n=!n}return s}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 V.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 B.getChecksumInstance();return t7.errorCorrection.decode(e,r,t)}static verifyCodewordCount(e,t){if(e.length<4)throw V.getFormatInstance();let r=e[0];if(r>e.length)throw V.getFormatInstance();if(0===r){if(t<e.length)e[0]=e.length-t;else throw V.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 tW;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 tG;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 V||e instanceof B)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])*tx.MODULES_IN_CODEWORD/tx.MODULES_IN_STOP_PATTERN),Math.max(t9.getMaxWidth(e[1],e[5]),t9.getMaxWidth(e[7],e[3])*tx.MODULES_IN_CODEWORD/tx.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])*tx.MODULES_IN_CODEWORD/tx.MODULES_IN_STOP_PATTERN),Math.min(t9.getMinWidth(e[1],e[5]),t9.getMinWidth(e[7],e[3])*tx.MODULES_IN_CODEWORD/tx.MODULES_IN_STOP_PATTERN)))}reset(){}}class re extends M{}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),s=[];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&&s.push(new ta(e,this.verbose)),o.includes(ei.QR_CODE)&&s.push(new tF),o.includes(ei.DATA_MATRIX)&&s.push(new tp),o.includes(ei.AZTEC)&&s.push(new eD),o.includes(ei.PDF_417)&&s.push(new t9),t&&i&&s.push(new ta(e,this.verbose))}0===s.length&&(!i&&s.push(new ta(e,this.verbose)),s.push(new tF),s.push(new tp),s.push(new eD),s.push(new t9),i&&s.push(new ta(e,this.verbose))),this.readers=s}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=y||(y={}))[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=y;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 O("No error correction bytes");let r=e.length-t;if(r<=0)throw new O("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),s=(o=o.multiplyByMonomial(t,1)).divide(n)[1].getCoefficients(),a=t-s.length;for(let t=0;t<a;t++)e[r+t]=0;P.arraycopy(s,0,e,r+a,s.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 s=r[e];o+6<n&&1===s[o]&&0===s[o+1]&&1===s[o+2]&&1===s[o+3]&&1===s[o+4]&&0===s[o+5]&&1===s[o+6]&&(ri.isWhiteHorizontal(s,o-4,o)||ri.isWhiteHorizontal(s,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 O("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,s=-1;for(let a=0;a<i;a++){let i=t?o[e][a]:o[a][e];i===s?n++:(n>=5&&(r+=ri.N1+(n-5)),n=1,s=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)x.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 W;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 rs{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 W;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<rs.NUM_MASK_PATTERNS}}rs.NUM_MASK_PATTERNS=8;class ra extends M{}ra.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],s=i[1];if(r.setBoolean(o,s,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,s=r.getHeight()-1;for(;o>0;){for(6===o&&(o-=1);s>=0&&s<r.getHeight();){for(let i=0;i<2;++i){let a;let l=o-i;if(!!rl.isEmpty(r.get(l,s)))n<e.getSize()?(a=e.get(n),++n):a=!1,255!==t&&ri.getDataMaskBit(t,l,s)&&(a=!a),r.setBoolean(l,s,a)}s+=i}s+=i=-i,o-=2}if(n!==e.getSize())throw new ra("Not all bits consumed: "+n+"/"+e.getSize())}static findMSBSet(e){return 32-k.numberOfLeadingZeros(e)}static calculateBCHCode(e,t){if(0===t)throw new O("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(!rs.isValidMaskPattern(t))throw new ra("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 ra("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 ra("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 ra;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 ra;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 ra;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 rh{constructor(e,t){this.dataBytes=e,this.errorCorrectionBytes=t}getDataBytes(){return this.dataBytes}getErrorCorrectionBytes(){return this.errorCorrectionBytes}}class rc{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=rc.DEFAULT_BYTE_MODE_ENCODING,o=null!==r&&void 0!==r.get(rr.CHARACTER_SET);o&&(i=r.get(rr.CHARACTER_SET).toString());let s=this.chooseMode(e,i),a=new U;if(s===tN.BYTE&&(o||rc.DEFAULT_BYTE_MODE_ENCODING!==i)){let e=z.getCharacterSetECIByName(i);void 0!==e&&this.appendECI(e,a)}this.appendModeInfo(s,a);let l=new U;if(this.appendBytes(e,s,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(s,a,l,n);if(!this.willFit(i,n,t))throw new ra("Data too big for requested version")}else n=this.recommendVersion(t,s,a,l);let h=new U;h.appendBitArray(a);let c=s===tN.BYTE?l.getSizeInBytes():e.length;this.appendLengthInfo(c,n,s,h),h.appendBitArray(l);let u=n.getECBlocksForLevel(t),d=n.getTotalCodewords()-u.getTotalECCodewords();this.terminateBits(d,h);let f=this.interleaveWithECBytes(h,n.getTotalCodewords(),d,u.getNumBlocks()),g=new rs;g.setECLevel(t),g.setMode(s),g.setVersion(n);let w=n.getDimensionForVersion(),m=new ro(w,w),p=this.chooseMaskPattern(f,t,n,m);return g.setMaskPattern(p),rl.buildMatrix(f,t,n,p,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),s=this.calculateBitsNeeded(t,r,n,o);return this.chooseVersion(s,e)}static calculateBitsNeeded(e,t,r,n){return t.getSize()+e.getCharacterCountBits(n)+r.getSize()}static getAlphanumericCode(e){return e<rc.ALPHANUMERIC_TABLE.length?rc.ALPHANUMERIC_TABLE[e]:-1}static chooseMode(e,t=null){if(z.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(rc.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=Y.encode(e,z.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 s=0;s<rs.NUM_MASK_PATTERNS;s++){rl.buildMatrix(e,t,r,s,n);let a=this.calculateMaskPenalty(n);a<i&&(i=a,o=s)}return o}static chooseVersion(e,t){for(let r=1;r<=40;r++){let n=tS.getVersionForNumber(r);if(rc.willFit(e,n,t))return n}throw new ra("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 ra("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 ra("Bits size does not equal capacity")}static getNumDataBytesAndNumECBytesForBlockID(e,t,r,n,i,o){if(n>=r)throw new ra("Block ID too large");let s=e%r,a=r-s,l=Math.floor(e/r),h=Math.floor(t/r),c=h+1,u=l-h,d=l+1-c;if(u!==d)throw new ra("EC bytes mismatch");if(r!==a+s)throw new ra("RS blocks mismatch");if(e!==(h+u)*a+(c+d)*s)throw new ra("Total bytes mismatch");n<a?(i[0]=h,o[0]=u):(i[0]=c,o[0]=d)}static interleaveWithECBytes(e,t,r,n){if(e.getSizeInBytes()!==r)throw new ra("Number of bits and data bytes does not match");let i=0,o=0,s=0,a=[];for(let l=0;l<n;++l){let h=new Int32Array(1),c=new Int32Array(1);rc.getNumDataBytesAndNumECBytesForBlockID(t,r,n,l,h,c);let u=h[0],d=new Uint8Array(u);e.toBytes(8*i,d,0,u);let f=rc.generateECBytes(d,c[0]);a.push(new rh(d,f)),o=Math.max(o,u),s=Math.max(s,f.length),i+=h[0]}if(r!==i)throw new ra("Data bytes does not match offset");let l=new U;for(let e=0;e<o;++e)for(let t of a){let r=t.getDataBytes();e<r.length&&l.appendBits(r[e],8)}for(let e=0;e<s;++e)for(let t of a){let r=t.getErrorCorrectionBytes();e<r.length&&l.appendBits(r[e],8)}if(t!==l.getSizeInBytes())throw new ra("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(ec.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 ra(e+" is bigger than "+((1<<i)-1));n.appendBits(e,i)}static appendBytes(e,t,r,n){switch(t){case tN.NUMERIC:rc.appendNumericBytes(e,r);break;case tN.ALPHANUMERIC:rc.appendAlphanumericBytes(e,r);break;case tN.BYTE:rc.append8BitBytes(e,r,n);break;case tN.KANJI:rc.appendKanjiBytes(e,r);break;default:throw new ra("Invalid mode: "+t)}}static getDigit(e){return e.charCodeAt(0)-48}static isDigit(e){let t=rc.getDigit(e);return t>=0&&t<=9}static appendNumericBytes(e,t){let r=e.length,n=0;for(;n<r;){let i=rc.getDigit(e.charAt(n));if(n+2<r){let r=rc.getDigit(e.charAt(n+1)),o=rc.getDigit(e.charAt(n+2));t.appendBits(100*i+10*r+o,10),n+=3}else if(n+1<r){let r=rc.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=rc.getAlphanumericCode(e.charCodeAt(n));if(-1===i)throw new ra;if(n+1<r){let r=rc.getAlphanumericCode(e.charCodeAt(n+1));if(-1===r)throw new ra;t.appendBits(45*i+r,11),n+=2}else t.appendBits(i,6),n++}}static append8BitBytes(e,t,r){let n;try{n=Y.encode(e,r)}catch(e){throw new ra(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=Y.encode(e,z.SJIS)}catch(e){throw new ra(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 ra("Invalid byte sequence");let s=(o>>8)*192+(255&o);t.appendBits(s,13)}}static appendECI(e,t){t.appendBits(tN.ECI.getBits(),4),t.appendBits(e.getValue(),8)}}rc.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]),rc.DEFAULT_BYTE_MODE_ENCODING=z.UTF8.getName();class ru{write(e,t,r,n=null){if(0===e.length)throw new O("Found empty contents");if(t<0||r<0)throw new O("Requested dimensions are too small: "+t+"x"+r);let i=tA.L,o=ru.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 s=rc.encode(e,i,n);return this.renderResult(s,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(),s=i.getHeight(),a=o+2*n,l=s+2*n,h=Math.max(t,a),c=Math.max(r,l),u=Math.min(Math.floor(h/a),Math.floor(c/l)),d=Math.floor((h-o*u)/2),f=Math.floor((c-s*u)/2),g=this.createSVGElement(h,c);for(let e=0,t=f;e<s;e++,t+=u)for(let r=0,n=d;r<o;r++,n+=u)if(1===i.get(r,e)){let e=this.createSvgRectElement(n,t,u,u);g.appendChild(e)}return g}createSVGElement(e,t){let r=document.createElementNS(ru.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(ru.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}}ru.QUIET_ZONE_SIZE=4,ru.SVG_NS="http://www.w3.org/2000/svg";class rd{encode(e,t,r,n,i){if(0===e.length)throw new O("Found empty contents");if(t!==ei.QR_CODE)throw new O("Can only encode QR_CODE, but got "+t);if(r<0||n<0)throw new O(`Requested dimensions are too small: ${r}x${n}`);let o=tA.L,s=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)&&(s=Number.parseInt(i.get(rr.MARGIN).toString(),10)));let a=rc.encode(e,o,i);return rd.renderResult(a,r,n,s)}static renderResult(e,t,r,n){let i=e.getMatrix();if(null===i)throw new ed;let o=i.getWidth(),s=i.getHeight(),a=o+2*n,l=s+2*n,h=Math.max(t,a),c=Math.max(r,l),u=Math.min(Math.floor(h/a),Math.floor(c/l)),d=Math.floor((h-o*u)/2),f=Math.floor((c-s*u)/2),g=new j(h,c);for(let e=0,t=f;e<s;e++,t+=u)for(let r=0,n=d;r<o;r++,n+=u)1===i.get(r,e)&&g.setRegion(n,t,u,u);return g}}rd.QUIET_ZONE_SIZE=4;class rf extends q{constructor(e,t,r,n,i,o,s,a){if(super(o,s),this.yuvData=e,this.dataWidth=t,this.dataHeight=r,this.left=n,this.top=i,n+o>t||i+s>r)throw new O("Crop rectangle does not fit within image data.");a&&this.reverseHorizontal(o,s)}getRow(e,t){if(e<0||e>=this.getHeight())throw new O("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 q{constructor(e,t,r,n,i,o,s){if(super(t,r),this.dataWidth=n,this.dataHeight=i,this.left=o,this.top=s,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,s=255&r;i[t]=(n+o+s)/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===s&&(this.top=0),this.left+t>this.dataWidth||this.top+r>this.dataHeight)throw new O("Crop rectangle does not fit within image data.")}getRow(e,t){if(e<0||e>=this.getHeight())throw new O("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 rw extends z{static forName(e){return this.getCharacterSetECIByName(e)}}class rm{}rm.ISO_8859_1=z.ISO8859_1;class rp{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 r_=["UPPER","LOWER","DIGIT","MIXED","PUNCT"],rT=new rE(null,0,0),ry=[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)x.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}(x.createInt32Array(6,6));class rD{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=ry[this.mode][e];n=rS(n,65535&t,t>>16),r+=t>>16}let i=2===e?4:5;return new rD(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 rD(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=ry[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 rD(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 rD(n=new rI(t,r,this.binaryShiftByteCount),this.mode,0,this.bitCount)}isBetterThanOrEqualTo(e){let t=this.bitCount+(ry[this.mode][e.mode]>>16);return this.binaryShiftByteCount<e.binaryShiftByteCount?t+=rD.calculateBinaryShiftCost(e)-rD.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 X.format("%s bits=%d bytes=%d",r_[this.mode],this.bitCount,this.binaryShiftByteCount)}static calculateBinaryShiftCost(e){return e.binaryShiftByteCount>62?21:e.binaryShiftByteCount>31?20:e.binaryShiftByteCount>0?10:0}}rD.INITIAL_STATE=new rD(rT,0,0,0);let rM=function(e){let t=X.getCharCode(" "),r=X.getCharCode("."),n=X.getCharCode(",");e[0][t]=1;let i=X.getCharCode("Z"),o=X.getCharCode("A");for(let t=o;t<=i;t++)e[0][t]=t-o+2;e[1][t]=1;let s=X.getCharCode("z"),a=X.getCharCode("a");for(let t=a;t<=s;t++)e[1][t]=t-a+2;e[2][t]=1;let l=X.getCharCode("9"),h=X.getCharCode("0");for(let t=h;t<=l;t++)e[2][t]=t-h+2;e[2][n]=12,e[2][r]=13;let c=["\0"," ","\x01","\x02","\x03","\x04","\x05","\x06","\x07","\b"," ","\n","\v","\f","\r","\x1b","\x1c","\x1d","\x1e","\x1f","@","\\","^","_","`","|","~","\x7f"];for(let t=0;t<c.length;t++)e[3][X.getCharCode(c[t])]=t;let u=["\0","\r","\0","\0","\0","\0","!","'","#","$","%","&","'","(",")","*","+",",","-",".","/",":",";","<","=",">","?","[","]","{","}"];for(let t=0;t<u.length;t++)X.getCharCode(u[t])>0&&(e[4][X.getCharCode(u[t])]=t);return e}(x.createInt32Array(5,256));class rR{constructor(e){this.text=e}encode(){let e=X.getCharCode(" "),t=X.getCharCode("\n"),r=rA.singletonList(rD.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 X.getCharCode("\r"):i=o===t?2:0;break;case X.getCharCode("."):i=o===e?3:0;break;case X.getCharCode(","):i=o===e?4:0;break;case X.getCharCode(":"):i=o===e?5:0;break;default:i=0}i>0?(r=rR.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 rR.simplifyStates(r)}updateStateForChar(e,t,r){let n=255&this.text[t],i=rM[e.getMode()][n]>0,o=null;for(let s=0;s<=4;s++){let a=rM[s][n];if(a>0){if(null==o&&(o=e.endBinaryShift(t)),!i||s===e.getMode()||2===s){let e=o.latchAndAppend(s,a);r.push(e)}if(!i&&rN[e.getMode()][s]>=0){let e=o.shiftAndAppend(s,a);r.push(e)}}}if(e.getBinaryShiftByteCount()>0||0===rM[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 rO{constructor(){}static encodeBytes(e){return rO.encode(e,rO.DEFAULT_EC_PERCENT,rO.DEFAULT_AZTEC_LAYERS)}static encode(e,t,r){let n,i,o,s,a,l,h=new rR(e).encode(),c=k.truncDivision(h.getSize()*t,100)+11,u=h.getSize()+c;if(r!==rO.DEFAULT_AZTEC_LAYERS){if(n=r<0,(i=Math.abs(r))>(n?rO.MAX_NB_BITS_COMPACT:rO.MAX_NB_BITS))throw new O(X.format("Illegal value %s for layers",r));o=rO.totalBitsInLayer(i,n);let e=o-o%(s=rO.WORD_SIZE[i]);if((a=rO.stuffBits(h,s)).getSize()+c>e||n&&a.getSize()>64*s)throw new O("Data to large for user specified layer")}else{s=0,a=null;for(let e=0;;e++){if(e>rO.MAX_NB_BITS)throw new O("Data too large for an Aztec code");if(i=(n=e<=3)?e+1:e,u>(o=rO.totalBitsInLayer(i,n)))continue;(null==a||s!==rO.WORD_SIZE[i])&&(s=rO.WORD_SIZE[i],a=rO.stuffBits(h,s));let t=o-o%s;if(!(n&&a.getSize()>64*s)){if(a.getSize()+c<=t)break}}}let d=rO.generateCheckWords(a,o,s),f=a.getSize()/s,g=rO.generateModeMessage(n,i,f),w=(n?11:14)+4*i,m=new Int32Array(w);if(n){l=w;for(let e=0;e<m.length;e++)m[e]=e}else{l=w+1+2*k.truncDivision(k.truncDivision(w,2)-1,15);let e=k.truncDivision(w,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 p=new j(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)&&p.set(m[2*e+o],m[2*e+n]),d.get(t+2*r+i+o)&&p.set(m[2*e+n],m[w-1-2*e-o]),d.get(t+4*r+i+o)&&p.set(m[w-1-2*e-o],m[w-1-2*e-n]),d.get(t+6*r+i+o)&&p.set(m[w-1-2*e-n],m[2*e+o])}t+=8*r}if(rO.drawModeMessage(p,n,l,g),n)rO.drawBullsEye(p,k.truncDivision(l,2),5);else{rO.drawBullsEye(p,k.truncDivision(l,2),7);for(let e=0,t=0;e<k.truncDivision(w,2)-1;e+=15,t+=16)for(let e=1&k.truncDivision(l,2);e<l;e+=2)p.set(k.truncDivision(l,2)-t,e),p.set(k.truncDivision(l,2)+t,e),p.set(e,k.truncDivision(l,2)-t),p.set(e,k.truncDivision(l,2)+t)}let A=new rp;return A.setCompact(n),A.setSize(l),A.setLayers(i),A.setCodeWords(f),A.setMatrix(p),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=rO.generateCheckWords(n,28,4)):(n.appendBits(t-1,5),n.appendBits(r-1,11),n=rO.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(rO.getGF(r)),o=k.truncDivision(t,r),s=rO.bitsToWords(e,r,o);i.encode(s,o-n);let a=t%r,l=new U;for(let e of(l.appendBits(0,a),Array.from(s)))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 ec.AZTEC_PARAM;case 6:return ec.AZTEC_DATA_6;case 8:return ec.AZTEC_DATA_8;case 10:return ec.AZTEC_DATA_10;case 12:return ec.AZTEC_DATA_12;default:throw new O("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 s=0;for(let r=0;r<t;r++)(o+r>=n||e.get(o+r))&&(s|=1<<t-1-r);(s&i)===i?(r.appendBits(s&i,t),o--):(s&i)==0?(r.appendBits(1|s,t),o--):r.appendBits(s,t)}return r}static totalBitsInLayer(e,t){return((t?88:112)+16*e)*e}}rO.DEFAULT_EC_PERCENT=33,rO.DEFAULT_AZTEC_LAYERS=0,rO.MAX_NB_BITS=32,rO.MAX_NB_BITS_COMPACT=4,rO.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 rb{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,s=rO.DEFAULT_EC_PERCENT,a=rO.DEFAULT_AZTEC_LAYERS;return null!=i&&(i.has(rr.CHARACTER_SET)&&(o=rw.forName(i.get(rr.CHARACTER_SET).toString())),i.has(rr.ERROR_CORRECTION)&&(s=k.parseInt(i.get(rr.ERROR_CORRECTION).toString())),i.has(rr.AZTEC_LAYERS)&&(a=k.parseInt(i.get(rr.AZTEC_LAYERS).toString()))),rb.encodeLayers(e,t,r,n,o,s,a)}static encodeLayers(e,t,r,n,i,o,s){if(t!==ei.AZTEC)throw new O("Can only encode AZTEC, but got "+t);let a=rO.encode(X.getBytes(e,i),o,s);return rb.renderResult(a,r,n)}static renderResult(e,t,r){let n=e.getMatrix();if(null==n)throw new ed;let i=n.getWidth(),o=n.getHeight(),s=Math.max(t,i),a=Math.max(r,o),l=Math.min(s/i,a/o),h=(s-i*l)/2,c=(a-o*l)/2,u=new j(s,a);for(let e=0,t=c;e<o;e++,t+=l)for(let r=0,o=h;r<i;r++,o+=l)n.get(r,e)&&u.setRegion(o,t,l,l);return u}}e.AbstractExpandedDecoder=e1,e.ArgumentException=R,e.ArithmeticException=eh,e.AztecCode=rp,e.AztecCodeReader=eD,e.AztecCodeWriter=rb,e.AztecDecoder=eg,e.AztecDetector=eN,e.AztecDetectorResult=eC,e.AztecEncoder=rO,e.AztecHighLevelEncoder=rR,e.AztecPoint=ey,e.BarcodeFormat=ei,e.Binarizer=L,e.BinaryBitmap=b,e.BitArray=U,e.BitMatrix=j,e.BitSource=tf,e.BrowserAztecCodeReader=class e extends er{constructor(e=500){super(new eD,e)}},e.BrowserBarcodeReader=class e extends er{constructor(e=500,t){super(new ta(t),e,t)}},e.BrowserCodeReader=er,e.BrowserDatamatrixCodeReader=class e extends er{constructor(e=500){super(new tp,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 tF,e)}},e.BrowserQRCodeSvgWriter=ru,e.CharacterSetECI=z,e.ChecksumException=B,e.Code128Reader=eR,e.Code39Reader=eO,e.DataMatrixDecodedBitStreamParser=tg,e.DataMatrixReader=tp,e.DecodeHintType=H,e.DecoderResult=es,e.DefaultGridSampler=e_,e.DetectorResult=eA,e.EAN13Reader=ex,e.EncodeHintType=rr,e.Exception=M,e.FormatException=V,e.GenericGF=ec,e.GenericGFPoly=el,e.GlobalHistogramBinarizer=Q,e.GridSampler=eI,e.GridSamplerInstance=eT,e.HTMLCanvasElementLuminanceSource=$,e.HybridBinarizer=K,e.ITFReader=eb,e.IllegalArgumentException=O,e.IllegalStateException=ed,e.InvertedLuminanceSource=J,e.LuminanceSource=q,e.MathUtils=ew,e.MultiFormatOneDReader=ta,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 O("No encoder available for format "+t);return o.encode(e,t,r,n,i)}},e.NotFoundException=Z,e.OneDReader=eM,e.PDF417DecodedBitStreamParser=t5,e.PDF417DecoderErrorCorrection=tG,e.PDF417Reader=t9,e.PDF417ResultMetadata=t$,e.PerspectiveTransform=eS,e.PlanarYUVLuminanceSource=rf,e.QRCodeByteMatrix=ro,e.QRCodeDataMask=t_,e.QRCodeDecodedBitStreamParser=tD,e.QRCodeDecoderErrorCorrectionLevel=tA,e.QRCodeDecoderFormatInformation=tC,e.QRCodeEncoder=rc,e.QRCodeEncoderQRCode=rs,e.QRCodeMaskUtil=ri,e.QRCodeMatrixUtil=rl,e.QRCodeMode=tN,e.QRCodeReader=tF,e.QRCodeVersion=tS,e.QRCodeWriter=rd,e.RGBLuminanceSource=rg,e.RSS14Reader=ts,e.RSSExpandedReader=ti,e.ReaderException=re,e.ReedSolomonDecoder=ef,e.ReedSolomonEncoder=rn,e.ReedSolomonException=eu,e.Result=en,e.ResultMetadataType=eo,e.ResultPoint=ep,e.StringUtils=X,e.UnsupportedOperationException=G,e.VideoInputDevice=ee,e.WhiteRectangleDetector=eE,e.WriterException=ra,e.ZXingArrays=x,e.ZXingCharset=rw,e.ZXingInteger=k,e.ZXingStandardCharsets=rm,e.ZXingStringBuilder=W,e.ZXingStringEncoding=Y,e.ZXingSystem=P,e.createAbstractExpandedDecoder=tt,Object.defineProperty(e,"__esModule",{value:!0})}(t)}}]);
|