@projectqai/proto 0.0.52 → 0.0.53

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/dist/world_pb.js CHANGED
@@ -6,12 +6,14 @@ import { enumDesc, fileDesc, messageDesc, serviceDesc, tsEnum } from "@bufbuild/
6
6
  import { file_geometry } from "./geometry_pb.js";
7
7
  import { file_google_protobuf_struct, file_google_protobuf_timestamp } from "@bufbuild/protobuf/wkt";
8
8
  import { file_metrics } from "./metrics_pb.js";
9
+ import { file_tasking } from "./tasking_pb.js";
10
+ import { file_taxonomy } from "./taxonomy_pb.js";
9
11
 
10
12
  /**
11
13
  * Describes the file world.proto.
12
14
  */
13
15
  export const file_world = /*@__PURE__*/
14
- fileDesc("Cgt3b3JsZC5wcm90bxIFd29ybGQijRMKBkVudGl0eRIKCgJpZBgBIAEoCRISCgVsYWJlbBgCIAEoCUgAiAEBEioKCmNvbnRyb2xsZXIYAyABKAsyES53b3JsZC5Db250cm9sbGVySAGIAQESJgoIbGlmZXRpbWUYBCABKAsyDy53b3JsZC5MaWZldGltZUgCiAEBEiYKCHByaW9yaXR5GAUgASgOMg8ud29ybGQuUHJpb3JpdHlIA4gBARIgCgVsZWFzZRgGIAEoCzIMLndvcmxkLkxlYXNlSASIAQESJAoHcm91dGluZxgHIAEoCzIOLndvcmxkLlJvdXRpbmdIBYgBARIsCgNnZW8YCyABKAsyGi53b3JsZC5HZW9TcGF0aWFsQ29tcG9uZW50SAaIAQESKwoGc3ltYm9sGAwgASgLMhYud29ybGQuU3ltYm9sQ29tcG9uZW50SAeIAQESKwoGY2FtZXJhGA8gASgLMhYud29ybGQuQ2FtZXJhQ29tcG9uZW50SAiIAQESMQoJZGV0ZWN0aW9uGBAgASgLMhkud29ybGQuRGV0ZWN0aW9uQ29tcG9uZW50SAmIAQESLQoHYmVhcmluZxgRIAEoCzIXLndvcmxkLkJlYXJpbmdDb21wb25lbnRICogBARIpCgV0cmFjaxgVIAEoCzIVLndvcmxkLlRyYWNrQ29tcG9uZW50SAuIAQESLQoHbG9jYXRvchgWIAEoCzIXLndvcmxkLkxvY2F0b3JDb21wb25lbnRIDIgBARIzCgpraW5lbWF0aWNzGBggASgLMhoud29ybGQuS2luZW1hdGljc0NvbXBvbmVudEgNiAEBEiwKBXNoYXBlGBkgASgLMhgud29ybGQuR2VvU2hhcGVDb21wb25lbnRIDogBARI7Cg5jbGFzc2lmaWNhdGlvbhgaIAEoCzIeLndvcmxkLkNsYXNzaWZpY2F0aW9uQ29tcG9uZW50SA+IAQESNQoLdHJhbnNwb25kZXIYGyABKAsyGy53b3JsZC5UcmFuc3BvbmRlckNvbXBvbmVudEgQiAEBEjsKDmFkbWluaXN0cmF0aXZlGBwgASgLMh4ud29ybGQuQWRtaW5pc3RyYXRpdmVDb21wb25lbnRIEYgBARI1CgtvcmllbnRhdGlvbhgeIAEoCzIbLndvcmxkLk9yaWVudGF0aW9uQ29tcG9uZW50SBKIAQESMwoKbmF2aWdhdGlvbhgiIAEoCzIaLndvcmxkLk5hdmlnYXRpb25Db21wb25lbnRIE4gBARIpCgVwb3dlchghIAEoCzIVLndvcmxkLlBvd2VyQ29tcG9uZW50SBSIAQESLQoHY2FwdHVyZRgjIAEoCzIXLndvcmxkLkNhcHR1cmVDb21wb25lbnRIFYgBARInCgRnbnNzGCogASgLMhQud29ybGQuR25zc0NvbXBvbmVudEgWiAEBEisKBmRldmljZRgyIAEoCzIWLndvcmxkLkRldmljZUNvbXBvbmVudEgXiAEBEicKBGxpbmsYICABKAsyFC53b3JsZC5MaW5rQ29tcG9uZW50SBiIAQESJwoEcG9zZRgmIAEoCzIULndvcmxkLlBvc2VDb21wb25lbnRIGYgBARI0Cgt0YXJnZXRfcG9zZRg+IAEoCzIaLndvcmxkLlRhcmdldFBvc2VDb21wb25lbnRIGogBARI0Cgtsb2NhbF9zaGFwZRgdIAEoCzIaLndvcmxkLkxvY2FsU2hhcGVDb21wb25lbnRIG4gBARIrCgZtZXRyaWMYJCABKAsyFi53b3JsZC5NZXRyaWNDb21wb25lbnRIHIgBARIyCgZjb25maWcYMyABKAsyHS53b3JsZC5Db25maWd1cmF0aW9uQ29tcG9uZW50SB2IAQESNwoMY29uZmlndXJhYmxlGDQgASgLMhwud29ybGQuQ29uZmlndXJhYmxlQ29tcG9uZW50SB6IAQESLwoIdGFza2FibGUYFyABKAsyGC53b3JsZC5UYXNrYWJsZUNvbXBvbmVudEgfiAEBEjoKDnRhc2tfZXhlY3V0aW9uGCkgASgLMh0ud29ybGQuVGFza0V4ZWN1dGlvbkNvbXBvbmVudEggiAEBEi0KB21pc3Npb24YHyABKAsyFy53b3JsZC5NaXNzaW9uQ29tcG9uZW50SCGIAQESKwoGc2Vuc29yGCUgASgLMhYud29ybGQuU2Vuc29yQ29tcG9uZW50SCKIAQESOQoNaW50ZXJhY3Rpdml0eRg8IAEoCzIdLndvcmxkLkludGVyYWN0aXZpdHlDb21wb25lbnRII4gBARIvCghhcnRpZmFjdBg9IAEoCzIYLndvcmxkLkFydGlmYWN0Q29tcG9uZW50SCSIAQESJwoEY2hhdBgnIAEoCzIULndvcmxkLkNoYXRDb21wb25lbnRIJYgBARIvCghhc3NlbWJseRgoIAEoCzIYLndvcmxkLkFzc2VtYmx5Q29tcG9uZW50SCaIAQESMAoJbWFwX2xheWVyGD8gASgLMhgud29ybGQuTWFwTGF5ZXJDb21wb25lbnRIJ4gBAUIICgZfbGFiZWxCDQoLX2NvbnRyb2xsZXJCCwoJX2xpZmV0aW1lQgsKCV9wcmlvcml0eUIICgZfbGVhc2VCCgoIX3JvdXRpbmdCBgoEX2dlb0IJCgdfc3ltYm9sQgkKB19jYW1lcmFCDAoKX2RldGVjdGlvbkIKCghfYmVhcmluZ0IICgZfdHJhY2tCCgoIX2xvY2F0b3JCDQoLX2tpbmVtYXRpY3NCCAoGX3NoYXBlQhEKD19jbGFzc2lmaWNhdGlvbkIOCgxfdHJhbnNwb25kZXJCEQoPX2FkbWluaXN0cmF0aXZlQg4KDF9vcmllbnRhdGlvbkINCgtfbmF2aWdhdGlvbkIICgZfcG93ZXJCCgoIX2NhcHR1cmVCBwoFX2duc3NCCQoHX2RldmljZUIHCgVfbGlua0IHCgVfcG9zZUIOCgxfdGFyZ2V0X3Bvc2VCDgoMX2xvY2FsX3NoYXBlQgkKB19tZXRyaWNCCQoHX2NvbmZpZ0IPCg1fY29uZmlndXJhYmxlQgsKCV90YXNrYWJsZUIRCg9fdGFza19leGVjdXRpb25CCgoIX21pc3Npb25CCQoHX3NlbnNvckIQCg5faW50ZXJhY3Rpdml0eUILCglfYXJ0aWZhY3RCBwoFX2NoYXRCCwoJX2Fzc2VtYmx5QgwKCl9tYXBfbGF5ZXJKBAgIEAlKBAgJEApKBAgKEAsiYAoKQ29udHJvbGxlchIPCgJpZBgBIAEoCUgAiAEBEhEKBG5vZGUYAiABKAlIAYgBARITCgZvcmlnaW4YAyABKAlIAogBAUIFCgNfaWRCBwoFX25vZGVCCQoHX29yaWdpbiJZCgVMZWFzZRISCgpjb250cm9sbGVyGAEgASgJEjAKB2V4cGlyZXMYAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSACIAQFCCgoIX2V4cGlyZXMirwIKCExpZmV0aW1lEi0KBGZyb20YASABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSACIAQESLgoFdW50aWwYAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAGIAQESLgoFZnJlc2gYAyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAKIAQESMwoKY29tcG9uZW50cxgEIAMoCzIfLndvcmxkLkxpZmV0aW1lLkNvbXBvbmVudHNFbnRyeRpCCg9Db21wb25lbnRzRW50cnkSCwoDa2V5GAEgASgFEh4KBXZhbHVlGAIgASgLMg8ud29ybGQuTGlmZXRpbWU6AjgBQgcKBV9mcm9tQggKBl91bnRpbEIICgZfZnJlc2giFwoHQ2hhbm5lbBIMCgRuYW1lGAEgASgJIisKB1JvdXRpbmcSIAoIY2hhbm5lbHMYASADKAsyDi53b3JsZC5DaGFubmVsIp8BChNHZW9TcGF0aWFsQ29tcG9uZW50EhEKCWxvbmdpdHVkZRgBIAEoARIQCghsYXRpdHVkZRgCIAEoARIVCghhbHRpdHVkZRgDIAEoAUgAiAEBEjAKCmNvdmFyaWFuY2UYBCABKAsyFy53b3JsZC5Db3ZhcmlhbmNlTWF0cml4SAGIAQFCCwoJX2FsdGl0dWRlQg0KC19jb3ZhcmlhbmNlIoUCCg1HbnNzQ29tcG9uZW50EikKCGZpeF90eXBlGAEgASgOMhIud29ybGQuR25zc0ZpeFR5cGVIAIgBARIfChJzYXRlbGxpdGVzX3Zpc2libGUYAiABKA1IAYgBARIcCg9zYXRlbGxpdGVzX3VzZWQYAyABKA1IAogBARIRCgRoZG9wGAQgASgCSAOIAQESEQoEdmRvcBgFIAEoAkgEiAEBEhEKBHBkb3AYBiABKAJIBYgBAUILCglfZml4X3R5cGVCFQoTX3NhdGVsbGl0ZXNfdmlzaWJsZUISChBfc2F0ZWxsaXRlc191c2VkQgcKBV9oZG9wQgcKBV92ZG9wQgcKBV9wZG9wIiYKD1N5bWJvbENvbXBvbmVudBITCgttaWxTdGQyNTI1QxgBIAEoCSJiChZJbnRlcmFjdGl2aXR5Q29tcG9uZW50EhEKBGljb24YASABKAlIAIgBARIaCg1yZWZlcmVuY2VfdXJsGAMgASgJSAGIAQFCBwoFX2ljb25CEAoOX3JlZmVyZW5jZV91cmwiygEKC01lZGlhU3RyZWFtEg0KBWxhYmVsGAEgASgJEgsKA3VybBgCIAEoCRIsCghwcm90b2NvbBgDIAEoDjIaLndvcmxkLk1lZGlhU3RyZWFtUHJvdG9jb2wSJAoEcm9sZRgJIAEoDjIWLndvcmxkLk1lZGlhU3RyZWFtUm9sZRINCgVjb2RlYxgKIAEoCRISCgV3aWR0aBgLIAEoBUgAiAEBEhMKBmhlaWdodBgMIAEoBUgBiAEBQggKBl93aWR0aEIJCgdfaGVpZ2h0Io4CCg9DYW1lcmFDb21wb25lbnQSIwoHc3RyZWFtcxgBIAMoCzISLndvcmxkLk1lZGlhU3RyZWFtEhgKC2ZvY2FsX3BvaW50GAIgASgJSACIAQESEAoDZm92GAMgASgBSAGIAQESFgoJcmFuZ2VfbWluGAQgASgBSAKIAQESFgoJcmFuZ2VfbWF4GAUgASgBSAOIAQESFQoIZm92X3dpZGUYBiABKAFIBIgBARIVCghmb3ZfdGVsZRgHIAEoAUgFiAEBQg4KDF9mb2NhbF9wb2ludEIGCgRfZm92QgwKCl9yYW5nZV9taW5CDAoKX3JhbmdlX21heEILCglfZm92X3dpZGVCCwoJX2Zvdl90ZWxlIh8KEEFydGlmYWN0TG9jYXRpb24SCwoDdXJsGAEgASgJIqgBChFBcnRpZmFjdENvbXBvbmVudBIKCgJpZBgBIAEoCRIUCgxjb250ZW50X3R5cGUYAiABKAkSKQoIbG9jYXRpb24YAyADKAsyFy53b3JsZC5BcnRpZmFjdExvY2F0aW9uEhcKCnNpemVfYnl0ZXMYBCABKANIAIgBARITCgZzaGEyNTYYBSABKAlIAYgBAUINCgtfc2l6ZV9ieXRlc0IJCgdfc2hhMjU2ItIBChJEZXRlY3Rpb25Db21wb25lbnQSHQoQZGV0ZWN0b3JFbnRpdHlJZBgBIAEoCUgAiAEBEhsKDmNsYXNzaWZpY2F0aW9uGAIgASgJSAGIAQESNQoMbGFzdE1lYXN1cmVkGAMgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgCiAEBEhAKCGV2aWRlbmNlGAQgAygJQhMKEV9kZXRlY3RvckVudGl0eUlkQhEKD19jbGFzc2lmaWNhdGlvbkIPCg1fbGFzdE1lYXN1cmVkIloKEEJlYXJpbmdDb21wb25lbnQSFAoHYXppbXV0aBgBIAEoAUgAiAEBEhYKCWVsZXZhdGlvbhgCIAEoAUgBiAEBQgoKCF9hemltdXRoQgwKCl9lbGV2YXRpb24iIwoPU2Vuc29yQ29tcG9uZW50EhAKCGNvdmVyYWdlGAIgAygJIjgKClF1YXRlcm5pb24SCQoBeBgBIAEoARIJCgF5GAIgASgBEgkKAXoYAyABKAESCQoBdxgEIAEoASKuAQoQQ292YXJpYW5jZU1hdHJpeBIQCgNteHgYASABKAFIAIgBARIQCgNteHkYAiABKAFIAYgBARIQCgNteHoYAyABKAFIAogBARIQCgNteXkYBCABKAFIA4gBARIQCgNteXoYBSABKAFIBIgBARIQCgNtenoYBiABKAFIBYgBAUIGCgRfbXh4QgYKBF9teHlCBgoEX214ekIGCgRfbXl5QgYKBF9teXpCBgoEX216eiLMAQoPQ2FydGVzaWFuT2Zmc2V0Eg4KBmVhc3RfbRgBIAEoARIPCgdub3J0aF9tGAIgASgBEhEKBHVwX20YAyABKAFIAIgBARIwCgpjb3ZhcmlhbmNlGAQgASgLMhcud29ybGQuQ292YXJpYW5jZU1hdHJpeEgBiAEBEisKC29yaWVudGF0aW9uGAUgASgLMhEud29ybGQuUXVhdGVybmlvbkgCiAEBQgcKBV91cF9tQg0KC19jb3ZhcmlhbmNlQg4KDF9vcmllbnRhdGlvbiKCAwoLUG9sYXJPZmZzZXQSDwoHYXppbXV0aBgBIAEoARIWCgllbGV2YXRpb24YAiABKAFIAIgBARISCgVyYW5nZRgDIAEoAUgBiAEBEjQKCmNvdmFyaWFuY2UYBCABKAsyFy53b3JsZC5Db3ZhcmlhbmNlTWF0cml4QgIYAUgCiAEBEh4KEWF6aW11dGhfZXJyb3JfZGVnGAogASgBSAOIAQESIAoTZWxldmF0aW9uX2Vycm9yX2RlZxgLIAEoAUgEiAEBEhoKDXJhbmdlX2Vycm9yX20YDCABKAFIBYgBARIrCgtvcmllbnRhdGlvbhgFIAEoCzIRLndvcmxkLlF1YXRlcm5pb25IBogBAUIMCgpfZWxldmF0aW9uQggKBl9yYW5nZUINCgtfY292YXJpYW5jZUIUChJfYXppbXV0aF9lcnJvcl9kZWdCFgoUX2VsZXZhdGlvbl9lcnJvcl9kZWdCEAoOX3JhbmdlX2Vycm9yX21CDgoMX29yaWVudGF0aW9uInsKDVBvc2VDb21wb25lbnQSDgoGcGFyZW50GAEgASgJEisKCWNhcnRlc2lhbhgCIAEoCzIWLndvcmxkLkNhcnRlc2lhbk9mZnNldEgAEiMKBXBvbGFyGAMgASgLMhIud29ybGQuUG9sYXJPZmZzZXRIAEIICgZvZmZzZXQicQoTVGFyZ2V0UG9zZUNvbXBvbmVudBIrCgljYXJ0ZXNpYW4YASABKAsyFi53b3JsZC5DYXJ0ZXNpYW5PZmZzZXRIABIjCgVwb2xhchgCIAEoCzISLndvcmxkLlBvbGFyT2Zmc2V0SABCCAoGb2Zmc2V0IkoKD0FuZ3VsYXJWZWxvY2l0eRIRCglyb2xsX3JhdGUYASABKAESEgoKcGl0Y2hfcmF0ZRgCIAEoARIQCgh5YXdfcmF0ZRgDIAEoASJ/ChRPcmllbnRhdGlvbkNvbXBvbmVudBImCgtvcmllbnRhdGlvbhgBIAEoCzIRLndvcmxkLlF1YXRlcm5pb24SMAoKY292YXJpYW5jZRgCIAEoCzIXLndvcmxkLkNvdmFyaWFuY2VNYXRyaXhIAIgBAUINCgtfY292YXJpYW5jZSKQAQoOVHJhY2tDb21wb25lbnQSFAoHdHJhY2tlchgBIAEoCUgAiAEBEhQKB2hpc3RvcnkYAiABKAlIAYgBARIXCgpwcmVkaWN0aW9uGAMgASgJSAKIAQESEgoKZGV0ZWN0aW9ucxgEIAMoCUIKCghfdHJhY2tlckIKCghfaGlzdG9yeUINCgtfcHJlZGljdGlvbiIrChBMb2NhdG9yQ29tcG9uZW50EhcKD2xvY2F0ZWRFbnRpdHlJZBgBIAEoCSI1Cg9UYXNrYWJsZUNvbnRleHQSFQoIZW50aXR5SWQYASABKAlIAIgBAUILCglfZW50aXR5SWQiNgoQVGFza2FibGVBc3NpZ25lZRIVCghlbnRpdHlJZBgBIAEoCUgAiAEBQgsKCV9lbnRpdHlJZCKjAQoOVGFza2FibGVUYXJnZXQSKAoGZmlsdGVyGAEgASgLMhMud29ybGQuRW50aXR5RmlsdGVySACIAQESDgoGd2l0aGluGAIgAygJEhgKC21heF90YXJnZXRzGAMgASgNSAGIAQESFQoIcG9zaXRpb24YBCABKAhIAogBAUIJCgdfZmlsdGVyQg4KDF9tYXhfdGFyZ2V0c0ILCglfcG9zaXRpb24iwgMKEVRhc2thYmxlQ29tcG9uZW50EhUKCHByaW9yaXR5GAEgASgNSACIAQESEgoFbGFiZWwYAiABKAlIAYgBARInCgdjb250ZXh0GAMgAygLMhYud29ybGQuVGFza2FibGVDb250ZXh0EikKCGFzc2lnbmVlGAQgAygLMhcud29ybGQuVGFza2FibGVBc3NpZ25lZRInCgZzY2hlbWEYBSABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EiEKBG1vZGUYBiABKA4yEy53b3JsZC5UYXNrYWJsZU1vZGUSKgoGdGFyZ2V0GAcgASgLMhUud29ybGQuVGFza2FibGVUYXJnZXRIAogBARIRCgRpY29uGAggASgJSAOIAQESEwoGZWZmZWN0GAkgASgJSASIAQESFQoIZ3JvdXBpbmcYCiABKAlIBYgBARIeChFncm91cGluZ19wcmlvcml0eRgLIAEoDUgGiAEBQgsKCV9wcmlvcml0eUIICgZfbGFiZWxCCQoHX3RhcmdldEIHCgVfaWNvbkIJCgdfZWZmZWN0QgsKCV9ncm91cGluZ0IUChJfZ3JvdXBpbmdfcHJpb3JpdHkiWgoTVGFza0V4ZWN1dGlvblRhcmdldBIOCgZlbnRpdHkYASADKAkSJgoIcG9zaXRpb24YAiABKAsyDy53b3JsZC5HZW9tZXRyeUgAiAEBQgsKCV9wb3NpdGlvbiKRAgoWVGFza0V4ZWN1dGlvbkNvbXBvbmVudBIMCgR0YXNrGAEgASgJEjAKCnBhcmFtZXRlcnMYAiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SACIAQESKAoFc3RhdGUYAyABKA4yGS53b3JsZC5UYXNrRXhlY3V0aW9uU3RhdGUSEwoGcmVhc29uGAQgASgJSAGIAQESFQoIcHJpb3JpdHkYBSABKA1IAogBARIvCgZ0YXJnZXQYBiABKAsyGi53b3JsZC5UYXNrRXhlY3V0aW9uVGFyZ2V0SAOIAQFCDQoLX3BhcmFtZXRlcnNCCQoHX3JlYXNvbkILCglfcHJpb3JpdHlCCQoHX3RhcmdldCKiAQoNS2luZW1hdGljc0VudRIRCgRlYXN0GAEgASgBSACIAQESEgoFbm9ydGgYAiABKAFIAYgBARIPCgJ1cBgDIAEoAUgCiAEBEjAKCmNvdmFyaWFuY2UYBCABKAsyFy53b3JsZC5Db3ZhcmlhbmNlTWF0cml4SAOIAQFCBwoFX2Vhc3RCCAoGX25vcnRoQgUKA191cEINCgtfY292YXJpYW5jZSLvAQoTS2luZW1hdGljc0NvbXBvbmVudBIuCgt2ZWxvY2l0eUVudRgBIAEoCzIULndvcmxkLktpbmVtYXRpY3NFbnVIAIgBARIyCg9hY2NlbGVyYXRpb25FbnUYAiABKAsyFC53b3JsZC5LaW5lbWF0aWNzRW51SAGIAQESOAoTYW5ndWxhclZlbG9jaXR5Qm9keRgDIAEoCzIWLndvcmxkLkFuZ3VsYXJWZWxvY2l0eUgCiAEBQg4KDF92ZWxvY2l0eUVudUISChBfYWNjZWxlcmF0aW9uRW51QhYKFF9hbmd1bGFyVmVsb2NpdHlCb2R5IkIKCEdlb21ldHJ5Eg8KA3drYhgBIAEoDEICGAESJQoGcGxhbmFyGAIgASgLMhUud29ybGQuUGxhbmFyR2VvbWV0cnkiSAoRR2VvU2hhcGVDb21wb25lbnQSJgoIZ2VvbWV0cnkYASABKAsyDy53b3JsZC5HZW9tZXRyeUgAiAEBQgsKCV9nZW9tZXRyeSJkChNMb2NhbFNoYXBlQ29tcG9uZW50EhMKC3JlbGF0aXZlX3RvGAIgASgJEisKCGdlb21ldHJ5GAEgASgLMhQud29ybGQuTG9jYWxHZW9tZXRyeUgAiAEBQgsKCV9nZW9tZXRyeSKoAQoXQ2xhc3NpZmljYXRpb25Db21wb25lbnQSPAoJZGltZW5zaW9uGAEgASgOMiQud29ybGQuQ2xhc3NpZmljYXRpb25CYXR0bGVEaW1lbnNpb25IAIgBARI0CghpZGVudGl0eRgCIAEoDjIdLndvcmxkLkNsYXNzaWZpY2F0aW9uSWRlbnRpdHlIAYgBAUIMCgpfZGltZW5zaW9uQgsKCV9pZGVudGl0eSKUAQoOVHJhbnNwb25kZXJBSVMSEQoEbW1zaRgBIAEoDUgAiAEBEhAKA2ltbxgCIAEoDUgBiAEBEhUKCGNhbGxzaWduGAMgASgJSAKIAQESGAoLdmVzc2VsX25hbWUYBCABKAlIA4gBAUIHCgVfbW1zaUIGCgRfaW1vQgsKCV9jYWxsc2lnbkIOCgxfdmVzc2VsX25hbWUiYwoPVHJhbnNwb25kZXJBRFNCEhkKDGljYW9fYWRkcmVzcxgBIAEoDUgAiAEBEhYKCWZsaWdodF9pZBgCIAEoCUgBiAEBQg8KDV9pY2FvX2FkZHJlc3NCDAoKX2ZsaWdodF9pZCJ7ChRUcmFuc3BvbmRlckNvbXBvbmVudBInCgNhaXMYASABKAsyFS53b3JsZC5UcmFuc3BvbmRlckFJU0gAiAEBEikKBGFkc2IYAiABKAsyFi53b3JsZC5UcmFuc3BvbmRlckFEU0JIAYgBAUIGCgRfYWlzQgcKBV9hZHNiIqEDChdBZG1pbmlzdHJhdGl2ZUNvbXBvbmVudBIPCgJpZBgBIAEoCUgAiAEBEhEKBGZsYWcYAiABKAlIAYgBARISCgVvd25lchgDIAEoCUgCiAEBEhkKDG1hbnVmYWN0dXJlchgEIAEoCUgDiAEBEhIKBW1vZGVsGAUgASgJSASIAQESFwoKeWVhcl9idWlsdBgGIAEoDUgFiAEBEhUKCGxlbmd0aF9tGAcgASgCSAaIAQESFAoHd2lkdGhfbRgKIAEoAkgHiAEBEhUKCGhlaWdodF9tGAsgASgCSAiIAQESFwoKdG9ubmFnZV9ndBgIIAEoAkgJiAEBEhwKD2VuZ2luZV9wb3dlcl9rdxgJIAEoAkgKiAEBQgUKA19pZEIHCgVfZmxhZ0IICgZfb3duZXJCDwoNX21hbnVmYWN0dXJlckIICgZfbW9kZWxCDQoLX3llYXJfYnVpbHRCCwoJX2xlbmd0aF9tQgoKCF93aWR0aF9tQgsKCV9oZWlnaHRfbUINCgtfdG9ubmFnZV9ndEISChBfZW5naW5lX3Bvd2VyX2t3IvABChNOYXZpZ2F0aW9uQ29tcG9uZW50EigKBG1vZGUYASABKA4yFS53b3JsZC5OYXZpZ2F0aW9uTW9kZUgAiAEBEhIKBWFybWVkGAIgASgISAGIAQESFgoJZW1lcmdlbmN5GAMgASgISAKIAQESHQoQd2F5cG9pbnRfY3VycmVudBgEIAEoDUgDiAEBEhsKDndheXBvaW50X3RvdGFsGAUgASgNSASIAQFCBwoFX21vZGVCCAoGX2FybWVkQgwKCl9lbWVyZ2VuY3lCEwoRX3dheXBvaW50X2N1cnJlbnRCEQoPX3dheXBvaW50X3RvdGFsIq0BChBNaXNzaW9uQ29tcG9uZW50Eg8KB21lbWJlcnMYASADKAkSGAoLZGVzY3JpcHRpb24YAiABKAlIAIgBARIYCgtkZXN0aW5hdGlvbhgDIAEoCUgBiAEBEiwKA2V0YRgEIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAogBAUIOCgxfZGVzY3JpcHRpb25CDgoMX2Rlc3RpbmF0aW9uQgYKBF9ldGEirAQKDUxpbmtDb21wb25lbnQSJgoGc3RhdHVzGAEgASgOMhEud29ybGQuTGlua1N0YXR1c0gAiAEBEhUKCHJzc2lfZGJtGAIgASgRSAGIAQESEwoGc25yX2RiGAMgASgRSAKIAQESEAoDdmlhGAUgASgJSAOIAQESHAoPbGFzdF9sYXRlbmN5X21zGAYgASgNSASIAQESGwoOYXZnX2xhdGVuY3lfbXMYByABKA1IBYgBARIyCglsYXN0X3NlZW4YCCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAaIAQESIQoUbGlua19xdWFsaXR5X3BlcmNlbnQYCSABKA1IB4gBARIYCgt0eF9wb3dlcl9tdxgKIAEoDUgIiAEBEhsKDmFjdGl2ZV9hbnRlbm5hGAsgASgNSAmIAQESFAoHcmZfbW9kZRgMIAEoCUgKiAEBEhsKDnBhY2tldF9yYXRlX2h6GA0gASgNSAuIAQFCCQoHX3N0YXR1c0ILCglfcnNzaV9kYm1CCQoHX3Nucl9kYkIGCgRfdmlhQhIKEF9sYXN0X2xhdGVuY3lfbXNCEQoPX2F2Z19sYXRlbmN5X21zQgwKCl9sYXN0X3NlZW5CFwoVX2xpbmtfcXVhbGl0eV9wZXJjZW50Qg4KDF90eF9wb3dlcl9td0IRCg9fYWN0aXZlX2FudGVubmFCCgoIX3JmX21vZGVCEQoPX3BhY2tldF9yYXRlX2h6Iv0BChBDYXB0dXJlQ29tcG9uZW50EhQKB3BheWxvYWQYASABKAxIAIgBARIRCgRwb3J0GAIgASgNSAGIAQESGQoMY29udGVudF90eXBlGAMgASgJSAKIAQESGAoLY2FwdHVyZWRfYnkYBCABKAlIA4gBARI0CgtjYXB0dXJlZF9hdBgFIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIBIgBARIPCgdjb250ZW50GAYgAygJQgoKCF9wYXlsb2FkQgcKBV9wb3J0Qg8KDV9jb250ZW50X3R5cGVCDgoMX2NhcHR1cmVkX2J5Qg4KDF9jYXB0dXJlZF9hdCKIAgoOUG93ZXJDb21wb25lbnQSJQoYYmF0dGVyeV9jaGFyZ2VfcmVtYWluaW5nGAEgASgCSACIAQESFAoHdm9sdGFnZRgCIAEoAkgBiAEBEh4KEXJlbWFpbmluZ19zZWNvbmRzGAMgASgNSAKIAQESFgoJY3VycmVudF9hGAQgASgCSAOIAQESHgoRY2FwYWNpdHlfdXNlZF9tYWgYBSABKAJIBIgBAUIbChlfYmF0dGVyeV9jaGFyZ2VfcmVtYWluaW5nQgoKCF92b2x0YWdlQhQKEl9yZW1haW5pbmdfc2Vjb25kc0IMCgpfY3VycmVudF9hQhQKEl9jYXBhY2l0eV91c2VkX21haCJGChFEZXZpY2VDbGFzc09wdGlvbhINCgVjbGFzcxgBIAEoCRINCgVsYWJlbBgCIAEoCRITCgtkZXNjcmlwdGlvbhgDIAEoCSLqAgoVQ29uZmlndXJhYmxlQ29tcG9uZW50EicKBnNjaGVtYRgBIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSJgoFdmFsdWUYAiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EicKBXN0YXRlGAMgASgOMhgud29ybGQuQ29uZmlndXJhYmxlU3RhdGUSEgoFZXJyb3IYBCABKAlIAIgBARISCgVsYWJlbBgFIAEoCUgBiAEBEhcKD2FwcGxpZWRfdmVyc2lvbhgGIAEoBBI6ChhzdXBwb3J0ZWRfZGV2aWNlX2NsYXNzZXMYByADKAsyGC53b3JsZC5EZXZpY2VDbGFzc09wdGlvbhI1CgxzY2hlZHVsZWRfYXQYCCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAKIAQFCCAoGX2Vycm9yQggKBl9sYWJlbEIPCg1fc2NoZWR1bGVkX2F0IpQFCg9EZXZpY2VDb21wb25lbnQSEwoGcGFyZW50GAEgASgJSACIAQESEwoLY29tcG9zaXRpb24YAiADKAkSHwoSdW5pcXVlX2hhcmR3YXJlX2lkGAQgASgJSAGIAQESIQoFc3RhdGUYBiABKA4yEi53b3JsZC5EZXZpY2VTdGF0ZRISCgVlcnJvchgHIAEoCUgCiAEBEhIKBWNsYXNzGAogASgJSAOIAQESFQoIY2F0ZWdvcnkYDSABKAlIBIgBARIkCgRub2RlGBQgASgLMhEud29ybGQuTm9kZURldmljZUgFiAEBEiIKA3VzYhgVIAEoCzIQLndvcmxkLlVzYkRldmljZUgGiAEBEiAKAmlwGBYgASgLMg8ud29ybGQuSXBEZXZpY2VIB4gBARIoCgZzZXJpYWwYFyABKAsyEy53b3JsZC5TZXJpYWxEZXZpY2VICIgBARIsCghldGhlcm5ldBgYIAEoCzIVLndvcmxkLkV0aGVybmV0RGV2aWNlSAmIAQESJgoFbHB3YW4YGSABKAsyEi53b3JsZC5MUFdBTkRldmljZUgKiAEBEjAKCm1lc2h0YXN0aWMYGiABKAsyFy53b3JsZC5NZXNodGFzdGljRGV2aWNlSAuIAQESIgoDYmxlGBsgASgLMhAud29ybGQuQmxlRGV2aWNlSAyIAQFCCQoHX3BhcmVudEIVChNfdW5pcXVlX2hhcmR3YXJlX2lkQggKBl9lcnJvckIICgZfY2xhc3NCCwoJX2NhdGVnb3J5QgcKBV9ub2RlQgYKBF91c2JCBQoDX2lwQgkKB19zZXJpYWxCCwoJX2V0aGVybmV0QggKBl9scHdhbkINCgtfbWVzaHRhc3RpY0IGCgRfYmxlIm0KCk1pc3Npb25LaXQSLwoHbGF5b3V0cxgBIAMoCzIeLndvcmxkLk1pc3Npb25LaXQuTGF5b3V0c0VudHJ5Gi4KDExheW91dHNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIt0CCgpOb2RlRGV2aWNlEhUKCGhvc3RuYW1lGAEgASgJSACIAQESDwoCb3MYAiABKAlIAYgBARIRCgRhcmNoGAMgASgJSAKIAQESFAoHbnVtX2NwdRgEIAEoDUgDiAEBEhcKCm9zX3ZlcnNpb24YBSABKAlIBIgBARIbCg5oeWRyaXNfdmVyc2lvbhgGIAEoCUgFiAEBEiQKF2h5ZHJpc191cGRhdGVfYXZhaWxhYmxlGAcgASgJSAaIAQESKwoLbWlzc2lvbl9raXQYCCABKAsyES53b3JsZC5NaXNzaW9uS2l0SAeIAQFCCwoJX2hvc3RuYW1lQgUKA19vc0IHCgVfYXJjaEIKCghfbnVtX2NwdUINCgtfb3NfdmVyc2lvbkIRCg9faHlkcmlzX3ZlcnNpb25CGgoYX2h5ZHJpc191cGRhdGVfYXZhaWxhYmxlQg4KDF9taXNzaW9uX2tpdCL5AgoJVXNiRGV2aWNlEhYKCXZlbmRvcl9pZBgBIAEoDUgAiAEBEhcKCnByb2R1Y3RfaWQYAiABKA1IAYgBARIZCgxkZXZpY2VfY2xhc3MYAyABKA1IAogBARIcCg9kZXZpY2Vfc3ViY2xhc3MYBCABKA1IA4gBARIcCg9kZXZpY2VfcHJvdG9jb2wYBSABKA1IBIgBARIeChFtYW51ZmFjdHVyZXJfbmFtZRgGIAEoCUgFiAEBEhkKDHByb2R1Y3RfbmFtZRgHIAEoCUgGiAEBEhoKDXNlcmlhbF9udW1iZXIYCCABKAlIB4gBAUIMCgpfdmVuZG9yX2lkQg0KC19wcm9kdWN0X2lkQg8KDV9kZXZpY2VfY2xhc3NCEgoQX2RldmljZV9zdWJjbGFzc0ISChBfZGV2aWNlX3Byb3RvY29sQhQKEl9tYW51ZmFjdHVyZXJfbmFtZUIPCg1fcHJvZHVjdF9uYW1lQhAKDl9zZXJpYWxfbnVtYmVyIkIKCElwRGV2aWNlEhEKBGhvc3QYASABKAlIAIgBARIRCgRwb3J0GAIgASgNSAGIAQFCBwoFX2hvc3RCBwoFX3BvcnQiWgoORXRoZXJuZXREZXZpY2USGAoLbWFjX2FkZHJlc3MYASABKAlIAIgBARITCgZ2ZW5kb3IYAiABKAlIAYgBAUIOCgxfbWFjX2FkZHJlc3NCCQoHX3ZlbmRvciJQCgxTZXJpYWxEZXZpY2USEQoEcGF0aBgBIAEoCUgAiAEBEhYKCWJhdWRfcmF0ZRgCIAEoDUgBiAEBQgcKBV9wYXRoQgwKCl9iYXVkX3JhdGUi3AEKEE1lc2h0YXN0aWNEZXZpY2USFQoIbm9kZV9udW0YASABKA1IAIgBARIWCglsb25nX25hbWUYAiABKAlIAYgBARIXCgpzaG9ydF9uYW1lGAMgASgJSAKIAQESGwoOaGFyZHdhcmVfbW9kZWwYBCABKAlIA4gBARIXCgpwdWJsaWNfa2V5GAUgASgMSASIAQFCCwoJX25vZGVfbnVtQgwKCl9sb25nX25hbWVCDQoLX3Nob3J0X25hbWVCEQoPX2hhcmR3YXJlX21vZGVsQg0KC19wdWJsaWNfa2V5IkkKC0xQV0FORGV2aWNlEhAKA2V1aRgBIAEoCUgAiAEBEhQKB2FkZHJlc3MYAiABKAlIAYgBAUIGCgRfZXVpQgoKCF9hZGRyZXNzImAKCUJsZURldmljZRIUCgdhZGRyZXNzGAEgASgJSACIAQESEQoEbmFtZRgCIAEoCUgBiAEBEhUKDXNlcnZpY2VfdXVpZHMYBCADKAlCCgoIX2FkZHJlc3NCBwoFX25hbWUiUQoWQ29uZmlndXJhdGlvbkNvbXBvbmVudBImCgV2YWx1ZRgDIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSDwoHdmVyc2lvbhgFIAEoBCKgAQoNQ2hhdENvbXBvbmVudBITCgZzZW5kZXIYASABKAlIAIgBARIPCgJ0bxgDIAEoCUgBiAEBEg8KB21lc3NhZ2UYBCABKAkSFQoIcmVwbHlfdG8YBSABKAlIAogBARIVCghyZWFjdGlvbhgGIAEoCEgDiAEBQgkKB19zZW5kZXJCBQoDX3RvQgsKCV9yZXBseV90b0ILCglfcmVhY3Rpb24iRAoRQXNzZW1ibHlDb21wb25lbnQSEwoGcGFyZW50GAEgASgJSACIAQESDwoHb3V0bGluZRgCIAMoCUIJCgdfcGFyZW50IoUCChFNYXBMYXllckNvbXBvbmVudBIPCgd6X2luZGV4GAEgASgFEg8KB29wYWNpdHkYAiABKAISLgoFdGlsZXMYCiABKAsyHS53b3JsZC5NYXBMYXllckNvbXBvbmVudC5UaWxlSAASLwoFaW1hZ2UYCyABKAsyHi53b3JsZC5NYXBMYXllckNvbXBvbmVudC5JbWFnZUgAGhMKBFRpbGUSCwoDdXJsGAEgASgJGk4KBUltYWdlEgsKA3VybBgBIAEoCRIMCgR3ZXN0GAIgASgBEg0KBXNvdXRoGAMgASgBEgwKBGVhc3QYBCABKAESDQoFbm9ydGgYBSABKAFCCAoGc291cmNlItUECgxFbnRpdHlGaWx0ZXISDwoCaWQYASABKAlIAIgBARISCgVsYWJlbBgCIAEoCUgBiAEBEiIKA2dlbxgDIAEoCzIQLndvcmxkLkdlb0ZpbHRlckgCiAEBEiwKCHRhc2thYmxlGAQgASgLMhUud29ybGQuVGFza2FibGVGaWx0ZXJIA4gBARIRCgljb21wb25lbnQYBSADKA0SMAoKY29udHJvbGxlchgHIAEoCzIXLndvcmxkLkNvbnRyb2xsZXJGaWx0ZXJIBIgBARImCgV0cmFjaxgIIAEoCzISLndvcmxkLlRyYWNrRmlsdGVySAWIAQESKgoHbWlzc2lvbhgJIAEoCzIULndvcmxkLk1pc3Npb25GaWx0ZXJIBogBARIqCgdjaGFubmVsGAogASgLMhQud29ybGQuQ2hhbm5lbEZpbHRlckgHiAEBEigKBmRldmljZRgyIAEoCzITLndvcmxkLkRldmljZUZpbHRlckgIiAEBEi8KBmNvbmZpZxgzIAEoCzIaLndvcmxkLkNvbmZpZ3VyYXRpb25GaWx0ZXJICYgBARIfCgJvchhkIAMoCzITLndvcmxkLkVudGl0eUZpbHRlchIgCgNub3QYZSABKAsyEy53b3JsZC5FbnRpdHlGaWx0ZXJCBQoDX2lkQggKBl9sYWJlbEIGCgRfZ2VvQgsKCV90YXNrYWJsZUINCgtfY29udHJvbGxlckIICgZfdHJhY2tCCgoIX21pc3Npb25CCgoIX2NoYW5uZWxCCQoHX2RldmljZUIJCgdfY29uZmlnIioKEENvbnRyb2xsZXJGaWx0ZXISDwoCaWQYASABKAlIAIgBAUIFCgNfaWQiLwoLVHJhY2tGaWx0ZXISFAoHdHJhY2tlchgBIAEoCUgAiAEBQgoKCF90cmFja2VyIl0KDU1pc3Npb25GaWx0ZXISFwoKbWlzc2lvbl9pZBgBIAEoCUgAiAEBEhYKCW1lbWJlcl9pZBgCIAEoCUgBiAEBQg0KC19taXNzaW9uX2lkQgwKCl9tZW1iZXJfaWQihwEKDlRhc2thYmxlRmlsdGVyEiwKB2NvbnRleHQYASABKAsyFi53b3JsZC5UYXNrYWJsZUNvbnRleHRIAIgBARIuCghhc3NpZ25lZRgCIAEoCzIXLndvcmxkLlRhc2thYmxlQXNzaWduZWVIAYgBAUIKCghfY29udGV4dEILCglfYXNzaWduZWUiTgoJR2VvRmlsdGVyEiMKCGdlb21ldHJ5GAEgASgLMg8ud29ybGQuR2VvbWV0cnlIABIVCgtnZW9FbnRpdHlJZBgCIAEoCUgAQgUKA2dlbyL2AQoMRGV2aWNlRmlsdGVyEhMKBnBhcmVudBgBIAEoCUgAiAEBEh8KEnVuaXF1ZV9oYXJkd2FyZV9pZBgEIAEoCUgBiAEBEhkKDGRldmljZV9jbGFzcxgFIAEoCUgCiAEBEigKA2JsZRgGIAEoCzIWLndvcmxkLkJsZURldmljZUZpbHRlckgDiAEBEigKA3VzYhgHIAEoCzIWLndvcmxkLlVzYkRldmljZUZpbHRlckgEiAEBQgkKB19wYXJlbnRCFQoTX3VuaXF1ZV9oYXJkd2FyZV9pZEIPCg1fZGV2aWNlX2NsYXNzQgYKBF9ibGVCBgoEX3VzYiJmCg9CbGVEZXZpY2VGaWx0ZXISFAoHYWRkcmVzcxgBIAEoCUgAiAEBEhEKBG5hbWUYAiABKAlIAYgBARIVCg1zZXJ2aWNlX3V1aWRzGAQgAygJQgoKCF9hZGRyZXNzQgcKBV9uYW1lIv8CCg9Vc2JEZXZpY2VGaWx0ZXISFgoJdmVuZG9yX2lkGAEgASgNSACIAQESFwoKcHJvZHVjdF9pZBgCIAEoDUgBiAEBEhkKDGRldmljZV9jbGFzcxgDIAEoDUgCiAEBEhwKD2RldmljZV9zdWJjbGFzcxgEIAEoDUgDiAEBEhwKD2RldmljZV9wcm90b2NvbBgFIAEoDUgEiAEBEh4KEW1hbnVmYWN0dXJlcl9uYW1lGAYgASgJSAWIAQESGQoMcHJvZHVjdF9uYW1lGAcgASgJSAaIAQESGgoNc2VyaWFsX251bWJlchgIIAEoCUgHiAEBQgwKCl92ZW5kb3JfaWRCDQoLX3Byb2R1Y3RfaWRCDwoNX2RldmljZV9jbGFzc0ISChBfZGV2aWNlX3N1YmNsYXNzQhIKEF9kZXZpY2VfcHJvdG9jb2xCFAoSX21hbnVmYWN0dXJlcl9uYW1lQg8KDV9wcm9kdWN0X25hbWVCEAoOX3NlcmlhbF9udW1iZXIiFQoTQ29uZmlndXJhdGlvbkZpbHRlciIdCg1DaGFubmVsRmlsdGVyEgwKBG5hbWUYASABKAkikwEKClNvcnRPcHRpb24SHwoFZmllbGQYASABKA4yEC53b3JsZC5Tb3J0RmllbGQSEgoKZGVzY2VuZGluZxgCIAEoCBITCgltZXRyaWNfaWQYFCABKA1IABIoCgttZXRyaWNfa2luZBgVIAEoDjIRLndvcmxkLk1ldHJpY0tpbmRIAEIRCg9tZXRyaWNfc2VsZWN0b3IitAEKDVdhdGNoQmVoYXZpb3ISGAoLbWF4X3JhdGVfaHoYASABKAJIAIgBARIqCgxtaW5fcHJpb3JpdHkYAyABKA4yDy53b3JsZC5Qcmlvcml0eUgBiAEBEiIKFWtlZXBhbGl2ZV9pbnRlcnZhbF9tcxgEIAEoDUgCiAEBQg4KDF9tYXhfcmF0ZV9oekIPCg1fbWluX3ByaW9yaXR5QhgKFl9rZWVwYWxpdmVfaW50ZXJ2YWxfbXMinQEKE0xpc3RFbnRpdGllc1JlcXVlc3QSIwoGZmlsdGVyGAIgASgLMhMud29ybGQuRW50aXR5RmlsdGVyEh8KBHNvcnQYAyADKAsyES53b3JsZC5Tb3J0T3B0aW9uEiwKCWJlaGF2aW91chgEIAEoCzIULndvcmxkLldhdGNoQmVoYXZpb3JIAIgBAUIMCgpfYmVoYXZpb3VySgQIARACIjcKFExpc3RFbnRpdGllc1Jlc3BvbnNlEh8KCGVudGl0aWVzGAEgAygLMg0ud29ybGQuRW50aXR5IloKE0VudGl0eUNoYW5nZVJlcXVlc3QSHgoHY2hhbmdlcxgBIAMoCzINLndvcmxkLkVudGl0eRIjCgxyZXBsYWNlbWVudHMYAiADKAsyDS53b3JsZC5FbnRpdHkiIQoTRXhwaXJlRW50aXR5UmVxdWVzdBIKCgJpZBgBIAEoCSIWChRFeHBpcmVFbnRpdHlSZXNwb25zZSI3ChRFbnRpdHlDaGFuZ2VSZXNwb25zZRIQCghhY2NlcHRlZBgBIAEoCBINCgVkZWJ1ZxgCIAEoCSJSChFFbnRpdHlDaGFuZ2VFdmVudBIdCgZlbnRpdHkYASABKAsyDS53b3JsZC5FbnRpdHkSHgoBdBgCIAEoDjITLndvcmxkLkVudGl0eUNoYW5nZSI9ChFFbnRpdHlDaGFuZ2VCYXRjaBIoCgZldmVudHMYASADKAsyGC53b3JsZC5FbnRpdHlDaGFuZ2VFdmVudCIeChBHZXRFbnRpdHlSZXF1ZXN0EgoKAmlkGAEgASgJIjIKEUdldEVudGl0eVJlc3BvbnNlEh0KBmVudGl0eRgBIAEoCzINLndvcmxkLkVudGl0eSIVChNHZXRMb2NhbE5vZGVSZXF1ZXN0IkYKFEdldExvY2FsTm9kZVJlc3BvbnNlEh0KBmVudGl0eRgBIAEoCzINLndvcmxkLkVudGl0eRIPCgdub2RlX2lkGAIgASgJIhEKD09ic2VydmVyUmVxdWVzdCJzCg1PYnNlcnZlclN0YXRlEhwKA2dlbxgBIAEoCzIPLndvcmxkLkdlb21ldHJ5EjQKC3ZpZXdIaXN0b3J5GAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgAiAEBQg4KDF92aWV3SGlzdG9yeSKCAQoOUnVuVGFza1JlcXVlc3QSEAoIZW50aXR5SWQYASABKAkSFQoIcHJpb3JpdHkYAiABKA1IAIgBARIvCgZ0YXJnZXQYBiABKAsyGi53b3JsZC5UYXNrRXhlY3V0aW9uVGFyZ2V0SAGIAQFCCwoJX3ByaW9yaXR5QgkKB190YXJnZXQigwEKD1J1blRhc2tSZXNwb25zZRITCgtleGVjdXRpb25JZBgBIAEoCRIhCgZzdGF0dXMYAiABKA4yES53b3JsZC5UYXNrU3RhdHVzEiAKE2h1bWFuUmVhZGFibGVSZWFzb24YAyABKAlIAIgBAUIWChRfaHVtYW5SZWFkYWJsZVJlYXNvbiI6ChBIYXJkUmVzZXRSZXF1ZXN0EhcKCm1pc3Npb25faWQYASABKAlIAIgBAUINCgtfbWlzc2lvbl9pZCITChFIYXJkUmVzZXRSZXNwb25zZSI5Cg9UaW1lU3luY1JlcXVlc3QSJgoCdDEYASABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wIooBChBUaW1lU3luY1Jlc3BvbnNlEiYKAnQxGAEgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBImCgJ0MhgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASJgoCdDMYAyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wKmIKCFByaW9yaXR5EhcKE1ByaW9yaXR5VW5zcGVjaWZpZWQQABITCg9Qcmlvcml0eVJvdXRpbmUQARIVChFQcmlvcml0eUltbWVkaWF0ZRACEhEKDVByaW9yaXR5Rmxhc2gQAyqPAQoLR25zc0ZpeFR5cGUSEwoPR25zc0ZpeFR5cGVOb25lEAASEQoNR25zc0ZpeFR5cGUyRBABEhEKDUduc3NGaXhUeXBlM0QQAhITCg9HbnNzRml4VHlwZURHUFMQAxIXChNHbnNzRml4VHlwZVJ0a0Zsb2F0EAQSFwoTR25zc0ZpeFR5cGVSdGtGaXhlZBAFKuwBChNNZWRpYVN0cmVhbVByb3RvY29sEiIKHk1lZGlhU3RyZWFtUHJvdG9jb2xVbnNwZWNpZmllZBAAEh0KGU1lZGlhU3RyZWFtUHJvdG9jb2xXZWJydGMQARIaChZNZWRpYVN0cmVhbVByb3RvY29sSGxzEAISHAoYTWVkaWFTdHJlYW1Qcm90b2NvbE1qcGVnEAMSHAoYTWVkaWFTdHJlYW1Qcm90b2NvbEltYWdlEAQSHQoZTWVkaWFTdHJlYW1Qcm90b2NvbElmcmFtZRAFEhsKF01lZGlhU3RyZWFtUHJvdG9jb2xSdHNwEAYqfwoPTWVkaWFTdHJlYW1Sb2xlEh4KGk1lZGlhU3RyZWFtUm9sZVVuc3BlY2lmaWVkEAASFwoTTWVkaWFTdHJlYW1Sb2xlTWFpbhABEhYKEk1lZGlhU3RyZWFtUm9sZVN1YhACEhsKF01lZGlhU3RyZWFtUm9sZVNuYXBzaG90EAMqegoMVGFza2FibGVNb2RlEhkKFVRhc2thYmxlTW9kZUV4Y2x1c2l2ZRAAEhkKFVRhc2thYmxlTW9kZVJlY29uY2lsZRABEhUKEVRhc2thYmxlTW9kZVNwYXduEAISHQoZVGFza2FibGVNb2RlUHJpb3JpdHlRdWV1ZRADKpEBChJUYXNrRXhlY3V0aW9uU3RhdGUSHQoZVGFza0V4ZWN1dGlvblN0YXRlUGVuZGluZxAAEh0KGVRhc2tFeGVjdXRpb25TdGF0ZVJ1bm5pbmcQARIfChtUYXNrRXhlY3V0aW9uU3RhdGVDb21wbGV0ZWQQAhIcChhUYXNrRXhlY3V0aW9uU3RhdGVGYWlsZWQQAyqMAgoWQ2xhc3NpZmljYXRpb25JZGVudGl0eRIhCh1DbGFzc2lmaWNhdGlvbklkZW50aXR5SW52YWxpZBAAEiEKHUNsYXNzaWZpY2F0aW9uSWRlbnRpdHlQZW5kaW5nEAESIQodQ2xhc3NpZmljYXRpb25JZGVudGl0eVVua25vd24QAhIgChxDbGFzc2lmaWNhdGlvbklkZW50aXR5RnJpZW5kEAMSIQodQ2xhc3NpZmljYXRpb25JZGVudGl0eU5ldXRyYWwQBBIhCh1DbGFzc2lmaWNhdGlvbklkZW50aXR5SG9zdGlsZRAFEiEKHUNsYXNzaWZpY2F0aW9uSWRlbnRpdHlTdXNwZWN0EAYqxAIKHUNsYXNzaWZpY2F0aW9uQmF0dGxlRGltZW5zaW9uEigKJENsYXNzaWZpY2F0aW9uQmF0dGxlRGltZW5zaW9uSW52YWxpZBAAEigKJENsYXNzaWZpY2F0aW9uQmF0dGxlRGltZW5zaW9uVW5rbm93bhABEiYKIkNsYXNzaWZpY2F0aW9uQmF0dGxlRGltZW5zaW9uU3BhY2UQAhIkCiBDbGFzc2lmaWNhdGlvbkJhdHRsZURpbWVuc2lvbkFpchADEicKI0NsYXNzaWZpY2F0aW9uQmF0dGxlRGltZW5zaW9uR3JvdW5kEAQSKwonQ2xhc3NpZmljYXRpb25CYXR0bGVEaW1lbnNpb25TZWFTdXJmYWNlEAUSKwonQ2xhc3NpZmljYXRpb25CYXR0bGVEaW1lbnNpb25TdWJzdXJmYWNlEAYq9gEKDk5hdmlnYXRpb25Nb2RlEh0KGU5hdmlnYXRpb25Nb2RlVW5zcGVjaWZpZWQQABIZChVOYXZpZ2F0aW9uTW9kZVBsYW5uZWQQARIcChhOYXZpZ2F0aW9uTW9kZVN0YXRpb25hcnkQAhIaChZOYXZpZ2F0aW9uTW9kZVVuZGVyd2F5EAMSHAoYTmF2aWdhdGlvbk1vZGVBdXRvbm9tb3VzEAQSGAoUTmF2aWdhdGlvbk1vZGVHdWlkZWQQBRIbChdOYXZpZ2F0aW9uTW9kZUxvaXRlcmluZxAGEhsKF05hdmlnYXRpb25Nb2RlUmV0dXJuaW5nEAcqbAoKTGlua1N0YXR1cxIZChVMaW5rU3RhdHVzVW5zcGVjaWZpZWQQABIXChNMaW5rU3RhdHVzQ29ubmVjdGVkEAESFgoSTGlua1N0YXR1c0RlZ3JhZGVkEAISEgoOTGlua1N0YXR1c0xvc3QQAypTCgtEZXZpY2VTdGF0ZRIWChJEZXZpY2VTdGF0ZVBlbmRpbmcQABIVChFEZXZpY2VTdGF0ZUFjdGl2ZRABEhUKEURldmljZVN0YXRlRmFpbGVkEAIqygEKEUNvbmZpZ3VyYWJsZVN0YXRlEh0KGUNvbmZpZ3VyYWJsZVN0YXRlSW5hY3RpdmUQABIdChlDb25maWd1cmFibGVTdGF0ZVN0YXJ0aW5nEAESGwoXQ29uZmlndXJhYmxlU3RhdGVBY3RpdmUQAhIbChdDb25maWd1cmFibGVTdGF0ZUZhaWxlZBADEh0KGUNvbmZpZ3VyYWJsZVN0YXRlQ29uZmxpY3QQBBIeChpDb25maWd1cmFibGVTdGF0ZVNjaGVkdWxlZBAFKp4ICglTb3J0RmllbGQSGAoUU29ydEZpZWxkVW5zcGVjaWZpZWQQABISCg5Tb3J0RmllbGRMYWJlbBABEhUKEVNvcnRGaWVsZFByaW9yaXR5EAISGQoVU29ydEZpZWxkTGlmZXRpbWVGcm9tEAoSGgoWU29ydEZpZWxkTGlmZXRpbWVVbnRpbBALEhoKFlNvcnRGaWVsZExpZmV0aW1lRnJlc2gQDBIYChRTb3J0RmllbGRHZW9MYXRpdHVkZRAUEhkKFVNvcnRGaWVsZEdlb0xvbmdpdHVkZRAVEhgKFFNvcnRGaWVsZEdlb0FsdGl0dWRlEBYSIwofU29ydEZpZWxkQ2xhc3NpZmljYXRpb25JZGVudGl0eRAeEiQKIFNvcnRGaWVsZENsYXNzaWZpY2F0aW9uRGltZW5zaW9uEB8SGwoXU29ydEZpZWxkQmVhcmluZ0F6aW11dGgQMhIdChlTb3J0RmllbGRCZWFyaW5nRWxldmF0aW9uEDMSIQodU29ydEZpZWxkQWRtaW5pc3RyYXRpdmVMZW5ndGgQRhIgChxTb3J0RmllbGRBZG1pbmlzdHJhdGl2ZVdpZHRoEEcSIQodU29ydEZpZWxkQWRtaW5pc3RyYXRpdmVIZWlnaHQQSBIiCh5Tb3J0RmllbGRBZG1pbmlzdHJhdGl2ZVRvbm5hZ2UQSRImCiJTb3J0RmllbGRBZG1pbmlzdHJhdGl2ZUVuZ2luZVBvd2VyEEoSJAogU29ydEZpZWxkQWRtaW5pc3RyYXRpdmVZZWFyQnVpbHQQSxIVChFTb3J0RmllbGRMaW5rUnNzaRBaEhQKEFNvcnRGaWVsZExpbmtTbnIQWxIcChhTb3J0RmllbGRMaW5rTGFzdExhdGVuY3kQXBIbChdTb3J0RmllbGRMaW5rQXZnTGF0ZW5jeRBdEhgKFFNvcnRGaWVsZExpbmtRdWFsaXR5EF4SGQoVU29ydEZpZWxkTGlua0xhc3RTZWVuEF8SGwoXU29ydEZpZWxkTGlua1BhY2tldFJhdGUQYBIfChtTb3J0RmllbGRQb3dlckJhdHRlcnlDaGFyZ2UQZBIZChVTb3J0RmllbGRQb3dlclZvbHRhZ2UQZRIiCh5Tb3J0RmllbGRQb3dlclJlbWFpbmluZ1NlY29uZHMQZhIZChVTb3J0RmllbGRQb3dlckN1cnJlbnQQZxIeChpTb3J0RmllbGRQb3dlckNhcGFjaXR5VXNlZBBoEhkKFFNvcnRGaWVsZERldmljZVN0YXRlEIIBEhkKFFNvcnRGaWVsZE1ldHJpY1ZhbHVlEJYBEh4KGVNvcnRGaWVsZE1ldHJpY01lYXN1cmVkQXQQlwESHgoZU29ydEZpZWxkTWV0cmljQWxlcnRMZXZlbBCYASp1CgxFbnRpdHlDaGFuZ2USFwoTRW50aXR5Q2hhbmdlSW52YWxpZBAAEhcKE0VudGl0eUNoYW5nZVVwZGF0ZWQQARIXChNFbnRpdHlDaGFuZ2VFeHBpcmVkEAISGgoWRW50aXR5Q2hhbmdlVW5vYnNlcnZlZBADKpIJCg9FbnRpdHlDb21wb25lbnQSHgoaRW50aXR5Q29tcG9uZW50VW5zcGVjaWZpZWQQABIYChRFbnRpdHlDb21wb25lbnRMYWJlbBACEh0KGUVudGl0eUNvbXBvbmVudENvbnRyb2xsZXIQAxIbChdFbnRpdHlDb21wb25lbnRMaWZldGltZRAEEhsKF0VudGl0eUNvbXBvbmVudFByaW9yaXR5EAUSGAoURW50aXR5Q29tcG9uZW50TGVhc2UQBhIaChZFbnRpdHlDb21wb25lbnRSb3V0aW5nEAcSFgoSRW50aXR5Q29tcG9uZW50R2VvEAsSGQoVRW50aXR5Q29tcG9uZW50U3ltYm9sEAwSGQoVRW50aXR5Q29tcG9uZW50Q2FtZXJhEA8SHAoYRW50aXR5Q29tcG9uZW50RGV0ZWN0aW9uEBASGgoWRW50aXR5Q29tcG9uZW50QmVhcmluZxAREhgKFEVudGl0eUNvbXBvbmVudFRyYWNrEBUSGgoWRW50aXR5Q29tcG9uZW50TG9jYXRvchAWEhsKF0VudGl0eUNvbXBvbmVudFRhc2thYmxlEBcSHQoZRW50aXR5Q29tcG9uZW50S2luZW1hdGljcxAYEhgKFEVudGl0eUNvbXBvbmVudFNoYXBlEBkSIQodRW50aXR5Q29tcG9uZW50Q2xhc3NpZmljYXRpb24QGhIeChpFbnRpdHlDb21wb25lbnRUcmFuc3BvbmRlchAbEiEKHUVudGl0eUNvbXBvbmVudEFkbWluaXN0cmF0aXZlEBwSHQoZRW50aXR5Q29tcG9uZW50TG9jYWxTaGFwZRAdEh4KGkVudGl0eUNvbXBvbmVudE9yaWVudGF0aW9uEB4SGgoWRW50aXR5Q29tcG9uZW50TWlzc2lvbhAfEhcKE0VudGl0eUNvbXBvbmVudExpbmsQIBIYChRFbnRpdHlDb21wb25lbnRQb3dlchAhEh0KGUVudGl0eUNvbXBvbmVudE5hdmlnYXRpb24QIhIaChZFbnRpdHlDb21wb25lbnRDYXB0dXJlECMSGQoVRW50aXR5Q29tcG9uZW50TWV0cmljECQSGQoVRW50aXR5Q29tcG9uZW50U2Vuc29yECUSFwoTRW50aXR5Q29tcG9uZW50UG9zZRAmEhcKE0VudGl0eUNvbXBvbmVudENoYXQQJxIgChxFbnRpdHlDb21wb25lbnRUYXNrRXhlY3V0aW9uECkSFwoTRW50aXR5Q29tcG9uZW50R25zcxAqEhkKFUVudGl0eUNvbXBvbmVudERldmljZRAyEhkKFUVudGl0eUNvbXBvbmVudENvbmZpZxAzEh8KG0VudGl0eUNvbXBvbmVudENvbmZpZ3VyYWJsZRA0EiAKHEVudGl0eUNvbXBvbmVudEludGVyYWN0aXZpdHkQPBIbChdFbnRpdHlDb21wb25lbnRBcnRpZmFjdBA9Eh0KGUVudGl0eUNvbXBvbmVudFRhcmdldFBvc2UQPhIbChdFbnRpdHlDb21wb25lbnRNYXBMYXllchA/KmkKClRhc2tTdGF0dXMSFQoRVGFza1N0YXR1c0ludmFsaWQQABIVChFUYXNrU3RhdHVzUnVubmluZxABEhcKE1Rhc2tTdGF0dXNDb21wbGV0ZWQQAhIUChBUYXNrU3RhdHVzRmFpbGVkEAMy6gQKDFdvcmxkU2VydmljZRJHCgxMaXN0RW50aXRpZXMSGi53b3JsZC5MaXN0RW50aXRpZXNSZXF1ZXN0Ghsud29ybGQuTGlzdEVudGl0aWVzUmVzcG9uc2USPgoJR2V0RW50aXR5Ehcud29ybGQuR2V0RW50aXR5UmVxdWVzdBoYLndvcmxkLkdldEVudGl0eVJlc3BvbnNlEkcKDVdhdGNoRW50aXRpZXMSGi53b3JsZC5MaXN0RW50aXRpZXNSZXF1ZXN0Ghgud29ybGQuRW50aXR5Q2hhbmdlRXZlbnQwARI/CgRQdXNoEhoud29ybGQuRW50aXR5Q2hhbmdlUmVxdWVzdBobLndvcmxkLkVudGl0eUNoYW5nZVJlc3BvbnNlEkcKDEV4cGlyZUVudGl0eRIaLndvcmxkLkV4cGlyZUVudGl0eVJlcXVlc3QaGy53b3JsZC5FeHBpcmVFbnRpdHlSZXNwb25zZRJHCgxHZXRMb2NhbE5vZGUSGi53b3JsZC5HZXRMb2NhbE5vZGVSZXF1ZXN0Ghsud29ybGQuR2V0TG9jYWxOb2RlUmVzcG9uc2USOAoHUnVuVGFzaxIVLndvcmxkLlJ1blRhc2tSZXF1ZXN0GhYud29ybGQuUnVuVGFza1Jlc3BvbnNlEj4KCUhhcmRSZXNldBIXLndvcmxkLkhhcmRSZXNldFJlcXVlc3QaGC53b3JsZC5IYXJkUmVzZXRSZXNwb25zZRI7CghUaW1lU3luYxIWLndvcmxkLlRpbWVTeW5jUmVxdWVzdBoXLndvcmxkLlRpbWVTeW5jUmVzcG9uc2VCIFoeZ2l0aHViLmNvbS9wcm9qZWN0cWFpL3Byb3RvL2dvYgZwcm90bzM", [file_geometry, file_google_protobuf_struct, file_google_protobuf_timestamp, file_metrics]);
16
+ fileDesc("Cgt3b3JsZC5wcm90bxIFd29ybGQijRMKBkVudGl0eRIKCgJpZBgBIAEoCRISCgVsYWJlbBgCIAEoCUgAiAEBEioKCmNvbnRyb2xsZXIYAyABKAsyES53b3JsZC5Db250cm9sbGVySAGIAQESJgoIbGlmZXRpbWUYBCABKAsyDy53b3JsZC5MaWZldGltZUgCiAEBEiYKCHByaW9yaXR5GAUgASgOMg8ud29ybGQuUHJpb3JpdHlIA4gBARIgCgVsZWFzZRgGIAEoCzIMLndvcmxkLkxlYXNlSASIAQESJAoHcm91dGluZxgHIAEoCzIOLndvcmxkLlJvdXRpbmdIBYgBARIsCgNnZW8YCyABKAsyGi53b3JsZC5HZW9TcGF0aWFsQ29tcG9uZW50SAaIAQESKwoGc3ltYm9sGAwgASgLMhYud29ybGQuU3ltYm9sQ29tcG9uZW50SAeIAQESKwoGY2FtZXJhGA8gASgLMhYud29ybGQuQ2FtZXJhQ29tcG9uZW50SAiIAQESMQoJZGV0ZWN0aW9uGBAgASgLMhkud29ybGQuRGV0ZWN0aW9uQ29tcG9uZW50SAmIAQESLQoHYmVhcmluZxgRIAEoCzIXLndvcmxkLkJlYXJpbmdDb21wb25lbnRICogBARIpCgV0cmFjaxgVIAEoCzIVLndvcmxkLlRyYWNrQ29tcG9uZW50SAuIAQESLQoHbG9jYXRvchgWIAEoCzIXLndvcmxkLkxvY2F0b3JDb21wb25lbnRIDIgBARIzCgpraW5lbWF0aWNzGBggASgLMhoud29ybGQuS2luZW1hdGljc0NvbXBvbmVudEgNiAEBEiwKBXNoYXBlGBkgASgLMhgud29ybGQuR2VvU2hhcGVDb21wb25lbnRIDogBARI7Cg5jbGFzc2lmaWNhdGlvbhgaIAEoCzIeLndvcmxkLkNsYXNzaWZpY2F0aW9uQ29tcG9uZW50SA+IAQESNQoLdHJhbnNwb25kZXIYGyABKAsyGy53b3JsZC5UcmFuc3BvbmRlckNvbXBvbmVudEgQiAEBEjsKDmFkbWluaXN0cmF0aXZlGBwgASgLMh4ud29ybGQuQWRtaW5pc3RyYXRpdmVDb21wb25lbnRIEYgBARI1CgtvcmllbnRhdGlvbhgeIAEoCzIbLndvcmxkLk9yaWVudGF0aW9uQ29tcG9uZW50SBKIAQESMwoKbmF2aWdhdGlvbhgiIAEoCzIaLndvcmxkLk5hdmlnYXRpb25Db21wb25lbnRIE4gBARIpCgVwb3dlchghIAEoCzIVLndvcmxkLlBvd2VyQ29tcG9uZW50SBSIAQESLQoHY2FwdHVyZRgjIAEoCzIXLndvcmxkLkNhcHR1cmVDb21wb25lbnRIFYgBARInCgRnbnNzGCogASgLMhQud29ybGQuR25zc0NvbXBvbmVudEgWiAEBEisKBmRldmljZRgyIAEoCzIWLndvcmxkLkRldmljZUNvbXBvbmVudEgXiAEBEicKBGxpbmsYICABKAsyFC53b3JsZC5MaW5rQ29tcG9uZW50SBiIAQESJwoEcG9zZRgmIAEoCzIULndvcmxkLlBvc2VDb21wb25lbnRIGYgBARI0Cgt0YXJnZXRfcG9zZRg+IAEoCzIaLndvcmxkLlRhcmdldFBvc2VDb21wb25lbnRIGogBARI0Cgtsb2NhbF9zaGFwZRgdIAEoCzIaLndvcmxkLkxvY2FsU2hhcGVDb21wb25lbnRIG4gBARIrCgZtZXRyaWMYJCABKAsyFi53b3JsZC5NZXRyaWNDb21wb25lbnRIHIgBARIyCgZjb25maWcYMyABKAsyHS53b3JsZC5Db25maWd1cmF0aW9uQ29tcG9uZW50SB2IAQESNwoMY29uZmlndXJhYmxlGDQgASgLMhwud29ybGQuQ29uZmlndXJhYmxlQ29tcG9uZW50SB6IAQESLwoIdGFza2FibGUYFyABKAsyGC53b3JsZC5UYXNrYWJsZUNvbXBvbmVudEgfiAEBEjoKDnRhc2tfZXhlY3V0aW9uGCkgASgLMh0ud29ybGQuVGFza0V4ZWN1dGlvbkNvbXBvbmVudEggiAEBEi0KB21pc3Npb24YHyABKAsyFy53b3JsZC5NaXNzaW9uQ29tcG9uZW50SCGIAQESKwoGc2Vuc29yGCUgASgLMhYud29ybGQuU2Vuc29yQ29tcG9uZW50SCKIAQESOQoNaW50ZXJhY3Rpdml0eRg8IAEoCzIdLndvcmxkLkludGVyYWN0aXZpdHlDb21wb25lbnRII4gBARIvCghhcnRpZmFjdBg9IAEoCzIYLndvcmxkLkFydGlmYWN0Q29tcG9uZW50SCSIAQESJwoEY2hhdBgnIAEoCzIULndvcmxkLkNoYXRDb21wb25lbnRIJYgBARIvCghhc3NlbWJseRgoIAEoCzIYLndvcmxkLkFzc2VtYmx5Q29tcG9uZW50SCaIAQESMAoJbWFwX2xheWVyGD8gASgLMhgud29ybGQuTWFwTGF5ZXJDb21wb25lbnRIJ4gBAUIICgZfbGFiZWxCDQoLX2NvbnRyb2xsZXJCCwoJX2xpZmV0aW1lQgsKCV9wcmlvcml0eUIICgZfbGVhc2VCCgoIX3JvdXRpbmdCBgoEX2dlb0IJCgdfc3ltYm9sQgkKB19jYW1lcmFCDAoKX2RldGVjdGlvbkIKCghfYmVhcmluZ0IICgZfdHJhY2tCCgoIX2xvY2F0b3JCDQoLX2tpbmVtYXRpY3NCCAoGX3NoYXBlQhEKD19jbGFzc2lmaWNhdGlvbkIOCgxfdHJhbnNwb25kZXJCEQoPX2FkbWluaXN0cmF0aXZlQg4KDF9vcmllbnRhdGlvbkINCgtfbmF2aWdhdGlvbkIICgZfcG93ZXJCCgoIX2NhcHR1cmVCBwoFX2duc3NCCQoHX2RldmljZUIHCgVfbGlua0IHCgVfcG9zZUIOCgxfdGFyZ2V0X3Bvc2VCDgoMX2xvY2FsX3NoYXBlQgkKB19tZXRyaWNCCQoHX2NvbmZpZ0IPCg1fY29uZmlndXJhYmxlQgsKCV90YXNrYWJsZUIRCg9fdGFza19leGVjdXRpb25CCgoIX21pc3Npb25CCQoHX3NlbnNvckIQCg5faW50ZXJhY3Rpdml0eUILCglfYXJ0aWZhY3RCBwoFX2NoYXRCCwoJX2Fzc2VtYmx5QgwKCl9tYXBfbGF5ZXJKBAgIEAlKBAgJEApKBAgKEAsiYAoKQ29udHJvbGxlchIPCgJpZBgBIAEoCUgAiAEBEhEKBG5vZGUYAiABKAlIAYgBARITCgZvcmlnaW4YAyABKAlIAogBAUIFCgNfaWRCBwoFX25vZGVCCQoHX29yaWdpbiJZCgVMZWFzZRISCgpjb250cm9sbGVyGAEgASgJEjAKB2V4cGlyZXMYAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSACIAQFCCgoIX2V4cGlyZXMirwIKCExpZmV0aW1lEi0KBGZyb20YASABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSACIAQESLgoFdW50aWwYAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAGIAQESLgoFZnJlc2gYAyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAKIAQESMwoKY29tcG9uZW50cxgEIAMoCzIfLndvcmxkLkxpZmV0aW1lLkNvbXBvbmVudHNFbnRyeRpCCg9Db21wb25lbnRzRW50cnkSCwoDa2V5GAEgASgFEh4KBXZhbHVlGAIgASgLMg8ud29ybGQuTGlmZXRpbWU6AjgBQgcKBV9mcm9tQggKBl91bnRpbEIICgZfZnJlc2giFwoHQ2hhbm5lbBIMCgRuYW1lGAEgASgJIisKB1JvdXRpbmcSIAoIY2hhbm5lbHMYASADKAsyDi53b3JsZC5DaGFubmVsIp8BChNHZW9TcGF0aWFsQ29tcG9uZW50EhEKCWxvbmdpdHVkZRgBIAEoARIQCghsYXRpdHVkZRgCIAEoARIVCghhbHRpdHVkZRgDIAEoAUgAiAEBEjAKCmNvdmFyaWFuY2UYBCABKAsyFy53b3JsZC5Db3ZhcmlhbmNlTWF0cml4SAGIAQFCCwoJX2FsdGl0dWRlQg0KC19jb3ZhcmlhbmNlIoUCCg1HbnNzQ29tcG9uZW50EikKCGZpeF90eXBlGAEgASgOMhIud29ybGQuR25zc0ZpeFR5cGVIAIgBARIfChJzYXRlbGxpdGVzX3Zpc2libGUYAiABKA1IAYgBARIcCg9zYXRlbGxpdGVzX3VzZWQYAyABKA1IAogBARIRCgRoZG9wGAQgASgCSAOIAQESEQoEdmRvcBgFIAEoAkgEiAEBEhEKBHBkb3AYBiABKAJIBYgBAUILCglfZml4X3R5cGVCFQoTX3NhdGVsbGl0ZXNfdmlzaWJsZUISChBfc2F0ZWxsaXRlc191c2VkQgcKBV9oZG9wQgcKBV92ZG9wQgcKBV9wZG9wIiYKD1N5bWJvbENvbXBvbmVudBITCgttaWxTdGQyNTI1QxgBIAEoCSJiChZJbnRlcmFjdGl2aXR5Q29tcG9uZW50EhEKBGljb24YASABKAlIAIgBARIaCg1yZWZlcmVuY2VfdXJsGAMgASgJSAGIAQFCBwoFX2ljb25CEAoOX3JlZmVyZW5jZV91cmwiygEKC01lZGlhU3RyZWFtEg0KBWxhYmVsGAEgASgJEgsKA3VybBgCIAEoCRIsCghwcm90b2NvbBgDIAEoDjIaLndvcmxkLk1lZGlhU3RyZWFtUHJvdG9jb2wSJAoEcm9sZRgJIAEoDjIWLndvcmxkLk1lZGlhU3RyZWFtUm9sZRINCgVjb2RlYxgKIAEoCRISCgV3aWR0aBgLIAEoBUgAiAEBEhMKBmhlaWdodBgMIAEoBUgBiAEBQggKBl93aWR0aEIJCgdfaGVpZ2h0Io4CCg9DYW1lcmFDb21wb25lbnQSIwoHc3RyZWFtcxgBIAMoCzISLndvcmxkLk1lZGlhU3RyZWFtEhgKC2ZvY2FsX3BvaW50GAIgASgJSACIAQESEAoDZm92GAMgASgBSAGIAQESFgoJcmFuZ2VfbWluGAQgASgBSAKIAQESFgoJcmFuZ2VfbWF4GAUgASgBSAOIAQESFQoIZm92X3dpZGUYBiABKAFIBIgBARIVCghmb3ZfdGVsZRgHIAEoAUgFiAEBQg4KDF9mb2NhbF9wb2ludEIGCgRfZm92QgwKCl9yYW5nZV9taW5CDAoKX3JhbmdlX21heEILCglfZm92X3dpZGVCCwoJX2Zvdl90ZWxlIh8KEEFydGlmYWN0TG9jYXRpb24SCwoDdXJsGAEgASgJIqgBChFBcnRpZmFjdENvbXBvbmVudBIKCgJpZBgBIAEoCRIUCgxjb250ZW50X3R5cGUYAiABKAkSKQoIbG9jYXRpb24YAyADKAsyFy53b3JsZC5BcnRpZmFjdExvY2F0aW9uEhcKCnNpemVfYnl0ZXMYBCABKANIAIgBARITCgZzaGEyNTYYBSABKAlIAYgBAUINCgtfc2l6ZV9ieXRlc0IJCgdfc2hhMjU2ItIBChJEZXRlY3Rpb25Db21wb25lbnQSHQoQZGV0ZWN0b3JFbnRpdHlJZBgBIAEoCUgAiAEBEhsKDmNsYXNzaWZpY2F0aW9uGAIgASgJSAGIAQESNQoMbGFzdE1lYXN1cmVkGAMgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgCiAEBEhAKCGV2aWRlbmNlGAQgAygJQhMKEV9kZXRlY3RvckVudGl0eUlkQhEKD19jbGFzc2lmaWNhdGlvbkIPCg1fbGFzdE1lYXN1cmVkIloKEEJlYXJpbmdDb21wb25lbnQSFAoHYXppbXV0aBgBIAEoAUgAiAEBEhYKCWVsZXZhdGlvbhgCIAEoAUgBiAEBQgoKCF9hemltdXRoQgwKCl9lbGV2YXRpb24iIwoPU2Vuc29yQ29tcG9uZW50EhAKCGNvdmVyYWdlGAIgAygJIjgKClF1YXRlcm5pb24SCQoBeBgBIAEoARIJCgF5GAIgASgBEgkKAXoYAyABKAESCQoBdxgEIAEoASKuAQoQQ292YXJpYW5jZU1hdHJpeBIQCgNteHgYASABKAFIAIgBARIQCgNteHkYAiABKAFIAYgBARIQCgNteHoYAyABKAFIAogBARIQCgNteXkYBCABKAFIA4gBARIQCgNteXoYBSABKAFIBIgBARIQCgNtenoYBiABKAFIBYgBAUIGCgRfbXh4QgYKBF9teHlCBgoEX214ekIGCgRfbXl5QgYKBF9teXpCBgoEX216eiLMAQoPQ2FydGVzaWFuT2Zmc2V0Eg4KBmVhc3RfbRgBIAEoARIPCgdub3J0aF9tGAIgASgBEhEKBHVwX20YAyABKAFIAIgBARIwCgpjb3ZhcmlhbmNlGAQgASgLMhcud29ybGQuQ292YXJpYW5jZU1hdHJpeEgBiAEBEisKC29yaWVudGF0aW9uGAUgASgLMhEud29ybGQuUXVhdGVybmlvbkgCiAEBQgcKBV91cF9tQg0KC19jb3ZhcmlhbmNlQg4KDF9vcmllbnRhdGlvbiKCAwoLUG9sYXJPZmZzZXQSDwoHYXppbXV0aBgBIAEoARIWCgllbGV2YXRpb24YAiABKAFIAIgBARISCgVyYW5nZRgDIAEoAUgBiAEBEjQKCmNvdmFyaWFuY2UYBCABKAsyFy53b3JsZC5Db3ZhcmlhbmNlTWF0cml4QgIYAUgCiAEBEh4KEWF6aW11dGhfZXJyb3JfZGVnGAogASgBSAOIAQESIAoTZWxldmF0aW9uX2Vycm9yX2RlZxgLIAEoAUgEiAEBEhoKDXJhbmdlX2Vycm9yX20YDCABKAFIBYgBARIrCgtvcmllbnRhdGlvbhgFIAEoCzIRLndvcmxkLlF1YXRlcm5pb25IBogBAUIMCgpfZWxldmF0aW9uQggKBl9yYW5nZUINCgtfY292YXJpYW5jZUIUChJfYXppbXV0aF9lcnJvcl9kZWdCFgoUX2VsZXZhdGlvbl9lcnJvcl9kZWdCEAoOX3JhbmdlX2Vycm9yX21CDgoMX29yaWVudGF0aW9uInsKDVBvc2VDb21wb25lbnQSDgoGcGFyZW50GAEgASgJEisKCWNhcnRlc2lhbhgCIAEoCzIWLndvcmxkLkNhcnRlc2lhbk9mZnNldEgAEiMKBXBvbGFyGAMgASgLMhIud29ybGQuUG9sYXJPZmZzZXRIAEIICgZvZmZzZXQicQoTVGFyZ2V0UG9zZUNvbXBvbmVudBIrCgljYXJ0ZXNpYW4YASABKAsyFi53b3JsZC5DYXJ0ZXNpYW5PZmZzZXRIABIjCgVwb2xhchgCIAEoCzISLndvcmxkLlBvbGFyT2Zmc2V0SABCCAoGb2Zmc2V0IkoKD0FuZ3VsYXJWZWxvY2l0eRIRCglyb2xsX3JhdGUYASABKAESEgoKcGl0Y2hfcmF0ZRgCIAEoARIQCgh5YXdfcmF0ZRgDIAEoASJ/ChRPcmllbnRhdGlvbkNvbXBvbmVudBImCgtvcmllbnRhdGlvbhgBIAEoCzIRLndvcmxkLlF1YXRlcm5pb24SMAoKY292YXJpYW5jZRgCIAEoCzIXLndvcmxkLkNvdmFyaWFuY2VNYXRyaXhIAIgBAUINCgtfY292YXJpYW5jZSKQAQoOVHJhY2tDb21wb25lbnQSFAoHdHJhY2tlchgBIAEoCUgAiAEBEhQKB2hpc3RvcnkYAiABKAlIAYgBARIXCgpwcmVkaWN0aW9uGAMgASgJSAKIAQESEgoKZGV0ZWN0aW9ucxgEIAMoCUIKCghfdHJhY2tlckIKCghfaGlzdG9yeUINCgtfcHJlZGljdGlvbiIrChBMb2NhdG9yQ29tcG9uZW50EhcKD2xvY2F0ZWRFbnRpdHlJZBgBIAEoCSI1Cg9UYXNrYWJsZUNvbnRleHQSFQoIZW50aXR5SWQYASABKAlIAIgBAUILCglfZW50aXR5SWQiNgoQVGFza2FibGVBc3NpZ25lZRIVCghlbnRpdHlJZBgBIAEoCUgAiAEBQgsKCV9lbnRpdHlJZCKCBAoRVGFza2FibGVDb21wb25lbnQSFQoIcHJpb3JpdHkYASABKA1IAIgBARISCgVsYWJlbBgCIAEoCUgBiAEBEicKB2NvbnRleHQYAyADKAsyFi53b3JsZC5UYXNrYWJsZUNvbnRleHQSKQoIYXNzaWduZWUYBCADKAsyFy53b3JsZC5UYXNrYWJsZUFzc2lnbmVlEisKBnNjaGVtYRgFIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RCAhgBEiEKBG1vZGUYBiABKA4yEy53b3JsZC5UYXNrYWJsZU1vZGUSKgoGdGFyZ2V0GAcgASgLMhUud29ybGQuVGFza2FibGVUYXJnZXRIAogBARIRCgRpY29uGAggASgJSAOIAQESEwoGZWZmZWN0GAkgASgJSASIAQESFQoIZ3JvdXBpbmcYCiABKAlIBYgBARIeChFncm91cGluZ19wcmlvcml0eRgLIAEoDUgGiAEBEi0KCHRheG9ub215GAwgASgLMhYud29ybGQuVGFza2luZ1RheG9ub215SAeIAQFCCwoJX3ByaW9yaXR5QggKBl9sYWJlbEIJCgdfdGFyZ2V0QgcKBV9pY29uQgkKB19lZmZlY3RCCwoJX2dyb3VwaW5nQhQKEl9ncm91cGluZ19wcmlvcml0eUILCglfdGF4b25vbXkilQIKFlRhc2tFeGVjdXRpb25Db21wb25lbnQSDAoEdGFzaxgBIAEoCRI0CgpwYXJhbWV0ZXJzGAIgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEICGAFIAIgBARIoCgVzdGF0ZRgDIAEoDjIZLndvcmxkLlRhc2tFeGVjdXRpb25TdGF0ZRITCgZyZWFzb24YBCABKAlIAYgBARIVCghwcmlvcml0eRgFIAEoDUgCiAEBEi8KBnRhcmdldBgGIAEoCzIaLndvcmxkLlRhc2tFeGVjdXRpb25UYXJnZXRIA4gBAUINCgtfcGFyYW1ldGVyc0IJCgdfcmVhc29uQgsKCV9wcmlvcml0eUIJCgdfdGFyZ2V0IqIBCg1LaW5lbWF0aWNzRW51EhEKBGVhc3QYASABKAFIAIgBARISCgVub3J0aBgCIAEoAUgBiAEBEg8KAnVwGAMgASgBSAKIAQESMAoKY292YXJpYW5jZRgEIAEoCzIXLndvcmxkLkNvdmFyaWFuY2VNYXRyaXhIA4gBAUIHCgVfZWFzdEIICgZfbm9ydGhCBQoDX3VwQg0KC19jb3ZhcmlhbmNlIu8BChNLaW5lbWF0aWNzQ29tcG9uZW50Ei4KC3ZlbG9jaXR5RW51GAEgASgLMhQud29ybGQuS2luZW1hdGljc0VudUgAiAEBEjIKD2FjY2VsZXJhdGlvbkVudRgCIAEoCzIULndvcmxkLktpbmVtYXRpY3NFbnVIAYgBARI4ChNhbmd1bGFyVmVsb2NpdHlCb2R5GAMgASgLMhYud29ybGQuQW5ndWxhclZlbG9jaXR5SAKIAQFCDgoMX3ZlbG9jaXR5RW51QhIKEF9hY2NlbGVyYXRpb25FbnVCFgoUX2FuZ3VsYXJWZWxvY2l0eUJvZHkiQgoIR2VvbWV0cnkSDwoDd2tiGAEgASgMQgIYARIlCgZwbGFuYXIYAiABKAsyFS53b3JsZC5QbGFuYXJHZW9tZXRyeSJIChFHZW9TaGFwZUNvbXBvbmVudBImCghnZW9tZXRyeRgBIAEoCzIPLndvcmxkLkdlb21ldHJ5SACIAQFCCwoJX2dlb21ldHJ5ImQKE0xvY2FsU2hhcGVDb21wb25lbnQSEwoLcmVsYXRpdmVfdG8YAiABKAkSKwoIZ2VvbWV0cnkYASABKAsyFC53b3JsZC5Mb2NhbEdlb21ldHJ5SACIAQFCCwoJX2dlb21ldHJ5IuEBChdDbGFzc2lmaWNhdGlvbkNvbXBvbmVudBJACglkaW1lbnNpb24YASABKA4yJC53b3JsZC5DbGFzc2lmaWNhdGlvbkJhdHRsZURpbWVuc2lvbkICGAFIAIgBARI4CghpZGVudGl0eRgCIAEoDjIdLndvcmxkLkNsYXNzaWZpY2F0aW9uSWRlbnRpdHlCAhgBSAGIAQESLwoIdGF4b25vbXkYAyADKAsyHS53b3JsZC5DbGFzc2lmaWNhdGlvblRheG9ub215QgwKCl9kaW1lbnNpb25CCwoJX2lkZW50aXR5IlEKEUlkZW50aXR5Q29tcG9uZW50EiwKC2FmZmlsaWF0aW9uGAEgASgOMhIud29ybGQuQWZmaWxpYXRpb25IAIgBAUIOCgxfYWZmaWxpYXRpb24ilAEKDlRyYW5zcG9uZGVyQUlTEhEKBG1tc2kYASABKA1IAIgBARIQCgNpbW8YAiABKA1IAYgBARIVCghjYWxsc2lnbhgDIAEoCUgCiAEBEhgKC3Zlc3NlbF9uYW1lGAQgASgJSAOIAQFCBwoFX21tc2lCBgoEX2ltb0ILCglfY2FsbHNpZ25CDgoMX3Zlc3NlbF9uYW1lImMKD1RyYW5zcG9uZGVyQURTQhIZCgxpY2FvX2FkZHJlc3MYASABKA1IAIgBARIWCglmbGlnaHRfaWQYAiABKAlIAYgBAUIPCg1faWNhb19hZGRyZXNzQgwKCl9mbGlnaHRfaWQiewoUVHJhbnNwb25kZXJDb21wb25lbnQSJwoDYWlzGAEgASgLMhUud29ybGQuVHJhbnNwb25kZXJBSVNIAIgBARIpCgRhZHNiGAIgASgLMhYud29ybGQuVHJhbnNwb25kZXJBRFNCSAGIAQFCBgoEX2Fpc0IHCgVfYWRzYiKhAwoXQWRtaW5pc3RyYXRpdmVDb21wb25lbnQSDwoCaWQYASABKAlIAIgBARIRCgRmbGFnGAIgASgJSAGIAQESEgoFb3duZXIYAyABKAlIAogBARIZCgxtYW51ZmFjdHVyZXIYBCABKAlIA4gBARISCgVtb2RlbBgFIAEoCUgEiAEBEhcKCnllYXJfYnVpbHQYBiABKA1IBYgBARIVCghsZW5ndGhfbRgHIAEoAkgGiAEBEhQKB3dpZHRoX20YCiABKAJIB4gBARIVCghoZWlnaHRfbRgLIAEoAkgIiAEBEhcKCnRvbm5hZ2VfZ3QYCCABKAJICYgBARIcCg9lbmdpbmVfcG93ZXJfa3cYCSABKAJICogBAUIFCgNfaWRCBwoFX2ZsYWdCCAoGX293bmVyQg8KDV9tYW51ZmFjdHVyZXJCCAoGX21vZGVsQg0KC195ZWFyX2J1aWx0QgsKCV9sZW5ndGhfbUIKCghfd2lkdGhfbUILCglfaGVpZ2h0X21CDQoLX3Rvbm5hZ2VfZ3RCEgoQX2VuZ2luZV9wb3dlcl9rdyLwAQoTTmF2aWdhdGlvbkNvbXBvbmVudBIoCgRtb2RlGAEgASgOMhUud29ybGQuTmF2aWdhdGlvbk1vZGVIAIgBARISCgVhcm1lZBgCIAEoCEgBiAEBEhYKCWVtZXJnZW5jeRgDIAEoCEgCiAEBEh0KEHdheXBvaW50X2N1cnJlbnQYBCABKA1IA4gBARIbCg53YXlwb2ludF90b3RhbBgFIAEoDUgEiAEBQgcKBV9tb2RlQggKBl9hcm1lZEIMCgpfZW1lcmdlbmN5QhMKEV93YXlwb2ludF9jdXJyZW50QhEKD193YXlwb2ludF90b3RhbCKtAQoQTWlzc2lvbkNvbXBvbmVudBIPCgdtZW1iZXJzGAEgAygJEhgKC2Rlc2NyaXB0aW9uGAIgASgJSACIAQESGAoLZGVzdGluYXRpb24YAyABKAlIAYgBARIsCgNldGEYBCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAKIAQFCDgoMX2Rlc2NyaXB0aW9uQg4KDF9kZXN0aW5hdGlvbkIGCgRfZXRhIqwECg1MaW5rQ29tcG9uZW50EiYKBnN0YXR1cxgBIAEoDjIRLndvcmxkLkxpbmtTdGF0dXNIAIgBARIVCghyc3NpX2RibRgCIAEoEUgBiAEBEhMKBnNucl9kYhgDIAEoEUgCiAEBEhAKA3ZpYRgFIAEoCUgDiAEBEhwKD2xhc3RfbGF0ZW5jeV9tcxgGIAEoDUgEiAEBEhsKDmF2Z19sYXRlbmN5X21zGAcgASgNSAWIAQESMgoJbGFzdF9zZWVuGAggASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgGiAEBEiEKFGxpbmtfcXVhbGl0eV9wZXJjZW50GAkgASgNSAeIAQESGAoLdHhfcG93ZXJfbXcYCiABKA1ICIgBARIbCg5hY3RpdmVfYW50ZW5uYRgLIAEoDUgJiAEBEhQKB3JmX21vZGUYDCABKAlICogBARIbCg5wYWNrZXRfcmF0ZV9oehgNIAEoDUgLiAEBQgkKB19zdGF0dXNCCwoJX3Jzc2lfZGJtQgkKB19zbnJfZGJCBgoEX3ZpYUISChBfbGFzdF9sYXRlbmN5X21zQhEKD19hdmdfbGF0ZW5jeV9tc0IMCgpfbGFzdF9zZWVuQhcKFV9saW5rX3F1YWxpdHlfcGVyY2VudEIOCgxfdHhfcG93ZXJfbXdCEQoPX2FjdGl2ZV9hbnRlbm5hQgoKCF9yZl9tb2RlQhEKD19wYWNrZXRfcmF0ZV9oeiL9AQoQQ2FwdHVyZUNvbXBvbmVudBIUCgdwYXlsb2FkGAEgASgMSACIAQESEQoEcG9ydBgCIAEoDUgBiAEBEhkKDGNvbnRlbnRfdHlwZRgDIAEoCUgCiAEBEhgKC2NhcHR1cmVkX2J5GAQgASgJSAOIAQESNAoLY2FwdHVyZWRfYXQYBSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSASIAQESDwoHY29udGVudBgGIAMoCUIKCghfcGF5bG9hZEIHCgVfcG9ydEIPCg1fY29udGVudF90eXBlQg4KDF9jYXB0dXJlZF9ieUIOCgxfY2FwdHVyZWRfYXQiiAIKDlBvd2VyQ29tcG9uZW50EiUKGGJhdHRlcnlfY2hhcmdlX3JlbWFpbmluZxgBIAEoAkgAiAEBEhQKB3ZvbHRhZ2UYAiABKAJIAYgBARIeChFyZW1haW5pbmdfc2Vjb25kcxgDIAEoDUgCiAEBEhYKCWN1cnJlbnRfYRgEIAEoAkgDiAEBEh4KEWNhcGFjaXR5X3VzZWRfbWFoGAUgASgCSASIAQFCGwoZX2JhdHRlcnlfY2hhcmdlX3JlbWFpbmluZ0IKCghfdm9sdGFnZUIUChJfcmVtYWluaW5nX3NlY29uZHNCDAoKX2N1cnJlbnRfYUIUChJfY2FwYWNpdHlfdXNlZF9tYWgiRgoRRGV2aWNlQ2xhc3NPcHRpb24SDQoFY2xhc3MYASABKAkSDQoFbGFiZWwYAiABKAkSEwoLZGVzY3JpcHRpb24YAyABKAki6gIKFUNvbmZpZ3VyYWJsZUNvbXBvbmVudBInCgZzY2hlbWEYASABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EiYKBXZhbHVlGAIgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBInCgVzdGF0ZRgDIAEoDjIYLndvcmxkLkNvbmZpZ3VyYWJsZVN0YXRlEhIKBWVycm9yGAQgASgJSACIAQESEgoFbGFiZWwYBSABKAlIAYgBARIXCg9hcHBsaWVkX3ZlcnNpb24YBiABKAQSOgoYc3VwcG9ydGVkX2RldmljZV9jbGFzc2VzGAcgAygLMhgud29ybGQuRGV2aWNlQ2xhc3NPcHRpb24SNQoMc2NoZWR1bGVkX2F0GAggASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgCiAEBQggKBl9lcnJvckIICgZfbGFiZWxCDwoNX3NjaGVkdWxlZF9hdCKUBQoPRGV2aWNlQ29tcG9uZW50EhMKBnBhcmVudBgBIAEoCUgAiAEBEhMKC2NvbXBvc2l0aW9uGAIgAygJEh8KEnVuaXF1ZV9oYXJkd2FyZV9pZBgEIAEoCUgBiAEBEiEKBXN0YXRlGAYgASgOMhIud29ybGQuRGV2aWNlU3RhdGUSEgoFZXJyb3IYByABKAlIAogBARISCgVjbGFzcxgKIAEoCUgDiAEBEhUKCGNhdGVnb3J5GA0gASgJSASIAQESJAoEbm9kZRgUIAEoCzIRLndvcmxkLk5vZGVEZXZpY2VIBYgBARIiCgN1c2IYFSABKAsyEC53b3JsZC5Vc2JEZXZpY2VIBogBARIgCgJpcBgWIAEoCzIPLndvcmxkLklwRGV2aWNlSAeIAQESKAoGc2VyaWFsGBcgASgLMhMud29ybGQuU2VyaWFsRGV2aWNlSAiIAQESLAoIZXRoZXJuZXQYGCABKAsyFS53b3JsZC5FdGhlcm5ldERldmljZUgJiAEBEiYKBWxwd2FuGBkgASgLMhIud29ybGQuTFBXQU5EZXZpY2VICogBARIwCgptZXNodGFzdGljGBogASgLMhcud29ybGQuTWVzaHRhc3RpY0RldmljZUgLiAEBEiIKA2JsZRgbIAEoCzIQLndvcmxkLkJsZURldmljZUgMiAEBQgkKB19wYXJlbnRCFQoTX3VuaXF1ZV9oYXJkd2FyZV9pZEIICgZfZXJyb3JCCAoGX2NsYXNzQgsKCV9jYXRlZ29yeUIHCgVfbm9kZUIGCgRfdXNiQgUKA19pcEIJCgdfc2VyaWFsQgsKCV9ldGhlcm5ldEIICgZfbHB3YW5CDQoLX21lc2h0YXN0aWNCBgoEX2JsZSJtCgpNaXNzaW9uS2l0Ei8KB2xheW91dHMYASADKAsyHi53b3JsZC5NaXNzaW9uS2l0LkxheW91dHNFbnRyeRouCgxMYXlvdXRzRW50cnkSCwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ASLdAgoKTm9kZURldmljZRIVCghob3N0bmFtZRgBIAEoCUgAiAEBEg8KAm9zGAIgASgJSAGIAQESEQoEYXJjaBgDIAEoCUgCiAEBEhQKB251bV9jcHUYBCABKA1IA4gBARIXCgpvc192ZXJzaW9uGAUgASgJSASIAQESGwoOaHlkcmlzX3ZlcnNpb24YBiABKAlIBYgBARIkChdoeWRyaXNfdXBkYXRlX2F2YWlsYWJsZRgHIAEoCUgGiAEBEisKC21pc3Npb25fa2l0GAggASgLMhEud29ybGQuTWlzc2lvbktpdEgHiAEBQgsKCV9ob3N0bmFtZUIFCgNfb3NCBwoFX2FyY2hCCgoIX251bV9jcHVCDQoLX29zX3ZlcnNpb25CEQoPX2h5ZHJpc192ZXJzaW9uQhoKGF9oeWRyaXNfdXBkYXRlX2F2YWlsYWJsZUIOCgxfbWlzc2lvbl9raXQi+QIKCVVzYkRldmljZRIWCgl2ZW5kb3JfaWQYASABKA1IAIgBARIXCgpwcm9kdWN0X2lkGAIgASgNSAGIAQESGQoMZGV2aWNlX2NsYXNzGAMgASgNSAKIAQESHAoPZGV2aWNlX3N1YmNsYXNzGAQgASgNSAOIAQESHAoPZGV2aWNlX3Byb3RvY29sGAUgASgNSASIAQESHgoRbWFudWZhY3R1cmVyX25hbWUYBiABKAlIBYgBARIZCgxwcm9kdWN0X25hbWUYByABKAlIBogBARIaCg1zZXJpYWxfbnVtYmVyGAggASgJSAeIAQFCDAoKX3ZlbmRvcl9pZEINCgtfcHJvZHVjdF9pZEIPCg1fZGV2aWNlX2NsYXNzQhIKEF9kZXZpY2Vfc3ViY2xhc3NCEgoQX2RldmljZV9wcm90b2NvbEIUChJfbWFudWZhY3R1cmVyX25hbWVCDwoNX3Byb2R1Y3RfbmFtZUIQCg5fc2VyaWFsX251bWJlciJCCghJcERldmljZRIRCgRob3N0GAEgASgJSACIAQESEQoEcG9ydBgCIAEoDUgBiAEBQgcKBV9ob3N0QgcKBV9wb3J0IloKDkV0aGVybmV0RGV2aWNlEhgKC21hY19hZGRyZXNzGAEgASgJSACIAQESEwoGdmVuZG9yGAIgASgJSAGIAQFCDgoMX21hY19hZGRyZXNzQgkKB192ZW5kb3IiUAoMU2VyaWFsRGV2aWNlEhEKBHBhdGgYASABKAlIAIgBARIWCgliYXVkX3JhdGUYAiABKA1IAYgBAUIHCgVfcGF0aEIMCgpfYmF1ZF9yYXRlItwBChBNZXNodGFzdGljRGV2aWNlEhUKCG5vZGVfbnVtGAEgASgNSACIAQESFgoJbG9uZ19uYW1lGAIgASgJSAGIAQESFwoKc2hvcnRfbmFtZRgDIAEoCUgCiAEBEhsKDmhhcmR3YXJlX21vZGVsGAQgASgJSAOIAQESFwoKcHVibGljX2tleRgFIAEoDEgEiAEBQgsKCV9ub2RlX251bUIMCgpfbG9uZ19uYW1lQg0KC19zaG9ydF9uYW1lQhEKD19oYXJkd2FyZV9tb2RlbEINCgtfcHVibGljX2tleSJJCgtMUFdBTkRldmljZRIQCgNldWkYASABKAlIAIgBARIUCgdhZGRyZXNzGAIgASgJSAGIAQFCBgoEX2V1aUIKCghfYWRkcmVzcyJgCglCbGVEZXZpY2USFAoHYWRkcmVzcxgBIAEoCUgAiAEBEhEKBG5hbWUYAiABKAlIAYgBARIVCg1zZXJ2aWNlX3V1aWRzGAQgAygJQgoKCF9hZGRyZXNzQgcKBV9uYW1lIlEKFkNvbmZpZ3VyYXRpb25Db21wb25lbnQSJgoFdmFsdWUYAyABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Eg8KB3ZlcnNpb24YBSABKAQioAEKDUNoYXRDb21wb25lbnQSEwoGc2VuZGVyGAEgASgJSACIAQESDwoCdG8YAyABKAlIAYgBARIPCgdtZXNzYWdlGAQgASgJEhUKCHJlcGx5X3RvGAUgASgJSAKIAQESFQoIcmVhY3Rpb24YBiABKAhIA4gBAUIJCgdfc2VuZGVyQgUKA190b0ILCglfcmVwbHlfdG9CCwoJX3JlYWN0aW9uIkQKEUFzc2VtYmx5Q29tcG9uZW50EhMKBnBhcmVudBgBIAEoCUgAiAEBEg8KB291dGxpbmUYAiADKAlCCQoHX3BhcmVudCKFAgoRTWFwTGF5ZXJDb21wb25lbnQSDwoHel9pbmRleBgBIAEoBRIPCgdvcGFjaXR5GAIgASgCEi4KBXRpbGVzGAogASgLMh0ud29ybGQuTWFwTGF5ZXJDb21wb25lbnQuVGlsZUgAEi8KBWltYWdlGAsgASgLMh4ud29ybGQuTWFwTGF5ZXJDb21wb25lbnQuSW1hZ2VIABoTCgRUaWxlEgsKA3VybBgBIAEoCRpOCgVJbWFnZRILCgN1cmwYASABKAkSDAoEd2VzdBgCIAEoARINCgVzb3V0aBgDIAEoARIMCgRlYXN0GAQgASgBEg0KBW5vcnRoGAUgASgBQggKBnNvdXJjZSLVBAoMRW50aXR5RmlsdGVyEg8KAmlkGAEgASgJSACIAQESEgoFbGFiZWwYAiABKAlIAYgBARIiCgNnZW8YAyABKAsyEC53b3JsZC5HZW9GaWx0ZXJIAogBARIsCgh0YXNrYWJsZRgEIAEoCzIVLndvcmxkLlRhc2thYmxlRmlsdGVySAOIAQESEQoJY29tcG9uZW50GAUgAygNEjAKCmNvbnRyb2xsZXIYByABKAsyFy53b3JsZC5Db250cm9sbGVyRmlsdGVySASIAQESJgoFdHJhY2sYCCABKAsyEi53b3JsZC5UcmFja0ZpbHRlckgFiAEBEioKB21pc3Npb24YCSABKAsyFC53b3JsZC5NaXNzaW9uRmlsdGVySAaIAQESKgoHY2hhbm5lbBgKIAEoCzIULndvcmxkLkNoYW5uZWxGaWx0ZXJIB4gBARIoCgZkZXZpY2UYMiABKAsyEy53b3JsZC5EZXZpY2VGaWx0ZXJICIgBARIvCgZjb25maWcYMyABKAsyGi53b3JsZC5Db25maWd1cmF0aW9uRmlsdGVySAmIAQESHwoCb3IYZCADKAsyEy53b3JsZC5FbnRpdHlGaWx0ZXISIAoDbm90GGUgASgLMhMud29ybGQuRW50aXR5RmlsdGVyQgUKA19pZEIICgZfbGFiZWxCBgoEX2dlb0ILCglfdGFza2FibGVCDQoLX2NvbnRyb2xsZXJCCAoGX3RyYWNrQgoKCF9taXNzaW9uQgoKCF9jaGFubmVsQgkKB19kZXZpY2VCCQoHX2NvbmZpZyIqChBDb250cm9sbGVyRmlsdGVyEg8KAmlkGAEgASgJSACIAQFCBQoDX2lkIi8KC1RyYWNrRmlsdGVyEhQKB3RyYWNrZXIYASABKAlIAIgBAUIKCghfdHJhY2tlciJdCg1NaXNzaW9uRmlsdGVyEhcKCm1pc3Npb25faWQYASABKAlIAIgBARIWCgltZW1iZXJfaWQYAiABKAlIAYgBAUINCgtfbWlzc2lvbl9pZEIMCgpfbWVtYmVyX2lkIocBCg5UYXNrYWJsZUZpbHRlchIsCgdjb250ZXh0GAEgASgLMhYud29ybGQuVGFza2FibGVDb250ZXh0SACIAQESLgoIYXNzaWduZWUYAiABKAsyFy53b3JsZC5UYXNrYWJsZUFzc2lnbmVlSAGIAQFCCgoIX2NvbnRleHRCCwoJX2Fzc2lnbmVlIk4KCUdlb0ZpbHRlchIjCghnZW9tZXRyeRgBIAEoCzIPLndvcmxkLkdlb21ldHJ5SAASFQoLZ2VvRW50aXR5SWQYAiABKAlIAEIFCgNnZW8i9gEKDERldmljZUZpbHRlchITCgZwYXJlbnQYASABKAlIAIgBARIfChJ1bmlxdWVfaGFyZHdhcmVfaWQYBCABKAlIAYgBARIZCgxkZXZpY2VfY2xhc3MYBSABKAlIAogBARIoCgNibGUYBiABKAsyFi53b3JsZC5CbGVEZXZpY2VGaWx0ZXJIA4gBARIoCgN1c2IYByABKAsyFi53b3JsZC5Vc2JEZXZpY2VGaWx0ZXJIBIgBAUIJCgdfcGFyZW50QhUKE191bmlxdWVfaGFyZHdhcmVfaWRCDwoNX2RldmljZV9jbGFzc0IGCgRfYmxlQgYKBF91c2IiZgoPQmxlRGV2aWNlRmlsdGVyEhQKB2FkZHJlc3MYASABKAlIAIgBARIRCgRuYW1lGAIgASgJSAGIAQESFQoNc2VydmljZV91dWlkcxgEIAMoCUIKCghfYWRkcmVzc0IHCgVfbmFtZSL/AgoPVXNiRGV2aWNlRmlsdGVyEhYKCXZlbmRvcl9pZBgBIAEoDUgAiAEBEhcKCnByb2R1Y3RfaWQYAiABKA1IAYgBARIZCgxkZXZpY2VfY2xhc3MYAyABKA1IAogBARIcCg9kZXZpY2Vfc3ViY2xhc3MYBCABKA1IA4gBARIcCg9kZXZpY2VfcHJvdG9jb2wYBSABKA1IBIgBARIeChFtYW51ZmFjdHVyZXJfbmFtZRgGIAEoCUgFiAEBEhkKDHByb2R1Y3RfbmFtZRgHIAEoCUgGiAEBEhoKDXNlcmlhbF9udW1iZXIYCCABKAlIB4gBAUIMCgpfdmVuZG9yX2lkQg0KC19wcm9kdWN0X2lkQg8KDV9kZXZpY2VfY2xhc3NCEgoQX2RldmljZV9zdWJjbGFzc0ISChBfZGV2aWNlX3Byb3RvY29sQhQKEl9tYW51ZmFjdHVyZXJfbmFtZUIPCg1fcHJvZHVjdF9uYW1lQhAKDl9zZXJpYWxfbnVtYmVyIhUKE0NvbmZpZ3VyYXRpb25GaWx0ZXIiHQoNQ2hhbm5lbEZpbHRlchIMCgRuYW1lGAEgASgJIpMBCgpTb3J0T3B0aW9uEh8KBWZpZWxkGAEgASgOMhAud29ybGQuU29ydEZpZWxkEhIKCmRlc2NlbmRpbmcYAiABKAgSEwoJbWV0cmljX2lkGBQgASgNSAASKAoLbWV0cmljX2tpbmQYFSABKA4yES53b3JsZC5NZXRyaWNLaW5kSABCEQoPbWV0cmljX3NlbGVjdG9yIrQBCg1XYXRjaEJlaGF2aW9yEhgKC21heF9yYXRlX2h6GAEgASgCSACIAQESKgoMbWluX3ByaW9yaXR5GAMgASgOMg8ud29ybGQuUHJpb3JpdHlIAYgBARIiChVrZWVwYWxpdmVfaW50ZXJ2YWxfbXMYBCABKA1IAogBAUIOCgxfbWF4X3JhdGVfaHpCDwoNX21pbl9wcmlvcml0eUIYChZfa2VlcGFsaXZlX2ludGVydmFsX21zIp0BChNMaXN0RW50aXRpZXNSZXF1ZXN0EiMKBmZpbHRlchgCIAEoCzITLndvcmxkLkVudGl0eUZpbHRlchIfCgRzb3J0GAMgAygLMhEud29ybGQuU29ydE9wdGlvbhIsCgliZWhhdmlvdXIYBCABKAsyFC53b3JsZC5XYXRjaEJlaGF2aW9ySACIAQFCDAoKX2JlaGF2aW91ckoECAEQAiI3ChRMaXN0RW50aXRpZXNSZXNwb25zZRIfCghlbnRpdGllcxgBIAMoCzINLndvcmxkLkVudGl0eSJaChNFbnRpdHlDaGFuZ2VSZXF1ZXN0Eh4KB2NoYW5nZXMYASADKAsyDS53b3JsZC5FbnRpdHkSIwoMcmVwbGFjZW1lbnRzGAIgAygLMg0ud29ybGQuRW50aXR5IiEKE0V4cGlyZUVudGl0eVJlcXVlc3QSCgoCaWQYASABKAkiFgoURXhwaXJlRW50aXR5UmVzcG9uc2UiNwoURW50aXR5Q2hhbmdlUmVzcG9uc2USEAoIYWNjZXB0ZWQYASABKAgSDQoFZGVidWcYAiABKAkiUgoRRW50aXR5Q2hhbmdlRXZlbnQSHQoGZW50aXR5GAEgASgLMg0ud29ybGQuRW50aXR5Eh4KAXQYAiABKA4yEy53b3JsZC5FbnRpdHlDaGFuZ2UiPQoRRW50aXR5Q2hhbmdlQmF0Y2gSKAoGZXZlbnRzGAEgAygLMhgud29ybGQuRW50aXR5Q2hhbmdlRXZlbnQiHgoQR2V0RW50aXR5UmVxdWVzdBIKCgJpZBgBIAEoCSIyChFHZXRFbnRpdHlSZXNwb25zZRIdCgZlbnRpdHkYASABKAsyDS53b3JsZC5FbnRpdHkiFQoTR2V0TG9jYWxOb2RlUmVxdWVzdCJGChRHZXRMb2NhbE5vZGVSZXNwb25zZRIdCgZlbnRpdHkYASABKAsyDS53b3JsZC5FbnRpdHkSDwoHbm9kZV9pZBgCIAEoCSIRCg9PYnNlcnZlclJlcXVlc3QicwoNT2JzZXJ2ZXJTdGF0ZRIcCgNnZW8YASABKAsyDy53b3JsZC5HZW9tZXRyeRI0Cgt2aWV3SGlzdG9yeRgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAIgBAUIOCgxfdmlld0hpc3RvcnkiggEKDlJ1blRhc2tSZXF1ZXN0EhAKCGVudGl0eUlkGAEgASgJEhUKCHByaW9yaXR5GAIgASgNSACIAQESLwoGdGFyZ2V0GAYgASgLMhoud29ybGQuVGFza0V4ZWN1dGlvblRhcmdldEgBiAEBQgsKCV9wcmlvcml0eUIJCgdfdGFyZ2V0IoMBCg9SdW5UYXNrUmVzcG9uc2USEwoLZXhlY3V0aW9uSWQYASABKAkSIQoGc3RhdHVzGAIgASgOMhEud29ybGQuVGFza1N0YXR1cxIgChNodW1hblJlYWRhYmxlUmVhc29uGAMgASgJSACIAQFCFgoUX2h1bWFuUmVhZGFibGVSZWFzb24iOgoQSGFyZFJlc2V0UmVxdWVzdBIXCgptaXNzaW9uX2lkGAEgASgJSACIAQFCDQoLX21pc3Npb25faWQiEwoRSGFyZFJlc2V0UmVzcG9uc2UiOQoPVGltZVN5bmNSZXF1ZXN0EiYKAnQxGAEgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCKKAQoQVGltZVN5bmNSZXNwb25zZRImCgJ0MRgBIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASJgoCdDIYAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEiYKAnQzGAMgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCpiCghQcmlvcml0eRIXChNQcmlvcml0eVVuc3BlY2lmaWVkEAASEwoPUHJpb3JpdHlSb3V0aW5lEAESFQoRUHJpb3JpdHlJbW1lZGlhdGUQAhIRCg1Qcmlvcml0eUZsYXNoEAMqjwEKC0duc3NGaXhUeXBlEhMKD0duc3NGaXhUeXBlTm9uZRAAEhEKDUduc3NGaXhUeXBlMkQQARIRCg1HbnNzRml4VHlwZTNEEAISEwoPR25zc0ZpeFR5cGVER1BTEAMSFwoTR25zc0ZpeFR5cGVSdGtGbG9hdBAEEhcKE0duc3NGaXhUeXBlUnRrRml4ZWQQBSrsAQoTTWVkaWFTdHJlYW1Qcm90b2NvbBIiCh5NZWRpYVN0cmVhbVByb3RvY29sVW5zcGVjaWZpZWQQABIdChlNZWRpYVN0cmVhbVByb3RvY29sV2VicnRjEAESGgoWTWVkaWFTdHJlYW1Qcm90b2NvbEhscxACEhwKGE1lZGlhU3RyZWFtUHJvdG9jb2xNanBlZxADEhwKGE1lZGlhU3RyZWFtUHJvdG9jb2xJbWFnZRAEEh0KGU1lZGlhU3RyZWFtUHJvdG9jb2xJZnJhbWUQBRIbChdNZWRpYVN0cmVhbVByb3RvY29sUnRzcBAGKn8KD01lZGlhU3RyZWFtUm9sZRIeChpNZWRpYVN0cmVhbVJvbGVVbnNwZWNpZmllZBAAEhcKE01lZGlhU3RyZWFtUm9sZU1haW4QARIWChJNZWRpYVN0cmVhbVJvbGVTdWIQAhIbChdNZWRpYVN0cmVhbVJvbGVTbmFwc2hvdBADKnoKDFRhc2thYmxlTW9kZRIZChVUYXNrYWJsZU1vZGVFeGNsdXNpdmUQABIZChVUYXNrYWJsZU1vZGVSZWNvbmNpbGUQARIVChFUYXNrYWJsZU1vZGVTcGF3bhACEh0KGVRhc2thYmxlTW9kZVByaW9yaXR5UXVldWUQAyqRAQoSVGFza0V4ZWN1dGlvblN0YXRlEh0KGVRhc2tFeGVjdXRpb25TdGF0ZVBlbmRpbmcQABIdChlUYXNrRXhlY3V0aW9uU3RhdGVSdW5uaW5nEAESHwobVGFza0V4ZWN1dGlvblN0YXRlQ29tcGxldGVkEAISHAoYVGFza0V4ZWN1dGlvblN0YXRlRmFpbGVkEAMqjAIKFkNsYXNzaWZpY2F0aW9uSWRlbnRpdHkSIQodQ2xhc3NpZmljYXRpb25JZGVudGl0eUludmFsaWQQABIhCh1DbGFzc2lmaWNhdGlvbklkZW50aXR5UGVuZGluZxABEiEKHUNsYXNzaWZpY2F0aW9uSWRlbnRpdHlVbmtub3duEAISIAocQ2xhc3NpZmljYXRpb25JZGVudGl0eUZyaWVuZBADEiEKHUNsYXNzaWZpY2F0aW9uSWRlbnRpdHlOZXV0cmFsEAQSIQodQ2xhc3NpZmljYXRpb25JZGVudGl0eUhvc3RpbGUQBRIhCh1DbGFzc2lmaWNhdGlvbklkZW50aXR5U3VzcGVjdBAGKsQCCh1DbGFzc2lmaWNhdGlvbkJhdHRsZURpbWVuc2lvbhIoCiRDbGFzc2lmaWNhdGlvbkJhdHRsZURpbWVuc2lvbkludmFsaWQQABIoCiRDbGFzc2lmaWNhdGlvbkJhdHRsZURpbWVuc2lvblVua25vd24QARImCiJDbGFzc2lmaWNhdGlvbkJhdHRsZURpbWVuc2lvblNwYWNlEAISJAogQ2xhc3NpZmljYXRpb25CYXR0bGVEaW1lbnNpb25BaXIQAxInCiNDbGFzc2lmaWNhdGlvbkJhdHRsZURpbWVuc2lvbkdyb3VuZBAEEisKJ0NsYXNzaWZpY2F0aW9uQmF0dGxlRGltZW5zaW9uU2VhU3VyZmFjZRAFEisKJ0NsYXNzaWZpY2F0aW9uQmF0dGxlRGltZW5zaW9uU3Vic3VyZmFjZRAGKq4BCgtBZmZpbGlhdGlvbhIWChJBZmZpbGlhdGlvbkludmFsaWQQABIWChJBZmZpbGlhdGlvblBlbmRpbmcQARIWChJBZmZpbGlhdGlvblVua25vd24QAhITCg9BZmZpbGlhdGlvbkJsdWUQAxIWChJBZmZpbGlhdGlvbk5ldXRyYWwQBBISCg5BZmZpbGlhdGlvblJlZBAFEhYKEkFmZmlsaWF0aW9uU3VzcGVjdBAGKvYBCg5OYXZpZ2F0aW9uTW9kZRIdChlOYXZpZ2F0aW9uTW9kZVVuc3BlY2lmaWVkEAASGQoVTmF2aWdhdGlvbk1vZGVQbGFubmVkEAESHAoYTmF2aWdhdGlvbk1vZGVTdGF0aW9uYXJ5EAISGgoWTmF2aWdhdGlvbk1vZGVVbmRlcndheRADEhwKGE5hdmlnYXRpb25Nb2RlQXV0b25vbW91cxAEEhgKFE5hdmlnYXRpb25Nb2RlR3VpZGVkEAUSGwoXTmF2aWdhdGlvbk1vZGVMb2l0ZXJpbmcQBhIbChdOYXZpZ2F0aW9uTW9kZVJldHVybmluZxAHKmwKCkxpbmtTdGF0dXMSGQoVTGlua1N0YXR1c1Vuc3BlY2lmaWVkEAASFwoTTGlua1N0YXR1c0Nvbm5lY3RlZBABEhYKEkxpbmtTdGF0dXNEZWdyYWRlZBACEhIKDkxpbmtTdGF0dXNMb3N0EAMqUwoLRGV2aWNlU3RhdGUSFgoSRGV2aWNlU3RhdGVQZW5kaW5nEAASFQoRRGV2aWNlU3RhdGVBY3RpdmUQARIVChFEZXZpY2VTdGF0ZUZhaWxlZBACKsoBChFDb25maWd1cmFibGVTdGF0ZRIdChlDb25maWd1cmFibGVTdGF0ZUluYWN0aXZlEAASHQoZQ29uZmlndXJhYmxlU3RhdGVTdGFydGluZxABEhsKF0NvbmZpZ3VyYWJsZVN0YXRlQWN0aXZlEAISGwoXQ29uZmlndXJhYmxlU3RhdGVGYWlsZWQQAxIdChlDb25maWd1cmFibGVTdGF0ZUNvbmZsaWN0EAQSHgoaQ29uZmlndXJhYmxlU3RhdGVTY2hlZHVsZWQQBSqeCAoJU29ydEZpZWxkEhgKFFNvcnRGaWVsZFVuc3BlY2lmaWVkEAASEgoOU29ydEZpZWxkTGFiZWwQARIVChFTb3J0RmllbGRQcmlvcml0eRACEhkKFVNvcnRGaWVsZExpZmV0aW1lRnJvbRAKEhoKFlNvcnRGaWVsZExpZmV0aW1lVW50aWwQCxIaChZTb3J0RmllbGRMaWZldGltZUZyZXNoEAwSGAoUU29ydEZpZWxkR2VvTGF0aXR1ZGUQFBIZChVTb3J0RmllbGRHZW9Mb25naXR1ZGUQFRIYChRTb3J0RmllbGRHZW9BbHRpdHVkZRAWEiMKH1NvcnRGaWVsZENsYXNzaWZpY2F0aW9uSWRlbnRpdHkQHhIkCiBTb3J0RmllbGRDbGFzc2lmaWNhdGlvbkRpbWVuc2lvbhAfEhsKF1NvcnRGaWVsZEJlYXJpbmdBemltdXRoEDISHQoZU29ydEZpZWxkQmVhcmluZ0VsZXZhdGlvbhAzEiEKHVNvcnRGaWVsZEFkbWluaXN0cmF0aXZlTGVuZ3RoEEYSIAocU29ydEZpZWxkQWRtaW5pc3RyYXRpdmVXaWR0aBBHEiEKHVNvcnRGaWVsZEFkbWluaXN0cmF0aXZlSGVpZ2h0EEgSIgoeU29ydEZpZWxkQWRtaW5pc3RyYXRpdmVUb25uYWdlEEkSJgoiU29ydEZpZWxkQWRtaW5pc3RyYXRpdmVFbmdpbmVQb3dlchBKEiQKIFNvcnRGaWVsZEFkbWluaXN0cmF0aXZlWWVhckJ1aWx0EEsSFQoRU29ydEZpZWxkTGlua1Jzc2kQWhIUChBTb3J0RmllbGRMaW5rU25yEFsSHAoYU29ydEZpZWxkTGlua0xhc3RMYXRlbmN5EFwSGwoXU29ydEZpZWxkTGlua0F2Z0xhdGVuY3kQXRIYChRTb3J0RmllbGRMaW5rUXVhbGl0eRBeEhkKFVNvcnRGaWVsZExpbmtMYXN0U2VlbhBfEhsKF1NvcnRGaWVsZExpbmtQYWNrZXRSYXRlEGASHwobU29ydEZpZWxkUG93ZXJCYXR0ZXJ5Q2hhcmdlEGQSGQoVU29ydEZpZWxkUG93ZXJWb2x0YWdlEGUSIgoeU29ydEZpZWxkUG93ZXJSZW1haW5pbmdTZWNvbmRzEGYSGQoVU29ydEZpZWxkUG93ZXJDdXJyZW50EGcSHgoaU29ydEZpZWxkUG93ZXJDYXBhY2l0eVVzZWQQaBIZChRTb3J0RmllbGREZXZpY2VTdGF0ZRCCARIZChRTb3J0RmllbGRNZXRyaWNWYWx1ZRCWARIeChlTb3J0RmllbGRNZXRyaWNNZWFzdXJlZEF0EJcBEh4KGVNvcnRGaWVsZE1ldHJpY0FsZXJ0TGV2ZWwQmAEqdQoMRW50aXR5Q2hhbmdlEhcKE0VudGl0eUNoYW5nZUludmFsaWQQABIXChNFbnRpdHlDaGFuZ2VVcGRhdGVkEAESFwoTRW50aXR5Q2hhbmdlRXhwaXJlZBACEhoKFkVudGl0eUNoYW5nZVVub2JzZXJ2ZWQQAyqSCQoPRW50aXR5Q29tcG9uZW50Eh4KGkVudGl0eUNvbXBvbmVudFVuc3BlY2lmaWVkEAASGAoURW50aXR5Q29tcG9uZW50TGFiZWwQAhIdChlFbnRpdHlDb21wb25lbnRDb250cm9sbGVyEAMSGwoXRW50aXR5Q29tcG9uZW50TGlmZXRpbWUQBBIbChdFbnRpdHlDb21wb25lbnRQcmlvcml0eRAFEhgKFEVudGl0eUNvbXBvbmVudExlYXNlEAYSGgoWRW50aXR5Q29tcG9uZW50Um91dGluZxAHEhYKEkVudGl0eUNvbXBvbmVudEdlbxALEhkKFUVudGl0eUNvbXBvbmVudFN5bWJvbBAMEhkKFUVudGl0eUNvbXBvbmVudENhbWVyYRAPEhwKGEVudGl0eUNvbXBvbmVudERldGVjdGlvbhAQEhoKFkVudGl0eUNvbXBvbmVudEJlYXJpbmcQERIYChRFbnRpdHlDb21wb25lbnRUcmFjaxAVEhoKFkVudGl0eUNvbXBvbmVudExvY2F0b3IQFhIbChdFbnRpdHlDb21wb25lbnRUYXNrYWJsZRAXEh0KGUVudGl0eUNvbXBvbmVudEtpbmVtYXRpY3MQGBIYChRFbnRpdHlDb21wb25lbnRTaGFwZRAZEiEKHUVudGl0eUNvbXBvbmVudENsYXNzaWZpY2F0aW9uEBoSHgoaRW50aXR5Q29tcG9uZW50VHJhbnNwb25kZXIQGxIhCh1FbnRpdHlDb21wb25lbnRBZG1pbmlzdHJhdGl2ZRAcEh0KGUVudGl0eUNvbXBvbmVudExvY2FsU2hhcGUQHRIeChpFbnRpdHlDb21wb25lbnRPcmllbnRhdGlvbhAeEhoKFkVudGl0eUNvbXBvbmVudE1pc3Npb24QHxIXChNFbnRpdHlDb21wb25lbnRMaW5rECASGAoURW50aXR5Q29tcG9uZW50UG93ZXIQIRIdChlFbnRpdHlDb21wb25lbnROYXZpZ2F0aW9uECISGgoWRW50aXR5Q29tcG9uZW50Q2FwdHVyZRAjEhkKFUVudGl0eUNvbXBvbmVudE1ldHJpYxAkEhkKFUVudGl0eUNvbXBvbmVudFNlbnNvchAlEhcKE0VudGl0eUNvbXBvbmVudFBvc2UQJhIXChNFbnRpdHlDb21wb25lbnRDaGF0ECcSIAocRW50aXR5Q29tcG9uZW50VGFza0V4ZWN1dGlvbhApEhcKE0VudGl0eUNvbXBvbmVudEduc3MQKhIZChVFbnRpdHlDb21wb25lbnREZXZpY2UQMhIZChVFbnRpdHlDb21wb25lbnRDb25maWcQMxIfChtFbnRpdHlDb21wb25lbnRDb25maWd1cmFibGUQNBIgChxFbnRpdHlDb21wb25lbnRJbnRlcmFjdGl2aXR5EDwSGwoXRW50aXR5Q29tcG9uZW50QXJ0aWZhY3QQPRIdChlFbnRpdHlDb21wb25lbnRUYXJnZXRQb3NlED4SGwoXRW50aXR5Q29tcG9uZW50TWFwTGF5ZXIQPyppCgpUYXNrU3RhdHVzEhUKEVRhc2tTdGF0dXNJbnZhbGlkEAASFQoRVGFza1N0YXR1c1J1bm5pbmcQARIXChNUYXNrU3RhdHVzQ29tcGxldGVkEAISFAoQVGFza1N0YXR1c0ZhaWxlZBADMuoECgxXb3JsZFNlcnZpY2USRwoMTGlzdEVudGl0aWVzEhoud29ybGQuTGlzdEVudGl0aWVzUmVxdWVzdBobLndvcmxkLkxpc3RFbnRpdGllc1Jlc3BvbnNlEj4KCUdldEVudGl0eRIXLndvcmxkLkdldEVudGl0eVJlcXVlc3QaGC53b3JsZC5HZXRFbnRpdHlSZXNwb25zZRJHCg1XYXRjaEVudGl0aWVzEhoud29ybGQuTGlzdEVudGl0aWVzUmVxdWVzdBoYLndvcmxkLkVudGl0eUNoYW5nZUV2ZW50MAESPwoEUHVzaBIaLndvcmxkLkVudGl0eUNoYW5nZVJlcXVlc3QaGy53b3JsZC5FbnRpdHlDaGFuZ2VSZXNwb25zZRJHCgxFeHBpcmVFbnRpdHkSGi53b3JsZC5FeHBpcmVFbnRpdHlSZXF1ZXN0Ghsud29ybGQuRXhwaXJlRW50aXR5UmVzcG9uc2USRwoMR2V0TG9jYWxOb2RlEhoud29ybGQuR2V0TG9jYWxOb2RlUmVxdWVzdBobLndvcmxkLkdldExvY2FsTm9kZVJlc3BvbnNlEjgKB1J1blRhc2sSFS53b3JsZC5SdW5UYXNrUmVxdWVzdBoWLndvcmxkLlJ1blRhc2tSZXNwb25zZRI+CglIYXJkUmVzZXQSFy53b3JsZC5IYXJkUmVzZXRSZXF1ZXN0Ghgud29ybGQuSGFyZFJlc2V0UmVzcG9uc2USOwoIVGltZVN5bmMSFi53b3JsZC5UaW1lU3luY1JlcXVlc3QaFy53b3JsZC5UaW1lU3luY1Jlc3BvbnNlQiBaHmdpdGh1Yi5jb20vcHJvamVjdHFhaS9wcm90by9nb2IGcHJvdG8z", [file_geometry, file_google_protobuf_struct, file_google_protobuf_timestamp, file_metrics, file_tasking, file_taxonomy]);
15
17
 
