@raystack/proton 0.1.0-8cb19702a3e47d173732860d58084b83d6941865 → 0.1.0-985fb92154095bf54ef5ed08a3995100c147a25d
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/README.md +2 -0
- package/google/api/annotations_pb.d.ts +34 -0
- package/google/api/annotations_pb.js +36 -0
- package/google/api/annotations_pb.ts +1 -1
- package/google/api/field_behavior_pb.d.ts +134 -0
- package/google/api/field_behavior_pb.js +65 -0
- package/google/api/field_behavior_pb.ts +1 -1
- package/google/api/http_pb.d.ts +477 -0
- package/google/api/http_pb.js +47 -0
- package/google/api/http_pb.ts +1 -1
- package/google/api/httpbody_pb.d.ts +104 -0
- package/google/api/httpbody_pb.js +34 -0
- package/google/api/httpbody_pb.ts +1 -1
- package/index.d.ts +10 -0
- package/index.js +10 -0
- package/package.json +37 -36
- package/protoc-gen-openapiv2/options/annotations_pb.d.ts +63 -0
- package/protoc-gen-openapiv2/options/annotations_pb.js +69 -0
- package/protoc-gen-openapiv2/options/annotations_pb.ts +1 -1
- package/protoc-gen-openapiv2/options/openapiv2_pb.d.ts +1497 -0
- package/protoc-gen-openapiv2/options/openapiv2_pb.js +232 -0
- package/protoc-gen-openapiv2/options/openapiv2_pb.ts +1 -1
- package/raystack/assets/index.d.ts +29 -0
- package/raystack/assets/index.js +29 -0
- package/raystack/assets/v1beta1/bucket_pb.d.ts +180 -0
- package/raystack/assets/v1beta1/bucket_pb.js +32 -0
- package/raystack/assets/v1beta1/bucket_pb.ts +1 -1
- package/raystack/assets/v1beta1/dashboard_pb.d.ts +217 -0
- package/raystack/assets/v1beta1/dashboard_pb.js +32 -0
- package/raystack/assets/v1beta1/dashboard_pb.ts +1 -1
- package/raystack/assets/v1beta1/event_pb.d.ts +52 -0
- package/raystack/assets/v1beta1/event_pb.js +20 -0
- package/raystack/assets/v1beta1/event_pb.ts +1 -1
- package/raystack/assets/v1beta1/group_pb.d.ts +105 -0
- package/raystack/assets/v1beta1/group_pb.js +30 -0
- package/raystack/assets/v1beta1/group_pb.ts +1 -1
- package/raystack/assets/v1beta1/job_pb.d.ts +78 -0
- package/raystack/assets/v1beta1/job_pb.js +25 -0
- package/raystack/assets/v1beta1/job_pb.ts +1 -1
- package/raystack/assets/v1beta1/lineage_pb.d.ts +43 -0
- package/raystack/assets/v1beta1/lineage_pb.js +20 -0
- package/raystack/assets/v1beta1/lineage_pb.ts +1 -1
- package/raystack/assets/v1beta1/ownership_pb.d.ts +78 -0
- package/raystack/assets/v1beta1/ownership_pb.js +26 -0
- package/raystack/assets/v1beta1/ownership_pb.ts +1 -1
- package/raystack/assets/v1beta1/preview_pb.d.ts +41 -0
- package/raystack/assets/v1beta1/preview_pb.js +20 -0
- package/raystack/assets/v1beta1/preview_pb.ts +1 -1
- package/raystack/assets/v1beta1/properties_pb.d.ts +44 -0
- package/raystack/assets/v1beta1/properties_pb.js +20 -0
- package/raystack/assets/v1beta1/properties_pb.ts +1 -1
- package/raystack/assets/v1beta1/resource_pb.d.ts +74 -0
- package/raystack/assets/v1beta1/resource_pb.js +19 -0
- package/raystack/assets/v1beta1/resource_pb.ts +1 -1
- package/raystack/assets/v1beta1/schema_pb.d.ts +169 -0
- package/raystack/assets/v1beta1/schema_pb.js +41 -0
- package/raystack/assets/v1beta1/schema_pb.ts +1 -1
- package/raystack/assets/v1beta1/table_pb.d.ts +192 -0
- package/raystack/assets/v1beta1/table_pb.js +41 -0
- package/raystack/assets/v1beta1/table_pb.ts +1 -1
- package/raystack/assets/v1beta1/timestamp_pb.d.ts +68 -0
- package/raystack/assets/v1beta1/timestamp_pb.js +27 -0
- package/raystack/assets/v1beta1/timestamp_pb.ts +1 -1
- package/raystack/assets/v1beta1/topic_pb.d.ts +125 -0
- package/raystack/assets/v1beta1/topic_pb.js +33 -0
- package/raystack/assets/v1beta1/topic_pb.ts +1 -1
- package/raystack/assets/v1beta1/user_pb.d.ts +216 -0
- package/raystack/assets/v1beta1/user_pb.js +37 -0
- package/raystack/assets/v1beta1/user_pb.ts +1 -1
- package/raystack/assets/v1beta2/application_pb.d.ts +59 -0
- package/raystack/assets/v1beta2/application_pb.js +20 -0
- package/raystack/assets/v1beta2/application_pb.ts +1 -1
- package/raystack/assets/v1beta2/asset_pb.d.ts +129 -0
- package/raystack/assets/v1beta2/asset_pb.js +21 -0
- package/raystack/assets/v1beta2/asset_pb.ts +1 -1
- package/raystack/assets/v1beta2/bucket_pb.d.ts +163 -0
- package/raystack/assets/v1beta2/bucket_pb.js +28 -0
- package/raystack/assets/v1beta2/bucket_pb.ts +1 -1
- package/raystack/assets/v1beta2/common_pb.d.ts +170 -0
- package/raystack/assets/v1beta2/common_pb.js +41 -0
- package/raystack/assets/v1beta2/common_pb.ts +1 -1
- package/raystack/assets/v1beta2/dashboard_pb.d.ts +192 -0
- package/raystack/assets/v1beta2/dashboard_pb.js +28 -0
- package/raystack/assets/v1beta2/dashboard_pb.ts +1 -1
- package/raystack/assets/v1beta2/experiment_pb.d.ts +134 -0
- package/raystack/assets/v1beta2/experiment_pb.js +27 -0
- package/raystack/assets/v1beta2/experiment_pb.ts +1 -1
- package/raystack/assets/v1beta2/feature_table_pb.d.ts +167 -0
- package/raystack/assets/v1beta2/feature_table_pb.js +34 -0
- package/raystack/assets/v1beta2/feature_table_pb.ts +1 -1
- package/raystack/assets/v1beta2/group_pb.d.ts +77 -0
- package/raystack/assets/v1beta2/group_pb.js +27 -0
- package/raystack/assets/v1beta2/group_pb.ts +1 -1
- package/raystack/assets/v1beta2/job_pb.d.ts +47 -0
- package/raystack/assets/v1beta2/job_pb.js +20 -0
- package/raystack/assets/v1beta2/job_pb.ts +1 -1
- package/raystack/assets/v1beta2/metric_pb.d.ts +83 -0
- package/raystack/assets/v1beta2/metric_pb.js +20 -0
- package/raystack/assets/v1beta2/metric_pb.ts +1 -1
- package/raystack/assets/v1beta2/model_pb.d.ts +227 -0
- package/raystack/assets/v1beta2/model_pb.js +41 -0
- package/raystack/assets/v1beta2/model_pb.ts +1 -1
- package/raystack/assets/v1beta2/table_pb.d.ts +283 -0
- package/raystack/assets/v1beta2/table_pb.js +48 -0
- package/raystack/assets/v1beta2/table_pb.ts +1 -1
- package/raystack/assets/v1beta2/topic_pb.d.ts +117 -0
- package/raystack/assets/v1beta2/topic_pb.js +34 -0
- package/raystack/assets/v1beta2/topic_pb.ts +1 -1
- package/raystack/assets/v1beta2/user_pb.d.ts +203 -0
- package/raystack/assets/v1beta2/user_pb.js +34 -0
- package/raystack/assets/v1beta2/user_pb.ts +1 -1
- package/raystack/common/index.d.ts +2 -0
- package/raystack/common/index.js +2 -0
- package/raystack/common/v1/service-CommonService_connectquery.d.ts +10 -0
- package/raystack/common/v1/service-CommonService_connectquery.js +10 -0
- package/raystack/common/v1/service-CommonService_connectquery.ts +1 -1
- package/raystack/common/v1/service_pb.d.ts +100 -0
- package/raystack/common/v1/service_pb.js +42 -0
- package/raystack/common/v1/service_pb.ts +1 -1
- package/raystack/compass/index.d.ts +2 -0
- package/raystack/compass/index.js +2 -0
- package/raystack/compass/v1beta1/service-CompassService_connectquery.d.ts +184 -0
- package/raystack/compass/v1beta1/service-CompassService_connectquery.js +225 -0
- package/raystack/compass/v1beta1/service-CompassService_connectquery.ts +1 -1
- package/raystack/compass/v1beta1/service_pb.d.ts +2994 -0
- package/raystack/compass/v1beta1/service_pb.js +745 -0
- package/raystack/compass/v1beta1/service_pb.ts +1 -1
- package/raystack/entropy/index.d.ts +4 -0
- package/raystack/entropy/index.js +4 -0
- package/raystack/entropy/v1beta1/module-ModuleService_connectquery.d.ts +26 -0
- package/raystack/entropy/v1beta1/module-ModuleService_connectquery.js +30 -0
- package/raystack/entropy/v1beta1/module-ModuleService_connectquery.ts +1 -1
- package/raystack/entropy/v1beta1/module_pb.d.ts +261 -0
- package/raystack/entropy/v1beta1/module_pb.js +97 -0
- package/raystack/entropy/v1beta1/module_pb.ts +1 -1
- package/raystack/entropy/v1beta1/resource-ResourceService_connectquery.d.ts +34 -0
- package/raystack/entropy/v1beta1/resource-ResourceService_connectquery.js +40 -0
- package/raystack/entropy/v1beta1/resource-ResourceService_connectquery.ts +1 -1
- package/raystack/entropy/v1beta1/resource_pb.d.ts +636 -0
- package/raystack/entropy/v1beta1/resource_pb.js +200 -0
- package/raystack/entropy/v1beta1/resource_pb.ts +1 -1
- package/raystack/frontier/index.d.ts +5 -0
- package/raystack/frontier/index.js +5 -0
- package/raystack/frontier/v1beta1/admin-AdminService_connectquery.d.ts +269 -0
- package/raystack/frontier/v1beta1/admin-AdminService_connectquery.js +323 -0
- package/raystack/frontier/v1beta1/admin-AdminService_connectquery.ts +22 -1
- package/raystack/frontier/v1beta1/admin_pb.d.ts +3627 -0
- package/raystack/frontier/v1beta1/admin_pb.js +935 -0
- package/raystack/frontier/v1beta1/admin_pb.ts +179 -10
- package/raystack/frontier/v1beta1/frontier-FrontierService_connectquery.d.ts +738 -0
- package/raystack/frontier/v1beta1/frontier-FrontierService_connectquery.js +905 -0
- package/raystack/frontier/v1beta1/frontier-FrontierService_connectquery.ts +29 -18
- package/raystack/frontier/v1beta1/frontier_pb.d.ts +8820 -0
- package/raystack/frontier/v1beta1/frontier_pb.js +2593 -0
- package/raystack/frontier/v1beta1/frontier_pb.ts +508 -461
- package/raystack/frontier/v1beta1/models_pb.d.ts +3092 -0
- package/raystack/frontier/v1beta1/models_pb.js +504 -0
- package/raystack/frontier/v1beta1/models_pb.ts +359 -52
- package/raystack/guardian/index.d.ts +2 -0
- package/raystack/guardian/index.js +2 -0
- package/raystack/guardian/v1beta1/guardian-GuardianService_connectquery.d.ts +168 -0
- package/raystack/guardian/v1beta1/guardian-GuardianService_connectquery.js +207 -0
- package/raystack/guardian/v1beta1/guardian-GuardianService_connectquery.ts +1 -1
- package/raystack/guardian/v1beta1/guardian_pb.d.ts +3537 -0
- package/raystack/guardian/v1beta1/guardian_pb.js +823 -0
- package/raystack/guardian/v1beta1/guardian_pb.ts +1 -1
- package/raystack/optimus/core/v1beta1/backup-BackupService_connectquery.d.ts +18 -0
- package/raystack/optimus/core/v1beta1/backup-BackupService_connectquery.js +20 -0
- package/raystack/optimus/core/v1beta1/backup-BackupService_connectquery.ts +1 -1
- package/raystack/optimus/core/v1beta1/backup_pb.d.ts +256 -0
- package/raystack/optimus/core/v1beta1/backup_pb.js +77 -0
- package/raystack/optimus/core/v1beta1/backup_pb.ts +1 -1
- package/raystack/optimus/core/v1beta1/job_run-JobRunService_connectquery.d.ts +30 -0
- package/raystack/optimus/core/v1beta1/job_run-JobRunService_connectquery.js +33 -0
- package/raystack/optimus/core/v1beta1/job_run-JobRunService_connectquery.ts +1 -1
- package/raystack/optimus/core/v1beta1/job_run_pb.d.ts +410 -0
- package/raystack/optimus/core/v1beta1/job_run_pb.js +127 -0
- package/raystack/optimus/core/v1beta1/job_run_pb.ts +1 -1
- package/raystack/optimus/core/v1beta1/job_spec-JobSpecificationService_connectquery.d.ts +98 -0
- package/raystack/optimus/core/v1beta1/job_spec-JobSpecificationService_connectquery.js +112 -0
- package/raystack/optimus/core/v1beta1/job_spec-JobSpecificationService_connectquery.ts +1 -1
- package/raystack/optimus/core/v1beta1/job_spec_pb.d.ts +1953 -0
- package/raystack/optimus/core/v1beta1/job_spec_pb.js +487 -0
- package/raystack/optimus/core/v1beta1/job_spec_pb.ts +1 -1
- package/raystack/optimus/core/v1beta1/namespace-NamespaceService_connectquery.d.ts +24 -0
- package/raystack/optimus/core/v1beta1/namespace-NamespaceService_connectquery.js +26 -0
- package/raystack/optimus/core/v1beta1/namespace-NamespaceService_connectquery.ts +1 -1
- package/raystack/optimus/core/v1beta1/namespace_pb.d.ts +180 -0
- package/raystack/optimus/core/v1beta1/namespace_pb.js +69 -0
- package/raystack/optimus/core/v1beta1/namespace_pb.ts +1 -1
- package/raystack/optimus/core/v1beta1/project-ProjectService_connectquery.d.ts +24 -0
- package/raystack/optimus/core/v1beta1/project-ProjectService_connectquery.js +26 -0
- package/raystack/optimus/core/v1beta1/project-ProjectService_connectquery.ts +1 -1
- package/raystack/optimus/core/v1beta1/project_pb.d.ts +166 -0
- package/raystack/optimus/core/v1beta1/project_pb.js +69 -0
- package/raystack/optimus/core/v1beta1/project_pb.ts +2 -29
- package/raystack/optimus/core/v1beta1/replay-ReplayService_connectquery.d.ts +22 -0
- package/raystack/optimus/core/v1beta1/replay-ReplayService_connectquery.js +25 -0
- package/raystack/optimus/core/v1beta1/replay-ReplayService_connectquery.ts +1 -1
- package/raystack/optimus/core/v1beta1/replay_pb.d.ts +331 -0
- package/raystack/optimus/core/v1beta1/replay_pb.js +91 -0
- package/raystack/optimus/core/v1beta1/replay_pb.ts +1 -1
- package/raystack/optimus/core/v1beta1/resource-ResourceService_connectquery.d.ts +43 -0
- package/raystack/optimus/core/v1beta1/resource-ResourceService_connectquery.js +48 -0
- package/raystack/optimus/core/v1beta1/resource-ResourceService_connectquery.ts +1 -1
- package/raystack/optimus/core/v1beta1/resource_pb.d.ts +507 -0
- package/raystack/optimus/core/v1beta1/resource_pb.js +134 -0
- package/raystack/optimus/core/v1beta1/resource_pb.ts +1 -1
- package/raystack/optimus/core/v1beta1/runtime-RuntimeService_connectquery.d.ts +12 -0
- package/raystack/optimus/core/v1beta1/runtime-RuntimeService_connectquery.js +12 -0
- package/raystack/optimus/core/v1beta1/runtime-RuntimeService_connectquery.ts +1 -1
- package/raystack/optimus/core/v1beta1/runtime_pb.d.ts +62 -0
- package/raystack/optimus/core/v1beta1/runtime_pb.js +36 -0
- package/raystack/optimus/core/v1beta1/runtime_pb.ts +1 -1
- package/raystack/optimus/core/v1beta1/secret-SecretService_connectquery.d.ts +30 -0
- package/raystack/optimus/core/v1beta1/secret-SecretService_connectquery.js +33 -0
- package/raystack/optimus/core/v1beta1/secret-SecretService_connectquery.ts +1 -1
- package/raystack/optimus/core/v1beta1/secret_pb.d.ts +250 -0
- package/raystack/optimus/core/v1beta1/secret_pb.js +84 -0
- package/raystack/optimus/core/v1beta1/secret_pb.ts +1 -1
- package/raystack/optimus/core/v1beta1/status_pb.d.ts +78 -0
- package/raystack/optimus/core/v1beta1/status_pb.js +31 -0
- package/raystack/optimus/core/v1beta1/status_pb.ts +1 -1
- package/raystack/optimus/integration/v1beta1/event_pb.d.ts +239 -0
- package/raystack/optimus/integration/v1beta1/event_pb.js +62 -0
- package/raystack/optimus/integration/v1beta1/event_pb.ts +1 -1
- package/raystack/optimus/plugins/v1beta1/dependency_resolver-DependencyResolverModService_connectquery.d.ts +31 -0
- package/raystack/optimus/plugins/v1beta1/dependency_resolver-DependencyResolverModService_connectquery.js +34 -0
- package/raystack/optimus/plugins/v1beta1/dependency_resolver-DependencyResolverModService_connectquery.ts +1 -1
- package/raystack/optimus/plugins/v1beta1/dependency_resolver_pb.d.ts +353 -0
- package/raystack/optimus/plugins/v1beta1/dependency_resolver_pb.js +120 -0
- package/raystack/optimus/plugins/v1beta1/dependency_resolver_pb.ts +1 -1
- package/raystack/predator/index.d.ts +2 -0
- package/raystack/predator/index.js +2 -0
- package/raystack/predator/v1beta1/metrics_log_pb.d.ts +163 -0
- package/raystack/predator/v1beta1/metrics_log_pb.js +48 -0
- package/raystack/predator/v1beta1/metrics_log_pb.ts +1 -1
- package/raystack/predator/v1beta1/result_log_pb.d.ts +143 -0
- package/raystack/predator/v1beta1/result_log_pb.js +42 -0
- package/raystack/predator/v1beta1/result_log_pb.ts +1 -1
- package/raystack/raccoon/index.d.ts +2 -0
- package/raystack/raccoon/index.js +2 -0
- package/raystack/raccoon/v1beta1/raccoon-EventService_connectquery.d.ts +10 -0
- package/raystack/raccoon/v1beta1/raccoon-EventService_connectquery.js +10 -0
- package/raystack/raccoon/v1beta1/raccoon-EventService_connectquery.ts +1 -1
- package/raystack/raccoon/v1beta1/raccoon_pb.d.ts +268 -0
- package/raystack/raccoon/v1beta1/raccoon_pb.js +64 -0
- package/raystack/raccoon/v1beta1/raccoon_pb.ts +1 -1
- package/raystack/siren/index.d.ts +2 -0
- package/raystack/siren/index.js +2 -0
- package/raystack/siren/v1beta1/siren-SirenService_connectquery.d.ts +146 -0
- package/raystack/siren/v1beta1/siren-SirenService_connectquery.js +180 -0
- package/raystack/siren/v1beta1/siren-SirenService_connectquery.ts +1 -1
- package/raystack/siren/v1beta1/siren_pb.d.ts +2281 -0
- package/raystack/siren/v1beta1/siren_pb.js +603 -0
- package/raystack/siren/v1beta1/siren_pb.ts +1 -1
- package/raystack/stencil/index.d.ts +2 -0
- package/raystack/stencil/index.js +2 -0
- package/raystack/stencil/v1beta1/stencil-StencilService_connectquery.d.ts +70 -0
- package/raystack/stencil/v1beta1/stencil-StencilService_connectquery.js +85 -0
- package/raystack/stencil/v1beta1/stencil-StencilService_connectquery.ts +1 -1
- package/raystack/stencil/v1beta1/stencil_pb.d.ts +1057 -0
- package/raystack/stencil/v1beta1/stencil_pb.js +298 -0
- package/raystack/stencil/v1beta1/stencil_pb.ts +1 -1
- package/validate/validate_pb.d.ts +1953 -0
- package/validate/validate_pb.js +223 -0
- package/validate/validate_pb.ts +1 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// @generated by protoc-gen-es v2.6.2 with parameter "target=ts,import_extension=none"
|
|
1
|
+
// @generated by protoc-gen-es v2.6.2 with parameter "target=ts+js+dts,import_extension=none"
|
|
2
2
|
// @generated from file raystack/frontier/v1beta1/frontier.proto (package raystack.frontier.v1beta1, syntax proto3)
|
|
3
3
|
/* eslint-disable */
|
|
4
4
|
|
|
@@ -9,7 +9,7 @@ import { file_google_api_field_behavior } from "../../../google/api/field_behavi
|
|
|
9
9
|
import type { Timestamp } from "@bufbuild/protobuf/wkt";
|
|
10
10
|
import { file_google_protobuf_struct, file_google_protobuf_timestamp } from "@bufbuild/protobuf/wkt";
|
|
11
11
|
import { file_protoc_gen_openapiv2_options_annotations } from "../../../protoc-gen-openapiv2/options/annotations_pb";
|
|
12
|
-
import type {
|
|
12
|
+
import type { AuditRecord, AuditRecordActor, AuditRecordResource, AuditRecordTarget, BillingAccount, BillingAccount_Address, BillingAccount_Balance, BillingAccount_Tax, BillingAccountDetails, BillingTransaction, CheckoutProductBody, CheckoutSession, CheckoutSetupBody, CheckoutSubscriptionBody, Domain, Feature, Group, Invitation, Invoice, JSONWebKey, KeyCredential, MetaSchema, Namespace, Organization, OrganizationKyc, PaymentMethod, Permission, Plan, Policy, Preference, PreferenceRequestBody, PreferenceTrait, Price, Product, Product_BehaviorConfig, Project, Relation, Resource, Role, RoleRequestBody, SecretCredential, ServiceUser, ServiceUserJWK, ServiceUserToken, Session, Session_Meta, Subscription, Subscription_Phase, Usage, User } from "./models_pb";
|
|
13
13
|
import { file_raystack_frontier_v1beta1_models } from "./models_pb";
|
|
14
14
|
import { file_validate_validate } from "../../../validate/validate_pb";
|
|
15
15
|
import type { JsonObject, Message } from "@bufbuild/protobuf";
|
|
@@ -18,7 +18,7 @@ import type { JsonObject, Message } from "@bufbuild/protobuf";
|
|
|
18
18
|
* Describes the file raystack/frontier/v1beta1/frontier.proto.
|
|
19
19
|
*/
|
|
20
20
|
export const file_raystack_frontier_v1beta1_frontier: GenFile = /*@__PURE__*/
|
|
21
|
-
fileDesc("CihyYXlzdGFjay9mcm9udGllci92MWJldGExL2Zyb250aWVyLnByb3RvEhlyYXlzdGFjay5mcm9udGllci52MWJldGExIokCChlCaWxsaW5nQWNjb3VudFJlcXVlc3RCb2R5EgwKBG5hbWUYASABKAkSDQoFZW1haWwYAiABKAkSDQoFcGhvbmUYAyABKAkSQgoHYWRkcmVzcxgEIAEoCzIxLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQmlsbGluZ0FjY291bnQuQWRkcmVzcxIQCghjdXJyZW5jeRgFIAEoCRI/Cgh0YXhfZGF0YRgGIAMoCzItLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQmlsbGluZ0FjY291bnQuVGF4EikKCG1ldGFkYXRhGAogASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdCKVAQobQ3JlYXRlQmlsbGluZ0FjY291bnRSZXF1ZXN0EhcKBm9yZ19pZBgBIAEoCUIH+kIEcgIQARJMCgRib2R5GAIgASgLMjQucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5CaWxsaW5nQWNjb3VudFJlcXVlc3RCb2R5Qgj6QgWKAQIQARIPCgdvZmZsaW5lGAMgASgIImIKHENyZWF0ZUJpbGxpbmdBY2NvdW50UmVzcG9uc2USQgoPYmlsbGluZ19hY2NvdW50GAEgASgLMikucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5CaWxsaW5nQWNjb3VudCKUAQoYR2V0QmlsbGluZ0FjY291bnRSZXF1ZXN0EhMKAmlkGAEgASgJQgf6QgRyAhABEhcKBm9yZ19pZBgCIAEoCUIH+kIEcgIQARIcChR3aXRoX3BheW1lbnRfbWV0aG9kcxgDIAEoCBIcChR3aXRoX2JpbGxpbmdfZGV0YWlscxgEIAEoCBIOCgZleHBhbmQYZSADKAki7QEKGUdldEJpbGxpbmdBY2NvdW50UmVzcG9uc2USQgoPYmlsbGluZ19hY2NvdW50GAEgASgLMikucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5CaWxsaW5nQWNjb3VudBJBCg9wYXltZW50X21ldGhvZHMYAiADKAsyKC5yYXlzdGFjay5mcm9udGllci52MWJldGExLlBheW1lbnRNZXRob2QSSQoPYmlsbGluZ19kZXRhaWxzGAMgASgLMjAucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5CaWxsaW5nQWNjb3VudERldGFpbHMikAEKG1VwZGF0ZUJpbGxpbmdBY2NvdW50UmVxdWVzdBIUCgJpZBgBIAEoCUII+kIFcgOwAQESFwoGb3JnX2lkGAIgASgJQgf6QgRyAhABEkIKBGJvZHkYAyABKAsyNC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkJpbGxpbmdBY2NvdW50UmVxdWVzdEJvZHkiYgocVXBkYXRlQmlsbGluZ0FjY291bnRSZXNwb25zZRJCCg9iaWxsaW5nX2FjY291bnQYASABKAsyKS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkJpbGxpbmdBY2NvdW50Ik4KHVJlZ2lzdGVyQmlsbGluZ0FjY291bnRSZXF1ZXN0EhQKAmlkGAEgASgJQgj6QgVyA7ABARIXCgZvcmdfaWQYAiABKAlCB/pCBHICEAEiIAoeUmVnaXN0ZXJCaWxsaW5nQWNjb3VudFJlc3BvbnNlIkUKGkxpc3RCaWxsaW5nQWNjb3VudHNSZXF1ZXN0EhcKBm9yZ19pZBgBIAEoCUIH+kIEcgIQARIOCgZleHBhbmQYZSADKAkiYgobTGlzdEJpbGxpbmdBY2NvdW50c1Jlc3BvbnNlEkMKEGJpbGxpbmdfYWNjb3VudHMYASADKAsyKS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkJpbGxpbmdBY2NvdW50IkwKG0RlbGV0ZUJpbGxpbmdBY2NvdW50UmVxdWVzdBIUCgJpZBgBIAEoCUII+kIFcgOwAQESFwoGb3JnX2lkGAIgASgJQgf6QgRyAhABIh4KHERlbGV0ZUJpbGxpbmdBY2NvdW50UmVzcG9uc2UiTAobRW5hYmxlQmlsbGluZ0FjY291bnRSZXF1ZXN0EhQKAmlkGAEgASgJQgj6QgVyA7ABARIXCgZvcmdfaWQYAiABKAlCB/pCBHICEAEiHgocRW5hYmxlQmlsbGluZ0FjY291bnRSZXNwb25zZSJNChxEaXNhYmxlQmlsbGluZ0FjY291bnRSZXF1ZXN0EhQKAmlkGAEgASgJQgj6QgVyA7ABARIXCgZvcmdfaWQYAiABKAlCB/pCBHICEAEiHwodRGlzYWJsZUJpbGxpbmdBY2NvdW50UmVzcG9uc2UiSQoYR2V0QmlsbGluZ0JhbGFuY2VSZXF1ZXN0EhQKAmlkGAEgASgJQgj6QgVyA7ABARIXCgZvcmdfaWQYAiABKAlCB/pCBHICEAEiXwoZR2V0QmlsbGluZ0JhbGFuY2VSZXNwb25zZRJCCgdiYWxhbmNlGAEgASgLMjEucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5CaWxsaW5nQWNjb3VudC5CYWxhbmNlIlwKEUhhc1RyaWFsZWRSZXF1ZXN0EhQKAmlkGAEgASgJQgj6QgVyA7ABARIXCgZvcmdfaWQYAiABKAlCB/pCBHICEAESGAoHcGxhbl9pZBgDIAEoCUIH+kIEcgIQASIlChJIYXNUcmlhbGVkUmVzcG9uc2USDwoHdHJpYWxlZBgBIAEoCCKSAQoZQ3JlYXRlQmlsbGluZ1VzYWdlUmVxdWVzdBIOCgZvcmdfaWQYASABKAkSHwoKYmlsbGluZ19pZBgCIAEoCUIL+kIIcgawAQHQAQESEgoKcHJvamVjdF9pZBgEIAEoCRIwCgZ1c2FnZXMYAyADKAsyIC5yYXlzdGFjay5mcm9udGllci52MWJldGExLlVzYWdlIhwKGkNyZWF0ZUJpbGxpbmdVc2FnZVJlc3BvbnNlIvkBCh5MaXN0QmlsbGluZ1RyYW5zYWN0aW9uc1JlcXVlc3QSFwoGb3JnX2lkGAEgASgJQgf6QgRyAhADEh8KCmJpbGxpbmdfaWQYAiABKAlCC/pCCHIGsAEB0AEBEi0KBXNpbmNlGAMgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEICGAESLwoLc3RhcnRfcmFuZ2UYBCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi0KCWVuZF9yYW5nZRgFIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASDgoGZXhwYW5kGGUgAygJImYKH0xpc3RCaWxsaW5nVHJhbnNhY3Rpb25zUmVzcG9uc2USQwoMdHJhbnNhY3Rpb25zGAEgAygLMi0ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5CaWxsaW5nVHJhbnNhY3Rpb24iWAofVG90YWxEZWJpdGVkVHJhbnNhY3Rpb25zUmVxdWVzdBIXCgZvcmdfaWQYASABKAlCB/pCBHICEAMSHAoKYmlsbGluZ19pZBgCIAEoCUII+kIFcgOwAQEiZgogVG90YWxEZWJpdGVkVHJhbnNhY3Rpb25zUmVzcG9uc2USQgoHZGViaXRlZBgBIAEoCzIxLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQmlsbGluZ0FjY291bnQuQmFsYW5jZSJ3ChZHZXRTdWJzY3JpcHRpb25SZXF1ZXN0EhcKBm9yZ19pZBgBIAEoCUIH+kIEcgIQAxIfCgpiaWxsaW5nX2lkGAIgASgJQgv6QghyBrABAdABARITCgJpZBgDIAEoCUIH+kIEcgIQARIOCgZleHBhbmQYZSADKAkiWAoXR2V0U3Vic2NyaXB0aW9uUmVzcG9uc2USPQoMc3Vic2NyaXB0aW9uGAEgASgLMicucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5TdWJzY3JpcHRpb24igQEKGExpc3RTdWJzY3JpcHRpb25zUmVxdWVzdBIXCgZvcmdfaWQYASABKAlCB/pCBHICEAMSHwoKYmlsbGluZ19pZBgCIAEoCUIL+kIIcgawAQHQAQESDQoFc3RhdGUYAyABKAkSDAoEcGxhbhgEIAEoCRIOCgZleHBhbmQYZSADKAkiWwoZTGlzdFN1YnNjcmlwdGlvbnNSZXNwb25zZRI+Cg1zdWJzY3JpcHRpb25zGAEgAygLMicucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5TdWJzY3JpcHRpb24ilQEKGVVwZGF0ZVN1YnNjcmlwdGlvblJlcXVlc3QSFwoGb3JnX2lkGAEgASgJQgf6QgRyAhADEh8KCmJpbGxpbmdfaWQYAiABKAlCC/pCCHIGsAEB0AEBEhMKAmlkGAMgASgJQgf6QgRyAhABEikKCG1ldGFkYXRhGBQgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdCJbChpVcGRhdGVTdWJzY3JpcHRpb25SZXNwb25zZRI9CgxzdWJzY3JpcHRpb24YASABKAsyJy5yYXlzdGFjay5mcm9udGllci52MWJldGExLlN1YnNjcmlwdGlvbiKuAwoZQ2hhbmdlU3Vic2NyaXB0aW9uUmVxdWVzdBIXCgZvcmdfaWQYASABKAlCB/pCBHICEAMSHwoKYmlsbGluZ19pZBgCIAEoCUIL+kIIcgawAQHQAQESEwoCaWQYAyABKAlCB/pCBHICEAESEAoEcGxhbhgEIAEoCUICGAESFQoJaW1tZWRpYXRlGAUgASgIQgIYARJWCgtwbGFuX2NoYW5nZRgGIAEoCzI/LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ2hhbmdlU3Vic2NyaXB0aW9uUmVxdWVzdC5QbGFuQ2hhbmdlSAASWAoMcGhhc2VfY2hhbmdlGAcgASgLMkAucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DaGFuZ2VTdWJzY3JpcHRpb25SZXF1ZXN0LlBoYXNlQ2hhbmdlSAAaLQoKUGxhbkNoYW5nZRIMCgRwbGFuGAEgASgJEhEKCWltbWVkaWF0ZRgCIAEoCBouCgtQaGFzZUNoYW5nZRIfChdjYW5jZWxfdXBjb21pbmdfY2hhbmdlcxgBIAEoCEIICgZjaGFuZ2UiWgoaQ2hhbmdlU3Vic2NyaXB0aW9uUmVzcG9uc2USPAoFcGhhc2UYASABKAsyLS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlN1YnNjcmlwdGlvbi5QaGFzZSJ9ChlDYW5jZWxTdWJzY3JpcHRpb25SZXF1ZXN0EhcKBm9yZ19pZBgBIAEoCUIH+kIEcgIQAxIfCgpiaWxsaW5nX2lkGAIgASgJQgv6QghyBrABAdABARITCgJpZBgDIAEoCUIH+kIEcgIQARIRCglpbW1lZGlhdGUYBCABKAgiHAoaQ2FuY2VsU3Vic2NyaXB0aW9uUmVzcG9uc2UiEgoQTGlzdFBsYW5zUmVxdWVzdCJDChFMaXN0UGxhbnNSZXNwb25zZRIuCgVwbGFucxgBIAMoCzIfLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUGxhbiJ/Ch5DaGVja0ZlYXR1cmVFbnRpdGxlbWVudFJlcXVlc3QSDgoGb3JnX2lkGAEgASgJEh8KCmJpbGxpbmdfaWQYAiABKAlCC/pCCHIGsAEB0AEBEhIKCnByb2plY3RfaWQYBCABKAkSGAoHZmVhdHVyZRgDIAEoCUIH+kIEcgIQASIxCh9DaGVja0ZlYXR1cmVFbnRpdGxlbWVudFJlc3BvbnNlEg4KBnN0YXR1cxgBIAEoCCJRCh1DaGVja0NyZWRpdEVudGl0bGVtZW50UmVxdWVzdBIXCgZvcmdfaWQYASABKAlCB/pCBHICEAMSFwoGYW1vdW50GAIgASgDQgf6QgQiAiAAIjAKHkNoZWNrQ3JlZGl0RW50aXRsZW1lbnRSZXNwb25zZRIOCgZzdGF0dXMYASABKAgi0gIKFUNyZWF0ZUNoZWNrb3V0UmVxdWVzdBIXCgZvcmdfaWQYASABKAlCB/pCBHICEAMSHwoKYmlsbGluZ19pZBgCIAEoCUIL+kIIcgawAQHQAQESEwoLc3VjY2Vzc191cmwYAyABKAkSEgoKY2FuY2VsX3VybBgEIAEoCRJOChFzdWJzY3JpcHRpb25fYm9keRgKIAEoCzIzLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ2hlY2tvdXRTdWJzY3JpcHRpb25Cb2R5EkQKDHByb2R1Y3RfYm9keRgLIAEoCzIuLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ2hlY2tvdXRQcm9kdWN0Qm9keRJACgpzZXR1cF9ib2R5GAwgASgLMiwucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DaGVja291dFNldHVwQm9keSJeChZDcmVhdGVDaGVja291dFJlc3BvbnNlEkQKEGNoZWNrb3V0X3Nlc3Npb24YASABKAsyKi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNoZWNrb3V0U2Vzc2lvbiJQChRMaXN0Q2hlY2tvdXRzUmVxdWVzdBIXCgZvcmdfaWQYASABKAlCB/pCBHICEAMSHwoKYmlsbGluZ19pZBgCIAEoCUIL+kIIcgawAQHQAQEiXgoVTGlzdENoZWNrb3V0c1Jlc3BvbnNlEkUKEWNoZWNrb3V0X3Nlc3Npb25zGAEgAygLMioucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DaGVja291dFNlc3Npb24iYwoSR2V0Q2hlY2tvdXRSZXF1ZXN0EhcKBm9yZ19pZBgBIAEoCUIH+kIEcgIQAxIfCgpiaWxsaW5nX2lkGAIgASgJQgv6QghyBrABAdABARITCgJpZBgDIAEoCUIH+kIEcgIQASJbChNHZXRDaGVja291dFJlc3BvbnNlEkQKEGNoZWNrb3V0X3Nlc3Npb24YASABKAsyKi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNoZWNrb3V0U2Vzc2lvbiL7AgoSUHJvZHVjdFJlcXVlc3RCb2R5EhUKBG5hbWUYASABKAlCB/pCBHICEAMSDQoFdGl0bGUYAiABKAkSEwoLZGVzY3JpcHRpb24YAyABKAkSDwoHcGxhbl9pZBgEIAEoCRIwCgZwcmljZXMYBSADKAsyIC5yYXlzdGFjay5mcm9udGllci52MWJldGExLlByaWNlEjQKCGJlaGF2aW9yGAggASgJQiL6Qh9yHVIFYmFzaWNSB2NyZWRpdHNSCHBlcl9zZWF00AEBEjQKCGZlYXR1cmVzGAkgAygLMiIucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5GZWF0dXJlEkoKD2JlaGF2aW9yX2NvbmZpZxgKIAEoCzIxLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUHJvZHVjdC5CZWhhdmlvckNvbmZpZxIpCghtZXRhZGF0YRgUIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RKBAgHEAgiXQoUQ3JlYXRlUHJvZHVjdFJlcXVlc3QSRQoEYm9keRgBIAEoCzItLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUHJvZHVjdFJlcXVlc3RCb2R5Qgj6QgWKAQIQASJMChVDcmVhdGVQcm9kdWN0UmVzcG9uc2USMwoHcHJvZHVjdBgBIAEoCzIiLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUHJvZHVjdCIoChFHZXRQcm9kdWN0UmVxdWVzdBITCgJpZBgBIAEoCUIH+kIEcgIQASJJChJHZXRQcm9kdWN0UmVzcG9uc2USMwoHcHJvZHVjdBgBIAEoCzIiLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUHJvZHVjdCIVChNMaXN0UHJvZHVjdHNSZXF1ZXN0IkwKFExpc3RQcm9kdWN0c1Jlc3BvbnNlEjQKCHByb2R1Y3RzGAEgAygLMiIucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Qcm9kdWN0ImgKFFVwZGF0ZVByb2R1Y3RSZXF1ZXN0EhMKAmlkGAEgASgJQgf6QgRyAhABEjsKBGJvZHkYAiABKAsyLS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlByb2R1Y3RSZXF1ZXN0Qm9keSJMChVVcGRhdGVQcm9kdWN0UmVzcG9uc2USMwoHcHJvZHVjdBgBIAEoCzIiLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUHJvZHVjdCJ6ChJGZWF0dXJlUmVxdWVzdEJvZHkSFQoEbmFtZRgBIAEoCUIH+kIEcgIQAxINCgV0aXRsZRgCIAEoCRITCgtwcm9kdWN0X2lkcxgDIAMoCRIpCghtZXRhZGF0YRgUIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QiXQoUQ3JlYXRlRmVhdHVyZVJlcXVlc3QSRQoEYm9keRgBIAEoCzItLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRmVhdHVyZVJlcXVlc3RCb2R5Qgj6QgWKAQIQASJMChVDcmVhdGVGZWF0dXJlUmVzcG9uc2USMwoHZmVhdHVyZRgBIAEoCzIiLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRmVhdHVyZSIoChFHZXRGZWF0dXJlUmVxdWVzdBITCgJpZBgBIAEoCUIH+kIEcgIQASJJChJHZXRGZWF0dXJlUmVzcG9uc2USMwoHZmVhdHVyZRgBIAEoCzIiLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRmVhdHVyZSJoChRVcGRhdGVGZWF0dXJlUmVxdWVzdBITCgJpZBgBIAEoCUIH+kIEcgIQARI7CgRib2R5GAIgASgLMi0ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5GZWF0dXJlUmVxdWVzdEJvZHkiTAoVVXBkYXRlRmVhdHVyZVJlc3BvbnNlEjMKB2ZlYXR1cmUYASABKAsyIi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkZlYXR1cmUiFQoTTGlzdEZlYXR1cmVzUmVxdWVzdCJMChRMaXN0RmVhdHVyZXNSZXNwb25zZRI0CghmZWF0dXJlcxgBIAMoCzIiLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRmVhdHVyZSKDAgoPUGxhblJlcXVlc3RCb2R5EgwKBG5hbWUYASABKAkSDQoFdGl0bGUYAiABKAkSEwoLZGVzY3JpcHRpb24YAyABKAkSNAoIcHJvZHVjdHMYBCADKAsyIi5yYXlzdGFjay5mcm9udGllci52MWJldGExLlByb2R1Y3QSLwoIaW50ZXJ2YWwYBSABKAlCHfpCGnIYUgNkYXlSBHdlZWtSBW1vbnRoUgR5ZWFyEhgKEG9uX3N0YXJ0X2NyZWRpdHMYBiABKAMSEgoKdHJpYWxfZGF5cxgHIAEoAxIpCghtZXRhZGF0YRgUIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QiVwoRQ3JlYXRlUGxhblJlcXVlc3QSQgoEYm9keRgBIAEoCzIqLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUGxhblJlcXVlc3RCb2R5Qgj6QgWKAQIQASJDChJDcmVhdGVQbGFuUmVzcG9uc2USLQoEcGxhbhgBIAEoCzIfLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUGxhbiIlCg5HZXRQbGFuUmVxdWVzdBITCgJpZBgBIAEoCUIH+kIEcgIQASJACg9HZXRQbGFuUmVzcG9uc2USLQoEcGxhbhgBIAEoCzIfLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUGxhbiJiChFVcGRhdGVQbGFuUmVxdWVzdBITCgJpZBgBIAEoCUIH+kIEcgIQARI4CgRib2R5GAIgASgLMioucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5QbGFuUmVxdWVzdEJvZHkiQwoSVXBkYXRlUGxhblJlc3BvbnNlEi0KBHBsYW4YASABKAsyHy5yYXlzdGFjay5mcm9udGllci52MWJldGExLlBsYW4ifAoTTGlzdEludm9pY2VzUmVxdWVzdBIXCgZvcmdfaWQYASABKAlCB/pCBHICEAMSHwoKYmlsbGluZ19pZBgCIAEoCUIL+kIIcgawAQHQAQESGwoTbm9uemVyb19hbW91bnRfb25seRgDIAEoCBIOCgZleHBhbmQYZSADKAkiTAoUTGlzdEludm9pY2VzUmVzcG9uc2USNAoIaW52b2ljZXMYASADKAsyIi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkludm9pY2UiVQoZR2V0VXBjb21pbmdJbnZvaWNlUmVxdWVzdBIXCgZvcmdfaWQYASABKAlCB/pCBHICEAMSHwoKYmlsbGluZ19pZBgCIAEoCUIL+kIIcgawAQHQAQEiUQoaR2V0VXBjb21pbmdJbnZvaWNlUmVzcG9uc2USMwoHaW52b2ljZRgBIAEoCzIiLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuSW52b2ljZSIQCg5HZXRKV0tzUmVxdWVzdCJGCg9HZXRKV0tzUmVzcG9uc2USMwoEa2V5cxgBIAMoCzIlLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuSlNPTldlYktleSITChFBdXRoTG9nb3V0UmVxdWVzdCIUChJBdXRoTG9nb3V0UmVzcG9uc2UieQoTQXV0aENhbGxiYWNrUmVxdWVzdBIVCg1zdHJhdGVneV9uYW1lGAEgASgJEg0KBXN0YXRlGAIgASgJEgwKBGNvZGUYAyABKAkSLgoNc3RhdGVfb3B0aW9ucxgEIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QiFgoUQXV0aENhbGxiYWNrUmVzcG9uc2Ui3gUKE0F1dGhlbnRpY2F0ZVJlcXVlc3QSZAoNc3RyYXRlZ3lfbmFtZRgBIAEoCUJNkkFKMkhOYW1lIG9mIHRoZSBzdHJhdGVneSB0byB1c2UgZm9yIGF1dGhlbnRpY2F0aW9uLjxici8+ICpFeGFtcGxlOiogYGdvb2dsZWASagoQcmVkaXJlY3Rfb25zdGFydBgCIAEoCEJQkkFNMktJZiBzZXQgdG8gdHJ1ZSwgbG9jYXRpb24gaGVhZGVyIHdpbGwgYmUgc2V0IGZvciByZWRpcmVjdCB0byBzdGFydCBhdXRoIGZsb3cSeAoJcmV0dXJuX3RvGAMgASgJQmWSQWIyYFVSTCB0byByZWRpcmVjdCBhZnRlciBzdWNjZXNzZnVsIGF1dGhlbnRpY2F0aW9uLjxici8+ICpFeGFtcGxlOipgImh0dHBzOi8vZnJvbnRpZXIuZXhhbXBsZS5jb20iYBJuCgVlbWFpbBgEIAEoCUJfkkFcMlpFbWFpbCBvZiB0aGUgdXNlciB0byBhdXRoZW50aWNhdGUuIFVzZWQgZm9yIG1hZ2ljIGxpbmtzLjxici8+ICpFeGFtcGxlOipgZXhhbXBsZUBhY21lLm9yZ2ASigIKDGNhbGxiYWNrX3VybBgFIAEoCULzAZJB7wEy7AFIb3N0IHdoaWNoIHNob3VsZCBoYW5kbGUgdGhlIGNhbGwgdG8gZmluaXNoIGF1dGhlbnRpY2F0aW9uIGZsb3csIGZvciBtb3N0IGNhc2VzIGl0IGNvdWxkIGJlIGhvc3Qgb2YgZnJvbnRpZXIgYnV0IGluIGNhc2Ugb2YgcHJveGllcywgdGhpcyB3aWxsIGJlIHByb3h5IHB1YmxpYyBlbmRwb2ludC48YnIvPiAqRXhhbXBsZToqYGh0dHBzOi8vZnJvbnRpZXIuZXhhbXBsZS5jb20vdjFiZXRhMS9hdXRoL2NhbGxiYWNrYCJnChRBdXRoZW50aWNhdGVSZXNwb25zZRIQCghlbmRwb2ludBgBIAEoCRINCgVzdGF0ZRgCIAEoCRIuCg1zdGF0ZV9vcHRpb25zGAMgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdCJFCgxBdXRoU3RyYXRlZ3kSDAoEbmFtZRgBIAEoCRInCgZwYXJhbXMYAiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0IhsKGUxpc3RBdXRoU3RyYXRlZ2llc1JlcXVlc3QiWQoaTGlzdEF1dGhTdHJhdGVnaWVzUmVzcG9uc2USOwoKc3RyYXRlZ2llcxgBIAMoCzInLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQXV0aFN0cmF0ZWd5ImMKEEF1dGhUb2tlblJlcXVlc3QSEgoKZ3JhbnRfdHlwZRgBIAEoCRIRCgljbGllbnRfaWQYAiABKAkSFQoNY2xpZW50X3NlY3JldBgDIAEoCRIRCglhc3NlcnRpb24YBCABKAkiPQoRQXV0aFRva2VuUmVzcG9uc2USFAoMYWNjZXNzX3Rva2VuGAEgASgJEhIKCnRva2VuX3R5cGUYAiABKAki8wsKD1VzZXJSZXF1ZXN0Qm9keRLGAgoEbmFtZRgBIAEoCUK3ApJBjAIyiQJUaGUgbmFtZSBvZiB0aGUgdXNlci4gVGhlIG5hbWUgbXVzdCBiZSB1bmlxdWUgd2l0aGluIHRoZSBlbnRpcmUgRnJvbnRpZXIgaW5zdGFuY2UuIFRoZSBuYW1lIGNhbiBjb250YWluIG9ubHkgYWxwaGFudW1lcmljIGNoYXJhY3RlcnMsIGRhc2hlcyBhbmQgdW5kZXJzY29yZXMgYW5kIG11c3Qgc3RhcnQgd2l0aCBhIGxldHRlci4gSWYgbm90IHByb3ZpZGVkLCBGcm9udGllciBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlcyBhIG5hbWUgZnJvbSB0aGUgdXNlciBlbWFpbC4g+kIkciIyIF4oW2EtekEtWl1bYS16QS1aMC05LV9dezMsNjR9KT8kEpwBCgVlbWFpbBgCIAEoCUKMAZJBfjJ8VGhlIGVtYWlsIG9mIHRoZSB1c2VyLiBUaGUgZW1haWwgbXVzdCBiZSB1bmlxdWUgd2l0aGluIHRoZSBlbnRpcmUgRnJvbnRpZXIgaW5zdGFuY2UuPGJyLz4qRXhhbXBsZToqYCJqb2huLmRvZUByYXlzdGFjay5vcmciYOJBAQL6QgRyAmABEtgDCghtZXRhZGF0YRgDIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RCrAOSQagDMqUDTWV0YWRhdGEgb2JqZWN0IGZvciB1c2VycyB0aGF0IGNhbiBob2xkIGtleSB2YWx1ZSBwYWlycyBwcmUtZGVmaW5lZCBpbiBVc2VyIE1ldGFzY2hlbWEuIFRoZSBtZXRhZGF0YSBvYmplY3QgY2FuIGJlIHVzZWQgdG8gc3RvcmUgYXJiaXRyYXJ5IGluZm9ybWF0aW9uIGFib3V0IHRoZSB1c2VyIHN1Y2ggYXMgbGFiZWwsIGRlc2NyaXB0aW9uIGV0Yy4gQnkgZGVmYXVsdCB0aGUgdXNlciBtZXRhc2NoZW1hIGNvbnRhaW5zIGxhYmVscyBhbmQgZGVzY3JpcHRpb25zIGZvciB0aGUgdXNlci4gVXBkYXRlIHRoZSBzYW1lIHRvIGFkZCBtb3JlIGZpZWxkcyB0byB0aGUgdXNlciBtZXRhZGF0YSBvYmplY3QuIDxici8+KkV4YW1wbGU6KmB7ImxhYmVsIjogeyJrZXkxIjogInZhbHVlMSJ9LCAiZGVzY3JpcHRpb24iOiAiVXNlciBEZXNjcmlwdGlvbiJ9YBKpAQoFdGl0bGUYBCABKAlCmQGSQZUBMpIBVGhlIHRpdGxlIGNhbiBjb250YWluIGFueSBVVEYtOCBjaGFyYWN0ZXIsIHVzZWQgdG8gcHJvdmlkZSBhIGh1bWFuLXJlYWRhYmxlIG5hbWUgZm9yIHRoZSB1c2VyLiBDYW4gYWxzbyBiZSBsZWZ0IGVtcHR5LiA8YnIvPipFeGFtcGxlOipgIkpvaG4gRG9lImAS8AIKBmF2YXRhchgFIAEoCULfApJBjwIy0wFUaGUgYXZhdGFyIGlzIGJhc2U2NCBlbmNvZGVkIGltYWdlIGRhdGEgb2YgdGhlIHVzZXIuIENhbiBhbHNvIGJlIGxlZnQgZW1wdHkuIFRoZSBpbWFnZSBzaG91bGQgYmUgbGVzcyB0aGFuIDIwMEtCLiBTaG91bGQgZm9sbG93IHRoZSByZWdleCBwYXR0ZXJuIGBeZGF0YTppbWFnZS8ocG5nfGpwZ3xqcGVnfGdpZik7YmFzZTY0LChbYS16QS1aMC05Ky9dKz17MCwyfSkrJGAuSjciZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFCQUFBQUEi+kJJckcYkKEPMj5eZGF0YTppbWFnZS8ocG5nfGpwZ3xqcGVnfGdpZik7YmFzZTY0LChbYS16QS1aMC05Ky9dKz17MCwyfSkrJNABASLHAwoQTGlzdFVzZXJzUmVxdWVzdBJlCglwYWdlX3NpemUYASABKAVCUpJBRjJEVGhlIG1heGltdW0gbnVtYmVyIG9mIHVzZXJzIHRvIHJldHVybiBwZXIgcGFnZS4gVGhlIGRlZmF1bHQgaXMgMTAwMC76QgYaBCgBQAESTAoIcGFnZV9udW0YAiABKAVCOpJBLjIsVGhlIHBhZ2UgbnVtYmVyIHRvIHJldHVybi4gVGhlIGRlZmF1bHQgaXMgMS76QgYaBCgBQAESQQoHa2V5d29yZBgDIAEoCUIwkkEtMitUaGUga2V5d29yZCB0byBzZWFyY2ggZm9yIGluIG5hbWUgb3IgZW1haWwuEjwKBm9yZ19pZBgEIAEoCUIskkEpMidUaGUgb3JnYW5pemF0aW9uIElEIHRvIGZpbHRlciB1c2VycyBieS4SMQoIZ3JvdXBfaWQYBSABKAlCH5JBHDIaVGhlIGdyb3VwIGlkIHRvIGZpbHRlciBieS4SSgoFc3RhdGUYBiABKAlCO5JBODI2VGhlIHN0YXRlIHRvIGZpbHRlciBieS4gSXQgY2FuIGJlIGVuYWJsZWQgb3IgZGlzYWJsZWQuIlIKEUxpc3RVc2Vyc1Jlc3BvbnNlEg0KBWNvdW50GAEgASgFEi4KBXVzZXJzGAIgAygLMh8ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Vc2VyIlcKEUNyZWF0ZVVzZXJSZXF1ZXN0EkIKBGJvZHkYASABKAsyKi5yYXlzdGFjay5mcm9udGllci52MWJldGExLlVzZXJSZXF1ZXN0Qm9keUII+kIFigECEAEiQwoSQ3JlYXRlVXNlclJlc3BvbnNlEi0KBHVzZXIYASABKAsyHy5yYXlzdGFjay5mcm9udGllci52MWJldGExLlVzZXIiOwoeTGlzdE9yZ2FuaXphdGlvbnNCeVVzZXJSZXF1ZXN0EgoKAmlkGAEgASgJEg0KBXN0YXRlGAIgASgJIqcBCh9MaXN0T3JnYW5pemF0aW9uc0J5VXNlclJlc3BvbnNlEj4KDW9yZ2FuaXphdGlvbnMYASADKAsyJy5yYXlzdGFjay5mcm9udGllci52MWJldGExLk9yZ2FuaXphdGlvbhJEChNqb2luYWJsZV92aWFfZG9tYWluGAIgAygLMicucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Pcmdhbml6YXRpb24iNgolTGlzdE9yZ2FuaXphdGlvbnNCeUN1cnJlbnRVc2VyUmVxdWVzdBINCgVzdGF0ZRgBIAEoCSKuAQomTGlzdE9yZ2FuaXphdGlvbnNCeUN1cnJlbnRVc2VyUmVzcG9uc2USPgoNb3JnYW5pemF0aW9ucxgBIAMoCzInLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuT3JnYW5pemF0aW9uEkQKE2pvaW5hYmxlX3ZpYV9kb21haW4YAiADKAsyJy5yYXlzdGFjay5mcm9udGllci52MWJldGExLk9yZ2FuaXphdGlvbiInChlMaXN0UHJvamVjdHNCeVVzZXJSZXF1ZXN0EgoKAmlkGAEgASgJIlIKGkxpc3RQcm9qZWN0c0J5VXNlclJlc3BvbnNlEjQKCHByb2plY3RzGAEgAygLMiIucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Qcm9qZWN0IrMCCiBMaXN0UHJvamVjdHNCeUN1cnJlbnRVc2VyUmVxdWVzdBIOCgZvcmdfaWQYASABKAkSGAoQd2l0aF9wZXJtaXNzaW9ucxgCIAMoCRIVCg1ub25faW5oZXJpdGVkGAMgASgIEhkKEXdpdGhfbWVtYmVyX2NvdW50GAQgASgIEmUKCXBhZ2Vfc2l6ZRgFIAEoBUJSkkFGMkRUaGUgbWF4aW11bSBudW1iZXIgb2YgdXNlcnMgdG8gcmV0dXJuIHBlciBwYWdlLiBUaGUgZGVmYXVsdCBpcyAxMDAwLvpCBhoEKAFAARJMCghwYWdlX251bRgGIAEoBUI6kkEuMixUaGUgcGFnZSBudW1iZXIgdG8gcmV0dXJuLiBUaGUgZGVmYXVsdCBpcyAxLvpCBhoEKAFAASL+AQohTGlzdFByb2plY3RzQnlDdXJyZW50VXNlclJlc3BvbnNlEjQKCHByb2plY3RzGAEgAygLMiIucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Qcm9qZWN0El0KDGFjY2Vzc19wYWlycxgCIAMoCzJHLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdFByb2plY3RzQnlDdXJyZW50VXNlclJlc3BvbnNlLkFjY2Vzc1BhaXISDQoFY291bnQYAyABKAUaNQoKQWNjZXNzUGFpchISCgpwcm9qZWN0X2lkGAEgASgJEhMKC3Blcm1pc3Npb25zGAIgAygJIh8KEUVuYWJsZVVzZXJSZXF1ZXN0EgoKAmlkGAEgASgJIhQKEkVuYWJsZVVzZXJSZXNwb25zZSIgChJEaXNhYmxlVXNlclJlcXVlc3QSCgoCaWQYASABKAkiFQoTRGlzYWJsZVVzZXJSZXNwb25zZSIfChFEZWxldGVVc2VyUmVxdWVzdBIKCgJpZBgBIAEoCSIUChJEZWxldGVVc2VyUmVzcG9uc2UiQAoPR2V0VXNlclJlc3BvbnNlEi0KBHVzZXIYASABKAsyHy5yYXlzdGFjay5mcm9udGllci52MWJldGExLlVzZXIiFwoVR2V0Q3VycmVudFVzZXJSZXF1ZXN0IoQBChZHZXRDdXJyZW50VXNlclJlc3BvbnNlEi0KBHVzZXIYASABKAsyHy5yYXlzdGFjay5mcm9udGllci52MWJldGExLlVzZXISOwoLc2VydmljZXVzZXIYAiABKAsyJi5yYXlzdGFjay5mcm9udGllci52MWJldGExLlNlcnZpY2VVc2VyIkMKElVwZGF0ZVVzZXJSZXNwb25zZRItCgR1c2VyGAEgASgLMh8ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Vc2VyIkoKGVVwZGF0ZUN1cnJlbnRVc2VyUmVzcG9uc2USLQoEdXNlchgBIAEoCzIfLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuVXNlciJZChFVcGRhdGVVc2VyUmVxdWVzdBIKCgJpZBgBIAEoCRI4CgRib2R5GAIgASgLMioucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Vc2VyUmVxdWVzdEJvZHkiHAoOR2V0VXNlclJlcXVlc3QSCgoCaWQYASABKAkiYwocTGlzdEN1cnJlbnRVc2VyR3JvdXBzUmVxdWVzdBIOCgZvcmdfaWQYASABKAkSGAoQd2l0aF9wZXJtaXNzaW9ucxgCIAMoCRIZChF3aXRoX21lbWJlcl9jb3VudBgDIAEoCCLhAQodTGlzdEN1cnJlbnRVc2VyR3JvdXBzUmVzcG9uc2USMAoGZ3JvdXBzGAEgAygLMiAucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Hcm91cBJZCgxhY2Nlc3NfcGFpcnMYAiADKAsyQy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RDdXJyZW50VXNlckdyb3Vwc1Jlc3BvbnNlLkFjY2Vzc1BhaXIaMwoKQWNjZXNzUGFpchIQCghncm91cF9pZBgBIAEoCRITCgtwZXJtaXNzaW9ucxgCIAMoCSLYAQoVTGlzdFVzZXJHcm91cHNSZXF1ZXN0Ej0KAmlkGAEgASgJQjGSQS4yLFRoZSB1bmlxdWUgSUQgb2YgdGhlIHVzZXIgdG8gZ2V0IGdyb3VwcyBmb3IuEnoKBm9yZ19pZBgDIAEoCUJqkkFnMmVUaGUgb3JnYW5pemF0aW9uIElEIHRvIGZpbHRlciBncm91cHMgYnkuIElmIG5vdCBwcm92aWRlZCwgZ3JvdXBzIGZyb20gYWxsIG9yZ2FuaXphdGlvbnMgYXJlIHJldHVybmVkLkoECAIQAyJKChZMaXN0VXNlckdyb3Vwc1Jlc3BvbnNlEjAKBmdyb3VwcxgBIAMoCzIgLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR3JvdXAiVAoYVXBkYXRlQ3VycmVudFVzZXJSZXF1ZXN0EjgKBGJvZHkYASABKAsyKi5yYXlzdGFjay5mcm9udGllci52MWJldGExLlVzZXJSZXF1ZXN0Qm9keSJaChpMaXN0VXNlckludml0YXRpb25zUmVxdWVzdBI8CgJpZBgBIAEoCUIwkkEtMitUaGUgdXNlciBlbWFpbCB0byBsaXN0IHRoZSBpbnZpdGF0aW9ucyBmb3IuIlkKG0xpc3RVc2VySW52aXRhdGlvbnNSZXNwb25zZRI6CgtpbnZpdGF0aW9ucxgBIAMoCzIlLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuSW52aXRhdGlvbiIjCiFMaXN0Q3VycmVudFVzZXJJbnZpdGF0aW9uc1JlcXVlc3QilwEKIkxpc3RDdXJyZW50VXNlckludml0YXRpb25zUmVzcG9uc2USOgoLaW52aXRhdGlvbnMYASADKAsyJS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkludml0YXRpb24SNQoEb3JncxgCIAMoCzInLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuT3JnYW5pemF0aW9uIrYBChdMaXN0U2VydmljZVVzZXJzUmVxdWVzdBJPCgZvcmdfaWQYASABKAlCP5JBMTIvVGhlIG9yZ2FuaXphdGlvbiBJRCB0byBmaWx0ZXIgc2VydmljZSB1c2VycyBieS7iQQEC+kIEcgIQAxJKCgVzdGF0ZRgCIAEoCUI7kkE4MjZUaGUgc3RhdGUgdG8gZmlsdGVyIGJ5LiBJdCBjYW4gYmUgZW5hYmxlZCBvciBkaXNhYmxlZC4iWAoYTGlzdFNlcnZpY2VVc2Vyc1Jlc3BvbnNlEjwKDHNlcnZpY2V1c2VycxgBIAMoCzImLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuU2VydmljZVVzZXIikQEKFlNlcnZpY2VVc2VyUmVxdWVzdEJvZHkSTAoFdGl0bGUYASABKAlCPZJBOjInVXNlciBmcmllbmRseSBuYW1lIG9mIHRoZSBzZXJ2aWNlIHVzZXIuSg8iT3JkZXIgU2VydmljZSISKQoIbWV0YWRhdGEYAiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0IrYBChhDcmVhdGVTZXJ2aWNlVXNlclJlcXVlc3QSPwoEYm9keRgBIAEoCzIxLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuU2VydmljZVVzZXJSZXF1ZXN0Qm9keRJZCgZvcmdfaWQYAiABKAlCSZJBOzI5VGhlIG9yZ2FuaXphdGlvbiBJRCB0byB3aGljaCB0aGUgc2VydmljZSB1c2VyIGJlbG9uZ3MgdG8u4kEBAvpCBHICEAMiWAoZQ3JlYXRlU2VydmljZVVzZXJSZXNwb25zZRI7CgtzZXJ2aWNldXNlchgBIAEoCzImLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuU2VydmljZVVzZXIirgEKFUdldFNlcnZpY2VVc2VyUmVxdWVzdBI6CgJpZBgBIAEoCUIukkErMilUaGUgdW5pcXVlIElEIG9mIHRoZSBzZXJ2aWNlIHVzZXIgdG8gZ2V0LhJZCgZvcmdfaWQYAiABKAlCSZJBOzI5VGhlIG9yZ2FuaXphdGlvbiBJRCB0byB3aGljaCB0aGUgc2VydmljZSB1c2VyIGJlbG9uZ3MgdG8u4kEBAvpCBHICEAMiVQoWR2V0U2VydmljZVVzZXJSZXNwb25zZRI7CgtzZXJ2aWNldXNlchgBIAEoCzImLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuU2VydmljZVVzZXIi9QEKGFVwZGF0ZVNlcnZpY2VVc2VyUmVxdWVzdBI9CgJpZBgBIAEoCUIxkkEuMixUaGUgdW5pcXVlIElEIG9mIHRoZSBzZXJ2aWNlIHVzZXIgdG8gdXBkYXRlLhI/CgRib2R5GAIgASgLMjEucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5TZXJ2aWNlVXNlclJlcXVlc3RCb2R5ElkKBm9yZ19pZBgDIAEoCUJJkkE7MjlUaGUgb3JnYW5pemF0aW9uIElEIHRvIHdoaWNoIHRoZSBzZXJ2aWNlIHVzZXIgYmVsb25ncyB0by7iQQEC+kIEcgIQAyJYChlVcGRhdGVTZXJ2aWNlVXNlclJlc3BvbnNlEjsKC3NlcnZpY2V1c2VyGAEgASgLMiYucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5TZXJ2aWNlVXNlciK0AQoYRGVsZXRlU2VydmljZVVzZXJSZXF1ZXN0Ej0KAmlkGAEgASgJQjGSQS4yLFRoZSB1bmlxdWUgSUQgb2YgdGhlIHNlcnZpY2UgdXNlciB0byBkZWxldGUuElkKBm9yZ19pZBgCIAEoCUJJkkE7MjlUaGUgb3JnYW5pemF0aW9uIElEIHRvIHdoaWNoIHRoZSBzZXJ2aWNlIHVzZXIgYmVsb25ncyB0by7iQQEC+kIEcgIQAyIbChlEZWxldGVTZXJ2aWNlVXNlclJlc3BvbnNlItABChtDcmVhdGVTZXJ2aWNlVXNlckpXS1JlcXVlc3QSRwoCaWQYASABKAlCO5JBODI2VGhlIHVuaXF1ZSBJRCBvZiB0aGUgc2VydmljZSB1c2VyIHRvIGNyZWF0ZSBhIGtleSBmb3IuEg0KBXRpdGxlGAIgASgJElkKBm9yZ19pZBgDIAEoCUJJkkE7MjlUaGUgb3JnYW5pemF0aW9uIElEIHRvIHdoaWNoIHRoZSBzZXJ2aWNlIHVzZXIgYmVsb25ncyB0by7iQQEC+kIEcgIQAyJVChxDcmVhdGVTZXJ2aWNlVXNlckpXS1Jlc3BvbnNlEjUKA2tleRgBIAEoCzIoLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuS2V5Q3JlZGVudGlhbCLyAQoYR2V0U2VydmljZVVzZXJKV0tSZXF1ZXN0EkQKAmlkGAEgASgJQjiSQTUyM1RoZSB1bmlxdWUgSUQgb2YgdGhlIHNlcnZpY2UgdXNlciB0byBnZXQgYSBrZXkgZm9yLhI1CgZrZXlfaWQYAiABKAlCJZJBIjIgVGhlIHVuaXF1ZSBJRCBvZiB0aGUga2V5IHRvIGdldC4SWQoGb3JnX2lkGAMgASgJQkmSQTsyOVRoZSBvcmdhbml6YXRpb24gSUQgdG8gd2hpY2ggdGhlIHNlcnZpY2UgdXNlciBiZWxvbmdzIHRvLuJBAQL6QgRyAhADIlAKGUdldFNlcnZpY2VVc2VySldLUmVzcG9uc2USMwoEa2V5cxgBIAMoCzIlLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuSlNPTldlYktleSK9AQoaTGlzdFNlcnZpY2VVc2VySldLc1JlcXVlc3QSRAoCaWQYASABKAlCOJJBNTIzVGhlIHVuaXF1ZSBJRCBvZiB0aGUgc2VydmljZSB1c2VyIHRvIGxpc3Qga2V5cyBmb3IuElkKBm9yZ19pZBgCIAEoCUJJkkE7MjlUaGUgb3JnYW5pemF0aW9uIElEIHRvIHdoaWNoIHRoZSBzZXJ2aWNlIHVzZXIgYmVsb25ncyB0by7iQQEC+kIEcgIQAyJWChtMaXN0U2VydmljZVVzZXJKV0tzUmVzcG9uc2USNwoEa2V5cxgBIAMoCzIpLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuU2VydmljZVVzZXJKV0si+wEKG0RlbGV0ZVNlcnZpY2VVc2VySldLUmVxdWVzdBJHCgJpZBgBIAEoCUI7kkE4MjZUaGUgdW5pcXVlIElEIG9mIHRoZSBzZXJ2aWNlIHVzZXIgdG8gZGVsZXRlIGEga2V5IGZvci4SOAoGa2V5X2lkGAIgASgJQiiSQSUyI1RoZSB1bmlxdWUgSUQgb2YgdGhlIGtleSB0byBkZWxldGUuElkKBm9yZ19pZBgDIAEoCUJJkkE7MjlUaGUgb3JnYW5pemF0aW9uIElEIHRvIHdoaWNoIHRoZSBzZXJ2aWNlIHVzZXIgYmVsb25ncyB0by7iQQEC+kIEcgIQAyIeChxEZWxldGVTZXJ2aWNlVXNlckpXS1Jlc3BvbnNlItcBCiJDcmVhdGVTZXJ2aWNlVXNlckNyZWRlbnRpYWxSZXF1ZXN0EkcKAmlkGAEgASgJQjuSQTgyNlRoZSB1bmlxdWUgSUQgb2YgdGhlIHNlcnZpY2UgdXNlciB0byBjcmVhdGUgYSBrZXkgZm9yLhINCgV0aXRsZRgCIAEoCRJZCgZvcmdfaWQYAyABKAlCSZJBOzI5VGhlIG9yZ2FuaXphdGlvbiBJRCB0byB3aGljaCB0aGUgc2VydmljZSB1c2VyIGJlbG9uZ3MgdG8u4kEBAvpCBHICEAMiYgojQ3JlYXRlU2VydmljZVVzZXJDcmVkZW50aWFsUmVzcG9uc2USOwoGc2VjcmV0GAEgASgLMisucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5TZWNyZXRDcmVkZW50aWFsIscBCiFMaXN0U2VydmljZVVzZXJDcmVkZW50aWFsc1JlcXVlc3QSRwoCaWQYASABKAlCO5JBODI2VGhlIHVuaXF1ZSBJRCBvZiB0aGUgc2VydmljZSB1c2VyIHRvIGxpc3Qgc2VjcmV0cyBmb3IuElkKBm9yZ19pZBgCIAEoCUJJkkE7MjlUaGUgb3JnYW5pemF0aW9uIElEIHRvIHdoaWNoIHRoZSBzZXJ2aWNlIHVzZXIgYmVsb25ncyB0by7iQQEC+kIEcgIQAyJiCiJMaXN0U2VydmljZVVzZXJDcmVkZW50aWFsc1Jlc3BvbnNlEjwKB3NlY3JldHMYASADKAsyKy5yYXlzdGFjay5mcm9udGllci52MWJldGExLlNlY3JldENyZWRlbnRpYWwiiwIKIkRlbGV0ZVNlcnZpY2VVc2VyQ3JlZGVudGlhbFJlcXVlc3QSSgoCaWQYASABKAlCPpJBOzI5VGhlIHVuaXF1ZSBJRCBvZiB0aGUgc2VydmljZSB1c2VyIHRvIGRlbGV0ZSBhIHNlY3JldCBmb3IuEj4KCXNlY3JldF9pZBgCIAEoCUIrkkEoMiZUaGUgdW5pcXVlIElEIG9mIHRoZSBzZWNyZXQgdG8gZGVsZXRlLhJZCgZvcmdfaWQYAyABKAlCSZJBOzI5VGhlIG9yZ2FuaXphdGlvbiBJRCB0byB3aGljaCB0aGUgc2VydmljZSB1c2VyIGJlbG9uZ3MgdG8u4kEBAvpCBHICEAMiJQojRGVsZXRlU2VydmljZVVzZXJDcmVkZW50aWFsUmVzcG9uc2Ui1AEKHUNyZWF0ZVNlcnZpY2VVc2VyVG9rZW5SZXF1ZXN0EkkKAmlkGAEgASgJQj2SQToyOFRoZSB1bmlxdWUgSUQgb2YgdGhlIHNlcnZpY2UgdXNlciB0byBjcmVhdGUgYSB0b2tlbiBmb3IuEg0KBXRpdGxlGAIgASgJElkKBm9yZ19pZBgDIAEoCUJJkkE7MjlUaGUgb3JnYW5pemF0aW9uIElEIHRvIHdoaWNoIHRoZSBzZXJ2aWNlIHVzZXIgYmVsb25ncyB0by7iQQEC+kIEcgIQAyJcCh5DcmVhdGVTZXJ2aWNlVXNlclRva2VuUmVzcG9uc2USOgoFdG9rZW4YASABKAsyKy5yYXlzdGFjay5mcm9udGllci52MWJldGExLlNlcnZpY2VVc2VyVG9rZW4iwQEKHExpc3RTZXJ2aWNlVXNlclRva2Vuc1JlcXVlc3QSRgoCaWQYASABKAlCOpJBNzI1VGhlIHVuaXF1ZSBJRCBvZiB0aGUgc2VydmljZSB1c2VyIHRvIGxpc3QgdG9rZW5zIGZvci4SWQoGb3JnX2lkGAIgASgJQkmSQTsyOVRoZSBvcmdhbml6YXRpb24gSUQgdG8gd2hpY2ggdGhlIHNlcnZpY2UgdXNlciBiZWxvbmdzIHRvLuJBAQL6QgRyAhADIlwKHUxpc3RTZXJ2aWNlVXNlclRva2Vuc1Jlc3BvbnNlEjsKBnRva2VucxgBIAMoCzIrLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuU2VydmljZVVzZXJUb2tlbiKDAgodRGVsZXRlU2VydmljZVVzZXJUb2tlblJlcXVlc3QSSQoCaWQYASABKAlCPZJBOjI4VGhlIHVuaXF1ZSBJRCBvZiB0aGUgc2VydmljZSB1c2VyIHRvIGRlbGV0ZSBhIHRva2VuIGZvci4SPAoIdG9rZW5faWQYAiABKAlCKpJBJzIlVGhlIHVuaXF1ZSBJRCBvZiB0aGUgdG9rZW4gdG8gZGVsZXRlLhJZCgZvcmdfaWQYAyABKAlCSZJBOzI5VGhlIG9yZ2FuaXphdGlvbiBJRCB0byB3aGljaCB0aGUgc2VydmljZSB1c2VyIGJlbG9uZ3MgdG8u4kEBAvpCBHICEAMiIAoeRGVsZXRlU2VydmljZVVzZXJUb2tlblJlc3BvbnNlIt8BCh5MaXN0U2VydmljZVVzZXJQcm9qZWN0c1JlcXVlc3QSSAoCaWQYASABKAlCPJJBOTI3VGhlIHVuaXF1ZSBJRCBvZiB0aGUgc2VydmljZSB1c2VyIHRvIGxpc3QgcHJvamVjdHMgZm9yLhJZCgZvcmdfaWQYAiABKAlCSZJBOzI5VGhlIG9yZ2FuaXphdGlvbiBJRCB0byB3aGljaCB0aGUgc2VydmljZSB1c2VyIGJlbG9uZ3MgdG8u4kEBAvpCBHICEAMSGAoQd2l0aF9wZXJtaXNzaW9ucxgDIAMoCSLrAQofTGlzdFNlcnZpY2VVc2VyUHJvamVjdHNSZXNwb25zZRI0Cghwcm9qZWN0cxgBIAMoCzIiLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUHJvamVjdBJbCgxhY2Nlc3NfcGFpcnMYAiADKAsyRS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RTZXJ2aWNlVXNlclByb2plY3RzUmVzcG9uc2UuQWNjZXNzUGFpcho1CgpBY2Nlc3NQYWlyEhIKCnByb2plY3RfaWQYASABKAkSEwoLcGVybWlzc2lvbnMYAiADKAki7QEKHUxpc3RPcmdhbml6YXRpb25Hcm91cHNSZXF1ZXN0EikKBm9yZ19pZBgCIAEoCUIZ+kIWchQQAzIQXltBLVphLXowLTlfLV0rJBJXCgVzdGF0ZRgDIAEoCUJIkkFFMkNUaGUgc3RhdGUgb2YgdGhlIGdyb3VwIHRvIGZpbHRlciBieS4gSXQgY2FuIGJlIGVuYWJsZWQgb3IgZGlzYWJsZWQuEhEKCWdyb3VwX2lkcxgEIAMoCRIUCgx3aXRoX21lbWJlcnMYBSABKAgSGQoRd2l0aF9tZW1iZXJfY291bnQYBiABKAhKBAgBEAIiUgoeTGlzdE9yZ2FuaXphdGlvbkdyb3Vwc1Jlc3BvbnNlEjAKBmdyb3VwcxgBIAMoCzIgLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR3JvdXAirwEKHUNyZWF0ZU9yZ2FuaXphdGlvblJvbGVSZXF1ZXN0EkIKBGJvZHkYASABKAsyKi5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJvbGVSZXF1ZXN0Qm9keUII+kIFigECEAESSgoGb3JnX2lkGAIgASgJQjqSQTMyMVRoZSBvcmdhbml6YXRpb24gSUQgdG8gd2hpY2ggdGhlIHJvbGUgYmVsb25ncyB0by7iQQECIk8KHkNyZWF0ZU9yZ2FuaXphdGlvblJvbGVSZXNwb25zZRItCgRyb2xlGAEgASgLMh8ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Sb2xlIkEKGkdldE9yZ2FuaXphdGlvblJvbGVSZXF1ZXN0EgoKAmlkGAEgASgJEhcKBm9yZ19pZBgCIAEoCUIH+kIEcgIQAyJMChtHZXRPcmdhbml6YXRpb25Sb2xlUmVzcG9uc2USLQoEcm9sZRgBIAEoCzIfLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUm9sZSJ1Ch1VcGRhdGVPcmdhbml6YXRpb25Sb2xlUmVxdWVzdBIKCgJpZBgBIAEoCRIOCgZvcmdfaWQYAyABKAkSOAoEYm9keRgCIAEoCzIqLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUm9sZVJlcXVlc3RCb2R5Ik8KHlVwZGF0ZU9yZ2FuaXphdGlvblJvbGVSZXNwb25zZRItCgRyb2xlGAEgASgLMh8ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Sb2xlIjEKEExpc3RSb2xlc1JlcXVlc3QSDQoFc3RhdGUYASABKAkSDgoGc2NvcGVzGAIgAygJIkMKEUxpc3RSb2xlc1Jlc3BvbnNlEi4KBXJvbGVzGAEgAygLMh8ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Sb2xlIlYKHExpc3RPcmdhbml6YXRpb25Sb2xlc1JlcXVlc3QSFwoGb3JnX2lkGAEgASgJQgf6QgRyAhADEg0KBXN0YXRlGAIgASgJEg4KBnNjb3BlcxgDIAMoCSJPCh1MaXN0T3JnYW5pemF0aW9uUm9sZXNSZXNwb25zZRIuCgVyb2xlcxgBIAMoCzIfLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUm9sZSJECh1EZWxldGVPcmdhbml6YXRpb25Sb2xlUmVxdWVzdBIKCgJpZBgBIAEoCRIXCgZvcmdfaWQYAiABKAlCB/pCBHICEAMiIAoeRGVsZXRlT3JnYW5pemF0aW9uUm9sZVJlc3BvbnNlIqsKChdPcmdhbml6YXRpb25SZXF1ZXN0Qm9keRL7AQoEbmFtZRgBIAEoCULsAZJBzQEyygFUaGUgbmFtZSBvZiB0aGUgb3JnYW5pemF0aW9uLiBUaGUgbmFtZSBtdXN0IGJlIHVuaXF1ZSB3aXRoaW4gdGhlIGVudGlyZSBGcm9udGllciBpbnN0YW5jZS4gVGhlIG5hbWUgY2FuIGNvbnRhaW4gb25seSBhbHBoYW51bWVyaWMgY2hhcmFjdGVycywgZGFzaGVzIGFuZCB1bmRlcnNjb3Jlcy48YnIvPipFeGFtcGxlOipgImZyb250aWVyLW9yZzEtYWNtZSJg4kEBAvpCFHISMhBeW0EtWmEtejAtOS1fXSskErIBCgV0aXRsZRgCIAEoCUKiAZJBngEymwFUaGUgdGl0bGUgY2FuIGNvbnRhaW4gYW55IFVURi04IGNoYXJhY3RlciwgdXNlZCB0byBwcm92aWRlIGEgaHVtYW4tcmVhZGFibGUgbmFtZSBmb3IgdGhlIG9yZ2FuaXphdGlvbi4gQ2FuIGFsc28gYmUgbGVmdCBlbXB0eS48YnIvPiAqRXhhbXBsZSo6IGAiQWNtZSBJbmMiYBLpAwoIbWV0YWRhdGEYAyABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Qr0DkkG5AzK2A01ldGFkYXRhIG9iamVjdCBmb3Igb3JnYW5pemF0aW9ucyB0aGF0IGNhbiBob2xkIGtleSB2YWx1ZSBwYWlycyBkZWZpbmVkIGluIE9yZ2FuaXphdGlvbiBNZXRhc2NoZW1hLiBUaGUgbWV0YWRhdGEgb2JqZWN0IGNhbiBiZSB1c2VkIHRvIHN0b3JlIGFyYml0cmFyeSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgb3JnYW5pemF0aW9uIHN1Y2ggYXMgbGFiZWxzLCBkZXNjcmlwdGlvbnMgZXRjLiBUaGUgZGVmYXVsdCBPcmdhbml6YXRpb24gTWV0YXNjaGVtYSBjb250YWlucyBsYWJlbHMgYW5kIGRlc2NyaXB0b24gZmllbGRzLiBVcGRhdGUgdGhlIE9yZ2FuaXphdGlvbiBNZXRhc2NoZW1hIHRvIGFkZCBtb3JlIGZpZWxkcy4gPGJyLz4qRXhhbXBsZSo6YHsibGFiZWxzIjogeyJrZXkiOiAidmFsdWUifSwgImRlc2NyaXB0aW9uIjogIk9yZ2FuaXphdGlvbiBkZXNjcmlwdGlvbiJ9YBLwAgoGYXZhdGFyGAQgASgJQt8CkkGPAjLTAVRoZSBhdmF0YXIgaXMgYmFzZTY0IGVuY29kZWQgaW1hZ2UgZGF0YSBvZiB0aGUgdXNlci4gQ2FuIGFsc28gYmUgbGVmdCBlbXB0eS4gVGhlIGltYWdlIHNob3VsZCBiZSBsZXNzIHRoYW4gMjAwS0IuIFNob3VsZCBmb2xsb3cgdGhlIHJlZ2V4IHBhdHRlcm4gYF5kYXRhOmltYWdlLyhwbmd8anBnfGpwZWd8Z2lmKTtiYXNlNjQsKFthLXpBLVowLTkrL10rPXswLDJ9KSskYC5KNyJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUJBQUFBQSL6QklyRxiQoQ8yPl5kYXRhOmltYWdlLyhwbmd8anBnfGpwZWd8Z2lmKTtiYXNlNjQsKFthLXpBLVowLTkrL10rPXswLDJ9KSsk0AEBIukDChhMaXN0T3JnYW5pemF0aW9uc1JlcXVlc3QSxwEKB3VzZXJfaWQYASABKAlCtQGSQbEBMq4BVGhlIHVzZXIgSUQgdG8gZmlsdGVyIGJ5LiBJdCBjYW4gYmUgdXNlZCB0byBsaXN0IGFsbCB0aGUgb3JnYW5pemF0aW9ucyB0aGF0IHRoZSB1c2VyIGlzIGEgbWVtYmVyIG9mLiBPdGhlcndpc2UsIGFsbCB0aGUgb3JnYW5pemF0aW9ucyBpbiB0aGUgRnJvbnRpZXIgaW5zdGFuY2Ugd2lsbCBiZSBsaXN0ZWQuEk4KBXN0YXRlGAIgASgJQj+SQTwyOlRoZSBzdGF0ZSB0byBmaWx0ZXIgYnkuIEl0IGNhbiBiZSBgZW5hYmxlZGAgb3IgYGRpc2FibGVkYC4SZQoJcGFnZV9zaXplGAMgASgFQlKSQUYyRFRoZSBtYXhpbXVtIG51bWJlciBvZiB1c2VycyB0byByZXR1cm4gcGVyIHBhZ2UuIFRoZSBkZWZhdWx0IGlzIDEwMDAu+kIGGgQoAUABEkwKCHBhZ2VfbnVtGAQgASgFQjqSQS4yLFRoZSBwYWdlIG51bWJlciB0byByZXR1cm4uIFRoZSBkZWZhdWx0IGlzIDEu+kIGGgQoAUABIlsKGUxpc3RPcmdhbml6YXRpb25zUmVzcG9uc2USPgoNb3JnYW5pemF0aW9ucxgBIAMoCzInLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuT3JnYW5pemF0aW9uImcKGUNyZWF0ZU9yZ2FuaXphdGlvblJlcXVlc3QSSgoEYm9keRgBIAEoCzIyLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuT3JnYW5pemF0aW9uUmVxdWVzdEJvZHlCCPpCBYoBAhABIlsKGkNyZWF0ZU9yZ2FuaXphdGlvblJlc3BvbnNlEj0KDG9yZ2FuaXphdGlvbhgBIAEoCzInLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuT3JnYW5pemF0aW9uIlgKF0dldE9yZ2FuaXphdGlvblJlc3BvbnNlEj0KDG9yZ2FuaXphdGlvbhgBIAEoCzInLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuT3JnYW5pemF0aW9uIlsKGlVwZGF0ZU9yZ2FuaXphdGlvblJlc3BvbnNlEj0KDG9yZ2FuaXphdGlvbhgBIAEoCzInLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuT3JnYW5pemF0aW9uIiQKFkdldE9yZ2FuaXphdGlvblJlcXVlc3QSCgoCaWQYASABKAkiaQoZVXBkYXRlT3JnYW5pemF0aW9uUmVxdWVzdBIKCgJpZBgBIAEoCRJACgRib2R5GAIgASgLMjIucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Pcmdhbml6YXRpb25SZXF1ZXN0Qm9keSI0Ch1MaXN0T3JnYW5pemF0aW9uQWRtaW5zUmVxdWVzdBITCgJpZBgBIAEoCUIH+kIEcgIQAyJQCh5MaXN0T3JnYW5pemF0aW9uQWRtaW5zUmVzcG9uc2USLgoFdXNlcnMYASADKAsyHy5yYXlzdGFjay5mcm9udGllci52MWJldGExLlVzZXIifAocTGlzdE9yZ2FuaXphdGlvblVzZXJzUmVxdWVzdBITCgJpZBgBIAEoCUIH+kIEcgIQAxIdChFwZXJtaXNzaW9uX2ZpbHRlchgCIAEoCUICGAESEgoKd2l0aF9yb2xlcxgDIAEoCBIUCgxyb2xlX2ZpbHRlcnMYBCADKAki8wEKHUxpc3RPcmdhbml6YXRpb25Vc2Vyc1Jlc3BvbnNlEi4KBXVzZXJzGAEgAygLMh8ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Vc2VyElUKCnJvbGVfcGFpcnMYAiADKAsyQS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RPcmdhbml6YXRpb25Vc2Vyc1Jlc3BvbnNlLlJvbGVQYWlyGksKCFJvbGVQYWlyEg8KB3VzZXJfaWQYASABKAkSLgoFcm9sZXMYAiADKAsyHy5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJvbGUifAobQWRkT3JnYW5pemF0aW9uVXNlcnNSZXF1ZXN0EhMKAmlkGAEgASgJQgf6QgRyAhADEkgKCHVzZXJfaWRzGAIgAygJQjaSQTMyMUxpc3Qgb2YgdXNlciBJRHMgdG8gYmUgYWRkZWQgdG8gdGhlIG9yZ2FuaXphdGlvbi4iHgocQWRkT3JnYW5pemF0aW9uVXNlcnNSZXNwb25zZSJFCh1SZW1vdmVPcmdhbml6YXRpb25Vc2VyUmVxdWVzdBITCgJpZBgBIAEoCUIH+kIEcgIQAxIPCgd1c2VyX2lkGAIgASgJIiAKHlJlbW92ZU9yZ2FuaXphdGlvblVzZXJSZXNwb25zZSI6CiNMaXN0T3JnYW5pemF0aW9uU2VydmljZVVzZXJzUmVxdWVzdBITCgJpZBgBIAEoCUIH+kIEcgIQAyJkCiRMaXN0T3JnYW5pemF0aW9uU2VydmljZVVzZXJzUmVzcG9uc2USPAoMc2VydmljZXVzZXJzGAEgAygLMiYucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5TZXJ2aWNlVXNlciLcAQoiTGlzdE9yZ2FuaXphdGlvbkludml0YXRpb25zUmVxdWVzdBJPCgZvcmdfaWQYASABKAlCP5JBODI2dW5pcXVlIGlkIG9mIHRoZSBvcmdhbml6YXRpb24gdG8gd2hpY2ggdXNlciBpcyBpbnZpdGVk4kEBAhJlCgd1c2VyX2lkGAIgASgJQlSSQVEyT3VzZXJfaWQgZmlsdGVyIGlzIHRoZSBlbWFpbCBpZCBvZiB1c2VyIHdobyBhcmUgaW52aXRlZCBpbnNpZGUgdGhlIG9yZ2FuaXphdGlvbi4iYQojTGlzdE9yZ2FuaXphdGlvbkludml0YXRpb25zUmVzcG9uc2USOgoLaW52aXRhdGlvbnMYASADKAsyJS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkludml0YXRpb24ihgQKI0NyZWF0ZU9yZ2FuaXphdGlvbkludml0YXRpb25SZXF1ZXN0Ek8KBm9yZ19pZBgBIAEoCUI/kkE4MjZ1bmlxdWUgaWQgb2YgdGhlIG9yZ2FuaXphdGlvbiB0byB3aGljaCB1c2VyIGlzIGludml0ZWTiQQECEqsBCgh1c2VyX2lkcxgCIAMoCUKYAZJBhgEygwF1c2VyX2lkIGlzIGVtYWlsIGlkIG9mIHVzZXIgd2hvIGFyZSBpbnZpdGVkIGluc2lkZSB0aGUgb3JnYW5pemF0aW9uLiBJZiB1c2VyIGlzIG5vdCByZWdpc3RlcmVkIG9uIHRoZSBwbGF0Zm9ybSwgaXQgd2lsbCBiZSBub3RpZmllZOJBAQL6QgeSAQQIARAKElYKCWdyb3VwX2lkcxgDIAMoCUJDkkFAMj5saXN0IG9mIGdyb3VwIGlkcyB0byB3aGljaCB1c2VyIG5lZWRzIHRvIGJlIGFkZGVkIGFzIGEgbWVtYmVyLhKHAQoIcm9sZV9pZHMYBCADKAlCdZJBcjJwbGlzdCBvZiByb2xlIGlkcyB0byB3aGljaCB1c2VyIG5lZWRzIHRvIGJlIGFkZGVkIGFzIGEgbWVtYmVyLiBSb2xlcyBhcmUgYmluZGVkIGF0IG9yZ2FuaXphdGlvbiBsZXZlbCBieSBkZWZhdWx0LiJiCiRDcmVhdGVPcmdhbml6YXRpb25JbnZpdGF0aW9uUmVzcG9uc2USOgoLaW52aXRhdGlvbnMYASADKAsyJS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkludml0YXRpb24iPgogR2V0T3JnYW5pemF0aW9uSW52aXRhdGlvblJlcXVlc3QSCgoCaWQYASABKAkSDgoGb3JnX2lkGAIgASgJIl4KIUdldE9yZ2FuaXphdGlvbkludml0YXRpb25SZXNwb25zZRI5CgppbnZpdGF0aW9uGAEgASgLMiUucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5JbnZpdGF0aW9uIkEKI0FjY2VwdE9yZ2FuaXphdGlvbkludml0YXRpb25SZXF1ZXN0EgoKAmlkGAEgASgJEg4KBm9yZ19pZBgCIAEoCSImCiRBY2NlcHRPcmdhbml6YXRpb25JbnZpdGF0aW9uUmVzcG9uc2UiQQojRGVsZXRlT3JnYW5pemF0aW9uSW52aXRhdGlvblJlcXVlc3QSCgoCaWQYASABKAkSDgoGb3JnX2lkGAIgASgJIpUCCh5MaXN0T3JnYW5pemF0aW9uRG9tYWluc1JlcXVlc3QSbAoGb3JnX2lkGAEgASgJQlySQU4yTHVuaXF1ZSBpZCBvZiB0aGUgb3JnYW5pemF0aW9uIGZvciB3aGljaCB3aGl0ZWxpc3RlZCBkb21haW5zIGFyZSB0byBiZSBsaXN0ZWTiQQEC+kIEcgIQAxKEAQoFc3RhdGUYAiABKAlCdZJBcjJwZmlsdGVyIHRvIGxpc3QgZG9tYWlucyBieSB0aGVpciBzdGF0ZSAocGVuZGluZy92ZXJpZmllZCkuIElmIG5vdCBwcm92aWRlZCwgYWxsIGRvbWFpbnMgZm9yIGFuIG9yZyB3aWxsIGJlIGxpc3RlZCJVCh9MaXN0T3JnYW5pemF0aW9uRG9tYWluc1Jlc3BvbnNlEjIKB2RvbWFpbnMYASADKAsyIS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkRvbWFpbiKYAQogTGlzdE9yZ2FuaXphdGlvbnNCeURvbWFpblJlcXVlc3QSdAoEbmFtZRgBIAEoCUJmkkFYMlZkb21haW4gbmFtZSB0byBiZSB1c2VkIHRvIGxpc3QgYWxsIHRoZSBvcmdhbml6YXRpb25zIHRoYXQgaGF2ZSB0aGlzIGRvbWFpbiB3aGl0ZWxpc3RlZOJBAQL6QgRyAhADImMKIUxpc3RPcmdhbml6YXRpb25zQnlEb21haW5SZXNwb25zZRI+Cg1vcmdhbml6YXRpb25zGAEgAygLMicucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Pcmdhbml6YXRpb24iMgoXSm9pbk9yZ2FuaXphdGlvblJlcXVlc3QSFwoGb3JnX2lkGAEgASgJQgf6QgRyAhADIhoKGEpvaW5Pcmdhbml6YXRpb25SZXNwb25zZSLSAQocR2V0T3JnYW5pemF0aW9uRG9tYWluUmVxdWVzdBJDCgJpZBgBIAEoCUI3kkEpMid1bmlxdWUgaWQgb2YgdGhlIGRvbWFpbiB0byBiZSByZXRyaWV2ZWTiQQEC+kIEcgIQAxJtCgZvcmdfaWQYAiABKAlCXZJBTzJNdW5pcXVlIGlkIG9mIHRoZSBvcmdhbml6YXRpb24gZm9yIHdoaWNoIHdoaXRlbGlzdGVkIGRvbWFpbiBpcyB0byBiZSByZXRyaWV2ZWTiQQEC+kIEcgIQAyJSCh1HZXRPcmdhbml6YXRpb25Eb21haW5SZXNwb25zZRIxCgZkb21haW4YASABKAsyIS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkRvbWFpbiLiAQofQ3JlYXRlT3JnYW5pemF0aW9uRG9tYWluUmVxdWVzdBJrCgZvcmdfaWQYASABKAlCW5JBTTJLdW5pcXVlIGlkIG9mIHRoZSBvcmdhbml6YXRpb24gZm9yIHdoaWNoIHdoaXRlbGlzdGVkIGRvbWFpbnMgYXJlIHRvIGJlIGFkZGVk4kEBAvpCBHICEAMSUgoGZG9tYWluGAIgASgJQkKSQTQyMmRvbWFpbiBuYW1lIHRvIGJlIGFkZGVkIHRvIHRoZSB0cnVzdGVkIGRvbWFpbiBsaXN04kEBAvpCBHICEAMiVQogQ3JlYXRlT3JnYW5pemF0aW9uRG9tYWluUmVzcG9uc2USMQoGZG9tYWluGAEgASgLMiEucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Eb21haW4i0wEKH0RlbGV0ZU9yZ2FuaXphdGlvbkRvbWFpblJlcXVlc3QSQQoCaWQYASABKAlCNZJBJzIldW5pcXVlIGlkIG9mIHRoZSBkb21haW4gdG8gYmUgZGVsZXRlZOJBAQL6QgRyAhADEm0KBm9yZ19pZBgCIAEoCUJdkkFPMk11bmlxdWUgaWQgb2YgdGhlIG9yZ2FuaXphdGlvbiBmb3Igd2hpY2ggd2hpdGVsaXN0ZWQgZG9tYWlucyBhcmUgdG8gYmUgZGVsZXRlZOJBAQL6QgRyAhADIiIKIERlbGV0ZU9yZ2FuaXphdGlvbkRvbWFpblJlc3BvbnNlItUBCh9WZXJpZnlPcmdhbml6YXRpb25Eb21haW5SZXF1ZXN0Em4KBm9yZ19pZBgBIAEoCUJekkFQMk51bmlxdWUgaWQgb2YgdGhlIG9yZ2FuaXphdGlvbiBmb3Igd2hpY2ggd2hpdGVsaXN0ZWQgZG9tYWlucyBhcmUgdG8gYmUgdmVyaWZpZWTiQQEC+kIEcgIQAxJCCgJpZBgCIAEoCUI2kkEoMiZ1bmlxdWUgaWQgb2YgdGhlIGRvbWFpbiB0byBiZSB2ZXJpZmllZOJBAQL6QgRyAhADIjEKIFZlcmlmeU9yZ2FuaXphdGlvbkRvbWFpblJlc3BvbnNlEg0KBXN0YXRlGAEgASgJIiYKJERlbGV0ZU9yZ2FuaXphdGlvbkludml0YXRpb25SZXNwb25zZSInChlFbmFibGVPcmdhbml6YXRpb25SZXF1ZXN0EgoKAmlkGAEgASgJIhwKGkVuYWJsZU9yZ2FuaXphdGlvblJlc3BvbnNlIigKGkRpc2FibGVPcmdhbml6YXRpb25SZXF1ZXN0EgoKAmlkGAEgASgJIh0KG0Rpc2FibGVPcmdhbml6YXRpb25SZXNwb25zZSInChlEZWxldGVPcmdhbml6YXRpb25SZXF1ZXN0EgoKAmlkGAEgASgJIhwKGkRlbGV0ZU9yZ2FuaXphdGlvblJlc3BvbnNlIisKGUdldE9yZ2FuaXphdGlvbkt5Y1JlcXVlc3QSDgoGb3JnX2lkGAEgASgJImIKGkdldE9yZ2FuaXphdGlvbkt5Y1Jlc3BvbnNlEkQKEG9yZ2FuaXphdGlvbl9reWMYASABKAsyKi5yYXlzdGFjay5mcm9udGllci52MWJldGExLk9yZ2FuaXphdGlvbkt5YyKsBQoSUHJvamVjdFJlcXVlc3RCb2R5EvcBCgRuYW1lGAEgASgJQugBkkHJATLGAVRoZSBuYW1lIG9mIHRoZSBwcm9qZWN0LiBUaGUgbmFtZSBtdXN0IGJlIHVuaXF1ZSB3aXRoaW4gdGhlIGVudGlyZSBGcm9udGllciBpbnN0YW5jZS4gVGhlIG5hbWUgY2FuIGNvbnRhaW4gb25seSBhbHBoYW51bWVyaWMgY2hhcmFjdGVycywgZGFzaGVzIGFuZCB1bmRlcnNjb3Jlcy48YnIvPiAqRXhhbXBsZToqIGBmcm9udGllci1wbGF5Z3JvdW5kYOJBAQL6QhRyEjIQXltBLVphLXowLTktX10rJBK3AQoFdGl0bGUYAiABKAlCpwGSQaMBMqABVGhlIHRpdGxlIGNhbiBjb250YWluIGFueSBVVEYtOCBjaGFyYWN0ZXIsIHVzZWQgdG8gcHJvdmlkZSBhIGh1bWFuLXJlYWRhYmxlIG5hbWUgZm9yIHRoZSBwcm9qZWN0LiBDYW4gYWxzbyBiZSBsZWZ0IGVtcHR5LiA8YnIvPiAqRXhhbXBsZToqIGBGcm9udGllciBQbGF5Z3JvdW5kYBKJAQoIbWV0YWRhdGEYAyABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Ql6SQVsyWU1ldGFkYXRhIG9iamVjdCBmb3IgcHJvamVjdHMgdGhhdCBjYW4gaG9sZCBrZXkgdmFsdWUgcGFpcnMgZGVmaW5lZCBpbiBQcm9qZWN0IE1ldGFzY2hlbWEuElYKBm9yZ19pZBgEIAEoCUJGkkE4MjZ1bmlxdWUgaWQgb2YgdGhlIG9yZ2FuaXphdGlvbiB0byB3aGljaCBwcm9qZWN0IGJlbG9uZ3PiQQEC+kIEcgIQAyJdChRDcmVhdGVQcm9qZWN0UmVxdWVzdBJFCgRib2R5GAEgASgLMi0ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Qcm9qZWN0UmVxdWVzdEJvZHlCCPpCBYoBAhABIkwKFUNyZWF0ZVByb2plY3RSZXNwb25zZRIzCgdwcm9qZWN0GAEgASgLMiIucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Qcm9qZWN0It8BCh9MaXN0T3JnYW5pemF0aW9uUHJvamVjdHNSZXF1ZXN0EhMKAmlkGAEgASgJQgf6QgRyAhADEosBCgVzdGF0ZRgCIAEoCUJ8kkF5MndGaWx0ZXIgcHJvamVjdHMgYnkgc3RhdGUuIElmIG5vdCBzcGVjaWZpZWQsIGFsbCBwcm9qZWN0cyBhcmUgcmV0dXJuZWQuIDxici8+ICpQb3NzaWJsZSB2YWx1ZXM6KiBgZW5hYmxlZGAgb3IgYGRpc2FibGVkYBIZChF3aXRoX21lbWJlcl9jb3VudBgDIAEoCCJYCiBMaXN0T3JnYW5pemF0aW9uUHJvamVjdHNSZXNwb25zZRI0Cghwcm9qZWN0cxgBIAMoCzIiLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUHJvamVjdCIfChFHZXRQcm9qZWN0UmVxdWVzdBIKCgJpZBgBIAEoCSJJChJHZXRQcm9qZWN0UmVzcG9uc2USMwoHcHJvamVjdBgBIAEoCzIiLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUHJvamVjdCJfChRVcGRhdGVQcm9qZWN0UmVxdWVzdBIKCgJpZBgBIAEoCRI7CgRib2R5GAIgASgLMi0ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Qcm9qZWN0UmVxdWVzdEJvZHkiTAoVVXBkYXRlUHJvamVjdFJlc3BvbnNlEjMKB3Byb2plY3QYASABKAsyIi5yYXlzdGFjay5mcm9udGllci52MWJldGExLlByb2plY3QiLwoYTGlzdFByb2plY3RBZG1pbnNSZXF1ZXN0EhMKAmlkGAEgASgJQgf6QgRyAhADIksKGUxpc3RQcm9qZWN0QWRtaW5zUmVzcG9uc2USLgoFdXNlcnMYASADKAsyHy5yYXlzdGFjay5mcm9udGllci52MWJldGExLlVzZXIiXQoXTGlzdFByb2plY3RVc2Vyc1JlcXVlc3QSEwoCaWQYASABKAlCB/pCBHICEAMSGQoRcGVybWlzc2lvbl9maWx0ZXIYAiABKAkSEgoKd2l0aF9yb2xlcxgDIAEoCCLpAQoYTGlzdFByb2plY3RVc2Vyc1Jlc3BvbnNlEi4KBXVzZXJzGAEgAygLMh8ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Vc2VyElAKCnJvbGVfcGFpcnMYAiADKAsyPC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RQcm9qZWN0VXNlcnNSZXNwb25zZS5Sb2xlUGFpchpLCghSb2xlUGFpchIPCgd1c2VyX2lkGAEgASgJEi4KBXJvbGVzGAIgAygLMh8ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Sb2xlIkkKHkxpc3RQcm9qZWN0U2VydmljZVVzZXJzUmVxdWVzdBITCgJpZBgBIAEoCUIH+kIEcgIQAxISCgp3aXRoX3JvbGVzGAMgASgIIowCCh9MaXN0UHJvamVjdFNlcnZpY2VVc2Vyc1Jlc3BvbnNlEjwKDHNlcnZpY2V1c2VycxgBIAMoCzImLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuU2VydmljZVVzZXISVwoKcm9sZV9wYWlycxgCIAMoCzJDLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdFByb2plY3RTZXJ2aWNlVXNlcnNSZXNwb25zZS5Sb2xlUGFpchpSCghSb2xlUGFpchIWCg5zZXJ2aWNldXNlcl9pZBgBIAEoCRIuCgVyb2xlcxgCIAMoCzIfLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUm9sZSJDChhMaXN0UHJvamVjdEdyb3Vwc1JlcXVlc3QSEwoCaWQYASABKAlCB/pCBHICEAMSEgoKd2l0aF9yb2xlcxgCIAEoCCLuAQoZTGlzdFByb2plY3RHcm91cHNSZXNwb25zZRIwCgZncm91cHMYASADKAsyIC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkdyb3VwElEKCnJvbGVfcGFpcnMYAiADKAsyPS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RQcm9qZWN0R3JvdXBzUmVzcG9uc2UuUm9sZVBhaXIaTAoIUm9sZVBhaXISEAoIZ3JvdXBfaWQYASABKAkSLgoFcm9sZXMYAiADKAsyHy5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJvbGUiIgoURW5hYmxlUHJvamVjdFJlcXVlc3QSCgoCaWQYASABKAkiFwoVRW5hYmxlUHJvamVjdFJlc3BvbnNlIiMKFURpc2FibGVQcm9qZWN0UmVxdWVzdBIKCgJpZBgBIAEoCSIYChZEaXNhYmxlUHJvamVjdFJlc3BvbnNlIiIKFERlbGV0ZVByb2plY3RSZXF1ZXN0EgoKAmlkGAEgASgJIhcKFURlbGV0ZVByb2plY3RSZXNwb25zZSKjCAoRUG9saWN5UmVxdWVzdEJvZHkSUgoHcm9sZV9pZBgBIAEoCUJBkkEzMjF1bmlxdWUgaWQgb2YgdGhlIHJvbGUgdG8gd2hpY2ggcG9saWN5IGlzIGFzc2lnbmVk4kEBAvpCBHICEAMSrwEKBXRpdGxlGAMgASgJQp8BkkGbATKYAVRoZSB0aXRsZSBjYW4gY29udGFpbiBhbnkgVVRGLTggY2hhcmFjdGVyLCB1c2VkIHRvIHByb3ZpZGUgYSBodW1hbi1yZWFkYWJsZSBuYW1lIGZvciB0aGUgcG9saWN5LiBDYW4gYWxzbyBiZSBsZWZ0IGVtcHR5LiA8YnIvPiAqRXhhbXBsZToqIGBQb2xpY3kgdGl0bGVgErMBCghyZXNvdXJjZRgCIAEoCUKgAZJBkQEyjgFUaGUgcmVzb3VyY2UgdG8gd2hpY2ggcG9saWN5IGlzIGFzc2lnbmVkIGluIHRoaXMgZm9ybWF0IGBuYW1lc3BhY2U6dXVpZGAuIDxici8+ICpFeGFtcGxlOiogYGFwcC9ndWFyZGlhbjo3MGY2OWMzYS0zMzRiLTRmMjUtOTBiOC00ZDRmM2JlNmI4ZTJg4kEBAvpCBHICEAMS7wIKCXByaW5jaXBhbBgEIAEoCULbApJB0wIy0AJwcmluY2lwYWwgaXMgdGhlIHVzZXIgb3IgZ3JvdXAgdG8gd2hpY2ggcG9saWN5IGlzIGFzc2lnbmVkLiBUaGUgcHJpbmNpcGFsIGlkIG11c3QgYmUgcHJlZml4ZWQgd2l0aCBpdHMgbmFtZXNwYWNlIGlkIGluIHRoaXMgZm9ybWF0IGBuYW1lc3BhY2U6dXVpZGAuIFRoZSBuYW1lc3BhY2UgY2FuIGJlIGBhcHAvdXNlcmAsIGBhcHAvZ3JvdXBgIG9yIGBhcHAvc2VydmljZXVzZXJgIChjb21pbmcgdXAhKSBhbmQgdXVpZCBpcyB0aGUgdW5pcXVlIGlkIG9mIHRoZSBwcmluY2lwYWwuIDxici8+ICpFeGFtcGxlOiogYGFwcC91c2VyOjkyZjY5YzNhLTMzNGItNGYyNS05MGI4LTRkNGYzYmU2YjgyNWDiQQECEt8BCghtZXRhZGF0YRgFIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RCswGSQa8BMqwBTWV0YWRhdGEgb2JqZWN0IGZvciBwb2xpY2llcyB0aGF0IGNhbiBob2xkIGtleSB2YWx1ZSBwYWlycyBkZWZpbmVkIGluIFBvbGljeSBNZXRhc2NoZW1hLjxici8+ICpFeGFtcGxlOiogYHsibGFiZWxzIjogeyJrZXkiOiAidmFsdWUifSwgImRlc2NyaXB0aW9uIjogIlBvbGljeSBkZXNjcmlwdGlvbiJ9YCKUBQoaQ3JlYXRlUG9saWN5Rm9yUHJvamVjdEJvZHkSUgoHcm9sZV9pZBgBIAEoCUJBkkEzMjF1bmlxdWUgaWQgb2YgdGhlIHJvbGUgdG8gd2hpY2ggcG9saWN5IGlzIGFzc2lnbmVk4kEBAvpCBHICEAMSrwEKBXRpdGxlGAIgASgJQp8BkkGbATKYAVRoZSB0aXRsZSBjYW4gY29udGFpbiBhbnkgVVRGLTggY2hhcmFjdGVyLCB1c2VkIHRvIHByb3ZpZGUgYSBodW1hbi1yZWFkYWJsZSBuYW1lIGZvciB0aGUgcG9saWN5LiBDYW4gYWxzbyBiZSBsZWZ0IGVtcHR5LiA8YnIvPiAqRXhhbXBsZToqIGBQb2xpY3kgdGl0bGVgEu8CCglwcmluY2lwYWwYAyABKAlC2wKSQdMCMtACcHJpbmNpcGFsIGlzIHRoZSB1c2VyIG9yIGdyb3VwIHRvIHdoaWNoIHBvbGljeSBpcyBhc3NpZ25lZC4gVGhlIHByaW5jaXBhbCBpZCBtdXN0IGJlIHByZWZpeGVkIHdpdGggaXRzIG5hbWVzcGFjZSBpZCBpbiB0aGlzIGZvcm1hdCBgbmFtZXNwYWNlOnV1aWRgLiBUaGUgbmFtZXNwYWNlIGNhbiBiZSBgYXBwL3VzZXJgLCBgYXBwL2dyb3VwYCBvciBgYXBwL3NlcnZpY2V1c2VyYCAoY29taW5nIHVwISkgYW5kIHV1aWQgaXMgdGhlIHVuaXF1ZSBpZCBvZiB0aGUgcHJpbmNpcGFsLiA8YnIvPiAqRXhhbXBsZToqIGBhcHAvdXNlcjo5MmY2OWMzYS0zMzRiLTRmMjUtOTBiOC00ZDRmM2JlNmI4MjVg4kEBAiIiChRHZXRQZXJtaXNzaW9uUmVxdWVzdBIKCgJpZBgBIAEoCSJSChVHZXRQZXJtaXNzaW9uUmVzcG9uc2USOQoKcGVybWlzc2lvbhgBIAEoCzIlLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUGVybWlzc2lvbiIYChZMaXN0UGVybWlzc2lvbnNSZXF1ZXN0IlUKF0xpc3RQZXJtaXNzaW9uc1Jlc3BvbnNlEjoKC3Blcm1pc3Npb25zGAEgAygLMiUucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5QZXJtaXNzaW9uIhcKFUxpc3ROYW1lc3BhY2VzUmVxdWVzdCJSChZMaXN0TmFtZXNwYWNlc1Jlc3BvbnNlEjgKCm5hbWVzcGFjZXMYASADKAsyJC5yYXlzdGFjay5mcm9udGllci52MWJldGExLk5hbWVzcGFjZSIhChNHZXROYW1lc3BhY2VSZXF1ZXN0EgoKAmlkGAEgASgJIk8KFEdldE5hbWVzcGFjZVJlc3BvbnNlEjcKCW5hbWVzcGFjZRgBIAEoCzIkLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTmFtZXNwYWNlIlsKE0NyZWF0ZVBvbGljeVJlcXVlc3QSRAoEYm9keRgBIAEoCzIsLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUG9saWN5UmVxdWVzdEJvZHlCCPpCBYoBAhABIk8KFENyZWF0ZVBvbGljeVJlc3BvbnNlEjEKBnBvbGljeRgCIAEoCzIhLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUG9saWN5SgQIARACIh4KEEdldFBvbGljeVJlcXVlc3QSCgoCaWQYASABKAkiRgoRR2V0UG9saWN5UmVzcG9uc2USMQoGcG9saWN5GAEgASgLMiEucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Qb2xpY3kimQIKE0xpc3RQb2xpY2llc1JlcXVlc3QSNgoGb3JnX2lkGAEgASgJQiaSQSMyIVRoZSBvcmdhbml6YXRpb24gaWQgdG8gZmlsdGVyIGJ5LhI1Cgpwcm9qZWN0X2lkGAIgASgJQiGSQR4yHFRoZSBwcm9qZWN0IGlkIHRvIGZpbHRlciBieS4SLwoHdXNlcl9pZBgDIAEoCUIekkEbMhlUaGUgdXNlciBpZCB0byBmaWx0ZXIgYnkuEi8KB3JvbGVfaWQYBCABKAlCHpJBGzIZVGhlIHJvbGUgaWQgdG8gZmlsdGVyIGJ5LhIxCghncm91cF9pZBgFIAEoCUIfkkEcMhpUaGUgZ3JvdXAgaWQgdG8gZmlsdGVyIGJ5LiJLChRMaXN0UG9saWNpZXNSZXNwb25zZRIzCghwb2xpY2llcxgBIAMoCzIhLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUG9saWN5Il0KE1VwZGF0ZVBvbGljeVJlcXVlc3QSCgoCaWQYASABKAkSOgoEYm9keRgCIAEoCzIsLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUG9saWN5UmVxdWVzdEJvZHkiSwoUVXBkYXRlUG9saWN5UmVzcG9uc2USMwoIcG9saWNpZXMYASADKAsyIS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlBvbGljeSIhChNEZWxldGVQb2xpY3lSZXF1ZXN0EgoKAmlkGAEgASgJIhYKFERlbGV0ZVBvbGljeVJlc3BvbnNlIosBCh1DcmVhdGVQb2xpY3lGb3JQcm9qZWN0UmVxdWVzdBIbCgpwcm9qZWN0X2lkGAEgASgJQgf6QgRyAhADEk0KBGJvZHkYAiABKAsyNS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNyZWF0ZVBvbGljeUZvclByb2plY3RCb2R5Qgj6QgWKAQIQASIgCh5DcmVhdGVQb2xpY3lGb3JQcm9qZWN0UmVzcG9uc2UicgoTUmVsYXRpb25SZXF1ZXN0Qm9keRIOCgZvYmplY3QYASABKAkSDwoHc3ViamVjdBgDIAEoCRIQCghyZWxhdGlvbhgEIAEoCRIcChRzdWJqZWN0X3N1Yl9yZWxhdGlvbhgGIAEoCUoECAIQA0oECAUQBiJfChVDcmVhdGVSZWxhdGlvblJlcXVlc3QSRgoEYm9keRgBIAEoCzIuLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUmVsYXRpb25SZXF1ZXN0Qm9keUII+kIFigECEAEiTwoWQ3JlYXRlUmVsYXRpb25SZXNwb25zZRI1CghyZWxhdGlvbhgBIAEoCzIjLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUmVsYXRpb24iIAoSR2V0UmVsYXRpb25SZXF1ZXN0EgoKAmlkGAEgASgJIkwKE0dldFJlbGF0aW9uUmVzcG9uc2USNQoIcmVsYXRpb24YASABKAsyIy5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJlbGF0aW9uImEKFVVwZGF0ZVJlbGF0aW9uUmVxdWVzdBIKCgJpZBgBIAEoCRI8CgRib2R5GAIgASgLMi4ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5SZWxhdGlvblJlcXVlc3RCb2R5Ik8KFlVwZGF0ZVJlbGF0aW9uUmVzcG9uc2USNQoIcmVsYXRpb24YASABKAsyIy5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJlbGF0aW9uIrkGChBHcm91cFJlcXVlc3RCb2R5Es8BCgRuYW1lGAEgASgJQsABkkGhATKeAVRoZSBuYW1lIG9mIHRoZSBncm91cC4gVGhlIG5hbWUgbXVzdCBiZSB1bmlxdWUgd2l0aGluIHRoZSBlbnRpcmUgRnJvbnRpZXIgaW5zdGFuY2UuIFRoZSBuYW1lIGNhbiBjb250YWluIG9ubHkgYWxwaGFudW1lcmljIGNoYXJhY3RlcnMsIGRhc2hlcyBhbmQgdW5kZXJzY29yZXMu4kEBAvpCFHISMhBeW0EtWmEtejAtOS1fXSskEosBCgV0aXRsZRgCIAEoCUJ8kkF5MndUaGUgdGl0bGUgY2FuIGNvbnRhaW4gYW55IFVURi04IGNoYXJhY3RlciwgdXNlZCB0byBwcm92aWRlIGEgaHVtYW4tcmVhZGFibGUgbmFtZSBmb3IgdGhlIGdyb3VwLiBDYW4gYWxzbyBiZSBsZWZ0IGVtcHR5LhK+AwoIbWV0YWRhdGEYAyABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0QpIDkkGOAzKLA01ldGFkYXRhIG9iamVjdCBmb3IgZ3JvdXBzIHRoYXQgY2FuIGhvbGQga2V5IHZhbHVlIHBhaXJzIGRlZmluZWQgaW4gR3JvdXAgTWV0YXNjaGVtYS4gVGhlIG1ldGFkYXRhIG9iamVjdCBjYW4gYmUgdXNlZCB0byBzdG9yZSBhcmJpdHJhcnkgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGdyb3VwIHN1Y2ggYXMgbGFiZWxzLCBkZXNjcmlwdGlvbnMgZXRjLiBUaGUgZGVmYXVsdCBHcm91cCBNZXRhc2NoZW1hIGNvbnRhaW5zIGxhYmVscyBhbmQgZGVzY3JpcHRvbiBmaWVsZHMuIFVwZGF0ZSB0aGUgR3JvdXAgTWV0YXNjaGVtYSB0byBhZGQgbW9yZSBmaWVsZHMuPGJyLz4qRXhhbXBsZToqYHsibGFiZWxzIjogeyJrZXkiOiAidmFsdWUifSwgImRlc2NyaXB0aW9uIjogIkdyb3VwIGRlc2NyaXB0aW9uIn1gSgQIBBAFIqYBChJDcmVhdGVHcm91cFJlcXVlc3QSQwoEYm9keRgBIAEoCzIrLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR3JvdXBSZXF1ZXN0Qm9keUII+kIFigECEAESSwoGb3JnX2lkGAIgASgJQjuSQTQyMlRoZSBvcmdhbml6YXRpb24gSUQgdG8gd2hpY2ggdGhlIGdyb3VwIGJlbG9uZ3MgdG8u4kEBAiJDCg9HZXRHcm91cFJlcXVlc3QSCgoCaWQYASABKAkSDgoGb3JnX2lkGAIgASgJEhQKDHdpdGhfbWVtYmVycxgDIAEoCCJGChNDcmVhdGVHcm91cFJlc3BvbnNlEi8KBWdyb3VwGAEgASgLMiAucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Hcm91cCJDChBHZXRHcm91cFJlc3BvbnNlEi8KBWdyb3VwGAEgASgLMiAucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Hcm91cCJGChNVcGRhdGVHcm91cFJlc3BvbnNlEi8KBWdyb3VwGAEgASgLMiAucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Hcm91cCKoAQoSVXBkYXRlR3JvdXBSZXF1ZXN0EgoKAmlkGAEgASgJEjkKBGJvZHkYAiABKAsyKy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkdyb3VwUmVxdWVzdEJvZHkSSwoGb3JnX2lkGAMgASgJQjuSQTQyMlRoZSBvcmdhbml6YXRpb24gSUQgdG8gd2hpY2ggdGhlIGdyb3VwIGJlbG9uZ3MgdG8u4kEBAiJHChVMaXN0R3JvdXBVc2Vyc1JlcXVlc3QSCgoCaWQYASABKAkSDgoGb3JnX2lkGAIgASgJEhIKCndpdGhfcm9sZXMYAyABKAgi5QEKFkxpc3RHcm91cFVzZXJzUmVzcG9uc2USLgoFdXNlcnMYASADKAsyHy5yYXlzdGFjay5mcm9udGllci52MWJldGExLlVzZXISTgoKcm9sZV9wYWlycxgCIAMoCzI6LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdEdyb3VwVXNlcnNSZXNwb25zZS5Sb2xlUGFpchpLCghSb2xlUGFpchIPCgd1c2VyX2lkGAEgASgJEi4KBXJvbGVzGAIgAygLMh8ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Sb2xlIjkKEkVuYWJsZUdyb3VwUmVxdWVzdBIKCgJpZBgBIAEoCRIXCgZvcmdfaWQYAiABKAlCB/pCBHICEAMiFQoTRW5hYmxlR3JvdXBSZXNwb25zZSI6ChNEaXNhYmxlR3JvdXBSZXF1ZXN0EgoKAmlkGAEgASgJEhcKBm9yZ19pZBgCIAEoCUIH+kIEcgIQAyIWChREaXNhYmxlR3JvdXBSZXNwb25zZSI5ChJEZWxldGVHcm91cFJlcXVlc3QSCgoCaWQYASABKAkSFwoGb3JnX2lkGAIgASgJQgf6QgRyAhADIhUKE0RlbGV0ZUdyb3VwUmVzcG9uc2UiTQoUQWRkR3JvdXBVc2Vyc1JlcXVlc3QSCgoCaWQYASABKAkSFwoGb3JnX2lkGAIgASgJQgf6QgRyAhADEhAKCHVzZXJfaWRzGAMgAygJIhcKFUFkZEdyb3VwVXNlcnNSZXNwb25zZSJOChZSZW1vdmVHcm91cFVzZXJSZXF1ZXN0EgoKAmlkGAEgASgJEhcKBm9yZ19pZBgCIAEoCUIH+kIEcgIQAxIPCgd1c2VyX2lkGAMgASgJIhkKF1JlbW92ZUdyb3VwVXNlclJlc3BvbnNlIlAKFURlbGV0ZVJlbGF0aW9uUmVxdWVzdBIOCgZvYmplY3QYASABKAkSDwoHc3ViamVjdBgCIAEoCRIQCghyZWxhdGlvbhgEIAEoCUoECAMQBCIYChZEZWxldGVSZWxhdGlvblJlc3BvbnNlIlMKG0xpc3RQcm9qZWN0UmVzb3VyY2VzUmVxdWVzdBIbCgpwcm9qZWN0X2lkGAIgASgJQgf6QgRyAhADEhEKCW5hbWVzcGFjZRgEIAEoCUoECAEQAiJWChxMaXN0UHJvamVjdFJlc291cmNlc1Jlc3BvbnNlEjYKCXJlc291cmNlcxgBIAMoCzIjLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUmVzb3VyY2UitgYKE1Jlc291cmNlUmVxdWVzdEJvZHkScwoEbmFtZRgBIAEoCUJlkkFeMlxUaGUgbmFtZSBvZiB0aGUgcmVzb3VyY2UuICBNdXN0IGJlIHVuaXF1ZSB3aXRoaW4gdGhlIHByb2plY3QuIDxici8+ICpFeGFtcGxlOiogYG15LXJlc291cmNlYOJBAQISjgEKBXRpdGxlGAIgASgJQn+SQXwyelRoZSB0aXRsZSBjYW4gY29udGFpbiBhbnkgVVRGLTggY2hhcmFjdGVyLCB1c2VkIHRvIHByb3ZpZGUgYSBodW1hbi1yZWFkYWJsZSBuYW1lIGZvciB0aGUgcmVzb3VyY2UuIENhbiBhbHNvIGJlIGxlZnQgZW1wdHkuEvIBCgluYW1lc3BhY2UYAyABKAlC3gGSQdYBMtMBVGhlIG5hbWVzcGFjZSBvZiB0aGUgcmVzb3VyY2UuIFRoZSByZXNvdXJjZSBuYW1lc3BhY2UgYXJlIGNyZWF0ZWQgd2hlbiBwZXJtaXNzaW9ucyBmb3IgdGhhdCByZXNvdXJjZSBpcyBjcmVhdGVkIGluIEZyb250aWVyLiBJZiBuYW1lc3BhY2UgZG9lc24ndCBleGlzdHMgdGhlIHJlcXVlc3Qgd2lsbCBmYWlsLiA8YnIvPiAqRXhhbXBsZToqIGBjb21wdXRlL2luc3RhbmNlYOJBAQIS7AEKCXByaW5jaXBhbBgGIAEoCULYAZJB1AEy0QFVc2VySUQgb3IgU2VydmljZVVzZXJJRCB0aGF0IHNob3VsZCBiZSBtYXJrZWQgYXMgb3duZXIgb2YgdGhlIHJlc291cmNlLiBJZiBub3QgcHJvdmlkZWQsIHRoZSBjdXJyZW50IGxvZ2dlZCBpbiB1c2VyIHdpbGwgYmUgbWFkZSB0aGUgcmVzb3VyY2Ugb3duZXIuIDxici8+ICpFeGFtcGxlOiogYHVzZXI6OTJmNjljM2EtMzM0Yi00ZjI1LTkwYjgtNGQ0ZjNiZTZiODI1YBIpCghtZXRhZGF0YRgHIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RKBAgEEAVKBAgFEAYipgEKHENyZWF0ZVByb2plY3RSZXNvdXJjZVJlcXVlc3QSRgoEYm9keRgBIAEoCzIuLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUmVzb3VyY2VSZXF1ZXN0Qm9keUII+kIFigECEAESEgoKcHJvamVjdF9pZBgCIAEoCRIqCgJpZBgDIAEoCUIekkEbMhlBdXRvZ2VuZXJhdGVkIGlmIHNraXBwZWQuIlYKHUNyZWF0ZVByb2plY3RSZXNvdXJjZVJlc3BvbnNlEjUKCHJlc291cmNlGAEgASgLMiMucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5SZXNvdXJjZSJKChlHZXRQcm9qZWN0UmVzb3VyY2VSZXF1ZXN0EgoKAmlkGAEgASgJEhsKCnByb2plY3RfaWQYAyABKAlCB/pCBHICEANKBAgCEAMiUwoaR2V0UHJvamVjdFJlc291cmNlUmVzcG9uc2USNQoIcmVzb3VyY2UYASABKAsyIy5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJlc291cmNlInwKHFVwZGF0ZVByb2plY3RSZXNvdXJjZVJlcXVlc3QSCgoCaWQYASABKAkSPAoEYm9keRgCIAEoCzIuLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUmVzb3VyY2VSZXF1ZXN0Qm9keRISCgpwcm9qZWN0X2lkGAMgASgJIlYKHVVwZGF0ZVByb2plY3RSZXNvdXJjZVJlc3BvbnNlEjUKCHJlc291cmNlGAEgASgLMiMucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5SZXNvdXJjZSJHChxEZWxldGVQcm9qZWN0UmVzb3VyY2VSZXF1ZXN0EgoKAmlkGAEgASgJEhsKCnByb2plY3RfaWQYAyABKAlCB/pCBHICEAMiHwodRGVsZXRlUHJvamVjdFJlc291cmNlUmVzcG9uc2UigwYKHkNoZWNrUmVzb3VyY2VQZXJtaXNzaW9uUmVxdWVzdBJDCglvYmplY3RfaWQYASABKAlCMBgBkkErMilEZXByZWNhdGVkLiBVc2UgYHJlc291cmNlYCBmaWVsZCBpbnN0ZWFkLhJKChBvYmplY3RfbmFtZXNwYWNlGAIgASgJQjAYAZJBKzIpRGVwcmVjYXRlZC4gVXNlIGByZXNvdXJjZWAgZmllbGQgaW5zdGVhZC4SjAEKCnBlcm1pc3Npb24YAyABKAlCeJJBWTJXdGhlIHBlcm1pc3Npb24gbmFtZSB0byBjaGVjay4gPGJyLz4gKkV4YW1wbGU6KiBgZ2V0YCwgYGxpc3RgLCBgY29tcHV0ZS5pbnN0YW5jZS5jcmVhdGVg4kEBAvpCFXITMhFeW0EtWmEtejAtOS5fLV0rJBLAAwoIcmVzb3VyY2UYBCABKAlCrQOSQakDMqYDYG5hbWVzcGFjZTp1dWlkYCBvciBgbmFtZXNwYWNlOm5hbWVgIG9mIHRoZSBvcmcgb3IgcHJvamVjdCwgYW5kIGBuYW1lc3BhY2U6dXJuYCBvZiBhIHJlc291cmNlIHVuZGVyIGEgcHJvamVjdC4gSW4gY2FzZSBvZiBhbiBvcmcvcHJvamVjdCBlaXRoZXIgcHJvdmlkZSB0aGUgY29tcGxldGUgbmFtZXNwYWNlIChhcHAvb3JnYW5pemF0aW9uKSBvciBGcm9udGllciBjYW4gYWxzbyBwYXJzZSBhbGlhc2VzIGZvciB0aGUgc2FtZSBhcyBgb3JnYCBvciBgcHJvamVjdGAuIDxici8+ICpFeGFtcGxlOiogYG9yZ2FuaXphdGlvbjo5MmY2OWMzYS0zMzRiLTRmMjUtOTBiOC00ZDRmM2JlNmI4MjVgIG9yIGBhcHAvcHJvamVjdDpwcm9qZWN0LW5hbWVgIG9yIGBjb21wdXRlL2luc3RhbmNlOjkyZjY5YzNhLTMzNGItNGYyNS05MGI4LTRkNGYzYmU2YjgyNWAiMQofQ2hlY2tSZXNvdXJjZVBlcm1pc3Npb25SZXNwb25zZRIOCgZzdGF0dXMYASABKAgibgobQmF0Y2hDaGVja1Blcm1pc3Npb25SZXF1ZXN0Ek8KBmJvZGllcxgBIAMoCzIzLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQmF0Y2hDaGVja1Blcm1pc3Npb25Cb2R5Qgr6QgeSAQQIARAUItIEChhCYXRjaENoZWNrUGVybWlzc2lvbkJvZHkScwoKcGVybWlzc2lvbhgBIAEoCUJfkkFAMj50aGUgcGVybWlzc2lvbiBuYW1lIHRvIGNoZWNrLiA8YnIvPiAqRXhhbXBsZToqIGBnZXRgIG9yIGBsaXN0YOJBAQL6QhVyEzIRXltBLVphLXowLTkuXy1dKyQSwAMKCHJlc291cmNlGAIgASgJQq0DkkGpAzKmA2BuYW1lc3BhY2U6dXVpZGAgb3IgYG5hbWVzcGFjZTpuYW1lYCBvZiB0aGUgb3JnIG9yIHByb2plY3QsIGFuZCBgbmFtZXNwYWNlOnVybmAgb2YgYSByZXNvdXJjZSB1bmRlciBhIHByb2plY3QuIEluIGNhc2Ugb2YgYW4gb3JnL3Byb2plY3QgZWl0aGVyIHByb3ZpZGUgdGhlIGNvbXBsZXRlIG5hbWVzcGFjZSAoYXBwL29yZ2FuaXphdGlvbikgb3IgRnJvbnRpZXIgY2FuIGFsc28gcGFyc2UgYWxpYXNlcyBmb3IgdGhlIHNhbWUgYXMgYG9yZ2Agb3IgYHByb2plY3RgLiA8YnIvPiAqRXhhbXBsZToqIGBvcmdhbml6YXRpb246OTJmNjljM2EtMzM0Yi00ZjI1LTkwYjgtNGQ0ZjNiZTZiODI1YCBvciBgYXBwL3Byb2plY3Q6cHJvamVjdC1uYW1lYCBvciBgY29tcHV0ZS9pbnN0YW5jZTo5MmY2OWMzYS0zMzRiLTRmMjUtOTBiOC00ZDRmM2JlNmI4MjVgImoKHEJhdGNoQ2hlY2tQZXJtaXNzaW9uUmVzcG9uc2USSgoFcGFpcnMYASADKAsyOy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkJhdGNoQ2hlY2tQZXJtaXNzaW9uUmVzcG9uc2VQYWlyInUKIEJhdGNoQ2hlY2tQZXJtaXNzaW9uUmVzcG9uc2VQYWlyEkEKBGJvZHkYASABKAsyMy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkJhdGNoQ2hlY2tQZXJtaXNzaW9uQm9keRIOCgZzdGF0dXMYAiABKAgioQMKFU1ldGFTY2hlbWFSZXF1ZXN0Qm9keRLUAQoEbmFtZRgBIAEoCULFAZJBpgEyowFUaGUgbmFtZSBvZiB0aGUgbWV0YXNjaGVtYS4gVGhlIG5hbWUgbXVzdCBiZSB1bmlxdWUgd2l0aGluIHRoZSBlbnRpcmUgRnJvbnRpZXIgaW5zdGFuY2UuIFRoZSBuYW1lIGNhbiBjb250YWluIG9ubHkgYWxwaGFudW1lcmljIGNoYXJhY3RlcnMsIGRhc2hlcyBhbmQgdW5kZXJzY29yZXMu4kEBAvpCFHISMhBeW0EtWmEtejAtOS1fXSskErABCgZzY2hlbWEYAiABKAlCnwGSQZABMo0BVGhlIHNjaGVtYSBvZiB0aGUgbWV0YXNjaGVtYS4gVGhlIHNjaGVtYSBtdXN0IGJlIGEgdmFsaWQgSlNPTiBzY2hlbWEuUGxlYXNlIHJlZmVyIHRvIGh0dHBzOi8vanNvbi1zY2hlbWEub3JnLyB0byBrbm93IG1vcmUgYWJvdXQganNvbiBzY2hlbWEu4kEBAvpCBHICEAIiYwoXQ3JlYXRlTWV0YVNjaGVtYVJlcXVlc3QSSAoEYm9keRgBIAEoCzIwLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTWV0YVNjaGVtYVJlcXVlc3RCb2R5Qgj6QgWKAQIQASJVChhDcmVhdGVNZXRhU2NoZW1hUmVzcG9uc2USOQoKbWV0YXNjaGVtYRgBIAEoCzIlLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTWV0YVNjaGVtYSIiChRHZXRNZXRhU2NoZW1hUmVxdWVzdBIKCgJpZBgBIAEoCSJSChVHZXRNZXRhU2NoZW1hUmVzcG9uc2USOQoKbWV0YXNjaGVtYRgBIAEoCzIlLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTWV0YVNjaGVtYSJvChdVcGRhdGVNZXRhU2NoZW1hUmVxdWVzdBIKCgJpZBgBIAEoCRJICgRib2R5GAIgASgLMjAucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5NZXRhU2NoZW1hUmVxdWVzdEJvZHlCCPpCBYoBAhABIlUKGFVwZGF0ZU1ldGFTY2hlbWFSZXNwb25zZRI5CgptZXRhc2NoZW1hGAEgASgLMiUucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5NZXRhU2NoZW1hIiUKF0RlbGV0ZU1ldGFTY2hlbWFSZXF1ZXN0EgoKAmlkGAEgASgJIhoKGERlbGV0ZU1ldGFTY2hlbWFSZXNwb25zZSIYChZMaXN0TWV0YVNjaGVtYXNSZXF1ZXN0IlUKF0xpc3RNZXRhU2NoZW1hc1Jlc3BvbnNlEjoKC21ldGFzY2hlbWFzGAEgAygLMiUucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5NZXRhU2NoZW1hItABCiBMaXN0T3JnYW5pemF0aW9uQXVkaXRMb2dzUmVxdWVzdBIXCgZvcmdfaWQYASABKAlCB/pCBHICEAMSDgoGc291cmNlGAUgASgJEg4KBmFjdGlvbhgGIAEoCRIVCg1pZ25vcmVfc3lzdGVtGAcgASgIEi4KCnN0YXJ0X3RpbWUYCiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEiwKCGVuZF90aW1lGAsgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCJWCiFMaXN0T3JnYW5pemF0aW9uQXVkaXRMb2dzUmVzcG9uc2USMQoEbG9ncxgBIAMoCzIjLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQXVkaXRMb2ciegoiQ3JlYXRlT3JnYW5pemF0aW9uQXVkaXRMb2dzUmVxdWVzdBIXCgZvcmdfaWQYASABKAlCB/pCBHICEAMSOwoEbG9ncxgCIAMoCzIjLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQXVkaXRMb2dCCPpCBZIBAggBIiUKI0NyZWF0ZU9yZ2FuaXphdGlvbkF1ZGl0TG9nc1Jlc3BvbnNlIk4KHkdldE9yZ2FuaXphdGlvbkF1ZGl0TG9nUmVxdWVzdBIXCgZvcmdfaWQYASABKAlCB/pCBHICEAMSEwoCaWQYAiABKAlCB/pCBHICEAMiUwofR2V0T3JnYW5pemF0aW9uQXVkaXRMb2dSZXNwb25zZRIwCgNsb2cYASABKAsyIy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkF1ZGl0TG9nIhwKGkRlc2NyaWJlUHJlZmVyZW5jZXNSZXF1ZXN0IlkKG0Rlc2NyaWJlUHJlZmVyZW5jZXNSZXNwb25zZRI6CgZ0cmFpdHMYASADKAsyKi5yYXlzdGFjay5mcm9udGllci52MWJldGExLlByZWZlcmVuY2VUcmFpdCKHAQokQ3JlYXRlT3JnYW5pemF0aW9uUHJlZmVyZW5jZXNSZXF1ZXN0EhMKAmlkGAEgASgJQgf6QgRyAhADEkoKBmJvZGllcxgCIAMoCzIwLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUHJlZmVyZW5jZVJlcXVlc3RCb2R5Qgj6QgWSAQIIASJjCiVDcmVhdGVPcmdhbml6YXRpb25QcmVmZXJlbmNlc1Jlc3BvbnNlEjoKC3ByZWZlcmVuY2VzGAEgAygLMiUucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5QcmVmZXJlbmNlIjkKIkxpc3RPcmdhbml6YXRpb25QcmVmZXJlbmNlc1JlcXVlc3QSEwoCaWQYASABKAlCB/pCBHICEAMiYQojTGlzdE9yZ2FuaXphdGlvblByZWZlcmVuY2VzUmVzcG9uc2USOgoLcHJlZmVyZW5jZXMYASADKAsyJS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlByZWZlcmVuY2UiggEKH0NyZWF0ZVByb2plY3RQcmVmZXJlbmNlc1JlcXVlc3QSEwoCaWQYASABKAlCB/pCBHICEAMSSgoGYm9kaWVzGAIgAygLMjAucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5QcmVmZXJlbmNlUmVxdWVzdEJvZHlCCPpCBZIBAggBIl4KIENyZWF0ZVByb2plY3RQcmVmZXJlbmNlc1Jlc3BvbnNlEjoKC3ByZWZlcmVuY2VzGAEgAygLMiUucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5QcmVmZXJlbmNlIjQKHUxpc3RQcm9qZWN0UHJlZmVyZW5jZXNSZXF1ZXN0EhMKAmlkGAEgASgJQgf6QgRyAhADIlwKHkxpc3RQcm9qZWN0UHJlZmVyZW5jZXNSZXNwb25zZRI6CgtwcmVmZXJlbmNlcxgBIAMoCzIlLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUHJlZmVyZW5jZSKAAQodQ3JlYXRlR3JvdXBQcmVmZXJlbmNlc1JlcXVlc3QSEwoCaWQYASABKAlCB/pCBHICEAMSSgoGYm9kaWVzGAIgAygLMjAucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5QcmVmZXJlbmNlUmVxdWVzdEJvZHlCCPpCBZIBAggBIlwKHkNyZWF0ZUdyb3VwUHJlZmVyZW5jZXNSZXNwb25zZRI6CgtwcmVmZXJlbmNlcxgBIAMoCzIlLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUHJlZmVyZW5jZSIyChtMaXN0R3JvdXBQcmVmZXJlbmNlc1JlcXVlc3QSEwoCaWQYASABKAlCB/pCBHICEAMiWgocTGlzdEdyb3VwUHJlZmVyZW5jZXNSZXNwb25zZRI6CgtwcmVmZXJlbmNlcxgBIAMoCzIlLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUHJlZmVyZW5jZSJ/ChxDcmVhdGVVc2VyUHJlZmVyZW5jZXNSZXF1ZXN0EhMKAmlkGAEgASgJQgf6QgRyAhADEkoKBmJvZGllcxgCIAMoCzIwLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUHJlZmVyZW5jZVJlcXVlc3RCb2R5Qgj6QgWSAQIIASJbCh1DcmVhdGVVc2VyUHJlZmVyZW5jZXNSZXNwb25zZRI6CgtwcmVmZXJlbmNlcxgBIAMoCzIlLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUHJlZmVyZW5jZSIxChpMaXN0VXNlclByZWZlcmVuY2VzUmVxdWVzdBITCgJpZBgBIAEoCUIH+kIEcgIQAyJZChtMaXN0VXNlclByZWZlcmVuY2VzUmVzcG9uc2USOgoLcHJlZmVyZW5jZXMYASADKAsyJS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlByZWZlcmVuY2UicQojQ3JlYXRlQ3VycmVudFVzZXJQcmVmZXJlbmNlc1JlcXVlc3QSSgoGYm9kaWVzGAIgAygLMjAucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5QcmVmZXJlbmNlUmVxdWVzdEJvZHlCCPpCBZIBAggBImIKJENyZWF0ZUN1cnJlbnRVc2VyUHJlZmVyZW5jZXNSZXNwb25zZRI6CgtwcmVmZXJlbmNlcxgBIAMoCzIlLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUHJlZmVyZW5jZSIjCiFMaXN0Q3VycmVudFVzZXJQcmVmZXJlbmNlc1JlcXVlc3QiYAoiTGlzdEN1cnJlbnRVc2VyUHJlZmVyZW5jZXNSZXNwb25zZRI6CgtwcmVmZXJlbmNlcxgBIAMoCzIlLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUHJlZmVyZW5jZSJICh1CaWxsaW5nV2ViaG9va0NhbGxiYWNrUmVxdWVzdBIZCghwcm92aWRlchgBIAEoCUIH+kIEcgIQARIMCgRib2R5GAIgASgMIiAKHkJpbGxpbmdXZWJob29rQ2FsbGJhY2tSZXNwb25zZSKEBAobQ3JlYXRlUHJvc3BlY3RQdWJsaWNSZXF1ZXN0Ej4KBG5hbWUYASABKAlCMJJBFzIVZnVsbCBuYW1lIG9mIHRoZSB1c2Vy+kITchEyDF5bQS1aYS16IF0rJNABARIyCgVlbWFpbBgFIAEoCUIjkkETMhFlbWFpbCBvZiB0aGUgdXNlcuJBAQL6QgZyBBABYAESLAoFcGhvbmUYBiABKAlCHZJBGjIYcGhvbmUgbnVtYmVyIG9mIHRoZSB1c2VyEoABCghhY3Rpdml0eRgHIAEoCUJukkFOMkxhY3Rpdml0eSBmb3Igd2hpY2ggdXNlciBpcyBzdWJzY3JpYmluZywgZS5nLiBuZXdzbGV0dGVyLCB3YWl0bGlzdCwgYmxvZ3MgZXRj4kEBAvpCFnIUEAEyEF5bQS1aYS16MC05LV9dKyQSbQoGc291cmNlGAkgASgJQl2SQUAyPnNvdXJjZSBvZiB0aGlzIHVzZXIgYWRkaXRpb24gZS5nLiBwbGF0Zm9ybSwgd2Vic2l0ZSwgYWRtaW4gZXRj+kIXchUyEF5bQS1aYS16MC05LV9dKyTQAQESUQoIbWV0YWRhdGEYCyABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0QiaSQSMyIWFkZGl0aW9uYWwgaW5mbyBhcyBrZXkgdmFsdWUgcGFpciIeChxDcmVhdGVQcm9zcGVjdFB1YmxpY1Jlc3BvbnNlMquUAwoPRnJvbnRpZXJTZXJ2aWNlEugCCglMaXN0VXNlcnMSKy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RVc2Vyc1JlcXVlc3QaLC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RVc2Vyc1Jlc3BvbnNlIv8BkkHlAQoEVXNlchIRTGlzdCBwdWJsaWMgdXNlcnMayQFSZXR1cm5zIHRoZSB1c2VycyBmcm9tIGFsbCB0aGUgb3JnYW5pemF0aW9ucyBpbiBhIEZyb250aWVyIGluc3RhbmNlLiBJdCBjYW4gYmUgZmlsdGVyZWQgYnkga2V5d29yZCwgb3JnYW5pemF0aW9uLCBncm91cCBhbmQgc3RhdGUuIEFkZGl0aW9uYWxseSB5b3UgY2FuIGluY2x1ZGUgcGFnZSBudW1iZXIgYW5kIHBhZ2Ugc2l6ZSBmb3IgcGFnaW5hdGlvbi6C0+STAhASDi92MWJldGExL3VzZXJzErsGCgpDcmVhdGVVc2VyEiwucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVVc2VyUmVxdWVzdBotLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ3JlYXRlVXNlclJlc3BvbnNlIs8FkkGvBQoEVXNlchILQ3JlYXRlIHVzZXIalwVDcmVhdGUgYSB1c2VyIHdpdGggdGhlIGdpdmVuIGRldGFpbHMuIEEgdXNlciBpcyBub3QgYXR0YWNoZWQgdG8gYW4gb3JnYW5pemF0aW9uIG9yIGEgZ3JvdXAgYnkgZGVmYXVsdCxhbmQgY2FuIGJlIGludml0ZWQgdG8gdGhlIG9yZy9ncm91cC4gVGhlIG5hbWUgb2YgdGhlIHVzZXIgbXVzdCBiZSB1bmlxdWUgd2l0aGluIHRoZSBlbnRpcmUgRnJvbnRpZXIgaW5zdGFuY2UuIElmIGEgdXNlciBuYW1lIGlzIG5vdCBwcm92aWRlZCwgRnJvbnRpZXIgYXV0b21hdGljYWxseSBnZW5lcmF0ZXMgYSBuYW1lIGZyb20gdGhlIHVzZXIgZW1haWwuIFRoZSB1c2VyIG1ldGFkYXRhIGlzIHZhbGlkYXRlZCBhZ2FpbnN0IHRoZSB1c2VyIG1ldGFzY2hlbWEuIEJ5IGRlZmF1bHQgdGhlIHVzZXIgbWV0YXNjaGVtYSBjb250YWlucyBgbGFiZWxzYCBhbmQgYGRlc2NyaXB0aW9uc2AgZm9yIHRoZSB1c2VyLiBUaGUgYHRpdGxlYCBmaWVsZCBjYW4gYmUgb3B0aW9uYWxseSBhZGRlZCBmb3IgYSB1c2VyLWZyaWVuZGx5IG5hbWUuIDxici8+PGJyLz4qRXhhbXBsZToqYHsiZW1haWwiOiJqb2huLmRvZUByYXlzdGFjay5vcmciLCJ0aXRsZSI6IkpvaG4gRG9lIixtZXRhZGF0YTp7ImxhYmVsIjogeyJrZXkxIjogInZhbHVlMSJ9LCAiZGVzY3JpcHRpb24iOiAiVXNlciBEZXNjcmlwdGlvbiJ9fWBiAILT5JMCFiIOL3YxYmV0YTEvdXNlcnM6BGJvZHkSzwEKB0dldFVzZXISKS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkdldFVzZXJSZXF1ZXN0GioucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5HZXRVc2VyUmVzcG9uc2UibZJBTwoEVXNlchIIR2V0IHVzZXIaPUdldCBhIHVzZXIgYnkgaWQgc2VhcmNoZWQgb3ZlciBhbGwgb3JnYW5pemF0aW9ucyBpbiBGcm9udGllci6C0+STAhUSEy92MWJldGExL3VzZXJzL3tpZH0S6gIKDkxpc3RVc2VyR3JvdXBzEjAucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0VXNlckdyb3Vwc1JlcXVlc3QaMS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RVc2VyR3JvdXBzUmVzcG9uc2Ui8gGSQcwBCgRVc2VyEhBMaXN0IHVzZXIgZ3JvdXBzGrEBTGlzdHMgYWxsIHRoZSBncm91cHMgYSB1c2VyIGJlbG9uZ3MgdG8gYWNyb3NzIGFsbCBvcmdhbml6YXRpb24gaW4gRnJvbnRpZXIuIFRvIGdldCB0aGUgZ3JvdXBzIG9mIGEgdXNlciBpbiBhIHNwZWNpZmljIG9yZ2FuaXphdGlvbiwgdXNlIHRoZSBvcmdfaWQgZmlsdGVyIGluIHRoZSBxdWVyeSBwYXJhbWV0ZXIugtPkkwIcEhovdjFiZXRhMS91c2Vycy97aWR9L2dyb3VwcxLHAQoVTGlzdEN1cnJlbnRVc2VyR3JvdXBzEjcucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0Q3VycmVudFVzZXJHcm91cHNSZXF1ZXN0GjgucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0Q3VycmVudFVzZXJHcm91cHNSZXNwb25zZSI7kkEWCgRVc2VyEg5MaXN0IG15IGdyb3Vwc4LT5JMCHBIaL3YxYmV0YTEvdXNlcnMvc2VsZi9ncm91cHMSrQEKDkdldEN1cnJlbnRVc2VyEjAucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5HZXRDdXJyZW50VXNlclJlcXVlc3QaMS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkdldEN1cnJlbnRVc2VyUmVzcG9uc2UiNpJBGAoEVXNlchIQR2V0IGN1cnJlbnQgdXNlcoLT5JMCFRITL3YxYmV0YTEvdXNlcnMvc2VsZhKiAQoKVXBkYXRlVXNlchIsLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuVXBkYXRlVXNlclJlcXVlc3QaLS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlVwZGF0ZVVzZXJSZXNwb25zZSI3kkETCgRVc2VyEgtVcGRhdGUgdXNlcoLT5JMCGxoTL3YxYmV0YTEvdXNlcnMve2lkfToEYm9keRK/AQoRVXBkYXRlQ3VycmVudFVzZXISMy5yYXlzdGFjay5mcm9udGllci52MWJldGExLlVwZGF0ZUN1cnJlbnRVc2VyUmVxdWVzdBo0LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuVXBkYXRlQ3VycmVudFVzZXJSZXNwb25zZSI/kkEbCgRVc2VyEhNVcGRhdGUgY3VycmVudCB1c2VygtPkkwIbGhMvdjFiZXRhMS91c2Vycy9zZWxmOgRib2R5EpECCgpFbmFibGVVc2VyEiwucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5FbmFibGVVc2VyUmVxdWVzdBotLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRW5hYmxlVXNlclJlc3BvbnNlIqUBkkF9CgRVc2VyEgtFbmFibGUgdXNlchpoU2V0cyB0aGUgc3RhdGUgb2YgdGhlIHVzZXIgYXMgZW5hYmxlZC4gVGhlIHVzZXIgd2lsbCBiZSBhYmxlIHRvIGxvZyBpbiBhbmQgYWNjZXNzIHRoZSBGcm9udGllciBpbnN0YW5jZS6C0+STAh8iGi92MWJldGExL3VzZXJzL3tpZH0vZW5hYmxlOgEqEpADCgtEaXNhYmxlVXNlchItLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRGlzYWJsZVVzZXJSZXF1ZXN0Gi4ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5EaXNhYmxlVXNlclJlc3BvbnNlIqECkkH3AQoEVXNlchIMRGlzYWJsZSB1c2VyGuABU2V0cyB0aGUgc3RhdGUgb2YgdGhlIHVzZXIgYXMgZGlhYmxlZC5UaGUgdXNlcidzIG1lbWJlcnNoaXAgdG8gZ3JvdXBzIGFuZCBvcmdhbml6YXRpb25zIHdpbGwgc3RpbGwgZXhpc3QgYWxvbmcgd2l0aCBhbGwgaXQncyByb2xlcyBmb3IgYWNjZXNzIGNvbnRyb2wsIGJ1dCB0aGUgdXNlciB3aWxsIG5vdCBiZSBhYmxlIHRvIGxvZyBpbiBhbmQgYWNjZXNzIHRoZSBGcm9udGllciBpbnN0YW5jZS6C0+STAiAiGy92MWJldGExL3VzZXJzL3tpZH0vZGlzYWJsZToBKhL3AQoKRGVsZXRlVXNlchIsLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRGVsZXRlVXNlclJlcXVlc3QaLS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkRlbGV0ZVVzZXJSZXNwb25zZSKLAZJBbQoEVXNlchILRGVsZXRlIHVzZXIaWERlbGV0ZSBhbiB1c2VyIHBlcm1hbmVudGx5IGZvcmV2ZXIgYW5kIGFsbCBvZiBpdHMgcmVsYXRpb25zIChvcmdhbml6YXRpb25zLCBncm91cHMsIGV0YymC0+STAhUqEy92MWJldGExL3VzZXJzL3tpZH0S/wQKF0xpc3RPcmdhbml6YXRpb25zQnlVc2VyEjkucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0T3JnYW5pemF0aW9uc0J5VXNlclJlcXVlc3QaOi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RPcmdhbml6YXRpb25zQnlVc2VyUmVzcG9uc2Ui7AOSQb8DCgRVc2VyEhZHZXQgdXNlciBvcmdhbml6YXRpb25zGp4DVGhpcyBBUEkgcmV0dXJucyB0d28gbGlzdCBvZiBvcmdhbml6YXRpb25zIGZvciB0aGUgdXNlci4gaSkgVGhlIGxpc3Qgb2Ygb3JncyB3aGljaCB0aGUgY3VycmVudCB1c2VyIGlzIGFscmVhZHkgYSBwYXJ0IG9mIGlpKSBUaGUgbGlzdCBvZiBvcmdhbml6YXRpb25zIHRoZSB1c2VyIGNhbiBqb2luIGRpcmVjdGx5IChiYXNlZCBvbiBkb21haW4gd2hpdGVsaXN0ZWQgYW5kIHZlcmlmaWVkIGJ5IHRoZSBvcmcpLiBUaGlzIGxpc3Qgd2lsbCBhbHNvIGNvbnRhaW4gb3JncyBvZiB3aGljaCB1c2VyIGlzIGFscmVhZHkgYSBwYXJ0IG9mLiBOb3RlOiB0aGUgZG9tYWluIG5lZWRzIHRvIGJlIHZlcmlmaWVkIGJ5IHRoZSBvcmcgYmVmb3JlIHRoZSBpdCBpcyByZXR1cm5lZCBhcyBvbmUgb2YgdGhlIGpvaW5hYmxlIG9yZ3MgYnkgZG9tYWlugtPkkwIjEiEvdjFiZXRhMS91c2Vycy97aWR9L29yZ2FuaXphdGlvbnMSpAUKHkxpc3RPcmdhbml6YXRpb25zQnlDdXJyZW50VXNlchJALnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdE9yZ2FuaXphdGlvbnNCeUN1cnJlbnRVc2VyUmVxdWVzdBpBLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdE9yZ2FuaXphdGlvbnNCeUN1cnJlbnRVc2VyUmVzcG9uc2Ui/AOSQc8DCgRVc2VyEhRHZXQgbXkgb3JnYW5pemF0aW9ucxqwA1RoaXMgQVBJIHJldHVybnMgdHdvIGxpc3Qgb2Ygb3JnYW5pemF0aW9ucyBmb3IgdGhlIGN1cnJlbnQgbG9nZ2VkIGluIHVzZXIuIGkpIFRoZSBsaXN0IG9mIG9yZ3Mgd2hpY2ggdGhlIGN1cnJlbnQgdXNlciBpcyBhbHJlYWR5IGEgcGFydCBvZiBpaSkgVGhlIGxpc3Qgb2Ygb3JnYW5pemF0aW9ucyB0aGUgdXNlciBjYW4gam9pbiBkaXJlY3RseSAoYmFzZWQgb24gZG9tYWluIHdoaXRlbGlzdGVkIGFuZCB2ZXJpZmllZCBieSB0aGUgb3JnKS4gVGhpcyBsaXN0IHdpbGwgYWxzbyBjb250YWluIG9yZ3Mgb2Ygd2hpY2ggdXNlciBpcyBhbHJlYWR5IGEgcGFydCBvZi4gTm90ZTogdGhlIGRvbWFpbiBuZWVkcyB0byBiZSB2ZXJpZmllZCBieSB0aGUgb3JnIGJlZm9yZSB0aGUgaXQgaXMgcmV0dXJuZWQgYXMgb25lIG9mIHRoZSBqb2luYWJsZSBvcmdzIGJ5IGRvbWFpboLT5JMCIxIhL3YxYmV0YTEvdXNlcnMvc2VsZi9vcmdhbml6YXRpb25zEuwBChJMaXN0UHJvamVjdHNCeVVzZXISNC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RQcm9qZWN0c0J5VXNlclJlcXVlc3QaNS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RQcm9qZWN0c0J5VXNlclJlc3BvbnNlImmSQUIKBFVzZXISEUdldCB1c2VyIHByb2plY3RzGidHZXQgYWxsIHRoZSBwcm9qZWN0cyBhIHVzZXIgYmVsb25ncyB0by6C0+STAh4SHC92MWJldGExL3VzZXJzL3tpZH0vcHJvamVjdHMShAIKGUxpc3RQcm9qZWN0c0J5Q3VycmVudFVzZXISOy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RQcm9qZWN0c0J5Q3VycmVudFVzZXJSZXF1ZXN0GjwucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0UHJvamVjdHNCeUN1cnJlbnRVc2VyUmVzcG9uc2UibJJBRQoEVXNlchIPR2V0IG15IHByb2plY3RzGixHZXQgYWxsIHByb2plY3RzIHRoZSBjdXJyZW50IHVzZXIgYmVsb25ncyB0b4LT5JMCHhIcL3YxYmV0YTEvdXNlcnMvc2VsZi9wcm9qZWN0cxL3AQoTTGlzdFVzZXJJbnZpdGF0aW9ucxI1LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdFVzZXJJbnZpdGF0aW9uc1JlcXVlc3QaNi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RVc2VySW52aXRhdGlvbnNSZXNwb25zZSJxkkFHCgRVc2VyEhVMaXN0IHVzZXIgaW52aXRhdGlvbnMaKExpc3QgYWxsIHRoZSBpbnZpdGF0aW9ucyBzZW50IHRvIGEgdXNlci6C0+STAiESHy92MWJldGExL3VzZXJzL3tpZH0vaW52aXRhdGlvbnMSkgIKGkxpc3RDdXJyZW50VXNlckludml0YXRpb25zEjwucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0Q3VycmVudFVzZXJJbnZpdGF0aW9uc1JlcXVlc3QaPS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RDdXJyZW50VXNlckludml0YXRpb25zUmVzcG9uc2Uid5JBTQoEVXNlchIVTGlzdCB1c2VyIGludml0YXRpb25zGi5MaXN0IGFsbCB0aGUgaW52aXRhdGlvbnMgc2VudCB0byBjdXJyZW50IHVzZXIugtPkkwIhEh8vdjFiZXRhMS91c2Vycy9zZWxmL2ludml0YXRpb25zEqgCChBMaXN0U2VydmljZVVzZXJzEjIucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0U2VydmljZVVzZXJzUmVxdWVzdBozLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdFNlcnZpY2VVc2Vyc1Jlc3BvbnNlIqoBkkGJAQoLU2VydmljZVVzZXISFkxpc3Qgb3JnIHNlcnZpY2UgdXNlcnMaYlJldHVybnMgdGhlIHNlcnZpY2UgdXNlciBvZiBhbiBvcmdhbml6YXRpb24gaW4gYSBGcm9udGllciBpbnN0YW5jZS4gSXQgY2FuIGJlIGZpbHRlciBieSBpdCdzIHN0YXRlgtPkkwIXEhUvdjFiZXRhMS9zZXJ2aWNldXNlcnMS9AEKEUNyZWF0ZVNlcnZpY2VVc2VyEjMucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVTZXJ2aWNlVXNlclJlcXVlc3QaNC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNyZWF0ZVNlcnZpY2VVc2VyUmVzcG9uc2UidJJBOgoLU2VydmljZVVzZXISE0NyZWF0ZSBzZXJ2aWNlIHVzZXIaFkNyZWF0ZSBhIHNlcnZpY2UgdXNlci6C0+STAjEiLC92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vc2VydmljZXVzZXJzOgEqEvgBCg5HZXRTZXJ2aWNlVXNlchIwLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR2V0U2VydmljZVVzZXJSZXF1ZXN0GjEucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5HZXRTZXJ2aWNlVXNlclJlc3BvbnNlIoABkkFECgtTZXJ2aWNlVXNlchIQR2V0IHNlcnZpY2UgdXNlchojR2V0IHNlcnZpY2UgdXNlciBkZXRhaWxzIGJ5IGl0cyBpZC6C0+STAjMSMS92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vc2VydmljZXVzZXJzL3tpZH0SvgIKEURlbGV0ZVNlcnZpY2VVc2VyEjMucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5EZWxldGVTZXJ2aWNlVXNlclJlcXVlc3QaNC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkRlbGV0ZVNlcnZpY2VVc2VyUmVzcG9uc2UivQGSQYABCgtTZXJ2aWNlVXNlchITRGVsZXRlIHNlcnZpY2UgdXNlchpcRGVsZXRlIGEgc2VydmljZSB1c2VyIHBlcm1hbmVudGx5IGFuZCBhbGwgb2YgaXRzIHJlbGF0aW9ucyAoa2V5cywgb3JnYW5pemF0aW9ucywgcm9sZXMsIGV0YymC0+STAjMqMS92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vc2VydmljZXVzZXJzL3tpZH0SmAMKFENyZWF0ZVNlcnZpY2VVc2VySldLEjYucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVTZXJ2aWNlVXNlckpXS1JlcXVlc3QaNy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNyZWF0ZVNlcnZpY2VVc2VySldLUmVzcG9uc2UijgKSQckBCgtTZXJ2aWNlVXNlchIrQ3JlYXRlIHNlcnZpY2UgdXNlciBwdWJsaWMvcHJpdmF0ZSBrZXkgcGFpchqMAUdlbmVyYXRlIGEgc2VydmljZSB1c2VyIGtleSBhbmQgcmV0dXJuIGl0LCB0aGUgcHJpdmF0ZSBrZXkgcGFydCBvZiB0aGUgcmVzcG9uc2Ugd2lsbCBub3QgYmUgcGVyc2lzdGVkIGFuZCBzaG91bGQgYmUga2VwdCBzZWN1cmVseSBieSBjbGllbnQugtPkkwI7IjYvdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L3NlcnZpY2V1c2Vycy97aWR9L2tleXM6ASoSrwIKE0xpc3RTZXJ2aWNlVXNlckpXS3MSNS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RTZXJ2aWNlVXNlckpXS3NSZXF1ZXN0GjYucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0U2VydmljZVVzZXJKV0tzUmVzcG9uc2UiqAGSQWcKC1NlcnZpY2VVc2VyEhZMaXN0IHNlcnZpY2UgdXNlciBrZXlzGkBMaXN0IGFsbCB0aGUga2V5cyBvZiBhIHNlcnZpY2UgdXNlciB3aXRoIGl0cyBkZXRhaWxzIGV4Y2VwdCBqd2sugtPkkwI4EjYvdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L3NlcnZpY2V1c2Vycy97aWR9L2tleXMSlgIKEUdldFNlcnZpY2VVc2VySldLEjMucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5HZXRTZXJ2aWNlVXNlckpXS1JlcXVlc3QaNC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkdldFNlcnZpY2VVc2VySldLUmVzcG9uc2UilQGSQUsKC1NlcnZpY2VVc2VyEhRHZXQgc2VydmljZSB1c2VyIGtleRomR2V0IGEgc2VydmljZSB1c2VyIHB1YmxpYyBSU0EgSldLIHNldC6C0+STAkESPy92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vc2VydmljZXVzZXJzL3tpZH0va2V5cy97a2V5X2lkfRKiAgoURGVsZXRlU2VydmljZVVzZXJKV0sSNi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkRlbGV0ZVNlcnZpY2VVc2VySldLUmVxdWVzdBo3LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRGVsZXRlU2VydmljZVVzZXJKV0tSZXNwb25zZSKYAZJBTgoLU2VydmljZVVzZXISF0RlbGV0ZSBzZXJ2aWNlIHVzZXIga2V5GiZEZWxldGUgYSBzZXJ2aWNlIHVzZXIga2V5IHBlcm1hbmVudGx5LoLT5JMCQSo/L3YxYmV0YTEvb3JnYW5pemF0aW9ucy97b3JnX2lkfS9zZXJ2aWNldXNlcnMve2lkfS9rZXlzL3trZXlfaWR9EqQDChtDcmVhdGVTZXJ2aWNlVXNlckNyZWRlbnRpYWwSPS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNyZWF0ZVNlcnZpY2VVc2VyQ3JlZGVudGlhbFJlcXVlc3QaPi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNyZWF0ZVNlcnZpY2VVc2VyQ3JlZGVudGlhbFJlc3BvbnNlIoUCkkG9AQoLU2VydmljZVVzZXISJkNyZWF0ZSBzZXJ2aWNlIHVzZXIgY2xpZW50IGNyZWRlbnRpYWxzGoUBR2VuZXJhdGUgYSBzZXJ2aWNlIHVzZXIgY3JlZGVudGlhbCBhbmQgcmV0dXJuIGl0LiBUaGUgY3JlZGVudGlhbCB2YWx1ZSB3aWxsIG5vdCBiZSBwZXJzaXN0ZWQgYW5kIHNob3VsZCBiZSBzZWN1cmVseSBzdG9yZWQgYnkgY2xpZW50LoLT5JMCPiI5L3YxYmV0YTEvb3JnYW5pemF0aW9ucy97b3JnX2lkfS9zZXJ2aWNldXNlcnMve2lkfS9zZWNyZXRzOgEqErkCChpMaXN0U2VydmljZVVzZXJDcmVkZW50aWFscxI8LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdFNlcnZpY2VVc2VyQ3JlZGVudGlhbHNSZXF1ZXN0Gj0ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0U2VydmljZVVzZXJDcmVkZW50aWFsc1Jlc3BvbnNlIp0BkkFZCgtTZXJ2aWNlVXNlchIdTGlzdCBzZXJ2aWNlIHVzZXIgY3JlZGVudGlhbHMaK0xpc3QgYWxsIHRoZSBjcmVkZW50aWFscyBvZiBhIHNlcnZpY2UgdXNlci6C0+STAjsSOS92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vc2VydmljZXVzZXJzL3tpZH0vc2VjcmV0cxLAAgobRGVsZXRlU2VydmljZVVzZXJDcmVkZW50aWFsEj0ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5EZWxldGVTZXJ2aWNlVXNlckNyZWRlbnRpYWxSZXF1ZXN0Gj4ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5EZWxldGVTZXJ2aWNlVXNlckNyZWRlbnRpYWxSZXNwb25zZSKhAZJBUQoLU2VydmljZVVzZXISH0RlbGV0ZSBzZXJ2aWNlIHVzZXIgY3JlZGVudGlhbHMaIURlbGV0ZSBhIHNlcnZpY2UgdXNlciBjcmVkZW50aWFsLoLT5JMCRypFL3YxYmV0YTEvb3JnYW5pemF0aW9ucy97b3JnX2lkfS9zZXJ2aWNldXNlcnMve2lkfS9zZWNyZXRzL3tzZWNyZXRfaWR9EvwCChZDcmVhdGVTZXJ2aWNlVXNlclRva2VuEjgucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVTZXJ2aWNlVXNlclRva2VuUmVxdWVzdBo5LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ3JlYXRlU2VydmljZVVzZXJUb2tlblJlc3BvbnNlIuwBkkGlAQoLU2VydmljZVVzZXISGUNyZWF0ZSBzZXJ2aWNlIHVzZXIgdG9rZW4ae0dlbmVyYXRlIGEgc2VydmljZSB1c2VyIHRva2VuIGFuZCByZXR1cm4gaXQuIFRoZSB0b2tlbiB2YWx1ZSB3aWxsIG5vdCBiZSBwZXJzaXN0ZWQgYW5kIHNob3VsZCBiZSBzZWN1cmVseSBzdG9yZWQgYnkgY2xpZW50LoLT5JMCPSI4L3YxYmV0YTEvb3JnYW5pemF0aW9ucy97b3JnX2lkfS9zZXJ2aWNldXNlcnMve2lkfS90b2tlbnM6ASoSnwIKFUxpc3RTZXJ2aWNlVXNlclRva2VucxI3LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdFNlcnZpY2VVc2VyVG9rZW5zUmVxdWVzdBo4LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdFNlcnZpY2VVc2VyVG9rZW5zUmVzcG9uc2UikgGSQU8KC1NlcnZpY2VVc2VyEhhMaXN0IHNlcnZpY2UgdXNlciB0b2tlbnMaJkxpc3QgYWxsIHRoZSB0b2tlbnMgb2YgYSBzZXJ2aWNlIHVzZXIugtPkkwI6EjgvdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L3NlcnZpY2V1c2Vycy97aWR9L3Rva2VucxKkAgoWRGVsZXRlU2VydmljZVVzZXJUb2tlbhI4LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRGVsZXRlU2VydmljZVVzZXJUb2tlblJlcXVlc3QaOS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkRlbGV0ZVNlcnZpY2VVc2VyVG9rZW5SZXNwb25zZSKUAZJBRgoLU2VydmljZVVzZXISGURlbGV0ZSBzZXJ2aWNlIHVzZXIgdG9rZW4aHERlbGV0ZSBhIHNlcnZpY2UgdXNlciB0b2tlbi6C0+STAkUqQy92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vc2VydmljZXVzZXJzL3tpZH0vdG9rZW5zL3t0b2tlbl9pZH0SsAIKF0xpc3RTZXJ2aWNlVXNlclByb2plY3RzEjkucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0U2VydmljZVVzZXJQcm9qZWN0c1JlcXVlc3QaOi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RTZXJ2aWNlVXNlclByb2plY3RzUmVzcG9uc2UinQGSQVgKC1NlcnZpY2VVc2VyEhpMaXN0IHNlcnZpY2Ugc3NlciBwcm9qZWN0cxotTGlzdCBhbGwgcHJvamVjdHMgdGhlIHNlcnZpY2UgdXNlciBiZWxvbmdzIHRvgtPkkwI8EjovdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L3NlcnZpY2V1c2Vycy97aWR9L3Byb2plY3RzEuQCChZMaXN0T3JnYW5pemF0aW9uR3JvdXBzEjgucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0T3JnYW5pemF0aW9uR3JvdXBzUmVxdWVzdBo5LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdE9yZ2FuaXphdGlvbkdyb3Vwc1Jlc3BvbnNlItQBkkGiAQoFR3JvdXASGExpc3Qgb3JnYW5pemF0aW9uIGdyb3Vwcxp/R2V0IGFsbCBncm91cHMgdGhhdCBiZWxvbmcgdG8gYW4gb3JnYW5pemF0aW9uLiBUaGUgcmVzdWx0cyBjYW4gYmUgZmlsdGVyZWQgYnkgc3RhdGUgd2hpY2ggY2FuIGJlIGVpdGhlciBiZSBlbmFibGVkIG9yIGRpc2FibGVkLoLT5JMCKBImL3YxYmV0YTEvb3JnYW5pemF0aW9ucy97b3JnX2lkfS9ncm91cHMSnQMKC0NyZWF0ZUdyb3VwEi0ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVHcm91cFJlcXVlc3QaLi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNyZWF0ZUdyb3VwUmVzcG9uc2UirgKSQfYBCgVHcm91cBIMQ3JlYXRlIGdyb3VwGt4BQ3JlYXRlIGEgbmV3IGdyb3VwIGluIGFuIG9yZ2FuaXphdGlvbiB3aGljaCBzZXJ2ZXMgYXMgYSBjb250YWluZXIgZm9yIHVzZXJzLiBUaGUgZ3JvdXAgY2FuIGJlIGFzc2lnbmVkIHJvbGVzIGFuZCBwZXJtaXNzaW9ucyBhbmQgY2FuIGJlIHVzZWQgdG8gbWFuYWdlIGFjY2VzcyB0byByZXNvdXJjZXMuIEFsc28gYSBncm91cCBjYW4gYWxzbyBiZSBhc3NpZ25lZCB0byBvdGhlciBncm91cHMugtPkkwIuIiYvdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L2dyb3VwczoEYm9keRKtAQoIR2V0R3JvdXASKi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkdldEdyb3VwUmVxdWVzdBorLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR2V0R3JvdXBSZXNwb25zZSJIkkESCgVHcm91cBIJR2V0IGdyb3VwgtPkkwItEisvdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L2dyb3Vwcy97aWR9Er8BCgtVcGRhdGVHcm91cBItLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuVXBkYXRlR3JvdXBSZXF1ZXN0Gi4ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5VcGRhdGVHcm91cFJlc3BvbnNlIlGSQRUKBUdyb3VwEgxVcGRhdGUgZ3JvdXCC0+STAjMaKy92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vZ3JvdXBzL3tpZH06BGJvZHkS/gEKDkxpc3RHcm91cFVzZXJzEjAucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0R3JvdXBVc2Vyc1JlcXVlc3QaMS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RHcm91cFVzZXJzUmVzcG9uc2UihgGSQUoKBUdyb3VwEhBMaXN0IGdyb3VwIHVzZXJzGi9SZXR1cm5zIGEgbGlzdCBvZiB1c2VycyB0aGF0IGJlbG9uZyB0byBhIGdyb3VwLoLT5JMCMxIxL3YxYmV0YTEvb3JnYW5pemF0aW9ucy97b3JnX2lkfS9ncm91cHMve2lkfS91c2VycxLdAgoNQWRkR3JvdXBVc2VycxIvLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQWRkR3JvdXBVc2Vyc1JlcXVlc3QaMC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkFkZEdyb3VwVXNlcnNSZXNwb25zZSLoAZJBqAEKBUdyb3VwEg5BZGQgZ3JvdXAgdXNlchqOAUFkZHMgYSBwcmluY2lwbGUodXNlciBhbmQgc2VydmljZS11c2VycykgdG8gYSBncm91cCwgZXhpc3RpbmcgdXNlcnMgaW4gdGhlIGdyb3VwIHdpbGwgYmUgaWdub3JlZC4gQSBncm91cCBjYW4ndCBoYXZlIG5lc3RlZCBncm91cHMgYXMgbWVtYmVycy6C0+STAjYiMS92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vZ3JvdXBzL3tpZH0vdXNlcnM6ASoS7wIKD1JlbW92ZUdyb3VwVXNlchIxLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUmVtb3ZlR3JvdXBVc2VyUmVxdWVzdBoyLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUmVtb3ZlR3JvdXBVc2VyUmVzcG9uc2Ui9AGSQa0BCgVHcm91cBIRUmVtb3ZlIGdyb3VwIHVzZXIakAFSZW1vdmVzIGEgcHJpbmNpcGxlKHVzZXIgYW5kIHNlcnZpY2UtdXNlcnMpIGZyb20gYSBncm91cC4gSWYgdGhlIHVzZXIgaXMgbm90IGluIHRoZSBncm91cCwgdGhlIHJlcXVlc3Qgd2lsbCBzdWNjZWVkIGJ1dCBubyBjaGFuZ2VzIHdpbGwgYmUgbWFkZS6C0+STAj0qOy92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vZ3JvdXBzL3tpZH0vdXNlcnMve3VzZXJfaWR9EsMCCgtFbmFibGVHcm91cBItLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRW5hYmxlR3JvdXBSZXF1ZXN0Gi4ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5FbmFibGVHcm91cFJlc3BvbnNlItQBkkGTAQoFR3JvdXASDEVuYWJsZSBncm91cBp8U2V0cyB0aGUgc3RhdGUgb2YgdGhlIGdyb3VwIGFzIGVuYWJsZWQuIFRoZSBgZW5hYmxlZGAgZmxhZyBpcyB1c2VkIHRvIGRldGVybWluZSBpZiB0aGUgZ3JvdXAgY2FuIGJlIHVzZWQgZm9yIGFjY2VzcyBjb250cm9sLoLT5JMCNyIyL3YxYmV0YTEvb3JnYW5pemF0aW9ucy97b3JnX2lkfS9ncm91cHMve2lkfS9lbmFibGU6ASoS1AMKDERpc2FibGVHcm91cBIuLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRGlzYWJsZUdyb3VwUmVxdWVzdBovLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRGlzYWJsZUdyb3VwUmVzcG9uc2Ui4gKSQaACCgVHcm91cBINRGlzYWJsZSBncm91cBqHAlNldHMgdGhlIHN0YXRlIG9mIHRoZSBncm91cCBhcyBkaXNhYmxlZC4gVGhlIGdyb3VwIHdpbGwgbm90IGJlIGF2YWlsYWJsZSBmb3IgYWNjZXNzIGNvbnRyb2wgYW5kIHRoZSBleGlzdGluZyB1c2VycyBpbiB0aGUgZ3JvdXAgd2lsbCBub3QgYmUgYWJsZSB0byBhY2Nlc3MgYW55IHJlc291cmNlcyB0aGF0IGFyZSBhc3NpZ25lZCB0byB0aGUgZ3JvdXAuIE5vIG90aGVyIHVzZXJzIGNhbiBiZSBhZGRlZCB0byB0aGUgZ3JvdXAgd2hpbGUgaXQgaXMgZGlzYWJsZWQugtPkkwI4IjMvdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L2dyb3Vwcy97aWR9L2Rpc2FibGU6ASoS/QEKC0RlbGV0ZUdyb3VwEi0ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5EZWxldGVHcm91cFJlcXVlc3QaLi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkRlbGV0ZUdyb3VwUmVzcG9uc2UijgGSQVgKBUdyb3VwEgxEZWxldGUgZ3JvdXAaQURlbGV0ZSBhbiBvcmdhbml6YXRpb24gZ3JvdXAgcGVybWFuZW50bHkgYW5kIGFsbCBvZiBpdHMgcmVsYXRpb25zgtPkkwItKisvdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L2dyb3Vwcy97aWR9EpMCCglMaXN0Um9sZXMSKy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RSb2xlc1JlcXVlc3QaLC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RSb2xlc1Jlc3BvbnNlIqoBkkGQAQoEUm9sZRITTGlzdCBwbGF0Zm9ybSByb2xlcxpzUmV0dXJucyBhIGxpc3Qgb2YgcGxhdGZvcm0gd2lkZSByb2xlcyBhdmFpbGFibGUgaW4gZW5pdHJlIEZyb250aWVyIGluc3RhbmNlIGFsb25nIHdpdGggdGhlaXIgYXNzb2NpYXRlZCBwZXJtaXNzaW9uc4LT5JMCEBIOL3YxYmV0YTEvcm9sZXMSvAIKFUxpc3RPcmdhbml6YXRpb25Sb2xlcxI3LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdE9yZ2FuaXphdGlvblJvbGVzUmVxdWVzdBo4LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdE9yZ2FuaXphdGlvblJvbGVzUmVzcG9uc2UirwGSQX8KBFJvbGUSF0xpc3Qgb3JnYW5pemF0aW9uIHJvbGVzGl5SZXR1cm5zIGEgbGlzdCBvZiBjdXN0b20gcm9sZXMgY3JlYXRlZCB1bmRlciBhbiBvcmdhbml6YXRpb24gd2l0aCB0aGVpciBhc3NvY2lhdGVkIHBlcm1pc3Npb25zgtPkkwInEiUvdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L3JvbGVzEvcCChZDcmVhdGVPcmdhbml6YXRpb25Sb2xlEjgucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVPcmdhbml6YXRpb25Sb2xlUmVxdWVzdBo5LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ3JlYXRlT3JnYW5pemF0aW9uUm9sZVJlc3BvbnNlIucBkkGwAQoEUm9sZRIYQ3JlYXRlIG9yZ2FuaXphdGlvbiByb2xlGo0BQ3JlYXRlIGEgY3VzdG9tIHJvbGUgdW5kZXIgYW4gb3JnYW5pemF0aW9uLiBUaGlzIGN1c3RvbSByb2xlIHdpbGwgb25seSBiZSBhdmFpbGFibGUgZm9yIGFzc2lnbm1lbnQgdG8gdGhlIHByaW5jaXBsZXMgd2l0aGluIHRoZSBvcmdhbml6YXRpb24ugtPkkwItIiUvdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L3JvbGVzOgRib2R5EqwCChNHZXRPcmdhbml6YXRpb25Sb2xlEjUucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5HZXRPcmdhbml6YXRpb25Sb2xlUmVxdWVzdBo2LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR2V0T3JnYW5pemF0aW9uUm9sZVJlc3BvbnNlIqUBkkFwCgRSb2xlEhVHZXQgb3JnYW5pemF0aW9uIHJvbGUaUVJldHVybnMgYSBjdXN0b20gcm9sZSB1bmRlciBhbiBvcmdhbml6YXRpb24gYWxvbmcgd2l0aCBpdHMgYXNzb2NpYXRlZCBwZXJtaXNzaW9uc4LT5JMCLBIqL3YxYmV0YTEvb3JnYW5pemF0aW9ucy97b3JnX2lkfS9yb2xlcy97aWR9EvwCChZVcGRhdGVPcmdhbml6YXRpb25Sb2xlEjgucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5VcGRhdGVPcmdhbml6YXRpb25Sb2xlUmVxdWVzdBo5LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuVXBkYXRlT3JnYW5pemF0aW9uUm9sZVJlc3BvbnNlIuwBkkGwAQoEUm9sZRIYVXBkYXRlIG9yZ2FuaXphdGlvbiByb2xlGo0BVXBkYXRlIGEgY3VzdG9tIHJvbGUgdW5kZXIgYW4gb3JnYW5pemF0aW9uLiBUaGlzIGN1c3RvbSByb2xlIHdpbGwgb25seSBiZSBhdmFpbGFibGUgZm9yIGFzc2lnbm1lbnQgdG8gdGhlIHByaW5jaXBsZXMgd2l0aGluIHRoZSBvcmdhbml6YXRpb24ugtPkkwIyGiovdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L3JvbGVzL3tpZH06BGJvZHkStwIKFkRlbGV0ZU9yZ2FuaXphdGlvblJvbGUSOC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkRlbGV0ZU9yZ2FuaXphdGlvblJvbGVSZXF1ZXN0GjkucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5EZWxldGVPcmdhbml6YXRpb25Sb2xlUmVzcG9uc2UipwGSQXIKBFJvbGUSGERlbGV0ZSBvcmdhbml6YXRpb24gcm9sZRpQRGVsZXRlIGEgY3VzdG9tIHJvbGUgYW5kIGFsbCBvZiBpdHMgcmVsYXRpb25zIHVuZGVyIGFuIG9yZ2FuaXphdGlvbiBwZXJtYW5lbnRseS6C0+STAiwqKi92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vcm9sZXMve2lkfRKaAgoRTGlzdE9yZ2FuaXphdGlvbnMSMy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RPcmdhbml6YXRpb25zUmVxdWVzdBo0LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdE9yZ2FuaXphdGlvbnNSZXNwb25zZSKZAZJBeAoMT3JnYW5pemF0aW9uEhJMaXN0IG9yZ2FuaXphdGlvbnMaVFJldHVybnMgYSBsaXN0IG9mIG9yZ2FuaXphdGlvbnMuIEl0IGNhbiBiZSBmaWx0ZXJlZCBieSB1c2VySUQgb3Igb3JnYW5pemF0aW9uIHN0YXRlLoLT5JMCGBIWL3YxYmV0YTEvb3JnYW5pemF0aW9ucxLNAQoSQ3JlYXRlT3JnYW5pemF0aW9uEjQucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVPcmdhbml6YXRpb25SZXF1ZXN0GjUucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVPcmdhbml6YXRpb25SZXNwb25zZSJKkkEjCgxPcmdhbml6YXRpb24SE0NyZWF0ZSBvcmdhbml6YXRpb26C0+STAh4iFi92MWJldGExL29yZ2FuaXphdGlvbnM6BGJvZHkS4AEKD0dldE9yZ2FuaXphdGlvbhIxLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR2V0T3JnYW5pemF0aW9uUmVxdWVzdBoyLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR2V0T3JnYW5pemF0aW9uUmVzcG9uc2UiZpJBQAoMT3JnYW5pemF0aW9uEhBHZXQgb3JnYW5pemF0aW9uGh5HZXQgb3JnYW5pemF0aW9uIGJ5IElEIG9yIG5hbWWC0+STAh0SGy92MWJldGExL29yZ2FuaXphdGlvbnMve2lkfRLtAQoSVXBkYXRlT3JnYW5pemF0aW9uEjQucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5VcGRhdGVPcmdhbml6YXRpb25SZXF1ZXN0GjUucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5VcGRhdGVPcmdhbml6YXRpb25SZXNwb25zZSJqkkE+CgxPcmdhbml6YXRpb24SE1VwZGF0ZSBvcmdhbml6YXRpb24aGVVwZGF0ZSBvcmdhbml6YXRpb24gYnkgSUSC0+STAiMaGy92MWJldGExL29yZ2FuaXphdGlvbnMve2lkfToEYm9keRKfAgoYTGlzdE9yZ2FuaXphdGlvblByb2plY3RzEjoucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0T3JnYW5pemF0aW9uUHJvamVjdHNSZXF1ZXN0GjsucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0T3JnYW5pemF0aW9uUHJvamVjdHNSZXNwb25zZSKJAZJBWgoMT3JnYW5pemF0aW9uEhlHZXQgb3JnYW5pemF0aW9uIHByb2plY3RzGi9HZXQgYWxsIHByb2plY3RzIHRoYXQgYmVsb25nIHRvIGFuIG9yZ2FuaXphdGlvboLT5JMCJhIkL3YxYmV0YTEvb3JnYW5pemF0aW9ucy97aWR9L3Byb2plY3RzEo4CChZMaXN0T3JnYW5pemF0aW9uQWRtaW5zEjgucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0T3JnYW5pemF0aW9uQWRtaW5zUmVxdWVzdBo5LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdE9yZ2FuaXphdGlvbkFkbWluc1Jlc3BvbnNlIn+SQVIKDE9yZ2FuaXphdGlvbhIYTGlzdCBvcmdhbml6YXRpb24gYWRtaW5zGihSZXR1cm5zIGEgbGlzdCBhZG1pbnMgb2YgYW4gb3JnYW5pemF0aW9ugtPkkwIkEiIvdjFiZXRhMS9vcmdhbml6YXRpb25zL3tpZH0vYWRtaW5zEt8BChVMaXN0T3JnYW5pemF0aW9uVXNlcnMSNy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RPcmdhbml6YXRpb25Vc2Vyc1JlcXVlc3QaOC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RPcmdhbml6YXRpb25Vc2Vyc1Jlc3BvbnNlIlOSQScKDE9yZ2FuaXphdGlvbhIXTGlzdCBvcmdhbml6YXRpb24gdXNlcnOC0+STAiMSIS92MWJldGExL29yZ2FuaXphdGlvbnMve2lkfS91c2VycxLtAgoUQWRkT3JnYW5pemF0aW9uVXNlcnMSNi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkFkZE9yZ2FuaXphdGlvblVzZXJzUmVxdWVzdBo3LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQWRkT3JnYW5pemF0aW9uVXNlcnNSZXNwb25zZSLjAZJBswEKDE9yZ2FuaXphdGlvbhIVQWRkIG9yZ2FuaXphdGlvbiB1c2VyGosBQWRkIGEgdXNlciB0byBhbiBvcmdhbml6YXRpb24uIEEgdXNlciBtdXN0IGV4aXN0cyBpbiBGcm9udGllciBiZWZvcmUgYWRkaW5nIGl0IHRvIGFuIG9yZy4gVGhpcyByZXF1ZXN0IHdpbGwgZmFpbCBpZiB0aGUgdXNlciBkb2Vzbid0IGV4aXN0c4LT5JMCJiIhL3YxYmV0YTEvb3JnYW5pemF0aW9ucy97aWR9L3VzZXJzOgEqEpICChZSZW1vdmVPcmdhbml6YXRpb25Vc2VyEjgucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5SZW1vdmVPcmdhbml6YXRpb25Vc2VyUmVxdWVzdBo5LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUmVtb3ZlT3JnYW5pemF0aW9uVXNlclJlc3BvbnNlIoIBkkFMCgxPcmdhbml6YXRpb24SGFJlbW92ZSBvcmdhbml6YXRpb24gdXNlchoiUmVtb3ZlIGEgdXNlciBmcm9tIGFuIG9yZ2FuaXphdGlvboLT5JMCLSorL3YxYmV0YTEvb3JnYW5pemF0aW9ucy97aWR9L3VzZXJzL3t1c2VyX2lkfRKWAgoSR2V0T3JnYW5pemF0aW9uS3ljEjQucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5HZXRPcmdhbml6YXRpb25LeWNSZXF1ZXN0GjUucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5HZXRPcmdhbml6YXRpb25LeWNSZXNwb25zZSKSAZJBZAoPT3JnYW5pemF0aW9uS3ljEh9HZXQgS1lDIGluZm8gb2YgYW4gb3JnYW5pemF0aW9uGjBHZXQgS1lDIGluZm8gb2YgYW4gb3JnYW5pemF0aW9uIHVzaW5nIElEIG9yIG5hbWWC0+STAiUSIy92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0va3ljEoMCChxMaXN0T3JnYW5pemF0aW9uU2VydmljZVVzZXJzEj4ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0T3JnYW5pemF0aW9uU2VydmljZVVzZXJzUmVxdWVzdBo/LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdE9yZ2FuaXphdGlvblNlcnZpY2VVc2Vyc1Jlc3BvbnNlImKSQS8KDE9yZ2FuaXphdGlvbhIfTGlzdCBvcmdhbml6YXRpb24gc2VydmljZSB1c2Vyc4LT5JMCKhIoL3YxYmV0YTEvb3JnYW5pemF0aW9ucy97aWR9L3NlcnZpY2V1c2VycxK5AgobTGlzdE9yZ2FuaXphdGlvbkludml0YXRpb25zEj0ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0T3JnYW5pemF0aW9uSW52aXRhdGlvbnNSZXF1ZXN0Gj4ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0T3JnYW5pemF0aW9uSW52aXRhdGlvbnNSZXNwb25zZSKaAZJBZAoMT3JnYW5pemF0aW9uEhhMaXN0IHBlbmRpbmcgaW52aXRhdGlvbnMaOlJldHVybnMgYWxsIHBlbmRpbmcgaW52aXRhdGlvbnMgcXVldWVkIGZvciBhbiBvcmdhbml6YXRpb26C0+STAi0SKy92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vaW52aXRhdGlvbnMS9gIKHENyZWF0ZU9yZ2FuaXphdGlvbkludml0YXRpb24SPi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNyZWF0ZU9yZ2FuaXphdGlvbkludml0YXRpb25SZXF1ZXN0Gj8ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVPcmdhbml6YXRpb25JbnZpdGF0aW9uUmVzcG9uc2Ui1AGSQZoBCgxPcmdhbml6YXRpb24SC0ludml0ZSB1c2VyGn1JbnZpdGUgdXNlcnMgdG8gYW4gb3JnYW5pemF0aW9uLCBpZiB1c2VyIGlzIG5vdCByZWdpc3RlcmVkIG9uIHRoZSBwbGF0Zm9ybSwgaXQgd2lsbCBiZSBub3RpZmllZC4gSW52aXRhdGlvbnMgZXhwaXJlIGluIDcgZGF5c4LT5JMCMCIrL3YxYmV0YTEvb3JnYW5pemF0aW9ucy97b3JnX2lkfS9pbnZpdGF0aW9uczoBKhKzAgoZR2V0T3JnYW5pemF0aW9uSW52aXRhdGlvbhI7LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR2V0T3JnYW5pemF0aW9uSW52aXRhdGlvblJlcXVlc3QaPC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkdldE9yZ2FuaXphdGlvbkludml0YXRpb25SZXNwb25zZSKaAZJBXwoMT3JnYW5pemF0aW9uEhZHZXQgcGVuZGluZyBpbnZpdGF0aW9uGjdSZXR1cm5zIGEgcGVuZGluZyBpbnZpdGF0aW9uIHF1ZXVlZCBmb3IgYW4gb3JnYW5pemF0aW9ugtPkkwIyEjAvdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L2ludml0YXRpb25zL3tpZH0SmQMKHEFjY2VwdE9yZ2FuaXphdGlvbkludml0YXRpb24SPi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkFjY2VwdE9yZ2FuaXphdGlvbkludml0YXRpb25SZXF1ZXN0Gj8ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5BY2NlcHRPcmdhbml6YXRpb25JbnZpdGF0aW9uUmVzcG9uc2Ui9wGSQbEBCgxPcmdhbml6YXRpb24SGUFjY2VwdCBwZW5kaW5nIGludml0YXRpb24ahQFBY2NlcHQgcGVuZGluZyBpbnZpdGF0aW9uIHF1ZXVlZCBmb3IgYW4gb3JnYW5pemF0aW9uLiBUaGUgdXNlciB3aWxsIGJlIGFkZGVkIHRvIHRoZSBvcmdhbml6YXRpb24gYW5kIGdyb3VwcyBkZWZpbmVkIGluIHRoZSBpbnZpdGF0aW9ugtPkkwI8IjcvdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L2ludml0YXRpb25zL3tpZH0vYWNjZXB0OgEqEr4CChxEZWxldGVPcmdhbml6YXRpb25JbnZpdGF0aW9uEj4ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5EZWxldGVPcmdhbml6YXRpb25JbnZpdGF0aW9uUmVxdWVzdBo/LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRGVsZXRlT3JnYW5pemF0aW9uSW52aXRhdGlvblJlc3BvbnNlIpwBkkFhCgxPcmdhbml6YXRpb24SGURlbGV0ZSBwZW5kaW5nIGludml0YXRpb24aNkRlbGV0ZSBhIHBlbmRpbmcgaW52aXRhdGlvbiBxdWV1ZWQgZm9yIGFuIG9yZ2FuaXphdGlvboLT5JMCMiowL3YxYmV0YTEvb3JnYW5pemF0aW9ucy97b3JnX2lkfS9pbnZpdGF0aW9ucy97aWR9EtgDChdMaXN0T3JnYW5pemF0aW9uRG9tYWlucxI5LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdE9yZ2FuaXphdGlvbkRvbWFpbnNSZXF1ZXN0GjoucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0T3JnYW5pemF0aW9uRG9tYWluc1Jlc3BvbnNlIsUCkkGSAgoMT3JnYW5pemF0aW9uEhBMaXN0IG9yZyBkb21haW5zGu8BUmV0dXJucyBhbGwgZG9tYWlucyB3aGl0ZWxpc3RlZCBmb3IgYW4gb3JnYW5pemF0aW9uIChib3RoIHBlbmRpbmcgYW5kIHZlcmlmaWVkIGlmIG5vIGZpbHRlcnMgYXJlIHByb3ZpZGVkIGZvciB0aGUgc3RhdGUpLiBUaGUgdmVyaWZpZWQgZG9tYWlucyBhbGxvdyB1c2VycyBlbWFpbCB3aXRoIHRoZSBvcmcncyB3aGl0ZWxpc3RlZCBkb21haW4gdG8gam9pbiB0aGUgb3JnYW5pemF0aW9uIHdpdGhvdXQgaW52aXRhdGlvbi6C0+STAikSJy92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vZG9tYWlucxL+BAoYQ3JlYXRlT3JnYW5pemF0aW9uRG9tYWluEjoucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVPcmdhbml6YXRpb25Eb21haW5SZXF1ZXN0GjsucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVPcmdhbml6YXRpb25Eb21haW5SZXNwb25zZSLoA5JBsgMKDE9yZ2FuaXphdGlvbhIRQ3JlYXRlIG9yZyBkb21haW4ajgNBZGQgYSBkb21haW4gdG8gYW4gb3JnYW5pemF0aW9uIHdoaWNoIGlmIHZlcmlmaWVkIGFsbG93cyBhbGwgdXNlcnMgb2YgdGhlIHNhbWUgZG9tYWluIHRvIGJlIHNpZ25lZCB1cCB0byB0aGUgb3JnYW5pemF0aW9uIHdpdGhvdXQgaW52aXRhdGlvbi4gVGhpcyBBUEkgZ2VuZXJhdGVzIGEgdmVyaWZpY2F0aW9uIHRva2VuIGZvciBhIGRvbWFpbiB3aGljaCBtdXN0IGJlIGFkZGVkIHRvIHlvdXIgZG9tYWluJ3MgRE5TIHByb3ZpZGVyIGFzIGEgVFhUIHJlY29yZCBzaG91bGQgYmUgdmVyaWZpZWQgd2l0aCBGcm9udGllciBWZXJpZnlPcmdhbml6YXRpb25Eb21haW4gQVBJIGJlZm9yZSBpdCBjYW4gYmUgdXNlZCBhcyBhbiBPcmdhbml6YXRpb24ncyB0cnVzdGVkIGRvbWFpbiB0byBzaWduIHVwIHVzZXJzLoLT5JMCLCInL3YxYmV0YTEvb3JnYW5pemF0aW9ucy97b3JnX2lkfS9kb21haW5zOgEqErcCChhEZWxldGVPcmdhbml6YXRpb25Eb21haW4SOi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkRlbGV0ZU9yZ2FuaXphdGlvbkRvbWFpblJlcXVlc3QaOy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkRlbGV0ZU9yZ2FuaXphdGlvbkRvbWFpblJlc3BvbnNlIqEBkkFqCgxPcmdhbml6YXRpb24SEURlbGV0ZSBvcmcgZG9tYWluGkdSZW1vdmUgYSBkb21haW4gZnJvbSB0aGUgbGlzdCBvZiBhbiBvcmdhbml6YXRpb24ncyB0cnVzdGVkIGRvbWFpbnMgbGlzdILT5JMCLiosL3YxYmV0YTEvb3JnYW5pemF0aW9ucy97b3JnX2lkfS9kb21haW5zL3tpZH0S4gIKFUdldE9yZ2FuaXphdGlvbkRvbWFpbhI3LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR2V0T3JnYW5pemF0aW9uRG9tYWluUmVxdWVzdBo4LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR2V0T3JnYW5pemF0aW9uRG9tYWluUmVzcG9uc2Ui1QGSQZ0BCgxPcmdhbml6YXRpb24SDkdldCBvcmcgZG9tYWluGn1HZXQgYSBkb21haW4gZnJvbSB0aGUgbGlzdCBvZiBhbiBvcmdhbml6YXRpb24ncyB3aGl0ZWxpc3RlZCBkb21haW5zLiBSZXR1cm5zIGJvdGggdmVyaWZpZWQgYW5kIHVudmVyaWZpZWQgZG9tYWlucyBieSB0aGVpciBJRILT5JMCLhIsL3YxYmV0YTEvb3JnYW5pemF0aW9ucy97b3JnX2lkfS9kb21haW5zL3tpZH0SpQQKGFZlcmlmeU9yZ2FuaXphdGlvbkRvbWFpbhI6LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuVmVyaWZ5T3JnYW5pemF0aW9uRG9tYWluUmVxdWVzdBo7LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuVmVyaWZ5T3JnYW5pemF0aW9uRG9tYWluUmVzcG9uc2UijwOSQc0CCgxPcmdhbml6YXRpb24SEVZlcmlmeSBvcmcgZG9tYWluGqkCVmVyaWZ5IGEgZG9tYWluIGZvciBhbiBvcmdhbml6YXRpb24gd2l0aCBhIHZlcmlmaWNhdGlvbiB0b2tlbiBnZW5lcmF0ZWQgYnkgRnJvbnRpZXIgR2VuZXJhdGVEb21haW5WZXJpZmljYXRpb25Ub2tlbiBBUEkuIFRoZSB0b2tlbiBtdXN0IGJlIGFkZGVkIHRvIHlvdXIgZG9tYWluJ3MgRE5TIHByb3ZpZGVyIGFzIGEgVFhUIHJlY29yZCBiZWZvcmUgaXQgY2FuIGJlIHZlcmlmaWVkLiBUaGlzIEFQSSByZXR1cm5zIHRoZSBzdGF0ZSBvZiB0aGUgZG9tYWluIChwZW5kaW5nL3ZlcmlmaWVkKSBhZnRlciB2ZXJpZmljYXRpb24ugtPkkwI4IjMvdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L2RvbWFpbnMve2lkfS92ZXJpZnk6ASoSkgMKEEpvaW5Pcmdhbml6YXRpb24SMi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkpvaW5Pcmdhbml6YXRpb25SZXF1ZXN0GjMucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Kb2luT3JnYW5pemF0aW9uUmVzcG9uc2UilAKSQeEBCgxPcmdhbml6YXRpb24SEUpvaW4gb3JnYW5pemF0aW9uGr0BQWxsb3dzIHRoZSBjdXJyZW50IGxvZ2dlZCBpbiB1c2VyIHRvIGpvaW4gdGhlIE9yZyBpZiBvbmUgaXMgbm90IGEgcGFydCBvZiBpdC4gVGhlIHVzZXIgd2lsbCBvbmx5IGJlIGFibGUgdG8gam9pbiB3aGVuIHRoZSB1c2VyIGVtYWlsJ3MgZG9tYWluIG1hdGNoZXMgdGhlIG9yZ2FuaXphdGlvbidzIHdoaXRlbGlzdGVkIGRvbWFpbnMugtPkkwIpIiQvdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L2pvaW46ASoS2QIKEkVuYWJsZU9yZ2FuaXphdGlvbhI0LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRW5hYmxlT3JnYW5pemF0aW9uUmVxdWVzdBo1LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRW5hYmxlT3JnYW5pemF0aW9uUmVzcG9uc2Ui1QGSQaQBCgxPcmdhbml6YXRpb24SE0VuYWJsZSBvcmdhbml6YXRpb24af1NldHMgdGhlIHN0YXRlIG9mIHRoZSBvcmdhbml6YXRpb24gYXMgZW5hYmxlZC4gVGhlIGV4aXN0aW5nIHVzZXJzIGluIHRoZSBvcmcgd2lsbCBiZSBhYmxlIHRvIGFjY2VzcyBhbnkgb3JnYW5pemF0aW9uIHJlc291cmNlcy6C0+STAiciIi92MWJldGExL29yZ2FuaXphdGlvbnMve2lkfS9lbmFibGU6ASoS5AIKE0Rpc2FibGVPcmdhbml6YXRpb24SNS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkRpc2FibGVPcmdhbml6YXRpb25SZXF1ZXN0GjYucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5EaXNhYmxlT3JnYW5pemF0aW9uUmVzcG9uc2Ui3QGSQasBCgxPcmdhbml6YXRpb24SFERpc2FibGUgb3JnYW5pemF0aW9uGoQBU2V0cyB0aGUgc3RhdGUgb2YgdGhlIG9yZ2FuaXphdGlvbiBhcyBkaXNhYmxlZC4gVGhlIGV4aXN0aW5nIHVzZXJzIGluIHRoZSBvcmcgd2lsbCBub3QgYmUgYWJsZSB0byBhY2Nlc3MgYW55IG9yZ2FuaXphdGlvbiByZXNvdXJjZXMugtPkkwIoIiMvdjFiZXRhMS9vcmdhbml6YXRpb25zL3tpZH0vZGlzYWJsZToBKhLGAgoSRGVsZXRlT3JnYW5pemF0aW9uEjQucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5EZWxldGVPcmdhbml6YXRpb25SZXF1ZXN0GjUucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5EZWxldGVPcmdhbml6YXRpb25SZXNwb25zZSLCAZJBmwEKDE9yZ2FuaXphdGlvbhITRGVsZXRlIG9yZ2FuaXphdGlvbhp2RGVsZXRlIGFuIG9yZ2FuaXphdGlvbiBhbmQgYWxsIG9mIGl0cyByZWxhdGlvbnMgcGVybWFuZW50bHkuIFRoZSBvcmdhbml6YXRpb24gdXNlcnMgd2lsbCBub3QgYmUgZGVsZXRlZCBmcm9tIEZyb250aWVyLoLT5JMCHSobL3YxYmV0YTEvb3JnYW5pemF0aW9ucy97aWR9Eq8BCg1DcmVhdGVQcm9qZWN0Ei8ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVQcm9qZWN0UmVxdWVzdBowLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ3JlYXRlUHJvamVjdFJlc3BvbnNlIjuSQRkKB1Byb2plY3QSDkNyZWF0ZSBwcm9qZWN0gtPkkwIZIhEvdjFiZXRhMS9wcm9qZWN0czoEYm9keRK7AQoKR2V0UHJvamVjdBIsLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR2V0UHJvamVjdFJlcXVlc3QaLS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkdldFByb2plY3RSZXNwb25zZSJQkkEvCgdQcm9qZWN0EgtHZXQgcHJvamVjdBoXUmV0dXJucyBhIHByb2plY3QgYnkgSUSC0+STAhgSFi92MWJldGExL3Byb2plY3RzL3tpZH0SzQEKDVVwZGF0ZVByb2plY3QSLy5yYXlzdGFjay5mcm9udGllci52MWJldGExLlVwZGF0ZVByb2plY3RSZXF1ZXN0GjAucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5VcGRhdGVQcm9qZWN0UmVzcG9uc2UiWZJBMgoHUHJvamVjdBIOVXBkYXRlIHByb2plY3QaF1VwZGF0ZXMgYSBwcm9qZWN0IGJ5IElEgtPkkwIeGhYvdjFiZXRhMS9wcm9qZWN0cy97aWR9OgRib2R5EvMBChFMaXN0UHJvamVjdEFkbWlucxIzLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdFByb2plY3RBZG1pbnNSZXF1ZXN0GjQucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0UHJvamVjdEFkbWluc1Jlc3BvbnNlInOSQUsKB1Byb2plY3QSE0xpc3QgcHJvamVjdCBhZG1pbnMaK1JldHVybnMgYSBjb2xsZWN0aW9uIG9mIGFkbWlucyBvZiBhIHByb2plY3SC0+STAh8SHS92MWJldGExL3Byb2plY3RzL3tpZH0vYWRtaW5zEpgCChBMaXN0UHJvamVjdFVzZXJzEjIucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0UHJvamVjdFVzZXJzUmVxdWVzdBozLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdFByb2plY3RVc2Vyc1Jlc3BvbnNlIpoBkkFzCgdQcm9qZWN0EhJMaXN0IHByb2plY3QgdXNlcnMaVFJldHVybnMgYSBjb2xsZWN0aW9uIG9mIHVzZXJzIG9mIGEgcHJvamVjdC4gRmlsdGVyIGJ5IHVzZXIgcGVybWlzc2lvbnMgaXMgc3VwcG9ydGVkLoLT5JMCHhIcL3YxYmV0YTEvcHJvamVjdHMve2lkfS91c2VycxKRAgoXTGlzdFByb2plY3RTZXJ2aWNlVXNlcnMSOS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RQcm9qZWN0U2VydmljZVVzZXJzUmVxdWVzdBo6LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdFByb2plY3RTZXJ2aWNlVXNlcnNSZXNwb25zZSJ/kkFRCgdQcm9qZWN0EhlMaXN0IHByb2plY3Qgc2VydmljZXVzZXJzGitSZXR1cm5zIGEgY29sbGVjdGlvbiBvZiB1c2VycyBvZiBhIHByb2plY3QugtPkkwIlEiMvdjFiZXRhMS9wcm9qZWN0cy97aWR9L3NlcnZpY2V1c2VycxL0AQoRTGlzdFByb2plY3RHcm91cHMSMy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RQcm9qZWN0R3JvdXBzUmVxdWVzdBo0LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdFByb2plY3RHcm91cHNSZXNwb25zZSJ0kkFMCgdQcm9qZWN0EhNMaXN0IHByb2plY3QgZ3JvdXBzGixSZXR1cm5zIGEgY29sbGVjdGlvbiBvZiBncm91cHMgb2YgYSBwcm9qZWN0LoLT5JMCHxIdL3YxYmV0YTEvcHJvamVjdHMve2lkfS9ncm91cHMSuAEKDUVuYWJsZVByb2plY3QSLy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkVuYWJsZVByb2plY3RSZXF1ZXN0GjAucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5FbmFibGVQcm9qZWN0UmVzcG9uc2UiRJJBGQoHUHJvamVjdBIORW5hYmxlIHByb2plY3SC0+STAiIiHS92MWJldGExL3Byb2plY3RzL3tpZH0vZW5hYmxlOgEqEr0BCg5EaXNhYmxlUHJvamVjdBIwLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRGlzYWJsZVByb2plY3RSZXF1ZXN0GjEucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5EaXNhYmxlUHJvamVjdFJlc3BvbnNlIkaSQRoKB1Byb2plY3QSD0Rpc2FibGUgcHJvamVjdILT5JMCIyIeL3YxYmV0YTEvcHJvamVjdHMve2lkfS9kaXNhYmxlOgEqEuIBCg1EZWxldGVQcm9qZWN0Ei8ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5EZWxldGVQcm9qZWN0UmVxdWVzdBowLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRGVsZXRlUHJvamVjdFJlc3BvbnNlIm6SQU0KB1Byb2plY3QSDkRlbGV0ZSBQcm9qZWN0GjJEZWxldGUgYSBwcm9qZWN0IGFsbCBvZiBpdHMgcmVsYXRpb25zIHBlcm1hbmVudGx5LoLT5JMCGCoWL3YxYmV0YTEvcHJvamVjdHMve2lkfRK9AQoMQ3JlYXRlUG9saWN5Ei4ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVQb2xpY3lSZXF1ZXN0Gi8ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVQb2xpY3lSZXNwb25zZSJMkkEqCgZQb2xpY3kSDUNyZWF0ZSBwb2xpY3kaEUNyZWF0ZXMgYSBwb2xpY3kggtPkkwIZIhEvdjFiZXRhMS9wb2xpY2llczoEYm9keRK1AQoJR2V0UG9saWN5EisucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5HZXRQb2xpY3lSZXF1ZXN0GiwucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5HZXRQb2xpY3lSZXNwb25zZSJNkkEsCgZQb2xpY3kSCkdldCBwb2xpY3kaFlJldHVybnMgYSBwb2xpY3kgYnkgSUSC0+STAhgSFi92MWJldGExL3BvbGljaWVzL3tpZH0SuQIKDExpc3RQb2xpY2llcxIuLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdFBvbGljaWVzUmVxdWVzdBovLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdFBvbGljaWVzUmVzcG9uc2UixwGSQaoBCgZQb2xpY3kSEUxpc3QgYWxsIHBvbGljaWVzGowBTGlzdHMgYWxsIHRoZSBwb2xpY2llcyBmcm9tIGFsbCB0aGUgb3JnYW5pemF0aW9ucyBpbiBhIEZyb250aWVyIGluc3RhbmNlLiBJdCBjYW4gYmUgZmlsdGVyZWQgYnkgb3JnYW5pemF0aW9uLCBwcm9qZWN0LCB1c2VyLCByb2xlIGFuZCBncm91cC6C0+STAhMSES92MWJldGExL3BvbGljaWVzEscBCgxVcGRhdGVQb2xpY3kSLi5yYXlzdGFjay5mcm9udGllci52MWJldGExLlVwZGF0ZVBvbGljeVJlcXVlc3QaLy5yYXlzdGFjay5mcm9udGllci52MWJldGExLlVwZGF0ZVBvbGljeVJlc3BvbnNlIlaSQS8KBlBvbGljeRINVXBkYXRlIHBvbGljeRoWVXBkYXRlcyBhIHBvbGljeSBieSBJRILT5JMCHhoWL3YxYmV0YTEvcG9saWNpZXMve2lkfToEYm9keRLcAQoMRGVsZXRlUG9saWN5Ei4ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5EZWxldGVQb2xpY3lSZXF1ZXN0Gi8ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5EZWxldGVQb2xpY3lSZXNwb25zZSJrkkFKCgZQb2xpY3kSDURlbGV0ZSBQb2xpY3kaMURlbGV0ZSBhIHBvbGljeSBhbGwgb2YgaXRzIHJlbGF0aW9ucyBwZXJtYW5lbnRseS6C0+STAhgqFi92MWJldGExL3BvbGljaWVzL3tpZH0SiQIKFkNyZWF0ZVBvbGljeUZvclByb2plY3QSOC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNyZWF0ZVBvbGljeUZvclByb2plY3RSZXF1ZXN0GjkucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVQb2xpY3lGb3JQcm9qZWN0UmVzcG9uc2UiepJBQgoGUG9saWN5EhlDcmVhdGUgUG9saWN5IGZvciBQcm9qZWN0Gh1DcmVhdGUgYSBwb2xpY3kgZm9yIGEgcHJvamVjdILT5JMCLyInL3YxYmV0YTEvcG9saWNpZXMvcHJvamVjdHMve3Byb2plY3RfaWR9OgRib2R5ErUBCg5DcmVhdGVSZWxhdGlvbhIwLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ3JlYXRlUmVsYXRpb25SZXF1ZXN0GjEucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVSZWxhdGlvblJlc3BvbnNlIj6SQRsKCFJlbGF0aW9uEg9DcmVhdGUgcmVsYXRpb26C0+STAhoiEi92MWJldGExL3JlbGF0aW9uczoEYm9keRLCAQoLR2V0UmVsYXRpb24SLS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkdldFJlbGF0aW9uUmVxdWVzdBouLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR2V0UmVsYXRpb25SZXNwb25zZSJUkkEyCghSZWxhdGlvbhIMR2V0IHJlbGF0aW9uGhhSZXR1cm5zIGEgcmVsYXRpb24gYnkgSUSC0+STAhkSFy92MWJldGExL3JlbGF0aW9ucy97aWR9EpACCg5EZWxldGVSZWxhdGlvbhIwLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRGVsZXRlUmVsYXRpb25SZXF1ZXN0GjEucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5EZWxldGVSZWxhdGlvblJlc3BvbnNlIpgBkkFOCghSZWxhdGlvbhIPRGVsZXRlIHJlbGF0aW9uGjFSZW1vdmUgYSBzdWJqZWN0IGhhdmluZyBhIHJlbGF0aW9uIGZyb20gYW4gb2JqZWN0gtPkkwJBKj8vdjFiZXRhMS9yZWxhdGlvbnMve3JlbGF0aW9ufS9vYmplY3Qve29iamVjdH0vc3ViamVjdC97c3ViamVjdH0SugEKD0xpc3RQZXJtaXNzaW9ucxIxLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdFBlcm1pc3Npb25zUmVxdWVzdBoyLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdFBlcm1pc3Npb25zUmVzcG9uc2UiQJJBIQoKUGVybWlzc2lvbhITR2V0IGFsbCBwZXJtaXNzaW9uc4LT5JMCFhIUL3YxYmV0YTEvcGVybWlzc2lvbnMS0AEKDUdldFBlcm1pc3Npb24SLy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkdldFBlcm1pc3Npb25SZXF1ZXN0GjAucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5HZXRQZXJtaXNzaW9uUmVzcG9uc2UiXJJBOAoKUGVybWlzc2lvbhIOR2V0IHBlcm1pc3Npb24aGlJldHVybnMgYSBwZXJtaXNzaW9uIGJ5IElEgtPkkwIbEhkvdjFiZXRhMS9wZXJtaXNzaW9ucy97aWR9Eu8BCg5MaXN0TmFtZXNwYWNlcxIwLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdE5hbWVzcGFjZXNSZXF1ZXN0GjEucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0TmFtZXNwYWNlc1Jlc3BvbnNlIniSQVoKCU5hbWVzcGFjZRISR2V0IGFsbCBuYW1lc3BhY2VzGjlSZXR1cm5zIHRoZSBsaXN0IG9mIGFsbCBuYW1lc3BhY2VzIGluIGEgRnJvbnRpZXIgaW5zdGFuY2WC0+STAhUSEy92MWJldGExL25hbWVzcGFjZXMSyQEKDEdldE5hbWVzcGFjZRIuLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR2V0TmFtZXNwYWNlUmVxdWVzdBovLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR2V0TmFtZXNwYWNlUmVzcG9uc2UiWJJBNQoJTmFtZXNwYWNlEg1HZXQgbmFtZXNwYWNlGhlSZXR1cm5zIGEgbmFtZXNwYWNlIGJ5IElEgtPkkwIaEhgvdjFiZXRhMS9uYW1lc3BhY2VzL3tpZH0S2QEKFExpc3RQcm9qZWN0UmVzb3VyY2VzEjYucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0UHJvamVjdFJlc291cmNlc1JlcXVlc3QaNy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RQcm9qZWN0UmVzb3VyY2VzUmVzcG9uc2UiUJJBHQoIUmVzb3VyY2USEUdldCBhbGwgcmVzb3VyY2VzgtPkkwIqEigvdjFiZXRhMS9wcm9qZWN0cy97cHJvamVjdF9pZH0vcmVzb3VyY2VzEoECChVDcmVhdGVQcm9qZWN0UmVzb3VyY2USNy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNyZWF0ZVByb2plY3RSZXNvdXJjZVJlcXVlc3QaOC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNyZWF0ZVByb2plY3RSZXNvdXJjZVJlc3BvbnNlInWSQTwKCFJlc291cmNlEg9DcmVhdGUgcmVzb3VyY2UaH0NyZWF0ZXMgYSByZXNvdXJjZSBpbiBhIHByb2plY3SC0+STAjAiKC92MWJldGExL3Byb2plY3RzL3twcm9qZWN0X2lkfS9yZXNvdXJjZXM6BGJvZHkS9QEKEkdldFByb2plY3RSZXNvdXJjZRI0LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR2V0UHJvamVjdFJlc291cmNlUmVxdWVzdBo1LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR2V0UHJvamVjdFJlc291cmNlUmVzcG9uc2UicpJBOgoIUmVzb3VyY2USDEdldCByZXNvdXJjZRogUmV0dXJucyBhIHByb2plY3QgcmVzb3VyY2UgYnkgSUSC0+STAi8SLS92MWJldGExL3Byb2plY3RzL3twcm9qZWN0X2lkfS9yZXNvdXJjZXMve2lkfRKGAgoVVXBkYXRlUHJvamVjdFJlc291cmNlEjcucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5VcGRhdGVQcm9qZWN0UmVzb3VyY2VSZXF1ZXN0GjgucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5VcGRhdGVQcm9qZWN0UmVzb3VyY2VSZXNwb25zZSJ6kkE8CghSZXNvdXJjZRIPVXBkYXRlIHJlc291cmNlGh9VcGRhdGVzIGEgcmVzb3VyY2UgaW4gYSBwcm9qZWN0gtPkkwI1Gi0vdjFiZXRhMS9wcm9qZWN0cy97cHJvamVjdF9pZH0vcmVzb3VyY2VzL3tpZH06BGJvZHkSjwIKFURlbGV0ZVByb2plY3RSZXNvdXJjZRI3LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRGVsZXRlUHJvamVjdFJlc291cmNlUmVxdWVzdBo4LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRGVsZXRlUHJvamVjdFJlc291cmNlUmVzcG9uc2UiggGSQUoKCFJlc291cmNlEg9EZWxldGUgcmVzb3VyY2UaLURlbGV0ZXMgYSByZXNvdXJjZSBmcm9tIGEgcHJvamVjdCBwZXJtYW5lbnRseYLT5JMCLyotL3YxYmV0YTEvcHJvamVjdHMve3Byb2plY3RfaWR9L3Jlc291cmNlcy97aWR9EvsDChdDaGVja1Jlc291cmNlUGVybWlzc2lvbhI5LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ2hlY2tSZXNvdXJjZVBlcm1pc3Npb25SZXF1ZXN0GjoucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DaGVja1Jlc291cmNlUGVybWlzc2lvblJlc3BvbnNlIugCkkHLAgoFQXV0aHoSBUNoZWNrGroCUmV0dXJucyB0cnVlIGlmIGEgcHJpbmNpcGFsIGhhcyByZXF1aXJlZCBwZXJtaXNzaW9ucyB0byBhY2Nlc3MgYSByZXNvdXJjZSBhbmQgZmFsc2Ugb3RoZXJ3aXNlLjxici8+IE5vdGUgdGhlIHByaW5jaXBhbCBjYW4gYmUgYSB1c2VyIG9yIGEgc2VydmljZSBhY2NvdW50LiBGcm9udGllciB3aWxsIGV4dHJhY3QgcHJpbmNpcGFsIGZyb20gdGhlIGN1cnJlbnQgbG9nZ2VkIGluIHNlc3Npb24gY29va2llIChpZiBhbnkpLCBvciB0aGUgY2xpZW50IGlkIGFuZCBzZWNyZXQgKGluIGNhc2Ugb2Ygc2VydmljZSB1c2Vycykgb3IgdGhlIGFjY2VzcyB0b2tlbi6C0+STAhMiDi92MWJldGExL2NoZWNrOgEqErMEChRCYXRjaENoZWNrUGVybWlzc2lvbhI2LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQmF0Y2hDaGVja1Blcm1pc3Npb25SZXF1ZXN0GjcucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5CYXRjaENoZWNrUGVybWlzc2lvblJlc3BvbnNlIqkDkkGHAwoFQXV0aHoSC0JhdGNoIGNoZWNrGvACUmV0dXJucyB0cnVlIGlmIGEgcHJpbmNpcGFsIGhhcyByZXF1aXJlZCBwZXJtaXNzaW9ucyB0byBhY2Nlc3MgYSByZXNvdXJjZSBhbmQgZmFsc2Ugb3RoZXJ3aXNlLjxici8+IE5vdGUgdGhlIHByaW5jaXBhbCBjYW4gYmUgYSB1c2VyIG9yIGEgc2VydmljZSBhY2NvdW50LCBhbmQgRnJvbnRpZXIgd2lsbCB0aGUgY3JlZGVudGlhbHMgZnJvbSB0aGUgY3VycmVudCBsb2dnZWQgaW4gcHJpbmNpcGFsIGZyb20gdGhlIHNlc3Npb24gY29va2llIChpZiBhbnkpLCBvciB0aGUgY2xpZW50IGlkIGFuZCBzZWNyZXQgKGluIGNhc2Ugb2Ygc2VydmljZSB1c2Vycykgb3IgdGhlIGFjY2VzcyB0b2tlbiAoaW4gY2FzZSBvZiBodW1hbiB1c2VyIGFjY291bnRzKS6C0+STAhgiEy92MWJldGExL2JhdGNoY2hlY2s6ASoStQEKB0dldEpXS3MSKS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkdldEpXS3NSZXF1ZXN0GioucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5HZXRKV0tzUmVzcG9uc2UiU5JBHAoFQXV0aHoSE0dldCB3ZWxsIGtub3duIEpXS3OC0+STAi4SEi92MWJldGExL2F1dGgvandrc1oYEhYvLndlbGwta25vd24vandrcy5qc29uErcCChJMaXN0QXV0aFN0cmF0ZWdpZXMSNC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RBdXRoU3RyYXRlZ2llc1JlcXVlc3QaNS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RBdXRoU3RyYXRlZ2llc1Jlc3BvbnNlIrMBkkGaAQoFQXV0aG4SHkxpc3QgYXV0aGVudGljYXRpb24gc3RyYXRlZ2llcxpxUmV0dXJucyBhIGxpc3Qgb2YgaWRlbnRpdHkgcHJvdmlkZXJzIGNvbmZpZ3VyZWQgb24gYW4gaW5zdGFuY2UgbGV2ZWwgaW4gRnJvbnRpZXIuIGUuZyBHb29nbGUsIEF6dXJlQUQsIEdpdGh1YiBldGOC0+STAg8SDS92MWJldGExL2F1dGgS6QQKDEF1dGhlbnRpY2F0ZRIuLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQXV0aGVudGljYXRlUmVxdWVzdBovLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQXV0aGVudGljYXRlUmVzcG9uc2Ui9wOSQZgDCgVBdXRobhIcQXV0aGVudGljYXRlIHdpdGggYSBzdHJhdGVneRrwAkF1dGhlbnRpY2F0ZSBhIHVzZXIgd2l0aCBhIHN0cmF0ZWd5LiBCeSBkZWZhdWx0LCBhZnRlciBzdWNjZXNzZnVsIGF1dGhlbnRpY2F0aW9uIG5vIG9wZXJhdGlvbiB3aWxsIGJlIHBlcmZvcm1lZCB0byBhcHBseSByZWRpcmVjdGlvbiBpbiBjYXNlIG9mIGJyb3dzZXJzLCBwcm92aWRlIGEgdXJsIGluIHRoZSBhdXRoZW50aWNhdGUgcmVxdWVzdCBib2R5IHRoYXQgd2lsbCBiZSB1c2VkIGZvciByZWRpcmVjdGlvbiBhZnRlciBhdXRoZW50aWNhdGlvbi4gQWxzbyBzZXQgcmVkaXJlY3QgYXMgdHJ1ZSBmb3IgcmVkaXJlY3RpbmcgdGhlIHVzZXIgcmVxdWVzdCB0byB0aGUgcmVkaXJlY3RfdXJsIGFmdGVyIHN1Y2Nlc3NmdWwgYXV0aGVudGljYXRpb24ugtPkkwJVEiYvdjFiZXRhMS9hdXRoL3JlZ2lzdGVyL3tzdHJhdGVneV9uYW1lfVorIiYvdjFiZXRhMS9hdXRoL3JlZ2lzdGVyL3tzdHJhdGVneV9uYW1lfToBKhK9BAoMQXV0aENhbGxiYWNrEi4ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5BdXRoQ2FsbGJhY2tSZXF1ZXN0Gi8ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5BdXRoQ2FsbGJhY2tSZXNwb25zZSLLA5JBjAMKBUF1dGhuEhhDYWxsYmFjayBmcm9tIGEgc3RyYXRlZ3ka6AJDYWxsYmFjayBmcm9tIGEgc3RyYXRlZ3kuIFRoaXMgaXMgdGhlIGVuZHBvaW50IHdoZXJlIHRoZSBzdHJhdGVneSB3aWxsIHJlZGlyZWN0IHRoZSB1c2VyIGFmdGVyIHN1Y2Nlc3NmdWwgYXV0aGVudGljYXRpb24uIFRoaXMgZW5kcG9pbnQgd2lsbCBiZSBjYWxsZWQgd2l0aCB0aGUgY29kZSBhbmQgc3RhdGUgcXVlcnkgcGFyYW1ldGVycy4gVGhlIGNvZGUgd2lsbCBiZSB1c2VkIHRvIGdldCB0aGUgYWNjZXNzIHRva2VuIGZyb20gdGhlIHN0cmF0ZWd5IGFuZCB0aGUgc3RhdGUgd2lsbCBiZSB1c2VkIHRvIGdldCB0aGUgcmV0dXJuX3RvIHVybCBmcm9tIHRoZSBzZXNzaW9uIGFuZCByZWRpcmVjdCB0aGUgdXNlciB0byB0aGF0IHVybC6C0+STAjUSFi92MWJldGExL2F1dGgvY2FsbGJhY2taGyIWL3YxYmV0YTEvYXV0aC9jYWxsYmFjazoBKhLCAwoJQXV0aFRva2VuEisucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5BdXRoVG9rZW5SZXF1ZXN0GiwucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5BdXRoVG9rZW5SZXNwb25zZSLZApJBtwIKBUF1dGhuEipHZW5lcmF0ZSBhY2Nlc3MgdG9rZW4gYnkgZ2l2ZW4gY3JlZGVudGlhbHMagQJBY2Nlc3MgdG9rZW4gY2FuIGJlIGdlbmVyYXRlZCBieSBwcm92aWRpbmcgdGhlIGNyZWRlbnRpYWxzIGluIHRoZSByZXF1ZXN0IGJvZHkvaGVhZGVyLiBUaGUgY3JlZGVudGlhbHMgY2FuIGJlIGNsaWVudCBpZCBhbmQgc2VjcmV0IG9yIHNlcnZpY2UgYWNjb3VudCBnZW5lcmF0ZWQga2V5IGp3dC4gVXNlIHRoZSBnZW5lcmF0ZWQgYWNjZXNzIHRva2VuIGluIEF1dGhvcml6YXRpb24gaGVhZGVyIHRvIGFjY2VzcyB0aGUgZnJvbnRpZXIgcmVzb3VyY2VzLoLT5JMCGCITL3YxYmV0YTEvYXV0aC90b2tlbjoBKhLBAQoKQXV0aExvZ291dBIsLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQXV0aExvZ291dFJlcXVlc3QaLS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkF1dGhMb2dvdXRSZXNwb25zZSJWkkEfCgVBdXRobhIWTG9nb3V0IGZyb20gYSBzdHJhdGVneYLT5JMCLhIUL3YxYmV0YTEvYXV0aC9sb2dvdXRaFioUL3YxYmV0YTEvYXV0aC9sb2dvdXQSrgIKD0xpc3RNZXRhU2NoZW1hcxIxLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdE1ldGFTY2hlbWFzUmVxdWVzdBoyLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdE1ldGFTY2hlbWFzUmVzcG9uc2UiswGSQZIBCgpNZXRhU2NoZW1hEhBMaXN0IG1ldGFzY2hlbWFzGnJSZXR1cm5zIGEgbGlzdCBvZiBhbGwgbWV0YXNjaGVtYXMgY29uZmlndXJlZCBvbiBhbiBpbnN0YW5jZSBsZXZlbCBpbiBGcm9udGllci4gZS5nIHVzZXIsIHByb2plY3QsIG9yZ2FuaXphdGlvbiBldGOC0+STAhcSFS92MWJldGExL21ldGEvc2NoZW1hcxKfBQoQQ3JlYXRlTWV0YVNjaGVtYRIyLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ3JlYXRlTWV0YVNjaGVtYVJlcXVlc3QaMy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNyZWF0ZU1ldGFTY2hlbWFSZXNwb25zZSKhBJJB+gMKCk1ldGFTY2hlbWESEUNyZWF0ZSBtZXRhc2NoZW1hGtgDQ3JlYXRlIGEgbmV3IG1ldGFkYXRhIHNjaGVtYS4gVGhlIG1ldGFzY2hlbWEgKipuYW1lKiogbXVzdCBiZSB1bmlxdWUgd2l0aGluIHRoZSBlbnRpcmUgRnJvbnRpZXIgaW5zdGFuY2UgYW5kIGNhbiBjb250YWluIG9ubHkgYWxwaGFudW1lcmljIGNoYXJhY3RlcnMsIGRhc2hlcyBhbmQgdW5kZXJzY29yZXMuIFRoZSBtZXRhc2NoZW1hICoqc2NoZW1hKiogbXVzdCBiZSBhIHZhbGlkIEpTT04gc2NoZW1hLlBsZWFzZSByZWZlciB0byBodHRwczovL2pzb24tc2NoZW1hLm9yZy8gdG8ga25vdyBtb3JlIGFib3V0IGpzb24gc2NoZW1hLiA8YnIvPipFeGFtcGxlOiogYHtuYW1lOiJ1c2VyIixzY2hlbWE6eyJ0eXBlIjoib2JqZWN0IiwicHJvcGVydGllcyI6eyJsYWJlbCI6eyJ0eXBlIjoib2JqZWN0IiwiYWRkaXRpb25hbFByb3BlcnRpZXMiOnsidHlwZSI6InN0cmluZyJ9fSwiZGVzY3JpcHRpb24iOnsidHlwZSI6InN0cmluZyJ9fX19YILT5JMCHSIVL3YxYmV0YTEvbWV0YS9zY2hlbWFzOgRib2R5EtMBCg1HZXRNZXRhU2NoZW1hEi8ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5HZXRNZXRhU2NoZW1hUmVxdWVzdBowLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR2V0TWV0YVNjaGVtYVJlc3BvbnNlIl+SQToKCk1ldGFTY2hlbWESDkdldCBtZXRhc2NoZW1hGhxHZXQgYSBtZXRhZGF0YSBzY2hlbWEgYnkgSUQugtPkkwIcEhovdjFiZXRhMS9tZXRhL3NjaGVtYXMve2lkfRLBBAoQVXBkYXRlTWV0YVNjaGVtYRIyLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuVXBkYXRlTWV0YVNjaGVtYVJlcXVlc3QaMy5yYXlzdGFjay5mcm9udGllci52MWJldGExLlVwZGF0ZU1ldGFTY2hlbWFSZXNwb25zZSLDA5JBlwMKCk1ldGFTY2hlbWESEVVwZGF0ZSBtZXRhc2NoZW1hGvUCVXBkYXRlIGEgbWV0YWRhdGEgc2NoZW1hLiBPbmx5IGBzY2hlbWFgIGZpZWxkIG9mIGEgbWV0YXNjaGVtYSBjYW4gYmUgdXBkYXRlZC4gVGhlIG1ldGFzY2hlbWEgYHNjaGVtYWAgbXVzdCBiZSBhIHZhbGlkIEpTT04gc2NoZW1hLlBsZWFzZSByZWZlciB0byBodHRwczovL2pzb24tc2NoZW1hLm9yZy8gdG8ga25vdyBtb3JlIGFib3V0IGpzb24gc2NoZW1hLiA8YnIvPipFeGFtcGxlOiogYHtuYW1lOiJ1c2VyIixzY2hlbWE6eyJ0eXBlIjoib2JqZWN0IiwicHJvcGVydGllcyI6eyJsYWJlbCI6eyJ0eXBlIjoib2JqZWN0IiwiYWRkaXRpb25hbFByb3BlcnRpZXMiOnsidHlwZSI6InN0cmluZyJ9fSwiZGVzY3JpcHRpb24iOnsidHlwZSI6InN0cmluZyJ9fX19YILT5JMCIhoaL3YxYmV0YTEvbWV0YS9zY2hlbWFzL3tpZH06BGJvZHkS4wQKEERlbGV0ZU1ldGFTY2hlbWESMi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkRlbGV0ZU1ldGFTY2hlbWFSZXF1ZXN0GjMucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5EZWxldGVNZXRhU2NoZW1hUmVzcG9uc2Ui5QOSQb8DCgpNZXRhU2NoZW1hEhFEZWxldGUgbWV0YXNjaGVtYRqdA0RlbGV0ZSBhIG1ldGFkYXRhIHNjaGVtYSBwZXJtYW5lbnRseS4gT25jZSBkZWxldGVkIHRoZSBtZXRhc2NoZW1hIHdvbid0IGJlIHVzZWQgdG8gdmFsaWRhdGUgdGhlIG1ldGFkYXRhLiBGb3IgZXhhbXBsZSwgaWYgYSBtZXRhc2NoZW1hKHdpdGggYGxhYmVsYCBhbmQgYGRlc2NyaXB0aW9uYCBmaWVsZHMpIGlzIHVzZWQgdG8gdmFsaWRhdGUgdGhlIG1ldGFkYXRhIG9mIGEgdXNlciwgdGhlbiBkZWxldGluZyB0aGUgbWV0YXNjaGVtYSB3aWxsIG5vdCB2YWxpZGF0ZSB0aGUgbWV0YWRhdGEgb2YgdGhlIHVzZXIgYW5kIG1ldGFkYXRhIGZpZWxkIGNhbiBjb250YWluIGFueSBrZXktdmFsdWUgcGFpcihhbmQgc2F5IGFub3RoZXIgZmllbGQgY2FsbGVkIGBmb29gIGNhbiBiZSBpbnNlcnRlZCBpbiBhIHVzZXIncyBtZXRhZGF0YSkugtPkkwIcKhovdjFiZXRhMS9tZXRhL3NjaGVtYXMve2lkfRKmAgoZTGlzdE9yZ2FuaXphdGlvbkF1ZGl0TG9ncxI7LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdE9yZ2FuaXphdGlvbkF1ZGl0TG9nc1JlcXVlc3QaPC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RPcmdhbml6YXRpb25BdWRpdExvZ3NSZXNwb25zZSKNAZJBWQoIQXVkaXRMb2cSD0xpc3QgYXVkaXQgbG9ncxo8UmV0dXJucyBhIGxpc3Qgb2YgYXVkaXQgbG9ncyBvZiBhbiBvcmdhbml6YXRpb24gaW4gRnJvbnRpZXIugtPkkwIrEikvdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L2F1ZGl0bG9ncxKUAgobQ3JlYXRlT3JnYW5pemF0aW9uQXVkaXRMb2dzEj0ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVPcmdhbml6YXRpb25BdWRpdExvZ3NSZXF1ZXN0Gj4ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVPcmdhbml6YXRpb25BdWRpdExvZ3NSZXNwb25zZSJ2kkE/CghBdWRpdExvZxIQQ3JlYXRlIGF1ZGl0IGxvZxohQ3JlYXRlIG5ldyBhdWRpdCBsb2dzIGluIGEgYmF0Y2gugtPkkwIuIikvdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L2F1ZGl0bG9nczoBKhL9AQoXR2V0T3JnYW5pemF0aW9uQXVkaXRMb2cSOS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkdldE9yZ2FuaXphdGlvbkF1ZGl0TG9nUmVxdWVzdBo6LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR2V0T3JnYW5pemF0aW9uQXVkaXRMb2dSZXNwb25zZSJrkkEyCghBdWRpdExvZxINR2V0IGF1ZGl0IGxvZxoXR2V0IGFuIGF1ZGl0IGxvZyBieSBJRC6C0+STAjASLi92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vYXVkaXRsb2dzL3tpZH0SiQIKE0Rlc2NyaWJlUHJlZmVyZW5jZXMSNS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkRlc2NyaWJlUHJlZmVyZW5jZXNSZXF1ZXN0GjYucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5EZXNjcmliZVByZWZlcmVuY2VzUmVzcG9uc2UiggGSQVwKClByZWZlcmVuY2USFERlc2NyaWJlIHByZWZlcmVuY2VzGjhSZXR1cm5zIGEgbGlzdCBvZiBhbGwgcHJlZmVyZW5jZXMgc3VwcG9ydGVkIGJ5IEZyb250aWVyLoLT5JMCHRIbL3YxYmV0YTEvcHJlZmVyZW5jZXMvdHJhaXRzEsQDCh1DcmVhdGVPcmdhbml6YXRpb25QcmVmZXJlbmNlcxI/LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ3JlYXRlT3JnYW5pemF0aW9uUHJlZmVyZW5jZXNSZXF1ZXN0GkAucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVPcmdhbml6YXRpb25QcmVmZXJlbmNlc1Jlc3BvbnNlIp8CkkHpAQoKUHJlZmVyZW5jZRIfQ3JlYXRlIG9yZ2FuaXphdGlvbiBwcmVmZXJlbmNlcxq5AUNyZWF0ZSBhIG5ldyBvcmdhbml6YXRpb24gcHJlZmVyZW5jZXMuIFRoZSBvcmdhbml6YXRpb24gcHJlZmVyZW5jZXMgKipuYW1lKiogbXVzdCBiZSB1bmlxdWUgd2l0aGluIHRoZSBvcmdhbml6YXRpb24gYW5kIGNhbiBjb250YWluIG9ubHkgYWxwaGFudW1lcmljIGNoYXJhY3RlcnMsIGRhc2hlcyBhbmQgdW5kZXJzY29yZXMugtPkkwIsIicvdjFiZXRhMS9vcmdhbml6YXRpb25zL3tpZH0vcHJlZmVyZW5jZXM6ASoSpQIKG0xpc3RPcmdhbml6YXRpb25QcmVmZXJlbmNlcxI9LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdE9yZ2FuaXphdGlvblByZWZlcmVuY2VzUmVxdWVzdBo+LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdE9yZ2FuaXphdGlvblByZWZlcmVuY2VzUmVzcG9uc2UihgGSQVQKClByZWZlcmVuY2USHUxpc3Qgb3JnYW5pemF0aW9uIHByZWZlcmVuY2VzGidMaXN0IGFuIG9yZ2FuaXphdGlvbiBwcmVmZXJlbmNlcyBieSBJRC6C0+STAikSJy92MWJldGExL29yZ2FuaXphdGlvbnMve2lkfS9wcmVmZXJlbmNlcxKcAwoYQ3JlYXRlUHJvamVjdFByZWZlcmVuY2VzEjoucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVQcm9qZWN0UHJlZmVyZW5jZXNSZXF1ZXN0GjsucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVQcm9qZWN0UHJlZmVyZW5jZXNSZXNwb25zZSKGApJB1QEKClByZWZlcmVuY2USGkNyZWF0ZSBwcm9qZWN0IHByZWZlcmVuY2VzGqoBQ3JlYXRlIGEgbmV3IHByb2plY3QgcHJlZmVyZW5jZXMuIFRoZSBwcm9qZWN0IHByZWZlcmVuY2VzICoqbmFtZSoqIG11c3QgYmUgdW5pcXVlIHdpdGhpbiB0aGUgcHJvamVjdCBhbmQgY2FuIGNvbnRhaW4gb25seSBhbHBoYW51bWVyaWMgY2hhcmFjdGVycywgZGFzaGVzIGFuZCB1bmRlcnNjb3Jlcy6C0+STAiciIi92MWJldGExL3Byb2plY3RzL3tpZH0vcHJlZmVyZW5jZXM6ASoShQIKFkxpc3RQcm9qZWN0UHJlZmVyZW5jZXMSOC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RQcm9qZWN0UHJlZmVyZW5jZXNSZXF1ZXN0GjkucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0UHJvamVjdFByZWZlcmVuY2VzUmVzcG9uc2UidpJBSQoKUHJlZmVyZW5jZRIYTGlzdCBwcm9qZWN0IHByZWZlcmVuY2VzGiFMaXN0IGEgcHJvamVjdCBwcmVmZXJlbmNlcyBieSBJRC6C0+STAiQSIi92MWJldGExL3Byb2plY3RzL3tpZH0vcHJlZmVyZW5jZXMSjAMKFkNyZWF0ZUdyb3VwUHJlZmVyZW5jZXMSOC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNyZWF0ZUdyb3VwUHJlZmVyZW5jZXNSZXF1ZXN0GjkucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVHcm91cFByZWZlcmVuY2VzUmVzcG9uc2Ui/AGSQc0BCgpQcmVmZXJlbmNlEhhDcmVhdGUgZ3JvdXAgcHJlZmVyZW5jZXMapAFDcmVhdGUgYSBuZXcgZ3JvdXAgcHJlZmVyZW5jZXMuIFRoZSBncm91cCBwcmVmZXJlbmNlcyAqKm5hbWUqKiBtdXN0IGJlIHVuaXF1ZSB3aXRoaW4gdGhlIGdyb3VwIGFuZCBjYW4gY29udGFpbiBvbmx5IGFscGhhbnVtZXJpYyBjaGFyYWN0ZXJzLCBkYXNoZXMgYW5kIHVuZGVyc2NvcmVzLoLT5JMCJSIgL3YxYmV0YTEvZ3JvdXBzL3tpZH0vcHJlZmVyZW5jZXM6ASoS+QEKFExpc3RHcm91cFByZWZlcmVuY2VzEjYucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0R3JvdXBQcmVmZXJlbmNlc1JlcXVlc3QaNy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RHcm91cFByZWZlcmVuY2VzUmVzcG9uc2UicJJBRQoKUHJlZmVyZW5jZRIWTGlzdCBncm91cCBwcmVmZXJlbmNlcxofTGlzdCBhIGdyb3VwIHByZWZlcmVuY2VzIGJ5IElELoLT5JMCIhIgL3YxYmV0YTEvZ3JvdXBzL3tpZH0vcHJlZmVyZW5jZXMShAMKFUNyZWF0ZVVzZXJQcmVmZXJlbmNlcxI3LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ3JlYXRlVXNlclByZWZlcmVuY2VzUmVxdWVzdBo4LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ3JlYXRlVXNlclByZWZlcmVuY2VzUmVzcG9uc2Ui9wGSQckBCgpQcmVmZXJlbmNlEhdDcmVhdGUgdXNlciBwcmVmZXJlbmNlcxqhAUNyZWF0ZSBhIG5ldyB1c2VyIHByZWZlcmVuY2VzLiBUaGUgdXNlciBwcmVmZXJlbmNlcyAqKm5hbWUqKiBtdXN0IGJlIHVuaXF1ZSB3aXRoaW4gdGhlIHVzZXIgYW5kIGNhbiBjb250YWluIG9ubHkgYWxwaGFudW1lcmljIGNoYXJhY3RlcnMsIGRhc2hlcyBhbmQgdW5kZXJzY29yZXMugtPkkwIkIh8vdjFiZXRhMS91c2Vycy97aWR9L3ByZWZlcmVuY2VzOgEqEvMBChNMaXN0VXNlclByZWZlcmVuY2VzEjUucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0VXNlclByZWZlcmVuY2VzUmVxdWVzdBo2LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdFVzZXJQcmVmZXJlbmNlc1Jlc3BvbnNlIm2SQUMKClByZWZlcmVuY2USFUxpc3QgdXNlciBwcmVmZXJlbmNlcxoeTGlzdCBhIHVzZXIgcHJlZmVyZW5jZXMgYnkgSUQugtPkkwIhEh8vdjFiZXRhMS91c2Vycy97aWR9L3ByZWZlcmVuY2VzEqEDChxDcmVhdGVDdXJyZW50VXNlclByZWZlcmVuY2VzEj4ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVDdXJyZW50VXNlclByZWZlcmVuY2VzUmVxdWVzdBo/LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ3JlYXRlQ3VycmVudFVzZXJQcmVmZXJlbmNlc1Jlc3BvbnNlIv8BkkHRAQoKUHJlZmVyZW5jZRIfQ3JlYXRlIGN1cnJlbnQgdXNlciBwcmVmZXJlbmNlcxqhAUNyZWF0ZSBhIG5ldyB1c2VyIHByZWZlcmVuY2VzLiBUaGUgdXNlciBwcmVmZXJlbmNlcyAqKm5hbWUqKiBtdXN0IGJlIHVuaXF1ZSB3aXRoaW4gdGhlIHVzZXIgYW5kIGNhbiBjb250YWluIG9ubHkgYWxwaGFudW1lcmljIGNoYXJhY3RlcnMsIGRhc2hlcyBhbmQgdW5kZXJzY29yZXMugtPkkwIkIh8vdjFiZXRhMS91c2Vycy9zZWxmL3ByZWZlcmVuY2VzOgEqEpACChpMaXN0Q3VycmVudFVzZXJQcmVmZXJlbmNlcxI8LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdEN1cnJlbnRVc2VyUHJlZmVyZW5jZXNSZXF1ZXN0Gj0ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0Q3VycmVudFVzZXJQcmVmZXJlbmNlc1Jlc3BvbnNlInWSQUsKClByZWZlcmVuY2USHUxpc3QgY3VycmVudCB1c2VyIHByZWZlcmVuY2VzGh5MaXN0IGEgdXNlciBwcmVmZXJlbmNlcyBieSBJRC6C0+STAiESHy92MWJldGExL3VzZXJzL3NlbGYvcHJlZmVyZW5jZXMSkwIKFENyZWF0ZUJpbGxpbmdBY2NvdW50EjYucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVCaWxsaW5nQWNjb3VudFJlcXVlc3QaNy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNyZWF0ZUJpbGxpbmdBY2NvdW50UmVzcG9uc2UiiQGSQVQKB0JpbGxpbmcSFkNyZWF0ZSBiaWxsaW5nIGFjY291bnQaMUNyZWF0ZSBhIG5ldyBiaWxsaW5nIGFjY291bnQgZm9yIGFuIG9yZ2FuaXphdGlvbi6C0+STAiwiJy92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vYmlsbGluZzoBKhLzAQoRR2V0QmlsbGluZ0FjY291bnQSMy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkdldEJpbGxpbmdBY2NvdW50UmVxdWVzdBo0LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR2V0QmlsbGluZ0FjY291bnRSZXNwb25zZSJzkkE8CgdCaWxsaW5nEhNHZXQgYmlsbGluZyBhY2NvdW50GhxHZXQgYSBiaWxsaW5nIGFjY291bnQgYnkgSUQugtPkkwIuEiwvdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L2JpbGxpbmcve2lkfRKFAgoUVXBkYXRlQmlsbGluZ0FjY291bnQSNi5yYXlzdGFjay5mcm9udGllci52MWJldGExLlVwZGF0ZUJpbGxpbmdBY2NvdW50UmVxdWVzdBo3LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuVXBkYXRlQmlsbGluZ0FjY291bnRSZXNwb25zZSJ8kkFCCgdCaWxsaW5nEhZVcGRhdGUgYmlsbGluZyBhY2NvdW50Gh9VcGRhdGUgYSBiaWxsaW5nIGFjY291bnQgYnkgSUQugtPkkwIxGiwvdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L2JpbGxpbmcve2lkfToBKhLBAgoWUmVnaXN0ZXJCaWxsaW5nQWNjb3VudBI4LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUmVnaXN0ZXJCaWxsaW5nQWNjb3VudFJlcXVlc3QaOS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJlZ2lzdGVyQmlsbGluZ0FjY291bnRSZXNwb25zZSKxAZJBbgoHQmlsbGluZxIkUmVnaXN0ZXIgYmlsbGluZyBhY2NvdW50IHRvIHByb3ZpZGVyGj1SZWdpc3RlciBhIGJpbGxpbmcgYWNjb3VudCB0byBhIHByb3ZpZGVyIGlmIGl0J3Mgbm90IGFscmVhZHkugtPkkwI6IjUvdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L2JpbGxpbmcve2lkfS9yZWdpc3RlcjoBKhKDAgoTTGlzdEJpbGxpbmdBY2NvdW50cxI1LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdEJpbGxpbmdBY2NvdW50c1JlcXVlc3QaNi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RCaWxsaW5nQWNjb3VudHNSZXNwb25zZSJ9kkFLCgdCaWxsaW5nEhVMaXN0IGJpbGxpbmcgYWNjb3VudHMaKUxpc3QgYmlsbGluZyBhY2NvdW50cyBvZiBhbiBvcmdhbml6YXRpb24ugtPkkwIpEicvdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L2JpbGxpbmcSggIKFERlbGV0ZUJpbGxpbmdBY2NvdW50EjYucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5EZWxldGVCaWxsaW5nQWNjb3VudFJlcXVlc3QaNy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkRlbGV0ZUJpbGxpbmdBY2NvdW50UmVzcG9uc2UieZJBQgoHQmlsbGluZxIWRGVsZXRlIGJpbGxpbmcgYWNjb3VudBofRGVsZXRlIGEgYmlsbGluZyBhY2NvdW50IGJ5IElELoLT5JMCLiosL3YxYmV0YTEvb3JnYW5pemF0aW9ucy97b3JnX2lkfS9iaWxsaW5nL3tpZH0SjQIKFEVuYWJsZUJpbGxpbmdBY2NvdW50EjYucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5FbmFibGVCaWxsaW5nQWNjb3VudFJlcXVlc3QaNy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkVuYWJsZUJpbGxpbmdBY2NvdW50UmVzcG9uc2UigwGSQUIKB0JpbGxpbmcSFkVuYWJsZSBiaWxsaW5nIGFjY291bnQaH0VuYWJsZSBhIGJpbGxpbmcgYWNjb3VudCBieSBJRC6C0+STAjgiMy92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vYmlsbGluZy97aWR9L2VuYWJsZToBKhLpAgoVRGlzYWJsZUJpbGxpbmdBY2NvdW50EjcucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5EaXNhYmxlQmlsbGluZ0FjY291bnRSZXF1ZXN0GjgucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5EaXNhYmxlQmlsbGluZ0FjY291bnRSZXNwb25zZSLcAZJBmQEKB0JpbGxpbmcSF0Rpc2FibGUgYmlsbGluZyBhY2NvdW50GnVEaXNhYmxlIGEgYmlsbGluZyBhY2NvdW50IGJ5IElELiBEaXNhYmxpbmcgYSBiaWxsaW5nIGFjY291bnQgZG9lc24ndCBhdXRvbWF0aWNhbGx5IGRpc2FibGUgaXQncyBhY3RpdmUgc3Vic2NyaXB0aW9ucy6C0+STAjkiNC92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vYmlsbGluZy97aWR9L2Rpc2FibGU6ASoSiwIKEUdldEJpbGxpbmdCYWxhbmNlEjMucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5HZXRCaWxsaW5nQmFsYW5jZVJlcXVlc3QaNC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkdldEJpbGxpbmdCYWxhbmNlUmVzcG9uc2UiigGSQUsKB0JpbGxpbmcSE0dldCBiaWxsaW5nIGJhbGFuY2UaK0dldCB0aGUgYmFsYW5jZSBvZiBhIGJpbGxpbmcgYWNjb3VudCBieSBJRC6C0+STAjYSNC92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vYmlsbGluZy97aWR9L2JhbGFuY2US+gEKCkhhc1RyaWFsZWQSLC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkhhc1RyaWFsZWRSZXF1ZXN0Gi0ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5IYXNUcmlhbGVkUmVzcG9uc2UijgGSQT8KB0JpbGxpbmcSC0hhcyB0cmlhbGVkGidDaGVjayBpZiBhIGJpbGxpbmcgYWNjb3VudCBoYXMgdHJpYWxlZC6C0+STAkYSRC92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vYmlsbGluZy97aWR9L3BsYW5zL3twbGFuX2lkfS90cmlhbGVkEscCCg9HZXRTdWJzY3JpcHRpb24SMS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkdldFN1YnNjcmlwdGlvblJlcXVlc3QaMi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkdldFN1YnNjcmlwdGlvblJlc3BvbnNlIswBkkE7CgxTdWJzY3JpcHRpb24SEEdldCBzdWJzY3JpcHRpb24aGUdldCBhIHN1YnNjcmlwdGlvbiBieSBJRC6C0+STAocBEkcvdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L2JpbGxpbmcve2JpbGxpbmdfaWR9L3N1YnNjcmlwdGlvbnMve2lkfVo8EjovdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L2JpbGxpbmcvc3Vic2NyaXB0aW9ucy97aWR9EuoCChJDYW5jZWxTdWJzY3JpcHRpb24SNC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNhbmNlbFN1YnNjcmlwdGlvblJlcXVlc3QaNS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNhbmNlbFN1YnNjcmlwdGlvblJlc3BvbnNlIuYBkkFBCgxTdWJzY3JpcHRpb24SE0NhbmNlbCBzdWJzY3JpcHRpb24aHENhbmNlbCBhIHN1YnNjcmlwdGlvbiBieSBJRC6C0+STApsBIk4vdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L2JpbGxpbmcve2JpbGxpbmdfaWR9L3N1YnNjcmlwdGlvbnMve2lkfS9jYW5jZWw6ASpaRiJBL3YxYmV0YTEvb3JnYW5pemF0aW9ucy97b3JnX2lkfS9iaWxsaW5nL3N1YnNjcmlwdGlvbnMve2lkfS9jYW5jZWw6ASoS0wIKEUxpc3RTdWJzY3JpcHRpb25zEjMucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0U3Vic2NyaXB0aW9uc1JlcXVlc3QaNC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RTdWJzY3JpcHRpb25zUmVzcG9uc2Ui0gGSQUwKDFN1YnNjcmlwdGlvbhISTGlzdCBzdWJzY3JpcHRpb25zGihMaXN0IHN1YnNjcmlwdGlvbnMgb2YgYSBiaWxsaW5nIGFjY291bnQugtPkkwJ9EkIvdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L2JpbGxpbmcve2JpbGxpbmdfaWR9L3N1YnNjcmlwdGlvbnNaNxI1L3YxYmV0YTEvb3JnYW5pemF0aW9ucy97b3JnX2lkfS9iaWxsaW5nL3N1YnNjcmlwdGlvbnMS9AIKEkNoYW5nZVN1YnNjcmlwdGlvbhI0LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ2hhbmdlU3Vic2NyaXB0aW9uUmVxdWVzdBo1LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ2hhbmdlU3Vic2NyaXB0aW9uUmVzcG9uc2Ui8AGSQUsKDFN1YnNjcmlwdGlvbhIYQ2hhbmdlIHN1YnNjcmlwdGlvbiBwbGFuGiFDaGFuZ2UgYSBzdWJzY3JpcHRpb24gcGxhbiBieSBJRC6C0+STApsBIk4vdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L2JpbGxpbmcve2JpbGxpbmdfaWR9L3N1YnNjcmlwdGlvbnMve2lkfS9jaGFuZ2U6ASpaRiJBL3YxYmV0YTEvb3JnYW5pemF0aW9ucy97b3JnX2lkfS9iaWxsaW5nL3N1YnNjcmlwdGlvbnMve2lkfS9jaGFuZ2U6ASoS3AIKElVwZGF0ZVN1YnNjcmlwdGlvbhI0LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuVXBkYXRlU3Vic2NyaXB0aW9uUmVxdWVzdBo1LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuVXBkYXRlU3Vic2NyaXB0aW9uUmVzcG9uc2Ui2AGSQUEKDFN1YnNjcmlwdGlvbhITVXBkYXRlIHN1YnNjcmlwdGlvbhocVXBkYXRlIGEgc3Vic2NyaXB0aW9uIGJ5IElELoLT5JMCjQEaRy92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vYmlsbGluZy97YmlsbGluZ19pZH0vc3Vic2NyaXB0aW9ucy97aWR9OgEqWj8iOi92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vYmlsbGluZy9zdWJzY3JpcHRpb25zL3tpZH06ASoS2AEKDUNyZWF0ZVByb2R1Y3QSLy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNyZWF0ZVByb2R1Y3RSZXF1ZXN0GjAucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVQcm9kdWN0UmVzcG9uc2UiZJJBPQoHUHJvZHVjdBIOQ3JlYXRlIHByb2R1Y3QaIkNyZWF0ZSBhIG5ldyBwcm9kdWN0IGZvciBwbGF0Zm9ybS6C0+STAh4iGS92MWJldGExL2JpbGxpbmcvcHJvZHVjdHM6ASoSwAEKCkdldFByb2R1Y3QSLC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkdldFByb2R1Y3RSZXF1ZXN0Gi0ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5HZXRQcm9kdWN0UmVzcG9uc2UiVZJBLAoHUHJvZHVjdBILR2V0IHByb2R1Y3QaFEdldCBhIHByb2R1Y3QgYnkgSUQugtPkkwIgEh4vdjFiZXRhMS9iaWxsaW5nL3Byb2R1Y3RzL3tpZH0SzwEKDExpc3RQcm9kdWN0cxIuLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdFByb2R1Y3RzUmVxdWVzdBovLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdFByb2R1Y3RzUmVzcG9uc2UiXpJBOgoHUHJvZHVjdBINTGlzdCBwcm9kdWN0cxogTGlzdCBhbGwgcHJvZHVjdHMgb2YgYSBwbGF0Zm9ybS6C0+STAhsSGS92MWJldGExL2JpbGxpbmcvcHJvZHVjdHMS0gEKDVVwZGF0ZVByb2R1Y3QSLy5yYXlzdGFjay5mcm9udGllci52MWJldGExLlVwZGF0ZVByb2R1Y3RSZXF1ZXN0GjAucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5VcGRhdGVQcm9kdWN0UmVzcG9uc2UiXpJBMgoHUHJvZHVjdBIOVXBkYXRlIHByb2R1Y3QaF1VwZGF0ZSBhIHByb2R1Y3QgYnkgSUQugtPkkwIjGh4vdjFiZXRhMS9iaWxsaW5nL3Byb2R1Y3RzL3tpZH06ASoS2AEKDUNyZWF0ZUZlYXR1cmUSLy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNyZWF0ZUZlYXR1cmVSZXF1ZXN0GjAucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVGZWF0dXJlUmVzcG9uc2UiZJJBPQoHRmVhdHVyZRIOQ3JlYXRlIGZlYXR1cmUaIkNyZWF0ZSBhIG5ldyBmZWF0dXJlIGZvciBwbGF0Zm9ybS6C0+STAh4iGS92MWJldGExL2JpbGxpbmcvZmVhdHVyZXM6ASoSwAEKCkdldEZlYXR1cmUSLC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkdldEZlYXR1cmVSZXF1ZXN0Gi0ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5HZXRGZWF0dXJlUmVzcG9uc2UiVZJBLAoHRmVhdHVyZRILR2V0IGZlYXR1cmUaFEdldCBhIGZlYXR1cmUgYnkgSUQugtPkkwIgEh4vdjFiZXRhMS9iaWxsaW5nL2ZlYXR1cmVzL3tpZH0S0gEKDVVwZGF0ZUZlYXR1cmUSLy5yYXlzdGFjay5mcm9udGllci52MWJldGExLlVwZGF0ZUZlYXR1cmVSZXF1ZXN0GjAucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5VcGRhdGVGZWF0dXJlUmVzcG9uc2UiXpJBMgoHRmVhdHVyZRIOVXBkYXRlIGZlYXR1cmUaF1VwZGF0ZSBhIGZlYXR1cmUgYnkgSUQugtPkkwIjGh4vdjFiZXRhMS9iaWxsaW5nL2ZlYXR1cmVzL3tpZH06ASoSwAEKDExpc3RGZWF0dXJlcxIuLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdEZlYXR1cmVzUmVxdWVzdBovLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdEZlYXR1cmVzUmVzcG9uc2UiT5JBKwoHRmVhdHVyZRINTGlzdCBmZWF0dXJlcxoRTGlzdCBhbGwgZmVhdHVyZXOC0+STAhsSGS92MWJldGExL2JpbGxpbmcvZmVhdHVyZXMSwwEKCkNyZWF0ZVBsYW4SLC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNyZWF0ZVBsYW5SZXF1ZXN0Gi0ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVQbGFuUmVzcG9uc2UiWJJBNAoEUGxhbhILQ3JlYXRlIHBsYW4aH0NyZWF0ZSBhIG5ldyBwbGFuIGZvciBwbGF0Zm9ybS6C0+STAhsiFi92MWJldGExL2JpbGxpbmcvcGxhbnM6ASoSrAEKCUxpc3RQbGFucxIrLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdFBsYW5zUmVxdWVzdBosLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdFBsYW5zUmVzcG9uc2UiRJJBIwoEUGxhbhIKTGlzdCBwbGFucxoPTGlzdCBhbGwgcGxhbnMugtPkkwIYEhYvdjFiZXRhMS9iaWxsaW5nL3BsYW5zEqsBCgdHZXRQbGFuEikucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5HZXRQbGFuUmVxdWVzdBoqLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR2V0UGxhblJlc3BvbnNlIkmSQSMKBFBsYW4SCEdldCBwbGFuGhFHZXQgYSBwbGFuIGJ5IElELoLT5JMCHRIbL3YxYmV0YTEvYmlsbGluZy9wbGFucy97aWR9Er0BCgpVcGRhdGVQbGFuEiwucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5VcGRhdGVQbGFuUmVxdWVzdBotLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuVXBkYXRlUGxhblJlc3BvbnNlIlKSQSkKBFBsYW4SC1VwZGF0ZSBwbGFuGhRVcGRhdGUgYSBwbGFuIGJ5IElELoLT5JMCIBobL3YxYmV0YTEvYmlsbGluZy9wbGFucy97aWR9OgEqEoUDCg5DcmVhdGVDaGVja291dBIwLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ3JlYXRlQ2hlY2tvdXRSZXF1ZXN0GjEucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVDaGVja291dFJlc3BvbnNlIo0CkkGIAQoIQ2hlY2tvdXQSIkNoZWNrb3V0IGEgcHJvZHVjdCBvciBzdWJzY3JpcHRpb24aWENoZWNrb3V0IGEgcHJvZHVjdCB0byBidXkgaXQgb25lIHRpbWUgb3Igc3RhcnQgYSBzdWJzY3JpcHRpb24gcGxhbiBvbiBhIGJpbGxpbmcgYWNjb3VudC6C0+STAnsiPi92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vYmlsbGluZy97YmlsbGluZ19pZH0vY2hlY2tvdXRzOgEqWjYiMS92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vYmlsbGluZy9jaGVja291dHM6ASoStwIKDUxpc3RDaGVja291dHMSLy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RDaGVja291dHNSZXF1ZXN0GjAucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0Q2hlY2tvdXRzUmVzcG9uc2UiwgGSQUQKCENoZWNrb3V0Eg5MaXN0IGNoZWNrb3V0cxooTGlzdCBhbGwgY2hlY2tvdXRzIG9mIGEgYmlsbGluZyBhY2NvdW50LoLT5JMCdRI+L3YxYmV0YTEvb3JnYW5pemF0aW9ucy97b3JnX2lkfS9iaWxsaW5nL3tiaWxsaW5nX2lkfS9jaGVja291dHNaMxIxL3YxYmV0YTEvb3JnYW5pemF0aW9ucy97b3JnX2lkfS9iaWxsaW5nL2NoZWNrb3V0cxKmAgoLR2V0Q2hlY2tvdXQSLS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkdldENoZWNrb3V0UmVxdWVzdBouLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR2V0Q2hlY2tvdXRSZXNwb25zZSK3AZJBLwoIQ2hlY2tvdXQSDEdldCBjaGVja291dBoVR2V0IGEgY2hlY2tvdXQgYnkgSUQugtPkkwJ/EkMvdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L2JpbGxpbmcve2JpbGxpbmdfaWR9L2NoZWNrb3V0cy97aWR9WjgSNi92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vYmlsbGluZy9jaGVja291dHMve2lkfRLcAgoXQ2hlY2tGZWF0dXJlRW50aXRsZW1lbnQSOS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNoZWNrRmVhdHVyZUVudGl0bGVtZW50UmVxdWVzdBo6LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ2hlY2tGZWF0dXJlRW50aXRsZW1lbnRSZXNwb25zZSLJAZJBVgoLRW50aXRsZW1lbnQSEUNoZWNrIGVudGl0bGVtZW50GjRDaGVjayBpZiBhIGJpbGxpbmcgYWNjb3VudCBpcyBlbnRpdGxlZCB0byBhIGZlYXR1cmUugtPkkwJqIjovdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L2JpbGxpbmcve2JpbGxpbmdfaWR9L2NoZWNrOgEqWikiJC92MWJldGExL29yZ2FuaXphdGlvbnMvYmlsbGluZy9jaGVjazoBKhKfAgoWQ2hlY2tDcmVkaXRFbnRpdGxlbWVudBI4LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ2hlY2tDcmVkaXRFbnRpdGxlbWVudFJlcXVlc3QaOS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNoZWNrQ3JlZGl0RW50aXRsZW1lbnRSZXNwb25zZSKPAZJBawoLRW50aXRsZW1lbnQSGENoZWNrIGNyZWRpdCBlbnRpdGxlbWVudBpCQ2hlY2sgaWYgYSBiaWxsaW5nIGFjY291bnQgaGFzIGVub3VnaCBjcmVkaXRzIHRvIGNvdmVyIHRoZSBhbW91bnQugtPkkwIbIhYvdjFiZXRhMS9iaWxsaW5nL2NoZWNrOgEqEskCChJDcmVhdGVCaWxsaW5nVXNhZ2USNC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNyZWF0ZUJpbGxpbmdVc2FnZVJlcXVlc3QaNS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNyZWF0ZUJpbGxpbmdVc2FnZVJlc3BvbnNlIsUBkkFQCgVVc2FnZRIUQ3JlYXRlIGJpbGxpbmcgdXNhZ2UaMVJlcG9ydCBhIG5ldyBiaWxsaW5nIHVzYWdlIGZvciBhIGJpbGxpbmcgYWNjb3VudC6C0+STAmwiOy92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vYmlsbGluZy97YmlsbGluZ19pZH0vdXNhZ2VzOgEqWioiJS92MWJldGExL29yZ2FuaXphdGlvbnMvYmlsbGluZy91c2FnZXM6ASoS7AIKF0xpc3RCaWxsaW5nVHJhbnNhY3Rpb25zEjkucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0QmlsbGluZ1RyYW5zYWN0aW9uc1JlcXVlc3QaOi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RCaWxsaW5nVHJhbnNhY3Rpb25zUmVzcG9uc2Ui2QGSQVUKC1RyYW5zYWN0aW9uEhlMaXN0IGJpbGxpbmcgdHJhbnNhY3Rpb25zGitMaXN0IGFsbCB0cmFuc2FjdGlvbnMgb2YgYSBiaWxsaW5nIGFjY291bnQugtPkkwJ7EkEvdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L2JpbGxpbmcve2JpbGxpbmdfaWR9L3RyYW5zYWN0aW9uc1o2EjQvdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L2JpbGxpbmcvdHJhbnNhY3Rpb25zEu8CChhUb3RhbERlYml0ZWRUcmFuc2FjdGlvbnMSOi5yYXlzdGFjay5mcm9udGllci52MWJldGExLlRvdGFsRGViaXRlZFRyYW5zYWN0aW9uc1JlcXVlc3QaOy5yYXlzdGFjay5mcm9udGllci52MWJldGExLlRvdGFsRGViaXRlZFRyYW5zYWN0aW9uc1Jlc3BvbnNlItkBkkF/CgtUcmFuc2FjdGlvbhI3U3VtIG9mIGFtb3VudCBvZiBkZWJpdGVkIHRyYW5zYWN0aW9ucyBpbmNsdWRpbmcgcmVmdW5kcxo3U3VtIG9mIGFtb3VudCBvZiBkZWJpdGVkIHRyYW5zYWN0aW9ucyBpbmNsdWRpbmcgcmVmdW5kc4LT5JMCURJPL3YxYmV0YTEvb3JnYW5pemF0aW9ucy97b3JnX2lkfS9iaWxsaW5nL3tiaWxsaW5nX2lkfS9kZWJpdGVkX3RyYW5zYWN0aW9uc190b3RhbBKvAgoMTGlzdEludm9pY2VzEi4ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0SW52b2ljZXNSZXF1ZXN0Gi8ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0SW52b2ljZXNSZXNwb25zZSK9AZJBQQoHSW52b2ljZRINTGlzdCBpbnZvaWNlcxonTGlzdCBhbGwgaW52b2ljZXMgb2YgYSBiaWxsaW5nIGFjY291bnQugtPkkwJzEj0vdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L2JpbGxpbmcve2JpbGxpbmdfaWR9L2ludm9pY2VzWjISMC92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vYmlsbGluZy9pbnZvaWNlcxLiAgoSR2V0VXBjb21pbmdJbnZvaWNlEjQucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5HZXRVcGNvbWluZ0ludm9pY2VSZXF1ZXN0GjUucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5HZXRVcGNvbWluZ0ludm9pY2VSZXNwb25zZSLeAZJBTwoHSW52b2ljZRIUR2V0IHVwY29taW5nIGludm9pY2UaLkdldCB0aGUgdXBjb21pbmcgaW52b2ljZSBvZiBhIGJpbGxpbmcgYWNjb3VudC6C0+STAoUBEkYvdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L2JpbGxpbmcve2JpbGxpbmdfaWR9L2ludm9pY2VzL3VwY29taW5nWjsSOS92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vYmlsbGluZy9pbnZvaWNlcy91cGNvbWluZxKcAgoWQmlsbGluZ1dlYmhvb2tDYWxsYmFjaxI4LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQmlsbGluZ1dlYmhvb2tDYWxsYmFja1JlcXVlc3QaOS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkJpbGxpbmdXZWJob29rQ2FsbGJhY2tSZXNwb25zZSKMAZJBTgoHV2ViaG9vaxIWQWNjZXB0IEJpbGxpbmcgd2ViaG9vaxorQWNjZXB0cyBhIEJpbGxpbmcgd2ViaG9vayBhbmQgcHJvY2Vzc2VzIGl0LoLT5JMCNSItL3YxYmV0YTEvYmlsbGluZy93ZWJob29rcy9jYWxsYmFjay97cHJvdmlkZXJ9OgRib2R5EpECChRDcmVhdGVQcm9zcGVjdFB1YmxpYxI2LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ3JlYXRlUHJvc3BlY3RQdWJsaWNSZXF1ZXN0GjcucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVQcm9zcGVjdFB1YmxpY1Jlc3BvbnNlIocBkkFnCghQcm9zcGVjdBIPQ3JlYXRlIHByb3NwZWN0GkpDcmVhdGUgcHJvc3BlY3QgZm9yIGdpdmVuIGVtYWlsIGFuZCBhY3Rpdml0eS4gQXZhaWxhYmxlIGZvciBwdWJsaWMgYWNjZXNzLoLT5JMCFyISL3YxYmV0YTEvcHJvc3BlY3RzOgEqQvINCiNpby5yYXlzdGFjay5wcm90b24uZnJvbnRpZXIudjFiZXRhMUIIRnJvbnRpZXJaO2dpdGh1Yi5jb20vcmF5c3RhY2svcHJvdG9uL2Zyb250aWVyL3YxYmV0YTE7ZnJvbnRpZXJ2MWJldGExkkGCDRIeChVGcm9udGllciBHZW5lcmFsIEFQSXMyBTAuMi4wGg4xMjcuMC4wLjE6NzQwMCoBATIQYXBwbGljYXRpb24vanNvbjoQYXBwbGljYXRpb24vanNvblI8CgMyMDASNQobT0sgLSBBIHN1Y2Nlc3NmdWwgcmVzcG9uc2UuEhYKFBoSLmdvb2dsZS5ycGMuU3RhdHVzUmkKAzQwMBJiCkhCYWQgUmVxdWVzdCAtIFRoZSByZXF1ZXN0IHdhcyBtYWxmb3JtZWQgb3IgY29udGFpbmVkIGludmFsaWQgcGFyYW1ldGVycy4SFgoUGhIuZ29vZ2xlLnJwYy5TdGF0dXNSSgoDNDAxEkMKKVVuYXV0aG9yaXplZCAtIEF1dGhlbnRpY2F0aW9uIGlzIHJlcXVpcmVkEhYKFBoSLmdvb2dsZS5ycGMuU3RhdHVzUmEKAzQwMxJaCkBGb3JiaWRkZW4gLSBVc2VyIGRvZXMgbm90IGhhdmUgcGVybWlzc2lvbiB0byBhY2Nlc3MgdGhlIHJlc291cmNlEhYKFBoSLmdvb2dsZS5ycGMuU3RhdHVzUlEKAzQwNBJKCjBOb3QgRm91bmQgLSBUaGUgcmVxdWVzdGVkIHJlc291cmNlIHdhcyBub3QgZm91bmQSFgoUGhIuZ29vZ2xlLnJwYy5TdGF0dXNSdQoDNTAwEm4KVEludGVybmFsIFNlcnZlciBFcnJvci4gUmV0dXJuZWQgd2hlbiB0aGVyZXMgaXMgc29tZXRoaW5nIHdyb25nIHdpdGggRnJvbnRpZXIgc2VydmVyLhIWChQaEi5nb29nbGUucnBjLlN0YXR1c1q2AQpECgVCYXNpYxI7CAESH0NsaWVudCBJRC9TZWNyZXQgYXV0aGVudGljYXRpb24aFEJhc2ljIEF1dGhlbnRpY2F0aW9uIAIKbgoGQmVhcmVyEmQIAhJPVGhlIEF1dGhvcml6YXRpb24gaGVhZGVyIG11c3QgYmUgc2V0IHRvIEJlYXJlciBmb2xsb3dlZCBieSBhIHNwYWNlIGFuZCBhIHRva2VuLhoNQXV0aG9yaXphdGlvbiACYhMKBwoFQmFzaWMKCAoGQmVhcmVyagYKBFVzZXJqggMKBUdyb3VwEvgCR3JvdXBzIGluIEZyb250aWVyIGFyZSB1c2VkIHRvIG1hbmFnZSB1c2VycyBhbmQgdGhlaXIgYWNjZXNzIHRvIHJlc291cmNlcy4gRWFjaCBncm91cCBoYXMgYSB1bmlxdWUgbmFtZSBhbmQgaWQgdGhhdCBjYW4gYmUgdXNlZCB0byBncmFudCBhY2Nlc3MgdG8gcmVzb3VyY2VzLiBXaGVuIGEgdXNlciBpcyBhZGRlZCB0byBhIGdyb3VwLCB0aGV5IGluaGVyaXQgdGhlIGFjY2VzcyBwZXJtaXNzaW9ucyB0aGF0IGhhdmUgYmVlbiBncmFudGVkIHRvIHRoZSBncm91cC4gVGhpcyBhbGxvd3MgeW91IHRvIG1hbmFnZSBhY2Nlc3MgdG8gcmVzb3VyY2VzIGF0IHNjYWxlLCB3aXRob3V0IGhhdmluZyB0byBncmFudCBwZXJtaXNzaW9ucyB0byBpbmRpdmlkdWFsIHVzZXJzLmoGCgRSb2xlag4KDE9yZ2FuaXphdGlvbmoJCgdQcm9qZWN0aggKBlBvbGljeWoKCghSZWxhdGlvbmoMCgpQZXJtaXNzaW9uagsKCU5hbWVzcGFjZWoKCghSZXNvdXJjZWobCgVBdXRoehISQXV0aG9yaXphdGlvbiBBUElzahwKBUF1dGhuEhNBdXRoZW50aWNhdGlvbiBBUElzapACCgpNZXRhU2NoZW1hEoECTWFuYWdlIE1ldGFkYXRhIFNjaGVtYXMgd2hpY2ggYXJlIHVzZWQgdG8gdmFsaWRhdGUgbWV0YWRhdGEgb2JqZWN0IHdoaWxlIGNyZWF0aW5nIHVzZXIvb3JnL2dyb3VwL3JvbGUuIEZyb250aWVyIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVzIGRlZmF1bHQgbWV0YXNjaGVtYXMgd2l0aCBgbGFiZWxgIGFuZCBgZGVzY3JpcHRpb25gIGZpZWxkcy4gWW91IGNhbiBhbHNvIHVwZGF0ZSB0aGVzZSBtZXRhc2NoZW1hcyB0byBhZGQvZWRpdCBtb3JlIGZpZWxkcy5iBnByb3RvMw", [file_google_api_annotations, file_google_api_field_behavior, file_google_protobuf_struct, file_google_protobuf_timestamp, file_protoc_gen_openapiv2_options_annotations, file_raystack_frontier_v1beta1_models, file_validate_validate]);
|
|
21
|
+
fileDesc("CihyYXlzdGFjay9mcm9udGllci92MWJldGExL2Zyb250aWVyLnByb3RvEhlyYXlzdGFjay5mcm9udGllci52MWJldGExIokCChlCaWxsaW5nQWNjb3VudFJlcXVlc3RCb2R5EgwKBG5hbWUYASABKAkSDQoFZW1haWwYAiABKAkSDQoFcGhvbmUYAyABKAkSQgoHYWRkcmVzcxgEIAEoCzIxLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQmlsbGluZ0FjY291bnQuQWRkcmVzcxIQCghjdXJyZW5jeRgFIAEoCRI/Cgh0YXhfZGF0YRgGIAMoCzItLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQmlsbGluZ0FjY291bnQuVGF4EikKCG1ldGFkYXRhGAogASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdCKVAQobQ3JlYXRlQmlsbGluZ0FjY291bnRSZXF1ZXN0EhcKBm9yZ19pZBgBIAEoCUIH+kIEcgIQARJMCgRib2R5GAIgASgLMjQucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5CaWxsaW5nQWNjb3VudFJlcXVlc3RCb2R5Qgj6QgWKAQIQARIPCgdvZmZsaW5lGAMgASgIImIKHENyZWF0ZUJpbGxpbmdBY2NvdW50UmVzcG9uc2USQgoPYmlsbGluZ19hY2NvdW50GAEgASgLMikucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5CaWxsaW5nQWNjb3VudCKUAQoYR2V0QmlsbGluZ0FjY291bnRSZXF1ZXN0EhMKAmlkGAEgASgJQgf6QgRyAhABEhcKBm9yZ19pZBgCIAEoCUIH+kIEcgIQARIcChR3aXRoX3BheW1lbnRfbWV0aG9kcxgDIAEoCBIcChR3aXRoX2JpbGxpbmdfZGV0YWlscxgEIAEoCBIOCgZleHBhbmQYZSADKAki7QEKGUdldEJpbGxpbmdBY2NvdW50UmVzcG9uc2USQgoPYmlsbGluZ19hY2NvdW50GAEgASgLMikucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5CaWxsaW5nQWNjb3VudBJBCg9wYXltZW50X21ldGhvZHMYAiADKAsyKC5yYXlzdGFjay5mcm9udGllci52MWJldGExLlBheW1lbnRNZXRob2QSSQoPYmlsbGluZ19kZXRhaWxzGAMgASgLMjAucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5CaWxsaW5nQWNjb3VudERldGFpbHMikAEKG1VwZGF0ZUJpbGxpbmdBY2NvdW50UmVxdWVzdBIUCgJpZBgBIAEoCUII+kIFcgOwAQESFwoGb3JnX2lkGAIgASgJQgf6QgRyAhABEkIKBGJvZHkYAyABKAsyNC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkJpbGxpbmdBY2NvdW50UmVxdWVzdEJvZHkiYgocVXBkYXRlQmlsbGluZ0FjY291bnRSZXNwb25zZRJCCg9iaWxsaW5nX2FjY291bnQYASABKAsyKS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkJpbGxpbmdBY2NvdW50Ik4KHVJlZ2lzdGVyQmlsbGluZ0FjY291bnRSZXF1ZXN0EhQKAmlkGAEgASgJQgj6QgVyA7ABARIXCgZvcmdfaWQYAiABKAlCB/pCBHICEAEiIAoeUmVnaXN0ZXJCaWxsaW5nQWNjb3VudFJlc3BvbnNlIkUKGkxpc3RCaWxsaW5nQWNjb3VudHNSZXF1ZXN0EhcKBm9yZ19pZBgBIAEoCUIH+kIEcgIQARIOCgZleHBhbmQYZSADKAkiYgobTGlzdEJpbGxpbmdBY2NvdW50c1Jlc3BvbnNlEkMKEGJpbGxpbmdfYWNjb3VudHMYASADKAsyKS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkJpbGxpbmdBY2NvdW50IkwKG0RlbGV0ZUJpbGxpbmdBY2NvdW50UmVxdWVzdBIUCgJpZBgBIAEoCUII+kIFcgOwAQESFwoGb3JnX2lkGAIgASgJQgf6QgRyAhABIh4KHERlbGV0ZUJpbGxpbmdBY2NvdW50UmVzcG9uc2UiTAobRW5hYmxlQmlsbGluZ0FjY291bnRSZXF1ZXN0EhQKAmlkGAEgASgJQgj6QgVyA7ABARIXCgZvcmdfaWQYAiABKAlCB/pCBHICEAEiHgocRW5hYmxlQmlsbGluZ0FjY291bnRSZXNwb25zZSJNChxEaXNhYmxlQmlsbGluZ0FjY291bnRSZXF1ZXN0EhQKAmlkGAEgASgJQgj6QgVyA7ABARIXCgZvcmdfaWQYAiABKAlCB/pCBHICEAEiHwodRGlzYWJsZUJpbGxpbmdBY2NvdW50UmVzcG9uc2UiSQoYR2V0QmlsbGluZ0JhbGFuY2VSZXF1ZXN0EhQKAmlkGAEgASgJQgj6QgVyA7ABARIXCgZvcmdfaWQYAiABKAlCB/pCBHICEAEiXwoZR2V0QmlsbGluZ0JhbGFuY2VSZXNwb25zZRJCCgdiYWxhbmNlGAEgASgLMjEucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5CaWxsaW5nQWNjb3VudC5CYWxhbmNlIlwKEUhhc1RyaWFsZWRSZXF1ZXN0EhQKAmlkGAEgASgJQgj6QgVyA7ABARIXCgZvcmdfaWQYAiABKAlCB/pCBHICEAESGAoHcGxhbl9pZBgDIAEoCUIH+kIEcgIQASIlChJIYXNUcmlhbGVkUmVzcG9uc2USDwoHdHJpYWxlZBgBIAEoCCKYAQoZQ3JlYXRlQmlsbGluZ1VzYWdlUmVxdWVzdBIOCgZvcmdfaWQYASABKAkSIQoKYmlsbGluZ19pZBgCIAEoCUINGAH6QghyBrABAdABARIWCgpwcm9qZWN0X2lkGAQgASgJQgIYARIwCgZ1c2FnZXMYAyADKAsyIC5yYXlzdGFjay5mcm9udGllci52MWJldGExLlVzYWdlIhwKGkNyZWF0ZUJpbGxpbmdVc2FnZVJlc3BvbnNlIvsBCh5MaXN0QmlsbGluZ1RyYW5zYWN0aW9uc1JlcXVlc3QSFwoGb3JnX2lkGAEgASgJQgf6QgRyAhADEiEKCmJpbGxpbmdfaWQYAiABKAlCDRgB+kIIcgawAQHQAQESLQoFc2luY2UYAyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQgIYARIvCgtzdGFydF9yYW5nZRgEIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLQoJZW5kX3JhbmdlGAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIOCgZleHBhbmQYZSADKAkiZgofTGlzdEJpbGxpbmdUcmFuc2FjdGlvbnNSZXNwb25zZRJDCgx0cmFuc2FjdGlvbnMYASADKAsyLS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkJpbGxpbmdUcmFuc2FjdGlvbiJdCh9Ub3RhbERlYml0ZWRUcmFuc2FjdGlvbnNSZXF1ZXN0EhcKBm9yZ19pZBgBIAEoCUIH+kIEcgIQAxIhCgpiaWxsaW5nX2lkGAIgASgJQg0YAfpCCHIGsAEB0AEBImYKIFRvdGFsRGViaXRlZFRyYW5zYWN0aW9uc1Jlc3BvbnNlEkIKB2RlYml0ZWQYASABKAsyMS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkJpbGxpbmdBY2NvdW50LkJhbGFuY2UifgoWR2V0U3Vic2NyaXB0aW9uUmVxdWVzdBIcCgZvcmdfaWQYASABKAlCDBgB+kIHcgUQA9ABARIhCgpiaWxsaW5nX2lkGAIgASgJQg0YAfpCCHIGsAEB0AEBEhMKAmlkGAMgASgJQgf6QgRyAhABEg4KBmV4cGFuZBhlIAMoCSJYChdHZXRTdWJzY3JpcHRpb25SZXNwb25zZRI9CgxzdWJzY3JpcHRpb24YASABKAsyJy5yYXlzdGFjay5mcm9udGllci52MWJldGExLlN1YnNjcmlwdGlvbiKDAQoYTGlzdFN1YnNjcmlwdGlvbnNSZXF1ZXN0EhcKBm9yZ19pZBgBIAEoCUIH+kIEcgIQAxIhCgpiaWxsaW5nX2lkGAIgASgJQg0YAfpCCHIGsAEB0AEBEg0KBXN0YXRlGAMgASgJEgwKBHBsYW4YBCABKAkSDgoGZXhwYW5kGGUgAygJIlsKGUxpc3RTdWJzY3JpcHRpb25zUmVzcG9uc2USPgoNc3Vic2NyaXB0aW9ucxgBIAMoCzInLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuU3Vic2NyaXB0aW9uIpwBChlVcGRhdGVTdWJzY3JpcHRpb25SZXF1ZXN0EhwKBm9yZ19pZBgBIAEoCUIMGAH6QgdyBRAD0AEBEiEKCmJpbGxpbmdfaWQYAiABKAlCDRgB+kIIcgawAQHQAQESEwoCaWQYAyABKAlCB/pCBHICEAESKQoIbWV0YWRhdGEYFCABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0IlsKGlVwZGF0ZVN1YnNjcmlwdGlvblJlc3BvbnNlEj0KDHN1YnNjcmlwdGlvbhgBIAEoCzInLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuU3Vic2NyaXB0aW9uIrUDChlDaGFuZ2VTdWJzY3JpcHRpb25SZXF1ZXN0EhwKBm9yZ19pZBgBIAEoCUIMGAH6QgdyBRAD0AEBEiEKCmJpbGxpbmdfaWQYAiABKAlCDRgB+kIIcgawAQHQAQESEwoCaWQYAyABKAlCB/pCBHICEAESEAoEcGxhbhgEIAEoCUICGAESFQoJaW1tZWRpYXRlGAUgASgIQgIYARJWCgtwbGFuX2NoYW5nZRgGIAEoCzI/LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ2hhbmdlU3Vic2NyaXB0aW9uUmVxdWVzdC5QbGFuQ2hhbmdlSAASWAoMcGhhc2VfY2hhbmdlGAcgASgLMkAucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DaGFuZ2VTdWJzY3JpcHRpb25SZXF1ZXN0LlBoYXNlQ2hhbmdlSAAaLQoKUGxhbkNoYW5nZRIMCgRwbGFuGAEgASgJEhEKCWltbWVkaWF0ZRgCIAEoCBouCgtQaGFzZUNoYW5nZRIfChdjYW5jZWxfdXBjb21pbmdfY2hhbmdlcxgBIAEoCEIICgZjaGFuZ2UiWgoaQ2hhbmdlU3Vic2NyaXB0aW9uUmVzcG9uc2USPAoFcGhhc2UYASABKAsyLS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlN1YnNjcmlwdGlvbi5QaGFzZSKEAQoZQ2FuY2VsU3Vic2NyaXB0aW9uUmVxdWVzdBIcCgZvcmdfaWQYASABKAlCDBgB+kIHcgUQA9ABARIhCgpiaWxsaW5nX2lkGAIgASgJQg0YAfpCCHIGsAEB0AEBEhMKAmlkGAMgASgJQgf6QgRyAhABEhEKCWltbWVkaWF0ZRgEIAEoCCIcChpDYW5jZWxTdWJzY3JpcHRpb25SZXNwb25zZSISChBMaXN0UGxhbnNSZXF1ZXN0IkMKEUxpc3RQbGFuc1Jlc3BvbnNlEi4KBXBsYW5zGAEgAygLMh8ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5QbGFuIoUBCh5DaGVja0ZlYXR1cmVFbnRpdGxlbWVudFJlcXVlc3QSDgoGb3JnX2lkGAEgASgJEiEKCmJpbGxpbmdfaWQYAiABKAlCDRgB+kIIcgawAQHQAQESFgoKcHJvamVjdF9pZBgEIAEoCUICGAESGAoHZmVhdHVyZRgDIAEoCUIH+kIEcgIQASIxCh9DaGVja0ZlYXR1cmVFbnRpdGxlbWVudFJlc3BvbnNlEg4KBnN0YXR1cxgBIAEoCCJRCh1DaGVja0NyZWRpdEVudGl0bGVtZW50UmVxdWVzdBIXCgZvcmdfaWQYASABKAlCB/pCBHICEAMSFwoGYW1vdW50GAIgASgDQgf6QgQiAiAAIjAKHkNoZWNrQ3JlZGl0RW50aXRsZW1lbnRSZXNwb25zZRIOCgZzdGF0dXMYASABKAgi1AIKFUNyZWF0ZUNoZWNrb3V0UmVxdWVzdBIXCgZvcmdfaWQYASABKAlCB/pCBHICEAMSIQoKYmlsbGluZ19pZBgCIAEoCUINGAH6QghyBrABAdABARITCgtzdWNjZXNzX3VybBgDIAEoCRISCgpjYW5jZWxfdXJsGAQgASgJEk4KEXN1YnNjcmlwdGlvbl9ib2R5GAogASgLMjMucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DaGVja291dFN1YnNjcmlwdGlvbkJvZHkSRAoMcHJvZHVjdF9ib2R5GAsgASgLMi4ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DaGVja291dFByb2R1Y3RCb2R5EkAKCnNldHVwX2JvZHkYDCABKAsyLC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNoZWNrb3V0U2V0dXBCb2R5Il4KFkNyZWF0ZUNoZWNrb3V0UmVzcG9uc2USRAoQY2hlY2tvdXRfc2Vzc2lvbhgBIAEoCzIqLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ2hlY2tvdXRTZXNzaW9uIlIKFExpc3RDaGVja291dHNSZXF1ZXN0EhcKBm9yZ19pZBgBIAEoCUIH+kIEcgIQAxIhCgpiaWxsaW5nX2lkGAIgASgJQg0YAfpCCHIGsAEB0AEBIl4KFUxpc3RDaGVja291dHNSZXNwb25zZRJFChFjaGVja291dF9zZXNzaW9ucxgBIAMoCzIqLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ2hlY2tvdXRTZXNzaW9uImoKEkdldENoZWNrb3V0UmVxdWVzdBIcCgZvcmdfaWQYASABKAlCDBgB+kIHcgUQA9ABARIhCgpiaWxsaW5nX2lkGAIgASgJQg0YAfpCCHIGsAEB0AEBEhMKAmlkGAMgASgJQgf6QgRyAhABIlsKE0dldENoZWNrb3V0UmVzcG9uc2USRAoQY2hlY2tvdXRfc2Vzc2lvbhgBIAEoCzIqLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ2hlY2tvdXRTZXNzaW9uIvsCChJQcm9kdWN0UmVxdWVzdEJvZHkSFQoEbmFtZRgBIAEoCUIH+kIEcgIQAxINCgV0aXRsZRgCIAEoCRITCgtkZXNjcmlwdGlvbhgDIAEoCRIPCgdwbGFuX2lkGAQgASgJEjAKBnByaWNlcxgFIAMoCzIgLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUHJpY2USNAoIYmVoYXZpb3IYCCABKAlCIvpCH3IdUgViYXNpY1IHY3JlZGl0c1IIcGVyX3NlYXTQAQESNAoIZmVhdHVyZXMYCSADKAsyIi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkZlYXR1cmUSSgoPYmVoYXZpb3JfY29uZmlnGAogASgLMjEucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Qcm9kdWN0LkJlaGF2aW9yQ29uZmlnEikKCG1ldGFkYXRhGBQgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEoECAcQCCJdChRDcmVhdGVQcm9kdWN0UmVxdWVzdBJFCgRib2R5GAEgASgLMi0ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Qcm9kdWN0UmVxdWVzdEJvZHlCCPpCBYoBAhABIkwKFUNyZWF0ZVByb2R1Y3RSZXNwb25zZRIzCgdwcm9kdWN0GAEgASgLMiIucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Qcm9kdWN0IigKEUdldFByb2R1Y3RSZXF1ZXN0EhMKAmlkGAEgASgJQgf6QgRyAhABIkkKEkdldFByb2R1Y3RSZXNwb25zZRIzCgdwcm9kdWN0GAEgASgLMiIucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Qcm9kdWN0IhUKE0xpc3RQcm9kdWN0c1JlcXVlc3QiTAoUTGlzdFByb2R1Y3RzUmVzcG9uc2USNAoIcHJvZHVjdHMYASADKAsyIi5yYXlzdGFjay5mcm9udGllci52MWJldGExLlByb2R1Y3QiaAoUVXBkYXRlUHJvZHVjdFJlcXVlc3QSEwoCaWQYASABKAlCB/pCBHICEAESOwoEYm9keRgCIAEoCzItLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUHJvZHVjdFJlcXVlc3RCb2R5IkwKFVVwZGF0ZVByb2R1Y3RSZXNwb25zZRIzCgdwcm9kdWN0GAEgASgLMiIucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Qcm9kdWN0InoKEkZlYXR1cmVSZXF1ZXN0Qm9keRIVCgRuYW1lGAEgASgJQgf6QgRyAhADEg0KBXRpdGxlGAIgASgJEhMKC3Byb2R1Y3RfaWRzGAMgAygJEikKCG1ldGFkYXRhGBQgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdCJdChRDcmVhdGVGZWF0dXJlUmVxdWVzdBJFCgRib2R5GAEgASgLMi0ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5GZWF0dXJlUmVxdWVzdEJvZHlCCPpCBYoBAhABIkwKFUNyZWF0ZUZlYXR1cmVSZXNwb25zZRIzCgdmZWF0dXJlGAEgASgLMiIucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5GZWF0dXJlIigKEUdldEZlYXR1cmVSZXF1ZXN0EhMKAmlkGAEgASgJQgf6QgRyAhABIkkKEkdldEZlYXR1cmVSZXNwb25zZRIzCgdmZWF0dXJlGAEgASgLMiIucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5GZWF0dXJlImgKFFVwZGF0ZUZlYXR1cmVSZXF1ZXN0EhMKAmlkGAEgASgJQgf6QgRyAhABEjsKBGJvZHkYAiABKAsyLS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkZlYXR1cmVSZXF1ZXN0Qm9keSJMChVVcGRhdGVGZWF0dXJlUmVzcG9uc2USMwoHZmVhdHVyZRgBIAEoCzIiLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRmVhdHVyZSIVChNMaXN0RmVhdHVyZXNSZXF1ZXN0IkwKFExpc3RGZWF0dXJlc1Jlc3BvbnNlEjQKCGZlYXR1cmVzGAEgAygLMiIucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5GZWF0dXJlIoMCCg9QbGFuUmVxdWVzdEJvZHkSDAoEbmFtZRgBIAEoCRINCgV0aXRsZRgCIAEoCRITCgtkZXNjcmlwdGlvbhgDIAEoCRI0Cghwcm9kdWN0cxgEIAMoCzIiLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUHJvZHVjdBIvCghpbnRlcnZhbBgFIAEoCUId+kIachhSA2RheVIEd2Vla1IFbW9udGhSBHllYXISGAoQb25fc3RhcnRfY3JlZGl0cxgGIAEoAxISCgp0cmlhbF9kYXlzGAcgASgDEikKCG1ldGFkYXRhGBQgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdCJXChFDcmVhdGVQbGFuUmVxdWVzdBJCCgRib2R5GAEgASgLMioucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5QbGFuUmVxdWVzdEJvZHlCCPpCBYoBAhABIkMKEkNyZWF0ZVBsYW5SZXNwb25zZRItCgRwbGFuGAEgASgLMh8ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5QbGFuIiUKDkdldFBsYW5SZXF1ZXN0EhMKAmlkGAEgASgJQgf6QgRyAhABIkAKD0dldFBsYW5SZXNwb25zZRItCgRwbGFuGAEgASgLMh8ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5QbGFuImIKEVVwZGF0ZVBsYW5SZXF1ZXN0EhMKAmlkGAEgASgJQgf6QgRyAhABEjgKBGJvZHkYAiABKAsyKi5yYXlzdGFjay5mcm9udGllci52MWJldGExLlBsYW5SZXF1ZXN0Qm9keSJDChJVcGRhdGVQbGFuUmVzcG9uc2USLQoEcGxhbhgBIAEoCzIfLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUGxhbiJ+ChNMaXN0SW52b2ljZXNSZXF1ZXN0EhcKBm9yZ19pZBgBIAEoCUIH+kIEcgIQAxIhCgpiaWxsaW5nX2lkGAIgASgJQg0YAfpCCHIGsAEB0AEBEhsKE25vbnplcm9fYW1vdW50X29ubHkYAyABKAgSDgoGZXhwYW5kGGUgAygJIkwKFExpc3RJbnZvaWNlc1Jlc3BvbnNlEjQKCGludm9pY2VzGAEgAygLMiIucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5JbnZvaWNlIlcKGUdldFVwY29taW5nSW52b2ljZVJlcXVlc3QSFwoGb3JnX2lkGAEgASgJQgf6QgRyAhADEiEKCmJpbGxpbmdfaWQYAiABKAlCDRgB+kIIcgawAQHQAQEiUQoaR2V0VXBjb21pbmdJbnZvaWNlUmVzcG9uc2USMwoHaW52b2ljZRgBIAEoCzIiLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuSW52b2ljZSIQCg5HZXRKV0tzUmVxdWVzdCJGCg9HZXRKV0tzUmVzcG9uc2USMwoEa2V5cxgBIAMoCzIlLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuSlNPTldlYktleSITChFBdXRoTG9nb3V0UmVxdWVzdCIUChJBdXRoTG9nb3V0UmVzcG9uc2UieQoTQXV0aENhbGxiYWNrUmVxdWVzdBIVCg1zdHJhdGVneV9uYW1lGAEgASgJEg0KBXN0YXRlGAIgASgJEgwKBGNvZGUYAyABKAkSLgoNc3RhdGVfb3B0aW9ucxgEIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QiFgoUQXV0aENhbGxiYWNrUmVzcG9uc2Ui3gUKE0F1dGhlbnRpY2F0ZVJlcXVlc3QSZAoNc3RyYXRlZ3lfbmFtZRgBIAEoCUJNkkFKMkhOYW1lIG9mIHRoZSBzdHJhdGVneSB0byB1c2UgZm9yIGF1dGhlbnRpY2F0aW9uLjxici8+ICpFeGFtcGxlOiogYGdvb2dsZWASagoQcmVkaXJlY3Rfb25zdGFydBgCIAEoCEJQkkFNMktJZiBzZXQgdG8gdHJ1ZSwgbG9jYXRpb24gaGVhZGVyIHdpbGwgYmUgc2V0IGZvciByZWRpcmVjdCB0byBzdGFydCBhdXRoIGZsb3cSeAoJcmV0dXJuX3RvGAMgASgJQmWSQWIyYFVSTCB0byByZWRpcmVjdCBhZnRlciBzdWNjZXNzZnVsIGF1dGhlbnRpY2F0aW9uLjxici8+ICpFeGFtcGxlOipgImh0dHBzOi8vZnJvbnRpZXIuZXhhbXBsZS5jb20iYBJuCgVlbWFpbBgEIAEoCUJfkkFcMlpFbWFpbCBvZiB0aGUgdXNlciB0byBhdXRoZW50aWNhdGUuIFVzZWQgZm9yIG1hZ2ljIGxpbmtzLjxici8+ICpFeGFtcGxlOipgZXhhbXBsZUBhY21lLm9yZ2ASigIKDGNhbGxiYWNrX3VybBgFIAEoCULzAZJB7wEy7AFIb3N0IHdoaWNoIHNob3VsZCBoYW5kbGUgdGhlIGNhbGwgdG8gZmluaXNoIGF1dGhlbnRpY2F0aW9uIGZsb3csIGZvciBtb3N0IGNhc2VzIGl0IGNvdWxkIGJlIGhvc3Qgb2YgZnJvbnRpZXIgYnV0IGluIGNhc2Ugb2YgcHJveGllcywgdGhpcyB3aWxsIGJlIHByb3h5IHB1YmxpYyBlbmRwb2ludC48YnIvPiAqRXhhbXBsZToqYGh0dHBzOi8vZnJvbnRpZXIuZXhhbXBsZS5jb20vdjFiZXRhMS9hdXRoL2NhbGxiYWNrYCJnChRBdXRoZW50aWNhdGVSZXNwb25zZRIQCghlbmRwb2ludBgBIAEoCRINCgVzdGF0ZRgCIAEoCRIuCg1zdGF0ZV9vcHRpb25zGAMgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdCJFCgxBdXRoU3RyYXRlZ3kSDAoEbmFtZRgBIAEoCRInCgZwYXJhbXMYAiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0IhsKGUxpc3RBdXRoU3RyYXRlZ2llc1JlcXVlc3QiWQoaTGlzdEF1dGhTdHJhdGVnaWVzUmVzcG9uc2USOwoKc3RyYXRlZ2llcxgBIAMoCzInLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQXV0aFN0cmF0ZWd5ImMKEEF1dGhUb2tlblJlcXVlc3QSEgoKZ3JhbnRfdHlwZRgBIAEoCRIRCgljbGllbnRfaWQYAiABKAkSFQoNY2xpZW50X3NlY3JldBgDIAEoCRIRCglhc3NlcnRpb24YBCABKAkiPQoRQXV0aFRva2VuUmVzcG9uc2USFAoMYWNjZXNzX3Rva2VuGAEgASgJEhIKCnRva2VuX3R5cGUYAiABKAki8wsKD1VzZXJSZXF1ZXN0Qm9keRLGAgoEbmFtZRgBIAEoCUK3ApJBjAIyiQJUaGUgbmFtZSBvZiB0aGUgdXNlci4gVGhlIG5hbWUgbXVzdCBiZSB1bmlxdWUgd2l0aGluIHRoZSBlbnRpcmUgRnJvbnRpZXIgaW5zdGFuY2UuIFRoZSBuYW1lIGNhbiBjb250YWluIG9ubHkgYWxwaGFudW1lcmljIGNoYXJhY3RlcnMsIGRhc2hlcyBhbmQgdW5kZXJzY29yZXMgYW5kIG11c3Qgc3RhcnQgd2l0aCBhIGxldHRlci4gSWYgbm90IHByb3ZpZGVkLCBGcm9udGllciBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlcyBhIG5hbWUgZnJvbSB0aGUgdXNlciBlbWFpbC4g+kIkciIyIF4oW2EtekEtWl1bYS16QS1aMC05LV9dezMsNjR9KT8kEpwBCgVlbWFpbBgCIAEoCUKMAZJBfjJ8VGhlIGVtYWlsIG9mIHRoZSB1c2VyLiBUaGUgZW1haWwgbXVzdCBiZSB1bmlxdWUgd2l0aGluIHRoZSBlbnRpcmUgRnJvbnRpZXIgaW5zdGFuY2UuPGJyLz4qRXhhbXBsZToqYCJqb2huLmRvZUByYXlzdGFjay5vcmciYOJBAQL6QgRyAmABEtgDCghtZXRhZGF0YRgDIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RCrAOSQagDMqUDTWV0YWRhdGEgb2JqZWN0IGZvciB1c2VycyB0aGF0IGNhbiBob2xkIGtleSB2YWx1ZSBwYWlycyBwcmUtZGVmaW5lZCBpbiBVc2VyIE1ldGFzY2hlbWEuIFRoZSBtZXRhZGF0YSBvYmplY3QgY2FuIGJlIHVzZWQgdG8gc3RvcmUgYXJiaXRyYXJ5IGluZm9ybWF0aW9uIGFib3V0IHRoZSB1c2VyIHN1Y2ggYXMgbGFiZWwsIGRlc2NyaXB0aW9uIGV0Yy4gQnkgZGVmYXVsdCB0aGUgdXNlciBtZXRhc2NoZW1hIGNvbnRhaW5zIGxhYmVscyBhbmQgZGVzY3JpcHRpb25zIGZvciB0aGUgdXNlci4gVXBkYXRlIHRoZSBzYW1lIHRvIGFkZCBtb3JlIGZpZWxkcyB0byB0aGUgdXNlciBtZXRhZGF0YSBvYmplY3QuIDxici8+KkV4YW1wbGU6KmB7ImxhYmVsIjogeyJrZXkxIjogInZhbHVlMSJ9LCAiZGVzY3JpcHRpb24iOiAiVXNlciBEZXNjcmlwdGlvbiJ9YBKpAQoFdGl0bGUYBCABKAlCmQGSQZUBMpIBVGhlIHRpdGxlIGNhbiBjb250YWluIGFueSBVVEYtOCBjaGFyYWN0ZXIsIHVzZWQgdG8gcHJvdmlkZSBhIGh1bWFuLXJlYWRhYmxlIG5hbWUgZm9yIHRoZSB1c2VyLiBDYW4gYWxzbyBiZSBsZWZ0IGVtcHR5LiA8YnIvPipFeGFtcGxlOipgIkpvaG4gRG9lImAS8AIKBmF2YXRhchgFIAEoCULfApJBjwIy0wFUaGUgYXZhdGFyIGlzIGJhc2U2NCBlbmNvZGVkIGltYWdlIGRhdGEgb2YgdGhlIHVzZXIuIENhbiBhbHNvIGJlIGxlZnQgZW1wdHkuIFRoZSBpbWFnZSBzaG91bGQgYmUgbGVzcyB0aGFuIDIwMEtCLiBTaG91bGQgZm9sbG93IHRoZSByZWdleCBwYXR0ZXJuIGBeZGF0YTppbWFnZS8ocG5nfGpwZ3xqcGVnfGdpZik7YmFzZTY0LChbYS16QS1aMC05Ky9dKz17MCwyfSkrJGAuSjciZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFCQUFBQUEi+kJJckcYkKEPMj5eZGF0YTppbWFnZS8ocG5nfGpwZ3xqcGVnfGdpZik7YmFzZTY0LChbYS16QS1aMC05Ky9dKz17MCwyfSkrJNABASLHAwoQTGlzdFVzZXJzUmVxdWVzdBJlCglwYWdlX3NpemUYASABKAVCUpJBRjJEVGhlIG1heGltdW0gbnVtYmVyIG9mIHVzZXJzIHRvIHJldHVybiBwZXIgcGFnZS4gVGhlIGRlZmF1bHQgaXMgMTAwMC76QgYaBCgBQAESTAoIcGFnZV9udW0YAiABKAVCOpJBLjIsVGhlIHBhZ2UgbnVtYmVyIHRvIHJldHVybi4gVGhlIGRlZmF1bHQgaXMgMS76QgYaBCgBQAESQQoHa2V5d29yZBgDIAEoCUIwkkEtMitUaGUga2V5d29yZCB0byBzZWFyY2ggZm9yIGluIG5hbWUgb3IgZW1haWwuEjwKBm9yZ19pZBgEIAEoCUIskkEpMidUaGUgb3JnYW5pemF0aW9uIElEIHRvIGZpbHRlciB1c2VycyBieS4SMQoIZ3JvdXBfaWQYBSABKAlCH5JBHDIaVGhlIGdyb3VwIGlkIHRvIGZpbHRlciBieS4SSgoFc3RhdGUYBiABKAlCO5JBODI2VGhlIHN0YXRlIHRvIGZpbHRlciBieS4gSXQgY2FuIGJlIGVuYWJsZWQgb3IgZGlzYWJsZWQuIlIKEUxpc3RVc2Vyc1Jlc3BvbnNlEg0KBWNvdW50GAEgASgFEi4KBXVzZXJzGAIgAygLMh8ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Vc2VyIlcKEUNyZWF0ZVVzZXJSZXF1ZXN0EkIKBGJvZHkYASABKAsyKi5yYXlzdGFjay5mcm9udGllci52MWJldGExLlVzZXJSZXF1ZXN0Qm9keUII+kIFigECEAEiQwoSQ3JlYXRlVXNlclJlc3BvbnNlEi0KBHVzZXIYASABKAsyHy5yYXlzdGFjay5mcm9udGllci52MWJldGExLlVzZXIiOwoeTGlzdE9yZ2FuaXphdGlvbnNCeVVzZXJSZXF1ZXN0EgoKAmlkGAEgASgJEg0KBXN0YXRlGAIgASgJIqcBCh9MaXN0T3JnYW5pemF0aW9uc0J5VXNlclJlc3BvbnNlEj4KDW9yZ2FuaXphdGlvbnMYASADKAsyJy5yYXlzdGFjay5mcm9udGllci52MWJldGExLk9yZ2FuaXphdGlvbhJEChNqb2luYWJsZV92aWFfZG9tYWluGAIgAygLMicucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Pcmdhbml6YXRpb24iNgolTGlzdE9yZ2FuaXphdGlvbnNCeUN1cnJlbnRVc2VyUmVxdWVzdBINCgVzdGF0ZRgBIAEoCSKuAQomTGlzdE9yZ2FuaXphdGlvbnNCeUN1cnJlbnRVc2VyUmVzcG9uc2USPgoNb3JnYW5pemF0aW9ucxgBIAMoCzInLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuT3JnYW5pemF0aW9uEkQKE2pvaW5hYmxlX3ZpYV9kb21haW4YAiADKAsyJy5yYXlzdGFjay5mcm9udGllci52MWJldGExLk9yZ2FuaXphdGlvbiInChlMaXN0UHJvamVjdHNCeVVzZXJSZXF1ZXN0EgoKAmlkGAEgASgJIlIKGkxpc3RQcm9qZWN0c0J5VXNlclJlc3BvbnNlEjQKCHByb2plY3RzGAEgAygLMiIucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Qcm9qZWN0IrMCCiBMaXN0UHJvamVjdHNCeUN1cnJlbnRVc2VyUmVxdWVzdBIOCgZvcmdfaWQYASABKAkSGAoQd2l0aF9wZXJtaXNzaW9ucxgCIAMoCRIVCg1ub25faW5oZXJpdGVkGAMgASgIEhkKEXdpdGhfbWVtYmVyX2NvdW50GAQgASgIEmUKCXBhZ2Vfc2l6ZRgFIAEoBUJSkkFGMkRUaGUgbWF4aW11bSBudW1iZXIgb2YgdXNlcnMgdG8gcmV0dXJuIHBlciBwYWdlLiBUaGUgZGVmYXVsdCBpcyAxMDAwLvpCBhoEKAFAARJMCghwYWdlX251bRgGIAEoBUI6kkEuMixUaGUgcGFnZSBudW1iZXIgdG8gcmV0dXJuLiBUaGUgZGVmYXVsdCBpcyAxLvpCBhoEKAFAASL+AQohTGlzdFByb2plY3RzQnlDdXJyZW50VXNlclJlc3BvbnNlEjQKCHByb2plY3RzGAEgAygLMiIucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Qcm9qZWN0El0KDGFjY2Vzc19wYWlycxgCIAMoCzJHLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdFByb2plY3RzQnlDdXJyZW50VXNlclJlc3BvbnNlLkFjY2Vzc1BhaXISDQoFY291bnQYAyABKAUaNQoKQWNjZXNzUGFpchISCgpwcm9qZWN0X2lkGAEgASgJEhMKC3Blcm1pc3Npb25zGAIgAygJIh8KEUVuYWJsZVVzZXJSZXF1ZXN0EgoKAmlkGAEgASgJIhQKEkVuYWJsZVVzZXJSZXNwb25zZSIgChJEaXNhYmxlVXNlclJlcXVlc3QSCgoCaWQYASABKAkiFQoTRGlzYWJsZVVzZXJSZXNwb25zZSIfChFEZWxldGVVc2VyUmVxdWVzdBIKCgJpZBgBIAEoCSIUChJEZWxldGVVc2VyUmVzcG9uc2UiQAoPR2V0VXNlclJlc3BvbnNlEi0KBHVzZXIYASABKAsyHy5yYXlzdGFjay5mcm9udGllci52MWJldGExLlVzZXIiFwoVR2V0Q3VycmVudFVzZXJSZXF1ZXN0IoQBChZHZXRDdXJyZW50VXNlclJlc3BvbnNlEi0KBHVzZXIYASABKAsyHy5yYXlzdGFjay5mcm9udGllci52MWJldGExLlVzZXISOwoLc2VydmljZXVzZXIYAiABKAsyJi5yYXlzdGFjay5mcm9udGllci52MWJldGExLlNlcnZpY2VVc2VyIkMKElVwZGF0ZVVzZXJSZXNwb25zZRItCgR1c2VyGAEgASgLMh8ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Vc2VyIkoKGVVwZGF0ZUN1cnJlbnRVc2VyUmVzcG9uc2USLQoEdXNlchgBIAEoCzIfLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuVXNlciJZChFVcGRhdGVVc2VyUmVxdWVzdBIKCgJpZBgBIAEoCRI4CgRib2R5GAIgASgLMioucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Vc2VyUmVxdWVzdEJvZHkiHAoOR2V0VXNlclJlcXVlc3QSCgoCaWQYASABKAkiYwocTGlzdEN1cnJlbnRVc2VyR3JvdXBzUmVxdWVzdBIOCgZvcmdfaWQYASABKAkSGAoQd2l0aF9wZXJtaXNzaW9ucxgCIAMoCRIZChF3aXRoX21lbWJlcl9jb3VudBgDIAEoCCLhAQodTGlzdEN1cnJlbnRVc2VyR3JvdXBzUmVzcG9uc2USMAoGZ3JvdXBzGAEgAygLMiAucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Hcm91cBJZCgxhY2Nlc3NfcGFpcnMYAiADKAsyQy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RDdXJyZW50VXNlckdyb3Vwc1Jlc3BvbnNlLkFjY2Vzc1BhaXIaMwoKQWNjZXNzUGFpchIQCghncm91cF9pZBgBIAEoCRITCgtwZXJtaXNzaW9ucxgCIAMoCSLYAQoVTGlzdFVzZXJHcm91cHNSZXF1ZXN0Ej0KAmlkGAEgASgJQjGSQS4yLFRoZSB1bmlxdWUgSUQgb2YgdGhlIHVzZXIgdG8gZ2V0IGdyb3VwcyBmb3IuEnoKBm9yZ19pZBgDIAEoCUJqkkFnMmVUaGUgb3JnYW5pemF0aW9uIElEIHRvIGZpbHRlciBncm91cHMgYnkuIElmIG5vdCBwcm92aWRlZCwgZ3JvdXBzIGZyb20gYWxsIG9yZ2FuaXphdGlvbnMgYXJlIHJldHVybmVkLkoECAIQAyJKChZMaXN0VXNlckdyb3Vwc1Jlc3BvbnNlEjAKBmdyb3VwcxgBIAMoCzIgLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR3JvdXAiVAoYVXBkYXRlQ3VycmVudFVzZXJSZXF1ZXN0EjgKBGJvZHkYASABKAsyKi5yYXlzdGFjay5mcm9udGllci52MWJldGExLlVzZXJSZXF1ZXN0Qm9keSJaChpMaXN0VXNlckludml0YXRpb25zUmVxdWVzdBI8CgJpZBgBIAEoCUIwkkEtMitUaGUgdXNlciBlbWFpbCB0byBsaXN0IHRoZSBpbnZpdGF0aW9ucyBmb3IuIlkKG0xpc3RVc2VySW52aXRhdGlvbnNSZXNwb25zZRI6CgtpbnZpdGF0aW9ucxgBIAMoCzIlLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuSW52aXRhdGlvbiIjCiFMaXN0Q3VycmVudFVzZXJJbnZpdGF0aW9uc1JlcXVlc3QilwEKIkxpc3RDdXJyZW50VXNlckludml0YXRpb25zUmVzcG9uc2USOgoLaW52aXRhdGlvbnMYASADKAsyJS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkludml0YXRpb24SNQoEb3JncxgCIAMoCzInLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuT3JnYW5pemF0aW9uIrYBChdMaXN0U2VydmljZVVzZXJzUmVxdWVzdBJPCgZvcmdfaWQYASABKAlCP5JBMTIvVGhlIG9yZ2FuaXphdGlvbiBJRCB0byBmaWx0ZXIgc2VydmljZSB1c2VycyBieS7iQQEC+kIEcgIQAxJKCgVzdGF0ZRgCIAEoCUI7kkE4MjZUaGUgc3RhdGUgdG8gZmlsdGVyIGJ5LiBJdCBjYW4gYmUgZW5hYmxlZCBvciBkaXNhYmxlZC4iWAoYTGlzdFNlcnZpY2VVc2Vyc1Jlc3BvbnNlEjwKDHNlcnZpY2V1c2VycxgBIAMoCzImLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuU2VydmljZVVzZXIikQEKFlNlcnZpY2VVc2VyUmVxdWVzdEJvZHkSTAoFdGl0bGUYASABKAlCPZJBOjInVXNlciBmcmllbmRseSBuYW1lIG9mIHRoZSBzZXJ2aWNlIHVzZXIuSg8iT3JkZXIgU2VydmljZSISKQoIbWV0YWRhdGEYAiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0IrYBChhDcmVhdGVTZXJ2aWNlVXNlclJlcXVlc3QSPwoEYm9keRgBIAEoCzIxLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuU2VydmljZVVzZXJSZXF1ZXN0Qm9keRJZCgZvcmdfaWQYAiABKAlCSZJBOzI5VGhlIG9yZ2FuaXphdGlvbiBJRCB0byB3aGljaCB0aGUgc2VydmljZSB1c2VyIGJlbG9uZ3MgdG8u4kEBAvpCBHICEAMiWAoZQ3JlYXRlU2VydmljZVVzZXJSZXNwb25zZRI7CgtzZXJ2aWNldXNlchgBIAEoCzImLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuU2VydmljZVVzZXIirgEKFUdldFNlcnZpY2VVc2VyUmVxdWVzdBI6CgJpZBgBIAEoCUIukkErMilUaGUgdW5pcXVlIElEIG9mIHRoZSBzZXJ2aWNlIHVzZXIgdG8gZ2V0LhJZCgZvcmdfaWQYAiABKAlCSZJBOzI5VGhlIG9yZ2FuaXphdGlvbiBJRCB0byB3aGljaCB0aGUgc2VydmljZSB1c2VyIGJlbG9uZ3MgdG8u4kEBAvpCBHICEAMiVQoWR2V0U2VydmljZVVzZXJSZXNwb25zZRI7CgtzZXJ2aWNldXNlchgBIAEoCzImLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuU2VydmljZVVzZXIitAEKGERlbGV0ZVNlcnZpY2VVc2VyUmVxdWVzdBI9CgJpZBgBIAEoCUIxkkEuMixUaGUgdW5pcXVlIElEIG9mIHRoZSBzZXJ2aWNlIHVzZXIgdG8gZGVsZXRlLhJZCgZvcmdfaWQYAiABKAlCSZJBOzI5VGhlIG9yZ2FuaXphdGlvbiBJRCB0byB3aGljaCB0aGUgc2VydmljZSB1c2VyIGJlbG9uZ3MgdG8u4kEBAvpCBHICEAMiGwoZRGVsZXRlU2VydmljZVVzZXJSZXNwb25zZSLQAQobQ3JlYXRlU2VydmljZVVzZXJKV0tSZXF1ZXN0EkcKAmlkGAEgASgJQjuSQTgyNlRoZSB1bmlxdWUgSUQgb2YgdGhlIHNlcnZpY2UgdXNlciB0byBjcmVhdGUgYSBrZXkgZm9yLhINCgV0aXRsZRgCIAEoCRJZCgZvcmdfaWQYAyABKAlCSZJBOzI5VGhlIG9yZ2FuaXphdGlvbiBJRCB0byB3aGljaCB0aGUgc2VydmljZSB1c2VyIGJlbG9uZ3MgdG8u4kEBAvpCBHICEAMiVQocQ3JlYXRlU2VydmljZVVzZXJKV0tSZXNwb25zZRI1CgNrZXkYASABKAsyKC5yYXlzdGFjay5mcm9udGllci52MWJldGExLktleUNyZWRlbnRpYWwi8gEKGEdldFNlcnZpY2VVc2VySldLUmVxdWVzdBJECgJpZBgBIAEoCUI4kkE1MjNUaGUgdW5pcXVlIElEIG9mIHRoZSBzZXJ2aWNlIHVzZXIgdG8gZ2V0IGEga2V5IGZvci4SNQoGa2V5X2lkGAIgASgJQiWSQSIyIFRoZSB1bmlxdWUgSUQgb2YgdGhlIGtleSB0byBnZXQuElkKBm9yZ19pZBgDIAEoCUJJkkE7MjlUaGUgb3JnYW5pemF0aW9uIElEIHRvIHdoaWNoIHRoZSBzZXJ2aWNlIHVzZXIgYmVsb25ncyB0by7iQQEC+kIEcgIQAyJQChlHZXRTZXJ2aWNlVXNlckpXS1Jlc3BvbnNlEjMKBGtleXMYASADKAsyJS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkpTT05XZWJLZXkivQEKGkxpc3RTZXJ2aWNlVXNlckpXS3NSZXF1ZXN0EkQKAmlkGAEgASgJQjiSQTUyM1RoZSB1bmlxdWUgSUQgb2YgdGhlIHNlcnZpY2UgdXNlciB0byBsaXN0IGtleXMgZm9yLhJZCgZvcmdfaWQYAiABKAlCSZJBOzI5VGhlIG9yZ2FuaXphdGlvbiBJRCB0byB3aGljaCB0aGUgc2VydmljZSB1c2VyIGJlbG9uZ3MgdG8u4kEBAvpCBHICEAMiVgobTGlzdFNlcnZpY2VVc2VySldLc1Jlc3BvbnNlEjcKBGtleXMYASADKAsyKS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlNlcnZpY2VVc2VySldLIvsBChtEZWxldGVTZXJ2aWNlVXNlckpXS1JlcXVlc3QSRwoCaWQYASABKAlCO5JBODI2VGhlIHVuaXF1ZSBJRCBvZiB0aGUgc2VydmljZSB1c2VyIHRvIGRlbGV0ZSBhIGtleSBmb3IuEjgKBmtleV9pZBgCIAEoCUIokkElMiNUaGUgdW5pcXVlIElEIG9mIHRoZSBrZXkgdG8gZGVsZXRlLhJZCgZvcmdfaWQYAyABKAlCSZJBOzI5VGhlIG9yZ2FuaXphdGlvbiBJRCB0byB3aGljaCB0aGUgc2VydmljZSB1c2VyIGJlbG9uZ3MgdG8u4kEBAvpCBHICEAMiHgocRGVsZXRlU2VydmljZVVzZXJKV0tSZXNwb25zZSLXAQoiQ3JlYXRlU2VydmljZVVzZXJDcmVkZW50aWFsUmVxdWVzdBJHCgJpZBgBIAEoCUI7kkE4MjZUaGUgdW5pcXVlIElEIG9mIHRoZSBzZXJ2aWNlIHVzZXIgdG8gY3JlYXRlIGEga2V5IGZvci4SDQoFdGl0bGUYAiABKAkSWQoGb3JnX2lkGAMgASgJQkmSQTsyOVRoZSBvcmdhbml6YXRpb24gSUQgdG8gd2hpY2ggdGhlIHNlcnZpY2UgdXNlciBiZWxvbmdzIHRvLuJBAQL6QgRyAhADImIKI0NyZWF0ZVNlcnZpY2VVc2VyQ3JlZGVudGlhbFJlc3BvbnNlEjsKBnNlY3JldBgBIAEoCzIrLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuU2VjcmV0Q3JlZGVudGlhbCLHAQohTGlzdFNlcnZpY2VVc2VyQ3JlZGVudGlhbHNSZXF1ZXN0EkcKAmlkGAEgASgJQjuSQTgyNlRoZSB1bmlxdWUgSUQgb2YgdGhlIHNlcnZpY2UgdXNlciB0byBsaXN0IHNlY3JldHMgZm9yLhJZCgZvcmdfaWQYAiABKAlCSZJBOzI5VGhlIG9yZ2FuaXphdGlvbiBJRCB0byB3aGljaCB0aGUgc2VydmljZSB1c2VyIGJlbG9uZ3MgdG8u4kEBAvpCBHICEAMiYgoiTGlzdFNlcnZpY2VVc2VyQ3JlZGVudGlhbHNSZXNwb25zZRI8CgdzZWNyZXRzGAEgAygLMisucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5TZWNyZXRDcmVkZW50aWFsIosCCiJEZWxldGVTZXJ2aWNlVXNlckNyZWRlbnRpYWxSZXF1ZXN0EkoKAmlkGAEgASgJQj6SQTsyOVRoZSB1bmlxdWUgSUQgb2YgdGhlIHNlcnZpY2UgdXNlciB0byBkZWxldGUgYSBzZWNyZXQgZm9yLhI+CglzZWNyZXRfaWQYAiABKAlCK5JBKDImVGhlIHVuaXF1ZSBJRCBvZiB0aGUgc2VjcmV0IHRvIGRlbGV0ZS4SWQoGb3JnX2lkGAMgASgJQkmSQTsyOVRoZSBvcmdhbml6YXRpb24gSUQgdG8gd2hpY2ggdGhlIHNlcnZpY2UgdXNlciBiZWxvbmdzIHRvLuJBAQL6QgRyAhADIiUKI0RlbGV0ZVNlcnZpY2VVc2VyQ3JlZGVudGlhbFJlc3BvbnNlItQBCh1DcmVhdGVTZXJ2aWNlVXNlclRva2VuUmVxdWVzdBJJCgJpZBgBIAEoCUI9kkE6MjhUaGUgdW5pcXVlIElEIG9mIHRoZSBzZXJ2aWNlIHVzZXIgdG8gY3JlYXRlIGEgdG9rZW4gZm9yLhINCgV0aXRsZRgCIAEoCRJZCgZvcmdfaWQYAyABKAlCSZJBOzI5VGhlIG9yZ2FuaXphdGlvbiBJRCB0byB3aGljaCB0aGUgc2VydmljZSB1c2VyIGJlbG9uZ3MgdG8u4kEBAvpCBHICEAMiXAoeQ3JlYXRlU2VydmljZVVzZXJUb2tlblJlc3BvbnNlEjoKBXRva2VuGAEgASgLMisucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5TZXJ2aWNlVXNlclRva2VuIsEBChxMaXN0U2VydmljZVVzZXJUb2tlbnNSZXF1ZXN0EkYKAmlkGAEgASgJQjqSQTcyNVRoZSB1bmlxdWUgSUQgb2YgdGhlIHNlcnZpY2UgdXNlciB0byBsaXN0IHRva2VucyBmb3IuElkKBm9yZ19pZBgCIAEoCUJJkkE7MjlUaGUgb3JnYW5pemF0aW9uIElEIHRvIHdoaWNoIHRoZSBzZXJ2aWNlIHVzZXIgYmVsb25ncyB0by7iQQEC+kIEcgIQAyJcCh1MaXN0U2VydmljZVVzZXJUb2tlbnNSZXNwb25zZRI7CgZ0b2tlbnMYASADKAsyKy5yYXlzdGFjay5mcm9udGllci52MWJldGExLlNlcnZpY2VVc2VyVG9rZW4igwIKHURlbGV0ZVNlcnZpY2VVc2VyVG9rZW5SZXF1ZXN0EkkKAmlkGAEgASgJQj2SQToyOFRoZSB1bmlxdWUgSUQgb2YgdGhlIHNlcnZpY2UgdXNlciB0byBkZWxldGUgYSB0b2tlbiBmb3IuEjwKCHRva2VuX2lkGAIgASgJQiqSQScyJVRoZSB1bmlxdWUgSUQgb2YgdGhlIHRva2VuIHRvIGRlbGV0ZS4SWQoGb3JnX2lkGAMgASgJQkmSQTsyOVRoZSBvcmdhbml6YXRpb24gSUQgdG8gd2hpY2ggdGhlIHNlcnZpY2UgdXNlciBiZWxvbmdzIHRvLuJBAQL6QgRyAhADIiAKHkRlbGV0ZVNlcnZpY2VVc2VyVG9rZW5SZXNwb25zZSLfAQoeTGlzdFNlcnZpY2VVc2VyUHJvamVjdHNSZXF1ZXN0EkgKAmlkGAEgASgJQjySQTkyN1RoZSB1bmlxdWUgSUQgb2YgdGhlIHNlcnZpY2UgdXNlciB0byBsaXN0IHByb2plY3RzIGZvci4SWQoGb3JnX2lkGAIgASgJQkmSQTsyOVRoZSBvcmdhbml6YXRpb24gSUQgdG8gd2hpY2ggdGhlIHNlcnZpY2UgdXNlciBiZWxvbmdzIHRvLuJBAQL6QgRyAhADEhgKEHdpdGhfcGVybWlzc2lvbnMYAyADKAki6wEKH0xpc3RTZXJ2aWNlVXNlclByb2plY3RzUmVzcG9uc2USNAoIcHJvamVjdHMYASADKAsyIi5yYXlzdGFjay5mcm9udGllci52MWJldGExLlByb2plY3QSWwoMYWNjZXNzX3BhaXJzGAIgAygLMkUucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0U2VydmljZVVzZXJQcm9qZWN0c1Jlc3BvbnNlLkFjY2Vzc1BhaXIaNQoKQWNjZXNzUGFpchISCgpwcm9qZWN0X2lkGAEgASgJEhMKC3Blcm1pc3Npb25zGAIgAygJIu0BCh1MaXN0T3JnYW5pemF0aW9uR3JvdXBzUmVxdWVzdBIpCgZvcmdfaWQYAiABKAlCGfpCFnIUEAMyEF5bQS1aYS16MC05Xy1dKyQSVwoFc3RhdGUYAyABKAlCSJJBRTJDVGhlIHN0YXRlIG9mIHRoZSBncm91cCB0byBmaWx0ZXIgYnkuIEl0IGNhbiBiZSBlbmFibGVkIG9yIGRpc2FibGVkLhIRCglncm91cF9pZHMYBCADKAkSFAoMd2l0aF9tZW1iZXJzGAUgASgIEhkKEXdpdGhfbWVtYmVyX2NvdW50GAYgASgISgQIARACIlIKHkxpc3RPcmdhbml6YXRpb25Hcm91cHNSZXNwb25zZRIwCgZncm91cHMYASADKAsyIC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkdyb3VwIq8BCh1DcmVhdGVPcmdhbml6YXRpb25Sb2xlUmVxdWVzdBJCCgRib2R5GAEgASgLMioucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Sb2xlUmVxdWVzdEJvZHlCCPpCBYoBAhABEkoKBm9yZ19pZBgCIAEoCUI6kkEzMjFUaGUgb3JnYW5pemF0aW9uIElEIHRvIHdoaWNoIHRoZSByb2xlIGJlbG9uZ3MgdG8u4kEBAiJPCh5DcmVhdGVPcmdhbml6YXRpb25Sb2xlUmVzcG9uc2USLQoEcm9sZRgBIAEoCzIfLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUm9sZSJBChpHZXRPcmdhbml6YXRpb25Sb2xlUmVxdWVzdBIKCgJpZBgBIAEoCRIXCgZvcmdfaWQYAiABKAlCB/pCBHICEAMiTAobR2V0T3JnYW5pemF0aW9uUm9sZVJlc3BvbnNlEi0KBHJvbGUYASABKAsyHy5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJvbGUidQodVXBkYXRlT3JnYW5pemF0aW9uUm9sZVJlcXVlc3QSCgoCaWQYASABKAkSDgoGb3JnX2lkGAMgASgJEjgKBGJvZHkYAiABKAsyKi5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJvbGVSZXF1ZXN0Qm9keSJPCh5VcGRhdGVPcmdhbml6YXRpb25Sb2xlUmVzcG9uc2USLQoEcm9sZRgBIAEoCzIfLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUm9sZSIxChBMaXN0Um9sZXNSZXF1ZXN0Eg0KBXN0YXRlGAEgASgJEg4KBnNjb3BlcxgCIAMoCSJDChFMaXN0Um9sZXNSZXNwb25zZRIuCgVyb2xlcxgBIAMoCzIfLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUm9sZSJWChxMaXN0T3JnYW5pemF0aW9uUm9sZXNSZXF1ZXN0EhcKBm9yZ19pZBgBIAEoCUIH+kIEcgIQAxINCgVzdGF0ZRgCIAEoCRIOCgZzY29wZXMYAyADKAkiTwodTGlzdE9yZ2FuaXphdGlvblJvbGVzUmVzcG9uc2USLgoFcm9sZXMYASADKAsyHy5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJvbGUiRAodRGVsZXRlT3JnYW5pemF0aW9uUm9sZVJlcXVlc3QSCgoCaWQYASABKAkSFwoGb3JnX2lkGAIgASgJQgf6QgRyAhADIiAKHkRlbGV0ZU9yZ2FuaXphdGlvblJvbGVSZXNwb25zZSKrCgoXT3JnYW5pemF0aW9uUmVxdWVzdEJvZHkS+wEKBG5hbWUYASABKAlC7AGSQc0BMsoBVGhlIG5hbWUgb2YgdGhlIG9yZ2FuaXphdGlvbi4gVGhlIG5hbWUgbXVzdCBiZSB1bmlxdWUgd2l0aGluIHRoZSBlbnRpcmUgRnJvbnRpZXIgaW5zdGFuY2UuIFRoZSBuYW1lIGNhbiBjb250YWluIG9ubHkgYWxwaGFudW1lcmljIGNoYXJhY3RlcnMsIGRhc2hlcyBhbmQgdW5kZXJzY29yZXMuPGJyLz4qRXhhbXBsZToqYCJmcm9udGllci1vcmcxLWFjbWUiYOJBAQL6QhRyEjIQXltBLVphLXowLTktX10rJBKyAQoFdGl0bGUYAiABKAlCogGSQZ4BMpsBVGhlIHRpdGxlIGNhbiBjb250YWluIGFueSBVVEYtOCBjaGFyYWN0ZXIsIHVzZWQgdG8gcHJvdmlkZSBhIGh1bWFuLXJlYWRhYmxlIG5hbWUgZm9yIHRoZSBvcmdhbml6YXRpb24uIENhbiBhbHNvIGJlIGxlZnQgZW1wdHkuPGJyLz4gKkV4YW1wbGUqOiBgIkFjbWUgSW5jImAS6QMKCG1ldGFkYXRhGAMgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEK9A5JBuQMytgNNZXRhZGF0YSBvYmplY3QgZm9yIG9yZ2FuaXphdGlvbnMgdGhhdCBjYW4gaG9sZCBrZXkgdmFsdWUgcGFpcnMgZGVmaW5lZCBpbiBPcmdhbml6YXRpb24gTWV0YXNjaGVtYS4gVGhlIG1ldGFkYXRhIG9iamVjdCBjYW4gYmUgdXNlZCB0byBzdG9yZSBhcmJpdHJhcnkgaW5mb3JtYXRpb24gYWJvdXQgdGhlIG9yZ2FuaXphdGlvbiBzdWNoIGFzIGxhYmVscywgZGVzY3JpcHRpb25zIGV0Yy4gVGhlIGRlZmF1bHQgT3JnYW5pemF0aW9uIE1ldGFzY2hlbWEgY29udGFpbnMgbGFiZWxzIGFuZCBkZXNjcmlwdG9uIGZpZWxkcy4gVXBkYXRlIHRoZSBPcmdhbml6YXRpb24gTWV0YXNjaGVtYSB0byBhZGQgbW9yZSBmaWVsZHMuIDxici8+KkV4YW1wbGUqOmB7ImxhYmVscyI6IHsia2V5IjogInZhbHVlIn0sICJkZXNjcmlwdGlvbiI6ICJPcmdhbml6YXRpb24gZGVzY3JpcHRpb24ifWAS8AIKBmF2YXRhchgEIAEoCULfApJBjwIy0wFUaGUgYXZhdGFyIGlzIGJhc2U2NCBlbmNvZGVkIGltYWdlIGRhdGEgb2YgdGhlIHVzZXIuIENhbiBhbHNvIGJlIGxlZnQgZW1wdHkuIFRoZSBpbWFnZSBzaG91bGQgYmUgbGVzcyB0aGFuIDIwMEtCLiBTaG91bGQgZm9sbG93IHRoZSByZWdleCBwYXR0ZXJuIGBeZGF0YTppbWFnZS8ocG5nfGpwZ3xqcGVnfGdpZik7YmFzZTY0LChbYS16QS1aMC05Ky9dKz17MCwyfSkrJGAuSjciZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFCQUFBQUEi+kJJckcYkKEPMj5eZGF0YTppbWFnZS8ocG5nfGpwZ3xqcGVnfGdpZik7YmFzZTY0LChbYS16QS1aMC05Ky9dKz17MCwyfSkrJNABASLpAwoYTGlzdE9yZ2FuaXphdGlvbnNSZXF1ZXN0EscBCgd1c2VyX2lkGAEgASgJQrUBkkGxATKuAVRoZSB1c2VyIElEIHRvIGZpbHRlciBieS4gSXQgY2FuIGJlIHVzZWQgdG8gbGlzdCBhbGwgdGhlIG9yZ2FuaXphdGlvbnMgdGhhdCB0aGUgdXNlciBpcyBhIG1lbWJlciBvZi4gT3RoZXJ3aXNlLCBhbGwgdGhlIG9yZ2FuaXphdGlvbnMgaW4gdGhlIEZyb250aWVyIGluc3RhbmNlIHdpbGwgYmUgbGlzdGVkLhJOCgVzdGF0ZRgCIAEoCUI/kkE8MjpUaGUgc3RhdGUgdG8gZmlsdGVyIGJ5LiBJdCBjYW4gYmUgYGVuYWJsZWRgIG9yIGBkaXNhYmxlZGAuEmUKCXBhZ2Vfc2l6ZRgDIAEoBUJSkkFGMkRUaGUgbWF4aW11bSBudW1iZXIgb2YgdXNlcnMgdG8gcmV0dXJuIHBlciBwYWdlLiBUaGUgZGVmYXVsdCBpcyAxMDAwLvpCBhoEKAFAARJMCghwYWdlX251bRgEIAEoBUI6kkEuMixUaGUgcGFnZSBudW1iZXIgdG8gcmV0dXJuLiBUaGUgZGVmYXVsdCBpcyAxLvpCBhoEKAFAASJbChlMaXN0T3JnYW5pemF0aW9uc1Jlc3BvbnNlEj4KDW9yZ2FuaXphdGlvbnMYASADKAsyJy5yYXlzdGFjay5mcm9udGllci52MWJldGExLk9yZ2FuaXphdGlvbiJnChlDcmVhdGVPcmdhbml6YXRpb25SZXF1ZXN0EkoKBGJvZHkYASABKAsyMi5yYXlzdGFjay5mcm9udGllci52MWJldGExLk9yZ2FuaXphdGlvblJlcXVlc3RCb2R5Qgj6QgWKAQIQASJbChpDcmVhdGVPcmdhbml6YXRpb25SZXNwb25zZRI9Cgxvcmdhbml6YXRpb24YASABKAsyJy5yYXlzdGFjay5mcm9udGllci52MWJldGExLk9yZ2FuaXphdGlvbiJYChdHZXRPcmdhbml6YXRpb25SZXNwb25zZRI9Cgxvcmdhbml6YXRpb24YASABKAsyJy5yYXlzdGFjay5mcm9udGllci52MWJldGExLk9yZ2FuaXphdGlvbiJbChpVcGRhdGVPcmdhbml6YXRpb25SZXNwb25zZRI9Cgxvcmdhbml6YXRpb24YASABKAsyJy5yYXlzdGFjay5mcm9udGllci52MWJldGExLk9yZ2FuaXphdGlvbiIkChZHZXRPcmdhbml6YXRpb25SZXF1ZXN0EgoKAmlkGAEgASgJImkKGVVwZGF0ZU9yZ2FuaXphdGlvblJlcXVlc3QSCgoCaWQYASABKAkSQAoEYm9keRgCIAEoCzIyLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuT3JnYW5pemF0aW9uUmVxdWVzdEJvZHkiNAodTGlzdE9yZ2FuaXphdGlvbkFkbWluc1JlcXVlc3QSEwoCaWQYASABKAlCB/pCBHICEAMiUAoeTGlzdE9yZ2FuaXphdGlvbkFkbWluc1Jlc3BvbnNlEi4KBXVzZXJzGAEgAygLMh8ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Vc2VyInwKHExpc3RPcmdhbml6YXRpb25Vc2Vyc1JlcXVlc3QSEwoCaWQYASABKAlCB/pCBHICEAMSHQoRcGVybWlzc2lvbl9maWx0ZXIYAiABKAlCAhgBEhIKCndpdGhfcm9sZXMYAyABKAgSFAoMcm9sZV9maWx0ZXJzGAQgAygJIvMBCh1MaXN0T3JnYW5pemF0aW9uVXNlcnNSZXNwb25zZRIuCgV1c2VycxgBIAMoCzIfLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuVXNlchJVCgpyb2xlX3BhaXJzGAIgAygLMkEucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0T3JnYW5pemF0aW9uVXNlcnNSZXNwb25zZS5Sb2xlUGFpchpLCghSb2xlUGFpchIPCgd1c2VyX2lkGAEgASgJEi4KBXJvbGVzGAIgAygLMh8ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Sb2xlInwKG0FkZE9yZ2FuaXphdGlvblVzZXJzUmVxdWVzdBITCgJpZBgBIAEoCUIH+kIEcgIQAxJICgh1c2VyX2lkcxgCIAMoCUI2kkEzMjFMaXN0IG9mIHVzZXIgSURzIHRvIGJlIGFkZGVkIHRvIHRoZSBvcmdhbml6YXRpb24uIh4KHEFkZE9yZ2FuaXphdGlvblVzZXJzUmVzcG9uc2UiRQodUmVtb3ZlT3JnYW5pemF0aW9uVXNlclJlcXVlc3QSEwoCaWQYASABKAlCB/pCBHICEAMSDwoHdXNlcl9pZBgCIAEoCSIgCh5SZW1vdmVPcmdhbml6YXRpb25Vc2VyUmVzcG9uc2UiOgojTGlzdE9yZ2FuaXphdGlvblNlcnZpY2VVc2Vyc1JlcXVlc3QSEwoCaWQYASABKAlCB/pCBHICEAMiZAokTGlzdE9yZ2FuaXphdGlvblNlcnZpY2VVc2Vyc1Jlc3BvbnNlEjwKDHNlcnZpY2V1c2VycxgBIAMoCzImLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuU2VydmljZVVzZXIi3AEKIkxpc3RPcmdhbml6YXRpb25JbnZpdGF0aW9uc1JlcXVlc3QSTwoGb3JnX2lkGAEgASgJQj+SQTgyNnVuaXF1ZSBpZCBvZiB0aGUgb3JnYW5pemF0aW9uIHRvIHdoaWNoIHVzZXIgaXMgaW52aXRlZOJBAQISZQoHdXNlcl9pZBgCIAEoCUJUkkFRMk91c2VyX2lkIGZpbHRlciBpcyB0aGUgZW1haWwgaWQgb2YgdXNlciB3aG8gYXJlIGludml0ZWQgaW5zaWRlIHRoZSBvcmdhbml6YXRpb24uImEKI0xpc3RPcmdhbml6YXRpb25JbnZpdGF0aW9uc1Jlc3BvbnNlEjoKC2ludml0YXRpb25zGAEgAygLMiUucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5JbnZpdGF0aW9uIoYECiNDcmVhdGVPcmdhbml6YXRpb25JbnZpdGF0aW9uUmVxdWVzdBJPCgZvcmdfaWQYASABKAlCP5JBODI2dW5pcXVlIGlkIG9mIHRoZSBvcmdhbml6YXRpb24gdG8gd2hpY2ggdXNlciBpcyBpbnZpdGVk4kEBAhKrAQoIdXNlcl9pZHMYAiADKAlCmAGSQYYBMoMBdXNlcl9pZCBpcyBlbWFpbCBpZCBvZiB1c2VyIHdobyBhcmUgaW52aXRlZCBpbnNpZGUgdGhlIG9yZ2FuaXphdGlvbi4gSWYgdXNlciBpcyBub3QgcmVnaXN0ZXJlZCBvbiB0aGUgcGxhdGZvcm0sIGl0IHdpbGwgYmUgbm90aWZpZWTiQQEC+kIHkgEECAEQChJWCglncm91cF9pZHMYAyADKAlCQ5JBQDI+bGlzdCBvZiBncm91cCBpZHMgdG8gd2hpY2ggdXNlciBuZWVkcyB0byBiZSBhZGRlZCBhcyBhIG1lbWJlci4ShwEKCHJvbGVfaWRzGAQgAygJQnWSQXIycGxpc3Qgb2Ygcm9sZSBpZHMgdG8gd2hpY2ggdXNlciBuZWVkcyB0byBiZSBhZGRlZCBhcyBhIG1lbWJlci4gUm9sZXMgYXJlIGJpbmRlZCBhdCBvcmdhbml6YXRpb24gbGV2ZWwgYnkgZGVmYXVsdC4iYgokQ3JlYXRlT3JnYW5pemF0aW9uSW52aXRhdGlvblJlc3BvbnNlEjoKC2ludml0YXRpb25zGAEgAygLMiUucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5JbnZpdGF0aW9uIj4KIEdldE9yZ2FuaXphdGlvbkludml0YXRpb25SZXF1ZXN0EgoKAmlkGAEgASgJEg4KBm9yZ19pZBgCIAEoCSJeCiFHZXRPcmdhbml6YXRpb25JbnZpdGF0aW9uUmVzcG9uc2USOQoKaW52aXRhdGlvbhgBIAEoCzIlLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuSW52aXRhdGlvbiJBCiNBY2NlcHRPcmdhbml6YXRpb25JbnZpdGF0aW9uUmVxdWVzdBIKCgJpZBgBIAEoCRIOCgZvcmdfaWQYAiABKAkiJgokQWNjZXB0T3JnYW5pemF0aW9uSW52aXRhdGlvblJlc3BvbnNlIkEKI0RlbGV0ZU9yZ2FuaXphdGlvbkludml0YXRpb25SZXF1ZXN0EgoKAmlkGAEgASgJEg4KBm9yZ19pZBgCIAEoCSKVAgoeTGlzdE9yZ2FuaXphdGlvbkRvbWFpbnNSZXF1ZXN0EmwKBm9yZ19pZBgBIAEoCUJckkFOMkx1bmlxdWUgaWQgb2YgdGhlIG9yZ2FuaXphdGlvbiBmb3Igd2hpY2ggd2hpdGVsaXN0ZWQgZG9tYWlucyBhcmUgdG8gYmUgbGlzdGVk4kEBAvpCBHICEAMShAEKBXN0YXRlGAIgASgJQnWSQXIycGZpbHRlciB0byBsaXN0IGRvbWFpbnMgYnkgdGhlaXIgc3RhdGUgKHBlbmRpbmcvdmVyaWZpZWQpLiBJZiBub3QgcHJvdmlkZWQsIGFsbCBkb21haW5zIGZvciBhbiBvcmcgd2lsbCBiZSBsaXN0ZWQiVQofTGlzdE9yZ2FuaXphdGlvbkRvbWFpbnNSZXNwb25zZRIyCgdkb21haW5zGAEgAygLMiEucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Eb21haW4imAEKIExpc3RPcmdhbml6YXRpb25zQnlEb21haW5SZXF1ZXN0EnQKBG5hbWUYASABKAlCZpJBWDJWZG9tYWluIG5hbWUgdG8gYmUgdXNlZCB0byBsaXN0IGFsbCB0aGUgb3JnYW5pemF0aW9ucyB0aGF0IGhhdmUgdGhpcyBkb21haW4gd2hpdGVsaXN0ZWTiQQEC+kIEcgIQAyJjCiFMaXN0T3JnYW5pemF0aW9uc0J5RG9tYWluUmVzcG9uc2USPgoNb3JnYW5pemF0aW9ucxgBIAMoCzInLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuT3JnYW5pemF0aW9uIjIKF0pvaW5Pcmdhbml6YXRpb25SZXF1ZXN0EhcKBm9yZ19pZBgBIAEoCUIH+kIEcgIQAyIaChhKb2luT3JnYW5pemF0aW9uUmVzcG9uc2Ui0gEKHEdldE9yZ2FuaXphdGlvbkRvbWFpblJlcXVlc3QSQwoCaWQYASABKAlCN5JBKTIndW5pcXVlIGlkIG9mIHRoZSBkb21haW4gdG8gYmUgcmV0cmlldmVk4kEBAvpCBHICEAMSbQoGb3JnX2lkGAIgASgJQl2SQU8yTXVuaXF1ZSBpZCBvZiB0aGUgb3JnYW5pemF0aW9uIGZvciB3aGljaCB3aGl0ZWxpc3RlZCBkb21haW4gaXMgdG8gYmUgcmV0cmlldmVk4kEBAvpCBHICEAMiUgodR2V0T3JnYW5pemF0aW9uRG9tYWluUmVzcG9uc2USMQoGZG9tYWluGAEgASgLMiEucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Eb21haW4i4gEKH0NyZWF0ZU9yZ2FuaXphdGlvbkRvbWFpblJlcXVlc3QSawoGb3JnX2lkGAEgASgJQluSQU0yS3VuaXF1ZSBpZCBvZiB0aGUgb3JnYW5pemF0aW9uIGZvciB3aGljaCB3aGl0ZWxpc3RlZCBkb21haW5zIGFyZSB0byBiZSBhZGRlZOJBAQL6QgRyAhADElIKBmRvbWFpbhgCIAEoCUJCkkE0MjJkb21haW4gbmFtZSB0byBiZSBhZGRlZCB0byB0aGUgdHJ1c3RlZCBkb21haW4gbGlzdOJBAQL6QgRyAhADIlUKIENyZWF0ZU9yZ2FuaXphdGlvbkRvbWFpblJlc3BvbnNlEjEKBmRvbWFpbhgBIAEoCzIhLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRG9tYWluItMBCh9EZWxldGVPcmdhbml6YXRpb25Eb21haW5SZXF1ZXN0EkEKAmlkGAEgASgJQjWSQScyJXVuaXF1ZSBpZCBvZiB0aGUgZG9tYWluIHRvIGJlIGRlbGV0ZWTiQQEC+kIEcgIQAxJtCgZvcmdfaWQYAiABKAlCXZJBTzJNdW5pcXVlIGlkIG9mIHRoZSBvcmdhbml6YXRpb24gZm9yIHdoaWNoIHdoaXRlbGlzdGVkIGRvbWFpbnMgYXJlIHRvIGJlIGRlbGV0ZWTiQQEC+kIEcgIQAyIiCiBEZWxldGVPcmdhbml6YXRpb25Eb21haW5SZXNwb25zZSLVAQofVmVyaWZ5T3JnYW5pemF0aW9uRG9tYWluUmVxdWVzdBJuCgZvcmdfaWQYASABKAlCXpJBUDJOdW5pcXVlIGlkIG9mIHRoZSBvcmdhbml6YXRpb24gZm9yIHdoaWNoIHdoaXRlbGlzdGVkIGRvbWFpbnMgYXJlIHRvIGJlIHZlcmlmaWVk4kEBAvpCBHICEAMSQgoCaWQYAiABKAlCNpJBKDImdW5pcXVlIGlkIG9mIHRoZSBkb21haW4gdG8gYmUgdmVyaWZpZWTiQQEC+kIEcgIQAyIxCiBWZXJpZnlPcmdhbml6YXRpb25Eb21haW5SZXNwb25zZRINCgVzdGF0ZRgBIAEoCSImCiREZWxldGVPcmdhbml6YXRpb25JbnZpdGF0aW9uUmVzcG9uc2UiJwoZRW5hYmxlT3JnYW5pemF0aW9uUmVxdWVzdBIKCgJpZBgBIAEoCSIcChpFbmFibGVPcmdhbml6YXRpb25SZXNwb25zZSIoChpEaXNhYmxlT3JnYW5pemF0aW9uUmVxdWVzdBIKCgJpZBgBIAEoCSIdChtEaXNhYmxlT3JnYW5pemF0aW9uUmVzcG9uc2UiJwoZRGVsZXRlT3JnYW5pemF0aW9uUmVxdWVzdBIKCgJpZBgBIAEoCSIcChpEZWxldGVPcmdhbml6YXRpb25SZXNwb25zZSIrChlHZXRPcmdhbml6YXRpb25LeWNSZXF1ZXN0Eg4KBm9yZ19pZBgBIAEoCSJiChpHZXRPcmdhbml6YXRpb25LeWNSZXNwb25zZRJEChBvcmdhbml6YXRpb25fa3ljGAEgASgLMioucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Pcmdhbml6YXRpb25LeWMirAUKElByb2plY3RSZXF1ZXN0Qm9keRL3AQoEbmFtZRgBIAEoCULoAZJByQEyxgFUaGUgbmFtZSBvZiB0aGUgcHJvamVjdC4gVGhlIG5hbWUgbXVzdCBiZSB1bmlxdWUgd2l0aGluIHRoZSBlbnRpcmUgRnJvbnRpZXIgaW5zdGFuY2UuIFRoZSBuYW1lIGNhbiBjb250YWluIG9ubHkgYWxwaGFudW1lcmljIGNoYXJhY3RlcnMsIGRhc2hlcyBhbmQgdW5kZXJzY29yZXMuPGJyLz4gKkV4YW1wbGU6KiBgZnJvbnRpZXItcGxheWdyb3VuZGDiQQEC+kIUchIyEF5bQS1aYS16MC05LV9dKyQStwEKBXRpdGxlGAIgASgJQqcBkkGjATKgAVRoZSB0aXRsZSBjYW4gY29udGFpbiBhbnkgVVRGLTggY2hhcmFjdGVyLCB1c2VkIHRvIHByb3ZpZGUgYSBodW1hbi1yZWFkYWJsZSBuYW1lIGZvciB0aGUgcHJvamVjdC4gQ2FuIGFsc28gYmUgbGVmdCBlbXB0eS4gPGJyLz4gKkV4YW1wbGU6KiBgRnJvbnRpZXIgUGxheWdyb3VuZGASiQEKCG1ldGFkYXRhGAMgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEJekkFbMllNZXRhZGF0YSBvYmplY3QgZm9yIHByb2plY3RzIHRoYXQgY2FuIGhvbGQga2V5IHZhbHVlIHBhaXJzIGRlZmluZWQgaW4gUHJvamVjdCBNZXRhc2NoZW1hLhJWCgZvcmdfaWQYBCABKAlCRpJBODI2dW5pcXVlIGlkIG9mIHRoZSBvcmdhbml6YXRpb24gdG8gd2hpY2ggcHJvamVjdCBiZWxvbmdz4kEBAvpCBHICEAMiXQoUQ3JlYXRlUHJvamVjdFJlcXVlc3QSRQoEYm9keRgBIAEoCzItLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUHJvamVjdFJlcXVlc3RCb2R5Qgj6QgWKAQIQASJMChVDcmVhdGVQcm9qZWN0UmVzcG9uc2USMwoHcHJvamVjdBgBIAEoCzIiLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUHJvamVjdCLfAQofTGlzdE9yZ2FuaXphdGlvblByb2plY3RzUmVxdWVzdBITCgJpZBgBIAEoCUIH+kIEcgIQAxKLAQoFc3RhdGUYAiABKAlCfJJBeTJ3RmlsdGVyIHByb2plY3RzIGJ5IHN0YXRlLiBJZiBub3Qgc3BlY2lmaWVkLCBhbGwgcHJvamVjdHMgYXJlIHJldHVybmVkLiA8YnIvPiAqUG9zc2libGUgdmFsdWVzOiogYGVuYWJsZWRgIG9yIGBkaXNhYmxlZGASGQoRd2l0aF9tZW1iZXJfY291bnQYAyABKAgiWAogTGlzdE9yZ2FuaXphdGlvblByb2plY3RzUmVzcG9uc2USNAoIcHJvamVjdHMYASADKAsyIi5yYXlzdGFjay5mcm9udGllci52MWJldGExLlByb2plY3QiHwoRR2V0UHJvamVjdFJlcXVlc3QSCgoCaWQYASABKAkiSQoSR2V0UHJvamVjdFJlc3BvbnNlEjMKB3Byb2plY3QYASABKAsyIi5yYXlzdGFjay5mcm9udGllci52MWJldGExLlByb2plY3QiXwoUVXBkYXRlUHJvamVjdFJlcXVlc3QSCgoCaWQYASABKAkSOwoEYm9keRgCIAEoCzItLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUHJvamVjdFJlcXVlc3RCb2R5IkwKFVVwZGF0ZVByb2plY3RSZXNwb25zZRIzCgdwcm9qZWN0GAEgASgLMiIucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Qcm9qZWN0Ii8KGExpc3RQcm9qZWN0QWRtaW5zUmVxdWVzdBITCgJpZBgBIAEoCUIH+kIEcgIQAyJLChlMaXN0UHJvamVjdEFkbWluc1Jlc3BvbnNlEi4KBXVzZXJzGAEgAygLMh8ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Vc2VyIl0KF0xpc3RQcm9qZWN0VXNlcnNSZXF1ZXN0EhMKAmlkGAEgASgJQgf6QgRyAhADEhkKEXBlcm1pc3Npb25fZmlsdGVyGAIgASgJEhIKCndpdGhfcm9sZXMYAyABKAgi6QEKGExpc3RQcm9qZWN0VXNlcnNSZXNwb25zZRIuCgV1c2VycxgBIAMoCzIfLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuVXNlchJQCgpyb2xlX3BhaXJzGAIgAygLMjwucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0UHJvamVjdFVzZXJzUmVzcG9uc2UuUm9sZVBhaXIaSwoIUm9sZVBhaXISDwoHdXNlcl9pZBgBIAEoCRIuCgVyb2xlcxgCIAMoCzIfLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUm9sZSJJCh5MaXN0UHJvamVjdFNlcnZpY2VVc2Vyc1JlcXVlc3QSEwoCaWQYASABKAlCB/pCBHICEAMSEgoKd2l0aF9yb2xlcxgDIAEoCCKMAgofTGlzdFByb2plY3RTZXJ2aWNlVXNlcnNSZXNwb25zZRI8CgxzZXJ2aWNldXNlcnMYASADKAsyJi5yYXlzdGFjay5mcm9udGllci52MWJldGExLlNlcnZpY2VVc2VyElcKCnJvbGVfcGFpcnMYAiADKAsyQy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RQcm9qZWN0U2VydmljZVVzZXJzUmVzcG9uc2UuUm9sZVBhaXIaUgoIUm9sZVBhaXISFgoOc2VydmljZXVzZXJfaWQYASABKAkSLgoFcm9sZXMYAiADKAsyHy5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJvbGUiQwoYTGlzdFByb2plY3RHcm91cHNSZXF1ZXN0EhMKAmlkGAEgASgJQgf6QgRyAhADEhIKCndpdGhfcm9sZXMYAiABKAgi7gEKGUxpc3RQcm9qZWN0R3JvdXBzUmVzcG9uc2USMAoGZ3JvdXBzGAEgAygLMiAucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Hcm91cBJRCgpyb2xlX3BhaXJzGAIgAygLMj0ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0UHJvamVjdEdyb3Vwc1Jlc3BvbnNlLlJvbGVQYWlyGkwKCFJvbGVQYWlyEhAKCGdyb3VwX2lkGAEgASgJEi4KBXJvbGVzGAIgAygLMh8ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Sb2xlIiIKFEVuYWJsZVByb2plY3RSZXF1ZXN0EgoKAmlkGAEgASgJIhcKFUVuYWJsZVByb2plY3RSZXNwb25zZSIjChVEaXNhYmxlUHJvamVjdFJlcXVlc3QSCgoCaWQYASABKAkiGAoWRGlzYWJsZVByb2plY3RSZXNwb25zZSIiChREZWxldGVQcm9qZWN0UmVxdWVzdBIKCgJpZBgBIAEoCSIXChVEZWxldGVQcm9qZWN0UmVzcG9uc2UiowgKEVBvbGljeVJlcXVlc3RCb2R5ElIKB3JvbGVfaWQYASABKAlCQZJBMzIxdW5pcXVlIGlkIG9mIHRoZSByb2xlIHRvIHdoaWNoIHBvbGljeSBpcyBhc3NpZ25lZOJBAQL6QgRyAhADEq8BCgV0aXRsZRgDIAEoCUKfAZJBmwEymAFUaGUgdGl0bGUgY2FuIGNvbnRhaW4gYW55IFVURi04IGNoYXJhY3RlciwgdXNlZCB0byBwcm92aWRlIGEgaHVtYW4tcmVhZGFibGUgbmFtZSBmb3IgdGhlIHBvbGljeS4gQ2FuIGFsc28gYmUgbGVmdCBlbXB0eS4gPGJyLz4gKkV4YW1wbGU6KiBgUG9saWN5IHRpdGxlYBKzAQoIcmVzb3VyY2UYAiABKAlCoAGSQZEBMo4BVGhlIHJlc291cmNlIHRvIHdoaWNoIHBvbGljeSBpcyBhc3NpZ25lZCBpbiB0aGlzIGZvcm1hdCBgbmFtZXNwYWNlOnV1aWRgLiA8YnIvPiAqRXhhbXBsZToqIGBhcHAvZ3VhcmRpYW46NzBmNjljM2EtMzM0Yi00ZjI1LTkwYjgtNGQ0ZjNiZTZiOGUyYOJBAQL6QgRyAhADEu8CCglwcmluY2lwYWwYBCABKAlC2wKSQdMCMtACcHJpbmNpcGFsIGlzIHRoZSB1c2VyIG9yIGdyb3VwIHRvIHdoaWNoIHBvbGljeSBpcyBhc3NpZ25lZC4gVGhlIHByaW5jaXBhbCBpZCBtdXN0IGJlIHByZWZpeGVkIHdpdGggaXRzIG5hbWVzcGFjZSBpZCBpbiB0aGlzIGZvcm1hdCBgbmFtZXNwYWNlOnV1aWRgLiBUaGUgbmFtZXNwYWNlIGNhbiBiZSBgYXBwL3VzZXJgLCBgYXBwL2dyb3VwYCBvciBgYXBwL3NlcnZpY2V1c2VyYCAoY29taW5nIHVwISkgYW5kIHV1aWQgaXMgdGhlIHVuaXF1ZSBpZCBvZiB0aGUgcHJpbmNpcGFsLiA8YnIvPiAqRXhhbXBsZToqIGBhcHAvdXNlcjo5MmY2OWMzYS0zMzRiLTRmMjUtOTBiOC00ZDRmM2JlNmI4MjVg4kEBAhLfAQoIbWV0YWRhdGEYBSABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0QrMBkkGvATKsAU1ldGFkYXRhIG9iamVjdCBmb3IgcG9saWNpZXMgdGhhdCBjYW4gaG9sZCBrZXkgdmFsdWUgcGFpcnMgZGVmaW5lZCBpbiBQb2xpY3kgTWV0YXNjaGVtYS48YnIvPiAqRXhhbXBsZToqIGB7ImxhYmVscyI6IHsia2V5IjogInZhbHVlIn0sICJkZXNjcmlwdGlvbiI6ICJQb2xpY3kgZGVzY3JpcHRpb24ifWAilAUKGkNyZWF0ZVBvbGljeUZvclByb2plY3RCb2R5ElIKB3JvbGVfaWQYASABKAlCQZJBMzIxdW5pcXVlIGlkIG9mIHRoZSByb2xlIHRvIHdoaWNoIHBvbGljeSBpcyBhc3NpZ25lZOJBAQL6QgRyAhADEq8BCgV0aXRsZRgCIAEoCUKfAZJBmwEymAFUaGUgdGl0bGUgY2FuIGNvbnRhaW4gYW55IFVURi04IGNoYXJhY3RlciwgdXNlZCB0byBwcm92aWRlIGEgaHVtYW4tcmVhZGFibGUgbmFtZSBmb3IgdGhlIHBvbGljeS4gQ2FuIGFsc28gYmUgbGVmdCBlbXB0eS4gPGJyLz4gKkV4YW1wbGU6KiBgUG9saWN5IHRpdGxlYBLvAgoJcHJpbmNpcGFsGAMgASgJQtsCkkHTAjLQAnByaW5jaXBhbCBpcyB0aGUgdXNlciBvciBncm91cCB0byB3aGljaCBwb2xpY3kgaXMgYXNzaWduZWQuIFRoZSBwcmluY2lwYWwgaWQgbXVzdCBiZSBwcmVmaXhlZCB3aXRoIGl0cyBuYW1lc3BhY2UgaWQgaW4gdGhpcyBmb3JtYXQgYG5hbWVzcGFjZTp1dWlkYC4gVGhlIG5hbWVzcGFjZSBjYW4gYmUgYGFwcC91c2VyYCwgYGFwcC9ncm91cGAgb3IgYGFwcC9zZXJ2aWNldXNlcmAgKGNvbWluZyB1cCEpIGFuZCB1dWlkIGlzIHRoZSB1bmlxdWUgaWQgb2YgdGhlIHByaW5jaXBhbC4gPGJyLz4gKkV4YW1wbGU6KiBgYXBwL3VzZXI6OTJmNjljM2EtMzM0Yi00ZjI1LTkwYjgtNGQ0ZjNiZTZiODI1YOJBAQIiIgoUR2V0UGVybWlzc2lvblJlcXVlc3QSCgoCaWQYASABKAkiUgoVR2V0UGVybWlzc2lvblJlc3BvbnNlEjkKCnBlcm1pc3Npb24YASABKAsyJS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlBlcm1pc3Npb24iGAoWTGlzdFBlcm1pc3Npb25zUmVxdWVzdCJVChdMaXN0UGVybWlzc2lvbnNSZXNwb25zZRI6CgtwZXJtaXNzaW9ucxgBIAMoCzIlLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUGVybWlzc2lvbiIXChVMaXN0TmFtZXNwYWNlc1JlcXVlc3QiUgoWTGlzdE5hbWVzcGFjZXNSZXNwb25zZRI4CgpuYW1lc3BhY2VzGAEgAygLMiQucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5OYW1lc3BhY2UiIQoTR2V0TmFtZXNwYWNlUmVxdWVzdBIKCgJpZBgBIAEoCSJPChRHZXROYW1lc3BhY2VSZXNwb25zZRI3CgluYW1lc3BhY2UYASABKAsyJC5yYXlzdGFjay5mcm9udGllci52MWJldGExLk5hbWVzcGFjZSJbChNDcmVhdGVQb2xpY3lSZXF1ZXN0EkQKBGJvZHkYASABKAsyLC5yYXlzdGFjay5mcm9udGllci52MWJldGExLlBvbGljeVJlcXVlc3RCb2R5Qgj6QgWKAQIQASJPChRDcmVhdGVQb2xpY3lSZXNwb25zZRIxCgZwb2xpY3kYAiABKAsyIS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlBvbGljeUoECAEQAiIeChBHZXRQb2xpY3lSZXF1ZXN0EgoKAmlkGAEgASgJIkYKEUdldFBvbGljeVJlc3BvbnNlEjEKBnBvbGljeRgBIAEoCzIhLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUG9saWN5IpkCChNMaXN0UG9saWNpZXNSZXF1ZXN0EjYKBm9yZ19pZBgBIAEoCUImkkEjMiFUaGUgb3JnYW5pemF0aW9uIGlkIHRvIGZpbHRlciBieS4SNQoKcHJvamVjdF9pZBgCIAEoCUIhkkEeMhxUaGUgcHJvamVjdCBpZCB0byBmaWx0ZXIgYnkuEi8KB3VzZXJfaWQYAyABKAlCHpJBGzIZVGhlIHVzZXIgaWQgdG8gZmlsdGVyIGJ5LhIvCgdyb2xlX2lkGAQgASgJQh6SQRsyGVRoZSByb2xlIGlkIHRvIGZpbHRlciBieS4SMQoIZ3JvdXBfaWQYBSABKAlCH5JBHDIaVGhlIGdyb3VwIGlkIHRvIGZpbHRlciBieS4iSwoUTGlzdFBvbGljaWVzUmVzcG9uc2USMwoIcG9saWNpZXMYASADKAsyIS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlBvbGljeSJdChNVcGRhdGVQb2xpY3lSZXF1ZXN0EgoKAmlkGAEgASgJEjoKBGJvZHkYAiABKAsyLC5yYXlzdGFjay5mcm9udGllci52MWJldGExLlBvbGljeVJlcXVlc3RCb2R5IksKFFVwZGF0ZVBvbGljeVJlc3BvbnNlEjMKCHBvbGljaWVzGAEgAygLMiEucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Qb2xpY3kiIQoTRGVsZXRlUG9saWN5UmVxdWVzdBIKCgJpZBgBIAEoCSIWChREZWxldGVQb2xpY3lSZXNwb25zZSKLAQodQ3JlYXRlUG9saWN5Rm9yUHJvamVjdFJlcXVlc3QSGwoKcHJvamVjdF9pZBgBIAEoCUIH+kIEcgIQAxJNCgRib2R5GAIgASgLMjUucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVQb2xpY3lGb3JQcm9qZWN0Qm9keUII+kIFigECEAEiIAoeQ3JlYXRlUG9saWN5Rm9yUHJvamVjdFJlc3BvbnNlInIKE1JlbGF0aW9uUmVxdWVzdEJvZHkSDgoGb2JqZWN0GAEgASgJEg8KB3N1YmplY3QYAyABKAkSEAoIcmVsYXRpb24YBCABKAkSHAoUc3ViamVjdF9zdWJfcmVsYXRpb24YBiABKAlKBAgCEANKBAgFEAYiXwoVQ3JlYXRlUmVsYXRpb25SZXF1ZXN0EkYKBGJvZHkYASABKAsyLi5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJlbGF0aW9uUmVxdWVzdEJvZHlCCPpCBYoBAhABIk8KFkNyZWF0ZVJlbGF0aW9uUmVzcG9uc2USNQoIcmVsYXRpb24YASABKAsyIy5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJlbGF0aW9uIiAKEkdldFJlbGF0aW9uUmVxdWVzdBIKCgJpZBgBIAEoCSJMChNHZXRSZWxhdGlvblJlc3BvbnNlEjUKCHJlbGF0aW9uGAEgASgLMiMucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5SZWxhdGlvbiJhChVVcGRhdGVSZWxhdGlvblJlcXVlc3QSCgoCaWQYASABKAkSPAoEYm9keRgCIAEoCzIuLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUmVsYXRpb25SZXF1ZXN0Qm9keSJPChZVcGRhdGVSZWxhdGlvblJlc3BvbnNlEjUKCHJlbGF0aW9uGAEgASgLMiMucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5SZWxhdGlvbiK5BgoQR3JvdXBSZXF1ZXN0Qm9keRLPAQoEbmFtZRgBIAEoCULAAZJBoQEyngFUaGUgbmFtZSBvZiB0aGUgZ3JvdXAuIFRoZSBuYW1lIG11c3QgYmUgdW5pcXVlIHdpdGhpbiB0aGUgZW50aXJlIEZyb250aWVyIGluc3RhbmNlLiBUaGUgbmFtZSBjYW4gY29udGFpbiBvbmx5IGFscGhhbnVtZXJpYyBjaGFyYWN0ZXJzLCBkYXNoZXMgYW5kIHVuZGVyc2NvcmVzLuJBAQL6QhRyEjIQXltBLVphLXowLTktX10rJBKLAQoFdGl0bGUYAiABKAlCfJJBeTJ3VGhlIHRpdGxlIGNhbiBjb250YWluIGFueSBVVEYtOCBjaGFyYWN0ZXIsIHVzZWQgdG8gcHJvdmlkZSBhIGh1bWFuLXJlYWRhYmxlIG5hbWUgZm9yIHRoZSBncm91cC4gQ2FuIGFsc28gYmUgbGVmdCBlbXB0eS4SvgMKCG1ldGFkYXRhGAMgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEKSA5JBjgMyiwNNZXRhZGF0YSBvYmplY3QgZm9yIGdyb3VwcyB0aGF0IGNhbiBob2xkIGtleSB2YWx1ZSBwYWlycyBkZWZpbmVkIGluIEdyb3VwIE1ldGFzY2hlbWEuIFRoZSBtZXRhZGF0YSBvYmplY3QgY2FuIGJlIHVzZWQgdG8gc3RvcmUgYXJiaXRyYXJ5IGluZm9ybWF0aW9uIGFib3V0IHRoZSBncm91cCBzdWNoIGFzIGxhYmVscywgZGVzY3JpcHRpb25zIGV0Yy4gVGhlIGRlZmF1bHQgR3JvdXAgTWV0YXNjaGVtYSBjb250YWlucyBsYWJlbHMgYW5kIGRlc2NyaXB0b24gZmllbGRzLiBVcGRhdGUgdGhlIEdyb3VwIE1ldGFzY2hlbWEgdG8gYWRkIG1vcmUgZmllbGRzLjxici8+KkV4YW1wbGU6KmB7ImxhYmVscyI6IHsia2V5IjogInZhbHVlIn0sICJkZXNjcmlwdGlvbiI6ICJHcm91cCBkZXNjcmlwdGlvbiJ9YEoECAQQBSKmAQoSQ3JlYXRlR3JvdXBSZXF1ZXN0EkMKBGJvZHkYASABKAsyKy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkdyb3VwUmVxdWVzdEJvZHlCCPpCBYoBAhABEksKBm9yZ19pZBgCIAEoCUI7kkE0MjJUaGUgb3JnYW5pemF0aW9uIElEIHRvIHdoaWNoIHRoZSBncm91cCBiZWxvbmdzIHRvLuJBAQIiQwoPR2V0R3JvdXBSZXF1ZXN0EgoKAmlkGAEgASgJEg4KBm9yZ19pZBgCIAEoCRIUCgx3aXRoX21lbWJlcnMYAyABKAgiRgoTQ3JlYXRlR3JvdXBSZXNwb25zZRIvCgVncm91cBgBIAEoCzIgLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR3JvdXAiQwoQR2V0R3JvdXBSZXNwb25zZRIvCgVncm91cBgBIAEoCzIgLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR3JvdXAiRgoTVXBkYXRlR3JvdXBSZXNwb25zZRIvCgVncm91cBgBIAEoCzIgLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR3JvdXAiqAEKElVwZGF0ZUdyb3VwUmVxdWVzdBIKCgJpZBgBIAEoCRI5CgRib2R5GAIgASgLMisucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Hcm91cFJlcXVlc3RCb2R5EksKBm9yZ19pZBgDIAEoCUI7kkE0MjJUaGUgb3JnYW5pemF0aW9uIElEIHRvIHdoaWNoIHRoZSBncm91cCBiZWxvbmdzIHRvLuJBAQIiRwoVTGlzdEdyb3VwVXNlcnNSZXF1ZXN0EgoKAmlkGAEgASgJEg4KBm9yZ19pZBgCIAEoCRISCgp3aXRoX3JvbGVzGAMgASgIIuUBChZMaXN0R3JvdXBVc2Vyc1Jlc3BvbnNlEi4KBXVzZXJzGAEgAygLMh8ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Vc2VyEk4KCnJvbGVfcGFpcnMYAiADKAsyOi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RHcm91cFVzZXJzUmVzcG9uc2UuUm9sZVBhaXIaSwoIUm9sZVBhaXISDwoHdXNlcl9pZBgBIAEoCRIuCgVyb2xlcxgCIAMoCzIfLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUm9sZSI5ChJFbmFibGVHcm91cFJlcXVlc3QSCgoCaWQYASABKAkSFwoGb3JnX2lkGAIgASgJQgf6QgRyAhADIhUKE0VuYWJsZUdyb3VwUmVzcG9uc2UiOgoTRGlzYWJsZUdyb3VwUmVxdWVzdBIKCgJpZBgBIAEoCRIXCgZvcmdfaWQYAiABKAlCB/pCBHICEAMiFgoURGlzYWJsZUdyb3VwUmVzcG9uc2UiOQoSRGVsZXRlR3JvdXBSZXF1ZXN0EgoKAmlkGAEgASgJEhcKBm9yZ19pZBgCIAEoCUIH+kIEcgIQAyIVChNEZWxldGVHcm91cFJlc3BvbnNlIk0KFEFkZEdyb3VwVXNlcnNSZXF1ZXN0EgoKAmlkGAEgASgJEhcKBm9yZ19pZBgCIAEoCUIH+kIEcgIQAxIQCgh1c2VyX2lkcxgDIAMoCSIXChVBZGRHcm91cFVzZXJzUmVzcG9uc2UiTgoWUmVtb3ZlR3JvdXBVc2VyUmVxdWVzdBIKCgJpZBgBIAEoCRIXCgZvcmdfaWQYAiABKAlCB/pCBHICEAMSDwoHdXNlcl9pZBgDIAEoCSIZChdSZW1vdmVHcm91cFVzZXJSZXNwb25zZSJQChVEZWxldGVSZWxhdGlvblJlcXVlc3QSDgoGb2JqZWN0GAEgASgJEg8KB3N1YmplY3QYAiABKAkSEAoIcmVsYXRpb24YBCABKAlKBAgDEAQiGAoWRGVsZXRlUmVsYXRpb25SZXNwb25zZSJTChtMaXN0UHJvamVjdFJlc291cmNlc1JlcXVlc3QSGwoKcHJvamVjdF9pZBgCIAEoCUIH+kIEcgIQAxIRCgluYW1lc3BhY2UYBCABKAlKBAgBEAIiVgocTGlzdFByb2plY3RSZXNvdXJjZXNSZXNwb25zZRI2CglyZXNvdXJjZXMYASADKAsyIy5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJlc291cmNlIrYGChNSZXNvdXJjZVJlcXVlc3RCb2R5EnMKBG5hbWUYASABKAlCZZJBXjJcVGhlIG5hbWUgb2YgdGhlIHJlc291cmNlLiAgTXVzdCBiZSB1bmlxdWUgd2l0aGluIHRoZSBwcm9qZWN0LiA8YnIvPiAqRXhhbXBsZToqIGBteS1yZXNvdXJjZWDiQQECEo4BCgV0aXRsZRgCIAEoCUJ/kkF8MnpUaGUgdGl0bGUgY2FuIGNvbnRhaW4gYW55IFVURi04IGNoYXJhY3RlciwgdXNlZCB0byBwcm92aWRlIGEgaHVtYW4tcmVhZGFibGUgbmFtZSBmb3IgdGhlIHJlc291cmNlLiBDYW4gYWxzbyBiZSBsZWZ0IGVtcHR5LhLyAQoJbmFtZXNwYWNlGAMgASgJQt4BkkHWATLTAVRoZSBuYW1lc3BhY2Ugb2YgdGhlIHJlc291cmNlLiBUaGUgcmVzb3VyY2UgbmFtZXNwYWNlIGFyZSBjcmVhdGVkIHdoZW4gcGVybWlzc2lvbnMgZm9yIHRoYXQgcmVzb3VyY2UgaXMgY3JlYXRlZCBpbiBGcm9udGllci4gSWYgbmFtZXNwYWNlIGRvZXNuJ3QgZXhpc3RzIHRoZSByZXF1ZXN0IHdpbGwgZmFpbC4gPGJyLz4gKkV4YW1wbGU6KiBgY29tcHV0ZS9pbnN0YW5jZWDiQQECEuwBCglwcmluY2lwYWwYBiABKAlC2AGSQdQBMtEBVXNlcklEIG9yIFNlcnZpY2VVc2VySUQgdGhhdCBzaG91bGQgYmUgbWFya2VkIGFzIG93bmVyIG9mIHRoZSByZXNvdXJjZS4gSWYgbm90IHByb3ZpZGVkLCB0aGUgY3VycmVudCBsb2dnZWQgaW4gdXNlciB3aWxsIGJlIG1hZGUgdGhlIHJlc291cmNlIG93bmVyLiA8YnIvPiAqRXhhbXBsZToqIGB1c2VyOjkyZjY5YzNhLTMzNGItNGYyNS05MGI4LTRkNGYzYmU2YjgyNWASKQoIbWV0YWRhdGEYByABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SgQIBBAFSgQIBRAGIqYBChxDcmVhdGVQcm9qZWN0UmVzb3VyY2VSZXF1ZXN0EkYKBGJvZHkYASABKAsyLi5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJlc291cmNlUmVxdWVzdEJvZHlCCPpCBYoBAhABEhIKCnByb2plY3RfaWQYAiABKAkSKgoCaWQYAyABKAlCHpJBGzIZQXV0b2dlbmVyYXRlZCBpZiBza2lwcGVkLiJWCh1DcmVhdGVQcm9qZWN0UmVzb3VyY2VSZXNwb25zZRI1CghyZXNvdXJjZRgBIAEoCzIjLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUmVzb3VyY2UiSgoZR2V0UHJvamVjdFJlc291cmNlUmVxdWVzdBIKCgJpZBgBIAEoCRIbCgpwcm9qZWN0X2lkGAMgASgJQgf6QgRyAhADSgQIAhADIlMKGkdldFByb2plY3RSZXNvdXJjZVJlc3BvbnNlEjUKCHJlc291cmNlGAEgASgLMiMucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5SZXNvdXJjZSJ8ChxVcGRhdGVQcm9qZWN0UmVzb3VyY2VSZXF1ZXN0EgoKAmlkGAEgASgJEjwKBGJvZHkYAiABKAsyLi5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJlc291cmNlUmVxdWVzdEJvZHkSEgoKcHJvamVjdF9pZBgDIAEoCSJWCh1VcGRhdGVQcm9qZWN0UmVzb3VyY2VSZXNwb25zZRI1CghyZXNvdXJjZRgBIAEoCzIjLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUmVzb3VyY2UiRwocRGVsZXRlUHJvamVjdFJlc291cmNlUmVxdWVzdBIKCgJpZBgBIAEoCRIbCgpwcm9qZWN0X2lkGAMgASgJQgf6QgRyAhADIh8KHURlbGV0ZVByb2plY3RSZXNvdXJjZVJlc3BvbnNlIoMGCh5DaGVja1Jlc291cmNlUGVybWlzc2lvblJlcXVlc3QSQwoJb2JqZWN0X2lkGAEgASgJQjAYAZJBKzIpRGVwcmVjYXRlZC4gVXNlIGByZXNvdXJjZWAgZmllbGQgaW5zdGVhZC4SSgoQb2JqZWN0X25hbWVzcGFjZRgCIAEoCUIwGAGSQSsyKURlcHJlY2F0ZWQuIFVzZSBgcmVzb3VyY2VgIGZpZWxkIGluc3RlYWQuEowBCgpwZXJtaXNzaW9uGAMgASgJQniSQVkyV3RoZSBwZXJtaXNzaW9uIG5hbWUgdG8gY2hlY2suIDxici8+ICpFeGFtcGxlOiogYGdldGAsIGBsaXN0YCwgYGNvbXB1dGUuaW5zdGFuY2UuY3JlYXRlYOJBAQL6QhVyEzIRXltBLVphLXowLTkuXy1dKyQSwAMKCHJlc291cmNlGAQgASgJQq0DkkGpAzKmA2BuYW1lc3BhY2U6dXVpZGAgb3IgYG5hbWVzcGFjZTpuYW1lYCBvZiB0aGUgb3JnIG9yIHByb2plY3QsIGFuZCBgbmFtZXNwYWNlOnVybmAgb2YgYSByZXNvdXJjZSB1bmRlciBhIHByb2plY3QuIEluIGNhc2Ugb2YgYW4gb3JnL3Byb2plY3QgZWl0aGVyIHByb3ZpZGUgdGhlIGNvbXBsZXRlIG5hbWVzcGFjZSAoYXBwL29yZ2FuaXphdGlvbikgb3IgRnJvbnRpZXIgY2FuIGFsc28gcGFyc2UgYWxpYXNlcyBmb3IgdGhlIHNhbWUgYXMgYG9yZ2Agb3IgYHByb2plY3RgLiA8YnIvPiAqRXhhbXBsZToqIGBvcmdhbml6YXRpb246OTJmNjljM2EtMzM0Yi00ZjI1LTkwYjgtNGQ0ZjNiZTZiODI1YCBvciBgYXBwL3Byb2plY3Q6cHJvamVjdC1uYW1lYCBvciBgY29tcHV0ZS9pbnN0YW5jZTo5MmY2OWMzYS0zMzRiLTRmMjUtOTBiOC00ZDRmM2JlNmI4MjVgIjEKH0NoZWNrUmVzb3VyY2VQZXJtaXNzaW9uUmVzcG9uc2USDgoGc3RhdHVzGAEgASgIIm4KG0JhdGNoQ2hlY2tQZXJtaXNzaW9uUmVxdWVzdBJPCgZib2RpZXMYASADKAsyMy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkJhdGNoQ2hlY2tQZXJtaXNzaW9uQm9keUIK+kIHkgEECAEQFCLSBAoYQmF0Y2hDaGVja1Blcm1pc3Npb25Cb2R5EnMKCnBlcm1pc3Npb24YASABKAlCX5JBQDI+dGhlIHBlcm1pc3Npb24gbmFtZSB0byBjaGVjay4gPGJyLz4gKkV4YW1wbGU6KiBgZ2V0YCBvciBgbGlzdGDiQQEC+kIVchMyEV5bQS1aYS16MC05Ll8tXSskEsADCghyZXNvdXJjZRgCIAEoCUKtA5JBqQMypgNgbmFtZXNwYWNlOnV1aWRgIG9yIGBuYW1lc3BhY2U6bmFtZWAgb2YgdGhlIG9yZyBvciBwcm9qZWN0LCBhbmQgYG5hbWVzcGFjZTp1cm5gIG9mIGEgcmVzb3VyY2UgdW5kZXIgYSBwcm9qZWN0LiBJbiBjYXNlIG9mIGFuIG9yZy9wcm9qZWN0IGVpdGhlciBwcm92aWRlIHRoZSBjb21wbGV0ZSBuYW1lc3BhY2UgKGFwcC9vcmdhbml6YXRpb24pIG9yIEZyb250aWVyIGNhbiBhbHNvIHBhcnNlIGFsaWFzZXMgZm9yIHRoZSBzYW1lIGFzIGBvcmdgIG9yIGBwcm9qZWN0YC4gPGJyLz4gKkV4YW1wbGU6KiBgb3JnYW5pemF0aW9uOjkyZjY5YzNhLTMzNGItNGYyNS05MGI4LTRkNGYzYmU2YjgyNWAgb3IgYGFwcC9wcm9qZWN0OnByb2plY3QtbmFtZWAgb3IgYGNvbXB1dGUvaW5zdGFuY2U6OTJmNjljM2EtMzM0Yi00ZjI1LTkwYjgtNGQ0ZjNiZTZiODI1YCJqChxCYXRjaENoZWNrUGVybWlzc2lvblJlc3BvbnNlEkoKBXBhaXJzGAEgAygLMjsucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5CYXRjaENoZWNrUGVybWlzc2lvblJlc3BvbnNlUGFpciJ1CiBCYXRjaENoZWNrUGVybWlzc2lvblJlc3BvbnNlUGFpchJBCgRib2R5GAEgASgLMjMucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5CYXRjaENoZWNrUGVybWlzc2lvbkJvZHkSDgoGc3RhdHVzGAIgASgIIqEDChVNZXRhU2NoZW1hUmVxdWVzdEJvZHkS1AEKBG5hbWUYASABKAlCxQGSQaYBMqMBVGhlIG5hbWUgb2YgdGhlIG1ldGFzY2hlbWEuIFRoZSBuYW1lIG11c3QgYmUgdW5pcXVlIHdpdGhpbiB0aGUgZW50aXJlIEZyb250aWVyIGluc3RhbmNlLiBUaGUgbmFtZSBjYW4gY29udGFpbiBvbmx5IGFscGhhbnVtZXJpYyBjaGFyYWN0ZXJzLCBkYXNoZXMgYW5kIHVuZGVyc2NvcmVzLuJBAQL6QhRyEjIQXltBLVphLXowLTktX10rJBKwAQoGc2NoZW1hGAIgASgJQp8BkkGQATKNAVRoZSBzY2hlbWEgb2YgdGhlIG1ldGFzY2hlbWEuIFRoZSBzY2hlbWEgbXVzdCBiZSBhIHZhbGlkIEpTT04gc2NoZW1hLlBsZWFzZSByZWZlciB0byBodHRwczovL2pzb24tc2NoZW1hLm9yZy8gdG8ga25vdyBtb3JlIGFib3V0IGpzb24gc2NoZW1hLuJBAQL6QgRyAhACImMKF0NyZWF0ZU1ldGFTY2hlbWFSZXF1ZXN0EkgKBGJvZHkYASABKAsyMC5yYXlzdGFjay5mcm9udGllci52MWJldGExLk1ldGFTY2hlbWFSZXF1ZXN0Qm9keUII+kIFigECEAEiVQoYQ3JlYXRlTWV0YVNjaGVtYVJlc3BvbnNlEjkKCm1ldGFzY2hlbWEYASABKAsyJS5yYXlzdGFjay5mcm9udGllci52MWJldGExLk1ldGFTY2hlbWEiIgoUR2V0TWV0YVNjaGVtYVJlcXVlc3QSCgoCaWQYASABKAkiUgoVR2V0TWV0YVNjaGVtYVJlc3BvbnNlEjkKCm1ldGFzY2hlbWEYASABKAsyJS5yYXlzdGFjay5mcm9udGllci52MWJldGExLk1ldGFTY2hlbWEibwoXVXBkYXRlTWV0YVNjaGVtYVJlcXVlc3QSCgoCaWQYASABKAkSSAoEYm9keRgCIAEoCzIwLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTWV0YVNjaGVtYVJlcXVlc3RCb2R5Qgj6QgWKAQIQASJVChhVcGRhdGVNZXRhU2NoZW1hUmVzcG9uc2USOQoKbWV0YXNjaGVtYRgBIAEoCzIlLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTWV0YVNjaGVtYSIlChdEZWxldGVNZXRhU2NoZW1hUmVxdWVzdBIKCgJpZBgBIAEoCSIaChhEZWxldGVNZXRhU2NoZW1hUmVzcG9uc2UiGAoWTGlzdE1ldGFTY2hlbWFzUmVxdWVzdCJVChdMaXN0TWV0YVNjaGVtYXNSZXNwb25zZRI6CgttZXRhc2NoZW1hcxgBIAMoCzIlLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTWV0YVNjaGVtYSIcChpEZXNjcmliZVByZWZlcmVuY2VzUmVxdWVzdCJZChtEZXNjcmliZVByZWZlcmVuY2VzUmVzcG9uc2USOgoGdHJhaXRzGAEgAygLMioucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5QcmVmZXJlbmNlVHJhaXQihwEKJENyZWF0ZU9yZ2FuaXphdGlvblByZWZlcmVuY2VzUmVxdWVzdBITCgJpZBgBIAEoCUIH+kIEcgIQAxJKCgZib2RpZXMYAiADKAsyMC5yYXlzdGFjay5mcm9udGllci52MWJldGExLlByZWZlcmVuY2VSZXF1ZXN0Qm9keUII+kIFkgECCAEiYwolQ3JlYXRlT3JnYW5pemF0aW9uUHJlZmVyZW5jZXNSZXNwb25zZRI6CgtwcmVmZXJlbmNlcxgBIAMoCzIlLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUHJlZmVyZW5jZSI5CiJMaXN0T3JnYW5pemF0aW9uUHJlZmVyZW5jZXNSZXF1ZXN0EhMKAmlkGAEgASgJQgf6QgRyAhADImEKI0xpc3RPcmdhbml6YXRpb25QcmVmZXJlbmNlc1Jlc3BvbnNlEjoKC3ByZWZlcmVuY2VzGAEgAygLMiUucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5QcmVmZXJlbmNlIoIBCh9DcmVhdGVQcm9qZWN0UHJlZmVyZW5jZXNSZXF1ZXN0EhMKAmlkGAEgASgJQgf6QgRyAhADEkoKBmJvZGllcxgCIAMoCzIwLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUHJlZmVyZW5jZVJlcXVlc3RCb2R5Qgj6QgWSAQIIASJeCiBDcmVhdGVQcm9qZWN0UHJlZmVyZW5jZXNSZXNwb25zZRI6CgtwcmVmZXJlbmNlcxgBIAMoCzIlLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUHJlZmVyZW5jZSI0Ch1MaXN0UHJvamVjdFByZWZlcmVuY2VzUmVxdWVzdBITCgJpZBgBIAEoCUIH+kIEcgIQAyJcCh5MaXN0UHJvamVjdFByZWZlcmVuY2VzUmVzcG9uc2USOgoLcHJlZmVyZW5jZXMYASADKAsyJS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlByZWZlcmVuY2UigAEKHUNyZWF0ZUdyb3VwUHJlZmVyZW5jZXNSZXF1ZXN0EhMKAmlkGAEgASgJQgf6QgRyAhADEkoKBmJvZGllcxgCIAMoCzIwLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUHJlZmVyZW5jZVJlcXVlc3RCb2R5Qgj6QgWSAQIIASJcCh5DcmVhdGVHcm91cFByZWZlcmVuY2VzUmVzcG9uc2USOgoLcHJlZmVyZW5jZXMYASADKAsyJS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlByZWZlcmVuY2UiMgobTGlzdEdyb3VwUHJlZmVyZW5jZXNSZXF1ZXN0EhMKAmlkGAEgASgJQgf6QgRyAhADIloKHExpc3RHcm91cFByZWZlcmVuY2VzUmVzcG9uc2USOgoLcHJlZmVyZW5jZXMYASADKAsyJS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlByZWZlcmVuY2UifwocQ3JlYXRlVXNlclByZWZlcmVuY2VzUmVxdWVzdBITCgJpZBgBIAEoCUIH+kIEcgIQAxJKCgZib2RpZXMYAiADKAsyMC5yYXlzdGFjay5mcm9udGllci52MWJldGExLlByZWZlcmVuY2VSZXF1ZXN0Qm9keUII+kIFkgECCAEiWwodQ3JlYXRlVXNlclByZWZlcmVuY2VzUmVzcG9uc2USOgoLcHJlZmVyZW5jZXMYASADKAsyJS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlByZWZlcmVuY2UiMQoaTGlzdFVzZXJQcmVmZXJlbmNlc1JlcXVlc3QSEwoCaWQYASABKAlCB/pCBHICEAMiWQobTGlzdFVzZXJQcmVmZXJlbmNlc1Jlc3BvbnNlEjoKC3ByZWZlcmVuY2VzGAEgAygLMiUucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5QcmVmZXJlbmNlInEKI0NyZWF0ZUN1cnJlbnRVc2VyUHJlZmVyZW5jZXNSZXF1ZXN0EkoKBmJvZGllcxgCIAMoCzIwLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUHJlZmVyZW5jZVJlcXVlc3RCb2R5Qgj6QgWSAQIIASJiCiRDcmVhdGVDdXJyZW50VXNlclByZWZlcmVuY2VzUmVzcG9uc2USOgoLcHJlZmVyZW5jZXMYASADKAsyJS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlByZWZlcmVuY2UiIwohTGlzdEN1cnJlbnRVc2VyUHJlZmVyZW5jZXNSZXF1ZXN0ImAKIkxpc3RDdXJyZW50VXNlclByZWZlcmVuY2VzUmVzcG9uc2USOgoLcHJlZmVyZW5jZXMYASADKAsyJS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlByZWZlcmVuY2UiSAodQmlsbGluZ1dlYmhvb2tDYWxsYmFja1JlcXVlc3QSGQoIcHJvdmlkZXIYASABKAlCB/pCBHICEAESDAoEYm9keRgCIAEoDCIgCh5CaWxsaW5nV2ViaG9va0NhbGxiYWNrUmVzcG9uc2UihAQKG0NyZWF0ZVByb3NwZWN0UHVibGljUmVxdWVzdBI+CgRuYW1lGAEgASgJQjCSQRcyFWZ1bGwgbmFtZSBvZiB0aGUgdXNlcvpCE3IRMgxeW0EtWmEteiBdKyTQAQESMgoFZW1haWwYBSABKAlCI5JBEzIRZW1haWwgb2YgdGhlIHVzZXLiQQEC+kIGcgQQAWABEiwKBXBob25lGAYgASgJQh2SQRoyGHBob25lIG51bWJlciBvZiB0aGUgdXNlchKAAQoIYWN0aXZpdHkYByABKAlCbpJBTjJMYWN0aXZpdHkgZm9yIHdoaWNoIHVzZXIgaXMgc3Vic2NyaWJpbmcsIGUuZy4gbmV3c2xldHRlciwgd2FpdGxpc3QsIGJsb2dzIGV0Y+JBAQL6QhZyFBABMhBeW0EtWmEtejAtOS1fXSskEm0KBnNvdXJjZRgJIAEoCUJdkkFAMj5zb3VyY2Ugb2YgdGhpcyB1c2VyIGFkZGl0aW9uIGUuZy4gcGxhdGZvcm0sIHdlYnNpdGUsIGFkbWluIGV0Y/pCF3IVMhBeW0EtWmEtejAtOS1fXSsk0AEBElEKCG1ldGFkYXRhGAsgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEImkkEjMiFhZGRpdGlvbmFsIGluZm8gYXMga2V5IHZhbHVlIHBhaXIiHgocQ3JlYXRlUHJvc3BlY3RQdWJsaWNSZXNwb25zZSIVChNMaXN0U2Vzc2lvbnNSZXF1ZXN0IkwKFExpc3RTZXNzaW9uc1Jlc3BvbnNlEjQKCHNlc3Npb25zGAEgAygLMiIucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5TZXNzaW9uIjgKFFJldm9rZVNlc3Npb25SZXF1ZXN0EiAKCnNlc3Npb25faWQYASABKAlCDOJBAQL6QgVyA7ABASIXChVSZXZva2VTZXNzaW9uUmVzcG9uc2UiGAoWUGluZ1VzZXJTZXNzaW9uUmVxdWVzdCJUChdQaW5nVXNlclNlc3Npb25SZXNwb25zZRI5CghtZXRhZGF0YRgBIAEoCzInLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuU2Vzc2lvbi5NZXRhIrUDChhDcmVhdGVBdWRpdFJlY29yZFJlcXVlc3QSQAoFYWN0b3IYASABKAsyKy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkF1ZGl0UmVjb3JkQWN0b3JCBOJBAQISGgoFZXZlbnQYAiABKAlCC+JBAQL6QgRyAhADEkYKCHJlc291cmNlGAMgASgLMi4ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5BdWRpdFJlY29yZFJlc291cmNlQgTiQQECEjwKBnRhcmdldBgEIAEoCzIsLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQXVkaXRSZWNvcmRUYXJnZXQSNQoLb2NjdXJyZWRfYXQYBSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQgTiQQECEhgKBm9yZ19pZBgGIAEoCUII+kIFcgOwAQESEgoKcmVxdWVzdF9pZBgHIAEoCRIpCghtZXRhZGF0YRgIIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSJQoPaWRlbXBvdGVuY3lfa2V5GAkgASgJQgziQQEC+kIFcgOwAQEiWQoZQ3JlYXRlQXVkaXRSZWNvcmRSZXNwb25zZRI8CgxhdWRpdF9yZWNvcmQYASABKAsyJi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkF1ZGl0UmVjb3JkMtORAwoPRnJvbnRpZXJTZXJ2aWNlEugCCglMaXN0VXNlcnMSKy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RVc2Vyc1JlcXVlc3QaLC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RVc2Vyc1Jlc3BvbnNlIv8BkkHlAQoEVXNlchIRTGlzdCBwdWJsaWMgdXNlcnMayQFSZXR1cm5zIHRoZSB1c2VycyBmcm9tIGFsbCB0aGUgb3JnYW5pemF0aW9ucyBpbiBhIEZyb250aWVyIGluc3RhbmNlLiBJdCBjYW4gYmUgZmlsdGVyZWQgYnkga2V5d29yZCwgb3JnYW5pemF0aW9uLCBncm91cCBhbmQgc3RhdGUuIEFkZGl0aW9uYWxseSB5b3UgY2FuIGluY2x1ZGUgcGFnZSBudW1iZXIgYW5kIHBhZ2Ugc2l6ZSBmb3IgcGFnaW5hdGlvbi6C0+STAhASDi92MWJldGExL3VzZXJzErsGCgpDcmVhdGVVc2VyEiwucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVVc2VyUmVxdWVzdBotLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ3JlYXRlVXNlclJlc3BvbnNlIs8FkkGvBQoEVXNlchILQ3JlYXRlIHVzZXIalwVDcmVhdGUgYSB1c2VyIHdpdGggdGhlIGdpdmVuIGRldGFpbHMuIEEgdXNlciBpcyBub3QgYXR0YWNoZWQgdG8gYW4gb3JnYW5pemF0aW9uIG9yIGEgZ3JvdXAgYnkgZGVmYXVsdCxhbmQgY2FuIGJlIGludml0ZWQgdG8gdGhlIG9yZy9ncm91cC4gVGhlIG5hbWUgb2YgdGhlIHVzZXIgbXVzdCBiZSB1bmlxdWUgd2l0aGluIHRoZSBlbnRpcmUgRnJvbnRpZXIgaW5zdGFuY2UuIElmIGEgdXNlciBuYW1lIGlzIG5vdCBwcm92aWRlZCwgRnJvbnRpZXIgYXV0b21hdGljYWxseSBnZW5lcmF0ZXMgYSBuYW1lIGZyb20gdGhlIHVzZXIgZW1haWwuIFRoZSB1c2VyIG1ldGFkYXRhIGlzIHZhbGlkYXRlZCBhZ2FpbnN0IHRoZSB1c2VyIG1ldGFzY2hlbWEuIEJ5IGRlZmF1bHQgdGhlIHVzZXIgbWV0YXNjaGVtYSBjb250YWlucyBgbGFiZWxzYCBhbmQgYGRlc2NyaXB0aW9uc2AgZm9yIHRoZSB1c2VyLiBUaGUgYHRpdGxlYCBmaWVsZCBjYW4gYmUgb3B0aW9uYWxseSBhZGRlZCBmb3IgYSB1c2VyLWZyaWVuZGx5IG5hbWUuIDxici8+PGJyLz4qRXhhbXBsZToqYHsiZW1haWwiOiJqb2huLmRvZUByYXlzdGFjay5vcmciLCJ0aXRsZSI6IkpvaG4gRG9lIixtZXRhZGF0YTp7ImxhYmVsIjogeyJrZXkxIjogInZhbHVlMSJ9LCAiZGVzY3JpcHRpb24iOiAiVXNlciBEZXNjcmlwdGlvbiJ9fWBiAILT5JMCFiIOL3YxYmV0YTEvdXNlcnM6BGJvZHkSzwEKB0dldFVzZXISKS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkdldFVzZXJSZXF1ZXN0GioucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5HZXRVc2VyUmVzcG9uc2UibZJBTwoEVXNlchIIR2V0IHVzZXIaPUdldCBhIHVzZXIgYnkgaWQgc2VhcmNoZWQgb3ZlciBhbGwgb3JnYW5pemF0aW9ucyBpbiBGcm9udGllci6C0+STAhUSEy92MWJldGExL3VzZXJzL3tpZH0S6gIKDkxpc3RVc2VyR3JvdXBzEjAucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0VXNlckdyb3Vwc1JlcXVlc3QaMS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RVc2VyR3JvdXBzUmVzcG9uc2Ui8gGSQcwBCgRVc2VyEhBMaXN0IHVzZXIgZ3JvdXBzGrEBTGlzdHMgYWxsIHRoZSBncm91cHMgYSB1c2VyIGJlbG9uZ3MgdG8gYWNyb3NzIGFsbCBvcmdhbml6YXRpb24gaW4gRnJvbnRpZXIuIFRvIGdldCB0aGUgZ3JvdXBzIG9mIGEgdXNlciBpbiBhIHNwZWNpZmljIG9yZ2FuaXphdGlvbiwgdXNlIHRoZSBvcmdfaWQgZmlsdGVyIGluIHRoZSBxdWVyeSBwYXJhbWV0ZXIugtPkkwIcEhovdjFiZXRhMS91c2Vycy97aWR9L2dyb3VwcxLHAQoVTGlzdEN1cnJlbnRVc2VyR3JvdXBzEjcucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0Q3VycmVudFVzZXJHcm91cHNSZXF1ZXN0GjgucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0Q3VycmVudFVzZXJHcm91cHNSZXNwb25zZSI7kkEWCgRVc2VyEg5MaXN0IG15IGdyb3Vwc4LT5JMCHBIaL3YxYmV0YTEvdXNlcnMvc2VsZi9ncm91cHMSrQEKDkdldEN1cnJlbnRVc2VyEjAucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5HZXRDdXJyZW50VXNlclJlcXVlc3QaMS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkdldEN1cnJlbnRVc2VyUmVzcG9uc2UiNpJBGAoEVXNlchIQR2V0IGN1cnJlbnQgdXNlcoLT5JMCFRITL3YxYmV0YTEvdXNlcnMvc2VsZhKiAQoKVXBkYXRlVXNlchIsLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuVXBkYXRlVXNlclJlcXVlc3QaLS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlVwZGF0ZVVzZXJSZXNwb25zZSI3kkETCgRVc2VyEgtVcGRhdGUgdXNlcoLT5JMCGxoTL3YxYmV0YTEvdXNlcnMve2lkfToEYm9keRK/AQoRVXBkYXRlQ3VycmVudFVzZXISMy5yYXlzdGFjay5mcm9udGllci52MWJldGExLlVwZGF0ZUN1cnJlbnRVc2VyUmVxdWVzdBo0LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuVXBkYXRlQ3VycmVudFVzZXJSZXNwb25zZSI/kkEbCgRVc2VyEhNVcGRhdGUgY3VycmVudCB1c2VygtPkkwIbGhMvdjFiZXRhMS91c2Vycy9zZWxmOgRib2R5EpECCgpFbmFibGVVc2VyEiwucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5FbmFibGVVc2VyUmVxdWVzdBotLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRW5hYmxlVXNlclJlc3BvbnNlIqUBkkF9CgRVc2VyEgtFbmFibGUgdXNlchpoU2V0cyB0aGUgc3RhdGUgb2YgdGhlIHVzZXIgYXMgZW5hYmxlZC4gVGhlIHVzZXIgd2lsbCBiZSBhYmxlIHRvIGxvZyBpbiBhbmQgYWNjZXNzIHRoZSBGcm9udGllciBpbnN0YW5jZS6C0+STAh8iGi92MWJldGExL3VzZXJzL3tpZH0vZW5hYmxlOgEqEpADCgtEaXNhYmxlVXNlchItLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRGlzYWJsZVVzZXJSZXF1ZXN0Gi4ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5EaXNhYmxlVXNlclJlc3BvbnNlIqECkkH3AQoEVXNlchIMRGlzYWJsZSB1c2VyGuABU2V0cyB0aGUgc3RhdGUgb2YgdGhlIHVzZXIgYXMgZGlhYmxlZC5UaGUgdXNlcidzIG1lbWJlcnNoaXAgdG8gZ3JvdXBzIGFuZCBvcmdhbml6YXRpb25zIHdpbGwgc3RpbGwgZXhpc3QgYWxvbmcgd2l0aCBhbGwgaXQncyByb2xlcyBmb3IgYWNjZXNzIGNvbnRyb2wsIGJ1dCB0aGUgdXNlciB3aWxsIG5vdCBiZSBhYmxlIHRvIGxvZyBpbiBhbmQgYWNjZXNzIHRoZSBGcm9udGllciBpbnN0YW5jZS6C0+STAiAiGy92MWJldGExL3VzZXJzL3tpZH0vZGlzYWJsZToBKhL3AQoKRGVsZXRlVXNlchIsLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRGVsZXRlVXNlclJlcXVlc3QaLS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkRlbGV0ZVVzZXJSZXNwb25zZSKLAZJBbQoEVXNlchILRGVsZXRlIHVzZXIaWERlbGV0ZSBhbiB1c2VyIHBlcm1hbmVudGx5IGZvcmV2ZXIgYW5kIGFsbCBvZiBpdHMgcmVsYXRpb25zIChvcmdhbml6YXRpb25zLCBncm91cHMsIGV0YymC0+STAhUqEy92MWJldGExL3VzZXJzL3tpZH0S/wQKF0xpc3RPcmdhbml6YXRpb25zQnlVc2VyEjkucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0T3JnYW5pemF0aW9uc0J5VXNlclJlcXVlc3QaOi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RPcmdhbml6YXRpb25zQnlVc2VyUmVzcG9uc2Ui7AOSQb8DCgRVc2VyEhZHZXQgdXNlciBvcmdhbml6YXRpb25zGp4DVGhpcyBBUEkgcmV0dXJucyB0d28gbGlzdCBvZiBvcmdhbml6YXRpb25zIGZvciB0aGUgdXNlci4gaSkgVGhlIGxpc3Qgb2Ygb3JncyB3aGljaCB0aGUgY3VycmVudCB1c2VyIGlzIGFscmVhZHkgYSBwYXJ0IG9mIGlpKSBUaGUgbGlzdCBvZiBvcmdhbml6YXRpb25zIHRoZSB1c2VyIGNhbiBqb2luIGRpcmVjdGx5IChiYXNlZCBvbiBkb21haW4gd2hpdGVsaXN0ZWQgYW5kIHZlcmlmaWVkIGJ5IHRoZSBvcmcpLiBUaGlzIGxpc3Qgd2lsbCBhbHNvIGNvbnRhaW4gb3JncyBvZiB3aGljaCB1c2VyIGlzIGFscmVhZHkgYSBwYXJ0IG9mLiBOb3RlOiB0aGUgZG9tYWluIG5lZWRzIHRvIGJlIHZlcmlmaWVkIGJ5IHRoZSBvcmcgYmVmb3JlIHRoZSBpdCBpcyByZXR1cm5lZCBhcyBvbmUgb2YgdGhlIGpvaW5hYmxlIG9yZ3MgYnkgZG9tYWlugtPkkwIjEiEvdjFiZXRhMS91c2Vycy97aWR9L29yZ2FuaXphdGlvbnMSpAUKHkxpc3RPcmdhbml6YXRpb25zQnlDdXJyZW50VXNlchJALnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdE9yZ2FuaXphdGlvbnNCeUN1cnJlbnRVc2VyUmVxdWVzdBpBLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdE9yZ2FuaXphdGlvbnNCeUN1cnJlbnRVc2VyUmVzcG9uc2Ui/AOSQc8DCgRVc2VyEhRHZXQgbXkgb3JnYW5pemF0aW9ucxqwA1RoaXMgQVBJIHJldHVybnMgdHdvIGxpc3Qgb2Ygb3JnYW5pemF0aW9ucyBmb3IgdGhlIGN1cnJlbnQgbG9nZ2VkIGluIHVzZXIuIGkpIFRoZSBsaXN0IG9mIG9yZ3Mgd2hpY2ggdGhlIGN1cnJlbnQgdXNlciBpcyBhbHJlYWR5IGEgcGFydCBvZiBpaSkgVGhlIGxpc3Qgb2Ygb3JnYW5pemF0aW9ucyB0aGUgdXNlciBjYW4gam9pbiBkaXJlY3RseSAoYmFzZWQgb24gZG9tYWluIHdoaXRlbGlzdGVkIGFuZCB2ZXJpZmllZCBieSB0aGUgb3JnKS4gVGhpcyBsaXN0IHdpbGwgYWxzbyBjb250YWluIG9yZ3Mgb2Ygd2hpY2ggdXNlciBpcyBhbHJlYWR5IGEgcGFydCBvZi4gTm90ZTogdGhlIGRvbWFpbiBuZWVkcyB0byBiZSB2ZXJpZmllZCBieSB0aGUgb3JnIGJlZm9yZSB0aGUgaXQgaXMgcmV0dXJuZWQgYXMgb25lIG9mIHRoZSBqb2luYWJsZSBvcmdzIGJ5IGRvbWFpboLT5JMCIxIhL3YxYmV0YTEvdXNlcnMvc2VsZi9vcmdhbml6YXRpb25zEuwBChJMaXN0UHJvamVjdHNCeVVzZXISNC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RQcm9qZWN0c0J5VXNlclJlcXVlc3QaNS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RQcm9qZWN0c0J5VXNlclJlc3BvbnNlImmSQUIKBFVzZXISEUdldCB1c2VyIHByb2plY3RzGidHZXQgYWxsIHRoZSBwcm9qZWN0cyBhIHVzZXIgYmVsb25ncyB0by6C0+STAh4SHC92MWJldGExL3VzZXJzL3tpZH0vcHJvamVjdHMShAIKGUxpc3RQcm9qZWN0c0J5Q3VycmVudFVzZXISOy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RQcm9qZWN0c0J5Q3VycmVudFVzZXJSZXF1ZXN0GjwucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0UHJvamVjdHNCeUN1cnJlbnRVc2VyUmVzcG9uc2UibJJBRQoEVXNlchIPR2V0IG15IHByb2plY3RzGixHZXQgYWxsIHByb2plY3RzIHRoZSBjdXJyZW50IHVzZXIgYmVsb25ncyB0b4LT5JMCHhIcL3YxYmV0YTEvdXNlcnMvc2VsZi9wcm9qZWN0cxL3AQoTTGlzdFVzZXJJbnZpdGF0aW9ucxI1LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdFVzZXJJbnZpdGF0aW9uc1JlcXVlc3QaNi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RVc2VySW52aXRhdGlvbnNSZXNwb25zZSJxkkFHCgRVc2VyEhVMaXN0IHVzZXIgaW52aXRhdGlvbnMaKExpc3QgYWxsIHRoZSBpbnZpdGF0aW9ucyBzZW50IHRvIGEgdXNlci6C0+STAiESHy92MWJldGExL3VzZXJzL3tpZH0vaW52aXRhdGlvbnMSkgIKGkxpc3RDdXJyZW50VXNlckludml0YXRpb25zEjwucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0Q3VycmVudFVzZXJJbnZpdGF0aW9uc1JlcXVlc3QaPS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RDdXJyZW50VXNlckludml0YXRpb25zUmVzcG9uc2Uid5JBTQoEVXNlchIVTGlzdCB1c2VyIGludml0YXRpb25zGi5MaXN0IGFsbCB0aGUgaW52aXRhdGlvbnMgc2VudCB0byBjdXJyZW50IHVzZXIugtPkkwIhEh8vdjFiZXRhMS91c2Vycy9zZWxmL2ludml0YXRpb25zEqgCChBMaXN0U2VydmljZVVzZXJzEjIucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0U2VydmljZVVzZXJzUmVxdWVzdBozLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdFNlcnZpY2VVc2Vyc1Jlc3BvbnNlIqoBkkGJAQoLU2VydmljZVVzZXISFkxpc3Qgb3JnIHNlcnZpY2UgdXNlcnMaYlJldHVybnMgdGhlIHNlcnZpY2UgdXNlciBvZiBhbiBvcmdhbml6YXRpb24gaW4gYSBGcm9udGllciBpbnN0YW5jZS4gSXQgY2FuIGJlIGZpbHRlciBieSBpdCdzIHN0YXRlgtPkkwIXEhUvdjFiZXRhMS9zZXJ2aWNldXNlcnMS9AEKEUNyZWF0ZVNlcnZpY2VVc2VyEjMucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVTZXJ2aWNlVXNlclJlcXVlc3QaNC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNyZWF0ZVNlcnZpY2VVc2VyUmVzcG9uc2UidJJBOgoLU2VydmljZVVzZXISE0NyZWF0ZSBzZXJ2aWNlIHVzZXIaFkNyZWF0ZSBhIHNlcnZpY2UgdXNlci6C0+STAjEiLC92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vc2VydmljZXVzZXJzOgEqEvgBCg5HZXRTZXJ2aWNlVXNlchIwLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR2V0U2VydmljZVVzZXJSZXF1ZXN0GjEucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5HZXRTZXJ2aWNlVXNlclJlc3BvbnNlIoABkkFECgtTZXJ2aWNlVXNlchIQR2V0IHNlcnZpY2UgdXNlchojR2V0IHNlcnZpY2UgdXNlciBkZXRhaWxzIGJ5IGl0cyBpZC6C0+STAjMSMS92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vc2VydmljZXVzZXJzL3tpZH0SvgIKEURlbGV0ZVNlcnZpY2VVc2VyEjMucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5EZWxldGVTZXJ2aWNlVXNlclJlcXVlc3QaNC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkRlbGV0ZVNlcnZpY2VVc2VyUmVzcG9uc2UivQGSQYABCgtTZXJ2aWNlVXNlchITRGVsZXRlIHNlcnZpY2UgdXNlchpcRGVsZXRlIGEgc2VydmljZSB1c2VyIHBlcm1hbmVudGx5IGFuZCBhbGwgb2YgaXRzIHJlbGF0aW9ucyAoa2V5cywgb3JnYW5pemF0aW9ucywgcm9sZXMsIGV0YymC0+STAjMqMS92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vc2VydmljZXVzZXJzL3tpZH0SmAMKFENyZWF0ZVNlcnZpY2VVc2VySldLEjYucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVTZXJ2aWNlVXNlckpXS1JlcXVlc3QaNy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNyZWF0ZVNlcnZpY2VVc2VySldLUmVzcG9uc2UijgKSQckBCgtTZXJ2aWNlVXNlchIrQ3JlYXRlIHNlcnZpY2UgdXNlciBwdWJsaWMvcHJpdmF0ZSBrZXkgcGFpchqMAUdlbmVyYXRlIGEgc2VydmljZSB1c2VyIGtleSBhbmQgcmV0dXJuIGl0LCB0aGUgcHJpdmF0ZSBrZXkgcGFydCBvZiB0aGUgcmVzcG9uc2Ugd2lsbCBub3QgYmUgcGVyc2lzdGVkIGFuZCBzaG91bGQgYmUga2VwdCBzZWN1cmVseSBieSBjbGllbnQugtPkkwI7IjYvdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L3NlcnZpY2V1c2Vycy97aWR9L2tleXM6ASoSrwIKE0xpc3RTZXJ2aWNlVXNlckpXS3MSNS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RTZXJ2aWNlVXNlckpXS3NSZXF1ZXN0GjYucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0U2VydmljZVVzZXJKV0tzUmVzcG9uc2UiqAGSQWcKC1NlcnZpY2VVc2VyEhZMaXN0IHNlcnZpY2UgdXNlciBrZXlzGkBMaXN0IGFsbCB0aGUga2V5cyBvZiBhIHNlcnZpY2UgdXNlciB3aXRoIGl0cyBkZXRhaWxzIGV4Y2VwdCBqd2sugtPkkwI4EjYvdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L3NlcnZpY2V1c2Vycy97aWR9L2tleXMSlgIKEUdldFNlcnZpY2VVc2VySldLEjMucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5HZXRTZXJ2aWNlVXNlckpXS1JlcXVlc3QaNC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkdldFNlcnZpY2VVc2VySldLUmVzcG9uc2UilQGSQUsKC1NlcnZpY2VVc2VyEhRHZXQgc2VydmljZSB1c2VyIGtleRomR2V0IGEgc2VydmljZSB1c2VyIHB1YmxpYyBSU0EgSldLIHNldC6C0+STAkESPy92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vc2VydmljZXVzZXJzL3tpZH0va2V5cy97a2V5X2lkfRKiAgoURGVsZXRlU2VydmljZVVzZXJKV0sSNi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkRlbGV0ZVNlcnZpY2VVc2VySldLUmVxdWVzdBo3LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRGVsZXRlU2VydmljZVVzZXJKV0tSZXNwb25zZSKYAZJBTgoLU2VydmljZVVzZXISF0RlbGV0ZSBzZXJ2aWNlIHVzZXIga2V5GiZEZWxldGUgYSBzZXJ2aWNlIHVzZXIga2V5IHBlcm1hbmVudGx5LoLT5JMCQSo/L3YxYmV0YTEvb3JnYW5pemF0aW9ucy97b3JnX2lkfS9zZXJ2aWNldXNlcnMve2lkfS9rZXlzL3trZXlfaWR9EqQDChtDcmVhdGVTZXJ2aWNlVXNlckNyZWRlbnRpYWwSPS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNyZWF0ZVNlcnZpY2VVc2VyQ3JlZGVudGlhbFJlcXVlc3QaPi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNyZWF0ZVNlcnZpY2VVc2VyQ3JlZGVudGlhbFJlc3BvbnNlIoUCkkG9AQoLU2VydmljZVVzZXISJkNyZWF0ZSBzZXJ2aWNlIHVzZXIgY2xpZW50IGNyZWRlbnRpYWxzGoUBR2VuZXJhdGUgYSBzZXJ2aWNlIHVzZXIgY3JlZGVudGlhbCBhbmQgcmV0dXJuIGl0LiBUaGUgY3JlZGVudGlhbCB2YWx1ZSB3aWxsIG5vdCBiZSBwZXJzaXN0ZWQgYW5kIHNob3VsZCBiZSBzZWN1cmVseSBzdG9yZWQgYnkgY2xpZW50LoLT5JMCPiI5L3YxYmV0YTEvb3JnYW5pemF0aW9ucy97b3JnX2lkfS9zZXJ2aWNldXNlcnMve2lkfS9zZWNyZXRzOgEqErkCChpMaXN0U2VydmljZVVzZXJDcmVkZW50aWFscxI8LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdFNlcnZpY2VVc2VyQ3JlZGVudGlhbHNSZXF1ZXN0Gj0ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0U2VydmljZVVzZXJDcmVkZW50aWFsc1Jlc3BvbnNlIp0BkkFZCgtTZXJ2aWNlVXNlchIdTGlzdCBzZXJ2aWNlIHVzZXIgY3JlZGVudGlhbHMaK0xpc3QgYWxsIHRoZSBjcmVkZW50aWFscyBvZiBhIHNlcnZpY2UgdXNlci6C0+STAjsSOS92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vc2VydmljZXVzZXJzL3tpZH0vc2VjcmV0cxLAAgobRGVsZXRlU2VydmljZVVzZXJDcmVkZW50aWFsEj0ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5EZWxldGVTZXJ2aWNlVXNlckNyZWRlbnRpYWxSZXF1ZXN0Gj4ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5EZWxldGVTZXJ2aWNlVXNlckNyZWRlbnRpYWxSZXNwb25zZSKhAZJBUQoLU2VydmljZVVzZXISH0RlbGV0ZSBzZXJ2aWNlIHVzZXIgY3JlZGVudGlhbHMaIURlbGV0ZSBhIHNlcnZpY2UgdXNlciBjcmVkZW50aWFsLoLT5JMCRypFL3YxYmV0YTEvb3JnYW5pemF0aW9ucy97b3JnX2lkfS9zZXJ2aWNldXNlcnMve2lkfS9zZWNyZXRzL3tzZWNyZXRfaWR9EvwCChZDcmVhdGVTZXJ2aWNlVXNlclRva2VuEjgucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVTZXJ2aWNlVXNlclRva2VuUmVxdWVzdBo5LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ3JlYXRlU2VydmljZVVzZXJUb2tlblJlc3BvbnNlIuwBkkGlAQoLU2VydmljZVVzZXISGUNyZWF0ZSBzZXJ2aWNlIHVzZXIgdG9rZW4ae0dlbmVyYXRlIGEgc2VydmljZSB1c2VyIHRva2VuIGFuZCByZXR1cm4gaXQuIFRoZSB0b2tlbiB2YWx1ZSB3aWxsIG5vdCBiZSBwZXJzaXN0ZWQgYW5kIHNob3VsZCBiZSBzZWN1cmVseSBzdG9yZWQgYnkgY2xpZW50LoLT5JMCPSI4L3YxYmV0YTEvb3JnYW5pemF0aW9ucy97b3JnX2lkfS9zZXJ2aWNldXNlcnMve2lkfS90b2tlbnM6ASoSnwIKFUxpc3RTZXJ2aWNlVXNlclRva2VucxI3LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdFNlcnZpY2VVc2VyVG9rZW5zUmVxdWVzdBo4LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdFNlcnZpY2VVc2VyVG9rZW5zUmVzcG9uc2UikgGSQU8KC1NlcnZpY2VVc2VyEhhMaXN0IHNlcnZpY2UgdXNlciB0b2tlbnMaJkxpc3QgYWxsIHRoZSB0b2tlbnMgb2YgYSBzZXJ2aWNlIHVzZXIugtPkkwI6EjgvdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L3NlcnZpY2V1c2Vycy97aWR9L3Rva2VucxKkAgoWRGVsZXRlU2VydmljZVVzZXJUb2tlbhI4LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRGVsZXRlU2VydmljZVVzZXJUb2tlblJlcXVlc3QaOS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkRlbGV0ZVNlcnZpY2VVc2VyVG9rZW5SZXNwb25zZSKUAZJBRgoLU2VydmljZVVzZXISGURlbGV0ZSBzZXJ2aWNlIHVzZXIgdG9rZW4aHERlbGV0ZSBhIHNlcnZpY2UgdXNlciB0b2tlbi6C0+STAkUqQy92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vc2VydmljZXVzZXJzL3tpZH0vdG9rZW5zL3t0b2tlbl9pZH0SsAIKF0xpc3RTZXJ2aWNlVXNlclByb2plY3RzEjkucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0U2VydmljZVVzZXJQcm9qZWN0c1JlcXVlc3QaOi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RTZXJ2aWNlVXNlclByb2plY3RzUmVzcG9uc2UinQGSQVgKC1NlcnZpY2VVc2VyEhpMaXN0IHNlcnZpY2Ugc3NlciBwcm9qZWN0cxotTGlzdCBhbGwgcHJvamVjdHMgdGhlIHNlcnZpY2UgdXNlciBiZWxvbmdzIHRvgtPkkwI8EjovdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L3NlcnZpY2V1c2Vycy97aWR9L3Byb2plY3RzEuQCChZMaXN0T3JnYW5pemF0aW9uR3JvdXBzEjgucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0T3JnYW5pemF0aW9uR3JvdXBzUmVxdWVzdBo5LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdE9yZ2FuaXphdGlvbkdyb3Vwc1Jlc3BvbnNlItQBkkGiAQoFR3JvdXASGExpc3Qgb3JnYW5pemF0aW9uIGdyb3Vwcxp/R2V0IGFsbCBncm91cHMgdGhhdCBiZWxvbmcgdG8gYW4gb3JnYW5pemF0aW9uLiBUaGUgcmVzdWx0cyBjYW4gYmUgZmlsdGVyZWQgYnkgc3RhdGUgd2hpY2ggY2FuIGJlIGVpdGhlciBiZSBlbmFibGVkIG9yIGRpc2FibGVkLoLT5JMCKBImL3YxYmV0YTEvb3JnYW5pemF0aW9ucy97b3JnX2lkfS9ncm91cHMSnQMKC0NyZWF0ZUdyb3VwEi0ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVHcm91cFJlcXVlc3QaLi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNyZWF0ZUdyb3VwUmVzcG9uc2UirgKSQfYBCgVHcm91cBIMQ3JlYXRlIGdyb3VwGt4BQ3JlYXRlIGEgbmV3IGdyb3VwIGluIGFuIG9yZ2FuaXphdGlvbiB3aGljaCBzZXJ2ZXMgYXMgYSBjb250YWluZXIgZm9yIHVzZXJzLiBUaGUgZ3JvdXAgY2FuIGJlIGFzc2lnbmVkIHJvbGVzIGFuZCBwZXJtaXNzaW9ucyBhbmQgY2FuIGJlIHVzZWQgdG8gbWFuYWdlIGFjY2VzcyB0byByZXNvdXJjZXMuIEFsc28gYSBncm91cCBjYW4gYWxzbyBiZSBhc3NpZ25lZCB0byBvdGhlciBncm91cHMugtPkkwIuIiYvdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L2dyb3VwczoEYm9keRKtAQoIR2V0R3JvdXASKi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkdldEdyb3VwUmVxdWVzdBorLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR2V0R3JvdXBSZXNwb25zZSJIkkESCgVHcm91cBIJR2V0IGdyb3VwgtPkkwItEisvdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L2dyb3Vwcy97aWR9Er8BCgtVcGRhdGVHcm91cBItLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuVXBkYXRlR3JvdXBSZXF1ZXN0Gi4ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5VcGRhdGVHcm91cFJlc3BvbnNlIlGSQRUKBUdyb3VwEgxVcGRhdGUgZ3JvdXCC0+STAjMaKy92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vZ3JvdXBzL3tpZH06BGJvZHkS/gEKDkxpc3RHcm91cFVzZXJzEjAucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0R3JvdXBVc2Vyc1JlcXVlc3QaMS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RHcm91cFVzZXJzUmVzcG9uc2UihgGSQUoKBUdyb3VwEhBMaXN0IGdyb3VwIHVzZXJzGi9SZXR1cm5zIGEgbGlzdCBvZiB1c2VycyB0aGF0IGJlbG9uZyB0byBhIGdyb3VwLoLT5JMCMxIxL3YxYmV0YTEvb3JnYW5pemF0aW9ucy97b3JnX2lkfS9ncm91cHMve2lkfS91c2VycxLdAgoNQWRkR3JvdXBVc2VycxIvLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQWRkR3JvdXBVc2Vyc1JlcXVlc3QaMC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkFkZEdyb3VwVXNlcnNSZXNwb25zZSLoAZJBqAEKBUdyb3VwEg5BZGQgZ3JvdXAgdXNlchqOAUFkZHMgYSBwcmluY2lwbGUodXNlciBhbmQgc2VydmljZS11c2VycykgdG8gYSBncm91cCwgZXhpc3RpbmcgdXNlcnMgaW4gdGhlIGdyb3VwIHdpbGwgYmUgaWdub3JlZC4gQSBncm91cCBjYW4ndCBoYXZlIG5lc3RlZCBncm91cHMgYXMgbWVtYmVycy6C0+STAjYiMS92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vZ3JvdXBzL3tpZH0vdXNlcnM6ASoS7wIKD1JlbW92ZUdyb3VwVXNlchIxLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUmVtb3ZlR3JvdXBVc2VyUmVxdWVzdBoyLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUmVtb3ZlR3JvdXBVc2VyUmVzcG9uc2Ui9AGSQa0BCgVHcm91cBIRUmVtb3ZlIGdyb3VwIHVzZXIakAFSZW1vdmVzIGEgcHJpbmNpcGxlKHVzZXIgYW5kIHNlcnZpY2UtdXNlcnMpIGZyb20gYSBncm91cC4gSWYgdGhlIHVzZXIgaXMgbm90IGluIHRoZSBncm91cCwgdGhlIHJlcXVlc3Qgd2lsbCBzdWNjZWVkIGJ1dCBubyBjaGFuZ2VzIHdpbGwgYmUgbWFkZS6C0+STAj0qOy92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vZ3JvdXBzL3tpZH0vdXNlcnMve3VzZXJfaWR9EsMCCgtFbmFibGVHcm91cBItLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRW5hYmxlR3JvdXBSZXF1ZXN0Gi4ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5FbmFibGVHcm91cFJlc3BvbnNlItQBkkGTAQoFR3JvdXASDEVuYWJsZSBncm91cBp8U2V0cyB0aGUgc3RhdGUgb2YgdGhlIGdyb3VwIGFzIGVuYWJsZWQuIFRoZSBgZW5hYmxlZGAgZmxhZyBpcyB1c2VkIHRvIGRldGVybWluZSBpZiB0aGUgZ3JvdXAgY2FuIGJlIHVzZWQgZm9yIGFjY2VzcyBjb250cm9sLoLT5JMCNyIyL3YxYmV0YTEvb3JnYW5pemF0aW9ucy97b3JnX2lkfS9ncm91cHMve2lkfS9lbmFibGU6ASoS1AMKDERpc2FibGVHcm91cBIuLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRGlzYWJsZUdyb3VwUmVxdWVzdBovLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRGlzYWJsZUdyb3VwUmVzcG9uc2Ui4gKSQaACCgVHcm91cBINRGlzYWJsZSBncm91cBqHAlNldHMgdGhlIHN0YXRlIG9mIHRoZSBncm91cCBhcyBkaXNhYmxlZC4gVGhlIGdyb3VwIHdpbGwgbm90IGJlIGF2YWlsYWJsZSBmb3IgYWNjZXNzIGNvbnRyb2wgYW5kIHRoZSBleGlzdGluZyB1c2VycyBpbiB0aGUgZ3JvdXAgd2lsbCBub3QgYmUgYWJsZSB0byBhY2Nlc3MgYW55IHJlc291cmNlcyB0aGF0IGFyZSBhc3NpZ25lZCB0byB0aGUgZ3JvdXAuIE5vIG90aGVyIHVzZXJzIGNhbiBiZSBhZGRlZCB0byB0aGUgZ3JvdXAgd2hpbGUgaXQgaXMgZGlzYWJsZWQugtPkkwI4IjMvdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L2dyb3Vwcy97aWR9L2Rpc2FibGU6ASoS/QEKC0RlbGV0ZUdyb3VwEi0ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5EZWxldGVHcm91cFJlcXVlc3QaLi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkRlbGV0ZUdyb3VwUmVzcG9uc2UijgGSQVgKBUdyb3VwEgxEZWxldGUgZ3JvdXAaQURlbGV0ZSBhbiBvcmdhbml6YXRpb24gZ3JvdXAgcGVybWFuZW50bHkgYW5kIGFsbCBvZiBpdHMgcmVsYXRpb25zgtPkkwItKisvdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L2dyb3Vwcy97aWR9EpMCCglMaXN0Um9sZXMSKy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RSb2xlc1JlcXVlc3QaLC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RSb2xlc1Jlc3BvbnNlIqoBkkGQAQoEUm9sZRITTGlzdCBwbGF0Zm9ybSByb2xlcxpzUmV0dXJucyBhIGxpc3Qgb2YgcGxhdGZvcm0gd2lkZSByb2xlcyBhdmFpbGFibGUgaW4gZW5pdHJlIEZyb250aWVyIGluc3RhbmNlIGFsb25nIHdpdGggdGhlaXIgYXNzb2NpYXRlZCBwZXJtaXNzaW9uc4LT5JMCEBIOL3YxYmV0YTEvcm9sZXMSvAIKFUxpc3RPcmdhbml6YXRpb25Sb2xlcxI3LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdE9yZ2FuaXphdGlvblJvbGVzUmVxdWVzdBo4LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdE9yZ2FuaXphdGlvblJvbGVzUmVzcG9uc2UirwGSQX8KBFJvbGUSF0xpc3Qgb3JnYW5pemF0aW9uIHJvbGVzGl5SZXR1cm5zIGEgbGlzdCBvZiBjdXN0b20gcm9sZXMgY3JlYXRlZCB1bmRlciBhbiBvcmdhbml6YXRpb24gd2l0aCB0aGVpciBhc3NvY2lhdGVkIHBlcm1pc3Npb25zgtPkkwInEiUvdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L3JvbGVzEvcCChZDcmVhdGVPcmdhbml6YXRpb25Sb2xlEjgucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVPcmdhbml6YXRpb25Sb2xlUmVxdWVzdBo5LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ3JlYXRlT3JnYW5pemF0aW9uUm9sZVJlc3BvbnNlIucBkkGwAQoEUm9sZRIYQ3JlYXRlIG9yZ2FuaXphdGlvbiByb2xlGo0BQ3JlYXRlIGEgY3VzdG9tIHJvbGUgdW5kZXIgYW4gb3JnYW5pemF0aW9uLiBUaGlzIGN1c3RvbSByb2xlIHdpbGwgb25seSBiZSBhdmFpbGFibGUgZm9yIGFzc2lnbm1lbnQgdG8gdGhlIHByaW5jaXBsZXMgd2l0aGluIHRoZSBvcmdhbml6YXRpb24ugtPkkwItIiUvdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L3JvbGVzOgRib2R5EqwCChNHZXRPcmdhbml6YXRpb25Sb2xlEjUucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5HZXRPcmdhbml6YXRpb25Sb2xlUmVxdWVzdBo2LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR2V0T3JnYW5pemF0aW9uUm9sZVJlc3BvbnNlIqUBkkFwCgRSb2xlEhVHZXQgb3JnYW5pemF0aW9uIHJvbGUaUVJldHVybnMgYSBjdXN0b20gcm9sZSB1bmRlciBhbiBvcmdhbml6YXRpb24gYWxvbmcgd2l0aCBpdHMgYXNzb2NpYXRlZCBwZXJtaXNzaW9uc4LT5JMCLBIqL3YxYmV0YTEvb3JnYW5pemF0aW9ucy97b3JnX2lkfS9yb2xlcy97aWR9EvwCChZVcGRhdGVPcmdhbml6YXRpb25Sb2xlEjgucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5VcGRhdGVPcmdhbml6YXRpb25Sb2xlUmVxdWVzdBo5LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuVXBkYXRlT3JnYW5pemF0aW9uUm9sZVJlc3BvbnNlIuwBkkGwAQoEUm9sZRIYVXBkYXRlIG9yZ2FuaXphdGlvbiByb2xlGo0BVXBkYXRlIGEgY3VzdG9tIHJvbGUgdW5kZXIgYW4gb3JnYW5pemF0aW9uLiBUaGlzIGN1c3RvbSByb2xlIHdpbGwgb25seSBiZSBhdmFpbGFibGUgZm9yIGFzc2lnbm1lbnQgdG8gdGhlIHByaW5jaXBsZXMgd2l0aGluIHRoZSBvcmdhbml6YXRpb24ugtPkkwIyGiovdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L3JvbGVzL3tpZH06BGJvZHkStwIKFkRlbGV0ZU9yZ2FuaXphdGlvblJvbGUSOC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkRlbGV0ZU9yZ2FuaXphdGlvblJvbGVSZXF1ZXN0GjkucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5EZWxldGVPcmdhbml6YXRpb25Sb2xlUmVzcG9uc2UipwGSQXIKBFJvbGUSGERlbGV0ZSBvcmdhbml6YXRpb24gcm9sZRpQRGVsZXRlIGEgY3VzdG9tIHJvbGUgYW5kIGFsbCBvZiBpdHMgcmVsYXRpb25zIHVuZGVyIGFuIG9yZ2FuaXphdGlvbiBwZXJtYW5lbnRseS6C0+STAiwqKi92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vcm9sZXMve2lkfRKaAgoRTGlzdE9yZ2FuaXphdGlvbnMSMy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RPcmdhbml6YXRpb25zUmVxdWVzdBo0LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdE9yZ2FuaXphdGlvbnNSZXNwb25zZSKZAZJBeAoMT3JnYW5pemF0aW9uEhJMaXN0IG9yZ2FuaXphdGlvbnMaVFJldHVybnMgYSBsaXN0IG9mIG9yZ2FuaXphdGlvbnMuIEl0IGNhbiBiZSBmaWx0ZXJlZCBieSB1c2VySUQgb3Igb3JnYW5pemF0aW9uIHN0YXRlLoLT5JMCGBIWL3YxYmV0YTEvb3JnYW5pemF0aW9ucxLNAQoSQ3JlYXRlT3JnYW5pemF0aW9uEjQucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVPcmdhbml6YXRpb25SZXF1ZXN0GjUucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVPcmdhbml6YXRpb25SZXNwb25zZSJKkkEjCgxPcmdhbml6YXRpb24SE0NyZWF0ZSBvcmdhbml6YXRpb26C0+STAh4iFi92MWJldGExL29yZ2FuaXphdGlvbnM6BGJvZHkS4AEKD0dldE9yZ2FuaXphdGlvbhIxLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR2V0T3JnYW5pemF0aW9uUmVxdWVzdBoyLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR2V0T3JnYW5pemF0aW9uUmVzcG9uc2UiZpJBQAoMT3JnYW5pemF0aW9uEhBHZXQgb3JnYW5pemF0aW9uGh5HZXQgb3JnYW5pemF0aW9uIGJ5IElEIG9yIG5hbWWC0+STAh0SGy92MWJldGExL29yZ2FuaXphdGlvbnMve2lkfRLtAQoSVXBkYXRlT3JnYW5pemF0aW9uEjQucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5VcGRhdGVPcmdhbml6YXRpb25SZXF1ZXN0GjUucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5VcGRhdGVPcmdhbml6YXRpb25SZXNwb25zZSJqkkE+CgxPcmdhbml6YXRpb24SE1VwZGF0ZSBvcmdhbml6YXRpb24aGVVwZGF0ZSBvcmdhbml6YXRpb24gYnkgSUSC0+STAiMaGy92MWJldGExL29yZ2FuaXphdGlvbnMve2lkfToEYm9keRKfAgoYTGlzdE9yZ2FuaXphdGlvblByb2plY3RzEjoucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0T3JnYW5pemF0aW9uUHJvamVjdHNSZXF1ZXN0GjsucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0T3JnYW5pemF0aW9uUHJvamVjdHNSZXNwb25zZSKJAZJBWgoMT3JnYW5pemF0aW9uEhlHZXQgb3JnYW5pemF0aW9uIHByb2plY3RzGi9HZXQgYWxsIHByb2plY3RzIHRoYXQgYmVsb25nIHRvIGFuIG9yZ2FuaXphdGlvboLT5JMCJhIkL3YxYmV0YTEvb3JnYW5pemF0aW9ucy97aWR9L3Byb2plY3RzEo4CChZMaXN0T3JnYW5pemF0aW9uQWRtaW5zEjgucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0T3JnYW5pemF0aW9uQWRtaW5zUmVxdWVzdBo5LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdE9yZ2FuaXphdGlvbkFkbWluc1Jlc3BvbnNlIn+SQVIKDE9yZ2FuaXphdGlvbhIYTGlzdCBvcmdhbml6YXRpb24gYWRtaW5zGihSZXR1cm5zIGEgbGlzdCBhZG1pbnMgb2YgYW4gb3JnYW5pemF0aW9ugtPkkwIkEiIvdjFiZXRhMS9vcmdhbml6YXRpb25zL3tpZH0vYWRtaW5zEt8BChVMaXN0T3JnYW5pemF0aW9uVXNlcnMSNy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RPcmdhbml6YXRpb25Vc2Vyc1JlcXVlc3QaOC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RPcmdhbml6YXRpb25Vc2Vyc1Jlc3BvbnNlIlOSQScKDE9yZ2FuaXphdGlvbhIXTGlzdCBvcmdhbml6YXRpb24gdXNlcnOC0+STAiMSIS92MWJldGExL29yZ2FuaXphdGlvbnMve2lkfS91c2VycxLtAgoUQWRkT3JnYW5pemF0aW9uVXNlcnMSNi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkFkZE9yZ2FuaXphdGlvblVzZXJzUmVxdWVzdBo3LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQWRkT3JnYW5pemF0aW9uVXNlcnNSZXNwb25zZSLjAZJBswEKDE9yZ2FuaXphdGlvbhIVQWRkIG9yZ2FuaXphdGlvbiB1c2VyGosBQWRkIGEgdXNlciB0byBhbiBvcmdhbml6YXRpb24uIEEgdXNlciBtdXN0IGV4aXN0cyBpbiBGcm9udGllciBiZWZvcmUgYWRkaW5nIGl0IHRvIGFuIG9yZy4gVGhpcyByZXF1ZXN0IHdpbGwgZmFpbCBpZiB0aGUgdXNlciBkb2Vzbid0IGV4aXN0c4LT5JMCJiIhL3YxYmV0YTEvb3JnYW5pemF0aW9ucy97aWR9L3VzZXJzOgEqEpICChZSZW1vdmVPcmdhbml6YXRpb25Vc2VyEjgucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5SZW1vdmVPcmdhbml6YXRpb25Vc2VyUmVxdWVzdBo5LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUmVtb3ZlT3JnYW5pemF0aW9uVXNlclJlc3BvbnNlIoIBkkFMCgxPcmdhbml6YXRpb24SGFJlbW92ZSBvcmdhbml6YXRpb24gdXNlchoiUmVtb3ZlIGEgdXNlciBmcm9tIGFuIG9yZ2FuaXphdGlvboLT5JMCLSorL3YxYmV0YTEvb3JnYW5pemF0aW9ucy97aWR9L3VzZXJzL3t1c2VyX2lkfRKWAgoSR2V0T3JnYW5pemF0aW9uS3ljEjQucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5HZXRPcmdhbml6YXRpb25LeWNSZXF1ZXN0GjUucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5HZXRPcmdhbml6YXRpb25LeWNSZXNwb25zZSKSAZJBZAoPT3JnYW5pemF0aW9uS3ljEh9HZXQgS1lDIGluZm8gb2YgYW4gb3JnYW5pemF0aW9uGjBHZXQgS1lDIGluZm8gb2YgYW4gb3JnYW5pemF0aW9uIHVzaW5nIElEIG9yIG5hbWWC0+STAiUSIy92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0va3ljEoMCChxMaXN0T3JnYW5pemF0aW9uU2VydmljZVVzZXJzEj4ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0T3JnYW5pemF0aW9uU2VydmljZVVzZXJzUmVxdWVzdBo/LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdE9yZ2FuaXphdGlvblNlcnZpY2VVc2Vyc1Jlc3BvbnNlImKSQS8KDE9yZ2FuaXphdGlvbhIfTGlzdCBvcmdhbml6YXRpb24gc2VydmljZSB1c2Vyc4LT5JMCKhIoL3YxYmV0YTEvb3JnYW5pemF0aW9ucy97aWR9L3NlcnZpY2V1c2VycxK5AgobTGlzdE9yZ2FuaXphdGlvbkludml0YXRpb25zEj0ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0T3JnYW5pemF0aW9uSW52aXRhdGlvbnNSZXF1ZXN0Gj4ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0T3JnYW5pemF0aW9uSW52aXRhdGlvbnNSZXNwb25zZSKaAZJBZAoMT3JnYW5pemF0aW9uEhhMaXN0IHBlbmRpbmcgaW52aXRhdGlvbnMaOlJldHVybnMgYWxsIHBlbmRpbmcgaW52aXRhdGlvbnMgcXVldWVkIGZvciBhbiBvcmdhbml6YXRpb26C0+STAi0SKy92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vaW52aXRhdGlvbnMS9gIKHENyZWF0ZU9yZ2FuaXphdGlvbkludml0YXRpb24SPi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNyZWF0ZU9yZ2FuaXphdGlvbkludml0YXRpb25SZXF1ZXN0Gj8ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVPcmdhbml6YXRpb25JbnZpdGF0aW9uUmVzcG9uc2Ui1AGSQZoBCgxPcmdhbml6YXRpb24SC0ludml0ZSB1c2VyGn1JbnZpdGUgdXNlcnMgdG8gYW4gb3JnYW5pemF0aW9uLCBpZiB1c2VyIGlzIG5vdCByZWdpc3RlcmVkIG9uIHRoZSBwbGF0Zm9ybSwgaXQgd2lsbCBiZSBub3RpZmllZC4gSW52aXRhdGlvbnMgZXhwaXJlIGluIDcgZGF5c4LT5JMCMCIrL3YxYmV0YTEvb3JnYW5pemF0aW9ucy97b3JnX2lkfS9pbnZpdGF0aW9uczoBKhKzAgoZR2V0T3JnYW5pemF0aW9uSW52aXRhdGlvbhI7LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR2V0T3JnYW5pemF0aW9uSW52aXRhdGlvblJlcXVlc3QaPC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkdldE9yZ2FuaXphdGlvbkludml0YXRpb25SZXNwb25zZSKaAZJBXwoMT3JnYW5pemF0aW9uEhZHZXQgcGVuZGluZyBpbnZpdGF0aW9uGjdSZXR1cm5zIGEgcGVuZGluZyBpbnZpdGF0aW9uIHF1ZXVlZCBmb3IgYW4gb3JnYW5pemF0aW9ugtPkkwIyEjAvdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L2ludml0YXRpb25zL3tpZH0SmQMKHEFjY2VwdE9yZ2FuaXphdGlvbkludml0YXRpb24SPi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkFjY2VwdE9yZ2FuaXphdGlvbkludml0YXRpb25SZXF1ZXN0Gj8ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5BY2NlcHRPcmdhbml6YXRpb25JbnZpdGF0aW9uUmVzcG9uc2Ui9wGSQbEBCgxPcmdhbml6YXRpb24SGUFjY2VwdCBwZW5kaW5nIGludml0YXRpb24ahQFBY2NlcHQgcGVuZGluZyBpbnZpdGF0aW9uIHF1ZXVlZCBmb3IgYW4gb3JnYW5pemF0aW9uLiBUaGUgdXNlciB3aWxsIGJlIGFkZGVkIHRvIHRoZSBvcmdhbml6YXRpb24gYW5kIGdyb3VwcyBkZWZpbmVkIGluIHRoZSBpbnZpdGF0aW9ugtPkkwI8IjcvdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L2ludml0YXRpb25zL3tpZH0vYWNjZXB0OgEqEr4CChxEZWxldGVPcmdhbml6YXRpb25JbnZpdGF0aW9uEj4ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5EZWxldGVPcmdhbml6YXRpb25JbnZpdGF0aW9uUmVxdWVzdBo/LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRGVsZXRlT3JnYW5pemF0aW9uSW52aXRhdGlvblJlc3BvbnNlIpwBkkFhCgxPcmdhbml6YXRpb24SGURlbGV0ZSBwZW5kaW5nIGludml0YXRpb24aNkRlbGV0ZSBhIHBlbmRpbmcgaW52aXRhdGlvbiBxdWV1ZWQgZm9yIGFuIG9yZ2FuaXphdGlvboLT5JMCMiowL3YxYmV0YTEvb3JnYW5pemF0aW9ucy97b3JnX2lkfS9pbnZpdGF0aW9ucy97aWR9EtgDChdMaXN0T3JnYW5pemF0aW9uRG9tYWlucxI5LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdE9yZ2FuaXphdGlvbkRvbWFpbnNSZXF1ZXN0GjoucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0T3JnYW5pemF0aW9uRG9tYWluc1Jlc3BvbnNlIsUCkkGSAgoMT3JnYW5pemF0aW9uEhBMaXN0IG9yZyBkb21haW5zGu8BUmV0dXJucyBhbGwgZG9tYWlucyB3aGl0ZWxpc3RlZCBmb3IgYW4gb3JnYW5pemF0aW9uIChib3RoIHBlbmRpbmcgYW5kIHZlcmlmaWVkIGlmIG5vIGZpbHRlcnMgYXJlIHByb3ZpZGVkIGZvciB0aGUgc3RhdGUpLiBUaGUgdmVyaWZpZWQgZG9tYWlucyBhbGxvdyB1c2VycyBlbWFpbCB3aXRoIHRoZSBvcmcncyB3aGl0ZWxpc3RlZCBkb21haW4gdG8gam9pbiB0aGUgb3JnYW5pemF0aW9uIHdpdGhvdXQgaW52aXRhdGlvbi6C0+STAikSJy92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vZG9tYWlucxL+BAoYQ3JlYXRlT3JnYW5pemF0aW9uRG9tYWluEjoucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVPcmdhbml6YXRpb25Eb21haW5SZXF1ZXN0GjsucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVPcmdhbml6YXRpb25Eb21haW5SZXNwb25zZSLoA5JBsgMKDE9yZ2FuaXphdGlvbhIRQ3JlYXRlIG9yZyBkb21haW4ajgNBZGQgYSBkb21haW4gdG8gYW4gb3JnYW5pemF0aW9uIHdoaWNoIGlmIHZlcmlmaWVkIGFsbG93cyBhbGwgdXNlcnMgb2YgdGhlIHNhbWUgZG9tYWluIHRvIGJlIHNpZ25lZCB1cCB0byB0aGUgb3JnYW5pemF0aW9uIHdpdGhvdXQgaW52aXRhdGlvbi4gVGhpcyBBUEkgZ2VuZXJhdGVzIGEgdmVyaWZpY2F0aW9uIHRva2VuIGZvciBhIGRvbWFpbiB3aGljaCBtdXN0IGJlIGFkZGVkIHRvIHlvdXIgZG9tYWluJ3MgRE5TIHByb3ZpZGVyIGFzIGEgVFhUIHJlY29yZCBzaG91bGQgYmUgdmVyaWZpZWQgd2l0aCBGcm9udGllciBWZXJpZnlPcmdhbml6YXRpb25Eb21haW4gQVBJIGJlZm9yZSBpdCBjYW4gYmUgdXNlZCBhcyBhbiBPcmdhbml6YXRpb24ncyB0cnVzdGVkIGRvbWFpbiB0byBzaWduIHVwIHVzZXJzLoLT5JMCLCInL3YxYmV0YTEvb3JnYW5pemF0aW9ucy97b3JnX2lkfS9kb21haW5zOgEqErcCChhEZWxldGVPcmdhbml6YXRpb25Eb21haW4SOi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkRlbGV0ZU9yZ2FuaXphdGlvbkRvbWFpblJlcXVlc3QaOy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkRlbGV0ZU9yZ2FuaXphdGlvbkRvbWFpblJlc3BvbnNlIqEBkkFqCgxPcmdhbml6YXRpb24SEURlbGV0ZSBvcmcgZG9tYWluGkdSZW1vdmUgYSBkb21haW4gZnJvbSB0aGUgbGlzdCBvZiBhbiBvcmdhbml6YXRpb24ncyB0cnVzdGVkIGRvbWFpbnMgbGlzdILT5JMCLiosL3YxYmV0YTEvb3JnYW5pemF0aW9ucy97b3JnX2lkfS9kb21haW5zL3tpZH0S4gIKFUdldE9yZ2FuaXphdGlvbkRvbWFpbhI3LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR2V0T3JnYW5pemF0aW9uRG9tYWluUmVxdWVzdBo4LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR2V0T3JnYW5pemF0aW9uRG9tYWluUmVzcG9uc2Ui1QGSQZ0BCgxPcmdhbml6YXRpb24SDkdldCBvcmcgZG9tYWluGn1HZXQgYSBkb21haW4gZnJvbSB0aGUgbGlzdCBvZiBhbiBvcmdhbml6YXRpb24ncyB3aGl0ZWxpc3RlZCBkb21haW5zLiBSZXR1cm5zIGJvdGggdmVyaWZpZWQgYW5kIHVudmVyaWZpZWQgZG9tYWlucyBieSB0aGVpciBJRILT5JMCLhIsL3YxYmV0YTEvb3JnYW5pemF0aW9ucy97b3JnX2lkfS9kb21haW5zL3tpZH0SpQQKGFZlcmlmeU9yZ2FuaXphdGlvbkRvbWFpbhI6LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuVmVyaWZ5T3JnYW5pemF0aW9uRG9tYWluUmVxdWVzdBo7LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuVmVyaWZ5T3JnYW5pemF0aW9uRG9tYWluUmVzcG9uc2UijwOSQc0CCgxPcmdhbml6YXRpb24SEVZlcmlmeSBvcmcgZG9tYWluGqkCVmVyaWZ5IGEgZG9tYWluIGZvciBhbiBvcmdhbml6YXRpb24gd2l0aCBhIHZlcmlmaWNhdGlvbiB0b2tlbiBnZW5lcmF0ZWQgYnkgRnJvbnRpZXIgR2VuZXJhdGVEb21haW5WZXJpZmljYXRpb25Ub2tlbiBBUEkuIFRoZSB0b2tlbiBtdXN0IGJlIGFkZGVkIHRvIHlvdXIgZG9tYWluJ3MgRE5TIHByb3ZpZGVyIGFzIGEgVFhUIHJlY29yZCBiZWZvcmUgaXQgY2FuIGJlIHZlcmlmaWVkLiBUaGlzIEFQSSByZXR1cm5zIHRoZSBzdGF0ZSBvZiB0aGUgZG9tYWluIChwZW5kaW5nL3ZlcmlmaWVkKSBhZnRlciB2ZXJpZmljYXRpb24ugtPkkwI4IjMvdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L2RvbWFpbnMve2lkfS92ZXJpZnk6ASoSkgMKEEpvaW5Pcmdhbml6YXRpb24SMi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkpvaW5Pcmdhbml6YXRpb25SZXF1ZXN0GjMucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Kb2luT3JnYW5pemF0aW9uUmVzcG9uc2UilAKSQeEBCgxPcmdhbml6YXRpb24SEUpvaW4gb3JnYW5pemF0aW9uGr0BQWxsb3dzIHRoZSBjdXJyZW50IGxvZ2dlZCBpbiB1c2VyIHRvIGpvaW4gdGhlIE9yZyBpZiBvbmUgaXMgbm90IGEgcGFydCBvZiBpdC4gVGhlIHVzZXIgd2lsbCBvbmx5IGJlIGFibGUgdG8gam9pbiB3aGVuIHRoZSB1c2VyIGVtYWlsJ3MgZG9tYWluIG1hdGNoZXMgdGhlIG9yZ2FuaXphdGlvbidzIHdoaXRlbGlzdGVkIGRvbWFpbnMugtPkkwIpIiQvdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L2pvaW46ASoS2QIKEkVuYWJsZU9yZ2FuaXphdGlvbhI0LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRW5hYmxlT3JnYW5pemF0aW9uUmVxdWVzdBo1LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRW5hYmxlT3JnYW5pemF0aW9uUmVzcG9uc2Ui1QGSQaQBCgxPcmdhbml6YXRpb24SE0VuYWJsZSBvcmdhbml6YXRpb24af1NldHMgdGhlIHN0YXRlIG9mIHRoZSBvcmdhbml6YXRpb24gYXMgZW5hYmxlZC4gVGhlIGV4aXN0aW5nIHVzZXJzIGluIHRoZSBvcmcgd2lsbCBiZSBhYmxlIHRvIGFjY2VzcyBhbnkgb3JnYW5pemF0aW9uIHJlc291cmNlcy6C0+STAiciIi92MWJldGExL29yZ2FuaXphdGlvbnMve2lkfS9lbmFibGU6ASoS5AIKE0Rpc2FibGVPcmdhbml6YXRpb24SNS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkRpc2FibGVPcmdhbml6YXRpb25SZXF1ZXN0GjYucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5EaXNhYmxlT3JnYW5pemF0aW9uUmVzcG9uc2Ui3QGSQasBCgxPcmdhbml6YXRpb24SFERpc2FibGUgb3JnYW5pemF0aW9uGoQBU2V0cyB0aGUgc3RhdGUgb2YgdGhlIG9yZ2FuaXphdGlvbiBhcyBkaXNhYmxlZC4gVGhlIGV4aXN0aW5nIHVzZXJzIGluIHRoZSBvcmcgd2lsbCBub3QgYmUgYWJsZSB0byBhY2Nlc3MgYW55IG9yZ2FuaXphdGlvbiByZXNvdXJjZXMugtPkkwIoIiMvdjFiZXRhMS9vcmdhbml6YXRpb25zL3tpZH0vZGlzYWJsZToBKhLGAgoSRGVsZXRlT3JnYW5pemF0aW9uEjQucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5EZWxldGVPcmdhbml6YXRpb25SZXF1ZXN0GjUucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5EZWxldGVPcmdhbml6YXRpb25SZXNwb25zZSLCAZJBmwEKDE9yZ2FuaXphdGlvbhITRGVsZXRlIG9yZ2FuaXphdGlvbhp2RGVsZXRlIGFuIG9yZ2FuaXphdGlvbiBhbmQgYWxsIG9mIGl0cyByZWxhdGlvbnMgcGVybWFuZW50bHkuIFRoZSBvcmdhbml6YXRpb24gdXNlcnMgd2lsbCBub3QgYmUgZGVsZXRlZCBmcm9tIEZyb250aWVyLoLT5JMCHSobL3YxYmV0YTEvb3JnYW5pemF0aW9ucy97aWR9Eq8BCg1DcmVhdGVQcm9qZWN0Ei8ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVQcm9qZWN0UmVxdWVzdBowLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ3JlYXRlUHJvamVjdFJlc3BvbnNlIjuSQRkKB1Byb2plY3QSDkNyZWF0ZSBwcm9qZWN0gtPkkwIZIhEvdjFiZXRhMS9wcm9qZWN0czoEYm9keRK7AQoKR2V0UHJvamVjdBIsLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR2V0UHJvamVjdFJlcXVlc3QaLS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkdldFByb2plY3RSZXNwb25zZSJQkkEvCgdQcm9qZWN0EgtHZXQgcHJvamVjdBoXUmV0dXJucyBhIHByb2plY3QgYnkgSUSC0+STAhgSFi92MWJldGExL3Byb2plY3RzL3tpZH0SzQEKDVVwZGF0ZVByb2plY3QSLy5yYXlzdGFjay5mcm9udGllci52MWJldGExLlVwZGF0ZVByb2plY3RSZXF1ZXN0GjAucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5VcGRhdGVQcm9qZWN0UmVzcG9uc2UiWZJBMgoHUHJvamVjdBIOVXBkYXRlIHByb2plY3QaF1VwZGF0ZXMgYSBwcm9qZWN0IGJ5IElEgtPkkwIeGhYvdjFiZXRhMS9wcm9qZWN0cy97aWR9OgRib2R5EvMBChFMaXN0UHJvamVjdEFkbWlucxIzLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdFByb2plY3RBZG1pbnNSZXF1ZXN0GjQucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0UHJvamVjdEFkbWluc1Jlc3BvbnNlInOSQUsKB1Byb2plY3QSE0xpc3QgcHJvamVjdCBhZG1pbnMaK1JldHVybnMgYSBjb2xsZWN0aW9uIG9mIGFkbWlucyBvZiBhIHByb2plY3SC0+STAh8SHS92MWJldGExL3Byb2plY3RzL3tpZH0vYWRtaW5zEpgCChBMaXN0UHJvamVjdFVzZXJzEjIucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0UHJvamVjdFVzZXJzUmVxdWVzdBozLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdFByb2plY3RVc2Vyc1Jlc3BvbnNlIpoBkkFzCgdQcm9qZWN0EhJMaXN0IHByb2plY3QgdXNlcnMaVFJldHVybnMgYSBjb2xsZWN0aW9uIG9mIHVzZXJzIG9mIGEgcHJvamVjdC4gRmlsdGVyIGJ5IHVzZXIgcGVybWlzc2lvbnMgaXMgc3VwcG9ydGVkLoLT5JMCHhIcL3YxYmV0YTEvcHJvamVjdHMve2lkfS91c2VycxKRAgoXTGlzdFByb2plY3RTZXJ2aWNlVXNlcnMSOS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RQcm9qZWN0U2VydmljZVVzZXJzUmVxdWVzdBo6LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdFByb2plY3RTZXJ2aWNlVXNlcnNSZXNwb25zZSJ/kkFRCgdQcm9qZWN0EhlMaXN0IHByb2plY3Qgc2VydmljZXVzZXJzGitSZXR1cm5zIGEgY29sbGVjdGlvbiBvZiB1c2VycyBvZiBhIHByb2plY3QugtPkkwIlEiMvdjFiZXRhMS9wcm9qZWN0cy97aWR9L3NlcnZpY2V1c2VycxL0AQoRTGlzdFByb2plY3RHcm91cHMSMy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RQcm9qZWN0R3JvdXBzUmVxdWVzdBo0LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdFByb2plY3RHcm91cHNSZXNwb25zZSJ0kkFMCgdQcm9qZWN0EhNMaXN0IHByb2plY3QgZ3JvdXBzGixSZXR1cm5zIGEgY29sbGVjdGlvbiBvZiBncm91cHMgb2YgYSBwcm9qZWN0LoLT5JMCHxIdL3YxYmV0YTEvcHJvamVjdHMve2lkfS9ncm91cHMSuAEKDUVuYWJsZVByb2plY3QSLy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkVuYWJsZVByb2plY3RSZXF1ZXN0GjAucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5FbmFibGVQcm9qZWN0UmVzcG9uc2UiRJJBGQoHUHJvamVjdBIORW5hYmxlIHByb2plY3SC0+STAiIiHS92MWJldGExL3Byb2plY3RzL3tpZH0vZW5hYmxlOgEqEr0BCg5EaXNhYmxlUHJvamVjdBIwLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRGlzYWJsZVByb2plY3RSZXF1ZXN0GjEucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5EaXNhYmxlUHJvamVjdFJlc3BvbnNlIkaSQRoKB1Byb2plY3QSD0Rpc2FibGUgcHJvamVjdILT5JMCIyIeL3YxYmV0YTEvcHJvamVjdHMve2lkfS9kaXNhYmxlOgEqEuIBCg1EZWxldGVQcm9qZWN0Ei8ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5EZWxldGVQcm9qZWN0UmVxdWVzdBowLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRGVsZXRlUHJvamVjdFJlc3BvbnNlIm6SQU0KB1Byb2plY3QSDkRlbGV0ZSBQcm9qZWN0GjJEZWxldGUgYSBwcm9qZWN0IGFsbCBvZiBpdHMgcmVsYXRpb25zIHBlcm1hbmVudGx5LoLT5JMCGCoWL3YxYmV0YTEvcHJvamVjdHMve2lkfRK9AQoMQ3JlYXRlUG9saWN5Ei4ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVQb2xpY3lSZXF1ZXN0Gi8ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVQb2xpY3lSZXNwb25zZSJMkkEqCgZQb2xpY3kSDUNyZWF0ZSBwb2xpY3kaEUNyZWF0ZXMgYSBwb2xpY3kggtPkkwIZIhEvdjFiZXRhMS9wb2xpY2llczoEYm9keRK1AQoJR2V0UG9saWN5EisucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5HZXRQb2xpY3lSZXF1ZXN0GiwucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5HZXRQb2xpY3lSZXNwb25zZSJNkkEsCgZQb2xpY3kSCkdldCBwb2xpY3kaFlJldHVybnMgYSBwb2xpY3kgYnkgSUSC0+STAhgSFi92MWJldGExL3BvbGljaWVzL3tpZH0SuQIKDExpc3RQb2xpY2llcxIuLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdFBvbGljaWVzUmVxdWVzdBovLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdFBvbGljaWVzUmVzcG9uc2UixwGSQaoBCgZQb2xpY3kSEUxpc3QgYWxsIHBvbGljaWVzGowBTGlzdHMgYWxsIHRoZSBwb2xpY2llcyBmcm9tIGFsbCB0aGUgb3JnYW5pemF0aW9ucyBpbiBhIEZyb250aWVyIGluc3RhbmNlLiBJdCBjYW4gYmUgZmlsdGVyZWQgYnkgb3JnYW5pemF0aW9uLCBwcm9qZWN0LCB1c2VyLCByb2xlIGFuZCBncm91cC6C0+STAhMSES92MWJldGExL3BvbGljaWVzEscBCgxVcGRhdGVQb2xpY3kSLi5yYXlzdGFjay5mcm9udGllci52MWJldGExLlVwZGF0ZVBvbGljeVJlcXVlc3QaLy5yYXlzdGFjay5mcm9udGllci52MWJldGExLlVwZGF0ZVBvbGljeVJlc3BvbnNlIlaSQS8KBlBvbGljeRINVXBkYXRlIHBvbGljeRoWVXBkYXRlcyBhIHBvbGljeSBieSBJRILT5JMCHhoWL3YxYmV0YTEvcG9saWNpZXMve2lkfToEYm9keRLcAQoMRGVsZXRlUG9saWN5Ei4ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5EZWxldGVQb2xpY3lSZXF1ZXN0Gi8ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5EZWxldGVQb2xpY3lSZXNwb25zZSJrkkFKCgZQb2xpY3kSDURlbGV0ZSBQb2xpY3kaMURlbGV0ZSBhIHBvbGljeSBhbGwgb2YgaXRzIHJlbGF0aW9ucyBwZXJtYW5lbnRseS6C0+STAhgqFi92MWJldGExL3BvbGljaWVzL3tpZH0SiQIKFkNyZWF0ZVBvbGljeUZvclByb2plY3QSOC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNyZWF0ZVBvbGljeUZvclByb2plY3RSZXF1ZXN0GjkucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVQb2xpY3lGb3JQcm9qZWN0UmVzcG9uc2UiepJBQgoGUG9saWN5EhlDcmVhdGUgUG9saWN5IGZvciBQcm9qZWN0Gh1DcmVhdGUgYSBwb2xpY3kgZm9yIGEgcHJvamVjdILT5JMCLyInL3YxYmV0YTEvcG9saWNpZXMvcHJvamVjdHMve3Byb2plY3RfaWR9OgRib2R5ErUBCg5DcmVhdGVSZWxhdGlvbhIwLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ3JlYXRlUmVsYXRpb25SZXF1ZXN0GjEucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVSZWxhdGlvblJlc3BvbnNlIj6SQRsKCFJlbGF0aW9uEg9DcmVhdGUgcmVsYXRpb26C0+STAhoiEi92MWJldGExL3JlbGF0aW9uczoEYm9keRLCAQoLR2V0UmVsYXRpb24SLS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkdldFJlbGF0aW9uUmVxdWVzdBouLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR2V0UmVsYXRpb25SZXNwb25zZSJUkkEyCghSZWxhdGlvbhIMR2V0IHJlbGF0aW9uGhhSZXR1cm5zIGEgcmVsYXRpb24gYnkgSUSC0+STAhkSFy92MWJldGExL3JlbGF0aW9ucy97aWR9EpACCg5EZWxldGVSZWxhdGlvbhIwLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRGVsZXRlUmVsYXRpb25SZXF1ZXN0GjEucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5EZWxldGVSZWxhdGlvblJlc3BvbnNlIpgBkkFOCghSZWxhdGlvbhIPRGVsZXRlIHJlbGF0aW9uGjFSZW1vdmUgYSBzdWJqZWN0IGhhdmluZyBhIHJlbGF0aW9uIGZyb20gYW4gb2JqZWN0gtPkkwJBKj8vdjFiZXRhMS9yZWxhdGlvbnMve3JlbGF0aW9ufS9vYmplY3Qve29iamVjdH0vc3ViamVjdC97c3ViamVjdH0SugEKD0xpc3RQZXJtaXNzaW9ucxIxLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdFBlcm1pc3Npb25zUmVxdWVzdBoyLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdFBlcm1pc3Npb25zUmVzcG9uc2UiQJJBIQoKUGVybWlzc2lvbhITR2V0IGFsbCBwZXJtaXNzaW9uc4LT5JMCFhIUL3YxYmV0YTEvcGVybWlzc2lvbnMS0AEKDUdldFBlcm1pc3Npb24SLy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkdldFBlcm1pc3Npb25SZXF1ZXN0GjAucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5HZXRQZXJtaXNzaW9uUmVzcG9uc2UiXJJBOAoKUGVybWlzc2lvbhIOR2V0IHBlcm1pc3Npb24aGlJldHVybnMgYSBwZXJtaXNzaW9uIGJ5IElEgtPkkwIbEhkvdjFiZXRhMS9wZXJtaXNzaW9ucy97aWR9Eu8BCg5MaXN0TmFtZXNwYWNlcxIwLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdE5hbWVzcGFjZXNSZXF1ZXN0GjEucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0TmFtZXNwYWNlc1Jlc3BvbnNlIniSQVoKCU5hbWVzcGFjZRISR2V0IGFsbCBuYW1lc3BhY2VzGjlSZXR1cm5zIHRoZSBsaXN0IG9mIGFsbCBuYW1lc3BhY2VzIGluIGEgRnJvbnRpZXIgaW5zdGFuY2WC0+STAhUSEy92MWJldGExL25hbWVzcGFjZXMSyQEKDEdldE5hbWVzcGFjZRIuLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR2V0TmFtZXNwYWNlUmVxdWVzdBovLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR2V0TmFtZXNwYWNlUmVzcG9uc2UiWJJBNQoJTmFtZXNwYWNlEg1HZXQgbmFtZXNwYWNlGhlSZXR1cm5zIGEgbmFtZXNwYWNlIGJ5IElEgtPkkwIaEhgvdjFiZXRhMS9uYW1lc3BhY2VzL3tpZH0S2QEKFExpc3RQcm9qZWN0UmVzb3VyY2VzEjYucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0UHJvamVjdFJlc291cmNlc1JlcXVlc3QaNy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RQcm9qZWN0UmVzb3VyY2VzUmVzcG9uc2UiUJJBHQoIUmVzb3VyY2USEUdldCBhbGwgcmVzb3VyY2VzgtPkkwIqEigvdjFiZXRhMS9wcm9qZWN0cy97cHJvamVjdF9pZH0vcmVzb3VyY2VzEoECChVDcmVhdGVQcm9qZWN0UmVzb3VyY2USNy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNyZWF0ZVByb2plY3RSZXNvdXJjZVJlcXVlc3QaOC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNyZWF0ZVByb2plY3RSZXNvdXJjZVJlc3BvbnNlInWSQTwKCFJlc291cmNlEg9DcmVhdGUgcmVzb3VyY2UaH0NyZWF0ZXMgYSByZXNvdXJjZSBpbiBhIHByb2plY3SC0+STAjAiKC92MWJldGExL3Byb2plY3RzL3twcm9qZWN0X2lkfS9yZXNvdXJjZXM6BGJvZHkS9QEKEkdldFByb2plY3RSZXNvdXJjZRI0LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR2V0UHJvamVjdFJlc291cmNlUmVxdWVzdBo1LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR2V0UHJvamVjdFJlc291cmNlUmVzcG9uc2UicpJBOgoIUmVzb3VyY2USDEdldCByZXNvdXJjZRogUmV0dXJucyBhIHByb2plY3QgcmVzb3VyY2UgYnkgSUSC0+STAi8SLS92MWJldGExL3Byb2plY3RzL3twcm9qZWN0X2lkfS9yZXNvdXJjZXMve2lkfRKGAgoVVXBkYXRlUHJvamVjdFJlc291cmNlEjcucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5VcGRhdGVQcm9qZWN0UmVzb3VyY2VSZXF1ZXN0GjgucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5VcGRhdGVQcm9qZWN0UmVzb3VyY2VSZXNwb25zZSJ6kkE8CghSZXNvdXJjZRIPVXBkYXRlIHJlc291cmNlGh9VcGRhdGVzIGEgcmVzb3VyY2UgaW4gYSBwcm9qZWN0gtPkkwI1Gi0vdjFiZXRhMS9wcm9qZWN0cy97cHJvamVjdF9pZH0vcmVzb3VyY2VzL3tpZH06BGJvZHkSjwIKFURlbGV0ZVByb2plY3RSZXNvdXJjZRI3LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRGVsZXRlUHJvamVjdFJlc291cmNlUmVxdWVzdBo4LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRGVsZXRlUHJvamVjdFJlc291cmNlUmVzcG9uc2UiggGSQUoKCFJlc291cmNlEg9EZWxldGUgcmVzb3VyY2UaLURlbGV0ZXMgYSByZXNvdXJjZSBmcm9tIGEgcHJvamVjdCBwZXJtYW5lbnRseYLT5JMCLyotL3YxYmV0YTEvcHJvamVjdHMve3Byb2plY3RfaWR9L3Jlc291cmNlcy97aWR9EvsDChdDaGVja1Jlc291cmNlUGVybWlzc2lvbhI5LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ2hlY2tSZXNvdXJjZVBlcm1pc3Npb25SZXF1ZXN0GjoucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DaGVja1Jlc291cmNlUGVybWlzc2lvblJlc3BvbnNlIugCkkHLAgoFQXV0aHoSBUNoZWNrGroCUmV0dXJucyB0cnVlIGlmIGEgcHJpbmNpcGFsIGhhcyByZXF1aXJlZCBwZXJtaXNzaW9ucyB0byBhY2Nlc3MgYSByZXNvdXJjZSBhbmQgZmFsc2Ugb3RoZXJ3aXNlLjxici8+IE5vdGUgdGhlIHByaW5jaXBhbCBjYW4gYmUgYSB1c2VyIG9yIGEgc2VydmljZSBhY2NvdW50LiBGcm9udGllciB3aWxsIGV4dHJhY3QgcHJpbmNpcGFsIGZyb20gdGhlIGN1cnJlbnQgbG9nZ2VkIGluIHNlc3Npb24gY29va2llIChpZiBhbnkpLCBvciB0aGUgY2xpZW50IGlkIGFuZCBzZWNyZXQgKGluIGNhc2Ugb2Ygc2VydmljZSB1c2Vycykgb3IgdGhlIGFjY2VzcyB0b2tlbi6C0+STAhMiDi92MWJldGExL2NoZWNrOgEqErMEChRCYXRjaENoZWNrUGVybWlzc2lvbhI2LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQmF0Y2hDaGVja1Blcm1pc3Npb25SZXF1ZXN0GjcucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5CYXRjaENoZWNrUGVybWlzc2lvblJlc3BvbnNlIqkDkkGHAwoFQXV0aHoSC0JhdGNoIGNoZWNrGvACUmV0dXJucyB0cnVlIGlmIGEgcHJpbmNpcGFsIGhhcyByZXF1aXJlZCBwZXJtaXNzaW9ucyB0byBhY2Nlc3MgYSByZXNvdXJjZSBhbmQgZmFsc2Ugb3RoZXJ3aXNlLjxici8+IE5vdGUgdGhlIHByaW5jaXBhbCBjYW4gYmUgYSB1c2VyIG9yIGEgc2VydmljZSBhY2NvdW50LCBhbmQgRnJvbnRpZXIgd2lsbCB0aGUgY3JlZGVudGlhbHMgZnJvbSB0aGUgY3VycmVudCBsb2dnZWQgaW4gcHJpbmNpcGFsIGZyb20gdGhlIHNlc3Npb24gY29va2llIChpZiBhbnkpLCBvciB0aGUgY2xpZW50IGlkIGFuZCBzZWNyZXQgKGluIGNhc2Ugb2Ygc2VydmljZSB1c2Vycykgb3IgdGhlIGFjY2VzcyB0b2tlbiAoaW4gY2FzZSBvZiBodW1hbiB1c2VyIGFjY291bnRzKS6C0+STAhgiEy92MWJldGExL2JhdGNoY2hlY2s6ASoStQEKB0dldEpXS3MSKS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkdldEpXS3NSZXF1ZXN0GioucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5HZXRKV0tzUmVzcG9uc2UiU5JBHAoFQXV0aHoSE0dldCB3ZWxsIGtub3duIEpXS3OC0+STAi4SEi92MWJldGExL2F1dGgvandrc1oYEhYvLndlbGwta25vd24vandrcy5qc29uEnEKDExpc3RTZXNzaW9ucxIuLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdFNlc3Npb25zUmVxdWVzdBovLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdFNlc3Npb25zUmVzcG9uc2UiABJ0Cg1SZXZva2VTZXNzaW9uEi8ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5SZXZva2VTZXNzaW9uUmVxdWVzdBowLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUmV2b2tlU2Vzc2lvblJlc3BvbnNlIgASegoPUGluZ1VzZXJTZXNzaW9uEjEucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5QaW5nVXNlclNlc3Npb25SZXF1ZXN0GjIucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5QaW5nVXNlclNlc3Npb25SZXNwb25zZSIAErcCChJMaXN0QXV0aFN0cmF0ZWdpZXMSNC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RBdXRoU3RyYXRlZ2llc1JlcXVlc3QaNS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RBdXRoU3RyYXRlZ2llc1Jlc3BvbnNlIrMBkkGaAQoFQXV0aG4SHkxpc3QgYXV0aGVudGljYXRpb24gc3RyYXRlZ2llcxpxUmV0dXJucyBhIGxpc3Qgb2YgaWRlbnRpdHkgcHJvdmlkZXJzIGNvbmZpZ3VyZWQgb24gYW4gaW5zdGFuY2UgbGV2ZWwgaW4gRnJvbnRpZXIuIGUuZyBHb29nbGUsIEF6dXJlQUQsIEdpdGh1YiBldGOC0+STAg8SDS92MWJldGExL2F1dGgS6QQKDEF1dGhlbnRpY2F0ZRIuLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQXV0aGVudGljYXRlUmVxdWVzdBovLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQXV0aGVudGljYXRlUmVzcG9uc2Ui9wOSQZgDCgVBdXRobhIcQXV0aGVudGljYXRlIHdpdGggYSBzdHJhdGVneRrwAkF1dGhlbnRpY2F0ZSBhIHVzZXIgd2l0aCBhIHN0cmF0ZWd5LiBCeSBkZWZhdWx0LCBhZnRlciBzdWNjZXNzZnVsIGF1dGhlbnRpY2F0aW9uIG5vIG9wZXJhdGlvbiB3aWxsIGJlIHBlcmZvcm1lZCB0byBhcHBseSByZWRpcmVjdGlvbiBpbiBjYXNlIG9mIGJyb3dzZXJzLCBwcm92aWRlIGEgdXJsIGluIHRoZSBhdXRoZW50aWNhdGUgcmVxdWVzdCBib2R5IHRoYXQgd2lsbCBiZSB1c2VkIGZvciByZWRpcmVjdGlvbiBhZnRlciBhdXRoZW50aWNhdGlvbi4gQWxzbyBzZXQgcmVkaXJlY3QgYXMgdHJ1ZSBmb3IgcmVkaXJlY3RpbmcgdGhlIHVzZXIgcmVxdWVzdCB0byB0aGUgcmVkaXJlY3RfdXJsIGFmdGVyIHN1Y2Nlc3NmdWwgYXV0aGVudGljYXRpb24ugtPkkwJVEiYvdjFiZXRhMS9hdXRoL3JlZ2lzdGVyL3tzdHJhdGVneV9uYW1lfVorIiYvdjFiZXRhMS9hdXRoL3JlZ2lzdGVyL3tzdHJhdGVneV9uYW1lfToBKhK9BAoMQXV0aENhbGxiYWNrEi4ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5BdXRoQ2FsbGJhY2tSZXF1ZXN0Gi8ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5BdXRoQ2FsbGJhY2tSZXNwb25zZSLLA5JBjAMKBUF1dGhuEhhDYWxsYmFjayBmcm9tIGEgc3RyYXRlZ3ka6AJDYWxsYmFjayBmcm9tIGEgc3RyYXRlZ3kuIFRoaXMgaXMgdGhlIGVuZHBvaW50IHdoZXJlIHRoZSBzdHJhdGVneSB3aWxsIHJlZGlyZWN0IHRoZSB1c2VyIGFmdGVyIHN1Y2Nlc3NmdWwgYXV0aGVudGljYXRpb24uIFRoaXMgZW5kcG9pbnQgd2lsbCBiZSBjYWxsZWQgd2l0aCB0aGUgY29kZSBhbmQgc3RhdGUgcXVlcnkgcGFyYW1ldGVycy4gVGhlIGNvZGUgd2lsbCBiZSB1c2VkIHRvIGdldCB0aGUgYWNjZXNzIHRva2VuIGZyb20gdGhlIHN0cmF0ZWd5IGFuZCB0aGUgc3RhdGUgd2lsbCBiZSB1c2VkIHRvIGdldCB0aGUgcmV0dXJuX3RvIHVybCBmcm9tIHRoZSBzZXNzaW9uIGFuZCByZWRpcmVjdCB0aGUgdXNlciB0byB0aGF0IHVybC6C0+STAjUSFi92MWJldGExL2F1dGgvY2FsbGJhY2taGyIWL3YxYmV0YTEvYXV0aC9jYWxsYmFjazoBKhLCAwoJQXV0aFRva2VuEisucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5BdXRoVG9rZW5SZXF1ZXN0GiwucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5BdXRoVG9rZW5SZXNwb25zZSLZApJBtwIKBUF1dGhuEipHZW5lcmF0ZSBhY2Nlc3MgdG9rZW4gYnkgZ2l2ZW4gY3JlZGVudGlhbHMagQJBY2Nlc3MgdG9rZW4gY2FuIGJlIGdlbmVyYXRlZCBieSBwcm92aWRpbmcgdGhlIGNyZWRlbnRpYWxzIGluIHRoZSByZXF1ZXN0IGJvZHkvaGVhZGVyLiBUaGUgY3JlZGVudGlhbHMgY2FuIGJlIGNsaWVudCBpZCBhbmQgc2VjcmV0IG9yIHNlcnZpY2UgYWNjb3VudCBnZW5lcmF0ZWQga2V5IGp3dC4gVXNlIHRoZSBnZW5lcmF0ZWQgYWNjZXNzIHRva2VuIGluIEF1dGhvcml6YXRpb24gaGVhZGVyIHRvIGFjY2VzcyB0aGUgZnJvbnRpZXIgcmVzb3VyY2VzLoLT5JMCGCITL3YxYmV0YTEvYXV0aC90b2tlbjoBKhLBAQoKQXV0aExvZ291dBIsLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQXV0aExvZ291dFJlcXVlc3QaLS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkF1dGhMb2dvdXRSZXNwb25zZSJWkkEfCgVBdXRobhIWTG9nb3V0IGZyb20gYSBzdHJhdGVneYLT5JMCLhIUL3YxYmV0YTEvYXV0aC9sb2dvdXRaFioUL3YxYmV0YTEvYXV0aC9sb2dvdXQSrgIKD0xpc3RNZXRhU2NoZW1hcxIxLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdE1ldGFTY2hlbWFzUmVxdWVzdBoyLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdE1ldGFTY2hlbWFzUmVzcG9uc2UiswGSQZIBCgpNZXRhU2NoZW1hEhBMaXN0IG1ldGFzY2hlbWFzGnJSZXR1cm5zIGEgbGlzdCBvZiBhbGwgbWV0YXNjaGVtYXMgY29uZmlndXJlZCBvbiBhbiBpbnN0YW5jZSBsZXZlbCBpbiBGcm9udGllci4gZS5nIHVzZXIsIHByb2plY3QsIG9yZ2FuaXphdGlvbiBldGOC0+STAhcSFS92MWJldGExL21ldGEvc2NoZW1hcxKfBQoQQ3JlYXRlTWV0YVNjaGVtYRIyLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ3JlYXRlTWV0YVNjaGVtYVJlcXVlc3QaMy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNyZWF0ZU1ldGFTY2hlbWFSZXNwb25zZSKhBJJB+gMKCk1ldGFTY2hlbWESEUNyZWF0ZSBtZXRhc2NoZW1hGtgDQ3JlYXRlIGEgbmV3IG1ldGFkYXRhIHNjaGVtYS4gVGhlIG1ldGFzY2hlbWEgKipuYW1lKiogbXVzdCBiZSB1bmlxdWUgd2l0aGluIHRoZSBlbnRpcmUgRnJvbnRpZXIgaW5zdGFuY2UgYW5kIGNhbiBjb250YWluIG9ubHkgYWxwaGFudW1lcmljIGNoYXJhY3RlcnMsIGRhc2hlcyBhbmQgdW5kZXJzY29yZXMuIFRoZSBtZXRhc2NoZW1hICoqc2NoZW1hKiogbXVzdCBiZSBhIHZhbGlkIEpTT04gc2NoZW1hLlBsZWFzZSByZWZlciB0byBodHRwczovL2pzb24tc2NoZW1hLm9yZy8gdG8ga25vdyBtb3JlIGFib3V0IGpzb24gc2NoZW1hLiA8YnIvPipFeGFtcGxlOiogYHtuYW1lOiJ1c2VyIixzY2hlbWE6eyJ0eXBlIjoib2JqZWN0IiwicHJvcGVydGllcyI6eyJsYWJlbCI6eyJ0eXBlIjoib2JqZWN0IiwiYWRkaXRpb25hbFByb3BlcnRpZXMiOnsidHlwZSI6InN0cmluZyJ9fSwiZGVzY3JpcHRpb24iOnsidHlwZSI6InN0cmluZyJ9fX19YILT5JMCHSIVL3YxYmV0YTEvbWV0YS9zY2hlbWFzOgRib2R5EtMBCg1HZXRNZXRhU2NoZW1hEi8ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5HZXRNZXRhU2NoZW1hUmVxdWVzdBowLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR2V0TWV0YVNjaGVtYVJlc3BvbnNlIl+SQToKCk1ldGFTY2hlbWESDkdldCBtZXRhc2NoZW1hGhxHZXQgYSBtZXRhZGF0YSBzY2hlbWEgYnkgSUQugtPkkwIcEhovdjFiZXRhMS9tZXRhL3NjaGVtYXMve2lkfRLBBAoQVXBkYXRlTWV0YVNjaGVtYRIyLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuVXBkYXRlTWV0YVNjaGVtYVJlcXVlc3QaMy5yYXlzdGFjay5mcm9udGllci52MWJldGExLlVwZGF0ZU1ldGFTY2hlbWFSZXNwb25zZSLDA5JBlwMKCk1ldGFTY2hlbWESEVVwZGF0ZSBtZXRhc2NoZW1hGvUCVXBkYXRlIGEgbWV0YWRhdGEgc2NoZW1hLiBPbmx5IGBzY2hlbWFgIGZpZWxkIG9mIGEgbWV0YXNjaGVtYSBjYW4gYmUgdXBkYXRlZC4gVGhlIG1ldGFzY2hlbWEgYHNjaGVtYWAgbXVzdCBiZSBhIHZhbGlkIEpTT04gc2NoZW1hLlBsZWFzZSByZWZlciB0byBodHRwczovL2pzb24tc2NoZW1hLm9yZy8gdG8ga25vdyBtb3JlIGFib3V0IGpzb24gc2NoZW1hLiA8YnIvPipFeGFtcGxlOiogYHtuYW1lOiJ1c2VyIixzY2hlbWE6eyJ0eXBlIjoib2JqZWN0IiwicHJvcGVydGllcyI6eyJsYWJlbCI6eyJ0eXBlIjoib2JqZWN0IiwiYWRkaXRpb25hbFByb3BlcnRpZXMiOnsidHlwZSI6InN0cmluZyJ9fSwiZGVzY3JpcHRpb24iOnsidHlwZSI6InN0cmluZyJ9fX19YILT5JMCIhoaL3YxYmV0YTEvbWV0YS9zY2hlbWFzL3tpZH06BGJvZHkS4wQKEERlbGV0ZU1ldGFTY2hlbWESMi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkRlbGV0ZU1ldGFTY2hlbWFSZXF1ZXN0GjMucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5EZWxldGVNZXRhU2NoZW1hUmVzcG9uc2Ui5QOSQb8DCgpNZXRhU2NoZW1hEhFEZWxldGUgbWV0YXNjaGVtYRqdA0RlbGV0ZSBhIG1ldGFkYXRhIHNjaGVtYSBwZXJtYW5lbnRseS4gT25jZSBkZWxldGVkIHRoZSBtZXRhc2NoZW1hIHdvbid0IGJlIHVzZWQgdG8gdmFsaWRhdGUgdGhlIG1ldGFkYXRhLiBGb3IgZXhhbXBsZSwgaWYgYSBtZXRhc2NoZW1hKHdpdGggYGxhYmVsYCBhbmQgYGRlc2NyaXB0aW9uYCBmaWVsZHMpIGlzIHVzZWQgdG8gdmFsaWRhdGUgdGhlIG1ldGFkYXRhIG9mIGEgdXNlciwgdGhlbiBkZWxldGluZyB0aGUgbWV0YXNjaGVtYSB3aWxsIG5vdCB2YWxpZGF0ZSB0aGUgbWV0YWRhdGEgb2YgdGhlIHVzZXIgYW5kIG1ldGFkYXRhIGZpZWxkIGNhbiBjb250YWluIGFueSBrZXktdmFsdWUgcGFpcihhbmQgc2F5IGFub3RoZXIgZmllbGQgY2FsbGVkIGBmb29gIGNhbiBiZSBpbnNlcnRlZCBpbiBhIHVzZXIncyBtZXRhZGF0YSkugtPkkwIcKhovdjFiZXRhMS9tZXRhL3NjaGVtYXMve2lkfRKJAgoTRGVzY3JpYmVQcmVmZXJlbmNlcxI1LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRGVzY3JpYmVQcmVmZXJlbmNlc1JlcXVlc3QaNi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkRlc2NyaWJlUHJlZmVyZW5jZXNSZXNwb25zZSKCAZJBXAoKUHJlZmVyZW5jZRIURGVzY3JpYmUgcHJlZmVyZW5jZXMaOFJldHVybnMgYSBsaXN0IG9mIGFsbCBwcmVmZXJlbmNlcyBzdXBwb3J0ZWQgYnkgRnJvbnRpZXIugtPkkwIdEhsvdjFiZXRhMS9wcmVmZXJlbmNlcy90cmFpdHMSxAMKHUNyZWF0ZU9yZ2FuaXphdGlvblByZWZlcmVuY2VzEj8ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVPcmdhbml6YXRpb25QcmVmZXJlbmNlc1JlcXVlc3QaQC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNyZWF0ZU9yZ2FuaXphdGlvblByZWZlcmVuY2VzUmVzcG9uc2UinwKSQekBCgpQcmVmZXJlbmNlEh9DcmVhdGUgb3JnYW5pemF0aW9uIHByZWZlcmVuY2VzGrkBQ3JlYXRlIGEgbmV3IG9yZ2FuaXphdGlvbiBwcmVmZXJlbmNlcy4gVGhlIG9yZ2FuaXphdGlvbiBwcmVmZXJlbmNlcyAqKm5hbWUqKiBtdXN0IGJlIHVuaXF1ZSB3aXRoaW4gdGhlIG9yZ2FuaXphdGlvbiBhbmQgY2FuIGNvbnRhaW4gb25seSBhbHBoYW51bWVyaWMgY2hhcmFjdGVycywgZGFzaGVzIGFuZCB1bmRlcnNjb3Jlcy6C0+STAiwiJy92MWJldGExL29yZ2FuaXphdGlvbnMve2lkfS9wcmVmZXJlbmNlczoBKhKlAgobTGlzdE9yZ2FuaXphdGlvblByZWZlcmVuY2VzEj0ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0T3JnYW5pemF0aW9uUHJlZmVyZW5jZXNSZXF1ZXN0Gj4ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0T3JnYW5pemF0aW9uUHJlZmVyZW5jZXNSZXNwb25zZSKGAZJBVAoKUHJlZmVyZW5jZRIdTGlzdCBvcmdhbml6YXRpb24gcHJlZmVyZW5jZXMaJ0xpc3QgYW4gb3JnYW5pemF0aW9uIHByZWZlcmVuY2VzIGJ5IElELoLT5JMCKRInL3YxYmV0YTEvb3JnYW5pemF0aW9ucy97aWR9L3ByZWZlcmVuY2VzEpwDChhDcmVhdGVQcm9qZWN0UHJlZmVyZW5jZXMSOi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNyZWF0ZVByb2plY3RQcmVmZXJlbmNlc1JlcXVlc3QaOy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNyZWF0ZVByb2plY3RQcmVmZXJlbmNlc1Jlc3BvbnNlIoYCkkHVAQoKUHJlZmVyZW5jZRIaQ3JlYXRlIHByb2plY3QgcHJlZmVyZW5jZXMaqgFDcmVhdGUgYSBuZXcgcHJvamVjdCBwcmVmZXJlbmNlcy4gVGhlIHByb2plY3QgcHJlZmVyZW5jZXMgKipuYW1lKiogbXVzdCBiZSB1bmlxdWUgd2l0aGluIHRoZSBwcm9qZWN0IGFuZCBjYW4gY29udGFpbiBvbmx5IGFscGhhbnVtZXJpYyBjaGFyYWN0ZXJzLCBkYXNoZXMgYW5kIHVuZGVyc2NvcmVzLoLT5JMCJyIiL3YxYmV0YTEvcHJvamVjdHMve2lkfS9wcmVmZXJlbmNlczoBKhKFAgoWTGlzdFByb2plY3RQcmVmZXJlbmNlcxI4LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdFByb2plY3RQcmVmZXJlbmNlc1JlcXVlc3QaOS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RQcm9qZWN0UHJlZmVyZW5jZXNSZXNwb25zZSJ2kkFJCgpQcmVmZXJlbmNlEhhMaXN0IHByb2plY3QgcHJlZmVyZW5jZXMaIUxpc3QgYSBwcm9qZWN0IHByZWZlcmVuY2VzIGJ5IElELoLT5JMCJBIiL3YxYmV0YTEvcHJvamVjdHMve2lkfS9wcmVmZXJlbmNlcxKMAwoWQ3JlYXRlR3JvdXBQcmVmZXJlbmNlcxI4LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ3JlYXRlR3JvdXBQcmVmZXJlbmNlc1JlcXVlc3QaOS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNyZWF0ZUdyb3VwUHJlZmVyZW5jZXNSZXNwb25zZSL8AZJBzQEKClByZWZlcmVuY2USGENyZWF0ZSBncm91cCBwcmVmZXJlbmNlcxqkAUNyZWF0ZSBhIG5ldyBncm91cCBwcmVmZXJlbmNlcy4gVGhlIGdyb3VwIHByZWZlcmVuY2VzICoqbmFtZSoqIG11c3QgYmUgdW5pcXVlIHdpdGhpbiB0aGUgZ3JvdXAgYW5kIGNhbiBjb250YWluIG9ubHkgYWxwaGFudW1lcmljIGNoYXJhY3RlcnMsIGRhc2hlcyBhbmQgdW5kZXJzY29yZXMugtPkkwIlIiAvdjFiZXRhMS9ncm91cHMve2lkfS9wcmVmZXJlbmNlczoBKhL5AQoUTGlzdEdyb3VwUHJlZmVyZW5jZXMSNi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RHcm91cFByZWZlcmVuY2VzUmVxdWVzdBo3LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdEdyb3VwUHJlZmVyZW5jZXNSZXNwb25zZSJwkkFFCgpQcmVmZXJlbmNlEhZMaXN0IGdyb3VwIHByZWZlcmVuY2VzGh9MaXN0IGEgZ3JvdXAgcHJlZmVyZW5jZXMgYnkgSUQugtPkkwIiEiAvdjFiZXRhMS9ncm91cHMve2lkfS9wcmVmZXJlbmNlcxKEAwoVQ3JlYXRlVXNlclByZWZlcmVuY2VzEjcucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVVc2VyUHJlZmVyZW5jZXNSZXF1ZXN0GjgucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVVc2VyUHJlZmVyZW5jZXNSZXNwb25zZSL3AZJByQEKClByZWZlcmVuY2USF0NyZWF0ZSB1c2VyIHByZWZlcmVuY2VzGqEBQ3JlYXRlIGEgbmV3IHVzZXIgcHJlZmVyZW5jZXMuIFRoZSB1c2VyIHByZWZlcmVuY2VzICoqbmFtZSoqIG11c3QgYmUgdW5pcXVlIHdpdGhpbiB0aGUgdXNlciBhbmQgY2FuIGNvbnRhaW4gb25seSBhbHBoYW51bWVyaWMgY2hhcmFjdGVycywgZGFzaGVzIGFuZCB1bmRlcnNjb3Jlcy6C0+STAiQiHy92MWJldGExL3VzZXJzL3tpZH0vcHJlZmVyZW5jZXM6ASoS8wEKE0xpc3RVc2VyUHJlZmVyZW5jZXMSNS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RVc2VyUHJlZmVyZW5jZXNSZXF1ZXN0GjYucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0VXNlclByZWZlcmVuY2VzUmVzcG9uc2UibZJBQwoKUHJlZmVyZW5jZRIVTGlzdCB1c2VyIHByZWZlcmVuY2VzGh5MaXN0IGEgdXNlciBwcmVmZXJlbmNlcyBieSBJRC6C0+STAiESHy92MWJldGExL3VzZXJzL3tpZH0vcHJlZmVyZW5jZXMSoQMKHENyZWF0ZUN1cnJlbnRVc2VyUHJlZmVyZW5jZXMSPi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNyZWF0ZUN1cnJlbnRVc2VyUHJlZmVyZW5jZXNSZXF1ZXN0Gj8ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVDdXJyZW50VXNlclByZWZlcmVuY2VzUmVzcG9uc2Ui/wGSQdEBCgpQcmVmZXJlbmNlEh9DcmVhdGUgY3VycmVudCB1c2VyIHByZWZlcmVuY2VzGqEBQ3JlYXRlIGEgbmV3IHVzZXIgcHJlZmVyZW5jZXMuIFRoZSB1c2VyIHByZWZlcmVuY2VzICoqbmFtZSoqIG11c3QgYmUgdW5pcXVlIHdpdGhpbiB0aGUgdXNlciBhbmQgY2FuIGNvbnRhaW4gb25seSBhbHBoYW51bWVyaWMgY2hhcmFjdGVycywgZGFzaGVzIGFuZCB1bmRlcnNjb3Jlcy6C0+STAiQiHy92MWJldGExL3VzZXJzL3NlbGYvcHJlZmVyZW5jZXM6ASoSkAIKGkxpc3RDdXJyZW50VXNlclByZWZlcmVuY2VzEjwucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0Q3VycmVudFVzZXJQcmVmZXJlbmNlc1JlcXVlc3QaPS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RDdXJyZW50VXNlclByZWZlcmVuY2VzUmVzcG9uc2UidZJBSwoKUHJlZmVyZW5jZRIdTGlzdCBjdXJyZW50IHVzZXIgcHJlZmVyZW5jZXMaHkxpc3QgYSB1c2VyIHByZWZlcmVuY2VzIGJ5IElELoLT5JMCIRIfL3YxYmV0YTEvdXNlcnMvc2VsZi9wcmVmZXJlbmNlcxKTAgoUQ3JlYXRlQmlsbGluZ0FjY291bnQSNi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNyZWF0ZUJpbGxpbmdBY2NvdW50UmVxdWVzdBo3LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ3JlYXRlQmlsbGluZ0FjY291bnRSZXNwb25zZSKJAZJBVAoHQmlsbGluZxIWQ3JlYXRlIGJpbGxpbmcgYWNjb3VudBoxQ3JlYXRlIGEgbmV3IGJpbGxpbmcgYWNjb3VudCBmb3IgYW4gb3JnYW5pemF0aW9uLoLT5JMCLCInL3YxYmV0YTEvb3JnYW5pemF0aW9ucy97b3JnX2lkfS9iaWxsaW5nOgEqEvMBChFHZXRCaWxsaW5nQWNjb3VudBIzLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR2V0QmlsbGluZ0FjY291bnRSZXF1ZXN0GjQucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5HZXRCaWxsaW5nQWNjb3VudFJlc3BvbnNlInOSQTwKB0JpbGxpbmcSE0dldCBiaWxsaW5nIGFjY291bnQaHEdldCBhIGJpbGxpbmcgYWNjb3VudCBieSBJRC6C0+STAi4SLC92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vYmlsbGluZy97aWR9EoUCChRVcGRhdGVCaWxsaW5nQWNjb3VudBI2LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuVXBkYXRlQmlsbGluZ0FjY291bnRSZXF1ZXN0GjcucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5VcGRhdGVCaWxsaW5nQWNjb3VudFJlc3BvbnNlInySQUIKB0JpbGxpbmcSFlVwZGF0ZSBiaWxsaW5nIGFjY291bnQaH1VwZGF0ZSBhIGJpbGxpbmcgYWNjb3VudCBieSBJRC6C0+STAjEaLC92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vYmlsbGluZy97aWR9OgEqEsECChZSZWdpc3RlckJpbGxpbmdBY2NvdW50EjgucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5SZWdpc3RlckJpbGxpbmdBY2NvdW50UmVxdWVzdBo5LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUmVnaXN0ZXJCaWxsaW5nQWNjb3VudFJlc3BvbnNlIrEBkkFuCgdCaWxsaW5nEiRSZWdpc3RlciBiaWxsaW5nIGFjY291bnQgdG8gcHJvdmlkZXIaPVJlZ2lzdGVyIGEgYmlsbGluZyBhY2NvdW50IHRvIGEgcHJvdmlkZXIgaWYgaXQncyBub3QgYWxyZWFkeS6C0+STAjoiNS92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vYmlsbGluZy97aWR9L3JlZ2lzdGVyOgEqEoMCChNMaXN0QmlsbGluZ0FjY291bnRzEjUucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0QmlsbGluZ0FjY291bnRzUmVxdWVzdBo2LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdEJpbGxpbmdBY2NvdW50c1Jlc3BvbnNlIn2SQUsKB0JpbGxpbmcSFUxpc3QgYmlsbGluZyBhY2NvdW50cxopTGlzdCBiaWxsaW5nIGFjY291bnRzIG9mIGFuIG9yZ2FuaXphdGlvbi6C0+STAikSJy92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vYmlsbGluZxKCAgoURGVsZXRlQmlsbGluZ0FjY291bnQSNi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkRlbGV0ZUJpbGxpbmdBY2NvdW50UmVxdWVzdBo3LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRGVsZXRlQmlsbGluZ0FjY291bnRSZXNwb25zZSJ5kkFCCgdCaWxsaW5nEhZEZWxldGUgYmlsbGluZyBhY2NvdW50Gh9EZWxldGUgYSBiaWxsaW5nIGFjY291bnQgYnkgSUQugtPkkwIuKiwvdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L2JpbGxpbmcve2lkfRKNAgoURW5hYmxlQmlsbGluZ0FjY291bnQSNi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkVuYWJsZUJpbGxpbmdBY2NvdW50UmVxdWVzdBo3LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRW5hYmxlQmlsbGluZ0FjY291bnRSZXNwb25zZSKDAZJBQgoHQmlsbGluZxIWRW5hYmxlIGJpbGxpbmcgYWNjb3VudBofRW5hYmxlIGEgYmlsbGluZyBhY2NvdW50IGJ5IElELoLT5JMCOCIzL3YxYmV0YTEvb3JnYW5pemF0aW9ucy97b3JnX2lkfS9iaWxsaW5nL3tpZH0vZW5hYmxlOgEqEukCChVEaXNhYmxlQmlsbGluZ0FjY291bnQSNy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkRpc2FibGVCaWxsaW5nQWNjb3VudFJlcXVlc3QaOC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkRpc2FibGVCaWxsaW5nQWNjb3VudFJlc3BvbnNlItwBkkGZAQoHQmlsbGluZxIXRGlzYWJsZSBiaWxsaW5nIGFjY291bnQadURpc2FibGUgYSBiaWxsaW5nIGFjY291bnQgYnkgSUQuIERpc2FibGluZyBhIGJpbGxpbmcgYWNjb3VudCBkb2Vzbid0IGF1dG9tYXRpY2FsbHkgZGlzYWJsZSBpdCdzIGFjdGl2ZSBzdWJzY3JpcHRpb25zLoLT5JMCOSI0L3YxYmV0YTEvb3JnYW5pemF0aW9ucy97b3JnX2lkfS9iaWxsaW5nL3tpZH0vZGlzYWJsZToBKhKLAgoRR2V0QmlsbGluZ0JhbGFuY2USMy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkdldEJpbGxpbmdCYWxhbmNlUmVxdWVzdBo0LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR2V0QmlsbGluZ0JhbGFuY2VSZXNwb25zZSKKAZJBSwoHQmlsbGluZxITR2V0IGJpbGxpbmcgYmFsYW5jZRorR2V0IHRoZSBiYWxhbmNlIG9mIGEgYmlsbGluZyBhY2NvdW50IGJ5IElELoLT5JMCNhI0L3YxYmV0YTEvb3JnYW5pemF0aW9ucy97b3JnX2lkfS9iaWxsaW5nL3tpZH0vYmFsYW5jZRL6AQoKSGFzVHJpYWxlZBIsLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuSGFzVHJpYWxlZFJlcXVlc3QaLS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkhhc1RyaWFsZWRSZXNwb25zZSKOAZJBPwoHQmlsbGluZxILSGFzIHRyaWFsZWQaJ0NoZWNrIGlmIGEgYmlsbGluZyBhY2NvdW50IGhhcyB0cmlhbGVkLoLT5JMCRhJEL3YxYmV0YTEvb3JnYW5pemF0aW9ucy97b3JnX2lkfS9iaWxsaW5nL3tpZH0vcGxhbnMve3BsYW5faWR9L3RyaWFsZWQSxwIKD0dldFN1YnNjcmlwdGlvbhIxLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR2V0U3Vic2NyaXB0aW9uUmVxdWVzdBoyLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR2V0U3Vic2NyaXB0aW9uUmVzcG9uc2UizAGSQTsKDFN1YnNjcmlwdGlvbhIQR2V0IHN1YnNjcmlwdGlvbhoZR2V0IGEgc3Vic2NyaXB0aW9uIGJ5IElELoLT5JMChwESRy92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vYmlsbGluZy97YmlsbGluZ19pZH0vc3Vic2NyaXB0aW9ucy97aWR9WjwSOi92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vYmlsbGluZy9zdWJzY3JpcHRpb25zL3tpZH0S6gIKEkNhbmNlbFN1YnNjcmlwdGlvbhI0LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ2FuY2VsU3Vic2NyaXB0aW9uUmVxdWVzdBo1LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ2FuY2VsU3Vic2NyaXB0aW9uUmVzcG9uc2Ui5gGSQUEKDFN1YnNjcmlwdGlvbhITQ2FuY2VsIHN1YnNjcmlwdGlvbhocQ2FuY2VsIGEgc3Vic2NyaXB0aW9uIGJ5IElELoLT5JMCmwEiTi92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vYmlsbGluZy97YmlsbGluZ19pZH0vc3Vic2NyaXB0aW9ucy97aWR9L2NhbmNlbDoBKlpGIkEvdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L2JpbGxpbmcvc3Vic2NyaXB0aW9ucy97aWR9L2NhbmNlbDoBKhLTAgoRTGlzdFN1YnNjcmlwdGlvbnMSMy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RTdWJzY3JpcHRpb25zUmVxdWVzdBo0LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdFN1YnNjcmlwdGlvbnNSZXNwb25zZSLSAZJBTAoMU3Vic2NyaXB0aW9uEhJMaXN0IHN1YnNjcmlwdGlvbnMaKExpc3Qgc3Vic2NyaXB0aW9ucyBvZiBhIGJpbGxpbmcgYWNjb3VudC6C0+STAn0SQi92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vYmlsbGluZy97YmlsbGluZ19pZH0vc3Vic2NyaXB0aW9uc1o3EjUvdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L2JpbGxpbmcvc3Vic2NyaXB0aW9ucxL0AgoSQ2hhbmdlU3Vic2NyaXB0aW9uEjQucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DaGFuZ2VTdWJzY3JpcHRpb25SZXF1ZXN0GjUucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DaGFuZ2VTdWJzY3JpcHRpb25SZXNwb25zZSLwAZJBSwoMU3Vic2NyaXB0aW9uEhhDaGFuZ2Ugc3Vic2NyaXB0aW9uIHBsYW4aIUNoYW5nZSBhIHN1YnNjcmlwdGlvbiBwbGFuIGJ5IElELoLT5JMCmwEiTi92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vYmlsbGluZy97YmlsbGluZ19pZH0vc3Vic2NyaXB0aW9ucy97aWR9L2NoYW5nZToBKlpGIkEvdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L2JpbGxpbmcvc3Vic2NyaXB0aW9ucy97aWR9L2NoYW5nZToBKhLcAgoSVXBkYXRlU3Vic2NyaXB0aW9uEjQucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5VcGRhdGVTdWJzY3JpcHRpb25SZXF1ZXN0GjUucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5VcGRhdGVTdWJzY3JpcHRpb25SZXNwb25zZSLYAZJBQQoMU3Vic2NyaXB0aW9uEhNVcGRhdGUgc3Vic2NyaXB0aW9uGhxVcGRhdGUgYSBzdWJzY3JpcHRpb24gYnkgSUQugtPkkwKNARpHL3YxYmV0YTEvb3JnYW5pemF0aW9ucy97b3JnX2lkfS9iaWxsaW5nL3tiaWxsaW5nX2lkfS9zdWJzY3JpcHRpb25zL3tpZH06ASpaPyI6L3YxYmV0YTEvb3JnYW5pemF0aW9ucy97b3JnX2lkfS9iaWxsaW5nL3N1YnNjcmlwdGlvbnMve2lkfToBKhLYAQoNQ3JlYXRlUHJvZHVjdBIvLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ3JlYXRlUHJvZHVjdFJlcXVlc3QaMC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNyZWF0ZVByb2R1Y3RSZXNwb25zZSJkkkE9CgdQcm9kdWN0Eg5DcmVhdGUgcHJvZHVjdBoiQ3JlYXRlIGEgbmV3IHByb2R1Y3QgZm9yIHBsYXRmb3JtLoLT5JMCHiIZL3YxYmV0YTEvYmlsbGluZy9wcm9kdWN0czoBKhLAAQoKR2V0UHJvZHVjdBIsLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR2V0UHJvZHVjdFJlcXVlc3QaLS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkdldFByb2R1Y3RSZXNwb25zZSJVkkEsCgdQcm9kdWN0EgtHZXQgcHJvZHVjdBoUR2V0IGEgcHJvZHVjdCBieSBJRC6C0+STAiASHi92MWJldGExL2JpbGxpbmcvcHJvZHVjdHMve2lkfRLPAQoMTGlzdFByb2R1Y3RzEi4ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0UHJvZHVjdHNSZXF1ZXN0Gi8ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0UHJvZHVjdHNSZXNwb25zZSJekkE6CgdQcm9kdWN0Eg1MaXN0IHByb2R1Y3RzGiBMaXN0IGFsbCBwcm9kdWN0cyBvZiBhIHBsYXRmb3JtLoLT5JMCGxIZL3YxYmV0YTEvYmlsbGluZy9wcm9kdWN0cxLSAQoNVXBkYXRlUHJvZHVjdBIvLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuVXBkYXRlUHJvZHVjdFJlcXVlc3QaMC5yYXlzdGFjay5mcm9udGllci52MWJldGExLlVwZGF0ZVByb2R1Y3RSZXNwb25zZSJekkEyCgdQcm9kdWN0Eg5VcGRhdGUgcHJvZHVjdBoXVXBkYXRlIGEgcHJvZHVjdCBieSBJRC6C0+STAiMaHi92MWJldGExL2JpbGxpbmcvcHJvZHVjdHMve2lkfToBKhLYAQoNQ3JlYXRlRmVhdHVyZRIvLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ3JlYXRlRmVhdHVyZVJlcXVlc3QaMC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNyZWF0ZUZlYXR1cmVSZXNwb25zZSJkkkE9CgdGZWF0dXJlEg5DcmVhdGUgZmVhdHVyZRoiQ3JlYXRlIGEgbmV3IGZlYXR1cmUgZm9yIHBsYXRmb3JtLoLT5JMCHiIZL3YxYmV0YTEvYmlsbGluZy9mZWF0dXJlczoBKhLAAQoKR2V0RmVhdHVyZRIsLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR2V0RmVhdHVyZVJlcXVlc3QaLS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkdldEZlYXR1cmVSZXNwb25zZSJVkkEsCgdGZWF0dXJlEgtHZXQgZmVhdHVyZRoUR2V0IGEgZmVhdHVyZSBieSBJRC6C0+STAiASHi92MWJldGExL2JpbGxpbmcvZmVhdHVyZXMve2lkfRLSAQoNVXBkYXRlRmVhdHVyZRIvLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuVXBkYXRlRmVhdHVyZVJlcXVlc3QaMC5yYXlzdGFjay5mcm9udGllci52MWJldGExLlVwZGF0ZUZlYXR1cmVSZXNwb25zZSJekkEyCgdGZWF0dXJlEg5VcGRhdGUgZmVhdHVyZRoXVXBkYXRlIGEgZmVhdHVyZSBieSBJRC6C0+STAiMaHi92MWJldGExL2JpbGxpbmcvZmVhdHVyZXMve2lkfToBKhLAAQoMTGlzdEZlYXR1cmVzEi4ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0RmVhdHVyZXNSZXF1ZXN0Gi8ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0RmVhdHVyZXNSZXNwb25zZSJPkkErCgdGZWF0dXJlEg1MaXN0IGZlYXR1cmVzGhFMaXN0IGFsbCBmZWF0dXJlc4LT5JMCGxIZL3YxYmV0YTEvYmlsbGluZy9mZWF0dXJlcxLDAQoKQ3JlYXRlUGxhbhIsLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ3JlYXRlUGxhblJlcXVlc3QaLS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNyZWF0ZVBsYW5SZXNwb25zZSJYkkE0CgRQbGFuEgtDcmVhdGUgcGxhbhofQ3JlYXRlIGEgbmV3IHBsYW4gZm9yIHBsYXRmb3JtLoLT5JMCGyIWL3YxYmV0YTEvYmlsbGluZy9wbGFuczoBKhKsAQoJTGlzdFBsYW5zEisucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0UGxhbnNSZXF1ZXN0GiwucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0UGxhbnNSZXNwb25zZSJEkkEjCgRQbGFuEgpMaXN0IHBsYW5zGg9MaXN0IGFsbCBwbGFucy6C0+STAhgSFi92MWJldGExL2JpbGxpbmcvcGxhbnMSqwEKB0dldFBsYW4SKS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkdldFBsYW5SZXF1ZXN0GioucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5HZXRQbGFuUmVzcG9uc2UiSZJBIwoEUGxhbhIIR2V0IHBsYW4aEUdldCBhIHBsYW4gYnkgSUQugtPkkwIdEhsvdjFiZXRhMS9iaWxsaW5nL3BsYW5zL3tpZH0SvQEKClVwZGF0ZVBsYW4SLC5yYXlzdGFjay5mcm9udGllci52MWJldGExLlVwZGF0ZVBsYW5SZXF1ZXN0Gi0ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5VcGRhdGVQbGFuUmVzcG9uc2UiUpJBKQoEUGxhbhILVXBkYXRlIHBsYW4aFFVwZGF0ZSBhIHBsYW4gYnkgSUQugtPkkwIgGhsvdjFiZXRhMS9iaWxsaW5nL3BsYW5zL3tpZH06ASoShQMKDkNyZWF0ZUNoZWNrb3V0EjAucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVDaGVja291dFJlcXVlc3QaMS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNyZWF0ZUNoZWNrb3V0UmVzcG9uc2UijQKSQYgBCghDaGVja291dBIiQ2hlY2tvdXQgYSBwcm9kdWN0IG9yIHN1YnNjcmlwdGlvbhpYQ2hlY2tvdXQgYSBwcm9kdWN0IHRvIGJ1eSBpdCBvbmUgdGltZSBvciBzdGFydCBhIHN1YnNjcmlwdGlvbiBwbGFuIG9uIGEgYmlsbGluZyBhY2NvdW50LoLT5JMCeyI+L3YxYmV0YTEvb3JnYW5pemF0aW9ucy97b3JnX2lkfS9iaWxsaW5nL3tiaWxsaW5nX2lkfS9jaGVja291dHM6ASpaNiIxL3YxYmV0YTEvb3JnYW5pemF0aW9ucy97b3JnX2lkfS9iaWxsaW5nL2NoZWNrb3V0czoBKhK3AgoNTGlzdENoZWNrb3V0cxIvLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdENoZWNrb3V0c1JlcXVlc3QaMC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RDaGVja291dHNSZXNwb25zZSLCAZJBRAoIQ2hlY2tvdXQSDkxpc3QgY2hlY2tvdXRzGihMaXN0IGFsbCBjaGVja291dHMgb2YgYSBiaWxsaW5nIGFjY291bnQugtPkkwJ1Ej4vdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L2JpbGxpbmcve2JpbGxpbmdfaWR9L2NoZWNrb3V0c1ozEjEvdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L2JpbGxpbmcvY2hlY2tvdXRzEqYCCgtHZXRDaGVja291dBItLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR2V0Q2hlY2tvdXRSZXF1ZXN0Gi4ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5HZXRDaGVja291dFJlc3BvbnNlIrcBkkEvCghDaGVja291dBIMR2V0IGNoZWNrb3V0GhVHZXQgYSBjaGVja291dCBieSBJRC6C0+STAn8SQy92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vYmlsbGluZy97YmlsbGluZ19pZH0vY2hlY2tvdXRzL3tpZH1aOBI2L3YxYmV0YTEvb3JnYW5pemF0aW9ucy97b3JnX2lkfS9iaWxsaW5nL2NoZWNrb3V0cy97aWR9EtwCChdDaGVja0ZlYXR1cmVFbnRpdGxlbWVudBI5LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ2hlY2tGZWF0dXJlRW50aXRsZW1lbnRSZXF1ZXN0GjoucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DaGVja0ZlYXR1cmVFbnRpdGxlbWVudFJlc3BvbnNlIskBkkFWCgtFbnRpdGxlbWVudBIRQ2hlY2sgZW50aXRsZW1lbnQaNENoZWNrIGlmIGEgYmlsbGluZyBhY2NvdW50IGlzIGVudGl0bGVkIHRvIGEgZmVhdHVyZS6C0+STAmoiOi92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vYmlsbGluZy97YmlsbGluZ19pZH0vY2hlY2s6ASpaKSIkL3YxYmV0YTEvb3JnYW5pemF0aW9ucy9iaWxsaW5nL2NoZWNrOgEqEp8CChZDaGVja0NyZWRpdEVudGl0bGVtZW50EjgucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DaGVja0NyZWRpdEVudGl0bGVtZW50UmVxdWVzdBo5LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ2hlY2tDcmVkaXRFbnRpdGxlbWVudFJlc3BvbnNlIo8BkkFrCgtFbnRpdGxlbWVudBIYQ2hlY2sgY3JlZGl0IGVudGl0bGVtZW50GkJDaGVjayBpZiBhIGJpbGxpbmcgYWNjb3VudCBoYXMgZW5vdWdoIGNyZWRpdHMgdG8gY292ZXIgdGhlIGFtb3VudC6C0+STAhsiFi92MWJldGExL2JpbGxpbmcvY2hlY2s6ASoSyQIKEkNyZWF0ZUJpbGxpbmdVc2FnZRI0LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ3JlYXRlQmlsbGluZ1VzYWdlUmVxdWVzdBo1LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ3JlYXRlQmlsbGluZ1VzYWdlUmVzcG9uc2UixQGSQVAKBVVzYWdlEhRDcmVhdGUgYmlsbGluZyB1c2FnZRoxUmVwb3J0IGEgbmV3IGJpbGxpbmcgdXNhZ2UgZm9yIGEgYmlsbGluZyBhY2NvdW50LoLT5JMCbCI7L3YxYmV0YTEvb3JnYW5pemF0aW9ucy97b3JnX2lkfS9iaWxsaW5nL3tiaWxsaW5nX2lkfS91c2FnZXM6ASpaKiIlL3YxYmV0YTEvb3JnYW5pemF0aW9ucy9iaWxsaW5nL3VzYWdlczoBKhLsAgoXTGlzdEJpbGxpbmdUcmFuc2FjdGlvbnMSOS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RCaWxsaW5nVHJhbnNhY3Rpb25zUmVxdWVzdBo6LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdEJpbGxpbmdUcmFuc2FjdGlvbnNSZXNwb25zZSLZAZJBVQoLVHJhbnNhY3Rpb24SGUxpc3QgYmlsbGluZyB0cmFuc2FjdGlvbnMaK0xpc3QgYWxsIHRyYW5zYWN0aW9ucyBvZiBhIGJpbGxpbmcgYWNjb3VudC6C0+STAnsSQS92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vYmlsbGluZy97YmlsbGluZ19pZH0vdHJhbnNhY3Rpb25zWjYSNC92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vYmlsbGluZy90cmFuc2FjdGlvbnMS7wIKGFRvdGFsRGViaXRlZFRyYW5zYWN0aW9ucxI6LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuVG90YWxEZWJpdGVkVHJhbnNhY3Rpb25zUmVxdWVzdBo7LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuVG90YWxEZWJpdGVkVHJhbnNhY3Rpb25zUmVzcG9uc2Ui2QGSQX8KC1RyYW5zYWN0aW9uEjdTdW0gb2YgYW1vdW50IG9mIGRlYml0ZWQgdHJhbnNhY3Rpb25zIGluY2x1ZGluZyByZWZ1bmRzGjdTdW0gb2YgYW1vdW50IG9mIGRlYml0ZWQgdHJhbnNhY3Rpb25zIGluY2x1ZGluZyByZWZ1bmRzgtPkkwJREk8vdjFiZXRhMS9vcmdhbml6YXRpb25zL3tvcmdfaWR9L2JpbGxpbmcve2JpbGxpbmdfaWR9L2RlYml0ZWRfdHJhbnNhY3Rpb25zX3RvdGFsEq8CCgxMaXN0SW52b2ljZXMSLi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RJbnZvaWNlc1JlcXVlc3QaLy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RJbnZvaWNlc1Jlc3BvbnNlIr0BkkFBCgdJbnZvaWNlEg1MaXN0IGludm9pY2VzGidMaXN0IGFsbCBpbnZvaWNlcyBvZiBhIGJpbGxpbmcgYWNjb3VudC6C0+STAnMSPS92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vYmlsbGluZy97YmlsbGluZ19pZH0vaW52b2ljZXNaMhIwL3YxYmV0YTEvb3JnYW5pemF0aW9ucy97b3JnX2lkfS9iaWxsaW5nL2ludm9pY2VzEuICChJHZXRVcGNvbWluZ0ludm9pY2USNC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkdldFVwY29taW5nSW52b2ljZVJlcXVlc3QaNS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkdldFVwY29taW5nSW52b2ljZVJlc3BvbnNlIt4BkkFPCgdJbnZvaWNlEhRHZXQgdXBjb21pbmcgaW52b2ljZRouR2V0IHRoZSB1cGNvbWluZyBpbnZvaWNlIG9mIGEgYmlsbGluZyBhY2NvdW50LoLT5JMChQESRi92MWJldGExL29yZ2FuaXphdGlvbnMve29yZ19pZH0vYmlsbGluZy97YmlsbGluZ19pZH0vaW52b2ljZXMvdXBjb21pbmdaOxI5L3YxYmV0YTEvb3JnYW5pemF0aW9ucy97b3JnX2lkfS9iaWxsaW5nL2ludm9pY2VzL3VwY29taW5nEpwCChZCaWxsaW5nV2ViaG9va0NhbGxiYWNrEjgucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5CaWxsaW5nV2ViaG9va0NhbGxiYWNrUmVxdWVzdBo5LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQmlsbGluZ1dlYmhvb2tDYWxsYmFja1Jlc3BvbnNlIowBkkFOCgdXZWJob29rEhZBY2NlcHQgQmlsbGluZyB3ZWJob29rGitBY2NlcHRzIGEgQmlsbGluZyB3ZWJob29rIGFuZCBwcm9jZXNzZXMgaXQugtPkkwI1Ii0vdjFiZXRhMS9iaWxsaW5nL3dlYmhvb2tzL2NhbGxiYWNrL3twcm92aWRlcn06BGJvZHkSkQIKFENyZWF0ZVByb3NwZWN0UHVibGljEjYucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVQcm9zcGVjdFB1YmxpY1JlcXVlc3QaNy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNyZWF0ZVByb3NwZWN0UHVibGljUmVzcG9uc2UihwGSQWcKCFByb3NwZWN0Eg9DcmVhdGUgcHJvc3BlY3QaSkNyZWF0ZSBwcm9zcGVjdCBmb3IgZ2l2ZW4gZW1haWwgYW5kIGFjdGl2aXR5LiBBdmFpbGFibGUgZm9yIHB1YmxpYyBhY2Nlc3MugtPkkwIXIhIvdjFiZXRhMS9wcm9zcGVjdHM6ASoSgAEKEUNyZWF0ZUF1ZGl0UmVjb3JkEjMucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVBdWRpdFJlY29yZFJlcXVlc3QaNC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNyZWF0ZUF1ZGl0UmVjb3JkUmVzcG9uc2UiAELyDQojaW8ucmF5c3RhY2sucHJvdG9uLmZyb250aWVyLnYxYmV0YTFCCEZyb250aWVyWjtnaXRodWIuY29tL3JheXN0YWNrL3Byb3Rvbi9mcm9udGllci92MWJldGExO2Zyb250aWVydjFiZXRhMZJBgg0SHgoVRnJvbnRpZXIgR2VuZXJhbCBBUElzMgUwLjIuMBoOMTI3LjAuMC4xOjc0MDAqAQEyEGFwcGxpY2F0aW9uL2pzb246EGFwcGxpY2F0aW9uL2pzb25SPAoDMjAwEjUKG09LIC0gQSBzdWNjZXNzZnVsIHJlc3BvbnNlLhIWChQaEi5nb29nbGUucnBjLlN0YXR1c1JpCgM0MDASYgpIQmFkIFJlcXVlc3QgLSBUaGUgcmVxdWVzdCB3YXMgbWFsZm9ybWVkIG9yIGNvbnRhaW5lZCBpbnZhbGlkIHBhcmFtZXRlcnMuEhYKFBoSLmdvb2dsZS5ycGMuU3RhdHVzUkoKAzQwMRJDCilVbmF1dGhvcml6ZWQgLSBBdXRoZW50aWNhdGlvbiBpcyByZXF1aXJlZBIWChQaEi5nb29nbGUucnBjLlN0YXR1c1JhCgM0MDMSWgpARm9yYmlkZGVuIC0gVXNlciBkb2VzIG5vdCBoYXZlIHBlcm1pc3Npb24gdG8gYWNjZXNzIHRoZSByZXNvdXJjZRIWChQaEi5nb29nbGUucnBjLlN0YXR1c1JRCgM0MDQSSgowTm90IEZvdW5kIC0gVGhlIHJlcXVlc3RlZCByZXNvdXJjZSB3YXMgbm90IGZvdW5kEhYKFBoSLmdvb2dsZS5ycGMuU3RhdHVzUnUKAzUwMBJuClRJbnRlcm5hbCBTZXJ2ZXIgRXJyb3IuIFJldHVybmVkIHdoZW4gdGhlcmVzIGlzIHNvbWV0aGluZyB3cm9uZyB3aXRoIEZyb250aWVyIHNlcnZlci4SFgoUGhIuZ29vZ2xlLnJwYy5TdGF0dXNatgEKRAoFQmFzaWMSOwgBEh9DbGllbnQgSUQvU2VjcmV0IGF1dGhlbnRpY2F0aW9uGhRCYXNpYyBBdXRoZW50aWNhdGlvbiACCm4KBkJlYXJlchJkCAIST1RoZSBBdXRob3JpemF0aW9uIGhlYWRlciBtdXN0IGJlIHNldCB0byBCZWFyZXIgZm9sbG93ZWQgYnkgYSBzcGFjZSBhbmQgYSB0b2tlbi4aDUF1dGhvcml6YXRpb24gAmITCgcKBUJhc2ljCggKBkJlYXJlcmoGCgRVc2VyaoIDCgVHcm91cBL4Akdyb3VwcyBpbiBGcm9udGllciBhcmUgdXNlZCB0byBtYW5hZ2UgdXNlcnMgYW5kIHRoZWlyIGFjY2VzcyB0byByZXNvdXJjZXMuIEVhY2ggZ3JvdXAgaGFzIGEgdW5pcXVlIG5hbWUgYW5kIGlkIHRoYXQgY2FuIGJlIHVzZWQgdG8gZ3JhbnQgYWNjZXNzIHRvIHJlc291cmNlcy4gV2hlbiBhIHVzZXIgaXMgYWRkZWQgdG8gYSBncm91cCwgdGhleSBpbmhlcml0IHRoZSBhY2Nlc3MgcGVybWlzc2lvbnMgdGhhdCBoYXZlIGJlZW4gZ3JhbnRlZCB0byB0aGUgZ3JvdXAuIFRoaXMgYWxsb3dzIHlvdSB0byBtYW5hZ2UgYWNjZXNzIHRvIHJlc291cmNlcyBhdCBzY2FsZSwgd2l0aG91dCBoYXZpbmcgdG8gZ3JhbnQgcGVybWlzc2lvbnMgdG8gaW5kaXZpZHVhbCB1c2Vycy5qBgoEUm9sZWoOCgxPcmdhbml6YXRpb25qCQoHUHJvamVjdGoICgZQb2xpY3lqCgoIUmVsYXRpb25qDAoKUGVybWlzc2lvbmoLCglOYW1lc3BhY2VqCgoIUmVzb3VyY2VqGwoFQXV0aHoSEkF1dGhvcml6YXRpb24gQVBJc2ocCgVBdXRobhITQXV0aGVudGljYXRpb24gQVBJc2qQAgoKTWV0YVNjaGVtYRKBAk1hbmFnZSBNZXRhZGF0YSBTY2hlbWFzIHdoaWNoIGFyZSB1c2VkIHRvIHZhbGlkYXRlIG1ldGFkYXRhIG9iamVjdCB3aGlsZSBjcmVhdGluZyB1c2VyL29yZy9ncm91cC9yb2xlLiBGcm9udGllciBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlcyBkZWZhdWx0IG1ldGFzY2hlbWFzIHdpdGggYGxhYmVsYCBhbmQgYGRlc2NyaXB0aW9uYCBmaWVsZHMuIFlvdSBjYW4gYWxzbyB1cGRhdGUgdGhlc2UgbWV0YXNjaGVtYXMgdG8gYWRkL2VkaXQgbW9yZSBmaWVsZHMuYgZwcm90bzM", [file_google_api_annotations, file_google_api_field_behavior, file_google_protobuf_struct, file_google_protobuf_timestamp, file_protoc_gen_openapiv2_options_annotations, file_raystack_frontier_v1beta1_models, file_validate_validate]);
|
|
22
22
|
|
|
23
23
|
/**
|
|
24
24
|
* @generated from message raystack.frontier.v1beta1.BillingAccountRequestBody
|
|
@@ -535,17 +535,18 @@ export type CreateBillingUsageRequest = Message<"raystack.frontier.v1beta1.Creat
|
|
|
535
535
|
orgId: string;
|
|
536
536
|
|
|
537
537
|
/**
|
|
538
|
-
*
|
|
538
|
+
* DEPRECATED: billing_id will be inferred from org_id
|
|
539
539
|
*
|
|
540
|
-
* @generated from field: string billing_id = 2;
|
|
540
|
+
* @generated from field: string billing_id = 2 [deprecated = true];
|
|
541
|
+
* @deprecated
|
|
541
542
|
*/
|
|
542
543
|
billingId: string;
|
|
543
544
|
|
|
544
545
|
/**
|
|
545
|
-
*
|
|
546
|
-
* billing ID from either org_id or project_id, not both
|
|
546
|
+
* DEPRECATED
|
|
547
547
|
*
|
|
548
|
-
* @generated from field: string project_id = 4;
|
|
548
|
+
* @generated from field: string project_id = 4 [deprecated = true];
|
|
549
|
+
* @deprecated
|
|
549
550
|
*/
|
|
550
551
|
projectId: string;
|
|
551
552
|
|
|
@@ -587,9 +588,10 @@ export type ListBillingTransactionsRequest = Message<"raystack.frontier.v1beta1.
|
|
|
587
588
|
orgId: string;
|
|
588
589
|
|
|
589
590
|
/**
|
|
590
|
-
*
|
|
591
|
+
* DEPRECATED: billing_id will be inferred from org_id
|
|
591
592
|
*
|
|
592
|
-
* @generated from field: string billing_id = 2;
|
|
593
|
+
* @generated from field: string billing_id = 2 [deprecated = true];
|
|
594
|
+
* @deprecated
|
|
593
595
|
*/
|
|
594
596
|
billingId: string;
|
|
595
597
|
|
|
@@ -651,9 +653,10 @@ export type TotalDebitedTransactionsRequest = Message<"raystack.frontier.v1beta1
|
|
|
651
653
|
orgId: string;
|
|
652
654
|
|
|
653
655
|
/**
|
|
654
|
-
*
|
|
656
|
+
* DEPRECATED: billing_id will be inferred from org_id
|
|
655
657
|
*
|
|
656
|
-
* @generated from field: string billing_id = 2;
|
|
658
|
+
* @generated from field: string billing_id = 2 [deprecated = true];
|
|
659
|
+
* @deprecated
|
|
657
660
|
*/
|
|
658
661
|
billingId: string;
|
|
659
662
|
};
|
|
@@ -689,14 +692,19 @@ export const TotalDebitedTransactionsResponseSchema: GenMessage<TotalDebitedTran
|
|
|
689
692
|
*/
|
|
690
693
|
export type GetSubscriptionRequest = Message<"raystack.frontier.v1beta1.GetSubscriptionRequest"> & {
|
|
691
694
|
/**
|
|
692
|
-
*
|
|
695
|
+
* DEPRECATED: org_id will be inferred from subscription id
|
|
696
|
+
*
|
|
697
|
+
* @generated from field: string org_id = 1 [deprecated = true];
|
|
698
|
+
* @deprecated
|
|
693
699
|
*/
|
|
694
700
|
orgId: string;
|
|
695
701
|
|
|
696
702
|
/**
|
|
703
|
+
* DEPRECATED: billing_id will be inferred from subscription id
|
|
697
704
|
* ID of the billing account to get the subscription for
|
|
698
705
|
*
|
|
699
|
-
* @generated from field: string billing_id = 2;
|
|
706
|
+
* @generated from field: string billing_id = 2 [deprecated = true];
|
|
707
|
+
* @deprecated
|
|
700
708
|
*/
|
|
701
709
|
billingId: string;
|
|
702
710
|
|
|
@@ -747,9 +755,11 @@ export type ListSubscriptionsRequest = Message<"raystack.frontier.v1beta1.ListSu
|
|
|
747
755
|
orgId: string;
|
|
748
756
|
|
|
749
757
|
/**
|
|
758
|
+
* DEPRECATED: billing_id will be inferred from org_id
|
|
750
759
|
* ID of the billing account to list subscriptions for
|
|
751
760
|
*
|
|
752
|
-
* @generated from field: string billing_id = 2;
|
|
761
|
+
* @generated from field: string billing_id = 2 [deprecated = true];
|
|
762
|
+
* @deprecated
|
|
753
763
|
*/
|
|
754
764
|
billingId: string;
|
|
755
765
|
|
|
@@ -802,14 +812,19 @@ export const ListSubscriptionsResponseSchema: GenMessage<ListSubscriptionsRespon
|
|
|
802
812
|
*/
|
|
803
813
|
export type UpdateSubscriptionRequest = Message<"raystack.frontier.v1beta1.UpdateSubscriptionRequest"> & {
|
|
804
814
|
/**
|
|
805
|
-
*
|
|
815
|
+
* DEPRECATED: org_id will be inferred from subscription id
|
|
816
|
+
*
|
|
817
|
+
* @generated from field: string org_id = 1 [deprecated = true];
|
|
818
|
+
* @deprecated
|
|
806
819
|
*/
|
|
807
820
|
orgId: string;
|
|
808
821
|
|
|
809
822
|
/**
|
|
823
|
+
* DEPRECATED: billing_id will be inferred from subscription id
|
|
810
824
|
* ID of the billing account to update the subscription for
|
|
811
825
|
*
|
|
812
|
-
* @generated from field: string billing_id = 2;
|
|
826
|
+
* @generated from field: string billing_id = 2 [deprecated = true];
|
|
827
|
+
* @deprecated
|
|
813
828
|
*/
|
|
814
829
|
billingId: string;
|
|
815
830
|
|
|
@@ -857,14 +872,19 @@ export const UpdateSubscriptionResponseSchema: GenMessage<UpdateSubscriptionResp
|
|
|
857
872
|
*/
|
|
858
873
|
export type ChangeSubscriptionRequest = Message<"raystack.frontier.v1beta1.ChangeSubscriptionRequest"> & {
|
|
859
874
|
/**
|
|
860
|
-
*
|
|
875
|
+
* DEPRECATED: org_id will be inferred from subscription id
|
|
876
|
+
*
|
|
877
|
+
* @generated from field: string org_id = 1 [deprecated = true];
|
|
878
|
+
* @deprecated
|
|
861
879
|
*/
|
|
862
880
|
orgId: string;
|
|
863
881
|
|
|
864
882
|
/**
|
|
883
|
+
* DEPRECATED: billing_id will be inferred from subscription id
|
|
865
884
|
* ID of the billing account to update the subscription for
|
|
866
885
|
*
|
|
867
|
-
* @generated from field: string billing_id = 2;
|
|
886
|
+
* @generated from field: string billing_id = 2 [deprecated = true];
|
|
887
|
+
* @deprecated
|
|
868
888
|
*/
|
|
869
889
|
billingId: string;
|
|
870
890
|
|
|
@@ -985,14 +1005,19 @@ export const ChangeSubscriptionResponseSchema: GenMessage<ChangeSubscriptionResp
|
|
|
985
1005
|
*/
|
|
986
1006
|
export type CancelSubscriptionRequest = Message<"raystack.frontier.v1beta1.CancelSubscriptionRequest"> & {
|
|
987
1007
|
/**
|
|
988
|
-
*
|
|
1008
|
+
* DEPRECATED: org_id will be inferred from subscription id
|
|
1009
|
+
*
|
|
1010
|
+
* @generated from field: string org_id = 1 [deprecated = true];
|
|
1011
|
+
* @deprecated
|
|
989
1012
|
*/
|
|
990
1013
|
orgId: string;
|
|
991
1014
|
|
|
992
1015
|
/**
|
|
1016
|
+
* DEPRECATED: billing_id will be inferred from subscription id
|
|
993
1017
|
* ID of the billing account to update the subscription for
|
|
994
1018
|
*
|
|
995
|
-
* @generated from field: string billing_id = 2;
|
|
1019
|
+
* @generated from field: string billing_id = 2 [deprecated = true];
|
|
1020
|
+
* @deprecated
|
|
996
1021
|
*/
|
|
997
1022
|
billingId: string;
|
|
998
1023
|
|
|
@@ -1071,17 +1096,18 @@ export type CheckFeatureEntitlementRequest = Message<"raystack.frontier.v1beta1.
|
|
|
1071
1096
|
orgId: string;
|
|
1072
1097
|
|
|
1073
1098
|
/**
|
|
1074
|
-
*
|
|
1099
|
+
* DEPRECATED: billing_id will be inferred from org_id
|
|
1075
1100
|
*
|
|
1076
|
-
* @generated from field: string billing_id = 2;
|
|
1101
|
+
* @generated from field: string billing_id = 2 [deprecated = true];
|
|
1102
|
+
* @deprecated
|
|
1077
1103
|
*/
|
|
1078
1104
|
billingId: string;
|
|
1079
1105
|
|
|
1080
1106
|
/**
|
|
1081
|
-
*
|
|
1082
|
-
* billing ID from either org_id or project_id, not both
|
|
1107
|
+
* DEPRECATED
|
|
1083
1108
|
*
|
|
1084
|
-
* @generated from field: string project_id = 4;
|
|
1109
|
+
* @generated from field: string project_id = 4 [deprecated = true];
|
|
1110
|
+
* @deprecated
|
|
1085
1111
|
*/
|
|
1086
1112
|
projectId: string;
|
|
1087
1113
|
|
|
@@ -1166,9 +1192,11 @@ export type CreateCheckoutRequest = Message<"raystack.frontier.v1beta1.CreateChe
|
|
|
1166
1192
|
orgId: string;
|
|
1167
1193
|
|
|
1168
1194
|
/**
|
|
1195
|
+
* DEPRECATED: billing_id will be inferred from org_id
|
|
1169
1196
|
* ID of the billing account to update the subscription for
|
|
1170
1197
|
*
|
|
1171
|
-
* @generated from field: string billing_id = 2;
|
|
1198
|
+
* @generated from field: string billing_id = 2 [deprecated = true];
|
|
1199
|
+
* @deprecated
|
|
1172
1200
|
*/
|
|
1173
1201
|
billingId: string;
|
|
1174
1202
|
|
|
@@ -1240,9 +1268,11 @@ export type ListCheckoutsRequest = Message<"raystack.frontier.v1beta1.ListChecko
|
|
|
1240
1268
|
orgId: string;
|
|
1241
1269
|
|
|
1242
1270
|
/**
|
|
1271
|
+
* DEPRECATED: billing_id will be inferred from org_id
|
|
1243
1272
|
* ID of the billing account to get the subscriptions for
|
|
1244
1273
|
*
|
|
1245
|
-
* @generated from field: string billing_id = 2;
|
|
1274
|
+
* @generated from field: string billing_id = 2 [deprecated = true];
|
|
1275
|
+
* @deprecated
|
|
1246
1276
|
*/
|
|
1247
1277
|
billingId: string;
|
|
1248
1278
|
};
|
|
@@ -1278,14 +1308,18 @@ export const ListCheckoutsResponseSchema: GenMessage<ListCheckoutsResponse> = /*
|
|
|
1278
1308
|
*/
|
|
1279
1309
|
export type GetCheckoutRequest = Message<"raystack.frontier.v1beta1.GetCheckoutRequest"> & {
|
|
1280
1310
|
/**
|
|
1281
|
-
*
|
|
1311
|
+
* DEPRECATED: org_id is not needed, checkout can be fetched by id alone
|
|
1312
|
+
*
|
|
1313
|
+
* @generated from field: string org_id = 1 [deprecated = true];
|
|
1314
|
+
* @deprecated
|
|
1282
1315
|
*/
|
|
1283
1316
|
orgId: string;
|
|
1284
1317
|
|
|
1285
1318
|
/**
|
|
1286
|
-
*
|
|
1319
|
+
* DEPRECATED: billing_id is not needed, checkout can be fetched by id alone
|
|
1287
1320
|
*
|
|
1288
|
-
* @generated from field: string billing_id = 2;
|
|
1321
|
+
* @generated from field: string billing_id = 2 [deprecated = true];
|
|
1322
|
+
* @deprecated
|
|
1289
1323
|
*/
|
|
1290
1324
|
billingId: string;
|
|
1291
1325
|
|
|
@@ -1905,9 +1939,10 @@ export type ListInvoicesRequest = Message<"raystack.frontier.v1beta1.ListInvoice
|
|
|
1905
1939
|
orgId: string;
|
|
1906
1940
|
|
|
1907
1941
|
/**
|
|
1908
|
-
*
|
|
1942
|
+
* DEPRECATED: billing_id will be inferred from org_id
|
|
1909
1943
|
*
|
|
1910
|
-
* @generated from field: string billing_id = 2;
|
|
1944
|
+
* @generated from field: string billing_id = 2 [deprecated = true];
|
|
1945
|
+
* @deprecated
|
|
1911
1946
|
*/
|
|
1912
1947
|
billingId: string;
|
|
1913
1948
|
|
|
@@ -1958,9 +1993,10 @@ export type GetUpcomingInvoiceRequest = Message<"raystack.frontier.v1beta1.GetUp
|
|
|
1958
1993
|
orgId: string;
|
|
1959
1994
|
|
|
1960
1995
|
/**
|
|
1961
|
-
*
|
|
1996
|
+
* DEPRECATED: billing_id will be inferred from org_id
|
|
1962
1997
|
*
|
|
1963
|
-
* @generated from field: string billing_id = 2;
|
|
1998
|
+
* @generated from field: string billing_id = 2 [deprecated = true];
|
|
1999
|
+
* @deprecated
|
|
1964
2000
|
*/
|
|
1965
2001
|
billingId: string;
|
|
1966
2002
|
};
|
|
@@ -3212,50 +3248,6 @@ export type GetServiceUserResponse = Message<"raystack.frontier.v1beta1.GetServi
|
|
|
3212
3248
|
export const GetServiceUserResponseSchema: GenMessage<GetServiceUserResponse> = /*@__PURE__*/
|
|
3213
3249
|
messageDesc(file_raystack_frontier_v1beta1_frontier, 132);
|
|
3214
3250
|
|
|
3215
|
-
/**
|
|
3216
|
-
* @generated from message raystack.frontier.v1beta1.UpdateServiceUserRequest
|
|
3217
|
-
*/
|
|
3218
|
-
export type UpdateServiceUserRequest = Message<"raystack.frontier.v1beta1.UpdateServiceUserRequest"> & {
|
|
3219
|
-
/**
|
|
3220
|
-
* @generated from field: string id = 1;
|
|
3221
|
-
*/
|
|
3222
|
-
id: string;
|
|
3223
|
-
|
|
3224
|
-
/**
|
|
3225
|
-
* @generated from field: raystack.frontier.v1beta1.ServiceUserRequestBody body = 2;
|
|
3226
|
-
*/
|
|
3227
|
-
body?: ServiceUserRequestBody;
|
|
3228
|
-
|
|
3229
|
-
/**
|
|
3230
|
-
* @generated from field: string org_id = 3;
|
|
3231
|
-
*/
|
|
3232
|
-
orgId: string;
|
|
3233
|
-
};
|
|
3234
|
-
|
|
3235
|
-
/**
|
|
3236
|
-
* Describes the message raystack.frontier.v1beta1.UpdateServiceUserRequest.
|
|
3237
|
-
* Use `create(UpdateServiceUserRequestSchema)` to create a new message.
|
|
3238
|
-
*/
|
|
3239
|
-
export const UpdateServiceUserRequestSchema: GenMessage<UpdateServiceUserRequest> = /*@__PURE__*/
|
|
3240
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier, 133);
|
|
3241
|
-
|
|
3242
|
-
/**
|
|
3243
|
-
* @generated from message raystack.frontier.v1beta1.UpdateServiceUserResponse
|
|
3244
|
-
*/
|
|
3245
|
-
export type UpdateServiceUserResponse = Message<"raystack.frontier.v1beta1.UpdateServiceUserResponse"> & {
|
|
3246
|
-
/**
|
|
3247
|
-
* @generated from field: raystack.frontier.v1beta1.ServiceUser serviceuser = 1;
|
|
3248
|
-
*/
|
|
3249
|
-
serviceuser?: ServiceUser;
|
|
3250
|
-
};
|
|
3251
|
-
|
|
3252
|
-
/**
|
|
3253
|
-
* Describes the message raystack.frontier.v1beta1.UpdateServiceUserResponse.
|
|
3254
|
-
* Use `create(UpdateServiceUserResponseSchema)` to create a new message.
|
|
3255
|
-
*/
|
|
3256
|
-
export const UpdateServiceUserResponseSchema: GenMessage<UpdateServiceUserResponse> = /*@__PURE__*/
|
|
3257
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier, 134);
|
|
3258
|
-
|
|
3259
3251
|
/**
|
|
3260
3252
|
* @generated from message raystack.frontier.v1beta1.DeleteServiceUserRequest
|
|
3261
3253
|
*/
|
|
@@ -3276,7 +3268,7 @@ export type DeleteServiceUserRequest = Message<"raystack.frontier.v1beta1.Delete
|
|
|
3276
3268
|
* Use `create(DeleteServiceUserRequestSchema)` to create a new message.
|
|
3277
3269
|
*/
|
|
3278
3270
|
export const DeleteServiceUserRequestSchema: GenMessage<DeleteServiceUserRequest> = /*@__PURE__*/
|
|
3279
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
3271
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 133);
|
|
3280
3272
|
|
|
3281
3273
|
/**
|
|
3282
3274
|
* @generated from message raystack.frontier.v1beta1.DeleteServiceUserResponse
|
|
@@ -3289,7 +3281,7 @@ export type DeleteServiceUserResponse = Message<"raystack.frontier.v1beta1.Delet
|
|
|
3289
3281
|
* Use `create(DeleteServiceUserResponseSchema)` to create a new message.
|
|
3290
3282
|
*/
|
|
3291
3283
|
export const DeleteServiceUserResponseSchema: GenMessage<DeleteServiceUserResponse> = /*@__PURE__*/
|
|
3292
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
3284
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 134);
|
|
3293
3285
|
|
|
3294
3286
|
/**
|
|
3295
3287
|
* @generated from message raystack.frontier.v1beta1.CreateServiceUserJWKRequest
|
|
@@ -3316,7 +3308,7 @@ export type CreateServiceUserJWKRequest = Message<"raystack.frontier.v1beta1.Cre
|
|
|
3316
3308
|
* Use `create(CreateServiceUserJWKRequestSchema)` to create a new message.
|
|
3317
3309
|
*/
|
|
3318
3310
|
export const CreateServiceUserJWKRequestSchema: GenMessage<CreateServiceUserJWKRequest> = /*@__PURE__*/
|
|
3319
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
3311
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 135);
|
|
3320
3312
|
|
|
3321
3313
|
/**
|
|
3322
3314
|
* @generated from message raystack.frontier.v1beta1.CreateServiceUserJWKResponse
|
|
@@ -3333,7 +3325,7 @@ export type CreateServiceUserJWKResponse = Message<"raystack.frontier.v1beta1.Cr
|
|
|
3333
3325
|
* Use `create(CreateServiceUserJWKResponseSchema)` to create a new message.
|
|
3334
3326
|
*/
|
|
3335
3327
|
export const CreateServiceUserJWKResponseSchema: GenMessage<CreateServiceUserJWKResponse> = /*@__PURE__*/
|
|
3336
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
3328
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 136);
|
|
3337
3329
|
|
|
3338
3330
|
/**
|
|
3339
3331
|
* @generated from message raystack.frontier.v1beta1.GetServiceUserJWKRequest
|
|
@@ -3360,7 +3352,7 @@ export type GetServiceUserJWKRequest = Message<"raystack.frontier.v1beta1.GetSer
|
|
|
3360
3352
|
* Use `create(GetServiceUserJWKRequestSchema)` to create a new message.
|
|
3361
3353
|
*/
|
|
3362
3354
|
export const GetServiceUserJWKRequestSchema: GenMessage<GetServiceUserJWKRequest> = /*@__PURE__*/
|
|
3363
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
3355
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 137);
|
|
3364
3356
|
|
|
3365
3357
|
/**
|
|
3366
3358
|
* @generated from message raystack.frontier.v1beta1.GetServiceUserJWKResponse
|
|
@@ -3377,7 +3369,7 @@ export type GetServiceUserJWKResponse = Message<"raystack.frontier.v1beta1.GetSe
|
|
|
3377
3369
|
* Use `create(GetServiceUserJWKResponseSchema)` to create a new message.
|
|
3378
3370
|
*/
|
|
3379
3371
|
export const GetServiceUserJWKResponseSchema: GenMessage<GetServiceUserJWKResponse> = /*@__PURE__*/
|
|
3380
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
3372
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 138);
|
|
3381
3373
|
|
|
3382
3374
|
/**
|
|
3383
3375
|
* @generated from message raystack.frontier.v1beta1.ListServiceUserJWKsRequest
|
|
@@ -3399,7 +3391,7 @@ export type ListServiceUserJWKsRequest = Message<"raystack.frontier.v1beta1.List
|
|
|
3399
3391
|
* Use `create(ListServiceUserJWKsRequestSchema)` to create a new message.
|
|
3400
3392
|
*/
|
|
3401
3393
|
export const ListServiceUserJWKsRequestSchema: GenMessage<ListServiceUserJWKsRequest> = /*@__PURE__*/
|
|
3402
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
3394
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 139);
|
|
3403
3395
|
|
|
3404
3396
|
/**
|
|
3405
3397
|
* @generated from message raystack.frontier.v1beta1.ListServiceUserJWKsResponse
|
|
@@ -3416,7 +3408,7 @@ export type ListServiceUserJWKsResponse = Message<"raystack.frontier.v1beta1.Lis
|
|
|
3416
3408
|
* Use `create(ListServiceUserJWKsResponseSchema)` to create a new message.
|
|
3417
3409
|
*/
|
|
3418
3410
|
export const ListServiceUserJWKsResponseSchema: GenMessage<ListServiceUserJWKsResponse> = /*@__PURE__*/
|
|
3419
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
3411
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 140);
|
|
3420
3412
|
|
|
3421
3413
|
/**
|
|
3422
3414
|
* @generated from message raystack.frontier.v1beta1.DeleteServiceUserJWKRequest
|
|
@@ -3443,7 +3435,7 @@ export type DeleteServiceUserJWKRequest = Message<"raystack.frontier.v1beta1.Del
|
|
|
3443
3435
|
* Use `create(DeleteServiceUserJWKRequestSchema)` to create a new message.
|
|
3444
3436
|
*/
|
|
3445
3437
|
export const DeleteServiceUserJWKRequestSchema: GenMessage<DeleteServiceUserJWKRequest> = /*@__PURE__*/
|
|
3446
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
3438
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 141);
|
|
3447
3439
|
|
|
3448
3440
|
/**
|
|
3449
3441
|
* @generated from message raystack.frontier.v1beta1.DeleteServiceUserJWKResponse
|
|
@@ -3456,7 +3448,7 @@ export type DeleteServiceUserJWKResponse = Message<"raystack.frontier.v1beta1.De
|
|
|
3456
3448
|
* Use `create(DeleteServiceUserJWKResponseSchema)` to create a new message.
|
|
3457
3449
|
*/
|
|
3458
3450
|
export const DeleteServiceUserJWKResponseSchema: GenMessage<DeleteServiceUserJWKResponse> = /*@__PURE__*/
|
|
3459
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
3451
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 142);
|
|
3460
3452
|
|
|
3461
3453
|
/**
|
|
3462
3454
|
* @generated from message raystack.frontier.v1beta1.CreateServiceUserCredentialRequest
|
|
@@ -3483,7 +3475,7 @@ export type CreateServiceUserCredentialRequest = Message<"raystack.frontier.v1be
|
|
|
3483
3475
|
* Use `create(CreateServiceUserCredentialRequestSchema)` to create a new message.
|
|
3484
3476
|
*/
|
|
3485
3477
|
export const CreateServiceUserCredentialRequestSchema: GenMessage<CreateServiceUserCredentialRequest> = /*@__PURE__*/
|
|
3486
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
3478
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 143);
|
|
3487
3479
|
|
|
3488
3480
|
/**
|
|
3489
3481
|
* @generated from message raystack.frontier.v1beta1.CreateServiceUserCredentialResponse
|
|
@@ -3500,7 +3492,7 @@ export type CreateServiceUserCredentialResponse = Message<"raystack.frontier.v1b
|
|
|
3500
3492
|
* Use `create(CreateServiceUserCredentialResponseSchema)` to create a new message.
|
|
3501
3493
|
*/
|
|
3502
3494
|
export const CreateServiceUserCredentialResponseSchema: GenMessage<CreateServiceUserCredentialResponse> = /*@__PURE__*/
|
|
3503
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
3495
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 144);
|
|
3504
3496
|
|
|
3505
3497
|
/**
|
|
3506
3498
|
* @generated from message raystack.frontier.v1beta1.ListServiceUserCredentialsRequest
|
|
@@ -3522,7 +3514,7 @@ export type ListServiceUserCredentialsRequest = Message<"raystack.frontier.v1bet
|
|
|
3522
3514
|
* Use `create(ListServiceUserCredentialsRequestSchema)` to create a new message.
|
|
3523
3515
|
*/
|
|
3524
3516
|
export const ListServiceUserCredentialsRequestSchema: GenMessage<ListServiceUserCredentialsRequest> = /*@__PURE__*/
|
|
3525
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
3517
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 145);
|
|
3526
3518
|
|
|
3527
3519
|
/**
|
|
3528
3520
|
* @generated from message raystack.frontier.v1beta1.ListServiceUserCredentialsResponse
|
|
@@ -3541,7 +3533,7 @@ export type ListServiceUserCredentialsResponse = Message<"raystack.frontier.v1be
|
|
|
3541
3533
|
* Use `create(ListServiceUserCredentialsResponseSchema)` to create a new message.
|
|
3542
3534
|
*/
|
|
3543
3535
|
export const ListServiceUserCredentialsResponseSchema: GenMessage<ListServiceUserCredentialsResponse> = /*@__PURE__*/
|
|
3544
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
3536
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 146);
|
|
3545
3537
|
|
|
3546
3538
|
/**
|
|
3547
3539
|
* @generated from message raystack.frontier.v1beta1.DeleteServiceUserCredentialRequest
|
|
@@ -3568,7 +3560,7 @@ export type DeleteServiceUserCredentialRequest = Message<"raystack.frontier.v1be
|
|
|
3568
3560
|
* Use `create(DeleteServiceUserCredentialRequestSchema)` to create a new message.
|
|
3569
3561
|
*/
|
|
3570
3562
|
export const DeleteServiceUserCredentialRequestSchema: GenMessage<DeleteServiceUserCredentialRequest> = /*@__PURE__*/
|
|
3571
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
3563
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 147);
|
|
3572
3564
|
|
|
3573
3565
|
/**
|
|
3574
3566
|
* @generated from message raystack.frontier.v1beta1.DeleteServiceUserCredentialResponse
|
|
@@ -3581,7 +3573,7 @@ export type DeleteServiceUserCredentialResponse = Message<"raystack.frontier.v1b
|
|
|
3581
3573
|
* Use `create(DeleteServiceUserCredentialResponseSchema)` to create a new message.
|
|
3582
3574
|
*/
|
|
3583
3575
|
export const DeleteServiceUserCredentialResponseSchema: GenMessage<DeleteServiceUserCredentialResponse> = /*@__PURE__*/
|
|
3584
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
3576
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 148);
|
|
3585
3577
|
|
|
3586
3578
|
/**
|
|
3587
3579
|
* @generated from message raystack.frontier.v1beta1.CreateServiceUserTokenRequest
|
|
@@ -3608,7 +3600,7 @@ export type CreateServiceUserTokenRequest = Message<"raystack.frontier.v1beta1.C
|
|
|
3608
3600
|
* Use `create(CreateServiceUserTokenRequestSchema)` to create a new message.
|
|
3609
3601
|
*/
|
|
3610
3602
|
export const CreateServiceUserTokenRequestSchema: GenMessage<CreateServiceUserTokenRequest> = /*@__PURE__*/
|
|
3611
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
3603
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 149);
|
|
3612
3604
|
|
|
3613
3605
|
/**
|
|
3614
3606
|
* @generated from message raystack.frontier.v1beta1.CreateServiceUserTokenResponse
|
|
@@ -3625,7 +3617,7 @@ export type CreateServiceUserTokenResponse = Message<"raystack.frontier.v1beta1.
|
|
|
3625
3617
|
* Use `create(CreateServiceUserTokenResponseSchema)` to create a new message.
|
|
3626
3618
|
*/
|
|
3627
3619
|
export const CreateServiceUserTokenResponseSchema: GenMessage<CreateServiceUserTokenResponse> = /*@__PURE__*/
|
|
3628
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
3620
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 150);
|
|
3629
3621
|
|
|
3630
3622
|
/**
|
|
3631
3623
|
* @generated from message raystack.frontier.v1beta1.ListServiceUserTokensRequest
|
|
@@ -3647,7 +3639,7 @@ export type ListServiceUserTokensRequest = Message<"raystack.frontier.v1beta1.Li
|
|
|
3647
3639
|
* Use `create(ListServiceUserTokensRequestSchema)` to create a new message.
|
|
3648
3640
|
*/
|
|
3649
3641
|
export const ListServiceUserTokensRequestSchema: GenMessage<ListServiceUserTokensRequest> = /*@__PURE__*/
|
|
3650
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
3642
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 151);
|
|
3651
3643
|
|
|
3652
3644
|
/**
|
|
3653
3645
|
* @generated from message raystack.frontier.v1beta1.ListServiceUserTokensResponse
|
|
@@ -3664,7 +3656,7 @@ export type ListServiceUserTokensResponse = Message<"raystack.frontier.v1beta1.L
|
|
|
3664
3656
|
* Use `create(ListServiceUserTokensResponseSchema)` to create a new message.
|
|
3665
3657
|
*/
|
|
3666
3658
|
export const ListServiceUserTokensResponseSchema: GenMessage<ListServiceUserTokensResponse> = /*@__PURE__*/
|
|
3667
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
3659
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 152);
|
|
3668
3660
|
|
|
3669
3661
|
/**
|
|
3670
3662
|
* @generated from message raystack.frontier.v1beta1.DeleteServiceUserTokenRequest
|
|
@@ -3691,7 +3683,7 @@ export type DeleteServiceUserTokenRequest = Message<"raystack.frontier.v1beta1.D
|
|
|
3691
3683
|
* Use `create(DeleteServiceUserTokenRequestSchema)` to create a new message.
|
|
3692
3684
|
*/
|
|
3693
3685
|
export const DeleteServiceUserTokenRequestSchema: GenMessage<DeleteServiceUserTokenRequest> = /*@__PURE__*/
|
|
3694
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
3686
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 153);
|
|
3695
3687
|
|
|
3696
3688
|
/**
|
|
3697
3689
|
* @generated from message raystack.frontier.v1beta1.DeleteServiceUserTokenResponse
|
|
@@ -3704,7 +3696,7 @@ export type DeleteServiceUserTokenResponse = Message<"raystack.frontier.v1beta1.
|
|
|
3704
3696
|
* Use `create(DeleteServiceUserTokenResponseSchema)` to create a new message.
|
|
3705
3697
|
*/
|
|
3706
3698
|
export const DeleteServiceUserTokenResponseSchema: GenMessage<DeleteServiceUserTokenResponse> = /*@__PURE__*/
|
|
3707
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
3699
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 154);
|
|
3708
3700
|
|
|
3709
3701
|
/**
|
|
3710
3702
|
* @generated from message raystack.frontier.v1beta1.ListServiceUserProjectsRequest
|
|
@@ -3735,7 +3727,7 @@ export type ListServiceUserProjectsRequest = Message<"raystack.frontier.v1beta1.
|
|
|
3735
3727
|
* Use `create(ListServiceUserProjectsRequestSchema)` to create a new message.
|
|
3736
3728
|
*/
|
|
3737
3729
|
export const ListServiceUserProjectsRequestSchema: GenMessage<ListServiceUserProjectsRequest> = /*@__PURE__*/
|
|
3738
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
3730
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 155);
|
|
3739
3731
|
|
|
3740
3732
|
/**
|
|
3741
3733
|
* @generated from message raystack.frontier.v1beta1.ListServiceUserProjectsResponse
|
|
@@ -3757,7 +3749,7 @@ export type ListServiceUserProjectsResponse = Message<"raystack.frontier.v1beta1
|
|
|
3757
3749
|
* Use `create(ListServiceUserProjectsResponseSchema)` to create a new message.
|
|
3758
3750
|
*/
|
|
3759
3751
|
export const ListServiceUserProjectsResponseSchema: GenMessage<ListServiceUserProjectsResponse> = /*@__PURE__*/
|
|
3760
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
3752
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 156);
|
|
3761
3753
|
|
|
3762
3754
|
/**
|
|
3763
3755
|
* @generated from message raystack.frontier.v1beta1.ListServiceUserProjectsResponse.AccessPair
|
|
@@ -3779,7 +3771,7 @@ export type ListServiceUserProjectsResponse_AccessPair = Message<"raystack.front
|
|
|
3779
3771
|
* Use `create(ListServiceUserProjectsResponse_AccessPairSchema)` to create a new message.
|
|
3780
3772
|
*/
|
|
3781
3773
|
export const ListServiceUserProjectsResponse_AccessPairSchema: GenMessage<ListServiceUserProjectsResponse_AccessPair> = /*@__PURE__*/
|
|
3782
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
3774
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 156, 0);
|
|
3783
3775
|
|
|
3784
3776
|
/**
|
|
3785
3777
|
* @generated from message raystack.frontier.v1beta1.ListOrganizationGroupsRequest
|
|
@@ -3816,7 +3808,7 @@ export type ListOrganizationGroupsRequest = Message<"raystack.frontier.v1beta1.L
|
|
|
3816
3808
|
* Use `create(ListOrganizationGroupsRequestSchema)` to create a new message.
|
|
3817
3809
|
*/
|
|
3818
3810
|
export const ListOrganizationGroupsRequestSchema: GenMessage<ListOrganizationGroupsRequest> = /*@__PURE__*/
|
|
3819
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
3811
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 157);
|
|
3820
3812
|
|
|
3821
3813
|
/**
|
|
3822
3814
|
* @generated from message raystack.frontier.v1beta1.ListOrganizationGroupsResponse
|
|
@@ -3833,7 +3825,7 @@ export type ListOrganizationGroupsResponse = Message<"raystack.frontier.v1beta1.
|
|
|
3833
3825
|
* Use `create(ListOrganizationGroupsResponseSchema)` to create a new message.
|
|
3834
3826
|
*/
|
|
3835
3827
|
export const ListOrganizationGroupsResponseSchema: GenMessage<ListOrganizationGroupsResponse> = /*@__PURE__*/
|
|
3836
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
3828
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 158);
|
|
3837
3829
|
|
|
3838
3830
|
/**
|
|
3839
3831
|
* @generated from message raystack.frontier.v1beta1.CreateOrganizationRoleRequest
|
|
@@ -3855,7 +3847,7 @@ export type CreateOrganizationRoleRequest = Message<"raystack.frontier.v1beta1.C
|
|
|
3855
3847
|
* Use `create(CreateOrganizationRoleRequestSchema)` to create a new message.
|
|
3856
3848
|
*/
|
|
3857
3849
|
export const CreateOrganizationRoleRequestSchema: GenMessage<CreateOrganizationRoleRequest> = /*@__PURE__*/
|
|
3858
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
3850
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 159);
|
|
3859
3851
|
|
|
3860
3852
|
/**
|
|
3861
3853
|
* @generated from message raystack.frontier.v1beta1.CreateOrganizationRoleResponse
|
|
@@ -3872,7 +3864,7 @@ export type CreateOrganizationRoleResponse = Message<"raystack.frontier.v1beta1.
|
|
|
3872
3864
|
* Use `create(CreateOrganizationRoleResponseSchema)` to create a new message.
|
|
3873
3865
|
*/
|
|
3874
3866
|
export const CreateOrganizationRoleResponseSchema: GenMessage<CreateOrganizationRoleResponse> = /*@__PURE__*/
|
|
3875
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
3867
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 160);
|
|
3876
3868
|
|
|
3877
3869
|
/**
|
|
3878
3870
|
* @generated from message raystack.frontier.v1beta1.GetOrganizationRoleRequest
|
|
@@ -3894,7 +3886,7 @@ export type GetOrganizationRoleRequest = Message<"raystack.frontier.v1beta1.GetO
|
|
|
3894
3886
|
* Use `create(GetOrganizationRoleRequestSchema)` to create a new message.
|
|
3895
3887
|
*/
|
|
3896
3888
|
export const GetOrganizationRoleRequestSchema: GenMessage<GetOrganizationRoleRequest> = /*@__PURE__*/
|
|
3897
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
3889
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 161);
|
|
3898
3890
|
|
|
3899
3891
|
/**
|
|
3900
3892
|
* @generated from message raystack.frontier.v1beta1.GetOrganizationRoleResponse
|
|
@@ -3911,7 +3903,7 @@ export type GetOrganizationRoleResponse = Message<"raystack.frontier.v1beta1.Get
|
|
|
3911
3903
|
* Use `create(GetOrganizationRoleResponseSchema)` to create a new message.
|
|
3912
3904
|
*/
|
|
3913
3905
|
export const GetOrganizationRoleResponseSchema: GenMessage<GetOrganizationRoleResponse> = /*@__PURE__*/
|
|
3914
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
3906
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 162);
|
|
3915
3907
|
|
|
3916
3908
|
/**
|
|
3917
3909
|
* @generated from message raystack.frontier.v1beta1.UpdateOrganizationRoleRequest
|
|
@@ -3938,7 +3930,7 @@ export type UpdateOrganizationRoleRequest = Message<"raystack.frontier.v1beta1.U
|
|
|
3938
3930
|
* Use `create(UpdateOrganizationRoleRequestSchema)` to create a new message.
|
|
3939
3931
|
*/
|
|
3940
3932
|
export const UpdateOrganizationRoleRequestSchema: GenMessage<UpdateOrganizationRoleRequest> = /*@__PURE__*/
|
|
3941
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
3933
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 163);
|
|
3942
3934
|
|
|
3943
3935
|
/**
|
|
3944
3936
|
* @generated from message raystack.frontier.v1beta1.UpdateOrganizationRoleResponse
|
|
@@ -3955,7 +3947,7 @@ export type UpdateOrganizationRoleResponse = Message<"raystack.frontier.v1beta1.
|
|
|
3955
3947
|
* Use `create(UpdateOrganizationRoleResponseSchema)` to create a new message.
|
|
3956
3948
|
*/
|
|
3957
3949
|
export const UpdateOrganizationRoleResponseSchema: GenMessage<UpdateOrganizationRoleResponse> = /*@__PURE__*/
|
|
3958
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
3950
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 164);
|
|
3959
3951
|
|
|
3960
3952
|
/**
|
|
3961
3953
|
* @generated from message raystack.frontier.v1beta1.ListRolesRequest
|
|
@@ -3977,7 +3969,7 @@ export type ListRolesRequest = Message<"raystack.frontier.v1beta1.ListRolesReque
|
|
|
3977
3969
|
* Use `create(ListRolesRequestSchema)` to create a new message.
|
|
3978
3970
|
*/
|
|
3979
3971
|
export const ListRolesRequestSchema: GenMessage<ListRolesRequest> = /*@__PURE__*/
|
|
3980
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
3972
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 165);
|
|
3981
3973
|
|
|
3982
3974
|
/**
|
|
3983
3975
|
* @generated from message raystack.frontier.v1beta1.ListRolesResponse
|
|
@@ -3994,7 +3986,7 @@ export type ListRolesResponse = Message<"raystack.frontier.v1beta1.ListRolesResp
|
|
|
3994
3986
|
* Use `create(ListRolesResponseSchema)` to create a new message.
|
|
3995
3987
|
*/
|
|
3996
3988
|
export const ListRolesResponseSchema: GenMessage<ListRolesResponse> = /*@__PURE__*/
|
|
3997
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
3989
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 166);
|
|
3998
3990
|
|
|
3999
3991
|
/**
|
|
4000
3992
|
* @generated from message raystack.frontier.v1beta1.ListOrganizationRolesRequest
|
|
@@ -4021,7 +4013,7 @@ export type ListOrganizationRolesRequest = Message<"raystack.frontier.v1beta1.Li
|
|
|
4021
4013
|
* Use `create(ListOrganizationRolesRequestSchema)` to create a new message.
|
|
4022
4014
|
*/
|
|
4023
4015
|
export const ListOrganizationRolesRequestSchema: GenMessage<ListOrganizationRolesRequest> = /*@__PURE__*/
|
|
4024
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4016
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 167);
|
|
4025
4017
|
|
|
4026
4018
|
/**
|
|
4027
4019
|
* @generated from message raystack.frontier.v1beta1.ListOrganizationRolesResponse
|
|
@@ -4038,7 +4030,7 @@ export type ListOrganizationRolesResponse = Message<"raystack.frontier.v1beta1.L
|
|
|
4038
4030
|
* Use `create(ListOrganizationRolesResponseSchema)` to create a new message.
|
|
4039
4031
|
*/
|
|
4040
4032
|
export const ListOrganizationRolesResponseSchema: GenMessage<ListOrganizationRolesResponse> = /*@__PURE__*/
|
|
4041
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4033
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 168);
|
|
4042
4034
|
|
|
4043
4035
|
/**
|
|
4044
4036
|
* @generated from message raystack.frontier.v1beta1.DeleteOrganizationRoleRequest
|
|
@@ -4060,7 +4052,7 @@ export type DeleteOrganizationRoleRequest = Message<"raystack.frontier.v1beta1.D
|
|
|
4060
4052
|
* Use `create(DeleteOrganizationRoleRequestSchema)` to create a new message.
|
|
4061
4053
|
*/
|
|
4062
4054
|
export const DeleteOrganizationRoleRequestSchema: GenMessage<DeleteOrganizationRoleRequest> = /*@__PURE__*/
|
|
4063
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4055
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 169);
|
|
4064
4056
|
|
|
4065
4057
|
/**
|
|
4066
4058
|
* @generated from message raystack.frontier.v1beta1.DeleteOrganizationRoleResponse
|
|
@@ -4073,7 +4065,7 @@ export type DeleteOrganizationRoleResponse = Message<"raystack.frontier.v1beta1.
|
|
|
4073
4065
|
* Use `create(DeleteOrganizationRoleResponseSchema)` to create a new message.
|
|
4074
4066
|
*/
|
|
4075
4067
|
export const DeleteOrganizationRoleResponseSchema: GenMessage<DeleteOrganizationRoleResponse> = /*@__PURE__*/
|
|
4076
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4068
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 170);
|
|
4077
4069
|
|
|
4078
4070
|
/**
|
|
4079
4071
|
* @generated from message raystack.frontier.v1beta1.OrganizationRequestBody
|
|
@@ -4105,7 +4097,7 @@ export type OrganizationRequestBody = Message<"raystack.frontier.v1beta1.Organiz
|
|
|
4105
4097
|
* Use `create(OrganizationRequestBodySchema)` to create a new message.
|
|
4106
4098
|
*/
|
|
4107
4099
|
export const OrganizationRequestBodySchema: GenMessage<OrganizationRequestBody> = /*@__PURE__*/
|
|
4108
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4100
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 171);
|
|
4109
4101
|
|
|
4110
4102
|
/**
|
|
4111
4103
|
* @generated from message raystack.frontier.v1beta1.ListOrganizationsRequest
|
|
@@ -4137,7 +4129,7 @@ export type ListOrganizationsRequest = Message<"raystack.frontier.v1beta1.ListOr
|
|
|
4137
4129
|
* Use `create(ListOrganizationsRequestSchema)` to create a new message.
|
|
4138
4130
|
*/
|
|
4139
4131
|
export const ListOrganizationsRequestSchema: GenMessage<ListOrganizationsRequest> = /*@__PURE__*/
|
|
4140
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4132
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 172);
|
|
4141
4133
|
|
|
4142
4134
|
/**
|
|
4143
4135
|
* @generated from message raystack.frontier.v1beta1.ListOrganizationsResponse
|
|
@@ -4154,7 +4146,7 @@ export type ListOrganizationsResponse = Message<"raystack.frontier.v1beta1.ListO
|
|
|
4154
4146
|
* Use `create(ListOrganizationsResponseSchema)` to create a new message.
|
|
4155
4147
|
*/
|
|
4156
4148
|
export const ListOrganizationsResponseSchema: GenMessage<ListOrganizationsResponse> = /*@__PURE__*/
|
|
4157
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4149
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 173);
|
|
4158
4150
|
|
|
4159
4151
|
/**
|
|
4160
4152
|
* @generated from message raystack.frontier.v1beta1.CreateOrganizationRequest
|
|
@@ -4171,7 +4163,7 @@ export type CreateOrganizationRequest = Message<"raystack.frontier.v1beta1.Creat
|
|
|
4171
4163
|
* Use `create(CreateOrganizationRequestSchema)` to create a new message.
|
|
4172
4164
|
*/
|
|
4173
4165
|
export const CreateOrganizationRequestSchema: GenMessage<CreateOrganizationRequest> = /*@__PURE__*/
|
|
4174
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4166
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 174);
|
|
4175
4167
|
|
|
4176
4168
|
/**
|
|
4177
4169
|
* @generated from message raystack.frontier.v1beta1.CreateOrganizationResponse
|
|
@@ -4188,7 +4180,7 @@ export type CreateOrganizationResponse = Message<"raystack.frontier.v1beta1.Crea
|
|
|
4188
4180
|
* Use `create(CreateOrganizationResponseSchema)` to create a new message.
|
|
4189
4181
|
*/
|
|
4190
4182
|
export const CreateOrganizationResponseSchema: GenMessage<CreateOrganizationResponse> = /*@__PURE__*/
|
|
4191
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4183
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 175);
|
|
4192
4184
|
|
|
4193
4185
|
/**
|
|
4194
4186
|
* @generated from message raystack.frontier.v1beta1.GetOrganizationResponse
|
|
@@ -4205,7 +4197,7 @@ export type GetOrganizationResponse = Message<"raystack.frontier.v1beta1.GetOrga
|
|
|
4205
4197
|
* Use `create(GetOrganizationResponseSchema)` to create a new message.
|
|
4206
4198
|
*/
|
|
4207
4199
|
export const GetOrganizationResponseSchema: GenMessage<GetOrganizationResponse> = /*@__PURE__*/
|
|
4208
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4200
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 176);
|
|
4209
4201
|
|
|
4210
4202
|
/**
|
|
4211
4203
|
* @generated from message raystack.frontier.v1beta1.UpdateOrganizationResponse
|
|
@@ -4222,7 +4214,7 @@ export type UpdateOrganizationResponse = Message<"raystack.frontier.v1beta1.Upda
|
|
|
4222
4214
|
* Use `create(UpdateOrganizationResponseSchema)` to create a new message.
|
|
4223
4215
|
*/
|
|
4224
4216
|
export const UpdateOrganizationResponseSchema: GenMessage<UpdateOrganizationResponse> = /*@__PURE__*/
|
|
4225
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4217
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 177);
|
|
4226
4218
|
|
|
4227
4219
|
/**
|
|
4228
4220
|
* @generated from message raystack.frontier.v1beta1.GetOrganizationRequest
|
|
@@ -4239,7 +4231,7 @@ export type GetOrganizationRequest = Message<"raystack.frontier.v1beta1.GetOrgan
|
|
|
4239
4231
|
* Use `create(GetOrganizationRequestSchema)` to create a new message.
|
|
4240
4232
|
*/
|
|
4241
4233
|
export const GetOrganizationRequestSchema: GenMessage<GetOrganizationRequest> = /*@__PURE__*/
|
|
4242
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4234
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 178);
|
|
4243
4235
|
|
|
4244
4236
|
/**
|
|
4245
4237
|
* @generated from message raystack.frontier.v1beta1.UpdateOrganizationRequest
|
|
@@ -4261,7 +4253,7 @@ export type UpdateOrganizationRequest = Message<"raystack.frontier.v1beta1.Updat
|
|
|
4261
4253
|
* Use `create(UpdateOrganizationRequestSchema)` to create a new message.
|
|
4262
4254
|
*/
|
|
4263
4255
|
export const UpdateOrganizationRequestSchema: GenMessage<UpdateOrganizationRequest> = /*@__PURE__*/
|
|
4264
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4256
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 179);
|
|
4265
4257
|
|
|
4266
4258
|
/**
|
|
4267
4259
|
* @generated from message raystack.frontier.v1beta1.ListOrganizationAdminsRequest
|
|
@@ -4278,7 +4270,7 @@ export type ListOrganizationAdminsRequest = Message<"raystack.frontier.v1beta1.L
|
|
|
4278
4270
|
* Use `create(ListOrganizationAdminsRequestSchema)` to create a new message.
|
|
4279
4271
|
*/
|
|
4280
4272
|
export const ListOrganizationAdminsRequestSchema: GenMessage<ListOrganizationAdminsRequest> = /*@__PURE__*/
|
|
4281
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4273
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 180);
|
|
4282
4274
|
|
|
4283
4275
|
/**
|
|
4284
4276
|
* @generated from message raystack.frontier.v1beta1.ListOrganizationAdminsResponse
|
|
@@ -4295,7 +4287,7 @@ export type ListOrganizationAdminsResponse = Message<"raystack.frontier.v1beta1.
|
|
|
4295
4287
|
* Use `create(ListOrganizationAdminsResponseSchema)` to create a new message.
|
|
4296
4288
|
*/
|
|
4297
4289
|
export const ListOrganizationAdminsResponseSchema: GenMessage<ListOrganizationAdminsResponse> = /*@__PURE__*/
|
|
4298
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4290
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 181);
|
|
4299
4291
|
|
|
4300
4292
|
/**
|
|
4301
4293
|
* @generated from message raystack.frontier.v1beta1.ListOrganizationUsersRequest
|
|
@@ -4328,7 +4320,7 @@ export type ListOrganizationUsersRequest = Message<"raystack.frontier.v1beta1.Li
|
|
|
4328
4320
|
* Use `create(ListOrganizationUsersRequestSchema)` to create a new message.
|
|
4329
4321
|
*/
|
|
4330
4322
|
export const ListOrganizationUsersRequestSchema: GenMessage<ListOrganizationUsersRequest> = /*@__PURE__*/
|
|
4331
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4323
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 182);
|
|
4332
4324
|
|
|
4333
4325
|
/**
|
|
4334
4326
|
* @generated from message raystack.frontier.v1beta1.ListOrganizationUsersResponse
|
|
@@ -4350,7 +4342,7 @@ export type ListOrganizationUsersResponse = Message<"raystack.frontier.v1beta1.L
|
|
|
4350
4342
|
* Use `create(ListOrganizationUsersResponseSchema)` to create a new message.
|
|
4351
4343
|
*/
|
|
4352
4344
|
export const ListOrganizationUsersResponseSchema: GenMessage<ListOrganizationUsersResponse> = /*@__PURE__*/
|
|
4353
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4345
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 183);
|
|
4354
4346
|
|
|
4355
4347
|
/**
|
|
4356
4348
|
* @generated from message raystack.frontier.v1beta1.ListOrganizationUsersResponse.RolePair
|
|
@@ -4372,7 +4364,7 @@ export type ListOrganizationUsersResponse_RolePair = Message<"raystack.frontier.
|
|
|
4372
4364
|
* Use `create(ListOrganizationUsersResponse_RolePairSchema)` to create a new message.
|
|
4373
4365
|
*/
|
|
4374
4366
|
export const ListOrganizationUsersResponse_RolePairSchema: GenMessage<ListOrganizationUsersResponse_RolePair> = /*@__PURE__*/
|
|
4375
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4367
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 183, 0);
|
|
4376
4368
|
|
|
4377
4369
|
/**
|
|
4378
4370
|
* @generated from message raystack.frontier.v1beta1.AddOrganizationUsersRequest
|
|
@@ -4394,7 +4386,7 @@ export type AddOrganizationUsersRequest = Message<"raystack.frontier.v1beta1.Add
|
|
|
4394
4386
|
* Use `create(AddOrganizationUsersRequestSchema)` to create a new message.
|
|
4395
4387
|
*/
|
|
4396
4388
|
export const AddOrganizationUsersRequestSchema: GenMessage<AddOrganizationUsersRequest> = /*@__PURE__*/
|
|
4397
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4389
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 184);
|
|
4398
4390
|
|
|
4399
4391
|
/**
|
|
4400
4392
|
* @generated from message raystack.frontier.v1beta1.AddOrganizationUsersResponse
|
|
@@ -4407,7 +4399,7 @@ export type AddOrganizationUsersResponse = Message<"raystack.frontier.v1beta1.Ad
|
|
|
4407
4399
|
* Use `create(AddOrganizationUsersResponseSchema)` to create a new message.
|
|
4408
4400
|
*/
|
|
4409
4401
|
export const AddOrganizationUsersResponseSchema: GenMessage<AddOrganizationUsersResponse> = /*@__PURE__*/
|
|
4410
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4402
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 185);
|
|
4411
4403
|
|
|
4412
4404
|
/**
|
|
4413
4405
|
* @generated from message raystack.frontier.v1beta1.RemoveOrganizationUserRequest
|
|
@@ -4429,7 +4421,7 @@ export type RemoveOrganizationUserRequest = Message<"raystack.frontier.v1beta1.R
|
|
|
4429
4421
|
* Use `create(RemoveOrganizationUserRequestSchema)` to create a new message.
|
|
4430
4422
|
*/
|
|
4431
4423
|
export const RemoveOrganizationUserRequestSchema: GenMessage<RemoveOrganizationUserRequest> = /*@__PURE__*/
|
|
4432
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4424
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 186);
|
|
4433
4425
|
|
|
4434
4426
|
/**
|
|
4435
4427
|
* @generated from message raystack.frontier.v1beta1.RemoveOrganizationUserResponse
|
|
@@ -4442,7 +4434,7 @@ export type RemoveOrganizationUserResponse = Message<"raystack.frontier.v1beta1.
|
|
|
4442
4434
|
* Use `create(RemoveOrganizationUserResponseSchema)` to create a new message.
|
|
4443
4435
|
*/
|
|
4444
4436
|
export const RemoveOrganizationUserResponseSchema: GenMessage<RemoveOrganizationUserResponse> = /*@__PURE__*/
|
|
4445
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4437
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 187);
|
|
4446
4438
|
|
|
4447
4439
|
/**
|
|
4448
4440
|
* @generated from message raystack.frontier.v1beta1.ListOrganizationServiceUsersRequest
|
|
@@ -4459,7 +4451,7 @@ export type ListOrganizationServiceUsersRequest = Message<"raystack.frontier.v1b
|
|
|
4459
4451
|
* Use `create(ListOrganizationServiceUsersRequestSchema)` to create a new message.
|
|
4460
4452
|
*/
|
|
4461
4453
|
export const ListOrganizationServiceUsersRequestSchema: GenMessage<ListOrganizationServiceUsersRequest> = /*@__PURE__*/
|
|
4462
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4454
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 188);
|
|
4463
4455
|
|
|
4464
4456
|
/**
|
|
4465
4457
|
* @generated from message raystack.frontier.v1beta1.ListOrganizationServiceUsersResponse
|
|
@@ -4476,7 +4468,7 @@ export type ListOrganizationServiceUsersResponse = Message<"raystack.frontier.v1
|
|
|
4476
4468
|
* Use `create(ListOrganizationServiceUsersResponseSchema)` to create a new message.
|
|
4477
4469
|
*/
|
|
4478
4470
|
export const ListOrganizationServiceUsersResponseSchema: GenMessage<ListOrganizationServiceUsersResponse> = /*@__PURE__*/
|
|
4479
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4471
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 189);
|
|
4480
4472
|
|
|
4481
4473
|
/**
|
|
4482
4474
|
* @generated from message raystack.frontier.v1beta1.ListOrganizationInvitationsRequest
|
|
@@ -4498,7 +4490,7 @@ export type ListOrganizationInvitationsRequest = Message<"raystack.frontier.v1be
|
|
|
4498
4490
|
* Use `create(ListOrganizationInvitationsRequestSchema)` to create a new message.
|
|
4499
4491
|
*/
|
|
4500
4492
|
export const ListOrganizationInvitationsRequestSchema: GenMessage<ListOrganizationInvitationsRequest> = /*@__PURE__*/
|
|
4501
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4493
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 190);
|
|
4502
4494
|
|
|
4503
4495
|
/**
|
|
4504
4496
|
* @generated from message raystack.frontier.v1beta1.ListOrganizationInvitationsResponse
|
|
@@ -4515,7 +4507,7 @@ export type ListOrganizationInvitationsResponse = Message<"raystack.frontier.v1b
|
|
|
4515
4507
|
* Use `create(ListOrganizationInvitationsResponseSchema)` to create a new message.
|
|
4516
4508
|
*/
|
|
4517
4509
|
export const ListOrganizationInvitationsResponseSchema: GenMessage<ListOrganizationInvitationsResponse> = /*@__PURE__*/
|
|
4518
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4510
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 191);
|
|
4519
4511
|
|
|
4520
4512
|
/**
|
|
4521
4513
|
* @generated from message raystack.frontier.v1beta1.CreateOrganizationInvitationRequest
|
|
@@ -4547,7 +4539,7 @@ export type CreateOrganizationInvitationRequest = Message<"raystack.frontier.v1b
|
|
|
4547
4539
|
* Use `create(CreateOrganizationInvitationRequestSchema)` to create a new message.
|
|
4548
4540
|
*/
|
|
4549
4541
|
export const CreateOrganizationInvitationRequestSchema: GenMessage<CreateOrganizationInvitationRequest> = /*@__PURE__*/
|
|
4550
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4542
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 192);
|
|
4551
4543
|
|
|
4552
4544
|
/**
|
|
4553
4545
|
* @generated from message raystack.frontier.v1beta1.CreateOrganizationInvitationResponse
|
|
@@ -4564,7 +4556,7 @@ export type CreateOrganizationInvitationResponse = Message<"raystack.frontier.v1
|
|
|
4564
4556
|
* Use `create(CreateOrganizationInvitationResponseSchema)` to create a new message.
|
|
4565
4557
|
*/
|
|
4566
4558
|
export const CreateOrganizationInvitationResponseSchema: GenMessage<CreateOrganizationInvitationResponse> = /*@__PURE__*/
|
|
4567
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4559
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 193);
|
|
4568
4560
|
|
|
4569
4561
|
/**
|
|
4570
4562
|
* @generated from message raystack.frontier.v1beta1.GetOrganizationInvitationRequest
|
|
@@ -4586,7 +4578,7 @@ export type GetOrganizationInvitationRequest = Message<"raystack.frontier.v1beta
|
|
|
4586
4578
|
* Use `create(GetOrganizationInvitationRequestSchema)` to create a new message.
|
|
4587
4579
|
*/
|
|
4588
4580
|
export const GetOrganizationInvitationRequestSchema: GenMessage<GetOrganizationInvitationRequest> = /*@__PURE__*/
|
|
4589
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4581
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 194);
|
|
4590
4582
|
|
|
4591
4583
|
/**
|
|
4592
4584
|
* @generated from message raystack.frontier.v1beta1.GetOrganizationInvitationResponse
|
|
@@ -4603,7 +4595,7 @@ export type GetOrganizationInvitationResponse = Message<"raystack.frontier.v1bet
|
|
|
4603
4595
|
* Use `create(GetOrganizationInvitationResponseSchema)` to create a new message.
|
|
4604
4596
|
*/
|
|
4605
4597
|
export const GetOrganizationInvitationResponseSchema: GenMessage<GetOrganizationInvitationResponse> = /*@__PURE__*/
|
|
4606
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4598
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 195);
|
|
4607
4599
|
|
|
4608
4600
|
/**
|
|
4609
4601
|
* @generated from message raystack.frontier.v1beta1.AcceptOrganizationInvitationRequest
|
|
@@ -4625,7 +4617,7 @@ export type AcceptOrganizationInvitationRequest = Message<"raystack.frontier.v1b
|
|
|
4625
4617
|
* Use `create(AcceptOrganizationInvitationRequestSchema)` to create a new message.
|
|
4626
4618
|
*/
|
|
4627
4619
|
export const AcceptOrganizationInvitationRequestSchema: GenMessage<AcceptOrganizationInvitationRequest> = /*@__PURE__*/
|
|
4628
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4620
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 196);
|
|
4629
4621
|
|
|
4630
4622
|
/**
|
|
4631
4623
|
* @generated from message raystack.frontier.v1beta1.AcceptOrganizationInvitationResponse
|
|
@@ -4638,7 +4630,7 @@ export type AcceptOrganizationInvitationResponse = Message<"raystack.frontier.v1
|
|
|
4638
4630
|
* Use `create(AcceptOrganizationInvitationResponseSchema)` to create a new message.
|
|
4639
4631
|
*/
|
|
4640
4632
|
export const AcceptOrganizationInvitationResponseSchema: GenMessage<AcceptOrganizationInvitationResponse> = /*@__PURE__*/
|
|
4641
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4633
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 197);
|
|
4642
4634
|
|
|
4643
4635
|
/**
|
|
4644
4636
|
* @generated from message raystack.frontier.v1beta1.DeleteOrganizationInvitationRequest
|
|
@@ -4660,7 +4652,7 @@ export type DeleteOrganizationInvitationRequest = Message<"raystack.frontier.v1b
|
|
|
4660
4652
|
* Use `create(DeleteOrganizationInvitationRequestSchema)` to create a new message.
|
|
4661
4653
|
*/
|
|
4662
4654
|
export const DeleteOrganizationInvitationRequestSchema: GenMessage<DeleteOrganizationInvitationRequest> = /*@__PURE__*/
|
|
4663
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4655
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 198);
|
|
4664
4656
|
|
|
4665
4657
|
/**
|
|
4666
4658
|
* @generated from message raystack.frontier.v1beta1.ListOrganizationDomainsRequest
|
|
@@ -4682,7 +4674,7 @@ export type ListOrganizationDomainsRequest = Message<"raystack.frontier.v1beta1.
|
|
|
4682
4674
|
* Use `create(ListOrganizationDomainsRequestSchema)` to create a new message.
|
|
4683
4675
|
*/
|
|
4684
4676
|
export const ListOrganizationDomainsRequestSchema: GenMessage<ListOrganizationDomainsRequest> = /*@__PURE__*/
|
|
4685
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4677
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 199);
|
|
4686
4678
|
|
|
4687
4679
|
/**
|
|
4688
4680
|
* @generated from message raystack.frontier.v1beta1.ListOrganizationDomainsResponse
|
|
@@ -4699,7 +4691,7 @@ export type ListOrganizationDomainsResponse = Message<"raystack.frontier.v1beta1
|
|
|
4699
4691
|
* Use `create(ListOrganizationDomainsResponseSchema)` to create a new message.
|
|
4700
4692
|
*/
|
|
4701
4693
|
export const ListOrganizationDomainsResponseSchema: GenMessage<ListOrganizationDomainsResponse> = /*@__PURE__*/
|
|
4702
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4694
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 200);
|
|
4703
4695
|
|
|
4704
4696
|
/**
|
|
4705
4697
|
* @generated from message raystack.frontier.v1beta1.ListOrganizationsByDomainRequest
|
|
@@ -4716,7 +4708,7 @@ export type ListOrganizationsByDomainRequest = Message<"raystack.frontier.v1beta
|
|
|
4716
4708
|
* Use `create(ListOrganizationsByDomainRequestSchema)` to create a new message.
|
|
4717
4709
|
*/
|
|
4718
4710
|
export const ListOrganizationsByDomainRequestSchema: GenMessage<ListOrganizationsByDomainRequest> = /*@__PURE__*/
|
|
4719
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4711
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 201);
|
|
4720
4712
|
|
|
4721
4713
|
/**
|
|
4722
4714
|
* @generated from message raystack.frontier.v1beta1.ListOrganizationsByDomainResponse
|
|
@@ -4733,7 +4725,7 @@ export type ListOrganizationsByDomainResponse = Message<"raystack.frontier.v1bet
|
|
|
4733
4725
|
* Use `create(ListOrganizationsByDomainResponseSchema)` to create a new message.
|
|
4734
4726
|
*/
|
|
4735
4727
|
export const ListOrganizationsByDomainResponseSchema: GenMessage<ListOrganizationsByDomainResponse> = /*@__PURE__*/
|
|
4736
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4728
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 202);
|
|
4737
4729
|
|
|
4738
4730
|
/**
|
|
4739
4731
|
* @generated from message raystack.frontier.v1beta1.JoinOrganizationRequest
|
|
@@ -4750,7 +4742,7 @@ export type JoinOrganizationRequest = Message<"raystack.frontier.v1beta1.JoinOrg
|
|
|
4750
4742
|
* Use `create(JoinOrganizationRequestSchema)` to create a new message.
|
|
4751
4743
|
*/
|
|
4752
4744
|
export const JoinOrganizationRequestSchema: GenMessage<JoinOrganizationRequest> = /*@__PURE__*/
|
|
4753
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4745
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 203);
|
|
4754
4746
|
|
|
4755
4747
|
/**
|
|
4756
4748
|
* @generated from message raystack.frontier.v1beta1.JoinOrganizationResponse
|
|
@@ -4763,7 +4755,7 @@ export type JoinOrganizationResponse = Message<"raystack.frontier.v1beta1.JoinOr
|
|
|
4763
4755
|
* Use `create(JoinOrganizationResponseSchema)` to create a new message.
|
|
4764
4756
|
*/
|
|
4765
4757
|
export const JoinOrganizationResponseSchema: GenMessage<JoinOrganizationResponse> = /*@__PURE__*/
|
|
4766
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4758
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 204);
|
|
4767
4759
|
|
|
4768
4760
|
/**
|
|
4769
4761
|
* @generated from message raystack.frontier.v1beta1.GetOrganizationDomainRequest
|
|
@@ -4785,7 +4777,7 @@ export type GetOrganizationDomainRequest = Message<"raystack.frontier.v1beta1.Ge
|
|
|
4785
4777
|
* Use `create(GetOrganizationDomainRequestSchema)` to create a new message.
|
|
4786
4778
|
*/
|
|
4787
4779
|
export const GetOrganizationDomainRequestSchema: GenMessage<GetOrganizationDomainRequest> = /*@__PURE__*/
|
|
4788
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4780
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 205);
|
|
4789
4781
|
|
|
4790
4782
|
/**
|
|
4791
4783
|
* @generated from message raystack.frontier.v1beta1.GetOrganizationDomainResponse
|
|
@@ -4802,7 +4794,7 @@ export type GetOrganizationDomainResponse = Message<"raystack.frontier.v1beta1.G
|
|
|
4802
4794
|
* Use `create(GetOrganizationDomainResponseSchema)` to create a new message.
|
|
4803
4795
|
*/
|
|
4804
4796
|
export const GetOrganizationDomainResponseSchema: GenMessage<GetOrganizationDomainResponse> = /*@__PURE__*/
|
|
4805
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4797
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 206);
|
|
4806
4798
|
|
|
4807
4799
|
/**
|
|
4808
4800
|
* @generated from message raystack.frontier.v1beta1.CreateOrganizationDomainRequest
|
|
@@ -4824,7 +4816,7 @@ export type CreateOrganizationDomainRequest = Message<"raystack.frontier.v1beta1
|
|
|
4824
4816
|
* Use `create(CreateOrganizationDomainRequestSchema)` to create a new message.
|
|
4825
4817
|
*/
|
|
4826
4818
|
export const CreateOrganizationDomainRequestSchema: GenMessage<CreateOrganizationDomainRequest> = /*@__PURE__*/
|
|
4827
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4819
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 207);
|
|
4828
4820
|
|
|
4829
4821
|
/**
|
|
4830
4822
|
* @generated from message raystack.frontier.v1beta1.CreateOrganizationDomainResponse
|
|
@@ -4841,7 +4833,7 @@ export type CreateOrganizationDomainResponse = Message<"raystack.frontier.v1beta
|
|
|
4841
4833
|
* Use `create(CreateOrganizationDomainResponseSchema)` to create a new message.
|
|
4842
4834
|
*/
|
|
4843
4835
|
export const CreateOrganizationDomainResponseSchema: GenMessage<CreateOrganizationDomainResponse> = /*@__PURE__*/
|
|
4844
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4836
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 208);
|
|
4845
4837
|
|
|
4846
4838
|
/**
|
|
4847
4839
|
* @generated from message raystack.frontier.v1beta1.DeleteOrganizationDomainRequest
|
|
@@ -4863,7 +4855,7 @@ export type DeleteOrganizationDomainRequest = Message<"raystack.frontier.v1beta1
|
|
|
4863
4855
|
* Use `create(DeleteOrganizationDomainRequestSchema)` to create a new message.
|
|
4864
4856
|
*/
|
|
4865
4857
|
export const DeleteOrganizationDomainRequestSchema: GenMessage<DeleteOrganizationDomainRequest> = /*@__PURE__*/
|
|
4866
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4858
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 209);
|
|
4867
4859
|
|
|
4868
4860
|
/**
|
|
4869
4861
|
* @generated from message raystack.frontier.v1beta1.DeleteOrganizationDomainResponse
|
|
@@ -4876,7 +4868,7 @@ export type DeleteOrganizationDomainResponse = Message<"raystack.frontier.v1beta
|
|
|
4876
4868
|
* Use `create(DeleteOrganizationDomainResponseSchema)` to create a new message.
|
|
4877
4869
|
*/
|
|
4878
4870
|
export const DeleteOrganizationDomainResponseSchema: GenMessage<DeleteOrganizationDomainResponse> = /*@__PURE__*/
|
|
4879
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4871
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 210);
|
|
4880
4872
|
|
|
4881
4873
|
/**
|
|
4882
4874
|
* @generated from message raystack.frontier.v1beta1.VerifyOrganizationDomainRequest
|
|
@@ -4898,7 +4890,7 @@ export type VerifyOrganizationDomainRequest = Message<"raystack.frontier.v1beta1
|
|
|
4898
4890
|
* Use `create(VerifyOrganizationDomainRequestSchema)` to create a new message.
|
|
4899
4891
|
*/
|
|
4900
4892
|
export const VerifyOrganizationDomainRequestSchema: GenMessage<VerifyOrganizationDomainRequest> = /*@__PURE__*/
|
|
4901
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4893
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 211);
|
|
4902
4894
|
|
|
4903
4895
|
/**
|
|
4904
4896
|
* @generated from message raystack.frontier.v1beta1.VerifyOrganizationDomainResponse
|
|
@@ -4915,7 +4907,7 @@ export type VerifyOrganizationDomainResponse = Message<"raystack.frontier.v1beta
|
|
|
4915
4907
|
* Use `create(VerifyOrganizationDomainResponseSchema)` to create a new message.
|
|
4916
4908
|
*/
|
|
4917
4909
|
export const VerifyOrganizationDomainResponseSchema: GenMessage<VerifyOrganizationDomainResponse> = /*@__PURE__*/
|
|
4918
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4910
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 212);
|
|
4919
4911
|
|
|
4920
4912
|
/**
|
|
4921
4913
|
* @generated from message raystack.frontier.v1beta1.DeleteOrganizationInvitationResponse
|
|
@@ -4928,7 +4920,7 @@ export type DeleteOrganizationInvitationResponse = Message<"raystack.frontier.v1
|
|
|
4928
4920
|
* Use `create(DeleteOrganizationInvitationResponseSchema)` to create a new message.
|
|
4929
4921
|
*/
|
|
4930
4922
|
export const DeleteOrganizationInvitationResponseSchema: GenMessage<DeleteOrganizationInvitationResponse> = /*@__PURE__*/
|
|
4931
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4923
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 213);
|
|
4932
4924
|
|
|
4933
4925
|
/**
|
|
4934
4926
|
* @generated from message raystack.frontier.v1beta1.EnableOrganizationRequest
|
|
@@ -4945,7 +4937,7 @@ export type EnableOrganizationRequest = Message<"raystack.frontier.v1beta1.Enabl
|
|
|
4945
4937
|
* Use `create(EnableOrganizationRequestSchema)` to create a new message.
|
|
4946
4938
|
*/
|
|
4947
4939
|
export const EnableOrganizationRequestSchema: GenMessage<EnableOrganizationRequest> = /*@__PURE__*/
|
|
4948
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4940
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 214);
|
|
4949
4941
|
|
|
4950
4942
|
/**
|
|
4951
4943
|
* @generated from message raystack.frontier.v1beta1.EnableOrganizationResponse
|
|
@@ -4958,7 +4950,7 @@ export type EnableOrganizationResponse = Message<"raystack.frontier.v1beta1.Enab
|
|
|
4958
4950
|
* Use `create(EnableOrganizationResponseSchema)` to create a new message.
|
|
4959
4951
|
*/
|
|
4960
4952
|
export const EnableOrganizationResponseSchema: GenMessage<EnableOrganizationResponse> = /*@__PURE__*/
|
|
4961
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4953
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 215);
|
|
4962
4954
|
|
|
4963
4955
|
/**
|
|
4964
4956
|
* @generated from message raystack.frontier.v1beta1.DisableOrganizationRequest
|
|
@@ -4975,7 +4967,7 @@ export type DisableOrganizationRequest = Message<"raystack.frontier.v1beta1.Disa
|
|
|
4975
4967
|
* Use `create(DisableOrganizationRequestSchema)` to create a new message.
|
|
4976
4968
|
*/
|
|
4977
4969
|
export const DisableOrganizationRequestSchema: GenMessage<DisableOrganizationRequest> = /*@__PURE__*/
|
|
4978
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4970
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 216);
|
|
4979
4971
|
|
|
4980
4972
|
/**
|
|
4981
4973
|
* @generated from message raystack.frontier.v1beta1.DisableOrganizationResponse
|
|
@@ -4988,7 +4980,7 @@ export type DisableOrganizationResponse = Message<"raystack.frontier.v1beta1.Dis
|
|
|
4988
4980
|
* Use `create(DisableOrganizationResponseSchema)` to create a new message.
|
|
4989
4981
|
*/
|
|
4990
4982
|
export const DisableOrganizationResponseSchema: GenMessage<DisableOrganizationResponse> = /*@__PURE__*/
|
|
4991
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
4983
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 217);
|
|
4992
4984
|
|
|
4993
4985
|
/**
|
|
4994
4986
|
* @generated from message raystack.frontier.v1beta1.DeleteOrganizationRequest
|
|
@@ -5005,7 +4997,7 @@ export type DeleteOrganizationRequest = Message<"raystack.frontier.v1beta1.Delet
|
|
|
5005
4997
|
* Use `create(DeleteOrganizationRequestSchema)` to create a new message.
|
|
5006
4998
|
*/
|
|
5007
4999
|
export const DeleteOrganizationRequestSchema: GenMessage<DeleteOrganizationRequest> = /*@__PURE__*/
|
|
5008
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5000
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 218);
|
|
5009
5001
|
|
|
5010
5002
|
/**
|
|
5011
5003
|
* @generated from message raystack.frontier.v1beta1.DeleteOrganizationResponse
|
|
@@ -5018,7 +5010,7 @@ export type DeleteOrganizationResponse = Message<"raystack.frontier.v1beta1.Dele
|
|
|
5018
5010
|
* Use `create(DeleteOrganizationResponseSchema)` to create a new message.
|
|
5019
5011
|
*/
|
|
5020
5012
|
export const DeleteOrganizationResponseSchema: GenMessage<DeleteOrganizationResponse> = /*@__PURE__*/
|
|
5021
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5013
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 219);
|
|
5022
5014
|
|
|
5023
5015
|
/**
|
|
5024
5016
|
* @generated from message raystack.frontier.v1beta1.GetOrganizationKycRequest
|
|
@@ -5035,7 +5027,7 @@ export type GetOrganizationKycRequest = Message<"raystack.frontier.v1beta1.GetOr
|
|
|
5035
5027
|
* Use `create(GetOrganizationKycRequestSchema)` to create a new message.
|
|
5036
5028
|
*/
|
|
5037
5029
|
export const GetOrganizationKycRequestSchema: GenMessage<GetOrganizationKycRequest> = /*@__PURE__*/
|
|
5038
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5030
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 220);
|
|
5039
5031
|
|
|
5040
5032
|
/**
|
|
5041
5033
|
* @generated from message raystack.frontier.v1beta1.GetOrganizationKycResponse
|
|
@@ -5052,7 +5044,7 @@ export type GetOrganizationKycResponse = Message<"raystack.frontier.v1beta1.GetO
|
|
|
5052
5044
|
* Use `create(GetOrganizationKycResponseSchema)` to create a new message.
|
|
5053
5045
|
*/
|
|
5054
5046
|
export const GetOrganizationKycResponseSchema: GenMessage<GetOrganizationKycResponse> = /*@__PURE__*/
|
|
5055
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5047
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 221);
|
|
5056
5048
|
|
|
5057
5049
|
/**
|
|
5058
5050
|
* @generated from message raystack.frontier.v1beta1.ProjectRequestBody
|
|
@@ -5084,7 +5076,7 @@ export type ProjectRequestBody = Message<"raystack.frontier.v1beta1.ProjectReque
|
|
|
5084
5076
|
* Use `create(ProjectRequestBodySchema)` to create a new message.
|
|
5085
5077
|
*/
|
|
5086
5078
|
export const ProjectRequestBodySchema: GenMessage<ProjectRequestBody> = /*@__PURE__*/
|
|
5087
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5079
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 222);
|
|
5088
5080
|
|
|
5089
5081
|
/**
|
|
5090
5082
|
* @generated from message raystack.frontier.v1beta1.CreateProjectRequest
|
|
@@ -5101,7 +5093,7 @@ export type CreateProjectRequest = Message<"raystack.frontier.v1beta1.CreateProj
|
|
|
5101
5093
|
* Use `create(CreateProjectRequestSchema)` to create a new message.
|
|
5102
5094
|
*/
|
|
5103
5095
|
export const CreateProjectRequestSchema: GenMessage<CreateProjectRequest> = /*@__PURE__*/
|
|
5104
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5096
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 223);
|
|
5105
5097
|
|
|
5106
5098
|
/**
|
|
5107
5099
|
* @generated from message raystack.frontier.v1beta1.CreateProjectResponse
|
|
@@ -5118,7 +5110,7 @@ export type CreateProjectResponse = Message<"raystack.frontier.v1beta1.CreatePro
|
|
|
5118
5110
|
* Use `create(CreateProjectResponseSchema)` to create a new message.
|
|
5119
5111
|
*/
|
|
5120
5112
|
export const CreateProjectResponseSchema: GenMessage<CreateProjectResponse> = /*@__PURE__*/
|
|
5121
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5113
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 224);
|
|
5122
5114
|
|
|
5123
5115
|
/**
|
|
5124
5116
|
* @generated from message raystack.frontier.v1beta1.ListOrganizationProjectsRequest
|
|
@@ -5145,7 +5137,7 @@ export type ListOrganizationProjectsRequest = Message<"raystack.frontier.v1beta1
|
|
|
5145
5137
|
* Use `create(ListOrganizationProjectsRequestSchema)` to create a new message.
|
|
5146
5138
|
*/
|
|
5147
5139
|
export const ListOrganizationProjectsRequestSchema: GenMessage<ListOrganizationProjectsRequest> = /*@__PURE__*/
|
|
5148
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5140
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 225);
|
|
5149
5141
|
|
|
5150
5142
|
/**
|
|
5151
5143
|
* @generated from message raystack.frontier.v1beta1.ListOrganizationProjectsResponse
|
|
@@ -5162,7 +5154,7 @@ export type ListOrganizationProjectsResponse = Message<"raystack.frontier.v1beta
|
|
|
5162
5154
|
* Use `create(ListOrganizationProjectsResponseSchema)` to create a new message.
|
|
5163
5155
|
*/
|
|
5164
5156
|
export const ListOrganizationProjectsResponseSchema: GenMessage<ListOrganizationProjectsResponse> = /*@__PURE__*/
|
|
5165
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5157
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 226);
|
|
5166
5158
|
|
|
5167
5159
|
/**
|
|
5168
5160
|
* @generated from message raystack.frontier.v1beta1.GetProjectRequest
|
|
@@ -5179,7 +5171,7 @@ export type GetProjectRequest = Message<"raystack.frontier.v1beta1.GetProjectReq
|
|
|
5179
5171
|
* Use `create(GetProjectRequestSchema)` to create a new message.
|
|
5180
5172
|
*/
|
|
5181
5173
|
export const GetProjectRequestSchema: GenMessage<GetProjectRequest> = /*@__PURE__*/
|
|
5182
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5174
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 227);
|
|
5183
5175
|
|
|
5184
5176
|
/**
|
|
5185
5177
|
* @generated from message raystack.frontier.v1beta1.GetProjectResponse
|
|
@@ -5196,7 +5188,7 @@ export type GetProjectResponse = Message<"raystack.frontier.v1beta1.GetProjectRe
|
|
|
5196
5188
|
* Use `create(GetProjectResponseSchema)` to create a new message.
|
|
5197
5189
|
*/
|
|
5198
5190
|
export const GetProjectResponseSchema: GenMessage<GetProjectResponse> = /*@__PURE__*/
|
|
5199
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5191
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 228);
|
|
5200
5192
|
|
|
5201
5193
|
/**
|
|
5202
5194
|
* @generated from message raystack.frontier.v1beta1.UpdateProjectRequest
|
|
@@ -5218,7 +5210,7 @@ export type UpdateProjectRequest = Message<"raystack.frontier.v1beta1.UpdateProj
|
|
|
5218
5210
|
* Use `create(UpdateProjectRequestSchema)` to create a new message.
|
|
5219
5211
|
*/
|
|
5220
5212
|
export const UpdateProjectRequestSchema: GenMessage<UpdateProjectRequest> = /*@__PURE__*/
|
|
5221
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5213
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 229);
|
|
5222
5214
|
|
|
5223
5215
|
/**
|
|
5224
5216
|
* @generated from message raystack.frontier.v1beta1.UpdateProjectResponse
|
|
@@ -5235,7 +5227,7 @@ export type UpdateProjectResponse = Message<"raystack.frontier.v1beta1.UpdatePro
|
|
|
5235
5227
|
* Use `create(UpdateProjectResponseSchema)` to create a new message.
|
|
5236
5228
|
*/
|
|
5237
5229
|
export const UpdateProjectResponseSchema: GenMessage<UpdateProjectResponse> = /*@__PURE__*/
|
|
5238
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5230
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 230);
|
|
5239
5231
|
|
|
5240
5232
|
/**
|
|
5241
5233
|
* @generated from message raystack.frontier.v1beta1.ListProjectAdminsRequest
|
|
@@ -5252,7 +5244,7 @@ export type ListProjectAdminsRequest = Message<"raystack.frontier.v1beta1.ListPr
|
|
|
5252
5244
|
* Use `create(ListProjectAdminsRequestSchema)` to create a new message.
|
|
5253
5245
|
*/
|
|
5254
5246
|
export const ListProjectAdminsRequestSchema: GenMessage<ListProjectAdminsRequest> = /*@__PURE__*/
|
|
5255
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5247
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 231);
|
|
5256
5248
|
|
|
5257
5249
|
/**
|
|
5258
5250
|
* @generated from message raystack.frontier.v1beta1.ListProjectAdminsResponse
|
|
@@ -5269,7 +5261,7 @@ export type ListProjectAdminsResponse = Message<"raystack.frontier.v1beta1.ListP
|
|
|
5269
5261
|
* Use `create(ListProjectAdminsResponseSchema)` to create a new message.
|
|
5270
5262
|
*/
|
|
5271
5263
|
export const ListProjectAdminsResponseSchema: GenMessage<ListProjectAdminsResponse> = /*@__PURE__*/
|
|
5272
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5264
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 232);
|
|
5273
5265
|
|
|
5274
5266
|
/**
|
|
5275
5267
|
* @generated from message raystack.frontier.v1beta1.ListProjectUsersRequest
|
|
@@ -5296,7 +5288,7 @@ export type ListProjectUsersRequest = Message<"raystack.frontier.v1beta1.ListPro
|
|
|
5296
5288
|
* Use `create(ListProjectUsersRequestSchema)` to create a new message.
|
|
5297
5289
|
*/
|
|
5298
5290
|
export const ListProjectUsersRequestSchema: GenMessage<ListProjectUsersRequest> = /*@__PURE__*/
|
|
5299
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5291
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 233);
|
|
5300
5292
|
|
|
5301
5293
|
/**
|
|
5302
5294
|
* @generated from message raystack.frontier.v1beta1.ListProjectUsersResponse
|
|
@@ -5318,7 +5310,7 @@ export type ListProjectUsersResponse = Message<"raystack.frontier.v1beta1.ListPr
|
|
|
5318
5310
|
* Use `create(ListProjectUsersResponseSchema)` to create a new message.
|
|
5319
5311
|
*/
|
|
5320
5312
|
export const ListProjectUsersResponseSchema: GenMessage<ListProjectUsersResponse> = /*@__PURE__*/
|
|
5321
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5313
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 234);
|
|
5322
5314
|
|
|
5323
5315
|
/**
|
|
5324
5316
|
* @generated from message raystack.frontier.v1beta1.ListProjectUsersResponse.RolePair
|
|
@@ -5340,7 +5332,7 @@ export type ListProjectUsersResponse_RolePair = Message<"raystack.frontier.v1bet
|
|
|
5340
5332
|
* Use `create(ListProjectUsersResponse_RolePairSchema)` to create a new message.
|
|
5341
5333
|
*/
|
|
5342
5334
|
export const ListProjectUsersResponse_RolePairSchema: GenMessage<ListProjectUsersResponse_RolePair> = /*@__PURE__*/
|
|
5343
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5335
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 234, 0);
|
|
5344
5336
|
|
|
5345
5337
|
/**
|
|
5346
5338
|
* @generated from message raystack.frontier.v1beta1.ListProjectServiceUsersRequest
|
|
@@ -5362,7 +5354,7 @@ export type ListProjectServiceUsersRequest = Message<"raystack.frontier.v1beta1.
|
|
|
5362
5354
|
* Use `create(ListProjectServiceUsersRequestSchema)` to create a new message.
|
|
5363
5355
|
*/
|
|
5364
5356
|
export const ListProjectServiceUsersRequestSchema: GenMessage<ListProjectServiceUsersRequest> = /*@__PURE__*/
|
|
5365
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5357
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 235);
|
|
5366
5358
|
|
|
5367
5359
|
/**
|
|
5368
5360
|
* @generated from message raystack.frontier.v1beta1.ListProjectServiceUsersResponse
|
|
@@ -5384,7 +5376,7 @@ export type ListProjectServiceUsersResponse = Message<"raystack.frontier.v1beta1
|
|
|
5384
5376
|
* Use `create(ListProjectServiceUsersResponseSchema)` to create a new message.
|
|
5385
5377
|
*/
|
|
5386
5378
|
export const ListProjectServiceUsersResponseSchema: GenMessage<ListProjectServiceUsersResponse> = /*@__PURE__*/
|
|
5387
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5379
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 236);
|
|
5388
5380
|
|
|
5389
5381
|
/**
|
|
5390
5382
|
* @generated from message raystack.frontier.v1beta1.ListProjectServiceUsersResponse.RolePair
|
|
@@ -5406,7 +5398,7 @@ export type ListProjectServiceUsersResponse_RolePair = Message<"raystack.frontie
|
|
|
5406
5398
|
* Use `create(ListProjectServiceUsersResponse_RolePairSchema)` to create a new message.
|
|
5407
5399
|
*/
|
|
5408
5400
|
export const ListProjectServiceUsersResponse_RolePairSchema: GenMessage<ListProjectServiceUsersResponse_RolePair> = /*@__PURE__*/
|
|
5409
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5401
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 236, 0);
|
|
5410
5402
|
|
|
5411
5403
|
/**
|
|
5412
5404
|
* @generated from message raystack.frontier.v1beta1.ListProjectGroupsRequest
|
|
@@ -5428,7 +5420,7 @@ export type ListProjectGroupsRequest = Message<"raystack.frontier.v1beta1.ListPr
|
|
|
5428
5420
|
* Use `create(ListProjectGroupsRequestSchema)` to create a new message.
|
|
5429
5421
|
*/
|
|
5430
5422
|
export const ListProjectGroupsRequestSchema: GenMessage<ListProjectGroupsRequest> = /*@__PURE__*/
|
|
5431
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5423
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 237);
|
|
5432
5424
|
|
|
5433
5425
|
/**
|
|
5434
5426
|
* @generated from message raystack.frontier.v1beta1.ListProjectGroupsResponse
|
|
@@ -5450,7 +5442,7 @@ export type ListProjectGroupsResponse = Message<"raystack.frontier.v1beta1.ListP
|
|
|
5450
5442
|
* Use `create(ListProjectGroupsResponseSchema)` to create a new message.
|
|
5451
5443
|
*/
|
|
5452
5444
|
export const ListProjectGroupsResponseSchema: GenMessage<ListProjectGroupsResponse> = /*@__PURE__*/
|
|
5453
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5445
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 238);
|
|
5454
5446
|
|
|
5455
5447
|
/**
|
|
5456
5448
|
* @generated from message raystack.frontier.v1beta1.ListProjectGroupsResponse.RolePair
|
|
@@ -5472,7 +5464,7 @@ export type ListProjectGroupsResponse_RolePair = Message<"raystack.frontier.v1be
|
|
|
5472
5464
|
* Use `create(ListProjectGroupsResponse_RolePairSchema)` to create a new message.
|
|
5473
5465
|
*/
|
|
5474
5466
|
export const ListProjectGroupsResponse_RolePairSchema: GenMessage<ListProjectGroupsResponse_RolePair> = /*@__PURE__*/
|
|
5475
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5467
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 238, 0);
|
|
5476
5468
|
|
|
5477
5469
|
/**
|
|
5478
5470
|
* @generated from message raystack.frontier.v1beta1.EnableProjectRequest
|
|
@@ -5489,7 +5481,7 @@ export type EnableProjectRequest = Message<"raystack.frontier.v1beta1.EnableProj
|
|
|
5489
5481
|
* Use `create(EnableProjectRequestSchema)` to create a new message.
|
|
5490
5482
|
*/
|
|
5491
5483
|
export const EnableProjectRequestSchema: GenMessage<EnableProjectRequest> = /*@__PURE__*/
|
|
5492
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5484
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 239);
|
|
5493
5485
|
|
|
5494
5486
|
/**
|
|
5495
5487
|
* @generated from message raystack.frontier.v1beta1.EnableProjectResponse
|
|
@@ -5502,7 +5494,7 @@ export type EnableProjectResponse = Message<"raystack.frontier.v1beta1.EnablePro
|
|
|
5502
5494
|
* Use `create(EnableProjectResponseSchema)` to create a new message.
|
|
5503
5495
|
*/
|
|
5504
5496
|
export const EnableProjectResponseSchema: GenMessage<EnableProjectResponse> = /*@__PURE__*/
|
|
5505
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5497
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 240);
|
|
5506
5498
|
|
|
5507
5499
|
/**
|
|
5508
5500
|
* @generated from message raystack.frontier.v1beta1.DisableProjectRequest
|
|
@@ -5519,7 +5511,7 @@ export type DisableProjectRequest = Message<"raystack.frontier.v1beta1.DisablePr
|
|
|
5519
5511
|
* Use `create(DisableProjectRequestSchema)` to create a new message.
|
|
5520
5512
|
*/
|
|
5521
5513
|
export const DisableProjectRequestSchema: GenMessage<DisableProjectRequest> = /*@__PURE__*/
|
|
5522
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5514
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 241);
|
|
5523
5515
|
|
|
5524
5516
|
/**
|
|
5525
5517
|
* @generated from message raystack.frontier.v1beta1.DisableProjectResponse
|
|
@@ -5532,7 +5524,7 @@ export type DisableProjectResponse = Message<"raystack.frontier.v1beta1.DisableP
|
|
|
5532
5524
|
* Use `create(DisableProjectResponseSchema)` to create a new message.
|
|
5533
5525
|
*/
|
|
5534
5526
|
export const DisableProjectResponseSchema: GenMessage<DisableProjectResponse> = /*@__PURE__*/
|
|
5535
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5527
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 242);
|
|
5536
5528
|
|
|
5537
5529
|
/**
|
|
5538
5530
|
* @generated from message raystack.frontier.v1beta1.DeleteProjectRequest
|
|
@@ -5549,7 +5541,7 @@ export type DeleteProjectRequest = Message<"raystack.frontier.v1beta1.DeleteProj
|
|
|
5549
5541
|
* Use `create(DeleteProjectRequestSchema)` to create a new message.
|
|
5550
5542
|
*/
|
|
5551
5543
|
export const DeleteProjectRequestSchema: GenMessage<DeleteProjectRequest> = /*@__PURE__*/
|
|
5552
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5544
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 243);
|
|
5553
5545
|
|
|
5554
5546
|
/**
|
|
5555
5547
|
* @generated from message raystack.frontier.v1beta1.DeleteProjectResponse
|
|
@@ -5562,7 +5554,7 @@ export type DeleteProjectResponse = Message<"raystack.frontier.v1beta1.DeletePro
|
|
|
5562
5554
|
* Use `create(DeleteProjectResponseSchema)` to create a new message.
|
|
5563
5555
|
*/
|
|
5564
5556
|
export const DeleteProjectResponseSchema: GenMessage<DeleteProjectResponse> = /*@__PURE__*/
|
|
5565
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5557
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 244);
|
|
5566
5558
|
|
|
5567
5559
|
/**
|
|
5568
5560
|
* @generated from message raystack.frontier.v1beta1.PolicyRequestBody
|
|
@@ -5599,7 +5591,7 @@ export type PolicyRequestBody = Message<"raystack.frontier.v1beta1.PolicyRequest
|
|
|
5599
5591
|
* Use `create(PolicyRequestBodySchema)` to create a new message.
|
|
5600
5592
|
*/
|
|
5601
5593
|
export const PolicyRequestBodySchema: GenMessage<PolicyRequestBody> = /*@__PURE__*/
|
|
5602
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5594
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 245);
|
|
5603
5595
|
|
|
5604
5596
|
/**
|
|
5605
5597
|
* @generated from message raystack.frontier.v1beta1.CreatePolicyForProjectBody
|
|
@@ -5626,7 +5618,7 @@ export type CreatePolicyForProjectBody = Message<"raystack.frontier.v1beta1.Crea
|
|
|
5626
5618
|
* Use `create(CreatePolicyForProjectBodySchema)` to create a new message.
|
|
5627
5619
|
*/
|
|
5628
5620
|
export const CreatePolicyForProjectBodySchema: GenMessage<CreatePolicyForProjectBody> = /*@__PURE__*/
|
|
5629
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5621
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 246);
|
|
5630
5622
|
|
|
5631
5623
|
/**
|
|
5632
5624
|
* @generated from message raystack.frontier.v1beta1.GetPermissionRequest
|
|
@@ -5643,7 +5635,7 @@ export type GetPermissionRequest = Message<"raystack.frontier.v1beta1.GetPermiss
|
|
|
5643
5635
|
* Use `create(GetPermissionRequestSchema)` to create a new message.
|
|
5644
5636
|
*/
|
|
5645
5637
|
export const GetPermissionRequestSchema: GenMessage<GetPermissionRequest> = /*@__PURE__*/
|
|
5646
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5638
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 247);
|
|
5647
5639
|
|
|
5648
5640
|
/**
|
|
5649
5641
|
* @generated from message raystack.frontier.v1beta1.GetPermissionResponse
|
|
@@ -5660,7 +5652,7 @@ export type GetPermissionResponse = Message<"raystack.frontier.v1beta1.GetPermis
|
|
|
5660
5652
|
* Use `create(GetPermissionResponseSchema)` to create a new message.
|
|
5661
5653
|
*/
|
|
5662
5654
|
export const GetPermissionResponseSchema: GenMessage<GetPermissionResponse> = /*@__PURE__*/
|
|
5663
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5655
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 248);
|
|
5664
5656
|
|
|
5665
5657
|
/**
|
|
5666
5658
|
* @generated from message raystack.frontier.v1beta1.ListPermissionsRequest
|
|
@@ -5673,7 +5665,7 @@ export type ListPermissionsRequest = Message<"raystack.frontier.v1beta1.ListPerm
|
|
|
5673
5665
|
* Use `create(ListPermissionsRequestSchema)` to create a new message.
|
|
5674
5666
|
*/
|
|
5675
5667
|
export const ListPermissionsRequestSchema: GenMessage<ListPermissionsRequest> = /*@__PURE__*/
|
|
5676
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5668
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 249);
|
|
5677
5669
|
|
|
5678
5670
|
/**
|
|
5679
5671
|
* @generated from message raystack.frontier.v1beta1.ListPermissionsResponse
|
|
@@ -5690,7 +5682,7 @@ export type ListPermissionsResponse = Message<"raystack.frontier.v1beta1.ListPer
|
|
|
5690
5682
|
* Use `create(ListPermissionsResponseSchema)` to create a new message.
|
|
5691
5683
|
*/
|
|
5692
5684
|
export const ListPermissionsResponseSchema: GenMessage<ListPermissionsResponse> = /*@__PURE__*/
|
|
5693
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5685
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 250);
|
|
5694
5686
|
|
|
5695
5687
|
/**
|
|
5696
5688
|
* @generated from message raystack.frontier.v1beta1.ListNamespacesRequest
|
|
@@ -5703,7 +5695,7 @@ export type ListNamespacesRequest = Message<"raystack.frontier.v1beta1.ListNames
|
|
|
5703
5695
|
* Use `create(ListNamespacesRequestSchema)` to create a new message.
|
|
5704
5696
|
*/
|
|
5705
5697
|
export const ListNamespacesRequestSchema: GenMessage<ListNamespacesRequest> = /*@__PURE__*/
|
|
5706
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5698
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 251);
|
|
5707
5699
|
|
|
5708
5700
|
/**
|
|
5709
5701
|
* @generated from message raystack.frontier.v1beta1.ListNamespacesResponse
|
|
@@ -5720,7 +5712,7 @@ export type ListNamespacesResponse = Message<"raystack.frontier.v1beta1.ListName
|
|
|
5720
5712
|
* Use `create(ListNamespacesResponseSchema)` to create a new message.
|
|
5721
5713
|
*/
|
|
5722
5714
|
export const ListNamespacesResponseSchema: GenMessage<ListNamespacesResponse> = /*@__PURE__*/
|
|
5723
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5715
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 252);
|
|
5724
5716
|
|
|
5725
5717
|
/**
|
|
5726
5718
|
* @generated from message raystack.frontier.v1beta1.GetNamespaceRequest
|
|
@@ -5737,7 +5729,7 @@ export type GetNamespaceRequest = Message<"raystack.frontier.v1beta1.GetNamespac
|
|
|
5737
5729
|
* Use `create(GetNamespaceRequestSchema)` to create a new message.
|
|
5738
5730
|
*/
|
|
5739
5731
|
export const GetNamespaceRequestSchema: GenMessage<GetNamespaceRequest> = /*@__PURE__*/
|
|
5740
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5732
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 253);
|
|
5741
5733
|
|
|
5742
5734
|
/**
|
|
5743
5735
|
* @generated from message raystack.frontier.v1beta1.GetNamespaceResponse
|
|
@@ -5754,7 +5746,7 @@ export type GetNamespaceResponse = Message<"raystack.frontier.v1beta1.GetNamespa
|
|
|
5754
5746
|
* Use `create(GetNamespaceResponseSchema)` to create a new message.
|
|
5755
5747
|
*/
|
|
5756
5748
|
export const GetNamespaceResponseSchema: GenMessage<GetNamespaceResponse> = /*@__PURE__*/
|
|
5757
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5749
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 254);
|
|
5758
5750
|
|
|
5759
5751
|
/**
|
|
5760
5752
|
* @generated from message raystack.frontier.v1beta1.CreatePolicyRequest
|
|
@@ -5771,7 +5763,7 @@ export type CreatePolicyRequest = Message<"raystack.frontier.v1beta1.CreatePolic
|
|
|
5771
5763
|
* Use `create(CreatePolicyRequestSchema)` to create a new message.
|
|
5772
5764
|
*/
|
|
5773
5765
|
export const CreatePolicyRequestSchema: GenMessage<CreatePolicyRequest> = /*@__PURE__*/
|
|
5774
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5766
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 255);
|
|
5775
5767
|
|
|
5776
5768
|
/**
|
|
5777
5769
|
* @generated from message raystack.frontier.v1beta1.CreatePolicyResponse
|
|
@@ -5788,7 +5780,7 @@ export type CreatePolicyResponse = Message<"raystack.frontier.v1beta1.CreatePoli
|
|
|
5788
5780
|
* Use `create(CreatePolicyResponseSchema)` to create a new message.
|
|
5789
5781
|
*/
|
|
5790
5782
|
export const CreatePolicyResponseSchema: GenMessage<CreatePolicyResponse> = /*@__PURE__*/
|
|
5791
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5783
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 256);
|
|
5792
5784
|
|
|
5793
5785
|
/**
|
|
5794
5786
|
* @generated from message raystack.frontier.v1beta1.GetPolicyRequest
|
|
@@ -5805,7 +5797,7 @@ export type GetPolicyRequest = Message<"raystack.frontier.v1beta1.GetPolicyReque
|
|
|
5805
5797
|
* Use `create(GetPolicyRequestSchema)` to create a new message.
|
|
5806
5798
|
*/
|
|
5807
5799
|
export const GetPolicyRequestSchema: GenMessage<GetPolicyRequest> = /*@__PURE__*/
|
|
5808
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5800
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 257);
|
|
5809
5801
|
|
|
5810
5802
|
/**
|
|
5811
5803
|
* @generated from message raystack.frontier.v1beta1.GetPolicyResponse
|
|
@@ -5822,7 +5814,7 @@ export type GetPolicyResponse = Message<"raystack.frontier.v1beta1.GetPolicyResp
|
|
|
5822
5814
|
* Use `create(GetPolicyResponseSchema)` to create a new message.
|
|
5823
5815
|
*/
|
|
5824
5816
|
export const GetPolicyResponseSchema: GenMessage<GetPolicyResponse> = /*@__PURE__*/
|
|
5825
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5817
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 258);
|
|
5826
5818
|
|
|
5827
5819
|
/**
|
|
5828
5820
|
* @generated from message raystack.frontier.v1beta1.ListPoliciesRequest
|
|
@@ -5859,7 +5851,7 @@ export type ListPoliciesRequest = Message<"raystack.frontier.v1beta1.ListPolicie
|
|
|
5859
5851
|
* Use `create(ListPoliciesRequestSchema)` to create a new message.
|
|
5860
5852
|
*/
|
|
5861
5853
|
export const ListPoliciesRequestSchema: GenMessage<ListPoliciesRequest> = /*@__PURE__*/
|
|
5862
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5854
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 259);
|
|
5863
5855
|
|
|
5864
5856
|
/**
|
|
5865
5857
|
* @generated from message raystack.frontier.v1beta1.ListPoliciesResponse
|
|
@@ -5876,7 +5868,7 @@ export type ListPoliciesResponse = Message<"raystack.frontier.v1beta1.ListPolici
|
|
|
5876
5868
|
* Use `create(ListPoliciesResponseSchema)` to create a new message.
|
|
5877
5869
|
*/
|
|
5878
5870
|
export const ListPoliciesResponseSchema: GenMessage<ListPoliciesResponse> = /*@__PURE__*/
|
|
5879
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5871
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 260);
|
|
5880
5872
|
|
|
5881
5873
|
/**
|
|
5882
5874
|
* @generated from message raystack.frontier.v1beta1.UpdatePolicyRequest
|
|
@@ -5898,7 +5890,7 @@ export type UpdatePolicyRequest = Message<"raystack.frontier.v1beta1.UpdatePolic
|
|
|
5898
5890
|
* Use `create(UpdatePolicyRequestSchema)` to create a new message.
|
|
5899
5891
|
*/
|
|
5900
5892
|
export const UpdatePolicyRequestSchema: GenMessage<UpdatePolicyRequest> = /*@__PURE__*/
|
|
5901
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5893
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 261);
|
|
5902
5894
|
|
|
5903
5895
|
/**
|
|
5904
5896
|
* @generated from message raystack.frontier.v1beta1.UpdatePolicyResponse
|
|
@@ -5915,7 +5907,7 @@ export type UpdatePolicyResponse = Message<"raystack.frontier.v1beta1.UpdatePoli
|
|
|
5915
5907
|
* Use `create(UpdatePolicyResponseSchema)` to create a new message.
|
|
5916
5908
|
*/
|
|
5917
5909
|
export const UpdatePolicyResponseSchema: GenMessage<UpdatePolicyResponse> = /*@__PURE__*/
|
|
5918
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5910
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 262);
|
|
5919
5911
|
|
|
5920
5912
|
/**
|
|
5921
5913
|
* @generated from message raystack.frontier.v1beta1.DeletePolicyRequest
|
|
@@ -5932,7 +5924,7 @@ export type DeletePolicyRequest = Message<"raystack.frontier.v1beta1.DeletePolic
|
|
|
5932
5924
|
* Use `create(DeletePolicyRequestSchema)` to create a new message.
|
|
5933
5925
|
*/
|
|
5934
5926
|
export const DeletePolicyRequestSchema: GenMessage<DeletePolicyRequest> = /*@__PURE__*/
|
|
5935
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5927
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 263);
|
|
5936
5928
|
|
|
5937
5929
|
/**
|
|
5938
5930
|
* @generated from message raystack.frontier.v1beta1.DeletePolicyResponse
|
|
@@ -5945,7 +5937,7 @@ export type DeletePolicyResponse = Message<"raystack.frontier.v1beta1.DeletePoli
|
|
|
5945
5937
|
* Use `create(DeletePolicyResponseSchema)` to create a new message.
|
|
5946
5938
|
*/
|
|
5947
5939
|
export const DeletePolicyResponseSchema: GenMessage<DeletePolicyResponse> = /*@__PURE__*/
|
|
5948
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5940
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 264);
|
|
5949
5941
|
|
|
5950
5942
|
/**
|
|
5951
5943
|
* @generated from message raystack.frontier.v1beta1.CreatePolicyForProjectRequest
|
|
@@ -5967,7 +5959,7 @@ export type CreatePolicyForProjectRequest = Message<"raystack.frontier.v1beta1.C
|
|
|
5967
5959
|
* Use `create(CreatePolicyForProjectRequestSchema)` to create a new message.
|
|
5968
5960
|
*/
|
|
5969
5961
|
export const CreatePolicyForProjectRequestSchema: GenMessage<CreatePolicyForProjectRequest> = /*@__PURE__*/
|
|
5970
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5962
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 265);
|
|
5971
5963
|
|
|
5972
5964
|
/**
|
|
5973
5965
|
* @generated from message raystack.frontier.v1beta1.CreatePolicyForProjectResponse
|
|
@@ -5980,7 +5972,7 @@ export type CreatePolicyForProjectResponse = Message<"raystack.frontier.v1beta1.
|
|
|
5980
5972
|
* Use `create(CreatePolicyForProjectResponseSchema)` to create a new message.
|
|
5981
5973
|
*/
|
|
5982
5974
|
export const CreatePolicyForProjectResponseSchema: GenMessage<CreatePolicyForProjectResponse> = /*@__PURE__*/
|
|
5983
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
5975
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 266);
|
|
5984
5976
|
|
|
5985
5977
|
/**
|
|
5986
5978
|
* @generated from message raystack.frontier.v1beta1.RelationRequestBody
|
|
@@ -6016,7 +6008,7 @@ export type RelationRequestBody = Message<"raystack.frontier.v1beta1.RelationReq
|
|
|
6016
6008
|
* Use `create(RelationRequestBodySchema)` to create a new message.
|
|
6017
6009
|
*/
|
|
6018
6010
|
export const RelationRequestBodySchema: GenMessage<RelationRequestBody> = /*@__PURE__*/
|
|
6019
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
6011
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 267);
|
|
6020
6012
|
|
|
6021
6013
|
/**
|
|
6022
6014
|
* @generated from message raystack.frontier.v1beta1.CreateRelationRequest
|
|
@@ -6033,7 +6025,7 @@ export type CreateRelationRequest = Message<"raystack.frontier.v1beta1.CreateRel
|
|
|
6033
6025
|
* Use `create(CreateRelationRequestSchema)` to create a new message.
|
|
6034
6026
|
*/
|
|
6035
6027
|
export const CreateRelationRequestSchema: GenMessage<CreateRelationRequest> = /*@__PURE__*/
|
|
6036
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
6028
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 268);
|
|
6037
6029
|
|
|
6038
6030
|
/**
|
|
6039
6031
|
* @generated from message raystack.frontier.v1beta1.CreateRelationResponse
|
|
@@ -6050,7 +6042,7 @@ export type CreateRelationResponse = Message<"raystack.frontier.v1beta1.CreateRe
|
|
|
6050
6042
|
* Use `create(CreateRelationResponseSchema)` to create a new message.
|
|
6051
6043
|
*/
|
|
6052
6044
|
export const CreateRelationResponseSchema: GenMessage<CreateRelationResponse> = /*@__PURE__*/
|
|
6053
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
6045
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 269);
|
|
6054
6046
|
|
|
6055
6047
|
/**
|
|
6056
6048
|
* @generated from message raystack.frontier.v1beta1.GetRelationRequest
|
|
@@ -6067,7 +6059,7 @@ export type GetRelationRequest = Message<"raystack.frontier.v1beta1.GetRelationR
|
|
|
6067
6059
|
* Use `create(GetRelationRequestSchema)` to create a new message.
|
|
6068
6060
|
*/
|
|
6069
6061
|
export const GetRelationRequestSchema: GenMessage<GetRelationRequest> = /*@__PURE__*/
|
|
6070
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
6062
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 270);
|
|
6071
6063
|
|
|
6072
6064
|
/**
|
|
6073
6065
|
* @generated from message raystack.frontier.v1beta1.GetRelationResponse
|
|
@@ -6084,7 +6076,7 @@ export type GetRelationResponse = Message<"raystack.frontier.v1beta1.GetRelation
|
|
|
6084
6076
|
* Use `create(GetRelationResponseSchema)` to create a new message.
|
|
6085
6077
|
*/
|
|
6086
6078
|
export const GetRelationResponseSchema: GenMessage<GetRelationResponse> = /*@__PURE__*/
|
|
6087
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
6079
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 271);
|
|
6088
6080
|
|
|
6089
6081
|
/**
|
|
6090
6082
|
* @generated from message raystack.frontier.v1beta1.UpdateRelationRequest
|
|
@@ -6106,7 +6098,7 @@ export type UpdateRelationRequest = Message<"raystack.frontier.v1beta1.UpdateRel
|
|
|
6106
6098
|
* Use `create(UpdateRelationRequestSchema)` to create a new message.
|
|
6107
6099
|
*/
|
|
6108
6100
|
export const UpdateRelationRequestSchema: GenMessage<UpdateRelationRequest> = /*@__PURE__*/
|
|
6109
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
6101
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 272);
|
|
6110
6102
|
|
|
6111
6103
|
/**
|
|
6112
6104
|
* @generated from message raystack.frontier.v1beta1.UpdateRelationResponse
|
|
@@ -6123,7 +6115,7 @@ export type UpdateRelationResponse = Message<"raystack.frontier.v1beta1.UpdateRe
|
|
|
6123
6115
|
* Use `create(UpdateRelationResponseSchema)` to create a new message.
|
|
6124
6116
|
*/
|
|
6125
6117
|
export const UpdateRelationResponseSchema: GenMessage<UpdateRelationResponse> = /*@__PURE__*/
|
|
6126
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
6118
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 273);
|
|
6127
6119
|
|
|
6128
6120
|
/**
|
|
6129
6121
|
* @generated from message raystack.frontier.v1beta1.GroupRequestBody
|
|
@@ -6150,7 +6142,7 @@ export type GroupRequestBody = Message<"raystack.frontier.v1beta1.GroupRequestBo
|
|
|
6150
6142
|
* Use `create(GroupRequestBodySchema)` to create a new message.
|
|
6151
6143
|
*/
|
|
6152
6144
|
export const GroupRequestBodySchema: GenMessage<GroupRequestBody> = /*@__PURE__*/
|
|
6153
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
6145
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 274);
|
|
6154
6146
|
|
|
6155
6147
|
/**
|
|
6156
6148
|
* @generated from message raystack.frontier.v1beta1.CreateGroupRequest
|
|
@@ -6172,7 +6164,7 @@ export type CreateGroupRequest = Message<"raystack.frontier.v1beta1.CreateGroupR
|
|
|
6172
6164
|
* Use `create(CreateGroupRequestSchema)` to create a new message.
|
|
6173
6165
|
*/
|
|
6174
6166
|
export const CreateGroupRequestSchema: GenMessage<CreateGroupRequest> = /*@__PURE__*/
|
|
6175
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
6167
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 275);
|
|
6176
6168
|
|
|
6177
6169
|
/**
|
|
6178
6170
|
* @generated from message raystack.frontier.v1beta1.GetGroupRequest
|
|
@@ -6199,7 +6191,7 @@ export type GetGroupRequest = Message<"raystack.frontier.v1beta1.GetGroupRequest
|
|
|
6199
6191
|
* Use `create(GetGroupRequestSchema)` to create a new message.
|
|
6200
6192
|
*/
|
|
6201
6193
|
export const GetGroupRequestSchema: GenMessage<GetGroupRequest> = /*@__PURE__*/
|
|
6202
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
6194
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 276);
|
|
6203
6195
|
|
|
6204
6196
|
/**
|
|
6205
6197
|
* @generated from message raystack.frontier.v1beta1.CreateGroupResponse
|
|
@@ -6216,7 +6208,7 @@ export type CreateGroupResponse = Message<"raystack.frontier.v1beta1.CreateGroup
|
|
|
6216
6208
|
* Use `create(CreateGroupResponseSchema)` to create a new message.
|
|
6217
6209
|
*/
|
|
6218
6210
|
export const CreateGroupResponseSchema: GenMessage<CreateGroupResponse> = /*@__PURE__*/
|
|
6219
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
6211
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 277);
|
|
6220
6212
|
|
|
6221
6213
|
/**
|
|
6222
6214
|
* @generated from message raystack.frontier.v1beta1.GetGroupResponse
|
|
@@ -6233,7 +6225,7 @@ export type GetGroupResponse = Message<"raystack.frontier.v1beta1.GetGroupRespon
|
|
|
6233
6225
|
* Use `create(GetGroupResponseSchema)` to create a new message.
|
|
6234
6226
|
*/
|
|
6235
6227
|
export const GetGroupResponseSchema: GenMessage<GetGroupResponse> = /*@__PURE__*/
|
|
6236
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
6228
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 278);
|
|
6237
6229
|
|
|
6238
6230
|
/**
|
|
6239
6231
|
* @generated from message raystack.frontier.v1beta1.UpdateGroupResponse
|
|
@@ -6250,7 +6242,7 @@ export type UpdateGroupResponse = Message<"raystack.frontier.v1beta1.UpdateGroup
|
|
|
6250
6242
|
* Use `create(UpdateGroupResponseSchema)` to create a new message.
|
|
6251
6243
|
*/
|
|
6252
6244
|
export const UpdateGroupResponseSchema: GenMessage<UpdateGroupResponse> = /*@__PURE__*/
|
|
6253
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
6245
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 279);
|
|
6254
6246
|
|
|
6255
6247
|
/**
|
|
6256
6248
|
* @generated from message raystack.frontier.v1beta1.UpdateGroupRequest
|
|
@@ -6277,7 +6269,7 @@ export type UpdateGroupRequest = Message<"raystack.frontier.v1beta1.UpdateGroupR
|
|
|
6277
6269
|
* Use `create(UpdateGroupRequestSchema)` to create a new message.
|
|
6278
6270
|
*/
|
|
6279
6271
|
export const UpdateGroupRequestSchema: GenMessage<UpdateGroupRequest> = /*@__PURE__*/
|
|
6280
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
6272
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 280);
|
|
6281
6273
|
|
|
6282
6274
|
/**
|
|
6283
6275
|
* @generated from message raystack.frontier.v1beta1.ListGroupUsersRequest
|
|
@@ -6304,7 +6296,7 @@ export type ListGroupUsersRequest = Message<"raystack.frontier.v1beta1.ListGroup
|
|
|
6304
6296
|
* Use `create(ListGroupUsersRequestSchema)` to create a new message.
|
|
6305
6297
|
*/
|
|
6306
6298
|
export const ListGroupUsersRequestSchema: GenMessage<ListGroupUsersRequest> = /*@__PURE__*/
|
|
6307
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
6299
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 281);
|
|
6308
6300
|
|
|
6309
6301
|
/**
|
|
6310
6302
|
* @generated from message raystack.frontier.v1beta1.ListGroupUsersResponse
|
|
@@ -6326,7 +6318,7 @@ export type ListGroupUsersResponse = Message<"raystack.frontier.v1beta1.ListGrou
|
|
|
6326
6318
|
* Use `create(ListGroupUsersResponseSchema)` to create a new message.
|
|
6327
6319
|
*/
|
|
6328
6320
|
export const ListGroupUsersResponseSchema: GenMessage<ListGroupUsersResponse> = /*@__PURE__*/
|
|
6329
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
6321
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 282);
|
|
6330
6322
|
|
|
6331
6323
|
/**
|
|
6332
6324
|
* @generated from message raystack.frontier.v1beta1.ListGroupUsersResponse.RolePair
|
|
@@ -6348,7 +6340,7 @@ export type ListGroupUsersResponse_RolePair = Message<"raystack.frontier.v1beta1
|
|
|
6348
6340
|
* Use `create(ListGroupUsersResponse_RolePairSchema)` to create a new message.
|
|
6349
6341
|
*/
|
|
6350
6342
|
export const ListGroupUsersResponse_RolePairSchema: GenMessage<ListGroupUsersResponse_RolePair> = /*@__PURE__*/
|
|
6351
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
6343
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 282, 0);
|
|
6352
6344
|
|
|
6353
6345
|
/**
|
|
6354
6346
|
* @generated from message raystack.frontier.v1beta1.EnableGroupRequest
|
|
@@ -6370,7 +6362,7 @@ export type EnableGroupRequest = Message<"raystack.frontier.v1beta1.EnableGroupR
|
|
|
6370
6362
|
* Use `create(EnableGroupRequestSchema)` to create a new message.
|
|
6371
6363
|
*/
|
|
6372
6364
|
export const EnableGroupRequestSchema: GenMessage<EnableGroupRequest> = /*@__PURE__*/
|
|
6373
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
6365
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 283);
|
|
6374
6366
|
|
|
6375
6367
|
/**
|
|
6376
6368
|
* @generated from message raystack.frontier.v1beta1.EnableGroupResponse
|
|
@@ -6383,7 +6375,7 @@ export type EnableGroupResponse = Message<"raystack.frontier.v1beta1.EnableGroup
|
|
|
6383
6375
|
* Use `create(EnableGroupResponseSchema)` to create a new message.
|
|
6384
6376
|
*/
|
|
6385
6377
|
export const EnableGroupResponseSchema: GenMessage<EnableGroupResponse> = /*@__PURE__*/
|
|
6386
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
6378
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 284);
|
|
6387
6379
|
|
|
6388
6380
|
/**
|
|
6389
6381
|
* @generated from message raystack.frontier.v1beta1.DisableGroupRequest
|
|
@@ -6405,7 +6397,7 @@ export type DisableGroupRequest = Message<"raystack.frontier.v1beta1.DisableGrou
|
|
|
6405
6397
|
* Use `create(DisableGroupRequestSchema)` to create a new message.
|
|
6406
6398
|
*/
|
|
6407
6399
|
export const DisableGroupRequestSchema: GenMessage<DisableGroupRequest> = /*@__PURE__*/
|
|
6408
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
6400
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 285);
|
|
6409
6401
|
|
|
6410
6402
|
/**
|
|
6411
6403
|
* @generated from message raystack.frontier.v1beta1.DisableGroupResponse
|
|
@@ -6418,7 +6410,7 @@ export type DisableGroupResponse = Message<"raystack.frontier.v1beta1.DisableGro
|
|
|
6418
6410
|
* Use `create(DisableGroupResponseSchema)` to create a new message.
|
|
6419
6411
|
*/
|
|
6420
6412
|
export const DisableGroupResponseSchema: GenMessage<DisableGroupResponse> = /*@__PURE__*/
|
|
6421
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
6413
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 286);
|
|
6422
6414
|
|
|
6423
6415
|
/**
|
|
6424
6416
|
* @generated from message raystack.frontier.v1beta1.DeleteGroupRequest
|
|
@@ -6440,7 +6432,7 @@ export type DeleteGroupRequest = Message<"raystack.frontier.v1beta1.DeleteGroupR
|
|
|
6440
6432
|
* Use `create(DeleteGroupRequestSchema)` to create a new message.
|
|
6441
6433
|
*/
|
|
6442
6434
|
export const DeleteGroupRequestSchema: GenMessage<DeleteGroupRequest> = /*@__PURE__*/
|
|
6443
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
6435
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 287);
|
|
6444
6436
|
|
|
6445
6437
|
/**
|
|
6446
6438
|
* @generated from message raystack.frontier.v1beta1.DeleteGroupResponse
|
|
@@ -6453,7 +6445,7 @@ export type DeleteGroupResponse = Message<"raystack.frontier.v1beta1.DeleteGroup
|
|
|
6453
6445
|
* Use `create(DeleteGroupResponseSchema)` to create a new message.
|
|
6454
6446
|
*/
|
|
6455
6447
|
export const DeleteGroupResponseSchema: GenMessage<DeleteGroupResponse> = /*@__PURE__*/
|
|
6456
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
6448
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 288);
|
|
6457
6449
|
|
|
6458
6450
|
/**
|
|
6459
6451
|
* @generated from message raystack.frontier.v1beta1.AddGroupUsersRequest
|
|
@@ -6480,7 +6472,7 @@ export type AddGroupUsersRequest = Message<"raystack.frontier.v1beta1.AddGroupUs
|
|
|
6480
6472
|
* Use `create(AddGroupUsersRequestSchema)` to create a new message.
|
|
6481
6473
|
*/
|
|
6482
6474
|
export const AddGroupUsersRequestSchema: GenMessage<AddGroupUsersRequest> = /*@__PURE__*/
|
|
6483
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
6475
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 289);
|
|
6484
6476
|
|
|
6485
6477
|
/**
|
|
6486
6478
|
* @generated from message raystack.frontier.v1beta1.AddGroupUsersResponse
|
|
@@ -6493,7 +6485,7 @@ export type AddGroupUsersResponse = Message<"raystack.frontier.v1beta1.AddGroupU
|
|
|
6493
6485
|
* Use `create(AddGroupUsersResponseSchema)` to create a new message.
|
|
6494
6486
|
*/
|
|
6495
6487
|
export const AddGroupUsersResponseSchema: GenMessage<AddGroupUsersResponse> = /*@__PURE__*/
|
|
6496
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
6488
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 290);
|
|
6497
6489
|
|
|
6498
6490
|
/**
|
|
6499
6491
|
* @generated from message raystack.frontier.v1beta1.RemoveGroupUserRequest
|
|
@@ -6520,7 +6512,7 @@ export type RemoveGroupUserRequest = Message<"raystack.frontier.v1beta1.RemoveGr
|
|
|
6520
6512
|
* Use `create(RemoveGroupUserRequestSchema)` to create a new message.
|
|
6521
6513
|
*/
|
|
6522
6514
|
export const RemoveGroupUserRequestSchema: GenMessage<RemoveGroupUserRequest> = /*@__PURE__*/
|
|
6523
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
6515
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 291);
|
|
6524
6516
|
|
|
6525
6517
|
/**
|
|
6526
6518
|
* @generated from message raystack.frontier.v1beta1.RemoveGroupUserResponse
|
|
@@ -6533,7 +6525,7 @@ export type RemoveGroupUserResponse = Message<"raystack.frontier.v1beta1.RemoveG
|
|
|
6533
6525
|
* Use `create(RemoveGroupUserResponseSchema)` to create a new message.
|
|
6534
6526
|
*/
|
|
6535
6527
|
export const RemoveGroupUserResponseSchema: GenMessage<RemoveGroupUserResponse> = /*@__PURE__*/
|
|
6536
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
6528
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 292);
|
|
6537
6529
|
|
|
6538
6530
|
/**
|
|
6539
6531
|
* @generated from message raystack.frontier.v1beta1.DeleteRelationRequest
|
|
@@ -6564,7 +6556,7 @@ export type DeleteRelationRequest = Message<"raystack.frontier.v1beta1.DeleteRel
|
|
|
6564
6556
|
* Use `create(DeleteRelationRequestSchema)` to create a new message.
|
|
6565
6557
|
*/
|
|
6566
6558
|
export const DeleteRelationRequestSchema: GenMessage<DeleteRelationRequest> = /*@__PURE__*/
|
|
6567
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
6559
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 293);
|
|
6568
6560
|
|
|
6569
6561
|
/**
|
|
6570
6562
|
* @generated from message raystack.frontier.v1beta1.DeleteRelationResponse
|
|
@@ -6577,7 +6569,7 @@ export type DeleteRelationResponse = Message<"raystack.frontier.v1beta1.DeleteRe
|
|
|
6577
6569
|
* Use `create(DeleteRelationResponseSchema)` to create a new message.
|
|
6578
6570
|
*/
|
|
6579
6571
|
export const DeleteRelationResponseSchema: GenMessage<DeleteRelationResponse> = /*@__PURE__*/
|
|
6580
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
6572
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 294);
|
|
6581
6573
|
|
|
6582
6574
|
/**
|
|
6583
6575
|
* @generated from message raystack.frontier.v1beta1.ListProjectResourcesRequest
|
|
@@ -6599,7 +6591,7 @@ export type ListProjectResourcesRequest = Message<"raystack.frontier.v1beta1.Lis
|
|
|
6599
6591
|
* Use `create(ListProjectResourcesRequestSchema)` to create a new message.
|
|
6600
6592
|
*/
|
|
6601
6593
|
export const ListProjectResourcesRequestSchema: GenMessage<ListProjectResourcesRequest> = /*@__PURE__*/
|
|
6602
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
6594
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 295);
|
|
6603
6595
|
|
|
6604
6596
|
/**
|
|
6605
6597
|
* @generated from message raystack.frontier.v1beta1.ListProjectResourcesResponse
|
|
@@ -6616,7 +6608,7 @@ export type ListProjectResourcesResponse = Message<"raystack.frontier.v1beta1.Li
|
|
|
6616
6608
|
* Use `create(ListProjectResourcesResponseSchema)` to create a new message.
|
|
6617
6609
|
*/
|
|
6618
6610
|
export const ListProjectResourcesResponseSchema: GenMessage<ListProjectResourcesResponse> = /*@__PURE__*/
|
|
6619
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
6611
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 296);
|
|
6620
6612
|
|
|
6621
6613
|
/**
|
|
6622
6614
|
* @generated from message raystack.frontier.v1beta1.ResourceRequestBody
|
|
@@ -6655,7 +6647,7 @@ export type ResourceRequestBody = Message<"raystack.frontier.v1beta1.ResourceReq
|
|
|
6655
6647
|
* Use `create(ResourceRequestBodySchema)` to create a new message.
|
|
6656
6648
|
*/
|
|
6657
6649
|
export const ResourceRequestBodySchema: GenMessage<ResourceRequestBody> = /*@__PURE__*/
|
|
6658
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
6650
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 297);
|
|
6659
6651
|
|
|
6660
6652
|
/**
|
|
6661
6653
|
* @generated from message raystack.frontier.v1beta1.CreateProjectResourceRequest
|
|
@@ -6684,7 +6676,7 @@ export type CreateProjectResourceRequest = Message<"raystack.frontier.v1beta1.Cr
|
|
|
6684
6676
|
* Use `create(CreateProjectResourceRequestSchema)` to create a new message.
|
|
6685
6677
|
*/
|
|
6686
6678
|
export const CreateProjectResourceRequestSchema: GenMessage<CreateProjectResourceRequest> = /*@__PURE__*/
|
|
6687
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
6679
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 298);
|
|
6688
6680
|
|
|
6689
6681
|
/**
|
|
6690
6682
|
* @generated from message raystack.frontier.v1beta1.CreateProjectResourceResponse
|
|
@@ -6701,7 +6693,7 @@ export type CreateProjectResourceResponse = Message<"raystack.frontier.v1beta1.C
|
|
|
6701
6693
|
* Use `create(CreateProjectResourceResponseSchema)` to create a new message.
|
|
6702
6694
|
*/
|
|
6703
6695
|
export const CreateProjectResourceResponseSchema: GenMessage<CreateProjectResourceResponse> = /*@__PURE__*/
|
|
6704
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
6696
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 299);
|
|
6705
6697
|
|
|
6706
6698
|
/**
|
|
6707
6699
|
* @generated from message raystack.frontier.v1beta1.GetProjectResourceRequest
|
|
@@ -6723,7 +6715,7 @@ export type GetProjectResourceRequest = Message<"raystack.frontier.v1beta1.GetPr
|
|
|
6723
6715
|
* Use `create(GetProjectResourceRequestSchema)` to create a new message.
|
|
6724
6716
|
*/
|
|
6725
6717
|
export const GetProjectResourceRequestSchema: GenMessage<GetProjectResourceRequest> = /*@__PURE__*/
|
|
6726
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
6718
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 300);
|
|
6727
6719
|
|
|
6728
6720
|
/**
|
|
6729
6721
|
* @generated from message raystack.frontier.v1beta1.GetProjectResourceResponse
|
|
@@ -6740,7 +6732,7 @@ export type GetProjectResourceResponse = Message<"raystack.frontier.v1beta1.GetP
|
|
|
6740
6732
|
* Use `create(GetProjectResourceResponseSchema)` to create a new message.
|
|
6741
6733
|
*/
|
|
6742
6734
|
export const GetProjectResourceResponseSchema: GenMessage<GetProjectResourceResponse> = /*@__PURE__*/
|
|
6743
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
6735
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 301);
|
|
6744
6736
|
|
|
6745
6737
|
/**
|
|
6746
6738
|
* @generated from message raystack.frontier.v1beta1.UpdateProjectResourceRequest
|
|
@@ -6767,7 +6759,7 @@ export type UpdateProjectResourceRequest = Message<"raystack.frontier.v1beta1.Up
|
|
|
6767
6759
|
* Use `create(UpdateProjectResourceRequestSchema)` to create a new message.
|
|
6768
6760
|
*/
|
|
6769
6761
|
export const UpdateProjectResourceRequestSchema: GenMessage<UpdateProjectResourceRequest> = /*@__PURE__*/
|
|
6770
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
6762
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 302);
|
|
6771
6763
|
|
|
6772
6764
|
/**
|
|
6773
6765
|
* @generated from message raystack.frontier.v1beta1.UpdateProjectResourceResponse
|
|
@@ -6784,7 +6776,7 @@ export type UpdateProjectResourceResponse = Message<"raystack.frontier.v1beta1.U
|
|
|
6784
6776
|
* Use `create(UpdateProjectResourceResponseSchema)` to create a new message.
|
|
6785
6777
|
*/
|
|
6786
6778
|
export const UpdateProjectResourceResponseSchema: GenMessage<UpdateProjectResourceResponse> = /*@__PURE__*/
|
|
6787
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
6779
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 303);
|
|
6788
6780
|
|
|
6789
6781
|
/**
|
|
6790
6782
|
* @generated from message raystack.frontier.v1beta1.DeleteProjectResourceRequest
|
|
@@ -6806,7 +6798,7 @@ export type DeleteProjectResourceRequest = Message<"raystack.frontier.v1beta1.De
|
|
|
6806
6798
|
* Use `create(DeleteProjectResourceRequestSchema)` to create a new message.
|
|
6807
6799
|
*/
|
|
6808
6800
|
export const DeleteProjectResourceRequestSchema: GenMessage<DeleteProjectResourceRequest> = /*@__PURE__*/
|
|
6809
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
6801
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 304);
|
|
6810
6802
|
|
|
6811
6803
|
/**
|
|
6812
6804
|
* @generated from message raystack.frontier.v1beta1.DeleteProjectResourceResponse
|
|
@@ -6819,7 +6811,7 @@ export type DeleteProjectResourceResponse = Message<"raystack.frontier.v1beta1.D
|
|
|
6819
6811
|
* Use `create(DeleteProjectResourceResponseSchema)` to create a new message.
|
|
6820
6812
|
*/
|
|
6821
6813
|
export const DeleteProjectResourceResponseSchema: GenMessage<DeleteProjectResourceResponse> = /*@__PURE__*/
|
|
6822
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
6814
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 305);
|
|
6823
6815
|
|
|
6824
6816
|
/**
|
|
6825
6817
|
* @generated from message raystack.frontier.v1beta1.CheckResourcePermissionRequest
|
|
@@ -6853,7 +6845,7 @@ export type CheckResourcePermissionRequest = Message<"raystack.frontier.v1beta1.
|
|
|
6853
6845
|
* Use `create(CheckResourcePermissionRequestSchema)` to create a new message.
|
|
6854
6846
|
*/
|
|
6855
6847
|
export const CheckResourcePermissionRequestSchema: GenMessage<CheckResourcePermissionRequest> = /*@__PURE__*/
|
|
6856
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
6848
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 306);
|
|
6857
6849
|
|
|
6858
6850
|
/**
|
|
6859
6851
|
* @generated from message raystack.frontier.v1beta1.CheckResourcePermissionResponse
|
|
@@ -6870,7 +6862,7 @@ export type CheckResourcePermissionResponse = Message<"raystack.frontier.v1beta1
|
|
|
6870
6862
|
* Use `create(CheckResourcePermissionResponseSchema)` to create a new message.
|
|
6871
6863
|
*/
|
|
6872
6864
|
export const CheckResourcePermissionResponseSchema: GenMessage<CheckResourcePermissionResponse> = /*@__PURE__*/
|
|
6873
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
6865
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 307);
|
|
6874
6866
|
|
|
6875
6867
|
/**
|
|
6876
6868
|
* @generated from message raystack.frontier.v1beta1.BatchCheckPermissionRequest
|
|
@@ -6887,7 +6879,7 @@ export type BatchCheckPermissionRequest = Message<"raystack.frontier.v1beta1.Bat
|
|
|
6887
6879
|
* Use `create(BatchCheckPermissionRequestSchema)` to create a new message.
|
|
6888
6880
|
*/
|
|
6889
6881
|
export const BatchCheckPermissionRequestSchema: GenMessage<BatchCheckPermissionRequest> = /*@__PURE__*/
|
|
6890
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
6882
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 308);
|
|
6891
6883
|
|
|
6892
6884
|
/**
|
|
6893
6885
|
* @generated from message raystack.frontier.v1beta1.BatchCheckPermissionBody
|
|
@@ -6909,7 +6901,7 @@ export type BatchCheckPermissionBody = Message<"raystack.frontier.v1beta1.BatchC
|
|
|
6909
6901
|
* Use `create(BatchCheckPermissionBodySchema)` to create a new message.
|
|
6910
6902
|
*/
|
|
6911
6903
|
export const BatchCheckPermissionBodySchema: GenMessage<BatchCheckPermissionBody> = /*@__PURE__*/
|
|
6912
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
6904
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 309);
|
|
6913
6905
|
|
|
6914
6906
|
/**
|
|
6915
6907
|
* @generated from message raystack.frontier.v1beta1.BatchCheckPermissionResponse
|
|
@@ -6926,7 +6918,7 @@ export type BatchCheckPermissionResponse = Message<"raystack.frontier.v1beta1.Ba
|
|
|
6926
6918
|
* Use `create(BatchCheckPermissionResponseSchema)` to create a new message.
|
|
6927
6919
|
*/
|
|
6928
6920
|
export const BatchCheckPermissionResponseSchema: GenMessage<BatchCheckPermissionResponse> = /*@__PURE__*/
|
|
6929
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
6921
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 310);
|
|
6930
6922
|
|
|
6931
6923
|
/**
|
|
6932
6924
|
* @generated from message raystack.frontier.v1beta1.BatchCheckPermissionResponsePair
|
|
@@ -6948,7 +6940,7 @@ export type BatchCheckPermissionResponsePair = Message<"raystack.frontier.v1beta
|
|
|
6948
6940
|
* Use `create(BatchCheckPermissionResponsePairSchema)` to create a new message.
|
|
6949
6941
|
*/
|
|
6950
6942
|
export const BatchCheckPermissionResponsePairSchema: GenMessage<BatchCheckPermissionResponsePair> = /*@__PURE__*/
|
|
6951
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
6943
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 311);
|
|
6952
6944
|
|
|
6953
6945
|
/**
|
|
6954
6946
|
* @generated from message raystack.frontier.v1beta1.MetaSchemaRequestBody
|
|
@@ -6970,7 +6962,7 @@ export type MetaSchemaRequestBody = Message<"raystack.frontier.v1beta1.MetaSchem
|
|
|
6970
6962
|
* Use `create(MetaSchemaRequestBodySchema)` to create a new message.
|
|
6971
6963
|
*/
|
|
6972
6964
|
export const MetaSchemaRequestBodySchema: GenMessage<MetaSchemaRequestBody> = /*@__PURE__*/
|
|
6973
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
6965
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 312);
|
|
6974
6966
|
|
|
6975
6967
|
/**
|
|
6976
6968
|
* @generated from message raystack.frontier.v1beta1.CreateMetaSchemaRequest
|
|
@@ -6987,7 +6979,7 @@ export type CreateMetaSchemaRequest = Message<"raystack.frontier.v1beta1.CreateM
|
|
|
6987
6979
|
* Use `create(CreateMetaSchemaRequestSchema)` to create a new message.
|
|
6988
6980
|
*/
|
|
6989
6981
|
export const CreateMetaSchemaRequestSchema: GenMessage<CreateMetaSchemaRequest> = /*@__PURE__*/
|
|
6990
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
6982
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 313);
|
|
6991
6983
|
|
|
6992
6984
|
/**
|
|
6993
6985
|
* @generated from message raystack.frontier.v1beta1.CreateMetaSchemaResponse
|
|
@@ -7004,7 +6996,7 @@ export type CreateMetaSchemaResponse = Message<"raystack.frontier.v1beta1.Create
|
|
|
7004
6996
|
* Use `create(CreateMetaSchemaResponseSchema)` to create a new message.
|
|
7005
6997
|
*/
|
|
7006
6998
|
export const CreateMetaSchemaResponseSchema: GenMessage<CreateMetaSchemaResponse> = /*@__PURE__*/
|
|
7007
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
6999
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 314);
|
|
7008
7000
|
|
|
7009
7001
|
/**
|
|
7010
7002
|
* @generated from message raystack.frontier.v1beta1.GetMetaSchemaRequest
|
|
@@ -7021,7 +7013,7 @@ export type GetMetaSchemaRequest = Message<"raystack.frontier.v1beta1.GetMetaSch
|
|
|
7021
7013
|
* Use `create(GetMetaSchemaRequestSchema)` to create a new message.
|
|
7022
7014
|
*/
|
|
7023
7015
|
export const GetMetaSchemaRequestSchema: GenMessage<GetMetaSchemaRequest> = /*@__PURE__*/
|
|
7024
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
7016
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 315);
|
|
7025
7017
|
|
|
7026
7018
|
/**
|
|
7027
7019
|
* @generated from message raystack.frontier.v1beta1.GetMetaSchemaResponse
|
|
@@ -7038,7 +7030,7 @@ export type GetMetaSchemaResponse = Message<"raystack.frontier.v1beta1.GetMetaSc
|
|
|
7038
7030
|
* Use `create(GetMetaSchemaResponseSchema)` to create a new message.
|
|
7039
7031
|
*/
|
|
7040
7032
|
export const GetMetaSchemaResponseSchema: GenMessage<GetMetaSchemaResponse> = /*@__PURE__*/
|
|
7041
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
7033
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 316);
|
|
7042
7034
|
|
|
7043
7035
|
/**
|
|
7044
7036
|
* @generated from message raystack.frontier.v1beta1.UpdateMetaSchemaRequest
|
|
@@ -7060,7 +7052,7 @@ export type UpdateMetaSchemaRequest = Message<"raystack.frontier.v1beta1.UpdateM
|
|
|
7060
7052
|
* Use `create(UpdateMetaSchemaRequestSchema)` to create a new message.
|
|
7061
7053
|
*/
|
|
7062
7054
|
export const UpdateMetaSchemaRequestSchema: GenMessage<UpdateMetaSchemaRequest> = /*@__PURE__*/
|
|
7063
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
7055
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 317);
|
|
7064
7056
|
|
|
7065
7057
|
/**
|
|
7066
7058
|
* @generated from message raystack.frontier.v1beta1.UpdateMetaSchemaResponse
|
|
@@ -7077,7 +7069,7 @@ export type UpdateMetaSchemaResponse = Message<"raystack.frontier.v1beta1.Update
|
|
|
7077
7069
|
* Use `create(UpdateMetaSchemaResponseSchema)` to create a new message.
|
|
7078
7070
|
*/
|
|
7079
7071
|
export const UpdateMetaSchemaResponseSchema: GenMessage<UpdateMetaSchemaResponse> = /*@__PURE__*/
|
|
7080
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
7072
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 318);
|
|
7081
7073
|
|
|
7082
7074
|
/**
|
|
7083
7075
|
* @generated from message raystack.frontier.v1beta1.DeleteMetaSchemaRequest
|
|
@@ -7094,7 +7086,7 @@ export type DeleteMetaSchemaRequest = Message<"raystack.frontier.v1beta1.DeleteM
|
|
|
7094
7086
|
* Use `create(DeleteMetaSchemaRequestSchema)` to create a new message.
|
|
7095
7087
|
*/
|
|
7096
7088
|
export const DeleteMetaSchemaRequestSchema: GenMessage<DeleteMetaSchemaRequest> = /*@__PURE__*/
|
|
7097
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
7089
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 319);
|
|
7098
7090
|
|
|
7099
7091
|
/**
|
|
7100
7092
|
* @generated from message raystack.frontier.v1beta1.DeleteMetaSchemaResponse
|
|
@@ -7107,7 +7099,7 @@ export type DeleteMetaSchemaResponse = Message<"raystack.frontier.v1beta1.Delete
|
|
|
7107
7099
|
* Use `create(DeleteMetaSchemaResponseSchema)` to create a new message.
|
|
7108
7100
|
*/
|
|
7109
7101
|
export const DeleteMetaSchemaResponseSchema: GenMessage<DeleteMetaSchemaResponse> = /*@__PURE__*/
|
|
7110
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
7102
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 320);
|
|
7111
7103
|
|
|
7112
7104
|
/**
|
|
7113
7105
|
* @generated from message raystack.frontier.v1beta1.ListMetaSchemasRequest
|
|
@@ -7120,7 +7112,7 @@ export type ListMetaSchemasRequest = Message<"raystack.frontier.v1beta1.ListMeta
|
|
|
7120
7112
|
* Use `create(ListMetaSchemasRequestSchema)` to create a new message.
|
|
7121
7113
|
*/
|
|
7122
7114
|
export const ListMetaSchemasRequestSchema: GenMessage<ListMetaSchemasRequest> = /*@__PURE__*/
|
|
7123
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
7115
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 321);
|
|
7124
7116
|
|
|
7125
7117
|
/**
|
|
7126
7118
|
* @generated from message raystack.frontier.v1beta1.ListMetaSchemasResponse
|
|
@@ -7137,142 +7129,7 @@ export type ListMetaSchemasResponse = Message<"raystack.frontier.v1beta1.ListMet
|
|
|
7137
7129
|
* Use `create(ListMetaSchemasResponseSchema)` to create a new message.
|
|
7138
7130
|
*/
|
|
7139
7131
|
export const ListMetaSchemasResponseSchema: GenMessage<ListMetaSchemasResponse> = /*@__PURE__*/
|
|
7140
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
7141
|
-
|
|
7142
|
-
/**
|
|
7143
|
-
* @generated from message raystack.frontier.v1beta1.ListOrganizationAuditLogsRequest
|
|
7144
|
-
*/
|
|
7145
|
-
export type ListOrganizationAuditLogsRequest = Message<"raystack.frontier.v1beta1.ListOrganizationAuditLogsRequest"> & {
|
|
7146
|
-
/**
|
|
7147
|
-
* @generated from field: string org_id = 1;
|
|
7148
|
-
*/
|
|
7149
|
-
orgId: string;
|
|
7150
|
-
|
|
7151
|
-
/**
|
|
7152
|
-
* @generated from field: string source = 5;
|
|
7153
|
-
*/
|
|
7154
|
-
source: string;
|
|
7155
|
-
|
|
7156
|
-
/**
|
|
7157
|
-
* @generated from field: string action = 6;
|
|
7158
|
-
*/
|
|
7159
|
-
action: string;
|
|
7160
|
-
|
|
7161
|
-
/**
|
|
7162
|
-
* @generated from field: bool ignore_system = 7;
|
|
7163
|
-
*/
|
|
7164
|
-
ignoreSystem: boolean;
|
|
7165
|
-
|
|
7166
|
-
/**
|
|
7167
|
-
* start_time and end_time are inclusive
|
|
7168
|
-
*
|
|
7169
|
-
* @generated from field: google.protobuf.Timestamp start_time = 10;
|
|
7170
|
-
*/
|
|
7171
|
-
startTime?: Timestamp;
|
|
7172
|
-
|
|
7173
|
-
/**
|
|
7174
|
-
* @generated from field: google.protobuf.Timestamp end_time = 11;
|
|
7175
|
-
*/
|
|
7176
|
-
endTime?: Timestamp;
|
|
7177
|
-
};
|
|
7178
|
-
|
|
7179
|
-
/**
|
|
7180
|
-
* Describes the message raystack.frontier.v1beta1.ListOrganizationAuditLogsRequest.
|
|
7181
|
-
* Use `create(ListOrganizationAuditLogsRequestSchema)` to create a new message.
|
|
7182
|
-
*/
|
|
7183
|
-
export const ListOrganizationAuditLogsRequestSchema: GenMessage<ListOrganizationAuditLogsRequest> = /*@__PURE__*/
|
|
7184
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier, 325);
|
|
7185
|
-
|
|
7186
|
-
/**
|
|
7187
|
-
* @generated from message raystack.frontier.v1beta1.ListOrganizationAuditLogsResponse
|
|
7188
|
-
*/
|
|
7189
|
-
export type ListOrganizationAuditLogsResponse = Message<"raystack.frontier.v1beta1.ListOrganizationAuditLogsResponse"> & {
|
|
7190
|
-
/**
|
|
7191
|
-
* @generated from field: repeated raystack.frontier.v1beta1.AuditLog logs = 1;
|
|
7192
|
-
*/
|
|
7193
|
-
logs: AuditLog[];
|
|
7194
|
-
};
|
|
7195
|
-
|
|
7196
|
-
/**
|
|
7197
|
-
* Describes the message raystack.frontier.v1beta1.ListOrganizationAuditLogsResponse.
|
|
7198
|
-
* Use `create(ListOrganizationAuditLogsResponseSchema)` to create a new message.
|
|
7199
|
-
*/
|
|
7200
|
-
export const ListOrganizationAuditLogsResponseSchema: GenMessage<ListOrganizationAuditLogsResponse> = /*@__PURE__*/
|
|
7201
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier, 326);
|
|
7202
|
-
|
|
7203
|
-
/**
|
|
7204
|
-
* @generated from message raystack.frontier.v1beta1.CreateOrganizationAuditLogsRequest
|
|
7205
|
-
*/
|
|
7206
|
-
export type CreateOrganizationAuditLogsRequest = Message<"raystack.frontier.v1beta1.CreateOrganizationAuditLogsRequest"> & {
|
|
7207
|
-
/**
|
|
7208
|
-
* @generated from field: string org_id = 1;
|
|
7209
|
-
*/
|
|
7210
|
-
orgId: string;
|
|
7211
|
-
|
|
7212
|
-
/**
|
|
7213
|
-
* @generated from field: repeated raystack.frontier.v1beta1.AuditLog logs = 2;
|
|
7214
|
-
*/
|
|
7215
|
-
logs: AuditLog[];
|
|
7216
|
-
};
|
|
7217
|
-
|
|
7218
|
-
/**
|
|
7219
|
-
* Describes the message raystack.frontier.v1beta1.CreateOrganizationAuditLogsRequest.
|
|
7220
|
-
* Use `create(CreateOrganizationAuditLogsRequestSchema)` to create a new message.
|
|
7221
|
-
*/
|
|
7222
|
-
export const CreateOrganizationAuditLogsRequestSchema: GenMessage<CreateOrganizationAuditLogsRequest> = /*@__PURE__*/
|
|
7223
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier, 327);
|
|
7224
|
-
|
|
7225
|
-
/**
|
|
7226
|
-
* @generated from message raystack.frontier.v1beta1.CreateOrganizationAuditLogsResponse
|
|
7227
|
-
*/
|
|
7228
|
-
export type CreateOrganizationAuditLogsResponse = Message<"raystack.frontier.v1beta1.CreateOrganizationAuditLogsResponse"> & {
|
|
7229
|
-
};
|
|
7230
|
-
|
|
7231
|
-
/**
|
|
7232
|
-
* Describes the message raystack.frontier.v1beta1.CreateOrganizationAuditLogsResponse.
|
|
7233
|
-
* Use `create(CreateOrganizationAuditLogsResponseSchema)` to create a new message.
|
|
7234
|
-
*/
|
|
7235
|
-
export const CreateOrganizationAuditLogsResponseSchema: GenMessage<CreateOrganizationAuditLogsResponse> = /*@__PURE__*/
|
|
7236
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier, 328);
|
|
7237
|
-
|
|
7238
|
-
/**
|
|
7239
|
-
* @generated from message raystack.frontier.v1beta1.GetOrganizationAuditLogRequest
|
|
7240
|
-
*/
|
|
7241
|
-
export type GetOrganizationAuditLogRequest = Message<"raystack.frontier.v1beta1.GetOrganizationAuditLogRequest"> & {
|
|
7242
|
-
/**
|
|
7243
|
-
* @generated from field: string org_id = 1;
|
|
7244
|
-
*/
|
|
7245
|
-
orgId: string;
|
|
7246
|
-
|
|
7247
|
-
/**
|
|
7248
|
-
* @generated from field: string id = 2;
|
|
7249
|
-
*/
|
|
7250
|
-
id: string;
|
|
7251
|
-
};
|
|
7252
|
-
|
|
7253
|
-
/**
|
|
7254
|
-
* Describes the message raystack.frontier.v1beta1.GetOrganizationAuditLogRequest.
|
|
7255
|
-
* Use `create(GetOrganizationAuditLogRequestSchema)` to create a new message.
|
|
7256
|
-
*/
|
|
7257
|
-
export const GetOrganizationAuditLogRequestSchema: GenMessage<GetOrganizationAuditLogRequest> = /*@__PURE__*/
|
|
7258
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier, 329);
|
|
7259
|
-
|
|
7260
|
-
/**
|
|
7261
|
-
* @generated from message raystack.frontier.v1beta1.GetOrganizationAuditLogResponse
|
|
7262
|
-
*/
|
|
7263
|
-
export type GetOrganizationAuditLogResponse = Message<"raystack.frontier.v1beta1.GetOrganizationAuditLogResponse"> & {
|
|
7264
|
-
/**
|
|
7265
|
-
* @generated from field: raystack.frontier.v1beta1.AuditLog log = 1;
|
|
7266
|
-
*/
|
|
7267
|
-
log?: AuditLog;
|
|
7268
|
-
};
|
|
7269
|
-
|
|
7270
|
-
/**
|
|
7271
|
-
* Describes the message raystack.frontier.v1beta1.GetOrganizationAuditLogResponse.
|
|
7272
|
-
* Use `create(GetOrganizationAuditLogResponseSchema)` to create a new message.
|
|
7273
|
-
*/
|
|
7274
|
-
export const GetOrganizationAuditLogResponseSchema: GenMessage<GetOrganizationAuditLogResponse> = /*@__PURE__*/
|
|
7275
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier, 330);
|
|
7132
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 322);
|
|
7276
7133
|
|
|
7277
7134
|
/**
|
|
7278
7135
|
* @generated from message raystack.frontier.v1beta1.DescribePreferencesRequest
|
|
@@ -7285,7 +7142,7 @@ export type DescribePreferencesRequest = Message<"raystack.frontier.v1beta1.Desc
|
|
|
7285
7142
|
* Use `create(DescribePreferencesRequestSchema)` to create a new message.
|
|
7286
7143
|
*/
|
|
7287
7144
|
export const DescribePreferencesRequestSchema: GenMessage<DescribePreferencesRequest> = /*@__PURE__*/
|
|
7288
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
7145
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 323);
|
|
7289
7146
|
|
|
7290
7147
|
/**
|
|
7291
7148
|
* @generated from message raystack.frontier.v1beta1.DescribePreferencesResponse
|
|
@@ -7302,7 +7159,7 @@ export type DescribePreferencesResponse = Message<"raystack.frontier.v1beta1.Des
|
|
|
7302
7159
|
* Use `create(DescribePreferencesResponseSchema)` to create a new message.
|
|
7303
7160
|
*/
|
|
7304
7161
|
export const DescribePreferencesResponseSchema: GenMessage<DescribePreferencesResponse> = /*@__PURE__*/
|
|
7305
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
7162
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 324);
|
|
7306
7163
|
|
|
7307
7164
|
/**
|
|
7308
7165
|
* @generated from message raystack.frontier.v1beta1.CreateOrganizationPreferencesRequest
|
|
@@ -7324,7 +7181,7 @@ export type CreateOrganizationPreferencesRequest = Message<"raystack.frontier.v1
|
|
|
7324
7181
|
* Use `create(CreateOrganizationPreferencesRequestSchema)` to create a new message.
|
|
7325
7182
|
*/
|
|
7326
7183
|
export const CreateOrganizationPreferencesRequestSchema: GenMessage<CreateOrganizationPreferencesRequest> = /*@__PURE__*/
|
|
7327
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
7184
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 325);
|
|
7328
7185
|
|
|
7329
7186
|
/**
|
|
7330
7187
|
* @generated from message raystack.frontier.v1beta1.CreateOrganizationPreferencesResponse
|
|
@@ -7341,7 +7198,7 @@ export type CreateOrganizationPreferencesResponse = Message<"raystack.frontier.v
|
|
|
7341
7198
|
* Use `create(CreateOrganizationPreferencesResponseSchema)` to create a new message.
|
|
7342
7199
|
*/
|
|
7343
7200
|
export const CreateOrganizationPreferencesResponseSchema: GenMessage<CreateOrganizationPreferencesResponse> = /*@__PURE__*/
|
|
7344
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
7201
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 326);
|
|
7345
7202
|
|
|
7346
7203
|
/**
|
|
7347
7204
|
* @generated from message raystack.frontier.v1beta1.ListOrganizationPreferencesRequest
|
|
@@ -7358,7 +7215,7 @@ export type ListOrganizationPreferencesRequest = Message<"raystack.frontier.v1be
|
|
|
7358
7215
|
* Use `create(ListOrganizationPreferencesRequestSchema)` to create a new message.
|
|
7359
7216
|
*/
|
|
7360
7217
|
export const ListOrganizationPreferencesRequestSchema: GenMessage<ListOrganizationPreferencesRequest> = /*@__PURE__*/
|
|
7361
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
7218
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 327);
|
|
7362
7219
|
|
|
7363
7220
|
/**
|
|
7364
7221
|
* @generated from message raystack.frontier.v1beta1.ListOrganizationPreferencesResponse
|
|
@@ -7375,7 +7232,7 @@ export type ListOrganizationPreferencesResponse = Message<"raystack.frontier.v1b
|
|
|
7375
7232
|
* Use `create(ListOrganizationPreferencesResponseSchema)` to create a new message.
|
|
7376
7233
|
*/
|
|
7377
7234
|
export const ListOrganizationPreferencesResponseSchema: GenMessage<ListOrganizationPreferencesResponse> = /*@__PURE__*/
|
|
7378
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
7235
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 328);
|
|
7379
7236
|
|
|
7380
7237
|
/**
|
|
7381
7238
|
* @generated from message raystack.frontier.v1beta1.CreateProjectPreferencesRequest
|
|
@@ -7397,7 +7254,7 @@ export type CreateProjectPreferencesRequest = Message<"raystack.frontier.v1beta1
|
|
|
7397
7254
|
* Use `create(CreateProjectPreferencesRequestSchema)` to create a new message.
|
|
7398
7255
|
*/
|
|
7399
7256
|
export const CreateProjectPreferencesRequestSchema: GenMessage<CreateProjectPreferencesRequest> = /*@__PURE__*/
|
|
7400
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
7257
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 329);
|
|
7401
7258
|
|
|
7402
7259
|
/**
|
|
7403
7260
|
* @generated from message raystack.frontier.v1beta1.CreateProjectPreferencesResponse
|
|
@@ -7414,7 +7271,7 @@ export type CreateProjectPreferencesResponse = Message<"raystack.frontier.v1beta
|
|
|
7414
7271
|
* Use `create(CreateProjectPreferencesResponseSchema)` to create a new message.
|
|
7415
7272
|
*/
|
|
7416
7273
|
export const CreateProjectPreferencesResponseSchema: GenMessage<CreateProjectPreferencesResponse> = /*@__PURE__*/
|
|
7417
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
7274
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 330);
|
|
7418
7275
|
|
|
7419
7276
|
/**
|
|
7420
7277
|
* @generated from message raystack.frontier.v1beta1.ListProjectPreferencesRequest
|
|
@@ -7431,7 +7288,7 @@ export type ListProjectPreferencesRequest = Message<"raystack.frontier.v1beta1.L
|
|
|
7431
7288
|
* Use `create(ListProjectPreferencesRequestSchema)` to create a new message.
|
|
7432
7289
|
*/
|
|
7433
7290
|
export const ListProjectPreferencesRequestSchema: GenMessage<ListProjectPreferencesRequest> = /*@__PURE__*/
|
|
7434
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
7291
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 331);
|
|
7435
7292
|
|
|
7436
7293
|
/**
|
|
7437
7294
|
* @generated from message raystack.frontier.v1beta1.ListProjectPreferencesResponse
|
|
@@ -7448,7 +7305,7 @@ export type ListProjectPreferencesResponse = Message<"raystack.frontier.v1beta1.
|
|
|
7448
7305
|
* Use `create(ListProjectPreferencesResponseSchema)` to create a new message.
|
|
7449
7306
|
*/
|
|
7450
7307
|
export const ListProjectPreferencesResponseSchema: GenMessage<ListProjectPreferencesResponse> = /*@__PURE__*/
|
|
7451
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
7308
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 332);
|
|
7452
7309
|
|
|
7453
7310
|
/**
|
|
7454
7311
|
* @generated from message raystack.frontier.v1beta1.CreateGroupPreferencesRequest
|
|
@@ -7470,7 +7327,7 @@ export type CreateGroupPreferencesRequest = Message<"raystack.frontier.v1beta1.C
|
|
|
7470
7327
|
* Use `create(CreateGroupPreferencesRequestSchema)` to create a new message.
|
|
7471
7328
|
*/
|
|
7472
7329
|
export const CreateGroupPreferencesRequestSchema: GenMessage<CreateGroupPreferencesRequest> = /*@__PURE__*/
|
|
7473
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
7330
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 333);
|
|
7474
7331
|
|
|
7475
7332
|
/**
|
|
7476
7333
|
* @generated from message raystack.frontier.v1beta1.CreateGroupPreferencesResponse
|
|
@@ -7487,7 +7344,7 @@ export type CreateGroupPreferencesResponse = Message<"raystack.frontier.v1beta1.
|
|
|
7487
7344
|
* Use `create(CreateGroupPreferencesResponseSchema)` to create a new message.
|
|
7488
7345
|
*/
|
|
7489
7346
|
export const CreateGroupPreferencesResponseSchema: GenMessage<CreateGroupPreferencesResponse> = /*@__PURE__*/
|
|
7490
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
7347
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 334);
|
|
7491
7348
|
|
|
7492
7349
|
/**
|
|
7493
7350
|
* @generated from message raystack.frontier.v1beta1.ListGroupPreferencesRequest
|
|
@@ -7504,7 +7361,7 @@ export type ListGroupPreferencesRequest = Message<"raystack.frontier.v1beta1.Lis
|
|
|
7504
7361
|
* Use `create(ListGroupPreferencesRequestSchema)` to create a new message.
|
|
7505
7362
|
*/
|
|
7506
7363
|
export const ListGroupPreferencesRequestSchema: GenMessage<ListGroupPreferencesRequest> = /*@__PURE__*/
|
|
7507
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
7364
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 335);
|
|
7508
7365
|
|
|
7509
7366
|
/**
|
|
7510
7367
|
* @generated from message raystack.frontier.v1beta1.ListGroupPreferencesResponse
|
|
@@ -7521,7 +7378,7 @@ export type ListGroupPreferencesResponse = Message<"raystack.frontier.v1beta1.Li
|
|
|
7521
7378
|
* Use `create(ListGroupPreferencesResponseSchema)` to create a new message.
|
|
7522
7379
|
*/
|
|
7523
7380
|
export const ListGroupPreferencesResponseSchema: GenMessage<ListGroupPreferencesResponse> = /*@__PURE__*/
|
|
7524
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
7381
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 336);
|
|
7525
7382
|
|
|
7526
7383
|
/**
|
|
7527
7384
|
* @generated from message raystack.frontier.v1beta1.CreateUserPreferencesRequest
|
|
@@ -7543,7 +7400,7 @@ export type CreateUserPreferencesRequest = Message<"raystack.frontier.v1beta1.Cr
|
|
|
7543
7400
|
* Use `create(CreateUserPreferencesRequestSchema)` to create a new message.
|
|
7544
7401
|
*/
|
|
7545
7402
|
export const CreateUserPreferencesRequestSchema: GenMessage<CreateUserPreferencesRequest> = /*@__PURE__*/
|
|
7546
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
7403
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 337);
|
|
7547
7404
|
|
|
7548
7405
|
/**
|
|
7549
7406
|
* @generated from message raystack.frontier.v1beta1.CreateUserPreferencesResponse
|
|
@@ -7560,7 +7417,7 @@ export type CreateUserPreferencesResponse = Message<"raystack.frontier.v1beta1.C
|
|
|
7560
7417
|
* Use `create(CreateUserPreferencesResponseSchema)` to create a new message.
|
|
7561
7418
|
*/
|
|
7562
7419
|
export const CreateUserPreferencesResponseSchema: GenMessage<CreateUserPreferencesResponse> = /*@__PURE__*/
|
|
7563
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
7420
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 338);
|
|
7564
7421
|
|
|
7565
7422
|
/**
|
|
7566
7423
|
* @generated from message raystack.frontier.v1beta1.ListUserPreferencesRequest
|
|
@@ -7577,7 +7434,7 @@ export type ListUserPreferencesRequest = Message<"raystack.frontier.v1beta1.List
|
|
|
7577
7434
|
* Use `create(ListUserPreferencesRequestSchema)` to create a new message.
|
|
7578
7435
|
*/
|
|
7579
7436
|
export const ListUserPreferencesRequestSchema: GenMessage<ListUserPreferencesRequest> = /*@__PURE__*/
|
|
7580
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
7437
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 339);
|
|
7581
7438
|
|
|
7582
7439
|
/**
|
|
7583
7440
|
* @generated from message raystack.frontier.v1beta1.ListUserPreferencesResponse
|
|
@@ -7594,7 +7451,7 @@ export type ListUserPreferencesResponse = Message<"raystack.frontier.v1beta1.Lis
|
|
|
7594
7451
|
* Use `create(ListUserPreferencesResponseSchema)` to create a new message.
|
|
7595
7452
|
*/
|
|
7596
7453
|
export const ListUserPreferencesResponseSchema: GenMessage<ListUserPreferencesResponse> = /*@__PURE__*/
|
|
7597
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
7454
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 340);
|
|
7598
7455
|
|
|
7599
7456
|
/**
|
|
7600
7457
|
* @generated from message raystack.frontier.v1beta1.CreateCurrentUserPreferencesRequest
|
|
@@ -7611,7 +7468,7 @@ export type CreateCurrentUserPreferencesRequest = Message<"raystack.frontier.v1b
|
|
|
7611
7468
|
* Use `create(CreateCurrentUserPreferencesRequestSchema)` to create a new message.
|
|
7612
7469
|
*/
|
|
7613
7470
|
export const CreateCurrentUserPreferencesRequestSchema: GenMessage<CreateCurrentUserPreferencesRequest> = /*@__PURE__*/
|
|
7614
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
7471
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 341);
|
|
7615
7472
|
|
|
7616
7473
|
/**
|
|
7617
7474
|
* @generated from message raystack.frontier.v1beta1.CreateCurrentUserPreferencesResponse
|
|
@@ -7628,7 +7485,7 @@ export type CreateCurrentUserPreferencesResponse = Message<"raystack.frontier.v1
|
|
|
7628
7485
|
* Use `create(CreateCurrentUserPreferencesResponseSchema)` to create a new message.
|
|
7629
7486
|
*/
|
|
7630
7487
|
export const CreateCurrentUserPreferencesResponseSchema: GenMessage<CreateCurrentUserPreferencesResponse> = /*@__PURE__*/
|
|
7631
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
7488
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 342);
|
|
7632
7489
|
|
|
7633
7490
|
/**
|
|
7634
7491
|
* @generated from message raystack.frontier.v1beta1.ListCurrentUserPreferencesRequest
|
|
@@ -7641,7 +7498,7 @@ export type ListCurrentUserPreferencesRequest = Message<"raystack.frontier.v1bet
|
|
|
7641
7498
|
* Use `create(ListCurrentUserPreferencesRequestSchema)` to create a new message.
|
|
7642
7499
|
*/
|
|
7643
7500
|
export const ListCurrentUserPreferencesRequestSchema: GenMessage<ListCurrentUserPreferencesRequest> = /*@__PURE__*/
|
|
7644
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
7501
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 343);
|
|
7645
7502
|
|
|
7646
7503
|
/**
|
|
7647
7504
|
* @generated from message raystack.frontier.v1beta1.ListCurrentUserPreferencesResponse
|
|
@@ -7658,7 +7515,7 @@ export type ListCurrentUserPreferencesResponse = Message<"raystack.frontier.v1be
|
|
|
7658
7515
|
* Use `create(ListCurrentUserPreferencesResponseSchema)` to create a new message.
|
|
7659
7516
|
*/
|
|
7660
7517
|
export const ListCurrentUserPreferencesResponseSchema: GenMessage<ListCurrentUserPreferencesResponse> = /*@__PURE__*/
|
|
7661
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
7518
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 344);
|
|
7662
7519
|
|
|
7663
7520
|
/**
|
|
7664
7521
|
* @generated from message raystack.frontier.v1beta1.BillingWebhookCallbackRequest
|
|
@@ -7680,7 +7537,7 @@ export type BillingWebhookCallbackRequest = Message<"raystack.frontier.v1beta1.B
|
|
|
7680
7537
|
* Use `create(BillingWebhookCallbackRequestSchema)` to create a new message.
|
|
7681
7538
|
*/
|
|
7682
7539
|
export const BillingWebhookCallbackRequestSchema: GenMessage<BillingWebhookCallbackRequest> = /*@__PURE__*/
|
|
7683
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
7540
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 345);
|
|
7684
7541
|
|
|
7685
7542
|
/**
|
|
7686
7543
|
* @generated from message raystack.frontier.v1beta1.BillingWebhookCallbackResponse
|
|
@@ -7693,7 +7550,7 @@ export type BillingWebhookCallbackResponse = Message<"raystack.frontier.v1beta1.
|
|
|
7693
7550
|
* Use `create(BillingWebhookCallbackResponseSchema)` to create a new message.
|
|
7694
7551
|
*/
|
|
7695
7552
|
export const BillingWebhookCallbackResponseSchema: GenMessage<BillingWebhookCallbackResponse> = /*@__PURE__*/
|
|
7696
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
7553
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 346);
|
|
7697
7554
|
|
|
7698
7555
|
/**
|
|
7699
7556
|
* @generated from message raystack.frontier.v1beta1.CreateProspectPublicRequest
|
|
@@ -7735,7 +7592,7 @@ export type CreateProspectPublicRequest = Message<"raystack.frontier.v1beta1.Cre
|
|
|
7735
7592
|
* Use `create(CreateProspectPublicRequestSchema)` to create a new message.
|
|
7736
7593
|
*/
|
|
7737
7594
|
export const CreateProspectPublicRequestSchema: GenMessage<CreateProspectPublicRequest> = /*@__PURE__*/
|
|
7738
|
-
messageDesc(file_raystack_frontier_v1beta1_frontier,
|
|
7595
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 347);
|
|
7739
7596
|
|
|
7740
7597
|
/**
|
|
7741
7598
|
* @generated from message raystack.frontier.v1beta1.CreateProspectPublicResponse
|
|
@@ -7748,6 +7605,182 @@ export type CreateProspectPublicResponse = Message<"raystack.frontier.v1beta1.Cr
|
|
|
7748
7605
|
* Use `create(CreateProspectPublicResponseSchema)` to create a new message.
|
|
7749
7606
|
*/
|
|
7750
7607
|
export const CreateProspectPublicResponseSchema: GenMessage<CreateProspectPublicResponse> = /*@__PURE__*/
|
|
7608
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 348);
|
|
7609
|
+
|
|
7610
|
+
/**
|
|
7611
|
+
* @generated from message raystack.frontier.v1beta1.ListSessionsRequest
|
|
7612
|
+
*/
|
|
7613
|
+
export type ListSessionsRequest = Message<"raystack.frontier.v1beta1.ListSessionsRequest"> & {
|
|
7614
|
+
};
|
|
7615
|
+
|
|
7616
|
+
/**
|
|
7617
|
+
* Describes the message raystack.frontier.v1beta1.ListSessionsRequest.
|
|
7618
|
+
* Use `create(ListSessionsRequestSchema)` to create a new message.
|
|
7619
|
+
*/
|
|
7620
|
+
export const ListSessionsRequestSchema: GenMessage<ListSessionsRequest> = /*@__PURE__*/
|
|
7621
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 349);
|
|
7622
|
+
|
|
7623
|
+
/**
|
|
7624
|
+
* @generated from message raystack.frontier.v1beta1.ListSessionsResponse
|
|
7625
|
+
*/
|
|
7626
|
+
export type ListSessionsResponse = Message<"raystack.frontier.v1beta1.ListSessionsResponse"> & {
|
|
7627
|
+
/**
|
|
7628
|
+
* @generated from field: repeated raystack.frontier.v1beta1.Session sessions = 1;
|
|
7629
|
+
*/
|
|
7630
|
+
sessions: Session[];
|
|
7631
|
+
};
|
|
7632
|
+
|
|
7633
|
+
/**
|
|
7634
|
+
* Describes the message raystack.frontier.v1beta1.ListSessionsResponse.
|
|
7635
|
+
* Use `create(ListSessionsResponseSchema)` to create a new message.
|
|
7636
|
+
*/
|
|
7637
|
+
export const ListSessionsResponseSchema: GenMessage<ListSessionsResponse> = /*@__PURE__*/
|
|
7638
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 350);
|
|
7639
|
+
|
|
7640
|
+
/**
|
|
7641
|
+
* @generated from message raystack.frontier.v1beta1.RevokeSessionRequest
|
|
7642
|
+
*/
|
|
7643
|
+
export type RevokeSessionRequest = Message<"raystack.frontier.v1beta1.RevokeSessionRequest"> & {
|
|
7644
|
+
/**
|
|
7645
|
+
* @generated from field: string session_id = 1;
|
|
7646
|
+
*/
|
|
7647
|
+
sessionId: string;
|
|
7648
|
+
};
|
|
7649
|
+
|
|
7650
|
+
/**
|
|
7651
|
+
* Describes the message raystack.frontier.v1beta1.RevokeSessionRequest.
|
|
7652
|
+
* Use `create(RevokeSessionRequestSchema)` to create a new message.
|
|
7653
|
+
*/
|
|
7654
|
+
export const RevokeSessionRequestSchema: GenMessage<RevokeSessionRequest> = /*@__PURE__*/
|
|
7655
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 351);
|
|
7656
|
+
|
|
7657
|
+
/**
|
|
7658
|
+
* @generated from message raystack.frontier.v1beta1.RevokeSessionResponse
|
|
7659
|
+
*/
|
|
7660
|
+
export type RevokeSessionResponse = Message<"raystack.frontier.v1beta1.RevokeSessionResponse"> & {
|
|
7661
|
+
};
|
|
7662
|
+
|
|
7663
|
+
/**
|
|
7664
|
+
* Describes the message raystack.frontier.v1beta1.RevokeSessionResponse.
|
|
7665
|
+
* Use `create(RevokeSessionResponseSchema)` to create a new message.
|
|
7666
|
+
*/
|
|
7667
|
+
export const RevokeSessionResponseSchema: GenMessage<RevokeSessionResponse> = /*@__PURE__*/
|
|
7668
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 352);
|
|
7669
|
+
|
|
7670
|
+
/**
|
|
7671
|
+
* @generated from message raystack.frontier.v1beta1.PingUserSessionRequest
|
|
7672
|
+
*/
|
|
7673
|
+
export type PingUserSessionRequest = Message<"raystack.frontier.v1beta1.PingUserSessionRequest"> & {
|
|
7674
|
+
};
|
|
7675
|
+
|
|
7676
|
+
/**
|
|
7677
|
+
* Describes the message raystack.frontier.v1beta1.PingUserSessionRequest.
|
|
7678
|
+
* Use `create(PingUserSessionRequestSchema)` to create a new message.
|
|
7679
|
+
*/
|
|
7680
|
+
export const PingUserSessionRequestSchema: GenMessage<PingUserSessionRequest> = /*@__PURE__*/
|
|
7681
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 353);
|
|
7682
|
+
|
|
7683
|
+
/**
|
|
7684
|
+
* @generated from message raystack.frontier.v1beta1.PingUserSessionResponse
|
|
7685
|
+
*/
|
|
7686
|
+
export type PingUserSessionResponse = Message<"raystack.frontier.v1beta1.PingUserSessionResponse"> & {
|
|
7687
|
+
/**
|
|
7688
|
+
* @generated from field: raystack.frontier.v1beta1.Session.Meta metadata = 1;
|
|
7689
|
+
*/
|
|
7690
|
+
metadata?: Session_Meta;
|
|
7691
|
+
};
|
|
7692
|
+
|
|
7693
|
+
/**
|
|
7694
|
+
* Describes the message raystack.frontier.v1beta1.PingUserSessionResponse.
|
|
7695
|
+
* Use `create(PingUserSessionResponseSchema)` to create a new message.
|
|
7696
|
+
*/
|
|
7697
|
+
export const PingUserSessionResponseSchema: GenMessage<PingUserSessionResponse> = /*@__PURE__*/
|
|
7698
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 354);
|
|
7699
|
+
|
|
7700
|
+
/**
|
|
7701
|
+
* @generated from message raystack.frontier.v1beta1.CreateAuditRecordRequest
|
|
7702
|
+
*/
|
|
7703
|
+
export type CreateAuditRecordRequest = Message<"raystack.frontier.v1beta1.CreateAuditRecordRequest"> & {
|
|
7704
|
+
/**
|
|
7705
|
+
* @generated from field: raystack.frontier.v1beta1.AuditRecordActor actor = 1;
|
|
7706
|
+
*/
|
|
7707
|
+
actor?: AuditRecordActor;
|
|
7708
|
+
|
|
7709
|
+
/**
|
|
7710
|
+
* @generated from field: string event = 2;
|
|
7711
|
+
*/
|
|
7712
|
+
event: string;
|
|
7713
|
+
|
|
7714
|
+
/**
|
|
7715
|
+
* Base resource on which this change happened
|
|
7716
|
+
*
|
|
7717
|
+
* @generated from field: raystack.frontier.v1beta1.AuditRecordResource resource = 3;
|
|
7718
|
+
*/
|
|
7719
|
+
resource?: AuditRecordResource;
|
|
7720
|
+
|
|
7721
|
+
/**
|
|
7722
|
+
* Related resource info (optional)
|
|
7723
|
+
*
|
|
7724
|
+
* @generated from field: raystack.frontier.v1beta1.AuditRecordTarget target = 4;
|
|
7725
|
+
*/
|
|
7726
|
+
target?: AuditRecordTarget;
|
|
7727
|
+
|
|
7728
|
+
/**
|
|
7729
|
+
* When the event occurred
|
|
7730
|
+
*
|
|
7731
|
+
* @generated from field: google.protobuf.Timestamp occurred_at = 5;
|
|
7732
|
+
*/
|
|
7733
|
+
occurredAt?: Timestamp;
|
|
7734
|
+
|
|
7735
|
+
/**
|
|
7736
|
+
* @generated from field: string org_id = 6;
|
|
7737
|
+
*/
|
|
7738
|
+
orgId: string;
|
|
7739
|
+
|
|
7740
|
+
/**
|
|
7741
|
+
* Request ID for tracing
|
|
7742
|
+
*
|
|
7743
|
+
* @generated from field: string request_id = 7;
|
|
7744
|
+
*/
|
|
7745
|
+
requestId: string;
|
|
7746
|
+
|
|
7747
|
+
/**
|
|
7748
|
+
* Flexible metadata field for any additional data including reason, changes, etc.
|
|
7749
|
+
*
|
|
7750
|
+
* @generated from field: google.protobuf.Struct metadata = 8;
|
|
7751
|
+
*/
|
|
7752
|
+
metadata?: JsonObject;
|
|
7753
|
+
|
|
7754
|
+
/**
|
|
7755
|
+
* Idempotency key to prevent duplicate audit records. Can be used for storing external id.
|
|
7756
|
+
*
|
|
7757
|
+
* @generated from field: string idempotency_key = 9;
|
|
7758
|
+
*/
|
|
7759
|
+
idempotencyKey: string;
|
|
7760
|
+
};
|
|
7761
|
+
|
|
7762
|
+
/**
|
|
7763
|
+
* Describes the message raystack.frontier.v1beta1.CreateAuditRecordRequest.
|
|
7764
|
+
* Use `create(CreateAuditRecordRequestSchema)` to create a new message.
|
|
7765
|
+
*/
|
|
7766
|
+
export const CreateAuditRecordRequestSchema: GenMessage<CreateAuditRecordRequest> = /*@__PURE__*/
|
|
7767
|
+
messageDesc(file_raystack_frontier_v1beta1_frontier, 355);
|
|
7768
|
+
|
|
7769
|
+
/**
|
|
7770
|
+
* @generated from message raystack.frontier.v1beta1.CreateAuditRecordResponse
|
|
7771
|
+
*/
|
|
7772
|
+
export type CreateAuditRecordResponse = Message<"raystack.frontier.v1beta1.CreateAuditRecordResponse"> & {
|
|
7773
|
+
/**
|
|
7774
|
+
* @generated from field: raystack.frontier.v1beta1.AuditRecord audit_record = 1;
|
|
7775
|
+
*/
|
|
7776
|
+
auditRecord?: AuditRecord;
|
|
7777
|
+
};
|
|
7778
|
+
|
|
7779
|
+
/**
|
|
7780
|
+
* Describes the message raystack.frontier.v1beta1.CreateAuditRecordResponse.
|
|
7781
|
+
* Use `create(CreateAuditRecordResponseSchema)` to create a new message.
|
|
7782
|
+
*/
|
|
7783
|
+
export const CreateAuditRecordResponseSchema: GenMessage<CreateAuditRecordResponse> = /*@__PURE__*/
|
|
7751
7784
|
messageDesc(file_raystack_frontier_v1beta1_frontier, 356);
|
|
7752
7785
|
|
|
7753
7786
|
/**
|
|
@@ -8614,6 +8647,36 @@ export const FrontierService: GenService<{
|
|
|
8614
8647
|
input: typeof GetJWKsRequestSchema;
|
|
8615
8648
|
output: typeof GetJWKsResponseSchema;
|
|
8616
8649
|
},
|
|
8650
|
+
/**
|
|
8651
|
+
* Returns a list of all active sessions for the current authenticated user.
|
|
8652
|
+
*
|
|
8653
|
+
* @generated from rpc raystack.frontier.v1beta1.FrontierService.ListSessions
|
|
8654
|
+
*/
|
|
8655
|
+
listSessions: {
|
|
8656
|
+
methodKind: "unary";
|
|
8657
|
+
input: typeof ListSessionsRequestSchema;
|
|
8658
|
+
output: typeof ListSessionsResponseSchema;
|
|
8659
|
+
},
|
|
8660
|
+
/**
|
|
8661
|
+
* Revoke a specific session for the current authenticated user.
|
|
8662
|
+
*
|
|
8663
|
+
* @generated from rpc raystack.frontier.v1beta1.FrontierService.RevokeSession
|
|
8664
|
+
*/
|
|
8665
|
+
revokeSession: {
|
|
8666
|
+
methodKind: "unary";
|
|
8667
|
+
input: typeof RevokeSessionRequestSchema;
|
|
8668
|
+
output: typeof RevokeSessionResponseSchema;
|
|
8669
|
+
},
|
|
8670
|
+
/**
|
|
8671
|
+
* Ping user current active session.
|
|
8672
|
+
*
|
|
8673
|
+
* @generated from rpc raystack.frontier.v1beta1.FrontierService.PingUserSession
|
|
8674
|
+
*/
|
|
8675
|
+
pingUserSession: {
|
|
8676
|
+
methodKind: "unary";
|
|
8677
|
+
input: typeof PingUserSessionRequestSchema;
|
|
8678
|
+
output: typeof PingUserSessionResponseSchema;
|
|
8679
|
+
},
|
|
8617
8680
|
/**
|
|
8618
8681
|
* @generated from rpc raystack.frontier.v1beta1.FrontierService.ListAuthStrategies
|
|
8619
8682
|
*/
|
|
@@ -8696,32 +8759,6 @@ export const FrontierService: GenService<{
|
|
|
8696
8759
|
input: typeof DeleteMetaSchemaRequestSchema;
|
|
8697
8760
|
output: typeof DeleteMetaSchemaResponseSchema;
|
|
8698
8761
|
},
|
|
8699
|
-
/**
|
|
8700
|
-
* Audit logs
|
|
8701
|
-
*
|
|
8702
|
-
* @generated from rpc raystack.frontier.v1beta1.FrontierService.ListOrganizationAuditLogs
|
|
8703
|
-
*/
|
|
8704
|
-
listOrganizationAuditLogs: {
|
|
8705
|
-
methodKind: "unary";
|
|
8706
|
-
input: typeof ListOrganizationAuditLogsRequestSchema;
|
|
8707
|
-
output: typeof ListOrganizationAuditLogsResponseSchema;
|
|
8708
|
-
},
|
|
8709
|
-
/**
|
|
8710
|
-
* @generated from rpc raystack.frontier.v1beta1.FrontierService.CreateOrganizationAuditLogs
|
|
8711
|
-
*/
|
|
8712
|
-
createOrganizationAuditLogs: {
|
|
8713
|
-
methodKind: "unary";
|
|
8714
|
-
input: typeof CreateOrganizationAuditLogsRequestSchema;
|
|
8715
|
-
output: typeof CreateOrganizationAuditLogsResponseSchema;
|
|
8716
|
-
},
|
|
8717
|
-
/**
|
|
8718
|
-
* @generated from rpc raystack.frontier.v1beta1.FrontierService.GetOrganizationAuditLog
|
|
8719
|
-
*/
|
|
8720
|
-
getOrganizationAuditLog: {
|
|
8721
|
-
methodKind: "unary";
|
|
8722
|
-
input: typeof GetOrganizationAuditLogRequestSchema;
|
|
8723
|
-
output: typeof GetOrganizationAuditLogResponseSchema;
|
|
8724
|
-
},
|
|
8725
8762
|
/**
|
|
8726
8763
|
* DescribePreferences list down all the supported preferences of entities
|
|
8727
8764
|
*
|
|
@@ -9144,6 +9181,16 @@ export const FrontierService: GenService<{
|
|
|
9144
9181
|
input: typeof CreateProspectPublicRequestSchema;
|
|
9145
9182
|
output: typeof CreateProspectPublicResponseSchema;
|
|
9146
9183
|
},
|
|
9184
|
+
/**
|
|
9185
|
+
* Audit Records
|
|
9186
|
+
*
|
|
9187
|
+
* @generated from rpc raystack.frontier.v1beta1.FrontierService.CreateAuditRecord
|
|
9188
|
+
*/
|
|
9189
|
+
createAuditRecord: {
|
|
9190
|
+
methodKind: "unary";
|
|
9191
|
+
input: typeof CreateAuditRecordRequestSchema;
|
|
9192
|
+
output: typeof CreateAuditRecordResponseSchema;
|
|
9193
|
+
},
|
|
9147
9194
|
}> = /*@__PURE__*/
|
|
9148
9195
|
serviceDesc(file_raystack_frontier_v1beta1_frontier, 0);
|
|
9149
9196
|
|