@vendasta/marketplace-apps 4.35.0 → 4.37.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLXByaWNlLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL21hcmtldHBsYWNlX2FwcHNfc2RrL3NyYy9saWIvX2ludGVybmFsL2ludGVyZmFjZXMvYXBwLXByaWNlLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyBDb2RlIGdlbmVyYXRlZCBieSBzZGtnZW5cbi8vIERPIE5PVCBFRElUIS5cbi8vXG4vLyBJbnRlcmZhY2VzLlxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5pbXBvcnQgeyBGZWVJbnRlcmZhY2UgfSBmcm9tICcuL2ZlZS5pbnRlcmZhY2UnO1xuaW1wb3J0ICogYXMgZSBmcm9tICcuLi9lbnVtcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXBwUHJpY2VJbnRlcmZhY2Uge1xuICAgIGFwcElkPzogc3RyaW5nO1xuICAgIGRpc3BsYXlPdmVycmlkZT86IGUuUHJpY2VEaXNwbGF5T3ZlcnJpZGU7XG4gICAgYmlsbGluZ0NvbmZpZ3VyYXRpb24/OiBCaWxsaW5nQ29uZmlndXJhdGlvbkludGVyZmFjZTtcbiAgICBwcmljZXNGb3JFZGl0aW9ucz86IHtba2V5OiBzdHJpbmddOiBVbml0UHJpY2VJbnRlcmZhY2V9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFwcFByaWNlc0ludGVyZmFjZSB7XG4gICAgYXBwSWQ/OiBzdHJpbmc7XG4gICAgcHJpY2VzRm9yQ29udGV4dHM/OiB7W2tleTogc3RyaW5nXTogQXBwUHJpY2VJbnRlcmZhY2V9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEJpbGxpbmdDb25maWd1cmF0aW9uSW50ZXJmYWNlIHtcbiAgICB1c2VzVmFyaWFibGVQcmljaW5nPzogYm9vbGVhbjtcbiAgICB1c2VzQ29tcG9uZW50UHJpY2luZz86IGJvb2xlYW47XG4gICAgdXNlc0VkaXRpb25zPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb21taXRtZW50SW50ZXJmYWNlIHtcbiAgICBpbml0aWFsPzogbnVtYmVyO1xuICAgIHJlY3VycmluZz86IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEaXNjb3VudEludGVyZmFjZSB7XG4gICAgZGlzY291bnRUeXBlPzogZS5EaXNjb3VudFR5cGU7XG4gICAgYW1vdW50PzogbnVtYmVyO1xuICAgIHN0YXJ0PzogRGF0ZTtcbiAgICBlbmQ/OiBEYXRlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZyZXF1ZW5jeVByaWNlSW50ZXJmYWNlIHtcbiAgICBmcmVxdWVuY3k/OiBlLlVuaXRCaWxsaW5nRnJlcXVlbmN5O1xuICAgIHNldHVwRmVlPzogbnVtYmVyO1xuICAgIGNvbW1pdG1lbnQ/OiBDb21taXRtZW50SW50ZXJmYWNlO1xuICAgIHByaWNpbmdSdWxlcz86IFByaWNpbmdSdWxlSW50ZXJmYWNlW107XG4gICAgaW5zdGFuY2VQcmljZT86IEluc3RhbmNlUHJpY2VJbnRlcmZhY2U7XG4gICAgZmVlcz86IEZlZUludGVyZmFjZVtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZyZXF1ZW5jeVByaWNlc0ludGVyZmFjZSB7XG4gICAgcHJpY2VzRm9yRnJlcXVlbmNpZXM/OiBGcmVxdWVuY3lQcmljZUludGVyZmFjZVtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEluc3RhbmNlUHJpY2VJbnRlcmZhY2Uge1xuICAgIHRvdGFsPzogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFwcFByaWNlc1ByaWNlc0ZvckNvbnRleHRzRW50cnlJbnRlcmZhY2Uge1xuICAgIGtleT86IHN0cmluZztcbiAgICB2YWx1ZT86IEFwcFByaWNlSW50ZXJmYWNlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFVuaXRQcmljZVByaWNlc0ZvckN1cnJlbmNpZXNFbnRyeUludGVyZmFjZSB7XG4gICAga2V5Pzogc3RyaW5nO1xuICAgIHZhbHVlPzogRnJlcXVlbmN5UHJpY2VzSW50ZXJmYWNlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFwcFByaWNlUHJpY2VzRm9yRWRpdGlvbnNFbnRyeUludGVyZmFjZSB7XG4gICAga2V5Pzogc3RyaW5nO1xuICAgIHZhbHVlPzogVW5pdFByaWNlSW50ZXJmYWNlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFByaWNpbmdSdWxlSW50ZXJmYWNlIHtcbiAgICBwcmljZT86IG51bWJlcjtcbiAgICBtYXg/OiBudW1iZXI7XG4gICAgbWluPzogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJlcXVlc3RlZEFwcEludGVyZmFjZSB7XG4gICAgYXBwSWQ/OiBzdHJpbmc7XG4gICAgcXVhbnRpdHk/OiBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVW5pdFByaWNlSW50ZXJmYWNlIHtcbiAgICBwcmljZXNGb3JDdXJyZW5jaWVzPzoge1trZXk6IHN0cmluZ106IEZyZXF1ZW5jeVByaWNlc0ludGVyZmFjZX07XG4gICAgZGlzY291bnQ/OiBEaXNjb3VudEludGVyZmFjZVtdO1xufVxuXG4iXX0=
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLXByaWNlLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL21hcmtldHBsYWNlX2FwcHNfc2RrL3NyYy9saWIvX2ludGVybmFsL2ludGVyZmFjZXMvYXBwLXByaWNlLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyBDb2RlIGdlbmVyYXRlZCBieSBzZGtnZW5cbi8vIERPIE5PVCBFRElUIS5cbi8vXG4vLyBJbnRlcmZhY2VzLlxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5pbXBvcnQgeyBGZWVJbnRlcmZhY2UgfSBmcm9tICcuL2ZlZS5pbnRlcmZhY2UnO1xuaW1wb3J0ICogYXMgZSBmcm9tICcuLi9lbnVtcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXBwUHJpY2VJbnRlcmZhY2Uge1xuICAgIGFwcElkPzogc3RyaW5nO1xuICAgIGRpc3BsYXlPdmVycmlkZT86IGUuUHJpY2VEaXNwbGF5T3ZlcnJpZGU7XG4gICAgYmlsbGluZ0NvbmZpZ3VyYXRpb24/OiBCaWxsaW5nQ29uZmlndXJhdGlvbkludGVyZmFjZTtcbiAgICBwcmljZXNGb3JFZGl0aW9ucz86IHtba2V5OiBzdHJpbmddOiBVbml0UHJpY2VJbnRlcmZhY2V9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFwcFByaWNlc0ludGVyZmFjZSB7XG4gICAgYXBwSWQ/OiBzdHJpbmc7XG4gICAgcHJpY2VzRm9yQ29udGV4dHM/OiB7W2tleTogc3RyaW5nXTogQXBwUHJpY2VJbnRlcmZhY2V9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEJpbGxpbmdDb25maWd1cmF0aW9uSW50ZXJmYWNlIHtcbiAgICB1c2VzVmFyaWFibGVQcmljaW5nPzogYm9vbGVhbjtcbiAgICB1c2VzQ29tcG9uZW50UHJpY2luZz86IGJvb2xlYW47XG4gICAgdXNlc0VkaXRpb25zPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb21taXRtZW50SW50ZXJmYWNlIHtcbiAgICBpbml0aWFsPzogbnVtYmVyO1xuICAgIHJlY3VycmluZz86IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEaXNjb3VudEludGVyZmFjZSB7XG4gICAgZGlzY291bnRUeXBlPzogZS5EaXNjb3VudFR5cGU7XG4gICAgYW1vdW50PzogbnVtYmVyO1xuICAgIHN0YXJ0PzogRGF0ZTtcbiAgICBlbmQ/OiBEYXRlO1xuICAgIGN1c3RvbWVySWQ/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRnJlcXVlbmN5UHJpY2VJbnRlcmZhY2Uge1xuICAgIGZyZXF1ZW5jeT86IGUuVW5pdEJpbGxpbmdGcmVxdWVuY3k7XG4gICAgc2V0dXBGZWU/OiBudW1iZXI7XG4gICAgY29tbWl0bWVudD86IENvbW1pdG1lbnRJbnRlcmZhY2U7XG4gICAgcHJpY2luZ1J1bGVzPzogUHJpY2luZ1J1bGVJbnRlcmZhY2VbXTtcbiAgICBpbnN0YW5jZVByaWNlPzogSW5zdGFuY2VQcmljZUludGVyZmFjZTtcbiAgICBmZWVzPzogRmVlSW50ZXJmYWNlW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRnJlcXVlbmN5UHJpY2VzSW50ZXJmYWNlIHtcbiAgICBwcmljZXNGb3JGcmVxdWVuY2llcz86IEZyZXF1ZW5jeVByaWNlSW50ZXJmYWNlW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSW5zdGFuY2VQcmljZUludGVyZmFjZSB7XG4gICAgdG90YWw/OiBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXBwUHJpY2VzUHJpY2VzRm9yQ29udGV4dHNFbnRyeUludGVyZmFjZSB7XG4gICAga2V5Pzogc3RyaW5nO1xuICAgIHZhbHVlPzogQXBwUHJpY2VJbnRlcmZhY2U7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVW5pdFByaWNlUHJpY2VzRm9yQ3VycmVuY2llc0VudHJ5SW50ZXJmYWNlIHtcbiAgICBrZXk/OiBzdHJpbmc7XG4gICAgdmFsdWU/OiBGcmVxdWVuY3lQcmljZXNJbnRlcmZhY2U7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXBwUHJpY2VQcmljZXNGb3JFZGl0aW9uc0VudHJ5SW50ZXJmYWNlIHtcbiAgICBrZXk/OiBzdHJpbmc7XG4gICAgdmFsdWU/OiBVbml0UHJpY2VJbnRlcmZhY2U7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUHJpY2luZ1J1bGVJbnRlcmZhY2Uge1xuICAgIHByaWNlPzogbnVtYmVyO1xuICAgIG1heD86IG51bWJlcjtcbiAgICBtaW4/OiBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmVxdWVzdGVkQXBwSW50ZXJmYWNlIHtcbiAgICBhcHBJZD86IHN0cmluZztcbiAgICBxdWFudGl0eT86IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBVbml0UHJpY2VJbnRlcmZhY2Uge1xuICAgIHByaWNlc0ZvckN1cnJlbmNpZXM/OiB7W2tleTogc3RyaW5nXTogRnJlcXVlbmN5UHJpY2VzSW50ZXJmYWNlfTtcbiAgICBkaXNjb3VudD86IERpc2NvdW50SW50ZXJmYWNlW107XG59XG5cbiJdfQ==
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9tYXJrZXRwbGFjZV9hcHBzX3Nkay9zcmMvbGliL19pbnRlcm5hbC9pbnRlcmZhY2VzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vIENvZGUgZ2VuZXJhdGVkIGJ5IHNka2dlblxuLy8gRE8gTk9UIEVESVQhLlxuLy9cbi8vIEludGVyZmFjZXMgSW5kZXguXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbmV4cG9ydCB7XG4gICAgQWN0aXZhdGlvbkluZm9ybWF0aW9uSW50ZXJmYWNlLFxuICAgIEFwcEludGVyZmFjZSxcbiAgICBBcHBLZXlJbnRlcmZhY2UsXG4gICAgQXBwTGV2ZWxBZG1pbkRhc2hib2FyZEVuYWJsZWRJbnRlcmZhY2UsXG4gICAgQXBwUmVzdHJpY3Rpb25zSW50ZXJmYWNlLFxuICAgIEJhc2ljSW50ZWdyYXRpb25JbnRlcmZhY2UsXG4gICAgQ2hpbGRBcHBJbnRlcmZhY2UsXG4gICAgUmVxdWlyZWRQYXJlbnREZXRhaWxzSW50ZXJmYWNlLFxuICAgIEVkaXRpb25JbnRlcmZhY2UsXG4gICAgRWRpdGlvbklkZW50aWZpZXJJbnRlcmZhY2UsXG4gICAgRWRpdGlvbkluZm9ybWF0aW9uSW50ZXJmYWNlLFxuICAgIEVuZFVzZXJNYXJrZXRpbmdJbmZvcm1hdGlvbkludGVyZmFjZSxcbiAgICBFeHRlcm5hbElkZW50aWZpZXJzSW50ZXJmYWNlLFxuICAgIEZyZXF1ZW50bHlBc2tlZFF1ZXN0aW9uc0ludGVyZmFjZSxcbiAgICBQZXJtaXNzaW9uTGlzdHNJbnRlcmZhY2UsXG4gICAgUHJpY2VJbnRlcmZhY2UsXG4gICAgUmVxdWlyZWRCdXNpbmVzc0RhdGFJbnRlcmZhY2UsXG4gICAgUmVxdWlyZWRQYXJlbnRJbnRlcmZhY2UsXG4gICAgU1NPSW50ZWdyYXRpb25JbnRlcmZhY2UsXG4gICAgU2hhcmVkTWFya2V0aW5nSW5mb3JtYXRpb25JbnRlcmZhY2UsXG4gICAgVHJpYWxDb25maWd1cmF0aW9uSW50ZXJmYWNlLFxufSBmcm9tICcuL21hcmtldHBsYWNlLWFwcC5pbnRlcmZhY2UnO1xuXG5leHBvcnQge1xuICAgIEFwcExldmVsQWRtaW5EYXNoYm9hcmRJbnRlcmZhY2UsXG4gICAgQXBwU2V0dGluZ3NJbnRlcmZhY2UsXG4gICAgQXV0b0FjdGl2YXRpb25JbnRlcmZhY2UsXG4gICAgQnJhbmRpbmdJbnRlcmZhY2UsXG4gICAgRWRpdGlvbkNoYW5nZUludGVyZmFjZSxcbiAgICBUcmlhbEludGVyZmFjZSxcbn0gZnJvbSAnLi9hcHAtc2V0dGluZ3MuaW50ZXJmYWNlJztcblxuZXhwb3J0IHtcbiAgICBVcGdyYWRlRGlhbG9nQ29udGVudEludGVyZmFjZSxcbn0gZnJvbSAnLi91cGdyYWRlLWRpYWxvZy1jb250ZW50LmludGVyZmFjZSc7XG5cbmV4cG9ydCB7XG4gICAgQWNjZXNzSW50ZXJmYWNlLFxufSBmcm9tICcuL2Fubm90YXRpb25zLmludGVyZmFjZSc7XG5cbmV4cG9ydCB7XG4gICAgRmllbGRNYXNrSW50ZXJmYWNlLFxufSBmcm9tICcuL2ZpZWxkLW1hc2suaW50ZXJmYWNlJztcblxuZXhwb3J0IHtcbiAgICBBcHBLZXlXaXRoUXVhbnRpdHlJbnRlcmZhY2UsXG4gICAgR2V0QXBwU2V0dGluZ3NSZXF1ZXN0SW50ZXJmYWNlLFxuICAgIEdldEFwcFNldHRpbmdzUmVzcG9uc2VJbnRlcmZhY2UsXG4gICAgR2V0TXVsdGlBcHBSZXF1ZXN0SW50ZXJmYWNlLFxuICAgIEdldE11bHRpQXBwUmVzcG9uc2VJbnRlcmZhY2UsXG4gICAgR2V0UHVyY2hhc2VMaW5rUmVxdWVzdEludGVyZmFjZSxcbiAgICBHZXRQdXJjaGFzZUxpbmtSZXNwb25zZUludGVyZmFjZSxcbiAgICBHZXRVcGdyYWRlRGlhbG9nQ29udGVudFJlcXVlc3RJbnRlcmZhY2UsXG4gICAgR2V0VXBncmFkZURpYWxvZ0NvbnRlbnRSZXNwb25zZUludGVyZmFjZSxcbiAgICBMaXN0QXBwU2V0dGluZ3NSZXF1ZXN0SW50ZXJmYWNlLFxuICAgIExpc3RBcHBTZXR0aW5nc1Jlc3BvbnNlSW50ZXJmYWNlLFxuICAgIExpc3RQYXJ0bmVyRW5hYmxlZEFwcHNSZXF1ZXN0TGlzdEFwcHNGaWx0ZXJJbnRlcmZhY2UsXG4gICAgTGlzdFBhcnRuZXJFbmFibGVkQXBwc1JlcXVlc3RJbnRlcmZhY2UsXG4gICAgTGlzdFBhcnRuZXJFbmFibGVkQXBwc1Jlc3BvbnNlSW50ZXJmYWNlLFxuICAgIFByb2R1Y3RTdWdnZXN0aW9uSW50ZXJmYWNlLFxuICAgIFJlcGxhY2VBcHBTZXR0aW5nc1JlcXVlc3RJbnRlcmZhY2UsXG4gICAgUmVwbGFjZUFwcFNldHRpbmdzUmVzcG9uc2VJbnRlcmZhY2UsXG4gICAgUmVwbGFjZVVwZ3JhZGVEaWFsb2dDb250ZW50UmVxdWVzdEludGVyZmFjZSxcbiAgICBTdWdnZXN0UHJvZHVjdFJlcXVlc3RJbnRlcmZhY2UsXG59IGZyb20gJy4vcGFydG5lci1hcGkuaW50ZXJmYWNlJztcblxuZXhwb3J0IHtcbiAgICBBcHBUYWdJbnRlcmZhY2UsXG4gICAgR2V0TXVsdGlBcHBEYXRhUmVxdWVzdEludGVyZmFjZSxcbiAgICBHZXRNdWx0aUFwcERhdGFSZXNwb25zZUludGVyZmFjZSxcbiAgICBLaW5kVmFsdWVzSW50ZXJmYWNlLFxuICAgIExpc3RBcHBJRHNCeU11bHRpVGFnUmVxdWVzdEludGVyZmFjZSxcbiAgICBMaXN0QXBwSURzQnlNdWx0aVRhZ1Jlc3BvbnNlSW50ZXJmYWNlLFxuICAgIExpc3RCeU11bHRpVGFnUmVxdWVzdEludGVyZmFjZSxcbiAgICBMaXN0QnlNdWx0aVRhZ1Jlc3BvbnNlSW50ZXJmYWNlLFxuICAgIExpc3RWYWx1ZXNCeU11bHRpS2luZFJlcXVlc3RJbnRlcmZhY2UsXG4gICAgTGlzdFZhbHVlc0J5TXVsdGlLaW5kUmVzcG9uc2VJbnRlcmZhY2UsXG4gICAgTWFya2V0cGxhY2VBcHBJbnRlcmZhY2UsXG4gICAgU2NvcGVkVGFnSW50ZXJmYWNlLFxuICAgIFRhZ0ludGVyZmFjZSxcbiAgICBUYWdBcHBzUmVxdWVzdEludGVyZmFjZSxcbiAgICBVbnRhZ0FwcHNSZXF1ZXN0SW50ZXJmYWNlLFxufSBmcm9tICcuL2FwcC1kYXRhLWFwaS5pbnRlcmZhY2UnO1xuXG5leHBvcnQge1xuICAgIEFjdGl2YXRhYmxlSXRlbVN1bW1hcnlJbnRlcmZhY2UsXG4gICAgSXRlbUludGVyZmFjZSxcbiAgICBSZXF1aXJlZEl0ZW1JbnRlcmZhY2UsXG59IGZyb20gJy4vaXRlbS5pbnRlcmZhY2UnO1xuXG5leHBvcnQge1xuICAgIEl0ZW1JZGVudGlmaWVySW50ZXJmYWNlLFxuICAgIExpc3REZXBlbmRlbmNpZXNSZXF1ZXN0SW50ZXJmYWNlLFxuICAgIExpc3REZXBlbmRlbmNpZXNSZXF1aXJlZEl0ZW1JbnRlcmZhY2UsXG4gICAgTGlzdERlcGVuZGVuY2llc1JlcXVpcmVkSXRlbXNJbnRlcmZhY2UsXG4gICAgTGlzdERlcGVuZGVuY2llc1Jlc3BvbnNlSW50ZXJmYWNlLFxuICAgIExpc3REZXBlbmRlbmNpZXNSZXNwb25zZU1pc3NpbmdJdGVtc0VudHJ5SW50ZXJmYWNlLFxufSBmcm9tICcuL2l0ZW0tZGVwZW5kZW5jeS5pbnRlcmZhY2UnO1xuXG5leHBvcnQge1xuICAgIExpc3RBY3RpdmF0YWJsZUl0ZW1zRmlsdGVyc0ludGVyZmFjZSxcbiAgICBMaXN0QWN0aXZhdGFibGVJdGVtc1JlcXVlc3RJbnRlcmZhY2UsXG4gICAgTGlzdEFjdGl2YXRhYmxlSXRlbXNSZXNwb25zZUludGVyZmFjZSxcbiAgICBMaXN0QWN0aXZhdGFibGVJdGVtc1NvcnRPcHRpb25zSW50ZXJmYWNlLFxuICAgIExpc3RPd25lZEl0ZW1zRmlsdGVyT3B0aW9uc0ludGVyZmFjZSxcbiAgICBMaXN0T3duZWRJdGVtc1JlcXVlc3RJbnRlcmZhY2UsXG4gICAgTGlzdE93bmVkSXRlbXNSZXNwb25zZUludGVyZmFjZSxcbn0gZnJvbSAnLi9pdGVtcy1hcGkuaW50ZXJmYWNlJztcblxuZXhwb3J0IHtcbiAgICBEZWxldGVDYXRlZ29yeVJlcXVlc3RJbnRlcmZhY2UsXG4gICAgR2V0Q2F0ZWdvcmllc1JlcXVlc3RJbnRlcmZhY2UsXG4gICAgR2V0Q2F0ZWdvcmllc1Jlc3BvbnNlSW50ZXJmYWNlLFxuICAgIE1hcmtldHBsYWNlQ2F0ZWdvcnlJbnRlcmZhY2UsXG4gICAgVXBzZXJ0UmVxdWVzdEludGVyZmFjZSxcbiAgICBVcHNlcnRSZXNwb25zZUludGVyZmFjZSxcbn0gZnJvbSAnLi9jYXRlZ29yeS1hcGkuaW50ZXJmYWNlJztcblxuZXhwb3J0IHtcbiAgICBGZWVJbnRlcmZhY2UsXG59IGZyb20gJy4vZmVlLmludGVyZmFjZSc7XG5cbmV4cG9ydCB7XG4gICAgQXBwUHJpY2VJbnRlcmZhY2UsXG4gICAgQXBwUHJpY2VzSW50ZXJmYWNlLFxuICAgIEJpbGxpbmdDb25maWd1cmF0aW9uSW50ZXJmYWNlLFxuICAgIENvbW1pdG1lbnRJbnRlcmZhY2UsXG4gICAgRGlzY291bnRJbnRlcmZhY2UsXG4gICAgRnJlcXVlbmN5UHJpY2VJbnRlcmZhY2UsXG4gICAgRnJlcXVlbmN5UHJpY2VzSW50ZXJmYWNlLFxuICAgIEluc3RhbmNlUHJpY2VJbnRlcmZhY2UsXG4gICAgQXBwUHJpY2VzUHJpY2VzRm9yQ29udGV4dHNFbnRyeUludGVyZmFjZSxcbiAgICBVbml0UHJpY2VQcmljZXNGb3JDdXJyZW5jaWVzRW50cnlJbnRlcmZhY2UsXG4gICAgQXBwUHJpY2VQcmljZXNGb3JFZGl0aW9uc0VudHJ5SW50ZXJmYWNlLFxuICAgIFByaWNpbmdSdWxlSW50ZXJmYWNlLFxuICAgIFJlcXVlc3RlZEFwcEludGVyZmFjZSxcbiAgICBVbml0UHJpY2VJbnRlcmZhY2UsXG59IGZyb20gJy4vYXBwLXByaWNlLmludGVyZmFjZSc7XG5cbmV4cG9ydCB7XG4gICAgR2V0TXVsdGlQcmljaW5nUmVxdWVzdEludGVyZmFjZSxcbiAgICBHZXRNdWx0aVByaWNpbmdSZXNwb25zZUludGVyZmFjZSxcbn0gZnJvbSAnLi9hcHAtcHJpY2UtYXBpLmludGVyZmFjZSc7XG5cbmV4cG9ydCB7XG4gICAgUGFnZWRSZXF1ZXN0T3B0aW9uc0ludGVyZmFjZSxcbiAgICBQYWdlZFJlc3BvbnNlTWV0YWRhdGFJbnRlcmZhY2UsXG59IGZyb20gJy4vcGFnaW5nLmludGVyZmFjZSc7XG5cbmV4cG9ydCB7XG4gICAgQXJjaGl2ZUF1eGlsaWFyeURhdGFGaWVsZFNjaGVtYVJlcXVlc3RJbnRlcmZhY2UsXG4gICAgQXV4aWxpYXJ5RGF0YUZpZWxkU2NoZW1hSW50ZXJmYWNlLFxuICAgIEF1eGlsaWFyeURhdGFPYmplY3RJREludGVyZmFjZSxcbiAgICBDcmVhdGVBdXhpbGlhcnlEYXRhRmllbGRTY2hlbWFSZXF1ZXN0SW50ZXJmYWNlLFxuICAgIERyb3Bkb3duT3B0aW9uSW50ZXJmYWNlLFxuICAgIEZpZWxkRGF0YVVwc2VydE9wZXJhdGlvbkludGVyZmFjZSxcbiAgICBGaWVsZFNjaGVtYUlkZW50aWZpZXJJbnRlcmZhY2UsXG4gICAgTGlzdEF1eGlsaWFyeURhdGFGaWVsZFNjaGVtYVJlcXVlc3RGaWx0ZXJzSW50ZXJmYWNlLFxuICAgIEdldEF1eGlsaWFyeURhdGFGaWVsZFNjaGVtYVJlcXVlc3RJbnRlcmZhY2UsXG4gICAgR2V0QXV4aWxpYXJ5RGF0YUZpZWxkU2NoZW1hUmVzcG9uc2VJbnRlcmZhY2UsXG4gICAgR2V0TXVsdGlBdXhpbGlhcnlEYXRhRmllbGRTY2hlbWFSZXF1ZXN0SW50ZXJmYWNlLFxuICAgIEdldE11bHRpQXV4aWxpYXJ5RGF0YUZpZWxkU2NoZW1hUmVzcG9uc2VJbnRlcmZhY2UsXG4gICAgTGlzdEF1eGlsaWFyeURhdGFGaWVsZFNjaGVtYVJlcXVlc3RJbnRlcmZhY2UsXG4gICAgTGlzdEF1eGlsaWFyeURhdGFGaWVsZFNjaGVtYVJlc3BvbnNlSW50ZXJmYWNlLFxuICAgIExpc3RBdXhpbGlhcnlEYXRhUmVxdWVzdEludGVyZmFjZSxcbiAgICBMaXN0QXV4aWxpYXJ5RGF0YVJlc3BvbnNlSW50ZXJmYWNlLFxuICAgIFVuYXJjaGl2ZUF1eGlsaWFyeURhdGFGaWVsZFNjaGVtYVJlcXVlc3RJbnRlcmZhY2UsXG4gICAgVXBkYXRlQXV4aWxpYXJ5RGF0YUZpZWxkU2NoZW1hUmVxdWVzdEludGVyZmFjZSxcbiAgICBVcHNlcnRBdXhpbGlhcnlEYXRhUmVxdWVzdEludGVyZmFjZSxcbn0gZnJvbSAnLi9maWVsZHMuaW50ZXJmYWNlJztcblxuZXhwb3J0IHtcbiAgICBJbmNsdWRlZENvbW1vbkZvcm1GaWVsZHNJbnRlcmZhY2UsXG4gICAgT3JkZXJGb3JtRmllbGRPcHRpb25JbnRlcmZhY2UsXG4gICAgT3JkZXJGb3JtSW50ZXJmYWNlLFxuICAgIE9yZGVyRm9ybUZpZWxkSW50ZXJmYWNlLFxufSBmcm9tICcuL29yZGVyLWZvcm0uaW50ZXJmYWNlJztcblxuZXhwb3J0IHtcbiAgICBGdWxmaWxsbWVudE9yZGVyQ29uZmlnSW50ZXJmYWNlLFxuICAgIEZ1bGZpbGxtZW50T3JkZXJDb25maWdQcm9qZWN0aW9uRmlsdGVySW50ZXJmYWNlLFxuICAgIEdldEZ1bGZpbGxtZW50T3JkZXJDb25maWdSZXF1ZXN0SW50ZXJmYWNlLFxuICAgIEdldEZ1bGZpbGxtZW50T3JkZXJDb25maWdSZXNwb25zZUludGVyZmFjZSxcbiAgICBVcGRhdGVGdWxmaWxsbWVudE9yZGVyQ29uZmlnUmVxdWVzdEludGVyZmFjZSxcbn0gZnJvbSAnLi9mdWxmaWxsbWVudC1vcmRlci1jb25maWcuaW50ZXJmYWNlJztcblxuIl19
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9tYXJrZXRwbGFjZV9hcHBzX3Nkay9zcmMvbGliL19pbnRlcm5hbC9pbnRlcmZhY2VzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vIENvZGUgZ2VuZXJhdGVkIGJ5IHNka2dlblxuLy8gRE8gTk9UIEVESVQhLlxuLy9cbi8vIEludGVyZmFjZXMgSW5kZXguXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbmV4cG9ydCB7XG4gICAgQWN0aXZhdGlvbkluZm9ybWF0aW9uSW50ZXJmYWNlLFxuICAgIEFwcEludGVyZmFjZSxcbiAgICBBcHBLZXlJbnRlcmZhY2UsXG4gICAgQXBwTGV2ZWxBZG1pbkRhc2hib2FyZEVuYWJsZWRJbnRlcmZhY2UsXG4gICAgQXBwUmVzdHJpY3Rpb25zSW50ZXJmYWNlLFxuICAgIEJhc2ljSW50ZWdyYXRpb25JbnRlcmZhY2UsXG4gICAgQ2hpbGRBcHBJbnRlcmZhY2UsXG4gICAgUmVxdWlyZWRQYXJlbnREZXRhaWxzSW50ZXJmYWNlLFxuICAgIEVkaXRpb25JbnRlcmZhY2UsXG4gICAgRWRpdGlvbklkZW50aWZpZXJJbnRlcmZhY2UsXG4gICAgRWRpdGlvbkluZm9ybWF0aW9uSW50ZXJmYWNlLFxuICAgIEVuZFVzZXJNYXJrZXRpbmdJbmZvcm1hdGlvbkludGVyZmFjZSxcbiAgICBFeHRlcm5hbElkZW50aWZpZXJzSW50ZXJmYWNlLFxuICAgIEZyZXF1ZW50bHlBc2tlZFF1ZXN0aW9uc0ludGVyZmFjZSxcbiAgICBQZXJtaXNzaW9uTGlzdHNJbnRlcmZhY2UsXG4gICAgUHJpY2VJbnRlcmZhY2UsXG4gICAgUmVxdWlyZWRCdXNpbmVzc0RhdGFJbnRlcmZhY2UsXG4gICAgUmVxdWlyZWRQYXJlbnRJbnRlcmZhY2UsXG4gICAgU1NPSW50ZWdyYXRpb25JbnRlcmZhY2UsXG4gICAgU2hhcmVkTWFya2V0aW5nSW5mb3JtYXRpb25JbnRlcmZhY2UsXG4gICAgVHJpYWxDb25maWd1cmF0aW9uSW50ZXJmYWNlLFxufSBmcm9tICcuL21hcmtldHBsYWNlLWFwcC5pbnRlcmZhY2UnO1xuXG5leHBvcnQge1xuICAgIEFwcExldmVsQWRtaW5EYXNoYm9hcmRJbnRlcmZhY2UsXG4gICAgQXBwU2V0dGluZ3NJbnRlcmZhY2UsXG4gICAgQXV0b0FjdGl2YXRpb25JbnRlcmZhY2UsXG4gICAgQnJhbmRpbmdJbnRlcmZhY2UsXG4gICAgRWRpdGlvbkNoYW5nZUludGVyZmFjZSxcbiAgICBUcmlhbEludGVyZmFjZSxcbn0gZnJvbSAnLi9hcHAtc2V0dGluZ3MuaW50ZXJmYWNlJztcblxuZXhwb3J0IHtcbiAgICBVcGdyYWRlRGlhbG9nQ29udGVudEludGVyZmFjZSxcbn0gZnJvbSAnLi91cGdyYWRlLWRpYWxvZy1jb250ZW50LmludGVyZmFjZSc7XG5cbmV4cG9ydCB7XG4gICAgQWNjZXNzSW50ZXJmYWNlLFxufSBmcm9tICcuL2Fubm90YXRpb25zLmludGVyZmFjZSc7XG5cbmV4cG9ydCB7XG4gICAgRmllbGRNYXNrSW50ZXJmYWNlLFxufSBmcm9tICcuL2ZpZWxkLW1hc2suaW50ZXJmYWNlJztcblxuZXhwb3J0IHtcbiAgICBBcHBLZXlXaXRoUXVhbnRpdHlJbnRlcmZhY2UsXG4gICAgR2V0QXBwU2V0dGluZ3NSZXF1ZXN0SW50ZXJmYWNlLFxuICAgIEdldEFwcFNldHRpbmdzUmVzcG9uc2VJbnRlcmZhY2UsXG4gICAgR2V0TXVsdGlBcHBSZXF1ZXN0SW50ZXJmYWNlLFxuICAgIEdldE11bHRpQXBwUmVzcG9uc2VJbnRlcmZhY2UsXG4gICAgR2V0UHVyY2hhc2VMaW5rUmVxdWVzdEludGVyZmFjZSxcbiAgICBHZXRQdXJjaGFzZUxpbmtSZXNwb25zZUludGVyZmFjZSxcbiAgICBHZXRVcGdyYWRlRGlhbG9nQ29udGVudFJlcXVlc3RJbnRlcmZhY2UsXG4gICAgR2V0VXBncmFkZURpYWxvZ0NvbnRlbnRSZXNwb25zZUludGVyZmFjZSxcbiAgICBMaXN0QXBwU2V0dGluZ3NSZXF1ZXN0SW50ZXJmYWNlLFxuICAgIExpc3RBcHBTZXR0aW5nc1Jlc3BvbnNlSW50ZXJmYWNlLFxuICAgIExpc3RQYXJ0bmVyRW5hYmxlZEFwcHNSZXF1ZXN0TGlzdEFwcHNGaWx0ZXJJbnRlcmZhY2UsXG4gICAgTGlzdFBhcnRuZXJFbmFibGVkQXBwc1JlcXVlc3RJbnRlcmZhY2UsXG4gICAgTGlzdFBhcnRuZXJFbmFibGVkQXBwc1Jlc3BvbnNlSW50ZXJmYWNlLFxuICAgIFByb2R1Y3RTdWdnZXN0aW9uSW50ZXJmYWNlLFxuICAgIFJlcGxhY2VBcHBTZXR0aW5nc1JlcXVlc3RJbnRlcmZhY2UsXG4gICAgUmVwbGFjZUFwcFNldHRpbmdzUmVzcG9uc2VJbnRlcmZhY2UsXG4gICAgUmVwbGFjZVVwZ3JhZGVEaWFsb2dDb250ZW50UmVxdWVzdEludGVyZmFjZSxcbiAgICBTdWdnZXN0UHJvZHVjdFJlcXVlc3RJbnRlcmZhY2UsXG59IGZyb20gJy4vcGFydG5lci1hcGkuaW50ZXJmYWNlJztcblxuZXhwb3J0IHtcbiAgICBBcHBUYWdJbnRlcmZhY2UsXG4gICAgR2V0TXVsdGlBcHBEYXRhUmVxdWVzdEludGVyZmFjZSxcbiAgICBHZXRNdWx0aUFwcERhdGFSZXNwb25zZUludGVyZmFjZSxcbiAgICBLaW5kVmFsdWVzSW50ZXJmYWNlLFxuICAgIExpc3RBcHBJRHNCeU11bHRpVGFnUmVxdWVzdEludGVyZmFjZSxcbiAgICBMaXN0QXBwSURzQnlNdWx0aVRhZ1Jlc3BvbnNlSW50ZXJmYWNlLFxuICAgIExpc3RCeU11bHRpVGFnUmVxdWVzdEludGVyZmFjZSxcbiAgICBMaXN0QnlNdWx0aVRhZ1Jlc3BvbnNlSW50ZXJmYWNlLFxuICAgIExpc3RWYWx1ZXNCeU11bHRpS2luZFJlcXVlc3RJbnRlcmZhY2UsXG4gICAgTGlzdFZhbHVlc0J5TXVsdGlLaW5kUmVzcG9uc2VJbnRlcmZhY2UsXG4gICAgTWFya2V0cGxhY2VBcHBJbnRlcmZhY2UsXG4gICAgU2NvcGVkVGFnSW50ZXJmYWNlLFxuICAgIFRhZ0ludGVyZmFjZSxcbiAgICBUYWdBcHBzUmVxdWVzdEludGVyZmFjZSxcbiAgICBVbnRhZ0FwcHNSZXF1ZXN0SW50ZXJmYWNlLFxufSBmcm9tICcuL2FwcC1kYXRhLWFwaS5pbnRlcmZhY2UnO1xuXG5leHBvcnQge1xuICAgIEFjdGl2YXRhYmxlSXRlbVN1bW1hcnlJbnRlcmZhY2UsXG4gICAgSXRlbUludGVyZmFjZSxcbiAgICBSZXF1aXJlZEl0ZW1JbnRlcmZhY2UsXG59IGZyb20gJy4vaXRlbS5pbnRlcmZhY2UnO1xuXG5leHBvcnQge1xuICAgIEVkaXRpb25SZXF1aXJlbWVudEludGVyZmFjZSxcbiAgICBJdGVtSWRlbnRpZmllckludGVyZmFjZSxcbiAgICBMaXN0RGVwZW5kZW5jaWVzUmVxdWVzdEludGVyZmFjZSxcbiAgICBMaXN0RGVwZW5kZW5jaWVzUmVxdWlyZWRJdGVtSW50ZXJmYWNlLFxuICAgIExpc3REZXBlbmRlbmNpZXNSZXF1aXJlZEl0ZW1zSW50ZXJmYWNlLFxuICAgIExpc3REZXBlbmRlbmNpZXNSZXNwb25zZUludGVyZmFjZSxcbiAgICBMaXN0RGVwZW5kZW5jaWVzUmVzcG9uc2VNaXNzaW5nSXRlbXNFbnRyeUludGVyZmFjZSxcbn0gZnJvbSAnLi9pdGVtLWRlcGVuZGVuY3kuaW50ZXJmYWNlJztcblxuZXhwb3J0IHtcbiAgICBMaXN0QWN0aXZhdGFibGVJdGVtc0ZpbHRlcnNJbnRlcmZhY2UsXG4gICAgTGlzdEFjdGl2YXRhYmxlSXRlbXNSZXF1ZXN0SW50ZXJmYWNlLFxuICAgIExpc3RBY3RpdmF0YWJsZUl0ZW1zUmVzcG9uc2VJbnRlcmZhY2UsXG4gICAgTGlzdEFjdGl2YXRhYmxlSXRlbXNTb3J0T3B0aW9uc0ludGVyZmFjZSxcbiAgICBMaXN0T3duZWRJdGVtc0ZpbHRlck9wdGlvbnNJbnRlcmZhY2UsXG4gICAgTGlzdE93bmVkSXRlbXNSZXF1ZXN0SW50ZXJmYWNlLFxuICAgIExpc3RPd25lZEl0ZW1zUmVzcG9uc2VJbnRlcmZhY2UsXG59IGZyb20gJy4vaXRlbXMtYXBpLmludGVyZmFjZSc7XG5cbmV4cG9ydCB7XG4gICAgRGVsZXRlQ2F0ZWdvcnlSZXF1ZXN0SW50ZXJmYWNlLFxuICAgIEdldENhdGVnb3JpZXNSZXF1ZXN0SW50ZXJmYWNlLFxuICAgIEdldENhdGVnb3JpZXNSZXNwb25zZUludGVyZmFjZSxcbiAgICBNYXJrZXRwbGFjZUNhdGVnb3J5SW50ZXJmYWNlLFxuICAgIFVwc2VydFJlcXVlc3RJbnRlcmZhY2UsXG4gICAgVXBzZXJ0UmVzcG9uc2VJbnRlcmZhY2UsXG59IGZyb20gJy4vY2F0ZWdvcnktYXBpLmludGVyZmFjZSc7XG5cbmV4cG9ydCB7XG4gICAgRmVlSW50ZXJmYWNlLFxufSBmcm9tICcuL2ZlZS5pbnRlcmZhY2UnO1xuXG5leHBvcnQge1xuICAgIEFwcFByaWNlSW50ZXJmYWNlLFxuICAgIEFwcFByaWNlc0ludGVyZmFjZSxcbiAgICBCaWxsaW5nQ29uZmlndXJhdGlvbkludGVyZmFjZSxcbiAgICBDb21taXRtZW50SW50ZXJmYWNlLFxuICAgIERpc2NvdW50SW50ZXJmYWNlLFxuICAgIEZyZXF1ZW5jeVByaWNlSW50ZXJmYWNlLFxuICAgIEZyZXF1ZW5jeVByaWNlc0ludGVyZmFjZSxcbiAgICBJbnN0YW5jZVByaWNlSW50ZXJmYWNlLFxuICAgIEFwcFByaWNlc1ByaWNlc0ZvckNvbnRleHRzRW50cnlJbnRlcmZhY2UsXG4gICAgVW5pdFByaWNlUHJpY2VzRm9yQ3VycmVuY2llc0VudHJ5SW50ZXJmYWNlLFxuICAgIEFwcFByaWNlUHJpY2VzRm9yRWRpdGlvbnNFbnRyeUludGVyZmFjZSxcbiAgICBQcmljaW5nUnVsZUludGVyZmFjZSxcbiAgICBSZXF1ZXN0ZWRBcHBJbnRlcmZhY2UsXG4gICAgVW5pdFByaWNlSW50ZXJmYWNlLFxufSBmcm9tICcuL2FwcC1wcmljZS5pbnRlcmZhY2UnO1xuXG5leHBvcnQge1xuICAgIEdldE11bHRpUHJpY2luZ1JlcXVlc3RJbnRlcmZhY2UsXG4gICAgR2V0TXVsdGlQcmljaW5nUmVzcG9uc2VJbnRlcmZhY2UsXG59IGZyb20gJy4vYXBwLXByaWNlLWFwaS5pbnRlcmZhY2UnO1xuXG5leHBvcnQge1xuICAgIFBhZ2VkUmVxdWVzdE9wdGlvbnNJbnRlcmZhY2UsXG4gICAgUGFnZWRSZXNwb25zZU1ldGFkYXRhSW50ZXJmYWNlLFxufSBmcm9tICcuL3BhZ2luZy5pbnRlcmZhY2UnO1xuXG5leHBvcnQge1xuICAgIEFyY2hpdmVBdXhpbGlhcnlEYXRhRmllbGRTY2hlbWFSZXF1ZXN0SW50ZXJmYWNlLFxuICAgIEF1eGlsaWFyeURhdGFGaWVsZFNjaGVtYUludGVyZmFjZSxcbiAgICBBdXhpbGlhcnlEYXRhT2JqZWN0SURJbnRlcmZhY2UsXG4gICAgQ3JlYXRlQXV4aWxpYXJ5RGF0YUZpZWxkU2NoZW1hUmVxdWVzdEludGVyZmFjZSxcbiAgICBEcm9wZG93bk9wdGlvbkludGVyZmFjZSxcbiAgICBGaWVsZERhdGFVcHNlcnRPcGVyYXRpb25JbnRlcmZhY2UsXG4gICAgRmllbGRTY2hlbWFJZGVudGlmaWVySW50ZXJmYWNlLFxuICAgIExpc3RBdXhpbGlhcnlEYXRhRmllbGRTY2hlbWFSZXF1ZXN0RmlsdGVyc0ludGVyZmFjZSxcbiAgICBHZXRBdXhpbGlhcnlEYXRhRmllbGRTY2hlbWFSZXF1ZXN0SW50ZXJmYWNlLFxuICAgIEdldEF1eGlsaWFyeURhdGFGaWVsZFNjaGVtYVJlc3BvbnNlSW50ZXJmYWNlLFxuICAgIEdldE11bHRpQXV4aWxpYXJ5RGF0YUZpZWxkU2NoZW1hUmVxdWVzdEludGVyZmFjZSxcbiAgICBHZXRNdWx0aUF1eGlsaWFyeURhdGFGaWVsZFNjaGVtYVJlc3BvbnNlSW50ZXJmYWNlLFxuICAgIExpc3RBdXhpbGlhcnlEYXRhRmllbGRTY2hlbWFSZXF1ZXN0SW50ZXJmYWNlLFxuICAgIExpc3RBdXhpbGlhcnlEYXRhRmllbGRTY2hlbWFSZXNwb25zZUludGVyZmFjZSxcbiAgICBMaXN0QXV4aWxpYXJ5RGF0YVJlcXVlc3RJbnRlcmZhY2UsXG4gICAgTGlzdEF1eGlsaWFyeURhdGFSZXNwb25zZUludGVyZmFjZSxcbiAgICBVbmFyY2hpdmVBdXhpbGlhcnlEYXRhRmllbGRTY2hlbWFSZXF1ZXN0SW50ZXJmYWNlLFxuICAgIFVwZGF0ZUF1eGlsaWFyeURhdGFGaWVsZFNjaGVtYVJlcXVlc3RJbnRlcmZhY2UsXG4gICAgVXBzZXJ0QXV4aWxpYXJ5RGF0YVJlcXVlc3RJbnRlcmZhY2UsXG59IGZyb20gJy4vZmllbGRzLmludGVyZmFjZSc7XG5cbmV4cG9ydCB7XG4gICAgSW5jbHVkZWRDb21tb25Gb3JtRmllbGRzSW50ZXJmYWNlLFxuICAgIE9yZGVyRm9ybUZpZWxkT3B0aW9uSW50ZXJmYWNlLFxuICAgIE9yZGVyRm9ybUludGVyZmFjZSxcbiAgICBPcmRlckZvcm1GaWVsZEludGVyZmFjZSxcbn0gZnJvbSAnLi9vcmRlci1mb3JtLmludGVyZmFjZSc7XG5cbmV4cG9ydCB7XG4gICAgRnVsZmlsbG1lbnRPcmRlckNvbmZpZ0ludGVyZmFjZSxcbiAgICBGdWxmaWxsbWVudE9yZGVyQ29uZmlnUHJvamVjdGlvbkZpbHRlckludGVyZmFjZSxcbiAgICBHZXRGdWxmaWxsbWVudE9yZGVyQ29uZmlnUmVxdWVzdEludGVyZmFjZSxcbiAgICBHZXRGdWxmaWxsbWVudE9yZGVyQ29uZmlnUmVzcG9uc2VJbnRlcmZhY2UsXG4gICAgVXBkYXRlRnVsZmlsbG1lbnRPcmRlckNvbmZpZ1JlcXVlc3RJbnRlcmZhY2UsXG59IGZyb20gJy4vZnVsZmlsbG1lbnQtb3JkZXItY29uZmlnLmludGVyZmFjZSc7XG5cbiJdfQ==
@@ -5,4 +5,4 @@
5
5
  // Interfaces.
