@streamlayer/sl-eslib 5.239.1 → 5.241.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@streamlayer/sl-eslib",
3
- "version": "5.239.1",
3
+ "version": "5.241.0",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -2275,6 +2275,29 @@ export declare type QuestionAi = Message<"streamlayer.interactive.QuestionAi"> &
2275
2275
  */
2276
2276
  export declare const QuestionAiSchema: GenMessage<QuestionAi>;
2277
2277
 
2278
+ /**
2279
+ * @generated from message streamlayer.interactive.AbstractTriggerState
2280
+ */
2281
+ export declare type AbstractTriggerState = Message<"streamlayer.interactive.AbstractTriggerState"> & {
2282
+ /**
2283
+ * @generated from field: optional bool disabled = 1;
2284
+ */
2285
+ disabled?: boolean;
2286
+
2287
+ /**
2288
+ * "non-nfl-event" | "incomplete-roster"
2289
+ *
2290
+ * @generated from field: optional string reason = 2;
2291
+ */
2292
+ reason?: string;
2293
+ };
2294
+
2295
+ /**
2296
+ * Describes the message streamlayer.interactive.AbstractTriggerState.
2297
+ * Use `create(AbstractTriggerStateSchema)` to create a new message.
2298
+ */
2299
+ export declare const AbstractTriggerStateSchema: GenMessage<AbstractTriggerState>;
2300
+
2278
2301
  /**
2279
2302
  * @generated from message streamlayer.interactive.Question
2280
2303
  */
@@ -2462,6 +2485,11 @@ export declare type Question = Message<"streamlayer.interactive.Question"> & {
2462
2485
  * @generated from field: streamlayer.interactive.CardFormat format = 36;
2463
2486
  */
2464
2487
  format: CardFormat;
2488
+
2489
+ /**
2490
+ * @generated from field: optional streamlayer.interactive.AbstractTriggerState abstract_trigger_state = 37;
2491
+ */
2492
+ abstractTriggerState?: AbstractTriggerState;
2465
2493
  };
2466
2494
 
2467
2495
  /**
@@ -11,7 +11,7 @@ import { file_streamlayer_social_twitter } from "../social/twitter_pb.js";
11
11
  * Describes the file streamlayer/interactive/interactive.common.proto.
12
12
  */
13
13
  export const file_streamlayer_interactive_interactive_common = /*@__PURE__*/