16
18
  /**
17
19
  * Describes the message world.Entity.
@@ -216,495 +218,488 @@ export const TaskableContextSchema = /*@__PURE__*/
216
218
  export const TaskableAssigneeSchema = /*@__PURE__*/
217
219
  messageDesc(file_world, 28);
218
220
 
219
- /**
220
- * Describes the message world.TaskableTarget.
221
- * Use `create(TaskableTargetSchema)` to create a new message.
222
- */
223
- export const TaskableTargetSchema = /*@__PURE__*/
224
- messageDesc(file_world, 29);
225
-
226
221
  /**
227
222
  * Describes the message world.TaskableComponent.
228
223
  * Use `create(TaskableComponentSchema)` to create a new message.
229
224
  */
230
225
  export const TaskableComponentSchema = /*@__PURE__*/
231
- messageDesc(file_world, 30);
232
-
233
- /**
234
- * Describes the message world.TaskExecutionTarget.
235
- * Use `create(TaskExecutionTargetSchema)` to create a new message.
236
- */
237
- export const TaskExecutionTargetSchema = /*@__PURE__*/
238
- messageDesc(file_world, 31);
226
+ messageDesc(file_world, 29);
239
227
 
240
228
  /**
241
229
  * Describes the message world.TaskExecutionComponent.
242
230
  * Use `create(TaskExecutionComponentSchema)` to create a new message.
243
231
  */