6
6
  // *********************************
7
7
  export {};
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXRlbS1kZXBlbmRlbmN5LmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL21hcmtldHBsYWNlX2FwcHNfc2RrL3NyYy9saWIvX2ludGVybmFsL2ludGVyZmFjZXMvaXRlbS1kZXBlbmRlbmN5LmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxvQ0FBb0M7QUFDcEMsMkJBQTJCO0FBQzNCLGdCQUFnQjtBQUNoQixFQUFFO0FBQ0YsY0FBYztBQUNkLG9DQUFvQyIsInNvdXJjZXNDb250ZW50IjpbIi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gQ29kZSBnZW5lcmF0ZWQgYnkgc2RrZ2VuXG4vLyBETyBOT1QgRURJVCEuXG4vL1xuLy8gSW50ZXJmYWNlcy5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuXG5pbXBvcnQgKiBhcyBlIGZyb20gJy4uL2VudW1zJztcblxuZXhwb3J0IGludGVyZmFjZSBJdGVtSWRlbnRpZmllckludGVyZmFjZSB7XG4gICAgaXRlbUlkPzogc3RyaW5nO1xuICAgIGVkaXRpb25JZD86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBMaXN0RGVwZW5kZW5jaWVzUmVxdWVzdEludGVyZmFjZSB7XG4gICAgc2VsbGVySWQ/OiBzdHJpbmc7XG4gICAgaXRlbXM/OiBJdGVtSWRlbnRpZmllckludGVyZmFjZVtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIExpc3REZXBlbmRlbmNpZXNSZXF1aXJlZEl0ZW1JbnRlcmZhY2Uge1xuICAgIGl0ZW1JZD86IHN0cmluZztcbiAgICBlZGl0aW9uSWQ/OiBzdHJpbmc7XG4gICAgZW5hYmxlZD86IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTGlzdERlcGVuZGVuY2llc1JlcXVpcmVkSXRlbXNJbnRlcmZhY2Uge1xuICAgIHJlcXVpcmVkSXRlbXM/OiBMaXN0RGVwZW5kZW5jaWVzUmVxdWlyZWRJdGVtSW50ZXJmYWNlW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTGlzdERlcGVuZGVuY2llc1Jlc3BvbnNlSW50ZXJmYWNlIHtcbiAgICBtaXNzaW5nSXRlbXM/OiB7W2tleTogc3RyaW5nXTogTGlzdERlcGVuZGVuY2llc1JlcXVpcmVkSXRlbXNJbnRlcmZhY2V9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIExpc3REZXBlbmRlbmNpZXNSZXNwb25zZU1pc3NpbmdJdGVtc0VudHJ5SW50ZXJmYWNlIHtcbiAgICBrZXk/OiBzdHJpbmc7XG4gICAgdmFsdWU/OiBMaXN0RGVwZW5kZW5jaWVzUmVxdWlyZWRJdGVtc0ludGVyZmFjZTtcbn1cblxuIl19
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXRlbS1kZXBlbmRlbmN5LmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL21hcmtldHBsYWNlX2FwcHNfc2RrL3NyYy9saWIvX2ludGVybmFsL2ludGVyZmFjZXMvaXRlbS1kZXBlbmRlbmN5LmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxvQ0FBb0M7QUFDcEMsMkJBQTJCO0FBQzNCLGdCQUFnQjtBQUNoQixFQUFFO0FBQ0YsY0FBYztBQUNkLG9DQUFvQyIsInNvdXJjZXNDb250ZW50IjpbIi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gQ29kZSBnZW5lcmF0ZWQgYnkgc2RrZ2VuXG4vLyBETyBOT1QgRURJVCEuXG4vL1xuLy8gSW50ZXJmYWNlcy5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuXG5pbXBvcnQgKiBhcyBlIGZyb20gJy4uL2VudW1zJztcblxuZXhwb3J0IGludGVyZmFjZSBFZGl0aW9uUmVxdWlyZW1lbnRJbnRlcmZhY2Uge1xuICAgIGVkaXRpb25JZD86IHN0cmluZztcbiAgICBlZGl0aW9uUmVxdWlyZWQ/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEl0ZW1JZGVudGlmaWVySW50ZXJmYWNlIHtcbiAgICBpdGVtSWQ/OiBzdHJpbmc7XG4gICAgZWRpdGlvbklkPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIExpc3REZXBlbmRlbmNpZXNSZXF1ZXN0SW50ZXJmYWNlIHtcbiAgICBzZWxsZXJJZD86IHN0cmluZztcbiAgICBpdGVtcz86IEl0ZW1JZGVudGlmaWVySW50ZXJmYWNlW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTGlzdERlcGVuZGVuY2llc1JlcXVpcmVkSXRlbUludGVyZmFjZSB7XG4gICAgaXRlbUlkPzogc3RyaW5nO1xuICAgIGVkaXRpb25SZXF1aXJlbWVudD86IEVkaXRpb25SZXF1aXJlbWVudEludGVyZmFjZTtcbiAgICBlbmFibGVkPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBMaXN0RGVwZW5kZW5jaWVzUmVxdWlyZWRJdGVtc0ludGVyZmFjZSB7XG4gICAgcmVxdWlyZWRJdGVtcz86IExpc3REZXBlbmRlbmNpZXNSZXF1aXJlZEl0ZW1JbnRlcmZhY2VbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBMaXN0RGVwZW5kZW5jaWVzUmVzcG9uc2VJbnRlcmZhY2Uge1xuICAgIG1pc3NpbmdJdGVtcz86IHtba2V5OiBzdHJpbmddOiBMaXN0RGVwZW5kZW5jaWVzUmVxdWlyZWRJdGVtc0ludGVyZmFjZX07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTGlzdERlcGVuZGVuY2llc1Jlc3BvbnNlTWlzc2luZ0l0ZW1zRW50cnlJbnRlcmZhY2Uge1xuICAgIGtleT86IHN0cmluZztcbiAgICB2YWx1ZT86IExpc3REZXBlbmRlbmNpZXNSZXF1aXJlZEl0ZW1zSW50ZXJmYWNlO1xufVxuXG4iXX0=
@@ -163,6 +163,9 @@ export class Discount {
163
163
  if (typeof this.end !== 'undefined' && this.end !== null) {
164
164
  toReturn['end'] = 'toApiJson' in this.end ? this.end.toApiJson() : this.end;
165
165
  }
166
+ if (typeof this.customerId !== 'undefined') {
167
+ toReturn['customerId'] = this.customerId;
168
+ }
166
169
  return toReturn;
167
170
  }
168
171
  }
@@ -433,4 +436,4 @@ export class UnitPrice {
433
436
  return toReturn;
434
437
  }
435
438
  }