14
- fileDesc("CjBzdHJlYW1sYXllci9pbnRlcmFjdGl2ZS9pbnRlcmFjdGl2ZS5jb21tb24ucHJvdG8SF3N0cmVhbWxheWVyLmludGVyYWN0aXZlIlQKCkNsb3NlVGltZXISNQoEYXV0bxgBIAEoDjInLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLkNsb3NlVGltZXJBdXRvEg8KB3NlY29uZHMYAiABKAUijAIKElF1ZXN0aW9uQXBwZWFyYW5jZRI3CgZsYXlvdXQYASABKA4yJy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5RdWVzdGlvbkxheW91dBI3CgZpbWFnZXMYAiABKA4yJy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5RdWVzdGlvbkltYWdlcxIVCg1wcmltYXJ5X2NvbG9yGAMgASgJEkQKCHBvc2l0aW9uGAQgASgOMikuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUXVlc3Rpb25Qb3NpdGlvbkICGAFIAIgBARIaChJhdXRvX2hpZGVfaW50ZXJ2YWwYBSABKARCCwoJX3Bvc2l0aW9uIs4CCgtTcG9uc29yc2hpcBIMCgRsb2dvGAEgASgJEhEKBG5hbWUYAiABKAlIAIgBARIZCgxjbGFzc2ljX2xvZ28YAyABKAlIAYgBARIYCgtjZW50ZXJfbG9nbxgEIAEoCUgCiAEBElAKDWxvZ29fcG9zaXRpb24YBSABKA4yNC5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5Ob3RpZmljYXRpb25TcG9uc29yTG9nb01vZGVIA4gBARJGChB1c2VfZ2VuZXJhbF9sb2dvGAYgASgOMicuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuVXNlR2VuZXJhbExvZ29IBIgBAUIHCgVfbmFtZUIPCg1fY2xhc3NpY19sb2dvQg4KDF9jZW50ZXJfbG9nb0IQCg5fbG9nb19wb3NpdGlvbkITChFfdXNlX2dlbmVyYWxfbG9nbyLNAgoVUHJvbW90aW9uTm90aWZpY2F0aW9uEhQKDHNwb25zb3JfbG9nbxgBIAEoCRJPChFzcG9uc29yX2xvZ29fbW9kZRgCIAEoDjI0LnN0cmVhbWxheWVyLmludGVyYWN0aXZlLk5vdGlmaWNhdGlvblNwb25zb3JMb2dvTW9kZRI2CgpjdGFfYnV0dG9uGAMgASgLMiIuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuQ1RBQnV0dG9uElMKDmltYWdlX3Bvc2l0aW9uGAQgASgOMjsuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuTm90aWZpY2F0aW9uUHJvbW90aW9uSW1hZ2VQb3NpdGlvbhJACgRtb2RlGAUgASgOMjIuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuTm90aWZpY2F0aW9uUHJvbW90aW9uTW9kZSL8AwoUUXVlc3Rpb25Ob3RpZmljYXRpb24SDQoFdGl0bGUYASABKAkSDQoFaW1hZ2UYAiABKAkSFwoPaW5kaWNhdG9yX2NvbG9yGAMgASgJEj4KDmltYWdlX3Bvc2l0aW9uGAQgASgOMiYuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuSW1hZ2VQb3NpdGlvbhIMCgRib2R5GAUgASgJEjsKCmltYWdlX21vZGUYBiABKA4yJy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5RdWVzdGlvbkltYWdlcxJBCglwcm9tb3Rpb24YByABKAsyLi5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5Qcm9tb3Rpb25Ob3RpZmljYXRpb24SPQoHZW5hYmxlZBgIIAEoDjIsLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLk5vdGlmaWNhdGlvbkVuYWJsZWQSTwoRdXNlX2NvbnRlbnRfbWVkaWEYCSABKA4yNC5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5Ob3RpZmljYXRpb25Vc2VDb250ZW50TWVkaWESTwoRdXNlX2NvbnRlbnRfdGV4dHMYCiABKA4yNC5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5Ob3RpZmljYXRpb25Vc2VDb250ZW50VGV4dHMiWQoOUXVlc3Rpb25BbnN3ZXISCgoCaWQYASABKAkSDAoEdGV4dBgCIAEoCRIMCgRpY29uGAMgASgJEg8KB2NvcnJlY3QYBCABKAgSDgoGcG9pbnRzGAUgASgNIr8BChZFeHRlbmRlZFF1ZXN0aW9uQW5zd2VyEgoKAmlkGAEgASgJEgwKBHRleHQYAiABKAkSDAoEaWNvbhgDIAEoCRIPCgdjb3JyZWN0GAQgASgIEg4KBnBvaW50cxgFIAEoDRIWCgpwZXJjZW50YWdlGAYgASgNQgIYARIRCgl5b3Vfdm90ZWQYByABKAgSGgoScGVyY2VudGFnZV9kZWNpbWFsGAggASgBEhUKDXBvaW50c19lYXJuZWQYCSABKA0iNAoOQW5zd2VyRmVlZGJhY2sSDQoFdGl0bGUYASABKAkSEwoLZGVzY3JpcHRpb24YAiABKAkiOgoIRmlsZUxpbmsSCgoCaWQYASABKAkSCwoDdXJsGAIgASgJEhUKDXRodW1ibmFpbF91cmwYAyABKAkiJQoHV2ViTGluaxINCgVsYWJlbBgBIAEoCRILCgN1cmwYAiABKAkioAEKCUNUQUJ1dHRvbhINCgVsYWJlbBgBIAEoCRINCgVjb2xvchgCIAEoCRIXCgp0ZXh0X2NvbG9yGAMgASgJSACIAQESEAoIY3RhX2ljb24YBCABKAkSOwoNY3RhX2ljb25fbW9kZRgFIAEoDjIkLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLkN0YUljb25Nb2RlQg0KC190ZXh0X2NvbG9yIqoECgZCYW5uZXISEQoJaW1hZ2VfdXJsGAEgASgJEgsKA3VybBgCIAEoCRI2CgpjdGFfYnV0dG9uGAMgASgLMiIuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuQ1RBQnV0dG9uEjAKBXZpZGVvGAQgASgLMiEuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuRmlsZUxpbmsSEQoEYm9keRgFIAEoCUgAiAEBElQKGGFuYWx5dGljc190b3BpY19zdWJfdHlwZRgGIAEoDjItLnN0cmVhbWxheWVyLmFuYWx5dGljcy52MS5jb21tb24uVG9waWNTdWJUeXBlSAGIAQESEgoFdGl0bGUYByABKAlIAogBARIWCglzdWJfdGl0bGUYCCABKAlIA4gBARJYCg5pbWFnZV9wb3NpdGlvbhgJIAEoDjI7LnN0cmVhbWxheWVyLmludGVyYWN0aXZlLk5vdGlmaWNhdGlvblByb21vdGlvbkltYWdlUG9zaXRpb25IBIgBARJFCgxtZWRpYV9mb3JtYXQYCiABKA4yKi5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5CYW5uZXJNZWRpYUZvcm1hdEgFiAEBQgcKBV9ib2R5QhsKGV9hbmFseXRpY3NfdG9waWNfc3ViX3R5cGVCCAoGX3RpdGxlQgwKCl9zdWJfdGl0bGVCEQoPX2ltYWdlX3Bvc2l0aW9uQg8KDV9tZWRpYV9mb3JtYXQiLAoGQWRMb29wEhUKCGludGVydmFsGAEgASgFSACIAQFCCwoJX2ludGVydmFsImQKBVByaWNlEg0KBXByaWNlGAEgASgJEjgKDHNhbGVfZW5hYmxlZBgCIAEoDjIiLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlNhbGVQcmljZRISCgpzYWxlX3ByaWNlGAMgASgJIiQKBFNpemUSDQoFbGFiZWwYASABKAkSDQoFdmFsdWUYAiABKAkiagoHUHJvZHVjdBIKCgJpZBgBIAEoCRIRCglpbWFnZV91cmwYAiABKAkSDQoFdGl0bGUYAyABKAkSEwoLZGVzY3JpcHRpb24YBCABKAkSDQoFY29sb3IYBSABKAkSDQoFYnJhbmQYBiABKAkipwMKEkdlbmVyYWxUYWJNZXRhZGF0YRIcCg9hZHZlcnRpc2VyX2xvZ28YASABKAlIAIgBARIXCg9hZHZlcnRpc2VyX25hbWUYAiABKAkSGgoNY2FtcGFpZ25fbmFtZRgDIAEoCUgBiAEBEjcKCGFkX2dyb3VwGAQgASgLMiAuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuQWRHcm91cEgCiAEBEj8KDHRyaWdnZXJfdHlwZRgFIAEoDjIkLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlRyaWdnZXJUeXBlSAOIAQESDAoEdGFncxgJIAMoCRIoChthZHZlcnRpc2VyX3RyYW5zcGFyZW50X2xvZ28YCiABKAlIBIgBARIYCgthZF9ncm91cF9pZBgLIAEoBUgFiAEBQhIKEF9hZHZlcnRpc2VyX2xvZ29CEAoOX2NhbXBhaWduX25hbWVCCwoJX2FkX2dyb3VwQg8KDV90cmlnZ2VyX3R5cGVCHgocX2FkdmVydGlzZXJfdHJhbnNwYXJlbnRfbG9nb0IOCgxfYWRfZ3JvdXBfaWQiwQEKB0FkR3JvdXASDAoEbmFtZRgBIAEoCRI6Cg5nZW9fdGFyZ2V0aW5ncxgCIAMoCzIiLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLkdlb1RhcmdldBIbChNhdWRpZW5jZV90YXJnZXRpbmdzGAMgAygJEkMKEWRldmljZV90YXJnZXRpbmdzGAQgAygOMiguc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuRGV2aWNlVGFyZ2V0aW5nEgoKAmlkGAUgASgFIicKCUdlb1RhcmdldBIMCgRjb2RlGAEgASgJEgwKBG5hbWUYAiABKAki0wIKCVByb21vdGlvbhJBCgZmb3JtYXQYASABKA4yKC5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5Qcm9tb3Rpb25Gb3JtYXRCAhgBSACIAQESLwoGYmFubmVyGAIgASgLMh8uc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuQmFubmVyEkkKFGdlbmVyYWxfdGFiX21ldGFkYXRhGAMgASgLMisuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuR2VuZXJhbFRhYk1ldGFkYXRhEjkKB2FkX3VuaXQYBCABKA4yHy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5BZFVuaXRCAhgBSAGIAQESNQoHc3BvbnNvchgFIAEoCzIkLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlNwb25zb3JzaGlwQgkKB19mb3JtYXRCCgoIX2FkX3VuaXQiPgoPQmFja2dyb3VuZEltYWdlEhUKDWxhbmRzY2FwZV91cmwYASABKAkSFAoMcG9ydHJhaXRfdXJsGAIgASgJIrQCCgpORkxQcm9kdWN0EgoKAmlkGAEgASgJEg0KBXRpdGxlGAIgASgJEhIKCnNhbGVfcHJpY2UYAyABKAESDQoFcHJpY2UYBCABKAESDAoEbGluaxgFIAEoCRISCgppbWFnZV9saW5rGAYgASgJEgwKBGd0aW4YByABKAkSHwoXZ29vZ2xlX3Byb2R1Y3RfY2F0ZWdvcnkYCCABKAkSDgoGZ2VuZGVyGAkgASgJEhMKC2Rlc2NyaXB0aW9uGAogASgJEhEKCWNvbmRpdGlvbhgLIAEoCRINCgVjb2xvchgMIAEoCRINCgVicmFuZBgNIAEoCRIUCgxhdmFpbGFiaWxpdHkYDiABKAkSDgoGbGVhZ3VlGA8gASgJEgwKBHRlYW0YECABKAkSDQoFc2l6ZXMYESADKAkinEcKD1F1ZXN0aW9uT3B0aW9ucxJECgRwb2xsGAEgASgLMjQuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUXVlc3Rpb25PcHRpb25zLlBvbGxPcHRpb25zSAASSAoGdHJpdmlhGAIgASgLMjYuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUXVlc3Rpb25PcHRpb25zLlRyaXZpYU9wdGlvbnNIABJQCgpwcmVkaWN0aW9uGAMgASgLMjouc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUXVlc3Rpb25PcHRpb25zLlByZWRpY3Rpb25PcHRpb25zSAASSgoHZmFjdG9pZBgEIAEoCzI3LnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlF1ZXN0aW9uT3B0aW9ucy5GYWN0b2lkT3B0aW9uc0gAEkYKBXR3ZWV0GAUgASgLMjUuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUXVlc3Rpb25PcHRpb25zLlR3ZWV0T3B0aW9uc0gAEk4KCXByb21vdGlvbhgGIAEoCzI5LnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlF1ZXN0aW9uT3B0aW9ucy5Qcm9tb3Rpb25PcHRpb25zSAAaDQoLUG9sbE9wdGlvbnMavAEKDVRyaXZpYU9wdGlvbnMSQQoQY29ycmVjdF9mZWVkYmFjaxgBIAEoCzInLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLkFuc3dlckZlZWRiYWNrEkMKEmluY29ycmVjdF9mZWVkYmFjaxgCIAEoCzInLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLkFuc3dlckZlZWRiYWNrEg4KBnBvaW50cxgDIAEoBBITCgtleHBsYW5hdGlvbhgEIAEoCRqbAQoRUHJlZGljdGlvbk9wdGlvbnMSQQoQY29ycmVjdF9mZWVkYmFjaxgBIAEoCzInLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLkFuc3dlckZlZWRiYWNrEkMKEmluY29ycmVjdF9mZWVkYmFjaxgCIAEoCzInLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLkFuc3dlckZlZWRiYWNrGtgECg5GYWN0b2lkT3B0aW9ucxINCgVpbWFnZRgBIAEoCRIMCgRib2R5GAIgASgJEjAKBXZpZGVvGAMgASgLMiEuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuRmlsZUxpbmsSMgoId2ViX2xpbmsYBCABKAsyIC5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5XZWJMaW5rEjsKCmltYWdlX21vZGUYBSABKA4yJy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5RdWVzdGlvbkltYWdlcxJHChN1c2VfYXNfbm90aWZpY2F0aW9uGAYgASgOMiouc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuVXNlQXNOb3RpZmljYXRpb24SPQoLY2xvc2VfdGltZXIYByABKAsyIy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5DbG9zZVRpbWVySACIAQESRAoPYXV0b19wbGF5X3ZpZGVvGAggASgOMiYuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuQXV0b1BsYXlWaWRlb0gBiAEBEjcKBG1vZGUYCSABKA4yKS5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5GYWN0b2lkTWVkaWFNb2RlEkYKEHBsYXlfdmlkZW9fbXV0ZWQYCiABKA4yJy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5QbGF5VmlkZW9NdXRlZEgCiAEBQg4KDF9jbG9zZV90aW1lckISChBfYXV0b19wbGF5X3ZpZGVvQhMKEV9wbGF5X3ZpZGVvX211dGVkGpwCCgxUd2VldE9wdGlvbnMSEQoJdHdlZXRfdXJsGAEgASgJEhAKCHR3ZWV0X2lkGAIgASgJElcKCnR3ZWV0X21ldGEYAyABKAsyQy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5RdWVzdGlvbk9wdGlvbnMuVHdlZXRPcHRpb25zLlR3ZWV0TWV0YWRhdGEajQEKDVR3ZWV0TWV0YWRhdGESDwoHYWNjb3VudBgBIAEoCRIYChBhY2NvdW50X3ZlcmlmaWVkGAIgASgIEhEKCWhhc19tZWRpYRgDIAEoCBIoCgV0d2VldBgEIAEoCzIZLnN0cmVhbWxheWVyLnNvY2lhbC5Ud2VldBIUCgxhY2NvdW50X25hbWUYBSABKAka3hMKCkdhbU9wdGlvbnMSEAoDZW52GAEgASgJSACIAQESFQoIZ2RmcF9yZXEYAiABKAlIAYgBARIPCgJpdRgDIAEoCUgCiAEBEhMKBm91dHB1dBgEIAEoCUgDiAEBEg8KAnN6GAUgASgJSASIAQESJAoXdW52aWV3ZWRfcG9zaXRpb25fc3RhcnQYBiABKAlIBYgBARIPCgdjaXVfc3pzGAcgAygJEhAKA3VybBgIIAEoCUgGiAEBEhwKD2Rlc2NyaXB0aW9uX3VybBgJIAEoCUgHiAEBEhcKCmNvcnJlbGF0b3IYCiABKAlICIgBARJYCgtjdXN0X3BhcmFtcxgLIAMoCzJDLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlF1ZXN0aW9uT3B0aW9ucy5HYW1PcHRpb25zLkN1c3RQYXJhbXNFbnRyeRISCgVwbGNtdBgMIAEoCUgJiAEBEhAKA3ZwYRgNIAEoCUgKiAEBEhMKBnZwbXV0ZRgOIAEoCUgLiAEBEhAKA3d0YRgPIAEoCUgMiAEBEhIKBWFjb25wGBAgASgJSA2IAQESFAoHYWRfcnVsZRgRIAEoCUgOiAEBEhQKB2FkX3R5cGUYEiABKAlID4gBARIPCgJobBgTIAEoCUgQiAEBEhAKA2R0aBgUIAEoCUgRiAEBEhEKBGdkcHIYFSABKAlIEogBARIZCgxnZHByX2NvbnNlbnQYFiABKAlIE4gBARIUCgdpYWJleGNsGBcgASgJSBSIAQESEAoDbGlwGBggASgISBWIAQESEAoDbHRkGBkgASgJSBaIAQESEQoEbm9mYhgaIAEoCUgXiAEBEhAKA25wYRgbIAEoCUgYiAEBEhMKBm9taWRfcBgcIAEoCUgZiAEBEhAKA3BwdBgdIAEoCUgaiAEBEhEKBHBwb3MYHiABKAlIG4gBARIRCgRwcGlkGB8gASgJSByIAQESEQoEc2NvchggIAEoCUgdiAEBEhUKCHNka19hcGlzGCEgASgJSB6IAQESEQoEc3NzcxgiIAEoCUgfiAEBEhIKBXNkbWF4GCMgASgJSCCIAQESEAoDc2lkGCQgASgJSCGIAQESEAoDcmRwGCUgASgJSCKIAQESGgoNYWRkdGxfY29uc2VudBgmIAEoCUgjiAEBEhIKBWFmdnN6GCcgASgJSCSIAQESFAoHYWxsY3VlcxgoIAEoCUgliAEBEhIKBWNtc2lkGCkgASgJSCaIAQESEAoDdmlkGCogASgJSCeIAQESFQoIZXhjbF9jYXQYKyABKAlIKIgBARIQCgNpcGQYLCABKAlIKYgBARIQCgNpcGUYLSABKAlIKogBARIcCg9tYXhfYWRfZHVyYXRpb24YLiABKAlIK4gBARIcCg9taW5fYWRfZHVyYXRpb24YLyABKAlILIgBARISCgVtcmlkeBgwIAEoCUgtiAEBEhEKBG1zaWQYMSABKAlILogBARIPCgJhbhgyIAEoCUgviAEBEhEKBHBtYWQYMyABKAlIMIgBARIRCgRwbW5kGDQgASgJSDGIAQESEQoEcG14ZBg1IAEoCUgyiAEBEhAKA3BvZBg2IAEoCUgziAEBEg8KAnBwGDcgASgJSDSIAQESEQoEcHBzahg4IAEoCUg1iAEBEhEKBHB0cGwYOSABKAlINogBARISCgVwdHBsbhg6IAEoCUg3iAEBEhEKBHB1YmYYOyABKAlIOIgBARIRCgRwdnRmGDwgASgJSDmIAQESEQoEcHZpZBg9IAEoCUg6iAEBEhMKBnB2aWRfcxg+IAEoCUg7iAEBEhEKBHJkaWQYPyABKAlIPIgBARITCgZpZHR5cGUYQCABKAlIPYgBARITCgZpc19sYXQYQSABKAlIPogBARIRCgR0ZmNkGEIgASgJSD+IAQESEAoDdHJ0GEMgASgJSECIAQESFQoIdmFkX3R5cGUYRCABKAlIQYgBARISCgV2aWRfZBhFIAEoCUhCiAEBEhIKBXZjb25wGEYgASgJSEOIAQESEAoDdnBpGEcgASgJSESIAQESEQoEdnBvcxhIIAEoCUhFiAEBEhEKBGltcGwYSSABKAlIRogBARIXCgp2YWRfZm9ybWF0GEogASgJSEeIAQESEwoGY2xpZW50GEsgASgJSEiIAQESIAoTdmlkZW9hZF9zdGFydF9kZWxheRhMIAEoCUhJiAEBEhkKDGdhbV9iYXNlX3VybBhNIAEoCUhKiAEBGjEKD0N1c3RQYXJhbXNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBQgYKBF9lbnZCCwoJX2dkZnBfcmVxQgUKA19pdUIJCgdfb3V0cHV0QgUKA19zekIaChhfdW52aWV3ZWRfcG9zaXRpb25fc3RhcnRCBgoEX3VybEISChBfZGVzY3JpcHRpb25fdXJsQg0KC19jb3JyZWxhdG9yQggKBl9wbGNtdEIGCgRfdnBhQgkKB192cG11dGVCBgoEX3d0YUIICgZfYWNvbnBCCgoIX2FkX3J1bGVCCgoIX2FkX3R5cGVCBQoDX2hsQgYKBF9kdGhCBwoFX2dkcHJCDwoNX2dkcHJfY29uc2VudEIKCghfaWFiZXhjbEIGCgRfbGlwQgYKBF9sdGRCBwoFX25vZmJCBgoEX25wYUIJCgdfb21pZF9wQgYKBF9wcHRCBwoFX3Bwb3NCBwoFX3BwaWRCBwoFX3Njb3JCCwoJX3Nka19hcGlzQgcKBV9zc3NzQggKBl9zZG1heEIGCgRfc2lkQgYKBF9yZHBCEAoOX2FkZHRsX2NvbnNlbnRCCAoGX2FmdnN6QgoKCF9hbGxjdWVzQggKBl9jbXNpZEIGCgRfdmlkQgsKCV9leGNsX2NhdEIGCgRfaXBkQgYKBF9pcGVCEgoQX21heF9hZF9kdXJhdGlvbkISChBfbWluX2FkX2R1cmF0aW9uQggKBl9tcmlkeEIHCgVfbXNpZEIFCgNfYW5CBwoFX3BtYWRCBwoFX3BtbmRCBwoFX3BteGRCBgoEX3BvZEIFCgNfcHBCBwoFX3Bwc2pCBwoFX3B0cGxCCAoGX3B0cGxuQgcKBV9wdWJmQgcKBV9wdnRmQgcKBV9wdmlkQgkKB19wdmlkX3NCBwoFX3JkaWRCCQoHX2lkdHlwZUIJCgdfaXNfbGF0QgcKBV90ZmNkQgYKBF90cnRCCwoJX3ZhZF90eXBlQggKBl92aWRfZEIICgZfdmNvbnBCBgoEX3ZwaUIHCgVfdnBvc0IHCgVfaW1wbEINCgtfdmFkX2Zvcm1hdEIJCgdfY2xpZW50QhYKFF92aWRlb2FkX3N0YXJ0X2RlbGF5Qg8KDV9nYW1fYmFzZV91cmwa/gYKC0FkQ2FtcGFpZ25zEk0KC2dhbV9vcHRpb25zGAEgASgLMjMuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUXVlc3Rpb25PcHRpb25zLkdhbU9wdGlvbnNIAIgBARIdCgxnYW1fYmFzZV91cmwYAiABKAlCAhgBSAGIAQESMAoHYWRfbG9vcBgDIAEoCzIfLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLkFkTG9vcBJOCgxpb3Nfc2V0dGluZ3MYBCABKAsyMy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5RdWVzdGlvbk9wdGlvbnMuR2FtT3B0aW9uc0gCiAEBElIKEGFuZHJvaWRfc2V0dGluZ3MYBSABKAsyMy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5RdWVzdGlvbk9wdGlvbnMuR2FtT3B0aW9uc0gDiAEBElYKFGRlc2t0b3Bfd2ViX3NldHRpbmdzGAYgASgLMjMuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUXVlc3Rpb25PcHRpb25zLkdhbU9wdGlvbnNIBIgBARJOCgxjdHZfc2V0dGluZ3MYByABKAsyMy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5RdWVzdGlvbk9wdGlvbnMuR2FtT3B0aW9uc0gFiAEBEhQKB2FkX25hbWUYCCABKAlIBogBARJLCgphZF9tYW5hZ2VyGAkgASgOMjIuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUXVlc3Rpb25PcHRpb25zLkFkTWFuYWdlckgHiAEBEnEKHnVzZV9wbGF0Zm9ybV9zcGVjaWZpY19zZXR0aW5ncxgKIAEoDjJELnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlF1ZXN0aW9uT3B0aW9ucy5Vc2VQbGF0Zm9ybVNwZWNpZmljU2V0dGluZ3NICIgBAUIOCgxfZ2FtX29wdGlvbnNCDwoNX2dhbV9iYXNlX3VybEIPCg1faW9zX3NldHRpbmdzQhMKEV9hbmRyb2lkX3NldHRpbmdzQhcKFV9kZXNrdG9wX3dlYl9zZXR0aW5nc0IPCg1fY3R2X3NldHRpbmdzQgoKCF9hZF9uYW1lQg0KC19hZF9tYW5hZ2VyQiEKH191c2VfcGxhdGZvcm1fc3BlY2lmaWNfc2V0dGluZ3Ma7wEKC1Nob3BPcHRpb25zEjEKB3Byb2R1Y3QYASABKAsyIC5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5Qcm9kdWN0Ei0KBXByaWNlGAIgASgLMh4uc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUHJpY2USNgoPYXZhaWxhYmxlX3NpemVzGAMgAygLMh0uc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuU2l6ZRIzCgZnZW5kZXIYBCABKA4yIy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5TaG9wR2VuZGVyEhEKCXN0b3JlX3VybBgFIAEoCRqUBAoOTkZMU2hvcE9wdGlvbnMSEgoKcHJvZHVjdF9pZBgBIAEoCRI5Cgdwcm9kdWN0GAIgASgLMiMuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuTkZMUHJvZHVjdEgAiAEBEl0KDG5vdGlmaWNhdGlvbhgDIAEoCzJHLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlF1ZXN0aW9uT3B0aW9ucy5ORkxTaG9wT3B0aW9ucy5ORkxOb3RpZmljYXRpb24axwIKD05GTE5vdGlmaWNhdGlvbhJLCg5tdWx0aWNvbXBvbmVudBgBIAEoDjIzLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLk5vdGlmaWNhdGlvbk11bHRpY29tcG9uZW50Em8KC2dhbWVfbW9tZW50GAIgASgLMlUuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUXVlc3Rpb25PcHRpb25zLk5GTFNob3BPcHRpb25zLk5GTE5vdGlmaWNhdGlvbi5ORkxHYW1lTW9tZW50SACIAQESDQoFdGl0bGUYAyABKAkSEwoLZGVzY3JpcHRpb24YBCABKAkaQgoNTkZMR2FtZU1vbWVudBINCgV0aXRsZRgBIAEoCRITCgtkZXNjcmlwdGlvbhgCIAEoCRINCgVtZWRpYRgDIAEoCUIOCgxfZ2FtZV9tb21lbnRCCgoIX3Byb2R1Y3QakQIKDlBhdXNlQWRPcHRpb25zEjAKB3FyX2NvZGUYASABKA4yHy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5RUkNvZGUSGgoNcXJfY29kZV9sYWJlbBgCIAEoCUgAiAEBEhgKC3FyX2NvZGVfdXJsGAMgASgJSAGIAQESNgoGbGF5b3V0GAQgASgOMiYuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUGF1c2VBZExheW91dBI9CgpzdGF0c190eXBlGAUgASgOMikuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUGF1c2VBZFN0YXRzVHlwZUIQCg5fcXJfY29kZV9sYWJlbEIOCgxfcXJfY29kZV91cmwawRQKEFByb21vdGlvbk9wdGlvbnMSNAoEdHlwZRgBIAEoDjImLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlByb21vdGlvblR5cGUSNQoHc3BvbnNvchgCIAEoCzIkLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlNwb25zb3JzaGlwEi8KBmJhbm5lchgDIAEoCzIfLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLkJhbm5lchJDCg1lbmFibGVfd2FsbGV0GAQgASgOMiguc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUHJvbW90aW9uV2FsbGV0QgIYARI6ChFhZGRpdGlvbmFsX2Jhbm5lchgFIAEoCzIfLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLkJhbm5lchISCgZjb3Vwb24YBiABKAlCAhgBEj0KCWxvZ29fbW9kZRgHIAEoDjIqLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlByb21vdGlvbkxvZ29Nb2RlEhYKCmNvdXBvbl96aXAYCCABKAlCAhgBEh4KEmNvdXBvbl9iYXJjb2RlX3VybBgJIAEoCUICGAESRgoLYnV0dG9uX3R5cGUYCiABKA4yLC5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5Qcm9tb3Rpb25CdXR0b25UeXBlSAGIAQESTwoMYWRfY2FtcGFpZ25zGAsgASgLMjQuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUXVlc3Rpb25PcHRpb25zLkFkQ2FtcGFpZ25zSAKIAQESPQoLY2xvc2VfdGltZXIYDCABKAsyIy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5DbG9zZVRpbWVySAOIAQESRAoPYXV0b19wbGF5X3ZpZGVvGA0gASgOMiYuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuQXV0b1BsYXlWaWRlb0gEiAEBEi8KHmJhY2tncm91bmRfaW1hZ2VfbGFuZHNjYXBlX3VybBgOIAEoCUICGAFIBYgBARIuCh1iYWNrZ3JvdW5kX2ltYWdlX3BvcnRyYWl0X3VybBgPIAEoCUICGAFIBogBARJtChVhZGRfdG9fd2FsbGV0X29wdGlvbnMYECABKAsyTC5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5RdWVzdGlvbk9wdGlvbnMuUHJvbW90aW9uT3B0aW9ucy5BZGRUb1dhbGxldE9wdGlvbnNIABJrChRzZW5kX3RvX3VzZXJfb3B0aW9ucxgRIAEoCzJLLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlF1ZXN0aW9uT3B0aW9ucy5Qcm9tb3Rpb25PcHRpb25zLlNlbmRUb1VzZXJPcHRpb25zSAASTwoMc2hvcF9vcHRpb25zGBIgASgLMjQuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUXVlc3Rpb25PcHRpb25zLlNob3BPcHRpb25zSAeIAQESVgoQbmZsX3Nob3Bfb3B0aW9ucxgTIAEoCzI3LnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlF1ZXN0aW9uT3B0aW9ucy5ORkxTaG9wT3B0aW9uc0gIiAEBEkYKEHBsYXlfdmlkZW9fbXV0ZWQYFCABKA4yJy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5QbGF5VmlkZW9NdXRlZEgJiAEBElYKEHBhdXNlX2FkX29wdGlvbnMYFSABKAsyNy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5RdWVzdGlvbk9wdGlvbnMuUGF1c2VBZE9wdGlvbnNICogBARJBCgZmb3JtYXQYFiABKA4yKC5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5Qcm9tb3Rpb25Gb3JtYXRCAhgBSAuIAQESZAoOYmFubmVyX29wdGlvbnMYFyABKAsyRy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5RdWVzdGlvbk9wdGlvbnMuUHJvbW90aW9uT3B0aW9ucy5CYW5uZXJPcHRpb25zSAyIAQEScQoVc3BvbnNvcl9mcmFtZV9vcHRpb25zGBggASgLMk0uc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUXVlc3Rpb25PcHRpb25zLlByb21vdGlvbk9wdGlvbnMuU3BvbnNvckZyYW1lT3B0aW9uc0gNiAEBGlQKEkFkZFRvV2FsbGV0T3B0aW9ucxIOCgZjb3Vwb24YASABKAkSEgoKY291cG9uX3ppcBgCIAEoCRIaChJjb3Vwb25fYmFyY29kZV91cmwYAyABKAka1AEKEVNlbmRUb1VzZXJPcHRpb25zEkMKEXVzZXJfYWNjb3VudF9pbmZvGAEgASgOMiguc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuVXNlckFjY291bnRJbmZvEiMKFnNlY29uZGFyeV9idXR0b25fbGFiZWwYAiABKAlIAIgBARIhChRzZWNvbmRhcnlfYnV0dG9uX3VybBgDIAEoCUgBiAEBQhkKF19zZWNvbmRhcnlfYnV0dG9uX2xhYmVsQhcKFV9zZWNvbmRhcnlfYnV0dG9uX3VybBqIAQoNQmFubmVyT3B0aW9ucxI5Cghwb3NpdGlvbhgBIAEoDjInLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLkJhbm5lclBvc2l0aW9uEjwKCm1lZGlhX3R5cGUYAiABKA4yKC5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5CYW5uZXJNZWRpYVR5cGUa5gEKE1Nwb25zb3JGcmFtZU9wdGlvbnMSTgoQYnV0dG9uX2FsaWdubWVudBgBIAEoDjI0LnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlNwb25zb3JGcmFtZUJ1dHRvbkFsaWdubWVudBIhChlwb3J0cmFpdF9ncmFkaWVudF9vdmVybGF5GAIgASgIEkcKEGJhY2tncm91bmRfaW1hZ2UYAyABKAsyKC5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5CYWNrZ3JvdW5kSW1hZ2VIAIgBAUITChFfYmFja2dyb3VuZF9pbWFnZUIQCg5idXR0b25fb3B0aW9uc0IOCgxfYnV0dG9uX3R5cGVCDwoNX2FkX2NhbXBhaWduc0IOCgxfY2xvc2VfdGltZXJCEgoQX2F1dG9fcGxheV92aWRlb0IhCh9fYmFja2dyb3VuZF9pbWFnZV9sYW5kc2NhcGVfdXJsQiAKHl9iYWNrZ3JvdW5kX2ltYWdlX3BvcnRyYWl0X3VybEIPCg1fc2hvcF9vcHRpb25zQhMKEV9uZmxfc2hvcF9vcHRpb25zQhMKEV9wbGF5X3ZpZGVvX211dGVkQhMKEV9wYXVzZV9hZF9vcHRpb25zQgkKB19mb3JtYXRCEQoPX2Jhbm5lcl9vcHRpb25zQhgKFl9zcG9uc29yX2ZyYW1lX29wdGlvbnMibAoJQWRNYW5hZ2VyEhQKEEFEX01BTkFHRVJfVU5TRVQQABIXChNBRF9NQU5BR0VSX1BVQk1BVElDEAESFgoSQURfTUFOQUdFUl9NQUdOSVRFEAISGAoUQURfTUFOQUdFUl9HT09HTEVfQUQQAyKgAQobVXNlUGxhdGZvcm1TcGVjaWZpY1NldHRpbmdzEigKJFVTRV9QTEFURk9STV9TUEVDSUZJQ19TRVRUSU5HU19VTlNFVBAAEioKJlVTRV9QTEFURk9STV9TUEVDSUZJQ19TRVRUSU5HU19FTkFCTEVEEAESKwonVVNFX1BMQVRGT1JNX1NQRUNJRklDX1NFVFRJTkdTX0RJU0FCTEVEEAJCCQoHb3B0aW9ucyI4CgNUYWcSCgoCaWQYASABKAkSDQoFbGFiZWwYAiABKAkSFgoObGFzdF91c2VkX3RpbWUYAyABKAQiHgoKUXVlc3Rpb25BaRIQCgh2ZXJpZmllZBgBIAEoCCKSDgoIUXVlc3Rpb24SCgoCaWQYASABKAkSMwoEdHlwZRgCIAEoDjIlLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlF1ZXN0aW9uVHlwZRIUCgdzdWJqZWN0GAMgASgJSACIAQESOQoHb3B0aW9ucxgEIAEoCzIoLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlF1ZXN0aW9uT3B0aW9ucxI/CgphcHBlYXJhbmNlGAUgASgLMisuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUXVlc3Rpb25BcHBlYXJhbmNlEjkKC3Nwb25zb3JzaGlwGAYgASgLMiQuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuU3BvbnNvcnNoaXASQwoMbm90aWZpY2F0aW9uGAcgASgLMi0uc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUXVlc3Rpb25Ob3RpZmljYXRpb24SOAoHYW5zd2VycxgIIAMoCzInLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlF1ZXN0aW9uQW5zd2VyEjcKBnN0YXR1cxgJIAEoDjInLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlF1ZXN0aW9uU3RhdHVzEhUKCHBvc2l0aW9uGAogASgNSAGIAQESFQoNbWFya2V0X2Nsb3NlZBgLIAEoCBIUCgxhY3RpdmF0ZWRfYXQYDCABKAkSFQoNYW5zd2VyX3NldF9hdBgNIAEoCRJDCglvdmVycmlkZXMYDiADKAsyMC5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5RdWVzdGlvbi5PdmVycmlkZXNFbnRyeRIQCghldmVudF9pZBgPIAEoCRI0ChBzdHJlYW1fdGltZXN0YW1wGBAgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIqCgR0YWdzGBEgAygLMhwuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuVGFnEkoKFGJ5cGFzc19ub3RpZmljYXRpb25zGBIgASgLMiwuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuQnlwYXNzTm90aWZpY2F0aW9ucxIRCglpbXBvcnRfaWQYEyABKAkSJQoYYWN0aXZhdGlvbl90cmlnZ2VyX2NvdW50GBQgASgNSAKIAQESNwoGc291cmNlGBUgASgOMicuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUXVlc3Rpb25Tb3VyY2USLwoCYWkYFiABKAsyIy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5RdWVzdGlvbkFpEhkKDGhhc190cmlnZ2VycxgXIAEoCEgDiAEBEhIKCmNyZWF0ZWRfYXQYGCABKAkSEQoEbmFtZRgZIAEoCUgEiAEBEjUKCXByb21vdGlvbhgaIAEoCzIiLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlByb21vdGlvbhJCChBiYWNrZ3JvdW5kX2ltYWdlGBsgASgLMiguc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuQmFja2dyb3VuZEltYWdlEhwKD3N0YXR1c19wb3NpdGlvbhgcIAEoDUgFiAEBEj8KDGFjdGl2YXRlZF9ieRgdIAEoDjIkLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLkFjdGl2YXRlZEJ5SAaIAQESJAoXYWN0aXZhdGVkX2J5X3RyaWdnZXJfaWQYHiABKAlIB4gBARImChlhY3RpdmF0ZWRfYnlfdHJpZ2dlcl9uYW1lGB8gASgJSAiIAQESGAoLdGVtcGxhdGVfaWQYICABKAlICYgBARIwCgdhZF91bml0GCEgASgOMh8uc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuQWRVbml0EhYKCW1vZHVsZV9pZBgiIAEoCUgKiAEBEiEKFGlzX21vZHVsZV9vdmVycmlkZGVuGCMgASgISAuIAQESMwoGZm9ybWF0GCQgASgOMiMuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuQ2FyZEZvcm1hdBowCg5PdmVycmlkZXNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAg6AjgBQgoKCF9zdWJqZWN0QgsKCV9wb3NpdGlvbkIbChlfYWN0aXZhdGlvbl90cmlnZ2VyX2NvdW50Qg8KDV9oYXNfdHJpZ2dlcnNCBwoFX25hbWVCEgoQX3N0YXR1c19wb3NpdGlvbkIPCg1fYWN0aXZhdGVkX2J5QhoKGF9hY3RpdmF0ZWRfYnlfdHJpZ2dlcl9pZEIcChpfYWN0aXZhdGVkX2J5X3RyaWdnZXJfbmFtZUIOCgxfdGVtcGxhdGVfaWRCDAoKX21vZHVsZV9pZEIXChVfaXNfbW9kdWxlX292ZXJyaWRkZW4i5gYKEEV4dGVuZGVkUXVlc3Rpb24SCgoCaWQYASABKAkSMwoEdHlwZRgCIAEoDjIlLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlF1ZXN0aW9uVHlwZRIPCgdzdWJqZWN0GAMgASgJEjkKB29wdGlvbnMYBCABKAsyKC5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5RdWVzdGlvbk9wdGlvbnMSPwoKYXBwZWFyYW5jZRgFIAEoCzIrLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlF1ZXN0aW9uQXBwZWFyYW5jZRI5CgtzcG9uc29yc2hpcBgGIAEoCzIkLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlNwb25zb3JzaGlwEkMKDG5vdGlmaWNhdGlvbhgHIAEoCzItLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlF1ZXN0aW9uTm90aWZpY2F0aW9uEkAKB2Fuc3dlcnMYCCADKAsyLy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5FeHRlbmRlZFF1ZXN0aW9uQW5zd2VyEjcKBnN0YXR1cxgJIAEoDjInLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlF1ZXN0aW9uU3RhdHVzEhAKCHBvc2l0aW9uGAogASgNEhUKDW1hcmtldF9jbG9zZWQYCyABKAgSFAoMYWN0aXZhdGVkX2F0GAwgASgJEhUKDWFuc3dlcl9zZXRfYXQYDSABKAkSEAoIZXZlbnRfaWQYDiABKAkSSgoUYnlwYXNzX25vdGlmaWNhdGlvbnMYDyABKAsyLC5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5CeXBhc3NOb3RpZmljYXRpb25zEjUKCXByb21vdGlvbhgQIAEoCzIiLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlByb21vdGlvbhJCChBiYWNrZ3JvdW5kX2ltYWdlGBEgASgLMiguc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuQmFja2dyb3VuZEltYWdlEhgKC3RlbXBsYXRlX2lkGBIgASgJSACIAQESMAoHYWRfdW5pdBgTIAEoDjIfLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLkFkVW5pdEIOCgxfdGVtcGxhdGVfaWQirwMKEFF1ZXN0aW9uVGltZWxpbmUSCgoCaWQYASABKAkSMwoEdHlwZRgCIAEoDjIlLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlF1ZXN0aW9uVHlwZRIPCgdzdWJqZWN0GAMgASgJEhQKDGFjdGl2YXRlZF9hdBgEIAEoCRI3CgZzdGF0dXMYBSABKA4yJy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5RdWVzdGlvblN0YXR1cxI5CgdvcHRpb25zGAYgASgLMiguc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUXVlc3Rpb25PcHRpb25zEkMKDG5vdGlmaWNhdGlvbhgHIAEoCzItLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlF1ZXN0aW9uTm90aWZpY2F0aW9uEjoKCXByb21vdGlvbhgIIAEoCzIiLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlByb21vdGlvbkgAiAEBEjAKB2FkX3VuaXQYCSABKA4yHy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5BZFVuaXRCDAoKX3Byb21vdGlvbiLjCwoPRXZlbnRNb2RlcmF0aW9uEgoKAmlkGAEgASgJEhAKCGV2ZW50X2lkGAIgASgJEj0KC3Nwb25zb3JzaGlwGAMgASgLMiQuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuU3BvbnNvcnNoaXBCAhgBEhoKEm9uYm9hcmRpbmdfZW5hYmxlZBgEIAEoCBJLCghxdWVzdGlvbhgFIAEoCzI5LnN0cmVhbWxheWVyLmludGVyYWN0aXZlLkV2ZW50TW9kZXJhdGlvbi5RdWVzdGlvblNldHRpbmdzEk4KCHNwb25zb3JzGAYgASgLMjwuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuRXZlbnRNb2RlcmF0aW9uLlNwb25zb3JzaGlwU2V0dGluZ3MSUwoMbm90aWZpY2F0aW9uGAcgASgLMj0uc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuRXZlbnRNb2RlcmF0aW9uLk5vdGlmaWNhdGlvblNldHRpbmdzEjAKDGFjdGl2YXRlZF9hdBgIIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASMgoOZGVhY3RpdmF0ZWRfYXQYCSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEkUKEnF1ZXN0aW9uX2F1dG9fcG9zdBgKIAEoCzIpLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlF1ZXN0aW9uQXV0b1Bvc3QSSgoUYnlwYXNzX25vdGlmaWNhdGlvbnMYCyABKAsyLC5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5CeXBhc3NOb3RpZmljYXRpb25zEk4KFmltcG9ydGVyX2NvbGxhYm9yYXRpb24YDCABKAsyLi5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5JbXBvcnRlckNvbGxhYm9yYXRpb24SFwoPb3JnYW5pemF0aW9uX2lkGA0gASgJGvUDChBRdWVzdGlvblNldHRpbmdzEj8KCmFwcGVhcmFuY2UYASABKAsyKy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5RdWVzdGlvbkFwcGVhcmFuY2USXAoGdHJpdmlhGAIgASgLMkwuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuRXZlbnRNb2RlcmF0aW9uLlF1ZXN0aW9uU2V0dGluZ3MuVHJpdmlhQ2FyZFNldHRpbmdzEmQKCnByZWRpY3Rpb24YAyABKAsyUC5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5FdmVudE1vZGVyYXRpb24uUXVlc3Rpb25TZXR0aW5ncy5QcmVkaWN0aW9uQ2FyZFNldHRpbmdzEkIKEWNvcnJlY3RfZmVlZGJhY2tzGAQgAygLMicuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuQW5zd2VyRmVlZGJhY2sSRAoTaW5jb3JyZWN0X2ZlZWRiYWNrcxgFIAMoCzInLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLkFuc3dlckZlZWRiYWNrGiQKElRyaXZpYUNhcmRTZXR0aW5ncxIOCgZwb2ludHMYASABKA0aLAoWUHJlZGljdGlvbkNhcmRTZXR0aW5ncxISCgptYXhfcG9pbnRzGAEgASgNGk0KE1Nwb25zb3JzaGlwU2V0dGluZ3MSNgoIc3BvbnNvcnMYASADKAsyJC5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5TcG9uc29yc2hpcBq7AQoUTm90aWZpY2F0aW9uU2V0dGluZ3MSDQoFaW1hZ2UYASABKAkSFwoPaW5kaWNhdG9yX2NvbG9yGAIgASgJEj4KDmltYWdlX3Bvc2l0aW9uGAMgASgOMiYuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuSW1hZ2VQb3NpdGlvbhI7CgppbWFnZV9tb2RlGAQgASgOMicuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUXVlc3Rpb25JbWFnZXMiqQIKEFF1ZXN0aW9uQXV0b1Bvc3QSPQoFc3RhdGUYASABKA4yLi5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5RdWVzdGlvbkF1dG9Qb3N0U3RhdGUSEAoIaW50ZXJ2YWwYAiABKA0SMgoObmV4dF9wb3N0X3RpbWUYAyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEkIKCnN0YXJ0X21vZGUYBCABKA4yLi5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5RdWVzdGlvbkF1dG9Qb3N0U3RhcnQSTAoNc3RhcnRfb3B0aW9ucxgFIAEoCzI1LnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlF1ZXN0aW9uQXV0b1Bvc3RTdGFydE9wdGlvbnMiqgEKHFF1ZXN0aW9uQXV0b1Bvc3RTdGFydE9wdGlvbnMSWQoIc2NoZWR1bGUYASABKAsyRS5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5RdWVzdGlvbkF1dG9Qb3N0U3RhcnRPcHRpb25zLlNjaGVkdWxlT3B0aW9uc0gAGiQKD1NjaGVkdWxlT3B0aW9ucxIRCgl0aW1lc3RhbXAYASABKARCCQoHb3B0aW9ucyIzCgpBbnN3ZXJEYXRhEhEKCWFuc3dlcl9pZBgBIAEoCRISCgpwZXJjZW50YWdlGAIgASgNIj0KClBhZ2luYXRpb24SDAoEcGFnZRgBIAEoBRIRCglwYWdlX3NpemUYAiABKAUSDgoGY3Vyc29yGAMgASgJIiQKBFNvcnQSDQoFZmllbGQYASABKAkSDQoFb3JkZXIYAiABKAki6gEKDVF1ZXN0aW9uU3RhdHMSCgoCaWQYASABKAkSRQoIcXVlc3Rpb24YAiABKAsyMy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5RdWVzdGlvblN0YXRzLlF1ZXN0aW9uRGF0YRI9CgpzdGF0aXN0aWNzGAMgAygLMikuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuQW5zd2VyVm90ZXNTdGF0cxpHCgxRdWVzdGlvbkRhdGESNwoGc3RhdHVzGAEgASgOMicuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUXVlc3Rpb25TdGF0dXMipQEKEEFuc3dlclZvdGVzU3RhdHMSEQoJYW5zd2VyX2lkGAEgASgJEkgKBXZvdGVzGAIgASgLMjkuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuQW5zd2VyVm90ZXNTdGF0cy5BbnN3ZXJWb3Rlc0RhdGEaNAoPQW5zd2VyVm90ZXNEYXRhEg0KBWNvdW50GAEgASgNEhIKCnBlcmNlbnRhZ2UYAiABKA0iQQoZU2VydmVyTm90aWZpY2F0aW9uT3B0aW9ucxIPCgdzaWxlbmNlGAEgASgIEhMKC3NraXBfdXBkYXRlGAIgASgIIlYKE0J5cGFzc05vdGlmaWNhdGlvbnMSPwoOaW5fYXBwX3NpbGVuY2UYASABKA4yJy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5TaWxlbmNlU2V0dGluZyIuCgtJbXBvcnRFcnJvchIOCgZyb3dfaWQYASABKAkSDwoHbWVzc2FnZRgCIAEoCSLCAQoOSW1wb3J0UHJvZ3Jlc3MSEQoJaW1wb3J0X2lkGAEgASgJEjUKBnN0YXR1cxgCIAEoDjIlLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLkltcG9ydFN0YXR1cxI0CgZlcnJvcnMYAyADKAsyJC5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5JbXBvcnRFcnJvchIwCgxsYXN0X3VwZGF0ZWQYBCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wIr4BChVJbXBvcnRlckNvbGxhYm9yYXRpb24STAoHaW1wb3J0cxgBIAMoCzI7LnN0cmVhbWxheWVyLmludGVyYWN0aXZlLkltcG9ydGVyQ29sbGFib3JhdGlvbi5JbXBvcnRzRW50cnkaVwoMSW1wb3J0c0VudHJ5EgsKA2tleRgBIAEoCRI2CgV2YWx1ZRgCIAEoCzInLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLkltcG9ydFByb2dyZXNzOgI4ASLZCAoIVGVtcGxhdGUSCgoCaWQYASABKAkSMwoEdHlwZRgCIAEoDjIlLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlF1ZXN0aW9uVHlwZRIUCgdzdWJqZWN0GAMgASgJSACIAQESOQoHb3B0aW9ucxgEIAEoCzIoLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlF1ZXN0aW9uT3B0aW9ucxI/CgphcHBlYXJhbmNlGAUgASgLMisuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUXVlc3Rpb25BcHBlYXJhbmNlEjkKC3Nwb25zb3JzaGlwGAYgASgLMiQuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuU3BvbnNvcnNoaXASQwoMbm90aWZpY2F0aW9uGAcgASgLMi0uc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUXVlc3Rpb25Ob3RpZmljYXRpb24SOAoHYW5zd2VycxgIIAMoCzInLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlF1ZXN0aW9uQW5zd2VyEkMKCW92ZXJyaWRlcxgJIAMoCzIwLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlRlbXBsYXRlLk92ZXJyaWRlc0VudHJ5EioKBHRhZ3MYCiADKAsyHC5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5UYWcSSgoUYnlwYXNzX25vdGlmaWNhdGlvbnMYCyABKAsyLC5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5CeXBhc3NOb3RpZmljYXRpb25zEi8KAmFpGAwgASgLMiMuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUXVlc3Rpb25BaRIZCgxoYXNfdHJpZ2dlcnMYDSABKAhIAYgBARISCgpjcmVhdGVkX2F0GA4gASgJEhEKBG5hbWUYDyABKAlIAogBARI1Cglwcm9tb3Rpb24YECABKAsyIi5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5Qcm9tb3Rpb24SQgoQYmFja2dyb3VuZF9pbWFnZRgRIAEoCzIoLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLkJhY2tncm91bmRJbWFnZRIwCgdhZF91bml0GBIgASgOMh8uc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuQWRVbml0EhsKDnF1ZXN0aW9uX2NvdW50GBMgASgFSAOIAQESEQoJZXZlbnRfaWRzGBQgAygJEhYKCW1vZHVsZV9pZBgVIAEoCUgEiAEBEhUKCHBvc2l0aW9uGBYgASgNSAWIAQEaMAoOT3ZlcnJpZGVzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgIOgI4AUIKCghfc3ViamVjdEIPCg1faGFzX3RyaWdnZXJzQgcKBV9uYW1lQhEKD19xdWVzdGlvbl9jb3VudEIMCgpfbW9kdWxlX2lkQgsKCV9wb3NpdGlvbiJ9CgpNb2R1bGVDYXJkEhsKE2xpbmtlZF9ldmVudHNfY291bnQYASABKA0SHQoVdXBjb21pbmdfZXZlbnRzX2NvdW50GAIgASgNEhkKEWluX3BsYXlfYWRzX2NvdW50GAMgASgNEhgKEHBhdXNlZF9hZHNfY291bnQYBCABKA0iYwoQTW9kdWxlQWR2ZXJ0aXNlchIMCgRuYW1lGAEgASgJEgwKBGxvZ28YAiABKAkSGQoRaW5fcGxheV9hZHNfY291bnQYAyABKA0SGAoQcGF1c2VkX2Fkc19jb3VudBgEIAEoDSLiAgoGTW9kdWxlEgoKAmlkGAEgASgJEgwKBG5hbWUYAiABKAkSDAoEdHlwZRgDIAEoCRIOCgZsZWFndWUYBCABKAkSEwoLY3VzdG9tX2xvZ28YBSABKAkSEgoKY3JlYXRlZF9hdBgGIAEoCRISCgp1cGRhdGVkX2F0GAcgASgJEjEKBGNhcmQYCCABKAsyIy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5Nb2R1bGVDYXJkEkoKGGRlZmF1bHRfYmFja2dyb3VuZF9pbWFnZRgJIAEoCzIoLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLkJhY2tncm91bmRJbWFnZRI+CgthZHZlcnRpc2VycxgKIAMoCzIpLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLk1vZHVsZUFkdmVydGlzZXISEQoJY29sb3JfYmFyGAsgASgJEhEKCWV2ZW50X2lkcxgMIAMoCSr7AQoLQWN0aXZhdGVkQnkSFgoSQUNUSVZBVEVEX0JZX1VOU0VUEAASFQoRQUNUSVZBVEVEX0JZX1VTRVIQARIaChZBQ1RJVkFURURfQllfQVVUT19QT1NUEAISJAogQUNUSVZBVEVEX0JZX1RSSUdHRVJfVFlQRV9NQU5VQUwQAxIpCiVBQ1RJVkFURURfQllfVFJJR0dFUl9UWVBFX0VWRU5UX0JBU0VEEAQSJQohQUNUSVZBVEVEX0JZX1RSSUdHRVJfVFlQRV9TQ1RFXzM1EAUSKQolQUNUSVZBVEVEX0JZX1RSSUdHRVJfVFlQRV9WQVNUX1NJR05BTBAGKsgBCgxRdWVzdGlvblR5cGUSFwoTUVVFU1RJT05fVFlQRV9VTlNFVBAAEhYKElFVRVNUSU9OX1RZUEVfUE9MTBABEhgKFFFVRVNUSU9OX1RZUEVfVFJJVklBEAISHAoYUVVFU1RJT05fVFlQRV9QUkVESUNUSU9OEAMSGQoVUVVFU1RJT05fVFlQRV9GQUNUT0lEEAQSFwoTUVVFU1RJT05fVFlQRV9UV0VFVBAFEhsKF1FVRVNUSU9OX1RZUEVfUFJPTU9USU9OEAYqYwoOUXVlc3Rpb25Tb3VyY2USGQoVUVVFU1RJT05fU09VUkNFX1VOU0VUEAASFgoSUVVFU1RJT05fU09VUkNFX0FJEAESHgoaUVVFU1RJT05fU09VUkNFX0NTVl9JTVBPUlQQAiriAQoOUXVlc3Rpb25TdGF0dXMSGQoVUVVFU1RJT05fU1RBVFVTX1VOU0VUEAASIQodUVVFU1RJT05fU1RBVFVTX05PVF9TQ0hFRFVMRUQQARIdChlRVUVTVElPTl9TVEFUVVNfU0NIRURVTEVEEAISGgoWUVVFU1RJT05fU1RBVFVTX0FDVElWRRADEhwKGFFVRVNUSU9OX1NUQVRVU19SRVNPTFZFRBAEEhsKF1FVRVNUSU9OX1NUQVRVU19FTkFCTEVEEAUSHAoYUVVFU1RJT05fU1RBVFVTX0RJU0FCTEVEEAYq7gEKEFF1ZXN0aW9uUG9zaXRpb24SGwoXUVVFU1RJT05fUE9TSVRJT05fVU5TRVQQABIdChlRVUVTVElPTl9QT1NJVElPTl9ERUZBVUxUEAESIgoeUVVFU1RJT05fUE9TSVRJT05fRklYRURfQk9UVE9NEAISGgoWUVVFU1RJT05fUE9TSVRJT05fTEJBUhADEh0KGVFVRVNUSU9OX1BPU0lUSU9OX09WRVJMQVkQBBIdChlRVUVTVElPTl9QT1NJVElPTl9TSURFQkFSEAUSIAocUVVFU1RJT05fUE9TSVRJT05fRlVMTF9CTEVFRBAGKmkKDlF1ZXN0aW9uTGF5b3V0EhkKFVFVRVNUSU9OX0xBWU9VVF9VTlNFVBAAEh0KGVFVRVNUSU9OX0xBWU9VVF9MSVNUX1ZJRVcQARIdChlRVUVTVElPTl9MQVlPVVRfR1JJRF9WSUVXEAIqvAEKDlF1ZXN0aW9uSW1hZ2VzEhkKFVFVRVNUSU9OX0lNQUdFU19VTlNFVBAAEhgKFFFVRVNUSU9OX0lNQUdFU19OT05FEAESGwoXUVVFU1RJT05fSU1BR0VTX1JPVU5ERUQQAhIfChtRVUVTVElPTl9JTUFHRVNfVFJBTlNQQVJFTlQQAxIcChhRVUVTVElPTl9JTUFHRVNfQ0VOVEVSRUQQBBIZChVRVUVTVElPTl9JTUFHRVNfU09MSUQQBSr0AQoZTm90aWZpY2F0aW9uUHJvbW90aW9uTW9kZRIlCiFOT1RJRklDQVRJT05fUFJPTU9USU9OX01PREVfVU5TRVQQABInCiNOT1RJRklDQVRJT05fUFJPTU9USU9OX01PREVfQ0xBU1NJQxABEisKJ05PVElGSUNBVElPTl9QUk9NT1RJT05fTU9ERV9MT1dFUl9USElSRBACEjEKLU5PVElGSUNBVElPTl9QUk9NT1RJT05fTU9ERV9SSUNIX05PVElGSUNBVElPThADEicKI05PVElGSUNBVElPTl9QUk9NT1RJT05fTU9ERV9TSURFQkFSEAQqzQIKIk5vdGlmaWNhdGlvblByb21vdGlvbkltYWdlUG9zaXRpb24SLworTk9USUZJQ0FUSU9OX1BST01PVElPTl9JTUFHRV9QT1NJVElPTl9VTlNFVBAAEi0KKU5PVElGSUNBVElPTl9QUk9NT1RJT05fSU1BR0VfUE9TSVRJT05fRklUEAESMgouTk9USUZJQ0FUSU9OX1BST01PVElPTl9JTUFHRV9QT1NJVElPTl9DRU5URVJFRBACEjAKLE5PVElGSUNBVElPTl9QUk9NT1RJT05fSU1BR0VfUE9TSVRJT05fQk9UVE9NEAMSLworTk9USUZJQ0FUSU9OX1BST01PVElPTl9JTUFHRV9QT1NJVElPTl9TT0xJRBAEEjAKLE5PVElGSUNBVElPTl9QUk9NT1RJT05fSU1BR0VfUE9TSVRJT05fTUlERExFEAUqkQEKG05vdGlmaWNhdGlvblNwb25zb3JMb2dvTW9kZRIjCh9OT1RJRklDQVRJT05fU1BPTlNPUl9MT0dPX1VOU0VUEAASIgoeTk9USUZJQ0FUSU9OX1NQT05TT1JfTE9HT19OT05FEAESKQolTk9USUZJQ0FUSU9OX1NQT05TT1JfTE9HT19UUkFOU1BBUkVOVBACKk4KC0N0YUljb25Nb2RlEhIKDkNUQV9JQ09OX1VOU0VUEAASEQoNQ1RBX0lDT05fTk9ORRABEhgKFENUQV9JQ09OX1RSQU5TUEFSRU5UEAIqXAoNSW1hZ2VQb3NpdGlvbhIYChRJTUFHRV9QT1NJVElPTl9VTlNFVBAAEhcKE0lNQUdFX1BPU0lUSU9OX0xFRlQQARIYChRJTUFHRV9QT1NJVElPTl9SSUdIVBACKo8HCg1Qcm9tb3Rpb25UeXBlEhgKFFBST01PVElPTl9UWVBFX1VOU0VUEAASIwobUFJPTU9USU9OX1RZUEVfSU5HQU1FX0lBQjIxEAEaAggBEiMKG1BST01PVElPTl9UWVBFX0lOR0FNRV9JQUIxMRACGgIIARIjChtQUk9NT1RJT05fVFlQRV9JTkdBTUVfSUFCNjEQAxoCCAESKAogUFJPTU9USU9OX1RZUEVfSU5HQU1FX0lBQjExX0xCQVIQBBoCCAESKAogUFJPTU9USU9OX1RZUEVfSU5HQU1FX0lBQjIxX0xCQVIQBRoCCAESHgoaUFJPTU9USU9OX1RZUEVfRVhURVJOQUxfQUQQBhIlCiFQUk9NT1RJT05fVFlQRV9WSURFT19TSURFX0JZX1NJREUQBxIlCiFQUk9NT1RJT05fVFlQRV9QSUNUVVJFX0lOX1BJQ1RVUkUQCBIgChhQUk9NT1RJT05fVFlQRV9TSE9QX0xCQVIQCRoCCAESIwobUFJPTU9USU9OX1RZUEVfU0hPUF9PVkVSTEFZEAoaAggBEiMKG1BST01PVElPTl9UWVBFX1NIT1BfU0lERUJBUhALGgIIARIeChpQUk9NT1RJT05fVFlQRV9MT1dFUl9USElSRBAMEiQKHFBST01PVElPTl9UWVBFX05GTF9TSE9QX0xCQVIQDRoCCAESJwofUFJPTU9USU9OX1RZUEVfTkZMX1NIT1BfT1ZFUkxBWRAOGgIIARInCh9QUk9NT1RJT05fVFlQRV9ORkxfU0hPUF9TSURFQkFSEA8aAggBEisKI1BST01PVElPTl9UWVBFX0lOR0FNRV9JQUIyMV9TSURFQkFSEBAaAggBEisKI1BST01PVElPTl9UWVBFX0lOR0FNRV9JQUIxMV9TSURFQkFSEBEaAggBEisKI1BST01PVElPTl9UWVBFX0lOR0FNRV9JQUI2MV9TSURFQkFSEBIaAggBEhgKFFBST01PVElPTl9UWVBFX1NUQVRTEBMSGwoXUFJPTU9USU9OX1RZUEVfU1RBTkRBUkQQFBIXChNQUk9NT1RJT05fVFlQRV9TSE9QEBUSGwoXUFJPTU9USU9OX1RZUEVfTkZMX1NIT1AQFhIZChVQUk9NT1RJT05fVFlQRV9CQU5ORVIQFxIgChxQUk9NT1RJT05fVFlQRV9TUE9OU09SX0ZSQU1FEBgqpQEKD1Byb21vdGlvbkZvcm1hdBIaChZQUk9NT1RJT05fRk9STUFUX1VOU0VUEAASGQoVUFJPTU9USU9OX0ZPUk1BVF9MQkFSEAESHAoYUFJPTU9USU9OX0ZPUk1BVF9PVkVSTEFZEAISHAoYUFJPTU9USU9OX0ZPUk1BVF9TSURFQkFSEAMSHwobUFJPTU9USU9OX0ZPUk1BVF9GVUxMX0JMRUVEEAQqagoPUHJvbW90aW9uV2FsbGV0EhoKFlBST01PVElPTl9XQUxMRVRfVU5TRVQQABIcChhQUk9NT1RJT05fV0FMTEVUX0VOQUJMRUQQARIdChlQUk9NT1RJT05fV0FMTEVUX0RJU0FCTEVEEAIqRgoGUVJDb2RlEhEKDVFSX0NPREVfVU5TRVQQABITCg9RUl9DT0RFX0VOQUJMRUQQARIUChBRUl9DT0RFX0RJU0FCTEVEEAIqewoNUGF1c2VBZExheW91dBIZChVQQVVTRV9BRF9MQVlPVVRfVU5TRVQQABIYChRQQVVTRV9BRF9MQVlPVVRfTEVGVBABEhoKFlBBVVNFX0FEX0xBWU9VVF9DRU5URVIQAhIZChVQQVVTRV9BRF9MQVlPVVRfSU1BR0UQAyp8ChBQYXVzZUFkU3RhdHNUeXBlEh0KGVBBVVNFX0FEX1NUQVRTX1RZUEVfVU5TRVQQABIfChtQQVVTRV9BRF9TVEFUU19UWVBFX01BVENIVVAQARIoCiRQQVVTRV9BRF9TVEFUU19UWVBFX0xFQUdVRV9TVEFORElOR1MQAir4AQoTUHJvbW90aW9uQnV0dG9uVHlwZRIfChtQUk9NT1RJT05fQlVUVE9OX1RZUEVfVU5TRVQQABIfChtQUk9NT1RJT05fQlVUVE9OX1RZUEVfQkFTSUMQARInCiNQUk9NT1RJT05fQlVUVE9OX1RZUEVfQUREX1RPX1dBTExFVBADEikKJVBST01PVElPTl9CVVRUT05fVFlQRV9SRVRVUk5fVE9fVklERU8QBBIjCh9QUk9NT1RJT05fQlVUVE9OX1RZUEVfTk9fQlVUVE9OEAUSJgoiUFJPTU9USU9OX0JVVFRPTl9UWVBFX1NFTkRfVE9fVVNFUhAGKmgKD1VzZXJBY2NvdW50SW5mbxIbChdVU0VSX0FDQ09VTlRfSU5GT19VTlNFVBAAEhsKF1VTRVJfQUNDT1VOVF9JTkZPX0VNQUlMEAESGwoXVVNFUl9BQ0NPVU5UX0lORk9fUEhPTkUQAiqQAQoRUHJvbW90aW9uTG9nb01vZGUSHQoZUFJPTU9USU9OX0xPR09fTU9ERV9VTlNFVBAAEhwKGFBST01PVElPTl9MT0dPX01PREVfTEVGVBABEh4KGlBST01PVElPTl9MT0dPX01PREVfQ0VOVEVSEAISHgoaUFJPTU9USU9OX0xPR09fTU9ERV9NSU5NQUwQAyp1ChFVc2VBc05vdGlmaWNhdGlvbhIdChlVU0VfQVNfTk9USUZJQ0FUSU9OX1VOU0VUEAASHwobVVNFX0FTX05PVElGSUNBVElPTl9FTkFCTEVEEAESIAocVVNFX0FTX05PVElGSUNBVElPTl9ESVNBQkxFRBACKmoKE05vdGlmaWNhdGlvbkVuYWJsZWQSHgoaTk9USUZJQ0FUSU9OX0VOQUJMRURfVU5TRVQQABIYChROT1RJRklDQVRJT05fRU5BQkxFRBABEhkKFU5PVElGSUNBVElPTl9ESVNBQkxFRBACKqABChtOb3RpZmljYXRpb25Vc2VDb250ZW50TWVkaWESKAokTk9USUZJQ0FUSU9OX1VTRV9DT05URU5UX01FRElBX1VOU0VUEAASKgomTk9USUZJQ0FUSU9OX1VTRV9DT05URU5UX01FRElBX0VOQUJMRUQQARIrCidOT1RJRklDQVRJT05fVVNFX0NPTlRFTlRfTUVESUFfRElTQUJMRUQQAiqgAQobTm90aWZpY2F0aW9uVXNlQ29udGVudFRleHRzEigKJE5PVElGSUNBVElPTl9VU0VfQ09OVEVOVF9URVhUU19VTlNFVBAAEioKJk5PVElGSUNBVElPTl9VU0VfQ09OVEVOVF9URVhUU19FTkFCTEVEEAESKwonTk9USUZJQ0FUSU9OX1VTRV9DT05URU5UX1RFWFRTX0RJU0FCTEVEEAIqaQoOQ2xvc2VUaW1lckF1dG8SGgoWQ0xPU0VfVElNRVJfQVVUT19VTlNFVBAAEhwKGENMT1NFX1RJTUVSX0FVVE9fRU5BQkxFRBABEh0KGUNMT1NFX1RJTUVSX0FVVE9fRElTQUJMRUQQAiplCg1BdXRvUGxheVZpZGVvEhkKFUFVVE9fUExBWV9WSURFT19VTlNFVBAAEhsKF0FVVE9fUExBWV9WSURFT19FTkFCTEVEEAESHAoYQVVUT19QTEFZX1ZJREVPX0RJU0FCTEVEEAIqaQoOUGxheVZpZGVvTXV0ZWQSGgoWUExBWV9WSURFT19NVVRFRF9VTlNFVBAAEhwKGFBMQVlfVklERU9fTVVURURfRU5BQkxFRBABEh0KGVBMQVlfVklERU9fTVVURURfRElTQUJMRUQQAiqqAQoGQWRUeXBlEhEKDUFEX1RZUEVfVU5TRVQQABIQCgxBRF9UWVBFX0xCQVIQARITCg9BRF9UWVBFX1NJREVCQVIQAhITCg9BRF9UWVBFX09WRVJMQVkQAxIXChNBRF9UWVBFX0xPV0VSX1RISVJEEAQSGAoUQURfVFlQRV9TSURFX0JZX1NJREUQBRIeChpBRF9UWVBFX1BJQ1RVUkVfSU5fUElDVFVSRRAGKuQLCg5RdWVzdGlvblVJVHlwZRIaChZRVUVTVElPTl9VSV9UWVBFX1VOU0VUEAASHgoaUVVFU1RJT05fVUlfVFlQRV9HT09HTEVfQUQQARIgChxRVUVTVElPTl9VSV9UWVBFX1NUQU5EQVJEX0FEEAISIAocUVVFU1RJT05fVUlfVFlQRV9MT1dFUl9USElSRBADEiEKHVFVRVNUSU9OX1VJX1RZUEVfU0lERV9CWV9TSURFEAQSJwojUVVFU1RJT05fVUlfVFlQRV9QSUNUVVJFX0lOX1BJQ1RVUkUQBRIlCiFRVUVTVElPTl9VSV9UWVBFX05GTF9TSE9QUEFCTEVfQUQQBhIfChtRVUVTVElPTl9VSV9UWVBFX0lOU0lHSFRfQUQQBxIcChhRVUVTVElPTl9VSV9UWVBFX1BPTExfQUQQCBIeChpRVUVTVElPTl9VSV9UWVBFX1RSSVZJQV9BRBAJEiIKHlFVRVNUSU9OX1VJX1RZUEVfUFJFRElDVElPTl9BRBAKEiEKHVFVRVNUSU9OX1VJX1RZUEVfU0hPUFBBQkxFX0FEEAsSJgoiUVVFU1RJT05fVUlfVFlQRV9BSV9BU1NJU1RBTlRfQkVUQRAMEhkKFVFVRVNUSU9OX1VJX1RZUEVfUE9MTBANEhsKF1FVRVNUSU9OX1VJX1RZUEVfVFJJVklBEA4SHwobUVVFU1RJT05fVUlfVFlQRV9QUkVESUNUSU9OEA8SHAoYUVVFU1RJT05fVUlfVFlQRV9JTlNJR0hUEBASGwoXUVVFU1RJT05fVUlfVFlQRV9YX1BPU1QQERIaChZRVUVTVElPTl9VSV9UWVBFX1NUQVRTEBISGwoXUVVFU1RJT05fVUlfVFlQRV9CQU5ORVIQExIiCh5RVUVTVElPTl9VSV9UWVBFX1NQT05TT1JfRlJBTUUQFBIlCiFQQVVTRURfUVVFU1RJT05fVUlfVFlQRV9HT09HTEVfQUQQZRInCiNQQVVTRURfUVVFU1RJT05fVUlfVFlQRV9TVEFOREFSRF9BRBBmEicKI1BBVVNFRF9RVUVTVElPTl9VSV9UWVBFX0xPV0VSX1RISVJEEGcSKAokUEFVU0VEX1FVRVNUSU9OX1VJX1RZUEVfU0lERV9CWV9TSURFEGgSLgoqUEFVU0VEX1FVRVNUSU9OX1VJX1RZUEVfUElDVFVSRV9JTl9QSUNUVVJFEGkSLAooUEFVU0VEX1FVRVNUSU9OX1VJX1RZUEVfTkZMX1NIT1BQQUJMRV9BRBBqEiYKIlBBVVNFRF9RVUVTVElPTl9VSV9UWVBFX0lOU0lHSFRfQUQQaxIjCh9QQVVTRURfUVVFU1RJT05fVUlfVFlQRV9QT0xMX0FEEGwSJQohUEFVU0VEX1FVRVNUSU9OX1VJX1RZUEVfVFJJVklBX0FEEG0SKQolUEFVU0VEX1FVRVNUSU9OX1VJX1RZUEVfUFJFRElDVElPTl9BRBBkEigKJFBBVVNFRF9RVUVTVElPTl9VSV9UWVBFX1NIT1BQQUJMRV9BRBBvEi0KKVBBVVNFRF9RVUVTVElPTl9VSV9UWVBFX0FJX0FTU0lTVEFOVF9CRVRBEHASIAocUEFVU0VEX1FVRVNUSU9OX1VJX1RZUEVfUE9MTBBxEiIKHlBBVVNFRF9RVUVTVElPTl9VSV9UWVBFX1RSSVZJQRByEiYKIlBBVVNFRF9RVUVTVElPTl9VSV9UWVBFX1BSRURJQ1RJT04QcxIjCh9QQVVTRURfUVVFU1RJT05fVUlfVFlQRV9JTlNJR0hUEHQSIgoeUEFVU0VEX1FVRVNUSU9OX1VJX1RZUEVfWF9QT1NUEHUSIQodUEFVU0VEX1FVRVNUSU9OX1VJX1RZUEVfU1RBVFMQdhIiCh5QQVVTRURfUVVFU1RJT05fVUlfVFlQRV9CQU5ORVIQdxIpCiVQQVVTRURfUVVFU1RJT05fVUlfVFlQRV9TUE9OU09SX0ZSQU1FEHgqaQoOVXNlR2VuZXJhbExvZ28SGgoWVVNFX0dFTkVSQUxfTE9HT19VTlNFVBAAEhwKGFVTRV9HRU5FUkFMX0xPR09fRU5BQkxFRBABEh0KGVVTRV9HRU5FUkFMX0xPR09fRElTQUJMRUQQAiqaAQobU3BvbnNvckZyYW1lQnV0dG9uQWxpZ25tZW50EigKJFNQT05TT1JfRlJBTUVfQlVUVE9OX0FMSUdOTUVOVF9VTlNFVBAAEicKI1NQT05TT1JfRlJBTUVfQlVUVE9OX0FMSUdOTUVOVF9MRUZUEAESKAokU1BPTlNPUl9GUkFNRV9CVVRUT05fQUxJR05NRU5UX1JJR0hUEAIqagoRQmFubmVyTWVkaWFGb3JtYXQSHQoZQkFOTkVSX01FRElBX0ZPUk1BVF9VTlNFVBAAEhoKFkJBTk5FUl9NRURJQV9GT1JNQVRfMTEQARIaChZCQU5ORVJfTUVESUFfRk9STUFUXzIxEAIqaAoPQmFubmVyTWVkaWFUeXBlEhsKF0JBTk5FUl9NRURJQV9UWVBFX1VOU0VUEAASGwoXQkFOTkVSX01FRElBX1RZUEVfVklERU8QARIbChdCQU5ORVJfTUVESUFfVFlQRV9JTUFHRRACKu4BCg5CYW5uZXJQb3NpdGlvbhIZChVCQU5ORVJfUE9TSVRJT05fVU5TRVQQABIcChhCQU5ORVJfUE9TSVRJT05fVE9QX0xFRlQQARIeChpCQU5ORVJfUE9TSVRJT05fVE9QX0NFTlRFUhACEh0KGUJBTk5FUl9QT1NJVElPTl9UT1BfUklHSFQQAxIfChtCQU5ORVJfUE9TSVRJT05fQk9UVE9NX0xFRlQQBBIhCh1CQU5ORVJfUE9TSVRJT05fQk9UVE9NX0NFTlRFUhAFEiAKHEJBTk5FUl9QT1NJVElPTl9CT1RUT01fUklHSFQQBippCgpTaG9wR2VuZGVyEhUKEVNIT1BfR0VOREVSX1VOU0VUEAASFAoQU0hPUF9HRU5ERVJfTUFMRRABEhYKElNIT1BfR0VOREVSX0ZFTUFMRRACEhYKElNIT1BfR0VOREVSX1VOSVNFWBADKlIKCVNhbGVQcmljZRIUChBTQUxFX1BSSUNFX1VOU0VUEAASFgoSU0FMRV9QUklDRV9FTkFCTEVEEAESFwoTU0FMRV9QUklDRV9ESVNBQkxFRBACKpQBCgtUcmlnZ2VyVHlwZRIWChJUUklHR0VSX1RZUEVfVU5TRVQQABIXChNUUklHR0VSX1RZUEVfTUFOVUFMEAESHAoYVFJJR0dFUl9UWVBFX0VWRU5UX0JBU0VEEAISGAoUVFJJR0dFUl9UWVBFX1NDVEVfMzUQAxIcChhUUklHR0VSX1RZUEVfVkFTVF9TSUdOQUwQBCp+Cg9EZXZpY2VUYXJnZXRpbmcSGgoWREVWSUNFX1RBUkdFVElOR19VTlNFVBAAEhsKF0RFVklDRV9UQVJHRVRJTkdfTU9CSUxFEAESGAoUREVWSUNFX1RBUkdFVElOR19DVFYQAhIYChRERVZJQ0VfVEFSR0VUSU5HX1dFQhADKkUKBkFkVW5pdBIRCg1BRF9VTklUX1VOU0VUEAASFAoQQURfVU5JVF9TVEFOREFSVBABEhIKDkFEX1VOSVRfUEFVU0VEEAIqlgEKGk5vdGlmaWNhdGlvbk11bHRpY29tcG9uZW50EiUKIU5PVElGSUNBVElPTl9NVUxUSUNPTVBPTkVOVF9VTlNFVBAAEicKI05PVElGSUNBVElPTl9NVUxUSUNPTVBPTkVOVF9FTkFCTEVEEAESKAokTk9USUZJQ0FUSU9OX01VTFRJQ09NUE9ORU5UX0RJU0FCTEVEEAIqqAEKEEZhY3RvaWRNZWRpYU1vZGUSHAoYRkFDVE9JRF9NRURJQV9NT0RFX1VOU0VUEAASHAoYRkFDVE9JRF9NRURJQV9NT0RFX0lNQUdFEAESHAoYRkFDVE9JRF9NRURJQV9NT0RFX1ZJREVPEAISHQoZRkFDVE9JRF9NRURJQV9NT0RFX0NJUkNMRRADEhsKF0ZBQ1RPSURfTUVESUFfTU9ERV9OT05FEAQqhwEKCkNhcmRGb3JtYXQSFQoRQ0FSRF9GT1JNQVRfVU5TRVQQABIXChNDQVJEX0ZPUk1BVF9PVkVSTEFZEAESFwoTQ0FSRF9GT1JNQVRfU0lERUJBUhACEhQKEENBUkRfRk9STUFUX0xCQVIQAxIaChZDQVJEX0ZPUk1BVF9GVUxMX0JMRUVEEAQq6gEKFVF1ZXN0aW9uQXV0b1Bvc3RTdGF0ZRIiCh5RVUVTVElPTl9BVVRPX1BPU1RfU1RBVEVfVU5TRVQQABIfChtRVUVTVElPTl9BVVRPX1BPU1RfU1RBVEVfT04QARIgChxRVUVTVElPTl9BVVRPX1BPU1RfU1RBVEVfT0ZGEAISIwofUVVFU1RJT05fQVVUT19QT1NUX1NUQVRFX1BBVVNFRBADEiEKHVFVRVNUSU9OX0FVVE9fUE9TVF9TVEFURV9JRExFEAQSIgoeUVVFU1RJT05fQVVUT19QT1NUX1NUQVRFX1JFU0VUEAUqhAEKFVF1ZXN0aW9uQXV0b1Bvc3RTdGFydBIiCh5RVUVTVElPTl9BVVRPX1BPU1RfU1RBUlRfVU5TRVQQABIlCiFRVUVTVElPTl9BVVRPX1BPU1RfU1RBUlRfU0NIRURVTEUQARIgChxRVUVTVElPTl9BVVRPX1BPU1RfU1RBUlRfTk9XEAIqVgoSUXVlc3Rpb25Ta2lwUmVhc29uEh4KGlFVRVNUSU9OX1NLSVBfUkVBU09OX1VOU0VUEAASIAocUVVFU1RJT05fU0tJUF9SRUFTT05fT1ZFUkRVRRABKlwKDlNpbGVuY2VTZXR0aW5nEhkKFVNJTEVOQ0VfU0VUVElOR19VTlNFVBAAEhYKElNJTEVOQ0VfU0VUVElOR19PThABEhcKE1NJTEVOQ0VfU0VUVElOR19PRkYQAiqUAQoMSW1wb3J0U3RhdHVzEhcKE0lNUE9SVF9TVEFUVVNfVU5TRVQQABIZChVJTVBPUlRfU1RBVFVTX1BMQU5ORUQQARIZChVJTVBPUlRfU1RBVFVTX1JVTk5JTkcQAhIbChdJTVBPUlRfU1RBVFVTX0NPTVBMRVRFRBADEhgKFElNUE9SVF9TVEFUVVNfRkFJTEVEEARCtwEKImNvbS5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5jb21tb25CIVN0cmVhbUxheWVySW50ZXJhY3RpdmVDb21tb25Qcm90b1ABWmNnaXRodWIuY29tL3N0cmVhbWxheWVyL3NsLXByb3RvZmlsZXMvLmJ1aWxkL2dvL3N0cmVhbWxheWVyL2ludGVyYWN0aXZlL2NvbW1vbjtzbF9pbnRlcmFjdGl2ZV9jb21tb26iAgZTTF9BUEliBnByb3RvMw", [file_google_protobuf_timestamp, file_streamlayer_analytics_v1_common_analytics_common, file_streamlayer_social_twitter]);
14
+ fileDesc("CjBzdHJlYW1sYXllci9pbnRlcmFjdGl2ZS9pbnRlcmFjdGl2ZS5jb21tb24ucHJvdG8SF3N0cmVhbWxheWVyLmludGVyYWN0aXZlIlQKCkNsb3NlVGltZXISNQoEYXV0bxgBIAEoDjInLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLkNsb3NlVGltZXJBdXRvEg8KB3NlY29uZHMYAiABKAUijAIKElF1ZXN0aW9uQXBwZWFyYW5jZRI3CgZsYXlvdXQYASABKA4yJy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5RdWVzdGlvbkxheW91dBI3CgZpbWFnZXMYAiABKA4yJy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5RdWVzdGlvbkltYWdlcxIVCg1wcmltYXJ5X2NvbG9yGAMgASgJEkQKCHBvc2l0aW9uGAQgASgOMikuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUXVlc3Rpb25Qb3NpdGlvbkICGAFIAIgBARIaChJhdXRvX2hpZGVfaW50ZXJ2YWwYBSABKARCCwoJX3Bvc2l0aW9uIs4CCgtTcG9uc29yc2hpcBIMCgRsb2dvGAEgASgJEhEKBG5hbWUYAiABKAlIAIgBARIZCgxjbGFzc2ljX2xvZ28YAyABKAlIAYgBARIYCgtjZW50ZXJfbG9nbxgEIAEoCUgCiAEBElAKDWxvZ29fcG9zaXRpb24YBSABKA4yNC5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5Ob3RpZmljYXRpb25TcG9uc29yTG9nb01vZGVIA4gBARJGChB1c2VfZ2VuZXJhbF9sb2dvGAYgASgOMicuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuVXNlR2VuZXJhbExvZ29IBIgBAUIHCgVfbmFtZUIPCg1fY2xhc3NpY19sb2dvQg4KDF9jZW50ZXJfbG9nb0IQCg5fbG9nb19wb3NpdGlvbkITChFfdXNlX2dlbmVyYWxfbG9nbyLNAgoVUHJvbW90aW9uTm90aWZpY2F0aW9uEhQKDHNwb25zb3JfbG9nbxgBIAEoCRJPChFzcG9uc29yX2xvZ29fbW9kZRgCIAEoDjI0LnN0cmVhbWxheWVyLmludGVyYWN0aXZlLk5vdGlmaWNhdGlvblNwb25zb3JMb2dvTW9kZRI2CgpjdGFfYnV0dG9uGAMgASgLMiIuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuQ1RBQnV0dG9uElMKDmltYWdlX3Bvc2l0aW9uGAQgASgOMjsuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuTm90aWZpY2F0aW9uUHJvbW90aW9uSW1hZ2VQb3NpdGlvbhJACgRtb2RlGAUgASgOMjIuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuTm90aWZpY2F0aW9uUHJvbW90aW9uTW9kZSL8AwoUUXVlc3Rpb25Ob3RpZmljYXRpb24SDQoFdGl0bGUYASABKAkSDQoFaW1hZ2UYAiABKAkSFwoPaW5kaWNhdG9yX2NvbG9yGAMgASgJEj4KDmltYWdlX3Bvc2l0aW9uGAQgASgOMiYuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuSW1hZ2VQb3NpdGlvbhIMCgRib2R5GAUgASgJEjsKCmltYWdlX21vZGUYBiABKA4yJy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5RdWVzdGlvbkltYWdlcxJBCglwcm9tb3Rpb24YByABKAsyLi5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5Qcm9tb3Rpb25Ob3RpZmljYXRpb24SPQoHZW5hYmxlZBgIIAEoDjIsLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLk5vdGlmaWNhdGlvbkVuYWJsZWQSTwoRdXNlX2NvbnRlbnRfbWVkaWEYCSABKA4yNC5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5Ob3RpZmljYXRpb25Vc2VDb250ZW50TWVkaWESTwoRdXNlX2NvbnRlbnRfdGV4dHMYCiABKA4yNC5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5Ob3RpZmljYXRpb25Vc2VDb250ZW50VGV4dHMiWQoOUXVlc3Rpb25BbnN3ZXISCgoCaWQYASABKAkSDAoEdGV4dBgCIAEoCRIMCgRpY29uGAMgASgJEg8KB2NvcnJlY3QYBCABKAgSDgoGcG9pbnRzGAUgASgNIr8BChZFeHRlbmRlZFF1ZXN0aW9uQW5zd2VyEgoKAmlkGAEgASgJEgwKBHRleHQYAiABKAkSDAoEaWNvbhgDIAEoCRIPCgdjb3JyZWN0GAQgASgIEg4KBnBvaW50cxgFIAEoDRIWCgpwZXJjZW50YWdlGAYgASgNQgIYARIRCgl5b3Vfdm90ZWQYByABKAgSGgoScGVyY2VudGFnZV9kZWNpbWFsGAggASgBEhUKDXBvaW50c19lYXJuZWQYCSABKA0iNAoOQW5zd2VyRmVlZGJhY2sSDQoFdGl0bGUYASABKAkSEwoLZGVzY3JpcHRpb24YAiABKAkiOgoIRmlsZUxpbmsSCgoCaWQYASABKAkSCwoDdXJsGAIgASgJEhUKDXRodW1ibmFpbF91cmwYAyABKAkiJQoHV2ViTGluaxINCgVsYWJlbBgBIAEoCRILCgN1cmwYAiABKAkioAEKCUNUQUJ1dHRvbhINCgVsYWJlbBgBIAEoCRINCgVjb2xvchgCIAEoCRIXCgp0ZXh0X2NvbG9yGAMgASgJSACIAQESEAoIY3RhX2ljb24YBCABKAkSOwoNY3RhX2ljb25fbW9kZRgFIAEoDjIkLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLkN0YUljb25Nb2RlQg0KC190ZXh0X2NvbG9yIqoECgZCYW5uZXISEQoJaW1hZ2VfdXJsGAEgASgJEgsKA3VybBgCIAEoCRI2CgpjdGFfYnV0dG9uGAMgASgLMiIuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuQ1RBQnV0dG9uEjAKBXZpZGVvGAQgASgLMiEuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuRmlsZUxpbmsSEQoEYm9keRgFIAEoCUgAiAEBElQKGGFuYWx5dGljc190b3BpY19zdWJfdHlwZRgGIAEoDjItLnN0cmVhbWxheWVyLmFuYWx5dGljcy52MS5jb21tb24uVG9waWNTdWJUeXBlSAGIAQESEgoFdGl0bGUYByABKAlIAogBARIWCglzdWJfdGl0bGUYCCABKAlIA4gBARJYCg5pbWFnZV9wb3NpdGlvbhgJIAEoDjI7LnN0cmVhbWxheWVyLmludGVyYWN0aXZlLk5vdGlmaWNhdGlvblByb21vdGlvbkltYWdlUG9zaXRpb25IBIgBARJFCgxtZWRpYV9mb3JtYXQYCiABKA4yKi5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5CYW5uZXJNZWRpYUZvcm1hdEgFiAEBQgcKBV9ib2R5QhsKGV9hbmFseXRpY3NfdG9waWNfc3ViX3R5cGVCCAoGX3RpdGxlQgwKCl9zdWJfdGl0bGVCEQoPX2ltYWdlX3Bvc2l0aW9uQg8KDV9tZWRpYV9mb3JtYXQiLAoGQWRMb29wEhUKCGludGVydmFsGAEgASgFSACIAQFCCwoJX2ludGVydmFsImQKBVByaWNlEg0KBXByaWNlGAEgASgJEjgKDHNhbGVfZW5hYmxlZBgCIAEoDjIiLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlNhbGVQcmljZRISCgpzYWxlX3ByaWNlGAMgASgJIiQKBFNpemUSDQoFbGFiZWwYASABKAkSDQoFdmFsdWUYAiABKAkiagoHUHJvZHVjdBIKCgJpZBgBIAEoCRIRCglpbWFnZV91cmwYAiABKAkSDQoFdGl0bGUYAyABKAkSEwoLZGVzY3JpcHRpb24YBCABKAkSDQoFY29sb3IYBSABKAkSDQoFYnJhbmQYBiABKAkipwMKEkdlbmVyYWxUYWJNZXRhZGF0YRIcCg9hZHZlcnRpc2VyX2xvZ28YASABKAlIAIgBARIXCg9hZHZlcnRpc2VyX25hbWUYAiABKAkSGgoNY2FtcGFpZ25fbmFtZRgDIAEoCUgBiAEBEjcKCGFkX2dyb3VwGAQgASgLMiAuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuQWRHcm91cEgCiAEBEj8KDHRyaWdnZXJfdHlwZRgFIAEoDjIkLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlRyaWdnZXJUeXBlSAOIAQESDAoEdGFncxgJIAMoCRIoChthZHZlcnRpc2VyX3RyYW5zcGFyZW50X2xvZ28YCiABKAlIBIgBARIYCgthZF9ncm91cF9pZBgLIAEoBUgFiAEBQhIKEF9hZHZlcnRpc2VyX2xvZ29CEAoOX2NhbXBhaWduX25hbWVCCwoJX2FkX2dyb3VwQg8KDV90cmlnZ2VyX3R5cGVCHgocX2FkdmVydGlzZXJfdHJhbnNwYXJlbnRfbG9nb0IOCgxfYWRfZ3JvdXBfaWQiwQEKB0FkR3JvdXASDAoEbmFtZRgBIAEoCRI6Cg5nZW9fdGFyZ2V0aW5ncxgCIAMoCzIiLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLkdlb1RhcmdldBIbChNhdWRpZW5jZV90YXJnZXRpbmdzGAMgAygJEkMKEWRldmljZV90YXJnZXRpbmdzGAQgAygOMiguc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuRGV2aWNlVGFyZ2V0aW5nEgoKAmlkGAUgASgFIicKCUdlb1RhcmdldBIMCgRjb2RlGAEgASgJEgwKBG5hbWUYAiABKAki0wIKCVByb21vdGlvbhJBCgZmb3JtYXQYASABKA4yKC5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5Qcm9tb3Rpb25Gb3JtYXRCAhgBSACIAQESLwoGYmFubmVyGAIgASgLMh8uc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuQmFubmVyEkkKFGdlbmVyYWxfdGFiX21ldGFkYXRhGAMgASgLMisuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuR2VuZXJhbFRhYk1ldGFkYXRhEjkKB2FkX3VuaXQYBCABKA4yHy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5BZFVuaXRCAhgBSAGIAQESNQoHc3BvbnNvchgFIAEoCzIkLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlNwb25zb3JzaGlwQgkKB19mb3JtYXRCCgoIX2FkX3VuaXQiPgoPQmFja2dyb3VuZEltYWdlEhUKDWxhbmRzY2FwZV91cmwYASABKAkSFAoMcG9ydHJhaXRfdXJsGAIgASgJIrQCCgpORkxQcm9kdWN0EgoKAmlkGAEgASgJEg0KBXRpdGxlGAIgASgJEhIKCnNhbGVfcHJpY2UYAyABKAESDQoFcHJpY2UYBCABKAESDAoEbGluaxgFIAEoCRISCgppbWFnZV9saW5rGAYgASgJEgwKBGd0aW4YByABKAkSHwoXZ29vZ2xlX3Byb2R1Y3RfY2F0ZWdvcnkYCCABKAkSDgoGZ2VuZGVyGAkgASgJEhMKC2Rlc2NyaXB0aW9uGAogASgJEhEKCWNvbmRpdGlvbhgLIAEoCRINCgVjb2xvchgMIAEoCRINCgVicmFuZBgNIAEoCRIUCgxhdmFpbGFiaWxpdHkYDiABKAkSDgoGbGVhZ3VlGA8gASgJEgwKBHRlYW0YECABKAkSDQoFc2l6ZXMYESADKAkinEcKD1F1ZXN0aW9uT3B0aW9ucxJECgRwb2xsGAEgASgLMjQuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUXVlc3Rpb25PcHRpb25zLlBvbGxPcHRpb25zSAASSAoGdHJpdmlhGAIgASgLMjYuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUXVlc3Rpb25PcHRpb25zLlRyaXZpYU9wdGlvbnNIABJQCgpwcmVkaWN0aW9uGAMgASgLMjouc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUXVlc3Rpb25PcHRpb25zLlByZWRpY3Rpb25PcHRpb25zSAASSgoHZmFjdG9pZBgEIAEoCzI3LnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlF1ZXN0aW9uT3B0aW9ucy5GYWN0b2lkT3B0aW9uc0gAEkYKBXR3ZWV0GAUgASgLMjUuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUXVlc3Rpb25PcHRpb25zLlR3ZWV0T3B0aW9uc0gAEk4KCXByb21vdGlvbhgGIAEoCzI5LnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlF1ZXN0aW9uT3B0aW9ucy5Qcm9tb3Rpb25PcHRpb25zSAAaDQoLUG9sbE9wdGlvbnMavAEKDVRyaXZpYU9wdGlvbnMSQQoQY29ycmVjdF9mZWVkYmFjaxgBIAEoCzInLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLkFuc3dlckZlZWRiYWNrEkMKEmluY29ycmVjdF9mZWVkYmFjaxgCIAEoCzInLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLkFuc3dlckZlZWRiYWNrEg4KBnBvaW50cxgDIAEoBBITCgtleHBsYW5hdGlvbhgEIAEoCRqbAQoRUHJlZGljdGlvbk9wdGlvbnMSQQoQY29ycmVjdF9mZWVkYmFjaxgBIAEoCzInLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLkFuc3dlckZlZWRiYWNrEkMKEmluY29ycmVjdF9mZWVkYmFjaxgCIAEoCzInLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLkFuc3dlckZlZWRiYWNrGtgECg5GYWN0b2lkT3B0aW9ucxINCgVpbWFnZRgBIAEoCRIMCgRib2R5GAIgASgJEjAKBXZpZGVvGAMgASgLMiEuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuRmlsZUxpbmsSMgoId2ViX2xpbmsYBCABKAsyIC5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5XZWJMaW5rEjsKCmltYWdlX21vZGUYBSABKA4yJy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5RdWVzdGlvbkltYWdlcxJHChN1c2VfYXNfbm90aWZpY2F0aW9uGAYgASgOMiouc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuVXNlQXNOb3RpZmljYXRpb24SPQoLY2xvc2VfdGltZXIYByABKAsyIy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5DbG9zZVRpbWVySACIAQESRAoPYXV0b19wbGF5X3ZpZGVvGAggASgOMiYuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuQXV0b1BsYXlWaWRlb0gBiAEBEjcKBG1vZGUYCSABKA4yKS5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5GYWN0b2lkTWVkaWFNb2RlEkYKEHBsYXlfdmlkZW9fbXV0ZWQYCiABKA4yJy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5QbGF5VmlkZW9NdXRlZEgCiAEBQg4KDF9jbG9zZV90aW1lckISChBfYXV0b19wbGF5X3ZpZGVvQhMKEV9wbGF5X3ZpZGVvX211dGVkGpwCCgxUd2VldE9wdGlvbnMSEQoJdHdlZXRfdXJsGAEgASgJEhAKCHR3ZWV0X2lkGAIgASgJElcKCnR3ZWV0X21ldGEYAyABKAsyQy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5RdWVzdGlvbk9wdGlvbnMuVHdlZXRPcHRpb25zLlR3ZWV0TWV0YWRhdGEajQEKDVR3ZWV0TWV0YWRhdGESDwoHYWNjb3VudBgBIAEoCRIYChBhY2NvdW50X3ZlcmlmaWVkGAIgASgIEhEKCWhhc19tZWRpYRgDIAEoCBIoCgV0d2VldBgEIAEoCzIZLnN0cmVhbWxheWVyLnNvY2lhbC5Ud2VldBIUCgxhY2NvdW50X25hbWUYBSABKAka3hMKCkdhbU9wdGlvbnMSEAoDZW52GAEgASgJSACIAQESFQoIZ2RmcF9yZXEYAiABKAlIAYgBARIPCgJpdRgDIAEoCUgCiAEBEhMKBm91dHB1dBgEIAEoCUgDiAEBEg8KAnN6GAUgASgJSASIAQESJAoXdW52aWV3ZWRfcG9zaXRpb25fc3RhcnQYBiABKAlIBYgBARIPCgdjaXVfc3pzGAcgAygJEhAKA3VybBgIIAEoCUgGiAEBEhwKD2Rlc2NyaXB0aW9uX3VybBgJIAEoCUgHiAEBEhcKCmNvcnJlbGF0b3IYCiABKAlICIgBARJYCgtjdXN0X3BhcmFtcxgLIAMoCzJDLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlF1ZXN0aW9uT3B0aW9ucy5HYW1PcHRpb25zLkN1c3RQYXJhbXNFbnRyeRISCgVwbGNtdBgMIAEoCUgJiAEBEhAKA3ZwYRgNIAEoCUgKiAEBEhMKBnZwbXV0ZRgOIAEoCUgLiAEBEhAKA3d0YRgPIAEoCUgMiAEBEhIKBWFjb25wGBAgASgJSA2IAQESFAoHYWRfcnVsZRgRIAEoCUgOiAEBEhQKB2FkX3R5cGUYEiABKAlID4gBARIPCgJobBgTIAEoCUgQiAEBEhAKA2R0aBgUIAEoCUgRiAEBEhEKBGdkcHIYFSABKAlIEogBARIZCgxnZHByX2NvbnNlbnQYFiABKAlIE4gBARIUCgdpYWJleGNsGBcgASgJSBSIAQESEAoDbGlwGBggASgISBWIAQESEAoDbHRkGBkgASgJSBaIAQESEQoEbm9mYhgaIAEoCUgXiAEBEhAKA25wYRgbIAEoCUgYiAEBEhMKBm9taWRfcBgcIAEoCUgZiAEBEhAKA3BwdBgdIAEoCUgaiAEBEhEKBHBwb3MYHiABKAlIG4gBARIRCgRwcGlkGB8gASgJSByIAQESEQoEc2NvchggIAEoCUgdiAEBEhUKCHNka19hcGlzGCEgASgJSB6IAQESEQoEc3NzcxgiIAEoCUgfiAEBEhIKBXNkbWF4GCMgASgJSCCIAQESEAoDc2lkGCQgASgJSCGIAQESEAoDcmRwGCUgASgJSCKIAQESGgoNYWRkdGxfY29uc2VudBgmIAEoCUgjiAEBEhIKBWFmdnN6GCcgASgJSCSIAQESFAoHYWxsY3VlcxgoIAEoCUgliAEBEhIKBWNtc2lkGCkgASgJSCaIAQESEAoDdmlkGCogASgJSCeIAQESFQoIZXhjbF9jYXQYKyABKAlIKIgBARIQCgNpcGQYLCABKAlIKYgBARIQCgNpcGUYLSABKAlIKogBARIcCg9tYXhfYWRfZHVyYXRpb24YLiABKAlIK4gBARIcCg9taW5fYWRfZHVyYXRpb24YLyABKAlILIgBARISCgVtcmlkeBgwIAEoCUgtiAEBEhEKBG1zaWQYMSABKAlILogBARIPCgJhbhgyIAEoCUgviAEBEhEKBHBtYWQYMyABKAlIMIgBARIRCgRwbW5kGDQgASgJSDGIAQESEQoEcG14ZBg1IAEoCUgyiAEBEhAKA3BvZBg2IAEoCUgziAEBEg8KAnBwGDcgASgJSDSIAQESEQoEcHBzahg4IAEoCUg1iAEBEhEKBHB0cGwYOSABKAlINogBARISCgVwdHBsbhg6IAEoCUg3iAEBEhEKBHB1YmYYOyABKAlIOIgBARIRCgRwdnRmGDwgASgJSDmIAQESEQoEcHZpZBg9IAEoCUg6iAEBEhMKBnB2aWRfcxg+IAEoCUg7iAEBEhEKBHJkaWQYPyABKAlIPIgBARITCgZpZHR5cGUYQCABKAlIPYgBARITCgZpc19sYXQYQSABKAlIPogBARIRCgR0ZmNkGEIgASgJSD+IAQESEAoDdHJ0GEMgASgJSECIAQESFQoIdmFkX3R5cGUYRCABKAlIQYgBARISCgV2aWRfZBhFIAEoCUhCiAEBEhIKBXZjb25wGEYgASgJSEOIAQESEAoDdnBpGEcgASgJSESIAQESEQoEdnBvcxhIIAEoCUhFiAEBEhEKBGltcGwYSSABKAlIRogBARIXCgp2YWRfZm9ybWF0GEogASgJSEeIAQESEwoGY2xpZW50GEsgASgJSEiIAQESIAoTdmlkZW9hZF9zdGFydF9kZWxheRhMIAEoCUhJiAEBEhkKDGdhbV9iYXNlX3VybBhNIAEoCUhKiAEBGjEKD0N1c3RQYXJhbXNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBQgYKBF9lbnZCCwoJX2dkZnBfcmVxQgUKA19pdUIJCgdfb3V0cHV0QgUKA19zekIaChhfdW52aWV3ZWRfcG9zaXRpb25fc3RhcnRCBgoEX3VybEISChBfZGVzY3JpcHRpb25fdXJsQg0KC19jb3JyZWxhdG9yQggKBl9wbGNtdEIGCgRfdnBhQgkKB192cG11dGVCBgoEX3d0YUIICgZfYWNvbnBCCgoIX2FkX3J1bGVCCgoIX2FkX3R5cGVCBQoDX2hsQgYKBF9kdGhCBwoFX2dkcHJCDwoNX2dkcHJfY29uc2VudEIKCghfaWFiZXhjbEIGCgRfbGlwQgYKBF9sdGRCBwoFX25vZmJCBgoEX25wYUIJCgdfb21pZF9wQgYKBF9wcHRCBwoFX3Bwb3NCBwoFX3BwaWRCBwoFX3Njb3JCCwoJX3Nka19hcGlzQgcKBV9zc3NzQggKBl9zZG1heEIGCgRfc2lkQgYKBF9yZHBCEAoOX2FkZHRsX2NvbnNlbnRCCAoGX2FmdnN6QgoKCF9hbGxjdWVzQggKBl9jbXNpZEIGCgRfdmlkQgsKCV9leGNsX2NhdEIGCgRfaXBkQgYKBF9pcGVCEgoQX21heF9hZF9kdXJhdGlvbkISChBfbWluX2FkX2R1cmF0aW9uQggKBl9tcmlkeEIHCgVfbXNpZEIFCgNfYW5CBwoFX3BtYWRCBwoFX3BtbmRCBwoFX3BteGRCBgoEX3BvZEIFCgNfcHBCBwoFX3Bwc2pCBwoFX3B0cGxCCAoGX3B0cGxuQgcKBV9wdWJmQgcKBV9wdnRmQgcKBV9wdmlkQgkKB19wdmlkX3NCBwoFX3JkaWRCCQoHX2lkdHlwZUIJCgdfaXNfbGF0QgcKBV90ZmNkQgYKBF90cnRCCwoJX3ZhZF90eXBlQggKBl92aWRfZEIICgZfdmNvbnBCBgoEX3ZwaUIHCgVfdnBvc0IHCgVfaW1wbEINCgtfdmFkX2Zvcm1hdEIJCgdfY2xpZW50QhYKFF92aWRlb2FkX3N0YXJ0X2RlbGF5Qg8KDV9nYW1fYmFzZV91cmwa/gYKC0FkQ2FtcGFpZ25zEk0KC2dhbV9vcHRpb25zGAEgASgLMjMuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUXVlc3Rpb25PcHRpb25zLkdhbU9wdGlvbnNIAIgBARIdCgxnYW1fYmFzZV91cmwYAiABKAlCAhgBSAGIAQESMAoHYWRfbG9vcBgDIAEoCzIfLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLkFkTG9vcBJOCgxpb3Nfc2V0dGluZ3MYBCABKAsyMy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5RdWVzdGlvbk9wdGlvbnMuR2FtT3B0aW9uc0gCiAEBElIKEGFuZHJvaWRfc2V0dGluZ3MYBSABKAsyMy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5RdWVzdGlvbk9wdGlvbnMuR2FtT3B0aW9uc0gDiAEBElYKFGRlc2t0b3Bfd2ViX3NldHRpbmdzGAYgASgLMjMuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUXVlc3Rpb25PcHRpb25zLkdhbU9wdGlvbnNIBIgBARJOCgxjdHZfc2V0dGluZ3MYByABKAsyMy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5RdWVzdGlvbk9wdGlvbnMuR2FtT3B0aW9uc0gFiAEBEhQKB2FkX25hbWUYCCABKAlIBogBARJLCgphZF9tYW5hZ2VyGAkgASgOMjIuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUXVlc3Rpb25PcHRpb25zLkFkTWFuYWdlckgHiAEBEnEKHnVzZV9wbGF0Zm9ybV9zcGVjaWZpY19zZXR0aW5ncxgKIAEoDjJELnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlF1ZXN0aW9uT3B0aW9ucy5Vc2VQbGF0Zm9ybVNwZWNpZmljU2V0dGluZ3NICIgBAUIOCgxfZ2FtX29wdGlvbnNCDwoNX2dhbV9iYXNlX3VybEIPCg1faW9zX3NldHRpbmdzQhMKEV9hbmRyb2lkX3NldHRpbmdzQhcKFV9kZXNrdG9wX3dlYl9zZXR0aW5nc0IPCg1fY3R2X3NldHRpbmdzQgoKCF9hZF9uYW1lQg0KC19hZF9tYW5hZ2VyQiEKH191c2VfcGxhdGZvcm1fc3BlY2lmaWNfc2V0dGluZ3Ma7wEKC1Nob3BPcHRpb25zEjEKB3Byb2R1Y3QYASABKAsyIC5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5Qcm9kdWN0Ei0KBXByaWNlGAIgASgLMh4uc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUHJpY2USNgoPYXZhaWxhYmxlX3NpemVzGAMgAygLMh0uc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuU2l6ZRIzCgZnZW5kZXIYBCABKA4yIy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5TaG9wR2VuZGVyEhEKCXN0b3JlX3VybBgFIAEoCRqUBAoOTkZMU2hvcE9wdGlvbnMSEgoKcHJvZHVjdF9pZBgBIAEoCRI5Cgdwcm9kdWN0GAIgASgLMiMuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuTkZMUHJvZHVjdEgAiAEBEl0KDG5vdGlmaWNhdGlvbhgDIAEoCzJHLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlF1ZXN0aW9uT3B0aW9ucy5ORkxTaG9wT3B0aW9ucy5ORkxOb3RpZmljYXRpb24axwIKD05GTE5vdGlmaWNhdGlvbhJLCg5tdWx0aWNvbXBvbmVudBgBIAEoDjIzLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLk5vdGlmaWNhdGlvbk11bHRpY29tcG9uZW50Em8KC2dhbWVfbW9tZW50GAIgASgLMlUuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUXVlc3Rpb25PcHRpb25zLk5GTFNob3BPcHRpb25zLk5GTE5vdGlmaWNhdGlvbi5ORkxHYW1lTW9tZW50SACIAQESDQoFdGl0bGUYAyABKAkSEwoLZGVzY3JpcHRpb24YBCABKAkaQgoNTkZMR2FtZU1vbWVudBINCgV0aXRsZRgBIAEoCRITCgtkZXNjcmlwdGlvbhgCIAEoCRINCgVtZWRpYRgDIAEoCUIOCgxfZ2FtZV9tb21lbnRCCgoIX3Byb2R1Y3QakQIKDlBhdXNlQWRPcHRpb25zEjAKB3FyX2NvZGUYASABKA4yHy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5RUkNvZGUSGgoNcXJfY29kZV9sYWJlbBgCIAEoCUgAiAEBEhgKC3FyX2NvZGVfdXJsGAMgASgJSAGIAQESNgoGbGF5b3V0GAQgASgOMiYuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUGF1c2VBZExheW91dBI9CgpzdGF0c190eXBlGAUgASgOMikuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUGF1c2VBZFN0YXRzVHlwZUIQCg5fcXJfY29kZV9sYWJlbEIOCgxfcXJfY29kZV91cmwawRQKEFByb21vdGlvbk9wdGlvbnMSNAoEdHlwZRgBIAEoDjImLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlByb21vdGlvblR5cGUSNQoHc3BvbnNvchgCIAEoCzIkLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlNwb25zb3JzaGlwEi8KBmJhbm5lchgDIAEoCzIfLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLkJhbm5lchJDCg1lbmFibGVfd2FsbGV0GAQgASgOMiguc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUHJvbW90aW9uV2FsbGV0QgIYARI6ChFhZGRpdGlvbmFsX2Jhbm5lchgFIAEoCzIfLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLkJhbm5lchISCgZjb3Vwb24YBiABKAlCAhgBEj0KCWxvZ29fbW9kZRgHIAEoDjIqLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlByb21vdGlvbkxvZ29Nb2RlEhYKCmNvdXBvbl96aXAYCCABKAlCAhgBEh4KEmNvdXBvbl9iYXJjb2RlX3VybBgJIAEoCUICGAESRgoLYnV0dG9uX3R5cGUYCiABKA4yLC5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5Qcm9tb3Rpb25CdXR0b25UeXBlSAGIAQESTwoMYWRfY2FtcGFpZ25zGAsgASgLMjQuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUXVlc3Rpb25PcHRpb25zLkFkQ2FtcGFpZ25zSAKIAQESPQoLY2xvc2VfdGltZXIYDCABKAsyIy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5DbG9zZVRpbWVySAOIAQESRAoPYXV0b19wbGF5X3ZpZGVvGA0gASgOMiYuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuQXV0b1BsYXlWaWRlb0gEiAEBEi8KHmJhY2tncm91bmRfaW1hZ2VfbGFuZHNjYXBlX3VybBgOIAEoCUICGAFIBYgBARIuCh1iYWNrZ3JvdW5kX2ltYWdlX3BvcnRyYWl0X3VybBgPIAEoCUICGAFIBogBARJtChVhZGRfdG9fd2FsbGV0X29wdGlvbnMYECABKAsyTC5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5RdWVzdGlvbk9wdGlvbnMuUHJvbW90aW9uT3B0aW9ucy5BZGRUb1dhbGxldE9wdGlvbnNIABJrChRzZW5kX3RvX3VzZXJfb3B0aW9ucxgRIAEoCzJLLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlF1ZXN0aW9uT3B0aW9ucy5Qcm9tb3Rpb25PcHRpb25zLlNlbmRUb1VzZXJPcHRpb25zSAASTwoMc2hvcF9vcHRpb25zGBIgASgLMjQuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUXVlc3Rpb25PcHRpb25zLlNob3BPcHRpb25zSAeIAQESVgoQbmZsX3Nob3Bfb3B0aW9ucxgTIAEoCzI3LnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlF1ZXN0aW9uT3B0aW9ucy5ORkxTaG9wT3B0aW9uc0gIiAEBEkYKEHBsYXlfdmlkZW9fbXV0ZWQYFCABKA4yJy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5QbGF5VmlkZW9NdXRlZEgJiAEBElYKEHBhdXNlX2FkX29wdGlvbnMYFSABKAsyNy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5RdWVzdGlvbk9wdGlvbnMuUGF1c2VBZE9wdGlvbnNICogBARJBCgZmb3JtYXQYFiABKA4yKC5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5Qcm9tb3Rpb25Gb3JtYXRCAhgBSAuIAQESZAoOYmFubmVyX29wdGlvbnMYFyABKAsyRy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5RdWVzdGlvbk9wdGlvbnMuUHJvbW90aW9uT3B0aW9ucy5CYW5uZXJPcHRpb25zSAyIAQEScQoVc3BvbnNvcl9mcmFtZV9vcHRpb25zGBggASgLMk0uc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUXVlc3Rpb25PcHRpb25zLlByb21vdGlvbk9wdGlvbnMuU3BvbnNvckZyYW1lT3B0aW9uc0gNiAEBGlQKEkFkZFRvV2FsbGV0T3B0aW9ucxIOCgZjb3Vwb24YASABKAkSEgoKY291cG9uX3ppcBgCIAEoCRIaChJjb3Vwb25fYmFyY29kZV91cmwYAyABKAka1AEKEVNlbmRUb1VzZXJPcHRpb25zEkMKEXVzZXJfYWNjb3VudF9pbmZvGAEgASgOMiguc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuVXNlckFjY291bnRJbmZvEiMKFnNlY29uZGFyeV9idXR0b25fbGFiZWwYAiABKAlIAIgBARIhChRzZWNvbmRhcnlfYnV0dG9uX3VybBgDIAEoCUgBiAEBQhkKF19zZWNvbmRhcnlfYnV0dG9uX2xhYmVsQhcKFV9zZWNvbmRhcnlfYnV0dG9uX3VybBqIAQoNQmFubmVyT3B0aW9ucxI5Cghwb3NpdGlvbhgBIAEoDjInLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLkJhbm5lclBvc2l0aW9uEjwKCm1lZGlhX3R5cGUYAiABKA4yKC5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5CYW5uZXJNZWRpYVR5cGUa5gEKE1Nwb25zb3JGcmFtZU9wdGlvbnMSTgoQYnV0dG9uX2FsaWdubWVudBgBIAEoDjI0LnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlNwb25zb3JGcmFtZUJ1dHRvbkFsaWdubWVudBIhChlwb3J0cmFpdF9ncmFkaWVudF9vdmVybGF5GAIgASgIEkcKEGJhY2tncm91bmRfaW1hZ2UYAyABKAsyKC5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5CYWNrZ3JvdW5kSW1hZ2VIAIgBAUITChFfYmFja2dyb3VuZF9pbWFnZUIQCg5idXR0b25fb3B0aW9uc0IOCgxfYnV0dG9uX3R5cGVCDwoNX2FkX2NhbXBhaWduc0IOCgxfY2xvc2VfdGltZXJCEgoQX2F1dG9fcGxheV92aWRlb0IhCh9fYmFja2dyb3VuZF9pbWFnZV9sYW5kc2NhcGVfdXJsQiAKHl9iYWNrZ3JvdW5kX2ltYWdlX3BvcnRyYWl0X3VybEIPCg1fc2hvcF9vcHRpb25zQhMKEV9uZmxfc2hvcF9vcHRpb25zQhMKEV9wbGF5X3ZpZGVvX211dGVkQhMKEV9wYXVzZV9hZF9vcHRpb25zQgkKB19mb3JtYXRCEQoPX2Jhbm5lcl9vcHRpb25zQhgKFl9zcG9uc29yX2ZyYW1lX29wdGlvbnMibAoJQWRNYW5hZ2VyEhQKEEFEX01BTkFHRVJfVU5TRVQQABIXChNBRF9NQU5BR0VSX1BVQk1BVElDEAESFgoSQURfTUFOQUdFUl9NQUdOSVRFEAISGAoUQURfTUFOQUdFUl9HT09HTEVfQUQQAyKgAQobVXNlUGxhdGZvcm1TcGVjaWZpY1NldHRpbmdzEigKJFVTRV9QTEFURk9STV9TUEVDSUZJQ19TRVRUSU5HU19VTlNFVBAAEioKJlVTRV9QTEFURk9STV9TUEVDSUZJQ19TRVRUSU5HU19FTkFCTEVEEAESKwonVVNFX1BMQVRGT1JNX1NQRUNJRklDX1NFVFRJTkdTX0RJU0FCTEVEEAJCCQoHb3B0aW9ucyI4CgNUYWcSCgoCaWQYASABKAkSDQoFbGFiZWwYAiABKAkSFgoObGFzdF91c2VkX3RpbWUYAyABKAQiHgoKUXVlc3Rpb25BaRIQCgh2ZXJpZmllZBgBIAEoCCJaChRBYnN0cmFjdFRyaWdnZXJTdGF0ZRIVCghkaXNhYmxlZBgBIAEoCEgAiAEBEhMKBnJlYXNvbhgCIAEoCUgBiAEBQgsKCV9kaXNhYmxlZEIJCgdfcmVhc29uIoEPCghRdWVzdGlvbhIKCgJpZBgBIAEoCRIzCgR0eXBlGAIgASgOMiUuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUXVlc3Rpb25UeXBlEhQKB3N1YmplY3QYAyABKAlIAIgBARI5CgdvcHRpb25zGAQgASgLMiguc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUXVlc3Rpb25PcHRpb25zEj8KCmFwcGVhcmFuY2UYBSABKAsyKy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5RdWVzdGlvbkFwcGVhcmFuY2USOQoLc3BvbnNvcnNoaXAYBiABKAsyJC5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5TcG9uc29yc2hpcBJDCgxub3RpZmljYXRpb24YByABKAsyLS5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5RdWVzdGlvbk5vdGlmaWNhdGlvbhI4CgdhbnN3ZXJzGAggAygLMicuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUXVlc3Rpb25BbnN3ZXISNwoGc3RhdHVzGAkgASgOMicuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUXVlc3Rpb25TdGF0dXMSFQoIcG9zaXRpb24YCiABKA1IAYgBARIVCg1tYXJrZXRfY2xvc2VkGAsgASgIEhQKDGFjdGl2YXRlZF9hdBgMIAEoCRIVCg1hbnN3ZXJfc2V0X2F0GA0gASgJEkMKCW92ZXJyaWRlcxgOIAMoCzIwLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlF1ZXN0aW9uLk92ZXJyaWRlc0VudHJ5EhAKCGV2ZW50X2lkGA8gASgJEjQKEHN0cmVhbV90aW1lc3RhbXAYECABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEioKBHRhZ3MYESADKAsyHC5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5UYWcSSgoUYnlwYXNzX25vdGlmaWNhdGlvbnMYEiABKAsyLC5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5CeXBhc3NOb3RpZmljYXRpb25zEhEKCWltcG9ydF9pZBgTIAEoCRIlChhhY3RpdmF0aW9uX3RyaWdnZXJfY291bnQYFCABKA1IAogBARI3CgZzb3VyY2UYFSABKA4yJy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5RdWVzdGlvblNvdXJjZRIvCgJhaRgWIAEoCzIjLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlF1ZXN0aW9uQWkSGQoMaGFzX3RyaWdnZXJzGBcgASgISAOIAQESEgoKY3JlYXRlZF9hdBgYIAEoCRIRCgRuYW1lGBkgASgJSASIAQESNQoJcHJvbW90aW9uGBogASgLMiIuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUHJvbW90aW9uEkIKEGJhY2tncm91bmRfaW1hZ2UYGyABKAsyKC5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5CYWNrZ3JvdW5kSW1hZ2USHAoPc3RhdHVzX3Bvc2l0aW9uGBwgASgNSAWIAQESPwoMYWN0aXZhdGVkX2J5GB0gASgOMiQuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuQWN0aXZhdGVkQnlIBogBARIkChdhY3RpdmF0ZWRfYnlfdHJpZ2dlcl9pZBgeIAEoCUgHiAEBEiYKGWFjdGl2YXRlZF9ieV90cmlnZ2VyX25hbWUYHyABKAlICIgBARIYCgt0ZW1wbGF0ZV9pZBggIAEoCUgJiAEBEjAKB2FkX3VuaXQYISABKA4yHy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5BZFVuaXQSFgoJbW9kdWxlX2lkGCIgASgJSAqIAQESIQoUaXNfbW9kdWxlX292ZXJyaWRkZW4YIyABKAhIC4gBARIzCgZmb3JtYXQYJCABKA4yIy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5DYXJkRm9ybWF0ElIKFmFic3RyYWN0X3RyaWdnZXJfc3RhdGUYJSABKAsyLS5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5BYnN0cmFjdFRyaWdnZXJTdGF0ZUgMiAEBGjAKDk92ZXJyaWRlc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCDoCOAFCCgoIX3N1YmplY3RCCwoJX3Bvc2l0aW9uQhsKGV9hY3RpdmF0aW9uX3RyaWdnZXJfY291bnRCDwoNX2hhc190cmlnZ2Vyc0IHCgVfbmFtZUISChBfc3RhdHVzX3Bvc2l0aW9uQg8KDV9hY3RpdmF0ZWRfYnlCGgoYX2FjdGl2YXRlZF9ieV90cmlnZ2VyX2lkQhwKGl9hY3RpdmF0ZWRfYnlfdHJpZ2dlcl9uYW1lQg4KDF90ZW1wbGF0ZV9pZEIMCgpfbW9kdWxlX2lkQhcKFV9pc19tb2R1bGVfb3ZlcnJpZGRlbkIZChdfYWJzdHJhY3RfdHJpZ2dlcl9zdGF0ZSLmBgoQRXh0ZW5kZWRRdWVzdGlvbhIKCgJpZBgBIAEoCRIzCgR0eXBlGAIgASgOMiUuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUXVlc3Rpb25UeXBlEg8KB3N1YmplY3QYAyABKAkSOQoHb3B0aW9ucxgEIAEoCzIoLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlF1ZXN0aW9uT3B0aW9ucxI/CgphcHBlYXJhbmNlGAUgASgLMisuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUXVlc3Rpb25BcHBlYXJhbmNlEjkKC3Nwb25zb3JzaGlwGAYgASgLMiQuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuU3BvbnNvcnNoaXASQwoMbm90aWZpY2F0aW9uGAcgASgLMi0uc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUXVlc3Rpb25Ob3RpZmljYXRpb24SQAoHYW5zd2VycxgIIAMoCzIvLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLkV4dGVuZGVkUXVlc3Rpb25BbnN3ZXISNwoGc3RhdHVzGAkgASgOMicuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUXVlc3Rpb25TdGF0dXMSEAoIcG9zaXRpb24YCiABKA0SFQoNbWFya2V0X2Nsb3NlZBgLIAEoCBIUCgxhY3RpdmF0ZWRfYXQYDCABKAkSFQoNYW5zd2VyX3NldF9hdBgNIAEoCRIQCghldmVudF9pZBgOIAEoCRJKChRieXBhc3Nfbm90aWZpY2F0aW9ucxgPIAEoCzIsLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLkJ5cGFzc05vdGlmaWNhdGlvbnMSNQoJcHJvbW90aW9uGBAgASgLMiIuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUHJvbW90aW9uEkIKEGJhY2tncm91bmRfaW1hZ2UYESABKAsyKC5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5CYWNrZ3JvdW5kSW1hZ2USGAoLdGVtcGxhdGVfaWQYEiABKAlIAIgBARIwCgdhZF91bml0GBMgASgOMh8uc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuQWRVbml0Qg4KDF90ZW1wbGF0ZV9pZCKvAwoQUXVlc3Rpb25UaW1lbGluZRIKCgJpZBgBIAEoCRIzCgR0eXBlGAIgASgOMiUuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUXVlc3Rpb25UeXBlEg8KB3N1YmplY3QYAyABKAkSFAoMYWN0aXZhdGVkX2F0GAQgASgJEjcKBnN0YXR1cxgFIAEoDjInLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlF1ZXN0aW9uU3RhdHVzEjkKB29wdGlvbnMYBiABKAsyKC5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5RdWVzdGlvbk9wdGlvbnMSQwoMbm90aWZpY2F0aW9uGAcgASgLMi0uc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUXVlc3Rpb25Ob3RpZmljYXRpb24SOgoJcHJvbW90aW9uGAggASgLMiIuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUHJvbW90aW9uSACIAQESMAoHYWRfdW5pdBgJIAEoDjIfLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLkFkVW5pdEIMCgpfcHJvbW90aW9uIuMLCg9FdmVudE1vZGVyYXRpb24SCgoCaWQYASABKAkSEAoIZXZlbnRfaWQYAiABKAkSPQoLc3BvbnNvcnNoaXAYAyABKAsyJC5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5TcG9uc29yc2hpcEICGAESGgoSb25ib2FyZGluZ19lbmFibGVkGAQgASgIEksKCHF1ZXN0aW9uGAUgASgLMjkuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuRXZlbnRNb2RlcmF0aW9uLlF1ZXN0aW9uU2V0dGluZ3MSTgoIc3BvbnNvcnMYBiABKAsyPC5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5FdmVudE1vZGVyYXRpb24uU3BvbnNvcnNoaXBTZXR0aW5ncxJTCgxub3RpZmljYXRpb24YByABKAsyPS5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5FdmVudE1vZGVyYXRpb24uTm90aWZpY2F0aW9uU2V0dGluZ3MSMAoMYWN0aXZhdGVkX2F0GAggASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIyCg5kZWFjdGl2YXRlZF9hdBgJIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASRQoScXVlc3Rpb25fYXV0b19wb3N0GAogASgLMikuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUXVlc3Rpb25BdXRvUG9zdBJKChRieXBhc3Nfbm90aWZpY2F0aW9ucxgLIAEoCzIsLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLkJ5cGFzc05vdGlmaWNhdGlvbnMSTgoWaW1wb3J0ZXJfY29sbGFib3JhdGlvbhgMIAEoCzIuLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLkltcG9ydGVyQ29sbGFib3JhdGlvbhIXCg9vcmdhbml6YXRpb25faWQYDSABKAka9QMKEFF1ZXN0aW9uU2V0dGluZ3MSPwoKYXBwZWFyYW5jZRgBIAEoCzIrLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlF1ZXN0aW9uQXBwZWFyYW5jZRJcCgZ0cml2aWEYAiABKAsyTC5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5FdmVudE1vZGVyYXRpb24uUXVlc3Rpb25TZXR0aW5ncy5Ucml2aWFDYXJkU2V0dGluZ3MSZAoKcHJlZGljdGlvbhgDIAEoCzJQLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLkV2ZW50TW9kZXJhdGlvbi5RdWVzdGlvblNldHRpbmdzLlByZWRpY3Rpb25DYXJkU2V0dGluZ3MSQgoRY29ycmVjdF9mZWVkYmFja3MYBCADKAsyJy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5BbnN3ZXJGZWVkYmFjaxJEChNpbmNvcnJlY3RfZmVlZGJhY2tzGAUgAygLMicuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuQW5zd2VyRmVlZGJhY2saJAoSVHJpdmlhQ2FyZFNldHRpbmdzEg4KBnBvaW50cxgBIAEoDRosChZQcmVkaWN0aW9uQ2FyZFNldHRpbmdzEhIKCm1heF9wb2ludHMYASABKA0aTQoTU3BvbnNvcnNoaXBTZXR0aW5ncxI2CghzcG9uc29ycxgBIAMoCzIkLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlNwb25zb3JzaGlwGrsBChROb3RpZmljYXRpb25TZXR0aW5ncxINCgVpbWFnZRgBIAEoCRIXCg9pbmRpY2F0b3JfY29sb3IYAiABKAkSPgoOaW1hZ2VfcG9zaXRpb24YAyABKA4yJi5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5JbWFnZVBvc2l0aW9uEjsKCmltYWdlX21vZGUYBCABKA4yJy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5RdWVzdGlvbkltYWdlcyKpAgoQUXVlc3Rpb25BdXRvUG9zdBI9CgVzdGF0ZRgBIAEoDjIuLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlF1ZXN0aW9uQXV0b1Bvc3RTdGF0ZRIQCghpbnRlcnZhbBgCIAEoDRIyCg5uZXh0X3Bvc3RfdGltZRgDIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASQgoKc3RhcnRfbW9kZRgEIAEoDjIuLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlF1ZXN0aW9uQXV0b1Bvc3RTdGFydBJMCg1zdGFydF9vcHRpb25zGAUgASgLMjUuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUXVlc3Rpb25BdXRvUG9zdFN0YXJ0T3B0aW9ucyKqAQocUXVlc3Rpb25BdXRvUG9zdFN0YXJ0T3B0aW9ucxJZCghzY2hlZHVsZRgBIAEoCzJFLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlF1ZXN0aW9uQXV0b1Bvc3RTdGFydE9wdGlvbnMuU2NoZWR1bGVPcHRpb25zSAAaJAoPU2NoZWR1bGVPcHRpb25zEhEKCXRpbWVzdGFtcBgBIAEoBEIJCgdvcHRpb25zIjMKCkFuc3dlckRhdGESEQoJYW5zd2VyX2lkGAEgASgJEhIKCnBlcmNlbnRhZ2UYAiABKA0iPQoKUGFnaW5hdGlvbhIMCgRwYWdlGAEgASgFEhEKCXBhZ2Vfc2l6ZRgCIAEoBRIOCgZjdXJzb3IYAyABKAkiJAoEU29ydBINCgVmaWVsZBgBIAEoCRINCgVvcmRlchgCIAEoCSLqAQoNUXVlc3Rpb25TdGF0cxIKCgJpZBgBIAEoCRJFCghxdWVzdGlvbhgCIAEoCzIzLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlF1ZXN0aW9uU3RhdHMuUXVlc3Rpb25EYXRhEj0KCnN0YXRpc3RpY3MYAyADKAsyKS5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5BbnN3ZXJWb3Rlc1N0YXRzGkcKDFF1ZXN0aW9uRGF0YRI3CgZzdGF0dXMYASABKA4yJy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5RdWVzdGlvblN0YXR1cyKlAQoQQW5zd2VyVm90ZXNTdGF0cxIRCglhbnN3ZXJfaWQYASABKAkSSAoFdm90ZXMYAiABKAsyOS5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5BbnN3ZXJWb3Rlc1N0YXRzLkFuc3dlclZvdGVzRGF0YRo0Cg9BbnN3ZXJWb3Rlc0RhdGESDQoFY291bnQYASABKA0SEgoKcGVyY2VudGFnZRgCIAEoDSJBChlTZXJ2ZXJOb3RpZmljYXRpb25PcHRpb25zEg8KB3NpbGVuY2UYASABKAgSEwoLc2tpcF91cGRhdGUYAiABKAgiVgoTQnlwYXNzTm90aWZpY2F0aW9ucxI/Cg5pbl9hcHBfc2lsZW5jZRgBIAEoDjInLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlNpbGVuY2VTZXR0aW5nIi4KC0ltcG9ydEVycm9yEg4KBnJvd19pZBgBIAEoCRIPCgdtZXNzYWdlGAIgASgJIsIBCg5JbXBvcnRQcm9ncmVzcxIRCglpbXBvcnRfaWQYASABKAkSNQoGc3RhdHVzGAIgASgOMiUuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuSW1wb3J0U3RhdHVzEjQKBmVycm9ycxgDIAMoCzIkLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLkltcG9ydEVycm9yEjAKDGxhc3RfdXBkYXRlZBgEIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAivgEKFUltcG9ydGVyQ29sbGFib3JhdGlvbhJMCgdpbXBvcnRzGAEgAygLMjsuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuSW1wb3J0ZXJDb2xsYWJvcmF0aW9uLkltcG9ydHNFbnRyeRpXCgxJbXBvcnRzRW50cnkSCwoDa2V5GAEgASgJEjYKBXZhbHVlGAIgASgLMicuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuSW1wb3J0UHJvZ3Jlc3M6AjgBItkICghUZW1wbGF0ZRIKCgJpZBgBIAEoCRIzCgR0eXBlGAIgASgOMiUuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUXVlc3Rpb25UeXBlEhQKB3N1YmplY3QYAyABKAlIAIgBARI5CgdvcHRpb25zGAQgASgLMiguc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUXVlc3Rpb25PcHRpb25zEj8KCmFwcGVhcmFuY2UYBSABKAsyKy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5RdWVzdGlvbkFwcGVhcmFuY2USOQoLc3BvbnNvcnNoaXAYBiABKAsyJC5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5TcG9uc29yc2hpcBJDCgxub3RpZmljYXRpb24YByABKAsyLS5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5RdWVzdGlvbk5vdGlmaWNhdGlvbhI4CgdhbnN3ZXJzGAggAygLMicuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuUXVlc3Rpb25BbnN3ZXISQwoJb3ZlcnJpZGVzGAkgAygLMjAuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuVGVtcGxhdGUuT3ZlcnJpZGVzRW50cnkSKgoEdGFncxgKIAMoCzIcLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlRhZxJKChRieXBhc3Nfbm90aWZpY2F0aW9ucxgLIAEoCzIsLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLkJ5cGFzc05vdGlmaWNhdGlvbnMSLwoCYWkYDCABKAsyIy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5RdWVzdGlvbkFpEhkKDGhhc190cmlnZ2VycxgNIAEoCEgBiAEBEhIKCmNyZWF0ZWRfYXQYDiABKAkSEQoEbmFtZRgPIAEoCUgCiAEBEjUKCXByb21vdGlvbhgQIAEoCzIiLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLlByb21vdGlvbhJCChBiYWNrZ3JvdW5kX2ltYWdlGBEgASgLMiguc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuQmFja2dyb3VuZEltYWdlEjAKB2FkX3VuaXQYEiABKA4yHy5zdHJlYW1sYXllci5pbnRlcmFjdGl2ZS5BZFVuaXQSGwoOcXVlc3Rpb25fY291bnQYEyABKAVIA4gBARIRCglldmVudF9pZHMYFCADKAkSFgoJbW9kdWxlX2lkGBUgASgJSASIAQESFQoIcG9zaXRpb24YFiABKA1IBYgBARowCg5PdmVycmlkZXNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAg6AjgBQgoKCF9zdWJqZWN0Qg8KDV9oYXNfdHJpZ2dlcnNCBwoFX25hbWVCEQoPX3F1ZXN0aW9uX2NvdW50QgwKCl9tb2R1bGVfaWRCCwoJX3Bvc2l0aW9uIn0KCk1vZHVsZUNhcmQSGwoTbGlua2VkX2V2ZW50c19jb3VudBgBIAEoDRIdChV1cGNvbWluZ19ldmVudHNfY291bnQYAiABKA0SGQoRaW5fcGxheV9hZHNfY291bnQYAyABKA0SGAoQcGF1c2VkX2Fkc19jb3VudBgEIAEoDSJjChBNb2R1bGVBZHZlcnRpc2VyEgwKBG5hbWUYASABKAkSDAoEbG9nbxgCIAEoCRIZChFpbl9wbGF5X2Fkc19jb3VudBgDIAEoDRIYChBwYXVzZWRfYWRzX2NvdW50GAQgASgNIuICCgZNb2R1bGUSCgoCaWQYASABKAkSDAoEbmFtZRgCIAEoCRIMCgR0eXBlGAMgASgJEg4KBmxlYWd1ZRgEIAEoCRITCgtjdXN0b21fbG9nbxgFIAEoCRISCgpjcmVhdGVkX2F0GAYgASgJEhIKCnVwZGF0ZWRfYXQYByABKAkSMQoEY2FyZBgIIAEoCzIjLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLk1vZHVsZUNhcmQSSgoYZGVmYXVsdF9iYWNrZ3JvdW5kX2ltYWdlGAkgASgLMiguc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuQmFja2dyb3VuZEltYWdlEj4KC2FkdmVydGlzZXJzGAogAygLMikuc3RyZWFtbGF5ZXIuaW50ZXJhY3RpdmUuTW9kdWxlQWR2ZXJ0aXNlchIRCgljb2xvcl9iYXIYCyABKAkSEQoJZXZlbnRfaWRzGAwgAygJKvsBCgtBY3RpdmF0ZWRCeRIWChJBQ1RJVkFURURfQllfVU5TRVQQABIVChFBQ1RJVkFURURfQllfVVNFUhABEhoKFkFDVElWQVRFRF9CWV9BVVRPX1BPU1QQAhIkCiBBQ1RJVkFURURfQllfVFJJR0dFUl9UWVBFX01BTlVBTBADEikKJUFDVElWQVRFRF9CWV9UUklHR0VSX1RZUEVfRVZFTlRfQkFTRUQQBBIlCiFBQ1RJVkFURURfQllfVFJJR0dFUl9UWVBFX1NDVEVfMzUQBRIpCiVBQ1RJVkFURURfQllfVFJJR0dFUl9UWVBFX1ZBU1RfU0lHTkFMEAYqyAEKDFF1ZXN0aW9uVHlwZRIXChNRVUVTVElPTl9UWVBFX1VOU0VUEAASFgoSUVVFU1RJT05fVFlQRV9QT0xMEAESGAoUUVVFU1RJT05fVFlQRV9UUklWSUEQAhIcChhRVUVTVElPTl9UWVBFX1BSRURJQ1RJT04QAxIZChVRVUVTVElPTl9UWVBFX0ZBQ1RPSUQQBBIXChNRVUVTVElPTl9UWVBFX1RXRUVUEAUSGwoXUVVFU1RJT05fVFlQRV9QUk9NT1RJT04QBipjCg5RdWVzdGlvblNvdXJjZRIZChVRVUVTVElPTl9TT1VSQ0VfVU5TRVQQABIWChJRVUVTVElPTl9TT1VSQ0VfQUkQARIeChpRVUVTVElPTl9TT1VSQ0VfQ1NWX0lNUE9SVBACKuIBCg5RdWVzdGlvblN0YXR1cxIZChVRVUVTVElPTl9TVEFUVVNfVU5TRVQQABIhCh1RVUVTVElPTl9TVEFUVVNfTk9UX1NDSEVEVUxFRBABEh0KGVFVRVNUSU9OX1NUQVRVU19TQ0hFRFVMRUQQAhIaChZRVUVTVElPTl9TVEFUVVNfQUNUSVZFEAMSHAoYUVVFU1RJT05fU1RBVFVTX1JFU09MVkVEEAQSGwoXUVVFU1RJT05fU1RBVFVTX0VOQUJMRUQQBRIcChhRVUVTVElPTl9TVEFUVVNfRElTQUJMRUQQBiruAQoQUXVlc3Rpb25Qb3NpdGlvbhIbChdRVUVTVElPTl9QT1NJVElPTl9VTlNFVBAAEh0KGVFVRVNUSU9OX1BPU0lUSU9OX0RFRkFVTFQQARIiCh5RVUVTVElPTl9QT1NJVElPTl9GSVhFRF9CT1RUT00QAhIaChZRVUVTVElPTl9QT1NJVElPTl9MQkFSEAMSHQoZUVVFU1RJT05fUE9TSVRJT05fT1ZFUkxBWRAEEh0KGVFVRVNUSU9OX1BPU0lUSU9OX1NJREVCQVIQBRIgChxRVUVTVElPTl9QT1NJVElPTl9GVUxMX0JMRUVEEAYqaQoOUXVlc3Rpb25MYXlvdXQSGQoVUVVFU1RJT05fTEFZT1VUX1VOU0VUEAASHQoZUVVFU1RJT05fTEFZT1VUX0xJU1RfVklFVxABEh0KGVFVRVNUSU9OX0xBWU9VVF9HUklEX1ZJRVcQAiq8AQoOUXVlc3Rpb25JbWFnZXMSGQoVUVVFU1RJT05fSU1BR0VTX1VOU0VUEAASGAoUUVVFU1RJT05fSU1BR0VTX05PTkUQARIbChdRVUVTVElPTl9JTUFHRVNfUk9VTkRFRBACEh8KG1FVRVNUSU9OX0lNQUdFU19UUkFOU1BBUkVOVBADEhwKGFFVRVNUSU9OX0lNQUdFU19DRU5URVJFRBAEEhkKFVFVRVNUSU9OX0lNQUdFU19TT0xJRBAFKvQBChlOb3RpZmljYXRpb25Qcm9tb3Rpb25Nb2RlEiUKIU5PVElGSUNBVElPTl9QUk9NT1RJT05fTU9ERV9VTlNFVBAAEicKI05PVElGSUNBVElPTl9QUk9NT1RJT05fTU9ERV9DTEFTU0lDEAESKwonTk9USUZJQ0FUSU9OX1BST01PVElPTl9NT0RFX0xPV0VSX1RISVJEEAISMQotTk9USUZJQ0FUSU9OX1BST01PVElPTl9NT0RFX1JJQ0hfTk9USUZJQ0FUSU9OEAMSJwojTk9USUZJQ0FUSU9OX1BST01PVElPTl9NT0RFX1NJREVCQVIQBCrNAgoiTm90aWZpY2F0aW9uUHJvbW90aW9uSW1hZ2VQb3NpdGlvbhIvCitOT1RJRklDQVRJT05fUFJPTU9USU9OX0lNQUdFX1BPU0lUSU9OX1VOU0VUEAASLQopTk9USUZJQ0FUSU9OX1BST01PVElPTl9JTUFHRV9QT1NJVElPTl9GSVQQARIyCi5OT1RJRklDQVRJT05fUFJPTU9USU9OX0lNQUdFX1BPU0lUSU9OX0NFTlRFUkVEEAISMAosTk9USUZJQ0FUSU9OX1BST01PVElPTl9JTUFHRV9QT1NJVElPTl9CT1RUT00QAxIvCitOT1RJRklDQVRJT05fUFJPTU9USU9OX0lNQUdFX1BPU0lUSU9OX1NPTElEEAQSMAosTk9USUZJQ0FUSU9OX1BST01PVElPTl9JTUFHRV9QT1NJVElPTl9NSURETEUQBSqRAQobTm90aWZpY2F0aW9uU3BvbnNvckxvZ29Nb2RlEiMKH05PVElGSUNBVElPTl9TUE9OU09SX0xPR09fVU5TRVQQABIiCh5OT1RJRklDQVRJT05fU1BPTlNPUl9MT0dPX05PTkUQARIpCiVOT1RJRklDQVRJT05fU1BPTlNPUl9MT0dPX1RSQU5TUEFSRU5UEAIqTgoLQ3RhSWNvbk1vZGUSEgoOQ1RBX0lDT05fVU5TRVQQABIRCg1DVEFfSUNPTl9OT05FEAESGAoUQ1RBX0lDT05fVFJBTlNQQVJFTlQQAipcCg1JbWFnZVBvc2l0aW9uEhgKFElNQUdFX1BPU0lUSU9OX1VOU0VUEAASFwoTSU1BR0VfUE9TSVRJT05fTEVGVBABEhgKFElNQUdFX1BPU0lUSU9OX1JJR0hUEAIqjwcKDVByb21vdGlvblR5cGUSGAoUUFJPTU9USU9OX1RZUEVfVU5TRVQQABIjChtQUk9NT1RJT05fVFlQRV9JTkdBTUVfSUFCMjEQARoCCAESIwobUFJPTU9USU9OX1RZUEVfSU5HQU1FX0lBQjExEAIaAggBEiMKG1BST01PVElPTl9UWVBFX0lOR0FNRV9JQUI2MRADGgIIARIoCiBQUk9NT1RJT05fVFlQRV9JTkdBTUVfSUFCMTFfTEJBUhAEGgIIARIoCiBQUk9NT1RJT05fVFlQRV9JTkdBTUVfSUFCMjFfTEJBUhAFGgIIARIeChpQUk9NT1RJT05fVFlQRV9FWFRFUk5BTF9BRBAGEiUKIVBST01PVElPTl9UWVBFX1ZJREVPX1NJREVfQllfU0lERRAHEiUKIVBST01PVElPTl9UWVBFX1BJQ1RVUkVfSU5fUElDVFVSRRAIEiAKGFBST01PVElPTl9UWVBFX1NIT1BfTEJBUhAJGgIIARIjChtQUk9NT1RJT05fVFlQRV9TSE9QX09WRVJMQVkQChoCCAESIwobUFJPTU9USU9OX1RZUEVfU0hPUF9TSURFQkFSEAsaAggBEh4KGlBST01PVElPTl9UWVBFX0xPV0VSX1RISVJEEAwSJAocUFJPTU9USU9OX1RZUEVfTkZMX1NIT1BfTEJBUhANGgIIARInCh9QUk9NT1RJT05fVFlQRV9ORkxfU0hPUF9PVkVSTEFZEA4aAggBEicKH1BST01PVElPTl9UWVBFX05GTF9TSE9QX1NJREVCQVIQDxoCCAESKwojUFJPTU9USU9OX1RZUEVfSU5HQU1FX0lBQjIxX1NJREVCQVIQEBoCCAESKwojUFJPTU9USU9OX1RZUEVfSU5HQU1FX0lBQjExX1NJREVCQVIQERoCCAESKwojUFJPTU9USU9OX1RZUEVfSU5HQU1FX0lBQjYxX1NJREVCQVIQEhoCCAESGAoUUFJPTU9USU9OX1RZUEVfU1RBVFMQExIbChdQUk9NT1RJT05fVFlQRV9TVEFOREFSRBAUEhcKE1BST01PVElPTl9UWVBFX1NIT1AQFRIbChdQUk9NT1RJT05fVFlQRV9ORkxfU0hPUBAWEhkKFVBST01PVElPTl9UWVBFX0JBTk5FUhAXEiAKHFBST01PVElPTl9UWVBFX1NQT05TT1JfRlJBTUUQGCqlAQoPUHJvbW90aW9uRm9ybWF0EhoKFlBST01PVElPTl9GT1JNQVRfVU5TRVQQABIZChVQUk9NT1RJT05fRk9STUFUX0xCQVIQARIcChhQUk9NT1RJT05fRk9STUFUX09WRVJMQVkQAhIcChhQUk9NT1RJT05fRk9STUFUX1NJREVCQVIQAxIfChtQUk9NT1RJT05fRk9STUFUX0ZVTExfQkxFRUQQBCpqCg9Qcm9tb3Rpb25XYWxsZXQSGgoWUFJPTU9USU9OX1dBTExFVF9VTlNFVBAAEhwKGFBST01PVElPTl9XQUxMRVRfRU5BQkxFRBABEh0KGVBST01PVElPTl9XQUxMRVRfRElTQUJMRUQQAipGCgZRUkNvZGUSEQoNUVJfQ09ERV9VTlNFVBAAEhMKD1FSX0NPREVfRU5BQkxFRBABEhQKEFFSX0NPREVfRElTQUJMRUQQAip7Cg1QYXVzZUFkTGF5b3V0EhkKFVBBVVNFX0FEX0xBWU9VVF9VTlNFVBAAEhgKFFBBVVNFX0FEX0xBWU9VVF9MRUZUEAESGgoWUEFVU0VfQURfTEFZT1VUX0NFTlRFUhACEhkKFVBBVVNFX0FEX0xBWU9VVF9JTUFHRRADKnwKEFBhdXNlQWRTdGF0c1R5cGUSHQoZUEFVU0VfQURfU1RBVFNfVFlQRV9VTlNFVBAAEh8KG1BBVVNFX0FEX1NUQVRTX1RZUEVfTUFUQ0hVUBABEigKJFBBVVNFX0FEX1NUQVRTX1RZUEVfTEVBR1VFX1NUQU5ESU5HUxACKvgBChNQcm9tb3Rpb25CdXR0b25UeXBlEh8KG1BST01PVElPTl9CVVRUT05fVFlQRV9VTlNFVBAAEh8KG1BST01PVElPTl9CVVRUT05fVFlQRV9CQVNJQxABEicKI1BST01PVElPTl9CVVRUT05fVFlQRV9BRERfVE9fV0FMTEVUEAMSKQolUFJPTU9USU9OX0JVVFRPTl9UWVBFX1JFVFVSTl9UT19WSURFTxAEEiMKH1BST01PVElPTl9CVVRUT05fVFlQRV9OT19CVVRUT04QBRImCiJQUk9NT1RJT05fQlVUVE9OX1RZUEVfU0VORF9UT19VU0VSEAYqaAoPVXNlckFjY291bnRJbmZvEhsKF1VTRVJfQUNDT1VOVF9JTkZPX1VOU0VUEAASGwoXVVNFUl9BQ0NPVU5UX0lORk9fRU1BSUwQARIbChdVU0VSX0FDQ09VTlRfSU5GT19QSE9ORRACKpABChFQcm9tb3Rpb25Mb2dvTW9kZRIdChlQUk9NT1RJT05fTE9HT19NT0RFX1VOU0VUEAASHAoYUFJPTU9USU9OX0xPR09fTU9ERV9MRUZUEAESHgoaUFJPTU9USU9OX0xPR09fTU9ERV9DRU5URVIQAhIeChpQUk9NT1RJT05fTE9HT19NT0RFX01JTk1BTBADKnUKEVVzZUFzTm90aWZpY2F0aW9uEh0KGVVTRV9BU19OT1RJRklDQVRJT05fVU5TRVQQABIfChtVU0VfQVNfTk9USUZJQ0FUSU9OX0VOQUJMRUQQARIgChxVU0VfQVNfTk9USUZJQ0FUSU9OX0RJU0FCTEVEEAIqagoTTm90aWZpY2F0aW9uRW5hYmxlZBIeChpOT1RJRklDQVRJT05fRU5BQkxFRF9VTlNFVBAAEhgKFE5PVElGSUNBVElPTl9FTkFCTEVEEAESGQoVTk9USUZJQ0FUSU9OX0RJU0FCTEVEEAIqoAEKG05vdGlmaWNhdGlvblVzZUNvbnRlbnRNZWRpYRIoCiROT1RJRklDQVRJT05fVVNFX0NPTlRFTlRfTUVESUFfVU5TRVQQABIqCiZOT1RJRklDQVRJT05fVVNFX0NPTlRFTlRfTUVESUFfRU5BQkxFRBABEisKJ05PVElGSUNBVElPTl9VU0VfQ09OVEVOVF9NRURJQV9ESVNBQkxFRBACKqABChtOb3RpZmljYXRpb25Vc2VDb250ZW50VGV4dHMSKAokTk9USUZJQ0FUSU9OX1VTRV9DT05URU5UX1RFWFRTX1VOU0VUEAASKgomTk9USUZJQ0FUSU9OX1VTRV9DT05URU5UX1RFWFRTX0VOQUJMRUQQARIrCidOT1RJRklDQVRJT05fVVNFX0NPTlRFTlRfVEVYVFNfRElTQUJMRUQQAippCg5DbG9zZVRpbWVyQXV0bxIaChZDTE9TRV9USU1FUl9BVVRPX1VOU0VUEAASHAoYQ0xPU0VfVElNRVJfQVVUT19FTkFCTEVEEAESHQoZQ0xPU0VfVElNRVJfQVVUT19ESVNBQkxFRBACKmUKDUF1dG9QbGF5VmlkZW8SGQoVQVVUT19QTEFZX1ZJREVPX1VOU0VUEAASGwoXQVVUT19QTEFZX1ZJREVPX0VOQUJMRUQQARIcChhBVVRPX1BMQVlfVklERU9fRElTQUJMRUQQAippCg5QbGF5VmlkZW9NdXRlZBIaChZQTEFZX1ZJREVPX01VVEVEX1VOU0VUEAASHAoYUExBWV9WSURFT19NVVRFRF9FTkFCTEVEEAESHQoZUExBWV9WSURFT19NVVRFRF9ESVNBQkxFRBACKqoBCgZBZFR5cGUSEQoNQURfVFlQRV9VTlNFVBAAEhAKDEFEX1RZUEVfTEJBUhABEhMKD0FEX1RZUEVfU0lERUJBUhACEhMKD0FEX1RZUEVfT1ZFUkxBWRADEhcKE0FEX1RZUEVfTE9XRVJfVEhJUkQQBBIYChRBRF9UWVBFX1NJREVfQllfU0lERRAFEh4KGkFEX1RZUEVfUElDVFVSRV9JTl9QSUNUVVJFEAYq5AsKDlF1ZXN0aW9uVUlUeXBlEhoKFlFVRVNUSU9OX1VJX1RZUEVfVU5TRVQQABIeChpRVUVTVElPTl9VSV9UWVBFX0dPT0dMRV9BRBABEiAKHFFVRVNUSU9OX1VJX1RZUEVfU1RBTkRBUkRfQUQQAhIgChxRVUVTVElPTl9VSV9UWVBFX0xPV0VSX1RISVJEEAMSIQodUVVFU1RJT05fVUlfVFlQRV9TSURFX0JZX1NJREUQBBInCiNRVUVTVElPTl9VSV9UWVBFX1BJQ1RVUkVfSU5fUElDVFVSRRAFEiUKIVFVRVNUSU9OX1VJX1RZUEVfTkZMX1NIT1BQQUJMRV9BRBAGEh8KG1FVRVNUSU9OX1VJX1RZUEVfSU5TSUdIVF9BRBAHEhwKGFFVRVNUSU9OX1VJX1RZUEVfUE9MTF9BRBAIEh4KGlFVRVNUSU9OX1VJX1RZUEVfVFJJVklBX0FEEAkSIgoeUVVFU1RJT05fVUlfVFlQRV9QUkVESUNUSU9OX0FEEAoSIQodUVVFU1RJT05fVUlfVFlQRV9TSE9QUEFCTEVfQUQQCxImCiJRVUVTVElPTl9VSV9UWVBFX0FJX0FTU0lTVEFOVF9CRVRBEAwSGQoVUVVFU1RJT05fVUlfVFlQRV9QT0xMEA0SGwoXUVVFU1RJT05fVUlfVFlQRV9UUklWSUEQDhIfChtRVUVTVElPTl9VSV9UWVBFX1BSRURJQ1RJT04QDxIcChhRVUVTVElPTl9VSV9UWVBFX0lOU0lHSFQQEBIbChdRVUVTVElPTl9VSV9UWVBFX1hfUE9TVBAREhoKFlFVRVNUSU9OX1VJX1RZUEVfU1RBVFMQEhIbChdRVUVTVElPTl9VSV9UWVBFX0JBTk5FUhATEiIKHlFVRVNUSU9OX1VJX1RZUEVfU1BPTlNPUl9GUkFNRRAUEiUKIVBBVVNFRF9RVUVTVElPTl9VSV9UWVBFX0dPT0dMRV9BRBBlEicKI1BBVVNFRF9RVUVTVElPTl9VSV9UWVBFX1NUQU5EQVJEX0FEEGYSJwojUEFVU0VEX1FVRVNUSU9OX1VJX1RZUEVfTE9XRVJfVEhJUkQQZxIoCiRQQVVTRURfUVVFU1RJT05fVUlfVFlQRV9TSURFX0JZX1NJREUQaBIuCipQQVVTRURfUVVFU1RJT05fVUlfVFlQRV9QSUNUVVJFX0lOX1BJQ1RVUkUQaRIsCihQQVVTRURfUVVFU1RJT05fVUlfVFlQRV9ORkxfU0hPUFBBQkxFX0FEEGoSJgoiUEFVU0VEX1FVRVNUSU9OX1VJX1RZUEVfSU5TSUdIVF9BRBBrEiMKH1BBVVNFRF9RVUVTVElPTl9VSV9UWVBFX1BPTExfQUQQbBIlCiFQQVVTRURfUVVFU1RJT05fVUlfVFlQRV9UUklWSUFfQUQQbRIpCiVQQVVTRURfUVVFU1RJT05fVUlfVFlQRV9QUkVESUNUSU9OX0FEEGQSKAokUEFVU0VEX1FVRVNUSU9OX1VJX1RZUEVfU0hPUFBBQkxFX0FEEG8SLQopUEFVU0VEX1FVRVNUSU9OX1VJX1RZUEVfQUlfQVNTSVNUQU5UX0JFVEEQcBIgChxQQVVTRURfUVVFU1RJT05fVUlfVFlQRV9QT0xMEHESIgoeUEFVU0VEX1FVRVNUSU9OX1VJX1RZUEVfVFJJVklBEHISJgoiUEFVU0VEX1FVRVNUSU9OX1VJX1RZUEVfUFJFRElDVElPThBzEiMKH1BBVVNFRF9RVUVTVElPTl9VSV9UWVBFX0lOU0lHSFQQdBIiCh5QQVVTRURfUVVFU1RJT05fVUlfVFlQRV9YX1BPU1QQdRIhCh1QQVVTRURfUVVFU1RJT05fVUlfVFlQRV9TVEFUUxB2EiIKHlBBVVNFRF9RVUVTVElPTl9VSV9UWVBFX0JBTk5FUhB3EikKJVBBVVNFRF9RVUVTVElPTl9VSV9UWVBFX1NQT05TT1JfRlJBTUUQeCppCg5Vc2VHZW5lcmFsTG9nbxIaChZVU0VfR0VORVJBTF9MT0dPX1VOU0VUEAASHAoYVVNFX0dFTkVSQUxfTE9HT19FTkFCTEVEEAESHQoZVVNFX0dFTkVSQUxfTE9HT19ESVNBQkxFRBACKpoBChtTcG9uc29yRnJhbWVCdXR0b25BbGlnbm1lbnQSKAokU1BPTlNPUl9GUkFNRV9CVVRUT05fQUxJR05NRU5UX1VOU0VUEAASJwojU1BPTlNPUl9GUkFNRV9CVVRUT05fQUxJR05NRU5UX0xFRlQQARIoCiRTUE9OU09SX0ZSQU1FX0JVVFRPTl9BTElHTk1FTlRfUklHSFQQAipqChFCYW5uZXJNZWRpYUZvcm1hdBIdChlCQU5ORVJfTUVESUFfRk9STUFUX1VOU0VUEAASGgoWQkFOTkVSX01FRElBX0ZPUk1BVF8xMRABEhoKFkJBTk5FUl9NRURJQV9GT1JNQVRfMjEQAipoCg9CYW5uZXJNZWRpYVR5cGUSGwoXQkFOTkVSX01FRElBX1RZUEVfVU5TRVQQABIbChdCQU5ORVJfTUVESUFfVFlQRV9WSURFTxABEhsKF0JBTk5FUl9NRURJQV9UWVBFX0lNQUdFEAIq7gEKDkJhbm5lclBvc2l0aW9uEhkKFUJBTk5FUl9QT1NJVElPTl9VTlNFVBAAEhwKGEJBTk5FUl9QT1NJVElPTl9UT1BfTEVGVBABEh4KGkJBTk5FUl9QT1NJVElPTl9UT1BfQ0VOVEVSEAISHQoZQkFOTkVSX1BPU0lUSU9OX1RPUF9SSUdIVBADEh8KG0JBTk5FUl9QT1NJVElPTl9CT1RUT01fTEVGVBAEEiEKHUJBTk5FUl9QT1NJVElPTl9CT1RUT01fQ0VOVEVSEAUSIAocQkFOTkVSX1BPU0lUSU9OX0JPVFRPTV9SSUdIVBAGKmkKClNob3BHZW5kZXISFQoRU0hPUF9HRU5ERVJfVU5TRVQQABIUChBTSE9QX0dFTkRFUl9NQUxFEAESFgoSU0hPUF9HRU5ERVJfRkVNQUxFEAISFgoSU0hPUF9HRU5ERVJfVU5JU0VYEAMqUgoJU2FsZVByaWNlEhQKEFNBTEVfUFJJQ0VfVU5TRVQQABIWChJTQUxFX1BSSUNFX0VOQUJMRUQQARIXChNTQUxFX1BSSUNFX0RJU0FCTEVEEAIqlAEKC1RyaWdnZXJUeXBlEhYKElRSSUdHRVJfVFlQRV9VTlNFVBAAEhcKE1RSSUdHRVJfVFlQRV9NQU5VQUwQARIcChhUUklHR0VSX1RZUEVfRVZFTlRfQkFTRUQQAhIYChRUUklHR0VSX1RZUEVfU0NURV8zNRADEhwKGFRSSUdHRVJfVFlQRV9WQVNUX1NJR05BTBAEKn4KD0RldmljZVRhcmdldGluZxIaChZERVZJQ0VfVEFSR0VUSU5HX1VOU0VUEAASGwoXREVWSUNFX1RBUkdFVElOR19NT0JJTEUQARIYChRERVZJQ0VfVEFSR0VUSU5HX0NUVhACEhgKFERFVklDRV9UQVJHRVRJTkdfV0VCEAMqRQoGQWRVbml0EhEKDUFEX1VOSVRfVU5TRVQQABIUChBBRF9VTklUX1NUQU5EQVJUEAESEgoOQURfVU5JVF9QQVVTRUQQAiqWAQoaTm90aWZpY2F0aW9uTXVsdGljb21wb25lbnQSJQohTk9USUZJQ0FUSU9OX01VTFRJQ09NUE9ORU5UX1VOU0VUEAASJwojTk9USUZJQ0FUSU9OX01VTFRJQ09NUE9ORU5UX0VOQUJMRUQQARIoCiROT1RJRklDQVRJT05fTVVMVElDT01QT05FTlRfRElTQUJMRUQQAiqoAQoQRmFjdG9pZE1lZGlhTW9kZRIcChhGQUNUT0lEX01FRElBX01PREVfVU5TRVQQABIcChhGQUNUT0lEX01FRElBX01PREVfSU1BR0UQARIcChhGQUNUT0lEX01FRElBX01PREVfVklERU8QAhIdChlGQUNUT0lEX01FRElBX01PREVfQ0lSQ0xFEAMSGwoXRkFDVE9JRF9NRURJQV9NT0RFX05PTkUQBCqHAQoKQ2FyZEZvcm1hdBIVChFDQVJEX0ZPUk1BVF9VTlNFVBAAEhcKE0NBUkRfRk9STUFUX09WRVJMQVkQARIXChNDQVJEX0ZPUk1BVF9TSURFQkFSEAISFAoQQ0FSRF9GT1JNQVRfTEJBUhADEhoKFkNBUkRfRk9STUFUX0ZVTExfQkxFRUQQBCrqAQoVUXVlc3Rpb25BdXRvUG9zdFN0YXRlEiIKHlFVRVNUSU9OX0FVVE9fUE9TVF9TVEFURV9VTlNFVBAAEh8KG1FVRVNUSU9OX0FVVE9fUE9TVF9TVEFURV9PThABEiAKHFFVRVNUSU9OX0FVVE9fUE9TVF9TVEFURV9PRkYQAhIjCh9RVUVTVElPTl9BVVRPX1BPU1RfU1RBVEVfUEFVU0VEEAMSIQodUVVFU1RJT05fQVVUT19QT1NUX1NUQVRFX0lETEUQBBIiCh5RVUVTVElPTl9BVVRPX1BPU1RfU1RBVEVfUkVTRVQQBSqEAQoVUXVlc3Rpb25BdXRvUG9zdFN0YXJ0EiIKHlFVRVNUSU9OX0FVVE9fUE9TVF9TVEFSVF9VTlNFVBAAEiUKIVFVRVNUSU9OX0FVVE9fUE9TVF9TVEFSVF9TQ0hFRFVMRRABEiAKHFFVRVNUSU9OX0FVVE9fUE9TVF9TVEFSVF9OT1cQAipWChJRdWVzdGlvblNraXBSZWFzb24SHgoaUVVFU1RJT05fU0tJUF9SRUFTT05fVU5TRVQQABIgChxRVUVTVElPTl9TS0lQX1JFQVNPTl9PVkVSRFVFEAEqXAoOU2lsZW5jZVNldHRpbmcSGQoVU0lMRU5DRV9TRVRUSU5HX1VOU0VUEAASFgoSU0lMRU5DRV9TRVRUSU5HX09OEAESFwoTU0lMRU5DRV9TRVRUSU5HX09GRhACKpQBCgxJbXBvcnRTdGF0dXMSFwoTSU1QT1JUX1NUQVRVU19VTlNFVBAAEhkKFUlNUE9SVF9TVEFUVVNfUExBTk5FRBABEhkKFUlNUE9SVF9TVEFUVVNfUlVOTklORxACEhsKF0lNUE9SVF9TVEFUVVNfQ09NUExFVEVEEAMSGAoUSU1QT1JUX1NUQVRVU19GQUlMRUQQBEK3AQoiY29tLnN0cmVhbWxheWVyLmludGVyYWN0aXZlLmNvbW1vbkIhU3RyZWFtTGF5ZXJJbnRlcmFjdGl2ZUNvbW1vblByb3RvUAFaY2dpdGh1Yi5jb20vc3RyZWFtbGF5ZXIvc2wtcHJvdG9maWxlcy8uYnVpbGQvZ28vc3RyZWFtbGF5ZXIvaW50ZXJhY3RpdmUvY29tbW9uO3NsX2ludGVyYWN0aXZlX2NvbW1vbqICBlNMX0FQSWIGcHJvdG8z", [file_google_protobuf_timestamp, file_streamlayer_analytics_v1_common_analytics_common, file_streamlayer_social_twitter]);
15
15
 
