@eide/foir-proto-ts 0.23.0 → 0.24.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -10,7 +10,7 @@ import { file_expressions_v1_expressions } from "../../expressions/v1/expression
10
10
  * Describes the file settings/v1/settings.proto.
11
11
  */
12
12
  export const file_settings_v1_settings = /*@__PURE__*/
13
- fileDesc("ChpzZXR0aW5ncy92MS9zZXR0aW5ncy5wcm90bxILc2V0dGluZ3MudjEiggMKB1NldHRpbmcSCgoCaWQYASABKAkSCwoDa2V5GAIgASgJEhAKCGNhdGVnb3J5GAMgASgJEisKBXZhbHVlGAQgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgAiAEBEhkKDGRpc3BsYXlfbmFtZRgFIAEoCUgBiAEBEhgKC2Rlc2NyaXB0aW9uGAYgASgJSAKIAQESEQoJZGF0YV90eXBlGAcgASgJEhEKCWlzX3B1YmxpYxgIIAEoCBIRCgl0ZW5hbnRfaWQYFCABKAkSFwoKcHJvamVjdF9pZBgVIAEoCUgDiAEBEi4KCmNyZWF0ZWRfYXQYMiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi4KCnVwZGF0ZWRfYXQYMyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQggKBl92YWx1ZUIPCg1fZGlzcGxheV9uYW1lQg4KDF9kZXNjcmlwdGlvbkINCgtfcHJvamVjdF9pZCKrBAoIQXVkaXRMb2cSCgoCaWQYASABKAkSLQoJdGltZXN0YW1wGAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIUCgd1c2VyX2lkGAMgASgJSACIAQESFgoJdGVuYW50X2lkGAQgASgJSAGIAQESFwoKcHJvamVjdF9pZBgFIAEoCUgCiAEBEg4KBmFjdGlvbhgGIAEoCRIVCg1yZXNvdXJjZV90eXBlGAcgASgJEhgKC3Jlc291cmNlX2lkGAggASgJSAOIAQESLAoGYmVmb3JlGAkgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgEiAEBEisKBWFmdGVyGAogASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgFiAEBEi4KCG1ldGFkYXRhGAsgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgGiAEBEhcKCmlwX2FkZHJlc3MYDCABKAlIB4gBARIXCgp1c2VyX2FnZW50GA0gASgJSAiIAQESFwoKcmVxdWVzdF9pZBgOIAEoCUgJiAEBQgoKCF91c2VyX2lkQgwKCl90ZW5hbnRfaWRCDQoLX3Byb2plY3RfaWRCDgoMX3Jlc291cmNlX2lkQgkKB19iZWZvcmVCCAoGX2FmdGVyQgsKCV9tZXRhZGF0YUINCgtfaXBfYWRkcmVzc0INCgtfdXNlcl9hZ2VudEINCgtfcmVxdWVzdF9pZCKdBQoETm90ZRIKCgJpZBgBIAEoCRITCgtlbnRpdHlfdHlwZRgCIAEoCRIRCgllbnRpdHlfaWQYAyABKAkSHwoSZW50aXR5X25hdHVyYWxfa2V5GAQgASgJSACIAQESFwoKdmVyc2lvbl9pZBgFIAEoCUgBiAEBEigKB2NvbnRlbnQYBiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Eh8KEmNvbnRlbnRfcGxhaW5fdGV4dBgHIAEoCUgCiAEBEhsKDnBhcmVudF9ub3RlX2lkGAogASgJSAOIAQESGwoOdGhyZWFkX3Jvb3RfaWQYCyABKAlIBIgBARITCgtpc19yZXNvbHZlZBgPIAEoCBI0CgtyZXNvbHZlZF9hdBgQIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIBYgBARIYCgtyZXNvbHZlZF9ieRgRIAEoCUgGiAEBEi4KCG1ldGFkYXRhGBQgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgHiAEBEhEKCXRlbmFudF9pZBgeIAEoCRIXCgpwcm9qZWN0X2lkGB8gASgJSAiIAQESEgoKY3JlYXRlZF9ieRgoIAEoCRIuCgpjcmVhdGVkX2F0GDIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEIVChNfZW50aXR5X25hdHVyYWxfa2V5Qg0KC192ZXJzaW9uX2lkQhUKE19jb250ZW50X3BsYWluX3RleHRCEQoPX3BhcmVudF9ub3RlX2lkQhEKD190aHJlYWRfcm9vdF9pZEIOCgxfcmVzb2x2ZWRfYXRCDgoMX3Jlc29sdmVkX2J5QgsKCV9tZXRhZGF0YUINCgtfcHJvamVjdF9pZCKqBQoFU2hhcmUSCgoCaWQYASABKAkSNQoNcmVzb3VyY2VfdHlwZRgCIAEoDjIeLnNldHRpbmdzLnYxLlNoYXJlUmVzb3VyY2VUeXBlEhYKCXJlY29yZF9pZBgDIAEoCUgAiAEBEhQKB2ZpbGVfaWQYBCABKAlIAYgBARIWCgltb2RlbF9rZXkYBSABKAlIAogBARIfChdzaGFyZWRfd2l0aF9jdXN0b21lcl9pZBgGIAEoCRIwCgpwZXJtaXNzaW9uGAcgASgOMhwuc2V0dGluZ3MudjEuU2hhcmVQZXJtaXNzaW9uEigKBnN0YXR1cxgKIAEoDjIYLnNldHRpbmdzLnYxLlNoYXJlU3RhdHVzEjQKC2FjY2VwdGVkX2F0GAsgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgDiAEBEjMKCmV4cGlyZXNfYXQYDCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSASIAQESEQoJdGVuYW50X2lkGBQgASgJEhIKCnByb2plY3RfaWQYFSABKAkSFwoKY3JlYXRlZF9ieRgeIAEoCUgFiAEBEhcKCnJldm9rZWRfYnkYHyABKAlIBogBARIzCgpyZXZva2VkX2F0GCAgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgHiAEBEi4KCmNyZWF0ZWRfYXQYMiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQgwKCl9yZWNvcmRfaWRCCgoIX2ZpbGVfaWRCDAoKX21vZGVsX2tleUIOCgxfYWNjZXB0ZWRfYXRCDQoLX2V4cGlyZXNfYXRCDQoLX2NyZWF0ZWRfYnlCDQoLX3Jldm9rZWRfYnlCDQoLX3Jldm9rZWRfYXQiUgoSR2V0U2V0dGluZ3NSZXF1ZXN0EhUKCGNhdGVnb3J5GAEgASgJSACIAQESEAoDa2V5GAIgASgJSAGIAQFCCwoJX2NhdGVnb3J5QgYKBF9rZXkiPQoTR2V0U2V0dGluZ3NSZXNwb25zZRImCghzZXR0aW5ncxgBIAMoCzIULnNldHRpbmdzLnYxLlNldHRpbmciSwoUVXBkYXRlU2V0dGluZ1JlcXVlc3QSCwoDa2V5GAEgASgJEiYKBXZhbHVlGAIgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdCI+ChVVcGRhdGVTZXR0aW5nUmVzcG9uc2USJQoHc2V0dGluZxgBIAEoCzIULnNldHRpbmdzLnYxLlNldHRpbmciuwIKFExpc3RBdWRpdExvZ3NSZXF1ZXN0EhMKBmFjdGlvbhgBIAEoCUgAiAEBEhoKDXJlc291cmNlX3R5cGUYAiABKAlIAYgBARIYCgtyZXNvdXJjZV9pZBgDIAEoCUgCiAEBEhQKB3VzZXJfaWQYBCABKAlIA4gBARItCgRmcm9tGAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgEiAEBEisKAnRvGAYgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgFiAEBEg0KBWxpbWl0GAogASgFEg4KBm9mZnNldBgLIAEoBUIJCgdfYWN0aW9uQhAKDl9yZXNvdXJjZV90eXBlQg4KDF9yZXNvdXJjZV9pZEIKCghfdXNlcl9pZEIHCgVfZnJvbUIFCgNfdG8iSwoVTGlzdEF1ZGl0TG9nc1Jlc3BvbnNlEiMKBGxvZ3MYASADKAsyFS5zZXR0aW5ncy52MS5BdWRpdExvZxINCgV0b3RhbBgCIAEoBSKVAQoRQ3JlYXRlTm90ZVJlcXVlc3QSEwoLZW50aXR5X3R5cGUYASABKAkSEQoJZW50aXR5X2lkGAIgASgJEigKB2NvbnRlbnQYAyABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EhsKDnBhcmVudF9ub3RlX2lkGAQgASgJSACIAQFCEQoPX3BhcmVudF9ub3RlX2lkIjUKEkNyZWF0ZU5vdGVSZXNwb25zZRIfCgRub3RlGAEgASgLMhEuc2V0dGluZ3MudjEuTm90ZSIcCg5HZXROb3RlUmVxdWVzdBIKCgJpZBgBIAEoCSIyCg9HZXROb3RlUmVzcG9uc2USHwoEbm90ZRgBIAEoCzIRLnNldHRpbmdzLnYxLk5vdGUiiQEKEExpc3ROb3Rlc1JlcXVlc3QSEwoLZW50aXR5X3R5cGUYASABKAkSEQoJZW50aXR5X2lkGAIgASgJEhsKDnBhcmVudF9ub3RlX2lkGAMgASgJSACIAQESDQoFbGltaXQYCiABKAUSDgoGb2Zmc2V0GAsgASgFQhEKD19wYXJlbnRfbm90ZV9pZCJEChFMaXN0Tm90ZXNSZXNwb25zZRIgCgVub3RlcxgBIAMoCzIRLnNldHRpbmdzLnYxLk5vdGUSDQoFdG90YWwYAiABKAUihAEKEVVwZGF0ZU5vdGVSZXF1ZXN0EgoKAmlkGAEgASgJEi0KB2NvbnRlbnQYAiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SACIAQESGAoLaXNfcmVzb2x2ZWQYAyABKAhIAYgBAUIKCghfY29udGVudEIOCgxfaXNfcmVzb2x2ZWQiNQoSVXBkYXRlTm90ZVJlc3BvbnNlEh8KBG5vdGUYASABKAsyES5zZXR0aW5ncy52MS5Ob3RlIh8KEURlbGV0ZU5vdGVSZXF1ZXN0EgoKAmlkGAEgASgJIiUKEkRlbGV0ZU5vdGVSZXNwb25zZRIPCgdzdWNjZXNzGAEgASgIIqwFCgtOb3RlTWVudGlvbhIKCgJpZBgBIAEoCRIPCgdub3RlX2lkGAIgASgJEhkKEW1lbnRpb25lZF91c2VyX2lkGAMgASgJEg4KBnN0YXR1cxgEIAEoCRIwCgdzZWVuX2F0GAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgAiAEBEjgKD2Fja25vd2xlZGdlZF9hdBgGIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAYgBARI1Cgxjb21wbGV0ZWRfYXQYByABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAKIAQESGwoOY29tcGxldGVkX25vdGUYCCABKAlIA4gBARI1CgxkaXNtaXNzZWRfYXQYCSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSASIAQESGwoOZGlzbWlzc19yZWFzb24YCiABKAlIBYgBARIxCghkdWVfZGF0ZRgLIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIBogBARIRCgl0ZW5hbnRfaWQYFCABKAkSFwoKcHJvamVjdF9pZBgVIAEoCUgHiAEBEi4KCmNyZWF0ZWRfYXQYMiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi4KCnVwZGF0ZWRfYXQYMyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQgoKCF9zZWVuX2F0QhIKEF9hY2tub3dsZWRnZWRfYXRCDwoNX2NvbXBsZXRlZF9hdEIRCg9fY29tcGxldGVkX25vdGVCDwoNX2Rpc21pc3NlZF9hdEIRCg9fZGlzbWlzc19yZWFzb25CCwoJX2R1ZV9kYXRlQg0KC19wcm9qZWN0X2lkItoBChJNZW50aW9uV2l0aENvbnRleHQSKQoHbWVudGlvbhgBIAEoCzIYLnNldHRpbmdzLnYxLk5vdGVNZW50aW9uEh8KBG5vdGUYAiABKAsyES5zZXR0aW5ncy52MS5Ob3RlEhgKC2F1dGhvcl9uYW1lGAMgASgJSACIAQESGAoLZW50aXR5X3R5cGUYBCABKAlIAYgBARIWCgllbnRpdHlfaWQYBSABKAlIAogBAUIOCgxfYXV0aG9yX25hbWVCDgoMX2VudGl0eV90eXBlQgwKCl9lbnRpdHlfaWQiTwoNTWVudGlvbkNvdW50cxIPCgdwZW5kaW5nGAEgASgFEhAKCHBhc3RfZHVlGAIgASgFEhsKE2NvbXBsZXRlZF90aGlzX3dlZWsYAyABKAUicAoVTGlzdE15TWVudGlvbnNSZXF1ZXN0Eg4KBnN0YXR1cxgBIAMoCRIYCgtlbnRpdHlfdHlwZRgCIAEoCUgAiAEBEg0KBWxpbWl0GAogASgFEg4KBm9mZnNldBgLIAEoBUIOCgxfZW50aXR5X3R5cGUigwEKFkxpc3RNeU1lbnRpb25zUmVzcG9uc2USLgoFaXRlbXMYASADKAsyHy5zZXR0aW5ncy52MS5NZW50aW9uV2l0aENvbnRleHQSDQoFdG90YWwYAiABKAUSKgoGY291bnRzGAMgASgLMhouc2V0dGluZ3MudjEuTWVudGlvbkNvdW50cyKgAQoaVXBkYXRlTWVudGlvblN0YXR1c1JlcXVlc3QSEgoKbWVudGlvbl9pZBgBIAEoCRIOCgZzdGF0dXMYAiABKAkSGwoOY29tcGxldGVkX25vdGUYAyABKAlIAIgBARIbCg5kaXNtaXNzX3JlYXNvbhgEIAEoCUgBiAEBQhEKD19jb21wbGV0ZWRfbm90ZUIRCg9fZGlzbWlzc19yZWFzb24iSAobVXBkYXRlTWVudGlvblN0YXR1c1Jlc3BvbnNlEikKB21lbnRpb24YASABKAsyGC5zZXR0aW5ncy52MS5Ob3RlTWVudGlvbiLaAQoSQ3JlYXRlU2hhcmVSZXF1ZXN0EjUKDXJlc291cmNlX3R5cGUYASABKA4yHi5zZXR0aW5ncy52MS5TaGFyZVJlc291cmNlVHlwZRIWCglyZWNvcmRfaWQYAiABKAlIAIgBARIUCgdmaWxlX2lkGAMgASgJSAGIAQESEwoLY3VzdG9tZXJfaWQYBCABKAkSMAoKcGVybWlzc2lvbhgFIAEoDjIcLnNldHRpbmdzLnYxLlNoYXJlUGVybWlzc2lvbkIMCgpfcmVjb3JkX2lkQgoKCF9maWxlX2lkIjgKE0NyZWF0ZVNoYXJlUmVzcG9uc2USIQoFc2hhcmUYASABKAsyEi5zZXR0aW5ncy52MS5TaGFyZSIdCg9HZXRTaGFyZVJlcXVlc3QSCgoCaWQYASABKAkiNQoQR2V0U2hhcmVSZXNwb25zZRIhCgVzaGFyZRgBIAEoCzISLnNldHRpbmdzLnYxLlNoYXJlIsgBChFMaXN0U2hhcmVzUmVxdWVzdBI6Cg1yZXNvdXJjZV90eXBlGAEgASgOMh4uc2V0dGluZ3MudjEuU2hhcmVSZXNvdXJjZVR5cGVIAIgBARIWCglyZWNvcmRfaWQYAiABKAlIAYgBARIUCgdmaWxlX2lkGAMgASgJSAKIAQESDQoFbGltaXQYCiABKAUSDgoGb2Zmc2V0GAsgASgFQhAKDl9yZXNvdXJjZV90eXBlQgwKCl9yZWNvcmRfaWRCCgoIX2ZpbGVfaWQiRwoSTGlzdFNoYXJlc1Jlc3BvbnNlEiIKBnNoYXJlcxgBIAMoCzISLnNldHRpbmdzLnYxLlNoYXJlEg0KBXRvdGFsGAIgASgFIqABChJVcGRhdGVTaGFyZVJlcXVlc3QSCgoCaWQYASABKAkSNQoKcGVybWlzc2lvbhgCIAEoDjIcLnNldHRpbmdzLnYxLlNoYXJlUGVybWlzc2lvbkgAiAEBEi0KBnN0YXR1cxgDIAEoDjIYLnNldHRpbmdzLnYxLlNoYXJlU3RhdHVzSAGIAQFCDQoLX3Blcm1pc3Npb25CCQoHX3N0YXR1cyI4ChNVcGRhdGVTaGFyZVJlc3BvbnNlEiEKBXNoYXJlGAEgASgLMhIuc2V0dGluZ3MudjEuU2hhcmUiIAoSUmV2b2tlU2hhcmVSZXF1ZXN0EgoKAmlkGAEgASgJIiYKE1Jldm9rZVNoYXJlUmVzcG9uc2USDwoHc3VjY2VzcxgBIAEoCCIgChJBY2NlcHRTaGFyZVJlcXVlc3QSCgoCaWQYASABKAkiOAoTQWNjZXB0U2hhcmVSZXNwb25zZRIhCgVzaGFyZRgBIAEoCzISLnNldHRpbmdzLnYxLlNoYXJlIiEKE0RlY2xpbmVTaGFyZVJlcXVlc3QSCgoCaWQYASABKAkiOQoURGVjbGluZVNoYXJlUmVzcG9uc2USIQoFc2hhcmUYASABKAsyEi5zZXR0aW5ncy52MS5TaGFyZSK/AwoGTG9jYWxlEgoKAmlkGAEgASgJEg4KBmxvY2FsZRgCIAEoCRIUCgxkaXNwbGF5X25hbWUYAyABKAkSGAoLbmF0aXZlX25hbWUYBCABKAlIAIgBARISCgppc19kZWZhdWx0GAUgASgIEhEKCWlzX2FjdGl2ZRgGIAEoCBIOCgZpc19ydGwYByABKAgSHAoPZmFsbGJhY2tfbG9jYWxlGAggASgJSAGIAQESGQoRZmFsbGJhY2tfcHJpb3JpdHkYCSABKAUSEQoJdGVuYW50X2lkGBQgASgJEhIKCnByb2plY3RfaWQYFSABKAkSFwoKY3JlYXRlZF9ieRgeIAEoCUgCiAEBEhcKCnVwZGF0ZWRfYnkYHyABKAlIA4gBARIuCgpjcmVhdGVkX2F0GDIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GDMgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEIOCgxfbmF0aXZlX25hbWVCEgoQX2ZhbGxiYWNrX2xvY2FsZUINCgtfY3JlYXRlZF9ieUINCgtfdXBkYXRlZF9ieSJnChJMaXN0TG9jYWxlc1JlcXVlc3QSHQoQaW5jbHVkZV9pbmFjdGl2ZRgBIAEoCEgAiAEBEg0KBWxpbWl0GAogASgFEg4KBm9mZnNldBgLIAEoBUITChFfaW5jbHVkZV9pbmFjdGl2ZSJKChNMaXN0TG9jYWxlc1Jlc3BvbnNlEiQKB2xvY2FsZXMYASADKAsyEy5zZXR0aW5ncy52MS5Mb2NhbGUSDQoFdG90YWwYAiABKAUiHgoQR2V0TG9jYWxlUmVxdWVzdBIKCgJpZBgBIAEoCSI4ChFHZXRMb2NhbGVSZXNwb25zZRIjCgZsb2NhbGUYASABKAsyEy5zZXR0aW5ncy52MS5Mb2NhbGUi3wEKE0NyZWF0ZUxvY2FsZVJlcXVlc3QSDgoGbG9jYWxlGAEgASgJEhQKDGRpc3BsYXlfbmFtZRgCIAEoCRIYCgtuYXRpdmVfbmFtZRgDIAEoCUgAiAEBEhcKCmlzX2RlZmF1bHQYBCABKAhIAYgBARITCgZpc19ydGwYBSABKAhIAogBARIcCg9mYWxsYmFja19sb2NhbGUYBiABKAlIA4gBAUIOCgxfbmF0aXZlX25hbWVCDQoLX2lzX2RlZmF1bHRCCQoHX2lzX3J0bEISChBfZmFsbGJhY2tfbG9jYWxlIjsKFENyZWF0ZUxvY2FsZVJlc3BvbnNlEiMKBmxvY2FsZRgBIAEoCzITLnNldHRpbmdzLnYxLkxvY2FsZSKXAgoTVXBkYXRlTG9jYWxlUmVxdWVzdBIKCgJpZBgBIAEoCRIZCgxkaXNwbGF5X25hbWUYAiABKAlIAIgBARIYCgtuYXRpdmVfbmFtZRgDIAEoCUgBiAEBEhcKCmlzX2RlZmF1bHQYBCABKAhIAogBARIWCglpc19hY3RpdmUYBSABKAhIA4gBARITCgZpc19ydGwYBiABKAhIBIgBARIcCg9mYWxsYmFja19sb2NhbGUYByABKAlIBYgBAUIPCg1fZGlzcGxheV9uYW1lQg4KDF9uYXRpdmVfbmFtZUINCgtfaXNfZGVmYXVsdEIMCgpfaXNfYWN0aXZlQgkKB19pc19ydGxCEgoQX2ZhbGxiYWNrX2xvY2FsZSI7ChRVcGRhdGVMb2NhbGVSZXNwb25zZRIjCgZsb2NhbGUYASABKAsyEy5zZXR0aW5ncy52MS5Mb2NhbGUiIQoTRGVsZXRlTG9jYWxlUmVxdWVzdBIKCgJpZBgBIAEoCSInChREZWxldGVMb2NhbGVSZXNwb25zZRIPCgdzdWNjZXNzGAEgASgIIpQBCg5OYXZQcmVmZXJlbmNlcxIZChFmYXZvcml0ZV9wcm9qZWN0cxgBIAMoCRIaChJmYXZvcml0ZV9uYXZfaXRlbXMYAiADKAkSGgoSY29sbGFwc2VkX3NlY3Rpb25zGAMgAygJEi8KDm5hdl9pdGVtX29yZGVyGAQgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdCIaChhHZXROYXZQcmVmZXJlbmNlc1JlcXVlc3QiTQoZR2V0TmF2UHJlZmVyZW5jZXNSZXNwb25zZRIwCgtwcmVmZXJlbmNlcxgBIAEoCzIbLnNldHRpbmdzLnYxLk5hdlByZWZlcmVuY2VzIvwBChtVcGRhdGVOYXZQcmVmZXJlbmNlc1JlcXVlc3QSNQoLcHJlZmVyZW5jZXMYASABKAsyGy5zZXR0aW5ncy52MS5OYXZQcmVmZXJlbmNlc0gAiAEBEh4KEXRvZ2dsZV9wcm9qZWN0X2lkGAIgASgJSAGIAQESHAoPdG9nZ2xlX25hdl9pdGVtGAMgASgJSAKIAQESGwoOdG9nZ2xlX3NlY3Rpb24YBCABKAlIA4gBAUIOCgxfcHJlZmVyZW5jZXNCFAoSX3RvZ2dsZV9wcm9qZWN0X2lkQhIKEF90b2dnbGVfbmF2X2l0ZW1CEQoPX3RvZ2dsZV9zZWN0aW9uIlAKHFVwZGF0ZU5hdlByZWZlcmVuY2VzUmVzcG9uc2USMAoLcHJlZmVyZW5jZXMYASABKAsyGy5zZXR0aW5ncy52MS5OYXZQcmVmZXJlbmNlcyJeChJSZWNlbnRseU9wZW5lZEl0ZW0SDAoEdHlwZRgBIAEoCRIKCgJpZBgCIAEoCRINCgVsYWJlbBgDIAEoCRIMCgRwYXRoGAQgASgJEhEKCXRpbWVzdGFtcBgFIAEoAyIqChlMaXN0UmVjZW50bHlPcGVuZWRSZXF1ZXN0Eg0KBWxpbWl0GAEgASgFIkwKGkxpc3RSZWNlbnRseU9wZW5lZFJlc3BvbnNlEi4KBWl0ZW1zGAEgAygLMh8uc2V0dGluZ3MudjEuUmVjZW50bHlPcGVuZWRJdGVtIlMKGlRyYWNrUmVjZW50bHlPcGVuZWRSZXF1ZXN0EgwKBHR5cGUYASABKAkSCgoCaWQYAiABKAkSDQoFbGFiZWwYAyABKAkSDAoEcGF0aBgEIAEoCSIuChtUcmFja1JlY2VudGx5T3BlbmVkUmVzcG9uc2USDwoHc3VjY2VzcxgBIAEoCCI3ChtSZW1vdmVSZWNlbnRseU9wZW5lZFJlcXVlc3QSDAoEdHlwZRgBIAEoCRIKCgJpZBgCIAEoCSIvChxSZW1vdmVSZWNlbnRseU9wZW5lZFJlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgiHAoaQ2xlYXJSZWNlbnRseU9wZW5lZFJlcXVlc3QiLgobQ2xlYXJSZWNlbnRseU9wZW5lZFJlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgimwQKEENvbnRleHREaW1lbnNpb24SCgoCaWQYASABKAkSCwoDa2V5GAIgASgJEgwKBG5hbWUYAyABKAkSGAoLZGVzY3JpcHRpb24YBCABKAlIAIgBARITCgtzb3VyY2VfdHlwZRgFIAEoCRIYChBzb3VyY2VfbW9kZWxfa2V5GAYgASgJEh8KEmRlZmF1bHRfcmVjb3JkX2tleRgHIAEoCUgBiAEBEhEKCWlzX3N5c3RlbRgIIAEoCBIXCg9idWlsdF9pbl92YWx1ZXMYCSADKAkSEQoJZGF0YV90eXBlGAogASgJEhAKCGNhdGVnb3J5GAsgASgJEhMKC2lzX3JlcXVpcmVkGAwgASgIEhIKCnNvcnRfb3JkZXIYDSABKAUSEQoJdGVuYW50X2lkGBQgASgJEhIKCnByb2plY3RfaWQYFSABKAkSFwoKY3JlYXRlZF9ieRgeIAEoCUgCiAEBEhcKCnVwZGF0ZWRfYnkYHyABKAlIA4gBARIuCgpjcmVhdGVkX2F0GDIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GDMgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEIOCgxfZGVzY3JpcHRpb25CFQoTX2RlZmF1bHRfcmVjb3JkX2tleUINCgtfY3JlYXRlZF9ieUINCgtfdXBkYXRlZF9ieSIzChVDb250ZXh0RGltZW5zaW9uVmFsdWUSCwoDa2V5GAEgASgJEg0KBWxhYmVsGAIgASgJIl0KHExpc3RDb250ZXh0RGltZW5zaW9uc1JlcXVlc3QSEwoGc2VhcmNoGAEgASgJSACIAQESDQoFbGltaXQYCiABKAUSDgoGb2Zmc2V0GAsgASgFQgkKB19zZWFyY2giYQodTGlzdENvbnRleHREaW1lbnNpb25zUmVzcG9uc2USMQoKZGltZW5zaW9ucxgBIAMoCzIdLnNldHRpbmdzLnYxLkNvbnRleHREaW1lbnNpb24SDQoFdG90YWwYAiABKAUiKAoaR2V0Q29udGV4dERpbWVuc2lvblJlcXVlc3QSCgoCaWQYASABKAkiTwobR2V0Q29udGV4dERpbWVuc2lvblJlc3BvbnNlEjAKCWRpbWVuc2lvbhgBIAEoCzIdLnNldHRpbmdzLnYxLkNvbnRleHREaW1lbnNpb24iywEKHUNyZWF0ZUNvbnRleHREaW1lbnNpb25SZXF1ZXN0EgsKA2tleRgBIAEoCRIMCgRuYW1lGAIgASgJEhgKC2Rlc2NyaXB0aW9uGAMgASgJSACIAQESEwoLc291cmNlX3R5cGUYBCABKAkSGAoQc291cmNlX21vZGVsX2tleRgFIAEoCRIfChJkZWZhdWx0X3JlY29yZF9rZXkYBiABKAlIAYgBAUIOCgxfZGVzY3JpcHRpb25CFQoTX2RlZmF1bHRfcmVjb3JkX2tleSJSCh5DcmVhdGVDb250ZXh0RGltZW5zaW9uUmVzcG9uc2USMAoJZGltZW5zaW9uGAEgASgLMh0uc2V0dGluZ3MudjEuQ29udGV4dERpbWVuc2lvbiLdAQodVXBkYXRlQ29udGV4dERpbWVuc2lvblJlcXVlc3QSCgoCaWQYASABKAkSEQoEbmFtZRgCIAEoCUgAiAEBEhgKC2Rlc2NyaXB0aW9uGAMgASgJSAGIAQESHQoQc291cmNlX21vZGVsX2tleRgEIAEoCUgCiAEBEh8KEmRlZmF1bHRfcmVjb3JkX2tleRgFIAEoCUgDiAEBQgcKBV9uYW1lQg4KDF9kZXNjcmlwdGlvbkITChFfc291cmNlX21vZGVsX2tleUIVChNfZGVmYXVsdF9yZWNvcmRfa2V5IlIKHlVwZGF0ZUNvbnRleHREaW1lbnNpb25SZXNwb25zZRIwCglkaW1lbnNpb24YASABKAsyHS5zZXR0aW5ncy52MS5Db250ZXh0RGltZW5zaW9uIisKHURlbGV0ZUNvbnRleHREaW1lbnNpb25SZXF1ZXN0EgoKAmlkGAEgASgJIjEKHkRlbGV0ZUNvbnRleHREaW1lbnNpb25SZXNwb25zZRIPCgdzdWNjZXNzGAEgASgIIngKIEdldENvbnRleHREaW1lbnNpb25WYWx1ZXNSZXF1ZXN0EhUKDWRpbWVuc2lvbl9rZXkYASABKAkSEwoGc2VhcmNoGAIgASgJSACIAQESDQoFbGltaXQYCiABKAUSDgoGb2Zmc2V0GAsgASgFQgkKB19zZWFyY2giZgohR2V0Q29udGV4dERpbWVuc2lvblZhbHVlc1Jlc3BvbnNlEjIKBnZhbHVlcxgBIAMoCzIiLnNldHRpbmdzLnYxLkNvbnRleHREaW1lbnNpb25WYWx1ZRINCgV0b3RhbBgCIAEoBSLnAQoUQ3VzdG9tZXJQcm9maWxlRmllbGQSCgoCaWQYASABKAkSCwoDa2V5GAIgASgJEgwKBHR5cGUYAyABKAkSDQoFbGFiZWwYBCABKAkSEAoIcmVxdWlyZWQYBSABKAgSFgoJaGVscF90ZXh0GAYgASgJSACIAQESGAoLcGxhY2Vob2xkZXIYByABKAlIAYgBARIsCgZjb25maWcYCCABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SAKIAQFCDAoKX2hlbHBfdGV4dEIOCgxfcGxhY2Vob2xkZXJCCQoHX2NvbmZpZyLeAQoVQ3VzdG9tZXJQcm9maWxlU2NoZW1hEgoKAmlkGAEgASgJEjEKBmZpZWxkcxgCIAMoCzIhLnNldHRpbmdzLnYxLkN1c3RvbWVyUHJvZmlsZUZpZWxkEhUKDXB1YmxpY19maWVsZHMYAyADKAkSDwoHdmVyc2lvbhgEIAEoBRIuCgpjcmVhdGVkX2F0GDIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GDMgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCIhCh9HZXRDdXN0b21lclByb2ZpbGVTY2hlbWFSZXF1ZXN0IlYKIEdldEN1c3RvbWVyUHJvZmlsZVNjaGVtYVJlc3BvbnNlEjIKBnNjaGVtYRgBIAEoCzIiLnNldHRpbmdzLnYxLkN1c3RvbWVyUHJvZmlsZVNjaGVtYSKgBAoTVmFyaWFudENhdGFsb2dFbnRyeRIKCgJpZBgBIAEoCRILCgNrZXkYAiABKAkSDAoEbmFtZRgDIAEoCRIYCgtkZXNjcmlwdGlvbhgEIAEoCUgAiAEBEjwKD3RhcmdldGluZ19ydWxlcxgFIAEoCzIeLmV4cHJlc3Npb25zLnYxLlJ1bGVFeHByZXNzaW9uSAGIAQESEAoIcHJpb3JpdHkYBiABKAUSEgoKaXNfZGVmYXVsdBgHIAEoCBIRCglpc19hY3RpdmUYCCABKAgSGgoNZXhwZXJpbWVudF9pZBgJIAEoCUgCiAEBEhgKC2ZhbGxiYWNrX2lkGAogASgJSAOIAQESEQoJdGVuYW50X2lkGBQgASgJEhIKCnByb2plY3RfaWQYFSABKAkSFwoKY3JlYXRlZF9ieRgeIAEoCUgEiAEBEhcKCnVwZGF0ZWRfYnkYHyABKAlIBYgBARIuCgpjcmVhdGVkX2F0GDIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GDMgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEIOCgxfZGVzY3JpcHRpb25CEgoQX3RhcmdldGluZ19ydWxlc0IQCg5fZXhwZXJpbWVudF9pZEIOCgxfZmFsbGJhY2tfaWRCDQoLX2NyZWF0ZWRfYnlCDQoLX3VwZGF0ZWRfYnkiYAoZTGlzdFZhcmlhbnRDYXRhbG9nUmVxdWVzdBIWCglpc19hY3RpdmUYASABKAhIAIgBARINCgVsaW1pdBgKIAEoBRIOCgZvZmZzZXQYCyABKAVCDAoKX2lzX2FjdGl2ZSJeChpMaXN0VmFyaWFudENhdGFsb2dSZXNwb25zZRIxCgdlbnRyaWVzGAEgAygLMiAuc2V0dGluZ3MudjEuVmFyaWFudENhdGFsb2dFbnRyeRINCgV0b3RhbBgCIAEoBSIrCh1HZXRWYXJpYW50Q2F0YWxvZ0VudHJ5UmVxdWVzdBIKCgJpZBgBIAEoCSJRCh5HZXRWYXJpYW50Q2F0YWxvZ0VudHJ5UmVzcG9uc2USLwoFZW50cnkYASABKAsyIC5zZXR0aW5ncy52MS5WYXJpYW50Q2F0YWxvZ0VudHJ5IqsCCiBDcmVhdGVWYXJpYW50Q2F0YWxvZ0VudHJ5UmVxdWVzdBILCgNrZXkYASABKAkSDAoEbmFtZRgCIAEoCRIYCgtkZXNjcmlwdGlvbhgDIAEoCUgAiAEBEjwKD3RhcmdldGluZ19ydWxlcxgEIAEoCzIeLmV4cHJlc3Npb25zLnYxLlJ1bGVFeHByZXNzaW9uSAGIAQESFQoIcHJpb3JpdHkYBSABKAVIAogBARIXCgppc19kZWZhdWx0GAYgASgISAOIAQESFgoJaXNfYWN0aXZlGAcgASgISASIAQFCDgoMX2Rlc2NyaXB0aW9uQhIKEF90YXJnZXRpbmdfcnVsZXNCCwoJX3ByaW9yaXR5Qg0KC19pc19kZWZhdWx0QgwKCl9pc19hY3RpdmUiVAohQ3JlYXRlVmFyaWFudENhdGFsb2dFbnRyeVJlc3BvbnNlEi8KBWVudHJ5GAEgASgLMiAuc2V0dGluZ3MudjEuVmFyaWFudENhdGFsb2dFbnRyeSK4AgogVXBkYXRlVmFyaWFudENhdGFsb2dFbnRyeVJlcXVlc3QSCgoCaWQYASABKAkSEQoEbmFtZRgCIAEoCUgAiAEBEhgKC2Rlc2NyaXB0aW9uGAMgASgJSAGIAQESPAoPdGFyZ2V0aW5nX3J1bGVzGAQgASgLMh4uZXhwcmVzc2lvbnMudjEuUnVsZUV4cHJlc3Npb25IAogBARIVCghwcmlvcml0eRgFIAEoBUgDiAEBEhcKCmlzX2RlZmF1bHQYBiABKAhIBIgBARIWCglpc19hY3RpdmUYByABKAhIBYgBAUIHCgVfbmFtZUIOCgxfZGVzY3JpcHRpb25CEgoQX3RhcmdldGluZ19ydWxlc0ILCglfcHJpb3JpdHlCDQoLX2lzX2RlZmF1bHRCDAoKX2lzX2FjdGl2ZSJUCiFVcGRhdGVWYXJpYW50Q2F0YWxvZ0VudHJ5UmVzcG9uc2USLwoFZW50cnkYASABKAsyIC5zZXR0aW5ncy52MS5WYXJpYW50Q2F0YWxvZ0VudHJ5Ii4KIERlbGV0ZVZhcmlhbnRDYXRhbG9nRW50cnlSZXF1ZXN0EgoKAmlkGAEgASgJIjQKIURlbGV0ZVZhcmlhbnRDYXRhbG9nRW50cnlSZXNwb25zZRIPCgdzdWNjZXNzGAEgASgIIjAKGUdldEN1c3RvbWVyUHJvZmlsZVJlcXVlc3QSEwoLY3VzdG9tZXJfaWQYASABKAkiQwoaR2V0Q3VzdG9tZXJQcm9maWxlUmVzcG9uc2USJQoEZGF0YRgBIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QiVwoZU2V0Q3VzdG9tZXJQcm9maWxlUmVxdWVzdBITCgtjdXN0b21lcl9pZBgBIAEoCRIlCgRkYXRhGAIgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdCItChpTZXRDdXN0b21lclByb2ZpbGVSZXNwb25zZRIPCgdzdWNjZXNzGAEgASgIIm4KIlVwZGF0ZUN1c3RvbWVyUHJvZmlsZVNjaGVtYVJlcXVlc3QSMQoGZmllbGRzGAEgAygLMiEuc2V0dGluZ3MudjEuQ3VzdG9tZXJQcm9maWxlRmllbGQSFQoNcHVibGljX2ZpZWxkcxgCIAMoCSJZCiNVcGRhdGVDdXN0b21lclByb2ZpbGVTY2hlbWFSZXNwb25zZRIyCgZzY2hlbWEYASABKAsyIi5zZXR0aW5ncy52MS5DdXN0b21lclByb2ZpbGVTY2hlbWEiUwoVQ3VzdG9tZXJQcm9maWxlUmVzdWx0EhMKC2N1c3RvbWVyX2lkGAEgASgJEiUKBGRhdGEYAiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Ik0KHVNlYXJjaEN1c3RvbWVyUHJvZmlsZXNSZXF1ZXN0Eg0KBXF1ZXJ5GAEgASgJEg0KBWxpbWl0GAogASgFEg4KBm9mZnNldBgLIAEoBSJkCh5TZWFyY2hDdXN0b21lclByb2ZpbGVzUmVzcG9uc2USMwoHcmVzdWx0cxgBIAMoCzIiLnNldHRpbmdzLnYxLkN1c3RvbWVyUHJvZmlsZVJlc3VsdBINCgV0b3RhbBgCIAEoBSIzChxEZWxldGVDdXN0b21lclByb2ZpbGVSZXF1ZXN0EhMKC2N1c3RvbWVyX2lkGAEgASgJIjAKHURlbGV0ZUN1c3RvbWVyUHJvZmlsZVJlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgiPQomR2V0Q3VzdG9tZXJSZXNvbHV0aW9uQXR0cmlidXRlc1JlcXVlc3QSEwoLY3VzdG9tZXJfaWQYASABKAkiWQoTUmVzb2x1dGlvbkF0dHJpYnV0ZRILCgNrZXkYASABKAkSNQoGdmFsdWVzGAIgAygLMiUuc2V0dGluZ3MudjEuUmVzb2x1dGlvbkF0dHJpYnV0ZVZhbHVlIoABChhSZXNvbHV0aW9uQXR0cmlidXRlVmFsdWUSDQoFdmFsdWUYASABKAkSDQoFY291bnQYAiABKAUSNQoMbGFzdF9zZWVuX2F0GAMgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgAiAEBQg8KDV9sYXN0X3NlZW5fYXQijAIKJ0dldEN1c3RvbWVyUmVzb2x1dGlvbkF0dHJpYnV0ZXNSZXNwb25zZRIZChF0b3RhbF9yZXNvbHV0aW9ucxgBIAEoBRI0CgphdHRyaWJ1dGVzGAIgAygLMiAuc2V0dGluZ3MudjEuUmVzb2x1dGlvbkF0dHJpYnV0ZRI2Cg1maXJzdF9zZWVuX2F0GAogASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgAiAEBEjUKDGxhc3Rfc2Vlbl9hdBgLIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAYgBAUIQCg5fZmlyc3Rfc2Vlbl9hdEIPCg1fbGFzdF9zZWVuX2F0IiwKF0dldEVkaXRvckNvbmZpZ3NSZXF1ZXN0EhEKCW1vZGVsX2tleRgBIAEoCSLAAgoVRWRpdG9yQ29uZmlnUGxhY2VtZW50EhEKCWNvbmZpZ19pZBgBIAEoCRISCgpjb25maWdfa2V5GAIgASgJEhAKA3VybBgDIAEoCUgAiAEBEhsKDmFsbG93ZWRfb3JpZ2luGAQgASgJSAGIAQESEwoGaGVpZ2h0GAUgASgFSAKIAQESEgoFbGFiZWwYBiABKAlIA4gBARIUCgdhcGlfa2V5GAcgASgJSASIAQESFAoHYXBpX3VybBgIIAEoCUgFiAEBEh4KEWNvbm5lY3Rpb25fZG9tYWluGAkgASgJSAaIAQFCBgoEX3VybEIRCg9fYWxsb3dlZF9vcmlnaW5CCQoHX2hlaWdodEIICgZfbGFiZWxCCgoIX2FwaV9rZXlCCgoIX2FwaV91cmxCFAoSX2Nvbm5lY3Rpb25fZG9tYWluIlIKGEdldEVkaXRvckNvbmZpZ3NSZXNwb25zZRI2CgpwbGFjZW1lbnRzGAEgAygLMiIuc2V0dGluZ3MudjEuRWRpdG9yQ29uZmlnUGxhY2VtZW50IuUDCgtFbWFpbEFjdGlvbhIKCgJpZBgBIAEoCRILCgNrZXkYAiABKAkSDAoEbmFtZRgDIAEoCRIYCgtkZXNjcmlwdGlvbhgEIAEoCUgAiAEBEh8KEnJlc2VuZF90ZW1wbGF0ZV9pZBgFIAEoCUgBiAEBEhkKDGRlZmF1bHRfZnJvbRgGIAEoCUgCiAEBEhwKD2RlZmF1bHRfc3ViamVjdBgHIAEoCUgDiAEBEjEKC2N1c3RvbV9kYXRhGAggASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgEiAEBEhEKCWlzX2FjdGl2ZRgJIAEoCBIRCgl0ZW5hbnRfaWQYFCABKAkSFwoKcHJvamVjdF9pZBgVIAEoCUgFiAEBEi4KCmNyZWF0ZWRfYXQYMiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi4KCnVwZGF0ZWRfYXQYMyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQg4KDF9kZXNjcmlwdGlvbkIVChNfcmVzZW5kX3RlbXBsYXRlX2lkQg8KDV9kZWZhdWx0X2Zyb21CEgoQX2RlZmF1bHRfc3ViamVjdEIOCgxfY3VzdG9tX2RhdGFCDQoLX3Byb2plY3RfaWQiOAoXTGlzdEVtYWlsQWN0aW9uc1JlcXVlc3QSDQoFbGltaXQYCiABKAUSDgoGb2Zmc2V0GAsgASgFIlQKGExpc3RFbWFpbEFjdGlvbnNSZXNwb25zZRIpCgdhY3Rpb25zGAEgAygLMhguc2V0dGluZ3MudjEuRW1haWxBY3Rpb24SDQoFdG90YWwYAiABKAUiJAoVR2V0RW1haWxBY3Rpb25SZXF1ZXN0EgsKA2tleRgBIAEoCSJCChZHZXRFbWFpbEFjdGlvblJlc3BvbnNlEigKBmFjdGlvbhgBIAEoCzIYLnNldHRpbmdzLnYxLkVtYWlsQWN0aW9uIqYCChhVcGRhdGVFbWFpbEFjdGlvblJlcXVlc3QSCwoDa2V5GAEgASgJEh8KEnJlc2VuZF90ZW1wbGF0ZV9pZBgCIAEoCUgAiAEBEhkKDGRlZmF1bHRfZnJvbRgDIAEoCUgBiAEBEhwKD2RlZmF1bHRfc3ViamVjdBgEIAEoCUgCiAEBEjEKC2N1c3RvbV9kYXRhGAUgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgDiAEBEhYKCWlzX2FjdGl2ZRgGIAEoCEgEiAEBQhUKE19yZXNlbmRfdGVtcGxhdGVfaWRCDwoNX2RlZmF1bHRfZnJvbUISChBfZGVmYXVsdF9zdWJqZWN0Qg4KDF9jdXN0b21fZGF0YUIMCgpfaXNfYWN0aXZlIkUKGVVwZGF0ZUVtYWlsQWN0aW9uUmVzcG9uc2USKAoGYWN0aW9uGAEgASgLMhguc2V0dGluZ3MudjEuRW1haWxBY3Rpb24iKgoOUmVzZW5kVGVtcGxhdGUSCgoCaWQYASABKAkSDAoEbmFtZRgCIAEoCSIcChpMaXN0UmVzZW5kVGVtcGxhdGVzUmVxdWVzdCJNChtMaXN0UmVzZW5kVGVtcGxhdGVzUmVzcG9uc2USLgoJdGVtcGxhdGVzGAEgAygLMhsuc2V0dGluZ3MudjEuUmVzZW5kVGVtcGxhdGUiIAoSUmVzb2x2ZU5vdGVSZXF1ZXN0EgoKAmlkGAEgASgJIjYKE1Jlc29sdmVOb3RlUmVzcG9uc2USHwoEbm90ZRgBIAEoCzIRLnNldHRpbmdzLnYxLk5vdGUiIgoUVW5yZXNvbHZlTm90ZVJlcXVlc3QSCgoCaWQYASABKAkiOAoVVW5yZXNvbHZlTm90ZVJlc3BvbnNlEh8KBG5vdGUYASABKAsyES5zZXR0aW5ncy52MS5Ob3RlImwKElNlYXJjaE5vdGVzUmVxdWVzdBINCgVxdWVyeRgBIAEoCRIYCgtlbnRpdHlfdHlwZRgCIAEoCUgAiAEBEg0KBWxpbWl0GAogASgFEg4KBm9mZnNldBgLIAEoBUIOCgxfZW50aXR5X3R5cGUiRgoTU2VhcmNoTm90ZXNSZXNwb25zZRIgCgVub3RlcxgBIAMoCzIRLnNldHRpbmdzLnYxLk5vdGUSDQoFdG90YWwYAiABKAUiGQoXTWFya01lbnRpb25zU2VlblJlcXVlc3QiKQoYTWFya01lbnRpb25zU2VlblJlc3BvbnNlEg0KBWNvdW50GAEgASgFIi4KH0dldENvbnRleHREaW1lbnNpb25CeUtleVJlcXVlc3QSCwoDa2V5GAEgASgJIlQKIEdldENvbnRleHREaW1lbnNpb25CeUtleVJlc3BvbnNlEjAKCWRpbWVuc2lvbhgBIAEoCzIdLnNldHRpbmdzLnYxLkNvbnRleHREaW1lbnNpb24iGQoXR2V0RGVmYXVsdExvY2FsZVJlcXVlc3QiPwoYR2V0RGVmYXVsdExvY2FsZVJlc3BvbnNlEiMKBmxvY2FsZRgBIAEoCzITLnNldHRpbmdzLnYxLkxvY2FsZSImChZHZXRMb2NhbGVCeUNvZGVSZXF1ZXN0EgwKBGNvZGUYASABKAkiPgoXR2V0TG9jYWxlQnlDb2RlUmVzcG9uc2USIwoGbG9jYWxlGAEgASgLMhMuc2V0dGluZ3MudjEuTG9jYWxlIiYKJEdldERlZmF1bHRWYXJpYW50Q2F0YWxvZ0VudHJ5UmVxdWVzdCJYCiVHZXREZWZhdWx0VmFyaWFudENhdGFsb2dFbnRyeVJlc3BvbnNlEi8KBWVudHJ5GAEgASgLMiAuc2V0dGluZ3MudjEuVmFyaWFudENhdGFsb2dFbnRyeSIjChREZWxldGVTZXR0aW5nUmVxdWVzdBILCgNrZXkYASABKAkiKAoVRGVsZXRlU2V0dGluZ1Jlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgiMwofRGVsZXRlU2V0dGluZ3NCeUNhdGVnb3J5UmVxdWVzdBIQCghjYXRlZ29yeRgBIAEoCSIxCiBEZWxldGVTZXR0aW5nc0J5Q2F0ZWdvcnlSZXNwb25zZRINCgVjb3VudBgBIAEoBSJNChZCdWxrU2V0U2V0dGluZ3NSZXF1ZXN0EjMKCHNldHRpbmdzGAEgAygLMiEuc2V0dGluZ3MudjEuVXBkYXRlU2V0dGluZ1JlcXVlc3QiKAoXQnVsa1NldFNldHRpbmdzUmVzcG9uc2USDQoFY291bnQYASABKAUiKQonRW5zdXJlRGVmYXVsdFZhcmlhbnRDYXRhbG9nRW50cnlSZXF1ZXN0IlsKKEVuc3VyZURlZmF1bHRWYXJpYW50Q2F0YWxvZ0VudHJ5UmVzcG9uc2USLwoFZW50cnkYASABKAsyIC5zZXR0aW5ncy52MS5WYXJpYW50Q2F0YWxvZ0VudHJ5IhkKF0dldFByb2plY3RTY2hlbWFSZXF1ZXN0ImUKElByb2plY3RTY2hlbWFNb2RlbBIKCgJpZBgBIAEoCRILCgNrZXkYAiABKAkSDAoEbmFtZRgDIAEoCRITCgtmaWVsZHNfanNvbhgEIAEoCRITCgtjb25maWdfanNvbhgFIAEoCSLCAQodUHJvamVjdFNjaGVtYUNvbnRleHREaW1lbnNpb24SCgoCaWQYASABKAkSCwoDa2V5GAIgASgJEgwKBG5hbWUYAyABKAkSHQoQc291cmNlX21vZGVsX2tleRgEIAEoCUgAiAEBEh8KEmRlZmF1bHRfcmVjb3JkX2tleRgFIAEoCUgBiAEBEg4KBnZhbHVlcxgGIAMoCUITChFfc291cmNlX21vZGVsX2tleUIVChNfZGVmYXVsdF9yZWNvcmRfa2V5Io4BChlQcm9qZWN0U2NoZW1hQXV0aFByb3ZpZGVyEgsKA2tleRgBIAEoCRIMCgRuYW1lGAIgASgJEgwKBHR5cGUYAyABKAkSDwoHZW5hYmxlZBgEIAEoCBIsCgZjb25maWcYBSABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SACIAQFCCQoHX2NvbmZpZyL9AQoWUHJvamVjdFNjaGVtYU9wZXJhdGlvbhILCgNrZXkYASABKAkSDAoEbmFtZRgCIAEoCRIQCghlbmRwb2ludBgDIAEoCRISCgp0aW1lb3V0X21zGAQgASgFEjIKDGlucHV0X3NjaGVtYRgFIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIAIgBARIzCg1vdXRwdXRfc2NoZW1hGAYgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgBiAEBEhYKDnN1cHBvcnRzX2FzeW5jGAcgASgIQg8KDV9pbnB1dF9zY2hlbWFCEAoOX291dHB1dF9zY2hlbWEiRAoUUHJvamVjdFNjaGVtYVNlZ21lbnQSCwoDa2V5GAEgASgJEgwKBG5hbWUYAiABKAkSEQoJaXNfYWN0aXZlGAMgASgIIm8KF1Byb2plY3RTY2hlbWFFeHBlcmltZW50EgsKA2tleRgBIAEoCRIMCgRuYW1lGAIgASgJEg4KBnN0YXR1cxgDIAEoCRIpCgh2YXJpYW50cxgEIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QiWQoaUHJvamVjdFNjaGVtYVByb2ZpbGVTY2hlbWESEwoLZmllbGRzX2pzb24YASABKAkSFQoNcHVibGljX2ZpZWxkcxgCIAMoCRIPCgd2ZXJzaW9uGAMgASgFIs0DChhHZXRQcm9qZWN0U2NoZW1hUmVzcG9uc2USLwoGbW9kZWxzGAEgAygLMh8uc2V0dGluZ3MudjEuUHJvamVjdFNjaGVtYU1vZGVsEj4KCmRpbWVuc2lvbnMYAiADKAsyKi5zZXR0aW5ncy52MS5Qcm9qZWN0U2NoZW1hQ29udGV4dERpbWVuc2lvbhI+Cg5hdXRoX3Byb3ZpZGVycxgDIAMoCzImLnNldHRpbmdzLnYxLlByb2plY3RTY2hlbWFBdXRoUHJvdmlkZXISNwoKb3BlcmF0aW9ucxgEIAMoCzIjLnNldHRpbmdzLnYxLlByb2plY3RTY2hlbWFPcGVyYXRpb24SMwoIc2VnbWVudHMYBSADKAsyIS5zZXR0aW5ncy52MS5Qcm9qZWN0U2NoZW1hU2VnbWVudBI5CgtleHBlcmltZW50cxgGIAMoCzIkLnNldHRpbmdzLnYxLlByb2plY3RTY2hlbWFFeHBlcmltZW50EkQKDnByb2ZpbGVfc2NoZW1hGAcgASgLMicuc2V0dGluZ3MudjEuUHJvamVjdFNjaGVtYVByb2ZpbGVTY2hlbWFIAIgBAUIRCg9fcHJvZmlsZV9zY2hlbWEqdgoRU2hhcmVSZXNvdXJjZVR5cGUSIwofU0hBUkVfUkVTT1VSQ0VfVFlQRV9VTlNQRUNJRklFRBAAEh4KGlNIQVJFX1JFU09VUkNFX1RZUEVfUkVDT1JEEAESHAoYU0hBUkVfUkVTT1VSQ0VfVFlQRV9GSUxFEAIqhQEKD1NoYXJlUGVybWlzc2lvbhIgChxTSEFSRV9QRVJNSVNTSU9OX1VOU1BFQ0lGSUVEEAASGQoVU0hBUkVfUEVSTUlTU0lPTl9WSUVXEAESGQoVU0hBUkVfUEVSTUlTU0lPTl9FRElUEAISGgoWU0hBUkVfUEVSTUlTU0lPTl9BRE1JThADKnsKC1NoYXJlU3RhdHVzEhwKGFNIQVJFX1NUQVRVU19VTlNQRUNJRklFRBAAEhgKFFNIQVJFX1NUQVRVU19QRU5ESU5HEAESGQoVU0hBUkVfU1RBVFVTX0FDQ0VQVEVEEAISGQoVU0hBUkVfU1RBVFVTX0RFQ0xJTkVEEAMyhjIKD1NldHRpbmdzU2VydmljZRJQCgtHZXRTZXR0aW5ncxIfLnNldHRpbmdzLnYxLkdldFNldHRpbmdzUmVxdWVzdBogLnNldHRpbmdzLnYxLkdldFNldHRpbmdzUmVzcG9uc2USVgoNVXBkYXRlU2V0dGluZxIhLnNldHRpbmdzLnYxLlVwZGF0ZVNldHRpbmdSZXF1ZXN0GiIuc2V0dGluZ3MudjEuVXBkYXRlU2V0dGluZ1Jlc3BvbnNlElYKDURlbGV0ZVNldHRpbmcSIS5zZXR0aW5ncy52MS5EZWxldGVTZXR0aW5nUmVxdWVzdBoiLnNldHRpbmdzLnYxLkRlbGV0ZVNldHRpbmdSZXNwb25zZRJ3ChhEZWxldGVTZXR0aW5nc0J5Q2F0ZWdvcnkSLC5zZXR0aW5ncy52MS5EZWxldGVTZXR0aW5nc0J5Q2F0ZWdvcnlSZXF1ZXN0Gi0uc2V0dGluZ3MudjEuRGVsZXRlU2V0dGluZ3NCeUNhdGVnb3J5UmVzcG9uc2USXAoPQnVsa1NldFNldHRpbmdzEiMuc2V0dGluZ3MudjEuQnVsa1NldFNldHRpbmdzUmVxdWVzdBokLnNldHRpbmdzLnYxLkJ1bGtTZXRTZXR0aW5nc1Jlc3BvbnNlElYKDUxpc3RBdWRpdExvZ3MSIS5zZXR0aW5ncy52MS5MaXN0QXVkaXRMb2dzUmVxdWVzdBoiLnNldHRpbmdzLnYxLkxpc3RBdWRpdExvZ3NSZXNwb25zZRJNCgpDcmVhdGVOb3RlEh4uc2V0dGluZ3MudjEuQ3JlYXRlTm90ZVJlcXVlc3QaHy5zZXR0aW5ncy52MS5DcmVhdGVOb3RlUmVzcG9uc2USRAoHR2V0Tm90ZRIbLnNldHRpbmdzLnYxLkdldE5vdGVSZXF1ZXN0Ghwuc2V0dGluZ3MudjEuR2V0Tm90ZVJlc3BvbnNlEkoKCUxpc3ROb3RlcxIdLnNldHRpbmdzLnYxLkxpc3ROb3Rlc1JlcXVlc3QaHi5zZXR0aW5ncy52MS5MaXN0Tm90ZXNSZXNwb25zZRJNCgpVcGRhdGVOb3RlEh4uc2V0dGluZ3MudjEuVXBkYXRlTm90ZVJlcXVlc3QaHy5zZXR0aW5ncy52MS5VcGRhdGVOb3RlUmVzcG9uc2USTQoKRGVsZXRlTm90ZRIeLnNldHRpbmdzLnYxLkRlbGV0ZU5vdGVSZXF1ZXN0Gh8uc2V0dGluZ3MudjEuRGVsZXRlTm90ZVJlc3BvbnNlElAKC1Jlc29sdmVOb3RlEh8uc2V0dGluZ3MudjEuUmVzb2x2ZU5vdGVSZXF1ZXN0GiAuc2V0dGluZ3MudjEuUmVzb2x2ZU5vdGVSZXNwb25zZRJWCg1VbnJlc29sdmVOb3RlEiEuc2V0dGluZ3MudjEuVW5yZXNvbHZlTm90ZVJlcXVlc3QaIi5zZXR0aW5ncy52MS5VbnJlc29sdmVOb3RlUmVzcG9uc2USUAoLU2VhcmNoTm90ZXMSHy5zZXR0aW5ncy52MS5TZWFyY2hOb3Rlc1JlcXVlc3QaIC5zZXR0aW5ncy52MS5TZWFyY2hOb3Rlc1Jlc3BvbnNlElkKDkxpc3RNeU1lbnRpb25zEiIuc2V0dGluZ3MudjEuTGlzdE15TWVudGlvbnNSZXF1ZXN0GiMuc2V0dGluZ3MudjEuTGlzdE15TWVudGlvbnNSZXNwb25zZRJoChNVcGRhdGVNZW50aW9uU3RhdHVzEicuc2V0dGluZ3MudjEuVXBkYXRlTWVudGlvblN0YXR1c1JlcXVlc3QaKC5zZXR0aW5ncy52MS5VcGRhdGVNZW50aW9uU3RhdHVzUmVzcG9uc2USXwoQTWFya01lbnRpb25zU2VlbhIkLnNldHRpbmdzLnYxLk1hcmtNZW50aW9uc1NlZW5SZXF1ZXN0GiUuc2V0dGluZ3MudjEuTWFya01lbnRpb25zU2VlblJlc3BvbnNlElAKC0xpc3RMb2NhbGVzEh8uc2V0dGluZ3MudjEuTGlzdExvY2FsZXNSZXF1ZXN0GiAuc2V0dGluZ3MudjEuTGlzdExvY2FsZXNSZXNwb25zZRJKCglHZXRMb2NhbGUSHS5zZXR0aW5ncy52MS5HZXRMb2NhbGVSZXF1ZXN0Gh4uc2V0dGluZ3MudjEuR2V0TG9jYWxlUmVzcG9uc2USXwoQR2V0RGVmYXVsdExvY2FsZRIkLnNldHRpbmdzLnYxLkdldERlZmF1bHRMb2NhbGVSZXF1ZXN0GiUuc2V0dGluZ3MudjEuR2V0RGVmYXVsdExvY2FsZVJlc3BvbnNlElwKD0dldExvY2FsZUJ5Q29kZRIjLnNldHRpbmdzLnYxLkdldExvY2FsZUJ5Q29kZVJlcXVlc3QaJC5zZXR0aW5ncy52MS5HZXRMb2NhbGVCeUNvZGVSZXNwb25zZRJTCgxDcmVhdGVMb2NhbGUSIC5zZXR0aW5ncy52MS5DcmVhdGVMb2NhbGVSZXF1ZXN0GiEuc2V0dGluZ3MudjEuQ3JlYXRlTG9jYWxlUmVzcG9uc2USUwoMVXBkYXRlTG9jYWxlEiAuc2V0dGluZ3MudjEuVXBkYXRlTG9jYWxlUmVxdWVzdBohLnNldHRpbmdzLnYxLlVwZGF0ZUxvY2FsZVJlc3BvbnNlElMKDERlbGV0ZUxvY2FsZRIgLnNldHRpbmdzLnYxLkRlbGV0ZUxvY2FsZVJlcXVlc3QaIS5zZXR0aW5ncy52MS5EZWxldGVMb2NhbGVSZXNwb25zZRJiChFHZXROYXZQcmVmZXJlbmNlcxIlLnNldHRpbmdzLnYxLkdldE5hdlByZWZlcmVuY2VzUmVxdWVzdBomLnNldHRpbmdzLnYxLkdldE5hdlByZWZlcmVuY2VzUmVzcG9uc2USawoUVXBkYXRlTmF2UHJlZmVyZW5jZXMSKC5zZXR0aW5ncy52MS5VcGRhdGVOYXZQcmVmZXJlbmNlc1JlcXVlc3QaKS5zZXR0aW5ncy52MS5VcGRhdGVOYXZQcmVmZXJlbmNlc1Jlc3BvbnNlEmUKEkxpc3RSZWNlbnRseU9wZW5lZBImLnNldHRpbmdzLnYxLkxpc3RSZWNlbnRseU9wZW5lZFJlcXVlc3QaJy5zZXR0aW5ncy52MS5MaXN0UmVjZW50bHlPcGVuZWRSZXNwb25zZRJoChNUcmFja1JlY2VudGx5T3BlbmVkEicuc2V0dGluZ3MudjEuVHJhY2tSZWNlbnRseU9wZW5lZFJlcXVlc3QaKC5zZXR0aW5ncy52MS5UcmFja1JlY2VudGx5T3BlbmVkUmVzcG9uc2USawoUUmVtb3ZlUmVjZW50bHlPcGVuZWQSKC5zZXR0aW5ncy52MS5SZW1vdmVSZWNlbnRseU9wZW5lZFJlcXVlc3QaKS5zZXR0aW5ncy52MS5SZW1vdmVSZWNlbnRseU9wZW5lZFJlc3BvbnNlEmgKE0NsZWFyUmVjZW50bHlPcGVuZWQSJy5zZXR0aW5ncy52MS5DbGVhclJlY2VudGx5T3BlbmVkUmVxdWVzdBooLnNldHRpbmdzLnYxLkNsZWFyUmVjZW50bHlPcGVuZWRSZXNwb25zZRJQCgtDcmVhdGVTaGFyZRIfLnNldHRpbmdzLnYxLkNyZWF0ZVNoYXJlUmVxdWVzdBogLnNldHRpbmdzLnYxLkNyZWF0ZVNoYXJlUmVzcG9uc2USRwoIR2V0U2hhcmUSHC5zZXR0aW5ncy52MS5HZXRTaGFyZVJlcXVlc3QaHS5zZXR0aW5ncy52MS5HZXRTaGFyZVJlc3BvbnNlEk0KCkxpc3RTaGFyZXMSHi5zZXR0aW5ncy52MS5MaXN0U2hhcmVzUmVxdWVzdBofLnNldHRpbmdzLnYxLkxpc3RTaGFyZXNSZXNwb25zZRJQCgtVcGRhdGVTaGFyZRIfLnNldHRpbmdzLnYxLlVwZGF0ZVNoYXJlUmVxdWVzdBogLnNldHRpbmdzLnYxLlVwZGF0ZVNoYXJlUmVzcG9uc2USUAoLUmV2b2tlU2hhcmUSHy5zZXR0aW5ncy52MS5SZXZva2VTaGFyZVJlcXVlc3QaIC5zZXR0aW5ncy52MS5SZXZva2VTaGFyZVJlc3BvbnNlElAKC0FjY2VwdFNoYXJlEh8uc2V0dGluZ3MudjEuQWNjZXB0U2hhcmVSZXF1ZXN0GiAuc2V0dGluZ3MudjEuQWNjZXB0U2hhcmVSZXNwb25zZRJTCgxEZWNsaW5lU2hhcmUSIC5zZXR0aW5ncy52MS5EZWNsaW5lU2hhcmVSZXF1ZXN0GiEuc2V0dGluZ3MudjEuRGVjbGluZVNoYXJlUmVzcG9uc2USbgoVTGlzdENvbnRleHREaW1lbnNpb25zEikuc2V0dGluZ3MudjEuTGlzdENvbnRleHREaW1lbnNpb25zUmVxdWVzdBoqLnNldHRpbmdzLnYxLkxpc3RDb250ZXh0RGltZW5zaW9uc1Jlc3BvbnNlEmgKE0dldENvbnRleHREaW1lbnNpb24SJy5zZXR0aW5ncy52MS5HZXRDb250ZXh0RGltZW5zaW9uUmVxdWVzdBooLnNldHRpbmdzLnYxLkdldENvbnRleHREaW1lbnNpb25SZXNwb25zZRJ3ChhHZXRDb250ZXh0RGltZW5zaW9uQnlLZXkSLC5zZXR0aW5ncy52MS5HZXRDb250ZXh0RGltZW5zaW9uQnlLZXlSZXF1ZXN0Gi0uc2V0dGluZ3MudjEuR2V0Q29udGV4dERpbWVuc2lvbkJ5S2V5UmVzcG9uc2UScQoWQ3JlYXRlQ29udGV4dERpbWVuc2lvbhIqLnNldHRpbmdzLnYxLkNyZWF0ZUNvbnRleHREaW1lbnNpb25SZXF1ZXN0Gisuc2V0dGluZ3MudjEuQ3JlYXRlQ29udGV4dERpbWVuc2lvblJlc3BvbnNlEnEKFlVwZGF0ZUNvbnRleHREaW1lbnNpb24SKi5zZXR0aW5ncy52MS5VcGRhdGVDb250ZXh0RGltZW5zaW9uUmVxdWVzdBorLnNldHRpbmdzLnYxLlVwZGF0ZUNvbnRleHREaW1lbnNpb25SZXNwb25zZRJxChZEZWxldGVDb250ZXh0RGltZW5zaW9uEiouc2V0dGluZ3MudjEuRGVsZXRlQ29udGV4dERpbWVuc2lvblJlcXVlc3QaKy5zZXR0aW5ncy52MS5EZWxldGVDb250ZXh0RGltZW5zaW9uUmVzcG9uc2USegoZR2V0Q29udGV4dERpbWVuc2lvblZhbHVlcxItLnNldHRpbmdzLnYxLkdldENvbnRleHREaW1lbnNpb25WYWx1ZXNSZXF1ZXN0Gi4uc2V0dGluZ3MudjEuR2V0Q29udGV4dERpbWVuc2lvblZhbHVlc1Jlc3BvbnNlEncKGEdldEN1c3RvbWVyUHJvZmlsZVNjaGVtYRIsLnNldHRpbmdzLnYxLkdldEN1c3RvbWVyUHJvZmlsZVNjaGVtYVJlcXVlc3QaLS5zZXR0aW5ncy52MS5HZXRDdXN0b21lclByb2ZpbGVTY2hlbWFSZXNwb25zZRJlChJHZXRDdXN0b21lclByb2ZpbGUSJi5zZXR0aW5ncy52MS5HZXRDdXN0b21lclByb2ZpbGVSZXF1ZXN0Gicuc2V0dGluZ3MudjEuR2V0Q3VzdG9tZXJQcm9maWxlUmVzcG9uc2USZQoSU2V0Q3VzdG9tZXJQcm9maWxlEiYuc2V0dGluZ3MudjEuU2V0Q3VzdG9tZXJQcm9maWxlUmVxdWVzdBonLnNldHRpbmdzLnYxLlNldEN1c3RvbWVyUHJvZmlsZVJlc3BvbnNlEoABChtVcGRhdGVDdXN0b21lclByb2ZpbGVTY2hlbWESLy5zZXR0aW5ncy52MS5VcGRhdGVDdXN0b21lclByb2ZpbGVTY2hlbWFSZXF1ZXN0GjAuc2V0dGluZ3MudjEuVXBkYXRlQ3VzdG9tZXJQcm9maWxlU2NoZW1hUmVzcG9uc2UScQoWU2VhcmNoQ3VzdG9tZXJQcm9maWxlcxIqLnNldHRpbmdzLnYxLlNlYXJjaEN1c3RvbWVyUHJvZmlsZXNSZXF1ZXN0Gisuc2V0dGluZ3MudjEuU2VhcmNoQ3VzdG9tZXJQcm9maWxlc1Jlc3BvbnNlEm4KFURlbGV0ZUN1c3RvbWVyUHJvZmlsZRIpLnNldHRpbmdzLnYxLkRlbGV0ZUN1c3RvbWVyUHJvZmlsZVJlcXVlc3QaKi5zZXR0aW5ncy52MS5EZWxldGVDdXN0b21lclByb2ZpbGVSZXNwb25zZRKMAQofR2V0Q3VzdG9tZXJSZXNvbHV0aW9uQXR0cmlidXRlcxIzLnNldHRpbmdzLnYxLkdldEN1c3RvbWVyUmVzb2x1dGlvbkF0dHJpYnV0ZXNSZXF1ZXN0GjQuc2V0dGluZ3MudjEuR2V0Q3VzdG9tZXJSZXNvbHV0aW9uQXR0cmlidXRlc1Jlc3BvbnNlEl8KEEdldEVkaXRvckNvbmZpZ3MSJC5zZXR0aW5ncy52MS5HZXRFZGl0b3JDb25maWdzUmVxdWVzdBolLnNldHRpbmdzLnYxLkdldEVkaXRvckNvbmZpZ3NSZXNwb25zZRJlChJMaXN0VmFyaWFudENhdGFsb2cSJi5zZXR0aW5ncy52MS5MaXN0VmFyaWFudENhdGFsb2dSZXF1ZXN0Gicuc2V0dGluZ3MudjEuTGlzdFZhcmlhbnRDYXRhbG9nUmVzcG9uc2UScQoWR2V0VmFyaWFudENhdGFsb2dFbnRyeRIqLnNldHRpbmdzLnYxLkdldFZhcmlhbnRDYXRhbG9nRW50cnlSZXF1ZXN0Gisuc2V0dGluZ3MudjEuR2V0VmFyaWFudENhdGFsb2dFbnRyeVJlc3BvbnNlEnoKGUNyZWF0ZVZhcmlhbnRDYXRhbG9nRW50cnkSLS5zZXR0aW5ncy52MS5DcmVhdGVWYXJpYW50Q2F0YWxvZ0VudHJ5UmVxdWVzdBouLnNldHRpbmdzLnYxLkNyZWF0ZVZhcmlhbnRDYXRhbG9nRW50cnlSZXNwb25zZRJ6ChlVcGRhdGVWYXJpYW50Q2F0YWxvZ0VudHJ5Ei0uc2V0dGluZ3MudjEuVXBkYXRlVmFyaWFudENhdGFsb2dFbnRyeVJlcXVlc3QaLi5zZXR0aW5ncy52MS5VcGRhdGVWYXJpYW50Q2F0YWxvZ0VudHJ5UmVzcG9uc2USegoZRGVsZXRlVmFyaWFudENhdGFsb2dFbnRyeRItLnNldHRpbmdzLnYxLkRlbGV0ZVZhcmlhbnRDYXRhbG9nRW50cnlSZXF1ZXN0Gi4uc2V0dGluZ3MudjEuRGVsZXRlVmFyaWFudENhdGFsb2dFbnRyeVJlc3BvbnNlEoYBCh1HZXREZWZhdWx0VmFyaWFudENhdGFsb2dFbnRyeRIxLnNldHRpbmdzLnYxLkdldERlZmF1bHRWYXJpYW50Q2F0YWxvZ0VudHJ5UmVxdWVzdBoyLnNldHRpbmdzLnYxLkdldERlZmF1bHRWYXJpYW50Q2F0YWxvZ0VudHJ5UmVzcG9uc2USjwEKIEVuc3VyZURlZmF1bHRWYXJpYW50Q2F0YWxvZ0VudHJ5EjQuc2V0dGluZ3MudjEuRW5zdXJlRGVmYXVsdFZhcmlhbnRDYXRhbG9nRW50cnlSZXF1ZXN0GjUuc2V0dGluZ3MudjEuRW5zdXJlRGVmYXVsdFZhcmlhbnRDYXRhbG9nRW50cnlSZXNwb25zZRJfChBMaXN0RW1haWxBY3Rpb25zEiQuc2V0dGluZ3MudjEuTGlzdEVtYWlsQWN0aW9uc1JlcXVlc3QaJS5zZXR0aW5ncy52MS5MaXN0RW1haWxBY3Rpb25zUmVzcG9uc2USWQoOR2V0RW1haWxBY3Rpb24SIi5zZXR0aW5ncy52MS5HZXRFbWFpbEFjdGlvblJlcXVlc3QaIy5zZXR0aW5ncy52MS5HZXRFbWFpbEFjdGlvblJlc3BvbnNlEmIKEVVwZGF0ZUVtYWlsQWN0aW9uEiUuc2V0dGluZ3MudjEuVXBkYXRlRW1haWxBY3Rpb25SZXF1ZXN0GiYuc2V0dGluZ3MudjEuVXBkYXRlRW1haWxBY3Rpb25SZXNwb25zZRJoChNMaXN0UmVzZW5kVGVtcGxhdGVzEicuc2V0dGluZ3MudjEuTGlzdFJlc2VuZFRlbXBsYXRlc1JlcXVlc3QaKC5zZXR0aW5ncy52MS5MaXN0UmVzZW5kVGVtcGxhdGVzUmVzcG9uc2USXwoQR2V0UHJvamVjdFNjaGVtYRIkLnNldHRpbmdzLnYxLkdldFByb2plY3RTY2hlbWFSZXF1ZXN0GiUuc2V0dGluZ3MudjEuR2V0UHJvamVjdFNjaGVtYVJlc3BvbnNlQj1aO2dpdGh1Yi5jb20vZWlkZXN0dWRpby9mb2lyL2dlbi9wcm90by9zZXR0aW5ncy92MTtzZXR0aW5nc3YxYgZwcm90bzM", [file_google_protobuf_struct, file_google_protobuf_timestamp, file_expressions_v1_expressions]);
13
+ fileDesc("ChpzZXR0aW5ncy92MS9zZXR0aW5ncy5wcm90bxILc2V0dGluZ3MudjEiggMKB1NldHRpbmcSCgoCaWQYASABKAkSCwoDa2V5GAIgASgJEhAKCGNhdGVnb3J5GAMgASgJEisKBXZhbHVlGAQgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgAiAEBEhkKDGRpc3BsYXlfbmFtZRgFIAEoCUgBiAEBEhgKC2Rlc2NyaXB0aW9uGAYgASgJSAKIAQESEQoJZGF0YV90eXBlGAcgASgJEhEKCWlzX3B1YmxpYxgIIAEoCBIRCgl0ZW5hbnRfaWQYFCABKAkSFwoKcHJvamVjdF9pZBgVIAEoCUgDiAEBEi4KCmNyZWF0ZWRfYXQYMiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi4KCnVwZGF0ZWRfYXQYMyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQggKBl92YWx1ZUIPCg1fZGlzcGxheV9uYW1lQg4KDF9kZXNjcmlwdGlvbkINCgtfcHJvamVjdF9pZCKrBAoIQXVkaXRMb2cSCgoCaWQYASABKAkSLQoJdGltZXN0YW1wGAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIUCgd1c2VyX2lkGAMgASgJSACIAQESFgoJdGVuYW50X2lkGAQgASgJSAGIAQESFwoKcHJvamVjdF9pZBgFIAEoCUgCiAEBEg4KBmFjdGlvbhgGIAEoCRIVCg1yZXNvdXJjZV90eXBlGAcgASgJEhgKC3Jlc291cmNlX2lkGAggASgJSAOIAQESLAoGYmVmb3JlGAkgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgEiAEBEisKBWFmdGVyGAogASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgFiAEBEi4KCG1ldGFkYXRhGAsgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgGiAEBEhcKCmlwX2FkZHJlc3MYDCABKAlIB4gBARIXCgp1c2VyX2FnZW50GA0gASgJSAiIAQESFwoKcmVxdWVzdF9pZBgOIAEoCUgJiAEBQgoKCF91c2VyX2lkQgwKCl90ZW5hbnRfaWRCDQoLX3Byb2plY3RfaWRCDgoMX3Jlc291cmNlX2lkQgkKB19iZWZvcmVCCAoGX2FmdGVyQgsKCV9tZXRhZGF0YUINCgtfaXBfYWRkcmVzc0INCgtfdXNlcl9hZ2VudEINCgtfcmVxdWVzdF9pZCKdBQoETm90ZRIKCgJpZBgBIAEoCRITCgtlbnRpdHlfdHlwZRgCIAEoCRIRCgllbnRpdHlfaWQYAyABKAkSHwoSZW50aXR5X25hdHVyYWxfa2V5GAQgASgJSACIAQESFwoKdmVyc2lvbl9pZBgFIAEoCUgBiAEBEigKB2NvbnRlbnQYBiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Eh8KEmNvbnRlbnRfcGxhaW5fdGV4dBgHIAEoCUgCiAEBEhsKDnBhcmVudF9ub3RlX2lkGAogASgJSAOIAQESGwoOdGhyZWFkX3Jvb3RfaWQYCyABKAlIBIgBARITCgtpc19yZXNvbHZlZBgPIAEoCBI0CgtyZXNvbHZlZF9hdBgQIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIBYgBARIYCgtyZXNvbHZlZF9ieRgRIAEoCUgGiAEBEi4KCG1ldGFkYXRhGBQgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgHiAEBEhEKCXRlbmFudF9pZBgeIAEoCRIXCgpwcm9qZWN0X2lkGB8gASgJSAiIAQESEgoKY3JlYXRlZF9ieRgoIAEoCRIuCgpjcmVhdGVkX2F0GDIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEIVChNfZW50aXR5X25hdHVyYWxfa2V5Qg0KC192ZXJzaW9uX2lkQhUKE19jb250ZW50X3BsYWluX3RleHRCEQoPX3BhcmVudF9ub3RlX2lkQhEKD190aHJlYWRfcm9vdF9pZEIOCgxfcmVzb2x2ZWRfYXRCDgoMX3Jlc29sdmVkX2J5QgsKCV9tZXRhZGF0YUINCgtfcHJvamVjdF9pZCKqBQoFU2hhcmUSCgoCaWQYASABKAkSNQoNcmVzb3VyY2VfdHlwZRgCIAEoDjIeLnNldHRpbmdzLnYxLlNoYXJlUmVzb3VyY2VUeXBlEhYKCXJlY29yZF9pZBgDIAEoCUgAiAEBEhQKB2ZpbGVfaWQYBCABKAlIAYgBARIWCgltb2RlbF9rZXkYBSABKAlIAogBARIfChdzaGFyZWRfd2l0aF9jdXN0b21lcl9pZBgGIAEoCRIwCgpwZXJtaXNzaW9uGAcgASgOMhwuc2V0dGluZ3MudjEuU2hhcmVQZXJtaXNzaW9uEigKBnN0YXR1cxgKIAEoDjIYLnNldHRpbmdzLnYxLlNoYXJlU3RhdHVzEjQKC2FjY2VwdGVkX2F0GAsgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgDiAEBEjMKCmV4cGlyZXNfYXQYDCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSASIAQESEQoJdGVuYW50X2lkGBQgASgJEhIKCnByb2plY3RfaWQYFSABKAkSFwoKY3JlYXRlZF9ieRgeIAEoCUgFiAEBEhcKCnJldm9rZWRfYnkYHyABKAlIBogBARIzCgpyZXZva2VkX2F0GCAgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgHiAEBEi4KCmNyZWF0ZWRfYXQYMiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQgwKCl9yZWNvcmRfaWRCCgoIX2ZpbGVfaWRCDAoKX21vZGVsX2tleUIOCgxfYWNjZXB0ZWRfYXRCDQoLX2V4cGlyZXNfYXRCDQoLX2NyZWF0ZWRfYnlCDQoLX3Jldm9rZWRfYnlCDQoLX3Jldm9rZWRfYXQiUgoSR2V0U2V0dGluZ3NSZXF1ZXN0EhUKCGNhdGVnb3J5GAEgASgJSACIAQESEAoDa2V5GAIgASgJSAGIAQFCCwoJX2NhdGVnb3J5QgYKBF9rZXkiPQoTR2V0U2V0dGluZ3NSZXNwb25zZRImCghzZXR0aW5ncxgBIAMoCzIULnNldHRpbmdzLnYxLlNldHRpbmciSwoUVXBkYXRlU2V0dGluZ1JlcXVlc3QSCwoDa2V5GAEgASgJEiYKBXZhbHVlGAIgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdCI+ChVVcGRhdGVTZXR0aW5nUmVzcG9uc2USJQoHc2V0dGluZxgBIAEoCzIULnNldHRpbmdzLnYxLlNldHRpbmciuwIKFExpc3RBdWRpdExvZ3NSZXF1ZXN0EhMKBmFjdGlvbhgBIAEoCUgAiAEBEhoKDXJlc291cmNlX3R5cGUYAiABKAlIAYgBARIYCgtyZXNvdXJjZV9pZBgDIAEoCUgCiAEBEhQKB3VzZXJfaWQYBCABKAlIA4gBARItCgRmcm9tGAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgEiAEBEisKAnRvGAYgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgFiAEBEg0KBWxpbWl0GAogASgFEg4KBm9mZnNldBgLIAEoBUIJCgdfYWN0aW9uQhAKDl9yZXNvdXJjZV90eXBlQg4KDF9yZXNvdXJjZV9pZEIKCghfdXNlcl9pZEIHCgVfZnJvbUIFCgNfdG8iSwoVTGlzdEF1ZGl0TG9nc1Jlc3BvbnNlEiMKBGxvZ3MYASADKAsyFS5zZXR0aW5ncy52MS5BdWRpdExvZxINCgV0b3RhbBgCIAEoBSKVAQoRQ3JlYXRlTm90ZVJlcXVlc3QSEwoLZW50aXR5X3R5cGUYASABKAkSEQoJZW50aXR5X2lkGAIgASgJEigKB2NvbnRlbnQYAyABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EhsKDnBhcmVudF9ub3RlX2lkGAQgASgJSACIAQFCEQoPX3BhcmVudF9ub3RlX2lkIjUKEkNyZWF0ZU5vdGVSZXNwb25zZRIfCgRub3RlGAEgASgLMhEuc2V0dGluZ3MudjEuTm90ZSIcCg5HZXROb3RlUmVxdWVzdBIKCgJpZBgBIAEoCSIyCg9HZXROb3RlUmVzcG9uc2USHwoEbm90ZRgBIAEoCzIRLnNldHRpbmdzLnYxLk5vdGUiiQEKEExpc3ROb3Rlc1JlcXVlc3QSEwoLZW50aXR5X3R5cGUYASABKAkSEQoJZW50aXR5X2lkGAIgASgJEhsKDnBhcmVudF9ub3RlX2lkGAMgASgJSACIAQESDQoFbGltaXQYCiABKAUSDgoGb2Zmc2V0GAsgASgFQhEKD19wYXJlbnRfbm90ZV9pZCJEChFMaXN0Tm90ZXNSZXNwb25zZRIgCgVub3RlcxgBIAMoCzIRLnNldHRpbmdzLnYxLk5vdGUSDQoFdG90YWwYAiABKAUihAEKEVVwZGF0ZU5vdGVSZXF1ZXN0EgoKAmlkGAEgASgJEi0KB2NvbnRlbnQYAiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SACIAQESGAoLaXNfcmVzb2x2ZWQYAyABKAhIAYgBAUIKCghfY29udGVudEIOCgxfaXNfcmVzb2x2ZWQiNQoSVXBkYXRlTm90ZVJlc3BvbnNlEh8KBG5vdGUYASABKAsyES5zZXR0aW5ncy52MS5Ob3RlIh8KEURlbGV0ZU5vdGVSZXF1ZXN0EgoKAmlkGAEgASgJIiUKEkRlbGV0ZU5vdGVSZXNwb25zZRIPCgdzdWNjZXNzGAEgASgIIqwFCgtOb3RlTWVudGlvbhIKCgJpZBgBIAEoCRIPCgdub3RlX2lkGAIgASgJEhkKEW1lbnRpb25lZF91c2VyX2lkGAMgASgJEg4KBnN0YXR1cxgEIAEoCRIwCgdzZWVuX2F0GAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgAiAEBEjgKD2Fja25vd2xlZGdlZF9hdBgGIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAYgBARI1Cgxjb21wbGV0ZWRfYXQYByABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAKIAQESGwoOY29tcGxldGVkX25vdGUYCCABKAlIA4gBARI1CgxkaXNtaXNzZWRfYXQYCSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSASIAQESGwoOZGlzbWlzc19yZWFzb24YCiABKAlIBYgBARIxCghkdWVfZGF0ZRgLIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIBogBARIRCgl0ZW5hbnRfaWQYFCABKAkSFwoKcHJvamVjdF9pZBgVIAEoCUgHiAEBEi4KCmNyZWF0ZWRfYXQYMiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi4KCnVwZGF0ZWRfYXQYMyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQgoKCF9zZWVuX2F0QhIKEF9hY2tub3dsZWRnZWRfYXRCDwoNX2NvbXBsZXRlZF9hdEIRCg9fY29tcGxldGVkX25vdGVCDwoNX2Rpc21pc3NlZF9hdEIRCg9fZGlzbWlzc19yZWFzb25CCwoJX2R1ZV9kYXRlQg0KC19wcm9qZWN0X2lkItoBChJNZW50aW9uV2l0aENvbnRleHQSKQoHbWVudGlvbhgBIAEoCzIYLnNldHRpbmdzLnYxLk5vdGVNZW50aW9uEh8KBG5vdGUYAiABKAsyES5zZXR0aW5ncy52MS5Ob3RlEhgKC2F1dGhvcl9uYW1lGAMgASgJSACIAQESGAoLZW50aXR5X3R5cGUYBCABKAlIAYgBARIWCgllbnRpdHlfaWQYBSABKAlIAogBAUIOCgxfYXV0aG9yX25hbWVCDgoMX2VudGl0eV90eXBlQgwKCl9lbnRpdHlfaWQiTwoNTWVudGlvbkNvdW50cxIPCgdwZW5kaW5nGAEgASgFEhAKCHBhc3RfZHVlGAIgASgFEhsKE2NvbXBsZXRlZF90aGlzX3dlZWsYAyABKAUicAoVTGlzdE15TWVudGlvbnNSZXF1ZXN0Eg4KBnN0YXR1cxgBIAMoCRIYCgtlbnRpdHlfdHlwZRgCIAEoCUgAiAEBEg0KBWxpbWl0GAogASgFEg4KBm9mZnNldBgLIAEoBUIOCgxfZW50aXR5X3R5cGUigwEKFkxpc3RNeU1lbnRpb25zUmVzcG9uc2USLgoFaXRlbXMYASADKAsyHy5zZXR0aW5ncy52MS5NZW50aW9uV2l0aENvbnRleHQSDQoFdG90YWwYAiABKAUSKgoGY291bnRzGAMgASgLMhouc2V0dGluZ3MudjEuTWVudGlvbkNvdW50cyKgAQoaVXBkYXRlTWVudGlvblN0YXR1c1JlcXVlc3QSEgoKbWVudGlvbl9pZBgBIAEoCRIOCgZzdGF0dXMYAiABKAkSGwoOY29tcGxldGVkX25vdGUYAyABKAlIAIgBARIbCg5kaXNtaXNzX3JlYXNvbhgEIAEoCUgBiAEBQhEKD19jb21wbGV0ZWRfbm90ZUIRCg9fZGlzbWlzc19yZWFzb24iSAobVXBkYXRlTWVudGlvblN0YXR1c1Jlc3BvbnNlEikKB21lbnRpb24YASABKAsyGC5zZXR0aW5ncy52MS5Ob3RlTWVudGlvbiLaAQoSQ3JlYXRlU2hhcmVSZXF1ZXN0EjUKDXJlc291cmNlX3R5cGUYASABKA4yHi5zZXR0aW5ncy52MS5TaGFyZVJlc291cmNlVHlwZRIWCglyZWNvcmRfaWQYAiABKAlIAIgBARIUCgdmaWxlX2lkGAMgASgJSAGIAQESEwoLY3VzdG9tZXJfaWQYBCABKAkSMAoKcGVybWlzc2lvbhgFIAEoDjIcLnNldHRpbmdzLnYxLlNoYXJlUGVybWlzc2lvbkIMCgpfcmVjb3JkX2lkQgoKCF9maWxlX2lkIjgKE0NyZWF0ZVNoYXJlUmVzcG9uc2USIQoFc2hhcmUYASABKAsyEi5zZXR0aW5ncy52MS5TaGFyZSIdCg9HZXRTaGFyZVJlcXVlc3QSCgoCaWQYASABKAkiNQoQR2V0U2hhcmVSZXNwb25zZRIhCgVzaGFyZRgBIAEoCzISLnNldHRpbmdzLnYxLlNoYXJlIsgBChFMaXN0U2hhcmVzUmVxdWVzdBI6Cg1yZXNvdXJjZV90eXBlGAEgASgOMh4uc2V0dGluZ3MudjEuU2hhcmVSZXNvdXJjZVR5cGVIAIgBARIWCglyZWNvcmRfaWQYAiABKAlIAYgBARIUCgdmaWxlX2lkGAMgASgJSAKIAQESDQoFbGltaXQYCiABKAUSDgoGb2Zmc2V0GAsgASgFQhAKDl9yZXNvdXJjZV90eXBlQgwKCl9yZWNvcmRfaWRCCgoIX2ZpbGVfaWQiRwoSTGlzdFNoYXJlc1Jlc3BvbnNlEiIKBnNoYXJlcxgBIAMoCzISLnNldHRpbmdzLnYxLlNoYXJlEg0KBXRvdGFsGAIgASgFIqABChJVcGRhdGVTaGFyZVJlcXVlc3QSCgoCaWQYASABKAkSNQoKcGVybWlzc2lvbhgCIAEoDjIcLnNldHRpbmdzLnYxLlNoYXJlUGVybWlzc2lvbkgAiAEBEi0KBnN0YXR1cxgDIAEoDjIYLnNldHRpbmdzLnYxLlNoYXJlU3RhdHVzSAGIAQFCDQoLX3Blcm1pc3Npb25CCQoHX3N0YXR1cyI4ChNVcGRhdGVTaGFyZVJlc3BvbnNlEiEKBXNoYXJlGAEgASgLMhIuc2V0dGluZ3MudjEuU2hhcmUiIAoSUmV2b2tlU2hhcmVSZXF1ZXN0EgoKAmlkGAEgASgJIiYKE1Jldm9rZVNoYXJlUmVzcG9uc2USDwoHc3VjY2VzcxgBIAEoCCIgChJBY2NlcHRTaGFyZVJlcXVlc3QSCgoCaWQYASABKAkiOAoTQWNjZXB0U2hhcmVSZXNwb25zZRIhCgVzaGFyZRgBIAEoCzISLnNldHRpbmdzLnYxLlNoYXJlIiEKE0RlY2xpbmVTaGFyZVJlcXVlc3QSCgoCaWQYASABKAkiOQoURGVjbGluZVNoYXJlUmVzcG9uc2USIQoFc2hhcmUYASABKAsyEi5zZXR0aW5ncy52MS5TaGFyZSK/AwoGTG9jYWxlEgoKAmlkGAEgASgJEg4KBmxvY2FsZRgCIAEoCRIUCgxkaXNwbGF5X25hbWUYAyABKAkSGAoLbmF0aXZlX25hbWUYBCABKAlIAIgBARISCgppc19kZWZhdWx0GAUgASgIEhEKCWlzX2FjdGl2ZRgGIAEoCBIOCgZpc19ydGwYByABKAgSHAoPZmFsbGJhY2tfbG9jYWxlGAggASgJSAGIAQESGQoRZmFsbGJhY2tfcHJpb3JpdHkYCSABKAUSEQoJdGVuYW50X2lkGBQgASgJEhIKCnByb2plY3RfaWQYFSABKAkSFwoKY3JlYXRlZF9ieRgeIAEoCUgCiAEBEhcKCnVwZGF0ZWRfYnkYHyABKAlIA4gBARIuCgpjcmVhdGVkX2F0GDIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GDMgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEIOCgxfbmF0aXZlX25hbWVCEgoQX2ZhbGxiYWNrX2xvY2FsZUINCgtfY3JlYXRlZF9ieUINCgtfdXBkYXRlZF9ieSJnChJMaXN0TG9jYWxlc1JlcXVlc3QSHQoQaW5jbHVkZV9pbmFjdGl2ZRgBIAEoCEgAiAEBEg0KBWxpbWl0GAogASgFEg4KBm9mZnNldBgLIAEoBUITChFfaW5jbHVkZV9pbmFjdGl2ZSJKChNMaXN0TG9jYWxlc1Jlc3BvbnNlEiQKB2xvY2FsZXMYASADKAsyEy5zZXR0aW5ncy52MS5Mb2NhbGUSDQoFdG90YWwYAiABKAUiHgoQR2V0TG9jYWxlUmVxdWVzdBIKCgJpZBgBIAEoCSI4ChFHZXRMb2NhbGVSZXNwb25zZRIjCgZsb2NhbGUYASABKAsyEy5zZXR0aW5ncy52MS5Mb2NhbGUi3wEKE0NyZWF0ZUxvY2FsZVJlcXVlc3QSDgoGbG9jYWxlGAEgASgJEhQKDGRpc3BsYXlfbmFtZRgCIAEoCRIYCgtuYXRpdmVfbmFtZRgDIAEoCUgAiAEBEhcKCmlzX2RlZmF1bHQYBCABKAhIAYgBARITCgZpc19ydGwYBSABKAhIAogBARIcCg9mYWxsYmFja19sb2NhbGUYBiABKAlIA4gBAUIOCgxfbmF0aXZlX25hbWVCDQoLX2lzX2RlZmF1bHRCCQoHX2lzX3J0bEISChBfZmFsbGJhY2tfbG9jYWxlIjsKFENyZWF0ZUxvY2FsZVJlc3BvbnNlEiMKBmxvY2FsZRgBIAEoCzITLnNldHRpbmdzLnYxLkxvY2FsZSKXAgoTVXBkYXRlTG9jYWxlUmVxdWVzdBIKCgJpZBgBIAEoCRIZCgxkaXNwbGF5X25hbWUYAiABKAlIAIgBARIYCgtuYXRpdmVfbmFtZRgDIAEoCUgBiAEBEhcKCmlzX2RlZmF1bHQYBCABKAhIAogBARIWCglpc19hY3RpdmUYBSABKAhIA4gBARITCgZpc19ydGwYBiABKAhIBIgBARIcCg9mYWxsYmFja19sb2NhbGUYByABKAlIBYgBAUIPCg1fZGlzcGxheV9uYW1lQg4KDF9uYXRpdmVfbmFtZUINCgtfaXNfZGVmYXVsdEIMCgpfaXNfYWN0aXZlQgkKB19pc19ydGxCEgoQX2ZhbGxiYWNrX2xvY2FsZSI7ChRVcGRhdGVMb2NhbGVSZXNwb25zZRIjCgZsb2NhbGUYASABKAsyEy5zZXR0aW5ncy52MS5Mb2NhbGUiIQoTRGVsZXRlTG9jYWxlUmVxdWVzdBIKCgJpZBgBIAEoCSInChREZWxldGVMb2NhbGVSZXNwb25zZRIPCgdzdWNjZXNzGAEgASgIIpQBCg5OYXZQcmVmZXJlbmNlcxIZChFmYXZvcml0ZV9wcm9qZWN0cxgBIAMoCRIaChJmYXZvcml0ZV9uYXZfaXRlbXMYAiADKAkSGgoSY29sbGFwc2VkX3NlY3Rpb25zGAMgAygJEi8KDm5hdl9pdGVtX29yZGVyGAQgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdCIaChhHZXROYXZQcmVmZXJlbmNlc1JlcXVlc3QiTQoZR2V0TmF2UHJlZmVyZW5jZXNSZXNwb25zZRIwCgtwcmVmZXJlbmNlcxgBIAEoCzIbLnNldHRpbmdzLnYxLk5hdlByZWZlcmVuY2VzIvwBChtVcGRhdGVOYXZQcmVmZXJlbmNlc1JlcXVlc3QSNQoLcHJlZmVyZW5jZXMYASABKAsyGy5zZXR0aW5ncy52MS5OYXZQcmVmZXJlbmNlc0gAiAEBEh4KEXRvZ2dsZV9wcm9qZWN0X2lkGAIgASgJSAGIAQESHAoPdG9nZ2xlX25hdl9pdGVtGAMgASgJSAKIAQESGwoOdG9nZ2xlX3NlY3Rpb24YBCABKAlIA4gBAUIOCgxfcHJlZmVyZW5jZXNCFAoSX3RvZ2dsZV9wcm9qZWN0X2lkQhIKEF90b2dnbGVfbmF2X2l0ZW1CEQoPX3RvZ2dsZV9zZWN0aW9uIlAKHFVwZGF0ZU5hdlByZWZlcmVuY2VzUmVzcG9uc2USMAoLcHJlZmVyZW5jZXMYASABKAsyGy5zZXR0aW5ncy52MS5OYXZQcmVmZXJlbmNlcyJeChJSZWNlbnRseU9wZW5lZEl0ZW0SDAoEdHlwZRgBIAEoCRIKCgJpZBgCIAEoCRINCgVsYWJlbBgDIAEoCRIMCgRwYXRoGAQgASgJEhEKCXRpbWVzdGFtcBgFIAEoAyIqChlMaXN0UmVjZW50bHlPcGVuZWRSZXF1ZXN0Eg0KBWxpbWl0GAEgASgFIkwKGkxpc3RSZWNlbnRseU9wZW5lZFJlc3BvbnNlEi4KBWl0ZW1zGAEgAygLMh8uc2V0dGluZ3MudjEuUmVjZW50bHlPcGVuZWRJdGVtIlMKGlRyYWNrUmVjZW50bHlPcGVuZWRSZXF1ZXN0EgwKBHR5cGUYASABKAkSCgoCaWQYAiABKAkSDQoFbGFiZWwYAyABKAkSDAoEcGF0aBgEIAEoCSIuChtUcmFja1JlY2VudGx5T3BlbmVkUmVzcG9uc2USDwoHc3VjY2VzcxgBIAEoCCI3ChtSZW1vdmVSZWNlbnRseU9wZW5lZFJlcXVlc3QSDAoEdHlwZRgBIAEoCRIKCgJpZBgCIAEoCSIvChxSZW1vdmVSZWNlbnRseU9wZW5lZFJlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgiHAoaQ2xlYXJSZWNlbnRseU9wZW5lZFJlcXVlc3QiLgobQ2xlYXJSZWNlbnRseU9wZW5lZFJlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgimwQKEENvbnRleHREaW1lbnNpb24SCgoCaWQYASABKAkSCwoDa2V5GAIgASgJEgwKBG5hbWUYAyABKAkSGAoLZGVzY3JpcHRpb24YBCABKAlIAIgBARITCgtzb3VyY2VfdHlwZRgFIAEoCRIYChBzb3VyY2VfbW9kZWxfa2V5GAYgASgJEh8KEmRlZmF1bHRfcmVjb3JkX2tleRgHIAEoCUgBiAEBEhEKCWlzX3N5c3RlbRgIIAEoCBIXCg9idWlsdF9pbl92YWx1ZXMYCSADKAkSEQoJZGF0YV90eXBlGAogASgJEhAKCGNhdGVnb3J5GAsgASgJEhMKC2lzX3JlcXVpcmVkGAwgASgIEhIKCnNvcnRfb3JkZXIYDSABKAUSEQoJdGVuYW50X2lkGBQgASgJEhIKCnByb2plY3RfaWQYFSABKAkSFwoKY3JlYXRlZF9ieRgeIAEoCUgCiAEBEhcKCnVwZGF0ZWRfYnkYHyABKAlIA4gBARIuCgpjcmVhdGVkX2F0GDIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GDMgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEIOCgxfZGVzY3JpcHRpb25CFQoTX2RlZmF1bHRfcmVjb3JkX2tleUINCgtfY3JlYXRlZF9ieUINCgtfdXBkYXRlZF9ieSIzChVDb250ZXh0RGltZW5zaW9uVmFsdWUSCwoDa2V5GAEgASgJEg0KBWxhYmVsGAIgASgJIl0KHExpc3RDb250ZXh0RGltZW5zaW9uc1JlcXVlc3QSEwoGc2VhcmNoGAEgASgJSACIAQESDQoFbGltaXQYCiABKAUSDgoGb2Zmc2V0GAsgASgFQgkKB19zZWFyY2giYQodTGlzdENvbnRleHREaW1lbnNpb25zUmVzcG9uc2USMQoKZGltZW5zaW9ucxgBIAMoCzIdLnNldHRpbmdzLnYxLkNvbnRleHREaW1lbnNpb24SDQoFdG90YWwYAiABKAUiKAoaR2V0Q29udGV4dERpbWVuc2lvblJlcXVlc3QSCgoCaWQYASABKAkiTwobR2V0Q29udGV4dERpbWVuc2lvblJlc3BvbnNlEjAKCWRpbWVuc2lvbhgBIAEoCzIdLnNldHRpbmdzLnYxLkNvbnRleHREaW1lbnNpb24iywEKHUNyZWF0ZUNvbnRleHREaW1lbnNpb25SZXF1ZXN0EgsKA2tleRgBIAEoCRIMCgRuYW1lGAIgASgJEhgKC2Rlc2NyaXB0aW9uGAMgASgJSACIAQESEwoLc291cmNlX3R5cGUYBCABKAkSGAoQc291cmNlX21vZGVsX2tleRgFIAEoCRIfChJkZWZhdWx0X3JlY29yZF9rZXkYBiABKAlIAYgBAUIOCgxfZGVzY3JpcHRpb25CFQoTX2RlZmF1bHRfcmVjb3JkX2tleSJSCh5DcmVhdGVDb250ZXh0RGltZW5zaW9uUmVzcG9uc2USMAoJZGltZW5zaW9uGAEgASgLMh0uc2V0dGluZ3MudjEuQ29udGV4dERpbWVuc2lvbiLdAQodVXBkYXRlQ29udGV4dERpbWVuc2lvblJlcXVlc3QSCgoCaWQYASABKAkSEQoEbmFtZRgCIAEoCUgAiAEBEhgKC2Rlc2NyaXB0aW9uGAMgASgJSAGIAQESHQoQc291cmNlX21vZGVsX2tleRgEIAEoCUgCiAEBEh8KEmRlZmF1bHRfcmVjb3JkX2tleRgFIAEoCUgDiAEBQgcKBV9uYW1lQg4KDF9kZXNjcmlwdGlvbkITChFfc291cmNlX21vZGVsX2tleUIVChNfZGVmYXVsdF9yZWNvcmRfa2V5IlIKHlVwZGF0ZUNvbnRleHREaW1lbnNpb25SZXNwb25zZRIwCglkaW1lbnNpb24YASABKAsyHS5zZXR0aW5ncy52MS5Db250ZXh0RGltZW5zaW9uIisKHURlbGV0ZUNvbnRleHREaW1lbnNpb25SZXF1ZXN0EgoKAmlkGAEgASgJIjEKHkRlbGV0ZUNvbnRleHREaW1lbnNpb25SZXNwb25zZRIPCgdzdWNjZXNzGAEgASgIIngKIEdldENvbnRleHREaW1lbnNpb25WYWx1ZXNSZXF1ZXN0EhUKDWRpbWVuc2lvbl9rZXkYASABKAkSEwoGc2VhcmNoGAIgASgJSACIAQESDQoFbGltaXQYCiABKAUSDgoGb2Zmc2V0GAsgASgFQgkKB19zZWFyY2giZgohR2V0Q29udGV4dERpbWVuc2lvblZhbHVlc1Jlc3BvbnNlEjIKBnZhbHVlcxgBIAMoCzIiLnNldHRpbmdzLnYxLkNvbnRleHREaW1lbnNpb25WYWx1ZRINCgV0b3RhbBgCIAEoBSLnAQoUQ3VzdG9tZXJQcm9maWxlRmllbGQSCgoCaWQYASABKAkSCwoDa2V5GAIgASgJEgwKBHR5cGUYAyABKAkSDQoFbGFiZWwYBCABKAkSEAoIcmVxdWlyZWQYBSABKAgSFgoJaGVscF90ZXh0GAYgASgJSACIAQESGAoLcGxhY2Vob2xkZXIYByABKAlIAYgBARIsCgZjb25maWcYCCABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SAKIAQFCDAoKX2hlbHBfdGV4dEIOCgxfcGxhY2Vob2xkZXJCCQoHX2NvbmZpZyLeAQoVQ3VzdG9tZXJQcm9maWxlU2NoZW1hEgoKAmlkGAEgASgJEjEKBmZpZWxkcxgCIAMoCzIhLnNldHRpbmdzLnYxLkN1c3RvbWVyUHJvZmlsZUZpZWxkEhUKDXB1YmxpY19maWVsZHMYAyADKAkSDwoHdmVyc2lvbhgEIAEoBRIuCgpjcmVhdGVkX2F0GDIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GDMgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCIhCh9HZXRDdXN0b21lclByb2ZpbGVTY2hlbWFSZXF1ZXN0IlYKIEdldEN1c3RvbWVyUHJvZmlsZVNjaGVtYVJlc3BvbnNlEjIKBnNjaGVtYRgBIAEoCzIiLnNldHRpbmdzLnYxLkN1c3RvbWVyUHJvZmlsZVNjaGVtYSKgBAoTVmFyaWFudENhdGFsb2dFbnRyeRIKCgJpZBgBIAEoCRILCgNrZXkYAiABKAkSDAoEbmFtZRgDIAEoCRIYCgtkZXNjcmlwdGlvbhgEIAEoCUgAiAEBEjwKD3RhcmdldGluZ19ydWxlcxgFIAEoCzIeLmV4cHJlc3Npb25zLnYxLlJ1bGVFeHByZXNzaW9uSAGIAQESEAoIcHJpb3JpdHkYBiABKAUSEgoKaXNfZGVmYXVsdBgHIAEoCBIRCglpc19hY3RpdmUYCCABKAgSGgoNZXhwZXJpbWVudF9pZBgJIAEoCUgCiAEBEhgKC2ZhbGxiYWNrX2lkGAogASgJSAOIAQESEQoJdGVuYW50X2lkGBQgASgJEhIKCnByb2plY3RfaWQYFSABKAkSFwoKY3JlYXRlZF9ieRgeIAEoCUgEiAEBEhcKCnVwZGF0ZWRfYnkYHyABKAlIBYgBARIuCgpjcmVhdGVkX2F0GDIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GDMgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEIOCgxfZGVzY3JpcHRpb25CEgoQX3RhcmdldGluZ19ydWxlc0IQCg5fZXhwZXJpbWVudF9pZEIOCgxfZmFsbGJhY2tfaWRCDQoLX2NyZWF0ZWRfYnlCDQoLX3VwZGF0ZWRfYnkiYAoZTGlzdFZhcmlhbnRDYXRhbG9nUmVxdWVzdBIWCglpc19hY3RpdmUYASABKAhIAIgBARINCgVsaW1pdBgKIAEoBRIOCgZvZmZzZXQYCyABKAVCDAoKX2lzX2FjdGl2ZSJeChpMaXN0VmFyaWFudENhdGFsb2dSZXNwb25zZRIxCgdlbnRyaWVzGAEgAygLMiAuc2V0dGluZ3MudjEuVmFyaWFudENhdGFsb2dFbnRyeRINCgV0b3RhbBgCIAEoBSIrCh1HZXRWYXJpYW50Q2F0YWxvZ0VudHJ5UmVxdWVzdBIKCgJpZBgBIAEoCSJRCh5HZXRWYXJpYW50Q2F0YWxvZ0VudHJ5UmVzcG9uc2USLwoFZW50cnkYASABKAsyIC5zZXR0aW5ncy52MS5WYXJpYW50Q2F0YWxvZ0VudHJ5IqsCCiBDcmVhdGVWYXJpYW50Q2F0YWxvZ0VudHJ5UmVxdWVzdBILCgNrZXkYASABKAkSDAoEbmFtZRgCIAEoCRIYCgtkZXNjcmlwdGlvbhgDIAEoCUgAiAEBEjwKD3RhcmdldGluZ19ydWxlcxgEIAEoCzIeLmV4cHJlc3Npb25zLnYxLlJ1bGVFeHByZXNzaW9uSAGIAQESFQoIcHJpb3JpdHkYBSABKAVIAogBARIXCgppc19kZWZhdWx0GAYgASgISAOIAQESFgoJaXNfYWN0aXZlGAcgASgISASIAQFCDgoMX2Rlc2NyaXB0aW9uQhIKEF90YXJnZXRpbmdfcnVsZXNCCwoJX3ByaW9yaXR5Qg0KC19pc19kZWZhdWx0QgwKCl9pc19hY3RpdmUiVAohQ3JlYXRlVmFyaWFudENhdGFsb2dFbnRyeVJlc3BvbnNlEi8KBWVudHJ5GAEgASgLMiAuc2V0dGluZ3MudjEuVmFyaWFudENhdGFsb2dFbnRyeSK4AgogVXBkYXRlVmFyaWFudENhdGFsb2dFbnRyeVJlcXVlc3QSCgoCaWQYASABKAkSEQoEbmFtZRgCIAEoCUgAiAEBEhgKC2Rlc2NyaXB0aW9uGAMgASgJSAGIAQESPAoPdGFyZ2V0aW5nX3J1bGVzGAQgASgLMh4uZXhwcmVzc2lvbnMudjEuUnVsZUV4cHJlc3Npb25IAogBARIVCghwcmlvcml0eRgFIAEoBUgDiAEBEhcKCmlzX2RlZmF1bHQYBiABKAhIBIgBARIWCglpc19hY3RpdmUYByABKAhIBYgBAUIHCgVfbmFtZUIOCgxfZGVzY3JpcHRpb25CEgoQX3RhcmdldGluZ19ydWxlc0ILCglfcHJpb3JpdHlCDQoLX2lzX2RlZmF1bHRCDAoKX2lzX2FjdGl2ZSJUCiFVcGRhdGVWYXJpYW50Q2F0YWxvZ0VudHJ5UmVzcG9uc2USLwoFZW50cnkYASABKAsyIC5zZXR0aW5ncy52MS5WYXJpYW50Q2F0YWxvZ0VudHJ5Ii4KIERlbGV0ZVZhcmlhbnRDYXRhbG9nRW50cnlSZXF1ZXN0EgoKAmlkGAEgASgJIjQKIURlbGV0ZVZhcmlhbnRDYXRhbG9nRW50cnlSZXNwb25zZRIPCgdzdWNjZXNzGAEgASgIIjAKGUdldEN1c3RvbWVyUHJvZmlsZVJlcXVlc3QSEwoLY3VzdG9tZXJfaWQYASABKAkiQwoaR2V0Q3VzdG9tZXJQcm9maWxlUmVzcG9uc2USJQoEZGF0YRgBIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QiVwoZU2V0Q3VzdG9tZXJQcm9maWxlUmVxdWVzdBITCgtjdXN0b21lcl9pZBgBIAEoCRIlCgRkYXRhGAIgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdCItChpTZXRDdXN0b21lclByb2ZpbGVSZXNwb25zZRIPCgdzdWNjZXNzGAEgASgIIm4KIlVwZGF0ZUN1c3RvbWVyUHJvZmlsZVNjaGVtYVJlcXVlc3QSMQoGZmllbGRzGAEgAygLMiEuc2V0dGluZ3MudjEuQ3VzdG9tZXJQcm9maWxlRmllbGQSFQoNcHVibGljX2ZpZWxkcxgCIAMoCSJZCiNVcGRhdGVDdXN0b21lclByb2ZpbGVTY2hlbWFSZXNwb25zZRIyCgZzY2hlbWEYASABKAsyIi5zZXR0aW5ncy52MS5DdXN0b21lclByb2ZpbGVTY2hlbWEiUwoVQ3VzdG9tZXJQcm9maWxlUmVzdWx0EhMKC2N1c3RvbWVyX2lkGAEgASgJEiUKBGRhdGEYAiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Ik0KHVNlYXJjaEN1c3RvbWVyUHJvZmlsZXNSZXF1ZXN0Eg0KBXF1ZXJ5GAEgASgJEg0KBWxpbWl0GAogASgFEg4KBm9mZnNldBgLIAEoBSJkCh5TZWFyY2hDdXN0b21lclByb2ZpbGVzUmVzcG9uc2USMwoHcmVzdWx0cxgBIAMoCzIiLnNldHRpbmdzLnYxLkN1c3RvbWVyUHJvZmlsZVJlc3VsdBINCgV0b3RhbBgCIAEoBSIzChxEZWxldGVDdXN0b21lclByb2ZpbGVSZXF1ZXN0EhMKC2N1c3RvbWVyX2lkGAEgASgJIjAKHURlbGV0ZUN1c3RvbWVyUHJvZmlsZVJlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgiPQomR2V0Q3VzdG9tZXJSZXNvbHV0aW9uQXR0cmlidXRlc1JlcXVlc3QSEwoLY3VzdG9tZXJfaWQYASABKAkiWQoTUmVzb2x1dGlvbkF0dHJpYnV0ZRILCgNrZXkYASABKAkSNQoGdmFsdWVzGAIgAygLMiUuc2V0dGluZ3MudjEuUmVzb2x1dGlvbkF0dHJpYnV0ZVZhbHVlIoABChhSZXNvbHV0aW9uQXR0cmlidXRlVmFsdWUSDQoFdmFsdWUYASABKAkSDQoFY291bnQYAiABKAUSNQoMbGFzdF9zZWVuX2F0GAMgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgAiAEBQg8KDV9sYXN0X3NlZW5fYXQijAIKJ0dldEN1c3RvbWVyUmVzb2x1dGlvbkF0dHJpYnV0ZXNSZXNwb25zZRIZChF0b3RhbF9yZXNvbHV0aW9ucxgBIAEoBRI0CgphdHRyaWJ1dGVzGAIgAygLMiAuc2V0dGluZ3MudjEuUmVzb2x1dGlvbkF0dHJpYnV0ZRI2Cg1maXJzdF9zZWVuX2F0GAogASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgAiAEBEjUKDGxhc3Rfc2Vlbl9hdBgLIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAYgBAUIQCg5fZmlyc3Rfc2Vlbl9hdEIPCg1fbGFzdF9zZWVuX2F0IiwKF0dldEVkaXRvckNvbmZpZ3NSZXF1ZXN0EhEKCW1vZGVsX2tleRgBIAEoCSLAAgoVRWRpdG9yQ29uZmlnUGxhY2VtZW50EhEKCWNvbmZpZ19pZBgBIAEoCRISCgpjb25maWdfa2V5GAIgASgJEhAKA3VybBgDIAEoCUgAiAEBEhsKDmFsbG93ZWRfb3JpZ2luGAQgASgJSAGIAQESEwoGaGVpZ2h0GAUgASgFSAKIAQESEgoFbGFiZWwYBiABKAlIA4gBARIUCgdhcGlfa2V5GAcgASgJSASIAQESFAoHYXBpX3VybBgIIAEoCUgFiAEBEh4KEWNvbm5lY3Rpb25fZG9tYWluGAkgASgJSAaIAQFCBgoEX3VybEIRCg9fYWxsb3dlZF9vcmlnaW5CCQoHX2hlaWdodEIICgZfbGFiZWxCCgoIX2FwaV9rZXlCCgoIX2FwaV91cmxCFAoSX2Nvbm5lY3Rpb25fZG9tYWluIlIKGEdldEVkaXRvckNvbmZpZ3NSZXNwb25zZRI2CgpwbGFjZW1lbnRzGAEgAygLMiIuc2V0dGluZ3MudjEuRWRpdG9yQ29uZmlnUGxhY2VtZW50IiAKElJlc29sdmVOb3RlUmVxdWVzdBIKCgJpZBgBIAEoCSI2ChNSZXNvbHZlTm90ZVJlc3BvbnNlEh8KBG5vdGUYASABKAsyES5zZXR0aW5ncy52MS5Ob3RlIiIKFFVucmVzb2x2ZU5vdGVSZXF1ZXN0EgoKAmlkGAEgASgJIjgKFVVucmVzb2x2ZU5vdGVSZXNwb25zZRIfCgRub3RlGAEgASgLMhEuc2V0dGluZ3MudjEuTm90ZSJsChJTZWFyY2hOb3Rlc1JlcXVlc3QSDQoFcXVlcnkYASABKAkSGAoLZW50aXR5X3R5cGUYAiABKAlIAIgBARINCgVsaW1pdBgKIAEoBRIOCgZvZmZzZXQYCyABKAVCDgoMX2VudGl0eV90eXBlIkYKE1NlYXJjaE5vdGVzUmVzcG9uc2USIAoFbm90ZXMYASADKAsyES5zZXR0aW5ncy52MS5Ob3RlEg0KBXRvdGFsGAIgASgFIhkKF01hcmtNZW50aW9uc1NlZW5SZXF1ZXN0IikKGE1hcmtNZW50aW9uc1NlZW5SZXNwb25zZRINCgVjb3VudBgBIAEoBSIuCh9HZXRDb250ZXh0RGltZW5zaW9uQnlLZXlSZXF1ZXN0EgsKA2tleRgBIAEoCSJUCiBHZXRDb250ZXh0RGltZW5zaW9uQnlLZXlSZXNwb25zZRIwCglkaW1lbnNpb24YASABKAsyHS5zZXR0aW5ncy52MS5Db250ZXh0RGltZW5zaW9uIhkKF0dldERlZmF1bHRMb2NhbGVSZXF1ZXN0Ij8KGEdldERlZmF1bHRMb2NhbGVSZXNwb25zZRIjCgZsb2NhbGUYASABKAsyEy5zZXR0aW5ncy52MS5Mb2NhbGUiJgoWR2V0TG9jYWxlQnlDb2RlUmVxdWVzdBIMCgRjb2RlGAEgASgJIj4KF0dldExvY2FsZUJ5Q29kZVJlc3BvbnNlEiMKBmxvY2FsZRgBIAEoCzITLnNldHRpbmdzLnYxLkxvY2FsZSImCiRHZXREZWZhdWx0VmFyaWFudENhdGFsb2dFbnRyeVJlcXVlc3QiWAolR2V0RGVmYXVsdFZhcmlhbnRDYXRhbG9nRW50cnlSZXNwb25zZRIvCgVlbnRyeRgBIAEoCzIgLnNldHRpbmdzLnYxLlZhcmlhbnRDYXRhbG9nRW50cnkiIwoURGVsZXRlU2V0dGluZ1JlcXVlc3QSCwoDa2V5GAEgASgJIigKFURlbGV0ZVNldHRpbmdSZXNwb25zZRIPCgdzdWNjZXNzGAEgASgIIjMKH0RlbGV0ZVNldHRpbmdzQnlDYXRlZ29yeVJlcXVlc3QSEAoIY2F0ZWdvcnkYASABKAkiMQogRGVsZXRlU2V0dGluZ3NCeUNhdGVnb3J5UmVzcG9uc2USDQoFY291bnQYASABKAUiTQoWQnVsa1NldFNldHRpbmdzUmVxdWVzdBIzCghzZXR0aW5ncxgBIAMoCzIhLnNldHRpbmdzLnYxLlVwZGF0ZVNldHRpbmdSZXF1ZXN0IigKF0J1bGtTZXRTZXR0aW5nc1Jlc3BvbnNlEg0KBWNvdW50GAEgASgFIikKJ0Vuc3VyZURlZmF1bHRWYXJpYW50Q2F0YWxvZ0VudHJ5UmVxdWVzdCJbCihFbnN1cmVEZWZhdWx0VmFyaWFudENhdGFsb2dFbnRyeVJlc3BvbnNlEi8KBWVudHJ5GAEgASgLMiAuc2V0dGluZ3MudjEuVmFyaWFudENhdGFsb2dFbnRyeSIZChdHZXRQcm9qZWN0U2NoZW1hUmVxdWVzdCJlChJQcm9qZWN0U2NoZW1hTW9kZWwSCgoCaWQYASABKAkSCwoDa2V5GAIgASgJEgwKBG5hbWUYAyABKAkSEwoLZmllbGRzX2pzb24YBCABKAkSEwoLY29uZmlnX2pzb24YBSABKAkiwgEKHVByb2plY3RTY2hlbWFDb250ZXh0RGltZW5zaW9uEgoKAmlkGAEgASgJEgsKA2tleRgCIAEoCRIMCgRuYW1lGAMgASgJEh0KEHNvdXJjZV9tb2RlbF9rZXkYBCABKAlIAIgBARIfChJkZWZhdWx0X3JlY29yZF9rZXkYBSABKAlIAYgBARIOCgZ2YWx1ZXMYBiADKAlCEwoRX3NvdXJjZV9tb2RlbF9rZXlCFQoTX2RlZmF1bHRfcmVjb3JkX2tleSKOAQoZUHJvamVjdFNjaGVtYUF1dGhQcm92aWRlchILCgNrZXkYASABKAkSDAoEbmFtZRgCIAEoCRIMCgR0eXBlGAMgASgJEg8KB2VuYWJsZWQYBCABKAgSLAoGY29uZmlnGAUgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgAiAEBQgkKB19jb25maWci/QEKFlByb2plY3RTY2hlbWFPcGVyYXRpb24SCwoDa2V5GAEgASgJEgwKBG5hbWUYAiABKAkSEAoIZW5kcG9pbnQYAyABKAkSEgoKdGltZW91dF9tcxgEIAEoBRIyCgxpbnB1dF9zY2hlbWEYBSABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SACIAQESMwoNb3V0cHV0X3NjaGVtYRgGIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIAYgBARIWCg5zdXBwb3J0c19hc3luYxgHIAEoCEIPCg1faW5wdXRfc2NoZW1hQhAKDl9vdXRwdXRfc2NoZW1hIkQKFFByb2plY3RTY2hlbWFTZWdtZW50EgsKA2tleRgBIAEoCRIMCgRuYW1lGAIgASgJEhEKCWlzX2FjdGl2ZRgDIAEoCCJvChdQcm9qZWN0U2NoZW1hRXhwZXJpbWVudBILCgNrZXkYASABKAkSDAoEbmFtZRgCIAEoCRIOCgZzdGF0dXMYAyABKAkSKQoIdmFyaWFudHMYBCABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0IlkKGlByb2plY3RTY2hlbWFQcm9maWxlU2NoZW1hEhMKC2ZpZWxkc19qc29uGAEgASgJEhUKDXB1YmxpY19maWVsZHMYAiADKAkSDwoHdmVyc2lvbhgDIAEoBSLNAwoYR2V0UHJvamVjdFNjaGVtYVJlc3BvbnNlEi8KBm1vZGVscxgBIAMoCzIfLnNldHRpbmdzLnYxLlByb2plY3RTY2hlbWFNb2RlbBI+CgpkaW1lbnNpb25zGAIgAygLMiouc2V0dGluZ3MudjEuUHJvamVjdFNjaGVtYUNvbnRleHREaW1lbnNpb24SPgoOYXV0aF9wcm92aWRlcnMYAyADKAsyJi5zZXR0aW5ncy52MS5Qcm9qZWN0U2NoZW1hQXV0aFByb3ZpZGVyEjcKCm9wZXJhdGlvbnMYBCADKAsyIy5zZXR0aW5ncy52MS5Qcm9qZWN0U2NoZW1hT3BlcmF0aW9uEjMKCHNlZ21lbnRzGAUgAygLMiEuc2V0dGluZ3MudjEuUHJvamVjdFNjaGVtYVNlZ21lbnQSOQoLZXhwZXJpbWVudHMYBiADKAsyJC5zZXR0aW5ncy52MS5Qcm9qZWN0U2NoZW1hRXhwZXJpbWVudBJECg5wcm9maWxlX3NjaGVtYRgHIAEoCzInLnNldHRpbmdzLnYxLlByb2plY3RTY2hlbWFQcm9maWxlU2NoZW1hSACIAQFCEQoPX3Byb2ZpbGVfc2NoZW1hKnYKEVNoYXJlUmVzb3VyY2VUeXBlEiMKH1NIQVJFX1JFU09VUkNFX1RZUEVfVU5TUEVDSUZJRUQQABIeChpTSEFSRV9SRVNPVVJDRV9UWVBFX1JFQ09SRBABEhwKGFNIQVJFX1JFU09VUkNFX1RZUEVfRklMRRACKoUBCg9TaGFyZVBlcm1pc3Npb24SIAocU0hBUkVfUEVSTUlTU0lPTl9VTlNQRUNJRklFRBAAEhkKFVNIQVJFX1BFUk1JU1NJT05fVklFVxABEhkKFVNIQVJFX1BFUk1JU1NJT05fRURJVBACEhoKFlNIQVJFX1BFUk1JU1NJT05fQURNSU4QAyp7CgtTaGFyZVN0YXR1cxIcChhTSEFSRV9TVEFUVVNfVU5TUEVDSUZJRUQQABIYChRTSEFSRV9TVEFUVVNfUEVORElORxABEhkKFVNIQVJFX1NUQVRVU19BQ0NFUFRFRBACEhkKFVNIQVJFX1NUQVRVU19ERUNMSU5FRBADMvwuCg9TZXR0aW5nc1NlcnZpY2USUAoLR2V0U2V0dGluZ3MSHy5zZXR0aW5ncy52MS5HZXRTZXR0aW5nc1JlcXVlc3QaIC5zZXR0aW5ncy52MS5HZXRTZXR0aW5nc1Jlc3BvbnNlElYKDVVwZGF0ZVNldHRpbmcSIS5zZXR0aW5ncy52MS5VcGRhdGVTZXR0aW5nUmVxdWVzdBoiLnNldHRpbmdzLnYxLlVwZGF0ZVNldHRpbmdSZXNwb25zZRJWCg1EZWxldGVTZXR0aW5nEiEuc2V0dGluZ3MudjEuRGVsZXRlU2V0dGluZ1JlcXVlc3QaIi5zZXR0aW5ncy52MS5EZWxldGVTZXR0aW5nUmVzcG9uc2USdwoYRGVsZXRlU2V0dGluZ3NCeUNhdGVnb3J5Eiwuc2V0dGluZ3MudjEuRGVsZXRlU2V0dGluZ3NCeUNhdGVnb3J5UmVxdWVzdBotLnNldHRpbmdzLnYxLkRlbGV0ZVNldHRpbmdzQnlDYXRlZ29yeVJlc3BvbnNlElwKD0J1bGtTZXRTZXR0aW5ncxIjLnNldHRpbmdzLnYxLkJ1bGtTZXRTZXR0aW5nc1JlcXVlc3QaJC5zZXR0aW5ncy52MS5CdWxrU2V0U2V0dGluZ3NSZXNwb25zZRJWCg1MaXN0QXVkaXRMb2dzEiEuc2V0dGluZ3MudjEuTGlzdEF1ZGl0TG9nc1JlcXVlc3QaIi5zZXR0aW5ncy52MS5MaXN0QXVkaXRMb2dzUmVzcG9uc2USTQoKQ3JlYXRlTm90ZRIeLnNldHRpbmdzLnYxLkNyZWF0ZU5vdGVSZXF1ZXN0Gh8uc2V0dGluZ3MudjEuQ3JlYXRlTm90ZVJlc3BvbnNlEkQKB0dldE5vdGUSGy5zZXR0aW5ncy52MS5HZXROb3RlUmVxdWVzdBocLnNldHRpbmdzLnYxLkdldE5vdGVSZXNwb25zZRJKCglMaXN0Tm90ZXMSHS5zZXR0aW5ncy52MS5MaXN0Tm90ZXNSZXF1ZXN0Gh4uc2V0dGluZ3MudjEuTGlzdE5vdGVzUmVzcG9uc2USTQoKVXBkYXRlTm90ZRIeLnNldHRpbmdzLnYxLlVwZGF0ZU5vdGVSZXF1ZXN0Gh8uc2V0dGluZ3MudjEuVXBkYXRlTm90ZVJlc3BvbnNlEk0KCkRlbGV0ZU5vdGUSHi5zZXR0aW5ncy52MS5EZWxldGVOb3RlUmVxdWVzdBofLnNldHRpbmdzLnYxLkRlbGV0ZU5vdGVSZXNwb25zZRJQCgtSZXNvbHZlTm90ZRIfLnNldHRpbmdzLnYxLlJlc29sdmVOb3RlUmVxdWVzdBogLnNldHRpbmdzLnYxLlJlc29sdmVOb3RlUmVzcG9uc2USVgoNVW5yZXNvbHZlTm90ZRIhLnNldHRpbmdzLnYxLlVucmVzb2x2ZU5vdGVSZXF1ZXN0GiIuc2V0dGluZ3MudjEuVW5yZXNvbHZlTm90ZVJlc3BvbnNlElAKC1NlYXJjaE5vdGVzEh8uc2V0dGluZ3MudjEuU2VhcmNoTm90ZXNSZXF1ZXN0GiAuc2V0dGluZ3MudjEuU2VhcmNoTm90ZXNSZXNwb25zZRJZCg5MaXN0TXlNZW50aW9ucxIiLnNldHRpbmdzLnYxLkxpc3RNeU1lbnRpb25zUmVxdWVzdBojLnNldHRpbmdzLnYxLkxpc3RNeU1lbnRpb25zUmVzcG9uc2USaAoTVXBkYXRlTWVudGlvblN0YXR1cxInLnNldHRpbmdzLnYxLlVwZGF0ZU1lbnRpb25TdGF0dXNSZXF1ZXN0Giguc2V0dGluZ3MudjEuVXBkYXRlTWVudGlvblN0YXR1c1Jlc3BvbnNlEl8KEE1hcmtNZW50aW9uc1NlZW4SJC5zZXR0aW5ncy52MS5NYXJrTWVudGlvbnNTZWVuUmVxdWVzdBolLnNldHRpbmdzLnYxLk1hcmtNZW50aW9uc1NlZW5SZXNwb25zZRJQCgtMaXN0TG9jYWxlcxIfLnNldHRpbmdzLnYxLkxpc3RMb2NhbGVzUmVxdWVzdBogLnNldHRpbmdzLnYxLkxpc3RMb2NhbGVzUmVzcG9uc2USSgoJR2V0TG9jYWxlEh0uc2V0dGluZ3MudjEuR2V0TG9jYWxlUmVxdWVzdBoeLnNldHRpbmdzLnYxLkdldExvY2FsZVJlc3BvbnNlEl8KEEdldERlZmF1bHRMb2NhbGUSJC5zZXR0aW5ncy52MS5HZXREZWZhdWx0TG9jYWxlUmVxdWVzdBolLnNldHRpbmdzLnYxLkdldERlZmF1bHRMb2NhbGVSZXNwb25zZRJcCg9HZXRMb2NhbGVCeUNvZGUSIy5zZXR0aW5ncy52MS5HZXRMb2NhbGVCeUNvZGVSZXF1ZXN0GiQuc2V0dGluZ3MudjEuR2V0TG9jYWxlQnlDb2RlUmVzcG9uc2USUwoMQ3JlYXRlTG9jYWxlEiAuc2V0dGluZ3MudjEuQ3JlYXRlTG9jYWxlUmVxdWVzdBohLnNldHRpbmdzLnYxLkNyZWF0ZUxvY2FsZVJlc3BvbnNlElMKDFVwZGF0ZUxvY2FsZRIgLnNldHRpbmdzLnYxLlVwZGF0ZUxvY2FsZVJlcXVlc3QaIS5zZXR0aW5ncy52MS5VcGRhdGVMb2NhbGVSZXNwb25zZRJTCgxEZWxldGVMb2NhbGUSIC5zZXR0aW5ncy52MS5EZWxldGVMb2NhbGVSZXF1ZXN0GiEuc2V0dGluZ3MudjEuRGVsZXRlTG9jYWxlUmVzcG9uc2USYgoRR2V0TmF2UHJlZmVyZW5jZXMSJS5zZXR0aW5ncy52MS5HZXROYXZQcmVmZXJlbmNlc1JlcXVlc3QaJi5zZXR0aW5ncy52MS5HZXROYXZQcmVmZXJlbmNlc1Jlc3BvbnNlEmsKFFVwZGF0ZU5hdlByZWZlcmVuY2VzEiguc2V0dGluZ3MudjEuVXBkYXRlTmF2UHJlZmVyZW5jZXNSZXF1ZXN0Gikuc2V0dGluZ3MudjEuVXBkYXRlTmF2UHJlZmVyZW5jZXNSZXNwb25zZRJlChJMaXN0UmVjZW50bHlPcGVuZWQSJi5zZXR0aW5ncy52MS5MaXN0UmVjZW50bHlPcGVuZWRSZXF1ZXN0Gicuc2V0dGluZ3MudjEuTGlzdFJlY2VudGx5T3BlbmVkUmVzcG9uc2USaAoTVHJhY2tSZWNlbnRseU9wZW5lZBInLnNldHRpbmdzLnYxLlRyYWNrUmVjZW50bHlPcGVuZWRSZXF1ZXN0Giguc2V0dGluZ3MudjEuVHJhY2tSZWNlbnRseU9wZW5lZFJlc3BvbnNlEmsKFFJlbW92ZVJlY2VudGx5T3BlbmVkEiguc2V0dGluZ3MudjEuUmVtb3ZlUmVjZW50bHlPcGVuZWRSZXF1ZXN0Gikuc2V0dGluZ3MudjEuUmVtb3ZlUmVjZW50bHlPcGVuZWRSZXNwb25zZRJoChNDbGVhclJlY2VudGx5T3BlbmVkEicuc2V0dGluZ3MudjEuQ2xlYXJSZWNlbnRseU9wZW5lZFJlcXVlc3QaKC5zZXR0aW5ncy52MS5DbGVhclJlY2VudGx5T3BlbmVkUmVzcG9uc2USUAoLQ3JlYXRlU2hhcmUSHy5zZXR0aW5ncy52MS5DcmVhdGVTaGFyZVJlcXVlc3QaIC5zZXR0aW5ncy52MS5DcmVhdGVTaGFyZVJlc3BvbnNlEkcKCEdldFNoYXJlEhwuc2V0dGluZ3MudjEuR2V0U2hhcmVSZXF1ZXN0Gh0uc2V0dGluZ3MudjEuR2V0U2hhcmVSZXNwb25zZRJNCgpMaXN0U2hhcmVzEh4uc2V0dGluZ3MudjEuTGlzdFNoYXJlc1JlcXVlc3QaHy5zZXR0aW5ncy52MS5MaXN0U2hhcmVzUmVzcG9uc2USUAoLVXBkYXRlU2hhcmUSHy5zZXR0aW5ncy52MS5VcGRhdGVTaGFyZVJlcXVlc3QaIC5zZXR0aW5ncy52MS5VcGRhdGVTaGFyZVJlc3BvbnNlElAKC1Jldm9rZVNoYXJlEh8uc2V0dGluZ3MudjEuUmV2b2tlU2hhcmVSZXF1ZXN0GiAuc2V0dGluZ3MudjEuUmV2b2tlU2hhcmVSZXNwb25zZRJQCgtBY2NlcHRTaGFyZRIfLnNldHRpbmdzLnYxLkFjY2VwdFNoYXJlUmVxdWVzdBogLnNldHRpbmdzLnYxLkFjY2VwdFNoYXJlUmVzcG9uc2USUwoMRGVjbGluZVNoYXJlEiAuc2V0dGluZ3MudjEuRGVjbGluZVNoYXJlUmVxdWVzdBohLnNldHRpbmdzLnYxLkRlY2xpbmVTaGFyZVJlc3BvbnNlEm4KFUxpc3RDb250ZXh0RGltZW5zaW9ucxIpLnNldHRpbmdzLnYxLkxpc3RDb250ZXh0RGltZW5zaW9uc1JlcXVlc3QaKi5zZXR0aW5ncy52MS5MaXN0Q29udGV4dERpbWVuc2lvbnNSZXNwb25zZRJoChNHZXRDb250ZXh0RGltZW5zaW9uEicuc2V0dGluZ3MudjEuR2V0Q29udGV4dERpbWVuc2lvblJlcXVlc3QaKC5zZXR0aW5ncy52MS5HZXRDb250ZXh0RGltZW5zaW9uUmVzcG9uc2USdwoYR2V0Q29udGV4dERpbWVuc2lvbkJ5S2V5Eiwuc2V0dGluZ3MudjEuR2V0Q29udGV4dERpbWVuc2lvbkJ5S2V5UmVxdWVzdBotLnNldHRpbmdzLnYxLkdldENvbnRleHREaW1lbnNpb25CeUtleVJlc3BvbnNlEnEKFkNyZWF0ZUNvbnRleHREaW1lbnNpb24SKi5zZXR0aW5ncy52MS5DcmVhdGVDb250ZXh0RGltZW5zaW9uUmVxdWVzdBorLnNldHRpbmdzLnYxLkNyZWF0ZUNvbnRleHREaW1lbnNpb25SZXNwb25zZRJxChZVcGRhdGVDb250ZXh0RGltZW5zaW9uEiouc2V0dGluZ3MudjEuVXBkYXRlQ29udGV4dERpbWVuc2lvblJlcXVlc3QaKy5zZXR0aW5ncy52MS5VcGRhdGVDb250ZXh0RGltZW5zaW9uUmVzcG9uc2UScQoWRGVsZXRlQ29udGV4dERpbWVuc2lvbhIqLnNldHRpbmdzLnYxLkRlbGV0ZUNvbnRleHREaW1lbnNpb25SZXF1ZXN0Gisuc2V0dGluZ3MudjEuRGVsZXRlQ29udGV4dERpbWVuc2lvblJlc3BvbnNlEnoKGUdldENvbnRleHREaW1lbnNpb25WYWx1ZXMSLS5zZXR0aW5ncy52MS5HZXRDb250ZXh0RGltZW5zaW9uVmFsdWVzUmVxdWVzdBouLnNldHRpbmdzLnYxLkdldENvbnRleHREaW1lbnNpb25WYWx1ZXNSZXNwb25zZRJ3ChhHZXRDdXN0b21lclByb2ZpbGVTY2hlbWESLC5zZXR0aW5ncy52MS5HZXRDdXN0b21lclByb2ZpbGVTY2hlbWFSZXF1ZXN0Gi0uc2V0dGluZ3MudjEuR2V0Q3VzdG9tZXJQcm9maWxlU2NoZW1hUmVzcG9uc2USZQoSR2V0Q3VzdG9tZXJQcm9maWxlEiYuc2V0dGluZ3MudjEuR2V0Q3VzdG9tZXJQcm9maWxlUmVxdWVzdBonLnNldHRpbmdzLnYxLkdldEN1c3RvbWVyUHJvZmlsZVJlc3BvbnNlEmUKElNldEN1c3RvbWVyUHJvZmlsZRImLnNldHRpbmdzLnYxLlNldEN1c3RvbWVyUHJvZmlsZVJlcXVlc3QaJy5zZXR0aW5ncy52MS5TZXRDdXN0b21lclByb2ZpbGVSZXNwb25zZRKAAQobVXBkYXRlQ3VzdG9tZXJQcm9maWxlU2NoZW1hEi8uc2V0dGluZ3MudjEuVXBkYXRlQ3VzdG9tZXJQcm9maWxlU2NoZW1hUmVxdWVzdBowLnNldHRpbmdzLnYxLlVwZGF0ZUN1c3RvbWVyUHJvZmlsZVNjaGVtYVJlc3BvbnNlEnEKFlNlYXJjaEN1c3RvbWVyUHJvZmlsZXMSKi5zZXR0aW5ncy52MS5TZWFyY2hDdXN0b21lclByb2ZpbGVzUmVxdWVzdBorLnNldHRpbmdzLnYxLlNlYXJjaEN1c3RvbWVyUHJvZmlsZXNSZXNwb25zZRJuChVEZWxldGVDdXN0b21lclByb2ZpbGUSKS5zZXR0aW5ncy52MS5EZWxldGVDdXN0b21lclByb2ZpbGVSZXF1ZXN0Giouc2V0dGluZ3MudjEuRGVsZXRlQ3VzdG9tZXJQcm9maWxlUmVzcG9uc2USjAEKH0dldEN1c3RvbWVyUmVzb2x1dGlvbkF0dHJpYnV0ZXMSMy5zZXR0aW5ncy52MS5HZXRDdXN0b21lclJlc29sdXRpb25BdHRyaWJ1dGVzUmVxdWVzdBo0LnNldHRpbmdzLnYxLkdldEN1c3RvbWVyUmVzb2x1dGlvbkF0dHJpYnV0ZXNSZXNwb25zZRJfChBHZXRFZGl0b3JDb25maWdzEiQuc2V0dGluZ3MudjEuR2V0RWRpdG9yQ29uZmlnc1JlcXVlc3QaJS5zZXR0aW5ncy52MS5HZXRFZGl0b3JDb25maWdzUmVzcG9uc2USZQoSTGlzdFZhcmlhbnRDYXRhbG9nEiYuc2V0dGluZ3MudjEuTGlzdFZhcmlhbnRDYXRhbG9nUmVxdWVzdBonLnNldHRpbmdzLnYxLkxpc3RWYXJpYW50Q2F0YWxvZ1Jlc3BvbnNlEnEKFkdldFZhcmlhbnRDYXRhbG9nRW50cnkSKi5zZXR0aW5ncy52MS5HZXRWYXJpYW50Q2F0YWxvZ0VudHJ5UmVxdWVzdBorLnNldHRpbmdzLnYxLkdldFZhcmlhbnRDYXRhbG9nRW50cnlSZXNwb25zZRJ6ChlDcmVhdGVWYXJpYW50Q2F0YWxvZ0VudHJ5Ei0uc2V0dGluZ3MudjEuQ3JlYXRlVmFyaWFudENhdGFsb2dFbnRyeVJlcXVlc3QaLi5zZXR0aW5ncy52MS5DcmVhdGVWYXJpYW50Q2F0YWxvZ0VudHJ5UmVzcG9uc2USegoZVXBkYXRlVmFyaWFudENhdGFsb2dFbnRyeRItLnNldHRpbmdzLnYxLlVwZGF0ZVZhcmlhbnRDYXRhbG9nRW50cnlSZXF1ZXN0Gi4uc2V0dGluZ3MudjEuVXBkYXRlVmFyaWFudENhdGFsb2dFbnRyeVJlc3BvbnNlEnoKGURlbGV0ZVZhcmlhbnRDYXRhbG9nRW50cnkSLS5zZXR0aW5ncy52MS5EZWxldGVWYXJpYW50Q2F0YWxvZ0VudHJ5UmVxdWVzdBouLnNldHRpbmdzLnYxLkRlbGV0ZVZhcmlhbnRDYXRhbG9nRW50cnlSZXNwb25zZRKGAQodR2V0RGVmYXVsdFZhcmlhbnRDYXRhbG9nRW50cnkSMS5zZXR0aW5ncy52MS5HZXREZWZhdWx0VmFyaWFudENhdGFsb2dFbnRyeVJlcXVlc3QaMi5zZXR0aW5ncy52MS5HZXREZWZhdWx0VmFyaWFudENhdGFsb2dFbnRyeVJlc3BvbnNlEo8BCiBFbnN1cmVEZWZhdWx0VmFyaWFudENhdGFsb2dFbnRyeRI0LnNldHRpbmdzLnYxLkVuc3VyZURlZmF1bHRWYXJpYW50Q2F0YWxvZ0VudHJ5UmVxdWVzdBo1LnNldHRpbmdzLnYxLkVuc3VyZURlZmF1bHRWYXJpYW50Q2F0YWxvZ0VudHJ5UmVzcG9uc2USXwoQR2V0UHJvamVjdFNjaGVtYRIkLnNldHRpbmdzLnYxLkdldFByb2plY3RTY2hlbWFSZXF1ZXN0GiUuc2V0dGluZ3MudjEuR2V0UHJvamVjdFNjaGVtYVJlc3BvbnNlQj1aO2dpdGh1Yi5jb20vZWlkZXN0dWRpby9mb2lyL2dlbi9wcm90by9zZXR0aW5ncy92MTtzZXR0aW5nc3YxYgZwcm90bzM", [file_google_protobuf_struct, file_google_protobuf_timestamp, file_expressions_v1_expressions]);
14
14
 
