Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

@glimmer/object-reference

Package Overview
Dependencies
Maintainers
11
Versions
160
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@glimmer/object-reference - npm Package Compare versions

Comparing version 0.34.2 to 0.34.3

8

dist/amd/es5/glimmer-object-reference.js

@@ -169,7 +169,7 @@ define('@glimmer/object-reference', ['exports', '@glimmer/util', '@glimmer/reference'], function (exports, util, reference) { 'use strict';

ConstRoot.prototype.referenceFromParts = function referenceFromParts(_parts) {
throw new Error("Not implemented");
throw new Error('Not implemented');
};
ConstRoot.prototype.chainFor = function chainFor(_prop) {
throw new Error("Not implemented");
throw new Error('Not implemented');
};

@@ -198,3 +198,3 @@

var CLASS_META = "df8be4c8-4e89-44e2-a8f9-550c8dacdca7";
var CLASS_META = 'df8be4c8-4e89-44e2-a8f9-550c8dacdca7';
var hasOwnProperty = Object.hasOwnProperty;

@@ -375,2 +375,2 @@

});
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2xpbW1lci1vYmplY3QtcmVmZXJlbmNlLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9AZ2xpbW1lci9vYmplY3QtcmVmZXJlbmNlL2xpYi91dGlscy50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BnbGltbWVyL29iamVjdC1yZWZlcmVuY2UvbGliL3JlZmVyZW5jZXMvcGF0aC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BnbGltbWVyL29iamVjdC1yZWZlcmVuY2UvbGliL3JlZmVyZW5jZXMvcm9vdC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BnbGltbWVyL29iamVjdC1yZWZlcmVuY2UvbGliL21ldGEudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9AZ2xpbW1lci9vYmplY3QtcmVmZXJlbmNlL2xpYi9yZWZlcmVuY2VzL2Rlc2NyaXB0b3JzLnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvQGdsaW1tZXIvb2JqZWN0LXJlZmVyZW5jZS9saWIvb2JqZWN0LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBmdW5jdGlvbiBFTVBUWV9DQUNIRSgpIHt9XG4iLCJpbXBvcnQgeyBFTVBUWV9DQUNIRSB9IGZyb20gJy4uL3V0aWxzJztcbmltcG9ydCB7IGRpY3QgfSBmcm9tICdAZ2xpbW1lci91dGlsJztcbmltcG9ydCBNZXRhIGZyb20gJy4uL21ldGEnO1xuaW1wb3J0IHsgUHJvcGVydHlSZWZlcmVuY2UgfSBmcm9tICcuL2Rlc2NyaXB0b3JzJztcbmltcG9ydCB7IFBhdGhSZWZlcmVuY2UgYXMgSVBhdGhSZWZlcmVuY2UsIFJlZmVyZW5jZSwgVGFnLCBDVVJSRU5UX1RBRyB9IGZyb20gJ0BnbGltbWVyL3JlZmVyZW5jZSc7XG5pbXBvcnQgeyBEaWN0LCBIYXNHdWlkIH0gZnJvbSAnQGdsaW1tZXIvdXRpbCc7XG5pbXBvcnQgeyBPcHRpb24gfSBmcm9tIFwiQGdsaW1tZXIvaW50ZXJmYWNlc1wiO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBQYXRoUmVmZXJlbmNlPFQ+IGltcGxlbWVudHMgSVBhdGhSZWZlcmVuY2U8VD4sIEhhc0d1aWQge1xuICBwcml2YXRlIHBhcmVudDogSVBhdGhSZWZlcmVuY2U8YW55PjtcbiAgcHJpdmF0ZSBwcm9wZXJ0eTogc3RyaW5nO1xuICBwcm90ZWN0ZWQgY2FjaGU6IGFueSA9IEVNUFRZX0NBQ0hFO1xuICBwcml2YXRlIGlubmVyOiBPcHRpb248UmVmZXJlbmNlPFQ+PiA9IG51bGw7XG4gIHByaXZhdGUgY2hhaW5zOiBPcHRpb248RGljdDxQYXRoUmVmZXJlbmNlPGFueT4+PiA9IG51bGw7XG4gIHByaXZhdGUgbGFzdFBhcmVudFZhbHVlOiBhbnkgPSBFTVBUWV9DQUNIRTtcbiAgcHVibGljIF9ndWlkID0gMDtcbiAgcHVibGljIHRhZzogVGFnID0gQ1VSUkVOVF9UQUc7XG5cbiAgY29uc3RydWN0b3IocGFyZW50OiBJUGF0aFJlZmVyZW5jZTxUPiwgcHJvcGVydHk6IHN0cmluZykge1xuICAgIHRoaXMucGFyZW50ID0gcGFyZW50O1xuICAgIHRoaXMucHJvcGVydHkgPSBwcm9wZXJ0eTtcbiAgfVxuXG4gIHZhbHVlKCk6IGFueSB7XG4gICAgbGV0IHsgbGFzdFBhcmVudFZhbHVlLCBwcm9wZXJ0eSwgaW5uZXIgfSA9IHRoaXM7XG4gICAgbGV0IHBhcmVudFZhbHVlID0gdGhpcy5fcGFyZW50VmFsdWUoKTtcblxuICAgIGlmIChwYXJlbnRWYWx1ZSA9PT0gbnVsbCB8fCBwYXJlbnRWYWx1ZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXR1cm4gKHRoaXMuY2FjaGUgPSB1bmRlZmluZWQpO1xuICAgIH1cblxuICAgIGlmIChsYXN0UGFyZW50VmFsdWUgPT09IHBhcmVudFZhbHVlKSB7XG4gICAgICBpbm5lciA9IHRoaXMuaW5uZXI7XG4gICAgfSBlbHNlIHtcbiAgICAgIGxldCBSZWZlcmVuY2VUeXBlID0gdHlwZW9mIHBhcmVudFZhbHVlID09PSAnb2JqZWN0JyA/IE1ldGEuZm9yKHBhcmVudFZhbHVlKS5yZWZlcmVuY2VUeXBlRm9yKHByb3BlcnR5KSA6IFByb3BlcnR5UmVmZXJlbmNlO1xuICAgICAgaW5uZXIgPSB0aGlzLmlubmVyID0gbmV3IFJlZmVyZW5jZVR5cGUocGFyZW50VmFsdWUsIHByb3BlcnR5LCB0aGlzKTtcbiAgICB9XG5cbiAgICAvLyBpZiAodHlwZW9mIHBhcmVudFZhbHVlID09PSAnb2JqZWN0Jykge1xuICAgIC8vICAgTWV0YS5mb3IocGFyZW50VmFsdWUpLmFkZFJlZmVyZW5jZShwcm9wZXJ0eSwgdGhpcyk7XG4gICAgLy8gfVxuXG4gICAgcmV0dXJuICh0aGlzLmNhY2hlID0gaW5uZXIhLnZhbHVlKCkpO1xuICB9XG5cbiAgZ2V0KHByb3A6IHN0cmluZyk6IElQYXRoUmVmZXJlbmNlPGFueT4ge1xuICAgIGxldCBjaGFpbnMgPSB0aGlzLl9nZXRDaGFpbnMoKTtcbiAgICBpZiAocHJvcCBhcyBzdHJpbmcgaW4gY2hhaW5zKSByZXR1cm4gY2hhaW5zW3Byb3BdO1xuICAgIHJldHVybiAoY2hhaW5zW3Byb3BdID0gbmV3IFBhdGhSZWZlcmVuY2UodGhpcywgcHJvcCkpO1xuICB9XG5cbiAgbGFiZWwoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJ1tyZWZlcmVuY2UgRGlyZWN0XSc7XG4gIH1cblxuICBwcml2YXRlIF9nZXRDaGFpbnMoKTogRGljdDxQYXRoUmVmZXJlbmNlPGFueT4+IHtcbiAgICBpZiAodGhpcy5jaGFpbnMpIHJldHVybiB0aGlzLmNoYWlucztcbiAgICByZXR1cm4gKHRoaXMuY2hhaW5zID0gZGljdDxQYXRoUmVmZXJlbmNlPGFueT4+KCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBfcGFyZW50VmFsdWUoKSB7XG4gICAgbGV0IHBhcmVudCA9IHRoaXMucGFyZW50LnZhbHVlKCk7XG4gICAgdGhpcy5sYXN0UGFyZW50VmFsdWUgPSBwYXJlbnQ7XG4gICAgcmV0dXJuIHBhcmVudDtcbiAgfVxufVxuXG5leHBvcnQgeyBQYXRoUmVmZXJlbmNlIH07XG4iLCJpbXBvcnQgeyBPcHRpb24sIE9wYXF1ZSwgZGljdCB9IGZyb20gJ0BnbGltbWVyL3V0aWwnO1xuaW1wb3J0IHsgUGF0aFJlZmVyZW5jZSB9IGZyb20gJy4vcGF0aCc7XG5pbXBvcnQgeyBSb290UmVmZXJlbmNlIGFzIElSb290UmVmZXJlbmNlIH0gZnJvbSAnLi4vdHlwZXMnO1xuaW1wb3J0IHsgUGF0aFJlZmVyZW5jZSBhcyBJUGF0aFJlZmVyZW5jZSwgVGFnLCBDVVJSRU5UX1RBRywgYnVtcCB9IGZyb20gJ0BnbGltbWVyL3JlZmVyZW5jZSc7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFJvb3RSZWZlcmVuY2U8VD4gaW1wbGVtZW50cyBJUm9vdFJlZmVyZW5jZTxUPiwgSVBhdGhSZWZlcmVuY2U8VD4ge1xuICBwcml2YXRlIG9iamVjdDogVDtcbiAgcHJpdmF0ZSBjaGFpbnMgPSBkaWN0PFBhdGhSZWZlcmVuY2U8YW55Pj4oKTtcbiAgcHVibGljIHRhZzogVGFnID0gQ1VSUkVOVF9UQUc7XG5cbiAgY29uc3RydWN0b3Iob2JqZWN0OiBUKSB7XG4gICAgdGhpcy5vYmplY3QgPSBvYmplY3Q7XG4gIH1cblxuICB2YWx1ZSgpOiBUIHsgcmV0dXJuIHRoaXMub2JqZWN0OyB9XG5cbiAgdXBkYXRlKG9iamVjdDogVCkge1xuICAgIHRoaXMub2JqZWN0ID0gb2JqZWN0O1xuICAgIGJ1bXAoKTtcbiAgfVxuXG4gIGdldDxVPihwcm9wOiBzdHJpbmcpOiBJUGF0aFJlZmVyZW5jZTxVPiB7XG4gICAgbGV0IGNoYWlucyA9IHRoaXMuY2hhaW5zO1xuICAgIGlmIChwcm9wIGFzIHN0cmluZyBpbiBjaGFpbnMpIHJldHVybiBjaGFpbnNbcHJvcF07XG4gICAgcmV0dXJuIChjaGFpbnNbcHJvcF0gPSBuZXcgUGF0aFJlZmVyZW5jZSh0aGlzLCBwcm9wKSk7XG4gIH1cblxuICBjaGFpbkZvcjxVPihwcm9wOiBzdHJpbmcpOiBPcHRpb248SVBhdGhSZWZlcmVuY2U8VT4+IHtcbiAgICBsZXQgY2hhaW5zID0gdGhpcy5jaGFpbnM7XG4gICAgaWYgKHByb3AgYXMgc3RyaW5nIGluIGNoYWlucykgcmV0dXJuIGNoYWluc1twcm9wXTtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIHBhdGgoc3RyaW5nOiBzdHJpbmcpOiBJUGF0aFJlZmVyZW5jZTxPcGFxdWU+IHtcbiAgICByZXR1cm4gdGhpcy5yZWZlcmVuY2VGcm9tUGFydHMoc3RyaW5nLnNwbGl0KCcuJykpO1xuICB9XG5cbiAgcmVmZXJlbmNlRnJvbVBhcnRzKHBhcnRzOiBzdHJpbmdbXSk6IElQYXRoUmVmZXJlbmNlPE9wYXF1ZT4ge1xuICAgIHJldHVybiBwYXJ0cy5yZWR1Y2UoKHJlZiwgcGFydCkgPT4gcmVmLmdldChwYXJ0KSBhcyBJUGF0aFJlZmVyZW5jZTxPcGFxdWU+LCB0aGlzIGFzIElQYXRoUmVmZXJlbmNlPE9wYXF1ZT4pO1xuICB9XG5cbiAgbGFiZWwoKSB7XG4gICAgcmV0dXJuICdbcmVmZXJlbmNlIFJvb3RdJztcbiAgfVxufVxuIiwiaW1wb3J0IHsgUHJvcGVydHlSZWZlcmVuY2UgfSBmcm9tICcuL3JlZmVyZW5jZXMvZGVzY3JpcHRvcnMnO1xuaW1wb3J0IFJvb3RSZWZlcmVuY2UgZnJvbSAnLi9yZWZlcmVuY2VzL3Jvb3QnO1xuaW1wb3J0IHsgTWV0YU9wdGlvbnMgfSBmcm9tICcuL3R5cGVzJztcblxuaW1wb3J0IHsgT3B0aW9uLCBEaWN0LCBEaWN0U2V0LCBIYXNHdWlkLCBTZXQsIGRpY3QgfSBmcm9tICdAZ2xpbW1lci91dGlsJztcblxuaW1wb3J0IHtcbiAgUm9vdFJlZmVyZW5jZUZhY3RvcnksXG4gIFBhdGhSZWZlcmVuY2VGYWN0b3J5LFxuICBNZXRhIGFzIElNZXRhLFxuICBSb290UmVmZXJlbmNlIGFzIElSb290UmVmZXJlbmNlXG59IGZyb20gJy4vdHlwZXMnO1xuXG5pbXBvcnQgeyBQYXRoUmVmZXJlbmNlIGFzIElQYXRoUmVmZXJlbmNlLCBDVVJSRU5UX1RBRyB9IGZyb20gJ0BnbGltbWVyL3JlZmVyZW5jZSc7XG5cbmltcG9ydCB7IElubmVyUmVmZXJlbmNlRmFjdG9yeSB9IGZyb20gJy4vcmVmZXJlbmNlcy9kZXNjcmlwdG9ycyc7XG5cbmNvbnN0IE5PT1BfREVTVFJPWSA9IHsgZGVzdHJveSgpIHt9IH07XG5cbmNsYXNzIENvbnN0UGF0aCBpbXBsZW1lbnRzIElQYXRoUmVmZXJlbmNlPGFueT4ge1xuICBwcml2YXRlIHBhcmVudDogYW55O1xuICBwcml2YXRlIHByb3BlcnR5OiBzdHJpbmc7XG4gIHB1YmxpYyB0YWcgPSBDVVJSRU5UX1RBRztcblxuICBjb25zdHJ1Y3RvcihwYXJlbnQ6IGFueSwgX3Byb3BlcnR5OiBzdHJpbmcpIHtcbiAgICB0aGlzLnBhcmVudCA9IHBhcmVudDtcbiAgfVxuXG4gIGNoYWluKCkgeyByZXR1cm4gTk9PUF9ERVNUUk9ZOyB9XG4gIG5vdGlmeSgpIHt9XG5cbiAgdmFsdWUoKSB7XG4gICAgcmV0dXJuIHRoaXMucGFyZW50W3RoaXMucHJvcGVydHldO1xuICB9XG5cbiAgZ2V0KHByb3A6IHN0cmluZyk6IElQYXRoUmVmZXJlbmNlPGFueT4ge1xuICAgIHJldHVybiBuZXcgQ29uc3RQYXRoKHRoaXMucGFyZW50W3RoaXMucHJvcGVydHldLCBwcm9wKTtcbiAgfVxufVxuXG5jbGFzcyBDb25zdFJvb3QgaW1wbGVtZW50cyBJUm9vdFJlZmVyZW5jZTxhbnk+IHtcbiAgcHJpdmF0ZSBpbm5lcjogYW55O1xuICBwdWJsaWMgdGFnID0gQ1VSUkVOVF9UQUc7XG5cbiAgY29uc3RydWN0b3IodmFsdWU6IGFueSkge1xuICAgIHRoaXMuaW5uZXIgPSB2YWx1ZTtcbiAgfVxuXG4gIHVwZGF0ZShpbm5lcjogYW55KSB7XG4gICAgdGhpcy5pbm5lciA9IGlubmVyO1xuICB9XG5cbiAgY2hhaW4oKSB7IHJldHVybiBOT09QX0RFU1RST1k7IH1cbiAgbm90aWZ5KCkge31cblxuICB2YWx1ZSgpOiBhbnkge1xuICAgIHJldHVybiB0aGlzLmlubmVyO1xuICB9XG5cbiAgcmVmZXJlbmNlRnJvbVBhcnRzKF9wYXJ0czogc3RyaW5nW10pOiBJUGF0aFJlZmVyZW5jZTxhbnk+IHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXCJOb3QgaW1wbGVtZW50ZWRcIik7XG4gIH1cblxuICBjaGFpbkZvcihfcHJvcDogc3RyaW5nKTogSVBhdGhSZWZlcmVuY2U8YW55PiB7XG4gICAgdGhyb3cgbmV3IEVycm9yKFwiTm90IGltcGxlbWVudGVkXCIpO1xuICB9XG5cbiAgZ2V0KHByb3A6IHN0cmluZyk6IElQYXRoUmVmZXJlbmNlPGFueT4ge1xuICAgIHJldHVybiBuZXcgQ29uc3RQYXRoKHRoaXMuaW5uZXIsIHByb3ApO1xuICB9XG59XG5cbmNsYXNzIENvbnN0TWV0YSAvKmltcGxlbWVudHMgSU1ldGEqLyB7XG4gIHByaXZhdGUgb2JqZWN0OiBhbnk7XG5cbiAgY29uc3RydWN0b3Iob2JqZWN0OiBhbnkpIHtcbiAgICB0aGlzLm9iamVjdCA9IG9iamVjdDtcbiAgfVxuXG4gIHJvb3QoKTogQ29uc3RSb290IHtcbiAgICByZXR1cm4gbmV3IENvbnN0Um9vdCh0aGlzLm9iamVjdCk7XG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IENMQVNTX01FVEEgPSBcImRmOGJlNGM4LTRlODktNDRlMi1hOGY5LTU1MGM4ZGFjZGNhN1wiO1xuXG5jb25zdCBoYXNPd25Qcm9wZXJ0eSA9IE9iamVjdC5oYXNPd25Qcm9wZXJ0eTtcblxuY2xhc3MgTWV0YSBpbXBsZW1lbnRzIElNZXRhLCBIYXNHdWlkIHtcbiAgc3RhdGljIGZvcihvYmo6IGFueSk6IElNZXRhIHtcbiAgICBpZiAob2JqID09PSBudWxsIHx8IG9iaiA9PT0gdW5kZWZpbmVkKSByZXR1cm4gbmV3IE1ldGEob2JqLCB7fSk7XG4gICAgaWYgKGhhc093blByb3BlcnR5LmNhbGwob2JqLCAnX21ldGEnKSAmJiBvYmouX21ldGEpIHJldHVybiBvYmouX21ldGE7XG4gICAgaWYgKCFPYmplY3QuaXNFeHRlbnNpYmxlKG9iaikpIHJldHVybiBuZXcgQ29uc3RNZXRhKG9iaikgYXMgYW55O1xuXG4gICAgbGV0IE1ldGFUb1VzZTogdHlwZW9mIE1ldGEgPSBNZXRhO1xuXG4gICAgaWYgKG9iai5jb25zdHJ1Y3RvciAmJiBvYmouY29uc3RydWN0b3JbQ0xBU1NfTUVUQV0pIHtcbiAgICAgIGxldCBjbGFzc01ldGE6IENsYXNzTWV0YSA9IG9iai5jb25zdHJ1Y3RvcltDTEFTU19NRVRBXTtcbiAgICAgIE1ldGFUb1VzZSA9IGNsYXNzTWV0YS5JbnN0YW5jZU1ldGFDb25zdHJ1Y3RvcjtcbiAgICB9IGVsc2UgaWYgKG9ialtDTEFTU19NRVRBXSkge1xuICAgICAgTWV0YVRvVXNlID0gb2JqW0NMQVNTX01FVEFdLkluc3RhbmNlTWV0YUNvbnN0cnVjdG9yO1xuICAgIH1cblxuICAgIHJldHVybiAob2JqLl9tZXRhID0gbmV3IE1ldGFUb1VzZShvYmosIHt9KSk7XG4gIH1cblxuICBzdGF0aWMgZXhpc3RzKG9iajogYW55KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHR5cGVvZiBvYmogPT09ICdvYmplY3QnICYmIG9iai5fbWV0YTtcbiAgfVxuXG4gIHN0YXRpYyBtZXRhZGF0YUZvclByb3BlcnR5KF9rZXk6IHN0cmluZyk6IGFueSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBwcml2YXRlIG9iamVjdDogYW55O1xuICBwcml2YXRlIFJvb3RSZWZlcmVuY2VGYWN0b3J5OiBSb290UmVmZXJlbmNlRmFjdG9yeTxhbnk+O1xuICBwcml2YXRlIHJvb3RDYWNoZTogSVJvb3RSZWZlcmVuY2U8YW55PjtcbiAgcHJpdmF0ZSByZWZlcmVuY2VzOiBPcHRpb248RGljdDxEaWN0U2V0PElQYXRoUmVmZXJlbmNlPGFueT4gJiBIYXNHdWlkPj4+ID0gbnVsbDtcbiAgcHVibGljIF9ndWlkOiBudW1iZXI7XG4gIHByb3RlY3RlZCBzbG90czogT3B0aW9uPERpY3Q8YW55Pj4gPSBudWxsO1xuICBwcm90ZWN0ZWQgcmVmZXJlbmNlVHlwZXM6IE9wdGlvbjxEaWN0PElubmVyUmVmZXJlbmNlRmFjdG9yeTxhbnk+Pj4gPSBudWxsO1xuICBwcm90ZWN0ZWQgcHJvcGVydHlNZXRhZGF0YTogT3B0aW9uPERpY3Q8YW55Pj4gPSBudWxsO1xuXG4gIGNvbnN0cnVjdG9yKG9iamVjdDogYW55LCB7IFJvb3RSZWZlcmVuY2VGYWN0b3J5IH06IE1ldGFPcHRpb25zKSB7XG4gICAgdGhpcy5vYmplY3QgPSBvYmplY3Q7XG4gICAgdGhpcy5Sb290UmVmZXJlbmNlRmFjdG9yeSA9IChSb290UmVmZXJlbmNlRmFjdG9yeSB8fCBSb290UmVmZXJlbmNlKSBhcyBSb290UmVmZXJlbmNlRmFjdG9yeTxhbnk+O1xuICB9XG5cbiAgYWRkUmVmZXJlbmNlKHByb3BlcnR5OiBzdHJpbmcsIHJlZmVyZW5jZTogSVBhdGhSZWZlcmVuY2U8YW55PiAmIEhhc0d1aWQpIHtcbiAgICBsZXQgcmVmcyA9IHRoaXMucmVmZXJlbmNlcyA9IHRoaXMucmVmZXJlbmNlcyB8fCBkaWN0PERpY3RTZXQ8SVBhdGhSZWZlcmVuY2U8YW55PiAmIEhhc0d1aWQ+PigpO1xuICAgIGxldCBzZXQgPSByZWZzW3Byb3BlcnR5XSA9IHJlZnNbcHJvcGVydHldIHx8IG5ldyBEaWN0U2V0PElQYXRoUmVmZXJlbmNlPGFueT4gJiBIYXNHdWlkPigpO1xuICAgIHNldC5hZGQocmVmZXJlbmNlKTtcbiAgfVxuXG4gIGFkZFJlZmVyZW5jZVR5cGVGb3IocHJvcGVydHk6IHN0cmluZywgdHlwZTogUGF0aFJlZmVyZW5jZUZhY3Rvcnk8YW55Pikge1xuICAgIHRoaXMucmVmZXJlbmNlVHlwZXMgPSB0aGlzLnJlZmVyZW5jZVR5cGVzIHx8IGRpY3Q8UGF0aFJlZmVyZW5jZUZhY3Rvcnk8YW55Pj4oKTtcbiAgICB0aGlzLnJlZmVyZW5jZVR5cGVzW3Byb3BlcnR5XSA9IHR5cGU7XG4gIH1cblxuICByZWZlcmVuY2VUeXBlRm9yKHByb3BlcnR5OiBzdHJpbmcpOiBJbm5lclJlZmVyZW5jZUZhY3Rvcnk8YW55PiB7XG4gICAgaWYgKCF0aGlzLnJlZmVyZW5jZVR5cGVzKSByZXR1cm4gUHJvcGVydHlSZWZlcmVuY2U7XG4gICAgcmV0dXJuIHRoaXMucmVmZXJlbmNlVHlwZXNbcHJvcGVydHldIHx8IFByb3BlcnR5UmVmZXJlbmNlO1xuICB9XG5cbiAgcmVtb3ZlUmVmZXJlbmNlKHByb3BlcnR5OiBzdHJpbmcsIHJlZmVyZW5jZTogSVBhdGhSZWZlcmVuY2U8YW55PiAmIEhhc0d1aWQpIHtcbiAgICBpZiAoIXRoaXMucmVmZXJlbmNlcykgcmV0dXJuO1xuICAgIGxldCBzZXQgPSB0aGlzLnJlZmVyZW5jZXNbcHJvcGVydHldO1xuICAgIHNldC5kZWxldGUocmVmZXJlbmNlKTtcbiAgfVxuXG4gIGdldFJlZmVyZW5jZVR5cGVzKCk6IERpY3Q8SW5uZXJSZWZlcmVuY2VGYWN0b3J5PGFueT4+IHtcbiAgICB0aGlzLnJlZmVyZW5jZVR5cGVzID0gdGhpcy5yZWZlcmVuY2VUeXBlcyB8fCBkaWN0PFBhdGhSZWZlcmVuY2VGYWN0b3J5PGFueT4+KCk7XG4gICAgcmV0dXJuIHRoaXMucmVmZXJlbmNlVHlwZXM7XG4gIH1cblxuICByZWZlcmVuY2VzRm9yKHByb3BlcnR5OiBzdHJpbmcpOiBPcHRpb248U2V0PElQYXRoUmVmZXJlbmNlPGFueT4+PiB7XG4gICAgaWYgKCF0aGlzLnJlZmVyZW5jZXMpIHJldHVybiBudWxsO1xuICAgIHJldHVybiB0aGlzLnJlZmVyZW5jZXNbcHJvcGVydHldO1xuICB9XG5cbiAgZ2V0U2xvdHMoKSB7XG4gICAgcmV0dXJuICh0aGlzLnNsb3RzID0gdGhpcy5zbG90cyB8fCBkaWN0KCkpO1xuICB9XG5cbiAgcm9vdCgpOiBJUm9vdFJlZmVyZW5jZTxhbnk+IHtcbiAgICByZXR1cm4gKHRoaXMucm9vdENhY2hlID0gdGhpcy5yb290Q2FjaGUgfHwgbmV3IHRoaXMuUm9vdFJlZmVyZW5jZUZhY3RvcnkodGhpcy5vYmplY3QpKTtcbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBNZXRhO1xuXG5pbnRlcmZhY2UgQ2xhc3NNZXRhIHtcbiAgSW5zdGFuY2VNZXRhQ29uc3RydWN0b3I6IHR5cGVvZiBNZXRhO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbWV0YUZvcihvYmo6IGFueSk6IElNZXRhIHtcbiAgcmV0dXJuIE1ldGEuZm9yKG9iaik7XG59XG4iLCJpbXBvcnQgTWV0YSBmcm9tICcuLi9tZXRhJztcbmltcG9ydCB7IFJlZmVyZW5jZSwgVGFnLCBDVVJSRU5UX1RBRyB9IGZyb20gJ0BnbGltbWVyL3JlZmVyZW5jZSc7XG5pbXBvcnQgeyBOb3RpZmlhYmxlUmVmZXJlbmNlIH0gZnJvbSAnLi4vdHlwZXMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIElubmVyUmVmZXJlbmNlRmFjdG9yeTxUPiB7XG4gIG5ldyAob2JqZWN0OiBhbnksIHByb3BlcnR5OiBzdHJpbmcsIG91dGVyOiBOb3RpZmlhYmxlUmVmZXJlbmNlPGFueT4pOiBSZWZlcmVuY2U8VD47XG59XG5cbmV4cG9ydCBjbGFzcyBQcm9wZXJ0eVJlZmVyZW5jZTxUPiBpbXBsZW1lbnRzIFJlZmVyZW5jZTxUPiB7XG4gIHByaXZhdGUgb2JqZWN0OiBhbnk7XG4gIHByaXZhdGUgcHJvcGVydHk6IHN0cmluZztcbiAgcHVibGljIHRhZzogVGFnID0gQ1VSUkVOVF9UQUc7XG5cbiAgY29uc3RydWN0b3Iob2JqZWN0OiBhbnksIHByb3BlcnR5OiBzdHJpbmcsIF9vdXRlcjogTm90aWZpYWJsZVJlZmVyZW5jZTxUPikge1xuICAgIHRoaXMub2JqZWN0ID0gb2JqZWN0O1xuICAgIHRoaXMucHJvcGVydHkgPSBwcm9wZXJ0eTtcbiAgfVxuXG4gIHZhbHVlKCkgeyByZXR1cm4gdGhpcy5vYmplY3RbdGhpcy5wcm9wZXJ0eV07IH1cblxuICBsYWJlbCgpIHtcbiAgICByZXR1cm4gJ1tyZWZlcmVuY2UgUHJvcGVydHldJztcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gQ29tcHV0ZWRSZWZlcmVuY2VCbHVlcHJpbnQ8VD4oX3Byb3BlcnR5OiBhbnksIGRlcGVuZGVuY2llczogYW55KTogSW5uZXJSZWZlcmVuY2VGYWN0b3J5PFQ+IHtcbiAgcmV0dXJuIGNsYXNzIENvbXB1dGVkUmVmZXJlbmNlPFQ+IGltcGxlbWVudHMgUmVmZXJlbmNlPFQ+IHtcbiAgICBwcml2YXRlIG9iamVjdDogYW55O1xuICAgIHByaXZhdGUgcHJvcGVydHk6IHN0cmluZztcbiAgICBwcml2YXRlIGRlcGVuZGVuY2llczogc3RyaW5nW11bXTtcbiAgICBwcml2YXRlIGluc3RhbGxlZCA9IGZhbHNlO1xuICAgIHB1YmxpYyB0YWc6IFRhZyA9IENVUlJFTlRfVEFHO1xuXG4gICAgY29uc3RydWN0b3Iob2JqZWN0OiBhbnksIHByb3BlcnR5OiBzdHJpbmcpIHtcbiAgICAgIHRoaXMub2JqZWN0ID0gb2JqZWN0O1xuICAgICAgdGhpcy5wcm9wZXJ0eSA9IHByb3BlcnR5O1xuICAgICAgdGhpcy5kZXBlbmRlbmNpZXMgPSBkZXBlbmRlbmNpZXM7XG4gICAgfVxuXG4gICAgdmFsdWUoKTogVCB7XG4gICAgICBpZiAoIXRoaXMuaW5zdGFsbGVkKSB7XG4gICAgICAgIGxldCByb290ID0gTWV0YS5mb3IodGhpcy5vYmplY3QpLnJvb3QoKTtcblxuICAgICAgICB0aGlzLmRlcGVuZGVuY2llcy5mb3JFYWNoKGRlcCA9PiB7XG4gICAgICAgICAgbGV0IHJlZiA9IHJvb3QucmVmZXJlbmNlRnJvbVBhcnRzKGRlcCk7XG4gICAgICAgICAgcmVmLnZhbHVlKCk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuaW5zdGFsbGVkID0gdHJ1ZTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHRoaXMub2JqZWN0W3RoaXMucHJvcGVydHldO1xuICAgIH1cblxuICAgIGxhYmVsKCkge1xuICAgICAgcmV0dXJuICdbcmVmZXJlbmNlIENvbXB1dGVkXSc7XG4gICAgfVxuICB9O1xufVxuIiwiaW1wb3J0IHsgYnVtcCB9IGZyb20gXCJAZ2xpbW1lci9yZWZlcmVuY2VcIjtcblxuLy8gaW1wb3J0IHsgbWV0YUZvciB9IGZyb20gJy4vbWV0YSc7XG4vLyBpbXBvcnQgeyBpbnRlcm4gfSBmcm9tICdAZ2xpbW1lci91dGlsJztcblxuZXhwb3J0IGZ1bmN0aW9uIHNldFByb3BlcnR5KHBhcmVudDogYW55LCBwcm9wZXJ0eTogc3RyaW5nLCB2YWw6IGFueSkge1xuICAvLyBsZXQgcm9vdFByb3AgPSBtZXRhRm9yKHBhcmVudCkucm9vdCgpLmNoYWluRm9yKHByb3BlcnR5KSk7XG5cbiAgLy8gbGV0IHJlZmVyZW5jZXNUb05vdGlmeSA9IG1ldGFGb3IocGFyZW50KS5yZWZlcmVuY2VzRm9yKHByb3BlcnR5KSk7XG5cbiAgcGFyZW50W3Byb3BlcnR5XSA9IHZhbDtcbiAgYnVtcCgpO1xuXG4gIC8vIGlmIChyZWZlcmVuY2VzVG9Ob3RpZnkpIHtcbiAgLy8gICByZWZlcmVuY2VzVG9Ob3RpZnkuZm9yRWFjaChmdW5jdGlvbihyZWYpIHsgcmVmLm5vdGlmeSgpOyB9KTtcbiAgLy8gfVxuXG4gIC8vIGlmIChyb290UHJvcCkgcm9vdFByb3Aubm90aWZ5KCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBub3RpZnlQcm9wZXJ0eShfcGFyZW50OiBhbnksIF9wcm9wZXJ0eTogc3RyaW5nKSB7XG4gIGJ1bXAoKTtcbiAgLy8gbGV0IHJvb3RQcm9wID0gbWV0YUZvcihwYXJlbnQpLnJvb3QoKS5jaGFpbkZvcihwcm9wZXJ0eSkpO1xuXG4gIC8vIGxldCByZWZlcmVuY2VzVG9Ob3RpZnkgPSBtZXRhRm9yKHBhcmVudCkucmVmZXJlbmNlc0Zvcihwcm9wZXJ0eSkpO1xuXG4gIC8vIGlmIChyZWZlcmVuY2VzVG9Ob3RpZnkpIHtcbiAgLy8gICByZWZlcmVuY2VzVG9Ob3RpZnkuZm9yRWFjaChmdW5jdGlvbihyZWYpIHsgcmVmLm5vdGlmeSgpOyB9KTtcbiAgLy8gfVxuXG4gIC8vIGlmIChyb290UHJvcCkgcm9vdFByb3Aubm90aWZ5KCk7XG59XG4iXSwibmFtZXMiOlsiQ1VSUkVOVF9UQUciLCJkaWN0IiwicmVmZXJlbmNlIiwiRGljdFNldCJdLCJtYXBwaW5ncyI6Ijs7dUJBQStCOzs7O0FDQS9CLElBa0JFOzJCQUFZLFFBQTJCOzs7YUFQeEIsUUFBUTthQUNWLFFBQXlCO2FBQ3hCLFNBQXFDO2FBQzVCLGtCQUFRO2FBQ25CLFFBQUc7YUFDTCxNQUFRQTthQUdYLFNBQVM7YUFDVCxXQUFXOzs7O1lBSVY7WUFBaUI7WUFBVSxRQUFVOztZQUN2QyxjQUFjLEtBQUs7WUFFbkIsZ0JBQWdCLFFBQVEsZ0JBQWdCLFdBQVc7bUJBQzdDLEtBQUssUUFBUTs7WUFHbkIsb0JBQW9CLGFBQWE7b0JBQzNCLEtBQUs7ZUFDUjtnQkFDRCxnQkFBZ0IsT0FBTyxnQkFBZ0IsV0FBVyxLQUFLLElBQUksYUFBYSxpQkFBaUIsWUFBWTtvQkFDakcsS0FBSyxRQUFRLElBQUksY0FBYyxhQUFhLFVBQVU7Ozs7O2VBT3hELEtBQUssUUFBUSxNQUFPOzs7K0NBRzFCLE1BQ0Y7WUFBSSxTQUFTLEtBQUs7WUFDZCxRQUFrQixRQUFRLE9BQU8sT0FBTztlQUNwQyxPQUFPLFFBQVEsSUFBSSxjQUFjLE1BQU07OztxREFJL0M7ZUFBTzs7OytEQUlQO1lBQUksS0FBSyxRQUFRLE9BQU8sS0FBSztlQUNyQixLQUFLLFNBQVNDOzs7bUVBSXRCO1lBQUksU0FBUyxLQUFLLE9BQU87YUFDcEIsa0JBQWtCO2VBQ2hCOzs7Ozs7OztBQy9EWCxJQVVFOzJCQUFZOzs7YUFIRSxTQUFHQTthQUNQLE1BQVFEO2FBR1gsU0FBUzs7O3FEQUdIO2VBQU8sS0FBSzs7O3FEQUVsQixRQUNMO2FBQUssU0FBUzs7OzsrQ0FJVCxNQUNMO1lBQUksU0FBUyxLQUFLO1lBQ2QsUUFBa0IsUUFBUSxPQUFPLE9BQU87ZUFDcEMsT0FBTyxRQUFRLElBQUksY0FBYyxNQUFNOzs7eURBR3JDLE1BQ1Y7WUFBSSxTQUFTLEtBQUs7WUFDZCxRQUFrQixRQUFRLE9BQU8sT0FBTztlQUNyQzs7O2lEQUdKLFFBQ0g7ZUFBTyxLQUFLLG1CQUFtQixPQUFPLE1BQU07Ozs2RUFHM0IsT0FDakI7cUJBQWEsaUJBQVEsS0FBSzttQkFBUyxJQUFJLElBQUk7U0FBcEMsRUFBcUU7OztxREFJNUU7ZUFBTzs7Ozs7Ozs7QUMxQ1gsQUFpQkEsSUFBTTtnQ0FBNEI7OztJQU9oQzt1QkFBWSxRQUFhOzs7YUFGZixNQUFHQTthQUdOLFNBQVM7OztpREFHTjtlQUFPOzs7bURBQ1A7O2lEQUdSO2VBQU8sS0FBSyxPQUFPLEtBQUs7OzsyQ0FHdEIsTUFDRjtlQUFPLElBQUksVUFBVSxLQUFLLE9BQU8sS0FBSyxXQUFXOzs7Ozs7SUFRbkQ7dUJBQVk7OzthQUZGLE1BQUdBO2FBR04sUUFBUTs7O2lEQUdSLE9BQ0w7YUFBSyxRQUFROzs7aURBR0w7ZUFBTzs7O21EQUNQOztpREFHUjtlQUFPLEtBQUs7Ozt5RUFHSyxRQUNqQjtjQUFNLElBQUksTUFBTTs7O3FEQUdULE9BQ1A7Y0FBTSxJQUFJLE1BQU07OzsyQ0FHZCxNQUNGO2VBQU8sSUFBSSxVQUFVLEtBQUssT0FBTzs7Ozs7Ozt1QkFPdkI7OzthQUNMLFNBQVM7OzsrQ0FJZDtlQUFPLElBQUksVUFBVSxLQUFLOzs7Ozs7QUFJOUIsQUFBTyxJQUFNLGFBQWE7QUFFMUIsSUFBTSxpQkFBaUIsT0FBTzs7SUFxQzVCO2tCQUFZO1lBQWU7Ozs7YUFOVCxhQUF5RDthQUU1RCxRQUFzQjthQUNiLGlCQUE2QzthQUMzQyxtQkFBc0I7YUFHekMsU0FBUzthQUNULHVCQUF3Qix3QkFBd0I7OztTQXBDaEQsb0JBQUksS0FDVDtZQUFJLFFBQVEsUUFBUSxRQUFRLFdBQVcsT0FBTyxJQUFJLEtBQUssS0FBSztZQUN4RCxlQUFlLEtBQUssS0FBSyxZQUFZLElBQUksT0FBTyxPQUFPLElBQUk7WUFDM0QsQ0FBQyxPQUFPLGFBQWEsTUFBTSxPQUFPLElBQUksVUFBVTtZQUVoRCxZQUF5QjtZQUV6QixJQUFJLGVBQWUsSUFBSSxZQUFZLGFBQWE7Z0JBQzlDLFlBQXVCLElBQUksWUFBWTt3QkFDL0IsVUFBVTtlQUNqQixJQUFJLElBQUksYUFBYTt3QkFDZCxJQUFJLFlBQVk7O2VBR3RCLElBQUksUUFBUSxJQUFJLFVBQVUsS0FBSzs7O1NBR2xDLHlCQUFPLEtBQ1o7ZUFBTyxPQUFPLFFBQVEsWUFBWSxJQUFJOzs7U0FHakMsbURBQW9CLE1BQ3pCO2VBQU87Ozt3REFpQkksVUFBa0JFLGNBQzdCO1lBQUksT0FBTyxLQUFLLGFBQWEsS0FBSyxjQUFjRDtZQUM1QyxNQUFNLEtBQUssWUFBWSxLQUFLLGFBQWEsSUFBSUU7WUFDN0MsSUFBSUQ7OztzRUFHVSxVQUFrQixNQUNwQzthQUFLLGlCQUFpQixLQUFLLGtCQUFrQkQ7YUFDeEMsZUFBZSxZQUFZOzs7Z0VBR2pCLFVBQ2Y7WUFBSSxDQUFDLEtBQUssZ0JBQWdCLE9BQU87ZUFDMUIsS0FBSyxlQUFlLGFBQWE7Ozs4REFHMUIsVUFBa0JDLGNBQ2hDO1lBQUksQ0FBQyxLQUFLLFlBQVk7WUFDbEIsTUFBTSxLQUFLLFdBQVc7WUFDdEIsT0FBT0E7OztvRUFJWDthQUFLLGlCQUFpQixLQUFLLGtCQUFrQkQ7ZUFDdEMsS0FBSzs7OzBEQUdBLFVBQ1o7WUFBSSxDQUFDLEtBQUssWUFBWSxPQUFPO2VBQ3RCLEtBQUssV0FBVzs7O2tEQUl2QjtlQUFRLEtBQUssUUFBUSxLQUFLLFNBQVNBOzs7MENBSW5DO2VBQVEsS0FBSyxZQUFZLEtBQUssYUFBYSxJQUFJLEtBQUsscUJBQXFCLEtBQUs7Ozs7OztBQUlsRixpQkFNd0IsS0FDdEI7V0FBTyxLQUFLLElBQUk7Ozs7O0FDaExsQixJQWFFOytCQUFZLFFBQWEsVUFBa0I7OzthQUZqQyxNQUFRRDthQUdYLFNBQVM7YUFDVCxXQUFXOzs7eURBR1I7ZUFBTyxLQUFLLE9BQU8sS0FBSzs7O3lEQUdoQztlQUFPOzs7OztBQUlYLG9DQUE4QyxXQUFnQixjQUM1RDs7bUNBT2MsUUFBYTs7O2lCQUhSLFlBQUc7aUJBQ1YsTUFBUUE7aUJBR1gsU0FBUztpQkFDVCxXQUFXO2lCQUNYLGVBQWU7Ozs2REFJcEI7Z0JBQUksQ0FBQyxLQUFLLFdBQVc7b0JBQ2YsT0FBTyxLQUFLLElBQUksS0FBSyxRQUFRO3FCQUU1QixhQUFhLFFBQVEsZUFDeEI7d0JBQUksTUFBTSxLQUFLLG1CQUFtQjt3QkFDOUI7O3FCQUdELFlBQVk7O21CQUdaLEtBQUssT0FBTyxLQUFLOzs7NkRBSXhCO21CQUFPOzs7Ozs7O0FDckRiOztBQUdBLHFCQUE0QixRQUFhLFVBQWtCLEtBQ3pEOzs7V0FJTyxZQUFZOzs7Ozs7O0FBVXJCLHdCQUErQixTQUFjLFdBQzNDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7In0=
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2xpbW1lci1vYmplY3QtcmVmZXJlbmNlLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9AZ2xpbW1lci9vYmplY3QtcmVmZXJlbmNlL2xpYi91dGlscy50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BnbGltbWVyL29iamVjdC1yZWZlcmVuY2UvbGliL3JlZmVyZW5jZXMvcGF0aC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BnbGltbWVyL29iamVjdC1yZWZlcmVuY2UvbGliL3JlZmVyZW5jZXMvcm9vdC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BnbGltbWVyL29iamVjdC1yZWZlcmVuY2UvbGliL21ldGEudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9AZ2xpbW1lci9vYmplY3QtcmVmZXJlbmNlL2xpYi9yZWZlcmVuY2VzL2Rlc2NyaXB0b3JzLnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvQGdsaW1tZXIvb2JqZWN0LXJlZmVyZW5jZS9saWIvb2JqZWN0LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBmdW5jdGlvbiBFTVBUWV9DQUNIRSgpIHt9XG4iLCJpbXBvcnQgeyBFTVBUWV9DQUNIRSB9IGZyb20gJy4uL3V0aWxzJztcbmltcG9ydCB7IGRpY3QgfSBmcm9tICdAZ2xpbW1lci91dGlsJztcbmltcG9ydCBNZXRhIGZyb20gJy4uL21ldGEnO1xuaW1wb3J0IHsgUHJvcGVydHlSZWZlcmVuY2UgfSBmcm9tICcuL2Rlc2NyaXB0b3JzJztcbmltcG9ydCB7IFBhdGhSZWZlcmVuY2UgYXMgSVBhdGhSZWZlcmVuY2UsIFJlZmVyZW5jZSwgVGFnLCBDVVJSRU5UX1RBRyB9IGZyb20gJ0BnbGltbWVyL3JlZmVyZW5jZSc7XG5pbXBvcnQgeyBEaWN0LCBIYXNHdWlkIH0gZnJvbSAnQGdsaW1tZXIvdXRpbCc7XG5pbXBvcnQgeyBPcHRpb24gfSBmcm9tICdAZ2xpbW1lci9pbnRlcmZhY2VzJztcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgUGF0aFJlZmVyZW5jZTxUPiBpbXBsZW1lbnRzIElQYXRoUmVmZXJlbmNlPFQ+LCBIYXNHdWlkIHtcbiAgcHJpdmF0ZSBwYXJlbnQ6IElQYXRoUmVmZXJlbmNlPGFueT47XG4gIHByaXZhdGUgcHJvcGVydHk6IHN0cmluZztcbiAgcHJvdGVjdGVkIGNhY2hlOiBhbnkgPSBFTVBUWV9DQUNIRTtcbiAgcHJpdmF0ZSBpbm5lcjogT3B0aW9uPFJlZmVyZW5jZTxUPj4gPSBudWxsO1xuICBwcml2YXRlIGNoYWluczogT3B0aW9uPERpY3Q8UGF0aFJlZmVyZW5jZTxhbnk+Pj4gPSBudWxsO1xuICBwcml2YXRlIGxhc3RQYXJlbnRWYWx1ZTogYW55ID0gRU1QVFlfQ0FDSEU7XG4gIHB1YmxpYyBfZ3VpZCA9IDA7XG4gIHB1YmxpYyB0YWc6IFRhZyA9IENVUlJFTlRfVEFHO1xuXG4gIGNvbnN0cnVjdG9yKHBhcmVudDogSVBhdGhSZWZlcmVuY2U8VD4sIHByb3BlcnR5OiBzdHJpbmcpIHtcbiAgICB0aGlzLnBhcmVudCA9IHBhcmVudDtcbiAgICB0aGlzLnByb3BlcnR5ID0gcHJvcGVydHk7XG4gIH1cblxuICB2YWx1ZSgpOiBhbnkge1xuICAgIGxldCB7IGxhc3RQYXJlbnRWYWx1ZSwgcHJvcGVydHksIGlubmVyIH0gPSB0aGlzO1xuICAgIGxldCBwYXJlbnRWYWx1ZSA9IHRoaXMuX3BhcmVudFZhbHVlKCk7XG5cbiAgICBpZiAocGFyZW50VmFsdWUgPT09IG51bGwgfHwgcGFyZW50VmFsdWUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgcmV0dXJuICh0aGlzLmNhY2hlID0gdW5kZWZpbmVkKTtcbiAgICB9XG5cbiAgICBpZiAobGFzdFBhcmVudFZhbHVlID09PSBwYXJlbnRWYWx1ZSkge1xuICAgICAgaW5uZXIgPSB0aGlzLmlubmVyO1xuICAgIH0gZWxzZSB7XG4gICAgICBsZXQgUmVmZXJlbmNlVHlwZSA9XG4gICAgICAgIHR5cGVvZiBwYXJlbnRWYWx1ZSA9PT0gJ29iamVjdCdcbiAgICAgICAgICA/IE1ldGEuZm9yKHBhcmVudFZhbHVlKS5yZWZlcmVuY2VUeXBlRm9yKHByb3BlcnR5KVxuICAgICAgICAgIDogUHJvcGVydHlSZWZlcmVuY2U7XG4gICAgICBpbm5lciA9IHRoaXMuaW5uZXIgPSBuZXcgUmVmZXJlbmNlVHlwZShwYXJlbnRWYWx1ZSwgcHJvcGVydHksIHRoaXMpO1xuICAgIH1cblxuICAgIC8vIGlmICh0eXBlb2YgcGFyZW50VmFsdWUgPT09ICdvYmplY3QnKSB7XG4gICAgLy8gICBNZXRhLmZvcihwYXJlbnRWYWx1ZSkuYWRkUmVmZXJlbmNlKHByb3BlcnR5LCB0aGlzKTtcbiAgICAvLyB9XG5cbiAgICByZXR1cm4gKHRoaXMuY2FjaGUgPSBpbm5lciEudmFsdWUoKSk7XG4gIH1cblxuICBnZXQocHJvcDogc3RyaW5nKTogSVBhdGhSZWZlcmVuY2U8YW55PiB7XG4gICAgbGV0IGNoYWlucyA9IHRoaXMuX2dldENoYWlucygpO1xuICAgIGlmICgocHJvcCBhcyBzdHJpbmcpIGluIGNoYWlucykgcmV0dXJuIGNoYWluc1twcm9wXTtcbiAgICByZXR1cm4gKGNoYWluc1twcm9wXSA9IG5ldyBQYXRoUmVmZXJlbmNlKHRoaXMsIHByb3ApKTtcbiAgfVxuXG4gIGxhYmVsKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICdbcmVmZXJlbmNlIERpcmVjdF0nO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0Q2hhaW5zKCk6IERpY3Q8UGF0aFJlZmVyZW5jZTxhbnk+PiB7XG4gICAgaWYgKHRoaXMuY2hhaW5zKSByZXR1cm4gdGhpcy5jaGFpbnM7XG4gICAgcmV0dXJuICh0aGlzLmNoYWlucyA9IGRpY3Q8UGF0aFJlZmVyZW5jZTxhbnk+PigpKTtcbiAgfVxuXG4gIHByaXZhdGUgX3BhcmVudFZhbHVlKCkge1xuICAgIGxldCBwYXJlbnQgPSB0aGlzLnBhcmVudC52YWx1ZSgpO1xuICAgIHRoaXMubGFzdFBhcmVudFZhbHVlID0gcGFyZW50O1xuICAgIHJldHVybiBwYXJlbnQ7XG4gIH1cbn1cblxuZXhwb3J0IHsgUGF0aFJlZmVyZW5jZSB9O1xuIiwiaW1wb3J0IHsgT3B0aW9uLCBPcGFxdWUsIGRpY3QgfSBmcm9tICdAZ2xpbW1lci91dGlsJztcbmltcG9ydCB7IFBhdGhSZWZlcmVuY2UgfSBmcm9tICcuL3BhdGgnO1xuaW1wb3J0IHsgUm9vdFJlZmVyZW5jZSBhcyBJUm9vdFJlZmVyZW5jZSB9IGZyb20gJy4uL3R5cGVzJztcbmltcG9ydCB7IFBhdGhSZWZlcmVuY2UgYXMgSVBhdGhSZWZlcmVuY2UsIFRhZywgQ1VSUkVOVF9UQUcsIGJ1bXAgfSBmcm9tICdAZ2xpbW1lci9yZWZlcmVuY2UnO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBSb290UmVmZXJlbmNlPFQ+IGltcGxlbWVudHMgSVJvb3RSZWZlcmVuY2U8VD4sIElQYXRoUmVmZXJlbmNlPFQ+IHtcbiAgcHJpdmF0ZSBvYmplY3Q6IFQ7XG4gIHByaXZhdGUgY2hhaW5zID0gZGljdDxQYXRoUmVmZXJlbmNlPGFueT4+KCk7XG4gIHB1YmxpYyB0YWc6IFRhZyA9IENVUlJFTlRfVEFHO1xuXG4gIGNvbnN0cnVjdG9yKG9iamVjdDogVCkge1xuICAgIHRoaXMub2JqZWN0ID0gb2JqZWN0O1xuICB9XG5cbiAgdmFsdWUoKTogVCB7XG4gICAgcmV0dXJuIHRoaXMub2JqZWN0O1xuICB9XG5cbiAgdXBkYXRlKG9iamVjdDogVCkge1xuICAgIHRoaXMub2JqZWN0ID0gb2JqZWN0O1xuICAgIGJ1bXAoKTtcbiAgfVxuXG4gIGdldDxVPihwcm9wOiBzdHJpbmcpOiBJUGF0aFJlZmVyZW5jZTxVPiB7XG4gICAgbGV0IGNoYWlucyA9IHRoaXMuY2hhaW5zO1xuICAgIGlmICgocHJvcCBhcyBzdHJpbmcpIGluIGNoYWlucykgcmV0dXJuIGNoYWluc1twcm9wXTtcbiAgICByZXR1cm4gKGNoYWluc1twcm9wXSA9IG5ldyBQYXRoUmVmZXJlbmNlKHRoaXMsIHByb3ApKTtcbiAgfVxuXG4gIGNoYWluRm9yPFU+KHByb3A6IHN0cmluZyk6IE9wdGlvbjxJUGF0aFJlZmVyZW5jZTxVPj4ge1xuICAgIGxldCBjaGFpbnMgPSB0aGlzLmNoYWlucztcbiAgICBpZiAoKHByb3AgYXMgc3RyaW5nKSBpbiBjaGFpbnMpIHJldHVybiBjaGFpbnNbcHJvcF07XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBwYXRoKHN0cmluZzogc3RyaW5nKTogSVBhdGhSZWZlcmVuY2U8T3BhcXVlPiB7XG4gICAgcmV0dXJuIHRoaXMucmVmZXJlbmNlRnJvbVBhcnRzKHN0cmluZy5zcGxpdCgnLicpKTtcbiAgfVxuXG4gIHJlZmVyZW5jZUZyb21QYXJ0cyhwYXJ0czogc3RyaW5nW10pOiBJUGF0aFJlZmVyZW5jZTxPcGFxdWU+IHtcbiAgICByZXR1cm4gcGFydHMucmVkdWNlKFxuICAgICAgKHJlZiwgcGFydCkgPT4gcmVmLmdldChwYXJ0KSBhcyBJUGF0aFJlZmVyZW5jZTxPcGFxdWU+LFxuICAgICAgdGhpcyBhcyBJUGF0aFJlZmVyZW5jZTxPcGFxdWU+XG4gICAgKTtcbiAgfVxuXG4gIGxhYmVsKCkge1xuICAgIHJldHVybiAnW3JlZmVyZW5jZSBSb290XSc7XG4gIH1cbn1cbiIsImltcG9ydCB7IFByb3BlcnR5UmVmZXJlbmNlIH0gZnJvbSAnLi9yZWZlcmVuY2VzL2Rlc2NyaXB0b3JzJztcbmltcG9ydCBSb290UmVmZXJlbmNlIGZyb20gJy4vcmVmZXJlbmNlcy9yb290JztcbmltcG9ydCB7IE1ldGFPcHRpb25zIH0gZnJvbSAnLi90eXBlcyc7XG5cbmltcG9ydCB7IE9wdGlvbiwgRGljdCwgRGljdFNldCwgSGFzR3VpZCwgU2V0LCBkaWN0IH0gZnJvbSAnQGdsaW1tZXIvdXRpbCc7XG5cbmltcG9ydCB7XG4gIFJvb3RSZWZlcmVuY2VGYWN0b3J5LFxuICBQYXRoUmVmZXJlbmNlRmFjdG9yeSxcbiAgTWV0YSBhcyBJTWV0YSxcbiAgUm9vdFJlZmVyZW5jZSBhcyBJUm9vdFJlZmVyZW5jZSxcbn0gZnJvbSAnLi90eXBlcyc7XG5cbmltcG9ydCB7IFBhdGhSZWZlcmVuY2UgYXMgSVBhdGhSZWZlcmVuY2UsIENVUlJFTlRfVEFHIH0gZnJvbSAnQGdsaW1tZXIvcmVmZXJlbmNlJztcblxuaW1wb3J0IHsgSW5uZXJSZWZlcmVuY2VGYWN0b3J5IH0gZnJvbSAnLi9yZWZlcmVuY2VzL2Rlc2NyaXB0b3JzJztcblxuY29uc3QgTk9PUF9ERVNUUk9ZID0geyBkZXN0cm95KCkge30gfTtcblxuY2xhc3MgQ29uc3RQYXRoIGltcGxlbWVudHMgSVBhdGhSZWZlcmVuY2U8YW55PiB7XG4gIHByaXZhdGUgcGFyZW50OiBhbnk7XG4gIHByaXZhdGUgcHJvcGVydHk6IHN0cmluZztcbiAgcHVibGljIHRhZyA9IENVUlJFTlRfVEFHO1xuXG4gIGNvbnN0cnVjdG9yKHBhcmVudDogYW55LCBfcHJvcGVydHk6IHN0cmluZykge1xuICAgIHRoaXMucGFyZW50ID0gcGFyZW50O1xuICB9XG5cbiAgY2hhaW4oKSB7XG4gICAgcmV0dXJuIE5PT1BfREVTVFJPWTtcbiAgfVxuICBub3RpZnkoKSB7fVxuXG4gIHZhbHVlKCkge1xuICAgIHJldHVybiB0aGlzLnBhcmVudFt0aGlzLnByb3BlcnR5XTtcbiAgfVxuXG4gIGdldChwcm9wOiBzdHJpbmcpOiBJUGF0aFJlZmVyZW5jZTxhbnk+IHtcbiAgICByZXR1cm4gbmV3IENvbnN0UGF0aCh0aGlzLnBhcmVudFt0aGlzLnByb3BlcnR5XSwgcHJvcCk7XG4gIH1cbn1cblxuY2xhc3MgQ29uc3RSb290IGltcGxlbWVudHMgSVJvb3RSZWZlcmVuY2U8YW55PiB7XG4gIHByaXZhdGUgaW5uZXI6IGFueTtcbiAgcHVibGljIHRhZyA9IENVUlJFTlRfVEFHO1xuXG4gIGNvbnN0cnVjdG9yKHZhbHVlOiBhbnkpIHtcbiAgICB0aGlzLmlubmVyID0gdmFsdWU7XG4gIH1cblxuICB1cGRhdGUoaW5uZXI6IGFueSkge1xuICAgIHRoaXMuaW5uZXIgPSBpbm5lcjtcbiAgfVxuXG4gIGNoYWluKCkge1xuICAgIHJldHVybiBOT09QX0RFU1RST1k7XG4gIH1cbiAgbm90aWZ5KCkge31cblxuICB2YWx1ZSgpOiBhbnkge1xuICAgIHJldHVybiB0aGlzLmlubmVyO1xuICB9XG5cbiAgcmVmZXJlbmNlRnJvbVBhcnRzKF9wYXJ0czogc3RyaW5nW10pOiBJUGF0aFJlZmVyZW5jZTxhbnk+IHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ05vdCBpbXBsZW1lbnRlZCcpO1xuICB9XG5cbiAgY2hhaW5Gb3IoX3Byb3A6IHN0cmluZyk6IElQYXRoUmVmZXJlbmNlPGFueT4ge1xuICAgIHRocm93IG5ldyBFcnJvcignTm90IGltcGxlbWVudGVkJyk7XG4gIH1cblxuICBnZXQocHJvcDogc3RyaW5nKTogSVBhdGhSZWZlcmVuY2U8YW55PiB7XG4gICAgcmV0dXJuIG5ldyBDb25zdFBhdGgodGhpcy5pbm5lciwgcHJvcCk7XG4gIH1cbn1cblxuY2xhc3MgQ29uc3RNZXRhIC8qaW1wbGVtZW50cyBJTWV0YSovIHtcbiAgcHJpdmF0ZSBvYmplY3Q6IGFueTtcblxuICBjb25zdHJ1Y3RvcihvYmplY3Q6IGFueSkge1xuICAgIHRoaXMub2JqZWN0ID0gb2JqZWN0O1xuICB9XG5cbiAgcm9vdCgpOiBDb25zdFJvb3Qge1xuICAgIHJldHVybiBuZXcgQ29uc3RSb290KHRoaXMub2JqZWN0KTtcbiAgfVxufVxuXG5leHBvcnQgY29uc3QgQ0xBU1NfTUVUQSA9ICdkZjhiZTRjOC00ZTg5LTQ0ZTItYThmOS01NTBjOGRhY2RjYTcnO1xuXG5jb25zdCBoYXNPd25Qcm9wZXJ0eSA9IE9iamVjdC5oYXNPd25Qcm9wZXJ0eTtcblxuY2xhc3MgTWV0YSBpbXBsZW1lbnRzIElNZXRhLCBIYXNHdWlkIHtcbiAgc3RhdGljIGZvcihvYmo6IGFueSk6IElNZXRhIHtcbiAgICBpZiAob2JqID09PSBudWxsIHx8IG9iaiA9PT0gdW5kZWZpbmVkKSByZXR1cm4gbmV3IE1ldGEob2JqLCB7fSk7XG4gICAgaWYgKGhhc093blByb3BlcnR5LmNhbGwob2JqLCAnX21ldGEnKSAmJiBvYmouX21ldGEpIHJldHVybiBvYmouX21ldGE7XG4gICAgaWYgKCFPYmplY3QuaXNFeHRlbnNpYmxlKG9iaikpIHJldHVybiBuZXcgQ29uc3RNZXRhKG9iaikgYXMgYW55O1xuXG4gICAgbGV0IE1ldGFUb1VzZTogdHlwZW9mIE1ldGEgPSBNZXRhO1xuXG4gICAgaWYgKG9iai5jb25zdHJ1Y3RvciAmJiBvYmouY29uc3RydWN0b3JbQ0xBU1NfTUVUQV0pIHtcbiAgICAgIGxldCBjbGFzc01ldGE6IENsYXNzTWV0YSA9IG9iai5jb25zdHJ1Y3RvcltDTEFTU19NRVRBXTtcbiAgICAgIE1ldGFUb1VzZSA9IGNsYXNzTWV0YS5JbnN0YW5jZU1ldGFDb25zdHJ1Y3RvcjtcbiAgICB9IGVsc2UgaWYgKG9ialtDTEFTU19NRVRBXSkge1xuICAgICAgTWV0YVRvVXNlID0gb2JqW0NMQVNTX01FVEFdLkluc3RhbmNlTWV0YUNvbnN0cnVjdG9yO1xuICAgIH1cblxuICAgIHJldHVybiAob2JqLl9tZXRhID0gbmV3IE1ldGFUb1VzZShvYmosIHt9KSk7XG4gIH1cblxuICBzdGF0aWMgZXhpc3RzKG9iajogYW55KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHR5cGVvZiBvYmogPT09ICdvYmplY3QnICYmIG9iai5fbWV0YTtcbiAgfVxuXG4gIHN0YXRpYyBtZXRhZGF0YUZvclByb3BlcnR5KF9rZXk6IHN0cmluZyk6IGFueSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBwcml2YXRlIG9iamVjdDogYW55O1xuICBwcml2YXRlIFJvb3RSZWZlcmVuY2VGYWN0b3J5OiBSb290UmVmZXJlbmNlRmFjdG9yeTxhbnk+O1xuICBwcml2YXRlIHJvb3RDYWNoZTogSVJvb3RSZWZlcmVuY2U8YW55PjtcbiAgcHJpdmF0ZSByZWZlcmVuY2VzOiBPcHRpb248RGljdDxEaWN0U2V0PElQYXRoUmVmZXJlbmNlPGFueT4gJiBIYXNHdWlkPj4+ID0gbnVsbDtcbiAgcHVibGljIF9ndWlkOiBudW1iZXI7XG4gIHByb3RlY3RlZCBzbG90czogT3B0aW9uPERpY3Q8YW55Pj4gPSBudWxsO1xuICBwcm90ZWN0ZWQgcmVmZXJlbmNlVHlwZXM6IE9wdGlvbjxEaWN0PElubmVyUmVmZXJlbmNlRmFjdG9yeTxhbnk+Pj4gPSBudWxsO1xuICBwcm90ZWN0ZWQgcHJvcGVydHlNZXRhZGF0YTogT3B0aW9uPERpY3Q8YW55Pj4gPSBudWxsO1xuXG4gIGNvbnN0cnVjdG9yKG9iamVjdDogYW55LCB7IFJvb3RSZWZlcmVuY2VGYWN0b3J5IH06IE1ldGFPcHRpb25zKSB7XG4gICAgdGhpcy5vYmplY3QgPSBvYmplY3Q7XG4gICAgdGhpcy5Sb290UmVmZXJlbmNlRmFjdG9yeSA9IChSb290UmVmZXJlbmNlRmFjdG9yeSB8fCBSb290UmVmZXJlbmNlKSBhcyBSb290UmVmZXJlbmNlRmFjdG9yeTxcbiAgICAgIGFueVxuICAgID47XG4gIH1cblxuICBhZGRSZWZlcmVuY2UocHJvcGVydHk6IHN0cmluZywgcmVmZXJlbmNlOiBJUGF0aFJlZmVyZW5jZTxhbnk+ICYgSGFzR3VpZCkge1xuICAgIGxldCByZWZzID0gKHRoaXMucmVmZXJlbmNlcyA9XG4gICAgICB0aGlzLnJlZmVyZW5jZXMgfHwgZGljdDxEaWN0U2V0PElQYXRoUmVmZXJlbmNlPGFueT4gJiBIYXNHdWlkPj4oKSk7XG4gICAgbGV0IHNldCA9IChyZWZzW3Byb3BlcnR5XSA9IHJlZnNbcHJvcGVydHldIHx8IG5ldyBEaWN0U2V0PElQYXRoUmVmZXJlbmNlPGFueT4gJiBIYXNHdWlkPigpKTtcbiAgICBzZXQuYWRkKHJlZmVyZW5jZSk7XG4gIH1cblxuICBhZGRSZWZlcmVuY2VUeXBlRm9yKHByb3BlcnR5OiBzdHJpbmcsIHR5cGU6IFBhdGhSZWZlcmVuY2VGYWN0b3J5PGFueT4pIHtcbiAgICB0aGlzLnJlZmVyZW5jZVR5cGVzID0gdGhpcy5yZWZlcmVuY2VUeXBlcyB8fCBkaWN0PFBhdGhSZWZlcmVuY2VGYWN0b3J5PGFueT4+KCk7XG4gICAgdGhpcy5yZWZlcmVuY2VUeXBlc1twcm9wZXJ0eV0gPSB0eXBlO1xuICB9XG5cbiAgcmVmZXJlbmNlVHlwZUZvcihwcm9wZXJ0eTogc3RyaW5nKTogSW5uZXJSZWZlcmVuY2VGYWN0b3J5PGFueT4ge1xuICAgIGlmICghdGhpcy5yZWZlcmVuY2VUeXBlcykgcmV0dXJuIFByb3BlcnR5UmVmZXJlbmNlO1xuICAgIHJldHVybiB0aGlzLnJlZmVyZW5jZVR5cGVzW3Byb3BlcnR5XSB8fCBQcm9wZXJ0eVJlZmVyZW5jZTtcbiAgfVxuXG4gIHJlbW92ZVJlZmVyZW5jZShwcm9wZXJ0eTogc3RyaW5nLCByZWZlcmVuY2U6IElQYXRoUmVmZXJlbmNlPGFueT4gJiBIYXNHdWlkKSB7XG4gICAgaWYgKCF0aGlzLnJlZmVyZW5jZXMpIHJldHVybjtcbiAgICBsZXQgc2V0ID0gdGhpcy5yZWZlcmVuY2VzW3Byb3BlcnR5XTtcbiAgICBzZXQuZGVsZXRlKHJlZmVyZW5jZSk7XG4gIH1cblxuICBnZXRSZWZlcmVuY2VUeXBlcygpOiBEaWN0PElubmVyUmVmZXJlbmNlRmFjdG9yeTxhbnk+PiB7XG4gICAgdGhpcy5yZWZlcmVuY2VUeXBlcyA9IHRoaXMucmVmZXJlbmNlVHlwZXMgfHwgZGljdDxQYXRoUmVmZXJlbmNlRmFjdG9yeTxhbnk+PigpO1xuICAgIHJldHVybiB0aGlzLnJlZmVyZW5jZVR5cGVzO1xuICB9XG5cbiAgcmVmZXJlbmNlc0Zvcihwcm9wZXJ0eTogc3RyaW5nKTogT3B0aW9uPFNldDxJUGF0aFJlZmVyZW5jZTxhbnk+Pj4ge1xuICAgIGlmICghdGhpcy5yZWZlcmVuY2VzKSByZXR1cm4gbnVsbDtcbiAgICByZXR1cm4gdGhpcy5yZWZlcmVuY2VzW3Byb3BlcnR5XTtcbiAgfVxuXG4gIGdldFNsb3RzKCkge1xuICAgIHJldHVybiAodGhpcy5zbG90cyA9IHRoaXMuc2xvdHMgfHwgZGljdCgpKTtcbiAgfVxuXG4gIHJvb3QoKTogSVJvb3RSZWZlcmVuY2U8YW55PiB7XG4gICAgcmV0dXJuICh0aGlzLnJvb3RDYWNoZSA9IHRoaXMucm9vdENhY2hlIHx8IG5ldyB0aGlzLlJvb3RSZWZlcmVuY2VGYWN0b3J5KHRoaXMub2JqZWN0KSk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgTWV0YTtcblxuaW50ZXJmYWNlIENsYXNzTWV0YSB7XG4gIEluc3RhbmNlTWV0YUNvbnN0cnVjdG9yOiB0eXBlb2YgTWV0YTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG1ldGFGb3Iob2JqOiBhbnkpOiBJTWV0YSB7XG4gIHJldHVybiBNZXRhLmZvcihvYmopO1xufVxuIiwiaW1wb3J0IE1ldGEgZnJvbSAnLi4vbWV0YSc7XG5pbXBvcnQgeyBSZWZlcmVuY2UsIFRhZywgQ1VSUkVOVF9UQUcgfSBmcm9tICdAZ2xpbW1lci9yZWZlcmVuY2UnO1xuaW1wb3J0IHsgTm90aWZpYWJsZVJlZmVyZW5jZSB9IGZyb20gJy4uL3R5cGVzJztcblxuZXhwb3J0IGludGVyZmFjZSBJbm5lclJlZmVyZW5jZUZhY3Rvcnk8VD4ge1xuICBuZXcgKG9iamVjdDogYW55LCBwcm9wZXJ0eTogc3RyaW5nLCBvdXRlcjogTm90aWZpYWJsZVJlZmVyZW5jZTxhbnk+KTogUmVmZXJlbmNlPFQ+O1xufVxuXG5leHBvcnQgY2xhc3MgUHJvcGVydHlSZWZlcmVuY2U8VD4gaW1wbGVtZW50cyBSZWZlcmVuY2U8VD4ge1xuICBwcml2YXRlIG9iamVjdDogYW55O1xuICBwcml2YXRlIHByb3BlcnR5OiBzdHJpbmc7XG4gIHB1YmxpYyB0YWc6IFRhZyA9IENVUlJFTlRfVEFHO1xuXG4gIGNvbnN0cnVjdG9yKG9iamVjdDogYW55LCBwcm9wZXJ0eTogc3RyaW5nLCBfb3V0ZXI6IE5vdGlmaWFibGVSZWZlcmVuY2U8VD4pIHtcbiAgICB0aGlzLm9iamVjdCA9IG9iamVjdDtcbiAgICB0aGlzLnByb3BlcnR5ID0gcHJvcGVydHk7XG4gIH1cblxuICB2YWx1ZSgpIHtcbiAgICByZXR1cm4gdGhpcy5vYmplY3RbdGhpcy5wcm9wZXJ0eV07XG4gIH1cblxuICBsYWJlbCgpIHtcbiAgICByZXR1cm4gJ1tyZWZlcmVuY2UgUHJvcGVydHldJztcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gQ29tcHV0ZWRSZWZlcmVuY2VCbHVlcHJpbnQ8VD4oXG4gIF9wcm9wZXJ0eTogYW55LFxuICBkZXBlbmRlbmNpZXM6IGFueVxuKTogSW5uZXJSZWZlcmVuY2VGYWN0b3J5PFQ+IHtcbiAgcmV0dXJuIGNsYXNzIENvbXB1dGVkUmVmZXJlbmNlPFQ+IGltcGxlbWVudHMgUmVmZXJlbmNlPFQ+IHtcbiAgICBwcml2YXRlIG9iamVjdDogYW55O1xuICAgIHByaXZhdGUgcHJvcGVydHk6IHN0cmluZztcbiAgICBwcml2YXRlIGRlcGVuZGVuY2llczogc3RyaW5nW11bXTtcbiAgICBwcml2YXRlIGluc3RhbGxlZCA9IGZhbHNlO1xuICAgIHB1YmxpYyB0YWc6IFRhZyA9IENVUlJFTlRfVEFHO1xuXG4gICAgY29uc3RydWN0b3Iob2JqZWN0OiBhbnksIHByb3BlcnR5OiBzdHJpbmcpIHtcbiAgICAgIHRoaXMub2JqZWN0ID0gb2JqZWN0O1xuICAgICAgdGhpcy5wcm9wZXJ0eSA9IHByb3BlcnR5O1xuICAgICAgdGhpcy5kZXBlbmRlbmNpZXMgPSBkZXBlbmRlbmNpZXM7XG4gICAgfVxuXG4gICAgdmFsdWUoKTogVCB7XG4gICAgICBpZiAoIXRoaXMuaW5zdGFsbGVkKSB7XG4gICAgICAgIGxldCByb290ID0gTWV0YS5mb3IodGhpcy5vYmplY3QpLnJvb3QoKTtcblxuICAgICAgICB0aGlzLmRlcGVuZGVuY2llcy5mb3JFYWNoKGRlcCA9PiB7XG4gICAgICAgICAgbGV0IHJlZiA9IHJvb3QucmVmZXJlbmNlRnJvbVBhcnRzKGRlcCk7XG4gICAgICAgICAgcmVmLnZhbHVlKCk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuaW5zdGFsbGVkID0gdHJ1ZTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHRoaXMub2JqZWN0W3RoaXMucHJvcGVydHldO1xuICAgIH1cblxuICAgIGxhYmVsKCkge1xuICAgICAgcmV0dXJuICdbcmVmZXJlbmNlIENvbXB1dGVkXSc7XG4gICAgfVxuICB9O1xufVxuIiwiaW1wb3J0IHsgYnVtcCB9IGZyb20gJ0BnbGltbWVyL3JlZmVyZW5jZSc7XG5cbi8vIGltcG9ydCB7IG1ldGFGb3IgfSBmcm9tICcuL21ldGEnO1xuLy8gaW1wb3J0IHsgaW50ZXJuIH0gZnJvbSAnQGdsaW1tZXIvdXRpbCc7XG5cbmV4cG9ydCBmdW5jdGlvbiBzZXRQcm9wZXJ0eShwYXJlbnQ6IGFueSwgcHJvcGVydHk6IHN0cmluZywgdmFsOiBhbnkpIHtcbiAgLy8gbGV0IHJvb3RQcm9wID0gbWV0YUZvcihwYXJlbnQpLnJvb3QoKS5jaGFpbkZvcihwcm9wZXJ0eSkpO1xuXG4gIC8vIGxldCByZWZlcmVuY2VzVG9Ob3RpZnkgPSBtZXRhRm9yKHBhcmVudCkucmVmZXJlbmNlc0Zvcihwcm9wZXJ0eSkpO1xuXG4gIHBhcmVudFtwcm9wZXJ0eV0gPSB2YWw7XG4gIGJ1bXAoKTtcblxuICAvLyBpZiAocmVmZXJlbmNlc1RvTm90aWZ5KSB7XG4gIC8vICAgcmVmZXJlbmNlc1RvTm90aWZ5LmZvckVhY2goZnVuY3Rpb24ocmVmKSB7IHJlZi5ub3RpZnkoKTsgfSk7XG4gIC8vIH1cblxuICAvLyBpZiAocm9vdFByb3ApIHJvb3RQcm9wLm5vdGlmeSgpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbm90aWZ5UHJvcGVydHkoX3BhcmVudDogYW55LCBfcHJvcGVydHk6IHN0cmluZykge1xuICBidW1wKCk7XG4gIC8vIGxldCByb290UHJvcCA9IG1ldGFGb3IocGFyZW50KS5yb290KCkuY2hhaW5Gb3IocHJvcGVydHkpKTtcblxuICAvLyBsZXQgcmVmZXJlbmNlc1RvTm90aWZ5ID0gbWV0YUZvcihwYXJlbnQpLnJlZmVyZW5jZXNGb3IocHJvcGVydHkpKTtcblxuICAvLyBpZiAocmVmZXJlbmNlc1RvTm90aWZ5KSB7XG4gIC8vICAgcmVmZXJlbmNlc1RvTm90aWZ5LmZvckVhY2goZnVuY3Rpb24ocmVmKSB7IHJlZi5ub3RpZnkoKTsgfSk7XG4gIC8vIH1cblxuICAvLyBpZiAocm9vdFByb3ApIHJvb3RQcm9wLm5vdGlmeSgpO1xufVxuIl0sIm5hbWVzIjpbIkNVUlJFTlRfVEFHIiwiZGljdCIsInJlZmVyZW5jZSIsIkRpY3RTZXQiXSwibWFwcGluZ3MiOiI7O3VCQUErQjs7OztBQ0EvQixJQWtCRTsyQkFBWSxRQUEyQjs7O2FBUHhCLFFBQVE7YUFDVixRQUF5QjthQUN4QixTQUFxQzthQUM1QixrQkFBUTthQUNuQixRQUFHO2FBQ0wsTUFBUUE7YUFHWCxTQUFTO2FBQ1QsV0FBVzs7OztZQUlWO1lBQWlCO1lBQVUsUUFBVTs7WUFDdkMsY0FBYyxLQUFLO1lBRW5CLGdCQUFnQixRQUFRLGdCQUFnQixXQUFXO21CQUM3QyxLQUFLLFFBQVE7O1lBR25CLG9CQUFvQixhQUFhO29CQUMzQixLQUFLO2VBQ1I7Z0JBQ0QsZ0JBQ0YsT0FBTyxnQkFBZ0IsV0FDbkIsS0FBSyxJQUFJLGFBQWEsaUJBQWlCLFlBQ3ZDO29CQUNFLEtBQUssUUFBUSxJQUFJLGNBQWMsYUFBYSxVQUFVOzs7OztlQU94RCxLQUFLLFFBQVEsTUFBTzs7OytDQUcxQixNQUNGO1lBQUksU0FBUyxLQUFLO1lBQ2IsUUFBbUIsUUFBUSxPQUFPLE9BQU87ZUFDdEMsT0FBTyxRQUFRLElBQUksY0FBYyxNQUFNOzs7cURBSS9DO2VBQU87OzsrREFJUDtZQUFJLEtBQUssUUFBUSxPQUFPLEtBQUs7ZUFDckIsS0FBSyxTQUFTQzs7O21FQUl0QjtZQUFJLFNBQVMsS0FBSyxPQUFPO2FBQ3BCLGtCQUFrQjtlQUNoQjs7Ozs7Ozs7QUNsRVgsSUFVRTsyQkFBWTs7O2FBSEUsU0FBR0E7YUFDUCxNQUFRRDthQUdYLFNBQVM7OztxREFJZDtlQUFPLEtBQUs7OztxREFHUCxRQUNMO2FBQUssU0FBUzs7OzsrQ0FJVCxNQUNMO1lBQUksU0FBUyxLQUFLO1lBQ2IsUUFBbUIsUUFBUSxPQUFPLE9BQU87ZUFDdEMsT0FBTyxRQUFRLElBQUksY0FBYyxNQUFNOzs7eURBR3JDLE1BQ1Y7WUFBSSxTQUFTLEtB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

@@ -1,2 +0,2 @@

"use strict";
'use strict';

@@ -7,5 +7,5 @@ Object.defineProperty(exports, "__esModule", {

var _descriptors = require("./lib/references/descriptors");
var _descriptors = require('./lib/references/descriptors');
Object.defineProperty(exports, "ComputedReferenceBlueprint", {
Object.defineProperty(exports, 'ComputedReferenceBlueprint', {
enumerable: true,

@@ -16,3 +16,3 @@ get: function () {

});
Object.defineProperty(exports, "PropertyReference", {
Object.defineProperty(exports, 'PropertyReference', {
enumerable: true,

@@ -24,5 +24,5 @@ get: function () {

var _meta = require("./lib/meta");
var _meta = require('./lib/meta');
Object.defineProperty(exports, "CLASS_META", {
Object.defineProperty(exports, 'CLASS_META', {
enumerable: true,

@@ -33,3 +33,3 @@ get: function () {

});
Object.defineProperty(exports, "Meta", {
Object.defineProperty(exports, 'Meta', {
enumerable: true,

@@ -40,3 +40,3 @@ get: function () {

});
Object.defineProperty(exports, "metaFor", {
Object.defineProperty(exports, 'metaFor', {
enumerable: true,

@@ -48,5 +48,5 @@ get: function () {

var _object = require("./lib/object");
var _object = require('./lib/object');
Object.defineProperty(exports, "setProperty", {
Object.defineProperty(exports, 'setProperty', {
enumerable: true,

@@ -57,3 +57,3 @@ get: function () {

});
Object.defineProperty(exports, "notifyProperty", {
Object.defineProperty(exports, 'notifyProperty', {
enumerable: true,

@@ -65,5 +65,5 @@ get: function () {

var _path = require("./lib/references/path");
var _path = require('./lib/references/path');
Object.defineProperty(exports, "ObjectReference", {
Object.defineProperty(exports, 'ObjectReference', {
enumerable: true,

@@ -75,5 +75,5 @@ get: function () {

var _root = require("./lib/references/root");
var _root = require('./lib/references/root');
Object.defineProperty(exports, "UpdatableReference", {
Object.defineProperty(exports, 'UpdatableReference', {
enumerable: true,

@@ -85,5 +85,5 @@ get: function () {

var _reference = require("@glimmer/reference");
var _reference = require('@glimmer/reference');
Object.defineProperty(exports, "ConstReference", {
Object.defineProperty(exports, 'ConstReference', {
enumerable: true,

@@ -94,3 +94,3 @@ get: function () {

});
Object.defineProperty(exports, "isConst", {
Object.defineProperty(exports, 'isConst', {
enumerable: true,

@@ -103,2 +103,2 @@ get: function () {

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wYWNrYWdlcy9AZ2xpbW1lci9vYmplY3QtcmVmZXJlbmNlL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O3dCQUFTLEFBQTBCOzs7Ozs7d0JBQXlCLEFBQWlCLEFBQUUsQUFBTSxBQUE4QixBQUFDLEFBQ3BILEFBQU87Ozs7Ozs7OztpQkFBRSxBQUFVOzs7Ozs7eUNBQUUsQUFBTyxBQUFJLEFBQUk7Ozs7OztpQkFBRSxBQUFPLEFBQUUsQUFBTSxBQUFZLEFBQUMsQUFDbEUsQUFBTzs7Ozs7Ozs7O21CQUFFLEFBQVc7Ozs7OzttQkFBRSxBQUFjLEFBQUUsQUFBTSxBQUFjLEFBQUMsQUFFM0QsQUFBTzs7Ozs7Ozs7O3lDQUFFLEFBQU8sQUFBSSxBQUFlLEFBQUUsQUFBTSxBQUF1QixBQUFDLEFBQ25FLEFBQU87Ozs7Ozs7Ozt5Q0FBRSxBQUFPLEFBQUksQUFBa0IsQUFBRSxBQUFNLEFBQXVCLEFBQUMsQUFDdEUsQUFBTzs7Ozs7Ozs7O3NCQUFFLEFBQWM7Ozs7OztzQkFBRSxBQUFPLEFBQUUsQUFBTSxBQUFvQixBQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHsgQ29tcHV0ZWRSZWZlcmVuY2VCbHVlcHJpbnQsIElubmVyUmVmZXJlbmNlRmFjdG9yeSwgUHJvcGVydHlSZWZlcmVuY2UgfSBmcm9tIFwiLi9saWIvcmVmZXJlbmNlcy9kZXNjcmlwdG9yc1wiO1xuZXhwb3J0IHsgQ0xBU1NfTUVUQSwgZGVmYXVsdCBhcyBNZXRhLCBtZXRhRm9yIH0gZnJvbSBcIi4vbGliL21ldGFcIjtcbmV4cG9ydCB7IHNldFByb3BlcnR5LCBub3RpZnlQcm9wZXJ0eSB9IGZyb20gJy4vbGliL29iamVjdCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi90eXBlcyc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIE9iamVjdFJlZmVyZW5jZSB9IGZyb20gJy4vbGliL3JlZmVyZW5jZXMvcGF0aCc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIFVwZGF0YWJsZVJlZmVyZW5jZSB9IGZyb20gJy4vbGliL3JlZmVyZW5jZXMvcm9vdCc7XG5leHBvcnQgeyBDb25zdFJlZmVyZW5jZSwgaXNDb25zdCB9IGZyb20gJ0BnbGltbWVyL3JlZmVyZW5jZSc7XG4iXX0=
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wYWNrYWdlcy9AZ2xpbW1lci9vYmplY3QtcmVmZXJlbmNlL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O3dCQUNFLEFBQTBCOzs7Ozs7d0JBRTFCLEFBQWlCLEFBQ2xCLEFBQU0sQUFBOEIsQUFBQyxBQUN0QyxBQUFPOzs7Ozs7Ozs7aUJBQUUsQUFBVTs7Ozs7O3lDQUFFLEFBQU8sQUFBSSxBQUFJOzs7Ozs7aUJBQUUsQUFBTyxBQUFFLEFBQU0sQUFBWSxBQUFDLEFBQ2xFLEFBQU87Ozs7Ozs7OzttQkFBRSxBQUFXOzs7Ozs7bUJBQUUsQUFBYyxBQUFFLEFBQU0sQUFBYyxBQUFDLEFBRTNELEFBQU87Ozs7Ozs7Ozt5Q0FBRSxBQUFPLEFBQUksQUFBZSxBQUFFLEFBQU0sQUFBdUIsQUFBQyxBQUNuRSxBQUFPOzs7Ozs7Ozs7eUNBQUUsQUFBTyxBQUFJLEFBQWtCLEFBQUUsQUFBTSxBQUF1QixBQUFDLEFBQ3RFLEFBQU87Ozs7Ozs7OztzQkFBRSxBQUFjOzs7Ozs7c0JBQUUsQUFBTyxBQUFFLEFBQU0sQUFBb0IsQUFBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7XG4gIENvbXB1dGVkUmVmZXJlbmNlQmx1ZXByaW50LFxuICBJbm5lclJlZmVyZW5jZUZhY3RvcnksXG4gIFByb3BlcnR5UmVmZXJlbmNlLFxufSBmcm9tICcuL2xpYi9yZWZlcmVuY2VzL2Rlc2NyaXB0b3JzJztcbmV4cG9ydCB7IENMQVNTX01FVEEsIGRlZmF1bHQgYXMgTWV0YSwgbWV0YUZvciB9IGZyb20gJy4vbGliL21ldGEnO1xuZXhwb3J0IHsgc2V0UHJvcGVydHksIG5vdGlmeVByb3BlcnR5IH0gZnJvbSAnLi9saWIvb2JqZWN0JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3R5cGVzJztcbmV4cG9ydCB7IGRlZmF1bHQgYXMgT2JqZWN0UmVmZXJlbmNlIH0gZnJvbSAnLi9saWIvcmVmZXJlbmNlcy9wYXRoJztcbmV4cG9ydCB7IGRlZmF1bHQgYXMgVXBkYXRhYmxlUmVmZXJlbmNlIH0gZnJvbSAnLi9saWIvcmVmZXJlbmNlcy9yb290JztcbmV4cG9ydCB7IENvbnN0UmVmZXJlbmNlLCBpc0NvbnN0IH0gZnJvbSAnQGdsaW1tZXIvcmVmZXJlbmNlJztcbiJdfQ==

@@ -54,6 +54,6 @@ 'use strict';

referenceFromParts(_parts) {
throw new Error("Not implemented");
throw new Error('Not implemented');
}
chainFor(_prop) {
throw new Error("Not implemented");
throw new Error('Not implemented');
}

@@ -72,3 +72,3 @@ get(prop) {

}
const CLASS_META = exports.CLASS_META = "df8be4c8-4e89-44e2-a8f9-550c8dacdca7";
const CLASS_META = exports.CLASS_META = 'df8be4c8-4e89-44e2-a8f9-550c8dacdca7';
const hasOwnProperty = Object.hasOwnProperty;

@@ -140,2 +140,2 @@ class Meta {

}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0YS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL0BnbGltbWVyL29iamVjdC1yZWZlcmVuY2UvbGliL21ldGEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBQSxBQUFPLEFBQUUsQUFBaUIsQUFBRSxBQUFNLEFBQTBCLEFBQUM7O0FBQzdELEFBQU8sQUFBYSxBQUFNLEFBQW1CLEFBQUM7Ozs7QUFHOUMsQUFBTyxBQUFnQixBQUFPLEFBQWdCLEFBQUksQUFBRSxBQUFNLEFBQWUsQUFBQzs7QUFTMUUsQUFBTyxBQUFtQyxBQUFXLEFBQUUsQUFBTSxBQUFvQixBQUFDOzs7O0FBSWxGLE1BQU0sQUFBWSxlQUFHLEVBQUUsQUFBTyxVQUFJLEFBQUMsQUFBRSxBQUFDO0FBRXRDO2dCQUtjLEFBQVcsUUFBRSxBQUFpQixXQUZuQzthQUFHLEFBQUcsQUFBVyxBQUFDLEFBR3ZCLEFBQUk7YUFBQyxBQUFNLFNBQUcsQUFBTSxBQUFDLEFBQ3ZCLEFBQUM7QUFFRCxBQUFLO1lBQUssQUFBTTtlQUFDLEFBQVksQUFBQyxBQUFDLEFBQUM7QUFDaEMsQUFBTTthQUFJLEFBQUMsQ0FFWCxBQUFLO1lBQ0gsQUFBTTtlQUFDLEFBQUksS0FBQyxBQUFNLE9BQUMsQUFBSSxLQUFDLEFBQVEsQUFBQyxBQUFDLEFBQ3BDLEFBQUM7QUFFRCxBQUFHO1FBQUMsQUFBWSxNQUNkLEFBQU07ZUFBQyxJQUFJLEFBQVMsVUFBQyxBQUFJLEtBQUMsQUFBTSxPQUFDLEFBQUksS0FBQyxBQUFRLEFBQUMsV0FBRSxBQUFJLEFBQUMsQUFBQyxBQUN6RCxBQUFDLEFBQ0Y7O0FBZEM7QUFnQkY7Z0JBSWMsQUFBVSxPQUZmO2FBQUcsQUFBRyxBQUFXLEFBQUMsQUFHdkIsQUFBSTthQUFDLEFBQUssUUFBRyxBQUFLLEFBQUMsQUFDckIsQUFBQztBQUVELEFBQU07V0FBQyxBQUFVLE9BQ2YsQUFBSTthQUFDLEFBQUssUUFBRyxBQUFLLEFB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YUFBQyxBQUFjLGlCQUFHLEFBQUksS0FBQyxBQUFjLGtCQUFJLEFBQUksQUFBNkIsQUFBQyxBQUMvRSxBQUFNO2VBQUMsQUFBSSxLQUFDLEFBQWMsQUFBQyxBQUM3QixBQUFDO0FBRUQsQUFBYTtrQkFBQyxBQUFnQixVQUM1QixBQUFFLEFBQUM7WUFBQyxDQUFDLEFBQUksS0FBQyxBQUFVLEFBQUMsWUFBQyxBQUFNLE9BQUMsQUFBSSxBQUFDLEFBQ2xDLEFBQU07ZUFBQyxBQUFJLEtBQUMsQUFBVSxXQUFDLEFBQVEsQUFBQyxBQUFDLEFBQ25DLEFBQUM7QUFFRCxBQUFRO2VBQ04sQUFBTSxBQUFDO2VBQUMsQUFBSSxLQUFDLEFBQUssUUFBRyxBQUFJLEtBQUMsQUFBSyxTQUFJLEFBQUksQUFBRSxBQUFDLEFBQUMsQUFDN0MsQUFBQztBQUVELEFBQUk7V0FDRixBQUFNLEFBQUM7ZUFBQyxBQUFJLEtBQUMsQUFBUyxZQUFHLEFBQUksS0FBQyxBQUFTLGFBQUksSUFBSSxBQUFJLEtBQUMsQUFBb0IscUJBQUMsQUFBSSxLQUFDLEFBQU0sQUFBQyxBQUFDLEFBQUMsQUFDekYsQUFBQyxBQUNGO0FBRUQ7QUE5Q0U7a0JBOENhLEFBQUksQUFBQyxBQU1wQixBQUFNO2lCQUFrQixBQUFRLEtBQzlCLEFBQU07V0FBQyxBQUFJLEtBQUMsQUFBRyxJQUFDLEFBQUcsQUFBQyxBQUFDLEFBQ3ZCLEFBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQcm9wZXJ0eVJlZmVyZW5jZSB9IGZyb20gJy4vcmVmZXJlbmNlcy9kZXNjcmlwdG9ycyc7XG5pbXBvcnQgUm9vdFJlZmVyZW5jZSBmcm9tICcuL3JlZmVyZW5jZXMvcm9vdCc7XG5pbXBvcnQgeyBNZXRhT3B0aW9ucyB9IGZyb20gJy4vdHlwZXMnO1xuXG5pbXBvcnQgeyBPcHRpb24sIERpY3QsIERpY3RTZXQsIEhhc0d1aWQsIFNldCwgZGljdCB9IGZyb20gJ0BnbGltbWVyL3V0aWwnO1xuXG5pbXBvcnQge1xuICBSb290UmVmZXJlbmNlRmFjdG9yeSxcbiAgUGF0aFJlZmVyZW5jZUZhY3RvcnksXG4gIE1ldGEgYXMgSU1ldGEsXG4gIFJvb3RSZWZlcmVuY2UgYXMgSVJvb3RSZWZlcmVuY2Vcbn0gZnJvbSAnLi90eXBlcyc7XG5cbmltcG9ydCB7IFBhdGhSZWZlcmVuY2UgYXMgSVBhdGhSZWZlcmVuY2UsIENVUlJFTlRfVEFHIH0gZnJvbSAnQGdsaW1tZXIvcmVmZXJlbmNlJztcblxuaW1wb3J0IHsgSW5uZXJSZWZlcmVuY2VGYWN0b3J5IH0gZnJvbSAnLi9yZWZlcmVuY2VzL2Rlc2NyaXB0b3JzJztcblxuY29uc3QgTk9PUF9ERVNUUk9ZID0geyBkZXN0cm95KCkge30gfTtcblxuY2xhc3MgQ29uc3RQYXRoIGltcGxlbWVudHMgSVBhdGhSZWZlcmVuY2U8YW55PiB7XG4gIHByaXZhdGUgcGFyZW50OiBhbnk7XG4gIHByaXZhdGUgcHJvcGVydHk6IHN0cmluZztcbiAgcHVibGljIHRhZyA9IENVUlJFTlRfVEFHO1xuXG4gIGNvbnN0cnVjdG9yKHBhcmVudDogYW55LCBfcHJvcGVydHk6IHN0cmluZykge1xuICAgIHRoaXMucGFyZW50ID0gcGFyZW50O1xuICB9XG5cbiAgY2hhaW4oKSB7IHJldHVybiBOT09QX0RFU1RST1k7IH1cbiAgbm90aWZ5KCkge31cblxuICB2YWx1ZSgpIHtcbiAgICByZXR1cm4gdGhpcy5wYXJlbnRbdGhpcy5wcm9wZXJ0eV07XG4gIH1cblxuICBnZXQocHJvcDogc3RyaW5nKTogSVBhdGhSZWZlcmVuY2U8YW55PiB7XG4gICAgcmV0dXJuIG5ldyBDb25zdFBhdGgodGhpcy5wYXJlbnRbdGhpcy5wcm9wZXJ0eV0sIHByb3ApO1xuICB9XG59XG5cbmNsYXNzIENvbnN0Um9vdCBpbXBsZW1lbnRzIElSb290UmVmZXJlbmNlPGFueT4ge1xuICBwcml2YXRlIGlubmVyOiBhbnk7XG4gIHB1YmxpYyB0YWcgPSBDVVJSRU5UX1RBRztcblxuICBjb25zdHJ1Y3Rvcih2YWx1ZTogYW55KSB7XG4gICAgdGhpcy5pbm5lciA9IHZhbHVlO1xuICB9XG5cbiAgdXBkYXRlKGlubmVyOiBhbnkpIHtcbiAgICB0aGlzLmlubmVyID0gaW5uZXI7XG4gIH1cblxuICBjaGFpbigpIHsgcmV0dXJuIE5PT1BfREVTVFJPWTsgfVxuICBub3RpZnkoKSB7fVxuXG4gIHZhbHVlKCk6IGFueSB7XG4gICAgcmV0dXJuIHRoaXMuaW5uZXI7XG4gIH1cblxuICByZWZlcmVuY2VGcm9tUGFydHMoX3BhcnRzOiBzdHJpbmdbXSk6IElQYXRoUmVmZXJlbmNlPGFueT4ge1xuICAgIHRocm93IG5ldyBFcnJvcihcIk5vdCBpbXBsZW1lbnRlZFwiKTtcbiAgfVxuXG4gIGNoYWluRm9yKF9wcm9wOiBzdHJpbmcpOiBJUGF0aFJlZmVyZW5jZTxhbnk+IHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXCJOb3QgaW1wbGVtZW50ZWRcIik7XG4gIH1cblxuICBnZXQocHJvcDogc3RyaW5nKTogSVBhdGhSZWZlcmVuY2U8YW55PiB7XG4gICAgcmV0dXJuIG5ldyBDb25zdFBhdGgodGhpcy5pbm5lciwgcHJvcCk7XG4gIH1cbn1cblxuY2xhc3MgQ29uc3RNZXRhIC8qaW1wbGVtZW50cyBJTWV0YSovIHtcbiAgcHJpdmF0ZSBvYmplY3Q6IGFueTtcblxuICBjb25zdHJ1Y3RvcihvYmplY3Q6IGFueSkge1xuICAgIHRoaXMub2JqZWN0ID0gb2JqZWN0O1xuICB9XG5cbiAgcm9vdCgpOiBDb25zdFJvb3Qge1xuICAgIHJldHVybiBuZXcgQ29uc3RSb290KHRoaXMub2JqZWN0KTtcbiAgfVxufVxuXG5leHBvcnQgY29uc3QgQ0xBU1NfTUVUQSA9IFwiZGY4YmU0YzgtNGU4OS00NGUyLWE4ZjktNTUwYzhkYWNkY2E3XCI7XG5cbmNvbnN0IGhhc093blByb3BlcnR5ID0gT2JqZWN0Lmhhc093blByb3BlcnR5O1xuXG5jbGFzcyBNZXRhIGltcGxlbWVudHMgSU1ldGEsIEhhc0d1aWQge1xuICBzdGF0aWMgZm9yKG9iajogYW55KTogSU1ldGEge1xuICAgIGlmIChvYmogPT09IG51bGwgfHwgb2JqID09PSB1bmRlZmluZWQpIHJldHVybiBuZXcgTWV0YShvYmosIHt9KTtcbiAgICBpZiAoaGFzT3duUHJvcGVydHkuY2FsbChvYmosICdfbWV0YScpICYmIG9iai5fbWV0YSkgcmV0dXJuIG9iai5fbWV0YTtcbiAgICBpZiAoIU9iamVjdC5pc0V4dGVuc2libGUob2JqKSkgcmV0dXJuIG5ldyBDb25zdE1ldGEob2JqKSBhcyBhbnk7XG5cbiAgICBsZXQgTWV0YVRvVXNlOiB0eXBlb2YgTWV0YSA9IE1ldGE7XG5cbiAgICBpZiAob2JqLmNvbnN0cnVjdG9yICYmIG9iai5jb25zdHJ1Y3RvcltDTEFTU19NRVRBXSkge1xuICAgICAgbGV0IGNsYXNzTWV0YTogQ2xhc3NNZXRhID0gb2JqLmNvbnN0cnVjdG9yW0NMQVNTX01FVEFdO1xuICAgICAgTWV0YVRvVXNlID0gY2xhc3NNZXRhLkluc3RhbmNlTWV0YUNvbnN0cnVjdG9yO1xuICAgIH0gZWxzZSBpZiAob2JqW0NMQVNTX01FVEFdKSB7XG4gICAgICBNZXRhVG9Vc2UgPSBvYmpbQ0xBU1NfTUVUQV0uSW5zdGFuY2VNZXRhQ29uc3RydWN0b3I7XG4gICAgfVxuXG4gICAgcmV0dXJuIChvYmouX21ldGEgPSBuZXcgTWV0YVRvVXNlKG9iaiwge30pKTtcbiAgfVxuXG4gIHN0YXRpYyBleGlzdHMob2JqOiBhbnkpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdHlwZW9mIG9iaiA9PT0gJ29iamVjdCcgJiYgb2JqLl9tZXRhO1xuICB9XG5cbiAgc3RhdGljIG1ldGFkYXRhRm9yUHJvcGVydHkoX2tleTogc3RyaW5nKTogYW55IHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIHByaXZhdGUgb2JqZWN0OiBhbnk7XG4gIHByaXZhdGUgUm9vdFJlZmVyZW5jZUZhY3Rvcnk6IFJvb3RSZWZlcmVuY2VGYWN0b3J5PGFueT47XG4gIHByaXZhdGUgcm9vdENhY2hlOiBJUm9vdFJlZmVyZW5jZTxhbnk+O1xuICBwcml2YXRlIHJlZmVyZW5jZXM6IE9wdGlvbjxEaWN0PERpY3RTZXQ8SVBhdGhSZWZlcmVuY2U8YW55PiAmIEhhc0d1aWQ+Pj4gPSBudWxsO1xuICBwdWJsaWMgX2d1aWQ6IG51bWJlcjtcbiAgcHJvdGVjdGVkIHNsb3RzOiBPcHRpb248RGljdDxhbnk+PiA9IG51bGw7XG4gIHByb3RlY3RlZCByZWZlcmVuY2VUeXBlczogT3B0aW9uPERpY3Q8SW5uZXJSZWZlcmVuY2VGYWN0b3J5PGFueT4+PiA9IG51bGw7XG4gIHByb3RlY3RlZCBwcm9wZXJ0eU1ldGFkYXRhOiBPcHRpb248RGljdDxhbnk+PiA9IG51bGw7XG5cbiAgY29uc3RydWN0b3Iob2JqZWN0OiBhbnksIHsgUm9vdFJlZmVyZW5jZUZhY3RvcnkgfTogTWV0YU9wdGlvbnMpIHtcbiAgICB0aGlzLm9iamVjdCA9IG9iamVjdDtcbiAgICB0aGlzLlJvb3RSZWZlcmVuY2VGYWN0b3J5ID0gKFJvb3RSZWZlcmVuY2VGYWN0b3J5IHx8IFJvb3RSZWZlcmVuY2UpIGFzIFJvb3RSZWZlcmVuY2VGYWN0b3J5PGFueT47XG4gIH1cblxuICBhZGRSZWZlcmVuY2UocHJvcGVydHk6IHN0cmluZywgcmVmZXJlbmNlOiBJUGF0aFJlZmVyZW5jZTxhbnk+ICYgSGFzR3VpZCkge1xuICAgIGxldCByZWZzID0gdGhpcy5yZWZlcmVuY2VzID0gdGhpcy5yZWZlcmVuY2VzIHx8IGRpY3Q8RGljdFNldDxJUGF0aFJlZmVyZW5jZTxhbnk+ICYgSGFzR3VpZD4+KCk7XG4gICAgbGV0IHNldCA9IHJlZnNbcHJvcGVydHldID0gcmVmc1twcm9wZXJ0eV0gfHwgbmV3IERpY3RTZXQ8SVBhdGhSZWZlcmVuY2U8YW55PiAmIEhhc0d1aWQ+KCk7XG4gICAgc2V0LmFkZChyZWZlcmVuY2UpO1xuICB9XG5cbiAgYWRkUmVmZXJlbmNlVHlwZUZvcihwcm9wZXJ0eTogc3RyaW5nLCB0eXBlOiBQYXRoUmVmZXJlbmNlRmFjdG9yeTxhbnk+KSB7XG4gICAgdGhpcy5yZWZlcmVuY2VUeXBlcyA9IHRoaXMucmVmZXJlbmNlVHlwZXMgfHwgZGljdDxQYXRoUmVmZXJlbmNlRmFjdG9yeTxhbnk+PigpO1xuICAgIHRoaXMucmVmZXJlbmNlVHlwZXNbcHJvcGVydHldID0gdHlwZTtcbiAgfVxuXG4gIHJlZmVyZW5jZVR5cGVGb3IocHJvcGVydHk6IHN0cmluZyk6IElubmVyUmVmZXJlbmNlRmFjdG9yeTxhbnk+IHtcbiAgICBpZiAoIXRoaXMucmVmZXJlbmNlVHlwZXMpIHJldHVybiBQcm9wZXJ0eVJlZmVyZW5jZTtcbiAgICByZXR1cm4gdGhpcy5yZWZlcmVuY2VUeXBlc1twcm9wZXJ0eV0gfHwgUHJvcGVydHlSZWZlcmVuY2U7XG4gIH1cblxuICByZW1vdmVSZWZlcmVuY2UocHJvcGVydHk6IHN0cmluZywgcmVmZXJlbmNlOiBJUGF0aFJlZmVyZW5jZTxhbnk+ICYgSGFzR3VpZCkge1xuICAgIGlmICghdGhpcy5yZWZlcmVuY2VzKSByZXR1cm47XG4gICAgbGV0IHNldCA9IHRoaXMucmVmZXJlbmNlc1twcm9wZXJ0eV07XG4gICAgc2V0LmRlbGV0ZShyZWZlcmVuY2UpO1xuICB9XG5cbiAgZ2V0UmVmZXJlbmNlVHlwZXMoKTogRGljdDxJbm5lclJlZmVyZW5jZUZhY3Rvcnk8YW55Pj4ge1xuICAgIHRoaXMucmVmZXJlbmNlVHlwZXMgPSB0aGlzLnJlZmVyZW5jZVR5cGVzIHx8IGRpY3Q8UGF0aFJlZmVyZW5jZUZhY3Rvcnk8YW55Pj4oKTtcbiAgICByZXR1cm4gdGhpcy5yZWZlcmVuY2VUeXBlcztcbiAgfVxuXG4gIHJlZmVyZW5jZXNGb3IocHJvcGVydHk6IHN0cmluZyk6IE9wdGlvbjxTZXQ8SVBhdGhSZWZlcmVuY2U8YW55Pj4+IHtcbiAgICBpZiAoIXRoaXMucmVmZXJlbmNlcykgcmV0dXJuIG51bGw7XG4gICAgcmV0dXJuIHRoaXMucmVmZXJlbmNlc1twcm9wZXJ0eV07XG4gIH1cblxuICBnZXRTbG90cygpIHtcbiAgICByZXR1cm4gKHRoaXMuc2xvdHMgPSB0aGlzLnNsb3RzIHx8IGRpY3QoKSk7XG4gIH1cblxuICByb290KCk6IElSb290UmVmZXJlbmNlPGFueT4ge1xuICAgIHJldHVybiAodGhpcy5yb290Q2FjaGUgPSB0aGlzLnJvb3RDYWNoZSB8fCBuZXcgdGhpcy5Sb290UmVmZXJlbmNlRmFjdG9yeSh0aGlzLm9iamVjdCkpO1xuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IE1ldGE7XG5cbmludGVyZmFjZSBDbGFzc01ldGEge1xuICBJbnN0YW5jZU1ldGFDb25zdHJ1Y3RvcjogdHlwZW9mIE1ldGE7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBtZXRhRm9yKG9iajogYW55KTogSU1ldGEge1xuICByZXR1cm4gTWV0YS5mb3Iob2JqKTtcbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0YS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL0BnbGltbWVyL29iamVjdC1yZWZlcmVuY2UvbGliL21ldGEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBQSxBQUFPLEFBQUUsQUFBaUIsQUFBRSxBQUFNLEFBQTBCLEFBQUM7O0FBQzdELEFBQU8sQUFBYSxBQUFNLEFBQW1CLEFBQUM7Ozs7QUFHOUMsQUFBTyxBQUFnQixBQUFPLEFBQWdCLEFBQUksQUFBRSxBQUFNLEFBQWUsQUFBQzs7QUFTMUUsQUFBTyxBQUFtQyxBQUFXLEFBQUUsQUFBTSxBQUFvQixBQUFDOzs7O0FBSWxGLE1BQU0sQUFBWSxlQUFHLEVBQUUsQUFBTyxVQUFJLEFBQUMsQUFBRSxBQUFDO0FBRXRDO2dCQUtjLEFBQVcsUUFBRSxBQUFpQixXQUZuQzthQUFHLEFBQUcsQUFBVyxBQUFDLEFBR3ZCLEFBQUk7YUFBQyxBQUFNLFNBQUcsQUFBTSxBQUFDLEFBQ3ZCLEFBQUM7QUFFRCxBQUFLO1lBQ0gsQUFBTTtlQUFDLEFBQVksQUFBQyxBQUN0QixBQUFDO0FBQ0QsQUFBTTthQUFJLEFBQUMsQ0FFWCxBQUFLO1lBQ0gsQUFBTTtlQUFDLEFBQUksS0FBQyxBQUFNLE9BQUMsQUFBSSxLQUFDLEFBQVEsQUFBQyxBQUFDLEFBQ3BDLEFBQUM7QUFFRCxBQUFHO1FBQUMsQUFBWSxNQUNkLEFBQU07ZUFBQyxJQUFJLEFBQVMsVUFBQyxBQUFJLEtBQUMsQUFBTSxPQUFDLEFBQUksS0FBQyxBQUFRLEFBQUMsV0FBRSxBQUFJLEFBQUMsQUFBQyxBQUN6RCxBQUFDLEFBQ0Y7O0FBaEJDO0FBa0JGO2dCQUljLEFBQVUsT0FGZjthQUFHLEFBQUcsQUFBVyxBQUFDLEFBR3ZCLEFBQUk7YUFBQyxBQUFLLFFBQUcsQUFBSyxBQUFDLEFBQ3JCLEFBQUM7QUFFRCxBQUFNO1dBQUMsQUFBVSxPQUNmLEFBQUk7YUFBQyxBQUFLLFFBQUcsQUFBSyxB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QUVELEFBQWlCO3dCQUNmLEFBQUk7YUFBQyxBQUFjLGlCQUFHLEFBQUksS0FBQyxBQUFjLGtCQUFJLEFBQUksQUFBNkIsQUFBQyxBQUMvRSxBQUFNO2VBQUMsQUFBSSxLQUFDLEFBQWMsQUFBQyxBQUM3QixBQUFDO0FBRUQsQUFBYTtrQkFBQyxBQUFnQixVQUM1QixBQUFFLEFBQUM7WUFBQyxDQUFDLEFBQUksS0FBQyxBQUFVLEFBQUMsWUFBQyxBQUFNLE9BQUMsQUFBSSxBQUFDLEFBQ2xDLEFBQU07ZUFBQyxBQUFJLEtBQUMsQUFBVSxXQUFDLEFBQVEsQUFBQyxBQUFDLEFBQ25DLEFBQUM7QUFFRCxBQUFRO2VBQ04sQUFBTSxBQUFDO2VBQUMsQUFBSSxLQUFDLEFBQUssUUFBRyxBQUFJLEtBQUMsQUFBSyxTQUFJLEFBQUksQUFBRSxBQUFDLEFBQUMsQUFDN0MsQUFBQztBQUVELEFBQUk7V0FDRixBQUFNLEFBQUM7ZUFBQyxBQUFJLEtBQUMsQUFBUyxZQUFHLEFBQUksS0FBQyxBQUFTLGFBQUksSUFBSSxBQUFJLEtBQUMsQUFBb0IscUJBQUMsQUFBSSxLQUFDLEFBQU0sQUFBQyxBQUFDLEFBQUMsQUFDekYsQUFBQyxBQUNGO0FBRUQ7QUFqREU7a0JBaURhLEFBQUksQUFBQyxBQU1wQixBQUFNO2lCQUFrQixBQUFRLEtBQzlCLEFBQU07V0FBQyxBQUFJLEtBQUMsQUFBRyxJQUFDLEFBQUcsQUFBQyxBQUFDLEFBQ3ZCLEFBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQcm9wZXJ0eVJlZmVyZW5jZSB9IGZyb20gJy4vcmVmZXJlbmNlcy9kZXNjcmlwdG9ycyc7XG5pbXBvcnQgUm9vdFJlZmVyZW5jZSBmcm9tICcuL3JlZmVyZW5jZXMvcm9vdCc7XG5pbXBvcnQgeyBNZXRhT3B0aW9ucyB9IGZyb20gJy4vdHlwZXMnO1xuXG5pbXBvcnQgeyBPcHRpb24sIERpY3QsIERpY3RTZXQsIEhhc0d1aWQsIFNldCwgZGljdCB9IGZyb20gJ0BnbGltbWVyL3V0aWwnO1xuXG5pbXBvcnQge1xuICBSb290UmVmZXJlbmNlRmFjdG9yeSxcbiAgUGF0aFJlZmVyZW5jZUZhY3RvcnksXG4gIE1ldGEgYXMgSU1ldGEsXG4gIFJvb3RSZWZlcmVuY2UgYXMgSVJvb3RSZWZlcmVuY2UsXG59IGZyb20gJy4vdHlwZXMnO1xuXG5pbXBvcnQgeyBQYXRoUmVmZXJlbmNlIGFzIElQYXRoUmVmZXJlbmNlLCBDVVJSRU5UX1RBRyB9IGZyb20gJ0BnbGltbWVyL3JlZmVyZW5jZSc7XG5cbmltcG9ydCB7IElubmVyUmVmZXJlbmNlRmFjdG9yeSB9IGZyb20gJy4vcmVmZXJlbmNlcy9kZXNjcmlwdG9ycyc7XG5cbmNvbnN0IE5PT1BfREVTVFJPWSA9IHsgZGVzdHJveSgpIHt9IH07XG5cbmNsYXNzIENvbnN0UGF0aCBpbXBsZW1lbnRzIElQYXRoUmVmZXJlbmNlPGFueT4ge1xuICBwcml2YXRlIHBhcmVudDogYW55O1xuICBwcml2YXRlIHByb3BlcnR5OiBzdHJpbmc7XG4gIHB1YmxpYyB0YWcgPSBDVVJSRU5UX1RBRztcblxuICBjb25zdHJ1Y3RvcihwYXJlbnQ6IGFueSwgX3Byb3BlcnR5OiBzdHJpbmcpIHtcbiAgICB0aGlzLnBhcmVudCA9IHBhcmVudDtcbiAgfVxuXG4gIGNoYWluKCkge1xuICAgIHJldHVybiBOT09QX0RFU1RST1k7XG4gIH1cbiAgbm90aWZ5KCkge31cblxuICB2YWx1ZSgpIHtcbiAgICByZXR1cm4gdGhpcy5wYXJlbnRbdGhpcy5wcm9wZXJ0eV07XG4gIH1cblxuICBnZXQocHJvcDogc3RyaW5nKTogSVBhdGhSZWZlcmVuY2U8YW55PiB7XG4gICAgcmV0dXJuIG5ldyBDb25zdFBhdGgodGhpcy5wYXJlbnRbdGhpcy5wcm9wZXJ0eV0sIHByb3ApO1xuICB9XG59XG5cbmNsYXNzIENvbnN0Um9vdCBpbXBsZW1lbnRzIElSb290UmVmZXJlbmNlPGFueT4ge1xuICBwcml2YXRlIGlubmVyOiBhbnk7XG4gIHB1YmxpYyB0YWcgPSBDVVJSRU5UX1RBRztcblxuICBjb25zdHJ1Y3Rvcih2YWx1ZTogYW55KSB7XG4gICAgdGhpcy5pbm5lciA9IHZhbHVlO1xuICB9XG5cbiAgdXBkYXRlKGlubmVyOiBhbnkpIHtcbiAgICB0aGlzLmlubmVyID0gaW5uZXI7XG4gIH1cblxuICBjaGFpbigpIHtcbiAgICByZXR1cm4gTk9PUF9ERVNUUk9ZO1xuICB9XG4gIG5vdGlmeSgpIHt9XG5cbiAgdmFsdWUoKTogYW55IHtcbiAgICByZXR1cm4gdGhpcy5pbm5lcjtcbiAgfVxuXG4gIHJlZmVyZW5jZUZyb21QYXJ0cyhfcGFydHM6IHN0cmluZ1tdKTogSVBhdGhSZWZlcmVuY2U8YW55PiB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdOb3QgaW1wbGVtZW50ZWQnKTtcbiAgfVxuXG4gIGNoYWluRm9yKF9wcm9wOiBzdHJpbmcpOiBJUGF0aFJlZmVyZW5jZTxhbnk+IHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ05vdCBpbXBsZW1lbnRlZCcpO1xuICB9XG5cbiAgZ2V0KHByb3A6IHN0cmluZyk6IElQYXRoUmVmZXJlbmNlPGFueT4ge1xuICAgIHJldHVybiBuZXcgQ29uc3RQYXRoKHRoaXMuaW5uZXIsIHByb3ApO1xuICB9XG59XG5cbmNsYXNzIENvbnN0TWV0YSAvKmltcGxlbWVudHMgSU1ldGEqLyB7XG4gIHByaXZhdGUgb2JqZWN0OiBhbnk7XG5cbiAgY29uc3RydWN0b3Iob2JqZWN0OiBhbnkpIHtcbiAgICB0aGlzLm9iamVjdCA9IG9iamVjdDtcbiAgfVxuXG4gIHJvb3QoKTogQ29uc3RSb290IHtcbiAgICByZXR1cm4gbmV3IENvbnN0Um9vdCh0aGlzLm9iamVjdCk7XG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IENMQVNTX01FVEEgPSAnZGY4YmU0YzgtNGU4OS00NGUyLWE4ZjktNTUwYzhkYWNkY2E3JztcblxuY29uc3QgaGFzT3duUHJvcGVydHkgPSBPYmplY3QuaGFzT3duUHJvcGVydHk7XG5cbmNsYXNzIE1ldGEgaW1wbGVtZW50cyBJTWV0YSwgSGFzR3VpZCB7XG4gIHN0YXRpYyBmb3Iob2JqOiBhbnkpOiBJTWV0YSB7XG4gICAgaWYgKG9iaiA9PT0gbnVsbCB8fCBvYmogPT09IHVuZGVmaW5lZCkgcmV0dXJuIG5ldyBNZXRhKG9iaiwge30pO1xuICAgIGlmIChoYXNPd25Qcm9wZXJ0eS5jYWxsKG9iaiwgJ19tZXRhJykgJiYgb2JqLl9tZXRhKSByZXR1cm4gb2JqLl9tZXRhO1xuICAgIGlmICghT2JqZWN0LmlzRXh0ZW5zaWJsZShvYmopKSByZXR1cm4gbmV3IENvbnN0TWV0YShvYmopIGFzIGFueTtcblxuICAgIGxldCBNZXRhVG9Vc2U6IHR5cGVvZiBNZXRhID0gTWV0YTtcblxuICAgIGlmIChvYmouY29uc3RydWN0b3IgJiYgb2JqLmNvbnN0cnVjdG9yW0NMQVNTX01FVEFdKSB7XG4gICAgICBsZXQgY2xhc3NNZXRhOiBDbGFzc01ldGEgPSBvYmouY29uc3RydWN0b3JbQ0xBU1NfTUVUQV07XG4gICAgICBNZXRhVG9Vc2UgPSBjbGFzc01ldGEuSW5zdGFuY2VNZXRhQ29uc3RydWN0b3I7XG4gICAgfSBlbHNlIGlmIChvYmpbQ0xBU1NfTUVUQV0pIHtcbiAgICAgIE1ldGFUb1VzZSA9IG9ialtDTEFTU19NRVRBXS5JbnN0YW5jZU1ldGFDb25zdHJ1Y3RvcjtcbiAgICB9XG5cbiAgICByZXR1cm4gKG9iai5fbWV0YSA9IG5ldyBNZXRhVG9Vc2Uob2JqLCB7fSkpO1xuICB9XG5cbiAgc3RhdGljIGV4aXN0cyhvYmo6IGFueSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0eXBlb2Ygb2JqID09PSAnb2JqZWN0JyAmJiBvYmouX21ldGE7XG4gIH1cblxuICBzdGF0aWMgbWV0YWRhdGFGb3JQcm9wZXJ0eShfa2V5OiBzdHJpbmcpOiBhbnkge1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgcHJpdmF0ZSBvYmplY3Q6IGFueTtcbiAgcHJpdmF0ZSBSb290UmVmZXJlbmNlRmFjdG9yeTogUm9vdFJlZmVyZW5jZUZhY3Rvcnk8YW55PjtcbiAgcHJpdmF0ZSByb290Q2FjaGU6IElSb290UmVmZXJlbmNlPGFueT47XG4gIHByaXZhdGUgcmVmZXJlbmNlczogT3B0aW9uPERpY3Q8RGljdFNldDxJUGF0aFJlZmVyZW5jZTxhbnk+ICYgSGFzR3VpZD4+PiA9IG51bGw7XG4gIHB1YmxpYyBfZ3VpZDogbnVtYmVyO1xuICBwcm90ZWN0ZWQgc2xvdHM6IE9wdGlvbjxEaWN0PGFueT4+ID0gbnVsbDtcbiAgcHJvdGVjdGVkIHJlZmVyZW5jZVR5cGVzOiBPcHRpb248RGljdDxJbm5lclJlZmVyZW5jZUZhY3Rvcnk8YW55Pj4+ID0gbnVsbDtcbiAgcHJvdGVjdGVkIHByb3BlcnR5TWV0YWRhdGE6IE9wdGlvbjxEaWN0PGFueT4+ID0gbnVsbDtcblxuICBjb25zdHJ1Y3RvcihvYmplY3Q6IGFueSwgeyBSb290UmVmZXJlbmNlRmFjdG9yeSB9OiBNZXRhT3B0aW9ucykge1xuICAgIHRoaXMub2JqZWN0ID0gb2JqZWN0O1xuICAgIHRoaXMuUm9vdFJlZmVyZW5jZUZhY3RvcnkgPSAoUm9vdFJlZmVyZW5jZUZhY3RvcnkgfHwgUm9vdFJlZmVyZW5jZSkgYXMgUm9vdFJlZmVyZW5jZUZhY3Rvcnk8XG4gICAgICBhbnlcbiAgICA+O1xuICB9XG5cbiAgYWRkUmVmZXJlbmNlKHByb3BlcnR5OiBzdHJpbmcsIHJlZmVyZW5jZTogSVBhdGhSZWZlcmVuY2U8YW55PiAmIEhhc0d1aWQpIHtcbiAgICBsZXQgcmVmcyA9ICh0aGlzLnJlZmVyZW5jZXMgPVxuICAgICAgdGhpcy5yZWZlcmVuY2VzIHx8IGRpY3Q8RGljdFNldDxJUGF0aFJlZmVyZW5jZTxhbnk+ICYgSGFzR3VpZD4+KCkpO1xuICAgIGxldCBzZXQgPSAocmVmc1twcm9wZXJ0eV0gPSByZWZzW3Byb3BlcnR5XSB8fCBuZXcgRGljdFNldDxJUGF0aFJlZmVyZW5jZTxhbnk+ICYgSGFzR3VpZD4oKSk7XG4gICAgc2V0LmFkZChyZWZlcmVuY2UpO1xuICB9XG5cbiAgYWRkUmVmZXJlbmNlVHlwZUZvcihwcm9wZXJ0eTogc3RyaW5nLCB0eXBlOiBQYXRoUmVmZXJlbmNlRmFjdG9yeTxhbnk+KSB7XG4gICAgdGhpcy5yZWZlcmVuY2VUeXBlcyA9IHRoaXMucmVmZXJlbmNlVHlwZXMgfHwgZGljdDxQYXRoUmVmZXJlbmNlRmFjdG9yeTxhbnk+PigpO1xuICAgIHRoaXMucmVmZXJlbmNlVHlwZXNbcHJvcGVydHldID0gdHlwZTtcbiAgfVxuXG4gIHJlZmVyZW5jZVR5cGVGb3IocHJvcGVydHk6IHN0cmluZyk6IElubmVyUmVmZXJlbmNlRmFjdG9yeTxhbnk+IHtcbiAgICBpZiAoIXRoaXMucmVmZXJlbmNlVHlwZXMpIHJldHVybiBQcm9wZXJ0eVJlZmVyZW5jZTtcbiAgICByZXR1cm4gdGhpcy5yZWZlcmVuY2VUeXBlc1twcm9wZXJ0eV0gfHwgUHJvcGVydHlSZWZlcmVuY2U7XG4gIH1cblxuICByZW1vdmVSZWZlcmVuY2UocHJvcGVydHk6IHN0cmluZywgcmVmZXJlbmNlOiBJUGF0aFJlZmVyZW5jZTxhbnk+ICYgSGFzR3VpZCkge1xuICAgIGlmICghdGhpcy5yZWZlcmVuY2VzKSByZXR1cm47XG4gICAgbGV0IHNldCA9IHRoaXMucmVmZXJlbmNlc1twcm9wZXJ0eV07XG4gICAgc2V0LmRlbGV0ZShyZWZlcmVuY2UpO1xuICB9XG5cbiAgZ2V0UmVmZXJlbmNlVHlwZXMoKTogRGljdDxJbm5lclJlZmVyZW5jZUZhY3Rvcnk8YW55Pj4ge1xuICAgIHRoaXMucmVmZXJlbmNlVHlwZXMgPSB0aGlzLnJlZmVyZW5jZVR5cGVzIHx8IGRpY3Q8UGF0aFJlZmVyZW5jZUZhY3Rvcnk8YW55Pj4oKTtcbiAgICByZXR1cm4gdGhpcy5yZWZlcmVuY2VUeXBlcztcbiAgfVxuXG4gIHJlZmVyZW5jZXNGb3IocHJvcGVydHk6IHN0cmluZyk6IE9wdGlvbjxTZXQ8SVBhdGhSZWZlcmVuY2U8YW55Pj4+IHtcbiAgICBpZiAoIXRoaXMucmVmZXJlbmNlcykgcmV0dXJuIG51bGw7XG4gICAgcmV0dXJuIHRoaXMucmVmZXJlbmNlc1twcm9wZXJ0eV07XG4gIH1cblxuICBnZXRTbG90cygpIHtcbiAgICByZXR1cm4gKHRoaXMuc2xvdHMgPSB0aGlzLnNsb3RzIHx8IGRpY3QoKSk7XG4gIH1cblxuICByb290KCk6IElSb290UmVmZXJlbmNlPGFueT4ge1xuICAgIHJldHVybiAodGhpcy5yb290Q2FjaGUgPSB0aGlzLnJvb3RDYWNoZSB8fCBuZXcgdGhpcy5Sb290UmVmZXJlbmNlRmFjdG9yeSh0aGlzLm9iamVjdCkpO1xuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IE1ldGE7XG5cbmludGVyZmFjZSBDbGFzc01ldGEge1xuICBJbnN0YW5jZU1ldGFDb25zdHJ1Y3RvcjogdHlwZW9mIE1ldGE7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBtZXRhRm9yKG9iajogYW55KTogSU1ldGEge1xuICByZXR1cm4gTWV0YS5mb3Iob2JqKTtcbn1cbiJdfQ==

@@ -1,2 +0,2 @@

"use strict";
'use strict';

@@ -9,3 +9,3 @@ Object.defineProperty(exports, "__esModule", {

var _reference = require("@glimmer/reference");
var _reference = require('@glimmer/reference');

@@ -33,2 +33,2 @@ // import { metaFor } from './meta';

}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JqZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvQGdsaW1tZXIvb2JqZWN0LXJlZmVyZW5jZS9saWIvb2JqZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUEsQUFBTyxBQUFFLEFBQUksQUFBRSxBQUFNLEFBQW9CLEFBQUM7O0FBRTFDLEFBQW9DO0FBQ3BDLEFBQTBDLEFBRTFDLEFBQU07cUJBQXNCLEFBQVcsUUFBRSxBQUFnQixVQUFFLEFBQVEsS0FDakUsQUFBNkQ7QUFFN0QsQUFBcUU7QUFFckUsQUFBTTtXQUFDLEFBQVEsQUFBQyxZQUFHLEFBQUcsQUFBQyxBQUN2QixBQUFJLEFBQUUsQUFBQztBQUVQLEFBQTRCO0FBQzVCLEFBQWlFO0FBQ2pFLEFBQUk7QUFFSixBQUFtQyxBQUNyQztBQUFDO0FBRUQsQUFBTTt3QkFBeUIsQUFBWSxTQUFFLEFBQWlCLFdBQzVELEFBQUksQUFBRSxBQUFDO0FBQ1AsQUFBNkQ7QUFFN0QsQUFBcUU7QUFFckUsQUFBNEI7QUFDNUIsQUFBaUU7QUFDakUsQUFBSTtBQUVKLEFBQW1DLEFBQ3JDO0FBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBidW1wIH0gZnJvbSBcIkBnbGltbWVyL3JlZmVyZW5jZVwiO1xuXG4vLyBpbXBvcnQgeyBtZXRhRm9yIH0gZnJvbSAnLi9tZXRhJztcbi8vIGltcG9ydCB7IGludGVybiB9IGZyb20gJ0BnbGltbWVyL3V0aWwnO1xuXG5leHBvcnQgZnVuY3Rpb24gc2V0UHJvcGVydHkocGFyZW50OiBhbnksIHByb3BlcnR5OiBzdHJpbmcsIHZhbDogYW55KSB7XG4gIC8vIGxldCByb290UHJvcCA9IG1ldGFGb3IocGFyZW50KS5yb290KCkuY2hhaW5Gb3IocHJvcGVydHkpKTtcblxuICAvLyBsZXQgcmVmZXJlbmNlc1RvTm90aWZ5ID0gbWV0YUZvcihwYXJlbnQpLnJlZmVyZW5jZXNGb3IocHJvcGVydHkpKTtcblxuICBwYXJlbnRbcHJvcGVydHldID0gdmFsO1xuICBidW1wKCk7XG5cbiAgLy8gaWYgKHJlZmVyZW5jZXNUb05vdGlmeSkge1xuICAvLyAgIHJlZmVyZW5jZXNUb05vdGlmeS5mb3JFYWNoKGZ1bmN0aW9uKHJlZikgeyByZWYubm90aWZ5KCk7IH0pO1xuICAvLyB9XG5cbiAgLy8gaWYgKHJvb3RQcm9wKSByb290UHJvcC5ub3RpZnkoKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG5vdGlmeVByb3BlcnR5KF9wYXJlbnQ6IGFueSwgX3Byb3BlcnR5OiBzdHJpbmcpIHtcbiAgYnVtcCgpO1xuICAvLyBsZXQgcm9vdFByb3AgPSBtZXRhRm9yKHBhcmVudCkucm9vdCgpLmNoYWluRm9yKHByb3BlcnR5KSk7XG5cbiAgLy8gbGV0IHJlZmVyZW5jZXNUb05vdGlmeSA9IG1ldGFGb3IocGFyZW50KS5yZWZlcmVuY2VzRm9yKHByb3BlcnR5KSk7XG5cbiAgLy8gaWYgKHJlZmVyZW5jZXNUb05vdGlmeSkge1xuICAvLyAgIHJlZmVyZW5jZXNUb05vdGlmeS5mb3JFYWNoKGZ1bmN0aW9uKHJlZikgeyByZWYubm90aWZ5KCk7IH0pO1xuICAvLyB9XG5cbiAgLy8gaWYgKHJvb3RQcm9wKSByb290UHJvcC5ub3RpZnkoKTtcbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JqZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvQGdsaW1tZXIvb2JqZWN0LXJlZmVyZW5jZS9saWIvb2JqZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUEsQUFBTyxBQUFFLEFBQUksQUFBRSxBQUFNLEFBQW9CLEFBQUM7O0FBRTFDLEFBQW9DO0FBQ3BDLEFBQTBDLEFBRTFDLEFBQU07cUJBQXNCLEFBQVcsUUFBRSxBQUFnQixVQUFFLEFBQVEsS0FDakUsQUFBNkQ7QUFFN0QsQUFBcUU7QUFFckUsQUFBTTtXQUFDLEFBQVEsQUFBQyxZQUFHLEFBQUcsQUFBQyxBQUN2QixBQUFJLEFBQUUsQUFBQztBQUVQLEFBQTRCO0FBQzVCLEFBQWlFO0FBQ2pFLEFBQUk7QUFFSixBQUFtQyxBQUNyQztBQUFDO0FBRUQsQUFBTTt3QkFBeUIsQUFBWSxTQUFFLEFBQWlCLFdBQzVELEFBQUksQUFBRSxBQUFDO0FBQ1AsQUFBNkQ7QUFFN0QsQUFBcUU7QUFFckUsQUFBNEI7QUFDNUIsQUFBaUU7QUFDakUsQUFBSTtBQUVKLEFBQW1DLEFBQ3JDO0FBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBidW1wIH0gZnJvbSAnQGdsaW1tZXIvcmVmZXJlbmNlJztcblxuLy8gaW1wb3J0IHsgbWV0YUZvciB9IGZyb20gJy4vbWV0YSc7XG4vLyBpbXBvcnQgeyBpbnRlcm4gfSBmcm9tICdAZ2xpbW1lci91dGlsJztcblxuZXhwb3J0IGZ1bmN0aW9uIHNldFByb3BlcnR5KHBhcmVudDogYW55LCBwcm9wZXJ0eTogc3RyaW5nLCB2YWw6IGFueSkge1xuICAvLyBsZXQgcm9vdFByb3AgPSBtZXRhRm9yKHBhcmVudCkucm9vdCgpLmNoYWluRm9yKHByb3BlcnR5KSk7XG5cbiAgLy8gbGV0IHJlZmVyZW5jZXNUb05vdGlmeSA9IG1ldGFGb3IocGFyZW50KS5yZWZlcmVuY2VzRm9yKHByb3BlcnR5KSk7XG5cbiAgcGFyZW50W3Byb3BlcnR5XSA9IHZhbDtcbiAgYnVtcCgpO1xuXG4gIC8vIGlmIChyZWZlcmVuY2VzVG9Ob3RpZnkpIHtcbiAgLy8gICByZWZlcmVuY2VzVG9Ob3RpZnkuZm9yRWFjaChmdW5jdGlvbihyZWYpIHsgcmVmLm5vdGlmeSgpOyB9KTtcbiAgLy8gfVxuXG4gIC8vIGlmIChyb290UHJvcCkgcm9vdFByb3Aubm90aWZ5KCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBub3RpZnlQcm9wZXJ0eShfcGFyZW50OiBhbnksIF9wcm9wZXJ0eTogc3RyaW5nKSB7XG4gIGJ1bXAoKTtcbiAgLy8gbGV0IHJvb3RQcm9wID0gbWV0YUZvcihwYXJlbnQpLnJvb3QoKS5jaGFpbkZvcihwcm9wZXJ0eSkpO1xuXG4gIC8vIGxldCByZWZlcmVuY2VzVG9Ob3RpZnkgPSBtZXRhRm9yKHBhcmVudCkucmVmZXJlbmNlc0Zvcihwcm9wZXJ0eSkpO1xuXG4gIC8vIGlmIChyZWZlcmVuY2VzVG9Ob3RpZnkpIHtcbiAgLy8gICByZWZlcmVuY2VzVG9Ob3RpZnkuZm9yRWFjaChmdW5jdGlvbihyZWYpIHsgcmVmLm5vdGlmeSgpOyB9KTtcbiAgLy8gfVxuXG4gIC8vIGlmIChyb290UHJvcCkgcm9vdFByb3Aubm90aWZ5KCk7XG59XG4iXX0=

@@ -56,2 +56,2 @@ 'use strict';

}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzY3JpcHRvcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9AZ2xpbW1lci9vYmplY3QtcmVmZXJlbmNlL2xpYi9yZWZlcmVuY2VzL2Rlc2NyaXB0b3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUEsQUFBTyxBQUFJLEFBQU0sQUFBUyxBQUFDOzs7O0FBQzNCLEFBQU8sQUFBa0IsQUFBVyxBQUFFLEFBQU0sQUFBb0IsQUFBQyxBQU9qRSxBQUFNOzs7OztnQkFLUSxBQUFXLFFBQUUsQUFBZ0IsVUFBRSxBQUE4QixRQUZsRTthQUFHLEFBQVEsQUFBVyxBQUFDLEFBRzVCLEFBQUk7YUFBQyxBQUFNLFNBQUcsQUFBTSxBQUFDLEFBQ3JCLEFBQUk7YUFBQyxBQUFRLFdBQUcsQUFBUSxBQUFDLEFBQzNCLEFBQUM7QUFFRCxBQUFLO1lBQUssQUFBTTtlQUFDLEFBQUksS0FBQyxBQUFNLE9BQUMsQUFBSSxLQUFDLEFBQVEsQUFBQyxBQUFDLEFBQUMsQUFBQztBQUU5QyxBQUFLO1lBQ0gsQUFBTTtlQUFDLEFBQXNCLEFBQUMsQUFDaEMsQUFBQyxBQUNGO0FBRUQsQUFBTTtBQVpKOztvQ0FZNEMsQUFBYyxXQUFFLEFBQWlCLGNBQzdFLEFBQU07V0FBQztvQkFPTyxBQUFXLFFBQUUsQUFBZ0IsVUFIakM7aUJBQVMsWUFBRyxBQUFLLEFBQUMsQUFDbkI7aUJBQUcsQUFBUSxBQUFXLEFBQUMsQUFHNUIsQUFBSTtpQkFBQyxBQUFNLFNBQUcsQUFBTSxBQUFDLEFBQ3JCLEFBQUk7aUJBQUMsQUFBUSxXQUFHLEFBQVEsQUFBQyxBQUN6QixBQUFJO2lCQUFDLEFBQVksZUFBRyxBQUFZLEFBQUMsQUFDbkMsQUFBQztBQUVELEFBQUs7Z0JBQ0gsQUFBRSxBQUFDO2dCQUFDLENBQUMsQUFBSSxLQUFDLEFBQVMsQUFBQyxXQUFDLEFBQUMsQUFDcEI7b0JBQUksQUFBSSxPQUFHLEFBQUksZUFBQyxBQUFHLElBQUMsQUFBSSxLQUFDLEFBQU0sQUFBQyxRQUFDLEFBQUksQUFBRSxBQUFDLEFBRXhDLEFBQUk7cUJBQUMsQUFBWSxhQUFDLEFBQU8sUUFBQyxBQUFHLE9BQzNCO3dCQUFJLEFBQUcsTUFBRyxBQUFJLEtBQUMsQUFBa0IsbUJBQUMsQUFBRyxBQUFDLEFBQUMsQUFDdkMsQUFBRzt3QkFBQyxBQUFLLEFBQUUsQUFBQyxBQUNkLEFBQUMsQUFBQyxBQUFDO0FBRUgsQUFBSTtxQkFBQyxBQUFTLFlBQUcsQUFBSSxBQUFDLEFBQ3hCLEFBQUM7QUFFRCxBQUFNO21CQUFDLEFBQUksS0FBQyxBQUFNLE9BQUMsQUFBSSxLQUFDLEFBQVEsQUFBQyxBQUFDLEFBQ3BDLEFBQUM7QUFFRCxBQUFLO2dCQUNILEFBQU07bUJBQUMsQUFBc0IsQUFBQyxBQUNoQyxBQUFDLEFBQ0YsQUFBQyxBQUNKO0FBQUM7QUF6QkciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgTWV0YSBmcm9tICcuLi9tZXRhJztcbmltcG9ydCB7IFJlZmVyZW5jZSwgVGFnLCBDVVJSRU5UX1RBRyB9IGZyb20gJ0BnbGltbWVyL3JlZmVyZW5jZSc7XG5pbXBvcnQgeyBOb3RpZmlhYmxlUmVmZXJlbmNlIH0gZnJvbSAnLi4vdHlwZXMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIElubmVyUmVmZXJlbmNlRmFjdG9yeTxUPiB7XG4gIG5ldyAob2JqZWN0OiBhbnksIHByb3BlcnR5OiBzdHJpbmcsIG91dGVyOiBOb3RpZmlhYmxlUmVmZXJlbmNlPGFueT4pOiBSZWZlcmVuY2U8VD47XG59XG5cbmV4cG9ydCBjbGFzcyBQcm9wZXJ0eVJlZmVyZW5jZTxUPiBpbXBsZW1lbnRzIFJlZmVyZW5jZTxUPiB7XG4gIHByaXZhdGUgb2JqZWN0OiBhbnk7XG4gIHByaXZhdGUgcHJvcGVydHk6IHN0cmluZztcbiAgcHVibGljIHRhZzogVGFnID0gQ1VSUkVOVF9UQUc7XG5cbiAgY29uc3RydWN0b3Iob2JqZWN0OiBhbnksIHByb3BlcnR5OiBzdHJpbmcsIF9vdXRlcjogTm90aWZpYWJsZVJlZmVyZW5jZTxUPikge1xuICAgIHRoaXMub2JqZWN0ID0gb2JqZWN0O1xuICAgIHRoaXMucHJvcGVydHkgPSBwcm9wZXJ0eTtcbiAgfVxuXG4gIHZhbHVlKCkgeyByZXR1cm4gdGhpcy5vYmplY3RbdGhpcy5wcm9wZXJ0eV07IH1cblxuICBsYWJlbCgpIHtcbiAgICByZXR1cm4gJ1tyZWZlcmVuY2UgUHJvcGVydHldJztcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gQ29tcHV0ZWRSZWZlcmVuY2VCbHVlcHJpbnQ8VD4oX3Byb3BlcnR5OiBhbnksIGRlcGVuZGVuY2llczogYW55KTogSW5uZXJSZWZlcmVuY2VGYWN0b3J5PFQ+IHtcbiAgcmV0dXJuIGNsYXNzIENvbXB1dGVkUmVmZXJlbmNlPFQ+IGltcGxlbWVudHMgUmVmZXJlbmNlPFQ+IHtcbiAgICBwcml2YXRlIG9iamVjdDogYW55O1xuICAgIHByaXZhdGUgcHJvcGVydHk6IHN0cmluZztcbiAgICBwcml2YXRlIGRlcGVuZGVuY2llczogc3RyaW5nW11bXTtcbiAgICBwcml2YXRlIGluc3RhbGxlZCA9IGZhbHNlO1xuICAgIHB1YmxpYyB0YWc6IFRhZyA9IENVUlJFTlRfVEFHO1xuXG4gICAgY29uc3RydWN0b3Iob2JqZWN0OiBhbnksIHByb3BlcnR5OiBzdHJpbmcpIHtcbiAgICAgIHRoaXMub2JqZWN0ID0gb2JqZWN0O1xuICAgICAgdGhpcy5wcm9wZXJ0eSA9IHByb3BlcnR5O1xuICAgICAgdGhpcy5kZXBlbmRlbmNpZXMgPSBkZXBlbmRlbmNpZXM7XG4gICAgfVxuXG4gICAgdmFsdWUoKTogVCB7XG4gICAgICBpZiAoIXRoaXMuaW5zdGFsbGVkKSB7XG4gICAgICAgIGxldCByb290ID0gTWV0YS5mb3IodGhpcy5vYmplY3QpLnJvb3QoKTtcblxuICAgICAgICB0aGlzLmRlcGVuZGVuY2llcy5mb3JFYWNoKGRlcCA9PiB7XG4gICAgICAgICAgbGV0IHJlZiA9IHJvb3QucmVmZXJlbmNlRnJvbVBhcnRzKGRlcCk7XG4gICAgICAgICAgcmVmLnZhbHVlKCk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuaW5zdGFsbGVkID0gdHJ1ZTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHRoaXMub2JqZWN0W3RoaXMucHJvcGVydHldO1xuICAgIH1cblxuICAgIGxhYmVsKCkge1xuICAgICAgcmV0dXJuICdbcmVmZXJlbmNlIENvbXB1dGVkXSc7XG4gICAgfVxuICB9O1xufVxuIl19
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzY3JpcHRvcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9AZ2xpbW1lci9vYmplY3QtcmVmZXJlbmNlL2xpYi9yZWZlcmVuY2VzL2Rlc2NyaXB0b3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUEsQUFBTyxBQUFJLEFBQU0sQUFBUyxBQUFDOzs7O0FBQzNCLEFBQU8sQUFBa0IsQUFBVyxBQUFFLEFBQU0sQUFBb0IsQUFBQyxBQU9qRSxBQUFNOzs7OztnQkFLUSxBQUFXLFFBQUUsQUFBZ0IsVUFBRSxBQUE4QixRQUZsRTthQUFHLEFBQVEsQUFBVyxBQUFDLEFBRzVCLEFBQUk7YUFBQyxBQUFNLFNBQUcsQUFBTSxBQUFDLEFBQ3JCLEFBQUk7YUFBQyxBQUFRLFdBQUcsQUFBUSxBQUFDLEFBQzNCLEFBQUM7QUFFRCxBQUFLO1lBQ0gsQUFBTTtlQUFDLEFBQUksS0FBQyxBQUFNLE9BQUMsQUFBSSxLQUFDLEFBQVEsQUFBQyxBQUFDLEFBQ3BDLEFBQUM7QUFFRCxBQUFLO1lBQ0gsQUFBTTtlQUFDLEFBQXNCLEFBQUMsQUFDaEMsQUFBQyxBQUNGO0FBRUQsQUFBTTtBQWRKOztvQ0FlQSxBQUFjLFdBQ2QsQUFBaUIsY0FFakIsQUFBTTtXQUFDO29CQU9PLEFBQVcsUUFBRSxBQUFnQixVQUhqQztpQkFBUyxZQUFHLEFBQUssQUFBQyxBQUNuQjtpQkFBRyxBQUFRLEFBQVcsQUFBQyxBQUc1QixBQUFJO2lCQUFDLEFBQU0sU0FBRyxBQUFNLEFBQUMsQUFDckIsQUFBSTtpQkFBQyxBQUFRLFdBQUcsQUFBUSxBQUFDLEFBQ3pCLEFBQUk7aUJBQUMsQUFBWSxlQUFHLEFBQVksQUFBQyxBQUNuQyxBQUFDO0FBRUQsQUFBSztnQkFDSCxBQUFFLEFBQUM7Z0JBQUMsQ0FBQyxBQUFJLEtBQUMsQUFBUyxBQUFDLFdBQUMsQUFBQyxBQUNwQjtvQkFBSSxBQUFJLE9BQUcsQUFBSSxlQUFDLEFBQUcsSUFBQyxBQUFJLEtBQUMsQUFBTSxBQUFDLFFBQUMsQUFBSSxBQUFFLEFBQUMsQUFFeEMsQUFBSTtxQkFBQyxBQUFZLGFBQUMsQUFBTyxRQUFDLEFBQUcsT0FDM0I7d0JBQUksQUFBRyxNQUFHLEFBQUksS0FBQyxBQUFrQixtQkFBQyxBQUFHLEFBQUMsQUFBQyxBQUN2QyxBQUFHO3dCQUFDLEFBQUssQUFBRSxBQUFDLEFBQ2QsQUFBQyxBQUFDLEFBQUM7QUFFSCxBQUFJO3FCQUFDLEFBQVMsWUFBRyxBQUFJLEFBQUMsQUFDeEIsQUFBQztBQUVELEFBQU07bUJBQUMsQUFBSSxLQUFDLEFBQU0sT0FBQyxBQUFJLEtBQUMsQUFBUSxBQUFDLEFBQUMsQUFDcEMsQUFBQztBQUVELEFBQUs7Z0JBQ0gsQUFBTTttQkFBQyxBQUFzQixBQUFDLEFBQ2hDLEFBQUMsQUFDRixBQUFDLEFBQ0o7QUFBQztBQXpCRyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBNZXRhIGZyb20gJy4uL21ldGEnO1xuaW1wb3J0IHsgUmVmZXJlbmNlLCBUYWcsIENVUlJFTlRfVEFHIH0gZnJvbSAnQGdsaW1tZXIvcmVmZXJlbmNlJztcbmltcG9ydCB7IE5vdGlmaWFibGVSZWZlcmVuY2UgfSBmcm9tICcuLi90eXBlcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSW5uZXJSZWZlcmVuY2VGYWN0b3J5PFQ+IHtcbiAgbmV3IChvYmplY3Q6IGFueSwgcHJvcGVydHk6IHN0cmluZywgb3V0ZXI6IE5vdGlmaWFibGVSZWZlcmVuY2U8YW55Pik6IFJlZmVyZW5jZTxUPjtcbn1cblxuZXhwb3J0IGNsYXNzIFByb3BlcnR5UmVmZXJlbmNlPFQ+IGltcGxlbWVudHMgUmVmZXJlbmNlPFQ+IHtcbiAgcHJpdmF0ZSBvYmplY3Q6IGFueTtcbiAgcHJpdmF0ZSBwcm9wZXJ0eTogc3RyaW5nO1xuICBwdWJsaWMgdGFnOiBUYWcgPSBDVVJSRU5UX1RBRztcblxuICBjb25zdHJ1Y3RvcihvYmplY3Q6IGFueSwgcHJvcGVydHk6IHN0cmluZywgX291dGVyOiBOb3RpZmlhYmxlUmVmZXJlbmNlPFQ+KSB7XG4gICAgdGhpcy5vYmplY3QgPSBvYmplY3Q7XG4gICAgdGhpcy5wcm9wZXJ0eSA9IHByb3BlcnR5O1xuICB9XG5cbiAgdmFsdWUoKSB7XG4gICAgcmV0dXJuIHRoaXMub2JqZWN0W3RoaXMucHJvcGVydHldO1xuICB9XG5cbiAgbGFiZWwoKSB7XG4gICAgcmV0dXJuICdbcmVmZXJlbmNlIFByb3BlcnR5XSc7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIENvbXB1dGVkUmVmZXJlbmNlQmx1ZXByaW50PFQ+KFxuICBfcHJvcGVydHk6IGFueSxcbiAgZGVwZW5kZW5jaWVzOiBhbnlcbik6IElubmVyUmVmZXJlbmNlRmFjdG9yeTxUPiB7XG4gIHJldHVybiBjbGFzcyBDb21wdXRlZFJlZmVyZW5jZTxUPiBpbXBsZW1lbnRzIFJlZmVyZW5jZTxUPiB7XG4gICAgcHJpdmF0ZSBvYmplY3Q6IGFueTtcbiAgICBwcml2YXRlIHByb3BlcnR5OiBzdHJpbmc7XG4gICAgcHJpdmF0ZSBkZXBlbmRlbmNpZXM6IHN0cmluZ1tdW107XG4gICAgcHJpdmF0ZSBpbnN0YWxsZWQgPSBmYWxzZTtcbiAgICBwdWJsaWMgdGFnOiBUYWcgPSBDVVJSRU5UX1RBRztcblxuICAgIGNvbnN0cnVjdG9yKG9iamVjdDogYW55LCBwcm9wZXJ0eTogc3RyaW5nKSB7XG4gICAgICB0aGlzLm9iamVjdCA9IG9iamVjdDtcbiAgICAgIHRoaXMucHJvcGVydHkgPSBwcm9wZXJ0eTtcbiAgICAgIHRoaXMuZGVwZW5kZW5jaWVzID0gZGVwZW5kZW5jaWVzO1xuICAgIH1cblxuICAgIHZhbHVlKCk6IFQge1xuICAgICAgaWYgKCF0aGlzLmluc3RhbGxlZCkge1xuICAgICAgICBsZXQgcm9vdCA9IE1ldGEuZm9yKHRoaXMub2JqZWN0KS5yb290KCk7XG5cbiAgICAgICAgdGhpcy5kZXBlbmRlbmNpZXMuZm9yRWFjaChkZXAgPT4ge1xuICAgICAgICAgIGxldCByZWYgPSByb290LnJlZmVyZW5jZUZyb21QYXJ0cyhkZXApO1xuICAgICAgICAgIHJlZi52YWx1ZSgpO1xuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLmluc3RhbGxlZCA9IHRydWU7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB0aGlzLm9iamVjdFt0aGlzLnByb3BlcnR5XTtcbiAgICB9XG5cbiAgICBsYWJlbCgpIHtcbiAgICAgIHJldHVybiAnW3JlZmVyZW5jZSBDb21wdXRlZF0nO1xuICAgIH1cbiAgfTtcbn1cbiJdfQ==

@@ -70,2 +70,2 @@ 'use strict';

exports.PathReference = PathReference;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF0aC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BnbGltbWVyL29iamVjdC1yZWZlcmVuY2UvbGliL3JlZmVyZW5jZXMvcGF0aC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUEsQUFBTyxBQUFFLEFBQVcsQUFBRSxBQUFNLEFBQVUsQUFBQzs7QUFDdkMsQUFBTyxBQUFFLEFBQUksQUFBRSxBQUFNLEFBQWUsQUFBQzs7QUFDckMsQUFBTyxBQUFJLEFBQU0sQUFBUyxBQUFDOzs7O0FBQzNCLEFBQU8sQUFBRSxBQUFpQixBQUFFLEFBQU0sQUFBZSxBQUFDOztBQUNsRCxBQUFPLEFBQW1ELEFBQVcsQUFBRSxBQUFNLEFBQW9CLEFBQUMsQUFJbEcsQUFBTSxBQUFDLEFBQU87Ozs7O2dCQVVBLEFBQXlCLFFBQUUsQUFBZ0IsVUFQN0M7YUFBSyxBQUFRLEFBQVcsQUFBQyxBQUMzQjthQUFLLFFBQXlCLEFBQUksQUFBQyxBQUNuQzthQUFNLFNBQXFDLEFBQUksQUFBQyxBQUNoRDthQUFlLEFBQVEsQUFBVyxBQUFDLEFBQ3BDO2FBQUssUUFBRyxBQUFDLEFBQUMsQUFDVjthQUFHLEFBQVEsQUFBVyxBQUFDLEFBRzVCLEFBQUk7YUFBQyxBQUFNLFNBQUcsQUFBTSxBQUFDLEFBQ3JCLEFBQUk7YUFBQyxBQUFRLFdBQUcsQUFBUSxBQUFDLEFBQzNCLEFBQUM7QUFFRCxBQUFLO1lBQ0g7WUFBSSxFQUFFLEFBQWUsaUJBQUUsQUFBUSxVQUFFLEFBQUssQUFBRSxVQUFHLEFBQUksQUFBQyxBQUNoRDtZQUFJLEFBQVcsY0FBRyxBQUFJLEtBQUMsQUFBWSxBQUFFLEFBQUMsQUFFdEMsQUFBRSxBQUFDO1lBQUMsQUFBVyxnQkFBSyxBQUFJLFFBQUksQUFBVyxnQkFBSyxBQUFTLEFBQUMsV0FBQyxBQUFDLEFBQ3RELEFBQU0sQUFBQzttQkFBQyxBQUFJLEtBQUMsQUFBSyxRQUFHLEFBQVMsQUFBQyxBQUFDLEFBQ2xDLEFBQUM7QUFFRCxBQUFFLEFBQUM7WUFBQyxBQUFlLG9CQUFLLEFBQVcsQUFBQyxhQUFDLEFBQUMsQUFDcEMsQUFBSztvQkFBRyxBQUFJLEtBQUMsQUFBSyxBQUFDLEFBQ3JCLEFBQUMsQUFBQyxBQUFJO2VBQUMsQUFBQyxBQUNOO2dCQUFJLEFBQWEsZ0JBQUcsT0FBTyxBQUFXLGdCQUFLLEFBQVEsV0FBRyxBQUFJLGVBQUMsQUFBRyxJQUFDLEFBQVcsQUFBQyxhQUFDLEFBQWdCLGlCQUFDLEFBQVEsQUFBQyxBQUFHLEFBQWlCLEFBQUMsQUFDM0gsQUFBSztvQkFBRyxBQUFJLEtBQUMsQUFBSyxRQUFHLElBQUksQUFBYSxjQUFDLEFBQVcsYUFBRSxBQUFRLFVBQUUsQUFBSSxBQUFDLEFBQUMsQUFDdEUsQUFBQztBQUVELEFBQXlDO0FBQ3pDLEFBQXdEO0FBQ3hELEFBQUk7QUFFSixBQUFNLEFBQUM7ZUFBQyxBQUFJLEtBQUMsQUFBSyxRQUFHLEFBQU0sTUFBQyxBQUFLLEFBQUUsQUFBQyxBQUFDLEFBQ3ZDLEFBQUM7QUFFRCxBQUFHO1FBQUMsQUFBWSxNQUNkO1lBQUksQUFBTSxTQUFHLEFBQUksS0FBQyxBQUFVLEFBQUUsQUFBQyxBQUMvQixBQUFFLEFBQUM7WUFBQyxBQUFjLFFBQUksQUFBTSxBQUFDLFFBQUMsQUFBTSxPQUFDLEFBQU0sT0FBQyxBQUFJLEFBQUMsQUFBQyxBQUNsRCxBQUFNLEFBQUM7ZUFBQyxBQUFNLE9BQUMsQUFBSSxBQUFDLFFBQUcsSUFBSSxBQUFhLGNBQUMsQUFBSSxNQUFFLEFBQUksQUFBQyxBQUFDLEFBQUMsQUFDeEQsQUFBQztBQUVELEFBQUs7WUFDSCxBQUFNO2VBQUMsQUFBb0IsQUFBQyxBQUM5QixBQUFDO0FBRU8sQUFBVTtpQkFDaEIsQUFBRSxBQUFDO1lBQUMsQUFBSSxLQUFDLEFBQU0sQUFBQyxRQUFDLEFBQU0sT0FBQyxBQUFJLEtBQUMsQUFBTSxBQUFDLEFBQ3BDLEFBQU0sQUFBQztlQUFDLEFBQUksS0FBQyxBQUFNLFNBQUcsQUFBSSxBQUFzQixBQUFDLEFBQUMsQUFDcEQsQUFBQztBQUVPLEFBQVk7bUJBQ2xCO1lBQUksQUFBTSxTQUFHLEFBQUksS0FBQyxBQUFNLE9BQUMsQUFBSyxBQUFFLEFBQUMsQUFDakMsQUFBSTthQUFDLEFBQWUsa0JBQUcsQUFBTSxBQUFDLEFBQzlCLEFBQU07ZUFBQyxBQUFNLEFBQUMsQUFDaEIsQUFBQyxBQUNGO0FBRUQsQUFBTztBQWpETDs7UUFpRE8sQUFBYSxBQUFFLEFBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFTVBUWV9DQUNIRSB9IGZyb20gJy4uL3V0aWxzJztcbmltcG9ydCB7IGRpY3QgfSBmcm9tICdAZ2xpbW1lci91dGlsJztcbmltcG9ydCBNZXRhIGZyb20gJy4uL21ldGEnO1xuaW1wb3J0IHsgUHJvcGVydHlSZWZlcmVuY2UgfSBmcm9tICcuL2Rlc2NyaXB0b3JzJztcbmltcG9ydCB7IFBhdGhSZWZlcmVuY2UgYXMgSVBhdGhSZWZlcmVuY2UsIFJlZmVyZW5jZSwgVGFnLCBDVVJSRU5UX1RBRyB9IGZyb20gJ0BnbGltbWVyL3JlZmVyZW5jZSc7XG5pbXBvcnQgeyBEaWN0LCBIYXNHdWlkIH0gZnJvbSAnQGdsaW1tZXIvdXRpbCc7XG5pbXBvcnQgeyBPcHRpb24gfSBmcm9tIFwiQGdsaW1tZXIvaW50ZXJmYWNlc1wiO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBQYXRoUmVmZXJlbmNlPFQ+IGltcGxlbWVudHMgSVBhdGhSZWZlcmVuY2U8VD4sIEhhc0d1aWQge1xuICBwcml2YXRlIHBhcmVudDogSVBhdGhSZWZlcmVuY2U8YW55PjtcbiAgcHJpdmF0ZSBwcm9wZXJ0eTogc3RyaW5nO1xuICBwcm90ZWN0ZWQgY2FjaGU6IGFueSA9IEVNUFRZX0NBQ0hFO1xuICBwcml2YXRlIGlubmVyOiBPcHRpb248UmVmZXJlbmNlPFQ+PiA9IG51bGw7XG4gIHByaXZhdGUgY2hhaW5zOiBPcHRpb248RGljdDxQYXRoUmVmZXJlbmNlPGFueT4+PiA9IG51bGw7XG4gIHByaXZhdGUgbGFzdFBhcmVudFZhbHVlOiBhbnkgPSBFTVBUWV9DQUNIRTtcbiAgcHVibGljIF9ndWlkID0gMDtcbiAgcHVibGljIHRhZzogVGFnID0gQ1VSUkVOVF9UQUc7XG5cbiAgY29uc3RydWN0b3IocGFyZW50OiBJUGF0aFJlZmVyZW5jZTxUPiwgcHJvcGVydHk6IHN0cmluZykge1xuICAgIHRoaXMucGFyZW50ID0gcGFyZW50O1xuICAgIHRoaXMucHJvcGVydHkgPSBwcm9wZXJ0eTtcbiAgfVxuXG4gIHZhbHVlKCk6IGFueSB7XG4gICAgbGV0IHsgbGFzdFBhcmVudFZhbHVlLCBwcm9wZXJ0eSwgaW5uZXIgfSA9IHRoaXM7XG4gICAgbGV0IHBhcmVudFZhbHVlID0gdGhpcy5fcGFyZW50VmFsdWUoKTtcblxuICAgIGlmIChwYXJlbnRWYWx1ZSA9PT0gbnVsbCB8fCBwYXJlbnRWYWx1ZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXR1cm4gKHRoaXMuY2FjaGUgPSB1bmRlZmluZWQpO1xuICAgIH1cblxuICAgIGlmIChsYXN0UGFyZW50VmFsdWUgPT09IHBhcmVudFZhbHVlKSB7XG4gICAgICBpbm5lciA9IHRoaXMuaW5uZXI7XG4gICAgfSBlbHNlIHtcbiAgICAgIGxldCBSZWZlcmVuY2VUeXBlID0gdHlwZW9mIHBhcmVudFZhbHVlID09PSAnb2JqZWN0JyA/IE1ldGEuZm9yKHBhcmVudFZhbHVlKS5yZWZlcmVuY2VUeXBlRm9yKHByb3BlcnR5KSA6IFByb3BlcnR5UmVmZXJlbmNlO1xuICAgICAgaW5uZXIgPSB0aGlzLmlubmVyID0gbmV3IFJlZmVyZW5jZVR5cGUocGFyZW50VmFsdWUsIHByb3BlcnR5LCB0aGlzKTtcbiAgICB9XG5cbiAgICAvLyBpZiAodHlwZW9mIHBhcmVudFZhbHVlID09PSAnb2JqZWN0Jykge1xuICAgIC8vICAgTWV0YS5mb3IocGFyZW50VmFsdWUpLmFkZFJlZmVyZW5jZShwcm9wZXJ0eSwgdGhpcyk7XG4gICAgLy8gfVxuXG4gICAgcmV0dXJuICh0aGlzLmNhY2hlID0gaW5uZXIhLnZhbHVlKCkpO1xuICB9XG5cbiAgZ2V0KHByb3A6IHN0cmluZyk6IElQYXRoUmVmZXJlbmNlPGFueT4ge1xuICAgIGxldCBjaGFpbnMgPSB0aGlzLl9nZXRDaGFpbnMoKTtcbiAgICBpZiAocHJvcCBhcyBzdHJpbmcgaW4gY2hhaW5zKSByZXR1cm4gY2hhaW5zW3Byb3BdO1xuICAgIHJldHVybiAoY2hhaW5zW3Byb3BdID0gbmV3IFBhdGhSZWZlcmVuY2UodGhpcywgcHJvcCkpO1xuICB9XG5cbiAgbGFiZWwoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJ1tyZWZlcmVuY2UgRGlyZWN0XSc7XG4gIH1cblxuICBwcml2YXRlIF9nZXRDaGFpbnMoKTogRGljdDxQYXRoUmVmZXJlbmNlPGFueT4+IHtcbiAgICBpZiAodGhpcy5jaGFpbnMpIHJldHVybiB0aGlzLmNoYWlucztcbiAgICByZXR1cm4gKHRoaXMuY2hhaW5zID0gZGljdDxQYXRoUmVmZXJlbmNlPGFueT4+KCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBfcGFyZW50VmFsdWUoKSB7XG4gICAgbGV0IHBhcmVudCA9IHRoaXMucGFyZW50LnZhbHVlKCk7XG4gICAgdGhpcy5sYXN0UGFyZW50VmFsdWUgPSBwYXJlbnQ7XG4gICAgcmV0dXJuIHBhcmVudDtcbiAgfVxufVxuXG5leHBvcnQgeyBQYXRoUmVmZXJlbmNlIH07XG4iXX0=
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF0aC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BnbGltbWVyL29iamVjdC1yZWZlcmVuY2UvbGliL3JlZmVyZW5jZXMvcGF0aC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUEsQUFBTyxBQUFFLEFBQVcsQUFBRSxBQUFNLEFBQVUsQUFBQzs7QUFDdkMsQUFBTyxBQUFFLEFBQUksQUFBRSxBQUFNLEFBQWUsQUFBQzs7QUFDckMsQUFBTyxBQUFJLEFBQU0sQUFBUyxBQUFDOzs7O0FBQzNCLEFBQU8sQUFBRSxBQUFpQixBQUFFLEFBQU0sQUFBZSxBQUFDOztBQUNsRCxBQUFPLEFBQW1ELEFBQVcsQUFBRSxBQUFNLEFBQW9CLEFBQUMsQUFJbEcsQUFBTSxBQUFDLEFBQU87Ozs7O2dCQVVBLEFBQXlCLFFBQUUsQUFBZ0IsVUFQN0M7YUFBSyxBQUFRLEFBQVcsQUFBQyxBQUMzQjthQUFLLFFBQXlCLEFBQUksQUFBQyxBQUNuQzthQUFNLFNBQXFDLEFBQUksQUFBQyxBQUNoRDthQUFlLEFBQVEsQUFBVyxBQUFDLEFBQ3BDO2FBQUssUUFBRyxBQUFDLEFBQUMsQUFDVjthQUFHLEFBQVEsQUFBVyxBQUFDLEFBRzVCLEFBQUk7YUFBQyxBQUFNLFNBQUcsQUFBTSxBQUFDLEFBQ3JCLEFBQUk7YUFBQyxBQUFRLFdBQUcsQUFBUSxBQUFDLEFBQzNCLEFBQUM7QUFFRCxBQUFLO1lBQ0g7WUFBSSxFQUFFLEFBQWUsaUJBQUUsQUFBUSxVQUFFLEFBQUssQUFBRSxVQUFHLEFBQUksQUFBQyxBQUNoRDtZQUFJLEFBQVcsY0FBRyxBQUFJLEtBQUMsQUFBWSxBQUFFLEFBQUMsQUFFdEMsQUFBRSxBQUFDO1lBQUMsQUFBVyxnQkFBSyxBQUFJLFFBQUksQUFBVyxnQkFBSyxBQUFTLEFBQUMsV0FBQyxBQUFDLEFBQ3RELEFBQU0sQUFBQzttQkFBQyxBQUFJLEtBQUMsQUFBSyxRQUFHLEFBQVMsQUFBQyxBQUFDLEFBQ2xDLEFBQUM7QUFFRCxBQUFFLEFBQUM7WUFBQyxBQUFlLG9CQUFLLEFBQVcsQUFBQyxhQUFDLEFBQUMsQUFDcEMsQUFBSztvQkFBRyxBQUFJLEtBQUMsQUFBSyxBQUFDLEFBQ3JCLEFBQUMsQUFBQyxBQUFJO2VBQUMsQUFBQyxBQUNOO2dCQUFJLEFBQWEsZ0JBQ2YsT0FBTyxBQUFXLGdCQUFLLEFBQVEsV0FDM0IsQUFBSSxlQUFDLEFBQUcsSUFBQyxBQUFXLEFBQUMsYUFBQyxBQUFnQixpQkFBQyxBQUFRLEFBQUMsQUFDaEQsQUFBaUIsQUFBQyxBQUN4QixBQUFLO29CQUFHLEFBQUksS0FBQyxBQUFLLFFBQUcsSUFBSSxBQUFhLGNBQUMsQUFBVyxhQUFFLEFBQVEsVUFBRSxBQUFJLEFBQUMsQUFBQyxBQUN0RSxBQUFDO0FBRUQsQUFBeUM7QUFDekMsQUFBd0Q7QUFDeEQsQUFBSTtBQUVKLEFBQU0sQUFBQztlQUFDLEFBQUksS0FBQyxBQUFLLFFBQUcsQUFBTSxNQUFDLEFBQUssQUFBRSxBQUFDLEFBQUMsQUFDdkMsQUFBQztBQUVELEFBQUc7UUFBQyxBQUFZLE1BQ2Q7WUFBSSxBQUFNLFNBQUcsQUFBSSxLQUFDLEFBQVUsQUFBRSxBQUFDLEFBQy9CLEFBQUUsQUFBQztZQUFFLEFBQWUsUUFBSSxBQUFNLEFBQUMsUUFBQyxBQUFNLE9BQUMsQUFBTSxPQUFDLEFBQUksQUFBQyxBQUFDLEFBQ3BELEFBQU0sQUFBQztlQUFDLEFBQU0sT0FBQyxBQUFJLEFBQUMsUUFBRyxJQUFJLEFBQWEsY0FBQyxBQUFJLE1BQUUsQUFBSSxBQUFDLEFBQUMsQUFBQyxBQUN4RCxBQUFDO0FBRUQsQUFBSztZQUNILEFBQU07ZUFBQyxBQUFvQixBQUFDLEFBQzlCLEFBQUM7QUFFTyxBQUFVO2lCQUNoQixBQUFFLEFBQUM7WUFBQyxBQUFJLEtBQUMsQUFBTSxBQUFDLFFBQUMsQUFBTSxPQUFDLEFBQUksS0FBQyxBQUFNLEFBQUMsQUFDcEMsQUFBTSxBQUFDO2VBQUMsQUFBSSxLQUFDLEFBQU0sU0FBRyxBQUFJLEFBQXNCLEFBQUMsQUFBQyxBQUNwRCxBQUFDO0FBRU8sQUFBWTttQkFDbEI7WUFBSSxBQUFNLFNBQUcsQUFBSSxLQUFDLEFBQU0sT0FBQyxBQUFLLEFBQUUsQUFBQyxBQUNqQyxBQUFJO2FBQUMsQUFBZSxrQkFBRyxBQUFNLEFBQUMsQUFDOUIsQUFBTTtlQUFDLEFBQU0sQUFBQyxBQUNoQixBQUFDLEFBQ0Y7QUFFRCxBQUFPO0FBcERMOztRQW9ETyxBQUFhLEFBQUUsQUFBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVNUFRZX0NBQ0hFIH0gZnJvbSAnLi4vdXRpbHMnO1xuaW1wb3J0IHsgZGljdCB9IGZyb20gJ0BnbGltbWVyL3V0aWwnO1xuaW1wb3J0IE1ldGEgZnJvbSAnLi4vbWV0YSc7XG5pbXBvcnQgeyBQcm9wZXJ0eVJlZmVyZW5jZSB9IGZyb20gJy4vZGVzY3JpcHRvcnMnO1xuaW1wb3J0IHsgUGF0aFJlZmVyZW5jZSBhcyBJUGF0aFJlZmVyZW5jZSwgUmVmZXJlbmNlLCBUYWcsIENVUlJFTlRfVEFHIH0gZnJvbSAnQGdsaW1tZXIvcmVmZXJlbmNlJztcbmltcG9ydCB7IERpY3QsIEhhc0d1aWQgfSBmcm9tICdAZ2xpbW1lci91dGlsJztcbmltcG9ydCB7IE9wdGlvbiB9IGZyb20gJ0BnbGltbWVyL2ludGVyZmFjZXMnO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBQYXRoUmVmZXJlbmNlPFQ+IGltcGxlbWVudHMgSVBhdGhSZWZlcmVuY2U8VD4sIEhhc0d1aWQge1xuICBwcml2YXRlIHBhcmVudDogSVBhdGhSZWZlcmVuY2U8YW55PjtcbiAgcHJpdmF0ZSBwcm9wZXJ0eTogc3RyaW5nO1xuICBwcm90ZWN0ZWQgY2FjaGU6IGFueSA9IEVNUFRZX0NBQ0hFO1xuICBwcml2YXRlIGlubmVyOiBPcHRpb248UmVmZXJlbmNlPFQ+PiA9IG51bGw7XG4gIHByaXZhdGUgY2hhaW5zOiBPcHRpb248RGljdDxQYXRoUmVmZXJlbmNlPGFueT4+PiA9IG51bGw7XG4gIHByaXZhdGUgbGFzdFBhcmVudFZhbHVlOiBhbnkgPSBFTVBUWV9DQUNIRTtcbiAgcHVibGljIF9ndWlkID0gMDtcbiAgcHVibGljIHRhZzogVGFnID0gQ1VSUkVOVF9UQUc7XG5cbiAgY29uc3RydWN0b3IocGFyZW50OiBJUGF0aFJlZmVyZW5jZTxUPiwgcHJvcGVydHk6IHN0cmluZykge1xuICAgIHRoaXMucGFyZW50ID0gcGFyZW50O1xuICAgIHRoaXMucHJvcGVydHkgPSBwcm9wZXJ0eTtcbiAgfVxuXG4gIHZhbHVlKCk6IGFueSB7XG4gICAgbGV0IHsgbGFzdFBhcmVudFZhbHVlLCBwcm9wZXJ0eSwgaW5uZXIgfSA9IHRoaXM7XG4gICAgbGV0IHBhcmVudFZhbHVlID0gdGhpcy5fcGFyZW50VmFsdWUoKTtcblxuICAgIGlmIChwYXJlbnRWYWx1ZSA9PT0gbnVsbCB8fCBwYXJlbnRWYWx1ZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXR1cm4gKHRoaXMuY2FjaGUgPSB1bmRlZmluZWQpO1xuICAgIH1cblxuICAgIGlmIChsYXN0UGFyZW50VmFsdWUgPT09IHBhcmVudFZhbHVlKSB7XG4gICAgICBpbm5lciA9IHRoaXMuaW5uZXI7XG4gICAgfSBlbHNlIHtcbiAgICAgIGxldCBSZWZlcmVuY2VUeXBlID1cbiAgICAgICAgdHlwZW9mIHBhcmVudFZhbHVlID09PSAnb2JqZWN0J1xuICAgICAgICAgID8gTWV0YS5mb3IocGFyZW50VmFsdWUpLnJlZmVyZW5jZVR5cGVGb3IocHJvcGVydHkpXG4gICAgICAgICAgOiBQcm9wZXJ0eVJlZmVyZW5jZTtcbiAgICAgIGlubmVyID0gdGhpcy5pbm5lciA9IG5ldyBSZWZlcmVuY2VUeXBlKHBhcmVudFZhbHVlLCBwcm9wZXJ0eSwgdGhpcyk7XG4gICAgfVxuXG4gICAgLy8gaWYgKHR5cGVvZiBwYXJlbnRWYWx1ZSA9PT0gJ29iamVjdCcpIHtcbiAgICAvLyAgIE1ldGEuZm9yKHBhcmVudFZhbHVlKS5hZGRSZWZlcmVuY2UocHJvcGVydHksIHRoaXMpO1xuICAgIC8vIH1cblxuICAgIHJldHVybiAodGhpcy5jYWNoZSA9IGlubmVyIS52YWx1ZSgpKTtcbiAgfVxuXG4gIGdldChwcm9wOiBzdHJpbmcpOiBJUGF0aFJlZmVyZW5jZTxhbnk+IHtcbiAgICBsZXQgY2hhaW5zID0gdGhpcy5fZ2V0Q2hhaW5zKCk7XG4gICAgaWYgKChwcm9wIGFzIHN0cmluZykgaW4gY2hhaW5zKSByZXR1cm4gY2hhaW5zW3Byb3BdO1xuICAgIHJldHVybiAoY2hhaW5zW3Byb3BdID0gbmV3IFBhdGhSZWZlcmVuY2UodGhpcywgcHJvcCkpO1xuICB9XG5cbiAgbGFiZWwoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJ1tyZWZlcmVuY2UgRGlyZWN0XSc7XG4gIH1cblxuICBwcml2YXRlIF9nZXRDaGFpbnMoKTogRGljdDxQYXRoUmVmZXJlbmNlPGFueT4+IHtcbiAgICBpZiAodGhpcy5jaGFpbnMpIHJldHVybiB0aGlzLmNoYWlucztcbiAgICByZXR1cm4gKHRoaXMuY2hhaW5zID0gZGljdDxQYXRoUmVmZXJlbmNlPGFueT4+KCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBfcGFyZW50VmFsdWUoKSB7XG4gICAgbGV0IHBhcmVudCA9IHRoaXMucGFyZW50LnZhbHVlKCk7XG4gICAgdGhpcy5sYXN0UGFyZW50VmFsdWUgPSBwYXJlbnQ7XG4gICAgcmV0dXJuIHBhcmVudDtcbiAgfVxufVxuXG5leHBvcnQgeyBQYXRoUmVmZXJlbmNlIH07XG4iXX0=

@@ -47,2 +47,2 @@ 'use strict';

exports.default = RootReference;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BnbGltbWVyL29iamVjdC1yZWZlcmVuY2UvbGliL3JlZmVyZW5jZXMvcm9vdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxBQUFPLEFBQWtCLEFBQUksQUFBRSxBQUFNLEFBQWUsQUFBQzs7QUFDckQsQUFBTyxBQUFFLEFBQWEsQUFBRSxBQUFNLEFBQVEsQUFBQzs7QUFFdkMsQUFBTyxBQUF3QyxBQUFXLEFBQUUsQUFBSSxBQUFFLEFBQU0sQUFBb0IsQUFBQyxBQUU3RixBQUFNLEFBQUMsQUFBTzs7O2dCQUtBLEFBQVMsUUFIYjthQUFNLFNBQUcsQUFBSSxBQUFzQixBQUFDLEFBQ3JDO2FBQUcsQUFBUSxBQUFXLEFBQUMsQUFHNUIsQUFBSTthQUFDLEFBQU0sU0FBRyxBQUFNLEFBQUMsQUFDdkIsQUFBQztBQUVELEFBQUs7WUFBUSxBQUFNO2VBQUMsQUFBSSxLQUFDLEFBQU0sQUFBQyxBQUFDLEFBQUM7QUFFbEMsQUFBTTtXQUFDLEFBQVMsUUFDZCxBQUFJO2FBQUMsQUFBTSxTQUFHLEFBQU0sQUFBQyxBQUNyQixBQUFJLEFBQUUsQUFBQyxBQUNUO0FBQUM7QUFFRCxBQUFHO1FBQUksQUFBWSxNQUNqQjtZQUFJLEFBQU0sU0FBRyxBQUFJLEtBQUMsQUFBTSxBQUFDLEFBQ3pCLEFBQUUsQUFBQztZQUFDLEFBQWMsUUFBSSxBQUFNLEFBQUMsUUFBQyxBQUFNLE9BQUMsQUFBTSxPQUFDLEFBQUksQUFBQyxBQUFDLEFBQ2xELEFBQU0sQUFBQztlQUFDLEFBQU0sT0FBQyxBQUFJLEFBQUMsUUFBRyxBQUFJLEFBQWEsd0JBQUMsQUFBSSxNQUFFLEFBQUksQUFBQyxBQUFDLEFBQUMsQUFDeEQsQUFBQztBQUVELEFBQVE7YUFBSSxBQUFZLE1BQ3RCO1lBQUksQUFBTSxTQUFHLEFBQUksS0FBQyxBQUFNLEFBQUMsQUFDekIsQUFBRSxBQUFDO1lBQUMsQUFBYyxRQUFJLEFBQU0sQUFBQyxRQUFDLEFBQU0sT0FBQyxBQUFNLE9BQUMsQUFBSSxBQUFDLEFBQUMsQUFDbEQsQUFBTTtlQUFDLEFBQUksQUFBQyxBQUNkLEFBQUM7QUFFRCxBQUFJO1NBQUMsQUFBYyxRQUNqQixBQUFNO2VBQUMsQUFBSSxLQUFDLEFBQWtCLG1CQUFDLEFBQU0sT0FBQyxBQUFLLE1BQUMsQUFBRyxBQUFDLEFBQUMsQUFBQyxBQUNwRCxBQUFDO0FBRUQsQUFBa0I7dUJBQUMsQUFBZSxPQUNoQyxBQUFNO2VBQUMsQUFBSyxNQUFDLEFBQU0sT0FBQyxDQUFDLEFBQUcsS0FBRSxBQUFJLFNBQUssQUFBRyxJQUFDLEFBQUcsSUFBQyxBQUFJLEFBQTJCLE9BQUUsQUFBOEIsQUFBQyxBQUFDLEFBQzlHLEFBQUM7QUFFRCxBQUFLO1lBQ0gsQUFBTTtlQUFDLEFBQWtCLEFBQUMsQUFDNUIsQUFBQyxBQUNGOztBQWxDQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9wdGlvbiwgT3BhcXVlLCBkaWN0IH0gZnJvbSAnQGdsaW1tZXIvdXRpbCc7XG5pbXBvcnQgeyBQYXRoUmVmZXJlbmNlIH0gZnJvbSAnLi9wYXRoJztcbmltcG9ydCB7IFJvb3RSZWZlcmVuY2UgYXMgSVJvb3RSZWZlcmVuY2UgfSBmcm9tICcuLi90eXBlcyc7XG5pbXBvcnQgeyBQYXRoUmVmZXJlbmNlIGFzIElQYXRoUmVmZXJlbmNlLCBUYWcsIENVUlJFTlRfVEFHLCBidW1wIH0gZnJvbSAnQGdsaW1tZXIvcmVmZXJlbmNlJztcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgUm9vdFJlZmVyZW5jZTxUPiBpbXBsZW1lbnRzIElSb290UmVmZXJlbmNlPFQ+LCBJUGF0aFJlZmVyZW5jZTxUPiB7XG4gIHByaXZhdGUgb2JqZWN0OiBUO1xuICBwcml2YXRlIGNoYWlucyA9IGRpY3Q8UGF0aFJlZmVyZW5jZTxhbnk+PigpO1xuICBwdWJsaWMgdGFnOiBUYWcgPSBDVVJSRU5UX1RBRztcblxuICBjb25zdHJ1Y3RvcihvYmplY3Q6IFQpIHtcbiAgICB0aGlzLm9iamVjdCA9IG9iamVjdDtcbiAgfVxuXG4gIHZhbHVlKCk6IFQgeyByZXR1cm4gdGhpcy5vYmplY3Q7IH1cblxuICB1cGRhdGUob2JqZWN0OiBUKSB7XG4gICAgdGhpcy5vYmplY3QgPSBvYmplY3Q7XG4gICAgYnVtcCgpO1xuICB9XG5cbiAgZ2V0PFU+KHByb3A6IHN0cmluZyk6IElQYXRoUmVmZXJlbmNlPFU+IHtcbiAgICBsZXQgY2hhaW5zID0gdGhpcy5jaGFpbnM7XG4gICAgaWYgKHByb3AgYXMgc3RyaW5nIGluIGNoYWlucykgcmV0dXJuIGNoYWluc1twcm9wXTtcbiAgICByZXR1cm4gKGNoYWluc1twcm9wXSA9IG5ldyBQYXRoUmVmZXJlbmNlKHRoaXMsIHByb3ApKTtcbiAgfVxuXG4gIGNoYWluRm9yPFU+KHByb3A6IHN0cmluZyk6IE9wdGlvbjxJUGF0aFJlZmVyZW5jZTxVPj4ge1xuICAgIGxldCBjaGFpbnMgPSB0aGlzLmNoYWlucztcbiAgICBpZiAocHJvcCBhcyBzdHJpbmcgaW4gY2hhaW5zKSByZXR1cm4gY2hhaW5zW3Byb3BdO1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgcGF0aChzdHJpbmc6IHN0cmluZyk6IElQYXRoUmVmZXJlbmNlPE9wYXF1ZT4ge1xuICAgIHJldHVybiB0aGlzLnJlZmVyZW5jZUZyb21QYXJ0cyhzdHJpbmcuc3BsaXQoJy4nKSk7XG4gIH1cblxuICByZWZlcmVuY2VGcm9tUGFydHMocGFydHM6IHN0cmluZ1tdKTogSVBhdGhSZWZlcmVuY2U8T3BhcXVlPiB7XG4gICAgcmV0dXJuIHBhcnRzLnJlZHVjZSgocmVmLCBwYXJ0KSA9PiByZWYuZ2V0KHBhcnQpIGFzIElQYXRoUmVmZXJlbmNlPE9wYXF1ZT4sIHRoaXMgYXMgSVBhdGhSZWZlcmVuY2U8T3BhcXVlPik7XG4gIH1cblxuICBsYWJlbCgpIHtcbiAgICByZXR1cm4gJ1tyZWZlcmVuY2UgUm9vdF0nO1xuICB9XG59XG4iXX0=
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BnbGltbWVyL29iamVjdC1yZWZlcmVuY2UvbGliL3JlZmVyZW5jZXMvcm9vdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxBQUFPLEFBQWtCLEFBQUksQUFBRSxBQUFNLEFBQWUsQUFBQzs7QUFDckQsQUFBTyxBQUFFLEFBQWEsQUFBRSxBQUFNLEFBQVEsQUFBQzs7QUFFdkMsQUFBTyxBQUF3QyxBQUFXLEFBQUUsQUFBSSxBQUFFLEFBQU0sQUFBb0IsQUFBQyxBQUU3RixBQUFNLEFBQUMsQUFBTzs7O2dCQUtBLEFBQVMsUUFIYjthQUFNLFNBQUcsQUFBSSxBQUFzQixBQUFDLEFBQ3JDO2FBQUcsQUFBUSxBQUFXLEFBQUMsQUFHNUIsQUFBSTthQUFDLEFBQU0sU0FBRyxBQUFNLEFBQUMsQUFDdkIsQUFBQztBQUVELEFBQUs7WUFDSCxBQUFNO2VBQUMsQUFBSSxLQUFDLEFBQU0sQUFBQyxBQUNyQixBQUFDO0FBRUQsQUFBTTtXQUFDLEFBQVMsUUFDZCxBQUFJO2FBQUMsQUFBTSxTQUFHLEFBQU0sQUFBQyxBQUNyQixBQUFJLEFBQUUsQUFBQyxBQUNUO0FBQUM7QUFFRCxBQUFHO1FBQUksQUFBWSxNQUNqQjtZQUFJLEFBQU0sU0FBRyxBQUFJLEtBQUMsQUFBTSxBQUFDLEFBQ3pCLEFBQUUsQUFBQztZQUFFLEFBQWUsUUFBSSxBQUFNLEFBQUMsUUFBQyxBQUFNLE9BQUMsQUFBTSxPQUFDLEFBQUksQUFBQyxBQUFDLEFBQ3BELEFBQU0sQUFBQztlQUFDLEFBQU0sT0FBQyxBQUFJLEFBQUMsUUFBRyxBQUFJLEFBQWEsd0JBQUMsQUFBSSxNQUFFLEFBQUksQUFBQyxBQUFDLEFBQUMsQUFDeEQsQUFBQztBQUVELEFBQVE7YUFBSSxBQUFZLE1BQ3RCO1lBQUksQUFBTSxTQUFHLEFBQUksS0FBQyxBQUFNLEFBQUMsQUFDekIsQUFBRSxBQUFDO1lBQUUsQUFBZSxRQUFJLEFBQU0sQUFBQyxRQUFDLEFBQU0sT0FBQyxBQUFNLE9BQUMsQUFBSSxBQUFDLEFBQUMsQUFDcEQsQUFBTTtlQUFDLEFBQUksQUFBQyxBQUNkLEFBQUM7QUFFRCxBQUFJO1NBQUMsQUFBYyxRQUNqQixBQUFNO2VBQUMsQUFBSSxLQUFDLEFBQWtCLG1CQUFDLEFBQU0sT0FBQyxBQUFLLE1BQUMsQUFBRyxBQUFDLEFBQUMsQUFBQyxBQUNwRCxBQUFDO0FBRUQsQUFBa0I7dUJBQUMsQUFBZSxPQUNoQyxBQUFNO2VBQUMsQUFBSyxNQUFDLEFBQU0sT0FDakIsQ0FBQyxBQUFHLEtBQUUsQUFBSSxTQUFLLEFBQUcsSUFBQyxBQUFHLElBQUMsQUFBSSxBQUEyQixPQUN0RCxBQUE4QixBQUMvQixBQUFDLEFBQ0osQUFBQztBQUVELEFBQUs7WUFDSCxBQUFNO2VBQUMsQUFBa0IsQUFBQyxBQUM1QixBQUFDLEFBQ0Y7O0FBdkNDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT3B0aW9uLCBPcGFxdWUsIGRpY3QgfSBmcm9tICdAZ2xpbW1lci91dGlsJztcbmltcG9ydCB7IFBhdGhSZWZlcmVuY2UgfSBmcm9tICcuL3BhdGgnO1xuaW1wb3J0IHsgUm9vdFJlZmVyZW5jZSBhcyBJUm9vdFJlZmVyZW5jZSB9IGZyb20gJy4uL3R5cGVzJztcbmltcG9ydCB7IFBhdGhSZWZlcmVuY2UgYXMgSVBhdGhSZWZlcmVuY2UsIFRhZywgQ1VSUkVOVF9UQUcsIGJ1bXAgfSBmcm9tICdAZ2xpbW1lci9yZWZlcmVuY2UnO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBSb290UmVmZXJlbmNlPFQ+IGltcGxlbWVudHMgSVJvb3RSZWZlcmVuY2U8VD4sIElQYXRoUmVmZXJlbmNlPFQ+IHtcbiAgcHJpdmF0ZSBvYmplY3Q6IFQ7XG4gIHByaXZhdGUgY2hhaW5zID0gZGljdDxQYXRoUmVmZXJlbmNlPGFueT4+KCk7XG4gIHB1YmxpYyB0YWc6IFRhZyA9IENVUlJFTlRfVEFHO1xuXG4gIGNvbnN0cnVjdG9yKG9iamVjdDogVCkge1xuICAgIHRoaXMub2JqZWN0ID0gb2JqZWN0O1xuICB9XG5cbiAgdmFsdWUoKTogVCB7XG4gICAgcmV0dXJuIHRoaXMub2JqZWN0O1xuICB9XG5cbiAgdXBkYXRlKG9iamVjdDogVCkge1xuICAgIHRoaXMub2JqZWN0ID0gb2JqZWN0O1xuICAgIGJ1bXAoKTtcbiAgfVxuXG4gIGdldDxVPihwcm9wOiBzdHJpbmcpOiBJUGF0aFJlZmVyZW5jZTxVPiB7XG4gICAgbGV0IGNoYWlucyA9IHRoaXMuY2hhaW5zO1xuICAgIGlmICgocHJvcCBhcyBzdHJpbmcpIGluIGNoYWlucykgcmV0dXJuIGNoYWluc1twcm9wXTtcbiAgICByZXR1cm4gKGNoYWluc1twcm9wXSA9IG5ldyBQYXRoUmVmZXJlbmNlKHRoaXMsIHByb3ApKTtcbiAgfVxuXG4gIGNoYWluRm9yPFU+KHByb3A6IHN0cmluZyk6IE9wdGlvbjxJUGF0aFJlZmVyZW5jZTxVPj4ge1xuICAgIGxldCBjaGFpbnMgPSB0aGlzLmNoYWlucztcbiAgICBpZiAoKHByb3AgYXMgc3RyaW5nKSBpbiBjaGFpbnMpIHJldHVybiBjaGFpbnNbcHJvcF07XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBwYXRoKHN0cmluZzogc3RyaW5nKTogSVBhdGhSZWZlcmVuY2U8T3BhcXVlPiB7XG4gICAgcmV0dXJuIHRoaXMucmVmZXJlbmNlRnJvbVBhcnRzKHN0cmluZy5zcGxpdCgnLicpKTtcbiAgfVxuXG4gIHJlZmVyZW5jZUZyb21QYXJ0cyhwYXJ0czogc3RyaW5nW10pOiBJUGF0aFJlZmVyZW5jZTxPcGFxdWU+IHtcbiAgICByZXR1cm4gcGFydHMucmVkdWNlKFxuICAgICAgKHJlZiwgcGFydCkgPT4gcmVmLmdldChwYXJ0KSBhcyBJUGF0aFJlZmVyZW5jZTxPcGFxdWU+LFxuICAgICAgdGhpcyBhcyBJUGF0aFJlZmVyZW5jZTxPcGFxdWU+XG4gICAgKTtcbiAgfVxuXG4gIGxhYmVsKCkge1xuICAgIHJldHVybiAnW3JlZmVyZW5jZSBSb290XSc7XG4gIH1cbn1cbiJdfQ==

@@ -1,2 +0,2 @@

"use strict";
'use strict';

@@ -7,5 +7,5 @@ Object.defineProperty(exports, "__esModule", {

var _descriptors = require("./lib/references/descriptors");
var _descriptors = require('./lib/references/descriptors');
Object.defineProperty(exports, "ComputedReferenceBlueprint", {
Object.defineProperty(exports, 'ComputedReferenceBlueprint', {
enumerable: true,

@@ -16,3 +16,3 @@ get: function () {

});
Object.defineProperty(exports, "PropertyReference", {
Object.defineProperty(exports, 'PropertyReference', {
enumerable: true,

@@ -24,5 +24,5 @@ get: function () {

var _meta = require("./lib/meta");
var _meta = require('./lib/meta');
Object.defineProperty(exports, "CLASS_META", {
Object.defineProperty(exports, 'CLASS_META', {
enumerable: true,

@@ -33,3 +33,3 @@ get: function () {

});
Object.defineProperty(exports, "Meta", {
Object.defineProperty(exports, 'Meta', {
enumerable: true,

@@ -40,3 +40,3 @@ get: function () {

});
Object.defineProperty(exports, "metaFor", {
Object.defineProperty(exports, 'metaFor', {
enumerable: true,

@@ -48,5 +48,5 @@ get: function () {

var _object = require("./lib/object");
var _object = require('./lib/object');
Object.defineProperty(exports, "setProperty", {
Object.defineProperty(exports, 'setProperty', {
enumerable: true,

@@ -57,3 +57,3 @@ get: function () {

});
Object.defineProperty(exports, "notifyProperty", {
Object.defineProperty(exports, 'notifyProperty', {
enumerable: true,

@@ -65,5 +65,5 @@ get: function () {

var _path = require("./lib/references/path");
var _path = require('./lib/references/path');
Object.defineProperty(exports, "ObjectReference", {
Object.defineProperty(exports, 'ObjectReference', {
enumerable: true,

@@ -75,5 +75,5 @@ get: function () {

var _root = require("./lib/references/root");
var _root = require('./lib/references/root');
Object.defineProperty(exports, "UpdatableReference", {
Object.defineProperty(exports, 'UpdatableReference', {
enumerable: true,

@@ -85,5 +85,5 @@ get: function () {

var _reference = require("@glimmer/reference");
var _reference = require('@glimmer/reference');
Object.defineProperty(exports, "ConstReference", {
Object.defineProperty(exports, 'ConstReference', {
enumerable: true,

@@ -94,3 +94,3 @@ get: function () {

});
Object.defineProperty(exports, "isConst", {
Object.defineProperty(exports, 'isConst', {
enumerable: true,

@@ -103,2 +103,2 @@ get: function () {

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wYWNrYWdlcy9AZ2xpbW1lci9vYmplY3QtcmVmZXJlbmNlL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O3dCQUFTLEFBQTBCOzs7Ozs7d0JBQXlCLEFBQWlCLEFBQUUsQUFBTSxBQUE4QixBQUFDLEFBQ3BILEFBQU87Ozs7Ozs7OztpQkFBRSxBQUFVOzs7Ozs7eUNBQUUsQUFBTyxBQUFJLEFBQUk7Ozs7OztpQkFBRSxBQUFPLEFBQUUsQUFBTSxBQUFZLEFBQUMsQUFDbEUsQUFBTzs7Ozs7Ozs7O21CQUFFLEFBQVc7Ozs7OzttQkFBRSxBQUFjLEFBQUUsQUFBTSxBQUFjLEFBQUMsQUFFM0QsQUFBTzs7Ozs7Ozs7O3lDQUFFLEFBQU8sQUFBSSxBQUFlLEFBQUUsQUFBTSxBQUF1QixBQUFDLEFBQ25FLEFBQU87Ozs7Ozs7Ozt5Q0FBRSxBQUFPLEFBQUksQUFBa0IsQUFBRSxBQUFNLEFBQXVCLEFBQUMsQUFDdEUsQUFBTzs7Ozs7Ozs7O3NCQUFFLEFBQWM7Ozs7OztzQkFBRSxBQUFPLEFBQUUsQUFBTSxBQUFvQixBQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHsgQ29tcHV0ZWRSZWZlcmVuY2VCbHVlcHJpbnQsIElubmVyUmVmZXJlbmNlRmFjdG9yeSwgUHJvcGVydHlSZWZlcmVuY2UgfSBmcm9tIFwiLi9saWIvcmVmZXJlbmNlcy9kZXNjcmlwdG9yc1wiO1xuZXhwb3J0IHsgQ0xBU1NfTUVUQSwgZGVmYXVsdCBhcyBNZXRhLCBtZXRhRm9yIH0gZnJvbSBcIi4vbGliL21ldGFcIjtcbmV4cG9ydCB7IHNldFByb3BlcnR5LCBub3RpZnlQcm9wZXJ0eSB9IGZyb20gJy4vbGliL29iamVjdCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi90eXBlcyc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIE9iamVjdFJlZmVyZW5jZSB9IGZyb20gJy4vbGliL3JlZmVyZW5jZXMvcGF0aCc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIFVwZGF0YWJsZVJlZmVyZW5jZSB9IGZyb20gJy4vbGliL3JlZmVyZW5jZXMvcm9vdCc7XG5leHBvcnQgeyBDb25zdFJlZmVyZW5jZSwgaXNDb25zdCB9IGZyb20gJ0BnbGltbWVyL3JlZmVyZW5jZSc7XG4iXX0=
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wYWNrYWdlcy9AZ2xpbW1lci9vYmplY3QtcmVmZXJlbmNlL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O3dCQUNFLEFBQTBCOzs7Ozs7d0JBRTFCLEFBQWlCLEFBQ2xCLEFBQU0sQUFBOEIsQUFBQyxBQUN0QyxBQUFPOzs7Ozs7Ozs7aUJBQUUsQUFBVTs7Ozs7O3lDQUFFLEFBQU8sQUFBSSxBQUFJOzs7Ozs7aUJBQUUsQUFBTyxBQUFFLEFBQU0sQUFBWSxBQUFDLEFBQ2xFLEFBQU87Ozs7Ozs7OzttQkFBRSxBQUFXOzs7Ozs7bUJBQUUsQUFBYyxBQUFFLEFBQU0sQUFBYyxBQUFDLEFBRTNELEFBQU87Ozs7Ozs7Ozt5Q0FBRSxBQUFPLEFBQUksQUFBZSxBQUFFLEFBQU0sQUFBdUIsQUFBQyxBQUNuRSxBQUFPOzs7Ozs7Ozs7eUNBQUUsQUFBTyxBQUFJLEFBQWtCLEFBQUUsQUFBTSxBQUF1QixBQUFDLEFBQ3RFLEFBQU87Ozs7Ozs7OztzQkFBRSxBQUFjOzs7Ozs7c0JBQUUsQUFBTyxBQUFFLEFBQU0sQUFBb0IsQUFBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7XG4gIENvbXB1dGVkUmVmZXJlbmNlQmx1ZXByaW50LFxuICBJbm5lclJlZmVyZW5jZUZhY3RvcnksXG4gIFByb3BlcnR5UmVmZXJlbmNlLFxufSBmcm9tICcuL2xpYi9yZWZlcmVuY2VzL2Rlc2NyaXB0b3JzJztcbmV4cG9ydCB7IENMQVNTX01FVEEsIGRlZmF1bHQgYXMgTWV0YSwgbWV0YUZvciB9IGZyb20gJy4vbGliL21ldGEnO1xuZXhwb3J0IHsgc2V0UHJvcGVydHksIG5vdGlmeVByb3BlcnR5IH0gZnJvbSAnLi9saWIvb2JqZWN0JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3R5cGVzJztcbmV4cG9ydCB7IGRlZmF1bHQgYXMgT2JqZWN0UmVmZXJlbmNlIH0gZnJvbSAnLi9saWIvcmVmZXJlbmNlcy9wYXRoJztcbmV4cG9ydCB7IGRlZmF1bHQgYXMgVXBkYXRhYmxlUmVmZXJlbmNlIH0gZnJvbSAnLi9saWIvcmVmZXJlbmNlcy9yb290JztcbmV4cG9ydCB7IENvbnN0UmVmZXJlbmNlLCBpc0NvbnN0IH0gZnJvbSAnQGdsaW1tZXIvcmVmZXJlbmNlJztcbiJdfQ==

@@ -79,7 +79,7 @@ 'use strict';

ConstRoot.prototype.referenceFromParts = function referenceFromParts(_parts) {
throw new Error("Not implemented");
throw new Error('Not implemented');
};
ConstRoot.prototype.chainFor = function chainFor(_prop) {
throw new Error("Not implemented");
throw new Error('Not implemented');
};

@@ -108,3 +108,3 @@

var CLASS_META = exports.CLASS_META = "df8be4c8-4e89-44e2-a8f9-550c8dacdca7";
var CLASS_META = exports.CLASS_META = 'df8be4c8-4e89-44e2-a8f9-550c8dacdca7';
var hasOwnProperty = Object.hasOwnProperty;

@@ -195,2 +195,2 @@

}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0YS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL0BnbGltbWVyL29iamVjdC1yZWZlcmVuY2UvbGliL21ldGEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBQSxBQUFPLEFBQUUsQUFBaUIsQUFBRSxBQUFNLEFBQTBCLEFBQUM7O0FBQzdELEFBQU8sQUFBYSxBQUFNLEFBQW1CLEFBQUM7Ozs7QUFHOUMsQUFBTyxBQUFnQixBQUFPLEFBQWdCLEFBQUksQUFBRSxBQUFNLEFBQWUsQUFBQzs7QUFTMUUsQUFBTyxBQUFtQyxBQUFXLEFBQUUsQUFBTSxBQUFvQixBQUFDOzs7Ozs7Ozs7O0FBSWxGLElBQU0sQUFBWTtnQ0FBZ0IsQUFBQyxBQUFFLEFBQUMsQUFFdEMsQ0FGcUI7QUFBRSxBQUFPOztJQU81Qjt1QkFBWSxBQUFXLFFBQUUsQUFBaUIsV0FGbkM7OzthQUFHLEFBQUcsQUFBVyxBQUFDLEFBR3ZCLEFBQUk7YUFBQyxBQUFNLFNBQUcsQUFBTSxBQUFDLEFBQ3ZCLEFBQUMsQUFFRCxBQUFLOzs7aURBQUssQUFBTTtlQUFDLEFBQVksQUFBQyxBQUFDLEFBQUMsQUFDaEMsQUFBTTs7O21EQUFJLEFBQUMsQUFFWCxBQUFLOztpREFDSCxBQUFNO2VBQUMsQUFBSSxLQUFDLEFBQU0sT0FBQyxBQUFJLEtBQUMsQUFBUSxBQUFDLEFBQUMsQUFDcEMsQUFBQyxBQUVELEFBQUc7OzsyQ0FBQyxBQUFZLE1BQ2QsQUFBTTtlQUFDLElBQUksQUFBUyxVQUFDLEFBQUksS0FBQyxBQUFNLE9BQUMsQUFBSSxLQUFDLEFBQVEsQUFBQyxXQUFFLEFBQUksQUFBQyxBQUFDLEFBQ3pELEFBQUMsQUFDRixBQUVEOzs7Ozs7SUFJRTt1QkFBWSxBQUFVLE9BRmY7OzthQUFHLEFBQUcsQUFBVyxBQUFDLEFBR3ZCLEFBQUk7YUFBQyxBQUFLLFFBQUcsQUFBSyxBQUFDLEFBQ3JCLEFBQUMsQUFFRCxBQUFNOzs7aURBQUMs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QUFBUSxBQUFDLEFBQUMsQUFDcEMsQUFBRztZQUFDLEFBQU0sT0FBQyxBQUFTLEFBQUMsQUFBQyxBQUN4QixBQUFDLEFBRUQsQUFBaUI7OztvRUFDZixBQUFJO2FBQUMsQUFBYyxpQkFBRyxBQUFJLEtBQUMsQUFBYyxrQkFBSSxBQUFJLEFBQTZCLEFBQUMsQUFDL0UsQUFBTTtlQUFDLEFBQUksS0FBQyxBQUFjLEFBQUMsQUFDN0IsQUFBQyxBQUVELEFBQWE7OzswREFBQyxBQUFnQixVQUM1QixBQUFFLEFBQUM7WUFBQyxDQUFDLEFBQUksS0FBQyxBQUFVLEFBQUMsWUFBQyxBQUFNLE9BQUMsQUFBSSxBQUFDLEFBQ2xDLEFBQU07ZUFBQyxBQUFJLEtBQUMsQUFBVSxXQUFDLEFBQVEsQUFBQyxBQUFDLEFBQ25DLEFBQUMsQUFFRCxBQUFROzs7a0RBQ04sQUFBTSxBQUFDO2VBQUMsQUFBSSxLQUFDLEFBQUssUUFBRyxBQUFJLEtBQUMsQUFBSyxTQUFJLEFBQUksQUFBRSxBQUFDLEFBQUMsQUFDN0MsQUFBQyxBQUVELEFBQUk7OzswQ0FDRixBQUFNLEFBQUM7ZUFBQyxBQUFJLEtBQUMsQUFBUyxZQUFHLEFBQUksS0FBQyxBQUFTLGFBQUksSUFBSSxBQUFJLEtBQUMsQUFBb0IscUJBQUMsQUFBSSxLQUFDLEFBQU0sQUFBQyxBQUFDLEFBQUMsQUFDekYsQUFBQyxBQUNGOzs7O0FBRUQ7O2tCQUFlLEFBQUksQUFBQyxBQU1wQixBQUFNO2lCQUFrQixBQUFRLEtBQzlCLEFBQU07V0FBQyxBQUFJLEtBQUMsQUFBRyxJQUFDLEFBQUcsQUFBQyxBQUFDLEFBQ3ZCLEFBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQcm9wZXJ0eVJlZmVyZW5jZSB9IGZyb20gJy4vcmVmZXJlbmNlcy9kZXNjcmlwdG9ycyc7XG5pbXBvcnQgUm9vdFJlZmVyZW5jZSBmcm9tICcuL3JlZmVyZW5jZXMvcm9vdCc7XG5pbXBvcnQgeyBNZXRhT3B0aW9ucyB9IGZyb20gJy4vdHlwZXMnO1xuXG5pbXBvcnQgeyBPcHRpb24sIERpY3QsIERpY3RTZXQsIEhhc0d1aWQsIFNldCwgZGljdCB9IGZyb20gJ0BnbGltbWVyL3V0aWwnO1xuXG5pbXBvcnQge1xuICBSb290UmVmZXJlbmNlRmFjdG9yeSxcbiAgUGF0aFJlZmVyZW5jZUZhY3RvcnksXG4gIE1ldGEgYXMgSU1ldGEsXG4gIFJvb3RSZWZlcmVuY2UgYXMgSVJvb3RSZWZlcmVuY2Vcbn0gZnJvbSAnLi90eXBlcyc7XG5cbmltcG9ydCB7IFBhdGhSZWZlcmVuY2UgYXMgSVBhdGhSZWZlcmVuY2UsIENVUlJFTlRfVEFHIH0gZnJvbSAnQGdsaW1tZXIvcmVmZXJlbmNlJztcblxuaW1wb3J0IHsgSW5uZXJSZWZlcmVuY2VGYWN0b3J5IH0gZnJvbSAnLi9yZWZlcmVuY2VzL2Rlc2NyaXB0b3JzJztcblxuY29uc3QgTk9PUF9ERVNUUk9ZID0geyBkZXN0cm95KCkge30gfTtcblxuY2xhc3MgQ29uc3RQYXRoIGltcGxlbWVudHMgSVBhdGhSZWZlcmVuY2U8YW55PiB7XG4gIHByaXZhdGUgcGFyZW50OiBhbnk7XG4gIHByaXZhdGUgcHJvcGVydHk6IHN0cmluZztcbiAgcHVibGljIHRhZyA9IENVUlJFTlRfVEFHO1xuXG4gIGNvbnN0cnVjdG9yKHBhcmVudDogYW55LCBfcHJvcGVydHk6IHN0cmluZykge1xuICAgIHRoaXMucGFyZW50ID0gcGFyZW50O1xuICB9XG5cbiAgY2hhaW4oKSB7IHJldHVybiBOT09QX0RFU1RST1k7IH1cbiAgbm90aWZ5KCkge31cblxuICB2YWx1ZSgpIHtcbiAgICByZXR1cm4gdGhpcy5wYXJlbnRbdGhpcy5wcm9wZXJ0eV07XG4gIH1cblxuICBnZXQocHJvcDogc3RyaW5nKTogSVBhdGhSZWZlcmVuY2U8YW55PiB7XG4gICAgcmV0dXJuIG5ldyBDb25zdFBhdGgodGhpcy5wYXJlbnRbdGhpcy5wcm9wZXJ0eV0sIHByb3ApO1xuICB9XG59XG5cbmNsYXNzIENvbnN0Um9vdCBpbXBsZW1lbnRzIElSb290UmVmZXJlbmNlPGFueT4ge1xuICBwcml2YXRlIGlubmVyOiBhbnk7XG4gIHB1YmxpYyB0YWcgPSBDVVJSRU5UX1RBRztcblxuICBjb25zdHJ1Y3Rvcih2YWx1ZTogYW55KSB7XG4gICAgdGhpcy5pbm5lciA9IHZhbHVlO1xuICB9XG5cbiAgdXBkYXRlKGlubmVyOiBhbnkpIHtcbiAgICB0aGlzLmlubmVyID0gaW5uZXI7XG4gIH1cblxuICBjaGFpbigpIHsgcmV0dXJuIE5PT1BfREVTVFJPWTsgfVxuICBub3RpZnkoKSB7fVxuXG4gIHZhbHVlKCk6IGFueSB7XG4gICAgcmV0dXJuIHRoaXMuaW5uZXI7XG4gIH1cblxuICByZWZlcmVuY2VGcm9tUGFydHMoX3BhcnRzOiBzdHJpbmdbXSk6IElQYXRoUmVmZXJlbmNlPGFueT4ge1xuICAgIHRocm93IG5ldyBFcnJvcihcIk5vdCBpbXBsZW1lbnRlZFwiKTtcbiAgfVxuXG4gIGNoYWluRm9yKF9wcm9wOiBzdHJpbmcpOiBJUGF0aFJlZmVyZW5jZTxhbnk+IHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXCJOb3QgaW1wbGVtZW50ZWRcIik7XG4gIH1cblxuICBnZXQocHJvcDogc3RyaW5nKTogSVBhdGhSZWZlcmVuY2U8YW55PiB7XG4gICAgcmV0dXJuIG5ldyBDb25zdFBhdGgodGhpcy5pbm5lciwgcHJvcCk7XG4gIH1cbn1cblxuY2xhc3MgQ29uc3RNZXRhIC8qaW1wbGVtZW50cyBJTWV0YSovIHtcbiAgcHJpdmF0ZSBvYmplY3Q6IGFueTtcblxuICBjb25zdHJ1Y3RvcihvYmplY3Q6IGFueSkge1xuICAgIHRoaXMub2JqZWN0ID0gb2JqZWN0O1xuICB9XG5cbiAgcm9vdCgpOiBDb25zdFJvb3Qge1xuICAgIHJldHVybiBuZXcgQ29uc3RSb290KHRoaXMub2JqZWN0KTtcbiAgfVxufVxuXG5leHBvcnQgY29uc3QgQ0xBU1NfTUVUQSA9IFwiZGY4YmU0YzgtNGU4OS00NGUyLWE4ZjktNTUwYzhkYWNkY2E3XCI7XG5cbmNvbnN0IGhhc093blByb3BlcnR5ID0gT2JqZWN0Lmhhc093blByb3BlcnR5O1xuXG5jbGFzcyBNZXRhIGltcGxlbWVudHMgSU1ldGEsIEhhc0d1aWQge1xuICBzdGF0aWMgZm9yKG9iajogYW55KTogSU1ldGEge1xuICAgIGlmIChvYmogPT09IG51bGwgfHwgb2JqID09PSB1bmRlZmluZWQpIHJldHVybiBuZXcgTWV0YShvYmosIHt9KTtcbiAgICBpZiAoaGFzT3duUHJvcGVydHkuY2FsbChvYmosICdfbWV0YScpICYmIG9iai5fbWV0YSkgcmV0dXJuIG9iai5fbWV0YTtcbiAgICBpZiAoIU9iamVjdC5pc0V4dGVuc2libGUob2JqKSkgcmV0dXJuIG5ldyBDb25zdE1ldGEob2JqKSBhcyBhbnk7XG5cbiAgICBsZXQgTWV0YVRvVXNlOiB0eXBlb2YgTWV0YSA9IE1ldGE7XG5cbiAgICBpZiAob2JqLmNvbnN0cnVjdG9yICYmIG9iai5jb25zdHJ1Y3RvcltDTEFTU19NRVRBXSkge1xuICAgICAgbGV0IGNsYXNzTWV0YTogQ2xhc3NNZXRhID0gb2JqLmNvbnN0cnVjdG9yW0NMQVNTX01FVEFdO1xuICAgICAgTWV0YVRvVXNlID0gY2xhc3NNZXRhLkluc3RhbmNlTWV0YUNvbnN0cnVjdG9yO1xuICAgIH0gZWxzZSBpZiAob2JqW0NMQVNTX01FVEFdKSB7XG4gICAgICBNZXRhVG9Vc2UgPSBvYmpbQ0xBU1NfTUVUQV0uSW5zdGFuY2VNZXRhQ29uc3RydWN0b3I7XG4gICAgfVxuXG4gICAgcmV0dXJuIChvYmouX21ldGEgPSBuZXcgTWV0YVRvVXNlKG9iaiwge30pKTtcbiAgfVxuXG4gIHN0YXRpYyBleGlzdHMob2JqOiBhbnkpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdHlwZW9mIG9iaiA9PT0gJ29iamVjdCcgJiYgb2JqLl9tZXRhO1xuICB9XG5cbiAgc3RhdGljIG1ldGFkYXRhRm9yUHJvcGVydHkoX2tleTogc3RyaW5nKTogYW55IHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIHByaXZhdGUgb2JqZWN0OiBhbnk7XG4gIHByaXZhdGUgUm9vdFJlZmVyZW5jZUZhY3Rvcnk6IFJvb3RSZWZlcmVuY2VGYWN0b3J5PGFueT47XG4gIHByaXZhdGUgcm9vdENhY2hlOiBJUm9vdFJlZmVyZW5jZTxhbnk+O1xuICBwcml2YXRlIHJlZmVyZW5jZXM6IE9wdGlvbjxEaWN0PERpY3RTZXQ8SVBhdGhSZWZlcmVuY2U8YW55PiAmIEhhc0d1aWQ+Pj4gPSBudWxsO1xuICBwdWJsaWMgX2d1aWQ6IG51bWJlcjtcbiAgcHJvdGVjdGVkIHNsb3RzOiBPcHRpb248RGljdDxhbnk+PiA9IG51bGw7XG4gIHByb3RlY3RlZCByZWZlcmVuY2VUeXBlczogT3B0aW9uPERpY3Q8SW5uZXJSZWZlcmVuY2VGYWN0b3J5PGFueT4+PiA9IG51bGw7XG4gIHByb3RlY3RlZCBwcm9wZXJ0eU1ldGFkYXRhOiBPcHRpb248RGljdDxhbnk+PiA9IG51bGw7XG5cbiAgY29uc3RydWN0b3Iob2JqZWN0OiBhbnksIHsgUm9vdFJlZmVyZW5jZUZhY3RvcnkgfTogTWV0YU9wdGlvbnMpIHtcbiAgICB0aGlzLm9iamVjdCA9IG9iamVjdDtcbiAgICB0aGlzLlJvb3RSZWZlcmVuY2VGYWN0b3J5ID0gKFJvb3RSZWZlcmVuY2VGYWN0b3J5IHx8IFJvb3RSZWZlcmVuY2UpIGFzIFJvb3RSZWZlcmVuY2VGYWN0b3J5PGFueT47XG4gIH1cblxuICBhZGRSZWZlcmVuY2UocHJvcGVydHk6IHN0cmluZywgcmVmZXJlbmNlOiBJUGF0aFJlZmVyZW5jZTxhbnk+ICYgSGFzR3VpZCkge1xuICAgIGxldCByZWZzID0gdGhpcy5yZWZlcmVuY2VzID0gdGhpcy5yZWZlcmVuY2VzIHx8IGRpY3Q8RGljdFNldDxJUGF0aFJlZmVyZW5jZTxhbnk+ICYgSGFzR3VpZD4+KCk7XG4gICAgbGV0IHNldCA9IHJlZnNbcHJvcGVydHldID0gcmVmc1twcm9wZXJ0eV0gfHwgbmV3IERpY3RTZXQ8SVBhdGhSZWZlcmVuY2U8YW55PiAmIEhhc0d1aWQ+KCk7XG4gICAgc2V0LmFkZChyZWZlcmVuY2UpO1xuICB9XG5cbiAgYWRkUmVmZXJlbmNlVHlwZUZvcihwcm9wZXJ0eTogc3RyaW5nLCB0eXBlOiBQYXRoUmVmZXJlbmNlRmFjdG9yeTxhbnk+KSB7XG4gICAgdGhpcy5yZWZlcmVuY2VUeXBlcyA9IHRoaXMucmVmZXJlbmNlVHlwZXMgfHwgZGljdDxQYXRoUmVmZXJlbmNlRmFjdG9yeTxhbnk+PigpO1xuICAgIHRoaXMucmVmZXJlbmNlVHlwZXNbcHJvcGVydHldID0gdHlwZTtcbiAgfVxuXG4gIHJlZmVyZW5jZVR5cGVGb3IocHJvcGVydHk6IHN0cmluZyk6IElubmVyUmVmZXJlbmNlRmFjdG9yeTxhbnk+IHtcbiAgICBpZiAoIXRoaXMucmVmZXJlbmNlVHlwZXMpIHJldHVybiBQcm9wZXJ0eVJlZmVyZW5jZTtcbiAgICByZXR1cm4gdGhpcy5yZWZlcmVuY2VUeXBlc1twcm9wZXJ0eV0gfHwgUHJvcGVydHlSZWZlcmVuY2U7XG4gIH1cblxuICByZW1vdmVSZWZlcmVuY2UocHJvcGVydHk6IHN0cmluZywgcmVmZXJlbmNlOiBJUGF0aFJlZmVyZW5jZTxhbnk+ICYgSGFzR3VpZCkge1xuICAgIGlmICghdGhpcy5yZWZlcmVuY2VzKSByZXR1cm47XG4gICAgbGV0IHNldCA9IHRoaXMucmVmZXJlbmNlc1twcm9wZXJ0eV07XG4gICAgc2V0LmRlbGV0ZShyZWZlcmVuY2UpO1xuICB9XG5cbiAgZ2V0UmVmZXJlbmNlVHlwZXMoKTogRGljdDxJbm5lclJlZmVyZW5jZUZhY3Rvcnk8YW55Pj4ge1xuICAgIHRoaXMucmVmZXJlbmNlVHlwZXMgPSB0aGlzLnJlZmVyZW5jZVR5cGVzIHx8IGRpY3Q8UGF0aFJlZmVyZW5jZUZhY3Rvcnk8YW55Pj4oKTtcbiAgICByZXR1cm4gdGhpcy5yZWZlcmVuY2VUeXBlcztcbiAgfVxuXG4gIHJlZmVyZW5jZXNGb3IocHJvcGVydHk6IHN0cmluZyk6IE9wdGlvbjxTZXQ8SVBhdGhSZWZlcmVuY2U8YW55Pj4+IHtcbiAgICBpZiAoIXRoaXMucmVmZXJlbmNlcykgcmV0dXJuIG51bGw7XG4gICAgcmV0dXJuIHRoaXMucmVmZXJlbmNlc1twcm9wZXJ0eV07XG4gIH1cblxuICBnZXRTbG90cygpIHtcbiAgICByZXR1cm4gKHRoaXMuc2xvdHMgPSB0aGlzLnNsb3RzIHx8IGRpY3QoKSk7XG4gIH1cblxuICByb290KCk6IElSb290UmVmZXJlbmNlPGFueT4ge1xuICAgIHJldHVybiAodGhpcy5yb290Q2FjaGUgPSB0aGlzLnJvb3RDYWNoZSB8fCBuZXcgdGhpcy5Sb290UmVmZXJlbmNlRmFjdG9yeSh0aGlzLm9iamVjdCkpO1xuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IE1ldGE7XG5cbmludGVyZmFjZSBDbGFzc01ldGEge1xuICBJbnN0YW5jZU1ldGFDb25zdHJ1Y3RvcjogdHlwZW9mIE1ldGE7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBtZXRhRm9yKG9iajogYW55KTogSU1ldGEge1xuICByZXR1cm4gTWV0YS5mb3Iob2JqKTtcbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0YS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL0BnbGltbWVyL29iamVjdC1yZWZlcmVuY2UvbGliL21ldGEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBQSxBQUFPLEFBQUUsQUFBaUIsQUFBRSxBQUFNLEFBQTBCLEFBQUM7O0FBQzdELEFBQU8sQUFBYSxBQUFNLEFBQW1CLEFBQUM7Ozs7QUFHOUMsQUFBTyxBQUFnQixBQUFPLEFBQWdCLEFBQUksQUFBRSxBQUFNLEFBQWUsQUFBQzs7QUFTMUUsQUFBTyxBQUFtQyxBQUFXLEFBQUUsQUFBTSxBQUFvQixBQUFDOzs7Ozs7Ozs7O0FBSWxGLElBQU0sQUFBWTtnQ0FBZ0IsQUFBQyxBQUFFLEFBQUMsQUFFdEMsQ0FGcUI7QUFBRSxBQUFPOztJQU81Qjt1QkFBWSxBQUFXLFFBQUUsQUFBaUIsV0FGbkM7OzthQUFHLEFBQUcsQUFBVyxBQUFDLEFBR3ZCLEFBQUk7YUFBQyxBQUFNLFNBQUcsQUFBTSxBQUFDLEFBQ3ZCLEFBQUMsQUFFRCxBQUFLOzs7aURBQ0gsQUFBTTtlQUFDLEFBQVksQUFBQyxBQUN0QixBQUFDLEFBQ0QsQUFBTTs7O21EQUFJLEFBQUMsQUFFWCxBQUFLOztpREFDSCxBQUFNO2VBQUMsQUFBSSxLQUFDLEFBQU0sT0FBQyxBQUFJLEtBQUMsQUFBUSxBQUFDLEFBQUMsQUFDcEMsQUFBQyxBQUVELEFBQUc7OzsyQ0FBQyxBQUFZLE1BQ2QsQUFBTTtlQUFDLElBQUksQUFBUyxVQUFDLEFBQUksS0FBQyxBQUFNLE9BQUMsQUFBSSxLQUFDLEFBQVEsQUFBQyxXQUFFLEFBQUksQUFBQyxBQUFDLEFBQ3pELEFBQUMsQUFDRixBQUVEOzs7Ozs7SUFJRTt1QkFBWSxBQUFVLE9BRmY7OzthQUFHLEFBQUcsQUFBVyxBQUFDLEFBR3ZCLEFBQUk7YUFBQyxBQUFLLFFBQUcsQUFBSyxBQUFDLEFBQ3JCLEFBQUMsQUFFRCxBQUFNOzs7aURBQUMs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QUFBSSxLQUFDLEFBQVUsV0FBQyxBQUFRLEFBQUMsQUFBQyxBQUNwQyxBQUFHO1lBQUMsQUFBTSxPQUFDLEFBQVMsQUFBQyxBQUFDLEFBQ3hCLEFBQUMsQUFFRCxBQUFpQjs7O29FQUNmLEFBQUk7YUFBQyxBQUFjLGlCQUFHLEFBQUksS0FBQyxBQUFjLGtCQUFJLEFBQUksQUFBNkIsQUFBQyxBQUMvRSxBQUFNO2VBQUMsQUFBSSxLQUFDLEFBQWMsQUFBQyxBQUM3QixBQUFDLEFBRUQsQUFBYTs7OzBEQUFDLEFBQWdCLFVBQzVCLEFBQUUsQUFBQztZQUFDLENBQUMsQUFBSSxLQUFDLEFBQVUsQUFBQyxZQUFDLEFBQU0sT0FBQyxBQUFJLEFBQUMsQUFDbEMsQUFBTTtlQUFDLEFBQUksS0FBQyxBQUFVLFdBQUMsQUFBUSxBQUFDLEFBQUMsQUFDbkMsQUFBQyxBQUVELEFBQVE7OztrREFDTixBQUFNLEFBQUM7ZUFBQyxBQUFJLEtBQUMsQUFBSyxRQUFHLEFBQUksS0FBQyxBQUFLLFNBQUksQUFBSSxBQUFFLEFBQUMsQUFBQyxBQUM3QyxBQUFDLEFBRUQsQUFBSTs7OzBDQUNGLEFBQU0sQUFBQztlQUFDLEFBQUksS0FBQyxBQUFTLFlBQUcsQUFBSSxLQUFDLEFBQVMsYUFBSSxJQUFJLEFBQUksS0FBQyxBQUFvQixxQkFBQyxBQUFJLEtBQUMsQUFBTSxBQUFDLEFBQUMsQUFBQyxBQUN6RixBQUFDLEFBQ0Y7Ozs7QUFFRDs7a0JBQWUsQUFBSSxBQUFDLEFBTXBCLEFBQU07aUJBQWtCLEFBQVEsS0FDOUIsQUFBTTtXQUFDLEFBQUksS0FBQyxBQUFHLElBQUMsQUFBRyxBQUFDLEFBQUMsQUFDdkIsQUFBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFByb3BlcnR5UmVmZXJlbmNlIH0gZnJvbSAnLi9yZWZlcmVuY2VzL2Rlc2NyaXB0b3JzJztcbmltcG9ydCBSb290UmVmZXJlbmNlIGZyb20gJy4vcmVmZXJlbmNlcy9yb290JztcbmltcG9ydCB7IE1ldGFPcHRpb25zIH0gZnJvbSAnLi90eXBlcyc7XG5cbmltcG9ydCB7IE9wdGlvbiwgRGljdCwgRGljdFNldCwgSGFzR3VpZCwgU2V0LCBkaWN0IH0gZnJvbSAnQGdsaW1tZXIvdXRpbCc7XG5cbmltcG9ydCB7XG4gIFJvb3RSZWZlcmVuY2VGYWN0b3J5LFxuICBQYXRoUmVmZXJlbmNlRmFjdG9yeSxcbiAgTWV0YSBhcyBJTWV0YSxcbiAgUm9vdFJlZmVyZW5jZSBhcyBJUm9vdFJlZmVyZW5jZSxcbn0gZnJvbSAnLi90eXBlcyc7XG5cbmltcG9ydCB7IFBhdGhSZWZlcmVuY2UgYXMgSVBhdGhSZWZlcmVuY2UsIENVUlJFTlRfVEFHIH0gZnJvbSAnQGdsaW1tZXIvcmVmZXJlbmNlJztcblxuaW1wb3J0IHsgSW5uZXJSZWZlcmVuY2VGYWN0b3J5IH0gZnJvbSAnLi9yZWZlcmVuY2VzL2Rlc2NyaXB0b3JzJztcblxuY29uc3QgTk9PUF9ERVNUUk9ZID0geyBkZXN0cm95KCkge30gfTtcblxuY2xhc3MgQ29uc3RQYXRoIGltcGxlbWVudHMgSVBhdGhSZWZlcmVuY2U8YW55PiB7XG4gIHByaXZhdGUgcGFyZW50OiBhbnk7XG4gIHByaXZhdGUgcHJvcGVydHk6IHN0cmluZztcbiAgcHVibGljIHRhZyA9IENVUlJFTlRfVEFHO1xuXG4gIGNvbnN0cnVjdG9yKHBhcmVudDogYW55LCBfcHJvcGVydHk6IHN0cmluZykge1xuICAgIHRoaXMucGFyZW50ID0gcGFyZW50O1xuICB9XG5cbiAgY2hhaW4oKSB7XG4gICAgcmV0dXJuIE5PT1BfREVTVFJPWTtcbiAgfVxuICBub3RpZnkoKSB7fVxuXG4gIHZhbHVlKCkge1xuICAgIHJldHVybiB0aGlzLnBhcmVudFt0aGlzLnByb3BlcnR5XTtcbiAgfVxuXG4gIGdldChwcm9wOiBzdHJpbmcpOiBJUGF0aFJlZmVyZW5jZTxhbnk+IHtcbiAgICByZXR1cm4gbmV3IENvbnN0UGF0aCh0aGlzLnBhcmVudFt0aGlzLnByb3BlcnR5XSwgcHJvcCk7XG4gIH1cbn1cblxuY2xhc3MgQ29uc3RSb290IGltcGxlbWVudHMgSVJvb3RSZWZlcmVuY2U8YW55PiB7XG4gIHByaXZhdGUgaW5uZXI6IGFueTtcbiAgcHVibGljIHRhZyA9IENVUlJFTlRfVEFHO1xuXG4gIGNvbnN0cnVjdG9yKHZhbHVlOiBhbnkpIHtcbiAgICB0aGlzLmlubmVyID0gdmFsdWU7XG4gIH1cblxuICB1cGRhdGUoaW5uZXI6IGFueSkge1xuICAgIHRoaXMuaW5uZXIgPSBpbm5lcjtcbiAgfVxuXG4gIGNoYWluKCkge1xuICAgIHJldHVybiBOT09QX0RFU1RST1k7XG4gIH1cbiAgbm90aWZ5KCkge31cblxuICB2YWx1ZSgpOiBhbnkge1xuICAgIHJldHVybiB0aGlzLmlubmVyO1xuICB9XG5cbiAgcmVmZXJlbmNlRnJvbVBhcnRzKF9wYXJ0czogc3RyaW5nW10pOiBJUGF0aFJlZmVyZW5jZTxhbnk+IHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ05vdCBpbXBsZW1lbnRlZCcpO1xuICB9XG5cbiAgY2hhaW5Gb3IoX3Byb3A6IHN0cmluZyk6IElQYXRoUmVmZXJlbmNlPGFueT4ge1xuICAgIHRocm93IG5ldyBFcnJvcignTm90IGltcGxlbWVudGVkJyk7XG4gIH1cblxuICBnZXQocHJvcDogc3RyaW5nKTogSVBhdGhSZWZlcmVuY2U8YW55PiB7XG4gICAgcmV0dXJuIG5ldyBDb25zdFBhdGgodGhpcy5pbm5lciwgcHJvcCk7XG4gIH1cbn1cblxuY2xhc3MgQ29uc3RNZXRhIC8qaW1wbGVtZW50cyBJTWV0YSovIHtcbiAgcHJpdmF0ZSBvYmplY3Q6IGFueTtcblxuICBjb25zdHJ1Y3RvcihvYmplY3Q6IGFueSkge1xuICAgIHRoaXMub2JqZWN0ID0gb2JqZWN0O1xuICB9XG5cbiAgcm9vdCgpOiBDb25zdFJvb3Qge1xuICAgIHJldHVybiBuZXcgQ29uc3RSb290KHRoaXMub2JqZWN0KTtcbiAgfVxufVxuXG5leHBvcnQgY29uc3QgQ0xBU1NfTUVUQSA9ICdkZjhiZTRjOC00ZTg5LTQ0ZTItYThmOS01NTBjOGRhY2RjYTcnO1xuXG5jb25zdCBoYXNPd25Qcm9wZXJ0eSA9IE9iamVjdC5oYXNPd25Qcm9wZXJ0eTtcblxuY2xhc3MgTWV0YSBpbXBsZW1lbnRzIElNZXRhLCBIYXNHdWlkIHtcbiAgc3RhdGljIGZvcihvYmo6IGFueSk6IElNZXRhIHtcbiAgICBpZiAob2JqID09PSBudWxsIHx8IG9iaiA9PT0gdW5kZWZpbmVkKSByZXR1cm4gbmV3IE1ldGEob2JqLCB7fSk7XG4gICAgaWYgKGhhc093blByb3BlcnR5LmNhbGwob2JqLCAnX21ldGEnKSAmJiBvYmouX21ldGEpIHJldHVybiBvYmouX21ldGE7XG4gICAgaWYgKCFPYmplY3QuaXNFeHRlbnNpYmxlKG9iaikpIHJldHVybiBuZXcgQ29uc3RNZXRhKG9iaikgYXMgYW55O1xuXG4gICAgbGV0IE1ldGFUb1VzZTogdHlwZW9mIE1ldGEgPSBNZXRhO1xuXG4gICAgaWYgKG9iai5jb25zdHJ1Y3RvciAmJiBvYmouY29uc3RydWN0b3JbQ0xBU1NfTUVUQV0pIHtcbiAgICAgIGxldCBjbGFzc01ldGE6IENsYXNzTWV0YSA9IG9iai5jb25zdHJ1Y3RvcltDTEFTU19NRVRBXTtcbiAgICAgIE1ldGFUb1VzZSA9IGNsYXNzTWV0YS5JbnN0YW5jZU1ldGFDb25zdHJ1Y3RvcjtcbiAgICB9IGVsc2UgaWYgKG9ialtDTEFTU19NRVRBXSkge1xuICAgICAgTWV0YVRvVXNlID0gb2JqW0NMQVNTX01FVEFdLkluc3RhbmNlTWV0YUNvbnN0cnVjdG9yO1xuICAgIH1cblxuICAgIHJldHVybiAob2JqLl9tZXRhID0gbmV3IE1ldGFUb1VzZShvYmosIHt9KSk7XG4gIH1cblxuICBzdGF0aWMgZXhpc3RzKG9iajogYW55KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHR5cGVvZiBvYmogPT09ICdvYmplY3QnICYmIG9iai5fbWV0YTtcbiAgfVxuXG4gIHN0YXRpYyBtZXRhZGF0YUZvclByb3BlcnR5KF9rZXk6IHN0cmluZyk6IGFueSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBwcml2YXRlIG9iamVjdDogYW55O1xuICBwcml2YXRlIFJvb3RSZWZlcmVuY2VGYWN0b3J5OiBSb290UmVmZXJlbmNlRmFjdG9yeTxhbnk+O1xuICBwcml2YXRlIHJvb3RDYWNoZTogSVJvb3RSZWZlcmVuY2U8YW55PjtcbiAgcHJpdmF0ZSByZWZlcmVuY2VzOiBPcHRpb248RGljdDxEaWN0U2V0PElQYXRoUmVmZXJlbmNlPGFueT4gJiBIYXNHdWlkPj4+ID0gbnVsbDtcbiAgcHVibGljIF9ndWlkOiBudW1iZXI7XG4gIHByb3RlY3RlZCBzbG90czogT3B0aW9uPERpY3Q8YW55Pj4gPSBudWxsO1xuICBwcm90ZWN0ZWQgcmVmZXJlbmNlVHlwZXM6IE9wdGlvbjxEaWN0PElubmVyUmVmZXJlbmNlRmFjdG9yeTxhbnk+Pj4gPSBudWxsO1xuICBwcm90ZWN0ZWQgcHJvcGVydHlNZXRhZGF0YTogT3B0aW9uPERpY3Q8YW55Pj4gPSBudWxsO1xuXG4gIGNvbnN0cnVjdG9yKG9iamVjdDogYW55LCB7IFJvb3RSZWZlcmVuY2VGYWN0b3J5IH06IE1ldGFPcHRpb25zKSB7XG4gICAgdGhpcy5vYmplY3QgPSBvYmplY3Q7XG4gICAgdGhpcy5Sb290UmVmZXJlbmNlRmFjdG9yeSA9IChSb290UmVmZXJlbmNlRmFjdG9yeSB8fCBSb290UmVmZXJlbmNlKSBhcyBSb290UmVmZXJlbmNlRmFjdG9yeTxcbiAgICAgIGFueVxuICAgID47XG4gIH1cblxuICBhZGRSZWZlcmVuY2UocHJvcGVydHk6IHN0cmluZywgcmVmZXJlbmNlOiBJUGF0aFJlZmVyZW5jZTxhbnk+ICYgSGFzR3VpZCkge1xuICAgIGxldCByZWZzID0gKHRoaXMucmVmZXJlbmNlcyA9XG4gICAgICB0aGlzLnJlZmVyZW5jZXMgfHwgZGljdDxEaWN0U2V0PElQYXRoUmVmZXJlbmNlPGFueT4gJiBIYXNHdWlkPj4oKSk7XG4gICAgbGV0IHNldCA9IChyZWZzW3Byb3BlcnR5XSA9IHJlZnNbcHJvcGVydHldIHx8IG5ldyBEaWN0U2V0PElQYXRoUmVmZXJlbmNlPGFueT4gJiBIYXNHdWlkPigpKTtcbiAgICBzZXQuYWRkKHJlZmVyZW5jZSk7XG4gIH1cblxuICBhZGRSZWZlcmVuY2VUeXBlRm9yKHByb3BlcnR5OiBzdHJpbmcsIHR5cGU6IFBhdGhSZWZlcmVuY2VGYWN0b3J5PGFueT4pIHtcbiAgICB0aGlzLnJlZmVyZW5jZVR5cGVzID0gdGhpcy5yZWZlcmVuY2VUeXBlcyB8fCBkaWN0PFBhdGhSZWZlcmVuY2VGYWN0b3J5PGFueT4+KCk7XG4gICAgdGhpcy5yZWZlcmVuY2VUeXBlc1twcm9wZXJ0eV0gPSB0eXBlO1xuICB9XG5cbiAgcmVmZXJlbmNlVHlwZUZvcihwcm9wZXJ0eTogc3RyaW5nKTogSW5uZXJSZWZlcmVuY2VGYWN0b3J5PGFueT4ge1xuICAgIGlmICghdGhpcy5yZWZlcmVuY2VUeXBlcykgcmV0dXJuIFByb3BlcnR5UmVmZXJlbmNlO1xuICAgIHJldHVybiB0aGlzLnJlZmVyZW5jZVR5cGVzW3Byb3BlcnR5XSB8fCBQcm9wZXJ0eVJlZmVyZW5jZTtcbiAgfVxuXG4gIHJlbW92ZVJlZmVyZW5jZShwcm9wZXJ0eTogc3RyaW5nLCByZWZlcmVuY2U6IElQYXRoUmVmZXJlbmNlPGFueT4gJiBIYXNHdWlkKSB7XG4gICAgaWYgKCF0aGlzLnJlZmVyZW5jZXMpIHJldHVybjtcbiAgICBsZXQgc2V0ID0gdGhpcy5yZWZlcmVuY2VzW3Byb3BlcnR5XTtcbiAgICBzZXQuZGVsZXRlKHJlZmVyZW5jZSk7XG4gIH1cblxuICBnZXRSZWZlcmVuY2VUeXBlcygpOiBEaWN0PElubmVyUmVmZXJlbmNlRmFjdG9yeTxhbnk+PiB7XG4gICAgdGhpcy5yZWZlcmVuY2VUeXBlcyA9IHRoaXMucmVmZXJlbmNlVHlwZXMgfHwgZGljdDxQYXRoUmVmZXJlbmNlRmFjdG9yeTxhbnk+PigpO1xuICAgIHJldHVybiB0aGlzLnJlZmVyZW5jZVR5cGVzO1xuICB9XG5cbiAgcmVmZXJlbmNlc0Zvcihwcm9wZXJ0eTogc3RyaW5nKTogT3B0aW9uPFNldDxJUGF0aFJlZmVyZW5jZTxhbnk+Pj4ge1xuICAgIGlmICghdGhpcy5yZWZlcmVuY2VzKSByZXR1cm4gbnVsbDtcbiAgICByZXR1cm4gdGhpcy5yZWZlcmVuY2VzW3Byb3BlcnR5XTtcbiAgfVxuXG4gIGdldFNsb3RzKCkge1xuICAgIHJldHVybiAodGhpcy5zbG90cyA9IHRoaXMuc2xvdHMgfHwgZGljdCgpKTtcbiAgfVxuXG4gIHJvb3QoKTogSVJvb3RSZWZlcmVuY2U8YW55PiB7XG4gICAgcmV0dXJuICh0aGlzLnJvb3RDYWNoZSA9IHRoaXMucm9vdENhY2hlIHx8IG5ldyB0aGlzLlJvb3RSZWZlcmVuY2VGYWN0b3J5KHRoaXMub2JqZWN0KSk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgTWV0YTtcblxuaW50ZXJmYWNlIENsYXNzTWV0YSB7XG4gIEluc3RhbmNlTWV0YUNvbnN0cnVjdG9yOiB0eXBlb2YgTWV0YTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG1ldGFGb3Iob2JqOiBhbnkpOiBJTWV0YSB7XG4gIHJldHVybiBNZXRhLmZvcihvYmopO1xufVxuIl19

@@ -1,2 +0,2 @@

"use strict";
'use strict';

@@ -9,3 +9,3 @@ Object.defineProperty(exports, "__esModule", {

var _reference = require("@glimmer/reference");
var _reference = require('@glimmer/reference');

@@ -33,2 +33,2 @@ // import { metaFor } from './meta';

}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JqZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvQGdsaW1tZXIvb2JqZWN0LXJlZmVyZW5jZS9saWIvb2JqZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUEsQUFBTyxBQUFFLEFBQUksQUFBRSxBQUFNLEFBQW9CLEFBQUM7O0FBRTFDLEFBQW9DO0FBQ3BDLEFBQTBDLEFBRTFDLEFBQU07cUJBQXNCLEFBQVcsUUFBRSxBQUFnQixVQUFFLEFBQVEsS0FDakUsQUFBNkQsQUFFN0QsQUFBcUU7QUFFckUsQUFBTTs7V0FBQyxBQUFRLEFBQUMsWUFBRyxBQUFHLEFBQUMsQUFDdkIsQUFBSSxBQUFFLEFBQUMsQUFFUCxBQUE0QjtBQUM1QixBQUFpRTtBQUNqRSxBQUFJO0FBRUosQUFBbUMsQUFDckM7QUFBQzs7QUFFRCxBQUFNO3dCQUF5QixBQUFZLFNBQUUsQUFBaUIsV0FDNUQsQUFBSSxBQUFFLEFBQUMsQUFDUCxBQUE2RDtBQUU3RCxBQUFxRTtBQUVyRSxBQUE0QjtBQUM1QixBQUFpRTtBQUNqRSxBQUFJO0FBRUosQUFBbUMsQUFDckM7QUFBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGJ1bXAgfSBmcm9tIFwiQGdsaW1tZXIvcmVmZXJlbmNlXCI7XG5cbi8vIGltcG9ydCB7IG1ldGFGb3IgfSBmcm9tICcuL21ldGEnO1xuLy8gaW1wb3J0IHsgaW50ZXJuIH0gZnJvbSAnQGdsaW1tZXIvdXRpbCc7XG5cbmV4cG9ydCBmdW5jdGlvbiBzZXRQcm9wZXJ0eShwYXJlbnQ6IGFueSwgcHJvcGVydHk6IHN0cmluZywgdmFsOiBhbnkpIHtcbiAgLy8gbGV0IHJvb3RQcm9wID0gbWV0YUZvcihwYXJlbnQpLnJvb3QoKS5jaGFpbkZvcihwcm9wZXJ0eSkpO1xuXG4gIC8vIGxldCByZWZlcmVuY2VzVG9Ob3RpZnkgPSBtZXRhRm9yKHBhcmVudCkucmVmZXJlbmNlc0Zvcihwcm9wZXJ0eSkpO1xuXG4gIHBhcmVudFtwcm9wZXJ0eV0gPSB2YWw7XG4gIGJ1bXAoKTtcblxuICAvLyBpZiAocmVmZXJlbmNlc1RvTm90aWZ5KSB7XG4gIC8vICAgcmVmZXJlbmNlc1RvTm90aWZ5LmZvckVhY2goZnVuY3Rpb24ocmVmKSB7IHJlZi5ub3RpZnkoKTsgfSk7XG4gIC8vIH1cblxuICAvLyBpZiAocm9vdFByb3ApIHJvb3RQcm9wLm5vdGlmeSgpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbm90aWZ5UHJvcGVydHkoX3BhcmVudDogYW55LCBfcHJvcGVydHk6IHN0cmluZykge1xuICBidW1wKCk7XG4gIC8vIGxldCByb290UHJvcCA9IG1ldGFGb3IocGFyZW50KS5yb290KCkuY2hhaW5Gb3IocHJvcGVydHkpKTtcblxuICAvLyBsZXQgcmVmZXJlbmNlc1RvTm90aWZ5ID0gbWV0YUZvcihwYXJlbnQpLnJlZmVyZW5jZXNGb3IocHJvcGVydHkpKTtcblxuICAvLyBpZiAocmVmZXJlbmNlc1RvTm90aWZ5KSB7XG4gIC8vICAgcmVmZXJlbmNlc1RvTm90aWZ5LmZvckVhY2goZnVuY3Rpb24ocmVmKSB7IHJlZi5ub3RpZnkoKTsgfSk7XG4gIC8vIH1cblxuICAvLyBpZiAocm9vdFByb3ApIHJvb3RQcm9wLm5vdGlmeSgpO1xufVxuIl19
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JqZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvQGdsaW1tZXIvb2JqZWN0LXJlZmVyZW5jZS9saWIvb2JqZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUEsQUFBTyxBQUFFLEFBQUksQUFBRSxBQUFNLEFBQW9CLEFBQUM7O0FBRTFDLEFBQW9DO0FBQ3BDLEFBQTBDLEFBRTFDLEFBQU07cUJBQXNCLEFBQVcsUUFBRSxBQUFnQixVQUFFLEFBQVEsS0FDakUsQUFBNkQsQUFFN0QsQUFBcUU7QUFFckUsQUFBTTs7V0FBQyxBQUFRLEFBQUMsWUFBRyxBQUFHLEFBQUMsQUFDdkIsQUFBSSxBQUFFLEFBQUMsQUFFUCxBQUE0QjtBQUM1QixBQUFpRTtBQUNqRSxBQUFJO0FBRUosQUFBbUMsQUFDckM7QUFBQzs7QUFFRCxBQUFNO3dCQUF5QixBQUFZLFNBQUUsQUFBaUIsV0FDNUQsQUFBSSxBQUFFLEFBQUMsQUFDUCxBQUE2RDtBQUU3RCxBQUFxRTtBQUVyRSxBQUE0QjtBQUM1QixBQUFpRTtBQUNqRSxBQUFJO0FBRUosQUFBbUMsQUFDckM7QUFBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGJ1bXAgfSBmcm9tICdAZ2xpbW1lci9yZWZlcmVuY2UnO1xuXG4vLyBpbXBvcnQgeyBtZXRhRm9yIH0gZnJvbSAnLi9tZXRhJztcbi8vIGltcG9ydCB7IGludGVybiB9IGZyb20gJ0BnbGltbWVyL3V0aWwnO1xuXG5leHBvcnQgZnVuY3Rpb24gc2V0UHJvcGVydHkocGFyZW50OiBhbnksIHByb3BlcnR5OiBzdHJpbmcsIHZhbDogYW55KSB7XG4gIC8vIGxldCByb290UHJvcCA9IG1ldGFGb3IocGFyZW50KS5yb290KCkuY2hhaW5Gb3IocHJvcGVydHkpKTtcblxuICAvLyBsZXQgcmVmZXJlbmNlc1RvTm90aWZ5ID0gbWV0YUZvcihwYXJlbnQpLnJlZmVyZW5jZXNGb3IocHJvcGVydHkpKTtcblxuICBwYXJlbnRbcHJvcGVydHldID0gdmFsO1xuICBidW1wKCk7XG5cbiAgLy8gaWYgKHJlZmVyZW5jZXNUb05vdGlmeSkge1xuICAvLyAgIHJlZmVyZW5jZXNUb05vdGlmeS5mb3JFYWNoKGZ1bmN0aW9uKHJlZikgeyByZWYubm90aWZ5KCk7IH0pO1xuICAvLyB9XG5cbiAgLy8gaWYgKHJvb3RQcm9wKSByb290UHJvcC5ub3RpZnkoKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG5vdGlmeVByb3BlcnR5KF9wYXJlbnQ6IGFueSwgX3Byb3BlcnR5OiBzdHJpbmcpIHtcbiAgYnVtcCgpO1xuICAvLyBsZXQgcm9vdFByb3AgPSBtZXRhRm9yKHBhcmVudCkucm9vdCgpLmNoYWluRm9yKHByb3BlcnR5KSk7XG5cbiAgLy8gbGV0IHJlZmVyZW5jZXNUb05vdGlmeSA9IG1ldGFGb3IocGFyZW50KS5yZWZlcmVuY2VzRm9yKHByb3BlcnR5KSk7XG5cbiAgLy8gaWYgKHJlZmVyZW5jZXNUb05vdGlmeSkge1xuICAvLyAgIHJlZmVyZW5jZXNUb05vdGlmeS5mb3JFYWNoKGZ1bmN0aW9uKHJlZikgeyByZWYubm90aWZ5KCk7IH0pO1xuICAvLyB9XG5cbiAgLy8gaWYgKHJvb3RQcm9wKSByb290UHJvcC5ub3RpZnkoKTtcbn1cbiJdfQ==

@@ -73,2 +73,2 @@ 'use strict';

}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzY3JpcHRvcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9AZ2xpbW1lci9vYmplY3QtcmVmZXJlbmNlL2xpYi9yZWZlcmVuY2VzL2Rlc2NyaXB0b3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUEsQUFBTyxBQUFJLEFBQU0sQUFBUyxBQUFDOzs7O0FBQzNCLEFBQU8sQUFBa0IsQUFBVyxBQUFFLEFBQU0sQUFBb0IsQUFBQyxBQU9qRSxBQUFNOzs7Ozs7Ozs7O0lBS0o7K0JBQVksQUFBVyxRQUFFLEFBQWdCLFVBQUUsQUFBOEIsUUFGbEU7OzthQUFHLEFBQVEsQUFBVyxBQUFDLEFBRzVCLEFBQUk7YUFBQyxBQUFNLFNBQUcsQUFBTSxBQUFDLEFBQ3JCLEFBQUk7YUFBQyxBQUFRLFdBQUcsQUFBUSxBQUFDLEFBQzNCLEFBQUMsQUFFRCxBQUFLOzs7eURBQUssQUFBTTtlQUFDLEFBQUksS0FBQyxBQUFNLE9BQUMsQUFBSSxLQUFDLEFBQVEsQUFBQyxBQUFDLEFBQUMsQUFBQyxBQUU5QyxBQUFLOzs7eURBQ0gsQUFBTTtlQUFDLEFBQXNCLEFBQUMsQUFDaEMsQUFBQyxBQUNGOzs7O0FBRUQsQUFBTTtvQ0FBd0MsQUFBYyxXQUFFLEFBQWlCLGNBQzdFLEFBQU0sQUFBQyxBQU9MOzttQ0FBWSxBQUFXLFFBQUUsQUFBZ0IsVUFIakM7OztpQkFBUyxZQUFHLEFBQUssQUFBQyxBQUNuQjtpQkFBRyxBQUFRLEFBQVcsQUFBQyxBQUc1QixBQUFJO2lCQUFDLEFBQU0sU0FBRyxBQUFNLEFBQUMsQUFDckIsQUFBSTtpQkFBQyxBQUFRLFdBQUcsQUFBUSxBQUFDLEFBQ3pCLEFBQUk7aUJBQUMsQUFBWSxlQUFHLEFBQVksQUFBQyxBQUNuQyxBQUFDLEFBRUQsQUFBSzs7OzZEQUNILEFBQUUsQUFBQztnQkFBQyxDQUFDLEFBQUksS0FBQyxBQUFTLEFBQUMsV0FBQyxBQUFDLEFBQ3BCO29CQUFJLEFBQUksT0FBRyxBQUFJLGVBQUMsQUFBRyxJQUFDLEFBQUksS0FBQyxBQUFNLEFBQUMsUUFBQyxBQUFJLEFBQUUsQUFBQyxBQUV4QyxBQUFJO3FCQUFDLEFBQVksYUFBQyxBQUFPLFFBQUMsQUFBRyxlQUMzQjt3QkFBSSxBQUFHLE1BQUcsQUFBSSxLQUFDLEFBQWtCLG1CQUFDLEFBQUcsQUFBQyxBQUFDLEFBQ3ZDLEFBQUc7d0JBQUMsQUFBSyxBQUFFLEFBQUMsQUFDZCxBQUFDLEFBQUMsQUFBQyxBQUVILEFBQUk7O3FCQUFDLEFBQVMsWUFBRyxBQUFJLEFBQUMsQUFDeEIsQUFBQyxBQUVELEFBQU07O21CQUFDLEFBQUksS0FBQyxBQUFNLE9BQUMsQUFBSSxLQUFDLEFBQVEsQUFBQyxBQUFDLEFBQ3BDLEFBQUMsQUFFRCxBQUFLOzs7NkRBQ0gsQUFBTTttQkFBQyxBQUFzQixBQUFDLEFBQ2hDLEFBQUMsQUFDRixBQUFDLEFBQ0osQUFBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBNZXRhIGZyb20gJy4uL21ldGEnO1xuaW1wb3J0IHsgUmVmZXJlbmNlLCBUYWcsIENVUlJFTlRfVEFHIH0gZnJvbSAnQGdsaW1tZXIvcmVmZXJlbmNlJztcbmltcG9ydCB7IE5vdGlmaWFibGVSZWZlcmVuY2UgfSBmcm9tICcuLi90eXBlcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSW5uZXJSZWZlcmVuY2VGYWN0b3J5PFQ+IHtcbiAgbmV3IChvYmplY3Q6IGFueSwgcHJvcGVydHk6IHN0cmluZywgb3V0ZXI6IE5vdGlmaWFibGVSZWZlcmVuY2U8YW55Pik6IFJlZmVyZW5jZTxUPjtcbn1cblxuZXhwb3J0IGNsYXNzIFByb3BlcnR5UmVmZXJlbmNlPFQ+IGltcGxlbWVudHMgUmVmZXJlbmNlPFQ+IHtcbiAgcHJpdmF0ZSBvYmplY3Q6IGFueTtcbiAgcHJpdmF0ZSBwcm9wZXJ0eTogc3RyaW5nO1xuICBwdWJsaWMgdGFnOiBUYWcgPSBDVVJSRU5UX1RBRztcblxuICBjb25zdHJ1Y3RvcihvYmplY3Q6IGFueSwgcHJvcGVydHk6IHN0cmluZywgX291dGVyOiBOb3RpZmlhYmxlUmVmZXJlbmNlPFQ+KSB7XG4gICAgdGhpcy5vYmplY3QgPSBvYmplY3Q7XG4gICAgdGhpcy5wcm9wZXJ0eSA9IHByb3BlcnR5O1xuICB9XG5cbiAgdmFsdWUoKSB7IHJldHVybiB0aGlzLm9iamVjdFt0aGlzLnByb3BlcnR5XTsgfVxuXG4gIGxhYmVsKCkge1xuICAgIHJldHVybiAnW3JlZmVyZW5jZSBQcm9wZXJ0eV0nO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBDb21wdXRlZFJlZmVyZW5jZUJsdWVwcmludDxUPihfcHJvcGVydHk6IGFueSwgZGVwZW5kZW5jaWVzOiBhbnkpOiBJbm5lclJlZmVyZW5jZUZhY3Rvcnk8VD4ge1xuICByZXR1cm4gY2xhc3MgQ29tcHV0ZWRSZWZlcmVuY2U8VD4gaW1wbGVtZW50cyBSZWZlcmVuY2U8VD4ge1xuICAgIHByaXZhdGUgb2JqZWN0OiBhbnk7XG4gICAgcHJpdmF0ZSBwcm9wZXJ0eTogc3RyaW5nO1xuICAgIHByaXZhdGUgZGVwZW5kZW5jaWVzOiBzdHJpbmdbXVtdO1xuICAgIHByaXZhdGUgaW5zdGFsbGVkID0gZmFsc2U7XG4gICAgcHVibGljIHRhZzogVGFnID0gQ1VSUkVOVF9UQUc7XG5cbiAgICBjb25zdHJ1Y3RvcihvYmplY3Q6IGFueSwgcHJvcGVydHk6IHN0cmluZykge1xuICAgICAgdGhpcy5vYmplY3QgPSBvYmplY3Q7XG4gICAgICB0aGlzLnByb3BlcnR5ID0gcHJvcGVydHk7XG4gICAgICB0aGlzLmRlcGVuZGVuY2llcyA9IGRlcGVuZGVuY2llcztcbiAgICB9XG5cbiAgICB2YWx1ZSgpOiBUIHtcbiAgICAgIGlmICghdGhpcy5pbnN0YWxsZWQpIHtcbiAgICAgICAgbGV0IHJvb3QgPSBNZXRhLmZvcih0aGlzLm9iamVjdCkucm9vdCgpO1xuXG4gICAgICAgIHRoaXMuZGVwZW5kZW5jaWVzLmZvckVhY2goZGVwID0+IHtcbiAgICAgICAgICBsZXQgcmVmID0gcm9vdC5yZWZlcmVuY2VGcm9tUGFydHMoZGVwKTtcbiAgICAgICAgICByZWYudmFsdWUoKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5pbnN0YWxsZWQgPSB0cnVlO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gdGhpcy5vYmplY3RbdGhpcy5wcm9wZXJ0eV07XG4gICAgfVxuXG4gICAgbGFiZWwoKSB7XG4gICAgICByZXR1cm4gJ1tyZWZlcmVuY2UgQ29tcHV0ZWRdJztcbiAgICB9XG4gIH07XG59XG4iXX0=
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzY3JpcHRvcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9AZ2xpbW1lci9vYmplY3QtcmVmZXJlbmNlL2xpYi9yZWZlcmVuY2VzL2Rlc2NyaXB0b3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUEsQUFBTyxBQUFJLEFBQU0sQUFBUyxBQUFDOzs7O0FBQzNCLEFBQU8sQUFBa0IsQUFBVyxBQUFFLEFBQU0sQUFBb0IsQUFBQyxBQU9qRSxBQUFNOzs7Ozs7Ozs7O0lBS0o7K0JBQVksQUFBVyxRQUFFLEFBQWdCLFVBQUUsQUFBOEIsUUFGbEU7OzthQUFHLEFBQVEsQUFBVyxBQUFDLEFBRzVCLEFBQUk7YUFBQyxBQUFNLFNBQUcsQUFBTSxBQUFDLEFBQ3JCLEFBQUk7YUFBQyxBQUFRLFdBQUcsQUFBUSxBQUFDLEFBQzNCLEFBQUMsQUFFRCxBQUFLOzs7eURBQ0gsQUFBTTtlQUFDLEFBQUksS0FBQyxBQUFNLE9BQUMsQUFBSSxLQUFDLEFBQVEsQUFBQyxBQUFDLEFBQ3BDLEFBQUMsQUFFRCxBQUFLOzs7eURBQ0gsQUFBTTtlQUFDLEFBQXNCLEFBQUMsQUFDaEMsQUFBQyxBQUNGOzs7O0FBRUQsQUFBTTtvQ0FDSixBQUFjLFdBQ2QsQUFBaUIsY0FFakIsQUFBTSxBQUFDLEFBT0w7O21DQUFZLEFBQVcsUUFBRSxBQUFnQixVQUhqQzs7O2lCQUFTLFlBQUcsQUFBSyxBQUFDLEFBQ25CO2lCQUFHLEFBQVEsQUFBVyxBQUFDLEFBRzVCLEFBQUk7aUJBQUMsQUFBTSxTQUFHLEFBQU0sQUFBQyxBQUNyQixBQUFJO2lCQUFDLEFBQVEsV0FBRyxBQUFRLEFBQUMsQUFDekIsQUFBSTtpQkFBQyxBQUFZLGVBQUcsQUFBWSxBQUFDLEFBQ25DLEFBQUMsQUFFRCxBQUFLOzs7NkRBQ0gsQUFBRSxBQUFDO2dCQUFDLENBQUMsQUFBSSxLQUFDLEFBQVMsQUFBQyxXQUFDLEFBQUMsQUFDcEI7b0JBQUksQUFBSSxPQUFHLEFBQUksZUFBQyxBQUFHLElBQUMsQUFBSSxLQUFDLEFBQU0sQUFBQyxRQUFDLEFBQUksQUFBRSxBQUFDLEFBRXhDLEFBQUk7cUJBQUMsQUFBWSxhQUFDLEFBQU8sUUFBQyxBQUFHLGVBQzNCO3dCQUFJLEFBQUcsTUFBRyxBQUFJLEtBQUMsQUFBa0IsbUJBQUMsQUFBRyxBQUFDLEFBQUMsQUFDdkMsQUFBRzt3QkFBQyxBQUFLLEFBQUUsQUFBQyxBQUNkLEFBQUMsQUFBQyxBQUFDLEFBRUgsQUFBSTs7cUJBQUMsQUFBUyxZQUFHLEFBQUksQUFBQyxBQUN4QixBQUFDLEFBRUQsQUFBTTs7bUJBQUMsQUFBSSxLQUFDLEFBQU0sT0FBQyxBQUFJLEtBQUMsQUFBUSxBQUFDLEFBQUMsQUFDcEMsQUFBQyxBQUVELEFBQUs7Ozs2REFDSCxBQUFNO21CQUFDLEFBQXNCLEFBQUMsQUFDaEMsQUFBQyxBQUNGLEFBQUMsQUFDSixBQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IE1ldGEgZnJvbSAnLi4vbWV0YSc7XG5pbXBvcnQgeyBSZWZlcmVuY2UsIFRhZywgQ1VSUkVOVF9UQUcgfSBmcm9tICdAZ2xpbW1lci9yZWZlcmVuY2UnO1xuaW1wb3J0IHsgTm90aWZpYWJsZVJlZmVyZW5jZSB9IGZyb20gJy4uL3R5cGVzJztcblxuZXhwb3J0IGludGVyZmFjZSBJbm5lclJlZmVyZW5jZUZhY3Rvcnk8VD4ge1xuICBuZXcgKG9iamVjdDogYW55LCBwcm9wZXJ0eTogc3RyaW5nLCBvdXRlcjogTm90aWZpYWJsZVJlZmVyZW5jZTxhbnk+KTogUmVmZXJlbmNlPFQ+O1xufVxuXG5leHBvcnQgY2xhc3MgUHJvcGVydHlSZWZlcmVuY2U8VD4gaW1wbGVtZW50cyBSZWZlcmVuY2U8VD4ge1xuICBwcml2YXRlIG9iamVjdDogYW55O1xuICBwcml2YXRlIHByb3BlcnR5OiBzdHJpbmc7XG4gIHB1YmxpYyB0YWc6IFRhZyA9IENVUlJFTlRfVEFHO1xuXG4gIGNvbnN0cnVjdG9yKG9iamVjdDogYW55LCBwcm9wZXJ0eTogc3RyaW5nLCBfb3V0ZXI6IE5vdGlmaWFibGVSZWZlcmVuY2U8VD4pIHtcbiAgICB0aGlzLm9iamVjdCA9IG9iamVjdDtcbiAgICB0aGlzLnByb3BlcnR5ID0gcHJvcGVydHk7XG4gIH1cblxuICB2YWx1ZSgpIHtcbiAgICByZXR1cm4gdGhpcy5vYmplY3RbdGhpcy5wcm9wZXJ0eV07XG4gIH1cblxuICBsYWJlbCgpIHtcbiAgICByZXR1cm4gJ1tyZWZlcmVuY2UgUHJvcGVydHldJztcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gQ29tcHV0ZWRSZWZlcmVuY2VCbHVlcHJpbnQ8VD4oXG4gIF9wcm9wZXJ0eTogYW55LFxuICBkZXBlbmRlbmNpZXM6IGFueVxuKTogSW5uZXJSZWZlcmVuY2VGYWN0b3J5PFQ+IHtcbiAgcmV0dXJuIGNsYXNzIENvbXB1dGVkUmVmZXJlbmNlPFQ+IGltcGxlbWVudHMgUmVmZXJlbmNlPFQ+IHtcbiAgICBwcml2YXRlIG9iamVjdDogYW55O1xuICAgIHByaXZhdGUgcHJvcGVydHk6IHN0cmluZztcbiAgICBwcml2YXRlIGRlcGVuZGVuY2llczogc3RyaW5nW11bXTtcbiAgICBwcml2YXRlIGluc3RhbGxlZCA9IGZhbHNlO1xuICAgIHB1YmxpYyB0YWc6IFRhZyA9IENVUlJFTlRfVEFHO1xuXG4gICAgY29uc3RydWN0b3Iob2JqZWN0OiBhbnksIHByb3BlcnR5OiBzdHJpbmcpIHtcbiAgICAgIHRoaXMub2JqZWN0ID0gb2JqZWN0O1xuICAgICAgdGhpcy5wcm9wZXJ0eSA9IHByb3BlcnR5O1xuICAgICAgdGhpcy5kZXBlbmRlbmNpZXMgPSBkZXBlbmRlbmNpZXM7XG4gICAgfVxuXG4gICAgdmFsdWUoKTogVCB7XG4gICAgICBpZiAoIXRoaXMuaW5zdGFsbGVkKSB7XG4gICAgICAgIGxldCByb290ID0gTWV0YS5mb3IodGhpcy5vYmplY3QpLnJvb3QoKTtcblxuICAgICAgICB0aGlzLmRlcGVuZGVuY2llcy5mb3JFYWNoKGRlcCA9PiB7XG4gICAgICAgICAgbGV0IHJlZiA9IHJvb3QucmVmZXJlbmNlRnJvbVBhcnRzKGRlcCk7XG4gICAgICAgICAgcmVmLnZhbHVlKCk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuaW5zdGFsbGVkID0gdHJ1ZTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHRoaXMub2JqZWN0W3RoaXMucHJvcGVydHldO1xuICAgIH1cblxuICAgIGxhYmVsKCkge1xuICAgICAgcmV0dXJuICdbcmVmZXJlbmNlIENvbXB1dGVkXSc7XG4gICAgfVxuICB9O1xufVxuIl19

@@ -89,2 +89,2 @@ 'use strict';

exports.PathReference = PathReference;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF0aC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BnbGltbWVyL29iamVjdC1yZWZlcmVuY2UvbGliL3JlZmVyZW5jZXMvcGF0aC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUEsQUFBTyxBQUFFLEFBQVcsQUFBRSxBQUFNLEFBQVUsQUFBQzs7QUFDdkMsQUFBTyxBQUFFLEFBQUksQUFBRSxBQUFNLEFBQWUsQUFBQzs7QUFDckMsQUFBTyxBQUFJLEFBQU0sQUFBUyxBQUFDOzs7O0FBQzNCLEFBQU8sQUFBRSxBQUFpQixBQUFFLEFBQU0sQUFBZSxBQUFDOztBQUNsRCxBQUFPLEFBQW1ELEFBQVcsQUFBRSxBQUFNLEFBQW9CLEFBQUMsQUFJbEcsQUFBTSxBQUFDLEFBQU87Ozs7Ozs7Ozs7SUFVWjsyQkFBWSxBQUF5QixRQUFFLEFBQWdCLFVBUDdDOzs7YUFBSyxBQUFRLEFBQVcsQUFBQyxBQUMzQjthQUFLLFFBQXlCLEFBQUksQUFBQyxBQUNuQzthQUFNLFNBQXFDLEFBQUksQUFBQyxBQUNoRDthQUFlLEFBQVEsQUFBVyxBQUFDLEFBQ3BDO2FBQUssUUFBRyxBQUFDLEFBQUMsQUFDVjthQUFHLEFBQVEsQUFBVyxBQUFDLEFBRzVCLEFBQUk7YUFBQyxBQUFNLFNBQUcsQUFBTSxBQUFDLEFBQ3JCLEFBQUk7YUFBQyxBQUFRLFdBQUcsQUFBUSxBQUFDLEFBQzNCLEFBQUMsQUFFRCxBQUFLOzs7cURBQ0gsQUFBSTtZQUFFLEFBQWU7WUFBRSxBQUFRO1lBQUUsQUFBSyxBQUFFLFFBQUcsQUFBSSxBQUFDLEFBQ2hEOztZQUFJLEFBQVcsY0FBRyxBQUFJLEtBQUMsQUFBWSxBQUFFLEFBQUMsQUFFdEMsQUFBRSxBQUFDO1lBQUMsQUFBVyxnQkFBSyxBQUFJLFFBQUksQUFBVyxnQkFBSyxBQUFTLEFBQUMsV0FBQyxBQUFDLEFBQ3RELEFBQU0sQUFBQzttQkFBQyxBQUFJLEtBQUMsQUFBSyxRQUFHLEFBQVMsQUFBQyxBQUFDLEFBQ2xDLEFBQUMsQUFFRCxBQUFFLEFBQUM7O1lBQUMsQUFBZSxvQkFBSyxBQUFXLEFBQUMsYUFBQyxBQUFDLEFBQ3BDLEFBQUs7b0JBQUcsQUFBSSxLQUFDLEFBQUssQUFBQyxBQUNyQixBQUFDLEFBQUMsQUFBSTtlQUFDLEFBQUMsQUFDTjtnQkFBSSxBQUFhLGdCQUFHLE9BQU8sQUFBVyxnQkFBSyxBQUFRLFdBQUcsQUFBSSxlQUFDLEFBQUcsSUFBQyxBQUFXLEFBQUMsYUFBQyxBQUFnQixpQkFBQyxBQUFRLEFBQUMsQUFBRyxBQUFpQixBQUFDLEFBQzNILEFBQUs7b0JBQUcsQUFBSSxLQUFDLEFBQUssUUFBRyxJQUFJLEFBQWEsY0FBQyxBQUFXLGFBQUUsQUFBUSxVQUFFLEFBQUksQUFBQyxBQUFDLEFBQ3RFLEFBQUMsQUFFRCxBQUF5QztBQUN6QyxBQUF3RDtBQUN4RCxBQUFJO0FBRUosQUFBTSxBQUFDOztlQUFDLEFBQUksS0FBQyxBQUFLLFFBQUcsQUFBTSxNQUFDLEFBQUssQUFBRSxBQUFDLEFBQUMsQUFDdkMsQUFBQyxBQUVELEFBQUc7OzsrQ0FBQyxBQUFZLE1BQ2Q7WUFBSSxBQUFNLFNBQUcsQUFBSSxLQUFDLEFBQVUsQUFBRSxBQUFDLEFBQy9CLEFBQUUsQUFBQztZQUFDLEFBQWMsUUFBSSxBQUFNLEFBQUMsUUFBQyxBQUFNLE9BQUMsQUFBTSxPQUFDLEFBQUksQUFBQyxBQUFDLEFBQ2xELEFBQU0sQUFBQztlQUFDLEFBQU0sT0FBQyxBQUFJLEFBQUMsUUFBRyxJQUFJLEFBQWEsY0FBQyxBQUFJLE1BQUUsQUFBSSxBQUFDLEFBQUMsQUFBQyxBQUN4RCxBQUFDLEFBRUQsQUFBSzs7O3FEQUNILEFBQU07ZUFBQyxBQUFvQixBQUFDLEFBQzlCLEFBQUMsQUFFTyxBQUFVOzs7K0RBQ2hCLEFBQUUsQUFBQztZQUFDLEFBQUksS0FBQyxBQUFNLEFBQUMsUUFBQyxBQUFNLE9BQUMsQUFBSSxLQUFDLEFBQU0sQUFBQyxBQUNwQyxBQUFNLEFBQUM7ZUFBQyxBQUFJLEtBQUMsQUFBTSxTQUFHLEFBQUksQUFBc0IsQUFBQyxBQUFDLEFBQ3BELEFBQUMsQUFFTyxBQUFZOzs7bUVBQ2xCO1lBQUksQUFBTSxTQUFHLEFBQUksS0FBQyxBQUFNLE9BQUMsQUFBSyxBQUFFLEFBQUMsQUFDakMsQUFBSTthQUFDLEFBQWUsa0JBQUcsQUFBTSxBQUFDLEFBQzlCLEFBQU07ZUFBQyxBQUFNLEFBQUMsQUFDaEIsQUFBQyxBQUNGOzs7Ozs7a0JBRUQsQUFBTztRQUFFLEFBQWEsQUFBRSxBQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRU1QVFlfQ0FDSEUgfSBmcm9tICcuLi91dGlscyc7XG5pbXBvcnQgeyBkaWN0IH0gZnJvbSAnQGdsaW1tZXIvdXRpbCc7XG5pbXBvcnQgTWV0YSBmcm9tICcuLi9tZXRhJztcbmltcG9ydCB7IFByb3BlcnR5UmVmZXJlbmNlIH0gZnJvbSAnLi9kZXNjcmlwdG9ycyc7XG5pbXBvcnQgeyBQYXRoUmVmZXJlbmNlIGFzIElQYXRoUmVmZXJlbmNlLCBSZWZlcmVuY2UsIFRhZywgQ1VSUkVOVF9UQUcgfSBmcm9tICdAZ2xpbW1lci9yZWZlcmVuY2UnO1xuaW1wb3J0IHsgRGljdCwgSGFzR3VpZCB9IGZyb20gJ0BnbGltbWVyL3V0aWwnO1xuaW1wb3J0IHsgT3B0aW9uIH0gZnJvbSBcIkBnbGltbWVyL2ludGVyZmFjZXNcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgUGF0aFJlZmVyZW5jZTxUPiBpbXBsZW1lbnRzIElQYXRoUmVmZXJlbmNlPFQ+LCBIYXNHdWlkIHtcbiAgcHJpdmF0ZSBwYXJlbnQ6IElQYXRoUmVmZXJlbmNlPGFueT47XG4gIHByaXZhdGUgcHJvcGVydHk6IHN0cmluZztcbiAgcHJvdGVjdGVkIGNhY2hlOiBhbnkgPSBFTVBUWV9DQUNIRTtcbiAgcHJpdmF0ZSBpbm5lcjogT3B0aW9uPFJlZmVyZW5jZTxUPj4gPSBudWxsO1xuICBwcml2YXRlIGNoYWluczogT3B0aW9uPERpY3Q8UGF0aFJlZmVyZW5jZTxhbnk+Pj4gPSBudWxsO1xuICBwcml2YXRlIGxhc3RQYXJlbnRWYWx1ZTogYW55ID0gRU1QVFlfQ0FDSEU7XG4gIHB1YmxpYyBfZ3VpZCA9IDA7XG4gIHB1YmxpYyB0YWc6IFRhZyA9IENVUlJFTlRfVEFHO1xuXG4gIGNvbnN0cnVjdG9yKHBhcmVudDogSVBhdGhSZWZlcmVuY2U8VD4sIHByb3BlcnR5OiBzdHJpbmcpIHtcbiAgICB0aGlzLnBhcmVudCA9IHBhcmVudDtcbiAgICB0aGlzLnByb3BlcnR5ID0gcHJvcGVydHk7XG4gIH1cblxuICB2YWx1ZSgpOiBhbnkge1xuICAgIGxldCB7IGxhc3RQYXJlbnRWYWx1ZSwgcHJvcGVydHksIGlubmVyIH0gPSB0aGlzO1xuICAgIGxldCBwYXJlbnRWYWx1ZSA9IHRoaXMuX3BhcmVudFZhbHVlKCk7XG5cbiAgICBpZiAocGFyZW50VmFsdWUgPT09IG51bGwgfHwgcGFyZW50VmFsdWUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgcmV0dXJuICh0aGlzLmNhY2hlID0gdW5kZWZpbmVkKTtcbiAgICB9XG5cbiAgICBpZiAobGFzdFBhcmVudFZhbHVlID09PSBwYXJlbnRWYWx1ZSkge1xuICAgICAgaW5uZXIgPSB0aGlzLmlubmVyO1xuICAgIH0gZWxzZSB7XG4gICAgICBsZXQgUmVmZXJlbmNlVHlwZSA9IHR5cGVvZiBwYXJlbnRWYWx1ZSA9PT0gJ29iamVjdCcgPyBNZXRhLmZvcihwYXJlbnRWYWx1ZSkucmVmZXJlbmNlVHlwZUZvcihwcm9wZXJ0eSkgOiBQcm9wZXJ0eVJlZmVyZW5jZTtcbiAgICAgIGlubmVyID0gdGhpcy5pbm5lciA9IG5ldyBSZWZlcmVuY2VUeXBlKHBhcmVudFZhbHVlLCBwcm9wZXJ0eSwgdGhpcyk7XG4gICAgfVxuXG4gICAgLy8gaWYgKHR5cGVvZiBwYXJlbnRWYWx1ZSA9PT0gJ29iamVjdCcpIHtcbiAgICAvLyAgIE1ldGEuZm9yKHBhcmVudFZhbHVlKS5hZGRSZWZlcmVuY2UocHJvcGVydHksIHRoaXMpO1xuICAgIC8vIH1cblxuICAgIHJldHVybiAodGhpcy5jYWNoZSA9IGlubmVyIS52YWx1ZSgpKTtcbiAgfVxuXG4gIGdldChwcm9wOiBzdHJpbmcpOiBJUGF0aFJlZmVyZW5jZTxhbnk+IHtcbiAgICBsZXQgY2hhaW5zID0gdGhpcy5fZ2V0Q2hhaW5zKCk7XG4gICAgaWYgKHByb3AgYXMgc3RyaW5nIGluIGNoYWlucykgcmV0dXJuIGNoYWluc1twcm9wXTtcbiAgICByZXR1cm4gKGNoYWluc1twcm9wXSA9IG5ldyBQYXRoUmVmZXJlbmNlKHRoaXMsIHByb3ApKTtcbiAgfVxuXG4gIGxhYmVsKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICdbcmVmZXJlbmNlIERpcmVjdF0nO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0Q2hhaW5zKCk6IERpY3Q8UGF0aFJlZmVyZW5jZTxhbnk+PiB7XG4gICAgaWYgKHRoaXMuY2hhaW5zKSByZXR1cm4gdGhpcy5jaGFpbnM7XG4gICAgcmV0dXJuICh0aGlzLmNoYWlucyA9IGRpY3Q8UGF0aFJlZmVyZW5jZTxhbnk+PigpKTtcbiAgfVxuXG4gIHByaXZhdGUgX3BhcmVudFZhbHVlKCkge1xuICAgIGxldCBwYXJlbnQgPSB0aGlzLnBhcmVudC52YWx1ZSgpO1xuICAgIHRoaXMubGFzdFBhcmVudFZhbHVlID0gcGFyZW50O1xuICAgIHJldHVybiBwYXJlbnQ7XG4gIH1cbn1cblxuZXhwb3J0IHsgUGF0aFJlZmVyZW5jZSB9O1xuIl19
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF0aC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BnbGltbWVyL29iamVjdC1yZWZlcmVuY2UvbGliL3JlZmVyZW5jZXMvcGF0aC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUEsQUFBTyxBQUFFLEFBQVcsQUFBRSxBQUFNLEFBQVUsQUFBQzs7QUFDdkMsQUFBTyxBQUFFLEFBQUksQUFBRSxBQUFNLEFBQWUsQUFBQzs7QUFDckMsQUFBTyxBQUFJLEFBQU0sQUFBUyxBQUFDOzs7O0FBQzNCLEFBQU8sQUFBRSxBQUFpQixBQUFFLEFBQU0sQUFBZSxBQUFDOztBQUNsRCxBQUFPLEFBQW1ELEFBQVcsQUFBRSxBQUFNLEFBQW9CLEFBQUMsQUFJbEcsQUFBTSxBQUFDLEFBQU87Ozs7Ozs7Ozs7SUFVWjsyQkFBWSxBQUF5QixRQUFFLEFBQWdCLFVBUDdDOzs7YUFBSyxBQUFRLEFBQVcsQUFBQyxBQUMzQjthQUFLLFFBQXlCLEFBQUksQUFBQyxBQUNuQzthQUFNLFNBQXFDLEFBQUksQUFBQyxBQUNoRDthQUFlLEFBQVEsQUFBVyxBQUFDLEFBQ3BDO2FBQUssUUFBRyxBQUFDLEFBQUMsQUFDVjthQUFHLEFBQVEsQUFBVyxBQUFDLEFBRzVCLEFBQUk7YUFBQyxBQUFNLFNBQUcsQUFBTSxBQUFDLEFBQ3JCLEFBQUk7YUFBQyxBQUFRLFdBQUcsQUFBUSxBQUFDLEFBQzNCLEFBQUMsQUFFRCxBQUFLOzs7cURBQ0gsQUFBSTtZQUFFLEFBQWU7WUFBRSxBQUFRO1lBQUUsQUFBSyxBQUFFLFFBQUcsQUFBSSxBQUFDLEFBQ2hEOztZQUFJLEFBQVcsY0FBRyxBQUFJLEtBQUMsQUFBWSxBQUFFLEFBQUMsQUFFdEMsQUFBRSxBQUFDO1lBQUMsQUFBVyxnQkFBSyxBQUFJLFFBQUksQUFBVyxnQkFBSyxBQUFTLEFBQUMsV0FBQyxBQUFDLEFBQ3RELEFBQU0sQUFBQzttQkFBQyxBQUFJLEtBQUMsQUFBSyxRQUFHLEFBQVMsQUFBQyxBQUFDLEFBQ2xDLEFBQUMsQUFFRCxBQUFFLEFBQUM7O1lBQUMsQUFBZSxvQkFBSyxBQUFXLEFBQUMsYUFBQyxBQUFDLEFBQ3BDLEFBQUs7b0JBQUcsQUFBSSxLQUFDLEFBQUssQUFBQyxBQUNyQixBQUFDLEFBQUMsQUFBSTtlQUFDLEFBQUMsQUFDTjtnQkFBSSxBQUFhLGdCQUNmLE9BQU8sQUFBVyxnQkFBSyxBQUFRLFdBQzNCLEFBQUksZUFBQyxBQUFHLElBQUMsQUFBVyxBQUFDLGFBQUMsQUFBZ0IsaUJBQUMsQUFBUSxBQUFDLEFBQ2hELEFBQWlCLEFBQUMsQUFDeEIsQUFBSztvQkFBRyxBQUFJLEtBQUMsQUFBSyxRQUFHLElBQUksQUFBYSxjQUFDLEFBQVcsYUFBRSxBQUFRLFVBQUUsQUFBSSxBQUFDLEFBQUMsQUFDdEUsQUFBQyxBQUVELEFBQXlDO0FBQ3pDLEFBQXdEO0FBQ3hELEFBQUk7QUFFSixBQUFNLEFBQUM7O2VBQUMsQUFBSSxLQUFDLEFBQUssUUFBRyxBQUFNLE1BQUMsQUFBSyxBQUFFLEFBQUMsQUFBQyxBQUN2QyxBQUFDLEFBRUQsQUFBRzs7OytDQUFDLEFBQVksTUFDZDtZQUFJLEFBQU0sU0FBRyxBQUFJLEtBQUMsQUFBVSxBQUFFLEFBQUMsQUFDL0IsQUFBRSxBQUFDO1lBQUUsQUFBZSxRQUFJLEFBQU0sQUFBQyxRQUFDLEFBQU0sT0FBQyxBQUFNLE9BQUMsQUFBSSxBQUFDLEFBQUMsQUFDcEQsQUFBTSxBQUFDO2VBQUMsQUFBTSxPQUFDLEFBQUksQUFBQyxRQUFHLElBQUksQUFBYSxjQUFDLEFBQUksTUFBRSxBQUFJLEFBQUMsQUFBQyxBQUFDLEFBQ3hELEFBQUMsQUFFRCxBQUFLOzs7cURBQ0gsQUFBTTtlQUFDLEFBQW9CLEFBQUMsQUFDOUIsQUFBQyxBQUVPLEFBQVU7OzsrREFDaEIsQUFBRSxBQUFDO1lBQUMsQUFBSSxLQUFDLEFBQU0sQUFBQyxRQUFDLEFBQU0sT0FBQyxBQUFJLEtBQUMsQUFBTSxBQUFDLEFBQ3BDLEFBQU0sQUFBQztlQUFDLEFBQUksS0FBQyxBQUFNLFNBQUcsQUFBSSxBQUFzQixBQUFDLEFBQUMsQUFDcEQsQUFBQyxBQUVPLEFBQVk7OzttRUFDbEI7WUFBSSxBQUFNLFNBQUcsQUFBSSxLQUFDLEFBQU0sT0FBQyxBQUFLLEFBQUUsQUFBQyxBQUNqQyxBQUFJO2FBQUMsQUFBZSxrQkFBRyxBQUFNLEFBQUMsQUFDOUIsQUFBTTtlQUFDLEFBQU0sQUFBQyxBQUNoQixBQUFDLEFBQ0Y7Ozs7OztrQkFFRCxBQUFPO1FBQUUsQUFBYSxBQUFFLEFBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFTVBUWV9DQUNIRSB9IGZyb20gJy4uL3V0aWxzJztcbmltcG9ydCB7IGRpY3QgfSBmcm9tICdAZ2xpbW1lci91dGlsJztcbmltcG9ydCBNZXRhIGZyb20gJy4uL21ldGEnO1xuaW1wb3J0IHsgUHJvcGVydHlSZWZlcmVuY2UgfSBmcm9tICcuL2Rlc2NyaXB0b3JzJztcbmltcG9ydCB7IFBhdGhSZWZlcmVuY2UgYXMgSVBhdGhSZWZlcmVuY2UsIFJlZmVyZW5jZSwgVGFnLCBDVVJSRU5UX1RBRyB9IGZyb20gJ0BnbGltbWVyL3JlZmVyZW5jZSc7XG5pbXBvcnQgeyBEaWN0LCBIYXNHdWlkIH0gZnJvbSAnQGdsaW1tZXIvdXRpbCc7XG5pbXBvcnQgeyBPcHRpb24gfSBmcm9tICdAZ2xpbW1lci9pbnRlcmZhY2VzJztcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgUGF0aFJlZmVyZW5jZTxUPiBpbXBsZW1lbnRzIElQYXRoUmVmZXJlbmNlPFQ+LCBIYXNHdWlkIHtcbiAgcHJpdmF0ZSBwYXJlbnQ6IElQYXRoUmVmZXJlbmNlPGFueT47XG4gIHByaXZhdGUgcHJvcGVydHk6IHN0cmluZztcbiAgcHJvdGVjdGVkIGNhY2hlOiBhbnkgPSBFTVBUWV9DQUNIRTtcbiAgcHJpdmF0ZSBpbm5lcjogT3B0aW9uPFJlZmVyZW5jZTxUPj4gPSBudWxsO1xuICBwcml2YXRlIGNoYWluczogT3B0aW9uPERpY3Q8UGF0aFJlZmVyZW5jZTxhbnk+Pj4gPSBudWxsO1xuICBwcml2YXRlIGxhc3RQYXJlbnRWYWx1ZTogYW55ID0gRU1QVFlfQ0FDSEU7XG4gIHB1YmxpYyBfZ3VpZCA9IDA7XG4gIHB1YmxpYyB0YWc6IFRhZyA9IENVUlJFTlRfVEFHO1xuXG4gIGNvbnN0cnVjdG9yKHBhcmVudDogSVBhdGhSZWZlcmVuY2U8VD4sIHByb3BlcnR5OiBzdHJpbmcpIHtcbiAgICB0aGlzLnBhcmVudCA9IHBhcmVudDtcbiAgICB0aGlzLnByb3BlcnR5ID0gcHJvcGVydHk7XG4gIH1cblxuICB2YWx1ZSgpOiBhbnkge1xuICAgIGxldCB7IGxhc3RQYXJlbnRWYWx1ZSwgcHJvcGVydHksIGlubmVyIH0gPSB0aGlzO1xuICAgIGxldCBwYXJlbnRWYWx1ZSA9IHRoaXMuX3BhcmVudFZhbHVlKCk7XG5cbiAgICBpZiAocGFyZW50VmFsdWUgPT09IG51bGwgfHwgcGFyZW50VmFsdWUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgcmV0dXJuICh0aGlzLmNhY2hlID0gdW5kZWZpbmVkKTtcbiAgICB9XG5cbiAgICBpZiAobGFzdFBhcmVudFZhbHVlID09PSBwYXJlbnRWYWx1ZSkge1xuICAgICAgaW5uZXIgPSB0aGlzLmlubmVyO1xuICAgIH0gZWxzZSB7XG4gICAgICBsZXQgUmVmZXJlbmNlVHlwZSA9XG4gICAgICAgIHR5cGVvZiBwYXJlbnRWYWx1ZSA9PT0gJ29iamVjdCdcbiAgICAgICAgICA/IE1ldGEuZm9yKHBhcmVudFZhbHVlKS5yZWZlcmVuY2VUeXBlRm9yKHByb3BlcnR5KVxuICAgICAgICAgIDogUHJvcGVydHlSZWZlcmVuY2U7XG4gICAgICBpbm5lciA9IHRoaXMuaW5uZXIgPSBuZXcgUmVmZXJlbmNlVHlwZShwYXJlbnRWYWx1ZSwgcHJvcGVydHksIHRoaXMpO1xuICAgIH1cblxuICAgIC8vIGlmICh0eXBlb2YgcGFyZW50VmFsdWUgPT09ICdvYmplY3QnKSB7XG4gICAgLy8gICBNZXRhLmZvcihwYXJlbnRWYWx1ZSkuYWRkUmVmZXJlbmNlKHByb3BlcnR5LCB0aGlzKTtcbiAgICAvLyB9XG5cbiAgICByZXR1cm4gKHRoaXMuY2FjaGUgPSBpbm5lciEudmFsdWUoKSk7XG4gIH1cblxuICBnZXQocHJvcDogc3RyaW5nKTogSVBhdGhSZWZlcmVuY2U8YW55PiB7XG4gICAgbGV0IGNoYWlucyA9IHRoaXMuX2dldENoYWlucygpO1xuICAgIGlmICgocHJvcCBhcyBzdHJpbmcpIGluIGNoYWlucykgcmV0dXJuIGNoYWluc1twcm9wXTtcbiAgICByZXR1cm4gKGNoYWluc1twcm9wXSA9IG5ldyBQYXRoUmVmZXJlbmNlKHRoaXMsIHByb3ApKTtcbiAgfVxuXG4gIGxhYmVsKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICdbcmVmZXJlbmNlIERpcmVjdF0nO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0Q2hhaW5zKCk6IERpY3Q8UGF0aFJlZmVyZW5jZTxhbnk+PiB7XG4gICAgaWYgKHRoaXMuY2hhaW5zKSByZXR1cm4gdGhpcy5jaGFpbnM7XG4gICAgcmV0dXJuICh0aGlzLmNoYWlucyA9IGRpY3Q8UGF0aFJlZmVyZW5jZTxhbnk+PigpKTtcbiAgfVxuXG4gIHByaXZhdGUgX3BhcmVudFZhbHVlKCkge1xuICAgIGxldCBwYXJlbnQgPSB0aGlzLnBhcmVudC52YWx1ZSgpO1xuICAgIHRoaXMubGFzdFBhcmVudFZhbHVlID0gcGFyZW50O1xuICAgIHJldHVybiBwYXJlbnQ7XG4gIH1cbn1cblxuZXhwb3J0IHsgUGF0aFJlZmVyZW5jZSB9O1xuIl19

@@ -67,2 +67,2 @@ 'use strict';

exports.default = RootReference;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BnbGltbWVyL29iamVjdC1yZWZlcmVuY2UvbGliL3JlZmVyZW5jZXMvcm9vdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxBQUFPLEFBQWtCLEFBQUksQUFBRSxBQUFNLEFBQWUsQUFBQzs7QUFDckQsQUFBTyxBQUFFLEFBQWEsQUFBRSxBQUFNLEFBQVEsQUFBQzs7QUFFdkMsQUFBTyxBQUF3QyxBQUFXLEFBQUUsQUFBSSxBQUFFLEFBQU0sQUFBb0IsQUFBQyxBQUU3RixBQUFNLEFBQUMsQUFBTzs7Ozs7Ozs7SUFLWjsyQkFBWSxBQUFTLFFBSGI7OzthQUFNLFNBQUcsQUFBSSxBQUFzQixBQUFDLEFBQ3JDO2FBQUcsQUFBUSxBQUFXLEFBQUMsQUFHNUIsQUFBSTthQUFDLEFBQU0sU0FBRyxBQUFNLEFBQUMsQUFDdkIsQUFBQyxBQUVELEFBQUs7OztxREFBUSxBQUFNO2VBQUMsQUFBSSxLQUFDLEFBQU0sQUFBQyxBQUFDLEFBQUMsQUFFbEMsQUFBTTs7O3FEQUFDLEFBQVMsUUFDZCxBQUFJO2FBQUMsQUFBTSxTQUFHLEFBQU0sQUFBQyxBQUNyQixBQUFJLEFBQUUsQUFBQyxBQUNULEFBQUM7QUFFRCxBQUFHOzs7K0NBQUksQUFBWSxNQUNqQjtZQUFJLEFBQU0sU0FBRyxBQUFJLEtBQUMsQUFBTSxBQUFDLEFBQ3pCLEFBQUUsQUFBQztZQUFDLEFBQWMsUUFBSSxBQUFNLEFBQUMsUUFBQyxBQUFNLE9BQUMsQUFBTSxPQUFDLEFBQUksQUFBQyxBQUFDLEFBQ2xELEFBQU0sQUFBQztlQUFDLEFBQU0sT0FBQyxBQUFJLEFBQUMsUUFBRyxBQUFJLEFBQWEsd0JBQUMsQUFBSSxNQUFFLEFBQUksQUFBQyxBQUFDLEFBQUMsQUFDeEQsQUFBQyxBQUVELEFBQVE7Ozt5REFBSSxBQUFZLE1BQ3RCO1lBQUksQUFBTSxTQUFHLEFBQUksS0FBQyxBQUFNLEFBQUMsQUFDekIsQUFBRSxBQUFDO1lBQUMsQUFBYyxRQUFJLEFBQU0sQUFBQyxRQUFDLEFBQU0sT0FBQyxBQUFNLE9BQUMsQUFBSSxBQUFDLEFBQUMsQUFDbEQsQUFBTTtlQUFDLEFBQUksQUFBQyxBQUNkLEFBQUMsQUFFRCxBQUFJOzs7aURBQUMsQUFBYyxRQUNqQixBQUFNO2VBQUMsQUFBSSxLQUFDLEFBQWtCLG1CQUFDLEFBQU0sT0FBQyxBQUFLLE1BQUMsQUFBRyxBQUFDLEFBQUMsQUFBQyxBQUNwRCxBQUFDLEFBRUQsQUFBa0I7Ozs2RUFBQyxBQUFlLE9BQ2hDLEFBQU07cUJBQU8sQUFBTSxpQkFBRSxBQUFHLEtBQUUsQUFBSSxNQUFWO21CQUFlLEFBQUcsSUFBQyxBQUFHLElBQUMsQUFBSSxBQUEyQjtBQUFuRSxBQUFLLFdBQWdFLEFBQThCLEFBQUMsQUFBQyxBQUM5RyxBQUFDLEFBRUQsQUFBSzs7O3FEQUNILEFBQU07ZUFBQyxBQUFrQixBQUFDLEFBQzVCLEFBQUMsQUFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9wdGlvbiwgT3BhcXVlLCBkaWN0IH0gZnJvbSAnQGdsaW1tZXIvdXRpbCc7XG5pbXBvcnQgeyBQYXRoUmVmZXJlbmNlIH0gZnJvbSAnLi9wYXRoJztcbmltcG9ydCB7IFJvb3RSZWZlcmVuY2UgYXMgSVJvb3RSZWZlcmVuY2UgfSBmcm9tICcuLi90eXBlcyc7XG5pbXBvcnQgeyBQYXRoUmVmZXJlbmNlIGFzIElQYXRoUmVmZXJlbmNlLCBUYWcsIENVUlJFTlRfVEFHLCBidW1wIH0gZnJvbSAnQGdsaW1tZXIvcmVmZXJlbmNlJztcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgUm9vdFJlZmVyZW5jZTxUPiBpbXBsZW1lbnRzIElSb290UmVmZXJlbmNlPFQ+LCBJUGF0aFJlZmVyZW5jZTxUPiB7XG4gIHByaXZhdGUgb2JqZWN0OiBUO1xuICBwcml2YXRlIGNoYWlucyA9IGRpY3Q8UGF0aFJlZmVyZW5jZTxhbnk+PigpO1xuICBwdWJsaWMgdGFnOiBUYWcgPSBDVVJSRU5UX1RBRztcblxuICBjb25zdHJ1Y3RvcihvYmplY3Q6IFQpIHtcbiAgICB0aGlzLm9iamVjdCA9IG9iamVjdDtcbiAgfVxuXG4gIHZhbHVlKCk6IFQgeyByZXR1cm4gdGhpcy5vYmplY3Q7IH1cblxuICB1cGRhdGUob2JqZWN0OiBUKSB7XG4gICAgdGhpcy5vYmplY3QgPSBvYmplY3Q7XG4gICAgYnVtcCgpO1xuICB9XG5cbiAgZ2V0PFU+KHByb3A6IHN0cmluZyk6IElQYXRoUmVmZXJlbmNlPFU+IHtcbiAgICBsZXQgY2hhaW5zID0gdGhpcy5jaGFpbnM7XG4gICAgaWYgKHByb3AgYXMgc3RyaW5nIGluIGNoYWlucykgcmV0dXJuIGNoYWluc1twcm9wXTtcbiAgICByZXR1cm4gKGNoYWluc1twcm9wXSA9IG5ldyBQYXRoUmVmZXJlbmNlKHRoaXMsIHByb3ApKTtcbiAgfVxuXG4gIGNoYWluRm9yPFU+KHByb3A6IHN0cmluZyk6IE9wdGlvbjxJUGF0aFJlZmVyZW5jZTxVPj4ge1xuICAgIGxldCBjaGFpbnMgPSB0aGlzLmNoYWlucztcbiAgICBpZiAocHJvcCBhcyBzdHJpbmcgaW4gY2hhaW5zKSByZXR1cm4gY2hhaW5zW3Byb3BdO1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgcGF0aChzdHJpbmc6IHN0cmluZyk6IElQYXRoUmVmZXJlbmNlPE9wYXF1ZT4ge1xuICAgIHJldHVybiB0aGlzLnJlZmVyZW5jZUZyb21QYXJ0cyhzdHJpbmcuc3BsaXQoJy4nKSk7XG4gIH1cblxuICByZWZlcmVuY2VGcm9tUGFydHMocGFydHM6IHN0cmluZ1tdKTogSVBhdGhSZWZlcmVuY2U8T3BhcXVlPiB7XG4gICAgcmV0dXJuIHBhcnRzLnJlZHVjZSgocmVmLCBwYXJ0KSA9PiByZWYuZ2V0KHBhcnQpIGFzIElQYXRoUmVmZXJlbmNlPE9wYXF1ZT4sIHRoaXMgYXMgSVBhdGhSZWZlcmVuY2U8T3BhcXVlPik7XG4gIH1cblxuICBsYWJlbCgpIHtcbiAgICByZXR1cm4gJ1tyZWZlcmVuY2UgUm9vdF0nO1xuICB9XG59XG4iXX0=
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BnbGltbWVyL29iamVjdC1yZWZlcmVuY2UvbGliL3JlZmVyZW5jZXMvcm9vdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxBQUFPLEFBQWtCLEFBQUksQUFBRSxBQUFNLEFBQWUsQUFBQzs7QUFDckQsQUFBTyxBQUFFLEFBQWEsQUFBRSxBQUFNLEFBQVEsQUFBQzs7QUFFdkMsQUFBTyxBQUF3QyxBQUFXLEFBQUUsQUFBSSxBQUFFLEFBQU0sQUFBb0IsQUFBQyxBQUU3RixBQUFNLEFBQUMsQUFBTzs7Ozs7Ozs7SUFLWjsyQkFBWSxBQUFTLFFBSGI7OzthQUFNLFNBQUcsQUFBSSxBQUFzQixBQUFDLEFBQ3JDO2FBQUcsQUFBUSxBQUFXLEFBQUMsQUFHNUIsQUFBSTthQUFDLEFBQU0sU0FBRyxBQUFNLEFBQUMsQUFDdkIsQUFBQyxBQUVELEFBQUs7OztxREFDSCxBQUFNO2VBQUMsQUFBSSxLQUFDLEFBQU0sQUFBQyxBQUNyQixBQUFDLEFBRUQsQUFBTTs7O3FEQUFDLEFBQVMsUUFDZCxBQUFJO2FBQUMsQUFBTSxTQUFHLEFBQU0sQUFBQyxBQUNyQixBQUFJLEFBQUUsQUFBQyxBQUNULEFBQUM7QUFFRCxBQUFHOzs7K0NBQUksQUFBWSxNQUNqQjtZQUFJLEFBQU0sU0FBRyxBQUFJLEtBQUMsQUFBTSxBQUFDLEFBQ3pCLEFBQUUsQUFBQztZQUFFLEFBQWUsUUFBSSxBQUFNLEFBQUMsUUFBQyxBQUFNLE9BQUMsQUFBTSxPQUFDLEFBQUksQUFBQyxBQUFDLEFBQ3BELEFBQU0sQUFBQztlQUFDLEFBQU0sT0FBQyxBQUFJLEFBQUMsUUFBRyxBQUFJLEFBQWEsd0JBQUMsQUFBSSxNQUFFLEFBQUksQUFBQyxBQUFDLEFBQUMsQUFDeEQsQUFBQyxBQUVELEFBQVE7Ozt5REFBSSxBQUFZLE1BQ3RCO1lBQUksQUFBTSxTQUFHLEFBQUksS0FBQyxBQUFNLEFBQUMsQUFDekIsQUFBRSxBQUFDO1lBQUUsQUFBZSxRQUFJLEFBQU0sQUFBQyxRQUFDLEFBQU0sT0FBQyxBQUFNLE9BQUMsQUFBSSxBQUFDLEFBQUMsQUFDcEQsQUFBTTtlQUFDLEFBQUksQUFBQyxBQUNkLEFBQUMsQUFFRCxBQUFJOzs7aURBQUMsQUFBYyxRQUNqQixBQUFNO2VBQUMsQUFBSSxLQUFDLEFBQWtCLG1CQUFDLEFBQU0sT0FBQyxBQUFLLE1BQUMsQUFBRyxBQUFDLEFBQUMsQUFBQyxBQUNwRCxBQUFDLEFBRUQsQUFBa0I7Ozs2RUFBQyxBQUFlLE9BQ2hDLEFBQU07cUJBQU8sQUFBTSxpQkFDaEIsQUFBRyxLQUFFLEFBQUksTUFBVjttQkFBZSxBQUFHLElBQUMsQUFBRyxJQUFDLEFBQUksQUFBMkI7QUFEakQsQUFBSyxXQUVWLEFBQThCLEFBQy9CLEFBQUMsQUFDSixBQUFDLEFBRUQsQUFBSzs7O3FEQUNILEFBQU07ZUFBQyxBQUFrQixBQUFDLEFBQzVCLEFBQUMsQUFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9wdGlvbiwgT3BhcXVlLCBkaWN0IH0gZnJvbSAnQGdsaW1tZXIvdXRpbCc7XG5pbXBvcnQgeyBQYXRoUmVmZXJlbmNlIH0gZnJvbSAnLi9wYXRoJztcbmltcG9ydCB7IFJvb3RSZWZlcmVuY2UgYXMgSVJvb3RSZWZlcmVuY2UgfSBmcm9tICcuLi90eXBlcyc7XG5pbXBvcnQgeyBQYXRoUmVmZXJlbmNlIGFzIElQYXRoUmVmZXJlbmNlLCBUYWcsIENVUlJFTlRfVEFHLCBidW1wIH0gZnJvbSAnQGdsaW1tZXIvcmVmZXJlbmNlJztcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgUm9vdFJlZmVyZW5jZTxUPiBpbXBsZW1lbnRzIElSb290UmVmZXJlbmNlPFQ+LCBJUGF0aFJlZmVyZW5jZTxUPiB7XG4gIHByaXZhdGUgb2JqZWN0OiBUO1xuICBwcml2YXRlIGNoYWlucyA9IGRpY3Q8UGF0aFJlZmVyZW5jZTxhbnk+PigpO1xuICBwdWJsaWMgdGFnOiBUYWcgPSBDVVJSRU5UX1RBRztcblxuICBjb25zdHJ1Y3RvcihvYmplY3Q6IFQpIHtcbiAgICB0aGlzLm9iamVjdCA9IG9iamVjdDtcbiAgfVxuXG4gIHZhbHVlKCk6IFQge1xuICAgIHJldHVybiB0aGlzLm9iamVjdDtcbiAgfVxuXG4gIHVwZGF0ZShvYmplY3Q6IFQpIHtcbiAgICB0aGlzLm9iamVjdCA9IG9iamVjdDtcbiAgICBidW1wKCk7XG4gIH1cblxuICBnZXQ8VT4ocHJvcDogc3RyaW5nKTogSVBhdGhSZWZlcmVuY2U8VT4ge1xuICAgIGxldCBjaGFpbnMgPSB0aGlzLmNoYWlucztcbiAgICBpZiAoKHByb3AgYXMgc3RyaW5nKSBpbiBjaGFpbnMpIHJldHVybiBjaGFpbnNbcHJvcF07XG4gICAgcmV0dXJuIChjaGFpbnNbcHJvcF0gPSBuZXcgUGF0aFJlZmVyZW5jZSh0aGlzLCBwcm9wKSk7XG4gIH1cblxuICBjaGFpbkZvcjxVPihwcm9wOiBzdHJpbmcpOiBPcHRpb248SVBhdGhSZWZlcmVuY2U8VT4+IHtcbiAgICBsZXQgY2hhaW5zID0gdGhpcy5jaGFpbnM7XG4gICAgaWYgKChwcm9wIGFzIHN0cmluZykgaW4gY2hhaW5zKSByZXR1cm4gY2hhaW5zW3Byb3BdO1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgcGF0aChzdHJpbmc6IHN0cmluZyk6IElQYXRoUmVmZXJlbmNlPE9wYXF1ZT4ge1xuICAgIHJldHVybiB0aGlzLnJlZmVyZW5jZUZyb21QYXJ0cyhzdHJpbmcuc3BsaXQoJy4nKSk7XG4gIH1cblxuICByZWZlcmVuY2VGcm9tUGFydHMocGFydHM6IHN0cmluZ1tdKTogSVBhdGhSZWZlcmVuY2U8T3BhcXVlPiB7XG4gICAgcmV0dXJuIHBhcnRzLnJlZHVjZShcbiAgICAgIChyZWYsIHBhcnQpID0+IHJlZi5nZXQocGFydCkgYXMgSVBhdGhSZWZlcmVuY2U8T3BhcXVlPixcbiAgICAgIHRoaXMgYXMgSVBhdGhSZWZlcmVuY2U8T3BhcXVlPlxuICAgICk7XG4gIH1cblxuICBsYWJlbCgpIHtcbiAgICByZXR1cm4gJ1tyZWZlcmVuY2UgUm9vdF0nO1xuICB9XG59XG4iXX0=

@@ -1,3 +0,3 @@

export { ComputedReferenceBlueprint, PropertyReference } from "./lib/references/descriptors";
export { CLASS_META, default as Meta, metaFor } from "./lib/meta";
export { ComputedReferenceBlueprint, PropertyReference } from './lib/references/descriptors';
export { CLASS_META, default as Meta, metaFor } from './lib/meta';
export { setProperty, notifyProperty } from './lib/object';

@@ -7,2 +7,2 @@ export { default as ObjectReference } from './lib/references/path';

export { ConstReference, isConst } from '@glimmer/reference';
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wYWNrYWdlcy9AZ2xpbW1lci9vYmplY3QtcmVmZXJlbmNlL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLEFBQU8sU0FBRSxBQUEwQiw0QkFBeUIsQUFBaUIsQUFBRSx5QkFBTSxBQUE4QixBQUFDO0FBQ3BILEFBQU8sU0FBRSxBQUFVLFlBQUUsQUFBTyxXQUFJLEFBQUksTUFBRSxBQUFPLEFBQUUsZUFBTSxBQUFZLEFBQUM7QUFDbEUsQUFBTyxTQUFFLEFBQVcsYUFBRSxBQUFjLEFBQUUsc0JBQU0sQUFBYyxBQUFDO0FBRTNELEFBQU8sU0FBRSxBQUFPLFdBQUksQUFBZSxBQUFFLHVCQUFNLEFBQXVCLEFBQUM7QUFDbkUsQUFBTyxTQUFFLEFBQU8sV0FBSSxBQUFrQixBQUFFLDBCQUFNLEFBQXVCLEFBQUM7QUFDdEUsQUFBTyxTQUFFLEFBQWMsZ0JBQUUsQUFBTyxBQUFFLGVBQU0sQUFBb0IsQUFBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IENvbXB1dGVkUmVmZXJlbmNlQmx1ZXByaW50LCBJbm5lclJlZmVyZW5jZUZhY3RvcnksIFByb3BlcnR5UmVmZXJlbmNlIH0gZnJvbSBcIi4vbGliL3JlZmVyZW5jZXMvZGVzY3JpcHRvcnNcIjtcbmV4cG9ydCB7IENMQVNTX01FVEEsIGRlZmF1bHQgYXMgTWV0YSwgbWV0YUZvciB9IGZyb20gXCIuL2xpYi9tZXRhXCI7XG5leHBvcnQgeyBzZXRQcm9wZXJ0eSwgbm90aWZ5UHJvcGVydHkgfSBmcm9tICcuL2xpYi9vYmplY3QnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdHlwZXMnO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBPYmplY3RSZWZlcmVuY2UgfSBmcm9tICcuL2xpYi9yZWZlcmVuY2VzL3BhdGgnO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBVcGRhdGFibGVSZWZlcmVuY2UgfSBmcm9tICcuL2xpYi9yZWZlcmVuY2VzL3Jvb3QnO1xuZXhwb3J0IHsgQ29uc3RSZWZlcmVuY2UsIGlzQ29uc3QgfSBmcm9tICdAZ2xpbW1lci9yZWZlcmVuY2UnO1xuIl19
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wYWNrYWdlcy9AZ2xpbW1lci9vYmplY3QtcmVmZXJlbmNlL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLEFBQU8sU0FDTCxBQUEwQiw0QkFFMUIsQUFBaUIsQUFDbEIseUJBQU0sQUFBOEIsQUFBQztBQUN0QyxBQUFPLFNBQUUsQUFBVSxZQUFFLEFBQU8sV0FBSSxBQUFJLE1BQUUsQUFBTyxBQUFFLGVBQU0sQUFBWSxBQUFDO0FBQ2xFLEFBQU8sU0FBRSxBQUFXLGFBQUUsQUFBYyxBQUFFLHNCQUFNLEFBQWMsQUFBQztBQUUzRCxBQUFPLFNBQUUsQUFBTyxXQUFJLEFBQWUsQUFBRSx1QkFBTSxBQUF1QixBQUFDO0FBQ25FLEFBQU8sU0FBRSxBQUFPLFdBQUksQUFBa0IsQUFBRSwwQkFBTSxBQUF1QixBQUFDO0FBQ3RFLEFBQU8sU0FBRSxBQUFjLGdCQUFFLEFBQU8sQUFBRSxlQUFNLEFBQW9CLEFBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQge1xuICBDb21wdXRlZFJlZmVyZW5jZUJsdWVwcmludCxcbiAgSW5uZXJSZWZlcmVuY2VGYWN0b3J5LFxuICBQcm9wZXJ0eVJlZmVyZW5jZSxcbn0gZnJvbSAnLi9saWIvcmVmZXJlbmNlcy9kZXNjcmlwdG9ycyc7XG5leHBvcnQgeyBDTEFTU19NRVRBLCBkZWZhdWx0IGFzIE1ldGEsIG1ldGFGb3IgfSBmcm9tICcuL2xpYi9tZXRhJztcbmV4cG9ydCB7IHNldFByb3BlcnR5LCBub3RpZnlQcm9wZXJ0eSB9IGZyb20gJy4vbGliL29iamVjdCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi90eXBlcyc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIE9iamVjdFJlZmVyZW5jZSB9IGZyb20gJy4vbGliL3JlZmVyZW5jZXMvcGF0aCc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIFVwZGF0YWJsZVJlZmVyZW5jZSB9IGZyb20gJy4vbGliL3JlZmVyZW5jZXMvcm9vdCc7XG5leHBvcnQgeyBDb25zdFJlZmVyZW5jZSwgaXNDb25zdCB9IGZyb20gJ0BnbGltbWVyL3JlZmVyZW5jZSc7XG4iXX0=

@@ -38,6 +38,6 @@ import { PropertyReference } from './references/descriptors';

referenceFromParts(_parts) {
throw new Error("Not implemented");
throw new Error('Not implemented');
}
chainFor(_prop) {
throw new Error("Not implemented");
throw new Error('Not implemented');
}

@@ -56,3 +56,3 @@ get(prop) {

}
export const CLASS_META = "df8be4c8-4e89-44e2-a8f9-550c8dacdca7";
export const CLASS_META = 'df8be4c8-4e89-44e2-a8f9-550c8dacdca7';
const hasOwnProperty = Object.hasOwnProperty;

@@ -124,2 +124,2 @@ class Meta {

}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0YS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL0BnbGltbWVyL29iamVjdC1yZWZlcmVuY2UvbGliL21ldGEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsQUFBTyxTQUFFLEFBQWlCLEFBQUUseUJBQU0sQUFBMEIsQUFBQztBQUM3RCxPQUFPLEFBQWEsbUJBQU0sQUFBbUIsQUFBQztBQUc5QyxBQUFPLFNBQWdCLEFBQU8sU0FBZ0IsQUFBSSxBQUFFLFlBQU0sQUFBZSxBQUFDO0FBUzFFLEFBQU8sU0FBbUMsQUFBVyxBQUFFLG1CQUFNLEFBQW9CLEFBQUM7QUFJbEYsTUFBTSxBQUFZLGVBQUcsRUFBRSxBQUFPLFVBQUksQ0FBQyxBQUFFLEFBQUM7QUFFdEM7QUFLRSxnQkFBWSxBQUFXLFFBQUUsQUFBaUI7QUFGbkMsYUFBRyxNQUFHLEFBQVcsQUFBQztBQUd2QixBQUFJLGFBQUMsQUFBTSxTQUFHLEFBQU0sQUFBQyxBQUN2QjtBQUFDO0FBRUQsQUFBSztBQUFLLEFBQU0sZUFBQyxBQUFZLEFBQUMsQUFBQztBQUFDO0FBQ2hDLEFBQU0sYUFBSSxDQUFDO0FBRVgsQUFBSztBQUNILEFBQU0sZUFBQyxBQUFJLEtBQUMsQUFBTSxPQUFDLEFBQUksS0FBQyxBQUFRLEFBQUMsQUFBQyxBQUNwQztBQUFDO0FBRUQsQUFBRyxRQUFDLEFBQVk7QUFDZCxBQUFNLGVBQUMsSUFBSSxBQUFTLFVBQUMsQUFBSSxLQUFDLEFBQU0sT0FBQyxBQUFJLEtBQUMsQUFBUSxBQUFDLFdBQUUsQUFBSSxBQUFDLEFBQUMsQUFDekQ7QUFBQyxBQUNGOztBQUVEO0FBSUUsZ0JBQVksQUFBVTtBQUZmLGFBQUcsTUFBRyxBQUFXLEFBQUM7QUFHdkIsQUFBSSxhQUFDLEFBQUssUUFBRyxBQUFLLEFBQUMsQUFDckI7QUFBQztBQUVELEFBQU0sV0FBQyxBQUFVO0FBQ2YsQUFBSSxhQUFDLEFBQUssUUFBRyxBQUFLLEFBQUMsQUFDckI7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QUFHLEFBQUksS0FBQyxBQUFjLGtCQUFJLEFBQUksQUFBNkIsQUFBQztBQUMvRSxBQUFNLGVBQUMsQUFBSSxLQUFDLEFBQWMsQUFBQyxBQUM3QjtBQUFDO0FBRUQsQUFBYSxrQkFBQyxBQUFnQjtBQUM1QixBQUFFLEFBQUMsWUFBQyxDQUFDLEFBQUksS0FBQyxBQUFVLEFBQUMsWUFBQyxBQUFNLE9BQUMsQUFBSSxBQUFDO0FBQ2xDLEFBQU0sZUFBQyxBQUFJLEtBQUMsQUFBVSxXQUFDLEFBQVEsQUFBQyxBQUFDLEFBQ25DO0FBQUM7QUFFRCxBQUFRO0FBQ04sQUFBTSxBQUFDLGVBQUMsQUFBSSxLQUFDLEFBQUssUUFBRyxBQUFJLEtBQUMsQUFBSyxTQUFJLEFBQUksQUFBRSxBQUFDLEFBQUMsQUFDN0M7QUFBQztBQUVELEFBQUk7QUFDRixBQUFNLEFBQUMsZUFBQyxBQUFJLEtBQUMsQUFBUyxZQUFHLEFBQUksS0FBQyxBQUFTLGFBQUksSUFBSSxBQUFJLEtBQUMsQUFBb0IscUJBQUMsQUFBSSxLQUFDLEFBQU0sQUFBQyxBQUFDLEFBQUMsQUFDekY7QUFBQyxBQUNGOztBQUVELGVBQWUsQUFBSSxBQUFDO0FBTXBCLEFBQU0sd0JBQWtCLEFBQVE7QUFDOUIsQUFBTSxXQUFDLEFBQUksS0FBQyxBQUFHLElBQUMsQUFBRyxBQUFDLEFBQUMsQUFDdkI7QUFBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFByb3BlcnR5UmVmZXJlbmNlIH0gZnJvbSAnLi9yZWZlcmVuY2VzL2Rlc2NyaXB0b3JzJztcbmltcG9ydCBSb290UmVmZXJlbmNlIGZyb20gJy4vcmVmZXJlbmNlcy9yb290JztcbmltcG9ydCB7IE1ldGFPcHRpb25zIH0gZnJvbSAnLi90eXBlcyc7XG5cbmltcG9ydCB7IE9wdGlvbiwgRGljdCwgRGljdFNldCwgSGFzR3VpZCwgU2V0LCBkaWN0IH0gZnJvbSAnQGdsaW1tZXIvdXRpbCc7XG5cbmltcG9ydCB7XG4gIFJvb3RSZWZlcmVuY2VGYWN0b3J5LFxuICBQYXRoUmVmZXJlbmNlRmFjdG9yeSxcbiAgTWV0YSBhcyBJTWV0YSxcbiAgUm9vdFJlZmVyZW5jZSBhcyBJUm9vdFJlZmVyZW5jZVxufSBmcm9tICcuL3R5cGVzJztcblxuaW1wb3J0IHsgUGF0aFJlZmVyZW5jZSBhcyBJUGF0aFJlZmVyZW5jZSwgQ1VSUkVOVF9UQUcgfSBmcm9tICdAZ2xpbW1lci9yZWZlcmVuY2UnO1xuXG5pbXBvcnQgeyBJbm5lclJlZmVyZW5jZUZhY3RvcnkgfSBmcm9tICcuL3JlZmVyZW5jZXMvZGVzY3JpcHRvcnMnO1xuXG5jb25zdCBOT09QX0RFU1RST1kgPSB7IGRlc3Ryb3koKSB7fSB9O1xuXG5jbGFzcyBDb25zdFBhdGggaW1wbGVtZW50cyBJUGF0aFJlZmVyZW5jZTxhbnk+IHtcbiAgcHJpdmF0ZSBwYXJlbnQ6IGFueTtcbiAgcHJpdmF0ZSBwcm9wZXJ0eTogc3RyaW5nO1xuICBwdWJsaWMgdGFnID0gQ1VSUkVOVF9UQUc7XG5cbiAgY29uc3RydWN0b3IocGFyZW50OiBhbnksIF9wcm9wZXJ0eTogc3RyaW5nKSB7XG4gICAgdGhpcy5wYXJlbnQgPSBwYXJlbnQ7XG4gIH1cblxuICBjaGFpbigpIHsgcmV0dXJuIE5PT1BfREVTVFJPWTsgfVxuICBub3RpZnkoKSB7fVxuXG4gIHZhbHVlKCkge1xuICAgIHJldHVybiB0aGlzLnBhcmVudFt0aGlzLnByb3BlcnR5XTtcbiAgfVxuXG4gIGdldChwcm9wOiBzdHJpbmcpOiBJUGF0aFJlZmVyZW5jZTxhbnk+IHtcbiAgICByZXR1cm4gbmV3IENvbnN0UGF0aCh0aGlzLnBhcmVudFt0aGlzLnByb3BlcnR5XSwgcHJvcCk7XG4gIH1cbn1cblxuY2xhc3MgQ29uc3RSb290IGltcGxlbWVudHMgSVJvb3RSZWZlcmVuY2U8YW55PiB7XG4gIHByaXZhdGUgaW5uZXI6IGFueTtcbiAgcHVibGljIHRhZyA9IENVUlJFTlRfVEFHO1xuXG4gIGNvbnN0cnVjdG9yKHZhbHVlOiBhbnkpIHtcbiAgICB0aGlzLmlubmVyID0gdmFsdWU7XG4gIH1cblxuICB1cGRhdGUoaW5uZXI6IGFueSkge1xuICAgIHRoaXMuaW5uZXIgPSBpbm5lcjtcbiAgfVxuXG4gIGNoYWluKCkgeyByZXR1cm4gTk9PUF9ERVNUUk9ZOyB9XG4gIG5vdGlmeSgpIHt9XG5cbiAgdmFsdWUoKTogYW55IHtcbiAgICByZXR1cm4gdGhpcy5pbm5lcjtcbiAgfVxuXG4gIHJlZmVyZW5jZUZyb21QYXJ0cyhfcGFydHM6IHN0cmluZ1tdKTogSVBhdGhSZWZlcmVuY2U8YW55PiB7XG4gICAgdGhyb3cgbmV3IEVycm9yKFwiTm90IGltcGxlbWVudGVkXCIpO1xuICB9XG5cbiAgY2hhaW5Gb3IoX3Byb3A6IHN0cmluZyk6IElQYXRoUmVmZXJlbmNlPGFueT4ge1xuICAgIHRocm93IG5ldyBFcnJvcihcIk5vdCBpbXBsZW1lbnRlZFwiKTtcbiAgfVxuXG4gIGdldChwcm9wOiBzdHJpbmcpOiBJUGF0aFJlZmVyZW5jZTxhbnk+IHtcbiAgICByZXR1cm4gbmV3IENvbnN0UGF0aCh0aGlzLmlubmVyLCBwcm9wKTtcbiAgfVxufVxuXG5jbGFzcyBDb25zdE1ldGEgLyppbXBsZW1lbnRzIElNZXRhKi8ge1xuICBwcml2YXRlIG9iamVjdDogYW55O1xuXG4gIGNvbnN0cnVjdG9yKG9iamVjdDogYW55KSB7XG4gICAgdGhpcy5vYmplY3QgPSBvYmplY3Q7XG4gIH1cblxuICByb290KCk6IENvbnN0Um9vdCB7XG4gICAgcmV0dXJuIG5ldyBDb25zdFJvb3QodGhpcy5vYmplY3QpO1xuICB9XG59XG5cbmV4cG9ydCBjb25zdCBDTEFTU19NRVRBID0gXCJkZjhiZTRjOC00ZTg5LTQ0ZTItYThmOS01NTBjOGRhY2RjYTdcIjtcblxuY29uc3QgaGFzT3duUHJvcGVydHkgPSBPYmplY3QuaGFzT3duUHJvcGVydHk7XG5cbmNsYXNzIE1ldGEgaW1wbGVtZW50cyBJTWV0YSwgSGFzR3VpZCB7XG4gIHN0YXRpYyBmb3Iob2JqOiBhbnkpOiBJTWV0YSB7XG4gICAgaWYgKG9iaiA9PT0gbnVsbCB8fCBvYmogPT09IHVuZGVmaW5lZCkgcmV0dXJuIG5ldyBNZXRhKG9iaiwge30pO1xuICAgIGlmIChoYXNPd25Qcm9wZXJ0eS5jYWxsKG9iaiwgJ19tZXRhJykgJiYgb2JqLl9tZXRhKSByZXR1cm4gb2JqLl9tZXRhO1xuICAgIGlmICghT2JqZWN0LmlzRXh0ZW5zaWJsZShvYmopKSByZXR1cm4gbmV3IENvbnN0TWV0YShvYmopIGFzIGFueTtcblxuICAgIGxldCBNZXRhVG9Vc2U6IHR5cGVvZiBNZXRhID0gTWV0YTtcblxuICAgIGlmIChvYmouY29uc3RydWN0b3IgJiYgb2JqLmNvbnN0cnVjdG9yW0NMQVNTX01FVEFdKSB7XG4gICAgICBsZXQgY2xhc3NNZXRhOiBDbGFzc01ldGEgPSBvYmouY29uc3RydWN0b3JbQ0xBU1NfTUVUQV07XG4gICAgICBNZXRhVG9Vc2UgPSBjbGFzc01ldGEuSW5zdGFuY2VNZXRhQ29uc3RydWN0b3I7XG4gICAgfSBlbHNlIGlmIChvYmpbQ0xBU1NfTUVUQV0pIHtcbiAgICAgIE1ldGFUb1VzZSA9IG9ialtDTEFTU19NRVRBXS5JbnN0YW5jZU1ldGFDb25zdHJ1Y3RvcjtcbiAgICB9XG5cbiAgICByZXR1cm4gKG9iai5fbWV0YSA9IG5ldyBNZXRhVG9Vc2Uob2JqLCB7fSkpO1xuICB9XG5cbiAgc3RhdGljIGV4aXN0cyhvYmo6IGFueSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0eXBlb2Ygb2JqID09PSAnb2JqZWN0JyAmJiBvYmouX21ldGE7XG4gIH1cblxuICBzdGF0aWMgbWV0YWRhdGFGb3JQcm9wZXJ0eShfa2V5OiBzdHJpbmcpOiBhbnkge1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgcHJpdmF0ZSBvYmplY3Q6IGFueTtcbiAgcHJpdmF0ZSBSb290UmVmZXJlbmNlRmFjdG9yeTogUm9vdFJlZmVyZW5jZUZhY3Rvcnk8YW55PjtcbiAgcHJpdmF0ZSByb290Q2FjaGU6IElSb290UmVmZXJlbmNlPGFueT47XG4gIHByaXZhdGUgcmVmZXJlbmNlczogT3B0aW9uPERpY3Q8RGljdFNldDxJUGF0aFJlZmVyZW5jZTxhbnk+ICYgSGFzR3VpZD4+PiA9IG51bGw7XG4gIHB1YmxpYyBfZ3VpZDogbnVtYmVyO1xuICBwcm90ZWN0ZWQgc2xvdHM6IE9wdGlvbjxEaWN0PGFueT4+ID0gbnVsbDtcbiAgcHJvdGVjdGVkIHJlZmVyZW5jZVR5cGVzOiBPcHRpb248RGljdDxJbm5lclJlZmVyZW5jZUZhY3Rvcnk8YW55Pj4+ID0gbnVsbDtcbiAgcHJvdGVjdGVkIHByb3BlcnR5TWV0YWRhdGE6IE9wdGlvbjxEaWN0PGFueT4+ID0gbnVsbDtcblxuICBjb25zdHJ1Y3RvcihvYmplY3Q6IGFueSwgeyBSb290UmVmZXJlbmNlRmFjdG9yeSB9OiBNZXRhT3B0aW9ucykge1xuICAgIHRoaXMub2JqZWN0ID0gb2JqZWN0O1xuICAgIHRoaXMuUm9vdFJlZmVyZW5jZUZhY3RvcnkgPSAoUm9vdFJlZmVyZW5jZUZhY3RvcnkgfHwgUm9vdFJlZmVyZW5jZSkgYXMgUm9vdFJlZmVyZW5jZUZhY3Rvcnk8YW55PjtcbiAgfVxuXG4gIGFkZFJlZmVyZW5jZShwcm9wZXJ0eTogc3RyaW5nLCByZWZlcmVuY2U6IElQYXRoUmVmZXJlbmNlPGFueT4gJiBIYXNHdWlkKSB7XG4gICAgbGV0IHJlZnMgPSB0aGlzLnJlZmVyZW5jZXMgPSB0aGlzLnJlZmVyZW5jZXMgfHwgZGljdDxEaWN0U2V0PElQYXRoUmVmZXJlbmNlPGFueT4gJiBIYXNHdWlkPj4oKTtcbiAgICBsZXQgc2V0ID0gcmVmc1twcm9wZXJ0eV0gPSByZWZzW3Byb3BlcnR5XSB8fCBuZXcgRGljdFNldDxJUGF0aFJlZmVyZW5jZTxhbnk+ICYgSGFzR3VpZD4oKTtcbiAgICBzZXQuYWRkKHJlZmVyZW5jZSk7XG4gIH1cblxuICBhZGRSZWZlcmVuY2VUeXBlRm9yKHByb3BlcnR5OiBzdHJpbmcsIHR5cGU6IFBhdGhSZWZlcmVuY2VGYWN0b3J5PGFueT4pIHtcbiAgICB0aGlzLnJlZmVyZW5jZVR5cGVzID0gdGhpcy5yZWZlcmVuY2VUeXBlcyB8fCBkaWN0PFBhdGhSZWZlcmVuY2VGYWN0b3J5PGFueT4+KCk7XG4gICAgdGhpcy5yZWZlcmVuY2VUeXBlc1twcm9wZXJ0eV0gPSB0eXBlO1xuICB9XG5cbiAgcmVmZXJlbmNlVHlwZUZvcihwcm9wZXJ0eTogc3RyaW5nKTogSW5uZXJSZWZlcmVuY2VGYWN0b3J5PGFueT4ge1xuICAgIGlmICghdGhpcy5yZWZlcmVuY2VUeXBlcykgcmV0dXJuIFByb3BlcnR5UmVmZXJlbmNlO1xuICAgIHJldHVybiB0aGlzLnJlZmVyZW5jZVR5cGVzW3Byb3BlcnR5XSB8fCBQcm9wZXJ0eVJlZmVyZW5jZTtcbiAgfVxuXG4gIHJlbW92ZVJlZmVyZW5jZShwcm9wZXJ0eTogc3RyaW5nLCByZWZlcmVuY2U6IElQYXRoUmVmZXJlbmNlPGFueT4gJiBIYXNHdWlkKSB7XG4gICAgaWYgKCF0aGlzLnJlZmVyZW5jZXMpIHJldHVybjtcbiAgICBsZXQgc2V0ID0gdGhpcy5yZWZlcmVuY2VzW3Byb3BlcnR5XTtcbiAgICBzZXQuZGVsZXRlKHJlZmVyZW5jZSk7XG4gIH1cblxuICBnZXRSZWZlcmVuY2VUeXBlcygpOiBEaWN0PElubmVyUmVmZXJlbmNlRmFjdG9yeTxhbnk+PiB7XG4gICAgdGhpcy5yZWZlcmVuY2VUeXBlcyA9IHRoaXMucmVmZXJlbmNlVHlwZXMgfHwgZGljdDxQYXRoUmVmZXJlbmNlRmFjdG9yeTxhbnk+PigpO1xuICAgIHJldHVybiB0aGlzLnJlZmVyZW5jZVR5cGVzO1xuICB9XG5cbiAgcmVmZXJlbmNlc0Zvcihwcm9wZXJ0eTogc3RyaW5nKTogT3B0aW9uPFNldDxJUGF0aFJlZmVyZW5jZTxhbnk+Pj4ge1xuICAgIGlmICghdGhpcy5yZWZlcmVuY2VzKSByZXR1cm4gbnVsbDtcbiAgICByZXR1cm4gdGhpcy5yZWZlcmVuY2VzW3Byb3BlcnR5XTtcbiAgfVxuXG4gIGdldFNsb3RzKCkge1xuICAgIHJldHVybiAodGhpcy5zbG90cyA9IHRoaXMuc2xvdHMgfHwgZGljdCgpKTtcbiAgfVxuXG4gIHJvb3QoKTogSVJvb3RSZWZlcmVuY2U8YW55PiB7XG4gICAgcmV0dXJuICh0aGlzLnJvb3RDYWNoZSA9IHRoaXMucm9vdENhY2hlIHx8IG5ldyB0aGlzLlJvb3RSZWZlcmVuY2VGYWN0b3J5KHRoaXMub2JqZWN0KSk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgTWV0YTtcblxuaW50ZXJmYWNlIENsYXNzTWV0YSB7XG4gIEluc3RhbmNlTWV0YUNvbnN0cnVjdG9yOiB0eXBlb2YgTWV0YTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG1ldGFGb3Iob2JqOiBhbnkpOiBJTWV0YSB7XG4gIHJldHVybiBNZXRhLmZvcihvYmopO1xufVxuIl19
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0YS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL0BnbGltbWVyL29iamVjdC1yZWZlcmVuY2UvbGliL21ldGEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsQUFBTyxTQUFFLEFBQWlCLEFBQUUseUJBQU0sQUFBMEIsQUFBQztBQUM3RCxPQUFPLEFBQWEsbUJBQU0sQUFBbUIsQUFBQztBQUc5QyxBQUFPLFNBQWdCLEFBQU8sU0FBZ0IsQUFBSSxBQUFFLFlBQU0sQUFBZSxBQUFDO0FBUzFFLEFBQU8sU0FBbUMsQUFBVyxBQUFFLG1CQUFNLEFBQW9CLEFBQUM7QUFJbEYsTUFBTSxBQUFZLGVBQUcsRUFBRSxBQUFPLFVBQUksQ0FBQyxBQUFFLEFBQUM7QUFFdEM7QUFLRSxnQkFBWSxBQUFXLFFBQUUsQUFBaUI7QUFGbkMsYUFBRyxNQUFHLEFBQVcsQUFBQztBQUd2QixBQUFJLGFBQUMsQUFBTSxTQUFHLEFBQU0sQUFBQyxBQUN2QjtBQUFDO0FBRUQsQUFBSztBQUNILEFBQU0sZUFBQyxBQUFZLEFBQUMsQUFDdEI7QUFBQztBQUNELEFBQU0sYUFBSSxDQUFDO0FBRVgsQUFBSztBQUNILEFBQU0sZUFBQyxBQUFJLEtBQUMsQUFBTSxPQUFDLEFBQUksS0FBQyxBQUFRLEFBQUMsQUFBQyxBQUNwQztBQUFDO0FBRUQsQUFBRyxRQUFDLEFBQVk7QUFDZCxBQUFNLGVBQUMsSUFBSSxBQUFTLFVBQUMsQUFBSSxLQUFDLEFBQU0sT0FBQyxBQUFJLEtBQUMsQUFBUSxBQUFDLFdBQUUsQUFBSSxBQUFDLEFBQUMsQUFDekQ7QUFBQyxBQUNGOztBQUVEO0FBSUUsZ0JBQVksQUFBVTtBQUZmLGFBQUcsTUFBRyxBQUFXLEFBQUM7QUFHdkIsQUFBSSxhQUFDLEFBQUssUUFBRyxBQUFLLEFBQUMsQUFDckI7QUFBQztBQUVELEFBQU0sV0FBQyxBQUFVO0FBQ2YsQUFBSSxhQUFDLEFBQUssUUFBRyxBQUFLLEFBQUMsQUFDckI7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Q2YsQUFBSSxhQUFDLEFBQWMsaUJBQUcsQUFBSSxLQUFDLEFBQWMsa0JBQUksQUFBSSxBQUE2QixBQUFDO0FBQy9FLEFBQU0sZUFBQyxBQUFJLEtBQUMsQUFBYyxBQUFDLEFBQzdCO0FBQUM7QUFFRCxBQUFhLGtCQUFDLEFBQWdCO0FBQzVCLEFBQUUsQUFBQyxZQUFDLENBQUMsQUFBSSxLQUFDLEFBQVUsQUFBQyxZQUFDLEFBQU0sT0FBQyxBQUFJLEFBQUM7QUFDbEMsQUFBTSxlQUFDLEFBQUksS0FBQyxBQUFVLFdBQUMsQUFBUSxBQUFDLEFBQUMsQUFDbkM7QUFBQztBQUVELEFBQVE7QUFDTixBQUFNLEFBQUMsZUFBQyxBQUFJLEtBQUMsQUFBSyxRQUFHLEFBQUksS0FBQyxBQUFLLFNBQUksQUFBSSxBQUFFLEFBQUMsQUFBQyxBQUM3QztBQUFDO0FBRUQsQUFBSTtBQUNGLEFBQU0sQUFBQyxlQUFDLEFBQUksS0FBQyxBQUFTLFlBQUcsQUFBSSxLQUFDLEFBQVMsYUFBSSxJQUFJLEFBQUksS0FBQyxBQUFvQixxQkFBQyxBQUFJLEtBQUMsQUFBTSxBQUFDLEFBQUMsQUFBQyxBQUN6RjtBQUFDLEFBQ0Y7O0FBRUQsZUFBZSxBQUFJLEFBQUM7QUFNcEIsQUFBTSx3QkFBa0IsQUFBUTtBQUM5QixBQUFNLFdBQUMsQUFBSSxLQUFDLEFBQUcsSUFBQyxBQUFHLEFBQUMsQUFBQyxBQUN2QjtBQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUHJvcGVydHlSZWZlcmVuY2UgfSBmcm9tICcuL3JlZmVyZW5jZXMvZGVzY3JpcHRvcnMnO1xuaW1wb3J0IFJvb3RSZWZlcmVuY2UgZnJvbSAnLi9yZWZlcmVuY2VzL3Jvb3QnO1xuaW1wb3J0IHsgTWV0YU9wdGlvbnMgfSBmcm9tICcuL3R5cGVzJztcblxuaW1wb3J0IHsgT3B0aW9uLCBEaWN0LCBEaWN0U2V0LCBIYXNHdWlkLCBTZXQsIGRpY3QgfSBmcm9tICdAZ2xpbW1lci91dGlsJztcblxuaW1wb3J0IHtcbiAgUm9vdFJlZmVyZW5jZUZhY3RvcnksXG4gIFBhdGhSZWZlcmVuY2VGYWN0b3J5LFxuICBNZXRhIGFzIElNZXRhLFxuICBSb290UmVmZXJlbmNlIGFzIElSb290UmVmZXJlbmNlLFxufSBmcm9tICcuL3R5cGVzJztcblxuaW1wb3J0IHsgUGF0aFJlZmVyZW5jZSBhcyBJUGF0aFJlZmVyZW5jZSwgQ1VSUkVOVF9UQUcgfSBmcm9tICdAZ2xpbW1lci9yZWZlcmVuY2UnO1xuXG5pbXBvcnQgeyBJbm5lclJlZmVyZW5jZUZhY3RvcnkgfSBmcm9tICcuL3JlZmVyZW5jZXMvZGVzY3JpcHRvcnMnO1xuXG5jb25zdCBOT09QX0RFU1RST1kgPSB7IGRlc3Ryb3koKSB7fSB9O1xuXG5jbGFzcyBDb25zdFBhdGggaW1wbGVtZW50cyBJUGF0aFJlZmVyZW5jZTxhbnk+IHtcbiAgcHJpdmF0ZSBwYXJlbnQ6IGFueTtcbiAgcHJpdmF0ZSBwcm9wZXJ0eTogc3RyaW5nO1xuICBwdWJsaWMgdGFnID0gQ1VSUkVOVF9UQUc7XG5cbiAgY29uc3RydWN0b3IocGFyZW50OiBhbnksIF9wcm9wZXJ0eTogc3RyaW5nKSB7XG4gICAgdGhpcy5wYXJlbnQgPSBwYXJlbnQ7XG4gIH1cblxuICBjaGFpbigpIHtcbiAgICByZXR1cm4gTk9PUF9ERVNUUk9ZO1xuICB9XG4gIG5vdGlmeSgpIHt9XG5cbiAgdmFsdWUoKSB7XG4gICAgcmV0dXJuIHRoaXMucGFyZW50W3RoaXMucHJvcGVydHldO1xuICB9XG5cbiAgZ2V0KHByb3A6IHN0cmluZyk6IElQYXRoUmVmZXJlbmNlPGFueT4ge1xuICAgIHJldHVybiBuZXcgQ29uc3RQYXRoKHRoaXMucGFyZW50W3RoaXMucHJvcGVydHldLCBwcm9wKTtcbiAgfVxufVxuXG5jbGFzcyBDb25zdFJvb3QgaW1wbGVtZW50cyBJUm9vdFJlZmVyZW5jZTxhbnk+IHtcbiAgcHJpdmF0ZSBpbm5lcjogYW55O1xuICBwdWJsaWMgdGFnID0gQ1VSUkVOVF9UQUc7XG5cbiAgY29uc3RydWN0b3IodmFsdWU6IGFueSkge1xuICAgIHRoaXMuaW5uZXIgPSB2YWx1ZTtcbiAgfVxuXG4gIHVwZGF0ZShpbm5lcjogYW55KSB7XG4gICAgdGhpcy5pbm5lciA9IGlubmVyO1xuICB9XG5cbiAgY2hhaW4oKSB7XG4gICAgcmV0dXJuIE5PT1BfREVTVFJPWTtcbiAgfVxuICBub3RpZnkoKSB7fVxuXG4gIHZhbHVlKCk6IGFueSB7XG4gICAgcmV0dXJuIHRoaXMuaW5uZXI7XG4gIH1cblxuICByZWZlcmVuY2VGcm9tUGFydHMoX3BhcnRzOiBzdHJpbmdbXSk6IElQYXRoUmVmZXJlbmNlPGFueT4ge1xuICAgIHRocm93IG5ldyBFcnJvcignTm90IGltcGxlbWVudGVkJyk7XG4gIH1cblxuICBjaGFpbkZvcihfcHJvcDogc3RyaW5nKTogSVBhdGhSZWZlcmVuY2U8YW55PiB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdOb3QgaW1wbGVtZW50ZWQnKTtcbiAgfVxuXG4gIGdldChwcm9wOiBzdHJpbmcpOiBJUGF0aFJlZmVyZW5jZTxhbnk+IHtcbiAgICByZXR1cm4gbmV3IENvbnN0UGF0aCh0aGlzLmlubmVyLCBwcm9wKTtcbiAgfVxufVxuXG5jbGFzcyBDb25zdE1ldGEgLyppbXBsZW1lbnRzIElNZXRhKi8ge1xuICBwcml2YXRlIG9iamVjdDogYW55O1xuXG4gIGNvbnN0cnVjdG9yKG9iamVjdDogYW55KSB7XG4gICAgdGhpcy5vYmplY3QgPSBvYmplY3Q7XG4gIH1cblxuICByb290KCk6IENvbnN0Um9vdCB7XG4gICAgcmV0dXJuIG5ldyBDb25zdFJvb3QodGhpcy5vYmplY3QpO1xuICB9XG59XG5cbmV4cG9ydCBjb25zdCBDTEFTU19NRVRBID0gJ2RmOGJlNGM4LTRlODktNDRlMi1hOGY5LTU1MGM4ZGFjZGNhNyc7XG5cbmNvbnN0IGhhc093blByb3BlcnR5ID0gT2JqZWN0Lmhhc093blByb3BlcnR5O1xuXG5jbGFzcyBNZXRhIGltcGxlbWVudHMgSU1ldGEsIEhhc0d1aWQge1xuICBzdGF0aWMgZm9yKG9iajogYW55KTogSU1ldGEge1xuICAgIGlmIChvYmogPT09IG51bGwgfHwgb2JqID09PSB1bmRlZmluZWQpIHJldHVybiBuZXcgTWV0YShvYmosIHt9KTtcbiAgICBpZiAoaGFzT3duUHJvcGVydHkuY2FsbChvYmosICdfbWV0YScpICYmIG9iai5fbWV0YSkgcmV0dXJuIG9iai5fbWV0YTtcbiAgICBpZiAoIU9iamVjdC5pc0V4dGVuc2libGUob2JqKSkgcmV0dXJuIG5ldyBDb25zdE1ldGEob2JqKSBhcyBhbnk7XG5cbiAgICBsZXQgTWV0YVRvVXNlOiB0eXBlb2YgTWV0YSA9IE1ldGE7XG5cbiAgICBpZiAob2JqLmNvbnN0cnVjdG9yICYmIG9iai5jb25zdHJ1Y3RvcltDTEFTU19NRVRBXSkge1xuICAgICAgbGV0IGNsYXNzTWV0YTogQ2xhc3NNZXRhID0gb2JqLmNvbnN0cnVjdG9yW0NMQVNTX01FVEFdO1xuICAgICAgTWV0YVRvVXNlID0gY2xhc3NNZXRhLkluc3RhbmNlTWV0YUNvbnN0cnVjdG9yO1xuICAgIH0gZWxzZSBpZiAob2JqW0NMQVNTX01FVEFdKSB7XG4gICAgICBNZXRhVG9Vc2UgPSBvYmpbQ0xBU1NfTUVUQV0uSW5zdGFuY2VNZXRhQ29uc3RydWN0b3I7XG4gICAgfVxuXG4gICAgcmV0dXJuIChvYmouX21ldGEgPSBuZXcgTWV0YVRvVXNlKG9iaiwge30pKTtcbiAgfVxuXG4gIHN0YXRpYyBleGlzdHMob2JqOiBhbnkpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdHlwZW9mIG9iaiA9PT0gJ29iamVjdCcgJiYgb2JqLl9tZXRhO1xuICB9XG5cbiAgc3RhdGljIG1ldGFkYXRhRm9yUHJvcGVydHkoX2tleTogc3RyaW5nKTogYW55IHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIHByaXZhdGUgb2JqZWN0OiBhbnk7XG4gIHByaXZhdGUgUm9vdFJlZmVyZW5jZUZhY3Rvcnk6IFJvb3RSZWZlcmVuY2VGYWN0b3J5PGFueT47XG4gIHByaXZhdGUgcm9vdENhY2hlOiBJUm9vdFJlZmVyZW5jZTxhbnk+O1xuICBwcml2YXRlIHJlZmVyZW5jZXM6IE9wdGlvbjxEaWN0PERpY3RTZXQ8SVBhdGhSZWZlcmVuY2U8YW55PiAmIEhhc0d1aWQ+Pj4gPSBudWxsO1xuICBwdWJsaWMgX2d1aWQ6IG51bWJlcjtcbiAgcHJvdGVjdGVkIHNsb3RzOiBPcHRpb248RGljdDxhbnk+PiA9IG51bGw7XG4gIHByb3RlY3RlZCByZWZlcmVuY2VUeXBlczogT3B0aW9uPERpY3Q8SW5uZXJSZWZlcmVuY2VGYWN0b3J5PGFueT4+PiA9IG51bGw7XG4gIHByb3RlY3RlZCBwcm9wZXJ0eU1ldGFkYXRhOiBPcHRpb248RGljdDxhbnk+PiA9IG51bGw7XG5cbiAgY29uc3RydWN0b3Iob2JqZWN0OiBhbnksIHsgUm9vdFJlZmVyZW5jZUZhY3RvcnkgfTogTWV0YU9wdGlvbnMpIHtcbiAgICB0aGlzLm9iamVjdCA9IG9iamVjdDtcbiAgICB0aGlzLlJvb3RSZWZlcmVuY2VGYWN0b3J5ID0gKFJvb3RSZWZlcmVuY2VGYWN0b3J5IHx8IFJvb3RSZWZlcmVuY2UpIGFzIFJvb3RSZWZlcmVuY2VGYWN0b3J5PFxuICAgICAgYW55XG4gICAgPjtcbiAgfVxuXG4gIGFkZFJlZmVyZW5jZShwcm9wZXJ0eTogc3RyaW5nLCByZWZlcmVuY2U6IElQYXRoUmVmZXJlbmNlPGFueT4gJiBIYXNHdWlkKSB7XG4gICAgbGV0IHJlZnMgPSAodGhpcy5yZWZlcmVuY2VzID1cbiAgICAgIHRoaXMucmVmZXJlbmNlcyB8fCBkaWN0PERpY3RTZXQ8SVBhdGhSZWZlcmVuY2U8YW55PiAmIEhhc0d1aWQ+PigpKTtcbiAgICBsZXQgc2V0ID0gKHJlZnNbcHJvcGVydHldID0gcmVmc1twcm9wZXJ0eV0gfHwgbmV3IERpY3RTZXQ8SVBhdGhSZWZlcmVuY2U8YW55PiAmIEhhc0d1aWQ+KCkpO1xuICAgIHNldC5hZGQocmVmZXJlbmNlKTtcbiAgfVxuXG4gIGFkZFJlZmVyZW5jZVR5cGVGb3IocHJvcGVydHk6IHN0cmluZywgdHlwZTogUGF0aFJlZmVyZW5jZUZhY3Rvcnk8YW55Pikge1xuICAgIHRoaXMucmVmZXJlbmNlVHlwZXMgPSB0aGlzLnJlZmVyZW5jZVR5cGVzIHx8IGRpY3Q8UGF0aFJlZmVyZW5jZUZhY3Rvcnk8YW55Pj4oKTtcbiAgICB0aGlzLnJlZmVyZW5jZVR5cGVzW3Byb3BlcnR5XSA9IHR5cGU7XG4gIH1cblxuICByZWZlcmVuY2VUeXBlRm9yKHByb3BlcnR5OiBzdHJpbmcpOiBJbm5lclJlZmVyZW5jZUZhY3Rvcnk8YW55PiB7XG4gICAgaWYgKCF0aGlzLnJlZmVyZW5jZVR5cGVzKSByZXR1cm4gUHJvcGVydHlSZWZlcmVuY2U7XG4gICAgcmV0dXJuIHRoaXMucmVmZXJlbmNlVHlwZXNbcHJvcGVydHldIHx8IFByb3BlcnR5UmVmZXJlbmNlO1xuICB9XG5cbiAgcmVtb3ZlUmVmZXJlbmNlKHByb3BlcnR5OiBzdHJpbmcsIHJlZmVyZW5jZTogSVBhdGhSZWZlcmVuY2U8YW55PiAmIEhhc0d1aWQpIHtcbiAgICBpZiAoIXRoaXMucmVmZXJlbmNlcykgcmV0dXJuO1xuICAgIGxldCBzZXQgPSB0aGlzLnJlZmVyZW5jZXNbcHJvcGVydHldO1xuICAgIHNldC5kZWxldGUocmVmZXJlbmNlKTtcbiAgfVxuXG4gIGdldFJlZmVyZW5jZVR5cGVzKCk6IERpY3Q8SW5uZXJSZWZlcmVuY2VGYWN0b3J5PGFueT4+IHtcbiAgICB0aGlzLnJlZmVyZW5jZVR5cGVzID0gdGhpcy5yZWZlcmVuY2VUeXBlcyB8fCBkaWN0PFBhdGhSZWZlcmVuY2VGYWN0b3J5PGFueT4+KCk7XG4gICAgcmV0dXJuIHRoaXMucmVmZXJlbmNlVHlwZXM7XG4gIH1cblxuICByZWZlcmVuY2VzRm9yKHByb3BlcnR5OiBzdHJpbmcpOiBPcHRpb248U2V0PElQYXRoUmVmZXJlbmNlPGFueT4+PiB7XG4gICAgaWYgKCF0aGlzLnJlZmVyZW5jZXMpIHJldHVybiBudWxsO1xuICAgIHJldHVybiB0aGlzLnJlZmVyZW5jZXNbcHJvcGVydHldO1xuICB9XG5cbiAgZ2V0U2xvdHMoKSB7XG4gICAgcmV0dXJuICh0aGlzLnNsb3RzID0gdGhpcy5zbG90cyB8fCBkaWN0KCkpO1xuICB9XG5cbiAgcm9vdCgpOiBJUm9vdFJlZmVyZW5jZTxhbnk+IHtcbiAgICByZXR1cm4gKHRoaXMucm9vdENhY2hlID0gdGhpcy5yb290Q2FjaGUgfHwgbmV3IHRoaXMuUm9vdFJlZmVyZW5jZUZhY3RvcnkodGhpcy5vYmplY3QpKTtcbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBNZXRhO1xuXG5pbnRlcmZhY2UgQ2xhc3NNZXRhIHtcbiAgSW5zdGFuY2VNZXRhQ29uc3RydWN0b3I6IHR5cGVvZiBNZXRhO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbWV0YUZvcihvYmo6IGFueSk6IElNZXRhIHtcbiAgcmV0dXJuIE1ldGEuZm9yKG9iaik7XG59XG4iXX0=

@@ -1,2 +0,2 @@

import { bump } from "@glimmer/reference";
import { bump } from '@glimmer/reference';
// import { metaFor } from './meta';

@@ -23,2 +23,2 @@ // import { intern } from '@glimmer/util';

}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JqZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvQGdsaW1tZXIvb2JqZWN0LXJlZmVyZW5jZS9saWIvb2JqZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLEFBQU8sU0FBRSxBQUFJLEFBQUUsWUFBTSxBQUFvQixBQUFDO0FBRTFDLEFBQW9DO0FBQ3BDLEFBQTBDO0FBRTFDLEFBQU0sNEJBQXNCLEFBQVcsUUFBRSxBQUFnQixVQUFFLEFBQVE7QUFDakUsQUFBNkQ7QUFFN0QsQUFBcUU7QUFFckUsQUFBTSxXQUFDLEFBQVEsQUFBQyxZQUFHLEFBQUcsQUFBQztBQUN2QixBQUFJLEFBQUUsQUFBQztBQUVQLEFBQTRCO0FBQzVCLEFBQWlFO0FBQ2pFLEFBQUk7QUFFSixBQUFtQyxBQUNyQztBQUFDO0FBRUQsQUFBTSwrQkFBeUIsQUFBWSxTQUFFLEFBQWlCO0FBQzVELEFBQUksQUFBRSxBQUFDO0FBQ1AsQUFBNkQ7QUFFN0QsQUFBcUU7QUFFckUsQUFBNEI7QUFDNUIsQUFBaUU7QUFDakUsQUFBSTtBQUVKLEFBQW1DLEFBQ3JDO0FBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBidW1wIH0gZnJvbSBcIkBnbGltbWVyL3JlZmVyZW5jZVwiO1xuXG4vLyBpbXBvcnQgeyBtZXRhRm9yIH0gZnJvbSAnLi9tZXRhJztcbi8vIGltcG9ydCB7IGludGVybiB9IGZyb20gJ0BnbGltbWVyL3V0aWwnO1xuXG5leHBvcnQgZnVuY3Rpb24gc2V0UHJvcGVydHkocGFyZW50OiBhbnksIHByb3BlcnR5OiBzdHJpbmcsIHZhbDogYW55KSB7XG4gIC8vIGxldCByb290UHJvcCA9IG1ldGFGb3IocGFyZW50KS5yb290KCkuY2hhaW5Gb3IocHJvcGVydHkpKTtcblxuICAvLyBsZXQgcmVmZXJlbmNlc1RvTm90aWZ5ID0gbWV0YUZvcihwYXJlbnQpLnJlZmVyZW5jZXNGb3IocHJvcGVydHkpKTtcblxuICBwYXJlbnRbcHJvcGVydHldID0gdmFsO1xuICBidW1wKCk7XG5cbiAgLy8gaWYgKHJlZmVyZW5jZXNUb05vdGlmeSkge1xuICAvLyAgIHJlZmVyZW5jZXNUb05vdGlmeS5mb3JFYWNoKGZ1bmN0aW9uKHJlZikgeyByZWYubm90aWZ5KCk7IH0pO1xuICAvLyB9XG5cbiAgLy8gaWYgKHJvb3RQcm9wKSByb290UHJvcC5ub3RpZnkoKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG5vdGlmeVByb3BlcnR5KF9wYXJlbnQ6IGFueSwgX3Byb3BlcnR5OiBzdHJpbmcpIHtcbiAgYnVtcCgpO1xuICAvLyBsZXQgcm9vdFByb3AgPSBtZXRhRm9yKHBhcmVudCkucm9vdCgpLmNoYWluRm9yKHByb3BlcnR5KSk7XG5cbiAgLy8gbGV0IHJlZmVyZW5jZXNUb05vdGlmeSA9IG1ldGFGb3IocGFyZW50KS5yZWZlcmVuY2VzRm9yKHByb3BlcnR5KSk7XG5cbiAgLy8gaWYgKHJlZmVyZW5jZXNUb05vdGlmeSkge1xuICAvLyAgIHJlZmVyZW5jZXNUb05vdGlmeS5mb3JFYWNoKGZ1bmN0aW9uKHJlZikgeyByZWYubm90aWZ5KCk7IH0pO1xuICAvLyB9XG5cbiAgLy8gaWYgKHJvb3RQcm9wKSByb290UHJvcC5ub3RpZnkoKTtcbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JqZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvQGdsaW1tZXIvb2JqZWN0LXJlZmVyZW5jZS9saWIvb2JqZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLEFBQU8sU0FBRSxBQUFJLEFBQUUsWUFBTSxBQUFvQixBQUFDO0FBRTFDLEFBQW9DO0FBQ3BDLEFBQTBDO0FBRTFDLEFBQU0sNEJBQXNCLEFBQVcsUUFBRSxBQUFnQixVQUFFLEFBQVE7QUFDakUsQUFBNkQ7QUFFN0QsQUFBcUU7QUFFckUsQUFBTSxXQUFDLEFBQVEsQUFBQyxZQUFHLEFBQUcsQUFBQztBQUN2QixBQUFJLEFBQUUsQUFBQztBQUVQLEFBQTRCO0FBQzVCLEFBQWlFO0FBQ2pFLEFBQUk7QUFFSixBQUFtQyxBQUNyQztBQUFDO0FBRUQsQUFBTSwrQkFBeUIsQUFBWSxTQUFFLEFBQWlCO0FBQzVELEFBQUksQUFBRSxBQUFDO0FBQ1AsQUFBNkQ7QUFFN0QsQUFBcUU7QUFFckUsQUFBNEI7QUFDNUIsQUFBaUU7QUFDakUsQUFBSTtBQUVKLEFBQW1DLEFBQ3JDO0FBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBidW1wIH0gZnJvbSAnQGdsaW1tZXIvcmVmZXJlbmNlJztcblxuLy8gaW1wb3J0IHsgbWV0YUZvciB9IGZyb20gJy4vbWV0YSc7XG4vLyBpbXBvcnQgeyBpbnRlcm4gfSBmcm9tICdAZ2xpbW1lci91dGlsJztcblxuZXhwb3J0IGZ1bmN0aW9uIHNldFByb3BlcnR5KHBhcmVudDogYW55LCBwcm9wZXJ0eTogc3RyaW5nLCB2YWw6IGFueSkge1xuICAvLyBsZXQgcm9vdFByb3AgPSBtZXRhRm9yKHBhcmVudCkucm9vdCgpLmNoYWluRm9yKHByb3BlcnR5KSk7XG5cbiAgLy8gbGV0IHJlZmVyZW5jZXNUb05vdGlmeSA9IG1ldGFGb3IocGFyZW50KS5yZWZlcmVuY2VzRm9yKHByb3BlcnR5KSk7XG5cbiAgcGFyZW50W3Byb3BlcnR5XSA9IHZhbDtcbiAgYnVtcCgpO1xuXG4gIC8vIGlmIChyZWZlcmVuY2VzVG9Ob3RpZnkpIHtcbiAgLy8gICByZWZlcmVuY2VzVG9Ob3RpZnkuZm9yRWFjaChmdW5jdGlvbihyZWYpIHsgcmVmLm5vdGlmeSgpOyB9KTtcbiAgLy8gfVxuXG4gIC8vIGlmIChyb290UHJvcCkgcm9vdFByb3Aubm90aWZ5KCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBub3RpZnlQcm9wZXJ0eShfcGFyZW50OiBhbnksIF9wcm9wZXJ0eTogc3RyaW5nKSB7XG4gIGJ1bXAoKTtcbiAgLy8gbGV0IHJvb3RQcm9wID0gbWV0YUZvcihwYXJlbnQpLnJvb3QoKS5jaGFpbkZvcihwcm9wZXJ0eSkpO1xuXG4gIC8vIGxldCByZWZlcmVuY2VzVG9Ob3RpZnkgPSBtZXRhRm9yKHBhcmVudCkucmVmZXJlbmNlc0Zvcihwcm9wZXJ0eSkpO1xuXG4gIC8vIGlmIChyZWZlcmVuY2VzVG9Ob3RpZnkpIHtcbiAgLy8gICByZWZlcmVuY2VzVG9Ob3RpZnkuZm9yRWFjaChmdW5jdGlvbihyZWYpIHsgcmVmLm5vdGlmeSgpOyB9KTtcbiAgLy8gfVxuXG4gIC8vIGlmIChyb290UHJvcCkgcm9vdFByb3Aubm90aWZ5KCk7XG59XG4iXX0=

@@ -41,2 +41,2 @@ import Meta from '../meta';

}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzY3JpcHRvcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9AZ2xpbW1lci9vYmplY3QtcmVmZXJlbmNlL2xpYi9yZWZlcmVuY2VzL2Rlc2NyaXB0b3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sQUFBSSxVQUFNLEFBQVMsQUFBQztBQUMzQixBQUFPLFNBQWtCLEFBQVcsQUFBRSxtQkFBTSxBQUFvQixBQUFDO0FBT2pFLEFBQU07QUFLSixnQkFBWSxBQUFXLFFBQUUsQUFBZ0IsVUFBRSxBQUE4QjtBQUZsRSxhQUFHLE1BQVEsQUFBVyxBQUFDO0FBRzVCLEFBQUksYUFBQyxBQUFNLFNBQUcsQUFBTSxBQUFDO0FBQ3JCLEFBQUksYUFBQyxBQUFRLFdBQUcsQUFBUSxBQUFDLEFBQzNCO0FBQUM7QUFFRCxBQUFLO0FBQUssQUFBTSxlQUFDLEFBQUksS0FBQyxBQUFNLE9BQUMsQUFBSSxLQUFDLEFBQVEsQUFBQyxBQUFDLEFBQUM7QUFBQztBQUU5QyxBQUFLO0FBQ0gsQUFBTSxlQUFDLEFBQXNCLEFBQUMsQUFDaEM7QUFBQyxBQUNGOztBQUVELEFBQU0sMkNBQXdDLEFBQWMsV0FBRSxBQUFpQjtBQUM3RSxBQUFNLFdBQUM7QUFPTCxvQkFBWSxBQUFXLFFBQUUsQUFBZ0I7QUFIakMsaUJBQVMsWUFBRyxBQUFLLEFBQUM7QUFDbkIsaUJBQUcsTUFBUSxBQUFXLEFBQUM7QUFHNUIsQUFBSSxpQkFBQyxBQUFNLFNBQUcsQUFBTSxBQUFDO0FBQ3JCLEFBQUksaUJBQUMsQUFBUSxXQUFHLEFBQVEsQUFBQztBQUN6QixBQUFJLGlCQUFDLEFBQVksZUFBRyxBQUFZLEFBQUMsQUFDbkM7QUFBQztBQUVELEFBQUs7QUFDSCxBQUFFLEFBQUMsZ0JBQUMsQ0FBQyxBQUFJLEtBQUMsQUFBUyxBQUFDLFdBQUMsQUFBQztBQUNwQixvQkFBSSxBQUFJLE9BQUcsQUFBSSxLQUFDLEFBQUcsSUFBQyxBQUFJLEtBQUMsQUFBTSxBQUFDLFFBQUMsQUFBSSxBQUFFLEFBQUM7QUFFeEMsQUFBSSxxQkFBQyxBQUFZLGFBQUMsQUFBTyxRQUFDLEFBQUc7QUFDM0Isd0JBQUksQUFBRyxNQUFHLEFBQUksS0FBQyxBQUFrQixtQkFBQyxBQUFHLEFBQUMsQUFBQztBQUN2QyxBQUFHLHdCQUFDLEFBQUssQUFBRSxBQUFDLEFBQ2Q7QUFBQyxBQUFDLEFBQUM7QUFFSCxBQUFJLHFCQUFDLEFBQVMsWUFBRyxBQUFJLEFBQUMsQUFDeEI7QUFBQztBQUVELEFBQU0sbUJBQUMsQUFBSSxLQUFDLEFBQU0sT0FBQyxBQUFJLEtBQUMsQUFBUSxBQUFDLEFBQUMsQUFDcEM7QUFBQztBQUVELEFBQUs7QUFDSCxBQUFNLG1CQUFDLEFBQXNCLEFBQUMsQUFDaEM7QUFBQyxBQUNGLEFBQUMsQUFDSjs7QUFBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBNZXRhIGZyb20gJy4uL21ldGEnO1xuaW1wb3J0IHsgUmVmZXJlbmNlLCBUYWcsIENVUlJFTlRfVEFHIH0gZnJvbSAnQGdsaW1tZXIvcmVmZXJlbmNlJztcbmltcG9ydCB7IE5vdGlmaWFibGVSZWZlcmVuY2UgfSBmcm9tICcuLi90eXBlcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSW5uZXJSZWZlcmVuY2VGYWN0b3J5PFQ+IHtcbiAgbmV3IChvYmplY3Q6IGFueSwgcHJvcGVydHk6IHN0cmluZywgb3V0ZXI6IE5vdGlmaWFibGVSZWZlcmVuY2U8YW55Pik6IFJlZmVyZW5jZTxUPjtcbn1cblxuZXhwb3J0IGNsYXNzIFByb3BlcnR5UmVmZXJlbmNlPFQ+IGltcGxlbWVudHMgUmVmZXJlbmNlPFQ+IHtcbiAgcHJpdmF0ZSBvYmplY3Q6IGFueTtcbiAgcHJpdmF0ZSBwcm9wZXJ0eTogc3RyaW5nO1xuICBwdWJsaWMgdGFnOiBUYWcgPSBDVVJSRU5UX1RBRztcblxuICBjb25zdHJ1Y3RvcihvYmplY3Q6IGFueSwgcHJvcGVydHk6IHN0cmluZywgX291dGVyOiBOb3RpZmlhYmxlUmVmZXJlbmNlPFQ+KSB7XG4gICAgdGhpcy5vYmplY3QgPSBvYmplY3Q7XG4gICAgdGhpcy5wcm9wZXJ0eSA9IHByb3BlcnR5O1xuICB9XG5cbiAgdmFsdWUoKSB7IHJldHVybiB0aGlzLm9iamVjdFt0aGlzLnByb3BlcnR5XTsgfVxuXG4gIGxhYmVsKCkge1xuICAgIHJldHVybiAnW3JlZmVyZW5jZSBQcm9wZXJ0eV0nO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBDb21wdXRlZFJlZmVyZW5jZUJsdWVwcmludDxUPihfcHJvcGVydHk6IGFueSwgZGVwZW5kZW5jaWVzOiBhbnkpOiBJbm5lclJlZmVyZW5jZUZhY3Rvcnk8VD4ge1xuICByZXR1cm4gY2xhc3MgQ29tcHV0ZWRSZWZlcmVuY2U8VD4gaW1wbGVtZW50cyBSZWZlcmVuY2U8VD4ge1xuICAgIHByaXZhdGUgb2JqZWN0OiBhbnk7XG4gICAgcHJpdmF0ZSBwcm9wZXJ0eTogc3RyaW5nO1xuICAgIHByaXZhdGUgZGVwZW5kZW5jaWVzOiBzdHJpbmdbXVtdO1xuICAgIHByaXZhdGUgaW5zdGFsbGVkID0gZmFsc2U7XG4gICAgcHVibGljIHRhZzogVGFnID0gQ1VSUkVOVF9UQUc7XG5cbiAgICBjb25zdHJ1Y3RvcihvYmplY3Q6IGFueSwgcHJvcGVydHk6IHN0cmluZykge1xuICAgICAgdGhpcy5vYmplY3QgPSBvYmplY3Q7XG4gICAgICB0aGlzLnByb3BlcnR5ID0gcHJvcGVydHk7XG4gICAgICB0aGlzLmRlcGVuZGVuY2llcyA9IGRlcGVuZGVuY2llcztcbiAgICB9XG5cbiAgICB2YWx1ZSgpOiBUIHtcbiAgICAgIGlmICghdGhpcy5pbnN0YWxsZWQpIHtcbiAgICAgICAgbGV0IHJvb3QgPSBNZXRhLmZvcih0aGlzLm9iamVjdCkucm9vdCgpO1xuXG4gICAgICAgIHRoaXMuZGVwZW5kZW5jaWVzLmZvckVhY2goZGVwID0+IHtcbiAgICAgICAgICBsZXQgcmVmID0gcm9vdC5yZWZlcmVuY2VGcm9tUGFydHMoZGVwKTtcbiAgICAgICAgICByZWYudmFsdWUoKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5pbnN0YWxsZWQgPSB0cnVlO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gdGhpcy5vYmplY3RbdGhpcy5wcm9wZXJ0eV07XG4gICAgfVxuXG4gICAgbGFiZWwoKSB7XG4gICAgICByZXR1cm4gJ1tyZWZlcmVuY2UgQ29tcHV0ZWRdJztcbiAgICB9XG4gIH07XG59XG4iXX0=
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzY3JpcHRvcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9AZ2xpbW1lci9vYmplY3QtcmVmZXJlbmNlL2xpYi9yZWZlcmVuY2VzL2Rlc2NyaXB0b3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sQUFBSSxVQUFNLEFBQVMsQUFBQztBQUMzQixBQUFPLFNBQWtCLEFBQVcsQUFBRSxtQkFBTSxBQUFvQixBQUFDO0FBT2pFLEFBQU07QUFLSixnQkFBWSxBQUFXLFFBQUUsQUFBZ0IsVUFBRSxBQUE4QjtBQUZsRSxhQUFHLE1BQVEsQUFBVyxBQUFDO0FBRzVCLEFBQUksYUFBQyxBQUFNLFNBQUcsQUFBTSxBQUFDO0FBQ3JCLEFBQUksYUFBQyxBQUFRLFdBQUcsQUFBUSxBQUFDLEFBQzNCO0FBQUM7QUFFRCxBQUFLO0FBQ0gsQUFBTSxlQUFDLEFBQUksS0FBQyxBQUFNLE9BQUMsQUFBSSxLQUFDLEFBQVEsQUFBQyxBQUFDLEFBQ3BDO0FBQUM7QUFFRCxBQUFLO0FBQ0gsQUFBTSxlQUFDLEFBQXNCLEFBQUMsQUFDaEM7QUFBQyxBQUNGOztBQUVELEFBQU0sMkNBQ0osQUFBYyxXQUNkLEFBQWlCO0FBRWpCLEFBQU0sV0FBQztBQU9MLG9CQUFZLEFBQVcsUUFBRSxBQUFnQjtBQUhqQyxpQkFBUyxZQUFHLEFBQUssQUFBQztBQUNuQixpQkFBRyxNQUFRLEFBQVcsQUFBQztBQUc1QixBQUFJLGlCQUFDLEFBQU0sU0FBRyxBQUFNLEFBQUM7QUFDckIsQUFBSSxpQkFBQyxBQUFRLFdBQUcsQUFBUSxBQUFDO0FBQ3pCLEFBQUksaUJBQUMsQUFBWSxlQUFHLEFBQVksQUFBQyxBQUNuQztBQUFDO0FBRUQsQUFBSztBQUNILEFBQUUsQUFBQyxnQkFBQyxDQUFDLEFBQUksS0FBQyxBQUFTLEFBQUMsV0FBQyxBQUFDO0FBQ3BCLG9CQUFJLEFBQUksT0FBRyxBQUFJLEtBQUMsQUFBRyxJQUFDLEFBQUksS0FBQyxBQUFNLEFBQUMsUUFBQyxBQUFJLEFBQUUsQUFBQztBQUV4QyxBQUFJLHFCQUFDLEFBQVksYUFBQyxBQUFPLFFBQUMsQUFBRztBQUMzQix3QkFBSSxBQUFHLE1BQUcsQUFBSSxLQUFDLEFBQWtCLG1CQUFDLEFBQUcsQUFBQyxBQUFDO0FBQ3ZDLEFBQUcsd0JBQUMsQUFBSyxBQUFFLEFBQUMsQUFDZDtBQUFDLEFBQUMsQUFBQztBQUVILEFBQUkscUJBQUMsQUFBUyxZQUFHLEFBQUksQUFBQyxBQUN4QjtBQUFDO0FBRUQsQUFBTSxtQkFBQyxBQUFJLEtBQUMsQUFBTSxPQUFDLEFBQUksS0FBQyxBQUFRLEFBQUMsQUFBQyxBQUNwQztBQUFDO0FBRUQsQUFBSztBQUNILEFBQU0sbUJBQUMsQUFBc0IsQUFBQyxBQUNoQztBQUFDLEFBQ0YsQUFBQyxBQUNKOztBQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IE1ldGEgZnJvbSAnLi4vbWV0YSc7XG5pbXBvcnQgeyBSZWZlcmVuY2UsIFRhZywgQ1VSUkVOVF9UQUcgfSBmcm9tICdAZ2xpbW1lci9yZWZlcmVuY2UnO1xuaW1wb3J0IHsgTm90aWZpYWJsZVJlZmVyZW5jZSB9IGZyb20gJy4uL3R5cGVzJztcblxuZXhwb3J0IGludGVyZmFjZSBJbm5lclJlZmVyZW5jZUZhY3Rvcnk8VD4ge1xuICBuZXcgKG9iamVjdDogYW55LCBwcm9wZXJ0eTogc3RyaW5nLCBvdXRlcjogTm90aWZpYWJsZVJlZmVyZW5jZTxhbnk+KTogUmVmZXJlbmNlPFQ+O1xufVxuXG5leHBvcnQgY2xhc3MgUHJvcGVydHlSZWZlcmVuY2U8VD4gaW1wbGVtZW50cyBSZWZlcmVuY2U8VD4ge1xuICBwcml2YXRlIG9iamVjdDogYW55O1xuICBwcml2YXRlIHByb3BlcnR5OiBzdHJpbmc7XG4gIHB1YmxpYyB0YWc6IFRhZyA9IENVUlJFTlRfVEFHO1xuXG4gIGNvbnN0cnVjdG9yKG9iamVjdDogYW55LCBwcm9wZXJ0eTogc3RyaW5nLCBfb3V0ZXI6IE5vdGlmaWFibGVSZWZlcmVuY2U8VD4pIHtcbiAgICB0aGlzLm9iamVjdCA9IG9iamVjdDtcbiAgICB0aGlzLnByb3BlcnR5ID0gcHJvcGVydHk7XG4gIH1cblxuICB2YWx1ZSgpIHtcbiAgICByZXR1cm4gdGhpcy5vYmplY3RbdGhpcy5wcm9wZXJ0eV07XG4gIH1cblxuICBsYWJlbCgpIHtcbiAgICByZXR1cm4gJ1tyZWZlcmVuY2UgUHJvcGVydHldJztcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gQ29tcHV0ZWRSZWZlcmVuY2VCbHVlcHJpbnQ8VD4oXG4gIF9wcm9wZXJ0eTogYW55LFxuICBkZXBlbmRlbmNpZXM6IGFueVxuKTogSW5uZXJSZWZlcmVuY2VGYWN0b3J5PFQ+IHtcbiAgcmV0dXJuIGNsYXNzIENvbXB1dGVkUmVmZXJlbmNlPFQ+IGltcGxlbWVudHMgUmVmZXJlbmNlPFQ+IHtcbiAgICBwcml2YXRlIG9iamVjdDogYW55O1xuICAgIHByaXZhdGUgcHJvcGVydHk6IHN0cmluZztcbiAgICBwcml2YXRlIGRlcGVuZGVuY2llczogc3RyaW5nW11bXTtcbiAgICBwcml2YXRlIGluc3RhbGxlZCA9IGZhbHNlO1xuICAgIHB1YmxpYyB0YWc6IFRhZyA9IENVUlJFTlRfVEFHO1xuXG4gICAgY29uc3RydWN0b3Iob2JqZWN0OiBhbnksIHByb3BlcnR5OiBzdHJpbmcpIHtcbiAgICAgIHRoaXMub2JqZWN0ID0gb2JqZWN0O1xuICAgICAgdGhpcy5wcm9wZXJ0eSA9IHByb3BlcnR5O1xuICAgICAgdGhpcy5kZXBlbmRlbmNpZXMgPSBkZXBlbmRlbmNpZXM7XG4gICAgfVxuXG4gICAgdmFsdWUoKTogVCB7XG4gICAgICBpZiAoIXRoaXMuaW5zdGFsbGVkKSB7XG4gICAgICAgIGxldCByb290ID0gTWV0YS5mb3IodGhpcy5vYmplY3QpLnJvb3QoKTtcblxuICAgICAgICB0aGlzLmRlcGVuZGVuY2llcy5mb3JFYWNoKGRlcCA9PiB7XG4gICAgICAgICAgbGV0IHJlZiA9IHJvb3QucmVmZXJlbmNlRnJvbVBhcnRzKGRlcCk7XG4gICAgICAgICAgcmVmLnZhbHVlKCk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuaW5zdGFsbGVkID0gdHJ1ZTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHRoaXMub2JqZWN0W3RoaXMucHJvcGVydHldO1xuICAgIH1cblxuICAgIGxhYmVsKCkge1xuICAgICAgcmV0dXJuICdbcmVmZXJlbmNlIENvbXB1dGVkXSc7XG4gICAgfVxuICB9O1xufVxuIl19

@@ -53,2 +53,2 @@ import { EMPTY_CACHE } from '../utils';

export { PathReference };
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF0aC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BnbGltbWVyL29iamVjdC1yZWZlcmVuY2UvbGliL3JlZmVyZW5jZXMvcGF0aC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxBQUFPLFNBQUUsQUFBVyxBQUFFLG1CQUFNLEFBQVUsQUFBQztBQUN2QyxBQUFPLFNBQUUsQUFBSSxBQUFFLFlBQU0sQUFBZSxBQUFDO0FBQ3JDLE9BQU8sQUFBSSxVQUFNLEFBQVMsQUFBQztBQUMzQixBQUFPLFNBQUUsQUFBaUIsQUFBRSx5QkFBTSxBQUFlLEFBQUM7QUFDbEQsQUFBTyxTQUFtRCxBQUFXLEFBQUUsbUJBQU0sQUFBb0IsQUFBQztBQUlsRyxBQUFNLEFBQUMsQUFBTztBQVVaLGdCQUFZLEFBQXlCLFFBQUUsQUFBZ0I7QUFQN0MsYUFBSyxRQUFRLEFBQVcsQUFBQztBQUMzQixhQUFLLFFBQXlCLEFBQUksQUFBQztBQUNuQyxhQUFNLFNBQXFDLEFBQUksQUFBQztBQUNoRCxhQUFlLGtCQUFRLEFBQVcsQUFBQztBQUNwQyxhQUFLLFFBQUcsQUFBQyxBQUFDO0FBQ1YsYUFBRyxNQUFRLEFBQVcsQUFBQztBQUc1QixBQUFJLGFBQUMsQUFBTSxTQUFHLEFBQU0sQUFBQztBQUNyQixBQUFJLGFBQUMsQUFBUSxXQUFHLEFBQVEsQUFBQyxBQUMzQjtBQUFDO0FBRUQsQUFBSztBQUNILFlBQUksRUFBRSxBQUFlLGlCQUFFLEFBQVEsVUFBRSxBQUFLLEFBQUUsVUFBRyxBQUFJLEFBQUM7QUFDaEQsWUFBSSxBQUFXLGNBQUcsQUFBSSxLQUFDLEFBQVksQUFBRSxBQUFDO0FBRXRDLEFBQUUsQUFBQyxZQUFDLEFBQVcsZ0JBQUssQUFBSSxRQUFJLEFBQVcsZ0JBQUssQUFBUyxBQUFDLFdBQUMsQUFBQztBQUN0RCxBQUFNLEFBQUMsbUJBQUMsQUFBSSxLQUFDLEFBQUssUUFBRyxBQUFTLEFBQUMsQUFBQyxBQUNsQztBQUFDO0FBRUQsQUFBRSxBQUFDLFlBQUMsQUFBZSxvQkFBSyxBQUFXLEFBQUMsYUFBQyxBQUFDO0FBQ3BDLEFBQUssb0JBQUcsQUFBSSxLQUFDLEFBQUssQUFBQyxBQUNyQjtBQUFDLEFBQUMsQUFBSSxlQUFDLEFBQUM7QUFDTixnQkFBSSxBQUFhLGdCQUFHLE9BQU8sQUFBVyxnQkFBSyxBQUFRLFdBQUcsQUFBSSxLQUFDLEFBQUcsSUFBQyxBQUFXLEFBQUMsYUFBQyxBQUFnQixpQkFBQyxBQUFRLEFBQUMsWUFBRyxBQUFpQixBQUFDO0FBQzNILEFBQUssb0JBQUcsQUFBSSxLQUFDLEFBQUssUUFBRyxJQUFJLEFBQWEsY0FBQyxBQUFXLGFBQUUsQUFBUSxVQUFFLEFBQUksQUFBQyxBQUFDLEFBQ3RFO0FBQUM7QUFFRCxBQUF5QztBQUN6QyxBQUF3RDtBQUN4RCxBQUFJO0FBRUosQUFBTSxBQUFDLGVBQUMsQUFBSSxLQUFDLEFBQUssUUFBRyxBQUFNLE1BQUMsQUFBSyxBQUFFLEFBQUMsQUFBQyxBQUN2QztBQUFDO0FBRUQsQUFBRyxRQUFDLEFBQVk7QUFDZCxZQUFJLEFBQU0sU0FBRyxBQUFJLEtBQUMsQUFBVSxBQUFFLEFBQUM7QUFDL0IsQUFBRSxBQUFDLFlBQUMsQUFBYyxRQUFJLEFBQU0sQUFBQyxRQUFDLEFBQU0sT0FBQyxBQUFNLE9BQUMsQUFBSSxBQUFDLEFBQUM7QUFDbEQsQUFBTSxBQUFDLGVBQUMsQUFBTSxPQUFDLEFBQUksQUFBQyxRQUFHLElBQUksQUFBYSxjQUFDLEFBQUksTUFBRSxBQUFJLEFBQUMsQUFBQyxBQUFDLEFBQ3hEO0FBQUM7QUFFRCxBQUFLO0FBQ0gsQUFBTSxlQUFDLEFBQW9CLEFBQUMsQUFDOUI7QUFBQztBQUVPLEFBQVU7QUFDaEIsQUFBRSxBQUFDLFlBQUMsQUFBSSxLQUFDLEFBQU0sQUFBQyxRQUFDLEFBQU0sT0FBQyxBQUFJLEtBQUMsQUFBTSxBQUFDO0FBQ3BDLEFBQU0sQUFBQyxlQUFDLEFBQUksS0FBQyxBQUFNLFNBQUcsQUFBSSxBQUFzQixBQUFDLEFBQUMsQUFDcEQ7QUFBQztBQUVPLEFBQVk7QUFDbEIsWUFBSSxBQUFNLFNBQUcsQUFBSSxLQUFDLEFBQU0sT0FBQyxBQUFLLEFBQUUsQUFBQztBQUNqQyxBQUFJLGFBQUMsQUFBZSxrQkFBRyxBQUFNLEFBQUM7QUFDOUIsQUFBTSxlQUFDLEFBQU0sQUFBQyxBQUNoQjtBQUFDLEFBQ0Y7O0FBRUQsQUFBTyxTQUFFLEFBQWEsQUFBRSxBQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRU1QVFlfQ0FDSEUgfSBmcm9tICcuLi91dGlscyc7XG5pbXBvcnQgeyBkaWN0IH0gZnJvbSAnQGdsaW1tZXIvdXRpbCc7XG5pbXBvcnQgTWV0YSBmcm9tICcuLi9tZXRhJztcbmltcG9ydCB7IFByb3BlcnR5UmVmZXJlbmNlIH0gZnJvbSAnLi9kZXNjcmlwdG9ycyc7XG5pbXBvcnQgeyBQYXRoUmVmZXJlbmNlIGFzIElQYXRoUmVmZXJlbmNlLCBSZWZlcmVuY2UsIFRhZywgQ1VSUkVOVF9UQUcgfSBmcm9tICdAZ2xpbW1lci9yZWZlcmVuY2UnO1xuaW1wb3J0IHsgRGljdCwgSGFzR3VpZCB9IGZyb20gJ0BnbGltbWVyL3V0aWwnO1xuaW1wb3J0IHsgT3B0aW9uIH0gZnJvbSBcIkBnbGltbWVyL2ludGVyZmFjZXNcIjtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgUGF0aFJlZmVyZW5jZTxUPiBpbXBsZW1lbnRzIElQYXRoUmVmZXJlbmNlPFQ+LCBIYXNHdWlkIHtcbiAgcHJpdmF0ZSBwYXJlbnQ6IElQYXRoUmVmZXJlbmNlPGFueT47XG4gIHByaXZhdGUgcHJvcGVydHk6IHN0cmluZztcbiAgcHJvdGVjdGVkIGNhY2hlOiBhbnkgPSBFTVBUWV9DQUNIRTtcbiAgcHJpdmF0ZSBpbm5lcjogT3B0aW9uPFJlZmVyZW5jZTxUPj4gPSBudWxsO1xuICBwcml2YXRlIGNoYWluczogT3B0aW9uPERpY3Q8UGF0aFJlZmVyZW5jZTxhbnk+Pj4gPSBudWxsO1xuICBwcml2YXRlIGxhc3RQYXJlbnRWYWx1ZTogYW55ID0gRU1QVFlfQ0FDSEU7XG4gIHB1YmxpYyBfZ3VpZCA9IDA7XG4gIHB1YmxpYyB0YWc6IFRhZyA9IENVUlJFTlRfVEFHO1xuXG4gIGNvbnN0cnVjdG9yKHBhcmVudDogSVBhdGhSZWZlcmVuY2U8VD4sIHByb3BlcnR5OiBzdHJpbmcpIHtcbiAgICB0aGlzLnBhcmVudCA9IHBhcmVudDtcbiAgICB0aGlzLnByb3BlcnR5ID0gcHJvcGVydHk7XG4gIH1cblxuICB2YWx1ZSgpOiBhbnkge1xuICAgIGxldCB7IGxhc3RQYXJlbnRWYWx1ZSwgcHJvcGVydHksIGlubmVyIH0gPSB0aGlzO1xuICAgIGxldCBwYXJlbnRWYWx1ZSA9IHRoaXMuX3BhcmVudFZhbHVlKCk7XG5cbiAgICBpZiAocGFyZW50VmFsdWUgPT09IG51bGwgfHwgcGFyZW50VmFsdWUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgcmV0dXJuICh0aGlzLmNhY2hlID0gdW5kZWZpbmVkKTtcbiAgICB9XG5cbiAgICBpZiAobGFzdFBhcmVudFZhbHVlID09PSBwYXJlbnRWYWx1ZSkge1xuICAgICAgaW5uZXIgPSB0aGlzLmlubmVyO1xuICAgIH0gZWxzZSB7XG4gICAgICBsZXQgUmVmZXJlbmNlVHlwZSA9IHR5cGVvZiBwYXJlbnRWYWx1ZSA9PT0gJ29iamVjdCcgPyBNZXRhLmZvcihwYXJlbnRWYWx1ZSkucmVmZXJlbmNlVHlwZUZvcihwcm9wZXJ0eSkgOiBQcm9wZXJ0eVJlZmVyZW5jZTtcbiAgICAgIGlubmVyID0gdGhpcy5pbm5lciA9IG5ldyBSZWZlcmVuY2VUeXBlKHBhcmVudFZhbHVlLCBwcm9wZXJ0eSwgdGhpcyk7XG4gICAgfVxuXG4gICAgLy8gaWYgKHR5cGVvZiBwYXJlbnRWYWx1ZSA9PT0gJ29iamVjdCcpIHtcbiAgICAvLyAgIE1ldGEuZm9yKHBhcmVudFZhbHVlKS5hZGRSZWZlcmVuY2UocHJvcGVydHksIHRoaXMpO1xuICAgIC8vIH1cblxuICAgIHJldHVybiAodGhpcy5jYWNoZSA9IGlubmVyIS52YWx1ZSgpKTtcbiAgfVxuXG4gIGdldChwcm9wOiBzdHJpbmcpOiBJUGF0aFJlZmVyZW5jZTxhbnk+IHtcbiAgICBsZXQgY2hhaW5zID0gdGhpcy5fZ2V0Q2hhaW5zKCk7XG4gICAgaWYgKHByb3AgYXMgc3RyaW5nIGluIGNoYWlucykgcmV0dXJuIGNoYWluc1twcm9wXTtcbiAgICByZXR1cm4gKGNoYWluc1twcm9wXSA9IG5ldyBQYXRoUmVmZXJlbmNlKHRoaXMsIHByb3ApKTtcbiAgfVxuXG4gIGxhYmVsKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICdbcmVmZXJlbmNlIERpcmVjdF0nO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0Q2hhaW5zKCk6IERpY3Q8UGF0aFJlZmVyZW5jZTxhbnk+PiB7XG4gICAgaWYgKHRoaXMuY2hhaW5zKSByZXR1cm4gdGhpcy5jaGFpbnM7XG4gICAgcmV0dXJuICh0aGlzLmNoYWlucyA9IGRpY3Q8UGF0aFJlZmVyZW5jZTxhbnk+PigpKTtcbiAgfVxuXG4gIHByaXZhdGUgX3BhcmVudFZhbHVlKCkge1xuICAgIGxldCBwYXJlbnQgPSB0aGlzLnBhcmVudC52YWx1ZSgpO1xuICAgIHRoaXMubGFzdFBhcmVudFZhbHVlID0gcGFyZW50O1xuICAgIHJldHVybiBwYXJlbnQ7XG4gIH1cbn1cblxuZXhwb3J0IHsgUGF0aFJlZmVyZW5jZSB9O1xuIl19
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF0aC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BnbGltbWVyL29iamVjdC1yZWZlcmVuY2UvbGliL3JlZmVyZW5jZXMvcGF0aC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxBQUFPLFNBQUUsQUFBVyxBQUFFLG1CQUFNLEFBQVUsQUFBQztBQUN2QyxBQUFPLFNBQUUsQUFBSSxBQUFFLFlBQU0sQUFBZSxBQUFDO0FBQ3JDLE9BQU8sQUFBSSxVQUFNLEFBQVMsQUFBQztBQUMzQixBQUFPLFNBQUUsQUFBaUIsQUFBRSx5QkFBTSxBQUFlLEFBQUM7QUFDbEQsQUFBTyxTQUFtRCxBQUFXLEFBQUUsbUJBQU0sQUFBb0IsQUFBQztBQUlsRyxBQUFNLEFBQUMsQUFBTztBQVVaLGdCQUFZLEFBQXlCLFFBQUUsQUFBZ0I7QUFQN0MsYUFBSyxRQUFRLEFBQVcsQUFBQztBQUMzQixhQUFLLFFBQXlCLEFBQUksQUFBQztBQUNuQyxhQUFNLFNBQXFDLEFBQUksQUFBQztBQUNoRCxhQUFlLGtCQUFRLEFBQVcsQUFBQztBQUNwQyxhQUFLLFFBQUcsQUFBQyxBQUFDO0FBQ1YsYUFBRyxNQUFRLEFBQVcsQUFBQztBQUc1QixBQUFJLGFBQUMsQUFBTSxTQUFHLEFBQU0sQUFBQztBQUNyQixBQUFJLGFBQUMsQUFBUSxXQUFHLEFBQVEsQUFBQyxBQUMzQjtBQUFDO0FBRUQsQUFBSztBQUNILFlBQUksRUFBRSxBQUFlLGlCQUFFLEFBQVEsVUFBRSxBQUFLLEFBQUUsVUFBRyxBQUFJLEFBQUM7QUFDaEQsWUFBSSxBQUFXLGNBQUcsQUFBSSxLQUFDLEFBQVksQUFBRSxBQUFDO0FBRXRDLEFBQUUsQUFBQyxZQUFDLEFBQVcsZ0JBQUssQUFBSSxRQUFJLEFBQVcsZ0JBQUssQUFBUyxBQUFDLFdBQUMsQUFBQztBQUN0RCxBQUFNLEFBQUMsbUJBQUMsQUFBSSxLQUFDLEFBQUssUUFBRyxBQUFTLEFBQUMsQUFBQyxBQUNsQztBQUFDO0FBRUQsQUFBRSxBQUFDLFlBQUMsQUFBZSxvQkFBSyxBQUFXLEFBQUMsYUFBQyxBQUFDO0FBQ3BDLEFBQUssb0JBQUcsQUFBSSxLQUFDLEFBQUssQUFBQyxBQUNyQjtBQUFDLEFBQUMsQUFBSSxlQUFDLEFBQUM7QUFDTixnQkFBSSxBQUFhLGdCQUNmLE9BQU8sQUFBVyxnQkFBSyxBQUFRLFdBQzNCLEFBQUksS0FBQyxBQUFHLElBQUMsQUFBVyxBQUFDLGFBQUMsQUFBZ0IsaUJBQUMsQUFBUSxBQUFDLFlBQ2hELEFBQWlCLEFBQUM7QUFDeEIsQUFBSyxvQkFBRyxBQUFJLEtBQUMsQUFBSyxRQUFHLElBQUksQUFBYSxjQUFDLEFBQVcsYUFBRSxBQUFRLFVBQUUsQUFBSSxBQUFDLEFBQUMsQUFDdEU7QUFBQztBQUVELEFBQXlDO0FBQ3pDLEFBQXdEO0FBQ3hELEFBQUk7QUFFSixBQUFNLEFBQUMsZUFBQyxBQUFJLEtBQUMsQUFBSyxRQUFHLEFBQU0sTUFBQyxBQUFLLEFBQUUsQUFBQyxBQUFDLEFBQ3ZDO0FBQUM7QUFFRCxBQUFHLFFBQUMsQUFBWTtBQUNkLFlBQUksQUFBTSxTQUFHLEFBQUksS0FBQyxBQUFVLEFBQUUsQUFBQztBQUMvQixBQUFFLEFBQUMsWUFBRSxBQUFlLFFBQUksQUFBTSxBQUFDLFFBQUMsQUFBTSxPQUFDLEFBQU0sT0FBQyxBQUFJLEFBQUMsQUFBQztBQUNwRCxBQUFNLEFBQUMsZUFBQyxBQUFNLE9BQUMsQUFBSSxBQUFDLFFBQUcsSUFBSSxBQUFhLGNBQUMsQUFBSSxNQUFFLEFBQUksQUFBQyxBQUFDLEFBQUMsQUFDeEQ7QUFBQztBQUVELEFBQUs7QUFDSCxBQUFNLGVBQUMsQUFBb0IsQUFBQyxBQUM5QjtBQUFDO0FBRU8sQUFBVTtBQUNoQixBQUFFLEFBQUMsWUFBQyxBQUFJLEtBQUMsQUFBTSxBQUFDLFFBQUMsQUFBTSxPQUFDLEFBQUksS0FBQyxBQUFNLEFBQUM7QUFDcEMsQUFBTSxBQUFDLGVBQUMsQUFBSSxLQUFDLEFBQU0sU0FBRyxBQUFJLEFBQXNCLEFBQUMsQUFBQyxBQUNwRDtBQUFDO0FBRU8sQUFBWTtBQUNsQixZQUFJLEFBQU0sU0FBRyxBQUFJLEtBQUMsQUFBTSxPQUFDLEFBQUssQUFBRSxBQUFDO0FBQ2pDLEFBQUksYUFBQyxBQUFlLGtCQUFHLEFBQU0sQUFBQztBQUM5QixBQUFNLGVBQUMsQUFBTSxBQUFDLEFBQ2hCO0FBQUMsQUFDRjs7QUFFRCxBQUFPLFNBQUUsQUFBYSxBQUFFLEFBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFTVBUWV9DQUNIRSB9IGZyb20gJy4uL3V0aWxzJztcbmltcG9ydCB7IGRpY3QgfSBmcm9tICdAZ2xpbW1lci91dGlsJztcbmltcG9ydCBNZXRhIGZyb20gJy4uL21ldGEnO1xuaW1wb3J0IHsgUHJvcGVydHlSZWZlcmVuY2UgfSBmcm9tICcuL2Rlc2NyaXB0b3JzJztcbmltcG9ydCB7IFBhdGhSZWZlcmVuY2UgYXMgSVBhdGhSZWZlcmVuY2UsIFJlZmVyZW5jZSwgVGFnLCBDVVJSRU5UX1RBRyB9IGZyb20gJ0BnbGltbWVyL3JlZmVyZW5jZSc7XG5pbXBvcnQgeyBEaWN0LCBIYXNHdWlkIH0gZnJvbSAnQGdsaW1tZXIvdXRpbCc7XG5pbXBvcnQgeyBPcHRpb24gfSBmcm9tICdAZ2xpbW1lci9pbnRlcmZhY2VzJztcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgUGF0aFJlZmVyZW5jZTxUPiBpbXBsZW1lbnRzIElQYXRoUmVmZXJlbmNlPFQ+LCBIYXNHdWlkIHtcbiAgcHJpdmF0ZSBwYXJlbnQ6IElQYXRoUmVmZXJlbmNlPGFueT47XG4gIHByaXZhdGUgcHJvcGVydHk6IHN0cmluZztcbiAgcHJvdGVjdGVkIGNhY2hlOiBhbnkgPSBFTVBUWV9DQUNIRTtcbiAgcHJpdmF0ZSBpbm5lcjogT3B0aW9uPFJlZmVyZW5jZTxUPj4gPSBudWxsO1xuICBwcml2YXRlIGNoYWluczogT3B0aW9uPERpY3Q8UGF0aFJlZmVyZW5jZTxhbnk+Pj4gPSBudWxsO1xuICBwcml2YXRlIGxhc3RQYXJlbnRWYWx1ZTogYW55ID0gRU1QVFlfQ0FDSEU7XG4gIHB1YmxpYyBfZ3VpZCA9IDA7XG4gIHB1YmxpYyB0YWc6IFRhZyA9IENVUlJFTlRfVEFHO1xuXG4gIGNvbnN0cnVjdG9yKHBhcmVudDogSVBhdGhSZWZlcmVuY2U8VD4sIHByb3BlcnR5OiBzdHJpbmcpIHtcbiAgICB0aGlzLnBhcmVudCA9IHBhcmVudDtcbiAgICB0aGlzLnByb3BlcnR5ID0gcHJvcGVydHk7XG4gIH1cblxuICB2YWx1ZSgpOiBhbnkge1xuICAgIGxldCB7IGxhc3RQYXJlbnRWYWx1ZSwgcHJvcGVydHksIGlubmVyIH0gPSB0aGlzO1xuICAgIGxldCBwYXJlbnRWYWx1ZSA9IHRoaXMuX3BhcmVudFZhbHVlKCk7XG5cbiAgICBpZiAocGFyZW50VmFsdWUgPT09IG51bGwgfHwgcGFyZW50VmFsdWUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgcmV0dXJuICh0aGlzLmNhY2hlID0gdW5kZWZpbmVkKTtcbiAgICB9XG5cbiAgICBpZiAobGFzdFBhcmVudFZhbHVlID09PSBwYXJlbnRWYWx1ZSkge1xuICAgICAgaW5uZXIgPSB0aGlzLmlubmVyO1xuICAgIH0gZWxzZSB7XG4gICAgICBsZXQgUmVmZXJlbmNlVHlwZSA9XG4gICAgICAgIHR5cGVvZiBwYXJlbnRWYWx1ZSA9PT0gJ29iamVjdCdcbiAgICAgICAgICA/IE1ldGEuZm9yKHBhcmVudFZhbHVlKS5yZWZlcmVuY2VUeXBlRm9yKHByb3BlcnR5KVxuICAgICAgICAgIDogUHJvcGVydHlSZWZlcmVuY2U7XG4gICAgICBpbm5lciA9IHRoaXMuaW5uZXIgPSBuZXcgUmVmZXJlbmNlVHlwZShwYXJlbnRWYWx1ZSwgcHJvcGVydHksIHRoaXMpO1xuICAgIH1cblxuICAgIC8vIGlmICh0eXBlb2YgcGFyZW50VmFsdWUgPT09ICdvYmplY3QnKSB7XG4gICAgLy8gICBNZXRhLmZvcihwYXJlbnRWYWx1ZSkuYWRkUmVmZXJlbmNlKHByb3BlcnR5LCB0aGlzKTtcbiAgICAvLyB9XG5cbiAgICByZXR1cm4gKHRoaXMuY2FjaGUgPSBpbm5lciEudmFsdWUoKSk7XG4gIH1cblxuICBnZXQocHJvcDogc3RyaW5nKTogSVBhdGhSZWZlcmVuY2U8YW55PiB7XG4gICAgbGV0IGNoYWlucyA9IHRoaXMuX2dldENoYWlucygpO1xuICAgIGlmICgocHJvcCBhcyBzdHJpbmcpIGluIGNoYWlucykgcmV0dXJuIGNoYWluc1twcm9wXTtcbiAgICByZXR1cm4gKGNoYWluc1twcm9wXSA9IG5ldyBQYXRoUmVmZXJlbmNlKHRoaXMsIHByb3ApKTtcbiAgfVxuXG4gIGxhYmVsKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICdbcmVmZXJlbmNlIERpcmVjdF0nO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0Q2hhaW5zKCk6IERpY3Q8UGF0aFJlZmVyZW5jZTxhbnk+PiB7XG4gICAgaWYgKHRoaXMuY2hhaW5zKSByZXR1cm4gdGhpcy5jaGFpbnM7XG4gICAgcmV0dXJuICh0aGlzLmNoYWlucyA9IGRpY3Q8UGF0aFJlZmVyZW5jZTxhbnk+PigpKTtcbiAgfVxuXG4gIHByaXZhdGUgX3BhcmVudFZhbHVlKCkge1xuICAgIGxldCBwYXJlbnQgPSB0aGlzLnBhcmVudC52YWx1ZSgpO1xuICAgIHRoaXMubGFzdFBhcmVudFZhbHVlID0gcGFyZW50O1xuICAgIHJldHVybiBwYXJlbnQ7XG4gIH1cbn1cblxuZXhwb3J0IHsgUGF0aFJlZmVyZW5jZSB9O1xuIl19

@@ -37,2 +37,2 @@ import { dict } from '@glimmer/util';

}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BnbGltbWVyL29iamVjdC1yZWZlcmVuY2UvbGliL3JlZmVyZW5jZXMvcm9vdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxBQUFPLFNBQWtCLEFBQUksQUFBRSxZQUFNLEFBQWUsQUFBQztBQUNyRCxBQUFPLFNBQUUsQUFBYSxBQUFFLHFCQUFNLEFBQVEsQUFBQztBQUV2QyxBQUFPLFNBQXdDLEFBQVcsYUFBRSxBQUFJLEFBQUUsWUFBTSxBQUFvQixBQUFDO0FBRTdGLEFBQU0sQUFBQyxBQUFPO0FBS1osZ0JBQVksQUFBUztBQUhiLGFBQU0sU0FBRyxBQUFJLEFBQXNCLEFBQUM7QUFDckMsYUFBRyxNQUFRLEFBQVcsQUFBQztBQUc1QixBQUFJLGFBQUMsQUFBTSxTQUFHLEFBQU0sQUFBQyxBQUN2QjtBQUFDO0FBRUQsQUFBSztBQUFRLEFBQU0sZUFBQyxBQUFJLEtBQUMsQUFBTSxBQUFDLEFBQUM7QUFBQztBQUVsQyxBQUFNLFdBQUMsQUFBUztBQUNkLEFBQUksYUFBQyxBQUFNLFNBQUcsQUFBTSxBQUFDO0FBQ3JCLEFBQUksQUFBRSxBQUFDLEFBQ1Q7QUFBQztBQUVELEFBQUcsUUFBSSxBQUFZO0FBQ2pCLFlBQUksQUFBTSxTQUFHLEFBQUksS0FBQyxBQUFNLEFBQUM7QUFDekIsQUFBRSxBQUFDLFlBQUMsQUFBYyxRQUFJLEFBQU0sQUFBQyxRQUFDLEFBQU0sT0FBQyxBQUFNLE9BQUMsQUFBSSxBQUFDLEFBQUM7QUFDbEQsQUFBTSxBQUFDLGVBQUMsQUFBTSxPQUFDLEFBQUksQUFBQyxRQUFHLElBQUksQUFBYSxjQUFDLEFBQUksTUFBRSxBQUFJLEFBQUMsQUFBQyxBQUFDLEFBQ3hEO0FBQUM7QUFFRCxBQUFRLGFBQUksQUFBWTtBQUN0QixZQUFJLEFBQU0sU0FBRyxBQUFJLEtBQUMsQUFBTSxBQUFDO0FBQ3pCLEFBQUUsQUFBQyxZQUFDLEFBQWMsUUFBSSxBQUFNLEFBQUMsUUFBQyxBQUFNLE9BQUMsQUFBTSxPQUFDLEFBQUksQUFBQyxBQUFDO0FBQ2xELEFBQU0sZUFBQyxBQUFJLEFBQUMsQUFDZDtBQUFDO0FBRUQsQUFBSSxTQUFDLEFBQWM7QUFDakIsQUFBTSxlQUFDLEFBQUksS0FBQyxBQUFrQixtQkFBQyxBQUFNLE9BQUMsQUFBSyxNQUFDLEFBQUcsQUFBQyxBQUFDLEFBQUMsQUFDcEQ7QUFBQztBQUVELEFBQWtCLHVCQUFDLEFBQWU7QUFDaEMsQUFBTSxlQUFDLEFBQUssTUFBQyxBQUFNLE9BQUMsQ0FBQyxBQUFHLEtBQUUsQUFBSSxTQUFLLEFBQUcsSUFBQyxBQUFHLElBQUMsQUFBSSxBQUEyQixPQUFFLEFBQThCLEFBQUMsQUFBQyxBQUM5RztBQUFDO0FBRUQsQUFBSztBQUNILEFBQU0sZUFBQyxBQUFrQixBQUFDLEFBQzVCO0FBQUMsQUFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9wdGlvbiwgT3BhcXVlLCBkaWN0IH0gZnJvbSAnQGdsaW1tZXIvdXRpbCc7XG5pbXBvcnQgeyBQYXRoUmVmZXJlbmNlIH0gZnJvbSAnLi9wYXRoJztcbmltcG9ydCB7IFJvb3RSZWZlcmVuY2UgYXMgSVJvb3RSZWZlcmVuY2UgfSBmcm9tICcuLi90eXBlcyc7XG5pbXBvcnQgeyBQYXRoUmVmZXJlbmNlIGFzIElQYXRoUmVmZXJlbmNlLCBUYWcsIENVUlJFTlRfVEFHLCBidW1wIH0gZnJvbSAnQGdsaW1tZXIvcmVmZXJlbmNlJztcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgUm9vdFJlZmVyZW5jZTxUPiBpbXBsZW1lbnRzIElSb290UmVmZXJlbmNlPFQ+LCBJUGF0aFJlZmVyZW5jZTxUPiB7XG4gIHByaXZhdGUgb2JqZWN0OiBUO1xuICBwcml2YXRlIGNoYWlucyA9IGRpY3Q8UGF0aFJlZmVyZW5jZTxhbnk+PigpO1xuICBwdWJsaWMgdGFnOiBUYWcgPSBDVVJSRU5UX1RBRztcblxuICBjb25zdHJ1Y3RvcihvYmplY3Q6IFQpIHtcbiAgICB0aGlzLm9iamVjdCA9IG9iamVjdDtcbiAgfVxuXG4gIHZhbHVlKCk6IFQgeyByZXR1cm4gdGhpcy5vYmplY3Q7IH1cblxuICB1cGRhdGUob2JqZWN0OiBUKSB7XG4gICAgdGhpcy5vYmplY3QgPSBvYmplY3Q7XG4gICAgYnVtcCgpO1xuICB9XG5cbiAgZ2V0PFU+KHByb3A6IHN0cmluZyk6IElQYXRoUmVmZXJlbmNlPFU+IHtcbiAgICBsZXQgY2hhaW5zID0gdGhpcy5jaGFpbnM7XG4gICAgaWYgKHByb3AgYXMgc3RyaW5nIGluIGNoYWlucykgcmV0dXJuIGNoYWluc1twcm9wXTtcbiAgICByZXR1cm4gKGNoYWluc1twcm9wXSA9IG5ldyBQYXRoUmVmZXJlbmNlKHRoaXMsIHByb3ApKTtcbiAgfVxuXG4gIGNoYWluRm9yPFU+KHByb3A6IHN0cmluZyk6IE9wdGlvbjxJUGF0aFJlZmVyZW5jZTxVPj4ge1xuICAgIGxldCBjaGFpbnMgPSB0aGlzLmNoYWlucztcbiAgICBpZiAocHJvcCBhcyBzdHJpbmcgaW4gY2hhaW5zKSByZXR1cm4gY2hhaW5zW3Byb3BdO1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgcGF0aChzdHJpbmc6IHN0cmluZyk6IElQYXRoUmVmZXJlbmNlPE9wYXF1ZT4ge1xuICAgIHJldHVybiB0aGlzLnJlZmVyZW5jZUZyb21QYXJ0cyhzdHJpbmcuc3BsaXQoJy4nKSk7XG4gIH1cblxuICByZWZlcmVuY2VGcm9tUGFydHMocGFydHM6IHN0cmluZ1tdKTogSVBhdGhSZWZlcmVuY2U8T3BhcXVlPiB7XG4gICAgcmV0dXJuIHBhcnRzLnJlZHVjZSgocmVmLCBwYXJ0KSA9PiByZWYuZ2V0KHBhcnQpIGFzIElQYXRoUmVmZXJlbmNlPE9wYXF1ZT4sIHRoaXMgYXMgSVBhdGhSZWZlcmVuY2U8T3BhcXVlPik7XG4gIH1cblxuICBsYWJlbCgpIHtcbiAgICByZXR1cm4gJ1tyZWZlcmVuY2UgUm9vdF0nO1xuICB9XG59XG4iXX0=
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BnbGltbWVyL29iamVjdC1yZWZlcmVuY2UvbGliL3JlZmVyZW5jZXMvcm9vdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxBQUFPLFNBQWtCLEFBQUksQUFBRSxZQUFNLEFBQWUsQUFBQztBQUNyRCxBQUFPLFNBQUUsQUFBYSxBQUFFLHFCQUFNLEFBQVEsQUFBQztBQUV2QyxBQUFPLFNBQXdDLEFBQVcsYUFBRSxBQUFJLEFBQUUsWUFBTSxBQUFvQixBQUFDO0FBRTdGLEFBQU0sQUFBQyxBQUFPO0FBS1osZ0JBQVksQUFBUztBQUhiLGFBQU0sU0FBRyxBQUFJLEFBQXNCLEFBQUM7QUFDckMsYUFBRyxNQUFRLEFBQVcsQUFBQztBQUc1QixBQUFJLGFBQUMsQUFBTSxTQUFHLEFBQU0sQUFBQyxBQUN2QjtBQUFDO0FBRUQsQUFBSztBQUNILEFBQU0sZUFBQyxBQUFJLEtBQUMsQUFBTSxBQUFDLEFBQ3JCO0FBQUM7QUFFRCxBQUFNLFdBQUMsQUFBUztBQUNkLEFBQUksYUFBQyxBQUFNLFNBQUcsQUFBTSxBQUFDO0FBQ3JCLEFBQUksQUFBRSxBQUFDLEFBQ1Q7QUFBQztBQUVELEFBQUcsUUFBSSxBQUFZO0FBQ2pCLFlBQUksQUFBTSxTQUFHLEFBQUksS0FBQyxBQUFNLEFBQUM7QUFDekIsQUFBRSxBQUFDLFlBQUUsQUFBZSxRQUFJLEFBQU0sQUFBQyxRQUFDLEFBQU0sT0FBQyxBQUFNLE9BQUMsQUFBSSxBQUFDLEFBQUM7QUFDcEQsQUFBTSxBQUFDLGVBQUMsQUFBTSxPQUFDLEFBQUksQUFBQyxRQUFHLElBQUksQUFBYSxjQUFDLEFBQUksTUFBRSxBQUFJLEFBQUMsQUFBQyxBQUFDLEFBQ3hEO0FBQUM7QUFFRCxBQUFRLGFBQUksQUFBWTtBQUN0QixZQUFJLEFBQU0sU0FBRyxBQUFJLEtBQUMsQUFBTSxBQUFDO0FBQ3pCLEFBQUUsQUFBQyxZQUFFLEFBQWUsUUFBSSxBQUFNLEFBQUMsUUFBQyxBQUFNLE9BQUMsQUFBTSxPQUFDLEFBQUksQUFBQyxBQUFDO0FBQ3BELEFBQU0sZUFBQyxBQUFJLEFBQUMsQUFDZDtBQUFDO0FBRUQsQUFBSSxTQUFDLEFBQWM7QUFDakIsQUFBTSxlQUFDLEFBQUksS0FBQyxBQUFrQixtQkFBQyxBQUFNLE9BQUMsQUFBSyxNQUFDLEFBQUcsQUFBQyxBQUFDLEFBQUMsQUFDcEQ7QUFBQztBQUVELEFBQWtCLHVCQUFDLEFBQWU7QUFDaEMsQUFBTSxlQUFDLEFBQUssTUFBQyxBQUFNLE9BQ2pCLENBQUMsQUFBRyxLQUFFLEFBQUksU0FBSyxBQUFHLElBQUMsQUFBRyxJQUFDLEFBQUksQUFBMkIsT0FDdEQsQUFBOEIsQUFDL0IsQUFBQyxBQUNKO0FBQUM7QUFFRCxBQUFLO0FBQ0gsQUFBTSxlQUFDLEFBQWtCLEFBQUMsQUFDNUI7QUFBQyxBQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT3B0aW9uLCBPcGFxdWUsIGRpY3QgfSBmcm9tICdAZ2xpbW1lci91dGlsJztcbmltcG9ydCB7IFBhdGhSZWZlcmVuY2UgfSBmcm9tICcuL3BhdGgnO1xuaW1wb3J0IHsgUm9vdFJlZmVyZW5jZSBhcyBJUm9vdFJlZmVyZW5jZSB9IGZyb20gJy4uL3R5cGVzJztcbmltcG9ydCB7IFBhdGhSZWZlcmVuY2UgYXMgSVBhdGhSZWZlcmVuY2UsIFRhZywgQ1VSUkVOVF9UQUcsIGJ1bXAgfSBmcm9tICdAZ2xpbW1lci9yZWZlcmVuY2UnO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBSb290UmVmZXJlbmNlPFQ+IGltcGxlbWVudHMgSVJvb3RSZWZlcmVuY2U8VD4sIElQYXRoUmVmZXJlbmNlPFQ+IHtcbiAgcHJpdmF0ZSBvYmplY3Q6IFQ7XG4gIHByaXZhdGUgY2hhaW5zID0gZGljdDxQYXRoUmVmZXJlbmNlPGFueT4+KCk7XG4gIHB1YmxpYyB0YWc6IFRhZyA9IENVUlJFTlRfVEFHO1xuXG4gIGNvbnN0cnVjdG9yKG9iamVjdDogVCkge1xuICAgIHRoaXMub2JqZWN0ID0gb2JqZWN0O1xuICB9XG5cbiAgdmFsdWUoKTogVCB7XG4gICAgcmV0dXJuIHRoaXMub2JqZWN0O1xuICB9XG5cbiAgdXBkYXRlKG9iamVjdDogVCkge1xuICAgIHRoaXMub2JqZWN0ID0gb2JqZWN0O1xuICAgIGJ1bXAoKTtcbiAgfVxuXG4gIGdldDxVPihwcm9wOiBzdHJpbmcpOiBJUGF0aFJlZmVyZW5jZTxVPiB7XG4gICAgbGV0IGNoYWlucyA9IHRoaXMuY2hhaW5zO1xuICAgIGlmICgocHJvcCBhcyBzdHJpbmcpIGluIGNoYWlucykgcmV0dXJuIGNoYWluc1twcm9wXTtcbiAgICByZXR1cm4gKGNoYWluc1twcm9wXSA9IG5ldyBQYXRoUmVmZXJlbmNlKHRoaXMsIHByb3ApKTtcbiAgfVxuXG4gIGNoYWluRm9yPFU+KHByb3A6IHN0cmluZyk6IE9wdGlvbjxJUGF0aFJlZmVyZW5jZTxVPj4ge1xuICAgIGxldCBjaGFpbnMgPSB0aGlzLmNoYWlucztcbiAgICBpZiAoKHByb3AgYXMgc3RyaW5nKSBpbiBjaGFpbnMpIHJldHVybiBjaGFpbnNbcHJvcF07XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBwYXRoKHN0cmluZzogc3RyaW5nKTogSVBhdGhSZWZlcmVuY2U8T3BhcXVlPiB7XG4gICAgcmV0dXJuIHRoaXMucmVmZXJlbmNlRnJvbVBhcnRzKHN0cmluZy5zcGxpdCgnLicpKTtcbiAgfVxuXG4gIHJlZmVyZW5jZUZyb21QYXJ0cyhwYXJ0czogc3RyaW5nW10pOiBJUGF0aFJlZmVyZW5jZTxPcGFxdWU+IHtcbiAgICByZXR1cm4gcGFydHMucmVkdWNlKFxuICAgICAgKHJlZiwgcGFydCkgPT4gcmVmLmdldChwYXJ0KSBhcyBJUGF0aFJlZmVyZW5jZTxPcGFxdWU+LFxuICAgICAgdGhpcyBhcyBJUGF0aFJlZmVyZW5jZTxPcGFxdWU+XG4gICAgKTtcbiAgfVxuXG4gIGxhYmVsKCkge1xuICAgIHJldHVybiAnW3JlZmVyZW5jZSBSb290XSc7XG4gIH1cbn1cbiJdfQ==

@@ -1,3 +0,3 @@

export { ComputedReferenceBlueprint, PropertyReference } from "./lib/references/descriptors";
export { CLASS_META, default as Meta, metaFor } from "./lib/meta";
export { ComputedReferenceBlueprint, PropertyReference } from './lib/references/descriptors';
export { CLASS_META, default as Meta, metaFor } from './lib/meta';
export { setProperty, notifyProperty } from './lib/object';

@@ -7,2 +7,2 @@ export { default as ObjectReference } from './lib/references/path';

export { ConstReference, isConst } from '@glimmer/reference';
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wYWNrYWdlcy9AZ2xpbW1lci9vYmplY3QtcmVmZXJlbmNlL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLEFBQU8sU0FBRSxBQUEwQiw0QkFBeUIsQUFBaUIsQUFBRSx5QkFBTSxBQUE4QixBQUFDO0FBQ3BILEFBQU8sU0FBRSxBQUFVLFlBQUUsQUFBTyxXQUFJLEFBQUksTUFBRSxBQUFPLEFBQUUsZUFBTSxBQUFZLEFBQUM7QUFDbEUsQUFBTyxTQUFFLEFBQVcsYUFBRSxBQUFjLEFBQUUsc0JBQU0sQUFBYyxBQUFDO0FBRTNELEFBQU8sU0FBRSxBQUFPLFdBQUksQUFBZSxBQUFFLHVCQUFNLEFBQXVCLEFBQUM7QUFDbkUsQUFBTyxTQUFFLEFBQU8sV0FBSSxBQUFrQixBQUFFLDBCQUFNLEFBQXVCLEFBQUM7QUFDdEUsQUFBTyxTQUFFLEFBQWMsZ0JBQUUsQUFBTyxBQUFFLGVBQU0sQUFBb0IsQUFBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IENvbXB1dGVkUmVmZXJlbmNlQmx1ZXByaW50LCBJbm5lclJlZmVyZW5jZUZhY3RvcnksIFByb3BlcnR5UmVmZXJlbmNlIH0gZnJvbSBcIi4vbGliL3JlZmVyZW5jZXMvZGVzY3JpcHRvcnNcIjtcbmV4cG9ydCB7IENMQVNTX01FVEEsIGRlZmF1bHQgYXMgTWV0YSwgbWV0YUZvciB9IGZyb20gXCIuL2xpYi9tZXRhXCI7XG5leHBvcnQgeyBzZXRQcm9wZXJ0eSwgbm90aWZ5UHJvcGVydHkgfSBmcm9tICcuL2xpYi9vYmplY3QnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdHlwZXMnO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBPYmplY3RSZWZlcmVuY2UgfSBmcm9tICcuL2xpYi9yZWZlcmVuY2VzL3BhdGgnO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBVcGRhdGFibGVSZWZlcmVuY2UgfSBmcm9tICcuL2xpYi9yZWZlcmVuY2VzL3Jvb3QnO1xuZXhwb3J0IHsgQ29uc3RSZWZlcmVuY2UsIGlzQ29uc3QgfSBmcm9tICdAZ2xpbW1lci9yZWZlcmVuY2UnO1xuIl19
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wYWNrYWdlcy9AZ2xpbW1lci9vYmplY3QtcmVmZXJlbmNlL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLEFBQU8sU0FDTCxBQUEwQiw0QkFFMUIsQUFBaUIsQUFDbEIseUJBQU0sQUFBOEIsQUFBQztBQUN0QyxBQUFPLFNBQUUsQUFBVSxZQUFFLEFBQU8sV0FBSSxBQUFJLE1BQUUsQUFBTyxBQUFFLGVBQU0sQUFBWSxBQUFDO0FBQ2xFLEFBQU8sU0FBRSxBQUFXLGFBQUUsQUFBYyxBQUFFLHNCQUFNLEFBQWMsQUFBQztBQUUzRCxBQUFPLFNBQUUsQUFBTyxXQUFJLEFBQWUsQUFBRSx1QkFBTSxBQUF1QixBQUFDO0FBQ25FLEFBQU8sU0FBRSxBQUFPLFdBQUksQUFBa0IsQUFBRSwwQkFBTSxBQUF1QixBQUFDO0FBQ3RFLEFBQU8sU0FBRSxBQUFjLGdCQUFFLEFBQU8sQUFBRSxlQUFNLEFBQW9CLEFBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQge1xuICBDb21wdXRlZFJlZmVyZW5jZUJsdWVwcmludCxcbiAgSW5uZXJSZWZlcmVuY2VGYWN0b3J5LFxuICBQcm9wZXJ0eVJlZmVyZW5jZSxcbn0gZnJvbSAnLi9saWIvcmVmZXJlbmNlcy9kZXNjcmlwdG9ycyc7XG5leHBvcnQgeyBDTEFTU19NRVRBLCBkZWZhdWx0IGFzIE1ldGEsIG1ldGFGb3IgfSBmcm9tICcuL2xpYi9tZXRhJztcbmV4cG9ydCB7IHNldFByb3BlcnR5LCBub3RpZnlQcm9wZXJ0eSB9IGZyb20gJy4vbGliL29iamVjdCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi90eXBlcyc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIE9iamVjdFJlZmVyZW5jZSB9IGZyb20gJy4vbGliL3JlZmVyZW5jZXMvcGF0aCc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIFVwZGF0YWJsZVJlZmVyZW5jZSB9IGZyb20gJy4vbGliL3JlZmVyZW5jZXMvcm9vdCc7XG5leHBvcnQgeyBDb25zdFJlZmVyZW5jZSwgaXNDb25zdCB9IGZyb20gJ0BnbGltbWVyL3JlZmVyZW5jZSc7XG4iXX0=

@@ -59,7 +59,7 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }

ConstRoot.prototype.referenceFromParts = function referenceFromParts(_parts) {
throw new Error("Not implemented");
throw new Error('Not implemented');
};
ConstRoot.prototype.chainFor = function chainFor(_prop) {
throw new Error("Not implemented");
throw new Error('Not implemented');
};

@@ -88,3 +88,3 @@

export var CLASS_META = "df8be4c8-4e89-44e2-a8f9-550c8dacdca7";
export var CLASS_META = 'df8be4c8-4e89-44e2-a8f9-550c8dacdca7';
var hasOwnProperty = Object.hasOwnProperty;

@@ -175,2 +175,2 @@

}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0YS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL0BnbGltbWVyL29iamVjdC1yZWZlcmVuY2UvbGliL21ldGEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxBQUFPLFNBQUUsQUFBaUIsQUFBRSx5QkFBTSxBQUEwQixBQUFDO0FBQzdELE9BQU8sQUFBYSxtQkFBTSxBQUFtQixBQUFDO0FBRzlDLEFBQU8sU0FBZ0IsQUFBTyxTQUFnQixBQUFJLEFBQUUsWUFBTSxBQUFlLEFBQUM7QUFTMUUsQUFBTyxTQUFtQyxBQUFXLEFBQUUsbUJBQU0sQUFBb0IsQUFBQztBQUlsRixJQUFNLEFBQVk7QUFBSyxBQUFPLGdDQUFJLEFBQUMsQUFBRSxBQUFDLENBRXRDO0FBRnFCOztJQU9uQjt1QkFBWSxBQUFXLFFBQUUsQUFBaUI7QUFGbkM7O2FBQUcsTUFBRyxBQUFXLEFBQUMsQUFHdkIsQUFBSTthQUFDLEFBQU0sU0FBRyxBQUFNLEFBQUMsQUFDdkIsQUFBQztBQUVELEFBQUs7O2lEQUFLLEFBQU07ZUFBQyxBQUFZLEFBQUMsQUFBQyxBQUFDO0FBQ2hDLEFBQU07O21EQUFJLEFBQUMsQ0FFWCxBQUFLOztpREFDSCxBQUFNO2VBQUMsQUFBSSxLQUFDLEFBQU0sT0FBQyxBQUFJLEtBQUMsQUFBUSxBQUFDLEFBQUMsQUFDcEMsQUFBQztBQUVELEFBQUc7OzJDQUFDLEFBQVksTUFDZCxBQUFNO2VBQUMsSUFBSSxBQUFTLFVBQUMsQUFBSSxLQUFDLEFBQU0sT0FBQyxBQUFJLEtBQUMsQUFBUSxBQUFDLFdBQUUsQUFBSSxBQUFDLEFBQUMsQUFDekQsQUFBQyxBQUNGO0FBRUQ7Ozs7O0lBSUU7dUJBQVksQUFBVTtBQUZmOzthQUFHLE1BQUcsQUFBVyxBQUFDLEFBR3ZCLEFBQUk7YUFBQyxBQUFLLFFBQUcsQUFBSyxBQUFDLEFBQ3JCLEFBQUM7QUFFRCxBQUFNOztpREFBQyxBQUFVLE9BQ2YsQUFBSTthQUFDLEFBQUssUUFBRyxBQUFLLEFBQUMsQUFDckIsQUFBQztBQUVELEFBQUs7O2lEQUFLLEFBQU07ZUFBQyxBQUFZLEFBQUMsQUFBQyxBQUFDO0FBQ2hDLEFBQU07O21EQUFJLEFBQUMsQ0FFWCxBQUFLOztpREFDSCxBQUFNO2VBQUMsQUFBSSxLQUFDLEFBQUssQUFBQyxBQUNwQixBQUFDO0FBRUQsQUFBa0I7O3lFQUFDLEFBQWdCLFFBQ2pDO2NBQU0sSUFBSSxBQUFLLE1BQUMsQUFBaUIsQUFBQyxBQUFDLEFBQ3JDLEFBQUM7QUFFRCxBQUFROztxREFBQyxBQUFhLE9BQ3BCO2NBQU0sSUFBSSxBQUFLLE1BQUMsQUFBaUIsQUFBQyxBQUFDLEFBQ3JDLEFBQUM7QUFFRCxBQUFHOzsyQ0FBQyxBQUFZLE1BQ2QsQUFBTTtlQUFDLElBQUksQUFBUyxVQUFDLEFBQUksS0FBQyxBQUFLLE9BQUUsQUFBSSxBQUFDLEFBQUMsQUFDekMsQUFBQyxBQUNGO0FBRUQ7Ozs7O2NBQWdCLEFBQW9CLEFBR2xDO3VCQUFZLEFBQVc7QUFDckIsQUFBSTs7YUFBQyxBQUFNLFNBQUcsQUFBTSxBQUFDLEFBQ3ZCLEFBQUM7QUFFRCxBQUFJOzsrQ0FDRixBQUFNO2VBQUMsSUFBSSxBQUFTLFVBQUMsQUFBSSxLQUFDLEFBQU0sQUFBQyxBQUFDLEFBQ3BDLEFBQUMsQUFDRjs7Ozs7O0FBRUQsQUFBTSxPQUFDLElBQU0sQUFBVSxhQUFHLEFBQXNDLEFBQUM7QUFFakUsSUFBTSxBQUFjLGlCQUFHLEFBQU0sT0FBQyxBQUFjLEFBQUMsQUFFN0M7O0lBbUNFO2tCQUFZLEFBQVcsQUFBRTtBQU5qQixZQU1tQixBQUFvQixBQUFlOzs7O2FBTjVDLGFBQXlELEFBQUksQUFBQyxBQUV0RTthQUFLLFFBQXNCLEFBQUksQUFBQyxBQUNoQzthQUFjLGlCQUE2QyxBQUFJLEFBQUMsQUFDaEU7YUFBZ0IsbUJBQXNCLEFBQUksQUFBQyxBQUduRCxBQUFJO2FBQUMsQUFBTSxTQUFHLEFBQU0sQUFBQyxBQUNyQixBQUFJO2FBQUMsQUFBb0IsQUFBRyx1QkFBQyxBQUFvQix3QkFBSSxBQUFhLEFBQThCLEFBQUMsQUFDbkcsQUFBQztBQXJDRCxBQUFNOztTQUFDLEFBQUcsb0JBQUMsQUFBUSxLQUNqQixBQUFFLEFBQUM7WUFBQyxBQUFHLFFBQUssQUFBSSxRQUFJLEFBQUcsUUFBSyxBQUFTLEFBQUMsV0FBQyxBQUFNLE9BQUMsSUFBSSxBQUFJLEtBQUMsQUFBRyxLQUFFLEFBQUUsQUFBQyxBQUFDLEFBQ2hFLEFBQUUsQUFBQztZQUFDLEFBQWMsZUFBQyxBQUFJLEtBQUMsQUFBRyxLQUFFLEFBQU8sQUFBQyxZQUFJLEFBQUcsSUFBQyxBQUFLLEFBQUMsT0FBQyxBQUFNLE9BQUMsQUFBRyxJQUFDLEFBQUssQUFBQyxBQUNyRSxBQUFFLEFBQUM7WUFBQyxDQUFDLEFBQU0sT0FBQyxBQUFZLGFBQUMsQUFBRyxBQUFDLEFBQUMsTUFBQyxBQUFNLE9BQUMsSUFBSSxBQUFTLFVBQUMsQUFBRyxBQUFRLEFBQUMsQUFFaEU7WUFBSSxBQUFTLFlBQWdCLEFBQUksQUFBQyxBQUVsQyxBQUFFLEFBQUM7WUFBQyxBQUFHLElBQUMsQUFBVyxlQUFJLEFBQUcsSUFBQyxBQUFXLFlBQUMsQUFBVSxBQUFDLEFBQUMsYUFBQyxBQUFDLEFBQ25EO2dCQUFJLEFBQVMsWUFBYyxBQUFHLElBQUMsQUFBVyxZQUFDLEFBQVUsQUFBQyxBQUFDLEFBQ3ZELEFBQVM7d0JBQUcsQUFBUyxVQUFDLEFBQXVCLEFBQUMsQUFDaEQsQUFBQyxBQUFDLEFBQUk7ZUFBQyxBQUFFLEFBQUMsSUFBQyxBQUFHLElBQUMsQUFBVSxBQUFDLEFBQUMsYUFBQyxBQUFDLEFBQzNCLEFBQVM7d0JBQUcsQUFBRyxJQUFDLEFBQVUsQUFBQyxZQUFDLEFBQXVCLEFBQUMsQUFDdEQsQUFBQztBQUVELEFBQU0sQUFBQztlQUFDLEFBQUcsSUFBQyxBQUFLLFFBQUcsSUFBSSxBQUFTLFVBQUMsQUFBRyxLQUFFLEFBQUUsQUFBQyxBQUFDLEFBQUMsQUFDOUMsQUFBQztBQUVELEFBQU07O1NBQUMsQUFBTSx5QkFBQyxBQUFRLEtBQ3BCLEFBQU07ZUFBQyxPQUFPLEFBQUcsUUFBSyxBQUFRLFlBQUksQUFBRyxJQUFDLEFBQUssQUFBQyxBQUM5QyxBQUFDO0FBRUQsQUFBTTs7U0FBQyxBQUFtQixtREFBQyxBQUFZLE1BQ3JDLEFBQU07ZUFBQyxBQUFJLEFBQUMsQUFDZCxBQUFDO0FBZ0JELEFBQVk7O3dEQUFDLEFBQWdCLFVBQUUsQUFBd0MsV0FDckU7WUFBSSxBQUFJLE9BQUcsQUFBSSxLQUFDLEFBQVUsYUFBRyxBQUFJLEtBQUMsQUFBVSxjQUFJLEFBQUksQUFBMEMsQUFBQyxBQUMvRjtZQUFJLEFBQUcsTUFBRyxBQUFJLEtBQUMsQUFBUSxBQUFDLFlBQUcsQUFBSSxLQUFDLEFBQVEsQUFBQyxhQUFJLElBQUksQUFBTyxBQUFpQyxBQUFDLEFBQzFGLEFBQUc7WUFBQyxBQUFHLElBQUMsQUFBUyxBQUFDLEFBQUMsQUFDckIsQUFBQztBQUVELEFBQW1COztzRUFBQyxBQUFnQixVQUFFLEFBQStCLE1BQ25FLEFBQUk7YUFBQyxBQUFjLGlCQUFHLEFBQUksS0FBQyxBQUFjLGtCQUFJLEFBQUksQUFBNkIsQUFBQyxBQUMvRSxBQUFJO2FBQUMsQUFBYyxlQUFDLEFBQVEsQUFBQyxZQUFHLEFBQUksQUFBQyxBQUN2QyxBQUFDO0FBRUQsQUFBZ0I7O2dFQUFDLEFBQWdCLFVBQy9CLEFBQUUsQUFBQztZQUFDLENBQUMsQUFBSSxLQUFDLEFBQWMsQUFBQyxnQkFBQyxBQUFNLE9BQUMsQUFBaUIsQUFBQyxBQUNuRCxBQUFNO2VBQUMsQUFBSSxLQUFDLEFBQWMsZUFBQyxBQUFRLEFBQUMsYUFBSSxBQUFpQixBQUFDLEFBQzVELEFBQUM7QUFFRCxBQUFlOzs4REFBQyxBQUFnQixVQUFFLEFBQXdDLFdBQ3hFLEFBQUUsQUFBQztZQUFDLENBQUMsQUFBSSxLQUFDLEFBQVUsQUFBQyxZQUFDLEFBQU0sQUFBQyxBQUM3QjtZQUFJLEFBQUcsTUFBRyxBQUFJLEtBQUMsQUFBVSxXQUFDLEFBQVEsQUFBQyxBQUFDLEFBQ3BDLEFBQUc7WUFBQyxBQUFNLE9BQUMsQUFBUyxBQUFDLEFBQUMsQUFDeEIsQUFBQztBQUVELEFBQWlCOztvRUFDZixBQUFJO2FBQUMsQUFBYyxpQkFBRyxBQUFJLEtBQUMsQUFBYyxrQkFBSSxBQUFJLEFBQTZCLEFBQUMsQUFDL0UsQUFBTTtlQUFDLEFBQUksS0FBQyxBQUFjLEFBQUMsQUFDN0IsQUFBQztBQUVELEFBQWE7OzBEQUFDLEFBQWdCLFVBQzVCLEFBQUUsQUFBQztZQUFDLENBQUMsQUFBSSxLQUFDLEFBQVUsQUFBQyxZQUFDLEFBQU0sT0FBQyxBQUFJLEFBQUMsQUFDbEMsQUFBTTtlQUFDLEFBQUksS0FBQyxBQUFVLFdBQUMsQUFBUSxBQUFDLEFBQUMsQUFDbkMsQUFBQztBQUVELEFBQVE7O2tEQUNOLEFBQU0sQUFBQztlQUFDLEFBQUksS0FBQyxBQUFLLFFBQUcsQUFBSSxLQUFDLEFBQUssU0FBSSxBQUFJLEFBQUUsQUFBQyxBQUFDLEFBQzdDLEFBQUM7QUFFRCxBQUFJOzswQ0FDRixBQUFNLEFBQUM7ZUFBQyxBQUFJLEtBQUMsQUFBUyxZQUFHLEFBQUksS0FBQyxBQUFTLGFBQUksSUFBSSxBQUFJLEtBQUMsQUFBb0IscUJBQUMsQUFBSSxLQUFDLEFBQU0sQUFBQyxBQUFDLEFBQUMsQUFDekYsQUFBQyxBQUNGOzs7Ozs7QUFFRCxlQUFlLEFBQUksQUFBQztBQU1wQixBQUFNLHdCQUFrQixBQUFRLEtBQzlCLEFBQU07V0FBQyxBQUFJLEtBQUMsQUFBRyxJQUFDLEFBQUcsQUFBQyxBQUFDLEFBQ3ZCLEFBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQcm9wZXJ0eVJlZmVyZW5jZSB9IGZyb20gJy4vcmVmZXJlbmNlcy9kZXNjcmlwdG9ycyc7XG5pbXBvcnQgUm9vdFJlZmVyZW5jZSBmcm9tICcuL3JlZmVyZW5jZXMvcm9vdCc7XG5pbXBvcnQgeyBNZXRhT3B0aW9ucyB9IGZyb20gJy4vdHlwZXMnO1xuXG5pbXBvcnQgeyBPcHRpb24sIERpY3QsIERpY3RTZXQsIEhhc0d1aWQsIFNldCwgZGljdCB9IGZyb20gJ0BnbGltbWVyL3V0aWwnO1xuXG5pbXBvcnQge1xuICBSb290UmVmZXJlbmNlRmFjdG9yeSxcbiAgUGF0aFJlZmVyZW5jZUZhY3RvcnksXG4gIE1ldGEgYXMgSU1ldGEsXG4gIFJvb3RSZWZlcmVuY2UgYXMgSVJvb3RSZWZlcmVuY2Vcbn0gZnJvbSAnLi90eXBlcyc7XG5cbmltcG9ydCB7IFBhdGhSZWZlcmVuY2UgYXMgSVBhdGhSZWZlcmVuY2UsIENVUlJFTlRfVEFHIH0gZnJvbSAnQGdsaW1tZXIvcmVmZXJlbmNlJztcblxuaW1wb3J0IHsgSW5uZXJSZWZlcmVuY2VGYWN0b3J5IH0gZnJvbSAnLi9yZWZlcmVuY2VzL2Rlc2NyaXB0b3JzJztcblxuY29uc3QgTk9PUF9ERVNUUk9ZID0geyBkZXN0cm95KCkge30gfTtcblxuY2xhc3MgQ29uc3RQYXRoIGltcGxlbWVudHMgSVBhdGhSZWZlcmVuY2U8YW55PiB7XG4gIHByaXZhdGUgcGFyZW50OiBhbnk7XG4gIHByaXZhdGUgcHJvcGVydHk6IHN0cmluZztcbiAgcHVibGljIHRhZyA9IENVUlJFTlRfVEFHO1xuXG4gIGNvbnN0cnVjdG9yKHBhcmVudDogYW55LCBfcHJvcGVydHk6IHN0cmluZykge1xuICAgIHRoaXMucGFyZW50ID0gcGFyZW50O1xuICB9XG5cbiAgY2hhaW4oKSB7IHJldHVybiBOT09QX0RFU1RST1k7IH1cbiAgbm90aWZ5KCkge31cblxuICB2YWx1ZSgpIHtcbiAgICByZXR1cm4gdGhpcy5wYXJlbnRbdGhpcy5wcm9wZXJ0eV07XG4gIH1cblxuICBnZXQocHJvcDogc3RyaW5nKTogSVBhdGhSZWZlcmVuY2U8YW55PiB7XG4gICAgcmV0dXJuIG5ldyBDb25zdFBhdGgodGhpcy5wYXJlbnRbdGhpcy5wcm9wZXJ0eV0sIHByb3ApO1xuICB9XG59XG5cbmNsYXNzIENvbnN0Um9vdCBpbXBsZW1lbnRzIElSb290UmVmZXJlbmNlPGFueT4ge1xuICBwcml2YXRlIGlubmVyOiBhbnk7XG4gIHB1YmxpYyB0YWcgPSBDVVJSRU5UX1RBRztcblxuICBjb25zdHJ1Y3Rvcih2YWx1ZTogYW55KSB7XG4gICAgdGhpcy5pbm5lciA9IHZhbHVlO1xuICB9XG5cbiAgdXBkYXRlKGlubmVyOiBhbnkpIHtcbiAgICB0aGlzLmlubmVyID0gaW5uZXI7XG4gIH1cblxuICBjaGFpbigpIHsgcmV0dXJuIE5PT1BfREVTVFJPWTsgfVxuICBub3RpZnkoKSB7fVxuXG4gIHZhbHVlKCk6IGFueSB7XG4gICAgcmV0dXJuIHRoaXMuaW5uZXI7XG4gIH1cblxuICByZWZlcmVuY2VGcm9tUGFydHMoX3BhcnRzOiBzdHJpbmdbXSk6IElQYXRoUmVmZXJlbmNlPGFueT4ge1xuICAgIHRocm93IG5ldyBFcnJvcihcIk5vdCBpbXBsZW1lbnRlZFwiKTtcbiAgfVxuXG4gIGNoYWluRm9yKF9wcm9wOiBzdHJpbmcpOiBJUGF0aFJlZmVyZW5jZTxhbnk+IHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXCJOb3QgaW1wbGVtZW50ZWRcIik7XG4gIH1cblxuICBnZXQocHJvcDogc3RyaW5nKTogSVBhdGhSZWZlcmVuY2U8YW55PiB7XG4gICAgcmV0dXJuIG5ldyBDb25zdFBhdGgodGhpcy5pbm5lciwgcHJvcCk7XG4gIH1cbn1cblxuY2xhc3MgQ29uc3RNZXRhIC8qaW1wbGVtZW50cyBJTWV0YSovIHtcbiAgcHJpdmF0ZSBvYmplY3Q6IGFueTtcblxuICBjb25zdHJ1Y3RvcihvYmplY3Q6IGFueSkge1xuICAgIHRoaXMub2JqZWN0ID0gb2JqZWN0O1xuICB9XG5cbiAgcm9vdCgpOiBDb25zdFJvb3Qge1xuICAgIHJldHVybiBuZXcgQ29uc3RSb290KHRoaXMub2JqZWN0KTtcbiAgfVxufVxuXG5leHBvcnQgY29uc3QgQ0xBU1NfTUVUQSA9IFwiZGY4YmU0YzgtNGU4OS00NGUyLWE4ZjktNTUwYzhkYWNkY2E3XCI7XG5cbmNvbnN0IGhhc093blByb3BlcnR5ID0gT2JqZWN0Lmhhc093blByb3BlcnR5O1xuXG5jbGFzcyBNZXRhIGltcGxlbWVudHMgSU1ldGEsIEhhc0d1aWQge1xuICBzdGF0aWMgZm9yKG9iajogYW55KTogSU1ldGEge1xuICAgIGlmIChvYmogPT09IG51bGwgfHwgb2JqID09PSB1bmRlZmluZWQpIHJldHVybiBuZXcgTWV0YShvYmosIHt9KTtcbiAgICBpZiAoaGFzT3duUHJvcGVydHkuY2FsbChvYmosICdfbWV0YScpICYmIG9iai5fbWV0YSkgcmV0dXJuIG9iai5fbWV0YTtcbiAgICBpZiAoIU9iamVjdC5pc0V4dGVuc2libGUob2JqKSkgcmV0dXJuIG5ldyBDb25zdE1ldGEob2JqKSBhcyBhbnk7XG5cbiAgICBsZXQgTWV0YVRvVXNlOiB0eXBlb2YgTWV0YSA9IE1ldGE7XG5cbiAgICBpZiAob2JqLmNvbnN0cnVjdG9yICYmIG9iai5jb25zdHJ1Y3RvcltDTEFTU19NRVRBXSkge1xuICAgICAgbGV0IGNsYXNzTWV0YTogQ2xhc3NNZXRhID0gb2JqLmNvbnN0cnVjdG9yW0NMQVNTX01FVEFdO1xuICAgICAgTWV0YVRvVXNlID0gY2xhc3NNZXRhLkluc3RhbmNlTWV0YUNvbnN0cnVjdG9yO1xuICAgIH0gZWxzZSBpZiAob2JqW0NMQVNTX01FVEFdKSB7XG4gICAgICBNZXRhVG9Vc2UgPSBvYmpbQ0xBU1NfTUVUQV0uSW5zdGFuY2VNZXRhQ29uc3RydWN0b3I7XG4gICAgfVxuXG4gICAgcmV0dXJuIChvYmouX21ldGEgPSBuZXcgTWV0YVRvVXNlKG9iaiwge30pKTtcbiAgfVxuXG4gIHN0YXRpYyBleGlzdHMob2JqOiBhbnkpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdHlwZW9mIG9iaiA9PT0gJ29iamVjdCcgJiYgb2JqLl9tZXRhO1xuICB9XG5cbiAgc3RhdGljIG1ldGFkYXRhRm9yUHJvcGVydHkoX2tleTogc3RyaW5nKTogYW55IHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIHByaXZhdGUgb2JqZWN0OiBhbnk7XG4gIHByaXZhdGUgUm9vdFJlZmVyZW5jZUZhY3Rvcnk6IFJvb3RSZWZlcmVuY2VGYWN0b3J5PGFueT47XG4gIHByaXZhdGUgcm9vdENhY2hlOiBJUm9vdFJlZmVyZW5jZTxhbnk+O1xuICBwcml2YXRlIHJlZmVyZW5jZXM6IE9wdGlvbjxEaWN0PERpY3RTZXQ8SVBhdGhSZWZlcmVuY2U8YW55PiAmIEhhc0d1aWQ+Pj4gPSBudWxsO1xuICBwdWJsaWMgX2d1aWQ6IG51bWJlcjtcbiAgcHJvdGVjdGVkIHNsb3RzOiBPcHRpb248RGljdDxhbnk+PiA9IG51bGw7XG4gIHByb3RlY3RlZCByZWZlcmVuY2VUeXBlczogT3B0aW9uPERpY3Q8SW5uZXJSZWZlcmVuY2VGYWN0b3J5PGFueT4+PiA9IG51bGw7XG4gIHByb3RlY3RlZCBwcm9wZXJ0eU1ldGFkYXRhOiBPcHRpb248RGljdDxhbnk+PiA9IG51bGw7XG5cbiAgY29uc3RydWN0b3Iob2JqZWN0OiBhbnksIHsgUm9vdFJlZmVyZW5jZUZhY3RvcnkgfTogTWV0YU9wdGlvbnMpIHtcbiAgICB0aGlzLm9iamVjdCA9IG9iamVjdDtcbiAgICB0aGlzLlJvb3RSZWZlcmVuY2VGYWN0b3J5ID0gKFJvb3RSZWZlcmVuY2VGYWN0b3J5IHx8IFJvb3RSZWZlcmVuY2UpIGFzIFJvb3RSZWZlcmVuY2VGYWN0b3J5PGFueT47XG4gIH1cblxuICBhZGRSZWZlcmVuY2UocHJvcGVydHk6IHN0cmluZywgcmVmZXJlbmNlOiBJUGF0aFJlZmVyZW5jZTxhbnk+ICYgSGFzR3VpZCkge1xuICAgIGxldCByZWZzID0gdGhpcy5yZWZlcmVuY2VzID0gdGhpcy5yZWZlcmVuY2VzIHx8IGRpY3Q8RGljdFNldDxJUGF0aFJlZmVyZW5jZTxhbnk+ICYgSGFzR3VpZD4+KCk7XG4gICAgbGV0IHNldCA9IHJlZnNbcHJvcGVydHldID0gcmVmc1twcm9wZXJ0eV0gfHwgbmV3IERpY3RTZXQ8SVBhdGhSZWZlcmVuY2U8YW55PiAmIEhhc0d1aWQ+KCk7XG4gICAgc2V0LmFkZChyZWZlcmVuY2UpO1xuICB9XG5cbiAgYWRkUmVmZXJlbmNlVHlwZUZvcihwcm9wZXJ0eTogc3RyaW5nLCB0eXBlOiBQYXRoUmVmZXJlbmNlRmFjdG9yeTxhbnk+KSB7XG4gICAgdGhpcy5yZWZlcmVuY2VUeXBlcyA9IHRoaXMucmVmZXJlbmNlVHlwZXMgfHwgZGljdDxQYXRoUmVmZXJlbmNlRmFjdG9yeTxhbnk+PigpO1xuICAgIHRoaXMucmVmZXJlbmNlVHlwZXNbcHJvcGVydHldID0gdHlwZTtcbiAgfVxuXG4gIHJlZmVyZW5jZVR5cGVGb3IocHJvcGVydHk6IHN0cmluZyk6IElubmVyUmVmZXJlbmNlRmFjdG9yeTxhbnk+IHtcbiAgICBpZiAoIXRoaXMucmVmZXJlbmNlVHlwZXMpIHJldHVybiBQcm9wZXJ0eVJlZmVyZW5jZTtcbiAgICByZXR1cm4gdGhpcy5yZWZlcmVuY2VUeXBlc1twcm9wZXJ0eV0gfHwgUHJvcGVydHlSZWZlcmVuY2U7XG4gIH1cblxuICByZW1vdmVSZWZlcmVuY2UocHJvcGVydHk6IHN0cmluZywgcmVmZXJlbmNlOiBJUGF0aFJlZmVyZW5jZTxhbnk+ICYgSGFzR3VpZCkge1xuICAgIGlmICghdGhpcy5yZWZlcmVuY2VzKSByZXR1cm47XG4gICAgbGV0IHNldCA9IHRoaXMucmVmZXJlbmNlc1twcm9wZXJ0eV07XG4gICAgc2V0LmRlbGV0ZShyZWZlcmVuY2UpO1xuICB9XG5cbiAgZ2V0UmVmZXJlbmNlVHlwZXMoKTogRGljdDxJbm5lclJlZmVyZW5jZUZhY3Rvcnk8YW55Pj4ge1xuICAgIHRoaXMucmVmZXJlbmNlVHlwZXMgPSB0aGlzLnJlZmVyZW5jZVR5cGVzIHx8IGRpY3Q8UGF0aFJlZmVyZW5jZUZhY3Rvcnk8YW55Pj4oKTtcbiAgICByZXR1cm4gdGhpcy5yZWZlcmVuY2VUeXBlcztcbiAgfVxuXG4gIHJlZmVyZW5jZXNGb3IocHJvcGVydHk6IHN0cmluZyk6IE9wdGlvbjxTZXQ8SVBhdGhSZWZlcmVuY2U8YW55Pj4+IHtcbiAgICBpZiAoIXRoaXMucmVmZXJlbmNlcykgcmV0dXJuIG51bGw7XG4gICAgcmV0dXJuIHRoaXMucmVmZXJlbmNlc1twcm9wZXJ0eV07XG4gIH1cblxuICBnZXRTbG90cygpIHtcbiAgICByZXR1cm4gKHRoaXMuc2xvdHMgPSB0aGlzLnNsb3RzIHx8IGRpY3QoKSk7XG4gIH1cblxuICByb290KCk6IElSb290UmVmZXJlbmNlPGFueT4ge1xuICAgIHJldHVybiAodGhpcy5yb290Q2FjaGUgPSB0aGlzLnJvb3RDYWNoZSB8fCBuZXcgdGhpcy5Sb290UmVmZXJlbmNlRmFjdG9yeSh0aGlzLm9iamVjdCkpO1xuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IE1ldGE7XG5cbmludGVyZmFjZSBDbGFzc01ldGEge1xuICBJbnN0YW5jZU1ldGFDb25zdHJ1Y3RvcjogdHlwZW9mIE1ldGE7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBtZXRhRm9yKG9iajogYW55KTogSU1ldGEge1xuICByZXR1cm4gTWV0YS5mb3Iob2JqKTtcbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0YS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL0BnbGltbWVyL29iamVjdC1yZWZlcmVuY2UvbGliL21ldGEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxBQUFPLFNBQUUsQUFBaUIsQUFBRSx5QkFBTSxBQUEwQixBQUFDO0FBQzdELE9BQU8sQUFBYSxtQkFBTSxBQUFtQixBQUFDO0FBRzlDLEFBQU8sU0FBZ0IsQUFBTyxTQUFnQixBQUFJLEFBQUUsWUFBTSxBQUFlLEFBQUM7QUFTMUUsQUFBTyxTQUFtQyxBQUFXLEFBQUUsbUJBQU0sQUFBb0IsQUFBQztBQUlsRixJQUFNLEFBQVk7QUFBSyxBQUFPLGdDQUFJLEFBQUMsQUFBRSxBQUFDLENBRXRDO0FBRnFCOztJQU9uQjt1QkFBWSxBQUFXLFFBQUUsQUFBaUI7QUFGbkM7O2FBQUcsTUFBRyxBQUFXLEFBQUMsQUFHdkIsQUFBSTthQUFDLEFBQU0sU0FBRyxBQUFNLEFBQUMsQUFDdkIsQUFBQztBQUVELEFBQUs7O2lEQUNILEFBQU07ZUFBQyxBQUFZLEFBQUMsQUFDdEIsQUFBQztBQUNELEFBQU07O21EQUFJLEFBQUMsQ0FFWCxBQUFLOztpREFDSCxBQUFNO2VBQUMsQUFBSSxLQUFDLEFBQU0sT0FBQyxBQUFJLEtBQUMsQUFBUSxBQUFDLEFBQUMsQUFDcEMsQUFBQztBQUVELEFBQUc7OzJDQUFDLEFBQVksTUFDZCxBQUFNO2VBQUMsSUFBSSxBQUFTLFVBQUMsQUFBSSxLQUFDLEFBQU0sT0FBQyxBQUFJLEtBQUMsQUFBUSxBQUFDLFdBQUUsQUFBSSxBQUFDLEFBQUMsQUFDekQsQUFBQyxBQUNGO0FBRUQ7Ozs7O0lBSUU7dUJBQVksQUFBVTtBQUZmOzthQUFHLE1BQUcsQUFBVyxBQUFDLEFBR3ZCLEFBQUk7YUFBQyxBQUFLLFFBQUcsQUFBSyxBQUFDLEFBQ3JCLEFBQUM7QUFFRCxBQUFNOztpREFBQyxBQUFVLE9BQ2YsQUFBSTthQUFDLEFBQUss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RztZQUFDLEFBQU0sT0FBQyxBQUFTLEFBQUMsQUFBQyxBQUN4QixBQUFDO0FBRUQsQUFBaUI7O29FQUNmLEFBQUk7YUFBQyxBQUFjLGlCQUFHLEFBQUksS0FBQyxBQUFjLGtCQUFJLEFBQUksQUFBNkIsQUFBQyxBQUMvRSxBQUFNO2VBQUMsQUFBSSxLQUFDLEFBQWMsQUFBQyxBQUM3QixBQUFDO0FBRUQsQUFBYTs7MERBQUMsQUFBZ0IsVUFDNUIsQUFBRSxBQUFDO1lBQUMsQ0FBQyxBQUFJLEtBQUMsQUFBVSxBQUFDLFlBQUMsQUFBTSxPQUFDLEFBQUksQUFBQyxBQUNsQyxBQUFNO2VBQUMsQUFBSSxLQUFDLEFBQVUsV0FBQyxBQUFRLEFBQUMsQUFBQyxBQUNuQyxBQUFDO0FBRUQsQUFBUTs7a0RBQ04sQUFBTSxBQUFDO2VBQUMsQUFBSSxLQUFDLEFBQUssUUFBRyxBQUFJLEtBQUMsQUFBSyxTQUFJLEFBQUksQUFBRSxBQUFDLEFBQUMsQUFDN0MsQUFBQztBQUVELEFBQUk7OzBDQUNGLEFBQU0sQUFBQztlQUFDLEFBQUksS0FBQyxBQUFTLFlBQUcsQUFBSSxLQUFDLEFBQVMsYUFBSSxJQUFJLEFBQUksS0FBQyxBQUFvQixxQkFBQyxBQUFJLEtBQUMsQUFBTSxBQUFDLEFBQUMsQUFBQyxBQUN6RixBQUFDLEFBQ0Y7Ozs7OztBQUVELGVBQWUsQUFBSSxBQUFDO0FBTXBCLEFBQU0sd0JBQWtCLEFBQVEsS0FDOUIsQUFBTTtXQUFDLEFBQUksS0FBQyxBQUFHLElBQUMsQUFBRyxBQUFDLEFBQUMsQUFDdkIsQUFBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFByb3BlcnR5UmVmZXJlbmNlIH0gZnJvbSAnLi9yZWZlcmVuY2VzL2Rlc2NyaXB0b3JzJztcbmltcG9ydCBSb290UmVmZXJlbmNlIGZyb20gJy4vcmVmZXJlbmNlcy9yb290JztcbmltcG9ydCB7IE1ldGFPcHRpb25zIH0gZnJvbSAnLi90eXBlcyc7XG5cbmltcG9ydCB7IE9wdGlvbiwgRGljdCwgRGljdFNldCwgSGFzR3VpZCwgU2V0LCBkaWN0IH0gZnJvbSAnQGdsaW1tZXIvdXRpbCc7XG5cbmltcG9ydCB7XG4gIFJvb3RSZWZlcmVuY2VGYWN0b3J5LFxuICBQYXRoUmVmZXJlbmNlRmFjdG9yeSxcbiAgTWV0YSBhcyBJTWV0YSxcbiAgUm9vdFJlZmVyZW5jZSBhcyBJUm9vdFJlZmVyZW5jZSxcbn0gZnJvbSAnLi90eXBlcyc7XG5cbmltcG9ydCB7IFBhdGhSZWZlcmVuY2UgYXMgSVBhdGhSZWZlcmVuY2UsIENVUlJFTlRfVEFHIH0gZnJvbSAnQGdsaW1tZXIvcmVmZXJlbmNlJztcblxuaW1wb3J0IHsgSW5uZXJSZWZlcmVuY2VGYWN0b3J5IH0gZnJvbSAnLi9yZWZlcmVuY2VzL2Rlc2NyaXB0b3JzJztcblxuY29uc3QgTk9PUF9ERVNUUk9ZID0geyBkZXN0cm95KCkge30gfTtcblxuY2xhc3MgQ29uc3RQYXRoIGltcGxlbWVudHMgSVBhdGhSZWZlcmVuY2U8YW55PiB7XG4gIHByaXZhdGUgcGFyZW50OiBhbnk7XG4gIHByaXZhdGUgcHJvcGVydHk6IHN0cmluZztcbiAgcHVibGljIHRhZyA9IENVUlJFTlRfVEFHO1xuXG4gIGNvbnN0cnVjdG9yKHBhcmVudDogYW55LCBfcHJvcGVydHk6IHN0cmluZykge1xuICAgIHRoaXMucGFyZW50ID0gcGFyZW50O1xuICB9XG5cbiAgY2hhaW4oKSB7XG4gICAgcmV0dXJuIE5PT1BfREVTVFJPWTtcbiAgfVxuICBub3RpZnkoKSB7fVxuXG4gIHZhbHVlKCkge1xuICAgIHJldHVybiB0aGlzLnBhcmVudFt0aGlzLnByb3BlcnR5XTtcbiAgfVxuXG4gIGdldChwcm9wOiBzdHJpbmcpOiBJUGF0aFJlZmVyZW5jZTxhbnk+IHtcbiAgICByZXR1cm4gbmV3IENvbnN0UGF0aCh0aGlzLnBhcmVudFt0aGlzLnByb3BlcnR5XSwgcHJvcCk7XG4gIH1cbn1cblxuY2xhc3MgQ29uc3RSb290IGltcGxlbWVudHMgSVJvb3RSZWZlcmVuY2U8YW55PiB7XG4gIHByaXZhdGUgaW5uZXI6IGFueTtcbiAgcHVibGljIHRhZyA9IENVUlJFTlRfVEFHO1xuXG4gIGNvbnN0cnVjdG9yKHZhbHVlOiBhbnkpIHtcbiAgICB0aGlzLmlubmVyID0gdmFsdWU7XG4gIH1cblxuICB1cGRhdGUoaW5uZXI6IGFueSkge1xuICAgIHRoaXMuaW5uZXIgPSBpbm5lcjtcbiAgfVxuXG4gIGNoYWluKCkge1xuICAgIHJldHVybiBOT09QX0RFU1RST1k7XG4gIH1cbiAgbm90aWZ5KCkge31cblxuICB2YWx1ZSgpOiBhbnkge1xuICAgIHJldHVybiB0aGlzLmlubmVyO1xuICB9XG5cbiAgcmVmZXJlbmNlRnJvbVBhcnRzKF9wYXJ0czogc3RyaW5nW10pOiBJUGF0aFJlZmVyZW5jZTxhbnk+IHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ05vdCBpbXBsZW1lbnRlZCcpO1xuICB9XG5cbiAgY2hhaW5Gb3IoX3Byb3A6IHN0cmluZyk6IElQYXRoUmVmZXJlbmNlPGFueT4ge1xuICAgIHRocm93IG5ldyBFcnJvcignTm90IGltcGxlbWVudGVkJyk7XG4gIH1cblxuICBnZXQocHJvcDogc3RyaW5nKTogSVBhdGhSZWZlcmVuY2U8YW55PiB7XG4gICAgcmV0dXJuIG5ldyBDb25zdFBhdGgodGhpcy5pbm5lciwgcHJvcCk7XG4gIH1cbn1cblxuY2xhc3MgQ29uc3RNZXRhIC8qaW1wbGVtZW50cyBJTWV0YSovIHtcbiAgcHJpdmF0ZSBvYmplY3Q6IGFueTtcblxuICBjb25zdHJ1Y3RvcihvYmplY3Q6IGFueSkge1xuICAgIHRoaXMub2JqZWN0ID0gb2JqZWN0O1xuICB9XG5cbiAgcm9vdCgpOiBDb25zdFJvb3Qge1xuICAgIHJldHVybiBuZXcgQ29uc3RSb290KHRoaXMub2JqZWN0KTtcbiAgfVxufVxuXG5leHBvcnQgY29uc3QgQ0xBU1NfTUVUQSA9ICdkZjhiZTRjOC00ZTg5LTQ0ZTItYThmOS01NTBjOGRhY2RjYTcnO1xuXG5jb25zdCBoYXNPd25Qcm9wZXJ0eSA9IE9iamVjdC5oYXNPd25Qcm9wZXJ0eTtcblxuY2xhc3MgTWV0YSBpbXBsZW1lbnRzIElNZXRhLCBIYXNHdWlkIHtcbiAgc3RhdGljIGZvcihvYmo6IGFueSk6IElNZXRhIHtcbiAgICBpZiAob2JqID09PSBudWxsIHx8IG9iaiA9PT0gdW5kZWZpbmVkKSByZXR1cm4gbmV3IE1ldGEob2JqLCB7fSk7XG4gICAgaWYgKGhhc093blByb3BlcnR5LmNhbGwob2JqLCAnX21ldGEnKSAmJiBvYmouX21ldGEpIHJldHVybiBvYmouX21ldGE7XG4gICAgaWYgKCFPYmplY3QuaXNFeHRlbnNpYmxlKG9iaikpIHJldHVybiBuZXcgQ29uc3RNZXRhKG9iaikgYXMgYW55O1xuXG4gICAgbGV0IE1ldGFUb1VzZTogdHlwZW9mIE1ldGEgPSBNZXRhO1xuXG4gICAgaWYgKG9iai5jb25zdHJ1Y3RvciAmJiBvYmouY29uc3RydWN0b3JbQ0xBU1NfTUVUQV0pIHtcbiAgICAgIGxldCBjbGFzc01ldGE6IENsYXNzTWV0YSA9IG9iai5jb25zdHJ1Y3RvcltDTEFTU19NRVRBXTtcbiAgICAgIE1ldGFUb1VzZSA9IGNsYXNzTWV0YS5JbnN0YW5jZU1ldGFDb25zdHJ1Y3RvcjtcbiAgICB9IGVsc2UgaWYgKG9ialtDTEFTU19NRVRBXSkge1xuICAgICAgTWV0YVRvVXNlID0gb2JqW0NMQVNTX01FVEFdLkluc3RhbmNlTWV0YUNvbnN0cnVjdG9yO1xuICAgIH1cblxuICAgIHJldHVybiAob2JqLl9tZXRhID0gbmV3IE1ldGFUb1VzZShvYmosIHt9KSk7XG4gIH1cblxuICBzdGF0aWMgZXhpc3RzKG9iajogYW55KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHR5cGVvZiBvYmogPT09ICdvYmplY3QnICYmIG9iai5fbWV0YTtcbiAgfVxuXG4gIHN0YXRpYyBtZXRhZGF0YUZvclByb3BlcnR5KF9rZXk6IHN0cmluZyk6IGFueSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBwcml2YXRlIG9iamVjdDogYW55O1xuICBwcml2YXRlIFJvb3RSZWZlcmVuY2VGYWN0b3J5OiBSb290UmVmZXJlbmNlRmFjdG9yeTxhbnk+O1xuICBwcml2YXRlIHJvb3RDYWNoZTogSVJvb3RSZWZlcmVuY2U8YW55PjtcbiAgcHJpdmF0ZSByZWZlcmVuY2VzOiBPcHRpb248RGljdDxEaWN0U2V0PElQYXRoUmVmZXJlbmNlPGFueT4gJiBIYXNHdWlkPj4+ID0gbnVsbDtcbiAgcHVibGljIF9ndWlkOiBudW1iZXI7XG4gIHByb3RlY3RlZCBzbG90czogT3B0aW9uPERpY3Q8YW55Pj4gPSBudWxsO1xuICBwcm90ZWN0ZWQgcmVmZXJlbmNlVHlwZXM6IE9wdGlvbjxEaWN0PElubmVyUmVmZXJlbmNlRmFjdG9yeTxhbnk+Pj4gPSBudWxsO1xuICBwcm90ZWN0ZWQgcHJvcGVydHlNZXRhZGF0YTogT3B0aW9uPERpY3Q8YW55Pj4gPSBudWxsO1xuXG4gIGNvbnN0cnVjdG9yKG9iamVjdDogYW55LCB7IFJvb3RSZWZlcmVuY2VGYWN0b3J5IH06IE1ldGFPcHRpb25zKSB7XG4gICAgdGhpcy5vYmplY3QgPSBvYmplY3Q7XG4gICAgdGhpcy5Sb290UmVmZXJlbmNlRmFjdG9yeSA9IChSb290UmVmZXJlbmNlRmFjdG9yeSB8fCBSb290UmVmZXJlbmNlKSBhcyBSb290UmVmZXJlbmNlRmFjdG9yeTxcbiAgICAgIGFueVxuICAgID47XG4gIH1cblxuICBhZGRSZWZlcmVuY2UocHJvcGVydHk6IHN0cmluZywgcmVmZXJlbmNlOiBJUGF0aFJlZmVyZW5jZTxhbnk+ICYgSGFzR3VpZCkge1xuICAgIGxldCByZWZzID0gKHRoaXMucmVmZXJlbmNlcyA9XG4gICAgICB0aGlzLnJlZmVyZW5jZXMgfHwgZGljdDxEaWN0U2V0PElQYXRoUmVmZXJlbmNlPGFueT4gJiBIYXNHdWlkPj4oKSk7XG4gICAgbGV0IHNldCA9IChyZWZzW3Byb3BlcnR5XSA9IHJlZnNbcHJvcGVydHldIHx8IG5ldyBEaWN0U2V0PElQYXRoUmVmZXJlbmNlPGFueT4gJiBIYXNHdWlkPigpKTtcbiAgICBzZXQuYWRkKHJlZmVyZW5jZSk7XG4gIH1cblxuICBhZGRSZWZlcmVuY2VUeXBlRm9yKHByb3BlcnR5OiBzdHJpbmcsIHR5cGU6IFBhdGhSZWZlcmVuY2VGYWN0b3J5PGFueT4pIHtcbiAgICB0aGlzLnJlZmVyZW5jZVR5cGVzID0gdGhpcy5yZWZlcmVuY2VUeXBlcyB8fCBkaWN0PFBhdGhSZWZlcmVuY2VGYWN0b3J5PGFueT4+KCk7XG4gICAgdGhpcy5yZWZlcmVuY2VUeXBlc1twcm9wZXJ0eV0gPSB0eXBlO1xuICB9XG5cbiAgcmVmZXJlbmNlVHlwZUZvcihwcm9wZXJ0eTogc3RyaW5nKTogSW5uZXJSZWZlcmVuY2VGYWN0b3J5PGFueT4ge1xuICAgIGlmICghdGhpcy5yZWZlcmVuY2VUeXBlcykgcmV0dXJuIFByb3BlcnR5UmVmZXJlbmNlO1xuICAgIHJldHVybiB0aGlzLnJlZmVyZW5jZVR5cGVzW3Byb3BlcnR5XSB8fCBQcm9wZXJ0eVJlZmVyZW5jZTtcbiAgfVxuXG4gIHJlbW92ZVJlZmVyZW5jZShwcm9wZXJ0eTogc3RyaW5nLCByZWZlcmVuY2U6IElQYXRoUmVmZXJlbmNlPGFueT4gJiBIYXNHdWlkKSB7XG4gICAgaWYgKCF0aGlzLnJlZmVyZW5jZXMpIHJldHVybjtcbiAgICBsZXQgc2V0ID0gdGhpcy5yZWZlcmVuY2VzW3Byb3BlcnR5XTtcbiAgICBzZXQuZGVsZXRlKHJlZmVyZW5jZSk7XG4gIH1cblxuICBnZXRSZWZlcmVuY2VUeXBlcygpOiBEaWN0PElubmVyUmVmZXJlbmNlRmFjdG9yeTxhbnk+PiB7XG4gICAgdGhpcy5yZWZlcmVuY2VUeXBlcyA9IHRoaXMucmVmZXJlbmNlVHlwZXMgfHwgZGljdDxQYXRoUmVmZXJlbmNlRmFjdG9yeTxhbnk+PigpO1xuICAgIHJldHVybiB0aGlzLnJlZmVyZW5jZVR5cGVzO1xuICB9XG5cbiAgcmVmZXJlbmNlc0Zvcihwcm9wZXJ0eTogc3RyaW5nKTogT3B0aW9uPFNldDxJUGF0aFJlZmVyZW5jZTxhbnk+Pj4ge1xuICAgIGlmICghdGhpcy5yZWZlcmVuY2VzKSByZXR1cm4gbnVsbDtcbiAgICByZXR1cm4gdGhpcy5yZWZlcmVuY2VzW3Byb3BlcnR5XTtcbiAgfVxuXG4gIGdldFNsb3RzKCkge1xuICAgIHJldHVybiAodGhpcy5zbG90cyA9IHRoaXMuc2xvdHMgfHwgZGljdCgpKTtcbiAgfVxuXG4gIHJvb3QoKTogSVJvb3RSZWZlcmVuY2U8YW55PiB7XG4gICAgcmV0dXJuICh0aGlzLnJvb3RDYWNoZSA9IHRoaXMucm9vdENhY2hlIHx8IG5ldyB0aGlzLlJvb3RSZWZlcmVuY2VGYWN0b3J5KHRoaXMub2JqZWN0KSk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgTWV0YTtcblxuaW50ZXJmYWNlIENsYXNzTWV0YSB7XG4gIEluc3RhbmNlTWV0YUNvbnN0cnVjdG9yOiB0eXBlb2YgTWV0YTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG1ldGFGb3Iob2JqOiBhbnkpOiBJTWV0YSB7XG4gIHJldHVybiBNZXRhLmZvcihvYmopO1xufVxuIl19

@@ -1,2 +0,2 @@

import { bump } from "@glimmer/reference";
import { bump } from '@glimmer/reference';
// import { metaFor } from './meta';

@@ -23,2 +23,2 @@ // import { intern } from '@glimmer/util';

}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JqZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvQGdsaW1tZXIvb2JqZWN0LXJlZmVyZW5jZS9saWIvb2JqZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLEFBQU8sU0FBRSxBQUFJLEFBQUUsWUFBTSxBQUFvQixBQUFDO0FBRTFDLEFBQW9DO0FBQ3BDLEFBQTBDO0FBRTFDLEFBQU0sNEJBQXNCLEFBQVcsUUFBRSxBQUFnQixVQUFFLEFBQVEsS0FDakUsQUFBNkQ7QUFFN0QsQUFBcUU7QUFFckUsQUFBTTtXQUFDLEFBQVEsQUFBQyxZQUFHLEFBQUcsQUFBQyxBQUN2QixBQUFJLEFBQUUsQUFBQztBQUVQLEFBQTRCO0FBQzVCLEFBQWlFO0FBQ2pFLEFBQUk7QUFFSixBQUFtQyxBQUNyQztBQUFDOztBQUVELEFBQU0sK0JBQXlCLEFBQVksU0FBRSxBQUFpQixXQUM1RCxBQUFJLEFBQUUsQUFBQztBQUNQLEFBQTZEO0FBRTdELEFBQXFFO0FBRXJFLEFBQTRCO0FBQzVCLEFBQWlFO0FBQ2pFLEFBQUk7QUFFSixBQUFtQyxBQUNyQztBQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYnVtcCB9IGZyb20gXCJAZ2xpbW1lci9yZWZlcmVuY2VcIjtcblxuLy8gaW1wb3J0IHsgbWV0YUZvciB9IGZyb20gJy4vbWV0YSc7XG4vLyBpbXBvcnQgeyBpbnRlcm4gfSBmcm9tICdAZ2xpbW1lci91dGlsJztcblxuZXhwb3J0IGZ1bmN0aW9uIHNldFByb3BlcnR5KHBhcmVudDogYW55LCBwcm9wZXJ0eTogc3RyaW5nLCB2YWw6IGFueSkge1xuICAvLyBsZXQgcm9vdFByb3AgPSBtZXRhRm9yKHBhcmVudCkucm9vdCgpLmNoYWluRm9yKHByb3BlcnR5KSk7XG5cbiAgLy8gbGV0IHJlZmVyZW5jZXNUb05vdGlmeSA9IG1ldGFGb3IocGFyZW50KS5yZWZlcmVuY2VzRm9yKHByb3BlcnR5KSk7XG5cbiAgcGFyZW50W3Byb3BlcnR5XSA9IHZhbDtcbiAgYnVtcCgpO1xuXG4gIC8vIGlmIChyZWZlcmVuY2VzVG9Ob3RpZnkpIHtcbiAgLy8gICByZWZlcmVuY2VzVG9Ob3RpZnkuZm9yRWFjaChmdW5jdGlvbihyZWYpIHsgcmVmLm5vdGlmeSgpOyB9KTtcbiAgLy8gfVxuXG4gIC8vIGlmIChyb290UHJvcCkgcm9vdFByb3Aubm90aWZ5KCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBub3RpZnlQcm9wZXJ0eShfcGFyZW50OiBhbnksIF9wcm9wZXJ0eTogc3RyaW5nKSB7XG4gIGJ1bXAoKTtcbiAgLy8gbGV0IHJvb3RQcm9wID0gbWV0YUZvcihwYXJlbnQpLnJvb3QoKS5jaGFpbkZvcihwcm9wZXJ0eSkpO1xuXG4gIC8vIGxldCByZWZlcmVuY2VzVG9Ob3RpZnkgPSBtZXRhRm9yKHBhcmVudCkucmVmZXJlbmNlc0Zvcihwcm9wZXJ0eSkpO1xuXG4gIC8vIGlmIChyZWZlcmVuY2VzVG9Ob3RpZnkpIHtcbiAgLy8gICByZWZlcmVuY2VzVG9Ob3RpZnkuZm9yRWFjaChmdW5jdGlvbihyZWYpIHsgcmVmLm5vdGlmeSgpOyB9KTtcbiAgLy8gfVxuXG4gIC8vIGlmIChyb290UHJvcCkgcm9vdFByb3Aubm90aWZ5KCk7XG59XG4iXX0=
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2JqZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvQGdsaW1tZXIvb2JqZWN0LXJlZmVyZW5jZS9saWIvb2JqZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLEFBQU8sU0FBRSxBQUFJLEFBQUUsWUFBTSxBQUFvQixBQUFDO0FBRTFDLEFBQW9DO0FBQ3BDLEFBQTBDO0FBRTFDLEFBQU0sNEJBQXNCLEFBQVcsUUFBRSxBQUFnQixVQUFFLEFBQVEsS0FDakUsQUFBNkQ7QUFFN0QsQUFBcUU7QUFFckUsQUFBTTtXQUFDLEFBQVEsQUFBQyxZQUFHLEFBQUcsQUFBQyxBQUN2QixBQUFJLEFBQUUsQUFBQztBQUVQLEFBQTRCO0FBQzVCLEFBQWlFO0FBQ2pFLEFBQUk7QUFFSixBQUFtQyxBQUNyQztBQUFDOztBQUVELEFBQU0sK0JBQXlCLEFBQVksU0FBRSxBQUFpQixXQUM1RCxBQUFJLEFBQUUsQUFBQztBQUNQLEFBQTZEO0FBRTdELEFBQXFFO0FBRXJFLEFBQTRCO0FBQzVCLEFBQWlFO0FBQ2pFLEFBQUk7QUFFSixBQUFtQyxBQUNyQztBQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYnVtcCB9IGZyb20gJ0BnbGltbWVyL3JlZmVyZW5jZSc7XG5cbi8vIGltcG9ydCB7IG1ldGFGb3IgfSBmcm9tICcuL21ldGEnO1xuLy8gaW1wb3J0IHsgaW50ZXJuIH0gZnJvbSAnQGdsaW1tZXIvdXRpbCc7XG5cbmV4cG9ydCBmdW5jdGlvbiBzZXRQcm9wZXJ0eShwYXJlbnQ6IGFueSwgcHJvcGVydHk6IHN0cmluZywgdmFsOiBhbnkpIHtcbiAgLy8gbGV0IHJvb3RQcm9wID0gbWV0YUZvcihwYXJlbnQpLnJvb3QoKS5jaGFpbkZvcihwcm9wZXJ0eSkpO1xuXG4gIC8vIGxldCByZWZlcmVuY2VzVG9Ob3RpZnkgPSBtZXRhRm9yKHBhcmVudCkucmVmZXJlbmNlc0Zvcihwcm9wZXJ0eSkpO1xuXG4gIHBhcmVudFtwcm9wZXJ0eV0gPSB2YWw7XG4gIGJ1bXAoKTtcblxuICAvLyBpZiAocmVmZXJlbmNlc1RvTm90aWZ5KSB7XG4gIC8vICAgcmVmZXJlbmNlc1RvTm90aWZ5LmZvckVhY2goZnVuY3Rpb24ocmVmKSB7IHJlZi5ub3RpZnkoKTsgfSk7XG4gIC8vIH1cblxuICAvLyBpZiAocm9vdFByb3ApIHJvb3RQcm9wLm5vdGlmeSgpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbm90aWZ5UHJvcGVydHkoX3BhcmVudDogYW55LCBfcHJvcGVydHk6IHN0cmluZykge1xuICBidW1wKCk7XG4gIC8vIGxldCByb290UHJvcCA9IG1ldGFGb3IocGFyZW50KS5yb290KCkuY2hhaW5Gb3IocHJvcGVydHkpKTtcblxuICAvLyBsZXQgcmVmZXJlbmNlc1RvTm90aWZ5ID0gbWV0YUZvcihwYXJlbnQpLnJlZmVyZW5jZXNGb3IocHJvcGVydHkpKTtcblxuICAvLyBpZiAocmVmZXJlbmNlc1RvTm90aWZ5KSB7XG4gIC8vICAgcmVmZXJlbmNlc1RvTm90aWZ5LmZvckVhY2goZnVuY3Rpb24ocmVmKSB7IHJlZi5ub3RpZnkoKTsgfSk7XG4gIC8vIH1cblxuICAvLyBpZiAocm9vdFByb3ApIHJvb3RQcm9wLm5vdGlmeSgpO1xufVxuIl19

@@ -55,2 +55,2 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }

}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzY3JpcHRvcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9AZ2xpbW1lci9vYmplY3QtcmVmZXJlbmNlL2xpYi9yZWZlcmVuY2VzL2Rlc2NyaXB0b3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxBQUFJLFVBQU0sQUFBUyxBQUFDO0FBQzNCLEFBQU8sU0FBa0IsQUFBVyxBQUFFLG1CQUFNLEFBQW9CLEFBQUM7QUFPakUsQUFBTSxXQUtKOytCQUFZLEFBQVcsUUFBRSxBQUFnQixVQUFFLEFBQThCO0FBRmxFOzthQUFHLE1BQVEsQUFBVyxBQUFDLEFBRzVCLEFBQUk7YUFBQyxBQUFNLFNBQUcsQUFBTSxBQUFDLEFBQ3JCLEFBQUk7YUFBQyxBQUFRLFdBQUcsQUFBUSxBQUFDLEFBQzNCLEFBQUM7QUFFRCxBQUFLOzt5REFBSyxBQUFNO2VBQUMsQUFBSSxLQUFDLEFBQU0sT0FBQyxBQUFJLEtBQUMsQUFBUSxBQUFDLEFBQUMsQUFBQyxBQUFDO0FBRTlDLEFBQUs7O3lEQUNILEFBQU07ZUFBQyxBQUFzQixBQUFDLEFBQ2hDLEFBQUMsQUFDRjs7Ozs7QUFFRCxBQUFNLDJDQUF3QyxBQUFjLFdBQUUsQUFBaUIsY0FDN0UsQUFBTTtBQUFDLEFBT0w7bUNBQVksQUFBVyxRQUFFLEFBQWdCO0FBSGpDOztpQkFBUyxZQUFHLEFBQUssQUFBQyxBQUNuQjtpQkFBRyxNQUFRLEFBQVcsQUFBQyxBQUc1QixBQUFJO2lCQUFDLEFBQU0sU0FBRyxBQUFNLEFBQUMsQUFDckIsQUFBSTtpQkFBQyxBQUFRLFdBQUcsQUFBUSxBQUFDLEFBQ3pCLEFBQUk7aUJBQUMsQUFBWSxlQUFHLEFBQVksQUFBQyxBQUNuQyxBQUFDO0FBRUQsQUFBSzs7NkRBQ0gsQUFBRSxBQUFDO2dCQUFDLENBQUMsQUFBSSxLQUFDLEFBQVMsQUFBQyxXQUFDLEFBQUMsQUFDcEI7b0JBQUksQUFBSSxPQUFHLEFBQUksS0FBQyxBQUFHLElBQUMsQUFBSSxLQUFDLEFBQU0sQUFBQyxRQUFDLEFBQUksQUFBRSxBQUFDLEFBRXhDLEFBQUk7cUJBQUMsQUFBWSxhQUFDLEFBQU8sUUFBQyxBQUFHLGVBQzNCO3dCQUFJLEFBQUcsTUFBRyxBQUFJLEtBQUMsQUFBa0IsbUJBQUMsQUFBRyxBQUFDLEFBQUMsQUFDdkMsQUFBRzt3QkFBQyxBQUFLLEFBQUUsQUFBQyxBQUNkLEFBQUMsQUFBQyxBQUFDO0FBRUgsQUFBSTtxQkFBQyxBQUFTLFlBQUcsQUFBSSxBQUFDLEFBQ3hCLEFBQUM7QUFFRCxBQUFNO21CQUFDLEFBQUksS0FBQyxBQUFNLE9BQUMsQUFBSSxLQUFDLEFBQVEsQUFBQyxBQUFDLEFBQ3BDLEFBQUM7QUFFRCxBQUFLOzs2REFDSCxBQUFNO21CQUFDLEFBQXNCLEFBQUMsQUFDaEMsQUFBQyxBQUNGLEFBQUMsQUFDSjtBQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IE1ldGEgZnJvbSAnLi4vbWV0YSc7XG5pbXBvcnQgeyBSZWZlcmVuY2UsIFRhZywgQ1VSUkVOVF9UQUcgfSBmcm9tICdAZ2xpbW1lci9yZWZlcmVuY2UnO1xuaW1wb3J0IHsgTm90aWZpYWJsZVJlZmVyZW5jZSB9IGZyb20gJy4uL3R5cGVzJztcblxuZXhwb3J0IGludGVyZmFjZSBJbm5lclJlZmVyZW5jZUZhY3Rvcnk8VD4ge1xuICBuZXcgKG9iamVjdDogYW55LCBwcm9wZXJ0eTogc3RyaW5nLCBvdXRlcjogTm90aWZpYWJsZVJlZmVyZW5jZTxhbnk+KTogUmVmZXJlbmNlPFQ+O1xufVxuXG5leHBvcnQgY2xhc3MgUHJvcGVydHlSZWZlcmVuY2U8VD4gaW1wbGVtZW50cyBSZWZlcmVuY2U8VD4ge1xuICBwcml2YXRlIG9iamVjdDogYW55O1xuICBwcml2YXRlIHByb3BlcnR5OiBzdHJpbmc7XG4gIHB1YmxpYyB0YWc6IFRhZyA9IENVUlJFTlRfVEFHO1xuXG4gIGNvbnN0cnVjdG9yKG9iamVjdDogYW55LCBwcm9wZXJ0eTogc3RyaW5nLCBfb3V0ZXI6IE5vdGlmaWFibGVSZWZlcmVuY2U8VD4pIHtcbiAgICB0aGlzLm9iamVjdCA9IG9iamVjdDtcbiAgICB0aGlzLnByb3BlcnR5ID0gcHJvcGVydHk7XG4gIH1cblxuICB2YWx1ZSgpIHsgcmV0dXJuIHRoaXMub2JqZWN0W3RoaXMucHJvcGVydHldOyB9XG5cbiAgbGFiZWwoKSB7XG4gICAgcmV0dXJuICdbcmVmZXJlbmNlIFByb3BlcnR5XSc7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIENvbXB1dGVkUmVmZXJlbmNlQmx1ZXByaW50PFQ+KF9wcm9wZXJ0eTogYW55LCBkZXBlbmRlbmNpZXM6IGFueSk6IElubmVyUmVmZXJlbmNlRmFjdG9yeTxUPiB7XG4gIHJldHVybiBjbGFzcyBDb21wdXRlZFJlZmVyZW5jZTxUPiBpbXBsZW1lbnRzIFJlZmVyZW5jZTxUPiB7XG4gICAgcHJpdmF0ZSBvYmplY3Q6IGFueTtcbiAgICBwcml2YXRlIHByb3BlcnR5OiBzdHJpbmc7XG4gICAgcHJpdmF0ZSBkZXBlbmRlbmNpZXM6IHN0cmluZ1tdW107XG4gICAgcHJpdmF0ZSBpbnN0YWxsZWQgPSBmYWxzZTtcbiAgICBwdWJsaWMgdGFnOiBUYWcgPSBDVVJSRU5UX1RBRztcblxuICAgIGNvbnN0cnVjdG9yKG9iamVjdDogYW55LCBwcm9wZXJ0eTogc3RyaW5nKSB7XG4gICAgICB0aGlzLm9iamVjdCA9IG9iamVjdDtcbiAgICAgIHRoaXMucHJvcGVydHkgPSBwcm9wZXJ0eTtcbiAgICAgIHRoaXMuZGVwZW5kZW5jaWVzID0gZGVwZW5kZW5jaWVzO1xuICAgIH1cblxuICAgIHZhbHVlKCk6IFQge1xuICAgICAgaWYgKCF0aGlzLmluc3RhbGxlZCkge1xuICAgICAgICBsZXQgcm9vdCA9IE1ldGEuZm9yKHRoaXMub2JqZWN0KS5yb290KCk7XG5cbiAgICAgICAgdGhpcy5kZXBlbmRlbmNpZXMuZm9yRWFjaChkZXAgPT4ge1xuICAgICAgICAgIGxldCByZWYgPSByb290LnJlZmVyZW5jZUZyb21QYXJ0cyhkZXApO1xuICAgICAgICAgIHJlZi52YWx1ZSgpO1xuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLmluc3RhbGxlZCA9IHRydWU7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB0aGlzLm9iamVjdFt0aGlzLnByb3BlcnR5XTtcbiAgICB9XG5cbiAgICBsYWJlbCgpIHtcbiAgICAgIHJldHVybiAnW3JlZmVyZW5jZSBDb21wdXRlZF0nO1xuICAgIH1cbiAgfTtcbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzY3JpcHRvcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9AZ2xpbW1lci9vYmplY3QtcmVmZXJlbmNlL2xpYi9yZWZlcmVuY2VzL2Rlc2NyaXB0b3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxBQUFJLFVBQU0sQUFBUyxBQUFDO0FBQzNCLEFBQU8sU0FBa0IsQUFBVyxBQUFFLG1CQUFNLEFBQW9CLEFBQUM7QUFPakUsQUFBTSxXQUtKOytCQUFZLEFBQVcsUUFBRSxBQUFnQixVQUFFLEFBQThCO0FBRmxFOzthQUFHLE1BQVEsQUFBVyxBQUFDLEFBRzVCLEFBQUk7YUFBQyxBQUFNLFNBQUcsQUFBTSxBQUFDLEFBQ3JCLEFBQUk7YUFBQyxBQUFRLFdBQUcsQUFBUSxBQUFDLEFBQzNCLEFBQUM7QUFFRCxBQUFLOzt5REFDSCxBQUFNO2VBQUMsQUFBSSxLQUFDLEFBQU0sT0FBQyxBQUFJLEtBQUMsQUFBUSxBQUFDLEFBQUMsQUFDcEMsQUFBQztBQUVELEFBQUs7O3lEQUNILEFBQU07ZUFBQyxBQUFzQixBQUFDLEFBQ2hDLEFBQUMsQUFDRjs7Ozs7QUFFRCxBQUFNLDJDQUNKLEFBQWMsV0FDZCxBQUFpQixjQUVqQixBQUFNO0FBQUMsQUFPTDttQ0FBWSxBQUFXLFFBQUUsQUFBZ0I7QUFIakM7O2lCQUFTLFlBQUcsQUFBSyxBQUFDLEFBQ25CO2lCQUFHLE1BQVEsQUFBVyxBQUFDLEFBRzVCLEFBQUk7aUJBQUMsQUFBTSxTQUFHLEFBQU0sQUFBQyxBQUNyQixBQUFJO2lCQUFDLEFBQVEsV0FBRyxBQUFRLEFBQUMsQUFDekIsQUFBSTtpQkFBQyxBQUFZLGVBQUcsQUFBWSxBQUFDLEFBQ25DLEFBQUM7QUFFRCxBQUFLOzs2REFDSCxBQUFFLEFBQUM7Z0JBQUMsQ0FBQyxBQUFJLEtBQUMsQUFBUyxBQUFDLFdBQUMsQUFBQyxBQUNwQjtvQkFBSSxBQUFJLE9BQUcsQUFBSSxLQUFDLEFBQUcsSUFBQyxBQUFJLEtBQUMsQUFBTSxBQUFDLFFBQUMsQUFBSSxBQUFFLEFBQUMsQUFFeEMsQUFBSTtxQkFBQyxBQUFZLGFBQUMsQUFBTyxRQUFDLEFBQUcsZUFDM0I7d0JBQUksQUFBRyxNQUFHLEFBQUksS0FBQyxBQUFrQixtQkFBQyxBQUFHLEFBQUMsQUFBQyxBQUN2QyxBQUFHO3dCQUFDLEFBQUssQUFBRSxBQUFDLEFBQ2QsQUFBQyxBQUFDLEFBQUM7QUFFSCxBQUFJO3FCQUFDLEFBQVMsWUFBRyxBQUFJLEFBQUMsQUFDeEIsQUFBQztBQUVELEFBQU07bUJBQUMsQUFBSSxLQUFDLEFBQU0sT0FBQyxBQUFJLEtBQUMsQUFBUSxBQUFDLEFBQUMsQUFDcEMsQUFBQztBQUVELEFBQUs7OzZEQUNILEFBQU07bUJBQUMsQUFBc0IsQUFBQyxBQUNoQyxBQUFDLEFBQ0YsQUFBQyxBQUNKO0FBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgTWV0YSBmcm9tICcuLi9tZXRhJztcbmltcG9ydCB7IFJlZmVyZW5jZSwgVGFnLCBDVVJSRU5UX1RBRyB9IGZyb20gJ0BnbGltbWVyL3JlZmVyZW5jZSc7XG5pbXBvcnQgeyBOb3RpZmlhYmxlUmVmZXJlbmNlIH0gZnJvbSAnLi4vdHlwZXMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIElubmVyUmVmZXJlbmNlRmFjdG9yeTxUPiB7XG4gIG5ldyAob2JqZWN0OiBhbnksIHByb3BlcnR5OiBzdHJpbmcsIG91dGVyOiBOb3RpZmlhYmxlUmVmZXJlbmNlPGFueT4pOiBSZWZlcmVuY2U8VD47XG59XG5cbmV4cG9ydCBjbGFzcyBQcm9wZXJ0eVJlZmVyZW5jZTxUPiBpbXBsZW1lbnRzIFJlZmVyZW5jZTxUPiB7XG4gIHByaXZhdGUgb2JqZWN0OiBhbnk7XG4gIHByaXZhdGUgcHJvcGVydHk6IHN0cmluZztcbiAgcHVibGljIHRhZzogVGFnID0gQ1VSUkVOVF9UQUc7XG5cbiAgY29uc3RydWN0b3Iob2JqZWN0OiBhbnksIHByb3BlcnR5OiBzdHJpbmcsIF9vdXRlcjogTm90aWZpYWJsZVJlZmVyZW5jZTxUPikge1xuICAgIHRoaXMub2JqZWN0ID0gb2JqZWN0O1xuICAgIHRoaXMucHJvcGVydHkgPSBwcm9wZXJ0eTtcbiAgfVxuXG4gIHZhbHVlKCkge1xuICAgIHJldHVybiB0aGlzLm9iamVjdFt0aGlzLnByb3BlcnR5XTtcbiAgfVxuXG4gIGxhYmVsKCkge1xuICAgIHJldHVybiAnW3JlZmVyZW5jZSBQcm9wZXJ0eV0nO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBDb21wdXRlZFJlZmVyZW5jZUJsdWVwcmludDxUPihcbiAgX3Byb3BlcnR5OiBhbnksXG4gIGRlcGVuZGVuY2llczogYW55XG4pOiBJbm5lclJlZmVyZW5jZUZhY3Rvcnk8VD4ge1xuICByZXR1cm4gY2xhc3MgQ29tcHV0ZWRSZWZlcmVuY2U8VD4gaW1wbGVtZW50cyBSZWZlcmVuY2U8VD4ge1xuICAgIHByaXZhdGUgb2JqZWN0OiBhbnk7XG4gICAgcHJpdmF0ZSBwcm9wZXJ0eTogc3RyaW5nO1xuICAgIHByaXZhdGUgZGVwZW5kZW5jaWVzOiBzdHJpbmdbXVtdO1xuICAgIHByaXZhdGUgaW5zdGFsbGVkID0gZmFsc2U7XG4gICAgcHVibGljIHRhZzogVGFnID0gQ1VSUkVOVF9UQUc7XG5cbiAgICBjb25zdHJ1Y3RvcihvYmplY3Q6IGFueSwgcHJvcGVydHk6IHN0cmluZykge1xuICAgICAgdGhpcy5vYmplY3QgPSBvYmplY3Q7XG4gICAgICB0aGlzLnByb3BlcnR5ID0gcHJvcGVydHk7XG4gICAgICB0aGlzLmRlcGVuZGVuY2llcyA9IGRlcGVuZGVuY2llcztcbiAgICB9XG5cbiAgICB2YWx1ZSgpOiBUIHtcbiAgICAgIGlmICghdGhpcy5pbnN0YWxsZWQpIHtcbiAgICAgICAgbGV0IHJvb3QgPSBNZXRhLmZvcih0aGlzLm9iamVjdCkucm9vdCgpO1xuXG4gICAgICAgIHRoaXMuZGVwZW5kZW5jaWVzLmZvckVhY2goZGVwID0+IHtcbiAgICAgICAgICBsZXQgcmVmID0gcm9vdC5yZWZlcmVuY2VGcm9tUGFydHMoZGVwKTtcbiAgICAgICAgICByZWYudmFsdWUoKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5pbnN0YWxsZWQgPSB0cnVlO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gdGhpcy5vYmplY3RbdGhpcy5wcm9wZXJ0eV07XG4gICAgfVxuXG4gICAgbGFiZWwoKSB7XG4gICAgICByZXR1cm4gJ1tyZWZlcmVuY2UgQ29tcHV0ZWRdJztcbiAgICB9XG4gIH07XG59XG4iXX0=

@@ -71,2 +71,2 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }

export { PathReference };
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF0aC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BnbGltbWVyL29iamVjdC1yZWZlcmVuY2UvbGliL3JlZmVyZW5jZXMvcGF0aC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLEFBQU8sU0FBRSxBQUFXLEFBQUUsbUJBQU0sQUFBVSxBQUFDO0FBQ3ZDLEFBQU8sU0FBRSxBQUFJLEFBQUUsWUFBTSxBQUFlLEFBQUM7QUFDckMsT0FBTyxBQUFJLFVBQU0sQUFBUyxBQUFDO0FBQzNCLEFBQU8sU0FBRSxBQUFpQixBQUFFLHlCQUFNLEFBQWUsQUFBQztBQUNsRCxBQUFPLFNBQW1ELEFBQVcsQUFBRSxtQkFBTSxBQUFvQixBQUFDLEFBSWxHLEFBQU0sQUFBQyxBQUFPOztJQVVaOzJCQUFZLEFBQXlCLFFBQUUsQUFBZ0I7QUFQN0M7O2FBQUssUUFBUSxBQUFXLEFBQUMsQUFDM0I7YUFBSyxRQUF5QixBQUFJLEFBQUMsQUFDbkM7YUFBTSxTQUFxQyxBQUFJLEFBQUMsQUFDaEQ7YUFBZSxrQkFBUSxBQUFXLEFBQUMsQUFDcEM7YUFBSyxRQUFHLEFBQUMsQUFBQyxBQUNWO2FBQUcsTUFBUSxBQUFXLEFBQUMsQUFHNUIsQUFBSTthQUFDLEFBQU0sU0FBRyxBQUFNLEFBQUMsQUFDckIsQUFBSTthQUFDLEFBQVEsV0FBRyxBQUFRLEFBQUMsQUFDM0IsQUFBQztBQUVELEFBQUs7OztBQUNILEFBQUksWUFBRSxBQUFlO1lBQUUsQUFBUTtZQUFFLEFBQUssQUFBRSxRQUFHLEFBQUksQUFBQyxBQUNoRDs7WUFBSSxBQUFXLGNBQUcsQUFBSSxLQUFDLEFBQVksQUFBRSxBQUFDLEFBRXRDLEFBQUUsQUFBQztZQUFDLEFBQVcsZ0JBQUssQUFBSSxRQUFJLEFBQVcsZ0JBQUssQUFBUyxBQUFDLFdBQUMsQUFBQyxBQUN0RCxBQUFNLEFBQUM7bUJBQUMsQUFBSSxLQUFDLEFBQUssUUFBRyxBQUFTLEFBQUMsQUFBQyxBQUNsQyxBQUFDO0FBRUQsQUFBRSxBQUFDO1lBQUMsQUFBZSxvQkFBSyxBQUFXLEFBQUMsYUFBQyxBQUFDLEFBQ3BDLEFBQUs7b0JBQUcsQUFBSSxLQUFDLEFBQUssQUFBQyxBQUNyQixBQUFDLEFBQUMsQUFBSTtlQUFDLEFBQUMsQUFDTjtnQkFBSSxBQUFhLGdCQUFHLE9BQU8sQUFBVyxnQkFBSyxBQUFRLFdBQUcsQUFBSSxLQUFDLEFBQUcsSUFBQyxBQUFXLEFBQUMsYUFBQyxBQUFnQixpQkFBQyxBQUFRLEFBQUMsWUFBRyxBQUFpQixBQUFDLEFBQzNILEFBQUs7b0JBQUcsQUFBSSxLQUFDLEFBQUssUUFBRyxJQUFJLEFBQWEsY0FBQyxBQUFXLGFBQUUsQUFBUSxVQUFFLEFBQUksQUFBQyxBQUFDLEFBQ3RFLEFBQUM7QUFFRCxBQUF5QztBQUN6QyxBQUF3RDtBQUN4RCxBQUFJO0FBRUosQUFBTSxBQUFDO2VBQUMsQUFBSSxLQUFDLEFBQUssUUFBRyxBQUFNLE1BQUMsQUFBSyxBQUFFLEFBQUMsQUFBQyxBQUN2QyxBQUFDO0FBRUQsQUFBRzs7K0NBQUMsQUFBWSxNQUNkO1lBQUksQUFBTSxTQUFHLEFBQUksS0FBQyxBQUFVLEFBQUUsQUFBQyxBQUMvQixBQUFFLEFBQUM7WUFBQyxBQUFjLFFBQUksQUFBTSxBQUFDLFFBQUMsQUFBTSxPQUFDLEFBQU0sT0FBQyxBQUFJLEFBQUMsQUFBQyxBQUNsRCxBQUFNLEFBQUM7ZUFBQyxBQUFNLE9BQUMsQUFBSSxBQUFDLFFBQUcsSUFBSSxBQUFhLGNBQUMsQUFBSSxNQUFFLEFBQUksQUFBQyxBQUFDLEFBQUMsQUFDeEQsQUFBQztBQUVELEFBQUs7O3FEQUNILEFBQU07ZUFBQyxBQUFvQixBQUFDLEFBQzlCLEFBQUM7QUFFTyxBQUFVOzsrREFDaEIsQUFBRSxBQUFDO1lBQUMsQUFBSSxLQUFDLEFBQU0sQUFBQyxRQUFDLEFBQU0sT0FBQyxBQUFJLEtBQUMsQUFBTSxBQUFDLEFBQ3BDLEFBQU0sQUFBQztlQUFDLEFBQUksS0FBQyxBQUFNLFNBQUcsQUFBSSxBQUFzQixBQUFDLEFBQUMsQUFDcEQsQUFBQztBQUVPLEFBQVk7O21FQUNsQjtZQUFJLEFBQU0sU0FBRyxBQUFJLEtBQUMsQUFBTSxPQUFDLEFBQUssQUFBRSxBQUFDLEFBQ2pDLEFBQUk7YUFBQyxBQUFlLGtCQUFHLEFBQU0sQUFBQyxBQUM5QixBQUFNO2VBQUMsQUFBTSxBQUFDLEFBQ2hCLEFBQUMsQUFDRjs7Ozs7Ozs7QUFFRCxBQUFPLFNBQUUsQUFBYSxBQUFFLEFBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFTVBUWV9DQUNIRSB9IGZyb20gJy4uL3V0aWxzJztcbmltcG9ydCB7IGRpY3QgfSBmcm9tICdAZ2xpbW1lci91dGlsJztcbmltcG9ydCBNZXRhIGZyb20gJy4uL21ldGEnO1xuaW1wb3J0IHsgUHJvcGVydHlSZWZlcmVuY2UgfSBmcm9tICcuL2Rlc2NyaXB0b3JzJztcbmltcG9ydCB7IFBhdGhSZWZlcmVuY2UgYXMgSVBhdGhSZWZlcmVuY2UsIFJlZmVyZW5jZSwgVGFnLCBDVVJSRU5UX1RBRyB9IGZyb20gJ0BnbGltbWVyL3JlZmVyZW5jZSc7XG5pbXBvcnQgeyBEaWN0LCBIYXNHdWlkIH0gZnJvbSAnQGdsaW1tZXIvdXRpbCc7XG5pbXBvcnQgeyBPcHRpb24gfSBmcm9tIFwiQGdsaW1tZXIvaW50ZXJmYWNlc1wiO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBQYXRoUmVmZXJlbmNlPFQ+IGltcGxlbWVudHMgSVBhdGhSZWZlcmVuY2U8VD4sIEhhc0d1aWQge1xuICBwcml2YXRlIHBhcmVudDogSVBhdGhSZWZlcmVuY2U8YW55PjtcbiAgcHJpdmF0ZSBwcm9wZXJ0eTogc3RyaW5nO1xuICBwcm90ZWN0ZWQgY2FjaGU6IGFueSA9IEVNUFRZX0NBQ0hFO1xuICBwcml2YXRlIGlubmVyOiBPcHRpb248UmVmZXJlbmNlPFQ+PiA9IG51bGw7XG4gIHByaXZhdGUgY2hhaW5zOiBPcHRpb248RGljdDxQYXRoUmVmZXJlbmNlPGFueT4+PiA9IG51bGw7XG4gIHByaXZhdGUgbGFzdFBhcmVudFZhbHVlOiBhbnkgPSBFTVBUWV9DQUNIRTtcbiAgcHVibGljIF9ndWlkID0gMDtcbiAgcHVibGljIHRhZzogVGFnID0gQ1VSUkVOVF9UQUc7XG5cbiAgY29uc3RydWN0b3IocGFyZW50OiBJUGF0aFJlZmVyZW5jZTxUPiwgcHJvcGVydHk6IHN0cmluZykge1xuICAgIHRoaXMucGFyZW50ID0gcGFyZW50O1xuICAgIHRoaXMucHJvcGVydHkgPSBwcm9wZXJ0eTtcbiAgfVxuXG4gIHZhbHVlKCk6IGFueSB7XG4gICAgbGV0IHsgbGFzdFBhcmVudFZhbHVlLCBwcm9wZXJ0eSwgaW5uZXIgfSA9IHRoaXM7XG4gICAgbGV0IHBhcmVudFZhbHVlID0gdGhpcy5fcGFyZW50VmFsdWUoKTtcblxuICAgIGlmIChwYXJlbnRWYWx1ZSA9PT0gbnVsbCB8fCBwYXJlbnRWYWx1ZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXR1cm4gKHRoaXMuY2FjaGUgPSB1bmRlZmluZWQpO1xuICAgIH1cblxuICAgIGlmIChsYXN0UGFyZW50VmFsdWUgPT09IHBhcmVudFZhbHVlKSB7XG4gICAgICBpbm5lciA9IHRoaXMuaW5uZXI7XG4gICAgfSBlbHNlIHtcbiAgICAgIGxldCBSZWZlcmVuY2VUeXBlID0gdHlwZW9mIHBhcmVudFZhbHVlID09PSAnb2JqZWN0JyA/IE1ldGEuZm9yKHBhcmVudFZhbHVlKS5yZWZlcmVuY2VUeXBlRm9yKHByb3BlcnR5KSA6IFByb3BlcnR5UmVmZXJlbmNlO1xuICAgICAgaW5uZXIgPSB0aGlzLmlubmVyID0gbmV3IFJlZmVyZW5jZVR5cGUocGFyZW50VmFsdWUsIHByb3BlcnR5LCB0aGlzKTtcbiAgICB9XG5cbiAgICAvLyBpZiAodHlwZW9mIHBhcmVudFZhbHVlID09PSAnb2JqZWN0Jykge1xuICAgIC8vICAgTWV0YS5mb3IocGFyZW50VmFsdWUpLmFkZFJlZmVyZW5jZShwcm9wZXJ0eSwgdGhpcyk7XG4gICAgLy8gfVxuXG4gICAgcmV0dXJuICh0aGlzLmNhY2hlID0gaW5uZXIhLnZhbHVlKCkpO1xuICB9XG5cbiAgZ2V0KHByb3A6IHN0cmluZyk6IElQYXRoUmVmZXJlbmNlPGFueT4ge1xuICAgIGxldCBjaGFpbnMgPSB0aGlzLl9nZXRDaGFpbnMoKTtcbiAgICBpZiAocHJvcCBhcyBzdHJpbmcgaW4gY2hhaW5zKSByZXR1cm4gY2hhaW5zW3Byb3BdO1xuICAgIHJldHVybiAoY2hhaW5zW3Byb3BdID0gbmV3IFBhdGhSZWZlcmVuY2UodGhpcywgcHJvcCkpO1xuICB9XG5cbiAgbGFiZWwoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJ1tyZWZlcmVuY2UgRGlyZWN0XSc7XG4gIH1cblxuICBwcml2YXRlIF9nZXRDaGFpbnMoKTogRGljdDxQYXRoUmVmZXJlbmNlPGFueT4+IHtcbiAgICBpZiAodGhpcy5jaGFpbnMpIHJldHVybiB0aGlzLmNoYWlucztcbiAgICByZXR1cm4gKHRoaXMuY2hhaW5zID0gZGljdDxQYXRoUmVmZXJlbmNlPGFueT4+KCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBfcGFyZW50VmFsdWUoKSB7XG4gICAgbGV0IHBhcmVudCA9IHRoaXMucGFyZW50LnZhbHVlKCk7XG4gICAgdGhpcy5sYXN0UGFyZW50VmFsdWUgPSBwYXJlbnQ7XG4gICAgcmV0dXJuIHBhcmVudDtcbiAgfVxufVxuXG5leHBvcnQgeyBQYXRoUmVmZXJlbmNlIH07XG4iXX0=
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF0aC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BnbGltbWVyL29iamVjdC1yZWZlcmVuY2UvbGliL3JlZmVyZW5jZXMvcGF0aC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLEFBQU8sU0FBRSxBQUFXLEFBQUUsbUJBQU0sQUFBVSxBQUFDO0FBQ3ZDLEFBQU8sU0FBRSxBQUFJLEFBQUUsWUFBTSxBQUFlLEFBQUM7QUFDckMsT0FBTyxBQUFJLFVBQU0sQUFBUyxBQUFDO0FBQzNCLEFBQU8sU0FBRSxBQUFpQixBQUFFLHlCQUFNLEFBQWUsQUFBQztBQUNsRCxBQUFPLFNBQW1ELEFBQVcsQUFBRSxtQkFBTSxBQUFvQixBQUFDLEFBSWxHLEFBQU0sQUFBQyxBQUFPOztJQVVaOzJCQUFZLEFBQXlCLFFBQUUsQUFBZ0I7QUFQN0M7O2FBQUssUUFBUSxBQUFXLEFBQUMsQUFDM0I7YUFBSyxRQUF5QixBQUFJLEFBQUMsQUFDbkM7YUFBTSxTQUFxQyxBQUFJLEFBQUMsQUFDaEQ7YUFBZSxrQkFBUSxBQUFXLEFBQUMsQUFDcEM7YUFBSyxRQUFHLEFBQUMsQUFBQyxBQUNWO2FBQUcsTUFBUSxBQUFXLEFBQUMsQUFHNUIsQUFBSTthQUFDLEFBQU0sU0FBRyxBQUFNLEFBQUMsQUFDckIsQUFBSTthQUFDLEFBQVEsV0FBRyxBQUFRLEFBQUMsQUFDM0IsQUFBQztBQUVELEFBQUs7OztBQUNILEFBQUksWUFBRSxBQUFlO1lBQUUsQUFBUTtZQUFFLEFBQUssQUFBRSxRQUFHLEFBQUksQUFBQyxBQUNoRDs7WUFBSSxBQUFXLGNBQUcsQUFBSSxLQUFDLEFBQVksQUFBRSxBQUFDLEFBRXRDLEFBQUUsQUFBQztZQUFDLEFBQVcsZ0JBQUssQUFBSSxRQUFJLEFBQVcsZ0JBQUssQUFBUyxBQUFDLFdBQUMsQUFBQyxBQUN0RCxBQUFNLEFBQUM7bUJBQUMsQUFBSSxLQUFDLEFBQUssUUFBRyxBQUFTLEFBQUMsQUFBQyxBQUNsQyxBQUFDO0FBRUQsQUFBRSxBQUFDO1lBQUMsQUFBZSxvQkFBSyxBQUFXLEFBQUMsYUFBQyxBQUFDLEFBQ3BDLEFBQUs7b0JBQUcsQUFBSSxLQUFDLEFBQUssQUFBQyxBQUNyQixBQUFDLEFBQUMsQUFBSTtlQUFDLEFBQUMsQUFDTjtnQkFBSSxBQUFhLGdCQUNmLE9BQU8sQUFBVyxnQkFBSyxBQUFRLFdBQzNCLEFBQUksS0FBQyxBQUFHLElBQUMsQUFBVyxBQUFDLGFBQUMsQUFBZ0IsaUJBQUMsQUFBUSxBQUFDLFlBQ2hELEFBQWlCLEFBQUMsQUFDeEIsQUFBSztvQkFBRyxBQUFJLEtBQUMsQUFBSyxRQUFHLElBQUksQUFBYSxjQUFDLEFBQVcsYUFBRSxBQUFRLFVBQUUsQUFBSSxBQUFDLEFBQUMsQUFDdEUsQUFBQztBQUVELEFBQXlDO0FBQ3pDLEFBQXdEO0FBQ3hELEFBQUk7QUFFSixBQUFNLEFBQUM7ZUFBQyxBQUFJLEtBQUMsQUFBSyxRQUFHLEFBQU0sTUFBQyxBQUFLLEFBQUUsQUFBQyxBQUFDLEFBQ3ZDLEFBQUM7QUFFRCxBQUFHOzsrQ0FBQyxBQUFZLE1BQ2Q7WUFBSSxBQUFNLFNBQUcsQUFBSSxLQUFDLEFBQVUsQUFBRSxBQUFDLEFBQy9CLEFBQUUsQUFBQztZQUFFLEFBQWUsUUFBSSxBQUFNLEFBQUMsUUFBQyxBQUFNLE9BQUMsQUFBTSxPQUFDLEFBQUksQUFBQyxBQUFDLEFBQ3BELEFBQU0sQUFBQztlQUFDLEFBQU0sT0FBQyxBQUFJLEFBQUMsUUFBRyxJQUFJLEFBQWEsY0FBQyxBQUFJLE1BQUUsQUFBSSxBQUFDLEFBQUMsQUFBQyxBQUN4RCxBQUFDO0FBRUQsQUFBSzs7cURBQ0gsQUFBTTtlQUFDLEFBQW9CLEFBQUMsQUFDOUIsQUFBQztBQUVPLEFBQVU7OytEQUNoQixBQUFFLEFBQUM7WUFBQyxBQUFJLEtBQUMsQUFBTSxBQUFDLFFBQUMsQUFBTSxPQUFDLEFBQUksS0FBQyxBQUFNLEFBQUMsQUFDcEMsQUFBTSxBQUFDO2VBQUMsQUFBSSxLQUFDLEFBQU0sU0FBRyxBQUFJLEFBQXNCLEFBQUMsQUFBQyxBQUNwRCxBQUFDO0FBRU8sQUFBWTs7bUVBQ2xCO1lBQUksQUFBTSxTQUFHLEFBQUksS0FBQyxBQUFNLE9BQUMsQUFBSyxBQUFFLEFBQUMsQUFDakMsQUFBSTthQUFDLEFBQWUsa0JBQUcsQUFBTSxBQUFDLEFBQzlCLEFBQU07ZUFBQyxBQUFNLEFBQUMsQUFDaEIsQUFBQyxBQUNGOzs7Ozs7OztBQUVELEFBQU8sU0FBRSxBQUFhLEFBQUUsQUFBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVNUFRZX0NBQ0hFIH0gZnJvbSAnLi4vdXRpbHMnO1xuaW1wb3J0IHsgZGljdCB9IGZyb20gJ0BnbGltbWVyL3V0aWwnO1xuaW1wb3J0IE1ldGEgZnJvbSAnLi4vbWV0YSc7XG5pbXBvcnQgeyBQcm9wZXJ0eVJlZmVyZW5jZSB9IGZyb20gJy4vZGVzY3JpcHRvcnMnO1xuaW1wb3J0IHsgUGF0aFJlZmVyZW5jZSBhcyBJUGF0aFJlZmVyZW5jZSwgUmVmZXJlbmNlLCBUYWcsIENVUlJFTlRfVEFHIH0gZnJvbSAnQGdsaW1tZXIvcmVmZXJlbmNlJztcbmltcG9ydCB7IERpY3QsIEhhc0d1aWQgfSBmcm9tICdAZ2xpbW1lci91dGlsJztcbmltcG9ydCB7IE9wdGlvbiB9IGZyb20gJ0BnbGltbWVyL2ludGVyZmFjZXMnO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBQYXRoUmVmZXJlbmNlPFQ+IGltcGxlbWVudHMgSVBhdGhSZWZlcmVuY2U8VD4sIEhhc0d1aWQge1xuICBwcml2YXRlIHBhcmVudDogSVBhdGhSZWZlcmVuY2U8YW55PjtcbiAgcHJpdmF0ZSBwcm9wZXJ0eTogc3RyaW5nO1xuICBwcm90ZWN0ZWQgY2FjaGU6IGFueSA9IEVNUFRZX0NBQ0hFO1xuICBwcml2YXRlIGlubmVyOiBPcHRpb248UmVmZXJlbmNlPFQ+PiA9IG51bGw7XG4gIHByaXZhdGUgY2hhaW5zOiBPcHRpb248RGljdDxQYXRoUmVmZXJlbmNlPGFueT4+PiA9IG51bGw7XG4gIHByaXZhdGUgbGFzdFBhcmVudFZhbHVlOiBhbnkgPSBFTVBUWV9DQUNIRTtcbiAgcHVibGljIF9ndWlkID0gMDtcbiAgcHVibGljIHRhZzogVGFnID0gQ1VSUkVOVF9UQUc7XG5cbiAgY29uc3RydWN0b3IocGFyZW50OiBJUGF0aFJlZmVyZW5jZTxUPiwgcHJvcGVydHk6IHN0cmluZykge1xuICAgIHRoaXMucGFyZW50ID0gcGFyZW50O1xuICAgIHRoaXMucHJvcGVydHkgPSBwcm9wZXJ0eTtcbiAgfVxuXG4gIHZhbHVlKCk6IGFueSB7XG4gICAgbGV0IHsgbGFzdFBhcmVudFZhbHVlLCBwcm9wZXJ0eSwgaW5uZXIgfSA9IHRoaXM7XG4gICAgbGV0IHBhcmVudFZhbHVlID0gdGhpcy5fcGFyZW50VmFsdWUoKTtcblxuICAgIGlmIChwYXJlbnRWYWx1ZSA9PT0gbnVsbCB8fCBwYXJlbnRWYWx1ZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXR1cm4gKHRoaXMuY2FjaGUgPSB1bmRlZmluZWQpO1xuICAgIH1cblxuICAgIGlmIChsYXN0UGFyZW50VmFsdWUgPT09IHBhcmVudFZhbHVlKSB7XG4gICAgICBpbm5lciA9IHRoaXMuaW5uZXI7XG4gICAgfSBlbHNlIHtcbiAgICAgIGxldCBSZWZlcmVuY2VUeXBlID1cbiAgICAgICAgdHlwZW9mIHBhcmVudFZhbHVlID09PSAnb2JqZWN0J1xuICAgICAgICAgID8gTWV0YS5mb3IocGFyZW50VmFsdWUpLnJlZmVyZW5jZVR5cGVGb3IocHJvcGVydHkpXG4gICAgICAgICAgOiBQcm9wZXJ0eVJlZmVyZW5jZTtcbiAgICAgIGlubmVyID0gdGhpcy5pbm5lciA9IG5ldyBSZWZlcmVuY2VUeXBlKHBhcmVudFZhbHVlLCBwcm9wZXJ0eSwgdGhpcyk7XG4gICAgfVxuXG4gICAgLy8gaWYgKHR5cGVvZiBwYXJlbnRWYWx1ZSA9PT0gJ29iamVjdCcpIHtcbiAgICAvLyAgIE1ldGEuZm9yKHBhcmVudFZhbHVlKS5hZGRSZWZlcmVuY2UocHJvcGVydHksIHRoaXMpO1xuICAgIC8vIH1cblxuICAgIHJldHVybiAodGhpcy5jYWNoZSA9IGlubmVyIS52YWx1ZSgpKTtcbiAgfVxuXG4gIGdldChwcm9wOiBzdHJpbmcpOiBJUGF0aFJlZmVyZW5jZTxhbnk+IHtcbiAgICBsZXQgY2hhaW5zID0gdGhpcy5fZ2V0Q2hhaW5zKCk7XG4gICAgaWYgKChwcm9wIGFzIHN0cmluZykgaW4gY2hhaW5zKSByZXR1cm4gY2hhaW5zW3Byb3BdO1xuICAgIHJldHVybiAoY2hhaW5zW3Byb3BdID0gbmV3IFBhdGhSZWZlcmVuY2UodGhpcywgcHJvcCkpO1xuICB9XG5cbiAgbGFiZWwoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJ1tyZWZlcmVuY2UgRGlyZWN0XSc7XG4gIH1cblxuICBwcml2YXRlIF9nZXRDaGFpbnMoKTogRGljdDxQYXRoUmVmZXJlbmNlPGFueT4+IHtcbiAgICBpZiAodGhpcy5jaGFpbnMpIHJldHVybiB0aGlzLmNoYWlucztcbiAgICByZXR1cm4gKHRoaXMuY2hhaW5zID0gZGljdDxQYXRoUmVmZXJlbmNlPGFueT4+KCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBfcGFyZW50VmFsdWUoKSB7XG4gICAgbGV0IHBhcmVudCA9IHRoaXMucGFyZW50LnZhbHVlKCk7XG4gICAgdGhpcy5sYXN0UGFyZW50VmFsdWUgPSBwYXJlbnQ7XG4gICAgcmV0dXJuIHBhcmVudDtcbiAgfVxufVxuXG5leHBvcnQgeyBQYXRoUmVmZXJlbmNlIH07XG4iXX0=

@@ -55,2 +55,2 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }

export default RootReference;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BnbGltbWVyL29iamVjdC1yZWZlcmVuY2UvbGliL3JlZmVyZW5jZXMvcm9vdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLEFBQU8sU0FBa0IsQUFBSSxBQUFFLFlBQU0sQUFBZSxBQUFDO0FBQ3JELEFBQU8sU0FBRSxBQUFhLEFBQUUscUJBQU0sQUFBUSxBQUFDO0FBRXZDLEFBQU8sU0FBd0MsQUFBVyxhQUFFLEFBQUksQUFBRSxZQUFNLEFBQW9CLEFBQUMsQUFFN0YsQUFBTSxBQUFDLEFBQU87O0lBS1o7MkJBQVksQUFBUztBQUhiOzthQUFNLFNBQUcsQUFBSSxBQUFzQixBQUFDLEFBQ3JDO2FBQUcsTUFBUSxBQUFXLEFBQUMsQUFHNUIsQUFBSTthQUFDLEFBQU0sU0FBRyxBQUFNLEFBQUMsQUFDdkIsQUFBQztBQUVELEFBQUs7O3FEQUFRLEFBQU07ZUFBQyxBQUFJLEtBQUMsQUFBTSxBQUFDLEFBQUMsQUFBQztBQUVsQyxBQUFNOztxREFBQyxBQUFTLFFBQ2QsQUFBSTthQUFDLEFBQU0sU0FBRyxBQUFNLEFBQUMsQUFDckIsQUFBSSxBQUFFLEFBQUMsQUFDVDtBQUFDO0FBRUQsQUFBRzs7K0NBQUksQUFBWSxNQUNqQjtZQUFJLEFBQU0sU0FBRyxBQUFJLEtBQUMsQUFBTSxBQUFDLEFBQ3pCLEFBQUUsQUFBQztZQUFDLEFBQWMsUUFBSSxBQUFNLEFBQUMsUUFBQyxBQUFNLE9BQUMsQUFBTSxPQUFDLEFBQUksQUFBQyxBQUFDLEFBQ2xELEFBQU0sQUFBQztlQUFDLEFBQU0sT0FBQyxBQUFJLEFBQUMsUUFBRyxJQUFJLEFBQWEsY0FBQyxBQUFJLE1BQUUsQUFBSSxBQUFDLEFBQUMsQUFBQyxBQUN4RCxBQUFDO0FBRUQsQUFBUTs7eURBQUksQUFBWSxNQUN0QjtZQUFJLEFBQU0sU0FBRyxBQUFJLEtBQUMsQUFBTSxBQUFDLEFBQ3pCLEFBQUUsQUFBQztZQUFDLEFBQWMsUUFBSSxBQUFNLEFBQUMsUUFBQyxBQUFNLE9BQUMsQUFBTSxPQUFDLEFBQUksQUFBQyxBQUFDLEFBQ2xELEFBQU07ZUFBQyxBQUFJLEFBQUMsQUFDZCxBQUFDO0FBRUQsQUFBSTs7aURBQUMsQUFBYyxRQUNqQixBQUFNO2VBQUMsQUFBSSxLQUFDLEFBQWtCLG1CQUFDLEFBQU0sT0FBQyxBQUFLLE1BQUMsQUFBRyxBQUFDLEFBQUMsQUFBQyxBQUNwRCxBQUFDO0FBRUQsQUFBa0I7OzZFQUFDLEFBQWUsT0FDaEMsQUFBTTtxQkFBTyxBQUFNLGlCQUFFLEFBQUcsS0FBRSxBQUFJO0FBQVYsbUJBQWUsQUFBRyxJQUFDLEFBQUcsSUFBQyxBQUFJLEFBQTJCO1NBQW5FLEFBQUssRUFBZ0UsQUFBOEIsQUFBQyxBQUFDLEFBQzlHLEFBQUM7QUFFRCxBQUFLOztxREFDSCxBQUFNO2VBQUMsQUFBa0IsQUFBQyxBQUM1QixBQUFDLEFBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPcHRpb24sIE9wYXF1ZSwgZGljdCB9IGZyb20gJ0BnbGltbWVyL3V0aWwnO1xuaW1wb3J0IHsgUGF0aFJlZmVyZW5jZSB9IGZyb20gJy4vcGF0aCc7XG5pbXBvcnQgeyBSb290UmVmZXJlbmNlIGFzIElSb290UmVmZXJlbmNlIH0gZnJvbSAnLi4vdHlwZXMnO1xuaW1wb3J0IHsgUGF0aFJlZmVyZW5jZSBhcyBJUGF0aFJlZmVyZW5jZSwgVGFnLCBDVVJSRU5UX1RBRywgYnVtcCB9IGZyb20gJ0BnbGltbWVyL3JlZmVyZW5jZSc7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFJvb3RSZWZlcmVuY2U8VD4gaW1wbGVtZW50cyBJUm9vdFJlZmVyZW5jZTxUPiwgSVBhdGhSZWZlcmVuY2U8VD4ge1xuICBwcml2YXRlIG9iamVjdDogVDtcbiAgcHJpdmF0ZSBjaGFpbnMgPSBkaWN0PFBhdGhSZWZlcmVuY2U8YW55Pj4oKTtcbiAgcHVibGljIHRhZzogVGFnID0gQ1VSUkVOVF9UQUc7XG5cbiAgY29uc3RydWN0b3Iob2JqZWN0OiBUKSB7XG4gICAgdGhpcy5vYmplY3QgPSBvYmplY3Q7XG4gIH1cblxuICB2YWx1ZSgpOiBUIHsgcmV0dXJuIHRoaXMub2JqZWN0OyB9XG5cbiAgdXBkYXRlKG9iamVjdDogVCkge1xuICAgIHRoaXMub2JqZWN0ID0gb2JqZWN0O1xuICAgIGJ1bXAoKTtcbiAgfVxuXG4gIGdldDxVPihwcm9wOiBzdHJpbmcpOiBJUGF0aFJlZmVyZW5jZTxVPiB7XG4gICAgbGV0IGNoYWlucyA9IHRoaXMuY2hhaW5zO1xuICAgIGlmIChwcm9wIGFzIHN0cmluZyBpbiBjaGFpbnMpIHJldHVybiBjaGFpbnNbcHJvcF07XG4gICAgcmV0dXJuIChjaGFpbnNbcHJvcF0gPSBuZXcgUGF0aFJlZmVyZW5jZSh0aGlzLCBwcm9wKSk7XG4gIH1cblxuICBjaGFpbkZvcjxVPihwcm9wOiBzdHJpbmcpOiBPcHRpb248SVBhdGhSZWZlcmVuY2U8VT4+IHtcbiAgICBsZXQgY2hhaW5zID0gdGhpcy5jaGFpbnM7XG4gICAgaWYgKHByb3AgYXMgc3RyaW5nIGluIGNoYWlucykgcmV0dXJuIGNoYWluc1twcm9wXTtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIHBhdGgoc3RyaW5nOiBzdHJpbmcpOiBJUGF0aFJlZmVyZW5jZTxPcGFxdWU+IHtcbiAgICByZXR1cm4gdGhpcy5yZWZlcmVuY2VGcm9tUGFydHMoc3RyaW5nLnNwbGl0KCcuJykpO1xuICB9XG5cbiAgcmVmZXJlbmNlRnJvbVBhcnRzKHBhcnRzOiBzdHJpbmdbXSk6IElQYXRoUmVmZXJlbmNlPE9wYXF1ZT4ge1xuICAgIHJldHVybiBwYXJ0cy5yZWR1Y2UoKHJlZiwgcGFydCkgPT4gcmVmLmdldChwYXJ0KSBhcyBJUGF0aFJlZmVyZW5jZTxPcGFxdWU+LCB0aGlzIGFzIElQYXRoUmVmZXJlbmNlPE9wYXF1ZT4pO1xuICB9XG5cbiAgbGFiZWwoKSB7XG4gICAgcmV0dXJuICdbcmVmZXJlbmNlIFJvb3RdJztcbiAgfVxufVxuIl19
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9vdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BnbGltbWVyL29iamVjdC1yZWZlcmVuY2UvbGliL3JlZmVyZW5jZXMvcm9vdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLEFBQU8sU0FBa0IsQUFBSSxBQUFFLFlBQU0sQUFBZSxBQUFDO0FBQ3JELEFBQU8sU0FBRSxBQUFhLEFBQUUscUJBQU0sQUFBUSxBQUFDO0FBRXZDLEFBQU8sU0FBd0MsQUFBVyxhQUFFLEFBQUksQUFBRSxZQUFNLEFBQW9CLEFBQUMsQUFFN0YsQUFBTSxBQUFDLEFBQU87O0lBS1o7MkJBQVksQUFBUztBQUhiOzthQUFNLFNBQUcsQUFBSSxBQUFzQixBQUFDLEFBQ3JDO2FBQUcsTUFBUSxBQUFXLEFBQUMsQUFHNUIsQUFBSTthQUFDLEFBQU0sU0FBRyxBQUFNLEFBQUMsQUFDdkIsQUFBQztBQUVELEFBQUs7O3FEQUNILEFBQU07ZUFBQyxBQUFJLEtBQUMsQUFBTSxBQUFDLEFBQ3JCLEFBQUM7QUFFRCxBQUFNOztxREFBQyxBQUFTLFFBQ2QsQUFBSTthQUFDLEFBQU0sU0FBRyxBQUFNLEFBQUMsQUFDckIsQUFBSSxBQUFFLEFBQUMsQUFDVDtBQUFDO0FBRUQsQUFBRzs7K0NBQUksQUFBWSxNQUNqQjtZQUFJLEFBQU0sU0FBRyxBQUFJLEtBQUMsQUFBTSxBQUFDLEFBQ3pCLEFBQUUsQUFBQztZQUFFLEFBQWUsUUFBSSxBQUFNLEFBQUMsUUFBQyxBQUFNLE9BQUMsQUFBTSxPQUFDLEFBQUksQUFBQyxBQUFDLEFBQ3BELEFBQU0sQUFBQztlQUFDLEFBQU0sT0FBQyxBQUFJLEFBQUMsUUFBRyxJQUFJLEFBQWEsY0FBQyxBQUFJLE1BQUUsQUFBSSxBQUFDLEFBQUMsQUFBQyxBQUN4RCxBQUFDO0FBRUQsQUFBUTs7eURBQUksQUFBWSxNQUN0QjtZQUFJLEFBQU0sU0FBRyxBQUFJLEtBQUMsQUFBTSxBQUFDLEFBQ3pCLEFBQUUsQUFBQztZQUFFLEFBQWUsUUFBSSxBQUFNLEFBQUMsUUFBQyxBQUFNLE9BQUMsQUFBTSxPQUFDLEFBQUksQUFBQyxBQUFDLEFBQ3BELEFBQU07ZUFBQyxBQUFJLEFBQUMsQUFDZCxBQUFDO0FBRUQsQUFBSTs7aURBQUMsQUFBYyxRQUNqQixBQUFNO2VBQUMsQUFBSSxLQUFDLEFBQWtCLG1CQUFDLEFBQU0sT0FBQyxBQUFLLE1BQUMsQUFBRyxBQUFDLEFBQUMsQUFBQyxBQUNwRCxBQUFDO0FBRUQsQUFBa0I7OzZFQUFDLEFBQWUsT0FDaEMsQUFBTTtxQkFBTyxBQUFNLGlCQUNoQixBQUFHLEtBQUUsQUFBSTtBQUFWLG1CQUFlLEFBQUcsSUFBQyxBQUFHLElBQUMsQUFBSSxBQUEyQjtTQURqRCxBQUFLLEVBRVYsQUFBOEIsQUFDL0IsQUFBQyxBQUNKLEFBQUM7QUFFRCxBQUFLOztxREFDSCxBQUFNO2VBQUMsQUFBa0IsQUFBQyxBQUM1QixBQUFDLEFBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPcHRpb24sIE9wYXF1ZSwgZGljdCB9IGZyb20gJ0BnbGltbWVyL3V0aWwnO1xuaW1wb3J0IHsgUGF0aFJlZmVyZW5jZSB9IGZyb20gJy4vcGF0aCc7XG5pbXBvcnQgeyBSb290UmVmZXJlbmNlIGFzIElSb290UmVmZXJlbmNlIH0gZnJvbSAnLi4vdHlwZXMnO1xuaW1wb3J0IHsgUGF0aFJlZmVyZW5jZSBhcyBJUGF0aFJlZmVyZW5jZSwgVGFnLCBDVVJSRU5UX1RBRywgYnVtcCB9IGZyb20gJ0BnbGltbWVyL3JlZmVyZW5jZSc7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFJvb3RSZWZlcmVuY2U8VD4gaW1wbGVtZW50cyBJUm9vdFJlZmVyZW5jZTxUPiwgSVBhdGhSZWZlcmVuY2U8VD4ge1xuICBwcml2YXRlIG9iamVjdDogVDtcbiAgcHJpdmF0ZSBjaGFpbnMgPSBkaWN0PFBhdGhSZWZlcmVuY2U8YW55Pj4oKTtcbiAgcHVibGljIHRhZzogVGFnID0gQ1VSUkVOVF9UQUc7XG5cbiAgY29uc3RydWN0b3Iob2JqZWN0OiBUKSB7XG4gICAgdGhpcy5vYmplY3QgPSBvYmplY3Q7XG4gIH1cblxuICB2YWx1ZSgpOiBUIHtcbiAgICByZXR1cm4gdGhpcy5vYmplY3Q7XG4gIH1cblxuICB1cGRhdGUob2JqZWN0OiBUKSB7XG4gICAgdGhpcy5vYmplY3QgPSBvYmplY3Q7XG4gICAgYnVtcCgpO1xuICB9XG5cbiAgZ2V0PFU+KHByb3A6IHN0cmluZyk6IElQYXRoUmVmZXJlbmNlPFU+IHtcbiAgICBsZXQgY2hhaW5zID0gdGhpcy5jaGFpbnM7XG4gICAgaWYgKChwcm9wIGFzIHN0cmluZykgaW4gY2hhaW5zKSByZXR1cm4gY2hhaW5zW3Byb3BdO1xuICAgIHJldHVybiAoY2hhaW5zW3Byb3BdID0gbmV3IFBhdGhSZWZlcmVuY2UodGhpcywgcHJvcCkpO1xuICB9XG5cbiAgY2hhaW5Gb3I8VT4ocHJvcDogc3RyaW5nKTogT3B0aW9uPElQYXRoUmVmZXJlbmNlPFU+PiB7XG4gICAgbGV0IGNoYWlucyA9IHRoaXMuY2hhaW5zO1xuICAgIGlmICgocHJvcCBhcyBzdHJpbmcpIGluIGNoYWlucykgcmV0dXJuIGNoYWluc1twcm9wXTtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIHBhdGgoc3RyaW5nOiBzdHJpbmcpOiBJUGF0aFJlZmVyZW5jZTxPcGFxdWU+IHtcbiAgICByZXR1cm4gdGhpcy5yZWZlcmVuY2VGcm9tUGFydHMoc3RyaW5nLnNwbGl0KCcuJykpO1xuICB9XG5cbiAgcmVmZXJlbmNlRnJvbVBhcnRzKHBhcnRzOiBzdHJpbmdbXSk6IElQYXRoUmVmZXJlbmNlPE9wYXF1ZT4ge1xuICAgIHJldHVybiBwYXJ0cy5yZWR1Y2UoXG4gICAgICAocmVmLCBwYXJ0KSA9PiByZWYuZ2V0KHBhcnQpIGFzIElQYXRoUmVmZXJlbmNlPE9wYXF1ZT4sXG4gICAgICB0aGlzIGFzIElQYXRoUmVmZXJlbmNlPE9wYXF1ZT5cbiAgICApO1xuICB9XG5cbiAgbGFiZWwoKSB7XG4gICAgcmV0dXJuICdbcmVmZXJlbmNlIFJvb3RdJztcbiAgfVxufVxuIl19

@@ -1,3 +0,3 @@

export { ComputedReferenceBlueprint, InnerReferenceFactory, PropertyReference } from "./lib/references/descriptors";
export { CLASS_META, default as Meta, metaFor } from "./lib/meta";
export { ComputedReferenceBlueprint, InnerReferenceFactory, PropertyReference } from './lib/references/descriptors';
export { CLASS_META, default as Meta, metaFor } from './lib/meta';
export { setProperty, notifyProperty } from './lib/object';

@@ -4,0 +4,0 @@ export * from './lib/types';

{
"name": "@glimmer/object-reference",
"version": "0.34.2",
"version": "0.34.3",
"description": "References for a Glimmer-compatible object model",

@@ -8,4 +8,4 @@ "repository": "https://github.com/glimmerjs/glimmer-vm/tree/master/packages/@glimmer/object-reference",

"dependencies": {
"@glimmer/util": "^0.34.2",
"@glimmer/reference": "^0.34.2"
"@glimmer/util": "^0.34.3",
"@glimmer/reference": "^0.34.3"
},

@@ -12,0 +12,0 @@ "devDependencies": {

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