16
16
  /**
17
17
  * Describes the message streamlayer.interactive.CloseTimer.
@@ -338,201 +338,208 @@ export const TagSchema = /*@__PURE__*/
338
338
  export const QuestionAiSchema = /*@__PURE__*/
339
339
  messageDesc(file_streamlayer_interactive_interactive_common, 24);
340
340
 
341
+ /**
342
+ * Describes the message streamlayer.interactive.AbstractTriggerState.
343
+ * Use `create(AbstractTriggerStateSchema)` to create a new message.
344
+ */
345
+ export const AbstractTriggerStateSchema = /*@__PURE__*/
346
+ messageDesc(file_streamlayer_interactive_interactive_common, 25);
347
+
341
348
  /**
342
349
  * Describes the message streamlayer.interactive.Question.
343
350
  * Use `create(QuestionSchema)` to create a new message.
344
351
  */
345
352
  export const QuestionSchema = /*@__PURE__*/
346
- messageDesc(file_streamlayer_interactive_interactive_common, 25);
353
+ messageDesc(file_streamlayer_interactive_interactive_common, 26);
347
354
 
348
355
  /**
349
356
  * Describes the message streamlayer.interactive.ExtendedQuestion.
350
357
  * Use `create(ExtendedQuestionSchema)` to create a new message.
351
358
  */