436
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLXByaWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbWFya2V0cGxhY2VfYXBwc19zZGsvc3JjL2xpYi9faW50ZXJuYWwvb2JqZWN0cy9hcHAtcHJpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBT0EsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLE9BQU8sQ0FBQztBQUM1QixPQUFPLEtBQUssQ0FBQyxNQUFNLFVBQVUsQ0FBQztBQUU5QixNQUFNLFVBQVUsaUJBQWlCLENBQUksT0FBWSxFQUFFLEtBQWE7SUFDOUQsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUU7UUFDN0IsT0FBTyxLQUFLLENBQUM7S0FDZDtJQUNELE9BQU8sT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO0FBQ3hCLENBQUM7QUFFRCxNQUFNLE9BQU8sUUFBUTtJQU1qQixNQUFNLENBQUMsU0FBUyxDQUFDLEtBQVU7UUFDdkIsSUFBSSxDQUFDLEdBQUcsSUFBSSxRQUFRLEVBQUUsQ0FBQztRQUN2QixDQUFDLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDNUIsSUFBSSxLQUFLLENBQUMsZUFBZSxFQUFFO1lBQUMsQ0FBQyxDQUFDLGVBQWUsR0FBRyxpQkFBaUIsQ0FBeUIsQ0FBQyxDQUFDLG9CQUFvQixFQUFFLEtBQUssQ0FBQyxlQUFlLENBQUMsQ0FBQztTQUFDO1FBQzFJLElBQUksS0FBSyxDQUFDLG9CQUFvQixFQUFFO1lBQUMsQ0FBQyxDQUFDLG9CQUFvQixHQUFHLG9CQUFvQixDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsb0JBQW9CLENBQUMsQ0FBQztTQUFDO1FBQ3RILElBQUksS0FBSyxDQUFDLGlCQUFpQixFQUFFO1lBQUMsQ0FBQyxDQUFDLGlCQUFpQixHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGlCQUFpQixDQUFDLENBQUMsTUFBTSxDQUFNLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxFQUFFLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLFNBQVMsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztTQUFDO1FBQ2pNLE9BQU8sQ0FBQyxDQUFDO0lBQ2IsQ0FBQztJQUVELFlBQVksTUFBNEI7UUFDcEMsSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNULE9BQU87U0FDVjtRQUNELE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFFRCxTQUFTO1FBQ0wsTUFBTSxRQUFRLEdBRVYsRUFBRSxDQUFDO1FBRVAsSUFBSSxPQUFPLElBQUksQ0FBQyxLQUFLLEtBQUssV0FBVyxFQUFFO1lBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7U0FBQztRQUN4RSxJQUFJLE9BQU8sSUFBSSxDQUFDLGVBQWUsS0FBSyxXQUFXLEVBQUU7WUFBQyxRQUFRLENBQUMsaUJBQWlCLENBQUMsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDO1NBQUM7UUFDdEcsSUFBSSxPQUFPLElBQUksQ0FBQyxvQkFBb0IsS0FBSyxXQUFXLElBQUksSUFBSSxDQUFDLG9CQUFvQixLQUFLLElBQUksRUFBRTtZQUFDLFFBQVEsQ0FBQyxzQkFBc0IsQ0FBQyxHQUFHLFdBQVcsSUFBSSxJQUFJLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUFFLElBQUksQ0FBQyxvQkFBNEIsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLG9CQUFvQixDQUFDO1NBQUM7UUFDdlAsSUFBSSxPQUFPLElBQUksQ0FBQyxpQkFBaUIsS0FBSyxXQUFXLElBQUksSUFBSSxDQUFDLGlCQUFpQixLQUFLLElBQUksRUFBRTtZQUFDLFFBQVEsQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHLFdBQVcsSUFBSSxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFFLElBQUksQ0FBQyxpQkFBeUIsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDO1NBQUM7UUFDck8sT0FBTyxRQUFRLENBQUM7SUFDcEIsQ0FBQztDQUNKO0FBRUQsTUFBTSxPQUFPLFNBQVM7SUFJbEIsTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFVO1FBQ3ZCLElBQUksQ0FBQyxHQUFHLElBQUksU0FBUyxFQUFFLENBQUM7UUFDeEIsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzVCLElBQUksS0FBSyxDQUFDLGlCQUFpQixFQUFFO1lBQUMsQ0FBQyxDQUFDLGlCQUFpQixHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGlCQUFpQixDQUFDLENBQUMsTUFBTSxDQUFNLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxFQUFFLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztTQUFDO1FBQ2hNLE9BQU8sQ0FBQyxDQUFDO0lBQ2IsQ0FBQztJQUVELFlBQVksTUFBNkI7UUFDckMsSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNULE9BQU87U0FDVjtRQUNELE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFFRCxTQUFTO1FBQ0wsTUFBTSxRQUFRLEdBRVYsRUFBRSxDQUFDO1FBRVAsSUFBSSxPQUFPLElBQUksQ0FBQyxLQUFLLEtBQUssV0FBVyxFQUFFO1lBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7U0FBQztRQUN4RSxJQUFJLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixLQUFLLFdBQVcsSUFBSSxJQUFJLENBQUMsaUJBQWlCLEtBQUssSUFBSSxFQUFFO1lBQUMsUUFBUSxDQUFDLG1CQUFtQixDQUFDLEdBQUcsV0FBVyxJQUFJLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUUsSUFBSSxDQUFDLGlCQUF5QixDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUM7U0FBQztRQUNyTyxPQUFPLFFBQVEsQ0FBQztJQUNwQixDQUFDO0NBQ0o7QUFFRCxNQUFNLE9BQU8sb0JBQW9CO0lBSzdCLE1BQU0sQ0FBQyxTQUFTLENBQUMsS0FBVTtRQUN2QixJQUFJLENBQUMsR0FBRyxJQUFJLG9CQUFvQixFQUFFLENBQUM7UUFDbkMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzVCLE9BQU8sQ0FBQyxDQUFDO0lBQ2IsQ0FBQztJQUVELFlBQVksTUFBd0M7UUFDaEQsSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNULE9BQU87U0FDVjtRQUNELE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFFRCxTQUFTO1FBQ0wsTUFBTSxRQUFRLEdBRVYsRUFBRSxDQUFDO1FBRVAsSUFBSSxPQUFPLElBQUksQ0FBQyxtQkFBbUIsS0FBSyxXQUFXLEVBQUU7WUFBQyxRQUFRLENBQUMscUJBQXFCLENBQUMsR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUM7U0FBQztRQUNsSCxJQUFJLE9BQU8sSUFBSSxDQUFDLG9CQUFvQixLQUFLLFdBQVcsRUFBRTtZQUFDLFFBQVEsQ0FBQyxzQkFBc0IsQ0FBQyxHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQztTQUFDO1FBQ3JILElBQUksT0FBTyxJQUFJLENBQUMsWUFBWSxLQUFLLFdBQVcsRUFBRTtZQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDO1NBQUM7UUFDN0YsT0FBTyxRQUFRLENBQUM7SUFDcEIsQ0FBQztDQUNKO0FBRUQsTUFBTSxPQUFPLFVBQVU7SUFJbkIsTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFVO1FBQ3ZCLElBQUksQ0FBQyxHQUFHLElBQUksVUFBVSxFQUFFLENBQUM7UUFDekIsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzVCLElBQUksS0FBSyxDQUFDLE9BQU8sRUFBRTtZQUFDLENBQUMsQ0FBQyxPQUFPLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLENBQUM7U0FBQztRQUM3RCxJQUFJLEtBQUssQ0FBQyxTQUFTLEVBQUU7WUFBQyxDQUFDLENBQUMsU0FBUyxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUMsU0FBUyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1NBQUM7UUFDbkUsT0FBTyxDQUFDLENBQUM7SUFDYixDQUFDO0lBRUQsWUFBWSxNQUE4QjtRQUN0QyxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ1QsT0FBTztTQUNWO1FBQ0QsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVELFNBQVM7UUFDTCxNQUFNLFFBQVEsR0FFVixFQUFFLENBQUM7UUFFUCxJQUFJLE9BQU8sSUFBSSxDQUFDLE9BQU8sS0FBSyxXQUFXLEVBQUU7WUFBQyxRQUFRLENBQUMsU0FBUyxDQUFDLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztTQUFDO1FBQzlFLElBQUksT0FBTyxJQUFJLENBQUMsU0FBUyxLQUFLLFdBQVcsRUFBRTtZQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDO1NBQUM7UUFDcEYsT0FBTyxRQUFRLENBQUM7SUFDcEIsQ0FBQztDQUNKO0FBRUQsTUFBTSxPQUFPLFFBQVE7SUFNakIsTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFVO1FBQ3ZCLElBQUksQ0FBQyxHQUFHLElBQUksUUFBUSxFQUFFLENBQUM7UUFDdkIsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzVCLElBQUksS0FBSyxDQUFDLFlBQVksRUFBRTtZQUFDLENBQUMsQ0FBQyxZQUFZLEdBQUcsaUJBQWlCLENBQWlCLENBQUMsQ0FBQyxZQUFZLEVBQUUsS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFDO1NBQUM7UUFDakgsSUFBSSxLQUFLLENBQUMsTUFBTSxFQUFFO1lBQUMsQ0FBQyxDQUFDLE1BQU0sR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQztTQUFDO1FBQzFELElBQUksS0FBSyxDQUFDLEtBQUssRUFBRTtZQUFDLENBQUMsQ0FBQyxLQUFLLEdBQUcsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQUM7UUFDbkQsSUFBSSxLQUFLLENBQUMsR0FBRyxFQUFFO1lBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7U0FBQztRQUM3QyxPQUFPLENBQUMsQ0FBQztJQUNiLENBQUM7SUFFRCxZQUFZLE1BQTRCO1FBQ3BDLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDVCxPQUFPO1NBQ1Y7UUFDRCxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRUQsU0FBUztRQUNMLE1BQU0sUUFBUSxHQUVWLEVBQUUsQ0FBQztRQUVQLElBQUksT0FBTyxJQUFJLENBQUMsWUFBWSxLQUFLLFdBQVcsRUFBRTtZQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDO1NBQUM7UUFDN0YsSUFBSSxPQUFPLElBQUksQ0FBQyxNQUFNLEtBQUssV0FBVyxFQUFFO1lBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7U0FBQztRQUMzRSxJQUFJLE9BQU8sSUFBSSxDQUFDLEtBQUssS0FBSyxXQUFXLElBQUksSUFBSSxDQUFDLEtBQUssS0FBSyxJQUFJLEVBQUU7WUFBQyxRQUFRLENBQUMsT0FBTyxDQUFDLEdBQUcsV0FBVyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFFLElBQUksQ0FBQyxLQUFhLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7U0FBQztRQUM3SixJQUFJLE9BQU8sSUFBSSxDQUFDLEdBQUcsS0FBSyxXQUFXLElBQUksSUFBSSxDQUFDLEdBQUcsS0FBSyxJQUFJLEVBQUU7WUFBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEdBQUcsV0FBVyxJQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFFLElBQUksQ0FBQyxHQUFXLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUM7U0FBQztRQUNqSixPQUFPLFFBQVEsQ0FBQztJQUNwQixDQUFDO0NBQ0o7QUFFRCxNQUFNLE9BQU8sY0FBYztJQVF2QixNQUFNLENBQUMsU0FBUyxDQUFDLEtBQVU7UUFDdkIsSUFBSSxDQUFDLEdBQUcsSUFBSSxjQUFjLEVBQUUsQ0FBQztRQUM3QixDQUFDLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDNUIsSUFBSSxLQUFLLENBQUMsU0FBUyxFQUFFO1lBQUMsQ0FBQyxDQUFDLFNBQVMsR0FBRyxpQkFBaUIsQ0FBeUIsQ0FBQyxDQUFDLG9CQUFvQixFQUFFLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQztTQUFDO1FBQ3hILElBQUksS0FBSyxDQUFDLFFBQVEsRUFBRTtZQUFDLENBQUMsQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLENBQUM7U0FBQztRQUNoRSxJQUFJLEtBQUssQ0FBQyxVQUFVLEVBQUU7WUFBQyxDQUFDLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1NBQUM7UUFDOUUsSUFBSSxLQUFLLENBQUMsWUFBWSxFQUFFO1lBQUMsQ0FBQyxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLENBQUM7U0FBQztRQUN6RixJQUFJLEtBQUssQ0FBQyxhQUFhLEVBQUU7WUFBQyxDQUFDLENBQUMsYUFBYSxHQUFHLGFBQWEsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1NBQUM7UUFDMUYsSUFBSSxLQUFLLENBQUMsSUFBSSxFQUFFO1lBQUMsQ0FBQyxDQUFDLElBQUksR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUM7U0FBQztRQUN6RCxPQUFPLENBQUMsQ0FBQztJQUNiLENBQUM7SUFFRCxZQUFZLE1BQWtDO1FBQzFDLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDVCxPQUFPO1NBQ1Y7UUFDRCxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRUQsU0FBUztRQUNMLE1BQU0sUUFBUSxHQUVWLEVBQUUsQ0FBQztRQUVQLElBQUksT0FBTyxJQUFJLENBQUMsU0FBUyxLQUFLLFdBQVcsRUFBRTtZQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDO1NBQUM7UUFDcEYsSUFBSSxPQUFPLElBQUksQ0FBQyxRQUFRLEtBQUssV0FBVyxFQUFFO1lBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7U0FBQztRQUNqRixJQUFJLE9BQU8sSUFBSSxDQUFDLFVBQVUsS0FBSyxXQUFXLElBQUksSUFBSSxDQUFDLFVBQVUsS0FBSyxJQUFJLEVBQUU7WUFBQyxRQUFRLENBQUMsWUFBWSxDQUFDLEdBQUcsV0FBVyxJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFFLElBQUksQ0FBQyxVQUFrQixDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDO1NBQUM7UUFDM0wsSUFBSSxPQUFPLElBQUksQ0FBQyxZQUFZLEtBQUssV0FBVyxJQUFJLElBQUksQ0FBQyxZQUFZLEtBQUssSUFBSSxFQUFFO1lBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQyxHQUFHLFdBQVcsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBRSxJQUFJLENBQUMsWUFBb0IsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQztTQUFDO1FBQ3ZNLElBQUksT0FBTyxJQUFJLENBQUMsYUFBYSxLQUFLLFdBQVcsSUFBSSxJQUFJLENBQUMsYUFBYSxLQUFLLElBQUksRUFBRTtZQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsR0FBRyxXQUFXLElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUUsSUFBSSxDQUFDLGFBQXFCLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUM7U0FBQztRQUM3TSxJQUFJLE9BQU8sSUFBSSxDQUFDLElBQUksS0FBSyxXQUFXLElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxJQUFJLEVBQUU7WUFBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEdBQUcsV0FBVyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFFLElBQUksQ0FBQyxJQUFZLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7U0FBQztRQUN2SixPQUFPLFFBQVEsQ0FBQztJQUNwQixDQUFDO0NBQ0o7QUFFRCxNQUFNLE9BQU8sZUFBZTtJQUd4QixNQUFNLENBQUMsU0FBUyxDQUFDLEtBQVU7UUFDdkIsSUFBSSxDQUFDLEdBQUcsSUFBSSxlQUFlLEVBQUUsQ0FBQztRQUM5QixDQUFDLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDNUIsSUFBSSxLQUFLLENBQUMsb0JBQW9CLEVBQUU7WUFBQyxDQUFDLENBQUMsb0JBQW9CLEdBQUcsS0FBSyxDQUFDLG9CQUFvQixDQUFDLEdBQUcsQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLENBQUM7U0FBQztRQUNwSCxPQUFPLENBQUMsQ0FBQztJQUNiLENBQUM7SUFFRCxZQUFZLE1BQW1DO1FBQzNDLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDVCxPQUFPO1NBQ1Y7UUFDRCxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRUQsU0FBUztRQUNMLE1BQU0sUUFBUSxHQUVWLEVBQUUsQ0FBQztRQUVQLElBQUksT0FBTyxJQUFJLENBQUMsb0JBQW9CLEtBQUssV0FBVyxJQUFJLElBQUksQ0FBQyxvQkFBb0IsS0FBSyxJQUFJLEVBQUU7WUFBQyxRQUFRLENBQUMsc0JBQXNCLENBQUMsR0FBRyxXQUFXLElBQUksSUFBSSxDQUFDLG9CQUFvQixDQUFDLENBQUMsQ0FBRSxJQUFJLENBQUMsb0JBQTRCLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQztTQUFDO1FBQ3ZQLE9BQU8sUUFBUSxDQUFDO0lBQ3BCLENBQUM7Q0FDSjtBQUVELE1BQU0sT0FBTyxhQUFhO0lBR3RCLE1BQU0sQ0FBQyxTQUFTLENBQUMsS0FBVTtRQUN2QixJQUFJLENBQUMsR0FBRyxJQUFJLGFBQWEsRUFBRSxDQUFDO1FBQzVCLENBQUMsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUM1QixJQUFJLEtBQUssQ0FBQyxLQUFLLEVBQUU7WUFBQyxDQUFDLENBQUMsS0FBSyxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1NBQUM7UUFDdkQsT0FBTyxDQUFDLENBQUM7SUFDYixDQUFDO0lBRUQsWUFBWSxNQUFpQztRQUN6QyxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ1QsT0FBTztTQUNWO1FBQ0QsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVELFNBQVM7UUFDTCxNQUFNLFFBQVEsR0FFVixFQUFFLENBQUM7UUFFUCxJQUFJLE9BQU8sSUFBSSxDQUFDLEtBQUssS0FBSyxXQUFXLEVBQUU7WUFBQyxRQUFRLENBQUMsT0FBTyxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztTQUFDO1FBQ3hFLE9BQU8sUUFBUSxDQUFDO0lBQ3BCLENBQUM7Q0FDSjtBQUVELE1BQU0sT0FBTywrQkFBK0I7SUFJeEMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFVO1FBQ3ZCLElBQUksQ0FBQyxHQUFHLElBQUksK0JBQStCLEVBQUUsQ0FBQztRQUM5QyxDQUFDLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDNUIsSUFBSSxLQUFLLENBQUMsS0FBSyxFQUFFO1lBQUMsQ0FBQyxDQUFDLEtBQUssR0FBRyxRQUFRLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUFDO1FBQzdELE9BQU8sQ0FBQyxDQUFDO0lBQ2IsQ0FBQztJQUVELFlBQVksTUFBbUQ7UUFDM0QsSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNULE9BQU87U0FDVjtRQUNELE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFFRCxTQUFTO1FBQ0wsTUFBTSxRQUFRLEdBRVYsRUFBRSxDQUFDO1FBRVAsSUFBSSxPQUFPLElBQUksQ0FBQyxHQUFHLEtBQUssV0FBVyxFQUFFO1lBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUM7U0FBQztRQUNsRSxJQUFJLE9BQU8sSUFBSSxDQUFDLEtBQUssS0FBSyxXQUFXLElBQUksSUFBSSxDQUFDLEtBQUssS0FBSyxJQUFJLEVBQUU7WUFBQyxRQUFRLENBQUMsT0FBTyxDQUFDLEdBQUcsV0FBVyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFFLElBQUksQ0FBQyxLQUFhLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7U0FBQztRQUM3SixPQUFPLFFBQVEsQ0FBQztJQUNwQixDQUFDO0NBQ0o7QUFFRCxNQUFNLE9BQU8saUNBQWlDO0lBSTFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsS0FBVTtRQUN2QixJQUFJLENBQUMsR0FBRyxJQUFJLGlDQUFpQyxFQUFFLENBQUM7UUFDaEQsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzVCLElBQUksS0FBSyxDQUFDLEtBQUssRUFBRTtZQUFDLENBQUMsQ0FBQyxLQUFLLEdBQUcsZUFBZSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7U0FBQztRQUNwRSxPQUFPLENBQUMsQ0FBQztJQUNiLENBQUM7SUFFRCxZQUFZLE1BQXFEO1FBQzdELElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDVCxPQUFPO1NBQ1Y7UUFDRCxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRUQsU0FBUztRQUNMLE1BQU0sUUFBUSxHQUVWLEVBQUUsQ0FBQztRQUVQLElBQUksT0FBTyxJQUFJLENBQUMsR0FBRyxLQUFLLFdBQVcsRUFBRTtZQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDO1NBQUM7UUFDbEUsSUFBSSxPQUFPLElBQUksQ0FBQyxLQUFLLEtBQUssV0FBVyxJQUFJLElBQUksQ0FBQyxLQUFLLEtBQUssSUFBSSxFQUFFO1lBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxHQUFHLFdBQVcsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBRSxJQUFJLENBQUMsS0FBYSxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDO1NBQUM7UUFDN0osT0FBTyxRQUFRLENBQUM7SUFDcEIsQ0FBQztDQUNKO0FBRUQsTUFBTSxPQUFPLDhCQUE4QjtJQUl2QyxNQUFNLENBQUMsU0FBUyxDQUFDLEtBQVU7UUFDdkIsSUFBSSxDQUFDLEdBQUcsSUFBSSw4QkFBOEIsRUFBRSxDQUFDO1FBQzdDLENBQUMsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUM1QixJQUFJLEtBQUssQ0FBQyxLQUFLLEVBQUU7WUFBQyxDQUFDLENBQUMsS0FBSyxHQUFHLFNBQVMsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQUM7UUFDOUQsT0FBTyxDQUFDLENBQUM7SUFDYixDQUFDO0lBRUQsWUFBWSxNQUFrRDtRQUMxRCxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ1QsT0FBTztTQUNWO1FBQ0QsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVELFNBQVM7UUFDTCxNQUFNLFFBQVEsR0FFVixFQUFFLENBQUM7UUFFUCxJQUFJLE9BQU8sSUFBSSxDQUFDLEdBQUcsS0FBSyxXQUFXLEVBQUU7WUFBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQztTQUFDO1FBQ2xFLElBQUksT0FBTyxJQUFJLENBQUMsS0FBSyxLQUFLLFdBQVcsSUFBSSxJQUFJLENBQUMsS0FBSyxLQUFLLElBQUksRUFBRTtZQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsR0FBRyxXQUFXLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUUsSUFBSSxDQUFDLEtBQWEsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQztTQUFDO1FBQzdKLE9BQU8sUUFBUSxDQUFDO0lBQ3BCLENBQUM7Q0FDSjtBQUVELE1BQU0sT0FBTyxXQUFXO0lBS3BCLE1BQU0sQ0FBQyxTQUFTLENBQUMsS0FBVTtRQUN2QixJQUFJLENBQUMsR0FBRyxJQUFJLFdBQVcsRUFBRSxDQUFDO1FBQzFCLENBQUMsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUM1QixJQUFJLEtBQUssQ0FBQyxLQUFLLEVBQUU7WUFBQyxDQUFDLENBQUMsS0FBSyxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1NBQUM7UUFDdkQsSUFBSSxLQUFLLENBQUMsR0FBRyxFQUFFO1lBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQztTQUFDO1FBQ2pELElBQUksS0FBSyxDQUFDLEdBQUcsRUFBRTtZQUFDLENBQUMsQ0FBQyxHQUFHLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQUM7U0FBQztRQUNqRCxPQUFPLENBQUMsQ0FBQztJQUNiLENBQUM7SUFFRCxZQUFZLE1BQStCO1FBQ3ZDLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDVCxPQUFPO1NBQ1Y7UUFDRCxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRUQsU0FBUztRQUNMLE1BQU0sUUFBUSxHQUVWLEVBQUUsQ0FBQztRQUVQLElBQUksT0FBTyxJQUFJLENBQUMsS0FBSyxLQUFLLFdBQVcsRUFBRTtZQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO1NBQUM7UUFDeEUsSUFBSSxPQUFPLElBQUksQ0FBQyxHQUFHLEtBQUssV0FBVyxFQUFFO1lBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUM7U0FBQztRQUNsRSxJQUFJLE9BQU8sSUFBSSxDQUFDLEdBQUcsS0FBSyxXQUFXLEVBQUU7WUFBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQztTQUFDO1FBQ2xFLE9BQU8sUUFBUSxDQUFDO0lBQ3BCLENBQUM7Q0FDSjtBQUVELE1BQU0sT0FBTyxZQUFZO0lBSXJCLE1BQU0sQ0FBQyxTQUFTLENBQUMsS0FBVTtRQUN2QixJQUFJLENBQUMsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQzNCLENBQUMsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUM1QixJQUFJLEtBQUssQ0FBQyxRQUFRLEVBQUU7WUFBQyxDQUFDLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1NBQUM7UUFDaEUsT0FBTyxDQUFDLENBQUM7SUFDYixDQUFDO0lBRUQsWUFBWSxNQUFnQztRQUN4QyxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ1QsT0FBTztTQUNWO1FBQ0QsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVELFNBQVM7UUFDTCxNQUFNLFFBQVEsR0FFVixFQUFFLENBQUM7UUFFUCxJQUFJLE9BQU8sSUFBSSxDQUFDLEtBQUssS0FBSyxXQUFXLEVBQUU7WUFBQyxRQUFRLENBQUMsT0FBTyxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztTQUFDO1FBQ3hFLElBQUksT0FBTyxJQUFJLENBQUMsUUFBUSxLQUFLLFdBQVcsRUFBRTtZQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDO1NBQUM7UUFDakYsT0FBTyxRQUFRLENBQUM7SUFDcEIsQ0FBQztDQUNKO0FBRUQsTUFBTSxPQUFPLFNBQVM7SUFJbEIsTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFVO1FBQ3ZCLElBQUksQ0FBQyxHQUFHLElBQUksU0FBUyxFQUFFLENBQUM7UUFDeEIsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzVCLElBQUksS0FBSyxDQUFDLG1CQUFtQixFQUFFO1lBQUMsQ0FBQyxDQUFDLG1CQUFtQixHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLG1CQUFtQixDQUFDLENBQUMsTUFBTSxDQUFNLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxFQUFFLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLGVBQWUsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztTQUFDO1FBQy9NLElBQUksS0FBSyxDQUFDLFFBQVEsRUFBRTtZQUFDLENBQUMsQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1NBQUM7UUFDMUUsT0FBTyxDQUFDLENBQUM7SUFDYixDQUFDO0lBRUQsWUFBWSxNQUE2QjtRQUNyQyxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ1QsT0FBTztTQUNWO1FBQ0QsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVELFNBQVM7UUFDTCxNQUFNLFFBQVEsR0FFVixFQUFFLENBQUM7UUFFUCxJQUFJLE9BQU8sSUFBSSxDQUFDLG1CQUFtQixLQUFLLFdBQVcsSUFBSSxJQUFJLENBQUMsbUJBQW1CLEtBQUssSUFBSSxFQUFFO1lBQUMsUUFBUSxDQUFDLHFCQUFxQixDQUFDLEdBQUcsV0FBVyxJQUFJLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUUsSUFBSSxDQUFDLG1CQUEyQixDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUM7U0FBQztRQUNqUCxJQUFJLE9BQU8sSUFBSSxDQUFDLFFBQVEsS0FBSyxXQUFXLElBQUksSUFBSSxDQUFDLFFBQVEsS0FBSyxJQUFJLEVBQUU7WUFBQyxRQUFRLENBQUMsVUFBVSxDQUFDLEdBQUcsV0FBVyxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFFLElBQUksQ0FBQyxRQUFnQixDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO1NBQUM7UUFDL0ssT0FBTyxRQUFRLENBQUM7SUFDcEIsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyBDb2RlIGdlbmVyYXRlZCBieSBzZGtnZW5cbi8vIERPIE5PVCBFRElUIS5cbi8vXG4vLyBPYmplY3RzLlxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5pbXBvcnQgKiBhcyBpIGZyb20gJy4uL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgRmVlIH0gZnJvbSAnLi9mZWUnO1xuaW1wb3J0ICogYXMgZSBmcm9tICcuLi9lbnVtcyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBlbnVtU3RyaW5nVG9WYWx1ZTxFPihlbnVtUmVmOiBhbnksIHZhbHVlOiBzdHJpbmcpOiBFIHtcbiAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ251bWJlcicpIHtcbiAgICByZXR1cm4gdmFsdWU7XG4gIH1cbiAgcmV0dXJuIGVudW1SZWZbdmFsdWVdO1xufVxuXG5leHBvcnQgY2xhc3MgQXBwUHJpY2UgaW1wbGVtZW50cyBpLkFwcFByaWNlSW50ZXJmYWNlIHtcbiAgICBhcHBJZDogc3RyaW5nO1xuICAgIGRpc3BsYXlPdmVycmlkZTogZS5QcmljZURpc3BsYXlPdmVycmlkZTtcbiAgICBiaWxsaW5nQ29uZmlndXJhdGlvbjogQmlsbGluZ0NvbmZpZ3VyYXRpb247XG4gICAgcHJpY2VzRm9yRWRpdGlvbnM6IHtba2V5OiBzdHJpbmddOiBVbml0UHJpY2V9O1xuXG4gICAgc3RhdGljIGZyb21Qcm90byhwcm90bzogYW55KTogQXBwUHJpY2Uge1xuICAgICAgICBsZXQgbSA9IG5ldyBBcHBQcmljZSgpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIGlmIChwcm90by5kaXNwbGF5T3ZlcnJpZGUpIHttLmRpc3BsYXlPdmVycmlkZSA9IGVudW1TdHJpbmdUb1ZhbHVlPGUuUHJpY2VEaXNwbGF5T3ZlcnJpZGU+KGUuUHJpY2VEaXNwbGF5T3ZlcnJpZGUsIHByb3RvLmRpc3BsYXlPdmVycmlkZSk7fVxuICAgICAgICBpZiAocHJvdG8uYmlsbGluZ0NvbmZpZ3VyYXRpb24pIHttLmJpbGxpbmdDb25maWd1cmF0aW9uID0gQmlsbGluZ0NvbmZpZ3VyYXRpb24uZnJvbVByb3RvKHByb3RvLmJpbGxpbmdDb25maWd1cmF0aW9uKTt9XG4gICAgICAgIGlmIChwcm90by5wcmljZXNGb3JFZGl0aW9ucykge20ucHJpY2VzRm9yRWRpdGlvbnMgPSBPYmplY3Qua2V5cyhwcm90by5wcmljZXNGb3JFZGl0aW9ucykucmVkdWNlPGFueT4oKG9iaiwgaykgPT4geyBvYmpba10gPSBVbml0UHJpY2UuZnJvbVByb3RvKHByb3RvLnByaWNlc0ZvckVkaXRpb25zW2tdKTsgcmV0dXJuIG9iajsgfSwge30pO31cbiAgICAgICAgcmV0dXJuIG07XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3Ioa3dhcmdzPzogaS5BcHBQcmljZUludGVyZmFjZSkge1xuICAgICAgICBpZiAoIWt3YXJncykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIE9iamVjdC5hc3NpZ24odGhpcywga3dhcmdzKTtcbiAgICB9XG5cbiAgICB0b0FwaUpzb24oKTogb2JqZWN0IHtcbiAgICAgICAgY29uc3QgdG9SZXR1cm46IHtcbiAgICAgICAgICAgIFtrZXk6IHN0cmluZ106IGFueTtcbiAgICAgICAgfSA9IHt9O1xuICAgICAgICBcbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmFwcElkICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydhcHBJZCddID0gdGhpcy5hcHBJZDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5kaXNwbGF5T3ZlcnJpZGUgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2Rpc3BsYXlPdmVycmlkZSddID0gdGhpcy5kaXNwbGF5T3ZlcnJpZGU7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuYmlsbGluZ0NvbmZpZ3VyYXRpb24gIT09ICd1bmRlZmluZWQnICYmIHRoaXMuYmlsbGluZ0NvbmZpZ3VyYXRpb24gIT09IG51bGwpIHt0b1JldHVyblsnYmlsbGluZ0NvbmZpZ3VyYXRpb24nXSA9ICd0b0FwaUpzb24nIGluIHRoaXMuYmlsbGluZ0NvbmZpZ3VyYXRpb24gPyAodGhpcy5iaWxsaW5nQ29uZmlndXJhdGlvbiBhcyBhbnkpLnRvQXBpSnNvbigpIDogdGhpcy5iaWxsaW5nQ29uZmlndXJhdGlvbjt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5wcmljZXNGb3JFZGl0aW9ucyAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy5wcmljZXNGb3JFZGl0aW9ucyAhPT0gbnVsbCkge3RvUmV0dXJuWydwcmljZXNGb3JFZGl0aW9ucyddID0gJ3RvQXBpSnNvbicgaW4gdGhpcy5wcmljZXNGb3JFZGl0aW9ucyA/ICh0aGlzLnByaWNlc0ZvckVkaXRpb25zIGFzIGFueSkudG9BcGlKc29uKCkgOiB0aGlzLnByaWNlc0ZvckVkaXRpb25zO31cbiAgICAgICAgcmV0dXJuIHRvUmV0dXJuO1xuICAgIH1cbn1cblxuZXhwb3J0IGNsYXNzIEFwcFByaWNlcyBpbXBsZW1lbnRzIGkuQXBwUHJpY2VzSW50ZXJmYWNlIHtcbiAgICBhcHBJZDogc3RyaW5nO1xuICAgIHByaWNlc0ZvckNvbnRleHRzOiB7W2tleTogc3RyaW5nXTogQXBwUHJpY2V9O1xuXG4gICAgc3RhdGljIGZyb21Qcm90byhwcm90bzogYW55KTogQXBwUHJpY2VzIHtcbiAgICAgICAgbGV0IG0gPSBuZXcgQXBwUHJpY2VzKCk7XG4gICAgICAgIG0gPSBPYmplY3QuYXNzaWduKG0sIHByb3RvKTtcbiAgICAgICAgaWYgKHByb3RvLnByaWNlc0ZvckNvbnRleHRzKSB7bS5wcmljZXNGb3JDb250ZXh0cyA9IE9iamVjdC5rZXlzKHByb3RvLnByaWNlc0ZvckNvbnRleHRzKS5yZWR1Y2U8YW55Pigob2JqLCBrKSA9PiB7IG9ialtrXSA9IEFwcFByaWNlLmZyb21Qcm90byhwcm90by5wcmljZXNGb3JDb250ZXh0c1trXSk7IHJldHVybiBvYmo7IH0sIHt9KTt9XG4gICAgICAgIHJldHVybiBtO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKGt3YXJncz86IGkuQXBwUHJpY2VzSW50ZXJmYWNlKSB7XG4gICAgICAgIGlmICgha3dhcmdzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBrd2FyZ3MpO1xuICAgIH1cblxuICAgIHRvQXBpSnNvbigpOiBvYmplY3Qge1xuICAgICAgICBjb25zdCB0b1JldHVybjoge1xuICAgICAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICB9ID0ge307XG4gICAgICAgIFxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuYXBwSWQgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2FwcElkJ10gPSB0aGlzLmFwcElkO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnByaWNlc0ZvckNvbnRleHRzICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLnByaWNlc0ZvckNvbnRleHRzICE9PSBudWxsKSB7dG9SZXR1cm5bJ3ByaWNlc0ZvckNvbnRleHRzJ10gPSAndG9BcGlKc29uJyBpbiB0aGlzLnByaWNlc0ZvckNvbnRleHRzID8gKHRoaXMucHJpY2VzRm9yQ29udGV4dHMgYXMgYW55KS50b0FwaUpzb24oKSA6IHRoaXMucHJpY2VzRm9yQ29udGV4dHM7fVxuICAgICAgICByZXR1cm4gdG9SZXR1cm47XG4gICAgfVxufVxuXG5leHBvcnQgY2xhc3MgQmlsbGluZ0NvbmZpZ3VyYXRpb24gaW1wbGVtZW50cyBpLkJpbGxpbmdDb25maWd1cmF0aW9uSW50ZXJmYWNlIHtcbiAgICB1c2VzVmFyaWFibGVQcmljaW5nOiBib29sZWFuO1xuICAgIHVzZXNDb21wb25lbnRQcmljaW5nOiBib29sZWFuO1xuICAgIHVzZXNFZGl0aW9uczogYm9vbGVhbjtcblxuICAgIHN0YXRpYyBmcm9tUHJvdG8ocHJvdG86IGFueSk6IEJpbGxpbmdDb25maWd1cmF0aW9uIHtcbiAgICAgICAgbGV0IG0gPSBuZXcgQmlsbGluZ0NvbmZpZ3VyYXRpb24oKTtcbiAgICAgICAgbSA9IE9iamVjdC5hc3NpZ24obSwgcHJvdG8pO1xuICAgICAgICByZXR1cm4gbTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihrd2FyZ3M/OiBpLkJpbGxpbmdDb25maWd1cmF0aW9uSW50ZXJmYWNlKSB7XG4gICAgICAgIGlmICgha3dhcmdzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBrd2FyZ3MpO1xuICAgIH1cblxuICAgIHRvQXBpSnNvbigpOiBvYmplY3Qge1xuICAgICAgICBjb25zdCB0b1JldHVybjoge1xuICAgICAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICB9ID0ge307XG4gICAgICAgIFxuICAgICAgICBpZiAodHlwZW9mIHRoaXMudXNlc1ZhcmlhYmxlUHJpY2luZyAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsndXNlc1ZhcmlhYmxlUHJpY2luZyddID0gdGhpcy51c2VzVmFyaWFibGVQcmljaW5nO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnVzZXNDb21wb25lbnRQcmljaW5nICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWyd1c2VzQ29tcG9uZW50UHJpY2luZyddID0gdGhpcy51c2VzQ29tcG9uZW50UHJpY2luZzt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy51c2VzRWRpdGlvbnMgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ3VzZXNFZGl0aW9ucyddID0gdGhpcy51c2VzRWRpdGlvbnM7fVxuICAgICAgICByZXR1cm4gdG9SZXR1cm47XG4gICAgfVxufVxuXG5leHBvcnQgY2xhc3MgQ29tbWl0bWVudCBpbXBsZW1lbnRzIGkuQ29tbWl0bWVudEludGVyZmFjZSB7XG4gICAgaW5pdGlhbDogbnVtYmVyO1xuICAgIHJlY3VycmluZzogbnVtYmVyO1xuXG4gICAgc3RhdGljIGZyb21Qcm90byhwcm90bzogYW55KTogQ29tbWl0bWVudCB7XG4gICAgICAgIGxldCBtID0gbmV3IENvbW1pdG1lbnQoKTtcbiAgICAgICAgbSA9IE9iamVjdC5hc3NpZ24obSwgcHJvdG8pO1xuICAgICAgICBpZiAocHJvdG8uaW5pdGlhbCkge20uaW5pdGlhbCA9IHBhcnNlSW50KHByb3RvLmluaXRpYWwsIDEwKTt9XG4gICAgICAgIGlmIChwcm90by5yZWN1cnJpbmcpIHttLnJlY3VycmluZyA9IHBhcnNlSW50KHByb3RvLnJlY3VycmluZywgMTApO31cbiAgICAgICAgcmV0dXJuIG07XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3Ioa3dhcmdzPzogaS5Db21taXRtZW50SW50ZXJmYWNlKSB7XG4gICAgICAgIGlmICgha3dhcmdzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBrd2FyZ3MpO1xuICAgIH1cblxuICAgIHRvQXBpSnNvbigpOiBvYmplY3Qge1xuICAgICAgICBjb25zdCB0b1JldHVybjoge1xuICAgICAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICB9ID0ge307XG4gICAgICAgIFxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuaW5pdGlhbCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnaW5pdGlhbCddID0gdGhpcy5pbml0aWFsO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnJlY3VycmluZyAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsncmVjdXJyaW5nJ10gPSB0aGlzLnJlY3VycmluZzt9XG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBEaXNjb3VudCBpbXBsZW1lbnRzIGkuRGlzY291bnRJbnRlcmZhY2Uge1xuICAgIGRpc2NvdW50VHlwZTogZS5EaXNjb3VudFR5cGU7XG4gICAgYW1vdW50OiBudW1iZXI7XG4gICAgc3RhcnQ6IERhdGU7XG4gICAgZW5kOiBEYXRlO1xuXG4gICAgc3RhdGljIGZyb21Qcm90byhwcm90bzogYW55KTogRGlzY291bnQge1xuICAgICAgICBsZXQgbSA9IG5ldyBEaXNjb3VudCgpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIGlmIChwcm90by5kaXNjb3VudFR5cGUpIHttLmRpc2NvdW50VHlwZSA9IGVudW1TdHJpbmdUb1ZhbHVlPGUuRGlzY291bnRUeXBlPihlLkRpc2NvdW50VHlwZSwgcHJvdG8uZGlzY291bnRUeXBlKTt9XG4gICAgICAgIGlmIChwcm90by5hbW91bnQpIHttLmFtb3VudCA9IHBhcnNlSW50KHByb3RvLmFtb3VudCwgMTApO31cbiAgICAgICAgaWYgKHByb3RvLnN0YXJ0KSB7bS5zdGFydCA9IG5ldyBEYXRlKHByb3RvLnN0YXJ0KTt9XG4gICAgICAgIGlmIChwcm90by5lbmQpIHttLmVuZCA9IG5ldyBEYXRlKHByb3RvLmVuZCk7fVxuICAgICAgICByZXR1cm4gbTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihrd2FyZ3M/OiBpLkRpc2NvdW50SW50ZXJmYWNlKSB7XG4gICAgICAgIGlmICgha3dhcmdzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBrd2FyZ3MpO1xuICAgIH1cblxuICAgIHRvQXBpSnNvbigpOiBvYmplY3Qge1xuICAgICAgICBjb25zdCB0b1JldHVybjoge1xuICAgICAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICB9ID0ge307XG4gICAgICAgIFxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuZGlzY291bnRUeXBlICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydkaXNjb3VudFR5cGUnXSA9IHRoaXMuZGlzY291bnRUeXBlO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmFtb3VudCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnYW1vdW50J10gPSB0aGlzLmFtb3VudDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5zdGFydCAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy5zdGFydCAhPT0gbnVsbCkge3RvUmV0dXJuWydzdGFydCddID0gJ3RvQXBpSnNvbicgaW4gdGhpcy5zdGFydCA/ICh0aGlzLnN0YXJ0IGFzIGFueSkudG9BcGlKc29uKCkgOiB0aGlzLnN0YXJ0O31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmVuZCAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy5lbmQgIT09IG51bGwpIHt0b1JldHVyblsnZW5kJ10gPSAndG9BcGlKc29uJyBpbiB0aGlzLmVuZCA/ICh0aGlzLmVuZCBhcyBhbnkpLnRvQXBpSnNvbigpIDogdGhpcy5lbmQ7fVxuICAgICAgICByZXR1cm4gdG9SZXR1cm47XG4gICAgfVxufVxuXG5leHBvcnQgY2xhc3MgRnJlcXVlbmN5UHJpY2UgaW1wbGVtZW50cyBpLkZyZXF1ZW5jeVByaWNlSW50ZXJmYWNlIHtcbiAgICBmcmVxdWVuY3k6IGUuVW5pdEJpbGxpbmdGcmVxdWVuY3k7XG4gICAgc2V0dXBGZWU6IG51bWJlcjtcbiAgICBjb21taXRtZW50OiBDb21taXRtZW50O1xuICAgIHByaWNpbmdSdWxlczogUHJpY2luZ1J1bGVbXTtcbiAgICBpbnN0YW5jZVByaWNlOiBJbnN0YW5jZVByaWNlO1xuICAgIGZlZXM6IEZlZVtdO1xuXG4gICAgc3RhdGljIGZyb21Qcm90byhwcm90bzogYW55KTogRnJlcXVlbmN5UHJpY2Uge1xuICAgICAgICBsZXQgbSA9IG5ldyBGcmVxdWVuY3lQcmljZSgpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIGlmIChwcm90by5mcmVxdWVuY3kpIHttLmZyZXF1ZW5jeSA9IGVudW1TdHJpbmdUb1ZhbHVlPGUuVW5pdEJpbGxpbmdGcmVxdWVuY3k+KGUuVW5pdEJpbGxpbmdGcmVxdWVuY3ksIHByb3RvLmZyZXF1ZW5jeSk7fVxuICAgICAgICBpZiAocHJvdG8uc2V0dXBGZWUpIHttLnNldHVwRmVlID0gcGFyc2VJbnQocHJvdG8uc2V0dXBGZWUsIDEwKTt9XG4gICAgICAgIGlmIChwcm90by5jb21taXRtZW50KSB7bS5jb21taXRtZW50ID0gQ29tbWl0bWVudC5mcm9tUHJvdG8ocHJvdG8uY29tbWl0bWVudCk7fVxuICAgICAgICBpZiAocHJvdG8ucHJpY2luZ1J1bGVzKSB7bS5wcmljaW5nUnVsZXMgPSBwcm90by5wcmljaW5nUnVsZXMubWFwKFByaWNpbmdSdWxlLmZyb21Qcm90byk7fVxuICAgICAgICBpZiAocHJvdG8uaW5zdGFuY2VQcmljZSkge20uaW5zdGFuY2VQcmljZSA9IEluc3RhbmNlUHJpY2UuZnJvbVByb3RvKHByb3RvLmluc3RhbmNlUHJpY2UpO31cbiAgICAgICAgaWYgKHByb3RvLmZlZXMpIHttLmZlZXMgPSBwcm90by5mZWVzLm1hcChGZWUuZnJvbVByb3RvKTt9XG4gICAgICAgIHJldHVybiBtO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKGt3YXJncz86IGkuRnJlcXVlbmN5UHJpY2VJbnRlcmZhY2UpIHtcbiAgICAgICAgaWYgKCFrd2FyZ3MpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGt3YXJncyk7XG4gICAgfVxuXG4gICAgdG9BcGlKc29uKCk6IG9iamVjdCB7XG4gICAgICAgIGNvbnN0IHRvUmV0dXJuOiB7XG4gICAgICAgICAgICBba2V5OiBzdHJpbmddOiBhbnk7XG4gICAgICAgIH0gPSB7fTtcbiAgICAgICAgXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5mcmVxdWVuY3kgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2ZyZXF1ZW5jeSddID0gdGhpcy5mcmVxdWVuY3k7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuc2V0dXBGZWUgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ3NldHVwRmVlJ10gPSB0aGlzLnNldHVwRmVlO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmNvbW1pdG1lbnQgIT09ICd1bmRlZmluZWQnICYmIHRoaXMuY29tbWl0bWVudCAhPT0gbnVsbCkge3RvUmV0dXJuWydjb21taXRtZW50J10gPSAndG9BcGlKc29uJyBpbiB0aGlzLmNvbW1pdG1lbnQgPyAodGhpcy5jb21taXRtZW50IGFzIGFueSkudG9BcGlKc29uKCkgOiB0aGlzLmNvbW1pdG1lbnQ7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMucHJpY2luZ1J1bGVzICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLnByaWNpbmdSdWxlcyAhPT0gbnVsbCkge3RvUmV0dXJuWydwcmljaW5nUnVsZXMnXSA9ICd0b0FwaUpzb24nIGluIHRoaXMucHJpY2luZ1J1bGVzID8gKHRoaXMucHJpY2luZ1J1bGVzIGFzIGFueSkudG9BcGlKc29uKCkgOiB0aGlzLnByaWNpbmdSdWxlczt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5pbnN0YW5jZVByaWNlICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLmluc3RhbmNlUHJpY2UgIT09IG51bGwpIHt0b1JldHVyblsnaW5zdGFuY2VQcmljZSddID0gJ3RvQXBpSnNvbicgaW4gdGhpcy5pbnN0YW5jZVByaWNlID8gKHRoaXMuaW5zdGFuY2VQcmljZSBhcyBhbnkpLnRvQXBpSnNvbigpIDogdGhpcy5pbnN0YW5jZVByaWNlO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmZlZXMgIT09ICd1bmRlZmluZWQnICYmIHRoaXMuZmVlcyAhPT0gbnVsbCkge3RvUmV0dXJuWydmZWVzJ10gPSAndG9BcGlKc29uJyBpbiB0aGlzLmZlZXMgPyAodGhpcy5mZWVzIGFzIGFueSkudG9BcGlKc29uKCkgOiB0aGlzLmZlZXM7fVxuICAgICAgICByZXR1cm4gdG9SZXR1cm47XG4gICAgfVxufVxuXG5leHBvcnQgY2xhc3MgRnJlcXVlbmN5UHJpY2VzIGltcGxlbWVudHMgaS5GcmVxdWVuY3lQcmljZXNJbnRlcmZhY2Uge1xuICAgIHByaWNlc0ZvckZyZXF1ZW5jaWVzOiBGcmVxdWVuY3lQcmljZVtdO1xuXG4gICAgc3RhdGljIGZyb21Qcm90byhwcm90bzogYW55KTogRnJlcXVlbmN5UHJpY2VzIHtcbiAgICAgICAgbGV0IG0gPSBuZXcgRnJlcXVlbmN5UHJpY2VzKCk7XG4gICAgICAgIG0gPSBPYmplY3QuYXNzaWduKG0sIHByb3RvKTtcbiAgICAgICAgaWYgKHByb3RvLnByaWNlc0ZvckZyZXF1ZW5jaWVzKSB7bS5wcmljZXNGb3JGcmVxdWVuY2llcyA9IHByb3RvLnByaWNlc0ZvckZyZXF1ZW5jaWVzLm1hcChGcmVxdWVuY3lQcmljZS5mcm9tUHJvdG8pO31cbiAgICAgICAgcmV0dXJuIG07XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3Ioa3dhcmdzPzogaS5GcmVxdWVuY3lQcmljZXNJbnRlcmZhY2UpIHtcbiAgICAgICAgaWYgKCFrd2FyZ3MpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGt3YXJncyk7XG4gICAgfVxuXG4gICAgdG9BcGlKc29uKCk6IG9iamVjdCB7XG4gICAgICAgIGNvbnN0IHRvUmV0dXJuOiB7XG4gICAgICAgICAgICBba2V5OiBzdHJpbmddOiBhbnk7XG4gICAgICAgIH0gPSB7fTtcbiAgICAgICAgXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5wcmljZXNGb3JGcmVxdWVuY2llcyAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy5wcmljZXNGb3JGcmVxdWVuY2llcyAhPT0gbnVsbCkge3RvUmV0dXJuWydwcmljZXNGb3JGcmVxdWVuY2llcyddID0gJ3RvQXBpSnNvbicgaW4gdGhpcy5wcmljZXNGb3JGcmVxdWVuY2llcyA/ICh0aGlzLnByaWNlc0ZvckZyZXF1ZW5jaWVzIGFzIGFueSkudG9BcGlKc29uKCkgOiB0aGlzLnByaWNlc0ZvckZyZXF1ZW5jaWVzO31cbiAgICAgICAgcmV0dXJuIHRvUmV0dXJuO1xuICAgIH1cbn1cblxuZXhwb3J0IGNsYXNzIEluc3RhbmNlUHJpY2UgaW1wbGVtZW50cyBpLkluc3RhbmNlUHJpY2VJbnRlcmZhY2Uge1xuICAgIHRvdGFsOiBudW1iZXI7XG5cbiAgICBzdGF0aWMgZnJvbVByb3RvKHByb3RvOiBhbnkpOiBJbnN0YW5jZVByaWNlIHtcbiAgICAgICAgbGV0IG0gPSBuZXcgSW5zdGFuY2VQcmljZSgpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIGlmIChwcm90by50b3RhbCkge20udG90YWwgPSBwYXJzZUludChwcm90by50b3RhbCwgMTApO31cbiAgICAgICAgcmV0dXJuIG07XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3Ioa3dhcmdzPzogaS5JbnN0YW5jZVByaWNlSW50ZXJmYWNlKSB7XG4gICAgICAgIGlmICgha3dhcmdzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBrd2FyZ3MpO1xuICAgIH1cblxuICAgIHRvQXBpSnNvbigpOiBvYmplY3Qge1xuICAgICAgICBjb25zdCB0b1JldHVybjoge1xuICAgICAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICB9ID0ge307XG4gICAgICAgIFxuICAgICAgICBpZiAodHlwZW9mIHRoaXMudG90YWwgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ3RvdGFsJ10gPSB0aGlzLnRvdGFsO31cbiAgICAgICAgcmV0dXJuIHRvUmV0dXJuO1xuICAgIH1cbn1cblxuZXhwb3J0IGNsYXNzIEFwcFByaWNlc1ByaWNlc0ZvckNvbnRleHRzRW50cnkgaW1wbGVtZW50cyBpLkFwcFByaWNlc1ByaWNlc0ZvckNvbnRleHRzRW50cnlJbnRlcmZhY2Uge1xuICAgIGtleTogc3RyaW5nO1xuICAgIHZhbHVlOiBBcHBQcmljZTtcblxuICAgIHN0YXRpYyBmcm9tUHJvdG8ocHJvdG86IGFueSk6IEFwcFByaWNlc1ByaWNlc0ZvckNvbnRleHRzRW50cnkge1xuICAgICAgICBsZXQgbSA9IG5ldyBBcHBQcmljZXNQcmljZXNGb3JDb250ZXh0c0VudHJ5KCk7XG4gICAgICAgIG0gPSBPYmplY3QuYXNzaWduKG0sIHByb3RvKTtcbiAgICAgICAgaWYgKHByb3RvLnZhbHVlKSB7bS52YWx1ZSA9IEFwcFByaWNlLmZyb21Qcm90byhwcm90by52YWx1ZSk7fVxuICAgICAgICByZXR1cm4gbTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihrd2FyZ3M/OiBpLkFwcFByaWNlc1ByaWNlc0ZvckNvbnRleHRzRW50cnlJbnRlcmZhY2UpIHtcbiAgICAgICAgaWYgKCFrd2FyZ3MpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGt3YXJncyk7XG4gICAgfVxuXG4gICAgdG9BcGlKc29uKCk6IG9iamVjdCB7XG4gICAgICAgIGNvbnN0IHRvUmV0dXJuOiB7XG4gICAgICAgICAgICBba2V5OiBzdHJpbmddOiBhbnk7XG4gICAgICAgIH0gPSB7fTtcbiAgICAgICAgXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5rZXkgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2tleSddID0gdGhpcy5rZXk7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMudmFsdWUgIT09ICd1bmRlZmluZWQnICYmIHRoaXMudmFsdWUgIT09IG51bGwpIHt0b1JldHVyblsndmFsdWUnXSA9ICd0b0FwaUpzb24nIGluIHRoaXMudmFsdWUgPyAodGhpcy52YWx1ZSBhcyBhbnkpLnRvQXBpSnNvbigpIDogdGhpcy52YWx1ZTt9XG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBVbml0UHJpY2VQcmljZXNGb3JDdXJyZW5jaWVzRW50cnkgaW1wbGVtZW50cyBpLlVuaXRQcmljZVByaWNlc0ZvckN1cnJlbmNpZXNFbnRyeUludGVyZmFjZSB7XG4gICAga2V5OiBzdHJpbmc7XG4gICAgdmFsdWU6IEZyZXF1ZW5jeVByaWNlcztcblxuICAgIHN0YXRpYyBmcm9tUHJvdG8ocHJvdG86IGFueSk6IFVuaXRQcmljZVByaWNlc0ZvckN1cnJlbmNpZXNFbnRyeSB7XG4gICAgICAgIGxldCBtID0gbmV3IFVuaXRQcmljZVByaWNlc0ZvckN1cnJlbmNpZXNFbnRyeSgpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIGlmIChwcm90by52YWx1ZSkge20udmFsdWUgPSBGcmVxdWVuY3lQcmljZXMuZnJvbVByb3RvKHByb3RvLnZhbHVlKTt9XG4gICAgICAgIHJldHVybiBtO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKGt3YXJncz86IGkuVW5pdFByaWNlUHJpY2VzRm9yQ3VycmVuY2llc0VudHJ5SW50ZXJmYWNlKSB7XG4gICAgICAgIGlmICgha3dhcmdzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBrd2FyZ3MpO1xuICAgIH1cblxuICAgIHRvQXBpSnNvbigpOiBvYmplY3Qge1xuICAgICAgICBjb25zdCB0b1JldHVybjoge1xuICAgICAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICB9ID0ge307XG4gICAgICAgIFxuICAgICAgICBpZiAodHlwZW9mIHRoaXMua2V5ICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydrZXknXSA9IHRoaXMua2V5O31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnZhbHVlICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLnZhbHVlICE9PSBudWxsKSB7dG9SZXR1cm5bJ3ZhbHVlJ10gPSAndG9BcGlKc29uJyBpbiB0aGlzLnZhbHVlID8gKHRoaXMudmFsdWUgYXMgYW55KS50b0FwaUpzb24oKSA6IHRoaXMudmFsdWU7fVxuICAgICAgICByZXR1cm4gdG9SZXR1cm47XG4gICAgfVxufVxuXG5leHBvcnQgY2xhc3MgQXBwUHJpY2VQcmljZXNGb3JFZGl0aW9uc0VudHJ5IGltcGxlbWVudHMgaS5BcHBQcmljZVByaWNlc0ZvckVkaXRpb25zRW50cnlJbnRlcmZhY2Uge1xuICAgIGtleTogc3RyaW5nO1xuICAgIHZhbHVlOiBVbml0UHJpY2U7XG5cbiAgICBzdGF0aWMgZnJvbVByb3RvKHByb3RvOiBhbnkpOiBBcHBQcmljZVByaWNlc0ZvckVkaXRpb25zRW50cnkge1xuICAgICAgICBsZXQgbSA9IG5ldyBBcHBQcmljZVByaWNlc0ZvckVkaXRpb25zRW50cnkoKTtcbiAgICAgICAgbSA9IE9iamVjdC5hc3NpZ24obSwgcHJvdG8pO1xuICAgICAgICBpZiAocHJvdG8udmFsdWUpIHttLnZhbHVlID0gVW5pdFByaWNlLmZyb21Qcm90byhwcm90by52YWx1ZSk7fVxuICAgICAgICByZXR1cm4gbTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihrd2FyZ3M/OiBpLkFwcFByaWNlUHJpY2VzRm9yRWRpdGlvbnNFbnRyeUludGVyZmFjZSkge1xuICAgICAgICBpZiAoIWt3YXJncykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIE9iamVjdC5hc3NpZ24odGhpcywga3dhcmdzKTtcbiAgICB9XG5cbiAgICB0b0FwaUpzb24oKTogb2JqZWN0IHtcbiAgICAgICAgY29uc3QgdG9SZXR1cm46IHtcbiAgICAgICAgICAgIFtrZXk6IHN0cmluZ106IGFueTtcbiAgICAgICAgfSA9IHt9O1xuICAgICAgICBcbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmtleSAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsna2V5J10gPSB0aGlzLmtleTt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy52YWx1ZSAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy52YWx1ZSAhPT0gbnVsbCkge3RvUmV0dXJuWyd2YWx1ZSddID0gJ3RvQXBpSnNvbicgaW4gdGhpcy52YWx1ZSA/ICh0aGlzLnZhbHVlIGFzIGFueSkudG9BcGlKc29uKCkgOiB0aGlzLnZhbHVlO31cbiAgICAgICAgcmV0dXJuIHRvUmV0dXJuO1xuICAgIH1cbn1cblxuZXhwb3J0IGNsYXNzIFByaWNpbmdSdWxlIGltcGxlbWVudHMgaS5QcmljaW5nUnVsZUludGVyZmFjZSB7XG4gICAgcHJpY2U6IG51bWJlcjtcbiAgICBtYXg6IG51bWJlcjtcbiAgICBtaW46IG51bWJlcjtcblxuICAgIHN0YXRpYyBmcm9tUHJvdG8ocHJvdG86IGFueSk6IFByaWNpbmdSdWxlIHtcbiAgICAgICAgbGV0IG0gPSBuZXcgUHJpY2luZ1J1bGUoKTtcbiAgICAgICAgbSA9IE9iamVjdC5hc3NpZ24obSwgcHJvdG8pO1xuICAgICAgICBpZiAocHJvdG8ucHJpY2UpIHttLnByaWNlID0gcGFyc2VJbnQocHJvdG8ucHJpY2UsIDEwKTt9XG4gICAgICAgIGlmIChwcm90by5tYXgpIHttLm1heCA9IHBhcnNlSW50KHByb3RvLm1heCwgMTApO31cbiAgICAgICAgaWYgKHByb3RvLm1pbikge20ubWluID0gcGFyc2VJbnQocHJvdG8ubWluLCAxMCk7fVxuICAgICAgICByZXR1cm4gbTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihrd2FyZ3M/OiBpLlByaWNpbmdSdWxlSW50ZXJmYWNlKSB7XG4gICAgICAgIGlmICgha3dhcmdzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBrd2FyZ3MpO1xuICAgIH1cblxuICAgIHRvQXBpSnNvbigpOiBvYmplY3Qge1xuICAgICAgICBjb25zdCB0b1JldHVybjoge1xuICAgICAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICB9ID0ge307XG4gICAgICAgIFxuICAgICAgICBpZiAodHlwZW9mIHRoaXMucHJpY2UgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ3ByaWNlJ10gPSB0aGlzLnByaWNlO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLm1heCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnbWF4J10gPSB0aGlzLm1heDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5taW4gIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ21pbiddID0gdGhpcy5taW47fVxuICAgICAgICByZXR1cm4gdG9SZXR1cm47XG4gICAgfVxufVxuXG5leHBvcnQgY2xhc3MgUmVxdWVzdGVkQXBwIGltcGxlbWVudHMgaS5SZXF1ZXN0ZWRBcHBJbnRlcmZhY2Uge1xuICAgIGFwcElkOiBzdHJpbmc7XG4gICAgcXVhbnRpdHk6IG51bWJlcjtcblxuICAgIHN0YXRpYyBmcm9tUHJvdG8ocHJvdG86IGFueSk6IFJlcXVlc3RlZEFwcCB7XG4gICAgICAgIGxldCBtID0gbmV3IFJlcXVlc3RlZEFwcCgpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIGlmIChwcm90by5xdWFudGl0eSkge20ucXVhbnRpdHkgPSBwYXJzZUludChwcm90by5xdWFudGl0eSwgMTApO31cbiAgICAgICAgcmV0dXJuIG07XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3Ioa3dhcmdzPzogaS5SZXF1ZXN0ZWRBcHBJbnRlcmZhY2UpIHtcbiAgICAgICAgaWYgKCFrd2FyZ3MpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGt3YXJncyk7XG4gICAgfVxuXG4gICAgdG9BcGlKc29uKCk6IG9iamVjdCB7XG4gICAgICAgIGNvbnN0IHRvUmV0dXJuOiB7XG4gICAgICAgICAgICBba2V5OiBzdHJpbmddOiBhbnk7XG4gICAgICAgIH0gPSB7fTtcbiAgICAgICAgXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5hcHBJZCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnYXBwSWQnXSA9IHRoaXMuYXBwSWQ7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMucXVhbnRpdHkgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ3F1YW50aXR5J10gPSB0aGlzLnF1YW50aXR5O31cbiAgICAgICAgcmV0dXJuIHRvUmV0dXJuO1xuICAgIH1cbn1cblxuZXhwb3J0IGNsYXNzIFVuaXRQcmljZSBpbXBsZW1lbnRzIGkuVW5pdFByaWNlSW50ZXJmYWNlIHtcbiAgICBwcmljZXNGb3JDdXJyZW5jaWVzOiB7W2tleTogc3RyaW5nXTogRnJlcXVlbmN5UHJpY2VzfTtcbiAgICBkaXNjb3VudDogRGlzY291bnRbXTtcblxuICAgIHN0YXRpYyBmcm9tUHJvdG8ocHJvdG86IGFueSk6IFVuaXRQcmljZSB7XG4gICAgICAgIGxldCBtID0gbmV3IFVuaXRQcmljZSgpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIGlmIChwcm90by5wcmljZXNGb3JDdXJyZW5jaWVzKSB7bS5wcmljZXNGb3JDdXJyZW5jaWVzID0gT2JqZWN0LmtleXMocHJvdG8ucHJpY2VzRm9yQ3VycmVuY2llcykucmVkdWNlPGFueT4oKG9iaiwgaykgPT4geyBvYmpba10gPSBGcmVxdWVuY3lQcmljZXMuZnJvbVByb3RvKHByb3RvLnByaWNlc0ZvckN1cnJlbmNpZXNba10pOyByZXR1cm4gb2JqOyB9LCB7fSk7fVxuICAgICAgICBpZiAocHJvdG8uZGlzY291bnQpIHttLmRpc2NvdW50ID0gcHJvdG8uZGlzY291bnQubWFwKERpc2NvdW50LmZyb21Qcm90byk7fVxuICAgICAgICByZXR1cm4gbTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihrd2FyZ3M/OiBpLlVuaXRQcmljZUludGVyZmFjZSkge1xuICAgICAgICBpZiAoIWt3YXJncykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIE9iamVjdC5hc3NpZ24odGhpcywga3dhcmdzKTtcbiAgICB9XG5cbiAgICB0b0FwaUpzb24oKTogb2JqZWN0IHtcbiAgICAgICAgY29uc3QgdG9SZXR1cm46IHtcbiAgICAgICAgICAgIFtrZXk6IHN0cmluZ106IGFueTtcbiAgICAgICAgfSA9IHt9O1xuICAgICAgICBcbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnByaWNlc0ZvckN1cnJlbmNpZXMgIT09ICd1bmRlZmluZWQnICYmIHRoaXMucHJpY2VzRm9yQ3VycmVuY2llcyAhPT0gbnVsbCkge3RvUmV0dXJuWydwcmljZXNGb3JDdXJyZW5jaWVzJ10gPSAndG9BcGlKc29uJyBpbiB0aGlzLnByaWNlc0ZvckN1cnJlbmNpZXMgPyAodGhpcy5wcmljZXNGb3JDdXJyZW5jaWVzIGFzIGFueSkudG9BcGlKc29uKCkgOiB0aGlzLnByaWNlc0ZvckN1cnJlbmNpZXM7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuZGlzY291bnQgIT09ICd1bmRlZmluZWQnICYmIHRoaXMuZGlzY291bnQgIT09IG51bGwpIHt0b1JldHVyblsnZGlzY291bnQnXSA9ICd0b0FwaUpzb24nIGluIHRoaXMuZGlzY291bnQgPyAodGhpcy5kaXNjb3VudCBhcyBhbnkpLnRvQXBpSnNvbigpIDogdGhpcy5kaXNjb3VudDt9XG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICB9XG59XG5cbiJdfQ==
439
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLXByaWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbWFya2V0cGxhY2VfYXBwc19zZGsvc3JjL2xpYi9faW50ZXJuYWwvb2JqZWN0cy9hcHAtcHJpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBT0EsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLE9BQU8sQ0FBQztBQUM1QixPQUFPLEtBQUssQ0FBQyxNQUFNLFVBQVUsQ0FBQztBQUU5QixNQUFNLFVBQVUsaUJBQWlCLENBQUksT0FBWSxFQUFFLEtBQWE7SUFDOUQsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUU7UUFDN0IsT0FBTyxLQUFLLENBQUM7S0FDZDtJQUNELE9BQU8sT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO0FBQ3hCLENBQUM7QUFFRCxNQUFNLE9BQU8sUUFBUTtJQU1qQixNQUFNLENBQUMsU0FBUyxDQUFDLEtBQVU7UUFDdkIsSUFBSSxDQUFDLEdBQUcsSUFBSSxRQUFRLEVBQUUsQ0FBQztRQUN2QixDQUFDLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDNUIsSUFBSSxLQUFLLENBQUMsZUFBZSxFQUFFO1lBQUMsQ0FBQyxDQUFDLGVBQWUsR0FBRyxpQkFBaUIsQ0FBeUIsQ0FBQyxDQUFDLG9CQUFvQixFQUFFLEtBQUssQ0FBQyxlQUFlLENBQUMsQ0FBQztTQUFDO1FBQzFJLElBQUksS0FBSyxDQUFDLG9CQUFvQixFQUFFO1lBQUMsQ0FBQyxDQUFDLG9CQUFvQixHQUFHLG9CQUFvQixDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsb0JBQW9CLENBQUMsQ0FBQztTQUFDO1FBQ3RILElBQUksS0FBSyxDQUFDLGlCQUFpQixFQUFFO1lBQUMsQ0FBQyxDQUFDLGlCQUFpQixHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGlCQUFpQixDQUFDLENBQUMsTUFBTSxDQUFNLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxFQUFFLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLFNBQVMsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztTQUFDO1FBQ2pNLE9BQU8sQ0FBQyxDQUFDO0lBQ2IsQ0FBQztJQUVELFlBQVksTUFBNEI7UUFDcEMsSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNULE9BQU87U0FDVjtRQUNELE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFFRCxTQUFTO1FBQ0wsTUFBTSxRQUFRLEdBRVYsRUFBRSxDQUFDO1FBRVAsSUFBSSxPQUFPLElBQUksQ0FBQyxLQUFLLEtBQUssV0FBVyxFQUFFO1lBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7U0FBQztRQUN4RSxJQUFJLE9BQU8sSUFBSSxDQUFDLGVBQWUsS0FBSyxXQUFXLEVBQUU7WUFBQyxRQUFRLENBQUMsaUJBQWlCLENBQUMsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDO1NBQUM7UUFDdEcsSUFBSSxPQUFPLElBQUksQ0FBQyxvQkFBb0IsS0FBSyxXQUFXLElBQUksSUFBSSxDQUFDLG9CQUFvQixLQUFLLElBQUksRUFBRTtZQUFDLFFBQVEsQ0FBQyxzQkFBc0IsQ0FBQyxHQUFHLFdBQVcsSUFBSSxJQUFJLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUFFLElBQUksQ0FBQyxvQkFBNEIsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLG9CQUFvQixDQUFDO1NBQUM7UUFDdlAsSUFBSSxPQUFPLElBQUksQ0FBQyxpQkFBaUIsS0FBSyxXQUFXLElBQUksSUFBSSxDQUFDLGlCQUFpQixLQUFLLElBQUksRUFBRTtZQUFDLFFBQVEsQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHLFdBQVcsSUFBSSxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFFLElBQUksQ0FBQyxpQkFBeUIsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDO1NBQUM7UUFDck8sT0FBTyxRQUFRLENBQUM7SUFDcEIsQ0FBQztDQUNKO0FBRUQsTUFBTSxPQUFPLFNBQVM7SUFJbEIsTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFVO1FBQ3ZCLElBQUksQ0FBQyxHQUFHLElBQUksU0FBUyxFQUFFLENBQUM7UUFDeEIsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzVCLElBQUksS0FBSyxDQUFDLGlCQUFpQixFQUFFO1lBQUMsQ0FBQyxDQUFDLGlCQUFpQixHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGlCQUFpQixDQUFDLENBQUMsTUFBTSxDQUFNLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxFQUFFLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztTQUFDO1FBQ2hNLE9BQU8sQ0FBQyxDQUFDO0lBQ2IsQ0FBQztJQUVELFlBQVksTUFBNkI7UUFDckMsSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNULE9BQU87U0FDVjtRQUNELE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFFRCxTQUFTO1FBQ0wsTUFBTSxRQUFRLEdBRVYsRUFBRSxDQUFDO1FBRVAsSUFBSSxPQUFPLElBQUksQ0FBQyxLQUFLLEtBQUssV0FBVyxFQUFFO1lBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7U0FBQztRQUN4RSxJQUFJLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixLQUFLLFdBQVcsSUFBSSxJQUFJLENBQUMsaUJBQWlCLEtBQUssSUFBSSxFQUFFO1lBQUMsUUFBUSxDQUFDLG1CQUFtQixDQUFDLEdBQUcsV0FBVyxJQUFJLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUUsSUFBSSxDQUFDLGlCQUF5QixDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUM7U0FBQztRQUNyTyxPQUFPLFFBQVEsQ0FBQztJQUNwQixDQUFDO0NBQ0o7QUFFRCxNQUFNLE9BQU8sb0JBQW9CO0lBSzdCLE1BQU0sQ0FBQyxTQUFTLENBQUMsS0FBVTtRQUN2QixJQUFJLENBQUMsR0FBRyxJQUFJLG9CQUFvQixFQUFFLENBQUM7UUFDbkMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzVCLE9BQU8sQ0FBQyxDQUFDO0lBQ2IsQ0FBQztJQUVELFlBQVksTUFBd0M7UUFDaEQsSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNULE9BQU87U0FDVjtRQUNELE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFFRCxTQUFTO1FBQ0wsTUFBTSxRQUFRLEdBRVYsRUFBRSxDQUFDO1FBRVAsSUFBSSxPQUFPLElBQUksQ0FBQyxtQkFBbUIsS0FBSyxXQUFXLEVBQUU7WUFBQyxRQUFRLENBQUMscUJBQXFCLENBQUMsR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUM7U0FBQztRQUNsSCxJQUFJLE9BQU8sSUFBSSxDQUFDLG9CQUFvQixLQUFLLFdBQVcsRUFBRTtZQUFDLFFBQVEsQ0FBQyxzQkFBc0IsQ0FBQyxHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQztTQUFDO1FBQ3JILElBQUksT0FBTyxJQUFJLENBQUMsWUFBWSxLQUFLLFdBQVcsRUFBRTtZQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDO1NBQUM7UUFDN0YsT0FBTyxRQUFRLENBQUM7SUFDcEIsQ0FBQztDQUNKO0FBRUQsTUFBTSxPQUFPLFVBQVU7SUFJbkIsTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFVO1FBQ3ZCLElBQUksQ0FBQyxHQUFHLElBQUksVUFBVSxFQUFFLENBQUM7UUFDekIsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzVCLElBQUksS0FBSyxDQUFDLE9BQU8sRUFBRTtZQUFDLENBQUMsQ0FBQyxPQUFPLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLENBQUM7U0FBQztRQUM3RCxJQUFJLEtBQUssQ0FBQyxTQUFTLEVBQUU7WUFBQyxDQUFDLENBQUMsU0FBUyxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUMsU0FBUyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1NBQUM7UUFDbkUsT0FBTyxDQUFDLENBQUM7SUFDYixDQUFDO0lBRUQsWUFBWSxNQUE4QjtRQUN0QyxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ1QsT0FBTztTQUNWO1FBQ0QsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVELFNBQVM7UUFDTCxNQUFNLFFBQVEsR0FFVixFQUFFLENBQUM7UUFFUCxJQUFJLE9BQU8sSUFBSSxDQUFDLE9BQU8sS0FBSyxXQUFXLEVBQUU7WUFBQyxRQUFRLENBQUMsU0FBUyxDQUFDLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztTQUFDO1FBQzlFLElBQUksT0FBTyxJQUFJLENBQUMsU0FBUyxLQUFLLFdBQVcsRUFBRTtZQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDO1NBQUM7UUFDcEYsT0FBTyxRQUFRLENBQUM7SUFDcEIsQ0FBQztDQUNKO0FBRUQsTUFBTSxPQUFPLFFBQVE7SUFPakIsTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFVO1FBQ3ZCLElBQUksQ0FBQyxHQUFHLElBQUksUUFBUSxFQUFFLENBQUM7UUFDdkIsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzVCLElBQUksS0FBSyxDQUFDLFlBQVksRUFBRTtZQUFDLENBQUMsQ0FBQyxZQUFZLEdBQUcsaUJBQWlCLENBQWlCLENBQUMsQ0FBQyxZQUFZLEVBQUUsS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFDO1NBQUM7UUFDakgsSUFBSSxLQUFLLENBQUMsTUFBTSxFQUFFO1lBQUMsQ0FBQyxDQUFDLE1BQU0sR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQztTQUFDO1FBQzFELElBQUksS0FBSyxDQUFDLEtBQUssRUFBRTtZQUFDLENBQUMsQ0FBQyxLQUFLLEdBQUcsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQUM7UUFDbkQsSUFBSSxLQUFLLENBQUMsR0FBRyxFQUFFO1lBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7U0FBQztRQUM3QyxPQUFPLENBQUMsQ0FBQztJQUNiLENBQUM7SUFFRCxZQUFZLE1BQTRCO1FBQ3BDLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDVCxPQUFPO1NBQ1Y7UUFDRCxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRUQsU0FBUztRQUNMLE1BQU0sUUFBUSxHQUVWLEVBQUUsQ0FBQztRQUVQLElBQUksT0FBTyxJQUFJLENBQUMsWUFBWSxLQUFLLFdBQVcsRUFBRTtZQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDO1NBQUM7UUFDN0YsSUFBSSxPQUFPLElBQUksQ0FBQyxNQUFNLEtBQUssV0FBVyxFQUFFO1lBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7U0FBQztRQUMzRSxJQUFJLE9BQU8sSUFBSSxDQUFDLEtBQUssS0FBSyxXQUFXLElBQUksSUFBSSxDQUFDLEtBQUssS0FBSyxJQUFJLEVBQUU7WUFBQyxRQUFRLENBQUMsT0FBTyxDQUFDLEdBQUcsV0FBVyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFFLElBQUksQ0FBQyxLQUFhLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7U0FBQztRQUM3SixJQUFJLE9BQU8sSUFBSSxDQUFDLEdBQUcsS0FBSyxXQUFXLElBQUksSUFBSSxDQUFDLEdBQUcsS0FBSyxJQUFJLEVBQUU7WUFBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEdBQUcsV0FBVyxJQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFFLElBQUksQ0FBQyxHQUFXLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUM7U0FBQztRQUNqSixJQUFJLE9BQU8sSUFBSSxDQUFDLFVBQVUsS0FBSyxXQUFXLEVBQUU7WUFBQyxRQUFRLENBQUMsWUFBWSxDQUFDLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQztTQUFDO1FBQ3ZGLE9BQU8sUUFBUSxDQUFDO0lBQ3BCLENBQUM7Q0FDSjtBQUVELE1BQU0sT0FBTyxjQUFjO0lBUXZCLE1BQU0sQ0FBQyxTQUFTLENBQUMsS0FBVTtRQUN2QixJQUFJLENBQUMsR0FBRyxJQUFJLGNBQWMsRUFBRSxDQUFDO1FBQzdCLENBQUMsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUM1QixJQUFJLEtBQUssQ0FBQyxTQUFTLEVBQUU7WUFBQyxDQUFDLENBQUMsU0FBUyxHQUFHLGlCQUFpQixDQUF5QixDQUFDLENBQUMsb0JBQW9CLEVBQUUsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1NBQUM7UUFDeEgsSUFBSSxLQUFLLENBQUMsUUFBUSxFQUFFO1lBQUMsQ0FBQyxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsQ0FBQztTQUFDO1FBQ2hFLElBQUksS0FBSyxDQUFDLFVBQVUsRUFBRTtZQUFDLENBQUMsQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUM7U0FBQztRQUM5RSxJQUFJLEtBQUssQ0FBQyxZQUFZLEVBQUU7WUFBQyxDQUFDLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQztTQUFDO1FBQ3pGLElBQUksS0FBSyxDQUFDLGFBQWEsRUFBRTtZQUFDLENBQUMsQ0FBQyxhQUFhLEdBQUcsYUFBYSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLENBQUM7U0FBQztRQUMxRixJQUFJLEtBQUssQ0FBQyxJQUFJLEVBQUU7WUFBQyxDQUFDLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQztTQUFDO1FBQ3pELE9BQU8sQ0FBQyxDQUFDO0lBQ2IsQ0FBQztJQUVELFlBQVksTUFBa0M7UUFDMUMsSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNULE9BQU87U0FDVjtRQUNELE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFFRCxTQUFTO1FBQ0wsTUFBTSxRQUFRLEdBRVYsRUFBRSxDQUFDO1FBRVAsSUFBSSxPQUFPLElBQUksQ0FBQyxTQUFTLEtBQUssV0FBVyxFQUFFO1lBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7U0FBQztRQUNwRixJQUFJLE9BQU8sSUFBSSxDQUFDLFFBQVEsS0FBSyxXQUFXLEVBQUU7WUFBQyxRQUFRLENBQUMsVUFBVSxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQztTQUFDO1FBQ2pGLElBQUksT0FBTyxJQUFJLENBQUMsVUFBVSxLQUFLLFdBQVcsSUFBSSxJQUFJLENBQUMsVUFBVSxLQUFLLElBQUksRUFBRTtZQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsR0FBRyxXQUFXLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUUsSUFBSSxDQUFDLFVBQWtCLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUM7U0FBQztRQUMzTCxJQUFJLE9BQU8sSUFBSSxDQUFDLFlBQVksS0FBSyxXQUFXLElBQUksSUFBSSxDQUFDLFlBQVksS0FBSyxJQUFJLEVBQUU7WUFBQyxRQUFRLENBQUMsY0FBYyxDQUFDLEdBQUcsV0FBVyxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFFLElBQUksQ0FBQyxZQUFvQixDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDO1NBQUM7UUFDdk0sSUFBSSxPQUFPLElBQUksQ0FBQyxhQUFhLEtBQUssV0FBVyxJQUFJLElBQUksQ0FBQyxhQUFhLEtBQUssSUFBSSxFQUFFO1lBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxHQUFHLFdBQVcsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBRSxJQUFJLENBQUMsYUFBcUIsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQztTQUFDO1FBQzdNLElBQUksT0FBTyxJQUFJLENBQUMsSUFBSSxLQUFLLFdBQVcsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLElBQUksRUFBRTtZQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsR0FBRyxXQUFXLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUUsSUFBSSxDQUFDLElBQVksQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztTQUFDO1FBQ3ZKLE9BQU8sUUFBUSxDQUFDO0lBQ3BCLENBQUM7Q0FDSjtBQUVELE1BQU0sT0FBTyxlQUFlO0lBR3hCLE1BQU0sQ0FBQyxTQUFTLENBQUMsS0FBVTtRQUN2QixJQUFJLENBQUMsR0FBRyxJQUFJLGVBQWUsRUFBRSxDQUFDO1FBQzlCLENBQUMsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUM1QixJQUFJLEtBQUssQ0FBQyxvQkFBb0IsRUFBRTtZQUFDLENBQUMsQ0FBQyxvQkFBb0IsR0FBRyxLQUFLLENBQUMsb0JBQW9CLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsQ0FBQztTQUFDO1FBQ3BILE9BQU8sQ0FBQyxDQUFDO0lBQ2IsQ0FBQztJQUVELFlBQVksTUFBbUM7UUFDM0MsSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNULE9BQU87U0FDVjtRQUNELE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFFRCxTQUFTO1FBQ0wsTUFBTSxRQUFRLEdBRVYsRUFBRSxDQUFDO1FBRVAsSUFBSSxPQUFPLElBQUksQ0FBQyxvQkFBb0IsS0FBSyxXQUFXLElBQUksSUFBSSxDQUFDLG9CQUFvQixLQUFLLElBQUksRUFBRTtZQUFDLFFBQVEsQ0FBQyxzQkFBc0IsQ0FBQyxHQUFHLFdBQVcsSUFBSSxJQUFJLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUFFLElBQUksQ0FBQyxvQkFBNEIsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLG9CQUFvQixDQUFDO1NBQUM7UUFDdlAsT0FBTyxRQUFRLENBQUM7SUFDcEIsQ0FBQztDQUNKO0FBRUQsTUFBTSxPQUFPLGFBQWE7SUFHdEIsTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFVO1FBQ3ZCLElBQUksQ0FBQyxHQUFHLElBQUksYUFBYSxFQUFFLENBQUM7UUFDNUIsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzVCLElBQUksS0FBSyxDQUFDLEtBQUssRUFBRTtZQUFDLENBQUMsQ0FBQyxLQUFLLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7U0FBQztRQUN2RCxPQUFPLENBQUMsQ0FBQztJQUNiLENBQUM7SUFFRCxZQUFZLE1BQWlDO1FBQ3pDLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDVCxPQUFPO1NBQ1Y7UUFDRCxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRUQsU0FBUztRQUNMLE1BQU0sUUFBUSxHQUVWLEVBQUUsQ0FBQztRQUVQLElBQUksT0FBTyxJQUFJLENBQUMsS0FBSyxLQUFLLFdBQVcsRUFBRTtZQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO1NBQUM7UUFDeEUsT0FBTyxRQUFRLENBQUM7SUFDcEIsQ0FBQztDQUNKO0FBRUQsTUFBTSxPQUFPLCtCQUErQjtJQUl4QyxNQUFNLENBQUMsU0FBUyxDQUFDLEtBQVU7UUFDdkIsSUFBSSxDQUFDLEdBQUcsSUFBSSwrQkFBK0IsRUFBRSxDQUFDO1FBQzlDLENBQUMsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUM1QixJQUFJLEtBQUssQ0FBQyxLQUFLLEVBQUU7WUFBQyxDQUFDLENBQUMsS0FBSyxHQUFHLFFBQVEsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQUM7UUFDN0QsT0FBTyxDQUFDLENBQUM7SUFDYixDQUFDO0lBRUQsWUFBWSxNQUFtRDtRQUMzRCxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ1QsT0FBTztTQUNWO1FBQ0QsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVELFNBQVM7UUFDTCxNQUFNLFFBQVEsR0FFVixFQUFFLENBQUM7UUFFUCxJQUFJLE9BQU8sSUFBSSxDQUFDLEdBQUcsS0FBSyxXQUFXLEVBQUU7WUFBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQztTQUFDO1FBQ2xFLElBQUksT0FBTyxJQUFJLENBQUMsS0FBSyxLQUFLLFdBQVcsSUFBSSxJQUFJLENBQUMsS0FBSyxLQUFLLElBQUksRUFBRTtZQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsR0FBRyxXQUFXLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUUsSUFBSSxDQUFDLEtBQWEsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQztTQUFDO1FBQzdKLE9BQU8sUUFBUSxDQUFDO0lBQ3BCLENBQUM7Q0FDSjtBQUVELE1BQU0sT0FBTyxpQ0FBaUM7SUFJMUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFVO1FBQ3ZCLElBQUksQ0FBQyxHQUFHLElBQUksaUNBQWlDLEVBQUUsQ0FBQztRQUNoRCxDQUFDLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDNUIsSUFBSSxLQUFLLENBQUMsS0FBSyxFQUFFO1lBQUMsQ0FBQyxDQUFDLEtBQUssR0FBRyxlQUFlLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUFDO1FBQ3BFLE9BQU8sQ0FBQyxDQUFDO0lBQ2IsQ0FBQztJQUVELFlBQVksTUFBcUQ7UUFDN0QsSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNULE9BQU87U0FDVjtRQUNELE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFFRCxTQUFTO1FBQ0wsTUFBTSxRQUFRLEdBRVYsRUFBRSxDQUFDO1FBRVAsSUFBSSxPQUFPLElBQUksQ0FBQyxHQUFHLEtBQUssV0FBVyxFQUFFO1lBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUM7U0FBQztRQUNsRSxJQUFJLE9BQU8sSUFBSSxDQUFDLEtBQUssS0FBSyxXQUFXLElBQUksSUFBSSxDQUFDLEtBQUssS0FBSyxJQUFJLEVBQUU7WUFBQyxRQUFRLENBQUMsT0FBTyxDQUFDLEdBQUcsV0FBVyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFFLElBQUksQ0FBQyxLQUFhLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7U0FBQztRQUM3SixPQUFPLFFBQVEsQ0FBQztJQUNwQixDQUFDO0NBQ0o7QUFFRCxNQUFNLE9BQU8sOEJBQThCO0lBSXZDLE1BQU0sQ0FBQyxTQUFTLENBQUMsS0FBVTtRQUN2QixJQUFJLENBQUMsR0FBRyxJQUFJLDhCQUE4QixFQUFFLENBQUM7UUFDN0MsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzVCLElBQUksS0FBSyxDQUFDLEtBQUssRUFBRTtZQUFDLENBQUMsQ0FBQyxLQUFLLEdBQUcsU0FBUyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7U0FBQztRQUM5RCxPQUFPLENBQUMsQ0FBQztJQUNiLENBQUM7SUFFRCxZQUFZLE1BQWtEO1FBQzFELElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDVCxPQUFPO1NBQ1Y7UUFDRCxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRUQsU0FBUztRQUNMLE1BQU0sUUFBUSxHQUVWLEVBQUUsQ0FBQztRQUVQLElBQUksT0FBTyxJQUFJLENBQUMsR0FBRyxLQUFLLFdBQVcsRUFBRTtZQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDO1NBQUM7UUFDbEUsSUFBSSxPQUFPLElBQUksQ0FBQyxLQUFLLEtBQUssV0FBVyxJQUFJLElBQUksQ0FBQyxLQUFLLEtBQUssSUFBSSxFQUFFO1lBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxHQUFHLFdBQVcsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBRSxJQUFJLENBQUMsS0FBYSxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDO1NBQUM7UUFDN0osT0FBTyxRQUFRLENBQUM7SUFDcEIsQ0FBQztDQUNKO0FBRUQsTUFBTSxPQUFPLFdBQVc7SUFLcEIsTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFVO1FBQ3ZCLElBQUksQ0FBQyxHQUFHLElBQUksV0FBVyxFQUFFLENBQUM7UUFDMUIsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzVCLElBQUksS0FBSyxDQUFDLEtBQUssRUFBRTtZQUFDLENBQUMsQ0FBQyxLQUFLLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7U0FBQztRQUN2RCxJQUFJLEtBQUssQ0FBQyxHQUFHLEVBQUU7WUFBQyxDQUFDLENBQUMsR0FBRyxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1NBQUM7UUFDakQsSUFBSSxLQUFLLENBQUMsR0FBRyxFQUFFO1lBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQztTQUFDO1FBQ2pELE9BQU8sQ0FBQyxDQUFDO0lBQ2IsQ0FBQztJQUVELFlBQVksTUFBK0I7UUFDdkMsSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNULE9BQU87U0FDVjtRQUNELE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFFRCxTQUFTO1FBQ0wsTUFBTSxRQUFRLEdBRVYsRUFBRSxDQUFDO1FBRVAsSUFBSSxPQUFPLElBQUksQ0FBQyxLQUFLLEtBQUssV0FBVyxFQUFFO1lBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7U0FBQztRQUN4RSxJQUFJLE9BQU8sSUFBSSxDQUFDLEdBQUcsS0FBSyxXQUFXLEVBQUU7WUFBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQztTQUFDO1FBQ2xFLElBQUksT0FBTyxJQUFJLENBQUMsR0FBRyxLQUFLLFdBQVcsRUFBRTtZQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDO1NBQUM7UUFDbEUsT0FBTyxRQUFRLENBQUM7SUFDcEIsQ0FBQztDQUNKO0FBRUQsTUFBTSxPQUFPLFlBQVk7SUFJckIsTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFVO1FBQ3ZCLElBQUksQ0FBQyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDM0IsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzVCLElBQUksS0FBSyxDQUFDLFFBQVEsRUFBRTtZQUFDLENBQUMsQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLENBQUM7U0FBQztRQUNoRSxPQUFPLENBQUMsQ0FBQztJQUNiLENBQUM7SUFFRCxZQUFZLE1BQWdDO1FBQ3hDLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDVCxPQUFPO1NBQ1Y7UUFDRCxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRUQsU0FBUztRQUNMLE1BQU0sUUFBUSxHQUVWLEVBQUUsQ0FBQztRQUVQLElBQUksT0FBTyxJQUFJLENBQUMsS0FBSyxLQUFLLFdBQVcsRUFBRTtZQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO1NBQUM7UUFDeEUsSUFBSSxPQUFPLElBQUksQ0FBQyxRQUFRLEtBQUssV0FBVyxFQUFFO1lBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7U0FBQztRQUNqRixPQUFPLFFBQVEsQ0FBQztJQUNwQixDQUFDO0NBQ0o7QUFFRCxNQUFNLE9BQU8sU0FBUztJQUlsQixNQUFNLENBQUMsU0FBUyxDQUFDLEtBQVU7UUFDdkIsSUFBSSxDQUFDLEdBQUcsSUFBSSxTQUFTLEVBQUUsQ0FBQztRQUN4QixDQUFDLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDNUIsSUFBSSxLQUFLLENBQUMsbUJBQW1CLEVBQUU7WUFBQyxDQUFDLENBQUMsbUJBQW1CLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxNQUFNLENBQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLEVBQUUsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsZUFBZSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1NBQUM7UUFDL00sSUFBSSxLQUFLLENBQUMsUUFBUSxFQUFFO1lBQUMsQ0FBQyxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUM7U0FBQztRQUMxRSxPQUFPLENBQUMsQ0FBQztJQUNiLENBQUM7SUFFRCxZQUFZLE1BQTZCO1FBQ3JDLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDVCxPQUFPO1NBQ1Y7UUFDRCxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRUQsU0FBUztRQUNMLE1BQU0sUUFBUSxHQUVWLEVBQUUsQ0FBQztRQUVQLElBQUksT0FBTyxJQUFJLENBQUMsbUJBQW1CLEtBQUssV0FBVyxJQUFJLElBQUksQ0FBQyxtQkFBbUIsS0FBSyxJQUFJLEVBQUU7WUFBQyxRQUFRLENBQUMscUJBQXFCLENBQUMsR0FBRyxXQUFXLElBQUksSUFBSSxDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FBRSxJQUFJLENBQUMsbUJBQTJCLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQztTQUFDO1FBQ2pQLElBQUksT0FBTyxJQUFJLENBQUMsUUFBUSxLQUFLLFdBQVcsSUFBSSxJQUFJLENBQUMsUUFBUSxLQUFLLElBQUksRUFBRTtZQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsR0FBRyxXQUFXLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUUsSUFBSSxDQUFDLFFBQWdCLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7U0FBQztRQUMvSyxPQUFPLFFBQVEsQ0FBQztJQUNwQixDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyIvLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vIENvZGUgZ2VuZXJhdGVkIGJ5IHNka2dlblxuLy8gRE8gTk9UIEVESVQhLlxuLy9cbi8vIE9iamVjdHMuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbmltcG9ydCAqIGFzIGkgZnJvbSAnLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBGZWUgfSBmcm9tICcuL2ZlZSc7XG5pbXBvcnQgKiBhcyBlIGZyb20gJy4uL2VudW1zJztcblxuZXhwb3J0IGZ1bmN0aW9uIGVudW1TdHJpbmdUb1ZhbHVlPEU+KGVudW1SZWY6IGFueSwgdmFsdWU6IHN0cmluZyk6IEUge1xuICBpZiAodHlwZW9mIHZhbHVlID09PSAnbnVtYmVyJykge1xuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxuICByZXR1cm4gZW51bVJlZlt2YWx1ZV07XG59XG5cbmV4cG9ydCBjbGFzcyBBcHBQcmljZSBpbXBsZW1lbnRzIGkuQXBwUHJpY2VJbnRlcmZhY2Uge1xuICAgIGFwcElkOiBzdHJpbmc7XG4gICAgZGlzcGxheU92ZXJyaWRlOiBlLlByaWNlRGlzcGxheU92ZXJyaWRlO1xuICAgIGJpbGxpbmdDb25maWd1cmF0aW9uOiBCaWxsaW5nQ29uZmlndXJhdGlvbjtcbiAgICBwcmljZXNGb3JFZGl0aW9uczoge1trZXk6IHN0cmluZ106IFVuaXRQcmljZX07XG5cbiAgICBzdGF0aWMgZnJvbVByb3RvKHByb3RvOiBhbnkpOiBBcHBQcmljZSB7XG4gICAgICAgIGxldCBtID0gbmV3IEFwcFByaWNlKCk7XG4gICAgICAgIG0gPSBPYmplY3QuYXNzaWduKG0sIHByb3RvKTtcbiAgICAgICAgaWYgKHByb3RvLmRpc3BsYXlPdmVycmlkZSkge20uZGlzcGxheU92ZXJyaWRlID0gZW51bVN0cmluZ1RvVmFsdWU8ZS5QcmljZURpc3BsYXlPdmVycmlkZT4oZS5QcmljZURpc3BsYXlPdmVycmlkZSwgcHJvdG8uZGlzcGxheU92ZXJyaWRlKTt9XG4gICAgICAgIGlmIChwcm90by5iaWxsaW5nQ29uZmlndXJhdGlvbikge20uYmlsbGluZ0NvbmZpZ3VyYXRpb24gPSBCaWxsaW5nQ29uZmlndXJhdGlvbi5mcm9tUHJvdG8ocHJvdG8uYmlsbGluZ0NvbmZpZ3VyYXRpb24pO31cbiAgICAgICAgaWYgKHByb3RvLnByaWNlc0ZvckVkaXRpb25zKSB7bS5wcmljZXNGb3JFZGl0aW9ucyA9IE9iamVjdC5rZXlzKHByb3RvLnByaWNlc0ZvckVkaXRpb25zKS5yZWR1Y2U8YW55Pigob2JqLCBrKSA9PiB7IG9ialtrXSA9IFVuaXRQcmljZS5mcm9tUHJvdG8ocHJvdG8ucHJpY2VzRm9yRWRpdGlvbnNba10pOyByZXR1cm4gb2JqOyB9LCB7fSk7fVxuICAgICAgICByZXR1cm4gbTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihrd2FyZ3M/OiBpLkFwcFByaWNlSW50ZXJmYWNlKSB7XG4gICAgICAgIGlmICgha3dhcmdzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBrd2FyZ3MpO1xuICAgIH1cblxuICAgIHRvQXBpSnNvbigpOiBvYmplY3Qge1xuICAgICAgICBjb25zdCB0b1JldHVybjoge1xuICAgICAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICB9ID0ge307XG4gICAgICAgIFxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuYXBwSWQgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2FwcElkJ10gPSB0aGlzLmFwcElkO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmRpc3BsYXlPdmVycmlkZSAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnZGlzcGxheU92ZXJyaWRlJ10gPSB0aGlzLmRpc3BsYXlPdmVycmlkZTt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5iaWxsaW5nQ29uZmlndXJhdGlvbiAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy5iaWxsaW5nQ29uZmlndXJhdGlvbiAhPT0gbnVsbCkge3RvUmV0dXJuWydiaWxsaW5nQ29uZmlndXJhdGlvbiddID0gJ3RvQXBpSnNvbicgaW4gdGhpcy5iaWxsaW5nQ29uZmlndXJhdGlvbiA/ICh0aGlzLmJpbGxpbmdDb25maWd1cmF0aW9uIGFzIGFueSkudG9BcGlKc29uKCkgOiB0aGlzLmJpbGxpbmdDb25maWd1cmF0aW9uO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnByaWNlc0ZvckVkaXRpb25zICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLnByaWNlc0ZvckVkaXRpb25zICE9PSBudWxsKSB7dG9SZXR1cm5bJ3ByaWNlc0ZvckVkaXRpb25zJ10gPSAndG9BcGlKc29uJyBpbiB0aGlzLnByaWNlc0ZvckVkaXRpb25zID8gKHRoaXMucHJpY2VzRm9yRWRpdGlvbnMgYXMgYW55KS50b0FwaUpzb24oKSA6IHRoaXMucHJpY2VzRm9yRWRpdGlvbnM7fVxuICAgICAgICByZXR1cm4gdG9SZXR1cm47XG4gICAgfVxufVxuXG5leHBvcnQgY2xhc3MgQXBwUHJpY2VzIGltcGxlbWVudHMgaS5BcHBQcmljZXNJbnRlcmZhY2Uge1xuICAgIGFwcElkOiBzdHJpbmc7XG4gICAgcHJpY2VzRm9yQ29udGV4dHM6IHtba2V5OiBzdHJpbmddOiBBcHBQcmljZX07XG5cbiAgICBzdGF0aWMgZnJvbVByb3RvKHByb3RvOiBhbnkpOiBBcHBQcmljZXMge1xuICAgICAgICBsZXQgbSA9IG5ldyBBcHBQcmljZXMoKTtcbiAgICAgICAgbSA9IE9iamVjdC5hc3NpZ24obSwgcHJvdG8pO1xuICAgICAgICBpZiAocHJvdG8ucHJpY2VzRm9yQ29udGV4dHMpIHttLnByaWNlc0ZvckNvbnRleHRzID0gT2JqZWN0LmtleXMocHJvdG8ucHJpY2VzRm9yQ29udGV4dHMpLnJlZHVjZTxhbnk+KChvYmosIGspID0+IHsgb2JqW2tdID0gQXBwUHJpY2UuZnJvbVByb3RvKHByb3RvLnByaWNlc0ZvckNvbnRleHRzW2tdKTsgcmV0dXJuIG9iajsgfSwge30pO31cbiAgICAgICAgcmV0dXJuIG07XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3Ioa3dhcmdzPzogaS5BcHBQcmljZXNJbnRlcmZhY2UpIHtcbiAgICAgICAgaWYgKCFrd2FyZ3MpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGt3YXJncyk7XG4gICAgfVxuXG4gICAgdG9BcGlKc29uKCk6IG9iamVjdCB7XG4gICAgICAgIGNvbnN0IHRvUmV0dXJuOiB7XG4gICAgICAgICAgICBba2V5OiBzdHJpbmddOiBhbnk7XG4gICAgICAgIH0gPSB7fTtcbiAgICAgICAgXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5hcHBJZCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnYXBwSWQnXSA9IHRoaXMuYXBwSWQ7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMucHJpY2VzRm9yQ29udGV4dHMgIT09ICd1bmRlZmluZWQnICYmIHRoaXMucHJpY2VzRm9yQ29udGV4dHMgIT09IG51bGwpIHt0b1JldHVyblsncHJpY2VzRm9yQ29udGV4dHMnXSA9ICd0b0FwaUpzb24nIGluIHRoaXMucHJpY2VzRm9yQ29udGV4dHMgPyAodGhpcy5wcmljZXNGb3JDb250ZXh0cyBhcyBhbnkpLnRvQXBpSnNvbigpIDogdGhpcy5wcmljZXNGb3JDb250ZXh0czt9XG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBCaWxsaW5nQ29uZmlndXJhdGlvbiBpbXBsZW1lbnRzIGkuQmlsbGluZ0NvbmZpZ3VyYXRpb25JbnRlcmZhY2Uge1xuICAgIHVzZXNWYXJpYWJsZVByaWNpbmc6IGJvb2xlYW47XG4gICAgdXNlc0NvbXBvbmVudFByaWNpbmc6IGJvb2xlYW47XG4gICAgdXNlc0VkaXRpb25zOiBib29sZWFuO1xuXG4gICAgc3RhdGljIGZyb21Qcm90byhwcm90bzogYW55KTogQmlsbGluZ0NvbmZpZ3VyYXRpb24ge1xuICAgICAgICBsZXQgbSA9IG5ldyBCaWxsaW5nQ29uZmlndXJhdGlvbigpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIHJldHVybiBtO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKGt3YXJncz86IGkuQmlsbGluZ0NvbmZpZ3VyYXRpb25JbnRlcmZhY2UpIHtcbiAgICAgICAgaWYgKCFrd2FyZ3MpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGt3YXJncyk7XG4gICAgfVxuXG4gICAgdG9BcGlKc29uKCk6IG9iamVjdCB7XG4gICAgICAgIGNvbnN0IHRvUmV0dXJuOiB7XG4gICAgICAgICAgICBba2V5OiBzdHJpbmddOiBhbnk7XG4gICAgICAgIH0gPSB7fTtcbiAgICAgICAgXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy51c2VzVmFyaWFibGVQcmljaW5nICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWyd1c2VzVmFyaWFibGVQcmljaW5nJ10gPSB0aGlzLnVzZXNWYXJpYWJsZVByaWNpbmc7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMudXNlc0NvbXBvbmVudFByaWNpbmcgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ3VzZXNDb21wb25lbnRQcmljaW5nJ10gPSB0aGlzLnVzZXNDb21wb25lbnRQcmljaW5nO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnVzZXNFZGl0aW9ucyAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsndXNlc0VkaXRpb25zJ10gPSB0aGlzLnVzZXNFZGl0aW9uczt9XG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBDb21taXRtZW50IGltcGxlbWVudHMgaS5Db21taXRtZW50SW50ZXJmYWNlIHtcbiAgICBpbml0aWFsOiBudW1iZXI7XG4gICAgcmVjdXJyaW5nOiBudW1iZXI7XG5cbiAgICBzdGF0aWMgZnJvbVByb3RvKHByb3RvOiBhbnkpOiBDb21taXRtZW50IHtcbiAgICAgICAgbGV0IG0gPSBuZXcgQ29tbWl0bWVudCgpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIGlmIChwcm90by5pbml0aWFsKSB7bS5pbml0aWFsID0gcGFyc2VJbnQocHJvdG8uaW5pdGlhbCwgMTApO31cbiAgICAgICAgaWYgKHByb3RvLnJlY3VycmluZykge20ucmVjdXJyaW5nID0gcGFyc2VJbnQocHJvdG8ucmVjdXJyaW5nLCAxMCk7fVxuICAgICAgICByZXR1cm4gbTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihrd2FyZ3M/OiBpLkNvbW1pdG1lbnRJbnRlcmZhY2UpIHtcbiAgICAgICAgaWYgKCFrd2FyZ3MpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGt3YXJncyk7XG4gICAgfVxuXG4gICAgdG9BcGlKc29uKCk6IG9iamVjdCB7XG4gICAgICAgIGNvbnN0IHRvUmV0dXJuOiB7XG4gICAgICAgICAgICBba2V5OiBzdHJpbmddOiBhbnk7XG4gICAgICAgIH0gPSB7fTtcbiAgICAgICAgXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5pbml0aWFsICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydpbml0aWFsJ10gPSB0aGlzLmluaXRpYWw7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMucmVjdXJyaW5nICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydyZWN1cnJpbmcnXSA9IHRoaXMucmVjdXJyaW5nO31cbiAgICAgICAgcmV0dXJuIHRvUmV0dXJuO1xuICAgIH1cbn1cblxuZXhwb3J0IGNsYXNzIERpc2NvdW50IGltcGxlbWVudHMgaS5EaXNjb3VudEludGVyZmFjZSB7XG4gICAgZGlzY291bnRUeXBlOiBlLkRpc2NvdW50VHlwZTtcbiAgICBhbW91bnQ6IG51bWJlcjtcbiAgICBzdGFydDogRGF0ZTtcbiAgICBlbmQ6IERhdGU7XG4gICAgY3VzdG9tZXJJZDogc3RyaW5nO1xuXG4gICAgc3RhdGljIGZyb21Qcm90byhwcm90bzogYW55KTogRGlzY291bnQge1xuICAgICAgICBsZXQgbSA9IG5ldyBEaXNjb3VudCgpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIGlmIChwcm90by5kaXNjb3VudFR5cGUpIHttLmRpc2NvdW50VHlwZSA9IGVudW1TdHJpbmdUb1ZhbHVlPGUuRGlzY291bnRUeXBlPihlLkRpc2NvdW50VHlwZSwgcHJvdG8uZGlzY291bnRUeXBlKTt9XG4gICAgICAgIGlmIChwcm90by5hbW91bnQpIHttLmFtb3VudCA9IHBhcnNlSW50KHByb3RvLmFtb3VudCwgMTApO31cbiAgICAgICAgaWYgKHByb3RvLnN0YXJ0KSB7bS5zdGFydCA9IG5ldyBEYXRlKHByb3RvLnN0YXJ0KTt9XG4gICAgICAgIGlmIChwcm90by5lbmQpIHttLmVuZCA9IG5ldyBEYXRlKHByb3RvLmVuZCk7fVxuICAgICAgICByZXR1cm4gbTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihrd2FyZ3M/OiBpLkRpc2NvdW50SW50ZXJmYWNlKSB7XG4gICAgICAgIGlmICgha3dhcmdzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBrd2FyZ3MpO1xuICAgIH1cblxuICAgIHRvQXBpSnNvbigpOiBvYmplY3Qge1xuICAgICAgICBjb25zdCB0b1JldHVybjoge1xuICAgICAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICB9ID0ge307XG4gICAgICAgIFxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuZGlzY291bnRUeXBlICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydkaXNjb3VudFR5cGUnXSA9IHRoaXMuZGlzY291bnRUeXBlO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmFtb3VudCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnYW1vdW50J10gPSB0aGlzLmFtb3VudDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5zdGFydCAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy5zdGFydCAhPT0gbnVsbCkge3RvUmV0dXJuWydzdGFydCddID0gJ3RvQXBpSnNvbicgaW4gdGhpcy5zdGFydCA/ICh0aGlzLnN0YXJ0IGFzIGFueSkudG9BcGlKc29uKCkgOiB0aGlzLnN0YXJ0O31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmVuZCAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy5lbmQgIT09IG51bGwpIHt0b1JldHVyblsnZW5kJ10gPSAndG9BcGlKc29uJyBpbiB0aGlzLmVuZCA/ICh0aGlzLmVuZCBhcyBhbnkpLnRvQXBpSnNvbigpIDogdGhpcy5lbmQ7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuY3VzdG9tZXJJZCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnY3VzdG9tZXJJZCddID0gdGhpcy5jdXN0b21lcklkO31cbiAgICAgICAgcmV0dXJuIHRvUmV0dXJuO1xuICAgIH1cbn1cblxuZXhwb3J0IGNsYXNzIEZyZXF1ZW5jeVByaWNlIGltcGxlbWVudHMgaS5GcmVxdWVuY3lQcmljZUludGVyZmFjZSB7XG4gICAgZnJlcXVlbmN5OiBlLlVuaXRCaWxsaW5nRnJlcXVlbmN5O1xuICAgIHNldHVwRmVlOiBudW1iZXI7XG4gICAgY29tbWl0bWVudDogQ29tbWl0bWVudDtcbiAgICBwcmljaW5nUnVsZXM6IFByaWNpbmdSdWxlW107XG4gICAgaW5zdGFuY2VQcmljZTogSW5zdGFuY2VQcmljZTtcbiAgICBmZWVzOiBGZWVbXTtcblxuICAgIHN0YXRpYyBmcm9tUHJvdG8ocHJvdG86IGFueSk6IEZyZXF1ZW5jeVByaWNlIHtcbiAgICAgICAgbGV0IG0gPSBuZXcgRnJlcXVlbmN5UHJpY2UoKTtcbiAgICAgICAgbSA9IE9iamVjdC5hc3NpZ24obSwgcHJvdG8pO1xuICAgICAgICBpZiAocHJvdG8uZnJlcXVlbmN5KSB7bS5mcmVxdWVuY3kgPSBlbnVtU3RyaW5nVG9WYWx1ZTxlLlVuaXRCaWxsaW5nRnJlcXVlbmN5PihlLlVuaXRCaWxsaW5nRnJlcXVlbmN5LCBwcm90by5mcmVxdWVuY3kpO31cbiAgICAgICAgaWYgKHByb3RvLnNldHVwRmVlKSB7bS5zZXR1cEZlZSA9IHBhcnNlSW50KHByb3RvLnNldHVwRmVlLCAxMCk7fVxuICAgICAgICBpZiAocHJvdG8uY29tbWl0bWVudCkge20uY29tbWl0bWVudCA9IENvbW1pdG1lbnQuZnJvbVByb3RvKHByb3RvLmNvbW1pdG1lbnQpO31cbiAgICAgICAgaWYgKHByb3RvLnByaWNpbmdSdWxlcykge20ucHJpY2luZ1J1bGVzID0gcHJvdG8ucHJpY2luZ1J1bGVzLm1hcChQcmljaW5nUnVsZS5mcm9tUHJvdG8pO31cbiAgICAgICAgaWYgKHByb3RvLmluc3RhbmNlUHJpY2UpIHttLmluc3RhbmNlUHJpY2UgPSBJbnN0YW5jZVByaWNlLmZyb21Qcm90byhwcm90by5pbnN0YW5jZVByaWNlKTt9XG4gICAgICAgIGlmIChwcm90by5mZWVzKSB7bS5mZWVzID0gcHJvdG8uZmVlcy5tYXAoRmVlLmZyb21Qcm90byk7fVxuICAgICAgICByZXR1cm4gbTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihrd2FyZ3M/OiBpLkZyZXF1ZW5jeVByaWNlSW50ZXJmYWNlKSB7XG4gICAgICAgIGlmICgha3dhcmdzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBrd2FyZ3MpO1xuICAgIH1cblxuICAgIHRvQXBpSnNvbigpOiBvYmplY3Qge1xuICAgICAgICBjb25zdCB0b1JldHVybjoge1xuICAgICAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICB9ID0ge307XG4gICAgICAgIFxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuZnJlcXVlbmN5ICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydmcmVxdWVuY3knXSA9IHRoaXMuZnJlcXVlbmN5O31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnNldHVwRmVlICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydzZXR1cEZlZSddID0gdGhpcy5zZXR1cEZlZTt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5jb21taXRtZW50ICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLmNvbW1pdG1lbnQgIT09IG51bGwpIHt0b1JldHVyblsnY29tbWl0bWVudCddID0gJ3RvQXBpSnNvbicgaW4gdGhpcy5jb21taXRtZW50ID8gKHRoaXMuY29tbWl0bWVudCBhcyBhbnkpLnRvQXBpSnNvbigpIDogdGhpcy5jb21taXRtZW50O31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnByaWNpbmdSdWxlcyAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy5wcmljaW5nUnVsZXMgIT09IG51bGwpIHt0b1JldHVyblsncHJpY2luZ1J1bGVzJ10gPSAndG9BcGlKc29uJyBpbiB0aGlzLnByaWNpbmdSdWxlcyA/ICh0aGlzLnByaWNpbmdSdWxlcyBhcyBhbnkpLnRvQXBpSnNvbigpIDogdGhpcy5wcmljaW5nUnVsZXM7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuaW5zdGFuY2VQcmljZSAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy5pbnN0YW5jZVByaWNlICE9PSBudWxsKSB7dG9SZXR1cm5bJ2luc3RhbmNlUHJpY2UnXSA9ICd0b0FwaUpzb24nIGluIHRoaXMuaW5zdGFuY2VQcmljZSA/ICh0aGlzLmluc3RhbmNlUHJpY2UgYXMgYW55KS50b0FwaUpzb24oKSA6IHRoaXMuaW5zdGFuY2VQcmljZTt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5mZWVzICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLmZlZXMgIT09IG51bGwpIHt0b1JldHVyblsnZmVlcyddID0gJ3RvQXBpSnNvbicgaW4gdGhpcy5mZWVzID8gKHRoaXMuZmVlcyBhcyBhbnkpLnRvQXBpSnNvbigpIDogdGhpcy5mZWVzO31cbiAgICAgICAgcmV0dXJuIHRvUmV0dXJuO1xuICAgIH1cbn1cblxuZXhwb3J0IGNsYXNzIEZyZXF1ZW5jeVByaWNlcyBpbXBsZW1lbnRzIGkuRnJlcXVlbmN5UHJpY2VzSW50ZXJmYWNlIHtcbiAgICBwcmljZXNGb3JGcmVxdWVuY2llczogRnJlcXVlbmN5UHJpY2VbXTtcblxuICAgIHN0YXRpYyBmcm9tUHJvdG8ocHJvdG86IGFueSk6IEZyZXF1ZW5jeVByaWNlcyB7XG4gICAgICAgIGxldCBtID0gbmV3IEZyZXF1ZW5jeVByaWNlcygpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIGlmIChwcm90by5wcmljZXNGb3JGcmVxdWVuY2llcykge20ucHJpY2VzRm9yRnJlcXVlbmNpZXMgPSBwcm90by5wcmljZXNGb3JGcmVxdWVuY2llcy5tYXAoRnJlcXVlbmN5UHJpY2UuZnJvbVByb3RvKTt9XG4gICAgICAgIHJldHVybiBtO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKGt3YXJncz86IGkuRnJlcXVlbmN5UHJpY2VzSW50ZXJmYWNlKSB7XG4gICAgICAgIGlmICgha3dhcmdzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBrd2FyZ3MpO1xuICAgIH1cblxuICAgIHRvQXBpSnNvbigpOiBvYmplY3Qge1xuICAgICAgICBjb25zdCB0b1JldHVybjoge1xuICAgICAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICB9ID0ge307XG4gICAgICAgIFxuICAgICAgICBpZiAodHlwZW9mIHRoaXMucHJpY2VzRm9yRnJlcXVlbmNpZXMgIT09ICd1bmRlZmluZWQnICYmIHRoaXMucHJpY2VzRm9yRnJlcXVlbmNpZXMgIT09IG51bGwpIHt0b1JldHVyblsncHJpY2VzRm9yRnJlcXVlbmNpZXMnXSA9ICd0b0FwaUpzb24nIGluIHRoaXMucHJpY2VzRm9yRnJlcXVlbmNpZXMgPyAodGhpcy5wcmljZXNGb3JGcmVxdWVuY2llcyBhcyBhbnkpLnRvQXBpSnNvbigpIDogdGhpcy5wcmljZXNGb3JGcmVxdWVuY2llczt9XG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBJbnN0YW5jZVByaWNlIGltcGxlbWVudHMgaS5JbnN0YW5jZVByaWNlSW50ZXJmYWNlIHtcbiAgICB0b3RhbDogbnVtYmVyO1xuXG4gICAgc3RhdGljIGZyb21Qcm90byhwcm90bzogYW55KTogSW5zdGFuY2VQcmljZSB7XG4gICAgICAgIGxldCBtID0gbmV3IEluc3RhbmNlUHJpY2UoKTtcbiAgICAgICAgbSA9IE9iamVjdC5hc3NpZ24obSwgcHJvdG8pO1xuICAgICAgICBpZiAocHJvdG8udG90YWwpIHttLnRvdGFsID0gcGFyc2VJbnQocHJvdG8udG90YWwsIDEwKTt9XG4gICAgICAgIHJldHVybiBtO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKGt3YXJncz86IGkuSW5zdGFuY2VQcmljZUludGVyZmFjZSkge1xuICAgICAgICBpZiAoIWt3YXJncykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIE9iamVjdC5hc3NpZ24odGhpcywga3dhcmdzKTtcbiAgICB9XG5cbiAgICB0b0FwaUpzb24oKTogb2JqZWN0IHtcbiAgICAgICAgY29uc3QgdG9SZXR1cm46IHtcbiAgICAgICAgICAgIFtrZXk6IHN0cmluZ106IGFueTtcbiAgICAgICAgfSA9IHt9O1xuICAgICAgICBcbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnRvdGFsICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWyd0b3RhbCddID0gdGhpcy50b3RhbDt9XG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBBcHBQcmljZXNQcmljZXNGb3JDb250ZXh0c0VudHJ5IGltcGxlbWVudHMgaS5BcHBQcmljZXNQcmljZXNGb3JDb250ZXh0c0VudHJ5SW50ZXJmYWNlIHtcbiAgICBrZXk6IHN0cmluZztcbiAgICB2YWx1ZTogQXBwUHJpY2U7XG5cbiAgICBzdGF0aWMgZnJvbVByb3RvKHByb3RvOiBhbnkpOiBBcHBQcmljZXNQcmljZXNGb3JDb250ZXh0c0VudHJ5IHtcbiAgICAgICAgbGV0IG0gPSBuZXcgQXBwUHJpY2VzUHJpY2VzRm9yQ29udGV4dHNFbnRyeSgpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIGlmIChwcm90by52YWx1ZSkge20udmFsdWUgPSBBcHBQcmljZS5mcm9tUHJvdG8ocHJvdG8udmFsdWUpO31cbiAgICAgICAgcmV0dXJuIG07XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3Ioa3dhcmdzPzogaS5BcHBQcmljZXNQcmljZXNGb3JDb250ZXh0c0VudHJ5SW50ZXJmYWNlKSB7XG4gICAgICAgIGlmICgha3dhcmdzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBrd2FyZ3MpO1xuICAgIH1cblxuICAgIHRvQXBpSnNvbigpOiBvYmplY3Qge1xuICAgICAgICBjb25zdCB0b1JldHVybjoge1xuICAgICAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICB9ID0ge307XG4gICAgICAgIFxuICAgICAgICBpZiAodHlwZW9mIHRoaXMua2V5ICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydrZXknXSA9IHRoaXMua2V5O31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnZhbHVlICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLnZhbHVlICE9PSBudWxsKSB7dG9SZXR1cm5bJ3ZhbHVlJ10gPSAndG9BcGlKc29uJyBpbiB0aGlzLnZhbHVlID8gKHRoaXMudmFsdWUgYXMgYW55KS50b0FwaUpzb24oKSA6IHRoaXMudmFsdWU7fVxuICAgICAgICByZXR1cm4gdG9SZXR1cm47XG4gICAgfVxufVxuXG5leHBvcnQgY2xhc3MgVW5pdFByaWNlUHJpY2VzRm9yQ3VycmVuY2llc0VudHJ5IGltcGxlbWVudHMgaS5Vbml0UHJpY2VQcmljZXNGb3JDdXJyZW5jaWVzRW50cnlJbnRlcmZhY2Uge1xuICAgIGtleTogc3RyaW5nO1xuICAgIHZhbHVlOiBGcmVxdWVuY3lQcmljZXM7XG5cbiAgICBzdGF0aWMgZnJvbVByb3RvKHByb3RvOiBhbnkpOiBVbml0UHJpY2VQcmljZXNGb3JDdXJyZW5jaWVzRW50cnkge1xuICAgICAgICBsZXQgbSA9IG5ldyBVbml0UHJpY2VQcmljZXNGb3JDdXJyZW5jaWVzRW50cnkoKTtcbiAgICAgICAgbSA9IE9iamVjdC5hc3NpZ24obSwgcHJvdG8pO1xuICAgICAgICBpZiAocHJvdG8udmFsdWUpIHttLnZhbHVlID0gRnJlcXVlbmN5UHJpY2VzLmZyb21Qcm90byhwcm90by52YWx1ZSk7fVxuICAgICAgICByZXR1cm4gbTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihrd2FyZ3M/OiBpLlVuaXRQcmljZVByaWNlc0ZvckN1cnJlbmNpZXNFbnRyeUludGVyZmFjZSkge1xuICAgICAgICBpZiAoIWt3YXJncykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIE9iamVjdC5hc3NpZ24odGhpcywga3dhcmdzKTtcbiAgICB9XG5cbiAgICB0b0FwaUpzb24oKTogb2JqZWN0IHtcbiAgICAgICAgY29uc3QgdG9SZXR1cm46IHtcbiAgICAgICAgICAgIFtrZXk6IHN0cmluZ106IGFueTtcbiAgICAgICAgfSA9IHt9O1xuICAgICAgICBcbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmtleSAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsna2V5J10gPSB0aGlzLmtleTt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy52YWx1ZSAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy52YWx1ZSAhPT0gbnVsbCkge3RvUmV0dXJuWyd2YWx1ZSddID0gJ3RvQXBpSnNvbicgaW4gdGhpcy52YWx1ZSA/ICh0aGlzLnZhbHVlIGFzIGFueSkudG9BcGlKc29uKCkgOiB0aGlzLnZhbHVlO31cbiAgICAgICAgcmV0dXJuIHRvUmV0dXJuO1xuICAgIH1cbn1cblxuZXhwb3J0IGNsYXNzIEFwcFByaWNlUHJpY2VzRm9yRWRpdGlvbnNFbnRyeSBpbXBsZW1lbnRzIGkuQXBwUHJpY2VQcmljZXNGb3JFZGl0aW9uc0VudHJ5SW50ZXJmYWNlIHtcbiAgICBrZXk6IHN0cmluZztcbiAgICB2YWx1ZTogVW5pdFByaWNlO1xuXG4gICAgc3RhdGljIGZyb21Qcm90byhwcm90bzogYW55KTogQXBwUHJpY2VQcmljZXNGb3JFZGl0aW9uc0VudHJ5IHtcbiAgICAgICAgbGV0IG0gPSBuZXcgQXBwUHJpY2VQcmljZXNGb3JFZGl0aW9uc0VudHJ5KCk7XG4gICAgICAgIG0gPSBPYmplY3QuYXNzaWduKG0sIHByb3RvKTtcbiAgICAgICAgaWYgKHByb3RvLnZhbHVlKSB7bS52YWx1ZSA9IFVuaXRQcmljZS5mcm9tUHJvdG8ocHJvdG8udmFsdWUpO31cbiAgICAgICAgcmV0dXJuIG07XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3Ioa3dhcmdzPzogaS5BcHBQcmljZVByaWNlc0ZvckVkaXRpb25zRW50cnlJbnRlcmZhY2UpIHtcbiAgICAgICAgaWYgKCFrd2FyZ3MpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGt3YXJncyk7XG4gICAgfVxuXG4gICAgdG9BcGlKc29uKCk6IG9iamVjdCB7XG4gICAgICAgIGNvbnN0IHRvUmV0dXJuOiB7XG4gICAgICAgICAgICBba2V5OiBzdHJpbmddOiBhbnk7XG4gICAgICAgIH0gPSB7fTtcbiAgICAgICAgXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5rZXkgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2tleSddID0gdGhpcy5rZXk7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMudmFsdWUgIT09ICd1bmRlZmluZWQnICYmIHRoaXMudmFsdWUgIT09IG51bGwpIHt0b1JldHVyblsndmFsdWUnXSA9ICd0b0FwaUpzb24nIGluIHRoaXMudmFsdWUgPyAodGhpcy52YWx1ZSBhcyBhbnkpLnRvQXBpSnNvbigpIDogdGhpcy52YWx1ZTt9XG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBQcmljaW5nUnVsZSBpbXBsZW1lbnRzIGkuUHJpY2luZ1J1bGVJbnRlcmZhY2Uge1xuICAgIHByaWNlOiBudW1iZXI7XG4gICAgbWF4OiBudW1iZXI7XG4gICAgbWluOiBudW1iZXI7XG5cbiAgICBzdGF0aWMgZnJvbVByb3RvKHByb3RvOiBhbnkpOiBQcmljaW5nUnVsZSB7XG4gICAgICAgIGxldCBtID0gbmV3IFByaWNpbmdSdWxlKCk7XG4gICAgICAgIG0gPSBPYmplY3QuYXNzaWduKG0sIHByb3RvKTtcbiAgICAgICAgaWYgKHByb3RvLnByaWNlKSB7bS5wcmljZSA9IHBhcnNlSW50KHByb3RvLnByaWNlLCAxMCk7fVxuICAgICAgICBpZiAocHJvdG8ubWF4KSB7bS5tYXggPSBwYXJzZUludChwcm90by5tYXgsIDEwKTt9XG4gICAgICAgIGlmIChwcm90by5taW4pIHttLm1pbiA9IHBhcnNlSW50KHByb3RvLm1pbiwgMTApO31cbiAgICAgICAgcmV0dXJuIG07XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3Ioa3dhcmdzPzogaS5QcmljaW5nUnVsZUludGVyZmFjZSkge1xuICAgICAgICBpZiAoIWt3YXJncykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIE9iamVjdC5hc3NpZ24odGhpcywga3dhcmdzKTtcbiAgICB9XG5cbiAgICB0b0FwaUpzb24oKTogb2JqZWN0IHtcbiAgICAgICAgY29uc3QgdG9SZXR1cm46IHtcbiAgICAgICAgICAgIFtrZXk6IHN0cmluZ106IGFueTtcbiAgICAgICAgfSA9IHt9O1xuICAgICAgICBcbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnByaWNlICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydwcmljZSddID0gdGhpcy5wcmljZTt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5tYXggIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ21heCddID0gdGhpcy5tYXg7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMubWluICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydtaW4nXSA9IHRoaXMubWluO31cbiAgICAgICAgcmV0dXJuIHRvUmV0dXJuO1xuICAgIH1cbn1cblxuZXhwb3J0IGNsYXNzIFJlcXVlc3RlZEFwcCBpbXBsZW1lbnRzIGkuUmVxdWVzdGVkQXBwSW50ZXJmYWNlIHtcbiAgICBhcHBJZDogc3RyaW5nO1xuICAgIHF1YW50aXR5OiBudW1iZXI7XG5cbiAgICBzdGF0aWMgZnJvbVByb3RvKHByb3RvOiBhbnkpOiBSZXF1ZXN0ZWRBcHAge1xuICAgICAgICBsZXQgbSA9IG5ldyBSZXF1ZXN0ZWRBcHAoKTtcbiAgICAgICAgbSA9IE9iamVjdC5hc3NpZ24obSwgcHJvdG8pO1xuICAgICAgICBpZiAocHJvdG8ucXVhbnRpdHkpIHttLnF1YW50aXR5ID0gcGFyc2VJbnQocHJvdG8ucXVhbnRpdHksIDEwKTt9XG4gICAgICAgIHJldHVybiBtO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKGt3YXJncz86IGkuUmVxdWVzdGVkQXBwSW50ZXJmYWNlKSB7XG4gICAgICAgIGlmICgha3dhcmdzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBrd2FyZ3MpO1xuICAgIH1cblxuICAgIHRvQXBpSnNvbigpOiBvYmplY3Qge1xuICAgICAgICBjb25zdCB0b1JldHVybjoge1xuICAgICAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICB9ID0ge307XG4gICAgICAgIFxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuYXBwSWQgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2FwcElkJ10gPSB0aGlzLmFwcElkO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnF1YW50aXR5ICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydxdWFudGl0eSddID0gdGhpcy5xdWFudGl0eTt9XG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBVbml0UHJpY2UgaW1wbGVtZW50cyBpLlVuaXRQcmljZUludGVyZmFjZSB7XG4gICAgcHJpY2VzRm9yQ3VycmVuY2llczoge1trZXk6IHN0cmluZ106IEZyZXF1ZW5jeVByaWNlc307XG4gICAgZGlzY291bnQ6IERpc2NvdW50W107XG5cbiAgICBzdGF0aWMgZnJvbVByb3RvKHByb3RvOiBhbnkpOiBVbml0UHJpY2Uge1xuICAgICAgICBsZXQgbSA9IG5ldyBVbml0UHJpY2UoKTtcbiAgICAgICAgbSA9IE9iamVjdC5hc3NpZ24obSwgcHJvdG8pO1xuICAgICAgICBpZiAocHJvdG8ucHJpY2VzRm9yQ3VycmVuY2llcykge20ucHJpY2VzRm9yQ3VycmVuY2llcyA9IE9iamVjdC5rZXlzKHByb3RvLnByaWNlc0ZvckN1cnJlbmNpZXMpLnJlZHVjZTxhbnk+KChvYmosIGspID0+IHsgb2JqW2tdID0gRnJlcXVlbmN5UHJpY2VzLmZyb21Qcm90byhwcm90by5wcmljZXNGb3JDdXJyZW5jaWVzW2tdKTsgcmV0dXJuIG9iajsgfSwge30pO31cbiAgICAgICAgaWYgKHByb3RvLmRpc2NvdW50KSB7bS5kaXNjb3VudCA9IHByb3RvLmRpc2NvdW50Lm1hcChEaXNjb3VudC5mcm9tUHJvdG8pO31cbiAgICAgICAgcmV0dXJuIG07XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3Ioa3dhcmdzPzogaS5Vbml0UHJpY2VJbnRlcmZhY2UpIHtcbiAgICAgICAgaWYgKCFrd2FyZ3MpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGt3YXJncyk7XG4gICAgfVxuXG4gICAgdG9BcGlKc29uKCk6IG9iamVjdCB7XG4gICAgICAgIGNvbnN0IHRvUmV0dXJuOiB7XG4gICAgICAgICAgICBba2V5OiBzdHJpbmddOiBhbnk7XG4gICAgICAgIH0gPSB7fTtcbiAgICAgICAgXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5wcmljZXNGb3JDdXJyZW5jaWVzICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLnByaWNlc0ZvckN1cnJlbmNpZXMgIT09IG51bGwpIHt0b1JldHVyblsncHJpY2VzRm9yQ3VycmVuY2llcyddID0gJ3RvQXBpSnNvbicgaW4gdGhpcy5wcmljZXNGb3JDdXJyZW5jaWVzID8gKHRoaXMucHJpY2VzRm9yQ3VycmVuY2llcyBhcyBhbnkpLnRvQXBpSnNvbigpIDogdGhpcy5wcmljZXNGb3JDdXJyZW5jaWVzO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmRpc2NvdW50ICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLmRpc2NvdW50ICE9PSBudWxsKSB7dG9SZXR1cm5bJ2Rpc2NvdW50J10gPSAndG9BcGlKc29uJyBpbiB0aGlzLmRpc2NvdW50ID8gKHRoaXMuZGlzY291bnQgYXMgYW55KS50b0FwaUpzb24oKSA6IHRoaXMuZGlzY291bnQ7fVxuICAgICAgICByZXR1cm4gdG9SZXR1cm47XG4gICAgfVxufVxuXG4iXX0=
@@ -12,7 +12,7 @@ export { FieldMask, } from './field-mask';
12
12
  export { AppKeyWithQuantity, GetAppSettingsRequest, GetAppSettingsResponse, GetMultiAppRequest, GetMultiAppResponse, GetPurchaseLinkRequest, GetPurchaseLinkResponse, GetUpgradeDialogContentRequest, GetUpgradeDialogContentResponse, ListAppSettingsRequest, ListAppSettingsResponse, ListPartnerEnabledAppsRequestListAppsFilter, ListPartnerEnabledAppsRequest, ListPartnerEnabledAppsResponse, ProductSuggestion, ReplaceAppSettingsRequest, ReplaceAppSettingsResponse, ReplaceUpgradeDialogContentRequest, SuggestProductRequest, } from './partner-api';
13
13
  export { AppTag, GetMultiAppDataRequest, GetMultiAppDataResponse, KindValues, ListAppIDsByMultiTagRequest, ListAppIDsByMultiTagResponse, ListByMultiTagRequest, ListByMultiTagResponse, ListValuesByMultiKindRequest, ListValuesByMultiKindResponse, MarketplaceApp, ScopedTag, Tag, TagAppsRequest, UntagAppsRequest, } from './app-data-api';
14
14
  export { ActivatableItemSummary, Item, RequiredItem, } from './item';
15
- export { ItemIdentifier, ListDependenciesRequest, ListDependenciesRequiredItem, ListDependenciesRequiredItems, ListDependenciesResponse, ListDependenciesResponseMissingItemsEntry, } from './item-dependency';
15
+ export { EditionRequirement, ItemIdentifier, ListDependenciesRequest, ListDependenciesRequiredItem, ListDependenciesRequiredItems, ListDependenciesResponse, ListDependenciesResponseMissingItemsEntry, } from './item-dependency';
16
16
  export { ListActivatableItemsFilters, ListActivatableItemsRequest, ListActivatableItemsResponse, ListActivatableItemsSortOptions, ListOwnedItemsFilterOptions, ListOwnedItemsRequest, ListOwnedItemsResponse, } from './items-api';
17
17
  export { DeleteCategoryRequest, GetCategoriesRequest, GetCategoriesResponse, MarketplaceCategory, UpsertRequest, UpsertResponse, } from './category-api';
18
18
  export { Fee, } from './fee';
@@ -22,4 +22,4 @@ export { PagedRequestOptions, PagedResponseMetadata, } from './paging';
22
22
  export { ArchiveAuxiliaryDataFieldSchemaRequest, AuxiliaryDataFieldSchema, AuxiliaryDataObjectID, CreateAuxiliaryDataFieldSchemaRequest, DropdownOption, FieldDataUpsertOperation, FieldSchemaIdentifier, ListAuxiliaryDataFieldSchemaRequestFilters, GetAuxiliaryDataFieldSchemaRequest, GetAuxiliaryDataFieldSchemaResponse, GetMultiAuxiliaryDataFieldSchemaRequest, GetMultiAuxiliaryDataFieldSchemaResponse, ListAuxiliaryDataFieldSchemaRequest, ListAuxiliaryDataFieldSchemaResponse, ListAuxiliaryDataRequest, ListAuxiliaryDataResponse, UnarchiveAuxiliaryDataFieldSchemaRequest, UpdateAuxiliaryDataFieldSchemaRequest, UpsertAuxiliaryDataRequest, } from './fields';