15
15
  /**
16
16
  * Describes the message settings.v1.Setting.
@@ -803,306 +803,236 @@ export const EditorConfigPlacementSchema = /*@__PURE__*/
803
803
  export const GetEditorConfigsResponseSchema = /*@__PURE__*/
804
804
  messageDesc(file_settings_v1_settings, 112);
805
805
 
806
- /**
807
- * Describes the message settings.v1.EmailAction.
808
- * Use `create(EmailActionSchema)` to create a new message.
809
- */
810
- export const EmailActionSchema = /*@__PURE__*/
811
- messageDesc(file_settings_v1_settings, 113);
812
-
813
- /**
814
- * Describes the message settings.v1.ListEmailActionsRequest.
815
- * Use `create(ListEmailActionsRequestSchema)` to create a new message.
816
- */
817
- export const ListEmailActionsRequestSchema = /*@__PURE__*/
818
- messageDesc(file_settings_v1_settings, 114);
819
-
820
- /**
821
- * Describes the message settings.v1.ListEmailActionsResponse.
822
- * Use `create(ListEmailActionsResponseSchema)` to create a new message.
823
- */
824
- export const ListEmailActionsResponseSchema = /*@__PURE__*/
825
- messageDesc(file_settings_v1_settings, 115);
826
-
827
- /**
828
- * Describes the message settings.v1.GetEmailActionRequest.
829
- * Use `create(GetEmailActionRequestSchema)` to create a new message.
830
- */
831
- export const GetEmailActionRequestSchema = /*@__PURE__*/
832
- messageDesc(file_settings_v1_settings, 116);
833
-
834
- /**
835
- * Describes the message settings.v1.GetEmailActionResponse.
836
- * Use `create(GetEmailActionResponseSchema)` to create a new message.
837
- */
838
- export const GetEmailActionResponseSchema = /*@__PURE__*/
839
- messageDesc(file_settings_v1_settings, 117);
840
-
841
- /**
842
- * Describes the message settings.v1.UpdateEmailActionRequest.
843
- * Use `create(UpdateEmailActionRequestSchema)` to create a new message.
844
- */
845
- export const UpdateEmailActionRequestSchema = /*@__PURE__*/
846
- messageDesc(file_settings_v1_settings, 118);
847
-
848
- /**
849
- * Describes the message settings.v1.UpdateEmailActionResponse.
850
- * Use `create(UpdateEmailActionResponseSchema)` to create a new message.
851
- */
852
- export const UpdateEmailActionResponseSchema = /*@__PURE__*/
853
- messageDesc(file_settings_v1_settings, 119);
854
-
855
- /**
856
- * Describes the message settings.v1.ResendTemplate.
857
- * Use `create(ResendTemplateSchema)` to create a new message.
858
- */
859
- export const ResendTemplateSchema = /*@__PURE__*/
860
- messageDesc(file_settings_v1_settings, 120);
861
-
862
- /**
863
- * Describes the message settings.v1.ListResendTemplatesRequest.
864
- * Use `create(ListResendTemplatesRequestSchema)` to create a new message.
865
- */
866
- export const ListResendTemplatesRequestSchema = /*@__PURE__*/
867
- messageDesc(file_settings_v1_settings, 121);
868
-
869
- /**
870
- * Describes the message settings.v1.ListResendTemplatesResponse.
871
- * Use `create(ListResendTemplatesResponseSchema)` to create a new message.
872
- */
873
- export const ListResendTemplatesResponseSchema = /*@__PURE__*/
874
- messageDesc(file_settings_v1_settings, 122);
875
-
876
806
  /**
877
807
  * Describes the message settings.v1.ResolveNoteRequest.
878
808
  * Use `create(ResolveNoteRequestSchema)` to create a new message.
879
809
  */
