@raystack/proton 0.1.0-00c55b6ba2a3f425eca16ca3d36e172952e4824d → 0.1.0-1723f5dc852847c0ea911cb2a1b378005696d2ca

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@raystack/proton",
3
- "version": "0.1.0-00c55b6ba2a3f425eca16ca3d36e172952e4824d",
3
+ "version": "0.1.0-1723f5dc852847c0ea911cb2a1b378005696d2ca",
4
4
  "description": "TypeScript/JavaScript client library for Raystack APIs generated from Protocol Buffer definitions",
5
5
  "type": "module",
6
6
  "main": "index.js",
@@ -261,3 +261,9 @@ export const listUserSessions: typeof AdminService["method"]["listUserSessions"]
261
261
  * @generated from rpc raystack.frontier.v1beta1.AdminService.RevokeUserSession
262
262
  */
263
263
  export const revokeUserSession: typeof AdminService["method"]["revokeUserSession"];
264
+ /**
265
+ * Audit Records (Admin Only)
266
+ *
267
+ * @generated from rpc raystack.frontier.v1beta1.AdminService.ListAuditRecords
268
+ */
269
+ export const listAuditRecords: typeof AdminService["method"]["listAuditRecords"];
@@ -314,3 +314,10 @@ export const listUserSessions = AdminService.method.listUserSessions;
314
314
  * @generated from rpc raystack.frontier.v1beta1.AdminService.RevokeUserSession
315
315
  */
316
316
  export const revokeUserSession = AdminService.method.revokeUserSession;
317
+
318
+ /**
319
+ * Audit Records (Admin Only)
320
+ *
321
+ * @generated from rpc raystack.frontier.v1beta1.AdminService.ListAuditRecords
322
+ */
323
+ export const listAuditRecords = AdminService.method.listAuditRecords;
@@ -314,3 +314,10 @@ export const listUserSessions = AdminService.method.listUserSessions;
314
314
  * @generated from rpc raystack.frontier.v1beta1.AdminService.RevokeUserSession
315
315
  */
316
316
  export const revokeUserSession = AdminService.method.revokeUserSession;
317
+
318
+ /**
319
+ * Audit Records (Admin Only)
320
+ *
321
+ * @generated from rpc raystack.frontier.v1beta1.AdminService.ListAuditRecords
322
+ */
323
+ export const listAuditRecords = AdminService.method.listAuditRecords;
@@ -4,7 +4,7 @@
4
4
 
5
5
  import type { GenFile, GenMessage, GenService } from "@bufbuild/protobuf/codegenv2";
6
6
  import type { JsonObject, Message } from "@bufbuild/protobuf";
7
- import type { BillingAccount, CheckoutProductBody, CheckoutSubscriptionBody, ExportOrganizationsRequestSchema, Group, Invoice, Organization, OrganizationKyc, Permission, Preference, PreferenceRequestBody, Product, Project, Prospect, Prospect_Status, Relation, Resource, Role, RoleRequestBody, RQLQueryGroupResponse, RQLQueryPaginationResponse, RQLRequest, ServiceUser, Session, Subscription, User, Webhook } from "./models_pb";
7
+ import type { AuditRecord, BillingAccount, CheckoutProductBody, CheckoutSubscriptionBody, ExportOrganizationsRequestSchema, Group, Invoice, Organization, OrganizationKyc, Permission, Preference, PreferenceRequestBody, Product, Project, Prospect, Prospect_Status, Relation, Resource, Role, RoleRequestBody, RQLQueryGroupResponse, RQLQueryPaginationResponse, RQLRequest, ServiceUser, Session, Subscription, User, Webhook } from "./models_pb";
8
8
  import type { Timestamp } from "@bufbuild/protobuf/wkt";
9
9
  import type { HttpBodySchema } from "../../../google/api/httpbody_pb";
10
10
 
@@ -3014,6 +3014,48 @@ export declare type RevokeUserSessionResponse = Message<"raystack.frontier.v1bet
3014
3014
  */
3015
3015
  export declare const RevokeUserSessionResponseSchema: GenMessage<RevokeUserSessionResponse>;
3016
3016
 
3017
+ /**
3018
+ * @generated from message raystack.frontier.v1beta1.ListAuditRecordsRequest
3019
+ */
3020
+ export declare type ListAuditRecordsRequest = Message<"raystack.frontier.v1beta1.ListAuditRecordsRequest"> & {
3021
+ /**
3022
+ * @generated from field: raystack.frontier.v1beta1.RQLRequest query = 1;
3023
+ */
3024
+ query?: RQLRequest;
3025
+ };
3026
+
3027
+ /**
3028
+ * Describes the message raystack.frontier.v1beta1.ListAuditRecordsRequest.
3029
+ * Use `create(ListAuditRecordsRequestSchema)` to create a new message.
3030
+ */
3031
+ export declare const ListAuditRecordsRequestSchema: GenMessage<ListAuditRecordsRequest>;
3032
+
3033
+ /**
3034
+ * @generated from message raystack.frontier.v1beta1.ListAuditRecordsResponse
3035
+ */
3036
+ export declare type ListAuditRecordsResponse = Message<"raystack.frontier.v1beta1.ListAuditRecordsResponse"> & {
3037
+ /**
3038
+ * @generated from field: repeated raystack.frontier.v1beta1.AuditRecord audit_records = 1;
3039
+ */
3040
+ auditRecords: AuditRecord[];
3041
+
3042
+ /**
3043
+ * @generated from field: raystack.frontier.v1beta1.RQLQueryPaginationResponse pagination = 2;
3044
+ */
3045
+ pagination?: RQLQueryPaginationResponse;
3046
+
3047
+ /**
3048
+ * @generated from field: raystack.frontier.v1beta1.RQLQueryGroupResponse group = 3;
3049
+ */
3050
+ group?: RQLQueryGroupResponse;
3051
+ };
3052
+
3053
+ /**
3054
+ * Describes the message raystack.frontier.v1beta1.ListAuditRecordsResponse.
3055
+ * Use `create(ListAuditRecordsResponseSchema)` to create a new message.
3056
+ */
3057
+ export declare const ListAuditRecordsResponseSchema: GenMessage<ListAuditRecordsResponse>;
3058
+
3017
3059
  /**
3018
3060
  * @generated from service raystack.frontier.v1beta1.AdminService
3019
3061
  */
@@ -3546,5 +3588,15 @@ export declare const AdminService: GenService<{
3546
3588
  input: typeof RevokeUserSessionRequestSchema;
3547
3589
  output: typeof RevokeUserSessionResponseSchema;
3548
3590
  },
3591
+ /**
3592
+ * Audit Records (Admin Only)
3593
+ *
3594
+ * @generated from rpc raystack.frontier.v1beta1.AdminService.ListAuditRecords
3595
+ */
3596
+ listAuditRecords: {
3597
+ methodKind: "unary";
3598
+ input: typeof ListAuditRecordsRequestSchema;
3599
+ output: typeof ListAuditRecordsResponseSchema;
3600
+ },
3549
3601
  }>;
3550
3602
 
@@ -15,7 +15,7 @@ import { file_validate_validate } from "../../../validate/validate_pb";
15
15
  * Describes the file raystack/frontier/v1beta1/admin.proto.
16
16
  */
17
17
  export const file_raystack_frontier_v1beta1_admin = /*@__PURE__*/
