idmission-web-sdk 1.0.12 → 1.0.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/fallback_flows/IdCapture.d.ts +24 -0
- package/dist/components/id_capture/IdCaptureModelsProvider.d.ts +2 -0
- package/dist/sdk2.cjs.development.js +187 -77
- package/dist/sdk2.cjs.development.js.map +1 -1
- package/dist/sdk2.cjs.production.js +1 -1
- package/dist/sdk2.cjs.production.js.map +1 -1
- package/dist/sdk2.esm.js +187 -77
- package/dist/sdk2.esm.js.map +1 -1
- package/dist/sdk2.umd.development.js +187 -77
- package/dist/sdk2.umd.development.js.map +1 -1
- package/dist/sdk2.umd.production.js +1 -1
- package/dist/sdk2.umd.production.js.map +1 -1
- package/dist/stories/FallbackFlows/IdCapture.stories.d.ts +8 -0
- package/dist/version.d.ts +1 -1
- package/package.json +1 -1
|
@@ -3087,7 +3087,7 @@
|
|
|
3087
3087
|
}();
|
|
3088
3088
|
Browser.type = 'languageDetector';
|
|
3089
3089
|
|
|
3090
|
-
var webSdkVersion = '1.0.
|
|
3090
|
+
var webSdkVersion = '1.0.13';
|
|
3091
3091
|
|
|
3092
3092
|
function getPlatform() {
|
|
3093
3093
|
return window.platform;
|
|
@@ -11996,23 +11996,6 @@
|
|
|
11996
11996
|
return canvas;
|
|
11997
11997
|
}
|
|
11998
11998
|
|
|
11999
|
-
var ModelLoadingErrorOverlay = function ModelLoadingErrorOverlay(_a) {
|
|
12000
|
-
var error = _a.error;
|
|
12001
|
-
return /*#__PURE__*/React__default['default'].createElement(OverlayContainer, null, /*#__PURE__*/React__default['default'].createElement(OverlayInner, {
|
|
12002
|
-
style: {
|
|
12003
|
-
justifyContent: 'center'
|
|
12004
|
-
}
|
|
12005
|
-
}, /*#__PURE__*/React__default['default'].createElement("h3", {
|
|
12006
|
-
style: {
|
|
12007
|
-
marginBottom: 8
|
|
12008
|
-
}
|
|
12009
|
-
}, "We're sorry, an unexpected error has occurred."), /*#__PURE__*/React__default['default'].createElement("p", {
|
|
12010
|
-
style: {
|
|
12011
|
-
marginBottom: 0
|
|
12012
|
-
}
|
|
12013
|
-
}, /*#__PURE__*/React__default['default'].createElement("code", null, error.message))));
|
|
12014
|
-
};
|
|
12015
|
-
|
|
12016
11999
|
var PREDICTION_POSITIONS = {
|
|
12017
12000
|
boxes: 0,
|
|
12018
12001
|
scores: 7,
|
|
@@ -12023,6 +12006,7 @@
|
|
|
12023
12006
|
working: {
|
|
12024
12007
|
current: false
|
|
12025
12008
|
},
|
|
12009
|
+
error: null,
|
|
12026
12010
|
thresholds: {},
|
|
12027
12011
|
setThresholds: function setThresholds() {
|
|
12028
12012
|
return null;
|
|
@@ -12129,13 +12113,11 @@
|
|
|
12129
12113
|
});
|
|
12130
12114
|
});
|
|
12131
12115
|
}
|
|
12132
|
-
|
|
12133
|
-
|
|
12134
|
-
|
|
12135
|
-
});
|
|
12136
|
-
} catch (e) {
|
|
12116
|
+
loadModels().then(function () {
|
|
12117
|
+
setReady(true);
|
|
12118
|
+
})["catch"](function (e) {
|
|
12137
12119
|
setLoadingError(e);
|
|
12138
|
-
}
|
|
12120
|
+
});
|
|
12139
12121
|
var webGLCanvas = getWebGLContext(2).canvas;
|
|
12140
12122
|
webGLCanvas.addEventListener('webglcontextlost', reloadModels);
|
|
12141
12123
|
return function () {
|
|
@@ -12159,6 +12141,9 @@
|
|
|
12159
12141
|
if (thresholds.pdf417) setPdf417DetectionThreshold(thresholds.pdf417);
|
|
12160
12142
|
if (thresholds.focus) setFocusThreshold(thresholds.focus);
|
|
12161
12143
|
}, []);
|
|
12144
|
+
var _m = React.useState(0),
|
|
12145
|
+
timesAllZero = _m[0],
|
|
12146
|
+
setTimesAllZero = _m[1];
|
|
12162
12147
|
var bestPredictionCanvas = React.useRef(null);
|
|
12163
12148
|
var bestFocusScore = React.useRef(0);
|
|
12164
12149
|
var makePrediction = React.useCallback(function (frame) {
|
|
@@ -12180,6 +12165,9 @@
|
|
|
12180
12165
|
bestFocusScore.current = prediction.focusScore;
|
|
12181
12166
|
drawToCanvas(bestPredictionCanvas.current, frame);
|
|
12182
12167
|
}
|
|
12168
|
+
if (prediction.allZero) setTimesAllZero(function (n) {
|
|
12169
|
+
return n + 1;
|
|
12170
|
+
});
|
|
12183
12171
|
(_a = onPredictionHandler.current) === null || _a === void 0 ? void 0 : _a.call(onPredictionHandler, prediction);
|
|
12184
12172
|
working.current = false;
|
|
12185
12173
|
return [2];
|
|
@@ -12188,6 +12176,11 @@
|
|
|
12188
12176
|
});
|
|
12189
12177
|
})();
|
|
12190
12178
|
}, [logPredictions, thresholds]);
|
|
12179
|
+
React.useEffect(function () {
|
|
12180
|
+
if (timesAllZero >= 2) {
|
|
12181
|
+
setLoadingError(new Error('model is returning all zeroes'));
|
|
12182
|
+
}
|
|
12183
|
+
}, [timesAllZero]);
|
|
12191
12184
|
var onPredictionMade = React.useCallback(function (handler) {
|
|
12192
12185
|
onPredictionHandler.current = handler;
|
|
12193
12186
|
}, []);
|
|
@@ -12224,14 +12217,13 @@
|
|
|
12224
12217
|
detectionTime: detectionTime,
|
|
12225
12218
|
focusPredictionTime: focusPredictionTime,
|
|
12226
12219
|
getBestFrame: getBestFrame,
|
|
12227
|
-
resetBestFrame: resetBestFrame
|
|
12220
|
+
resetBestFrame: resetBestFrame,
|
|
12221
|
+
error: loadingError
|
|
12228
12222
|
};
|
|
12229
|
-
}, [detectionTime, focusPredictionTime, getBestFrame, makePrediction, onPredictionMade, ready, resetBestFrame, setThresholds, thresholds]);
|
|
12223
|
+
}, [detectionTime, focusPredictionTime, getBestFrame, loadingError, makePrediction, onPredictionMade, ready, resetBestFrame, setThresholds, thresholds]);
|
|
12230
12224
|
return /*#__PURE__*/React__default['default'].createElement(IdCaptureModelsContext.Provider, {
|
|
12231
12225
|
value: value
|
|
12232
|
-
},
|
|
12233
|
-
error: loadingError
|
|
12234
|
-
}) : children, /*#__PURE__*/React__default['default'].createElement(InvisibleCanvas, {
|
|
12226
|
+
}, children, /*#__PURE__*/React__default['default'].createElement(InvisibleCanvas, {
|
|
12235
12227
|
ref: lastPredictionCanvas
|
|
12236
12228
|
}), /*#__PURE__*/React__default['default'].createElement(InvisibleCanvas, {
|
|
12237
12229
|
ref: bestPredictionCanvas
|
|
@@ -12243,7 +12235,7 @@
|
|
|
12243
12235
|
logPredictions = false;
|
|
12244
12236
|
}
|
|
12245
12237
|
return __awaiter(this, void 0, void 0, function () {
|
|
12246
|
-
var _l, frameWidth, frameHeight, _o, boxes, scores, labels, time, detectedObjects, bestDocument, bestPassportPage, bestDocumentScore, passportDetectionScore, passportDetectionThresholdMet, bestDocumentOrPassport, detectionScore, detectionThresholdMet, detectedDocumentType, bestMrz, mrzDetectionScore, mrzDetectionThresholdMet, bestPdf417, pdf417DetectionScore, pdf417DetectionThresholdMet, focusPrediction, focusPredictionTime, focusScore, focusThresholdMet;
|
|
12238
|
+
var _l, frameWidth, frameHeight, _o, boxes, scores, labels, time, allZero, detectedObjects, bestDocument, bestPassportPage, bestDocumentScore, passportDetectionScore, passportDetectionThresholdMet, bestDocumentOrPassport, detectionScore, detectionThresholdMet, detectedDocumentType, bestMrz, mrzDetectionScore, mrzDetectionThresholdMet, bestPdf417, pdf417DetectionScore, pdf417DetectionThresholdMet, focusPrediction, focusPredictionTime, focusScore, focusThresholdMet;
|
|
12247
12239
|
var _p;
|
|
12248
12240
|
return __generator(this, function (_q) {
|
|
12249
12241
|
switch (_q.label) {
|
|
@@ -12253,6 +12245,11 @@
|
|
|
12253
12245
|
return [4, makeDocumentDetectionPredictions(frame, logPredictions)];
|
|
12254
12246
|
case 1:
|
|
12255
12247
|
_o = _q.sent(), boxes = _o.boxes, scores = _o.scores, labels = _o.labels, time = _o.time;
|
|
12248
|
+
allZero = boxes.length > 0 && !boxes.some(function (box) {
|
|
12249
|
+
return box.some(function (n) {
|
|
12250
|
+
return n > 0;
|
|
12251
|
+
});
|
|
12252
|
+
});
|
|
12256
12253
|
detectedObjects = applyNonMaxSuppression(boxes.map(function (box, i) {
|
|
12257
12254
|
return bboxToDetectedObjectUnscaled(box, scores[i], labels[i]);
|
|
12258
12255
|
}));
|
|
@@ -12312,7 +12309,8 @@
|
|
|
12312
12309
|
focusThresholdMet: focusThresholdMet,
|
|
12313
12310
|
focusPredictionTime: focusPredictionTime,
|
|
12314
12311
|
frameWidth: frameWidth,
|
|
12315
|
-
frameHeight: frameHeight
|
|
12312
|
+
frameHeight: frameHeight,
|
|
12313
|
+
allZero: allZero
|
|
12316
12314
|
}];
|
|
12317
12315
|
}
|
|
12318
12316
|
});
|
|
@@ -13750,6 +13748,101 @@
|
|
|
13750
13748
|
return !skipSuccessScreen || skipSuccessScreenResolvedFalse;
|
|
13751
13749
|
}
|
|
13752
13750
|
|
|
13751
|
+
var IdCaptureFallback = function IdCaptureFallback(_a) {
|
|
13752
|
+
var onCapture = _a.onCapture,
|
|
13753
|
+
onFinished = _a.onFinished,
|
|
13754
|
+
_b = _a.colors,
|
|
13755
|
+
colors = _b === void 0 ? {} : _b,
|
|
13756
|
+
_c = _a.verbiage,
|
|
13757
|
+
rawVerbiage = _c === void 0 ? {} : _c;
|
|
13758
|
+
var fileInput = React.useRef(null);
|
|
13759
|
+
var _d = React.useState([]),
|
|
13760
|
+
images = _d[0],
|
|
13761
|
+
setImages = _d[1];
|
|
13762
|
+
colors.captureMoreBtn || (colors.captureMoreBtn = {
|
|
13763
|
+
backgroundColor: '#666'
|
|
13764
|
+
});
|
|
13765
|
+
var verbiage = useTranslations(rawVerbiage, {
|
|
13766
|
+
headingText: "We're having some trouble.",
|
|
13767
|
+
descriptionText: 'On-device capture guidance failed, please capture photos of your ID card or passport manually.',
|
|
13768
|
+
firstInstructionText: 'Please capture the front of your ID card, or the ID page of your passport.',
|
|
13769
|
+
secondInstructionText: 'Please capture the back of your ID card, or click Done if submitting a passport.',
|
|
13770
|
+
captureBtnText: 'Capture',
|
|
13771
|
+
captureMoreBtnText: 'Capture back of ID Card',
|
|
13772
|
+
doneBtnText: 'Done'
|
|
13773
|
+
});
|
|
13774
|
+
return /*#__PURE__*/React__default['default'].createElement(OverlayContainer, null, /*#__PURE__*/React__default['default'].createElement(OverlayInner, {
|
|
13775
|
+
style: {
|
|
13776
|
+
justifyContent: 'center'
|
|
13777
|
+
}
|
|
13778
|
+
}, /*#__PURE__*/React__default['default'].createElement("h3", {
|
|
13779
|
+
style: {
|
|
13780
|
+
marginBottom: 8
|
|
13781
|
+
}
|
|
13782
|
+
}, verbiage.headingText), /*#__PURE__*/React__default['default'].createElement("p", {
|
|
13783
|
+
style: {
|
|
13784
|
+
marginBottom: 8
|
|
13785
|
+
}
|
|
13786
|
+
}, verbiage.descriptionText), images.length > 0 && /*#__PURE__*/React__default['default'].createElement(OverlayImageMultiContainer, null, images.map(function (image, i) {
|
|
13787
|
+
return /*#__PURE__*/React__default['default'].createElement("div", {
|
|
13788
|
+
key: i,
|
|
13789
|
+
style: {
|
|
13790
|
+
display: 'flex',
|
|
13791
|
+
justifyContent: 'center',
|
|
13792
|
+
flexGrow: 1,
|
|
13793
|
+
flexBasis: 0
|
|
13794
|
+
}
|
|
13795
|
+
}, /*#__PURE__*/React__default['default'].createElement("img", {
|
|
13796
|
+
src: image,
|
|
13797
|
+
alt: ""
|
|
13798
|
+
}));
|
|
13799
|
+
})), images.length < 2 && /*#__PURE__*/React__default['default'].createElement("p", {
|
|
13800
|
+
style: {
|
|
13801
|
+
fontWeight: 'bold'
|
|
13802
|
+
}
|
|
13803
|
+
}, images.length === 0 ? verbiage.firstInstructionText : verbiage.secondInstructionText), /*#__PURE__*/React__default['default'].createElement("input", {
|
|
13804
|
+
ref: fileInput,
|
|
13805
|
+
type: "file",
|
|
13806
|
+
accept: "image/*",
|
|
13807
|
+
hidden: true,
|
|
13808
|
+
onChange: function onChange(e) {
|
|
13809
|
+
var _a;
|
|
13810
|
+
var file = (_a = e.target.files) === null || _a === void 0 ? void 0 : _a[0];
|
|
13811
|
+
if (!file) return;
|
|
13812
|
+
var reader = new FileReader();
|
|
13813
|
+
reader.addEventListener('load', function (e) {
|
|
13814
|
+
var _a;
|
|
13815
|
+
var imageData = (_a = e.target) === null || _a === void 0 ? void 0 : _a.result;
|
|
13816
|
+
setImages(function (images) {
|
|
13817
|
+
return __spreadArray(__spreadArray([], images, true), [imageData], false);
|
|
13818
|
+
});
|
|
13819
|
+
onCapture === null || onCapture === void 0 ? void 0 : onCapture(imageData);
|
|
13820
|
+
});
|
|
13821
|
+
reader.readAsDataURL(file);
|
|
13822
|
+
}
|
|
13823
|
+
}), /*#__PURE__*/React__default['default'].createElement("div", {
|
|
13824
|
+
style: {
|
|
13825
|
+
marginTop: 32
|
|
13826
|
+
}
|
|
13827
|
+
}, images.length < 2 && /*#__PURE__*/React__default['default'].createElement(LoaderButton, {
|
|
13828
|
+
colors: images.length > 0 ? colors.captureMoreBtn : colors.captureBtn,
|
|
13829
|
+
finished: true,
|
|
13830
|
+
onClick: function onClick() {
|
|
13831
|
+
var _a;
|
|
13832
|
+
(_a = fileInput.current) === null || _a === void 0 ? void 0 : _a.click();
|
|
13833
|
+
}
|
|
13834
|
+
}, images.length > 0 ? verbiage.captureMoreBtnText : verbiage.captureBtnText), images.length > 0 && /*#__PURE__*/React__default['default'].createElement(LoaderButton, {
|
|
13835
|
+
colors: colors.doneBtn,
|
|
13836
|
+
finished: true,
|
|
13837
|
+
onClick: function onClick() {
|
|
13838
|
+
onFinished === null || onFinished === void 0 ? void 0 : onFinished(images);
|
|
13839
|
+
},
|
|
13840
|
+
style: {
|
|
13841
|
+
marginLeft: 12
|
|
13842
|
+
}
|
|
13843
|
+
}, verbiage.doneBtnText))));
|
|
13844
|
+
};
|
|
13845
|
+
|
|
13753
13846
|
var CaptureState;
|
|
13754
13847
|
(function (CaptureState) {
|
|
13755
13848
|
CaptureState["CAPTURING"] = "CAPTURING";
|
|
@@ -13801,6 +13894,22 @@
|
|
|
13801
13894
|
}
|
|
13802
13895
|
return newState;
|
|
13803
13896
|
}
|
|
13897
|
+
case 'imageCapturedManually':
|
|
13898
|
+
{
|
|
13899
|
+
var newState = __assign$1({}, state);
|
|
13900
|
+
var capturedDocument = __assign$1(__assign$1({}, action.payload), {
|
|
13901
|
+
width: 0,
|
|
13902
|
+
height: 0
|
|
13903
|
+
});
|
|
13904
|
+
if (Object.keys(state.capturedDocuments).length === 0) {
|
|
13905
|
+
newState.capturedDocuments[DocumentType.PASSPORT] = capturedDocument;
|
|
13906
|
+
} else {
|
|
13907
|
+
newState.capturedDocuments = {};
|
|
13908
|
+
newState.capturedDocuments[DocumentType.ID_CARD_FRONT] = state.capturedDocuments[DocumentType.PASSPORT];
|
|
13909
|
+
newState.capturedDocuments[DocumentType.ID_CARD_BACK] = capturedDocument;
|
|
13910
|
+
}
|
|
13911
|
+
return newState;
|
|
13912
|
+
}
|
|
13804
13913
|
case 'reset':
|
|
13805
13914
|
return __assign$1({}, initialState$4);
|
|
13806
13915
|
}
|
|
@@ -13851,6 +13960,7 @@
|
|
|
13851
13960
|
setPassportImage = _3.setPassportImage,
|
|
13852
13961
|
logIdFrontCaptureAttempt = _3.logIdFrontCaptureAttempt,
|
|
13853
13962
|
logIdBackCaptureAttempt = _3.logIdBackCaptureAttempt;
|
|
13963
|
+
var modelsError = React.useContext(IdCaptureModelsContext).error;
|
|
13854
13964
|
var operationStartedAt = React.useRef();
|
|
13855
13965
|
React.useEffect(function () {
|
|
13856
13966
|
operationStartedAt.current = new Date();
|
|
@@ -13888,53 +13998,23 @@
|
|
|
13888
13998
|
});
|
|
13889
13999
|
}, [logCaptureMetadata]);
|
|
13890
14000
|
var onSubmitClick = React.useCallback(function () {
|
|
13891
|
-
|
|
13892
|
-
|
|
13893
|
-
|
|
13894
|
-
|
|
13895
|
-
|
|
13896
|
-
|
|
13897
|
-
|
|
13898
|
-
|
|
13899
|
-
|
|
13900
|
-
|
|
13901
|
-
|
|
13902
|
-
|
|
13903
|
-
|
|
13904
|
-
|
|
13905
|
-
|
|
13906
|
-
idFrontImage = _a;
|
|
13907
|
-
_b = idBackDocument;
|
|
13908
|
-
if (!_b) return [3, 4];
|
|
13909
|
-
return [4, dataUrlToBase64(idBackDocument.imageData)];
|
|
13910
|
-
case 3:
|
|
13911
|
-
_b = _d.sent();
|
|
13912
|
-
_d.label = 4;
|
|
13913
|
-
case 4:
|
|
13914
|
-
idBackImage = _b;
|
|
13915
|
-
_c = passportDocument;
|
|
13916
|
-
if (!_c) return [3, 6];
|
|
13917
|
-
return [4, dataUrlToBase64(passportDocument.imageData)];
|
|
13918
|
-
case 5:
|
|
13919
|
-
_c = _d.sent();
|
|
13920
|
-
_d.label = 6;
|
|
13921
|
-
case 6:
|
|
13922
|
-
passportImage = _c;
|
|
13923
|
-
setIdFrontImage(idFrontImage);
|
|
13924
|
-
setIdBackImage(idBackImage);
|
|
13925
|
-
setPassportImage(passportImage);
|
|
13926
|
-
releaseCameraAccess();
|
|
13927
|
-
setTimeout(function () {
|
|
13928
|
-
onSuccess === null || onSuccess === void 0 ? void 0 : onSuccess({
|
|
13929
|
-
idFrontImage: idFrontImage,
|
|
13930
|
-
idBackImage: idBackImage,
|
|
13931
|
-
passportImage: passportImage
|
|
13932
|
-
});
|
|
13933
|
-
}, 0);
|
|
13934
|
-
return [2];
|
|
13935
|
-
}
|
|
14001
|
+
var idFrontDocument = state.capturedDocuments['ID_CARD_FRONT'];
|
|
14002
|
+
var idBackDocument = state.capturedDocuments['ID_CARD_BACK'];
|
|
14003
|
+
var passportDocument = state.capturedDocuments['PASSPORT'];
|
|
14004
|
+
var idFrontImage = idFrontDocument && dataUrlToBase64Sync(idFrontDocument.imageData);
|
|
14005
|
+
var idBackImage = idBackDocument && dataUrlToBase64Sync(idBackDocument.imageData);
|
|
14006
|
+
var passportImage = passportDocument && dataUrlToBase64Sync(passportDocument.imageData);
|
|
14007
|
+
setIdFrontImage(idFrontImage);
|
|
14008
|
+
setIdBackImage(idBackImage);
|
|
14009
|
+
setPassportImage(passportImage);
|
|
14010
|
+
releaseCameraAccess();
|
|
14011
|
+
setTimeout(function () {
|
|
14012
|
+
onSuccess === null || onSuccess === void 0 ? void 0 : onSuccess({
|
|
14013
|
+
idFrontImage: idFrontImage,
|
|
14014
|
+
idBackImage: idBackImage,
|
|
14015
|
+
passportImage: passportImage
|
|
13936
14016
|
});
|
|
13937
|
-
});
|
|
14017
|
+
}, 0);
|
|
13938
14018
|
}, [onSuccess, releaseCameraAccess, setIdBackImage, setIdFrontImage, setPassportImage, state.capturedDocuments]);
|
|
13939
14019
|
var showSuccessScreen = useShowSuccessScreen(skipSuccessScreen, state.captureState === CaptureState.COMPLETE, onSubmitClick);
|
|
13940
14020
|
var onRetryClick = React.useCallback(function () {
|
|
@@ -13988,6 +14068,19 @@
|
|
|
13988
14068
|
className: "padded"
|
|
13989
14069
|
}, /*#__PURE__*/React__default['default'].createElement("h1", null, "Submission completed!"), /*#__PURE__*/React__default['default'].createElement("pre", null, JSON.stringify(submissionResponse, null, 2)));
|
|
13990
14070
|
}
|
|
14071
|
+
if (modelsError) {
|
|
14072
|
+
return /*#__PURE__*/React__default['default'].createElement(IdCaptureFallback, {
|
|
14073
|
+
onFinished: onSubmitClick,
|
|
14074
|
+
onCapture: function onCapture(imageData) {
|
|
14075
|
+
dispatch({
|
|
14076
|
+
type: 'imageCapturedManually',
|
|
14077
|
+
payload: {
|
|
14078
|
+
imageData: imageData
|
|
14079
|
+
}
|
|
14080
|
+
});
|
|
14081
|
+
}
|
|
14082
|
+
});
|
|
14083
|
+
}
|
|
13991
14084
|
return /*#__PURE__*/React__default['default'].createElement(PageContainer, {
|
|
13992
14085
|
className: "flex"
|
|
13993
14086
|
}, state.captureState !== CaptureState.COMPLETE && /*#__PURE__*/React__default['default'].createElement(CameraVideoTag, null), overlayDismissed && function () {
|
|
@@ -14106,6 +14199,23 @@
|
|
|
14106
14199
|
|
|
14107
14200
|
var t=self;function e(){throw Error("Invalid UTF8")}function n(t,e){return e=String.fromCharCode.apply(null,e),null==t?e:t+e}let r,s;const i="undefined"!=typeof TextDecoder;let o;const a="undefined"!=typeof TextEncoder;function h(t){if(a)t=(o||=new TextEncoder).encode(t);else {let n=0;const r=new Uint8Array(3*t.length);for(let s=0;s<t.length;s++){var e=t.charCodeAt(s);if(128>e)r[n++]=e;else {if(2048>e)r[n++]=e>>6|192;else {if(55296<=e&&57343>=e){if(56319>=e&&s<t.length){const i=t.charCodeAt(++s);if(56320<=i&&57343>=i){e=1024*(e-55296)+i-56320+65536,r[n++]=e>>18|240,r[n++]=e>>12&63|128,r[n++]=e>>6&63|128,r[n++]=63&e|128;continue}s--;}e=65533;}r[n++]=e>>12|224,r[n++]=e>>6&63|128;}r[n++]=63&e|128;}}t=n===r.length?r:r.subarray(0,n);}return t}var c,u;t:{for(var l=["CLOSURE_FLAGS"],f=t,d=0;d<l.length;d++)if(null==(f=f[l[d]])){u=null;break t}u=f;}var p,g=u&&u[610401301];c=null!=g&&g;const m=t.navigator;function y(t){return !!c&&(!!p&&p.brands.some((({brand:e})=>e&&-1!=e.indexOf(t))))}function v(e){var n;return (n=t.navigator)&&(n=n.userAgent)||(n=""),-1!=n.indexOf(e)}function _(){return !!c&&(!!p&&0<p.brands.length)}function w(){return _()?y("Chromium"):(v("Chrome")||v("CriOS"))&&!(!_()&&v("Edge"))||v("Silk")}p=m&&m.userAgentData||null;var A=!_()&&(v("Trident")||v("MSIE"));!v("Android")||w(),w(),v("Safari")&&(w()||!_()&&v("Coast")||!_()&&v("Opera")||!_()&&v("Edge")||(_()?y("Microsoft Edge"):v("Edg/"))||_()&&y("Opera"));var b={},E=null;function T(t){var e=t.length,n=3*e/4;n%3?n=Math.floor(n):-1!="=.".indexOf(t[e-1])&&(n=-1!="=.".indexOf(t[e-2])?n-2:n-1);var r=new Uint8Array(n),s=0;return function(t,e){function n(e){for(;r<t.length;){var n=t.charAt(r++),s=E[n];if(null!=s)return s;if(!/^[\s\xa0]*$/.test(n))throw Error("Unknown base64 encoding at char: "+n)}return e}k();for(var r=0;;){var s=n(-1),i=n(0),o=n(64),a=n(64);if(64===a&&-1===s)break;e(s<<2|i>>4),64!=o&&(e(i<<4&240|o>>2),64!=a&&e(o<<6&192|a));}}(t,(function(t){r[s++]=t;})),s!==n?r.subarray(0,s):r}function k(){if(!E){E={};for(var t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".split(""),e=["+/=","+/","-_=","-_.","-_"],n=0;5>n;n++){var r=t.concat(e[n].split(""));b[n]=r;for(var s=0;s<r.length;s++){var i=r[s];void 0===E[i]&&(E[i]=s);}}}}var x="undefined"!=typeof Uint8Array,L=!A&&"function"==typeof btoa;function F(t){if(!L){var e;void 0===e&&(e=0),k(),e=b[e];var n=Array(Math.floor(t.length/3)),r=e[64]||"";let h=0,c=0;for(;h<t.length-2;h+=3){var s=t[h],i=t[h+1],o=t[h+2],a=e[s>>2];s=e[(3&s)<<4|i>>4],i=e[(15&i)<<2|o>>6],o=e[63&o],n[c++]=a+s+i+o;}switch(a=0,o=r,t.length-h){case 2:o=e[(15&(a=t[h+1]))<<2]||r;case 1:t=t[h],n[c]=e[t>>2]+e[(3&t)<<4|a>>4]+o+r;}return n.join("")}for(e="",n=0,r=t.length-10240;n<r;)e+=String.fromCharCode.apply(null,t.subarray(n,n+=10240));return e+=String.fromCharCode.apply(null,n?t.subarray(n):t),btoa(e)}const S=/[-_.]/g,O={"-":"+",_:"/",".":"="};function M(t){return O[t]||""}function P(t){if(!L)return T(t);S.test(t)&&(t=t.replace(S,M)),t=atob(t);const e=new Uint8Array(t.length);for(let n=0;n<t.length;n++)e[n]=t.charCodeAt(n);return e}function R(t){return x&&null!=t&&t instanceof Uint8Array}let C;function I(){return C||=new Uint8Array(0)}var D={};let B;function U(t){if(t!==D)throw Error("illegal external caller")}function N(){return B||=new j(null,D)}function G(t){U(D);var e=t.N;return null==(e=null==e||R(e)?e:"string"==typeof e?P(e):null)?e:t.N=e}var j=class{constructor(t,e){if(U(e),this.N=t,null!=t&&0===t.length)throw Error("ByteString should be constructed with non-empty values")}ha(){const t=G(this);return t?new Uint8Array(t):I()}};function V(t,e){return Error(`Invalid wire type: ${t} (at position ${e})`)}function z(){return Error("Failed to read varint, encoding is invalid.")}function W(t,e){return Error(`Tried to read past the end of the data ${e} > ${t}`)}function X(t){return 0==t.length?N():new j(t,D)}function H(t){if("string"==typeof t)return {buffer:P(t),H:!1};if(Array.isArray(t))return {buffer:new Uint8Array(t),H:!1};if(t.constructor===Uint8Array)return {buffer:t,H:!1};if(t.constructor===ArrayBuffer)return {buffer:new Uint8Array(t),H:!1};if(t.constructor===j)return {buffer:G(t)||I(),H:!0};if(t instanceof Uint8Array)return {buffer:new Uint8Array(t.buffer,t.byteOffset,t.byteLength),H:!1};throw Error("Type not convertible to a Uint8Array, expected a Uint8Array, an ArrayBuffer, a base64 encoded string, a ByteString or an Array of numbers")}const Y="function"==typeof Uint8Array.prototype.slice;let $,q=0,K=0;function J(t){const e=0>t;let n=(t=Math.abs(t))>>>0;if(t=Math.floor((t-n)/4294967296),e){const[e,r]=nt(n,t);t=r,n=e;}q=n>>>0,K=t>>>0;}function Z(t){const e=$||=new DataView(new ArrayBuffer(8));e.setFloat32(0,+t,!0),K=0,q=e.getUint32(0,!0);}function Q(t,e){return 4294967296*e+(t>>>0)}function tt(t,e){const n=2147483648&e;return n&&(e=~e>>>0,0==(t=1+~t>>>0)&&(e=e+1>>>0)),t=Q(t,e),n?-t:t}function et(t){if(16>t.length)J(Number(t));else if("function"==typeof BigInt)t=BigInt(t),q=Number(t&BigInt(4294967295))>>>0,K=Number(t>>BigInt(32)&BigInt(4294967295));else {const e=+("-"===t[0]);K=q=0;const n=t.length;for(let r=e,s=(n-e)%6+e;s<=n;r=s,s+=6){const e=Number(t.slice(r,s));K*=1e6,q=1e6*q+e,4294967296<=q&&(K+=Math.trunc(q/4294967296),K>>>=0,q>>>=0);}if(e){const[t,e]=nt(q,K);q=t,K=e;}}}function nt(t,e){return e=~e,t?t=1+~t:e+=1,[t,e]}function rt(t,e,{R:n=!1}={}){t.R=n,e&&(e=H(e),t.h=e.buffer,t.s=e.H,t.v=0,t.l=t.h.length,t.g=t.v);}function st(t,e){if(t.g=e,e>t.l)throw W(t.l,e)}function it(t,e){let n,r=0,s=0,i=0;const o=t.h;let a=t.g;do{n=o[a++],r|=(127&n)<<i,i+=7;}while(32>i&&128&n);for(32<i&&(s|=(127&n)>>4),i=3;32>i&&128&n;i+=7)n=o[a++],s|=(127&n)<<i;if(st(t,a),128>n)return e(r>>>0,s>>>0);throw z()}function ot(t){let e=0,n=t.g;const r=n+10,s=t.h;for(;n<r;){const r=s[n++];if(e|=r,0==(128&r))return st(t,n),!!(127&e)}throw z()}function at(t){var e=t.h;const n=t.g,r=e[n],s=e[n+1],i=e[n+2];return e=e[n+3],st(t,t.g+4),(r<<0|s<<8|i<<16|e<<24)>>>0}function ht(t,e){if(0>e)throw Error(`Tried to read a negative byte length: ${e}`);const n=t.g,r=n+e;if(r>t.l)throw W(e,t.l-n);return t.g=r,n}function ct(t,e){if(0==e)return N();var n=ht(t,e);return t.R&&t.s?n=t.h.subarray(n,n+e):(t=t.h,n=n===(e=n+e)?I():Y?t.slice(n,e):new Uint8Array(t.subarray(n,e))),X(n)}var ut=class{constructor(t,e){this.h=null,this.s=!1,this.g=this.l=this.v=0,rt(this,t,e);}m(){const t=this.h;let e=this.g,n=t[e++],r=127&n;if(128&n&&(n=t[e++],r|=(127&n)<<7,128&n&&(n=t[e++],r|=(127&n)<<14,128&n&&(n=t[e++],r|=(127&n)<<21,128&n&&(n=t[e++],r|=n<<28,128&n&&128&t[e++]&&128&t[e++]&&128&t[e++]&&128&t[e++]&&128&t[e++])))))throw z();return st(this,e),r}j(){return this.m()>>>0}A(){var t=at(this);const e=2*(t>>31)+1,n=t>>>23&255;return t&=8388607,255==n?t?NaN:1/0*e:0==n?e*Math.pow(2,-149)*t:e*Math.pow(2,n-150)*(t+Math.pow(2,23))}C(){return this.m()}},lt=[];function ft(t){var e=t.g;if(e.g==e.l)return !1;t.l=t.g.g;var n=t.g.j();if(e=n>>>3,!(0<=(n&=7)&&5>=n))throw V(n,t.l);if(1>e)throw Error(`Invalid field number: ${e} (at position ${t.l})`);return t.m=e,t.h=n,!0}function dt(t){switch(t.h){case 0:0!=t.h?dt(t):ot(t.g);break;case 1:st(t=t.g,t.g+8);break;case 2:if(2!=t.h)dt(t);else {var e=t.g.j();st(t=t.g,t.g+e);}break;case 5:st(t=t.g,t.g+4);break;case 3:for(e=t.m;;){if(!ft(t))throw Error("Unmatched start-group tag: stream EOF");if(4==t.h){if(t.m!=e)throw Error("Unmatched end-group tag");break}dt(t);}break;default:throw V(t.h,t.l)}}function pt(t,e,n){const r=t.g.l,s=t.g.j(),i=t.g.g+s;let o=i-r;if(0>=o&&(t.g.l=i,n(e,t,void 0,void 0,void 0),o=i-t.g.g),o)throw Error(`Message parsing ended unexpectedly. Expected to read ${s} bytes, instead read ${s-o} bytes, either the data ended unexpectedly or the message misreported its own length`);return t.g.g=i,t.g.l=r,e}function gt(t){var o=t.g.j(),a=ht(t=t.g,o);if(t=t.h,i){var h,c=t;(h=s)||(h=s=new TextDecoder("utf-8",{fatal:!0})),t=a+o,c=0===a&&t===c.length?c:c.subarray(a,t);try{var u=h.decode(c);}catch(t){if(void 0===r){try{h.decode(new Uint8Array([128]));}catch(t){}try{h.decode(new Uint8Array([97])),r=!0;}catch(t){r=!1;}}throw !r&&(s=void 0),t}}else {o=(u=a)+o,a=[];let r,s=null;for(;u<o;){var l=t[u++];128>l?a.push(l):224>l?u>=o?e():(r=t[u++],194>l||128!=(192&r)?(u--,e()):a.push((31&l)<<6|63&r)):240>l?u>=o-1?e():(r=t[u++],128!=(192&r)||224===l&&160>r||237===l&&160<=r||128!=(192&(c=t[u++]))?(u--,e()):a.push((15&l)<<12|(63&r)<<6|63&c)):244>=l?u>=o-2?e():(r=t[u++],128!=(192&r)||0!=r-144+(l<<28)>>30||128!=(192&(c=t[u++]))||128!=(192&(h=t[u++]))?(u--,e()):(l=(7&l)<<18|(63&r)<<12|(63&c)<<6|63&h,l-=65536,a.push(55296+(l>>10&1023),56320+(1023&l)))):e(),8192<=a.length&&(s=n(s,a),a.length=0);}u=n(s,a);}return u}function mt(t){const e=t.g.j();return ct(t.g,e)}function yt(t,e,n){var r=t.g.j();for(r=t.g.g+r;t.g.g<r;)n.push(e.call(t.g));}var vt=[];function _t(t){return t?/^\d+$/.test(t)?(et(t),new wt(q,K)):null:At||=new wt(0,0)}var wt=class{constructor(t,e){this.h=t>>>0,this.g=e>>>0;}};let At;function bt(t){return t?/^-?\d+$/.test(t)?(et(t),new Et(q,K)):null:Tt||=new Et(0,0)}var Et=class{constructor(t,e){this.h=t>>>0,this.g=e>>>0;}};let Tt;function kt(t,e,n){for(;0<n||127<e;)t.g.push(127&e|128),e=(e>>>7|n<<25)>>>0,n>>>=7;t.g.push(e);}function xt(t,e){for(;127<e;)t.g.push(127&e|128),e>>>=7;t.g.push(e);}function Lt(t,e){if(0<=e)xt(t,e);else {for(let n=0;9>n;n++)t.g.push(127&e|128),e>>=7;t.g.push(1);}}function Ft(t,e){t.g.push(e>>>0&255),t.g.push(e>>>8&255),t.g.push(e>>>16&255),t.g.push(e>>>24&255);}function St(t,e){0!==e.length&&(t.l.push(e),t.h+=e.length);}function Ot(t,e,n){xt(t.g,8*e+n);}function Mt(t,e){return Ot(t,e,2),e=t.g.end(),St(t,e),e.push(t.h),e}function Pt(t,e){var n=e.pop();for(n=t.h+t.g.length()-n;127<n;)e.push(127&n|128),n>>>=7,t.h++;e.push(n),t.h++;}function Rt(t,e,n){Ot(t,e,2),xt(t.g,n.length),St(t,t.g.end()),St(t,n);}function Ct(t,e,n,r){null!=n&&(e=Mt(t,e),r(n,t),Pt(t,e));}class It{constructor(t,e,n){this.g=t,this.h=e,this.l=n;}}function Dt(t){return Array.prototype.slice.call(t)}const Bt="function"==typeof Symbol&&"symbol"==typeof Symbol()?Symbol():void 0;var Ut=Bt?(t,e)=>{t[Bt]|=e;}:(t,e)=>{void 0!==t.D?t.D|=e:Object.defineProperties(t,{D:{value:e,configurable:!0,writable:!0,enumerable:!1}});};function Nt(t){const e=jt(t);1!=(1&e)&&(Object.isFrozen(t)&&(t=Dt(t)),zt(t,1|e));}var Gt=Bt?(t,e)=>{t[Bt]&=~e;}:(t,e)=>{void 0!==t.D&&(t.D&=~e);},jt=Bt?t=>0|t[Bt]:t=>0|t.D,Vt=Bt?t=>t[Bt]:t=>t.D,zt=Bt?(t,e)=>{t[Bt]=e;}:(t,e)=>{void 0!==t.D?t.D=e:Object.defineProperties(t,{D:{value:e,configurable:!0,writable:!0,enumerable:!1}});};function Wt(){var t=[];return Ut(t,1),t}function Xt(t){return Ut(t,34),t}function Ht(t,e){zt(e,-255&(0|t));}function Yt(t,e){zt(e,-221&(34|t));}function $t(t){return 0===(t=t>>11&1023)?536870912:t}var qt,Kt={};function Jt(t){return null!==t&&"object"==typeof t&&!Array.isArray(t)&&t.constructor===Object}function Zt(t,e,n){if(null!=t)if("string"==typeof t)t=t?new j(t,D):N();else if(t.constructor!==j)if(R(t))t=n?X(t):t.length?new j(new Uint8Array(t),D):N();else {if(!e)throw Error();t=void 0;}return t}const Qt=[];function te(t){if(2&t)throw Error()}zt(Qt,55),qt=Object.freeze(Qt);class ee{constructor(t,e,n){this.l=0,this.g=t,this.h=e,this.m=n;}next(){if(this.l<this.g.length){const t=this.g[this.l++];return {done:!1,value:this.h?this.h.call(this.m,t):t}}return {done:!0,value:void 0}}[Symbol.iterator](){return new ee(this.g,this.h,this.m)}}var ne={};let re,se;function ie(t,e){(e=re?e[re]:void 0)&&(t[re]=Dt(e));}function oe(t,e){t.__closure__error__context__984382||(t.__closure__error__context__984382={}),t.__closure__error__context__984382.severity=e;}function ae(t){return null==t?t:"number"==typeof t||"NaN"===t||"Infinity"===t||"-Infinity"===t?Number(t):void 0}function he(t){return null==t?t:"boolean"==typeof t||"number"==typeof t?!!t:void 0}function ce(t){return "number"==typeof t&&Number.isFinite(t)||!!t&&"string"==typeof t&&isFinite(t)}function ue(t){if(null==t)return t;if("string"==typeof t){if(!t)return;t=+t;}return "number"==typeof t?t:void 0}function le(t){if(null==t)return t;if("string"==typeof t){if(!t)return;t=+t;}return "number"==typeof t?t:void 0}function fe(t){if("string"!=typeof t)throw Error();return t}function de(t){if(null!=t&&"string"!=typeof t)throw Error();return t}function pe(t){return null==t||"string"==typeof t?t:void 0}function ge(t,e,n,r){var s=!1;return null==t||"object"!=typeof t||(s=Array.isArray(t))||t.M!==Kt?s?(0===(s=n=jt(t))&&(s|=32&r),(s|=2&r)!==n&&zt(t,s),new e(t)):(n?2&r?(t=e[me])?e=t:(Xt((t=new e).u),e=e[me]=t):e=new e:e=void 0,e):t}const me="function"==typeof Symbol&&"symbol"==typeof Symbol()?Symbol():"di";function ye(t){return t}function ve(t,e,n){return "string"==typeof(t="number"===(e=typeof t)||"string"===e?t:n?0:void 0)&&(n=+t,Number.isSafeInteger(n))?n:t}let _e,we,Ae;function be(t){switch(typeof t){case"boolean":return we||=[0,void 0,!0];case"number":return 0<t?void 0:0===t?Ae||=[0,void 0]:[-t,void 0];case"string":return [0,t];case"object":return t}}function Ee(t,e){return Te(t,e[0],e[1])}function Te(t,e,n){if(null==t&&(t=_e),_e=void 0,null==t){var r=96;n?(t=[n],r|=512):t=[],e&&(r=-2095105&r|(1023&e)<<11);}else {if(!Array.isArray(t))throw Error();if(64&(r=jt(t)))return se&&delete t[se],t;if(r|=64,n&&(r|=512,n!==t[0]))throw Error();t:{var s=(n=t).length;if(s){const t=s-1;var i=n[t];if(Jt(i)){1024<=(s=t-(e=+!!(512&(r|=256))-1))&&(ke(n,e,i),s=1023),r=-2095105&r|(1023&s)<<11;break t}}e&&(i=+!!(512&r)-1,1024<(e=Math.max(e,s-i))&&(ke(n,i,{}),r|=256,e=1023),r=-2095105&r|(1023&e)<<11);}}return zt(t,r),t}function ke(t,e,n){const r=1023+e,s=t.length;for(let i=r;i<s;i++){const r=t[i];null!=r&&r!==n&&(n[i-e]=r);}t.length=r+1,t[r]=n;}function xe(t){if(2&t.g)throw Error("Cannot mutate an immutable Map")}var Le=class extends Map{constructor(t,e,n=ye,r=ye){super();let s=jt(t);s|=64,zt(t,s),this.g=s,this.l=e,this.h=n||ye,this.j=this.l?Fe:r||ye;for(let i=0;i<t.length;i++){const o=t[i],a=n(o[0],!1,!0);let h=o[1];e?void 0===h&&(h=null):h=r(o[1],!1,!0,void 0,void 0,s),super.set(a,h);}}s(t=Se){return this.m(t)}m(t=Se){const e=[],n=super.entries();for(var r;!(r=n.next()).done;)(r=r.value)[0]=t(r[0]),r[1]=t(r[1]),e.push(r);return e}clear(){xe(this),super.clear();}delete(t){return xe(this),super.delete(this.h(t,!0,!1))}entries(){var t=this.A();return new ee(t,Oe,this)}keys(){return this.C()}values(){var t=this.A();return new ee(t,Le.prototype.get,this)}forEach(t,e){super.forEach(((n,r)=>{t.call(e,this.get(r),r,this);}));}set(t,e){return xe(this),null==(t=this.h(t,!0,!1))?this:null==e?(super.delete(t),this):super.set(t,this.j(e,!0,!0,this.l,!1,this.g))}I(t){const e=this.h(t[0],!1,!0);t=t[1],t=this.l?void 0===t?null:t:this.j(t,!1,!0,void 0,!1,this.g),super.set(e,t);}has(t){return super.has(this.h(t,!1,!1))}get(t){t=this.h(t,!1,!1);const e=super.get(t);if(void 0!==e){var n=this.l;return n?((n=this.j(e,!1,!0,n,this.v,this.g))!==e&&super.set(t,n),n):e}}A(){return Array.from(super.keys())}C(){return super.keys()}[Symbol.iterator](){return this.entries()}};function Fe(t,e,n,r,s,i){return t=ge(t,r,n,i),s&&(t=Ue(t)),t}function Se(t){return t}function Oe(t){return [t,this.get(t)]}function Me(t,e,n,r,s,i){if(null!=t){if(Array.isArray(t))t=s&&0==t.length&&1&jt(t)?void 0:i&&2&jt(t)?t:Pe(t,e,n,void 0!==r,s,i);else if(Jt(t)){const o={};for(let a in t)o[a]=Me(t[a],e,n,r,s,i);t=o;}else t=e(t,r);return t}}function Pe(t,e,n,r,s,i){const o=r||n?jt(t):0;r=r?!!(32&o):void 0;const a=Dt(t);for(let t=0;t<a.length;t++)a[t]=Me(a[t],e,n,r,s,i);return n&&(ie(a,t),n(o,a)),a}function Re(t){return Me(t,Ce,void 0,void 0,!1,!1)}function Ce(t){return t.M===Kt?t.toJSON():t instanceof Le?t.s(Re):function(t){switch(typeof t){case"number":return isFinite(t)?t:String(t);case"boolean":return t?1:0;case"object":if(t&&!Array.isArray(t)){if(R(t))return F(t);if(t instanceof j){const e=t.N;return null==e?"":"string"==typeof e?e:t.N=F(e)}if(t instanceof Le)return t.s()}}return t}(t)}function Ie(t,e,n=Yt){if(null!=t){if(x&&t instanceof Uint8Array)return e?t:new Uint8Array(t);if(Array.isArray(t)){var r=jt(t);return 2&r?t:(e&&=0===r||!!(32&r)&&!(64&r||!(16&r)),e?(zt(t,34|r),4&r&&Object.freeze(t),t):Pe(t,Ie,4&r?Yt:n,!0,!1,!0))}return t.M===Kt?(n=t.u,t=2&(r=Vt(n))?t:De(t,n,r,!0)):t instanceof Le&&(n=Xt(t.m(Ie)),t=new Le(n,t.l,t.h,t.j)),t}}function De(t,e,n,r){return t=t.constructor,_e=e=Be(e,n,r),e=new t(e),_e=void 0,e}function Be(t,e,n){const r=n||2&e?Yt:Ht,s=!!(32&e);return t=function(t,e,n){const r=Dt(t);var s=r.length;const i=256&e?r[s-1]:void 0;for(s+=i?-1:0,e=512&e?1:0;e<s;e++)r[e]=n(r[e]);if(i){e=r[e]={};for(const t in i)e[t]=n(i[t]);}return ie(r,t),r}(t,e,(t=>Ie(t,s,r))),Ut(t,32|(n?2:0)),t}function Ue(t){const e=t.u,n=Vt(e);return 2&n?De(t,e,n,!1):t}function Ne(t,e){return Ge(t=t.u,Vt(t),e)}function Ge(t,e,n,r){if(-1===n)return null;if(n>=$t(e)){if(256&e)return t[t.length-1][n]}else {var s=t.length;if(r&&256&e&&null!=(r=t[s-1][n]))return r;if((e=n+(+!!(512&e)-1))<s)return t[e]}}function je(t,e,n,r){const s=t.u,i=Vt(s);return te(i),Ve(s,i,e,n,r),t}function Ve(t,e,n,r,s){var i=$t(e);if(n>=i||s){if(s=e,256&e)i=t[t.length-1];else {if(null==r)return;i=t[i+(+!!(512&e)-1)]={},s|=256;}i[n]=r,s!==e&&zt(t,s);}else t[n+(+!!(512&e)-1)]=r,256&e&&(n in(t=t[t.length-1])&&delete t[n]);}function ze(t,e,n,r,s){var i=2&e;let o=Ge(t,e,n,s);Array.isArray(o)||(o=qt);const a=!(2&r),h=!(1&r);r=!!(32&e);let c=jt(o);return 0!==c||!r||i||a?1&c||(c|=1,zt(o,c)):(c|=33,zt(o,c)),i?(2&c||Xt(o),h&&Object.freeze(o)):(i=2&c,h&&i?(o=Dt(o),i=1,r&&!a&&(i|=32),zt(o,i),Ve(t,e,n,o,s)):a&&32&c&&!i&&Gt(o,32)),o}function We(t,e){t=t.u;const n=Vt(t),r=Ge(t,n,e),s=ae(r);return null!=s&&s!==r&&Ve(t,n,e,s),s}function Xe(t){t=t.u;const e=Vt(t),n=Ge(t,e,1),r=Zt(n,!0,!!(34&e));return null!=r&&r!==n&&Ve(t,e,1,r),r}function He(t,e,n){t=t.u;const r=Vt(t),s=2&r;let i=ze(t,r,e,1),o=jt(i);if(!(4&o)){Object.isFrozen(i)&&(i=Dt(i),zt(i,o=-3&o|32),Ve(t,r,e,i));let a=0,h=0;for(;a<i.length;a++){const t=n(i[a]);null!=t&&(i[h++]=t);}h<a&&(i.length=h),o|=21,s?o|=34:o&=-33,zt(i,o),2&o&&Object.freeze(i);}return !s&&(2&o||Object.isFrozen(i))&&(i=Dt(i),zt(i,-35&o),Ve(t,r,e,i)),i}let Ye;function $e(){return Ye??=new Le(Xt([]),void 0,void 0,void 0,ne)}function qe(t){t=Dt(t);for(let e=0;e<t.length;e++){const n=t[e]=Dt(t[e]);Array.isArray(n[1])&&(n[1]=Xt(n[1]));}return t}function Ke(t,e,n){{t=t.u;const r=Vt(t);if(te(r),null==n)Ve(t,r,e);else {if(!(4&jt(n))){Object.isFrozen(n)&&(n=Dt(n));for(let t=0;t<n.length;t++)n[t]=fe(n[t]);zt(n,5);}Ve(t,r,e,n);}}}function Je(t,e){return Ze(t=t.u,Vt(t),Vs)===e?e:-1}function Ze(t,e,n){let r=0;for(let s=0;s<n.length;s++){const i=n[s];null!=Ge(t,e,i)&&(0!==r&&Ve(t,e,r),r=i);}return r}function Qe(t,e,n,r){const s=Vt(t);te(s);const i=Ge(t,s,n,r);let o;if(null!=i&&i.M===Kt)return (e=Ue(i))!==i&&Ve(t,s,n,e,r),e.u;if(Array.isArray(i)){const t=jt(i);o=2&t?Be(i,t,!1):i,o=Ee(o,e);}else o=Ee(void 0,e);return o!==i&&Ve(t,s,n,o,r),o}function tn(t,e,n,r){t=t.u;const s=Vt(t),i=Ge(t,s,n,r);return (e=ge(i,e,!1,s))!==i&&null!=e&&Ve(t,s,n,e,r),e}function en(t,e,n,r=!1){if(null==(e=tn(t,e,n,r)))return e;t=t.u;const s=Vt(t);if(!(2&s)){const i=Ue(e);i!==e&&Ve(t,s,n,e=i,r);}return e}function nn(t,e,n,r,s){var i=!!(2&e),o=ze(t,e,r,1),a=o===qt;if(a&&2!==s)return o;if(a||!(4&jt(o))){var h=o;o=!!(2&e),a=!!(2&jt(h)),i=h,!o&&a&&(h=Dt(h));var c=e|((a=a||void 0)?2:0),u=a;a=!1;let l=0,f=0;for(;l<h.length;l++){const t=ge(h[l],n,!1,c);if(null==t)continue;const e=!!(2&jt(t.u));u=u||e,a=a||!e,h[f++]=t;}return f<l&&(h.length=f),c=5|(h=jt(n=h)),u=u?-9&c:8|c,h!=(u=a?-17&u:16|u)&&(Object.isFrozen(n)&&(n=Dt(n)),zt(n,u)),i!==(h=n)&&Ve(t,e,r,h),(o&&2!==s||1===s)&&Object.freeze(h),h}return 3===s||(i?2===s&&(s=jt(o),o=Dt(o),zt(o,s),Ve(t,e,r,o)):(i=Object.isFrozen(o),1===s?i||Object.freeze(o):(n=-33&(s=jt(o)),i||2&s?(o=Dt(o),zt(o,-3&n),Ve(t,e,r,o)):s!==n&&zt(o,n)))),o}function rn(t,e,n){var r=t.u;const s=Vt(r);if(e=nn(r,s,e,n,(t=!!(2&s))?1:2),!(t||8&jt(e))){for(n=0;n<e.length;n++)(t=e[n])!==(r=Ue(t))&&(e[n]=r);Ut(e,8);}return e}function sn(t,e,n,r,s){return null==r&&(r=void 0),je(t,n,r,s)}function on(t,e,n,r){null==r&&(r=void 0),t=t.u;const s=Vt(t);te(s),(n=Ze(t,s,n))&&n!==e&&null!=r&&Ve(t,s,n),Ve(t,s,e,r);}function an(t,e,n){t=t.u;const r=Vt(t);te(r),t=nn(t,r,e,1,2),e=null!=n?n:new e,t.push(e),2&jt(e.u)?Gt(t,8):Gt(t,16);}function hn(t,e){return ue(Ne(t,e))}function cn(t){return t=null==(t=Ne(t,2))||ce(t)?t:void 0}function un(t,e){return pe(Ne(t,e))}function ln(t){return t??0}function fn(t,e){return ln(We(t,e))}function dn(t,e,n){if(null!=n){if("boolean"!=typeof n)throw t=typeof n,Error(`Expected boolean but got ${"object"!=t?t:n?Array.isArray(n)?"array":t:"null"}: ${n}`);n=!!n;}je(t,e,n);}function pn(e,n,r){if(null!=r){if("number"!=typeof r)throw oe(e=Error(),"warning"),e;if(!Number.isFinite(r)){const e=Error();oe(e,"incident"),function(e){t.setTimeout((()=>{throw e}),0);}(e);}}je(e,n,r);}function gn(t,e,n){if(null!=n&&"number"!=typeof n)throw Error(`Value of float/double field must be a number, found ${typeof n}: ${n}`);je(t,e,n);}function mn(t,e,n){n=fe(n),t=t.u;const r=Vt(t);te(r),ze(t,r,e,2).push(n);}function yn(t,e,n){e.g?e.m(t,e.g,e.h,n,!0):e.m(t,e.h,n,!0);}Le.prototype.toJSON=void 0;var vn=class{constructor(t,e){this.u=Te(t,e);}toJSON(){return _n(this,Pe(this.u,Ce,void 0,void 0,!1,!1),!0)}l(){var t=Ui;return t.g?t.l(this,t.g,t.h,!0):t.l(this,t.h,t.defaultValue,!0)}clone(){const t=this.u;return De(this,t,Vt(t),!1)}H(){return !!(2&jt(this.u))}};function _n(t,e,n){var r=t.constructor.B,s=$t(Vt(n?t.u:e)),i=!1;if(r){if(!n){var o;if((e=Dt(e)).length&&Jt(o=e[e.length-1]))for(i=0;i<r.length;i++)if(r[i]>=s){Object.assign(e[e.length-1]={},o);break}i=!0;}var a;s=e,n=!n,t=$t(o=Vt(t.u)),o=+!!(512&o)-1;for(let e=0;e<r.length;e++){var h=r[e];if(h<t){var c=s[h+=o];null==c?s[h]=n?qt:Wt():n&&c!==qt&&Nt(c);}else {if(!a){var u=void 0;s.length&&Jt(u=s[s.length-1])?a=u:s.push(a={});}c=a[h],null==a[h]?a[h]=n?qt:Wt():n&&c!==qt&&Nt(c);}}}if(!(r=e.length))return e;let l,f;if(Jt(a=e[r-1])){t:{var d=a;u={},s=!1;for(let t in d)n=d[t],Array.isArray(n)&&n!=n&&(s=!0),null!=n?u[t]=n:s=!0;if(s){for(let t in u){d=u;break t}d=null;}}d!=a&&(l=!0),r--;}for(;0<r&&null==(a=e[r-1]);r--)f=!0;return l||f?(e=i?e:Array.prototype.slice.call(e,0,r),i&&(e.length=r),d&&e.push(d),e):e}function wn(t){return {ca:gr,U:t}}function An(t,e){if(Array.isArray(e)){var n=jt(e);if(4&n)return e;for(var r=0,s=0;r<e.length;r++){const n=t(e[r]);null!=n&&(e[s++]=n);}return s<r&&(e.length=s),zt(e,5|n),2&n&&Object.freeze(e),e}}vn.prototype.M=Kt,vn.prototype.toString=function(){return _n(this,this.u,!1).toString()};const bn=Symbol();function En(t){let e=t[bn];if(!e){const n=Sn(t),r=Gn(t),s=r.h;e=s?(t,e)=>s(t,e,r):(t,e)=>{for(;ft(e)&&4!=e.h;){var s=e.m,i=r[s];if(!i){var o=r.g;o&&(o=o[s])&&(i=r[s]=Tn(o));}i&&i(e,t,s)||(s=(i=e).l,dt(i),i.aa?i=void 0:(o=i.g.g-s,i.g.g=s,i=ct(i.g,o)),s=t,i&&(re||=Symbol(),(o=s[re])?o.push(i):s[re]=[i]));}for(const e in n){t[se||=Symbol()]=n;break}},t[bn]=e;}return e}function Tn(t){const e=function(t){if(t=t.U)return En(t)}(t),n=t.ca.g;if(e){const r=Gn(t.U).L;return (t,s,i)=>n(t,s,i,r,e)}return (t,e,r)=>n(t,e,r)}const kn=Symbol();function xn(t,e,n,r){let s;if(r){const e=r[kn];s=e?e.L:be(r[0]),n[t]=e??r;}s&&s===we?((e=n.xa)||(n.xa=e=[]),e.push(t)):e.l&&((e=n.Ba)||(n.Ba=e=[]),e.push(t));}function Ln(t,e,n,r){xn(t,e,r);}function Fn(t,e,n,r,s){xn(t,e,s,n);}function Sn(t){let e=t[kn];return e||(e=t[kn]={},On(t,e,Ln,Fn,e))}function On(t,e,n,r,s){e.L=be(t[0]);let i=1;if(t.length>i&&!(t[i]instanceof It)){var o=t[i++];if(Array.isArray(o))return e.h=o[0],e.g=o[1],e;e.g=o;}for(o=0;i<t.length;){var a=t[i++],h=t[i];for("number"==typeof h?(i++,o+=h):o++,h=i;h<t.length&&!(t[h]instanceof It);)h++;if(h-=i){var c=t,u=i,l=c[u];if("function"==typeof l&&(l=l(),c[u]=l),(c=Array.isArray(l))&&!(c=Bn in l||Rn in l)&&(c=0<l.length)){const t=be(u=(c=l)[0]);null!=t&&t!==u&&(c[0]=t),c=null!=t;}(l=c?l:void 0)?(i++,1===h?void 0!==(a=r(o,a,l,void 0,s))&&(e[o]=a):void 0!==(a=r(o,a,l,t[i++],s))&&(e[o]=a)):void 0!==(a=n(o,a,t[i++],s))&&(e[o]=a);}else void 0!==(a=n(o,a,void 0,s))&&(e[o]=a);}return e}const Mn=Symbol();function Pn(t){let e=t[Mn];if(!e){const n=Dn(t);e=(t,e)=>Vn(t,e,n),t[Mn]=e;}return e}const Rn=Symbol();function Cn(t,e){return e.h}function In(t,e,n){let r,s;const i=e.h;return (t,e,o)=>i(t,e,o,s||=Dn(n).L,r||=Pn(n))}function Dn(t){let e=t[Rn];return e||(e=On(t,t[Rn]={},Cn,In),Bn in t&&Rn in t&&(t.length=0),e)}const Bn=Symbol();function Un(t,e,n){const r=e.g;return n?(t,e,s)=>r(t,e,s,n):r}function Nn(t,e,n,r){const s=e.g;let i,o;return (t,e,a)=>s(t,e,a,o||=Gn(n).L,i||=En(n),r)}function Gn(t){let e=t[Bn];return e||(Sn(t),e=On(t,t[Bn]={},Un,Nn),Bn in t&&Rn in t&&(t.length=0),e)}function jn(t,e){var n=t[e];if(n)return n;if((n=t.g)&&(n=n[e])){var r=n.U,s=n.ca.h;if(r){const t=Pn(r),e=Dn(r).L;n=(n,r,i)=>s(n,r,i,e,t);}else n=s;return t[e]=n}}function Vn(t,e,n){for(var r=Vt(t),s=+!!(512&r)-1,i=t.length,o=512&r?1:0,a=i+(256&r?-1:0);o<a;o++){const r=t[o];if(null==r)continue;const i=o-s,a=jn(n,i);a&&a(e,r,i);}if(256&r){r=t[i-1];for(let t in r)s=+t,Number.isNaN(s)||null!=(i=r[t])&&(a=jn(n,s))&&a(e,i,s);}if(t=re?t[re]:void 0)for(St(e,e.g.end()),n=0;n<t.length;n++)St(e,G(t[n])||I());}function zn(t,e){return new It(t,e,!1)}function Wn(t,e){return new It(t,e,!0)}function Xn(t,e,n){Ve(t,Vt(t),e,n);}var Hn=zn((function(t,e,n,r,s){return 2===t.h&&(t=pt(t,Ee([void 0,void 0],r),s),te(r=Vt(e)),(s=Ge(e,r,n))instanceof Le?0!=(2&s.g)?((s=s.m()).push(t),Ve(e,r,n,s)):s.I(t):Array.isArray(s)?(2&jt(s)&&Ve(e,r,n,s=qe(s)),s.push(t)):Ve(e,r,n,[t]),!0)}),(function(t,e,n,r,s){if(e instanceof Le)e.forEach(((e,i)=>{Ct(t,n,Ee([i,e],r),s);}));else if(Array.isArray(e))for(let i=0;i<e.length;i++){const o=e[i];Array.isArray(o)&&Ct(t,n,Ee(o,r),s);}}));function Yn(t,e,n){t:if(null!=e){if(ce(e)){if("string"==typeof e)break t;if("number"==typeof e)break t}e=void 0;}null!=e&&("string"==typeof e&&bt(e),null!=e&&(Ot(t,n,0),"number"==typeof e?(t=t.g,J(e),kt(t,q,K)):(n=bt(e),kt(t.g,n.h,n.g))));}function $n(t,e,n){null!=(e=ue(e))&&null!=e&&(Ot(t,n,0),Lt(t.g,e));}function qn(t,e,n){null!=(e=he(e))&&(Ot(t,n,0),t.g.g.push(e?1:0));}function Kn(t,e,n){null!=(e=pe(e))&&Rt(t,n,h(e));}function Jn(t,e,n,r,s){Ct(t,n,e instanceof vn?e.u:Array.isArray(e)?Ee(e,r):void 0,s);}function Zn(t,e,n){null!=(e=null==e||"string"==typeof e||R(e)||e instanceof j?e:void 0)&&Rt(t,n,H(e).buffer);}function Qn(t,e,n){return (5===t.h||2===t.h)&&(e=ze(e,Vt(e),n,2,!1),2==t.h?yt(t,ut.prototype.A,e):e.push(t.g.A()),!0)}var tr=zn((function(t,e,n){if(1!==t.h)return !1;var r=t.g;t=at(r);const s=at(r);r=2*(s>>31)+1;const i=s>>>20&2047;return t=4294967296*(1048575&s)+t,Xn(e,n,2047==i?t?NaN:1/0*r:0==i?r*Math.pow(2,-1074)*t:r*Math.pow(2,i-1075)*(t+4503599627370496)),!0}),(function(t,e,n){null!=(e=ae(e))&&(Ot(t,n,1),t=t.g,(n=$||=new DataView(new ArrayBuffer(8))).setFloat64(0,+e,!0),q=n.getUint32(0,!0),K=n.getUint32(4,!0),Ft(t,q),Ft(t,K));})),er=zn((function(t,e,n){return 5===t.h&&(Xn(e,n,t.g.A()),!0)}),(function(t,e,n){null!=(e=ae(e))&&(Ot(t,n,5),t=t.g,Z(e),Ft(t,q));})),nr=Wn(Qn,(function(t,e,n){if(null!=(e=An(ae,e)))for(let i=0;i<e.length;i++){var r=t,s=e[i];null!=s&&(Ot(r,n,5),r=r.g,Z(s),Ft(r,q));}})),rr=Wn(Qn,(function(t,e,n){if(null!=(e=An(ae,e))&&e.length){Ot(t,n,2),xt(t.g,4*e.length);for(let r=0;r<e.length;r++)n=t.g,Z(e[r]),Ft(n,q);}})),sr=zn((function(t,e,n){return 0===t.h&&(Xn(e,n,it(t.g,tt)),!0)}),Yn),ir=zn((function(t,e,n){return 0===t.h&&(Xn(e,n,0===(t=it(t.g,tt))?void 0:t),!0)}),Yn),or=zn((function(t,e,n){return 0===t.h&&(Xn(e,n,it(t.g,Q)),!0)}),(function(t,e,n){t:if(null!=e){if(ce(e)){if("string"==typeof e)break t;if("number"==typeof e)break t}e=void 0;}null!=e&&("string"==typeof e&&_t(e),null!=e&&(Ot(t,n,0),"number"==typeof e?(t=t.g,J(e),kt(t,q,K)):(n=_t(e),kt(t.g,n.h,n.g))));})),ar=zn((function(t,e,n){return 0===t.h&&(Xn(e,n,t.g.m()),!0)}),$n),hr=Wn((function(t,e,n){return (0===t.h||2===t.h)&&(e=ze(e,Vt(e),n,2,!1),2==t.h?yt(t,ut.prototype.m,e):e.push(t.g.m()),!0)}),(function(t,e,n){if(null!=(e=An(ue,e))&&e.length){n=Mt(t,n);for(let n=0;n<e.length;n++)Lt(t.g,e[n]);Pt(t,n);}})),cr=zn((function(t,e,n){return 0===t.h&&(Xn(e,n,0===(t=t.g.m())?void 0:t),!0)}),$n),ur=zn((function(t,e,n){return 0===t.h&&(Xn(e,n,ot(t.g)),!0)}),qn),lr=zn((function(t,e,n){return 0===t.h&&(Xn(e,n,!1===(t=ot(t.g))?void 0:t),!0)}),qn),fr=Wn((function(t,e,n){if(2!==t.h)return !1;t=gt(t);const r=Vt(e);return te(r),ze(e,r,n,2).push(t),!0}),(function(t,e,n){if(null!=(e=An(pe,e)))for(let s=0;s<e.length;s++){var r=e[s];null!=r&&Rt(t,n,h(r));}})),dr=zn((function(t,e,n){return 2===t.h&&(Xn(e,n,""===(t=gt(t))?void 0:t),!0)}),Kn),pr=zn((function(t,e,n){return 2===t.h&&(Xn(e,n,gt(t)),!0)}),Kn),gr=zn((function(t,e,n,r,s){return 2===t.h&&(pt(t,Qe(e,r,n,!0),s),!0)}),Jn),mr=zn((function(t,e,n,r,s){return 2===t.h&&(pt(t,Qe(e,r,n),s),!0)}),Jn),yr=Wn((function(t,e,n,r,s){if(2!==t.h)return !1;r=Ee(void 0,r);const i=Vt(e);te(i);let o=ze(e,i,n,3);return (Object.isFrozen(o)||4&jt(o))&&(o=Dt(o),Ve(e,i,n,o)),o.push(r),pt(t,r,s),!0}),(function(t,e,n,r,s){if(Array.isArray(e))for(let i=0;i<e.length;i++)Jn(t,e[i],n,r,s);})),vr=zn((function(t,e,n,r,s,i){if(2!==t.h)return !1;const o=Vt(e);return te(o),(i=Ze(e,o,i))&&n!==i&&Ve(e,o,i),pt(t,e=Qe(e,r,n),s),!0}),Jn),_r=zn((function(t,e,n){return 2===t.h&&(Xn(e,n,mt(t)),!0)}),Zn),wr=Wn((function(t,e,n){return (0===t.h||2===t.h)&&(e=ze(e,Vt(e),n,2,!1),2==t.h?yt(t,ut.prototype.j,e):e.push(t.g.j()),!0)}),(function(t,e,n){if(null!=(e=An(le,e)))for(let i=0;i<e.length;i++){var r=t,s=e[i];null!=s&&(Ot(r,n,0),xt(r.g,s));}})),Ar=zn((function(t,e,n){return 0===t.h&&(Xn(e,n,t.g.m()),!0)}),(function(t,e,n){null!=(e=ue(e))&&(e=parseInt(e,10),Ot(t,n,0),Lt(t.g,e));})),br=Wn((function(t,e,n){return (0===t.h||2===t.h)&&(e=ze(e,Vt(e),n,2,!1),2==t.h?yt(t,ut.prototype.C,e):e.push(t.g.m()),!0)}),(function(t,e,n){if(null!=(e=An(ue,e))&&e.length){n=Mt(t,n);for(let n=0;n<e.length;n++)Lt(t.g,e[n]);Pt(t,n);}}));class Er{constructor(t,e){this.h=t,this.g=e,this.l=en,this.m=sn,this.defaultValue=void 0;}}function Tr(t,e){return new Er(t,e)}function kr(t,e){return (n,r)=>{t:{if(vt.length){const t=vt.pop();t.o(r),rt(t.g,n,r),n=t;}else n=new class{constructor(t,e){if(lt.length){const n=lt.pop();rt(n,t,e),t=n;}else t=new ut(t,e);this.g=t,this.l=this.g.g,this.h=this.m=-1,this.o(e);}o({aa:t=!1}={}){this.aa=t;}}(n,r);try{var s=new t;const r=s.u;En(e)(r,n),se&&delete r[se];var i=s;break t}finally{(s=n.g).h=null,s.s=!1,s.v=0,s.l=0,s.g=0,s.R=!1,n.m=-1,n.h=-1,100>vt.length&&vt.push(n);}i=void 0;}return i}}function xr(t){return function(){const e=new class{constructor(){this.l=[],this.h=0,this.g=new class{constructor(){this.g=[];}length(){return this.g.length}end(){const t=this.g;return this.g=[],t}};}};Vn(this.u,e,Dn(t)),St(e,e.g.end());const n=new Uint8Array(e.h),r=e.l,s=r.length;let i=0;for(let t=0;t<s;t++){const e=r[t];n.set(e,i),i+=e.length;}return e.l=[n],n}}var Lr=[0,dr,zn((function(t,e,n){return 2===t.h&&(Xn(e,n,(t=mt(t))===N()?void 0:t),!0)}),(function(t,e,n){if(null!=e){if(e instanceof vn){const r=e.Ea;return void(r&&(e=r(e),null!=e&&Rt(t,n,H(e).buffer)))}if(Array.isArray(e))return}Zn(t,e,n);}))],Fr=[0,pr],Sr=[0,ar,Ar,ur,ur,hr,Ar,Ar],Or=[0,ur,ur],Mr=class extends vn{constructor(){super();}};Mr.B=[6];var Pr=[0,ur,pr,ur,Ar,Ar,br,pr,pr,mr,Or,Ar],Rr=[0,pr,pr,pr],Cr=class extends vn{constructor(){super();}},Ir=[0],Dr=[0,ar],Br=[1,2,3,4,5],Ur=class extends vn{constructor(t){super(t,2);}},Nr={},Gr=[-2,Nr,ur];Nr[336783863]=wn([0,pr,ur,ur,ar,mr,[0,vr,Ir,Br,vr,Pr,Br,vr,Rr,Br,vr,Dr,Br,vr,Sr,Br],mr,Fr]);var jr=[0,dr,lr],Vr=[0,ir,ir,lr,lr,lr,lr,ir,hr,dr,cr,ir,ir,lr,cr,lr,lr,lr,dr],zr=[-1,{}],Wr=[0,pr,mr,2,zr],Xr=[0,pr,fr,mr,zr];function Hr(t,e){e=de(e),t=t.u;const n=Vt(t);te(n),Ve(t,n,2,""===e?void 0:e);}function Yr(t,e){mn(t,3,e);}function $r(t,e){mn(t,4,e);}var qr=class extends vn{constructor(t){super(t,500);}o(t){return sn(this,0,7,t)}};qr.B=[3,4,5,6,8,13,17,1005];var Kr=[-500,dr,dr,fr,fr,fr,fr,mr,Gr,yr,Lr,cr,cr,mr,Wr,mr,Xr,yr,jr,dr,mr,Vr,cr,fr,fr,988],Jr=[0,dr,dr,mr,zr],Zr=[-500,pr,pr,mr,[-1,{}],pr,999],Qr=[-500,pr,fr,fr,mr,[-2,{},ur],fr,998,fr],ts=[-500,pr,fr,mr,zr,fr,999];function es(t,e){an(t,qr,e);}function ns(t,e){mn(t,10,e);}function rs(t,e){mn(t,15,e);}var ss=class extends vn{constructor(t){super(t,500);}o(t){return sn(this,0,1001,t)}};ss.B=[1,6,7,9,10,15,16,17,14,1002];var is=[-500,yr,Kr,yr,5,Zr,yr,Qr,cr,yr,ts,fr,cr,mr,Wr,mr,Xr,yr,Jr,fr,fr,fr,mr,Vr,dr,dr,lr,mr,980,zr,yr,Lr],os=kr(ss,is);ss.prototype.g=xr(is);var as=[0,yr,[0,ar,ar,ar]],hs=class extends vn{constructor(t){super(t);}},cs=[0,ar,er,pr,pr],us=class extends vn{constructor(t){super(t);}g(){return rn(this,hs,1)}};us.B=[1];var ls=[0,yr,cs],fs=kr(us,ls),ds=[0,ar,er],ps=[0,ar,ar,mr,as],gs=class extends vn{constructor(t){super(t);}},ms=[0,ar,ar,ar,ar],ys=[0,er,er,er,er],vs=class extends vn{constructor(t){super(t);}},_s=[0,er,er,pr,er],ws=class extends vn{constructor(t){super(t);}h(){return en(this,gs,2)}g(){return rn(this,vs,5)}};ws.B=[5];var As=[0,Ar,mr,ms,mr,ys,mr,ps,yr,_s],bs=class extends vn{constructor(t){super(t);}};bs.B=[1,2,3,8,9];var Es=kr(bs,[0,fr,hr,rr,mr,As,pr,pr,sr,yr,ds,fr,sr]),Ts=class extends vn{constructor(t){super(t);}},ks=[0,er,er,er,er,er],xs=class extends vn{constructor(t){super(t);}};xs.B=[1];var Ls=kr(xs,[0,yr,ks]),Fs=class extends vn{constructor(t){super(t);}},Ss=[0,er,er,er,er,er],Os=class extends vn{constructor(t){super(t);}};Os.B=[1];var Ms=kr(Os,[0,yr,Ss]),Ps=class extends vn{constructor(t){super(t);}};Ps.B=[3];var Rs=[0,ar,ar,rr,Ar],Cs=class extends vn{constructor(){super();}};Cs.prototype.g=xr([0,er,er,er,er,er,sr]);var Is=class extends vn{constructor(t){super(t);}},Ds=[0,ar,2,pr,mr,ls],Bs=class extends vn{constructor(t){super(t);}};Bs.B=[1];var Us=kr(Bs,[0,yr,Ds,sr]),Ns=class extends vn{constructor(t){super(t);}};Ns.B=[1];var Gs=class extends vn{constructor(t){super(t);}fa(){const t=Xe(this);return null==t?N():t}},js=class extends vn{constructor(t){super(t);}},Vs=[1,2],zs=[0,vr,[0,rr],Vs,vr,[0,_r],Vs,ar,pr],Ws=class extends vn{constructor(t){super(t);}};Ws.B=[1];var Xs=kr(Ws,[0,yr,zs,sr]),Hs=class extends vn{constructor(t){super(t);}};Hs.B=[4,5];var Ys=[0,pr,ar,er,fr,fr],$s=class extends vn{constructor(t){super(t);}},qs=[0,ur,ur],Ks=class extends vn{constructor(t){super(t);}},Js=[1,2,3,4,5],Zs=class extends vn{constructor(t){super(t);}g(){return null!=Xe(this)}h(){return null!=un(this,2)}},Qs=[0,_r,pr,mr,[0,ar,sr,sr],mr,[0,or,sr]],ti=class extends vn{constructor(t){super(t);}g(){return he(Ne(this,2))??!1}},ei=[0,mr,Qs,ur,mr,[0,vr,Dr,Js,vr,Pr,Js,vr,Sr,Js,vr,Ir,Js,vr,Rr,Js]],ni=class extends vn{constructor(t){super(t);}},ri=[0,mr,ei,er,er,ar],si=Tr(502141897,ni);Nr[502141897]=wn(ri);var ii=[0,mr,Qs];Nr[512499200]=wn(ii);var oi=[0,mr,ii];Nr[515723506]=wn(oi);var ai=kr(class extends vn{constructor(t){super(t);}},[0,mr,[0,Ar,Ar,nr,wr],mr,Rs]),hi=[0,mr,ei];Nr[508981768]=wn(hi);var ci=class extends vn{constructor(t){super(t);}},ui=[0,mr,ei,er,mr,hi,ur],li=class extends vn{constructor(t){super(t);}},fi=[0,mr,ei,mr,ri,mr,ui,er,mr,oi];Nr[508968149]=wn(ui);var di=Tr(508968150,li);Nr[508968150]=wn(fi);var pi=class extends vn{constructor(t){super(t);}},gi=Tr(513916220,pi);Nr[513916220]=wn([0,mr,ei,mr,fi,ar]);var mi=class extends vn{constructor(t){super(t);}h(){return en(this,Hs,2)}g(){je(this,2);}},yi=[0,mr,ei,mr,Ys];Nr[478825465]=wn(yi);var vi=[0,mr,ei];Nr[478825422]=wn(vi);var _i=class extends vn{constructor(t){super(t);}},wi=[0,mr,ei,mr,vi,mr,yi,mr,yi],Ai=class extends vn{constructor(t){super(t);}},bi=[0,mr,ei,er,ar],Ei=class extends vn{constructor(t){super(t);}},Ti=[0,mr,ei,er],ki=class extends vn{constructor(t){super(t);}},xi=[0,mr,ei,mr,bi,mr,Ti,er],Li=class extends vn{constructor(t){super(t);}},Fi=[0,mr,ei,mr,xi,mr,wi];Nr[463370452]=wn(wi),Nr[464864288]=wn(bi),Nr[474472470]=wn(Ti);var Si=Tr(462713202,ki);Nr[462713202]=wn(xi);var Oi=Tr(479097054,Li);Nr[479097054]=wn(Fi);var Mi=class extends vn{constructor(t){super(t);}},Pi=Tr(456383383,Mi);Nr[456383383]=wn([0,mr,ei,mr,Ys]);var Ri=class extends vn{constructor(t){super(t);}},Ci=Tr(476348187,Ri);Nr[476348187]=wn([0,mr,ei,mr,qs]);var Ii=class extends vn{constructor(t){super(t);}},Di=[0,Ar,Ar],Bi=class extends vn{constructor(t){super(t);}};Bi.B=[3];var Ui=Tr(458105876,class extends vn{constructor(t){super(t);}g(){var t=this.u;const e=Vt(t);var n=2&e;return t=function(t,e,n){var r=Bi;const s=2&e;let i=!1;if(null==n){if(s)return $e();n=[];}else if(n.constructor===Le){if(0==(2&n.g)||s)return n;n=n.m();}else Array.isArray(n)?i=!!(2&jt(n)):n=[];if(s){if(!n.length)return $e();i||(i=!0,Xt(n));}else i&&(i=!1,n=qe(n));return i||(64&jt(n)?Gt(n,32):32&e&&Ut(n,32)),Ve(t,e,2,r=new Le(n,r,ve,void 0),!1),r}(t,e,Ge(t,e,2)),null==t||!n&&Bi&&(t.v=!0),n=t}});Nr[458105876]=wn([0,mr,Di,Hn,[!0,sr,mr,[0,pr,pr,fr]]]);var Ni=class extends vn{constructor(t){super(t);}},Gi=Tr(458105758,Ni);Nr[458105758]=wn([0,mr,ei,pr,mr,Di]);var ji=class extends vn{constructor(t){super(t);}};ji.B=[5,6];var Vi=Tr(443442058,ji);Nr[443442058]=wn([0,mr,ei,pr,ar,er,fr,fr]);var zi=class extends vn{constructor(t){super(t);}},Wi=[0,mr,ei,er,er,ar];Nr[514774813]=wn(Wi);var Xi=class extends vn{constructor(t){super(t);}},Hi=[0,mr,ei,er,ur],Yi=class extends vn{constructor(t){super(t);}},$i=[0,mr,ei,mr,Wi,mr,Hi,er];Nr[518928384]=wn(Hi);var qi=Tr(516587230,Yi);function Ki(t,e){return e=e?e.clone():new Hs,void 0!==t.displayNamesLocale?je(e,1,de(t.displayNamesLocale)):void 0===t.displayNamesLocale&&je(e,1),void 0!==t.maxResults?pn(e,2,t.maxResults):"maxResults"in t&&je(e,2),void 0!==t.scoreThreshold?gn(e,3,t.scoreThreshold):"scoreThreshold"in t&&je(e,3),void 0!==t.categoryAllowlist?Ke(e,4,t.categoryAllowlist):"categoryAllowlist"in t&&je(e,4),void 0!==t.categoryDenylist?Ke(e,5,t.categoryDenylist):"categoryDenylist"in t&&je(e,5),e}function Ji(t,e=-1,n=""){return {categories:t.map((t=>({index:ln(hn(t,1))??-1,score:fn(t,2)??0,categoryName:un(t,3)??""??"",displayName:un(t,4)??""??""}))),headIndex:e,headName:n}}function Zi(t){var e=He(t,3,ae),n=He(t,2,ue);const r=He(t,1,pe),s=He(t,9,pe),i={categories:[],keypoints:[]};for(let t=0;t<e.length;t++)i.categories.push({score:e[t],index:n[t]??-1,categoryName:r[t]??"",displayName:s[t]??""});if((e=en(t,ws,4)?.h())&&(i.boundingBox={originX:hn(e,1)??0,originY:hn(e,2)??0,width:hn(e,3)??0,height:hn(e,4)??0,angle:0}),en(t,ws,4)?.g().length)for(const e of en(t,ws,4).g())i.keypoints.push({x:We(e,1)??0,y:We(e,2)??0,score:We(e,4)??0,label:un(e,3)??""});return i}function Qi(t){const e=[];for(const n of rn(t,Fs,1))e.push({x:fn(n,1)??0,y:fn(n,2)??0,z:fn(n,3)??0});return e}function to(t){const e=[];for(const n of rn(t,Ts,1))e.push({x:fn(n,1)??0,y:fn(n,2)??0,z:fn(n,3)??0});return e}function eo(t){return Array.from(t,(t=>127<t?t-256:t))}function no(t,e){if(t.length!==e.length)throw Error(`Cannot compute cosine similarity between embeddings of different sizes (${t.length} vs. ${e.length}).`);let n=0,r=0,s=0;for(let i=0;i<t.length;i++)n+=t[i]*e[i],r+=t[i]*t[i],s+=e[i]*e[i];if(0>=r||0>=s)throw Error("Cannot compute cosine similarity on embedding with 0 norm.");return n/Math.sqrt(r*s)}let ro;Nr[516587230]=wn($i);const so=new Uint8Array([0,97,115,109,1,0,0,0,1,5,1,96,0,1,123,3,2,1,0,10,10,1,8,0,65,0,253,15,253,98,11]);async function io(){if(void 0===ro)try{await WebAssembly.instantiate(so),ro=!0;}catch{ro=!1;}return ro}async function oo(t,e=""){const n=await io()?"wasm_internal":"wasm_nosimd_internal";return {wasmLoaderPath:`${e}/${t}_${n}.js`,wasmBinaryPath:`${e}/${t}_${n}.wasm`}}var ao=class{};function ho(){const t=navigator.userAgent;return t.includes("Safari")&&!t.includes("Chrome")}async function co(t){if("function"!=typeof importScripts){const e=document.createElement("script");return e.src=t.toString(),e.crossOrigin="anonymous",new Promise(((t,n)=>{e.addEventListener("load",(()=>{t();}),!1),e.addEventListener("error",(t=>{n(t);}),!1),document.body.appendChild(e);}))}importScripts(t.toString());}function uo(t,e,n){t.m||console.error("No wasm multistream support detected: ensure dependency inclusion of :gl_graph_runner_internal_multi_input target"),n(e=t.i.stringToNewUTF8(e)),t.i._free(e);}function lo(t,e,n){if(!t.i.canvas)throw Error("No OpenGL canvas configured.");if(n?t.i._bindTextureToStream(n):t.i._bindTextureToCanvas(),!(n=t.i.canvas.getContext("webgl2")||t.i.canvas.getContext("webgl")))throw Error("Failed to obtain WebGL context from the provided canvas. `getContext()` should only be invoked with `webgl` or `webgl2`.");return t.i.gpuOriginForWebTexturesIsBottomLeft&&n.pixelStorei(n.UNPACK_FLIP_Y_WEBGL,!0),n.texImage2D(n.TEXTURE_2D,0,n.RGBA,n.RGBA,n.UNSIGNED_BYTE,e),t.i.gpuOriginForWebTexturesIsBottomLeft&&n.pixelStorei(n.UNPACK_FLIP_Y_WEBGL,!1),e.videoWidth?(n=e.videoWidth,e=e.videoHeight):e.naturalWidth?(n=e.naturalWidth,e=e.naturalHeight):(n=e.width,e=e.height),!t.l||n===t.i.canvas.width&&e===t.i.canvas.height||(t.i.canvas.width=n,t.i.canvas.height=e),[n,e]}function fo(t,e,n){t.m||console.error("No wasm multistream support detected: ensure dependency inclusion of :gl_graph_runner_internal_multi_input target");const r=new Uint32Array(e.length);for(let n=0;n<e.length;n++)r[n]=t.i.stringToNewUTF8(e[n]);e=t.i._malloc(4*r.length),t.i.HEAPU32.set(r,e>>2),n(e);for(const e of r)t.i._free(e);t.i._free(e);}function po(t,e,n){t.i.simpleListeners=t.i.simpleListeners||{},t.i.simpleListeners[e]=n;}function go(t,e,n){let r=[];t.i.simpleListeners=t.i.simpleListeners||{},t.i.simpleListeners[e]=(t,e,s)=>{e?(n(r,s),r=[]):r.push(t);};}ao.forVisionTasks=function(t){return oo("vision",t)},ao.forTextTasks=function(t){return oo("text",t)},ao.forAudioTasks=function(t){return oo("audio",t)},ao.isSimdSupported=function(){return io()};async function mo(t,e,n,r){return t=await(async(t,e,n,r,s)=>{if(e&&await co(e),!self.ModuleFactory)throw Error("ModuleFactory not set.");if(n&&(await co(n),!self.ModuleFactory))throw Error("ModuleFactory not set.");return self.Module&&s&&((e=self.Module).locateFile=s.locateFile,s.mainScriptUrlOrBlob&&(e.mainScriptUrlOrBlob=s.mainScriptUrlOrBlob)),s=await self.ModuleFactory(self.Module||s),self.ModuleFactory=self.Module=void 0,new t(s,r)})(t,n.wasmLoaderPath,n.assetLoaderPath,e,{locateFile:t=>t.endsWith(".wasm")?n.wasmBinaryPath.toString():n.assetBinaryPath&&t.endsWith(".data")?n.assetBinaryPath.toString():t}),await t.o(r),t}function yo(t,e){const n=en(t.baseOptions,Zs,1)||new Zs;"string"==typeof e?(je(n,2,de(e)),je(n,1)):e instanceof Uint8Array&&(je(n,1,Zt(e,!1,!1)),je(n,2)),sn(t.baseOptions,0,1,n);}function vo(t){try{const e=t.J.length;if(1===e)throw Error(t.J[0].message);if(1<e)throw Error("Encountered multiple errors: "+t.J.map((t=>t.message)).join(", "))}finally{t.J=[];}}function _o(t,e){t.I=Math.max(t.I,e);}function wo(t,e){t.A=new qr,Hr(t.A,"PassThroughCalculator"),Yr(t.A,"free_memory"),$r(t.A,"free_memory_unused_out"),ns(e,"free_memory"),es(e,t.A);}function Ao(t,e){Yr(t.A,e),$r(t.A,e+"_unused_out");}function bo(t){t.g.addBoolToStream(!0,"free_memory",t.I);}var Eo=class{constructor(t){this.g=t,this.J=[],this.I=0,this.g.setAutoRenderToScreen(!1);}l(t,e=!0){if(e){const e=t.baseOptions||{};if(t.baseOptions?.modelAssetBuffer&&t.baseOptions?.modelAssetPath)throw Error("Cannot set both baseOptions.modelAssetPath and baseOptions.modelAssetBuffer");if(!(en(this.baseOptions,Zs,1)?.g()||en(this.baseOptions,Zs,1)?.h()||t.baseOptions?.modelAssetBuffer||t.baseOptions?.modelAssetPath))throw Error("Either baseOptions.modelAssetPath or baseOptions.modelAssetBuffer must be set");if(function(t,e){let n=en(t.baseOptions,Ks,3);if(!n){var r=n=new Ks,s=new Cr;on(r,4,Js,s);}"delegate"in e&&("GPU"===e.delegate?(e=n,r=new Mr,on(e,2,Js,r)):(e=n,r=new Cr,on(e,4,Js,r))),sn(t.baseOptions,0,3,n);}(this,e),e.modelAssetPath)return fetch(e.modelAssetPath.toString()).then((t=>{if(t.ok)return t.arrayBuffer();throw Error(`Failed to fetch model: ${e.modelAssetPath} (${t.status})`)})).then((t=>{try{this.g.i.FS_unlink("/model.dat");}catch{}this.g.i.FS_createDataFile("/","model.dat",new Uint8Array(t),!0,!1,!1),yo(this,"/model.dat"),this.m(),this.P();}));yo(this,e.modelAssetBuffer);}return this.m(),this.P(),Promise.resolve()}P(){}W(){let t;if(this.g.W((e=>{t=os(e);})),!t)throw Error("Failed to retrieve CalculatorGraphConfig");return t}setGraph(t,e){this.g.attachErrorListener(((t,e)=>{this.J.push(Error(e));})),this.g.Aa(),this.g.setGraph(t,e),this.A=void 0,vo(this);}finishProcessing(){this.g.finishProcessing(),vo(this);}close(){this.A=void 0,this.g.closeGraph();}};Eo.prototype.close=Eo.prototype.close;function So(t,e){if(null===t)throw Error(`Unable to obtain required WebGL resource: ${e}`);return t}class Oo{constructor(t,e,n,r){this.g=t,this.h=e,this.m=n,this.l=r;}bind(){this.g.bindVertexArray(this.h);}close(){this.g.deleteVertexArray(this.h),this.g.deleteBuffer(this.m),this.g.deleteBuffer(this.l);}}function Mo(t,e,n){const r=t.h;if(n=So(r.createShader(n),"Failed to create WebGL shader"),r.shaderSource(n,e),r.compileShader(n),!r.getShaderParameter(n,r.COMPILE_STATUS))throw Error(`Could not compile WebGL shader: ${r.getShaderInfoLog(n)}`);return r.attachShader(t.g,n),n}function Po(t,e){const n=t.h,r=So(n.createVertexArray(),"Failed to create vertex array");n.bindVertexArray(r);const s=So(n.createBuffer(),"Failed to create buffer");n.bindBuffer(n.ARRAY_BUFFER,s),n.enableVertexAttribArray(t.s),n.vertexAttribPointer(t.s,2,n.FLOAT,!1,0,0),n.bufferData(n.ARRAY_BUFFER,new Float32Array([-1,-1,-1,1,1,1,1,-1]),n.STATIC_DRAW);const i=So(n.createBuffer(),"Failed to create buffer");return n.bindBuffer(n.ARRAY_BUFFER,i),n.enableVertexAttribArray(t.A),n.vertexAttribPointer(t.A,2,n.FLOAT,!1,0,0),n.bufferData(n.ARRAY_BUFFER,new Float32Array(e?[0,1,0,0,1,0,1,1]:[0,0,0,1,1,1,1,0]),n.STATIC_DRAW),n.bindBuffer(n.ARRAY_BUFFER,null),n.bindVertexArray(null),new Oo(n,r,s,i)}function Ro(t,e){if(t.h){if(e!==t.h)throw Error("Cannot change GL context once initialized")}else t.h=e;}function Co(t,e,n,r){if(Ro(t,e),!t.g){const e=t.h;if(t.g=So(e.createProgram(),"Failed to create WebGL program"),t.C=Mo(t,"\n attribute vec2 aVertex;\n attribute vec2 aTex;\n varying vec2 vTex;\n void main(void) {\n gl_Position = vec4(aVertex, 0.0, 1.0);\n vTex = aTex;\n }",e.VERTEX_SHADER),t.v=Mo(t,"\n precision mediump float;\n varying vec2 vTex;\n uniform sampler2D inputTexture;\n void main() {\n gl_FragColor = texture2D(inputTexture, vTex);\n }\n ",e.FRAGMENT_SHADER),e.linkProgram(t.g),!e.getProgramParameter(t.g,e.LINK_STATUS))throw Error(`Error during program linking: ${e.getProgramInfoLog(t.g)}`);t.s=e.getAttribLocation(t.g,"aVertex"),t.A=e.getAttribLocation(t.g,"aTex");}return n?(t.m||(t.m=Po(t,!0)),n=t.m):(t.j||(t.j=Po(t,!1)),n=t.j),e.useProgram(t.g),n.bind(),t=r(),n.g.bindVertexArray(null),t}function Io(t,e,n){Ro(t,e),t.l||(t.l=So(e.createFramebuffer(),"Failed to create framebuffe.")),e.bindFramebuffer(e.FRAMEBUFFER,t.l),e.framebufferTexture2D(e.FRAMEBUFFER,e.COLOR_ATTACHMENT0,e.TEXTURE_2D,n,0);}function Do(t){t.h?.bindFramebuffer(t.h.FRAMEBUFFER,null);}var Bo=class{close(){if(this.g){const t=this.h;t.deleteProgram(this.g),t.deleteShader(this.C),t.deleteShader(this.v);}this.l&&this.h.deleteFramebuffer(this.l),this.j&&this.j.close(),this.m&&this.m.close();}};function Uo(t,e){switch(e){case 0:return t.g.find((t=>t instanceof ImageData));case 1:return t.g.find((t=>"undefined"!=typeof ImageBitmap&&t instanceof ImageBitmap));case 2:return t.g.find((t=>"undefined"!=typeof WebGLTexture&&t instanceof WebGLTexture));default:throw Error(`Type is not supported: ${e}`)}}function No(t){var e=Uo(t,0);if(!e){e=jo(t);const n=Vo(t),r=new Uint8Array(t.width*t.height*4);Io(n,e,Go(t)),e.readPixels(0,0,t.width,t.height,e.RGBA,e.UNSIGNED_BYTE,r),Do(n),e=new ImageData(new Uint8ClampedArray(r.buffer),t.width,t.height),t.g.push(e);}return e}function Go(t){let e=Uo(t,2);if(!e){const n=jo(t);e=Wo(t);const r=Uo(t,1)||No(t);n.texImage2D(n.TEXTURE_2D,0,n.RGBA,n.RGBA,n.UNSIGNED_BYTE,r),Xo(t);}return e}function jo(t){if(!t.canvas)throw Error("Conversion to different image formats require that a canvas is passed when iniitializing the image.");return t.h||(t.h=So(t.canvas.getContext("webgl2"),"You cannot use a canvas that is already bound to a different type of rendering context.")),t.h}function Vo(t){return t.l||(t.l=new Bo),t.l}function zo(t){(t=jo(t)).texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_S,t.CLAMP_TO_EDGE),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_T,t.CLAMP_TO_EDGE),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MIN_FILTER,t.LINEAR),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MAG_FILTER,t.LINEAR);}function Wo(t){const e=jo(t);e.viewport(0,0,t.width,t.height),e.activeTexture(e.TEXTURE0);let n=Uo(t,2);return n?e.bindTexture(e.TEXTURE_2D,n):(n=So(e.createTexture(),"Failed to create texture"),t.g.push(n),t.m=!0,e.bindTexture(e.TEXTURE_2D,n),zo(t)),n}function Xo(t){t.h.bindTexture(t.h.TEXTURE_2D,null);}function Ho(t){const e=jo(t);return Co(Vo(t),e,!0,(()=>function(t,e){const n=t.canvas;if(n.width===t.width&&n.height===t.height)return e();const r=n.width,s=n.height;return n.width=t.width,n.height=t.height,t=e(),n.width=r,n.height=s,t}(t,(()=>{if(e.bindFramebuffer(e.FRAMEBUFFER,null),e.clearColor(0,0,0,0),e.clear(e.COLOR_BUFFER_BIT),e.drawArrays(e.TRIANGLE_FAN,0,4),!(t.canvas instanceof OffscreenCanvas))throw Error("Conversion to ImageBitmap requires that the MediaPipe Tasks is initialized with an OffscreenCanvas");return t.canvas.transferToImageBitmap()}))))}var Yo=class{constructor(t,e,n,r,s,i,o){this.g=t,this.j=e,this.m=n,this.canvas=r,this.l=s,this.width=i,this.height=o,(this.j||this.m)&&(0===--$o&&console.error("You seem to be creating MPImage instances without invoking .close(). This leaks resources."));}va(){return !!Uo(this,0)}ba(){return !!Uo(this,1)}K(){return !!Uo(this,2)}ra(){return No(this)}qa(){var t=Uo(this,1);return t||(Go(this),Wo(this),t=Ho(this),Xo(this),this.g.push(t),this.j=!0),t}V(){return Go(this)}clone(){const t=[];for(const e of this.g){let n;if(e instanceof ImageData)n=new ImageData(e.data,this.width,this.height);else if(e instanceof WebGLTexture){const t=jo(this),e=Vo(this);t.activeTexture(t.TEXTURE1),n=So(t.createTexture(),"Failed to create texture"),t.bindTexture(t.TEXTURE_2D,n),zo(this),t.texImage2D(t.TEXTURE_2D,0,t.RGBA,this.width,this.height,0,t.RGBA,t.UNSIGNED_BYTE,null),t.bindTexture(t.TEXTURE_2D,null),Io(e,t,n),Co(e,t,!1,(()=>{Wo(this),t.clearColor(0,0,0,0),t.clear(t.COLOR_BUFFER_BIT),t.drawArrays(t.TRIANGLE_FAN,0,4),Xo(this);})),Do(e),Xo(this);}else {if(!(e instanceof ImageBitmap))throw Error(`Type is not supported: ${e}`);Go(this),Wo(this),n=Ho(this),Xo(this);}t.push(n);}return new Yo(t,this.ba(),this.K(),this.canvas,this.l,this.width,this.height)}close(){this.j&&Uo(this,1).close(),this.m&&jo(this).deleteTexture(Uo(this,2)),$o=-1;}};Yo.prototype.close=Yo.prototype.close,Yo.prototype.clone=Yo.prototype.clone,Yo.prototype.getAsWebGLTexture=Yo.prototype.V,Yo.prototype.getAsImageBitmap=Yo.prototype.qa,Yo.prototype.getAsImageData=Yo.prototype.ra,Yo.prototype.hasWebGLTexture=Yo.prototype.K,Yo.prototype.hasImageBitmap=Yo.prototype.ba,Yo.prototype.hasImageData=Yo.prototype.va;var $o=250;function qo(t,e){switch(e){case 0:return t.g.find((t=>t instanceof Uint8Array));case 1:return t.g.find((t=>t instanceof Float32Array));case 2:return t.g.find((t=>"undefined"!=typeof WebGLTexture&&t instanceof WebGLTexture));default:throw Error(`Type is not supported: ${e}`)}}function Ko(t){var e=qo(t,1);if(!e){if(e=qo(t,0))e=new Float32Array(e).map((t=>t/255));else {e=new Float32Array(t.width*t.height);const r=Zo(t);var n=ta(t);if(Io(n,r,Jo(t)),"iPad Simulator;iPhone Simulator;iPod Simulator;iPad;iPhone;iPod".split(";").includes(navigator.platform)||navigator.userAgent.includes("Mac")&&"ontouchend"in document){n=new Float32Array(t.width*t.height*4),r.readPixels(0,0,t.width,t.height,r.RGBA,r.FLOAT,n);for(let t=0,r=0;t<e.length;++t,r+=4)e[t]=n[r];}else r.readPixels(0,0,t.width,t.height,r.RED,r.FLOAT,e);}t.g.push(e);}return e}function Jo(t){let e=qo(t,2);if(!e){const n=Zo(t);e=na(t);const r=Ko(t),s=Qo(t);n.texImage2D(n.TEXTURE_2D,0,s,t.width,t.height,0,n.RED,n.FLOAT,r),ra(t);}return e}function Zo(t){if(!t.canvas)throw Error("Conversion to different image formats require that a canvas is passed when initializing the image.");return t.h||(t.h=So(t.canvas.getContext("webgl2"),"You cannot use a canvas that is already bound to a different type of rendering context.")),t.h}function Qo(t){if(t=Zo(t),!sa)if(t.getExtension("EXT_color_buffer_float")&&t.getExtension("OES_texture_float_linear")&&t.getExtension("EXT_float_blend"))sa=t.R32F;else {if(!t.getExtension("EXT_color_buffer_half_float"))throw Error("GPU does not fully support 4-channel float32 or float16 formats");sa=t.R16F;}return sa}function ta(t){return t.l||(t.l=new Bo),t.l}function ea(t){(t=Zo(t)).texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_S,t.CLAMP_TO_EDGE),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_T,t.CLAMP_TO_EDGE),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MIN_FILTER,t.NEAREST),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MAG_FILTER,t.NEAREST);}function na(t){const e=Zo(t);e.viewport(0,0,t.width,t.height),e.activeTexture(e.TEXTURE0);let n=qo(t,2);return n?e.bindTexture(e.TEXTURE_2D,n):(n=So(e.createTexture(),"Failed to create texture"),t.g.push(n),t.m=!0,e.bindTexture(e.TEXTURE_2D,n),ea(t)),n}function ra(t){t.h.bindTexture(t.h.TEXTURE_2D,null);}var sa,ia=class{constructor(t,e,n,r,s,i){this.g=t,this.m=e,this.canvas=n,this.l=r,this.width=s,this.height=i,this.m&&(0===--oa&&console.error("You seem to be creating MPMask instances without invoking .close(). This leaks resources."));}wa(){return !!qo(this,0)}ua(){return !!qo(this,1)}K(){return !!qo(this,2)}sa(){return (e=qo(t=this,0))||(e=Ko(t),e=new Uint8Array(e.map((t=>255*t))),t.g.push(e)),e;var t,e;}pa(){return Ko(this)}V(){return Jo(this)}clone(){const t=[];for(const e of this.g){let n;if(e instanceof Uint8Array)n=new Uint8Array(e);else if(e instanceof Float32Array)n=new Float32Array(e);else {if(!(e instanceof WebGLTexture))throw Error(`Type is not supported: ${e}`);{const t=Zo(this),e=ta(this);t.activeTexture(t.TEXTURE1),n=So(t.createTexture(),"Failed to create texture"),t.bindTexture(t.TEXTURE_2D,n),ea(this);const r=Qo(this);t.texImage2D(t.TEXTURE_2D,0,r,this.width,this.height,0,t.RED,t.FLOAT,null),t.bindTexture(t.TEXTURE_2D,null),Io(e,t,n),Co(e,t,!1,(()=>{na(this),t.clearColor(0,0,0,0),t.clear(t.COLOR_BUFFER_BIT),t.drawArrays(t.TRIANGLE_FAN,0,4),ra(this);})),Do(e),ra(this);}}t.push(n);}return new ia(t,this.K(),this.canvas,this.l,this.width,this.height)}close(){this.m&&Zo(this).deleteTexture(qo(this,2)),oa=-1;}};ia.prototype.close=ia.prototype.close,ia.prototype.clone=ia.prototype.clone,ia.prototype.getAsWebGLTexture=ia.prototype.V,ia.prototype.getAsFloat32Array=ia.prototype.pa,ia.prototype.getAsUint8Array=ia.prototype.sa,ia.prototype.hasWebGLTexture=ia.prototype.K,ia.prototype.hasFloat32Array=ia.prototype.ua,ia.prototype.hasUint8Array=ia.prototype.wa;var oa=250;function aa(...t){return t.map((([t,e])=>({start:t,end:e})))}const ha=function(t){return class extends t{Aa(){this.i._registerModelResourcesGraphService();}}}((ca=class{constructor(t,e){this.l=!0,this.i=t,this.g=null,this.h=0,this.m="function"==typeof this.i._addIntToInputStream,void 0!==e?this.i.canvas=e:"undefined"==typeof OffscreenCanvas||ho()?(console.warn("OffscreenCanvas not supported and GraphRunner constructor glCanvas parameter is undefined. Creating backup canvas."),this.i.canvas=document.createElement("canvas")):this.i.canvas=new OffscreenCanvas(1,1);}async initializeGraph(t){const e=await(await fetch(t)).arrayBuffer();t=!(t.endsWith(".pbtxt")||t.endsWith(".textproto")),this.setGraph(new Uint8Array(e),t);}setGraphFromString(t){this.setGraph((new TextEncoder).encode(t),!1);}setGraph(t,e){const n=t.length,r=this.i._malloc(n);this.i.HEAPU8.set(t,r),e?this.i._changeBinaryGraph(n,r):this.i._changeTextGraph(n,r),this.i._free(r);}configureAudio(t,e,n,r,s){this.i._configureAudio||console.warn('Attempting to use configureAudio without support for input audio. Is build dep ":gl_graph_runner_audio" missing?'),uo(this,r||"input_audio",(r=>{uo(this,s=s||"audio_header",(s=>{this.i._configureAudio(r,s,t,e,n);}));}));}setAutoResizeCanvas(t){this.l=t;}setAutoRenderToScreen(t){this.i._setAutoRenderToScreen(t);}setGpuBufferVerticalFlip(t){this.i.gpuOriginForWebTexturesIsBottomLeft=t;}W(t){po(this,"__graph_config__",(e=>{t(e);})),uo(this,"__graph_config__",(t=>{this.i._getGraphConfig(t,void 0);})),delete this.i.simpleListeners.__graph_config__;}attachErrorListener(t){this.i.errorListener=t;}attachEmptyPacketListener(t,e){this.i.emptyPacketListeners=this.i.emptyPacketListeners||{},this.i.emptyPacketListeners[t]=e;}addAudioToStream(t,e,n){this.addAudioToStreamWithShape(t,0,0,e,n);}addAudioToStreamWithShape(t,e,n,r,s){const i=4*t.length;this.h!==i&&(this.g&&this.i._free(this.g),this.g=this.i._malloc(i),this.h=i),this.i.HEAPF32.set(t,this.g/4),uo(this,r,(t=>{this.i._addAudioToInputStream(this.g,e,n,t,s);}));}addGpuBufferToStream(t,e,n){uo(this,e,(e=>{const[r,s]=lo(this,t,e);this.i._addBoundTextureToStream(e,r,s,n);}));}addBoolToStream(t,e,n){uo(this,e,(e=>{this.i._addBoolToInputStream(t,e,n);}));}addDoubleToStream(t,e,n){uo(this,e,(e=>{this.i._addDoubleToInputStream(t,e,n);}));}addFloatToStream(t,e,n){uo(this,e,(e=>{this.i._addFloatToInputStream(t,e,n);}));}addIntToStream(t,e,n){uo(this,e,(e=>{this.i._addIntToInputStream(t,e,n);}));}addStringToStream(t,e,n){uo(this,e,(e=>{uo(this,t,(t=>{this.i._addStringToInputStream(t,e,n);}));}));}addStringRecordToStream(t,e,n){uo(this,e,(e=>{fo(this,Object.keys(t),(r=>{fo(this,Object.values(t),(s=>{this.i._addFlatHashMapToInputStream(r,s,Object.keys(t).length,e,n);}));}));}));}addProtoToStream(t,e,n,r){uo(this,n,(n=>{uo(this,e,(e=>{const s=this.i._malloc(t.length);this.i.HEAPU8.set(t,s),this.i._addProtoToInputStream(s,t.length,e,n,r),this.i._free(s);}));}));}addEmptyPacketToStream(t,e){uo(this,t,(t=>{this.i._addEmptyPacketToInputStream(t,e);}));}addBoolToInputSidePacket(t,e){uo(this,e,(e=>{this.i._addBoolToInputSidePacket(t,e);}));}addDoubleToInputSidePacket(t,e){uo(this,e,(e=>{this.i._addDoubleToInputSidePacket(t,e);}));}addFloatToInputSidePacket(t,e){uo(this,e,(e=>{this.i._addFloatToInputSidePacket(t,e);}));}addIntToInputSidePacket(t,e){uo(this,e,(e=>{this.i._addIntToInputSidePacket(t,e);}));}addStringToInputSidePacket(t,e){uo(this,e,(e=>{uo(this,t,(t=>{this.i._addStringToInputSidePacket(t,e);}));}));}addProtoToInputSidePacket(t,e,n){uo(this,n,(n=>{uo(this,e,(e=>{const r=this.i._malloc(t.length);this.i.HEAPU8.set(t,r),this.i._addProtoToInputSidePacket(r,t.length,e,n),this.i._free(r);}));}));}attachBoolListener(t,e){po(this,t,e),uo(this,t,(t=>{this.i._attachBoolListener(t);}));}attachBoolVectorListener(t,e){go(this,t,e),uo(this,t,(t=>{this.i._attachBoolVectorListener(t);}));}attachIntListener(t,e){po(this,t,e),uo(this,t,(t=>{this.i._attachIntListener(t);}));}attachIntVectorListener(t,e){go(this,t,e),uo(this,t,(t=>{this.i._attachIntVectorListener(t);}));}attachDoubleListener(t,e){po(this,t,e),uo(this,t,(t=>{this.i._attachDoubleListener(t);}));}attachDoubleVectorListener(t,e){go(this,t,e),uo(this,t,(t=>{this.i._attachDoubleVectorListener(t);}));}attachFloatListener(t,e){po(this,t,e),uo(this,t,(t=>{this.i._attachFloatListener(t);}));}attachFloatVectorListener(t,e){go(this,t,e),uo(this,t,(t=>{this.i._attachFloatVectorListener(t);}));}attachStringListener(t,e){po(this,t,e),uo(this,t,(t=>{this.i._attachStringListener(t);}));}attachStringVectorListener(t,e){go(this,t,e),uo(this,t,(t=>{this.i._attachStringVectorListener(t);}));}attachProtoListener(t,e,n){po(this,t,e),uo(this,t,(t=>{this.i._attachProtoListener(t,n||!1);}));}attachProtoVectorListener(t,e,n){go(this,t,e),uo(this,t,(t=>{this.i._attachProtoVectorListener(t,n||!1);}));}attachAudioListener(t,e,n){this.i._attachAudioListener||console.warn('Attempting to use attachAudioListener without support for output audio. Is build dep ":gl_graph_runner_audio_out" missing?'),po(this,t,((t,n)=>{t=new Float32Array(t.buffer,t.byteOffset,t.length/4),e(t,n);})),uo(this,t,(t=>{this.i._attachAudioListener(t,n||!1);}));}finishProcessing(){this.i._waitUntilIdle();}closeGraph(){this.i._closeGraph(),this.i.simpleListeners=void 0,this.i.emptyPacketListeners=void 0;}},class extends ca{get Y(){return this.i}ga(t,e,n){uo(this,e,(e=>{const[r,s]=lo(this,t,e);this.Y._addBoundTextureAsImageToStream(e,r,s,n);}));}S(t,e){po(this,t,e),uo(this,t,(t=>{this.Y._attachImageListener(t);}));}T(t,e){go(this,t,e),uo(this,t,(t=>{this.Y._attachImageVectorListener(t);}));}}));var ca,ua=class extends ha{};async function la(t,e,n){return async function(t,e,n,r){return mo(t,e,n,r)}(t,n.canvas??("undefined"==typeof OffscreenCanvas||ho()?document.createElement("canvas"):void 0),e,n)}function fa(t,e,n,r){if(t.Z){const i=new Cs;if(n?.regionOfInterest){if(!t.ea)throw Error("This task doesn't support region-of-interest.");var s=n.regionOfInterest;if(s.left>=s.right||s.top>=s.bottom)throw Error("Expected RectF with left < right and top < bottom.");if(0>s.left||0>s.top||1<s.right||1<s.bottom)throw Error("Expected RectF values to be in [0,1].");gn(i,1,(s.left+s.right)/2),gn(i,2,(s.top+s.bottom)/2),gn(i,4,s.right-s.left),gn(i,3,s.bottom-s.top);}else gn(i,1,.5),gn(i,2,.5),gn(i,4,1),gn(i,3,1);if(n?.rotationDegrees){if(0!=n?.rotationDegrees%90)throw Error("Expected rotation to be a multiple of 90°.");if(gn(i,5,-Math.PI*n.rotationDegrees/180),0!=n?.rotationDegrees%180){const[t,r]=void 0!==e.videoWidth?[e.videoWidth,e.videoHeight]:void 0!==e.naturalWidth?[e.naturalWidth,e.naturalHeight]:[e.width,e.height];n=fn(i,3)*r/t,s=fn(i,4)*t/r,gn(i,4,n),gn(i,3,s);}}t.g.addProtoToStream(i.g(),"mediapipe.NormalizedRect",t.Z,r);}t.g.ga(e,t.da,r??performance.now()),t.finishProcessing();}function da(t,e,n){if(t.baseOptions?.g())throw Error("Task is not initialized with image mode. 'runningMode' must be set to 'IMAGE'.");fa(t,e,n,t.I+1);}function pa(t,e,n,r){if(!t.baseOptions?.g())throw Error("Task is not initialized with video mode. 'runningMode' must be set to 'VIDEO'.");fa(t,e,n,r);}function ga(t,e,n){var r=e.data;const s=e.width,i=s*(e=e.height);if((r instanceof Uint8Array||r instanceof Float32Array)&&r.length!==i)throw Error("Unsupported channel count: "+r.length/i);return t=new ia([r],!1,t.g.i.canvas,t.O,s,e),n?t.clone():t}var ma=class extends Eo{constructor(t,e,n,r){super(t),this.g=t,this.da=e,this.Z=n,this.ea=r,this.O=new Bo;}l(t,e=!0){if("runningMode"in t&&dn(this.baseOptions,2,!!t.runningMode&&"IMAGE"!==t.runningMode),void 0!==t.canvas&&this.g.i.canvas!==t.canvas)throw Error("You must create a new task to reset the canvas.");return super.l(t,e)}close(){this.O.close(),super.close();}};ma.prototype.close=ma.prototype.close;var ya=class extends ma{constructor(t,e){super(new ua(t,e),"image_in","norm_rect_in",!1),this.j={detections:[]},this.h=new ni,t=new ti,sn(this.h,0,1,t),gn(this.h,2,.5),gn(this.h,3,.3);}get baseOptions(){return en(this.h,ti,1)}set baseOptions(t){sn(this.h,0,1,t);}o(t){return "minDetectionConfidence"in t&&gn(this.h,2,t.minDetectionConfidence??.5),"minSuppressionThreshold"in t&&gn(this.h,3,t.minSuppressionThreshold??.3),this.l(t)}F(t,e){return this.j={detections:[]},da(this,t,e),this.j}G(t,e,n){return this.j={detections:[]},pa(this,t,n,e),this.j}m(){var t=new ss;ns(t,"image_in"),ns(t,"norm_rect_in"),rs(t,"detections");const e=new Ur;yn(e,si,this.h);const n=new qr;Hr(n,"mediapipe.tasks.vision.face_detector.FaceDetectorGraph"),Yr(n,"IMAGE:image_in"),Yr(n,"NORM_RECT:norm_rect_in"),$r(n,"DETECTIONS:detections"),n.o(e),es(t,n),this.g.attachProtoVectorListener("detections",((t,e)=>{for(const e of t)t=Es(e),this.j.detections.push(Zi(t));_o(this,e);})),this.g.attachEmptyPacketListener("detections",(t=>{_o(this,t);})),t=t.g(),this.setGraph(new Uint8Array(t),!0);}};ya.prototype.detectForVideo=ya.prototype.G,ya.prototype.detect=ya.prototype.F,ya.prototype.setOptions=ya.prototype.o,ya.createFromModelPath=async function(t,e){return la(ya,t,{baseOptions:{modelAssetPath:e}})},ya.createFromModelBuffer=function(t,e){return la(ya,t,{baseOptions:{modelAssetBuffer:e}})},ya.createFromOptions=function(t,e){return la(ya,t,e)};var va=aa([61,146],[146,91],[91,181],[181,84],[84,17],[17,314],[314,405],[405,321],[321,375],[375,291],[61,185],[185,40],[40,39],[39,37],[37,0],[0,267],[267,269],[269,270],[270,409],[409,291],[78,95],[95,88],[88,178],[178,87],[87,14],[14,317],[317,402],[402,318],[318,324],[324,308],[78,191],[191,80],[80,81],[81,82],[82,13],[13,312],[312,311],[311,310],[310,415],[415,308]),_a=aa([263,249],[249,390],[390,373],[373,374],[374,380],[380,381],[381,382],[382,362],[263,466],[466,388],[388,387],[387,386],[386,385],[385,384],[384,398],[398,362]),wa=aa([276,283],[283,282],[282,295],[295,285],[300,293],[293,334],[334,296],[296,336]),Aa=aa([474,475],[475,476],[476,477],[477,474]),ba=aa([33,7],[7,163],[163,144],[144,145],[145,153],[153,154],[154,155],[155,133],[33,246],[246,161],[161,160],[160,159],[159,158],[158,157],[157,173],[173,133]),Ea=aa([46,53],[53,52],[52,65],[65,55],[70,63],[63,105],[105,66],[66,107]),Ta=aa([469,470],[470,471],[471,472],[472,469]),ka=aa([10,338],[338,297],[297,332],[332,284],[284,251],[251,389],[389,356],[356,454],[454,323],[323,361],[361,288],[288,397],[397,365],[365,379],[379,378],[378,400],[400,377],[377,152],[152,148],[148,176],[176,149],[149,150],[150,136],[136,172],[172,58],[58,132],[132,93],[93,234],[234,127],[127,162],[162,21],[21,54],[54,103],[103,67],[67,109],[109,10]),xa=[...va,..._a,...wa,...ba,...Ea,...ka],La=aa([127,34],[34,139],[139,127],[11,0],[0,37],[37,11],[232,231],[231,120],[120,232],[72,37],[37,39],[39,72],[128,121],[121,47],[47,128],[232,121],[121,128],[128,232],[104,69],[69,67],[67,104],[175,171],[171,148],[148,175],[118,50],[50,101],[101,118],[73,39],[39,40],[40,73],[9,151],[151,108],[108,9],[48,115],[115,131],[131,48],[194,204],[204,211],[211,194],[74,40],[40,185],[185,74],[80,42],[42,183],[183,80],[40,92],[92,186],[186,40],[230,229],[229,118],[118,230],[202,212],[212,214],[214,202],[83,18],[18,17],[17,83],[76,61],[61,146],[146,76],[160,29],[29,30],[30,160],[56,157],[157,173],[173,56],[106,204],[204,194],[194,106],[135,214],[214,192],[192,135],[203,165],[165,98],[98,203],[21,71],[71,68],[68,21],[51,45],[45,4],[4,51],[144,24],[24,23],[23,144],[77,146],[146,91],[91,77],[205,50],[50,187],[187,205],[201,200],[200,18],[18,201],[91,106],[106,182],[182,91],[90,91],[91,181],[181,90],[85,84],[84,17],[17,85],[206,203],[203,36],[36,206],[148,171],[171,140],[140,148],[92,40],[40,39],[39,92],[193,189],[189,244],[244,193],[159,158],[158,28],[28,159],[247,246],[246,161],[161,247],[236,3],[3,196],[196,236],[54,68],[68,104],[104,54],[193,168],[168,8],[8,193],[117,228],[228,31],[31,117],[189,193],[193,55],[55,189],[98,97],[97,99],[99,98],[126,47],[47,100],[100,126],[166,79],[79,218],[218,166],[155,154],[154,26],[26,155],[209,49],[49,131],[131,209],[135,136],[136,150],[150,135],[47,126],[126,217],[217,47],[223,52],[52,53],[53,223],[45,51],[51,134],[134,45],[211,170],[170,140],[140,211],[67,69],[69,108],[108,67],[43,106],[106,91],[91,43],[230,119],[119,120],[120,230],[226,130],[130,247],[247,226],[63,53],[53,52],[52,63],[238,20],[20,242],[242,238],[46,70],[70,156],[156,46],[78,62],[62,96],[96,78],[46,53],[53,63],[63,46],[143,34],[34,227],[227,143],[123,117],[117,111],[111,123],[44,125],[125,19],[19,44],[236,134],[134,51],[51,236],[216,206],[206,205],[205,216],[154,153],[153,22],[22,154],[39,37],[37,167],[167,39],[200,201],[201,208],[208,200],[36,142],[142,100],[100,36],[57,212],[212,202],[202,57],[20,60],[60,99],[99,20],[28,158],[158,157],[157,28],[35,226],[226,113],[113,35],[160,159],[159,27],[27,160],[204,202],[202,210],[210,204],[113,225],[225,46],[46,113],[43,202],[202,204],[204,43],[62,76],[76,77],[77,62],[137,123],[123,116],[116,137],[41,38],[38,72],[72,41],[203,129],[129,142],[142,203],[64,98],[98,240],[240,64],[49,102],[102,64],[64,49],[41,73],[73,74],[74,41],[212,216],[216,207],[207,212],[42,74],[74,184],[184,42],[169,170],[170,211],[211,169],[170,149],[149,176],[176,170],[105,66],[66,69],[69,105],[122,6],[6,168],[168,122],[123,147],[147,187],[187,123],[96,77],[77,90],[90,96],[65,55],[55,107],[107,65],[89,90],[90,180],[180,89],[101,100],[100,120],[120,101],[63,105],[105,104],[104,63],[93,137],[137,227],[227,93],[15,86],[86,85],[85,15],[129,102],[102,49],[49,129],[14,87],[87,86],[86,14],[55,8],[8,9],[9,55],[100,47],[47,121],[121,100],[145,23],[23,22],[22,145],[88,89],[89,179],[179,88],[6,122],[122,196],[196,6],[88,95],[95,96],[96,88],[138,172],[172,136],[136,138],[215,58],[58,172],[172,215],[115,48],[48,219],[219,115],[42,80],[80,81],[81,42],[195,3],[3,51],[51,195],[43,146],[146,61],[61,43],[171,175],[175,199],[199,171],[81,82],[82,38],[38,81],[53,46],[46,225],[225,53],[144,163],[163,110],[110,144],[52,65],[65,66],[66,52],[229,228],[228,117],[117,229],[34,127],[127,234],[234,34],[107,108],[108,69],[69,107],[109,108],[108,151],[151,109],[48,64],[64,235],[235,48],[62,78],[78,191],[191,62],[129,209],[209,126],[126,129],[111,35],[35,143],[143,111],[117,123],[123,50],[50,117],[222,65],[65,52],[52,222],[19,125],[125,141],[141,19],[221,55],[55,65],[65,221],[3,195],[195,197],[197,3],[25,7],[7,33],[33,25],[220,237],[237,44],[44,220],[70,71],[71,139],[139,70],[122,193],[193,245],[245,122],[247,130],[130,33],[33,247],[71,21],[21,162],[162,71],[170,169],[169,150],[150,170],[188,174],[174,196],[196,188],[216,186],[186,92],[92,216],[2,97],[97,167],[167,2],[141,125],[125,241],[241,141],[164,167],[167,37],[37,164],[72,38],[38,12],[12,72],[38,82],[82,13],[13,38],[63,68],[68,71],[71,63],[226,35],[35,111],[111,226],[101,50],[50,205],[205,101],[206,92],[92,165],[165,206],[209,198],[198,217],[217,209],[165,167],[167,97],[97,165],[220,115],[115,218],[218,220],[133,112],[112,243],[243,133],[239,238],[238,241],[241,239],[214,135],[135,169],[169,214],[190,173],[173,133],[133,190],[171,208],[208,32],[32,171],[125,44],[44,237],[237,125],[86,87],[87,178],[178,86],[85,86],[86,179],[179,85],[84,85],[85,180],[180,84],[83,84],[84,181],[181,83],[201,83],[83,182],[182,201],[137,93],[93,132],[132,137],[76,62],[62,183],[183,76],[61,76],[76,184],[184,61],[57,61],[61,185],[185,57],[212,57],[57,186],[186,212],[214,207],[207,187],[187,214],[34,143],[143,156],[156,34],[79,239],[239,237],[237,79],[123,137],[137,177],[177,123],[44,1],[1,4],[4,44],[201,194],[194,32],[32,201],[64,102],[102,129],[129,64],[213,215],[215,138],[138,213],[59,166],[166,219],[219,59],[242,99],[99,97],[97,242],[2,94],[94,141],[141,2],[75,59],[59,235],[235,75],[24,110],[110,228],[228,24],[25,130],[130,226],[226,25],[23,24],[24,229],[229,23],[22,23],[23,230],[230,22],[26,22],[22,231],[231,26],[112,26],[26,232],[232,112],[189,190],[190,243],[243,189],[221,56],[56,190],[190,221],[28,56],[56,221],[221,28],[27,28],[28,222],[222,27],[29,27],[27,223],[223,29],[30,29],[29,224],[224,30],[247,30],[30,225],[225,247],[238,79],[79,20],[20,238],[166,59],[59,75],[75,166],[60,75],[75,240],[240,60],[147,177],[177,215],[215,147],[20,79],[79,166],[166,20],[187,147],[147,213],[213,187],[112,233],[233,244],[244,112],[233,128],[128,245],[245,233],[128,114],[114,188],[188,128],[114,217],[217,174],[174,114],[131,115],[115,220],[220,131],[217,198],[198,236],[236,217],[198,131],[131,134],[134,198],[177,132],[132,58],[58,177],[143,35],[35,124],[124,143],[110,163],[163,7],[7,110],[228,110],[110,25],[25,228],[356,389],[389,368],[368,356],[11,302],[302,267],[267,11],[452,350],[350,349],[349,452],[302,303],[303,269],[269,302],[357,343],[343,277],[277,357],[452,453],[453,357],[357,452],[333,332],[332,297],[297,333],[175,152],[152,377],[377,175],[347,348],[348,330],[330,347],[303,304],[304,270],[270,303],[9,336],[336,337],[337,9],[278,279],[279,360],[360,278],[418,262],[262,431],[431,418],[304,408],[408,409],[409,304],[310,415],[415,407],[407,310],[270,409],[409,410],[410,270],[450,348],[348,347],[347,450],[422,430],[430,434],[434,422],[313,314],[314,17],[17,313],[306,307],[307,375],[375,306],[387,388],[388,260],[260,387],[286,414],[414,398],[398,286],[335,406],[406,418],[418,335],[364,367],[367,416],[416,364],[423,358],[358,327],[327,423],[251,284],[284,298],[298,251],[281,5],[5,4],[4,281],[373,374],[374,253],[253,373],[307,320],[320,321],[321,307],[425,427],[427,411],[411,425],[421,313],[313,18],[18,421],[321,405],[405,406],[406,321],[320,404],[404,405],[405,320],[315,16],[16,17],[17,315],[426,425],[425,266],[266,426],[377,400],[400,369],[369,377],[322,391],[391,269],[269,322],[417,465],[465,464],[464,417],[386,257],[257,258],[258,386],[466,260],[260,388],[388,466],[456,399],[399,419],[419,456],[284,332],[332,333],[333,284],[417,285],[285,8],[8,417],[346,340],[340,261],[261,346],[413,441],[441,285],[285,413],[327,460],[460,328],[328,327],[355,371],[371,329],[329,355],[392,439],[439,438],[438,392],[382,341],[341,256],[256,382],[429,420],[420,360],[360,429],[364,394],[394,379],[379,364],[277,343],[343,437],[437,277],[443,444],[444,283],[283,443],[275,440],[440,363],[363,275],[431,262],[262,369],[369,431],[297,338],[338,337],[337,297],[273,375],[375,321],[321,273],[450,451],[451,349],[349,450],[446,342],[342,467],[467,446],[293,334],[334,282],[282,293],[458,461],[461,462],[462,458],[276,353],[353,383],[383,276],[308,324],[324,325],[325,308],[276,300],[300,293],[293,276],[372,345],[345,447],[447,372],[352,345],[345,340],[340,352],[274,1],[1,19],[19,274],[456,248],[248,281],[281,456],[436,427],[427,425],[425,436],[381,256],[256,252],[252,381],[269,391],[391,393],[393,269],[200,199],[199,428],[428,200],[266,330],[330,329],[329,266],[287,273],[273,422],[422,287],[250,462],[462,328],[328,250],[258,286],[286,384],[384,258],[265,353],[353,342],[342,265],[387,259],[259,257],[257,387],[424,431],[431,430],[430,424],[342,353],[353,276],[276,342],[273,335],[335,424],[424,273],[292,325],[325,307],[307,292],[366,447],[447,345],[345,366],[271,303],[303,302],[302,271],[423,266],[266,371],[371,423],[294,455],[455,460],[460,294],[279,278],[278,294],[294,279],[271,272],[272,304],[304,271],[432,434],[434,427],[427,432],[272,407],[407,408],[408,272],[394,430],[430,431],[431,394],[395,369],[369,400],[400,395],[334,333],[333,299],[299,334],[351,417],[417,168],[168,351],[352,280],[280,411],[411,352],[325,319],[319,320],[320,325],[295,296],[296,336],[336,295],[319,403],[403,404],[404,319],[330,348],[348,349],[349,330],[293,298],[298,333],[333,293],[323,454],[454,447],[447,323],[15,16],[16,315],[315,15],[358,429],[429,279],[279,358],[14,15],[15,316],[316,14],[285,336],[336,9],[9,285],[329,349],[349,350],[350,329],[374,380],[380,252],[252,374],[318,402],[402,403],[403,318],[6,197],[197,419],[419,6],[318,319],[319,325],[325,318],[367,364],[364,365],[365,367],[435,367],[367,397],[397,435],[344,438],[438,439],[439,344],[272,271],[271,311],[311,272],[195,5],[5,281],[281,195],[273,287],[287,291],[291,273],[396,428],[428,199],[199,396],[311,271],[271,268],[268,311],[283,444],[444,445],[445,283],[373,254],[254,339],[339,373],[282,334],[334,296],[296,282],[449,347],[347,346],[346,449],[264,447],[447,454],[454,264],[336,296],[296,299],[299,336],[338,10],[10,151],[151,338],[278,439],[439,455],[455,278],[292,407],[407,415],[415,292],[358,371],[371,355],[355,358],[340,345],[345,372],[372,340],[346,347],[347,280],[280,346],[442,443],[443,282],[282,442],[19,94],[94,370],[370,19],[441,442],[442,295],[295,441],[248,419],[419,197],[197,248],[263,255],[255,359],[359,263],[440,275],[275,274],[274,440],[300,383],[383,368],[368,300],[351,412],[412,465],[465,351],[263,467],[467,466],[466,263],[301,368],[368,389],[389,301],[395,378],[378,379],[379,395],[412,351],[351,419],[419,412],[436,426],[426,322],[322,436],[2,164],[164,393],[393,2],[370,462],[462,461],[461,370],[164,0],[0,267],[267,164],[302,11],[11,12],[12,302],[268,12],[12,13],[13,268],[293,300],[300,301],[301,293],[446,261],[261,340],[340,446],[330,266],[266,425],[425,330],[426,423],[423,391],[391,426],[429,355],[355,437],[437,429],[391,327],[327,326],[326,391],[440,457],[457,438],[438,440],[341,382],[382,362],[362,341],[459,457],[457,461],[461,459],[434,430],[430,394],[394,434],[414,463],[463,362],[362,414],[396,369],[369,262],[262,396],[354,461],[461,457],[457,354],[316,403],[403,402],[402,316],[315,404],[404,403],[403,315],[314,405],[405,404],[404,314],[313,406],[406,405],[405,313],[421,418],[418,406],[406,421],[366,401],[401,361],[361,366],[306,408],[408,407],[407,306],[291,409],[409,408],[408,291],[287,410],[410,409],[409,287],[432,436],[436,410],[410,432],[434,416],[416,411],[411,434],[264,368],[368,383],[383,264],[309,438],[438,457],[457,309],[352,376],[376,401],[401,352],[274,275],[275,4],[4,274],[421,428],[428,262],[262,421],[294,327],[327,358],[358,294],[433,416],[416,367],[367,433],[289,455],[455,439],[439,289],[462,370],[370,326],[326,462],[2,326],[326,370],[370,2],[305,460],[460,455],[455,305],[254,449],[449,448],[448,254],[255,261],[261,446],[446,255],[253,450],[450,449],[449,253],[252,451],[451,450],[450,252],[256,452],[452,451],[451,256],[341,453],[453,452],[452,341],[413,464],[464,463],[463,413],[441,413],[413,414],[414,441],[258,442],[442,441],[441,258],[257,443],[443,442],[442,257],[259,444],[444,443],[443,259],[260,445],[445,444],[444,260],[467,342],[342,445],[445,467],[459,458],[458,250],[250,459],[289,392],[392,290],[290,289],[290,328],[328,460],[460,290],[376,433],[433,435],[435,376],[250,290],[290,392],[392,250],[411,416],[416,433],[433,411],[341,463],[463,464],[464,341],[453,464],[464,465],[465,453],[357,465],[465,412],[412,357],[343,412],[412,399],[399,343],[360,363],[363,440],[440,360],[437,399],[399,456],[456,437],[420,456],[456,363],[363,420],[401,435],[435,288],[288,401],[372,383],[383,353],[353,372],[339,255],[255,249],[249,339],[448,261],[261,255],[255,448],[133,243],[243,190],[190,133],[133,155],[155,112],[112,133],[33,246],[246,247],[247,33],[33,130],[130,25],[25,33],[398,384],[384,286],[286,398],[362,398],[398,414],[414,362],[362,463],[463,341],[341,362],[263,359],[359,467],[467,263],[263,249],[249,255],[255,263],[466,467],[467,260],[260,466],[75,60],[60,166],[166,75],[238,239],[239,79],[79,238],[162,127],[127,139],[139,162],[72,11],[11,37],[37,72],[121,232],[232,120],[120,121],[73,72],[72,39],[39,73],[114,128],[128,47],[47,114],[233,232],[232,128],[128,233],[103,104],[104,67],[67,103],[152,175],[175,148],[148,152],[119,118],[118,101],[101,119],[74,73],[73,40],[40,74],[107,9],[9,108],[108,107],[49,48],[48,131],[131,49],[32,194],[194,211],[211,32],[184,74],[74,185],[185,184],[191,80],[80,183],[183,191],[185,40],[40,186],[186,185],[119,230],[230,118],[118,119],[210,202],[202,214],[214,210],[84,83],[83,17],[17,84],[77,76],[76,146],[146,77],[161,160],[160,30],[30,161],[190,56],[56,173],[173,190],[182,106],[106,194],[194,182],[138,135],[135,192],[192,138],[129,203],[203,98],[98,129],[54,21],[21,68],[68,54],[5,51],[51,4],[4,5],[145,144],[144,23],[23,145],[90,77],[77,91],[91,90],[207,205],[205,187],[187,207],[83,201],[201,18],[18,83],[181,91],[91,182],[182,181],[180,90],[90,181],[181,180],[16,85],[85,17],[17,16],[205,206],[206,36],[36,205],[176,148],[148,140],[140,176],[165,92],[92,39],[39,165],[245,193],[193,244],[244,245],[27,159],[159,28],[28,27],[30,247],[247,161],[161,30],[174,236],[236,196],[196,174],[103,54],[54,104],[104,103],[55,193],[193,8],[8,55],[111,117],[117,31],[31,111],[221,189],[189,55],[55,221],[240,98],[98,99],[99,240],[142,126],[126,100],[100,142],[219,166],[166,218],[218,219],[112,155],[155,26],[26,112],[198,209],[209,131],[131,198],[169,135],[135,150],[150,169],[114,47],[47,217],[217,114],[224,223],[223,53],[53,224],[220,45],[45,134],[134,220],[32,211],[211,140],[140,32],[109,67],[67,108],[108,109],[146,43],[43,91],[91,146],[231,230],[230,120],[120,231],[113,226],[226,247],[247,113],[105,63],[63,52],[52,105],[241,238],[238,242],[242,241],[124,46],[46,156],[156,124],[95,78],[78,96],[96,95],[70,46],[46,63],[63,70],[116,143],[143,227],[227,116],[116,123],[123,111],[111,116],[1,44],[44,19],[19,1],[3,236],[236,51],[51,3],[207,216],[216,205],[205,207],[26,154],[154,22],[22,26],[165,39],[39,167],[167,165],[199,200],[200,208],[208,199],[101,36],[36,100],[100,101],[43,57],[57,202],[202,43],[242,20],[20,99],[99,242],[56,28],[28,157],[157,56],[124,35],[35,113],[113,124],[29,160],[160,27],[27,29],[211,204],[204,210],[210,211],[124,113],[113,46],[46,124],[106,43],[43,204],[204,106],[96,62],[62,77],[77,96],[227,137],[137,116],[116,227],[73,41],[41,72],[72,73],[36,203],[203,142],[142,36],[235,64],[64,240],[240,235],[48,49],[49,64],[64,48],[42,41],[41,74],[74,42],[214,212],[212,207],[207,214],[183,42],[42,184],[184,183],[210,169],[169,211],[211,210],[140,170],[170,176],[176,140],[104,105],[105,69],[69,104],[193,122],[122,168],[168,193],[50,123],[123,187],[187,50],[89,96],[96,90],[90,89],[66,65],[65,107],[107,66],[179,89],[89,180],[180,179],[119,101],[101,120],[120,119],[68,63],[63,104],[104,68],[234,93],[93,227],[227,234],[16,15],[15,85],[85,16],[209,129],[129,49],[49,209],[15,14],[14,86],[86,15],[107,55],[55,9],[9,107],[120,100],[100,121],[121,120],[153,145],[145,22],[22,153],[178,88],[88,179],[179,178],[197,6],[6,196],[196,197],[89,88],[88,96],[96,89],[135,138],[138,136],[136,135],[138,215],[215,172],[172,138],[218,115],[115,219],[219,218],[41,42],[42,81],[81,41],[5,195],[195,51],[51,5],[57,43],[43,61],[61,57],[208,171],[171,199],[199,208],[41,81],[81,38],[38,41],[224,53],[53,225],[225,224],[24,144],[144,110],[110,24],[105,52],[52,66],[66,105],[118,229],[229,117],[117,118],[227,34],[34,234],[234,227],[66,107],[107,69],[69,66],[10,109],[109,151],[151,10],[219,48],[48,235],[235,219],[183,62],[62,191],[191,183],[142,129],[129,126],[126,142],[116,111],[111,143],[143,116],[118,117],[117,50],[50,118],[223,222],[222,52],[52,223],[94,19],[19,141],[141,94],[222,221],[221,65],[65,222],[196,3],[3,197],[197,196],[45,220],[220,44],[44,45],[156,70],[70,139],[139,156],[188,122],[122,245],[245,188],[139,71],[71,162],[162,139],[149,170],[170,150],[150,149],[122,188],[188,196],[196,122],[206,216],[216,92],[92,206],[164,2],[2,167],[167,164],[242,141],[141,241],[241,242],[0,164],[164,37],[37,0],[11,72],[72,12],[12,11],[12,38],[38,13],[13,12],[70,63],[63,71],[71,70],[31,226],[226,111],[111,31],[36,101],[101,205],[205,36],[203,206],[206,165],[165,203],[126,209],[209,217],[217,126],[98,165],[165,97],[97,98],[237,220],[220,218],[218,237],[237,239],[239,241],[241,237],[210,214],[214,169],[169,210],[140,171],[171,32],[32,140],[241,125],[125,237],[237,241],[179,86],[86,178],[178,179],[180,85],[85,179],[179,180],[181,84],[84,180],[180,181],[182,83],[83,181],[181,182],[194,201],[201,182],[182,194],[177,137],[137,132],[132,177],[184,76],[76,183],[183,184],[185,61],[61,184],[184,185],[186,57],[57,185],[185,186],[216,212],[212,186],[186,216],[192,214],[214,187],[187,192],[139,34],[34,156],[156,139],[218,79],[79,237],[237,218],[147,123],[123,177],[177,147],[45,44],[44,4],[4,45],[208,201],[201,32],[32,208],[98,64],[64,129],[129,98],[192,213],[213,138],[138,192],[235,59],[59,219],[219,235],[141,242],[242,97],[97,141],[97,2],[2,141],[141,97],[240,75],[75,235],[235,240],[229,24],[24,228],[228,229],[31,25],[25,226],[226,31],[230,23],[23,229],[229,230],[231,22],[22,230],[230,231],[232,26],[26,231],[231,232],[233,112],[112,232],[232,233],[244,189],[189,243],[243,244],[189,221],[221,190],[190,189],[222,28],[28,221],[221,222],[223,27],[27,222],[222,223],[224,29],[29,223],[223,224],[225,30],[30,224],[224,225],[113,247],[247,225],[225,113],[99,60],[60,240],[240,99],[213,147],[147,215],[215,213],[60,20],[20,166],[166,60],[192,187],[187,213],[213,192],[243,112],[112,244],[244,243],[244,233],[233,245],[245,244],[245,128],[128,188],[188,245],[188,114],[114,174],[174,188],[134,131],[131,220],[220,134],[174,217],[217,236],[236,174],[236,198],[198,134],[134,236],[215,177],[177,58],[58,215],[156,143],[143,124],[124,156],[25,110],[110,7],[7,25],[31,228],[228,25],[25,31],[264,356],[356,368],[368,264],[0,11],[11,267],[267,0],[451,452],[452,349],[349,451],[267,302],[302,269],[269,267],[350,357],[357,277],[277,350],[350,452],[452,357],[357,350],[299,333],[333,297],[297,299],[396,175],[175,377],[377,396],[280,347],[347,330],[330,280],[269,303],[303,270],[270,269],[151,9],[9,337],[337,151],[344,278],[278,360],[360,344],[424,418],[418,431],[431,424],[270,304],[304,409],[409,270],[272,310],[310,407],[407,272],[322,270],[270,410],[410,322],[449,450],[450,347],[347,449],[432,422],[422,434],[434,432],[18,313],[313,17],[17,18],[291,306],[306,375],[375,291],[259,387],[387,260],[260,259],[424,335],[335,418],[418,424],[434,364],[364,416],[416,434],[391,423],[423,327],[327,391],[301,251],[251,298],[298,301],[275,281],[281,4],[4,275],[254,373],[373,253],[253,254],[375,307],[307,321],[321,375],[280,425],[425,411],[411,280],[200,421],[421,18],[18,200],[335,321],[321,406],[406,335],[321,320],[320,405],[405,321],[314,315],[315,17],[17,314],[423,426],[426,266],[266,423],[396,377],[377,369],[369,396],[270,322],[322,269],[269,270],[413,417],[417,464],[464,413],[385,386],[386,258],[258,385],[248,456],[456,419],[419,248],[298,284],[284,333],[333,298],[168,417],[417,8],[8,168],[448,346],[346,261],[261,448],[417,413],[413,285],[285,417],[326,327],[327,328],[328,326],[277,355],[355,329],[329,277],[309,392],[392,438],[438,309],[381,382],[382,256],[256,381],[279,429],[429,360],[360,279],[365,364],[364,379],[379,365],[355,277],[277,437],[437,355],[282,443],[443,283],[283,282],[281,275],[275,363],[363,281],[395,431],[431,369],[369,395],[299,297],[297,337],[337,299],[335,273],[273,321],[321,335],[348,450],[450,349],[349,348],[359,446],[446,467],[467,359],[283,293],[293,282],[282,283],[250,458],[458,462],[462,250],[300,276],[276,383],[383,300],[292,308],[308,325],[325,292],[283,276],[276,293],[293,283],[264,372],[372,447],[447,264],[346,352],[352,340],[340,346],[354,274],[274,19],[19,354],[363,456],[456,281],[281,363],[426,436],[436,425],[425,426],[380,381],[381,252],[252,380],[267,269],[269,393],[393,267],[421,200],[200,428],[428,421],[371,266],[266,329],[329,371],[432,287],[287,422],[422,432],[290,250],[250,328],[328,290],[385,258],[258,384],[384,385],[446,265],[265,342],[342,446],[386,387],[387,257],[257,386],[422,424],[424,430],[430,422],[445,342],[342,276],[276,445],[422,273],[273,424],[424,422],[306,292],[292,307],[307,306],[352,366],[366,345],[345,352],[268,271],[271,302],[302,268],[358,423],[423,371],[371,358],[327,294],[294,460],[460,327],[331,279],[279,294],[294,331],[303,271],[271,304],[304,303],[436,432],[432,427],[427,436],[304,272],[272,408],[408,304],[395,394],[394,431],[431,395],[378,395],[395,400],[400,378],[296,334],[334,299],[299,296],[6,351],[351,168],[168,6],[376,352],[352,411],[411,376],[307,325],[325,320],[320,307],[285,295],[295,336],[336,285],[320,319],[319,404],[404,320],[329,330],[330,349],[349,329],[334,293],[293,333],[333,334],[366,323],[323,447],[447,366],[316,15],[15,315],[315,316],[331,358],[358,279],[279,331],[317,14],[14,316],[316,317],[8,285],[285,9],[9,8],[277,329],[329,350],[350,277],[253,374],[374,252],[252,253],[319,318],[318,403],[403,319],[351,6],[6,419],[419,351],[324,318],[318,325],[325,324],[397,367],[367,365],[365,397],[288,435],[435,397],[397,288],[278,344],[344,439],[439,278],[310,272],[272,311],[311,310],[248,195],[195,281],[281,248],[375,273],[273,291],[291,375],[175,396],[396,199],[199,175],[312,311],[311,268],[268,312],[276,283],[283,445],[445,276],[390,373],[373,339],[339,390],[295,282],[282,296],[296,295],[448,449],[449,346],[346,448],[356,264],[264,454],[454,356],[337,336],[336,299],[299,337],[337,338],[338,151],[151,337],[294,278],[278,455],[455,294],[308,292],[292,415],[415,308],[429,358],[358,355],[355,429],[265,340],[340,372],[372,265],[352,346],[346,280],[280,352],[295,442],[442,282],[282,295],[354,19],[19,370],[370,354],[285,441],[441,295],[295,285],[195,248],[248,197],[197,195],[457,440],[440,274],[274,457],[301,300],[300,368],[368,301],[417,351],[351,465],[465,417],[251,301],[301,389],[389,251],[394,395],[395,379],[379,394],[399,412],[412,419],[419,399],[410,436],[436,322],[322,410],[326,2],[2,393],[393,326],[354,370],[370,461],[461,354],[393,164],[164,267],[267,393],[268,302],[302,12],[12,268],[312,268],[268,13],[13,312],[298,293],[293,301],[301,298],[265,446],[446,340],[340,265],[280,330],[330,425],[425,280],[322,426],[426,391],[391,322],[420,429],[429,437],[437,420],[393,391],[391,326],[326,393],[344,440],[440,438],[438,344],[458,459],[459,461],[461,458],[364,434],[434,394],[394,364],[428,396],[396,262],[262,428],[274,354],[354,457],[457,274],[317,316],[316,402],[402,317],[316,315],[315,403],[403,316],[315,314],[314,404],[404,315],[314,313],[313,405],[405,314],[313,421],[421,406],[406,313],[323,366],[366,361],[361,323],[292,306],[306,407],[407,292],[306,291],[291,408],[408,306],[291,287],[287,409],[409,291],[287,432],[432,410],[410,287],[427,434],[434,411],[411,427],[372,264],[264,383],[383,372],[459,309],[309,457],[457,459],[366,352],[352,401],[401,366],[1,274],[274,4],[4,1],[418,421],[421,262],[262,418],[331,294],[294,358],[358,331],[435,433],[433,367],[367,435],[392,289],[289,439],[439,392],[328,462],[462,326],[326,328],[94,2],[2,370],[370,94],[289,305],[305,455],[455,289],[339,254],[254,448],[448,339],[359,255],[255,446],[446,359],[254,253],[253,449],[449,254],[253,252],[252,450],[450,253],[252,256],[256,451],[451,252],[256,341],[341,452],[452,256],[414,413],[413,463],[463,414],[286,441],[441,414],[414,286],[286,258],[258,441],[441,286],[258,257],[257,442],[442,258],[257,259],[259,443],[443,257],[259,260],[260,444],[444,259],[260,467],[467,445],[445,260],[309,459],[459,250],[250,309],[305,289],[289,290],[290,305],[305,290],[290,460],[460,305],[401,376],[376,435],[435,401],[309,250],[250,392],[392,309],[376,411],[411,433],[433,376],[453,341],[341,464],[464,453],[357,453],[453,465],[465,357],[343,357],[357,412],[412,343],[437,343],[343,399],[399,437],[344,360],[360,440],[440,344],[420,437],[437,456],[456,420],[360,420],[420,363],[363,360],[361,401],[401,288],[288,361],[265,372],[372,353],[353,265],[390,339],[339,249],[249,390],[339,448],[448,255],[255,339]);function Fa(t){t.j={faceLandmarks:[],faceBlendshapes:[],facialTransformationMatrixes:[]};}var Sa=class extends ma{constructor(t,e){super(new ua(t,e),"image_in","norm_rect",!1),this.j={faceLandmarks:[],faceBlendshapes:[],facialTransformationMatrixes:[]},this.outputFacialTransformationMatrixes=this.outputFaceBlendshapes=!1,this.h=new li,t=new ti,sn(this.h,0,1,t),this.v=new ci,sn(this.h,0,3,this.v),this.s=new ni,sn(this.h,0,2,this.s),pn(this.s,4,1),gn(this.s,2,.5),gn(this.v,2,.5),gn(this.h,4,.5);}get baseOptions(){return en(this.h,ti,1)}set baseOptions(t){sn(this.h,0,1,t);}o(t){return "numFaces"in t&&pn(this.s,4,t.numFaces??1),"minFaceDetectionConfidence"in t&&gn(this.s,2,t.minFaceDetectionConfidence??.5),"minTrackingConfidence"in t&&gn(this.h,4,t.minTrackingConfidence??.5),"minFacePresenceConfidence"in t&&gn(this.v,2,t.minFacePresenceConfidence??.5),"outputFaceBlendshapes"in t&&(this.outputFaceBlendshapes=!!t.outputFaceBlendshapes),"outputFacialTransformationMatrixes"in t&&(this.outputFacialTransformationMatrixes=!!t.outputFacialTransformationMatrixes),this.l(t)}F(t,e){return Fa(this),da(this,t,e),this.j}G(t,e,n){return Fa(this),pa(this,t,n,e),this.j}m(){var t=new ss;ns(t,"image_in"),ns(t,"norm_rect"),rs(t,"face_landmarks");const e=new Ur;yn(e,di,this.h);const n=new qr;Hr(n,"mediapipe.tasks.vision.face_landmarker.FaceLandmarkerGraph"),Yr(n,"IMAGE:image_in"),Yr(n,"NORM_RECT:norm_rect"),$r(n,"NORM_LANDMARKS:face_landmarks"),n.o(e),es(t,n),this.g.attachProtoVectorListener("face_landmarks",((t,e)=>{for(const e of t)t=Ms(e),this.j.faceLandmarks.push(Qi(t));_o(this,e);})),this.g.attachEmptyPacketListener("face_landmarks",(t=>{_o(this,t);})),this.outputFaceBlendshapes&&(rs(t,"blendshapes"),$r(n,"BLENDSHAPES:blendshapes"),this.g.attachProtoVectorListener("blendshapes",((t,e)=>{if(this.outputFaceBlendshapes)for(const e of t)t=fs(e),this.j.faceBlendshapes.push(Ji(t.g()??[]));_o(this,e);})),this.g.attachEmptyPacketListener("blendshapes",(t=>{_o(this,t);}))),this.outputFacialTransformationMatrixes&&(rs(t,"face_geometry"),$r(n,"FACE_GEOMETRY:face_geometry"),this.g.attachProtoVectorListener("face_geometry",((t,e)=>{if(this.outputFacialTransformationMatrixes)for(const e of t)(t=en(ai(e),Ps,2))&&this.j.facialTransformationMatrixes.push({rows:ln(hn(t,1))??0,columns:ln(hn(t,2))??0,data:He(t,3,ae)??[]});_o(this,e);})),this.g.attachEmptyPacketListener("face_geometry",(t=>{_o(this,t);}))),t=t.g(),this.setGraph(new Uint8Array(t),!0);}};Sa.prototype.detectForVideo=Sa.prototype.G,Sa.prototype.detect=Sa.prototype.F,Sa.prototype.setOptions=Sa.prototype.o,Sa.createFromModelPath=function(t,e){return la(Sa,t,{baseOptions:{modelAssetPath:e}})},Sa.createFromModelBuffer=function(t,e){return la(Sa,t,{baseOptions:{modelAssetBuffer:e}})},Sa.createFromOptions=function(t,e){return la(Sa,t,e)},Sa.FACE_LANDMARKS_LIPS=va,Sa.FACE_LANDMARKS_LEFT_EYE=_a,Sa.FACE_LANDMARKS_LEFT_EYEBROW=wa,Sa.FACE_LANDMARKS_LEFT_IRIS=Aa,Sa.FACE_LANDMARKS_RIGHT_EYE=ba,Sa.FACE_LANDMARKS_RIGHT_EYEBROW=Ea,Sa.FACE_LANDMARKS_RIGHT_IRIS=Ta,Sa.FACE_LANDMARKS_FACE_OVAL=ka,Sa.FACE_LANDMARKS_CONTOURS=xa,Sa.FACE_LANDMARKS_TESSELATION=La;var Oa=class extends ma{constructor(t,e){super(new ua(t,e),"image_in","norm_rect",!0),this.j=new pi,t=new ti,sn(this.j,0,1,t);}get baseOptions(){return en(this.j,ti,1)}set baseOptions(t){sn(this.j,0,1,t);}o(t){return super.l(t)}Da(t,e,n){const r="function"!=typeof e?e:{};if(this.h="function"==typeof e?e:n,da(this,t,r??{}),!this.h)return this.s}m(){var t=new ss;ns(t,"image_in"),ns(t,"norm_rect"),rs(t,"stylized_image");const e=new Ur;yn(e,gi,this.j);const n=new qr;Hr(n,"mediapipe.tasks.vision.face_stylizer.FaceStylizerGraph"),Yr(n,"IMAGE:image_in"),Yr(n,"NORM_RECT:norm_rect"),$r(n,"STYLIZED_IMAGE:stylized_image"),n.o(e),es(t,n),this.g.S("stylized_image",((t,e)=>{var n=!this.h,r=t.data,s=t.width;const i=s*(t=t.height);if(r instanceof Uint8Array)if(r.length===3*i){const e=new Uint8ClampedArray(4*i);for(let t=0;t<i;++t)e[4*t]=r[3*t],e[4*t+1]=r[3*t+1],e[4*t+2]=r[3*t+2],e[4*t+3]=255;r=new ImageData(e,s,t);}else {if(r.length!==4*i)throw Error("Unsupported channel count: "+r.length/i);r=new ImageData(new Uint8ClampedArray(r.buffer,r.byteOffset,r.length),s,t);}else if(!(r instanceof WebGLTexture))throw Error(`Unsupported format: ${r.constructor.name}`);s=new Yo([r],!1,!1,this.g.i.canvas,this.O,s,t),this.s=n=n?s.clone():s,this.h&&this.h(n),_o(this,e);})),this.g.attachEmptyPacketListener("stylized_image",(t=>{this.s=null,this.h&&this.h(null),_o(this,t);})),t=t.g(),this.setGraph(new Uint8Array(t),!0);}};Oa.prototype.stylize=Oa.prototype.Da,Oa.prototype.setOptions=Oa.prototype.o,Oa.createFromModelPath=function(t,e){return la(Oa,t,{baseOptions:{modelAssetPath:e}})},Oa.createFromModelBuffer=function(t,e){return la(Oa,t,{baseOptions:{modelAssetBuffer:e}})},Oa.createFromOptions=function(t,e){return la(Oa,t,e)};var Ma=aa([0,1],[1,2],[2,3],[3,4],[0,5],[5,6],[6,7],[7,8],[5,9],[9,10],[10,11],[11,12],[9,13],[13,14],[14,15],[15,16],[13,17],[0,17],[17,18],[18,19],[19,20]);function Pa(t){t.gestures=[],t.landmarks=[],t.worldLandmarks=[],t.handedness=[];}function Ra(t){return 0===t.gestures.length?{gestures:[],landmarks:[],worldLandmarks:[],handedness:[],handednesses:[]}:{gestures:t.gestures,landmarks:t.landmarks,worldLandmarks:t.worldLandmarks,handedness:t.handedness,handednesses:t.handedness}}function Ca(t,e=!0){const n=[];for(const s of t){var r=fs(s);t=[];for(const n of r.g())r=e&&null!=hn(n,1)?ln(hn(n,1)):-1,t.push({score:fn(n,2)??0,index:r,categoryName:un(n,3)??""??"",displayName:un(n,4)??""??""});n.push(t);}return n}var Ia=class extends ma{constructor(t,e){super(new ua(t,e),"image_in","norm_rect",!1),this.gestures=[],this.landmarks=[],this.worldLandmarks=[],this.handedness=[],this.v=new Li,t=new ti,sn(this.v,0,1,t),this.C=new ki,sn(this.v,0,2,this.C),this.s=new Ei,sn(this.C,0,3,this.s),this.h=new Ai,sn(this.C,0,2,this.h),this.j=new _i,sn(this.v,0,3,this.j),gn(this.h,2,.5),gn(this.C,4,.5),gn(this.s,2,.5);}get baseOptions(){return en(this.v,ti,1)}set baseOptions(t){sn(this.v,0,1,t);}o(t){if(pn(this.h,3,t.numHands??1),"minHandDetectionConfidence"in t&&gn(this.h,2,t.minHandDetectionConfidence??.5),"minTrackingConfidence"in t&&gn(this.C,4,t.minTrackingConfidence??.5),"minHandPresenceConfidence"in t&&gn(this.s,2,t.minHandPresenceConfidence??.5),t.cannedGesturesClassifierOptions){var e=new mi,n=Ki(t.cannedGesturesClassifierOptions,en(this.j,mi,3)?.h());sn(e,0,2,n),sn(this.j,0,3,e);}else void 0===t.cannedGesturesClassifierOptions&&en(this.j,mi,3)?.g();return t.customGesturesClassifierOptions?(sn(e=new mi,0,2,n=Ki(t.customGesturesClassifierOptions,en(this.j,mi,4)?.h())),sn(this.j,0,4,e)):void 0===t.customGesturesClassifierOptions&&en(this.j,mi,4)?.g(),this.l(t)}ya(t,e){return Pa(this),da(this,t,e),Ra(this)}za(t,e,n){return Pa(this),pa(this,t,n,e),Ra(this)}m(){var t=new ss;ns(t,"image_in"),ns(t,"norm_rect"),rs(t,"hand_gestures"),rs(t,"hand_landmarks"),rs(t,"world_hand_landmarks"),rs(t,"handedness");const e=new Ur;yn(e,Oi,this.v);const n=new qr;Hr(n,"mediapipe.tasks.vision.gesture_recognizer.GestureRecognizerGraph"),Yr(n,"IMAGE:image_in"),Yr(n,"NORM_RECT:norm_rect"),$r(n,"HAND_GESTURES:hand_gestures"),$r(n,"LANDMARKS:hand_landmarks"),$r(n,"WORLD_LANDMARKS:world_hand_landmarks"),$r(n,"HANDEDNESS:handedness"),n.o(e),es(t,n),this.g.attachProtoVectorListener("hand_landmarks",((t,e)=>{for(const e of t){t=Ms(e);const n=[];for(const e of rn(t,Fs,1))n.push({x:fn(e,1)??0,y:fn(e,2)??0,z:fn(e,3)??0});this.landmarks.push(n);}_o(this,e);})),this.g.attachEmptyPacketListener("hand_landmarks",(t=>{_o(this,t);})),this.g.attachProtoVectorListener("world_hand_landmarks",((t,e)=>{for(const e of t){t=Ls(e);const n=[];for(const e of rn(t,Ts,1))n.push({x:fn(e,1)??0,y:fn(e,2)??0,z:fn(e,3)??0});this.worldLandmarks.push(n);}_o(this,e);})),this.g.attachEmptyPacketListener("world_hand_landmarks",(t=>{_o(this,t);})),this.g.attachProtoVectorListener("hand_gestures",((t,e)=>{this.gestures.push(...Ca(t,!1)),_o(this,e);})),this.g.attachEmptyPacketListener("hand_gestures",(t=>{_o(this,t);})),this.g.attachProtoVectorListener("handedness",((t,e)=>{this.handedness.push(...Ca(t)),_o(this,e);})),this.g.attachEmptyPacketListener("handedness",(t=>{_o(this,t);})),t=t.g(),this.setGraph(new Uint8Array(t),!0);}};function Da(t){return {landmarks:t.landmarks,worldLandmarks:t.worldLandmarks,handednesses:t.handedness,handedness:t.handedness}}Ia.prototype.recognizeForVideo=Ia.prototype.za,Ia.prototype.recognize=Ia.prototype.ya,Ia.prototype.setOptions=Ia.prototype.o,Ia.createFromModelPath=function(t,e){return la(Ia,t,{baseOptions:{modelAssetPath:e}})},Ia.createFromModelBuffer=function(t,e){return la(Ia,t,{baseOptions:{modelAssetBuffer:e}})},Ia.createFromOptions=function(t,e){return la(Ia,t,e)},Ia.HAND_CONNECTIONS=Ma;var Ba=class extends ma{constructor(t,e){super(new ua(t,e),"image_in","norm_rect",!1),this.landmarks=[],this.worldLandmarks=[],this.handedness=[],this.j=new ki,t=new ti,sn(this.j,0,1,t),this.s=new Ei,sn(this.j,0,3,this.s),this.h=new Ai,sn(this.j,0,2,this.h),pn(this.h,3,1),gn(this.h,2,.5),gn(this.s,2,.5),gn(this.j,4,.5);}get baseOptions(){return en(this.j,ti,1)}set baseOptions(t){sn(this.j,0,1,t);}o(t){return "numHands"in t&&pn(this.h,3,t.numHands??1),"minHandDetectionConfidence"in t&&gn(this.h,2,t.minHandDetectionConfidence??.5),"minTrackingConfidence"in t&&gn(this.j,4,t.minTrackingConfidence??.5),"minHandPresenceConfidence"in t&&gn(this.s,2,t.minHandPresenceConfidence??.5),this.l(t)}F(t,e){return this.landmarks=[],this.worldLandmarks=[],this.handedness=[],da(this,t,e),Da(this)}G(t,e,n){return this.landmarks=[],this.worldLandmarks=[],this.handedness=[],pa(this,t,n,e),Da(this)}m(){var t=new ss;ns(t,"image_in"),ns(t,"norm_rect"),rs(t,"hand_landmarks"),rs(t,"world_hand_landmarks"),rs(t,"handedness");const e=new Ur;yn(e,Si,this.j);const n=new qr;Hr(n,"mediapipe.tasks.vision.hand_landmarker.HandLandmarkerGraph"),Yr(n,"IMAGE:image_in"),Yr(n,"NORM_RECT:norm_rect"),$r(n,"LANDMARKS:hand_landmarks"),$r(n,"WORLD_LANDMARKS:world_hand_landmarks"),$r(n,"HANDEDNESS:handedness"),n.o(e),es(t,n),this.g.attachProtoVectorListener("hand_landmarks",((t,e)=>{for(const e of t)t=Ms(e),this.landmarks.push(Qi(t));_o(this,e);})),this.g.attachEmptyPacketListener("hand_landmarks",(t=>{_o(this,t);})),this.g.attachProtoVectorListener("world_hand_landmarks",((t,e)=>{for(const e of t)t=Ls(e),this.worldLandmarks.push(to(t));_o(this,e);})),this.g.attachEmptyPacketListener("world_hand_landmarks",(t=>{_o(this,t);})),this.g.attachProtoVectorListener("handedness",((t,e)=>{var n=this.handedness,r=n.push;const s=[];for(const e of t){t=fs(e);const n=[];for(const e of t.g())n.push({score:fn(e,2)??0,index:ln(hn(e,1))??-1,categoryName:un(e,3)??""??"",displayName:un(e,4)??""??""});s.push(n);}r.call(n,...s),_o(this,e);})),this.g.attachEmptyPacketListener("handedness",(t=>{_o(this,t);})),t=t.g(),this.setGraph(new Uint8Array(t),!0);}};Ba.prototype.detectForVideo=Ba.prototype.G,Ba.prototype.detect=Ba.prototype.F,Ba.prototype.setOptions=Ba.prototype.o,Ba.createFromModelPath=function(t,e){return la(Ba,t,{baseOptions:{modelAssetPath:e}})},Ba.createFromModelBuffer=function(t,e){return la(Ba,t,{baseOptions:{modelAssetBuffer:e}})},Ba.createFromOptions=function(t,e){return la(Ba,t,e)},Ba.HAND_CONNECTIONS=Ma;var Ua=class extends ma{constructor(t,e){super(new ua(t,e),"input_image","norm_rect",!0),this.j={classifications:[]},this.h=new Mi,t=new ti,sn(this.h,0,1,t);}get baseOptions(){return en(this.h,ti,1)}set baseOptions(t){sn(this.h,0,1,t);}o(t){var e=Ki(t,en(this.h,Hs,2));return sn(this.h,0,2,e),this.l(t)}ia(t,e){return this.j={classifications:[]},da(this,t,e),this.j}ja(t,e,n){return this.j={classifications:[]},pa(this,t,n,e),this.j}m(){var t=new ss;ns(t,"input_image"),ns(t,"norm_rect"),rs(t,"classifications");const e=new Ur;yn(e,Pi,this.h);const n=new qr;Hr(n,"mediapipe.tasks.vision.image_classifier.ImageClassifierGraph"),Yr(n,"IMAGE:input_image"),Yr(n,"NORM_RECT:norm_rect"),$r(n,"CLASSIFICATIONS:classifications"),n.o(e),es(t,n),this.g.attachProtoListener("classifications",((t,e)=>{this.j=function(t){const e={classifications:rn(t,Is,1).map((t=>Ji(en(t,us,4)?.g()??[],ln(hn(t,2)),un(t,3)??"")))};return null!=cn(t)&&(e.timestampMs=ln(cn(t))),e}(Us(t)),_o(this,e);})),this.g.attachEmptyPacketListener("classifications",(t=>{_o(this,t);})),t=t.g(),this.setGraph(new Uint8Array(t),!0);}};Ua.prototype.classifyForVideo=Ua.prototype.ja,Ua.prototype.classify=Ua.prototype.ia,Ua.prototype.setOptions=Ua.prototype.o,Ua.createFromModelPath=function(t,e){return la(Ua,t,{baseOptions:{modelAssetPath:e}})},Ua.createFromModelBuffer=function(t,e){return la(Ua,t,{baseOptions:{modelAssetBuffer:e}})},Ua.createFromOptions=function(t,e){return la(Ua,t,e)};var Na=class extends ma{constructor(t,e){super(new ua(t,e),"image_in","norm_rect",!0),this.h=new Ri,this.embeddings={embeddings:[]},t=new ti,sn(this.h,0,1,t);}get baseOptions(){return en(this.h,ti,1)}set baseOptions(t){sn(this.h,0,1,t);}o(t){var e=this.h,n=en(this.h,$s,2);return n=n?n.clone():new $s,void 0!==t.l2Normalize?dn(n,1,t.l2Normalize):"l2Normalize"in t&&je(n,1),void 0!==t.quantize?dn(n,2,t.quantize):"quantize"in t&&je(n,2),sn(e,0,2,n),this.l(t)}na(t,e){return da(this,t,e),this.embeddings}oa(t,e,n){return pa(this,t,n,e),this.embeddings}m(){var t=new ss;ns(t,"image_in"),ns(t,"norm_rect"),rs(t,"embeddings_out");const e=new Ur;yn(e,Ci,this.h);const n=new qr;Hr(n,"mediapipe.tasks.vision.image_embedder.ImageEmbedderGraph"),Yr(n,"IMAGE:image_in"),Yr(n,"NORM_RECT:norm_rect"),$r(n,"EMBEDDINGS:embeddings_out"),n.o(e),es(t,n),this.g.attachProtoListener("embeddings_out",((t,e)=>{t=Xs(t),this.embeddings=function(t){return {embeddings:rn(t,js,1).map((t=>{const e={headIndex:ln(hn(t,3))??-1,headName:un(t,4)??""??""};if(void 0!==tn(t,Ns,Je(t,1)))t=He(t=en(t,Ns,Je(t,1)),1,ae),e.floatEmbedding=t;else {const n=new Uint8Array(0);e.quantizedEmbedding=en(t,Gs,Je(t,2))?.fa()?.ha()??n;}return e})),timestampMs:ln(cn(t))}}(t),_o(this,e);})),this.g.attachEmptyPacketListener("embeddings_out",(t=>{_o(this,t);})),t=t.g(),this.setGraph(new Uint8Array(t),!0);}};Na.cosineSimilarity=function(t,e){if(t.floatEmbedding&&e.floatEmbedding)t=no(t.floatEmbedding,e.floatEmbedding);else {if(!t.quantizedEmbedding||!e.quantizedEmbedding)throw Error("Cannot compute cosine similarity between quantized and float embeddings.");t=no(eo(t.quantizedEmbedding),eo(e.quantizedEmbedding));}return t},Na.prototype.embedForVideo=Na.prototype.oa,Na.prototype.embed=Na.prototype.na,Na.prototype.setOptions=Na.prototype.o,Na.createFromModelPath=function(t,e){return la(Na,t,{baseOptions:{modelAssetPath:e}})},Na.createFromModelBuffer=function(t,e){return la(Na,t,{baseOptions:{modelAssetBuffer:e}})},Na.createFromOptions=function(t,e){return la(Na,t,e)};var Ga=class{constructor(t,e,n){this.confidenceMasks=t,this.categoryMask=e,this.qualityScores=n;}close(){this.confidenceMasks?.forEach((t=>{t.close();})),this.categoryMask?.close();}};function ja(t){t.categoryMask=void 0,t.confidenceMasks=void 0,t.qualityScores=void 0;}function Va(t){try{const e=new Ga(t.confidenceMasks,t.categoryMask,t.qualityScores);if(!t.j)return e;t.j(e);}finally{bo(t);}}Ga.prototype.close=Ga.prototype.close;var za=class extends ma{constructor(t,e){super(new ua(t,e),"image_in","norm_rect",!1),this.s=[],this.outputCategoryMask=!1,this.outputConfidenceMasks=!0,this.h=new Ni,this.v=new Ii,sn(this.h,0,3,this.v),t=new ti,sn(this.h,0,1,t);}get baseOptions(){return en(this.h,ti,1)}set baseOptions(t){sn(this.h,0,1,t);}o(t){return void 0!==t.displayNamesLocale?je(this.h,2,de(t.displayNamesLocale)):"displayNamesLocale"in t&&je(this.h,2),"outputCategoryMask"in t&&(this.outputCategoryMask=t.outputCategoryMask??!1),"outputConfidenceMasks"in t&&(this.outputConfidenceMasks=t.outputConfidenceMasks??!0),super.l(t)}P(){!function(t){const e=rn(t.W(),qr,1).filter((t=>(un(t,1)??"").includes("mediapipe.tasks.TensorsToSegmentationCalculator")));if(t.s=[],1<e.length)throw Error("The graph has more than one mediapipe.tasks.TensorsToSegmentationCalculator.");1===e.length&&(en(e[0],Ur,7)?.l()?.g()??new Map).forEach(((e,n)=>{t.s[Number(n)]=un(e,1)??"";}));}(this);}X(t,e,n){const r="function"!=typeof e?e:{};return this.j="function"==typeof e?e:n,ja(this),da(this,t,r),Va(this)}Ca(t,e,n,r){const s="function"!=typeof n?n:{};return this.j="function"==typeof n?n:r,ja(this),pa(this,t,s,e),Va(this)}ta(){return this.s}m(){var t=new ss;ns(t,"image_in"),ns(t,"norm_rect");const e=new Ur;yn(e,Gi,this.h);const n=new qr;Hr(n,"mediapipe.tasks.vision.image_segmenter.ImageSegmenterGraph"),Yr(n,"IMAGE:image_in"),Yr(n,"NORM_RECT:norm_rect"),n.o(e),es(t,n),wo(this,t),this.outputConfidenceMasks&&(rs(t,"confidence_masks"),$r(n,"CONFIDENCE_MASKS:confidence_masks"),Ao(this,"confidence_masks"),this.g.T("confidence_masks",((t,e)=>{this.confidenceMasks=t.map((t=>ga(this,t,!this.j))),_o(this,e);})),this.g.attachEmptyPacketListener("confidence_masks",(t=>{this.confidenceMasks=[],_o(this,t);}))),this.outputCategoryMask&&(rs(t,"category_mask"),$r(n,"CATEGORY_MASK:category_mask"),Ao(this,"category_mask"),this.g.S("category_mask",((t,e)=>{this.categoryMask=ga(this,t,!this.j),_o(this,e);})),this.g.attachEmptyPacketListener("category_mask",(t=>{this.categoryMask=void 0,_o(this,t);}))),rs(t,"quality_scores"),$r(n,"QUALITY_SCORES:quality_scores"),this.g.attachFloatVectorListener("quality_scores",((t,e)=>{this.qualityScores=t,_o(this,e);})),this.g.attachEmptyPacketListener("quality_scores",(t=>{this.categoryMask=void 0,_o(this,t);})),t=t.g(),this.setGraph(new Uint8Array(t),!0);}};za.prototype.getLabels=za.prototype.ta,za.prototype.segmentForVideo=za.prototype.Ca,za.prototype.segment=za.prototype.X,za.prototype.setOptions=za.prototype.o,za.createFromModelPath=function(t,e){return la(za,t,{baseOptions:{modelAssetPath:e}})},za.createFromModelBuffer=function(t,e){return la(za,t,{baseOptions:{modelAssetBuffer:e}})},za.createFromOptions=function(t,e){return la(za,t,e)};var Wa=class{constructor(t,e,n){this.confidenceMasks=t,this.categoryMask=e,this.qualityScores=n;}close(){this.confidenceMasks?.forEach((t=>{t.close();})),this.categoryMask?.close();}};Wa.prototype.close=Wa.prototype.close;var Xa=class extends vn{constructor(t){super(t);}},Ha=[0,ar,ar,ar],Ya=[0,tr,tr,tr,tr,ur],$a=[0,tr,tr,tr,tr,ur,tr,tr],qa=[0,mr,$a],Ka=[0,mr,qa,mr,Ha],Ja=[0,mr,$a,mr,Ha],Za=[0,mr,$a,ar,ar],Qa=[0,mr,Za,mr,Ha],th=[0,tr,tr,tr,tr,ur,mr,Ha,mr,Ha],eh=[0,tr,tr,tr,tr,ur,Ar],nh=class extends vn{constructor(t){super(t);}},rh=[0,tr,tr,ur],sh=class extends vn{constructor(){super();}};sh.B=[1];var ih=class extends vn{constructor(t){super(t);}},oh=[1,2,3,4,5,6,7,8,9,10,14,15],ah=[0,vr,$a,oh,vr,Ja,oh,vr,qa,oh,vr,Ka,oh,vr,rh,oh,vr,eh,oh,vr,Ya,oh,vr,[0,pr,tr,tr,tr,ur,ar,ur,ur,tr,3,mr,Ha],oh,vr,Za,oh,vr,Qa,oh,tr,mr,Ha,pr,vr,th,oh,vr,[0,yr,rh],oh],hh=[0,pr,ar,ar,ur],ch=class extends vn{constructor(){super();}};ch.B=[1],ch.prototype.g=xr([0,yr,ah,pr,mr,hh]);var uh=class extends ma{constructor(t,e){super(new ua(t,e),"image_in","norm_rect_in",!1),this.outputCategoryMask=!1,this.outputConfidenceMasks=!0,this.h=new Ni,this.v=new Ii,sn(this.h,0,3,this.v),t=new ti,sn(this.h,0,1,t);}get baseOptions(){return en(this.h,ti,1)}set baseOptions(t){sn(this.h,0,1,t);}o(t){return "outputCategoryMask"in t&&(this.outputCategoryMask=t.outputCategoryMask??!1),"outputConfidenceMasks"in t&&(this.outputConfidenceMasks=t.outputConfidenceMasks??!0),super.l(t)}X(t,e,n,r){const s="function"!=typeof n?n:{};this.j="function"==typeof n?n:r,this.qualityScores=this.categoryMask=this.confidenceMasks=void 0,n=this.I+1,r=new ch;const i=new ih;var o=new Xa;if(pn(o,1,255),sn(i,0,12,o),e.keypoint&&e.scribble)throw Error("Cannot provide both keypoint and scribble.");if(e.keypoint){var a=new nh;dn(a,3,!0),gn(a,1,e.keypoint.x),gn(a,2,e.keypoint.y),on(i,5,oh,a);}else {if(!e.scribble)throw Error("Must provide either a keypoint or a scribble.");for(a of(o=new sh,e.scribble))dn(e=new nh,3,!0),gn(e,1,a.x),gn(e,2,a.y),an(o,nh,e);on(i,15,oh,o);}an(r,ih,i),this.g.addProtoToStream(r.g(),"drishti.RenderData","roi_in",n),da(this,t,s);t:{try{const t=new Wa(this.confidenceMasks,this.categoryMask,this.qualityScores);if(!this.j){var h=t;break t}this.j(t);}finally{bo(this);}h=void 0;}return h}m(){var t=new ss;ns(t,"image_in"),ns(t,"roi_in"),ns(t,"norm_rect_in");const e=new Ur;yn(e,Gi,this.h);const n=new qr;Hr(n,"mediapipe.tasks.vision.interactive_segmenter.InteractiveSegmenterGraph"),Yr(n,"IMAGE:image_in"),Yr(n,"ROI:roi_in"),Yr(n,"NORM_RECT:norm_rect_in"),n.o(e),es(t,n),wo(this,t),this.outputConfidenceMasks&&(rs(t,"confidence_masks"),$r(n,"CONFIDENCE_MASKS:confidence_masks"),Ao(this,"confidence_masks"),this.g.T("confidence_masks",((t,e)=>{this.confidenceMasks=t.map((t=>ga(this,t,!this.j))),_o(this,e);})),this.g.attachEmptyPacketListener("confidence_masks",(t=>{this.confidenceMasks=[],_o(this,t);}))),this.outputCategoryMask&&(rs(t,"category_mask"),$r(n,"CATEGORY_MASK:category_mask"),Ao(this,"category_mask"),this.g.S("category_mask",((t,e)=>{this.categoryMask=ga(this,t,!this.j),_o(this,e);})),this.g.attachEmptyPacketListener("category_mask",(t=>{this.categoryMask=void 0,_o(this,t);}))),rs(t,"quality_scores"),$r(n,"QUALITY_SCORES:quality_scores"),this.g.attachFloatVectorListener("quality_scores",((t,e)=>{this.qualityScores=t,_o(this,e);})),this.g.attachEmptyPacketListener("quality_scores",(t=>{this.categoryMask=void 0,_o(this,t);})),t=t.g(),this.setGraph(new Uint8Array(t),!0);}};uh.prototype.segment=uh.prototype.X,uh.prototype.setOptions=uh.prototype.o,uh.createFromModelPath=function(t,e){return la(uh,t,{baseOptions:{modelAssetPath:e}})},uh.createFromModelBuffer=function(t,e){return la(uh,t,{baseOptions:{modelAssetBuffer:e}})},uh.createFromOptions=function(t,e){return la(uh,t,e)};var lh=class extends ma{constructor(t,e){super(new ua(t,e),"input_frame_gpu","norm_rect",!1),this.j={detections:[]},this.h=new ji,t=new ti,sn(this.h,0,1,t);}get baseOptions(){return en(this.h,ti,1)}set baseOptions(t){sn(this.h,0,1,t);}o(t){return void 0!==t.displayNamesLocale?je(this.h,2,de(t.displayNamesLocale)):"displayNamesLocale"in t&&je(this.h,2),void 0!==t.maxResults?pn(this.h,3,t.maxResults):"maxResults"in t&&je(this.h,3),void 0!==t.scoreThreshold?gn(this.h,4,t.scoreThreshold):"scoreThreshold"in t&&je(this.h,4),void 0!==t.categoryAllowlist?Ke(this.h,5,t.categoryAllowlist):"categoryAllowlist"in t&&je(this.h,5),void 0!==t.categoryDenylist?Ke(this.h,6,t.categoryDenylist):"categoryDenylist"in t&&je(this.h,6),this.l(t)}F(t,e){return this.j={detections:[]},da(this,t,e),this.j}G(t,e,n){return this.j={detections:[]},pa(this,t,n,e),this.j}m(){var t=new ss;ns(t,"input_frame_gpu"),ns(t,"norm_rect"),rs(t,"detections");const e=new Ur;yn(e,Vi,this.h);const n=new qr;Hr(n,"mediapipe.tasks.vision.ObjectDetectorGraph"),Yr(n,"IMAGE:input_frame_gpu"),Yr(n,"NORM_RECT:norm_rect"),$r(n,"DETECTIONS:detections"),n.o(e),es(t,n),this.g.attachProtoVectorListener("detections",((t,e)=>{for(const e of t)t=Es(e),this.j.detections.push(Zi(t));_o(this,e);})),this.g.attachEmptyPacketListener("detections",(t=>{_o(this,t);})),t=t.g(),this.setGraph(new Uint8Array(t),!0);}};lh.prototype.detectForVideo=lh.prototype.G,lh.prototype.detect=lh.prototype.F,lh.prototype.setOptions=lh.prototype.o,lh.createFromModelPath=async function(t,e){return la(lh,t,{baseOptions:{modelAssetPath:e}})},lh.createFromModelBuffer=function(t,e){return la(lh,t,{baseOptions:{modelAssetBuffer:e}})},lh.createFromOptions=function(t,e){return la(lh,t,e)};function fh(t){t.landmarks=[],t.worldLandmarks=[],t.v=void 0;}function dh(t){try{const e=new class{constructor(t,e,n){this.landmarks=t,this.worldLandmarks=e,this.g=n;}close(){this.g?.forEach((t=>{t.close();}));}}(t.landmarks,t.worldLandmarks,t.v);if(!t.s)return e;t.s(e);}finally{bo(t);}}var ph=class extends ma{constructor(t,e){super(new ua(t,e),"image_in","norm_rect",!1),this.landmarks=[],this.worldLandmarks=[],this.outputSegmentationMasks=!1,this.h=new Yi,t=new ti,sn(this.h,0,1,t),this.C=new Xi,sn(this.h,0,3,this.C),this.j=new zi,sn(this.h,0,2,this.j),pn(this.j,4,1),gn(this.j,2,.5),gn(this.C,2,.5),gn(this.h,4,.5);}get baseOptions(){return en(this.h,ti,1)}set baseOptions(t){sn(this.h,0,1,t);}o(t){return "numPoses"in t&&pn(this.j,4,t.numPoses??1),"minPoseDetectionConfidence"in t&&gn(this.j,2,t.minPoseDetectionConfidence??.5),"minTrackingConfidence"in t&&gn(this.h,4,t.minTrackingConfidence??.5),"minPosePresenceConfidence"in t&&gn(this.C,2,t.minPosePresenceConfidence??.5),"outputSegmentationMasks"in t&&(this.outputSegmentationMasks=t.outputSegmentationMasks??!1),this.l(t)}F(t,e,n){const r="function"!=typeof e?e:{};return this.s="function"==typeof e?e:n,fh(this),da(this,t,r),dh(this)}G(t,e,n,r){const s="function"!=typeof n?n:{};return this.s="function"==typeof n?n:r,fh(this),pa(this,t,s,e),dh(this)}m(){var t=new ss;ns(t,"image_in"),ns(t,"norm_rect"),rs(t,"normalized_landmarks"),rs(t,"world_landmarks"),rs(t,"segmentation_masks");const e=new Ur;yn(e,qi,this.h);const n=new qr;Hr(n,"mediapipe.tasks.vision.pose_landmarker.PoseLandmarkerGraph"),Yr(n,"IMAGE:image_in"),Yr(n,"NORM_RECT:norm_rect"),$r(n,"NORM_LANDMARKS:normalized_landmarks"),$r(n,"WORLD_LANDMARKS:world_landmarks"),n.o(e),es(t,n),wo(this,t),this.g.attachProtoVectorListener("normalized_landmarks",((t,e)=>{this.landmarks=[];for(const e of t)t=Ms(e),this.landmarks.push(Qi(t));_o(this,e);})),this.g.attachEmptyPacketListener("normalized_landmarks",(t=>{this.landmarks=[],_o(this,t);})),this.g.attachProtoVectorListener("world_landmarks",((t,e)=>{this.worldLandmarks=[];for(const e of t)t=Ls(e),this.worldLandmarks.push(to(t));_o(this,e);})),this.g.attachEmptyPacketListener("world_landmarks",(t=>{this.worldLandmarks=[],_o(this,t);})),this.outputSegmentationMasks&&($r(n,"SEGMENTATION_MASK:segmentation_masks"),Ao(this,"segmentation_masks"),this.g.T("segmentation_masks",((t,e)=>{this.v=t.map((t=>ga(this,t,!this.s))),_o(this,e);})),this.g.attachEmptyPacketListener("segmentation_masks",(t=>{this.v=[],_o(this,t);}))),t=t.g(),this.setGraph(new Uint8Array(t),!0);}};ph.prototype.detectForVideo=ph.prototype.G,ph.prototype.detect=ph.prototype.F,ph.prototype.setOptions=ph.prototype.o,ph.createFromModelPath=function(t,e){return la(ph,t,{baseOptions:{modelAssetPath:e}})},ph.createFromModelBuffer=function(t,e){return la(ph,t,{baseOptions:{modelAssetBuffer:e}})},ph.createFromOptions=function(t,e){return la(ph,t,e)},ph.POSE_CONNECTIONS=aa([0,1],[1,2],[2,3],[3,7],[0,4],[4,5],[5,6],[6,8],[9,10],[11,12],[11,13],[13,15],[15,17],[15,19],[15,21],[17,19],[12,14],[14,16],[16,18],[16,20],[16,22],[18,20],[11,23],[12,24],[23,24],[23,25],[24,26],[25,27],[26,28],[27,29],[28,30],[29,31],[30,32],[27,31],[28,32]);
|
|
14108
14201
|
|
|
14202
|
+
var ModelLoadingErrorOverlay = function ModelLoadingErrorOverlay(_a) {
|
|
14203
|
+
var error = _a.error;
|
|
14204
|
+
return /*#__PURE__*/React__default['default'].createElement(OverlayContainer, null, /*#__PURE__*/React__default['default'].createElement(OverlayInner, {
|
|
14205
|
+
style: {
|
|
14206
|
+
justifyContent: 'center'
|
|
14207
|
+
}
|
|
14208
|
+
}, /*#__PURE__*/React__default['default'].createElement("h3", {
|
|
14209
|
+
style: {
|
|
14210
|
+
marginBottom: 8
|
|
14211
|
+
}
|
|
14212
|
+
}, "We're sorry, an unexpected error has occurred."), /*#__PURE__*/React__default['default'].createElement("p", {
|
|
14213
|
+
style: {
|
|
14214
|
+
marginBottom: 0
|
|
14215
|
+
}
|
|
14216
|
+
}, /*#__PURE__*/React__default['default'].createElement("code", null, error.message))));
|
|
14217
|
+
};
|
|
14218
|
+
|
|
14109
14219
|
var NUM_KEYPOINTS = 6;
|
|
14110
14220
|
var GREEN = '#32EEDB';
|
|
14111
14221
|
var RED = '#FF2C35';
|