352
359
  export const ExtendedQuestionSchema = /*@__PURE__*/
353
- messageDesc(file_streamlayer_interactive_interactive_common, 26);
360
+ messageDesc(file_streamlayer_interactive_interactive_common, 27);
354
361
 
355
362
  /**
356
363
  * Describes the message streamlayer.interactive.QuestionTimeline.
357
364
  * Use `create(QuestionTimelineSchema)` to create a new message.
358
365
  */
359
366
  export const QuestionTimelineSchema = /*@__PURE__*/
360
- messageDesc(file_streamlayer_interactive_interactive_common, 27);
367
+ messageDesc(file_streamlayer_interactive_interactive_common, 28);
361
368
 
362
369
  /**
363
370
  * Describes the message streamlayer.interactive.EventModeration.
364
371
  * Use `create(EventModerationSchema)` to create a new message.
365
372
  */
366
373
  export const EventModerationSchema = /*@__PURE__*/
367
- messageDesc(file_streamlayer_interactive_interactive_common, 28);
374
+ messageDesc(file_streamlayer_interactive_interactive_common, 29);
368
375
 
369
376
  /**
370
377
  * Describes the message streamlayer.interactive.EventModeration.QuestionSettings.
371
378
  * Use `create(EventModeration_QuestionSettingsSchema)` to create a new message.
372
379
  */