880
810
  export const ResolveNoteRequestSchema = /*@__PURE__*/
881
- messageDesc(file_settings_v1_settings, 123);
811
+ messageDesc(file_settings_v1_settings, 113);
882
812
 
883
813
  /**
884
814
  * Describes the message settings.v1.ResolveNoteResponse.
885
815
  * Use `create(ResolveNoteResponseSchema)` to create a new message.
886
816
  */
887
817
  export const ResolveNoteResponseSchema = /*@__PURE__*/
888
- messageDesc(file_settings_v1_settings, 124);
818
+ messageDesc(file_settings_v1_settings, 114);
889
819
 
890
820
  /**
891
821
  * Describes the message settings.v1.UnresolveNoteRequest.
892
822
  * Use `create(UnresolveNoteRequestSchema)` to create a new message.
893
823
  */
894
824
  export const UnresolveNoteRequestSchema = /*@__PURE__*/
895
- messageDesc(file_settings_v1_settings, 125);
825
+ messageDesc(file_settings_v1_settings, 115);
896
826
 
897
827
  /**
898
828
  * Describes the message settings.v1.UnresolveNoteResponse.
899
829
  * Use `create(UnresolveNoteResponseSchema)` to create a new message.
900
830
  */
901
831
  export const UnresolveNoteResponseSchema = /*@__PURE__*/
