New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@datagrok-libraries/chem-meta

Package Overview
Dependencies
Maintainers
3
Versions
28
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@datagrok-libraries/chem-meta - npm Package Compare versions

Comparing version 1.0.7 to 1.0.8

src/formats/molfile-v2k-const.d.ts

2

package.json

@@ -7,3 +7,3 @@ {

"friendlyName": "Datagrok chem-meta library",
"version": "1.0.7",
"version": "1.0.8",
"description": "",

@@ -10,0 +10,0 @@ "dependencies": {

import { ChemicalTableParserBase } from './chemical-table-parser';
import { MOLFILE_VERSION, V2K_CONST } from './molfile-parsing-const';
import { V2K_CONST } from '../formats/molfile-v2k-const';
export class MolfileHandler extends ChemicalTableParserBase {

@@ -12,3 +12,3 @@ constructor(molfile) {

const molfileVersion = MolfileHandler.determineMolfileVersion(this.file);
const isV2K = (molfileVersion === MOLFILE_VERSION.V2000);
const isV2K = (molfileVersion === "V2000" /* MOLFILE_VERSION.V2000 */);
this.parseAtomAndBondCounts = isV2K ? this.parseAtomAndBondCountsV2K : this.parseAtomAndBondCountsV3K;

@@ -36,5 +36,5 @@ this.getAtomBlockIdx = isV2K ? this.getAtomBlockIdxV2K : this.getAtomBlockIdxV3K;

if (MolfileHandler.validateV3K(molfile))
return MOLFILE_VERSION.V3000;
return "V3000" /* MOLFILE_VERSION.V3000 */;
else if (MolfileHandler.validateV2K(molfile))
return MOLFILE_VERSION.V2000;
return "V2000" /* MOLFILE_VERSION.V2000 */;
else

@@ -119,2 +119,2 @@ throw new Error('Malformed molfile');

}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9sZmlsZS1oYW5kbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsibW9sZmlsZS1oYW5kbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBc0IsdUJBQXVCLEVBQW9CLE1BQU0seUJBQXlCLENBQUM7QUFDeEcsT0FBTyxFQUFDLGVBQWUsRUFBRSxTQUFTLEVBQVksTUFBTSx5QkFBeUIsQ0FBQztBQUU5RSxNQUFNLE9BQU8sY0FBZSxTQUFRLHVCQUF1QjtJQUN6RCxZQUFZLE9BQWU7UUFDekIsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2YsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRUQsNERBQTREO0lBQ3JELElBQUksQ0FBQyxPQUFlO1FBQ3pCLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFcEIsTUFBTSxjQUFjLEdBQUcsY0FBYyxDQUFDLHVCQUF1QixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN6RSxNQUFNLEtBQUssR0FBRyxDQUFDLGNBQWMsS0FBSyxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFekQsSUFBSSxDQUFDLHNCQUFzQixHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLHlCQUF5QixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMseUJBQXlCLENBQUM7UUFFdEcsSUFBSSxDQUFDLGVBQWUsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDO1FBRWpGLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDO1FBRXBGLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLG9CQUFvQixDQUFDO1FBRXZGLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1lBQzVELElBQUksQ0FBQyxxQkFBcUIsQ0FBQztRQUU3QixJQUFJLENBQUMsZUFBZSxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUM7UUFFakYsSUFBSSxDQUFDLHlCQUF5QixHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLDRCQUE0QixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsNEJBQTRCLENBQUM7SUFDakgsQ0FBQztJQUVNLE1BQU0sQ0FBQyxjQUFjLENBQUMsSUFBWTtRQUN2QyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVE7WUFDaEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMzQyxPQUFPLElBQUksQ0FBQyxRQUEwQixDQUFDO0lBQ3pDLENBQUM7SUFVUyxhQUFhLENBQUMsR0FBVztRQUNqQyxNQUFNLEtBQUssR0FBRyxHQUFHLENBQUM7UUFDbEIsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzFDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFFRCwwREFBMEQ7SUFDbEQsTUFBTSxDQUFDLHVCQUF1QixDQUFDLE9BQWU7UUFDcEQsSUFBSSxjQUFjLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQztZQUNyQyxPQUFPLGVBQWUsQ0FBQyxLQUFLLENBQUM7YUFDMUIsSUFBSSxjQUFjLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQztZQUMxQyxPQUFPLGVBQWUsQ0FBQyxLQUFLLENBQUM7O1lBRTdCLE1BQU0sSUFBSSxLQUFLLENBQUMsbUJBQW1CLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRU8scUJBQXFCLENBQUMsWUFBb0I7UUFDaEQsT0FBTyxJQUFJLENBQUMseUJBQXlCLENBQUMsWUFBWSxFQUFFLFNBQVMsQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUMvRSxDQUFDO0lBRU8scUJBQXFCLENBQUMsWUFBb0I7UUFDaEQsT0FBTyxJQUFJLENBQUMseUJBQXlCLENBQUMsWUFBWSxrQ0FBMEIsQ0FBQztJQUMvRSxDQUFDO0lBRU8sbUJBQW1CO1FBQ3pCLElBQUksR0FBRyxHQUFHLENBQUMsQ0FBQztRQUNaLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxTQUFTLENBQUMsbUJBQW1CLEVBQUUsRUFBRSxDQUFDO1lBQ3BELEdBQUcsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ2pDLE9BQU8sR0FBRyxDQUFDO0lBQ2IsQ0FBQztJQUVPLG1CQUFtQjtRQUN6QixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxvREFBNkIsQ0FBQztJQUN4RCxDQUFDO0lBRU8sa0JBQWtCO1FBQ3hCLElBQUksR0FBRyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBQ2xDLEdBQUcsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQy9CLE9BQU8sR0FBRyxDQUFDO0lBQ2IsQ0FBQztJQUVPLGtCQUFrQjtRQUN4QixJQUFJLEdBQUcsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sc0RBQTRCLENBQUM7UUFDeEQsR0FBRyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDL0IsT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDO0lBRU8sb0JBQW9CLENBQUMsWUFBb0I7UUFDL0MsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVPLG9CQUFvQixDQUFDLFlBQW9CO1FBQy9DLE9BQU8sSUFBSSxDQUFDLHlCQUF5QixDQUFDLFlBQVksMEJBQWtCLENBQUM7SUFDdkUsQ0FBQztJQUVPLDRCQUE0QixDQUFDLFlBQW9CO1FBQ3ZELE9BQU8sSUFBSSxDQUFDLHlCQUF5QixDQUFDLFlBQVksRUFBRSxTQUFTLENBQUMscUJBQXFCLENBQUMsQ0FBQztJQUN2RixDQUFDO0lBRU8sNEJBQTRCLENBQUMsWUFBb0I7UUFDdkQsT0FBTyxJQUFJLENBQUMseUJBQXlCLENBQUMsWUFBWSwwQ0FBa0MsQ0FBQztJQUN2RixDQUFDO0lBQ08sa0JBQWtCO1FBQ3hCLElBQUksR0FBRyxHQUFHLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUNqQyxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDLEVBQUU7WUFDckMsR0FBRyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDakMsT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDO0lBRU8sa0JBQWtCO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sc0RBQTRCLENBQUMsQ0FBQztJQUM1RSxDQUFDO0lBRU8sTUFBTSxDQUFDLFdBQVcsQ0FBQyxPQUFlO1FBQ3hDLE9BQU8sQ0FBQyxPQUFPLENBQUMsT0FBTyxnQ0FBa0IsS0FBSyxDQUFDLENBQUM7WUFDaEQsT0FBTyxDQUFDLE9BQU8sOEJBQWUsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFFTyxNQUFNLENBQUMsV0FBVyxDQUFDLE9BQWU7UUFDeEMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNoRCxPQUFPLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFFTyx5QkFBeUI7UUFDL0IsSUFBSSxLQUFLLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDcEMsSUFBSSxHQUFHLEdBQUcsS0FBSyxHQUFHLFNBQVMsQ0FBQyxvQkFBb0IsQ0FBQztRQUNqRCxNQUFNLFNBQVMsR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDNUQsS0FBSyxHQUFHLEdBQUcsQ0FBQztRQUNaLEdBQUcsSUFBSSxTQUFTLENBQUMsb0JBQW9CLENBQUM7UUFDdEMsTUFBTSxTQUFTLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQzVELE9BQU8sRUFBQyxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUMsQ0FBQztJQUN0RCxDQUFDO0lBQUEsQ0FBQztJQUVNLHlCQUF5QjtRQUMvQixtQkFBbUI7UUFDbkIsSUFBSSxLQUFLLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLG9EQUE2QixrQ0FBeUIsQ0FBQztRQUNwRixJQUFJLEdBQUcsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQzVDLE1BQU0sVUFBVSxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUU3RCxtQkFBbUI7UUFDbkIsS0FBSyxHQUFHLEdBQUcsR0FBRyxDQUFDLENBQUM7UUFDaEIsR0FBRyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDeEMsTUFBTSxVQUFVLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBRTdELE9BQU8sRUFBQyxTQUFTLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUMsQ0FBQztJQUN4RCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NoZW1pY2FsVGFibGVQYXJzZXIsIENoZW1pY2FsVGFibGVQYXJzZXJCYXNlLCBBdG9tQW5kQm9uZENvdW50c30gZnJvbSAnLi9jaGVtaWNhbC10YWJsZS1wYXJzZXInO1xuaW1wb3J0IHtNT0xGSUxFX1ZFUlNJT04sIFYyS19DT05TVCwgVjNLX0NPTlNUfSBmcm9tICcuL21vbGZpbGUtcGFyc2luZy1jb25zdCc7XG5cbmV4cG9ydCBjbGFzcyBNb2xmaWxlSGFuZGxlciBleHRlbmRzIENoZW1pY2FsVGFibGVQYXJzZXJCYXNlIGltcGxlbWVudHMgQ2hlbWljYWxUYWJsZVBhcnNlciB7XG4gIGNvbnN0cnVjdG9yKG1vbGZpbGU6IHN0cmluZykge1xuICAgIHN1cGVyKG1vbGZpbGUpO1xuICAgIHRoaXMuaW5pdChtb2xmaWxlKTtcbiAgfVxuXG4gIC8qKiBJbml0L3Jlc2V0IHRoZSBzdGF0ZSBvZiB0aGUgaGFuZGxlciBmb3IgYSBuZXcgbW9sZmlsZSAqL1xuICBwdWJsaWMgaW5pdChtb2xmaWxlOiBzdHJpbmcpIHtcbiAgICBzdXBlci5pbml0KG1vbGZpbGUpO1xuXG4gICAgY29uc3QgbW9sZmlsZVZlcnNpb24gPSBNb2xmaWxlSGFuZGxlci5kZXRlcm1pbmVNb2xmaWxlVmVyc2lvbih0aGlzLmZpbGUpO1xuICAgIGNvbnN0IGlzVjJLID0gKG1vbGZpbGVWZXJzaW9uID09PSBNT0xGSUxFX1ZFUlNJT04uVjIwMDApO1xuXG4gICAgdGhpcy5wYXJzZUF0b21BbmRCb25kQ291bnRzID0gaXNWMksgPyB0aGlzLnBhcnNlQXRvbUFuZEJvbmRDb3VudHNWMksgOiB0aGlzLnBhcnNlQXRvbUFuZEJvbmRDb3VudHNWM0s7XG5cbiAgICB0aGlzLmdldEF0b21CbG9ja0lkeCA9IGlzVjJLID8gdGhpcy5nZXRBdG9tQmxvY2tJZHhWMksgOiB0aGlzLmdldEF0b21CbG9ja0lkeFYzSztcblxuICAgIHRoaXMuZ2V0Q291bnRzTGluZUlkeCA9IGlzVjJLID8gdGhpcy5nZXRDb3VudHNMaW5lVjJLSWR4IDogdGhpcy5nZXRDb3VudHNMaW5lVjNLSWR4O1xuXG4gICAgdGhpcy5zaGlmdElkeFRvWENvbHVtbiA9IGlzVjJLID8gdGhpcy5zaGlmdElkeFRvWENvbHVtblYySyA6IHRoaXMuc2hpZnRJZHhUb1hDb2x1bW5WM0s7XG5cbiAgICB0aGlzLnNoaWZ0SWR4VG9BdG9tVHlwZSA9IGlzVjJLID8gdGhpcy5zaGlmdElkeFRvQXRvbVR5cGVWMksgOlxuICAgICAgdGhpcy5zaGlmdElkeFRvQXRvbVR5cGVWM0s7XG5cbiAgICB0aGlzLmdldEJvbmRCbG9ja0lkeCA9IGlzVjJLID8gdGhpcy5nZXRCb25kQmxvY2tJZHhWMksgOiB0aGlzLmdldEJvbmRCbG9ja0lkeFYzSztcblxuICAgIHRoaXMuc2hpZnRJZHhUb0JvbmRlZEF0b21zUGFpciA9IGlzVjJLID8gdGhpcy5zaGlmdElkeFRvQm9uZGVkQXRvbXNQYWlyVjJLIDogdGhpcy5zaGlmdElkeFRvQm9uZGVkQXRvbXNQYWlyVjNLO1xuICB9XG5cbiAgcHVibGljIHN0YXRpYyBjcmVhdGVJbnN0YW5jZShmaWxlOiBzdHJpbmcpOiBNb2xmaWxlSGFuZGxlciB7XG4gICAgaWYgKCF0aGlzLmluc3RhbmNlKVxuICAgICAgdGhpcy5pbnN0YW5jZSA9IG5ldyBNb2xmaWxlSGFuZGxlcihmaWxlKTtcbiAgICByZXR1cm4gdGhpcy5pbnN0YW5jZSBhcyBNb2xmaWxlSGFuZGxlcjtcbiAgfVxuXG4gIHByb3RlY3RlZCBwYXJzZUF0b21BbmRCb25kQ291bnRzITogKCkgPT4gQXRvbUFuZEJvbmRDb3VudHM7XG4gIHByb3RlY3RlZCBnZXRDb3VudHNMaW5lSWR4ITogKCkgPT4gbnVtYmVyO1xuICBwcm90ZWN0ZWQgZ2V0QXRvbUJsb2NrSWR4ITogKCkgPT4gbnVtYmVyO1xuICBwcm90ZWN0ZWQgc2hpZnRJZHhUb1hDb2x1bW4hOiAobGluZVN0YXJ0SWR4OiBudW1iZXIpID0+IG51bWJlcjtcbiAgcHJvdGVjdGVkIHNoaWZ0SWR4VG9BdG9tVHlwZSE6IChpZHg6IG51bWJlcikgPT4gbnVtYmVyO1xuICBwcm90ZWN0ZWQgZ2V0Qm9uZEJsb2NrSWR4ITogKCkgPT4gbnVtYmVyO1xuICBwcm90ZWN0ZWQgc2hpZnRJZHhUb0JvbmRlZEF0b21zUGFpciE6IChsaW5lU3RhcnRJZHg6IG51bWJlcikgPT4gbnVtYmVyO1xuXG4gIHByb3RlY3RlZCBwYXJzZUF0b21UeXBlKGlkeDogbnVtYmVyKTogc3RyaW5nIHtcbiAgICBjb25zdCBiZWdpbiA9IGlkeDtcbiAgICBjb25zdCBlbmQgPSB0aGlzLmZpbGUuaW5kZXhPZignICcsIGJlZ2luKTtcbiAgICByZXR1cm4gdGhpcy5maWxlLnN1YnN0cmluZyhiZWdpbiwgZW5kKTtcbiAgfVxuXG4gIC8qKiBEZXRlcm1pbmUgd2hldGhlciB0aGUgZmlsZSBpcyBWMjAwMC9WMzAwMCwgb3IgdGhyb3cgKi9cbiAgcHJpdmF0ZSBzdGF0aWMgZGV0ZXJtaW5lTW9sZmlsZVZlcnNpb24obW9sZmlsZTogc3RyaW5nKTogTU9MRklMRV9WRVJTSU9OIHtcbiAgICBpZiAoTW9sZmlsZUhhbmRsZXIudmFsaWRhdGVWM0sobW9sZmlsZSkpXG4gICAgICByZXR1cm4gTU9MRklMRV9WRVJTSU9OLlYzMDAwO1xuICAgIGVsc2UgaWYgKE1vbGZpbGVIYW5kbGVyLnZhbGlkYXRlVjJLKG1vbGZpbGUpKVxuICAgICAgcmV0dXJuIE1PTEZJTEVfVkVSU0lPTi5WMjAwMDtcbiAgICBlbHNlXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ01hbGZvcm1lZCBtb2xmaWxlJyk7XG4gIH1cblxuICBwcml2YXRlIHNoaWZ0SWR4VG9BdG9tVHlwZVYySyhsaW5lU3RhcnRJZHg6IG51bWJlcik6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuc2hpZnRJZHhUb1NwZWNpZmllZENvbHVtbihsaW5lU3RhcnRJZHgsIFYyS19DT05TVC5BVE9NX1RZUEVfQ09MKTtcbiAgfVxuXG4gIHByaXZhdGUgc2hpZnRJZHhUb0F0b21UeXBlVjNLKGxpbmVTdGFydElkeDogbnVtYmVyKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5zaGlmdElkeFRvU3BlY2lmaWVkQ29sdW1uKGxpbmVTdGFydElkeCwgVjNLX0NPTlNULkFUT01fVFlQRV9DT0wpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRDb3VudHNMaW5lVjJLSWR4KCk6IG51bWJlciB7XG4gICAgbGV0IGlkeCA9IDA7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBWMktfQ09OU1QuTlVNX09GX0hFQURFUl9MSU5FUzsgKytpKVxuICAgICAgaWR4ID0gdGhpcy5nZXROZXh0TGluZUlkeChpZHgpO1xuICAgIHJldHVybiBpZHg7XG4gIH1cblxuICBwcml2YXRlIGdldENvdW50c0xpbmVWM0tJZHgoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5maWxlLmluZGV4T2YoVjNLX0NPTlNULkJFR0lOX0NPVU5UU19MSU5FKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0QXRvbUJsb2NrSWR4VjJLKCk6IG51bWJlciB7XG4gICAgbGV0IGlkeCA9IHRoaXMuZ2V0Q291bnRzTGluZUlkeCgpO1xuICAgIGlkeCA9IHRoaXMuZ2V0TmV4dExpbmVJZHgoaWR4KTtcbiAgICByZXR1cm4gaWR4O1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRBdG9tQmxvY2tJZHhWM0soKTogbnVtYmVyIHtcbiAgICBsZXQgaWR4ID0gdGhpcy5maWxlLmluZGV4T2YoVjNLX0NPTlNULkJFR0lOX0FUT01fQkxPQ0spO1xuICAgIGlkeCA9IHRoaXMuZ2V0TmV4dExpbmVJZHgoaWR4KTtcbiAgICByZXR1cm4gaWR4O1xuICB9XG5cbiAgcHJpdmF0ZSBzaGlmdElkeFRvWENvbHVtblYySyhsaW5lU3RhcnRJZHg6IG51bWJlcik6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0TmV4dENvbHVtbklkeChsaW5lU3RhcnRJZHgpO1xuICB9XG5cbiAgcHJpdmF0ZSBzaGlmdElkeFRvWENvbHVtblYzSyhsaW5lU3RhcnRJZHg6IG51bWJlcik6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuc2hpZnRJZHhUb1NwZWNpZmllZENvbHVtbihsaW5lU3RhcnRJZHgsIFYzS19DT05TVC5YX0NPTCk7XG4gIH1cblxuICBwcml2YXRlIHNoaWZ0SWR4VG9Cb25kZWRBdG9tc1BhaXJWMksobGluZVN0YXJ0SWR4OiBudW1iZXIpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLnNoaWZ0SWR4VG9TcGVjaWZpZWRDb2x1bW4obGluZVN0YXJ0SWR4LCBWMktfQ09OU1QuRklSU1RfQk9OREVEX0FUT01fQ09MKTtcbiAgfVxuXG4gIHByaXZhdGUgc2hpZnRJZHhUb0JvbmRlZEF0b21zUGFpclYzSyhsaW5lU3RhcnRJZHg6IG51bWJlcik6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuc2hpZnRJZHhUb1NwZWNpZmllZENvbHVtbihsaW5lU3RhcnRJZHgsIFYzS19DT05TVC5GSVJTVF9CT05ERURfQVRPTV9DT0wpO1xuICB9XG4gIHByaXZhdGUgZ2V0Qm9uZEJsb2NrSWR4VjJLKCk6IG51bWJlciB7XG4gICAgbGV0IGlkeCA9IHRoaXMuZ2V0QXRvbUJsb2NrSWR4KCk7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLmF0b21Db3VudDsgaSsrKVxuICAgICAgaWR4ID0gdGhpcy5nZXROZXh0TGluZUlkeChpZHgpO1xuICAgIHJldHVybiBpZHg7XG4gIH1cblxuICBwcml2YXRlIGdldEJvbmRCbG9ja0lkeFYzSygpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmdldE5leHRMaW5lSWR4KHRoaXMuZmlsZS5pbmRleE9mKFYzS19DT05TVC5CRUdJTl9CT05EX0JMT0NLKSk7XG4gIH1cblxuICBwcml2YXRlIHN0YXRpYyB2YWxpZGF0ZVYzSyhtb2xmaWxlOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gKG1vbGZpbGUuaW5kZXhPZihWM0tfQ09OU1QuSEVBREVSKSAhPT0gLTEgJiZcbiAgICBtb2xmaWxlLmluZGV4T2YoVjNLX0NPTlNULkVORCkgIT09IC0xKTtcbiAgfVxuXG4gIHByaXZhdGUgc3RhdGljIHZhbGlkYXRlVjJLKG1vbGZpbGU6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAobW9sZmlsZS5pbmRleE9mKFYyS19DT05TVC5IRUFERVIpICE9PSAtMSAmJlxuICAgIG1vbGZpbGUuaW5kZXhPZihWMktfQ09OU1QuRU5EKSAhPT0gLTEpO1xuICB9XG5cbiAgcHJpdmF0ZSBwYXJzZUF0b21BbmRCb25kQ291bnRzVjJLKCk6IEF0b21BbmRCb25kQ291bnRzIHtcbiAgICBsZXQgYmVnaW4gPSB0aGlzLmdldENvdW50c0xpbmVJZHgoKTtcbiAgICBsZXQgZW5kID0gYmVnaW4gKyBWMktfQ09OU1QuTlVNX09GX0NPVU5UU19ESUdJVFM7XG4gICAgY29uc3QgYXRvbUNvdW50ID0gcGFyc2VJbnQodGhpcy5maWxlLnN1YnN0cmluZyhiZWdpbiwgZW5kKSk7XG4gICAgYmVnaW4gPSBlbmQ7XG4gICAgZW5kICs9IFYyS19DT05TVC5OVU1fT0ZfQ09VTlRTX0RJR0lUUztcbiAgICBjb25zdCBib25kQ291bnQgPSBwYXJzZUludCh0aGlzLmZpbGUuc3Vic3RyaW5nKGJlZ2luLCBlbmQpKTtcbiAgICByZXR1cm4ge2F0b21Db3VudDogYXRvbUNvdW50LCBib25kQ291bnQ6IGJvbmRDb3VudH07XG4gIH07XG5cbiAgcHJpdmF0ZSBwYXJzZUF0b21BbmRCb25kQ291bnRzVjNLKCk6IEF0b21BbmRCb25kQ291bnRzIHtcbiAgICAvLyBwYXJzZSBhdG9tIGNvdW50XG4gICAgbGV0IGJlZ2luID0gdGhpcy5maWxlLmluZGV4T2YoVjNLX0NPTlNULkJFR0lOX0NPVU5UU19MSU5FKSArIFYzS19DT05TVC5DT1VOVFNfU0hJRlQ7XG4gICAgbGV0IGVuZCA9IHRoaXMuZmlsZS5pbmRleE9mKCcgJywgYmVnaW4gKyAxKTtcbiAgICBjb25zdCBudW1PZkF0b21zID0gcGFyc2VJbnQodGhpcy5maWxlLnN1YnN0cmluZyhiZWdpbiwgZW5kKSk7XG5cbiAgICAvLyBwYXJzZSBib25kIGNvdW50XG4gICAgYmVnaW4gPSBlbmQgKyAxO1xuICAgIGVuZCA9IHRoaXMuZmlsZS5pbmRleE9mKCcgJywgYmVnaW4gKyAxKTtcbiAgICBjb25zdCBudW1PZkJvbmRzID0gcGFyc2VJbnQodGhpcy5maWxlLnN1YnN0cmluZyhiZWdpbiwgZW5kKSk7XG5cbiAgICByZXR1cm4ge2F0b21Db3VudDogbnVtT2ZBdG9tcywgYm9uZENvdW50OiBudW1PZkJvbmRzfTtcbiAgfVxufVxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9sZmlsZS1oYW5kbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsibW9sZmlsZS1oYW5kbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBc0IsdUJBQXVCLEVBQW9CLE1BQU0seUJBQXlCLENBQUM7QUFDeEcsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBUXZELE1BQU0sT0FBTyxjQUFlLFNBQVEsdUJBQXVCO0lBQ3pELFlBQVksT0FBZTtRQUN6QixLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDZixJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3JCLENBQUM7SUFFRCw0REFBNEQ7SUFDckQsSUFBSSxDQUFDLE9BQWU7UUFDekIsS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUVwQixNQUFNLGNBQWMsR0FBRyxjQUFjLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3pFLE1BQU0sS0FBSyxHQUFHLENBQUMsY0FBYyx3Q0FBMEIsQ0FBQyxDQUFDO1FBRXpELElBQUksQ0FBQyxzQkFBc0IsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLHlCQUF5QixDQUFDO1FBRXRHLElBQUksQ0FBQyxlQUFlLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQztRQUVqRixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQztRQUVwRixJQUFJLENBQUMsaUJBQWlCLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsQ0FB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QUFPLEVBQUMsU0FBUyxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFDLENBQUM7SUFDeEQsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDaGVtaWNhbFRhYmxlUGFyc2VyLCBDaGVtaWNhbFRhYmxlUGFyc2VyQmFzZSwgQXRvbUFuZEJvbmRDb3VudHN9IGZyb20gJy4vY2hlbWljYWwtdGFibGUtcGFyc2VyJztcbmltcG9ydCB7VjJLX0NPTlNUfSBmcm9tICcuLi9mb3JtYXRzL21vbGZpbGUtdjJrLWNvbnN0JztcbmltcG9ydCB7VjNLX0NPTlNUfSBmcm9tICcuLi9mb3JtYXRzL21vbGZpbGUtdjNrLWNvbnN0JztcblxuY29uc3QgZW51bSBNT0xGSUxFX1ZFUlNJT04ge1xuICBWMjAwMCA9ICdWMjAwMCcsXG4gIFYzMDAwID0gJ1YzMDAwJyxcbn1cblxuZXhwb3J0IGNsYXNzIE1vbGZpbGVIYW5kbGVyIGV4dGVuZHMgQ2hlbWljYWxUYWJsZVBhcnNlckJhc2UgaW1wbGVtZW50cyBDaGVtaWNhbFRhYmxlUGFyc2VyIHtcbiAgY29uc3RydWN0b3IobW9sZmlsZTogc3RyaW5nKSB7XG4gICAgc3VwZXIobW9sZmlsZSk7XG4gICAgdGhpcy5pbml0KG1vbGZpbGUpO1xuICB9XG5cbiAgLyoqIEluaXQvcmVzZXQgdGhlIHN0YXRlIG9mIHRoZSBoYW5kbGVyIGZvciBhIG5ldyBtb2xmaWxlICovXG4gIHB1YmxpYyBpbml0KG1vbGZpbGU6IHN0cmluZykge1xuICAgIHN1cGVyLmluaXQobW9sZmlsZSk7XG5cbiAgICBjb25zdCBtb2xmaWxlVmVyc2lvbiA9IE1vbGZpbGVIYW5kbGVyLmRldGVybWluZU1vbGZpbGVWZXJzaW9uKHRoaXMuZmlsZSk7XG4gICAgY29uc3QgaXNWMksgPSAobW9sZmlsZVZlcnNpb24gPT09IE1PTEZJTEVfVkVSU0lPTi5WMjAwMCk7XG5cbiAgICB0aGlzLnBhcnNlQXRvbUFuZEJvbmRDb3VudHMgPSBpc1YySyA/IHRoaXMucGFyc2VBdG9tQW5kQm9uZENvdW50c1YySyA6IHRoaXMucGFyc2VBdG9tQW5kQm9uZENvdW50c1YzSztcblxuICAgIHRoaXMuZ2V0QXRvbUJsb2NrSWR4ID0gaXNWMksgPyB0aGlzLmdldEF0b21CbG9ja0lkeFYySyA6IHRoaXMuZ2V0QXRvbUJsb2NrSWR4VjNLO1xuXG4gICAgdGhpcy5nZXRDb3VudHNMaW5lSWR4ID0gaXNWMksgPyB0aGlzLmdldENvdW50c0xpbmVWMktJZHggOiB0aGlzLmdldENvdW50c0xpbmVWM0tJZHg7XG5cbiAgICB0aGlzLnNoaWZ0SWR4VG9YQ29sdW1uID0gaXNWMksgPyB0aGlzLnNoaWZ0SWR4VG9YQ29sdW1uVjJLIDogdGhpcy5zaGlmdElkeFRvWENvbHVtblYzSztcblxuICAgIHRoaXMuc2hpZnRJZHhUb0F0b21UeXBlID0gaXNWMksgPyB0aGlzLnNoaWZ0SWR4VG9BdG9tVHlwZVYySyA6XG4gICAgICB0aGlzLnNoaWZ0SWR4VG9BdG9tVHlwZVYzSztcblxuICAgIHRoaXMuZ2V0Qm9uZEJsb2NrSWR4ID0gaXNWMksgPyB0aGlzLmdldEJvbmRCbG9ja0lkeFYySyA6IHRoaXMuZ2V0Qm9uZEJsb2NrSWR4VjNLO1xuXG4gICAgdGhpcy5zaGlmdElkeFRvQm9uZGVkQXRvbXNQYWlyID0gaXNWMksgPyB0aGlzLnNoaWZ0SWR4VG9Cb25kZWRBdG9tc1BhaXJWMksgOiB0aGlzLnNoaWZ0SWR4VG9Cb25kZWRBdG9tc1BhaXJWM0s7XG4gIH1cblxuICBwdWJsaWMgc3RhdGljIGNyZWF0ZUluc3RhbmNlKGZpbGU6IHN0cmluZyk6IE1vbGZpbGVIYW5kbGVyIHtcbiAgICBpZiAoIXRoaXMuaW5zdGFuY2UpXG4gICAgICB0aGlzLmluc3RhbmNlID0gbmV3IE1vbGZpbGVIYW5kbGVyKGZpbGUpO1xuICAgIHJldHVybiB0aGlzLmluc3RhbmNlIGFzIE1vbGZpbGVIYW5kbGVyO1xuICB9XG5cbiAgcHJvdGVjdGVkIHBhcnNlQXRvbUFuZEJvbmRDb3VudHMhOiAoKSA9PiBBdG9tQW5kQm9uZENvdW50cztcbiAgcHJvdGVjdGVkIGdldENvdW50c0xpbmVJZHghOiAoKSA9PiBudW1iZXI7XG4gIHByb3RlY3RlZCBnZXRBdG9tQmxvY2tJZHghOiAoKSA9PiBudW1iZXI7XG4gIHByb3RlY3RlZCBzaGlmdElkeFRvWENvbHVtbiE6IChsaW5lU3RhcnRJZHg6IG51bWJlcikgPT4gbnVtYmVyO1xuICBwcm90ZWN0ZWQgc2hpZnRJZHhUb0F0b21UeXBlITogKGlkeDogbnVtYmVyKSA9PiBudW1iZXI7XG4gIHByb3RlY3RlZCBnZXRCb25kQmxvY2tJZHghOiAoKSA9PiBudW1iZXI7XG4gIHByb3RlY3RlZCBzaGlmdElkeFRvQm9uZGVkQXRvbXNQYWlyITogKGxpbmVTdGFydElkeDogbnVtYmVyKSA9PiBudW1iZXI7XG5cbiAgcHJvdGVjdGVkIHBhcnNlQXRvbVR5cGUoaWR4OiBudW1iZXIpOiBzdHJpbmcge1xuICAgIGNvbnN0IGJlZ2luID0gaWR4O1xuICAgIGNvbnN0IGVuZCA9IHRoaXMuZmlsZS5pbmRleE9mKCcgJywgYmVnaW4pO1xuICAgIHJldHVybiB0aGlzLmZpbGUuc3Vic3RyaW5nKGJlZ2luLCBlbmQpO1xuICB9XG5cbiAgLyoqIERldGVybWluZSB3aGV0aGVyIHRoZSBmaWxlIGlzIFYyMDAwL1YzMDAwLCBvciB0aHJvdyAqL1xuICBwcml2YXRlIHN0YXRpYyBkZXRlcm1pbmVNb2xmaWxlVmVyc2lvbihtb2xmaWxlOiBzdHJpbmcpOiBNT0xGSUxFX1ZFUlNJT04ge1xuICAgIGlmIChNb2xmaWxlSGFuZGxlci52YWxpZGF0ZVYzSyhtb2xmaWxlKSlcbiAgICAgIHJldHVybiBNT0xGSUxFX1ZFUlNJT04uVjMwMDA7XG4gICAgZWxzZSBpZiAoTW9sZmlsZUhhbmRsZXIudmFsaWRhdGVWMksobW9sZmlsZSkpXG4gICAgICByZXR1cm4gTU9MRklMRV9WRVJTSU9OLlYyMDAwO1xuICAgIGVsc2VcbiAgICAgIHRocm93IG5ldyBFcnJvcignTWFsZm9ybWVkIG1vbGZpbGUnKTtcbiAgfVxuXG4gIHByaXZhdGUgc2hpZnRJZHhUb0F0b21UeXBlVjJLKGxpbmVTdGFydElkeDogbnVtYmVyKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5zaGlmdElkeFRvU3BlY2lmaWVkQ29sdW1uKGxpbmVTdGFydElkeCwgVjJLX0NPTlNULkFUT01fVFlQRV9DT0wpO1xuICB9XG5cbiAgcHJpdmF0ZSBzaGlmdElkeFRvQXRvbVR5cGVWM0sobGluZVN0YXJ0SWR4OiBudW1iZXIpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLnNoaWZ0SWR4VG9TcGVjaWZpZWRDb2x1bW4obGluZVN0YXJ0SWR4LCBWM0tfQ09OU1QuQVRPTV9UWVBFX0NPTCk7XG4gIH1cblxuICBwcml2YXRlIGdldENvdW50c0xpbmVWMktJZHgoKTogbnVtYmVyIHtcbiAgICBsZXQgaWR4ID0gMDtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IFYyS19DT05TVC5OVU1fT0ZfSEVBREVSX0xJTkVTOyArK2kpXG4gICAgICBpZHggPSB0aGlzLmdldE5leHRMaW5lSWR4KGlkeCk7XG4gICAgcmV0dXJuIGlkeDtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0Q291bnRzTGluZVYzS0lkeCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmZpbGUuaW5kZXhPZihWM0tfQ09OU1QuQkVHSU5fQ09VTlRTX0xJTkUpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRBdG9tQmxvY2tJZHhWMksoKTogbnVtYmVyIHtcbiAgICBsZXQgaWR4ID0gdGhpcy5nZXRDb3VudHNMaW5lSWR4KCk7XG4gICAgaWR4ID0gdGhpcy5nZXROZXh0TGluZUlkeChpZHgpO1xuICAgIHJldHVybiBpZHg7XG4gIH1cblxuICBwcml2YXRlIGdldEF0b21CbG9ja0lkeFYzSygpOiBudW1iZXIge1xuICAgIGxldCBpZHggPSB0aGlzLmZpbGUuaW5kZXhPZihWM0tfQ09OU1QuQkVHSU5fQVRPTV9CTE9DSyk7XG4gICAgaWR4ID0gdGhpcy5nZXROZXh0TGluZUlkeChpZHgpO1xuICAgIHJldHVybiBpZHg7XG4gIH1cblxuICBwcml2YXRlIHNoaWZ0SWR4VG9YQ29sdW1uVjJLKGxpbmVTdGFydElkeDogbnVtYmVyKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5nZXROZXh0Q29sdW1uSWR4KGxpbmVTdGFydElkeCk7XG4gIH1cblxuICBwcml2YXRlIHNoaWZ0SWR4VG9YQ29sdW1uVjNLKGxpbmVTdGFydElkeDogbnVtYmVyKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5zaGlmdElkeFRvU3BlY2lmaWVkQ29sdW1uKGxpbmVTdGFydElkeCwgVjNLX0NPTlNULlhfQ09MKTtcbiAgfVxuXG4gIHByaXZhdGUgc2hpZnRJZHhUb0JvbmRlZEF0b21zUGFpclYySyhsaW5lU3RhcnRJZHg6IG51bWJlcik6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuc2hpZnRJZHhUb1NwZWNpZmllZENvbHVtbihsaW5lU3RhcnRJZHgsIFYyS19DT05TVC5GSVJTVF9CT05ERURfQVRPTV9DT0wpO1xuICB9XG5cbiAgcHJpdmF0ZSBzaGlmdElkeFRvQm9uZGVkQXRvbXNQYWlyVjNLKGxpbmVTdGFydElkeDogbnVtYmVyKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5zaGlmdElkeFRvU3BlY2lmaWVkQ29sdW1uKGxpbmVTdGFydElkeCwgVjNLX0NPTlNULkZJUlNUX0JPTkRFRF9BVE9NX0NPTCk7XG4gIH1cbiAgcHJpdmF0ZSBnZXRCb25kQmxvY2tJZHhWMksoKTogbnVtYmVyIHtcbiAgICBsZXQgaWR4ID0gdGhpcy5nZXRBdG9tQmxvY2tJZHgoKTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMuYXRvbUNvdW50OyBpKyspXG4gICAgICBpZHggPSB0aGlzLmdldE5leHRMaW5lSWR4KGlkeCk7XG4gICAgcmV0dXJuIGlkeDtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0Qm9uZEJsb2NrSWR4VjNLKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0TmV4dExpbmVJZHgodGhpcy5maWxlLmluZGV4T2YoVjNLX0NPTlNULkJFR0lOX0JPTkRfQkxPQ0spKTtcbiAgfVxuXG4gIHByaXZhdGUgc3RhdGljIHZhbGlkYXRlVjNLKG1vbGZpbGU6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAobW9sZmlsZS5pbmRleE9mKFYzS19DT05TVC5IRUFERVIpICE9PSAtMSAmJlxuICAgIG1vbGZpbGUuaW5kZXhPZihWM0tfQ09OU1QuRU5EKSAhPT0gLTEpO1xuICB9XG5cbiAgcHJpdmF0ZSBzdGF0aWMgdmFsaWRhdGVWMksobW9sZmlsZTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIChtb2xmaWxlLmluZGV4T2YoVjJLX0NPTlNULkhFQURFUikgIT09IC0xICYmXG4gICAgbW9sZmlsZS5pbmRleE9mKFYyS19DT05TVC5FTkQpICE9PSAtMSk7XG4gIH1cblxuICBwcml2YXRlIHBhcnNlQXRvbUFuZEJvbmRDb3VudHNWMksoKTogQXRvbUFuZEJvbmRDb3VudHMge1xuICAgIGxldCBiZWdpbiA9IHRoaXMuZ2V0Q291bnRzTGluZUlkeCgpO1xuICAgIGxldCBlbmQgPSBiZWdpbiArIFYyS19DT05TVC5OVU1fT0ZfQ09VTlRTX0RJR0lUUztcbiAgICBjb25zdCBhdG9tQ291bnQgPSBwYXJzZUludCh0aGlzLmZpbGUuc3Vic3RyaW5nKGJlZ2luLCBlbmQpKTtcbiAgICBiZWdpbiA9IGVuZDtcbiAgICBlbmQgKz0gVjJLX0NPTlNULk5VTV9PRl9DT1VOVFNfRElHSVRTO1xuICAgIGNvbnN0IGJvbmRDb3VudCA9IHBhcnNlSW50KHRoaXMuZmlsZS5zdWJzdHJpbmcoYmVnaW4sIGVuZCkpO1xuICAgIHJldHVybiB7YXRvbUNvdW50OiBhdG9tQ291bnQsIGJvbmRDb3VudDogYm9uZENvdW50fTtcbiAgfTtcblxuICBwcml2YXRlIHBhcnNlQXRvbUFuZEJvbmRDb3VudHNWM0soKTogQXRvbUFuZEJvbmRDb3VudHMge1xuICAgIC8vIHBhcnNlIGF0b20gY291bnRcbiAgICBsZXQgYmVnaW4gPSB0aGlzLmZpbGUuaW5kZXhPZihWM0tfQ09OU1QuQkVHSU5fQ09VTlRTX0xJTkUpICsgVjNLX0NPTlNULkNPVU5UU19TSElGVDtcbiAgICBsZXQgZW5kID0gdGhpcy5maWxlLmluZGV4T2YoJyAnLCBiZWdpbiArIDEpO1xuICAgIGNvbnN0IG51bU9mQXRvbXMgPSBwYXJzZUludCh0aGlzLmZpbGUuc3Vic3RyaW5nKGJlZ2luLCBlbmQpKTtcblxuICAgIC8vIHBhcnNlIGJvbmQgY291bnRcbiAgICBiZWdpbiA9IGVuZCArIDE7XG4gICAgZW5kID0gdGhpcy5maWxlLmluZGV4T2YoJyAnLCBiZWdpbiArIDEpO1xuICAgIGNvbnN0IG51bU9mQm9uZHMgPSBwYXJzZUludCh0aGlzLmZpbGUuc3Vic3RyaW5nKGJlZ2luLCBlbmQpKTtcblxuICAgIHJldHVybiB7YXRvbUNvdW50OiBudW1PZkF0b21zLCBib25kQ291bnQ6IG51bU9mQm9uZHN9O1xuICB9XG59XG4iXX0=

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc