angular-three 1.0.0-beta.5 → 1.0.0-beta.6

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.
@@ -52,4 +52,4 @@ injectLoader.preLoad = (loaderConstructorFactory, inputs, extensions) => {
52
52
  injectLoader(loaderConstructorFactory, inputs, extensions).pipe(take(1)).subscribe();
53
53
  };
54
54
  export const injectNgtLoader = injectLoader;
55
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLXRocmVlL3NyYy9saWIvbG9hZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCxZQUFZLEVBRVosRUFBRSxFQUNGLEdBQUcsRUFDSCxHQUFHLEVBQ0gsSUFBSSxFQUNKLEtBQUssRUFDTCxLQUFLLEVBQ0wsYUFBYSxFQUNiLFVBQVUsRUFDVixTQUFTLEVBQ1QsUUFBUSxFQUNSLElBQUksR0FDUCxNQUFNLE1BQU0sQ0FBQztBQUdkLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxjQUFjLENBQUM7QUE0Qi9DLE1BQU0sTUFBTSxHQUFHLElBQUksR0FBRyxFQUEyQixDQUFDO0FBRWxELFNBQVMsWUFBWSxDQUNqQix3QkFBZ0csRUFDaEcsS0FBOEIsRUFDOUIsVUFBZ0MsRUFDaEMsVUFBMkM7SUFFM0MsTUFBTSxLQUFLLEdBQUcsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUV0RCxPQUFPLEtBQUssQ0FBQyxJQUFJLENBQ2IsR0FBRyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7UUFDWCxNQUFNLGlCQUFpQixHQUFHLHdCQUF3QixDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzNELE1BQU0sTUFBTSxHQUFHLElBQUksaUJBQWlCLEVBQUUsQ0FBQztRQUN2QyxJQUFJLFVBQVUsRUFBRTtZQUNaLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQztTQUN0QjtRQUNELE1BQU0sSUFBSSxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsT0FBTyxNQUFNLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFN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ZSxcbiAgICBPYnNlcnZhYmxlLFxuICAgIG9mLFxuICAgIG1hcCxcbiAgICB0YXAsXG4gICAgZnJvbSxcbiAgICByZXRyeSxcbiAgICBzaGFyZSxcbiAgICBSZXBsYXlTdWJqZWN0LFxuICAgIGNhdGNoRXJyb3IsXG4gICAgc3dpdGNoTWFwLFxuICAgIGZvcmtKb2luLFxuICAgIHRha2UsXG59IGZyb20gJ3J4anMnO1xuaW1wb3J0IHR5cGUgeyBHTFRGIH0gZnJvbSAndGhyZWUtc3RkbGliJztcbmltcG9ydCB0eXBlIHsgTmd0QnJhbmNoaW5nUmV0dXJuLCBOZ3RMb2FkZXJFeHRlbnNpb25zLCBOZ3RMb2FkZXJSZXN1bHQsIE5ndE9iamVjdE1hcCB9IGZyb20gJy4vdHlwZXMnO1xuaW1wb3J0IHsgbWFrZU9iamVjdEdyYXBoIH0gZnJvbSAnLi91dGlscy9tYWtlJztcblxuaW50ZXJmYWNlIE5ndExvYWRlciB7XG4gICAgPFRSZXR1cm5UeXBlLCBUVXJsIGV4dGVuZHMgc3RyaW5nIHwgc3RyaW5nW10gfCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PihcbiAgICAgICAgbG9hZGVyQ29uc3RydWN0b3JGYWN0b3J5OiAoaW5wdXRzOiBUVXJsKSA9PiBuZXcgKC4uLmFyZ3M6IGFueVtdKSA9PiBOZ3RMb2FkZXJSZXN1bHQ8VFJldHVyblR5cGU+LFxuICAgICAgICBpbnB1dDogVFVybCB8IE9ic2VydmFibGU8VFVybD4sXG4gICAgICAgIGV4dGVuc2lvbnM/OiBOZ3RMb2FkZXJFeHRlbnNpb25zLFxuICAgICAgICBvblByb2dyZXNzPzogKGV2ZW50OiBQcm9ncmVzc0V2ZW50KSA9PiB2b2lkXG4gICAgKTogT2JzZXJ2YWJsZTxcbiAgICAgICAgVFVybCBleHRlbmRzIHN0cmluZ1tdXG4gICAgICAgICAgICA/IEFycmF5PE5ndEJyYW5jaGluZ1JldHVybjxUUmV0dXJuVHlwZSwgR0xURiwgR0xURiAmIE5ndE9iamVjdE1hcD4+XG4gICAgICAgICAgICA6IFRVcmwgZXh0ZW5kcyBvYmplY3RcbiAgICAgICAgICAgID8geyBba2V5IGluIGtleW9mIFRVcmxdOiBOZ3RCcmFuY2hpbmdSZXR1cm48VFJldHVyblR5cGUsIEdMVEYsIEdMVEYgJiBOZ3RPYmplY3RNYXA+IH1cbiAgICAgICAgICAgIDogTmd0QnJhbmNoaW5nUmV0dXJuPFRSZXR1cm5UeXBlLCBHTFRGLCBHTFRGICYgTmd0T2JqZWN0TWFwPlxuICAgID47XG4gICAgZGVzdHJveTogKCkgPT4gdm9pZDtcbiAgICBwcmVMb2FkOiA8VFJldHVyblR5cGUsIFRVcmwgZXh0ZW5kcyBzdHJpbmcgfCBzdHJpbmdbXSB8IFJlY29yZDxzdHJpbmcsIHN0cmluZz4+KFxuICAgICAgICBsb2FkZXJDb25zdHJ1Y3RvckZhY3Rvcnk6IChpbnB1dHM6IFRVcmwpID0+IG5ldyAoLi4uYXJnczogYW55W10pID0+IE5ndExvYWRlclJlc3VsdDxUUmV0dXJuVHlwZT4sXG4gICAgICAgIGlucHV0czogVFVybCB8IE9ic2VydmFibGU8VFVybD4sXG4gICAgICAgIGV4dGVuc2lvbnM/OiBOZ3RMb2FkZXJFeHRlbnNpb25zXG4gICAgKSA9PiB2b2lkO1xufVxuXG5leHBvcnQgdHlwZSBOZ3RMb2FkZXJSZXN1bHRzPFxuICAgIFRJbnB1dCBleHRlbmRzIHN0cmluZyB8IHN0cmluZ1tdIHwgUmVjb3JkPHN0cmluZywgc3RyaW5nPixcbiAgICBUUmV0dXJuXG4+ID0gVElucHV0IGV4dGVuZHMgc3RyaW5nW10gPyBUUmV0dXJuW10gOiBUSW5wdXQgZXh0ZW5kcyBvYmplY3QgPyB7IFtrZXkgaW4ga2V5b2YgVElucHV0XTogVFJldHVybiB9IDogVFJldHVybjtcblxuY29uc3QgY2FjaGVkID0gbmV3IE1hcDxzdHJpbmcsIE9ic2VydmFibGU8YW55Pj4oKTtcblxuZnVuY3Rpb24gaW5qZWN0TG9hZGVyPFRSZXR1cm5UeXBlLCBUVXJsIGV4dGVuZHMgc3RyaW5nIHwgc3RyaW5nW10gfCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PihcbiAgICBsb2FkZXJDb25zdHJ1Y3RvckZhY3Rvcnk6IChpbnB1dHM6IFRVcmwpID0+IG5ldyAoLi4uYXJnczogYW55W10pID0+IE5ndExvYWRlclJlc3VsdDxUUmV0dXJuVHlwZT4sXG4gICAgaW5wdXQ6IFRVcmwgfCBPYnNlcnZhYmxlPFRVcmw+LFxuICAgIGV4dGVuc2lvbnM/OiBOZ3RMb2FkZXJFeHRlbnNpb25zLFxuICAgIG9uUHJvZ3Jlc3M/OiAoZXZlbnQ6IFByb2dyZXNzRXZlbnQpID0+IHZvaWRcbik6IE9ic2VydmFibGU8Tmd0TG9hZGVyUmVzdWx0czxUVXJsLCBOZ3RCcmFuY2hpbmdSZXR1cm48VFJldHVyblR5cGUsIEdMVEYsIEdMVEYgJiBOZ3RPYmplY3RNYXA+Pj4ge1xuICAgIGNvbnN0IHVybHMkID0gaXNPYnNlcnZhYmxlKGlucHV0KSA/IGlucHV0IDogb2YoaW5wdXQpO1xuXG4gICAgcmV0dXJuIHVybHMkLnBpcGUoXG4gICAgICAgIG1hcCgoaW5wdXRzKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBsb2FkZXJDb25zdHJ1Y3RvciA9IGxvYWRlckNvbnN0cnVjdG9yRmFjdG9yeShpbnB1dHMpO1xuICAgICAgICAgICAgY29uc3QgbG9hZGVyID0gbmV3IGxvYWRlckNvbnN0cnVjdG9yKCk7XG4gICAgICAgICAgICBpZiAoZXh0ZW5zaW9ucykge1xuICAgICAgICAgICAgICAgIGV4dGVuc2lvbnMobG9hZGVyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IHVybHMgPSBBcnJheS5pc0FycmF5KGlucHV0cykgPyBpbnB1dHMgOiB0eXBlb2YgaW5wdXRzID09PSAnc3RyaW5nJyA/IFtpbnB1dHNdIDogT2JqZWN0LnZhbHVlcyhpbnB1dHMpO1xuICAgICAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgICAgICB1cmxzLm1hcCgodXJsKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmICghY2FjaGVkLmhhcyh1cmwpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjYWNoZWQuc2V0KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVybCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmcm9tKGxvYWRlci5sb2FkQXN5bmModXJsLCBvblByb2dyZXNzKSkucGlwZShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFwKChkYXRhKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoZGF0YS5zY2VuZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE9iamVjdC5hc3NpZ24oZGF0YSwgbWFrZU9iamVjdEdyYXBoKGRhdGEuc2NlbmUpKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHJ5KDIpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXRjaEVycm9yKChlcnIpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoYFtOR1RdIEVycm9yIGxvYWRpbmcgJHt1cmx9OiAke2Vyci5tZXNzYWdlfWApO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG9mKFtdKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNoYXJlKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbm5lY3RvcjogKCkgPT4gbmV3IFJlcGxheVN1YmplY3QoMSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNldE9uQ29tcGxldGU6IHRydWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNldE9uRXJyb3I6IHRydWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNldE9uUmVmQ291bnRaZXJvOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGNhY2hlZC5nZXQodXJsKTtcbiAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICBpbnB1dHMsXG4gICAgICAgICAgICBdIGFzIFtBcnJheTxPYnNlcnZhYmxlPGFueT4+LCBUVXJsIHwgVFVybFtdXTtcbiAgICAgICAgfSksXG4gICAgICAgIHN3aXRjaE1hcCgoW29ic2VydmFibGVzJCwgaW5wdXRzXSkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIGZvcmtKb2luKG9ic2VydmFibGVzJCkucGlwZShcbiAgICAgICAgICAgICAgICBtYXAoKHJlc3VsdHMpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoaW5wdXRzKSkgcmV0dXJuIHJlc3VsdHM7XG4gICAgICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgaW5wdXRzID09PSAnc3RyaW5nJykgcmV0dXJuIHJlc3VsdHNbMF07XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGtleXMgPSBPYmplY3Qua2V5cyhpbnB1dHMpO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4ga2V5cy5yZWR1Y2UoKHJlc3VsdCwga2V5KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXN1bHRba2V5IGFzIGtleW9mIHR5cGVvZiByZXN1bHRdID0gcmVzdWx0c1trZXlzLmluZGV4T2Yoa2V5KV07XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgICAgICAgICAgICAgICB9LCB7fSBhcyB7IFtrZXkgaW4ga2V5b2YgVFVybF06IE5ndEJyYW5jaGluZ1JldHVybjxUUmV0dXJuVHlwZSwgR0xURiwgR0xURiAmIE5ndE9iamVjdE1hcD4gfSk7XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICk7XG4gICAgICAgIH0pXG4gICAgKTtcbn1cblxuKGluamVjdExvYWRlciBhcyBOZ3RMb2FkZXIpLmRlc3Ryb3kgPSAoKSA9PiB7XG4gICAgY2FjaGVkLmNsZWFyKCk7XG59O1xuXG4oaW5qZWN0TG9hZGVyIGFzIE5ndExvYWRlcikucHJlTG9hZCA9IChsb2FkZXJDb25zdHJ1Y3RvckZhY3RvcnksIGlucHV0cywgZXh0ZW5zaW9ucykgPT4ge1xuICAgIGluamVjdExvYWRlcihsb2FkZXJDb25zdHJ1Y3RvckZhY3RvcnksIGlucHV0cywgZXh0ZW5zaW9ucykucGlwZSh0YWtlKDEpKS5zdWJzY3JpYmUoKTtcbn07XG5cbmV4cG9ydCBjb25zdCBpbmplY3ROZ3RMb2FkZXIgPSBpbmplY3RMb2FkZXIgYXMgTmd0TG9hZGVyO1xuIl19
55
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLXRocmVlL3NyYy9saWIvbG9hZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCxZQUFZLEVBRVosRUFBRSxFQUNGLEdBQUcsRUFDSCxHQUFHLEVBQ0gsSUFBSSxFQUNKLEtBQUssRUFDTCxLQUFLLEVBQ0wsYUFBYSxFQUNiLFVBQVUsRUFDVixTQUFTLEVBQ1QsUUFBUSxFQUNSLElBQUksR0FDUCxNQUFNLE1BQU0sQ0FBQztBQUdkLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxjQUFjLENBQUM7QUE0Qi9DLE1BQU0sTUFBTSxHQUFHLElBQUksR0FBRyxFQUEyQixDQUFDO0FBRWxELFNBQVMsWUFBWSxDQUNqQix3QkFBZ0csRUFDaEcsS0FBOEIsRUFDOUIsVUFBZ0MsRUFDaEMsVUFBMkM7SUFFM0MsTUFBTSxLQUFLLEdBQUcsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUV0RCxPQUFPLEtBQUssQ0FBQyxJQUFJLENBQ2IsR0FBRyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7UUFDWCxNQUFNLGlCQUFpQixHQUFHLHdCQUF3QixDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzNELE1BQU0sTUFBTSxHQUFHLElBQUksaUJBQWlCLEVBQUUsQ0FBQztRQUN2QyxJQUFJLFVBQVUsRUFBRTtZQUNaLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQztTQUN0QjtRQUNELE1BQU0sSUFBSSxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsT0FBTyxNQUFNLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFN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ZSxcbiAgICBPYnNlcnZhYmxlLFxuICAgIG9mLFxuICAgIG1hcCxcbiAgICB0YXAsXG4gICAgZnJvbSxcbiAgICByZXRyeSxcbiAgICBzaGFyZSxcbiAgICBSZXBsYXlTdWJqZWN0LFxuICAgIGNhdGNoRXJyb3IsXG4gICAgc3dpdGNoTWFwLFxuICAgIGZvcmtKb2luLFxuICAgIHRha2UsXG59IGZyb20gJ3J4anMnO1xuaW1wb3J0IHR5cGUgeyBHTFRGIH0gZnJvbSAndGhyZWUvZXhhbXBsZXMvanNtL2xvYWRlcnMvR0xURkxvYWRlcic7XG5pbXBvcnQgdHlwZSB7IE5ndEJyYW5jaGluZ1JldHVybiwgTmd0TG9hZGVyRXh0ZW5zaW9ucywgTmd0TG9hZGVyUmVzdWx0LCBOZ3RPYmplY3RNYXAgfSBmcm9tICcuL3R5cGVzJztcbmltcG9ydCB7IG1ha2VPYmplY3RHcmFwaCB9IGZyb20gJy4vdXRpbHMvbWFrZSc7XG5cbmludGVyZmFjZSBOZ3RMb2FkZXIge1xuICAgIDxUUmV0dXJuVHlwZSwgVFVybCBleHRlbmRzIHN0cmluZyB8IHN0cmluZ1tdIHwgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4oXG4gICAgICAgIGxvYWRlckNvbnN0cnVjdG9yRmFjdG9yeTogKGlucHV0czogVFVybCkgPT4gbmV3ICguLi5hcmdzOiBhbnlbXSkgPT4gTmd0TG9hZGVyUmVzdWx0PFRSZXR1cm5UeXBlPixcbiAgICAgICAgaW5wdXQ6IFRVcmwgfCBPYnNlcnZhYmxlPFRVcmw+LFxuICAgICAgICBleHRlbnNpb25zPzogTmd0TG9hZGVyRXh0ZW5zaW9ucyxcbiAgICAgICAgb25Qcm9ncmVzcz86IChldmVudDogUHJvZ3Jlc3NFdmVudCkgPT4gdm9pZFxuICAgICk6IE9ic2VydmFibGU8XG4gICAgICAgIFRVcmwgZXh0ZW5kcyBzdHJpbmdbXVxuICAgICAgICAgICAgPyBBcnJheTxOZ3RCcmFuY2hpbmdSZXR1cm48VFJldHVyblR5cGUsIEdMVEYsIEdMVEYgJiBOZ3RPYmplY3RNYXA+PlxuICAgICAgICAgICAgOiBUVXJsIGV4dGVuZHMgb2JqZWN0XG4gICAgICAgICAgICA/IHsgW2tleSBpbiBrZXlvZiBUVXJsXTogTmd0QnJhbmNoaW5nUmV0dXJuPFRSZXR1cm5UeXBlLCBHTFRGLCBHTFRGICYgTmd0T2JqZWN0TWFwPiB9XG4gICAgICAgICAgICA6IE5ndEJyYW5jaGluZ1JldHVybjxUUmV0dXJuVHlwZSwgR0xURiwgR0xURiAmIE5ndE9iamVjdE1hcD5cbiAgICA+O1xuICAgIGRlc3Ryb3k6ICgpID0+IHZvaWQ7XG4gICAgcHJlTG9hZDogPFRSZXR1cm5UeXBlLCBUVXJsIGV4dGVuZHMgc3RyaW5nIHwgc3RyaW5nW10gfCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PihcbiAgICAgICAgbG9hZGVyQ29uc3RydWN0b3JGYWN0b3J5OiAoaW5wdXRzOiBUVXJsKSA9PiBuZXcgKC4uLmFyZ3M6IGFueVtdKSA9PiBOZ3RMb2FkZXJSZXN1bHQ8VFJldHVyblR5cGU+LFxuICAgICAgICBpbnB1dHM6IFRVcmwgfCBPYnNlcnZhYmxlPFRVcmw+LFxuICAgICAgICBleHRlbnNpb25zPzogTmd0TG9hZGVyRXh0ZW5zaW9uc1xuICAgICkgPT4gdm9pZDtcbn1cblxuZXhwb3J0IHR5cGUgTmd0TG9hZGVyUmVzdWx0czxcbiAgICBUSW5wdXQgZXh0ZW5kcyBzdHJpbmcgfCBzdHJpbmdbXSB8IFJlY29yZDxzdHJpbmcsIHN0cmluZz4sXG4gICAgVFJldHVyblxuPiA9IFRJbnB1dCBleHRlbmRzIHN0cmluZ1tdID8gVFJldHVybltdIDogVElucHV0IGV4dGVuZHMgb2JqZWN0ID8geyBba2V5IGluIGtleW9mIFRJbnB1dF06IFRSZXR1cm4gfSA6IFRSZXR1cm47XG5cbmNvbnN0IGNhY2hlZCA9IG5ldyBNYXA8c3RyaW5nLCBPYnNlcnZhYmxlPGFueT4+KCk7XG5cbmZ1bmN0aW9uIGluamVjdExvYWRlcjxUUmV0dXJuVHlwZSwgVFVybCBleHRlbmRzIHN0cmluZyB8IHN0cmluZ1tdIHwgUmVjb3JkPHN0cmluZywgc3RyaW5nPj4oXG4gICAgbG9hZGVyQ29uc3RydWN0b3JGYWN0b3J5OiAoaW5wdXRzOiBUVXJsKSA9PiBuZXcgKC4uLmFyZ3M6IGFueVtdKSA9PiBOZ3RMb2FkZXJSZXN1bHQ8VFJldHVyblR5cGU+LFxuICAgIGlucHV0OiBUVXJsIHwgT2JzZXJ2YWJsZTxUVXJsPixcbiAgICBleHRlbnNpb25zPzogTmd0TG9hZGVyRXh0ZW5zaW9ucyxcbiAgICBvblByb2dyZXNzPzogKGV2ZW50OiBQcm9ncmVzc0V2ZW50KSA9PiB2b2lkXG4pOiBPYnNlcnZhYmxlPE5ndExvYWRlclJlc3VsdHM8VFVybCwgTmd0QnJhbmNoaW5nUmV0dXJuPFRSZXR1cm5UeXBlLCBHTFRGLCBHTFRGICYgTmd0T2JqZWN0TWFwPj4+IHtcbiAgICBjb25zdCB1cmxzJCA9IGlzT2JzZXJ2YWJsZShpbnB1dCkgPyBpbnB1dCA6IG9mKGlucHV0KTtcblxuICAgIHJldHVybiB1cmxzJC5waXBlKFxuICAgICAgICBtYXAoKGlucHV0cykgPT4ge1xuICAgICAgICAgICAgY29uc3QgbG9hZGVyQ29uc3RydWN0b3IgPSBsb2FkZXJDb25zdHJ1Y3RvckZhY3RvcnkoaW5wdXRzKTtcbiAgICAgICAgICAgIGNvbnN0IGxvYWRlciA9IG5ldyBsb2FkZXJDb25zdHJ1Y3RvcigpO1xuICAgICAgICAgICAgaWYgKGV4dGVuc2lvbnMpIHtcbiAgICAgICAgICAgICAgICBleHRlbnNpb25zKGxvYWRlcik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb25zdCB1cmxzID0gQXJyYXkuaXNBcnJheShpbnB1dHMpID8gaW5wdXRzIDogdHlwZW9mIGlucHV0cyA9PT0gJ3N0cmluZycgPyBbaW5wdXRzXSA6IE9iamVjdC52YWx1ZXMoaW5wdXRzKTtcbiAgICAgICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICAgICAgdXJscy5tYXAoKHVybCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAoIWNhY2hlZC5oYXModXJsKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgY2FjaGVkLnNldChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cmwsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZnJvbShsb2FkZXIubG9hZEFzeW5jKHVybCwgb25Qcm9ncmVzcykpLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRhcCgoZGF0YSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGRhdGEuc2NlbmUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBPYmplY3QuYXNzaWduKGRhdGEsIG1ha2VPYmplY3RHcmFwaChkYXRhLnNjZW5lKSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXRyeSgyKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2F0Y2hFcnJvcigoZXJyKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKGBbTkdUXSBFcnJvciBsb2FkaW5nICR7dXJsfTogJHtlcnIubWVzc2FnZX1gKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBvZihbXSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaGFyZSh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25uZWN0b3I6ICgpID0+IG5ldyBSZXBsYXlTdWJqZWN0KDEpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzZXRPbkNvbXBsZXRlOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzZXRPbkVycm9yOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzZXRPblJlZkNvdW50WmVybzogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBjYWNoZWQuZ2V0KHVybCk7XG4gICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgaW5wdXRzLFxuICAgICAgICAgICAgXSBhcyBbQXJyYXk8T2JzZXJ2YWJsZTxhbnk+PiwgVFVybCB8IFRVcmxbXV07XG4gICAgICAgIH0pLFxuICAgICAgICBzd2l0Y2hNYXAoKFtvYnNlcnZhYmxlcyQsIGlucHV0c10pID0+IHtcbiAgICAgICAgICAgIHJldHVybiBmb3JrSm9pbihvYnNlcnZhYmxlcyQpLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKChyZXN1bHRzKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KGlucHV0cykpIHJldHVybiByZXN1bHRzO1xuICAgICAgICAgICAgICAgICAgICBpZiAodHlwZW9mIGlucHV0cyA9PT0gJ3N0cmluZycpIHJldHVybiByZXN1bHRzWzBdO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBrZXlzID0gT2JqZWN0LmtleXMoaW5wdXRzKTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGtleXMucmVkdWNlKChyZXN1bHQsIGtleSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmVzdWx0W2tleSBhcyBrZXlvZiB0eXBlb2YgcmVzdWx0XSA9IHJlc3VsdHNba2V5cy5pbmRleE9mKGtleSldO1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICAgICAgICAgICAgICAgICAgfSwge30gYXMgeyBba2V5IGluIGtleW9mIFRVcmxdOiBOZ3RCcmFuY2hpbmdSZXR1cm48VFJldHVyblR5cGUsIEdMVEYsIEdMVEYgJiBOZ3RPYmplY3RNYXA+IH0pO1xuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApO1xuICAgICAgICB9KVxuICAgICk7XG59XG5cbihpbmplY3RMb2FkZXIgYXMgTmd0TG9hZGVyKS5kZXN0cm95ID0gKCkgPT4ge1xuICAgIGNhY2hlZC5jbGVhcigpO1xufTtcblxuKGluamVjdExvYWRlciBhcyBOZ3RMb2FkZXIpLnByZUxvYWQgPSAobG9hZGVyQ29uc3RydWN0b3JGYWN0b3J5LCBpbnB1dHMsIGV4dGVuc2lvbnMpID0+IHtcbiAgICBpbmplY3RMb2FkZXIobG9hZGVyQ29uc3RydWN0b3JGYWN0b3J5LCBpbnB1dHMsIGV4dGVuc2lvbnMpLnBpcGUodGFrZSgxKSkuc3Vic2NyaWJlKCk7XG59O1xuXG5leHBvcnQgY29uc3QgaW5qZWN0Tmd0TG9hZGVyID0gaW5qZWN0TG9hZGVyIGFzIE5ndExvYWRlcjtcbiJdfQ==