902
- messageDesc(file_settings_v1_settings, 126);
832
+ messageDesc(file_settings_v1_settings, 116);
903
833
 
904
834
  /**
905
835
  * Describes the message settings.v1.SearchNotesRequest.
906
836
  * Use `create(SearchNotesRequestSchema)` to create a new message.
907
837
  */
908
838
  export const SearchNotesRequestSchema = /*@__PURE__*/
909
- messageDesc(file_settings_v1_settings, 127);
839
+ messageDesc(file_settings_v1_settings, 117);
910
840
 
911
841
  /**
912
842
  * Describes the message settings.v1.SearchNotesResponse.
913
843
  * Use `create(SearchNotesResponseSchema)` to create a new message.
914
844
  */
915
845
  export const SearchNotesResponseSchema = /*@__PURE__*/
916
- messageDesc(file_settings_v1_settings, 128);
846
+ messageDesc(file_settings_v1_settings, 118);
917
847
 
918
848
  /**
919
849
  * Describes the message settings.v1.MarkMentionsSeenRequest.
920
850
  * Use `create(MarkMentionsSeenRequestSchema)` to create a new message.
921
851
  */
922
852
  export const MarkMentionsSeenRequestSchema = /*@__PURE__*/
923
- messageDesc(file_settings_v1_settings, 129);
853
+ messageDesc(file_settings_v1_settings, 119);
924
854
 