244
232
  export const TaskExecutionComponentSchema = /*@__PURE__*/
245
- messageDesc(file_world, 32);
233
+ messageDesc(file_world, 30);
246
234
 
247
235
  /**
248
236
  * Describes the message world.KinematicsEnu.
249
237
  * Use `create(KinematicsEnuSchema)` to create a new message.
250
238
  */
251
239
  export const KinematicsEnuSchema = /*@__PURE__*/
252
- messageDesc(file_world, 33);
240
+ messageDesc(file_world, 31);
253
241
 
254
242
  /**
255
243
  * Describes the message world.KinematicsComponent.
256
244
  * Use `create(KinematicsComponentSchema)` to create a new message.
257
245
  */
258
246
  export const KinematicsComponentSchema = /*@__PURE__*/
259
- messageDesc(file_world, 34);
247
+ messageDesc(file_world, 32);
260
248
 
261
249
  /**
262
250
  * Describes the message world.Geometry.
263
251
  * Use `create(GeometrySchema)` to create a new message.
264
252
  */
265
253
  export const GeometrySchema = /*@__PURE__*/
266
- messageDesc(file_world, 35);
254
+ messageDesc(file_world, 33);
267
255
 
268
256
  /**
269
257
  * Describes the message world.GeoShapeComponent.
270
258
  * Use `create(GeoShapeComponentSchema)` to create a new message.
271
259
  */
