@rdfc/js-runner 2.0.0-alpha.7 → 2.0.0-alpha.8

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/lib/runner.js CHANGED
@@ -33,8 +33,10 @@ export class Runner {
33
33
  }),
34
34
  ],
35
35
  });
36
- const ty = JSON.stringify(this.quads.filter(x => x.subject.value === proc.uri && x.predicate.equals(RDF.terms.type)).map(x => x.object.value));
37
- this.logger.info("parsing " + proc.uri + " type " + ty);
36
+ const ty = JSON.stringify(this.quads
37
+ .filter((x) => x.subject.value === proc.uri && x.predicate.equals(RDF.terms.type))
38
+ .map((x) => x.object.value));
39
+ this.logger.info('parsing ' + proc.uri + ' type ' + ty);
38
40
  const args = this.shapes.lenses[RDFL.TypedExtract].execute({
39
41
  id: new NamedNode(proc.uri),
40
42
  quads: this.quads,
@@ -44,15 +46,20 @@ export class Runner {
44
46
  const clazz = jsProgram[config.clazz || 'default'];
45
47
  const instance = new clazz(args, procLogger);
46
48
  await instance.init();
47
- this.logger.info("inited " + proc.uri + " type " + ty);
49
+ this.logger.info('inited ' + proc.uri + ' type ' + ty);
48
50
  this.processors.push(instance);
49
51
  this.processorTransforms.push(instance.transform());
50
52
  await this.write({ init: { uri: proc.uri } });
51
53
  return instance;
52
54
  }
53
55
  async start() {
54
- await Promise.all(this.processors.map((x) => x.produce()));
55
- await Promise.all(this.processorTransforms);
56
+ try {
57
+ await Promise.all(this.processors.map((x) => x.produce()));
58
+ await Promise.all(this.processorTransforms);
59
+ }
60
+ catch (ex) {
61
+ this.logger.error("Start failed: " + JSON.stringify(ex));
62
+ }
56
63
  }
57
64
  createWriter(uri) {
58
65
  const ids = uri.value;
@@ -94,17 +101,21 @@ export class Runner {
94
101
  }
95
102
  }
96
103
  if (msg.pipeline) {
97
- const quads = new Parser().parse(msg.pipeline);
98
- this.shapes = extractShapes(quads, {
99
- [RDFC.Reader]: (x) => this.createReader(x.id),
100
- [RDFC.Writer]: (x) => this.createWriter(x.id)
101
- }, {
102
- [RDFC.Reader]: empty(),
103
- [RDFC.Writer]: empty()
104
- });
105
- this.quads = quads;
106
- this.logger.info("extracted shapes " + JSON.stringify(Object.keys(this.shapes.lenses)));
104
+ try {
105
+ const quads = new Parser().parse(msg.pipeline);
106
+ this.shapes = extractShapes(quads, {
107
+ [RDFC.Reader]: (x) => this.createReader(x.id),
108
+ [RDFC.Writer]: (x) => this.createWriter(x.id),
109
+ }, {
110
+ [RDFC.Reader]: empty(),
111
+ [RDFC.Writer]: empty(),
112
+ });
113
+ this.quads = quads;
114
+ }
115
+ catch (ex) {
116
+ this.logger.error("Pipeline failed: " + JSON.stringify(ex));
117
+ }
107
118
  }
108
119
  }
109
120
  }
