cnpmcore 3.20.3 → 3.22.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.
- package/dist/app/common/adapter/binary/AbstractBinary.d.ts +1 -1
- package/dist/app/common/adapter/binary/AbstractBinary.js +2 -2
- package/dist/app/common/adapter/binary/ApiBinary.d.ts +1 -1
- package/dist/app/common/adapter/binary/ApiBinary.js +2 -2
- package/dist/app/common/adapter/binary/BucketBinary.d.ts +1 -1
- package/dist/app/common/adapter/binary/BucketBinary.js +2 -2
- package/dist/app/common/adapter/binary/ChromeForTestingBinary.d.ts +1 -1
- package/dist/app/common/adapter/binary/ChromeForTestingBinary.js +2 -2
- package/dist/app/common/adapter/binary/CypressBinary.d.ts +1 -1
- package/dist/app/common/adapter/binary/CypressBinary.js +2 -2
- package/dist/app/common/adapter/binary/GithubBinary.d.ts +1 -1
- package/dist/app/common/adapter/binary/GithubBinary.js +2 -2
- package/dist/app/common/adapter/binary/ImageminBinary.d.ts +1 -1
- package/dist/app/common/adapter/binary/ImageminBinary.js +2 -2
- package/dist/app/common/adapter/binary/NodeBinary.d.ts +1 -1
- package/dist/app/common/adapter/binary/NodeBinary.js +2 -2
- package/dist/app/common/adapter/binary/NodePreGypBinary.d.ts +1 -1
- package/dist/app/common/adapter/binary/NodePreGypBinary.js +2 -2
- package/dist/app/common/adapter/binary/PlaywrightBinary.d.ts +1 -1
- package/dist/app/common/adapter/binary/PlaywrightBinary.js +2 -2
- package/dist/app/common/adapter/binary/PrismaBinary.d.ts +8 -0
- package/dist/app/common/adapter/binary/PrismaBinary.js +149 -0
- package/dist/app/common/adapter/binary/PuppeteerBinary.d.ts +1 -1
- package/dist/app/common/adapter/binary/PuppeteerBinary.js +2 -2
- package/dist/app/common/adapter/binary/SqlcipherBinary.d.ts +1 -1
- package/dist/app/common/adapter/binary/SqlcipherBinary.js +2 -2
- package/dist/app/common/enum/Binary.d.ts +1 -0
- package/dist/app/common/enum/Binary.js +2 -1
- package/dist/app/common/typing.d.ts +6 -0
- package/dist/app/core/service/BinarySyncerService.js +2 -2
- package/dist/app/core/service/HookManageService.d.ts +1 -1
- package/dist/app/core/service/PackageManagerService.d.ts +1 -1
- package/dist/app/core/service/PackageManagerService.js +10 -6
- package/dist/app/port/config.d.ts +1 -0
- package/dist/app/port/config.js +6 -0
- package/dist/app/port/controller/AbstractController.d.ts +3 -3
- package/dist/app/port/controller/HomeController.d.ts +1 -1
- package/dist/config/binaries.d.ts +3 -4
- package/dist/config/binaries.js +4 -20
- package/dist/config/config.default.d.ts +147 -0
- package/dist/config/config.default.js +154 -83
- package/package.json +1 -1
package/dist/config/binaries.js
CHANGED
|
@@ -196,26 +196,10 @@ const binaries = {
|
|
|
196
196
|
},
|
|
197
197
|
prisma: {
|
|
198
198
|
category: 'prisma',
|
|
199
|
-
description: 'Next-generation
|
|
200
|
-
type: Binary_1.BinaryType.
|
|
199
|
+
description: 'Next-generation Node.js and TypeScript ORM https://www.prisma.io/',
|
|
200
|
+
type: Binary_1.BinaryType.Prisma,
|
|
201
201
|
repo: 'prisma/prisma',
|
|
202
|
-
distUrl: 'https://
|
|
203
|
-
ignoreDirs: [
|
|
204
|
-
// https://prisma-builds.s3-eu-west-1.amazonaws.com/?delimiter=/&prefix=
|
|
205
|
-
// https://github.com/cnpm/cnpmcore/issues/209
|
|
206
|
-
// need all_commits dir on 3.12.0
|
|
207
|
-
// '/all_commits/',
|
|
208
|
-
'/build_testruns/',
|
|
209
|
-
'/bump_engineer/',
|
|
210
|
-
'/m1_builds/',
|
|
211
|
-
'/master/',
|
|
212
|
-
'/ci/',
|
|
213
|
-
'/unreverse/',
|
|
214
|
-
'/signature_test_run/',
|
|
215
|
-
'/sql-server-char-collation-fix/',
|
|
216
|
-
'/test-ldd-output-on-release/',
|
|
217
|
-
'/windows-mysql-ci/',
|
|
218
|
-
],
|
|
202
|
+
distUrl: 'https://list-binaries.prisma-orm.workers.dev/',
|
|
219
203
|
},
|
|
220
204
|
// ImageminBinary
|
|
221
205
|
'jpegtran-bin': {
|
|
@@ -868,4 +852,4 @@ const BinaryConfigMap = {
|
|
|
868
852
|
...binaries,
|
|
869
853
|
};
|
|
870
854
|
exports.default = BinaryConfigMap;
|
|
871
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmluYXJpZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9jb25maWcvYmluYXJpZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxzREFBdUQ7QUEyQnZELE1BQU0sUUFBUSxHQUFHO0lBQ2YsYUFBYTtJQUNiLElBQUksRUFBRTtRQUNKLFFBQVEsRUFBRSxNQUFNO1FBQ2hCLFdBQVcsRUFBRSxzS0FBc0s7UUFDbkwsSUFBSSxFQUFFLG1CQUFVLENBQUMsSUFBSTtRQUNyQixJQUFJLEVBQUUsWUFBWTtRQUNsQixPQUFPLEVBQUUscUJBQXFCO0tBQy9CO0lBQ0QsYUFBYTtJQUNiLElBQUksRUFBRTtRQUNKLFFBQVEsRUFBRSxNQUFNO1FBQ2hCLFdBQVcsRUFBRSwyRUFBMkU7UUFDeEYsSUFBSSxFQUFFLG1CQUFVLENBQUMsSUFBSTtRQUNyQixJQUFJLEVBQUUsYUFBYTtRQUNuQixPQUFPLEVBQUUseUJBQXlCO0tBQ25DO0lBQ0QsU0FBUyxFQUFFO1FBQ1QsUUFBUSxFQUFFLFNBQVM7UUFDbkIsV0FBVyxFQUFFLDJCQUEyQjtRQUN4QyxJQUFJLEVBQUUsbUJBQVUsQ0FBQyxJQUFJO1FBQ3JCLElBQUksRUFBRSxhQUFhO1FBQ25CLE9BQU8sRUFBRSxnQ0FBZ0M7S0FDMUM7SUFDRCxjQUFjLEVBQUU7UUFDZCxRQUFRLEVBQUUsY0FBYztRQUN4QixXQUFXLEVBQUUsdUJBQXVCO1FBQ3BDLElBQUksRUFBRSxtQkFBVSxDQUFDLElBQUk7UUFDckIsSUFBSSxFQUFFLGFBQWE7UUFDbkIsT0FBTyxFQUFFLHFDQUFxQztLQUMvQztJQUNELHdCQUF3QixFQUFFO1FBQ3hCLFFBQVEsRUFBRSx3QkFBd0I7UUFDbEMsV0FBVyxFQUFFLHlFQUF5RTtRQUN0RixJQUFJLEVBQUUsbUJBQVUsQ0FBQyxJQUFJO1FBQ3JCLElBQUksRUFBRSwwQkFBMEI7UUFDaEMsT0FBTyxFQUFFLHVEQUF1RDtLQUNqRTtJQUNELE9BQU8sRUFBRTtRQUNQLFFBQVEsRUFBRSxTQUFTO1FBQ25CLFdBQVcsRUFBRSxtSkFBbUo7UUFDaEssSUFBSSxFQUFFLG1CQUFVLENBQUMsSUFBSTtRQUNyQixJQUFJLEVBQUUsRUFBRTtRQUNSLE9BQU8sRUFBRSw0Q0FBNEM7S0FDdEQ7SUFDRCxNQUFNLEVBQUU7UUFDTixRQUFRLEVBQUUsUUFBUTtRQUNsQixXQUFXLEVBQUUseURBQXlEO1FBQ3RFLElBQUksRUFBRSxtQkFBVSxDQUFDLElBQUk7UUFDckIsSUFBSSxFQUFFLGdCQUFnQjtRQUN0QixPQUFPLEVBQUUsbUNBQW1DO1FBQzVDLFdBQVcsRUFBRTtZQUNYLHdCQUF3QjtTQUN6QjtRQUNELE9BQU8sRUFBRTtZQUNQLGdGQUFnRjtZQUNoRixzQkFBc0IsRUFBRSxDQUFFLEdBQUcsQ0FBcUI7U0FDbkQ7S0FDRjtJQUNELGdCQUFnQjtJQUNoQixPQUFPLEVBQUU7UUFDUCxRQUFRLEVBQUUsU0FBUztRQUNuQixXQUFXLEVBQUUsc0VBQXNFO1FBQ25GLElBQUksRUFBRSxtQkFBVSxDQUFDLE9BQU87UUFDeEIsSUFBSSxFQUFFLG9CQUFvQjtRQUMxQixPQUFPLEVBQUUseUJBQXlCO0tBQ25DO0lBQ0Qsa0JBQWtCO0lBQ2xCLHdCQUF3QixFQUFFO1FBQ3hCLFFBQVEsRUFBRSx3QkFBd0I7UUFDbEMsV0FBVyxFQUFFLDZCQUE2QjtRQUMxQyxJQUFJLEVBQUUsbUJBQVUsQ0FBQyxTQUFTO1FBQzFCLElBQUksRUFBRSw0QkFBNEI7UUFDbEMsT0FBTyxFQUFFLGtEQUFrRDtLQUM1RDtJQUNELG1CQUFtQjtJQUNuQiw0QkFBNEIsRUFBRTtRQUM1QixRQUFRLEVBQUUsNEJBQTRCO1FBQ3RDLFdBQVcsRUFBRSwrQ0FBK0M7UUFDNUQsSUFBSSxFQUFFLG1CQUFVLENBQUMsU0FBUztRQUMxQixJQUFJLEVBQUUscUJBQXFCO1FBQzNCLE9BQU8sRUFBRSxnRkFBZ0Y7S0FDMUY7SUFDRCxlQUFlO0lBQ2Ysb0JBQW9CLEVBQUU7UUFDcEIsUUFBUSxFQUFFLG9CQUFvQjtRQUM5QixXQUFXLEVBQUUsa0NBQWtDO1FBQy9DLElBQUksRUFBRSxtQkFBVSxDQUFDLGdCQUFnQjtRQUNqQyxJQUFJLEVBQUUscUJBQXFCO1FBQzNCLE9BQU8sRUFBRSw4REFBOEQ7S0FDeEU7SUFDRCxtQkFBbUI7SUFDbkIsWUFBWSxFQUFFO1FBQ1osUUFBUSxFQUFFLFlBQVk7UUFDdEIsV0FBVyxFQUFFLDJDQUEyQztRQUN4RCxJQUFJLEVBQUUsbUJBQVUsQ0FBQyxVQUFVO1FBQzNCLElBQUksRUFBRSxvRUFBb0U7UUFDMUUsT0FBTyxFQUFFLDJDQUEyQztLQUNyRDtJQUNELElBQUksRUFBRTtRQUNKLFFBQVEsRUFBRSxNQUFNO1FBQ2hCLFdBQVcsRUFBRSx1QkFBdUI7UUFDcEMsSUFBSSxFQUFFLG1CQUFVLENBQUMsVUFBVTtRQUMzQixJQUFJLEVBQUUsZ0JBQWdCO1FBQ3RCLE9BQU8sRUFBRSwyQ0FBMkM7S0FDckQ7SUFDRCxhQUFhLEVBQUU7UUFDYixRQUFRLEVBQUUsYUFBYTtRQUN2QixXQUFXLEVBQUUsK0JBQStCO1FBQzVDLElBQUksRUFBRSxtQkFBVSxDQUFDLFVBQVU7UUFDM0IsSUFBSSxFQUFFLHdCQUF3QjtRQUM5QixPQUFPLEVBQUUsZ0RBQWdEO1FBQ3pELE9BQU8sRUFBRTtZQUNQLG9CQUFvQixFQUFFLElBQUk7U0FDM0I7S0FDRjtJQUNELElBQUksRUFBRTtRQUNKLFFBQVEsRUFBRSxNQUFNO1FBQ2hCLFdBQVcsRUFBRSw2RUFBNkU7UUFDMUYsSUFBSSxFQUFFLG1CQUFVLENBQUMsVUFBVTtRQUMzQixJQUFJLEVBQUUseUJBQXlCO1FBQy9CLE9BQU8sRUFBRSxzQ0FBc0M7S0FDaEQ7SUFDRCxPQUFPLEVBQUU7UUFDUCxRQUFRLEVBQUUsU0FBUztRQUNuQixXQUFXLEVBQUUsOEJBQThCO1FBQzNDLElBQUksRUFBRSxtQkFBVSxDQUFDLFVBQVU7UUFDM0IsSUFBSSxFQUFFLGlCQUFpQjtRQUN2QixPQUFPLEVBQUUsNkNBQTZDO1FBQ3RELE9BQU8sRUFBRTtZQUNQLFNBQVMsRUFBRTtnQkFDVCxLQUFLLEVBQUUsQ0FBRSxLQUFLLENBQUU7Z0JBQ2hCLE1BQU0sRUFBRSxDQUFFLEtBQUssQ0FBRTtnQkFDakIsa0ZBQWtGO2dCQUNsRixLQUFLLEVBQUUsQ0FBRSxLQUFLLEVBQUUsTUFBTSxDQUFFO2FBQ3pCO1NBQ0Y7UUFDRCx3QkFBd0I7UUFDeEIsT0FBTyxFQUFFLElBQUk7S0FDZDtJQUNELGVBQWU7SUFDZixZQUFZLEVBQUU7UUFDWixRQUFRLEVBQUUsY0FBYztRQUN4QixXQUFXLEVBQUUsd0ZBQXdGO1FBQ3JHLElBQUksRUFBRSxtQkFBVSxDQUFDLE1BQU07UUFDdkIsSUFBSSxFQUFFLGdEQUFnRDtRQUN0RCxPQUFPLEVBQUUsOENBQThDO0tBQ3hEO0lBQ0QsUUFBUSxFQUFFO1FBQ1IsUUFBUSxFQUFFLFVBQVU7UUFDcEIsV0FBVyxFQUFFLDBDQUEwQztRQUN2RCxJQUFJLEVBQUUsbUJBQVUsQ0FBQyxNQUFNO1FBQ3ZCLElBQUksRUFBRSwyQkFBMkI7UUFDakMsT0FBTyxFQUFFLGtEQUFrRDtLQUM1RDtJQUNELGdCQUFnQixFQUFFO1FBQ2hCLFFBQVEsRUFBRSxnQkFBZ0I7UUFDMUIsV0FBVyxFQUFFLGlEQUFpRDtRQUM5RCxJQUFJLEVBQUUsbUJBQVUsQ0FBQyxNQUFNO1FBQ3ZCLElBQUksRUFBRSwrQkFBK0I7UUFDckMsT0FBTyxFQUFFLDBDQUEwQztRQUNuRCxVQUFVLEVBQUU7WUFDVixXQUFXO1NBQ1o7S0FDRjtJQUNELFFBQVEsRUFBRTtRQUNSLFFBQVEsRUFBRSxVQUFVO1FBQ3BCLFdBQVcsRUFBRSw0Q0FBNEM7UUFDekQsSUFBSSxFQUFFLG1CQUFVLENBQUMsTUFBTTtRQUN2QixJQUFJLEVBQUUsbUJBQW1CO1FBQ3pCLE9BQU8sRUFBRSx1REFBdUQ7S0FDakU7SUFDRCxhQUFhLEVBQUU7UUFDYixRQUFRLEVBQUUsYUFBYTtRQUN2QixXQUFXLEVBQUUscUNBQXFDO1FBQ2xELElBQUksRUFBRSxtQkFBVSxDQUFDLE1BQU07UUFDdkIsSUFBSSxFQUFFLHdCQUF3QjtRQUM5QixPQUFPLEVBQUUsNkNBQTZDO0tBQ3ZEO0lBQ0QsVUFBVSxFQUFFO1FBQ1YsUUFBUSxFQUFFLFlBQVk7UUFDdEIsV0FBVyxFQUFFLDhFQUE4RTtRQUMzRixJQUFJLEVBQUUsbUJBQVUsQ0FBQyxNQUFNO1FBQ3ZCLElBQUksRUFBRSxpQkFBaUI7UUFDdkIsT0FBTyxFQUFFLDRDQUE0QztLQUN0RDtJQUNELFdBQVcsRUFBRTtRQUNYLFFBQVEsRUFBRSxXQUFXO1FBQ3JCLFdBQVcsRUFBRSw4RUFBOEU7UUFDM0YsSUFBSSxFQUFFLG1CQUFVLENBQUMsTUFBTTtRQUN2QixJQUFJLEVBQUUsaUJBQWlCO1FBQ3ZCLE9BQU8sRUFBRSwyQ0FBMkM7S0FDckQ7SUFDRCxNQUFNLEVBQUU7UUFDTixRQUFRLEVBQUUsUUFBUTtRQUNsQixXQUFXLEVBQUUsMElBQTBJO1FBQ3ZKLElBQUksRUFBRSxtQkFBVSxDQUFDLE1BQU07UUFDdkIsSUFBSSxFQUFFLGVBQWU7UUFDckIsT0FBTyxFQUFFLG1EQUFtRDtRQUM1RCxVQUFVLEVBQUU7WUFDVix3RUFBd0U7WUFDeEUsOENBQThDO1lBQzlDLGlDQUFpQztZQUNqQyxtQkFBbUI7WUFDbkIsa0JBQWtCO1lBQ2xCLGlCQUFpQjtZQUNqQixhQUFhO1lBQ2IsVUFBVTtZQUNWLE1BQU07WUFDTixhQUFhO1lBQ2Isc0JBQXNCO1lBQ3RCLGlDQUFpQztZQUNqQyw4QkFBOEI7WUFDOUIsb0JBQW9CO1NBQ3JCO0tBQ0Y7SUFDRCxpQkFBaUI7SUFDakIsY0FBYyxFQUFFO1FBQ2QsUUFBUSxFQUFFLGNBQWM7UUFDeEIsV0FBVyxFQUFFLCtFQUErRTtRQUM1RixJQUFJLEVBQUUsbUJBQVUsQ0FBQyxRQUFRO1FBQ3pCLElBQUksRUFBRSx1QkFBdUI7UUFDN0IsT0FBTyxFQUFFLG1DQUFtQztRQUM1QyxPQUFPLEVBQUU7WUFDUCxvRUFBb0U7WUFDcEUsYUFBYSxFQUFFLENBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLEtBQUssQ0FBRTtZQUM5RCxTQUFTLEVBQUU7Z0JBQ1QsS0FBSyxFQUFFLEVBQUU7Z0JBQ1QsS0FBSyxFQUFFLENBQUUsS0FBSyxFQUFFLEtBQUssQ0FBRTtnQkFDdkIsT0FBTyxFQUFFLENBQUUsS0FBSyxFQUFFLEtBQUssQ0FBRTtnQkFDekIsS0FBSyxFQUFFLENBQUUsS0FBSyxFQUFFLEtBQUssQ0FBRTtnQkFDdkIsR0FBRyxFQUFFLENBQUUsS0FBSyxFQUFFLEtBQUssQ0FBRTthQUN0QjtZQUNELFFBQVEsRUFBRTtnQkFDUixLQUFLLEVBQUUsQ0FBRSxVQUFVLENBQUU7Z0JBQ3JCLEtBQUssRUFBRSxDQUFFLFVBQVUsQ0FBRTtnQkFDckIsT0FBTyxFQUFFLENBQUUsVUFBVSxDQUFFO2dCQUN2QixLQUFLLEVBQUUsQ0FBRSxVQUFVLENBQUU7Z0JBQ3JCLEdBQUcsRUFBRSxDQUFFLGNBQWMsRUFBRSxnQkFBZ0IsQ0FBRTthQUMxQztTQUNGO0tBQ0Y7SUFDRCxjQUFjLEVBQUU7UUFDZCxRQUFRLEVBQUUsY0FBYztRQUN4QixXQUFXLEVBQUUsK0VBQStFO1FBQzVGLElBQUksRUFBRSxtQkFBVSxDQUFDLFFBQVE7UUFDekIsSUFBSSxFQUFFLHVCQUF1QjtRQUM3QixPQUFPLEVBQUUsbUNBQW1DO1FBQzVDLE9BQU8sRUFBRTtZQUNQLG9FQUFvRTtZQUNwRSxhQUFhLEVBQUUsQ0FBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLENBQUU7WUFDckQsU0FBUyxFQUFFO2dCQUNULEtBQUssRUFBRSxFQUFFO2dCQUNULEtBQUssRUFBRSxDQUFFLEtBQUssRUFBRSxLQUFLLENBQUU7Z0JBQ3ZCLE9BQU8sRUFBRSxDQUFFLEtBQUssQ0FBRTtnQkFDbEIsR0FBRyxFQUFFLEVBQUU7YUFDUjtZQUNELFFBQVEsRUFBRTtnQkFDUixLQUFLLEVBQUUsQ0FBRSxVQUFVLENBQUU7Z0JBQ3JCLEtBQUssRUFBRSxDQUFFLFVBQVUsQ0FBRTtnQkFDckIsT0FBTyxFQUFFLENBQUUsVUFBVSxDQUFFO2dCQUN2QixHQUFHLEVBQUUsQ0FBRSxjQUFjLENBQUU7YUFDeEI7U0FDRjtLQUNGO0lBQ0QsYUFBYSxFQUFFO1FBQ2IsUUFBUSxFQUFFLGFBQWE7UUFDdkIsV0FBVyxFQUFFLDhFQUE4RTtRQUMzRixJQUFJLEVBQUUsbUJBQVUsQ0FBQyxRQUFRO1FBQ3pCLElBQUksRUFBRSxzQkFBc0I7UUFDNUIsT0FBTyxFQUFFLG1DQUFtQztRQUM1QyxPQUFPLEVBQUU7WUFDUCxtREFBbUQ7WUFDbkQsY0FBYyxFQUFFLFNBQVM7WUFDekIsbUVBQW1FO1lBQ25FLG1FQUFtRTtZQUNuRSxhQUFhLEVBQUUsQ0FBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLENBQUU7WUFDakQsU0FBUyxFQUFFO2dCQUNULEdBQUcsRUFBRSxFQUFFO2dCQUNQLEtBQUssRUFBRSxFQUFFO2dCQUNULEtBQUssRUFBRSxFQUFFO2dCQUNULEdBQUcsRUFBRSxFQUFFO2FBQ1I7WUFDRCxRQUFRLEVBQUU7Z0JBQ1IsR0FBRyxFQUFFLENBQUUsT0FBTyxDQUFFO2dCQUNoQixLQUFLLEVBQUUsQ0FBRSxPQUFPLENBQUU7Z0JBQ2xCLEtBQUssRUFBRSxDQUFFLE9BQU8sQ0FBRTtnQkFDbEIsR0FBRyxFQUFFLENBQUUsV0FBVyxDQUFFO2FBQ3JCO1NBQ0Y7S0FDRjtJQUNELGNBQWMsRUFBRTtRQUNkLFFBQVEsRUFBRSxjQUFjO1FBQ3hCLFdBQVcsRUFBRSwrRUFBK0U7UUFDNUYsSUFBSSxFQUFFLG1CQUFVLENBQUMsUUFBUTtRQUN6QixJQUFJLEVBQUUsdUJBQXVCO1FBQzdCLE9BQU8sRUFBRSxtQ0FBbUM7UUFDNUMsT0FBTyxFQUFFO1lBQ1Asb0RBQW9EO1lBQ3BELGNBQWMsRUFBRSxVQUFVO1lBQzFCLG9FQUFvRTtZQUNwRSxvRUFBb0U7WUFDcEUsYUFBYSxFQUFFLENBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxDQUFFO1lBQ3JELFNBQVMsRUFBRTtnQkFDVCxLQUFLLEVBQUUsRUFBRTtnQkFDVCxLQUFLLEVBQUUsQ0FBRSxLQUFLLEVBQUUsS0FBSyxDQUFFO2dCQUN2QixPQUFPLEVBQUUsQ0FBRSxLQUFLLEVBQUUsS0FBSyxDQUFFO2dCQUN6QixHQUFHLEVBQUUsQ0FBRSxLQUFLLEVBQUUsS0FBSyxDQUFFO2FBQ3RCO1lBQ0QsUUFBUSxFQUFFO2dCQUNSLEtBQUssRUFBRSxDQUFFLFVBQVUsQ0FBRTtnQkFDckIsS0FBSyxFQUFFLENBQUUsVUFBVSxDQUFFO2dCQUNyQixPQUFPLEVBQUUsQ0FBRSxVQUFVLENBQUU7Z0JBQ3ZCLEdBQUcsRUFBRSxDQUFFLGNBQWMsQ0FBRTthQUN4QjtTQUNGO0tBQ0Y7SUFDRCxhQUFhLEVBQUU7UUFDYixRQUFRLEVBQUUsYUFBYTtRQUN2QixXQUFXLEVBQUUsOEVBQThFO1FBQzNGLElBQUksRUFBRSxtQkFBVSxDQUFDLFFBQVE7UUFDekIsSUFBSSxFQUFFLHNCQUFzQjtRQUM1QixPQUFPLEVBQUUsbUNBQW1DO1FBQzVDLE9BQU8sRUFBRTtZQUNQLG1FQUFtRTtZQUNuRSxtRUFBbUU7WUFDbkUsYUFBYSxFQUFFLENBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLEtBQUssQ0FBRTtZQUM5RCxTQUFTLEVBQUU7Z0JBQ1QsS0FBSyxFQUFFLEVBQUU7Z0JBQ1QsS0FBSyxFQUFFLENBQUUsS0FBSyxFQUFFLEtBQUssQ0FBRTtnQkFDdkIsT0FBTyxFQUFFLENBQUUsS0FBSyxFQUFFLEtBQUssQ0FBRTtnQkFDekIsS0FBSyxFQUFFLENBQUUsS0FBSyxFQUFFLEtBQUssQ0FBRTtnQkFDdkIsR0FBRyxFQUFFLEVBQUU7YUFDUjtZQUNELFFBQVEsRUFBRTtnQkFDUixLQUFLLEVBQUUsQ0FBRSxTQUFTLENBQUU7Z0JBQ3BCLEtBQUssRUFBRSxDQUFFLFNBQVMsQ0FBRTtnQkFDcEIsT0FBTyxFQUFFLENBQUUsU0FBUyxDQUFFO2dCQUN0QixLQUFLLEVBQUUsQ0FBRSxTQUFTLENBQUU7Z0JBQ3BCLEdBQUcsRUFBRSxDQUFFLGFBQWEsQ0FBRTthQUN2QjtTQUNGO0tBQ0Y7SUFDRCxlQUFlLEVBQUU7UUFDZixRQUFRLEVBQUUsZUFBZTtRQUN6QixXQUFXLEVBQUUsZ0ZBQWdGO1FBQzdGLElBQUksRUFBRSxtQkFBVSxDQUFDLFFBQVE7UUFDekIsSUFBSSxFQUFFLHdCQUF3QjtRQUM5QixPQUFPLEVBQUUsbUNBQW1DO1FBQzVDLE9BQU8sRUFBRTtZQUNQLHFFQUFxRTtZQUNyRSxxRUFBcUU7WUFDckUsYUFBYSxFQUFFLENBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxPQUFPLENBQUU7WUFDMUMsU0FBUyxFQUFFO2dCQUNULEdBQUcsRUFBRSxFQUFFO2dCQUNQLEtBQUssRUFBRSxFQUFFO2dCQUNULEtBQUssRUFBRSxFQUFFO2FBQ1Y7WUFDRCxRQUFRLEVBQUU7Z0JBQ1IsR0FBRyxFQUFFLENBQUUsV0FBVyxDQUFFO2dCQUNwQixLQUFLLEVBQUUsQ0FBRSxXQUFXLENBQUU7Z0JBQ3RCLEtBQUssRUFBRSxDQUFFLGVBQWUsQ0FBRTthQUMzQjtTQUNGO0tBQ0Y7SUFDRCxlQUFlLEVBQUU7UUFDZixRQUFRLEVBQUUsZUFBZTtRQUN6QixXQUFXLEVBQUUsZ0ZBQWdGO1FBQzdGLElBQUksRUFBRSxtQkFBVSxDQUFDLFFBQVE7UUFDekIsSUFBSSxFQUFFLHdCQUF3QjtRQUM5QixPQUFPLEVBQUUsbUNBQW1DO1FBQzVDLE9BQU8sRUFBRTtZQUNQLHFFQUFxRTtZQUNyRSxxRUFBcUU7WUFDckUsYUFBYSxFQUFFLENBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxPQUFPLENBQUU7WUFDMUMsU0FBUyxFQUFFO2dCQUNULEdBQUcsRUFBRSxFQUFFO2dCQUNQLEtBQUssRUFBRSxFQUFFO2dCQUNULEtBQUssRUFBRSxFQUFFO2FBQ1Y7WUFDRCxRQUFRLEVBQUU7Z0JBQ1IsR0FBRyxFQUFFLENBQUUsV0FBVyxDQUFFO2dCQUNwQixLQUFLLEVBQUUsQ0FBRSxXQUFXLENBQUU7Z0JBQ3RCLEtBQUssRUFBRSxDQUFFLGVBQWUsQ0FBRTthQUMzQjtTQUNGO0tBQ0Y7SUFDRCxxQkFBcUIsRUFBRTtRQUNyQixRQUFRLEVBQUUscUJBQXFCO1FBQy9CLFdBQVcsRUFBRSxzRkFBc0Y7UUFDbkcsSUFBSSxFQUFFLG1CQUFVLENBQUMsUUFBUTtRQUN6QixJQUFJLEVBQUUsOEJBQThCO1FBQ3BDLE9BQU8sRUFBRSxtQ0FBbUM7UUFDNUMsT0FBTyxFQUFFO1lBQ1AsMkVBQTJFO1lBQzNFLDJFQUEyRTtZQUMzRSxhQUFhLEVBQUUsQ0FBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLEtBQUssQ0FBRTtZQUN4QyxTQUFTLEVBQUU7Z0JBQ1QsR0FBRyxFQUFFLEVBQUU7Z0JBQ1AsS0FBSyxFQUFFLEVBQUU7Z0JBQ1QsR0FBRyxFQUFFLEVBQUU7YUFDUjtZQUNELFFBQVEsRUFBRTtnQkFDUixHQUFHLEVBQUUsQ0FBRSxpQkFBaUIsQ0FBRTtnQkFDMUIsS0FBSyxFQUFFLENBQUUsaUJBQWlCLENBQUU7Z0JBQzVCLEdBQUcsRUFBRSxDQUFFLHFCQUFxQixDQUFFO2FBQy9CO1NBQ0Y7S0FDRjtJQUNELGNBQWMsRUFBRTtRQUNkLFFBQVEsRUFBRSxjQUFjO1FBQ3hCLFdBQVcsRUFBRSwrRUFBK0U7UUFDNUYsSUFBSSxFQUFFLG1CQUFVLENBQUMsUUFBUTtRQUN6QixJQUFJLEVBQUUsdUJBQXVCO1FBQzdCLE9BQU8sRUFBRSxtQ0FBbUM7UUFDNUMsT0FBTyxFQUFFO1lBQ1Asb0VBQW9FO1lBQ3BFLG9FQUFvRTtZQUNwRSxhQUFhLEVBQUUsQ0FBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLEtBQUssQ0FBRTtZQUN4QyxTQUFTLEVBQUU7Z0JBQ1QsR0FBRyxFQUFFLEVBQUU7Z0JBQ1AsS0FBSyxFQUFFLEVBQUU7Z0JBQ1QsR0FBRyxFQUFFLENBQUUsS0FBSyxFQUFFLEtBQUssQ0FBRTthQUN0QjtZQUNELFFBQVEsRUFBRTtnQkFDUixHQUFHLEVBQUUsQ0FBRSxVQUFVLENBQUU7Z0JBQ25CLEtBQUssRUFBRSxDQUFFLFVBQVUsQ0FBRTtnQkFDckIsR0FBRyxFQUFFLENBQUUsY0FBYyxDQUFFO2FBQ3hCO1NBQ0Y7S0FDRjtJQUNELFlBQVksRUFBRTtRQUNaLFFBQVEsRUFBRSxZQUFZO1FBQ3RCLFdBQVcsRUFBRSw2RUFBNkU7UUFDMUYsSUFBSSxFQUFFLG1CQUFVLENBQUMsUUFBUTtRQUN6QixJQUFJLEVBQUUscUJBQXFCO1FBQzNCLE9BQU8sRUFBRSxtQ0FBbUM7UUFDNUMsT0FBTyxFQUFFO1lBQ1Asa0VBQWtFO1lBQ2xFLGtFQUFrRTtZQUNsRSxhQUFhLEVBQUUsQ0FBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLENBQUU7WUFDckQsU0FBUyxFQUFFO2dCQUNULEdBQUcsRUFBRSxFQUFFO2dCQUNQLEtBQUssRUFBRSxDQUFFLEtBQUssRUFBRSxLQUFLLENBQUU7Z0JBQ3ZCLE9BQU8sRUFBRSxDQUFFLEtBQUssRUFBRSxLQUFLLENBQUU7Z0JBQ3pCLEtBQUssRUFBRSxFQUFFO2FBQ1Y7WUFDRCxRQUFRLEVBQUU7Z0JBQ1IsR0FBRyxFQUFFLENBQUUsVUFBVSxDQUFFO2dCQUNuQixLQUFLLEVBQUUsQ0FBRSxVQUFVLENBQUU7Z0JBQ3JCLE9BQU8sRUFBRSxDQUFFLFFBQVEsQ0FBRTtnQkFDckIsS0FBSyxFQUFFLENBQUUsY0FBYyxDQUFFO2FBQzFCO1NBQ0Y7S0FDRjtJQUNELGNBQWMsRUFBRTtRQUNkLFFBQVEsRUFBRSxjQUFjO1FBQ3hCLFdBQVcsRUFBRSwrRUFBK0U7UUFDNUYsSUFBSSxFQUFFLG1CQUFVLENBQUMsUUFBUTtRQUN6QixJQUFJLEVBQUUsdUJBQXVCO1FBQzdCLE9BQU8sRUFBRSxtQ0FBbUM7UUFDNUMsT0FBTyxFQUFFO1lBQ1Asb0VBQW9FO1lBQ3BFLGFBQWEsRUFBRSxDQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxDQUFFO1lBQzFDLFNBQVMsRUFBRTtnQkFDVCxLQUFLLEVBQUUsRUFBRTtnQkFDVCxLQUFLLEVBQUUsRUFBRTtnQkFDVCxHQUFHLEVBQUUsRUFBRTthQUNSO1lBQ0QsUUFBUSxFQUFFO2dCQUNSLEtBQUssRUFBRSxDQUFFLFVBQVUsQ0FBRTtnQkFDckIsS0FBSyxFQUFFLENBQUUsVUFBVSxDQUFFO2dCQUNyQixHQUFHLEVBQUUsQ0FBRSxjQUFjLENBQUU7YUFDeEI7U0FDRjtLQUNGO0lBQ0QsYUFBYSxFQUFFO1FBQ2IsUUFBUSxFQUFFLGFBQWE7UUFDdkIsV0FBVyxFQUFFLDhFQUE4RTtRQUMzRixJQUFJLEVBQUUsbUJBQVUsQ0FBQyxRQUFRO1FBQ3pCLElBQUksRUFBRSxzQkFBc0I7UUFDNUIsT0FBTyxFQUFFLG1DQUFtQztRQUM1QyxPQUFPLEVBQUU7WUFDUCxtREFBbUQ7WUFDbkQsY0FBYyxFQUFFLFNBQVM7WUFDekIsbUVBQW1FO1lBQ25FLGFBQWEsRUFBRSxDQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxDQUFFO1lBQzFDLFNBQVMsRUFBRTtnQkFDVCxLQUFLLEVBQUUsRUFBRTtnQkFDVCxLQUFLLEVBQUUsRUFBRTtnQkFDVCxHQUFHLEVBQUUsRUFBRTthQUNSO1lBQ0QsUUFBUSxFQUFFO2dCQUNSLEtBQUssRUFBRSxDQUFFLFNBQVMsQ0FBRTtnQkFDcEIsS0FBSyxFQUFFLENBQUUsU0FBUyxDQUFFO2dCQUNwQixHQUFHLEVBQUUsQ0FBRSxhQUFhLENBQUU7YUFDdkI7U0FDRjtLQUNGO0lBQ0QsWUFBWSxFQUFFO1FBQ1osUUFBUSxFQUFFLFlBQVk7UUFDdEIsV0FBVyxFQUFFLDZFQUE2RTtRQUMxRixJQUFJLEVBQUUsbUJBQVUsQ0FBQyxRQUFRO1FBQ3pCLElBQUksRUFBRSxxQkFBcUI7UUFDM0IsT0FBTyxFQUFFLG1DQUFtQztRQUM1QyxPQUFPLEVBQUU7WUFDUCxrRUFBa0U7WUFDbEUsYUFBYSxFQUFFLENBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxPQUFPLENBQUU7WUFDMUMsU0FBUyxFQUFFO2dCQUNULEdBQUcsRUFBRSxFQUFFO2dCQUNQLEtBQUssRUFBRSxFQUFFO2dCQUNULEtBQUssRUFBRSxFQUFFO2FBQ1Y7WUFDRCxRQUFRLEVBQUU7Z0JBQ1IsR0FBRyxFQUFFLENBQUUsUUFBUSxDQUFFO2dCQUNqQixLQUFLLEVBQUUsQ0FBRSxRQUFRLENBQUU7Z0JBQ25CLEtBQUssRUFBRSxDQUFFLFlBQVksQ0FBRTthQUN4QjtTQUNGO0tBQ0Y7SUFDRCxXQUFXLEVBQUU7UUFDWCxRQUFRLEVBQUUsV0FBVztRQUNyQixXQUFXLEVBQUUsNEVBQTRFO1FBQ3pGLElBQUksRUFBRSxtQkFBVSxDQUFDLFFBQVE7UUFDekIsSUFBSSxFQUFFLG9CQUFvQjtRQUMxQixPQUFPLEVBQUUsbUNBQW1DO1FBQzVDLE9BQU8sRUFBRTtZQUNQLGlFQUFpRTtZQUNqRSxhQUFhLEVBQUUsQ0FBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLEtBQUssQ0FBRTtZQUN4QyxTQUFTLEVBQUU7Z0JBQ1QsR0FBRyxFQUFFLEVBQUU7Z0JBQ1AsS0FBSyxFQUFFLENBQUUsS0FBSyxFQUFFLEtBQUssQ0FBRTtnQkFDdkIsR0FBRyxFQUFFLENBQUUsS0FBSyxFQUFFLEtBQUssQ0FBRTthQUN0QjtZQUNELFFBQVEsRUFBRTtnQkFDUixHQUFHLEVBQUUsQ0FBRSxPQUFPLENBQUU7Z0JBQ2hCLEtBQUssRUFBRSxDQUFFLE9BQU8sQ0FBRTtnQkFDbEIsR0FBRyxFQUFFLENBQUUsV0FBVyxDQUFFO2FBQ3JCO1NBQ0Y7S0FDRjtJQUNELGVBQWU7SUFDZixHQUFHLEVBQUU7UUFDSCxRQUFRLEVBQUUsS0FBSztRQUNmLFdBQVcsRUFBRSxvQ0FBb0M7UUFDakQsSUFBSSxFQUFFLG1CQUFVLENBQUMsTUFBTTtRQUN2QixJQUFJLEVBQUUsU0FBUztRQUNmLE9BQU8sRUFBRSxxQ0FBcUM7UUFDOUMsT0FBTyxFQUFFO1lBQ1AsT0FBTyxFQUFFLENBQUM7U0FDWDtLQUNGO0lBQ0QsU0FBUyxFQUFFO1FBQ1QsUUFBUSxFQUFFLFdBQVc7UUFDckIsV0FBVyxFQUFFLDJHQUEyRztRQUN4SCxJQUFJLEVBQUUsbUJBQVUsQ0FBQyxNQUFNO1FBQ3ZCLElBQUksRUFBRSxzQkFBc0I7UUFDNUIsT0FBTyxFQUFFLGtEQUFrRDtLQUM1RDtJQUNELFdBQVcsRUFBRTtRQUNYLFFBQVEsRUFBRSxXQUFXO1FBQ3JCLFdBQVcsRUFBRSxnQ0FBZ0M7UUFDN0MsSUFBSSxFQUFFLG1CQUFVLENBQUMsTUFBTTtRQUN2QixJQUFJLEVBQUUsZ0JBQWdCO1FBQ3RCLE9BQU8sRUFBRSw0Q0FBNEM7S0FDdEQ7SUFDRCxlQUFlLEVBQUU7UUFDZixRQUFRLEVBQUUsZUFBZTtRQUN6QixXQUFXLEVBQUUsa0dBQWtHO1FBQy9HLElBQUksRUFBRSxtQkFBVSxDQUFDLE1BQU07UUFDdkIsSUFBSSxFQUFFLHlCQUF5QjtRQUMvQixPQUFPLEVBQUUscURBQXFEO0tBQy9EO0lBQ0QsUUFBUSxFQUFFO1FBQ1IsUUFBUSxFQUFFLFVBQVU7UUFDcEIsV0FBVyxFQUFFLGtFQUFrRTtRQUMvRSxJQUFJLEVBQUUsbUJBQVUsQ0FBQyxRQUFRO1FBQ3pCLElBQUksRUFBRSxtQkFBbUI7UUFDekIsT0FBTyxFQUFFLCtDQUErQztRQUN4RCxPQUFPLEVBQUU7WUFDUCw2QkFBNkI7WUFDN0IsT0FBTyxFQUFFLENBQUM7U0FDWDtLQUNGO0lBQ0Qsa0JBQWtCLEVBQUU7UUFDbEIsUUFBUSxFQUFFLGtCQUFrQjtRQUM1QixXQUFXLEVBQUUsa0VBQWtFO1FBQy9FLElBQUksRUFBRSxtQkFBVSxDQUFDLE1BQU07UUFDdkIsSUFBSSxFQUFFLG9CQUFvQjtRQUMxQixPQUFPLEVBQUUsZ0RBQWdEO1FBQ3pELE9BQU8sRUFBRTtZQUNQLE9BQU8sRUFBRSxDQUFDO1NBQ1g7S0FDRjtJQUNELDJCQUEyQixFQUFFO1FBQzNCLFFBQVEsRUFBRSwyQkFBMkI7UUFDckMsV0FBVyxFQUFFLGtIQUFrSDtRQUMvSCxJQUFJLEVBQUUsbUJBQVUsQ0FBQyxNQUFNO1FBQ3ZCLElBQUksRUFBRSw2Q0FBNkM7UUFDbkQsT0FBTyxFQUFFLHlFQUF5RTtLQUNuRjtJQUNELGVBQWUsRUFBRTtRQUNmLFFBQVEsRUFBRSxlQUFlO1FBQ3pCLFdBQVcsRUFBRSwwREFBMEQ7UUFDdkUsSUFBSSxFQUFFLG1CQUFVLENBQUMsTUFBTTtRQUN2QixJQUFJLEVBQUUsMEJBQTBCO1FBQ2hDLE9BQU8sRUFBRSxzREFBc0Q7S0FDaEU7SUFDRCxTQUFTLEVBQUU7UUFDVCxRQUFRLEVBQUUsV0FBVztRQUNyQixXQUFXLEVBQUUsb0JBQW9CO1FBQ2pDLElBQUksRUFBRSxtQkFBVSxDQUFDLE1BQU07UUFDdkIsSUFBSSxFQUFFLG1CQUFtQjtRQUN6QixPQUFPLEVBQUUsK0NBQStDO0tBQ3pEO0lBQ0QsaUJBQWlCLEVBQUU7UUFDakIsUUFBUSxFQUFFLGlCQUFpQjtRQUMzQixXQUFXLEVBQUUsb0RBQW9EO1FBQ2pFLElBQUksRUFBRSxtQkFBVSxDQUFDLE1BQU07UUFDdkIsSUFBSSxFQUFFLHFCQUFxQjtRQUMzQixPQUFPLEVBQUUsaURBQWlEO0tBQzNEO0lBQ0QsSUFBSSxFQUFFO1FBQ0osUUFBUSxFQUFFLE1BQU07UUFDaEIsV0FBVyxFQUFFLDBCQUEwQjtRQUN2QyxJQUFJLEVBQUUsbUJBQVUsQ0FBQyxNQUFNO1FBQ3ZCLElBQUksRUFBRSxXQUFXO1FBQ2pCLE9BQU8sRUFBRSx1Q0FBdUM7S0FDakQ7SUFDRCxXQUFXLEVBQUU7UUFDWCxRQUFRLEVBQUUsYUFBYTtRQUN2QixXQUFXLEVBQUUsK0NBQStDO1FBQzVELElBQUksRUFBRSxtQkFBVSxDQUFDLE1BQU07UUFDdkIsSUFBSSxFQUFFLG1DQUFtQztRQUN6QyxPQUFPLEVBQUUsK0RBQStEO0tBQ3pFO0lBQ0QsV0FBVyxFQUFFO1FBQ1gsUUFBUSxFQUFFLGFBQWE7UUFDdkIsV0FBVyxFQUFFLHVCQUF1QjtRQUNwQyxJQUFJLEVBQUUsbUJBQVUsQ0FBQyxNQUFNO1FBQ3ZCLElBQUksRUFBRSxxQkFBcUI7UUFDM0IsT0FBTyxFQUFFLGlEQUFpRDtLQUMzRDtJQUNELFNBQVMsRUFBRTtRQUNULFFBQVEsRUFBRSxXQUFXO1FBQ3JCLFdBQVcsRUFBRSwwRUFBMEU7UUFDdkYsSUFBSSxFQUFFLG1CQUFVLENBQUMsTUFBTTtRQUN2QixJQUFJLEVBQUUsaUJBQWlCO1FBQ3ZCLE9BQU8sRUFBRSw2Q0FBNkM7S0FDdkQ7SUFDRCxTQUFTLEVBQUU7UUFDVCxRQUFRLEVBQUUsV0FBVztRQUNyQixXQUFXLEVBQUUsNkNBQTZDO1FBQzFELElBQUksRUFBRSxtQkFBVSxDQUFDLE1BQU07UUFDdkIsSUFBSSxFQUFFLHFCQUFxQjtRQUMzQixPQUFPLEVBQUUsaURBQWlEO0tBQzNEO0lBQ0QsRUFBRSxFQUFFO1FBQ0YsUUFBUSxFQUFFLElBQUk7UUFDZCxXQUFXLEVBQUUsaUNBQWlDO1FBQzlDLElBQUksRUFBRSxtQkFBVSxDQUFDLE1BQU07UUFDdkIsSUFBSSxFQUFFLHFCQUFxQjtRQUMzQixPQUFPLEVBQUUsaURBQWlEO0tBQzNEO0lBQ0QsSUFBSSxFQUFFO1FBQ0osUUFBUSxFQUFFLE1BQU07UUFDaEIsV0FBVyxFQUFFLHNGQUFzRjtRQUNuRyxJQUFJLEVBQUUsbUJBQVUsQ0FBQyxNQUFNO1FBQ3ZCLElBQUksRUFBRSxlQUFlO1FBQ3JCLE9BQU8sRUFBRSwyQ0FBMkM7S0FDckQ7SUFDRCxPQUFPLEVBQUU7UUFDUCxRQUFRLEVBQUUsU0FBUztRQUNuQixXQUFXLEVBQUUsZ0RBQWdEO1FBQzdELElBQUksRUFBRSxtQkFBVSxDQUFDLE1BQU07UUFDdkIsSUFBSSxFQUFFLG1CQUFtQjtRQUN6QixPQUFPLEVBQUUsK0NBQStDO0tBQ3pEO0lBQ0QsR0FBRyxFQUFFO1FBQ0gsUUFBUSxFQUFFLEtBQUs7UUFDZixXQUFXLEVBQUUscURBQXFEO1FBQ2xFLElBQUksRUFBRSxtQkFBVSxDQUFDLE1BQU07UUFDdkIsSUFBSSxFQUFFLFdBQVc7UUFDakIsT0FBTyxFQUFFLHVDQUF1QztLQUNqRDtJQUNELGdCQUFnQixFQUFFO1FBQ2hCLFFBQVEsRUFBRSxnQkFBZ0I7UUFDMUIsV0FBVyxFQUFFLHdDQUF3QztRQUNyRCxJQUFJLEVBQUUsbUJBQVUsQ0FBQyxNQUFNO1FBQ3ZCLElBQUksRUFBRSwyQkFBMkI7UUFDakMsT0FBTyxFQUFFLHVEQUF1RDtLQUNqRTtJQUNELFFBQVEsRUFBRTtRQUNSLFFBQVEsRUFBRSxVQUFVO1FBQ3BCLFdBQVcsRUFBRSxzREFBc0Q7UUFDbkUsSUFBSSxFQUFFLG1CQUFVLENBQUMsTUFBTTtRQUN2QixJQUFJLEVBQUUscUJBQXFCO1FBQzNCLE9BQU8sRUFBRSxpREFBaUQ7S0FDM0Q7SUFDRCxZQUFZLEVBQUU7UUFDWixRQUFRLEVBQUUsWUFBWTtRQUN0QixXQUFXLEVBQUUseUVBQXlFO1FBQ3RGLElBQUksRUFBRSxtQkFBVSxDQUFDLE1BQU07UUFDdkIsSUFBSSxFQUFFLHNCQUFzQjtRQUM1QixPQUFPLEVBQUUsa0RBQWtEO0tBQzVEO0lBQ0QsZUFBZSxFQUFFO1FBQ2YsUUFBUSxFQUFFLGVBQWU7UUFDekIsV0FBVyxFQUFFLDJIQUEySDtRQUN4SSxJQUFJLEVBQUUsbUJBQVUsQ0FBQyxNQUFNO1FBQ3ZCLElBQUksRUFBRSxzQkFBc0I7UUFDNUIsT0FBTyxFQUFFLGtEQUFrRDtLQUM1RDtJQUNELEtBQUssRUFBRTtRQUNMLFFBQVEsRUFBRSxPQUFPO1FBQ2pCLFdBQVcsRUFBRSwyS0FBMks7UUFDeEwsSUFBSSxFQUFFLG1CQUFVLENBQUMsTUFBTTtRQUN2QixJQUFJLEVBQUUsY0FBYztRQUNwQixPQUFPLEVBQUUsMENBQTBDO0tBQ3BEO0lBQ0QsR0FBRyxFQUFFO1FBQ0gsUUFBUSxFQUFFLEtBQUs7UUFDZixXQUFXLEVBQUUsMklBQTJJO1FBQ3hKLElBQUksRUFBRSxtQkFBVSxDQUFDLE1BQU07UUFDdkIsSUFBSSxFQUFFLGlCQUFpQjtRQUN2QixPQUFPLEVBQUUsNkNBQTZDO0tBQ3ZEO0lBQ0QsVUFBVSxFQUFFO1FBQ1YsUUFBUSxFQUFFLFVBQVU7UUFDcEIsV0FBVyxFQUFFLHNGQUFzRjtRQUNuRyxJQUFJLEVBQUUsbUJBQVUsQ0FBQyxNQUFNO1FBQ3ZCLElBQUksRUFBRSxzQkFBc0I7UUFDNUIsT0FBTyxFQUFFLGtEQUFrRDtLQUM1RDtJQUNELE1BQU0sRUFBRTtRQUNOLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFdBQVcsRUFBRSwrQ0FBK0M7UUFDNUQsSUFBSSxFQUFFLG1CQUFVLENBQUMsTUFBTTtRQUN2QixJQUFJLEVBQUUsc0JBQXNCO1FBQzVCLE9BQU8sRUFBRSxrREFBa0Q7S0FDNUQ7SUFDRCxNQUFNLEVBQUU7UUFDTixRQUFRLEVBQUUsUUFBUTtRQUNsQixXQUFXLEVBQUUsNkNBQTZDO1FBQzFELElBQUksRUFBRSxtQkFBVSxDQUFDLE1BQU07UUFDdkIsSUFBSSxFQUFFLG1CQUFtQjtRQUN6QixPQUFPLEVBQUUsK0NBQStDO0tBQ3pEO0lBQ0QsUUFBUSxFQUFFO1FBQ1IsUUFBUSxFQUFFLFVBQVU7UUFDcEIsV0FBVyxFQUFFLGtEQUFrRDtRQUMvRCxJQUFJLEVBQUUsbUJBQVUsQ0FBQyxNQUFNO1FBQ3ZCLElBQUksRUFBRSxvQkFBb0I7UUFDMUIsT0FBTyxFQUFFLGdEQUFnRDtLQUMxRDtJQUNELGlCQUFpQixFQUFFO1FBQ2pCLFFBQVEsRUFBRSxpQkFBaUI7UUFDM0IsV0FBVyxFQUFFLHVJQUF1STtRQUNwSixJQUFJLEVBQUUsbUJBQVUsQ0FBQyxNQUFNO1FBQ3ZCLElBQUksRUFBRSwyQkFBMkI7UUFDakMsT0FBTyxFQUFFLHVEQUF1RDtLQUNqRTtJQUNELGNBQWMsRUFBRTtRQUNkLFFBQVEsRUFBRSxjQUFjO1FBQ3hCLFdBQVcsRUFBRSx5REFBeUQ7UUFDdEUsSUFBSSxFQUFFLG1CQUFVLENBQUMsTUFBTTtRQUN2QixJQUFJLEVBQUUsY0FBYztRQUNwQixPQUFPLEVBQUUsMENBQTBDO0tBQ3BEO0lBQ0QsWUFBWSxFQUFFO1FBQ1osUUFBUSxFQUFFLFlBQVk7UUFDdEIsV0FBVyxFQUFFLDZCQUE2QjtRQUMxQyxJQUFJLEVBQUUsbUJBQVUsQ0FBQyxNQUFNO1FBQ3ZCLElBQUksRUFBRSxxQkFBcUI7UUFDM0IsT0FBTyxFQUFFLGlEQUFpRDtLQUMzRDtJQUNELGFBQWEsRUFBRTtRQUNiLFFBQVEsRUFBRSxhQUFhO1FBQ3ZCLFdBQVcsRUFBRSw0QkFBNEI7UUFDekMsSUFBSSxFQUFFLG1CQUFVLENBQUMsTUFBTTtRQUN2QixJQUFJLEVBQUUsdUJBQXVCO1FBQzdCLE9BQU8sRUFBRSxtREFBbUQ7S0FDN0Q7SUFDRCxVQUFVLEVBQUU7UUFDVixRQUFRLEVBQUUsVUFBVTtRQUNwQixXQUFXLEVBQUUsOEZBQThGO1FBQzNHLElBQUksRUFBRSxtQkFBVSxDQUFDLE1BQU07UUFDdkIsSUFBSSxFQUFFLGVBQWU7UUFDckIsT0FBTyxFQUFFLDJDQUEyQztLQUNyRDtJQUNELE9BQU8sRUFBRTtRQUNQLFFBQVEsRUFBRSxTQUFTO1FBQ25CLFdBQVcsRUFBRSx5REFBeUQ7UUFDdEUsSUFBSSxFQUFFLG1CQUFVLENBQUMsTUFBTTtRQUN2QixJQUFJLEVBQUUsdUJBQXVCO1FBQzdCLE9BQU8sRUFBRSxtREFBbUQ7S0FDN0Q7SUFDRCxnQkFBZ0IsRUFBRTtRQUNoQixRQUFRLEVBQUUsZ0JBQWdCO1FBQzFCLFdBQVcsRUFBRSw4REFBOEQ7UUFDM0UsSUFBSSxFQUFFLG1CQUFVLENBQUMsTUFBTTtRQUN2QixJQUFJLEVBQUUseUJBQXlCO1FBQy9CLE9BQU8sRUFBRSxxREFBcUQ7S0FDL0Q7SUFDRCxNQUFNLEVBQUU7UUFDTixRQUFRLEVBQUUsUUFBUTtRQUNsQixXQUFXLEVBQUUsNkJBQTZCO1FBQzFDLElBQUksRUFBRSxtQkFBVSxDQUFDLE1BQU07UUFDdkIsSUFBSSxFQUFFLGtCQUFrQjtRQUN4QixPQUFPLEVBQUUsOENBQThDO0tBQ3hEO0lBQ0QsbUJBQW1CO0lBQ25CLFVBQVUsRUFBRTtRQUNWLFFBQVEsRUFBRSxZQUFZO1FBQ3RCLFdBQVcsRUFBRSwyREFBMkQ7UUFDeEUsSUFBSSxFQUFFLG1CQUFVLENBQUMsVUFBVTtRQUMzQixJQUFJLEVBQUUsc0JBQXNCO1FBQzVCLE9BQU8sRUFBRSxrREFBa0Q7S0FDNUQ7SUFDRCxLQUFLLEVBQUU7UUFDTCxRQUFRLEVBQUUsT0FBTztRQUNqQixXQUFXLEVBQUUsMEZBQTBGO1FBQ3ZHLElBQUksRUFBRSxtQkFBVSxDQUFDLE1BQU07UUFDdkIsSUFBSSxFQUFFLDRCQUE0QjtRQUNsQyxPQUFPLEVBQUUsd0RBQXdEO0tBQ2xFO0lBQ0QsTUFBTSxFQUFFO1FBQ04sZ0RBQWdEO1FBQ2hELFFBQVEsRUFBRSxzQkFBc0I7UUFDaEMsV0FBVyxFQUFFLGlFQUFpRTtRQUM5RSxJQUFJLEVBQUUsbUJBQVUsQ0FBQyxNQUFNO1FBQ3ZCLElBQUksRUFBRSx3QkFBd0I7UUFDOUIsT0FBTyxFQUFFLG9EQUFvRDtLQUM5RDtJQUNELGlCQUFpQixFQUFFO1FBQ2pCLFFBQVEsRUFBRSxpQkFBaUI7UUFDM0IsT0FBTyxFQUFFLDJEQUEyRDtRQUNwRSxJQUFJLEVBQUUsOEJBQThCO1FBQ3BDLFdBQVcsRUFBRSwyREFBMkQ7UUFDeEUsSUFBSSxFQUFFLG1CQUFVLENBQUMsTUFBTTtRQUN2QixPQUFPLEVBQUU7WUFDUCxTQUFTLEVBQUU7Z0JBQ1QsS0FBSyxFQUFFLENBQUUsS0FBSyxDQUFFO2dCQUNoQixNQUFNLEVBQUUsQ0FBRSxLQUFLLENBQUU7Z0JBQ2pCLEtBQUssRUFBRSxDQUFFLEtBQUssQ0FBRTthQUNqQjtTQUNGO0tBQ0Y7SUFDRCxzQkFBc0IsRUFBRTtRQUN0QixRQUFRLEVBQUUsc0JBQXNCO1FBQ2hDLE9BQU8sRUFBRSwyREFBMkQ7UUFDcEUsSUFBSSxFQUFFLCtCQUErQjtRQUNyQyxXQUFXLEVBQUUsbURBQW1EO1FBQ2hFLElBQUksRUFBRSxtQkFBVSxDQUFDLE1BQU07UUFDdkIsT0FBTyxFQUFFO1lBQ1AsU0FBUyxFQUFFO2dCQUNULEtBQUssRUFBRSxDQUFFLEtBQUssQ0FBRTtnQkFDaEIsTUFBTSxFQUFFLENBQUUsS0FBSyxDQUFFO2dCQUNqQixLQUFLLEVBQUUsQ0FBRSxLQUFLLENBQUU7YUFDakI7U0FDRjtLQUNGO0NBQ08sQ0FBQztBQUtYLE1BQU0sZUFBZSxHQUF5QztJQUM1RCxHQUFHLFFBQVE7Q0FDWixDQUFDO0FBRUYsa0JBQWUsZUFBZSxDQUFDIn0=
|
|
855
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmluYXJpZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9jb25maWcvYmluYXJpZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxzREFBdUQ7QUEyQnZELE1BQU0sUUFBUSxHQUFHO0lBQ2YsYUFBYTtJQUNiLElBQUksRUFBRTtRQUNKLFFBQVEsRUFBRSxNQUFNO1FBQ2hCLFdBQVcsRUFBRSxzS0FBc0s7UUFDbkwsSUFBSSxFQUFFLG1CQUFVLENBQUMsSUFBSTtRQUNyQixJQUFJLEVBQUUsWUFBWTtRQUNsQixPQUFPLEVBQUUscUJBQXFCO0tBQy9CO0lBQ0QsYUFBYTtJQUNiLElBQUksRUFBRTtRQUNKLFFBQVEsRUFBRSxNQUFNO1FBQ2hCLFdBQVcsRUFBRSwyRUFBMkU7UUFDeEYsSUFBSSxFQUFFLG1CQUFVLENBQUMsSUFBSTtRQUNyQixJQUFJLEVBQUUsYUFBYTtRQUNuQixPQUFPLEVBQUUseUJBQXlCO0tBQ25DO0lBQ0QsU0FBUyxFQUFFO1FBQ1QsUUFBUSxFQUFFLFNBQVM7UUFDbkIsV0FBVyxFQUFFLDJCQUEyQjtRQUN4QyxJQUFJLEVBQUUsbUJBQVUsQ0FBQyxJQUFJO1FBQ3JCLElBQUksRUFBRSxhQUFhO1FBQ25CLE9BQU8sRUFBRSxnQ0FBZ0M7S0FDMUM7SUFDRCxjQUFjLEVBQUU7UUFDZCxRQUFRLEVBQUUsY0FBYztRQUN4QixXQUFXLEVBQUUsdUJBQXVCO1FBQ3BDLElBQUksRUFBRSxtQkFBVSxDQUFDLElBQUk7UUFDckIsSUFBSSxFQUFFLGFBQWE7UUFDbkIsT0FBTyxFQUFFLHFDQUFxQztLQUMvQztJQUNELHdCQUF3QixFQUFFO1FBQ3hCLFFBQVEsRUFBRSx3QkFBd0I7UUFDbEMsV0FBVyxFQUFFLHlFQUF5RTtRQUN0RixJQUFJLEVBQUUsbUJBQVUsQ0FBQyxJQUFJO1FBQ3JCLElBQUksRUFBRSwwQkFBMEI7UUFDaEMsT0FBTyxFQUFFLHVEQUF1RDtLQUNqRTtJQUNELE9BQU8sRUFBRTtRQUNQLFFBQVEsRUFBRSxTQUFTO1FBQ25CLFdBQVcsRUFBRSxtSkFBbUo7UUFDaEssSUFBSSxFQUFFLG1CQUFVLENBQUMsSUFBSTtRQUNyQixJQUFJLEVBQUUsRUFBRTtRQUNSLE9BQU8sRUFBRSw0Q0FBNEM7S0FDdEQ7SUFDRCxNQUFNLEVBQUU7UUFDTixRQUFRLEVBQUUsUUFBUTtRQUNsQixXQUFXLEVBQUUseURBQXlEO1FBQ3RFLElBQUksRUFBRSxtQkFBVSxDQUFDLElBQUk7UUFDckIsSUFBSSxFQUFFLGdCQUFnQjtRQUN0QixPQUFPLEVBQUUsbUNBQW1DO1FBQzVDLFdBQVcsRUFBRTtZQUNYLHdCQUF3QjtTQUN6QjtRQUNELE9BQU8sRUFBRTtZQUNQLGdGQUFnRjtZQUNoRixzQkFBc0IsRUFBRSxDQUFFLEdBQUcsQ0FBcUI7U0FDbkQ7S0FDRjtJQUNELGdCQUFnQjtJQUNoQixPQUFPLEVBQUU7UUFDUCxRQUFRLEVBQUUsU0FBUztRQUNuQixXQUFXLEVBQUUsc0VBQXNFO1FBQ25GLElBQUksRUFBRSxtQkFBVSxDQUFDLE9BQU87UUFDeEIsSUFBSSxFQUFFLG9CQUFvQjtRQUMxQixPQUFPLEVBQUUseUJBQXlCO0tBQ25DO0lBQ0Qsa0JBQWtCO0lBQ2xCLHdCQUF3QixFQUFFO1FBQ3hCLFFBQVEsRUFBRSx3QkFBd0I7UUFDbEMsV0FBVyxFQUFFLDZCQUE2QjtRQUMxQyxJQUFJLEVBQUUsbUJBQVUsQ0FBQyxTQUFTO1FBQzFCLElBQUksRUFBRSw0QkFBNEI7UUFDbEMsT0FBTyxFQUFFLGtEQUFrRDtLQUM1RDtJQUNELG1CQUFtQjtJQUNuQiw0QkFBNEIsRUFBRTtRQUM1QixRQUFRLEVBQUUsNEJBQTRCO1FBQ3RDLFdBQVcsRUFBRSwrQ0FBK0M7UUFDNUQsSUFBSSxFQUFFLG1CQUFVLENBQUMsU0FBUztRQUMxQixJQUFJLEVBQUUscUJBQXFCO1FBQzNCLE9BQU8sRUFBRSxnRkFBZ0Y7S0FDMUY7SUFDRCxlQUFlO0lBQ2Ysb0JBQW9CLEVBQUU7UUFDcEIsUUFBUSxFQUFFLG9CQUFvQjtRQUM5QixXQUFXLEVBQUUsa0NBQWtDO1FBQy9DLElBQUksRUFBRSxtQkFBVSxDQUFDLGdCQUFnQjtRQUNqQyxJQUFJLEVBQUUscUJBQXFCO1FBQzNCLE9BQU8sRUFBRSw4REFBOEQ7S0FDeEU7SUFDRCxtQkFBbUI7SUFDbkIsWUFBWSxFQUFFO1FBQ1osUUFBUSxFQUFFLFlBQVk7UUFDdEIsV0FBVyxFQUFFLDJDQUEyQztRQUN4RCxJQUFJLEVBQUUsbUJBQVUsQ0FBQyxVQUFVO1FBQzNCLElBQUksRUFBRSxvRUFBb0U7UUFDMUUsT0FBTyxFQUFFLDJDQUEyQztLQUNyRDtJQUNELElBQUksRUFBRTtRQUNKLFFBQVEsRUFBRSxNQUFNO1FBQ2hCLFdBQVcsRUFBRSx1QkFBdUI7UUFDcEMsSUFBSSxFQUFFLG1CQUFVLENBQUMsVUFBVTtRQUMzQixJQUFJLEVBQUUsZ0JBQWdCO1FBQ3RCLE9BQU8sRUFBRSwyQ0FBMkM7S0FDckQ7SUFDRCxhQUFhLEVBQUU7UUFDYixRQUFRLEVBQUUsYUFBYTtRQUN2QixXQUFXLEVBQUUsK0JBQStCO1FBQzVDLElBQUksRUFBRSxtQkFBVSxDQUFDLFVBQVU7UUFDM0IsSUFBSSxFQUFFLHdCQUF3QjtRQUM5QixPQUFPLEVBQUUsZ0RBQWdEO1FBQ3pELE9BQU8sRUFBRTtZQUNQLG9CQUFvQixFQUFFLElBQUk7U0FDM0I7S0FDRjtJQUNELElBQUksRUFBRTtRQUNKLFFBQVEsRUFBRSxNQUFNO1FBQ2hCLFdBQVcsRUFBRSw2RUFBNkU7UUFDMUYsSUFBSSxFQUFFLG1CQUFVLENBQUMsVUFBVTtRQUMzQixJQUFJLEVBQUUseUJBQXlCO1FBQy9CLE9BQU8sRUFBRSxzQ0FBc0M7S0FDaEQ7SUFDRCxPQUFPLEVBQUU7UUFDUCxRQUFRLEVBQUUsU0FBUztRQUNuQixXQUFXLEVBQUUsOEJBQThCO1FBQzNDLElBQUksRUFBRSxtQkFBVSxDQUFDLFVBQVU7UUFDM0IsSUFBSSxFQUFFLGlCQUFpQjtRQUN2QixPQUFPLEVBQUUsNkNBQTZDO1FBQ3RELE9BQU8sRUFBRTtZQUNQLFNBQVMsRUFBRTtnQkFDVCxLQUFLLEVBQUUsQ0FBRSxLQUFLLENBQUU7Z0JBQ2hCLE1BQU0sRUFBRSxDQUFFLEtBQUssQ0FBRTtnQkFDakIsa0ZBQWtGO2dCQUNsRixLQUFLLEVBQUUsQ0FBRSxLQUFLLEVBQUUsTUFBTSxDQUFFO2FBQ3pCO1NBQ0Y7UUFDRCx3QkFBd0I7UUFDeEIsT0FBTyxFQUFFLElBQUk7S0FDZDtJQUNELGVBQWU7SUFDZixZQUFZLEVBQUU7UUFDWixRQUFRLEVBQUUsY0FBYztRQUN4QixXQUFXLEVBQUUsd0ZBQXdGO1FBQ3JHLElBQUksRUFBRSxtQkFBVSxDQUFDLE1BQU07UUFDdkIsSUFBSSxFQUFFLGdEQUFnRDtRQUN0RCxPQUFPLEVBQUUsOENBQThDO0tBQ3hEO0lBQ0QsUUFBUSxFQUFFO1FBQ1IsUUFBUSxFQUFFLFVBQVU7UUFDcEIsV0FBVyxFQUFFLDBDQUEwQztRQUN2RCxJQUFJLEVBQUUsbUJBQVUsQ0FBQyxNQUFNO1FBQ3ZCLElBQUksRUFBRSwyQkFBMkI7UUFDakMsT0FBTyxFQUFFLGtEQUFrRDtLQUM1RDtJQUNELGdCQUFnQixFQUFFO1FBQ2hCLFFBQVEsRUFBRSxnQkFBZ0I7UUFDMUIsV0FBVyxFQUFFLGlEQUFpRDtRQUM5RCxJQUFJLEVBQUUsbUJBQVUsQ0FBQyxNQUFNO1FBQ3ZCLElBQUksRUFBRSwrQkFBK0I7UUFDckMsT0FBTyxFQUFFLDBDQUEwQztRQUNuRCxVQUFVLEVBQUU7WUFDVixXQUFXO1NBQ1o7S0FDRjtJQUNELFFBQVEsRUFBRTtRQUNSLFFBQVEsRUFBRSxVQUFVO1FBQ3BCLFdBQVcsRUFBRSw0Q0FBNEM7UUFDekQsSUFBSSxFQUFFLG1CQUFVLENBQUMsTUFBTTtRQUN2QixJQUFJLEVBQUUsbUJBQW1CO1FBQ3pCLE9BQU8sRUFBRSx1REFBdUQ7S0FDakU7SUFDRCxhQUFhLEVBQUU7UUFDYixRQUFRLEVBQUUsYUFBYTtRQUN2QixXQUFXLEVBQUUscUNBQXFDO1FBQ2xELElBQUksRUFBRSxtQkFBVSxDQUFDLE1BQU07UUFDdkIsSUFBSSxFQUFFLHdCQUF3QjtRQUM5QixPQUFPLEVBQUUsNkNBQTZDO0tBQ3ZEO0lBQ0QsVUFBVSxFQUFFO1FBQ1YsUUFBUSxFQUFFLFlBQVk7UUFDdEIsV0FBVyxFQUFFLDhFQUE4RTtRQUMzRixJQUFJLEVBQUUsbUJBQVUsQ0FBQyxNQUFNO1FBQ3ZCLElBQUksRUFBRSxpQkFBaUI7UUFDdkIsT0FBTyxFQUFFLDRDQUE0QztLQUN0RDtJQUNELFdBQVcsRUFBRTtRQUNYLFFBQVEsRUFBRSxXQUFXO1FBQ3JCLFdBQVcsRUFBRSw4RUFBOEU7UUFDM0YsSUFBSSxFQUFFLG1CQUFVLENBQUMsTUFBTTtRQUN2QixJQUFJLEVBQUUsaUJBQWlCO1FBQ3ZCLE9BQU8sRUFBRSwyQ0FBMkM7S0FDckQ7SUFDRCxNQUFNLEVBQUU7UUFDTixRQUFRLEVBQUUsUUFBUTtRQUNsQixXQUFXLEVBQUUsbUVBQW1FO1FBQ2hGLElBQUksRUFBRSxtQkFBVSxDQUFDLE1BQU07UUFDdkIsSUFBSSxFQUFFLGVBQWU7UUFDckIsT0FBTyxFQUFFLCtDQUErQztLQUN6RDtJQUNELGlCQUFpQjtJQUNqQixjQUFjLEVBQUU7UUFDZCxRQUFRLEVBQUUsY0FBYztRQUN4QixXQUFXLEVBQUUsK0VBQStFO1FBQzVGLElBQUksRUFBRSxtQkFBVSxDQUFDLFFBQVE7UUFDekIsSUFBSSxFQUFFLHVCQUF1QjtRQUM3QixPQUFPLEVBQUUsbUNBQW1DO1FBQzVDLE9BQU8sRUFBRTtZQUNQLG9FQUFvRTtZQUNwRSxhQUFhLEVBQUUsQ0FBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsS0FBSyxDQUFFO1lBQzlELFNBQVMsRUFBRTtnQkFDVCxLQUFLLEVBQUUsRUFBRTtnQkFDVCxLQUFLLEVBQUUsQ0FBRSxLQUFLLEVBQUUsS0FBSyxDQUFFO2dCQUN2QixPQUFPLEVBQUUsQ0FBRSxLQUFLLEVBQUUsS0FBSyxDQUFFO2dCQUN6QixLQUFLLEVBQUUsQ0FBRSxLQUFLLEVBQUUsS0FBSyxDQUFFO2dCQUN2QixHQUFHLEVBQUUsQ0FBRSxLQUFLLEVBQUUsS0FBSyxDQUFFO2FBQ3RCO1lBQ0QsUUFBUSxFQUFFO2dCQUNSLEtBQUssRUFBRSxDQUFFLFVBQVUsQ0FBRTtnQkFDckIsS0FBSyxFQUFFLENBQUUsVUFBVSxDQUFFO2dCQUNyQixPQUFPLEVBQUUsQ0FBRSxVQUFVLENBQUU7Z0JBQ3ZCLEtBQUssRUFBRSxDQUFFLFVBQVUsQ0FBRTtnQkFDckIsR0FBRyxFQUFFLENBQUUsY0FBYyxFQUFFLGdCQUFnQixDQUFFO2FBQzFDO1NBQ0Y7S0FDRjtJQUNELGNBQWMsRUFBRTtRQUNkLFFBQVEsRUFBRSxjQUFjO1FBQ3hCLFdBQVcsRUFBRSwrRUFBK0U7UUFDNUYsSUFBSSxFQUFFLG1CQUFVLENBQUMsUUFBUTtRQUN6QixJQUFJLEVBQUUsdUJBQXVCO1FBQzdCLE9BQU8sRUFBRSxtQ0FBbUM7UUFDNUMsT0FBTyxFQUFFO1lBQ1Asb0VBQW9FO1lBQ3BFLGFBQWEsRUFBRSxDQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssQ0FBRTtZQUNyRCxTQUFTLEVBQUU7Z0JBQ1QsS0FBSyxFQUFFLEVBQUU7Z0JBQ1QsS0FBSyxFQUFFLENBQUUsS0FBSyxFQUFFLEtBQUssQ0FBRTtnQkFDdkIsT0FBTyxFQUFFLENBQUUsS0FBSyxDQUFFO2dCQUNsQixHQUFHLEVBQUUsRUFBRTthQUNSO1lBQ0QsUUFBUSxFQUFFO2dCQUNSLEtBQUssRUFBRSxDQUFFLFVBQVUsQ0FBRTtnQkFDckIsS0FBSyxFQUFFLENBQUUsVUFBVSxDQUFFO2dCQUNyQixPQUFPLEVBQUUsQ0FBRSxVQUFVLENBQUU7Z0JBQ3ZCLEdBQUcsRUFBRSxDQUFFLGNBQWMsQ0FBRTthQUN4QjtTQUNGO0tBQ0Y7SUFDRCxhQUFhLEVBQUU7UUFDYixRQUFRLEVBQUUsYUFBYTtRQUN2QixXQUFXLEVBQUUsOEVBQThFO1FBQzNGLElBQUksRUFBRSxtQkFBVSxDQUFDLFFBQVE7UUFDekIsSUFBSSxFQUFFLHNCQUFzQjtRQUM1QixPQUFPLEVBQUUsbUNBQW1DO1FBQzVDLE9BQU8sRUFBRTtZQUNQLG1EQUFtRDtZQUNuRCxjQUFjLEVBQUUsU0FBUztZQUN6QixtRUFBbUU7WUFDbkUsbUVBQW1FO1lBQ25FLGFBQWEsRUFBRSxDQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssQ0FBRTtZQUNqRCxTQUFTLEVBQUU7Z0JBQ1QsR0FBRyxFQUFFLEVBQUU7Z0JBQ1AsS0FBSyxFQUFFLEVBQUU7Z0JBQ1QsS0FBSyxFQUFFLEVBQUU7Z0JBQ1QsR0FBRyxFQUFFLEVBQUU7YUFDUjtZQUNELFFBQVEsRUFBRTtnQkFDUixHQUFHLEVBQUUsQ0FBRSxPQUFPLENBQUU7Z0JBQ2hCLEtBQUssRUFBRSxDQUFFLE9BQU8sQ0FBRTtnQkFDbEIsS0FBSyxFQUFFLENBQUUsT0FBTyxDQUFFO2dCQUNsQixHQUFHLEVBQUUsQ0FBRSxXQUFXLENBQUU7YUFDckI7U0FDRjtLQUNGO0lBQ0QsY0FBYyxFQUFFO1FBQ2QsUUFBUSxFQUFFLGNBQWM7UUFDeEIsV0FBVyxFQUFFLCtFQUErRTtRQUM1RixJQUFJLEVBQUUsbUJBQVUsQ0FBQyxRQUFRO1FBQ3pCLElBQUksRUFBRSx1QkFBdUI7UUFDN0IsT0FBTyxFQUFFLG1DQUFtQztRQUM1QyxPQUFPLEVBQUU7WUFDUCxvREFBb0Q7WUFDcEQsY0FBYyxFQUFFLFVBQVU7WUFDMUIsb0VBQW9FO1lBQ3BFLG9FQUFvRTtZQUNwRSxhQUFhLEVBQUUsQ0FBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLENBQUU7WUFDckQsU0FBUyxFQUFFO2dCQUNULEtBQUssRUFBRSxFQUFFO2dCQUNULEtBQUssRUFBRSxDQUFFLEtBQUssRUFBRSxLQUFLLENBQUU7Z0JBQ3ZCLE9BQU8sRUFBRSxDQUFFLEtBQUssRUFBRSxLQUFLLENBQUU7Z0JBQ3pCLEdBQUcsRUFBRSxDQUFFLEtBQUssRUFBRSxLQUFLLENBQUU7YUFDdEI7WUFDRCxRQUFRLEVBQUU7Z0JBQ1IsS0FBSyxFQUFFLENBQUUsVUFBVSxDQUFFO2dCQUNyQixLQUFLLEVBQUUsQ0FBRSxVQUFVLENBQUU7Z0JBQ3JCLE9BQU8sRUFBRSxDQUFFLFVBQVUsQ0FBRTtnQkFDdkIsR0FBRyxFQUFFLENBQUUsY0FBYyxDQUFFO2FBQ3hCO1NBQ0Y7S0FDRjtJQUNELGFBQWEsRUFBRTtRQUNiLFFBQVEsRUFBRSxhQUFhO1FBQ3ZCLFdBQVcsRUFBRSw4RUFBOEU7UUFDM0YsSUFBSSxFQUFFLG1CQUFVLENBQUMsUUFBUTtRQUN6QixJQUFJLEVBQUUsc0JBQXNCO1FBQzVCLE9BQU8sRUFBRSxtQ0FBbUM7UUFDNUMsT0FBTyxFQUFFO1lBQ1AsbUVBQW1FO1lBQ25FLG1FQUFtRTtZQUNuRSxhQUFhLEVBQUUsQ0FBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsS0FBSyxDQUFFO1lBQzlELFNBQVMsRUFBRTtnQkFDVCxLQUFLLEVBQUUsRUFBRTtnQkFDVCxLQUFLLEVBQUUsQ0FBRSxLQUFLLEVBQUUsS0FBSyxDQUFFO2dCQUN2QixPQUFPLEVBQUUsQ0FBRSxLQUFLLEVBQUUsS0FBSyxDQUFFO2dCQUN6QixLQUFLLEVBQUUsQ0FBRSxLQUFLLEVBQUUsS0FBSyxDQUFFO2dCQUN2QixHQUFHLEVBQUUsRUFBRTthQUNSO1lBQ0QsUUFBUSxFQUFFO2dCQUNSLEtBQUssRUFBRSxDQUFFLFNBQVMsQ0FBRTtnQkFDcEIsS0FBSyxFQUFFLENBQUUsU0FBUyxDQUFFO2dCQUNwQixPQUFPLEVBQUUsQ0FBRSxTQUFTLENBQUU7Z0JBQ3RCLEtBQUssRUFBRSxDQUFFLFNBQVMsQ0FBRTtnQkFDcEIsR0FBRyxFQUFFLENBQUUsYUFBYSxDQUFFO2FBQ3ZCO1NBQ0Y7S0FDRjtJQUNELGVBQWUsRUFBRTtRQUNmLFFBQVEsRUFBRSxlQUFlO1FBQ3pCLFdBQVcsRUFBRSxnRkFBZ0Y7UUFDN0YsSUFBSSxFQUFFLG1CQUFVLENBQUMsUUFBUTtRQUN6QixJQUFJLEVBQUUsd0JBQXdCO1FBQzlCLE9BQU8sRUFBRSxtQ0FBbUM7UUFDNUMsT0FBTyxFQUFFO1lBQ1AscUVBQXFFO1lBQ3JFLHFFQUFxRTtZQUNyRSxhQUFhLEVBQUUsQ0FBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLE9BQU8sQ0FBRTtZQUMxQyxTQUFTLEVBQUU7Z0JBQ1QsR0FBRyxFQUFFLEVBQUU7Z0JBQ1AsS0FBSyxFQUFFLEVBQUU7Z0JBQ1QsS0FBSyxFQUFFLEVBQUU7YUFDVjtZQUNELFFBQVEsRUFBRTtnQkFDUixHQUFHLEVBQUUsQ0FBRSxXQUFXLENBQUU7Z0JBQ3BCLEtBQUssRUFBRSxDQUFFLFdBQVcsQ0FBRTtnQkFDdEIsS0FBSyxFQUFFLENBQUUsZUFBZSxDQUFFO2FBQzNCO1NBQ0Y7S0FDRjtJQUNELGVBQWUsRUFBRTtRQUNmLFFBQVEsRUFBRSxlQUFlO1FBQ3pCLFdBQVcsRUFBRSxnRkFBZ0Y7UUFDN0YsSUFBSSxFQUFFLG1CQUFVLENBQUMsUUFBUTtRQUN6QixJQUFJLEVBQUUsd0JBQXdCO1FBQzlCLE9BQU8sRUFBRSxtQ0FBbUM7UUFDNUMsT0FBTyxFQUFFO1lBQ1AscUVBQXFFO1lBQ3JFLHFFQUFxRTtZQUNyRSxhQUFhLEVBQUUsQ0FBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLE9BQU8sQ0FBRTtZQUMxQyxTQUFTLEVBQUU7Z0JBQ1QsR0FBRyxFQUFFLEVBQUU7Z0JBQ1AsS0FBSyxFQUFFLEVBQUU7Z0JBQ1QsS0FBSyxFQUFFLEVBQUU7YUFDVjtZQUNELFFBQVEsRUFBRTtnQkFDUixHQUFHLEVBQUUsQ0FBRSxXQUFXLENBQUU7Z0JBQ3BCLEtBQUssRUFBRSxDQUFFLFdBQVcsQ0FBRTtnQkFDdEIsS0FBSyxFQUFFLENBQUUsZUFBZSxDQUFFO2FBQzNCO1NBQ0Y7S0FDRjtJQUNELHFCQUFxQixFQUFFO1FBQ3JCLFFBQVEsRUFBRSxxQkFBcUI7UUFDL0IsV0FBVyxFQUFFLHNGQUFzRjtRQUNuRyxJQUFJLEVBQUUsbUJBQVUsQ0FBQyxRQUFRO1FBQ3pCLElBQUksRUFBRSw4QkFBOEI7UUFDcEMsT0FBTyxFQUFFLG1DQUFtQztRQUM1QyxPQUFPLEVBQUU7WUFDUCwyRUFBMkU7WUFDM0UsMkVBQTJFO1lBQzNFLGFBQWEsRUFBRSxDQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsS0FBSyxDQUFFO1lBQ3hDLFNBQVMsRUFBRTtnQkFDVCxHQUFHLEVBQUUsRUFBRTtnQkFDUCxLQUFLLEVBQUUsRUFBRTtnQkFDVCxHQUFHLEVBQUUsRUFBRTthQUNSO1lBQ0QsUUFBUSxFQUFFO2dCQUNSLEdBQUcsRUFBRSxDQUFFLGlCQUFpQixDQUFFO2dCQUMxQixLQUFLLEVBQUUsQ0FBRSxpQkFBaUIsQ0FBRTtnQkFDNUIsR0FBRyxFQUFFLENBQUUscUJBQXFCLENBQUU7YUFDL0I7U0FDRjtLQUNGO0lBQ0QsY0FBYyxFQUFFO1FBQ2QsUUFBUSxFQUFFLGNBQWM7UUFDeEIsV0FBVyxFQUFFLCtFQUErRTtRQUM1RixJQUFJLEVBQUUsbUJBQVUsQ0FBQyxRQUFRO1FBQ3pCLElBQUksRUFBRSx1QkFBdUI7UUFDN0IsT0FBTyxFQUFFLG1DQUFtQztRQUM1QyxPQUFPLEVBQUU7WUFDUCxvRUFBb0U7WUFDcEUsb0VBQW9FO1lBQ3BFLGFBQWEsRUFBRSxDQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsS0FBSyxDQUFFO1lBQ3hDLFNBQVMsRUFBRTtnQkFDVCxHQUFHLEVBQUUsRUFBRTtnQkFDUCxLQUFLLEVBQUUsRUFBRTtnQkFDVCxHQUFHLEVBQUUsQ0FBRSxLQUFLLEVBQUUsS0FBSyxDQUFFO2FBQ3RCO1lBQ0QsUUFBUSxFQUFFO2dCQUNSLEdBQUcsRUFBRSxDQUFFLFVBQVUsQ0FBRTtnQkFDbkIsS0FBSyxFQUFFLENBQUUsVUFBVSxDQUFFO2dCQUNyQixHQUFHLEVBQUUsQ0FBRSxjQUFjLENBQUU7YUFDeEI7U0FDRjtLQUNGO0lBQ0QsWUFBWSxFQUFFO1FBQ1osUUFBUSxFQUFFLFlBQVk7UUFDdEIsV0FBVyxFQUFFLDZFQUE2RTtRQUMxRixJQUFJLEVBQUUsbUJBQVUsQ0FBQyxRQUFRO1FBQ3pCLElBQUksRUFBRSxxQkFBcUI7UUFDM0IsT0FBTyxFQUFFLG1DQUFtQztRQUM1QyxPQUFPLEVBQUU7WUFDUCxrRUFBa0U7WUFDbEUsa0VBQWtFO1lBQ2xFLGFBQWEsRUFBRSxDQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE9BQU8sQ0FBRTtZQUNyRCxTQUFTLEVBQUU7Z0JBQ1QsR0FBRyxFQUFFLEVBQUU7Z0JBQ1AsS0FBSyxFQUFFLENBQUUsS0FBSyxFQUFFLEtBQUssQ0FBRTtnQkFDdkIsT0FBTyxFQUFFLENBQUUsS0FBSyxFQUFFLEtBQUssQ0FBRTtnQkFDekIsS0FBSyxFQUFFLEVBQUU7YUFDVjtZQUNELFFBQVEsRUFBRTtnQkFDUixHQUFHLEVBQUUsQ0FBRSxVQUFVLENBQUU7Z0JBQ25CLEtBQUssRUFBRSxDQUFFLFVBQVUsQ0FBRTtnQkFDckIsT0FBTyxFQUFFLENBQUUsUUFBUSxDQUFFO2dCQUNyQixLQUFLLEVBQUUsQ0FBRSxjQUFjLENBQUU7YUFDMUI7U0FDRjtLQUNGO0lBQ0QsY0FBYyxFQUFFO1FBQ2QsUUFBUSxFQUFFLGNBQWM7UUFDeEIsV0FBVyxFQUFFLCtFQUErRTtRQUM1RixJQUFJLEVBQUUsbUJBQVUsQ0FBQyxRQUFRO1FBQ3pCLElBQUksRUFBRSx1QkFBdUI7UUFDN0IsT0FBTyxFQUFFLG1DQUFtQztRQUM1QyxPQUFPLEVBQUU7WUFDUCxvRUFBb0U7WUFDcEUsYUFBYSxFQUFFLENBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLENBQUU7WUFDMUMsU0FBUyxFQUFFO2dCQUNULEtBQUssRUFBRSxFQUFFO2dCQUNULEtBQUssRUFBRSxFQUFFO2dCQUNULEdBQUcsRUFBRSxFQUFFO2FBQ1I7WUFDRCxRQUFRLEVBQUU7Z0JBQ1IsS0FBSyxFQUFFLENBQUUsVUFBVSxDQUFFO2dCQUNyQixLQUFLLEVBQUUsQ0FBRSxVQUFVLENBQUU7Z0JBQ3JCLEdBQUcsRUFBRSxDQUFFLGNBQWMsQ0FBRTthQUN4QjtTQUNGO0tBQ0Y7SUFDRCxhQUFhLEVBQUU7UUFDYixRQUFRLEVBQUUsYUFBYTtRQUN2QixXQUFXLEVBQUUsOEVBQThFO1FBQzNGLElBQUksRUFBRSxtQkFBVSxDQUFDLFFBQVE7UUFDekIsSUFBSSxFQUFFLHNCQUFzQjtRQUM1QixPQUFPLEVBQUUsbUNBQW1DO1FBQzVDLE9BQU8sRUFBRTtZQUNQLG1EQUFtRDtZQUNuRCxjQUFjLEVBQUUsU0FBUztZQUN6QixtRUFBbUU7WUFDbkUsYUFBYSxFQUFFLENBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLENBQUU7WUFDMUMsU0FBUyxFQUFFO2dCQUNULEtBQUssRUFBRSxFQUFFO2dCQUNULEtBQUssRUFBRSxFQUFFO2dCQUNULEdBQUcsRUFBRSxFQUFFO2FBQ1I7WUFDRCxRQUFRLEVBQUU7Z0JBQ1IsS0FBSyxFQUFFLENBQUUsU0FBUyxDQUFFO2dCQUNwQixLQUFLLEVBQUUsQ0FBRSxTQUFTLENBQUU7Z0JBQ3BCLEdBQUcsRUFBRSxDQUFFLGFBQWEsQ0FBRTthQUN2QjtTQUNGO0tBQ0Y7SUFDRCxZQUFZLEVBQUU7UUFDWixRQUFRLEVBQUUsWUFBWTtRQUN0QixXQUFXLEVBQUUsNkVBQTZFO1FBQzFGLElBQUksRUFBRSxtQkFBVSxDQUFDLFFBQVE7UUFDekIsSUFBSSxFQUFFLHFCQUFxQjtRQUMzQixPQUFPLEVBQUUsbUNBQW1DO1FBQzVDLE9BQU8sRUFBRTtZQUNQLGtFQUFrRTtZQUNsRSxhQUFhLEVBQUUsQ0FBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLE9BQU8sQ0FBRTtZQUMxQyxTQUFTLEVBQUU7Z0JBQ1QsR0FBRyxFQUFFLEVBQUU7Z0JBQ1AsS0FBSyxFQUFFLEVBQUU7Z0JBQ1QsS0FBSyxFQUFFLEVBQUU7YUFDVjtZQUNELFFBQVEsRUFBRTtnQkFDUixHQUFHLEVBQUUsQ0FBRSxRQUFRLENBQUU7Z0JBQ2pCLEtBQUssRUFBRSxDQUFFLFFBQVEsQ0FBRTtnQkFDbkIsS0FBSyxFQUFFLENBQUUsWUFBWSxDQUFFO2FBQ3hCO1NBQ0Y7S0FDRjtJQUNELFdBQVcsRUFBRTtRQUNYLFFBQVEsRUFBRSxXQUFXO1FBQ3JCLFdBQVcsRUFBRSw0RUFBNEU7UUFDekYsSUFBSSxFQUFFLG1CQUFVLENBQUMsUUFBUTtRQUN6QixJQUFJLEVBQUUsb0JBQW9CO1FBQzFCLE9BQU8sRUFBRSxtQ0FBbUM7UUFDNUMsT0FBTyxFQUFFO1lBQ1AsaUVBQWlFO1lBQ2pFLGFBQWEsRUFBRSxDQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsS0FBSyxDQUFFO1lBQ3hDLFNBQVMsRUFBRTtnQkFDVCxHQUFHLEVBQUUsRUFBRTtnQkFDUCxLQUFLLEVBQUUsQ0FBRSxLQUFLLEVBQUUsS0FBSyxDQUFFO2dCQUN2QixHQUFHLEVBQUUsQ0FBRSxLQUFLLEVBQUUsS0FBSyxDQUFFO2FBQ3RCO1lBQ0QsUUFBUSxFQUFFO2dCQUNSLEdBQUcsRUFBRSxDQUFFLE9BQU8sQ0FBRTtnQkFDaEIsS0FBSyxFQUFFLENBQUUsT0FBTyxDQUFFO2dCQUNsQixHQUFHLEVBQUUsQ0FBRSxXQUFXLENBQUU7YUFDckI7U0FDRjtLQUNGO0lBQ0QsZUFBZTtJQUNmLEdBQUcsRUFBRTtRQUNILFFBQVEsRUFBRSxLQUFLO1FBQ2YsV0FBVyxFQUFFLG9DQUFvQztRQUNqRCxJQUFJLEVBQUUsbUJBQVUsQ0FBQyxNQUFNO1FBQ3ZCLElBQUksRUFBRSxTQUFTO1FBQ2YsT0FBTyxFQUFFLHFDQUFxQztRQUM5QyxPQUFPLEVBQUU7WUFDUCxPQUFPLEVBQUUsQ0FBQztTQUNYO0tBQ0Y7SUFDRCxTQUFTLEVBQUU7UUFDVCxRQUFRLEVBQUUsV0FBVztRQUNyQixXQUFXLEVBQUUsMkdBQTJHO1FBQ3hILElBQUksRUFBRSxtQkFBVSxDQUFDLE1BQU07UUFDdkIsSUFBSSxFQUFFLHNCQUFzQjtRQUM1QixPQUFPLEVBQUUsa0RBQWtEO0tBQzVEO0lBQ0QsV0FBVyxFQUFFO1FBQ1gsUUFBUSxFQUFFLFdBQVc7UUFDckIsV0FBVyxFQUFFLGdDQUFnQztRQUM3QyxJQUFJLEVBQUUsbUJBQVUsQ0FBQyxNQUFNO1FBQ3ZCLElBQUksRUFBRSxnQkFBZ0I7UUFDdEIsT0FBTyxFQUFFLDRDQUE0QztLQUN0RDtJQUNELGVBQWUsRUFBRTtRQUNmLFFBQVEsRUFBRSxlQUFlO1FBQ3pCLFdBQVcsRUFBRSxrR0FBa0c7UUFDL0csSUFBSSxFQUFFLG1CQUFVLENBQUMsTUFBTTtRQUN2QixJQUFJLEVBQUUseUJBQXlCO1FBQy9CLE9BQU8sRUFBRSxxREFBcUQ7S0FDL0Q7SUFDRCxRQUFRLEVBQUU7UUFDUixRQUFRLEVBQUUsVUFBVTtRQUNwQixXQUFXLEVBQUUsa0VBQWtFO1FBQy9FLElBQUksRUFBRSxtQkFBVSxDQUFDLFFBQVE7UUFDekIsSUFBSSxFQUFFLG1CQUFtQjtRQUN6QixPQUFPLEVBQUUsK0NBQStDO1FBQ3hELE9BQU8sRUFBRTtZQUNQLDZCQUE2QjtZQUM3QixPQUFPLEVBQUUsQ0FBQztTQUNYO0tBQ0Y7SUFDRCxrQkFBa0IsRUFBRTtRQUNsQixRQUFRLEVBQUUsa0JBQWtCO1FBQzVCLFdBQVcsRUFBRSxrRUFBa0U7UUFDL0UsSUFBSSxFQUFFLG1CQUFVLENBQUMsTUFBTTtRQUN2QixJQUFJLEVBQUUsb0JBQW9CO1FBQzFCLE9BQU8sRUFBRSxnREFBZ0Q7UUFDekQsT0FBTyxFQUFFO1lBQ1AsT0FBTyxFQUFFLENBQUM7U0FDWDtLQUNGO0lBQ0QsMkJBQTJCLEVBQUU7UUFDM0IsUUFBUSxFQUFFLDJCQUEyQjtRQUNyQyxXQUFXLEVBQUUsa0hBQWtIO1FBQy9ILElBQUksRUFBRSxtQkFBVSxDQUFDLE1BQU07UUFDdkIsSUFBSSxFQUFFLDZDQUE2QztRQUNuRCxPQUFPLEVBQUUseUVBQXlFO0tBQ25GO0lBQ0QsZUFBZSxFQUFFO1FBQ2YsUUFBUSxFQUFFLGVBQWU7UUFDekIsV0FBVyxFQUFFLDBEQUEwRDtRQUN2RSxJQUFJLEVBQUUsbUJBQVUsQ0FBQyxNQUFNO1FBQ3ZCLElBQUksRUFBRSwwQkFBMEI7UUFDaEMsT0FBTyxFQUFFLHNEQUFzRDtLQUNoRTtJQUNELFNBQVMsRUFBRTtRQUNULFFBQVEsRUFBRSxXQUFXO1FBQ3JCLFdBQVcsRUFBRSxvQkFBb0I7UUFDakMsSUFBSSxFQUFFLG1CQUFVLENBQUMsTUFBTTtRQUN2QixJQUFJLEVBQUUsbUJBQW1CO1FBQ3pCLE9BQU8sRUFBRSwrQ0FBK0M7S0FDekQ7SUFDRCxpQkFBaUIsRUFBRTtRQUNqQixRQUFRLEVBQUUsaUJBQWlCO1FBQzNCLFdBQVcsRUFBRSxvREFBb0Q7UUFDakUsSUFBSSxFQUFFLG1CQUFVLENBQUMsTUFBTTtRQUN2QixJQUFJLEVBQUUscUJBQXFCO1FBQzNCLE9BQU8sRUFBRSxpREFBaUQ7S0FDM0Q7SUFDRCxJQUFJLEVBQUU7UUFDSixRQUFRLEVBQUUsTUFBTTtRQUNoQixXQUFXLEVBQUUsMEJBQTBCO1FBQ3ZDLElBQUksRUFBRSxtQkFBVSxDQUFDLE1BQU07UUFDdkIsSUFBSSxFQUFFLFdBQVc7UUFDakIsT0FBTyxFQUFFLHVDQUF1QztLQUNqRDtJQUNELFdBQVcsRUFBRTtRQUNYLFFBQVEsRUFBRSxhQUFhO1FBQ3ZCLFdBQVcsRUFBRSwrQ0FBK0M7UUFDNUQsSUFBSSxFQUFFLG1CQUFVLENBQUMsTUFBTTtRQUN2QixJQUFJLEVBQUUsbUNBQW1DO1FBQ3pDLE9BQU8sRUFBRSwrREFBK0Q7S0FDekU7SUFDRCxXQUFXLEVBQUU7UUFDWCxRQUFRLEVBQUUsYUFBYTtRQUN2QixXQUFXLEVBQUUsdUJBQXVCO1FBQ3BDLElBQUksRUFBRSxtQkFBVSxDQUFDLE1BQU07UUFDdkIsSUFBSSxFQUFFLHFCQUFxQjtRQUMzQixPQUFPLEVBQUUsaURBQWlEO0tBQzNEO0lBQ0QsU0FBUyxFQUFFO1FBQ1QsUUFBUSxFQUFFLFdBQVc7UUFDckIsV0FBVyxFQUFFLDBFQUEwRTtRQUN2RixJQUFJLEVBQUUsbUJBQVUsQ0FBQyxNQUFNO1FBQ3ZCLElBQUksRUFBRSxpQkFBaUI7UUFDdkIsT0FBTyxFQUFFLDZDQUE2QztLQUN2RDtJQUNELFNBQVMsRUFBRTtRQUNULFFBQVEsRUFBRSxXQUFXO1FBQ3JCLFdBQVcsRUFBRSw2Q0FBNkM7UUFDMUQsSUFBSSxFQUFFLG1CQUFVLENBQUMsTUFBTTtRQUN2QixJQUFJLEVBQUUscUJBQXFCO1FBQzNCLE9BQU8sRUFBRSxpREFBaUQ7S0FDM0Q7SUFDRCxFQUFFLEVBQUU7UUFDRixRQUFRLEVBQUUsSUFBSTtRQUNkLFdBQVcsRUFBRSxpQ0FBaUM7UUFDOUMsSUFBSSxFQUFFLG1CQUFVLENBQUMsTUFBTTtRQUN2QixJQUFJLEVBQUUscUJBQXFCO1FBQzNCLE9BQU8sRUFBRSxpREFBaUQ7S0FDM0Q7SUFDRCxJQUFJLEVBQUU7UUFDSixRQUFRLEVBQUUsTUFBTTtRQUNoQixXQUFXLEVBQUUsc0ZBQXNGO1FBQ25HLElBQUksRUFBRSxtQkFBVSxDQUFDLE1BQU07UUFDdkIsSUFBSSxFQUFFLGVBQWU7UUFDckIsT0FBTyxFQUFFLDJDQUEyQztLQUNyRDtJQUNELE9BQU8sRUFBRTtRQUNQLFFBQVEsRUFBRSxTQUFTO1FBQ25CLFdBQVcsRUFBRSxnREFBZ0Q7UUFDN0QsSUFBSSxFQUFFLG1CQUFVLENBQUMsTUFBTTtRQUN2QixJQUFJLEVBQUUsbUJBQW1CO1FBQ3pCLE9BQU8sRUFBRSwrQ0FBK0M7S0FDekQ7SUFDRCxHQUFHLEVBQUU7UUFDSCxRQUFRLEVBQUUsS0FBSztRQUNmLFdBQVcsRUFBRSxxREFBcUQ7UUFDbEUsSUFBSSxFQUFFLG1CQUFVLENBQUMsTUFBTTtRQUN2QixJQUFJLEVBQUUsV0FBVztRQUNqQixPQUFPLEVBQUUsdUNBQXVDO0tBQ2pEO0lBQ0QsZ0JBQWdCLEVBQUU7UUFDaEIsUUFBUSxFQUFFLGdCQUFnQjtRQUMxQixXQUFXLEVBQUUsd0NBQXdDO1FBQ3JELElBQUksRUFBRSxtQkFBVSxDQUFDLE1BQU07UUFDdkIsSUFBSSxFQUFFLDJCQUEyQjtRQUNqQyxPQUFPLEVBQUUsdURBQXVEO0tBQ2pFO0lBQ0QsUUFBUSxFQUFFO1FBQ1IsUUFBUSxFQUFFLFVBQVU7UUFDcEIsV0FBVyxFQUFFLHNEQUFzRDtRQUNuRSxJQUFJLEVBQUUsbUJBQVUsQ0FBQyxNQUFNO1FBQ3ZCLElBQUksRUFBRSxxQkFBcUI7UUFDM0IsT0FBTyxFQUFFLGlEQUFpRDtLQUMzRDtJQUNELFlBQVksRUFBRTtRQUNaLFFBQVEsRUFBRSxZQUFZO1FBQ3RCLFdBQVcsRUFBRSx5RUFBeUU7UUFDdEYsSUFBSSxFQUFFLG1CQUFVLENBQUMsTUFBTTtRQUN2QixJQUFJLEVBQUUsc0JBQXNCO1FBQzVCLE9BQU8sRUFBRSxrREFBa0Q7S0FDNUQ7SUFDRCxlQUFlLEVBQUU7UUFDZixRQUFRLEVBQUUsZUFBZTtRQUN6QixXQUFXLEVBQUUsMkhBQTJIO1FBQ3hJLElBQUksRUFBRSxtQkFBVSxDQUFDLE1BQU07UUFDdkIsSUFBSSxFQUFFLHNCQUFzQjtRQUM1QixPQUFPLEVBQUUsa0RBQWtEO0tBQzVEO0lBQ0QsS0FBSyxFQUFFO1FBQ0wsUUFBUSxFQUFFLE9BQU87UUFDakIsV0FBVyxFQUFFLDJLQUEySztRQUN4TCxJQUFJLEVBQUUsbUJBQVUsQ0FBQyxNQUFNO1FBQ3ZCLElBQUksRUFBRSxjQUFjO1FBQ3BCLE9BQU8sRUFBRSwwQ0FBMEM7S0FDcEQ7SUFDRCxHQUFHLEVBQUU7UUFDSCxRQUFRLEVBQUUsS0FBSztRQUNmLFdBQVcsRUFBRSwySUFBMkk7UUFDeEosSUFBSSxFQUFFLG1CQUFVLENBQUMsTUFBTTtRQUN2QixJQUFJLEVBQUUsaUJBQWlCO1FBQ3ZCLE9BQU8sRUFBRSw2Q0FBNkM7S0FDdkQ7SUFDRCxVQUFVLEVBQUU7UUFDVixRQUFRLEVBQUUsVUFBVTtRQUNwQixXQUFXLEVBQUUsc0ZBQXNGO1FBQ25HLElBQUksRUFBRSxtQkFBVSxDQUFDLE1BQU07UUFDdkIsSUFBSSxFQUFFLHNCQUFzQjtRQUM1QixPQUFPLEVBQUUsa0RBQWtEO0tBQzVEO0lBQ0QsTUFBTSxFQUFFO1FBQ04sUUFBUSxFQUFFLFFBQVE7UUFDbEIsV0FBVyxFQUFFLCtDQUErQztRQUM1RCxJQUFJLEVBQUUsbUJBQVUsQ0FBQyxNQUFNO1FBQ3ZCLElBQUksRUFBRSxzQkFBc0I7UUFDNUIsT0FBTyxFQUFFLGtEQUFrRDtLQUM1RDtJQUNELE1BQU0sRUFBRTtRQUNOLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFdBQVcsRUFBRSw2Q0FBNkM7UUFDMUQsSUFBSSxFQUFFLG1CQUFVLENBQUMsTUFBTTtRQUN2QixJQUFJLEVBQUUsbUJBQW1CO1FBQ3pCLE9BQU8sRUFBRSwrQ0FBK0M7S0FDekQ7SUFDRCxRQUFRLEVBQUU7UUFDUixRQUFRLEVBQUUsVUFBVTtRQUNwQixXQUFXLEVBQUUsa0RBQWtEO1FBQy9ELElBQUksRUFBRSxtQkFBVSxDQUFDLE1BQU07UUFDdkIsSUFBSSxFQUFFLG9CQUFvQjtRQUMxQixPQUFPLEVBQUUsZ0RBQWdEO0tBQzFEO0lBQ0QsaUJBQWlCLEVBQUU7UUFDakIsUUFBUSxFQUFFLGlCQUFpQjtRQUMzQixXQUFXLEVBQUUsdUlBQXVJO1FBQ3BKLElBQUksRUFBRSxtQkFBVSxDQUFDLE1BQU07UUFDdkIsSUFBSSxFQUFFLDJCQUEyQjtRQUNqQyxPQUFPLEVBQUUsdURBQXVEO0tBQ2pFO0lBQ0QsY0FBYyxFQUFFO1FBQ2QsUUFBUSxFQUFFLGNBQWM7UUFDeEIsV0FBVyxFQUFFLHlEQUF5RDtRQUN0RSxJQUFJLEVBQUUsbUJBQVUsQ0FBQyxNQUFNO1FBQ3ZCLElBQUksRUFBRSxjQUFjO1FBQ3BCLE9BQU8sRUFBRSwwQ0FBMEM7S0FDcEQ7SUFDRCxZQUFZLEVBQUU7UUFDWixRQUFRLEVBQUUsWUFBWTtRQUN0QixXQUFXLEVBQUUsNkJBQTZCO1FBQzFDLElBQUksRUFBRSxtQkFBVSxDQUFDLE1BQU07UUFDdkIsSUFBSSxFQUFFLHFCQUFxQjtRQUMzQixPQUFPLEVBQUUsaURBQWlEO0tBQzNEO0lBQ0QsYUFBYSxFQUFFO1FBQ2IsUUFBUSxFQUFFLGFBQWE7UUFDdkIsV0FBVyxFQUFFLDRCQUE0QjtRQUN6QyxJQUFJLEVBQUUsbUJBQVUsQ0FBQyxNQUFNO1FBQ3ZCLElBQUksRUFBRSx1QkFBdUI7UUFDN0IsT0FBTyxFQUFFLG1EQUFtRDtLQUM3RDtJQUNELFVBQVUsRUFBRTtRQUNWLFFBQVEsRUFBRSxVQUFVO1FBQ3BCLFdBQVcsRUFBRSw4RkFBOEY7UUFDM0csSUFBSSxFQUFFLG1CQUFVLENBQUMsTUFBTTtRQUN2QixJQUFJLEVBQUUsZUFBZTtRQUNyQixPQUFPLEVBQUUsMkNBQTJDO0tBQ3JEO0lBQ0QsT0FBTyxFQUFFO1FBQ1AsUUFBUSxFQUFFLFNBQVM7UUFDbkIsV0FBVyxFQUFFLHlEQUF5RDtRQUN0RSxJQUFJLEVBQUUsbUJBQVUsQ0FBQyxNQUFNO1FBQ3ZCLElBQUksRUFBRSx1QkFBdUI7UUFDN0IsT0FBTyxFQUFFLG1EQUFtRDtLQUM3RDtJQUNELGdCQUFnQixFQUFFO1FBQ2hCLFFBQVEsRUFBRSxnQkFBZ0I7UUFDMUIsV0FBVyxFQUFFLDhEQUE4RDtRQUMzRSxJQUFJLEVBQUUsbUJBQVUsQ0FBQyxNQUFNO1FBQ3ZCLElBQUksRUFBRSx5QkFBeUI7UUFDL0IsT0FBTyxFQUFFLHFEQUFxRDtLQUMvRDtJQUNELE1BQU0sRUFBRTtRQUNOLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFdBQVcsRUFBRSw2QkFBNkI7UUFDMUMsSUFBSSxFQUFFLG1CQUFVLENBQUMsTUFBTTtRQUN2QixJQUFJLEVBQUUsa0JBQWtCO1FBQ3hCLE9BQU8sRUFBRSw4Q0FBOEM7S0FDeEQ7SUFDRCxtQkFBbUI7SUFDbkIsVUFBVSxFQUFFO1FBQ1YsUUFBUSxFQUFFLFlBQVk7UUFDdEIsV0FBVyxFQUFFLDJEQUEyRDtRQUN4RSxJQUFJLEVBQUUsbUJBQVUsQ0FBQyxVQUFVO1FBQzNCLElBQUksRUFBRSxzQkFBc0I7UUFDNUIsT0FBTyxFQUFFLGtEQUFrRDtLQUM1RDtJQUNELEtBQUssRUFBRTtRQUNMLFFBQVEsRUFBRSxPQUFPO1FBQ2pCLFdBQVcsRUFBRSwwRkFBMEY7UUFDdkcsSUFBSSxFQUFFLG1CQUFVLENBQUMsTUFBTTtRQUN2QixJQUFJLEVBQUUsNEJBQTRCO1FBQ2xDLE9BQU8sRUFBRSx3REFBd0Q7S0FDbEU7SUFDRCxNQUFNLEVBQUU7UUFDTixnREFBZ0Q7UUFDaEQsUUFBUSxFQUFFLHNCQUFzQjtRQUNoQyxXQUFXLEVBQUUsaUVBQWlFO1FBQzlFLElBQUksRUFBRSxtQkFBVSxDQUFDLE1BQU07UUFDdkIsSUFBSSxFQUFFLHdCQUF3QjtRQUM5QixPQUFPLEVBQUUsb0RBQW9EO0tBQzlEO0lBQ0QsaUJBQWlCLEVBQUU7UUFDakIsUUFBUSxFQUFFLGlCQUFpQjtRQUMzQixPQUFPLEVBQUUsMkRBQTJEO1FBQ3BFLElBQUksRUFBRSw4QkFBOEI7UUFDcEMsV0FBVyxFQUFFLDJEQUEyRDtRQUN4RSxJQUFJLEVBQUUsbUJBQVUsQ0FBQyxNQUFNO1FBQ3ZCLE9BQU8sRUFBRTtZQUNQLFNBQVMsRUFBRTtnQkFDVCxLQUFLLEVBQUUsQ0FBRSxLQUFLLENBQUU7Z0JBQ2hCLE1BQU0sRUFBRSxDQUFFLEtBQUssQ0FBRTtnQkFDakIsS0FBSyxFQUFFLENBQUUsS0FBSyxDQUFFO2FBQ2pCO1NBQ0Y7S0FDRjtJQUNELHNCQUFzQixFQUFFO1FBQ3RCLFFBQVEsRUFBRSxzQkFBc0I7UUFDaEMsT0FBTyxFQUFFLDJEQUEyRDtRQUNwRSxJQUFJLEVBQUUsK0JBQStCO1FBQ3JDLFdBQVcsRUFBRSxtREFBbUQ7UUFDaEUsSUFBSSxFQUFFLG1CQUFVLENBQUMsTUFBTTtRQUN2QixPQUFPLEVBQUU7WUFDUCxTQUFTLEVBQUU7Z0JBQ1QsS0FBSyxFQUFFLENBQUUsS0FBSyxDQUFFO2dCQUNoQixNQUFNLEVBQUUsQ0FBRSxLQUFLLENBQUU7Z0JBQ2pCLEtBQUssRUFBRSxDQUFFLEtBQUssQ0FBRTthQUNqQjtTQUNGO0tBQ0Y7Q0FDTyxDQUFDO0FBS1gsTUFBTSxlQUFlLEdBQXlDO0lBQzVELEdBQUcsUUFBUTtDQUNaLENBQUM7QUFFRixrQkFBZSxlQUFlLENBQUMifQ==
|
|
@@ -1,3 +1,150 @@
|
|
|
1
1
|
import { EggAppConfig, PowerPartial } from 'egg';
|
|
2
|
+
import { SyncDeleteMode, SyncMode } from '../app/common/constants';
|
|
3
|
+
export declare const cnpmcoreConfig: {
|
|
4
|
+
name: string;
|
|
5
|
+
/**
|
|
6
|
+
* enable hook or not
|
|
7
|
+
*/
|
|
8
|
+
hookEnable: boolean;
|
|
9
|
+
/**
|
|
10
|
+
* mac custom hooks count
|
|
11
|
+
*/
|
|
12
|
+
hooksLimit: number;
|
|
13
|
+
/**
|
|
14
|
+
* upstream registry url
|
|
15
|
+
*/
|
|
16
|
+
sourceRegistry: string;
|
|
17
|
+
/**
|
|
18
|
+
* upstream registry is base on `cnpmcore` or not
|
|
19
|
+
* if your upstream is official npm registry, please turn it off
|
|
20
|
+
*/
|
|
21
|
+
sourceRegistryIsCNpm: boolean;
|
|
22
|
+
/**
|
|
23
|
+
* sync upstream first
|
|
24
|
+
*/
|
|
25
|
+
syncUpstreamFirst: boolean;
|
|
26
|
+
/**
|
|
27
|
+
* sync upstream timeout, default is 3mins
|
|
28
|
+
*/
|
|
29
|
+
sourceRegistrySyncTimeout: number;
|
|
30
|
+
/**
|
|
31
|
+
* sync task high water size, default is 100
|
|
32
|
+
*/
|
|
33
|
+
taskQueueHighWaterSize: number;
|
|
34
|
+
/**
|
|
35
|
+
* sync mode
|
|
36
|
+
* - none: don't sync npm package
|
|
37
|
+
* - admin: don't sync npm package,only admin can create sync task by sync contorller.
|
|
38
|
+
* - all: sync all npm packages
|
|
39
|
+
* - exist: only sync exist packages, effected when `enableCheckRecentlyUpdated` or `enableChangesStream` is enabled
|
|
40
|
+
*/
|
|
41
|
+
syncMode: SyncMode;
|
|
42
|
+
syncDeleteMode: SyncDeleteMode;
|
|
43
|
+
syncPackageWorkerMaxConcurrentTasks: number;
|
|
44
|
+
triggerHookWorkerMaxConcurrentTasks: number;
|
|
45
|
+
createTriggerHookWorkerMaxConcurrentTasks: number;
|
|
46
|
+
/**
|
|
47
|
+
* stop syncing these packages in future
|
|
48
|
+
*/
|
|
49
|
+
syncPackageBlockList: string[];
|
|
50
|
+
/**
|
|
51
|
+
* check recently from https://www.npmjs.com/browse/updated, if use set changesStreamRegistry to cnpmcore,
|
|
52
|
+
* maybe you should disable it
|
|
53
|
+
*/
|
|
54
|
+
enableCheckRecentlyUpdated: boolean;
|
|
55
|
+
/**
|
|
56
|
+
* mirror binary, default is false
|
|
57
|
+
*/
|
|
58
|
+
enableSyncBinary: boolean;
|
|
59
|
+
/**
|
|
60
|
+
* sync binary source api, default is `${sourceRegistry}/-/binary`
|
|
61
|
+
*/
|
|
62
|
+
syncBinaryFromAPISource: string;
|
|
63
|
+
/**
|
|
64
|
+
* enable sync downloads data from source registry https://github.com/cnpm/cnpmcore/issues/108
|
|
65
|
+
* all three parameters must be configured at the same time to take effect
|
|
66
|
+
*/
|
|
67
|
+
enableSyncDownloadData: boolean;
|
|
68
|
+
syncDownloadDataSourceRegistry: string;
|
|
69
|
+
/**
|
|
70
|
+
* should be YYYY-MM-DD format
|
|
71
|
+
*/
|
|
72
|
+
syncDownloadDataMaxDate: string;
|
|
73
|
+
/**
|
|
74
|
+
* @see https://github.com/npm/registry-follower-tutorial
|
|
75
|
+
*/
|
|
76
|
+
enableChangesStream: boolean;
|
|
77
|
+
checkChangesStreamInterval: number;
|
|
78
|
+
changesStreamRegistry: string;
|
|
79
|
+
/**
|
|
80
|
+
* handle _changes request mode, default is 'streaming', please set it to 'json' when on cnpmcore registry
|
|
81
|
+
*/
|
|
82
|
+
changesStreamRegistryMode: string;
|
|
83
|
+
/**
|
|
84
|
+
* registry url
|
|
85
|
+
*/
|
|
86
|
+
registry: string;
|
|
87
|
+
/**
|
|
88
|
+
* https://docs.npmjs.com/cli/v6/using-npm/config#always-auth npm <= 6
|
|
89
|
+
* if `alwaysAuth=true`, all api request required access token
|
|
90
|
+
*/
|
|
91
|
+
alwaysAuth: boolean;
|
|
92
|
+
/**
|
|
93
|
+
* white scope list
|
|
94
|
+
*/
|
|
95
|
+
allowScopes: string[];
|
|
96
|
+
/**
|
|
97
|
+
* allow publish non-scope package, disable by default
|
|
98
|
+
*/
|
|
99
|
+
allowPublishNonScopePackage: boolean;
|
|
100
|
+
/**
|
|
101
|
+
* Public registration is allowed, otherwise only admins can login
|
|
102
|
+
*/
|
|
103
|
+
allowPublicRegistration: boolean;
|
|
104
|
+
/**
|
|
105
|
+
* default system admins
|
|
106
|
+
*/
|
|
107
|
+
admins: {
|
|
108
|
+
cnpmcore_admin: string;
|
|
109
|
+
};
|
|
110
|
+
/**
|
|
111
|
+
* use webauthn for login, https://webauthn.guide/
|
|
112
|
+
* only support platform authenticators, browser support: https://webauthn.me/browser-support
|
|
113
|
+
*/
|
|
114
|
+
enableWebAuthn: boolean;
|
|
115
|
+
/**
|
|
116
|
+
* http response cache control header
|
|
117
|
+
*/
|
|
118
|
+
enableCDN: boolean;
|
|
119
|
+
/**
|
|
120
|
+
* if you are using CDN, can override it
|
|
121
|
+
* it meaning cache 300s on CDN server and client side.
|
|
122
|
+
*/
|
|
123
|
+
cdnCacheControlHeader: string;
|
|
124
|
+
/**
|
|
125
|
+
* if you are using CDN, can set it to 'Accept, Accept-Encoding'
|
|
126
|
+
*/
|
|
127
|
+
cdnVaryHeader: string;
|
|
128
|
+
/**
|
|
129
|
+
* store full package version manifests data to database table(package_version_manifests), default is false
|
|
130
|
+
*/
|
|
131
|
+
enableStoreFullPackageVersionManifestsToDatabase: boolean;
|
|
132
|
+
/**
|
|
133
|
+
* only support npm as client and npm >= 7.0.0 allow publish action
|
|
134
|
+
*/
|
|
135
|
+
enableNpmClientAndVersionCheck: boolean;
|
|
136
|
+
/**
|
|
137
|
+
* sync when package not found, only effect when syncMode = all/exist
|
|
138
|
+
*/
|
|
139
|
+
syncNotFound: boolean;
|
|
140
|
+
/**
|
|
141
|
+
* redirect to source registry when package not found
|
|
142
|
+
*/
|
|
143
|
+
redirectNotFound: boolean;
|
|
144
|
+
/**
|
|
145
|
+
* enable unpkg features, https://github.com/cnpm/cnpmcore/issues/452
|
|
146
|
+
*/
|
|
147
|
+
enableUnpkg: boolean;
|
|
148
|
+
};
|
|
2
149
|
declare const _default: (appInfo: EggAppConfig) => PowerPartial<EggAppConfig>;
|
|
3
150
|
export default _default;
|
|
@@ -3,95 +3,166 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.cnpmcoreConfig = void 0;
|
|
6
7
|
const assert_1 = __importDefault(require("assert"));
|
|
7
8
|
const path_1 = require("path");
|
|
8
9
|
const oss_cnpm_1 = __importDefault(require("oss-cnpm"));
|
|
9
10
|
const typebox_1 = require("../app/port/typebox");
|
|
10
11
|
const constants_1 = require("../app/common/constants");
|
|
12
|
+
exports.cnpmcoreConfig = {
|
|
13
|
+
name: 'cnpm',
|
|
14
|
+
/**
|
|
15
|
+
* enable hook or not
|
|
16
|
+
*/
|
|
17
|
+
hookEnable: false,
|
|
18
|
+
/**
|
|
19
|
+
* mac custom hooks count
|
|
20
|
+
*/
|
|
21
|
+
hooksLimit: 20,
|
|
22
|
+
/**
|
|
23
|
+
* upstream registry url
|
|
24
|
+
*/
|
|
25
|
+
sourceRegistry: 'https://registry.npmjs.org',
|
|
26
|
+
/**
|
|
27
|
+
* upstream registry is base on `cnpmcore` or not
|
|
28
|
+
* if your upstream is official npm registry, please turn it off
|
|
29
|
+
*/
|
|
30
|
+
sourceRegistryIsCNpm: false,
|
|
31
|
+
/**
|
|
32
|
+
* sync upstream first
|
|
33
|
+
*/
|
|
34
|
+
syncUpstreamFirst: false,
|
|
35
|
+
/**
|
|
36
|
+
* sync upstream timeout, default is 3mins
|
|
37
|
+
*/
|
|
38
|
+
sourceRegistrySyncTimeout: 180000,
|
|
39
|
+
/**
|
|
40
|
+
* sync task high water size, default is 100
|
|
41
|
+
*/
|
|
42
|
+
taskQueueHighWaterSize: 100,
|
|
43
|
+
/**
|
|
44
|
+
* sync mode
|
|
45
|
+
* - none: don't sync npm package
|
|
46
|
+
* - admin: don't sync npm package,only admin can create sync task by sync contorller.
|
|
47
|
+
* - all: sync all npm packages
|
|
48
|
+
* - exist: only sync exist packages, effected when `enableCheckRecentlyUpdated` or `enableChangesStream` is enabled
|
|
49
|
+
*/
|
|
50
|
+
syncMode: constants_1.SyncMode.none,
|
|
51
|
+
syncDeleteMode: constants_1.SyncDeleteMode.delete,
|
|
52
|
+
syncPackageWorkerMaxConcurrentTasks: 10,
|
|
53
|
+
triggerHookWorkerMaxConcurrentTasks: 10,
|
|
54
|
+
createTriggerHookWorkerMaxConcurrentTasks: 10,
|
|
55
|
+
/**
|
|
56
|
+
* stop syncing these packages in future
|
|
57
|
+
*/
|
|
58
|
+
syncPackageBlockList: [],
|
|
59
|
+
/**
|
|
60
|
+
* check recently from https://www.npmjs.com/browse/updated, if use set changesStreamRegistry to cnpmcore,
|
|
61
|
+
* maybe you should disable it
|
|
62
|
+
*/
|
|
63
|
+
enableCheckRecentlyUpdated: true,
|
|
64
|
+
/**
|
|
65
|
+
* mirror binary, default is false
|
|
66
|
+
*/
|
|
67
|
+
enableSyncBinary: false,
|
|
68
|
+
/**
|
|
69
|
+
* sync binary source api, default is `${sourceRegistry}/-/binary`
|
|
70
|
+
*/
|
|
71
|
+
syncBinaryFromAPISource: '',
|
|
72
|
+
/**
|
|
73
|
+
* enable sync downloads data from source registry https://github.com/cnpm/cnpmcore/issues/108
|
|
74
|
+
* all three parameters must be configured at the same time to take effect
|
|
75
|
+
*/
|
|
76
|
+
enableSyncDownloadData: false,
|
|
77
|
+
syncDownloadDataSourceRegistry: '',
|
|
78
|
+
/**
|
|
79
|
+
* should be YYYY-MM-DD format
|
|
80
|
+
*/
|
|
81
|
+
syncDownloadDataMaxDate: '',
|
|
82
|
+
/**
|
|
83
|
+
* @see https://github.com/npm/registry-follower-tutorial
|
|
84
|
+
*/
|
|
85
|
+
enableChangesStream: false,
|
|
86
|
+
checkChangesStreamInterval: 500,
|
|
87
|
+
changesStreamRegistry: 'https://replicate.npmjs.com',
|
|
88
|
+
/**
|
|
89
|
+
* handle _changes request mode, default is 'streaming', please set it to 'json' when on cnpmcore registry
|
|
90
|
+
*/
|
|
91
|
+
changesStreamRegistryMode: 'streaming',
|
|
92
|
+
/**
|
|
93
|
+
* registry url
|
|
94
|
+
*/
|
|
95
|
+
registry: 'http://localhost:7001',
|
|
96
|
+
/**
|
|
97
|
+
* https://docs.npmjs.com/cli/v6/using-npm/config#always-auth npm <= 6
|
|
98
|
+
* if `alwaysAuth=true`, all api request required access token
|
|
99
|
+
*/
|
|
100
|
+
alwaysAuth: false,
|
|
101
|
+
/**
|
|
102
|
+
* white scope list
|
|
103
|
+
*/
|
|
104
|
+
allowScopes: [
|
|
105
|
+
'@cnpm',
|
|
106
|
+
'@cnpmcore',
|
|
107
|
+
'@example',
|
|
108
|
+
],
|
|
109
|
+
/**
|
|
110
|
+
* allow publish non-scope package, disable by default
|
|
111
|
+
*/
|
|
112
|
+
allowPublishNonScopePackage: false,
|
|
113
|
+
/**
|
|
114
|
+
* Public registration is allowed, otherwise only admins can login
|
|
115
|
+
*/
|
|
116
|
+
allowPublicRegistration: true,
|
|
117
|
+
/**
|
|
118
|
+
* default system admins
|
|
119
|
+
*/
|
|
120
|
+
admins: {
|
|
121
|
+
// name: email
|
|
122
|
+
cnpmcore_admin: 'admin@cnpmjs.org',
|
|
123
|
+
},
|
|
124
|
+
/**
|
|
125
|
+
* use webauthn for login, https://webauthn.guide/
|
|
126
|
+
* only support platform authenticators, browser support: https://webauthn.me/browser-support
|
|
127
|
+
*/
|
|
128
|
+
enableWebAuthn: false,
|
|
129
|
+
/**
|
|
130
|
+
* http response cache control header
|
|
131
|
+
*/
|
|
132
|
+
enableCDN: false,
|
|
133
|
+
/**
|
|
134
|
+
* if you are using CDN, can override it
|
|
135
|
+
* it meaning cache 300s on CDN server and client side.
|
|
136
|
+
*/
|
|
137
|
+
cdnCacheControlHeader: 'public, max-age=300',
|
|
138
|
+
/**
|
|
139
|
+
* if you are using CDN, can set it to 'Accept, Accept-Encoding'
|
|
140
|
+
*/
|
|
141
|
+
cdnVaryHeader: 'Accept, Accept-Encoding',
|
|
142
|
+
/**
|
|
143
|
+
* store full package version manifests data to database table(package_version_manifests), default is false
|
|
144
|
+
*/
|
|
145
|
+
enableStoreFullPackageVersionManifestsToDatabase: false,
|
|
146
|
+
/**
|
|
147
|
+
* only support npm as client and npm >= 7.0.0 allow publish action
|
|
148
|
+
*/
|
|
149
|
+
enableNpmClientAndVersionCheck: true,
|
|
150
|
+
/**
|
|
151
|
+
* sync when package not found, only effect when syncMode = all/exist
|
|
152
|
+
*/
|
|
153
|
+
syncNotFound: false,
|
|
154
|
+
/**
|
|
155
|
+
* redirect to source registry when package not found
|
|
156
|
+
*/
|
|
157
|
+
redirectNotFound: true,
|
|
158
|
+
/**
|
|
159
|
+
* enable unpkg features, https://github.com/cnpm/cnpmcore/issues/452
|
|
160
|
+
*/
|
|
161
|
+
enableUnpkg: true,
|
|
162
|
+
};
|
|
11
163
|
exports.default = (appInfo) => {
|
|
12
164
|
const config = {};
|
|
13
|
-
config.cnpmcore =
|
|
14
|
-
name: 'cnpm',
|
|
15
|
-
hooksLimit: 20,
|
|
16
|
-
sourceRegistry: 'https://registry.npmjs.org',
|
|
17
|
-
// upstream registry is base on `cnpmcore` or not
|
|
18
|
-
// if your upstream is official npm registry, please turn it off
|
|
19
|
-
sourceRegistryIsCNpm: false,
|
|
20
|
-
syncUpstreamFirst: false,
|
|
21
|
-
// 3 mins
|
|
22
|
-
sourceRegistrySyncTimeout: 180000,
|
|
23
|
-
taskQueueHighWaterSize: 100,
|
|
24
|
-
// sync mode
|
|
25
|
-
// - none: don't sync npm package
|
|
26
|
-
// - admin: don't sync npm package,only admin can create sync task by sync contorller.
|
|
27
|
-
// - all: sync all npm packages
|
|
28
|
-
// - exist: only sync exist packages, effected when `enableCheckRecentlyUpdated` or `enableChangesStream` is enabled
|
|
29
|
-
syncMode: constants_1.SyncMode.none,
|
|
30
|
-
syncDeleteMode: constants_1.SyncDeleteMode.delete,
|
|
31
|
-
hookEnable: false,
|
|
32
|
-
syncPackageWorkerMaxConcurrentTasks: 10,
|
|
33
|
-
triggerHookWorkerMaxConcurrentTasks: 10,
|
|
34
|
-
createTriggerHookWorkerMaxConcurrentTasks: 10,
|
|
35
|
-
// stop syncing these packages in future
|
|
36
|
-
syncPackageBlockList: [],
|
|
37
|
-
// check recently from https://www.npmjs.com/browse/updated, if use set changesStreamRegistry to cnpmcore,
|
|
38
|
-
// maybe you should disable it
|
|
39
|
-
enableCheckRecentlyUpdated: true,
|
|
40
|
-
// mirror binary, default is false
|
|
41
|
-
enableSyncBinary: false,
|
|
42
|
-
// cnpmcore api: https://r.cnpmjs.org/-/binary
|
|
43
|
-
syncBinaryFromAPISource: '',
|
|
44
|
-
// enable sync downloads data from source registry https://github.com/cnpm/cnpmcore/issues/108
|
|
45
|
-
// all three parameters must be configured at the same time to take effect
|
|
46
|
-
enableSyncDownloadData: false,
|
|
47
|
-
syncDownloadDataSourceRegistry: '',
|
|
48
|
-
syncDownloadDataMaxDate: '',
|
|
49
|
-
// https://github.com/npm/registry-follower-tutorial
|
|
50
|
-
enableChangesStream: false,
|
|
51
|
-
checkChangesStreamInterval: 500,
|
|
52
|
-
changesStreamRegistry: 'https://replicate.npmjs.com',
|
|
53
|
-
// handle _changes request mode, default is 'streaming', please set it to 'json' when on cnpmcore registry
|
|
54
|
-
changesStreamRegistryMode: 'streaming',
|
|
55
|
-
registry: 'http://localhost:7001',
|
|
56
|
-
// https://docs.npmjs.com/cli/v6/using-npm/config#always-auth npm <= 6
|
|
57
|
-
// if `alwaysAuth=true`, all api request required access token
|
|
58
|
-
alwaysAuth: false,
|
|
59
|
-
// white scope list
|
|
60
|
-
allowScopes: [
|
|
61
|
-
'@cnpm',
|
|
62
|
-
'@cnpmcore',
|
|
63
|
-
'@example',
|
|
64
|
-
],
|
|
65
|
-
// allow publish non-scope package, disable by default
|
|
66
|
-
allowPublishNonScopePackage: false,
|
|
67
|
-
// Public registration is allowed, otherwise only admins can login
|
|
68
|
-
allowPublicRegistration: true,
|
|
69
|
-
// default system admins
|
|
70
|
-
admins: {
|
|
71
|
-
// name: email
|
|
72
|
-
cnpmcore_admin: 'admin@cnpmjs.org',
|
|
73
|
-
},
|
|
74
|
-
// use webauthn for login, https://webauthn.guide/
|
|
75
|
-
// only support platform authenticators, browser support: https://webauthn.me/browser-support
|
|
76
|
-
enableWebAuthn: false,
|
|
77
|
-
// http response cache control header
|
|
78
|
-
enableCDN: false,
|
|
79
|
-
// if you are using CDN, can override it
|
|
80
|
-
// it meaning cache 300s on CDN server and client side.
|
|
81
|
-
cdnCacheControlHeader: 'public, max-age=300',
|
|
82
|
-
// if you are using CDN, can set it to 'Accept, Accept-Encoding'
|
|
83
|
-
cdnVaryHeader: 'Accept, Accept-Encoding',
|
|
84
|
-
// store full package version manifests data to database table(package_version_manifests), default is false
|
|
85
|
-
enableStoreFullPackageVersionManifestsToDatabase: false,
|
|
86
|
-
// only support npm as client and npm >= 7.0.0 allow publish action
|
|
87
|
-
enableNpmClientAndVersionCheck: true,
|
|
88
|
-
// sync when package not found, only effect when syncMode = all/exist
|
|
89
|
-
syncNotFound: false,
|
|
90
|
-
// redirect to source registry when package not found
|
|
91
|
-
redirectNotFound: true,
|
|
92
|
-
// enable unpkg features, https://github.com/cnpm/cnpmcore/issues/452
|
|
93
|
-
enableUnpkg: true,
|
|
94
|
-
};
|
|
165
|
+
config.cnpmcore = exports.cnpmcoreConfig;
|
|
95
166
|
// override config from framework / plugin
|
|
96
167
|
config.dataDir = (0, path_1.join)(appInfo.root, '.cnpmcore');
|
|
97
168
|
config.orm = {
|
|
@@ -176,4 +247,4 @@ exports.default = (appInfo) => {
|
|
|
176
247
|
};
|
|
177
248
|
return config;
|
|
178
249
|
};
|
|
179
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
250
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLmRlZmF1bHQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9jb25maWcvY29uZmlnLmRlZmF1bHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsb0RBQTRCO0FBQzVCLCtCQUE0QjtBQUU1Qix3REFBaUM7QUFDakMsaURBQStDO0FBQy9DLHVEQUFtRTtBQUV0RCxRQUFBLGNBQWMsR0FBRztJQUM1QixJQUFJLEVBQUUsTUFBTTtJQUNaOztPQUVHO0lBQ0gsVUFBVSxFQUFFLEtBQUs7SUFDakI7O09BRUc7SUFDSCxVQUFVLEVBQUUsRUFBRTtJQUNkOztPQUVHO0lBQ0gsY0FBYyxFQUFFLDRCQUE0QjtJQUM1Qzs7O09BR0c7SUFDSCxvQkFBb0IsRUFBRSxLQUFLO0lBQzNCOztPQUVHO0lBQ0gsaUJBQWlCLEVBQUUsS0FBSztJQUN4Qjs7T0FFRztJQUNILHlCQUF5QixFQUFFLE1BQU07SUFDakM7O09BRUc7SUFDSCxzQkFBc0IsRUFBRSxHQUFHO0lBQzNCOzs7Ozs7T0FNRztJQUNILFFBQVEsRUFBRSxvQkFBUSxDQUFDLElBQUk7SUFDdkIsY0FBYyxFQUFFLDBCQUFjLENBQUMsTUFBTTtJQUNyQyxtQ0FBbUMsRUFBRSxFQUFFO0lBQ3ZDLG1DQUFtQyxFQUFFLEVBQUU7SUFDdkMseUNBQXlDLEVBQUUsRUFBRTtJQUM3Qzs7T0FFRztJQUNILG9CQUFvQixFQUFFLEVBQWM7SUFDcEM7OztPQUdHO0lBQ0gsMEJBQTBCLEVBQUUsSUFBSTtJQUNoQzs7T0FFRztJQUNILGdCQUFnQixFQUFFLEtBQUs7SUFDdkI7O09BRUc7SUFDSCx1QkFBdUIsRUFBRSxFQUFFO0lBQzNCOzs7T0FHRztJQUNILHNCQUFzQixFQUFFLEtBQUs7SUFDN0IsOEJBQThCLEVBQUUsRUFBRTtJQUNsQzs7T0FFRztJQUNILHVCQUF1QixFQUFFLEVBQUU7SUFDM0I7O09BRUc7SUFDSCxtQkFBbUIsRUFBRSxLQUFLO0lBQzFCLDBCQUEwQixFQUFFLEdB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
|