272
260
  export const GeoShapeComponentSchema = /*@__PURE__*/
273
- messageDesc(file_world, 36);
261
+ messageDesc(file_world, 34);
274
262
 
275
263
  /**
276
264
  * Describes the message world.LocalShapeComponent.
277
265
  * Use `create(LocalShapeComponentSchema)` to create a new message.
278
266
  */
279
267
  export const LocalShapeComponentSchema = /*@__PURE__*/
280
- messageDesc(file_world, 37);
268
+ messageDesc(file_world, 35);
281
269
 
282
270
  /**
283
271
  * Describes the message world.ClassificationComponent.
284
272
  * Use `create(ClassificationComponentSchema)` to create a new message.
285
273
  */
286
274
  export const ClassificationComponentSchema = /*@__PURE__*/
287
- messageDesc(file_world, 38);
275
+ messageDesc(file_world, 36);
276
+
277
+ /**
278
+ * Describes the message world.IdentityComponent.
279
+ * Use `create(IdentityComponentSchema)` to create a new message.
280
+ */
281
+ export const IdentityComponentSchema = /*@__PURE__*/
282
+ messageDesc(file_world, 37);
288
283
 
289
284
  /**
290
285
  * Describes the message world.TransponderAIS.
291
286
  * Use `create(TransponderAISSchema)` to create a new message.
292
287
  */