110
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVubmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3J1bm5lci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFNQSxPQUFPLEVBQVUsY0FBYyxFQUFFLE1BQU0sVUFBVSxDQUFBO0FBQ2pELE9BQU8sRUFBVSxjQUFjLEVBQUUsTUFBTSxVQUFVLENBQUE7QUFJakQsT0FBTyxPQUFPLE1BQU0sU0FBUyxDQUFBO0FBQzdCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxVQUFVLENBQUE7QUFFdkMsT0FBTyxFQUFRLEtBQUssRUFBRSxhQUFhLEVBQVUsTUFBTSxVQUFVLENBQUE7QUFDN0QsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxJQUFJLENBQUE7QUFDdEMsT0FBTyxFQUFFLGVBQWUsRUFBRSx5QkFBeUIsRUFBRSxHQUFHLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFHL0UsTUFBTSxJQUFJLEdBQUcseUJBQXlCLENBQ2xDLHFDQUFxQyxFQUNyQyxLQUFLLEVBQ0wsTUFBTSxFQUNOLFVBQVUsRUFDVixTQUFTLEVBQ1QsY0FBYyxFQUNkLGFBQWEsRUFDYixRQUFRLEVBQ1IsWUFBWSxFQUNaLFVBQVUsQ0FDYixDQUFBO0FBRUQsTUFBTSxJQUFJLEdBQUcsZUFBZSxDQUN4QiwrQkFBK0IsRUFDL0IsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFDUixRQUFRLEVBQ1IsUUFBUSxDQUNYLENBQUE7QUFXRCxNQUFNLE9BQU8sTUFBTTtJQUNFLE9BQU8sR0FBd0MsRUFBRSxDQUFBO0lBQ2pELE9BQU8sR0FBd0MsRUFBRSxDQUFBO0lBQ2pELE1BQU0sQ0FBYztJQUNwQixLQUFLLENBQVU7SUFDZixNQUFNLENBQVE7SUFDdkIsTUFBTSxDQUFRO0lBQ2QsS0FBSyxHQUFXLEVBQUUsQ0FBQTtJQUVULEdBQUcsQ0FBUTtJQUVYLFVBQVUsR0FBb0IsRUFBRSxDQUFBO0lBQ2hDLG1CQUFtQixHQUF1QixFQUFFLENBQUE7SUFF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QVEsQ0FBQyxDQUFDO1lBQy9DLElBQUksQ0FBQyxNQUFNLEdBQUcsYUFBYSxDQUFDLEtBQUssRUFBRTtnQkFDL0IsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFPLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztnQkFDbkQsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFPLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQzthQUN0RCxFQUFFO2dCQUNDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEtBQUssRUFBUTtnQkFDNUIsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsS0FBSyxFQUFRO2FBQy9CLENBQUMsQ0FBQztZQUNILElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1lBQ25CLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLG1CQUFtQixHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUM1RixDQUFDO0lBQ0wsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBPcmNoZXN0cmF0b3JNZXNzYWdlLFxuICAgIFByb2Nlc3NvcixcbiAgICBSdW5uZXJDbGllbnQsXG4gICAgUnVubmVyTWVzc2FnZSxcbn0gZnJvbSAnQHJkZmMvcHJvdG8nXG5pbXBvcnQgeyBSZWFkZXIsIFJlYWRlckluc3RhbmNlIH0gZnJvbSAnLi9yZWFkZXInXG5pbXBvcnQgeyBXcml0ZXIsIFdyaXRlckluc3RhbmNlIH0gZnJvbSAnLi93cml0ZXInXG5pbXBvcnQgeyBQcm9jZXNzb3IgYXMgUHJvYyB9IGZyb20gJy4vcHJvY2Vzc29yJ1xuaW1wb3J0IHsgTG9nZ2VyIH0gZnJvbSAnd2luc3RvbidcblxuaW1wb3J0IHdpbnN0b24gZnJvbSAnd2luc3RvbidcbmltcG9ydCB7IFJwY1RyYW5zcG9ydCB9IGZyb20gJy4vbG9nZ2VyJ1xuaW1wb3J0IHsgcGFyc2VfanNvbmxkIH0gZnJvbSAnLi9qc29ubGQnXG5pbXBvcnQgeyBDb250LCBlbXB0eSwgZXh0cmFjdFNoYXBlcywgU2hhcGVzIH0gZnJvbSAncmRmLWxlbnMnXG5pbXBvcnQgeyBOYW1lZE5vZGUsIFBhcnNlciB9IGZyb20gJ24zJ1xuaW1wb3J0IHsgY3JlYXRlTmFtZXNwYWNlLCBjcmVhdGVVcmlBbmRUZXJtTmFtZXNwYWNlLCBSREYgfSBmcm9tICdAdHJlZWNnL3R5cGVzJ1xuaW1wb3J0IHsgUXVhZCwgVGVybSB9IGZyb20gJ0ByZGZqcy90eXBlcydcblxuY29uc3QgUkRGTCA9IGNyZWF0ZVVyaUFuZFRlcm1OYW1lc3BhY2UoXG4gICAgJ2h0dHBzOi8vdzNpZC5vcmcvcmRmLWxlbnMvb250b2xvZ3kjJyxcbiAgICAnQ0JEJyxcbiAgICAnUGF0aCcsXG4gICAgJ1BhdGhMZW5zJyxcbiAgICAnQ29udGV4dCcsXG4gICAgJ1R5cGVkRXh0cmFjdCcsXG4gICAgJ0VudlZhcmlhYmxlJyxcbiAgICAnZW52S2V5JyxcbiAgICAnZW52RGVmYXVsdCcsXG4gICAgJ2RhdGF0eXBlJyxcbilcblxuY29uc3QgUkRGQyA9IGNyZWF0ZU5hbWVzcGFjZShcbiAgICAnaHR0cHM6Ly93M2lkLm9yZy9yZGYtY29ubmVjdCMnLFxuICAgICh4KSA9PiB4LFxuICAgICdSZWFkZXInLFxuICAgICdXcml0ZXInLFxuKVxuXG5leHBvcnQgdHlwZSBXcml0YWJsZSA9IChtc2c6IE9yY2hlc3RyYXRvck1lc3NhZ2UpID0+IFByb21pc2U8dW5rbm93bj5cblxudHlwZSBQcm9jZXNzb3JDb25maWcgPSB7XG4gICAgbG9jYXRpb246IHN0cmluZ1xuICAgIGZpbGU6IHN0cmluZ1xuICAgIGNsYXp6Pzogc3RyaW5nXG59XG5cbmV4cG9ydCB0eXBlIEZ1bGxQcm9jPEMgZXh0ZW5kcyBQcm9jPHVua25vd24+PiA9IEMgZXh0ZW5kcyBQcm9jPGluZmVyIFQ+ID8gVCAmIEMgOiB1bmtub3duO1xuZXhwb3J0IGNsYXNzIFJ1bm5lciB7XG4gICAgcHJpdmF0ZSByZWFkb25seSByZWFkZXJzOiB7IFt1cmk6IHN0cmluZ106IFJlYWRlckluc3RhbmNlW10gfSA9IHt9XG4gICAgcHJpdmF0ZSByZWFkb25seSB3cml0ZXJzOiB7IFt1cmk6IHN0cmluZ106IFdyaXRlckluc3RhbmNlW10gfSA9IHt9XG4gICAgcHJpdmF0ZSByZWFkb25seSBjbGllbnQ6IFJ1bm5lckNsaWVudFxuICAgIHByaXZhdGUgcmVhZG9ubHkgd3JpdGU6IFdyaXRhYmxlXG4gICAgcHJpdmF0ZSByZWFkb25seSBsb2dnZXI6IExvZ2dlclxuICAgIHByaXZhdGUgc2hhcGVzOiBTaGFwZXNcbiAgICBwcml2YXRlIHF1YWRzOiBRdWFkW10gPSBbXVxuXG4gICAgcHJpdmF0ZSByZWFkb25seSB1cmk6IHN0cmluZ1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBwcm9jZXNzb3JzOiBQcm9jPHVua25vd24+W10gPSBbXVxuICAgIHByaXZhdGUgcmVhZG9ubHkgcHJvY2Vzc29yVHJhbnNmb3JtczogUHJvbWlzZTx1bmtub3duPltdID0gW11cblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBjbGllbnQ6IFJ1bm5lckNsaWVudCxcbiAgICAgICAgd3JpdGU6IFdyaXRhYmxlLFxuICAgICAgICB1cmk6IHN0cmluZyxcbiAgICAgICAgbG9nZ2VyOiBMb2dnZXIsXG4gICAgKSB7XG4gICAgICAgIHRoaXMuY2xpZW50ID0gY2xpZW50XG4gICAgICAgIHRoaXMud3JpdGUgPSB3cml0ZVxuICAgICAgICB0aGlzLnVyaSA9IHVyaVxuICAgICAgICB0aGlzLmxvZ2dlciA9IGxvZ2dlclxuICAgIH1cblxuICAgIGFzeW5jIGFkZFByb2Nlc3NvcjxQIGV4dGVuZHMgUHJvYzx1bmtub3duPj4ocHJvYzogUHJvY2Vzc29yKTogUHJvbWlzZTxGdWxsUHJvYzxQPj4ge1xuICAgICAgICBjb25zdCBwcm9jTG9nZ2VyID0gd2luc3Rvbi5jcmVhdGVMb2dnZXIoe1xuICAgICAgICAgICAgdHJhbnNwb3J0czogW1xuICAgICAgICAgICAgICAgIG5ldyBScGNUcmFuc3BvcnQoe1xuICAgICAgICAgICAgICAgICAgICBlbnRpdGllczogW3Byb2MudXJpLCB0aGlzLnVyaV0sXG4gICAgICAgICAgICAgICAgICAgIHN0cmVhbTogdGhpcy5jbGllbnQubG9nU3RyZWFtKCgpID0+IHsgfSksXG4gICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBdLFxuICAgICAgICB9KVxuXG4gICAgICAgIGNvbnN0IHR5ID0gSlNPTi5zdHJpbmdpZnkodGhpcy5xdWFkcy5maWx0ZXIoeCA9PiB4LnN1YmplY3QudmFsdWUgPT09IHByb2MudXJpICYmIHgucHJlZGljYXRlLmVxdWFscyhSREYudGVybXMudHlwZSkpLm1hcCh4ID0+IHgub2JqZWN0LnZhbHVlKSlcbiAgICAgICAgdGhpcy5sb2dnZXIuaW5mbyhcInBhcnNpbmcgXCIgKyBwcm9jLnVyaSArIFwiIHR5cGUgXCIgKyB0eSlcbiAgICAgICAgY29uc3QgYXJncyA9IHRoaXMuc2hhcGVzLmxlbnNlc1tSREZMLlR5cGVkRXh0cmFjdF0uZXhlY3V0ZSh7XG4gICAgICAgICAgICBpZDogbmV3IE5hbWVkTm9kZShwcm9jLnVyaSksXG4gICAgICAgICAgICBxdWFkczogdGhpcy5xdWFkcyxcbiAgICAgICAgfSlcblxuICAgICAgICBjb25zdCBjb25maWc6IFByb2Nlc3NvckNvbmZpZyA9IEpTT04ucGFyc2UocHJvYy5jb25maWcpXG4gICAgICAgIC8vIGNvbnN0IHVybCA9IG5ldyBVUkwoY29uZmlnLmxvY2F0aW9uKVxuICAgICAgICAvLyBwcm9jZXNzLmNoZGlyKHVybC5wYXRobmFtZSlcbiAgICAgICAgY29uc3QganNQcm9ncmFtID0gYXdhaXQgaW1wb3J0KGNvbmZpZy5maWxlKVxuICAgICAgICBjb25zdCBjbGF6eiA9IGpzUHJvZ3JhbVtjb25maWcuY2xhenogfHwgJ2RlZmF1bHQnXVxuICAgICAgICBjb25zdCBpbnN0YW5jZTogUHJvYzx1bmtub3duPiA9IG5ldyBjbGF6eihhcmdzLCBwcm9jTG9nZ2VyKVxuICAgICAgICBhd2FpdCBpbnN0YW5jZS5pbml0KClcblxuICAgICAgICB0aGlzLmxvZ2dlci5pbmZvKFwiaW5pdGVkIFwiICsgcHJvYy51cmkgKyBcIiB0eXBlIFwiICsgdHkpXG5cbiAgICAgICAgdGhpcy5wcm9jZXNzb3JzLnB1c2goaW5zdGFuY2UpXG4gICAgICAgIHRoaXMucHJvY2Vzc29yVHJhbnNmb3Jtcy5wdXNoKGluc3RhbmNlLnRyYW5zZm9ybSgpKVxuXG4gICAgICAgIGF3YWl0IHRoaXMud3JpdGUoeyBpbml0OiB7IHVyaTogcHJvYy51cmkgfSB9KVxuXG4gICAgICAgIHJldHVybiA8RnVsbFByb2M8UD4+aW5zdGFuY2U7XG4gICAgfVxuXG4gICAgYXN5bmMgc3RhcnQoKSB7XG4gICAgICAgIGF3YWl0IFByb21pc2UuYWxsKHRoaXMucHJvY2Vzc29ycy5tYXAoKHgpID0+IHgucHJvZHVjZSgpKSlcbiAgICAgICAgYXdhaXQgUHJvbWlzZS5hbGwodGhpcy5wcm9jZXNzb3JUcmFuc2Zvcm1zKVxuICAgIH1cblxuICAgIGNyZWF0ZVdyaXRlcih1cmk6IFRlcm0pOiBXcml0ZXIge1xuICAgICAgICBjb25zdCBpZHMgPSB1cmkudmFsdWU7XG5cbiAgICAgICAgaWYgKHRoaXMud3JpdGVyc1tpZHNdID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHRoaXMud3JpdGVyc1tpZHNdID0gW11cbiAgICAgICAgfVxuICAgICAgICBjb25zdCB3cml0ZXIgPSBuZXcgV3JpdGVySW5zdGFuY2UoXG4gICAgICAgICAgICBpZHMsXG4gICAgICAgICAgICB0aGlzLmNsaWVudCxcbiAgICAgICAgICAgIHRoaXMud3JpdGUsXG4gICAgICAgICAgICB0aGlzLmxvZ2dlcixcbiAgICAgICAgKVxuICAgICAgICB0aGlzLndyaXRlcnNbaWRzXS5wdXNoKHdyaXRlcilcbiAgICAgICAgcmV0dXJuIHdyaXRlclxuICAgIH1cblxuICAgIGNyZWF0ZVJlYWRlcih1cmk6IFRlcm0pOiBSZWFkZXIge1xuICAgICAgICBjb25zdCBpZHMgPSB1cmkudmFsdWU7XG5cbiAgICAgICAgaWYgKHRoaXMucmVhZGVyc1tpZHNdID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHRoaXMucmVhZGVyc1tpZHNdID0gW11cbiAgICAgICAgfVxuICAgICAgICBjb25zdCByZWFkZXIgPSBuZXcgUmVhZGVySW5zdGFuY2UoaWRzLCB0aGlzLmNsaWVudCwgdGhpcy5sb2dnZXIpXG4gICAgICAgIHRoaXMucmVhZGVyc1tpZHNdLnB1c2gocmVhZGVyKVxuICAgICAgICByZXR1cm4gcmVhZGVyXG4gICAgfVxuXG4gICAgYXN5bmMgaGFuZGxlT3JjaE1lc3NhZ2UobXNnOiBSdW5uZXJNZXNzYWdlKSB7XG4gICAgICAgIGlmIChtc2cubXNnKSB7XG4gICAgICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZygnSGFuZGxpbmcgZGF0YSBtc2cgZm9yICcgKyBtc2cubXNnLmNoYW5uZWwpXG4gICAgICAgICAgICBmb3IgKGNvbnN0IHJlYWRlciBvZiB0aGlzLnJlYWRlcnNbbXNnLm1zZy5jaGFubmVsXSB8fCBbXSkge1xuICAgICAgICAgICAgICAgIHJlYWRlci5oYW5kbGVNc2cobXNnLm1zZylcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChtc2cuc3RyZWFtTXNnKSB7XG4gICAgICAgICAgICBmb3IgKGNvbnN0IHJlYWRlciBvZiB0aGlzLnJlYWRlcnNbbXNnLnN0cmVhbU1zZy5jaGFubmVsXSB8fCBbXSkge1xuICAgICAgICAgICAgICAgIHJlYWRlci5oYW5kbGVTdHJlYW1pbmdNZXNzYWdlKG1zZy5zdHJlYW1Nc2cpXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpZiAobXNnLmNsb3NlKSB7XG4gICAgICAgICAgICBjb25zdCB1cmkgPSBtc2cuY2xvc2UuY2hhbm5lbFxuXG4gICAgICAgICAgICBmb3IgKGNvbnN0IHJlYWRlciBvZiB0aGlzLnJlYWRlcnNbdXJpXSB8fCBbXSkge1xuICAgICAgICAgICAgICAgIHJlYWRlci5jbG9zZSgpXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGZvciAoY29uc3Qgd3JpdGVyIG9mIHRoaXMud3JpdGVyc1t1cmldIHx8IFtdKSB7XG4gICAgICAgICAgICAgICAgYXdhaXQgd3JpdGVyLmNsb3NlKHRydWUpXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpZiAobXNnLnBpcGVsaW5lKSB7XG4gICAgICAgICAgICAvLyBoZXJlXG4gICAgICAgICAgICBjb25zdCBxdWFkcyA9IG5ldyBQYXJzZXIoKS5wYXJzZShtc2cucGlwZWxpbmUpO1xuICAgICAgICAgICAgdGhpcy5zaGFwZXMgPSBleHRyYWN0U2hhcGVzKHF1YWRzLCB7XG4gICAgICAgICAgICAgICAgW1JERkMuUmVhZGVyXTogKHg6IENvbnQpID0+IHRoaXMuY3JlYXRlUmVhZGVyKHguaWQpLFxuICAgICAgICAgICAgICAgIFtSREZDLldyaXRlcl06ICh4OiBDb250KSA9PiB0aGlzLmNyZWF0ZVdyaXRlcih4LmlkKVxuICAgICAgICAgICAgfSwge1xuICAgICAgICAgICAgICAgIFtSREZDLlJlYWRlcl06IGVtcHR5PENvbnQ+KCksXG4gICAgICAgICAgICAgICAgW1JERkMuV3JpdGVyXTogZW1wdHk8Q29udD4oKVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB0aGlzLnF1YWRzID0gcXVhZHM7XG4gICAgICAgICAgICB0aGlzLmxvZ2dlci5pbmZvKFwiZXh0cmFjdGVkIHNoYXBlcyBcIiArIEpTT04uc3RyaW5naWZ5KE9iamVjdC5rZXlzKHRoaXMuc2hhcGVzLmxlbnNlcykpKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
121
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnVubmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3J1bm5lci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFNQSxPQUFPLEVBQVUsY0FBYyxFQUFFLE1BQU0sVUFBVSxDQUFBO0FBQ2pELE9BQU8sRUFBVSxjQUFjLEVBQUUsTUFBTSxVQUFVLENBQUE7QUFJakQsT0FBTyxPQUFPLE1BQU0sU0FBUyxDQUFBO0FBQzdCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxVQUFVLENBQUE7QUFDdkMsT0FBTyxFQUFRLEtBQUssRUFBRSxhQUFhLEVBQVUsTUFBTSxVQUFVLENBQUE7QUFDN0QsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxJQUFJLENBQUE7QUFDdEMsT0FBTyxFQUFFLGVBQWUsRUFBRSx5QkFBeUIsRUFBRSxHQUFHLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFHL0UsTUFBTSxJQUFJLEdBQUcseUJBQXlCLENBQ3BDLHFDQUFxQyxFQUNyQyxLQUFLLEVBQ0wsTUFBTSxFQUNOLFVBQVUsRUFDVixTQUFTLEVBQ1QsY0FBYyxFQUNkLGFBQWEsRUFDYixRQUFRLEVBQ1IsWUFBWSxFQUNaLFVBQVUsQ0FDWCxDQUFBO0FBRUQsTUFBTSxJQUFJLEdBQUcsZUFBZSxDQUMxQiwrQkFBK0IsRUFDL0IsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFDUixRQUFRLEVBQ1IsUUFBUSxDQUNULENBQUE7QUFZRCxNQUFNLE9BQU8sTUFBTTtJQUNBLE9BQU8sR0FBd0MsRUFBRSxDQUFBO0lBQ2pELE9BQU8sR0FBd0MsRUFBRSxDQUFBO0lBQ2pELE1BQU0sQ0FBYztJQUNwQixLQUFLLENBQVU7SUFDZixNQUFNLENBQVE7SUFDdkIsTUFBTSxDQUFRO0lBQ2QsS0FBSyxHQUFXLEVBQUUsQ0FBQTtJQUVULEdBQUcsQ0FBUTtJQUVYLFVBQVUsR0FBb0IsRUFBRSxDQUFBO0lBQ2hDLG1CQUFtQixHQUF1QixFQUFFLENBQUE7SUFF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TUFBTSxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFBO1lBQzFCLENBQUM7UUFDSCxDQUFDO1FBRUQsSUFBSSxHQUFHLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDakIsSUFBSSxDQUFDO2dCQUdILE1BQU0sS0FBSyxHQUFHLElBQUksTUFBTSxFQUFFLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQTtnQkFDOUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxhQUFhLENBQ3pCLEtBQUssRUFDTDtvQkFDRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQU8sRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO29CQUNuRCxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQU8sRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO2lCQUNwRCxFQUNEO29CQUNFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEtBQUssRUFBUTtvQkFDNUIsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsS0FBSyxFQUFRO2lCQUM3QixDQUNGLENBQUE7Z0JBQ0QsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUE7WUFDcEIsQ0FBQztZQUNELE9BQU8sRUFBVyxFQUFFLENBQUM7Z0JBQ25CLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLG1CQUFtQixHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQTtZQUM3RCxDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIE9yY2hlc3RyYXRvck1lc3NhZ2UsXG4gIFByb2Nlc3NvcixcbiAgUnVubmVyQ2xpZW50LFxuICBSdW5uZXJNZXNzYWdlLFxufSBmcm9tICdAcmRmYy9wcm90bydcbmltcG9ydCB7IFJlYWRlciwgUmVhZGVySW5zdGFuY2UgfSBmcm9tICcuL3JlYWRlcidcbmltcG9ydCB7IFdyaXRlciwgV3JpdGVySW5zdGFuY2UgfSBmcm9tICcuL3dyaXRlcidcbmltcG9ydCB7IFByb2Nlc3NvciBhcyBQcm9jIH0gZnJvbSAnLi9wcm9jZXNzb3InXG5pbXBvcnQgeyBMb2dnZXIgfSBmcm9tICd3aW5zdG9uJ1xuXG5pbXBvcnQgd2luc3RvbiBmcm9tICd3aW5zdG9uJ1xuaW1wb3J0IHsgUnBjVHJhbnNwb3J0IH0gZnJvbSAnLi9sb2dnZXInXG5pbXBvcnQgeyBDb250LCBlbXB0eSwgZXh0cmFjdFNoYXBlcywgU2hhcGVzIH0gZnJvbSAncmRmLWxlbnMnXG5pbXBvcnQgeyBOYW1lZE5vZGUsIFBhcnNlciB9IGZyb20gJ24zJ1xuaW1wb3J0IHsgY3JlYXRlTmFtZXNwYWNlLCBjcmVhdGVVcmlBbmRUZXJtTmFtZXNwYWNlLCBSREYgfSBmcm9tICdAdHJlZWNnL3R5cGVzJ1xuaW1wb3J0IHsgUXVhZCwgVGVybSB9IGZyb20gJ0ByZGZqcy90eXBlcydcblxuY29uc3QgUkRGTCA9IGNyZWF0ZVVyaUFuZFRlcm1OYW1lc3BhY2UoXG4gICdodHRwczovL3czaWQub3JnL3JkZi1sZW5zL29udG9sb2d5IycsXG4gICdDQkQnLFxuICAnUGF0aCcsXG4gICdQYXRoTGVucycsXG4gICdDb250ZXh0JyxcbiAgJ1R5cGVkRXh0cmFjdCcsXG4gICdFbnZWYXJpYWJsZScsXG4gICdlbnZLZXknLFxuICAnZW52RGVmYXVsdCcsXG4gICdkYXRhdHlwZScsXG4pXG5cbmNvbnN0IFJERkMgPSBjcmVhdGVOYW1lc3BhY2UoXG4gICdodHRwczovL3czaWQub3JnL3JkZi1jb25uZWN0IycsXG4gICh4KSA9PiB4LFxuICAnUmVhZGVyJyxcbiAgJ1dyaXRlcicsXG4pXG5cbmV4cG9ydCB0eXBlIFdyaXRhYmxlID0gKG1zZzogT3JjaGVzdHJhdG9yTWVzc2FnZSkgPT4gUHJvbWlzZTx1bmtub3duPlxuXG50eXBlIFByb2Nlc3NvckNvbmZpZyA9IHtcbiAgbG9jYXRpb246IHN0cmluZ1xuICBmaWxlOiBzdHJpbmdcbiAgY2xheno/OiBzdHJpbmdcbn1cblxuZXhwb3J0IHR5cGUgRnVsbFByb2M8QyBleHRlbmRzIFByb2M8dW5rbm93bj4+ID1cbiAgQyBleHRlbmRzIFByb2M8aW5mZXIgVD4gPyBUICYgQyA6IHVua25vd25cbmV4cG9ydCBjbGFzcyBSdW5uZXIge1xuICBwcml2YXRlIHJlYWRvbmx5IHJlYWRlcnM6IHsgW3VyaTogc3RyaW5nXTogUmVhZGVySW5zdGFuY2VbXSB9ID0ge31cbiAgcHJpdmF0ZSByZWFkb25seSB3cml0ZXJzOiB7IFt1cmk6IHN0cmluZ106IFdyaXRlckluc3RhbmNlW10gfSA9IHt9XG4gIHByaXZhdGUgcmVhZG9ubHkgY2xpZW50OiBSdW5uZXJDbGllbnRcbiAgcHJpdmF0ZSByZWFkb25seSB3cml0ZTogV3JpdGFibGVcbiAgcHJpdmF0ZSByZWFkb25seSBsb2dnZXI6IExvZ2dlclxuICBwcml2YXRlIHNoYXBlczogU2hhcGVzXG4gIHByaXZhdGUgcXVhZHM6IFF1YWRbXSA9IFtdXG5cbiAgcHJpdmF0ZSByZWFkb25seSB1cmk6IHN0cmluZ1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgcHJvY2Vzc29yczogUHJvYzx1bmtub3duPltdID0gW11cbiAgcHJpdmF0ZSByZWFkb25seSBwcm9jZXNzb3JUcmFuc2Zvcm1zOiBQcm9taXNlPHVua25vd24+W10gPSBbXVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIGNsaWVudDogUnVubmVyQ2xpZW50LFxuICAgIHdyaXRlOiBXcml0YWJsZSxcbiAgICB1cmk6IHN0cmluZyxcbiAgICBsb2dnZXI6IExvZ2dlcixcbiAgKSB7XG4gICAgdGhpcy5jbGllbnQgPSBjbGllbnRcbiAgICB0aGlzLndyaXRlID0gd3JpdGVcbiAgICB0aGlzLnVyaSA9IHVyaVxuICAgIHRoaXMubG9nZ2VyID0gbG9nZ2VyXG4gIH1cblxuICBhc3luYyBhZGRQcm9jZXNzb3I8UCBleHRlbmRzIFByb2M8dW5rbm93bj4+KFxuICAgIHByb2M6IFByb2Nlc3NvcixcbiAgKTogUHJvbWlzZTxGdWxsUHJvYzxQPj4ge1xuICAgIGNvbnN0IHByb2NMb2dnZXIgPSB3aW5zdG9uLmNyZWF0ZUxvZ2dlcih7XG4gICAgICB0cmFuc3BvcnRzOiBbXG4gICAgICAgIG5ldyBScGNUcmFuc3BvcnQoe1xuICAgICAgICAgIGVudGl0aWVzOiBbcHJvYy51cmksIHRoaXMudXJpXSxcbiAgICAgICAgICBzdHJlYW06IHRoaXMuY2xpZW50LmxvZ1N0cmVhbSgoKSA9PiB7IH0pLFxuICAgICAgICB9KSxcbiAgICAgIF0sXG4gICAgfSlcblxuICAgIGNvbnN0IHR5ID0gSlNPTi5zdHJpbmdpZnkoXG4gICAgICB0aGlzLnF1YWRzXG4gICAgICAgIC5maWx0ZXIoXG4gICAgICAgICAgKHgpID0+XG4gICAgICAgICAgICB4LnN1YmplY3QudmFsdWUgPT09IHByb2MudXJpICYmIHgucHJlZGljYXRlLmVxdWFscyhSREYudGVybXMudHlwZSksXG4gICAgICAgIClcbiAgICAgICAgLm1hcCgoeCkgPT4geC5vYmplY3QudmFsdWUpLFxuICAgIClcbiAgICB0aGlzLmxvZ2dlci5pbmZvKCdwYXJzaW5nICcgKyBwcm9jLnVyaSArICcgdHlwZSAnICsgdHkpXG4gICAgY29uc3QgYXJncyA9IHRoaXMuc2hhcGVzLmxlbnNlc1tSREZMLlR5cGVkRXh0cmFjdF0uZXhlY3V0ZSh7XG4gICAgICBpZDogbmV3IE5hbWVkTm9kZShwcm9jLnVyaSksXG4gICAgICBxdWFkczogdGhpcy5xdWFkcyxcbiAgICB9KVxuXG4gICAgY29uc3QgY29uZmlnOiBQcm9jZXNzb3JDb25maWcgPSBKU09OLnBhcnNlKHByb2MuY29uZmlnKVxuICAgIC8vIGNvbnN0IHVybCA9IG5ldyBVUkwoY29uZmlnLmxvY2F0aW9uKVxuICAgIC8vIHByb2Nlc3MuY2hkaXIodXJsLnBhdGhuYW1lKVxuICAgIGNvbnN0IGpzUHJvZ3JhbSA9IGF3YWl0IGltcG9ydChjb25maWcuZmlsZSlcbiAgICBjb25zdCBjbGF6eiA9IGpzUHJvZ3JhbVtjb25maWcuY2xhenogfHwgJ2RlZmF1bHQnXVxuICAgIGNvbnN0IGluc3RhbmNlOiBQcm9jPHVua25vd24+ID0gbmV3IGNsYXp6KGFyZ3MsIHByb2NMb2dnZXIpXG4gICAgYXdhaXQgaW5zdGFuY2UuaW5pdCgpXG5cbiAgICB0aGlzLmxvZ2dlci5pbmZvKCdpbml0ZWQgJyArIHByb2MudXJpICsgJyB0eXBlICcgKyB0eSlcblxuICAgIHRoaXMucHJvY2Vzc29ycy5wdXNoKGluc3RhbmNlKVxuICAgIHRoaXMucHJvY2Vzc29yVHJhbnNmb3Jtcy5wdXNoKGluc3RhbmNlLnRyYW5zZm9ybSgpKVxuXG4gICAgYXdhaXQgdGhpcy53cml0ZSh7IGluaXQ6IHsgdXJpOiBwcm9jLnVyaSB9IH0pXG5cbiAgICByZXR1cm4gPEZ1bGxQcm9jPFA+Pmluc3RhbmNlXG4gIH1cblxuICBhc3luYyBzdGFydCgpIHtcbiAgICB0cnkge1xuICAgICAgYXdhaXQgUHJvbWlzZS5hbGwodGhpcy5wcm9jZXNzb3JzLm1hcCgoeCkgPT4geC5wcm9kdWNlKCkpKVxuICAgICAgYXdhaXQgUHJvbWlzZS5hbGwodGhpcy5wcm9jZXNzb3JUcmFuc2Zvcm1zKVxuICAgIH0gY2F0Y2ggKGV4OiB1bmtub3duKSB7XG4gICAgICB0aGlzLmxvZ2dlci5lcnJvcihcIlN0YXJ0IGZhaWxlZDogXCIgKyBKU09OLnN0cmluZ2lmeShleCkpXG4gICAgfVxuICB9XG5cbiAgY3JlYXRlV3JpdGVyKHVyaTogVGVybSk6IFdyaXRlciB7XG4gICAgY29uc3QgaWRzID0gdXJpLnZhbHVlXG5cbiAgICBpZiAodGhpcy53cml0ZXJzW2lkc10gPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy53cml0ZXJzW2lkc10gPSBbXVxuICAgIH1cbiAgICBjb25zdCB3cml0ZXIgPSBuZXcgV3JpdGVySW5zdGFuY2UoaWRzLCB0aGlzLmNsaWVudCwgdGhpcy53cml0ZSwgdGhpcy5sb2dnZXIpXG4gICAgdGhpcy53cml0ZXJzW2lkc10ucHVzaCh3cml0ZXIpXG4gICAgcmV0dXJuIHdyaXRlclxuICB9XG5cbiAgY3JlYXRlUmVhZGVyKHVyaTogVGVybSk6IFJlYWRlciB7XG4gICAgY29uc3QgaWRzID0gdXJpLnZhbHVlXG5cbiAgICBpZiAodGhpcy5yZWFkZXJzW2lkc10gPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy5yZWFkZXJzW2lkc10gPSBbXVxuICAgIH1cbiAgICBjb25zdCByZWFkZXIgPSBuZXcgUmVhZGVySW5zdGFuY2UoaWRzLCB0aGlzLmNsaWVudCwgdGhpcy5sb2dnZXIpXG4gICAgdGhpcy5yZWFkZXJzW2lkc10ucHVzaChyZWFkZXIpXG4gICAgcmV0dXJuIHJlYWRlclxuICB9XG5cbiAgYXN5bmMgaGFuZGxlT3JjaE1lc3NhZ2UobXNnOiBSdW5uZXJNZXNzYWdlKSB7XG4gICAgaWYgKG1zZy5tc2cpIHtcbiAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKCdIYW5kbGluZyBkYXRhIG1zZyBmb3IgJyArIG1zZy5tc2cuY2hhbm5lbClcbiAgICAgIGZvciAoY29uc3QgcmVhZGVyIG9mIHRoaXMucmVhZGVyc1ttc2cubXNnLmNoYW5uZWxdIHx8IFtdKSB7XG4gICAgICAgIHJlYWRlci5oYW5kbGVNc2cobXNnLm1zZylcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAobXNnLnN0cmVhbU1zZykge1xuICAgICAgZm9yIChjb25zdCByZWFkZXIgb2YgdGhpcy5yZWFkZXJzW21zZy5zdHJlYW1Nc2cuY2hhbm5lbF0gfHwgW10pIHtcbiAgICAgICAgcmVhZGVyLmhhbmRsZVN0cmVhbWluZ01lc3NhZ2UobXNnLnN0cmVhbU1zZylcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAobXNnLmNsb3NlKSB7XG4gICAgICBjb25zdCB1cmkgPSBtc2cuY2xvc2UuY2hhbm5lbFxuXG4gICAgICBmb3IgKGNvbnN0IHJlYWRlciBvZiB0aGlzLnJlYWRlcnNbdXJpXSB8fCBbXSkge1xuICAgICAgICByZWFkZXIuY2xvc2UoKVxuICAgICAgfVxuXG4gICAgICBmb3IgKGNvbnN0IHdyaXRlciBvZiB0aGlzLndyaXRlcnNbdXJpXSB8fCBbXSkge1xuICAgICAgICBhd2FpdCB3cml0ZXIuY2xvc2UodHJ1ZSlcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAobXNnLnBpcGVsaW5lKSB7XG4gICAgICB0cnkge1xuXG4gICAgICAgIC8vIGhlcmVcbiAgICAgICAgY29uc3QgcXVhZHMgPSBuZXcgUGFyc2VyKCkucGFyc2UobXNnLnBpcGVsaW5lKVxuICAgICAgICB0aGlzLnNoYXBlcyA9IGV4dHJhY3RTaGFwZXMoXG4gICAgICAgICAgcXVhZHMsXG4gICAgICAgICAge1xuICAgICAgICAgICAgW1JERkMuUmVhZGVyXTogKHg6IENvbnQpID0+IHRoaXMuY3JlYXRlUmVhZGVyKHguaWQpLFxuICAgICAgICAgICAgW1JERkMuV3JpdGVyXTogKHg6IENvbnQpID0+IHRoaXMuY3JlYXRlV3JpdGVyKHguaWQpLFxuICAgICAgICAgIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgW1JERkMuUmVhZGVyXTogZW1wdHk8Q29udD4oKSxcbiAgICAgICAgICAgIFtSREZDLldyaXRlcl06IGVtcHR5PENvbnQ+KCksXG4gICAgICAgICAgfSxcbiAgICAgICAgKVxuICAgICAgICB0aGlzLnF1YWRzID0gcXVhZHNcbiAgICAgIH1cbiAgICAgIGNhdGNoIChleDogdW5rbm93bikge1xuICAgICAgICB0aGlzLmxvZ2dlci5lcnJvcihcIlBpcGVsaW5lIGZhaWxlZDogXCIgKyBKU09OLnN0cmluZ2lmeShleCkpXG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iXX0=
package/lib/testUtils.js CHANGED
@@ -7,8 +7,8 @@ import { readFile } from 'fs/promises';
7
7
  import winston, { createLogger } from 'winston';