373
380
  export const EventModeration_QuestionSettingsSchema = /*@__PURE__*/
374
- messageDesc(file_streamlayer_interactive_interactive_common, 28, 0);
381
+ messageDesc(file_streamlayer_interactive_interactive_common, 29, 0);
375
382
 
376
383
  /**
377
384
  * Describes the message streamlayer.interactive.EventModeration.QuestionSettings.TriviaCardSettings.
378
385
  * Use `create(EventModeration_QuestionSettings_TriviaCardSettingsSchema)` to create a new message.
379
386
  */
380
387
  export const EventModeration_QuestionSettings_TriviaCardSettingsSchema = /*@__PURE__*/
381
- messageDesc(file_streamlayer_interactive_interactive_common, 28, 0, 0);
388
+ messageDesc(file_streamlayer_interactive_interactive_common, 29, 0, 0);
382
389
 
383
390
  /**
384
391
  * Describes the message streamlayer.interactive.EventModeration.QuestionSettings.PredictionCardSettings.
385
392
  * Use `create(EventModeration_QuestionSettings_PredictionCardSettingsSchema)` to create a new message.
386
393
  */
387
394
  export const EventModeration_QuestionSettings_PredictionCardSettingsSchema = /*@__PURE__*/
388
- messageDesc(file_streamlayer_interactive_interactive_common, 28, 0, 1);
395
+ messageDesc(file_streamlayer_interactive_interactive_common, 29, 0, 1);
389
396
 
390
397
  /**
391
398
  * Describes the message streamlayer.interactive.EventModeration.SponsorshipSettings.
392
399
  * Use `create(EventModeration_SponsorshipSettingsSchema)` to create a new message.
393
400
  */
394
401
  export const EventModeration_SponsorshipSettingsSchema = /*@__PURE__*/
395
- messageDesc(file_streamlayer_interactive_interactive_common, 28, 1);
402
+ messageDesc(file_streamlayer_interactive_interactive_common, 29, 1);
396
403
 
397
404
  /**
398
405
  * Describes the message streamlayer.interactive.EventModeration.NotificationSettings.
399
406
  * Use `create(EventModeration_NotificationSettingsSchema)` to create a new message.
400
407
  */
401
408
  export const EventModeration_NotificationSettingsSchema = /*@__PURE__*/
402
- messageDesc(file_streamlayer_interactive_interactive_common, 28, 2);
409
+ messageDesc(file_streamlayer_interactive_interactive_common, 29, 2);
403
410
 
404
411
  /**
405
412
  * Describes the message streamlayer.interactive.QuestionAutoPost.
406
413
  * Use `create(QuestionAutoPostSchema)` to create a new message.
407
414
  */
408
415
  export const QuestionAutoPostSchema = /*@__PURE__*/
409
- messageDesc(file_streamlayer_interactive_interactive_common, 29);
416
+ messageDesc(file_streamlayer_interactive_interactive_common, 30);
410
417
 
411
418
  /**
412
419
  * Describes the message streamlayer.interactive.QuestionAutoPostStartOptions.
413
420
  * Use `create(QuestionAutoPostStartOptionsSchema)` to create a new message.
414
421
  */
415
422
  export const QuestionAutoPostStartOptionsSchema = /*@__PURE__*/
416
- messageDesc(file_streamlayer_interactive_interactive_common, 30);
423
+ messageDesc(file_streamlayer_interactive_interactive_common, 31);
417
424
 
418
425
  /**
419
426
  * Describes the message streamlayer.interactive.QuestionAutoPostStartOptions.ScheduleOptions.
420
427
  * Use `create(QuestionAutoPostStartOptions_ScheduleOptionsSchema)` to create a new message.
421
428
  */
422
429
  export const QuestionAutoPostStartOptions_ScheduleOptionsSchema = /*@__PURE__*/
423
- messageDesc(file_streamlayer_interactive_interactive_common, 30, 0);
430
+ messageDesc(file_streamlayer_interactive_interactive_common, 31, 0);
424
431
 
425
432
  /**
426
433
  * Describes the message streamlayer.interactive.AnswerData.
427
434
  * Use `create(AnswerDataSchema)` to create a new message.
428
435
  */
429
436
  export const AnswerDataSchema = /*@__PURE__*/
430
- messageDesc(file_streamlayer_interactive_interactive_common, 31);
437
+ messageDesc(file_streamlayer_interactive_interactive_common, 32);
431
438
 
432
439
  /**
433
440
  * Describes the message streamlayer.interactive.Pagination.
434
441
  * Use `create(PaginationSchema)` to create a new message.
435
442
  */
436
443
  export const PaginationSchema = /*@__PURE__*/
437
- messageDesc(file_streamlayer_interactive_interactive_common, 32);
444
+ messageDesc(file_streamlayer_interactive_interactive_common, 33);
438
445
 