23
23
  export { IncludedCommonFormFields, OrderFormFieldOption, OrderForm, OrderFormField, } from './order-form';
24
24
  export { FulfillmentOrderConfig, FulfillmentOrderConfigProjectionFilter, GetFulfillmentOrderConfigRequest, GetFulfillmentOrderConfigResponse, UpdateFulfillmentOrderConfigRequest, } from './fulfillment-order-config';
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9tYXJrZXRwbGFjZV9hcHBzX3Nkay9zcmMvbGliL19pbnRlcm5hbC9vYmplY3RzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLG9DQUFvQztBQUNwQywyQkFBMkI7QUFDM0IsZ0JBQWdCO0FBQ2hCLEVBQUU7QUFDRixpQkFBaUI7QUFDakIsb0NBQW9DO0FBQ3BDLE9BQU8sRUFDSCxxQkFBcUIsRUFDckIsR0FBRyxFQUNILE1BQU0sRUFDTiw2QkFBNkIsRUFDN0IsZUFBZSxFQUNmLGdCQUFnQixFQUNoQixRQUFRLEVBQ1IscUJBQXFCLEVBQ3JCLE9BQU8sRUFDUCxpQkFBaUIsRUFDakIsa0JBQWtCLEVBQ2xCLDJCQUEyQixFQUMzQixtQkFBbUIsRUFDbkIsd0JBQXdCLEVBQ3hCLGVBQWUsRUFDZixLQUFLLEVBQ0wsb0JBQW9CLEVBQ3BCLGNBQWMsRUFDZCxjQUFjLEVBQ2QsMEJBQTBCLEVBQzFCLGtCQUFrQixHQUNyQixNQUFNLG1CQUFtQixDQUFDO0FBRTNCLE9BQU8sRUFDSCxzQkFBc0IsRUFDdEIsV0FBVyxFQUNYLGNBQWMsRUFDZCxRQUFRLEVBQ1IsYUFBYSxFQUNiLEtBQUssR0FDUixNQUFNLGdCQUFnQixDQUFDO0FBRXhCLE9BQU8sRUFDSCxvQkFBb0IsR0FDdkIsTUFBTSwwQkFBMEIsQ0FBQztBQUVsQyxPQUFPLEVBQ0gsTUFBTSxHQUNULE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFDSCxTQUFTLEdBQ1osTUFBTSxjQUFjLENBQUM7QUFFdEIsT0FBTyxFQUNILGtCQUFrQixFQUNsQixxQkFBcUIsRUFDckIsc0JBQXNCLEVBQ3RCLGtCQUFrQixFQUNsQixtQkFBbUIsRUFDbkIsc0JBQXNCLEVBQ3RCLHVCQUF1QixFQUN2Qiw4QkFBOEIsRUFDOUIsK0JBQStCLEVBQy9CLHNCQUFzQixFQUN0Qix1QkFBdUIsRUFDdkIsMkNBQTJDLEVBQzNDLDZCQUE2QixFQUM3Qiw4QkFBOEIsRUFDOUIsaUJBQWlCLEVBQ2pCLHlCQUF5QixFQUN6QiwwQkFBMEIsRUFDMUIsa0NBQWtDLEVBQ2xDLHFCQUFxQixHQUN4QixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQ0gsTUFBTSxFQUNOLHNCQUFzQixFQUN0Qix1QkFBdUIsRUFDdkIsVUFBVSxFQUNWLDJCQUEyQixFQUMzQiw0QkFBNEIsRUFDNUIscUJBQXFCLEVBQ3JCLHNCQUFzQixFQUN0Qiw0QkFBNEIsRUFDNUIsNkJBQTZCLEVBQzdCLGNBQWMsRUFDZCxTQUFTLEVBQ1QsR0FBRyxFQUNILGNBQWMsRUFDZCxnQkFBZ0IsR0FDbkIsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4QixPQUFPLEVBQ0gsc0JBQXNCLEVBQ3RCLElBQUksRUFDSixZQUFZLEdBQ2YsTUFBTSxRQUFRLENBQUM7QUFFaEIsT0FBTyxFQUNILGNBQWMsRUFDZCx1QkFBdUIsRUFDdkIsNEJBQTRCLEVBQzVCLDZCQUE2QixFQUM3Qix3QkFBd0IsRUFDeEIseUNBQXlDLEdBQzVDLE1BQU0sbUJBQW1CLENBQUM7QUFFM0IsT0FBTyxFQUNILDJCQUEyQixFQUMzQiwyQkFBMkIsRUFDM0IsNEJBQTRCLEVBQzVCLCtCQUErQixFQUMvQiwyQkFBMkIsRUFDM0IscUJBQXFCLEVBQ3JCLHNCQUFzQixHQUN6QixNQUFNLGFBQWEsQ0FBQztBQUVyQixPQUFPLEVBQ0gscUJBQXFCLEVBQ3JCLG9CQUFvQixFQUNwQixxQkFBcUIsRUFDckIsbUJBQW1CLEVBQ25CLGFBQWEsRUFDYixjQUFjLEdBQ2pCLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEIsT0FBTyxFQUNILEdBQUcsR0FDTixNQUFNLE9BQU8sQ0FBQztBQUVmLE9BQU8sRUFDSCxRQUFRLEVBQ1IsU0FBUyxFQUNULG9CQUFvQixFQUNwQixVQUFVLEVBQ1YsUUFBUSxFQUNSLGNBQWMsRUFDZCxlQUFlLEVBQ2YsYUFBYSxFQUNiLCtCQUErQixFQUMvQixpQ0FBaUMsRUFDakMsOEJBQThCLEVBQzlCLFdBQVcsRUFDWCxZQUFZLEVBQ1osU0FBUyxHQUNaLE1BQU0sYUFBYSxDQUFDO0FBRXJCLE9BQU8sRUFDSCxzQkFBc0IsRUFDdEIsdUJBQXVCLEdBQzFCLE1BQU0saUJBQWlCLENBQUM7QUFFekIsT0FBTyxFQUNILG1CQUFtQixFQUNuQixxQkFBcUIsR0FDeEIsTUFBTSxVQUFVLENBQUM7QUFFbEIsT0FBTyxFQUNILHNDQUFzQyxFQUN0Qyx3QkFBd0IsRUFDeEIscUJBQXFCLEVBQ3JCLHFDQUFxQyxFQUNyQyxjQUFjLEVBQ2Qsd0JBQXdCLEVBQ3hCLHFCQUFxQixFQUNyQiwwQ0FBMEMsRUFDMUMsa0NBQWtDLEVBQ2xDLG1DQUFtQyxFQUNuQyx1Q0FBdUMsRUFDdkMsd0NBQXdDLEVBQ3hDLG1DQUFtQyxFQUNuQyxvQ0FBb0MsRUFDcEMsd0JBQXdCLEVBQ3hCLHlCQUF5QixFQUN6Qix3Q0FBd0MsRUFDeEMscUNBQXFDLEVBQ3JDLDBCQUEwQixHQUM3QixNQUFNLFVBQVUsQ0FBQztBQUVsQixPQUFPLEVBQ0gsd0JBQXdCLEVBQ3hCLG9CQUFvQixFQUNwQixTQUFTLEVBQ1QsY0FBYyxHQUNqQixNQUFNLGNBQWMsQ0FBQztBQUV0QixPQUFPLEVBQ0gsc0JBQXNCLEVBQ3RCLHNDQUFzQyxFQUN0QyxnQ0FBZ0MsRUFDaEMsaUNBQWlDLEVBQ2pDLG1DQUFtQyxHQUN0QyxNQUFNLDRCQUE0QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyBDb2RlIGdlbmVyYXRlZCBieSBzZGtnZW5cbi8vIERPIE5PVCBFRElUIS5cbi8vXG4vLyBPYmplY3RzIEluZGV4LlxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5leHBvcnQge1xuICAgIEFjdGl2YXRpb25JbmZvcm1hdGlvbixcbiAgICBBcHAsXG4gICAgQXBwS2V5LFxuICAgIEFwcExldmVsQWRtaW5EYXNoYm9hcmRFbmFibGVkLFxuICAgIEFwcFJlc3RyaWN0aW9ucyxcbiAgICBCYXNpY0ludGVncmF0aW9uLFxuICAgIENoaWxkQXBwLFxuICAgIFJlcXVpcmVkUGFyZW50RGV0YWlscyxcbiAgICBFZGl0aW9uLFxuICAgIEVkaXRpb25JZGVudGlmaWVyLFxuICAgIEVkaXRpb25JbmZvcm1hdGlvbixcbiAgICBFbmRVc2VyTWFya2V0aW5nSW5mb3JtYXRpb24sXG4gICAgRXh0ZXJuYWxJZGVudGlmaWVycyxcbiAgICBGcmVxdWVudGx5QXNrZWRRdWVzdGlvbnMsXG4gICAgUGVybWlzc2lvbkxpc3RzLFxuICAgIFByaWNlLFxuICAgIFJlcXVpcmVkQnVzaW5lc3NEYXRhLFxuICAgIFJlcXVpcmVkUGFyZW50LFxuICAgIFNTT0ludGVncmF0aW9uLFxuICAgIFNoYXJlZE1hcmtldGluZ0luZm9ybWF0aW9uLFxuICAgIFRyaWFsQ29uZmlndXJhdGlvbixcbn0gZnJvbSAnLi9tYXJrZXRwbGFjZS1hcHAnO1xuXG5leHBvcnQge1xuICAgIEFwcExldmVsQWRtaW5EYXNoYm9hcmQsXG4gICAgQXBwU2V0dGluZ3MsXG4gICAgQXV0b0FjdGl2YXRpb24sXG4gICAgQnJhbmRpbmcsXG4gICAgRWRpdGlvbkNoYW5nZSxcbiAgICBUcmlhbCxcbn0gZnJvbSAnLi9hcHAtc2V0dGluZ3MnO1xuXG5leHBvcnQge1xuICAgIFVwZ3JhZGVEaWFsb2dDb250ZW50LFxufSBmcm9tICcuL3VwZ3JhZGUtZGlhbG9nLWNvbnRlbnQnO1xuXG5leHBvcnQge1xuICAgIEFjY2Vzcyxcbn0gZnJvbSAnLi9hbm5vdGF0aW9ucyc7XG5cbmV4cG9ydCB7XG4gICAgRmllbGRNYXNrLFxufSBmcm9tICcuL2ZpZWxkLW1hc2snO1xuXG5leHBvcnQge1xuICAgIEFwcEtleVdpdGhRdWFudGl0eSxcbiAgICBHZXRBcHBTZXR0aW5nc1JlcXVlc3QsXG4gICAgR2V0QXBwU2V0dGluZ3NSZXNwb25zZSxcbiAgICBHZXRNdWx0aUFwcFJlcXVlc3QsXG4gICAgR2V0TXVsdGlBcHBSZXNwb25zZSxcbiAgICBHZXRQdXJjaGFzZUxpbmtSZXF1ZXN0LFxuICAgIEdldFB1cmNoYXNlTGlua1Jlc3BvbnNlLFxuICAgIEdldFVwZ3JhZGVEaWFsb2dDb250ZW50UmVxdWVzdCxcbiAgICBHZXRVcGdyYWRlRGlhbG9nQ29udGVudFJlc3BvbnNlLFxuICAgIExpc3RBcHBTZXR0aW5nc1JlcXVlc3QsXG4gICAgTGlzdEFwcFNldHRpbmdzUmVzcG9uc2UsXG4gICAgTGlzdFBhcnRuZXJFbmFibGVkQXBwc1JlcXVlc3RMaXN0QXBwc0ZpbHRlcixcbiAgICBMaXN0UGFydG5lckVuYWJsZWRBcHBzUmVxdWVzdCxcbiAgICBMaXN0UGFydG5lckVuYWJsZWRBcHBzUmVzcG9uc2UsXG4gICAgUHJvZHVjdFN1Z2dlc3Rpb24sXG4gICAgUmVwbGFjZUFwcFNldHRpbmdzUmVxdWVzdCxcbiAgICBSZXBsYWNlQXBwU2V0dGluZ3NSZXNwb25zZSxcbiAgICBSZXBsYWNlVXBncmFkZURpYWxvZ0NvbnRlbnRSZXF1ZXN0LFxuICAgIFN1Z2dlc3RQcm9kdWN0UmVxdWVzdCxcbn0gZnJvbSAnLi9wYXJ0bmVyLWFwaSc7XG5cbmV4cG9ydCB7XG4gICAgQXBwVGFnLFxuICAgIEdldE11bHRpQXBwRGF0YVJlcXVlc3QsXG4gICAgR2V0TXVsdGlBcHBEYXRhUmVzcG9uc2UsXG4gICAgS2luZFZhbHVlcyxcbiAgICBMaXN0QXBwSURzQnlNdWx0aVRhZ1JlcXVlc3QsXG4gICAgTGlzdEFwcElEc0J5TXVsdGlUYWdSZXNwb25zZSxcbiAgICBMaXN0QnlNdWx0aVRhZ1JlcXVlc3QsXG4gICAgTGlzdEJ5TXVsdGlUYWdSZXNwb25zZSxcbiAgICBMaXN0VmFsdWVzQnlNdWx0aUtpbmRSZXF1ZXN0LFxuICAgIExpc3RWYWx1ZXNCeU11bHRpS2luZFJlc3BvbnNlLFxuICAgIE1hcmtldHBsYWNlQXBwLFxuICAgIFNjb3BlZFRhZyxcbiAgICBUYWcsXG4gICAgVGFnQXBwc1JlcXVlc3QsXG4gICAgVW50YWdBcHBzUmVxdWVzdCxcbn0gZnJvbSAnLi9hcHAtZGF0YS1hcGknO1xuXG5leHBvcnQge1xuICAgIEFjdGl2YXRhYmxlSXRlbVN1bW1hcnksXG4gICAgSXRlbSxcbiAgICBSZXF1aXJlZEl0ZW0sXG59IGZyb20gJy4vaXRlbSc7XG5cbmV4cG9ydCB7XG4gICAgSXRlbUlkZW50aWZpZXIsXG4gICAgTGlzdERlcGVuZGVuY2llc1JlcXVlc3QsXG4gICAgTGlzdERlcGVuZGVuY2llc1JlcXVpcmVkSXRlbSxcbiAgICBMaXN0RGVwZW5kZW5jaWVzUmVxdWlyZWRJdGVtcyxcbiAgICBMaXN0RGVwZW5kZW5jaWVzUmVzcG9uc2UsXG4gICAgTGlzdERlcGVuZGVuY2llc1Jlc3BvbnNlTWlzc2luZ0l0ZW1zRW50cnksXG59IGZyb20gJy4vaXRlbS1kZXBlbmRlbmN5JztcblxuZXhwb3J0IHtcbiAgICBMaXN0QWN0aXZhdGFibGVJdGVtc0ZpbHRlcnMsXG4gICAgTGlzdEFjdGl2YXRhYmxlSXRlbXNSZXF1ZXN0LFxuICAgIExpc3RBY3RpdmF0YWJsZUl0ZW1zUmVzcG9uc2UsXG4gICAgTGlzdEFjdGl2YXRhYmxlSXRlbXNTb3J0T3B0aW9ucyxcbiAgICBMaXN0T3duZWRJdGVtc0ZpbHRlck9wdGlvbnMsXG4gICAgTGlzdE93bmVkSXRlbXNSZXF1ZXN0LFxuICAgIExpc3RPd25lZEl0ZW1zUmVzcG9uc2UsXG59IGZyb20gJy4vaXRlbXMtYXBpJztcblxuZXhwb3J0IHtcbiAgICBEZWxldGVDYXRlZ29yeVJlcXVlc3QsXG4gICAgR2V0Q2F0ZWdvcmllc1JlcXVlc3QsXG4gICAgR2V0Q2F0ZWdvcmllc1Jlc3BvbnNlLFxuICAgIE1hcmtldHBsYWNlQ2F0ZWdvcnksXG4gICAgVXBzZXJ0UmVxdWVzdCxcbiAgICBVcHNlcnRSZXNwb25zZSxcbn0gZnJvbSAnLi9jYXRlZ29yeS1hcGknO1xuXG5leHBvcnQge1xuICAgIEZlZSxcbn0gZnJvbSAnLi9mZWUnO1xuXG5leHBvcnQge1xuICAgIEFwcFByaWNlLFxuICAgIEFwcFByaWNlcyxcbiAgICBCaWxsaW5nQ29uZmlndXJhdGlvbixcbiAgICBDb21taXRtZW50LFxuICAgIERpc2NvdW50LFxuICAgIEZyZXF1ZW5jeVByaWNlLFxuICAgIEZyZXF1ZW5jeVByaWNlcyxcbiAgICBJbnN0YW5jZVByaWNlLFxuICAgIEFwcFByaWNlc1ByaWNlc0ZvckNvbnRleHRzRW50cnksXG4gICAgVW5pdFByaWNlUHJpY2VzRm9yQ3VycmVuY2llc0VudHJ5LFxuICAgIEFwcFByaWNlUHJpY2VzRm9yRWRpdGlvbnNFbnRyeSxcbiAgICBQcmljaW5nUnVsZSxcbiAgICBSZXF1ZXN0ZWRBcHAsXG4gICAgVW5pdFByaWNlLFxufSBmcm9tICcuL2FwcC1wcmljZSc7XG5cbmV4cG9ydCB7XG4gICAgR2V0TXVsdGlQcmljaW5nUmVxdWVzdCxcbiAgICBHZXRNdWx0aVByaWNpbmdSZXNwb25zZSxcbn0gZnJvbSAnLi9hcHAtcHJpY2UtYXBpJztcblxuZXhwb3J0IHtcbiAgICBQYWdlZFJlcXVlc3RPcHRpb25zLFxuICAgIFBhZ2VkUmVzcG9uc2VNZXRhZGF0YSxcbn0gZnJvbSAnLi9wYWdpbmcnO1xuXG5leHBvcnQge1xuICAgIEFyY2hpdmVBdXhpbGlhcnlEYXRhRmllbGRTY2hlbWFSZXF1ZXN0LFxuICAgIEF1eGlsaWFyeURhdGFGaWVsZFNjaGVtYSxcbiAgICBBdXhpbGlhcnlEYXRhT2JqZWN0SUQsXG4gICAgQ3JlYXRlQXV4aWxpYXJ5RGF0YUZpZWxkU2NoZW1hUmVxdWVzdCxcbiAgICBEcm9wZG93bk9wdGlvbixcbiAgICBGaWVsZERhdGFVcHNlcnRPcGVyYXRpb24sXG4gICAgRmllbGRTY2hlbWFJZGVudGlmaWVyLFxuICAgIExpc3RBdXhpbGlhcnlEYXRhRmllbGRTY2hlbWFSZXF1ZXN0RmlsdGVycyxcbiAgICBHZXRBdXhpbGlhcnlEYXRhRmllbGRTY2hlbWFSZXF1ZXN0LFxuICAgIEdldEF1eGlsaWFyeURhdGFGaWVsZFNjaGVtYVJlc3BvbnNlLFxuICAgIEdldE11bHRpQXV4aWxpYXJ5RGF0YUZpZWxkU2NoZW1hUmVxdWVzdCxcbiAgICBHZXRNdWx0aUF1eGlsaWFyeURhdGFGaWVsZFNjaGVtYVJlc3BvbnNlLFxuICAgIExpc3RBdXhpbGlhcnlEYXRhRmllbGRTY2hlbWFSZXF1ZXN0LFxuICAgIExpc3RBdXhpbGlhcnlEYXRhRmllbGRTY2hlbWFSZXNwb25zZSxcbiAgICBMaXN0QXV4aWxpYXJ5RGF0YVJlcXVlc3QsXG4gICAgTGlzdEF1eGlsaWFyeURhdGFSZXNwb25zZSxcbiAgICBVbmFyY2hpdmVBdXhpbGlhcnlEYXRhRmllbGRTY2hlbWFSZXF1ZXN0LFxuICAgIFVwZGF0ZUF1eGlsaWFyeURhdGFGaWVsZFNjaGVtYVJlcXVlc3QsXG4gICAgVXBzZXJ0QXV4aWxpYXJ5RGF0YVJlcXVlc3QsXG59IGZyb20gJy4vZmllbGRzJztcblxuZXhwb3J0IHtcbiAgICBJbmNsdWRlZENvbW1vbkZvcm1GaWVsZHMsXG4gICAgT3JkZXJGb3JtRmllbGRPcHRpb24sXG4gICAgT3JkZXJGb3JtLFxuICAgIE9yZGVyRm9ybUZpZWxkLFxufSBmcm9tICcuL29yZGVyLWZvcm0nO1xuXG5leHBvcnQge1xuICAgIEZ1bGZpbGxtZW50T3JkZXJDb25maWcsXG4gICAgRnVsZmlsbG1lbnRPcmRlckNvbmZpZ1Byb2plY3Rpb25GaWx0ZXIsXG4gICAgR2V0RnVsZmlsbG1lbnRPcmRlckNvbmZpZ1JlcXVlc3QsXG4gICAgR2V0RnVsZmlsbG1lbnRPcmRlckNvbmZpZ1Jlc3BvbnNlLFxuICAgIFVwZGF0ZUZ1bGZpbGxtZW50T3JkZXJDb25maWdSZXF1ZXN0LFxufSBmcm9tICcuL2Z1bGZpbGxtZW50LW9yZGVyLWNvbmZpZyc7XG5cbiJdfQ==
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9tYXJrZXRwbGFjZV9hcHBzX3Nkay9zcmMvbGliL19pbnRlcm5hbC9vYmplY3RzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLG9DQUFvQztBQUNwQywyQkFBMkI7QUFDM0IsZ0JBQWdCO0FBQ2hCLEVBQUU7QUFDRixpQkFBaUI7QUFDakIsb0NBQW9DO0FBQ3BDLE9BQU8sRUFDSCxxQkFBcUIsRUFDckIsR0FBRyxFQUNILE1BQU0sRUFDTiw2QkFBNkIsRUFDN0IsZUFBZSxFQUNmLGdCQUFnQixFQUNoQixRQUFRLEVBQ1IscUJBQXFCLEVBQ3JCLE9BQU8sRUFDUCxpQkFBaUIsRUFDakIsa0JBQWtCLEVBQ2xCLDJCQUEyQixFQUMzQixtQkFBbUIsRUFDbkIsd0JBQXdCLEVBQ3hCLGVBQWUsRUFDZixLQUFLLEVBQ0wsb0JBQW9CLEVBQ3BCLGNBQWMsRUFDZCxjQUFjLEVBQ2QsMEJBQTBCLEVBQzFCLGtCQUFrQixHQUNyQixNQUFNLG1CQUFtQixDQUFDO0FBRTNCLE9BQU8sRUFDSCxzQkFBc0IsRUFDdEIsV0FBVyxFQUNYLGNBQWMsRUFDZCxRQUFRLEVBQ1IsYUFBYSxFQUNiLEtBQUssR0FDUixNQUFNLGdCQUFnQixDQUFDO0FBRXhCLE9BQU8sRUFDSCxvQkFBb0IsR0FDdkIsTUFBTSwwQkFBMEIsQ0FBQztBQUVsQyxPQUFPLEVBQ0gsTUFBTSxHQUNULE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFDSCxTQUFTLEdBQ1osTUFBTSxjQUFjLENBQUM7QUFFdEIsT0FBTyxFQUNILGtCQUFrQixFQUNsQixxQkFBcUIsRUFDckIsc0JBQXNCLEVBQ3RCLGtCQUFrQixFQUNsQixtQkFBbUIsRUFDbkIsc0JBQXNCLEVBQ3RCLHVCQUF1QixFQUN2Qiw4QkFBOEIsRUFDOUIsK0JBQStCLEVBQy9CLHNCQUFzQixFQUN0Qix1QkFBdUIsRUFDdkIsMkNBQTJDLEVBQzNDLDZCQUE2QixFQUM3Qiw4QkFBOEIsRUFDOUIsaUJBQWlCLEVBQ2pCLHlCQUF5QixFQUN6QiwwQkFBMEIsRUFDMUIsa0NBQWtDLEVBQ2xDLHFCQUFxQixHQUN4QixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQ0gsTUFBTSxFQUNOLHNCQUFzQixFQUN0Qix1QkFBdUIsRUFDdkIsVUFBVSxFQUNWLDJCQUEyQixFQUMzQiw0QkFBNEIsRUFDNUIscUJBQXFCLEVBQ3JCLHNCQUFzQixFQUN0Qiw0QkFBNEIsRUFDNUIsNkJBQTZCLEVBQzdCLGNBQWMsRUFDZCxTQUFTLEVBQ1QsR0FBRyxFQUNILGNBQWMsRUFDZCxnQkFBZ0IsR0FDbkIsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4QixPQUFPLEVBQ0gsc0JBQXNCLEVBQ3RCLElBQUksRUFDSixZQUFZLEdBQ2YsTUFBTSxRQUFRLENBQUM7QUFFaEIsT0FBTyxFQUNILGtCQUFrQixFQUNsQixjQUFjLEVBQ2QsdUJBQXVCLEVBQ3ZCLDRCQUE0QixFQUM1Qiw2QkFBNkIsRUFDN0Isd0JBQXdCLEVBQ3hCLHlDQUF5QyxHQUM1QyxNQUFNLG1CQUFtQixDQUFDO0FBRTNCLE9BQU8sRUFDSCwyQkFBMkIsRUFDM0IsMkJBQTJCLEVBQzNCLDRCQUE0QixFQUM1QiwrQkFBK0IsRUFDL0IsMkJBQTJCLEVBQzNCLHFCQUFxQixFQUNyQixzQkFBc0IsR0FDekIsTUFBTSxhQUFhLENBQUM7QUFFckIsT0FBTyxFQUNILHFCQUFxQixFQUNyQixvQkFBb0IsRUFDcEIscUJBQXFCLEVBQ3JCLG1CQUFtQixFQUNuQixhQUFhLEVBQ2IsY0FBYyxHQUNqQixNQUFNLGdCQUFnQixDQUFDO0FBRXhCLE9BQU8sRUFDSCxHQUFHLEdBQ04sTUFBTSxPQUFPLENBQUM7QUFFZixPQUFPLEVBQ0gsUUFBUSxFQUNSLFNBQVMsRUFDVCxvQkFBb0IsRUFDcEIsVUFBVSxFQUNWLFFBQVEsRUFDUixjQUFjLEVBQ2QsZUFBZSxFQUNmLGFBQWEsRUFDYiwrQkFBK0IsRUFDL0IsaUNBQWlDLEVBQ2pDLDhCQUE4QixFQUM5QixXQUFXLEVBQ1gsWUFBWSxFQUNaLFNBQVMsR0FDWixNQUFNLGFBQWEsQ0FBQztBQUVyQixPQUFPLEVBQ0gsc0JBQXNCLEVBQ3RCLHVCQUF1QixHQUMxQixNQUFNLGlCQUFpQixDQUFDO0FBRXpCLE9BQU8sRUFDSCxtQkFBbUIsRUFDbkIscUJBQXFCLEdBQ3hCLE1BQU0sVUFBVSxDQUFDO0FBRWxCLE9BQU8sRUFDSCxzQ0FBc0MsRUFDdEMsd0JBQXdCLEVBQ3hCLHFCQUFxQixFQUNyQixxQ0FBcUMsRUFDckMsY0FBYyxFQUNkLHdCQUF3QixFQUN4QixxQkFBcUIsRUFDckIsMENBQTBDLEVBQzFDLGtDQUFrQyxFQUNsQyxtQ0FBbUMsRUFDbkMsdUNBQXVDLEVBQ3ZDLHdDQUF3QyxFQUN4QyxtQ0FBbUMsRUFDbkMsb0NBQW9DLEVBQ3BDLHdCQUF3QixFQUN4Qix5QkFBeUIsRUFDekIsd0NBQXdDLEVBQ3hDLHFDQUFxQyxFQUNyQywwQkFBMEIsR0FDN0IsTUFBTSxVQUFVLENBQUM7QUFFbEIsT0FBTyxFQUNILHdCQUF3QixFQUN4QixvQkFBb0IsRUFDcEIsU0FBUyxFQUNULGNBQWMsR0FDakIsTUFBTSxjQUFjLENBQUM7QUFFdEIsT0FBTyxFQUNILHNCQUFzQixFQUN0QixzQ0FBc0MsRUFDdEMsZ0NBQWdDLEVBQ2hDLGlDQUFpQyxFQUNqQyxtQ0FBbUMsR0FDdEMsTUFBTSw0QkFBNEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gQ29kZSBnZW5lcmF0ZWQgYnkgc2RrZ2VuXG4vLyBETyBOT1QgRURJVCEuXG4vL1xuLy8gT2JqZWN0cyBJbmRleC5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuZXhwb3J0IHtcbiAgICBBY3RpdmF0aW9uSW5mb3JtYXRpb24sXG4gICAgQXBwLFxuICAgIEFwcEtleSxcbiAgICBBcHBMZXZlbEFkbWluRGFzaGJvYXJkRW5hYmxlZCxcbiAgICBBcHBSZXN0cmljdGlvbnMsXG4gICAgQmFzaWNJbnRlZ3JhdGlvbixcbiAgICBDaGlsZEFwcCxcbiAgICBSZXF1aXJlZFBhcmVudERldGFpbHMsXG4gICAgRWRpdGlvbixcbiAgICBFZGl0aW9uSWRlbnRpZmllcixcbiAgICBFZGl0aW9uSW5mb3JtYXRpb24sXG4gICAgRW5kVXNlck1hcmtldGluZ0luZm9ybWF0aW9uLFxuICAgIEV4dGVybmFsSWRlbnRpZmllcnMsXG4gICAgRnJlcXVlbnRseUFza2VkUXVlc3Rpb25zLFxuICAgIFBlcm1pc3Npb25MaXN0cyxcbiAgICBQcmljZSxcbiAgICBSZXF1aXJlZEJ1c2luZXNzRGF0YSxcbiAgICBSZXF1aXJlZFBhcmVudCxcbiAgICBTU09JbnRlZ3JhdGlvbixcbiAgICBTaGFyZWRNYXJrZXRpbmdJbmZvcm1hdGlvbixcbiAgICBUcmlhbENvbmZpZ3VyYXRpb24sXG59IGZyb20gJy4vbWFya2V0cGxhY2UtYXBwJztcblxuZXhwb3J0IHtcbiAgICBBcHBMZXZlbEFkbWluRGFzaGJvYXJkLFxuICAgIEFwcFNldHRpbmdzLFxuICAgIEF1dG9BY3RpdmF0aW9uLFxuICAgIEJyYW5kaW5nLFxuICAgIEVkaXRpb25DaGFuZ2UsXG4gICAgVHJpYWwsXG59IGZyb20gJy4vYXBwLXNldHRpbmdzJztcblxuZXhwb3J0IHtcbiAgICBVcGdyYWRlRGlhbG9nQ29udGVudCxcbn0gZnJvbSAnLi91cGdyYWRlLWRpYWxvZy1jb250ZW50JztcblxuZXhwb3J0IHtcbiAgICBBY2Nlc3MsXG59IGZyb20gJy4vYW5ub3RhdGlvbnMnO1xuXG5leHBvcnQge1xuICAgIEZpZWxkTWFzayxcbn0gZnJvbSAnLi9maWVsZC1tYXNrJztcblxuZXhwb3J0IHtcbiAgICBBcHBLZXlXaXRoUXVhbnRpdHksXG4gICAgR2V0QXBwU2V0dGluZ3NSZXF1ZXN0LFxuICAgIEdldEFwcFNldHRpbmdzUmVzcG9uc2UsXG4gICAgR2V0TXVsdGlBcHBSZXF1ZXN0LFxuICAgIEdldE11bHRpQXBwUmVzcG9uc2UsXG4gICAgR2V0UHVyY2hhc2VMaW5rUmVxdWVzdCxcbiAgICBHZXRQdXJjaGFzZUxpbmtSZXNwb25zZSxcbiAgICBHZXRVcGdyYWRlRGlhbG9nQ29udGVudFJlcXVlc3QsXG4gICAgR2V0VXBncmFkZURpYWxvZ0NvbnRlbnRSZXNwb25zZSxcbiAgICBMaXN0QXBwU2V0dGluZ3NSZXF1ZXN0LFxuICAgIExpc3RBcHBTZXR0aW5nc1Jlc3BvbnNlLFxuICAgIExpc3RQYXJ0bmVyRW5hYmxlZEFwcHNSZXF1ZXN0TGlzdEFwcHNGaWx0ZXIsXG4gICAgTGlzdFBhcnRuZXJFbmFibGVkQXBwc1JlcXVlc3QsXG4gICAgTGlzdFBhcnRuZXJFbmFibGVkQXBwc1Jlc3BvbnNlLFxuICAgIFByb2R1Y3RTdWdnZXN0aW9uLFxuICAgIFJlcGxhY2VBcHBTZXR0aW5nc1JlcXVlc3QsXG4gICAgUmVwbGFjZUFwcFNldHRpbmdzUmVzcG9uc2UsXG4gICAgUmVwbGFjZVVwZ3JhZGVEaWFsb2dDb250ZW50UmVxdWVzdCxcbiAgICBTdWdnZXN0UHJvZHVjdFJlcXVlc3QsXG59IGZyb20gJy4vcGFydG5lci1hcGknO1xuXG5leHBvcnQge1xuICAgIEFwcFRhZyxcbiAgICBHZXRNdWx0aUFwcERhdGFSZXF1ZXN0LFxuICAgIEdldE11bHRpQXBwRGF0YVJlc3BvbnNlLFxuICAgIEtpbmRWYWx1ZXMsXG4gICAgTGlzdEFwcElEc0J5TXVsdGlUYWdSZXF1ZXN0LFxuICAgIExpc3RBcHBJRHNCeU11bHRpVGFnUmVzcG9uc2UsXG4gICAgTGlzdEJ5TXVsdGlUYWdSZXF1ZXN0LFxuICAgIExpc3RCeU11bHRpVGFnUmVzcG9uc2UsXG4gICAgTGlzdFZhbHVlc0J5TXVsdGlLaW5kUmVxdWVzdCxcbiAgICBMaXN0VmFsdWVzQnlNdWx0aUtpbmRSZXNwb25zZSxcbiAgICBNYXJrZXRwbGFjZUFwcCxcbiAgICBTY29wZWRUYWcsXG4gICAgVGFnLFxuICAgIFRhZ0FwcHNSZXF1ZXN0LFxuICAgIFVudGFnQXBwc1JlcXVlc3QsXG59IGZyb20gJy4vYXBwLWRhdGEtYXBpJztcblxuZXhwb3J0IHtcbiAgICBBY3RpdmF0YWJsZUl0ZW1TdW1tYXJ5LFxuICAgIEl0ZW0sXG4gICAgUmVxdWlyZWRJdGVtLFxufSBmcm9tICcuL2l0ZW0nO1xuXG5leHBvcnQge1xuICAgIEVkaXRpb25SZXF1aXJlbWVudCxcbiAgICBJdGVtSWRlbnRpZmllcixcbiAgICBMaXN0RGVwZW5kZW5jaWVzUmVxdWVzdCxcbiAgICBMaXN0RGVwZW5kZW5jaWVzUmVxdWlyZWRJdGVtLFxuICAgIExpc3REZXBlbmRlbmNpZXNSZXF1aXJlZEl0ZW1zLFxuICAgIExpc3REZXBlbmRlbmNpZXNSZXNwb25zZSxcbiAgICBMaXN0RGVwZW5kZW5jaWVzUmVzcG9uc2VNaXNzaW5nSXRlbXNFbnRyeSxcbn0gZnJvbSAnLi9pdGVtLWRlcGVuZGVuY3knO1xuXG5leHBvcnQge1xuICAgIExpc3RBY3RpdmF0YWJsZUl0ZW1zRmlsdGVycyxcbiAgICBMaXN0QWN0aXZhdGFibGVJdGVtc1JlcXVlc3QsXG4gICAgTGlzdEFjdGl2YXRhYmxlSXRlbXNSZXNwb25zZSxcbiAgICBMaXN0QWN0aXZhdGFibGVJdGVtc1NvcnRPcHRpb25zLFxuICAgIExpc3RPd25lZEl0ZW1zRmlsdGVyT3B0aW9ucyxcbiAgICBMaXN0T3duZWRJdGVtc1JlcXVlc3QsXG4gICAgTGlzdE93bmVkSXRlbXNSZXNwb25zZSxcbn0gZnJvbSAnLi9pdGVtcy1hcGknO1xuXG5leHBvcnQge1xuICAgIERlbGV0ZUNhdGVnb3J5UmVxdWVzdCxcbiAgICBHZXRDYXRlZ29yaWVzUmVxdWVzdCxcbiAgICBHZXRDYXRlZ29yaWVzUmVzcG9uc2UsXG4gICAgTWFya2V0cGxhY2VDYXRlZ29yeSxcbiAgICBVcHNlcnRSZXF1ZXN0LFxuICAgIFVwc2VydFJlc3BvbnNlLFxufSBmcm9tICcuL2NhdGVnb3J5LWFwaSc7XG5cbmV4cG9ydCB7XG4gICAgRmVlLFxufSBmcm9tICcuL2ZlZSc7XG5cbmV4cG9ydCB7XG4gICAgQXBwUHJpY2UsXG4gICAgQXBwUHJpY2VzLFxuICAgIEJpbGxpbmdDb25maWd1cmF0aW9uLFxuICAgIENvbW1pdG1lbnQsXG4gICAgRGlzY291bnQsXG4gICAgRnJlcXVlbmN5UHJpY2UsXG4gICAgRnJlcXVlbmN5UHJpY2VzLFxuICAgIEluc3RhbmNlUHJpY2UsXG4gICAgQXBwUHJpY2VzUHJpY2VzRm9yQ29udGV4dHNFbnRyeSxcbiAgICBVbml0UHJpY2VQcmljZXNGb3JDdXJyZW5jaWVzRW50cnksXG4gICAgQXBwUHJpY2VQcmljZXNGb3JFZGl0aW9uc0VudHJ5LFxuICAgIFByaWNpbmdSdWxlLFxuICAgIFJlcXVlc3RlZEFwcCxcbiAgICBVbml0UHJpY2UsXG59IGZyb20gJy4vYXBwLXByaWNlJztcblxuZXhwb3J0IHtcbiAgICBHZXRNdWx0aVByaWNpbmdSZXF1ZXN0LFxuICAgIEdldE11bHRpUHJpY2luZ1Jlc3BvbnNlLFxufSBmcm9tICcuL2FwcC1wcmljZS1hcGknO1xuXG5leHBvcnQge1xuICAgIFBhZ2VkUmVxdWVzdE9wdGlvbnMsXG4gICAgUGFnZWRSZXNwb25zZU1ldGFkYXRhLFxufSBmcm9tICcuL3BhZ2luZyc7XG5cbmV4cG9ydCB7XG4gICAgQXJjaGl2ZUF1eGlsaWFyeURhdGFGaWVsZFNjaGVtYVJlcXVlc3QsXG4gICAgQXV4aWxpYXJ5RGF0YUZpZWxkU2NoZW1hLFxuICAgIEF1eGlsaWFyeURhdGFPYmplY3RJRCxcbiAgICBDcmVhdGVBdXhpbGlhcnlEYXRhRmllbGRTY2hlbWFSZXF1ZXN0LFxuICAgIERyb3Bkb3duT3B0aW9uLFxuICAgIEZpZWxkRGF0YVVwc2VydE9wZXJhdGlvbixcbiAgICBGaWVsZFNjaGVtYUlkZW50aWZpZXIsXG4gICAgTGlzdEF1eGlsaWFyeURhdGFGaWVsZFNjaGVtYVJlcXVlc3RGaWx0ZXJzLFxuICAgIEdldEF1eGlsaWFyeURhdGFGaWVsZFNjaGVtYVJlcXVlc3QsXG4gICAgR2V0QXV4aWxpYXJ5RGF0YUZpZWxkU2NoZW1hUmVzcG9uc2UsXG4gICAgR2V0TXVsdGlBdXhpbGlhcnlEYXRhRmllbGRTY2hlbWFSZXF1ZXN0LFxuICAgIEdldE11bHRpQXV4aWxpYXJ5RGF0YUZpZWxkU2NoZW1hUmVzcG9uc2UsXG4gICAgTGlzdEF1eGlsaWFyeURhdGFGaWVsZFNjaGVtYVJlcXVlc3QsXG4gICAgTGlzdEF1eGlsaWFyeURhdGFGaWVsZFNjaGVtYVJlc3BvbnNlLFxuICAgIExpc3RBdXhpbGlhcnlEYXRhUmVxdWVzdCxcbiAgICBMaXN0QXV4aWxpYXJ5RGF0YVJlc3BvbnNlLFxuICAgIFVuYXJjaGl2ZUF1eGlsaWFyeURhdGFGaWVsZFNjaGVtYVJlcXVlc3QsXG4gICAgVXBkYXRlQXV4aWxpYXJ5RGF0YUZpZWxkU2NoZW1hUmVxdWVzdCxcbiAgICBVcHNlcnRBdXhpbGlhcnlEYXRhUmVxdWVzdCxcbn0gZnJvbSAnLi9maWVsZHMnO1xuXG5leHBvcnQge1xuICAgIEluY2x1ZGVkQ29tbW9uRm9ybUZpZWxkcyxcbiAgICBPcmRlckZvcm1GaWVsZE9wdGlvbixcbiAgICBPcmRlckZvcm0sXG4gICAgT3JkZXJGb3JtRmllbGQsXG59IGZyb20gJy4vb3JkZXItZm9ybSc7XG5cbmV4cG9ydCB7XG4gICAgRnVsZmlsbG1lbnRPcmRlckNvbmZpZyxcbiAgICBGdWxmaWxsbWVudE9yZGVyQ29uZmlnUHJvamVjdGlvbkZpbHRlcixcbiAgICBHZXRGdWxmaWxsbWVudE9yZGVyQ29uZmlnUmVxdWVzdCxcbiAgICBHZXRGdWxmaWxsbWVudE9yZGVyQ29uZmlnUmVzcG9uc2UsXG4gICAgVXBkYXRlRnVsZmlsbG1lbnRPcmRlckNvbmZpZ1JlcXVlc3QsXG59IGZyb20gJy4vZnVsZmlsbG1lbnQtb3JkZXItY29uZmlnJztcblxuIl19
@@ -4,6 +4,29 @@ export function enumStringToValue(enumRef, value) {
4
4
  }