925
855
  /**
926
856
  * Describes the message settings.v1.MarkMentionsSeenResponse.
927
857
  * Use `create(MarkMentionsSeenResponseSchema)` to create a new message.
928
858
  */
929
859
  export const MarkMentionsSeenResponseSchema = /*@__PURE__*/
930
- messageDesc(file_settings_v1_settings, 130);
860
+ messageDesc(file_settings_v1_settings, 120);
931
861
 
932
862
  /**
933
863
  * Describes the message settings.v1.GetContextDimensionByKeyRequest.
934
864
  * Use `create(GetContextDimensionByKeyRequestSchema)` to create a new message.
935
865
  */
936
866
  export const GetContextDimensionByKeyRequestSchema = /*@__PURE__*/
937
- messageDesc(file_settings_v1_settings, 131);
867
+ messageDesc(file_settings_v1_settings, 121);
938
868
 
939
869
  /**
940
870
  * Describes the message settings.v1.GetContextDimensionByKeyResponse.
941
871
  * Use `create(GetContextDimensionByKeyResponseSchema)` to create a new message.
942
872
  */
943
873
  export const GetContextDimensionByKeyResponseSchema = /*@__PURE__*/
944
- messageDesc(file_settings_v1_settings, 132);
874
+ messageDesc(file_settings_v1_settings, 122);
945
875
 
