Socket
Socket
Sign inDemoInstall

@glimmer/tracking

Package Overview
Dependencies
Maintainers
12
Versions
45
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@glimmer/tracking - npm Package Compare versions

Comparing version 2.0.0-beta.3 to 2.0.0-beta.4

4

dist/commonjs/src/tracked.js

@@ -83,3 +83,3 @@ "use strict";

throw new Error(`You attempted to use @tracked with ${args.length > 1 ? 'arguments' : 'an argument'} ( @tracked(${args
.map(d => `'${d}'`)
.map((d) => `'${d}'`)
.join(', ')}) ), which is no longer necessary nor supported. Dependencies are now automatically tracked, so you can just use ${'`@tracked`'}.`);

@@ -108,2 +108,2 @@ }

}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhY2tlZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BnbGltbWVyL3RyYWNraW5nL3NyYy90cmFja2VkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsc0NBQXFDO0FBQ3JDLGtEQUFpRDtBQUVqRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXVERztBQUNILDhEQUE4RDtBQUNqRCxRQUFBLE9BQU8sR0FBc0IsQ0FBQyxHQUFHLElBQVcsRUFBRSxFQUFFO0lBQzNELE1BQU0sQ0FBQyxNQUFNLEVBQUUsR0FBRyxFQUFFLFVBQVUsQ0FBQyxHQUFHLElBQUksQ0FBQztJQUV2Qyw0RUFBNEU7SUFDNUUsSUFBSSxXQUFLLElBQUksT0FBTyxNQUFNLEtBQUssUUFBUTtRQUFFLDhCQUE4QixDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzlFLElBQUksV0FBSyxJQUFJLE1BQU0sS0FBSyxTQUFTO1FBQUUsbUNBQW1DLEVBQUUsQ0FBQztJQUN6RSxJQUFJLFdBQUssSUFBSSxVQUFVLElBQUksVUFBVSxDQUFDLEdBQUc7UUFBRSxpQ0FBaUMsRUFBRSxDQUFDO0lBRS9FLElBQUksVUFBVSxFQUFFO1FBQ2QsT0FBTyxrQkFBa0IsQ0FBQyxNQUFNLEVBQUUsR0FBRyxFQUFFLFVBQVUsQ0FBQyxDQUFDO0tBQ3BEO0lBQ0QsMkVBQTJFO0lBQzNFLDBFQUEwRTtJQUMxRSxNQUFNLENBQUMsY0FBYyxDQUFDLE1BQU0sRUFBRSxHQUFHLEVBQUUsa0JBQWtCLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUM7QUFDdEUsQ0FBQyxDQUFDO0FBRUYsU0FBUyxpQ0FBaUM7SUFDeEMsTUFBTSxJQUFJLEtBQUssQ0FDYixtTEFBbUwsQ0FDcEwsQ0FBQztBQUNKLENBQUM7QUFFRCxTQUFTLDhCQUE4QixDQUFDLElBQWU7SUFDckQsTUFBTSxJQUFJLEtBQUssQ0FDYixzQ0FDRSxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxhQUNsQyxlQUFlLElBQUk7U0FDaEIsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQztTQUNsQixJQUFJLENBQ0gsSUFBSSxDQUNMLG9IQUFvSCxZQUFZLEdBQUcsQ0FDdkksQ0FBQztBQUNKLENBQUM7QUFFRCxTQUFTLG1DQUFtQztJQUMxQyxNQUFNLElBQUksS0FBSyxDQUNiLGlJQUFpSSxDQUNsSSxDQUFDO0FBQ0osQ0FBQztBQWtCRCxTQUFTLGtCQUFrQixDQUN6QixPQUFVLEVBQ1YsR0FBTSxFQUNOLElBQWtDO0lBRWxDLElBQUksV0FBSyxJQUFJLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLEdBQUcsSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUU7UUFDekQsTUFBTSxJQUFJLEtBQUssQ0FDYixvQ0FBb0MsR0FBRyxnT0FBZ08sQ0FDeFEsQ0FBQztLQUNIO0lBRUQsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsR0FBRyx1QkFBVyxDQUFPLEdBQUcsRUFBRSxJQUFJLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBRTVFLE9BQU87UUFDTCxVQUFVLEVBQUUsSUFBSTtRQUNoQixZQUFZLEVBQUUsSUFBSTtRQUVsQiw4REFBOEQ7UUFDOUQsR0FBRztZQUNELE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3RCLENBQUM7UUFFRCw4REFBOEQ7UUFDOUQsR0FBRyxDQUFVLFFBQWE7WUFDeEIsTUFBTSxDQUFDLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQztRQUN6QixDQUFDO0tBQ0YsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBERUJVRyB9IGZyb20gJ0BnbGltbWVyL2Vudic7XG5pbXBvcnQgeyB0cmFja2VkRGF0YSB9IGZyb20gJ0BnbGltbWVyL3ZhbGlkYXRvcic7XG5cbi8qKlxuICogQGRlY29yYXRvclxuICpcbiAqIE1hcmtzIGEgcHJvcGVydHkgYXMgdHJhY2tlZC5cbiAqXG4gKiBCeSBkZWZhdWx0LCBhIGNvbXBvbmVudCdzIHByb3BlcnRpZXMgYXJlIGV4cGVjdGVkIHRvIGJlIHN0YXRpYyxcbiAqIG1lYW5pbmcgeW91IGFyZSBub3QgYWJsZSB0byB1cGRhdGUgdGhlbSBhbmQgaGF2ZSB0aGUgdGVtcGxhdGUgdXBkYXRlIGFjY29yZGluZ2x5LlxuICogTWFya2luZyBhIHByb3BlcnR5IGFzIHRyYWNrZWQgbWVhbnMgdGhhdCB3aGVuIHRoYXQgcHJvcGVydHkgY2hhbmdlcyxcbiAqIGEgcmVyZW5kZXIgb2YgdGhlIGNvbXBvbmVudCBpcyBzY2hlZHVsZWQgc28gdGhlIHRlbXBsYXRlIGlzIGtlcHQgdXAgdG8gZGF0ZS5cbiAqXG4gKiBAZXhhbXBsZVxuICpcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGltcG9ydCBDb21wb25lbnQgZnJvbSAnQGdsaW1tZXIvY29tcG9uZW50JztcbiAqIGltcG9ydCB7IHRyYWNrZWQgfSBmcm9tICdAZ2xpbW1lci90cmFja2luZyc7XG4gKlxuICogZXhwb3J0IGRlZmF1bHQgY2xhc3MgTXlDb21wb25lbnQgZXh0ZW5kcyBDb21wb25lbnQge1xuICogICAgQHRyYWNrZWRcbiAqICAgIHJlbWFpbmluZ0FwcGxlcyA9IDEwXG4gKiB9XG4gKiBgYGBcbiAqXG4gKiBXaGVuIHNvbWV0aGluZyBjaGFuZ2VzIHRoZSBjb21wb25lbnQncyBgcmVtYWluaW5nQXBwbGVzYCBwcm9wZXJ0eSwgdGhlIHJlcmVuZGVyXG4gKiB3aWxsIGJlIHNjaGVkdWxlZC5cbiAqXG4gKiBAZXhhbXBsZSBDb21wdXRlZCBQcm9wZXJ0aWVzXG4gKlxuICogSW4gdGhlIGNhc2UgdGhhdCB5b3UgaGF2ZSBhIGdldHRlciB0aGF0IGRlcGVuZHMgb24gb3RoZXIgcHJvcGVydGllcywgdHJhY2tlZFxuICogcHJvcGVydGllcyBhY2Nlc3NlZCB3aXRoaW4gdGhlIGdldHRlciB3aWxsIGF1dG9tYXRpY2FsbHkgYmUgdHJhY2tlZCBmb3IgeW91LlxuICogVGhhdCBtZWFucyB3aGVuIGFueSBvZiB0aG9zZSBkZXBlbmRlbnQgdHJhY2tlZCBwcm9wZXJ0aWVzIGlzIGNoYW5nZWQsIGFcbiAqIHJlcmVuZGVyIG9mIHRoZSBjb21wb25lbnQgd2lsbCBiZSBzY2hlZHVsZWQuXG4gKlxuICogSW4gdGhlIGZvbGxvd2luZyBleGFtcGxlIHdlIGhhdmUgdHdvIHByb3BlcnRpZXMsXG4gKiBgZWF0ZW5BcHBsZXNgLCBhbmQgYHJlbWFpbmluZ0FwcGxlc2AuXG4gKlxuICpcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGltcG9ydCBDb21wb25lbnQgZnJvbSAnQGdsaW1tZXIvY29tcG9uZW50JztcbiAqIGltcG9ydCB7IHRyYWNrZWQgfSBmcm9tICdAZ2xpbW1lci90cmFja2luZyc7XG4gKlxuICogY29uc3QgdG90YWxBcHBsZXMgPSAxMDA7XG4gKlxuICogZXhwb3J0IGRlZmF1bHQgY2xhc3MgTXlDb21wb25lbnQgZXh0ZW5kcyBDb21wb25lbnQge1xuICogICAgQHRyYWNrZWRcbiAqICAgIGVhdGVuQXBwbGVzID0gMFxuICpcbiAqICAgIGdldCByZW1haW5pbmdBcHBsZXMoKSB7XG4gKiAgICAgIHJldHVybiB0b3RhbEFwcGxlcyAtIHRoaXMuZWF0ZW5BcHBsZXM7XG4gKiAgICB9XG4gKlxuICogICAgaW5jcmVtZW50KCkge1xuICogICAgICB0aGlzLmVhdGVuQXBwbGVzID0gdGhpcy5lYXRlbkFwcGxlcyArIDE7XG4gKiAgICB9XG4gKiAgfVxuICogYGBgXG4gKi9cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG5leHBvcnQgY29uc3QgdHJhY2tlZDogUHJvcGVydHlEZWNvcmF0b3IgPSAoLi4uYXJnczogYW55W10pID0+IHtcbiAgY29uc3QgW3RhcmdldCwga2V5LCBkZXNjcmlwdG9yXSA9IGFyZ3M7XG5cbiAgLy8gRXJyb3Igb24gYEB0cmFja2VkKClgLCBgQHRyYWNrZWQoLi4uYXJncylgLCBhbmQgYEB0cmFja2VkIGdldCBwcm9wTmFtZSgpYFxuICBpZiAoREVCVUcgJiYgdHlwZW9mIHRhcmdldCA9PT0gJ3N0cmluZycpIHRocm93VHJhY2tlZFdpdGhBcmd1bWVudHNFcnJvcihhcmdzKTtcbiAgaWYgKERFQlVHICYmIHRhcmdldCA9PT0gdW5kZWZpbmVkKSB0aHJvd1RyYWNrZWRXaXRoRW1wdHlBcmd1bWVudHNFcnJvcigpO1xuICBpZiAoREVCVUcgJiYgZGVzY3JpcHRvciAmJiBkZXNjcmlwdG9yLmdldCkgdGhyb3dUcmFja2VkQ29tcHV0ZWRQcm9wZXJ0eUVycm9yKCk7XG5cbiAgaWYgKGRlc2NyaXB0b3IpIHtcbiAgICByZXR1cm4gZGVzY3JpcHRvckZvckZpZWxkKHRhcmdldCwga2V5LCBkZXNjcmlwdG9yKTtcbiAgfVxuICAvLyBJbiBUeXBlU2NyaXB0J3MgaW1wbGVtZW50YXRpb24sIGRlY29yYXRvcnMgb24gc2ltcGxlIGNsYXNzIGZpZWxkcyBkbyBub3RcbiAgLy8gcmVjZWl2ZSBhIGRlc2NyaXB0b3IsIHNvIHdlIGRlZmluZSB0aGUgcHJvcGVydHkgb24gdGhlIHRhcmdldCBkaXJlY3RseS5cbiAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRhcmdldCwga2V5LCBkZXNjcmlwdG9yRm9yRmllbGQodGFyZ2V0LCBrZXkpKTtcbn07XG5cbmZ1bmN0aW9uIHRocm93VHJhY2tlZENvbXB1dGVkUHJvcGVydHlFcnJvcigpOiBuZXZlciB7XG4gIHRocm93IG5ldyBFcnJvcihcbiAgICBgVGhlIEB0cmFja2VkIGRlY29yYXRvciBkb2VzIG5vdCBuZWVkIHRvIGJlIGFwcGxpZWQgdG8gZ2V0dGVycy4gUHJvcGVydGllcyBpbXBsZW1lbnRlZCB1c2luZyBhIGdldHRlciB3aWxsIHJlY29tcHV0ZSBhdXRvbWF0aWNhbGx5IHdoZW4gYW55IHRyYWNrZWQgcHJvcGVydGllcyB0aGV5IGFjY2VzcyBjaGFuZ2UuYFxuICApO1xufVxuXG5mdW5jdGlvbiB0aHJvd1RyYWNrZWRXaXRoQXJndW1lbnRzRXJyb3IoYXJnczogdW5rbm93bltdKTogbmV2ZXIge1xuICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgYFlvdSBhdHRlbXB0ZWQgdG8gdXNlIEB0cmFja2VkIHdpdGggJHtcbiAgICAgIGFyZ3MubGVuZ3RoID4gMSA/ICdhcmd1bWVudHMnIDogJ2FuIGFyZ3VtZW50J1xuICAgIH0gKCBAdHJhY2tlZCgke2FyZ3NcbiAgICAgIC5tYXAoZCA9PiBgJyR7ZH0nYClcbiAgICAgIC5qb2luKFxuICAgICAgICAnLCAnXG4gICAgICApfSkgKSwgd2hpY2ggaXMgbm8gbG9uZ2VyIG5lY2Vzc2FyeSBub3Igc3VwcG9ydGVkLiBEZXBlbmRlbmNpZXMgYXJlIG5vdyBhdXRvbWF0aWNhbGx5IHRyYWNrZWQsIHNvIHlvdSBjYW4ganVzdCB1c2UgJHsnYEB0cmFja2VkYCd9LmBcbiAgKTtcbn1cblxuZnVuY3Rpb24gdGhyb3dUcmFja2VkV2l0aEVtcHR5QXJndW1lbnRzRXJyb3IoKTogbmV2ZXIge1xuICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgJ1lvdSBhdHRlbXB0ZWQgdG8gdXNlIEB0cmFja2VkKCksIHdoaWNoIGlzIG5vIGxvbmdlciBuZWNlc3Nhcnkgbm9yIHN1cHBvcnRlZC4gUmVtb3ZlIHRoZSBwYXJlbnRoZXNlcyBhbmQgeW91IHdpbGwgYmUgZ29vZCB0byBnbyEnXG4gICk7XG59XG5cbi8qKlxuICogV2hlbmV2ZXIgYSB0cmFja2VkIGNvbXB1dGVkIHByb3BlcnR5IGlzIGVudGVyZWQsIHRoZSBjdXJyZW50IHRyYWNrZXIgaXNcbiAqIHNhdmVkIG9mZiBhbmQgYSBuZXcgdHJhY2tlciBpcyByZXBsYWNlZC5cbiAqXG4gKiBBbnkgdHJhY2tlZCBwcm9wZXJ0aWVzIGNvbnN1bWVkIGFyZSBhZGRlZCB0byB0aGUgY3VycmVudCB0cmFja2VyLlxuICpcbiAqIFdoZW4gYSB0cmFja2VkIGNvbXB1dGVkIHByb3BlcnR5IGlzIGV4aXRlZCwgdGhlIHRyYWNrZXIncyB0YWdzIGFyZVxuICogY29tYmluZWQgYW5kIGFkZGVkIHRvIHRoZSBwYXJlbnQgdHJhY2tlci5cbiAqXG4gKiBUaGUgY29uc2VxdWVuY2UgaXMgdGhhdCBlYWNoIHRyYWNrZWQgY29tcHV0ZWQgcHJvcGVydHkgaGFzIGEgdGFnXG4gKiB0aGF0IGNvcnJlc3BvbmRzIHRvIHRoZSB0cmFja2VkIHByb3BlcnRpZXMgY29uc3VtZWQgaW5zaWRlIG9mXG4gKiBpdHNlbGYsIGluY2x1ZGluZyBjaGlsZCB0cmFja2VkIGNvbXB1dGVkIHByb3BlcnRpZXMuXG4gKi9cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG50eXBlIERlY29yYXRvclByb3BlcnR5RGVzY3JpcHRvciA9IChQcm9wZXJ0eURlc2NyaXB0b3IgJiB7IGluaXRpYWxpemVyPzogYW55IH0pIHwgdW5kZWZpbmVkO1xuXG5mdW5jdGlvbiBkZXNjcmlwdG9yRm9yRmllbGQ8VCBleHRlbmRzIG9iamVjdCwgSyBleHRlbmRzIGtleW9mIFQ+KFxuICBfdGFyZ2V0OiBULFxuICBrZXk6IEssXG4gIGRlc2M/OiBEZWNvcmF0b3JQcm9wZXJ0eURlc2NyaXB0b3Jcbik6IFByb3BlcnR5RGVzY3JpcHRvciB7XG4gIGlmIChERUJVRyAmJiBkZXNjICYmIChkZXNjLnZhbHVlIHx8IGRlc2MuZ2V0IHx8IGRlc2Muc2V0KSkge1xuICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgIGBZb3UgYXR0ZW1wdGVkIHRvIHVzZSBAdHJhY2tlZCBvbiAke2tleX0sIGJ1dCB0aGF0IGVsZW1lbnQgaXMgbm90IGEgY2xhc3MgZmllbGQuIEB0cmFja2VkIGlzIG9ubHkgdXNhYmxlIG9uIGNsYXNzIGZpZWxkcy4gTmF0aXZlIGdldHRlcnMgYW5kIHNldHRlcnMgd2lsbCBhdXRvdHJhY2sgYWRkIGFueSB0cmFja2VkIGZpZWxkcyB0aGV5IGVuY291bnRlciwgc28gdGhlcmUgaXMgbm8gbmVlZCBtYXJrIGdldHRlcnMgYW5kIHNldHRlcnMgd2l0aCBAdHJhY2tlZC5gXG4gICAgKTtcbiAgfVxuXG4gIGNvbnN0IHsgZ2V0dGVyLCBzZXR0ZXIgfSA9IHRyYWNrZWREYXRhPFQsIEs+KGtleSwgZGVzYyAmJiBkZXNjLmluaXRpYWxpemVyKTtcblxuICByZXR1cm4ge1xuICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgY29uZmlndXJhYmxlOiB0cnVlLFxuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICBnZXQodGhpczogVCk6IGFueSB7XG4gICAgICByZXR1cm4gZ2V0dGVyKHRoaXMpO1xuICAgIH0sXG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgIHNldCh0aGlzOiBULCBuZXdWYWx1ZTogYW55KTogdm9pZCB7XG4gICAgICBzZXR0ZXIodGhpcywgbmV3VmFsdWUpO1xuICAgIH0sXG4gIH07XG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhY2tlZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BnbGltbWVyL3RyYWNraW5nL3NyYy90cmFja2VkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsc0NBQXFDO0FBQ3JDLGtEQUFpRDtBQUVqRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXVERztBQUNILDhEQUE4RDtBQUNqRCxRQUFBLE9BQU8sR0FBc0IsQ0FBQyxHQUFHLElBQVcsRUFBRSxFQUFFO0lBQzNELE1BQU0sQ0FBQyxNQUFNLEVBQUUsR0FBRyxFQUFFLFVBQVUsQ0FBQyxHQUFHLElBQUksQ0FBQztJQUV2Qyw0RUFBNEU7SUFDNUUsSUFBSSxXQUFLLElBQUksT0FBTyxNQUFNLEtBQUssUUFBUTtRQUFFLDhCQUE4QixDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzlFLElBQUksV0FBSyxJQUFJLE1BQU0sS0FBSyxTQUFTO1FBQUUsbUNBQW1DLEVBQUUsQ0FBQztJQUN6RSxJQUFJLFdBQUssSUFBSSxVQUFVLElBQUksVUFBVSxDQUFDLEdBQUc7UUFBRSxpQ0FBaUMsRUFBRSxDQUFDO0lBRS9FLElBQUksVUFBVSxFQUFFO1FBQ2QsT0FBTyxrQkFBa0IsQ0FBQyxNQUFNLEVBQUUsR0FBRyxFQUFFLFVBQVUsQ0FBQyxDQUFDO0tBQ3BEO0lBQ0QsMkVBQTJFO0lBQzNFLDBFQUEwRTtJQUMxRSxNQUFNLENBQUMsY0FBYyxDQUFDLE1BQU0sRUFBRSxHQUFHLEVBQUUsa0JBQWtCLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUM7QUFDdEUsQ0FBQyxDQUFDO0FBRUYsU0FBUyxpQ0FBaUM7SUFDeEMsTUFBTSxJQUFJLEtBQUssQ0FDYixtTEFBbUwsQ0FDcEwsQ0FBQztBQUNKLENBQUM7QUFFRCxTQUFTLDhCQUE4QixDQUFDLElBQWU7SUFDckQsTUFBTSxJQUFJLEtBQUssQ0FDYixzQ0FDRSxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxhQUNsQyxlQUFlLElBQUk7U0FDaEIsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDO1NBQ3BCLElBQUksQ0FDSCxJQUFJLENBQ0wsb0hBQW9ILFlBQVksR0FBRyxDQUN2SSxDQUFDO0FBQ0osQ0FBQztBQUVELFNBQVMsbUNBQW1DO0lBQzFDLE1BQU0sSUFBSSxLQUFLLENBQ2IsaUlBQWlJLENBQ2xJLENBQUM7QUFDSixDQUFDO0FBa0JELFNBQVMsa0JBQWtCLENBQ3pCLE9BQVUsRUFDVixHQUFNLEVBQ04sSUFBa0M7SUFFbEMsSUFBSSxXQUFLLElBQUksSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsR0FBRyxJQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRTtRQUN6RCxNQUFNLElBQUksS0FBSyxDQUNiLG9DQUFvQyxHQUFHLGdPQUFnTyxDQUN4USxDQUFDO0tBQ0g7SUFFRCxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxHQUFHLHVCQUFXLENBQU8sR0FBRyxFQUFFLElBQUksSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFFNUUsT0FBTztRQUNMLFVBQVUsRUFBRSxJQUFJO1FBQ2hCLFlBQVksRUFBRSxJQUFJO1FBRWxCLDhEQUE4RDtRQUM5RCxHQUFHO1lBQ0QsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDdEIsQ0FBQztRQUVELDhEQUE4RDtRQUM5RCxHQUFHLENBQVUsUUFBYTtZQUN4QixNQUFNLENBQUMsSUFBSSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQ3pCLENBQUM7S0FDRixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERFQlVHIH0gZnJvbSAnQGdsaW1tZXIvZW52JztcbmltcG9ydCB7IHRyYWNrZWREYXRhIH0gZnJvbSAnQGdsaW1tZXIvdmFsaWRhdG9yJztcblxuLyoqXG4gKiBAZGVjb3JhdG9yXG4gKlxuICogTWFya3MgYSBwcm9wZXJ0eSBhcyB0cmFja2VkLlxuICpcbiAqIEJ5IGRlZmF1bHQsIGEgY29tcG9uZW50J3MgcHJvcGVydGllcyBhcmUgZXhwZWN0ZWQgdG8gYmUgc3RhdGljLFxuICogbWVhbmluZyB5b3UgYXJlIG5vdCBhYmxlIHRvIHVwZGF0ZSB0aGVtIGFuZCBoYXZlIHRoZSB0ZW1wbGF0ZSB1cGRhdGUgYWNjb3JkaW5nbHkuXG4gKiBNYXJraW5nIGEgcHJvcGVydHkgYXMgdHJhY2tlZCBtZWFucyB0aGF0IHdoZW4gdGhhdCBwcm9wZXJ0eSBjaGFuZ2VzLFxuICogYSByZXJlbmRlciBvZiB0aGUgY29tcG9uZW50IGlzIHNjaGVkdWxlZCBzbyB0aGUgdGVtcGxhdGUgaXMga2VwdCB1cCB0byBkYXRlLlxuICpcbiAqIEBleGFtcGxlXG4gKlxuICogYGBgdHlwZXNjcmlwdFxuICogaW1wb3J0IENvbXBvbmVudCBmcm9tICdAZ2xpbW1lci9jb21wb25lbnQnO1xuICogaW1wb3J0IHsgdHJhY2tlZCB9IGZyb20gJ0BnbGltbWVyL3RyYWNraW5nJztcbiAqXG4gKiBleHBvcnQgZGVmYXVsdCBjbGFzcyBNeUNvbXBvbmVudCBleHRlbmRzIENvbXBvbmVudCB7XG4gKiAgICBAdHJhY2tlZFxuICogICAgcmVtYWluaW5nQXBwbGVzID0gMTBcbiAqIH1cbiAqIGBgYFxuICpcbiAqIFdoZW4gc29tZXRoaW5nIGNoYW5nZXMgdGhlIGNvbXBvbmVudCdzIGByZW1haW5pbmdBcHBsZXNgIHByb3BlcnR5LCB0aGUgcmVyZW5kZXJcbiAqIHdpbGwgYmUgc2NoZWR1bGVkLlxuICpcbiAqIEBleGFtcGxlIENvbXB1dGVkIFByb3BlcnRpZXNcbiAqXG4gKiBJbiB0aGUgY2FzZSB0aGF0IHlvdSBoYXZlIGEgZ2V0dGVyIHRoYXQgZGVwZW5kcyBvbiBvdGhlciBwcm9wZXJ0aWVzLCB0cmFja2VkXG4gKiBwcm9wZXJ0aWVzIGFjY2Vzc2VkIHdpdGhpbiB0aGUgZ2V0dGVyIHdpbGwgYXV0b21hdGljYWxseSBiZSB0cmFja2VkIGZvciB5b3UuXG4gKiBUaGF0IG1lYW5zIHdoZW4gYW55IG9mIHRob3NlIGRlcGVuZGVudCB0cmFja2VkIHByb3BlcnRpZXMgaXMgY2hhbmdlZCwgYVxuICogcmVyZW5kZXIgb2YgdGhlIGNvbXBvbmVudCB3aWxsIGJlIHNjaGVkdWxlZC5cbiAqXG4gKiBJbiB0aGUgZm9sbG93aW5nIGV4YW1wbGUgd2UgaGF2ZSB0d28gcHJvcGVydGllcyxcbiAqIGBlYXRlbkFwcGxlc2AsIGFuZCBgcmVtYWluaW5nQXBwbGVzYC5cbiAqXG4gKlxuICogYGBgdHlwZXNjcmlwdFxuICogaW1wb3J0IENvbXBvbmVudCBmcm9tICdAZ2xpbW1lci9jb21wb25lbnQnO1xuICogaW1wb3J0IHsgdHJhY2tlZCB9IGZyb20gJ0BnbGltbWVyL3RyYWNraW5nJztcbiAqXG4gKiBjb25zdCB0b3RhbEFwcGxlcyA9IDEwMDtcbiAqXG4gKiBleHBvcnQgZGVmYXVsdCBjbGFzcyBNeUNvbXBvbmVudCBleHRlbmRzIENvbXBvbmVudCB7XG4gKiAgICBAdHJhY2tlZFxuICogICAgZWF0ZW5BcHBsZXMgPSAwXG4gKlxuICogICAgZ2V0IHJlbWFpbmluZ0FwcGxlcygpIHtcbiAqICAgICAgcmV0dXJuIHRvdGFsQXBwbGVzIC0gdGhpcy5lYXRlbkFwcGxlcztcbiAqICAgIH1cbiAqXG4gKiAgICBpbmNyZW1lbnQoKSB7XG4gKiAgICAgIHRoaXMuZWF0ZW5BcHBsZXMgPSB0aGlzLmVhdGVuQXBwbGVzICsgMTtcbiAqICAgIH1cbiAqICB9XG4gKiBgYGBcbiAqL1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbmV4cG9ydCBjb25zdCB0cmFja2VkOiBQcm9wZXJ0eURlY29yYXRvciA9ICguLi5hcmdzOiBhbnlbXSkgPT4ge1xuICBjb25zdCBbdGFyZ2V0LCBrZXksIGRlc2NyaXB0b3JdID0gYXJncztcblxuICAvLyBFcnJvciBvbiBgQHRyYWNrZWQoKWAsIGBAdHJhY2tlZCguLi5hcmdzKWAsIGFuZCBgQHRyYWNrZWQgZ2V0IHByb3BOYW1lKClgXG4gIGlmIChERUJVRyAmJiB0eXBlb2YgdGFyZ2V0ID09PSAnc3RyaW5nJykgdGhyb3dUcmFja2VkV2l0aEFyZ3VtZW50c0Vycm9yKGFyZ3MpO1xuICBpZiAoREVCVUcgJiYgdGFyZ2V0ID09PSB1bmRlZmluZWQpIHRocm93VHJhY2tlZFdpdGhFbXB0eUFyZ3VtZW50c0Vycm9yKCk7XG4gIGlmIChERUJVRyAmJiBkZXNjcmlwdG9yICYmIGRlc2NyaXB0b3IuZ2V0KSB0aHJvd1RyYWNrZWRDb21wdXRlZFByb3BlcnR5RXJyb3IoKTtcblxuICBpZiAoZGVzY3JpcHRvcikge1xuICAgIHJldHVybiBkZXNjcmlwdG9yRm9yRmllbGQodGFyZ2V0LCBrZXksIGRlc2NyaXB0b3IpO1xuICB9XG4gIC8vIEluIFR5cGVTY3JpcHQncyBpbXBsZW1lbnRhdGlvbiwgZGVjb3JhdG9ycyBvbiBzaW1wbGUgY2xhc3MgZmllbGRzIGRvIG5vdFxuICAvLyByZWNlaXZlIGEgZGVzY3JpcHRvciwgc28gd2UgZGVmaW5lIHRoZSBwcm9wZXJ0eSBvbiB0aGUgdGFyZ2V0IGRpcmVjdGx5LlxuICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBrZXksIGRlc2NyaXB0b3JGb3JGaWVsZCh0YXJnZXQsIGtleSkpO1xufTtcblxuZnVuY3Rpb24gdGhyb3dUcmFja2VkQ29tcHV0ZWRQcm9wZXJ0eUVycm9yKCk6IG5ldmVyIHtcbiAgdGhyb3cgbmV3IEVycm9yKFxuICAgIGBUaGUgQHRyYWNrZWQgZGVjb3JhdG9yIGRvZXMgbm90IG5lZWQgdG8gYmUgYXBwbGllZCB0byBnZXR0ZXJzLiBQcm9wZXJ0aWVzIGltcGxlbWVudGVkIHVzaW5nIGEgZ2V0dGVyIHdpbGwgcmVjb21wdXRlIGF1dG9tYXRpY2FsbHkgd2hlbiBhbnkgdHJhY2tlZCBwcm9wZXJ0aWVzIHRoZXkgYWNjZXNzIGNoYW5nZS5gXG4gICk7XG59XG5cbmZ1bmN0aW9uIHRocm93VHJhY2tlZFdpdGhBcmd1bWVudHNFcnJvcihhcmdzOiB1bmtub3duW10pOiBuZXZlciB7XG4gIHRocm93IG5ldyBFcnJvcihcbiAgICBgWW91IGF0dGVtcHRlZCB0byB1c2UgQHRyYWNrZWQgd2l0aCAke1xuICAgICAgYXJncy5sZW5ndGggPiAxID8gJ2FyZ3VtZW50cycgOiAnYW4gYXJndW1lbnQnXG4gICAgfSAoIEB0cmFja2VkKCR7YXJnc1xuICAgICAgLm1hcCgoZCkgPT4gYCcke2R9J2ApXG4gICAgICAuam9pbihcbiAgICAgICAgJywgJ1xuICAgICAgKX0pICksIHdoaWNoIGlzIG5vIGxvbmdlciBuZWNlc3Nhcnkgbm9yIHN1cHBvcnRlZC4gRGVwZW5kZW5jaWVzIGFyZSBub3cgYXV0b21hdGljYWxseSB0cmFja2VkLCBzbyB5b3UgY2FuIGp1c3QgdXNlICR7J2BAdHJhY2tlZGAnfS5gXG4gICk7XG59XG5cbmZ1bmN0aW9uIHRocm93VHJhY2tlZFdpdGhFbXB0eUFyZ3VtZW50c0Vycm9yKCk6IG5ldmVyIHtcbiAgdGhyb3cgbmV3IEVycm9yKFxuICAgICdZb3UgYXR0ZW1wdGVkIHRvIHVzZSBAdHJhY2tlZCgpLCB3aGljaCBpcyBubyBsb25nZXIgbmVjZXNzYXJ5IG5vciBzdXBwb3J0ZWQuIFJlbW92ZSB0aGUgcGFyZW50aGVzZXMgYW5kIHlvdSB3aWxsIGJlIGdvb2QgdG8gZ28hJ1xuICApO1xufVxuXG4vKipcbiAqIFdoZW5ldmVyIGEgdHJhY2tlZCBjb21wdXRlZCBwcm9wZXJ0eSBpcyBlbnRlcmVkLCB0aGUgY3VycmVudCB0cmFja2VyIGlzXG4gKiBzYXZlZCBvZmYgYW5kIGEgbmV3IHRyYWNrZXIgaXMgcmVwbGFjZWQuXG4gKlxuICogQW55IHRyYWNrZWQgcHJvcGVydGllcyBjb25zdW1lZCBhcmUgYWRkZWQgdG8gdGhlIGN1cnJlbnQgdHJhY2tlci5cbiAqXG4gKiBXaGVuIGEgdHJhY2tlZCBjb21wdXRlZCBwcm9wZXJ0eSBpcyBleGl0ZWQsIHRoZSB0cmFja2VyJ3MgdGFncyBhcmVcbiAqIGNvbWJpbmVkIGFuZCBhZGRlZCB0byB0aGUgcGFyZW50IHRyYWNrZXIuXG4gKlxuICogVGhlIGNvbnNlcXVlbmNlIGlzIHRoYXQgZWFjaCB0cmFja2VkIGNvbXB1dGVkIHByb3BlcnR5IGhhcyBhIHRhZ1xuICogdGhhdCBjb3JyZXNwb25kcyB0byB0aGUgdHJhY2tlZCBwcm9wZXJ0aWVzIGNvbnN1bWVkIGluc2lkZSBvZlxuICogaXRzZWxmLCBpbmNsdWRpbmcgY2hpbGQgdHJhY2tlZCBjb21wdXRlZCBwcm9wZXJ0aWVzLlxuICovXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxudHlwZSBEZWNvcmF0b3JQcm9wZXJ0eURlc2NyaXB0b3IgPSAoUHJvcGVydHlEZXNjcmlwdG9yICYgeyBpbml0aWFsaXplcj86IGFueSB9KSB8IHVuZGVmaW5lZDtcblxuZnVuY3Rpb24gZGVzY3JpcHRvckZvckZpZWxkPFQgZXh0ZW5kcyBvYmplY3QsIEsgZXh0ZW5kcyBrZXlvZiBUPihcbiAgX3RhcmdldDogVCxcbiAga2V5OiBLLFxuICBkZXNjPzogRGVjb3JhdG9yUHJvcGVydHlEZXNjcmlwdG9yXG4pOiBQcm9wZXJ0eURlc2NyaXB0b3Ige1xuICBpZiAoREVCVUcgJiYgZGVzYyAmJiAoZGVzYy52YWx1ZSB8fCBkZXNjLmdldCB8fCBkZXNjLnNldCkpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICBgWW91IGF0dGVtcHRlZCB0byB1c2UgQHRyYWNrZWQgb24gJHtrZXl9LCBidXQgdGhhdCBlbGVtZW50IGlzIG5vdCBhIGNsYXNzIGZpZWxkLiBAdHJhY2tlZCBpcyBvbmx5IHVzYWJsZSBvbiBjbGFzcyBmaWVsZHMuIE5hdGl2ZSBnZXR0ZXJzIGFuZCBzZXR0ZXJzIHdpbGwgYXV0b3RyYWNrIGFkZCBhbnkgdHJhY2tlZCBmaWVsZHMgdGhleSBlbmNvdW50ZXIsIHNvIHRoZXJlIGlzIG5vIG5lZWQgbWFyayBnZXR0ZXJzIGFuZCBzZXR0ZXJzIHdpdGggQHRyYWNrZWQuYFxuICAgICk7XG4gIH1cblxuICBjb25zdCB7IGdldHRlciwgc2V0dGVyIH0gPSB0cmFja2VkRGF0YTxULCBLPihrZXksIGRlc2MgJiYgZGVzYy5pbml0aWFsaXplcik7XG5cbiAgcmV0dXJuIHtcbiAgICBlbnVtZXJhYmxlOiB0cnVlLFxuICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZSxcblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgZ2V0KHRoaXM6IFQpOiBhbnkge1xuICAgICAgcmV0dXJuIGdldHRlcih0aGlzKTtcbiAgICB9LFxuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICBzZXQodGhpczogVCwgbmV3VmFsdWU6IGFueSk6IHZvaWQge1xuICAgICAgc2V0dGVyKHRoaXMsIG5ld1ZhbHVlKTtcbiAgICB9LFxuICB9O1xufVxuIl19