293
288
  export const TransponderAISSchema = /*@__PURE__*/
294
- messageDesc(file_world, 39);
289
+ messageDesc(file_world, 38);
295
290
 
296
291
  /**
297
292
  * Describes the message world.TransponderADSB.
298
293
  * Use `create(TransponderADSBSchema)` to create a new message.
299
294
  */
300
295
  export const TransponderADSBSchema = /*@__PURE__*/
301
- messageDesc(file_world, 40);
296
+ messageDesc(file_world, 39);
302
297
 
303
298
  /**
304
299
  * Describes the message world.TransponderComponent.
305
300
  * Use `create(TransponderComponentSchema)` to create a new message.
306
301
  */
307
302
  export const TransponderComponentSchema = /*@__PURE__*/
308
- messageDesc(file_world, 41);
303
+ messageDesc(file_world, 40);
309
304
 
310
305
  /**
311
306
  * Describes the message world.AdministrativeComponent.
312
307
  * Use `create(AdministrativeComponentSchema)` to create a new message.
313
308
  */
314
309
  export const AdministrativeComponentSchema = /*@__PURE__*/
315
- messageDesc(file_world, 42);
310
+ messageDesc(file_world, 41);
316
311
 
317
312
  /**
318
313
  * Describes the message world.NavigationComponent.
319
314
  * Use `create(NavigationComponentSchema)` to create a new message.
320
315
  */