8
8
  import { WriterInstance } from './writer.js';
9
9
  import { ReaderInstance } from './reader.js';
10
- export async function getProcessorShape(baseIRI = process.cwd() + "/node_modules/@rdfc/js-runner/index.ttl") {
11
- const configFile = await readFile(baseIRI, { encoding: "utf8" });
10
+ export async function getProcessorShape(baseIRI = process.cwd() + '/node_modules/@rdfc/js-runner/index.ttl') {
11
+ const configFile = await readFile(baseIRI, { encoding: 'utf8' });
12
12
  const configQuads = new Parser().parse(configFile);
13
13
  const shapes = extractShapes(configQuads);
14
14
  return shapes;
@@ -37,7 +37,9 @@ export async function one(iter) {
37
37
  export const client = new TestClient();
38
38
  export const uri = 'someUri';
39
39
  export const logger = createLogger({
40
- transports: new winston.transports.Console({ level: process.env['DEBUG'] || 'info' }),
40
+ transports: new winston.transports.Console({
41
+ level: process.env['DEBUG'] || 'info',
42
+ }),
41
43
  });
42
44
  export function createWriter(iri = uri) {
43
45
  const reader = createReader(iri);
@@ -55,4 +57,4 @@ export function createReader(iri = uri) {
55
57
  const reader = new ReaderInstance(iri, client, logger);
56
58
  return reader;
57
59
  }
58
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdFV0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3Rlc3RVdGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWtDLFlBQVksRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUUxRSxPQUFPLEtBQUssSUFBSSxNQUFNLGVBQWUsQ0FBQTtBQUNyQyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFDdEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sSUFBSSxDQUFDO0FBQzVCLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDdkMsT0FBTyxPQUFPLEVBQUUsRUFBRSxZQUFZLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDaEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUMxQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBRTFDLE1BQU0sQ0FBQyxLQUFLLFVBQVUsaUJBQWlCLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQyxHQUFHLEVBQUUsR0FBRyx5Q0FBeUM7SUFDekcsTUFBTSxVQUFVLEdBQUcsTUFBTSxRQUFRLENBQUMsT0FBTyxFQUFFLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUM7SUFDakUsTUFBTSxXQUFXLEdBQUcsSUFBSSxNQUFNLEVBQUUsQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDbkQsTUFBTSxNQUFNLEdBQUcsYUFBYSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBRTFDLE9BQU8sTUFBTSxDQUFDO0FBQ2hCLENBQUM7QUFFRCxNQUFNLE9BQU8sVUFBVyxTQUFRLFlBQVk7SUFDMUMsSUFBSSxDQUFzRDtJQUUxRDtRQUNFLEtBQUssQ0FBQyxnQkFBZ0IsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLGNBQWMsRUFBRSxDQUFDLENBQUE7SUFDNUQsQ0FBQztJQUVELFVBQVU7UUFDUixPQUFPLElBQUksT0FBTyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQTtJQUNoRCxDQUFDO0lBRUQsb0JBQW9CO1FBQ2xCLE1BQU0sTUFBTSxHQUFHLElBQUksd0JBQXdCLENBQVksQ0FBQyxJQUFZLEVBQUUsRUFBRTtZQUN0RSxPQUFPLEVBQUUsSUFBSSxFQUFFLENBQUE7UUFDakIsQ0FBQyxDQUFDLENBQUE7UUFDRixJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFBO1FBQ2pCLE9BQU8sTUFBTSxDQUFBO0lBQ2YsQ0FBQztDQUNGO0FBRUQsTUFBTSxDQUFDLEtBQUssVUFBVSxHQUFHLENBQUksSUFBc0I7SUFDakQsSUFBSSxLQUFLLEVBQUUsTUFBTSxJQUFJLElBQUksSUFBSSxFQUFFLENBQUM7UUFDOUIsT0FBTyxJQUFJLENBQUE7SUFDYixDQUFDO0FBQ0gsQ0FBQztBQUVELE1BQU0sQ0FBQyxNQUFNLE1BQU0sR0FBRyxJQUFJLFVBQVUsRUFBRSxDQUFBO0FBQ3RDLE1BQU0sQ0FBQyxNQUFNLEdBQUcsR0FBRyxTQUFTLENBQUE7QUFDNUIsTUFBTSxDQUFDLE1BQU0sTUFBTSxHQUFHLFlBQVksQ0FBQztJQUNqQyxVQUFVLEVBQUUsSUFBSSxPQUFPLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxFQUFFLEtBQUssRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxJQUFJLE1BQU0sRUFBRSxDQUFDO0NBQ3RGLENBQUMsQ0FBQTtBQUVGLE1BQU0sVUFBVSxZQUFZLENBQUMsR0FBRyxHQUFHLEdBQUc7SUFDcEMsTUFBTSxNQUFNLEdBQUcsWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2pDLE1BQU0sV0FBVyxHQUFHLElBQUksY0FBYyxDQUFDLEdBQUcsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxFQUFFO1FBQ2hFLElBQUksR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDO1lBQ1osTUFBTSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDNUIsQ0FBQztRQUNELElBQUcsR0FBRyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2IsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFBO1FBQ2hCLENBQUM7SUFDSCxDQUFDLEVBQUUsTUFBTSxDQUFDLENBQUE7SUFDVixPQUFPLENBQUMsV0FBVyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0FBQy9CLENBQUM7QUFFRCxNQUFNLFVBQVUsWUFBWSxDQUFDLEdBQUcsR0FBRyxHQUFHO0lBQ3BDLE1BQU0sTUFBTSxHQUFHLElBQUksY0FBYyxDQUFDLEdBQUcsRUFBRSxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDdkQsT0FBTyxNQUFNLENBQUM7QUFDaEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERhdGFDaHVuaywgT3JjaGVzdHJhdG9yTWVzc2FnZSwgUnVubmVyQ2xpZW50IH0gZnJvbSAnQHJkZmMvcHJvdG8nXG5pbXBvcnQgeyBDbGllbnRSZWFkYWJsZVN0cmVhbSB9IGZyb20gJ0BncnBjL2dycGMtanMnXG5pbXBvcnQgKiBhcyBncnBjIGZyb20gJ0BncnBjL2dycGMtanMnXG5pbXBvcnQgeyBDbGllbnRSZWFkYWJsZVN0cmVhbUltcGwgfSBmcm9tICcuL3JlZXhwb3J0cydcbmltcG9ydCB7IGV4dHJhY3RTaGFwZXMgfSBmcm9tICdyZGYtbGVucyc7XG5pbXBvcnQgeyBQYXJzZXIgfSBmcm9tICduMyc7XG5pbXBvcnQgeyByZWFkRmlsZSB9IGZyb20gJ2ZzL3Byb21pc2VzJztcbmltcG9ydCB3aW5zdG9uLCB7IGNyZWF0ZUxvZ2dlciB9IGZyb20gJ3dpbnN0b24nO1xuaW1wb3J0IHsgV3JpdGVySW5zdGFuY2UgfSBmcm9tICcuL3dyaXRlcic7XG5pbXBvcnQgeyBSZWFkZXJJbnN0YW5jZSB9IGZyb20gJy4vcmVhZGVyJztcblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdldFByb2Nlc3NvclNoYXBlKGJhc2VJUkkgPSBwcm9jZXNzLmN3ZCgpICsgXCIvbm9kZV9tb2R1bGVzL0ByZGZjL2pzLXJ1bm5lci9pbmRleC50dGxcIikge1xuICBjb25zdCBjb25maWdGaWxlID0gYXdhaXQgcmVhZEZpbGUoYmFzZUlSSSwgeyBlbmNvZGluZzogXCJ1dGY4XCIgfSk7XG4gIGNvbnN0IGNvbmZpZ1F1YWRzID0gbmV3IFBhcnNlcigpLnBhcnNlKGNvbmZpZ0ZpbGUpO1xuICBjb25zdCBzaGFwZXMgPSBleHRyYWN0U2hhcGVzKGNvbmZpZ1F1YWRzKTtcblxuICByZXR1cm4gc2hhcGVzO1xufVxuXG5leHBvcnQgY2xhc3MgVGVzdENsaWVudCBleHRlbmRzIFJ1bm5lckNsaWVudCB7XG4gIG5leHQ6IChzdHJlYW06IENsaWVudFJlYWRhYmxlU3RyZWFtPERhdGFDaHVuaz4pID0+IHVua25vd25cblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcignbG9jYWxob3N0OjU0MDAnLCBncnBjLmNyZWRlbnRpYWxzLmNyZWF0ZUluc2VjdXJlKCkpXG4gIH1cblxuICBuZXh0U3RyZWFtKCk6IFByb21pc2U8Q2xpZW50UmVhZGFibGVTdHJlYW08RGF0YUNodW5rPj4ge1xuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzKSA9PiAodGhpcy5uZXh0ID0gcmVzKSlcbiAgfVxuXG4gIHJlY2VpdmVTdHJlYW1NZXNzYWdlKCk6IENsaWVudFJlYWRhYmxlU3RyZWFtPERhdGFDaHVuaz4ge1xuICAgIGNvbnN0IHN0cmVhbSA9IG5ldyBDbGllbnRSZWFkYWJsZVN0cmVhbUltcGw8RGF0YUNodW5rPigoZGF0YTogQnVmZmVyKSA9PiB7XG4gICAgICByZXR1cm4geyBkYXRhIH1cbiAgICB9KVxuICAgIHRoaXMubmV4dChzdHJlYW0pXG4gICAgcmV0dXJuIHN0cmVhbVxuICB9XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBvbmU8VD4oaXRlcjogQXN5bmNJdGVyYWJsZTxUPik6IFByb21pc2U8VCB8IHVuZGVmaW5lZD4ge1xuICBmb3IgYXdhaXQgKGNvbnN0IGl0ZW0gb2YgaXRlcikge1xuICAgIHJldHVybiBpdGVtXG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IGNsaWVudCA9IG5ldyBUZXN0Q2xpZW50KClcbmV4cG9ydCBjb25zdCB1cmkgPSAnc29tZVVyaSdcbmV4cG9ydCBjb25zdCBsb2dnZXIgPSBjcmVhdGVMb2dnZXIoe1xuICB0cmFuc3BvcnRzOiBuZXcgd2luc3Rvbi50cmFuc3BvcnRzLkNvbnNvbGUoeyBsZXZlbDogcHJvY2Vzcy5lbnZbJ0RFQlVHJ10gfHwgJ2luZm8nIH0pLFxufSlcblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZVdyaXRlcihpcmkgPSB1cmkpOiBbV3JpdGVySW5zdGFuY2UsIFJlYWRlckluc3RhbmNlXSB7XG4gIGNvbnN0IHJlYWRlciA9IGNyZWF0ZVJlYWRlcihpcmkpO1xuICBjb25zdCB3cml0ZVN0cmVhbSA9IG5ldyBXcml0ZXJJbnN0YW5jZShpcmksIGNsaWVudCwgYXN5bmMgKG1zZykgPT4ge1xuICAgIGlmIChtc2cubXNnKSB7XG4gICAgICByZWFkZXIuaGFuZGxlTXNnKG1zZy5tc2cpO1xuICAgIH1cbiAgICBpZihtc2cuY2xvc2UpIHtcbiAgICAgIHJlYWRlci5jbG9zZSgpXG4gICAgfVxuICB9LCBsb2dnZXIpXG4gIHJldHVybiBbd3JpdGVTdHJlYW0sIHJlYWRlcl07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVSZWFkZXIoaXJpID0gdXJpKTogUmVhZGVySW5zdGFuY2Uge1xuICBjb25zdCByZWFkZXIgPSBuZXcgUmVhZGVySW5zdGFuY2UoaXJpLCBjbGllbnQsIGxvZ2dlcik7XG4gIHJldHVybiByZWFkZXI7XG59XG4iXX0=
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdFV0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3Rlc3RVdGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWEsWUFBWSxFQUFFLE1BQU0sYUFBYSxDQUFBO0FBRXJELE9BQU8sS0FBSyxJQUFJLE1BQU0sZUFBZSxDQUFBO0FBQ3JDLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUN0RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sVUFBVSxDQUFBO0FBQ3hDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxJQUFJLENBQUE7QUFDM0IsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUN0QyxPQUFPLE9BQU8sRUFBRSxFQUFFLFlBQVksRUFBRSxNQUFNLFNBQVMsQ0FBQTtBQUMvQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sVUFBVSxDQUFBO0FBQ3pDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxVQUFVLENBQUE7QUFFekMsTUFBTSxDQUFDLEtBQUssVUFBVSxpQkFBaUIsQ0FDckMsT0FBTyxHQUFHLE9BQU8sQ0FBQyxHQUFHLEVBQUUsR0FBRyx5Q0FBeUM7SUFFbkUsTUFBTSxVQUFVLEdBQUcsTUFBTSxRQUFRLENBQUMsT0FBTyxFQUFFLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUE7SUFDaEUsTUFBTSxXQUFXLEdBQUcsSUFBSSxNQUFNLEVBQUUsQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUE7SUFDbEQsTUFBTSxNQUFNLEdBQUcsYUFBYSxDQUFDLFdBQVcsQ0FBQyxDQUFBO0lBRXpDLE9BQU8sTUFBTSxDQUFBO0FBQ2YsQ0FBQztBQUVELE1BQU0sT0FBTyxVQUFXLFNBQVEsWUFBWTtJQUMxQyxJQUFJLENBQXNEO0lBRTFEO1FBQ0UsS0FBSyxDQUFDLGdCQUFnQixFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsY0FBYyxFQUFFLENBQUMsQ0FBQTtJQUM1RCxDQUFDO0lBRUQsVUFBVTtRQUNSLE9BQU8sSUFBSSxPQUFPLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFBO0lBQ2hELENBQUM7SUFFRCxvQkFBb0I7UUFDbEIsTUFBTSxNQUFNLEdBQUcsSUFBSSx3QkFBd0IsQ0FBWSxDQUFDLElBQVksRUFBRSxFQUFFO1lBQ3RFLE9BQU8sRUFBRSxJQUFJLEVBQUUsQ0FBQTtRQUNqQixDQUFDLENBQUMsQ0FBQTtRQUNGLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUE7UUFDakIsT0FBTyxNQUFNLENBQUE7SUFDZixDQUFDO0NBQ0Y7QUFFRCxNQUFNLENBQUMsS0FBSyxVQUFVLEdBQUcsQ0FBSSxJQUFzQjtJQUNqRCxJQUFJLEtBQUssRUFBRSxNQUFNLElBQUksSUFBSSxJQUFJLEVBQUUsQ0FBQztRQUM5QixPQUFPLElBQUksQ0FBQTtJQUNiLENBQUM7QUFDSCxDQUFDO0FBRUQsTUFBTSxDQUFDLE1BQU0sTUFBTSxHQUFHLElBQUksVUFBVSxFQUFFLENBQUE7QUFDdEMsTUFBTSxDQUFDLE1BQU0sR0FBRyxHQUFHLFNBQVMsQ0FBQTtBQUM1QixNQUFNLENBQUMsTUFBTSxNQUFNLEdBQUcsWUFBWSxDQUFDO0lBQ2pDLFVBQVUsRUFBRSxJQUFJLE9BQU8sQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDO1FBQ3pDLEtBQUssRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxJQUFJLE1BQU07S0FDdEMsQ0FBQztDQUNILENBQUMsQ0FBQTtBQUVGLE1BQU0sVUFBVSxZQUFZLENBQUMsR0FBRyxHQUFHLEdBQUc7SUFDcEMsTUFBTSxNQUFNLEdBQUcsWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFBO0lBQ2hDLE1BQU0sV0FBVyxHQUFHLElBQUksY0FBYyxDQUNwQyxHQUFHLEVBQ0gsTUFBTSxFQUNOLEtBQUssRUFBRSxHQUFHLEVBQUUsRUFBRTtRQUNaLElBQUksR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDO1lBQ1osTUFBTSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUE7UUFDM0IsQ0FBQztRQUNELElBQUksR0FBRyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2QsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFBO1FBQ2hCLENBQUM7SUFDSCxDQUFDLEVBQ0QsTUFBTSxDQUNQLENBQUE7SUFDRCxPQUFPLENBQUMsV0FBVyxFQUFFLE1BQU0sQ0FBQyxDQUFBO0FBQzlCLENBQUM7QUFFRCxNQUFNLFVBQVUsWUFBWSxDQUFDLEdBQUcsR0FBRyxHQUFHO0lBQ3BDLE1BQU0sTUFBTSxHQUFHLElBQUksY0FBYyxDQUFDLEdBQUcsRUFBRSxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUE7SUFDdEQsT0FBTyxNQUFNLENBQUE7QUFDZixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGF0YUNodW5rLCBSdW5uZXJDbGllbnQgfSBmcm9tICdAcmRmYy9wcm90bydcbmltcG9ydCB7IENsaWVudFJlYWRhYmxlU3RyZWFtIH0gZnJvbSAnQGdycGMvZ3JwYy1qcydcbmltcG9ydCAqIGFzIGdycGMgZnJvbSAnQGdycGMvZ3JwYy1qcydcbmltcG9ydCB7IENsaWVudFJlYWRhYmxlU3RyZWFtSW1wbCB9IGZyb20gJy4vcmVleHBvcnRzJ1xuaW1wb3J0IHsgZXh0cmFjdFNoYXBlcyB9IGZyb20gJ3JkZi1sZW5zJ1xuaW1wb3J0IHsgUGFyc2VyIH0gZnJvbSAnbjMnXG5pbXBvcnQgeyByZWFkRmlsZSB9IGZyb20gJ2ZzL3Byb21pc2VzJ1xuaW1wb3J0IHdpbnN0b24sIHsgY3JlYXRlTG9nZ2VyIH0gZnJvbSAnd2luc3RvbidcbmltcG9ydCB7IFdyaXRlckluc3RhbmNlIH0gZnJvbSAnLi93cml0ZXInXG5pbXBvcnQgeyBSZWFkZXJJbnN0YW5jZSB9IGZyb20gJy4vcmVhZGVyJ1xuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0UHJvY2Vzc29yU2hhcGUoXG4gIGJhc2VJUkkgPSBwcm9jZXNzLmN3ZCgpICsgJy9ub2RlX21vZHVsZXMvQHJkZmMvanMtcnVubmVyL2luZGV4LnR0bCcsXG4pIHtcbiAgY29uc3QgY29uZmlnRmlsZSA9IGF3YWl0IHJlYWRGaWxlKGJhc2VJUkksIHsgZW5jb2Rpbmc6ICd1dGY4JyB9KVxuICBjb25zdCBjb25maWdRdWFkcyA9IG5ldyBQYXJzZXIoKS5wYXJzZShjb25maWdGaWxlKVxuICBjb25zdCBzaGFwZXMgPSBleHRyYWN0U2hhcGVzKGNvbmZpZ1F1YWRzKVxuXG4gIHJldHVybiBzaGFwZXNcbn1cblxuZXhwb3J0IGNsYXNzIFRlc3RDbGllbnQgZXh0ZW5kcyBSdW5uZXJDbGllbnQge1xuICBuZXh0OiAoc3RyZWFtOiBDbGllbnRSZWFkYWJsZVN0cmVhbTxEYXRhQ2h1bms+KSA9PiB1bmtub3duXG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoJ2xvY2FsaG9zdDo1NDAwJywgZ3JwYy5jcmVkZW50aWFscy5jcmVhdGVJbnNlY3VyZSgpKVxuICB9XG5cbiAgbmV4dFN0cmVhbSgpOiBQcm9taXNlPENsaWVudFJlYWRhYmxlU3RyZWFtPERhdGFDaHVuaz4+IHtcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlcykgPT4gKHRoaXMubmV4dCA9IHJlcykpXG4gIH1cblxuICByZWNlaXZlU3RyZWFtTWVzc2FnZSgpOiBDbGllbnRSZWFkYWJsZVN0cmVhbTxEYXRhQ2h1bms+IHtcbiAgICBjb25zdCBzdHJlYW0gPSBuZXcgQ2xpZW50UmVhZGFibGVTdHJlYW1JbXBsPERhdGFDaHVuaz4oKGRhdGE6IEJ1ZmZlcikgPT4ge1xuICAgICAgcmV0dXJuIHsgZGF0YSB9XG4gICAgfSlcbiAgICB0aGlzLm5leHQoc3RyZWFtKVxuICAgIHJldHVybiBzdHJlYW1cbiAgfVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gb25lPFQ+KGl0ZXI6IEFzeW5jSXRlcmFibGU8VD4pOiBQcm9taXNlPFQgfCB1bmRlZmluZWQ+IHtcbiAgZm9yIGF3YWl0IChjb25zdCBpdGVtIG9mIGl0ZXIpIHtcbiAgICByZXR1cm4gaXRlbVxuICB9XG59XG5cbmV4cG9ydCBjb25zdCBjbGllbnQgPSBuZXcgVGVzdENsaWVudCgpXG5leHBvcnQgY29uc3QgdXJpID0gJ3NvbWVVcmknXG5leHBvcnQgY29uc3QgbG9nZ2VyID0gY3JlYXRlTG9nZ2VyKHtcbiAgdHJhbnNwb3J0czogbmV3IHdpbnN0b24udHJhbnNwb3J0cy5Db25zb2xlKHtcbiAgICBsZXZlbDogcHJvY2Vzcy5lbnZbJ0RFQlVHJ10gfHwgJ2luZm8nLFxuICB9KSxcbn0pXG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVXcml0ZXIoaXJpID0gdXJpKTogW1dyaXRlckluc3RhbmNlLCBSZWFkZXJJbnN0YW5jZV0ge1xuICBjb25zdCByZWFkZXIgPSBjcmVhdGVSZWFkZXIoaXJpKVxuICBjb25zdCB3cml0ZVN0cmVhbSA9IG5ldyBXcml0ZXJJbnN0YW5jZShcbiAgICBpcmksXG4gICAgY2xpZW50LFxuICAgIGFzeW5jIChtc2cpID0+IHtcbiAgICAgIGlmIChtc2cubXNnKSB7XG4gICAgICAgIHJlYWRlci5oYW5kbGVNc2cobXNnLm1zZylcbiAgICAgIH1cbiAgICAgIGlmIChtc2cuY2xvc2UpIHtcbiAgICAgICAgcmVhZGVyLmNsb3NlKClcbiAgICAgIH1cbiAgICB9LFxuICAgIGxvZ2dlcixcbiAgKVxuICByZXR1cm4gW3dyaXRlU3RyZWFtLCByZWFkZXJdXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVSZWFkZXIoaXJpID0gdXJpKTogUmVhZGVySW5zdGFuY2Uge1xuICBjb25zdCByZWFkZXIgPSBuZXcgUmVhZGVySW5zdGFuY2UoaXJpLCBjbGllbnQsIGxvZ2dlcilcbiAgcmV0dXJuIHJlYWRlclxufVxuIl19