@@ -17,3 +17,3 @@ "use strict";

module(`[@glimmer/tracking] Tracked Property Decorators with ${compiler}`);
test('tracked properties can be read and written to', assert => {
test('tracked properties can be read and written to', (assert) => {
const obj = new F.Tom();

@@ -24,3 +24,3 @@ assert.strictEqual(obj.firstName, 'Tom');

});
test('can request a tag for a property', assert => {
test('can request a tag for a property', (assert) => {
const obj = new F.Tom();

@@ -39,3 +39,3 @@ assert.strictEqual(obj.firstName, 'Tom');

});
test('can request a tag from a frozen class instance', assert => {
test('can request a tag from a frozen class instance', (assert) => {
const obj = Object.freeze(new F.Toran());

@@ -62,3 +62,3 @@ assert.strictEqual(obj.firstName, 'Toran');

});
test('can request a tag from an instance of a frozen class', assert => {
test('can request a tag from an instance of a frozen class', (assert) => {
const obj = Object.freeze(new F.FrozenToran());

@@ -75,3 +75,3 @@ assert.strictEqual(obj.firstName, 'Toran');

});
test('can track a getter', assert => {
test('can track a getter', (assert) => {
const obj = new F.PersonWithCount();

@@ -92,3 +92,3 @@ assert.strictEqual(obj.firstName, 'Tom0');

});
test('getters are invalidated when their dependencies are invalidated', assert => {
test('getters are invalidated when their dependencies are invalidated', (assert) => {
const obj = new F.PersonWithSalutation();

@@ -119,3 +119,3 @@ assert.strictEqual(obj.salutation, 'Hello, Tom Dale!', `the saluation field is valid`);

});
test('nested @tracked in multiple objects', assert => {
test('nested @tracked in multiple objects', (assert) => {
const obj = new F.Contact(new F.PersonForContact(), 'tom@example.com');

@@ -156,6 +156,6 @@ assert.strictEqual(obj.contact, 'Tom Dale @ tom@example.com', `the contact field is valid`);

if (env_1.DEBUG) {
test('Tracked decorator with a getter throws an error', assert => {
test('Tracked decorator with a getter throws an error', (assert) => {
assert.throws(F.createClassWithTrackedGetter);
});
test('Tracked decorator with a setter throws an error', assert => {
test('Tracked decorator with a setter throws an error', (assert) => {
assert.throws(F.createClassWithTrackedSetter);

@@ -171,2 +171,2 @@ });

});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhY2tlZC1kZWNvcmF0b3ItdGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BnbGltbWVyL3RyYWNraW5nL3Rlc3QvdHJhY2tlZC1kZWNvcmF0b3ItdGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLHlDQUF5QztBQUN6QyxNQUFNLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxHQUFHLEtBQUssQ0FBQztBQUUvQixzQ0FBcUM7QUFDckMsa0RBQXFFO0FBRXJFLG9EQUFvRDtBQUNwRCw0REFBNEQ7QUFDNUQsYUFBYTtBQUNiLGtEQUFrRDtBQUNsRCx5Q0FBK0Q7QUFFL0Q7SUFDRSxDQUFDLE9BQU8sRUFBRSxhQUFhLENBQUM7SUFDeEIsQ0FBQyxZQUFZLEVBQUUsVUFBVSxDQUFDO0NBQzNCLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRTtJQUMxQixNQUFNLENBQUMsd0RBQXdELFFBQVEsRUFBRSxDQUFDLENBQUM7SUFFM0UsSUFBSSxDQUFDLCtDQUErQyxFQUFFLE1BQU0sQ0FBQyxFQUFFO1FBQzdELE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBQ3hCLE1BQU0sQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUN6QyxHQUFHLENBQUMsU0FBUyxHQUFHLFFBQVEsQ0FBQztRQUN6QixNQUFNLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxTQUFTLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDOUMsQ0FBQyxDQUFDLENBQUM7SUFFSCxJQUFJLENBQUMsa0NBQWtDLEVBQUUsTUFBTSxDQUFDLEVBQUU7UUFDaEQsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDeEIsTUFBTSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMs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QUFFLElBQUksQ0FBQyxDQUFDO1FBRXJELG9DQUE2QixDQUFDLEdBQUcsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUMvQyxDQUFDLENBQUMsQ0FBQztJQUVILElBQUksV0FBSyxFQUFFO1FBQ1QsSUFBSSxDQUFDLGlEQUFpRCxFQUFFLE1BQU0sQ0FBQyxFQUFFO1lBQy9ELE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLDRCQUE0QixDQUFDLENBQUM7UUFDaEQsQ0FBQyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsaURBQWlELEVBQUUsTUFBTSxDQUFDLEVBQUU7WUFDL0QsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsNEJBQTRCLENBQUMsQ0FBQztRQUNoRCxDQUFDLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxrREFBa0QsRUFBRSxVQUFTLE1BQU07WUFDdEUsTUFBTSxDQUFDLE1BQU0sQ0FDWCxDQUFDLENBQUMsbUNBQW1DLEVBQ3JDLHFDQUFxQyxFQUNyQyw2QkFBNkIsQ0FDOUIsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLHVEQUF1RCxFQUFFLFVBQVMsTUFBTTtZQUMzRSxNQUFNLENBQUMsTUFBTSxDQUNYLENBQUMsQ0FBQyx3Q0FBd0MsRUFDMUMsY0FBYyxFQUNkLDZCQUE2QixDQUM5QixDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7S0FDSjtBQUNILENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyogdHNsaW50OmRpc2FibGU6bm8tdW51c2VkLWV4cHJlc3Npb24gKi9cbmNvbnN0IHsgbW9kdWxlLCB0ZXN0IH0gPSBRVW5pdDtcblxuaW1wb3J0IHsgREVCVUcgfSBmcm9tICdAZ2xpbW1lci9lbnYnO1xuaW1wb3J0IHsgdHJhY2ssIHZhbHVlRm9yVGFnLCB2YWxpZGF0ZVRhZyB9IGZyb20gJ0BnbGltbWVyL3ZhbGlkYXRvcic7XG5cbmltcG9ydCAqIGFzIFRTRml4dHVyZXMgZnJvbSAnLi9maXh0dXJlcy90eXBlc2NyaXB0Jztcbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvYmFuLXRzLWlnbm9yZVxuLy8gQHRzLWlnbm9yZVxuaW1wb3J0ICogYXMgQmFiZWxGaXh0dXJlcyBmcm9tICcuL2ZpeHR1cmVzL2JhYmVsJztcbmltcG9ydCB7IGFzc2VydFZhbGlkQWZ0ZXJVbnJlbGF0ZWRCdW1wIH0gZnJvbSAnLi9oZWxwZXJzL3RhZ3MnO1xuXG5bXG4gIFsnQmFiZWwnLCBCYWJlbEZpeHR1cmVzXSxcbiAgWydUeXBlU2NyaXB0JywgVFNGaXh0dXJlc10sXG5dLmZvckVhY2goKFtjb21waWxlciwgRl0pID0+IHtcbiAgbW9kdWxlKGBbQGdsaW1tZXIvdHJhY2tpbmddIFRyYWNrZWQgUHJvcGVydHkgRGVjb3JhdG9ycyB3aXRoICR7Y29tcGlsZXJ9YCk7XG5cbiAgdGVzdCgndHJhY2tlZCBwcm9wZXJ0aWVzIGNhbiBiZSByZWFkIGFuZCB3cml0dGVuIHRvJywgYXNzZXJ0ID0+IHtcbiAgICBjb25zdCBvYmogPSBuZXcgRi5Ub20oKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwob2JqLmZpcnN0TmFtZSwgJ1RvbScpO1xuICAgIG9iai5maXJzdE5hbWUgPSAnRWRzZ2VyJztcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwob2JqLmZpcnN0TmFtZSwgJ0Vkc2dlcicpO1xuICB9KTtcblxuICB0ZXN0KCdjYW4gcmVxdWVzdCBhIHRhZyBmb3IgYSBwcm9wZXJ0eScsIGFzc2VydCA9PiB7XG4gICAgY29uc3Qgb2JqID0gbmV3IEYuVG9tKCk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKG9iai5maXJzdE5hbWUsICdUb20nKTtcblxuICAgIGNvbnN0IHRhZyA9IHRyYWNrKCgpID0+IHtcbiAgICAgIG9iai5maXJzdE5hbWU7XG4gICAgfSk7XG4gICAgbGV0IHNuYXBzaG90ID0gdmFsdWVGb3JUYWcodGFnKTtcbiAgICBhc3NlcnQub2sodmFsaWRhdGVUYWcodGFnLCBzbmFwc2hvdCksICd0YWcgc2hvdWxkIGJlIHZhbGlkIHRvIHN0YXJ0Jyk7XG5cbiAgICBvYmouZmlyc3ROYW1lID0gJ0Vkc2dlcic7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKHZhbGlkYXRlVGFnKHRhZywgc25hcHNob3QpLCBmYWxzZSwgJ3RhZyBpcyBpbnZhbGlkYXRlZCBhZnRlciBwcm9wZXJ0eSBpcyBzZXQnKTtcbiAgICBzbmFwc2hvdCA9IHZhbHVlRm9yVGFnKHRhZyk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKHZhbGlkYXRlVGFnKHRhZywgc25hcHNob3QpLCB0cnVlLCAndGFnIGlzIHZhbGlkIG9uIHRoZSBzZWNvbmQgY2hlY2snKTtcblxuICAgIGFzc2VydFZhbGlkQWZ0ZXJVbnJlbGF0ZWRCdW1wKHRhZywgc25hcHNob3QpO1xuICB9KTtcblxuICB0ZXN0KCdjYW4gcmVxdWVzdCBhIHRhZyBmcm9tIGEgZnJvemVuIGNsYXNzIGluc3RhbmNlJywgYXNzZXJ0ID0+IHtcbiAgICBjb25zdCBvYmogPSBPYmplY3QuZnJlZXplKG5ldyBGLlRvcmFuKCkpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChvYmouZmlyc3ROYW1lLCAnVG9yYW4nKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwob2JqLmxhc3ROYW1lLCAnQmlsbHVwcycpO1xuXG4gICAgLy8gRXhwbGljaXRseSBhbm5vdGF0ZWQgdHJhY2tlZCBwcm9wZXJ0aWVzXG4gICAgbGV0IHRhZyA9IHRyYWNrKCgpID0+IHtcbiAgICAgIG9iai5maXJzdE5hbWU7XG4gICAgfSk7XG4gICAgbGV0IHNuYXBzaG90ID0gdmFsdWVGb3JUYWcodGFnKTtcbiAgICBhc3NlcnQub2sodmFsaWRhdGVUYWcodGFnLCBzbmFwc2hvdCksICd0YWcgc2hvdWxkIGJlIHZhbGlkIHRvIHN0YXJ0Jyk7XG4gICAgc25hcHNob3QgPSB2YWx1ZUZvclRhZyh0YWcpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbCh2YWxpZGF0ZVRhZyh0YWcsIHNuYXBzaG90KSwgdHJ1ZSwgJ3RhZyBpcyBzdGlsbCB2YWxpZCcpO1xuXG4gICAgLy8gTm9uLXRyYWNrZWQgZGF0YSBwcm9wZXJ0aWVzXG4gICAgdGFnID0gdHJhY2soKCkgPT4ge1xuICAgICAgb2JqLmxhc3ROYW1lO1xuICAgIH0pO1xuICAgIHNuYXBzaG90ID0gdmFsdWVGb3JUYWcodGFnKTtcbiAgICBhc3NlcnQub2sodmFsaWRhdGVUYWcodGFnLCBzbmFwc2hvdCksICd0YWcgc2hvdWxkIGJlIHZhbGlkIHRvIHN0YXJ0Jyk7XG4gICAgc25hcHNob3QgPSB2YWx1ZUZvclRhZyh0YWcpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbCh2YWxpZGF0ZVRhZyh0YWcsIHNuYXBzaG90KSwgdHJ1ZSwgJ3RhZyBpcyBzdGlsbCB2YWxpZCcpO1xuXG4gICAgYXNzZXJ0VmFsaWRBZnRlclVucmVsYXRlZEJ1bXAodGFnLCBzbmFwc2hvdCk7XG4gIH0pO1xuXG4gIHRlc3QoJ2NhbiByZXF1ZXN0IGEgdGFnIGZyb20gYW4gaW5zdGFuY2Ugb2YgYSBmcm96ZW4gY2xhc3MnLCBhc3NlcnQgPT4ge1xuICAgIGNvbnN0IG9iaiA9IE9iamVjdC5mcmVlemUobmV3IEYuRnJvemVuVG9yYW4oKSk7XG5cbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwob2JqLmZpcnN0TmFtZSwgJ1RvcmFuJyk7XG5cbiAgICBjb25zdCB0YWcgPSB0cmFjaygoKSA9PiB7XG4gICAgICBvYmouZmlyc3ROYW1lO1xuICAgIH0pO1xuICAgIGxldCBzbmFwc2hvdCA9IHZhbHVlRm9yVGFnKHRhZyk7XG4gICAgYXNzZXJ0Lm9rKHZhbGlkYXRlVGFnKHRhZywgc25hcHNob3QpLCAndGFnIHNob3VsZCBiZSB2YWxpZCB0byBzdGFydCcpO1xuICAgIHNuYXBzaG90ID0gdmFsdWVGb3JUYWcodGFnKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwodmFsaWRhdGVUYWcodGFnLCBzbmFwc2hvdCksIHRydWUsICd0YWcgaXMgc3RpbGwgdmFsaWQnKTtcblxuICAgIGFzc2VydFZhbGlkQWZ0ZXJVbnJlbGF0ZWRCdW1wKHRhZywgc25hcHNob3QpO1xuICB9KTtcblxuICB0ZXN0KCdjYW4gdHJhY2sgYSBnZXR0ZXInLCBhc3NlcnQgPT4ge1xuICAgIGNvbnN0IG9iaiA9IG5ldyBGLlBlcnNvbldpdGhDb3VudCgpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChvYmouZmlyc3ROYW1lLCAnVG9tMCcpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChvYmouZmlyc3ROYW1lLCAnVG9tMScpO1xuXG4gICAgY29uc3QgdGFnID0gdHJhY2soKCkgPT4ge1xuICAgICAgb2JqLmZpcnN0TmFtZTtcbiAgICB9KTtcbiAgICBsZXQgc25hcHNob3QgPSB2YWx1ZUZvclRhZyh0YWcpO1xuICAgIGFzc2VydC5vayh2YWxpZGF0ZVRhZyh0YWcsIHNuYXBzaG90KSwgJ3RhZyBzaG91bGQgYmUgdmFsaWQgdG8gc3RhcnQnKTtcblxuICAgIGFzc2VydC5zdHJpY3RFcXVhbChvYmouZmlyc3ROYW1lLCAnVG9tMycpO1xuICAgIGFzc2VydC5vayh2YWxpZGF0ZVRhZyh0YWcsIHNuYXBzaG90KSwgJ3JlYWRpbmcgZnJvbSBwcm9wZXJ0eSBkb2VzIG5vdCBpbnZhbGlkYXRlIHRoZSB0YWcnKTtcblxuICAgIG9iai5maXJzdE5hbWUgPSAnRWRzZ2VyJztcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwodmFsaWRhdGVUYWcodGFnLCBzbmFwc2hvdCksIGZhbHNlLCAndGFnIGlzIGludmFsaWRhdGVkIGFmdGVyIHByb3BlcnR5IGlzIHNldCcpO1xuICAgIHNuYXBzaG90ID0gdmFsdWVGb3JUYWcodGFnKTtcblxuICAgIGFzc2VydFZhbGlkQWZ0ZXJVbnJlbGF0ZWRCdW1wKHRhZywgc25hcHNob3QpO1xuICB9KTtcblxuICB0ZXN0KCdnZXR0ZXJzIGFyZSBpbnZhbGlkYXRlZCB3aGVuIHRoZWlyIGRlcGVuZGVuY2llcyBhcmUgaW52YWxpZGF0ZWQnLCBhc3NlcnQgPT4ge1xuICAgIGNvbnN0IG9iaiA9IG5ldyBGLlBlcnNvbldpdGhTYWx1dGF0aW9uKCk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKG9iai5zYWx1dGF0aW9uLCAnSGVsbG8sIFRvbSBEYWxlIScsIGB0aGUgc2FsdWF0aW9uIGZpZWxkIGlzIHZhbGlkYCk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKG9iai5mdWxsTmFtZSwgJ1RvbSBEYWxlJywgYHRoZSBmdWxsTmFtZSBmaWVsZCBpcyB2YWxpZGApO1xuXG4gICAgY29uc3QgdGFnID0gdHJhY2soKCkgPT4ge1xuICAgICAgb2JqLnNhbHV0YXRpb247XG4gICAgfSk7XG4gICAgbGV0IHNuYXBzaG90ID0gdmFsdWVGb3JUYWcodGFnKTtcbiAgICBhc3NlcnQub2sodmFsaWRhdGVUYWcodGFnLCBzbmFwc2hvdCksICd0YWcgc2hvdWxkIGJlIHZhbGlkIHRvIHN0YXJ0Jyk7XG5cbiAgICBvYmouZmlyc3ROYW1lID0gJ0Vkc2dlcic7XG4gICAgb2JqLmxhc3ROYW1lID0gJ0RpamtzdHJhJztcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwoXG4gICAgICB2YWxpZGF0ZVRhZyh0YWcsIHNuYXBzaG90KSxcbiAgICAgIGZhbHNlLFxuICAgICAgJ3RhZyBpcyBpbnZhbGlkYXRlZCBhZnRlciBjaGFpbmVkIGRlcGVuZGVuY3kgaXMgc2V0J1xuICAgICk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKG9iai5mdWxsTmFtZSwgJ0Vkc2dlciBEaWprc3RyYScpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChvYmouc2FsdXRhdGlvbiwgJ0hlbGxvLCBFZHNnZXIgRGlqa3N0cmEhJyk7XG5cbiAgICBzbmFwc2hvdCA9IHZhbHVlRm9yVGFnKHRhZyk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKHZhbGlkYXRlVGFnKHRhZywgc25hcHNob3QpLCB0cnVlKTtcblxuICAgIG9iai5mdWxsTmFtZSA9ICdBbGFuIEtheSc7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKFxuICAgICAgdmFsaWRhdGVUYWcodGFnLCBzbmFwc2hvdCksXG4gICAgICBmYWxzZSxcbiAgICAgICd0YWcgaXMgaW52YWxpZGF0ZWQgYWZ0ZXIgY2hhaW5lZCBkZXBlbmRlbmN5IGlzIHNldCdcbiAgICApO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChvYmouZnVsbE5hbWUsICdBbGFuIEtheScpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChvYmouZmlyc3ROYW1lLCAnQWxhbicpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChvYmoubGFzdE5hbWUsICdLYXknKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwob2JqLnNhbHV0YXRpb24sICdIZWxsbywgQWxhbiBLYXkhJyk7XG5cbiAgICBzbmFwc2hvdCA9IHZhbHVlRm9yVGFnKHRhZyk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKHZhbGlkYXRlVGFnKHRhZywgc25hcHNob3QpLCB0cnVlKTtcblxuICAgIGFzc2VydFZhbGlkQWZ0ZXJVbnJlbGF0ZWRCdW1wKHRhZywgc25hcHNob3QpO1xuICB9KTtcblxuICB0ZXN0KCduZXN0ZWQgQHRyYWNrZWQgaW4gbXVsdGlwbGUgb2JqZWN0cycsIGFzc2VydCA9PiB7XG4gICAgY29uc3Qgb2JqID0gbmV3IEYuQ29udGFjdChuZXcgRi5QZXJzb25Gb3JDb250YWN0KCksICd0b21AZXhhbXBsZS5jb20nKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwob2JqLmNvbnRhY3QsICdUb20gRGFsZSBAIHRvbUBleGFtcGxlLmNvbScsIGB0aGUgY29udGFjdCBmaWVsZCBpcyB2YWxpZGApO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChvYmoucGVyc29uLmZ1bGxOYW1lLCAnVG9tIERhbGUnLCBgdGhlIGZ1bGxOYW1lIGZpZWxkIGlzIHZhbGlkYCk7XG4gICAgY29uc3QgcGVyc29uID0gb2JqLnBlcnNvbjtcblxuICAgIGNvbnN0IHRhZyA9IHRyYWNrKCgpID0+IHtcbiAgICAgIG9iai5jb250YWN0O1xuICAgIH0pO1xuICAgIGxldCBzbmFwc2hvdCA9IHZhbHVlRm9yVGFnKHRhZyk7XG4gICAgYXNzZXJ0Lm9rKHZhbGlkYXRlVGFnKHRhZywgc25hcHNob3QpLCAndGFnIHNob3VsZCBiZSB2YWxpZCB0byBzdGFydCcpO1xuXG4gICAgcGVyc29uLmZpcnN0TmFtZSA9ICdFZHNnZXInO1xuICAgIHBlcnNvbi5sYXN0TmFtZSA9ICdEaWprc3RyYSc7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKFxuICAgICAgdmFsaWRhdGVUYWcodGFnLCBzbmFwc2hvdCksXG4gICAgICBmYWxzZSxcbiAgICAgICd0YWcgaXMgaW52YWxpZGF0ZWQgYWZ0ZXIgbmVzdGVkIGRlcGVuZGVuY3kgaXMgc2V0J1xuICAgICk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKHBlcnNvbi5mdWxsTmFtZSwgJ0Vkc2dlciBEaWprc3RyYScpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChvYmouY29udGFjdCwgJ0Vkc2dlciBEaWprc3RyYSBAIHRvbUBleGFtcGxlLmNvbScpO1xuXG4gICAgc25hcHNob3QgPSB2YWx1ZUZvclRhZyh0YWcpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbCh2YWxpZGF0ZVRhZyh0YWcsIHNuYXBzaG90KSwgdHJ1ZSk7XG5cbiAgICBwZXJzb24uZnVsbE5hbWUgPSAnQWxhbiBLYXknO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChcbiAgICAgIHZhbGlkYXRlVGFnKHRhZywgc25hcHNob3QpLFxuICAgICAgZmFsc2UsXG4gICAgICAndGFnIGlzIGludmFsaWRhdGVkIGFmdGVyIGNoYWluZWQgZGVwZW5kZW5jeSBpcyBzZXQnXG4gICAgKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwocGVyc29uLmZ1bGxOYW1lLCAnQWxhbiBLYXknKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwocGVyc29uLmZpcnN0TmFtZSwgJ0FsYW4nKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwocGVyc29uLmxhc3ROYW1lLCAnS2F5Jyk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKG9iai5jb250YWN0LCAnQWxhbiBLYXkgQCB0b21AZXhhbXBsZS5jb20nKTtcblxuICAgIHNuYXBzaG90ID0gdmFsdWVGb3JUYWcodGFnKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwodmFsaWRhdGVUYWcodGFnLCBzbmFwc2hvdCksIHRydWUpO1xuXG4gICAgb2JqLmVtYWlsID0gJ2FsYW5AZXhhbXBsZS5jb20nO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChcbiAgICAgIHZhbGlkYXRlVGFnKHRhZywgc25hcHNob3QpLFxuICAgICAgZmFsc2UsXG4gICAgICAndGFnIGlzIGludmFsaWRhdGVkIGFmdGVyIGNoYWluZWQgZGVwZW5kZW5jeSBpcyBzZXQnXG4gICAgKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwocGVyc29uLmZ1bGxOYW1lLCAnQWxhbiBLYXknKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwocGVyc29uLmZpcnN0TmFtZSwgJ0FsYW4nKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwocGVyc29uLmxhc3ROYW1lLCAnS2F5Jyk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKG9iai5jb250YWN0LCAnQWxhbiBLYXkgQCBhbGFuQGV4YW1wbGUuY29tJyk7XG5cbiAgICBzbmFwc2hvdCA9IHZhbHVlRm9yVGFnKHRhZyk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKHZhbGlkYXRlVGFnKHRhZywgc25hcHNob3QpLCB0cnVlKTtcblxuICAgIGFzc2VydFZhbGlkQWZ0ZXJVbnJlbGF0ZWRCdW1wKHRhZywgc25hcHNob3QpO1xuICB9KTtcblxuICBpZiAoREVCVUcpIHtcbiAgICB0ZXN0KCdUcmFja2VkIGRlY29yYXRvciB3aXRoIGEgZ2V0dGVyIHRocm93cyBhbiBlcnJvcicsIGFzc2VydCA9PiB7XG4gICAgICBhc3NlcnQudGhyb3dzKEYuY3JlYXRlQ2xhc3NXaXRoVHJhY2tlZEdldHRlcik7XG4gICAgfSk7XG5cbiAgICB0ZXN0KCdUcmFja2VkIGRlY29yYXRvciB3aXRoIGEgc2V0dGVyIHRocm93cyBhbiBlcnJvcicsIGFzc2VydCA9PiB7XG4gICAgICBhc3NlcnQudGhyb3dzKEYuY3JlYXRlQ2xhc3NXaXRoVHJhY2tlZFNldHRlcik7XG4gICAgfSk7XG5cbiAgICB0ZXN0KCdUcmFja2VkIGRlY29yYXRvciB3aXRoIGFyZ3VtZW50cyB0aHJvd3MgYW4gZXJyb3InLCBmdW5jdGlvbihhc3NlcnQpIHtcbiAgICAgIGFzc2VydC50aHJvd3MoXG4gICAgICAgIEYuY3JlYXRlQ2xhc3NXaXRoVHJhY2tlZERlcGVuZGVudEtleXMsXG4gICAgICAgIC9AdHJhY2tlZFxcKCdmaXJzdE5hbWUnLCAnbGFzdE5hbWUnXFwpLyxcbiAgICAgICAgJ3RoZSBjb3JyZWN0IGVycm9yIGlzIHRocm93bidcbiAgICAgICk7XG4gICAgfSk7XG5cbiAgICB0ZXN0KCdVc2luZyBAdHJhY2tlZCBhcyBhIGRlY29yYXRvciBmYWN0b3J5IHRocm93cyBhbiBlcnJvcicsIGZ1bmN0aW9uKGFzc2VydCkge1xuICAgICAgYXNzZXJ0LnRocm93cyhcbiAgICAgICAgRi5jcmVhdGVDbGFzc1dpdGhUcmFja2VkQXNEZWNvcmF0b3JGYWN0b3J5LFxuICAgICAgICAvQHRyYWNrZWRcXChcXCkvLFxuICAgICAgICAnVGhlIGNvcnJlY3QgZXJyb3IgaXMgdGhyb3duJ1xuICAgICAgKTtcbiAgICB9KTtcbiAgfVxufSk7XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhY2tlZC1kZWNvcmF0b3ItdGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BnbGltbWVyL3RyYWNraW5nL3Rlc3QvdHJhY2tlZC1kZWNvcmF0b3ItdGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLHlDQUF5QztBQUN6QyxNQUFNLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxHQUFHLEtBQUssQ0FBQztBQUUvQixzQ0FBcUM7QUFDckMsa0RBQXFFO0FBRXJFLG9EQUFvRDtBQUNwRCw0REFBNEQ7QUFDNUQsYUFBYTtBQUNiLGtEQUFrRDtBQUNsRCx5Q0FBK0Q7QUFFL0Q7SUFDRSxDQUFDLE9BQU8sRUFBRSxhQUFhLENBQUM7SUFDeEIsQ0FBQyxZQUFZLEVBQUUsVUFBVSxDQUFDO0NBQzNCLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRTtJQUMxQixNQUFNLENBQUMsd0RBQXdELFFBQVEsRUFBRSxDQUFDLENBQUM7SUFFM0UsSUFBSSxDQUFDLCtDQUErQyxFQUFFLENBQUMsTUFBTSxFQUFFLEVBQUU7UUFDL0QsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDeEIsTUFBTSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3pDLEdBQUcsQ0FBQyxTQUFTLEdBQUcsUUFBUSxDQUFDO1FBQ3pCLE1BQU0sQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUM5QyxDQUFDLENBQUMsQ0FBQztJQUVILElBQUksQ0FBQyxrQ0FBa0MsRUFBRSxDQUFDLE1BQU0sRUFBRSxFQUFFO1FBQ2xELE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBQ3hCLE1BQU0sQ0FBQyxXQUFXLENBQUMs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VyxDQUFDLHVCQUFXLENBQUMsR0FBRyxFQUFFLFFBQVEsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBRXJELG9DQUE2QixDQUFDLEdBQUcsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUMvQyxDQUFDLENBQUMsQ0FBQztJQUVILElBQUksV0FBSyxFQUFFO1FBQ1QsSUFBSSxDQUFDLGlEQUFpRCxFQUFFLENBQUMsTUFBTSxFQUFFLEVBQUU7WUFDakUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsNEJBQTRCLENBQUMsQ0FBQztRQUNoRCxDQUFDLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxpREFBaUQsRUFBRSxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQ2pFLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLDRCQUE0QixDQUFDLENBQUM7UUFDaEQsQ0FBQyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsa0RBQWtELEVBQUUsVUFBVSxNQUFNO1lBQ3ZFLE1BQU0sQ0FBQyxNQUFNLENBQ1gsQ0FBQyxDQUFDLG1DQUFtQyxFQUNyQyxxQ0FBcUMsRUFDckMsNkJBQTZCLENBQzlCLENBQUM7UUFDSixDQUFDLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyx1REFBdUQsRUFBRSxVQUFVLE1BQU07WUFDNUUsTUFBTSxDQUFDLE1BQU0sQ0FDWCxDQUFDLENBQUMsd0NBQXdDLEVBQzFDLGNBQWMsRUFDZCw2QkFBNkIsQ0FDOUIsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO0tBQ0o7QUFDSCxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qIHRzbGludDpkaXNhYmxlOm5vLXVudXNlZC1leHByZXNzaW9uICovXG5jb25zdCB7IG1vZHVsZSwgdGVzdCB9ID0gUVVuaXQ7XG5cbmltcG9ydCB7IERFQlVHIH0gZnJvbSAnQGdsaW1tZXIvZW52JztcbmltcG9ydCB7IHRyYWNrLCB2YWx1ZUZvclRhZywgdmFsaWRhdGVUYWcgfSBmcm9tICdAZ2xpbW1lci92YWxpZGF0b3InO1xuXG5pbXBvcnQgKiBhcyBUU0ZpeHR1cmVzIGZyb20gJy4vZml4dHVyZXMvdHlwZXNjcmlwdCc7XG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L2Jhbi10cy1pZ25vcmVcbi8vIEB0cy1pZ25vcmVcbmltcG9ydCAqIGFzIEJhYmVsRml4dHVyZXMgZnJvbSAnLi9maXh0dXJlcy9iYWJlbCc7XG5pbXBvcnQgeyBhc3NlcnRWYWxpZEFmdGVyVW5yZWxhdGVkQnVtcCB9IGZyb20gJy4vaGVscGVycy90YWdzJztcblxuW1xuICBbJ0JhYmVsJywgQmFiZWxGaXh0dXJlc10sXG4gIFsnVHlwZVNjcmlwdCcsIFRTRml4dHVyZXNdLFxuXS5mb3JFYWNoKChbY29tcGlsZXIsIEZdKSA9PiB7XG4gIG1vZHVsZShgW0BnbGltbWVyL3RyYWNraW5nXSBUcmFja2VkIFByb3BlcnR5IERlY29yYXRvcnMgd2l0aCAke2NvbXBpbGVyfWApO1xuXG4gIHRlc3QoJ3RyYWNrZWQgcHJvcGVydGllcyBjYW4gYmUgcmVhZCBhbmQgd3JpdHRlbiB0bycsIChhc3NlcnQpID0+IHtcbiAgICBjb25zdCBvYmogPSBuZXcgRi5Ub20oKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwob2JqLmZpcnN0TmFtZSwgJ1RvbScpO1xuICAgIG9iai5maXJzdE5hbWUgPSAnRWRzZ2VyJztcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwob2JqLmZpcnN0TmFtZSwgJ0Vkc2dlcicpO1xuICB9KTtcblxuICB0ZXN0KCdjYW4gcmVxdWVzdCBhIHRhZyBmb3IgYSBwcm9wZXJ0eScsIChhc3NlcnQpID0+IHtcbiAgICBjb25zdCBvYmogPSBuZXcgRi5Ub20oKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwob2JqLmZpcnN0TmFtZSwgJ1RvbScpO1xuXG4gICAgY29uc3QgdGFnID0gdHJhY2soKCkgPT4ge1xuICAgICAgb2JqLmZpcnN0TmFtZTtcbiAgICB9KTtcbiAgICBsZXQgc25hcHNob3QgPSB2YWx1ZUZvclRhZyh0YWcpO1xuICAgIGFzc2VydC5vayh2YWxpZGF0ZVRhZyh0YWcsIHNuYXBzaG90KSwgJ3RhZyBzaG91bGQgYmUgdmFsaWQgdG8gc3RhcnQnKTtcblxuICAgIG9iai5maXJzdE5hbWUgPSAnRWRzZ2VyJztcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwoXG4gICAgICB2YWxpZGF0ZVRhZyh0YWcsIHNuYXBzaG90KSxcbiAgICAgIGZhbHNlLFxuICAgICAgJ3RhZyBpcyBpbnZhbGlkYXRlZCBhZnRlciBwcm9wZXJ0eSBpcyBzZXQnXG4gICAgKTtcbiAgICBzbmFwc2hvdCA9IHZhbHVlRm9yVGFnKHRhZyk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKHZhbGlkYXRlVGFnKHRhZywgc25hcHNob3QpLCB0cnVlLCAndGFnIGlzIHZhbGlkIG9uIHRoZSBzZWNvbmQgY2hlY2snKTtcblxuICAgIGFzc2VydFZhbGlkQWZ0ZXJVbnJlbGF0ZWRCdW1wKHRhZywgc25hcHNob3QpO1xuICB9KTtcblxuICB0ZXN0KCdjYW4gcmVxdWVzdCBhIHRhZyBmcm9tIGEgZnJvemVuIGNsYXNzIGluc3RhbmNlJywgKGFzc2VydCkgPT4ge1xuICAgIGNvbnN0IG9iaiA9IE9iamVjdC5mcmVlemUobmV3IEYuVG9yYW4oKSk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKG9iai5maXJzdE5hbWUsICdUb3JhbicpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChvYmoubGFzdE5hbWUsICdCaWxsdXBzJyk7XG5cbiAgICAvLyBFeHBsaWNpdGx5IGFubm90YXRlZCB0cmFja2VkIHByb3BlcnRpZXNcbiAgICBsZXQgdGFnID0gdHJhY2soKCkgPT4ge1xuICAgICAgb2JqLmZpcnN0TmFtZTtcbiAgICB9KTtcbiAgICBsZXQgc25hcHNob3QgPSB2YWx1ZUZvclRhZyh0YWcpO1xuICAgIGFzc2VydC5vayh2YWxpZGF0ZVRhZyh0YWcsIHNuYXBzaG90KSwgJ3RhZyBzaG91bGQgYmUgdmFsaWQgdG8gc3RhcnQnKTtcbiAgICBzbmFwc2hvdCA9IHZhbHVlRm9yVGFnKHRhZyk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKHZhbGlkYXRlVGFnKHRhZywgc25hcHNob3QpLCB0cnVlLCAndGFnIGlzIHN0aWxsIHZhbGlkJyk7XG5cbiAgICAvLyBOb24tdHJhY2tlZCBkYXRhIHByb3BlcnRpZXNcbiAgICB0YWcgPSB0cmFjaygoKSA9PiB7XG4gICAgICBvYmoubGFzdE5hbWU7XG4gICAgfSk7XG4gICAgc25hcHNob3QgPSB2YWx1ZUZvclRhZyh0YWcpO1xuICAgIGFzc2VydC5vayh2YWxpZGF0ZVRhZyh0YWcsIHNuYXBzaG90KSwgJ3RhZyBzaG91bGQgYmUgdmFsaWQgdG8gc3RhcnQnKTtcbiAgICBzbmFwc2hvdCA9IHZhbHVlRm9yVGFnKHRhZyk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKHZhbGlkYXRlVGFnKHRhZywgc25hcHNob3QpLCB0cnVlLCAndGFnIGlzIHN0aWxsIHZhbGlkJyk7XG5cbiAgICBhc3NlcnRWYWxpZEFmdGVyVW5yZWxhdGVkQnVtcCh0YWcsIHNuYXBzaG90KTtcbiAgfSk7XG5cbiAgdGVzdCgnY2FuIHJlcXVlc3QgYSB0YWcgZnJvbSBhbiBpbnN0YW5jZSBvZiBhIGZyb3plbiBjbGFzcycsIChhc3NlcnQpID0+IHtcbiAgICBjb25zdCBvYmogPSBPYmplY3QuZnJlZXplKG5ldyBGLkZyb3plblRvcmFuKCkpO1xuXG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKG9iai5maXJzdE5hbWUsICdUb3JhbicpO1xuXG4gICAgY29uc3QgdGFnID0gdHJhY2soKCkgPT4ge1xuICAgICAgb2JqLmZpcnN0TmFtZTtcbiAgICB9KTtcbiAgICBsZXQgc25hcHNob3QgPSB2YWx1ZUZvclRhZyh0YWcpO1xuICAgIGFzc2VydC5vayh2YWxpZGF0ZVRhZyh0YWcsIHNuYXBzaG90KSwgJ3RhZyBzaG91bGQgYmUgdmFsaWQgdG8gc3RhcnQnKTtcbiAgICBzbmFwc2hvdCA9IHZhbHVlRm9yVGFnKHRhZyk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKHZhbGlkYXRlVGFnKHRhZywgc25hcHNob3QpLCB0cnVlLCAndGFnIGlzIHN0aWxsIHZhbGlkJyk7XG5cbiAgICBhc3NlcnRWYWxpZEFmdGVyVW5yZWxhdGVkQnVtcCh0YWcsIHNuYXBzaG90KTtcbiAgfSk7XG5cbiAgdGVzdCgnY2FuIHRyYWNrIGEgZ2V0dGVyJywgKGFzc2VydCkgPT4ge1xuICAgIGNvbnN0IG9iaiA9IG5ldyBGLlBlcnNvbldpdGhDb3VudCgpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChvYmouZmlyc3ROYW1lLCAnVG9tMCcpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChvYmouZmlyc3ROYW1lLCAnVG9tMScpO1xuXG4gICAgY29uc3QgdGFnID0gdHJhY2soKCkgPT4ge1xuICAgICAgb2JqLmZpcnN0TmFtZTtcbiAgICB9KTtcbiAgICBsZXQgc25hcHNob3QgPSB2YWx1ZUZvclRhZyh0YWcpO1xuICAgIGFzc2VydC5vayh2YWxpZGF0ZVRhZyh0YWcsIHNuYXBzaG90KSwgJ3RhZyBzaG91bGQgYmUgdmFsaWQgdG8gc3RhcnQnKTtcblxuICAgIGFzc2VydC5zdHJpY3RFcXVhbChvYmouZmlyc3ROYW1lLCAnVG9tMycpO1xuICAgIGFzc2VydC5vayh2YWxpZGF0ZVRhZyh0YWcsIHNuYXBzaG90KSwgJ3JlYWRpbmcgZnJvbSBwcm9wZXJ0eSBkb2VzIG5vdCBpbnZhbGlkYXRlIHRoZSB0YWcnKTtcblxuICAgIG9iai5maXJzdE5hbWUgPSAnRWRzZ2VyJztcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwoXG4gICAgICB2YWxpZGF0ZVRhZyh0YWcsIHNuYXBzaG90KSxcbiAgICAgIGZhbHNlLFxuICAgICAgJ3RhZyBpcyBpbnZhbGlkYXRlZCBhZnRlciBwcm9wZXJ0eSBpcyBzZXQnXG4gICAgKTtcbiAgICBzbmFwc2hvdCA9IHZhbHVlRm9yVGFnKHRhZyk7XG5cbiAgICBhc3NlcnRWYWxpZEFmdGVyVW5yZWxhdGVkQnVtcCh0YWcsIHNuYXBzaG90KTtcbiAgfSk7XG5cbiAgdGVzdCgnZ2V0dGVycyBhcmUgaW52YWxpZGF0ZWQgd2hlbiB0aGVpciBkZXBlbmRlbmNpZXMgYXJlIGludmFsaWRhdGVkJywgKGFzc2VydCkgPT4ge1xuICAgIGNvbnN0IG9iaiA9IG5ldyBGLlBlcnNvbldpdGhTYWx1dGF0aW9uKCk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKG9iai5zYWx1dGF0aW9uLCAnSGVsbG8sIFRvbSBEYWxlIScsIGB0aGUgc2FsdWF0aW9uIGZpZWxkIGlzIHZhbGlkYCk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKG9iai5mdWxsTmFtZSwgJ1RvbSBEYWxlJywgYHRoZSBmdWxsTmFtZSBmaWVsZCBpcyB2YWxpZGApO1xuXG4gICAgY29uc3QgdGFnID0gdHJhY2soKCkgPT4ge1xuICAgICAgb2JqLnNhbHV0YXRpb247XG4gICAgfSk7XG4gICAgbGV0IHNuYXBzaG90ID0gdmFsdWVGb3JUYWcodGFnKTtcbiAgICBhc3NlcnQub2sodmFsaWRhdGVUYWcodGFnLCBzbmFwc2hvdCksICd0YWcgc2hvdWxkIGJlIHZhbGlkIHRvIHN0YXJ0Jyk7XG5cbiAgICBvYmouZmlyc3ROYW1lID0gJ0Vkc2dlcic7XG4gICAgb2JqLmxhc3ROYW1lID0gJ0RpamtzdHJhJztcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwoXG4gICAgICB2YWxpZGF0ZVRhZyh0YWcsIHNuYXBzaG90KSxcbiAgICAgIGZhbHNlLFxuICAgICAgJ3RhZyBpcyBpbnZhbGlkYXRlZCBhZnRlciBjaGFpbmVkIGRlcGVuZGVuY3kgaXMgc2V0J1xuICAgICk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKG9iai5mdWxsTmFtZSwgJ0Vkc2dlciBEaWprc3RyYScpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChvYmouc2FsdXRhdGlvbiwgJ0hlbGxvLCBFZHNnZXIgRGlqa3N0cmEhJyk7XG5cbiAgICBzbmFwc2hvdCA9IHZhbHVlRm9yVGFnKHRhZyk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKHZhbGlkYXRlVGFnKHRhZywgc25hcHNob3QpLCB0cnVlKTtcblxuICAgIG9iai5mdWxsTmFtZSA9ICdBbGFuIEtheSc7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKFxuICAgICAgdmFsaWRhdGVUYWcodGFnLCBzbmFwc2hvdCksXG4gICAgICBmYWxzZSxcbiAgICAgICd0YWcgaXMgaW52YWxpZGF0ZWQgYWZ0ZXIgY2hhaW5lZCBkZXBlbmRlbmN5IGlzIHNldCdcbiAgICApO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChvYmouZnVsbE5hbWUsICdBbGFuIEtheScpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChvYmouZmlyc3ROYW1lLCAnQWxhbicpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChvYmoubGFzdE5hbWUsICdLYXknKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwob2JqLnNhbHV0YXRpb24sICdIZWxsbywgQWxhbiBLYXkhJyk7XG5cbiAgICBzbmFwc2hvdCA9IHZhbHVlRm9yVGFnKHRhZyk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKHZhbGlkYXRlVGFnKHRhZywgc25hcHNob3QpLCB0cnVlKTtcblxuICAgIGFzc2VydFZhbGlkQWZ0ZXJVbnJlbGF0ZWRCdW1wKHRhZywgc25hcHNob3QpO1xuICB9KTtcblxuICB0ZXN0KCduZXN0ZWQgQHRyYWNrZWQgaW4gbXVsdGlwbGUgb2JqZWN0cycsIChhc3NlcnQpID0+IHtcbiAgICBjb25zdCBvYmogPSBuZXcgRi5Db250YWN0KG5ldyBGLlBlcnNvbkZvckNvbnRhY3QoKSwgJ3RvbUBleGFtcGxlLmNvbScpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChvYmouY29udGFjdCwgJ1RvbSBEYWxlIEAgdG9tQGV4YW1wbGUuY29tJywgYHRoZSBjb250YWN0IGZpZWxkIGlzIHZhbGlkYCk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKG9iai5wZXJzb24uZnVsbE5hbWUsICdUb20gRGFsZScsIGB0aGUgZnVsbE5hbWUgZmllbGQgaXMgdmFsaWRgKTtcbiAgICBjb25zdCBwZXJzb24gPSBvYmoucGVyc29uO1xuXG4gICAgY29uc3QgdGFnID0gdHJhY2soKCkgPT4ge1xuICAgICAgb2JqLmNvbnRhY3Q7XG4gICAgfSk7XG4gICAgbGV0IHNuYXBzaG90ID0gdmFsdWVGb3JUYWcodGFnKTtcbiAgICBhc3NlcnQub2sodmFsaWRhdGVUYWcodGFnLCBzbmFwc2hvdCksICd0YWcgc2hvdWxkIGJlIHZhbGlkIHRvIHN0YXJ0Jyk7XG5cbiAgICBwZXJzb24uZmlyc3ROYW1lID0gJ0Vkc2dlcic7XG4gICAgcGVyc29uLmxhc3ROYW1lID0gJ0RpamtzdHJhJztcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwoXG4gICAgICB2YWxpZGF0ZVRhZyh0YWcsIHNuYXBzaG90KSxcbiAgICAgIGZhbHNlLFxuICAgICAgJ3RhZyBpcyBpbnZhbGlkYXRlZCBhZnRlciBuZXN0ZWQgZGVwZW5kZW5jeSBpcyBzZXQnXG4gICAgKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwocGVyc29uLmZ1bGxOYW1lLCAnRWRzZ2VyIERpamtzdHJhJyk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKG9iai5jb250YWN0LCAnRWRzZ2VyIERpamtzdHJhIEAgdG9tQGV4YW1wbGUuY29tJyk7XG5cbiAgICBzbmFwc2hvdCA9IHZhbHVlRm9yVGFnKHRhZyk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKHZhbGlkYXRlVGFnKHRhZywgc25hcHNob3QpLCB0cnVlKTtcblxuICAgIHBlcnNvbi5mdWxsTmFtZSA9ICdBbGFuIEtheSc7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKFxuICAgICAgdmFsaWRhdGVUYWcodGFnLCBzbmFwc2hvdCksXG4gICAgICBmYWxzZSxcbiAgICAgICd0YWcgaXMgaW52YWxpZGF0ZWQgYWZ0ZXIgY2hhaW5lZCBkZXBlbmRlbmN5IGlzIHNldCdcbiAgICApO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChwZXJzb24uZnVsbE5hbWUsICdBbGFuIEtheScpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChwZXJzb24uZmlyc3ROYW1lLCAnQWxhbicpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChwZXJzb24ubGFzdE5hbWUsICdLYXknKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwob2JqLmNvbnRhY3QsICdBbGFuIEtheSBAIHRvbUBleGFtcGxlLmNvbScpO1xuXG4gICAgc25hcHNob3QgPSB2YWx1ZUZvclRhZyh0YWcpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbCh2YWxpZGF0ZVRhZyh0YWcsIHNuYXBzaG90KSwgdHJ1ZSk7XG5cbiAgICBvYmouZW1haWwgPSAnYWxhbkBleGFtcGxlLmNvbSc7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKFxuICAgICAgdmFsaWRhdGVUYWcodGFnLCBzbmFwc2hvdCksXG4gICAgICBmYWxzZSxcbiAgICAgICd0YWcgaXMgaW52YWxpZGF0ZWQgYWZ0ZXIgY2hhaW5lZCBkZXBlbmRlbmN5IGlzIHNldCdcbiAgICApO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChwZXJzb24uZnVsbE5hbWUsICdBbGFuIEtheScpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChwZXJzb24uZmlyc3ROYW1lLCAnQWxhbicpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChwZXJzb24ubGFzdE5hbWUsICdLYXknKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwob2JqLmNvbnRhY3QsICdBbGFuIEtheSBAIGFsYW5AZXhhbXBsZS5jb20nKTtcblxuICAgIHNuYXBzaG90ID0gdmFsdWVGb3JUYWcodGFnKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwodmFsaWRhdGVUYWcodGFnLCBzbmFwc2hvdCksIHRydWUpO1xuXG4gICAgYXNzZXJ0VmFsaWRBZnRlclVucmVsYXRlZEJ1bXAodGFnLCBzbmFwc2hvdCk7XG4gIH0pO1xuXG4gIGlmIChERUJVRykge1xuICAgIHRlc3QoJ1RyYWNrZWQgZGVjb3JhdG9yIHdpdGggYSBnZXR0ZXIgdGhyb3dzIGFuIGVycm9yJywgKGFzc2VydCkgPT4ge1xuICAgICAgYXNzZXJ0LnRocm93cyhGLmNyZWF0ZUNsYXNzV2l0aFRyYWNrZWRHZXR0ZXIpO1xuICAgIH0pO1xuXG4gICAgdGVzdCgnVHJhY2tlZCBkZWNvcmF0b3Igd2l0aCBhIHNldHRlciB0aHJvd3MgYW4gZXJyb3InLCAoYXNzZXJ0KSA9PiB7XG4gICAgICBhc3NlcnQudGhyb3dzKEYuY3JlYXRlQ2xhc3NXaXRoVHJhY2tlZFNldHRlcik7XG4gICAgfSk7XG5cbiAgICB0ZXN0KCdUcmFja2VkIGRlY29yYXRvciB3aXRoIGFyZ3VtZW50cyB0aHJvd3MgYW4gZXJyb3InLCBmdW5jdGlvbiAoYXNzZXJ0KSB7XG4gICAgICBhc3NlcnQudGhyb3dzKFxuICAgICAgICBGLmNyZWF0ZUNsYXNzV2l0aFRyYWNrZWREZXBlbmRlbnRLZXlzLFxuICAgICAgICAvQHRyYWNrZWRcXCgnZmlyc3ROYW1lJywgJ2xhc3ROYW1lJ1xcKS8sXG4gICAgICAgICd0aGUgY29ycmVjdCBlcnJvciBpcyB0aHJvd24nXG4gICAgICApO1xuICAgIH0pO1xuXG4gICAgdGVzdCgnVXNpbmcgQHRyYWNrZWQgYXMgYSBkZWNvcmF0b3IgZmFjdG9yeSB0aHJvd3MgYW4gZXJyb3InLCBmdW5jdGlvbiAoYXNzZXJ0KSB7XG4gICAgICBhc3NlcnQudGhyb3dzKFxuICAgICAgICBGLmNyZWF0ZUNsYXNzV2l0aFRyYWNrZWRBc0RlY29yYXRvckZhY3RvcnksXG4gICAgICAgIC9AdHJhY2tlZFxcKFxcKS8sXG4gICAgICAgICdUaGUgY29ycmVjdCBlcnJvciBpcyB0aHJvd24nXG4gICAgICApO1xuICAgIH0pO1xuICB9XG59KTtcbiJdfQ==

@@ -81,3 +81,3 @@ import { DEBUG } from '@glimmer/env';

throw new Error(`You attempted to use @tracked with ${args.length > 1 ? 'arguments' : 'an argument'} ( @tracked(${args
.map(d => `'${d}'`)
.map((d) => `'${d}'`)
.join(', ')}) ), which is no longer necessary nor supported. Dependencies are now automatically tracked, so you can just use ${'`@tracked`'}.`);

@@ -106,2 +106,2 @@ }

}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhY2tlZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BnbGltbWVyL3RyYWNraW5nL3NyYy90cmFja2VkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDckMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRWpEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBdURHO0FBQ0gsOERBQThEO0FBQzlELE1BQU0sQ0FBQyxNQUFNLE9BQU8sR0FBc0IsQ0FBQyxHQUFHLElBQVcsRUFBRSxFQUFFO0lBQzNELE1BQU0sQ0FBQyxNQUFNLEVBQUUsR0FBRyxFQUFFLFVBQVUsQ0FBQyxHQUFHLElBQUksQ0FBQztJQUV2Qyw0RUFBNEU7SUFDNUUsSUFBSSxLQUFLLElBQUksT0FBTyxNQUFNLEtBQUssUUFBUTtRQUFFLDhCQUE4QixDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzlFLElBQUksS0FBSyxJQUFJLE1BQU0sS0FBSyxTQUFTO1FBQUUsbUNBQW1DLEVBQUUsQ0FBQztJQUN6RSxJQUFJLEtBQUssSUFBSSxVQUFVLElBQUksVUFBVSxDQUFDLEdBQUc7UUFBRSxpQ0FBaUMsRUFBRSxDQUFDO0lBRS9FLElBQUksVUFBVSxFQUFFO1FBQ2QsT0FBTyxrQkFBa0IsQ0FBQyxNQUFNLEVBQUUsR0FBRyxFQUFFLFVBQVUsQ0FBQyxDQUFDO0tBQ3BEO0lBQ0QsMkVBQTJFO0lBQzNFLDBFQUEwRTtJQUMxRSxNQUFNLENBQUMsY0FBYyxDQUFDLE1BQU0sRUFBRSxHQUFHLEVBQUUsa0JBQWtCLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUM7QUFDdEUsQ0FBQyxDQUFDO0FBRUYsU0FBUyxpQ0FBaUM7SUFDeEMsTUFBTSxJQUFJLEtBQUssQ0FDYixtTEFBbUwsQ0FDcEwsQ0FBQztBQUNKLENBQUM7QUFFRCxTQUFTLDhCQUE4QixDQUFDLElBQWU7SUFDckQsTUFBTSxJQUFJLEtBQUssQ0FDYixzQ0FDRSxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxhQUNsQyxlQUFlLElBQUk7U0FDaEIsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQztTQUNsQixJQUFJLENBQ0gsSUFBSSxDQUNMLG9IQUFvSCxZQUFZLEdBQUcsQ0FDdkksQ0FBQztBQUNKLENBQUM7QUFFRCxTQUFTLG1DQUFtQztJQUMxQyxNQUFNLElBQUksS0FBSyxDQUNiLGlJQUFpSSxDQUNsSSxDQUFDO0FBQ0osQ0FBQztBQWtCRCxTQUFTLGtCQUFrQixDQUN6QixPQUFVLEVBQ1YsR0FBTSxFQUNOLElBQWtDO0lBRWxDLElBQUksS0FBSyxJQUFJLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLEdBQUcsSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUU7UUFDekQsTUFBTSxJQUFJLEtBQUssQ0FDYixvQ0FBb0MsR0FBRyxnT0FBZ08sQ0FDeFEsQ0FBQztLQUNIO0lBRUQsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsR0FBRyxXQUFXLENBQU8sR0FBRyxFQUFFLElBQUksSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFFNUUsT0FBTztRQUNMLFVBQVUsRUFBRSxJQUFJO1FBQ2hCLFlBQVksRUFBRSxJQUFJO1FBRWxCLDhEQUE4RDtRQUM5RCxHQUFHO1lBQ0QsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDdEIsQ0FBQztRQUVELDhEQUE4RDtRQUM5RCxHQUFHLENBQVUsUUFBYTtZQUN4QixNQUFNLENBQUMsSUFBSSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQ3pCLENBQUM7S0FDRixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERFQlVHIH0gZnJvbSAnQGdsaW1tZXIvZW52JztcbmltcG9ydCB7IHRyYWNrZWREYXRhIH0gZnJvbSAnQGdsaW1tZXIvdmFsaWRhdG9yJztcblxuLyoqXG4gKiBAZGVjb3JhdG9yXG4gKlxuICogTWFya3MgYSBwcm9wZXJ0eSBhcyB0cmFja2VkLlxuICpcbiAqIEJ5IGRlZmF1bHQsIGEgY29tcG9uZW50J3MgcHJvcGVydGllcyBhcmUgZXhwZWN0ZWQgdG8gYmUgc3RhdGljLFxuICogbWVhbmluZyB5b3UgYXJlIG5vdCBhYmxlIHRvIHVwZGF0ZSB0aGVtIGFuZCBoYXZlIHRoZSB0ZW1wbGF0ZSB1cGRhdGUgYWNjb3JkaW5nbHkuXG4gKiBNYXJraW5nIGEgcHJvcGVydHkgYXMgdHJhY2tlZCBtZWFucyB0aGF0IHdoZW4gdGhhdCBwcm9wZXJ0eSBjaGFuZ2VzLFxuICogYSByZXJlbmRlciBvZiB0aGUgY29tcG9uZW50IGlzIHNjaGVkdWxlZCBzbyB0aGUgdGVtcGxhdGUgaXMga2VwdCB1cCB0byBkYXRlLlxuICpcbiAqIEBleGFtcGxlXG4gKlxuICogYGBgdHlwZXNjcmlwdFxuICogaW1wb3J0IENvbXBvbmVudCBmcm9tICdAZ2xpbW1lci9jb21wb25lbnQnO1xuICogaW1wb3J0IHsgdHJhY2tlZCB9IGZyb20gJ0BnbGltbWVyL3RyYWNraW5nJztcbiAqXG4gKiBleHBvcnQgZGVmYXVsdCBjbGFzcyBNeUNvbXBvbmVudCBleHRlbmRzIENvbXBvbmVudCB7XG4gKiAgICBAdHJhY2tlZFxuICogICAgcmVtYWluaW5nQXBwbGVzID0gMTBcbiAqIH1cbiAqIGBgYFxuICpcbiAqIFdoZW4gc29tZXRoaW5nIGNoYW5nZXMgdGhlIGNvbXBvbmVudCdzIGByZW1haW5pbmdBcHBsZXNgIHByb3BlcnR5LCB0aGUgcmVyZW5kZXJcbiAqIHdpbGwgYmUgc2NoZWR1bGVkLlxuICpcbiAqIEBleGFtcGxlIENvbXB1dGVkIFByb3BlcnRpZXNcbiAqXG4gKiBJbiB0aGUgY2FzZSB0aGF0IHlvdSBoYXZlIGEgZ2V0dGVyIHRoYXQgZGVwZW5kcyBvbiBvdGhlciBwcm9wZXJ0aWVzLCB0cmFja2VkXG4gKiBwcm9wZXJ0aWVzIGFjY2Vzc2VkIHdpdGhpbiB0aGUgZ2V0dGVyIHdpbGwgYXV0b21hdGljYWxseSBiZSB0cmFja2VkIGZvciB5b3UuXG4gKiBUaGF0IG1lYW5zIHdoZW4gYW55IG9mIHRob3NlIGRlcGVuZGVudCB0cmFja2VkIHByb3BlcnRpZXMgaXMgY2hhbmdlZCwgYVxuICogcmVyZW5kZXIgb2YgdGhlIGNvbXBvbmVudCB3aWxsIGJlIHNjaGVkdWxlZC5cbiAqXG4gKiBJbiB0aGUgZm9sbG93aW5nIGV4YW1wbGUgd2UgaGF2ZSB0d28gcHJvcGVydGllcyxcbiAqIGBlYXRlbkFwcGxlc2AsIGFuZCBgcmVtYWluaW5nQXBwbGVzYC5cbiAqXG4gKlxuICogYGBgdHlwZXNjcmlwdFxuICogaW1wb3J0IENvbXBvbmVudCBmcm9tICdAZ2xpbW1lci9jb21wb25lbnQnO1xuICogaW1wb3J0IHsgdHJhY2tlZCB9IGZyb20gJ0BnbGltbWVyL3RyYWNraW5nJztcbiAqXG4gKiBjb25zdCB0b3RhbEFwcGxlcyA9IDEwMDtcbiAqXG4gKiBleHBvcnQgZGVmYXVsdCBjbGFzcyBNeUNvbXBvbmVudCBleHRlbmRzIENvbXBvbmVudCB7XG4gKiAgICBAdHJhY2tlZFxuICogICAgZWF0ZW5BcHBsZXMgPSAwXG4gKlxuICogICAgZ2V0IHJlbWFpbmluZ0FwcGxlcygpIHtcbiAqICAgICAgcmV0dXJuIHRvdGFsQXBwbGVzIC0gdGhpcy5lYXRlbkFwcGxlcztcbiAqICAgIH1cbiAqXG4gKiAgICBpbmNyZW1lbnQoKSB7XG4gKiAgICAgIHRoaXMuZWF0ZW5BcHBsZXMgPSB0aGlzLmVhdGVuQXBwbGVzICsgMTtcbiAqICAgIH1cbiAqICB9XG4gKiBgYGBcbiAqL1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbmV4cG9ydCBjb25zdCB0cmFja2VkOiBQcm9wZXJ0eURlY29yYXRvciA9ICguLi5hcmdzOiBhbnlbXSkgPT4ge1xuICBjb25zdCBbdGFyZ2V0LCBrZXksIGRlc2NyaXB0b3JdID0gYXJncztcblxuICAvLyBFcnJvciBvbiBgQHRyYWNrZWQoKWAsIGBAdHJhY2tlZCguLi5hcmdzKWAsIGFuZCBgQHRyYWNrZWQgZ2V0IHByb3BOYW1lKClgXG4gIGlmIChERUJVRyAmJiB0eXBlb2YgdGFyZ2V0ID09PSAnc3RyaW5nJykgdGhyb3dUcmFja2VkV2l0aEFyZ3VtZW50c0Vycm9yKGFyZ3MpO1xuICBpZiAoREVCVUcgJiYgdGFyZ2V0ID09PSB1bmRlZmluZWQpIHRocm93VHJhY2tlZFdpdGhFbXB0eUFyZ3VtZW50c0Vycm9yKCk7XG4gIGlmIChERUJVRyAmJiBkZXNjcmlwdG9yICYmIGRlc2NyaXB0b3IuZ2V0KSB0aHJvd1RyYWNrZWRDb21wdXRlZFByb3BlcnR5RXJyb3IoKTtcblxuICBpZiAoZGVzY3JpcHRvcikge1xuICAgIHJldHVybiBkZXNjcmlwdG9yRm9yRmllbGQodGFyZ2V0LCBrZXksIGRlc2NyaXB0b3IpO1xuICB9XG4gIC8vIEluIFR5cGVTY3JpcHQncyBpbXBsZW1lbnRhdGlvbiwgZGVjb3JhdG9ycyBvbiBzaW1wbGUgY2xhc3MgZmllbGRzIGRvIG5vdFxuICAvLyByZWNlaXZlIGEgZGVzY3JpcHRvciwgc28gd2UgZGVmaW5lIHRoZSBwcm9wZXJ0eSBvbiB0aGUgdGFyZ2V0IGRpcmVjdGx5LlxuICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBrZXksIGRlc2NyaXB0b3JGb3JGaWVsZCh0YXJnZXQsIGtleSkpO1xufTtcblxuZnVuY3Rpb24gdGhyb3dUcmFja2VkQ29tcHV0ZWRQcm9wZXJ0eUVycm9yKCk6IG5ldmVyIHtcbiAgdGhyb3cgbmV3IEVycm9yKFxuICAgIGBUaGUgQHRyYWNrZWQgZGVjb3JhdG9yIGRvZXMgbm90IG5lZWQgdG8gYmUgYXBwbGllZCB0byBnZXR0ZXJzLiBQcm9wZXJ0aWVzIGltcGxlbWVudGVkIHVzaW5nIGEgZ2V0dGVyIHdpbGwgcmVjb21wdXRlIGF1dG9tYXRpY2FsbHkgd2hlbiBhbnkgdHJhY2tlZCBwcm9wZXJ0aWVzIHRoZXkgYWNjZXNzIGNoYW5nZS5gXG4gICk7XG59XG5cbmZ1bmN0aW9uIHRocm93VHJhY2tlZFdpdGhBcmd1bWVudHNFcnJvcihhcmdzOiB1bmtub3duW10pOiBuZXZlciB7XG4gIHRocm93IG5ldyBFcnJvcihcbiAgICBgWW91IGF0dGVtcHRlZCB0byB1c2UgQHRyYWNrZWQgd2l0aCAke1xuICAgICAgYXJncy5sZW5ndGggPiAxID8gJ2FyZ3VtZW50cycgOiAnYW4gYXJndW1lbnQnXG4gICAgfSAoIEB0cmFja2VkKCR7YXJnc1xuICAgICAgLm1hcChkID0+IGAnJHtkfSdgKVxuICAgICAgLmpvaW4oXG4gICAgICAgICcsICdcbiAgICAgICl9KSApLCB3aGljaCBpcyBubyBsb25nZXIgbmVjZXNzYXJ5IG5vciBzdXBwb3J0ZWQuIERlcGVuZGVuY2llcyBhcmUgbm93IGF1dG9tYXRpY2FsbHkgdHJhY2tlZCwgc28geW91IGNhbiBqdXN0IHVzZSAkeydgQHRyYWNrZWRgJ30uYFxuICApO1xufVxuXG5mdW5jdGlvbiB0aHJvd1RyYWNrZWRXaXRoRW1wdHlBcmd1bWVudHNFcnJvcigpOiBuZXZlciB7XG4gIHRocm93IG5ldyBFcnJvcihcbiAgICAnWW91IGF0dGVtcHRlZCB0byB1c2UgQHRyYWNrZWQoKSwgd2hpY2ggaXMgbm8gbG9uZ2VyIG5lY2Vzc2FyeSBub3Igc3VwcG9ydGVkLiBSZW1vdmUgdGhlIHBhcmVudGhlc2VzIGFuZCB5b3Ugd2lsbCBiZSBnb29kIHRvIGdvISdcbiAgKTtcbn1cblxuLyoqXG4gKiBXaGVuZXZlciBhIHRyYWNrZWQgY29tcHV0ZWQgcHJvcGVydHkgaXMgZW50ZXJlZCwgdGhlIGN1cnJlbnQgdHJhY2tlciBpc1xuICogc2F2ZWQgb2ZmIGFuZCBhIG5ldyB0cmFja2VyIGlzIHJlcGxhY2VkLlxuICpcbiAqIEFueSB0cmFja2VkIHByb3BlcnRpZXMgY29uc3VtZWQgYXJlIGFkZGVkIHRvIHRoZSBjdXJyZW50IHRyYWNrZXIuXG4gKlxuICogV2hlbiBhIHRyYWNrZWQgY29tcHV0ZWQgcHJvcGVydHkgaXMgZXhpdGVkLCB0aGUgdHJhY2tlcidzIHRhZ3MgYXJlXG4gKiBjb21iaW5lZCBhbmQgYWRkZWQgdG8gdGhlIHBhcmVudCB0cmFja2VyLlxuICpcbiAqIFRoZSBjb25zZXF1ZW5jZSBpcyB0aGF0IGVhY2ggdHJhY2tlZCBjb21wdXRlZCBwcm9wZXJ0eSBoYXMgYSB0YWdcbiAqIHRoYXQgY29ycmVzcG9uZHMgdG8gdGhlIHRyYWNrZWQgcHJvcGVydGllcyBjb25zdW1lZCBpbnNpZGUgb2ZcbiAqIGl0c2VsZiwgaW5jbHVkaW5nIGNoaWxkIHRyYWNrZWQgY29tcHV0ZWQgcHJvcGVydGllcy5cbiAqL1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbnR5cGUgRGVjb3JhdG9yUHJvcGVydHlEZXNjcmlwdG9yID0gKFByb3BlcnR5RGVzY3JpcHRvciAmIHsgaW5pdGlhbGl6ZXI/OiBhbnkgfSkgfCB1bmRlZmluZWQ7XG5cbmZ1bmN0aW9uIGRlc2NyaXB0b3JGb3JGaWVsZDxUIGV4dGVuZHMgb2JqZWN0LCBLIGV4dGVuZHMga2V5b2YgVD4oXG4gIF90YXJnZXQ6IFQsXG4gIGtleTogSyxcbiAgZGVzYz86IERlY29yYXRvclByb3BlcnR5RGVzY3JpcHRvclxuKTogUHJvcGVydHlEZXNjcmlwdG9yIHtcbiAgaWYgKERFQlVHICYmIGRlc2MgJiYgKGRlc2MudmFsdWUgfHwgZGVzYy5nZXQgfHwgZGVzYy5zZXQpKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgYFlvdSBhdHRlbXB0ZWQgdG8gdXNlIEB0cmFja2VkIG9uICR7a2V5fSwgYnV0IHRoYXQgZWxlbWVudCBpcyBub3QgYSBjbGFzcyBmaWVsZC4gQHRyYWNrZWQgaXMgb25seSB1c2FibGUgb24gY2xhc3MgZmllbGRzLiBOYXRpdmUgZ2V0dGVycyBhbmQgc2V0dGVycyB3aWxsIGF1dG90cmFjayBhZGQgYW55IHRyYWNrZWQgZmllbGRzIHRoZXkgZW5jb3VudGVyLCBzbyB0aGVyZSBpcyBubyBuZWVkIG1hcmsgZ2V0dGVycyBhbmQgc2V0dGVycyB3aXRoIEB0cmFja2VkLmBcbiAgICApO1xuICB9XG5cbiAgY29uc3QgeyBnZXR0ZXIsIHNldHRlciB9ID0gdHJhY2tlZERhdGE8VCwgSz4oa2V5LCBkZXNjICYmIGRlc2MuaW5pdGlhbGl6ZXIpO1xuXG4gIHJldHVybiB7XG4gICAgZW51bWVyYWJsZTogdHJ1ZSxcbiAgICBjb25maWd1cmFibGU6IHRydWUsXG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgIGdldCh0aGlzOiBUKTogYW55IHtcbiAgICAgIHJldHVybiBnZXR0ZXIodGhpcyk7XG4gICAgfSxcblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgc2V0KHRoaXM6IFQsIG5ld1ZhbHVlOiBhbnkpOiB2b2lkIHtcbiAgICAgIHNldHRlcih0aGlzLCBuZXdWYWx1ZSk7XG4gICAgfSxcbiAgfTtcbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhY2tlZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BnbGltbWVyL3RyYWNraW5nL3NyYy90cmFja2VkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDckMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRWpEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBdURHO0FBQ0gsOERBQThEO0FBQzlELE1BQU0sQ0FBQyxNQUFNLE9BQU8sR0FBc0IsQ0FBQyxHQUFHLElBQVcsRUFBRSxFQUFFO0lBQzNELE1BQU0sQ0FBQyxNQUFNLEVBQUUsR0FBRyxFQUFFLFVBQVUsQ0FBQyxHQUFHLElBQUksQ0FBQztJQUV2Qyw0RUFBNEU7SUFDNUUsSUFBSSxLQUFLLElBQUksT0FBTyxNQUFNLEtBQUssUUFBUTtRQUFFLDhCQUE4QixDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzlFLElBQUksS0FBSyxJQUFJLE1BQU0sS0FBSyxTQUFTO1FBQUUsbUNBQW1DLEVBQUUsQ0FBQztJQUN6RSxJQUFJLEtBQUssSUFBSSxVQUFVLElBQUksVUFBVSxDQUFDLEdBQUc7UUFBRSxpQ0FBaUMsRUFBRSxDQUFDO0lBRS9FLElBQUksVUFBVSxFQUFFO1FBQ2QsT0FBTyxrQkFBa0IsQ0FBQyxNQUFNLEVBQUUsR0FBRyxFQUFFLFVBQVUsQ0FBQyxDQUFDO0tBQ3BEO0lBQ0QsMkVBQTJFO0lBQzNFLDBFQUEwRTtJQUMxRSxNQUFNLENBQUMsY0FBYyxDQUFDLE1BQU0sRUFBRSxHQUFHLEVBQUUsa0JBQWtCLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUM7QUFDdEUsQ0FBQyxDQUFDO0FBRUYsU0FBUyxpQ0FBaUM7SUFDeEMsTUFBTSxJQUFJLEtBQUssQ0FDYixtTEFBbUwsQ0FDcEwsQ0FBQztBQUNKLENBQUM7QUFFRCxTQUFTLDhCQUE4QixDQUFDLElBQWU7SUFDckQsTUFBTSxJQUFJLEtBQUssQ0FDYixzQ0FDRSxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxhQUNsQyxlQUFlLElBQUk7U0FDaEIsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDO1NBQ3BCLElBQUksQ0FDSCxJQUFJLENBQ0wsb0hBQW9ILFlBQVksR0FBRyxDQUN2SSxDQUFDO0FBQ0osQ0FBQztBQUVELFNBQVMsbUNBQW1DO0lBQzFDLE1BQU0sSUFBSSxLQUFLLENBQ2IsaUlBQWlJLENBQ2xJLENBQUM7QUFDSixDQUFDO0FBa0JELFNBQVMsa0JBQWtCLENBQ3pCLE9BQVUsRUFDVixHQUFNLEVBQ04sSUFBa0M7SUFFbEMsSUFBSSxLQUFLLElBQUksSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsR0FBRyxJQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRTtRQUN6RCxNQUFNLElBQUksS0FBSyxDQUNiLG9DQUFvQyxHQUFHLGdPQUFnTyxDQUN4USxDQUFDO0tBQ0g7SUFFRCxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxHQUFHLFdBQVcsQ0FBTyxHQUFHLEVBQUUsSUFBSSxJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUU1RSxPQUFPO1FBQ0wsVUFBVSxFQUFFLElBQUk7UUFDaEIsWUFBWSxFQUFFLElBQUk7UUFFbEIsOERBQThEO1FBQzlELEdBQUc7WUFDRCxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN0QixDQUFDO1FBRUQsOERBQThEO1FBQzlELEdBQUcsQ0FBVSxRQUFhO1lBQ3hCLE1BQU0sQ0FBQyxJQUFJLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDekIsQ0FBQztLQUNGLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgREVCVUcgfSBmcm9tICdAZ2xpbW1lci9lbnYnO1xuaW1wb3J0IHsgdHJhY2tlZERhdGEgfSBmcm9tICdAZ2xpbW1lci92YWxpZGF0b3InO1xuXG4vKipcbiAqIEBkZWNvcmF0b3JcbiAqXG4gKiBNYXJrcyBhIHByb3BlcnR5IGFzIHRyYWNrZWQuXG4gKlxuICogQnkgZGVmYXVsdCwgYSBjb21wb25lbnQncyBwcm9wZXJ0aWVzIGFyZSBleHBlY3RlZCB0byBiZSBzdGF0aWMsXG4gKiBtZWFuaW5nIHlvdSBhcmUgbm90IGFibGUgdG8gdXBkYXRlIHRoZW0gYW5kIGhhdmUgdGhlIHRlbXBsYXRlIHVwZGF0ZSBhY2NvcmRpbmdseS5cbiAqIE1hcmtpbmcgYSBwcm9wZXJ0eSBhcyB0cmFja2VkIG1lYW5zIHRoYXQgd2hlbiB0aGF0IHByb3BlcnR5IGNoYW5nZXMsXG4gKiBhIHJlcmVuZGVyIG9mIHRoZSBjb21wb25lbnQgaXMgc2NoZWR1bGVkIHNvIHRoZSB0ZW1wbGF0ZSBpcyBrZXB0IHVwIHRvIGRhdGUuXG4gKlxuICogQGV4YW1wbGVcbiAqXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBpbXBvcnQgQ29tcG9uZW50IGZyb20gJ0BnbGltbWVyL2NvbXBvbmVudCc7XG4gKiBpbXBvcnQgeyB0cmFja2VkIH0gZnJvbSAnQGdsaW1tZXIvdHJhY2tpbmcnO1xuICpcbiAqIGV4cG9ydCBkZWZhdWx0IGNsYXNzIE15Q29tcG9uZW50IGV4dGVuZHMgQ29tcG9uZW50IHtcbiAqICAgIEB0cmFja2VkXG4gKiAgICByZW1haW5pbmdBcHBsZXMgPSAxMFxuICogfVxuICogYGBgXG4gKlxuICogV2hlbiBzb21ldGhpbmcgY2hhbmdlcyB0aGUgY29tcG9uZW50J3MgYHJlbWFpbmluZ0FwcGxlc2AgcHJvcGVydHksIHRoZSByZXJlbmRlclxuICogd2lsbCBiZSBzY2hlZHVsZWQuXG4gKlxuICogQGV4YW1wbGUgQ29tcHV0ZWQgUHJvcGVydGllc1xuICpcbiAqIEluIHRoZSBjYXNlIHRoYXQgeW91IGhhdmUgYSBnZXR0ZXIgdGhhdCBkZXBlbmRzIG9uIG90aGVyIHByb3BlcnRpZXMsIHRyYWNrZWRcbiAqIHByb3BlcnRpZXMgYWNjZXNzZWQgd2l0aGluIHRoZSBnZXR0ZXIgd2lsbCBhdXRvbWF0aWNhbGx5IGJlIHRyYWNrZWQgZm9yIHlvdS5cbiAqIFRoYXQgbWVhbnMgd2hlbiBhbnkgb2YgdGhvc2UgZGVwZW5kZW50IHRyYWNrZWQgcHJvcGVydGllcyBpcyBjaGFuZ2VkLCBhXG4gKiByZXJlbmRlciBvZiB0aGUgY29tcG9uZW50IHdpbGwgYmUgc2NoZWR1bGVkLlxuICpcbiAqIEluIHRoZSBmb2xsb3dpbmcgZXhhbXBsZSB3ZSBoYXZlIHR3byBwcm9wZXJ0aWVzLFxuICogYGVhdGVuQXBwbGVzYCwgYW5kIGByZW1haW5pbmdBcHBsZXNgLlxuICpcbiAqXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBpbXBvcnQgQ29tcG9uZW50IGZyb20gJ0BnbGltbWVyL2NvbXBvbmVudCc7XG4gKiBpbXBvcnQgeyB0cmFja2VkIH0gZnJvbSAnQGdsaW1tZXIvdHJhY2tpbmcnO1xuICpcbiAqIGNvbnN0IHRvdGFsQXBwbGVzID0gMTAwO1xuICpcbiAqIGV4cG9ydCBkZWZhdWx0IGNsYXNzIE15Q29tcG9uZW50IGV4dGVuZHMgQ29tcG9uZW50IHtcbiAqICAgIEB0cmFja2VkXG4gKiAgICBlYXRlbkFwcGxlcyA9IDBcbiAqXG4gKiAgICBnZXQgcmVtYWluaW5nQXBwbGVzKCkge1xuICogICAgICByZXR1cm4gdG90YWxBcHBsZXMgLSB0aGlzLmVhdGVuQXBwbGVzO1xuICogICAgfVxuICpcbiAqICAgIGluY3JlbWVudCgpIHtcbiAqICAgICAgdGhpcy5lYXRlbkFwcGxlcyA9IHRoaXMuZWF0ZW5BcHBsZXMgKyAxO1xuICogICAgfVxuICogIH1cbiAqIGBgYFxuICovXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuZXhwb3J0IGNvbnN0IHRyYWNrZWQ6IFByb3BlcnR5RGVjb3JhdG9yID0gKC4uLmFyZ3M6IGFueVtdKSA9PiB7XG4gIGNvbnN0IFt0YXJnZXQsIGtleSwgZGVzY3JpcHRvcl0gPSBhcmdzO1xuXG4gIC8vIEVycm9yIG9uIGBAdHJhY2tlZCgpYCwgYEB0cmFja2VkKC4uLmFyZ3MpYCwgYW5kIGBAdHJhY2tlZCBnZXQgcHJvcE5hbWUoKWBcbiAgaWYgKERFQlVHICYmIHR5cGVvZiB0YXJnZXQgPT09ICdzdHJpbmcnKSB0aHJvd1RyYWNrZWRXaXRoQXJndW1lbnRzRXJyb3IoYXJncyk7XG4gIGlmIChERUJVRyAmJiB0YXJnZXQgPT09IHVuZGVmaW5lZCkgdGhyb3dUcmFja2VkV2l0aEVtcHR5QXJndW1lbnRzRXJyb3IoKTtcbiAgaWYgKERFQlVHICYmIGRlc2NyaXB0b3IgJiYgZGVzY3JpcHRvci5nZXQpIHRocm93VHJhY2tlZENvbXB1dGVkUHJvcGVydHlFcnJvcigpO1xuXG4gIGlmIChkZXNjcmlwdG9yKSB7XG4gICAgcmV0dXJuIGRlc2NyaXB0b3JGb3JGaWVsZCh0YXJnZXQsIGtleSwgZGVzY3JpcHRvcik7XG4gIH1cbiAgLy8gSW4gVHlwZVNjcmlwdCdzIGltcGxlbWVudGF0aW9uLCBkZWNvcmF0b3JzIG9uIHNpbXBsZSBjbGFzcyBmaWVsZHMgZG8gbm90XG4gIC8vIHJlY2VpdmUgYSBkZXNjcmlwdG9yLCBzbyB3ZSBkZWZpbmUgdGhlIHByb3BlcnR5IG9uIHRoZSB0YXJnZXQgZGlyZWN0bHkuXG4gIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIGtleSwgZGVzY3JpcHRvckZvckZpZWxkKHRhcmdldCwga2V5KSk7XG59O1xuXG5mdW5jdGlvbiB0aHJvd1RyYWNrZWRDb21wdXRlZFByb3BlcnR5RXJyb3IoKTogbmV2ZXIge1xuICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgYFRoZSBAdHJhY2tlZCBkZWNvcmF0b3IgZG9lcyBub3QgbmVlZCB0byBiZSBhcHBsaWVkIHRvIGdldHRlcnMuIFByb3BlcnRpZXMgaW1wbGVtZW50ZWQgdXNpbmcgYSBnZXR0ZXIgd2lsbCByZWNvbXB1dGUgYXV0b21hdGljYWxseSB3aGVuIGFueSB0cmFja2VkIHByb3BlcnRpZXMgdGhleSBhY2Nlc3MgY2hhbmdlLmBcbiAgKTtcbn1cblxuZnVuY3Rpb24gdGhyb3dUcmFja2VkV2l0aEFyZ3VtZW50c0Vycm9yKGFyZ3M6IHVua25vd25bXSk6IG5ldmVyIHtcbiAgdGhyb3cgbmV3IEVycm9yKFxuICAgIGBZb3UgYXR0ZW1wdGVkIHRvIHVzZSBAdHJhY2tlZCB3aXRoICR7XG4gICAgICBhcmdzLmxlbmd0aCA+IDEgPyAnYXJndW1lbnRzJyA6ICdhbiBhcmd1bWVudCdcbiAgICB9ICggQHRyYWNrZWQoJHthcmdzXG4gICAgICAubWFwKChkKSA9PiBgJyR7ZH0nYClcbiAgICAgIC5qb2luKFxuICAgICAgICAnLCAnXG4gICAgICApfSkgKSwgd2hpY2ggaXMgbm8gbG9uZ2VyIG5lY2Vzc2FyeSBub3Igc3VwcG9ydGVkLiBEZXBlbmRlbmNpZXMgYXJlIG5vdyBhdXRvbWF0aWNhbGx5IHRyYWNrZWQsIHNvIHlvdSBjYW4ganVzdCB1c2UgJHsnYEB0cmFja2VkYCd9LmBcbiAgKTtcbn1cblxuZnVuY3Rpb24gdGhyb3dUcmFja2VkV2l0aEVtcHR5QXJndW1lbnRzRXJyb3IoKTogbmV2ZXIge1xuICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgJ1lvdSBhdHRlbXB0ZWQgdG8gdXNlIEB0cmFja2VkKCksIHdoaWNoIGlzIG5vIGxvbmdlciBuZWNlc3Nhcnkgbm9yIHN1cHBvcnRlZC4gUmVtb3ZlIHRoZSBwYXJlbnRoZXNlcyBhbmQgeW91IHdpbGwgYmUgZ29vZCB0byBnbyEnXG4gICk7XG59XG5cbi8qKlxuICogV2hlbmV2ZXIgYSB0cmFja2VkIGNvbXB1dGVkIHByb3BlcnR5IGlzIGVudGVyZWQsIHRoZSBjdXJyZW50IHRyYWNrZXIgaXNcbiAqIHNhdmVkIG9mZiBhbmQgYSBuZXcgdHJhY2tlciBpcyByZXBsYWNlZC5cbiAqXG4gKiBBbnkgdHJhY2tlZCBwcm9wZXJ0aWVzIGNvbnN1bWVkIGFyZSBhZGRlZCB0byB0aGUgY3VycmVudCB0cmFja2VyLlxuICpcbiAqIFdoZW4gYSB0cmFja2VkIGNvbXB1dGVkIHByb3BlcnR5IGlzIGV4aXRlZCwgdGhlIHRyYWNrZXIncyB0YWdzIGFyZVxuICogY29tYmluZWQgYW5kIGFkZGVkIHRvIHRoZSBwYXJlbnQgdHJhY2tlci5cbiAqXG4gKiBUaGUgY29uc2VxdWVuY2UgaXMgdGhhdCBlYWNoIHRyYWNrZWQgY29tcHV0ZWQgcHJvcGVydHkgaGFzIGEgdGFnXG4gKiB0aGF0IGNvcnJlc3BvbmRzIHRvIHRoZSB0cmFja2VkIHByb3BlcnRpZXMgY29uc3VtZWQgaW5zaWRlIG9mXG4gKiBpdHNlbGYsIGluY2x1ZGluZyBjaGlsZCB0cmFja2VkIGNvbXB1dGVkIHByb3BlcnRpZXMuXG4gKi9cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG50eXBlIERlY29yYXRvclByb3BlcnR5RGVzY3JpcHRvciA9IChQcm9wZXJ0eURlc2NyaXB0b3IgJiB7IGluaXRpYWxpemVyPzogYW55IH0pIHwgdW5kZWZpbmVkO1xuXG5mdW5jdGlvbiBkZXNjcmlwdG9yRm9yRmllbGQ8VCBleHRlbmRzIG9iamVjdCwgSyBleHRlbmRzIGtleW9mIFQ+KFxuICBfdGFyZ2V0OiBULFxuICBrZXk6IEssXG4gIGRlc2M/OiBEZWNvcmF0b3JQcm9wZXJ0eURlc2NyaXB0b3Jcbik6IFByb3BlcnR5RGVzY3JpcHRvciB7XG4gIGlmIChERUJVRyAmJiBkZXNjICYmIChkZXNjLnZhbHVlIHx8IGRlc2MuZ2V0IHx8IGRlc2Muc2V0KSkge1xuICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgIGBZb3UgYXR0ZW1wdGVkIHRvIHVzZSBAdHJhY2tlZCBvbiAke2tleX0sIGJ1dCB0aGF0IGVsZW1lbnQgaXMgbm90IGEgY2xhc3MgZmllbGQuIEB0cmFja2VkIGlzIG9ubHkgdXNhYmxlIG9uIGNsYXNzIGZpZWxkcy4gTmF0aXZlIGdldHRlcnMgYW5kIHNldHRlcnMgd2lsbCBhdXRvdHJhY2sgYWRkIGFueSB0cmFja2VkIGZpZWxkcyB0aGV5IGVuY291bnRlciwgc28gdGhlcmUgaXMgbm8gbmVlZCBtYXJrIGdldHRlcnMgYW5kIHNldHRlcnMgd2l0aCBAdHJhY2tlZC5gXG4gICAgKTtcbiAgfVxuXG4gIGNvbnN0IHsgZ2V0dGVyLCBzZXR0ZXIgfSA9IHRyYWNrZWREYXRhPFQsIEs+KGtleSwgZGVzYyAmJiBkZXNjLmluaXRpYWxpemVyKTtcblxuICByZXR1cm4ge1xuICAgIGVudW1lcmFibGU6IHRydWUsXG4gICAgY29uZmlndXJhYmxlOiB0cnVlLFxuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICBnZXQodGhpczogVCk6IGFueSB7XG4gICAgICByZXR1cm4gZ2V0dGVyKHRoaXMpO1xuICAgIH0sXG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAgIHNldCh0aGlzOiBULCBuZXdWYWx1ZTogYW55KTogdm9pZCB7XG4gICAgICBzZXR0ZXIodGhpcywgbmV3VmFsdWUpO1xuICAgIH0sXG4gIH07XG59XG4iXX0=

@@ -15,3 +15,3 @@ /* tslint:disable:no-unused-expression */

module(`[@glimmer/tracking] Tracked Property Decorators with ${compiler}`);
test('tracked properties can be read and written to', assert => {
test('tracked properties can be read and written to', (assert) => {
const obj = new F.Tom();

@@ -22,3 +22,3 @@ assert.strictEqual(obj.firstName, 'Tom');

});
test('can request a tag for a property', assert => {
test('can request a tag for a property', (assert) => {
const obj = new F.Tom();

@@ -37,3 +37,3 @@ assert.strictEqual(obj.firstName, 'Tom');

});
test('can request a tag from a frozen class instance', assert => {
test('can request a tag from a frozen class instance', (assert) => {
const obj = Object.freeze(new F.Toran());

@@ -60,3 +60,3 @@ assert.strictEqual(obj.firstName, 'Toran');

});
test('can request a tag from an instance of a frozen class', assert => {
test('can request a tag from an instance of a frozen class', (assert) => {
const obj = Object.freeze(new F.FrozenToran());

@@ -73,3 +73,3 @@ assert.strictEqual(obj.firstName, 'Toran');

});
test('can track a getter', assert => {
test('can track a getter', (assert) => {
const obj = new F.PersonWithCount();

@@ -90,3 +90,3 @@ assert.strictEqual(obj.firstName, 'Tom0');

});
test('getters are invalidated when their dependencies are invalidated', assert => {
test('getters are invalidated when their dependencies are invalidated', (assert) => {
const obj = new F.PersonWithSalutation();

@@ -117,3 +117,3 @@ assert.strictEqual(obj.salutation, 'Hello, Tom Dale!', `the saluation field is valid`);

});
test('nested @tracked in multiple objects', assert => {
test('nested @tracked in multiple objects', (assert) => {
const obj = new F.Contact(new F.PersonForContact(), 'tom@example.com');

@@ -154,6 +154,6 @@ assert.strictEqual(obj.contact, 'Tom Dale @ tom@example.com', `the contact field is valid`);

if (DEBUG) {
test('Tracked decorator with a getter throws an error', assert => {
test('Tracked decorator with a getter throws an error', (assert) => {
assert.throws(F.createClassWithTrackedGetter);
});
test('Tracked decorator with a setter throws an error', assert => {
test('Tracked decorator with a setter throws an error', (assert) => {
assert.throws(F.createClassWithTrackedSetter);

@@ -169,2 +169,2 @@ });

});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhY2tlZC1kZWNvcmF0b3ItdGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BnbGltbWVyL3RyYWNraW5nL3Rlc3QvdHJhY2tlZC1kZWNvcmF0b3ItdGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx5Q0FBeUM7QUFDekMsTUFBTSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsR0FBRyxLQUFLLENBQUM7QUFFL0IsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUNyQyxPQUFPLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVyRSxPQUFPLEtBQUssVUFBVSxNQUFNLHVCQUF1QixDQUFDO0FBQ3BELDREQUE0RDtBQUM1RCxhQUFhO0FBQ2IsT0FBTyxLQUFLLGFBQWEsTUFBTSxrQkFBa0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUvRDtJQUNFLENBQUMsT0FBTyxFQUFFLGFBQWEsQ0FBQztJQUN4QixDQUFDLFlBQVksRUFBRSxVQUFVLENBQUM7Q0FDM0IsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFO0lBQzFCLE1BQU0sQ0FBQyx3REFBd0QsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUUzRSxJQUFJLENBQUMsK0NBQStDLEVBQUUsTUFBTSxDQUFDLEVBQUU7UUFDN0QsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDeEIsTUFBTSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3pDLEdBQUcsQ0FBQyxTQUFTLEdBQUcsUUFBUSxDQUFDO1FBQ3pCLE1BQU0sQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxRQUFRLENB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QixDQUFDLENBQUM7UUFFL0QsUUFBUSxHQUFHLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUM1QixNQUFNLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxHQUFHLEVBQUUsUUFBUSxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFFckQsNkJBQTZCLENBQUMsR0FBRyxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQy9DLENBQUMsQ0FBQyxDQUFDO0lBRUgsSUFBSSxLQUFLLEVBQUU7UUFDVCxJQUFJLENBQUMsaURBQWlELEVBQUUsTUFBTSxDQUFDLEVBQUU7WUFDL0QsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsNEJBQTRCLENBQUMsQ0FBQztRQUNoRCxDQUFDLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxpREFBaUQsRUFBRSxNQUFNLENBQUMsRUFBRTtZQUMvRCxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO1FBQ2hELENBQUMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLGtEQUFrRCxFQUFFLFVBQVMsTUFBTTtZQUN0RSxNQUFNLENBQUMsTUFBTSxDQUNYLENBQUMsQ0FBQyxtQ0FBbUMsRUFDckMscUNBQXFDLEVBQ3JDLDZCQUE2QixDQUM5QixDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsdURBQXVELEVBQUUsVUFBUyxNQUFNO1lBQzNFLE1BQU0sQ0FBQyxNQUFNLENBQ1gsQ0FBQyxDQUFDLHdDQUF3QyxFQUMxQyxjQUFjLEVBQ2QsNkJBQTZCLENBQzlCLENBQUM7UUFDSixDQUFDLENBQUMsQ0FBQztLQUNKO0FBQ0gsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiB0c2xpbnQ6ZGlzYWJsZTpuby11bnVzZWQtZXhwcmVzc2lvbiAqL1xuY29uc3QgeyBtb2R1bGUsIHRlc3QgfSA9IFFVbml0O1xuXG5pbXBvcnQgeyBERUJVRyB9IGZyb20gJ0BnbGltbWVyL2Vudic7XG5pbXBvcnQgeyB0cmFjaywgdmFsdWVGb3JUYWcsIHZhbGlkYXRlVGFnIH0gZnJvbSAnQGdsaW1tZXIvdmFsaWRhdG9yJztcblxuaW1wb3J0ICogYXMgVFNGaXh0dXJlcyBmcm9tICcuL2ZpeHR1cmVzL3R5cGVzY3JpcHQnO1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9iYW4tdHMtaWdub3JlXG4vLyBAdHMtaWdub3JlXG5pbXBvcnQgKiBhcyBCYWJlbEZpeHR1cmVzIGZyb20gJy4vZml4dHVyZXMvYmFiZWwnO1xuaW1wb3J0IHsgYXNzZXJ0VmFsaWRBZnRlclVucmVsYXRlZEJ1bXAgfSBmcm9tICcuL2hlbHBlcnMvdGFncyc7XG5cbltcbiAgWydCYWJlbCcsIEJhYmVsRml4dHVyZXNdLFxuICBbJ1R5cGVTY3JpcHQnLCBUU0ZpeHR1cmVzXSxcbl0uZm9yRWFjaCgoW2NvbXBpbGVyLCBGXSkgPT4ge1xuICBtb2R1bGUoYFtAZ2xpbW1lci90cmFja2luZ10gVHJhY2tlZCBQcm9wZXJ0eSBEZWNvcmF0b3JzIHdpdGggJHtjb21waWxlcn1gKTtcblxuICB0ZXN0KCd0cmFja2VkIHByb3BlcnRpZXMgY2FuIGJlIHJlYWQgYW5kIHdyaXR0ZW4gdG8nLCBhc3NlcnQgPT4ge1xuICAgIGNvbnN0IG9iaiA9IG5ldyBGLlRvbSgpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChvYmouZmlyc3ROYW1lLCAnVG9tJyk7XG4gICAgb2JqLmZpcnN0TmFtZSA9ICdFZHNnZXInO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChvYmouZmlyc3ROYW1lLCAnRWRzZ2VyJyk7XG4gIH0pO1xuXG4gIHRlc3QoJ2NhbiByZXF1ZXN0IGEgdGFnIGZvciBhIHByb3BlcnR5JywgYXNzZXJ0ID0+IHtcbiAgICBjb25zdCBvYmogPSBuZXcgRi5Ub20oKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwob2JqLmZpcnN0TmFtZSwgJ1RvbScpO1xuXG4gICAgY29uc3QgdGFnID0gdHJhY2soKCkgPT4ge1xuICAgICAgb2JqLmZpcnN0TmFtZTtcbiAgICB9KTtcbiAgICBsZXQgc25hcHNob3QgPSB2YWx1ZUZvclRhZyh0YWcpO1xuICAgIGFzc2VydC5vayh2YWxpZGF0ZVRhZyh0YWcsIHNuYXBzaG90KSwgJ3RhZyBzaG91bGQgYmUgdmFsaWQgdG8gc3RhcnQnKTtcblxuICAgIG9iai5maXJzdE5hbWUgPSAnRWRzZ2VyJztcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwodmFsaWRhdGVUYWcodGFnLCBzbmFwc2hvdCksIGZhbHNlLCAndGFnIGlzIGludmFsaWRhdGVkIGFmdGVyIHByb3BlcnR5IGlzIHNldCcpO1xuICAgIHNuYXBzaG90ID0gdmFsdWVGb3JUYWcodGFnKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwodmFsaWRhdGVUYWcodGFnLCBzbmFwc2hvdCksIHRydWUsICd0YWcgaXMgdmFsaWQgb24gdGhlIHNlY29uZCBjaGVjaycpO1xuXG4gICAgYXNzZXJ0VmFsaWRBZnRlclVucmVsYXRlZEJ1bXAodGFnLCBzbmFwc2hvdCk7XG4gIH0pO1xuXG4gIHRlc3QoJ2NhbiByZXF1ZXN0IGEgdGFnIGZyb20gYSBmcm96ZW4gY2xhc3MgaW5zdGFuY2UnLCBhc3NlcnQgPT4ge1xuICAgIGNvbnN0IG9iaiA9IE9iamVjdC5mcmVlemUobmV3IEYuVG9yYW4oKSk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKG9iai5maXJzdE5hbWUsICdUb3JhbicpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChvYmoubGFzdE5hbWUsICdCaWxsdXBzJyk7XG5cbiAgICAvLyBFeHBsaWNpdGx5IGFubm90YXRlZCB0cmFja2VkIHByb3BlcnRpZXNcbiAgICBsZXQgdGFnID0gdHJhY2soKCkgPT4ge1xuICAgICAgb2JqLmZpcnN0TmFtZTtcbiAgICB9KTtcbiAgICBsZXQgc25hcHNob3QgPSB2YWx1ZUZvclRhZyh0YWcpO1xuICAgIGFzc2VydC5vayh2YWxpZGF0ZVRhZyh0YWcsIHNuYXBzaG90KSwgJ3RhZyBzaG91bGQgYmUgdmFsaWQgdG8gc3RhcnQnKTtcbiAgICBzbmFwc2hvdCA9IHZhbHVlRm9yVGFnKHRhZyk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKHZhbGlkYXRlVGFnKHRhZywgc25hcHNob3QpLCB0cnVlLCAndGFnIGlzIHN0aWxsIHZhbGlkJyk7XG5cbiAgICAvLyBOb24tdHJhY2tlZCBkYXRhIHByb3BlcnRpZXNcbiAgICB0YWcgPSB0cmFjaygoKSA9PiB7XG4gICAgICBvYmoubGFzdE5hbWU7XG4gICAgfSk7XG4gICAgc25hcHNob3QgPSB2YWx1ZUZvclRhZyh0YWcpO1xuICAgIGFzc2VydC5vayh2YWxpZGF0ZVRhZyh0YWcsIHNuYXBzaG90KSwgJ3RhZyBzaG91bGQgYmUgdmFsaWQgdG8gc3RhcnQnKTtcbiAgICBzbmFwc2hvdCA9IHZhbHVlRm9yVGFnKHRhZyk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKHZhbGlkYXRlVGFnKHRhZywgc25hcHNob3QpLCB0cnVlLCAndGFnIGlzIHN0aWxsIHZhbGlkJyk7XG5cbiAgICBhc3NlcnRWYWxpZEFmdGVyVW5yZWxhdGVkQnVtcCh0YWcsIHNuYXBzaG90KTtcbiAgfSk7XG5cbiAgdGVzdCgnY2FuIHJlcXVlc3QgYSB0YWcgZnJvbSBhbiBpbnN0YW5jZSBvZiBhIGZyb3plbiBjbGFzcycsIGFzc2VydCA9PiB7XG4gICAgY29uc3Qgb2JqID0gT2JqZWN0LmZyZWV6ZShuZXcgRi5Gcm96ZW5Ub3JhbigpKTtcblxuICAgIGFzc2VydC5zdHJpY3RFcXVhbChvYmouZmlyc3ROYW1lLCAnVG9yYW4nKTtcblxuICAgIGNvbnN0IHRhZyA9IHRyYWNrKCgpID0+IHtcbiAgICAgIG9iai5maXJzdE5hbWU7XG4gICAgfSk7XG4gICAgbGV0IHNuYXBzaG90ID0gdmFsdWVGb3JUYWcodGFnKTtcbiAgICBhc3NlcnQub2sodmFsaWRhdGVUYWcodGFnLCBzbmFwc2hvdCksICd0YWcgc2hvdWxkIGJlIHZhbGlkIHRvIHN0YXJ0Jyk7XG4gICAgc25hcHNob3QgPSB2YWx1ZUZvclRhZyh0YWcpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbCh2YWxpZGF0ZVRhZyh0YWcsIHNuYXBzaG90KSwgdHJ1ZSwgJ3RhZyBpcyBzdGlsbCB2YWxpZCcpO1xuXG4gICAgYXNzZXJ0VmFsaWRBZnRlclVucmVsYXRlZEJ1bXAodGFnLCBzbmFwc2hvdCk7XG4gIH0pO1xuXG4gIHRlc3QoJ2NhbiB0cmFjayBhIGdldHRlcicsIGFzc2VydCA9PiB7XG4gICAgY29uc3Qgb2JqID0gbmV3IEYuUGVyc29uV2l0aENvdW50KCk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKG9iai5maXJzdE5hbWUsICdUb20wJyk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKG9iai5maXJzdE5hbWUsICdUb20xJyk7XG5cbiAgICBjb25zdCB0YWcgPSB0cmFjaygoKSA9PiB7XG4gICAgICBvYmouZmlyc3ROYW1lO1xuICAgIH0pO1xuICAgIGxldCBzbmFwc2hvdCA9IHZhbHVlRm9yVGFnKHRhZyk7XG4gICAgYXNzZXJ0Lm9rKHZhbGlkYXRlVGFnKHRhZywgc25hcHNob3QpLCAndGFnIHNob3VsZCBiZSB2YWxpZCB0byBzdGFydCcpO1xuXG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKG9iai5maXJzdE5hbWUsICdUb20zJyk7XG4gICAgYXNzZXJ0Lm9rKHZhbGlkYXRlVGFnKHRhZywgc25hcHNob3QpLCAncmVhZGluZyBmcm9tIHByb3BlcnR5IGRvZXMgbm90IGludmFsaWRhdGUgdGhlIHRhZycpO1xuXG4gICAgb2JqLmZpcnN0TmFtZSA9ICdFZHNnZXInO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbCh2YWxpZGF0ZVRhZyh0YWcsIHNuYXBzaG90KSwgZmFsc2UsICd0YWcgaXMgaW52YWxpZGF0ZWQgYWZ0ZXIgcHJvcGVydHkgaXMgc2V0Jyk7XG4gICAgc25hcHNob3QgPSB2YWx1ZUZvclRhZyh0YWcpO1xuXG4gICAgYXNzZXJ0VmFsaWRBZnRlclVucmVsYXRlZEJ1bXAodGFnLCBzbmFwc2hvdCk7XG4gIH0pO1xuXG4gIHRlc3QoJ2dldHRlcnMgYXJlIGludmFsaWRhdGVkIHdoZW4gdGhlaXIgZGVwZW5kZW5jaWVzIGFyZSBpbnZhbGlkYXRlZCcsIGFzc2VydCA9PiB7XG4gICAgY29uc3Qgb2JqID0gbmV3IEYuUGVyc29uV2l0aFNhbHV0YXRpb24oKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwob2JqLnNhbHV0YXRpb24sICdIZWxsbywgVG9tIERhbGUhJywgYHRoZSBzYWx1YXRpb24gZmllbGQgaXMgdmFsaWRgKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwob2JqLmZ1bGxOYW1lLCAnVG9tIERhbGUnLCBgdGhlIGZ1bGxOYW1lIGZpZWxkIGlzIHZhbGlkYCk7XG5cbiAgICBjb25zdCB0YWcgPSB0cmFjaygoKSA9PiB7XG4gICAgICBvYmouc2FsdXRhdGlvbjtcbiAgICB9KTtcbiAgICBsZXQgc25hcHNob3QgPSB2YWx1ZUZvclRhZyh0YWcpO1xuICAgIGFzc2VydC5vayh2YWxpZGF0ZVRhZyh0YWcsIHNuYXBzaG90KSwgJ3RhZyBzaG91bGQgYmUgdmFsaWQgdG8gc3RhcnQnKTtcblxuICAgIG9iai5maXJzdE5hbWUgPSAnRWRzZ2VyJztcbiAgICBvYmoubGFzdE5hbWUgPSAnRGlqa3N0cmEnO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChcbiAgICAgIHZhbGlkYXRlVGFnKHRhZywgc25hcHNob3QpLFxuICAgICAgZmFsc2UsXG4gICAgICAndGFnIGlzIGludmFsaWRhdGVkIGFmdGVyIGNoYWluZWQgZGVwZW5kZW5jeSBpcyBzZXQnXG4gICAgKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwob2JqLmZ1bGxOYW1lLCAnRWRzZ2VyIERpamtzdHJhJyk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKG9iai5zYWx1dGF0aW9uLCAnSGVsbG8sIEVkc2dlciBEaWprc3RyYSEnKTtcblxuICAgIHNuYXBzaG90ID0gdmFsdWVGb3JUYWcodGFnKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwodmFsaWRhdGVUYWcodGFnLCBzbmFwc2hvdCksIHRydWUpO1xuXG4gICAgb2JqLmZ1bGxOYW1lID0gJ0FsYW4gS2F5JztcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwoXG4gICAgICB2YWxpZGF0ZVRhZyh0YWcsIHNuYXBzaG90KSxcbiAgICAgIGZhbHNlLFxuICAgICAgJ3RhZyBpcyBpbnZhbGlkYXRlZCBhZnRlciBjaGFpbmVkIGRlcGVuZGVuY3kgaXMgc2V0J1xuICAgICk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKG9iai5mdWxsTmFtZSwgJ0FsYW4gS2F5Jyk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKG9iai5maXJzdE5hbWUsICdBbGFuJyk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKG9iai5sYXN0TmFtZSwgJ0theScpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChvYmouc2FsdXRhdGlvbiwgJ0hlbGxvLCBBbGFuIEtheSEnKTtcblxuICAgIHNuYXBzaG90ID0gdmFsdWVGb3JUYWcodGFnKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwodmFsaWRhdGVUYWcodGFnLCBzbmFwc2hvdCksIHRydWUpO1xuXG4gICAgYXNzZXJ0VmFsaWRBZnRlclVucmVsYXRlZEJ1bXAodGFnLCBzbmFwc2hvdCk7XG4gIH0pO1xuXG4gIHRlc3QoJ25lc3RlZCBAdHJhY2tlZCBpbiBtdWx0aXBsZSBvYmplY3RzJywgYXNzZXJ0ID0+IHtcbiAgICBjb25zdCBvYmogPSBuZXcgRi5Db250YWN0KG5ldyBGLlBlcnNvbkZvckNvbnRhY3QoKSwgJ3RvbUBleGFtcGxlLmNvbScpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChvYmouY29udGFjdCwgJ1RvbSBEYWxlIEAgdG9tQGV4YW1wbGUuY29tJywgYHRoZSBjb250YWN0IGZpZWxkIGlzIHZhbGlkYCk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKG9iai5wZXJzb24uZnVsbE5hbWUsICdUb20gRGFsZScsIGB0aGUgZnVsbE5hbWUgZmllbGQgaXMgdmFsaWRgKTtcbiAgICBjb25zdCBwZXJzb24gPSBvYmoucGVyc29uO1xuXG4gICAgY29uc3QgdGFnID0gdHJhY2soKCkgPT4ge1xuICAgICAgb2JqLmNvbnRhY3Q7XG4gICAgfSk7XG4gICAgbGV0IHNuYXBzaG90ID0gdmFsdWVGb3JUYWcodGFnKTtcbiAgICBhc3NlcnQub2sodmFsaWRhdGVUYWcodGFnLCBzbmFwc2hvdCksICd0YWcgc2hvdWxkIGJlIHZhbGlkIHRvIHN0YXJ0Jyk7XG5cbiAgICBwZXJzb24uZmlyc3ROYW1lID0gJ0Vkc2dlcic7XG4gICAgcGVyc29uLmxhc3ROYW1lID0gJ0RpamtzdHJhJztcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwoXG4gICAgICB2YWxpZGF0ZVRhZyh0YWcsIHNuYXBzaG90KSxcbiAgICAgIGZhbHNlLFxuICAgICAgJ3RhZyBpcyBpbnZhbGlkYXRlZCBhZnRlciBuZXN0ZWQgZGVwZW5kZW5jeSBpcyBzZXQnXG4gICAgKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwocGVyc29uLmZ1bGxOYW1lLCAnRWRzZ2VyIERpamtzdHJhJyk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKG9iai5jb250YWN0LCAnRWRzZ2VyIERpamtzdHJhIEAgdG9tQGV4YW1wbGUuY29tJyk7XG5cbiAgICBzbmFwc2hvdCA9IHZhbHVlRm9yVGFnKHRhZyk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKHZhbGlkYXRlVGFnKHRhZywgc25hcHNob3QpLCB0cnVlKTtcblxuICAgIHBlcnNvbi5mdWxsTmFtZSA9ICdBbGFuIEtheSc7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKFxuICAgICAgdmFsaWRhdGVUYWcodGFnLCBzbmFwc2hvdCksXG4gICAgICBmYWxzZSxcbiAgICAgICd0YWcgaXMgaW52YWxpZGF0ZWQgYWZ0ZXIgY2hhaW5lZCBkZXBlbmRlbmN5IGlzIHNldCdcbiAgICApO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChwZXJzb24uZnVsbE5hbWUsICdBbGFuIEtheScpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChwZXJzb24uZmlyc3ROYW1lLCAnQWxhbicpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChwZXJzb24ubGFzdE5hbWUsICdLYXknKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwob2JqLmNvbnRhY3QsICdBbGFuIEtheSBAIHRvbUBleGFtcGxlLmNvbScpO1xuXG4gICAgc25hcHNob3QgPSB2YWx1ZUZvclRhZyh0YWcpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbCh2YWxpZGF0ZVRhZyh0YWcsIHNuYXBzaG90KSwgdHJ1ZSk7XG5cbiAgICBvYmouZW1haWwgPSAnYWxhbkBleGFtcGxlLmNvbSc7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKFxuICAgICAgdmFsaWRhdGVUYWcodGFnLCBzbmFwc2hvdCksXG4gICAgICBmYWxzZSxcbiAgICAgICd0YWcgaXMgaW52YWxpZGF0ZWQgYWZ0ZXIgY2hhaW5lZCBkZXBlbmRlbmN5IGlzIHNldCdcbiAgICApO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChwZXJzb24uZnVsbE5hbWUsICdBbGFuIEtheScpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChwZXJzb24uZmlyc3ROYW1lLCAnQWxhbicpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChwZXJzb24ubGFzdE5hbWUsICdLYXknKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwob2JqLmNvbnRhY3QsICdBbGFuIEtheSBAIGFsYW5AZXhhbXBsZS5jb20nKTtcblxuICAgIHNuYXBzaG90ID0gdmFsdWVGb3JUYWcodGFnKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwodmFsaWRhdGVUYWcodGFnLCBzbmFwc2hvdCksIHRydWUpO1xuXG4gICAgYXNzZXJ0VmFsaWRBZnRlclVucmVsYXRlZEJ1bXAodGFnLCBzbmFwc2hvdCk7XG4gIH0pO1xuXG4gIGlmIChERUJVRykge1xuICAgIHRlc3QoJ1RyYWNrZWQgZGVjb3JhdG9yIHdpdGggYSBnZXR0ZXIgdGhyb3dzIGFuIGVycm9yJywgYXNzZXJ0ID0+IHtcbiAgICAgIGFzc2VydC50aHJvd3MoRi5jcmVhdGVDbGFzc1dpdGhUcmFja2VkR2V0dGVyKTtcbiAgICB9KTtcblxuICAgIHRlc3QoJ1RyYWNrZWQgZGVjb3JhdG9yIHdpdGggYSBzZXR0ZXIgdGhyb3dzIGFuIGVycm9yJywgYXNzZXJ0ID0+IHtcbiAgICAgIGFzc2VydC50aHJvd3MoRi5jcmVhdGVDbGFzc1dpdGhUcmFja2VkU2V0dGVyKTtcbiAgICB9KTtcblxuICAgIHRlc3QoJ1RyYWNrZWQgZGVjb3JhdG9yIHdpdGggYXJndW1lbnRzIHRocm93cyBhbiBlcnJvcicsIGZ1bmN0aW9uKGFzc2VydCkge1xuICAgICAgYXNzZXJ0LnRocm93cyhcbiAgICAgICAgRi5jcmVhdGVDbGFzc1dpdGhUcmFja2VkRGVwZW5kZW50S2V5cyxcbiAgICAgICAgL0B0cmFja2VkXFwoJ2ZpcnN0TmFtZScsICdsYXN0TmFtZSdcXCkvLFxuICAgICAgICAndGhlIGNvcnJlY3QgZXJyb3IgaXMgdGhyb3duJ1xuICAgICAgKTtcbiAgICB9KTtcblxuICAgIHRlc3QoJ1VzaW5nIEB0cmFja2VkIGFzIGEgZGVjb3JhdG9yIGZhY3RvcnkgdGhyb3dzIGFuIGVycm9yJywgZnVuY3Rpb24oYXNzZXJ0KSB7XG4gICAgICBhc3NlcnQudGhyb3dzKFxuICAgICAgICBGLmNyZWF0ZUNsYXNzV2l0aFRyYWNrZWRBc0RlY29yYXRvckZhY3RvcnksXG4gICAgICAgIC9AdHJhY2tlZFxcKFxcKS8sXG4gICAgICAgICdUaGUgY29ycmVjdCBlcnJvciBpcyB0aHJvd24nXG4gICAgICApO1xuICAgIH0pO1xuICB9XG59KTtcbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhY2tlZC1kZWNvcmF0b3ItdGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BnbGltbWVyL3RyYWNraW5nL3Rlc3QvdHJhY2tlZC1kZWNvcmF0b3ItdGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx5Q0FBeUM7QUFDekMsTUFBTSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsR0FBRyxLQUFLLENBQUM7QUFFL0IsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUNyQyxPQUFPLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVyRSxPQUFPLEtBQUssVUFBVSxNQUFNLHVCQUF1QixDQUFDO0FBQ3BELDREQUE0RDtBQUM1RCxhQUFhO0FBQ2IsT0FBTyxLQUFLLGFBQWEsTUFBTSxrQkFBa0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUvRDtJQUNFLENBQUMsT0FBTyxFQUFFLGFBQWEsQ0FBQztJQUN4QixDQUFDLFlBQVksRUFBRSxVQUFVLENBQUM7Q0FDM0IsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFO0lBQzFCLE1BQU0sQ0FBQyx3REFBd0QsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUUzRSxJQUFJLENBQUMsK0NBQStDLEVBQUUsQ0FBQyxNQUFNLEVBQUUsRUFBRTtRQUMvRCxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUN4QixNQUFNLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxTQUFTLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDekMsR0FBRyxDQUFDLFNBQVMsR0FBRyxRQUFRLENBQUM7UUFDekIsTUFBTSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsU0FBUyxFQUFFLFFB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QUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsT0FBTyxFQUFFLDZCQUE2QixDQUFDLENBQUM7UUFFL0QsUUFBUSxHQUFHLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUM1QixNQUFNLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxHQUFHLEVBQUUsUUFBUSxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFFckQsNkJBQTZCLENBQUMsR0FBRyxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQy9DLENBQUMsQ0FBQyxDQUFDO0lBRUgsSUFBSSxLQUFLLEVBQUU7UUFDVCxJQUFJLENBQUMsaURBQWlELEVBQUUsQ0FBQyxNQUFNLEVBQUUsRUFBRTtZQUNqRSxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO1FBQ2hELENBQUMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLGlEQUFpRCxFQUFFLENBQUMsTUFBTSxFQUFFLEVBQUU7WUFDakUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsNEJBQTRCLENBQUMsQ0FBQztRQUNoRCxDQUFDLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxrREFBa0QsRUFBRSxVQUFVLE1BQU07WUFDdkUsTUFBTSxDQUFDLE1BQU0sQ0FDWCxDQUFDLENBQUMsbUNBQW1DLEVBQ3JDLHFDQUFxQyxFQUNyQyw2QkFBNkIsQ0FDOUIsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLHVEQUF1RCxFQUFFLFVBQVUsTUFBTTtZQUM1RSxNQUFNLENBQUMsTUFBTSxDQUNYLENBQUMsQ0FBQyx3Q0FBd0MsRUFDMUMsY0FBYyxFQUNkLDZCQUE2QixDQUM5QixDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7S0FDSjtBQUNILENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyogdHNsaW50OmRpc2FibGU6bm8tdW51c2VkLWV4cHJlc3Npb24gKi9cbmNvbnN0IHsgbW9kdWxlLCB0ZXN0IH0gPSBRVW5pdDtcblxuaW1wb3J0IHsgREVCVUcgfSBmcm9tICdAZ2xpbW1lci9lbnYnO1xuaW1wb3J0IHsgdHJhY2ssIHZhbHVlRm9yVGFnLCB2YWxpZGF0ZVRhZyB9IGZyb20gJ0BnbGltbWVyL3ZhbGlkYXRvcic7XG5cbmltcG9ydCAqIGFzIFRTRml4dHVyZXMgZnJvbSAnLi9maXh0dXJlcy90eXBlc2NyaXB0Jztcbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvYmFuLXRzLWlnbm9yZVxuLy8gQHRzLWlnbm9yZVxuaW1wb3J0ICogYXMgQmFiZWxGaXh0dXJlcyBmcm9tICcuL2ZpeHR1cmVzL2JhYmVsJztcbmltcG9ydCB7IGFzc2VydFZhbGlkQWZ0ZXJVbnJlbGF0ZWRCdW1wIH0gZnJvbSAnLi9oZWxwZXJzL3RhZ3MnO1xuXG5bXG4gIFsnQmFiZWwnLCBCYWJlbEZpeHR1cmVzXSxcbiAgWydUeXBlU2NyaXB0JywgVFNGaXh0dXJlc10sXG5dLmZvckVhY2goKFtjb21waWxlciwgRl0pID0+IHtcbiAgbW9kdWxlKGBbQGdsaW1tZXIvdHJhY2tpbmddIFRyYWNrZWQgUHJvcGVydHkgRGVjb3JhdG9ycyB3aXRoICR7Y29tcGlsZXJ9YCk7XG5cbiAgdGVzdCgndHJhY2tlZCBwcm9wZXJ0aWVzIGNhbiBiZSByZWFkIGFuZCB3cml0dGVuIHRvJywgKGFzc2VydCkgPT4ge1xuICAgIGNvbnN0IG9iaiA9IG5ldyBGLlRvbSgpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChvYmouZmlyc3ROYW1lLCAnVG9tJyk7XG4gICAgb2JqLmZpcnN0TmFtZSA9ICdFZHNnZXInO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChvYmouZmlyc3ROYW1lLCAnRWRzZ2VyJyk7XG4gIH0pO1xuXG4gIHRlc3QoJ2NhbiByZXF1ZXN0IGEgdGFnIGZvciBhIHByb3BlcnR5JywgKGFzc2VydCkgPT4ge1xuICAgIGNvbnN0IG9iaiA9IG5ldyBGLlRvbSgpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChvYmouZmlyc3ROYW1lLCAnVG9tJyk7XG5cbiAgICBjb25zdCB0YWcgPSB0cmFjaygoKSA9PiB7XG4gICAgICBvYmouZmlyc3ROYW1lO1xuICAgIH0pO1xuICAgIGxldCBzbmFwc2hvdCA9IHZhbHVlRm9yVGFnKHRhZyk7XG4gICAgYXNzZXJ0Lm9rKHZhbGlkYXRlVGFnKHRhZywgc25hcHNob3QpLCAndGFnIHNob3VsZCBiZSB2YWxpZCB0byBzdGFydCcpO1xuXG4gICAgb2JqLmZpcnN0TmFtZSA9ICdFZHNnZXInO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChcbiAgICAgIHZhbGlkYXRlVGFnKHRhZywgc25hcHNob3QpLFxuICAgICAgZmFsc2UsXG4gICAgICAndGFnIGlzIGludmFsaWRhdGVkIGFmdGVyIHByb3BlcnR5IGlzIHNldCdcbiAgICApO1xuICAgIHNuYXBzaG90ID0gdmFsdWVGb3JUYWcodGFnKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwodmFsaWRhdGVUYWcodGFnLCBzbmFwc2hvdCksIHRydWUsICd0YWcgaXMgdmFsaWQgb24gdGhlIHNlY29uZCBjaGVjaycpO1xuXG4gICAgYXNzZXJ0VmFsaWRBZnRlclVucmVsYXRlZEJ1bXAodGFnLCBzbmFwc2hvdCk7XG4gIH0pO1xuXG4gIHRlc3QoJ2NhbiByZXF1ZXN0IGEgdGFnIGZyb20gYSBmcm96ZW4gY2xhc3MgaW5zdGFuY2UnLCAoYXNzZXJ0KSA9PiB7XG4gICAgY29uc3Qgb2JqID0gT2JqZWN0LmZyZWV6ZShuZXcgRi5Ub3JhbigpKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwob2JqLmZpcnN0TmFtZSwgJ1RvcmFuJyk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKG9iai5sYXN0TmFtZSwgJ0JpbGx1cHMnKTtcblxuICAgIC8vIEV4cGxpY2l0bHkgYW5ub3RhdGVkIHRyYWNrZWQgcHJvcGVydGllc1xuICAgIGxldCB0YWcgPSB0cmFjaygoKSA9PiB7XG4gICAgICBvYmouZmlyc3ROYW1lO1xuICAgIH0pO1xuICAgIGxldCBzbmFwc2hvdCA9IHZhbHVlRm9yVGFnKHRhZyk7XG4gICAgYXNzZXJ0Lm9rKHZhbGlkYXRlVGFnKHRhZywgc25hcHNob3QpLCAndGFnIHNob3VsZCBiZSB2YWxpZCB0byBzdGFydCcpO1xuICAgIHNuYXBzaG90ID0gdmFsdWVGb3JUYWcodGFnKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwodmFsaWRhdGVUYWcodGFnLCBzbmFwc2hvdCksIHRydWUsICd0YWcgaXMgc3RpbGwgdmFsaWQnKTtcblxuICAgIC8vIE5vbi10cmFja2VkIGRhdGEgcHJvcGVydGllc1xuICAgIHRhZyA9IHRyYWNrKCgpID0+IHtcbiAgICAgIG9iai5sYXN0TmFtZTtcbiAgICB9KTtcbiAgICBzbmFwc2hvdCA9IHZhbHVlRm9yVGFnKHRhZyk7XG4gICAgYXNzZXJ0Lm9rKHZhbGlkYXRlVGFnKHRhZywgc25hcHNob3QpLCAndGFnIHNob3VsZCBiZSB2YWxpZCB0byBzdGFydCcpO1xuICAgIHNuYXBzaG90ID0gdmFsdWVGb3JUYWcodGFnKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwodmFsaWRhdGVUYWcodGFnLCBzbmFwc2hvdCksIHRydWUsICd0YWcgaXMgc3RpbGwgdmFsaWQnKTtcblxuICAgIGFzc2VydFZhbGlkQWZ0ZXJVbnJlbGF0ZWRCdW1wKHRhZywgc25hcHNob3QpO1xuICB9KTtcblxuICB0ZXN0KCdjYW4gcmVxdWVzdCBhIHRhZyBmcm9tIGFuIGluc3RhbmNlIG9mIGEgZnJvemVuIGNsYXNzJywgKGFzc2VydCkgPT4ge1xuICAgIGNvbnN0IG9iaiA9IE9iamVjdC5mcmVlemUobmV3IEYuRnJvemVuVG9yYW4oKSk7XG5cbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwob2JqLmZpcnN0TmFtZSwgJ1RvcmFuJyk7XG5cbiAgICBjb25zdCB0YWcgPSB0cmFjaygoKSA9PiB7XG4gICAgICBvYmouZmlyc3ROYW1lO1xuICAgIH0pO1xuICAgIGxldCBzbmFwc2hvdCA9IHZhbHVlRm9yVGFnKHRhZyk7XG4gICAgYXNzZXJ0Lm9rKHZhbGlkYXRlVGFnKHRhZywgc25hcHNob3QpLCAndGFnIHNob3VsZCBiZSB2YWxpZCB0byBzdGFydCcpO1xuICAgIHNuYXBzaG90ID0gdmFsdWVGb3JUYWcodGFnKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwodmFsaWRhdGVUYWcodGFnLCBzbmFwc2hvdCksIHRydWUsICd0YWcgaXMgc3RpbGwgdmFsaWQnKTtcblxuICAgIGFzc2VydFZhbGlkQWZ0ZXJVbnJlbGF0ZWRCdW1wKHRhZywgc25hcHNob3QpO1xuICB9KTtcblxuICB0ZXN0KCdjYW4gdHJhY2sgYSBnZXR0ZXInLCAoYXNzZXJ0KSA9PiB7XG4gICAgY29uc3Qgb2JqID0gbmV3IEYuUGVyc29uV2l0aENvdW50KCk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKG9iai5maXJzdE5hbWUsICdUb20wJyk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKG9iai5maXJzdE5hbWUsICdUb20xJyk7XG5cbiAgICBjb25zdCB0YWcgPSB0cmFjaygoKSA9PiB7XG4gICAgICBvYmouZmlyc3ROYW1lO1xuICAgIH0pO1xuICAgIGxldCBzbmFwc2hvdCA9IHZhbHVlRm9yVGFnKHRhZyk7XG4gICAgYXNzZXJ0Lm9rKHZhbGlkYXRlVGFnKHRhZywgc25hcHNob3QpLCAndGFnIHNob3VsZCBiZSB2YWxpZCB0byBzdGFydCcpO1xuXG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKG9iai5maXJzdE5hbWUsICdUb20zJyk7XG4gICAgYXNzZXJ0Lm9rKHZhbGlkYXRlVGFnKHRhZywgc25hcHNob3QpLCAncmVhZGluZyBmcm9tIHByb3BlcnR5IGRvZXMgbm90IGludmFsaWRhdGUgdGhlIHRhZycpO1xuXG4gICAgb2JqLmZpcnN0TmFtZSA9ICdFZHNnZXInO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChcbiAgICAgIHZhbGlkYXRlVGFnKHRhZywgc25hcHNob3QpLFxuICAgICAgZmFsc2UsXG4gICAgICAndGFnIGlzIGludmFsaWRhdGVkIGFmdGVyIHByb3BlcnR5IGlzIHNldCdcbiAgICApO1xuICAgIHNuYXBzaG90ID0gdmFsdWVGb3JUYWcodGFnKTtcblxuICAgIGFzc2VydFZhbGlkQWZ0ZXJVbnJlbGF0ZWRCdW1wKHRhZywgc25hcHNob3QpO1xuICB9KTtcblxuICB0ZXN0KCdnZXR0ZXJzIGFyZSBpbnZhbGlkYXRlZCB3aGVuIHRoZWlyIGRlcGVuZGVuY2llcyBhcmUgaW52YWxpZGF0ZWQnLCAoYXNzZXJ0KSA9PiB7XG4gICAgY29uc3Qgb2JqID0gbmV3IEYuUGVyc29uV2l0aFNhbHV0YXRpb24oKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwob2JqLnNhbHV0YXRpb24sICdIZWxsbywgVG9tIERhbGUhJywgYHRoZSBzYWx1YXRpb24gZmllbGQgaXMgdmFsaWRgKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwob2JqLmZ1bGxOYW1lLCAnVG9tIERhbGUnLCBgdGhlIGZ1bGxOYW1lIGZpZWxkIGlzIHZhbGlkYCk7XG5cbiAgICBjb25zdCB0YWcgPSB0cmFjaygoKSA9PiB7XG4gICAgICBvYmouc2FsdXRhdGlvbjtcbiAgICB9KTtcbiAgICBsZXQgc25hcHNob3QgPSB2YWx1ZUZvclRhZyh0YWcpO1xuICAgIGFzc2VydC5vayh2YWxpZGF0ZVRhZyh0YWcsIHNuYXBzaG90KSwgJ3RhZyBzaG91bGQgYmUgdmFsaWQgdG8gc3RhcnQnKTtcblxuICAgIG9iai5maXJzdE5hbWUgPSAnRWRzZ2VyJztcbiAgICBvYmoubGFzdE5hbWUgPSAnRGlqa3N0cmEnO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChcbiAgICAgIHZhbGlkYXRlVGFnKHRhZywgc25hcHNob3QpLFxuICAgICAgZmFsc2UsXG4gICAgICAndGFnIGlzIGludmFsaWRhdGVkIGFmdGVyIGNoYWluZWQgZGVwZW5kZW5jeSBpcyBzZXQnXG4gICAgKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwob2JqLmZ1bGxOYW1lLCAnRWRzZ2VyIERpamtzdHJhJyk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKG9iai5zYWx1dGF0aW9uLCAnSGVsbG8sIEVkc2dlciBEaWprc3RyYSEnKTtcblxuICAgIHNuYXBzaG90ID0gdmFsdWVGb3JUYWcodGFnKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwodmFsaWRhdGVUYWcodGFnLCBzbmFwc2hvdCksIHRydWUpO1xuXG4gICAgb2JqLmZ1bGxOYW1lID0gJ0FsYW4gS2F5JztcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwoXG4gICAgICB2YWxpZGF0ZVRhZyh0YWcsIHNuYXBzaG90KSxcbiAgICAgIGZhbHNlLFxuICAgICAgJ3RhZyBpcyBpbnZhbGlkYXRlZCBhZnRlciBjaGFpbmVkIGRlcGVuZGVuY3kgaXMgc2V0J1xuICAgICk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKG9iai5mdWxsTmFtZSwgJ0FsYW4gS2F5Jyk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKG9iai5maXJzdE5hbWUsICdBbGFuJyk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKG9iai5sYXN0TmFtZSwgJ0theScpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChvYmouc2FsdXRhdGlvbiwgJ0hlbGxvLCBBbGFuIEtheSEnKTtcblxuICAgIHNuYXBzaG90ID0gdmFsdWVGb3JUYWcodGFnKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwodmFsaWRhdGVUYWcodGFnLCBzbmFwc2hvdCksIHRydWUpO1xuXG4gICAgYXNzZXJ0VmFsaWRBZnRlclVucmVsYXRlZEJ1bXAodGFnLCBzbmFwc2hvdCk7XG4gIH0pO1xuXG4gIHRlc3QoJ25lc3RlZCBAdHJhY2tlZCBpbiBtdWx0aXBsZSBvYmplY3RzJywgKGFzc2VydCkgPT4ge1xuICAgIGNvbnN0IG9iaiA9IG5ldyBGLkNvbnRhY3QobmV3IEYuUGVyc29uRm9yQ29udGFjdCgpLCAndG9tQGV4YW1wbGUuY29tJyk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKG9iai5jb250YWN0LCAnVG9tIERhbGUgQCB0b21AZXhhbXBsZS5jb20nLCBgdGhlIGNvbnRhY3QgZmllbGQgaXMgdmFsaWRgKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwob2JqLnBlcnNvbi5mdWxsTmFtZSwgJ1RvbSBEYWxlJywgYHRoZSBmdWxsTmFtZSBmaWVsZCBpcyB2YWxpZGApO1xuICAgIGNvbnN0IHBlcnNvbiA9IG9iai5wZXJzb247XG5cbiAgICBjb25zdCB0YWcgPSB0cmFjaygoKSA9PiB7XG4gICAgICBvYmouY29udGFjdDtcbiAgICB9KTtcbiAgICBsZXQgc25hcHNob3QgPSB2YWx1ZUZvclRhZyh0YWcpO1xuICAgIGFzc2VydC5vayh2YWxpZGF0ZVRhZyh0YWcsIHNuYXBzaG90KSwgJ3RhZyBzaG91bGQgYmUgdmFsaWQgdG8gc3RhcnQnKTtcblxuICAgIHBlcnNvbi5maXJzdE5hbWUgPSAnRWRzZ2VyJztcbiAgICBwZXJzb24ubGFzdE5hbWUgPSAnRGlqa3N0cmEnO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChcbiAgICAgIHZhbGlkYXRlVGFnKHRhZywgc25hcHNob3QpLFxuICAgICAgZmFsc2UsXG4gICAgICAndGFnIGlzIGludmFsaWRhdGVkIGFmdGVyIG5lc3RlZCBkZXBlbmRlbmN5IGlzIHNldCdcbiAgICApO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChwZXJzb24uZnVsbE5hbWUsICdFZHNnZXIgRGlqa3N0cmEnKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwob2JqLmNvbnRhY3QsICdFZHNnZXIgRGlqa3N0cmEgQCB0b21AZXhhbXBsZS5jb20nKTtcblxuICAgIHNuYXBzaG90ID0gdmFsdWVGb3JUYWcodGFnKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwodmFsaWRhdGVUYWcodGFnLCBzbmFwc2hvdCksIHRydWUpO1xuXG4gICAgcGVyc29uLmZ1bGxOYW1lID0gJ0FsYW4gS2F5JztcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwoXG4gICAgICB2YWxpZGF0ZVRhZyh0YWcsIHNuYXBzaG90KSxcbiAgICAgIGZhbHNlLFxuICAgICAgJ3RhZyBpcyBpbnZhbGlkYXRlZCBhZnRlciBjaGFpbmVkIGRlcGVuZGVuY3kgaXMgc2V0J1xuICAgICk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKHBlcnNvbi5mdWxsTmFtZSwgJ0FsYW4gS2F5Jyk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKHBlcnNvbi5maXJzdE5hbWUsICdBbGFuJyk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKHBlcnNvbi5sYXN0TmFtZSwgJ0theScpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChvYmouY29udGFjdCwgJ0FsYW4gS2F5IEAgdG9tQGV4YW1wbGUuY29tJyk7XG5cbiAgICBzbmFwc2hvdCA9IHZhbHVlRm9yVGFnKHRhZyk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKHZhbGlkYXRlVGFnKHRhZywgc25hcHNob3QpLCB0cnVlKTtcblxuICAgIG9iai5lbWFpbCA9ICdhbGFuQGV4YW1wbGUuY29tJztcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwoXG4gICAgICB2YWxpZGF0ZVRhZyh0YWcsIHNuYXBzaG90KSxcbiAgICAgIGZhbHNlLFxuICAgICAgJ3RhZyBpcyBpbnZhbGlkYXRlZCBhZnRlciBjaGFpbmVkIGRlcGVuZGVuY3kgaXMgc2V0J1xuICAgICk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKHBlcnNvbi5mdWxsTmFtZSwgJ0FsYW4gS2F5Jyk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKHBlcnNvbi5maXJzdE5hbWUsICdBbGFuJyk7XG4gICAgYXNzZXJ0LnN0cmljdEVxdWFsKHBlcnNvbi5sYXN0TmFtZSwgJ0theScpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChvYmouY29udGFjdCwgJ0FsYW4gS2F5IEAgYWxhbkBleGFtcGxlLmNvbScpO1xuXG4gICAgc25hcHNob3QgPSB2YWx1ZUZvclRhZyh0YWcpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbCh2YWxpZGF0ZVRhZyh0YWcsIHNuYXBzaG90KSwgdHJ1ZSk7XG5cbiAgICBhc3NlcnRWYWxpZEFmdGVyVW5yZWxhdGVkQnVtcCh0YWcsIHNuYXBzaG90KTtcbiAgfSk7XG5cbiAgaWYgKERFQlVHKSB7XG4gICAgdGVzdCgnVHJhY2tlZCBkZWNvcmF0b3Igd2l0aCBhIGdldHRlciB0aHJvd3MgYW4gZXJyb3InLCAoYXNzZXJ0KSA9PiB7XG4gICAgICBhc3NlcnQudGhyb3dzKEYuY3JlYXRlQ2xhc3NXaXRoVHJhY2tlZEdldHRlcik7XG4gICAgfSk7XG5cbiAgICB0ZXN0KCdUcmFja2VkIGRlY29yYXRvciB3aXRoIGEgc2V0dGVyIHRocm93cyBhbiBlcnJvcicsIChhc3NlcnQpID0+IHtcbiAgICAgIGFzc2VydC50aHJvd3MoRi5jcmVhdGVDbGFzc1dpdGhUcmFja2VkU2V0dGVyKTtcbiAgICB9KTtcblxuICAgIHRlc3QoJ1RyYWNrZWQgZGVjb3JhdG9yIHdpdGggYXJndW1lbnRzIHRocm93cyBhbiBlcnJvcicsIGZ1bmN0aW9uIChhc3NlcnQpIHtcbiAgICAgIGFzc2VydC50aHJvd3MoXG4gICAgICAgIEYuY3JlYXRlQ2xhc3NXaXRoVHJhY2tlZERlcGVuZGVudEtleXMsXG4gICAgICAgIC9AdHJhY2tlZFxcKCdmaXJzdE5hbWUnLCAnbGFzdE5hbWUnXFwpLyxcbiAgICAgICAgJ3RoZSBjb3JyZWN0IGVycm9yIGlzIHRocm93bidcbiAgICAgICk7XG4gICAgfSk7XG5cbiAgICB0ZXN0KCdVc2luZyBAdHJhY2tlZCBhcyBhIGRlY29yYXRvciBmYWN0b3J5IHRocm93cyBhbiBlcnJvcicsIGZ1bmN0aW9uIChhc3NlcnQpIHtcbiAgICAgIGFzc2VydC50aHJvd3MoXG4gICAgICAgIEYuY3JlYXRlQ2xhc3NXaXRoVHJhY2tlZEFzRGVjb3JhdG9yRmFjdG9yeSxcbiAgICAgICAgL0B0cmFja2VkXFwoXFwpLyxcbiAgICAgICAgJ1RoZSBjb3JyZWN0IGVycm9yIGlzIHRocm93bidcbiAgICAgICk7XG4gICAgfSk7XG4gIH1cbn0pO1xuIl19
{
"name": "@glimmer/tracking",
"version": "2.0.0-beta.3",
"version": "2.0.0-beta.4",
"description": "Glimmer property tracking library",

@@ -26,3 +26,7 @@ "contributors": [

"@glimmer/wire-format": "^0.50.0"
},
"volta": {
"node": "12.16.1",
"yarn": "1.22.4"
}
}
# @glimmer/tracking
[![npm version](https://badge.fury.io/js/%40glimmer%2Fcomponent.svg)](https://badge.fury.io/js/%40glimmer%2Fcomponent)
[![Build Status](https://secure.travis-ci.org/glimmerjs/glimmer-component.svg?branch=master)](http://travis-ci.org/glimmerjs/glimmer-component)
[![npm version](https://badge.fury.io/js/%40glimmer%2Ftracking.svg)](https://badge.fury.io/js/%40glimmer%2Ftracking)
[![CI](https://github.com/glimmerjs/glimmer.js/workflows/CI/badge.svg)](https://github.com/glimmerjs/glimmer.js/actions?query=workflow%3ACI)

@@ -33,15 +33,5 @@ ## Installation

## Development
For the development of this project, Yarn is preferred over npm. However, any Yarn command can be replaced by the npm equivalent.
See [Migration from npm](https://yarnpkg.com/lang/en/docs/migrating-from-npm/) in the Yarn documentation for a list of the equivalent commands.
- Clone repository locally: `git clone https://github.com/glimmerjs/glimmer-component.git`
- Install dependencies: `yarn`, or `yarn install`
- Open project in your editor of choice and make your changes
- Run tests: `yarn run test`
## Contributing
Bug reports and pull requests are welcome on GitHub at https://github.com/glimmerjs/glimmer-component.
Bug reports and pull requests are welcome on GitHub at https://github.com/glimmerjs/glimmer.js.

@@ -48,0 +38,0 @@ ## Acknowledgements

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