321
316
  export const NavigationComponentSchema = /*@__PURE__*/
322
- messageDesc(file_world, 43);
317
+ messageDesc(file_world, 42);
323
318
 
324
319
  /**
325
320
  * Describes the message world.MissionComponent.
326
321
  * Use `create(MissionComponentSchema)` to create a new message.
327
322
  */
328
323
  export const MissionComponentSchema = /*@__PURE__*/
329
- messageDesc(file_world, 44);
324
+ messageDesc(file_world, 43);
330
325
 
331
326
  /**
332
327
  * Describes the message world.LinkComponent.
333
328
  * Use `create(LinkComponentSchema)` to create a new message.
334
329
  */
335
330
  export const LinkComponentSchema = /*@__PURE__*/
336
- messageDesc(file_world, 45);
331
+ messageDesc(file_world, 44);
337
332
 
338
333
  /**
339
334
  * Describes the message world.CaptureComponent.
340
335
  * Use `create(CaptureComponentSchema)` to create a new message.
341
336
  */
342
337
  export const CaptureComponentSchema = /*@__PURE__*/
343
- messageDesc(file_world, 46);
338
+ messageDesc(file_world, 45);
344
339
 
345
340
  /**
346
341
  * Describes the message world.PowerComponent.
347
342
  * Use `create(PowerComponentSchema)` to create a new message.
348
343
  */