18
- fileDesc("CiVyYXlzdGFjay9mcm9udGllci92MWJldGExL2FkbWluLnByb3RvEhlyYXlzdGFjay5mcm9udGllci52MWJldGExIuADChNMaXN0QWxsVXNlcnNSZXF1ZXN0EmMKCXBhZ2Vfc2l6ZRgBIAEoBUJQkkFEMkJUaGUgbWF4aW11bSBudW1iZXIgb2YgdXNlcnMgdG8gcmV0dXJuIHBlciBwYWdlLiBUaGUgZGVmYXVsdCBpcyA1MC76QgYaBCgBQAESTAoIcGFnZV9udW0YAiABKAVCOpJBLjIsVGhlIHBhZ2UgbnVtYmVyIHRvIHJldHVybi4gVGhlIGRlZmF1bHQgaXMgMS76QgYaBCgBQAESXwoHa2V5d29yZBgDIAEoCUJOkkFLMklUaGUga2V5d29yZCB0byBzZWFyY2ggZm9yLiBJdCBjYW4gYmUgYSB1c2VyJ3MgbmFtZSwgZW1haWwsbWV0YWRhdGEgb3IgaWQuEjYKBm9yZ19pZBgEIAEoCUImkkEjMiFUaGUgb3JnYW5pemF0aW9uIGlkIHRvIGZpbHRlciBieS4SMQoIZ3JvdXBfaWQYBSABKAlCH5JBHDIaVGhlIGdyb3VwIGlkIHRvIGZpbHRlciBieS4SSgoFc3RhdGUYBiABKAlCO5JBODI2VGhlIHN0YXRlIHRvIGZpbHRlciBieS4gSXQgY2FuIGJlIGVuYWJsZWQgb3IgZGlzYWJsZWQuIlUKFExpc3RBbGxVc2Vyc1Jlc3BvbnNlEg0KBWNvdW50GAEgASgFEi4KBXVzZXJzGAIgAygLMh8ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Vc2VyIhwKGkxpc3RBbGxTZXJ2aWNlVXNlcnNSZXF1ZXN0IlwKG0xpc3RBbGxTZXJ2aWNlVXNlcnNSZXNwb25zZRI9Cg1zZXJ2aWNlX3VzZXJzGAEgAygLMiYucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5TZXJ2aWNlVXNlciKdAQoRTGlzdEdyb3Vwc1JlcXVlc3QSNgoGb3JnX2lkGAIgASgJQiaSQSMyIVRoZSBvcmdhbml6YXRpb24gaWQgdG8gZmlsdGVyIGJ5LhJKCgVzdGF0ZRgDIAEoCUI7kkE4MjZUaGUgc3RhdGUgdG8gZmlsdGVyIGJ5LiBJdCBjYW4gYmUgZW5hYmxlZCBvciBkaXNhYmxlZC5KBAgBEAIiRgoSTGlzdEdyb3Vwc1Jlc3BvbnNlEjAKBmdyb3VwcxgBIAMoCzIgLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR3JvdXAi1QIKG0xpc3RBbGxPcmdhbml6YXRpb25zUmVxdWVzdBIvCgd1c2VyX2lkGAEgASgJQh6SQRsyGVRoZSB1c2VyIGlkIHRvIGZpbHRlciBieS4SSgoFc3RhdGUYAiABKAlCO5JBODI2VGhlIHN0YXRlIHRvIGZpbHRlciBieS4gSXQgY2FuIGJlIGVuYWJsZWQgb3IgZGlzYWJsZWQuEmsKCXBhZ2Vfc2l6ZRgDIAEoBUJYkkFMMkpUaGUgbWF4aW11bSBudW1iZXIgb2Ygb3JnYW5pemF0aW9ucyB0byByZXR1cm4gcGVyIHBhZ2UuIFRoZSBkZWZhdWx0IGlzIDUwLvpCBhoEKAFAARJMCghwYWdlX251bRgEIAEoBUI6kkEuMixUaGUgcGFnZSBudW1iZXIgdG8gcmV0dXJuLiBUaGUgZGVmYXVsdCBpcyAxLvpCBhoEKAFAASKTAQocTGlzdEFsbE9yZ2FuaXphdGlvbnNSZXNwb25zZRI+Cg1vcmdhbml6YXRpb25zGAEgAygLMicucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Pcmdhbml6YXRpb24SMwoFY291bnQYAiABKAVCJJJBITIfVG90YWwgbnVtYmVyIG9mIHJlY29yZHMgcHJlc2VudCKZAQoTTGlzdFByb2plY3RzUmVxdWVzdBI2CgZvcmdfaWQYASABKAlCJpJBIzIhVGhlIG9yZ2FuaXphdGlvbiBpZCB0byBmaWx0ZXIgYnkuEkoKBXN0YXRlGAIgASgJQjuSQTgyNlRoZSBzdGF0ZSB0byBmaWx0ZXIgYnkuIEl0IGNhbiBiZSBlbmFibGVkIG9yIGRpc2FibGVkLiJMChRMaXN0UHJvamVjdHNSZXNwb25zZRI0Cghwcm9qZWN0cxgBIAMoCzIiLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUHJvamVjdCJ2ChRMaXN0UmVsYXRpb25zUmVxdWVzdBIvCgdzdWJqZWN0GAEgASgJQh6SQRsyGVRoZSBzdWJqZWN0IHRvIGZpbHRlciBieS4SLQoGb2JqZWN0GAIgASgJQh2SQRoyGFRoZSBvYmplY3QgdG8gZmlsdGVyIGJ5LiJPChVMaXN0UmVsYXRpb25zUmVzcG9uc2USNgoJcmVsYXRpb25zGAEgAygLMiMucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5SZWxhdGlvbiL7AQoUTGlzdFJlc291cmNlc1JlcXVlc3QSLwoHdXNlcl9pZBgBIAEoCUIekkEbMhlUaGUgdXNlciBpZCB0byBmaWx0ZXIgYnkuEjUKCnByb2plY3RfaWQYAiABKAlCIZJBHjIcVGhlIHByb2plY3QgaWQgdG8gZmlsdGVyIGJ5LhI/Cg9vcmdhbml6YXRpb25faWQYAyABKAlCJpJBIzIhVGhlIG9yZ2FuaXphdGlvbiBpZCB0byBmaWx0ZXIgYnkuEjoKCW5hbWVzcGFjZRgEIAEoCUInkkEdMhtUaGUgbmFtZXNwYWNlIHRvIGZpbHRlciBieS76QgRyAhADIk8KFUxpc3RSZXNvdXJjZXNSZXNwb25zZRI2CglyZXNvdXJjZXMYASADKAsyIy5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJlc291cmNlIk0KEUNyZWF0ZVJvbGVSZXF1ZXN0EjgKBGJvZHkYASABKAsyKi5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJvbGVSZXF1ZXN0Qm9keSJDChJDcmVhdGVSb2xlUmVzcG9uc2USLQoEcm9sZRgBIAEoCzIfLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUm9sZSJ6ChFVcGRhdGVSb2xlUmVxdWVzdBIrCgJpZBgBIAEoCUIfkkEYMhZUaGUgcm9sZSBpZCB0byB1cGRhdGUu4kEBAhI4CgRib2R5GAIgASgLMioucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Sb2xlUmVxdWVzdEJvZHkiQwoSVXBkYXRlUm9sZVJlc3BvbnNlEi0KBHJvbGUYASABKAsyHy5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJvbGUiQAoRRGVsZXRlUm9sZVJlcXVlc3QSKwoCaWQYASABKAlCH5JBGDIWVGhlIHJvbGUgaWQgdG8gZGVsZXRlLuJBAQIiFAoSRGVsZXRlUm9sZVJlc3BvbnNlIr4GChVQZXJtaXNzaW9uUmVxdWVzdEJvZHkSjQEKBG5hbWUYASABKAlCfxgBkkF6MnhUaGUgbmFtZSBvZiB0aGUgcGVybWlzc2lvbi4gSXQgc2hvdWxkIGJlIHVuaXF1ZSBhY3Jvc3MgYSBGcm9udGllciBpbnN0YW5jZSBhbmQgY2FuIGNvbnRhaW4gb25seSBhbHBoYW51bWVyaWMgY2hhcmFjdGVycy4SjwEKCW5hbWVzcGFjZRgCIAEoCUJ8GAGSQXcydVRoZSBuYW1lc3BhY2Ugb2YgdGhlIHBlcm1pc3Npb24uIFRoZSBuYW1lc3BhY2Ugc2hvdWxkIGJlIGluIHNlcnZpY2UvcmVzb3VyY2UgZm9ybWF0Ljxici8+KkV4YW1wbGU6KmBjb21wdXRlL2d1YXJkaWFuYBJyCghtZXRhZGF0YRgDIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RCR5JBRDJCVGhlIG1ldGFkYXRhIG9iamVjdCBmb3IgcGVybWlzc2lvbnMgdGhhdCBjYW4gaG9sZCBrZXkgdmFsdWUgcGFpcnMuEpIBCgV0aXRsZRgEIAEoCUKCAZJBfzJ9VGhlIHRpdGxlIGNhbiBjb250YWluIGFueSBVVEYtOCBjaGFyYWN0ZXIsIHVzZWQgdG8gcHJvdmlkZSBhIGh1bWFuLXJlYWRhYmxlIG5hbWUgZm9yIHRoZSBwZXJtaXNzaW9ucy4gQ2FuIGFsc28gYmUgbGVmdCBlbXB0eS4S+QEKA2tleRgFIAEoCULrAZJB5wEyzAFQZXJtaXNzaW9uIHBhdGgga2V5IGlzIGNvbXBvc2VkIG9mIHRocmVlIHBhcnRzLCAnc2VydmljZS5yZXNvdXJjZS52ZXJiJy4gV2hlcmUgJ3NlcnZpY2UucmVzb3VyY2UnIHdvcmtzIGFzIGEgbmFtZXNwYWNlIGZvciB0aGUgJ3ZlcmInLiBOYW1lc3BhY2UgbmFtZSBjYW5ub3QgYmUgYGFwcGAgYXMgaXQncyByZXNlcnZlZCBmb3IgY29yZSBwZXJtaXNzaW9ucy5KFiJjb21wdXRlLmluc3RhbmNlLmdldCIiWwoXQ3JlYXRlUGVybWlzc2lvblJlcXVlc3QSQAoGYm9kaWVzGAEgAygLMjAucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5QZXJtaXNzaW9uUmVxdWVzdEJvZHkiVgoYQ3JlYXRlUGVybWlzc2lvblJlc3BvbnNlEjoKC3Blcm1pc3Npb25zGAEgAygLMiUucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5QZXJtaXNzaW9uImsKF1VwZGF0ZVBlcm1pc3Npb25SZXF1ZXN0EhAKAmlkGAEgASgJQgTiQQECEj4KBGJvZHkYAiABKAsyMC5yYXlzdGFjay5mcm9udGllci52MWJldGExLlBlcm1pc3Npb25SZXF1ZXN0Qm9keSJVChhVcGRhdGVQZXJtaXNzaW9uUmVzcG9uc2USOQoKcGVybWlzc2lvbhgBIAEoCzIlLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUGVybWlzc2lvbiIlChdEZWxldGVQZXJtaXNzaW9uUmVxdWVzdBIKCgJpZBgBIAEoCSIaChhEZWxldGVQZXJtaXNzaW9uUmVzcG9uc2UiGAoWTGlzdFByZWZlcmVuY2VzUmVxdWVzdCJVChdMaXN0UHJlZmVyZW5jZXNSZXNwb25zZRI6CgtwcmVmZXJlbmNlcxgBIAMoCzIlLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUHJlZmVyZW5jZSJhChhDcmVhdGVQcmVmZXJlbmNlc1JlcXVlc3QSRQoLcHJlZmVyZW5jZXMYASADKAsyMC5yYXlzdGFjay5mcm9udGllci52MWJldGExLlByZWZlcmVuY2VSZXF1ZXN0Qm9keSJWChlDcmVhdGVQcmVmZXJlbmNlc1Jlc3BvbnNlEjkKCnByZWZlcmVuY2UYASADKAsyJS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlByZWZlcmVuY2Ui1wUKJ0NoZWNrRmVkZXJhdGVkUmVzb3VyY2VQZXJtaXNzaW9uUmVxdWVzdBJWCgdzdWJqZWN0GAEgASgJQkWSQT4yPHRoZSBzdWJqZWN0IHRvIGNoZWNrLiA8YnIvPiAqRXhhbXBsZToqIGB1c2VyOi4udXVpZG9mdXNlci4uYOJBAQISxAMKCHJlc291cmNlGAIgASgJQrEDkkGpAzKmA2BuYW1lc3BhY2U6dXVpZGAgb3IgYG5hbWVzcGFjZTpuYW1lYCBvZiB0aGUgb3JnIG9yIHByb2plY3QsIGFuZCBgbmFtZXNwYWNlOnVybmAgb2YgYSByZXNvdXJjZSB1bmRlciBhIHByb2plY3QuIEluIGNhc2Ugb2YgYW4gb3JnL3Byb2plY3QgZWl0aGVyIHByb3ZpZGUgdGhlIGNvbXBsZXRlIG5hbWVzcGFjZSAoYXBwL29yZ2FuaXphdGlvbikgb3IgRnJvbnRpZXIgY2FuIGFsc28gcGFyc2UgYWxpYXNlcyBmb3IgdGhlIHNhbWUgYXMgYG9yZ2Agb3IgYHByb2plY3RgLiA8YnIvPiAqRXhhbXBsZToqIGBvcmdhbml6YXRpb246OTJmNjljM2EtMzM0Yi00ZjI1LTkwYjgtNGQ0ZjNiZTZiODI1YCBvciBgYXBwL3Byb2plY3Q6cHJvamVjdC1uYW1lYCBvciBgY29tcHV0ZS9pbnN0YW5jZTo5MmY2OWMzYS0zMzRiLTRmMjUtOTBiOC00ZDRmM2JlNmI4MjVg4kEBAhKMAQoKcGVybWlzc2lvbhgDIAEoCUJ4kkFZMld0aGUgcGVybWlzc2lvbiBuYW1lIHRvIGNoZWNrLiA8YnIvPiAqRXhhbXBsZToqIGBnZXRgLCBgbGlzdGAsIGBjb21wdXRlLmluc3RhbmNlLmNyZWF0ZWDiQQEC+kIVchMyEV5bQS1aYS16MC05Ll8tXSskIjoKKENoZWNrRmVkZXJhdGVkUmVzb3VyY2VQZXJtaXNzaW9uUmVzcG9uc2USDgoGc3RhdHVzGAEgASgIIvwBChZBZGRQbGF0Zm9ybVVzZXJSZXF1ZXN0EjkKB3VzZXJfaWQYASABKAlCKJJBJTIjVGhlIHVzZXIgaWQgdG8gYWRkIHRvIHRoZSBwbGF0Zm9ybS4SSAoOc2VydmljZXVzZXJfaWQYAiABKAlCMJJBLTIrVGhlIHNlcnZpY2UgdXNlciBpZCB0byBhZGQgdG8gdGhlIHBsYXRmb3JtLhJdCghyZWxhdGlvbhgDIAEoCUJLkkFEMkJUaGUgcmVsYXRpb24gdG8gYWRkIGFzIGluIHRoZSBwbGF0Zm9ybS4gSXQgY2FuIGJlIGFkbWluIG9yIG1lbWJlci7iQQECIhkKF0FkZFBsYXRmb3JtVXNlclJlc3BvbnNlIhoKGExpc3RQbGF0Zm9ybVVzZXJzUmVxdWVzdCKJAQoZTGlzdFBsYXRmb3JtVXNlcnNSZXNwb25zZRIuCgV1c2VycxgBIAMoCzIfLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuVXNlchI8CgxzZXJ2aWNldXNlcnMYAiADKAsyJi5yYXlzdGFjay5mcm9udGllci52MWJldGExLlNlcnZpY2VVc2VyIrIBChlSZW1vdmVQbGF0Zm9ybVVzZXJSZXF1ZXN0EkIKB3VzZXJfaWQYASABKAlCMZJBLjIsVGhlIHVzZXIgaWQgdG8gcmVtb3ZlIGZyb20gdGhlIHRoZSBwbGF0Zm9ybS4SUQoOc2VydmljZXVzZXJfaWQYAiABKAlCOZJBNjI0VGhlIHNlcnZpY2UgdXNlciBpZCB0byByZW1vdmUgZnJvbSB0aGUgdGhlIHBsYXRmb3JtLiIcChpSZW1vdmVQbGF0Zm9ybVVzZXJSZXNwb25zZSLqAQoYRGVsZWdhdGVkQ2hlY2tvdXRSZXF1ZXN0EhcKBm9yZ19pZBgBIAEoCUIH+kIEcgIQAxIfCgpiaWxsaW5nX2lkGAIgASgJQgv6QghyBrABAdABARJOChFzdWJzY3JpcHRpb25fYm9keRgKIAEoCzIzLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ2hlY2tvdXRTdWJzY3JpcHRpb25Cb2R5EkQKDHByb2R1Y3RfYm9keRgLIAEoCzIuLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ2hlY2tvdXRQcm9kdWN0Qm9keSKPAQoZRGVsZWdhdGVkQ2hlY2tvdXRSZXNwb25zZRI9CgxzdWJzY3JpcHRpb24YASABKAsyJy5yYXlzdGFjay5mcm9udGllci52MWJldGExLlN1YnNjcmlwdGlvbhIzCgdwcm9kdWN0GAIgASgLMiIucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Qcm9kdWN0It4BChZMaXN0QWxsSW52b2ljZXNSZXF1ZXN0Eg4KBm9yZ19pZBgBIAEoCRJmCglwYWdlX3NpemUYAiABKAVCU5JBRzJFVGhlIG1heGltdW0gbnVtYmVyIG9mIGludm9pY2VzIHRvIHJldHVybiBwZXIgcGFnZS4gVGhlIGRlZmF1bHQgaXMgNTAu+kIGGgQoAUABEkwKCHBhZ2VfbnVtGAMgASgFQjqSQS4yLFRoZSBwYWdlIG51bWJlciB0byByZXR1cm4uIFRoZSBkZWZhdWx0IGlzIDEu+kIGGgQoAUABIoQBChdMaXN0QWxsSW52b2ljZXNSZXNwb25zZRI0CghpbnZvaWNlcxgBIAMoCzIiLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuSW52b2ljZRIzCgVjb3VudBgCIAEoBUIkkkEhMh9Ub3RhbCBudW1iZXIgb2YgcmVjb3JkcyBwcmVzZW50IhkKF0dlbmVyYXRlSW52b2ljZXNSZXF1ZXN0IhoKGEdlbmVyYXRlSW52b2ljZXNSZXNwb25zZSIvCh1MaXN0QWxsQmlsbGluZ0FjY291bnRzUmVxdWVzdBIOCgZvcmdfaWQYASABKAkiZQoeTGlzdEFsbEJpbGxpbmdBY2NvdW50c1Jlc3BvbnNlEkMKEGJpbGxpbmdfYWNjb3VudHMYASADKAsyKS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkJpbGxpbmdBY2NvdW50IpUBChlSZXZlcnRCaWxsaW5nVXNhZ2VSZXF1ZXN0Eg4KBm9yZ19pZBgBIAEoCRISCgpwcm9qZWN0X2lkGAIgASgJEh8KCmJpbGxpbmdfaWQYAyABKAlCC/pCCHIGsAEB0AEBEhoKCHVzYWdlX2lkGAQgASgJQgj6QgVyA7ABARIXCgZhbW91bnQYBSABKANCB/pCBCICKAAiHAoaUmV2ZXJ0QmlsbGluZ1VzYWdlUmVzcG9uc2UirwIKEldlYmhvb2tSZXF1ZXN0Qm9keRIVCgN1cmwYASABKAlCCPpCBXIDiAEBEhMKC2Rlc2NyaXB0aW9uGAIgASgJEhkKEXN1YnNjcmliZWRfZXZlbnRzGAMgAygJEksKB2hlYWRlcnMYBCADKAsyOi5yYXlzdGFjay5mcm9udGllci52MWJldGExLldlYmhvb2tSZXF1ZXN0Qm9keS5IZWFkZXJzRW50cnkSKgoFc3RhdGUYBSABKAlCG/pCGHIWUgdlbmFibGVkUghkaXNhYmxlZNABARIpCghtZXRhZGF0YRgUIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QaLgoMSGVhZGVyc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEiUwoUQ3JlYXRlV2ViaG9va1JlcXVlc3QSOwoEYm9keRgBIAEoCzItLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuV2ViaG9va1JlcXVlc3RCb2R5IkwKFUNyZWF0ZVdlYmhvb2tSZXNwb25zZRIzCgd3ZWJob29rGAEgASgLMiIucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5XZWJob29rIosBChRVcGRhdGVXZWJob29rUmVxdWVzdBI2CgJpZBgBIAEoCUIqkkEbMhlUaGUgd2ViaG9vayBpZCB0byB1cGRhdGUu4kEBAvpCBXIDsAEBEjsKBGJvZHkYAiABKAsyLS5yYXlzdGFjay5mcm9udGllci52MWJldGExLldlYmhvb2tSZXF1ZXN0Qm9keSJMChVVcGRhdGVXZWJob29rUmVzcG9uc2USMwoHd2ViaG9vaxgBIAEoCzIiLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuV2ViaG9vayJOChREZWxldGVXZWJob29rUmVxdWVzdBI2CgJpZBgBIAEoCUIqkkEbMhlUaGUgd2ViaG9vayBpZCB0byBkZWxldGUu4kEBAvpCBXIDsAEBIhcKFURlbGV0ZVdlYmhvb2tSZXNwb25zZSIVChNMaXN0V2ViaG9va3NSZXF1ZXN0IkwKFExpc3RXZWJob29rc1Jlc3BvbnNlEjQKCHdlYmhvb2tzGAEgAygLMiIucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5XZWJob29rImkKIVVwZGF0ZUJpbGxpbmdBY2NvdW50TGltaXRzUmVxdWVzdBIXCgZvcmdfaWQYASABKAlCB/pCBHICEAMSFwoCaWQYAiABKAlCC/pCCHIGsAEB0AEBEhIKCmNyZWRpdF9taW4YAyABKAMiJAoiVXBkYXRlQmlsbGluZ0FjY291bnRMaW1pdHNSZXNwb25zZSJUCh9HZXRCaWxsaW5nQWNjb3VudERldGFpbHNSZXF1ZXN0EhgKBm9yZ19pZBgBIAEoCUII+kIFcgOwAQESFwoCaWQYAiABKAlCC/pCCHIGsAEB0AEBIksKIEdldEJpbGxpbmdBY2NvdW50RGV0YWlsc1Jlc3BvbnNlEhIKCmNyZWRpdF9taW4YASABKAMSEwoLZHVlX2luX2RheXMYAiABKAMiiQEKIlVwZGF0ZUJpbGxpbmdBY2NvdW50RGV0YWlsc1JlcXVlc3QSGAoGb3JnX2lkGAEgASgJQgj6QgVyA7ABARIXCgJpZBgCIAEoCUIL+kIIcgawAQHQAQESEgoKY3JlZGl0X21pbhgDIAEoAxIcCgtkdWVfaW5fZGF5cxgEIAEoA0IH+kIEIgIoACIlCiNVcGRhdGVCaWxsaW5nQWNjb3VudERldGFpbHNSZXNwb25zZSJJChlTZXRPcmdhbml6YXRpb25LeWNSZXF1ZXN0Eg4KBm9yZ19pZBgBIAEoCRIOCgZzdGF0dXMYAiABKAgSDAoEbGluaxgDIAEoCSJSChpTZWFyY2hPcmdhbml6YXRpb25zUmVxdWVzdBI0CgVxdWVyeRgBIAEoCzIlLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUlFMUmVxdWVzdCJiChpTZXRPcmdhbml6YXRpb25LeWNSZXNwb25zZRJEChBvcmdhbml6YXRpb25fa3ljGAEgASgLMioucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Pcmdhbml6YXRpb25LeWMiHQobTGlzdE9yZ2FuaXphdGlvbnNLeWNSZXF1ZXN0ImUKHExpc3RPcmdhbml6YXRpb25zS3ljUmVzcG9uc2USRQoRb3JnYW5pemF0aW9uc19reWMYASADKAsyKi5yYXlzdGFjay5mcm9udGllci52MWJldGExLk9yZ2FuaXphdGlvbkt5YyK1BQobU2VhcmNoT3JnYW5pemF0aW9uc1Jlc3BvbnNlEmAKDW9yZ2FuaXphdGlvbnMYASADKAsySS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlNlYXJjaE9yZ2FuaXphdGlvbnNSZXNwb25zZS5Pcmdhbml6YXRpb25SZXN1bHQSSQoKcGFnaW5hdGlvbhgCIAEoCzI1LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUlFMUXVlcnlQYWdpbmF0aW9uUmVzcG9uc2USPwoFZ3JvdXAYAyABKAsyMC5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJRTFF1ZXJ5R3JvdXBSZXNwb25zZRqnAwoST3JnYW5pemF0aW9uUmVzdWx0EgoKAmlkGAEgASgJEgwKBG5hbWUYAiABKAkSDQoFdGl0bGUYAyABKAkSLgoKY3JlYXRlZF9hdBgEIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLgoKdXBkYXRlZF9hdBgFIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASDQoFc3RhdGUYBiABKAkSDgoGYXZhdGFyGAcgASgJEhIKCmNyZWF0ZWRfYnkYCCABKAkSEQoJcGxhbl9uYW1lGAkgASgJEi4KDHBheW1lbnRfbW9kZRgKIAEoCUIY+kIVchNSB3ByZXBhaWRSCHBvc3RwYWlkEj0KGXN1YnNjcmlwdGlvbl9jeWNsZV9lbmRfYXQYCyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEg8KB2NvdW50cnkYDCABKAkSGgoSc3Vic2NyaXB0aW9uX3N0YXRlGA4gASgJEhUKDXBsYW5faW50ZXJ2YWwYDyABKAkSDwoHcGxhbl9pZBgQIAEoCSJMChRMaXN0UHJvc3BlY3RzUmVxdWVzdBI0CgVxdWVyeRgBIAEoCzIlLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUlFMUmVxdWVzdCLbAQoVTGlzdFByb3NwZWN0c1Jlc3BvbnNlEjYKCXByb3NwZWN0cxgBIAMoCzIjLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUHJvc3BlY3QSSQoKcGFnaW5hdGlvbhgCIAEoCzI1LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUlFMUXVlcnlQYWdpbmF0aW9uUmVzcG9uc2USPwoFZ3JvdXAYAyABKAsyMC5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJRTFF1ZXJ5R3JvdXBSZXNwb25zZSJHChJHZXRQcm9zcGVjdFJlcXVlc3QSMQoCaWQYASABKAlCJZJBFDISaWQgb2YgdGhlIHByb3NwZWN04kEBAvpCB3IFEAGwAQEiTAoTR2V0UHJvc3BlY3RSZXNwb25zZRI1Cghwcm9zcGVjdBgBIAEoCzIjLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUHJvc3BlY3QiswYKFVVwZGF0ZVByb3NwZWN0UmVxdWVzdBIxCgJpZBgBIAEoCUIlkkEUMhJpZCBvZiB0aGUgcHJvc3BlY3TiQQEC+kIHcgUQAbABARI+CgRuYW1lGAIgASgJQjCSQRcyFWZ1bGwgbmFtZSBvZiB0aGUgdXNlcvpCE3IRMgxeW0EtWmEteiBdKyTQAQESMgoFZW1haWwYBSABKAlCI5JBEzIRZW1haWwgb2YgdGhlIHVzZXLiQQEC+kIGcgQQAWABEiwKBXBob25lGAYgASgJQh2SQRoyGHBob25lIG51bWJlciBvZiB0aGUgdXNlchKAAQoIYWN0aXZpdHkYByABKAlCbpJBTjJMYWN0aXZpdHkgZm9yIHdoaWNoIHVzZXIgaXMgc3Vic2NyaWJpbmcsIGUuZy4gbmV3c2xldHRlciwgd2FpdGxpc3QsIGJsb2dzIGV0Y+JBAQL6QhZyFBABMhBeW0EtWmEtejAtOS1fXSskEqwBCgZzdGF0dXMYCCABKA4yKi5yYXlzdGFjay5mcm9udGllci52MWJldGExLlByb3NwZWN0LlN0YXR1c0JwkkFfMl1zdWJzY3JpcHRpb24gc3RhdHVzIGZvciB0aGlzIGFjdGl2aXR5LiBBbGxvd2VkIHZhbHVlcyAtIDEgZm9yIFVOU1VCU0NSSUJFRDsgMiBmb3IgU1VCU0NSSUJFRDviQQEC+kIHggEEGAEYAhJtCgZzb3VyY2UYCSABKAlCXZJBQDI+c291cmNlIG9mIHRoaXMgdXNlciBhZGRpdGlvbiBlLmcuIHBsYXRmb3JtLCB3ZWJzaXRlLCBhZG1pbiBldGP6QhdyFTIQXltBLVphLXowLTktX10rJNABARJRCgh2ZXJpZmllZBgKIAEoCEI/kkE8Mjp2ZXJpZmljYXRpb24gc3RhdHVzIG9mIHRoaXMgdXNlciBhZGRpdGlvbiBlLmcuIHRydWUsIGZhbHNlElEKCG1ldGFkYXRhGAsgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEImkkEjMiFhZGRpdGlvbmFsIGluZm8gYXMga2V5IHZhbHVlIHBhaXIiTwoWVXBkYXRlUHJvc3BlY3RSZXNwb25zZRI1Cghwcm9zcGVjdBgBIAEoCzIjLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUHJvc3BlY3QiSgoVRGVsZXRlUHJvc3BlY3RSZXF1ZXN0EjEKAmlkGAEgASgJQiWSQRQyEmlkIG9mIHRoZSBwcm9zcGVjdOJBAQL6QgdyBRABsAEBIhgKFkRlbGV0ZVByb3NwZWN0UmVzcG9uc2UigAYKFUNyZWF0ZVByb3NwZWN0UmVxdWVzdBI+CgRuYW1lGAEgASgJQjCSQRcyFWZ1bGwgbmFtZSBvZiB0aGUgdXNlcvpCE3IRMgxeW0EtWmEteiBdKyTQAQESMgoFZW1haWwYBSABKAlCI5JBEzIRZW1haWwgb2YgdGhlIHVzZXLiQQEC+kIGcgQQAWABEiwKBXBob25lGAYgASgJQh2SQRoyGHBob25lIG51bWJlciBvZiB0aGUgdXNlchKAAQoIYWN0aXZpdHkYByABKAlCbpJBTjJMYWN0aXZpdHkgZm9yIHdoaWNoIHVzZXIgaXMgc3Vic2NyaWJpbmcsIGUuZy4gbmV3c2xldHRlciwgd2FpdGxpc3QsIGJsb2dzIGV0Y+JBAQL6QhZyFBABMhBeW0EtWmEtejAtOS1fXSskEqwBCgZzdGF0dXMYCCABKA4yKi5yYXlzdGFjay5mcm9udGllci52MWJldGExLlByb3NwZWN0LlN0YXR1c0JwkkFfMl1zdWJzY3JpcHRpb24gc3RhdHVzIGZvciB0aGlzIGFjdGl2aXR5LiBBbGxvd2VkIHZhbHVlcyAtIDEgZm9yIFVOU1VCU0NSSUJFRDsgMiBmb3IgU1VCU0NSSUJFRDviQQEC+kIHggEEGAEYAhJtCgZzb3VyY2UYCSABKAlCXZJBQDI+c291cmNlIG9mIHRoaXMgdXNlciBhZGRpdGlvbiBlLmcuIHBsYXRmb3JtLCB3ZWJzaXRlLCBhZG1pbiBldGP6QhdyFTIQXltBLVphLXowLTktX10rJNABARJRCgh2ZXJpZmllZBgKIAEoCEI/kkE8Mjp2ZXJpZmljYXRpb24gc3RhdHVzIG9mIHRoaXMgdXNlciBhZGRpdGlvbiBlLmcuIHRydWUsIGZhbHNlElEKCG1ldGFkYXRhGAsgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEImkkEjMiFhZGRpdGlvbmFsIGluZm8gYXMga2V5IHZhbHVlIHBhaXIiTwoWQ3JlYXRlUHJvc3BlY3RSZXNwb25zZRI1Cghwcm9zcGVjdBgBIAEoCzIjLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUHJvc3BlY3QiawoeU2VhcmNoT3JnYW5pemF0aW9uVXNlcnNSZXF1ZXN0EhMKAmlkGAEgASgJQgf6QgRyAhADEjQKBXF1ZXJ5GAIgASgLMiUucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5SUUxSZXF1ZXN0IoAECh9TZWFyY2hPcmdhbml6YXRpb25Vc2Vyc1Jlc3BvbnNlEl4KCW9yZ191c2VycxgBIAMoCzJLLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuU2VhcmNoT3JnYW5pemF0aW9uVXNlcnNSZXNwb25zZS5Pcmdhbml6YXRpb25Vc2VyEkkKCnBhZ2luYXRpb24YAiABKAsyNS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJRTFF1ZXJ5UGFnaW5hdGlvblJlc3BvbnNlEj8KBWdyb3VwGAMgASgLMjAucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5SUUxRdWVyeUdyb3VwUmVzcG9uc2Ua8AEKEE9yZ2FuaXphdGlvblVzZXISCgoCaWQYASABKAkSDAoEbmFtZRgCIAEoCRINCgV0aXRsZRgDIAEoCRINCgVlbWFpbBgEIAEoCRIxCg1vcmdfam9pbmVkX2F0GAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBINCgVzdGF0ZRgGIAEoCRIOCgZhdmF0YXIYByABKAkSEgoKcm9sZV9uYW1lcxgIIAMoCRITCgtyb2xlX3RpdGxlcxgJIAMoCRIQCghyb2xlX2lkcxgKIAMoCRIXCg9vcmdhbml6YXRpb25faWQYCyABKAkiNQoeRXhwb3J0T3JnYW5pemF0aW9uVXNlcnNSZXF1ZXN0EhMKAmlkGAEgASgJQgf6QgRyAhADIm4KIVNlYXJjaE9yZ2FuaXphdGlvblByb2plY3RzUmVxdWVzdBITCgJpZBgBIAEoCUIH+kIEcgIQAxI0CgVxdWVyeRgCIAEoCzIlLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUlFMUmVxdWVzdCLaAwoiU2VhcmNoT3JnYW5pemF0aW9uUHJvamVjdHNSZXNwb25zZRJnCgxvcmdfcHJvamVjdHMYASADKAsyUS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlNlYXJjaE9yZ2FuaXphdGlvblByb2plY3RzUmVzcG9uc2UuT3JnYW5pemF0aW9uUHJvamVjdBJJCgpwYWdpbmF0aW9uGAIgASgLMjUucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5SUUxRdWVyeVBhZ2luYXRpb25SZXNwb25zZRI/CgVncm91cBgDIAEoCzIwLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUlFMUXVlcnlHcm91cFJlc3BvbnNlGr4BChNPcmdhbml6YXRpb25Qcm9qZWN0EgoKAmlkGAEgASgJEgwKBG5hbWUYAiABKAkSDQoFdGl0bGUYAyABKAkSDQoFc3RhdGUYBCABKAkSFAoMbWVtYmVyX2NvdW50GAUgASgDEhAKCHVzZXJfaWRzGAYgAygJEi4KCmNyZWF0ZWRfYXQYByABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEhcKD29yZ2FuaXphdGlvbl9pZBgIIAEoCSI4CiFFeHBvcnRPcmdhbml6YXRpb25Qcm9qZWN0c1JlcXVlc3QSEwoCaWQYASABKAlCB/pCBHICEAMiZgoZU2VhcmNoUHJvamVjdFVzZXJzUmVxdWVzdBITCgJpZBgBIAEoCUIH+kIEcgIQAxI0CgVxdWVyeRgCIAEoCzIlLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUlFMUmVxdWVzdCKpAwoaU2VhcmNoUHJvamVjdFVzZXJzUmVzcG9uc2USWAoNcHJvamVjdF91c2VycxgBIAMoCzJBLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuU2VhcmNoUHJvamVjdFVzZXJzUmVzcG9uc2UuUHJvamVjdFVzZXISSQoKcGFnaW5hdGlvbhgCIAEoCzI1LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUlFMUXVlcnlQYWdpbmF0aW9uUmVzcG9uc2USPwoFZ3JvdXAYAyABKAsyMC5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJRTFF1ZXJ5R3JvdXBSZXNwb25zZRqkAQoLUHJvamVjdFVzZXISCgoCaWQYASABKAkSDAoEbmFtZRgCIAEoCRINCgV0aXRsZRgDIAEoCRINCgVlbWFpbBgEIAEoCRIOCgZhdmF0YXIYByABKAkSEgoKcm9sZV9uYW1lcxgIIAMoCRITCgtyb2xlX3RpdGxlcxgJIAMoCRIQCghyb2xlX2lkcxgKIAMoCRISCgpwcm9qZWN0X2lkGAsgASgJIm4KIVNlYXJjaE9yZ2FuaXphdGlvbkludm9pY2VzUmVxdWVzdBITCgJpZBgBIAEoCUIH+kIEcgIQAxI0CgVxdWVyeRgCIAEoCzIlLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUlFMUmVxdWVzdCLNAwoiU2VhcmNoT3JnYW5pemF0aW9uSW52b2ljZXNSZXNwb25zZRJwChVvcmdhbml6YXRpb25faW52b2ljZXMYASADKAsyUS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlNlYXJjaE9yZ2FuaXphdGlvbkludm9pY2VzUmVzcG9uc2UuT3JnYW5pemF0aW9uSW52b2ljZRJJCgpwYWdpbmF0aW9uGAIgASgLMjUucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5SUUxRdWVyeVBhZ2luYXRpb25SZXNwb25zZRI/CgVncm91cBgDIAEoCzIwLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUlFMUXVlcnlHcm91cFJlc3BvbnNlGqgBChNPcmdhbml6YXRpb25JbnZvaWNlEgoKAmlkGAEgASgJEg4KBmFtb3VudBgCIAEoAxIQCghjdXJyZW5jeRgDIAEoCRINCgVzdGF0ZRgEIAEoCRIUCgxpbnZvaWNlX2xpbmsYBSABKAkSLgoKY3JlYXRlZF9hdBgGIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASDgoGb3JnX2lkGAcgASgJImwKH1NlYXJjaE9yZ2FuaXphdGlvblRva2Vuc1JlcXVlc3QSEwoCaWQYASABKAlCB/pCBHICEAMSNAoFcXVlcnkYAiABKAsyJS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJRTFJlcXVlc3Qi3QMKIFNlYXJjaE9yZ2FuaXphdGlvblRva2Vuc1Jlc3BvbnNlEmoKE29yZ2FuaXphdGlvbl90b2tlbnMYASADKAsyTS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlNlYXJjaE9yZ2FuaXphdGlvblRva2Vuc1Jlc3BvbnNlLk9yZ2FuaXphdGlvblRva2VuEkkKCnBhZ2luYXRpb24YAiABKAsyNS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJRTFF1ZXJ5UGFnaW5hdGlvblJlc3BvbnNlEj8KBWdyb3VwGAMgASgLMjAucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5SUUxRdWVyeUdyb3VwUmVzcG9uc2UawAEKEU9yZ2FuaXphdGlvblRva2VuEg4KBmFtb3VudBgBIAEoAxIMCgR0eXBlGAIgASgJEhMKC2Rlc2NyaXB0aW9uGAMgASgJEg8KB3VzZXJfaWQYBCABKAkSEgoKdXNlcl90aXRsZRgFIAEoCRITCgt1c2VyX2F2YXRhchgGIAEoCRIuCgpjcmVhdGVkX2F0GAcgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIOCgZvcmdfaWQYCCABKAkiNgofRXhwb3J0T3JnYW5pemF0aW9uVG9rZW5zUmVxdWVzdBITCgJpZBgBIAEoCUIH+kIEcgIQAyJ8Ci9TZWFyY2hPcmdhbml6YXRpb25TZXJ2aWNlVXNlckNyZWRlbnRpYWxzUmVxdWVzdBITCgJpZBgBIAEoCUIH+kIEcgIQAxI0CgVxdWVyeRgCIAEoCzIlLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUlFMUmVxdWVzdCLsAwowU2VhcmNoT3JnYW5pemF0aW9uU2VydmljZVVzZXJDcmVkZW50aWFsc1Jlc3BvbnNlEpsBCiRvcmdhbml6YXRpb25fc2VydmljZXVzZXJfY3JlZGVudGlhbHMYASADKAsybS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlNlYXJjaE9yZ2FuaXphdGlvblNlcnZpY2VVc2VyQ3JlZGVudGlhbHNSZXNwb25zZS5Pcmdhbml6YXRpb25TZXJ2aWNlVXNlckNyZWRlbnRpYWwSSQoKcGFnaW5hdGlvbhgCIAEoCzI1LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUlFMUXVlcnlQYWdpbmF0aW9uUmVzcG9uc2USPwoFZ3JvdXAYAyABKAsyMC5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJRTFF1ZXJ5R3JvdXBSZXNwb25zZRqNAQohT3JnYW5pemF0aW9uU2VydmljZVVzZXJDcmVkZW50aWFsEg0KBXRpdGxlGAEgASgJEhkKEXNlcnZpY2V1c2VyX3RpdGxlGAIgASgJEi4KCmNyZWF0ZWRfYXQYAyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEg4KBm9yZ19pZBgEIAEoCSJKChJTZWFyY2hVc2Vyc1JlcXVlc3QSNAoFcXVlcnkYASABKAsyJS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJRTFJlcXVlc3Qi0QEKE1NlYXJjaFVzZXJzUmVzcG9uc2USLgoFdXNlcnMYASADKAsyHy5yYXlzdGFjay5mcm9udGllci52MWJldGExLlVzZXISSQoKcGFnaW5hdGlvbhgCIAEoCzI1LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUlFMUXVlcnlQYWdpbmF0aW9uUmVzcG9uc2USPwoFZ3JvdXAYAyABKAsyMC5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJRTFF1ZXJ5R3JvdXBSZXNwb25zZSIUChJFeHBvcnRVc2Vyc1JlcXVlc3QifAoeU2VhcmNoVXNlck9yZ2FuaXphdGlvbnNSZXF1ZXN0EiQKAmlkGAEgASgJQhiSQQkyB3VzZXIgSUTiQQEC+kIFcgOwAQESNAoFcXVlcnkYAiABKAsyJS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJRTFJlcXVlc3QiigQKH1NlYXJjaFVzZXJPcmdhbml6YXRpb25zUmVzcG9uc2USZwoSdXNlcl9vcmdhbml6YXRpb25zGAEgAygLMksucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5TZWFyY2hVc2VyT3JnYW5pemF0aW9uc1Jlc3BvbnNlLlVzZXJPcmdhbml6YXRpb24SSQoKcGFnaW5hdGlvbhgCIAEoCzI1LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUlFMUXVlcnlQYWdpbmF0aW9uUmVzcG9uc2USPwoFZ3JvdXAYAyABKAsyMC5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJRTFF1ZXJ5R3JvdXBSZXNwb25zZRrxAQoQVXNlck9yZ2FuaXphdGlvbhIOCgZvcmdfaWQYASABKAkSEQoJb3JnX3RpdGxlGAIgASgJEhAKCG9yZ19uYW1lGAMgASgJEhIKCm9yZ19hdmF0YXIYBCABKAkSFQoNcHJvamVjdF9jb3VudBgFIAEoAxISCgpyb2xlX25hbWVzGAYgAygJEhMKC3JvbGVfdGl0bGVzGAcgAygJEhAKCHJvbGVfaWRzGAggAygJEjEKDW9yZ19qb2luZWRfb24YCSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEg8KB3VzZXJfaWQYCiABKAkipQEKGVNlYXJjaFVzZXJQcm9qZWN0c1JlcXVlc3QSKQoHdXNlcl9pZBgBIAEoCUIYkkEJMgd1c2VyIElE4kEBAvpCBXIDsAEBEicKBm9yZ19pZBgCIAEoCUIXkkEIMgZvcmcgSUTiQQEC+kIFcgOwAQESNAoFcXVlcnkYAyABKAsyJS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJRTFJlcXVlc3Qi/QMKGlNlYXJjaFVzZXJQcm9qZWN0c1Jlc3BvbnNlElgKDXVzZXJfcHJvamVjdHMYASADKAsyQS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlNlYXJjaFVzZXJQcm9qZWN0c1Jlc3BvbnNlLlVzZXJQcm9qZWN0EkkKCnBhZ2luYXRpb24YAiABKAsyNS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJRTFF1ZXJ5UGFnaW5hdGlvblJlc3BvbnNlEj8KBWdyb3VwGAMgASgLMjAucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5SUUxRdWVyeUdyb3VwUmVzcG9uc2Ua+AEKC1VzZXJQcm9qZWN0EhIKCnByb2plY3RfaWQYASABKAkSFQoNcHJvamVjdF90aXRsZRgCIAEoCRIUCgxwcm9qZWN0X25hbWUYAyABKAkSNgoScHJvamVjdF9jcmVhdGVkX29uGAQgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBISCgp1c2VyX25hbWVzGAUgAygJEhMKC3VzZXJfdGl0bGVzGAYgAygJEhAKCHVzZXJfaWRzGAcgAygJEhQKDHVzZXJfYXZhdGFycxgIIAMoCRIOCgZvcmdfaWQYCSABKAkSDwoHdXNlcl9pZBgKIAEoCSLiDAoeQWRtaW5DcmVhdGVPcmdhbml6YXRpb25SZXF1ZXN0EmkKBGJvZHkYASABKAsyUS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkFkbWluQ3JlYXRlT3JnYW5pemF0aW9uUmVxdWVzdC5Pcmdhbml6YXRpb25SZXF1ZXN0Qm9keUII+kIFigECEAEa1AsKF09yZ2FuaXphdGlvblJlcXVlc3RCb2R5EvsBCgRuYW1lGAEgASgJQuwBkkHNATLKAVRoZSBuYW1lIG9mIHRoZSBvcmdhbml6YXRpb24uIFRoZSBuYW1lIG11c3QgYmUgdW5pcXVlIHdpdGhpbiB0aGUgZW50aXJlIEZyb250aWVyIGluc3RhbmNlLiBUaGUgbmFtZSBjYW4gY29udGFpbiBvbmx5IGFscGhhbnVtZXJpYyBjaGFyYWN0ZXJzLCBkYXNoZXMgYW5kIHVuZGVyc2NvcmVzLjxici8+KkV4YW1wbGU6KmAiZnJvbnRpZXItb3JnMS1hY21lImDiQQEC+kIUchIyEF5bQS1aYS16MC05LV9dKyQSsgEKBXRpdGxlGAIgASgJQqIBkkGeATKbAVRoZSB0aXRsZSBjYW4gY29udGFpbiBhbnkgVVRGLTggY2hhcmFjdGVyLCB1c2VkIHRvIHByb3ZpZGUgYSBodW1hbi1yZWFkYWJsZSBuYW1lIGZvciB0aGUgb3JnYW5pemF0aW9uLiBDYW4gYWxzbyBiZSBsZWZ0IGVtcHR5Ljxici8+ICpFeGFtcGxlKjogYCJBY21lIEluYyJgEukDCghtZXRhZGF0YRgDIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RCvQOSQbkDMrYDTWV0YWRhdGEgb2JqZWN0IGZvciBvcmdhbml6YXRpb25zIHRoYXQgY2FuIGhvbGQga2V5IHZhbHVlIHBhaXJzIGRlZmluZWQgaW4gT3JnYW5pemF0aW9uIE1ldGFzY2hlbWEuIFRoZSBtZXRhZGF0YSBvYmplY3QgY2FuIGJlIHVzZWQgdG8gc3RvcmUgYXJiaXRyYXJ5IGluZm9ybWF0aW9uIGFib3V0IHRoZSBvcmdhbml6YXRpb24gc3VjaCBhcyBsYWJlbHMsIGRlc2NyaXB0aW9ucyBldGMuIFRoZSBkZWZhdWx0IE9yZ2FuaXphdGlvbiBNZXRhc2NoZW1hIGNvbnRhaW5zIGxhYmVscyBhbmQgZGVzY3JpcHRvbiBmaWVsZHMuIFVwZGF0ZSB0aGUgT3JnYW5pemF0aW9uIE1ldGFzY2hlbWEgdG8gYWRkIG1vcmUgZmllbGRzLiA8YnIvPipFeGFtcGxlKjpgeyJsYWJlbHMiOiB7ImtleSI6ICJ2YWx1ZSJ9LCAiZGVzY3JpcHRpb24iOiAiT3JnYW5pemF0aW9uIGRlc2NyaXB0aW9uIn1gEvACCgZhdmF0YXIYBCABKAlC3wKSQY8CMtMBVGhlIGF2YXRhciBpcyBiYXNlNjQgZW5jb2RlZCBpbWFnZSBkYXRhIG9mIHRoZSB1c2VyLiBDYW4gYWxzbyBiZSBsZWZ0IGVtcHR5LiBUaGUgaW1hZ2Ugc2hvdWxkIGJlIGxlc3MgdGhhbiAyMDBLQi4gU2hvdWxkIGZvbGxvdyB0aGUgcmVnZXggcGF0dGVybiBgXmRhdGE6aW1hZ2UvKHBuZ3xqcGd8anBlZ3xnaWYpO2Jhc2U2NCwoW2EtekEtWjAtOSsvXSs9ezAsMn0pKyRgLko3ImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQkFBQUFBIvpCSXJHGJChDzI+XmRhdGE6aW1hZ2UvKHBuZ3xqcGd8anBlZ3xnaWYpO2Jhc2U2NCwoW2EtekEtWjAtOSsvXSs9ezAsMn0pKyTQAQESpgEKD29yZ19vd25lcl9lbWFpbBgFIAEoCUKMAZJBfjJ8VGhlIGVtYWlsIG9mIHRoZSB1c2VyLiBUaGUgZW1haWwgbXVzdCBiZSB1bmlxdWUgd2l0aGluIHRoZSBlbnRpcmUgRnJvbnRpZXIgaW5zdGFuY2UuPGJyLz4qRXhhbXBsZToqYCJqb2huLmRvZUByYXlzdGFjay5vcmciYOJBAQL6QgRyAmABImAKH0FkbWluQ3JlYXRlT3JnYW5pemF0aW9uUmVzcG9uc2USPQoMb3JnYW5pemF0aW9uGAEgASgLMicucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Pcmdhbml6YXRpb24iTQoVU2VhcmNoSW52b2ljZXNSZXF1ZXN0EjQKBXF1ZXJ5GAEgASgLMiUucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5SUUxSZXF1ZXN0IrUDChZTZWFyY2hJbnZvaWNlc1Jlc3BvbnNlEksKCGludm9pY2VzGAEgAygLMjkucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5TZWFyY2hJbnZvaWNlc1Jlc3BvbnNlLkludm9pY2USSQoKcGFnaW5hdGlvbhgCIAEoCzI1LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUlFMUXVlcnlQYWdpbmF0aW9uUmVzcG9uc2USPwoFZ3JvdXAYAyABKAsyMC5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJRTFF1ZXJ5R3JvdXBSZXNwb25zZRrBAQoHSW52b2ljZRIKCgJpZBgBIAEoCRIOCgZhbW91bnQYAiABKAMSEAoIY3VycmVuY3kYAyABKAkSDQoFc3RhdGUYBCABKAkSFAoMaW52b2ljZV9saW5rGAUgASgJEi4KCmNyZWF0ZWRfYXQYBiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEg4KBm9yZ19pZBgHIAEoCRIQCghvcmdfbmFtZRgIIAEoCRIRCglvcmdfdGl0bGUYCSABKAkicgolU2VhcmNoT3JnYW5pemF0aW9uU2VydmljZVVzZXJzUmVxdWVzdBITCgJpZBgBIAEoCUIH+kIEcgIQAxI0CgVxdWVyeRgCIAEoCzIlLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUlFMUmVxdWVzdCK7BAomU2VhcmNoT3JnYW5pemF0aW9uU2VydmljZVVzZXJzUmVzcG9uc2USfQoab3JnYW5pemF0aW9uX3NlcnZpY2VfdXNlcnMYASADKAsyWS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlNlYXJjaE9yZ2FuaXphdGlvblNlcnZpY2VVc2Vyc1Jlc3BvbnNlLk9yZ2FuaXphdGlvblNlcnZpY2VVc2VyEkkKCnBhZ2luYXRpb24YAiABKAsyNS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJRTFF1ZXJ5UGFnaW5hdGlvblJlc3BvbnNlEj8KBWdyb3VwGAMgASgLMjAucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5SUUxRdWVyeUdyb3VwUmVzcG9uc2UaMgoHUHJvamVjdBIKCgJpZBgBIAEoCRINCgV0aXRsZRgCIAEoCRIMCgRuYW1lGAMgASgJGtEBChdPcmdhbml6YXRpb25TZXJ2aWNlVXNlchIKCgJpZBgBIAEoCRINCgV0aXRsZRgCIAEoCRIOCgZvcmdfaWQYAyABKAkSWwoIcHJvamVjdHMYBCADKAsySS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlNlYXJjaE9yZ2FuaXphdGlvblNlcnZpY2VVc2Vyc1Jlc3BvbnNlLlByb2plY3QSLgoKY3JlYXRlZF9hdBgFIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAiHAoaR2V0Q3VycmVudEFkbWluVXNlclJlcXVlc3QiigEKG0dldEN1cnJlbnRBZG1pblVzZXJSZXNwb25zZRItCgR1c2VyGAEgASgLMh8ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Vc2VyEjwKDHNlcnZpY2VfdXNlchgCIAEoCzImLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuU2VydmljZVVzZXIiKgoXTGlzdFVzZXJTZXNzaW9uc1JlcXVlc3QSDwoHdXNlcl9pZBgBIAEoCSJQChhMaXN0VXNlclNlc3Npb25zUmVzcG9uc2USNAoIc2Vzc2lvbnMYASADKAsyIi5yYXlzdGFjay5mcm9udGllci52MWJldGExLlNlc3Npb24iPwoYUmV2b2tlVXNlclNlc3Npb25SZXF1ZXN0Eg8KB3VzZXJfaWQYASABKAkSEgoKc2Vzc2lvbl9pZBgCIAEoCSIbChlSZXZva2VVc2VyU2Vzc2lvblJlc3BvbnNlMu57CgxBZG1pblNlcnZpY2USrwIKDExpc3RBbGxVc2VycxIuLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdEFsbFVzZXJzUmVxdWVzdBovLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdEFsbFVzZXJzUmVzcG9uc2UivQGSQZ0BCgRVc2VyEg5MaXN0IGFsbCB1c2VycxqEAUxpc3RzIGFsbCB0aGUgdXNlcnMgZnJvbSBhbGwgdGhlIG9yZ2FuaXphdGlvbnMgaW4gYSBGcm9udGllciBpbnN0YW5jZS4gSXQgY2FuIGJlIGZpbHRlcmVkIGJ5IGtleXdvcmQsIG9yZ2FuaXphdGlvbiwgZ3JvdXAgYW5kIHN0YXRlLoLT5JMCFhIUL3YxYmV0YTEvYWRtaW4vdXNlcnMSmwIKE0xpc3RBbGxTZXJ2aWNlVXNlcnMSNS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RBbGxTZXJ2aWNlVXNlcnNSZXF1ZXN0GjYucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0QWxsU2VydmljZVVzZXJzUmVzcG9uc2UilAGSQW4KBFVzZXISFkxpc3QgYWxsIHNlcnZpY2UgdXNlcnMaTkxpc3RzIGFsbCB0aGUgc2VydmljZSB1c2VycyBmcm9tIGFsbCB0aGUgb3JnYW5pemF0aW9ucyBpbiBhIEZyb250aWVyIGluc3RhbmNlLoLT5JMCHRIbL3YxYmV0YTEvYWRtaW4vc2VydmljZXVzZXJzEpwCCgpMaXN0R3JvdXBzEiwucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0R3JvdXBzUmVxdWVzdBotLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdEdyb3Vwc1Jlc3BvbnNlIrABkkGPAQoFR3JvdXASD0xpc3QgYWxsIGdyb3Vwcxp1TGlzdHMgYWxsIHRoZSBncm91cHMgZnJvbSBhbGwgdGhlIG9yZ2FuaXphdGlvbnMgaW4gYSBGcm9udGllciBpbnN0YW5jZS4gSXQgY2FuIGJlIGZpbHRlcmVkIGJ5IG9yZ2FuaXphdGlvbiBhbmQgc3RhdGUugtPkkwIXEhUvdjFiZXRhMS9hZG1pbi9ncm91cHMSswIKFExpc3RBbGxPcmdhbml6YXRpb25zEjYucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0QWxsT3JnYW5pemF0aW9uc1JlcXVlc3QaNy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RBbGxPcmdhbml6YXRpb25zUmVzcG9uc2UiqQGSQYEBCgxPcmdhbml6YXRpb24SFkxpc3QgYWxsIG9yZ2FuaXphdGlvbnMaWUxpc3RzIGFsbCB0aGUgb3JnYW5pemF0aW9ucyBpbiBhIEZyb250aWVyIGluc3RhbmNlLiBJdCBjYW4gYmUgZmlsdGVyZWQgYnkgdXNlciBhbmQgc3RhdGUugtPkkwIeEhwvdjFiZXRhMS9hZG1pbi9vcmdhbml6YXRpb25zEvABChdBZG1pbkNyZWF0ZU9yZ2FuaXphdGlvbhI5LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQWRtaW5DcmVhdGVPcmdhbml6YXRpb25SZXF1ZXN0GjoucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5BZG1pbkNyZWF0ZU9yZ2FuaXphdGlvblJlc3BvbnNlIl6SQTEKDE9yZ2FuaXphdGlvbhIhQ3JlYXRlIG9yZ2FuaXphdGlvbiBhcyBzdXBlcmFkbWlugtPkkwIkIhwvdjFiZXRhMS9hZG1pbi9vcmdhbml6YXRpb25zOgRib2R5ErICChNTZWFyY2hPcmdhbml6YXRpb25zEjUucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5TZWFyY2hPcmdhbml6YXRpb25zUmVxdWVzdBo2LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuU2VhcmNoT3JnYW5pemF0aW9uc1Jlc3BvbnNlIqsBkkF2CgxPcmdhbml6YXRpb24SFFNlYXJjaCBvcmdhbml6YXRpb25zGlBTZWFyY2ggb3JnYW5pemF0aW9uIGJhc2VkIG9uIG9yZyBkZW1vZ3JhcGhpYyBwcm9wZXJ0aWVzIGFuZCBiaWxsaW5nIHBsYW4gZGV0YWlsc4LT5JMCLCIjL3YxYmV0YTEvYWRtaW4vb3JnYW5pemF0aW9ucy9zZWFyY2g6BXF1ZXJ5EvsBChdTZWFyY2hPcmdhbml6YXRpb25Vc2VycxI5LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuU2VhcmNoT3JnYW5pemF0aW9uVXNlcnNSZXF1ZXN0GjoucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5TZWFyY2hPcmdhbml6YXRpb25Vc2Vyc1Jlc3BvbnNlImmSQSkKDE9yZ2FuaXphdGlvbhIZU2VhcmNoIG9yZ2FuaXphdGlvbiB1c2Vyc4LT5JMCNyIuL3YxYmV0YTEvYWRtaW4vb3JnYW5pemF0aW9ucy97aWR9L3VzZXJzL3NlYXJjaDoFcXVlcnkS3QEKElNlYXJjaFByb2plY3RVc2VycxI0LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuU2VhcmNoUHJvamVjdFVzZXJzUmVxdWVzdBo1LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuU2VhcmNoUHJvamVjdFVzZXJzUmVzcG9uc2UiWpJBHwoHUHJvamVjdBIUU2VhcmNoIFByb2plY3QgdXNlcnOC0+STAjIiKS92MWJldGExL2FkbWluL3Byb2plY3RzL3tpZH0vdXNlcnMvc2VhcmNoOgVxdWVyeRKKAgoaU2VhcmNoT3JnYW5pemF0aW9uUHJvamVjdHMSPC5yYXlzdGFjay5mcm9udGllci52MWJldGExLlNlYXJjaE9yZ2FuaXphdGlvblByb2plY3RzUmVxdWVzdBo9LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuU2VhcmNoT3JnYW5pemF0aW9uUHJvamVjdHNSZXNwb25zZSJvkkEsCgxPcmdhbml6YXRpb24SHFNlYXJjaCBvcmdhbml6YXRpb24gcHJvamVjdHOC0+STAjoiMS92MWJldGExL2FkbWluL29yZ2FuaXphdGlvbnMve2lkfS9wcm9qZWN0cy9zZWFyY2g6BXF1ZXJ5EooCChpTZWFyY2hPcmdhbml6YXRpb25JbnZvaWNlcxI8LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuU2VhcmNoT3JnYW5pemF0aW9uSW52b2ljZXNSZXF1ZXN0Gj0ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5TZWFyY2hPcmdhbml6YXRpb25JbnZvaWNlc1Jlc3BvbnNlIm+SQSwKDE9yZ2FuaXphdGlvbhIcU2VhcmNoIG9yZ2FuaXphdGlvbiBpbnZvaWNlc4LT5JMCOiIxL3YxYmV0YTEvYWRtaW4vb3JnYW5pemF0aW9ucy97aWR9L2ludm9pY2VzL3NlYXJjaDoFcXVlcnkSgAIKGFNlYXJjaE9yZ2FuaXphdGlvblRva2VucxI6LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuU2VhcmNoT3JnYW5pemF0aW9uVG9rZW5zUmVxdWVzdBo7LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuU2VhcmNoT3JnYW5pemF0aW9uVG9rZW5zUmVzcG9uc2Uia5JBKgoMT3JnYW5pemF0aW9uEhpTZWFyY2ggb3JnYW5pemF0aW9uIHRva2Vuc4LT5JMCOCIvL3YxYmV0YTEvYWRtaW4vb3JnYW5pemF0aW9ucy97aWR9L3Rva2Vucy9zZWFyY2g6BXF1ZXJ5EtQCCihTZWFyY2hPcmdhbml6YXRpb25TZXJ2aWNlVXNlckNyZWRlbnRpYWxzEkoucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5TZWFyY2hPcmdhbml6YXRpb25TZXJ2aWNlVXNlckNyZWRlbnRpYWxzUmVxdWVzdBpLLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuU2VhcmNoT3JnYW5pemF0aW9uU2VydmljZVVzZXJDcmVkZW50aWFsc1Jlc3BvbnNlIo4BkkE8CgxPcmdhbml6YXRpb24SLFNlYXJjaCBvcmdhbml6YXRpb24gc2VydmljZSB1c2VyIGNyZWRlbnRpYWxzgtPkkwJJIkAvdjFiZXRhMS9hZG1pbi9vcmdhbml6YXRpb25zL3tpZH0vc2VydmljZXVzZXJfY3JlZGVudGlhbHMvc2VhcmNoOgVxdWVyeRKfAgoeU2VhcmNoT3JnYW5pemF0aW9uU2VydmljZVVzZXJzEkAucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5TZWFyY2hPcmdhbml6YXRpb25TZXJ2aWNlVXNlcnNSZXF1ZXN0GkEucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5TZWFyY2hPcmdhbml6YXRpb25TZXJ2aWNlVXNlcnNSZXNwb25zZSJ4kkExCgxPcmdhbml6YXRpb24SIVNlYXJjaCBvcmdhbml6YXRpb24gc2VydmljZSB1c2Vyc4LT5JMCPiI1L3YxYmV0YTEvYWRtaW4vb3JnYW5pemF0aW9ucy97aWR9L3NlcnZpY2V1c2Vycy9zZWFyY2g6BXF1ZXJ5Eo0CChNFeHBvcnRPcmdhbml6YXRpb25zEjUucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5FeHBvcnRPcmdhbml6YXRpb25zUmVxdWVzdBoULmdvb2dsZS5hcGkuSHR0cEJvZHkipgGSQXgKDE9yZ2FuaXphdGlvbhIURXhwb3J0IG9yZ2FuaXphdGlvbnMaSEV4cG9ydCBvcmdhbml6YXRpb24gd2l0aCBkZW1vZ3JhcGhpYyBwcm9wZXJ0aWVzIGFuZCBiaWxsaW5nIHBsYW4gZGV0YWlsczoIdGV4dC9jc3aC0+STAiUSIy92MWJldGExL2FkbWluL29yZ2FuaXphdGlvbnMvZXhwb3J0MAESiAIKF0V4cG9ydE9yZ2FuaXphdGlvblVzZXJzEjkucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5FeHBvcnRPcmdhbml6YXRpb25Vc2Vyc1JlcXVlc3QaFC5nb29nbGUuYXBpLkh0dHBCb2R5IpkBkkFgCgxPcmdhbml6YXRpb24SGUV4cG9ydCBvcmdhbml6YXRpb24gdXNlcnMaK0V4cG9ydCBvcmdhbml6YXRpb24gdXNlciB0aGVpciByb2xlIGRldGFpbHM6CHRleHQvY3N2gtPkkwIwEi4vdjFiZXRhMS9hZG1pbi9vcmdhbml6YXRpb25zL3tpZH0vdXNlcnMvZXhwb3J0MAESkwIKGkV4cG9ydE9yZ2FuaXphdGlvblByb2plY3RzEjwucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5FeHBvcnRPcmdhbml6YXRpb25Qcm9qZWN0c1JlcXVlc3QaFC5nb29nbGUuYXBpLkh0dHBCb2R5Ip4BkkFiCgxPcmdhbml6YXRpb24SHEV4cG9ydCBvcmdhbml6YXRpb24gcHJvamVjdHMaKkV4cG9ydCBvcmdhbml6YXRpb24gcHJvamVjdHMgd2l0aCB1c2VyIElEczoIdGV4dC9jc3aC0+STAjMSMS92MWJldGExL2FkbWluL29yZ2FuaXphdGlvbnMve2lkfS9wcm9qZWN0cy9leHBvcnQwARL7AQoYRXhwb3J0T3JnYW5pemF0aW9uVG9rZW5zEjoucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5FeHBvcnRPcmdhbml6YXRpb25Ub2tlbnNSZXF1ZXN0GhQuZ29vZ2xlLmFwaS5IdHRwQm9keSKKAZJBUAoMT3JnYW5pemF0aW9uEhpFeHBvcnQgb3JnYW5pemF0aW9uIHRva2VucxoaRXhwb3J0IG9yZ2FuaXphdGlvbiB0b2tlbnM6CHRleHQvY3N2gtPkkwIxEi8vdjFiZXRhMS9hZG1pbi9vcmdhbml6YXRpb25zL3tpZH0vdG9rZW5zL2V4cG9ydDABEt0BCgtFeHBvcnRVc2VycxItLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRXhwb3J0VXNlcnNSZXF1ZXN0GhQuZ29vZ2xlLmFwaS5IdHRwQm9keSKGAZJBYAoEVXNlchIMRXhwb3J0IHVzZXJzGkBFeHBvcnQgdXNlciB3aXRoIGRlbW9ncmFwaGljIHByb3BlcnRpZXMgYW5kIGJpbGxpbmcgcGxhbiBkZXRhaWxzOgh0ZXh0L2NzdoLT5JMCHRIbL3YxYmV0YTEvYWRtaW4vdXNlcnMvZXhwb3J0MAES1wEKC1NlYXJjaFVzZXJzEi0ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5TZWFyY2hVc2Vyc1JlcXVlc3QaLi5yYXlzdGFjay5mcm9udGllci52MWJldGExLlNlYXJjaFVzZXJzUmVzcG9uc2UiaZJBPAoEVXNlchIMU2VhcmNoIHVzZXJzGiZTZWFyY2ggdXNlcnMgYmFzZWQgb24gdGhlaXIgcHJvcGVydGllc4LT5JMCJCIbL3YxYmV0YTEvYWRtaW4vdXNlcnMvc2VhcmNoOgVxdWVyeRL0AQoXU2VhcmNoVXNlck9yZ2FuaXphdGlvbnMSOS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlNlYXJjaFVzZXJPcmdhbml6YXRpb25zUmVxdWVzdBo6LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuU2VhcmNoVXNlck9yZ2FuaXphdGlvbnNSZXNwb25zZSJikkEiCgRVc2VyEhpTZWFyY2ggdXNlcnMgb3JnYW5pemF0aW9uc4LT5JMCNyIuL3YxYmV0YTEvYWRtaW4vdXNlcnMve2lkfS9vcmdhbml6YXRpb25zL3NlYXJjaDoFcXVlcnkSggIKElNlYXJjaFVzZXJQcm9qZWN0cxI0LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuU2VhcmNoVXNlclByb2plY3RzUmVxdWVzdBo1LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuU2VhcmNoVXNlclByb2plY3RzUmVzcG9uc2Uif5JBLwoEVXNlchInU2VhcmNoIHByb2plY3RzIG9mIGEgdXNlciB3aXRoaW4gYW4gb3JngtPkkwJHIj4vdjFiZXRhMS9hZG1pbi91c2Vycy97dXNlcl9pZH0vb3JnYW5pemF0aW9ucy97b3JnX2lkfS9wcm9qZWN0czoFcXVlcnkSrQIKElNldE9yZ2FuaXphdGlvbkt5YxI0LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuU2V0T3JnYW5pemF0aW9uS3ljUmVxdWVzdBo1LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuU2V0T3JnYW5pemF0aW9uS3ljUmVzcG9uc2UiqQGSQXIKD09yZ2FuaXphdGlvbkt5YxImU2V0IEtZQyBpbmZvcm1hdGlvbiBvZiBhbiBvcmdhbml6YXRpb24aN1NldCBLWUMgaW5mb3JtYXRpb24gb2YgYW4gb3JnYW5pemF0aW9uIHVzaW5nIElEIG9yIG5hbWWC0+STAi4aKS92MWJldGExL2FkbWluL29yZ2FuaXphdGlvbnMve29yZ19pZH0va3ljOgEqEpsCChRMaXN0T3JnYW5pemF0aW9uc0t5YxI2LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdE9yZ2FuaXphdGlvbnNLeWNSZXF1ZXN0GjcucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0T3JnYW5pemF0aW9uc0t5Y1Jlc3BvbnNlIpEBkkFmCg9Pcmdhbml6YXRpb25LeWMSKUxpc3QgS1lDIGluZm9ybWF0aW9uIG9mIGFsbCBvcmdhbml6YXRpb25zGihMaXN0IEtZQyBpbmZvcm1hdGlvbiBvZiBhbGwgb3JnYW5pemF0aW9ugtPkkwIiEiAvdjFiZXRhMS9hZG1pbi9vcmdhbml6YXRpb25zL2t5YxKqAgoMTGlzdFByb2plY3RzEi4ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0UHJvamVjdHNSZXF1ZXN0Gi8ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0UHJvamVjdHNSZXNwb25zZSK4AZJBlQEKB1Byb2plY3QSEUxpc3QgYWxsIHByb2plY3RzGndMaXN0cyBhbGwgdGhlIHByb2plY3RzIGZyb20gYWxsIHRoZSBvcmdhbml6YXRpb25zIGluIGEgRnJvbnRpZXIgaW5zdGFuY2UuIEl0IGNhbiBiZSBmaWx0ZXJlZCBieSBvcmdhbml6YXRpb24gYW5kIHN0YXRlLoLT5JMCGRIXL3YxYmV0YTEvYWRtaW4vcHJvamVjdHMStQEKDUxpc3RSZWxhdGlvbnMSLy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RSZWxhdGlvbnNSZXF1ZXN0GjAucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0UmVsYXRpb25zUmVzcG9uc2UiQZJBHgoIUmVsYXRpb24SEkxpc3QgYWxsIHJlbGF0aW9uc4LT5JMCGhIYL3YxYmV0YTEvYWRtaW4vcmVsYXRpb25zEsUCCg1MaXN0UmVzb3VyY2VzEi8ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0UmVzb3VyY2VzUmVxdWVzdBowLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdFJlc291cmNlc1Jlc3BvbnNlItABkkGsAQoIUmVzb3VyY2USEkxpc3QgYWxsIHJlc291cmNlcxqLAUxpc3RzIGFsbCB0aGUgcmVzb3VyY2VzIGZyb20gYWxsIHRoZSBvcmdhbml6YXRpb25zIGluIGEgRnJvbnRpZXIgaW5zdGFuY2UuIEl0IGNhbiBiZSBmaWx0ZXJlZCBieSB1c2VyLCBwcm9qZWN0LCBvcmdhbml6YXRpb24gYW5kIG5hbWVzcGFjZS6C0+STAhoSGC92MWJldGExL2FkbWluL3Jlc291cmNlcxKYAgoKQ3JlYXRlUm9sZRIsLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ3JlYXRlUm9sZVJlcXVlc3QaLS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNyZWF0ZVJvbGVSZXNwb25zZSKsAZJBjAEKBFJvbGUSFENyZWF0ZSBwbGF0Zm9ybSByb2xlGm5DcmVhdGVzIGEgcGxhdGZvcm0gd2lkZSByb2xlLiBJdCBjYW4gYmUgdXNlZCB0byBncmFudCBwZXJtaXNzaW9ucyB0byBhbGwgdGhlIHJlc291cmNlcyBpbiBhIEZyb250aWVyIGluc3RhbmNlLoLT5JMCFiIOL3YxYmV0YTEvcm9sZXM6BGJvZHkS1QEKClVwZGF0ZVJvbGUSLC5yYXlzdGFjay5mcm9udGllci52MWJldGExLlVwZGF0ZVJvbGVSZXF1ZXN0Gi0ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5VcGRhdGVSb2xlUmVzcG9uc2UiapJBRgoEUm9sZRILVXBkYXRlIHJvbGUaMVVwZGF0ZSBhIHJvbGUgdGl0bGUsIGRlc2NyaXB0aW9uIGFuZCBwZXJtaXNzaW9ucy6C0+STAhsaEy92MWJldGExL3JvbGVzL3tpZH06BGJvZHkS3AEKCkRlbGV0ZVJvbGUSLC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkRlbGV0ZVJvbGVSZXF1ZXN0Gi0ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5EZWxldGVSb2xlUmVzcG9uc2UicZJBUwoEUm9sZRIURGVsZXRlIHBsYXRmb3JtIHJvbGUaNURlbGV0ZSBhIHBsYXRmb3JtIHdpZGUgcm9sZSBhbmQgYWxsIG9mIGl0cyByZWxhdGlvbnMugtPkkwIVKhMvdjFiZXRhMS9yb2xlcy97aWR9ErECChBDcmVhdGVQZXJtaXNzaW9uEjIucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVQZXJtaXNzaW9uUmVxdWVzdBozLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ3JlYXRlUGVybWlzc2lvblJlc3BvbnNlIrMBkkGQAQoKUGVybWlzc2lvbhIaQ3JlYXRlIHBsYXRmb3JtIHBlcm1pc3Npb24aZkNyZWF0ZXMgYSBwZXJtaXNzaW9uLiBJdCBjYW4gYmUgdXNlZCB0byBncmFudCBwZXJtaXNzaW9ucyB0byBhbGwgdGhlIHJlc291cmNlcyBpbiBhIEZyb250aWVyIGluc3RhbmNlLoLT5JMCGSIUL3YxYmV0YTEvcGVybWlzc2lvbnM6ASoSvwIKEFVwZGF0ZVBlcm1pc3Npb24SMi5yYXlzdGFjay5mcm9udGllci52MWJldGExLlVwZGF0ZVBlcm1pc3Npb25SZXF1ZXN0GjMucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5VcGRhdGVQZXJtaXNzaW9uUmVzcG9uc2UiwQGSQZYBCgpQZXJtaXNzaW9uEhpVcGRhdGUgcGxhdGZvcm0gcGVybWlzc2lvbhpsVXBkYXRlcyBhIHBlcm1pc3Npb24gYnkgSUQuIEl0IGNhbiBiZSB1c2VkIHRvIGdyYW50IHBlcm1pc3Npb25zIHRvIGFsbCB0aGUgcmVzb3VyY2VzIGluIGEgRnJvbnRpZXIgaW5zdGFuY2UugtPkkwIhGhkvdjFiZXRhMS9wZXJtaXNzaW9ucy97aWR9OgRib2R5EskBChBEZWxldGVQZXJtaXNzaW9uEjIucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5EZWxldGVQZXJtaXNzaW9uUmVxdWVzdBozLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRGVsZXRlUGVybWlzc2lvblJlc3BvbnNlIkySQSgKClBlcm1pc3Npb24SGkRlbGV0ZSBwbGF0Zm9ybSBwZXJtaXNzaW9ugtPkkwIbKhkvdjFiZXRhMS9wZXJtaXNzaW9ucy97aWR9ErACCg9MaXN0UHJlZmVyZW5jZXMSMS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RQcmVmZXJlbmNlc1JlcXVlc3QaMi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RQcmVmZXJlbmNlc1Jlc3BvbnNlIrUBkkGVAQoKUHJlZmVyZW5jZRIZTGlzdCBwbGF0Zm9ybSBwcmVmZXJlbmNlcxpsUmV0dXJucyBhIGxpc3Qgb2YgYWxsIHByZWZlcmVuY2VzIGNvbmZpZ3VyZWQgb24gYW4gaW5zdGFuY2UgaW4gRnJvbnRpZXIuIGUuZyB1c2VyLCBwcm9qZWN0LCBvcmdhbml6YXRpb24gZXRjgtPkkwIWEhQvdjFiZXRhMS9wcmVmZXJlbmNlcxL7AgoRQ3JlYXRlUHJlZmVyZW5jZXMSMy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNyZWF0ZVByZWZlcmVuY2VzUmVxdWVzdBo0LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ3JlYXRlUHJlZmVyZW5jZXNSZXNwb25zZSL6AZJB1wEKClByZWZlcmVuY2USG0NyZWF0ZSBwbGF0Zm9ybSBwcmVmZXJlbmNlcxqrAUNyZWF0ZSBuZXcgcGxhdGZvcm0gcHJlZmVyZW5jZXMuIFRoZSBwbGF0Zm9ybSBwcmVmZXJlbmNlcyAqKm5hbWUqKiBtdXN0IGJlIHVuaXF1ZSB3aXRoaW4gdGhlIHBsYXRmb3JtIGFuZCBjYW4gY29udGFpbiBvbmx5IGFscGhhbnVtZXJpYyBjaGFyYWN0ZXJzLCBkYXNoZXMgYW5kIHVuZGVyc2NvcmVzLoLT5JMCGSIUL3YxYmV0YTEvcHJlZmVyZW5jZXM6ASoSgwMKIENoZWNrRmVkZXJhdGVkUmVzb3VyY2VQZXJtaXNzaW9uEkIucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DaGVja0ZlZGVyYXRlZFJlc291cmNlUGVybWlzc2lvblJlcXVlc3QaQy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNoZWNrRmVkZXJhdGVkUmVzb3VyY2VQZXJtaXNzaW9uUmVzcG9uc2Ui1QGSQbIBCgVBdXRoehIFQ2hlY2saoQFSZXR1cm5zIHRydWUgaWYgYSBwcmluY2lwYWwgaGFzIHJlcXVpcmVkIHBlcm1pc3Npb25zIHRvIGFjY2VzcyBhIHJlc291cmNlIGFuZCBmYWxzZSBvdGhlcndpc2UuPGJyLz4gTm90ZSB0aGUgcHJpbmNpcGFsIGNhbiBiZSBhIHVzZXIsIGdyb3VwIG9yIGEgc2VydmljZSBhY2NvdW50LoLT5JMCGSIUL3YxYmV0YTEvYWRtaW4vY2hlY2s6ASoS4AEKD0FkZFBsYXRmb3JtVXNlchIxLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQWRkUGxhdGZvcm1Vc2VyUmVxdWVzdBoyLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQWRkUGxhdGZvcm1Vc2VyUmVzcG9uc2UiZpJBOwoIUGxhdGZvcm0SEUFkZCBwbGF0Zm9ybSB1c2VyGhxBZGRzIGEgdXNlciB0byB0aGUgcGxhdGZvcm0ugtPkkwIiIh0vdjFiZXRhMS9hZG1pbi9wbGF0Zm9ybS91c2VyczoBKhLzAQoRTGlzdFBsYXRmb3JtVXNlcnMSMy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RQbGF0Zm9ybVVzZXJzUmVxdWVzdBo0LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdFBsYXRmb3JtVXNlcnNSZXNwb25zZSJzkkFLCghQbGF0Zm9ybRITTGlzdCBwbGF0Zm9ybSB1c2VycxoqTGlzdHMgYWxsIHRoZSB1c2VycyBhZGRlZCB0byB0aGUgcGxhdGZvcm0ugtPkkwIfEh0vdjFiZXRhMS9hZG1pbi9wbGF0Zm9ybS91c2VycxL4AQoSUmVtb3ZlUGxhdGZvcm1Vc2VyEjQucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5SZW1vdmVQbGF0Zm9ybVVzZXJSZXF1ZXN0GjUucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5SZW1vdmVQbGF0Zm9ybVVzZXJSZXNwb25zZSJ1kkFDCghQbGF0Zm9ybRIUUmVtb3ZlIHBsYXRmb3JtIHVzZXIaIVJlbW92ZXMgYSB1c2VyIGZyb20gdGhlIHBsYXRmb3JtLoLT5JMCKSIkL3YxYmV0YTEvYWRtaW4vcGxhdGZvcm0vdXNlcnMvcmVtb3ZlOgEqEsADChFEZWxlZ2F0ZWRDaGVja291dBIzLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRGVsZWdhdGVkQ2hlY2tvdXRSZXF1ZXN0GjQucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5EZWxlZ2F0ZWRDaGVja291dFJlc3BvbnNlIr8CkkGtAQoIQ2hlY2tvdXQSIkNoZWNrb3V0IGEgcHJvZHVjdCBvciBzdWJzY3JpcHRpb24afUNoZWNrb3V0IGEgcHJvZHVjdCB0byBidXkgaXQgb25lIHRpbWUgb3Igc3RhcnQgYSBzdWJzY3JpcHRpb24gcGxhbiBvbiBhIGJpbGxpbmcgYWNjb3VudCBtYW51YWxseS4gSXQgYnlwYXNzZXMgYmlsbGluZyBlbmdpbmUugtPkkwKHASJEL3YxYmV0YTEvYWRtaW4vb3JnYW5pemF0aW9ucy97b3JnX2lkfS9iaWxsaW5nL3tiaWxsaW5nX2lkfS9jaGVja291dHM6ASpaPCI3L3YxYmV0YTEvYWRtaW4vb3JnYW5pemF0aW9ucy97b3JnX2lkfS9iaWxsaW5nL2NoZWNrb3V0czoBKhKxAgoPTGlzdEFsbEludm9pY2VzEjEucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0QWxsSW52b2ljZXNSZXF1ZXN0GjIucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0QWxsSW52b2ljZXNSZXNwb25zZSK2AZJBiwEKB0ludm9pY2USEUxpc3QgYWxsIGludm9pY2VzGm1MaXN0cyBhbGwgdGhlIGludm9pY2VzIGZyb20gYWxsIHRoZSBvcmdhbml6YXRpb25zIGluIGEgRnJvbnRpZXIgaW5zdGFuY2UuIEl0IGNhbiBiZSBmaWx0ZXJlZCBieSBvcmdhbml6YXRpb24ugtPkkwIhEh8vdjFiZXRhMS9hZG1pbi9iaWxsaW5nL2ludm9pY2VzEqcCChBHZW5lcmF0ZUludm9pY2VzEjIucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5HZW5lcmF0ZUludm9pY2VzUmVxdWVzdBozLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR2VuZXJhdGVJbnZvaWNlc1Jlc3BvbnNlIqkBkkFzCgdJbnZvaWNlEhpUcmlnZ2VyIGludm9pY2UgZ2VuZXJhdGlvbhpMVHJpZ2dlcnMgdGhlIGNyZWF0aW9uIG9mIGNyZWRpdCBvdmVyZHJhZnQgaW52b2ljZXMgZm9yIGFsbCBiaWxsaW5nIGFjY291bnRzLoLT5JMCLSIoL3YxYmV0YTEvYWRtaW4vYmlsbGluZy9pbnZvaWNlcy9nZW5lcmF0ZToBKhLWAgoWTGlzdEFsbEJpbGxpbmdBY2NvdW50cxI4LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdEFsbEJpbGxpbmdBY2NvdW50c1JlcXVlc3QaOS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RBbGxCaWxsaW5nQWNjb3VudHNSZXNwb25zZSLGAZJBmwEKB0JpbGxpbmcSGUxpc3QgYWxsIGJpbGxpbmcgYWNjb3VudHMadUxpc3RzIGFsbCB0aGUgYmlsbGluZyBhY2NvdW50cyBmcm9tIGFsbCB0aGUgb3JnYW5pemF0aW9ucyBpbiBhIEZyb250aWVyIGluc3RhbmNlLiBJdCBjYW4gYmUgZmlsdGVyZWQgYnkgb3JnYW5pemF0aW9uLoLT5JMCIRIfL3YxYmV0YTEvYWRtaW4vYmlsbGluZy9hY2NvdW50cxLkAgoSUmV2ZXJ0QmlsbGluZ1VzYWdlEjQucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5SZXZlcnRCaWxsaW5nVXNhZ2VSZXF1ZXN0GjUucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5SZXZlcnRCaWxsaW5nVXNhZ2VSZXNwb25zZSLgAZJBTAoHQmlsbGluZxIUUmV2ZXJ0IGJpbGxpbmcgdXNhZ2UaK1JldmVydCBiaWxsaW5nIHVzYWdlIGZvciBhIGJpbGxpbmcgYWNjb3VudC6C0+STAooBIlIvdjFiZXRhMS9hZG1pbi9vcmdhbml6YXRpb25zL3tvcmdfaWR9L2JpbGxpbmcve2JpbGxpbmdfaWR9L3VzYWdlL3t1c2FnZV9pZH0vcmV2ZXJ0OgEqWjEiLC92MWJldGExL29yZ2FuaXphdGlvbnMvYmlsbGluZy91c2FnZXMvcmV2ZXJ0OgEqEskBCg1DcmVhdGVXZWJob29rEi8ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVXZWJob29rUmVxdWVzdBowLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ3JlYXRlV2ViaG9va1Jlc3BvbnNlIlWSQTAKB1dlYmhvb2sSDkNyZWF0ZSB3ZWJob29rGhVDcmVhdGUgYSBuZXcgd2ViaG9vay6C0+STAhwiFy92MWJldGExL2FkbWluL3dlYmhvb2tzOgEqEsoBCg1VcGRhdGVXZWJob29rEi8ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5VcGRhdGVXZWJob29rUmVxdWVzdBowLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuVXBkYXRlV2ViaG9va1Jlc3BvbnNlIlaSQSwKB1dlYmhvb2sSDlVwZGF0ZSB3ZWJob29rGhFVcGRhdGUgYSB3ZWJob29rLoLT5JMCIRocL3YxYmV0YTEvYWRtaW4vd2ViaG9va3Mve2lkfToBKhLHAQoNRGVsZXRlV2ViaG9vaxIvLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRGVsZXRlV2ViaG9va1JlcXVlc3QaMC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkRlbGV0ZVdlYmhvb2tSZXNwb25zZSJTkkEsCgdXZWJob29rEg5EZWxldGUgd2ViaG9vaxoRRGVsZXRlIGEgd2ViaG9vay6C0+STAh4qHC92MWJldGExL2FkbWluL3dlYmhvb2tzL3tpZH0SvwEKDExpc3RXZWJob29rcxIuLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdFdlYmhvb2tzUmVxdWVzdBovLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdFdlYmhvb2tzUmVzcG9uc2UiTpJBLAoHV2ViaG9vaxINTGlzdCB3ZWJob29rcxoSTGlzdCBhbGwgd2ViaG9va3MugtPkkwIZEhcvdjFiZXRhMS9hZG1pbi93ZWJob29rcxKwAgoaVXBkYXRlQmlsbGluZ0FjY291bnRMaW1pdHMSPC5yYXlzdGFjay5mcm9udGllci52MWJldGExLlVwZGF0ZUJpbGxpbmdBY2NvdW50TGltaXRzUmVxdWVzdBo9LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuVXBkYXRlQmlsbGluZ0FjY291bnRMaW1pdHNSZXNwb25zZSKUAYgCAZJBSgoHQmlsbGluZxIdVXBkYXRlIGJpbGxpbmcgYWNjb3VudCBsaW1pdHMaHlVwZGF0ZSBiaWxsaW5nIGFjY291bnQgbGltaXRzLlgBgtPkkwI+GjkvdjFiZXRhMS9hZG1pbi9vcmdhbml6YXRpb25zL3tvcmdfaWR9L2JpbGxpbmcve2lkfS9saW1pdHM6ASoSswIKGEdldEJpbGxpbmdBY2NvdW50RGV0YWlscxI6LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR2V0QmlsbGluZ0FjY291bnREZXRhaWxzUmVxdWVzdBo7LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR2V0QmlsbGluZ0FjY291bnREZXRhaWxzUmVzcG9uc2UinQGSQVgKB0JpbGxpbmcSG0dldCBiaWxsaW5nIGFjY291bnQgZGV0YWlscxowR2V0IGJpbGxpbmcgYWNjb3VudCBkZXRhaWxzIHRoYXQgY2FuIGJlIHVwZGF0ZWQugtPkkwI8EjovdjFiZXRhMS9hZG1pbi9vcmdhbml6YXRpb25zL3tvcmdfaWR9L2JpbGxpbmcve2lkfS9kZXRhaWxzErECChtVcGRhdGVCaWxsaW5nQWNjb3VudERldGFpbHMSPS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlVwZGF0ZUJpbGxpbmdBY2NvdW50RGV0YWlsc1JlcXVlc3QaPi5yYXlzdGFjay5mcm9udGllci52MWJldGExLlVwZGF0ZUJpbGxpbmdBY2NvdW50RGV0YWlsc1Jlc3BvbnNlIpIBkkFKCgdCaWxsaW5nEh5VcGRhdGUgYmlsbGluZyBhY2NvdW50IGRldGFpbHMaH1VwZGF0ZSBiaWxsaW5nIGFjY291bnQgZGV0YWlscy6C0+STAj8aOi92MWJldGExL2FkbWluL29yZ2FuaXphdGlvbnMve29yZ19pZH0vYmlsbGluZy97aWR9L2RldGFpbHM6ASoS5wEKDkNyZWF0ZVByb3NwZWN0EjAucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVQcm9zcGVjdFJlcXVlc3QaMS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNyZWF0ZVByb3NwZWN0UmVzcG9uc2UicJJBSgoIUHJvc3BlY3QSD0NyZWF0ZSBwcm9zcGVjdBotQ3JlYXRlIHByb3NwZWN0IGZvciBnaXZlbiBlbWFpbCBhbmQgYWN0aXZpdHkugtPkkwIdIhgvdjFiZXRhMS9hZG1pbi9wcm9zcGVjdHM6ASoS/AEKDUxpc3RQcm9zcGVjdHMSLy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RQcm9zcGVjdHNSZXF1ZXN0GjAucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0UHJvc3BlY3RzUmVzcG9uc2UihwGSQVgKCFByb3NwZWN0Eg5MaXN0IHByb3NwZWN0cxo8TGlzdCBwcm9zcGVjdHMgYW5kIHN1cHBvcnRzIGZpbHRlcnMsIHNvcnRpbmcgYW5kIHBhZ2luYXRpb24ugtPkkwImIh0vdjFiZXRhMS9hZG1pbi9wcm9zcGVjdHMvbGlzdDoFcXVlcnkSwgEKC0dldFByb3NwZWN0Ei0ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5HZXRQcm9zcGVjdFJlcXVlc3QaLi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkdldFByb3NwZWN0UmVzcG9uc2UiVJJBLAoIUHJvc3BlY3QSDEdldCBwcm9zcGVjdBoSR2V0IHByb3NwZWN0IGJ5IElEgtPkkwIfEh0vdjFiZXRhMS9hZG1pbi9wcm9zcGVjdHMve2lkfRLbAQoOVXBkYXRlUHJvc3BlY3QSMC5yYXlzdGFjay5mcm9udGllci52MWJldGExLlVwZGF0ZVByb3NwZWN0UmVxdWVzdBoxLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuVXBkYXRlUHJvc3BlY3RSZXNwb25zZSJkkkE5CghQcm9zcGVjdBIPVXBkYXRlIHByb3NwZWN0GhxVcGRhdGUgcHJvc3BlY3QgZm9yIGdpdmVuIElEgtPkkwIiGh0vdjFiZXRhMS9hZG1pbi9wcm9zcGVjdHMve2lkfToBKhLYAQoORGVsZXRlUHJvc3BlY3QSMC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkRlbGV0ZVByb3NwZWN0UmVxdWVzdBoxLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRGVsZXRlUHJvc3BlY3RSZXNwb25zZSJhkkE5CghQcm9zcGVjdBIPRGVsZXRlIHByb3NwZWN0GhxEZWxldGUgcHJvc3BlY3QgZm9yIGdpdmVuIElEgtPkkwIfKh0vdjFiZXRhMS9hZG1pbi9wcm9zcGVjdHMve2lkfRLaAQoOU2VhcmNoSW52b2ljZXMSMC5yYXlzdGFjay5mcm9udGllci52MWJldGExLlNlYXJjaEludm9pY2VzUmVxdWVzdBoxLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuU2VhcmNoSW52b2ljZXNSZXNwb25zZSJjkkEzCgdpbnZvaWNlEihTZWFyY2ggaW52b2ljZXMgYWNyb3NzIGFsbCBvcmdhbml6YXRpb25zgtPkkwInIh4vdjFiZXRhMS9hZG1pbi9pbnZvaWNlcy9zZWFyY2g6BXF1ZXJ5ErQCChNHZXRDdXJyZW50QWRtaW5Vc2VyEjUucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5HZXRDdXJyZW50QWRtaW5Vc2VyUmVxdWVzdBo2LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR2V0Q3VycmVudEFkbWluVXNlclJlc3BvbnNlIq0BkkGIAQoEVXNlchIWR2V0IGN1cnJlbnQgYWRtaW4gdXNlchpoUmV0dXJucyB0aGUgY3VycmVudCBhdXRoZW50aWNhdGVkIGFkbWluIHVzZXIgcHJvZmlsZS4gUmV0dXJucyA0MDMgRm9yYmlkZGVuIGlmIHRoZSB1c2VyIGlzIG5vdCBhbiBhZG1pbi6C0+STAhsSGS92MWJldGExL2FkbWluL3VzZXJzL3NlbGYSfQoQTGlzdFVzZXJTZXNzaW9ucxIyLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdFVzZXJTZXNzaW9uc1JlcXVlc3QaMy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RVc2VyU2Vzc2lvbnNSZXNwb25zZSIAEoABChFSZXZva2VVc2VyU2Vzc2lvbhIzLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUmV2b2tlVXNlclNlc3Npb25SZXF1ZXN0GjQucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5SZXZva2VVc2VyU2Vzc2lvblJlc3BvbnNlIgBC8A4KI2lvLnJheXN0YWNrLnByb3Rvbi5mcm9udGllci52MWJldGExQghGcm9udGllclo7Z2l0aHViLmNvbS9yYXlzdGFjay9wcm90b24vZnJvbnRpZXIvdjFiZXRhMTtmcm9udGllcnYxYmV0YTGSQYAOEv4GChtGcm9udGllciBBZG1pbmlzdHJhdGlvbiBBUEkSzwVUaGUgRnJvbnRpZXIgQVBJcyBhZGhlcmUgdG8gdGhlIE9wZW5BUEkgc3BlY2lmaWNhdGlvbiwgYWxzbyBrbm93biBhcyBTd2FnZ2VyLCB3aGljaCBwcm92aWRlcyBhIHN0YW5kYXJkaXplZCBhcHByb2FjaCBmb3IgZGVzaWduaW5nLCBkb2N1bWVudGluZywgYW5kIGNvbnN1bWluZyBSRVNUZnVsIEFQSXMuIFdpdGggT3BlbkFQSSwgeW91IGdhaW4gYSBjbGVhciB1bmRlcnN0YW5kaW5nIG9mIHRoZSBBUEkgZW5kcG9pbnRzLCByZXF1ZXN0L3Jlc3BvbnNlIHN0cnVjdHVyZXMsIGFuZCBhdXRoZW50aWNhdGlvbiBtZWNoYW5pc21zIHN1cHBvcnRlZCBieSB0aGUgRnJvbnRpZXIgQVBJcy4gQnkgbGV2ZXJhZ2luZyB0aGUgT3BlbkFQSSBzcGVjaWZpY2F0aW9uLCBkZXZlbG9wZXJzIGNhbiBlYXNpbHkgZXhwbG9yZSBhbmQgaW50ZXJhY3Qgd2l0aCB0aGUgRnJvbnRpZXIgQVBJcyB1c2luZyBhIHZhcmlldHkgb2YgdG9vbHMgYW5kIGxpYnJhcmllcy4gVGhlIE9wZW5BUEkgc3BlY2lmaWNhdGlvbiBlbmFibGVzIGF1dG9tYXRpYyBjb2RlIGdlbmVyYXRpb24sIGludGVyYWN0aXZlIEFQSSBkb2N1bWVudGF0aW9uLCBhbmQgc2VhbWxlc3MgaW50ZWdyYXRpb24gd2l0aCBBUEkgdGVzdGluZyBmcmFtZXdvcmtzLCBtYWtpbmcgaXQgZWFzaWVyIHRoYW4gZXZlciB0byBpbnRlZ3JhdGUgRnJvbnRpZXIgaW50byB5b3VyIGV4aXN0aW5nIGFwcGxpY2F0aW9ucyBhbmQgd29ya2Zsb3dzLiJAChNSYXlzdGFjayBGb3VuZGF0aW9uEhVodHRwczovL3JheXN0YWNrLm9yZy8aEmhlbGxvQHJheXN0YWNrLm9yZypECgpBcGFjaGUgMi4wEjZodHRwczovL2dpdGh1Yi5jb20vcmF5c3RhY2svZnJvbnRpZXIvYmxvYi9tYWluL0xJQ0VOU0UyBTAuMi4wGg4xMjcuMC4wLjE6NzQwMCoBATIQYXBwbGljYXRpb24vanNvbjoQYXBwbGljYXRpb24vanNvblI8CgMyMDASNQobT0sgLSBBIHN1Y2Nlc3NmdWwgcmVzcG9uc2UuEhYKFBoSLmdvb2dsZS5ycGMuU3RhdHVzUmkKAzQwMBJiCkhCYWQgUmVxdWVzdCAtIFRoZSByZXF1ZXN0IHdhcyBtYWxmb3JtZWQgb3IgY29udGFpbmVkIGludmFsaWQgcGFyYW1ldGVycy4SFgoUGhIuZ29vZ2xlLnJwYy5TdGF0dXNSSgoDNDAxEkMKKVVuYXV0aG9yaXplZCAtIEF1dGhlbnRpY2F0aW9uIGlzIHJlcXVpcmVkEhYKFBoSLmdvb2dsZS5ycGMuU3RhdHVzUmEKAzQwMxJaCkBGb3JiaWRkZW4gLSBVc2VyIGRvZXMgbm90IGhhdmUgcGVybWlzc2lvbiB0byBhY2Nlc3MgdGhlIHJlc291cmNlEhYKFBoSLmdvb2dsZS5ycGMuU3RhdHVzUlEKAzQwNBJKCjBOb3QgRm91bmQgLSBUaGUgcmVxdWVzdGVkIHJlc291cmNlIHdhcyBub3QgZm91bmQSFgoUGhIuZ29vZ2xlLnJwYy5TdGF0dXNSdQoDNTAwEm4KVEludGVybmFsIFNlcnZlciBFcnJvci4gUmV0dXJuZWQgd2hlbiB0aGVyZXMgaXMgc29tZXRoaW5nIHdyb25nIHdpdGggRnJvbnRpZXIgc2VydmVyLhIWChQaEi5nb29nbGUucnBjLlN0YXR1c1qoAQpOCgVCYXNpYxJFCAESN3VzZSBDbGllbnQgSUQgYXMgdXNlcm5hbWUgYW5kIENsaWVudCBTZWNyZXQgYXMgcGFzc3dvcmQaBkJhc2ljICACClYKBkJlYXJlchJMCAMSPUFjY2VzcyB0b2tlbiBvciBKV1QgdG9rZW4sIHByZWZpeGVkIGJ5IEJlYXJlcjogQmVhcmVyIDx0b2tlbj4aB0JlYXJlciAgAmIJCgcKBUJhc2ljYgoKCAoGQmVhcmVyagYKBFVzZXJqBwoFR3JvdXBqDgoMT3JnYW5pemF0aW9uagkKB1Byb2plY3RqCgoIUmVsYXRpb25qCgoIUmVzb3VyY2VqCAoGUG9saWN5agYKBFJvbGVqDAoKUGVybWlzc2lvbmIGcHJvdG8z", [file_google_api_annotations, file_google_api_field_behavior, file_google_protobuf_struct, file_google_protobuf_timestamp, file_google_api_httpbody, file_protoc_gen_openapiv2_options_annotations, file_raystack_frontier_v1beta1_models, file_validate_validate]);
18
+ fileDesc("CiVyYXlzdGFjay9mcm9udGllci92MWJldGExL2FkbWluLnByb3RvEhlyYXlzdGFjay5mcm9udGllci52MWJldGExIuADChNMaXN0QWxsVXNlcnNSZXF1ZXN0EmMKCXBhZ2Vfc2l6ZRgBIAEoBUJQkkFEMkJUaGUgbWF4aW11bSBudW1iZXIgb2YgdXNlcnMgdG8gcmV0dXJuIHBlciBwYWdlLiBUaGUgZGVmYXVsdCBpcyA1MC76QgYaBCgBQAESTAoIcGFnZV9udW0YAiABKAVCOpJBLjIsVGhlIHBhZ2UgbnVtYmVyIHRvIHJldHVybi4gVGhlIGRlZmF1bHQgaXMgMS76QgYaBCgBQAESXwoHa2V5d29yZBgDIAEoCUJOkkFLMklUaGUga2V5d29yZCB0byBzZWFyY2ggZm9yLiBJdCBjYW4gYmUgYSB1c2VyJ3MgbmFtZSwgZW1haWwsbWV0YWRhdGEgb3IgaWQuEjYKBm9yZ19pZBgEIAEoCUImkkEjMiFUaGUgb3JnYW5pemF0aW9uIGlkIHRvIGZpbHRlciBieS4SMQoIZ3JvdXBfaWQYBSABKAlCH5JBHDIaVGhlIGdyb3VwIGlkIHRvIGZpbHRlciBieS4SSgoFc3RhdGUYBiABKAlCO5JBODI2VGhlIHN0YXRlIHRvIGZpbHRlciBieS4gSXQgY2FuIGJlIGVuYWJsZWQgb3IgZGlzYWJsZWQuIlUKFExpc3RBbGxVc2Vyc1Jlc3BvbnNlEg0KBWNvdW50GAEgASgFEi4KBXVzZXJzGAIgAygLMh8ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Vc2VyIhwKGkxpc3RBbGxTZXJ2aWNlVXNlcnNSZXF1ZXN0IlwKG0xpc3RBbGxTZXJ2aWNlVXNlcnNSZXNwb25zZRI9Cg1zZXJ2aWNlX3VzZXJzGAEgAygLMiYucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5TZXJ2aWNlVXNlciKdAQoRTGlzdEdyb3Vwc1JlcXVlc3QSNgoGb3JnX2lkGAIgASgJQiaSQSMyIVRoZSBvcmdhbml6YXRpb24gaWQgdG8gZmlsdGVyIGJ5LhJKCgVzdGF0ZRgDIAEoCUI7kkE4MjZUaGUgc3RhdGUgdG8gZmlsdGVyIGJ5LiBJdCBjYW4gYmUgZW5hYmxlZCBvciBkaXNhYmxlZC5KBAgBEAIiRgoSTGlzdEdyb3Vwc1Jlc3BvbnNlEjAKBmdyb3VwcxgBIAMoCzIgLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR3JvdXAi1QIKG0xpc3RBbGxPcmdhbml6YXRpb25zUmVxdWVzdBIvCgd1c2VyX2lkGAEgASgJQh6SQRsyGVRoZSB1c2VyIGlkIHRvIGZpbHRlciBieS4SSgoFc3RhdGUYAiABKAlCO5JBODI2VGhlIHN0YXRlIHRvIGZpbHRlciBieS4gSXQgY2FuIGJlIGVuYWJsZWQgb3IgZGlzYWJsZWQuEmsKCXBhZ2Vfc2l6ZRgDIAEoBUJYkkFMMkpUaGUgbWF4aW11bSBudW1iZXIgb2Ygb3JnYW5pemF0aW9ucyB0byByZXR1cm4gcGVyIHBhZ2UuIFRoZSBkZWZhdWx0IGlzIDUwLvpCBhoEKAFAARJMCghwYWdlX251bRgEIAEoBUI6kkEuMixUaGUgcGFnZSBudW1iZXIgdG8gcmV0dXJuLiBUaGUgZGVmYXVsdCBpcyAxLvpCBhoEKAFAASKTAQocTGlzdEFsbE9yZ2FuaXphdGlvbnNSZXNwb25zZRI+Cg1vcmdhbml6YXRpb25zGAEgAygLMicucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Pcmdhbml6YXRpb24SMwoFY291bnQYAiABKAVCJJJBITIfVG90YWwgbnVtYmVyIG9mIHJlY29yZHMgcHJlc2VudCKZAQoTTGlzdFByb2plY3RzUmVxdWVzdBI2CgZvcmdfaWQYASABKAlCJpJBIzIhVGhlIG9yZ2FuaXphdGlvbiBpZCB0byBmaWx0ZXIgYnkuEkoKBXN0YXRlGAIgASgJQjuSQTgyNlRoZSBzdGF0ZSB0byBmaWx0ZXIgYnkuIEl0IGNhbiBiZSBlbmFibGVkIG9yIGRpc2FibGVkLiJMChRMaXN0UHJvamVjdHNSZXNwb25zZRI0Cghwcm9qZWN0cxgBIAMoCzIiLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUHJvamVjdCJ2ChRMaXN0UmVsYXRpb25zUmVxdWVzdBIvCgdzdWJqZWN0GAEgASgJQh6SQRsyGVRoZSBzdWJqZWN0IHRvIGZpbHRlciBieS4SLQoGb2JqZWN0GAIgASgJQh2SQRoyGFRoZSBvYmplY3QgdG8gZmlsdGVyIGJ5LiJPChVMaXN0UmVsYXRpb25zUmVzcG9uc2USNgoJcmVsYXRpb25zGAEgAygLMiMucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5SZWxhdGlvbiL7AQoUTGlzdFJlc291cmNlc1JlcXVlc3QSLwoHdXNlcl9pZBgBIAEoCUIekkEbMhlUaGUgdXNlciBpZCB0byBmaWx0ZXIgYnkuEjUKCnByb2plY3RfaWQYAiABKAlCIZJBHjIcVGhlIHByb2plY3QgaWQgdG8gZmlsdGVyIGJ5LhI/Cg9vcmdhbml6YXRpb25faWQYAyABKAlCJpJBIzIhVGhlIG9yZ2FuaXphdGlvbiBpZCB0byBmaWx0ZXIgYnkuEjoKCW5hbWVzcGFjZRgEIAEoCUInkkEdMhtUaGUgbmFtZXNwYWNlIHRvIGZpbHRlciBieS76QgRyAhADIk8KFUxpc3RSZXNvdXJjZXNSZXNwb25zZRI2CglyZXNvdXJjZXMYASADKAsyIy5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJlc291cmNlIk0KEUNyZWF0ZVJvbGVSZXF1ZXN0EjgKBGJvZHkYASABKAsyKi5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJvbGVSZXF1ZXN0Qm9keSJDChJDcmVhdGVSb2xlUmVzcG9uc2USLQoEcm9sZRgBIAEoCzIfLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUm9sZSJ6ChFVcGRhdGVSb2xlUmVxdWVzdBIrCgJpZBgBIAEoCUIfkkEYMhZUaGUgcm9sZSBpZCB0byB1cGRhdGUu4kEBAhI4CgRib2R5GAIgASgLMioucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Sb2xlUmVxdWVzdEJvZHkiQwoSVXBkYXRlUm9sZVJlc3BvbnNlEi0KBHJvbGUYASABKAsyHy5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJvbGUiQAoRRGVsZXRlUm9sZVJlcXVlc3QSKwoCaWQYASABKAlCH5JBGDIWVGhlIHJvbGUgaWQgdG8gZGVsZXRlLuJBAQIiFAoSRGVsZXRlUm9sZVJlc3BvbnNlIr4GChVQZXJtaXNzaW9uUmVxdWVzdEJvZHkSjQEKBG5hbWUYASABKAlCfxgBkkF6MnhUaGUgbmFtZSBvZiB0aGUgcGVybWlzc2lvbi4gSXQgc2hvdWxkIGJlIHVuaXF1ZSBhY3Jvc3MgYSBGcm9udGllciBpbnN0YW5jZSBhbmQgY2FuIGNvbnRhaW4gb25seSBhbHBoYW51bWVyaWMgY2hhcmFjdGVycy4SjwEKCW5hbWVzcGFjZRgCIAEoCUJ8GAGSQXcydVRoZSBuYW1lc3BhY2Ugb2YgdGhlIHBlcm1pc3Npb24uIFRoZSBuYW1lc3BhY2Ugc2hvdWxkIGJlIGluIHNlcnZpY2UvcmVzb3VyY2UgZm9ybWF0Ljxici8+KkV4YW1wbGU6KmBjb21wdXRlL2d1YXJkaWFuYBJyCghtZXRhZGF0YRgDIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RCR5JBRDJCVGhlIG1ldGFkYXRhIG9iamVjdCBmb3IgcGVybWlzc2lvbnMgdGhhdCBjYW4gaG9sZCBrZXkgdmFsdWUgcGFpcnMuEpIBCgV0aXRsZRgEIAEoCUKCAZJBfzJ9VGhlIHRpdGxlIGNhbiBjb250YWluIGFueSBVVEYtOCBjaGFyYWN0ZXIsIHVzZWQgdG8gcHJvdmlkZSBhIGh1bWFuLXJlYWRhYmxlIG5hbWUgZm9yIHRoZSBwZXJtaXNzaW9ucy4gQ2FuIGFsc28gYmUgbGVmdCBlbXB0eS4S+QEKA2tleRgFIAEoCULrAZJB5wEyzAFQZXJtaXNzaW9uIHBhdGgga2V5IGlzIGNvbXBvc2VkIG9mIHRocmVlIHBhcnRzLCAnc2VydmljZS5yZXNvdXJjZS52ZXJiJy4gV2hlcmUgJ3NlcnZpY2UucmVzb3VyY2UnIHdvcmtzIGFzIGEgbmFtZXNwYWNlIGZvciB0aGUgJ3ZlcmInLiBOYW1lc3BhY2UgbmFtZSBjYW5ub3QgYmUgYGFwcGAgYXMgaXQncyByZXNlcnZlZCBmb3IgY29yZSBwZXJtaXNzaW9ucy5KFiJjb21wdXRlLmluc3RhbmNlLmdldCIiWwoXQ3JlYXRlUGVybWlzc2lvblJlcXVlc3QSQAoGYm9kaWVzGAEgAygLMjAucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5QZXJtaXNzaW9uUmVxdWVzdEJvZHkiVgoYQ3JlYXRlUGVybWlzc2lvblJlc3BvbnNlEjoKC3Blcm1pc3Npb25zGAEgAygLMiUucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5QZXJtaXNzaW9uImsKF1VwZGF0ZVBlcm1pc3Npb25SZXF1ZXN0EhAKAmlkGAEgASgJQgTiQQECEj4KBGJvZHkYAiABKAsyMC5yYXlzdGFjay5mcm9udGllci52MWJldGExLlBlcm1pc3Npb25SZXF1ZXN0Qm9keSJVChhVcGRhdGVQZXJtaXNzaW9uUmVzcG9uc2USOQoKcGVybWlzc2lvbhgBIAEoCzIlLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUGVybWlzc2lvbiIlChdEZWxldGVQZXJtaXNzaW9uUmVxdWVzdBIKCgJpZBgBIAEoCSIaChhEZWxldGVQZXJtaXNzaW9uUmVzcG9uc2UiGAoWTGlzdFByZWZlcmVuY2VzUmVxdWVzdCJVChdMaXN0UHJlZmVyZW5jZXNSZXNwb25zZRI6CgtwcmVmZXJlbmNlcxgBIAMoCzIlLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUHJlZmVyZW5jZSJhChhDcmVhdGVQcmVmZXJlbmNlc1JlcXVlc3QSRQoLcHJlZmVyZW5jZXMYASADKAsyMC5yYXlzdGFjay5mcm9udGllci52MWJldGExLlByZWZlcmVuY2VSZXF1ZXN0Qm9keSJWChlDcmVhdGVQcmVmZXJlbmNlc1Jlc3BvbnNlEjkKCnByZWZlcmVuY2UYASADKAsyJS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlByZWZlcmVuY2Ui1wUKJ0NoZWNrRmVkZXJhdGVkUmVzb3VyY2VQZXJtaXNzaW9uUmVxdWVzdBJWCgdzdWJqZWN0GAEgASgJQkWSQT4yPHRoZSBzdWJqZWN0IHRvIGNoZWNrLiA8YnIvPiAqRXhhbXBsZToqIGB1c2VyOi4udXVpZG9mdXNlci4uYOJBAQISxAMKCHJlc291cmNlGAIgASgJQrEDkkGpAzKmA2BuYW1lc3BhY2U6dXVpZGAgb3IgYG5hbWVzcGFjZTpuYW1lYCBvZiB0aGUgb3JnIG9yIHByb2plY3QsIGFuZCBgbmFtZXNwYWNlOnVybmAgb2YgYSByZXNvdXJjZSB1bmRlciBhIHByb2plY3QuIEluIGNhc2Ugb2YgYW4gb3JnL3Byb2plY3QgZWl0aGVyIHByb3ZpZGUgdGhlIGNvbXBsZXRlIG5hbWVzcGFjZSAoYXBwL29yZ2FuaXphdGlvbikgb3IgRnJvbnRpZXIgY2FuIGFsc28gcGFyc2UgYWxpYXNlcyBmb3IgdGhlIHNhbWUgYXMgYG9yZ2Agb3IgYHByb2plY3RgLiA8YnIvPiAqRXhhbXBsZToqIGBvcmdhbml6YXRpb246OTJmNjljM2EtMzM0Yi00ZjI1LTkwYjgtNGQ0ZjNiZTZiODI1YCBvciBgYXBwL3Byb2plY3Q6cHJvamVjdC1uYW1lYCBvciBgY29tcHV0ZS9pbnN0YW5jZTo5MmY2OWMzYS0zMzRiLTRmMjUtOTBiOC00ZDRmM2JlNmI4MjVg4kEBAhKMAQoKcGVybWlzc2lvbhgDIAEoCUJ4kkFZMld0aGUgcGVybWlzc2lvbiBuYW1lIHRvIGNoZWNrLiA8YnIvPiAqRXhhbXBsZToqIGBnZXRgLCBgbGlzdGAsIGBjb21wdXRlLmluc3RhbmNlLmNyZWF0ZWDiQQEC+kIVchMyEV5bQS1aYS16MC05Ll8tXSskIjoKKENoZWNrRmVkZXJhdGVkUmVzb3VyY2VQZXJtaXNzaW9uUmVzcG9uc2USDgoGc3RhdHVzGAEgASgIIvwBChZBZGRQbGF0Zm9ybVVzZXJSZXF1ZXN0EjkKB3VzZXJfaWQYASABKAlCKJJBJTIjVGhlIHVzZXIgaWQgdG8gYWRkIHRvIHRoZSBwbGF0Zm9ybS4SSAoOc2VydmljZXVzZXJfaWQYAiABKAlCMJJBLTIrVGhlIHNlcnZpY2UgdXNlciBpZCB0byBhZGQgdG8gdGhlIHBsYXRmb3JtLhJdCghyZWxhdGlvbhgDIAEoCUJLkkFEMkJUaGUgcmVsYXRpb24gdG8gYWRkIGFzIGluIHRoZSBwbGF0Zm9ybS4gSXQgY2FuIGJlIGFkbWluIG9yIG1lbWJlci7iQQECIhkKF0FkZFBsYXRmb3JtVXNlclJlc3BvbnNlIhoKGExpc3RQbGF0Zm9ybVVzZXJzUmVxdWVzdCKJAQoZTGlzdFBsYXRmb3JtVXNlcnNSZXNwb25zZRIuCgV1c2VycxgBIAMoCzIfLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuVXNlchI8CgxzZXJ2aWNldXNlcnMYAiADKAsyJi5yYXlzdGFjay5mcm9udGllci52MWJldGExLlNlcnZpY2VVc2VyIrIBChlSZW1vdmVQbGF0Zm9ybVVzZXJSZXF1ZXN0EkIKB3VzZXJfaWQYASABKAlCMZJBLjIsVGhlIHVzZXIgaWQgdG8gcmVtb3ZlIGZyb20gdGhlIHRoZSBwbGF0Zm9ybS4SUQoOc2VydmljZXVzZXJfaWQYAiABKAlCOZJBNjI0VGhlIHNlcnZpY2UgdXNlciBpZCB0byByZW1vdmUgZnJvbSB0aGUgdGhlIHBsYXRmb3JtLiIcChpSZW1vdmVQbGF0Zm9ybVVzZXJSZXNwb25zZSLqAQoYRGVsZWdhdGVkQ2hlY2tvdXRSZXF1ZXN0EhcKBm9yZ19pZBgBIAEoCUIH+kIEcgIQAxIfCgpiaWxsaW5nX2lkGAIgASgJQgv6QghyBrABAdABARJOChFzdWJzY3JpcHRpb25fYm9keRgKIAEoCzIzLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ2hlY2tvdXRTdWJzY3JpcHRpb25Cb2R5EkQKDHByb2R1Y3RfYm9keRgLIAEoCzIuLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ2hlY2tvdXRQcm9kdWN0Qm9keSKPAQoZRGVsZWdhdGVkQ2hlY2tvdXRSZXNwb25zZRI9CgxzdWJzY3JpcHRpb24YASABKAsyJy5yYXlzdGFjay5mcm9udGllci52MWJldGExLlN1YnNjcmlwdGlvbhIzCgdwcm9kdWN0GAIgASgLMiIucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Qcm9kdWN0It4BChZMaXN0QWxsSW52b2ljZXNSZXF1ZXN0Eg4KBm9yZ19pZBgBIAEoCRJmCglwYWdlX3NpemUYAiABKAVCU5JBRzJFVGhlIG1heGltdW0gbnVtYmVyIG9mIGludm9pY2VzIHRvIHJldHVybiBwZXIgcGFnZS4gVGhlIGRlZmF1bHQgaXMgNTAu+kIGGgQoAUABEkwKCHBhZ2VfbnVtGAMgASgFQjqSQS4yLFRoZSBwYWdlIG51bWJlciB0byByZXR1cm4uIFRoZSBkZWZhdWx0IGlzIDEu+kIGGgQoAUABIoQBChdMaXN0QWxsSW52b2ljZXNSZXNwb25zZRI0CghpbnZvaWNlcxgBIAMoCzIiLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuSW52b2ljZRIzCgVjb3VudBgCIAEoBUIkkkEhMh9Ub3RhbCBudW1iZXIgb2YgcmVjb3JkcyBwcmVzZW50IhkKF0dlbmVyYXRlSW52b2ljZXNSZXF1ZXN0IhoKGEdlbmVyYXRlSW52b2ljZXNSZXNwb25zZSIvCh1MaXN0QWxsQmlsbGluZ0FjY291bnRzUmVxdWVzdBIOCgZvcmdfaWQYASABKAkiZQoeTGlzdEFsbEJpbGxpbmdBY2NvdW50c1Jlc3BvbnNlEkMKEGJpbGxpbmdfYWNjb3VudHMYASADKAsyKS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkJpbGxpbmdBY2NvdW50IpUBChlSZXZlcnRCaWxsaW5nVXNhZ2VSZXF1ZXN0Eg4KBm9yZ19pZBgBIAEoCRISCgpwcm9qZWN0X2lkGAIgASgJEh8KCmJpbGxpbmdfaWQYAyABKAlCC/pCCHIGsAEB0AEBEhoKCHVzYWdlX2lkGAQgASgJQgj6QgVyA7ABARIXCgZhbW91bnQYBSABKANCB/pCBCICKAAiHAoaUmV2ZXJ0QmlsbGluZ1VzYWdlUmVzcG9uc2UirwIKEldlYmhvb2tSZXF1ZXN0Qm9keRIVCgN1cmwYASABKAlCCPpCBXIDiAEBEhMKC2Rlc2NyaXB0aW9uGAIgASgJEhkKEXN1YnNjcmliZWRfZXZlbnRzGAMgAygJEksKB2hlYWRlcnMYBCADKAsyOi5yYXlzdGFjay5mcm9udGllci52MWJldGExLldlYmhvb2tSZXF1ZXN0Qm9keS5IZWFkZXJzRW50cnkSKgoFc3RhdGUYBSABKAlCG/pCGHIWUgdlbmFibGVkUghkaXNhYmxlZNABARIpCghtZXRhZGF0YRgUIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QaLgoMSGVhZGVyc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEiUwoUQ3JlYXRlV2ViaG9va1JlcXVlc3QSOwoEYm9keRgBIAEoCzItLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuV2ViaG9va1JlcXVlc3RCb2R5IkwKFUNyZWF0ZVdlYmhvb2tSZXNwb25zZRIzCgd3ZWJob29rGAEgASgLMiIucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5XZWJob29rIosBChRVcGRhdGVXZWJob29rUmVxdWVzdBI2CgJpZBgBIAEoCUIqkkEbMhlUaGUgd2ViaG9vayBpZCB0byB1cGRhdGUu4kEBAvpCBXIDsAEBEjsKBGJvZHkYAiABKAsyLS5yYXlzdGFjay5mcm9udGllci52MWJldGExLldlYmhvb2tSZXF1ZXN0Qm9keSJMChVVcGRhdGVXZWJob29rUmVzcG9uc2USMwoHd2ViaG9vaxgBIAEoCzIiLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuV2ViaG9vayJOChREZWxldGVXZWJob29rUmVxdWVzdBI2CgJpZBgBIAEoCUIqkkEbMhlUaGUgd2ViaG9vayBpZCB0byBkZWxldGUu4kEBAvpCBXIDsAEBIhcKFURlbGV0ZVdlYmhvb2tSZXNwb25zZSIVChNMaXN0V2ViaG9va3NSZXF1ZXN0IkwKFExpc3RXZWJob29rc1Jlc3BvbnNlEjQKCHdlYmhvb2tzGAEgAygLMiIucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5XZWJob29rImkKIVVwZGF0ZUJpbGxpbmdBY2NvdW50TGltaXRzUmVxdWVzdBIXCgZvcmdfaWQYASABKAlCB/pCBHICEAMSFwoCaWQYAiABKAlCC/pCCHIGsAEB0AEBEhIKCmNyZWRpdF9taW4YAyABKAMiJAoiVXBkYXRlQmlsbGluZ0FjY291bnRMaW1pdHNSZXNwb25zZSJUCh9HZXRCaWxsaW5nQWNjb3VudERldGFpbHNSZXF1ZXN0EhgKBm9yZ19pZBgBIAEoCUII+kIFcgOwAQESFwoCaWQYAiABKAlCC/pCCHIGsAEB0AEBIksKIEdldEJpbGxpbmdBY2NvdW50RGV0YWlsc1Jlc3BvbnNlEhIKCmNyZWRpdF9taW4YASABKAMSEwoLZHVlX2luX2RheXMYAiABKAMiiQEKIlVwZGF0ZUJpbGxpbmdBY2NvdW50RGV0YWlsc1JlcXVlc3QSGAoGb3JnX2lkGAEgASgJQgj6QgVyA7ABARIXCgJpZBgCIAEoCUIL+kIIcgawAQHQAQESEgoKY3JlZGl0X21pbhgDIAEoAxIcCgtkdWVfaW5fZGF5cxgEIAEoA0IH+kIEIgIoACIlCiNVcGRhdGVCaWxsaW5nQWNjb3VudERldGFpbHNSZXNwb25zZSJJChlTZXRPcmdhbml6YXRpb25LeWNSZXF1ZXN0Eg4KBm9yZ19pZBgBIAEoCRIOCgZzdGF0dXMYAiABKAgSDAoEbGluaxgDIAEoCSJSChpTZWFyY2hPcmdhbml6YXRpb25zUmVxdWVzdBI0CgVxdWVyeRgBIAEoCzIlLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUlFMUmVxdWVzdCJiChpTZXRPcmdhbml6YXRpb25LeWNSZXNwb25zZRJEChBvcmdhbml6YXRpb25fa3ljGAEgASgLMioucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Pcmdhbml6YXRpb25LeWMiHQobTGlzdE9yZ2FuaXphdGlvbnNLeWNSZXF1ZXN0ImUKHExpc3RPcmdhbml6YXRpb25zS3ljUmVzcG9uc2USRQoRb3JnYW5pemF0aW9uc19reWMYASADKAsyKi5yYXlzdGFjay5mcm9udGllci52MWJldGExLk9yZ2FuaXphdGlvbkt5YyK1BQobU2VhcmNoT3JnYW5pemF0aW9uc1Jlc3BvbnNlEmAKDW9yZ2FuaXphdGlvbnMYASADKAsySS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlNlYXJjaE9yZ2FuaXphdGlvbnNSZXNwb25zZS5Pcmdhbml6YXRpb25SZXN1bHQSSQoKcGFnaW5hdGlvbhgCIAEoCzI1LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUlFMUXVlcnlQYWdpbmF0aW9uUmVzcG9uc2USPwoFZ3JvdXAYAyABKAsyMC5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJRTFF1ZXJ5R3JvdXBSZXNwb25zZRqnAwoST3JnYW5pemF0aW9uUmVzdWx0EgoKAmlkGAEgASgJEgwKBG5hbWUYAiABKAkSDQoFdGl0bGUYAyABKAkSLgoKY3JlYXRlZF9hdBgEIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLgoKdXBkYXRlZF9hdBgFIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASDQoFc3RhdGUYBiABKAkSDgoGYXZhdGFyGAcgASgJEhIKCmNyZWF0ZWRfYnkYCCABKAkSEQoJcGxhbl9uYW1lGAkgASgJEi4KDHBheW1lbnRfbW9kZRgKIAEoCUIY+kIVchNSB3ByZXBhaWRSCHBvc3RwYWlkEj0KGXN1YnNjcmlwdGlvbl9jeWNsZV9lbmRfYXQYCyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEg8KB2NvdW50cnkYDCABKAkSGgoSc3Vic2NyaXB0aW9uX3N0YXRlGA4gASgJEhUKDXBsYW5faW50ZXJ2YWwYDyABKAkSDwoHcGxhbl9pZBgQIAEoCSJMChRMaXN0UHJvc3BlY3RzUmVxdWVzdBI0CgVxdWVyeRgBIAEoCzIlLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUlFMUmVxdWVzdCLbAQoVTGlzdFByb3NwZWN0c1Jlc3BvbnNlEjYKCXByb3NwZWN0cxgBIAMoCzIjLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUHJvc3BlY3QSSQoKcGFnaW5hdGlvbhgCIAEoCzI1LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUlFMUXVlcnlQYWdpbmF0aW9uUmVzcG9uc2USPwoFZ3JvdXAYAyABKAsyMC5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJRTFF1ZXJ5R3JvdXBSZXNwb25zZSJHChJHZXRQcm9zcGVjdFJlcXVlc3QSMQoCaWQYASABKAlCJZJBFDISaWQgb2YgdGhlIHByb3NwZWN04kEBAvpCB3IFEAGwAQEiTAoTR2V0UHJvc3BlY3RSZXNwb25zZRI1Cghwcm9zcGVjdBgBIAEoCzIjLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUHJvc3BlY3QiswYKFVVwZGF0ZVByb3NwZWN0UmVxdWVzdBIxCgJpZBgBIAEoCUIlkkEUMhJpZCBvZiB0aGUgcHJvc3BlY3TiQQEC+kIHcgUQAbABARI+CgRuYW1lGAIgASgJQjCSQRcyFWZ1bGwgbmFtZSBvZiB0aGUgdXNlcvpCE3IRMgxeW0EtWmEteiBdKyTQAQESMgoFZW1haWwYBSABKAlCI5JBEzIRZW1haWwgb2YgdGhlIHVzZXLiQQEC+kIGcgQQAWABEiwKBXBob25lGAYgASgJQh2SQRoyGHBob25lIG51bWJlciBvZiB0aGUgdXNlchKAAQoIYWN0aXZpdHkYByABKAlCbpJBTjJMYWN0aXZpdHkgZm9yIHdoaWNoIHVzZXIgaXMgc3Vic2NyaWJpbmcsIGUuZy4gbmV3c2xldHRlciwgd2FpdGxpc3QsIGJsb2dzIGV0Y+JBAQL6QhZyFBABMhBeW0EtWmEtejAtOS1fXSskEqwBCgZzdGF0dXMYCCABKA4yKi5yYXlzdGFjay5mcm9udGllci52MWJldGExLlByb3NwZWN0LlN0YXR1c0JwkkFfMl1zdWJzY3JpcHRpb24gc3RhdHVzIGZvciB0aGlzIGFjdGl2aXR5LiBBbGxvd2VkIHZhbHVlcyAtIDEgZm9yIFVOU1VCU0NSSUJFRDsgMiBmb3IgU1VCU0NSSUJFRDviQQEC+kIHggEEGAEYAhJtCgZzb3VyY2UYCSABKAlCXZJBQDI+c291cmNlIG9mIHRoaXMgdXNlciBhZGRpdGlvbiBlLmcuIHBsYXRmb3JtLCB3ZWJzaXRlLCBhZG1pbiBldGP6QhdyFTIQXltBLVphLXowLTktX10rJNABARJRCgh2ZXJpZmllZBgKIAEoCEI/kkE8Mjp2ZXJpZmljYXRpb24gc3RhdHVzIG9mIHRoaXMgdXNlciBhZGRpdGlvbiBlLmcuIHRydWUsIGZhbHNlElEKCG1ldGFkYXRhGAsgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEImkkEjMiFhZGRpdGlvbmFsIGluZm8gYXMga2V5IHZhbHVlIHBhaXIiTwoWVXBkYXRlUHJvc3BlY3RSZXNwb25zZRI1Cghwcm9zcGVjdBgBIAEoCzIjLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUHJvc3BlY3QiSgoVRGVsZXRlUHJvc3BlY3RSZXF1ZXN0EjEKAmlkGAEgASgJQiWSQRQyEmlkIG9mIHRoZSBwcm9zcGVjdOJBAQL6QgdyBRABsAEBIhgKFkRlbGV0ZVByb3NwZWN0UmVzcG9uc2UigAYKFUNyZWF0ZVByb3NwZWN0UmVxdWVzdBI+CgRuYW1lGAEgASgJQjCSQRcyFWZ1bGwgbmFtZSBvZiB0aGUgdXNlcvpCE3IRMgxeW0EtWmEteiBdKyTQAQESMgoFZW1haWwYBSABKAlCI5JBEzIRZW1haWwgb2YgdGhlIHVzZXLiQQEC+kIGcgQQAWABEiwKBXBob25lGAYgASgJQh2SQRoyGHBob25lIG51bWJlciBvZiB0aGUgdXNlchKAAQoIYWN0aXZpdHkYByABKAlCbpJBTjJMYWN0aXZpdHkgZm9yIHdoaWNoIHVzZXIgaXMgc3Vic2NyaWJpbmcsIGUuZy4gbmV3c2xldHRlciwgd2FpdGxpc3QsIGJsb2dzIGV0Y+JBAQL6QhZyFBABMhBeW0EtWmEtejAtOS1fXSskEqwBCgZzdGF0dXMYCCABKA4yKi5yYXlzdGFjay5mcm9udGllci52MWJldGExLlByb3NwZWN0LlN0YXR1c0JwkkFfMl1zdWJzY3JpcHRpb24gc3RhdHVzIGZvciB0aGlzIGFjdGl2aXR5LiBBbGxvd2VkIHZhbHVlcyAtIDEgZm9yIFVOU1VCU0NSSUJFRDsgMiBmb3IgU1VCU0NSSUJFRDviQQEC+kIHggEEGAEYAhJtCgZzb3VyY2UYCSABKAlCXZJBQDI+c291cmNlIG9mIHRoaXMgdXNlciBhZGRpdGlvbiBlLmcuIHBsYXRmb3JtLCB3ZWJzaXRlLCBhZG1pbiBldGP6QhdyFTIQXltBLVphLXowLTktX10rJNABARJRCgh2ZXJpZmllZBgKIAEoCEI/kkE8Mjp2ZXJpZmljYXRpb24gc3RhdHVzIG9mIHRoaXMgdXNlciBhZGRpdGlvbiBlLmcuIHRydWUsIGZhbHNlElEKCG1ldGFkYXRhGAsgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEImkkEjMiFhZGRpdGlvbmFsIGluZm8gYXMga2V5IHZhbHVlIHBhaXIiTwoWQ3JlYXRlUHJvc3BlY3RSZXNwb25zZRI1Cghwcm9zcGVjdBgBIAEoCzIjLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUHJvc3BlY3QiawoeU2VhcmNoT3JnYW5pemF0aW9uVXNlcnNSZXF1ZXN0EhMKAmlkGAEgASgJQgf6QgRyAhADEjQKBXF1ZXJ5GAIgASgLMiUucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5SUUxSZXF1ZXN0IoAECh9TZWFyY2hPcmdhbml6YXRpb25Vc2Vyc1Jlc3BvbnNlEl4KCW9yZ191c2VycxgBIAMoCzJLLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuU2VhcmNoT3JnYW5pemF0aW9uVXNlcnNSZXNwb25zZS5Pcmdhbml6YXRpb25Vc2VyEkkKCnBhZ2luYXRpb24YAiABKAsyNS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJRTFF1ZXJ5UGFnaW5hdGlvblJlc3BvbnNlEj8KBWdyb3VwGAMgASgLMjAucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5SUUxRdWVyeUdyb3VwUmVzcG9uc2Ua8AEKEE9yZ2FuaXphdGlvblVzZXISCgoCaWQYASABKAkSDAoEbmFtZRgCIAEoCRINCgV0aXRsZRgDIAEoCRINCgVlbWFpbBgEIAEoCRIxCg1vcmdfam9pbmVkX2F0GAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBINCgVzdGF0ZRgGIAEoCRIOCgZhdmF0YXIYByABKAkSEgoKcm9sZV9uYW1lcxgIIAMoCRITCgtyb2xlX3RpdGxlcxgJIAMoCRIQCghyb2xlX2lkcxgKIAMoCRIXCg9vcmdhbml6YXRpb25faWQYCyABKAkiNQoeRXhwb3J0T3JnYW5pemF0aW9uVXNlcnNSZXF1ZXN0EhMKAmlkGAEgASgJQgf6QgRyAhADIm4KIVNlYXJjaE9yZ2FuaXphdGlvblByb2plY3RzUmVxdWVzdBITCgJpZBgBIAEoCUIH+kIEcgIQAxI0CgVxdWVyeRgCIAEoCzIlLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUlFMUmVxdWVzdCLaAwoiU2VhcmNoT3JnYW5pemF0aW9uUHJvamVjdHNSZXNwb25zZRJnCgxvcmdfcHJvamVjdHMYASADKAsyUS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlNlYXJjaE9yZ2FuaXphdGlvblByb2plY3RzUmVzcG9uc2UuT3JnYW5pemF0aW9uUHJvamVjdBJJCgpwYWdpbmF0aW9uGAIgASgLMjUucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5SUUxRdWVyeVBhZ2luYXRpb25SZXNwb25zZRI/CgVncm91cBgDIAEoCzIwLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUlFMUXVlcnlHcm91cFJlc3BvbnNlGr4BChNPcmdhbml6YXRpb25Qcm9qZWN0EgoKAmlkGAEgASgJEgwKBG5hbWUYAiABKAkSDQoFdGl0bGUYAyABKAkSDQoFc3RhdGUYBCABKAkSFAoMbWVtYmVyX2NvdW50GAUgASgDEhAKCHVzZXJfaWRzGAYgAygJEi4KCmNyZWF0ZWRfYXQYByABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEhcKD29yZ2FuaXphdGlvbl9pZBgIIAEoCSI4CiFFeHBvcnRPcmdhbml6YXRpb25Qcm9qZWN0c1JlcXVlc3QSEwoCaWQYASABKAlCB/pCBHICEAMiZgoZU2VhcmNoUHJvamVjdFVzZXJzUmVxdWVzdBITCgJpZBgBIAEoCUIH+kIEcgIQAxI0CgVxdWVyeRgCIAEoCzIlLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUlFMUmVxdWVzdCKpAwoaU2VhcmNoUHJvamVjdFVzZXJzUmVzcG9uc2USWAoNcHJvamVjdF91c2VycxgBIAMoCzJBLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuU2VhcmNoUHJvamVjdFVzZXJzUmVzcG9uc2UuUHJvamVjdFVzZXISSQoKcGFnaW5hdGlvbhgCIAEoCzI1LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUlFMUXVlcnlQYWdpbmF0aW9uUmVzcG9uc2USPwoFZ3JvdXAYAyABKAsyMC5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJRTFF1ZXJ5R3JvdXBSZXNwb25zZRqkAQoLUHJvamVjdFVzZXISCgoCaWQYASABKAkSDAoEbmFtZRgCIAEoCRINCgV0aXRsZRgDIAEoCRINCgVlbWFpbBgEIAEoCRIOCgZhdmF0YXIYByABKAkSEgoKcm9sZV9uYW1lcxgIIAMoCRITCgtyb2xlX3RpdGxlcxgJIAMoCRIQCghyb2xlX2lkcxgKIAMoCRISCgpwcm9qZWN0X2lkGAsgASgJIm4KIVNlYXJjaE9yZ2FuaXphdGlvbkludm9pY2VzUmVxdWVzdBITCgJpZBgBIAEoCUIH+kIEcgIQAxI0CgVxdWVyeRgCIAEoCzIlLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUlFMUmVxdWVzdCLNAwoiU2VhcmNoT3JnYW5pemF0aW9uSW52b2ljZXNSZXNwb25zZRJwChVvcmdhbml6YXRpb25faW52b2ljZXMYASADKAsyUS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlNlYXJjaE9yZ2FuaXphdGlvbkludm9pY2VzUmVzcG9uc2UuT3JnYW5pemF0aW9uSW52b2ljZRJJCgpwYWdpbmF0aW9uGAIgASgLMjUucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5SUUxRdWVyeVBhZ2luYXRpb25SZXNwb25zZRI/CgVncm91cBgDIAEoCzIwLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUlFMUXVlcnlHcm91cFJlc3BvbnNlGqgBChNPcmdhbml6YXRpb25JbnZvaWNlEgoKAmlkGAEgASgJEg4KBmFtb3VudBgCIAEoAxIQCghjdXJyZW5jeRgDIAEoCRINCgVzdGF0ZRgEIAEoCRIUCgxpbnZvaWNlX2xpbmsYBSABKAkSLgoKY3JlYXRlZF9hdBgGIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASDgoGb3JnX2lkGAcgASgJImwKH1NlYXJjaE9yZ2FuaXphdGlvblRva2Vuc1JlcXVlc3QSEwoCaWQYASABKAlCB/pCBHICEAMSNAoFcXVlcnkYAiABKAsyJS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJRTFJlcXVlc3Qi3QMKIFNlYXJjaE9yZ2FuaXphdGlvblRva2Vuc1Jlc3BvbnNlEmoKE29yZ2FuaXphdGlvbl90b2tlbnMYASADKAsyTS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlNlYXJjaE9yZ2FuaXphdGlvblRva2Vuc1Jlc3BvbnNlLk9yZ2FuaXphdGlvblRva2VuEkkKCnBhZ2luYXRpb24YAiABKAsyNS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJRTFF1ZXJ5UGFnaW5hdGlvblJlc3BvbnNlEj8KBWdyb3VwGAMgASgLMjAucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5SUUxRdWVyeUdyb3VwUmVzcG9uc2UawAEKEU9yZ2FuaXphdGlvblRva2VuEg4KBmFtb3VudBgBIAEoAxIMCgR0eXBlGAIgASgJEhMKC2Rlc2NyaXB0aW9uGAMgASgJEg8KB3VzZXJfaWQYBCABKAkSEgoKdXNlcl90aXRsZRgFIAEoCRITCgt1c2VyX2F2YXRhchgGIAEoCRIuCgpjcmVhdGVkX2F0GAcgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIOCgZvcmdfaWQYCCABKAkiNgofRXhwb3J0T3JnYW5pemF0aW9uVG9rZW5zUmVxdWVzdBITCgJpZBgBIAEoCUIH+kIEcgIQAyJ8Ci9TZWFyY2hPcmdhbml6YXRpb25TZXJ2aWNlVXNlckNyZWRlbnRpYWxzUmVxdWVzdBITCgJpZBgBIAEoCUIH+kIEcgIQAxI0CgVxdWVyeRgCIAEoCzIlLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUlFMUmVxdWVzdCLsAwowU2VhcmNoT3JnYW5pemF0aW9uU2VydmljZVVzZXJDcmVkZW50aWFsc1Jlc3BvbnNlEpsBCiRvcmdhbml6YXRpb25fc2VydmljZXVzZXJfY3JlZGVudGlhbHMYASADKAsybS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlNlYXJjaE9yZ2FuaXphdGlvblNlcnZpY2VVc2VyQ3JlZGVudGlhbHNSZXNwb25zZS5Pcmdhbml6YXRpb25TZXJ2aWNlVXNlckNyZWRlbnRpYWwSSQoKcGFnaW5hdGlvbhgCIAEoCzI1LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUlFMUXVlcnlQYWdpbmF0aW9uUmVzcG9uc2USPwoFZ3JvdXAYAyABKAsyMC5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJRTFF1ZXJ5R3JvdXBSZXNwb25zZRqNAQohT3JnYW5pemF0aW9uU2VydmljZVVzZXJDcmVkZW50aWFsEg0KBXRpdGxlGAEgASgJEhkKEXNlcnZpY2V1c2VyX3RpdGxlGAIgASgJEi4KCmNyZWF0ZWRfYXQYAyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEg4KBm9yZ19pZBgEIAEoCSJKChJTZWFyY2hVc2Vyc1JlcXVlc3QSNAoFcXVlcnkYASABKAsyJS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJRTFJlcXVlc3Qi0QEKE1NlYXJjaFVzZXJzUmVzcG9uc2USLgoFdXNlcnMYASADKAsyHy5yYXlzdGFjay5mcm9udGllci52MWJldGExLlVzZXISSQoKcGFnaW5hdGlvbhgCIAEoCzI1LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUlFMUXVlcnlQYWdpbmF0aW9uUmVzcG9uc2USPwoFZ3JvdXAYAyABKAsyMC5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJRTFF1ZXJ5R3JvdXBSZXNwb25zZSIUChJFeHBvcnRVc2Vyc1JlcXVlc3QifAoeU2VhcmNoVXNlck9yZ2FuaXphdGlvbnNSZXF1ZXN0EiQKAmlkGAEgASgJQhiSQQkyB3VzZXIgSUTiQQEC+kIFcgOwAQESNAoFcXVlcnkYAiABKAsyJS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJRTFJlcXVlc3QiigQKH1NlYXJjaFVzZXJPcmdhbml6YXRpb25zUmVzcG9uc2USZwoSdXNlcl9vcmdhbml6YXRpb25zGAEgAygLMksucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5TZWFyY2hVc2VyT3JnYW5pemF0aW9uc1Jlc3BvbnNlLlVzZXJPcmdhbml6YXRpb24SSQoKcGFnaW5hdGlvbhgCIAEoCzI1LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUlFMUXVlcnlQYWdpbmF0aW9uUmVzcG9uc2USPwoFZ3JvdXAYAyABKAsyMC5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJRTFF1ZXJ5R3JvdXBSZXNwb25zZRrxAQoQVXNlck9yZ2FuaXphdGlvbhIOCgZvcmdfaWQYASABKAkSEQoJb3JnX3RpdGxlGAIgASgJEhAKCG9yZ19uYW1lGAMgASgJEhIKCm9yZ19hdmF0YXIYBCABKAkSFQoNcHJvamVjdF9jb3VudBgFIAEoAxISCgpyb2xlX25hbWVzGAYgAygJEhMKC3JvbGVfdGl0bGVzGAcgAygJEhAKCHJvbGVfaWRzGAggAygJEjEKDW9yZ19qb2luZWRfb24YCSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEg8KB3VzZXJfaWQYCiABKAkipQEKGVNlYXJjaFVzZXJQcm9qZWN0c1JlcXVlc3QSKQoHdXNlcl9pZBgBIAEoCUIYkkEJMgd1c2VyIElE4kEBAvpCBXIDsAEBEicKBm9yZ19pZBgCIAEoCUIXkkEIMgZvcmcgSUTiQQEC+kIFcgOwAQESNAoFcXVlcnkYAyABKAsyJS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJRTFJlcXVlc3Qi/QMKGlNlYXJjaFVzZXJQcm9qZWN0c1Jlc3BvbnNlElgKDXVzZXJfcHJvamVjdHMYASADKAsyQS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlNlYXJjaFVzZXJQcm9qZWN0c1Jlc3BvbnNlLlVzZXJQcm9qZWN0EkkKCnBhZ2luYXRpb24YAiABKAsyNS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJRTFF1ZXJ5UGFnaW5hdGlvblJlc3BvbnNlEj8KBWdyb3VwGAMgASgLMjAucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5SUUxRdWVyeUdyb3VwUmVzcG9uc2Ua+AEKC1VzZXJQcm9qZWN0EhIKCnByb2plY3RfaWQYASABKAkSFQoNcHJvamVjdF90aXRsZRgCIAEoCRIUCgxwcm9qZWN0X25hbWUYAyABKAkSNgoScHJvamVjdF9jcmVhdGVkX29uGAQgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBISCgp1c2VyX25hbWVzGAUgAygJEhMKC3VzZXJfdGl0bGVzGAYgAygJEhAKCHVzZXJfaWRzGAcgAygJEhQKDHVzZXJfYXZhdGFycxgIIAMoCRIOCgZvcmdfaWQYCSABKAkSDwoHdXNlcl9pZBgKIAEoCSLiDAoeQWRtaW5DcmVhdGVPcmdhbml6YXRpb25SZXF1ZXN0EmkKBGJvZHkYASABKAsyUS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkFkbWluQ3JlYXRlT3JnYW5pemF0aW9uUmVxdWVzdC5Pcmdhbml6YXRpb25SZXF1ZXN0Qm9keUII+kIFigECEAEa1AsKF09yZ2FuaXphdGlvblJlcXVlc3RCb2R5EvsBCgRuYW1lGAEgASgJQuwBkkHNATLKAVRoZSBuYW1lIG9mIHRoZSBvcmdhbml6YXRpb24uIFRoZSBuYW1lIG11c3QgYmUgdW5pcXVlIHdpdGhpbiB0aGUgZW50aXJlIEZyb250aWVyIGluc3RhbmNlLiBUaGUgbmFtZSBjYW4gY29udGFpbiBvbmx5IGFscGhhbnVtZXJpYyBjaGFyYWN0ZXJzLCBkYXNoZXMgYW5kIHVuZGVyc2NvcmVzLjxici8+KkV4YW1wbGU6KmAiZnJvbnRpZXItb3JnMS1hY21lImDiQQEC+kIUchIyEF5bQS1aYS16MC05LV9dKyQSsgEKBXRpdGxlGAIgASgJQqIBkkGeATKbAVRoZSB0aXRsZSBjYW4gY29udGFpbiBhbnkgVVRGLTggY2hhcmFjdGVyLCB1c2VkIHRvIHByb3ZpZGUgYSBodW1hbi1yZWFkYWJsZSBuYW1lIGZvciB0aGUgb3JnYW5pemF0aW9uLiBDYW4gYWxzbyBiZSBsZWZ0IGVtcHR5Ljxici8+ICpFeGFtcGxlKjogYCJBY21lIEluYyJgEukDCghtZXRhZGF0YRgDIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RCvQOSQbkDMrYDTWV0YWRhdGEgb2JqZWN0IGZvciBvcmdhbml6YXRpb25zIHRoYXQgY2FuIGhvbGQga2V5IHZhbHVlIHBhaXJzIGRlZmluZWQgaW4gT3JnYW5pemF0aW9uIE1ldGFzY2hlbWEuIFRoZSBtZXRhZGF0YSBvYmplY3QgY2FuIGJlIHVzZWQgdG8gc3RvcmUgYXJiaXRyYXJ5IGluZm9ybWF0aW9uIGFib3V0IHRoZSBvcmdhbml6YXRpb24gc3VjaCBhcyBsYWJlbHMsIGRlc2NyaXB0aW9ucyBldGMuIFRoZSBkZWZhdWx0IE9yZ2FuaXphdGlvbiBNZXRhc2NoZW1hIGNvbnRhaW5zIGxhYmVscyBhbmQgZGVzY3JpcHRvbiBmaWVsZHMuIFVwZGF0ZSB0aGUgT3JnYW5pemF0aW9uIE1ldGFzY2hlbWEgdG8gYWRkIG1vcmUgZmllbGRzLiA8YnIvPipFeGFtcGxlKjpgeyJsYWJlbHMiOiB7ImtleSI6ICJ2YWx1ZSJ9LCAiZGVzY3JpcHRpb24iOiAiT3JnYW5pemF0aW9uIGRlc2NyaXB0aW9uIn1gEvACCgZhdmF0YXIYBCABKAlC3wKSQY8CMtMBVGhlIGF2YXRhciBpcyBiYXNlNjQgZW5jb2RlZCBpbWFnZSBkYXRhIG9mIHRoZSB1c2VyLiBDYW4gYWxzbyBiZSBsZWZ0IGVtcHR5LiBUaGUgaW1hZ2Ugc2hvdWxkIGJlIGxlc3MgdGhhbiAyMDBLQi4gU2hvdWxkIGZvbGxvdyB0aGUgcmVnZXggcGF0dGVybiBgXmRhdGE6aW1hZ2UvKHBuZ3xqcGd8anBlZ3xnaWYpO2Jhc2U2NCwoW2EtekEtWjAtOSsvXSs9ezAsMn0pKyRgLko3ImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQkFBQUFBIvpCSXJHGJChDzI+XmRhdGE6aW1hZ2UvKHBuZ3xqcGd8anBlZ3xnaWYpO2Jhc2U2NCwoW2EtekEtWjAtOSsvXSs9ezAsMn0pKyTQAQESpgEKD29yZ19vd25lcl9lbWFpbBgFIAEoCUKMAZJBfjJ8VGhlIGVtYWlsIG9mIHRoZSB1c2VyLiBUaGUgZW1haWwgbXVzdCBiZSB1bmlxdWUgd2l0aGluIHRoZSBlbnRpcmUgRnJvbnRpZXIgaW5zdGFuY2UuPGJyLz4qRXhhbXBsZToqYCJqb2huLmRvZUByYXlzdGFjay5vcmciYOJBAQL6QgRyAmABImAKH0FkbWluQ3JlYXRlT3JnYW5pemF0aW9uUmVzcG9uc2USPQoMb3JnYW5pemF0aW9uGAEgASgLMicucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Pcmdhbml6YXRpb24iTQoVU2VhcmNoSW52b2ljZXNSZXF1ZXN0EjQKBXF1ZXJ5GAEgASgLMiUucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5SUUxSZXF1ZXN0IrUDChZTZWFyY2hJbnZvaWNlc1Jlc3BvbnNlEksKCGludm9pY2VzGAEgAygLMjkucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5TZWFyY2hJbnZvaWNlc1Jlc3BvbnNlLkludm9pY2USSQoKcGFnaW5hdGlvbhgCIAEoCzI1LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUlFMUXVlcnlQYWdpbmF0aW9uUmVzcG9uc2USPwoFZ3JvdXAYAyABKAsyMC5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJRTFF1ZXJ5R3JvdXBSZXNwb25zZRrBAQoHSW52b2ljZRIKCgJpZBgBIAEoCRIOCgZhbW91bnQYAiABKAMSEAoIY3VycmVuY3kYAyABKAkSDQoFc3RhdGUYBCABKAkSFAoMaW52b2ljZV9saW5rGAUgASgJEi4KCmNyZWF0ZWRfYXQYBiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEg4KBm9yZ19pZBgHIAEoCRIQCghvcmdfbmFtZRgIIAEoCRIRCglvcmdfdGl0bGUYCSABKAkicgolU2VhcmNoT3JnYW5pemF0aW9uU2VydmljZVVzZXJzUmVxdWVzdBITCgJpZBgBIAEoCUIH+kIEcgIQAxI0CgVxdWVyeRgCIAEoCzIlLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUlFMUmVxdWVzdCK7BAomU2VhcmNoT3JnYW5pemF0aW9uU2VydmljZVVzZXJzUmVzcG9uc2USfQoab3JnYW5pemF0aW9uX3NlcnZpY2VfdXNlcnMYASADKAsyWS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlNlYXJjaE9yZ2FuaXphdGlvblNlcnZpY2VVc2Vyc1Jlc3BvbnNlLk9yZ2FuaXphdGlvblNlcnZpY2VVc2VyEkkKCnBhZ2luYXRpb24YAiABKAsyNS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJRTFF1ZXJ5UGFnaW5hdGlvblJlc3BvbnNlEj8KBWdyb3VwGAMgASgLMjAucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5SUUxRdWVyeUdyb3VwUmVzcG9uc2UaMgoHUHJvamVjdBIKCgJpZBgBIAEoCRINCgV0aXRsZRgCIAEoCRIMCgRuYW1lGAMgASgJGtEBChdPcmdhbml6YXRpb25TZXJ2aWNlVXNlchIKCgJpZBgBIAEoCRINCgV0aXRsZRgCIAEoCRIOCgZvcmdfaWQYAyABKAkSWwoIcHJvamVjdHMYBCADKAsySS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlNlYXJjaE9yZ2FuaXphdGlvblNlcnZpY2VVc2Vyc1Jlc3BvbnNlLlByb2plY3QSLgoKY3JlYXRlZF9hdBgFIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAiHAoaR2V0Q3VycmVudEFkbWluVXNlclJlcXVlc3QiigEKG0dldEN1cnJlbnRBZG1pblVzZXJSZXNwb25zZRItCgR1c2VyGAEgASgLMh8ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5Vc2VyEjwKDHNlcnZpY2VfdXNlchgCIAEoCzImLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuU2VydmljZVVzZXIiKgoXTGlzdFVzZXJTZXNzaW9uc1JlcXVlc3QSDwoHdXNlcl9pZBgBIAEoCSJQChhMaXN0VXNlclNlc3Npb25zUmVzcG9uc2USNAoIc2Vzc2lvbnMYASADKAsyIi5yYXlzdGFjay5mcm9udGllci52MWJldGExLlNlc3Npb24iPwoYUmV2b2tlVXNlclNlc3Npb25SZXF1ZXN0Eg8KB3VzZXJfaWQYASABKAkSEgoKc2Vzc2lvbl9pZBgCIAEoCSIbChlSZXZva2VVc2VyU2Vzc2lvblJlc3BvbnNlIk8KF0xpc3RBdWRpdFJlY29yZHNSZXF1ZXN0EjQKBXF1ZXJ5GAEgASgLMiUucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5SUUxSZXF1ZXN0IuUBChhMaXN0QXVkaXRSZWNvcmRzUmVzcG9uc2USPQoNYXVkaXRfcmVjb3JkcxgBIAMoCzImLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQXVkaXRSZWNvcmQSSQoKcGFnaW5hdGlvbhgCIAEoCzI1LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUlFMUXVlcnlQYWdpbmF0aW9uUmVzcG9uc2USPwoFZ3JvdXAYAyABKAsyMC5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJRTFF1ZXJ5R3JvdXBSZXNwb25zZTLtfAoMQWRtaW5TZXJ2aWNlEq8CCgxMaXN0QWxsVXNlcnMSLi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RBbGxVc2Vyc1JlcXVlc3QaLy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RBbGxVc2Vyc1Jlc3BvbnNlIr0BkkGdAQoEVXNlchIOTGlzdCBhbGwgdXNlcnMahAFMaXN0cyBhbGwgdGhlIHVzZXJzIGZyb20gYWxsIHRoZSBvcmdhbml6YXRpb25zIGluIGEgRnJvbnRpZXIgaW5zdGFuY2UuIEl0IGNhbiBiZSBmaWx0ZXJlZCBieSBrZXl3b3JkLCBvcmdhbml6YXRpb24sIGdyb3VwIGFuZCBzdGF0ZS6C0+STAhYSFC92MWJldGExL2FkbWluL3VzZXJzEpsCChNMaXN0QWxsU2VydmljZVVzZXJzEjUucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0QWxsU2VydmljZVVzZXJzUmVxdWVzdBo2LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdEFsbFNlcnZpY2VVc2Vyc1Jlc3BvbnNlIpQBkkFuCgRVc2VyEhZMaXN0IGFsbCBzZXJ2aWNlIHVzZXJzGk5MaXN0cyBhbGwgdGhlIHNlcnZpY2UgdXNlcnMgZnJvbSBhbGwgdGhlIG9yZ2FuaXphdGlvbnMgaW4gYSBGcm9udGllciBpbnN0YW5jZS6C0+STAh0SGy92MWJldGExL2FkbWluL3NlcnZpY2V1c2VycxKcAgoKTGlzdEdyb3VwcxIsLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdEdyb3Vwc1JlcXVlc3QaLS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RHcm91cHNSZXNwb25zZSKwAZJBjwEKBUdyb3VwEg9MaXN0IGFsbCBncm91cHMadUxpc3RzIGFsbCB0aGUgZ3JvdXBzIGZyb20gYWxsIHRoZSBvcmdhbml6YXRpb25zIGluIGEgRnJvbnRpZXIgaW5zdGFuY2UuIEl0IGNhbiBiZSBmaWx0ZXJlZCBieSBvcmdhbml6YXRpb24gYW5kIHN0YXRlLoLT5JMCFxIVL3YxYmV0YTEvYWRtaW4vZ3JvdXBzErMCChRMaXN0QWxsT3JnYW5pemF0aW9ucxI2LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdEFsbE9yZ2FuaXphdGlvbnNSZXF1ZXN0GjcucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0QWxsT3JnYW5pemF0aW9uc1Jlc3BvbnNlIqkBkkGBAQoMT3JnYW5pemF0aW9uEhZMaXN0IGFsbCBvcmdhbml6YXRpb25zGllMaXN0cyBhbGwgdGhlIG9yZ2FuaXphdGlvbnMgaW4gYSBGcm9udGllciBpbnN0YW5jZS4gSXQgY2FuIGJlIGZpbHRlcmVkIGJ5IHVzZXIgYW5kIHN0YXRlLoLT5JMCHhIcL3YxYmV0YTEvYWRtaW4vb3JnYW5pemF0aW9ucxLwAQoXQWRtaW5DcmVhdGVPcmdhbml6YXRpb24SOS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkFkbWluQ3JlYXRlT3JnYW5pemF0aW9uUmVxdWVzdBo6LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQWRtaW5DcmVhdGVPcmdhbml6YXRpb25SZXNwb25zZSJekkExCgxPcmdhbml6YXRpb24SIUNyZWF0ZSBvcmdhbml6YXRpb24gYXMgc3VwZXJhZG1pboLT5JMCJCIcL3YxYmV0YTEvYWRtaW4vb3JnYW5pemF0aW9uczoEYm9keRKyAgoTU2VhcmNoT3JnYW5pemF0aW9ucxI1LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuU2VhcmNoT3JnYW5pemF0aW9uc1JlcXVlc3QaNi5yYXlzdGFjay5mcm9udGllci52MWJldGExLlNlYXJjaE9yZ2FuaXphdGlvbnNSZXNwb25zZSKrAZJBdgoMT3JnYW5pemF0aW9uEhRTZWFyY2ggb3JnYW5pemF0aW9ucxpQU2VhcmNoIG9yZ2FuaXphdGlvbiBiYXNlZCBvbiBvcmcgZGVtb2dyYXBoaWMgcHJvcGVydGllcyBhbmQgYmlsbGluZyBwbGFuIGRldGFpbHOC0+STAiwiIy92MWJldGExL2FkbWluL29yZ2FuaXphdGlvbnMvc2VhcmNoOgVxdWVyeRL7AQoXU2VhcmNoT3JnYW5pemF0aW9uVXNlcnMSOS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlNlYXJjaE9yZ2FuaXphdGlvblVzZXJzUmVxdWVzdBo6LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuU2VhcmNoT3JnYW5pemF0aW9uVXNlcnNSZXNwb25zZSJpkkEpCgxPcmdhbml6YXRpb24SGVNlYXJjaCBvcmdhbml6YXRpb24gdXNlcnOC0+STAjciLi92MWJldGExL2FkbWluL29yZ2FuaXphdGlvbnMve2lkfS91c2Vycy9zZWFyY2g6BXF1ZXJ5Et0BChJTZWFyY2hQcm9qZWN0VXNlcnMSNC5yYXlzdGFjay5mcm9udGllci52MWJldGExLlNlYXJjaFByb2plY3RVc2Vyc1JlcXVlc3QaNS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlNlYXJjaFByb2plY3RVc2Vyc1Jlc3BvbnNlIlqSQR8KB1Byb2plY3QSFFNlYXJjaCBQcm9qZWN0IHVzZXJzgtPkkwIyIikvdjFiZXRhMS9hZG1pbi9wcm9qZWN0cy97aWR9L3VzZXJzL3NlYXJjaDoFcXVlcnkSigIKGlNlYXJjaE9yZ2FuaXphdGlvblByb2plY3RzEjwucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5TZWFyY2hPcmdhbml6YXRpb25Qcm9qZWN0c1JlcXVlc3QaPS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlNlYXJjaE9yZ2FuaXphdGlvblByb2plY3RzUmVzcG9uc2Uib5JBLAoMT3JnYW5pemF0aW9uEhxTZWFyY2ggb3JnYW5pemF0aW9uIHByb2plY3RzgtPkkwI6IjEvdjFiZXRhMS9hZG1pbi9vcmdhbml6YXRpb25zL3tpZH0vcHJvamVjdHMvc2VhcmNoOgVxdWVyeRKKAgoaU2VhcmNoT3JnYW5pemF0aW9uSW52b2ljZXMSPC5yYXlzdGFjay5mcm9udGllci52MWJldGExLlNlYXJjaE9yZ2FuaXphdGlvbkludm9pY2VzUmVxdWVzdBo9LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuU2VhcmNoT3JnYW5pemF0aW9uSW52b2ljZXNSZXNwb25zZSJvkkEsCgxPcmdhbml6YXRpb24SHFNlYXJjaCBvcmdhbml6YXRpb24gaW52b2ljZXOC0+STAjoiMS92MWJldGExL2FkbWluL29yZ2FuaXphdGlvbnMve2lkfS9pbnZvaWNlcy9zZWFyY2g6BXF1ZXJ5EoACChhTZWFyY2hPcmdhbml6YXRpb25Ub2tlbnMSOi5yYXlzdGFjay5mcm9udGllci52MWJldGExLlNlYXJjaE9yZ2FuaXphdGlvblRva2Vuc1JlcXVlc3QaOy5yYXlzdGFjay5mcm9udGllci52MWJldGExLlNlYXJjaE9yZ2FuaXphdGlvblRva2Vuc1Jlc3BvbnNlImuSQSoKDE9yZ2FuaXphdGlvbhIaU2VhcmNoIG9yZ2FuaXphdGlvbiB0b2tlbnOC0+STAjgiLy92MWJldGExL2FkbWluL29yZ2FuaXphdGlvbnMve2lkfS90b2tlbnMvc2VhcmNoOgVxdWVyeRLUAgooU2VhcmNoT3JnYW5pemF0aW9uU2VydmljZVVzZXJDcmVkZW50aWFscxJKLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuU2VhcmNoT3JnYW5pemF0aW9uU2VydmljZVVzZXJDcmVkZW50aWFsc1JlcXVlc3QaSy5yYXlzdGFjay5mcm9udGllci52MWJldGExLlNlYXJjaE9yZ2FuaXphdGlvblNlcnZpY2VVc2VyQ3JlZGVudGlhbHNSZXNwb25zZSKOAZJBPAoMT3JnYW5pemF0aW9uEixTZWFyY2ggb3JnYW5pemF0aW9uIHNlcnZpY2UgdXNlciBjcmVkZW50aWFsc4LT5JMCSSJAL3YxYmV0YTEvYWRtaW4vb3JnYW5pemF0aW9ucy97aWR9L3NlcnZpY2V1c2VyX2NyZWRlbnRpYWxzL3NlYXJjaDoFcXVlcnkSnwIKHlNlYXJjaE9yZ2FuaXphdGlvblNlcnZpY2VVc2VycxJALnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuU2VhcmNoT3JnYW5pemF0aW9uU2VydmljZVVzZXJzUmVxdWVzdBpBLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuU2VhcmNoT3JnYW5pemF0aW9uU2VydmljZVVzZXJzUmVzcG9uc2UieJJBMQoMT3JnYW5pemF0aW9uEiFTZWFyY2ggb3JnYW5pemF0aW9uIHNlcnZpY2UgdXNlcnOC0+STAj4iNS92MWJldGExL2FkbWluL29yZ2FuaXphdGlvbnMve2lkfS9zZXJ2aWNldXNlcnMvc2VhcmNoOgVxdWVyeRKNAgoTRXhwb3J0T3JnYW5pemF0aW9ucxI1LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRXhwb3J0T3JnYW5pemF0aW9uc1JlcXVlc3QaFC5nb29nbGUuYXBpLkh0dHBCb2R5IqYBkkF4CgxPcmdhbml6YXRpb24SFEV4cG9ydCBvcmdhbml6YXRpb25zGkhFeHBvcnQgb3JnYW5pemF0aW9uIHdpdGggZGVtb2dyYXBoaWMgcHJvcGVydGllcyBhbmQgYmlsbGluZyBwbGFuIGRldGFpbHM6CHRleHQvY3N2gtPkkwIlEiMvdjFiZXRhMS9hZG1pbi9vcmdhbml6YXRpb25zL2V4cG9ydDABEogCChdFeHBvcnRPcmdhbml6YXRpb25Vc2VycxI5LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRXhwb3J0T3JnYW5pemF0aW9uVXNlcnNSZXF1ZXN0GhQuZ29vZ2xlLmFwaS5IdHRwQm9keSKZAZJBYAoMT3JnYW5pemF0aW9uEhlFeHBvcnQgb3JnYW5pemF0aW9uIHVzZXJzGitFeHBvcnQgb3JnYW5pemF0aW9uIHVzZXIgdGhlaXIgcm9sZSBkZXRhaWxzOgh0ZXh0L2NzdoLT5JMCMBIuL3YxYmV0YTEvYWRtaW4vb3JnYW5pemF0aW9ucy97aWR9L3VzZXJzL2V4cG9ydDABEpMCChpFeHBvcnRPcmdhbml6YXRpb25Qcm9qZWN0cxI8LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRXhwb3J0T3JnYW5pemF0aW9uUHJvamVjdHNSZXF1ZXN0GhQuZ29vZ2xlLmFwaS5IdHRwQm9keSKeAZJBYgoMT3JnYW5pemF0aW9uEhxFeHBvcnQgb3JnYW5pemF0aW9uIHByb2plY3RzGipFeHBvcnQgb3JnYW5pemF0aW9uIHByb2plY3RzIHdpdGggdXNlciBJRHM6CHRleHQvY3N2gtPkkwIzEjEvdjFiZXRhMS9hZG1pbi9vcmdhbml6YXRpb25zL3tpZH0vcHJvamVjdHMvZXhwb3J0MAES+wEKGEV4cG9ydE9yZ2FuaXphdGlvblRva2VucxI6LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRXhwb3J0T3JnYW5pemF0aW9uVG9rZW5zUmVxdWVzdBoULmdvb2dsZS5hcGkuSHR0cEJvZHkiigGSQVAKDE9yZ2FuaXphdGlvbhIaRXhwb3J0IG9yZ2FuaXphdGlvbiB0b2tlbnMaGkV4cG9ydCBvcmdhbml6YXRpb24gdG9rZW5zOgh0ZXh0L2NzdoLT5JMCMRIvL3YxYmV0YTEvYWRtaW4vb3JnYW5pemF0aW9ucy97aWR9L3Rva2Vucy9leHBvcnQwARLdAQoLRXhwb3J0VXNlcnMSLS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkV4cG9ydFVzZXJzUmVxdWVzdBoULmdvb2dsZS5hcGkuSHR0cEJvZHkihgGSQWAKBFVzZXISDEV4cG9ydCB1c2VycxpARXhwb3J0IHVzZXIgd2l0aCBkZW1vZ3JhcGhpYyBwcm9wZXJ0aWVzIGFuZCBiaWxsaW5nIHBsYW4gZGV0YWlsczoIdGV4dC9jc3aC0+STAh0SGy92MWJldGExL2FkbWluL3VzZXJzL2V4cG9ydDABEtcBCgtTZWFyY2hVc2VycxItLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuU2VhcmNoVXNlcnNSZXF1ZXN0Gi4ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5TZWFyY2hVc2Vyc1Jlc3BvbnNlImmSQTwKBFVzZXISDFNlYXJjaCB1c2VycxomU2VhcmNoIHVzZXJzIGJhc2VkIG9uIHRoZWlyIHByb3BlcnRpZXOC0+STAiQiGy92MWJldGExL2FkbWluL3VzZXJzL3NlYXJjaDoFcXVlcnkS9AEKF1NlYXJjaFVzZXJPcmdhbml6YXRpb25zEjkucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5TZWFyY2hVc2VyT3JnYW5pemF0aW9uc1JlcXVlc3QaOi5yYXlzdGFjay5mcm9udGllci52MWJldGExLlNlYXJjaFVzZXJPcmdhbml6YXRpb25zUmVzcG9uc2UiYpJBIgoEVXNlchIaU2VhcmNoIHVzZXJzIG9yZ2FuaXphdGlvbnOC0+STAjciLi92MWJldGExL2FkbWluL3VzZXJzL3tpZH0vb3JnYW5pemF0aW9ucy9zZWFyY2g6BXF1ZXJ5EoICChJTZWFyY2hVc2VyUHJvamVjdHMSNC5yYXlzdGFjay5mcm9udGllci52MWJldGExLlNlYXJjaFVzZXJQcm9qZWN0c1JlcXVlc3QaNS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlNlYXJjaFVzZXJQcm9qZWN0c1Jlc3BvbnNlIn+SQS8KBFVzZXISJ1NlYXJjaCBwcm9qZWN0cyBvZiBhIHVzZXIgd2l0aGluIGFuIG9yZ4LT5JMCRyI+L3YxYmV0YTEvYWRtaW4vdXNlcnMve3VzZXJfaWR9L29yZ2FuaXphdGlvbnMve29yZ19pZH0vcHJvamVjdHM6BXF1ZXJ5Eq0CChJTZXRPcmdhbml6YXRpb25LeWMSNC5yYXlzdGFjay5mcm9udGllci52MWJldGExLlNldE9yZ2FuaXphdGlvbkt5Y1JlcXVlc3QaNS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlNldE9yZ2FuaXphdGlvbkt5Y1Jlc3BvbnNlIqkBkkFyCg9Pcmdhbml6YXRpb25LeWMSJlNldCBLWUMgaW5mb3JtYXRpb24gb2YgYW4gb3JnYW5pemF0aW9uGjdTZXQgS1lDIGluZm9ybWF0aW9uIG9mIGFuIG9yZ2FuaXphdGlvbiB1c2luZyBJRCBvciBuYW1lgtPkkwIuGikvdjFiZXRhMS9hZG1pbi9vcmdhbml6YXRpb25zL3tvcmdfaWR9L2t5YzoBKhKbAgoUTGlzdE9yZ2FuaXphdGlvbnNLeWMSNi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RPcmdhbml6YXRpb25zS3ljUmVxdWVzdBo3LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdE9yZ2FuaXphdGlvbnNLeWNSZXNwb25zZSKRAZJBZgoPT3JnYW5pemF0aW9uS3ljEilMaXN0IEtZQyBpbmZvcm1hdGlvbiBvZiBhbGwgb3JnYW5pemF0aW9ucxooTGlzdCBLWUMgaW5mb3JtYXRpb24gb2YgYWxsIG9yZ2FuaXphdGlvboLT5JMCIhIgL3YxYmV0YTEvYWRtaW4vb3JnYW5pemF0aW9ucy9reWMSqgIKDExpc3RQcm9qZWN0cxIuLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdFByb2plY3RzUmVxdWVzdBovLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdFByb2plY3RzUmVzcG9uc2UiuAGSQZUBCgdQcm9qZWN0EhFMaXN0IGFsbCBwcm9qZWN0cxp3TGlzdHMgYWxsIHRoZSBwcm9qZWN0cyBmcm9tIGFsbCB0aGUgb3JnYW5pemF0aW9ucyBpbiBhIEZyb250aWVyIGluc3RhbmNlLiBJdCBjYW4gYmUgZmlsdGVyZWQgYnkgb3JnYW5pemF0aW9uIGFuZCBzdGF0ZS6C0+STAhkSFy92MWJldGExL2FkbWluL3Byb2plY3RzErUBCg1MaXN0UmVsYXRpb25zEi8ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0UmVsYXRpb25zUmVxdWVzdBowLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdFJlbGF0aW9uc1Jlc3BvbnNlIkGSQR4KCFJlbGF0aW9uEhJMaXN0IGFsbCByZWxhdGlvbnOC0+STAhoSGC92MWJldGExL2FkbWluL3JlbGF0aW9ucxLFAgoNTGlzdFJlc291cmNlcxIvLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdFJlc291cmNlc1JlcXVlc3QaMC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RSZXNvdXJjZXNSZXNwb25zZSLQAZJBrAEKCFJlc291cmNlEhJMaXN0IGFsbCByZXNvdXJjZXMaiwFMaXN0cyBhbGwgdGhlIHJlc291cmNlcyBmcm9tIGFsbCB0aGUgb3JnYW5pemF0aW9ucyBpbiBhIEZyb250aWVyIGluc3RhbmNlLiBJdCBjYW4gYmUgZmlsdGVyZWQgYnkgdXNlciwgcHJvamVjdCwgb3JnYW5pemF0aW9uIGFuZCBuYW1lc3BhY2UugtPkkwIaEhgvdjFiZXRhMS9hZG1pbi9yZXNvdXJjZXMSmAIKCkNyZWF0ZVJvbGUSLC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNyZWF0ZVJvbGVSZXF1ZXN0Gi0ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVSb2xlUmVzcG9uc2UirAGSQYwBCgRSb2xlEhRDcmVhdGUgcGxhdGZvcm0gcm9sZRpuQ3JlYXRlcyBhIHBsYXRmb3JtIHdpZGUgcm9sZS4gSXQgY2FuIGJlIHVzZWQgdG8gZ3JhbnQgcGVybWlzc2lvbnMgdG8gYWxsIHRoZSByZXNvdXJjZXMgaW4gYSBGcm9udGllciBpbnN0YW5jZS6C0+STAhYiDi92MWJldGExL3JvbGVzOgRib2R5EtUBCgpVcGRhdGVSb2xlEiwucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5VcGRhdGVSb2xlUmVxdWVzdBotLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuVXBkYXRlUm9sZVJlc3BvbnNlImqSQUYKBFJvbGUSC1VwZGF0ZSByb2xlGjFVcGRhdGUgYSByb2xlIHRpdGxlLCBkZXNjcmlwdGlvbiBhbmQgcGVybWlzc2lvbnMugtPkkwIbGhMvdjFiZXRhMS9yb2xlcy97aWR9OgRib2R5EtwBCgpEZWxldGVSb2xlEiwucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5EZWxldGVSb2xlUmVxdWVzdBotLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRGVsZXRlUm9sZVJlc3BvbnNlInGSQVMKBFJvbGUSFERlbGV0ZSBwbGF0Zm9ybSByb2xlGjVEZWxldGUgYSBwbGF0Zm9ybSB3aWRlIHJvbGUgYW5kIGFsbCBvZiBpdHMgcmVsYXRpb25zLoLT5JMCFSoTL3YxYmV0YTEvcm9sZXMve2lkfRKxAgoQQ3JlYXRlUGVybWlzc2lvbhIyLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ3JlYXRlUGVybWlzc2lvblJlcXVlc3QaMy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNyZWF0ZVBlcm1pc3Npb25SZXNwb25zZSKzAZJBkAEKClBlcm1pc3Npb24SGkNyZWF0ZSBwbGF0Zm9ybSBwZXJtaXNzaW9uGmZDcmVhdGVzIGEgcGVybWlzc2lvbi4gSXQgY2FuIGJlIHVzZWQgdG8gZ3JhbnQgcGVybWlzc2lvbnMgdG8gYWxsIHRoZSByZXNvdXJjZXMgaW4gYSBGcm9udGllciBpbnN0YW5jZS6C0+STAhkiFC92MWJldGExL3Blcm1pc3Npb25zOgEqEr8CChBVcGRhdGVQZXJtaXNzaW9uEjIucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5VcGRhdGVQZXJtaXNzaW9uUmVxdWVzdBozLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuVXBkYXRlUGVybWlzc2lvblJlc3BvbnNlIsEBkkGWAQoKUGVybWlzc2lvbhIaVXBkYXRlIHBsYXRmb3JtIHBlcm1pc3Npb24abFVwZGF0ZXMgYSBwZXJtaXNzaW9uIGJ5IElELiBJdCBjYW4gYmUgdXNlZCB0byBncmFudCBwZXJtaXNzaW9ucyB0byBhbGwgdGhlIHJlc291cmNlcyBpbiBhIEZyb250aWVyIGluc3RhbmNlLoLT5JMCIRoZL3YxYmV0YTEvcGVybWlzc2lvbnMve2lkfToEYm9keRLJAQoQRGVsZXRlUGVybWlzc2lvbhIyLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRGVsZXRlUGVybWlzc2lvblJlcXVlc3QaMy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkRlbGV0ZVBlcm1pc3Npb25SZXNwb25zZSJMkkEoCgpQZXJtaXNzaW9uEhpEZWxldGUgcGxhdGZvcm0gcGVybWlzc2lvboLT5JMCGyoZL3YxYmV0YTEvcGVybWlzc2lvbnMve2lkfRKwAgoPTGlzdFByZWZlcmVuY2VzEjEucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0UHJlZmVyZW5jZXNSZXF1ZXN0GjIucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0UHJlZmVyZW5jZXNSZXNwb25zZSK1AZJBlQEKClByZWZlcmVuY2USGUxpc3QgcGxhdGZvcm0gcHJlZmVyZW5jZXMabFJldHVybnMgYSBsaXN0IG9mIGFsbCBwcmVmZXJlbmNlcyBjb25maWd1cmVkIG9uIGFuIGluc3RhbmNlIGluIEZyb250aWVyLiBlLmcgdXNlciwgcHJvamVjdCwgb3JnYW5pemF0aW9uIGV0Y4LT5JMCFhIUL3YxYmV0YTEvcHJlZmVyZW5jZXMS+wIKEUNyZWF0ZVByZWZlcmVuY2VzEjMucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVQcmVmZXJlbmNlc1JlcXVlc3QaNC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNyZWF0ZVByZWZlcmVuY2VzUmVzcG9uc2Ui+gGSQdcBCgpQcmVmZXJlbmNlEhtDcmVhdGUgcGxhdGZvcm0gcHJlZmVyZW5jZXMaqwFDcmVhdGUgbmV3IHBsYXRmb3JtIHByZWZlcmVuY2VzLiBUaGUgcGxhdGZvcm0gcHJlZmVyZW5jZXMgKipuYW1lKiogbXVzdCBiZSB1bmlxdWUgd2l0aGluIHRoZSBwbGF0Zm9ybSBhbmQgY2FuIGNvbnRhaW4gb25seSBhbHBoYW51bWVyaWMgY2hhcmFjdGVycywgZGFzaGVzIGFuZCB1bmRlcnNjb3Jlcy6C0+STAhkiFC92MWJldGExL3ByZWZlcmVuY2VzOgEqEoMDCiBDaGVja0ZlZGVyYXRlZFJlc291cmNlUGVybWlzc2lvbhJCLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ2hlY2tGZWRlcmF0ZWRSZXNvdXJjZVBlcm1pc3Npb25SZXF1ZXN0GkMucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DaGVja0ZlZGVyYXRlZFJlc291cmNlUGVybWlzc2lvblJlc3BvbnNlItUBkkGyAQoFQXV0aHoSBUNoZWNrGqEBUmV0dXJucyB0cnVlIGlmIGEgcHJpbmNpcGFsIGhhcyByZXF1aXJlZCBwZXJtaXNzaW9ucyB0byBhY2Nlc3MgYSByZXNvdXJjZSBhbmQgZmFsc2Ugb3RoZXJ3aXNlLjxici8+IE5vdGUgdGhlIHByaW5jaXBhbCBjYW4gYmUgYSB1c2VyLCBncm91cCBvciBhIHNlcnZpY2UgYWNjb3VudC6C0+STAhkiFC92MWJldGExL2FkbWluL2NoZWNrOgEqEuABCg9BZGRQbGF0Zm9ybVVzZXISMS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkFkZFBsYXRmb3JtVXNlclJlcXVlc3QaMi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkFkZFBsYXRmb3JtVXNlclJlc3BvbnNlImaSQTsKCFBsYXRmb3JtEhFBZGQgcGxhdGZvcm0gdXNlchocQWRkcyBhIHVzZXIgdG8gdGhlIHBsYXRmb3JtLoLT5JMCIiIdL3YxYmV0YTEvYWRtaW4vcGxhdGZvcm0vdXNlcnM6ASoS8wEKEUxpc3RQbGF0Zm9ybVVzZXJzEjMucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0UGxhdGZvcm1Vc2Vyc1JlcXVlc3QaNC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RQbGF0Zm9ybVVzZXJzUmVzcG9uc2Uic5JBSwoIUGxhdGZvcm0SE0xpc3QgcGxhdGZvcm0gdXNlcnMaKkxpc3RzIGFsbCB0aGUgdXNlcnMgYWRkZWQgdG8gdGhlIHBsYXRmb3JtLoLT5JMCHxIdL3YxYmV0YTEvYWRtaW4vcGxhdGZvcm0vdXNlcnMS+AEKElJlbW92ZVBsYXRmb3JtVXNlchI0LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUmVtb3ZlUGxhdGZvcm1Vc2VyUmVxdWVzdBo1LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUmVtb3ZlUGxhdGZvcm1Vc2VyUmVzcG9uc2UidZJBQwoIUGxhdGZvcm0SFFJlbW92ZSBwbGF0Zm9ybSB1c2VyGiFSZW1vdmVzIGEgdXNlciBmcm9tIHRoZSBwbGF0Zm9ybS6C0+STAikiJC92MWJldGExL2FkbWluL3BsYXRmb3JtL3VzZXJzL3JlbW92ZToBKhLAAwoRRGVsZWdhdGVkQ2hlY2tvdXQSMy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkRlbGVnYXRlZENoZWNrb3V0UmVxdWVzdBo0LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuRGVsZWdhdGVkQ2hlY2tvdXRSZXNwb25zZSK/ApJBrQEKCENoZWNrb3V0EiJDaGVja291dCBhIHByb2R1Y3Qgb3Igc3Vic2NyaXB0aW9uGn1DaGVja291dCBhIHByb2R1Y3QgdG8gYnV5IGl0IG9uZSB0aW1lIG9yIHN0YXJ0IGEgc3Vic2NyaXB0aW9uIHBsYW4gb24gYSBiaWxsaW5nIGFjY291bnQgbWFudWFsbHkuIEl0IGJ5cGFzc2VzIGJpbGxpbmcgZW5naW5lLoLT5JMChwEiRC92MWJldGExL2FkbWluL29yZ2FuaXphdGlvbnMve29yZ19pZH0vYmlsbGluZy97YmlsbGluZ19pZH0vY2hlY2tvdXRzOgEqWjwiNy92MWJldGExL2FkbWluL29yZ2FuaXphdGlvbnMve29yZ19pZH0vYmlsbGluZy9jaGVja291dHM6ASoSsQIKD0xpc3RBbGxJbnZvaWNlcxIxLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdEFsbEludm9pY2VzUmVxdWVzdBoyLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdEFsbEludm9pY2VzUmVzcG9uc2UitgGSQYsBCgdJbnZvaWNlEhFMaXN0IGFsbCBpbnZvaWNlcxptTGlzdHMgYWxsIHRoZSBpbnZvaWNlcyBmcm9tIGFsbCB0aGUgb3JnYW5pemF0aW9ucyBpbiBhIEZyb250aWVyIGluc3RhbmNlLiBJdCBjYW4gYmUgZmlsdGVyZWQgYnkgb3JnYW5pemF0aW9uLoLT5JMCIRIfL3YxYmV0YTEvYWRtaW4vYmlsbGluZy9pbnZvaWNlcxKnAgoQR2VuZXJhdGVJbnZvaWNlcxIyLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR2VuZXJhdGVJbnZvaWNlc1JlcXVlc3QaMy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkdlbmVyYXRlSW52b2ljZXNSZXNwb25zZSKpAZJBcwoHSW52b2ljZRIaVHJpZ2dlciBpbnZvaWNlIGdlbmVyYXRpb24aTFRyaWdnZXJzIHRoZSBjcmVhdGlvbiBvZiBjcmVkaXQgb3ZlcmRyYWZ0IGludm9pY2VzIGZvciBhbGwgYmlsbGluZyBhY2NvdW50cy6C0+STAi0iKC92MWJldGExL2FkbWluL2JpbGxpbmcvaW52b2ljZXMvZ2VuZXJhdGU6ASoS1gIKFkxpc3RBbGxCaWxsaW5nQWNjb3VudHMSOC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RBbGxCaWxsaW5nQWNjb3VudHNSZXF1ZXN0GjkucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0QWxsQmlsbGluZ0FjY291bnRzUmVzcG9uc2UixgGSQZsBCgdCaWxsaW5nEhlMaXN0IGFsbCBiaWxsaW5nIGFjY291bnRzGnVMaXN0cyBhbGwgdGhlIGJpbGxpbmcgYWNjb3VudHMgZnJvbSBhbGwgdGhlIG9yZ2FuaXphdGlvbnMgaW4gYSBGcm9udGllciBpbnN0YW5jZS4gSXQgY2FuIGJlIGZpbHRlcmVkIGJ5IG9yZ2FuaXphdGlvbi6C0+STAiESHy92MWJldGExL2FkbWluL2JpbGxpbmcvYWNjb3VudHMS5AIKElJldmVydEJpbGxpbmdVc2FnZRI0LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUmV2ZXJ0QmlsbGluZ1VzYWdlUmVxdWVzdBo1LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUmV2ZXJ0QmlsbGluZ1VzYWdlUmVzcG9uc2Ui4AGSQUwKB0JpbGxpbmcSFFJldmVydCBiaWxsaW5nIHVzYWdlGitSZXZlcnQgYmlsbGluZyB1c2FnZSBmb3IgYSBiaWxsaW5nIGFjY291bnQugtPkkwKKASJSL3YxYmV0YTEvYWRtaW4vb3JnYW5pemF0aW9ucy97b3JnX2lkfS9iaWxsaW5nL3tiaWxsaW5nX2lkfS91c2FnZS97dXNhZ2VfaWR9L3JldmVydDoBKloxIiwvdjFiZXRhMS9vcmdhbml6YXRpb25zL2JpbGxpbmcvdXNhZ2VzL3JldmVydDoBKhLJAQoNQ3JlYXRlV2ViaG9vaxIvLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ3JlYXRlV2ViaG9va1JlcXVlc3QaMC5yYXlzdGFjay5mcm9udGllci52MWJldGExLkNyZWF0ZVdlYmhvb2tSZXNwb25zZSJVkkEwCgdXZWJob29rEg5DcmVhdGUgd2ViaG9vaxoVQ3JlYXRlIGEgbmV3IHdlYmhvb2sugtPkkwIcIhcvdjFiZXRhMS9hZG1pbi93ZWJob29rczoBKhLKAQoNVXBkYXRlV2ViaG9vaxIvLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuVXBkYXRlV2ViaG9va1JlcXVlc3QaMC5yYXlzdGFjay5mcm9udGllci52MWJldGExLlVwZGF0ZVdlYmhvb2tSZXNwb25zZSJWkkEsCgdXZWJob29rEg5VcGRhdGUgd2ViaG9vaxoRVXBkYXRlIGEgd2ViaG9vay6C0+STAiEaHC92MWJldGExL2FkbWluL3dlYmhvb2tzL3tpZH06ASoSxwEKDURlbGV0ZVdlYmhvb2sSLy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkRlbGV0ZVdlYmhvb2tSZXF1ZXN0GjAucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5EZWxldGVXZWJob29rUmVzcG9uc2UiU5JBLAoHV2ViaG9vaxIORGVsZXRlIHdlYmhvb2saEURlbGV0ZSBhIHdlYmhvb2sugtPkkwIeKhwvdjFiZXRhMS9hZG1pbi93ZWJob29rcy97aWR9Er8BCgxMaXN0V2ViaG9va3MSLi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RXZWJob29rc1JlcXVlc3QaLy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RXZWJob29rc1Jlc3BvbnNlIk6SQSwKB1dlYmhvb2sSDUxpc3Qgd2ViaG9va3MaEkxpc3QgYWxsIHdlYmhvb2tzLoLT5JMCGRIXL3YxYmV0YTEvYWRtaW4vd2ViaG9va3MSsAIKGlVwZGF0ZUJpbGxpbmdBY2NvdW50TGltaXRzEjwucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5VcGRhdGVCaWxsaW5nQWNjb3VudExpbWl0c1JlcXVlc3QaPS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlVwZGF0ZUJpbGxpbmdBY2NvdW50TGltaXRzUmVzcG9uc2UilAGIAgGSQUoKB0JpbGxpbmcSHVVwZGF0ZSBiaWxsaW5nIGFjY291bnQgbGltaXRzGh5VcGRhdGUgYmlsbGluZyBhY2NvdW50IGxpbWl0cy5YAYLT5JMCPho5L3YxYmV0YTEvYWRtaW4vb3JnYW5pemF0aW9ucy97b3JnX2lkfS9iaWxsaW5nL3tpZH0vbGltaXRzOgEqErMCChhHZXRCaWxsaW5nQWNjb3VudERldGFpbHMSOi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkdldEJpbGxpbmdBY2NvdW50RGV0YWlsc1JlcXVlc3QaOy5yYXlzdGFjay5mcm9udGllci52MWJldGExLkdldEJpbGxpbmdBY2NvdW50RGV0YWlsc1Jlc3BvbnNlIp0BkkFYCgdCaWxsaW5nEhtHZXQgYmlsbGluZyBhY2NvdW50IGRldGFpbHMaMEdldCBiaWxsaW5nIGFjY291bnQgZGV0YWlscyB0aGF0IGNhbiBiZSB1cGRhdGVkLoLT5JMCPBI6L3YxYmV0YTEvYWRtaW4vb3JnYW5pemF0aW9ucy97b3JnX2lkfS9iaWxsaW5nL3tpZH0vZGV0YWlscxKxAgobVXBkYXRlQmlsbGluZ0FjY291bnREZXRhaWxzEj0ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5VcGRhdGVCaWxsaW5nQWNjb3VudERldGFpbHNSZXF1ZXN0Gj4ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5VcGRhdGVCaWxsaW5nQWNjb3VudERldGFpbHNSZXNwb25zZSKSAZJBSgoHQmlsbGluZxIeVXBkYXRlIGJpbGxpbmcgYWNjb3VudCBkZXRhaWxzGh9VcGRhdGUgYmlsbGluZyBhY2NvdW50IGRldGFpbHMugtPkkwI/GjovdjFiZXRhMS9hZG1pbi9vcmdhbml6YXRpb25zL3tvcmdfaWR9L2JpbGxpbmcve2lkfS9kZXRhaWxzOgEqEucBCg5DcmVhdGVQcm9zcGVjdBIwLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuQ3JlYXRlUHJvc3BlY3RSZXF1ZXN0GjEucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5DcmVhdGVQcm9zcGVjdFJlc3BvbnNlInCSQUoKCFByb3NwZWN0Eg9DcmVhdGUgcHJvc3BlY3QaLUNyZWF0ZSBwcm9zcGVjdCBmb3IgZ2l2ZW4gZW1haWwgYW5kIGFjdGl2aXR5LoLT5JMCHSIYL3YxYmV0YTEvYWRtaW4vcHJvc3BlY3RzOgEqEvwBCg1MaXN0UHJvc3BlY3RzEi8ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0UHJvc3BlY3RzUmVxdWVzdBowLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuTGlzdFByb3NwZWN0c1Jlc3BvbnNlIocBkkFYCghQcm9zcGVjdBIOTGlzdCBwcm9zcGVjdHMaPExpc3QgcHJvc3BlY3RzIGFuZCBzdXBwb3J0cyBmaWx0ZXJzLCBzb3J0aW5nIGFuZCBwYWdpbmF0aW9uLoLT5JMCJiIdL3YxYmV0YTEvYWRtaW4vcHJvc3BlY3RzL2xpc3Q6BXF1ZXJ5EsIBCgtHZXRQcm9zcGVjdBItLnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR2V0UHJvc3BlY3RSZXF1ZXN0Gi4ucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5HZXRQcm9zcGVjdFJlc3BvbnNlIlSSQSwKCFByb3NwZWN0EgxHZXQgcHJvc3BlY3QaEkdldCBwcm9zcGVjdCBieSBJRILT5JMCHxIdL3YxYmV0YTEvYWRtaW4vcHJvc3BlY3RzL3tpZH0S2wEKDlVwZGF0ZVByb3NwZWN0EjAucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5VcGRhdGVQcm9zcGVjdFJlcXVlc3QaMS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlVwZGF0ZVByb3NwZWN0UmVzcG9uc2UiZJJBOQoIUHJvc3BlY3QSD1VwZGF0ZSBwcm9zcGVjdBocVXBkYXRlIHByb3NwZWN0IGZvciBnaXZlbiBJRILT5JMCIhodL3YxYmV0YTEvYWRtaW4vcHJvc3BlY3RzL3tpZH06ASoS2AEKDkRlbGV0ZVByb3NwZWN0EjAucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5EZWxldGVQcm9zcGVjdFJlcXVlc3QaMS5yYXlzdGFjay5mcm9udGllci52MWJldGExLkRlbGV0ZVByb3NwZWN0UmVzcG9uc2UiYZJBOQoIUHJvc3BlY3QSD0RlbGV0ZSBwcm9zcGVjdBocRGVsZXRlIHByb3NwZWN0IGZvciBnaXZlbiBJRILT5JMCHyodL3YxYmV0YTEvYWRtaW4vcHJvc3BlY3RzL3tpZH0S2gEKDlNlYXJjaEludm9pY2VzEjAucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5TZWFyY2hJbnZvaWNlc1JlcXVlc3QaMS5yYXlzdGFjay5mcm9udGllci52MWJldGExLlNlYXJjaEludm9pY2VzUmVzcG9uc2UiY5JBMwoHaW52b2ljZRIoU2VhcmNoIGludm9pY2VzIGFjcm9zcyBhbGwgb3JnYW5pemF0aW9uc4LT5JMCJyIeL3YxYmV0YTEvYWRtaW4vaW52b2ljZXMvc2VhcmNoOgVxdWVyeRK0AgoTR2V0Q3VycmVudEFkbWluVXNlchI1LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuR2V0Q3VycmVudEFkbWluVXNlclJlcXVlc3QaNi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkdldEN1cnJlbnRBZG1pblVzZXJSZXNwb25zZSKtAZJBiAEKBFVzZXISFkdldCBjdXJyZW50IGFkbWluIHVzZXIaaFJldHVybnMgdGhlIGN1cnJlbnQgYXV0aGVudGljYXRlZCBhZG1pbiB1c2VyIHByb2ZpbGUuIFJldHVybnMgNDAzIEZvcmJpZGRlbiBpZiB0aGUgdXNlciBpcyBub3QgYW4gYWRtaW4ugtPkkwIbEhkvdjFiZXRhMS9hZG1pbi91c2Vycy9zZWxmEn0KEExpc3RVc2VyU2Vzc2lvbnMSMi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RVc2VyU2Vzc2lvbnNSZXF1ZXN0GjMucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0VXNlclNlc3Npb25zUmVzcG9uc2UiABKAAQoRUmV2b2tlVXNlclNlc3Npb24SMy5yYXlzdGFjay5mcm9udGllci52MWJldGExLlJldm9rZVVzZXJTZXNzaW9uUmVxdWVzdBo0LnJheXN0YWNrLmZyb250aWVyLnYxYmV0YTEuUmV2b2tlVXNlclNlc3Npb25SZXNwb25zZSIAEn0KEExpc3RBdWRpdFJlY29yZHMSMi5yYXlzdGFjay5mcm9udGllci52MWJldGExLkxpc3RBdWRpdFJlY29yZHNSZXF1ZXN0GjMucmF5c3RhY2suZnJvbnRpZXIudjFiZXRhMS5MaXN0QXVkaXRSZWNvcmRzUmVzcG9uc2UiAELwDgojaW8ucmF5c3RhY2sucHJvdG9uLmZyb250aWVyLnYxYmV0YTFCCEZyb250aWVyWjtnaXRodWIuY29tL3JheXN0YWNrL3Byb3Rvbi9mcm9udGllci92MWJldGExO2Zyb250aWVydjFiZXRhMZJBgA4S/gYKG0Zyb250aWVyIEFkbWluaXN0cmF0aW9uIEFQSRLPBVRoZSBGcm9udGllciBBUElzIGFkaGVyZSB0byB0aGUgT3BlbkFQSSBzcGVjaWZpY2F0aW9uLCBhbHNvIGtub3duIGFzIFN3YWdnZXIsIHdoaWNoIHByb3ZpZGVzIGEgc3RhbmRhcmRpemVkIGFwcHJvYWNoIGZvciBkZXNpZ25pbmcsIGRvY3VtZW50aW5nLCBhbmQgY29uc3VtaW5nIFJFU1RmdWwgQVBJcy4gV2l0aCBPcGVuQVBJLCB5b3UgZ2FpbiBhIGNsZWFyIHVuZGVyc3RhbmRpbmcgb2YgdGhlIEFQSSBlbmRwb2ludHMsIHJlcXVlc3QvcmVzcG9uc2Ugc3RydWN0dXJlcywgYW5kIGF1dGhlbnRpY2F0aW9uIG1lY2hhbmlzbXMgc3VwcG9ydGVkIGJ5IHRoZSBGcm9udGllciBBUElzLiBCeSBsZXZlcmFnaW5nIHRoZSBPcGVuQVBJIHNwZWNpZmljYXRpb24sIGRldmVsb3BlcnMgY2FuIGVhc2lseSBleHBsb3JlIGFuZCBpbnRlcmFjdCB3aXRoIHRoZSBGcm9udGllciBBUElzIHVzaW5nIGEgdmFyaWV0eSBvZiB0b29scyBhbmQgbGlicmFyaWVzLiBUaGUgT3BlbkFQSSBzcGVjaWZpY2F0aW9uIGVuYWJsZXMgYXV0b21hdGljIGNvZGUgZ2VuZXJhdGlvbiwgaW50ZXJhY3RpdmUgQVBJIGRvY3VtZW50YXRpb24sIGFuZCBzZWFtbGVzcyBpbnRlZ3JhdGlvbiB3aXRoIEFQSSB0ZXN0aW5nIGZyYW1ld29ya3MsIG1ha2luZyBpdCBlYXNpZXIgdGhhbiBldmVyIHRvIGludGVncmF0ZSBGcm9udGllciBpbnRvIHlvdXIgZXhpc3RpbmcgYXBwbGljYXRpb25zIGFuZCB3b3JrZmxvd3MuIkAKE1JheXN0YWNrIEZvdW5kYXRpb24SFWh0dHBzOi8vcmF5c3RhY2sub3JnLxoSaGVsbG9AcmF5c3RhY2sub3JnKkQKCkFwYWNoZSAyLjASNmh0dHBzOi8vZ2l0aHViLmNvbS9yYXlzdGFjay9mcm9udGllci9ibG9iL21haW4vTElDRU5TRTIFMC4yLjAaDjEyNy4wLjAuMTo3NDAwKgEBMhBhcHBsaWNhdGlvbi9qc29uOhBhcHBsaWNhdGlvbi9qc29uUjwKAzIwMBI1ChtPSyAtIEEgc3VjY2Vzc2Z1bCByZXNwb25zZS4SFgoUGhIuZ29vZ2xlLnJwYy5TdGF0dXNSaQoDNDAwEmIKSEJhZCBSZXF1ZXN0IC0gVGhlIHJlcXVlc3Qgd2FzIG1hbGZvcm1lZCBvciBjb250YWluZWQgaW52YWxpZCBwYXJhbWV0ZXJzLhIWChQaEi5nb29nbGUucnBjLlN0YXR1c1JKCgM0MDESQwopVW5hdXRob3JpemVkIC0gQXV0aGVudGljYXRpb24gaXMgcmVxdWlyZWQSFgoUGhIuZ29vZ2xlLnJwYy5TdGF0dXNSYQoDNDAzEloKQEZvcmJpZGRlbiAtIFVzZXIgZG9lcyBub3QgaGF2ZSBwZXJtaXNzaW9uIHRvIGFjY2VzcyB0aGUgcmVzb3VyY2USFgoUGhIuZ29vZ2xlLnJwYy5TdGF0dXNSUQoDNDA0EkoKME5vdCBGb3VuZCAtIFRoZSByZXF1ZXN0ZWQgcmVzb3VyY2Ugd2FzIG5vdCBmb3VuZBIWChQaEi5nb29nbGUucnBjLlN0YXR1c1J1CgM1MDASbgpUSW50ZXJuYWwgU2VydmVyIEVycm9yLiBSZXR1cm5lZCB3aGVuIHRoZXJlcyBpcyBzb21ldGhpbmcgd3Jvbmcgd2l0aCBGcm9udGllciBzZXJ2ZXIuEhYKFBoSLmdvb2dsZS5ycGMuU3RhdHVzWqgBCk4KBUJhc2ljEkUIARI3dXNlIENsaWVudCBJRCBhcyB1c2VybmFtZSBhbmQgQ2xpZW50IFNlY3JldCBhcyBwYXNzd29yZBoGQmFzaWMgIAIKVgoGQmVhcmVyEkwIAxI9QWNjZXNzIHRva2VuIG9yIEpXVCB0b2tlbiwgcHJlZml4ZWQgYnkgQmVhcmVyOiBCZWFyZXIgPHRva2VuPhoHQmVhcmVyICACYgkKBwoFQmFzaWNiCgoICgZCZWFyZXJqBgoEVXNlcmoHCgVHcm91cGoOCgxPcmdhbml6YXRpb25qCQoHUHJvamVjdGoKCghSZWxhdGlvbmoKCghSZXNvdXJjZWoICgZQb2xpY3lqBgoEUm9sZWoMCgpQZXJtaXNzaW9uYgZwcm90bzM", [file_google_api_annotations, file_google_api_field_behavior, file_google_protobuf_struct, file_google_protobuf_timestamp, file_google_api_httpbody, file_protoc_gen_openapiv2_options_annotations, file_raystack_frontier_v1beta1_models, file_validate_validate]);
19
19
 