946
876
  /**
947
877
  * Describes the message settings.v1.GetDefaultLocaleRequest.
948
878
  * Use `create(GetDefaultLocaleRequestSchema)` to create a new message.
949
879
  */
950
880
  export const GetDefaultLocaleRequestSchema = /*@__PURE__*/
951
- messageDesc(file_settings_v1_settings, 133);
881
+ messageDesc(file_settings_v1_settings, 123);
952
882
 
953
883
  /**
954
884
  * Describes the message settings.v1.GetDefaultLocaleResponse.
955
885
  * Use `create(GetDefaultLocaleResponseSchema)` to create a new message.
956
886
  */
957
887
  export const GetDefaultLocaleResponseSchema = /*@__PURE__*/
958
- messageDesc(file_settings_v1_settings, 134);
888
+ messageDesc(file_settings_v1_settings, 124);
959
889
 
960
890
  /**
961
891
  * Describes the message settings.v1.GetLocaleByCodeRequest.
962
892
  * Use `create(GetLocaleByCodeRequestSchema)` to create a new message.
963
893
  */
964
894
  export const GetLocaleByCodeRequestSchema = /*@__PURE__*/
965
- messageDesc(file_settings_v1_settings, 135);
895
+ messageDesc(file_settings_v1_settings, 125);
966
896
 
