@githolon/runtime 0.110.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.
Files changed (71) hide show
  1. package/LICENSE.md +45 -0
  2. package/dist/RUNTIME-SOURCES.sha256 +289 -0
  3. package/dist/application-reception.js +206 -0
  4. package/dist/nomos-native-runtime.js +22519 -0
  5. package/dist/nomos-runner.html +13 -0
  6. package/dist/nomos-runner.js +34769 -0
  7. package/dist/remote-reception.cjs +582 -0
  8. package/dist/remote-reception.js +555 -0
  9. package/dist/typescript-application-desk.js +796 -0
  10. package/package.json +71 -0
  11. package/runner/README.md +75 -0
  12. package/runner/build.ts +225 -0
  13. package/runner/node-entry.mjs +31858 -0
  14. package/runner/nomos-runner.html +13 -0
  15. package/runner/shims.js +17 -0
  16. package/src/admission_decision.ts +60 -0
  17. package/src/application_reception.ts +134 -0
  18. package/src/nominal_value.ts +122 -0
  19. package/src/protocol/nomos/custody/v1/snapshot_pb.d.ts +67 -0
  20. package/src/protocol/nomos/custody/v1/snapshot_pb.js +18 -0
  21. package/src/protocol/nomos/discovery/v1/workspace_placement_pb.d.ts +56 -0
  22. package/src/protocol/nomos/discovery/v1/workspace_placement_pb.js +18 -0
  23. package/src/protocol/nomos/kernel/v1/kernel_pb.d.ts +11183 -0
  24. package/src/protocol/nomos/kernel/v1/kernel_pb.js +2217 -0
  25. package/src/protocol/nomos/kernel/v1/progress_pb.d.ts +250 -0
  26. package/src/protocol/nomos/kernel/v1/progress_pb.js +66 -0
  27. package/src/protocol/nomos/runtime/v2/application_desk_pb.d.ts +162 -0
  28. package/src/protocol/nomos/runtime/v2/application_desk_pb.js +60 -0
  29. package/src/protocol/nomos/runtime/v2/application_readiness_desk_pb.d.ts +202 -0
  30. package/src/protocol/nomos/runtime/v2/application_readiness_desk_pb.js +67 -0
  31. package/src/protocol/nomos/runtime/v2/authentication_desk_pb.d.ts +158 -0
  32. package/src/protocol/nomos/runtime/v2/authentication_desk_pb.js +50 -0
  33. package/src/protocol/nomos/runtime/v2/compatibility_desk_pb.d.ts +204 -0
  34. package/src/protocol/nomos/runtime/v2/compatibility_desk_pb.js +68 -0
  35. package/src/protocol/nomos/runtime/v2/correspondence_desk_pb.d.ts +3661 -0
  36. package/src/protocol/nomos/runtime/v2/correspondence_desk_pb.js +735 -0
  37. package/src/protocol/nomos/runtime/v2/credentials_desk_pb.d.ts +122 -0
  38. package/src/protocol/nomos/runtime/v2/credentials_desk_pb.js +41 -0
  39. package/src/protocol/nomos/runtime/v2/custody_desk_pb.d.ts +611 -0
  40. package/src/protocol/nomos/runtime/v2/custody_desk_pb.js +123 -0
  41. package/src/protocol/nomos/runtime/v2/framework_pb.d.ts +211 -0
  42. package/src/protocol/nomos/runtime/v2/framework_pb.js +29 -0
  43. package/src/protocol/nomos/runtime/v2/identity_desk_pb.d.ts +305 -0
  44. package/src/protocol/nomos/runtime/v2/identity_desk_pb.js +61 -0
  45. package/src/protocol/nomos/runtime/v2/interaction_desk_pb.d.ts +73 -0
  46. package/src/protocol/nomos/runtime/v2/interaction_desk_pb.js +25 -0
  47. package/src/protocol/nomos/runtime/v2/law_desk_pb.d.ts +133 -0
  48. package/src/protocol/nomos/runtime/v2/law_desk_pb.js +39 -0
  49. package/src/protocol/nomos/runtime/v2/maintenance_desk_pb.d.ts +267 -0
  50. package/src/protocol/nomos/runtime/v2/maintenance_desk_pb.js +84 -0
  51. package/src/protocol/nomos/runtime/v2/model_adoption_desk_pb.d.ts +233 -0
  52. package/src/protocol/nomos/runtime/v2/model_adoption_desk_pb.js +57 -0
  53. package/src/protocol/nomos/runtime/v2/observability_desk_pb.d.ts +1015 -0
  54. package/src/protocol/nomos/runtime/v2/observability_desk_pb.js +230 -0
  55. package/src/protocol/nomos/runtime/v2/placement_desk_pb.d.ts +431 -0
  56. package/src/protocol/nomos/runtime/v2/placement_desk_pb.js +125 -0
  57. package/src/protocol/nomos/runtime/v2/receiving_group_desk_pb.d.ts +336 -0
  58. package/src/protocol/nomos/runtime/v2/receiving_group_desk_pb.js +78 -0
  59. package/src/protocol/nomos/runtime/v2/records_desk_pb.d.ts +716 -0
  60. package/src/protocol/nomos/runtime/v2/records_desk_pb.js +200 -0
  61. package/src/protocol/nomos/runtime/v2/recovery_desk_pb.d.ts +535 -0
  62. package/src/protocol/nomos/runtime/v2/recovery_desk_pb.js +160 -0
  63. package/src/protocol/nomos/runtime/v2/residency_desk_pb.d.ts +1162 -0
  64. package/src/protocol/nomos/runtime/v2/residency_desk_pb.js +212 -0
  65. package/src/protocol/nomos/runtime/v2/runtime_pb.d.ts +796 -0
  66. package/src/protocol/nomos/runtime/v2/runtime_pb.js +72 -0
  67. package/src/protocol/nomos/runtime/v2/sealing_desk_pb.d.ts +581 -0
  68. package/src/protocol/nomos/runtime/v2/sealing_desk_pb.js +149 -0
  69. package/src/remote_reception.public.d.ts +97 -0
  70. package/src/remote_reception.ts +446 -0
  71. package/src/typescript_application_desk.public.d.ts +62 -0