5
5
  return enumRef[value];
6
6
  }
7
+ export class EditionRequirement {
8
+ static fromProto(proto) {
9
+ let m = new EditionRequirement();
10
+ m = Object.assign(m, proto);
11
+ return m;
12
+ }
13
+ constructor(kwargs) {
14
+ if (!kwargs) {
15
+ return;
16
+ }
17
+ Object.assign(this, kwargs);
18
+ }
19
+ toApiJson() {
20
+ const toReturn = {};
21
+ if (typeof this.editionId !== 'undefined') {
22
+ toReturn['editionId'] = this.editionId;
23
+ }
24
+ if (typeof this.editionRequired !== 'undefined') {
25
+ toReturn['editionRequired'] = this.editionRequired;
26
+ }
27
+ return toReturn;
28
+ }
29
+ }
7
30
  export class ItemIdentifier {
8
31
  static fromProto(proto) {
9
32
  let m = new ItemIdentifier();
@@ -57,6 +80,9 @@ export class ListDependenciesRequiredItem {
57
80
  static fromProto(proto) {
58
81
  let m = new ListDependenciesRequiredItem();
59
82
  m = Object.assign(m, proto);
83
+ if (proto.editionRequirement) {
84
+ m.editionRequirement = EditionRequirement.fromProto(proto.editionRequirement);
85
+ }
60
86
  return m;
61
87
  }
62
88
  constructor(kwargs) {
@@ -70,8 +96,8 @@ export class ListDependenciesRequiredItem {
70
96
  if (typeof this.itemId !== 'undefined') {
71
97
  toReturn['itemId'] = this.itemId;
72
98
  }
73
- if (typeof this.editionId !== 'undefined') {
74
- toReturn['editionId'] = this.editionId;
99
+ if (typeof this.editionRequirement !== 'undefined' && this.editionRequirement !== null) {
100
+ toReturn['editionRequirement'] = 'toApiJson' in this.editionRequirement ? this.editionRequirement.toApiJson() : this.editionRequirement;
75
101
  }
76
102
  if (typeof this.enabled !== 'undefined') {
77
103
  toReturn['enabled'] = this.enabled;
@@ -151,4 +177,4 @@ export class ListDependenciesResponseMissingItemsEntry {
151
177
  return toReturn;
152
178
  }
153
179
  }
154
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXRlbS1kZXBlbmRlbmN5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbWFya2V0cGxhY2VfYXBwc19zZGsvc3JjL2xpYi9faW50ZXJuYWwvb2JqZWN0cy9pdGVtLWRlcGVuZGVuY3kudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBVUEsTUFBTSxVQUFVLGlCQUFpQixDQUFJLE9BQVksRUFBRSxLQUFhO0lBQzlELElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxFQUFFO1FBQzdCLE9BQU8sS0FBSyxDQUFDO0tBQ2Q7SUFDRCxPQUFPLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztBQUN4QixDQUFDO0FBRUQsTUFBTSxPQUFPLGNBQWM7SUFJdkIsTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFVO1FBQ3ZCLElBQUksQ0FBQyxHQUFHLElBQUksY0FBYyxFQUFFLENBQUM7UUFDN0IsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzVCLE9BQU8sQ0FBQyxDQUFDO0lBQ2IsQ0FBQztJQUVELFlBQVksTUFBa0M7UUFDMUMsSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNULE9BQU87U0FDVjtRQUNELE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFFRCxTQUFTO1FBQ0wsTUFBTSxRQUFRLEdBRVYsRUFBRSxDQUFDO1FBRVAsSUFBSSxPQUFPLElBQUksQ0FBQyxNQUFNLEtBQUssV0FBVyxFQUFFO1lBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7U0FBQztRQUMzRSxJQUFJLE9BQU8sSUFBSSxDQUFDLFNBQVMsS0FBSyxXQUFXLEVBQUU7WUFBQyxRQUFRLENBQUMsV0FBVyxDQUFDLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQztTQUFDO1FBQ3BGLE9BQU8sUUFBUSxDQUFDO0lBQ3BCLENB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LFdBQVcsRUFBRTtZQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDO1NBQUM7UUFDbEUsSUFBSSxPQUFPLElBQUksQ0FBQyxLQUFLLEtBQUssV0FBVyxJQUFJLElBQUksQ0FBQyxLQUFLLEtBQUssSUFBSSxFQUFFO1lBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxHQUFHLFdBQVcsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBRSxJQUFJLENBQUMsS0FBYSxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDO1NBQUM7UUFDN0osT0FBTyxRQUFRLENBQUM7SUFDcEIsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyBDb2RlIGdlbmVyYXRlZCBieSBzZGtnZW5cbi8vIERPIE5PVCBFRElUIS5cbi8vXG4vLyBPYmplY3RzLlxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5pbXBvcnQgKiBhcyBpIGZyb20gJy4uL2ludGVyZmFjZXMnO1xuXG5pbXBvcnQgKiBhcyBlIGZyb20gJy4uL2VudW1zJztcblxuZXhwb3J0IGZ1bmN0aW9uIGVudW1TdHJpbmdUb1ZhbHVlPEU+KGVudW1SZWY6IGFueSwgdmFsdWU6IHN0cmluZyk6IEUge1xuICBpZiAodHlwZW9mIHZhbHVlID09PSAnbnVtYmVyJykge1xuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxuICByZXR1cm4gZW51bVJlZlt2YWx1ZV07XG59XG5cbmV4cG9ydCBjbGFzcyBJdGVtSWRlbnRpZmllciBpbXBsZW1lbnRzIGkuSXRlbUlkZW50aWZpZXJJbnRlcmZhY2Uge1xuICAgIGl0ZW1JZDogc3RyaW5nO1xuICAgIGVkaXRpb25JZDogc3RyaW5nO1xuXG4gICAgc3RhdGljIGZyb21Qcm90byhwcm90bzogYW55KTogSXRlbUlkZW50aWZpZXIge1xuICAgICAgICBsZXQgbSA9IG5ldyBJdGVtSWRlbnRpZmllcigpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIHJldHVybiBtO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKGt3YXJncz86IGkuSXRlbUlkZW50aWZpZXJJbnRlcmZhY2UpIHtcbiAgICAgICAgaWYgKCFrd2FyZ3MpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGt3YXJncyk7XG4gICAgfVxuXG4gICAgdG9BcGlKc29uKCk6IG9iamVjdCB7XG4gICAgICAgIGNvbnN0IHRvUmV0dXJuOiB7XG4gICAgICAgICAgICBba2V5OiBzdHJpbmddOiBhbnk7XG4gICAgICAgIH0gPSB7fTtcbiAgICAgICAgXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5pdGVtSWQgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2l0ZW1JZCddID0gdGhpcy5pdGVtSWQ7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuZWRpdGlvbklkICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydlZGl0aW9uSWQnXSA9IHRoaXMuZWRpdGlvbklkO31cbiAgICAgICAgcmV0dXJuIHRvUmV0dXJuO1xuICAgIH1cbn1cblxuZXhwb3J0IGNsYXNzIExpc3REZXBlbmRlbmNpZXNSZXF1ZXN0IGltcGxlbWVudHMgaS5MaXN0RGVwZW5kZW5jaWVzUmVxdWVzdEludGVyZmFjZSB7XG4gICAgc2VsbGVySWQ6IHN0cmluZztcbiAgICBpdGVtczogSXRlbUlkZW50aWZpZXJbXTtcblxuICAgIHN0YXRpYyBmcm9tUHJvdG8ocHJvdG86IGFueSk6IExpc3REZXBlbmRlbmNpZXNSZXF1ZXN0IHtcbiAgICAgICAgbGV0IG0gPSBuZXcgTGlzdERlcGVuZGVuY2llc1JlcXVlc3QoKTtcbiAgICAgICAgbSA9IE9iamVjdC5hc3NpZ24obSwgcHJvdG8pO1xuICAgICAgICBpZiAocHJvdG8uaXRlbXMpIHttLml0ZW1zID0gcHJvdG8uaXRlbXMubWFwKEl0ZW1JZGVudGlmaWVyLmZyb21Qcm90byk7fVxuICAgICAgICByZXR1cm4gbTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihrd2FyZ3M/OiBpLkxpc3REZXBlbmRlbmNpZXNSZXF1ZXN0SW50ZXJmYWNlKSB7XG4gICAgICAgIGlmICgha3dhcmdzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBrd2FyZ3MpO1xuICAgIH1cblxuICAgIHRvQXBpSnNvbigpOiBvYmplY3Qge1xuICAgICAgICBjb25zdCB0b1JldHVybjoge1xuICAgICAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICB9ID0ge307XG4gICAgICAgIFxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuc2VsbGVySWQgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ3NlbGxlcklkJ10gPSB0aGlzLnNlbGxlcklkO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLml0ZW1zICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLml0ZW1zICE9PSBudWxsKSB7dG9SZXR1cm5bJ2l0ZW1zJ10gPSAndG9BcGlKc29uJyBpbiB0aGlzLml0ZW1zID8gKHRoaXMuaXRlbXMgYXMgYW55KS50b0FwaUpzb24oKSA6IHRoaXMuaXRlbXM7fVxuICAgICAgICByZXR1cm4gdG9SZXR1cm47XG4gICAgfVxufVxuXG5leHBvcnQgY2xhc3MgTGlzdERlcGVuZGVuY2llc1JlcXVpcmVkSXRlbSBpbXBsZW1lbnRzIGkuTGlzdERlcGVuZGVuY2llc1JlcXVpcmVkSXRlbUludGVyZmFjZSB7XG4gICAgaXRlbUlkOiBzdHJpbmc7XG4gICAgZWRpdGlvbklkOiBzdHJpbmc7XG4gICAgZW5hYmxlZDogYm9vbGVhbjtcblxuICAgIHN0YXRpYyBmcm9tUHJvdG8ocHJvdG86IGFueSk6IExpc3REZXBlbmRlbmNpZXNSZXF1aXJlZEl0ZW0ge1xuICAgICAgICBsZXQgbSA9IG5ldyBMaXN0RGVwZW5kZW5jaWVzUmVxdWlyZWRJdGVtKCk7XG4gICAgICAgIG0gPSBPYmplY3QuYXNzaWduKG0sIHByb3RvKTtcbiAgICAgICAgcmV0dXJuIG07XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3Ioa3dhcmdzPzogaS5MaXN0RGVwZW5kZW5jaWVzUmVxdWlyZWRJdGVtSW50ZXJmYWNlKSB7XG4gICAgICAgIGlmICgha3dhcmdzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBrd2FyZ3MpO1xuICAgIH1cblxuICAgIHRvQXBpSnNvbigpOiBvYmplY3Qge1xuICAgICAgICBjb25zdCB0b1JldHVybjoge1xuICAgICAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICB9ID0ge307XG4gICAgICAgIFxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuaXRlbUlkICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydpdGVtSWQnXSA9IHRoaXMuaXRlbUlkO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmVkaXRpb25JZCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnZWRpdGlvbklkJ10gPSB0aGlzLmVkaXRpb25JZDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5lbmFibGVkICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydlbmFibGVkJ10gPSB0aGlzLmVuYWJsZWQ7fVxuICAgICAgICByZXR1cm4gdG9SZXR1cm47XG4gICAgfVxufVxuXG5leHBvcnQgY2xhc3MgTGlzdERlcGVuZGVuY2llc1JlcXVpcmVkSXRlbXMgaW1wbGVtZW50cyBpLkxpc3REZXBlbmRlbmNpZXNSZXF1aXJlZEl0ZW1zSW50ZXJmYWNlIHtcbiAgICByZXF1aXJlZEl0ZW1zOiBMaXN0RGVwZW5kZW5jaWVzUmVxdWlyZWRJdGVtW107XG5cbiAgICBzdGF0aWMgZnJvbVByb3RvKHByb3RvOiBhbnkpOiBMaXN0RGVwZW5kZW5jaWVzUmVxdWlyZWRJdGVtcyB7XG4gICAgICAgIGxldCBtID0gbmV3IExpc3REZXBlbmRlbmNpZXNSZXF1aXJlZEl0ZW1zKCk7XG4gICAgICAgIG0gPSBPYmplY3QuYXNzaWduKG0sIHByb3RvKTtcbiAgICAgICAgaWYgKHByb3RvLnJlcXVpcmVkSXRlbXMpIHttLnJlcXVpcmVkSXRlbXMgPSBwcm90by5yZXF1aXJlZEl0ZW1zLm1hcChMaXN0RGVwZW5kZW5jaWVzUmVxdWlyZWRJdGVtLmZyb21Qcm90byk7fVxuICAgICAgICByZXR1cm4gbTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihrd2FyZ3M/OiBpLkxpc3REZXBlbmRlbmNpZXNSZXF1aXJlZEl0ZW1zSW50ZXJmYWNlKSB7XG4gICAgICAgIGlmICgha3dhcmdzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBrd2FyZ3MpO1xuICAgIH1cblxuICAgIHRvQXBpSnNvbigpOiBvYmplY3Qge1xuICAgICAgICBjb25zdCB0b1JldHVybjoge1xuICAgICAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICB9ID0ge307XG4gICAgICAgIFxuICAgICAgICBpZiAodHlwZW9mIHRoaXMucmVxdWlyZWRJdGVtcyAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy5yZXF1aXJlZEl0ZW1zICE9PSBudWxsKSB7dG9SZXR1cm5bJ3JlcXVpcmVkSXRlbXMnXSA9ICd0b0FwaUpzb24nIGluIHRoaXMucmVxdWlyZWRJdGVtcyA/ICh0aGlzLnJlcXVpcmVkSXRlbXMgYXMgYW55KS50b0FwaUpzb24oKSA6IHRoaXMucmVxdWlyZWRJdGVtczt9XG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBMaXN0RGVwZW5kZW5jaWVzUmVzcG9uc2UgaW1wbGVtZW50cyBpLkxpc3REZXBlbmRlbmNpZXNSZXNwb25zZUludGVyZmFjZSB7XG4gICAgbWlzc2luZ0l0ZW1zOiB7W2tleTogc3RyaW5nXTogTGlzdERlcGVuZGVuY2llc1JlcXVpcmVkSXRlbXN9O1xuXG4gICAgc3RhdGljIGZyb21Qcm90byhwcm90bzogYW55KTogTGlzdERlcGVuZGVuY2llc1Jlc3BvbnNlIHtcbiAgICAgICAgbGV0IG0gPSBuZXcgTGlzdERlcGVuZGVuY2llc1Jlc3BvbnNlKCk7XG4gICAgICAgIG0gPSBPYmplY3QuYXNzaWduKG0sIHByb3RvKTtcbiAgICAgICAgaWYgKHByb3RvLm1pc3NpbmdJdGVtcykge20ubWlzc2luZ0l0ZW1zID0gT2JqZWN0LmtleXMocHJvdG8ubWlzc2luZ0l0ZW1zKS5yZWR1Y2U8YW55Pigob2JqLCBrKSA9PiB7IG9ialtrXSA9IExpc3REZXBlbmRlbmNpZXNSZXF1aXJlZEl0ZW1zLmZyb21Qcm90byhwcm90by5taXNzaW5nSXRlbXNba10pOyByZXR1cm4gb2JqOyB9LCB7fSk7fVxuICAgICAgICByZXR1cm4gbTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihrd2FyZ3M/OiBpLkxpc3REZXBlbmRlbmNpZXNSZXNwb25zZUludGVyZmFjZSkge1xuICAgICAgICBpZiAoIWt3YXJncykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIE9iamVjdC5hc3NpZ24odGhpcywga3dhcmdzKTtcbiAgICB9XG5cbiAgICB0b0FwaUpzb24oKTogb2JqZWN0IHtcbiAgICAgICAgY29uc3QgdG9SZXR1cm46IHtcbiAgICAgICAgICAgIFtrZXk6IHN0cmluZ106IGFueTtcbiAgICAgICAgfSA9IHt9O1xuICAgICAgICBcbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLm1pc3NpbmdJdGVtcyAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy5taXNzaW5nSXRlbXMgIT09IG51bGwpIHt0b1JldHVyblsnbWlzc2luZ0l0ZW1zJ10gPSAndG9BcGlKc29uJyBpbiB0aGlzLm1pc3NpbmdJdGVtcyA/ICh0aGlzLm1pc3NpbmdJdGVtcyBhcyBhbnkpLnRvQXBpSnNvbigpIDogdGhpcy5taXNzaW5nSXRlbXM7fVxuICAgICAgICByZXR1cm4gdG9SZXR1cm47XG4gICAgfVxufVxuXG5leHBvcnQgY2xhc3MgTGlzdERlcGVuZGVuY2llc1Jlc3BvbnNlTWlzc2luZ0l0ZW1zRW50cnkgaW1wbGVtZW50cyBpLkxpc3REZXBlbmRlbmNpZXNSZXNwb25zZU1pc3NpbmdJdGVtc0VudHJ5SW50ZXJmYWNlIHtcbiAgICBrZXk6IHN0cmluZztcbiAgICB2YWx1ZTogTGlzdERlcGVuZGVuY2llc1JlcXVpcmVkSXRlbXM7XG5cbiAgICBzdGF0aWMgZnJvbVByb3RvKHByb3RvOiBhbnkpOiBMaXN0RGVwZW5kZW5jaWVzUmVzcG9uc2VNaXNzaW5nSXRlbXNFbnRyeSB7XG4gICAgICAgIGxldCBtID0gbmV3IExpc3REZXBlbmRlbmNpZXNSZXNwb25zZU1pc3NpbmdJdGVtc0VudHJ5KCk7XG4gICAgICAgIG0gPSBPYmplY3QuYXNzaWduKG0sIHByb3RvKTtcbiAgICAgICAgaWYgKHByb3RvLnZhbHVlKSB7bS52YWx1ZSA9IExpc3REZXBlbmRlbmNpZXNSZXF1aXJlZEl0ZW1zLmZyb21Qcm90byhwcm90by52YWx1ZSk7fVxuICAgICAgICByZXR1cm4gbTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihrd2FyZ3M/OiBpLkxpc3REZXBlbmRlbmNpZXNSZXNwb25zZU1pc3NpbmdJdGVtc0VudHJ5SW50ZXJmYWNlKSB7XG4gICAgICAgIGlmICgha3dhcmdzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBrd2FyZ3MpO1xuICAgIH1cblxuICAgIHRvQXBpSnNvbigpOiBvYmplY3Qge1xuICAgICAgICBjb25zdCB0b1JldHVybjoge1xuICAgICAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICB9ID0ge307XG4gICAgICAgIFxuICAgICAgICBpZiAodHlwZW9mIHRoaXMua2V5ICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydrZXknXSA9IHRoaXMua2V5O31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnZhbHVlICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLnZhbHVlICE9PSBudWxsKSB7dG9SZXR1cm5bJ3ZhbHVlJ10gPSAndG9BcGlKc29uJyBpbiB0aGlzLnZhbHVlID8gKHRoaXMudmFsdWUgYXMgYW55KS50b0FwaUpzb24oKSA6IHRoaXMudmFsdWU7fVxuICAgICAgICByZXR1cm4gdG9SZXR1cm47XG4gICAgfVxufVxuXG4iXX0=
180
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXRlbS1kZXBlbmRlbmN5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbWFya2V0cGxhY2VfYXBwc19zZGsvc3JjL2xpYi9faW50ZXJuYWwvb2JqZWN0cy9pdGVtLWRlcGVuZGVuY3kudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBVUEsTUFBTSxVQUFVLGlCQUFpQixDQUFJLE9BQVksRUFBRSxLQUFhO0lBQzlELElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxFQUFFO1FBQzdCLE9BQU8sS0FBSyxDQUFDO0tBQ2Q7SUFDRCxPQUFPLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztBQUN4QixDQUFDO0FBRUQsTUFBTSxPQUFPLGtCQUFrQjtJQUkzQixNQUFNLENBQUMsU0FBUyxDQUFDLEtBQVU7UUFDdkIsSUFBSSxDQUFDLEdBQUcsSUFBSSxrQkFBa0IsRUFBRSxDQUFDO1FBQ2pDLENBQUMsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUM1QixPQUFPLENBQUMsQ0FBQztJQUNiLENBQUM7SUFFRCxZQUFZLE1BQXNDO1FBQzlDLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDVCxPQUFPO1NBQ1Y7UUFDRCxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRUQsU0FBUztRQUNMLE1BQU0sUUFBUSxHQUVWLEVBQUUsQ0FBQztRQUVQLElBQUksT0FBTyxJQUFJLENBQUMsU0FBUyxLQUFLLFdBQVcsRUFBRTtZQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDO1NBQUM7UUFDcEYsSUFBSSxPQUFPLElBQUksQ0FBQyxlQUFlLEtBQUssV0FBVyxFQUFFO1lBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQztTQUFDO1FBQ3RHLE9BQU8sUUFBUSxDQUFDO0lB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QUFJLE9BQU8sSUFBSSxDQUFDLEtBQUssS0FBSyxXQUFXLElBQUksSUFBSSxDQUFDLEtBQUssS0FBSyxJQUFJLEVBQUU7WUFBQyxRQUFRLENBQUMsT0FBTyxDQUFDLEdBQUcsV0FBVyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFFLElBQUksQ0FBQyxLQUFhLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7U0FBQztRQUM3SixPQUFPLFFBQVEsQ0FBQztJQUNwQixDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyIvLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vIENvZGUgZ2VuZXJhdGVkIGJ5IHNka2dlblxuLy8gRE8gTk9UIEVESVQhLlxuLy9cbi8vIE9iamVjdHMuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbmltcG9ydCAqIGFzIGkgZnJvbSAnLi4vaW50ZXJmYWNlcyc7XG5cbmltcG9ydCAqIGFzIGUgZnJvbSAnLi4vZW51bXMnO1xuXG5leHBvcnQgZnVuY3Rpb24gZW51bVN0cmluZ1RvVmFsdWU8RT4oZW51bVJlZjogYW55LCB2YWx1ZTogc3RyaW5nKTogRSB7XG4gIGlmICh0eXBlb2YgdmFsdWUgPT09ICdudW1iZXInKSB7XG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG4gIHJldHVybiBlbnVtUmVmW3ZhbHVlXTtcbn1cblxuZXhwb3J0IGNsYXNzIEVkaXRpb25SZXF1aXJlbWVudCBpbXBsZW1lbnRzIGkuRWRpdGlvblJlcXVpcmVtZW50SW50ZXJmYWNlIHtcbiAgICBlZGl0aW9uSWQ6IHN0cmluZztcbiAgICBlZGl0aW9uUmVxdWlyZWQ6IGJvb2xlYW47XG5cbiAgICBzdGF0aWMgZnJvbVByb3RvKHByb3RvOiBhbnkpOiBFZGl0aW9uUmVxdWlyZW1lbnQge1xuICAgICAgICBsZXQgbSA9IG5ldyBFZGl0aW9uUmVxdWlyZW1lbnQoKTtcbiAgICAgICAgbSA9IE9iamVjdC5hc3NpZ24obSwgcHJvdG8pO1xuICAgICAgICByZXR1cm4gbTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihrd2FyZ3M/OiBpLkVkaXRpb25SZXF1aXJlbWVudEludGVyZmFjZSkge1xuICAgICAgICBpZiAoIWt3YXJncykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIE9iamVjdC5hc3NpZ24odGhpcywga3dhcmdzKTtcbiAgICB9XG5cbiAgICB0b0FwaUpzb24oKTogb2JqZWN0IHtcbiAgICAgICAgY29uc3QgdG9SZXR1cm46IHtcbiAgICAgICAgICAgIFtrZXk6IHN0cmluZ106IGFueTtcbiAgICAgICAgfSA9IHt9O1xuICAgICAgICBcbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmVkaXRpb25JZCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnZWRpdGlvbklkJ10gPSB0aGlzLmVkaXRpb25JZDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5lZGl0aW9uUmVxdWlyZWQgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2VkaXRpb25SZXF1aXJlZCddID0gdGhpcy5lZGl0aW9uUmVxdWlyZWQ7fVxuICAgICAgICByZXR1cm4gdG9SZXR1cm47XG4gICAgfVxufVxuXG5leHBvcnQgY2xhc3MgSXRlbUlkZW50aWZpZXIgaW1wbGVtZW50cyBpLkl0ZW1JZGVudGlmaWVySW50ZXJmYWNlIHtcbiAgICBpdGVtSWQ6IHN0cmluZztcbiAgICBlZGl0aW9uSWQ6IHN0cmluZztcblxuICAgIHN0YXRpYyBmcm9tUHJvdG8ocHJvdG86IGFueSk6IEl0ZW1JZGVudGlmaWVyIHtcbiAgICAgICAgbGV0IG0gPSBuZXcgSXRlbUlkZW50aWZpZXIoKTtcbiAgICAgICAgbSA9IE9iamVjdC5hc3NpZ24obSwgcHJvdG8pO1xuICAgICAgICByZXR1cm4gbTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihrd2FyZ3M/OiBpLkl0ZW1JZGVudGlmaWVySW50ZXJmYWNlKSB7XG4gICAgICAgIGlmICgha3dhcmdzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBrd2FyZ3MpO1xuICAgIH1cblxuICAgIHRvQXBpSnNvbigpOiBvYmplY3Qge1xuICAgICAgICBjb25zdCB0b1JldHVybjoge1xuICAgICAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICB9ID0ge307XG4gICAgICAgIFxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuaXRlbUlkICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydpdGVtSWQnXSA9IHRoaXMuaXRlbUlkO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmVkaXRpb25JZCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnZWRpdGlvbklkJ10gPSB0aGlzLmVkaXRpb25JZDt9XG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBMaXN0RGVwZW5kZW5jaWVzUmVxdWVzdCBpbXBsZW1lbnRzIGkuTGlzdERlcGVuZGVuY2llc1JlcXVlc3RJbnRlcmZhY2Uge1xuICAgIHNlbGxlcklkOiBzdHJpbmc7XG4gICAgaXRlbXM6IEl0ZW1JZGVudGlmaWVyW107XG5cbiAgICBzdGF0aWMgZnJvbVByb3RvKHByb3RvOiBhbnkpOiBMaXN0RGVwZW5kZW5jaWVzUmVxdWVzdCB7XG4gICAgICAgIGxldCBtID0gbmV3IExpc3REZXBlbmRlbmNpZXNSZXF1ZXN0KCk7XG4gICAgICAgIG0gPSBPYmplY3QuYXNzaWduKG0sIHByb3RvKTtcbiAgICAgICAgaWYgKHByb3RvLml0ZW1zKSB7bS5pdGVtcyA9IHByb3RvLml0ZW1zLm1hcChJdGVtSWRlbnRpZmllci5mcm9tUHJvdG8pO31cbiAgICAgICAgcmV0dXJuIG07XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3Ioa3dhcmdzPzogaS5MaXN0RGVwZW5kZW5jaWVzUmVxdWVzdEludGVyZmFjZSkge1xuICAgICAgICBpZiAoIWt3YXJncykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIE9iamVjdC5hc3NpZ24odGhpcywga3dhcmdzKTtcbiAgICB9XG5cbiAgICB0b0FwaUpzb24oKTogb2JqZWN0IHtcbiAgICAgICAgY29uc3QgdG9SZXR1cm46IHtcbiAgICAgICAgICAgIFtrZXk6IHN0cmluZ106IGFueTtcbiAgICAgICAgfSA9IHt9O1xuICAgICAgICBcbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnNlbGxlcklkICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydzZWxsZXJJZCddID0gdGhpcy5zZWxsZXJJZDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5pdGVtcyAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy5pdGVtcyAhPT0gbnVsbCkge3RvUmV0dXJuWydpdGVtcyddID0gJ3RvQXBpSnNvbicgaW4gdGhpcy5pdGVtcyA/ICh0aGlzLml0ZW1zIGFzIGFueSkudG9BcGlKc29uKCkgOiB0aGlzLml0ZW1zO31cbiAgICAgICAgcmV0dXJuIHRvUmV0dXJuO1xuICAgIH1cbn1cblxuZXhwb3J0IGNsYXNzIExpc3REZXBlbmRlbmNpZXNSZXF1aXJlZEl0ZW0gaW1wbGVtZW50cyBpLkxpc3REZXBlbmRlbmNpZXNSZXF1aXJlZEl0ZW1JbnRlcmZhY2Uge1xuICAgIGl0ZW1JZDogc3RyaW5nO1xuICAgIGVkaXRpb25SZXF1aXJlbWVudDogRWRpdGlvblJlcXVpcmVtZW50O1xuICAgIGVuYWJsZWQ6IGJvb2xlYW47XG5cbiAgICBzdGF0aWMgZnJvbVByb3RvKHByb3RvOiBhbnkpOiBMaXN0RGVwZW5kZW5jaWVzUmVxdWlyZWRJdGVtIHtcbiAgICAgICAgbGV0IG0gPSBuZXcgTGlzdERlcGVuZGVuY2llc1JlcXVpcmVkSXRlbSgpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIGlmIChwcm90by5lZGl0aW9uUmVxdWlyZW1lbnQpIHttLmVkaXRpb25SZXF1aXJlbWVudCA9IEVkaXRpb25SZXF1aXJlbWVudC5mcm9tUHJvdG8ocHJvdG8uZWRpdGlvblJlcXVpcmVtZW50KTt9XG4gICAgICAgIHJldHVybiBtO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKGt3YXJncz86IGkuTGlzdERlcGVuZGVuY2llc1JlcXVpcmVkSXRlbUludGVyZmFjZSkge1xuICAgICAgICBpZiAoIWt3YXJncykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIE9iamVjdC5hc3NpZ24odGhpcywga3dhcmdzKTtcbiAgICB9XG5cbiAgICB0b0FwaUpzb24oKTogb2JqZWN0IHtcbiAgICAgICAgY29uc3QgdG9SZXR1cm46IHtcbiAgICAgICAgICAgIFtrZXk6IHN0cmluZ106IGFueTtcbiAgICAgICAgfSA9IHt9O1xuICAgICAgICBcbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLml0ZW1JZCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnaXRlbUlkJ10gPSB0aGlzLml0ZW1JZDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5lZGl0aW9uUmVxdWlyZW1lbnQgIT09ICd1bmRlZmluZWQnICYmIHRoaXMuZWRpdGlvblJlcXVpcmVtZW50ICE9PSBudWxsKSB7dG9SZXR1cm5bJ2VkaXRpb25SZXF1aXJlbWVudCddID0gJ3RvQXBpSnNvbicgaW4gdGhpcy5lZGl0aW9uUmVxdWlyZW1lbnQgPyAodGhpcy5lZGl0aW9uUmVxdWlyZW1lbnQgYXMgYW55KS50b0FwaUpzb24oKSA6IHRoaXMuZWRpdGlvblJlcXVpcmVtZW50O31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmVuYWJsZWQgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2VuYWJsZWQnXSA9IHRoaXMuZW5hYmxlZDt9XG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBMaXN0RGVwZW5kZW5jaWVzUmVxdWlyZWRJdGVtcyBpbXBsZW1lbnRzIGkuTGlzdERlcGVuZGVuY2llc1JlcXVpcmVkSXRlbXNJbnRlcmZhY2Uge1xuICAgIHJlcXVpcmVkSXRlbXM6IExpc3REZXBlbmRlbmNpZXNSZXF1aXJlZEl0ZW1bXTtcblxuICAgIHN0YXRpYyBmcm9tUHJvdG8ocHJvdG86IGFueSk6IExpc3REZXBlbmRlbmNpZXNSZXF1aXJlZEl0ZW1zIHtcbiAgICAgICAgbGV0IG0gPSBuZXcgTGlzdERlcGVuZGVuY2llc1JlcXVpcmVkSXRlbXMoKTtcbiAgICAgICAgbSA9IE9iamVjdC5hc3NpZ24obSwgcHJvdG8pO1xuICAgICAgICBpZiAocHJvdG8ucmVxdWlyZWRJdGVtcykge20ucmVxdWlyZWRJdGVtcyA9IHByb3RvLnJlcXVpcmVkSXRlbXMubWFwKExpc3REZXBlbmRlbmNpZXNSZXF1aXJlZEl0ZW0uZnJvbVByb3RvKTt9XG4gICAgICAgIHJldHVybiBtO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKGt3YXJncz86IGkuTGlzdERlcGVuZGVuY2llc1JlcXVpcmVkSXRlbXNJbnRlcmZhY2UpIHtcbiAgICAgICAgaWYgKCFrd2FyZ3MpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGt3YXJncyk7XG4gICAgfVxuXG4gICAgdG9BcGlKc29uKCk6IG9iamVjdCB7XG4gICAgICAgIGNvbnN0IHRvUmV0dXJuOiB7XG4gICAgICAgICAgICBba2V5OiBzdHJpbmddOiBhbnk7XG4gICAgICAgIH0gPSB7fTtcbiAgICAgICAgXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5yZXF1aXJlZEl0ZW1zICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLnJlcXVpcmVkSXRlbXMgIT09IG51bGwpIHt0b1JldHVyblsncmVxdWlyZWRJdGVtcyddID0gJ3RvQXBpSnNvbicgaW4gdGhpcy5yZXF1aXJlZEl0ZW1zID8gKHRoaXMucmVxdWlyZWRJdGVtcyBhcyBhbnkpLnRvQXBpSnNvbigpIDogdGhpcy5yZXF1aXJlZEl0ZW1zO31cbiAgICAgICAgcmV0dXJuIHRvUmV0dXJuO1xuICAgIH1cbn1cblxuZXhwb3J0IGNsYXNzIExpc3REZXBlbmRlbmNpZXNSZXNwb25zZSBpbXBsZW1lbnRzIGkuTGlzdERlcGVuZGVuY2llc1Jlc3BvbnNlSW50ZXJmYWNlIHtcbiAgICBtaXNzaW5nSXRlbXM6IHtba2V5OiBzdHJpbmddOiBMaXN0RGVwZW5kZW5jaWVzUmVxdWlyZWRJdGVtc307XG5cbiAgICBzdGF0aWMgZnJvbVByb3RvKHByb3RvOiBhbnkpOiBMaXN0RGVwZW5kZW5jaWVzUmVzcG9uc2Uge1xuICAgICAgICBsZXQgbSA9IG5ldyBMaXN0RGVwZW5kZW5jaWVzUmVzcG9uc2UoKTtcbiAgICAgICAgbSA9IE9iamVjdC5hc3NpZ24obSwgcHJvdG8pO1xuICAgICAgICBpZiAocHJvdG8ubWlzc2luZ0l0ZW1zKSB7bS5taXNzaW5nSXRlbXMgPSBPYmplY3Qua2V5cyhwcm90by5taXNzaW5nSXRlbXMpLnJlZHVjZTxhbnk+KChvYmosIGspID0+IHsgb2JqW2tdID0gTGlzdERlcGVuZGVuY2llc1JlcXVpcmVkSXRlbXMuZnJvbVByb3RvKHByb3RvLm1pc3NpbmdJdGVtc1trXSk7IHJldHVybiBvYmo7IH0sIHt9KTt9XG4gICAgICAgIHJldHVybiBtO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKGt3YXJncz86IGkuTGlzdERlcGVuZGVuY2llc1Jlc3BvbnNlSW50ZXJmYWNlKSB7XG4gICAgICAgIGlmICgha3dhcmdzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBrd2FyZ3MpO1xuICAgIH1cblxuICAgIHRvQXBpSnNvbigpOiBvYmplY3Qge1xuICAgICAgICBjb25zdCB0b1JldHVybjoge1xuICAgICAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICB9ID0ge307XG4gICAgICAgIFxuICAgICAgICBpZiAodHlwZW9mIHRoaXMubWlzc2luZ0l0ZW1zICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLm1pc3NpbmdJdGVtcyAhPT0gbnVsbCkge3RvUmV0dXJuWydtaXNzaW5nSXRlbXMnXSA9ICd0b0FwaUpzb24nIGluIHRoaXMubWlzc2luZ0l0ZW1zID8gKHRoaXMubWlzc2luZ0l0ZW1zIGFzIGFueSkudG9BcGlKc29uKCkgOiB0aGlzLm1pc3NpbmdJdGVtczt9XG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBMaXN0RGVwZW5kZW5jaWVzUmVzcG9uc2VNaXNzaW5nSXRlbXNFbnRyeSBpbXBsZW1lbnRzIGkuTGlzdERlcGVuZGVuY2llc1Jlc3BvbnNlTWlzc2luZ0l0ZW1zRW50cnlJbnRlcmZhY2Uge1xuICAgIGtleTogc3RyaW5nO1xuICAgIHZhbHVlOiBMaXN0RGVwZW5kZW5jaWVzUmVxdWlyZWRJdGVtcztcblxuICAgIHN0YXRpYyBmcm9tUHJvdG8ocHJvdG86IGFueSk6IExpc3REZXBlbmRlbmNpZXNSZXNwb25zZU1pc3NpbmdJdGVtc0VudHJ5IHtcbiAgICAgICAgbGV0IG0gPSBuZXcgTGlzdERlcGVuZGVuY2llc1Jlc3BvbnNlTWlzc2luZ0l0ZW1zRW50cnkoKTtcbiAgICAgICAgbSA9IE9iamVjdC5hc3NpZ24obSwgcHJvdG8pO1xuICAgICAgICBpZiAocHJvdG8udmFsdWUpIHttLnZhbHVlID0gTGlzdERlcGVuZGVuY2llc1JlcXVpcmVkSXRlbXMuZnJvbVByb3RvKHByb3RvLnZhbHVlKTt9XG4gICAgICAgIHJldHVybiBtO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKGt3YXJncz86IGkuTGlzdERlcGVuZGVuY2llc1Jlc3BvbnNlTWlzc2luZ0l0ZW1zRW50cnlJbnRlcmZhY2UpIHtcbiAgICAgICAgaWYgKCFrd2FyZ3MpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGt3YXJncyk7XG4gICAgfVxuXG4gICAgdG9BcGlKc29uKCk6IG9iamVjdCB7XG4gICAgICAgIGNvbnN0IHRvUmV0dXJuOiB7XG4gICAgICAgICAgICBba2V5OiBzdHJpbmddOiBhbnk7XG4gICAgICAgIH0gPSB7fTtcbiAgICAgICAgXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5rZXkgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2tleSddID0gdGhpcy5rZXk7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMudmFsdWUgIT09ICd1bmRlZmluZWQnICYmIHRoaXMudmFsdWUgIT09IG51bGwpIHt0b1JldHVyblsndmFsdWUnXSA9ICd0b0FwaUpzb24nIGluIHRoaXMudmFsdWUgPyAodGhpcy52YWx1ZSBhcyBhbnkpLnRvQXBpSnNvbigpIDogdGhpcy52YWx1ZTt9XG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICB9XG59XG5cbiJdfQ==
@@ -2284,6 +2284,29 @@ function enumStringToValue$9(enumRef, value) {
2284
2284
  }
2285
2285
  return enumRef[value];
2286
2286
  }
2287
+ class EditionRequirement {
2288
+ static fromProto(proto) {
2289
+ let m = new EditionRequirement();
2290
+ m = Object.assign(m, proto);
2291
+ return m;
2292
+ }
2293
+ constructor(kwargs) {
2294
+ if (!kwargs) {
2295
+ return;
2296
+ }
2297
+ Object.assign(this, kwargs);
2298
+ }
2299
+ toApiJson() {
2300
+ const toReturn = {};
2301
+ if (typeof this.editionId !== 'undefined') {
2302
+ toReturn['editionId'] = this.editionId;
2303
+ }
2304
+ if (typeof this.editionRequired !== 'undefined') {
2305
+ toReturn['editionRequired'] = this.editionRequired;
2306
+ }
2307
+ return toReturn;
2308
+ }
2309
+ }
2287
2310
  class ItemIdentifier {
2288
2311
  static fromProto(proto) {
2289
2312
  let m = new ItemIdentifier();
@@ -2337,6 +2360,9 @@ class ListDependenciesRequiredItem {
2337
2360
  static fromProto(proto) {
2338
2361
  let m = new ListDependenciesRequiredItem();
2339
2362
  m = Object.assign(m, proto);
2363
+ if (proto.editionRequirement) {
2364
+ m.editionRequirement = EditionRequirement.fromProto(proto.editionRequirement);
2365
+ }
2340
2366
  return m;
2341
2367
  }
2342
2368
  constructor(kwargs) {
@@ -2350,8 +2376,8 @@ class ListDependenciesRequiredItem {
2350
2376
  if (typeof this.itemId !== 'undefined') {
2351
2377
  toReturn['itemId'] = this.itemId;
2352
2378
  }
2353
- if (typeof this.editionId !== 'undefined') {
2354
- toReturn['editionId'] = this.editionId;
2379
+ if (typeof this.editionRequirement !== 'undefined' && this.editionRequirement !== null) {
2380
+ toReturn['editionRequirement'] = 'toApiJson' in this.editionRequirement ? this.editionRequirement.toApiJson() : this.editionRequirement;
2355
2381
  }
2356
2382
  if (typeof this.enabled !== 'undefined') {
2357
2383
  toReturn['enabled'] = this.enabled;
@@ -3031,6 +3057,9 @@ class Discount {
3031
3057
  if (typeof this.end !== 'undefined' && this.end !== null) {
3032
3058
  toReturn['end'] = 'toApiJson' in this.end ? this.end.toApiJson() : this.end;
3033
3059
  }
3060
+ if (typeof this.customerId !== 'undefined') {
3061
+ toReturn['customerId'] = this.customerId;
3062
+ }
3034
3063
  return toReturn;
3035
3064
  }
3036
3065
  }
@@ -4787,5 +4816,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
4787
4816
  * Generated bundle index. Do not edit.
4788
4817
  */
4789
4818
 
4790
- export { Access, ActivatableItemSummary, ActivationInformation, App, AppKey, AppKeyWithQuantity, AppLevelAdminDashboard, AppLevelAdminDashboardEnabled, AppPrice, AppPricePricesForEditionsEntry, AppPrices, AppPricesPricesForContextsEntry, AppPricingApiService, AppRestrictions, AppSettings, AppTag, AppType, ArchiveAuxiliaryDataFieldSchemaRequest, AutoActivation, AuxiliaryDataFieldSchema, AuxiliaryDataFieldType, AuxiliaryDataObjectID, BasicIntegration, BillingConfiguration, Branding, CategoryApiService, ChildApp, Commitment, CreateAuxiliaryDataFieldSchemaRequest, DeleteCategoryRequest, DeliveryMethod, Discount, DiscountType, DropdownOption, Edition, EditionChange, EditionIdentifier, EditionInformation, EditionUpgradeAction, EndOfTrialActions, EndUserMarketingInformation, ExternalIdentifiers, Fee, FeeAmountType, FeeType, FieldDataUpsertOperation, FieldMask, FieldSchemaIdentifier, FrequencyPrice, FrequencyPrices, FrequentlyAskedQuestions, FulfillmentOrderConfig, FulfillmentOrderConfigApiService, FulfillmentOrderConfigProjectionFilter, GetAppSettingsRequest, GetAppSettingsResponse, GetAuxiliaryDataFieldSchemaRequest, GetAuxiliaryDataFieldSchemaResponse, GetCategoriesRequest, GetCategoriesResponse, GetFulfillmentOrderConfigRequest, GetFulfillmentOrderConfigResponse, GetMultiAppDataRequest, GetMultiAppDataResponse, GetMultiAppRequest, GetMultiAppResponse, GetMultiAuxiliaryDataFieldSchemaRequest, GetMultiAuxiliaryDataFieldSchemaResponse, GetMultiPricingRequest, GetMultiPricingResponse, GetPurchaseLinkRequest, GetPurchaseLinkResponse, GetUpgradeDialogContentRequest, GetUpgradeDialogContentResponse, IncludedCommonFormFields, InstancePrice, Item, ItemIdentifier, ItemType, ItemsApiService, KindValues, ListActivatableItemsFilters, ListActivatableItemsRequest, ListActivatableItemsResponse, ListActivatableItemsSortField, ListActivatableItemsSortOptions, ListAppIDsByMultiTagRequest, ListAppIDsByMultiTagResponse, ListAppSettingsRequest, ListAppSettingsResponse, ListAuxiliaryDataFieldSchemaRequest, ListAuxiliaryDataFieldSchemaRequestFilters, ListAuxiliaryDataFieldSchemaResponse, ListAuxiliaryDataRequest, ListAuxiliaryDataResponse, ListByMultiTagRequest, ListByMultiTagResponse, ListDependenciesRequest, ListDependenciesRequiredItem, ListDependenciesRequiredItems, ListDependenciesResponse, ListDependenciesResponseMissingItemsEntry, ListOwnedItemsFilterOptions, ListOwnedItemsFilterOptionsAppType, ListOwnedItemsRequest, ListOwnedItemsResponse, ListPartnerEnabledAppsRequest, ListPartnerEnabledAppsRequestListAppsFilter, ListPartnerEnabledAppsResponse, ListValuesByMultiKindRequest, ListValuesByMultiKindResponse, LmiCategory, MarketplaceApp, MarketplaceAppDataApiService, MarketplaceCategory, OrderForm, OrderFormField, OrderFormFieldOption, OrderFormFilter, PagedRequestOptions, PagedResponseMetadata, PartnerApiService, PermissionLists, Price, PriceDisplayOverride, PricingRule, ProductAuxiliaryFieldDataApiService, ProductAuxiliaryFieldSchemaApiService, ProductSuggestion, ReleaseType, ReplaceAppSettingsRequest, ReplaceAppSettingsResponse, ReplaceUpgradeDialogContentRequest, RequestedApp, RequiredBusinessData, RequiredItem, RequiredParent, RequiredParentDetails, SSOIntegration, ScopedTag, SharedMarketingInformation, SortDirection, SuggestProductRequest, SuggestionReason, Tag, TagAppsRequest, Trial, TrialConfiguration, UnarchiveAuxiliaryDataFieldSchemaRequest, UnitBillingFrequency, UnitPrice, UnitPricePricesForCurrenciesEntry, UntagAppsRequest, UpdateAuxiliaryDataFieldSchemaRequest, UpdateFulfillmentOrderConfigRequest, UpgradeDialogContent, UpsertAuxiliaryDataRequest, UpsertRequest, UpsertResponse };
4819
+ export { Access, ActivatableItemSummary, ActivationInformation, App, AppKey, AppKeyWithQuantity, AppLevelAdminDashboard, AppLevelAdminDashboardEnabled, AppPrice, AppPricePricesForEditionsEntry, AppPrices, AppPricesPricesForContextsEntry, AppPricingApiService, AppRestrictions, AppSettings, AppTag, AppType, ArchiveAuxiliaryDataFieldSchemaRequest, AutoActivation, AuxiliaryDataFieldSchema, AuxiliaryDataFieldType, AuxiliaryDataObjectID, BasicIntegration, BillingConfiguration, Branding, CategoryApiService, ChildApp, Commitment, CreateAuxiliaryDataFieldSchemaRequest, DeleteCategoryRequest, DeliveryMethod, Discount, DiscountType, DropdownOption, Edition, EditionChange, EditionIdentifier, EditionInformation, EditionRequirement, EditionUpgradeAction, EndOfTrialActions, EndUserMarketingInformation, ExternalIdentifiers, Fee, FeeAmountType, FeeType, FieldDataUpsertOperation, FieldMask, FieldSchemaIdentifier, FrequencyPrice, FrequencyPrices, FrequentlyAskedQuestions, FulfillmentOrderConfig, FulfillmentOrderConfigApiService, FulfillmentOrderConfigProjectionFilter, GetAppSettingsRequest, GetAppSettingsResponse, GetAuxiliaryDataFieldSchemaRequest, GetAuxiliaryDataFieldSchemaResponse, GetCategoriesRequest, GetCategoriesResponse, GetFulfillmentOrderConfigRequest, GetFulfillmentOrderConfigResponse, GetMultiAppDataRequest, GetMultiAppDataResponse, GetMultiAppRequest, GetMultiAppResponse, GetMultiAuxiliaryDataFieldSchemaRequest, GetMultiAuxiliaryDataFieldSchemaResponse, GetMultiPricingRequest, GetMultiPricingResponse, GetPurchaseLinkRequest, GetPurchaseLinkResponse, GetUpgradeDialogContentRequest, GetUpgradeDialogContentResponse, IncludedCommonFormFields, InstancePrice, Item, ItemIdentifier, ItemType, ItemsApiService, KindValues, ListActivatableItemsFilters, ListActivatableItemsRequest, ListActivatableItemsResponse, ListActivatableItemsSortField, ListActivatableItemsSortOptions, ListAppIDsByMultiTagRequest, ListAppIDsByMultiTagResponse, ListAppSettingsRequest, ListAppSettingsResponse, ListAuxiliaryDataFieldSchemaRequest, ListAuxiliaryDataFieldSchemaRequestFilters, ListAuxiliaryDataFieldSchemaResponse, ListAuxiliaryDataRequest, ListAuxiliaryDataResponse, ListByMultiTagRequest, ListByMultiTagResponse, ListDependenciesRequest, ListDependenciesRequiredItem, ListDependenciesRequiredItems, ListDependenciesResponse, ListDependenciesResponseMissingItemsEntry, ListOwnedItemsFilterOptions, ListOwnedItemsFilterOptionsAppType, ListOwnedItemsRequest, ListOwnedItemsResponse, ListPartnerEnabledAppsRequest, ListPartnerEnabledAppsRequestListAppsFilter, ListPartnerEnabledAppsResponse, ListValuesByMultiKindRequest, ListValuesByMultiKindResponse, LmiCategory, MarketplaceApp, MarketplaceAppDataApiService, MarketplaceCategory, OrderForm, OrderFormField, OrderFormFieldOption, OrderFormFilter, PagedRequestOptions, PagedResponseMetadata, PartnerApiService, PermissionLists, Price, PriceDisplayOverride, PricingRule, ProductAuxiliaryFieldDataApiService, ProductAuxiliaryFieldSchemaApiService, ProductSuggestion, ReleaseType, ReplaceAppSettingsRequest, ReplaceAppSettingsResponse, ReplaceUpgradeDialogContentRequest, RequestedApp, RequiredBusinessData, RequiredItem, RequiredParent, RequiredParentDetails, SSOIntegration, ScopedTag, SharedMarketingInformation, SortDirection, SuggestProductRequest, SuggestionReason, Tag, TagAppsRequest, Trial, TrialConfiguration, UnarchiveAuxiliaryDataFieldSchemaRequest, UnitBillingFrequency, UnitPrice, UnitPricePricesForCurrenciesEntry, UntagAppsRequest, UpdateAuxiliaryDataFieldSchemaRequest, UpdateFulfillmentOrderConfigRequest, UpgradeDialogContent, UpsertAuxiliaryDataRequest, UpsertRequest, UpsertResponse };
4791
4820
  //# sourceMappingURL=vendasta-marketplace-apps.mjs.map