@serve.zone/appstore 2.2.0 → 2.4.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.
@@ -4,8 +4,8 @@
4
4
  "description": "Multi-node serve.zone control plane for clusters, workload services, domains, and deployments.",
5
5
  "category": "Dev Tools",
6
6
  "iconName": "server",
7
- "latestVersion": "1.1.3",
8
- "versions": ["1.0.0", "1.1.0", "1.1.1", "1.1.2", "1.1.3"],
7
+ "latestVersion": "1.1.5",
8
+ "versions": ["1.0.0", "1.1.0", "1.1.1", "1.1.2", "1.1.3", "1.1.4", "1.1.5"],
9
9
  "maintainer": "serve.zone",
10
10
  "links": {
11
11
  "Source": "https://code.foss.global/serve.zone/cloudly",
@@ -0,0 +1,130 @@
1
+ {
2
+ "image": "code.foss.global/serve.zone/cloudly@sha256:330b4f1617616e655eb411c10067367748f543522c2fc59483b3ff7656d972c6",
3
+ "targetPorts": [
4
+ { "name": "web", "port": 3000, "protocol": "http", "default": true }
5
+ ],
6
+ "envVars": [
7
+ {
8
+ "key": "SERVEZONE_ENVIRONMENT",
9
+ "value": "production",
10
+ "description": "Cloudly runtime environment.",
11
+ "required": true
12
+ },
13
+ {
14
+ "key": "SERVEZONE_PUBLIC_ORIGIN",
15
+ "value": "https://${SERVICE_DOMAIN}",
16
+ "description": "Canonical public Cloudly origin including protocol and optional public port.",
17
+ "required": true
18
+ },
19
+ {
20
+ "key": "SERVEZONE_LISTENPORT",
21
+ "value": "3000",
22
+ "description": "Internal Cloudly HTTP port inside the container.",
23
+ "required": true
24
+ },
25
+ {
26
+ "key": "SERVEZONE_SSLMODE",
27
+ "value": "external",
28
+ "description": "Use external TLS termination through Onebox or dcrouter.",
29
+ "required": true
30
+ },
31
+ {
32
+ "key": "MONGODB_URL",
33
+ "value": "${MONGODB_URI}",
34
+ "description": "Authenticated MongoDB wire-protocol URL provisioned by Onebox Corestore.",
35
+ "required": true
36
+ },
37
+ {
38
+ "key": "MONGODB_NAME",
39
+ "value": "${MONGODB_DATABASE}",
40
+ "description": "MongoDB wire-protocol database name provisioned by Onebox Corestore.",
41
+ "required": true
42
+ },
43
+ {
44
+ "key": "MONGODB_USER",
45
+ "value": "${MONGODB_USERNAME}",
46
+ "description": "MongoDB wire-protocol username provisioned by Onebox Corestore.",
47
+ "required": true
48
+ },
49
+ {
50
+ "key": "MONGODB_PASS",
51
+ "value": "${MONGODB_PASSWORD}",
52
+ "description": "MongoDB wire-protocol password provisioned by Onebox Corestore.",
53
+ "required": true
54
+ },
55
+ {
56
+ "key": "S3_ENDPOINT",
57
+ "value": "onebox-corestore",
58
+ "description": "S3 endpoint host provisioned by Onebox Corestore.",
59
+ "required": true
60
+ },
61
+ {
62
+ "key": "S3_PORT",
63
+ "value": "9000",
64
+ "description": "S3 endpoint port provisioned by Onebox Corestore.",
65
+ "required": true
66
+ },
67
+ {
68
+ "key": "S3_USESSL",
69
+ "value": "false",
70
+ "description": "Use plain HTTP for internal Corestore S3 traffic on the Onebox network.",
71
+ "required": true
72
+ },
73
+ {
74
+ "key": "S3_BUCKET",
75
+ "value": "${S3_BUCKET}",
76
+ "description": "S3 bucket provisioned by Onebox Corestore for Cloudly's registry.",
77
+ "required": true
78
+ },
79
+ {
80
+ "key": "S3_ACCESSKEY",
81
+ "value": "${S3_ACCESS_KEY}",
82
+ "description": "S3 access key provisioned by Onebox Corestore.",
83
+ "required": true
84
+ },
85
+ {
86
+ "key": "S3_SECRETKEY",
87
+ "value": "${S3_SECRET_KEY}",
88
+ "description": "S3 secret key provisioned by Onebox Corestore.",
89
+ "required": true
90
+ }
91
+ ],
92
+ "platformRequirements": {
93
+ "mongodb": true,
94
+ "s3": true
95
+ },
96
+ "platformOidc": {
97
+ "redirectPath": "/auth/oidc/callback",
98
+ "roles": [
99
+ {
100
+ "id": "admin",
101
+ "label": "Administrator",
102
+ "description": "Full Cloudly administration for this hosted instance."
103
+ },
104
+ {
105
+ "id": "user",
106
+ "label": "User",
107
+ "description": "Standard authenticated Cloudly access for this hosted instance."
108
+ }
109
+ ],
110
+ "environmentVariables": {
111
+ "issuerUrl": "SERVEZONE_PLATFORM_OIDC_ISSUER",
112
+ "clientId": "SERVEZONE_PLATFORM_OIDC_CLIENT_ID",
113
+ "clientSecret": "SERVEZONE_PLATFORM_OIDC_CLIENT_SECRET",
114
+ "redirectUri": "SERVEZONE_PLATFORM_OIDC_REDIRECT_URI",
115
+ "audience": "SERVEZONE_PLATFORM_OIDC_AUDIENCE"
116
+ },
117
+ "clientAuthenticationMethod": "client_secret_basic"
118
+ },
119
+ "minOneboxVersion": "7.2.0",
120
+ "changelog": "Require Onebox's allocation-fenced scratch rehearsal and receipt-bound production preparation for the Cloudly 17.1.0 Secrets v2 cutover.",
121
+ "breaking": true,
122
+ "requiresManualReview": true,
123
+ "migrationRequired": true,
124
+ "backupBeforeUpgrade": true,
125
+ "healthCheck": {
126
+ "path": "/status",
127
+ "port": 3000,
128
+ "expectedStatus": 200
129
+ }
130
+ }
@@ -0,0 +1,149 @@
1
+ {
2
+ "image": "code.foss.global/serve.zone/cloudly@sha256:7aec3b1f553292cefd5fd421a70e6c50463af168b14b1e4b127597991efa30dd",
3
+ "targetPorts": [
4
+ { "name": "web", "port": 3000, "protocol": "http", "default": true }
5
+ ],
6
+ "envVars": [
7
+ {
8
+ "key": "SERVEZONE_ENVIRONMENT",
9
+ "value": "production",
10
+ "description": "Cloudly runtime environment.",
11
+ "required": true
12
+ },
13
+ {
14
+ "key": "SERVEZONE_PUBLIC_ORIGIN",
15
+ "value": "https://${SERVICE_DOMAIN}",
16
+ "description": "Canonical public Cloudly origin including protocol and optional public port.",
17
+ "required": true
18
+ },
19
+ {
20
+ "key": "SERVEZONE_LISTENPORT",
21
+ "value": "3000",
22
+ "description": "Internal Cloudly HTTP port inside the container.",
23
+ "required": true
24
+ },
25
+ {
26
+ "key": "SERVEZONE_SSLMODE",
27
+ "value": "external",
28
+ "description": "Use external TLS termination through Onebox or dcrouter.",
29
+ "required": true
30
+ },
31
+ {
32
+ "key": "SERVEZONE_WORKLOADINIT_APPROVAL_PATH",
33
+ "value": "/run/secrets/cloudly-workloadinit-approval.json",
34
+ "description": "Private WorkloadInit release-approval artifact mounted by Onebox for Coreflow secret-runtime registration.",
35
+ "required": true
36
+ },
37
+ {
38
+ "key": "SERVEZONE_WORKLOADINIT_APPROVAL_FILE",
39
+ "description": "Operator-approved WorkloadInit release authority. Onebox stores it encrypted and mounts it only as a root-readable file.",
40
+ "required": true,
41
+ "secret": true,
42
+ "delivery": {
43
+ "type": "file",
44
+ "targetPath": "/run/secrets/cloudly-workloadinit-approval.json",
45
+ "uid": 0,
46
+ "gid": 0,
47
+ "mode": 256
48
+ }
49
+ },
50
+ {
51
+ "key": "MONGODB_URL",
52
+ "value": "${MONGODB_URI}",
53
+ "description": "Authenticated MongoDB wire-protocol URL provisioned by Onebox Corestore.",
54
+ "required": true
55
+ },
56
+ {
57
+ "key": "MONGODB_NAME",
58
+ "value": "${MONGODB_DATABASE}",
59
+ "description": "MongoDB wire-protocol database name provisioned by Onebox Corestore.",
60
+ "required": true
61
+ },
62
+ {
63
+ "key": "MONGODB_USER",
64
+ "value": "${MONGODB_USERNAME}",
65
+ "description": "MongoDB wire-protocol username provisioned by Onebox Corestore.",
66
+ "required": true
67
+ },
68
+ {
69
+ "key": "MONGODB_PASS",
70
+ "value": "${MONGODB_PASSWORD}",
71
+ "description": "MongoDB wire-protocol password provisioned by Onebox Corestore.",
72
+ "required": true
73
+ },
74
+ {
75
+ "key": "S3_ENDPOINT",
76
+ "value": "onebox-corestore",
77
+ "description": "S3 endpoint host provisioned by Onebox Corestore.",
78
+ "required": true
79
+ },
80
+ {
81
+ "key": "S3_PORT",
82
+ "value": "9000",
83
+ "description": "S3 endpoint port provisioned by Onebox Corestore.",
84
+ "required": true
85
+ },
86
+ {
87
+ "key": "S3_USESSL",
88
+ "value": "false",
89
+ "description": "Use plain HTTP for internal Corestore S3 traffic on the Onebox network.",
90
+ "required": true
91
+ },
92
+ {
93
+ "key": "S3_BUCKET",
94
+ "value": "${S3_BUCKET}",
95
+ "description": "S3 bucket provisioned by Onebox Corestore for Cloudly's registry.",
96
+ "required": true
97
+ },
98
+ {
99
+ "key": "S3_ACCESSKEY",
100
+ "value": "${S3_ACCESS_KEY}",
101
+ "description": "S3 access key provisioned by Onebox Corestore.",
102
+ "required": true
103
+ },
104
+ {
105
+ "key": "S3_SECRETKEY",
106
+ "value": "${S3_SECRET_KEY}",
107
+ "description": "S3 secret key provisioned by Onebox Corestore.",
108
+ "required": true
109
+ }
110
+ ],
111
+ "platformRequirements": {
112
+ "mongodb": true,
113
+ "s3": true
114
+ },
115
+ "platformOidc": {
116
+ "redirectPath": "/auth/oidc/callback",
117
+ "roles": [
118
+ {
119
+ "id": "admin",
120
+ "label": "Administrator",
121
+ "description": "Full Cloudly administration for this hosted instance."
122
+ },
123
+ {
124
+ "id": "user",
125
+ "label": "User",
126
+ "description": "Standard authenticated Cloudly access for this hosted instance."
127
+ }
128
+ ],
129
+ "environmentVariables": {
130
+ "issuerUrl": "SERVEZONE_PLATFORM_OIDC_ISSUER",
131
+ "clientId": "SERVEZONE_PLATFORM_OIDC_CLIENT_ID",
132
+ "clientSecret": "SERVEZONE_PLATFORM_OIDC_CLIENT_SECRET",
133
+ "redirectUri": "SERVEZONE_PLATFORM_OIDC_REDIRECT_URI",
134
+ "audience": "SERVEZONE_PLATFORM_OIDC_AUDIENCE"
135
+ },
136
+ "clientAuthenticationMethod": "client_secret_basic"
137
+ },
138
+ "minOneboxVersion": "7.5.0",
139
+ "changelog": "Bind the Cloudly 19.2.0 Secrets v2 target and require Onebox's fenced WorkloadInit approval staging before a new scratch rehearsal.",
140
+ "breaking": true,
141
+ "requiresManualReview": true,
142
+ "migrationRequired": true,
143
+ "backupBeforeUpgrade": true,
144
+ "healthCheck": {
145
+ "path": "/status",
146
+ "port": 3000,
147
+ "expectedStatus": 200
148
+ }
149
+ }
package/appstore.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "schemaVersion": 1,
3
- "updatedAt": "2026-08-07T00:00:00Z",
3
+ "updatedAt": "2026-08-13T00:00:00Z",
4
4
  "apps": [
5
5
  {
6
6
  "id": "nginx",
@@ -152,7 +152,7 @@
152
152
  "description": "Multi-node serve.zone control plane for clusters, workload services, domains, and deployments.",
153
153
  "category": "Dev Tools",
154
154
  "iconName": "server",
155
- "latestVersion": "1.1.3",
155
+ "latestVersion": "1.1.5",
156
156
  "tags": ["serve.zone", "control-plane", "clusters", "deployments"]
157
157
  },
158
158
  {
package/changelog.md CHANGED
@@ -1,5 +1,27 @@
1
1
  # Changelog
2
2
 
3
+ ## 2026-08-13 - 2.4.0
4
+
5
+ ### Features
6
+
7
+ - publish the Cloudly 1.1.5 Secrets v2 target (cloudly)
8
+ - Pin Cloudly 19.2.0 to its exact multi-platform OCI index.
9
+ - Require Onebox 7.5.0 and a root-only encrypted WorkloadInit approval file before retargeting.
10
+ - Preserve manual review, migration, backup, and full-restore-only rollback gates.
11
+
12
+ ### Fixes
13
+
14
+ - update the release toolchain to pnpm 11.21.0 and Node.js types 26.2.0 (deps)
15
+
16
+ ## 2026-08-07 - 2.3.0
17
+
18
+ ### Features
19
+
20
+ - publish the corrected Cloudly 1.1.4 cutover target (cloudly)
21
+ - Preserve immutable Cloudly 1.1.3 while adding 1.1.4 with the same Cloudly 17.1.0 image digest.
22
+ - Require Onebox 7.2.0 for allocation-fenced scratch rehearsal and receipt-bound production preparation.
23
+ - Update packaged App Store data, documentation, and regression coverage for the corrected compatibility gate.
24
+
3
25
  ## 2026-08-07 - 2.2.0
4
26
 
5
27
  ### Fixes
@@ -31,13 +31,15 @@ export const appStorePackageData = {
31
31
  "description": "Multi-node serve.zone control plane for clusters, workload services, domains, and deployments.",
32
32
  "category": "Dev Tools",
33
33
  "iconName": "server",
34
- "latestVersion": "1.1.3",
34
+ "latestVersion": "1.1.5",
35
35
  "versions": [
36
36
  "1.0.0",
37
37
  "1.1.0",
38
38
  "1.1.1",
39
39
  "1.1.2",
40
- "1.1.3"
40
+ "1.1.3",
41
+ "1.1.4",
42
+ "1.1.5"
41
43
  ],
42
44
  "maintainer": "serve.zone",
43
45
  "links": {
@@ -690,6 +692,295 @@ export const appStorePackageData = {
690
692
  "expectedStatus": 200
691
693
  }
692
694
  },
695
+ "apps/cloudly/versions/1.1.4/config.json": {
696
+ "image": "code.foss.global/serve.zone/cloudly@sha256:330b4f1617616e655eb411c10067367748f543522c2fc59483b3ff7656d972c6",
697
+ "targetPorts": [
698
+ {
699
+ "name": "web",
700
+ "port": 3000,
701
+ "protocol": "http",
702
+ "default": true
703
+ }
704
+ ],
705
+ "envVars": [
706
+ {
707
+ "key": "SERVEZONE_ENVIRONMENT",
708
+ "value": "production",
709
+ "description": "Cloudly runtime environment.",
710
+ "required": true
711
+ },
712
+ {
713
+ "key": "SERVEZONE_PUBLIC_ORIGIN",
714
+ "value": "https://${SERVICE_DOMAIN}",
715
+ "description": "Canonical public Cloudly origin including protocol and optional public port.",
716
+ "required": true
717
+ },
718
+ {
719
+ "key": "SERVEZONE_LISTENPORT",
720
+ "value": "3000",
721
+ "description": "Internal Cloudly HTTP port inside the container.",
722
+ "required": true
723
+ },
724
+ {
725
+ "key": "SERVEZONE_SSLMODE",
726
+ "value": "external",
727
+ "description": "Use external TLS termination through Onebox or dcrouter.",
728
+ "required": true
729
+ },
730
+ {
731
+ "key": "MONGODB_URL",
732
+ "value": "${MONGODB_URI}",
733
+ "description": "Authenticated MongoDB wire-protocol URL provisioned by Onebox Corestore.",
734
+ "required": true
735
+ },
736
+ {
737
+ "key": "MONGODB_NAME",
738
+ "value": "${MONGODB_DATABASE}",
739
+ "description": "MongoDB wire-protocol database name provisioned by Onebox Corestore.",
740
+ "required": true
741
+ },
742
+ {
743
+ "key": "MONGODB_USER",
744
+ "value": "${MONGODB_USERNAME}",
745
+ "description": "MongoDB wire-protocol username provisioned by Onebox Corestore.",
746
+ "required": true
747
+ },
748
+ {
749
+ "key": "MONGODB_PASS",
750
+ "value": "${MONGODB_PASSWORD}",
751
+ "description": "MongoDB wire-protocol password provisioned by Onebox Corestore.",
752
+ "required": true
753
+ },
754
+ {
755
+ "key": "S3_ENDPOINT",
756
+ "value": "onebox-corestore",
757
+ "description": "S3 endpoint host provisioned by Onebox Corestore.",
758
+ "required": true
759
+ },
760
+ {
761
+ "key": "S3_PORT",
762
+ "value": "9000",
763
+ "description": "S3 endpoint port provisioned by Onebox Corestore.",
764
+ "required": true
765
+ },
766
+ {
767
+ "key": "S3_USESSL",
768
+ "value": "false",
769
+ "description": "Use plain HTTP for internal Corestore S3 traffic on the Onebox network.",
770
+ "required": true
771
+ },
772
+ {
773
+ "key": "S3_BUCKET",
774
+ "value": "${S3_BUCKET}",
775
+ "description": "S3 bucket provisioned by Onebox Corestore for Cloudly's registry.",
776
+ "required": true
777
+ },
778
+ {
779
+ "key": "S3_ACCESSKEY",
780
+ "value": "${S3_ACCESS_KEY}",
781
+ "description": "S3 access key provisioned by Onebox Corestore.",
782
+ "required": true
783
+ },
784
+ {
785
+ "key": "S3_SECRETKEY",
786
+ "value": "${S3_SECRET_KEY}",
787
+ "description": "S3 secret key provisioned by Onebox Corestore.",
788
+ "required": true
789
+ }
790
+ ],
791
+ "platformRequirements": {
792
+ "mongodb": true,
793
+ "s3": true
794
+ },
795
+ "platformOidc": {
796
+ "redirectPath": "/auth/oidc/callback",
797
+ "roles": [
798
+ {
799
+ "id": "admin",
800
+ "label": "Administrator",
801
+ "description": "Full Cloudly administration for this hosted instance."
802
+ },
803
+ {
804
+ "id": "user",
805
+ "label": "User",
806
+ "description": "Standard authenticated Cloudly access for this hosted instance."
807
+ }
808
+ ],
809
+ "environmentVariables": {
810
+ "issuerUrl": "SERVEZONE_PLATFORM_OIDC_ISSUER",
811
+ "clientId": "SERVEZONE_PLATFORM_OIDC_CLIENT_ID",
812
+ "clientSecret": "SERVEZONE_PLATFORM_OIDC_CLIENT_SECRET",
813
+ "redirectUri": "SERVEZONE_PLATFORM_OIDC_REDIRECT_URI",
814
+ "audience": "SERVEZONE_PLATFORM_OIDC_AUDIENCE"
815
+ },
816
+ "clientAuthenticationMethod": "client_secret_basic"
817
+ },
818
+ "minOneboxVersion": "7.2.0",
819
+ "changelog": "Require Onebox's allocation-fenced scratch rehearsal and receipt-bound production preparation for the Cloudly 17.1.0 Secrets v2 cutover.",
820
+ "breaking": true,
821
+ "requiresManualReview": true,
822
+ "migrationRequired": true,
823
+ "backupBeforeUpgrade": true,
824
+ "healthCheck": {
825
+ "path": "/status",
826
+ "port": 3000,
827
+ "expectedStatus": 200
828
+ }
829
+ },
830
+ "apps/cloudly/versions/1.1.5/config.json": {
831
+ "image": "code.foss.global/serve.zone/cloudly@sha256:7aec3b1f553292cefd5fd421a70e6c50463af168b14b1e4b127597991efa30dd",
832
+ "targetPorts": [
833
+ {
834
+ "name": "web",
835
+ "port": 3000,
836
+ "protocol": "http",
837
+ "default": true
838
+ }
839
+ ],
840
+ "envVars": [
841
+ {
842
+ "key": "SERVEZONE_ENVIRONMENT",
843
+ "value": "production",
844
+ "description": "Cloudly runtime environment.",
845
+ "required": true
846
+ },
847
+ {
848
+ "key": "SERVEZONE_PUBLIC_ORIGIN",
849
+ "value": "https://${SERVICE_DOMAIN}",
850
+ "description": "Canonical public Cloudly origin including protocol and optional public port.",
851
+ "required": true
852
+ },
853
+ {
854
+ "key": "SERVEZONE_LISTENPORT",
855
+ "value": "3000",
856
+ "description": "Internal Cloudly HTTP port inside the container.",
857
+ "required": true
858
+ },
859
+ {
860
+ "key": "SERVEZONE_SSLMODE",
861
+ "value": "external",
862
+ "description": "Use external TLS termination through Onebox or dcrouter.",
863
+ "required": true
864
+ },
865
+ {
866
+ "key": "SERVEZONE_WORKLOADINIT_APPROVAL_PATH",
867
+ "value": "/run/secrets/cloudly-workloadinit-approval.json",
868
+ "description": "Private WorkloadInit release-approval artifact mounted by Onebox for Coreflow secret-runtime registration.",
869
+ "required": true
870
+ },
871
+ {
872
+ "key": "SERVEZONE_WORKLOADINIT_APPROVAL_FILE",
873
+ "description": "Operator-approved WorkloadInit release authority. Onebox stores it encrypted and mounts it only as a root-readable file.",
874
+ "required": true,
875
+ "secret": true,
876
+ "delivery": {
877
+ "type": "file",
878
+ "targetPath": "/run/secrets/cloudly-workloadinit-approval.json",
879
+ "uid": 0,
880
+ "gid": 0,
881
+ "mode": 256
882
+ }
883
+ },
884
+ {
885
+ "key": "MONGODB_URL",
886
+ "value": "${MONGODB_URI}",
887
+ "description": "Authenticated MongoDB wire-protocol URL provisioned by Onebox Corestore.",
888
+ "required": true
889
+ },
890
+ {
891
+ "key": "MONGODB_NAME",
892
+ "value": "${MONGODB_DATABASE}",
893
+ "description": "MongoDB wire-protocol database name provisioned by Onebox Corestore.",
894
+ "required": true
895
+ },
896
+ {
897
+ "key": "MONGODB_USER",
898
+ "value": "${MONGODB_USERNAME}",
899
+ "description": "MongoDB wire-protocol username provisioned by Onebox Corestore.",
900
+ "required": true
901
+ },
902
+ {
903
+ "key": "MONGODB_PASS",
904
+ "value": "${MONGODB_PASSWORD}",
905
+ "description": "MongoDB wire-protocol password provisioned by Onebox Corestore.",
906
+ "required": true
907
+ },
908
+ {
909
+ "key": "S3_ENDPOINT",
910
+ "value": "onebox-corestore",
911
+ "description": "S3 endpoint host provisioned by Onebox Corestore.",
912
+ "required": true
913
+ },
914
+ {
915
+ "key": "S3_PORT",
916
+ "value": "9000",
917
+ "description": "S3 endpoint port provisioned by Onebox Corestore.",
918
+ "required": true
919
+ },
920
+ {
921
+ "key": "S3_USESSL",
922
+ "value": "false",
923
+ "description": "Use plain HTTP for internal Corestore S3 traffic on the Onebox network.",
924
+ "required": true
925
+ },
926
+ {
927
+ "key": "S3_BUCKET",
928
+ "value": "${S3_BUCKET}",
929
+ "description": "S3 bucket provisioned by Onebox Corestore for Cloudly's registry.",
930
+ "required": true
931
+ },
932
+ {
933
+ "key": "S3_ACCESSKEY",
934
+ "value": "${S3_ACCESS_KEY}",
935
+ "description": "S3 access key provisioned by Onebox Corestore.",
936
+ "required": true
937
+ },
938
+ {
939
+ "key": "S3_SECRETKEY",
940
+ "value": "${S3_SECRET_KEY}",
941
+ "description": "S3 secret key provisioned by Onebox Corestore.",
942
+ "required": true
943
+ }
944
+ ],
945
+ "platformRequirements": {
946
+ "mongodb": true,
947
+ "s3": true
948
+ },
949
+ "platformOidc": {
950
+ "redirectPath": "/auth/oidc/callback",
951
+ "roles": [
952
+ {
953
+ "id": "admin",
954
+ "label": "Administrator",
955
+ "description": "Full Cloudly administration for this hosted instance."
956
+ },
957
+ {
958
+ "id": "user",
959
+ "label": "User",
960
+ "description": "Standard authenticated Cloudly access for this hosted instance."
961
+ }
962
+ ],
963
+ "environmentVariables": {
964
+ "issuerUrl": "SERVEZONE_PLATFORM_OIDC_ISSUER",
965
+ "clientId": "SERVEZONE_PLATFORM_OIDC_CLIENT_ID",
966
+ "clientSecret": "SERVEZONE_PLATFORM_OIDC_CLIENT_SECRET",
967
+ "redirectUri": "SERVEZONE_PLATFORM_OIDC_REDIRECT_URI",
968
+ "audience": "SERVEZONE_PLATFORM_OIDC_AUDIENCE"
969
+ },
970
+ "clientAuthenticationMethod": "client_secret_basic"
971
+ },
972
+ "minOneboxVersion": "7.5.0",
973
+ "changelog": "Bind the Cloudly 19.2.0 Secrets v2 target and require Onebox's fenced WorkloadInit approval staging before a new scratch rehearsal.",
974
+ "breaking": true,
975
+ "requiresManualReview": true,
976
+ "migrationRequired": true,
977
+ "backupBeforeUpgrade": true,
978
+ "healthCheck": {
979
+ "path": "/status",
980
+ "port": 3000,
981
+ "expectedStatus": 200
982
+ }
983
+ },
693
984
  "apps/ghost/app.json": {
694
985
  "id": "ghost",
695
986
  "name": "Ghost",
@@ -1511,7 +1802,7 @@ export const appStorePackageData = {
1511
1802
  },
1512
1803
  "appstore.json": {
1513
1804
  "schemaVersion": 1,
1514
- "updatedAt": "2026-08-07T00:00:00Z",
1805
+ "updatedAt": "2026-08-13T00:00:00Z",
1515
1806
  "apps": [
1516
1807
  {
1517
1808
  "id": "nginx",
@@ -1719,7 +2010,7 @@ export const appStorePackageData = {
1719
2010
  "description": "Multi-node serve.zone control plane for clusters, workload services, domains, and deployments.",
1720
2011
  "category": "Dev Tools",
1721
2012
  "iconName": "server",
1722
- "latestVersion": "1.1.3",
2013
+ "latestVersion": "1.1.5",
1723
2014
  "tags": [
1724
2015
  "serve.zone",
1725
2016
  "control-plane",
@@ -1781,4 +2072,4 @@ export const appStorePackageData = {
1781
2072
  },
1782
2073
  "textFiles": {}
1783
2074
  };
1784
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS5nZW5lcmF0ZWQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi90c19jbGllbnQvZGF0YS5nZW5lcmF0ZWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsNEVBQTRFO0FBSTVFLE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUF5QjtJQUN2RCxhQUFhLEVBQUUsMEJBQTBCO0lBQ3pDLFdBQVcsRUFBRTtRQUNYLHVCQUF1QixFQUFFO1lBQ3ZCLElBQUksRUFBRSxTQUFTO1lBQ2YsTUFBTSxFQUFFLFNBQVM7WUFDakIsYUFBYSxFQUFFLHlEQUF5RDtZQUN4RSxVQUFVLEVBQUUsV0FBVztZQUN2QixVQUFVLEVBQUUsU0FBUztZQUNyQixlQUFlLEVBQUUsT0FBTztZQUN4QixVQUFVLEVBQUU7Z0JBQ1YsT0FBTzthQUNSO1lBQ0QsWUFBWSxFQUFFLFlBQVk7U0FDM0I7UUFDRCx5Q0FBeUMsRUFBRTtZQUN6QyxPQUFPLEVBQUUsZ0JBQWdCO1lBQ3pCLGFBQWEsRUFBRTtnQkFDYjtvQkFDRSxNQUFNLEVBQUUsS0FBSztvQkFDYixNQUFNLEVBQUUsSUFBSTtvQkFDWixVQUFVLEVBQUUsTUFBTTtvQkFDbEIsU0FBUyxFQUFFLElBQUk7aUJBQ2hCO2FBQ0Y7U0FDRjtRQUNELHVCQUF1QixFQUFFO1lBQ3ZCLElBQUksRUFBRSxTQUFTO1lBQ2YsTUFBTSxFQUFFLFNBQVM7WUFDakIsYUFBYSxFQUFFLGdHQUFnRztZQUMvRyxVQUFVLEVBQUUsV0FBVztZQUN2QixVQUFVLEVBQUUsUUFBUTtZQUNwQixlQUFlLEVBQUUsT0FBTztZQUN4QixVQUFVLEVBQUU7Z0JBQ1YsT0FBTztnQkFDUCxPQUFPO2dCQUNQLE9BQU87Z0JBQ1AsT0FBTztnQkFDUCxPQUFPO2FBQ1I7WUFDRCxZQUFZLEVBQUUsWUFBWTtZQUMxQixPQUFPLEVBQUU7Z0JBQ1AsUUFBUSxFQUFFLDZDQUE2QztnQkFDdkQsTUFBTSxFQUFFLG9CQUFvQjthQUM3QjtTQUNGO1FBQ0QseUNBQXlDLEVBQUU7WUFDekMsT0FBTyxFQUFFLDRDQUE0QztZQUNyRCxhQUFhLEVBQUU7Z0JBQ2I7b0JBQ0UsTUFBTSxFQUFFLEtBQUs7b0JBQ2IsTUFBTSxFQUFFLElBQUk7b0JBQ1osVUFBVSxFQUFFLE1BQU07b0JBQ2xCLFNBQVMsRUFBRSxJQUFJO2lCQUNoQjthQUNGO1lBQ0QsU0FBUyxFQUFFO2dCQUNUO29CQUNFLEtBQUssRUFBRSx1QkFBdUI7b0JBQzlCLE9BQU8sRUFBRSxZQUFZO29CQUNyQixhQUFhLEVBQUUsOEJBQThCO29CQUM3QyxVQUFVLEVBQUUsSUFBSTtpQkFDakI7Z0JBQ0Q7b0JBQ0UsS0FBSyxFQUFFLHlCQUF5QjtvQkFDaEMsT0FBTyxFQUFFLDJCQUEyQjtvQkFDcEMsYUFBYSxFQUFFLDhFQUE4RTtvQkFDN0YsVUFBVSxFQUFFLElBQUk7aUJBQ2pCO2dCQUNEO29CQUNFLEtBQUssRUFBRSxzQkFBc0I7b0JBQzdCLE9BQU8sRUFBRSxNQUFNO29CQUNmLGFBQWEsRUFBRSxrREFBa0Q7b0JBQ2pFLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjtnQkFDRDtvQkFDRSxLQUFLLEVBQUUsbUJBQW1CO29CQUMxQixPQUFPLEVBQUUsVUFBVTtvQkFDbkIsYUFBYSxFQUFFLDBEQUEwRDtvQkFDekUsVUFBVSxFQUFFLElBQUk7aUJBQ2pCO2dCQUNEO29CQUNFLEtBQUssRUFBRSxhQUFhO29CQUNwQixPQUFPLEVBQUUsZ0JBQWdCO29CQUN6QixhQUFhLEVBQUUsNkRBQTZEO29CQUM1RSxVQUFVLEVBQUUsSUFBSTtpQkFDakI7Z0JBQ0Q7b0JBQ0UsS0FBSyxFQUFFLGNBQWM7b0JBQ3JCLE9BQU8sRUFBRSxxQkFBcUI7b0JBQzlCLGFBQWEsRUFBRSw4Q0FBOEM7b0JBQzdELFVBQVUsRUFBRSxJQUFJO2lCQUNqQjtnQkFDRDtvQkFDRSxLQUFLLEVBQUUsY0FBYztvQkFDckIsT0FBTyxFQUFFLHFCQUFxQjtvQkFDOUIsYUFBYSxFQUFFLHlDQUF5QztvQkFDeEQsVUFBVSxFQUFFLElBQUk7aUJBQ2pCO2dCQUNEO29CQUNFLEtBQUssRUFBRSxjQUFjO29CQUNyQixPQUFPLEVBQUUscUJBQXFCO29CQUM5QixhQUFhLEVBQUUseUNBQXlDO29CQUN4RCxVQUFVLEVBQUUsSUFBSTtpQkFDakI7Z0JBQ0Q7b0JBQ0UsS0FBSyxFQUFFLGFBQWE7b0JBQ3BCLE9BQU8sRUFBRSxjQUFjO29CQUN2QixhQUFhLEVBQUUsK0RBQStEO29CQUM5RSxVQUFVLEVBQUUsSUFBSTtpQkFDakI7Z0JBQ0Q7b0JBQ0UsS0FBSyxFQUFFLFNBQVM7b0JBQ2hCLE9BQU8sRUFBRSxNQUFNO29CQUNmLGFBQWEsRUFBRSwrREFBK0Q7b0JBQzlFLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjtnQkFDRDtvQkFDRSxLQUFLLEVBQUUsV0FBVztvQkFDbEIsT0FBTyxFQUFFLE9BQU87b0JBQ2hCLGFBQWEsRUFBRSxrRUFBa0U7b0JBQ2pGLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjtnQkFDRDtvQkFDRSxLQUFLLEVBQUUsV0FBVztvQkFDbEIsT0FBTyxFQUFFLGNBQWM7b0JBQ3ZCLGFBQWEsRUFBRSx5REFBeUQ7b0JBQ3hFLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjtnQkFDRDtvQkFDRSxLQUFLLEVBQUUsY0FBYztvQkFDckIsT0FBTyxFQUFFLGtCQUFrQjtvQkFDM0IsYUFBYSxFQUFFLHNDQUFzQztvQkFDckQsVUFBVSxFQUFFLElBQUk7aUJBQ2pCO2dCQUNEO29CQUNFLEtBQUssRUFBRSxjQUFjO29CQUNyQixPQUFPLEVBQUUsa0JBQWtCO29CQUMzQixhQUFhLEVBQUUsc0NBQXNDO29CQUNyRCxVQUFVLEVBQUUsSUFBSTtpQkFDakI7YUFDRjtZQUNELHNCQUFzQixFQUFFO2dCQUN0QixTQUFTLEVBQUUsSUFBSTtnQkFDZixJQUFJLEVBQUUsSUFBSTthQUNYO1lBQ0QsY0FBYyxFQUFFO2dCQUNkLGNBQWMsRUFBRSxxQkFBcUI7Z0JBQ3JDLE9BQU8sRUFBRTtvQkFDUDt3QkFDRSxJQUFJLEVBQUUsT0FBTzt3QkFDYixPQUFPLEVBQUUsZUFBZTt3QkFDeEIsYUFBYSxFQUFFLHVEQUF1RDtxQkFDdkU7b0JBQ0Q7d0JBQ0UsSUFBSSxFQUFFLE1BQU07d0JBQ1osT0FBTyxFQUFFLE1BQU07d0JBQ2YsYUFBYSxFQUFFLGlFQUFpRTtxQkFDakY7aUJBQ0Y7Z0JBQ0Qsc0JBQXNCLEVBQUU7b0JBQ3RCLFdBQVcsRUFBRSxnQ0FBZ0M7b0JBQzdDLFVBQVUsRUFBRSxtQ0FBbUM7b0JBQy9DLGNBQWMsRUFBRSx1Q0FBdUM7b0JBQ3ZELGFBQWEsRUFBRSxzQ0FBc0M7b0JBQ3JELFVBQVUsRUFBRSxrQ0FBa0M7aUJBQy9DO2dCQUNELDRCQUE0QixFQUFFLHFCQUFxQjthQUNwRDtZQUNELGtCQUFrQixFQUFFLE9BQU87U0FDNUI7UUFDRCx5Q0FBeUMsRUFBRTtZQUN6QyxPQUFPLEVBQUUsNENBQTRDO1lBQ3JELGFBQWEsRUFBRTtnQkFDYjtvQkFDRSxNQUFNLEVBQUUsS0FBSztvQkFDYixNQUFNLEVBQUUsSUFBSTtvQkFDWixVQUFVLEVBQUUsTUFBTTtvQkFDbEIsU0FBUyxFQUFFLElBQUk7aUJBQ2hCO2FBQ0Y7WUFDRCxTQUFTLEVBQUU7Z0JBQ1Q7b0JBQ0UsS0FBSyxFQUFFLHVCQUF1QjtvQkFDOUIsT0FBTyxFQUFFLFlBQVk7b0JBQ3JCLGFBQWEsRUFBRSw4QkFBOEI7b0JBQzdDLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjtnQkFDRDtvQkFDRSxLQUFLLEVBQUUseUJBQXlCO29CQUNoQyxPQUFPLEVBQUUsMkJBQTJCO29CQUNwQyxhQUFhLEVBQUUsOEVBQThFO29CQUM3RixVQUFVLEVBQUUsSUFBSTtpQkFDakI7Z0JBQ0Q7b0JBQ0UsS0FBSyxFQUFFLHNCQUFzQjtvQkFDN0IsT0FBTyxFQUFFLE1BQU07b0JBQ2YsYUFBYSxFQUFFLGtEQUFrRDtvQkFDakUsVUFBVSxFQUFFLElBQUk7aUJBQ2pCO2dCQUNEO29CQUNFLEtBQUssRUFBRSxtQkFBbUI7b0JBQzFCLE9BQU8sRUFBRSxVQUFVO29CQUNuQixhQUFhLEVBQUUsMERBQTBEO29CQUN6RSxVQUFVLEVBQUUsSUFBSTtpQkFDakI7Z0JBQ0Q7b0JBQ0UsS0FBSyxFQUFFLGFBQWE7b0JBQ3BCLE9BQU8sRUFBRSxnQkFBZ0I7b0JBQ3pCLGFBQWEsRUFBRSw2REFBNkQ7b0JBQzVFLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjtnQkFDRDtvQkFDRSxLQUFLLEVBQUUsY0FBYztvQkFDckIsT0FBTyxFQUFFLHFCQUFxQjtvQkFDOUIsYUFBYSxFQUFFLDhDQUE4QztvQkFDN0QsVUFBVSxFQUFFLElBQUk7aUJBQ2pCO2dCQUNEO29CQUNFLEtBQUssRUFBRSxjQUFjO29CQUNyQixPQUFPLEVBQUUscUJBQXFCO29CQUM5QixhQUFhLEVBQUUseUNBQXlDO29CQUN4RCxVQUFVLEVBQUUsSUFBSTtpQkFDakI7Z0JBQ0Q7b0JBQ0UsS0FBSyxFQUFFLGNBQWM7b0JBQ3JCLE9BQU8sRUFBRSxxQkFBcUI7b0JBQzlCLGFBQWEsRUFBRSx5Q0FBeUM7b0JBQ3hELFVBQVUsRUFBRSxJQUFJO2lCQUNqQjtnQkFDRDtvQkFDRSxLQUFLLEVBQUUsYUFBYTtvQkFDcEIsT0FBTyxFQUFFLGNBQWM7b0JBQ3ZCLGFBQWEsRUFBRSwrREFBK0Q7b0JBQzlFLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjtnQkFDRDtvQkFDRSxLQUFLLEVBQUUsU0FBUztvQkFDaEIsT0FBTyxFQUFFLE1BQU07b0JBQ2YsYUFBYSxFQUFFLCtEQUErRDtvQkFDOUUsVUFBVSxFQUFFLElBQUk7aUJBQ2pCO2dCQUNEO29CQUNFLEtBQUssRUFBRSxXQUFXO29CQUNsQixPQUFPLEVBQUUsT0FBTztvQkFDaEIsYUFBYSxFQUFFLGtFQUFrRTtvQkFDakYsVUFBVSxFQUFFLElBQUk7aUJBQ2pCO2dCQUNEO29CQUNFLEtBQUssRUFBRSxXQUFXO29CQUNsQixPQUFPLEVBQUUsY0FBYztvQkFDdkIsYUFBYSxFQUFFLHlEQUF5RDtvQkFDeEUsVUFBVSxFQUFFLElBQUk7aUJBQ2pCO2dCQUNEO29CQUNFLEtBQUssRUFBRSxjQUFjO29CQUNyQixPQUFPLEVBQUUsa0JBQWtCO29CQUMzQixhQUFhLEVBQUUsc0NBQXNDO29CQUNyRCxVQUFVLEVBQUUsSUFBSTtpQkFDakI7Z0JBQ0Q7b0JBQ0UsS0FBSyxFQUFFLGNBQWM7b0JBQ3JCLE9BQU8sRUFBRSxrQkFBa0I7b0JBQzNCLGFBQWEsRUFBRSxzQ0FBc0M7b0JBQ3JELFVBQVUsRUFBRSxJQUFJO2lCQUNqQjthQUNGO1lBQ0Qsc0JBQXNCLEVBQUU7Z0JBQ3RCLFNBQVMsRUFBRSxJQUFJO2dCQUNmLElBQUksRUFBRSxJQUFJO2FBQ1g7WUFDRCxjQUFjLEVBQUU7Z0JBQ2QsY0FBYyxFQUFFLHFCQUFxQjtnQkFDckMsT0FBTyxFQUFFO29CQUNQO3dCQUNFLElBQUksRUFBRSxPQUFPO3dCQUNiLE9BQU8sRUFBRSxlQUFlO3dCQUN4QixhQUFhLEVBQUUsdURBQXVEO3FCQUN2RTtvQkFDRDt3QkFDRSxJQUFJLEVBQUUsTUFBTTt3QkFDWixPQUFPLEVBQUUsTUFBTTt3QkFDZixhQUFhLEVBQUUsaUVBQWlFO3FCQUNqRjtpQkFDRjtnQkFDRCxzQkFBc0IsRUFBRTtvQkFDdEIsV0FBVyxFQUFFLGdDQUFnQztvQkFDN0MsVUFBVSxFQUFFLG1DQUFtQztvQkFDL0MsY0FBYyxFQUFFLHVDQUF1QztvQkFDdkQsYUFBYSxFQUFFLHNDQUFzQztvQkFDckQsVUFBVSxFQUFFLGtDQUFrQztpQkFDL0M7Z0JBQ0QsNEJBQTRCLEVBQUUscUJBQXFCO2FBQ3BEO1lBQ0Qsa0JBQWtCLEVBQUUsT0FBTztTQUM1QjtRQUNELHlDQUF5QyxFQUFFO1lBQ3pDLE9BQU8sRUFBRSw2R0FBNkc7WUFDdEgsYUFBYSxFQUFFO2dCQUNiO29CQUNFLE1BQU0sRUFBRSxLQUFLO29CQUNiLE1BQU0sRUFBRSxJQUFJO29CQUNaLFVBQVUsRUFBRSxNQUFNO29CQUNsQixTQUFTLEVBQUUsSUFBSTtpQkFDaEI7YUFDRjtZQUNELFNBQVMsRUFBRTtnQkFDVDtvQkFDRSxLQUFLLEVBQUUsdUJBQXVCO29CQUM5QixPQUFPLEVBQUUsWUFBWTtvQkFDckIsYUFBYSxFQUFFLDhCQUE4QjtvQkFDN0MsVUFBVSxFQUFFLElBQUk7aUJBQ2pCO2dCQUNEO29CQUNFLEtBQUssRUFBRSx5QkFBeUI7b0JBQ2hDLE9BQU8sRUFBRSwyQkFBMkI7b0JBQ3BDLGFBQWEsRUFBRSw4RUFBOEU7b0JBQzdGLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjtnQkFDRDtvQkFDRSxLQUFLLEVBQUUsc0JBQXNCO29CQUM3QixPQUFPLEVBQUUsTUFBTTtvQkFDZixhQUFhLEVBQUUsa0RBQWtEO29CQUNqRSxVQUFVLEVBQUUsSUFBSTtpQkFDakI7Z0JBQ0Q7b0JBQ0UsS0FBSyxFQUFFLG1CQUFtQjtvQkFDMUIsT0FBTyxFQUFFLFVBQVU7b0JBQ25CLGFBQWEsRUFBRSwwREFBMEQ7b0JBQ3pFLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjtnQkFDRDtvQkFDRSxLQUFLLEVBQUUsYUFBYTtvQkFDcEIsT0FBTyxFQUFFLGdCQUFnQjtvQkFDekIsYUFBYSxFQUFFLDZEQUE2RDtvQkFDNUUsVUFBVSxFQUFFLElBQUk7aUJBQ2pCO2dCQUNEO29CQUNFLEtBQUssRUFBRSxjQUFjO29CQUNyQixPQUFPLEVBQUUscUJBQXFCO29CQUM5QixhQUFhLEVBQUUsOENBQThDO29CQUM3RCxVQUFVLEVBQUUsSUFBSTtpQkFDakI7Z0JBQ0Q7b0JBQ0UsS0FBSyxFQUFFLGNBQWM7b0JBQ3JCLE9BQU8sRUFBRSxxQkFBcUI7b0JBQzlCLGFBQWEsRUFBRSx5Q0FBeUM7b0JBQ3hELFVBQVUsRUFBRSxJQUFJO2lCQUNqQjtnQkFDRDtvQkFDRSxLQUFLLEVBQUUsY0FBYztvQkFDckIsT0FBTyxFQUFFLHFCQUFxQjtvQkFDOUIsYUFBYSxFQUFFLHlDQUF5QztvQkFDeEQsVUFBVSxFQUFFLElBQUk7aUJBQ2pCO2dCQUNEO29CQUNFLEtBQUssRUFBRSxhQUFhO29CQUNwQixPQUFPLEVBQUUsY0FBYztvQkFDdkIsYUFBYSxFQUFFLCtEQUErRDtvQkFDOUUsVUFBVSxFQUFFLElBQUk7aUJBQ2pCO2dCQUNEO29CQUNFLEtBQUssRUFBRSxTQUFTO29CQUNoQixPQUFPLEVBQUUsTUFBTTtvQkFDZixhQUFhLEVBQUUsK0RBQStEO29CQUM5RSxVQUFVLEVBQUUsSUFBSTtpQkFDakI7Z0JBQ0Q7b0JBQ0UsS0FBSyxFQUFFLFdBQVc7b0JBQ2xCLE9BQU8sRUFBRSxPQUFPO29CQUNoQixhQUFhLEVBQUUsa0VBQWtFO29CQUNqRixVQUFVLEVBQUUsSUFBSTtpQkFDakI7Z0JBQ0Q7b0JBQ0UsS0FBSyxFQUFFLFdBQVc7b0JBQ2xCLE9BQU8sRUFBRSxjQUFjO29CQUN2QixhQUFhLEVBQUUseURBQXlEO29CQUN4RSxVQUFVLEVBQUUsSUFBSTtpQkFDakI7Z0JBQ0Q7b0JBQ0UsS0FBSyxFQUFFLGNBQWM7b0JBQ3JCLE9BQU8sRUFBRSxrQkFBa0I7b0JBQzNCLGFBQWEsRUFBRSxzQ0FBc0M7b0JBQ3JELFVBQVUsRUFBRSxJQUFJO2lCQUNqQjtnQkFDRDtvQkFDRSxLQUFLLEVBQUUsY0FBYztvQkFDckIsT0FBTyxFQUFFLGtCQUFrQjtvQkFDM0IsYUFBYSxFQUFFLHNDQUFzQztvQkFDckQsVUFBVSxFQUFFLElBQUk7aUJBQ2pCO2FBQ0Y7WUFDRCxzQkFBc0IsRUFBRTtnQkFDdEIsU0FBUyxFQUFFLElBQUk7Z0JBQ2YsSUFBSSxFQUFFLElBQUk7YUFDWDtZQUNELGNBQWMsRUFBRTtnQkFDZCxjQUFjLEVBQUUscUJBQXFCO2dCQUNyQyxPQUFPLEVBQUU7b0JBQ1A7d0JBQ0UsSUFBSSxFQUFFLE9BQU87d0JBQ2IsT0FBTyxFQUFFLGVBQWU7d0JBQ3hCLGFBQWEsRUFBRSx1REFBdUQ7cUJBQ3ZFO29CQUNEO3dCQUNFLElBQUksRUFBRSxNQUFNO3dCQUNaLE9BQU8sRUFBRSxNQUFNO3dCQUNmLGFBQWEsRUFBRSxpRUFBaUU7cUJBQ2pGO2lCQUNGO2dCQUNELHNCQUFzQixFQUFFO29CQUN0QixXQUFXLEVBQUUsZ0NBQWdDO29CQUM3QyxVQUFVLEVBQUUsbUNBQW1DO29CQUMvQyxjQUFjLEVBQUUsdUNBQXVDO29CQUN2RCxhQUFhLEVBQUUsc0NBQXNDO29CQUNyRCxVQUFVLEVBQUUsa0NBQWtDO2lCQUMvQztnQkFDRCw0QkFBNEIsRUFBRSxxQkFBcUI7YUFDcEQ7WUFDRCxrQkFBa0IsRUFBRSxPQUFPO1NBQzVCO1FBQ0QseUNBQXlDLEVBQUU7WUFDekMsT0FBTyxFQUFFLDZHQUE2RztZQUN0SCxhQUFhLEVBQUU7Z0JBQ2I7b0JBQ0UsTUFBTSxFQUFFLEtBQUs7b0JBQ2IsTUFBTSxFQUFFLElBQUk7b0JBQ1osVUFBVSxFQUFFLE1BQU07b0JBQ2xCLFNBQVMsRUFBRSxJQUFJO2lCQUNoQjthQUNGO1lBQ0QsU0FBUyxFQUFFO2dCQUNUO29CQUNFLEtBQUssRUFBRSx1QkFBdUI7b0JBQzlCLE9BQU8sRUFBRSxZQUFZO29CQUNyQixhQUFhLEVBQUUsOEJBQThCO29CQUM3QyxVQUFVLEVBQUUsSUFBSTtpQkFDakI7Z0JBQ0Q7b0JBQ0UsS0FBSyxFQUFFLHlCQUF5QjtvQkFDaEMsT0FBTyxFQUFFLDJCQUEyQjtvQkFDcEMsYUFBYSxFQUFFLDhFQUE4RTtvQkFDN0YsVUFBVSxFQUFFLElBQUk7aUJBQ2pCO2dCQUNEO29CQUNFLEtBQUssRUFBRSxzQkFBc0I7b0JBQzdCLE9BQU8sRUFBRSxNQUFNO29CQUNmLGFBQWEsRUFBRSxrREFBa0Q7b0JBQ2pFLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjtnQkFDRDtvQkFDRSxLQUFLLEVBQUUsbUJBQW1CO29CQUMxQixPQUFPLEVBQUUsVUFBVTtvQkFDbkIsYUFBYSxFQUFFLDBEQUEwRDtvQkFDekUsVUFBVSxFQUFFLElBQUk7aUJBQ2pCO2dCQUNEO29CQUNFLEtBQUssRUFBRSxhQUFhO29CQUNwQixPQUFPLEVBQUUsZ0JBQWdCO29CQUN6QixhQUFhLEVBQUUsMEVBQTBFO29CQUN6RixVQUFVLEVBQUUsSUFBSTtpQkFDakI7Z0JBQ0Q7b0JBQ0UsS0FBSyxFQUFFLGNBQWM7b0JBQ3JCLE9BQU8sRUFBRSxxQkFBcUI7b0JBQzlCLGFBQWEsRUFBRSxzRUFBc0U7b0JBQ3JGLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjtnQkFDRDtvQkFDRSxLQUFLLEVBQUUsY0FBYztvQkFDckIsT0FBTyxFQUFFLHFCQUFxQjtvQkFDOUIsYUFBYSxFQUFFLGlFQUFpRTtvQkFDaEYsVUFBVSxFQUFFLElBQUk7aUJBQ2pCO2dCQUNEO29CQUNFLEtBQUssRUFBRSxjQUFjO29CQUNyQixPQUFPLEVBQUUscUJBQXFCO29CQUM5QixhQUFhLEVBQUUsaUVBQWlFO29CQUNoRixVQUFVLEVBQUUsSUFBSTtpQkFDakI7Z0JBQ0Q7b0JBQ0UsS0FBSyxFQUFFLGFBQWE7b0JBQ3BCLE9BQU8sRUFBRSxrQkFBa0I7b0JBQzNCLGFBQWEsRUFBRSxtREFBbUQ7b0JBQ2xFLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjtnQkFDRDtvQkFDRSxLQUFLLEVBQUUsU0FBUztvQkFDaEIsT0FBTyxFQUFFLE1BQU07b0JBQ2YsYUFBYSxFQUFFLG1EQUFtRDtvQkFDbEUsVUFBVSxFQUFFLElBQUk7aUJBQ2pCO2dCQUNEO29CQUNFLEtBQUssRUFBRSxXQUFXO29CQUNsQixPQUFPLEVBQUUsT0FBTztvQkFDaEIsYUFBYSxFQUFFLHlFQUF5RTtvQkFDeEYsVUFBVSxFQUFFLElBQUk7aUJBQ2pCO2dCQUNEO29CQUNFLEtBQUssRUFBRSxXQUFXO29CQUNsQixPQUFPLEVBQUUsY0FBYztvQkFDdkIsYUFBYSxFQUFFLG1FQUFtRTtvQkFDbEYsVUFBVSxFQUFFLElBQUk7aUJBQ2pCO2dCQUNEO29CQUNFLEtBQUssRUFBRSxjQUFjO29CQUNyQixPQUFPLEVBQUUsa0JBQWtCO29CQUMzQixhQUFhLEVBQUUsZ0RBQWdEO29CQUMvRCxVQUFVLEVBQUUsSUFBSTtpQkFDakI7Z0JBQ0Q7b0JBQ0UsS0FBSyxFQUFFLGNBQWM7b0JBQ3JCLE9BQU8sRUFBRSxrQkFBa0I7b0JBQzNCLGFBQWEsRUFBRSxnREFBZ0Q7b0JBQy9ELFVBQVUsRUFBRSxJQUFJO2lCQUNqQjthQUNGO1lBQ0Qsc0JBQXNCLEVBQUU7Z0JBQ3RCLFNBQVMsRUFBRSxJQUFJO2dCQUNmLElBQUksRUFBRSxJQUFJO2FBQ1g7WUFDRCxjQUFjLEVBQUU7Z0JBQ2QsY0FBYyxFQUFFLHFCQUFxQjtnQkFDckMsT0FBTyxFQUFFO29CQUNQO3dCQUNFLElBQUksRUFBRSxPQUFPO3dCQUNiLE9BQU8sRUFBRSxlQUFlO3dCQUN4QixhQUFhLEVBQUUsdURBQXVEO3FCQUN2RTtvQkFDRDt3QkFDRSxJQUFJLEVBQUUsTUFBTTt3QkFDWixPQUFPLEVBQUUsTUFBTTt3QkFDZixhQUFhLEVBQUUsaUVBQWlFO3FCQUNqRjtpQkFDRjtnQkFDRCxzQkFBc0IsRUFBRTtvQkFDdEIsV0FBVyxFQUFFLGdDQUFnQztvQkFDN0MsVUFBVSxFQUFFLG1DQUFtQztvQkFDL0MsY0FBYyxFQUFFLHVDQUF1QztvQkFDdkQsYUFBYSxFQUFFLHNDQUFzQztvQkFDckQsVUFBVSxFQUFFLGtDQUFrQztpQkFDL0M7Z0JBQ0QsNEJBQTRCLEVBQUUscUJBQXFCO2FBQ3BEO1lBQ0Qsa0JBQWtCLEVBQUUsT0FBTztZQUMzQixXQUFXLEVBQUUsdUtBQXVLO1lBQ3BMLFVBQVUsRUFBRSxJQUFJO1lBQ2hCLHNCQUFzQixFQUFFLElBQUk7WUFDNUIsbUJBQW1CLEVBQUUsSUFBSTtZQUN6QixxQkFBcUIsRUFBRSxJQUFJO1lBQzNCLGFBQWEsRUFBRTtnQkFDYixNQUFNLEVBQUUsU0FBUztnQkFDakIsTUFBTSxFQUFFLElBQUk7Z0JBQ1osZ0JBQWdCLEVBQUUsR0FBRzthQUN0QjtTQUNGO1FBQ0QseUNBQXlDLEVBQUU7WUFDekMsT0FBTyxFQUFFLDZHQUE2RztZQUN0SCxhQUFhLEVBQUU7Z0JBQ2I7b0JBQ0UsTUFBTSxFQUFFLEtBQUs7b0JBQ2IsTUFBTSxFQUFFLElBQUk7b0JBQ1osVUFBVSxFQUFFLE1BQU07b0JBQ2xCLFNBQVMsRUFBRSxJQUFJO2lCQUNoQjthQUNGO1lBQ0QsU0FBUyxFQUFFO2dCQUNUO29CQUNFLEtBQUssRUFBRSx1QkFBdUI7b0JBQzlCLE9BQU8sRUFBRSxZQUFZO29CQUNyQixhQUFhLEVBQUUsOEJBQThCO29CQUM3QyxVQUFVLEVBQUUsSUFBSTtpQkFDakI7Z0JBQ0Q7b0JBQ0UsS0FBSyxFQUFFLHlCQUF5QjtvQkFDaEMsT0FBTyxFQUFFLDJCQUEyQjtvQkFDcEMsYUFBYSxFQUFFLDhFQUE4RTtvQkFDN0YsVUFBVSxFQUFFLElBQUk7aUJBQ2pCO2dCQUNEO29CQUNFLEtBQUssRUFBRSxzQkFBc0I7b0JBQzdCLE9BQU8sRUFBRSxNQUFNO29CQUNmLGFBQWEsRUFBRSxrREFBa0Q7b0JBQ2pFLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjtnQkFDRDtvQkFDRSxLQUFLLEVBQUUsbUJBQW1CO29CQUMxQixPQUFPLEVBQUUsVUFBVTtvQkFDbkIsYUFBYSxFQUFFLDBEQUEwRDtvQkFDekUsVUFBVSxFQUFFLElBQUk7aUJBQ2pCO2dCQUNEO29CQUNFLEtBQUssRUFBRSxhQUFhO29CQUNwQixPQUFPLEVBQUUsZ0JBQWdCO29CQUN6QixhQUFhLEVBQUUsMEVBQTBFO29CQUN6RixVQUFVLEVBQUUsSUFBSTtpQkFDakI7Z0JBQ0Q7b0JBQ0UsS0FBSyxFQUFFLGNBQWM7b0JBQ3JCLE9BQU8sRUFBRSxxQkFBcUI7b0JBQzlCLGFBQWEsRUFBRSxzRUFBc0U7b0JBQ3JGLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjtnQkFDRDtvQkFDRSxLQUFLLEVBQUUsY0FBYztvQkFDckIsT0FBTyxFQUFFLHFCQUFxQjtvQkFDOUIsYUFBYSxFQUFFLGlFQUFpRTtvQkFDaEYsVUFBVSxFQUFFLElBQUk7aUJBQ2pCO2dCQUNEO29CQUNFLEtBQUssRUFBRSxjQUFjO29CQUNyQixPQUFPLEVBQUUscUJBQXFCO29CQUM5QixhQUFhLEVBQUUsaUVBQWlFO29CQUNoRixVQUFVLEVBQUUsSUFBSTtpQkFDakI7Z0JBQ0Q7b0JBQ0UsS0FBSyxFQUFFLGFBQWE7b0JBQ3BCLE9BQU8sRUFBRSxrQkFBa0I7b0JBQzNCLGFBQWEsRUFBRSxtREFBbUQ7b0JBQ2xFLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjtnQkFDRDtvQkFDRSxLQUFLLEVBQUUsU0FBUztvQkFDaEIsT0FBTyxFQUFFLE1BQU07b0JBQ2YsYUFBYSxFQUFFLG1EQUFtRDtvQkFDbEUsVUFBVSxFQUFFLElBQUk7aUJBQ2pCO2dCQUNEO29CQUNFLEtBQUssRUFBRSxXQUFXO29CQUNsQixPQUFPLEVBQUUsT0FBTztvQkFDaEIsYUFBYSxFQUFFLHlFQUF5RTtvQkFDeEYsVUFBVSxFQUFFLElBQUk7aUJBQ2pCO2dCQUNEO29CQUNFLEtBQUssRUFBRSxXQUFXO29CQUNsQixPQUFPLEVBQUUsY0FBYztvQkFDdkIsYUFBYSxFQUFFLG1FQUFtRTtvQkFDbEYsVUFBVSxFQUFFLElBQUk7aUJBQ2pCO2dCQUNEO29CQUNFLEtBQUssRUFBRSxjQUFjO29CQUNyQixPQUFPLEVBQUUsa0JBQWtCO29CQUMzQixhQUFhLEVBQUUsZ0RBQWdEO29CQUMvRCxVQUFVLEVBQUUsSUFBSTtpQkFDakI7Z0JBQ0Q7b0JBQ0UsS0FBSyxFQUFFLGNBQWM7b0JBQ3JCLE9BQU8sRUFBRSxrQkFBa0I7b0JBQzNCLGFBQWEsRUFBRSxnREFBZ0Q7b0JBQy9ELFVBQVUsRUFBRSxJQUFJO2lCQUNqQjthQUNGO1lBQ0Qsc0JBQXNCLEVBQUU7Z0JBQ3RCLFNBQVMsRUFBRSxJQUFJO2dCQUNmLElBQUksRUFBRSxJQUFJO2FBQ1g7WUFDRCxjQUFjLEVBQUU7Z0JBQ2QsY0FBYyxFQUFFLHFCQUFxQjtnQkFDckMsT0FBTyxFQUFFO29CQUNQO3dCQUNFLElBQUksRUFBRSxPQUFPO3dCQUNiLE9BQU8sRUFBRSxlQUFlO3dCQUN4QixhQUFhLEVBQUUsdURBQXVEO3FCQUN2RTtvQkFDRDt3QkFDRSxJQUFJLEVBQUUsTUFBTTt3QkFDWixPQUFPLEVBQUUsTUFBTTt3QkFDZixhQUFhLEVBQUUsaUVBQWlFO3FCQUNqRjtpQkFDRjtnQkFDRCxzQkFBc0IsRUFBRTtvQkFDdEIsV0FBVyxFQUFFLGdDQUFnQztvQkFDN0MsVUFBVSxFQUFFLG1DQUFtQztvQkFDL0MsY0FBYyxFQUFFLHVDQUF1QztvQkFDdkQsYUFBYSxFQUFFLHNDQUFzQztvQkFDckQsVUFBVSxFQUFFLGtDQUFrQztpQkFDL0M7Z0JBQ0QsNEJBQTRCLEVBQUUscUJBQXFCO2FBQ3BEO1lBQ0Qsa0JBQWtCLEVBQUUsUUFBUTtZQUM1QixXQUFXLEVBQUUsOElBQThJO1lBQzNKLFVBQVUsRUFBRSxJQUFJO1lBQ2hCLHNCQUFzQixFQUFFLElBQUk7WUFDNUIsbUJBQW1CLEVBQUUsSUFBSTtZQUN6QixxQkFBcUIsRUFBRSxJQUFJO1lBQzNCLGFBQWEsRUFBRTtnQkFDYixNQUFNLEVBQUUsU0FBUztnQkFDakIsTUFBTSxFQUFFLElBQUk7Z0JBQ1osZ0JBQWdCLEVBQUUsR0FBRzthQUN0QjtTQUNGO1FBQ0QscUJBQXFCLEVBQUU7WUFDckIsSUFBSSxFQUFFLE9BQU87WUFDYixNQUFNLEVBQUUsT0FBTztZQUNmLGFBQWEsRUFBRSw0REFBNEQ7WUFDM0UsVUFBVSxFQUFFLEtBQUs7WUFDakIsVUFBVSxFQUFFLE9BQU87WUFDbkIsZUFBZSxFQUFFLE9BQU87WUFDeEIsVUFBVSxFQUFFO2dCQUNWLE9BQU87YUFDUjtZQUNELFlBQVksRUFBRSxZQUFZO1NBQzNCO1FBQ0QsdUNBQXVDLEVBQUU7WUFDdkMsT0FBTyxFQUFFLGNBQWM7WUFDdkIsYUFBYSxFQUFFO2dCQUNiO29CQUNFLE1BQU0sRUFBRSxLQUFLO29CQUNiLE1BQU0sRUFBRSxJQUFJO29CQUNaLFVBQVUsRUFBRSxNQUFNO29CQUNsQixTQUFTLEVBQUUsSUFBSTtpQkFDaEI7YUFDRjtZQUNELFNBQVMsRUFBRTtnQkFDVDtvQkFDRSxLQUFLLEVBQUUsa0JBQWtCO29CQUN6QixPQUFPLEVBQUUsT0FBTztvQkFDaEIsYUFBYSxFQUFFLGlCQUFpQjtpQkFDakM7Z0JBQ0Q7b0JBQ0UsS0FBSyxFQUFFLDRCQUE0QjtvQkFDbkMsT0FBTyxFQUFFLGlCQUFpQjtvQkFDMUIsYUFBYSxFQUFFLDJDQUEyQztpQkFDM0Q7Z0JBQ0Q7b0JBQ0UsS0FBSyxFQUFFLDRCQUE0QjtvQkFDbkMsT0FBTyxFQUFFLGlCQUFpQjtvQkFDMUIsYUFBYSxFQUFFLDJDQUEyQztpQkFDM0Q7Z0JBQ0Q7b0JBQ0UsS0FBSyxFQUFFLDRCQUE0QjtvQkFDbkMsT0FBTyxFQUFFLGlCQUFpQjtvQkFDMUIsYUFBYSxFQUFFLDJDQUEyQztpQkFDM0Q7Z0JBQ0Q7b0JBQ0UsS0FBSyxFQUFFLGdDQUFnQztvQkFDdkMsT0FBTyxFQUFFLHFCQUFxQjtvQkFDOUIsYUFBYSxFQUFFLCtDQUErQztpQkFDL0Q7Z0JBQ0Q7b0JBQ0UsS0FBSyxFQUFFLGdDQUFnQztvQkFDdkMsT0FBTyxFQUFFLHFCQUFxQjtvQkFDOUIsYUFBYSxFQUFFLDJDQUEyQztpQkFDM0Q7Z0JBQ0Q7b0JBQ0UsS0FBSyxFQUFFLEtBQUs7b0JBQ1osT0FBTyxFQUFFLDJCQUEyQjtvQkFDcEMsYUFBYSxFQUFFLHdCQUF3QjtpQkFDeEM7YUFDRjtZQUNELHNCQUFzQixFQUFFO2dCQUN0QixTQUFTLEVBQUUsSUFBSTthQUNoQjtTQUNGO1FBQ0QscUJBQXFCLEVBQUU7WUFDckIsSUFBSSxFQUFFLE9BQU87WUFDYixNQUFNLEVBQUUsT0FBTztZQUNmLGFBQWEsRUFBRSxxQ0FBcUM7WUFDcEQsVUFBVSxFQUFFLGFBQWE7WUFDekIsVUFBVSxFQUFFLE9BQU87WUFDbkIsZUFBZSxFQUFFLE9BQU87WUFDeEIsVUFBVSxFQUFFO2dCQUNWLE9BQU87YUFDUjtZQUNELFlBQVksRUFBRSxZQUFZO1NBQzNCO1FBQ0QsdUNBQXVDLEVBQUU7WUFDdkMsT0FBTyxFQUFFLG9CQUFvQjtZQUM3QixhQUFhLEVBQUU7Z0JBQ2I7b0JBQ0UsTUFBTSxFQUFFLEtBQUs7b0JBQ2IsTUFBTSxFQUFFLElBQUk7b0JBQ1osVUFBVSxFQUFFLE1BQU07b0JBQ2xCLFNBQVMsRUFBRSxJQUFJO2lCQUNoQjthQUNGO1lBQ0QsU0FBUyxFQUFFO2dCQUNUO29CQUNFLEtBQUssRUFBRSwwQkFBMEI7b0JBQ2pDLE9BQU8sRUFBRSxPQUFPO29CQUNoQixhQUFhLEVBQUUsZUFBZTtpQkFDL0I7Z0JBQ0Q7b0JBQ0UsS0FBSyxFQUFFLHVCQUF1QjtvQkFDOUIsT0FBTyxFQUFFLGlDQUFpQztvQkFDMUMsYUFBYSxFQUFFLDJDQUEyQztpQkFDM0Q7Z0JBQ0Q7b0JBQ0UsS0FBSyxFQUFFLHVCQUF1QjtvQkFDOUIsT0FBTyxFQUFFLHFCQUFxQjtvQkFDOUIsYUFBYSxFQUFFLDJDQUEyQztpQkFDM0Q7Z0JBQ0Q7b0JBQ0UsS0FBSyxFQUFFLHVCQUF1QjtvQkFDOUIsT0FBTyxFQUFFLGlCQUFpQjtvQkFDMUIsYUFBYSxFQUFFLDJDQUEyQztpQkFDM0Q7Z0JBQ0Q7b0JBQ0UsS0FBSyxFQUFFLHlCQUF5QjtvQkFDaEMsT0FBTyxFQUFFLHFCQUFxQjtvQkFDOUIsYUFBYSxFQUFFLCtDQUErQztpQkFDL0Q7YUFDRjtZQUNELHNCQUFzQixFQUFFO2dCQUN0QixTQUFTLEVBQUUsSUFBSTthQUNoQjtTQUNGO1FBQ0Qsc0JBQXNCLEVBQUU7WUFDdEIsSUFBSSxFQUFFLFFBQVE7WUFDZCxNQUFNLEVBQUUsUUFBUTtZQUNoQixhQUFhLEVBQUUsNkZBQTZGO1lBQzVHLFVBQVUsRUFBRSxXQUFXO1lBQ3ZCLFVBQVUsRUFBRSxZQUFZO1lBQ3hCLGVBQWUsRUFBRSxPQUFPO1lBQ3hCLFVBQVUsRUFBRTtnQkFDVixPQUFPO2FBQ1I7WUFDRCxZQUFZLEVBQUUsWUFBWTtZQUMxQixPQUFPLEVBQUU7Z0JBQ1AsUUFBUSxFQUFFLDRDQUE0QztnQkFDdEQsTUFBTSxFQUFFLG9CQUFvQjthQUM3QjtTQUNGO1FBQ0Qsd0NBQXdDLEVBQUU7WUFDeEMsT0FBTyxFQUFFLDJDQUEyQztZQUNwRCxhQUFhLEVBQUU7Z0JBQ2I7b0JBQ0UsTUFBTSxFQUFFLEtBQUs7b0JBQ2IsTUFBTSxFQUFFLElBQUk7b0JBQ1osVUFBVSxFQUFFLE1BQU07b0JBQ2xCLFNBQVMsRUFBRSxJQUFJO2lCQUNoQjthQUNGO1lBQ0QsU0FBUyxFQUFFO2dCQUNUO29CQUNFLEtBQUssRUFBRSxhQUFhO29CQUNwQixPQUFPLEVBQUUsTUFBTTtvQkFDZixhQUFhLEVBQUUsaURBQWlEO29CQUNoRSxVQUFVLEVBQUUsSUFBSTtpQkFDakI7Z0JBQ0Q7b0JBQ0UsS0FBSyxFQUFFLHVCQUF1QjtvQkFDOUIsT0FBTyxFQUFFLEVBQUU7b0JBQ1gsYUFBYSxFQUFFLCtDQUErQztvQkFDOUQsVUFBVSxFQUFFLElBQUk7aUJBQ2pCO2dCQUNEO29CQUNFLEtBQUssRUFBRSx1QkFBdUI7b0JBQzlCLE9BQU8sRUFBRSxFQUFFO29CQUNYLGFBQWEsRUFBRSwrQ0FBK0M7b0JBQzlELFVBQVUsRUFBRSxJQUFJO2lCQUNqQjthQUNGO1lBQ0QsU0FBUyxFQUFFO2dCQUNULDBCQUEwQjthQUMzQjtZQUNELGtCQUFrQixFQUFFLFFBQVE7U0FDN0I7UUFDRCx1QkFBdUIsRUFBRTtZQUN2QixJQUFJLEVBQUUsU0FBUztZQUNmLE1BQU0sRUFBRSxTQUFTO1lBQ2pCLGFBQWEsRUFBRSwrQ0FBK0M7WUFDOUQsVUFBVSxFQUFFLFlBQVk7WUFDeEIsVUFBVSxFQUFFLFNBQVM7WUFDckIsZUFBZSxFQUFFLE9BQU87WUFDeEIsVUFBVSxFQUFFO2dCQUNWLE9BQU87YUFDUjtZQUNELFlBQVksRUFBRSxZQUFZO1NBQzNCO1FBQ0QseUNBQXlDLEVBQUU7WUFDekMsT0FBTyxFQUFFLHdCQUF3QjtZQUNqQyxhQUFhLEVBQUU7Z0JBQ2I7b0JBQ0UsTUFBTSxFQUFFLEtBQUs7b0JBQ2IsTUFBTSxFQUFFLElBQUk7b0JBQ1osVUFBVSxFQUFFLE1BQU07b0JBQ2xCLFNBQVMsRUFBRSxJQUFJO2lCQUNoQjthQUNGO1lBQ0QsU0FBUyxFQUFFO2dCQUNUO29CQUNFLEtBQUssRUFBRSw0QkFBNEI7b0JBQ25DLE9BQU8sRUFBRSxFQUFFO29CQUNYLGFBQWEsRUFBRSxnQkFBZ0I7b0JBQy9CLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjthQUNGO1NBQ0Y7UUFDRCx1QkFBdUIsRUFBRTtZQUN2QixJQUFJLEVBQUUsU0FBUztZQUNmLE1BQU0sRUFBRSxTQUFTO1lBQ2pCLGFBQWEsRUFBRSwyREFBMkQ7WUFDMUUsVUFBVSxFQUFFLFdBQVc7WUFDdkIsVUFBVSxFQUFFLFNBQVM7WUFDckIsZUFBZSxFQUFFLE9BQU87WUFDeEIsVUFBVSxFQUFFO2dCQUNWLE9BQU87YUFDUjtZQUNELFlBQVksRUFBRSxZQUFZO1NBQzNCO1FBQ0QseUNBQXlDLEVBQUU7WUFDekMsT0FBTyxFQUFFLGdCQUFnQjtZQUN6QixhQUFhLEVBQUU7Z0JBQ2I7b0JBQ0UsTUFBTSxFQUFFLElBQUk7b0JBQ1osTUFBTSxFQUFFLElBQUk7b0JBQ1osVUFBVSxFQUFFLEtBQUs7b0JBQ2pCLFNBQVMsRUFBRSxJQUFJO2lCQUNoQjthQUNGO1lBQ0QsU0FBUyxFQUFFO2dCQUNUO29CQUNFLEtBQUssRUFBRSx1QkFBdUI7b0JBQzlCLE9BQU8sRUFBRSxFQUFFO29CQUNYLGFBQWEsRUFBRSxlQUFlO29CQUM5QixVQUFVLEVBQUUsSUFBSTtpQkFDakI7YUFDRjtTQUNGO1FBQ0QsMEJBQTBCLEVBQUU7WUFDMUIsSUFBSSxFQUFFLFlBQVk7WUFDbEIsTUFBTSxFQUFFLFlBQVk7WUFDcEIsYUFBYSxFQUFFLHVEQUF1RDtZQUN0RSxVQUFVLEVBQUUsZUFBZTtZQUMzQixVQUFVLEVBQUUsWUFBWTtZQUN4QixlQUFlLEVBQUUsT0FBTztZQUN4QixVQUFVLEVBQUU7Z0JBQ1YsT0FBTzthQUNSO1lBQ0QsWUFBWSxFQUFFLFlBQVk7U0FDM0I7UUFDRCw0Q0FBNEMsRUFBRTtZQUM1QyxPQUFPLEVBQUUsMkNBQTJDO1lBQ3BELGFBQWEsRUFBRTtnQkFDYjtvQkFDRSxNQUFNLEVBQUUsS0FBSztvQkFDYixNQUFNLEVBQUUsSUFBSTtvQkFDWixVQUFVLEVBQUUsTUFBTTtvQkFDbEIsU0FBUyxFQUFFLElBQUk7aUJBQ2hCO2FBQ0Y7U0FDRjtRQUNELG1CQUFtQixFQUFFO1lBQ25CLElBQUksRUFBRSxLQUFLO1lBQ1gsTUFBTSxFQUFFLEtBQUs7WUFDYixhQUFhLEVBQUUsaURBQWlEO1lBQ2hFLFVBQVUsRUFBRSxZQUFZO1lBQ3hCLFVBQVUsRUFBRSxLQUFLO1lBQ2pCLGVBQWUsRUFBRSxPQUFPO1lBQ3hCLFVBQVUsRUFBRTtnQkFDVixPQUFPO2FBQ1I7WUFDRCxZQUFZLEVBQUUsWUFBWTtTQUMzQjtRQUNELHFDQUFxQyxFQUFFO1lBQ3JDLE9BQU8sRUFBRSxrQkFBa0I7WUFDM0IsYUFBYSxFQUFFO2dCQUNiO29CQUNFLE1BQU0sRUFBRSxLQUFLO29CQUNiLE1BQU0sRUFBRSxJQUFJO29CQUNaLFVBQVUsRUFBRSxNQUFNO29CQUNsQixTQUFTLEVBQUUsSUFBSTtpQkFDaEI7YUFDRjtTQUNGO1FBQ0QseUJBQXlCLEVBQUU7WUFDekIsSUFBSSxFQUFFLFdBQVc7WUFDakIsTUFBTSxFQUFFLFdBQVc7WUFDbkIsYUFBYSxFQUFFLG9EQUFvRDtZQUNuRSxVQUFVLEVBQUUsZUFBZTtZQUMzQixVQUFVLEVBQUUsV0FBVztZQUN2QixlQUFlLEVBQUUsT0FBTztZQUN4QixVQUFVLEVBQUU7Z0JBQ1YsT0FBTzthQUNSO1lBQ0QsWUFBWSxFQUFFLFlBQVk7U0FDM0I7UUFDRCwyQ0FBMkMsRUFBRTtZQUMzQyxPQUFPLEVBQUUsa0JBQWtCO1lBQzNCLGFBQWEsRUFBRTtnQkFDYjtvQkFDRSxNQUFNLEVBQUUsS0FBSztvQkFDYixNQUFNLEVBQUUsRUFBRTtvQkFDVixVQUFVLEVBQUUsTUFBTTtvQkFDbEIsU0FBUyxFQUFFLElBQUk7aUJBQ2hCO2FBQ0Y7WUFDRCxTQUFTLEVBQUU7Z0JBQ1Q7b0JBQ0UsS0FBSyxFQUFFLFlBQVk7b0JBQ25CLE9BQU8sRUFBRSxpQkFBaUI7b0JBQzFCLGFBQWEsRUFBRSwyQ0FBMkM7aUJBQzNEO2dCQUNEO29CQUNFLEtBQUssRUFBRSxZQUFZO29CQUNuQixPQUFPLEVBQUUsaUJBQWlCO29CQUMxQixhQUFhLEVBQUUsMkNBQTJDO2lCQUMzRDtnQkFDRDtvQkFDRSxLQUFLLEVBQUUsZ0JBQWdCO29CQUN2QixPQUFPLEVBQUUscUJBQXFCO29CQUM5QixhQUFhLEVBQUUsK0NBQStDO2lCQUMvRDtnQkFDRDtvQkFDRSxLQUFLLEVBQUUsZ0JBQWdCO29CQUN2QixPQUFPLEVBQUUscUJBQXFCO29CQUM5QixhQUFhLEVBQUUsMkNBQTJDO2lCQUMzRDthQUNGO1lBQ0Qsc0JBQXNCLEVBQUU7Z0JBQ3RCLFNBQVMsRUFBRSxJQUFJO2dCQUNmLFFBQVEsRUFBRSxJQUFJO2FBQ2Y7U0FDRjtRQUNELHFCQUFxQixFQUFFO1lBQ3JCLElBQUksRUFBRSxPQUFPO1lBQ2IsTUFBTSxFQUFFLE9BQU87WUFDZixhQUFhLEVBQUUsK0NBQStDO1lBQzlELFVBQVUsRUFBRSxhQUFhO1lBQ3pCLFVBQVUsRUFBRSxPQUFPO1lBQ25CLGVBQWUsRUFBRSxPQUFPO1lBQ3hCLFVBQVUsRUFBRTtnQkFDVixPQUFPO2FBQ1I7WUFDRCxZQUFZLEVBQUUsWUFBWTtTQUMzQjtRQUNELHVDQUF1QyxFQUFFO1lBQ3ZDLE9BQU8sRUFBRSxjQUFjO1lBQ3ZCLGFBQWEsRUFBRTtnQkFDYjtvQkFDRSxNQUFNLEVBQUUsS0FBSztvQkFDYixNQUFNLEVBQUUsRUFBRTtvQkFDVixVQUFVLEVBQUUsTUFBTTtvQkFDbEIsU0FBUyxFQUFFLElBQUk7aUJBQ2hCO2FBQ0Y7U0FDRjtRQUNELHVCQUF1QixFQUFFO1lBQ3ZCLElBQUksRUFBRSxTQUFTO1lBQ2YsTUFBTSxFQUFFLFNBQVM7WUFDakIsYUFBYSxFQUFFLDRFQUE0RTtZQUMzRixVQUFVLEVBQUUsVUFBVTtZQUN0QixVQUFVLEVBQUUsUUFBUTtZQUNwQixlQUFlLEVBQUUsT0FBTztZQUN4QixVQUFVLEVBQUU7Z0JBQ1YsT0FBTzthQUNSO1lBQ0QsWUFBWSxFQUFFLFlBQVk7WUFDMUIsT0FBTyxFQUFFO2dCQUNQLGVBQWUsRUFBRSwyQkFBMkI7Z0JBQzVDLFFBQVEsRUFBRSxvQ0FBb0M7YUFDL0M7U0FDRjtRQUNELHlDQUF5QyxFQUFFO1lBQ3pDLE9BQU8sRUFBRSx1QkFBdUI7WUFDaEMsZUFBZSxFQUFFO2dCQUNmLFFBQVE7YUFDVDtZQUNELGFBQWEsRUFBRTtnQkFDYjtvQkFDRSxNQUFNLEVBQUUsS0FBSztvQkFDYixNQUFNLEVBQUUsSUFBSTtvQkFDWixVQUFVLEVBQUUsTUFBTTtvQkFDbEIsU0FBUyxFQUFFLElBQUk7aUJBQ2hCO2FBQ0Y7WUFDRCxTQUFTLEVBQUU7Z0JBQ1Q7b0JBQ0UsS0FBSyxFQUFFLGtCQUFrQjtvQkFDekIsT0FBTyxFQUFFLCtjQUErYztvQkFDeGQsYUFBYSxFQUFFLG1GQUFtRjtvQkFDbEcsVUFBVSxFQUFFLElBQUk7aUJBQ2pCO2dCQUNEO29CQUNFLEtBQUssRUFBRSxxQkFBcUI7b0JBQzVCLGFBQWEsRUFBRSwrRkFBK0Y7b0JBQzlHLFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUUsSUFBSTtvQkFDZCxVQUFVLEVBQUU7d0JBQ1YsTUFBTSxFQUFFLE1BQU07d0JBQ2QsWUFBWSxFQUFFLHNDQUFzQzt3QkFDcEQsS0FBSyxFQUFFLEdBQUc7d0JBQ1YsS0FBSyxFQUFFLElBQUk7d0JBQ1gsTUFBTSxFQUFFLEdBQUc7cUJBQ1o7b0JBQ0QsVUFBVSxFQUFFO3dCQUNWLFVBQVUsRUFBRSxLQUFLO3dCQUNqQixPQUFPLEVBQUUsRUFBRTtxQkFDWjtpQkFDRjthQUNGO1lBQ0QsU0FBUyxFQUFFO2dCQUNUO29CQUNFLE1BQU0sRUFBRSxjQUFjO29CQUN0QixXQUFXLEVBQUUsZUFBZTtvQkFDNUIsUUFBUSxFQUFFLElBQUk7aUJBQ2Y7YUFDRjtZQUNELG1CQUFtQixFQUFFLFFBQVE7WUFDN0IsYUFBYSxFQUFFO2dCQUNiLE1BQU0sRUFBRSw2REFBNkQ7Z0JBQ3JFLE1BQU0sRUFBRSxJQUFJO2dCQUNaLGdCQUFnQixFQUFFLEdBQUc7YUFDdEI7U0FDRjtRQUNELHlCQUF5QixFQUFFO1lBQ3pCLElBQUksRUFBRSxXQUFXO1lBQ2pCLE1BQU0sRUFBRSxXQUFXO1lBQ25CLGFBQWEsRUFBRSx5Q0FBeUM7WUFDeEQsVUFBVSxFQUFFLFdBQVc7WUFDdkIsVUFBVSxFQUFFLFdBQVc7WUFDdkIsZUFBZSxFQUFFLE9BQU87WUFDeEIsVUFBVSxFQUFFO2dCQUNWLE9BQU87YUFDUjtZQUNELFlBQVksRUFBRSxZQUFZO1NBQzNCO1FBQ0QsMkNBQTJDLEVBQUU7WUFDM0MsT0FBTyxFQUFFLDRCQUE0QjtZQUNyQyxhQUFhLEVBQUU7Z0JBQ2I7b0JBQ0UsTUFBTSxFQUFFLEtBQUs7b0JBQ2IsTUFBTSxFQUFFLElBQUk7b0JBQ1osVUFBVSxFQUFFLE1BQU07b0JBQ2xCLFNBQVMsRUFBRSxJQUFJO2lCQUNoQjthQUNGO1lBQ0Qsc0JBQXNCLEVBQUU7Z0JBQ3RCLFlBQVksRUFBRSxJQUFJO2FBQ25CO1NBQ0Y7UUFDRCx5QkFBeUIsRUFBRTtZQUN6QixJQUFJLEVBQUUsV0FBVztZQUNqQixNQUFNLEVBQUUsV0FBVztZQUNuQixhQUFhLEVBQUUsaURBQWlEO1lBQ2hFLFVBQVUsRUFBRSxnQkFBZ0I7WUFDNUIsVUFBVSxFQUFFLFdBQVc7WUFDdkIsZUFBZSxFQUFFLE9BQU87WUFDeEIsVUFBVSxFQUFFO2dCQUNWLE9BQU87YUFDUjtZQUNELFlBQVksRUFBRSxZQUFZO1NBQzNCO1FBQ0QsMkNBQTJDLEVBQUU7WUFDM0MsT0FBTyxFQUFFLCtCQUErQjtZQUN4QyxhQUFhLEVBQUU7Z0JBQ2I7b0JBQ0UsTUFBTSxFQUFFLEtBQUs7b0JBQ2IsTUFBTSxFQUFFLElBQUk7b0JBQ1osVUFBVSxFQUFFLE1BQU07b0JBQ2xCLFNBQVMsRUFBRSxJQUFJO2lCQUNoQjthQUNGO1NBQ0Y7UUFDRCx3QkFBd0IsRUFBRTtZQUN4QixJQUFJLEVBQUUsVUFBVTtZQUNoQixNQUFNLEVBQUUsWUFBWTtZQUNwQixhQUFhLEVBQUUsMENBQTBDO1lBQ3pELFVBQVUsRUFBRSxXQUFXO1lBQ3ZCLFVBQVUsRUFBRSxVQUFVO1lBQ3RCLGVBQWUsRUFBRSxPQUFPO1lBQ3hCLFVBQVUsRUFBRTtnQkFDVixPQUFPO2FBQ1I7WUFDRCxZQUFZLEVBQUUsWUFBWTtTQUMzQjtRQUNELDBDQUEwQyxFQUFFO1lBQzFDLE9BQU8sRUFBRSxvQkFBb0I7WUFDN0IsYUFBYSxFQUFFO2dCQUNiO29CQUNFLE1BQU0sRUFBRSxJQUFJO29CQUNaLE1BQU0sRUFBRSxJQUFJO29CQUNaLFVBQVUsRUFBRSxLQUFLO29CQUNqQixTQUFTLEVBQUUsSUFBSTtpQkFDaEI7YUFDRjtZQUNELFNBQVMsRUFBRTtnQkFDVDtvQkFDRSxLQUFLLEVBQUUsbUJBQW1CO29CQUMxQixPQUFPLEVBQUUsRUFBRTtvQkFDWCxhQUFhLEVBQUUsb0JBQW9CO29CQUNuQyxVQUFVLEVBQUUsSUFBSTtpQkFDakI7Z0JBQ0Q7b0JBQ0UsS0FBSyxFQUFFLGVBQWU7b0JBQ3RCLE9BQU8sRUFBRSxVQUFVO29CQUNuQixhQUFhLEVBQUUsZ0JBQWdCO2lCQUNoQztnQkFDRDtvQkFDRSxLQUFLLEVBQUUsYUFBYTtvQkFDcEIsT0FBTyxFQUFFLFVBQVU7b0JBQ25CLGFBQWEsRUFBRSx1QkFBdUI7aUJBQ3ZDO2FBQ0Y7U0FDRjtRQUNELCtCQUErQixFQUFFO1lBQy9CLElBQUksRUFBRSxpQkFBaUI7WUFDdkIsTUFBTSxFQUFFLGlCQUFpQjtZQUN6QixhQUFhLEVBQUUscUVBQXFFO1lBQ3BGLFVBQVUsRUFBRSxlQUFlO1lBQzNCLFVBQVUsRUFBRSxTQUFTO1lBQ3JCLGVBQWUsRUFBRSxPQUFPO1lBQ3hCLFVBQVUsRUFBRTtnQkFDVixPQUFPO2FBQ1I7WUFDRCxZQUFZLEVBQUUsWUFBWTtZQUMxQixPQUFPLEVBQUU7Z0JBQ1AsU0FBUyxFQUFFLHVCQUF1QjtnQkFDbEMsTUFBTSxFQUFFLG9FQUFvRTthQUM3RTtTQUNGO1FBQ0QsaURBQWlELEVBQUU7WUFDakQsT0FBTyxFQUFFLG9DQUFvQztZQUM3QyxhQUFhLEVBQUU7Z0JBQ2I7b0JBQ0UsTUFBTSxFQUFFLE9BQU87b0JBQ2YsTUFBTSxFQUFFLEtBQUs7b0JBQ2IsVUFBVSxFQUFFLEtBQUs7b0JBQ2pCLFNBQVMsRUFBRSxJQUFJO2lCQUNoQjthQUNGO1lBQ0QsU0FBUyxFQUFFO2dCQUNUO29CQUNFLEtBQUssRUFBRSxPQUFPO29CQUNkLE9BQU8sRUFBRSx5QkFBeUI7b0JBQ2xDLGFBQWEsRUFBRSxxREFBcUQ7b0JBQ3BFLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjtnQkFDRDtvQkFDRSxLQUFLLEVBQUUsZ0JBQWdCO29CQUN2QixPQUFPLEVBQUUsR0FBRztvQkFDWixhQUFhLEVBQUUsdURBQXVEO2lCQUN2RTthQUNGO1NBQ0Y7UUFDRCx5QkFBeUIsRUFBRTtZQUN6QixJQUFJLEVBQUUsV0FBVztZQUNqQixNQUFNLEVBQUUsWUFBWTtZQUNwQixhQUFhLEVBQUUsOEZBQThGO1lBQzdHLFVBQVUsRUFBRSxlQUFlO1lBQzNCLFVBQVUsRUFBRSxPQUFPO1lBQ25CLGVBQWUsRUFBRSxPQUFPO1lBQ3hCLFVBQVUsRUFBRTtnQkFDVixPQUFPO2FBQ1I7WUFDRCxZQUFZLEVBQUUsWUFBWTtZQUMxQixPQUFPLEVBQUU7Z0JBQ1AsUUFBUSxFQUFFLCtDQUErQztnQkFDekQsTUFBTSxFQUFFLG9CQUFvQjthQUM3QjtTQUNGO1FBQ0QsMkNBQTJDLEVBQUU7WUFDM0MsT0FBTyxFQUFFLDhDQUE4QztZQUN2RCxhQUFhLEVBQUU7Z0JBQ2I7b0JBQ0UsTUFBTSxFQUFFLEtBQUs7b0JBQ2IsTUFBTSxFQUFFLElBQUk7b0JBQ1osVUFBVSxFQUFFLE1BQU07b0JBQ2xCLFNBQVMsRUFBRSxJQUFJO2lCQUNoQjtnQkFDRDtvQkFDRSxNQUFNLEVBQUUsU0FBUztvQkFDakIsTUFBTSxFQUFFLElBQUk7b0JBQ1osVUFBVSxFQUFFLEtBQUs7aUJBQ2xCO2dCQUNEO29CQUNFLE1BQU0sRUFBRSxTQUFTO29CQUNqQixNQUFNLEVBQUUsSUFBSTtvQkFDWixVQUFVLEVBQUUsS0FBSztpQkFDbEI7Z0JBQ0Q7b0JBQ0UsTUFBTSxFQUFFLFVBQVU7b0JBQ2xCLE1BQU0sRUFBRSxJQUFJO29CQUNaLFVBQVUsRUFBRSxLQUFLO2lCQUNsQjtnQkFDRDtvQkFDRSxNQUFNLEVBQUUsVUFBVTtvQkFDbEIsTUFBTSxFQUFFLElBQUk7b0JBQ1osVUFBVSxFQUFFLEtBQUs7aUJBQ2xCO2dCQUNEO29CQUNFLE1BQU0sRUFBRSxLQUFLO29CQUNiLE1BQU0sRUFBRSxLQUFLO29CQUNiLFNBQVMsRUFBRSxLQUFLO29CQUNoQixVQUFVLEVBQUUsS0FBSztpQkFDbEI7YUFDRjtZQUNELFNBQVMsRUFBRTtnQkFDVDtvQkFDRSxLQUFLLEVBQUUsa0JBQWtCO29CQUN6QixPQUFPLEVBQUUsRUFBRTtvQkFDWCxhQUFhLEVBQUUsaUZBQWlGO29CQUNoRyxVQUFVLEVBQUUsSUFBSTtpQkFDakI7Z0JBQ0Q7b0JBQ0UsS0FBSyxFQUFFLHFCQUFxQjtvQkFDNUIsT0FBTyxFQUFFLEVBQUU7b0JBQ1gsYUFBYSxFQUFFLDhHQUE4RztpQkFDOUg7Z0JBQ0Q7b0JBQ0UsS0FBSyxFQUFFLG9CQUFvQjtvQkFDM0IsT0FBTyxFQUFFLE1BQU07b0JBQ2YsYUFBYSxFQUFFLG1EQUFtRDtvQkFDbEUsVUFBVSxFQUFFLElBQUk7aUJBQ2pCO2dCQUNEO29CQUNFLEtBQUssRUFBRSx1QkFBdUI7b0JBQzlCLE9BQU8sRUFBRSxNQUFNO29CQUNmLGFBQWEsRUFBRSx5Q0FBeUM7b0JBQ3hELFVBQVUsRUFBRSxJQUFJO2lCQUNqQjtnQkFDRDtvQkFDRSxLQUFLLEVBQUUsd0JBQXdCO29CQUMvQixPQUFPLEVBQUUsT0FBTztvQkFDaEIsYUFBYSxFQUFFLDJCQUEyQjtvQkFDMUMsVUFBVSxFQUFFLElBQUk7aUJBQ2pCO2dCQUNEO29CQUNFLEtBQUssRUFBRSx3QkFBd0I7b0JBQy9CLE9BQU8sRUFBRSxPQUFPO29CQUNoQixhQUFhLEVBQUUsMEJBQTBCO29CQUN6QyxVQUFVLEVBQUUsSUFBSTtpQkFDakI7Z0JBQ0Q7b0JBQ0UsS0FBSyxFQUFFLDZCQUE2QjtvQkFDcEMsT0FBTyxFQUFFLFlBQVk7b0JBQ3JCLGFBQWEsRUFBRSx3RUFBd0U7b0JBQ3ZGLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjtnQkFDRDtvQkFDRSxLQUFLLEVBQUUsdUNBQXVDO29CQUM5QyxPQUFPLEVBQUUsWUFBWTtvQkFDckIsYUFBYSxFQUFFLGtDQUFrQztvQkFDakQsVUFBVSxFQUFFLElBQUk7aUJBQ2pCO2dCQUNEO29CQUNFLEtBQUssRUFBRSxrQ0FBa0M7b0JBQ3pDLE9BQU8sRUFBRSxFQUFFO29CQUNYLGFBQWEsRUFBRSxvREFBb0Q7b0JBQ25FLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjtnQkFDRDtvQkFDRSxLQUFLLEVBQUUsb0NBQW9DO29CQUMzQyxPQUFPLEVBQUUsS0FBSztvQkFDZCxhQUFhLEVBQUUsK0JBQStCO29CQUM5QyxVQUFVLEVBQUUsSUFBSTtpQkFDakI7YUFDRjtZQUNELG9CQUFvQixFQUFFO2dCQUNwQjtvQkFDRSxNQUFNLEVBQUUsU0FBUztvQkFDakIsWUFBWSxFQUFFLElBQUk7b0JBQ2xCLFlBQVksRUFBRSxTQUFTO29CQUN2QixVQUFVLEVBQUUsS0FBSztvQkFDakIsV0FBVyxFQUFFLElBQUk7aUJBQ2xCO2dCQUNEO29CQUNFLE1BQU0sRUFBRSxTQUFTO29CQUNqQixZQUFZLEVBQUUsSUFBSTtvQkFDbEIsWUFBWSxFQUFFLFNBQVM7b0JBQ3ZCLFVBQVUsRUFBRSxLQUFLO29CQUNqQixXQUFXLEVBQUUsSUFBSTtpQkFDbEI7Z0JBQ0Q7b0JBQ0UsTUFBTSxFQUFFLFVBQVU7b0JBQ2xCLFlBQVksRUFBRSxJQUFJO29CQUNsQixZQUFZLEVBQUUsVUFBVTtvQkFDeEIsVUFBVSxFQUFFLEtBQUs7b0JBQ2pCLFdBQVcsRUFBRSxJQUFJO2lCQUNsQjtnQkFDRDtvQkFDRSxNQUFNLEVBQUUsVUFBVTtvQkFDbEIsWUFBWSxFQUFFLElBQUk7b0JBQ2xCLFlBQVksRUFBRSxVQUFVO29CQUN4QixVQUFVLEVBQUUsS0FBSztvQkFDakIsV0FBVyxFQUFFLElBQUk7aUJBQ2xCO2dCQUNEO29CQUNFLE1BQU0sRUFBRSxLQUFLO29CQUNiLFlBQVksRUFBRSxLQUFLO29CQUNuQixlQUFlLEVBQUUsS0FBSztvQkFDdEIsWUFBWSxFQUFFLEtBQUs7b0JBQ25CLFVBQVUsRUFBRSxLQUFLO29CQUNqQixXQUFXLEVBQUUsSUFBSTtpQkFDbEI7YUFDRjtZQUNELHNCQUFzQixFQUFFO2dCQUN0QixTQUFTLEVBQUUsSUFBSTtnQkFDZixJQUFJLEVBQUUsSUFBSTthQUNYO1lBQ0Qsa0JBQWtCLEVBQUUsUUFBUTtTQUM3QjtRQUNELDJCQUEyQixFQUFFO1lBQzNCLElBQUksRUFBRSxhQUFhO1lBQ25CLE1BQU0sRUFBRSxhQUFhO1lBQ3JCLGFBQWEsRUFBRSxvQ0FBb0M7WUFDbkQsVUFBVSxFQUFFLFlBQVk7WUFDeEIsVUFBVSxFQUFFLGFBQWE7WUFDekIsZUFBZSxFQUFFLE9BQU87WUFDeEIsVUFBVSxFQUFFO2dCQUNWLE9BQU87YUFDUjtZQUNELFlBQVksRUFBRSxZQUFZO1NBQzNCO1FBQ0QsNkNBQTZDLEVBQUU7WUFDN0MsT0FBTyxFQUFFLDZCQUE2QjtZQUN0QyxhQUFhLEVBQUU7Z0JBQ2I7b0JBQ0UsTUFBTSxFQUFFLEtBQUs7b0JBQ2IsTUFBTSxFQUFFLElBQUk7b0JBQ1osVUFBVSxFQUFFLE1BQU07b0JBQ2xCLFNBQVMsRUFBRSxJQUFJO2lCQUNoQjthQUNGO1NBQ0Y7UUFDRCxzQkFBc0IsRUFBRTtZQUN0QixJQUFJLEVBQUUsUUFBUTtZQUNkLE1BQU0sRUFBRSxRQUFRO1lBQ2hCLGFBQWEsRUFBRSxvRUFBb0U7WUFDbkYsVUFBVSxFQUFFLFdBQVc7WUFDdkIsVUFBVSxFQUFFLFVBQVU7WUFDdEIsZUFBZSxFQUFFLE9BQU87WUFDeEIsVUFBVSxFQUFFO2dCQUNWLE9BQU87YUFDUjtZQUNELFlBQVksRUFBRSxZQUFZO1NBQzNCO1FBQ0Qsd0NBQXdDLEVBQUU7WUFDeEMsT0FBTyxFQUFFLDRCQUE0QjtZQUNyQyxhQUFhLEVBQUU7Z0JBQ2I7b0JBQ0UsTUFBTSxFQUFFLE9BQU87b0JBQ2YsTUFBTSxFQUFFLElBQUk7b0JBQ1osVUFBVSxFQUFFLEtBQUs7b0JBQ2pCLFNBQVMsRUFBRSxJQUFJO2lCQUNoQjthQUNGO1NBQ0Y7UUFDRCwyQkFBMkIsRUFBRTtZQUMzQixJQUFJLEVBQUUsYUFBYTtZQUNuQixNQUFNLEVBQUUsYUFBYTtZQUNyQixhQUFhLEVBQUUsMERBQTBEO1lBQ3pFLFVBQVUsRUFBRSxVQUFVO1lBQ3RCLFVBQVUsRUFBRSxhQUFhO1lBQ3pCLGVBQWUsRUFBRSxPQUFPO1lBQ3hCLFVBQVUsRUFBRTtnQkFDVixPQUFPO2FBQ1I7WUFDRCxZQUFZLEVBQUUsWUFBWTtTQUMzQjtRQUNELDZDQUE2QyxFQUFFO1lBQzdDLE9BQU8sRUFBRSwyQkFBMkI7WUFDcEMsYUFBYSxFQUFFO2dCQUNiO29CQUNFLE1BQU0sRUFBRSxLQUFLO29CQUNiLE1BQU0sRUFBRSxFQUFFO29CQUNWLFVBQVUsRUFBRSxNQUFNO29CQUNsQixTQUFTLEVBQUUsSUFBSTtpQkFDaEI7YUFDRjtTQUNGO1FBQ0QseUJBQXlCLEVBQUU7WUFDekIsSUFBSSxFQUFFLFdBQVc7WUFDakIsTUFBTSxFQUFFLFdBQVc7WUFDbkIsYUFBYSxFQUFFLCtDQUErQztZQUM5RCxVQUFVLEVBQUUsS0FBSztZQUNqQixVQUFVLEVBQUUsV0FBVztZQUN2QixlQUFlLEVBQUUsT0FBTztZQUN4QixVQUFVLEVBQUU7Z0JBQ1YsT0FBTzthQUNSO1lBQ0QsWUFBWSxFQUFFLFlBQVk7U0FDM0I7UUFDRCwyQ0FBMkMsRUFBRTtZQUMzQyxPQUFPLEVBQUUsa0JBQWtCO1lBQzNCLGFBQWEsRUFBRTtnQkFDYjtvQkFDRSxNQUFNLEVBQUUsS0FBSztvQkFDYixNQUFNLEVBQUUsRUFBRTtvQkFDVixVQUFVLEVBQUUsTUFBTTtvQkFDbEIsU0FBUyxFQUFFLElBQUk7aUJBQ2hCO2FBQ0Y7WUFDRCxTQUFTLEVBQUU7Z0JBQ1Q7b0JBQ0UsS0FBSyxFQUFFLG1CQUFtQjtvQkFDMUIsT0FBTyxFQUFFLGlDQUFpQztvQkFDMUMsYUFBYSxFQUFFLDJDQUEyQztpQkFDM0Q7Z0JBQ0Q7b0JBQ0UsS0FBSyxFQUFFLG1CQUFtQjtvQkFDMUIsT0FBTyxFQUFFLGlCQUFpQjtvQkFDMUIsYUFBYSxFQUFFLDJDQUEyQztpQkFDM0Q7Z0JBQ0Q7b0JBQ0UsS0FBSyxFQUFFLHVCQUF1QjtvQkFDOUIsT0FBTyxFQUFFLHFCQUFxQjtvQkFDOUIsYUFBYSxFQUFFLCtDQUErQztpQkFDL0Q7Z0JBQ0Q7b0JBQ0UsS0FBSyxFQUFFLG1CQUFtQjtvQkFDMUIsT0FBTyxFQUFFLHFCQUFxQjtvQkFDOUIsYUFBYSxFQUFFLDJDQUEyQztpQkFDM0Q7YUFDRjtZQUNELHNCQUFzQixFQUFFO2dCQUN0QixTQUFTLEVBQUUsSUFBSTthQUNoQjtTQUNGO1FBQ0QsZUFBZSxFQUFFO1lBQ2YsZUFBZSxFQUFFLENBQUM7WUFDbEIsV0FBVyxFQUFFLHNCQUFzQjtZQUNuQyxNQUFNLEVBQUU7Z0JBQ047b0JBQ0UsSUFBSSxFQUFFLE9BQU87b0JBQ2IsTUFBTSxFQUFFLE9BQU87b0JBQ2YsYUFBYSxFQUFFLHNGQUFzRjtvQkFDckcsVUFBVSxFQUFFLFlBQVk7b0JBQ3hCLFVBQVUsRUFBRSxPQUFPO29CQUNuQixlQUFlLEVBQUUsT0FBTztvQkFDeEIsTUFBTSxFQUFFO3dCQUNOLEtBQUs7d0JBQ0wsT0FBTztxQkFDUjtpQkFDRjtnQkFDRDtvQkFDRSxJQUFJLEVBQUUsV0FBVztvQkFDakIsTUFBTSxFQUFFLFdBQVc7b0JBQ25CLGFBQWEsRUFBRSxpRkFBaUY7b0JBQ2hHLFVBQVUsRUFBRSxLQUFLO29CQUNqQixVQUFVLEVBQUUsV0FBVztvQkFDdkIsZUFBZSxFQUFFLE9BQU87b0JBQ3hCLE1BQU0sRUFBRTt3QkFDTixLQUFLO3dCQUNMLE1BQU07cUJBQ1A7aUJBQ0Y7Z0JBQ0Q7b0JBQ0UsSUFBSSxFQUFFLE9BQU87b0JBQ2IsTUFBTSxFQUFFLE9BQU87b0JBQ2YsYUFBYSxFQUFFLDZFQUE2RTtvQkFDNUYsVUFBVSxFQUFFLEtBQUs7b0JBQ2pCLFVBQVUsRUFBRSxXQUFXO29CQUN2QixlQUFlLEVBQUUsT0FBTztvQkFDeEIsTUFBTSxFQUFFO3dCQUNOLEtBQUs7d0JBQ0wsTUFBTTt3QkFDTixZQUFZO3FCQUNiO2lCQUNGO2dCQUNEO29CQUNFLElBQUksRUFBRSxPQUFPO29CQUNiLE1BQU0sRUFBRSxPQUFPO29CQUNmLGFBQWEsRUFBRSxvRUFBb0U7b0JBQ25GLFVBQVUsRUFBRSxXQUFXO29CQUN2QixVQUFVLEVBQUUsWUFBWTtvQkFDeEIsZUFBZSxFQUFFLE9BQU87b0JBQ3hCLE1BQU0sRUFBRTt3QkFDTixLQUFLO3dCQUNMLFVBQVU7cUJBQ1g7aUJBQ0Y7Z0JBQ0Q7b0JBQ0UsSUFBSSxFQUFFLFFBQVE7b0JBQ2QsTUFBTSxFQUFFLFFBQVE7b0JBQ2hCLGFBQWEsRUFBRSw2RkFBNkY7b0JBQzVHLFVBQVUsRUFBRSxXQUFXO29CQUN2QixVQUFVLEVBQUUsWUFBWTtvQkFDeEIsZUFBZSxFQUFFLE9BQU87b0JBQ3hCLE1BQU0sRUFBRTt3QkFDTixLQUFLO3dCQUNMLFVBQVU7d0JBQ1YsSUFBSTt3QkFDSixTQUFTO3FCQUNWO2lCQUNGO2dCQUNEO29CQUNFLElBQUksRUFBRSxXQUFXO29CQUNqQixNQUFNLEVBQUUsV0FBVztvQkFDbkIsYUFBYSxFQUFFLG1FQUFtRTtvQkFDbEYsVUFBVSxFQUFFLFNBQVM7b0JBQ3JCLFVBQVUsRUFBRSxTQUFTO29CQUNyQixlQUFlLEVBQUUsT0FBTztvQkFDeEIsTUFBTSxFQUFFO3dCQUNOLFNBQVM7d0JBQ1QsT0FBTztxQkFDUjtpQkFDRjtnQkFDRDtvQkFDRSxJQUFJLEVBQUUsU0FBUztvQkFDZixNQUFNLEVBQUUsU0FBUztvQkFDakIsYUFBYSxFQUFFLGlGQUFpRjtvQkFDaEcsVUFBVSxFQUFFLFlBQVk7b0JBQ3hCLFVBQVUsRUFBRSxTQUFTO29CQUNyQixlQUFlLEVBQUUsT0FBTztvQkFDeEIsTUFBTSxFQUFFO3dCQUNOLFlBQVk7d0JBQ1osZUFBZTtxQkFDaEI7aUJBQ0Y7Z0JBQ0Q7b0JBQ0UsSUFBSSxFQUFFLGFBQWE7b0JBQ25CLE1BQU0sRUFBRSxhQUFhO29CQUNyQixhQUFhLEVBQUUsNEVBQTRFO29CQUMzRixVQUFVLEVBQUUsWUFBWTtvQkFDeEIsVUFBVSxFQUFFLFNBQVM7b0JBQ3JCLGVBQWUsRUFBRSxPQUFPO29CQUN4QixNQUFNLEVBQUU7d0JBQ04sWUFBWTt3QkFDWixRQUFRO3FCQUNUO2lCQUNGO2dCQUNEO29CQUNFLElBQUksRUFBRSxXQUFXO29CQUNqQixNQUFNLEVBQUUscUJBQXFCO29CQUM3QixhQUFhLEVBQUUsdUVBQXVFO29CQUN0RixVQUFVLEVBQUUsV0FBVztvQkFDdkIsVUFBVSxFQUFFLFNBQVM7b0JBQ3JCLGVBQWUsRUFBRSxPQUFPO29CQUN4QixNQUFNLEVBQUU7d0JBQ04sV0FBVztxQkFDWjtpQkFDRjtnQkFDRDtvQkFDRSxJQUFJLEVBQUUsYUFBYTtvQkFDbkIsTUFBTSxFQUFFLGFBQWE7b0JBQ3JCLGFBQWEsRUFBRSwyREFBMkQ7b0JBQzFFLFVBQVUsRUFBRSxVQUFVO29CQUN0QixVQUFVLEVBQUUsUUFBUTtvQkFDcEIsZUFBZSxFQUFFLE9BQU87b0JBQ3hCLE1BQU0sRUFBRTt3QkFDTixVQUFVO3dCQUNWLFdBQVc7cUJBQ1o7aUJBQ0Y7Z0JBQ0Q7b0JBQ0UsSUFBSSxFQUFFLFNBQVM7b0JBQ2YsTUFBTSxFQUFFLFNBQVM7b0JBQ2pCLGFBQWEsRUFBRSw2RUFBNkU7b0JBQzVGLFVBQVUsRUFBRSxVQUFVO29CQUN0QixVQUFVLEVBQUUsUUFBUTtvQkFDcEIsZUFBZSxFQUFFLE9BQU87b0JBQ3hCLE1BQU0sRUFBRTt3QkFDTixVQUFVO3dCQUNWLFNBQVM7d0JBQ1QsWUFBWTt3QkFDWixVQUFVO3FCQUNYO2lCQUNGO2dCQUNEO29CQUNFLElBQUksRUFBRSxLQUFLO29CQUNYLE1BQU0sRUFBRSxLQUFLO29CQUNiLGFBQWEsRUFBRSxnRkFBZ0Y7b0JBQy9GLFVBQVUsRUFBRSxZQUFZO29CQUN4QixVQUFVLEVBQUUsUUFBUTtvQkFDcEIsZUFBZSxFQUFFLE9BQU87b0JBQ3hCLE1BQU0sRUFBRTt3QkFDTixZQUFZO3dCQUNaLFVBQVU7cUJBQ1g7aUJBQ0Y7Z0JBQ0Q7b0JBQ0UsSUFBSSxFQUFFLFlBQVk7b0JBQ2xCLE1BQU0sRUFBRSxZQUFZO29CQUNwQixhQUFhLEVBQUUseUVBQXlFO29CQUN4RixVQUFVLEVBQUUsZUFBZTtvQkFDM0IsVUFBVSxFQUFFLE1BQU07b0JBQ2xCLGVBQWUsRUFBRSxPQUFPO29CQUN4QixNQUFNLEVBQUU7d0JBQ04sZUFBZTt3QkFDZixNQUFNO3FCQUNQO2lCQUNGO2dCQUNEO29CQUNFLElBQUksRUFBRSxXQUFXO29CQUNqQixNQUFNLEVBQUUsWUFBWTtvQkFDcEIsYUFBYSxFQUFFLDhGQUE4RjtvQkFDN0csVUFBVSxFQUFFLGVBQWU7b0JBQzNCLFVBQVUsRUFBRSxPQUFPO29CQUNuQixlQUFlLEVBQUUsT0FBTztvQkFDeEIsTUFBTSxFQUFFO3dCQUNOLEtBQUs7d0JBQ0wsV0FBVzt3QkFDWCxRQUFRO3dCQUNSLE9BQU87d0JBQ1AsS0FBSztxQkFDTjtpQkFDRjtnQkFDRDtvQkFDRSxJQUFJLEVBQUUsV0FBVztvQkFDakIsTUFBTSxFQUFFLFdBQVc7b0JBQ25CLGFBQWEsRUFBRSwyRUFBMkU7b0JBQzFGLFVBQVUsRUFBRSxXQUFXO29CQUN2QixVQUFVLEVBQUUsU0FBUztvQkFDckIsZUFBZSxFQUFFLE9BQU87b0JBQ3hCLE1BQU0sRUFBRTt3QkFDTixRQUFRO3dCQUNSLFVBQVU7cUJBQ1g7aUJBQ0Y7Z0JBQ0Q7b0JBQ0UsSUFBSSxFQUFFLGlCQUFpQjtvQkFDdkIsTUFBTSxFQUFFLGlCQUFpQjtvQkFDekIsYUFBYSxFQUFFLDRFQUE0RTtvQkFDM0YsVUFBVSxFQUFFLGVBQWU7b0JBQzNCLFVBQVUsRUFBRSxTQUFTO29CQUNyQixlQUFlLEVBQUUsT0FBTztvQkFDeEIsTUFBTSxFQUFFO3dCQUNOLGdCQUFnQjt3QkFDaEIsT0FBTzt3QkFDUCxhQUFhO3FCQUNkO2lCQUNGO2dCQUNEO29CQUNFLElBQUksRUFBRSxTQUFTO29CQUNmLE1BQU0sRUFBRSxTQUFTO29CQUNqQixhQUFhLEVBQUUsZ0dBQWdHO29CQUMvRyxVQUFVLEVBQUUsV0FBVztvQkFDdkIsVUFBVSxFQUFFLFFBQVE7b0JBQ3BCLGVBQWUsRUFBRSxPQUFPO29CQUN4QixNQUFNLEVBQUU7d0JBQ04sWUFBWTt3QkFDWixlQUFlO3dCQUNmLFVBQVU7d0JBQ1YsYUFBYTtxQkFDZDtpQkFDRjtnQkFDRDtvQkFDRSxJQUFJLEVBQUUsUUFBUTtvQkFDZCxNQUFNLEVBQUUsUUFBUTtvQkFDaEIsYUFBYSxFQUFFLCtFQUErRTtvQkFDOUYsVUFBVSxFQUFFLFVBQVU7b0JBQ3RCLFVBQVUsRUFBRSxVQUFVO29CQUN0QixlQUFlLEVBQUUsT0FBTztvQkFDeEIsTUFBTSxFQUFFO3dCQUNOLFVBQVU7d0JBQ1YsT0FBTztxQkFDUjtpQkFDRjtnQkFDRDtvQkFDRSxJQUFJLEVBQUUsVUFBVTtvQkFDaEIsTUFBTSxFQUFFLFlBQVk7b0JBQ3BCLGFBQWEsRUFBRSxzRUFBc0U7b0JBQ3JGLFVBQVUsRUFBRSxVQUFVO29CQUN0QixVQUFVLEVBQUUsVUFBVTtvQkFDdEIsZUFBZSxFQUFFLE9BQU87b0JBQ3hCLE1BQU0sRUFBRTt3QkFDTixVQUFVO3dCQUNWLEtBQUs7cUJBQ047aUJBQ0Y7Z0JBQ0Q7b0JBQ0UsSUFBSSxFQUFFLFNBQVM7b0JBQ2YsTUFBTSxFQUFFLFNBQVM7b0JBQ2pCLGFBQWEsRUFBRSxnRkFBZ0Y7b0JBQy9GLFVBQVUsRUFBRSxVQUFVO29CQUN0QixVQUFVLEVBQUUsVUFBVTtvQkFDdEIsZUFBZSxFQUFFLE9BQU87b0JBQ3hCLE1BQU0sRUFBRTt3QkFDTixVQUFVO3dCQUNWLEtBQUs7d0JBQ0wsT0FBTztxQkFDUjtpQkFDRjtnQkFDRDtvQkFDRSxJQUFJLEVBQUUsU0FBUztvQkFDZixNQUFNLEVBQUUsU0FBUztvQkFDakIsYUFBYSxFQUFFLG9GQUFvRjtvQkFDbkcsVUFBVSxFQUFFLFdBQVc7b0JBQ3ZCLFVBQVUsRUFBRSxVQUFVO29CQUN0QixlQUFlLEVBQUUsT0FBTztvQkFDeEIsTUFBTSxFQUFFO3dCQUNOLFVBQVU7d0JBQ1YsVUFBVTtxQkFDWDtpQkFDRjthQUNGO1NBQ0Y7S0FDRjtJQUNELFdBQVcsRUFBRSxFQUFFO0NBQ2hCLENBQUMifQ==
2075
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS5nZW5lcmF0ZWQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi90c19jbGllbnQvZGF0YS5nZW5lcmF0ZWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsNEVBQTRFO0FBSTVFLE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUF5QjtJQUN2RCxhQUFhLEVBQUUsMEJBQTBCO0lBQ3pDLFdBQVcsRUFBRTtRQUNYLHVCQUF1QixFQUFFO1lBQ3ZCLElBQUksRUFBRSxTQUFTO1lBQ2YsTUFBTSxFQUFFLFNBQVM7WUFDakIsYUFBYSxFQUFFLHlEQUF5RDtZQUN4RSxVQUFVLEVBQUUsV0FBVztZQUN2QixVQUFVLEVBQUUsU0FBUztZQUNyQixlQUFlLEVBQUUsT0FBTztZQUN4QixVQUFVLEVBQUU7Z0JBQ1YsT0FBTzthQUNSO1lBQ0QsWUFBWSxFQUFFLFlBQVk7U0FDM0I7UUFDRCx5Q0FBeUMsRUFBRTtZQUN6QyxPQUFPLEVBQUUsZ0JBQWdCO1lBQ3pCLGFBQWEsRUFBRTtnQkFDYjtvQkFDRSxNQUFNLEVBQUUsS0FBSztvQkFDYixNQUFNLEVBQUUsSUFBSTtvQkFDWixVQUFVLEVBQUUsTUFBTTtvQkFDbEIsU0FBUyxFQUFFLElBQUk7aUJBQ2hCO2FBQ0Y7U0FDRjtRQUNELHVCQUF1QixFQUFFO1lBQ3ZCLElBQUksRUFBRSxTQUFTO1lBQ2YsTUFBTSxFQUFFLFNBQVM7WUFDakIsYUFBYSxFQUFFLGdHQUFnRztZQUMvRyxVQUFVLEVBQUUsV0FBVztZQUN2QixVQUFVLEVBQUUsUUFBUTtZQUNwQixlQUFlLEVBQUUsT0FBTztZQUN4QixVQUFVLEVBQUU7Z0JBQ1YsT0FBTztnQkFDUCxPQUFPO2dCQUNQLE9BQU87Z0JBQ1AsT0FBTztnQkFDUCxPQUFPO2dCQUNQLE9BQU87Z0JBQ1AsT0FBTzthQUNSO1lBQ0QsWUFBWSxFQUFFLFlBQVk7WUFDMUIsT0FBTyxFQUFFO2dCQUNQLFFBQVEsRUFBRSw2Q0FBNkM7Z0JBQ3ZELE1BQU0sRUFBRSxvQkFB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
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@serve.zone/appstore",
3
- "version": "2.2.0",
3
+ "version": "2.4.0",
4
4
  "private": false,
5
5
  "description": "serve.zone App Store metadata, parser, and resolver client.",
6
6
  "type": "module",
@@ -17,7 +17,7 @@
17
17
  "@git.zone/tsbuild": "^4.4.2",
18
18
  "@git.zone/tsdoc": "^2.1.1",
19
19
  "@git.zone/tstest": "^4.0.0",
20
- "@types/node": "^26.1.2"
20
+ "@types/node": "^26.2.0"
21
21
  },
22
22
  "files": [
23
23
  "apps/**/*",
package/readme.md CHANGED
@@ -31,7 +31,7 @@ The App Store currently lists 21 app templates.
31
31
  | App ID | Name | App Store category | Image | Port |
32
32
  | --- | --- | --- | --- | --- |
33
33
  | `adminer` | Adminer | Dev Tools | `adminer:latest` | `8080` |
34
- | `cloudly` | Cloudly | Dev Tools | `code.foss.global/serve.zone/cloudly@sha256:330b4f1617616e655eb411c10067367748f543522c2fc59483b3ff7656d972c6` | `3000` |
34
+ | `cloudly` | Cloudly | Dev Tools | `code.foss.global/serve.zone/cloudly@sha256:7aec3b1f553292cefd5fd421a70e6c50463af168b14b1e4b127597991efa30dd` | `3000` |
35
35
  | `ghost` | Ghost | CMS | `ghost:latest` | `2368` |
36
36
  | `gitea` | Gitea | Dev Tools | `gitea/gitea:latest` | `3000` |
37
37
  | `gitops` | GitOps | Dev Tools | `code.foss.global/serve.zone/gitops:2.13.0` | `3000` |
@@ -58,7 +58,7 @@ Some templates ask Onebox to provision local platform services and inject connec
58
58
 
59
59
  | App ID | Requirements | Notes |
60
60
  | --- | --- | --- |
61
- | `cloudly` | MongoDB, S3 | Version `1.1.3` requires Onebox `7.1.22` and its manual offline Secrets v2 cutover coordinator. Cutovers already started against `1.1.2` require an explicit held-operation target advance before keyring preparation. The flow retains verified backup/restore, explicit phase gates, and full-restore-only rollback. |
61
+ | `cloudly` | MongoDB, S3 | Version `1.1.5` pins Cloudly `19.2.0` and requires Onebox `7.5.0`. The operator-approved WorkloadInit release authority is a required encrypted input delivered only as a root-readable file; the public environment contains its fixed file path, never its value. Onebox must complete its fenced retarget, zero-blocker diagnostics, allocation-fenced scratch rehearsal, receipt-bound production preparation, and mount verification before applying the held target. Rollback remains full-restore-only. |
62
62
  | `ghost` | MariaDB | Uses MySQL-style `database__connection__*` environment variables. |
63
63
  | `gitea` | MariaDB | Uses Gitea database environment variables with `${MARIADB_*}` placeholders. |
64
64
  | `nextcloud` | MariaDB, Valkey | Uses MySQL-compatible database variables. Valkey is declared as a platform requirement. |
@@ -34,13 +34,15 @@ export const appStorePackageData: IAppStorePackageData = {
34
34
  "description": "Multi-node serve.zone control plane for clusters, workload services, domains, and deployments.",
35
35
  "category": "Dev Tools",
36
36
  "iconName": "server",
37
- "latestVersion": "1.1.3",
37
+ "latestVersion": "1.1.5",
38
38
  "versions": [
39
39
  "1.0.0",
40
40
  "1.1.0",
41
41
  "1.1.1",
42
42
  "1.1.2",
43
- "1.1.3"
43
+ "1.1.3",
44
+ "1.1.4",
45
+ "1.1.5"
44
46
  ],
45
47
  "maintainer": "serve.zone",
46
48
  "links": {
@@ -693,6 +695,295 @@ export const appStorePackageData: IAppStorePackageData = {
693
695
  "expectedStatus": 200
694
696
  }
695
697
  },
698
+ "apps/cloudly/versions/1.1.4/config.json": {
699
+ "image": "code.foss.global/serve.zone/cloudly@sha256:330b4f1617616e655eb411c10067367748f543522c2fc59483b3ff7656d972c6",
700
+ "targetPorts": [
701
+ {
702
+ "name": "web",
703
+ "port": 3000,
704
+ "protocol": "http",
705
+ "default": true
706
+ }
707
+ ],
708
+ "envVars": [
709
+ {
710
+ "key": "SERVEZONE_ENVIRONMENT",
711
+ "value": "production",
712
+ "description": "Cloudly runtime environment.",
713
+ "required": true
714
+ },
715
+ {
716
+ "key": "SERVEZONE_PUBLIC_ORIGIN",
717
+ "value": "https://${SERVICE_DOMAIN}",
718
+ "description": "Canonical public Cloudly origin including protocol and optional public port.",
719
+ "required": true
720
+ },
721
+ {
722
+ "key": "SERVEZONE_LISTENPORT",
723
+ "value": "3000",
724
+ "description": "Internal Cloudly HTTP port inside the container.",
725
+ "required": true
726
+ },
727
+ {
728
+ "key": "SERVEZONE_SSLMODE",
729
+ "value": "external",
730
+ "description": "Use external TLS termination through Onebox or dcrouter.",
731
+ "required": true
732
+ },
733
+ {
734
+ "key": "MONGODB_URL",
735
+ "value": "${MONGODB_URI}",
736
+ "description": "Authenticated MongoDB wire-protocol URL provisioned by Onebox Corestore.",
737
+ "required": true
738
+ },
739
+ {
740
+ "key": "MONGODB_NAME",
741
+ "value": "${MONGODB_DATABASE}",
742
+ "description": "MongoDB wire-protocol database name provisioned by Onebox Corestore.",
743
+ "required": true
744
+ },
745
+ {
746
+ "key": "MONGODB_USER",
747
+ "value": "${MONGODB_USERNAME}",
748
+ "description": "MongoDB wire-protocol username provisioned by Onebox Corestore.",
749
+ "required": true
750
+ },
751
+ {
752
+ "key": "MONGODB_PASS",
753
+ "value": "${MONGODB_PASSWORD}",
754
+ "description": "MongoDB wire-protocol password provisioned by Onebox Corestore.",
755
+ "required": true
756
+ },
757
+ {
758
+ "key": "S3_ENDPOINT",
759
+ "value": "onebox-corestore",
760
+ "description": "S3 endpoint host provisioned by Onebox Corestore.",
761
+ "required": true
762
+ },
763
+ {
764
+ "key": "S3_PORT",
765
+ "value": "9000",
766
+ "description": "S3 endpoint port provisioned by Onebox Corestore.",
767
+ "required": true
768
+ },
769
+ {
770
+ "key": "S3_USESSL",
771
+ "value": "false",
772
+ "description": "Use plain HTTP for internal Corestore S3 traffic on the Onebox network.",
773
+ "required": true
774
+ },
775
+ {
776
+ "key": "S3_BUCKET",
777
+ "value": "${S3_BUCKET}",
778
+ "description": "S3 bucket provisioned by Onebox Corestore for Cloudly's registry.",
779
+ "required": true
780
+ },
781
+ {
782
+ "key": "S3_ACCESSKEY",
783
+ "value": "${S3_ACCESS_KEY}",
784
+ "description": "S3 access key provisioned by Onebox Corestore.",
785
+ "required": true
786
+ },
787
+ {
788
+ "key": "S3_SECRETKEY",
789
+ "value": "${S3_SECRET_KEY}",
790
+ "description": "S3 secret key provisioned by Onebox Corestore.",
791
+ "required": true
792
+ }
793
+ ],
794
+ "platformRequirements": {
795
+ "mongodb": true,
796
+ "s3": true
797
+ },
798
+ "platformOidc": {
799
+ "redirectPath": "/auth/oidc/callback",
800
+ "roles": [
801
+ {
802
+ "id": "admin",
803
+ "label": "Administrator",
804
+ "description": "Full Cloudly administration for this hosted instance."
805
+ },
806
+ {
807
+ "id": "user",
808
+ "label": "User",
809
+ "description": "Standard authenticated Cloudly access for this hosted instance."
810
+ }
811
+ ],
812
+ "environmentVariables": {
813
+ "issuerUrl": "SERVEZONE_PLATFORM_OIDC_ISSUER",
814
+ "clientId": "SERVEZONE_PLATFORM_OIDC_CLIENT_ID",
815
+ "clientSecret": "SERVEZONE_PLATFORM_OIDC_CLIENT_SECRET",
816
+ "redirectUri": "SERVEZONE_PLATFORM_OIDC_REDIRECT_URI",
817
+ "audience": "SERVEZONE_PLATFORM_OIDC_AUDIENCE"
818
+ },
819
+ "clientAuthenticationMethod": "client_secret_basic"
820
+ },
821
+ "minOneboxVersion": "7.2.0",
822
+ "changelog": "Require Onebox's allocation-fenced scratch rehearsal and receipt-bound production preparation for the Cloudly 17.1.0 Secrets v2 cutover.",
823
+ "breaking": true,
824
+ "requiresManualReview": true,
825
+ "migrationRequired": true,
826
+ "backupBeforeUpgrade": true,
827
+ "healthCheck": {
828
+ "path": "/status",
829
+ "port": 3000,
830
+ "expectedStatus": 200
831
+ }
832
+ },
833
+ "apps/cloudly/versions/1.1.5/config.json": {
834
+ "image": "code.foss.global/serve.zone/cloudly@sha256:7aec3b1f553292cefd5fd421a70e6c50463af168b14b1e4b127597991efa30dd",
835
+ "targetPorts": [
836
+ {
837
+ "name": "web",
838
+ "port": 3000,
839
+ "protocol": "http",
840
+ "default": true
841
+ }
842
+ ],
843
+ "envVars": [
844
+ {
845
+ "key": "SERVEZONE_ENVIRONMENT",
846
+ "value": "production",
847
+ "description": "Cloudly runtime environment.",
848
+ "required": true
849
+ },
850
+ {
851
+ "key": "SERVEZONE_PUBLIC_ORIGIN",
852
+ "value": "https://${SERVICE_DOMAIN}",
853
+ "description": "Canonical public Cloudly origin including protocol and optional public port.",
854
+ "required": true
855
+ },
856
+ {
857
+ "key": "SERVEZONE_LISTENPORT",
858
+ "value": "3000",
859
+ "description": "Internal Cloudly HTTP port inside the container.",
860
+ "required": true
861
+ },
862
+ {
863
+ "key": "SERVEZONE_SSLMODE",
864
+ "value": "external",
865
+ "description": "Use external TLS termination through Onebox or dcrouter.",
866
+ "required": true
867
+ },
868
+ {
869
+ "key": "SERVEZONE_WORKLOADINIT_APPROVAL_PATH",
870
+ "value": "/run/secrets/cloudly-workloadinit-approval.json",
871
+ "description": "Private WorkloadInit release-approval artifact mounted by Onebox for Coreflow secret-runtime registration.",
872
+ "required": true
873
+ },
874
+ {
875
+ "key": "SERVEZONE_WORKLOADINIT_APPROVAL_FILE",
876
+ "description": "Operator-approved WorkloadInit release authority. Onebox stores it encrypted and mounts it only as a root-readable file.",
877
+ "required": true,
878
+ "secret": true,
879
+ "delivery": {
880
+ "type": "file",
881
+ "targetPath": "/run/secrets/cloudly-workloadinit-approval.json",
882
+ "uid": 0,
883
+ "gid": 0,
884
+ "mode": 256
885
+ }
886
+ },
887
+ {
888
+ "key": "MONGODB_URL",
889
+ "value": "${MONGODB_URI}",
890
+ "description": "Authenticated MongoDB wire-protocol URL provisioned by Onebox Corestore.",
891
+ "required": true
892
+ },
893
+ {
894
+ "key": "MONGODB_NAME",
895
+ "value": "${MONGODB_DATABASE}",
896
+ "description": "MongoDB wire-protocol database name provisioned by Onebox Corestore.",
897
+ "required": true
898
+ },
899
+ {
900
+ "key": "MONGODB_USER",
901
+ "value": "${MONGODB_USERNAME}",
902
+ "description": "MongoDB wire-protocol username provisioned by Onebox Corestore.",
903
+ "required": true
904
+ },
905
+ {
906
+ "key": "MONGODB_PASS",
907
+ "value": "${MONGODB_PASSWORD}",
908
+ "description": "MongoDB wire-protocol password provisioned by Onebox Corestore.",
909
+ "required": true
910
+ },
911
+ {
912
+ "key": "S3_ENDPOINT",
913
+ "value": "onebox-corestore",
914
+ "description": "S3 endpoint host provisioned by Onebox Corestore.",
915
+ "required": true
916
+ },
917
+ {
918
+ "key": "S3_PORT",
919
+ "value": "9000",
920
+ "description": "S3 endpoint port provisioned by Onebox Corestore.",
921
+ "required": true
922
+ },
923
+ {
924
+ "key": "S3_USESSL",
925
+ "value": "false",
926
+ "description": "Use plain HTTP for internal Corestore S3 traffic on the Onebox network.",
927
+ "required": true
928
+ },
929
+ {
930
+ "key": "S3_BUCKET",
931
+ "value": "${S3_BUCKET}",
932
+ "description": "S3 bucket provisioned by Onebox Corestore for Cloudly's registry.",
933
+ "required": true
934
+ },
935
+ {
936
+ "key": "S3_ACCESSKEY",
937
+ "value": "${S3_ACCESS_KEY}",
938
+ "description": "S3 access key provisioned by Onebox Corestore.",
939
+ "required": true
940
+ },
941
+ {
942
+ "key": "S3_SECRETKEY",
943
+ "value": "${S3_SECRET_KEY}",
944
+ "description": "S3 secret key provisioned by Onebox Corestore.",
945
+ "required": true
946
+ }
947
+ ],
948
+ "platformRequirements": {
949
+ "mongodb": true,
950
+ "s3": true
951
+ },
952
+ "platformOidc": {
953
+ "redirectPath": "/auth/oidc/callback",
954
+ "roles": [
955
+ {
956
+ "id": "admin",
957
+ "label": "Administrator",
958
+ "description": "Full Cloudly administration for this hosted instance."
959
+ },
960
+ {
961
+ "id": "user",
962
+ "label": "User",
963
+ "description": "Standard authenticated Cloudly access for this hosted instance."
964
+ }
965
+ ],
966
+ "environmentVariables": {
967
+ "issuerUrl": "SERVEZONE_PLATFORM_OIDC_ISSUER",
968
+ "clientId": "SERVEZONE_PLATFORM_OIDC_CLIENT_ID",
969
+ "clientSecret": "SERVEZONE_PLATFORM_OIDC_CLIENT_SECRET",
970
+ "redirectUri": "SERVEZONE_PLATFORM_OIDC_REDIRECT_URI",
971
+ "audience": "SERVEZONE_PLATFORM_OIDC_AUDIENCE"
972
+ },
973
+ "clientAuthenticationMethod": "client_secret_basic"
974
+ },
975
+ "minOneboxVersion": "7.5.0",
976
+ "changelog": "Bind the Cloudly 19.2.0 Secrets v2 target and require Onebox's fenced WorkloadInit approval staging before a new scratch rehearsal.",
977
+ "breaking": true,
978
+ "requiresManualReview": true,
979
+ "migrationRequired": true,
980
+ "backupBeforeUpgrade": true,
981
+ "healthCheck": {
982
+ "path": "/status",
983
+ "port": 3000,
984
+ "expectedStatus": 200
985
+ }
986
+ },
696
987
  "apps/ghost/app.json": {
697
988
  "id": "ghost",
698
989
  "name": "Ghost",
@@ -1514,7 +1805,7 @@ export const appStorePackageData: IAppStorePackageData = {
1514
1805
  },
1515
1806
  "appstore.json": {
1516
1807
  "schemaVersion": 1,
1517
- "updatedAt": "2026-08-07T00:00:00Z",
1808
+ "updatedAt": "2026-08-13T00:00:00Z",
1518
1809
  "apps": [
1519
1810
  {
1520
1811
  "id": "nginx",
@@ -1722,7 +2013,7 @@ export const appStorePackageData: IAppStorePackageData = {
1722
2013
  "description": "Multi-node serve.zone control plane for clusters, workload services, domains, and deployments.",
1723
2014
  "category": "Dev Tools",
1724
2015
  "iconName": "server",
1725
- "latestVersion": "1.1.3",
2016
+ "latestVersion": "1.1.5",
1726
2017
  "tags": [
1727
2018
  "serve.zone",
1728
2019
  "control-plane",