967
897
  /**
968
898
  * Describes the message settings.v1.GetLocaleByCodeResponse.
969
899
  * Use `create(GetLocaleByCodeResponseSchema)` to create a new message.
970
900
  */
971
901
  export const GetLocaleByCodeResponseSchema = /*@__PURE__*/
972
- messageDesc(file_settings_v1_settings, 136);
902
+ messageDesc(file_settings_v1_settings, 126);
973
903
 
974
904
  /**
975
905
  * Describes the message settings.v1.GetDefaultVariantCatalogEntryRequest.
976
906
  * Use `create(GetDefaultVariantCatalogEntryRequestSchema)` to create a new message.
977
907
  */
978
908
  export const GetDefaultVariantCatalogEntryRequestSchema = /*@__PURE__*/
979
- messageDesc(file_settings_v1_settings, 137);
909
+ messageDesc(file_settings_v1_settings, 127);
980
910
 
981
911
  /**
982
912
  * Describes the message settings.v1.GetDefaultVariantCatalogEntryResponse.
983
913
  * Use `create(GetDefaultVariantCatalogEntryResponseSchema)` to create a new message.
984
914
  */
985
915
  export const GetDefaultVariantCatalogEntryResponseSchema = /*@__PURE__*/
986
- messageDesc(file_settings_v1_settings, 138);
916
+ messageDesc(file_settings_v1_settings, 128);
987
917
 