439
446
  /**
440
447
  * Describes the message streamlayer.interactive.Sort.
441
448
  * Use `create(SortSchema)` to create a new message.
442
449
  */
443
450
  export const SortSchema = /*@__PURE__*/
444
- messageDesc(file_streamlayer_interactive_interactive_common, 33);
451
+ messageDesc(file_streamlayer_interactive_interactive_common, 34);
445
452
 
446
453
  /**
447
454
  * Describes the message streamlayer.interactive.QuestionStats.
448
455
  * Use `create(QuestionStatsSchema)` to create a new message.
449
456
  */
450
457
  export const QuestionStatsSchema = /*@__PURE__*/
451
- messageDesc(file_streamlayer_interactive_interactive_common, 34);
458
+ messageDesc(file_streamlayer_interactive_interactive_common, 35);
452
459
 
453
460
  /**
454
461
  * Describes the message streamlayer.interactive.QuestionStats.QuestionData.
455
462
  * Use `create(QuestionStats_QuestionDataSchema)` to create a new message.
456
463
  */
457
464
  export const QuestionStats_QuestionDataSchema = /*@__PURE__*/
458
- messageDesc(file_streamlayer_interactive_interactive_common, 34, 0);
465
+ messageDesc(file_streamlayer_interactive_interactive_common, 35, 0);
459
466
 
460
467
  /**
461
468
  * Describes the message streamlayer.interactive.AnswerVotesStats.
462
469
  * Use `create(AnswerVotesStatsSchema)` to create a new message.
463
470
  */
464
471
  export const AnswerVotesStatsSchema = /*@__PURE__*/
465
- messageDesc(file_streamlayer_interactive_interactive_common, 35);
472
+ messageDesc(file_streamlayer_interactive_interactive_common, 36);
466
473
 
467
474
  /**
468
475
  * Describes the message streamlayer.interactive.AnswerVotesStats.AnswerVotesData.
469
476
  * Use `create(AnswerVotesStats_AnswerVotesDataSchema)` to create a new message.
470
477
  */
471
478
  export const AnswerVotesStats_AnswerVotesDataSchema = /*@__PURE__*/
472
- messageDesc(file_streamlayer_interactive_interactive_common, 35, 0);
479
+ messageDesc(file_streamlayer_interactive_interactive_common, 36, 0);
473
480
 
474
481
  /**
475
482
  * Describes the message streamlayer.interactive.ServerNotificationOptions.
476
483
  * Use `create(ServerNotificationOptionsSchema)` to create a new message.
477
484
  */
478
485
  export const ServerNotificationOptionsSchema = /*@__PURE__*/
479
- messageDesc(file_streamlayer_interactive_interactive_common, 36);
486
+ messageDesc(file_streamlayer_interactive_interactive_common, 37);
480
487
 
481
488
  /**
482
489
  * Describes the message streamlayer.interactive.BypassNotifications.
483
490
  * Use `create(BypassNotificationsSchema)` to create a new message.
484
491
  */
485
492
  export const BypassNotificationsSchema = /*@__PURE__*/
486
- messageDesc(file_streamlayer_interactive_interactive_common, 37);
493
+ messageDesc(file_streamlayer_interactive_interactive_common, 38);
487
494
 
488
495
  /**
489
496
  * Describes the message streamlayer.interactive.ImportError.
490
497
  * Use `create(ImportErrorSchema)` to create a new message.
491
498
  */
492
499
  export const ImportErrorSchema = /*@__PURE__*/
493
- messageDesc(file_streamlayer_interactive_interactive_common, 38);
500
+ messageDesc(file_streamlayer_interactive_interactive_common, 39);
494
501
 
495
502
  /**
496
503
  * Describes the message streamlayer.interactive.ImportProgress.
497
504
  * Use `create(ImportProgressSchema)` to create a new message.
498
505
  */
499
506
  export const ImportProgressSchema = /*@__PURE__*/
500
- messageDesc(file_streamlayer_interactive_interactive_common, 39);
507
+ messageDesc(file_streamlayer_interactive_interactive_common, 40);
501
508
 
502
509
  /**
503
510
  * Describes the message streamlayer.interactive.ImporterCollaboration.
504
511
  * Use `create(ImporterCollaborationSchema)` to create a new message.
505
512
  */
506
513
  export const ImporterCollaborationSchema = /*@__PURE__*/
507
- messageDesc(file_streamlayer_interactive_interactive_common, 40);
514
+ messageDesc(file_streamlayer_interactive_interactive_common, 41);
508
515
 
509
516
  /**
510
517
  * Describes the message streamlayer.interactive.Template.
511
518
  * Use `create(TemplateSchema)` to create a new message.
512
519
  */
513
520
  export const TemplateSchema = /*@__PURE__*/
514
- messageDesc(file_streamlayer_interactive_interactive_common, 41);
521
+ messageDesc(file_streamlayer_interactive_interactive_common, 42);
515
522
 
516
523
  /**
517
524
  * Describes the message streamlayer.interactive.ModuleCard.
518
525
  * Use `create(ModuleCardSchema)` to create a new message.
519
526
  */
520
527
  export const ModuleCardSchema = /*@__PURE__*/
521
- messageDesc(file_streamlayer_interactive_interactive_common, 42);
528
+ messageDesc(file_streamlayer_interactive_interactive_common, 43);
522
529
 
523
530
  /**
524
531
  * Describes the message streamlayer.interactive.ModuleAdvertiser.
525
532
  * Use `create(ModuleAdvertiserSchema)` to create a new message.
526
533
  */
527
534
  export const ModuleAdvertiserSchema = /*@__PURE__*/
528
- messageDesc(file_streamlayer_interactive_interactive_common, 43);
535
+ messageDesc(file_streamlayer_interactive_interactive_common, 44);
529
536
 
530
537
  /**
531
538
  * Describes the message streamlayer.interactive.Module.
532
539
  * Use `create(ModuleSchema)` to create a new message.
533
540
  */
534
541
  export const ModuleSchema = /*@__PURE__*/
535
- messageDesc(file_streamlayer_interactive_interactive_common, 44);
542
+ messageDesc(file_streamlayer_interactive_interactive_common, 45);
536
543
 
537
544
  /**
538
545
  * Describes the enum streamlayer.interactive.ActivatedBy.
@@ -111,3 +111,9 @@ export const setEntityLimits: typeof Triggers["method"]["setEntityLimits"];
111
111
  * @generated from rpc streamlayer.triggers.Triggers.GetEntityLimits
112
112
  */
113
113
  export const getEntityLimits: typeof Triggers["method"]["getEntityLimits"];
114
+ /**
115
+ * Resolves an abstract trigger into a concrete trigger for a given event
116
+ *
117
+ * @generated from rpc streamlayer.triggers.Triggers.ResolveAbstractTrigger
118
+ */
119
+ export const resolveAbstractTrigger: typeof Triggers["method"]["resolveAbstractTrigger"];
@@ -130,3 +130,10 @@ export const setEntityLimits = Triggers.method.setEntityLimits;
130
130
  * @generated from rpc streamlayer.triggers.Triggers.GetEntityLimits
131
131
  */
132
132
  export const getEntityLimits = Triggers.method.getEntityLimits;
133
+
134
+ /**
135
+ * Resolves an abstract trigger into a concrete trigger for a given event
136
+ *
137
+ * @generated from rpc streamlayer.triggers.Triggers.ResolveAbstractTrigger
138
+ */
139
+ export const resolveAbstractTrigger = Triggers.method.resolveAbstractTrigger;
@@ -93,6 +93,34 @@ export declare type Trigger = Message<"streamlayer.triggers.Trigger"> & {
93
93
  * @generated from field: streamlayer.triggers.UseTriggerLimits use_limits = 14;
94
94
  */
95
95
  useLimits: UseTriggerLimits;
96
+
97
+ /**
98
+ * marks this as an abstract (template-level) trigger not bound to a specific game
99
+ *
100
+ * @generated from field: streamlayer.triggers.AbstractTriggerMode abstract = 15;
101
+ */
102
+ abstract: AbstractTriggerMode;
103
+
104
+ /**
105
+ * sport identifier, required when abstract = TRUE (e.g. "football")
106
+ *
107
+ * @generated from field: optional string sport = 16;
108
+ */
109
+ sport?: string;
110
+
111
+ /**
112
+ * human-readable reason why the trigger is disabled (e.g. "non-nfl-event")
113
+ *
114
+ * @generated from field: optional string disabled_reason = 17;
115
+ */
116
+ disabledReason?: string;
117
+
118
+ /**
119
+ * id of the abstract trigger this concrete trigger was resolved from (traceability)
120
+ *
121
+ * @generated from field: optional string abstract_trigger_id = 18;
122
+ */
123
+ abstractTriggerId?: string;
96
124
  };
97
125
 
98
126
  /**
@@ -385,6 +413,20 @@ export declare type EssentialTriggerData = Message<"streamlayer.triggers.Essenti
385
413
  * @generated from field: streamlayer.triggers.UseTriggerLimits use_limits = 13;
386
414
  */
387
415
  useLimits: UseTriggerLimits;
416
+
417
+ /**
418
+ * set to TRUE to create an abstract trigger (no scope_id required)
419
+ *
420
+ * @generated from field: streamlayer.triggers.AbstractTriggerMode abstract = 14;
421
+ */
422
+ abstract: AbstractTriggerMode;
423
+
424
+ /**
425
+ * required when abstract = TRUE; Phase I only accepts "football"
426
+ *
427
+ * @generated from field: optional string sport = 15;
428
+ */
429
+ sport?: string;
388
430
  };
389
431
 
390
432
  /**
@@ -615,6 +657,13 @@ export declare type StudioTarget = Message<"streamlayer.triggers.StudioTarget">
615
657
  * @generated from field: optional streamlayer.triggers.StudioTargetMeta meta = 5;
616
658
  */
617
659
  meta?: StudioTargetMeta;
660
+
661
+ /**
662
+ * marks this target as abstract (e.g. "home", "away", "home_QB")
663
+ *
664
+ * @generated from field: streamlayer.triggers.AbstractTriggerMode abstract = 6;
665
+ */
666
+ abstract: AbstractTriggerMode;
618
667
  };
619
668
 
620
669
  /**
@@ -662,6 +711,13 @@ export declare type GetMetadataRequest = Message<"streamlayer.triggers.GetMetada
662
711
  * @generated from field: string sport = 2;
663
712
  */
664
713
  sport: string;
714
+
715
+ /**
716
+ * when TRUE, returns abstract targets (home/away/position-based) instead of concrete game targets
717
+ *
718
+ * @generated from field: streamlayer.triggers.AbstractTriggerMode abstract = 3;
719
+ */
720
+ abstract: AbstractTriggerMode;
665
721
  };
666
722
 
667
723
  /**
@@ -2133,6 +2189,109 @@ export declare type GetEntityLimitsResponse = Message<"streamlayer.triggers.GetE
2133
2189
  */
2134
2190
  export declare const GetEntityLimitsResponseSchema: GenMessage<GetEntityLimitsResponse>;
2135
2191
 
2192
+ /**
2193
+ * Resolves an abstract trigger stored on a template into a concrete trigger for a specific event.
2194
+ * Called by sl-polls when a template with abstract triggers is applied to an event.
2195
+ *
2196
+ * @generated from message streamlayer.triggers.ResolveAbstractTriggerRequest
2197
+ */
2198
+ export declare type ResolveAbstractTriggerRequest = Message<"streamlayer.triggers.ResolveAbstractTriggerRequest"> & {
2199
+ /**
2200
+ * @generated from field: string abstract_trigger_id = 1;
2201
+ */
2202
+ abstractTriggerId: string;
2203
+
2204
+ /**
2205
+ * @generated from field: string event_id = 2;
2206
+ */
2207
+ eventId: string;
2208
+
2209
+ /**
2210
+ * entity to attach the resolved concrete trigger to (e.g. "moderation")
2211
+ *
2212
+ * @generated from field: string entity = 3;
2213
+ */
2214
+ entity: string;
2215
+
2216
+ /**
2217
+ * @generated from field: string entity_id = 4;
2218
+ */
2219
+ entityId: string;
2220
+
2221
+ /**
2222
+ * @generated from field: optional string organization_id = 5;
2223
+ */
2224
+ organizationId?: string;
2225
+ };
2226
+
2227
+ /**
2228
+ * Describes the message streamlayer.triggers.ResolveAbstractTriggerRequest.
2229
+ * Use `create(ResolveAbstractTriggerRequestSchema)` to create a new message.
2230
+ */
2231
+ export declare const ResolveAbstractTriggerRequestSchema: GenMessage<ResolveAbstractTriggerRequest>;
2232
+
2233
+ /**
2234
+ * @generated from message streamlayer.triggers.ResolveAbstractTriggerResponse
2235
+ */
2236
+ export declare type ResolveAbstractTriggerResponse = Message<"streamlayer.triggers.ResolveAbstractTriggerResponse"> & {
2237
+ /**
2238
+ * present when the trigger was successfully resolved
2239
+ *
2240
+ * @generated from field: optional streamlayer.triggers.ResolveAbstractTriggerResponse.Attributes data = 1;
2241
+ */
2242
+ data?: ResolveAbstractTriggerResponse_Attributes;
2243
+
2244
+ /**
2245
+ * TRUE when the event is applicable for abstract trigger resolution
2246
+ *
2247
+ * @generated from field: streamlayer.triggers.TriggerApplicable applicable = 2;
2248
+ */
2249
+ applicable: TriggerApplicable;
2250
+
2251
+ /**
2252
+ * human-readable reason when applicable = false
2253
+ *
2254
+ * @generated from field: optional string reason = 3;
2255
+ */
2256
+ reason?: string;
2257
+ };
2258
+
2259
+ /**
2260
+ * Describes the message streamlayer.triggers.ResolveAbstractTriggerResponse.
2261
+ * Use `create(ResolveAbstractTriggerResponseSchema)` to create a new message.
2262
+ */
2263
+ export declare const ResolveAbstractTriggerResponseSchema: GenMessage<ResolveAbstractTriggerResponse>;
2264
+
2265
+ /**
2266
+ * @generated from message streamlayer.triggers.ResolveAbstractTriggerResponse.Attributes
2267
+ */
2268
+ export declare type ResolveAbstractTriggerResponse_Attributes = Message<"streamlayer.triggers.ResolveAbstractTriggerResponse.Attributes"> & {
2269
+ /**
2270
+ * id of the newly created concrete trigger
2271
+ *
2272
+ * @generated from field: string id = 1;
2273
+ */
2274
+ id: string;
2275
+
2276
+ /**
2277
+ * @generated from field: string type = 2;
2278
+ */
2279
+ type: string;
2280
+
2281
+ /**
2282
+ * id of the abstract trigger this was resolved from
2283
+ *
2284
+ * @generated from field: string abstract_trigger_id = 3;
2285
+ */
2286
+ abstractTriggerId: string;
2287
+ };
2288
+
2289
+ /**
2290
+ * Describes the message streamlayer.triggers.ResolveAbstractTriggerResponse.Attributes.
2291
+ * Use `create(ResolveAbstractTriggerResponse_AttributesSchema)` to create a new message.
2292
+ */
2293
+ export declare const ResolveAbstractTriggerResponse_AttributesSchema: GenMessage<ResolveAbstractTriggerResponse_Attributes>;
2294
+
2136
2295
  /**
2137
2296
  * @generated from enum streamlayer.triggers.UseConditionThreshold
2138
2297
  */
@@ -2183,6 +2342,56 @@ export enum UseTriggerLimits {
2183
2342
  */
2184
2343
  export declare const UseTriggerLimitsSchema: GenEnum<UseTriggerLimits>;
2185
2344
 
2345
+ /**
2346
+ * @generated from enum streamlayer.triggers.AbstractTriggerMode
2347
+ */
2348
+ export enum AbstractTriggerMode {
2349
+ /**
2350
+ * @generated from enum value: ABSTRACT_TRIGGER_MODE_UNSET = 0;
2351
+ */
2352
+ UNSET = 0,
2353
+
2354
+ /**
2355
+ * @generated from enum value: ABSTRACT_TRIGGER_MODE_TRUE = 1;
2356
+ */
2357
+ TRUE = 1,
2358
+
2359
+ /**
2360
+ * @generated from enum value: ABSTRACT_TRIGGER_MODE_FALSE = 2;
2361
+ */
2362
+ FALSE = 2,
2363
+ }
2364
+
2365
+ /**
2366
+ * Describes the enum streamlayer.triggers.AbstractTriggerMode.
2367
+ */
2368
+ export declare const AbstractTriggerModeSchema: GenEnum<AbstractTriggerMode>;
2369
+
2370
+ /**
2371
+ * @generated from enum streamlayer.triggers.TriggerApplicable
2372
+ */
2373
+ export enum TriggerApplicable {
2374
+ /**
2375
+ * @generated from enum value: TRIGGER_APPLICABLE_UNSET = 0;
2376
+ */
2377
+ UNSET = 0,
2378
+
2379
+ /**
2380
+ * @generated from enum value: TRIGGER_APPLICABLE_TRUE = 1;
2381
+ */
2382
+ TRUE = 1,
2383
+
2384
+ /**
2385
+ * @generated from enum value: TRIGGER_APPLICABLE_FALSE = 2;
2386
+ */
2387
+ FALSE = 2,
2388
+ }
2389
+
2390
+ /**
2391
+ * Describes the enum streamlayer.triggers.TriggerApplicable.
2392
+ */
2393
+ export declare const TriggerApplicableSchema: GenEnum<TriggerApplicable>;
2394
+
2186
2395
  /**
2187
2396
  * @generated from enum streamlayer.triggers.StudioInput
2188
2397
  */
@@ -2429,5 +2638,15 @@ export declare const Triggers: GenService<{
2429
2638
  input: typeof GetEntityLimitsRequestSchema;
2430
2639
  output: typeof GetEntityLimitsResponseSchema;
2431
2640
  },
2641
+ /**
2642
+ * Resolves an abstract trigger into a concrete trigger for a given event
2643
+ *
2644
+ * @generated from rpc streamlayer.triggers.Triggers.ResolveAbstractTrigger
2645
+ */
2646
+ resolveAbstractTrigger: {
2647
+ methodKind: "unary";
2648
+ input: typeof ResolveAbstractTriggerRequestSchema;
2649
+ output: typeof ResolveAbstractTriggerResponseSchema;
2650
+ },
2432
2651
  }>;
2433
2652
 
@@ -9,7 +9,7 @@ import { file_streamlayer_common_streamlayer_common } from "../common/streamlaye
9
9
  * Describes the file streamlayer/triggers/triggers.proto.
10
10
  */
11
11
  export const file_streamlayer_triggers_triggers = /*@__PURE__*/