349
344
  export const PowerComponentSchema = /*@__PURE__*/
350
- messageDesc(file_world, 47);
345
+ messageDesc(file_world, 46);
351
346
 
352
347
  /**
353
348
  * Describes the message world.DeviceClassOption.
354
349
  * Use `create(DeviceClassOptionSchema)` to create a new message.
355
350
  */
356
351
  export const DeviceClassOptionSchema = /*@__PURE__*/
357
- messageDesc(file_world, 48);
352
+ messageDesc(file_world, 47);
358
353
 
359
354
  /**
360
355
  * Describes the message world.ConfigurableComponent.
361
356
  * Use `create(ConfigurableComponentSchema)` to create a new message.
362
357
  */
363
358
  export const ConfigurableComponentSchema = /*@__PURE__*/
364
- messageDesc(file_world, 49);
359
+ messageDesc(file_world, 48);
365
360
 
366
361
  /**
367
362
  * Describes the message world.DeviceComponent.
368
363
  * Use `create(DeviceComponentSchema)` to create a new message.
369
364
  */
370
365
  export const DeviceComponentSchema = /*@__PURE__*/
371
- messageDesc(file_world, 50);
366
+ messageDesc(file_world, 49);
372
367
 
373
368
  /**
374
369
  * Describes the message world.MissionKit.
375
370
  * Use `create(MissionKitSchema)` to create a new message.
376
371
  */
