@datagrok-libraries/bio 5.16.2 → 5.16.3
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/package.json
CHANGED
|
@@ -10,7 +10,7 @@ export type TreeCutOptions = {
|
|
|
10
10
|
};
|
|
11
11
|
export interface IDendrogramService {
|
|
12
12
|
/** Inject Dendrogram tree to {@see grid}. Requires Dendrogram package. */
|
|
13
|
-
injectTreeForGrid(grid: DG.Grid, treeRoot: NodeType, leafColName?: string, neighborWidth?: number, cut?: TreeCutOptions): GridNeighbor;
|
|
13
|
+
injectTreeForGrid(grid: DG.Grid, treeRoot: NodeType | null, leafColName?: string, neighborWidth?: number, cut?: TreeCutOptions): GridNeighbor;
|
|
14
14
|
}
|
|
15
15
|
export declare function getDendrogramService(): Promise<IDendrogramService>;
|
|
16
16
|
//# sourceMappingURL=dendrogram.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dendrogram.d.ts","sourceRoot":"","sources":["dendrogram.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAEtC,OAAO,EAAC,YAAY,EAAC,MAAM,iDAAiD,CAAC;AAC7E,OAAO,EAAC,QAAQ,EAAC,MAAM,GAAG,CAAC;AAE3B,MAAM,MAAM,cAAc,GAAG;IAC3B,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,EAAE,CAAC,SAAS,CAAC;IAC/C,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC;IAAC,cAAc,EAAE,MAAM,CAAC;CACjD,CAAA;AAED,MAAM,WAAW,kBAAkB;IACjC,0EAA0E;IAC1E,iBAAiB,CACf,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,cAAc,
|
|
1
|
+
{"version":3,"file":"dendrogram.d.ts","sourceRoot":"","sources":["dendrogram.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAEtC,OAAO,EAAC,YAAY,EAAC,MAAM,iDAAiD,CAAC;AAC7E,OAAO,EAAC,QAAQ,EAAC,MAAM,GAAG,CAAC;AAE3B,MAAM,MAAM,cAAc,GAAG;IAC3B,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,EAAE,CAAC,SAAS,CAAC;IAC/C,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC;IAAC,cAAc,EAAE,MAAM,CAAC;CACjD,CAAA;AAED,MAAM,WAAW,kBAAkB;IACjC,0EAA0E;IAC1E,iBAAiB,CACf,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,cAAc,GAC3G,YAAY,CAAC;CACjB;AAED,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAExE"}
|
package/src/trees/dendrogram.js
CHANGED
|
@@ -13,4 +13,4 @@ export function getDendrogramService() {
|
|
|
13
13
|
return yield grok.functions.call('Dendrogram:getDendrogramService', {});
|
|
14
14
|
});
|
|
15
15
|
}
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVuZHJvZ3JhbS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImRlbmRyb2dyYW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUEsT0FBTyxLQUFLLElBQUksTUFBTSxtQkFBbUIsQ0FBQztBQW1CMUMsTUFBTSxVQUFnQixvQkFBb0I7O1FBQ3hDLE9BQU8sTUFBTSxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxpQ0FBaUMsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUMxRSxDQUFDO0NBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBncm9rIGZyb20gJ2RhdGFncm9rLWFwaS9ncm9rJztcbmltcG9ydCAqIGFzIHVpIGZyb20gJ2RhdGFncm9rLWFwaS91aSc7XG5pbXBvcnQgKiBhcyBERyBmcm9tICdkYXRhZ3Jvay1hcGkvZGcnO1xuXG5pbXBvcnQge0dyaWROZWlnaGJvcn0gZnJvbSAnQGRhdGFncm9rLWxpYnJhcmllcy9ncmlkZXh0L3NyYy91aS9HcmlkTmVpZ2hib3InO1xuaW1wb3J0IHtOb2RlVHlwZX0gZnJvbSAnLic7XG5cbmV4cG9ydCB0eXBlIFRyZWVDdXRPcHRpb25zID0ge1xuICBtaW46IG51bWJlciwgbWF4OiBudW1iZXIsIGRhdGFEZjogREcuRGF0YUZyYW1lLFxuICBjbHVzdGVyRGY6IERHLkRhdGFGcmFtZSwgY2x1c3RlckNvbE5hbWU6IHN0cmluZyxcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJRGVuZHJvZ3JhbVNlcnZpY2Uge1xuICAvKiogSW5qZWN0IERlbmRyb2dyYW0gdHJlZSB0byB7QHNlZSBncmlkfS4gUmVxdWlyZXMgRGVuZHJvZ3JhbSBwYWNrYWdlLiAqL1xuICBpbmplY3RUcmVlRm9yR3JpZChcbiAgICBncmlkOiBERy5HcmlkLCB0cmVlUm9vdDogTm9kZVR5cGUgfCBudWxsLCBsZWFmQ29sTmFtZT86IHN0cmluZywgbmVpZ2hib3JXaWR0aD86IG51bWJlciwgY3V0PzogVHJlZUN1dE9wdGlvbnNcbiAgKTogR3JpZE5laWdoYm9yO1xufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0RGVuZHJvZ3JhbVNlcnZpY2UoKTogUHJvbWlzZTxJRGVuZHJvZ3JhbVNlcnZpY2U+IHtcbiAgcmV0dXJuIGF3YWl0IGdyb2suZnVuY3Rpb25zLmNhbGwoJ0RlbmRyb2dyYW06Z2V0RGVuZHJvZ3JhbVNlcnZpY2UnLCB7fSk7XG59XG4iXX0=
|
|
@@ -10,26 +10,26 @@ export interface ITreeHelper {
|
|
|
10
10
|
*/
|
|
11
11
|
newickToDf(newick: string, name: string, nodePrefix?: string, emptyParentRootSkip?: boolean): DG.DataFrame;
|
|
12
12
|
toNewick(node: NodeType | null): string;
|
|
13
|
-
getLeafList<TNode extends NodeType>(node: TNode): TNode[];
|
|
14
|
-
getNodeList<TNode extends NodeType>(node: TNode): TNode[];
|
|
13
|
+
getLeafList<TNode extends NodeType>(node: TNode | null): TNode[];
|
|
14
|
+
getNodeList<TNode extends NodeType>(node: TNode | null): TNode[];
|
|
15
15
|
/** Filters tree by leaves (by set).
|
|
16
16
|
* An internal node will be eliminated only if all its subs (children/leaves) are filtered out by {link @leaves}.
|
|
17
17
|
*/
|
|
18
|
-
filterTreeByLeaves(node: NodeType, leaves: {
|
|
18
|
+
filterTreeByLeaves(node: NodeType | null, leaves: {
|
|
19
19
|
[name: string]: any;
|
|
20
20
|
}): NodeType | null;
|
|
21
21
|
/** Collects nodes by leaves (by set).
|
|
22
22
|
* Node will be returned only if all its subs (children/leaves) are present in {@link leaves}.
|
|
23
23
|
*/
|
|
24
|
-
getNodesByLeaves<TNode extends NodeType>(node: TNode, leaves: {
|
|
24
|
+
getNodesByLeaves<TNode extends NodeType>(node: TNode | null, leaves: {
|
|
25
25
|
[name: string]: any;
|
|
26
26
|
}): TNode[];
|
|
27
|
-
treeCutAsLeaves(node: NodeType, cutHeight: number, currentHeight?: number): NodeType[];
|
|
28
|
-
treeCutAsTree(node: NodeType, cutHeight: number, keepShorts?: boolean, currentHeight?: number): NodeType | null;
|
|
27
|
+
treeCutAsLeaves(node: NodeType | null, cutHeight: number, currentHeight?: number): NodeType[];
|
|
28
|
+
treeCutAsTree(node: NodeType | null, cutHeight: number, keepShorts?: boolean, currentHeight?: number): NodeType | null;
|
|
29
29
|
/** Reorder the grid's rows according to the leaves' order in the tree.
|
|
30
30
|
* @param {string|null} leafColName Column name for leaf name in newick, null - use row index
|
|
31
31
|
*/
|
|
32
|
-
setGridOrder(tree: NodeType, grid: DG.Grid, leafColName?: string): [NodeType, string[]];
|
|
32
|
+
setGridOrder(tree: NodeType | null, grid: DG.Grid, leafColName?: string): [NodeType, string[]];
|
|
33
33
|
markClusters(tree: NodeCuttedType, dataDf: DG.DataFrame, leafColName: string | null, clusterColName: string, na?: any): void;
|
|
34
34
|
/**
|
|
35
35
|
* @param {string|null} leafColName Column name for leaf name in newick, null - use row index
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tree-helper.d.ts","sourceRoot":"","sources":["tree-helper.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAEtC,OAAO,EAAC,cAAc,EAAE,QAAQ,EAAC,MAAM,SAAS,CAAC;AACjD,OAAO,EAAC,cAAc,EAAC,MAAM,mBAAmB,CAAC;AAEjD,MAAM,WAAW,WAAW;IAC1B;;;;;OAKG;IACH,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,EAAE,mBAAmB,CAAC,EAAE,OAAO,GAAG,EAAE,CAAC,SAAS,CAAC;IAE3G,QAAQ,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI,GAAG,MAAM,CAAC;IAExC,WAAW,CAAC,KAAK,SAAS,QAAQ,EAAE,IAAI,EAAE,KAAK,GAAG,KAAK,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"tree-helper.d.ts","sourceRoot":"","sources":["tree-helper.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAEtC,OAAO,EAAC,cAAc,EAAE,QAAQ,EAAC,MAAM,SAAS,CAAC;AACjD,OAAO,EAAC,cAAc,EAAC,MAAM,mBAAmB,CAAC;AAEjD,MAAM,WAAW,WAAW;IAC1B;;;;;OAKG;IACH,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,EAAE,mBAAmB,CAAC,EAAE,OAAO,GAAG,EAAE,CAAC,SAAS,CAAC;IAE3G,QAAQ,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI,GAAG,MAAM,CAAC;IAExC,WAAW,CAAC,KAAK,SAAS,QAAQ,EAAE,IAAI,EAAE,KAAK,GAAG,IAAI,GAAG,KAAK,EAAE,CAAC;IAEjE,WAAW,CAAC,KAAK,SAAS,QAAQ,EAAE,IAAI,EAAE,KAAK,GAAG,IAAI,GAAG,KAAK,EAAE,CAAC;IAEjE;;OAEG;IACH,kBAAkB,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI,EAAE,MAAM,EAAE;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,GAAG,QAAQ,GAAG,IAAI,CAAC;IAE5F;;OAEG;IACH,gBAAgB,CAAC,KAAK,SAAS,QAAQ,EAAE,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,MAAM,EAAE;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,GAAG,KAAK,EAAE,CAAC;IAEvG,eAAe,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,QAAQ,EAAE,CAAC;IAE9F,aAAa,CACX,IAAI,EAAE,QAAQ,GAAG,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,OAAO,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,IAAI,CAAC;IAE3G;;OAEG;IACH,YAAY,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;IAE/F,YAAY,CAAC,IAAI,EAAE,cAAc,EAC/B,MAAM,EAAE,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,GAAG,GAAG,IAAI,CAAC;IAE5F;;OAEG;IACH,aAAa,CAAC,IAAI,EAAE,cAAc,EAAE,SAAS,EAAE,EAAE,CAAC,SAAS,EAAE,cAAc,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAEjH;;OAEG;IACH,aAAa,CAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,SAAS,EACnE,WAAW,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,GAAG,GAAG,IAAI,CAAC;IAE/D,kFAAkF;IAClF,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,CAAC;IAErC,sBAAsB,CAAC,EAAE,EAAE,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IAE/F,gCAAgC,CAAC,QAAQ,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;CAChG;AAED,wBAAsB,aAAa,IAAI,OAAO,CAAC,WAAW,CAAC,CAO1D"}
|
package/src/trees/tree-helper.js
CHANGED
|
@@ -17,4 +17,4 @@ export function getTreeHelper() {
|
|
|
17
17
|
return res;
|
|
18
18
|
});
|
|
19
19
|
}
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS1oZWxwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJ0cmVlLWhlbHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFFQSxPQUFPLEtBQUssRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBOER0QyxNQUFNLFVBQWdCLGFBQWE7O1FBQ2pDLE1BQU0sUUFBUSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUMsT0FBTyxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUUsZUFBZSxFQUFDLENBQUMsQ0FBQztRQUM5RSxJQUFJLFFBQVEsQ0FBQyxNQUFNLEtBQUssQ0FBQztZQUN2QixNQUFNLElBQUksS0FBSyxDQUFDLDhEQUE4RCxDQUFDLENBQUM7UUFFbEYsTUFBTSxHQUFHLEdBQWdCLENBQUMsTUFBTSxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxtQkFBbUIsRUFBaUIsQ0FBQztRQUNuRyxPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7Q0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGdyb2sgZnJvbSAnZGF0YWdyb2stYXBpL2dyb2snO1xuaW1wb3J0ICogYXMgdWkgZnJvbSAnZGF0YWdyb2stYXBpL3VpJztcbmltcG9ydCAqIGFzIERHIGZyb20gJ2RhdGFncm9rLWFwaS9kZyc7XG5cbmltcG9ydCB7Tm9kZUN1dHRlZFR5cGUsIE5vZGVUeXBlfSBmcm9tICcuL2luZGV4JztcbmltcG9ydCB7RGlzdGFuY2VNYXRyaXh9IGZyb20gJy4vZGlzdGFuY2UtbWF0cml4JztcblxuZXhwb3J0IGludGVyZmFjZSBJVHJlZUhlbHBlciB7XG4gIC8qKiBHZW5lcmF0ZXMgZGF0YSBmcmFtZSB3aXRoIHJvdyBwZXIgbm9kZSwgcGFyZW50IHJlbGF0aW9uLCBkaXN0YW5jZSwgYW5ub3RhdGlvblxuICAgKiBAcGFyYW0ge3N0cmluZ30gbmV3aWNrICAgICAgICAgICAgICAgIE5ld2ljayBmb3JtYXQgZGF0YVxuICAgKiBAcGFyYW0ge3N0cmluZ30gbmFtZSAgICAgICAgICAgICAgICAgIFJlc3VsdCBkYXRhIGZyYW1lIG5hbWVcbiAgICogQHBhcmFtIHtzdHJpbmd9IG5vZGVQcmVmaXggICAgICAgICAgICBQcmVmaXggZm9yIG5vZGVzIHdpdGggYXV0byBnZW5lcmF0ZWQgbmFtZSAgICpcbiAgICogQHBhcmFtIHtib29sfSAgIGVtcHR5UGFyZW50Um9vdFNraXAgICBTa2lwIHJvdyB3aXRoIHJvb3Qgbm9kZSBhbmQgZW1wdHkgcGFyZW50IChmb3IgTmV0d29yayBEaWFncmFtKVxuICAgKi9cbiAgbmV3aWNrVG9EZihuZXdpY2s6IHN0cmluZywgbmFtZTogc3RyaW5nLCBub2RlUHJlZml4Pzogc3RyaW5nLCBlbXB0eVBhcmVudFJvb3RTa2lwPzogYm9vbGVhbik6IERHLkRhdGFGcmFtZTtcblxuICB0b05ld2ljayhub2RlOiBOb2RlVHlwZSB8IG51bGwpOiBzdHJpbmc7XG5cbiAgZ2V0TGVhZkxpc3Q8VE5vZGUgZXh0ZW5kcyBOb2RlVHlwZT4obm9kZTogVE5vZGUgfCBudWxsKTogVE5vZGVbXTtcblxuICBnZXROb2RlTGlzdDxUTm9kZSBleHRlbmRzIE5vZGVUeXBlPihub2RlOiBUTm9kZSB8IG51bGwpOiBUTm9kZVtdO1xuXG4gIC8qKiBGaWx0ZXJzIHRyZWUgYnkgbGVhdmVzIChieSBzZXQpLlxuICAgKiBBbiBpbnRlcm5hbCBub2RlIHdpbGwgYmUgZWxpbWluYXRlZCBvbmx5IGlmIGFsbCBpdHMgc3VicyAoY2hpbGRyZW4vbGVhdmVzKSBhcmUgZmlsdGVyZWQgb3V0IGJ5IHtsaW5rIEBsZWF2ZXN9LlxuICAgKi9cbiAgZmlsdGVyVHJlZUJ5TGVhdmVzKG5vZGU6IE5vZGVUeXBlIHwgbnVsbCwgbGVhdmVzOiB7IFtuYW1lOiBzdHJpbmddOiBhbnkgfSk6IE5vZGVUeXBlIHwgbnVsbDtcblxuICAvKiogQ29sbGVjdHMgbm9kZXMgYnkgbGVhdmVzIChieSBzZXQpLlxuICAgKiBOb2RlIHdpbGwgYmUgcmV0dXJuZWQgb25seSBpZiBhbGwgaXRzIHN1YnMgKGNoaWxkcmVuL2xlYXZlcykgYXJlIHByZXNlbnQgaW4ge0BsaW5rIGxlYXZlc30uXG4gICAqL1xuICBnZXROb2Rlc0J5TGVhdmVzPFROb2RlIGV4dGVuZHMgTm9kZVR5cGU+KG5vZGU6IFROb2RlIHwgbnVsbCwgbGVhdmVzOiB7IFtuYW1lOiBzdHJpbmddOiBhbnkgfSk6IFROb2RlW107XG5cbiAgdHJlZUN1dEFzTGVhdmVzKG5vZGU6IE5vZGVUeXBlIHwgbnVsbCwgY3V0SGVpZ2h0OiBudW1iZXIsIGN1cnJlbnRIZWlnaHQ/OiBudW1iZXIpOiBOb2RlVHlwZVtdO1xuXG4gIHRyZWVDdXRBc1RyZWUoXG4gICAgbm9kZTogTm9kZVR5cGUgfCBudWxsLCBjdXRIZWlnaHQ6IG51bWJlciwga2VlcFNob3J0cz86IGJvb2xlYW4sIGN1cnJlbnRIZWlnaHQ/OiBudW1iZXIpOiBOb2RlVHlwZSB8IG51bGw7XG5cbiAgLyoqIFJlb3JkZXIgdGhlIGdyaWQncyByb3dzIGFjY29yZGluZyB0byB0aGUgbGVhdmVzJyBvcmRlciBpbiB0aGUgdHJlZS5cbiAgICogQHBhcmFtIHtzdHJpbmd8bnVsbH0gbGVhZkNvbE5hbWUgQ29sdW1uIG5hbWUgZm9yIGxlYWYgbmFtZSBpbiBuZXdpY2ssIG51bGwgLSB1c2Ugcm93IGluZGV4XG4gICAqL1xuICBzZXRHcmlkT3JkZXIodHJlZTogTm9kZVR5cGUgfCBudWxsLCBncmlkOiBERy5HcmlkLCBsZWFmQ29sTmFtZT86IHN0cmluZyk6IFtOb2RlVHlwZSwgc3RyaW5nW11dO1xuXG4gIG1hcmtDbHVzdGVycyh0cmVlOiBOb2RlQ3V0dGVkVHlwZSxcbiAgICBkYXRhRGY6IERHLkRhdGFGcmFtZSwgbGVhZkNvbE5hbWU6IHN0cmluZyB8IG51bGwsIGNsdXN0ZXJDb2xOYW1lOiBzdHJpbmcsIG5hPzogYW55KTogdm9pZDtcblxuICAvKipcbiAgICogQHBhcmFtIHtzdHJpbmd8bnVsbH0gbGVhZkNvbE5hbWUgQ29sdW1uIG5hbWUgZm9yIGxlYWYgbmFtZSBpbiBuZXdpY2ssIG51bGwgLSB1c2Ugcm93IGluZGV4XG4gICAqL1xuICBidWlsZENsdXN0ZXJzKHRyZWU6IE5vZGVDdXR0ZWRUeXBlLCBjbHVzdGVyRGY6IERHLkRhdGFGcmFtZSwgY2x1c3RlckNvbE5hbWU6IHN0cmluZywgbGVhZkNvbE5hbWU/OiBzdHJpbmcpOiB2b2lkO1xuXG4gIC8qKiBNb2RpZmllcyB0aGUgdHJlZSAoe0BsaW5rIG5vZGV9KSBjdXR0aW5nIGF0IHtAbGluayBjdXRIZWlnaHR9IGNyZWF0aW5nIGV4dHJhIG5vZGVzLlxuICAgKiBAcGFyYW0ge3N0cmluZ3xudWxsfSBsZWFmQ29sTmFtZSBDb2x1bW4gbmFtZSBmb3IgbGVhZiBuYW1lIGluIG5ld2ljaywgbnVsbCAtIHVzZSByb3cgaW5kZXhcbiAgICovXG4gIGN1dFRyZWVUb0dyaWQobm9kZTogTm9kZVR5cGUsIGN1dEhlaWdodDogbnVtYmVyLCBkYXRhRGY6IERHLkRhdGFGcmFtZSxcbiAgICBsZWFmQ29sTmFtZTogc3RyaW5nLCBjbHVzdGVyQ29sTmFtZTogc3RyaW5nLCBuYT86IGFueSk6IHZvaWQ7XG5cbiAgLyoqIEdlbmVyYXRlIHRyZWUgc3RydWN0dXJlcyB3aXRoIHtAbGluayBzaXplfSBub2RlcyBudW1iZXIgKGNvdW50aW5nIGludGVybmFsKS4qL1xuICBnZW5lcmF0ZVRyZWUoc2l6ZTogbnVtYmVyKTogTm9kZVR5cGU7XG5cbiAgaGllcmFyY2hpY2FsQ2x1c3RlcmluZyhkZjogREcuRGF0YUZyYW1lLCBkaXN0YW5jZTogc3RyaW5nLCBsaW5rYWdlOiBzdHJpbmcpOiBQcm9taXNlPE5vZGVUeXBlPjtcblxuICBoaWVyYXJjaGljYWxDbHVzdGVyaW5nQnlEaXN0YW5jZShkaXN0YW5jZTogRGlzdGFuY2VNYXRyaXgsIGxpbmthZ2U6IHN0cmluZyk6IFByb21pc2U8Tm9kZVR5cGU+O1xufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0VHJlZUhlbHBlcigpOiBQcm9taXNlPElUcmVlSGVscGVyPiB7XG4gIGNvbnN0IGZ1bmNMaXN0ID0gREcuRnVuYy5maW5kKHtwYWNrYWdlOiAnRGVuZHJvZ3JhbScsIG5hbWU6ICdnZXRUcmVlSGVscGVyJ30pO1xuICBpZiAoZnVuY0xpc3QubGVuZ3RoID09PSAwKVxuICAgIHRocm93IG5ldyBFcnJvcignUGFja2FnZSBcIlBoeWxvVHJlZVZpZXdlclwiXCIgbXVzdCBiZSBpbnN0YWxsZWQgZm9yIFRyZWVIZWxwZXIuJyk7XG5cbiAgY29uc3QgcmVzOiBJVHJlZUhlbHBlciA9IChhd2FpdCBmdW5jTGlzdFswXS5wcmVwYXJlKCkuY2FsbCgpKS5nZXRPdXRwdXRQYXJhbVZhbHVlKCkgYXMgSVRyZWVIZWxwZXI7XG4gIHJldHVybiByZXM7XG59XG4iXX0=
|