12
- fileDesc("CiNzdHJlYW1sYXllci90cmlnZ2Vycy90cmlnZ2Vycy5wcm90bxIUc3RyZWFtbGF5ZXIudHJpZ2dlcnMi8gIKB1RyaWdnZXISCgoCaWQYASABKAkSDAoEbmFtZRgCIAEoCRITCgtkZXNjcmlwdGlvbhgDIAEoCRINCgVzY29wZRgEIAEoCRIQCghzY29wZV9pZBgFIAEoCRIRCglhY3RpdmF0ZWQYBiABKAgSDgoGZW50aXR5GAcgASgJEhEKCWVudGl0eV9pZBgIIAEoCRIQCghkaXNhYmxlZBgJIAEoCBIRCgl0aHJlc2hvbGQYCiABKAUSFwoPZGlzYWJsZWRfZW50aXR5GAsgASgIEhkKEXVzZV9lbnRpdHlfbGltaXRzGAwgASgIEkwKF3VzZV9jb25kaXRpb25fdGhyZXNob2xkGA0gASgOMisuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuVXNlQ29uZGl0aW9uVGhyZXNob2xkEjoKCnVzZV9saW1pdHMYDiABKA4yJi5zdHJlYW1sYXllci50cmlnZ2Vycy5Vc2VUcmlnZ2VyTGltaXRzIngKBUV2ZW50EgoKAmlkGAEgASgJEhIKCmRhdGFzb3VyY2UYAiABKAkSDQoFc2NvcGUYAyABKAkSEAoIc2NvcGVfaWQYBCABKAkSDAoEbmFtZRgFIAEoCRINCgV2YWx1ZRgGIAEoCRIRCgl0aW1lc3RhbXAYByABKAMiZwoWVHJpZ2dlckNvbmRpdGlvbk9wdGlvbhINCgVldmVudBgBIAEoCRIPCgdjb21wYXJlGAIgASgJEgwKBHR5cGUYAyABKAkSDwoHdGFyZ2V0cxgEIAMoCRIOCgZwYXJlbnQYBSABKAkilwQKEFRyaWdnZXJDb25kaXRpb24SCgoCaWQYASABKAkSFwoKdHJpZ2dlcl9pZBgCIAEoCUgAiAEBEhIKBWV2ZW50GAMgASgJSAGIAQESFwoKZGF0YXNvdXJjZRgEIAEoCUgCiAEBEhIKBXNjb3BlGAUgASgJSAOIAQESFQoIc2NvcGVfaWQYBiABKAlIBIgBARIUCgdjb21wYXJlGAcgASgJSAWIAQESEQoEdHlwZRgIIAEoCUgGiAEBEg8KB3RhcmdldHMYCSADKAkSFAoHY3VycmVudBgKIAEoCUgHiAEBEhEKCWFjdGl2YXRlZBgLIAEoCBIYCgtjaGFpbl9vcmRlchgMIAEoBUgIiAEBEhwKD2NoYWluX29wZXJhdGlvbhgNIAEoCUgJiAEBEigKA2xvZxgOIAMoCzIbLnN0cmVhbWxheWVyLnRyaWdnZXJzLkV2ZW50Ej0KB29wdGlvbnMYDyADKAsyLC5zdHJlYW1sYXllci50cmlnZ2Vycy5UcmlnZ2VyQ29uZGl0aW9uT3B0aW9uQg0KC190cmlnZ2VyX2lkQggKBl9ldmVudEINCgtfZGF0YXNvdXJjZUIICgZfc2NvcGVCCwoJX3Njb3BlX2lkQgoKCF9jb21wYXJlQgcKBV90eXBlQgoKCF9jdXJyZW50Qg4KDF9jaGFpbl9vcmRlckISChBfY2hhaW5fb3BlcmF0aW9uIvQCChRFc3NlbnRpYWxUcmlnZ2VyRGF0YRIMCgRuYW1lGAEgASgJEhMKC2Rlc2NyaXB0aW9uGAIgASgJEhIKCmRhdGFzb3VyY2UYAyABKAkSDQoFc2NvcGUYBCABKAkSEAoIc2NvcGVfaWQYBSABKAkSDgoGZW50aXR5GAYgASgJEhEKCWVudGl0eV9pZBgHIAEoCRIQCghkaXNhYmxlZBgIIAEoCBIRCgl0aHJlc2hvbGQYCSABKAUSFwoPZGlzYWJsZWRfZW50aXR5GAogASgIEhkKEXVzZV9lbnRpdHlfbGltaXRzGAsgASgIEkwKF3VzZV9jb25kaXRpb25fdGhyZXNob2xkGAwgASgOMisuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuVXNlQ29uZGl0aW9uVGhyZXNob2xkEjoKCnVzZV9saW1pdHMYDSABKA4yJi5zdHJlYW1sYXllci50cmlnZ2Vycy5Vc2VUcmlnZ2VyTGltaXRzIqEBChZFc3NlbnRpYWxDb25kaXRpb25EYXRhEg0KBWV2ZW50GAEgASgJEg8KB2NvbXBhcmUYAiABKAkSFwoPY2hhaW5fb3BlcmF0aW9uGAMgASgJEg8KB3RhcmdldHMYBCADKAkSPQoHb3B0aW9ucxgFIAMoCzIsLnN0cmVhbWxheWVyLnRyaWdnZXJzLlRyaWdnZXJDb25kaXRpb25PcHRpb24i8wIKFVRyaWdnZXJXaXRoQ29uZGl0aW9ucxIuCgd0cmlnZ2VyGAEgASgLMh0uc3RyZWFtbGF5ZXIudHJpZ2dlcnMuVHJpZ2dlchI6Cgpjb25kaXRpb25zGAIgAygLMiYuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuVHJpZ2dlckNvbmRpdGlvbhJHCgZsaW1pdHMYAyADKAsyNy5zdHJlYW1sYXllci50cmlnZ2Vycy5UcmlnZ2VyV2l0aENvbmRpdGlvbnMuTGltaXRzRW50cnkSRwoGY291bnRzGAQgAygLMjcuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuVHJpZ2dlcldpdGhDb25kaXRpb25zLkNvdW50c0VudHJ5Gi0KC0xpbWl0c0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoBToCOAEaLQoLQ291bnRzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgFOgI4ASLZAgoTVHJpZ2dlclN1YnNjcmlwdGlvbhIKCgJpZBgBIAEoCRISCgp0cmlnZ2VyX2lkGAIgASgJEg0KBXJvdXRlGAMgASgJEg4KBmVudGl0eRgEIAEoCRIRCgllbnRpdHlfaWQYBSABKAkSRwoHcGF5bG9hZBgGIAMoCzI2LnN0cmVhbWxheWVyLnRyaWdnZXJzLlRyaWdnZXJTdWJzY3JpcHRpb24uUGF5bG9hZEVudHJ5EkcKB29wdGlvbnMYByADKAsyNi5zdHJlYW1sYXllci50cmlnZ2Vycy5UcmlnZ2VyU3Vic2NyaXB0aW9uLk9wdGlvbnNFbnRyeRouCgxQYXlsb2FkRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ARouCgxPcHRpb25zRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASLLAgoZRXNzZW50aWFsU3Vic2NyaXB0aW9uRGF0YRINCgVyb3V0ZRgBIAEoCRIOCgZlbnRpdHkYAiABKAkSEQoJZW50aXR5X2lkGAMgASgJEk0KB3BheWxvYWQYBCADKAsyPC5zdHJlYW1sYXllci50cmlnZ2Vycy5Fc3NlbnRpYWxTdWJzY3JpcHRpb25EYXRhLlBheWxvYWRFbnRyeRJNCgdvcHRpb25zGAUgAygLMjwuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuRXNzZW50aWFsU3Vic2NyaXB0aW9uRGF0YS5PcHRpb25zRW50cnkaLgoMUGF5bG9hZEVudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEaLgoMT3B0aW9uc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEiQgoQU3R1ZGlvVGFyZ2V0TWV0YRIXCg9wbGF5ZXJfcG9zaXRpb24YASABKAkSFQoNcGxheWVyX251bWJlchgCIAEoCSKRAQoMU3R1ZGlvVGFyZ2V0Eg0KBWxhYmVsGAEgASgJEhMKC2Rlc2NyaXB0aW9uGAIgASgJEgoKAmlkGAMgASgJEg0KBWdyb3VwGAQgASgJEjkKBG1ldGEYBSABKAsyJi5zdHJlYW1sYXllci50cmlnZ2Vycy5TdHVkaW9UYXJnZXRNZXRhSACIAQFCBwoFX21ldGEiVQoLU3R1ZGlvTGltaXQSDQoFbGltaXQYASABKAkSDQoFbGFiZWwYAiABKAkSGAoLZGVzY3JpcHRpb24YAyABKAlIAIgBAUIOCgxfZGVzY3JpcHRpb24iNQoSR2V0TWV0YWRhdGFSZXF1ZXN0EhAKCGV2ZW50X2lkGAEgASgJEg0KBXNwb3J0GAIgASgJIu0HChNHZXRNZXRhZGF0YVJlc3BvbnNlEksKBGRhdGEYASABKAsyPS5zdHJlYW1sYXllci50cmlnZ2Vycy5HZXRNZXRhZGF0YVJlc3BvbnNlLlN0dWRpb0NvbmRpdGlvbkRhdGEa4wEKC1N0dWRpb0V2ZW50EgoKAmlkGAEgASgJEg0KBXNwb3J0GAIgASgJEg8KB3ByaW1hcnkYAyABKAgSMAoFaW5wdXQYBCABKA4yIS5zdHJlYW1sYXllci50cmlnZ2Vycy5TdHVkaW9JbnB1dBINCgVsYWJlbBgFIAEoCRIZChFwcmVmZXJyZWRfb3B0aW9ucxgGIAMoCRIPCgdjb21wYXJlGAcgAygJEhoKDXRhcmdldF9zb3VyY2UYCCABKAlIAIgBARINCgVncm91cBgJIAEoCUIQCg5fdGFyZ2V0X3NvdXJjZRpBCgpUYXJnZXRMaXN0EjMKB3RhcmdldHMYASADKAsyIi5zdHJlYW1sYXllci50cmlnZ2Vycy5TdHVkaW9UYXJnZXQaRAoER2FtZRIKCgJpZBgBIAEoCRINCgVzcG9ydBgCIAEoCRISCgpkYXRhc291cmNlGAMgASgJEg0KBXNjb3BlGAQgASgJGpkEChNTdHVkaW9Db25kaXRpb25EYXRhEg0KBWluZGV4GAEgAygJElkKBmV2ZW50cxgCIAMoCzJJLnN0cmVhbWxheWVyLnRyaWdnZXJzLkdldE1ldGFkYXRhUmVzcG9uc2UuU3R1ZGlvQ29uZGl0aW9uRGF0YS5FdmVudHNFbnRyeRJbCgdzb3VyY2VzGAMgAygLMkouc3RyZWFtbGF5ZXIudHJpZ2dlcnMuR2V0TWV0YWRhdGFSZXNwb25zZS5TdHVkaW9Db25kaXRpb25EYXRhLlNvdXJjZXNFbnRyeRI8CgRnYW1lGAQgASgLMi4uc3RyZWFtbGF5ZXIudHJpZ2dlcnMuR2V0TWV0YWRhdGFSZXNwb25zZS5HYW1lEjEKBmxpbWl0cxgFIAMoCzIhLnN0cmVhbWxheWVyLnRyaWdnZXJzLlN0dWRpb0xpbWl0GmQKC0V2ZW50c0VudHJ5EgsKA2tleRgBIAEoCRJECgV2YWx1ZRgCIAEoCzI1LnN0cmVhbWxheWVyLnRyaWdnZXJzLkdldE1ldGFkYXRhUmVzcG9uc2UuU3R1ZGlvRXZlbnQ6AjgBGmQKDFNvdXJjZXNFbnRyeRILCgNrZXkYASABKAkSQwoFdmFsdWUYAiABKAsyNC5zdHJlYW1sYXllci50cmlnZ2Vycy5HZXRNZXRhZGF0YVJlc3BvbnNlLlRhcmdldExpc3Q6AjgBIuICChRDcmVhdGVUcmlnZ2VyUmVxdWVzdBI7Cgd0cmlnZ2VyGAEgASgLMiouc3RyZWFtbGF5ZXIudHJpZ2dlcnMuRXNzZW50aWFsVHJpZ2dlckRhdGESQAoKY29uZGl0aW9ucxgCIAMoCzIsLnN0cmVhbWxheWVyLnRyaWdnZXJzLkVzc2VudGlhbENvbmRpdGlvbkRhdGESRgoGbGltaXRzGAMgAygLMjYuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuQ3JlYXRlVHJpZ2dlclJlcXVlc3QuTGltaXRzRW50cnkSHAoPb3JnYW5pemF0aW9uX2lkGAQgASgJSACIAQESFQoIZXZlbnRfaWQYBSABKAlIAYgBARotCgtMaW1pdHNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAU6AjgBQhIKEF9vcmdhbml6YXRpb25faWRCCwoJX2V2ZW50X2lkIoUBChVDcmVhdGVUcmlnZ2VyUmVzcG9uc2USRAoEZGF0YRgBIAEoCzI2LnN0cmVhbWxheWVyLnRyaWdnZXJzLkNyZWF0ZVRyaWdnZXJSZXNwb25zZS5BdHRyaWJ1dGVzGiYKCkF0dHJpYnV0ZXMSCgoCaWQYASABKAkSDAoEdHlwZRgCIAEoCSK1BwoVQ3JlYXRlVHJpZ2dlcnNSZXF1ZXN0ElMKBGRhdGEYASABKAsyRS5zdHJlYW1sYXllci50cmlnZ2Vycy5DcmVhdGVUcmlnZ2Vyc1JlcXVlc3QuQ3JlYXRlVHJpZ2dlcnNSZXF1ZXN0RGF0YRIcCg9vcmdhbml6YXRpb25faWQYAiABKAlIAIgBARIVCghldmVudF9pZBgDIAEoCUgBiAEBGpcCCg9VbmlxVHJpZ2dlckRhdGESDAoEbmFtZRgBIAEoCRITCgtkZXNjcmlwdGlvbhgCIAEoCRIQCghkaXNhYmxlZBgDIAEoCBIRCgl0aHJlc2hvbGQYBCABKAUSFwoPZGlzYWJsZWRfZW50aXR5GAUgASgIEhkKEXVzZV9lbnRpdHlfbGltaXRzGAYgASgIEkwKF3VzZV9jb25kaXRpb25fdGhyZXNob2xkGAcgASgOMisuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuVXNlQ29uZGl0aW9uVGhyZXNob2xkEjoKCnVzZV9saW1pdHMYCCABKA4yJi5zdHJlYW1sYXllci50cmlnZ2Vycy5Vc2VUcmlnZ2VyTGltaXRzGpkCCgdUcmlnZ2VyEkwKB3RyaWdnZXIYASABKAsyOy5zdHJlYW1sYXllci50cmlnZ2Vycy5DcmVhdGVUcmlnZ2Vyc1JlcXVlc3QuVW5pcVRyaWdnZXJEYXRhEkAKCmNvbmRpdGlvbnMYAiADKAsyLC5zdHJlYW1sYXllci50cmlnZ2Vycy5Fc3NlbnRpYWxDb25kaXRpb25EYXRhEk8KBmxpbWl0cxgDIAMoCzI/LnN0cmVhbWxheWVyLnRyaWdnZXJzLkNyZWF0ZVRyaWdnZXJzUmVxdWVzdC5UcmlnZ2VyLkxpbWl0c0VudHJ5Gi0KC0xpbWl0c0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoBToCOAEaugEKGUNyZWF0ZVRyaWdnZXJzUmVxdWVzdERhdGESEgoKZGF0YXNvdXJjZRgDIAEoCRINCgVzY29wZRgEIAEoCRIQCghzY29wZV9pZBgFIAEoCRIOCgZlbnRpdHkYBiABKAkSEQoJZW50aXR5X2lkGAcgASgJEkUKCHRyaWdnZXJzGAggAygLMjMuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuQ3JlYXRlVHJpZ2dlcnNSZXF1ZXN0LlRyaWdnZXJCEgoQX29yZ2FuaXphdGlvbl9pZEILCglfZXZlbnRfaWQihwEKFkNyZWF0ZVRyaWdnZXJzUmVzcG9uc2USRQoEZGF0YRgBIAMoCzI3LnN0cmVhbWxheWVyLnRyaWdnZXJzLkNyZWF0ZVRyaWdnZXJzUmVzcG9uc2UuQXR0cmlidXRlcxomCgpBdHRyaWJ1dGVzEgoKAmlkGAEgASgJEgwKBHR5cGUYAiABKAkipQMKFFVwZGF0ZVRyaWdnZXJSZXF1ZXN0EkIKB3VwZGF0ZXMYASADKAsyMS5zdHJlYW1sYXllci50cmlnZ2Vycy5VcGRhdGVUcmlnZ2VyUmVxdWVzdC5VcGRhdGUSHAoPb3JnYW5pemF0aW9uX2lkGAIgASgJSACIAQESFQoIZXZlbnRfaWQYAyABKAlIAYgBARryAQoGVXBkYXRlEi4KB3RyaWdnZXIYASABKAsyHS5zdHJlYW1sYXllci50cmlnZ2Vycy5UcmlnZ2VyEjoKCmNvbmRpdGlvbnMYAiADKAsyJi5zdHJlYW1sYXllci50cmlnZ2Vycy5UcmlnZ2VyQ29uZGl0aW9uEk0KBmxpbWl0cxgDIAMoCzI9LnN0cmVhbWxheWVyLnRyaWdnZXJzLlVwZGF0ZVRyaWdnZXJSZXF1ZXN0LlVwZGF0ZS5MaW1pdHNFbnRyeRotCgtMaW1pdHNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAU6AjgBQhIKEF9vcmdhbml6YXRpb25faWRCCwoJX2V2ZW50X2lkIhcKFVVwZGF0ZVRyaWdnZXJSZXNwb25zZSJ4ChRFbmFibGVUcmlnZ2VyUmVxdWVzdBIKCgJpZBgBIAEoCRIcCg9vcmdhbml6YXRpb25faWQYAiABKAlIAIgBARIVCghldmVudF9pZBgDIAEoCUgBiAEBQhIKEF9vcmdhbml6YXRpb25faWRCCwoJX2V2ZW50X2lkIhcKFUVuYWJsZVRyaWdnZXJSZXNwb25zZSJ5ChVEaXNhYmxlVHJpZ2dlclJlcXVlc3QSCgoCaWQYASABKAkSHAoPb3JnYW5pemF0aW9uX2lkGAIgASgJSACIAQESFQoIZXZlbnRfaWQYAyABKAlIAYgBAUISChBfb3JnYW5pemF0aW9uX2lkQgsKCV9ldmVudF9pZCIYChZEaXNhYmxlVHJpZ2dlclJlc3BvbnNlIngKFERlbGV0ZVRyaWdnZXJSZXF1ZXN0EgoKAmlkGAEgASgJEhwKD29yZ2FuaXphdGlvbl9pZBgCIAEoCUgAiAEBEhUKCGV2ZW50X2lkGAMgASgJSAGIAQFCEgoQX29yZ2FuaXphdGlvbl9pZEILCglfZXZlbnRfaWQihQEKFURlbGV0ZVRyaWdnZXJSZXNwb25zZRJECgRkYXRhGAEgASgLMjYuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuRGVsZXRlVHJpZ2dlclJlc3BvbnNlLkF0dHJpYnV0ZXMaJgoKQXR0cmlidXRlcxIKCgJpZBgBIAEoCRIMCgR0eXBlGAIgASgJIh8KEUdldFRyaWdnZXJSZXF1ZXN0EgoKAmlkGAEgASgJIsABChJHZXRUcmlnZ2VyUmVzcG9uc2USQQoEZGF0YRgBIAEoCzIzLnN0cmVhbWxheWVyLnRyaWdnZXJzLkdldFRyaWdnZXJSZXNwb25zZS5BdHRyaWJ1dGVzGmcKCkF0dHJpYnV0ZXMSCgoCaWQYASABKAkSDAoEdHlwZRgCIAEoCRI/CgphdHRyaWJ1dGVzGAMgASgLMisuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuVHJpZ2dlcldpdGhDb25kaXRpb25zIpkDChFUcmlnZ2VyQWN0aXZhdGlvbhIUCgxhY3RpdmF0ZWRfYXQYASABKAUSEwoLc25hcHNob3RfaWQYAiABKAkSIQoZYWN0aXZhdGVkX2NvbmRpdGlvbl9jb3VudBgDIAEoBRIOCgZlbnRpdHkYBCABKAkSEQoJZW50aXR5X2lkGAUgASgJElYKCmdhbWVfZXZlbnQYBiABKAsyQi5zdHJlYW1sYXllci50cmlnZ2Vycy5UcmlnZ2VyQWN0aXZhdGlvbi5UcmlnZ2VyQWN0aXZhdGlvbkdhbWVFdmVudBIuCgd0cmlnZ2VyGAcgASgLMh0uc3RyZWFtbGF5ZXIudHJpZ2dlcnMuVHJpZ2dlchI6Cgpjb25kaXRpb25zGAggAygLMiYuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuVHJpZ2dlckNvbmRpdGlvbhpPChpUcmlnZ2VyQWN0aXZhdGlvbkdhbWVFdmVudBIMCgR0aW1lGAEgASgJEg4KBnBlcmlvZBgCIAEoCRITCgtkZXNjcmlwdGlvbhgDIAEoCSJ4ChlUcmlnZ2VyQWN0aXZhdGlvbnNSZXF1ZXN0Eg8KAmlkGAEgASgJSACIAQESFgoJZW50aXR5X2lkGAIgASgJSAGIAQESDQoFbGltaXQYAyABKAUSDgoGb2Zmc2V0GAQgASgFQgUKA19pZEIMCgpfZW50aXR5X2lkIlMKGlRyaWdnZXJBY3RpdmF0aW9uc1Jlc3BvbnNlEjUKBGRhdGEYASADKAsyJy5zdHJlYW1sYXllci50cmlnZ2Vycy5UcmlnZ2VyQWN0aXZhdGlvbiI4ChNMaXN0VHJpZ2dlcnNSZXF1ZXN0Eg4KBmVudGl0eRgBIAEoCRIRCgllbnRpdHlfaWQYAiABKAkiwgEKE0xpc3RUcmlnZ2VyUmVzcG9uc2USQgoEZGF0YRgBIAMoCzI0LnN0cmVhbWxheWVyLnRyaWdnZXJzLkxpc3RUcmlnZ2VyUmVzcG9uc2UuQXR0cmlidXRlcxpnCgpBdHRyaWJ1dGVzEgoKAmlkGAEgASgJEgwKBHR5cGUYAiABKAkSPwoKYXR0cmlidXRlcxgDIAEoCzIrLnN0cmVhbWxheWVyLnRyaWdnZXJzLlRyaWdnZXJXaXRoQ29uZGl0aW9ucyJtChBTdWJzY3JpYmVSZXF1ZXN0EhIKCnRyaWdnZXJfaWQYASABKAkSRQoMc3Vic2NyaXB0aW9uGAIgASgLMi8uc3RyZWFtbGF5ZXIudHJpZ2dlcnMuRXNzZW50aWFsU3Vic2NyaXB0aW9uRGF0YSJ9ChFTdWJzY3JpYmVSZXNwb25zZRJACgRkYXRhGAEgASgLMjIuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuU3Vic2NyaWJlUmVzcG9uc2UuQXR0cmlidXRlcxomCgpBdHRyaWJ1dGVzEgoKAmlkGAEgASgJEgwKBHR5cGUYAiABKAkiUQoYTGlzdFN1YnNjcmlwdGlvbnNSZXF1ZXN0EhIKCnRyaWdnZXJfaWQYASABKAkSDgoGZW50aXR5GAIgASgJEhEKCWVudGl0eV9pZBgDIAEoCSLOAQoYTGlzdFN1YnNjcmlwdGlvblJlc3BvbnNlEkkKBGRhdGEYASADKAsyOy5zdHJlYW1sYXllci50cmlnZ2Vycy5MaXN0U3Vic2NyaXB0aW9uUmVzcG9uc2UuUmVzcG9uc2VJdGVtGmcKDFJlc3BvbnNlSXRlbRIKCgJpZBgBIAEoCRIMCgR0eXBlGAIgASgJEj0KCmF0dHJpYnV0ZXMYAyABKAsyKS5zdHJlYW1sYXllci50cmlnZ2Vycy5UcmlnZ2VyU3Vic2NyaXB0aW9uIicKGUNhbmNlbFN1YnNjcmlwdGlvblJlcXVlc3QSCgoCaWQYASABKAkijwEKGkNhbmNlbFN1YnNjcmlwdGlvblJlc3BvbnNlEkkKBGRhdGEYASABKAsyOy5zdHJlYW1sYXllci50cmlnZ2Vycy5DYW5jZWxTdWJzY3JpcHRpb25SZXNwb25zZS5BdHRyaWJ1dGVzGiYKCkF0dHJpYnV0ZXMSCgoCaWQYASABKAkSDAoEdHlwZRgCIAEoCSKmAQoGRW50aXR5Eg4KBmVudGl0eRgBIAEoCRIRCgllbnRpdHlfaWQYAiABKAkSEAoIZGlzYWJsZWQYAyABKAgSOAoGbGltaXRzGAQgAygLMiguc3RyZWFtbGF5ZXIudHJpZ2dlcnMuRW50aXR5LkxpbWl0c0VudHJ5Gi0KC0xpbWl0c0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoBToCOAEilwEKE1VwZGF0ZUVudGl0eVJlcXVlc3QSKgoEZGF0YRgBIAMoCzIcLnN0cmVhbWxheWVyLnRyaWdnZXJzLkVudGl0eRIcCg9vcmdhbml6YXRpb25faWQYAiABKAlIAIgBARIVCghldmVudF9pZBgDIAEoCUgBiAEBQhIKEF9vcmdhbml6YXRpb25faWRCCwoJX2V2ZW50X2lkIhYKFFVwZGF0ZUVudGl0eVJlc3BvbnNlIjUKEEdldEVudGl0eVJlcXVlc3QSDgoGZW50aXR5GAEgASgJEhEKCWVudGl0eV9pZBgCIAEoCSI/ChFHZXRFbnRpdHlSZXNwb25zZRIqCgRkYXRhGAEgASgLMhwuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuRW50aXR5ItgBChNFbmFibGVFbnRpdHlSZXF1ZXN0EkAKCGVudGl0aWVzGAEgAygLMi4uc3RyZWFtbGF5ZXIudHJpZ2dlcnMuRW5hYmxlRW50aXR5UmVxdWVzdC5EYXRhEhwKD29yZ2FuaXphdGlvbl9pZBgCIAEoCUgAiAEBEhUKCGV2ZW50X2lkGAMgASgJSAGIAQEaKQoERGF0YRIOCgZlbnRpdHkYASABKAkSEQoJZW50aXR5X2lkGAIgASgJQhIKEF9vcmdhbml6YXRpb25faWRCCwoJX2V2ZW50X2lkIhYKFEVuYWJsZUVudGl0eVJlc3BvbnNlItoBChREaXNhYmxlRW50aXR5UmVxdWVzdBJBCghlbnRpdGllcxgBIAMoCzIvLnN0cmVhbWxheWVyLnRyaWdnZXJzLkRpc2FibGVFbnRpdHlSZXF1ZXN0LkRhdGESHAoPb3JnYW5pemF0aW9uX2lkGAIgASgJSACIAQESFQoIZXZlbnRfaWQYAyABKAlIAYgBARopCgREYXRhEg4KBmVudGl0eRgBIAEoCRIRCgllbnRpdHlfaWQYAiABKAlCEgoQX29yZ2FuaXphdGlvbl9pZEILCglfZXZlbnRfaWQiFwoVRGlzYWJsZUVudGl0eVJlc3BvbnNlIiYKFUdldFNwb3J0TGltaXRzUmVxdWVzdBINCgVzcG9ydBgBIAEoCSJLChZHZXRTcG9ydExpbWl0c1Jlc3BvbnNlEjEKBmxpbWl0cxgBIAMoCzIhLnN0cmVhbWxheWVyLnRyaWdnZXJzLlN0dWRpb0xpbWl0IpsCChZTZXRFbnRpdHlMaW1pdHNSZXF1ZXN0Eg4KBmVudGl0eRgBIAEoCRIRCgllbnRpdHlfaWQYAiABKAkSSAoGbGltaXRzGAMgAygLMjguc3RyZWFtbGF5ZXIudHJpZ2dlcnMuU2V0RW50aXR5TGltaXRzUmVxdWVzdC5MaW1pdHNFbnRyeRIPCgdlbmFibGVkGAQgASgIEhwKD29yZ2FuaXphdGlvbl9pZBgFIAEoCUgAiAEBEhUKCGV2ZW50X2lkGAYgASgJSAGIAQEaLQoLTGltaXRzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgFOgI4AUISChBfb3JnYW5pemF0aW9uX2lkQgsKCV9ldmVudF9pZCIZChdTZXRFbnRpdHlMaW1pdHNSZXNwb25zZSI7ChZHZXRFbnRpdHlMaW1pdHNSZXF1ZXN0Eg4KBmVudGl0eRgBIAEoCRIRCgllbnRpdHlfaWQYAiABKAkipAEKF0dldEVudGl0eUxpbWl0c1Jlc3BvbnNlEkkKBmxpbWl0cxgBIAMoCzI5LnN0cmVhbWxheWVyLnRyaWdnZXJzLkdldEVudGl0eUxpbWl0c1Jlc3BvbnNlLkxpbWl0c0VudHJ5Eg8KB2VuYWJsZWQYAiABKAgaLQoLTGltaXRzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgFOgI4ASqFAQoVVXNlQ29uZGl0aW9uVGhyZXNob2xkEiEKHVVTRV9DT05ESVRJT05fVEhSRVNIT0xEX1VOU0VUEAASIwofVVNFX0NPTkRJVElPTl9USFJFU0hPTERfRU5BQkxFRBABEiQKIFVTRV9DT05ESVRJT05fVEhSRVNIT0xEX0RJU0FCTEVEEAIqcQoQVXNlVHJpZ2dlckxpbWl0cxIcChhVU0VfVFJJR0dFUl9MSU1JVFNfVU5TRVQQABIeChpVU0VfVFJJR0dFUl9MSU1JVFNfRU5BQkxFRBABEh8KG1VTRV9UUklHR0VSX0xJTUlUU19ESVNBQkxFRBACKoMCCgtTdHVkaW9JbnB1dBIWChJTVFVESU9fSU5QVVRfVU5TRVQQABIXChNTVFVESU9fSU5QVVRfU0VMRUNUEAESHQoZU1RVRElPX0lOUFVUX1NFTEVDVF9NVUxUSRACEh0KGVNUVURJT19JTlBVVF9USU1FX01JTlVURVMQAxIXChNTVFVESU9fSU5QVVRfU1RSSU5HEAQSFwoTU1RVRElPX0lOUFVUX05VTUJFUhAFEhcKE1NUVURJT19JTlBVVF9QT0lOVFMQBhIhCh1TVFVESU9fSU5QVVRfREFURV9USU1FX1BJQ0tFUhAHEhcKE1NUVURJT19JTlBVVF9SRVBFQVQQCDLGFgoIVHJpZ2dlcnMSgwEKC0dldE1ldGFkYXRhEiguc3RyZWFtbGF5ZXIudHJpZ2dlcnMuR2V0TWV0YWRhdGFSZXF1ZXN0Gikuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuR2V0TWV0YWRhdGFSZXNwb25zZSIfiqYdE3N0dWRpby5tZXRhZGF0YS5nZXSgph0CqKYdARKLAQoNQ3JlYXRlVHJpZ2dlchIqLnN0cmVhbWxheWVyLnRyaWdnZXJzLkNyZWF0ZVRyaWdnZXJSZXF1ZXN0Gisuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuQ3JlYXRlVHJpZ2dlclJlc3BvbnNlIiGKph0Vc3R1ZGlvLnRyaWdnZXIuY3JlYXRloKYdAqimHQESkwEKDkNyZWF0ZVRyaWdnZXJzEisuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuQ3JlYXRlVHJpZ2dlcnNSZXF1ZXN0Giwuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuQ3JlYXRlVHJpZ2dlcnNSZXNwb25zZSImiqYdGnN0dWRpby50cmlnZ2VyLmNyZWF0ZS5tYW55oKYdAqimHQESiwEKDVVwZGF0ZVRyaWdnZXISKi5zdHJlYW1sYXllci50cmlnZ2Vycy5VcGRhdGVUcmlnZ2VyUmVxdWVzdBorLnN0cmVhbWxheWVyLnRyaWdnZXJzLlVwZGF0ZVRyaWdnZXJSZXNwb25zZSIhiqYdFXN0dWRpby50cmlnZ2VyLnVwZGF0ZaCmHQKoph0BEosBCg1FbmFibGVUcmlnZ2VyEiouc3RyZWFtbGF5ZXIudHJpZ2dlcnMuRW5hYmxlVHJpZ2dlclJlcXVlc3QaKy5zdHJlYW1sYXllci50cmlnZ2Vycy5FbmFibGVUcmlnZ2VyUmVzcG9uc2UiIYqmHRVzdHVkaW8udHJpZ2dlci5lbmFibGWgph0CqKYdARKPAQoORGlzYWJsZVRyaWdnZXISKy5zdHJlYW1sYXllci50cmlnZ2Vycy5EaXNhYmxlVHJpZ2dlclJlcXVlc3QaLC5zdHJlYW1sYXllci50cmlnZ2Vycy5EaXNhYmxlVHJpZ2dlclJlc3BvbnNlIiKKph0Wc3R1ZGlvLnRyaWdnZXIuZGlzYWJsZaCmHQKoph0BEosBCg1EZWxldGVUcmlnZ2VyEiouc3RyZWFtbGF5ZXIudHJpZ2dlcnMuRGVsZXRlVHJpZ2dlclJlcXVlc3QaKy5zdHJlYW1sYXllci50cmlnZ2Vycy5EZWxldGVUcmlnZ2VyUmVzcG9uc2UiIYqmHRVzdHVkaW8udHJpZ2dlci5kZWxldGWgph0CqKYdARJ/CgpHZXRUcmlnZ2VyEicuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuR2V0VHJpZ2dlclJlcXVlc3QaKC5zdHJlYW1sYXllci50cmlnZ2Vycy5HZXRUcmlnZ2VyUmVzcG9uc2UiHoqmHRJzdHVkaW8udHJpZ2dlci5nZXSgph0CqKYdARKFAQoMTGlzdFRyaWdnZXJzEikuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuTGlzdFRyaWdnZXJzUmVxdWVzdBopLnN0cmVhbWxheWVyLnRyaWdnZXJzLkxpc3RUcmlnZ2VyUmVzcG9uc2UiH4qmHRNzdHVkaW8udHJpZ2dlci5saXN0oKYdAqimHQESggEKCVN1YnNjcmliZRImLnN0cmVhbWxheWVyLnRyaWdnZXJzLlN1YnNjcmliZVJlcXVlc3QaJy5zdHJlYW1sYXllci50cmlnZ2Vycy5TdWJzY3JpYmVSZXNwb25zZSIkiqYdGHN0dWRpby50cmlnZ2VyLnN1YnNjcmliZaCmHQKoph0BEp8BChJUcmlnZ2VyQWN0aXZhdGlvbnMSLy5zdHJlYW1sYXllci50cmlnZ2Vycy5UcmlnZ2VyQWN0aXZhdGlvbnNSZXF1ZXN0GjAuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuVHJpZ2dlckFjdGl2YXRpb25zUmVzcG9uc2UiJoqmHRpzdHVkaW8udHJpZ2dlci5hY3RpdmF0aW9uc6CmHQKoph0BEpkBChFMaXN0U3Vic2NyaXB0aW9ucxIuLnN0cmVhbWxheWVyLnRyaWdnZXJzLkxpc3RTdWJzY3JpcHRpb25zUmVxdWVzdBouLnN0cmVhbWxheWVyLnRyaWdnZXJzLkxpc3RTdWJzY3JpcHRpb25SZXNwb25zZSIkiqYdGHN0dWRpby5zdWJzY3JpcHRpb24ubGlzdKCmHQKoph0BEp8BChJDYW5jZWxTdWJzY3JpcHRpb24SLy5zdHJlYW1sYXllci50cmlnZ2Vycy5DYW5jZWxTdWJzY3JpcHRpb25SZXF1ZXN0GjAuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuQ2FuY2VsU3Vic2NyaXB0aW9uUmVzcG9uc2UiJoqmHRpzdHVkaW8uc3Vic2NyaXB0aW9uLmNhbmNlbKCmHQKoph0BEocBCgxVcGRhdGVFbnRpdHkSKS5zdHJlYW1sYXllci50cmlnZ2Vycy5VcGRhdGVFbnRpdHlSZXF1ZXN0Giouc3RyZWFtbGF5ZXIudHJpZ2dlcnMuVXBkYXRlRW50aXR5UmVzcG9uc2UiIIqmHRRzdHVkaW8uZW50aXR5LnVwZGF0ZaCmHQKoph0BEnsKCUdldEVudGl0eRImLnN0cmVhbWxheWVyLnRyaWdnZXJzLkdldEVudGl0eVJlcXVlc3QaJy5zdHJlYW1sYXllci50cmlnZ2Vycy5HZXRFbnRpdHlSZXNwb25zZSIdiqYdEXN0dWRpby5lbnRpdHkuZ2V0oKYdAqimHQEShwEKDEVuYWJsZUVudGl0eRIpLnN0cmVhbWxheWVyLnRyaWdnZXJzLkVuYWJsZUVudGl0eVJlcXVlc3QaKi5zdHJlYW1sYXllci50cmlnZ2Vycy5FbmFibGVFbnRpdHlSZXNwb25zZSIgiqYdFHN0dWRpby5lbnRpdHkuZW5hYmxloKYdAqimHQESiwEKDURpc2FibGVFbnRpdHkSKi5zdHJlYW1sYXllci50cmlnZ2Vycy5EaXNhYmxlRW50aXR5UmVxdWVzdBorLnN0cmVhbWxheWVyLnRyaWdnZXJzLkRpc2FibGVFbnRpdHlSZXNwb25zZSIhiqYdFXN0dWRpby5lbnRpdHkuZGlzYWJsZaCmHQKoph0BEooBCg5HZXRTcG9ydExpbWl0cxIrLnN0cmVhbWxheWVyLnRyaWdnZXJzLkdldFNwb3J0TGltaXRzUmVxdWVzdBosLnN0cmVhbWxheWVyLnRyaWdnZXJzLkdldFNwb3J0TGltaXRzUmVzcG9uc2UiHYqmHRFzdHVkaW8ubGltaXRzLmdldKCmHQKoph0BEpQBCg9TZXRFbnRpdHlMaW1pdHMSLC5zdHJlYW1sYXllci50cmlnZ2Vycy5TZXRFbnRpdHlMaW1pdHNSZXF1ZXN0Gi0uc3RyZWFtbGF5ZXIudHJpZ2dlcnMuU2V0RW50aXR5TGltaXRzUmVzcG9uc2UiJIqmHRhzdHVkaW8uZW50aXR5LnNldC1saW1pdHOgph0CqKYdARKUAQoPR2V0RW50aXR5TGltaXRzEiwuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuR2V0RW50aXR5TGltaXRzUmVxdWVzdBotLnN0cmVhbWxheWVyLnRyaWdnZXJzLkdldEVudGl0eUxpbWl0c1Jlc3BvbnNlIiSKph0Yc3R1ZGlvLmVudGl0eS5nZXQtbGltaXRzoKYdAqimHQEaDIq1GAh0cmlnZ2Vyc0J9Chhjb20uc3RyZWFtbGF5ZXIudHJpZ2dlcnNCGFN0cmVhbUxheWVyVHJpZ2dlcnNQcm90b1ABWjxnaXRodWIuY29tL3N0cmVhbWxheWVyL3NsLXByb3RvZmlsZXMvdjQvdHJpZ2dlcnM7c2xfdHJpZ2dlcnOiAgZTTF9BUEliBnByb3RvMw", [file_streamlayer_common_streamlayer_common]);
12
+ fileDesc("CiNzdHJlYW1sYXllci90cmlnZ2Vycy90cmlnZ2Vycy5wcm90bxIUc3RyZWFtbGF5ZXIudHJpZ2dlcnMiuQQKB1RyaWdnZXISCgoCaWQYASABKAkSDAoEbmFtZRgCIAEoCRITCgtkZXNjcmlwdGlvbhgDIAEoCRINCgVzY29wZRgEIAEoCRIQCghzY29wZV9pZBgFIAEoCRIRCglhY3RpdmF0ZWQYBiABKAgSDgoGZW50aXR5GAcgASgJEhEKCWVudGl0eV9pZBgIIAEoCRIQCghkaXNhYmxlZBgJIAEoCBIRCgl0aHJlc2hvbGQYCiABKAUSFwoPZGlzYWJsZWRfZW50aXR5GAsgASgIEhkKEXVzZV9lbnRpdHlfbGltaXRzGAwgASgIEkwKF3VzZV9jb25kaXRpb25fdGhyZXNob2xkGA0gASgOMisuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuVXNlQ29uZGl0aW9uVGhyZXNob2xkEjoKCnVzZV9saW1pdHMYDiABKA4yJi5zdHJlYW1sYXllci50cmlnZ2Vycy5Vc2VUcmlnZ2VyTGltaXRzEjsKCGFic3RyYWN0GA8gASgOMikuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuQWJzdHJhY3RUcmlnZ2VyTW9kZRISCgVzcG9ydBgQIAEoCUgAiAEBEhwKD2Rpc2FibGVkX3JlYXNvbhgRIAEoCUgBiAEBEiAKE2Fic3RyYWN0X3RyaWdnZXJfaWQYEiABKAlIAogBAUIICgZfc3BvcnRCEgoQX2Rpc2FibGVkX3JlYXNvbkIWChRfYWJzdHJhY3RfdHJpZ2dlcl9pZCJ4CgVFdmVudBIKCgJpZBgBIAEoCRISCgpkYXRhc291cmNlGAIgASgJEg0KBXNjb3BlGAMgASgJEhAKCHNjb3BlX2lkGAQgASgJEgwKBG5hbWUYBSABKAkSDQoFdmFsdWUYBiABKAkSEQoJdGltZXN0YW1wGAcgASgDImcKFlRyaWdnZXJDb25kaXRpb25PcHRpb24SDQoFZXZlbnQYASABKAkSDwoHY29tcGFyZRgCIAEoCRIMCgR0eXBlGAMgASgJEg8KB3RhcmdldHMYBCADKAkSDgoGcGFyZW50GAUgASgJIpcEChBUcmlnZ2VyQ29uZGl0aW9uEgoKAmlkGAEgASgJEhcKCnRyaWdnZXJfaWQYAiABKAlIAIgBARISCgVldmVudBgDIAEoCUgBiAEBEhcKCmRhdGFzb3VyY2UYBCABKAlIAogBARISCgVzY29wZRgFIAEoCUgDiAEBEhUKCHNjb3BlX2lkGAYgASgJSASIAQESFAoHY29tcGFyZRgHIAEoCUgFiAEBEhEKBHR5cGUYCCABKAlIBogBARIPCgd0YXJnZXRzGAkgAygJEhQKB2N1cnJlbnQYCiABKAlIB4gBARIRCglhY3RpdmF0ZWQYCyABKAgSGAoLY2hhaW5fb3JkZXIYDCABKAVICIgBARIcCg9jaGFpbl9vcGVyYXRpb24YDSABKAlICYgBARIoCgNsb2cYDiADKAsyGy5zdHJlYW1sYXllci50cmlnZ2Vycy5FdmVudBI9CgdvcHRpb25zGA8gAygLMiwuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuVHJpZ2dlckNvbmRpdGlvbk9wdGlvbkINCgtfdHJpZ2dlcl9pZEIICgZfZXZlbnRCDQoLX2RhdGFzb3VyY2VCCAoGX3Njb3BlQgsKCV9zY29wZV9pZEIKCghfY29tcGFyZUIHCgVfdHlwZUIKCghfY3VycmVudEIOCgxfY2hhaW5fb3JkZXJCEgoQX2NoYWluX29wZXJhdGlvbiLPAwoURXNzZW50aWFsVHJpZ2dlckRhdGESDAoEbmFtZRgBIAEoCRITCgtkZXNjcmlwdGlvbhgCIAEoCRISCgpkYXRhc291cmNlGAMgASgJEg0KBXNjb3BlGAQgASgJEhAKCHNjb3BlX2lkGAUgASgJEg4KBmVudGl0eRgGIAEoCRIRCgllbnRpdHlfaWQYByABKAkSEAoIZGlzYWJsZWQYCCABKAgSEQoJdGhyZXNob2xkGAkgASgFEhcKD2Rpc2FibGVkX2VudGl0eRgKIAEoCBIZChF1c2VfZW50aXR5X2xpbWl0cxgLIAEoCBJMChd1c2VfY29uZGl0aW9uX3RocmVzaG9sZBgMIAEoDjIrLnN0cmVhbWxheWVyLnRyaWdnZXJzLlVzZUNvbmRpdGlvblRocmVzaG9sZBI6Cgp1c2VfbGltaXRzGA0gASgOMiYuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuVXNlVHJpZ2dlckxpbWl0cxI7CghhYnN0cmFjdBgOIAEoDjIpLnN0cmVhbWxheWVyLnRyaWdnZXJzLkFic3RyYWN0VHJpZ2dlck1vZGUSEgoFc3BvcnQYDyABKAlIAIgBAUIICgZfc3BvcnQioQEKFkVzc2VudGlhbENvbmRpdGlvbkRhdGESDQoFZXZlbnQYASABKAkSDwoHY29tcGFyZRgCIAEoCRIXCg9jaGFpbl9vcGVyYXRpb24YAyABKAkSDwoHdGFyZ2V0cxgEIAMoCRI9CgdvcHRpb25zGAUgAygLMiwuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuVHJpZ2dlckNvbmRpdGlvbk9wdGlvbiLzAgoVVHJpZ2dlcldpdGhDb25kaXRpb25zEi4KB3RyaWdnZXIYASABKAsyHS5zdHJlYW1sYXllci50cmlnZ2Vycy5UcmlnZ2VyEjoKCmNvbmRpdGlvbnMYAiADKAsyJi5zdHJlYW1sYXllci50cmlnZ2Vycy5UcmlnZ2VyQ29uZGl0aW9uEkcKBmxpbWl0cxgDIAMoCzI3LnN0cmVhbWxheWVyLnRyaWdnZXJzLlRyaWdnZXJXaXRoQ29uZGl0aW9ucy5MaW1pdHNFbnRyeRJHCgZjb3VudHMYBCADKAsyNy5zdHJlYW1sYXllci50cmlnZ2Vycy5UcmlnZ2VyV2l0aENvbmRpdGlvbnMuQ291bnRzRW50cnkaLQoLTGltaXRzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgFOgI4ARotCgtDb3VudHNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAU6AjgBItkCChNUcmlnZ2VyU3Vic2NyaXB0aW9uEgoKAmlkGAEgASgJEhIKCnRyaWdnZXJfaWQYAiABKAkSDQoFcm91dGUYAyABKAkSDgoGZW50aXR5GAQgASgJEhEKCWVudGl0eV9pZBgFIAEoCRJHCgdwYXlsb2FkGAYgAygLMjYuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuVHJpZ2dlclN1YnNjcmlwdGlvbi5QYXlsb2FkRW50cnkSRwoHb3B0aW9ucxgHIAMoCzI2LnN0cmVhbWxheWVyLnRyaWdnZXJzLlRyaWdnZXJTdWJzY3JpcHRpb24uT3B0aW9uc0VudHJ5Gi4KDFBheWxvYWRFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBGi4KDE9wdGlvbnNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIssCChlFc3NlbnRpYWxTdWJzY3JpcHRpb25EYXRhEg0KBXJvdXRlGAEgASgJEg4KBmVudGl0eRgCIAEoCRIRCgllbnRpdHlfaWQYAyABKAkSTQoHcGF5bG9hZBgEIAMoCzI8LnN0cmVhbWxheWVyLnRyaWdnZXJzLkVzc2VudGlhbFN1YnNjcmlwdGlvbkRhdGEuUGF5bG9hZEVudHJ5Ek0KB29wdGlvbnMYBSADKAsyPC5zdHJlYW1sYXllci50cmlnZ2Vycy5Fc3NlbnRpYWxTdWJzY3JpcHRpb25EYXRhLk9wdGlvbnNFbnRyeRouCgxQYXlsb2FkRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ARouCgxPcHRpb25zRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASJCChBTdHVkaW9UYXJnZXRNZXRhEhcKD3BsYXllcl9wb3NpdGlvbhgBIAEoCRIVCg1wbGF5ZXJfbnVtYmVyGAIgASgJIs4BCgxTdHVkaW9UYXJnZXQSDQoFbGFiZWwYASABKAkSEwoLZGVzY3JpcHRpb24YAiABKAkSCgoCaWQYAyABKAkSDQoFZ3JvdXAYBCABKAkSOQoEbWV0YRgFIAEoCzImLnN0cmVhbWxheWVyLnRyaWdnZXJzLlN0dWRpb1RhcmdldE1ldGFIAIgBARI7CghhYnN0cmFjdBgGIAEoDjIpLnN0cmVhbWxheWVyLnRyaWdnZXJzLkFic3RyYWN0VHJpZ2dlck1vZGVCBwoFX21ldGEiVQoLU3R1ZGlvTGltaXQSDQoFbGltaXQYASABKAkSDQoFbGFiZWwYAiABKAkSGAoLZGVzY3JpcHRpb24YAyABKAlIAIgBAUIOCgxfZGVzY3JpcHRpb24icgoSR2V0TWV0YWRhdGFSZXF1ZXN0EhAKCGV2ZW50X2lkGAEgASgJEg0KBXNwb3J0GAIgASgJEjsKCGFic3RyYWN0GAMgASgOMikuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuQWJzdHJhY3RUcmlnZ2VyTW9kZSLtBwoTR2V0TWV0YWRhdGFSZXNwb25zZRJLCgRkYXRhGAEgASgLMj0uc3RyZWFtbGF5ZXIudHJpZ2dlcnMuR2V0TWV0YWRhdGFSZXNwb25zZS5TdHVkaW9Db25kaXRpb25EYXRhGuMBCgtTdHVkaW9FdmVudBIKCgJpZBgBIAEoCRINCgVzcG9ydBgCIAEoCRIPCgdwcmltYXJ5GAMgASgIEjAKBWlucHV0GAQgASgOMiEuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuU3R1ZGlvSW5wdXQSDQoFbGFiZWwYBSABKAkSGQoRcHJlZmVycmVkX29wdGlvbnMYBiADKAkSDwoHY29tcGFyZRgHIAMoCRIaCg10YXJnZXRfc291cmNlGAggASgJSACIAQESDQoFZ3JvdXAYCSABKAlCEAoOX3RhcmdldF9zb3VyY2UaQQoKVGFyZ2V0TGlzdBIzCgd0YXJnZXRzGAEgAygLMiIuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuU3R1ZGlvVGFyZ2V0GkQKBEdhbWUSCgoCaWQYASABKAkSDQoFc3BvcnQYAiABKAkSEgoKZGF0YXNvdXJjZRgDIAEoCRINCgVzY29wZRgEIAEoCRqZBAoTU3R1ZGlvQ29uZGl0aW9uRGF0YRINCgVpbmRleBgBIAMoCRJZCgZldmVudHMYAiADKAsySS5zdHJlYW1sYXllci50cmlnZ2Vycy5HZXRNZXRhZGF0YVJlc3BvbnNlLlN0dWRpb0NvbmRpdGlvbkRhdGEuRXZlbnRzRW50cnkSWwoHc291cmNlcxgDIAMoCzJKLnN0cmVhbWxheWVyLnRyaWdnZXJzLkdldE1ldGFkYXRhUmVzcG9uc2UuU3R1ZGlvQ29uZGl0aW9uRGF0YS5Tb3VyY2VzRW50cnkSPAoEZ2FtZRgEIAEoCzIuLnN0cmVhbWxheWVyLnRyaWdnZXJzLkdldE1ldGFkYXRhUmVzcG9uc2UuR2FtZRIxCgZsaW1pdHMYBSADKAsyIS5zdHJlYW1sYXllci50cmlnZ2Vycy5TdHVkaW9MaW1pdBpkCgtFdmVudHNFbnRyeRILCgNrZXkYASABKAkSRAoFdmFsdWUYAiABKAsyNS5zdHJlYW1sYXllci50cmlnZ2Vycy5HZXRNZXRhZGF0YVJlc3BvbnNlLlN0dWRpb0V2ZW50OgI4ARpkCgxTb3VyY2VzRW50cnkSCwoDa2V5GAEgASgJEkMKBXZhbHVlGAIgASgLMjQuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuR2V0TWV0YWRhdGFSZXNwb25zZS5UYXJnZXRMaXN0OgI4ASLiAgoUQ3JlYXRlVHJpZ2dlclJlcXVlc3QSOwoHdHJpZ2dlchgBIAEoCzIqLnN0cmVhbWxheWVyLnRyaWdnZXJzLkVzc2VudGlhbFRyaWdnZXJEYXRhEkAKCmNvbmRpdGlvbnMYAiADKAsyLC5zdHJlYW1sYXllci50cmlnZ2Vycy5Fc3NlbnRpYWxDb25kaXRpb25EYXRhEkYKBmxpbWl0cxgDIAMoCzI2LnN0cmVhbWxheWVyLnRyaWdnZXJzLkNyZWF0ZVRyaWdnZXJSZXF1ZXN0LkxpbWl0c0VudHJ5EhwKD29yZ2FuaXphdGlvbl9pZBgEIAEoCUgAiAEBEhUKCGV2ZW50X2lkGAUgASgJSAGIAQEaLQoLTGltaXRzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgFOgI4AUISChBfb3JnYW5pemF0aW9uX2lkQgsKCV9ldmVudF9pZCKFAQoVQ3JlYXRlVHJpZ2dlclJlc3BvbnNlEkQKBGRhdGEYASABKAsyNi5zdHJlYW1sYXllci50cmlnZ2Vycy5DcmVhdGVUcmlnZ2VyUmVzcG9uc2UuQXR0cmlidXRlcxomCgpBdHRyaWJ1dGVzEgoKAmlkGAEgASgJEgwKBHR5cGUYAiABKAkitQcKFUNyZWF0ZVRyaWdnZXJzUmVxdWVzdBJTCgRkYXRhGAEgASgLMkUuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuQ3JlYXRlVHJpZ2dlcnNSZXF1ZXN0LkNyZWF0ZVRyaWdnZXJzUmVxdWVzdERhdGESHAoPb3JnYW5pemF0aW9uX2lkGAIgASgJSACIAQESFQoIZXZlbnRfaWQYAyABKAlIAYgBARqXAgoPVW5pcVRyaWdnZXJEYXRhEgwKBG5hbWUYASABKAkSEwoLZGVzY3JpcHRpb24YAiABKAkSEAoIZGlzYWJsZWQYAyABKAgSEQoJdGhyZXNob2xkGAQgASgFEhcKD2Rpc2FibGVkX2VudGl0eRgFIAEoCBIZChF1c2VfZW50aXR5X2xpbWl0cxgGIAEoCBJMChd1c2VfY29uZGl0aW9uX3RocmVzaG9sZBgHIAEoDjIrLnN0cmVhbWxheWVyLnRyaWdnZXJzLlVzZUNvbmRpdGlvblRocmVzaG9sZBI6Cgp1c2VfbGltaXRzGAggASgOMiYuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuVXNlVHJpZ2dlckxpbWl0cxqZAgoHVHJpZ2dlchJMCgd0cmlnZ2VyGAEgASgLMjsuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuQ3JlYXRlVHJpZ2dlcnNSZXF1ZXN0LlVuaXFUcmlnZ2VyRGF0YRJACgpjb25kaXRpb25zGAIgAygLMiwuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuRXNzZW50aWFsQ29uZGl0aW9uRGF0YRJPCgZsaW1pdHMYAyADKAsyPy5zdHJlYW1sYXllci50cmlnZ2Vycy5DcmVhdGVUcmlnZ2Vyc1JlcXVlc3QuVHJpZ2dlci5MaW1pdHNFbnRyeRotCgtMaW1pdHNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAU6AjgBGroBChlDcmVhdGVUcmlnZ2Vyc1JlcXVlc3REYXRhEhIKCmRhdGFzb3VyY2UYAyABKAkSDQoFc2NvcGUYBCABKAkSEAoIc2NvcGVfaWQYBSABKAkSDgoGZW50aXR5GAYgASgJEhEKCWVudGl0eV9pZBgHIAEoCRJFCgh0cmlnZ2VycxgIIAMoCzIzLnN0cmVhbWxheWVyLnRyaWdnZXJzLkNyZWF0ZVRyaWdnZXJzUmVxdWVzdC5UcmlnZ2VyQhIKEF9vcmdhbml6YXRpb25faWRCCwoJX2V2ZW50X2lkIocBChZDcmVhdGVUcmlnZ2Vyc1Jlc3BvbnNlEkUKBGRhdGEYASADKAsyNy5zdHJlYW1sYXllci50cmlnZ2Vycy5DcmVhdGVUcmlnZ2Vyc1Jlc3BvbnNlLkF0dHJpYnV0ZXMaJgoKQXR0cmlidXRlcxIKCgJpZBgBIAEoCRIMCgR0eXBlGAIgASgJIqUDChRVcGRhdGVUcmlnZ2VyUmVxdWVzdBJCCgd1cGRhdGVzGAEgAygLMjEuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuVXBkYXRlVHJpZ2dlclJlcXVlc3QuVXBkYXRlEhwKD29yZ2FuaXphdGlvbl9pZBgCIAEoCUgAiAEBEhUKCGV2ZW50X2lkGAMgASgJSAGIAQEa8gEKBlVwZGF0ZRIuCgd0cmlnZ2VyGAEgASgLMh0uc3RyZWFtbGF5ZXIudHJpZ2dlcnMuVHJpZ2dlchI6Cgpjb25kaXRpb25zGAIgAygLMiYuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuVHJpZ2dlckNvbmRpdGlvbhJNCgZsaW1pdHMYAyADKAsyPS5zdHJlYW1sYXllci50cmlnZ2Vycy5VcGRhdGVUcmlnZ2VyUmVxdWVzdC5VcGRhdGUuTGltaXRzRW50cnkaLQoLTGltaXRzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgFOgI4AUISChBfb3JnYW5pemF0aW9uX2lkQgsKCV9ldmVudF9pZCIXChVVcGRhdGVUcmlnZ2VyUmVzcG9uc2UieAoURW5hYmxlVHJpZ2dlclJlcXVlc3QSCgoCaWQYASABKAkSHAoPb3JnYW5pemF0aW9uX2lkGAIgASgJSACIAQESFQoIZXZlbnRfaWQYAyABKAlIAYgBAUISChBfb3JnYW5pemF0aW9uX2lkQgsKCV9ldmVudF9pZCIXChVFbmFibGVUcmlnZ2VyUmVzcG9uc2UieQoVRGlzYWJsZVRyaWdnZXJSZXF1ZXN0EgoKAmlkGAEgASgJEhwKD29yZ2FuaXphdGlvbl9pZBgCIAEoCUgAiAEBEhUKCGV2ZW50X2lkGAMgASgJSAGIAQFCEgoQX29yZ2FuaXphdGlvbl9pZEILCglfZXZlbnRfaWQiGAoWRGlzYWJsZVRyaWdnZXJSZXNwb25zZSJ4ChREZWxldGVUcmlnZ2VyUmVxdWVzdBIKCgJpZBgBIAEoCRIcCg9vcmdhbml6YXRpb25faWQYAiABKAlIAIgBARIVCghldmVudF9pZBgDIAEoCUgBiAEBQhIKEF9vcmdhbml6YXRpb25faWRCCwoJX2V2ZW50X2lkIoUBChVEZWxldGVUcmlnZ2VyUmVzcG9uc2USRAoEZGF0YRgBIAEoCzI2LnN0cmVhbWxheWVyLnRyaWdnZXJzLkRlbGV0ZVRyaWdnZXJSZXNwb25zZS5BdHRyaWJ1dGVzGiYKCkF0dHJpYnV0ZXMSCgoCaWQYASABKAkSDAoEdHlwZRgCIAEoCSIfChFHZXRUcmlnZ2VyUmVxdWVzdBIKCgJpZBgBIAEoCSLAAQoSR2V0VHJpZ2dlclJlc3BvbnNlEkEKBGRhdGEYASABKAsyMy5zdHJlYW1sYXllci50cmlnZ2Vycy5HZXRUcmlnZ2VyUmVzcG9uc2UuQXR0cmlidXRlcxpnCgpBdHRyaWJ1dGVzEgoKAmlkGAEgASgJEgwKBHR5cGUYAiABKAkSPwoKYXR0cmlidXRlcxgDIAEoCzIrLnN0cmVhbWxheWVyLnRyaWdnZXJzLlRyaWdnZXJXaXRoQ29uZGl0aW9ucyKZAwoRVHJpZ2dlckFjdGl2YXRpb24SFAoMYWN0aXZhdGVkX2F0GAEgASgFEhMKC3NuYXBzaG90X2lkGAIgASgJEiEKGWFjdGl2YXRlZF9jb25kaXRpb25fY291bnQYAyABKAUSDgoGZW50aXR5GAQgASgJEhEKCWVudGl0eV9pZBgFIAEoCRJWCgpnYW1lX2V2ZW50GAYgASgLMkIuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuVHJpZ2dlckFjdGl2YXRpb24uVHJpZ2dlckFjdGl2YXRpb25HYW1lRXZlbnQSLgoHdHJpZ2dlchgHIAEoCzIdLnN0cmVhbWxheWVyLnRyaWdnZXJzLlRyaWdnZXISOgoKY29uZGl0aW9ucxgIIAMoCzImLnN0cmVhbWxheWVyLnRyaWdnZXJzLlRyaWdnZXJDb25kaXRpb24aTwoaVHJpZ2dlckFjdGl2YXRpb25HYW1lRXZlbnQSDAoEdGltZRgBIAEoCRIOCgZwZXJpb2QYAiABKAkSEwoLZGVzY3JpcHRpb24YAyABKAkieAoZVHJpZ2dlckFjdGl2YXRpb25zUmVxdWVzdBIPCgJpZBgBIAEoCUgAiAEBEhYKCWVudGl0eV9pZBgCIAEoCUgBiAEBEg0KBWxpbWl0GAMgASgFEg4KBm9mZnNldBgEIAEoBUIFCgNfaWRCDAoKX2VudGl0eV9pZCJTChpUcmlnZ2VyQWN0aXZhdGlvbnNSZXNwb25zZRI1CgRkYXRhGAEgAygLMicuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuVHJpZ2dlckFjdGl2YXRpb24iOAoTTGlzdFRyaWdnZXJzUmVxdWVzdBIOCgZlbnRpdHkYASABKAkSEQoJZW50aXR5X2lkGAIgASgJIsIBChNMaXN0VHJpZ2dlclJlc3BvbnNlEkIKBGRhdGEYASADKAsyNC5zdHJlYW1sYXllci50cmlnZ2Vycy5MaXN0VHJpZ2dlclJlc3BvbnNlLkF0dHJpYnV0ZXMaZwoKQXR0cmlidXRlcxIKCgJpZBgBIAEoCRIMCgR0eXBlGAIgASgJEj8KCmF0dHJpYnV0ZXMYAyABKAsyKy5zdHJlYW1sYXllci50cmlnZ2Vycy5UcmlnZ2VyV2l0aENvbmRpdGlvbnMibQoQU3Vic2NyaWJlUmVxdWVzdBISCgp0cmlnZ2VyX2lkGAEgASgJEkUKDHN1YnNjcmlwdGlvbhgCIAEoCzIvLnN0cmVhbWxheWVyLnRyaWdnZXJzLkVzc2VudGlhbFN1YnNjcmlwdGlvbkRhdGEifQoRU3Vic2NyaWJlUmVzcG9uc2USQAoEZGF0YRgBIAEoCzIyLnN0cmVhbWxheWVyLnRyaWdnZXJzLlN1YnNjcmliZVJlc3BvbnNlLkF0dHJpYnV0ZXMaJgoKQXR0cmlidXRlcxIKCgJpZBgBIAEoCRIMCgR0eXBlGAIgASgJIlEKGExpc3RTdWJzY3JpcHRpb25zUmVxdWVzdBISCgp0cmlnZ2VyX2lkGAEgASgJEg4KBmVudGl0eRgCIAEoCRIRCgllbnRpdHlfaWQYAyABKAkizgEKGExpc3RTdWJzY3JpcHRpb25SZXNwb25zZRJJCgRkYXRhGAEgAygLMjsuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuTGlzdFN1YnNjcmlwdGlvblJlc3BvbnNlLlJlc3BvbnNlSXRlbRpnCgxSZXNwb25zZUl0ZW0SCgoCaWQYASABKAkSDAoEdHlwZRgCIAEoCRI9CgphdHRyaWJ1dGVzGAMgASgLMikuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuVHJpZ2dlclN1YnNjcmlwdGlvbiInChlDYW5jZWxTdWJzY3JpcHRpb25SZXF1ZXN0EgoKAmlkGAEgASgJIo8BChpDYW5jZWxTdWJzY3JpcHRpb25SZXNwb25zZRJJCgRkYXRhGAEgASgLMjsuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuQ2FuY2VsU3Vic2NyaXB0aW9uUmVzcG9uc2UuQXR0cmlidXRlcxomCgpBdHRyaWJ1dGVzEgoKAmlkGAEgASgJEgwKBHR5cGUYAiABKAkipgEKBkVudGl0eRIOCgZlbnRpdHkYASABKAkSEQoJZW50aXR5X2lkGAIgASgJEhAKCGRpc2FibGVkGAMgASgIEjgKBmxpbWl0cxgEIAMoCzIoLnN0cmVhbWxheWVyLnRyaWdnZXJzLkVudGl0eS5MaW1pdHNFbnRyeRotCgtMaW1pdHNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAU6AjgBIpcBChNVcGRhdGVFbnRpdHlSZXF1ZXN0EioKBGRhdGEYASADKAsyHC5zdHJlYW1sYXllci50cmlnZ2Vycy5FbnRpdHkSHAoPb3JnYW5pemF0aW9uX2lkGAIgASgJSACIAQESFQoIZXZlbnRfaWQYAyABKAlIAYgBAUISChBfb3JnYW5pemF0aW9uX2lkQgsKCV9ldmVudF9pZCIWChRVcGRhdGVFbnRpdHlSZXNwb25zZSI1ChBHZXRFbnRpdHlSZXF1ZXN0Eg4KBmVudGl0eRgBIAEoCRIRCgllbnRpdHlfaWQYAiABKAkiPwoRR2V0RW50aXR5UmVzcG9uc2USKgoEZGF0YRgBIAEoCzIcLnN0cmVhbWxheWVyLnRyaWdnZXJzLkVudGl0eSLYAQoTRW5hYmxlRW50aXR5UmVxdWVzdBJACghlbnRpdGllcxgBIAMoCzIuLnN0cmVhbWxheWVyLnRyaWdnZXJzLkVuYWJsZUVudGl0eVJlcXVlc3QuRGF0YRIcCg9vcmdhbml6YXRpb25faWQYAiABKAlIAIgBARIVCghldmVudF9pZBgDIAEoCUgBiAEBGikKBERhdGESDgoGZW50aXR5GAEgASgJEhEKCWVudGl0eV9pZBgCIAEoCUISChBfb3JnYW5pemF0aW9uX2lkQgsKCV9ldmVudF9pZCIWChRFbmFibGVFbnRpdHlSZXNwb25zZSLaAQoURGlzYWJsZUVudGl0eVJlcXVlc3QSQQoIZW50aXRpZXMYASADKAsyLy5zdHJlYW1sYXllci50cmlnZ2Vycy5EaXNhYmxlRW50aXR5UmVxdWVzdC5EYXRhEhwKD29yZ2FuaXphdGlvbl9pZBgCIAEoCUgAiAEBEhUKCGV2ZW50X2lkGAMgASgJSAGIAQEaKQoERGF0YRIOCgZlbnRpdHkYASABKAkSEQoJZW50aXR5X2lkGAIgASgJQhIKEF9vcmdhbml6YXRpb25faWRCCwoJX2V2ZW50X2lkIhcKFURpc2FibGVFbnRpdHlSZXNwb25zZSImChVHZXRTcG9ydExpbWl0c1JlcXVlc3QSDQoFc3BvcnQYASABKAkiSwoWR2V0U3BvcnRMaW1pdHNSZXNwb25zZRIxCgZsaW1pdHMYASADKAsyIS5zdHJlYW1sYXllci50cmlnZ2Vycy5TdHVkaW9MaW1pdCKbAgoWU2V0RW50aXR5TGltaXRzUmVxdWVzdBIOCgZlbnRpdHkYASABKAkSEQoJZW50aXR5X2lkGAIgASgJEkgKBmxpbWl0cxgDIAMoCzI4LnN0cmVhbWxheWVyLnRyaWdnZXJzLlNldEVudGl0eUxpbWl0c1JlcXVlc3QuTGltaXRzRW50cnkSDwoHZW5hYmxlZBgEIAEoCBIcCg9vcmdhbml6YXRpb25faWQYBSABKAlIAIgBARIVCghldmVudF9pZBgGIAEoCUgBiAEBGi0KC0xpbWl0c0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoBToCOAFCEgoQX29yZ2FuaXphdGlvbl9pZEILCglfZXZlbnRfaWQiGQoXU2V0RW50aXR5TGltaXRzUmVzcG9uc2UiOwoWR2V0RW50aXR5TGltaXRzUmVxdWVzdBIOCgZlbnRpdHkYASABKAkSEQoJZW50aXR5X2lkGAIgASgJIqQBChdHZXRFbnRpdHlMaW1pdHNSZXNwb25zZRJJCgZsaW1pdHMYASADKAsyOS5zdHJlYW1sYXllci50cmlnZ2Vycy5HZXRFbnRpdHlMaW1pdHNSZXNwb25zZS5MaW1pdHNFbnRyeRIPCgdlbmFibGVkGAIgASgIGi0KC0xpbWl0c0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoBToCOAEiowEKHVJlc29sdmVBYnN0cmFjdFRyaWdnZXJSZXF1ZXN0EhsKE2Fic3RyYWN0X3RyaWdnZXJfaWQYASABKAkSEAoIZXZlbnRfaWQYAiABKAkSDgoGZW50aXR5GAMgASgJEhEKCWVudGl0eV9pZBgEIAEoCRIcCg9vcmdhbml6YXRpb25faWQYBSABKAlIAIgBAUISChBfb3JnYW5pemF0aW9uX2lkIp8CCh5SZXNvbHZlQWJzdHJhY3RUcmlnZ2VyUmVzcG9uc2USUgoEZGF0YRgBIAEoCzI/LnN0cmVhbWxheWVyLnRyaWdnZXJzLlJlc29sdmVBYnN0cmFjdFRyaWdnZXJSZXNwb25zZS5BdHRyaWJ1dGVzSACIAQESOwoKYXBwbGljYWJsZRgCIAEoDjInLnN0cmVhbWxheWVyLnRyaWdnZXJzLlRyaWdnZXJBcHBsaWNhYmxlEhMKBnJlYXNvbhgDIAEoCUgBiAEBGkMKCkF0dHJpYnV0ZXMSCgoCaWQYASABKAkSDAoEdHlwZRgCIAEoCRIbChNhYnN0cmFjdF90cmlnZ2VyX2lkGAMgASgJQgcKBV9kYXRhQgkKB19yZWFzb24qhQEKFVVzZUNvbmRpdGlvblRocmVzaG9sZBIhCh1VU0VfQ09ORElUSU9OX1RIUkVTSE9MRF9VTlNFVBAAEiMKH1VTRV9DT05ESVRJT05fVEhSRVNIT0xEX0VOQUJMRUQQARIkCiBVU0VfQ09ORElUSU9OX1RIUkVTSE9MRF9ESVNBQkxFRBACKnEKEFVzZVRyaWdnZXJMaW1pdHMSHAoYVVNFX1RSSUdHRVJfTElNSVRTX1VOU0VUEAASHgoaVVNFX1RSSUdHRVJfTElNSVRTX0VOQUJMRUQQARIfChtVU0VfVFJJR0dFUl9MSU1JVFNfRElTQUJMRUQQAip3ChNBYnN0cmFjdFRyaWdnZXJNb2RlEh8KG0FCU1RSQUNUX1RSSUdHRVJfTU9ERV9VTlNFVBAAEh4KGkFCU1RSQUNUX1RSSUdHRVJfTU9ERV9UUlVFEAESHwobQUJTVFJBQ1RfVFJJR0dFUl9NT0RFX0ZBTFNFEAIqbAoRVHJpZ2dlckFwcGxpY2FibGUSHAoYVFJJR0dFUl9BUFBMSUNBQkxFX1VOU0VUEAASGwoXVFJJR0dFUl9BUFBMSUNBQkxFX1RSVUUQARIcChhUUklHR0VSX0FQUExJQ0FCTEVfRkFMU0UQAiqDAgoLU3R1ZGlvSW5wdXQSFgoSU1RVRElPX0lOUFVUX1VOU0VUEAASFwoTU1RVRElPX0lOUFVUX1NFTEVDVBABEh0KGVNUVURJT19JTlBVVF9TRUxFQ1RfTVVMVEkQAhIdChlTVFVESU9fSU5QVVRfVElNRV9NSU5VVEVTEAMSFwoTU1RVRElPX0lOUFVUX1NUUklORxAEEhcKE1NUVURJT19JTlBVVF9OVU1CRVIQBRIXChNTVFVESU9fSU5QVVRfUE9JTlRTEAYSIQodU1RVRElPX0lOUFVUX0RBVEVfVElNRV9QSUNLRVIQBxIXChNTVFVESU9fSU5QVVRfUkVQRUFUEAgy+RcKCFRyaWdnZXJzEoMBCgtHZXRNZXRhZGF0YRIoLnN0cmVhbWxheWVyLnRyaWdnZXJzLkdldE1ldGFkYXRhUmVxdWVzdBopLnN0cmVhbWxheWVyLnRyaWdnZXJzLkdldE1ldGFkYXRhUmVzcG9uc2UiH4qmHRNzdHVkaW8ubWV0YWRhdGEuZ2V0oKYdAqimHQESiwEKDUNyZWF0ZVRyaWdnZXISKi5zdHJlYW1sYXllci50cmlnZ2Vycy5DcmVhdGVUcmlnZ2VyUmVxdWVzdBorLnN0cmVhbWxheWVyLnRyaWdnZXJzLkNyZWF0ZVRyaWdnZXJSZXNwb25zZSIhiqYdFXN0dWRpby50cmlnZ2VyLmNyZWF0ZaCmHQKoph0BEpMBCg5DcmVhdGVUcmlnZ2VycxIrLnN0cmVhbWxheWVyLnRyaWdnZXJzLkNyZWF0ZVRyaWdnZXJzUmVxdWVzdBosLnN0cmVhbWxheWVyLnRyaWdnZXJzLkNyZWF0ZVRyaWdnZXJzUmVzcG9uc2UiJoqmHRpzdHVkaW8udHJpZ2dlci5jcmVhdGUubWFueaCmHQKoph0BEosBCg1VcGRhdGVUcmlnZ2VyEiouc3RyZWFtbGF5ZXIudHJpZ2dlcnMuVXBkYXRlVHJpZ2dlclJlcXVlc3QaKy5zdHJlYW1sYXllci50cmlnZ2Vycy5VcGRhdGVUcmlnZ2VyUmVzcG9uc2UiIYqmHRVzdHVkaW8udHJpZ2dlci51cGRhdGWgph0CqKYdARKLAQoNRW5hYmxlVHJpZ2dlchIqLnN0cmVhbWxheWVyLnRyaWdnZXJzLkVuYWJsZVRyaWdnZXJSZXF1ZXN0Gisuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuRW5hYmxlVHJpZ2dlclJlc3BvbnNlIiGKph0Vc3R1ZGlvLnRyaWdnZXIuZW5hYmxloKYdAqimHQESjwEKDkRpc2FibGVUcmlnZ2VyEisuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuRGlzYWJsZVRyaWdnZXJSZXF1ZXN0Giwuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuRGlzYWJsZVRyaWdnZXJSZXNwb25zZSIiiqYdFnN0dWRpby50cmlnZ2VyLmRpc2FibGWgph0CqKYdARKLAQoNRGVsZXRlVHJpZ2dlchIqLnN0cmVhbWxheWVyLnRyaWdnZXJzLkRlbGV0ZVRyaWdnZXJSZXF1ZXN0Gisuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuRGVsZXRlVHJpZ2dlclJlc3BvbnNlIiGKph0Vc3R1ZGlvLnRyaWdnZXIuZGVsZXRloKYdAqimHQESfwoKR2V0VHJpZ2dlchInLnN0cmVhbWxheWVyLnRyaWdnZXJzLkdldFRyaWdnZXJSZXF1ZXN0Giguc3RyZWFtbGF5ZXIudHJpZ2dlcnMuR2V0VHJpZ2dlclJlc3BvbnNlIh6Kph0Sc3R1ZGlvLnRyaWdnZXIuZ2V0oKYdAqimHQEShQEKDExpc3RUcmlnZ2VycxIpLnN0cmVhbWxheWVyLnRyaWdnZXJzLkxpc3RUcmlnZ2Vyc1JlcXVlc3QaKS5zdHJlYW1sYXllci50cmlnZ2Vycy5MaXN0VHJpZ2dlclJlc3BvbnNlIh+Kph0Tc3R1ZGlvLnRyaWdnZXIubGlzdKCmHQKoph0BEoIBCglTdWJzY3JpYmUSJi5zdHJlYW1sYXllci50cmlnZ2Vycy5TdWJzY3JpYmVSZXF1ZXN0Gicuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuU3Vic2NyaWJlUmVzcG9uc2UiJIqmHRhzdHVkaW8udHJpZ2dlci5zdWJzY3JpYmWgph0CqKYdARKfAQoSVHJpZ2dlckFjdGl2YXRpb25zEi8uc3RyZWFtbGF5ZXIudHJpZ2dlcnMuVHJpZ2dlckFjdGl2YXRpb25zUmVxdWVzdBowLnN0cmVhbWxheWVyLnRyaWdnZXJzLlRyaWdnZXJBY3RpdmF0aW9uc1Jlc3BvbnNlIiaKph0ac3R1ZGlvLnRyaWdnZXIuYWN0aXZhdGlvbnOgph0CqKYdARKZAQoRTGlzdFN1YnNjcmlwdGlvbnMSLi5zdHJlYW1sYXllci50cmlnZ2Vycy5MaXN0U3Vic2NyaXB0aW9uc1JlcXVlc3QaLi5zdHJlYW1sYXllci50cmlnZ2Vycy5MaXN0U3Vic2NyaXB0aW9uUmVzcG9uc2UiJIqmHRhzdHVkaW8uc3Vic2NyaXB0aW9uLmxpc3Sgph0CqKYdARKfAQoSQ2FuY2VsU3Vic2NyaXB0aW9uEi8uc3RyZWFtbGF5ZXIudHJpZ2dlcnMuQ2FuY2VsU3Vic2NyaXB0aW9uUmVxdWVzdBowLnN0cmVhbWxheWVyLnRyaWdnZXJzLkNhbmNlbFN1YnNjcmlwdGlvblJlc3BvbnNlIiaKph0ac3R1ZGlvLnN1YnNjcmlwdGlvbi5jYW5jZWygph0CqKYdARKHAQoMVXBkYXRlRW50aXR5Eikuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuVXBkYXRlRW50aXR5UmVxdWVzdBoqLnN0cmVhbWxheWVyLnRyaWdnZXJzLlVwZGF0ZUVudGl0eVJlc3BvbnNlIiCKph0Uc3R1ZGlvLmVudGl0eS51cGRhdGWgph0CqKYdARJ7CglHZXRFbnRpdHkSJi5zdHJlYW1sYXllci50cmlnZ2Vycy5HZXRFbnRpdHlSZXF1ZXN0Gicuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuR2V0RW50aXR5UmVzcG9uc2UiHYqmHRFzdHVkaW8uZW50aXR5LmdldKCmHQKoph0BEocBCgxFbmFibGVFbnRpdHkSKS5zdHJlYW1sYXllci50cmlnZ2Vycy5FbmFibGVFbnRpdHlSZXF1ZXN0Giouc3RyZWFtbGF5ZXIudHJpZ2dlcnMuRW5hYmxlRW50aXR5UmVzcG9uc2UiIIqmHRRzdHVkaW8uZW50aXR5LmVuYWJsZaCmHQKoph0BEosBCg1EaXNhYmxlRW50aXR5Eiouc3RyZWFtbGF5ZXIudHJpZ2dlcnMuRGlzYWJsZUVudGl0eVJlcXVlc3QaKy5zdHJlYW1sYXllci50cmlnZ2Vycy5EaXNhYmxlRW50aXR5UmVzcG9uc2UiIYqmHRVzdHVkaW8uZW50aXR5LmRpc2FibGWgph0CqKYdARKKAQoOR2V0U3BvcnRMaW1pdHMSKy5zdHJlYW1sYXllci50cmlnZ2Vycy5HZXRTcG9ydExpbWl0c1JlcXVlc3QaLC5zdHJlYW1sYXllci50cmlnZ2Vycy5HZXRTcG9ydExpbWl0c1Jlc3BvbnNlIh2Kph0Rc3R1ZGlvLmxpbWl0cy5nZXSgph0CqKYdARKUAQoPU2V0RW50aXR5TGltaXRzEiwuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuU2V0RW50aXR5TGltaXRzUmVxdWVzdBotLnN0cmVhbWxheWVyLnRyaWdnZXJzLlNldEVudGl0eUxpbWl0c1Jlc3BvbnNlIiSKph0Yc3R1ZGlvLmVudGl0eS5zZXQtbGltaXRzoKYdAqimHQESlAEKD0dldEVudGl0eUxpbWl0cxIsLnN0cmVhbWxheWVyLnRyaWdnZXJzLkdldEVudGl0eUxpbWl0c1JlcXVlc3QaLS5zdHJlYW1sYXllci50cmlnZ2Vycy5HZXRFbnRpdHlMaW1pdHNSZXNwb25zZSIkiqYdGHN0dWRpby5lbnRpdHkuZ2V0LWxpbWl0c6CmHQKoph0BErABChZSZXNvbHZlQWJzdHJhY3RUcmlnZ2VyEjMuc3RyZWFtbGF5ZXIudHJpZ2dlcnMuUmVzb2x2ZUFic3RyYWN0VHJpZ2dlclJlcXVlc3QaNC5zdHJlYW1sYXllci50cmlnZ2Vycy5SZXNvbHZlQWJzdHJhY3RUcmlnZ2VyUmVzcG9uc2UiK4qmHR9zdHVkaW8uYWJzdHJhY3QudHJpZ2dlci5yZXNvbHZloKYdAqimHQEaDIq1GAh0cmlnZ2Vyc0J9Chhjb20uc3RyZWFtbGF5ZXIudHJpZ2dlcnNCGFN0cmVhbUxheWVyVHJpZ2dlcnNQcm90b1ABWjxnaXRodWIuY29tL3N0cmVhbWxheWVyL3NsLXByb3RvZmlsZXMvdjQvdHJpZ2dlcnM7c2xfdHJpZ2dlcnOiAgZTTF9BUEliBnByb3RvMw", [file_streamlayer_common_streamlayer_common]);
13
13
 