20
20
  /**
21
21
  * Describes the message raystack.frontier.v1beta1.ListAllUsersRequest.
@@ -906,6 +906,20 @@ export const RevokeUserSessionRequestSchema = /*@__PURE__*/
906
906
  export const RevokeUserSessionResponseSchema = /*@__PURE__*/
907
907
  messageDesc(file_raystack_frontier_v1beta1_admin, 113);
908
908
 
909
+ /**
910
+ * Describes the message raystack.frontier.v1beta1.ListAuditRecordsRequest.
911
+ * Use `create(ListAuditRecordsRequestSchema)` to create a new message.
912
+ */
913
+ export const ListAuditRecordsRequestSchema = /*@__PURE__*/
914
+ messageDesc(file_raystack_frontier_v1beta1_admin, 114);
915
+
916
+ /**
917
+ * Describes the message raystack.frontier.v1beta1.ListAuditRecordsResponse.
918
+ * Use `create(ListAuditRecordsResponseSchema)` to create a new message.
919
+ */
920
+ export const ListAuditRecordsResponseSchema = /*@__PURE__*/
921
+ messageDesc(file_raystack_frontier_v1beta1_admin, 115);
922
+
909
923
  /**
910
924
  * @generated from service raystack.frontier.v1beta1.AdminService
911
925
  */