@@ -0,0 +1,2217 @@
1
+ // @generated by protoc-gen-es v2.13.0 with parameter "target=js+dts,import_extension=js"
2
+ // @generated from file nomos/kernel/v1/kernel.proto (package nomos.kernel.v1, syntax proto3)
3
+ /* eslint-disable */
4
+
5
+ import { enumDesc, fileDesc, messageDesc, serviceDesc, tsEnum } from "@bufbuild/protobuf/codegenv2";
6
+ import { file_google_protobuf_any } from "@bufbuild/protobuf/wkt";
7
+
8
+ /**
9
+ * Describes the file nomos/kernel/v1/kernel.proto.
10
+ */
11
+ export const file_nomos_kernel_v1_kernel = /*@__PURE__*/
12
+ fileDesc("Chxub21vcy9rZXJuZWwvdjEva2VybmVsLnByb3RvEg9ub21vcy5rZXJuZWwudjEixgkKC0NhbGxSZXF1ZXN0EhgKEHByb3RvY29sX3ZlcnNpb24YASABKA0SEgoKcmVxdWVzdF9pZBgCIAEoCRIsCgRvcGVuGAogASgLMhwubm9tb3Mua2VybmVsLnYxLk9wZW5SZXF1ZXN0SAASLgoFb2ZmZXIYCyABKAsyHS5ub21vcy5rZXJuZWwudjEuT2ZmZXJSZXF1ZXN0SAASLgoFcXVlcnkYDCABKAsyHS5ub21vcy5rZXJuZWwudjEuUXVlcnlSZXF1ZXN0SAASMAoGb3V0Ym94GA0gASgLMh4ubm9tb3Mua2VybmVsLnYxLk91dGJveFJlcXVlc3RIABIsCgRzeW5jGA4gASgLMhwubm9tb3Mua2VybmVsLnYxLlN5bmNSZXF1ZXN0SAASMgoHY3VzdG9keRgPIAEoCzIfLm5vbW9zLmtlcm5lbC52MS5DdXN0b2R5UmVxdWVzdEgAEkAKCWNvbmZpZ3VyZRgQIAEoCzIrLm5vbW9zLmtlcm5lbC52MS5LZXJuZWxDb25maWd1cmF0aW9uUmVxdWVzdEgAEkgKE3NpZ25fcHJlcGFyZWRfb2ZmZXIYESABKAsyKS5ub21vcy5rZXJuZWwudjEuU2lnblByZXBhcmVkT2ZmZXJSZXF1ZXN0SAASSgoUcHJlcGFyZV9yZW1vdGVfb2ZmZXIYEiABKAsyKi5ub21vcy5rZXJuZWwudjEuUHJlcGFyZVJlbW90ZU9mZmVyUmVxdWVzdEgAEk4KFnNpZ25fb2ZmZXJfcHJlcGFyYXRpb24YEyABKAsyLC5ub21vcy5rZXJuZWwudjEuU2lnbk9mZmVyUHJlcGFyYXRpb25SZXF1ZXN0SAASTgoWc2lnbl9iaXJ0aF9jZXJ0aWZpY2F0ZRgUIAEoCzIsLm5vbW9zLmtlcm5lbC52MS5TaWduQmlydGhDZXJ0aWZpY2F0ZVJlcXVlc3RIABJDChBzaWduaW5nX2lkZW50aXR5GBcgASgLMicubm9tb3Mua2VybmVsLnYxLlNpZ25pbmdJZGVudGl0eVJlcXVlc3RIABJWChpzaWduX2F1dGhvcml0eV9hdHRlc3RhdGlvbhgYIAEoCzIwLm5vbW9zLmtlcm5lbC52MS5TaWduQXV0aG9yaXR5QXR0ZXN0YXRpb25SZXF1ZXN0SAASPAoNbWludF90eXBlZF9pZBgZIAEoCzIjLm5vbW9zLmtlcm5lbC52MS5NaW50VHlwZWRJZFJlcXVlc3RIABJJChNlbmNyeXB0aW9uX2lkZW50aXR5GBogASgLMioubm9tb3Mua2VybmVsLnYxLkVuY3J5cHRpb25JZGVudGl0eVJlcXVlc3RIABI+Cg53cmFwX3Njb3BlX2tleRgbIAEoCzIkLm5vbW9zLmtlcm5lbC52MS5XcmFwU2NvcGVLZXlSZXF1ZXN0SAASQgoQdW53cmFwX3Njb3BlX2tleRgcIAEoCzImLm5vbW9zLmtlcm5lbC52MS5VbndyYXBTY29wZUtleVJlcXVlc3RIAEILCglvcGVyYXRpb25KBAgVEBZKBAgWEBdSFGluaXRpYWxpemVfd29ya3NwYWNlUhZhcHBseV93b3Jrc3BhY2VfZWZmZWN0IoMKCgxDYWxsUmVzcG9uc2USGAoQcHJvdG9jb2xfdmVyc2lvbhgBIAEoDRISCgpyZXF1ZXN0X2lkGAIgASgJEisKB2ZhaWx1cmUYCiABKAsyGC5ub21vcy5rZXJuZWwudjEuRmFpbHVyZUgAEi0KBG9wZW4YCyABKAsyHS5ub21vcy5rZXJuZWwudjEuT3BlblJlc3BvbnNlSAASLwoFb2ZmZXIYDCABKAsyHi5ub21vcy5rZXJuZWwudjEuT2ZmZXJSZXNwb25zZUgAEi8KBXF1ZXJ5GA0gASgLMh4ubm9tb3Mua2VybmVsLnYxLlF1ZXJ5UmVzcG9uc2VIABIxCgZvdXRib3gYDiABKAsyHy5ub21vcy5rZXJuZWwudjEuT3V0Ym94UmVzcG9uc2VIABItCgRzeW5jGA8gASgLMh0ubm9tb3Mua2VybmVsLnYxLlN5bmNSZXNwb25zZUgAEjMKB2N1c3RvZHkYECABKAsyIC5ub21vcy5rZXJuZWwudjEuQ3VzdG9keVJlc3BvbnNlSAASQQoJY29uZmlndXJlGBEgASgLMiwubm9tb3Mua2VybmVsLnYxLktlcm5lbENvbmZpZ3VyYXRpb25SZXNwb25zZUgAEkkKE3NpZ25fcHJlcGFyZWRfb2ZmZXIYEiABKAsyKi5ub21vcy5rZXJuZWwudjEuU2lnblByZXBhcmVkT2ZmZXJSZXNwb25zZUgAEksKFHByZXBhcmVfcmVtb3RlX29mZmVyGBMgASgLMisubm9tb3Mua2VybmVsLnYxLlByZXBhcmVSZW1vdGVPZmZlclJlc3BvbnNlSAASTwoWc2lnbl9vZmZlcl9wcmVwYXJhdGlvbhgUIAEoCzItLm5vbW9zLmtlcm5lbC52MS5TaWduT2ZmZXJQcmVwYXJhdGlvblJlc3BvbnNlSAASTwoWc2lnbl9iaXJ0aF9jZXJ0aWZpY2F0ZRgVIAEoCzItLm5vbW9zLmtlcm5lbC52MS5TaWduQmlydGhDZXJ0aWZpY2F0ZVJlc3BvbnNlSAASRAoQc2lnbmluZ19pZGVudGl0eRgYIAEoCzIoLm5vbW9zLmtlcm5lbC52MS5TaWduaW5nSWRlbnRpdHlSZXNwb25zZUgAElcKGnNpZ25fYXV0aG9yaXR5X2F0dGVzdGF0aW9uGBkgASgLMjEubm9tb3Mua2VybmVsLnYxLlNpZ25BdXRob3JpdHlBdHRlc3RhdGlvblJlc3BvbnNlSAASPQoNbWludF90eXBlZF9pZBgaIAEoCzIkLm5vbW9zLmtlcm5lbC52MS5NaW50VHlwZWRJZFJlc3BvbnNlSAASSgoTZW5jcnlwdGlvbl9pZGVudGl0eRgbIAEoCzIrLm5vbW9zLmtlcm5lbC52MS5FbmNyeXB0aW9uSWRlbnRpdHlSZXNwb25zZUgAEj8KDndyYXBfc2NvcGVfa2V5GBwgASgLMiUubm9tb3Mua2VybmVsLnYxLldyYXBTY29wZUtleVJlc3BvbnNlSAASQwoQdW53cmFwX3Njb3BlX2tleRgdIAEoCzInLm5vbW9zLmtlcm5lbC52MS5VbndyYXBTY29wZUtleVJlc3BvbnNlSABCCQoHb3V0Y29tZUoECBYQF0oECBcQGFIUaW5pdGlhbGl6ZV93b3Jrc3BhY2VSFmFwcGx5X3dvcmtzcGFjZV9lZmZlY3QitwIKB0ZhaWx1cmUSDAoEY29kZRgBIAEoCRIPCgdtZXNzYWdlGAIgASgJEi0KB2RldGFpbHMYAyABKAsyHC5ub21vcy5rZXJuZWwudjEuTm9tb3NTdHJ1Y3QSYQoiaWRlbnRpdHlfcHJvdmlkZXJfd2l0bmVzc19yZXF1aXJlZBgKIAEoCzIwLm5vbW9zLmtlcm5lbC52MS5JZGVudGl0eVByb3ZpZGVyV2l0bmVzc1JlcXVpcmVkSACIAQESPwoQaGlzdG9yeV9yZXF1aXJlZBgLIAEoCzIgLm5vbW9zLmtlcm5lbC52MS5IaXN0b3J5UmVxdWlyZWRIAYgBAUIlCiNfaWRlbnRpdHlfcHJvdmlkZXJfd2l0bmVzc19yZXF1aXJlZEITChFfaGlzdG9yeV9yZXF1aXJlZCJRCh9JZGVudGl0eVByb3ZpZGVyV2l0bmVzc1JlcXVpcmVkEhgKEHNvdXJjZV93b3Jrc3BhY2UYASABKAkSFAoMcmVxdWlyZWRfa2lkGAIgASgJIjwKDE9wZW5SZXNwb25zZRIsCgZyZXN1bHQYASABKAsyHC5ub21vcy5rZXJuZWwudjEuTm9tb3NTdHJ1Y3QiugQKDU9mZmVyUmVzcG9uc2USMgoIYWRtaXR0ZWQYASABKAsyHi5ub21vcy5rZXJuZWwudjEuT2ZmZXJBZG1pdHRlZEgAEjAKB3JlZnVzZWQYAiABKAsyHS5ub21vcy5rZXJuZWwudjEuT2ZmZXJSZWZ1c2VkSAASOwoNZGVhZF9sZXR0ZXJlZBgDIAEoCzIiLm5vbW9zLmtlcm5lbC52MS5PZmZlckRlYWRMZXR0ZXJlZEgAEjgKC3F1YXJhbnRpbmVkGAQgASgLMiEubm9tb3Mua2VybmVsLnYxLk9mZmVyUXVhcmFudGluZWRIABJKChVibG9ja2VkX29uX2RlcGVuZGVuY3kYBSABKAsyKS5ub21vcy5rZXJuZWwudjEuT2ZmZXJCbG9ja2VkT25EZXBlbmRlbmN5SAASMgoIcHJlcGFyZWQYBiABKAsyHi5ub21vcy5rZXJuZWwudjEuT2ZmZXJQcmVwYXJlZEgAEkIKEHdvcmtzcGFjZV9lZmZlY3QYByABKAsyKC5ub21vcy5rZXJuZWwudjEuV29ya3NwYWNlRWZmZWN0SWRlbnRpdHkSGwoOanVkZ2VkX2F0X2hlYWQYCCABKAlIAYgBARJNChJqdWRnbWVudF9zaWduYXR1cmUYCSABKAsyMS5ub21vcy5rZXJuZWwudjEuV29ya3NwYWNlRWZmZWN0SnVkZ21lbnRTaWduYXR1cmVCCQoHb3V0Y29tZUIRCg9fanVkZ2VkX2F0X2hlYWQifwogV29ya3NwYWNlRWZmZWN0SnVkZ21lbnRTaWduYXR1cmUSDwoHdmVyc2lvbhgBIAEoDRISCgpwdWJsaWNfa2V5GAIgASgMEhEKCWtleV9lcG9jaBgDIAEoEhIRCglzaWduYXR1cmUYBCABKAwSEAoIanVkZ21lbnQYBSABKAwiqAEKF1dvcmtzcGFjZUVmZmVjdElkZW50aXR5EhgKEHNvdXJjZV93b3Jrc3BhY2UYASABKAkSIAoYc291cmNlX3dvcmtzcGFjZV9nZW5lc2lzGAIgASgJEhgKEHRhcmdldF93b3Jrc3BhY2UYAyABKAkSIAoYdGFyZ2V0X3dvcmtzcGFjZV9nZW5lc2lzGAQgASgJEhUKDWVmZmVjdF9kaWdlc3QYBSABKAkiVwocV29ya3NwYWNlRWZmZWN0U3RhdHVzUmVxdWVzdBIgChhzb3VyY2Vfd29ya3NwYWNlX2dlbmVzaXMYASABKAkSFQoNZWZmZWN0X2RpZ2VzdBgCIAEoCSJRCh1Xb3Jrc3BhY2VFZmZlY3RTdGF0dXNSZXNwb25zZRIwCghqdWRnbWVudBgBIAEoCzIeLm5vbW9zLmtlcm5lbC52MS5PZmZlclJlc3BvbnNlIoYCCiNSZWNvcmRXb3Jrc3BhY2VFZmZlY3RPdXRjb21lUmVxdWVzdBIwCgZzb3VyY2UYASABKAsyIC5ub21vcy5rZXJuZWwudjEuV29ya3NwYWNlVGFyZ2V0EhkKEXNvdXJjZV9vZmZlcl9wYXRoGAIgASgJEhUKC21haWxib3hfdXJsGAMgASgJSAASPQoRcmVjaXBpZW50X2N1c3RvZHkYBSABKAsyIC5ub21vcy5rZXJuZWwudjEuV29ya3NwYWNlVGFyZ2V0SAASMAoIanVkZ21lbnQYBCABKAsyHi5ub21vcy5rZXJuZWwudjEuT2ZmZXJSZXNwb25zZUIKCghldmlkZW5jZSJaCh5SZWNvcmRlZFdvcmtzcGFjZUVmZmVjdE91dGNvbWUSEQoJcmVmZXJlbmNlGAEgASgJEgsKA29pZBgCIAEoCRIYChB0ZXJtaW5hbF9yZWZ1c2FsGAMgASgIIp0ECg1PZmZlckFkbWl0dGVkEgwKBGhlYWQYASABKAkSEQoJaW50ZW50X2lkGAIgASgJEhcKCmludGVudF9vdXQYAyABKAlIAIgBARIzCgdjcmVhdGVkGAQgAygLMiIubm9tb3Mua2VybmVsLnYxLk9mZmVyQWdncmVnYXRlUmVmEjQKCGFmZmVjdGVkGAUgAygLMiIubm9tb3Mua2VybmVsLnYxLk9mZmVyQWdncmVnYXRlUmVmEiwKBGJvcm4YBiADKAsyHi5ub21vcy5rZXJuZWwudjEuQm9ybldvcmtzcGFjZRI1Cg5iaXJ0aF9vdXRjb21lcxgHIAMoCzIdLm5vbW9zLmtlcm5lbC52MS5CaXJ0aE91dGNvbWUSNwoMa2VybmVsX3NwYW5zGAggASgLMhwubm9tb3Mua2VybmVsLnYxLktlcm5lbFNwYW5zSAGIAQESDwoHZHJ5X3J1bhgJIAEoCBIfChJpbnN0YWxsZWRfbGF3X2hhc2gYCiABKAlIAogBARI5CglwbGFjZW1lbnQYCyABKAsyIS5ub21vcy5rZXJuZWwudjEuUGxhY2VtZW50QWRvcHRlZEgDiAEBEhcKD2FscmVhZHlfYXBwbGllZBgMIAEoCEINCgtfaW50ZW50X291dEIPCg1fa2VybmVsX3NwYW5zQhUKE19pbnN0YWxsZWRfbGF3X2hhc2hCDAoKX3BsYWNlbWVudCItChFPZmZlckFnZ3JlZ2F0ZVJlZhIMCgR0eXBlGAEgASgJEgoKAmlkGAIgASgJIjAKDUJvcm5Xb3Jrc3BhY2USEQoJd29ya3NwYWNlGAEgASgJEgwKBGhlYWQYAiABKAkiywMKDEJpcnRoT3V0Y29tZRIWCgl3b3Jrc3BhY2UYASABKAlIAIgBARIzCgZzdGF0dXMYAiABKA4yIy5ub21vcy5rZXJuZWwudjEuQmlydGhPdXRjb21lU3RhdHVzEhMKBnJlYXNvbhgDIAEoCUgBiAEBEhEKBGNvZGUYBCABKAlIAogBARIQCghyZXBsYXllZBgFIAEoCBIVCghsYXdfaGFzaBgGIAEoCUgDiAEBEh0KEHBhcmVudF93b3Jrc3BhY2UYByABKAlIBIgBARIcCg9jaGlsZF93b3Jrc3BhY2UYCCABKAlIBYgBARInChpjZXJ0aWZpY2F0ZV9yZWZ1c2FsX3JlYXNvbhgJIAEoCUgGiAEBEjQKB3JlZnVzYWwYCiABKAsyHi5ub21vcy5rZXJuZWwudjEuS2VybmVsUmVmdXNhbEgHiAEBQgwKCl93b3Jrc3BhY2VCCQoHX3JlYXNvbkIHCgVfY29kZUILCglfbGF3X2hhc2hCEwoRX3BhcmVudF93b3Jrc3BhY2VCEgoQX2NoaWxkX3dvcmtzcGFjZUIdChtfY2VydGlmaWNhdGVfcmVmdXNhbF9yZWFzb25CCgoIX3JlZnVzYWwiLwoQS2VybmVsU3Bhbk1ldHJpYxIMCgRuYW1lGAEgASgJEg0KBXZhbHVlGAIgASgEIqMBCgpLZXJuZWxTcGFuEg0KBWxhYmVsGAEgASgJEhAKCHRvdGFsX3VzGAIgASgEEg8KB3JlY29yZHMYAyABKAQSMQoGcGhhc2VzGAQgAygLMiEubm9tb3Mua2VybmVsLnYxLktlcm5lbFNwYW5NZXRyaWMSMAoFbm90ZXMYBSADKAsyIS5ub21vcy5rZXJuZWwudjEuS2VybmVsU3Bhbk1ldHJpYyJxCgtLZXJuZWxTcGFucxIvCgpvcGVyYXRpb25zGAEgAygLMhsubm9tb3Mua2VybmVsLnYxLktlcm5lbFNwYW4SMQoGZW5naW5lGAIgAygLMiEubm9tb3Mua2VybmVsLnYxLktlcm5lbFNwYW5NZXRyaWMiYQoNRG9tYWluUmVmdXNhbBISCgpsYXdfc2hhMjU2GAEgASgMEhEKCWludmFyaWFudBgCIAEoCRIVCg10eXBlX2lkZW50aXR5GAMgASgJEhIKCnZhbHVlX3VzZGEYBCABKAwizgEKDE9mZmVyUmVmdXNlZBIVCghvZmZlcl9pZBgBIAEoCUgAiAEBEi8KB3JlZnVzYWwYAiABKAsyHi5ub21vcy5rZXJuZWwudjEuS2VybmVsUmVmdXNhbBIxCgtkaWFnbm9zdGljcxgDIAEoCzIcLm5vbW9zLmtlcm5lbC52MS5Ob21vc1N0cnVjdBI2Cg5kb21haW5fcmVmdXNhbBgEIAEoCzIeLm5vbW9zLmtlcm5lbC52MS5Eb21haW5SZWZ1c2FsQgsKCV9vZmZlcl9pZCJ6ChFPZmZlckRlYWRMZXR0ZXJlZBIVCghvZmZlcl9pZBgBIAEoCUgAiAEBEg4KBnJlYXNvbhgCIAEoCRIxCgtkaWFnbm9zdGljcxgDIAEoCzIcLm5vbW9zLmtlcm5lbC52MS5Ob21vc1N0cnVjdEILCglfb2ZmZXJfaWQirgEKEE9mZmVyUXVhcmFudGluZWQSFQoIb2ZmZXJfaWQYASABKAlIAIgBARIZChFhdXRob3JlZF9sYXdfaGFzaBgCIAEoCRIYChBjdXJyZW50X2xhd19oYXNoGAMgASgJEg4KBnJlYXNvbhgEIAEoCRIxCgtkaWFnbm9zdGljcxgFIAEoCzIcLm5vbW9zLmtlcm5lbC52MS5Ob21vc1N0cnVjdEILCglfb2ZmZXJfaWQigQEKGE9mZmVyQmxvY2tlZE9uRGVwZW5kZW5jeRIVCghvZmZlcl9pZBgBIAEoCUgAiAEBEg4KBmRldGFpbBgCIAEoCRIxCgtkaWFnbm9zdGljcxgDIAEoCzIcLm5vbW9zLmtlcm5lbC52MS5Ob21vc1N0cnVjdEILCglfb2ZmZXJfaWQivwEKDU9mZmVyUHJlcGFyZWQSHAoUYXV0aG9yZWRfY2hhbmdlX3VzZGEYASABKAwSGQoRd29ya3NwYWNlX2JpbmRpbmcYAiABKAkSGAoQcHJlcGFyZWRfYXRfaGVhZBgDIAEoCRIhChlhdXRob3Jfc2lnbmF0dXJlX3JlcXVpcmVkGAQgASgIEjgKCGRldGFjaGVkGAUgASgLMiYubm9tb3Mua2VybmVsLnYxLkRldGFjaGVkU2lnbmluZ0lucHV0cyJjChVEZXRhY2hlZFNpZ25pbmdJbnB1dHMSEgoKcHVibGljX2tleRgBIAEoDBIRCglpbnRlbnRfaWQYAiABKAkSDgoGYXV0aG9yGAMgASgMEhMKC29mZmVyX3Rva2VuGAQgASgJIpUBChREZXRhY2hlZFNpZ25lZENoYW5nZRIcChRhdXRob3JlZF9jaGFuZ2VfdXNkYRgBIAEoDBISCgpwdWJsaWNfa2V5GAIgASgMEhgKEGF1dGhvcl9zaWduYXR1cmUYAyABKAwSEgoKb2ZmZXJfYmFzZRgEIAEoCRIdChVvZmZlcl90b2tlbl9zaWduYXR1cmUYBSABKAwiagoYU2lnblByZXBhcmVkT2ZmZXJSZXF1ZXN0EhwKFGF1dGhvcmVkX2NoYW5nZV91c2RhGAEgASgMEhkKEXdvcmtzcGFjZV9iaW5kaW5nGAIgASgJEhUKDWF1dGhvcl9zZWNyZXQYAyABKAwiNwoZU2lnblByZXBhcmVkT2ZmZXJSZXNwb25zZRIaChJzaWduZWRfY2hhbmdlX3VzZGEYASABKAwirQEKGVByZXBhcmVSZW1vdGVPZmZlclJlcXVlc3QSFQoNb2ZmZXJfcmVxdWVzdBgBIAEoDBIZChF3b3Jrc3BhY2VfYmluZGluZxgCIAEoCRIYChBwcmVwYXJlZF9hdF9oZWFkGAMgASgJEhIKCnB1YmxpY19rZXkYBCABKAwSEQoJc2lnbmF0dXJlGAUgASgMEh0KFXJlcXVpcmVkX2N1c3RvZHlfaGVhZBgGIAEoCSJQChlPZmZlclByZXBhcmF0aW9uQ2hhbGxlbmdlEhkKEXdvcmtzcGFjZV9iaW5kaW5nGAEgASgJEhgKEHByZXBhcmVkX2F0X2hlYWQYAiABKAkimQEKGlByZXBhcmVSZW1vdGVPZmZlclJlc3BvbnNlEj8KCWNoYWxsZW5nZRgBIAEoCzIqLm5vbW9zLmtlcm5lbC52MS5PZmZlclByZXBhcmF0aW9uQ2hhbGxlbmdlSAASLwoFb2ZmZXIYAiABKAsyHi5ub21vcy5rZXJuZWwudjEuT2ZmZXJSZXNwb25zZUgAQgkKB291dGNvbWUigAEKG1NpZ25PZmZlclByZXBhcmF0aW9uUmVxdWVzdBIVCg1vZmZlcl9yZXF1ZXN0GAEgASgMEhkKEXdvcmtzcGFjZV9iaW5kaW5nGAIgASgJEhgKEHByZXBhcmVkX2F0X2hlYWQYAyABKAkSFQoNYXV0aG9yX3NlY3JldBgEIAEoDCJFChxTaWduT2ZmZXJQcmVwYXJhdGlvblJlc3BvbnNlEhIKCnB1YmxpY19rZXkYASABKAwSEQoJc2lnbmF0dXJlGAIgASgMIqQBChZTaWduaW5nSWRlbnRpdHlSZXF1ZXN0EjsKCGdlbmVyYXRlGAEgASgLMicubm9tb3Mua2VybmVsLnYxLkdlbmVyYXRlU2lnbmluZ0tleVBhaXJIABJACg1kZXJpdmVfcHVibGljGAIgASgLMicubm9tb3Mua2VybmVsLnYxLkRlcml2ZVNpZ25pbmdQdWJsaWNLZXlIAEILCglvcGVyYXRpb24iGAoWR2VuZXJhdGVTaWduaW5nS2V5UGFpciIoChZEZXJpdmVTaWduaW5nUHVibGljS2V5Eg4KBnNlY3JldBgBIAEoDCKWAQoXU2lnbmluZ0lkZW50aXR5UmVzcG9uc2USNAoJZ2VuZXJhdGVkGAEgASgLMh8ubm9tb3Mua2VybmVsLnYxLlNpZ25pbmdLZXlQYWlySAASOwoOZGVyaXZlZF9wdWJsaWMYAiABKAsyIS5ub21vcy5rZXJuZWwudjEuU2lnbmluZ1B1YmxpY0tleUgAQggKBnJlc3VsdCI0Cg5TaWduaW5nS2V5UGFpchIOCgZzZWNyZXQYASABKAwSEgoKcHVibGljX2tleRgCIAEoDCImChBTaWduaW5nUHVibGljS2V5EhIKCnB1YmxpY19rZXkYASABKAwinAEKH1NpZ25BdXRob3JpdHlBdHRlc3RhdGlvblJlcXVlc3QSFQoNc2lnbmVyX3NlY3JldBgBIAEoDBIaChJhc3NlcnRlcl93b3Jrc3BhY2UYAiABKAkSDgoGb2JqZWN0GAMgASgJEhAKCHJlbGF0aW9uGAQgASgJEg8KB3N1YmplY3QYBSABKAkSEwoLYXR0ZXN0ZWRfYXQYBiABKAkiSQogU2lnbkF1dGhvcml0eUF0dGVzdGF0aW9uUmVzcG9uc2USEQoJc2lnbmF0dXJlGAEgASgMEhIKCnB1YmxpY19rZXkYAiABKAwiRAoSTWludFR5cGVkSWRSZXF1ZXN0EhAKCHR5cGVfdGFnGAEgASgJEhwKFGNhcHR1cmVkX3VuaXhfbWlsbGlzGAIgASgEIiEKE01pbnRUeXBlZElkUmVzcG9uc2USCgoCaWQYASABKAkiGwoZRW5jcnlwdGlvbklkZW50aXR5UmVxdWVzdCJEChpFbmNyeXB0aW9uSWRlbnRpdHlSZXNwb25zZRISCgpzZWNyZXRfa2V5GAEgASgMEhIKCnB1YmxpY19rZXkYAiABKAwiRgoTV3JhcFNjb3BlS2V5UmVxdWVzdBIcChRyZWNpcGllbnRfcHVibGljX2tleRgBIAEoDBIRCglzY29wZV9rZXkYAiABKAwiSAoUV3JhcFNjb3BlS2V5UmVzcG9uc2USHAoUZXBoZW1lcmFsX3B1YmxpY19rZXkYASABKAwSEgoKY2lwaGVydGV4dBgCIAEoDCJnChVVbndyYXBTY29wZUtleVJlcXVlc3QSHAoUcmVjaXBpZW50X3NlY3JldF9rZXkYASABKAwSHAoUZXBoZW1lcmFsX3B1YmxpY19rZXkYAiABKAwSEgoKY2lwaGVydGV4dBgDIAEoDCIrChZVbndyYXBTY29wZUtleVJlc3BvbnNlEhEKCXNjb3BlX2tleRgBIAEoDCKTAQoNS2VybmVsUmVmdXNhbBIwCgRjb2RlGAEgASgOMiIubm9tb3Mua2VybmVsLnYxLktlcm5lbFJlZnVzYWxDb2RlEg8KB21lc3NhZ2UYAiABKAkSLQoHZGV0YWlscxgDIAEoCzIcLm5vbW9zLmtlcm5lbC52MS5Ob21vc1N0cnVjdBIQCgh0ZXJtaW5hbBgEIAEoCCLtDAoNUXVlcnlSZXNwb25zZRIVCgtyZXN1bHRfdXNkYRgCIAEoDEgAEiwKBXZhbHVlGAEgASgLMhsubm9tb3Mua2VybmVsLnYxLk5vbW9zVmFsdWVIABJKChNhdXRob3JpemF0aW9uX2NoZWNrGAogASgLMisubm9tb3Mua2VybmVsLnYxLkF1dGhvcml6YXRpb25DaGVja1Jlc3BvbnNlSAASTAoUYXV0aG9yaXphdGlvbl9leHBhbmQYCyABKAsyLC5ub21vcy5rZXJuZWwudjEuQXV0aG9yaXphdGlvbkV4cGFuZFJlc3BvbnNlSAASPgoNb3NnaV9yZXNvdXJjZRgMIAEoCzIlLm5vbW9zLmtlcm5lbC52MS5Pc2dpUmVzb3VyY2VSZXNwb25zZUgAEkoKE2Zyb250aWVyX3RyYW5zaXRpb24YDSABKAsyKy5ub21vcy5rZXJuZWwudjEuRnJvbnRpZXJUcmFuc2l0aW9uUmVzcG9uc2VIABJLChRvd25lZF9kZXZpY2VfcmVxdWVzdBgOIAEoCzIrLm5vbW9zLmtlcm5lbC52MS5Pd25lZERldmljZVJlcXVlc3RSZXNwb25zZUgAEk8KFm93bmVkX3ByZXBhcmVfYXBwcm92YWwYDyABKAsyLS5ub21vcy5rZXJuZWwudjEuT3duZWRQcmVwYXJlQXBwcm92YWxSZXNwb25zZUgAEhcKDWludGVnZXJfdmFsdWUYECABKBJIABJQChZhdXRoZW50aWNhdGlvbl9wb3N0dXJlGBEgASgLMi4ubm9tb3Mua2VybmVsLnYxLkF1dGhlbnRpY2F0aW9uUG9zdHVyZVJlc3BvbnNlSAASSAoQY2hpbGRfd29ya3NwYWNlcxgSIAEoCzIsLm5vbW9zLmtlcm5lbC52MS5DaGlsZFdvcmtzcGFjZVF1ZXJ5UmVzcG9uc2VIABJZChZhdXRob3JpbmdfcmVxdWlyZW1lbnRzGBMgASgLMjcubm9tb3Mua2VybmVsLnYxLkRpcmVjdGl2ZUF1dGhvcmluZ1JlcXVpcmVtZW50c1Jlc3BvbnNlSAASPgoNd2FybV9wcm9ncmVzcxgVIAEoCzIlLm5vbW9zLmtlcm5lbC52MS5XYXJtUHJvZ3Jlc3NSZXNwb25zZUgAElUKGWlkZW50aXR5X3Byb3ZpZGVyX3dpdG5lc3MYFiABKAsyMC5ub21vcy5rZXJuZWwudjEuSWRlbnRpdHlQcm92aWRlcldpdG5lc3NSZXNwb25zZUgAElIKF2ludGVyZmFjZV9jb21wYXRpYmlsaXR5GBcgASgLMi8ubm9tb3Mua2VybmVsLnYxLkludGVyZmFjZUNvbXBhdGliaWxpdHlSZXNwb25zZUgAEjIKEmFwcGxpY2F0aW9uX3Jlc3VsdBgYIAEoCzIULmdvb2dsZS5wcm90b2J1Zi5BbnlIABJKChNtYWludGVuYW5jZV9xdWFudHVtGBkgASgLMisubm9tb3Mua2VybmVsLnYxLk1haW50ZW5hbmNlUXVhbnR1bVJlc3BvbnNlSAASPwoScmVhZF9pbmRleF9wZW5kaW5nGBogASgLMiEubm9tb3Mua2VybmVsLnYxLlJlYWRJbmRleFBlbmRpbmdIABJHChJmdWxsX2hpc3RvcnlfYXVkaXQYGyABKAsyKS5ub21vcy5rZXJuZWwudjEuRnVsbEhpc3RvcnlBdWRpdFJlc3BvbnNlSAASUwoYd29ya3NwYWNlX2VmZmVjdF9yZWNlaXB0GBwgASgLMi8ubm9tb3Mua2VybmVsLnYxLldvcmtzcGFjZUVmZmVjdFJlY2VpcHRSZXNwb25zZUgAEksKFG9wZW5fYXBpX2Rlc2NyaXB0aW9uGB0gASgLMisubm9tb3Mua2VybmVsLnYxLk9wZW5BcGlEZXNjcmlwdGlvblJlc3BvbnNlSAASVwoaaW5zdGFsbGVkX2xhd19kZWNsYXJhdGlvbnMYHiABKAsyMS5ub21vcy5rZXJuZWwudjEuSW5zdGFsbGVkTGF3RGVjbGFyYXRpb25zUmVzcG9uc2VIABJJChh2ZXJpZnlfY2hhaW5fZGlhZ25vc3RpY3MYFCABKAsyJy5ub21vcy5rZXJuZWwudjEuVmVyaWZ5Q2hhaW5EaWFnbm9zdGljc0IICgZyZXN1bHQiMwoaT3BlbkFwaURlc2NyaXB0aW9uUmVzcG9uc2USFQoNZG9jdW1lbnRfanNvbhgBIAEoCSI+ChtJbnRlcmZhY2VDb21wYXRpYmlsaXR5UXVlcnkSHwoXYXBwbGljYXRpb25fbWF0cml4X3VzZGEYASABKAwisAIKFkludGVyZmFjZU1lbWJlclZlcmRpY3QSDgoGZG9tYWluGAEgASgJEjIKBGtpbmQYAiABKA4yJC5ub21vcy5rZXJuZWwudjEuSW50ZXJmYWNlTWVtYmVyS2luZBIOCgZtZW1iZXIYAyABKAkSEgoFZmllbGQYBCABKAlIAIgBARI9CgZzdGF0dXMYBSABKA4yLS5ub21vcy5rZXJuZWwudjEuSW50ZXJmYWNlQ29tcGF0aWJpbGl0eVN0YXR1cxI9CgZyZWFzb24YBiABKA4yLS5ub21vcy5rZXJuZWwudjEuSW50ZXJmYWNlQ29tcGF0aWJpbGl0eVJlYXNvbhIXCgpkaWFnbm9zdGljGAcgASgJSAGIAQFCCAoGX2ZpZWxkQg0KC19kaWFnbm9zdGljIooBCh5JbnRlcmZhY2VDb21wYXRpYmlsaXR5UmVzcG9uc2USEgoKY29tcGF0aWJsZRgBIAEoCBI4CgdtZW1iZXJzGAIgAygLMicubm9tb3Mua2VybmVsLnYxLkludGVyZmFjZU1lbWJlclZlcmRpY3QSGgoSd29ya3NwYWNlX2Zyb250aWVyGAMgASgJIv8BChRXYXJtUHJvZ3Jlc3NSZXNwb25zZRIbChNtYWludGVuYW5jZV9wZW5kaW5nGAEgASgIEiQKF3ByZXBhcmVkX2NvbW1hbmRfZG9tYWluGAIgASgJSACIAQESJQoYcHJlcGFyZWRfY29tbWFuZF9wYWNrYWdlGAMgASgJSAGIAQESJgoZcHJlcGFyZWRfY29tbWFuZF9zZWxlY3RvchgEIAEoCUgCiAEBQhoKGF9wcmVwYXJlZF9jb21tYW5kX2RvbWFpbkIbChlfcHJlcGFyZWRfY29tbWFuZF9wYWNrYWdlQhwKGl9wcmVwYXJlZF9jb21tYW5kX3NlbGVjdG9yIlEKEFJlYWRJbmRleFBlbmRpbmcSEQoJd29ya3NwYWNlGAEgASgJEg4KBmJyYW5jaBgCIAEoCRIaChJyZXF1ZXN0ZWRfZnJvbnRpZXIYAyABKAkijQIKF01haW50ZW5hbmNlUXVhbnR1bVF1ZXJ5Eh0KEHJlcXVlc3RlZF9kb21haW4YASABKAlIAIgBARIeChFyZXF1ZXN0ZWRfcGFja2FnZRgCIAEoCUgBiAEBEiAKE3JlcXVlc3RlZF9kaXJlY3RpdmUYAyABKAlIAogBARIXCg9sb2NhbF9yZWFkX29ubHkYBCABKAgSHAoUbWFpbnRhaW5fZ2l0X2N1c3RvZHkYBSABKAgSFwoPcmVhZF9pbmRleF9vbmx5GAYgASgIQhMKEV9yZXF1ZXN0ZWRfZG9tYWluQhQKEl9yZXF1ZXN0ZWRfcGFja2FnZUIWChRfcmVxdWVzdGVkX2RpcmVjdGl2ZSKCBAoaTWFpbnRlbmFuY2VRdWFudHVtUmVzcG9uc2USEQoJd29ya3NwYWNlGAEgASgJEhsKE21haW50ZW5hbmNlX3BlbmRpbmcYAiABKAgSMAoFcGhhc2UYAyABKA4yIS5ub21vcy5rZXJuZWwudjEuTWFpbnRlbmFuY2VQaGFzZRIZCgxnaXRfZnJvbnRpZXIYBCABKAlIAIgBARIaCg1yZWFkX2Zyb250aWVyGAUgASgJSAGIAQESHAoPc3FsaXRlX2Zyb250aWVyGAYgASgJSAKIAQESEgoKd29ya191bml0cxgHIAEoBBIWCg5lbGFwc2VkX21pY3JvcxgIIAEoBBIkChdwcmVwYXJlZF9jb21tYW5kX2RvbWFpbhgJIAEoCUgDiAEBEiUKGHByZXBhcmVkX2NvbW1hbmRfcGFja2FnZRgKIAEoCUgEiAEBEiYKGXByZXBhcmVkX2NvbW1hbmRfc2VsZWN0b3IYCyABKAlIBYgBAUIPCg1fZ2l0X2Zyb250aWVyQhAKDl9yZWFkX2Zyb250aWVyQhIKEF9zcWxpdGVfZnJvbnRpZXJCGgoYX3ByZXBhcmVkX2NvbW1hbmRfZG9tYWluQhsKGV9wcmVwYXJlZF9jb21tYW5kX3BhY2thZ2VCHAoaX3ByZXBhcmVkX2NvbW1hbmRfc2VsZWN0b3IiSAoNT3NnaUF0dHJpYnV0ZRIMCgRuYW1lGAEgASgJEg0KBXZhbHVlGAIgASgJEhEKBHR5cGUYAyABKAlIAIgBAUIHCgVfdHlwZSIsCg1Pc2dpRGlyZWN0aXZlEgwKBG5hbWUYASABKAkSDQoFdmFsdWUYAiABKAkiiwEKDk9zZ2lDYXBhYmlsaXR5EhEKCW5hbWVzcGFjZRgBIAEoCRIyCgphdHRyaWJ1dGVzGAIgAygLMh4ubm9tb3Mua2VybmVsLnYxLk9zZ2lBdHRyaWJ1dGUSMgoKZGlyZWN0aXZlcxgDIAMoCzIeLm5vbW9zLmtlcm5lbC52MS5Pc2dpRGlyZWN0aXZlIowBCg9Pc2dpUmVxdWlyZW1lbnQSEQoJbmFtZXNwYWNlGAEgASgJEjIKCmF0dHJpYnV0ZXMYAiADKAsyHi5ub21vcy5rZXJuZWwudjEuT3NnaUF0dHJpYnV0ZRIyCgpkaXJlY3RpdmVzGAMgAygLMh4ubm9tb3Mua2VybmVsLnYxLk9zZ2lEaXJlY3RpdmUimgEKFE9zZ2lSZXNvdXJjZVJlc3BvbnNlEhMKC3NvdXJjZV91c2RhGAEgASgMEjUKDGNhcGFiaWxpdGllcxgCIAMoCzIfLm5vbW9zLmtlcm5lbC52MS5Pc2dpQ2FwYWJpbGl0eRI2CgxyZXF1aXJlbWVudHMYAyADKAsyIC5ub21vcy5rZXJuZWwudjEuT3NnaVJlcXVpcmVtZW50IucBChNWZXJpZnlDaGFpblN0ZXBTcGFuEg0KBWluZGV4GAEgASgEEhIKCmNvbW1pdF9vaWQYAiABKAkSDgoGZG9tYWluGAMgASgJEhEKCWRpcmVjdGl2ZRgEIAEoCRIQCgh0b3RhbF91cxgFIAEoBBI2CgZwaGFzZXMYBiABKAsyJi5ub21vcy5rZXJuZWwudjEuVmVyaWZ5Q2hhaW5TdGVwUGhhc2VzEkAKDmVuZ2luZV90aW1pbmdzGAcgAygLMigubm9tb3Mua2VybmVsLnYxLlZlcmlmeUNoYWluRW5naW5lVGltaW5nIpgCChVWZXJpZnlDaGFpblN0ZXBQaGFzZXMSHgoWcnVudGltZV9sYXdfcmVmcmVzaF91cxgBIAEoBBITCgttYW5pZmVzdF91cxgCIAEoBBIZChFsYXdfcmVzb2x1dGlvbl91cxgDIAEoBBIdChVtYW5hZ2VkX3RyYW5zaXRpb25fdXMYBCABKAQSFAoMcHJpbmNpcGFsX3VzGAUgASgEEhQKDGV2b2x1dGlvbl91cxgGIAEoBBIaChJjb2xvY2F0ZWRfcmVhZHNfdXMYByABKAQSIQoZdHlwZWRfaW5zdGFsbF92ZXJpZmllcl91cxgIIAEoBBIUCgxhZG1pc3Npb25fdXMYCSABKAQSDwoHZm9sZF91cxgKIAEoBCLaBQoWVmVyaWZ5Q2hhaW5EaWFnbm9zdGljcxIuCgR3YWxrGAEgASgOMiAubm9tb3Mua2VybmVsLnYxLlZlcmlmeUNoYWluV2FsaxIQCgh0b3RhbF91cxgCIAEoBBIbChNyZWZlcmVuY2VfbG9va3VwX3VzGAMgASgEEhoKEnJlcG9zaXRvcnlfb3Blbl91cxgEIAEoBBIVCg1jaGFpbl9yZWFkX3VzGAUgASgEEhYKDmVuZ2luZV9pbml0X3VzGAYgASgEEhgKEHRpbWVsaW5lX3JlYWRfdXMYByABKAQSGAoQbGF3X2h5ZHJhdGlvbl91cxgIIAEoBBIbChNyZWNvdmVyeV9wcmVzY2FuX3VzGAkgASgEEhgKEGZvbGRfZnJvbnRpZXJfdXMYCiABKAQSMwoFc3RlcHMYCyADKAsyJC5ub21vcy5rZXJuZWwudjEuVmVyaWZ5Q2hhaW5TdGVwU3BhbhJACg5lbmdpbmVfdGltaW5ncxgMIAMoCzIoLm5vbW9zLmtlcm5lbC52MS5WZXJpZnlDaGFpbkVuZ2luZVRpbWluZxJNChVsYXdfaHlkcmF0aW9uX3RpbWluZ3MYDSADKAsyLi5ub21vcy5rZXJuZWwudjEuVmVyaWZ5Q2hhaW5MYXdIeWRyYXRpb25UaW1pbmcSGQoRbGF3X2Nsb3N1cmVfY291bnQYDiABKAQSHgoWbGF3X2Nsb3N1cmVfY2FjaGVfaGl0cxgPIAEoBBIgChhsYXdfY2xvc3VyZV9jYWNoZV9taXNzZXMYECABKAQSEgoKc3RlcF9jb3VudBgRIAEoBBIVCg1zdGVwX3RvdGFsX3VzGBIgASgEEkEKEXN0ZXBfcGhhc2VfdG90YWxzGBMgASgLMiYubm9tb3Mua2VybmVsLnYxLlZlcmlmeUNoYWluU3RlcFBoYXNlcxIaChJvbWl0dGVkX3N0ZXBfY291bnQYFCABKAQiOgoXVmVyaWZ5Q2hhaW5FbmdpbmVUaW1pbmcSDQoFcGhhc2UYASABKAkSEAoIdG90YWxfdXMYAiABKAQiQAodVmVyaWZ5Q2hhaW5MYXdIeWRyYXRpb25UaW1pbmcSDQoFcGhhc2UYASABKAkSEAoIdG90YWxfdXMYAiABKAQiqwEKFEh0dHBzRXhlY3V0aW9uUG9saWN5EjwKCXBsYWNlbWVudBgBIAEoDjIpLm5vbW9zLmtlcm5lbC52MS5FZmZlY3RFeGVjdXRpb25QbGFjZW1lbnQSQAoLY2FyZGluYWxpdHkYAiABKA4yKy5ub21vcy5rZXJuZWwudjEuRWZmZWN0RXhlY3V0aW9uQ2FyZGluYWxpdHkSEwoLbGF3X2Nsb3N1cmUYAyABKAkiWwoSSHR0cHNPdXRib3VuZFJvdXRlEgsKA3VybBgBIAEoCRI4CglleGVjdXRpb24YAiABKAsyJS5ub21vcy5rZXJuZWwudjEuSHR0cHNFeGVjdXRpb25Qb2xpY3kiKwoWV29ya3NwYWNlT3V0Ym91bmRSb3V0ZRIRCgl3b3Jrc3BhY2UYASABKAkihQIKFUNhcnJpZWRXb3Jrc3BhY2VPZmZlchIwCgZzb3VyY2UYASABKAsyIC5ub21vcy5rZXJuZWwudjEuV29ya3NwYWNlVGFyZ2V0EhUKDXNvdXJjZV9jb21taXQYAiABKAkSGQoRc291cmNlX29mZmVyX3BhdGgYAyABKAkSHAoUc291cmNlX2V2aWRlbmNlX3BhY2sYBSABKAwSIwobYWRtaXNzaW9uX2NoZWNrcG9pbnRfc2VjcmV0GAYgASgMEhUKDWVmZmVjdF9kaWdlc3QYByABKAkSIAoYc291cmNlX3dvcmtzcGFjZV9nZW5lc2lzGAggASgJSgQIBBAFUgZ0YXJnZXQizAQKDU91dGJvdW5kT2ZmZXISCgoCaWQYASABKAkSFwoLZGVzdGluYXRpb24YAiABKAlCAhgBEhQKDHNlYWxlZF9vZmZlchgDIAEoDBIUCgxjb250ZW50X3R5cGUYBCABKAkSGAoQc291cmNlX3dvcmtzcGFjZRgFIAEoCRIUCgxjdXN0b2R5X2hlYWQYBiABKAkSFwoPY2F1c2VkX2J5X29mZmVyGAcgASgJEhsKE3NjaGVkdWxlZF9hdF9taWxsaXMYCCABKAQSGgoSZGVhZGxpbmVfYXRfbWlsbGlzGAkgASgEEhQKDGN1c3RvZHlfcGF0aBgKIAEoCRITCgtjdXN0b2R5X29pZBgLIAEoCRIUCgxkZWxpdmVyeV9yZWYYDCABKAkSFQoNb2JsaWdhdGlvbl9pZBgNIAEoCRI6CgtodHRwc19yb3V0ZRgOIAEoCzIjLm5vbW9zLmtlcm5lbC52MS5IdHRwc091dGJvdW5kUm91dGVIABJCCg93b3Jrc3BhY2Vfcm91dGUYDyABKAsyJy5ub21vcy5rZXJuZWwudjEuV29ya3NwYWNlT3V0Ym91bmRSb3V0ZUgAEhUKDXNvdXJjZV9jb21taXQYECABKAkSHAoUc291cmNlX2V2aWRlbmNlX3BhY2sYESABKAwSGQoRc291cmNlX29mZmVyX3BhdGgYEiABKAkSFQoNZWZmZWN0X2RpZ2VzdBgTIAEoCRIgChhzb3VyY2Vfd29ya3NwYWNlX2dlbmVzaXMYFCABKAlCBwoFcm91dGUi7gEKDk91dGJveFJlc3BvbnNlEi4KBm9mZmVycxgBIAMoCzIeLm5vbW9zLmtlcm5lbC52MS5PdXRib3VuZE9mZmVyEh8KEm5leHRfZHVlX2F0X21pbGxpcxgCIAEoBEgAiAEBEi0KB2VudHJpZXMYAyADKAsyHC5ub21vcy5rZXJuZWwudjEuT3V0Ym94RW50cnkSFAoMd29ya19wZW5kaW5nGAQgASgIEhUKDWVudHJpZXNfdG90YWwYBSABKA0SGAoQZW50cmllc19wcmVwYXJlZBgGIAEoDUIVChNfbmV4dF9kdWVfYXRfbWlsbGlzIr0BCgtPdXRib3hFbnRyeRIKCgJpZBgBIAEoCRIZChFzb3VyY2Vfb2ZmZXJfcGF0aBgCIAEoCRI6CgtodHRwc19yb3V0ZRgDIAEoCzIjLm5vbW9zLmtlcm5lbC52MS5IdHRwc091dGJvdW5kUm91dGVIABJCCg93b3Jrc3BhY2Vfcm91dGUYBCABKAsyJy5ub21vcy5rZXJuZWwudjEuV29ya3NwYWNlT3V0Ym91bmRSb3V0ZUgAQgcKBXJvdXRlIpQBChRQcmVwYXJlT3V0Ym91bmRPZmZlchIYChB0YXJnZXRfd29ya3NwYWNlGAEgASgJEhoKDXNvdXJjZV9jb21taXQYAiABKAlIAIgBARIeChFzb3VyY2Vfb2ZmZXJfcGF0aBgDIAEoCUgBiAEBQhAKDl9zb3VyY2VfY29tbWl0QhQKEl9zb3VyY2Vfb2ZmZXJfcGF0aCLxBAoMU3luY1Jlc3BvbnNlEhAKCGFkbWl0dGVkGAIgASgIEgwKBGhlYWQYAyABKAkSFgoOY2FuZGlkYXRlX2hlYWQYBCABKAkSHAoUYWRtaXR0ZWRfcmVtb3RlX2hlYWQYBSABKAkSHAoUcmVwbGF5ZWRfcmVtb3RlX2hlYWQYBiABKAkSPAoPYWRtaXR0ZWRfcmVtb3RlGAcgAygLMiMubm9tb3Mua2VybmVsLnYxLlN5bmNBZG1pdHRlZEludGVudBI8ChVyZW1vdGVfYmlydGhfb3V0Y29tZXMYCCADKAsyHS5ub21vcy5rZXJuZWwudjEuQmlydGhPdXRjb21lEjkKDnJlbW90ZV9yZWZ1c2FsGAkgASgLMhwubm9tb3Mua2VybmVsLnYxLlN5bmNSZWZ1c2FsSACIAQESOwoOcmVwbGF5ZWRfbG9jYWwYCiADKAsyIy5ub21vcy5rZXJuZWwudjEuU3luY1JlcGxheWVkSW50ZW50EiAKGHNraXBwZWRfbG9jYWxfaW50ZW50X2lkcxgLIAMoCRI5Cg1yZWZ1c2VkX2xvY2FsGAwgAygLMiIubm9tb3Mua2VybmVsLnYxLlN5bmNSZWZ1c2VkSW50ZW50EkcKFGN1c3RvZHlfZGlzYWdyZWVtZW50GA0gASgLMiQubm9tb3Mua2VybmVsLnYxLkN1c3RvZHlEaXNhZ3JlZW1lbnRIAYgBARIZChFwYXJrZWRfbG9jYWxfcmVmcxgOIAMoCUIRCg9fcmVtb3RlX3JlZnVzYWxCFwoVX2N1c3RvZHlfZGlzYWdyZWVtZW50SgQIARACUgZyZXN1bHQiUQoTQ3VzdG9keURpc2FncmVlbWVudBISCgpsb2NhbF9oZWFkGAEgASgJEhYKDmNhbmRpZGF0ZV9oZWFkGAIgASgJEg4KBnJlYXNvbhgDIAEoCSJPChJTeW5jQWRtaXR0ZWRJbnRlbnQSEQoJaW50ZW50X2lkGAEgASgJEhgKEGNhbmRpZGF0ZV9jb21taXQYAiABKAkSDAoEaGVhZBgDIAEoCSJsChJTeW5jUmVwbGF5ZWRJbnRlbnQSEQoJaW50ZW50X2lkGAEgASgJEgwKBGhlYWQYAiABKAkSNQoOYmlydGhfb3V0Y29tZXMYAyADKAsyHS5ub21vcy5rZXJuZWwudjEuQmlydGhPdXRjb21lIqEBCgtTeW5jUmVmdXNhbBIWCglpbnRlbnRfaWQYASABKAlIAIgBARIOCgZyZWFzb24YAiABKAkSEQoEY29kZRgDIAEoCUgBiAEBEjQKB3JlZnVzYWwYBCABKAsyHi5ub21vcy5rZXJuZWwudjEuS2VybmVsUmVmdXNhbEgCiAEBQgwKCl9pbnRlbnRfaWRCBwoFX2NvZGVCCgoIX3JlZnVzYWwijQEKEVN5bmNSZWZ1c2VkSW50ZW50EhEKCWludGVudF9pZBgBIAEoCRIOCgZyZWFzb24YAiABKAkSEwoLY2hhbmdlX3VzZGEYAyABKAwSNAoHcmVmdXNhbBgEIAEoCzIeLm5vbW9zLmtlcm5lbC52MS5LZXJuZWxSZWZ1c2FsSACIAQFCCgoIX3JlZnVzYWwiQgoPV29ya3NwYWNlVGFyZ2V0EgwKBHJlcG8YASABKAkSEQoJd29ya3NwYWNlGAIgASgJEg4KBmJyYW5jaBgDIAEoCSJOCgtPcGVuUmVxdWVzdBIwCgZ0YXJnZXQYASABKAsyIC5ub21vcy5rZXJuZWwudjEuV29ya3NwYWNlVGFyZ2V0Eg0KBXNwYW5zGAIgASgIIg4KDEdlbmVzaXNPZmZlciKjAQoNRGlyZWN0aXZlQ2FsbBIOCgZkb21haW4YASABKAkSEQoJZGlyZWN0aXZlGAIgASgJEicKCW9wZXJhdGlvbhgFIAEoCzIULmdvb2dsZS5wcm90b2J1Zi5BbnkSFgoOYXJndW1lbnRzX2pzb24YBiABKAlKBAgDEARKBAgEEAVSCWNhbGxfdXNkYVIHcGF5bG9hZFIObGVnYWN5X3BheWxvYWQi1gIKEEF1dGhvcmluZ09wdGlvbnMSDQoFYWN0b3IYASABKAkSEgoKYXV0aF90b2tlbhgCIAEoDBIVCg1hdXRob3Jfc2VjcmV0GAMgASgMEh0KEHZhbGlkX2Zyb21fZXBvY2gYBCABKARIAIgBARIfChJwcmluY2lwYWxfdmVyaWZpZWQYBSABKAhIAYgBARILCgNybmcYBiADKAESGAoQZGVmZXJfcHJvamVjdGlvbhgHIAEoCBINCgVzcGFucxgIIAEoCBIPCgdkcnlfcnVuGAkgASgIEhAKCHNlcXVlbmNlGAogASgEEi0KBWNsb2NrGAsgASgLMh4ubm9tb3Mua2VybmVsLnYxLkNhcHR1cmVkQ2xvY2sSFAoMcHJlcGFyZV9vbmx5GAwgASgIQhMKEV92YWxpZF9mcm9tX2Vwb2NoQhUKE19wcmluY2lwYWxfdmVyaWZpZWQiSgoNQ2FwdHVyZWRDbG9jaxIXCg9waHlzaWNhbF9taWxsaXMYASABKAQSDwoHbG9naWNhbBgCIAEoDRIPCgdyZXBsaWNhGAMgASgEIsMDChBCaXJ0aENlcnRpZmljYXRlEg0KBWNoaWxkGAEgASgJEg8KB2ZvdW5kZXIYAiABKAkSEAoIdmVyaWZpZWQYAyABKAgSEgoKcGFyZW50X2tleRgEIAEoDBIRCglwYXJlbnRfaWQYBSABKAkSDQoFZXBvY2gYBiABKAMSEQoJc2lnbmF0dXJlGAcgASgMEhkKDHZlcmlmaWVkX3ZpYRgIIAEoCUgAiAEBEhYKCWlkcF90b2tlbhgJIAEoCUgBiAEBEhsKDmNhcHR1cmVkX2Nsb2NrGAogASgDSAKIAQESIQoUYXV0aF9wcm92aWRlcl9pc3N1ZXIYCyABKAlIA4gBARIfChJhdXRoX3Byb3ZpZGVyX2p3a3MYDCABKAlIBIgBARIjChZhdXRoX3Byb3ZpZGVyX2F1ZGllbmNlGA0gASgJSAWIAQFCDwoNX3ZlcmlmaWVkX3ZpYUIMCgpfaWRwX3Rva2VuQhEKD19jYXB0dXJlZF9jbG9ja0IXChVfYXV0aF9wcm92aWRlcl9pc3N1ZXJCFQoTX2F1dGhfcHJvdmlkZXJfandrc0IZChdfYXV0aF9wcm92aWRlcl9hdWRpZW5jZSJsChtTaWduQmlydGhDZXJ0aWZpY2F0ZVJlcXVlc3QSNgoLY2VydGlmaWNhdGUYASABKAsyIS5ub21vcy5rZXJuZWwudjEuQmlydGhDZXJ0aWZpY2F0ZRIVCg1zaWduZXJfc2VjcmV0GAIgASgMIlYKHFNpZ25CaXJ0aENlcnRpZmljYXRlUmVzcG9uc2USNgoLY2VydGlmaWNhdGUYASABKAsyIS5ub21vcy5rZXJuZWwudjEuQmlydGhDZXJ0aWZpY2F0ZSLsAgoUTW9kZWxMaWZlY3ljbGVJbnRlbnQSOwoJb3BlcmF0aW9uGAEgASgOMigubm9tb3Mua2VybmVsLnYxLk1vZGVsTGlmZWN5Y2xlT3BlcmF0aW9uEhQKDGluc3RhbGxlZF9ieRgCIAEoCRIXCgpzdXBlcnNlZGVzGAMgASgJSACIAQESRAoKdHJhbnNpdGlvbhgEIAEoCzIrLm5vbW9zLmtlcm5lbC52MS5Gcm9udGllclRyYW5zaXRpb25SZXNwb25zZUgBiAEBEhUKCHJlcGxhY2VzGAUgASgJSAKIAQESHgoRYWNjZXB0YW5jZV9yZWFzb24YBiABKAlIA4gBARIZCgxsYXdfaWRlbnRpdHkYByABKAlIBIgBAUINCgtfc3VwZXJzZWRlc0INCgtfdHJhbnNpdGlvbkILCglfcmVwbGFjZXNCFAoSX2FjY2VwdGFuY2VfcmVhc29uQg8KDV9sYXdfaWRlbnRpdHkiOwofSWRlbnRpdHlQcm92aWRlcldpdG5lc3NBZG9wdGlvbhIYChBzb3VyY2Vfd29ya3NwYWNlGAEgASgJIucHCgxPZmZlclJlcXVlc3QSMAoGdGFyZ2V0GAEgASgLMiAubm9tb3Mua2VybmVsLnYxLldvcmtzcGFjZVRhcmdldBIuCgRjYWxsGAIgASgLMh4ubm9tb3Mua2VybmVsLnYxLkRpcmVjdGl2ZUNhbGxIABIcChJzZWFsZWRfY2hhbmdlX3VzZGEYByABKAxIABJACg9tb2RlbF9saWZlY3ljbGUYDCABKAsyJS5ub21vcy5rZXJuZWwudjEuTW9kZWxMaWZlY3ljbGVJbnRlbnRIABJeCiJpZGVudGl0eV9wcm92aWRlcl93aXRuZXNzX2Fkb3B0aW9uGA0gASgLMjAubm9tb3Mua2VybmVsLnYxLklkZW50aXR5UHJvdmlkZXJXaXRuZXNzQWRvcHRpb25IABIwCgdnZW5lc2lzGA4gASgLMh0ubm9tb3Mua2VybmVsLnYxLkdlbmVzaXNPZmZlckgAEkkKF2NhcnJpZWRfd29ya3NwYWNlX29mZmVyGA8gASgLMiYubm9tb3Mua2VybmVsLnYxLkNhcnJpZWRXb3Jrc3BhY2VPZmZlckgAEjQKCXBsYWNlbWVudBgQIAEoCzIfLm5vbW9zLmtlcm5lbC52MS5QbGFjZW1lbnRPZmZlckgAEkcKFmRldGFjaGVkX3NpZ25lZF9jaGFuZ2UYEiABKAsyJS5ub21vcy5rZXJuZWwudjEuRGV0YWNoZWRTaWduZWRDaGFuZ2VIABI0CglhdXRob3JpbmcYAyABKAsyIS5ub21vcy5rZXJuZWwudjEuQXV0aG9yaW5nT3B0aW9ucxIQCghsYXdfdXNkehgEIAEoDBIzCgxhdHRlc3RhdGlvbnMYBSADKAsyHS5ub21vcy5rZXJuZWwudjEuQXR0ZXN0ZWRSZWFkEj0KEmNvbmZsaWN0X3NuYXBzaG90cxgGIAMoCzIhLm5vbW9zLmtlcm5lbC52MS5Db25mbGljdFNuYXBzaG90EhoKEmV4ZWN1dGlvbl9sYXdfdXNkehgIIAEoDBIgChNjb250cm9sbGVyX2xhd19oYXNoGAkgASgJSAGIAQESHQoQY2FuZGlkYXRlX2NvbW1pdBgKIAEoCUgCiAEBEjwKEWJpcnRoX2NlcnRpZmljYXRlGAsgASgLMiEubm9tb3Mua2VybmVsLnYxLkJpcnRoQ2VydGlmaWNhdGUSKwoJbGF3X3VuaXRzGBEgAygLMhgubm9tb3Mua2VybmVsLnYxLkxhd1VuaXRCCAoGaW50ZW50QhYKFF9jb250cm9sbGVyX2xhd19oYXNoQhMKEV9jYW5kaWRhdGVfY29tbWl0IjYKB0xhd1VuaXQSKwoFZmlsZXMYASADKAsyHC5ub21vcy5rZXJuZWwudjEuTGF3VW5pdEZpbGUiLAoLTGF3VW5pdEZpbGUSDAoEcGF0aBgBIAEoCRIPCgdjb250ZW50GAIgASgMIsUBCgxBdHRlc3RlZFJlYWQSEAoIcXVlcnlfaWQYASABKAkSLwoJYXJndW1lbnRzGAIgASgLMhwubm9tb3Mua2VybmVsLnYxLk5vbW9zU3RydWN0EisKBnJlc3VsdBgDIAEoCzIbLm5vbW9zLmtlcm5lbC52MS5Ob21vc1ZhbHVlEjIKCGV2aWRlbmNlGAUgASgLMiAubm9tb3Mua2VybmVsLnYxLlJlYWRBdHRlc3RhdGlvbkoECAQQBVILYXR0ZXN0YXRpb24i1QEKD1JlYWRBdHRlc3RhdGlvbhIPCgd2ZXJzaW9uGAEgASgDEhgKEHNvdXJjZV93b3Jrc3BhY2UYAiABKAkSFgoOc291cmNlX2dlbmVzaXMYAyABKAkSEwoLc291cmNlX2hlYWQYBCABKAkSEQoJZm9sZF9yb290GAUgASgJEhQKDHNvdXJjZV9lcG9jaBgGIAEoAxIaChJhdHRlc3RlZF9hdF9taWxsaXMYByABKAMSEgoKcHVibGljX2tleRgIIAEoDBIRCglzaWduYXR1cmUYCSABKAwidQoQQ29uZmxpY3RTbmFwc2hvdBIWCg5hZ2dyZWdhdGVfdHlwZRgBIAEoCRIUCgxhZ2dyZWdhdGVfaWQYAiABKAkSDQoFZmllbGQYAyABKAkSFQoNdGFyZ2V0X3NjaGVtYRgEIAEoCRINCgV0b2tlbhgFIAEoCSKQDwoMUXVlcnlSZXF1ZXN0EjAKBnRhcmdldBgBIAEoCzIgLm5vbW9zLmtlcm5lbC52MS5Xb3Jrc3BhY2VUYXJnZXQSMgoJYXV0aG9yaXR5GAIgASgLMh8ubm9tb3Mua2VybmVsLnYxLlF1ZXJ5QXV0aG9yaXR5Eg0KBXNwYW5zGAMgASgIEjkKDXJlc3VsdF9mb3JtYXQYBCABKA4yIi5ub21vcy5rZXJuZWwudjEuUXVlcnlSZXN1bHRGb3JtYXQSKgoEcm93cxgKIAEoCzIaLm5vbW9zLmtlcm5lbC52MS5Sb3dzUXVlcnlIABIqCgRwYWdlGAsgASgLMhoubm9tb3Mua2VybmVsLnYxLlBhZ2VRdWVyeUgAEisKBWJ5X2lkGAwgASgLMhoubm9tb3Mua2VybmVsLnYxLkJ5SWRRdWVyeUgAEjkKDHJlc29sdmVfcmVmcxgNIAEoCzIhLm5vbW9zLmtlcm5lbC52MS5SZXNvbHZlUmVmc1F1ZXJ5SAASRQoScmVmZXJlbmNlX3ZlcnNpb25zGA4gASgLMicubm9tb3Mua2VybmVsLnYxLlJlZmVyZW5jZVZlcnNpb25zUXVlcnlIABIsCgVjb3VudBgPIAEoCzIbLm5vbW9zLmtlcm5lbC52MS5UYWxseVF1ZXJ5SAASKgoDc3VtGBAgASgLMhsubm9tb3Mua2VybmVsLnYxLlRhbGx5UXVlcnlIABIwCgdzcGF0aWFsGBEgASgLMh0ubm9tb3Mua2VybmVsLnYxLlNwYXRpYWxRdWVyeUgAEiwKBW5hbWVkGBIgASgLMhsubm9tb3Mua2VybmVsLnYxLk5hbWVkUXVlcnlIABJJChNhdXRob3JpemF0aW9uX2NoZWNrGBMgASgLMioubm9tb3Mua2VybmVsLnYxLkF1dGhvcml6YXRpb25DaGVja1JlcXVlc3RIABJLChRhdXRob3JpemF0aW9uX2V4cGFuZBgUIAEoCzIrLm5vbW9zLmtlcm5lbC52MS5BdXRob3JpemF0aW9uRXhwYW5kUmVxdWVzdEgAEkkKE2Zyb250aWVyX3RyYW5zaXRpb24YFSABKAsyKi5ub21vcy5rZXJuZWwudjEuRnJvbnRpZXJUcmFuc2l0aW9uUmVxdWVzdEgAEi8KB2J5X3R5cGUYFiABKAsyHC5ub21vcy5rZXJuZWwudjEuQnlUeXBlUXVlcnlIABJIChRvd25lZF9kZXZpY2VfcmVxdWVzdBgXIAEoCzIoLm5vbW9zLmtlcm5lbC52MS5Pd25lZERldmljZVJlcXVlc3RRdWVyeUgAEkwKFm93bmVkX3ByZXBhcmVfYXBwcm92YWwYGCABKAsyKi5ub21vcy5rZXJuZWwudjEuT3duZWRQcmVwYXJlQXBwcm92YWxRdWVyeUgAEkMKEXBlbmRpbmdfY29uZmxpY3RzGBkgASgLMiYubm9tb3Mua2VybmVsLnYxLlBlbmRpbmdDb25mbGljdHNRdWVyeUgAElAKGHBlbmRpbmdfY29uZmxpY3Rfc3VtbWFyeRgaIAEoCzIsLm5vbW9zLmtlcm5lbC52MS5QZW5kaW5nQ29uZmxpY3RTdW1tYXJ5UXVlcnlIABJNChZhdXRoZW50aWNhdGlvbl9wb3N0dXJlGBsgASgLMisubm9tb3Mua2VybmVsLnYxLkF1dGhlbnRpY2F0aW9uUG9zdHVyZVF1ZXJ5SAASQAoQY2hpbGRfd29ya3NwYWNlcxgcIAEoCzIkLm5vbW9zLmtlcm5lbC52MS5DaGlsZFdvcmtzcGFjZVF1ZXJ5SAASVgoWYXV0aG9yaW5nX3JlcXVpcmVtZW50cxgdIAEoCzI0Lm5vbW9zLmtlcm5lbC52MS5EaXJlY3RpdmVBdXRob3JpbmdSZXF1aXJlbWVudHNRdWVyeUgAElIKGWlkZW50aXR5X3Byb3ZpZGVyX3dpdG5lc3MYHiABKAsyLS5ub21vcy5rZXJuZWwudjEuSWRlbnRpdHlQcm92aWRlcldpdG5lc3NRdWVyeUgAEk8KF2ludGVyZmFjZV9jb21wYXRpYmlsaXR5GB8gASgLMiwubm9tb3Mua2VybmVsLnYxLkludGVyZmFjZUNvbXBhdGliaWxpdHlRdWVyeUgAEkcKE21haW50ZW5hbmNlX3F1YW50dW0YICABKAsyKC5ub21vcy5rZXJuZWwudjEuTWFpbnRlbmFuY2VRdWFudHVtUXVlcnlIABJEChJmdWxsX2hpc3RvcnlfYXVkaXQYISABKAsyJi5ub21vcy5rZXJuZWwudjEuRnVsbEhpc3RvcnlBdWRpdFF1ZXJ5SAASUAoYd29ya3NwYWNlX2VmZmVjdF9yZWNlaXB0GCIgASgLMiwubm9tb3Mua2VybmVsLnYxLldvcmtzcGFjZUVmZmVjdFJlY2VpcHRRdWVyeUgAElQKGmluc3RhbGxlZF9sYXdfZGVjbGFyYXRpb25zGCMgASgLMi4ubm9tb3Mua2VybmVsLnYxLkluc3RhbGxlZExhd0RlY2xhcmF0aW9uc1F1ZXJ5SABCBwoFcXVlcnkiVgobV29ya3NwYWNlRWZmZWN0UmVjZWlwdFF1ZXJ5EiAKGHNvdXJjZV93b3Jrc3BhY2VfZ2VuZXNpcxgBIAEoCRIVCg1lZmZlY3RfZGlnZXN0GAIgASgJIuQBCh5Xb3Jrc3BhY2VFZmZlY3RSZWNlaXB0UmVzcG9uc2USGAoQdGFyZ2V0X3dvcmtzcGFjZRgBIAEoCRIgChh0YXJnZXRfd29ya3NwYWNlX2dlbmVzaXMYAiABKAkSFQoNb2JzZXJ2ZWRfaGVhZBgDIAEoCRIgChhzb3VyY2Vfd29ya3NwYWNlX2dlbmVzaXMYBCABKAkSFQoNZWZmZWN0X2RpZ2VzdBgFIAEoCRIfChJhZG1pdHRlZF9pbnRlbnRfaWQYBiABKAlIAIgBAUIVChNfYWRtaXR0ZWRfaW50ZW50X2lkIhcKFUZ1bGxIaXN0b3J5QXVkaXRRdWVyeSKwAwoYRnVsbEhpc3RvcnlBdWRpdFJlc3BvbnNlEg0KBXZhbGlkGAEgASgIEi4KBHdhbGsYAiABKA4yIC5ub21vcy5rZXJuZWwudjEuVmVyaWZ5Q2hhaW5XYWxrEhEKBGhlYWQYAyABKAlIAIgBARIUCgdpbnRlbnRzGAQgASgESAGIAQESGAoLcGxhbnNfcmVydW4YBSABKARIAogBARIcCg9jb250cm9sbGVyX2hhc2gYBiABKAlIA4gBARIZChFpbnN0YWxsZWRfZG9tYWlucxgHIAMoCRISCgVjaGVjaxgIIAEoCUgEiAEBEhUKCGF0X2luZGV4GAkgASgESAWIAQESEgoFZXJyb3IYCiABKAlIBogBARI0CgdyZWZ1c2FsGAsgASgLMh4ubm9tb3Mua2VybmVsLnYxLktlcm5lbFJlZnVzYWxIB4gBAUIHCgVfaGVhZEIKCghfaW50ZW50c0IOCgxfcGxhbnNfcmVydW5CEgoQX2NvbnRyb2xsZXJfaGFzaEIICgZfY2hlY2tCCwoJX2F0X2luZGV4QggKBl9lcnJvckIKCghfcmVmdXNhbCIeChxJZGVudGl0eVByb3ZpZGVyV2l0bmVzc1F1ZXJ5IosCChpJZGVudGl0eVByb3ZpZGVyV2l0bmVzc0tleRIPCgdvcmRpbmFsGAEgASgEEgsKA2t0eRgCIAEoCRIQCgNraWQYAyABKAlIAIgBARIQCgNhbGcYBCABKAlIAYgBARIQCgN1c2UYBSABKAlIAogBARIQCgNjcnYYBiABKAlIA4gBARIOCgF4GAcgASgJSASIAQESDgoBeRgIIAEoCUgFiAEBEg4KAW4YCSABKAlIBogBARIOCgFlGAogASgJSAeIAQESDwoHa2V5X29wcxgLIAMoCUIGCgRfa2lkQgYKBF9hbGdCBgoEX3VzZUIGCgRfY3J2QgQKAl94QgQKAl95QgQKAl9uQgQKAl9lImMKIklkZW50aXR5UHJvdmlkZXJXaXRuZXNzQ2VydGlmaWNhdGUSEwoLa2V5X29yZGluYWwYASABKAQSGwoTY2VydGlmaWNhdGVfb3JkaW5hbBgCIAEoBBILCgNkZXIYAyABKAwixQQKH0lkZW50aXR5UHJvdmlkZXJXaXRuZXNzUmVzcG9uc2USGAoQc291cmNlX3dvcmtzcGFjZRgBIAEoCRIWCg5zb3VyY2VfZ2VuZXNpcxgCIAEoCRITCgtzb3VyY2VfaGVhZBgDIAEoCRINCgVlcG9jaBgEIAEoBBIfChJwcmVkZWNlc3Nvcl9zaGEyNTYYBSABKAxIAIgBARIOCgZpc3N1ZXIYBiABKAkSFQoIYXVkaWVuY2UYByABKAlIAYgBARIXCg9wcmluY2lwYWxfY2xhaW0YCCABKAkSIQoUZGV2aWNlX2JpbmRpbmdfY2xhaW0YCSABKAlIAogBARIeChZyZXF1aXJlX2RldmljZV9iaW5kaW5nGAogASgIEjkKBGtleXMYCyADKAsyKy5ub21vcy5rZXJuZWwudjEuSWRlbnRpdHlQcm92aWRlcldpdG5lc3NLZXkSSQoMY2VydGlmaWNhdGVzGAwgAygLMjMubm9tb3Mua2VybmVsLnYxLklkZW50aXR5UHJvdmlkZXJXaXRuZXNzQ2VydGlmaWNhdGUSFwoPbWF0ZXJpYWxfc2hhMjU2GA0gASgMEjMKDGF0dGVzdGF0aW9ucxgPIAMoCzIdLm5vbW9zLmtlcm5lbC52MS5BdHRlc3RlZFJlYWRCFQoTX3ByZWRlY2Vzc29yX3NoYTI1NkILCglfYXVkaWVuY2VCFwoVX2RldmljZV9iaW5kaW5nX2NsYWltSgQIDhAPUhFzb3VyY2VfcHJvb2ZfdXNkYSIVChNDaGlsZFdvcmtzcGFjZVF1ZXJ5IpABChlDaGlsZFdvcmtzcGFjZVF1ZXJ5UmVjb3JkEhEKCXdvcmtzcGFjZRgBIAEoCRI+CgZzdGF0dXMYAiABKA4yLi5ub21vcy5rZXJuZWwudjEuQ2hpbGRXb3Jrc3BhY2VMaWZlY3ljbGVTdGF0dXMSFAoHYm9ybl9hdBgDIAEoCUgAiAEBQgoKCF9ib3JuX2F0IlsKG0NoaWxkV29ya3NwYWNlUXVlcnlSZXNwb25zZRI8CghjaGlsZHJlbhgBIAMoCzIqLm5vbW9zLmtlcm5lbC52MS5DaGlsZFdvcmtzcGFjZVF1ZXJ5UmVjb3JkIh8KHUluc3RhbGxlZExhd0RlY2xhcmF0aW9uc1F1ZXJ5IjcKEEluc3RhbGxlZExhd1VuaXQSEAoIdW5pdF9rZXkYASABKAkSEQoJdW5pdF9oYXNoGAIgASgJIowBChNJbnN0YWxsZWRMYXdVbml0U2V0EhQKDHNldF9pZGVudGl0eRgBIAEoCRIYChBjb21wb3Nlcl92ZXJzaW9uGAIgASgJEhMKC29wZW51c2RfcmV2GAMgASgJEjAKBXVuaXRzGAQgAygLMiEubm9tb3Mua2VybmVsLnYxLkluc3RhbGxlZExhd1VuaXQigQIKHkRlY2xhcmVkQXV0aGVudGljYXRpb25Qcm92aWRlchIOCgZkb21haW4YASABKAkSDgoGbWVtYmVyGAIgASgJEjsKC21lbWJlcl9raW5kGAMgASgOMiYubm9tb3Mua2VybmVsLnYxLkRlY2xhcmVkTGF3TWVtYmVyS2luZBJBCgRraW5kGAQgASgOMjMubm9tb3Mua2VybmVsLnYxLkRlY2xhcmVkQXV0aGVudGljYXRpb25Qcm92aWRlcktpbmQSDQoFc2NvcGUYBSABKAkSHAoPaWRlbnRpdHlfc2hhMjU2GAYgASgJSACIAQFCEgoQX2lkZW50aXR5X3NoYTI1NiLpAQofSW5zdGFsbGVkTGF3Q2xvc3VyZURlY2xhcmF0aW9ucxIYChBjbG9zdXJlX2lkZW50aXR5GAEgASgJEg8KB2RvbWFpbnMYAiADKAkSOwoIdW5pdF9zZXQYAyABKAsyJC5ub21vcy5rZXJuZWwudjEuSW5zdGFsbGVkTGF3VW5pdFNldEgAiAEBElEKGGF1dGhlbnRpY2F0aW9uX3Byb3ZpZGVycxgEIAMoCzIvLm5vbW9zLmtlcm5lbC52MS5EZWNsYXJlZEF1dGhlbnRpY2F0aW9uUHJvdmlkZXJCCwoJX3VuaXRfc2V0InQKIEluc3RhbGxlZExhd0RlY2xhcmF0aW9uc1Jlc3BvbnNlEgwKBGhlYWQYASABKAkSQgoIY2xvc3VyZXMYAiADKAsyMC5ub21vcy5rZXJuZWwudjEuSW5zdGFsbGVkTGF3Q2xvc3VyZURlY2xhcmF0aW9ucyLKAQojRGlyZWN0aXZlQXV0aG9yaW5nUmVxdWlyZW1lbnRzUXVlcnkSEQoJZGlyZWN0aXZlGAEgASgJEhYKCXByaW5jaXBhbBgCIAEoCUgAiAEBEhcKCnB1YmxpY19rZXkYAyABKAxIAYgBARIVCghrZXlfaGFzaBgEIAEoCUgCiAEBEhMKBmRvbWFpbhgFIAEoCUgDiAEBQgwKCl9wcmluY2lwYWxCDQoLX3B1YmxpY19rZXlCCwoJX2tleV9oYXNoQgkKB19kb21haW4ijAIKJkRpcmVjdGl2ZUF1dGhvcmluZ1JlcXVpcmVtZW50c1Jlc3BvbnNlEg0KBWZvdW5kGAEgASgIEhMKBmRvbWFpbhgCIAEoCUgAiAEBEhUKCHJlbGF0aW9uGAMgASgJSAGIAQESEwoGb2JqZWN0GAQgASgJSAKIAQESEgoFYWN0b3IYBSABKAlIA4gBARIVCghrZXlfaGFzaBgGIAEoCUgEiAEBEhcKD3NpZ25lcl9lbnJvbGxlZBgHIAEoCBIUCgxyb2xlX2FsbG93ZWQYCCABKAhCCQoHX2RvbWFpbkILCglfcmVsYXRpb25CCQoHX29iamVjdEIICgZfYWN0b3JCCwoJX2tleV9oYXNoInIKGkF1dGhlbnRpY2F0aW9uUG9zdHVyZVF1ZXJ5Eh4KFmluY2x1ZGVfYmlydGhfZXZpZGVuY2UYASABKAgSHgoRZGV2aWNlX3B1YmxpY19rZXkYAiABKAxIAIgBAUIUChJfZGV2aWNlX3B1YmxpY19rZXki7AIKHUF1dGhlbnRpY2F0aW9uUG9zdHVyZVJlc3BvbnNlEkgKDnByb3ZpZGVyX3Rva2VuGAEgASgOMjAubm9tb3Mua2VybmVsLnYxLlByb3ZpZGVyVG9rZW5WZXJpZmljYXRpb25TdGF0dXMSFwoPZW5yb2xsZWRfZGV2aWNlGAIgASgIEhoKEnJlc29sdmVkX3ByaW5jaXBhbBgDIAEoCRJECg5iaXJ0aF9ldmlkZW5jZRgEIAEoCzInLm5vbW9zLmtlcm5lbC52MS5CaXJ0aEV2aWRlbmNlUmVhZGluZXNzSACIAQESQQoUZGV2aWNlX3NpZ25lcl9zdGF0dXMYBSABKA4yIy5ub21vcy5rZXJuZWwudjEuRGV2aWNlU2lnbmVyU3RhdHVzEhoKEmRldmljZV9rZXlfc3ViamVjdBgGIAEoCRIUCgxzaWduZXJfZXBvY2gYByABKANCEQoPX2JpcnRoX2V2aWRlbmNlIl4KFkJpcnRoRXZpZGVuY2VSZWFkaW5lc3MSNAoGc3RhdHVzGAEgASgOMiQubm9tb3Mua2VybmVsLnYxLkJpcnRoRXZpZGVuY2VTdGF0dXMSDgoGZGV0YWlsGAIgASgJIigKF093bmVkRGV2aWNlUmVxdWVzdFF1ZXJ5Eg0KBXNjb3BlGAEgASgJIjIKGk93bmVkRGV2aWNlUmVxdWVzdFJlc3BvbnNlEhQKDHJlcXVlc3RfdXNkYRgBIAEoDCJAChlPd25lZFByZXBhcmVBcHByb3ZhbFF1ZXJ5Eg0KBXNjb3BlGAEgASgJEhQKDHJlcXVlc3RfdXNkYRgCIAEoDCK/AQocT3duZWRQcmVwYXJlQXBwcm92YWxSZXNwb25zZRIXCg9uZXdfa2V5X3N1YmplY3QYASABKAkSGgoSb3duZWRfY3VzdG9keV91c2RhGAIgASgMEhQKDHZlcmlmaWVkX3ZpYRgDIAEoCRIYChB2YWxpZF9mcm9tX2Vwb2NoGAQgASgEEh8KF2FwcHJvdmVkX2F0X3VuaXhfbWlsbGlzGAUgASgEEhkKEW93bmVkX2tleV9zdWJqZWN0GAYgASgJIpIBCg5RdWVyeUF1dGhvcml0eRIXCg9wcmluY2lwYWxfY2xhaW0YASABKAkSEgoKYXV0aF90b2tlbhgCIAEoDBIQCghub3dfdW5peBgDIAEoBBIVCg1hdXRob3Jfc2VjcmV0GAQgASgMEioKBGtleXMYBSADKAsyHC5ub21vcy5rZXJuZWwudjEuSW5qZWN0ZWRLZXkiOAoLSW5qZWN0ZWRLZXkSDQoFc2NvcGUYASABKAkSDQoFZXBvY2gYAiABKAQSCwoDa2V5GAMgASgMIqgBCglSb3dzUXVlcnkSCgoCaWQYASABKAkSLwoJYXJndW1lbnRzGAIgASgLMhwubm9tb3Mua2VybmVsLnYxLk5vbW9zU3RydWN0EhEKCXByaW5jaXBhbBgDIAEoCRIWCg5hcmd1bWVudHNfdXNkYRgEIAEoDBIzChVhcHBsaWNhdGlvbl9hcmd1bWVudHMYBSABKAsyFC5nb29nbGUucHJvdG9idWYuQW55IsYBCglQYWdlUXVlcnkSCgoCaWQYASABKAkSLwoJYXJndW1lbnRzGAIgASgLMhwubm9tb3Mua2VybmVsLnYxLk5vbW9zU3RydWN0Eg0KBWxpbWl0GAMgASgNEg0KBWFmdGVyGAQgASgJEhEKCXByaW5jaXBhbBgFIAEoCRIWCg5hcmd1bWVudHNfdXNkYRgGIAEoDBIzChVhcHBsaWNhdGlvbl9hcmd1bWVudHMYByABKAsyFC5nb29nbGUucHJvdG9idWYuQW55IkwKCUJ5SWRRdWVyeRIWCg5hZ2dyZWdhdGVfdHlwZRgBIAEoCRIUCgxhZ2dyZWdhdGVfaWQYAiABKAkSEQoJcHJpbmNpcGFsGAMgASgJIjgKC0J5VHlwZVF1ZXJ5EhYKDmFnZ3JlZ2F0ZV90eXBlGAEgASgJEhEKCXByaW5jaXBhbBgCIAEoCSJcCghOb21vc1JlZhIRCgl3b3Jrc3BhY2UYASABKAkSFgoOYWdncmVnYXRlX3R5cGUYAiABKAkSFAoMYWdncmVnYXRlX2lkGAMgASgJEg8KB3ZlcnNpb24YBCABKAkiTgoQUmVzb2x2ZVJlZnNRdWVyeRInCgRyZWZzGAEgAygLMhkubm9tb3Mua2VybmVsLnYxLk5vbW9zUmVmEhEKCXByaW5jaXBhbBgCIAEoCSJOChZSZWZlcmVuY2VWZXJzaW9uc1F1ZXJ5EjQKBHJlZnMYASADKAsyJi5ub21vcy5rZXJuZWwudjEuUmVmZXJlbmNlVmVyc2lvbkNoZWNrIoQBChVSZWZlcmVuY2VWZXJzaW9uQ2hlY2sSKQoGcGlubmVkGAEgASgLMhkubm9tb3Mua2VybmVsLnYxLk5vbW9zUmVmEikKBnNlcmllcxgCIAEoCzIZLm5vbW9zLmtlcm5lbC52MS5Ob21vc1JlZhIVCg1jdXJyZW50X2ZpZWxkGAMgASgJImIKClRhbGx5UXVlcnkSCgoCaWQYASABKAkSEQoJcHJpbmNpcGFsGAMgASgJEhYKCWdyb3VwX2tleRgEIAEoCUgAiAEBQgwKCl9ncm91cF9rZXlKBAgCEANSCWFyZ3VtZW50cyJ6CgxTcGF0aWFsUXVlcnkSCgoCaWQYASABKAkSEQoJcHJpbmNpcGFsGAMgASgJEg0KBW1pbl94GAQgASgBEg0KBW1pbl95GAUgASgBEg0KBW1heF94GAYgASgBEg0KBW1heF95GAcgASgBSgQIAhADUglhcmd1bWVudHMiWgoVUGVuZGluZ0NvbmZsaWN0c1F1ZXJ5EhsKDmFnZ3JlZ2F0ZV90eXBlGAEgASgJSACIAQESEQoJcHJpbmNpcGFsGAIgASgJQhEKD19hZ2dyZWdhdGVfdHlwZSIwChtQZW5kaW5nQ29uZmxpY3RTdW1tYXJ5UXVlcnkSEQoJcHJpbmNpcGFsGAEgASgJInEKCk5hbWVkUXVlcnkSMgoJb3BlcmF0aW9uGAEgASgOMh8ubm9tb3Mua2VybmVsLnYxLlF1ZXJ5T3BlcmF0aW9uEi8KCWFyZ3VtZW50cxgCIAEoCzIcLm5vbW9zLmtlcm5lbC52MS5Ob21vc1N0cnVjdCKxAQoZRnJvbnRpZXJUcmFuc2l0aW9uUmVxdWVzdBIOCgZkb21haW4YASABKAkSFgoOY2FuZGlkYXRlX2hhc2gYAiABKAkSDwoHYXRfaGFzaBgDIAEoCRIhChlhY2tub3dsZWRnZW1lbnRfcHJpbmNpcGFsGAQgASgJEiAKE3Jlc3RvcmVfcHJldmlvdXNfb2YYBSABKAlIAIgBAUIWChRfcmVzdG9yZV9wcmV2aW91c19vZiJaCiVGcm9udGllclRyYW5zaXRpb25EaXNwb3NpdGlvbk1hcEVudHJ5EhgKEHNvdXJjZV9zdGFibGVfaWQYASABKAkSFwoPYWNrbm93bGVkZ2VtZW50GAIgASgJIvUBCh5Gcm9udGllclRyYW5zaXRpb25EaXNwb3NpdGlvbnMSDwoHcmV0aXJlZBgBIAMoCRJHCgdyZXR5cGVkGAIgAygLMjYubm9tb3Mua2VybmVsLnYxLkZyb250aWVyVHJhbnNpdGlvbkRpc3Bvc2l0aW9uTWFwRW50cnkSRwoHcmViaW5kcxgDIAMoCzI2Lm5vbW9zLmtlcm5lbC52MS5Gcm9udGllclRyYW5zaXRpb25EaXNwb3NpdGlvbk1hcEVudHJ5EhwKD2Fja25vd2xlZGdlZF9ieRgEIAEoCUgAiAEBQhIKEF9hY2tub3dsZWRnZWRfYnkiPQobRnJvbnRpZXJUcmFuc2l0aW9uVmlvbGF0aW9uEg4KBmRvbWFpbhgBIAEoCRIOCgZkZXRhaWwYAiABKAki1wIKGkZyb250aWVyVHJhbnNpdGlvblJlc3BvbnNlEg8KB2F0X2hhc2gYASABKAkSGQoMY3VycmVudF9oYXNoGAIgASgJSACIAQESFQoNYXRfc3RhdGVfcm9vdBgDIAEoCRIWCg5jYW5kaWRhdGVfaGFzaBgEIAEoCRIOCgZkb21haW4YBSABKAkSDwoHZG9tYWlucxgGIAMoCRINCgVyZWFkeRgHIAEoCBJACgp2aW9sYXRpb25zGAggAygLMiwubm9tb3Mua2VybmVsLnYxLkZyb250aWVyVHJhbnNpdGlvblZpb2xhdGlvbhJKCgxkaXNwb3NpdGlvbnMYCSABKAsyLy5ub21vcy5rZXJuZWwudjEuRnJvbnRpZXJUcmFuc2l0aW9uRGlzcG9zaXRpb25zSAGIAQFCDwoNX2N1cnJlbnRfaGFzaEIPCg1fZGlzcG9zaXRpb25zIi8KE0F1dGhvcml6YXRpb25PYmplY3QSDAoEdHlwZRgBIAEoCRIKCgJpZBgCIAEoCSJUChRBdXRob3JpemF0aW9uU3ViamVjdBIMCgR0eXBlGAEgASgJEgoKAmlkGAIgASgJEhUKCHJlbGF0aW9uGAMgASgJSACIAQFCCwoJX3JlbGF0aW9uIpwBChhSZWxhdGlvbnNoaXBUdXBsZUFkZHJlc3MSNgoIcmVzb3VyY2UYASABKAsyJC5ub21vcy5rZXJuZWwudjEuQXV0aG9yaXphdGlvbk9iamVjdBIQCghyZWxhdGlvbhgCIAEoCRI2CgdzdWJqZWN0GAMgASgLMiUubm9tb3Mua2VybmVsLnYxLkF1dGhvcml6YXRpb25TdWJqZWN0IoEBChhBdXRob3JpemF0aW9uQ29uc2lzdGVuY3kSIwoZY3VycmVudF92ZXJpZmllZF9mcm9udGllchgBIAEoCEgAEhkKD2F0X2xlYXN0X2NvbW1pdBgCIAEoCUgAEhYKDGV4YWN0X2NvbW1pdBgDIAEoCUgAQg0KC3JlcXVpcmVtZW50ImYKHUF1dGhvcml6YXRpb25Db25kaXRpb25Db250ZXh0EhQKDGNvbmRpdGlvbl9pZBgBIAEoCRIvCglhcmd1bWVudHMYAiABKAsyHC5ub21vcy5rZXJuZWwudjEuTm9tb3NTdHJ1Y3Qi9wIKGUF1dGhvcml6YXRpb25DaGVja1JlcXVlc3QSNgoIcmVzb3VyY2UYASABKAsyJC5ub21vcy5rZXJuZWwudjEuQXV0aG9yaXphdGlvbk9iamVjdBISCgpwZXJtaXNzaW9uGAIgASgJEjYKB3N1YmplY3QYAyABKAsyJS5ub21vcy5rZXJuZWwudjEuQXV0aG9yaXphdGlvblN1YmplY3QSPgoLY29uc2lzdGVuY3kYBCABKAsyKS5ub21vcy5rZXJuZWwudjEuQXV0aG9yaXphdGlvbkNvbnNpc3RlbmN5Ej8KB2NvbnRleHQYBSADKAsyLi5ub21vcy5rZXJuZWwudjEuQXV0aG9yaXphdGlvbkNvbmRpdGlvbkNvbnRleHQSIAoTZXhwZWN0ZWRfbW9kZWxfaGFzaBgGIAEoCUgAiAEBEhsKE2luY2x1ZGVfZXhwbGFuYXRpb24YByABKAhCFgoUX2V4cGVjdGVkX21vZGVsX2hhc2gi7QIKGkF1dGhvcml6YXRpb25FeHBhbmRSZXF1ZXN0EjYKCHJlc291cmNlGAEgASgLMiQubm9tb3Mua2VybmVsLnYxLkF1dGhvcml6YXRpb25PYmplY3QSEgoKcGVybWlzc2lvbhgCIAEoCRI+Cgtjb25zaXN0ZW5jeRgDIAEoCzIpLm5vbW9zLmtlcm5lbC52MS5BdXRob3JpemF0aW9uQ29uc2lzdGVuY3kSPwoHY29udGV4dBgEIAMoCzIuLm5vbW9zLmtlcm5lbC52MS5BdXRob3JpemF0aW9uQ29uZGl0aW9uQ29udGV4dBIgChNleHBlY3RlZF9tb2RlbF9oYXNoGAUgASgJSACIAQESDQoFbGltaXQYBiABKA0SEgoFYWZ0ZXIYByABKAlIAYgBARIbChNpbmNsdWRlX2V4cGxhbmF0aW9uGAggASgIQhYKFF9leHBlY3RlZF9tb2RlbF9oYXNoQggKBl9hZnRlciK9AQoZUmVsYXRpb25zaGlwVHVwbGVFdmlkZW5jZRI4CgV0dXBsZRgBIAEoCzIpLm5vbW9zLmtlcm5lbC52MS5SZWxhdGlvbnNoaXBUdXBsZUFkZHJlc3MSEAoIdHVwbGVfaWQYAiABKAkSGgoSYXNzZXJ0aW9uX2V2ZW50X2lkGAMgASgJEiAKE3Jldm9jYXRpb25fZXZlbnRfaWQYBCABKAlIAIgBAUIWChRfcmV2b2NhdGlvbl9ldmVudF9pZCLhAwoYQXV0aG9yaXphdGlvbkV4cGxhbmF0aW9uEkYKCW9wZXJhdGlvbhgBIAEoDjIzLm5vbW9zLmtlcm5lbC52MS5BdXRob3JpemF0aW9uRXhwbGFuYXRpb24uT3BlcmF0aW9uEhAKCHJlbGF0aW9uGAIgASgJEg4KBnJlc3VsdBgDIAEoCBI8CghldmlkZW5jZRgEIAMoCzIqLm5vbW9zLmtlcm5lbC52MS5SZWxhdGlvbnNoaXBUdXBsZUV2aWRlbmNlEjsKCGNoaWxkcmVuGAUgAygLMikubm9tb3Mua2VybmVsLnYxLkF1dGhvcml6YXRpb25FeHBsYW5hdGlvbiLfAQoJT3BlcmF0aW9uEhkKFU9QRVJBVElPTl9VTlNQRUNJRklFRBAAEhQKEE9QRVJBVElPTl9ESVJFQ1QQARIeChpPUEVSQVRJT05fQ09NUFVURURfVVNFUlNFVBACEh4KGk9QRVJBVElPTl9UVVBMRV9UT19VU0VSU0VUEAMSEwoPT1BFUkFUSU9OX1VOSU9OEAQSGgoWT1BFUkFUSU9OX0lOVEVSU0VDVElPThAFEhcKE09QRVJBVElPTl9FWENMVVNJT04QBhIXChNPUEVSQVRJT05fQ09ORElUSU9OEAcidwoaQXV0aG9yaXphdGlvbkRlY2lzaW9uQmFzaXMSIAoYYXV0aG9yaXphdGlvbl9tb2RlbF9oYXNoGAEgASgJEiEKGXJlbGF0aW9uc2hpcF9zdGF0ZV9jb21taXQYAiABKAkSFAoMY29udGV4dF9oYXNoGAMgASgMIr4BChpBdXRob3JpemF0aW9uQ2hlY2tSZXNwb25zZRIPCgdhbGxvd2VkGAEgASgIEjoKBWJhc2lzGAIgASgLMisubm9tb3Mua2VybmVsLnYxLkF1dGhvcml6YXRpb25EZWNpc2lvbkJhc2lzEkMKC2V4cGxhbmF0aW9uGAMgASgLMikubm9tb3Mua2VybmVsLnYxLkF1dGhvcml6YXRpb25FeHBsYW5hdGlvbkgAiAEBQg4KDF9leHBsYW5hdGlvbiKDAgobQXV0aG9yaXphdGlvbkV4cGFuZFJlc3BvbnNlEjcKCHN1YmplY3RzGAEgAygLMiUubm9tb3Mua2VybmVsLnYxLkF1dGhvcml6YXRpb25TdWJqZWN0EjoKBWJhc2lzGAIgASgLMisubm9tb3Mua2VybmVsLnYxLkF1dGhvcml6YXRpb25EZWNpc2lvbkJhc2lzEhEKBG5leHQYAyABKAlIAIgBARJDCgtleHBsYW5hdGlvbhgEIAEoCzIpLm5vbW9zLmtlcm5lbC52MS5BdXRob3JpemF0aW9uRXhwbGFuYXRpb25IAYgBAUIHCgVfbmV4dEIOCgxfZXhwbGFuYXRpb24iqAEKDU91dGJveFJlcXVlc3QSMAoGdGFyZ2V0GAEgASgLMiAubm9tb3Mua2VybmVsLnYxLldvcmtzcGFjZVRhcmdldBItCgVjbG9jaxgCIAEoCzIeLm5vbW9zLmtlcm5lbC52MS5DYXB0dXJlZENsb2NrEjYKB3ByZXBhcmUYAyABKAsyJS5ub21vcy5rZXJuZWwudjEuUHJlcGFyZU91dGJvdW5kT2ZmZXIimQEKC1N5bmNSZXF1ZXN0EjAKBnRhcmdldBgBIAEoCzIgLm5vbW9zLmtlcm5lbC52MS5Xb3Jrc3BhY2VUYXJnZXQSEQoJZnJvbV9iYXNlGAIgASgJEg8KB3RvX2hlYWQYAyABKAkSGgoScGFya19yZWZ1c2VkX2xvY2FsGAQgASgIEhgKEHBhcmtlZF9hdF9taWxsaXMYBSABKAQiOwoaS2VybmVsQ29uZmlndXJhdGlvblJlcXVlc3QSHQoVdHJ1c3Rfcm9vdF9wdWJsaWNfa2V5GAEgASgMIkwKG0tlcm5lbENvbmZpZ3VyYXRpb25SZXNwb25zZRItCgZyZXN1bHQYASABKAsyHS5ub21vcy5rZXJuZWwudjEuQWNrbm93bGVkZ2VkIvMRCg5DdXN0b2R5UmVxdWVzdBI3CgpwYWNrX2RlbHRhGAogASgLMiEubm9tb3Mua2VybmVsLnYxLlBhY2tEZWx0YVJlcXVlc3RIABI3CgphcHBseV9wYWNrGAsgASgLMiEubm9tb3Mua2VybmVsLnYxLkFwcGx5UGFja1JlcXVlc3RIABI3CgpyZXBvX3N0YXRzGAwgASgLMiEubm9tb3Mua2VybmVsLnYxLlJlcG9TdGF0c1JlcXVlc3RIABI9Cg1pbnRlbnRzX2Fib3ZlGA0gASgLMiQubm9tb3Mua2VybmVsLnYxLkludGVudHNBYm92ZVJlcXVlc3RIABI/Cg5pbnNwZWN0X2NoYW5nZRgOIAEoCzIlLm5vbW9zLmtlcm5lbC52MS5JbnNwZWN0Q2hhbmdlUmVxdWVzdEgAEk4KFmVuY29kZV9yZWZ1c2FsX3ZlcmRpY3QYDyABKAsyLC5ub21vcy5rZXJuZWwudjEuRW5jb2RlUmVmdXNhbFZlcmRpY3RSZXF1ZXN0SAASUAoXaW5zcGVjdF9yZWZ1c2FsX3ZlcmRpY3QYECABKAsyLS5ub21vcy5rZXJuZWwudjEuSW5zcGVjdFJlZnVzYWxWZXJkaWN0UmVxdWVzdEgAEjUKCXJlYWRfYmxvYhgRIAEoCzIgLm5vbW9zLmtlcm5lbC52MS5SZWFkQmxvYlJlcXVlc3RIABI5CgtyZXNvbHZlX3JlZhgSIAEoCzIiLm5vbW9zLmtlcm5lbC52MS5SZXNvbHZlUmVmUmVxdWVzdEgAEjUKCWxpc3RfcmVmcxgTIAEoCzIgLm5vbW9zLmtlcm5lbC52MS5MaXN0UmVmc1JlcXVlc3RIABI1Cgl3cml0ZV9yZWYYFCABKAsyIC5ub21vcy5rZXJuZWwudjEuV3JpdGVSZWZSZXF1ZXN0SAASNwoKZGVsZXRlX3JlZhgVIAEoCzIhLm5vbW9zLmtlcm5lbC52MS5EZWxldGVSZWZSZXF1ZXN0SAASRAoRd3JpdGVfbWV0YV9jb21taXQYFiABKAsyJy5ub21vcy5rZXJuZWwudjEuV3JpdGVNZXRhQ29tbWl0UmVxdWVzdEgAEkIKEGxhd19jbG9zdXJlX2luZm8YFyABKAsyJi5ub21vcy5rZXJuZWwudjEuTGF3Q2xvc3VyZUluZm9SZXF1ZXN0SAASRQoRY2hlY2twb2ludF9leHBvcnQYGCABKAsyKC5ub21vcy5rZXJuZWwudjEuQ2hlY2twb2ludEV4cG9ydFJlcXVlc3RIABJFChFjaGVja3BvaW50X2ltcG9ydBgZIAEoCzIoLm5vbW9zLmtlcm5lbC52MS5DaGVja3BvaW50SW1wb3J0UmVxdWVzdEgAEkMKEGNhcGFjaXR5X3Jlc2VydmUYGiABKAsyJy5ub21vcy5rZXJuZWwudjEuQ2FwYWNpdHlSZXNlcnZlUmVxdWVzdEgAEjsKDHJlc3RvcmVfbWFpbhgbIAEoCzIjLm5vbW9zLmtlcm5lbC52MS5SZXN0b3JlTWFpblJlcXVlc3RIABJOChZyZXNvbHZlX3N0YXRlX3Bvc2l0aW9uGBwgASgLMiwubm9tb3Mua2VybmVsLnYxLlJlc29sdmVTdGF0ZVBvc2l0aW9uUmVxdWVzdEgAEkcKEnJlc2lkZW50X2Zvb3RwcmludBgdIAEoCzIpLm5vbW9zLmtlcm5lbC52MS5SZXNpZGVudEZvb3RwcmludFJlcXVlc3RIABJBCg9oaXN0b3J5X3N1bW1hcnkYHiABKAsyJi5ub21vcy5rZXJuZWwudjEuSGlzdG9yeVN1bW1hcnlSZXF1ZXN0SAASWgoccHJvdmVfY29tcGFjdGlvbl9lcXVpdmFsZW5jZRgfIAEoCzIyLm5vbW9zLmtlcm5lbC52MS5Qcm92ZUNvbXBhY3Rpb25FcXVpdmFsZW5jZVJlcXVlc3RIABI+Cg5vcGVuX2dpdF9zdGF0ZRggIAEoCzIkLm5vbW9zLmtlcm5lbC52MS5PcGVuR2l0U3RhdGVSZXF1ZXN0SAASTgoWcmVhZF9jdXN0b2R5X3BsYWNlbWVudBghIAEoCzIsLm5vbW9zLmtlcm5lbC52MS5SZWFkQ3VzdG9keVBsYWNlbWVudFJlcXVlc3RIABJUChlpbnNwZWN0X2N1c3RvZHlfcGxhY2VtZW50GCMgASgLMi8ubm9tb3Mua2VybmVsLnYxLkluc3BlY3RDdXN0b2R5UGxhY2VtZW50UmVxdWVzdEgAElAKF3JlbGVhc2Vfd29ya3NwYWNlX3N0YXRlGCQgASgLMi0ubm9tb3Mua2VybmVsLnYxLlJlbGVhc2VXb3Jrc3BhY2VTdGF0ZVJlcXVlc3RIABJfCh9yZWNvcmRfd29ya3NwYWNlX2VmZmVjdF9vdXRjb21lGCUgASgLMjQubm9tb3Mua2VybmVsLnYxLlJlY29yZFdvcmtzcGFjZUVmZmVjdE91dGNvbWVSZXF1ZXN0SAASTAoVYXR0YWNoX2xvY2FsX2Zyb250aWVyGCYgASgLMisubm9tb3Mua2VybmVsLnYxLkF0dGFjaExvY2FsRnJvbnRpZXJSZXF1ZXN0SAASQwoQYWdncmVnYXRlX2NlbnN1cxgnIAEoCzInLm5vbW9zLmtlcm5lbC52MS5BZ2dyZWdhdGVDZW5zdXNSZXF1ZXN0SAASPQoNYXVkaXRfY3VzdG9keRgoIAEoCzIkLm5vbW9zLmtlcm5lbC52MS5BdWRpdEN1c3RvZHlSZXF1ZXN0SAASSAoTZXhwb3J0X2xhd19wcm9kdWN0cxgpIAEoCzIpLm5vbW9zLmtlcm5lbC52MS5FeHBvcnRMYXdQcm9kdWN0c1JlcXVlc3RIABJIChNpbXBvcnRfbGF3X3Byb2R1Y3RzGCogASgLMikubm9tb3Mua2VybmVsLnYxLkltcG9ydExhd1Byb2R1Y3RzUmVxdWVzdEgAQgsKCW9wZXJhdGlvbkoECCIQI1IXYWRvcHRfY3VzdG9keV9wbGFjZW1lbnQiXgoWQWdncmVnYXRlQ2Vuc3VzUmVxdWVzdBIwCgZ0YXJnZXQYASABKAsyIC5ub21vcy5rZXJuZWwudjEuV29ya3NwYWNlVGFyZ2V0EhIKCnR5cGVfbGltaXQYAiABKA0iMQoSQWdncmVnYXRlVHlwZUNvdW50EgwKBHR5cGUYASABKAkSDQoFY291bnQYAiABKAQi+wEKF0FnZ3JlZ2F0ZUNlbnN1c1Jlc3BvbnNlEhEKBGhlYWQYASABKAlIAIgBARIcCg9hZ2dyZWdhdGVfY291bnQYAiABKARIAYgBARIXCgpzdGF0ZV9yb290GAMgASgJSAKIAQESNgoJdG9wX3R5cGVzGAQgAygLMiMubm9tb3Mua2VybmVsLnYxLkFnZ3JlZ2F0ZVR5cGVDb3VudBIdChB0eXBlc19zdGF0ZV9yb290GAUgASgJSAOIAQFCBwoFX2hlYWRCEgoQX2FnZ3JlZ2F0ZV9jb3VudEINCgtfc3RhdGVfcm9vdEITChFfdHlwZXNfc3RhdGVfcm9vdCIoChhSZXNpZGVudEZvb3RwcmludFJlcXVlc3QSDAoEZGVlcBgBIAEoCCL0AwoRUmVzaWRlbnRGb290cHJpbnQSEQoJd29ya3NwYWNlGAEgASgJEg4KBmJyYW5jaBgCIAEoCRIYChByZWFkX21vZGVsX2J5dGVzGAMgASgEEh0KFXJlYWRfbW9kZWxfcnVzdF9ieXRlcxgEIAEoBBIYChBmb2xkX3N0YXRlX2J5dGVzGAUgASgEEhMKC2ZvbGRfaW1hZ2VzGAYgASgNEh8KF3NoYXJlZF9hdHRyaWJ1dGVkX2J5dGVzGAcgASgEEhIKCmFnZ3JlZ2F0ZXMYCCABKAQSNgoKY29tcG9uZW50cxgJIAMoCzIiLm5vbW9zLmtlcm5lbC52MS5SZXNpZGVudENvbXBvbmVudBISCgpjb21wdXRlX3VzGAogASgEEkUKEXJlYWRfc3RvcmFnZV9raW5kGAsgASgOMioubm9tb3Mua2VybmVsLnYxLlJlYWRQcm9qZWN0aW9uU3RvcmFnZUtpbmQSHwoXc3FsaXRlX2NhY2hlX3VzZWRfYnl0ZXMYDCABKAQSGAoQZmxhdF9zY2FsYXJfcm93cxgNIAEoBBIdChVmbGF0X3NjYWxhcl9yb3dzX3JlYWQYDiABKAQSHQoQZnVsbF9yZXBsYXlfaGVhZBgPIAEoCUgAiAEBQhMKEV9mdWxsX3JlcGxheV9oZWFkImkKEVJlc2lkZW50Q29tcG9uZW50EjQKBGtpbmQYASABKA4yJi5ub21vcy5rZXJuZWwudjEuUmVzaWRlbnRDb21wb25lbnRLaW5kEg0KBWJ5dGVzGAIgASgEEg8KB2NlaWxpbmcYAyABKAgiygEKGVJlc2lkZW50Rm9vdHByaW50UmVzcG9uc2USNQoJcmVzaWRlbnRzGAEgAygLMiIubm9tb3Mua2VybmVsLnYxLlJlc2lkZW50Rm9vdHByaW50EhwKFGFsbG9jYXRvcl9saXZlX2J5dGVzGAIgASgEEhgKEGF0dHJpYnV0ZWRfYnl0ZXMYAyABKAQSGQoRdW5hY2NvdW50ZWRfYnl0ZXMYBCABKAQSFQoNYWNjb3VudGluZ191cxgFIAEoBBIMCgRkZWVwGAYgASgIIpwBChBQYWNrRGVsdGFSZXF1ZXN0EgwKBHJlcG8YASABKAkSEQoEaGVhZBgCIAEoCUgAiAEBEhEKBGJhc2UYAyABKAlIAYgBARIOCgZicmFuY2gYBCABKAkSHQoQc3RhZ2VkX3BhY2tfZmlsZRgFIAEoCUgCiAEBQgcKBV9oZWFkQgcKBV9iYXNlQhMKEV9zdGFnZWRfcGFja19maWxlIpYBChBBcHBseVBhY2tSZXF1ZXN0EgwKBHJlcG8YASABKAkSDgoEcGFjaxgCIAEoDEgAEhoKEHN0YWdlZF9wYWNrX2ZpbGUYBCABKAlIABIRCgRoZWFkGAMgASgJSAGIAQESDwoHc2hhbGxvdxgFIAMoCRIRCgl1bnNoYWxsb3cYBiADKAlCCAoGc291cmNlQgcKBV9oZWFkIiAKEFJlcG9TdGF0c1JlcXVlc3QSDAoEcmVwbxgBIAEoCSKsAQoTSW50ZW50c0Fib3ZlUmVxdWVzdBIMCgRyZXBvGAEgASgJEhEKBGhlYWQYAiABKAlIAIgBARIRCgRiYXNlGAMgASgJSAGIAQESDgoGYnJhbmNoGAQgASgJEg0KBWxpbWl0GAUgASgEEhgKEGNvbXBsZXRlX2xvZ2ljYWwYBiABKAgSFgoOY29tcGFjdF9zdG9yZWQYByABKAhCBwoFX2hlYWRCBwoFX2Jhc2UibQoVSGlzdG9yeVN1bW1hcnlSZXF1ZXN0EgwKBHJlcG8YASABKAkSEQoEaGVhZBgCIAEoCUgAiAEBEg4KBmJyYW5jaBgDIAEoCRIRCgRiYXNlGAQgASgJSAGIAQFCBwoFX2hlYWRCBwoFX2Jhc2UiKwoUSW5zcGVjdENoYW5nZVJlcXVlc3QSEwoLY2hhbmdlX3VzZGEYASABKAwi3wEKDlJlZnVzYWxWZXJkaWN0EhUKCG9mZmVyX2lkGAEgASgJSACIAQESEAoDb2lkGAIgASgJSAGIAQESEwoGZG9tYWluGAMgASgJSAKIAQESGQoMZGlyZWN0aXZlX2lkGAQgASgJSAOIAQESFAoHc2Vzc2lvbhgFIAEoCUgEiAEBEhEKCXBhcmtlZF9hdBgGIAEoCRIOCgZyZWFzb24YByABKAlCCwoJX29mZmVyX2lkQgYKBF9vaWRCCQoHX2RvbWFpbkIPCg1fZGlyZWN0aXZlX2lkQgoKCF9zZXNzaW9uIk8KG0VuY29kZVJlZnVzYWxWZXJkaWN0UmVxdWVzdBIwCgd2ZXJkaWN0GAEgASgLMh8ubm9tb3Mua2VybmVsLnYxLlJlZnVzYWxWZXJkaWN0IjQKHEluc3BlY3RSZWZ1c2FsVmVyZGljdFJlcXVlc3QSFAoMdmVyZGljdF91c2RhGAEgASgMItQBChVDb21wYWN0aW9uRXF1aXZhbGVuY2USEwoLc291cmNlX2hlYWQYASABKAkSFgoOc291cmNlX2dlbmVzaXMYAiABKAkSFgoOY2FuZGlkYXRlX2hlYWQYAyABKAkSGQoRY2FuZGlkYXRlX2dlbmVzaXMYBCABKAkSFgoOc291cmNlX2ludGVudHMYBSABKAQSFwoPY2FycmllZF9pbnRlbnRzGAYgASgEEhYKDnBhcmtlZF9pbnRlbnRzGAcgASgEEhIKCmVxdWl2YWxlbnQYCCABKAgifQohUHJvdmVDb21wYWN0aW9uRXF1aXZhbGVuY2VSZXF1ZXN0EhMKC3NvdXJjZV9yZXBvGAEgASgJEhMKC3NvdXJjZV9oZWFkGAIgASgJEhYKDmNhbmRpZGF0ZV9yZXBvGAMgASgJEhYKDmNhbmRpZGF0ZV9oZWFkGAQgASgJIjoKD1JlYWRCbG9iUmVxdWVzdBIMCgRyZXBvGAEgASgJEgsKA29pZBgCIAEoCRIMCgRwYXRoGAMgASgJIjQKEVJlc29sdmVSZWZSZXF1ZXN0EgwKBHJlcG8YASABKAkSEQoJcmVmZXJlbmNlGAIgASgJIjYKD1BoeXNpY2FsUmVmRmlsZRIRCglyZWZlcmVuY2UYASABKAkSEAoIY29udGVudHMYAiABKAwipwIKD0xpc3RSZWZzUmVxdWVzdBIMCgRyZXBvGAEgASgJEg4KBnByZWZpeBgCIAEoCRIYChBsb29zZV9yZWZlcmVuY2VzGAMgAygJEiAKGGxvb3NlX2ludmVudG9yeV9jb21wbGV0ZRgEIAEoCBIgChNwYWNrZWRfcmVmc19wcmVzZW50GAUgASgISACIAQESPQoTcGh5c2ljYWxfbG9vc2VfcmVmcxgGIAMoCzIgLm5vbW9zLmtlcm5lbC52MS5QaHlzaWNhbFJlZkZpbGUSHAoUcGh5c2ljYWxfcGFja2VkX3JlZnMYByABKAwSIwobcGh5c2ljYWxfaW52ZW50b3J5X2NvbXBsZXRlGAggASgIQhYKFF9wYWNrZWRfcmVmc19wcmVzZW50IkIKD1dyaXRlUmVmUmVxdWVzdBIMCgRyZXBvGAEgASgJEhEKCXJlZmVyZW5jZRgCIAEoCRIOCgZ0YXJnZXQYAyABKAkiMwoQRGVsZXRlUmVmUmVxdWVzdBIMCgRyZXBvGAEgASgJEhEKCXJlZmVyZW5jZRgCIAEoCSIpCghNZXRhRmlsZRIMCgRwYXRoGAEgASgJEg8KB2NvbnRlbnQYAiABKAwirgEKFldyaXRlTWV0YUNvbW1pdFJlcXVlc3QSDAoEcmVwbxgBIAEoCRIPCgdwYXJlbnRzGAIgAygJEigKBWZpbGVzGAMgAygLMhkubm9tb3Mua2VybmVsLnYxLk1ldGFGaWxlEg8KB21lc3NhZ2UYBCABKAkSFAoMdGltZV9zZWNvbmRzGAUgASgSEhYKCXJlZmVyZW5jZRgGIAEoCUgAiAEBQgwKCl9yZWZlcmVuY2UiZwoVTGF3Q2xvc3VyZUluZm9SZXF1ZXN0EhQKDGNsb3N1cmVfZmlsZRgBIAEoCRI4CgpjYXBhYmlsaXR5GAIgASgOMiQubm9tb3Mua2VybmVsLnYxLktlcm5lbExhd0NhcGFiaWxpdHkihwEKF0NoZWNrcG9pbnRFeHBvcnRSZXF1ZXN0EjAKBnRhcmdldBgBIAEoCzIgLm5vbW9zLmtlcm5lbC52MS5Xb3Jrc3BhY2VUYXJnZXQSIQoUc3RhZ2VkX2Zyb250aWVyX2ZpbGUYAiABKAlIAIgBAUIXChVfc3RhZ2VkX2Zyb250aWVyX2ZpbGUiQQoLRnJvbnRpZXJIbGMSEAoIcGh5c2ljYWwYASABKAQSDwoHbG9naWNhbBgCIAEoDRIPCgdyZXBsaWNhGAMgASgEIu0EChdWZXJpZmllZEZyb250aWVyUmVjZWlwdBIWCg5mb3JtYXRfdmVyc2lvbhgBIAEoDRILCgNvaWQYAiABKAkSDwoHaW50ZW50cxgDIAEoBBITCgtwbGFuc19yZXJ1bhgEIAEoBBIcCg9jb250cm9sbGVyX2hhc2gYBSABKAlIAIgBARIZChFpbnN0YWxsZWRfZG9tYWlucxgGIAMoCRIOCgZsaW5lYXIYByABKAgSMwoIbGFzdF9obGMYCCABKAsyHC5ub21vcy5rZXJuZWwudjEuRnJvbnRpZXJIbGNIAYgBARIUCgdsYXN0X2lkGAkgASgJSAKIAQESEQoJc3RhdGVfb2lkGAogASgJEhQKDHN0YXRlX3NoYTI1NhgLIAEoCRI5Cg5zdGF0ZV9sYXN0X2hsYxgMIAEoCzIcLm5vbW9zLmtlcm5lbC52MS5Gcm9udGllckhsY0gDiAEBEhoKDXN0YXRlX2xhc3RfaWQYDSABKAlIBIgBARIXCg9tYW5pZmVzdF9zaGEyNTYYDiABKAkSHgoWbGF3X2Nsb3N1cmVfaWRlbnRpdGllcxgPIAMoCRIaChJyZXNvbHZhYmxlX2RvbWFpbnMYECADKAkSIgoVcHJvamVjdGlvbl9zdGF0ZV9yb290GBEgASgJSAWIAQESDgoGd2Fsa2VkGBIgASgIQhIKEF9jb250cm9sbGVyX2hhc2hCCwoJX2xhc3RfaGxjQgoKCF9sYXN0X2lkQhEKD19zdGF0ZV9sYXN0X2hsY0IQCg5fc3RhdGVfbGFzdF9pZEIYChZfcHJvamVjdGlvbl9zdGF0ZV9yb290IkUKFUZvbGRGcm9udGllckFnZ3JlZ2F0ZRIUCgxhZ2dyZWdhdGVfaWQYASABKAkSFgoOYWdncmVnYXRlX3VzZGEYAiABKAwiQQoXRm9sZEZyb250aWVyRmluZ2VycHJpbnQSEQoJaW50ZW50X2lkGAEgASgJEhMKC2ZpbmdlcnByaW50GAIgASgJItYDChRGb2xkRnJvbnRpZXJTbmFwc2hvdBIWCg5mb3JtYXRfdmVyc2lvbhgBIAEoDRILCgN0aXAYAiABKAkSDwoHZ2VuZXNpcxgDIAEoCRIVCg1oaXN0b3J5X2RlcHRoGAQgASgEEjoKCmFnZ3JlZ2F0ZXMYBSADKAsyJi5ub21vcy5rZXJuZWwudjEuRm9sZEZyb250aWVyQWdncmVnYXRlEjgKDWhsY193YXRlcm1hcmsYBiABKAsyHC5ub21vcy5rZXJuZWwudjEuRnJvbnRpZXJIbGNIAIgBARIzCghsYXN0X2hsYxgHIAEoCzIcLm5vbW9zLmtlcm5lbC52MS5Gcm9udGllckhsY0gBiAEBEhQKB2xhc3RfaWQYCCABKAlIAogBARIWCg5zdHJpa2VfdGFyZ2V0cxgJIAMoCRJFChNpbnRlbnRfZmluZ2VycHJpbnRzGAogAygLMigubm9tb3Mua2VybmVsLnYxLkZvbGRGcm9udGllckZpbmdlcnByaW50EhcKCnN0YXRlX3Jvb3QYCyABKAlIA4gBAUIQCg5faGxjX3dhdGVybWFya0ILCglfbGFzdF9obGNCCgoIX2xhc3RfaWRCDQoLX3N0YXRlX3Jvb3QimwMKGFN0b3JlZENoZWNrcG9pbnRNYW5pZmVzdBIWCg5mb3JtYXRfdmVyc2lvbhgBIAEoDRITCgZjdXJzb3IYAiABKAlIAIgBARIYChBjaGVja3BvaW50X2J5dGVzGAMgASgEEhAKCGxhd19oYXNoGAQgASgJEjsKC2NvbXByZXNzaW9uGAUgASgOMiYubm9tb3Mua2VybmVsLnYxLkNoZWNrcG9pbnRDb21wcmVzc2lvbhIRCglyYXdfYnl0ZXMYBiABKAQSFAoMc3RvcmVkX2J5dGVzGAcgASgEEh0KFWZyb250aWVyX3N0b3JlZF9ieXRlcxgIIAEoBBIXCgpzdGF0ZV9yb290GAkgASgJSAGIAQESUAoZdmVyaWZpZWRfZnJvbnRpZXJfcmVjZWlwdBgKIAEoCzIoLm5vbW9zLmtlcm5lbC52MS5WZXJpZmllZEZyb250aWVyUmVjZWlwdEgCiAEBQgkKB19jdXJzb3JCDQoLX3N0YXRlX3Jvb3RCHAoaX3ZlcmlmaWVkX2Zyb250aWVyX3JlY2VpcHQiwQMKF0NoZWNrcG9pbnRJbXBvcnRSZXF1ZXN0EjAKBnRhcmdldBgBIAEoCzIgLm5vbW9zLmtlcm5lbC52MS5Xb3Jrc3BhY2VUYXJnZXQSEgoIZnJvbnRpZXIYAiABKAxIABIeChRzdGFnZWRfZnJvbnRpZXJfZmlsZRgGIAEoCUgAEhMKBmN1cnNvchgDIAEoCUgBiAEBEhcKCnN0YXRlX3Jvb3QYBCABKAlIAogBARINCgVzcGFucxgFIAEoCBIRCgRoZWFkGAcgASgJSAOIAQESUAoZdmVyaWZpZWRfZnJvbnRpZXJfcmVjZWlwdBgIIAEoCzIoLm5vbW9zLmtlcm5lbC52MS5WZXJpZmllZEZyb250aWVyUmVjZWlwdEgEiAEBEkoKE3ZlcmlmaWNhdGlvbl9wb2xpY3kYCSABKA4yLS5ub21vcy5rZXJuZWwudjEuQ2hlY2twb2ludFZlcmlmaWNhdGlvblBvbGljeUIRCg9mcm9udGllcl9zb3VyY2VCCQoHX2N1cnNvckINCgtfc3RhdGVfcm9vdEIHCgVfaGVhZEIcChpfdmVyaWZpZWRfZnJvbnRpZXJfcmVjZWlwdCIxChZDYXBhY2l0eVJlc2VydmVSZXF1ZXN0EhcKD2FnZ3JlZ2F0ZV9jb3VudBgBIAEoBCKZAgoSUmVzdG9yZU1haW5SZXF1ZXN0EjAKBnRhcmdldBgBIAEoCzIgLm5vbW9zLmtlcm5lbC52MS5Xb3Jrc3BhY2VUYXJnZXQSDAoEaGVhZBgCIAEoCRITCgtkaWFnbm9zdGljcxgDIAEoCBIYChBvcGVyYXRvcl9jdXN0b2R5GAQgASgIEiAKE2V4cGVjdGVkX2xvY2FsX2hlYWQYBSABKAlIAIgBARJAChNjdXN0b2R5X2NlcnRpZmljYXRlGAYgASgLMiMubm9tb3Mua2VybmVsLnYxLkN1c3RvZHlDZXJ0aWZpY2F0ZRIYChBwcm92aWRlcl9jdXN0b2R5GAcgASgIQhYKFF9leHBlY3RlZF9sb2NhbF9oZWFkIm0KE0F1ZGl0Q3VzdG9keVJlcXVlc3QSMAoGdGFyZ2V0GAEgASgLMiAubm9tb3Mua2VybmVsLnYxLldvcmtzcGFjZVRhcmdldBIVCg1idWRnZXRfbWljcm9zGAIgASgNEg0KBXN0YXJ0GAMgASgIIpQBChRBdWRpdEN1c3RvZHlSZXNwb25zZRIPCgdwZW5kaW5nGAEgASgIEgwKBGhlYWQYAiABKAkSDgoGd2Fsa2VkGAMgASgEEg0KBXRvdGFsGAQgASgEEg8KB291dGNvbWUYBSABKAkSLQoHdmVyZGljdBgGIAEoCzIcLm5vbW9zLmtlcm5lbC52MS5Ob21vc1N0cnVjdCJ+CgtMYXdQcm9kdWN0cxIUCgxsYXdfaWRlbnRpdHkYASABKAkSFgoOZm9ybWF0X3ZlcnNpb24YAiABKA0SEgoKcmVhZF9sYXllchgDIAEoDBIVCg1jb21tYW5kX2xheWVyGAQgASgMEhYKDnNlbWFudGljX2xheWVyGAUgASgMIkwKGEV4cG9ydExhd1Byb2R1Y3RzUmVxdWVzdBIwCgZ0YXJnZXQYASABKAsyIC5ub21vcy5rZXJuZWwudjEuV29ya3NwYWNlVGFyZ2V0IlkKGUV4cG9ydExhd1Byb2R1Y3RzUmVzcG9uc2USDAoEaGVhZBgBIAEoCRIuCghwcm9kdWN0cxgCIAMoCzIcLm5vbW9zLmtlcm5lbC52MS5MYXdQcm9kdWN0cyJ8ChhJbXBvcnRMYXdQcm9kdWN0c1JlcXVlc3QSMAoGdGFyZ2V0GAEgASgLMiAubm9tb3Mua2VybmVsLnYxLldvcmtzcGFjZVRhcmdldBIuCghwcm9kdWN0cxgCIAMoCzIcLm5vbW9zLmtlcm5lbC52MS5MYXdQcm9kdWN0cyItChlJbXBvcnRMYXdQcm9kdWN0c1Jlc3BvbnNlEhAKCGltcG9ydGVkGAEgAygJIm8KEkN1c3RvZHlDZXJ0aWZpY2F0ZRIRCgl3b3Jrc3BhY2UYASABKAkSDAoEaGVhZBgCIAEoCRIRCglrZXlfZXBvY2gYAyABKAMSEgoKcHVibGljX2tleRgEIAEoDBIRCglzaWduYXR1cmUYBSABKAwiZAoTT3BlbkdpdFN0YXRlUmVxdWVzdBIwCgZ0YXJnZXQYASABKAsyIC5ub21vcy5rZXJuZWwudjEuV29ya3NwYWNlVGFyZ2V0EgwKBGhlYWQYAiABKAkSDQoFc3BhbnMYAyABKAgiawoaQXR0YWNoTG9jYWxGcm9udGllclJlcXVlc3QSMAoGdGFyZ2V0GAEgASgLMiAubm9tb3Mua2VybmVsLnYxLldvcmtzcGFjZVRhcmdldBIMCgRoZWFkGAIgASgJEg0KBXNwYW5zGAMgASgIIlMKDUN1c3RvZHlSZW1vdGUSDAoEbmFtZRgBIAEoCRILCgN1cmwYAiABKAkSFQoNcGVlcl9pZGVudGl0eRgDIAEoCRIQCghwcmlvcml0eRgEIAEoDSLGAQoUQ3VzdG9keVBsYWNlbWVudFJ1bGUSEgoKcGVlcl9jbGFzcxgBIAEoCRJAChBrZXJuZWxfcmVzaWRlbmN5GAIgASgOMiYubm9tb3Mua2VybmVsLnYxLktlcm5lbFJlc2lkZW5jeUludGVudBJCChFjdXN0b2R5X3JldGVudGlvbhgDIAEoDjInLm5vbW9zLmtlcm5lbC52MS5DdXN0b2R5UmV0ZW50aW9uSW50ZW50EhQKDHJlbW90ZV9uYW1lcxgEIAMoCSKuAgoWQ3VzdG9keVBsYWNlbWVudFBvbGljeRITCgtkZWNsYXJhdGlvbhgBIAEoCRIWCg5wYWNrYWdlX3NoYTI1NhgCIAEoCRI0CgVydWxlcxgDIAMoCzIlLm5vbW9zLmtlcm5lbC52MS5DdXN0b2R5UGxhY2VtZW50UnVsZRISCgphZG9wdGVkX2J5GAQgASgJEg4KBnJlYXNvbhgFIAEoCRIeChZlZmZlY3RpdmVfdGltZV9zZWNvbmRzGAYgASgSEi8KB3JlbW90ZXMYByADKAsyHi5ub21vcy5rZXJuZWwudjEuQ3VzdG9keVJlbW90ZRIiChVyZWNpcGllbnRfbWFpbGJveF91cmwYCCABKAlIAIgBAUIYChZfcmVjaXBpZW50X21haWxib3hfdXJsIlkKG0N1c3RvZHlQbGFjZW1lbnRFeHBlY3RhdGlvbhIQCgZhYnNlbnQYASABKAhIABINCgNvaWQYAiABKAlIABINCgNhbnkYAyABKAhIAEIKCghmcm9udGllciIrChtSZWFkQ3VzdG9keVBsYWNlbWVudFJlcXVlc3QSDAoEcmVwbxgBIAEoCSI1Ch5JbnNwZWN0Q3VzdG9keVBsYWNlbWVudFJlcXVlc3QSEwoLcG9saWN5X3VzZGEYASABKAwiiQEKDlBsYWNlbWVudE9mZmVyEj4KCGV4cGVjdGVkGAEgASgLMiwubm9tb3Mua2VybmVsLnYxLkN1c3RvZHlQbGFjZW1lbnRFeHBlY3RhdGlvbhI3CgZwb2xpY3kYAiABKAsyJy5ub21vcy5rZXJuZWwudjEuQ3VzdG9keVBsYWNlbWVudFBvbGljeSJpChtSZXNvbHZlU3RhdGVQb3NpdGlvblJlcXVlc3QSDAoEcmVwbxgBIAEoCRIRCgltYWluX2hlYWQYAiABKAkSFQoNaGludGVkX2NvbW1pdBgDIAEoCRISCgpzdGF0ZV9yb290GAQgASgJIoUSCg9DdXN0b2R5UmVzcG9uc2USOAoKcGFja19kZWx0YRgKIAEoCzIiLm5vbW9zLmtlcm5lbC52MS5QYWNrRGVsdGFSZXNwb25zZUgAEjgKCmFwcGx5X3BhY2sYCyABKAsyIi5ub21vcy5rZXJuZWwudjEuQXBwbHlQYWNrUmVzcG9uc2VIABI4CgpyZXBvX3N0YXRzGAwgASgLMiIubm9tb3Mua2VybmVsLnYxLlJlcG9TdGF0c1Jlc3BvbnNlSAASPgoNaW50ZW50c19hYm92ZRgNIAEoCzIlLm5vbW9zLmtlcm5lbC52MS5JbnRlbnRzQWJvdmVSZXNwb25zZUgAEkAKDmluc3BlY3RfY2hhbmdlGA4gASgLMiYubm9tb3Mua2VybmVsLnYxLkluc3BlY3RDaGFuZ2VSZXNwb25zZUgAEk8KFmVuY29kZV9yZWZ1c2FsX3ZlcmRpY3QYDyABKAsyLS5ub21vcy5rZXJuZWwudjEuRW5jb2RlUmVmdXNhbFZlcmRpY3RSZXNwb25zZUgAElEKF2luc3BlY3RfcmVmdXNhbF92ZXJkaWN0GBAgASgLMi4ubm9tb3Mua2VybmVsLnYxLkluc3BlY3RSZWZ1c2FsVmVyZGljdFJlc3BvbnNlSAASNgoJcmVhZF9ibG9iGBEgASgLMiEubm9tb3Mua2VybmVsLnYxLlJlYWRCbG9iUmVzcG9uc2VIABI6CgtyZXNvbHZlX3JlZhgSIAEoCzIjLm5vbW9zLmtlcm5lbC52MS5SZXNvbHZlUmVmUmVzcG9uc2VIABI2CglsaXN0X3JlZnMYEyABKAsyIS5ub21vcy5rZXJuZWwudjEuTGlzdFJlZnNSZXNwb25zZUgAEjIKCXdyaXRlX3JlZhgUIAEoCzIdLm5vbW9zLmtlcm5lbC52MS5BY2tub3dsZWRnZWRIABIzCgpkZWxldGVfcmVmGBUgASgLMh0ubm9tb3Mua2VybmVsLnYxLkFja25vd2xlZGdlZEgAEkUKEXdyaXRlX21ldGFfY29tbWl0GBYgASgLMigubm9tb3Mua2VybmVsLnYxLldyaXRlTWV0YUNvbW1pdFJlc3BvbnNlSAASQwoQbGF3X2Nsb3N1cmVfaW5mbxgXIAEoCzInLm5vbW9zLmtlcm5lbC52MS5MYXdDbG9zdXJlSW5mb1Jlc3BvbnNlSAASRgoRY2hlY2twb2ludF9leHBvcnQYGCABKAsyKS5ub21vcy5rZXJuZWwudjEuQ2hlY2twb2ludEV4cG9ydFJlc3BvbnNlSAASRgoRY2hlY2twb2ludF9pbXBvcnQYGSABKAsyKS5ub21vcy5rZXJuZWwudjEuQ2hlY2twb2ludEltcG9ydFJlc3BvbnNlSAASRAoQY2FwYWNpdHlfcmVzZXJ2ZRgaIAEoCzIoLm5vbW9zLmtlcm5lbC52MS5DYXBhY2l0eVJlc2VydmVSZXNwb25zZUgAEjwKDHJlc3RvcmVfbWFpbhgbIAEoCzIkLm5vbW9zLmtlcm5lbC52MS5SZXN0b3JlTWFpblJlc3BvbnNlSAASTwoWcmVzb2x2ZV9zdGF0ZV9wb3NpdGlvbhgcIAEoCzItLm5vbW9zLmtlcm5lbC52MS5SZXNvbHZlU3RhdGVQb3NpdGlvblJlc3BvbnNlSAASSAoScmVzaWRlbnRfZm9vdHByaW50GB0gASgLMioubm9tb3Mua2VybmVsLnYxLlJlc2lkZW50Rm9vdHByaW50UmVzcG9uc2VIABJCCg9oaXN0b3J5X3N1bW1hcnkYHiABKAsyJy5ub21vcy5rZXJuZWwudjEuSGlzdG9yeVN1bW1hcnlSZXNwb25zZUgAElsKHHByb3ZlX2NvbXBhY3Rpb25fZXF1aXZhbGVuY2UYHyABKAsyMy5ub21vcy5rZXJuZWwudjEuUHJvdmVDb21wYWN0aW9uRXF1aXZhbGVuY2VSZXNwb25zZUgAEj8KDm9wZW5fZ2l0X3N0YXRlGCAgASgLMiUubm9tb3Mua2VybmVsLnYxLk9wZW5HaXRTdGF0ZVJlc3BvbnNlSAASTwoWcmVhZF9jdXN0b2R5X3BsYWNlbWVudBghIAEoCzItLm5vbW9zLmtlcm5lbC52MS5SZWFkQ3VzdG9keVBsYWNlbWVudFJlc3BvbnNlSAASVQoZaW5zcGVjdF9jdXN0b2R5X3BsYWNlbWVudBgjIAEoCzIwLm5vbW9zLmtlcm5lbC52MS5JbnNwZWN0Q3VzdG9keVBsYWNlbWVudFJlc3BvbnNlSAASUQoXcmVsZWFzZV93b3Jrc3BhY2Vfc3RhdGUYJCABKAsyLi5ub21vcy5rZXJuZWwudjEuUmVsZWFzZVdvcmtzcGFjZVN0YXRlUmVzcG9uc2VIABJaCh9yZWNvcmRfd29ya3NwYWNlX2VmZmVjdF9vdXRjb21lGCUgASgLMi8ubm9tb3Mua2VybmVsLnYxLlJlY29yZGVkV29ya3NwYWNlRWZmZWN0T3V0Y29tZUgAEk0KFWF0dGFjaF9sb2NhbF9mcm9udGllchgmIAEoCzIsLm5vbW9zLmtlcm5lbC52MS5BdHRhY2hMb2NhbEZyb250aWVyUmVzcG9uc2VIABJEChBhZ2dyZWdhdGVfY2Vuc3VzGCcgASgLMigubm9tb3Mua2VybmVsLnYxLkFnZ3JlZ2F0ZUNlbnN1c1Jlc3BvbnNlSAASPgoNYXVkaXRfY3VzdG9keRgoIAEoCzIlLm5vbW9zLmtlcm5lbC52MS5BdWRpdEN1c3RvZHlSZXNwb25zZUgAEkkKE2V4cG9ydF9sYXdfcHJvZHVjdHMYKSABKAsyKi5ub21vcy5rZXJuZWwudjEuRXhwb3J0TGF3UHJvZHVjdHNSZXNwb25zZUgAEkkKE2ltcG9ydF9sYXdfcHJvZHVjdHMYKiABKAsyKi5ub21vcy5rZXJuZWwudjEuSW1wb3J0TGF3UHJvZHVjdHNSZXNwb25zZUgAQgsKCW9wZXJhdGlvbkoECCIQI1IXYWRvcHRfY3VzdG9keV9wbGFjZW1lbnQiMAoRUGFja0RlbHRhUmVzcG9uc2USDAoEcGFjaxgBIAEoDBINCgVieXRlcxgCIAEoBCKFAQoRQXBwbHlQYWNrUmVzcG9uc2USFAoMb2JqZWN0X2NvdW50GAEgASgEEhEKCXBhY2tfaGFzaBgCIAEoCRI7CgdjbG9zdXJlGAMgASgLMiUubm9tb3Mua2VybmVsLnYxLlBoeXNpY2FsQ2xvc3VyZUNoZWNrSACIAQFCCgoIX2Nsb3N1cmUibQoUUGh5c2ljYWxDbG9zdXJlQ2hlY2sSFgoOcmV1c2VkX3JlY2VpcHQYASABKAgSFAoMY29tbWl0c19yZWFkGAIgASgEEhIKCnRyZWVzX3JlYWQYAyABKAQSEwoLbGVhdmVzX3JlYWQYBCABKAQiuAEKEVJlcG9TdGF0c1Jlc3BvbnNlEhMKC3RvdGFsX2J5dGVzGAEgASgEEhQKDG9iamVjdF9ieXRlcxgCIAEoBBIVCg1sb29zZV9vYmplY3RzGAMgASgEEhMKC2xvb3NlX2J5dGVzGAQgASgEEhIKCnBhY2tfZmlsZXMYBSABKAQSEgoKcGFja19ieXRlcxgGIAEoBBITCgtpbmRleF9ieXRlcxgHIAEoBBIPCgdzaGFsbG93GAggAygJIuIBCgxJbnRlbnRSZWNvcmQSCwoDb2lkGAEgASgJEhEKCWludGVudF9pZBgCIAEoCRIOCgZkb21haW4YAyABKAkSEQoJZGlyZWN0aXZlGAQgASgJEhMKC2NoYW5nZV91c2RhGAUgASgMEi4KCHNlbWFudGljGAYgASgLMhwubm9tb3Mua2VybmVsLnYxLk5vbW9zU3RydWN0EkoKFXRyYW5zcG9ydF9yZXF1aXJlbWVudBgHIAEoDjIrLm5vbW9zLmtlcm5lbC52MS5JbnRlbnRUcmFuc3BvcnRSZXF1aXJlbWVudCJGChRJbnRlbnRzQWJvdmVSZXNwb25zZRIuCgdpbnRlbnRzGAEgAygLMh0ubm9tb3Mua2VybmVsLnYxLkludGVudFJlY29yZCJ0ChZIaXN0b3J5U3VtbWFyeVJlc3BvbnNlEgwKBGhlYWQYASABKAkSDgoGb2xkZXN0GAIgASgJEhQKDGNvbW1pdF9jb3VudBgDIAEoBBIQCghjb21wbGV0ZRgEIAEoCBIUCgxyZWFjaGVkX2Jhc2UYBSABKAgiQgoTTm9taW5hbENhbGxJZGVudGl0eRITCgtkb21haW5fcGF0aBgBIAEoCRIWCg5kaXJlY3RpdmVfcGF0aBgCIAEoCSKIAQoYTGlmZWN5Y2xlSW5zdGFsbElkZW50aXR5Eh8KF3RhcmdldF9jbG9zdXJlX2lkZW50aXR5GAEgASgJEhQKDGluc3RhbGxlZF9ieRgCIAEoCRI1CgVwaGFzZRgDIAEoDjImLm5vbW9zLmtlcm5lbC52MS5MaWZlY3ljbGVJbnN0YWxsUGhhc2UiWgodV29ya3NwYWNlUmVzaWRlbmN5UmVxdWlyZW1lbnQSEQoJd29ya3NwYWNlGAEgASgJEhMKC3NvdXJjZV9oZWFkGAIgASgJEhEKCWZvbGRfcm9vdBgDIAEoCSK0AgoVSW5zcGVjdENoYW5nZVJlc3BvbnNlEi4KCHNlbWFudGljGAEgASgLMhwubm9tb3Mua2VybmVsLnYxLk5vbW9zU3RydWN0EhEKCWludGVudF9pZBgCIAEoCRIyCgRjYWxsGAMgASgLMiQubm9tb3Mua2VybmVsLnYxLk5vbWluYWxDYWxsSWRlbnRpdHkSEAoIYXV0aG9yZWQYBCABKAgSRAoRbGlmZWN5Y2xlX2luc3RhbGwYBSABKAsyKS5ub21vcy5rZXJuZWwudjEuTGlmZWN5Y2xlSW5zdGFsbElkZW50aXR5EkwKFHJlcXVpcmVkX3Jlc2lkZW5jaWVzGAYgAygLMi4ubm9tb3Mua2VybmVsLnYxLldvcmtzcGFjZVJlc2lkZW5jeVJlcXVpcmVtZW50IkwKHFJlc29sdmVTdGF0ZVBvc2l0aW9uUmVzcG9uc2USGgoNcmVzb2x2ZWRfaGVhZBgBIAEoCUgAiAEBQhAKDl9yZXNvbHZlZF9oZWFkIjQKHEVuY29kZVJlZnVzYWxWZXJkaWN0UmVzcG9uc2USFAoMdmVyZGljdF91c2RhGAEgASgMIlEKHUluc3BlY3RSZWZ1c2FsVmVyZGljdFJlc3BvbnNlEjAKB3ZlcmRpY3QYASABKAsyHy5ub21vcy5rZXJuZWwudjEuUmVmdXNhbFZlcmRpY3QidQoiUHJvdmVDb21wYWN0aW9uRXF1aXZhbGVuY2VSZXNwb25zZRI4CghldmlkZW5jZRgBIAEoCzImLm5vbW9zLmtlcm5lbC52MS5Db21wYWN0aW9uRXF1aXZhbGVuY2USFQoNZXZpZGVuY2VfdXNkYRgCIAEoDCIvChBSZWFkQmxvYlJlc3BvbnNlEg0KBWZvdW5kGAEgASgIEgwKBGJsb2IYAiABKAwiLgoSUmVzb2x2ZVJlZlJlc3BvbnNlEhAKA29pZBgBIAEoCUgAiAEBQgYKBF9vaWQiKwoJUmVmUmVjb3JkEhEKCXJlZmVyZW5jZRgBIAEoCRILCgNvaWQYAiABKAkiPAoQTGlzdFJlZnNSZXNwb25zZRIoCgRyZWZzGAEgAygLMhoubm9tb3Mua2VybmVsLnYxLlJlZlJlY29yZCIOCgxBY2tub3dsZWRnZWQiJgoXV3JpdGVNZXRhQ29tbWl0UmVzcG9uc2USCwoDb2lkGAEgASgJIoMBChZMYXdDbG9zdXJlSW5mb1Jlc3BvbnNlEhAKCGlkZW50aXR5GAEgASgJEhkKEXJvb3RfbG9naWNhbF9wYXRoGAIgASgJEhMKC2Fzc2V0X2NvdW50GAMgASgEEhIKCnByaW1fY291bnQYBCABKAQSEwoLZG9tYWluX2tleXMYBSADKAki3wMKGENoZWNrcG9pbnRFeHBvcnRSZXNwb25zZRINCgVlbXB0eRgBIAEoCBITCgZjdXJzb3IYAiABKAlIAIgBARIQCghmcm9udGllchgDIAEoDBIXCgpzdGF0ZV9yb290GAQgASgJSAGIAQESEgoKc3RhdGVfdHJlZRgFIAEoCBIOCgZwaW5uZWQYBiABKAgSGwoTcmVhZF9pbmRleF9zbmFwc2hvdBgHIAEoCBIjChtyZWFkX2luZGV4X3NuYXBzaG90X3BlbmRpbmcYCCABKAgSJAoXcmVhZF9pbmRleF9zcWxpdGVfYnl0ZXMYCSABKARIAogBARIlChhyZWFkX2luZGV4X2N1c3RvZHlfYnl0ZXMYCiABKARIA4gBARJQChl2ZXJpZmllZF9mcm9udGllcl9yZWNlaXB0GAsgASgLMigubm9tb3Mua2VybmVsLnYxLlZlcmlmaWVkRnJvbnRpZXJSZWNlaXB0SASIAQFCCQoHX2N1cnNvckINCgtfc3RhdGVfcm9vdEIaChhfcmVhZF9pbmRleF9zcWxpdGVfYnl0ZXNCGwoZX3JlYWRfaW5kZXhfY3VzdG9keV9ieXRlc0IcChpfdmVyaWZpZWRfZnJvbnRpZXJfcmVjZWlwdCLrAgoYQ2hlY2twb2ludEltcG9ydFJlc3BvbnNlEhAKCHJlc3RvcmVkGAEgASgIEhMKBnJlYXNvbhgCIAEoCUgAiAEBEhcKD2Zyb250aWVyX3NlZWRlZBgDIAEoCBIlCh1mcm9udGllcl92ZXJpZmljYXRpb25fcGVuZGluZxgEIAEoCBIXCg9hZ2dyZWdhdGVfY291bnQYBSABKAQSKwoFc3BhbnMYBiABKAsyHC5ub21vcy5rZXJuZWwudjEuTm9tb3NTdHJ1Y3QSEwoGY3Vyc29yGAcgASgJSAGIAQESEQoJcmVhZF9vbmx5GAggASgIEhcKD2xhenlfcmVhZF9pbmRleBgJIAEoCBI3Cglhc3N1cmFuY2UYCiABKA4yJC5ub21vcy5rZXJuZWwudjEuQ2hlY2twb2ludEFzc3VyYW5jZRISCgpyZWFkX3JlYWR5GAsgASgIQgkKB19yZWFzb25CCQoHX2N1cnNvciLAAQoUT3BlbkdpdFN0YXRlUmVzcG9uc2USDgoGb3BlbmVkGAEgASgIEhMKBnJlYXNvbhgCIAEoCUgAiAEBEhcKD2FnZ3JlZ2F0ZV9jb3VudBgDIAEoBBIrCgVzcGFucxgEIAEoCzIcLm5vbW9zLmtlcm5lbC52MS5Ob21vc1N0cnVjdBITCgZjdXJzb3IYBSABKAlIAYgBARISCgpyZWFkX3JlYWR5GAYgASgIQgkKB19yZWFzb25CCQoHX2N1cnNvciLpAQobQXR0YWNoTG9jYWxGcm9udGllclJlc3BvbnNlEhAKCGF0dGFjaGVkGAEgASgIEhMKBnJlYXNvbhgCIAEoCUgAiAEBEgwKBGhlYWQYAyABKAkSEgoKc3RhdGVfcm9vdBgEIAEoCRIXCg9hZ2dyZWdhdGVfY291bnQYBSABKAQSKwoFc3BhbnMYBiABKAsyHC5ub21vcy5rZXJuZWwudjEuTm9tb3NTdHJ1Y3QSEgoKcmVhZF9yZWFkeRgHIAEoCBIcChRmb3JlaWduX3NvdXJjZV9yZWFkeRgIIAEoCEIJCgdfcmVhc29uIjEKHFJlbGVhc2VXb3Jrc3BhY2VTdGF0ZVJlcXVlc3QSEQoJd29ya3NwYWNlGAEgASgJIjEKHVJlbGVhc2VXb3Jrc3BhY2VTdGF0ZVJlc3BvbnNlEhAKCHJlbGVhc2VkGAEgASgIIosBChxSZWFkQ3VzdG9keVBsYWNlbWVudFJlc3BvbnNlEhUKCGZyb250aWVyGAEgASgJSACIAQESPAoGcG9saWN5GAIgASgLMicubm9tb3Mua2VybmVsLnYxLkN1c3RvZHlQbGFjZW1lbnRQb2xpY3lIAYgBAUILCglfZnJvbnRpZXJCCQoHX3BvbGljeSJdChBQbGFjZW1lbnRBZG9wdGVkEhAKCGZyb250aWVyGAEgASgJEjcKBnBvbGljeRgCIAEoCzInLm5vbW9zLmtlcm5lbC52MS5DdXN0b2R5UGxhY2VtZW50UG9saWN5IloKH0luc3BlY3RDdXN0b2R5UGxhY2VtZW50UmVzcG9uc2USNwoGcG9saWN5GAEgASgLMicubm9tb3Mua2VybmVsLnYxLkN1c3RvZHlQbGFjZW1lbnRQb2xpY3kiSgoXQ2FwYWNpdHlSZXNlcnZlUmVzcG9uc2USFwoPYWdncmVnYXRlX2NvdW50GAEgASgEEhYKDnJlc2VydmVkX2J5dGVzGAIgASgEIvkCChBSZXN0b3JlTWFpblNwYW5zEhAKCHRvdGFsX3VzGAEgASgEEhoKEmxpdmVfcmVmX2xvb2t1cF91cxgCIAEoBBIYChB0YXJnZXRfZGVjb2RlX3VzGAMgASgEEiQKHGN1c3RvZHlfY29tcGxldGVuZXNzX3JlYWRfdXMYBCABKAQSGQoRcXVhcmFudGluZV9yZWZfdXMYBSABKAQSJQodY2hhaW5fc2lnbmF0dXJlX2xhd19yZXBsYXlfdXMYBiABKAQSGQoRdmVyZGljdF9kZWNvZGVfdXMYByABKAQSIwobcHJvbW90ZV9hbmRfY2xlYW51cF9yZWZzX3VzGAggASgEEhsKE2Zyb250aWVyX3JlYnVpbGRfdXMYCSABKAQSGQoRZnJvbnRpZXJfc3RvcmVfdXMYCiABKAQSPQoMdmVyaWZpY2F0aW9uGAsgASgLMicubm9tb3Mua2VybmVsLnYxLlZlcmlmeUNoYWluRGlhZ25vc3RpY3Mi7wEKE1Jlc3RvcmVNYWluUmVzcG9uc2USDAoEaGVhZBgBIAEoCRIQCgh2ZXJpZmllZBgCIAEoCBIMCgR3YWxrGAMgASgJEjAKBXNwYW5zGAQgASgLMiEubm9tb3Mua2VybmVsLnYxLlJlc3RvcmVNYWluU3BhbnMSLQoHdmVyZGljdBgFIAEoCzIcLm5vbW9zLmtlcm5lbC52MS5Ob21vc1N0cnVjdBI3Cglhc3N1cmFuY2UYBiABKA4yJC5ub21vcy5rZXJuZWwudjEuQ2hlY2twb2ludEFzc3VyYW5jZRIQCghhY2NlcHRlZBgHIAEoCCKbAgoKTm9tb3NWYWx1ZRIlCgRudWxsGAEgASgLMhUubm9tb3Mua2VybmVsLnYxLk51bGxIABIRCgdib29sZWFuGAIgASgISAASGAoOc2lnbmVkX2ludGVnZXIYAyABKBJIABIaChB1bnNpZ25lZF9pbnRlZ2VyGAQgASgESAASGAoOZmxvYXRpbmdfcG9pbnQYBSABKAFIABIOCgR0ZXh0GAYgASgJSAASDwoFYnl0ZXMYByABKAxIABIqCgRsaXN0GAggASgLMhoubm9tb3Mua2VybmVsLnYxLk5vbW9zTGlzdEgAEi4KBm9iamVjdBgJIAEoCzIcLm5vbW9zLmtlcm5lbC52MS5Ob21vc1N0cnVjdEgAQgYKBGtpbmQiBgoETnVsbCI4CglOb21vc0xpc3QSKwoGdmFsdWVzGAEgAygLMhsubm9tb3Mua2VybmVsLnYxLk5vbW9zVmFsdWUikwEKC05vbW9zU3RydWN0EjgKBmZpZWxkcxgBIAMoCzIoLm5vbW9zLmtlcm5lbC52MS5Ob21vc1N0cnVjdC5GaWVsZHNFbnRyeRpKCgtGaWVsZHNFbnRyeRILCgNrZXkYASABKAkSKgoFdmFsdWUYAiABKAsyGy5ub21vcy5rZXJuZWwudjEuTm9tb3NWYWx1ZToCOAEiOgoPSGlzdG9yeVJlcXVpcmVkEhEKCXdvcmtzcGFjZRgBIAEoCRIUCgx1bnRpbF9jb21taXQYAiABKAkq6gEKEkJpcnRoT3V0Y29tZVN0YXR1cxIkCiBCSVJUSF9PVVRDT01FX1NUQVRVU19VTlNQRUNJRklFRBAAEh0KGUJJUlRIX09VVENPTUVfU1RBVFVTX0JPUk4QARIhCh1CSVJUSF9PVVRDT01FX1NUQVRVU19ERUZFUlJFRBACEh8KG0JJUlRIX09VVENPTUVfU1RBVFVTX0ZBSUxFRBADEiAKHEJJUlRIX09VVENPTUVfU1RBVFVTX1JFRlVTRUQQBBIpCiVCSVJUSF9PVVRDT01FX1NUQVRVU19VTldBUlJBTlRFRF9DRVJUEAUqzBQKEUtlcm5lbFJlZnVzYWxDb2RlEiMKH0tFUk5FTF9SRUZVU0FMX0NPREVfVU5TUEVDSUZJRUQQABIlCiFLRVJORUxfUkVGVVNBTF9DT0RFX0JBRF9TSUdOQVRVUkUQARIkCiBLRVJORUxfUkVGVVNBTF9DT0RFX1VOQVVUSE9SSVpFRBACEicKI0tFUk5FTF9SRUZVU0FMX0NPREVfUE9MSUNZX0RJU0FCTEVEEAMSKgomS0VSTkVMX1JFRlVTQUxfQ09ERV9VTkNFUlRJRklFRF9QT0xJQ1kQBBIjCh9LRVJORUxfUkVGVVNBTF9DT0RFX1JFRkVSRU5USUFMEAUSLworS0VSTkVMX1JFRlVTQUxfQ09ERV9QT0lOVF9TVEFURV9VTkFWQUlMQUJMRRAGEiQKIEtFUk5FTF9SRUZVU0FMX0NPREVfQ0FQX0VYQ0VFREVEEAcSLQopS0VSTkVMX1JFRlVTQUxfQ09ERV9DQVBfQ09VTlRfVU5BVkFJTEFCTEUQCBIpCiVLRVJORUxfUkVGVVNBTF9DT0RFX0VWSURFTkNFX1VOQkFDS0VEEAkSJgoiS0VSTkVMX1JFRlVTQUxfQ09ERV9PUlBIQU5fUkVDRUlQVBAKEjYKMktFUk5FTF9SRUZVU0FMX0NPREVfUkVDRUlQVF9PTl9URVJNSU5BTF9PQkxJR0FUSU9OEAsSIgoeS0VSTkVMX1JFRlVTQUxfQ09ERV9OT1RfTUlOVEVEEAwSKAokS0VSTkVMX1JFRlVTQUxfQ09ERV9ET01BSU5fTElGRUNZQ0xFEA0SKQolS0VSTkVMX1JFRlVTQUxfQ09ERV9UWVBFX1RBR19NSVNNQVRDSBAOEiwKKEtFUk5FTF9SRUZVU0FMX0NPREVfUkVUSVJFRF9SRUFEX1NVUkZBQ0UQDxIwCixLRVJORUxfUkVGVVNBTF9DT0RFX0NST1NTX1dPUktTUEFDRV9ERUNMSU5FRBAQEisKJ0tFUk5FTF9SRUZVU0FMX0NPREVfQUdHUkVHQVRFX0lOVkFSSUFOVBAREisKJ0tFUk5FTF9SRUZVU0FMX0NPREVfV09SS1NQQUNFX0lOVkFSSUFOVBASEi4KKktFUk5FTF9SRUZVU0FMX0NPREVfQ0FQVFVSRURfUkVBRF9DT05GTElDVBATEjIKLktFUk5FTF9SRUZVU0FMX0NPREVfQ09ORkxJQ1RfU05BUFNIT1RfUkVRVUlSRUQQFBI0CjBLRVJORUxfUkVGVVNBTF9DT0RFX0NPTkZMSUNUX1NOQVBTSE9UX1VOREVDTEFSRUQQFRIxCi1LRVJORUxfUkVGVVNBTF9DT0RFX0NPTkZMSUNUX1NOQVBTSE9UX0lOVkFMSUQQFhIvCitLRVJORUxfUkVGVVNBTF9DT0RFX0NPTkZMSUNUX1NOQVBTSE9UX1NUQUxFEBcSMAosS0VSTkVMX1JFRlVTQUxfQ09ERV9DQVBUVVJFRF9SRUFEX1VOREVDTEFSRUQQGBItCilLRVJORUxfUkVGVVNBTF9DT0RFX0NBUFRVUkVEX1JFQURfUFJJVkFURRAZEjAKLEtFUk5FTF9SRUZVU0FMX0NPREVfQVRURVNURURfUkVBRF9VTkRFQ0xBUkVEEBoSMwovS0VSTkVMX1JFRlVTQUxfQ09ERV9BVFRFU1RFRF9SRUFEX1VOVFJVU1RFRF9LRVkQGxI2CjJLRVJORUxfUkVGVVNBTF9DT0RFX0FUVEVTVEVEX1JFQURfVU5UUlVTVEVEX1NPVVJDRRAcEiwKKEtFUk5FTF9SRUZVU0FMX0NPREVfQVRURVNURURfUkVBRF9GT1JHRUQQHRIrCidLRVJORUxfUkVGVVNBTF9DT0RFX0FUVEVTVEVEX1JFQURfU1RBTEUQHhIuCipLRVJORUxfUkVGVVNBTF9DT0RFX0FUVEVTVEVEX1JFQURfT1ZFUlNJWkUQHxI3CjNLRVJORUxfUkVGVVNBTF9DT0RFX0FUVEVTVEVEX1JFQURfRElTSE9OT1JFRF9TT1VSQ0UQIBI1CjFLRVJORUxfUkVGVVNBTF9DT0RFX0VRVUlWT0NBVElPTl9FVklERU5DRV9JTlZBTElEECESMwovS0VSTkVMX1JFRlVTQUxfQ09ERV9BVFRFU1RBVElPTl9SRUNFSVBUX0lOVkFMSUQQIhIrCidLRVJORUxfUkVGVVNBTF9DT0RFX0tFWV9ST1NURVJfTUlTTUFUQ0gQIxIvCitLRVJORUxfUkVGVVNBTF9DT0RFX0tFWV9FUE9DSF9OT1RfTU9OT1RPTklDECQSKQolS0VSTkVMX1JFRlVTQUxfQ09ERV9XUklURV9FUE9DSF9TVEFMRRAlEi0KKUtFUk5FTF9SRUZVU0FMX0NPREVfRU5WRUxPUEVfU0lEX01JU01BVENIECYSMgouS0VSTkVMX1JFRlVTQUxfQ09ERV9SRVZPS0VEX01FTUJFUl9SRVNVUlJFQ1RFRBAnEigKJEtFUk5FTF9SRUZVU0FMX0NPREVfRk9SR0VEX1BSSU5DSVBBTBAoEigKJEtFUk5FTF9SRUZVU0FMX0NPREVfT1dORURfS0VZX0FOQ0hPUhApEiYKIktFUk5FTF9SRUZVU0FMX0NPREVfT1dORURfUkVDT1ZFUlkQKhIsCihLRVJORUxfUkVGVVNBTF9DT0RFX1NVUkZBQ0VEX0JBU0lTX0FIRUFEECsSMgouS0VSTkVMX1JFRlVTQUxfQ09ERV9TSUdORVJfRVBPQ0hfT1VUX09GX1dJTkRPVxAsEiYKIktFUk5FTF9SRUZVU0FMX0NPREVfRVZPTFZFX1JFRlVTRUQQLRIrCidLRVJORUxfUkVGVVNBTF9DT0RFX0FUVEVTVEFUSU9OX0lOVkFMSUQQLhItCilLRVJORUxfUkVGVVNBTF9DT0RFX1BBUkVOVF9ESURfTk9UX0FUVEVTVBAvEikKJUtFUk5FTF9SRUZVU0FMX0NPREVfQ0VSVF9DSEFJTl9CUk9LRU4QMBIqCiZLRVJORUxfUkVGVVNBTF9DT0RFX05PVF9ST09URURfQVRfUk9PVBAxEioKJktFUk5FTF9SRUZVU0FMX0NPREVfREVMRUdBVElPTl9JTlZBTElEEDISJQohS0VSTkVMX1JFRlVTQUxfQ09ERV9QTEFOX1JFSkVDVEVEEDMSJgoiS0VSTkVMX1JFRlVTQUxfQ09ERV9ET01BSU5fUkVGVVNFRBA0EjEKLUtFUk5FTF9SRUZVU0FMX0NPREVfSU5WQVJJQU5UX0VYRUNVVElPTl9GQVVMVBA1EjUKMUtFUk5FTF9SRUZVU0FMX0NPREVfQ0hFQ0tQT0lOVF9TSUdORVJfVU5BVkFJTEFCTEUQNhIoCiRLRVJORUxfUkVGVVNBTF9DT0RFX09GRkVSX0JBU0VfU1RBTEUQNxIlCiFLRVJORUxfUkVGVVNBTF9DT0RFX0JJUlRIX1JFRlVTRUQQOCrJAQoTSW50ZXJmYWNlTWVtYmVyS2luZBIlCiFJTlRFUkZBQ0VfTUVNQkVSX0tJTkRfVU5TUEVDSUZJRUQQABIgChxJTlRFUkZBQ0VfTUVNQkVSX0tJTkRfRE9NQUlOEAESIwofSU5URVJGQUNFX01FTUJFUl9LSU5EX0RJUkVDVElWRRACEiMKH0lOVEVSRkFDRV9NRU1CRVJfS0lORF9BR0dSRUdBVEUQAxIfChtJTlRFUkZBQ0VfTUVNQkVSX0tJTkRfRklFTEQQBCqIAgocSW50ZXJmYWNlQ29tcGF0aWJpbGl0eVN0YXR1cxIuCipJTlRFUkZBQ0VfQ09NUEFUSUJJTElUWV9TVEFUVVNfVU5TUEVDSUZJRUQQABIoCiRJTlRFUkZBQ0VfQ09NUEFUSUJJTElUWV9TVEFUVVNfRVhBQ1QQARItCilJTlRFUkZBQ0VfQ09NUEFUSUJJTElUWV9TVEFUVVNfQ09NUEFUSUJMRRACEi4KKklOVEVSRkFDRV9DT01QQVRJQklMSVRZX1NUQVRVU19VTkFWQUlMQUJMRRADEi8KK0lOVEVSRkFDRV9DT01QQVRJQklMSVRZX1NUQVRVU19JTkNPTVBBVElCTEUQBCrDAwocSW50ZXJmYWNlQ29tcGF0aWJpbGl0eVJlYXNvbhIuCipJTlRFUkZBQ0VfQ09NUEFUSUJJTElUWV9SRUFTT05fVU5TUEVDSUZJRUQQABIxCi1JTlRFUkZBQ0VfQ09NUEFUSUJJTElUWV9SRUFTT05fRE9NQUlOX01JU1NJTkcQARIxCi1JTlRFUkZBQ0VfQ09NUEFUSUJJTElUWV9SRUFTT05fTUVNQkVSX01JU1NJTkcQAhIwCixJTlRFUkZBQ0VfQ09NUEFUSUJJTElUWV9SRUFTT05fRklFTERfTUlTU0lORxADEjUKMUlOVEVSRkFDRV9DT01QQVRJQklMSVRZX1JFQVNPTl9WQUxVRV9LSU5EX0NIQU5HRUQQBBI3CjNJTlRFUkZBQ0VfQ09NUEFUSUJJTElUWV9SRUFTT05fUkVRVUlSRURfSU5QVVRfQURERUQQBRIxCi1JTlRFUkZBQ0VfQ09NUEFUSUJJTElUWV9SRUFTT05fTUFUUklYX0lOVkFMSUQQBhI4CjRJTlRFUkZBQ0VfQ09NUEFUSUJJTElUWV9SRUFTT05fV0lSRV9DT05UUkFDVF9DSEFOR0VEEAcqtwIKEE1haW50ZW5hbmNlUGhhc2USIQodTUFJTlRFTkFOQ0VfUEhBU0VfVU5TUEVDSUZJRUQQABIkCiBNQUlOVEVOQU5DRV9QSEFTRV9SRUFEX0RPQ1VNRU5UUxABEiIKHk1BSU5URU5BTkNFX1BIQVNFX1NRTElURV9JTkRFWBACEiYKIk1BSU5URU5BTkNFX1BIQVNFX0NPTU1BTkRfRlJPTlRJRVIQAxIjCh9NQUlOVEVOQU5DRV9QSEFTRV9DT01NQU5EX1JPVVRFEAQSIQodTUFJTlRFTkFOQ0VfUEhBU0VfR0lUX0NVU1RPRFkQBRImCiJNQUlOVEVOQU5DRV9QSEFTRV9SRUFEX0lOREVYX0NBQ0hFEAYSHgoaTUFJTlRFTkFOQ0VfUEhBU0VfQ09NUExFVEUQByqKAQoPVmVyaWZ5Q2hhaW5XYWxrEiEKHVZFUklGWV9DSEFJTl9XQUxLX1VOU1BFQ0lGSUVEEAASGgoWVkVSSUZZX0NIQUlOX1dBTEtfRlVMTBABEhwKGFZFUklGWV9DSEFJTl9XQUxLX1NVRkZJWBACEhoKFlZFUklGWV9DSEFJTl9XQUxLX01FTU8QAypwChhFZmZlY3RFeGVjdXRpb25QbGFjZW1lbnQSKgomRUZGRUNUX0VYRUNVVElPTl9QTEFDRU1FTlRfVU5TUEVDSUZJRUQQABIoCiRFRkZFQ1RfRVhFQ1VUSU9OX1BMQUNFTUVOVF9DVVNUT0RJQU4QASp2ChpFZmZlY3RFeGVjdXRpb25DYXJkaW5hbGl0eRIsCihFRkZFQ1RfRVhFQ1VUSU9OX0NBUkRJTkFMSVRZX1VOU1BFQ0lGSUVEEAASKgomRUZGRUNUX0VYRUNVVElPTl9DQVJESU5BTElUWV9TSU5HTEVUT04QASq3AQoXTW9kZWxMaWZlY3ljbGVPcGVyYXRpb24SKQolTU9ERUxfTElGRUNZQ0xFX09QRVJBVElPTl9VTlNQRUNJRklFRBAAEiUKIU1PREVMX0xJRkVDWUNMRV9PUEVSQVRJT05fSU5TVEFMTBABEiMKH01PREVMX0xJRkVDWUNMRV9PUEVSQVRJT05fU1RBR0UQAhIlCiFNT0RFTF9MSUZFQ1lDTEVfT1BFUkFUSU9OX1BST01PVEUQAyrcAQodQ2hpbGRXb3Jrc3BhY2VMaWZlY3ljbGVTdGF0dXMSMAosQ0hJTERfV09SS1NQQUNFX0xJRkVDWUNMRV9TVEFUVVNfVU5TUEVDSUZJRUQQABIrCidDSElMRF9XT1JLU1BBQ0VfTElGRUNZQ0xFX1NUQVRVU19BQ1RJVkUQARIsCihDSElMRF9XT1JLU1BBQ0VfTElGRUNZQ0xFX1NUQVRVU19SRVRJUkVEEAISLgoqQ0hJTERfV09SS1NQQUNFX0xJRkVDWUNMRV9TVEFUVVNfUkVDTEFJTUVEEAMq+AEKIkRlY2xhcmVkQXV0aGVudGljYXRpb25Qcm92aWRlcktpbmQSNQoxREVDTEFSRURfQVVUSEVOVElDQVRJT05fUFJPVklERVJfS0lORF9VTlNQRUNJRklFRBAAEjIKLkRFQ0xBUkVEX0FVVEhFTlRJQ0FUSU9OX1BST1ZJREVSX0tJTkRfU0VMRUNURUQQARIyCi5ERUNMQVJFRF9BVVRIRU5USUNBVElPTl9QUk9WSURFUl9LSU5EX0VOUk9MTEVEEAISMwovREVDTEFSRURfQVVUSEVOVElDQVRJT05fUFJPVklERVJfS0lORF9TT1ZFUkVJR04QAyqKAQoVRGVjbGFyZWRMYXdNZW1iZXJLaW5kEigKJERFQ0xBUkVEX0xBV19NRU1CRVJfS0lORF9VTlNQRUNJRklFRBAAEiQKIERFQ0xBUkVEX0xBV19NRU1CRVJfS0lORF9DT01NQU5EEAESIQodREVDTEFSRURfTEFXX01FTUJFUl9LSU5EX1JFQUQQAiqLBgofUHJvdmlkZXJUb2tlblZlcmlmaWNhdGlvblN0YXR1cxIyCi5QUk9WSURFUl9UT0tFTl9WRVJJRklDQVRJT05fU1RBVFVTX1VOU1BFQ0lGSUVEEAASLAooUFJPVklERVJfVE9LRU5fVkVSSUZJQ0FUSU9OX1NUQVRVU19WQUxJRBABEjYKMlBST1ZJREVSX1RPS0VOX1ZFUklGSUNBVElPTl9TVEFUVVNfTk9fTUFUQ0hJTkdfS0VZEAISLgoqUFJPVklERVJfVE9LRU5fVkVSSUZJQ0FUSU9OX1NUQVRVU19FWFBJUkVEEAMSNAowUFJPVklERVJfVE9LRU5fVkVSSUZJQ0FUSU9OX1NUQVRVU19OT1RfWUVUX1ZBTElEEAQSNgoyUFJPVklERVJfVE9LRU5fVkVSSUZJQ0FUSU9OX1NUQVRVU19JU1NVRVJfTUlTTUFUQ0gQBRI4CjRQUk9WSURFUl9UT0tFTl9WRVJJRklDQVRJT05fU1RBVFVTX0FVRElFTkNFX01JU01BVENIEAYSNAowUFJPVklERVJfVE9LRU5fVkVSSUZJQ0FUSU9OX1NUQVRVU19CQURfU0lHTkFUVVJFEAcSMAosUFJPVklERVJfVE9LRU5fVkVSSUZJQ0FUSU9OX1NUQVRVU19NQUxGT1JNRUQQCBI8CjhQUk9WSURFUl9UT0tFTl9WRVJJRklDQVRJT05fU1RBVFVTX1VOU1VQUE9SVEVEX0FMR09SSVRITRAJEi4KKlBST1ZJREVSX1RPS0VOX1ZFUklGSUNBVElPTl9TVEFUVVNfQkFEX0tFWRAKEjYKMlBST1ZJREVSX1RPS0VOX1ZFUklGSUNBVElPTl9TVEFUVVNfTUlTU0lOR19TVUJKRUNUEAsSMgouUFJPVklERVJfVE9LRU5fVkVSSUZJQ0FUSU9OX1NUQVRVU19OT19WRVJJRklFUhAMEjQKMFBST1ZJREVSX1RPS0VOX1ZFUklGSUNBVElPTl9TVEFUVVNfTUlTU0lOR19UT0tFThANKsgBChJEZXZpY2VTaWduZXJTdGF0dXMSJAogREVWSUNFX1NJR05FUl9TVEFUVVNfVU5TUEVDSUZJRUQQABIfChtERVZJQ0VfU0lHTkVSX1NUQVRVU19BQ1RJVkUQARIfChtERVZJQ0VfU0lHTkVSX1NUQVRVU19BQlNFTlQQAhIgChxERVZJQ0VfU0lHTkVSX1NUQVRVU19SRVZPS0VEEAMSKAokREVWSUNFX1NJR05FUl9TVEFUVVNfS0VZX1VOQVZBSUxBQkxFEAQq1wEKE0JpcnRoRXZpZGVuY2VTdGF0dXMSJQohQklSVEhfRVZJREVOQ0VfU1RBVFVTX1VOU1BFQ0lGSUVEEAASJgoiQklSVEhfRVZJREVOQ0VfU1RBVFVTX05PVF9SRVFVSVJFRBABEh8KG0JJUlRIX0VWSURFTkNFX1NUQVRVU19SRUFEWRACEi0KKUJJUlRIX0VWSURFTkNFX1NUQVRVU19ERUxFR0FUSU9OX1JFUVVJUkVEEAMSIQodQklSVEhfRVZJREVOQ0VfU1RBVFVTX0lOVkFMSUQQBCqyAQoRUXVlcnlSZXN1bHRGb3JtYXQSIwofUVVFUllfUkVTVUxUX0ZPUk1BVF9VTlNQRUNJRklFRBAAEiQKIFFVRVJZX1JFU1VMVF9GT1JNQVRfTEVHQUNZX1ZBTFVFEAESJAogUVVFUllfUkVTVUxUX0ZPUk1BVF9OT01JTkFMX1VTREEQAhIsCihRVUVSWV9SRVNVTFRfRk9STUFUX0FQUExJQ0FUSU9OX1BST1RPQlVGEAMqlQwKDlF1ZXJ5T3BlcmF0aW9uEh8KG1FVRVJZX09QRVJBVElPTl9VTlNQRUNJRklFRBAAEhwKGFFVRVJZX09QRVJBVElPTl9FWFRSRU1VTRABEiAKHFFVRVJZX09QRVJBVElPTl9SRUFEX1BPU1RVUkUQBBIfChtRVUVSWV9PUEVSQVRJT05fQ1VSUkVOVF9MQVcQBRIjCh9RVUVSWV9PUEVSQVRJT05fSU5URVJGQUNFX09GRkVSEAYSJwojUVVFUllfT1BFUkFUSU9OX1JFTEFUSU9OX0dBVEVfT0ZGRVIQBxIdChlRVUVSWV9PUEVSQVRJT05fU0NFTkVfTEFXEAgSIQodUVVFUllfT1BFUkFUSU9OX0lOU1RBTExFRF9MQVcQCRIcChhRVUVSWV9PUEVSQVRJT05fREVTQ1JJQkUQChIjCh9RVUVSWV9PUEVSQVRJT05fS0VSTkVMX1JFU09VUkNFEAsSIwofUVVFUllfT1BFUkFUSU9OX0RFVkVMT1BFUl9TUEFOUxAMEikKJVFVRVJZX09QRVJBVElPTl9ERUNMQVJFRF9DQVBBQklMSVRJRVMQDRIdChlRVUVSWV9PUEVSQVRJT05fUkVBRElORVNTEA4SJAogUVVFUllfT1BFUkFUSU9OX1BST0pFQ1RJT05fU1RBVFMQDxIlCiFRVUVSWV9PUEVSQVRJT05fTUVNT1JZX0RST1BfUFJPQkUQEBIYChRRVUVSWV9PUEVSQVRJT05fV0FSTRAREhsKF1FVRVJZX09QRVJBVElPTl9SRUZSRVNIEBISIAocUVVFUllfT1BFUkFUSU9OX1ZFUklGWV9DSEFJThATEiIKHlFVRVJZX09QRVJBVElPTl9DT1VOVEVSRkFDVFVBTBAUEhkKFVFVRVJZX09QRVJBVElPTl9ST1VURRAVEiUKIVFVRVJZX09QRVJBVElPTl9DUllQVE9fU0VBTF9GSUVMRBAYEiwKKFFVRVJZX09QRVJBVElPTl9DUllQVE9fQkxJTkRfSU5ERVhfVE9LRU4QGRIqCiZRVUVSWV9PUEVSQVRJT05fQ1JZUFRPX09XTkVEX1NDT1BFX0tFWRAaEi8KK1FVRVJZX09QRVJBVElPTl9DUllQVE9fT1dORURfREVWSUNFX1JFUVVFU1QQGxIxCi1RVUVSWV9PUEVSQVRJT05fQ1JZUFRPX09XTkVEX1BSRVBBUkVfQVBQUk9WQUwQHBIxCi1RVUVSWV9PUEVSQVRJT05fQ1JZUFRPX09XTkVEX1BSRVBBUkVfUkVDT1ZFUlkQHRIgChxRVUVSWV9PUEVSQVRJT05fUkVDRUlQVF9QQVRIECISHQoZUVVFUllfT1BFUkFUSU9OX0NFUlRfU0lHThAjEiUKIVFVRVJZX09QRVJBVElPTl9CSVJUSF9UUlVTVF9TVEFURRAkEiEKHVFVRVJZX09QRVJBVElPTl9FUkFfQ0VSVF9TSUdOECUSKAokUVVFUllfT1BFUkFUSU9OX0RFTEVHQVRJT05fQ0VSVF9TSUdOECYSKQolUVVFUllfT1BFUkFUSU9OX0NBTk9OSUNBTElaRV9GUk9OVElFUhAnEisKJ1FVRVJZX09QRVJBVElPTl9DQU5PTklDQUxJWkVfUFJPSkVDVElPThAoIgQIAhACIgQIAxADIgQIFhAWIgQIFxAXIgQIHhAeIgQIHxAfIgQIIBAgIgQIIRAhKiFRVUVSWV9PUEVSQVRJT05fUEVORElOR19DT05GTElDVFMqKFFVRVJZX09QRVJBVElPTl9QRU5ESU5HX0NPTkZMSUNUX1NVTU1BUlkqFFFVRVJZX09QRVJBVElPTl9NSU5UKh1RVUVSWV9PUEVSQVRJT05fQ1JZUFRPX0tFWUdFTiofUVVFUllfT1BFUkFUSU9OX0NSWVBUT19XUkFQX0tFWSohUVVFUllfT1BFUkFUSU9OX0NSWVBUT19VTldSQVBfS0VZKh1RVUVSWV9PUEVSQVRJT05fQVVUSE9SX0tFWUdFTiogUVVFUllfT1BFUkFUSU9OX0FUVEVTVEFUSU9OX1NJR04qqQEKGVJlYWRQcm9qZWN0aW9uU3RvcmFnZUtpbmQSLAooUkVBRF9QUk9KRUNUSU9OX1NUT1JBR0VfS0lORF9VTlNQRUNJRklFRBAAEikKJVJFQURfUFJPSkVDVElPTl9TVE9SQUdFX0tJTkRfUkVTSURFTlQQARIzCi9SRUFEX1BST0pFQ1RJT05fU1RPUkFHRV9LSU5EX0ZJTEVfQkFDS0VEX1NDQUxBUhACKtICChVSZXNpZGVudENvbXBvbmVudEtpbmQSJwojUkVTSURFTlRfQ09NUE9ORU5UX0tJTkRfVU5TUEVDSUZJRUQQABImCiJSRVNJREVOVF9DT01QT05FTlRfS0lORF9GT0xEX1NUQVRFEAESLQopUkVTSURFTlRfQ09NUE9ORU5UX0tJTkRfUkVBRF9NT0RFTF9TUUxJVEUQAhIuCipSRVNJREVOVF9DT01QT05FTlRfS0lORF9SRUFEX01PREVMX0lOREVYRVMQAxItCilSRVNJREVOVF9DT01QT05FTlRfS0lORF9TSEFSRURfQVRUUklCVVRFRBAEEiwKKFJFU0lERU5UX0NPTVBPTkVOVF9LSU5EX1dPUktTUEFDRV9DQUNIRVMQBRIsCihSRVNJREVOVF9DT01QT05FTlRfS0lORF9HSVRfT0JKRUNUX0NBQ0hFEAYqbAoTS2VybmVsTGF3Q2FwYWJpbGl0eRIlCiFLRVJORUxfTEFXX0NBUEFCSUxJVFlfVU5TUEVDSUZJRUQQABIuCipLRVJORUxfTEFXX0NBUEFCSUxJVFlfU1RBR0VfWkVST19CT09UU1RSQVAQASpZChVDaGVja3BvaW50Q29tcHJlc3Npb24SHwobQ0hFQ0tQT0lOVF9DT01QUkVTU0lPTl9OT05FEAASHwobQ0hFQ0tQT0lOVF9DT01QUkVTU0lPTl9HWklQEAEqkQEKHENoZWNrcG9pbnRWZXJpZmljYXRpb25Qb2xpY3kSMwovQ0hFQ0tQT0lOVF9WRVJJRklDQVRJT05fUE9MSUNZX1ZFUklGWV9DQU5PTklDQUwQABI8CjhDSEVDS1BPSU5UX1ZFUklGSUNBVElPTl9QT0xJQ1lfVFJVU1RfUFJFVklPVVNMWV9WRVJJRklFRBABKoABChNDaGVja3BvaW50QXNzdXJhbmNlEiQKIENIRUNLUE9JTlRfQVNTVVJBTkNFX1VOU1BFQ0lGSUVEEAASIAocQ0hFQ0tQT0lOVF9BU1NVUkFOQ0VfVFJVU1RFRBABEiEKHUNIRUNLUE9JTlRfQVNTVVJBTkNFX1ZFUklGSUVEEAIqiQEKFUtlcm5lbFJlc2lkZW5jeUludGVudBInCiNLRVJORUxfUkVTSURFTkNZX0lOVEVOVF9VTlNQRUNJRklFRBAAEiAKHEtFUk5FTF9SRVNJREVOQ1lfSU5URU5UX1dBUk0QARIlCiFLRVJORUxfUkVTSURFTkNZX0lOVEVOVF9PTl9ERU1BTkQQAiquAQoWQ3VzdG9keVJldGVudGlvbkludGVudBIoCiRDVVNUT0RZX1JFVEVOVElPTl9JTlRFTlRfVU5TUEVDSUZJRUQQABIjCh9DVVNUT0RZX1JFVEVOVElPTl9JTlRFTlRfUkVUQUlOEAESIgoeQ1VTVE9EWV9SRVRFTlRJT05fSU5URU5UX0NBQ0hFEAISIQodQ1VTVE9EWV9SRVRFTlRJT05fSU5URU5UX05PTkUQAyqoAQoaSW50ZW50VHJhbnNwb3J0UmVxdWlyZW1lbnQSLAooSU5URU5UX1RSQU5TUE9SVF9SRVFVSVJFTUVOVF9VTlNQRUNJRklFRBAAEi4KKklOVEVOVF9UUkFOU1BPUlRfUkVRVUlSRU1FTlRfU0VBTEVEX0NIQU5HRRABEiwKKElOVEVOVF9UUkFOU1BPUlRfUkVRVUlSRU1FTlRfQ09NTUlUX1RSRUUQAiqJAQoVTGlmZWN5Y2xlSW5zdGFsbFBoYXNlEicKI0xJRkVDWUNMRV9JTlNUQUxMX1BIQVNFX1VOU1BFQ0lGSUVEEAASIgoeTElGRUNZQ0xFX0lOU1RBTExfUEhBU0VfQUNUSVZFEAESIwofTElGRUNZQ0xFX0lOU1RBTExfUEhBU0VfUEVORElORxACMlkKEk5vbW9zS2VybmVsU2VydmljZRJDCgRDYWxsEhwubm9tb3Mua2VybmVsLnYxLkNhbGxSZXF1ZXN0Gh0ubm9tb3Mua2VybmVsLnYxLkNhbGxSZXNwb25zZWIGcHJvdG8z", [file_google_protobuf_any]);
13
+
14
+ /**
15
+ * Describes the message nomos.kernel.v1.CallRequest.
16
+ * Use `create(CallRequestSchema)` to create a new message.
17
+ */
18
+ export const CallRequestSchema = /*@__PURE__*/
19
+ messageDesc(file_nomos_kernel_v1_kernel, 0);
20
+
21
+ /**
22
+ * Describes the message nomos.kernel.v1.CallResponse.
23
+ * Use `create(CallResponseSchema)` to create a new message.
24
+ */
25
+ export const CallResponseSchema = /*@__PURE__*/
26
+ messageDesc(file_nomos_kernel_v1_kernel, 1);
27
+
28
+ /**
29
+ * Describes the message nomos.kernel.v1.Failure.
30
+ * Use `create(FailureSchema)` to create a new message.
31
+ */
32
+ export const FailureSchema = /*@__PURE__*/
33
+ messageDesc(file_nomos_kernel_v1_kernel, 2);
34
+
35
+ /**
36
+ * Describes the message nomos.kernel.v1.IdentityProviderWitnessRequired.
37
+ * Use `create(IdentityProviderWitnessRequiredSchema)` to create a new message.
38
+ */
39
+ export const IdentityProviderWitnessRequiredSchema = /*@__PURE__*/
40
+ messageDesc(file_nomos_kernel_v1_kernel, 3);
41
+
42
+ /**
43
+ * Describes the message nomos.kernel.v1.OpenResponse.
44
+ * Use `create(OpenResponseSchema)` to create a new message.
45
+ */
46
+ export const OpenResponseSchema = /*@__PURE__*/
47
+ messageDesc(file_nomos_kernel_v1_kernel, 4);
48
+
49
+ /**
50
+ * Describes the message nomos.kernel.v1.OfferResponse.
51
+ * Use `create(OfferResponseSchema)` to create a new message.
52
+ */
53
+ export const OfferResponseSchema = /*@__PURE__*/
54
+ messageDesc(file_nomos_kernel_v1_kernel, 5);
55
+
56
+ /**
57
+ * Describes the message nomos.kernel.v1.WorkspaceEffectJudgmentSignature.
58
+ * Use `create(WorkspaceEffectJudgmentSignatureSchema)` to create a new message.
59
+ */
60
+ export const WorkspaceEffectJudgmentSignatureSchema = /*@__PURE__*/
61
+ messageDesc(file_nomos_kernel_v1_kernel, 6);
62
+
63
+ /**
64
+ * Describes the message nomos.kernel.v1.WorkspaceEffectIdentity.
65
+ * Use `create(WorkspaceEffectIdentitySchema)` to create a new message.
66
+ */
67
+ export const WorkspaceEffectIdentitySchema = /*@__PURE__*/
68
+ messageDesc(file_nomos_kernel_v1_kernel, 7);
69
+
70
+ /**
71
+ * Describes the message nomos.kernel.v1.WorkspaceEffectStatusRequest.
72
+ * Use `create(WorkspaceEffectStatusRequestSchema)` to create a new message.
73
+ */
74
+ export const WorkspaceEffectStatusRequestSchema = /*@__PURE__*/
75
+ messageDesc(file_nomos_kernel_v1_kernel, 8);
76
+
77
+ /**
78
+ * Describes the message nomos.kernel.v1.WorkspaceEffectStatusResponse.
79
+ * Use `create(WorkspaceEffectStatusResponseSchema)` to create a new message.
80
+ */
81
+ export const WorkspaceEffectStatusResponseSchema = /*@__PURE__*/
82
+ messageDesc(file_nomos_kernel_v1_kernel, 9);
83
+
84
+ /**
85
+ * Describes the message nomos.kernel.v1.RecordWorkspaceEffectOutcomeRequest.
86
+ * Use `create(RecordWorkspaceEffectOutcomeRequestSchema)` to create a new message.
87
+ */
88
+ export const RecordWorkspaceEffectOutcomeRequestSchema = /*@__PURE__*/
89
+ messageDesc(file_nomos_kernel_v1_kernel, 10);
90
+
91
+ /**
92
+ * Describes the message nomos.kernel.v1.RecordedWorkspaceEffectOutcome.
93
+ * Use `create(RecordedWorkspaceEffectOutcomeSchema)` to create a new message.
94
+ */
95
+ export const RecordedWorkspaceEffectOutcomeSchema = /*@__PURE__*/
96
+ messageDesc(file_nomos_kernel_v1_kernel, 11);
97
+
98
+ /**
99
+ * Describes the message nomos.kernel.v1.OfferAdmitted.
100
+ * Use `create(OfferAdmittedSchema)` to create a new message.
101
+ */
102
+ export const OfferAdmittedSchema = /*@__PURE__*/
103
+ messageDesc(file_nomos_kernel_v1_kernel, 12);
104
+
105
+ /**
106
+ * Describes the message nomos.kernel.v1.OfferAggregateRef.
107
+ * Use `create(OfferAggregateRefSchema)` to create a new message.
108
+ */
109
+ export const OfferAggregateRefSchema = /*@__PURE__*/
110
+ messageDesc(file_nomos_kernel_v1_kernel, 13);
111
+
112
+ /**
113
+ * Describes the message nomos.kernel.v1.BornWorkspace.
114
+ * Use `create(BornWorkspaceSchema)` to create a new message.
115
+ */
116
+ export const BornWorkspaceSchema = /*@__PURE__*/
117
+ messageDesc(file_nomos_kernel_v1_kernel, 14);
118
+
119
+ /**
120
+ * Describes the message nomos.kernel.v1.BirthOutcome.
121
+ * Use `create(BirthOutcomeSchema)` to create a new message.
122
+ */
123
+ export const BirthOutcomeSchema = /*@__PURE__*/
124
+ messageDesc(file_nomos_kernel_v1_kernel, 15);
125
+
126
+ /**
127
+ * Describes the message nomos.kernel.v1.KernelSpanMetric.
128
+ * Use `create(KernelSpanMetricSchema)` to create a new message.
129
+ */
130
+ export const KernelSpanMetricSchema = /*@__PURE__*/
131
+ messageDesc(file_nomos_kernel_v1_kernel, 16);
132
+
133
+ /**
134
+ * Describes the message nomos.kernel.v1.KernelSpan.
135
+ * Use `create(KernelSpanSchema)` to create a new message.
136
+ */
137
+ export const KernelSpanSchema = /*@__PURE__*/
138
+ messageDesc(file_nomos_kernel_v1_kernel, 17);
139
+
140
+ /**
141
+ * Describes the message nomos.kernel.v1.KernelSpans.
142
+ * Use `create(KernelSpansSchema)` to create a new message.
143
+ */
144
+ export const KernelSpansSchema = /*@__PURE__*/
145
+ messageDesc(file_nomos_kernel_v1_kernel, 18);
146
+
147
+ /**
148
+ * Describes the message nomos.kernel.v1.DomainRefusal.
149
+ * Use `create(DomainRefusalSchema)` to create a new message.
150
+ */
151
+ export const DomainRefusalSchema = /*@__PURE__*/
152
+ messageDesc(file_nomos_kernel_v1_kernel, 19);
153
+
154
+ /**
155
+ * Describes the message nomos.kernel.v1.OfferRefused.
156
+ * Use `create(OfferRefusedSchema)` to create a new message.
157
+ */
158
+ export const OfferRefusedSchema = /*@__PURE__*/
159
+ messageDesc(file_nomos_kernel_v1_kernel, 20);
160
+
161
+ /**
162
+ * Describes the message nomos.kernel.v1.OfferDeadLettered.
163
+ * Use `create(OfferDeadLetteredSchema)` to create a new message.
164
+ */
165
+ export const OfferDeadLetteredSchema = /*@__PURE__*/
166
+ messageDesc(file_nomos_kernel_v1_kernel, 21);
167
+
168
+ /**
169
+ * Describes the message nomos.kernel.v1.OfferQuarantined.
170
+ * Use `create(OfferQuarantinedSchema)` to create a new message.
171
+ */
172
+ export const OfferQuarantinedSchema = /*@__PURE__*/
173
+ messageDesc(file_nomos_kernel_v1_kernel, 22);
174
+
175
+ /**
176
+ * Describes the message nomos.kernel.v1.OfferBlockedOnDependency.
177
+ * Use `create(OfferBlockedOnDependencySchema)` to create a new message.
178
+ */
179
+ export const OfferBlockedOnDependencySchema = /*@__PURE__*/
180
+ messageDesc(file_nomos_kernel_v1_kernel, 23);
181
+
182
+ /**
183
+ * Describes the message nomos.kernel.v1.OfferPrepared.
184
+ * Use `create(OfferPreparedSchema)` to create a new message.
185
+ */
186
+ export const OfferPreparedSchema = /*@__PURE__*/
187
+ messageDesc(file_nomos_kernel_v1_kernel, 24);
188
+
189
+ /**
190
+ * Describes the message nomos.kernel.v1.DetachedSigningInputs.
191
+ * Use `create(DetachedSigningInputsSchema)` to create a new message.
192
+ */
193
+ export const DetachedSigningInputsSchema = /*@__PURE__*/
194
+ messageDesc(file_nomos_kernel_v1_kernel, 25);
195
+
196
+ /**
197
+ * Describes the message nomos.kernel.v1.DetachedSignedChange.
198
+ * Use `create(DetachedSignedChangeSchema)` to create a new message.
199
+ */
200
+ export const DetachedSignedChangeSchema = /*@__PURE__*/
201
+ messageDesc(file_nomos_kernel_v1_kernel, 26);
202
+
203
+ /**
204
+ * Describes the message nomos.kernel.v1.SignPreparedOfferRequest.
205
+ * Use `create(SignPreparedOfferRequestSchema)` to create a new message.
206
+ */
207
+ export const SignPreparedOfferRequestSchema = /*@__PURE__*/
208
+ messageDesc(file_nomos_kernel_v1_kernel, 27);
209
+
210
+ /**
211
+ * Describes the message nomos.kernel.v1.SignPreparedOfferResponse.
212
+ * Use `create(SignPreparedOfferResponseSchema)` to create a new message.
213
+ */
214
+ export const SignPreparedOfferResponseSchema = /*@__PURE__*/
215
+ messageDesc(file_nomos_kernel_v1_kernel, 28);
216
+
217
+ /**
218
+ * Describes the message nomos.kernel.v1.PrepareRemoteOfferRequest.
219
+ * Use `create(PrepareRemoteOfferRequestSchema)` to create a new message.
220
+ */
221
+ export const PrepareRemoteOfferRequestSchema = /*@__PURE__*/
222
+ messageDesc(file_nomos_kernel_v1_kernel, 29);
223
+
224
+ /**
225
+ * Describes the message nomos.kernel.v1.OfferPreparationChallenge.
226
+ * Use `create(OfferPreparationChallengeSchema)` to create a new message.
227
+ */
228
+ export const OfferPreparationChallengeSchema = /*@__PURE__*/
229
+ messageDesc(file_nomos_kernel_v1_kernel, 30);
230
+
231
+ /**
232
+ * Describes the message nomos.kernel.v1.PrepareRemoteOfferResponse.
233
+ * Use `create(PrepareRemoteOfferResponseSchema)` to create a new message.
234
+ */
235
+ export const PrepareRemoteOfferResponseSchema = /*@__PURE__*/
236
+ messageDesc(file_nomos_kernel_v1_kernel, 31);
237
+
238
+ /**
239
+ * Describes the message nomos.kernel.v1.SignOfferPreparationRequest.
240
+ * Use `create(SignOfferPreparationRequestSchema)` to create a new message.
241
+ */
242
+ export const SignOfferPreparationRequestSchema = /*@__PURE__*/
243
+ messageDesc(file_nomos_kernel_v1_kernel, 32);
244
+
245
+ /**
246
+ * Describes the message nomos.kernel.v1.SignOfferPreparationResponse.
247
+ * Use `create(SignOfferPreparationResponseSchema)` to create a new message.
248
+ */
249
+ export const SignOfferPreparationResponseSchema = /*@__PURE__*/
250
+ messageDesc(file_nomos_kernel_v1_kernel, 33);
251
+
252
+ /**
253
+ * Describes the message nomos.kernel.v1.SigningIdentityRequest.
254
+ * Use `create(SigningIdentityRequestSchema)` to create a new message.
255
+ */
256
+ export const SigningIdentityRequestSchema = /*@__PURE__*/
257
+ messageDesc(file_nomos_kernel_v1_kernel, 34);
258
+
259
+ /**
260
+ * Describes the message nomos.kernel.v1.GenerateSigningKeyPair.
261
+ * Use `create(GenerateSigningKeyPairSchema)` to create a new message.
262
+ */
263
+ export const GenerateSigningKeyPairSchema = /*@__PURE__*/
264
+ messageDesc(file_nomos_kernel_v1_kernel, 35);
265
+
266
+ /**
267
+ * Describes the message nomos.kernel.v1.DeriveSigningPublicKey.
268
+ * Use `create(DeriveSigningPublicKeySchema)` to create a new message.
269
+ */
270
+ export const DeriveSigningPublicKeySchema = /*@__PURE__*/
271
+ messageDesc(file_nomos_kernel_v1_kernel, 36);
272
+
273
+ /**
274
+ * Describes the message nomos.kernel.v1.SigningIdentityResponse.
275
+ * Use `create(SigningIdentityResponseSchema)` to create a new message.
276
+ */
277
+ export const SigningIdentityResponseSchema = /*@__PURE__*/
278
+ messageDesc(file_nomos_kernel_v1_kernel, 37);
279
+
280
+ /**
281
+ * Describes the message nomos.kernel.v1.SigningKeyPair.
282
+ * Use `create(SigningKeyPairSchema)` to create a new message.
283
+ */
284
+ export const SigningKeyPairSchema = /*@__PURE__*/
285
+ messageDesc(file_nomos_kernel_v1_kernel, 38);
286
+
287
+ /**
288
+ * Describes the message nomos.kernel.v1.SigningPublicKey.
289
+ * Use `create(SigningPublicKeySchema)` to create a new message.
290
+ */
291
+ export const SigningPublicKeySchema = /*@__PURE__*/
292
+ messageDesc(file_nomos_kernel_v1_kernel, 39);
293
+
294
+ /**
295
+ * Describes the message nomos.kernel.v1.SignAuthorityAttestationRequest.
296
+ * Use `create(SignAuthorityAttestationRequestSchema)` to create a new message.
297
+ */
298
+ export const SignAuthorityAttestationRequestSchema = /*@__PURE__*/
299
+ messageDesc(file_nomos_kernel_v1_kernel, 40);
300
+
301
+ /**
302
+ * Describes the message nomos.kernel.v1.SignAuthorityAttestationResponse.
303
+ * Use `create(SignAuthorityAttestationResponseSchema)` to create a new message.
304
+ */
305
+ export const SignAuthorityAttestationResponseSchema = /*@__PURE__*/
306
+ messageDesc(file_nomos_kernel_v1_kernel, 41);
307
+
308
+ /**
309
+ * Describes the message nomos.kernel.v1.MintTypedIdRequest.
310
+ * Use `create(MintTypedIdRequestSchema)` to create a new message.
311
+ */
312
+ export const MintTypedIdRequestSchema = /*@__PURE__*/
313
+ messageDesc(file_nomos_kernel_v1_kernel, 42);
314
+
315
+ /**
316
+ * Describes the message nomos.kernel.v1.MintTypedIdResponse.
317
+ * Use `create(MintTypedIdResponseSchema)` to create a new message.
318
+ */
319
+ export const MintTypedIdResponseSchema = /*@__PURE__*/
320
+ messageDesc(file_nomos_kernel_v1_kernel, 43);
321
+
322
+ /**
323
+ * Describes the message nomos.kernel.v1.EncryptionIdentityRequest.
324
+ * Use `create(EncryptionIdentityRequestSchema)` to create a new message.
325
+ */
326
+ export const EncryptionIdentityRequestSchema = /*@__PURE__*/
327
+ messageDesc(file_nomos_kernel_v1_kernel, 44);
328
+
329
+ /**
330
+ * Describes the message nomos.kernel.v1.EncryptionIdentityResponse.
331
+ * Use `create(EncryptionIdentityResponseSchema)` to create a new message.
332
+ */
333
+ export const EncryptionIdentityResponseSchema = /*@__PURE__*/
334
+ messageDesc(file_nomos_kernel_v1_kernel, 45);
335
+
336
+ /**
337
+ * Describes the message nomos.kernel.v1.WrapScopeKeyRequest.
338
+ * Use `create(WrapScopeKeyRequestSchema)` to create a new message.
339
+ */
340
+ export const WrapScopeKeyRequestSchema = /*@__PURE__*/
341
+ messageDesc(file_nomos_kernel_v1_kernel, 46);
342
+
343
+ /**
344
+ * Describes the message nomos.kernel.v1.WrapScopeKeyResponse.
345
+ * Use `create(WrapScopeKeyResponseSchema)` to create a new message.
346
+ */
347
+ export const WrapScopeKeyResponseSchema = /*@__PURE__*/
348
+ messageDesc(file_nomos_kernel_v1_kernel, 47);
349
+
350
+ /**
351
+ * Describes the message nomos.kernel.v1.UnwrapScopeKeyRequest.
352
+ * Use `create(UnwrapScopeKeyRequestSchema)` to create a new message.
353
+ */
354
+ export const UnwrapScopeKeyRequestSchema = /*@__PURE__*/
355
+ messageDesc(file_nomos_kernel_v1_kernel, 48);
356
+
357
+ /**
358
+ * Describes the message nomos.kernel.v1.UnwrapScopeKeyResponse.
359
+ * Use `create(UnwrapScopeKeyResponseSchema)` to create a new message.
360
+ */
361
+ export const UnwrapScopeKeyResponseSchema = /*@__PURE__*/
362
+ messageDesc(file_nomos_kernel_v1_kernel, 49);
363
+
364
+ /**
365
+ * Describes the message nomos.kernel.v1.KernelRefusal.
366
+ * Use `create(KernelRefusalSchema)` to create a new message.
367
+ */
368
+ export const KernelRefusalSchema = /*@__PURE__*/
369
+ messageDesc(file_nomos_kernel_v1_kernel, 50);
370
+
371
+ /**
372
+ * Describes the message nomos.kernel.v1.QueryResponse.
373
+ * Use `create(QueryResponseSchema)` to create a new message.
374
+ */
375
+ export const QueryResponseSchema = /*@__PURE__*/
376
+ messageDesc(file_nomos_kernel_v1_kernel, 51);
377
+
378
+ /**
379
+ * Describes the message nomos.kernel.v1.OpenApiDescriptionResponse.
380
+ * Use `create(OpenApiDescriptionResponseSchema)` to create a new message.
381
+ */
382
+ export const OpenApiDescriptionResponseSchema = /*@__PURE__*/
383
+ messageDesc(file_nomos_kernel_v1_kernel, 52);
384
+
385
+ /**
386
+ * Describes the message nomos.kernel.v1.InterfaceCompatibilityQuery.
387
+ * Use `create(InterfaceCompatibilityQuerySchema)` to create a new message.
388
+ */
389
+ export const InterfaceCompatibilityQuerySchema = /*@__PURE__*/
390
+ messageDesc(file_nomos_kernel_v1_kernel, 53);
391
+
392
+ /**
393
+ * Describes the message nomos.kernel.v1.InterfaceMemberVerdict.
394
+ * Use `create(InterfaceMemberVerdictSchema)` to create a new message.
395
+ */
396
+ export const InterfaceMemberVerdictSchema = /*@__PURE__*/
397
+ messageDesc(file_nomos_kernel_v1_kernel, 54);
398
+
399
+ /**
400
+ * Describes the message nomos.kernel.v1.InterfaceCompatibilityResponse.
401
+ * Use `create(InterfaceCompatibilityResponseSchema)` to create a new message.
402
+ */
403
+ export const InterfaceCompatibilityResponseSchema = /*@__PURE__*/
404
+ messageDesc(file_nomos_kernel_v1_kernel, 55);
405
+
406
+ /**
407
+ * Describes the message nomos.kernel.v1.WarmProgressResponse.
408
+ * Use `create(WarmProgressResponseSchema)` to create a new message.
409
+ */
410
+ export const WarmProgressResponseSchema = /*@__PURE__*/
411
+ messageDesc(file_nomos_kernel_v1_kernel, 56);
412
+
413
+ /**
414
+ * Describes the message nomos.kernel.v1.ReadIndexPending.
415
+ * Use `create(ReadIndexPendingSchema)` to create a new message.
416
+ */
417
+ export const ReadIndexPendingSchema = /*@__PURE__*/
418
+ messageDesc(file_nomos_kernel_v1_kernel, 57);
419
+
420
+ /**
421
+ * Describes the message nomos.kernel.v1.MaintenanceQuantumQuery.
422
+ * Use `create(MaintenanceQuantumQuerySchema)` to create a new message.
423
+ */
424
+ export const MaintenanceQuantumQuerySchema = /*@__PURE__*/
425
+ messageDesc(file_nomos_kernel_v1_kernel, 58);
426
+
427
+ /**
428
+ * Describes the message nomos.kernel.v1.MaintenanceQuantumResponse.
429
+ * Use `create(MaintenanceQuantumResponseSchema)` to create a new message.
430
+ */
431
+ export const MaintenanceQuantumResponseSchema = /*@__PURE__*/
432
+ messageDesc(file_nomos_kernel_v1_kernel, 59);
433
+
434
+ /**
435
+ * Describes the message nomos.kernel.v1.OsgiAttribute.
436
+ * Use `create(OsgiAttributeSchema)` to create a new message.
437
+ */
438
+ export const OsgiAttributeSchema = /*@__PURE__*/
439
+ messageDesc(file_nomos_kernel_v1_kernel, 60);
440
+
441
+ /**
442
+ * Describes the message nomos.kernel.v1.OsgiDirective.
443
+ * Use `create(OsgiDirectiveSchema)` to create a new message.
444
+ */
445
+ export const OsgiDirectiveSchema = /*@__PURE__*/
446
+ messageDesc(file_nomos_kernel_v1_kernel, 61);
447
+
448
+ /**
449
+ * Describes the message nomos.kernel.v1.OsgiCapability.
450
+ * Use `create(OsgiCapabilitySchema)` to create a new message.
451
+ */
452
+ export const OsgiCapabilitySchema = /*@__PURE__*/
453
+ messageDesc(file_nomos_kernel_v1_kernel, 62);
454
+
455
+ /**
456
+ * Describes the message nomos.kernel.v1.OsgiRequirement.
457
+ * Use `create(OsgiRequirementSchema)` to create a new message.
458
+ */
459
+ export const OsgiRequirementSchema = /*@__PURE__*/
460
+ messageDesc(file_nomos_kernel_v1_kernel, 63);
461
+
462
+ /**
463
+ * Describes the message nomos.kernel.v1.OsgiResourceResponse.
464
+ * Use `create(OsgiResourceResponseSchema)` to create a new message.
465
+ */
466
+ export const OsgiResourceResponseSchema = /*@__PURE__*/
467
+ messageDesc(file_nomos_kernel_v1_kernel, 64);
468
+
469
+ /**
470
+ * Describes the message nomos.kernel.v1.VerifyChainStepSpan.
471
+ * Use `create(VerifyChainStepSpanSchema)` to create a new message.
472
+ */
473
+ export const VerifyChainStepSpanSchema = /*@__PURE__*/
474
+ messageDesc(file_nomos_kernel_v1_kernel, 65);
475
+
476
+ /**
477
+ * Describes the message nomos.kernel.v1.VerifyChainStepPhases.
478
+ * Use `create(VerifyChainStepPhasesSchema)` to create a new message.
479
+ */
480
+ export const VerifyChainStepPhasesSchema = /*@__PURE__*/
481
+ messageDesc(file_nomos_kernel_v1_kernel, 66);
482
+
483
+ /**
484
+ * Describes the message nomos.kernel.v1.VerifyChainDiagnostics.
485
+ * Use `create(VerifyChainDiagnosticsSchema)` to create a new message.
486
+ */
487
+ export const VerifyChainDiagnosticsSchema = /*@__PURE__*/
488
+ messageDesc(file_nomos_kernel_v1_kernel, 67);
489
+
490
+ /**
491
+ * Describes the message nomos.kernel.v1.VerifyChainEngineTiming.
492
+ * Use `create(VerifyChainEngineTimingSchema)` to create a new message.
493
+ */
494
+ export const VerifyChainEngineTimingSchema = /*@__PURE__*/
495
+ messageDesc(file_nomos_kernel_v1_kernel, 68);
496
+
497
+ /**
498
+ * Describes the message nomos.kernel.v1.VerifyChainLawHydrationTiming.
499
+ * Use `create(VerifyChainLawHydrationTimingSchema)` to create a new message.
500
+ */
501
+ export const VerifyChainLawHydrationTimingSchema = /*@__PURE__*/
502
+ messageDesc(file_nomos_kernel_v1_kernel, 69);
503
+
504
+ /**
505
+ * Describes the message nomos.kernel.v1.HttpsExecutionPolicy.
506
+ * Use `create(HttpsExecutionPolicySchema)` to create a new message.
507
+ */
508
+ export const HttpsExecutionPolicySchema = /*@__PURE__*/
509
+ messageDesc(file_nomos_kernel_v1_kernel, 70);
510
+
511
+ /**
512
+ * Describes the message nomos.kernel.v1.HttpsOutboundRoute.
513
+ * Use `create(HttpsOutboundRouteSchema)` to create a new message.
514
+ */
515
+ export const HttpsOutboundRouteSchema = /*@__PURE__*/
516
+ messageDesc(file_nomos_kernel_v1_kernel, 71);
517
+
518
+ /**
519
+ * Describes the message nomos.kernel.v1.WorkspaceOutboundRoute.
520
+ * Use `create(WorkspaceOutboundRouteSchema)` to create a new message.
521
+ */
522
+ export const WorkspaceOutboundRouteSchema = /*@__PURE__*/
523
+ messageDesc(file_nomos_kernel_v1_kernel, 72);
524
+
525
+ /**
526
+ * Describes the message nomos.kernel.v1.CarriedWorkspaceOffer.
527
+ * Use `create(CarriedWorkspaceOfferSchema)` to create a new message.
528
+ */
529
+ export const CarriedWorkspaceOfferSchema = /*@__PURE__*/
530
+ messageDesc(file_nomos_kernel_v1_kernel, 73);
531
+
532
+ /**
533
+ * Describes the message nomos.kernel.v1.OutboundOffer.
534
+ * Use `create(OutboundOfferSchema)` to create a new message.
535
+ */
536
+ export const OutboundOfferSchema = /*@__PURE__*/
537
+ messageDesc(file_nomos_kernel_v1_kernel, 74);
538
+
539
+ /**
540
+ * Describes the message nomos.kernel.v1.OutboxResponse.
541
+ * Use `create(OutboxResponseSchema)` to create a new message.
542
+ */
543
+ export const OutboxResponseSchema = /*@__PURE__*/
544
+ messageDesc(file_nomos_kernel_v1_kernel, 75);
545
+
546
+ /**
547
+ * Describes the message nomos.kernel.v1.OutboxEntry.
548
+ * Use `create(OutboxEntrySchema)` to create a new message.
549
+ */
550
+ export const OutboxEntrySchema = /*@__PURE__*/
551
+ messageDesc(file_nomos_kernel_v1_kernel, 76);
552
+
553
+ /**
554
+ * Describes the message nomos.kernel.v1.PrepareOutboundOffer.
555
+ * Use `create(PrepareOutboundOfferSchema)` to create a new message.
556
+ */
557
+ export const PrepareOutboundOfferSchema = /*@__PURE__*/
558
+ messageDesc(file_nomos_kernel_v1_kernel, 77);
559
+
560
+ /**
561
+ * Describes the message nomos.kernel.v1.SyncResponse.
562
+ * Use `create(SyncResponseSchema)` to create a new message.
563
+ */
564
+ export const SyncResponseSchema = /*@__PURE__*/
565
+ messageDesc(file_nomos_kernel_v1_kernel, 78);
566
+
567
+ /**
568
+ * Describes the message nomos.kernel.v1.CustodyDisagreement.
569
+ * Use `create(CustodyDisagreementSchema)` to create a new message.
570
+ */
571
+ export const CustodyDisagreementSchema = /*@__PURE__*/
572
+ messageDesc(file_nomos_kernel_v1_kernel, 79);
573
+
574
+ /**
575
+ * Describes the message nomos.kernel.v1.SyncAdmittedIntent.
576
+ * Use `create(SyncAdmittedIntentSchema)` to create a new message.
577
+ */
578
+ export const SyncAdmittedIntentSchema = /*@__PURE__*/
579
+ messageDesc(file_nomos_kernel_v1_kernel, 80);
580
+
581
+ /**
582
+ * Describes the message nomos.kernel.v1.SyncReplayedIntent.
583
+ * Use `create(SyncReplayedIntentSchema)` to create a new message.
584
+ */
585
+ export const SyncReplayedIntentSchema = /*@__PURE__*/
586
+ messageDesc(file_nomos_kernel_v1_kernel, 81);
587
+
588
+ /**
589
+ * Describes the message nomos.kernel.v1.SyncRefusal.
590
+ * Use `create(SyncRefusalSchema)` to create a new message.
591
+ */
592
+ export const SyncRefusalSchema = /*@__PURE__*/
593
+ messageDesc(file_nomos_kernel_v1_kernel, 82);
594
+
595
+ /**
596
+ * Describes the message nomos.kernel.v1.SyncRefusedIntent.
597
+ * Use `create(SyncRefusedIntentSchema)` to create a new message.
598
+ */
599
+ export const SyncRefusedIntentSchema = /*@__PURE__*/
600
+ messageDesc(file_nomos_kernel_v1_kernel, 83);
601
+
602
+ /**
603
+ * Describes the message nomos.kernel.v1.WorkspaceTarget.
604
+ * Use `create(WorkspaceTargetSchema)` to create a new message.
605
+ */
606
+ export const WorkspaceTargetSchema = /*@__PURE__*/
607
+ messageDesc(file_nomos_kernel_v1_kernel, 84);
608
+
609
+ /**
610
+ * Describes the message nomos.kernel.v1.OpenRequest.
611
+ * Use `create(OpenRequestSchema)` to create a new message.
612
+ */
613
+ export const OpenRequestSchema = /*@__PURE__*/
614
+ messageDesc(file_nomos_kernel_v1_kernel, 85);
615
+
616
+ /**
617
+ * Describes the message nomos.kernel.v1.GenesisOffer.
618
+ * Use `create(GenesisOfferSchema)` to create a new message.
619
+ */
620
+ export const GenesisOfferSchema = /*@__PURE__*/
621
+ messageDesc(file_nomos_kernel_v1_kernel, 86);
622
+
623
+ /**
624
+ * Describes the message nomos.kernel.v1.DirectiveCall.
625
+ * Use `create(DirectiveCallSchema)` to create a new message.
626
+ */
627
+ export const DirectiveCallSchema = /*@__PURE__*/
628
+ messageDesc(file_nomos_kernel_v1_kernel, 87);
629
+
630
+ /**
631
+ * Describes the message nomos.kernel.v1.AuthoringOptions.
632
+ * Use `create(AuthoringOptionsSchema)` to create a new message.
633
+ */
634
+ export const AuthoringOptionsSchema = /*@__PURE__*/
635
+ messageDesc(file_nomos_kernel_v1_kernel, 88);
636
+
637
+ /**
638
+ * Describes the message nomos.kernel.v1.CapturedClock.
639
+ * Use `create(CapturedClockSchema)` to create a new message.
640
+ */
641
+ export const CapturedClockSchema = /*@__PURE__*/
642
+ messageDesc(file_nomos_kernel_v1_kernel, 89);
643
+
644
+ /**
645
+ * Describes the message nomos.kernel.v1.BirthCertificate.
646
+ * Use `create(BirthCertificateSchema)` to create a new message.
647
+ */
648
+ export const BirthCertificateSchema = /*@__PURE__*/
649
+ messageDesc(file_nomos_kernel_v1_kernel, 90);
650
+
651
+ /**
652
+ * Describes the message nomos.kernel.v1.SignBirthCertificateRequest.
653
+ * Use `create(SignBirthCertificateRequestSchema)` to create a new message.
654
+ */
655
+ export const SignBirthCertificateRequestSchema = /*@__PURE__*/
656
+ messageDesc(file_nomos_kernel_v1_kernel, 91);
657
+
658
+ /**
659
+ * Describes the message nomos.kernel.v1.SignBirthCertificateResponse.
660
+ * Use `create(SignBirthCertificateResponseSchema)` to create a new message.
661
+ */
662
+ export const SignBirthCertificateResponseSchema = /*@__PURE__*/
663
+ messageDesc(file_nomos_kernel_v1_kernel, 92);
664
+
665
+ /**
666
+ * Describes the message nomos.kernel.v1.ModelLifecycleIntent.
667
+ * Use `create(ModelLifecycleIntentSchema)` to create a new message.
668
+ */
669
+ export const ModelLifecycleIntentSchema = /*@__PURE__*/
670
+ messageDesc(file_nomos_kernel_v1_kernel, 93);
671
+
672
+ /**
673
+ * Describes the message nomos.kernel.v1.IdentityProviderWitnessAdoption.
674
+ * Use `create(IdentityProviderWitnessAdoptionSchema)` to create a new message.
675
+ */
676
+ export const IdentityProviderWitnessAdoptionSchema = /*@__PURE__*/
677
+ messageDesc(file_nomos_kernel_v1_kernel, 94);
678
+
679
+ /**
680
+ * Describes the message nomos.kernel.v1.OfferRequest.
681
+ * Use `create(OfferRequestSchema)` to create a new message.
682
+ */
683
+ export const OfferRequestSchema = /*@__PURE__*/
684
+ messageDesc(file_nomos_kernel_v1_kernel, 95);
685
+
686
+ /**
687
+ * Describes the message nomos.kernel.v1.LawUnit.
688
+ * Use `create(LawUnitSchema)` to create a new message.
689
+ */
690
+ export const LawUnitSchema = /*@__PURE__*/
691
+ messageDesc(file_nomos_kernel_v1_kernel, 96);
692
+
693
+ /**
694
+ * Describes the message nomos.kernel.v1.LawUnitFile.
695
+ * Use `create(LawUnitFileSchema)` to create a new message.
696
+ */
697
+ export const LawUnitFileSchema = /*@__PURE__*/
698
+ messageDesc(file_nomos_kernel_v1_kernel, 97);
699
+
700
+ /**
701
+ * Describes the message nomos.kernel.v1.AttestedRead.
702
+ * Use `create(AttestedReadSchema)` to create a new message.
703
+ */
704
+ export const AttestedReadSchema = /*@__PURE__*/
705
+ messageDesc(file_nomos_kernel_v1_kernel, 98);
706
+
707
+ /**
708
+ * Describes the message nomos.kernel.v1.ReadAttestation.
709
+ * Use `create(ReadAttestationSchema)` to create a new message.
710
+ */
711
+ export const ReadAttestationSchema = /*@__PURE__*/
712
+ messageDesc(file_nomos_kernel_v1_kernel, 99);
713
+
714
+ /**
715
+ * Describes the message nomos.kernel.v1.ConflictSnapshot.
716
+ * Use `create(ConflictSnapshotSchema)` to create a new message.
717
+ */
718
+ export const ConflictSnapshotSchema = /*@__PURE__*/
719
+ messageDesc(file_nomos_kernel_v1_kernel, 100);
720
+
721
+ /**
722
+ * Describes the message nomos.kernel.v1.QueryRequest.
723
+ * Use `create(QueryRequestSchema)` to create a new message.
724
+ */
725
+ export const QueryRequestSchema = /*@__PURE__*/
726
+ messageDesc(file_nomos_kernel_v1_kernel, 101);
727
+
728
+ /**
729
+ * Describes the message nomos.kernel.v1.WorkspaceEffectReceiptQuery.
730
+ * Use `create(WorkspaceEffectReceiptQuerySchema)` to create a new message.
731
+ */
732
+ export const WorkspaceEffectReceiptQuerySchema = /*@__PURE__*/
733
+ messageDesc(file_nomos_kernel_v1_kernel, 102);
734
+
735
+ /**
736
+ * Describes the message nomos.kernel.v1.WorkspaceEffectReceiptResponse.
737
+ * Use `create(WorkspaceEffectReceiptResponseSchema)` to create a new message.
738
+ */
739
+ export const WorkspaceEffectReceiptResponseSchema = /*@__PURE__*/
740
+ messageDesc(file_nomos_kernel_v1_kernel, 103);
741
+
742
+ /**
743
+ * Describes the message nomos.kernel.v1.FullHistoryAuditQuery.
744
+ * Use `create(FullHistoryAuditQuerySchema)` to create a new message.
745
+ */
746
+ export const FullHistoryAuditQuerySchema = /*@__PURE__*/
747
+ messageDesc(file_nomos_kernel_v1_kernel, 104);
748
+
749
+ /**
750
+ * Describes the message nomos.kernel.v1.FullHistoryAuditResponse.
751
+ * Use `create(FullHistoryAuditResponseSchema)` to create a new message.
752
+ */
753
+ export const FullHistoryAuditResponseSchema = /*@__PURE__*/
754
+ messageDesc(file_nomos_kernel_v1_kernel, 105);
755
+
756
+ /**
757
+ * Describes the message nomos.kernel.v1.IdentityProviderWitnessQuery.
758
+ * Use `create(IdentityProviderWitnessQuerySchema)` to create a new message.
759
+ */
760
+ export const IdentityProviderWitnessQuerySchema = /*@__PURE__*/
761
+ messageDesc(file_nomos_kernel_v1_kernel, 106);
762
+
763
+ /**
764
+ * Describes the message nomos.kernel.v1.IdentityProviderWitnessKey.
765
+ * Use `create(IdentityProviderWitnessKeySchema)` to create a new message.
766
+ */
767
+ export const IdentityProviderWitnessKeySchema = /*@__PURE__*/
768
+ messageDesc(file_nomos_kernel_v1_kernel, 107);
769
+
770
+ /**
771
+ * Describes the message nomos.kernel.v1.IdentityProviderWitnessCertificate.
772
+ * Use `create(IdentityProviderWitnessCertificateSchema)` to create a new message.
773
+ */
774
+ export const IdentityProviderWitnessCertificateSchema = /*@__PURE__*/
775
+ messageDesc(file_nomos_kernel_v1_kernel, 108);
776
+
777
+ /**
778
+ * Describes the message nomos.kernel.v1.IdentityProviderWitnessResponse.
779
+ * Use `create(IdentityProviderWitnessResponseSchema)` to create a new message.
780
+ */
781
+ export const IdentityProviderWitnessResponseSchema = /*@__PURE__*/
782
+ messageDesc(file_nomos_kernel_v1_kernel, 109);
783
+
784
+ /**
785
+ * Describes the message nomos.kernel.v1.ChildWorkspaceQuery.
786
+ * Use `create(ChildWorkspaceQuerySchema)` to create a new message.
787
+ */
788
+ export const ChildWorkspaceQuerySchema = /*@__PURE__*/
789
+ messageDesc(file_nomos_kernel_v1_kernel, 110);
790
+
791
+ /**
792
+ * Describes the message nomos.kernel.v1.ChildWorkspaceQueryRecord.
793
+ * Use `create(ChildWorkspaceQueryRecordSchema)` to create a new message.
794
+ */
795
+ export const ChildWorkspaceQueryRecordSchema = /*@__PURE__*/
796
+ messageDesc(file_nomos_kernel_v1_kernel, 111);
797
+
798
+ /**
799
+ * Describes the message nomos.kernel.v1.ChildWorkspaceQueryResponse.
800
+ * Use `create(ChildWorkspaceQueryResponseSchema)` to create a new message.
801
+ */
802
+ export const ChildWorkspaceQueryResponseSchema = /*@__PURE__*/
803
+ messageDesc(file_nomos_kernel_v1_kernel, 112);
804
+
805
+ /**
806
+ * Describes the message nomos.kernel.v1.InstalledLawDeclarationsQuery.
807
+ * Use `create(InstalledLawDeclarationsQuerySchema)` to create a new message.
808
+ */
809
+ export const InstalledLawDeclarationsQuerySchema = /*@__PURE__*/
810
+ messageDesc(file_nomos_kernel_v1_kernel, 113);
811
+
812
+ /**
813
+ * Describes the message nomos.kernel.v1.InstalledLawUnit.
814
+ * Use `create(InstalledLawUnitSchema)` to create a new message.
815
+ */
816
+ export const InstalledLawUnitSchema = /*@__PURE__*/
817
+ messageDesc(file_nomos_kernel_v1_kernel, 114);
818
+
819
+ /**
820
+ * Describes the message nomos.kernel.v1.InstalledLawUnitSet.
821
+ * Use `create(InstalledLawUnitSetSchema)` to create a new message.
822
+ */
823
+ export const InstalledLawUnitSetSchema = /*@__PURE__*/
824
+ messageDesc(file_nomos_kernel_v1_kernel, 115);
825
+
826
+ /**
827
+ * Describes the message nomos.kernel.v1.DeclaredAuthenticationProvider.
828
+ * Use `create(DeclaredAuthenticationProviderSchema)` to create a new message.
829
+ */
830
+ export const DeclaredAuthenticationProviderSchema = /*@__PURE__*/
831
+ messageDesc(file_nomos_kernel_v1_kernel, 116);
832
+
833
+ /**
834
+ * Describes the message nomos.kernel.v1.InstalledLawClosureDeclarations.
835
+ * Use `create(InstalledLawClosureDeclarationsSchema)` to create a new message.
836
+ */
837
+ export const InstalledLawClosureDeclarationsSchema = /*@__PURE__*/
838
+ messageDesc(file_nomos_kernel_v1_kernel, 117);
839
+
840
+ /**
841
+ * Describes the message nomos.kernel.v1.InstalledLawDeclarationsResponse.
842
+ * Use `create(InstalledLawDeclarationsResponseSchema)` to create a new message.
843
+ */
844
+ export const InstalledLawDeclarationsResponseSchema = /*@__PURE__*/
845
+ messageDesc(file_nomos_kernel_v1_kernel, 118);
846
+
847
+ /**
848
+ * Describes the message nomos.kernel.v1.DirectiveAuthoringRequirementsQuery.
849
+ * Use `create(DirectiveAuthoringRequirementsQuerySchema)` to create a new message.
850
+ */
851
+ export const DirectiveAuthoringRequirementsQuerySchema = /*@__PURE__*/
852
+ messageDesc(file_nomos_kernel_v1_kernel, 119);
853
+
854
+ /**
855
+ * Describes the message nomos.kernel.v1.DirectiveAuthoringRequirementsResponse.
856
+ * Use `create(DirectiveAuthoringRequirementsResponseSchema)` to create a new message.
857
+ */
858
+ export const DirectiveAuthoringRequirementsResponseSchema = /*@__PURE__*/
859
+ messageDesc(file_nomos_kernel_v1_kernel, 120);
860
+
861
+ /**
862
+ * Describes the message nomos.kernel.v1.AuthenticationPostureQuery.
863
+ * Use `create(AuthenticationPostureQuerySchema)` to create a new message.
864
+ */
865
+ export const AuthenticationPostureQuerySchema = /*@__PURE__*/
866
+ messageDesc(file_nomos_kernel_v1_kernel, 121);
867
+
868
+ /**
869
+ * Describes the message nomos.kernel.v1.AuthenticationPostureResponse.
870
+ * Use `create(AuthenticationPostureResponseSchema)` to create a new message.
871
+ */
872
+ export const AuthenticationPostureResponseSchema = /*@__PURE__*/
873
+ messageDesc(file_nomos_kernel_v1_kernel, 122);
874
+
875
+ /**
876
+ * Describes the message nomos.kernel.v1.BirthEvidenceReadiness.
877
+ * Use `create(BirthEvidenceReadinessSchema)` to create a new message.
878
+ */
879
+ export const BirthEvidenceReadinessSchema = /*@__PURE__*/
880
+ messageDesc(file_nomos_kernel_v1_kernel, 123);
881
+
882
+ /**
883
+ * Describes the message nomos.kernel.v1.OwnedDeviceRequestQuery.
884
+ * Use `create(OwnedDeviceRequestQuerySchema)` to create a new message.
885
+ */
886
+ export const OwnedDeviceRequestQuerySchema = /*@__PURE__*/
887
+ messageDesc(file_nomos_kernel_v1_kernel, 124);
888
+
889
+ /**
890
+ * Describes the message nomos.kernel.v1.OwnedDeviceRequestResponse.
891
+ * Use `create(OwnedDeviceRequestResponseSchema)` to create a new message.
892
+ */
893
+ export const OwnedDeviceRequestResponseSchema = /*@__PURE__*/
894
+ messageDesc(file_nomos_kernel_v1_kernel, 125);
895
+
896
+ /**
897
+ * Describes the message nomos.kernel.v1.OwnedPrepareApprovalQuery.
898
+ * Use `create(OwnedPrepareApprovalQuerySchema)` to create a new message.
899
+ */
900
+ export const OwnedPrepareApprovalQuerySchema = /*@__PURE__*/
901
+ messageDesc(file_nomos_kernel_v1_kernel, 126);
902
+
903
+ /**
904
+ * Describes the message nomos.kernel.v1.OwnedPrepareApprovalResponse.
905
+ * Use `create(OwnedPrepareApprovalResponseSchema)` to create a new message.
906
+ */
907
+ export const OwnedPrepareApprovalResponseSchema = /*@__PURE__*/
908
+ messageDesc(file_nomos_kernel_v1_kernel, 127);
909
+
910
+ /**
911
+ * Describes the message nomos.kernel.v1.QueryAuthority.
912
+ * Use `create(QueryAuthoritySchema)` to create a new message.
913
+ */
914
+ export const QueryAuthoritySchema = /*@__PURE__*/
915
+ messageDesc(file_nomos_kernel_v1_kernel, 128);
916
+
917
+ /**
918
+ * Describes the message nomos.kernel.v1.InjectedKey.
919
+ * Use `create(InjectedKeySchema)` to create a new message.
920
+ */
921
+ export const InjectedKeySchema = /*@__PURE__*/
922
+ messageDesc(file_nomos_kernel_v1_kernel, 129);
923
+
924
+ /**
925
+ * Describes the message nomos.kernel.v1.RowsQuery.
926
+ * Use `create(RowsQuerySchema)` to create a new message.
927
+ */
928
+ export const RowsQuerySchema = /*@__PURE__*/
929
+ messageDesc(file_nomos_kernel_v1_kernel, 130);
930
+
931
+ /**
932
+ * Describes the message nomos.kernel.v1.PageQuery.
933
+ * Use `create(PageQuerySchema)` to create a new message.
934
+ */
935
+ export const PageQuerySchema = /*@__PURE__*/
936
+ messageDesc(file_nomos_kernel_v1_kernel, 131);
937
+
938
+ /**
939
+ * Describes the message nomos.kernel.v1.ByIdQuery.
940
+ * Use `create(ByIdQuerySchema)` to create a new message.
941
+ */
942
+ export const ByIdQuerySchema = /*@__PURE__*/
943
+ messageDesc(file_nomos_kernel_v1_kernel, 132);
944
+
945
+ /**
946
+ * Describes the message nomos.kernel.v1.ByTypeQuery.
947
+ * Use `create(ByTypeQuerySchema)` to create a new message.
948
+ */
949
+ export const ByTypeQuerySchema = /*@__PURE__*/
950
+ messageDesc(file_nomos_kernel_v1_kernel, 133);
951
+
952
+ /**
953
+ * Describes the message nomos.kernel.v1.NomosRef.
954
+ * Use `create(NomosRefSchema)` to create a new message.
955
+ */
956
+ export const NomosRefSchema = /*@__PURE__*/
957
+ messageDesc(file_nomos_kernel_v1_kernel, 134);
958
+
959
+ /**
960
+ * Describes the message nomos.kernel.v1.ResolveRefsQuery.
961
+ * Use `create(ResolveRefsQuerySchema)` to create a new message.
962
+ */
963
+ export const ResolveRefsQuerySchema = /*@__PURE__*/
964
+ messageDesc(file_nomos_kernel_v1_kernel, 135);
965
+
966
+ /**
967
+ * Describes the message nomos.kernel.v1.ReferenceVersionsQuery.
968
+ * Use `create(ReferenceVersionsQuerySchema)` to create a new message.
969
+ */
970
+ export const ReferenceVersionsQuerySchema = /*@__PURE__*/
971
+ messageDesc(file_nomos_kernel_v1_kernel, 136);
972
+
973
+ /**
974
+ * Describes the message nomos.kernel.v1.ReferenceVersionCheck.
975
+ * Use `create(ReferenceVersionCheckSchema)` to create a new message.
976
+ */
977
+ export const ReferenceVersionCheckSchema = /*@__PURE__*/
978
+ messageDesc(file_nomos_kernel_v1_kernel, 137);
979
+
980
+ /**
981
+ * Describes the message nomos.kernel.v1.TallyQuery.
982
+ * Use `create(TallyQuerySchema)` to create a new message.
983
+ */
984
+ export const TallyQuerySchema = /*@__PURE__*/
985
+ messageDesc(file_nomos_kernel_v1_kernel, 138);
986
+
987
+ /**
988
+ * Describes the message nomos.kernel.v1.SpatialQuery.
989
+ * Use `create(SpatialQuerySchema)` to create a new message.
990
+ */
991
+ export const SpatialQuerySchema = /*@__PURE__*/
992
+ messageDesc(file_nomos_kernel_v1_kernel, 139);
993
+
994
+ /**
995
+ * Describes the message nomos.kernel.v1.PendingConflictsQuery.
996
+ * Use `create(PendingConflictsQuerySchema)` to create a new message.
997
+ */
998
+ export const PendingConflictsQuerySchema = /*@__PURE__*/
999
+ messageDesc(file_nomos_kernel_v1_kernel, 140);
1000
+
1001
+ /**
1002
+ * Describes the message nomos.kernel.v1.PendingConflictSummaryQuery.
1003
+ * Use `create(PendingConflictSummaryQuerySchema)` to create a new message.
1004
+ */
1005
+ export const PendingConflictSummaryQuerySchema = /*@__PURE__*/
1006
+ messageDesc(file_nomos_kernel_v1_kernel, 141);
1007
+
1008
+ /**
1009
+ * Describes the message nomos.kernel.v1.NamedQuery.
1010
+ * Use `create(NamedQuerySchema)` to create a new message.
1011
+ */
1012
+ export const NamedQuerySchema = /*@__PURE__*/
1013
+ messageDesc(file_nomos_kernel_v1_kernel, 142);
1014
+
1015
+ /**
1016
+ * Describes the message nomos.kernel.v1.FrontierTransitionRequest.
1017
+ * Use `create(FrontierTransitionRequestSchema)` to create a new message.
1018
+ */
1019
+ export const FrontierTransitionRequestSchema = /*@__PURE__*/
1020
+ messageDesc(file_nomos_kernel_v1_kernel, 143);
1021
+
1022
+ /**
1023
+ * Describes the message nomos.kernel.v1.FrontierTransitionDispositionMapEntry.
1024
+ * Use `create(FrontierTransitionDispositionMapEntrySchema)` to create a new message.
1025
+ */
1026
+ export const FrontierTransitionDispositionMapEntrySchema = /*@__PURE__*/
1027
+ messageDesc(file_nomos_kernel_v1_kernel, 144);
1028
+
1029
+ /**
1030
+ * Describes the message nomos.kernel.v1.FrontierTransitionDispositions.
1031
+ * Use `create(FrontierTransitionDispositionsSchema)` to create a new message.
1032
+ */
1033
+ export const FrontierTransitionDispositionsSchema = /*@__PURE__*/
1034
+ messageDesc(file_nomos_kernel_v1_kernel, 145);
1035
+
1036
+ /**
1037
+ * Describes the message nomos.kernel.v1.FrontierTransitionViolation.
1038
+ * Use `create(FrontierTransitionViolationSchema)` to create a new message.
1039
+ */
1040
+ export const FrontierTransitionViolationSchema = /*@__PURE__*/
1041
+ messageDesc(file_nomos_kernel_v1_kernel, 146);
1042
+
1043
+ /**
1044
+ * Describes the message nomos.kernel.v1.FrontierTransitionResponse.
1045
+ * Use `create(FrontierTransitionResponseSchema)` to create a new message.
1046
+ */
1047
+ export const FrontierTransitionResponseSchema = /*@__PURE__*/
1048
+ messageDesc(file_nomos_kernel_v1_kernel, 147);
1049
+
1050
+ /**
1051
+ * Describes the message nomos.kernel.v1.AuthorizationObject.
1052
+ * Use `create(AuthorizationObjectSchema)` to create a new message.
1053
+ */
1054
+ export const AuthorizationObjectSchema = /*@__PURE__*/
1055
+ messageDesc(file_nomos_kernel_v1_kernel, 148);
1056
+
1057
+ /**
1058
+ * Describes the message nomos.kernel.v1.AuthorizationSubject.
1059
+ * Use `create(AuthorizationSubjectSchema)` to create a new message.
1060
+ */
1061
+ export const AuthorizationSubjectSchema = /*@__PURE__*/
1062
+ messageDesc(file_nomos_kernel_v1_kernel, 149);
1063
+
1064
+ /**
1065
+ * Describes the message nomos.kernel.v1.RelationshipTupleAddress.
1066
+ * Use `create(RelationshipTupleAddressSchema)` to create a new message.
1067
+ */
1068
+ export const RelationshipTupleAddressSchema = /*@__PURE__*/
1069
+ messageDesc(file_nomos_kernel_v1_kernel, 150);
1070
+
1071
+ /**
1072
+ * Describes the message nomos.kernel.v1.AuthorizationConsistency.
1073
+ * Use `create(AuthorizationConsistencySchema)` to create a new message.
1074
+ */
1075
+ export const AuthorizationConsistencySchema = /*@__PURE__*/
1076
+ messageDesc(file_nomos_kernel_v1_kernel, 151);
1077
+
1078
+ /**
1079
+ * Describes the message nomos.kernel.v1.AuthorizationConditionContext.
1080
+ * Use `create(AuthorizationConditionContextSchema)` to create a new message.
1081
+ */
1082
+ export const AuthorizationConditionContextSchema = /*@__PURE__*/
1083
+ messageDesc(file_nomos_kernel_v1_kernel, 152);
1084
+
1085
+ /**
1086
+ * Describes the message nomos.kernel.v1.AuthorizationCheckRequest.
1087
+ * Use `create(AuthorizationCheckRequestSchema)` to create a new message.
1088
+ */
1089
+ export const AuthorizationCheckRequestSchema = /*@__PURE__*/
1090
+ messageDesc(file_nomos_kernel_v1_kernel, 153);
1091
+
1092
+ /**
1093
+ * Describes the message nomos.kernel.v1.AuthorizationExpandRequest.
1094
+ * Use `create(AuthorizationExpandRequestSchema)` to create a new message.
1095
+ */
1096
+ export const AuthorizationExpandRequestSchema = /*@__PURE__*/
1097
+ messageDesc(file_nomos_kernel_v1_kernel, 154);
1098
+
1099
+ /**
1100
+ * Describes the message nomos.kernel.v1.RelationshipTupleEvidence.
1101
+ * Use `create(RelationshipTupleEvidenceSchema)` to create a new message.
1102
+ */
1103
+ export const RelationshipTupleEvidenceSchema = /*@__PURE__*/
1104
+ messageDesc(file_nomos_kernel_v1_kernel, 155);
1105
+
1106
+ /**
1107
+ * Describes the message nomos.kernel.v1.AuthorizationExplanation.
1108
+ * Use `create(AuthorizationExplanationSchema)` to create a new message.
1109
+ */
1110
+ export const AuthorizationExplanationSchema = /*@__PURE__*/
1111
+ messageDesc(file_nomos_kernel_v1_kernel, 156);
1112
+
1113
+ /**
1114
+ * Describes the enum nomos.kernel.v1.AuthorizationExplanation.Operation.
1115
+ */
1116
+ export const AuthorizationExplanation_OperationSchema = /*@__PURE__*/
1117
+ enumDesc(file_nomos_kernel_v1_kernel, 156, 0);
1118
+
1119
+ /**
1120
+ * @generated from enum nomos.kernel.v1.AuthorizationExplanation.Operation
1121
+ */
1122
+ export const AuthorizationExplanation_Operation = /*@__PURE__*/
1123
+ tsEnum(AuthorizationExplanation_OperationSchema);
1124
+
1125
+ /**
1126
+ * Describes the message nomos.kernel.v1.AuthorizationDecisionBasis.
1127
+ * Use `create(AuthorizationDecisionBasisSchema)` to create a new message.
1128
+ */
1129
+ export const AuthorizationDecisionBasisSchema = /*@__PURE__*/
1130
+ messageDesc(file_nomos_kernel_v1_kernel, 157);
1131
+
1132
+ /**
1133
+ * Describes the message nomos.kernel.v1.AuthorizationCheckResponse.
1134
+ * Use `create(AuthorizationCheckResponseSchema)` to create a new message.
1135
+ */
1136
+ export const AuthorizationCheckResponseSchema = /*@__PURE__*/
1137
+ messageDesc(file_nomos_kernel_v1_kernel, 158);
1138
+
1139
+ /**
1140
+ * Describes the message nomos.kernel.v1.AuthorizationExpandResponse.
1141
+ * Use `create(AuthorizationExpandResponseSchema)` to create a new message.
1142
+ */
1143
+ export const AuthorizationExpandResponseSchema = /*@__PURE__*/
1144
+ messageDesc(file_nomos_kernel_v1_kernel, 159);
1145
+
1146
+ /**
1147
+ * Describes the message nomos.kernel.v1.OutboxRequest.
1148
+ * Use `create(OutboxRequestSchema)` to create a new message.
1149
+ */
1150
+ export const OutboxRequestSchema = /*@__PURE__*/
1151
+ messageDesc(file_nomos_kernel_v1_kernel, 160);
1152
+
1153
+ /**
1154
+ * Describes the message nomos.kernel.v1.SyncRequest.
1155
+ * Use `create(SyncRequestSchema)` to create a new message.
1156
+ */
1157
+ export const SyncRequestSchema = /*@__PURE__*/
1158
+ messageDesc(file_nomos_kernel_v1_kernel, 161);
1159
+
1160
+ /**
1161
+ * Describes the message nomos.kernel.v1.KernelConfigurationRequest.
1162
+ * Use `create(KernelConfigurationRequestSchema)` to create a new message.
1163
+ */
1164
+ export const KernelConfigurationRequestSchema = /*@__PURE__*/
1165
+ messageDesc(file_nomos_kernel_v1_kernel, 162);
1166
+
1167
+ /**
1168
+ * Describes the message nomos.kernel.v1.KernelConfigurationResponse.
1169
+ * Use `create(KernelConfigurationResponseSchema)` to create a new message.
1170
+ */
1171
+ export const KernelConfigurationResponseSchema = /*@__PURE__*/
1172
+ messageDesc(file_nomos_kernel_v1_kernel, 163);
1173
+
1174
+ /**
1175
+ * Describes the message nomos.kernel.v1.CustodyRequest.
1176
+ * Use `create(CustodyRequestSchema)` to create a new message.
1177
+ */
1178
+ export const CustodyRequestSchema = /*@__PURE__*/
1179
+ messageDesc(file_nomos_kernel_v1_kernel, 164);
1180
+
1181
+ /**
1182
+ * Describes the message nomos.kernel.v1.AggregateCensusRequest.
1183
+ * Use `create(AggregateCensusRequestSchema)` to create a new message.
1184
+ */
1185
+ export const AggregateCensusRequestSchema = /*@__PURE__*/
1186
+ messageDesc(file_nomos_kernel_v1_kernel, 165);
1187
+
1188
+ /**
1189
+ * Describes the message nomos.kernel.v1.AggregateTypeCount.
1190
+ * Use `create(AggregateTypeCountSchema)` to create a new message.
1191
+ */
1192
+ export const AggregateTypeCountSchema = /*@__PURE__*/
1193
+ messageDesc(file_nomos_kernel_v1_kernel, 166);
1194
+
1195
+ /**
1196
+ * Describes the message nomos.kernel.v1.AggregateCensusResponse.
1197
+ * Use `create(AggregateCensusResponseSchema)` to create a new message.
1198
+ */
1199
+ export const AggregateCensusResponseSchema = /*@__PURE__*/
1200
+ messageDesc(file_nomos_kernel_v1_kernel, 167);
1201
+
1202
+ /**
1203
+ * Describes the message nomos.kernel.v1.ResidentFootprintRequest.
1204
+ * Use `create(ResidentFootprintRequestSchema)` to create a new message.
1205
+ */
1206
+ export const ResidentFootprintRequestSchema = /*@__PURE__*/
1207
+ messageDesc(file_nomos_kernel_v1_kernel, 168);
1208
+
1209
+ /**
1210
+ * Describes the message nomos.kernel.v1.ResidentFootprint.
1211
+ * Use `create(ResidentFootprintSchema)` to create a new message.
1212
+ */
1213
+ export const ResidentFootprintSchema = /*@__PURE__*/
1214
+ messageDesc(file_nomos_kernel_v1_kernel, 169);
1215
+
1216
+ /**
1217
+ * Describes the message nomos.kernel.v1.ResidentComponent.
1218
+ * Use `create(ResidentComponentSchema)` to create a new message.
1219
+ */
1220
+ export const ResidentComponentSchema = /*@__PURE__*/
1221
+ messageDesc(file_nomos_kernel_v1_kernel, 170);
1222
+
1223
+ /**
1224
+ * Describes the message nomos.kernel.v1.ResidentFootprintResponse.
1225
+ * Use `create(ResidentFootprintResponseSchema)` to create a new message.
1226
+ */
1227
+ export const ResidentFootprintResponseSchema = /*@__PURE__*/
1228
+ messageDesc(file_nomos_kernel_v1_kernel, 171);
1229
+
1230
+ /**
1231
+ * Describes the message nomos.kernel.v1.PackDeltaRequest.
1232
+ * Use `create(PackDeltaRequestSchema)` to create a new message.
1233
+ */
1234
+ export const PackDeltaRequestSchema = /*@__PURE__*/
1235
+ messageDesc(file_nomos_kernel_v1_kernel, 172);
1236
+
1237
+ /**
1238
+ * Describes the message nomos.kernel.v1.ApplyPackRequest.
1239
+ * Use `create(ApplyPackRequestSchema)` to create a new message.
1240
+ */
1241
+ export const ApplyPackRequestSchema = /*@__PURE__*/
1242
+ messageDesc(file_nomos_kernel_v1_kernel, 173);
1243
+
1244
+ /**
1245
+ * Describes the message nomos.kernel.v1.RepoStatsRequest.
1246
+ * Use `create(RepoStatsRequestSchema)` to create a new message.
1247
+ */
1248
+ export const RepoStatsRequestSchema = /*@__PURE__*/
1249
+ messageDesc(file_nomos_kernel_v1_kernel, 174);
1250
+
1251
+ /**
1252
+ * Describes the message nomos.kernel.v1.IntentsAboveRequest.
1253
+ * Use `create(IntentsAboveRequestSchema)` to create a new message.
1254
+ */
1255
+ export const IntentsAboveRequestSchema = /*@__PURE__*/
1256
+ messageDesc(file_nomos_kernel_v1_kernel, 175);
1257
+
1258
+ /**
1259
+ * Describes the message nomos.kernel.v1.HistorySummaryRequest.
1260
+ * Use `create(HistorySummaryRequestSchema)` to create a new message.
1261
+ */
1262
+ export const HistorySummaryRequestSchema = /*@__PURE__*/
1263
+ messageDesc(file_nomos_kernel_v1_kernel, 176);
1264
+
1265
+ /**
1266
+ * Describes the message nomos.kernel.v1.InspectChangeRequest.
1267
+ * Use `create(InspectChangeRequestSchema)` to create a new message.
1268
+ */
1269
+ export const InspectChangeRequestSchema = /*@__PURE__*/
1270
+ messageDesc(file_nomos_kernel_v1_kernel, 177);
1271
+
1272
+ /**
1273
+ * Describes the message nomos.kernel.v1.RefusalVerdict.
1274
+ * Use `create(RefusalVerdictSchema)` to create a new message.
1275
+ */
1276
+ export const RefusalVerdictSchema = /*@__PURE__*/
1277
+ messageDesc(file_nomos_kernel_v1_kernel, 178);
1278
+
1279
+ /**
1280
+ * Describes the message nomos.kernel.v1.EncodeRefusalVerdictRequest.
1281
+ * Use `create(EncodeRefusalVerdictRequestSchema)` to create a new message.
1282
+ */
1283
+ export const EncodeRefusalVerdictRequestSchema = /*@__PURE__*/
1284
+ messageDesc(file_nomos_kernel_v1_kernel, 179);
1285
+
1286
+ /**
1287
+ * Describes the message nomos.kernel.v1.InspectRefusalVerdictRequest.
1288
+ * Use `create(InspectRefusalVerdictRequestSchema)` to create a new message.
1289
+ */
1290
+ export const InspectRefusalVerdictRequestSchema = /*@__PURE__*/
1291
+ messageDesc(file_nomos_kernel_v1_kernel, 180);
1292
+
1293
+ /**
1294
+ * Describes the message nomos.kernel.v1.CompactionEquivalence.
1295
+ * Use `create(CompactionEquivalenceSchema)` to create a new message.
1296
+ */
1297
+ export const CompactionEquivalenceSchema = /*@__PURE__*/
1298
+ messageDesc(file_nomos_kernel_v1_kernel, 181);
1299
+
1300
+ /**
1301
+ * Describes the message nomos.kernel.v1.ProveCompactionEquivalenceRequest.
1302
+ * Use `create(ProveCompactionEquivalenceRequestSchema)` to create a new message.
1303
+ */
1304
+ export const ProveCompactionEquivalenceRequestSchema = /*@__PURE__*/
1305
+ messageDesc(file_nomos_kernel_v1_kernel, 182);
1306
+
1307
+ /**
1308
+ * Describes the message nomos.kernel.v1.ReadBlobRequest.
1309
+ * Use `create(ReadBlobRequestSchema)` to create a new message.
1310
+ */
1311
+ export const ReadBlobRequestSchema = /*@__PURE__*/
1312
+ messageDesc(file_nomos_kernel_v1_kernel, 183);
1313
+
1314
+ /**
1315
+ * Describes the message nomos.kernel.v1.ResolveRefRequest.
1316
+ * Use `create(ResolveRefRequestSchema)` to create a new message.
1317
+ */
1318
+ export const ResolveRefRequestSchema = /*@__PURE__*/
1319
+ messageDesc(file_nomos_kernel_v1_kernel, 184);
1320
+
1321
+ /**
1322
+ * Describes the message nomos.kernel.v1.PhysicalRefFile.
1323
+ * Use `create(PhysicalRefFileSchema)` to create a new message.
1324
+ */
1325
+ export const PhysicalRefFileSchema = /*@__PURE__*/
1326
+ messageDesc(file_nomos_kernel_v1_kernel, 185);
1327
+
1328
+ /**
1329
+ * Describes the message nomos.kernel.v1.ListRefsRequest.
1330
+ * Use `create(ListRefsRequestSchema)` to create a new message.
1331
+ */
1332
+ export const ListRefsRequestSchema = /*@__PURE__*/
1333
+ messageDesc(file_nomos_kernel_v1_kernel, 186);
1334
+
1335
+ /**
1336
+ * Describes the message nomos.kernel.v1.WriteRefRequest.
1337
+ * Use `create(WriteRefRequestSchema)` to create a new message.
1338
+ */
1339
+ export const WriteRefRequestSchema = /*@__PURE__*/
1340
+ messageDesc(file_nomos_kernel_v1_kernel, 187);
1341
+
1342
+ /**
1343
+ * Describes the message nomos.kernel.v1.DeleteRefRequest.
1344
+ * Use `create(DeleteRefRequestSchema)` to create a new message.
1345
+ */
1346
+ export const DeleteRefRequestSchema = /*@__PURE__*/
1347
+ messageDesc(file_nomos_kernel_v1_kernel, 188);
1348
+
1349
+ /**
1350
+ * Describes the message nomos.kernel.v1.MetaFile.
1351
+ * Use `create(MetaFileSchema)` to create a new message.
1352
+ */
1353
+ export const MetaFileSchema = /*@__PURE__*/
1354
+ messageDesc(file_nomos_kernel_v1_kernel, 189);
1355
+
1356
+ /**
1357
+ * Describes the message nomos.kernel.v1.WriteMetaCommitRequest.
1358
+ * Use `create(WriteMetaCommitRequestSchema)` to create a new message.
1359
+ */
1360
+ export const WriteMetaCommitRequestSchema = /*@__PURE__*/
1361
+ messageDesc(file_nomos_kernel_v1_kernel, 190);
1362
+
1363
+ /**
1364
+ * Describes the message nomos.kernel.v1.LawClosureInfoRequest.
1365
+ * Use `create(LawClosureInfoRequestSchema)` to create a new message.
1366
+ */
1367
+ export const LawClosureInfoRequestSchema = /*@__PURE__*/
1368
+ messageDesc(file_nomos_kernel_v1_kernel, 191);
1369
+
1370
+ /**
1371
+ * Describes the message nomos.kernel.v1.CheckpointExportRequest.
1372
+ * Use `create(CheckpointExportRequestSchema)` to create a new message.
1373
+ */
1374
+ export const CheckpointExportRequestSchema = /*@__PURE__*/
1375
+ messageDesc(file_nomos_kernel_v1_kernel, 192);
1376
+
1377
+ /**
1378
+ * Describes the message nomos.kernel.v1.FrontierHlc.
1379
+ * Use `create(FrontierHlcSchema)` to create a new message.
1380
+ */
1381
+ export const FrontierHlcSchema = /*@__PURE__*/
1382
+ messageDesc(file_nomos_kernel_v1_kernel, 193);
1383
+
1384
+ /**
1385
+ * Describes the message nomos.kernel.v1.VerifiedFrontierReceipt.
1386
+ * Use `create(VerifiedFrontierReceiptSchema)` to create a new message.
1387
+ */
1388
+ export const VerifiedFrontierReceiptSchema = /*@__PURE__*/
1389
+ messageDesc(file_nomos_kernel_v1_kernel, 194);
1390
+
1391
+ /**
1392
+ * Describes the message nomos.kernel.v1.FoldFrontierAggregate.
1393
+ * Use `create(FoldFrontierAggregateSchema)` to create a new message.
1394
+ */
1395
+ export const FoldFrontierAggregateSchema = /*@__PURE__*/
1396
+ messageDesc(file_nomos_kernel_v1_kernel, 195);
1397
+
1398
+ /**
1399
+ * Describes the message nomos.kernel.v1.FoldFrontierFingerprint.
1400
+ * Use `create(FoldFrontierFingerprintSchema)` to create a new message.
1401
+ */
1402
+ export const FoldFrontierFingerprintSchema = /*@__PURE__*/
1403
+ messageDesc(file_nomos_kernel_v1_kernel, 196);
1404
+
1405
+ /**
1406
+ * Describes the message nomos.kernel.v1.FoldFrontierSnapshot.
1407
+ * Use `create(FoldFrontierSnapshotSchema)` to create a new message.
1408
+ */
1409
+ export const FoldFrontierSnapshotSchema = /*@__PURE__*/
1410
+ messageDesc(file_nomos_kernel_v1_kernel, 197);
1411
+
1412
+ /**
1413
+ * Describes the message nomos.kernel.v1.StoredCheckpointManifest.
1414
+ * Use `create(StoredCheckpointManifestSchema)` to create a new message.
1415
+ */
1416
+ export const StoredCheckpointManifestSchema = /*@__PURE__*/
1417
+ messageDesc(file_nomos_kernel_v1_kernel, 198);
1418
+
1419
+ /**
1420
+ * Describes the message nomos.kernel.v1.CheckpointImportRequest.
1421
+ * Use `create(CheckpointImportRequestSchema)` to create a new message.
1422
+ */
1423
+ export const CheckpointImportRequestSchema = /*@__PURE__*/
1424
+ messageDesc(file_nomos_kernel_v1_kernel, 199);
1425
+
1426
+ /**
1427
+ * Describes the message nomos.kernel.v1.CapacityReserveRequest.
1428
+ * Use `create(CapacityReserveRequestSchema)` to create a new message.
1429
+ */
1430
+ export const CapacityReserveRequestSchema = /*@__PURE__*/
1431
+ messageDesc(file_nomos_kernel_v1_kernel, 200);
1432
+
1433
+ /**
1434
+ * Describes the message nomos.kernel.v1.RestoreMainRequest.
1435
+ * Use `create(RestoreMainRequestSchema)` to create a new message.
1436
+ */
1437
+ export const RestoreMainRequestSchema = /*@__PURE__*/
1438
+ messageDesc(file_nomos_kernel_v1_kernel, 201);
1439
+
1440
+ /**
1441
+ * Describes the message nomos.kernel.v1.AuditCustodyRequest.
1442
+ * Use `create(AuditCustodyRequestSchema)` to create a new message.
1443
+ */
1444
+ export const AuditCustodyRequestSchema = /*@__PURE__*/
1445
+ messageDesc(file_nomos_kernel_v1_kernel, 202);
1446
+
1447
+ /**
1448
+ * Describes the message nomos.kernel.v1.AuditCustodyResponse.
1449
+ * Use `create(AuditCustodyResponseSchema)` to create a new message.
1450
+ */
1451
+ export const AuditCustodyResponseSchema = /*@__PURE__*/
1452
+ messageDesc(file_nomos_kernel_v1_kernel, 203);
1453
+
1454
+ /**
1455
+ * Describes the message nomos.kernel.v1.LawProducts.
1456
+ * Use `create(LawProductsSchema)` to create a new message.
1457
+ */
1458
+ export const LawProductsSchema = /*@__PURE__*/
1459
+ messageDesc(file_nomos_kernel_v1_kernel, 204);
1460
+
1461
+ /**
1462
+ * Describes the message nomos.kernel.v1.ExportLawProductsRequest.
1463
+ * Use `create(ExportLawProductsRequestSchema)` to create a new message.
1464
+ */
1465
+ export const ExportLawProductsRequestSchema = /*@__PURE__*/
1466
+ messageDesc(file_nomos_kernel_v1_kernel, 205);
1467
+
1468
+ /**
1469
+ * Describes the message nomos.kernel.v1.ExportLawProductsResponse.
1470
+ * Use `create(ExportLawProductsResponseSchema)` to create a new message.
1471
+ */
1472
+ export const ExportLawProductsResponseSchema = /*@__PURE__*/
1473
+ messageDesc(file_nomos_kernel_v1_kernel, 206);
1474
+
1475
+ /**
1476
+ * Describes the message nomos.kernel.v1.ImportLawProductsRequest.
1477
+ * Use `create(ImportLawProductsRequestSchema)` to create a new message.
1478
+ */
1479
+ export const ImportLawProductsRequestSchema = /*@__PURE__*/
1480
+ messageDesc(file_nomos_kernel_v1_kernel, 207);
1481
+
1482
+ /**
1483
+ * Describes the message nomos.kernel.v1.ImportLawProductsResponse.
1484
+ * Use `create(ImportLawProductsResponseSchema)` to create a new message.
1485
+ */
1486
+ export const ImportLawProductsResponseSchema = /*@__PURE__*/
1487
+ messageDesc(file_nomos_kernel_v1_kernel, 208);
1488
+
1489
+ /**
1490
+ * Describes the message nomos.kernel.v1.CustodyCertificate.
1491
+ * Use `create(CustodyCertificateSchema)` to create a new message.
1492
+ */
1493
+ export const CustodyCertificateSchema = /*@__PURE__*/
1494
+ messageDesc(file_nomos_kernel_v1_kernel, 209);
1495
+
1496
+ /**
1497
+ * Describes the message nomos.kernel.v1.OpenGitStateRequest.
1498
+ * Use `create(OpenGitStateRequestSchema)` to create a new message.
1499
+ */
1500
+ export const OpenGitStateRequestSchema = /*@__PURE__*/
1501
+ messageDesc(file_nomos_kernel_v1_kernel, 210);
1502
+
1503
+ /**
1504
+ * Describes the message nomos.kernel.v1.AttachLocalFrontierRequest.
1505
+ * Use `create(AttachLocalFrontierRequestSchema)` to create a new message.
1506
+ */
1507
+ export const AttachLocalFrontierRequestSchema = /*@__PURE__*/
1508
+ messageDesc(file_nomos_kernel_v1_kernel, 211);
1509
+
1510
+ /**
1511
+ * Describes the message nomos.kernel.v1.CustodyRemote.
1512
+ * Use `create(CustodyRemoteSchema)` to create a new message.
1513
+ */
1514
+ export const CustodyRemoteSchema = /*@__PURE__*/
1515
+ messageDesc(file_nomos_kernel_v1_kernel, 212);
1516
+
1517
+ /**
1518
+ * Describes the message nomos.kernel.v1.CustodyPlacementRule.
1519
+ * Use `create(CustodyPlacementRuleSchema)` to create a new message.
1520
+ */
1521
+ export const CustodyPlacementRuleSchema = /*@__PURE__*/
1522
+ messageDesc(file_nomos_kernel_v1_kernel, 213);
1523
+
1524
+ /**
1525
+ * Describes the message nomos.kernel.v1.CustodyPlacementPolicy.
1526
+ * Use `create(CustodyPlacementPolicySchema)` to create a new message.
1527
+ */
1528
+ export const CustodyPlacementPolicySchema = /*@__PURE__*/
1529
+ messageDesc(file_nomos_kernel_v1_kernel, 214);
1530
+
1531
+ /**
1532
+ * Describes the message nomos.kernel.v1.CustodyPlacementExpectation.
1533
+ * Use `create(CustodyPlacementExpectationSchema)` to create a new message.
1534
+ */
1535
+ export const CustodyPlacementExpectationSchema = /*@__PURE__*/
1536
+ messageDesc(file_nomos_kernel_v1_kernel, 215);
1537
+
1538
+ /**
1539
+ * Describes the message nomos.kernel.v1.ReadCustodyPlacementRequest.
1540
+ * Use `create(ReadCustodyPlacementRequestSchema)` to create a new message.
1541
+ */
1542
+ export const ReadCustodyPlacementRequestSchema = /*@__PURE__*/
1543
+ messageDesc(file_nomos_kernel_v1_kernel, 216);
1544
+
1545
+ /**
1546
+ * Describes the message nomos.kernel.v1.InspectCustodyPlacementRequest.
1547
+ * Use `create(InspectCustodyPlacementRequestSchema)` to create a new message.
1548
+ */
1549
+ export const InspectCustodyPlacementRequestSchema = /*@__PURE__*/
1550
+ messageDesc(file_nomos_kernel_v1_kernel, 217);
1551
+
1552
+ /**
1553
+ * Describes the message nomos.kernel.v1.PlacementOffer.
1554
+ * Use `create(PlacementOfferSchema)` to create a new message.
1555
+ */
1556
+ export const PlacementOfferSchema = /*@__PURE__*/
1557
+ messageDesc(file_nomos_kernel_v1_kernel, 218);
1558
+
1559
+ /**
1560
+ * Describes the message nomos.kernel.v1.ResolveStatePositionRequest.
1561
+ * Use `create(ResolveStatePositionRequestSchema)` to create a new message.
1562
+ */
1563
+ export const ResolveStatePositionRequestSchema = /*@__PURE__*/
1564
+ messageDesc(file_nomos_kernel_v1_kernel, 219);
1565
+
1566
+ /**
1567
+ * Describes the message nomos.kernel.v1.CustodyResponse.
1568
+ * Use `create(CustodyResponseSchema)` to create a new message.
1569
+ */
1570
+ export const CustodyResponseSchema = /*@__PURE__*/
1571
+ messageDesc(file_nomos_kernel_v1_kernel, 220);
1572
+
1573
+ /**
1574
+ * Describes the message nomos.kernel.v1.PackDeltaResponse.
1575
+ * Use `create(PackDeltaResponseSchema)` to create a new message.
1576
+ */
1577
+ export const PackDeltaResponseSchema = /*@__PURE__*/
1578
+ messageDesc(file_nomos_kernel_v1_kernel, 221);
1579
+
1580
+ /**
1581
+ * Describes the message nomos.kernel.v1.ApplyPackResponse.
1582
+ * Use `create(ApplyPackResponseSchema)` to create a new message.
1583
+ */
1584
+ export const ApplyPackResponseSchema = /*@__PURE__*/
1585
+ messageDesc(file_nomos_kernel_v1_kernel, 222);
1586
+
1587
+ /**
1588
+ * Describes the message nomos.kernel.v1.PhysicalClosureCheck.
1589
+ * Use `create(PhysicalClosureCheckSchema)` to create a new message.
1590
+ */
1591
+ export const PhysicalClosureCheckSchema = /*@__PURE__*/
1592
+ messageDesc(file_nomos_kernel_v1_kernel, 223);
1593
+
1594
+ /**
1595
+ * Describes the message nomos.kernel.v1.RepoStatsResponse.
1596
+ * Use `create(RepoStatsResponseSchema)` to create a new message.
1597
+ */
1598
+ export const RepoStatsResponseSchema = /*@__PURE__*/
1599
+ messageDesc(file_nomos_kernel_v1_kernel, 224);
1600
+
1601
+ /**
1602
+ * Describes the message nomos.kernel.v1.IntentRecord.
1603
+ * Use `create(IntentRecordSchema)` to create a new message.
1604
+ */
1605
+ export const IntentRecordSchema = /*@__PURE__*/
1606
+ messageDesc(file_nomos_kernel_v1_kernel, 225);
1607
+
1608
+ /**
1609
+ * Describes the message nomos.kernel.v1.IntentsAboveResponse.
1610
+ * Use `create(IntentsAboveResponseSchema)` to create a new message.
1611
+ */
1612
+ export const IntentsAboveResponseSchema = /*@__PURE__*/
1613
+ messageDesc(file_nomos_kernel_v1_kernel, 226);
1614
+
1615
+ /**
1616
+ * Describes the message nomos.kernel.v1.HistorySummaryResponse.
1617
+ * Use `create(HistorySummaryResponseSchema)` to create a new message.
1618
+ */
1619
+ export const HistorySummaryResponseSchema = /*@__PURE__*/
1620
+ messageDesc(file_nomos_kernel_v1_kernel, 227);
1621
+
1622
+ /**
1623
+ * Describes the message nomos.kernel.v1.NominalCallIdentity.
1624
+ * Use `create(NominalCallIdentitySchema)` to create a new message.
1625
+ */
1626
+ export const NominalCallIdentitySchema = /*@__PURE__*/
1627
+ messageDesc(file_nomos_kernel_v1_kernel, 228);
1628
+
1629
+ /**
1630
+ * Describes the message nomos.kernel.v1.LifecycleInstallIdentity.
1631
+ * Use `create(LifecycleInstallIdentitySchema)` to create a new message.
1632
+ */
1633
+ export const LifecycleInstallIdentitySchema = /*@__PURE__*/
1634
+ messageDesc(file_nomos_kernel_v1_kernel, 229);
1635
+
1636
+ /**
1637
+ * Describes the message nomos.kernel.v1.WorkspaceResidencyRequirement.
1638
+ * Use `create(WorkspaceResidencyRequirementSchema)` to create a new message.
1639
+ */
1640
+ export const WorkspaceResidencyRequirementSchema = /*@__PURE__*/
1641
+ messageDesc(file_nomos_kernel_v1_kernel, 230);
1642
+
1643
+ /**
1644
+ * Describes the message nomos.kernel.v1.InspectChangeResponse.
1645
+ * Use `create(InspectChangeResponseSchema)` to create a new message.
1646
+ */
1647
+ export const InspectChangeResponseSchema = /*@__PURE__*/
1648
+ messageDesc(file_nomos_kernel_v1_kernel, 231);
1649
+
1650
+ /**
1651
+ * Describes the message nomos.kernel.v1.ResolveStatePositionResponse.
1652
+ * Use `create(ResolveStatePositionResponseSchema)` to create a new message.
1653
+ */
1654
+ export const ResolveStatePositionResponseSchema = /*@__PURE__*/
1655
+ messageDesc(file_nomos_kernel_v1_kernel, 232);
1656
+
1657
+ /**
1658
+ * Describes the message nomos.kernel.v1.EncodeRefusalVerdictResponse.
1659
+ * Use `create(EncodeRefusalVerdictResponseSchema)` to create a new message.
1660
+ */
1661
+ export const EncodeRefusalVerdictResponseSchema = /*@__PURE__*/
1662
+ messageDesc(file_nomos_kernel_v1_kernel, 233);
1663
+
1664
+ /**
1665
+ * Describes the message nomos.kernel.v1.InspectRefusalVerdictResponse.
1666
+ * Use `create(InspectRefusalVerdictResponseSchema)` to create a new message.
1667
+ */
1668
+ export const InspectRefusalVerdictResponseSchema = /*@__PURE__*/
1669
+ messageDesc(file_nomos_kernel_v1_kernel, 234);
1670
+
1671
+ /**
1672
+ * Describes the message nomos.kernel.v1.ProveCompactionEquivalenceResponse.
1673
+ * Use `create(ProveCompactionEquivalenceResponseSchema)` to create a new message.
1674
+ */
1675
+ export const ProveCompactionEquivalenceResponseSchema = /*@__PURE__*/
1676
+ messageDesc(file_nomos_kernel_v1_kernel, 235);
1677
+
1678
+ /**
1679
+ * Describes the message nomos.kernel.v1.ReadBlobResponse.
1680
+ * Use `create(ReadBlobResponseSchema)` to create a new message.
1681
+ */
1682
+ export const ReadBlobResponseSchema = /*@__PURE__*/
1683
+ messageDesc(file_nomos_kernel_v1_kernel, 236);
1684
+
1685
+ /**
1686
+ * Describes the message nomos.kernel.v1.ResolveRefResponse.
1687
+ * Use `create(ResolveRefResponseSchema)` to create a new message.
1688
+ */
1689
+ export const ResolveRefResponseSchema = /*@__PURE__*/
1690
+ messageDesc(file_nomos_kernel_v1_kernel, 237);
1691
+
1692
+ /**
1693
+ * Describes the message nomos.kernel.v1.RefRecord.
1694
+ * Use `create(RefRecordSchema)` to create a new message.
1695
+ */
1696
+ export const RefRecordSchema = /*@__PURE__*/
1697
+ messageDesc(file_nomos_kernel_v1_kernel, 238);
1698
+
1699
+ /**
1700
+ * Describes the message nomos.kernel.v1.ListRefsResponse.
1701
+ * Use `create(ListRefsResponseSchema)` to create a new message.
1702
+ */
1703
+ export const ListRefsResponseSchema = /*@__PURE__*/
1704
+ messageDesc(file_nomos_kernel_v1_kernel, 239);
1705
+
1706
+ /**
1707
+ * Describes the message nomos.kernel.v1.Acknowledged.
1708
+ * Use `create(AcknowledgedSchema)` to create a new message.
1709
+ */
1710
+ export const AcknowledgedSchema = /*@__PURE__*/
1711
+ messageDesc(file_nomos_kernel_v1_kernel, 240);
1712
+
1713
+ /**
1714
+ * Describes the message nomos.kernel.v1.WriteMetaCommitResponse.
1715
+ * Use `create(WriteMetaCommitResponseSchema)` to create a new message.
1716
+ */
1717
+ export const WriteMetaCommitResponseSchema = /*@__PURE__*/
1718
+ messageDesc(file_nomos_kernel_v1_kernel, 241);
1719
+
1720
+ /**
1721
+ * Describes the message nomos.kernel.v1.LawClosureInfoResponse.
1722
+ * Use `create(LawClosureInfoResponseSchema)` to create a new message.
1723
+ */
1724
+ export const LawClosureInfoResponseSchema = /*@__PURE__*/
1725
+ messageDesc(file_nomos_kernel_v1_kernel, 242);
1726
+
1727
+ /**
1728
+ * Describes the message nomos.kernel.v1.CheckpointExportResponse.
1729
+ * Use `create(CheckpointExportResponseSchema)` to create a new message.
1730
+ */
1731
+ export const CheckpointExportResponseSchema = /*@__PURE__*/
1732
+ messageDesc(file_nomos_kernel_v1_kernel, 243);
1733
+
1734
+ /**
1735
+ * Describes the message nomos.kernel.v1.CheckpointImportResponse.
1736
+ * Use `create(CheckpointImportResponseSchema)` to create a new message.
1737
+ */
1738
+ export const CheckpointImportResponseSchema = /*@__PURE__*/
1739
+ messageDesc(file_nomos_kernel_v1_kernel, 244);
1740
+
1741
+ /**
1742
+ * Describes the message nomos.kernel.v1.OpenGitStateResponse.
1743
+ * Use `create(OpenGitStateResponseSchema)` to create a new message.
1744
+ */
1745
+ export const OpenGitStateResponseSchema = /*@__PURE__*/
1746
+ messageDesc(file_nomos_kernel_v1_kernel, 245);
1747
+
1748
+ /**
1749
+ * Describes the message nomos.kernel.v1.AttachLocalFrontierResponse.
1750
+ * Use `create(AttachLocalFrontierResponseSchema)` to create a new message.
1751
+ */
1752
+ export const AttachLocalFrontierResponseSchema = /*@__PURE__*/
1753
+ messageDesc(file_nomos_kernel_v1_kernel, 246);
1754
+
1755
+ /**
1756
+ * Describes the message nomos.kernel.v1.ReleaseWorkspaceStateRequest.
1757
+ * Use `create(ReleaseWorkspaceStateRequestSchema)` to create a new message.
1758
+ */
1759
+ export const ReleaseWorkspaceStateRequestSchema = /*@__PURE__*/
1760
+ messageDesc(file_nomos_kernel_v1_kernel, 247);
1761
+
1762
+ /**
1763
+ * Describes the message nomos.kernel.v1.ReleaseWorkspaceStateResponse.
1764
+ * Use `create(ReleaseWorkspaceStateResponseSchema)` to create a new message.
1765
+ */
1766
+ export const ReleaseWorkspaceStateResponseSchema = /*@__PURE__*/
1767
+ messageDesc(file_nomos_kernel_v1_kernel, 248);
1768
+
1769
+ /**
1770
+ * Describes the message nomos.kernel.v1.ReadCustodyPlacementResponse.
1771
+ * Use `create(ReadCustodyPlacementResponseSchema)` to create a new message.
1772
+ */
1773
+ export const ReadCustodyPlacementResponseSchema = /*@__PURE__*/
1774
+ messageDesc(file_nomos_kernel_v1_kernel, 249);
1775
+
1776
+ /**
1777
+ * Describes the message nomos.kernel.v1.PlacementAdopted.
1778
+ * Use `create(PlacementAdoptedSchema)` to create a new message.
1779
+ */
1780
+ export const PlacementAdoptedSchema = /*@__PURE__*/
1781
+ messageDesc(file_nomos_kernel_v1_kernel, 250);
1782
+
1783
+ /**
1784
+ * Describes the message nomos.kernel.v1.InspectCustodyPlacementResponse.
1785
+ * Use `create(InspectCustodyPlacementResponseSchema)` to create a new message.
1786
+ */
1787
+ export const InspectCustodyPlacementResponseSchema = /*@__PURE__*/
1788
+ messageDesc(file_nomos_kernel_v1_kernel, 251);
1789
+
1790
+ /**
1791
+ * Describes the message nomos.kernel.v1.CapacityReserveResponse.
1792
+ * Use `create(CapacityReserveResponseSchema)` to create a new message.
1793
+ */
1794
+ export const CapacityReserveResponseSchema = /*@__PURE__*/
1795
+ messageDesc(file_nomos_kernel_v1_kernel, 252);
1796
+
1797
+ /**
1798
+ * Describes the message nomos.kernel.v1.RestoreMainSpans.
1799
+ * Use `create(RestoreMainSpansSchema)` to create a new message.
1800
+ */
1801
+ export const RestoreMainSpansSchema = /*@__PURE__*/
1802
+ messageDesc(file_nomos_kernel_v1_kernel, 253);
1803
+
1804
+ /**
1805
+ * Describes the message nomos.kernel.v1.RestoreMainResponse.
1806
+ * Use `create(RestoreMainResponseSchema)` to create a new message.
1807
+ */
1808
+ export const RestoreMainResponseSchema = /*@__PURE__*/
1809
+ messageDesc(file_nomos_kernel_v1_kernel, 254);
1810
+
1811
+ /**
1812
+ * Describes the message nomos.kernel.v1.NomosValue.
1813
+ * Use `create(NomosValueSchema)` to create a new message.
1814
+ */
1815
+ export const NomosValueSchema = /*@__PURE__*/
1816
+ messageDesc(file_nomos_kernel_v1_kernel, 255);
1817
+
1818
+ /**
1819
+ * Describes the message nomos.kernel.v1.Null.
1820
+ * Use `create(NullSchema)` to create a new message.
1821
+ */
1822
+ export const NullSchema = /*@__PURE__*/
1823
+ messageDesc(file_nomos_kernel_v1_kernel, 256);
1824
+
1825
+ /**
1826
+ * Describes the message nomos.kernel.v1.NomosList.
1827
+ * Use `create(NomosListSchema)` to create a new message.
1828
+ */
1829
+ export const NomosListSchema = /*@__PURE__*/
1830
+ messageDesc(file_nomos_kernel_v1_kernel, 257);
1831
+
1832
+ /**
1833
+ * Describes the message nomos.kernel.v1.NomosStruct.
1834
+ * Use `create(NomosStructSchema)` to create a new message.
1835
+ */
1836
+ export const NomosStructSchema = /*@__PURE__*/
1837
+ messageDesc(file_nomos_kernel_v1_kernel, 258);
1838
+
1839
+ /**
1840
+ * Describes the message nomos.kernel.v1.HistoryRequired.
1841
+ * Use `create(HistoryRequiredSchema)` to create a new message.
1842
+ */
1843
+ export const HistoryRequiredSchema = /*@__PURE__*/
1844
+ messageDesc(file_nomos_kernel_v1_kernel, 259);
1845
+
1846
+ /**
1847
+ * Describes the enum nomos.kernel.v1.BirthOutcomeStatus.
1848
+ */
1849
+ export const BirthOutcomeStatusSchema = /*@__PURE__*/
1850
+ enumDesc(file_nomos_kernel_v1_kernel, 0);
1851
+
1852
+ /**
1853
+ * @generated from enum nomos.kernel.v1.BirthOutcomeStatus
1854
+ */
1855
+ export const BirthOutcomeStatus = /*@__PURE__*/
1856
+ tsEnum(BirthOutcomeStatusSchema);
1857
+
1858
+ /**
1859
+ * Describes the enum nomos.kernel.v1.KernelRefusalCode.
1860
+ */
1861
+ export const KernelRefusalCodeSchema = /*@__PURE__*/
1862
+ enumDesc(file_nomos_kernel_v1_kernel, 1);
1863
+
1864
+ /**
1865
+ * This list mirrors nomos_executor::Reason. The Rust conversion is an exhaustive
1866
+ * match, so adding a new gate refusal cannot silently degrade to prose.
1867
+ *
1868
+ * @generated from enum nomos.kernel.v1.KernelRefusalCode
1869
+ */
1870
+ export const KernelRefusalCode = /*@__PURE__*/
1871
+ tsEnum(KernelRefusalCodeSchema);
1872
+
1873
+ /**
1874
+ * Describes the enum nomos.kernel.v1.InterfaceMemberKind.
1875
+ */
1876
+ export const InterfaceMemberKindSchema = /*@__PURE__*/
1877
+ enumDesc(file_nomos_kernel_v1_kernel, 2);
1878
+
1879
+ /**
1880
+ * VINTF-inspired compatibility algebra over Nomos's canonical OpenUSD law.
1881
+ * The application matrix is USDA; Protobuf carries only the closed request and
1882
+ * typed verdict across the kernel ABI.
1883
+ *
1884
+ * @generated from enum nomos.kernel.v1.InterfaceMemberKind
1885
+ */
1886
+ export const InterfaceMemberKind = /*@__PURE__*/
1887
+ tsEnum(InterfaceMemberKindSchema);
1888
+
1889
+ /**
1890
+ * Describes the enum nomos.kernel.v1.InterfaceCompatibilityStatus.
1891
+ */
1892
+ export const InterfaceCompatibilityStatusSchema = /*@__PURE__*/
1893
+ enumDesc(file_nomos_kernel_v1_kernel, 3);
1894
+
1895
+ /**
1896
+ * @generated from enum nomos.kernel.v1.InterfaceCompatibilityStatus
1897
+ */
1898
+ export const InterfaceCompatibilityStatus = /*@__PURE__*/
1899
+ tsEnum(InterfaceCompatibilityStatusSchema);
1900
+
1901
+ /**
1902
+ * Describes the enum nomos.kernel.v1.InterfaceCompatibilityReason.
1903
+ */
1904
+ export const InterfaceCompatibilityReasonSchema = /*@__PURE__*/
1905
+ enumDesc(file_nomos_kernel_v1_kernel, 4);
1906
+
1907
+ /**
1908
+ * @generated from enum nomos.kernel.v1.InterfaceCompatibilityReason
1909
+ */
1910
+ export const InterfaceCompatibilityReason = /*@__PURE__*/
1911
+ tsEnum(InterfaceCompatibilityReasonSchema);
1912
+
1913
+ /**
1914
+ * Describes the enum nomos.kernel.v1.MaintenancePhase.
1915
+ */
1916
+ export const MaintenancePhaseSchema = /*@__PURE__*/
1917
+ enumDesc(file_nomos_kernel_v1_kernel, 5);
1918
+
1919
+ /**
1920
+ * @generated from enum nomos.kernel.v1.MaintenancePhase
1921
+ */
1922
+ export const MaintenancePhase = /*@__PURE__*/
1923
+ tsEnum(MaintenancePhaseSchema);
1924
+
1925
+ /**
1926
+ * Describes the enum nomos.kernel.v1.VerifyChainWalk.
1927
+ */
1928
+ export const VerifyChainWalkSchema = /*@__PURE__*/
1929
+ enumDesc(file_nomos_kernel_v1_kernel, 6);
1930
+
1931
+ /**
1932
+ * @generated from enum nomos.kernel.v1.VerifyChainWalk
1933
+ */
1934
+ export const VerifyChainWalk = /*@__PURE__*/
1935
+ tsEnum(VerifyChainWalkSchema);
1936
+
1937
+ /**
1938
+ * Describes the enum nomos.kernel.v1.EffectExecutionPlacement.
1939
+ */
1940
+ export const EffectExecutionPlacementSchema = /*@__PURE__*/
1941
+ enumDesc(file_nomos_kernel_v1_kernel, 7);
1942
+
1943
+ /**
1944
+ * @generated from enum nomos.kernel.v1.EffectExecutionPlacement
1945
+ */
1946
+ export const EffectExecutionPlacement = /*@__PURE__*/
1947
+ tsEnum(EffectExecutionPlacementSchema);
1948
+
1949
+ /**
1950
+ * Describes the enum nomos.kernel.v1.EffectExecutionCardinality.
1951
+ */
1952
+ export const EffectExecutionCardinalitySchema = /*@__PURE__*/
1953
+ enumDesc(file_nomos_kernel_v1_kernel, 8);
1954
+
1955
+ /**
1956
+ * @generated from enum nomos.kernel.v1.EffectExecutionCardinality
1957
+ */
1958
+ export const EffectExecutionCardinality = /*@__PURE__*/
1959
+ tsEnum(EffectExecutionCardinalitySchema);
1960
+
1961
+ /**
1962
+ * Describes the enum nomos.kernel.v1.ModelLifecycleOperation.
1963
+ */
1964
+ export const ModelLifecycleOperationSchema = /*@__PURE__*/
1965
+ enumDesc(file_nomos_kernel_v1_kernel, 9);
1966
+
1967
+ /**
1968
+ * Exact framework lifecycle authoring. The candidate itself remains the opaque, content-addressed
1969
+ * `law_usdz` package below; the kernel derives its identity and dependency closure after opening it.
1970
+ * This intent exists so an installed controller can judge its successor using the controller's own
1971
+ * nominal field identities. A client must never manufacture candidate-schema USDA for that transition.
1972
+ *
1973
+ * @generated from enum nomos.kernel.v1.ModelLifecycleOperation
1974
+ */
1975
+ export const ModelLifecycleOperation = /*@__PURE__*/
1976
+ tsEnum(ModelLifecycleOperationSchema);
1977
+
1978
+ /**
1979
+ * Describes the enum nomos.kernel.v1.ChildWorkspaceLifecycleStatus.
1980
+ */
1981
+ export const ChildWorkspaceLifecycleStatusSchema = /*@__PURE__*/
1982
+ enumDesc(file_nomos_kernel_v1_kernel, 10);
1983
+
1984
+ /**
1985
+ * @generated from enum nomos.kernel.v1.ChildWorkspaceLifecycleStatus
1986
+ */
1987
+ export const ChildWorkspaceLifecycleStatus = /*@__PURE__*/
1988
+ tsEnum(ChildWorkspaceLifecycleStatusSchema);
1989
+
1990
+ /**
1991
+ * Describes the enum nomos.kernel.v1.DeclaredAuthenticationProviderKind.
1992
+ */
1993
+ export const DeclaredAuthenticationProviderKindSchema = /*@__PURE__*/
1994
+ enumDesc(file_nomos_kernel_v1_kernel, 11);
1995
+
1996
+ /**
1997
+ * @generated from enum nomos.kernel.v1.DeclaredAuthenticationProviderKind
1998
+ */
1999
+ export const DeclaredAuthenticationProviderKind = /*@__PURE__*/
2000
+ tsEnum(DeclaredAuthenticationProviderKindSchema);
2001
+
2002
+ /**
2003
+ * Describes the enum nomos.kernel.v1.DeclaredLawMemberKind.
2004
+ */
2005
+ export const DeclaredLawMemberKindSchema = /*@__PURE__*/
2006
+ enumDesc(file_nomos_kernel_v1_kernel, 12);
2007
+
2008
+ /**
2009
+ * @generated from enum nomos.kernel.v1.DeclaredLawMemberKind
2010
+ */
2011
+ export const DeclaredLawMemberKind = /*@__PURE__*/
2012
+ tsEnum(DeclaredLawMemberKindSchema);
2013
+
2014
+ /**
2015
+ * Describes the enum nomos.kernel.v1.ProviderTokenVerificationStatus.
2016
+ */
2017
+ export const ProviderTokenVerificationStatusSchema = /*@__PURE__*/
2018
+ enumDesc(file_nomos_kernel_v1_kernel, 13);
2019
+
2020
+ /**
2021
+ * @generated from enum nomos.kernel.v1.ProviderTokenVerificationStatus
2022
+ */
2023
+ export const ProviderTokenVerificationStatus = /*@__PURE__*/
2024
+ tsEnum(ProviderTokenVerificationStatusSchema);
2025
+
2026
+ /**
2027
+ * Describes the enum nomos.kernel.v1.DeviceSignerStatus.
2028
+ */
2029
+ export const DeviceSignerStatusSchema = /*@__PURE__*/
2030
+ enumDesc(file_nomos_kernel_v1_kernel, 14);
2031
+
2032
+ /**
2033
+ * A device credential is not the account. In particular, a revoked credential
2034
+ * requires replacement under the declared recovery policy, never re-enrolment
2035
+ * of the same key. UNSPECIFIED is an older kernel, not proof of absence.
2036
+ *
2037
+ * @generated from enum nomos.kernel.v1.DeviceSignerStatus
2038
+ */
2039
+ export const DeviceSignerStatus = /*@__PURE__*/
2040
+ tsEnum(DeviceSignerStatusSchema);
2041
+
2042
+ /**
2043
+ * Describes the enum nomos.kernel.v1.BirthEvidenceStatus.
2044
+ */
2045
+ export const BirthEvidenceStatusSchema = /*@__PURE__*/
2046
+ enumDesc(file_nomos_kernel_v1_kernel, 15);
2047
+
2048
+ /**
2049
+ * @generated from enum nomos.kernel.v1.BirthEvidenceStatus
2050
+ */
2051
+ export const BirthEvidenceStatus = /*@__PURE__*/
2052
+ tsEnum(BirthEvidenceStatusSchema);
2053
+
2054
+ /**
2055
+ * Describes the enum nomos.kernel.v1.QueryResultFormat.
2056
+ */
2057
+ export const QueryResultFormatSchema = /*@__PURE__*/
2058
+ enumDesc(file_nomos_kernel_v1_kernel, 16);
2059
+
2060
+ /**
2061
+ * @generated from enum nomos.kernel.v1.QueryResultFormat
2062
+ */
2063
+ export const QueryResultFormat = /*@__PURE__*/
2064
+ tsEnum(QueryResultFormatSchema);
2065
+
2066
+ /**
2067
+ * Describes the enum nomos.kernel.v1.QueryOperation.
2068
+ */
2069
+ export const QueryOperationSchema = /*@__PURE__*/
2070
+ enumDesc(file_nomos_kernel_v1_kernel, 17);
2071
+
2072
+ /**
2073
+ * @generated from enum nomos.kernel.v1.QueryOperation
2074
+ */
2075
+ export const QueryOperation = /*@__PURE__*/
2076
+ tsEnum(QueryOperationSchema);
2077
+
2078
+ /**
2079
+ * Describes the enum nomos.kernel.v1.ReadProjectionStorageKind.
2080
+ */
2081
+ export const ReadProjectionStorageKindSchema = /*@__PURE__*/
2082
+ enumDesc(file_nomos_kernel_v1_kernel, 18);
2083
+
2084
+ /**
2085
+ * @generated from enum nomos.kernel.v1.ReadProjectionStorageKind
2086
+ */
2087
+ export const ReadProjectionStorageKind = /*@__PURE__*/
2088
+ tsEnum(ReadProjectionStorageKindSchema);
2089
+
2090
+ /**
2091
+ * Describes the enum nomos.kernel.v1.ResidentComponentKind.
2092
+ */
2093
+ export const ResidentComponentKindSchema = /*@__PURE__*/
2094
+ enumDesc(file_nomos_kernel_v1_kernel, 19);
2095
+
2096
+ /**
2097
+ * @generated from enum nomos.kernel.v1.ResidentComponentKind
2098
+ */
2099
+ export const ResidentComponentKind = /*@__PURE__*/
2100
+ tsEnum(ResidentComponentKindSchema);
2101
+
2102
+ /**
2103
+ * Describes the enum nomos.kernel.v1.KernelLawCapability.
2104
+ */
2105
+ export const KernelLawCapabilitySchema = /*@__PURE__*/
2106
+ enumDesc(file_nomos_kernel_v1_kernel, 20);
2107
+
2108
+ /**
2109
+ * @generated from enum nomos.kernel.v1.KernelLawCapability
2110
+ */
2111
+ export const KernelLawCapability = /*@__PURE__*/
2112
+ tsEnum(KernelLawCapabilitySchema);
2113
+
2114
+ /**
2115
+ * Describes the enum nomos.kernel.v1.CheckpointCompression.
2116
+ */
2117
+ export const CheckpointCompressionSchema = /*@__PURE__*/
2118
+ enumDesc(file_nomos_kernel_v1_kernel, 21);
2119
+
2120
+ /**
2121
+ * @generated from enum nomos.kernel.v1.CheckpointCompression
2122
+ */
2123
+ export const CheckpointCompression = /*@__PURE__*/
2124
+ tsEnum(CheckpointCompressionSchema);
2125
+
2126
+ /**
2127
+ * Describes the enum nomos.kernel.v1.CheckpointVerificationPolicy.
2128
+ */
2129
+ export const CheckpointVerificationPolicySchema = /*@__PURE__*/
2130
+ enumDesc(file_nomos_kernel_v1_kernel, 22);
2131
+
2132
+ /**
2133
+ * @generated from enum nomos.kernel.v1.CheckpointVerificationPolicy
2134
+ */
2135
+ export const CheckpointVerificationPolicy = /*@__PURE__*/
2136
+ tsEnum(CheckpointVerificationPolicySchema);
2137
+
2138
+ /**
2139
+ * Describes the enum nomos.kernel.v1.CheckpointAssurance.
2140
+ */
2141
+ export const CheckpointAssuranceSchema = /*@__PURE__*/
2142
+ enumDesc(file_nomos_kernel_v1_kernel, 23);
2143
+
2144
+ /**
2145
+ * @generated from enum nomos.kernel.v1.CheckpointAssurance
2146
+ */
2147
+ export const CheckpointAssurance = /*@__PURE__*/
2148
+ tsEnum(CheckpointAssuranceSchema);
2149
+
2150
+ /**
2151
+ * Describes the enum nomos.kernel.v1.KernelResidencyIntent.
2152
+ */
2153
+ export const KernelResidencyIntentSchema = /*@__PURE__*/
2154
+ enumDesc(file_nomos_kernel_v1_kernel, 24);
2155
+
2156
+ /**
2157
+ * Peer-relative kernel-memory intent. This does not promise durable Git custody
2158
+ * or offline availability; CustodyRetentionIntent governs that separately.
2159
+ *
2160
+ * @generated from enum nomos.kernel.v1.KernelResidencyIntent
2161
+ */
2162
+ export const KernelResidencyIntent = /*@__PURE__*/
2163
+ tsEnum(KernelResidencyIntentSchema);
2164
+
2165
+ /**
2166
+ * Describes the enum nomos.kernel.v1.CustodyRetentionIntent.
2167
+ */
2168
+ export const CustodyRetentionIntentSchema = /*@__PURE__*/
2169
+ enumDesc(file_nomos_kernel_v1_kernel, 25);
2170
+
2171
+ /**
2172
+ * Peer-relative durable Git-custody intent, independent of whether the kernel
2173
+ * keeps the workspace open in memory.
2174
+ *
2175
+ * @generated from enum nomos.kernel.v1.CustodyRetentionIntent
2176
+ */
2177
+ export const CustodyRetentionIntent = /*@__PURE__*/
2178
+ tsEnum(CustodyRetentionIntentSchema);
2179
+
2180
+ /**
2181
+ * Describes the enum nomos.kernel.v1.IntentTransportRequirement.
2182
+ */
2183
+ export const IntentTransportRequirementSchema = /*@__PURE__*/
2184
+ enumDesc(file_nomos_kernel_v1_kernel, 26);
2185
+
2186
+ /**
2187
+ * A sealed change is self-contained and may take the low-latency offer lane. A commit-tree
2188
+ * requirement means the effect also introduced canonical custody (currently a typed USDA law
2189
+ * closure), so sync must carry the authenticated Git tree rather than stripping it to change.usda.
2190
+ * The kernel derives this from the commit-tree delta; hosts never infer it from domain/directive labels.
2191
+ *
2192
+ * @generated from enum nomos.kernel.v1.IntentTransportRequirement
2193
+ */
2194
+ export const IntentTransportRequirement = /*@__PURE__*/
2195
+ tsEnum(IntentTransportRequirementSchema);
2196
+
2197
+ /**
2198
+ * Describes the enum nomos.kernel.v1.LifecycleInstallPhase.
2199
+ */
2200
+ export const LifecycleInstallPhaseSchema = /*@__PURE__*/
2201
+ enumDesc(file_nomos_kernel_v1_kernel, 27);
2202
+
2203
+ /**
2204
+ * @generated from enum nomos.kernel.v1.LifecycleInstallPhase
2205
+ */
2206
+ export const LifecycleInstallPhase = /*@__PURE__*/
2207
+ tsEnum(LifecycleInstallPhaseSchema);
2208
+
2209
+ /**
2210
+ * The host and kernel share one unary protocol. WASI transports the encoded messages through
2211
+ * linear memory; native/cloud transports may expose the same messages through gRPC or Connect.
2212
+ * This schema is an ABI only. Signed law and custody remain canonical typed USDA.
2213
+ *
2214
+ * @generated from service nomos.kernel.v1.NomosKernelService
2215
+ */
2216
+ export const NomosKernelService = /*@__PURE__*/
2217
+ serviceDesc(file_nomos_kernel_v1_kernel, 0);