14
14
  /**
15
15
  * Describes the message streamlayer.triggers.Trigger.
@@ -522,6 +522,27 @@ export const GetEntityLimitsRequestSchema = /*@__PURE__*/
522
522
  export const GetEntityLimitsResponseSchema = /*@__PURE__*/
523
523
  messageDesc(file_streamlayer_triggers_triggers, 53);
524
524
 
525
+ /**
526
+ * Describes the message streamlayer.triggers.ResolveAbstractTriggerRequest.
527
+ * Use `create(ResolveAbstractTriggerRequestSchema)` to create a new message.
528
+ */
529
+ export const ResolveAbstractTriggerRequestSchema = /*@__PURE__*/
530
+ messageDesc(file_streamlayer_triggers_triggers, 54);
531
+
532
+ /**
533
+ * Describes the message streamlayer.triggers.ResolveAbstractTriggerResponse.
534
+ * Use `create(ResolveAbstractTriggerResponseSchema)` to create a new message.
535
+ */
536
+ export const ResolveAbstractTriggerResponseSchema = /*@__PURE__*/
537
+ messageDesc(file_streamlayer_triggers_triggers, 55);
538
+
539
+ /**
540
+ * Describes the message streamlayer.triggers.ResolveAbstractTriggerResponse.Attributes.
541
+ * Use `create(ResolveAbstractTriggerResponse_AttributesSchema)` to create a new message.
542
+ */
543
+ export const ResolveAbstractTriggerResponse_AttributesSchema = /*@__PURE__*/
544
+ messageDesc(file_streamlayer_triggers_triggers, 55, 0);
545
+
525
546
  /**
526
547
  * Describes the enum streamlayer.triggers.UseConditionThreshold.
527
548
  */
@@ -546,11 +567,35 @@ export const UseTriggerLimitsSchema = /*@__PURE__*/
546
567
  export const UseTriggerLimits = /*@__PURE__*/
547
568
  tsEnum(UseTriggerLimitsSchema);
548
569
 
570
+ /**
571
+ * Describes the enum streamlayer.triggers.AbstractTriggerMode.
572
+ */
573
+ export const AbstractTriggerModeSchema = /*@__PURE__*/
574
+ enumDesc(file_streamlayer_triggers_triggers, 2);
575
+
576
+ /**
577
+ * @generated from enum streamlayer.triggers.AbstractTriggerMode
578
+ */
579
+ export const AbstractTriggerMode = /*@__PURE__*/
580
+ tsEnum(AbstractTriggerModeSchema);
581
+
582
+ /**
583
+ * Describes the enum streamlayer.triggers.TriggerApplicable.
584
+ */
585
+ export const TriggerApplicableSchema = /*@__PURE__*/
586
+ enumDesc(file_streamlayer_triggers_triggers, 3);
587
+
588
+ /**
589
+ * @generated from enum streamlayer.triggers.TriggerApplicable
590
+ */
591
+ export const TriggerApplicable = /*@__PURE__*/
592
+ tsEnum(TriggerApplicableSchema);
593
+
549
594
  /**
550
595
  * Describes the enum streamlayer.triggers.StudioInput.
551
596
  */
552
597
  export const StudioInputSchema = /*@__PURE__*/
553
- enumDesc(file_streamlayer_triggers_triggers, 2);
598
+ enumDesc(file_streamlayer_triggers_triggers, 4);
554
599
 
555
600
  /**
556
601
  * @generated from enum streamlayer.triggers.StudioInput