988
918
  /**
989
919
  * Describes the message settings.v1.DeleteSettingRequest.
990
920
  * Use `create(DeleteSettingRequestSchema)` to create a new message.
991
921
  */
992
922
  export const DeleteSettingRequestSchema = /*@__PURE__*/
993
- messageDesc(file_settings_v1_settings, 139);
923
+ messageDesc(file_settings_v1_settings, 129);
994
924
 
995
925
  /**
996
926
  * Describes the message settings.v1.DeleteSettingResponse.
997
927
  * Use `create(DeleteSettingResponseSchema)` to create a new message.
998
928
  */
999
929
  export const DeleteSettingResponseSchema = /*@__PURE__*/
1000
- messageDesc(file_settings_v1_settings, 140);
930
+ messageDesc(file_settings_v1_settings, 130);
1001
931
 
1002
932
  /**
1003
933
  * Describes the message settings.v1.DeleteSettingsByCategoryRequest.
1004
934
  * Use `create(DeleteSettingsByCategoryRequestSchema)` to create a new message.
1005
935
  */
1006
936
  export const DeleteSettingsByCategoryRequestSchema = /*@__PURE__*/
1007
- messageDesc(file_settings_v1_settings, 141);
937
+ messageDesc(file_settings_v1_settings, 131);
1008
938
 
1009
939
  /**
1010
940
  * Describes the message settings.v1.DeleteSettingsByCategoryResponse.
1011
941
  * Use `create(DeleteSettingsByCategoryResponseSchema)` to create a new message.
1012
942
  */
1013
943
  export const DeleteSettingsByCategoryResponseSchema = /*@__PURE__*/
1014
- messageDesc(file_settings_v1_settings, 142);
944
+ messageDesc(file_settings_v1_settings, 132);
1015
945
 
1016
946
  /**
1017
947
  * Describes the message settings.v1.BulkSetSettingsRequest.
1018
948
  * Use `create(BulkSetSettingsRequestSchema)` to create a new message.
1019
949
  */
1020
950
  export const BulkSetSettingsRequestSchema = /*@__PURE__*/
1021
- messageDesc(file_settings_v1_settings, 143);
951
+ messageDesc(file_settings_v1_settings, 133);
1022
952
 
1023
953
  /**
1024
954
  * Describes the message settings.v1.BulkSetSettingsResponse.
1025
955
  * Use `create(BulkSetSettingsResponseSchema)` to create a new message.
1026
956
  */
1027
957
  export const BulkSetSettingsResponseSchema = /*@__PURE__*/
1028
- messageDesc(file_settings_v1_settings, 144);
958
+ messageDesc(file_settings_v1_settings, 134);
1029
959
 
1030
960
  /**
1031
961
  * Describes the message settings.v1.EnsureDefaultVariantCatalogEntryRequest.
1032
962
  * Use `create(EnsureDefaultVariantCatalogEntryRequestSchema)` to create a new message.
1033
963
  */
1034
964
  export const EnsureDefaultVariantCatalogEntryRequestSchema = /*@__PURE__*/
1035
- messageDesc(file_settings_v1_settings, 145);
965
+ messageDesc(file_settings_v1_settings, 135);
1036
966
 
1037
967
  /**
1038
968
  * Describes the message settings.v1.EnsureDefaultVariantCatalogEntryResponse.
1039
969
  * Use `create(EnsureDefaultVariantCatalogEntryResponseSchema)` to create a new message.
1040
970
  */
1041
971
  export const EnsureDefaultVariantCatalogEntryResponseSchema = /*@__PURE__*/
1042
- messageDesc(file_settings_v1_settings, 146);
972
+ messageDesc(file_settings_v1_settings, 136);
1043
973
 
1044
974
  /**
1045
975
  * Describes the message settings.v1.GetProjectSchemaRequest.
1046
976
  * Use `create(GetProjectSchemaRequestSchema)` to create a new message.
1047
977
  */
1048
978
  export const GetProjectSchemaRequestSchema = /*@__PURE__*/
1049
- messageDesc(file_settings_v1_settings, 147);
979
+ messageDesc(file_settings_v1_settings, 137);
1050
980
 
1051
981
  /**
1052
982
  * Describes the message settings.v1.ProjectSchemaModel.
1053
983
  * Use `create(ProjectSchemaModelSchema)` to create a new message.
1054
984
  */
1055
985
  export const ProjectSchemaModelSchema = /*@__PURE__*/
1056
- messageDesc(file_settings_v1_settings, 148);
986
+ messageDesc(file_settings_v1_settings, 138);
1057
987
 
1058
988
  /**
1059
989
  * Describes the message settings.v1.ProjectSchemaContextDimension.
1060
990
  * Use `create(ProjectSchemaContextDimensionSchema)` to create a new message.
1061
991
  */
1062
992
  export const ProjectSchemaContextDimensionSchema = /*@__PURE__*/
1063
- messageDesc(file_settings_v1_settings, 149);
993
+ messageDesc(file_settings_v1_settings, 139);
1064
994
 
1065
995
  /**
1066
996
  * Describes the message settings.v1.ProjectSchemaAuthProvider.
1067
997
  * Use `create(ProjectSchemaAuthProviderSchema)` to create a new message.
1068
998
  */
1069
999
  export const ProjectSchemaAuthProviderSchema = /*@__PURE__*/
1070
- messageDesc(file_settings_v1_settings, 150);
1000
+ messageDesc(file_settings_v1_settings, 140);
1071
1001
 
1072
1002
  /**
1073
1003
  * Describes the message settings.v1.ProjectSchemaOperation.
1074
1004
  * Use `create(ProjectSchemaOperationSchema)` to create a new message.
1075
1005
  */
1076
1006
  export const ProjectSchemaOperationSchema = /*@__PURE__*/
1077
- messageDesc(file_settings_v1_settings, 151);
1007
+ messageDesc(file_settings_v1_settings, 141);
1078
1008
 
1079
1009
  /**
1080
1010
  * Describes the message settings.v1.ProjectSchemaSegment.
1081
1011
  * Use `create(ProjectSchemaSegmentSchema)` to create a new message.
1082
1012
  */
1083
1013
  export const ProjectSchemaSegmentSchema = /*@__PURE__*/
1084
- messageDesc(file_settings_v1_settings, 152);
1014
+ messageDesc(file_settings_v1_settings, 142);
1085
1015
 
1086
1016
  /**
1087
1017
  * Describes the message settings.v1.ProjectSchemaExperiment.
1088
1018
  * Use `create(ProjectSchemaExperimentSchema)` to create a new message.
1089
1019
  */
1090
1020
  export const ProjectSchemaExperimentSchema = /*@__PURE__*/
1091
- messageDesc(file_settings_v1_settings, 153);
1021
+ messageDesc(file_settings_v1_settings, 143);
1092
1022
 
1093
1023
  /**
1094
1024
  * Describes the message settings.v1.ProjectSchemaProfileSchema.
1095
1025
  * Use `create(ProjectSchemaProfileSchemaSchema)` to create a new message.
1096
1026
  */
1097
1027
  export const ProjectSchemaProfileSchemaSchema = /*@__PURE__*/
1098
- messageDesc(file_settings_v1_settings, 154);
1028
+ messageDesc(file_settings_v1_settings, 144);
1099
1029
 
1100
1030
  /**
1101
1031
  * Describes the message settings.v1.GetProjectSchemaResponse.
1102
1032
  * Use `create(GetProjectSchemaResponseSchema)` to create a new message.
1103
1033
  */
1104
1034
  export const GetProjectSchemaResponseSchema = /*@__PURE__*/
1105
- messageDesc(file_settings_v1_settings, 155);
1035
+ messageDesc(file_settings_v1_settings, 145);
1106
1036
 
1107
1037
  /**
1108
1038
  * Describes the enum settings.v1.ShareResourceType.