377
372
  export const MissionKitSchema = /*@__PURE__*/
378
- messageDesc(file_world, 51);
373
+ messageDesc(file_world, 50);
379
374
 
380
375
  /**
381
376
  * Describes the message world.NodeDevice.
382
377
  * Use `create(NodeDeviceSchema)` to create a new message.
383
378
  */
384
379
  export const NodeDeviceSchema = /*@__PURE__*/
385
- messageDesc(file_world, 52);
380
+ messageDesc(file_world, 51);
386
381
 
387
382
  /**
388
383
  * Describes the message world.UsbDevice.
389
384
  * Use `create(UsbDeviceSchema)` to create a new message.
390
385
  */
391
386
  export const UsbDeviceSchema = /*@__PURE__*/
392
- messageDesc(file_world, 53);
387
+ messageDesc(file_world, 52);
393
388
 
394
389
  /**
395
390
  * Describes the message world.IpDevice.
396
391
  * Use `create(IpDeviceSchema)` to create a new message.
397
392
  */
398
393
  export const IpDeviceSchema = /*@__PURE__*/
399
- messageDesc(file_world, 54);
394
+ messageDesc(file_world, 53);
400
395
 
401
396
  /**
402
397
  * Describes the message world.EthernetDevice.
403
398
  * Use `create(EthernetDeviceSchema)` to create a new message.
404
399
  */
405
400
  export const EthernetDeviceSchema = /*@__PURE__*/
406
- messageDesc(file_world, 55);
401
+ messageDesc(file_world, 54);
407
402
 
408
403
  /**
409
404
  * Describes the message world.SerialDevice.
410
405
  * Use `create(SerialDeviceSchema)` to create a new message.
411
406
  */
412
407
  export const SerialDeviceSchema = /*@__PURE__*/
413
- messageDesc(file_world, 56);
408
+ messageDesc(file_world, 55);
414
409
 
415
410
  /**
416
411
  * Describes the message world.MeshtasticDevice.
417
412
  * Use `create(MeshtasticDeviceSchema)` to create a new message.
418
413
  */
419
414
  export const MeshtasticDeviceSchema = /*@__PURE__*/
420
- messageDesc(file_world, 57);
415
+ messageDesc(file_world, 56);
421
416
 
422
417
  /**
423
418
  * Describes the message world.LPWANDevice.
424
419
  * Use `create(LPWANDeviceSchema)` to create a new message.
425
420
  */
426
421
  export const LPWANDeviceSchema = /*@__PURE__*/
427
- messageDesc(file_world, 58);
422
+ messageDesc(file_world, 57);
428
423
 
429
424
  /**
430
425
  * Describes the message world.BleDevice.
431
426
  * Use `create(BleDeviceSchema)` to create a new message.
432
427
  */
433
428
  export const BleDeviceSchema = /*@__PURE__*/
434
- messageDesc(file_world, 59);
429
+ messageDesc(file_world, 58);
435
430
 
436
431
  /**
437
432
  * Describes the message world.ConfigurationComponent.
438
433
  * Use `create(ConfigurationComponentSchema)` to create a new message.
439
434
  */
440
435
  export const ConfigurationComponentSchema = /*@__PURE__*/
441
- messageDesc(file_world, 60);
436
+ messageDesc(file_world, 59);
442
437
 
443
438
  /**
444
439
  * Describes the message world.ChatComponent.
445
440
  * Use `create(ChatComponentSchema)` to create a new message.
446
441
  */
447
442
  export const ChatComponentSchema = /*@__PURE__*/
448
- messageDesc(file_world, 61);
443
+ messageDesc(file_world, 60);
449
444
 
450
445
  /**
451
446
  * Describes the message world.AssemblyComponent.
452
447
  * Use `create(AssemblyComponentSchema)` to create a new message.
453
448
  */
454
449
  export const AssemblyComponentSchema = /*@__PURE__*/
455
- messageDesc(file_world, 62);
450
+ messageDesc(file_world, 61);
456
451
 
457
452
  /**
458
453
  * Describes the message world.MapLayerComponent.
459
454
  * Use `create(MapLayerComponentSchema)` to create a new message.
460
455
  */
461
456
  export const MapLayerComponentSchema = /*@__PURE__*/
462
- messageDesc(file_world, 63);
457
+ messageDesc(file_world, 62);
463
458
 
464
459
  /**
465
460
  * Describes the message world.MapLayerComponent.Tile.
466
461
  * Use `create(MapLayerComponent_TileSchema)` to create a new message.
467
462
  */
468
463
  export const MapLayerComponent_TileSchema = /*@__PURE__*/
469
- messageDesc(file_world, 63, 0);
464
+ messageDesc(file_world, 62, 0);
470
465
 
471
466
  /**
472
467
  * Describes the message world.MapLayerComponent.Image.
473
468
  * Use `create(MapLayerComponent_ImageSchema)` to create a new message.
474
469
  */
475
470
  export const MapLayerComponent_ImageSchema = /*@__PURE__*/
476
- messageDesc(file_world, 63, 1);
471
+ messageDesc(file_world, 62, 1);
477
472
 
478
473
  /**
479
474
  * Describes the message world.EntityFilter.
480
475
  * Use `create(EntityFilterSchema)` to create a new message.
481
476
  */
482
477
  export const EntityFilterSchema = /*@__PURE__*/
483
- messageDesc(file_world, 64);
478
+ messageDesc(file_world, 63);
484
479
 
485
480
  /**
486
481
  * Describes the message world.ControllerFilter.
487
482
  * Use `create(ControllerFilterSchema)` to create a new message.
488
483
  */
489
484
  export const ControllerFilterSchema = /*@__PURE__*/
490
- messageDesc(file_world, 65);
485
+ messageDesc(file_world, 64);
491
486
 
492
487
  /**
493
488
  * Describes the message world.TrackFilter.
494
489
  * Use `create(TrackFilterSchema)` to create a new message.
495
490
  */
496
491
  export const TrackFilterSchema = /*@__PURE__*/
497
- messageDesc(file_world, 66);
492
+ messageDesc(file_world, 65);
498
493
 
499
494
  /**
500
495
  * Describes the message world.MissionFilter.
501
496
  * Use `create(MissionFilterSchema)` to create a new message.
502
497
  */
503
498
  export const MissionFilterSchema = /*@__PURE__*/
504
- messageDesc(file_world, 67);
499
+ messageDesc(file_world, 66);
505
500
 
506
501
  /**
507
502
  * Describes the message world.TaskableFilter.
508
503
  * Use `create(TaskableFilterSchema)` to create a new message.
509
504
  */
510
505
  export const TaskableFilterSchema = /*@__PURE__*/
511
- messageDesc(file_world, 68);
506
+ messageDesc(file_world, 67);
512
507
 
513
508
  /**
514
509
  * Describes the message world.GeoFilter.
515
510
  * Use `create(GeoFilterSchema)` to create a new message.
516
511
  */
517
512
  export const GeoFilterSchema = /*@__PURE__*/
518
- messageDesc(file_world, 69);
513
+ messageDesc(file_world, 68);
519
514
 
520
515
  /**
521
516
  * Describes the message world.DeviceFilter.
522
517
  * Use `create(DeviceFilterSchema)` to create a new message.
523
518
  */
524
519
  export const DeviceFilterSchema = /*@__PURE__*/
525
- messageDesc(file_world, 70);
520
+ messageDesc(file_world, 69);
526
521
 
527
522
  /**
528
523
  * Describes the message world.BleDeviceFilter.
529
524
  * Use `create(BleDeviceFilterSchema)` to create a new message.
530
525
  */
531
526
  export const BleDeviceFilterSchema = /*@__PURE__*/
532
- messageDesc(file_world, 71);
527
+ messageDesc(file_world, 70);
533
528
 
534
529
  /**
535
530
  * Describes the message world.UsbDeviceFilter.
536
531
  * Use `create(UsbDeviceFilterSchema)` to create a new message.
537
532
  */
538
533
  export const UsbDeviceFilterSchema = /*@__PURE__*/
539
- messageDesc(file_world, 72);
534
+ messageDesc(file_world, 71);
540
535
 
541
536
  /**
542
537
  * Describes the message world.ConfigurationFilter.
543
538
  * Use `create(ConfigurationFilterSchema)` to create a new message.
544
539
  */
545
540
  export const ConfigurationFilterSchema = /*@__PURE__*/
546
- messageDesc(file_world, 73);
541
+ messageDesc(file_world, 72);
547
542
 
548
543
  /**
549
544
  * Describes the message world.ChannelFilter.
550
545
  * Use `create(ChannelFilterSchema)` to create a new message.
551
546
  */
552
547
  export const ChannelFilterSchema = /*@__PURE__*/
553
- messageDesc(file_world, 74);
548
+ messageDesc(file_world, 73);
554
549
 
555
550
  /**
556
551
  * Describes the message world.SortOption.
557
552
  * Use `create(SortOptionSchema)` to create a new message.
558
553
  */
559
554
  export const SortOptionSchema = /*@__PURE__*/
560
- messageDesc(file_world, 75);
555
+ messageDesc(file_world, 74);
561
556
 
562
557
  /**
563
558
  * Describes the message world.WatchBehavior.
564
559
  * Use `create(WatchBehaviorSchema)` to create a new message.
565
560
  */
566
561
  export const WatchBehaviorSchema = /*@__PURE__*/
567
- messageDesc(file_world, 76);
562
+ messageDesc(file_world, 75);
568
563
 
569
564
  /**
570
565
  * Describes the message world.ListEntitiesRequest.
571
566
  * Use `create(ListEntitiesRequestSchema)` to create a new message.
572
567
  */
573
568
  export const ListEntitiesRequestSchema = /*@__PURE__*/
574
- messageDesc(file_world, 77);
569
+ messageDesc(file_world, 76);
575
570
 
576
571
  /**
577
572
  * Describes the message world.ListEntitiesResponse.
578
573
  * Use `create(ListEntitiesResponseSchema)` to create a new message.
579
574
  */
580
575
  export const ListEntitiesResponseSchema = /*@__PURE__*/
581
- messageDesc(file_world, 78);
576
+ messageDesc(file_world, 77);
582
577
 
583
578
  /**
584
579
  * Describes the message world.EntityChangeRequest.
585
580
  * Use `create(EntityChangeRequestSchema)` to create a new message.
586
581
  */
587
582
  export const EntityChangeRequestSchema = /*@__PURE__*/
588
- messageDesc(file_world, 79);
583
+ messageDesc(file_world, 78);
589
584
 
590
585
  /**
591
586
  * Describes the message world.ExpireEntityRequest.
592
587
  * Use `create(ExpireEntityRequestSchema)` to create a new message.
593
588
  */
594
589
  export const ExpireEntityRequestSchema = /*@__PURE__*/
595
- messageDesc(file_world, 80);
590
+ messageDesc(file_world, 79);
596
591
 
597
592
  /**
598
593
  * Describes the message world.ExpireEntityResponse.
599
594
  * Use `create(ExpireEntityResponseSchema)` to create a new message.
600
595
  */
601
596
  export const ExpireEntityResponseSchema = /*@__PURE__*/
602
- messageDesc(file_world, 81);
597
+ messageDesc(file_world, 80);
603
598
 
604
599
  /**
605
600
  * Describes the message world.EntityChangeResponse.
606
601
  * Use `create(EntityChangeResponseSchema)` to create a new message.
607
602
  */
608
603
  export const EntityChangeResponseSchema = /*@__PURE__*/
609
- messageDesc(file_world, 82);
604
+ messageDesc(file_world, 81);
610
605
 
611
606
  /**
612
607
  * Describes the message world.EntityChangeEvent.
613
608
  * Use `create(EntityChangeEventSchema)` to create a new message.
614
609
  */
615
610
  export const EntityChangeEventSchema = /*@__PURE__*/
616
- messageDesc(file_world, 83);
611
+ messageDesc(file_world, 82);
617
612
 
618
613
  /**
619
614
  * Describes the message world.EntityChangeBatch.
620
615
  * Use `create(EntityChangeBatchSchema)` to create a new message.
621
616
  */
622
617
  export const EntityChangeBatchSchema = /*@__PURE__*/
623
- messageDesc(file_world, 84);
618
+ messageDesc(file_world, 83);
624
619
 
625
620
  /**
626
621
  * Describes the message world.GetEntityRequest.
627
622
  * Use `create(GetEntityRequestSchema)` to create a new message.
628
623
  */
629
624
  export const GetEntityRequestSchema = /*@__PURE__*/
630
- messageDesc(file_world, 85);
625
+ messageDesc(file_world, 84);
631
626
 
632
627
  /**
633
628
  * Describes the message world.GetEntityResponse.
634
629
  * Use `create(GetEntityResponseSchema)` to create a new message.
635
630
  */
636
631
  export const GetEntityResponseSchema = /*@__PURE__*/
637
- messageDesc(file_world, 86);
632
+ messageDesc(file_world, 85);
638
633
 
639
634
  /**
640
635
  * Describes the message world.GetLocalNodeRequest.
641
636
  * Use `create(GetLocalNodeRequestSchema)` to create a new message.
642
637
  */
643
638
  export const GetLocalNodeRequestSchema = /*@__PURE__*/
644
- messageDesc(file_world, 87);
639
+ messageDesc(file_world, 86);
645
640
 
646
641
  /**
647
642
  * Describes the message world.GetLocalNodeResponse.
648
643
  * Use `create(GetLocalNodeResponseSchema)` to create a new message.
649
644
  */
650
645
  export const GetLocalNodeResponseSchema = /*@__PURE__*/
651
- messageDesc(file_world, 88);
646
+ messageDesc(file_world, 87);
652
647
 
653
648
  /**
654
649
  * Describes the message world.ObserverRequest.
655
650
  * Use `create(ObserverRequestSchema)` to create a new message.
656
651
  */
657
652
  export const ObserverRequestSchema = /*@__PURE__*/
658
- messageDesc(file_world, 89);
653
+ messageDesc(file_world, 88);
659
654
 
660
655
  /**
661
656
  * Describes the message world.ObserverState.
662
657
  * Use `create(ObserverStateSchema)` to create a new message.
663
658
  */
664
659
  export const ObserverStateSchema = /*@__PURE__*/
665
- messageDesc(file_world, 90);
660
+ messageDesc(file_world, 89);
666
661
 
667
662
  /**
668
663
  * Describes the message world.RunTaskRequest.
669
664
  * Use `create(RunTaskRequestSchema)` to create a new message.
670
665
  */
671
666
  export const RunTaskRequestSchema = /*@__PURE__*/
672
- messageDesc(file_world, 91);
667
+ messageDesc(file_world, 90);
673
668
 
674
669
  /**
675
670
  * Describes the message world.RunTaskResponse.
676
671
  * Use `create(RunTaskResponseSchema)` to create a new message.
677
672
  */
678
673
  export const RunTaskResponseSchema = /*@__PURE__*/
679
- messageDesc(file_world, 92);
674
+ messageDesc(file_world, 91);
680
675
 
681
676
  /**
682
677
  * Describes the message world.HardResetRequest.
683
678
  * Use `create(HardResetRequestSchema)` to create a new message.
684
679
  */
685
680
  export const HardResetRequestSchema = /*@__PURE__*/
686
- messageDesc(file_world, 93);
681
+ messageDesc(file_world, 92);
687
682
 
688
683
  /**
689
684
  * Describes the message world.HardResetResponse.
690
685
  * Use `create(HardResetResponseSchema)` to create a new message.
691
686
  */
692
687
  export const HardResetResponseSchema = /*@__PURE__*/
693
- messageDesc(file_world, 94);
688
+ messageDesc(file_world, 93);
694
689
 
695
690
  /**
696
691
  * Describes the message world.TimeSyncRequest.
697
692
  * Use `create(TimeSyncRequestSchema)` to create a new message.
698
693
  */
699
694
  export const TimeSyncRequestSchema = /*@__PURE__*/
700
- messageDesc(file_world, 95);
695
+ messageDesc(file_world, 94);
701
696
 
702
697
  /**
703
698
  * Describes the message world.TimeSyncResponse.
704
699
  * Use `create(TimeSyncResponseSchema)` to create a new message.
705
700
  */
706
701
  export const TimeSyncResponseSchema = /*@__PURE__*/
707
- messageDesc(file_world, 96);
702
+ messageDesc(file_world, 95);
708
703
 
709
704
  /**
710
705
  * Describes the enum world.Priority.
@@ -802,11 +797,23 @@ export const ClassificationBattleDimensionSchema = /*@__PURE__*/
802
797
  export const ClassificationBattleDimension = /*@__PURE__*/
803
798
  tsEnum(ClassificationBattleDimensionSchema);
804
799
 
800
+ /**
801
+ * Describes the enum world.Affiliation.
802
+ */
803
+ export const AffiliationSchema = /*@__PURE__*/
804
+ enumDesc(file_world, 8);
805
+
806
+ /**
807
+ * @generated from enum world.Affiliation
808
+ */
809
+ export const Affiliation = /*@__PURE__*/
810
+ tsEnum(AffiliationSchema);
811
+
805
812
  /**
806
813
  * Describes the enum world.NavigationMode.
807
814
  */
808
815
  export const NavigationModeSchema = /*@__PURE__*/
809
- enumDesc(file_world, 8);
816
+ enumDesc(file_world, 9);
810
817
 
811
818
  /**
812
819
  * @generated from enum world.NavigationMode
@@ -818,7 +825,7 @@ export const NavigationMode = /*@__PURE__*/
818
825
  * Describes the enum world.LinkStatus.
819
826
  */
820
827
  export const LinkStatusSchema = /*@__PURE__*/
821
- enumDesc(file_world, 9);
828
+ enumDesc(file_world, 10);
822
829
 
823
830
  /**
824
831
  * @generated from enum world.LinkStatus
@@ -830,7 +837,7 @@ export const LinkStatus = /*@__PURE__*/
830
837
  * Describes the enum world.DeviceState.
831
838
  */
832
839
  export const DeviceStateSchema = /*@__PURE__*/
833
- enumDesc(file_world, 10);
840
+ enumDesc(file_world, 11);
834
841
 
835
842
  /**
836
843
  * @generated from enum world.DeviceState
@@ -842,7 +849,7 @@ export const DeviceState = /*@__PURE__*/
842
849
  * Describes the enum world.ConfigurableState.
843
850
  */
844
851
  export const ConfigurableStateSchema = /*@__PURE__*/
845
- enumDesc(file_world, 11);
852
+ enumDesc(file_world, 12);
846
853
 
847
854
  /**
848
855
  * @generated from enum world.ConfigurableState
@@ -854,7 +861,7 @@ export const ConfigurableState = /*@__PURE__*/
854
861
  * Describes the enum world.SortField.
855
862
  */
856
863
  export const SortFieldSchema = /*@__PURE__*/
857
- enumDesc(file_world, 12);
864
+ enumDesc(file_world, 13);
858
865
 
859
866
  /**
860
867
  * @generated from enum world.SortField
@@ -866,7 +873,7 @@ export const SortField = /*@__PURE__*/
866
873
  * Describes the enum world.EntityChange.
867
874
  */
868
875
  export const EntityChangeSchema = /*@__PURE__*/
869
- enumDesc(file_world, 13);
876
+ enumDesc(file_world, 14);
870
877
 
871
878
  /**
872
879
  * @generated from enum world.EntityChange
@@ -878,7 +885,7 @@ export const EntityChange = /*@__PURE__*/
878
885
  * Describes the enum world.EntityComponent.
879
886
  */
880
887
  export const EntityComponentSchema = /*@__PURE__*/
881
- enumDesc(file_world, 14);
888
+ enumDesc(file_world, 15);
882
889
 
883
890
  /**
884
891
  * Proto field numbers of Entity component fields.
@@ -893,7 +900,7 @@ export const EntityComponent = /*@__PURE__*/
893
900
  * Describes the enum world.TaskStatus.
894
901
  */
895
902
  export const TaskStatusSchema = /*@__PURE__*/
896
- enumDesc(file_world, 15);
903
+ enumDesc(file_world, 16);
897
904
 
898
905
  /**
899
906
  * @generated from enum world.TaskStatus