@githolon/runtime 0.119.11 → 0.119.12

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.
@@ -7758,7 +7758,7 @@
7758
7758
  var ReadMaintenanceCause = /* @__PURE__ */ tsEnum(ReadMaintenanceCauseSchema);
7759
7759
 
7760
7760
  // ../../adapter/proto/nomos/runtime/v2/correspondence_desk_pb.js
7761
- var file_nomos_runtime_v2_correspondence_desk = /* @__PURE__ */ fileDesc("Cipub21vcy9ydW50aW1lL3YyL2NvcnJlc3BvbmRlbmNlX2Rlc2sucHJvdG8SEG5vbW9zLnJ1bnRpbWUudjIi0AIKFVNoYXJlV29ya3NwYWNlUmVxdWVzdBIPCgdzdWJqZWN0GAEgASgJEhAKCHJlbGF0aW9uGAIgASgJEhoKEmFzc2VydGVyX3ByaW5jaXBhbBgDIAEoCRIOCgZvYmplY3QYBCABKAkSHAoPaG9tZV9sYXdfc2hhMjU2GAUgASgJSACIAQESGgoNYXV0aG9yX3NlY3JldBgGIAEoDEgBiAEBEh8KEmFzc2VydGVyX3dvcmtzcGFjZRgHIAEoCUgCiAEBEhgKC2F0dGVzdGVkX2F0GAggASgJSAOIAQESFwoKYXV0aF90b2tlbhgJIAEoDEgEiAEBQhIKEF9ob21lX2xhd19zaGEyNTZCEAoOX2F1dGhvcl9zZWNyZXRCFQoTX2Fzc2VydGVyX3dvcmtzcGFjZUIOCgxfYXR0ZXN0ZWRfYXRCDQoLX2F1dGhfdG9rZW4ikgEKFFNoYXJlV29ya3NwYWNlUmVzdWx0EjgKB291dGNvbWUYASABKA4yJy5ub21vcy5ydW50aW1lLnYyLlNoYXJlV29ya3NwYWNlT3V0Y29tZRITCgZzdGF0dXMYAiABKA1IAIgBARIUCgdtZXNzYWdlGAMgASgJSAGIAQFCCQoHX3N0YXR1c0IKCghfbWVzc2FnZSLKAQodUGFyZW50U2lnbmVyRW5yb2xsbWVudFJlcXVlc3QSDgoGcGFyZW50GAEgASgJEhEKCXByaW5jaXBhbBgCIAEoCRIXCgprZXlfc2hhMjU2GAMgASgJSACIAQESFwoKcHVibGljX2tleRgEIAEoDEgBiAEBEhcKCmF1dGhfdG9rZW4YBSABKAxIAogBARIOCgZyZW1vdGUYBiABKAhCDQoLX2tleV9zaGEyNTZCDQoLX3B1YmxpY19rZXlCDQoLX2F1dGhfdG9rZW4i1AEKFlBhcmVudFNpZ25lckVucm9sbG1lbnQSDgoGcGFyZW50GAEgASgJEhEKCXByaW5jaXBhbBgCIAEoCRISCgprZXlfc2hhMjU2GAMgASgJEg4KBm9iamVjdBgEIAEoCRIQCghyZWxhdGlvbhgFIAEoCRIQCghlbnJvbGxlZBgGIAEoCBIPCgdyZXZva2VkGAcgASgIEhkKDHZlcmlmaWVkX3ZpYRgIIAEoCUgAiAEBEhIKCmNoZWNrZWRfYXQYCSABKAlCDwoNX3ZlcmlmaWVkX3ZpYSLcAgojRW5zdXJlUGFyZW50U2lnbmVyRW5yb2xsbWVudFJlcXVlc3QSDgoGcGFyZW50GAEgASgJEhEKCXByaW5jaXBhbBgCIAEoCRIXCgpwdWJsaWNfa2V5GAMgASgMSACIAQESGgoNYXV0aG9yX3NlY3JldBgEIAEoDEgBiAEBEhMKBmRvbWFpbhgFIAEoCUgCiAEBEhYKCWRpcmVjdGl2ZRgGIAEoCUgDiAEBEhcKCmF1dGhfdG9rZW4YByABKAxIBIgBARIVCghpZF90b2tlbhgIIAEoDEgFiAEBEhkKDHZlcmlmaWVkX3ZpYRgJIAEoCUgGiAEBQg0KC19wdWJsaWNfa2V5QhAKDl9hdXRob3Jfc2VjcmV0QgkKB19kb21haW5CDAoKX2RpcmVjdGl2ZUINCgtfYXV0aF90b2tlbkILCglfaWRfdG9rZW5CDwoNX3ZlcmlmaWVkX3ZpYSLZAQoiRW5zdXJlUGFyZW50U2lnbmVyRW5yb2xsbWVudFJlc3VsdBIOCgZwYXJlbnQYASABKAkSEQoJcHJpbmNpcGFsGAIgASgJEhIKCmtleV9zaGEyNTYYAyABKAkSEAoIZW5yb2xsZWQYBCABKAgSEAoIcmVwYWlyZWQYBSABKAgSEwoGZG9tYWluGAYgASgJSACIAQESFgoJZGlyZWN0aXZlGAcgASgJSAGIAQESEgoKY2hlY2tlZF9hdBgIIAEoCUIJCgdfZG9tYWluQgwKCl9kaXJlY3RpdmUiHQobVmVyaWZ5V29ya3NwYWNlQ2hhaW5SZXF1ZXN0IrsBChpWZXJpZnlXb3Jrc3BhY2VDaGFpblJlc3VsdBINCgV2YWxpZBgBIAEoCBISCgVlcnJvchgCIAEoCUgAiAEBEhgKC3BsYW5zX3JlcnVuGAMgASgESAGIAQESOgoHaGlzdG9yeRgEIAEoCzIkLm5vbW9zLnJ1bnRpbWUudjIuVmVyaWZ5Q2hhaW5IaXN0b3J5SAKIAQFCCAoGX2Vycm9yQg4KDF9wbGFuc19yZXJ1bkIKCghfaGlzdG9yeSKHAQoSVmVyaWZ5Q2hhaW5IaXN0b3J5Eg0KBXN0YXRlGAEgASgJEg4KBmFuY2hvchgCIAEoCRIQCghib3VuZGFyeRgDIAMoCRIMCgR3YWxrGAQgASgJEh0KEHZlcmlmaWVkX2NvbW1pdHMYBSABKARIAIgBAUITChFfdmVyaWZpZWRfY29tbWl0cyJ/ChRTeW5jV29ya3NwYWNlUmVxdWVzdBINCgVhZG1pdBgCIAEoCBIRCgl3b3Jrc3BhY2UYAyABKAkSHwoScmVwbGFjZV9sb2NhbF9oZWFkGAQgASgJSACIAQFCFQoTX3JlcGxhY2VfbG9jYWxfaGVhZEoECAEQAlIHc2Vzc2lvbiKGCgoVU3luY1dvcmtzcGFjZVJlc3BvbnNlEhEKCXdvcmtzcGFjZRgBIAEoCRIaCg1wcmV2aW91c19oZWFkGAIgASgJSACIAQESGQoMY3VycmVudF9oZWFkGAMgASgJSAGIAQESEAoIYWRtaXR0ZWQYBCABKAQSDwoHcmVmdXNlZBgFIAEoBBIQCghkZWZlcnJlZBgGIAEoBBISCgpsb2NhbF9vbmx5GAcgASgIEg4KBnB1bGxlZBgIIAEoCBIQCghkaXZlcmdlZBgJIAEoCBIaChJyZWNvbm5lY3RfcmVxdWlyZWQYCiABKAgSEwoLc3RpbGxfYWhlYWQYCyABKAgSDwoHb2ZmbGluZRgMIAEoCBITCgtwdXNoX2ZhaWxlZBgNIAEoCBIdChVkaXJlY3Rfb2ZmZXJfZGVmZXJyZWQYDiABKAgSNQoOYmlydGhfb3V0Y29tZXMYDyADKAsyHS5ub21vcy5rZXJuZWwudjEuQmlydGhPdXRjb21lEhsKE2FkbWl0dGVkX2ludGVudF9pZHMYECADKAkSHAoUY29udmVyZ2VkX2ludGVudF9pZHMYESADKAkSQgoKcHVzaF9lcnJvchgSIAEoCzIpLm5vbW9zLnJ1bnRpbWUudjIuUnVudGltZVRyYW5zcG9ydEZhaWx1cmVIAogBARJHCg9kaXNjb3ZlcnlfZXJyb3IYEyABKAsyKS5ub21vcy5ydW50aW1lLnYyLlJ1bnRpbWVUcmFuc3BvcnRGYWlsdXJlSAOIAQESMwoHdGltaW5ncxgUIAEoCzIiLm5vbW9zLnJ1bnRpbWUudjIuU3luY1BoYXNlVGltaW5ncxJBCg1vZmZlcl9yZWNlaXB0GBUgASgLMiUubm9tb3MucnVudGltZS52Mi5DdXN0b2R5T2ZmZXJSZWNlaXB0SASIAQESOQoOcmVtb3RlX3JlZnVzYWwYFiABKAsyHC5ub21vcy5rZXJuZWwudjEuU3luY1JlZnVzYWxIBYgBARJHChRjdXN0b2R5X2Rpc2FncmVlbWVudBgXIAEoCzIkLm5vbW9zLmtlcm5lbC52MS5DdXN0b2R5RGlzYWdyZWVtZW50SAaIAQESGAoQY3VzdG9keV9yZXBsYWNlZBgYIAEoCBIVCg1tYWluX2FkdmFuY2VkGBkgASgIEkAKD3JlYm9ybl9yZW1vdGVseRgaIAEoCzIiLm5vbW9zLnJ1bnRpbWUudjIuV29ya3NwYWNlUmViaXJ0aEgHiAEBEkcKFHByZXNlcnZlZF9sb2NhbF9jb3B5GBsgASgLMiQubm9tb3MucnVudGltZS52Mi5QcmVzZXJ2ZWRMb2NhbENvcHlICIgBARIxCiRjdXN0b2RpYW5fd2FybWluZ19yZXRyeV9hZnRlcl9taWxsaXMYHCABKA1ICYgBAUIQCg5fcHJldmlvdXNfaGVhZEIPCg1fY3VycmVudF9oZWFkQg0KC19wdXNoX2Vycm9yQhIKEF9kaXNjb3ZlcnlfZXJyb3JCEAoOX29mZmVyX3JlY2VpcHRCEQoPX3JlbW90ZV9yZWZ1c2FsQhcKFV9jdXN0b2R5X2Rpc2FncmVlbWVudEISChBfcmVib3JuX3JlbW90ZWx5QhcKFV9wcmVzZXJ2ZWRfbG9jYWxfY29weUInCiVfY3VzdG9kaWFuX3dhcm1pbmdfcmV0cnlfYWZ0ZXJfbWlsbGlzIugBChNDdXN0b2R5T2ZmZXJSZWNlaXB0EhIKCnJlcXVlc3RfaWQYASABKAkSQwoJYWRtaXNzaW9uGAogASgLMi4ubm9tb3MucnVudGltZS52Mi5DdXN0b2R5T2ZmZXJBZG1pc3Npb25SZWNlaXB0SAASOAoHZmFpbHVyZRgLIAEoCzIlLm5vbW9zLnJ1bnRpbWUudjIuQ3VzdG9keU9mZmVyRmFpbHVyZUgAEjMKB2Jsb2NrZWQYDCABKAsyIC5ub21vcy5ydW50aW1lLnYyLlJ1bnRpbWVCbG9ja2VkSABCCQoHb3V0Y29tZSKGAgocQ3VzdG9keU9mZmVyQWRtaXNzaW9uUmVjZWlwdBIMCgRtYWluGAEgASgJEhgKC3NlYWxlZF9tYWluGAIgASgJSACIAQESOwoIc2Vzc2lvbnMYAyADKAsyKS5ub21vcy5ydW50aW1lLnYyLkN1c3RvZHlTZXNzaW9uQWRtaXNzaW9uEjUKDmJpcnRoX291dGNvbWVzGAQgAygLMh0ubm9tb3Mua2VybmVsLnYxLkJpcnRoT3V0Y29tZRI6Cgd0aW1pbmdzGAUgASgLMikubm9tb3MucnVudGltZS52Mi5DdXN0b2R5QWRtaXNzaW9uVGltaW5nc0IOCgxfc2VhbGVkX21haW4iswEKE0N1c3RvZHlPZmZlckZhaWx1cmUSDAoEY29kZRgBIAEoCRIPCgdtZXNzYWdlGAIgASgJEhEKCWNvbXBvbmVudBgDIAEoCRIWCgl3b3Jrc3BhY2UYBCABKAlIAIgBARITCgZkb21haW4YBSABKAlIAYgBARIWCglkaXJlY3RpdmUYBiABKAlIAogBAUIMCgpfd29ya3NwYWNlQgkKB19kb21haW5CDAoKX2RpcmVjdGl2ZSJdChdSdW50aW1lVHJhbnNwb3J0RmFpbHVyZRIQCghlbmRwb2ludBgBIAEoCRIOCgZzdGF0dXMYAiABKBESDwoHcmVmdXNlZBgDIAEoCBIPCgdtZXNzYWdlGAQgASgJIsUBChBTeW5jUGhhc2VUaW1pbmdzEhMKC3B1c2hfbWlsbGlzGAEgASgBEhQKDGFkbWl0X21pbGxpcxgCIAEoARIXCg9wcmVmZXRjaF9taWxsaXMYAyABKAESFwoPY29udmVyZ2VfbWlsbGlzGAQgASgBEhIKCnB1c2hfYnl0ZXMYBSABKAQSFQoNc2VydmVyX21pbGxpcxgGIAEoARIVCg1vZmZlcl9pbl9wdXNoGAcgASgIEhIKCnB1bGxfYnl0ZXMYCCABKAQiNAofUmVmcmVzaFJlcGxpY2FDcmVkZW50aWFsUmVxdWVzdBIRCgl3b3Jrc3BhY2UYASABKAkiiwEKDEdpdFJlYWRMZWFzZRIWCg5mb3JtYXRfdmVyc2lvbhgBIAEoDRIRCgl3b3Jrc3BhY2UYAiABKAkSDgoGcmVtb3RlGAMgASgJEg0KBXRva2VuGAQgASgJEhMKC3R0bF9zZWNvbmRzGAUgASgNEhwKFGV4cGlyZXNfdW5peF9zZWNvbmRzGAYgASgEIm4KD0dpdEZldGNoUmVxdWVzdBIPCgdzZXNzaW9uGAEgASgJEi0KBWxlYXNlGAIgASgLMh4ubm9tb3MucnVudGltZS52Mi5HaXRSZWFkTGVhc2USDAoEd2FudBgDIAEoCRINCgVoYXZlcxgEIAMoCSJqCg5HaXRGZXRjaFJlc3VsdBIdChBzdGFnZWRfcGFja19maWxlGAEgASgJSACIAQESDAoEaGVhZBgCIAEoCRIWCg5yZWNlaXZlZF9ieXRlcxgDIAEoBEITChFfc3RhZ2VkX3BhY2tfZmlsZSK2AQoeRGVsaXZlcldvcmtzcGFjZUVmZmVjdHNSZXF1ZXN0EhYKDnNvdXJjZV9zZXNzaW9uGAEgASgJEhgKEHRhcmdldF93b3Jrc3BhY2UYAiABKAkSGgoNc291cmNlX2NvbW1pdBgDIAEoCUgAiAEBEh4KEXNvdXJjZV9vZmZlcl9wYXRoGAQgASgJSAGIAQFCEAoOX3NvdXJjZV9jb21taXRCFAoSX3NvdXJjZV9vZmZlcl9wYXRoIlEKHERlbGl2ZXJIdHRwT2JsaWdhdGlvblJlcXVlc3QSFgoOc291cmNlX3Nlc3Npb24YASABKAkSGQoRc291cmNlX29mZmVyX3BhdGgYAiABKAkiuwEKF0h0dHBPYmxpZ2F0aW9uRGVsaXZlcmVkEhgKEHNvdXJjZV93b3Jrc3BhY2UYASABKAkSEQoJYXR0ZW1wdGVkGAIgASgIEhEKCWRlbGl2ZXJlZBgDIAEoCBIRCglyZXRyeWFibGUYBCABKAgSGwoTcHJlcGFyYXRpb25fcGVuZGluZxgFIAEoCBIcCg9yZXRyeV9hdF9taWxsaXMYBiABKARIAIgBAUISChBfcmV0cnlfYXRfbWlsbGlzIjYKHFJlY292ZXJDb3JyZXNwb25kZW5jZVJlcXVlc3QSFgoOc291cmNlX3Nlc3Npb24YASABKAkirAEKF0NvcnJlc3BvbmRlbmNlUmVjb3ZlcmVkEhgKEHNvdXJjZV93b3Jrc3BhY2UYASABKAkSDwoHcGVuZGluZxgCIAEoCBIgChNuZXh0X3dha2VfYXRfbWlsbGlzGAMgASgESACIAQESGgoNcmV0YWluZWRfaGVhZBgEIAEoCUgBiAEBQhYKFF9uZXh0X3dha2VfYXRfbWlsbGlzQhAKDl9yZXRhaW5lZF9oZWFkIvYCChlXb3Jrc3BhY2VFZmZlY3RzRGVsaXZlcmVkEhgKEHNvdXJjZV93b3Jrc3BhY2UYASABKAkSGAoQdGFyZ2V0X3dvcmtzcGFjZRgCIAEoCRIRCglhdHRlbXB0ZWQYAyABKAQSEQoJZGVsaXZlcmVkGAQgASgEEg8KB3JlZnVzZWQYBSABKAQSEQoJcmV0cnlhYmxlGAYgASgEEhwKD3JldHJ5X2F0X21pbGxpcxgHIAEoBEgAiAEBEhsKE3ByZXBhcmF0aW9uX3BlbmRpbmcYCCABKAgSGAoLdGFyZ2V0X2hlYWQYCSABKAlIAYgBARIfChdzb3VyY2Vfb3V0Y29tZV9yZWNvcmRlZBgKIAEoCBJBCgxyZXRyeV9yZWFzb24YCyABKAsyKy5ub21vcy5ydW50aW1lLnYyLkNvcnJlc3BvbmRlbmNlUmV0cnlSZWFzb25CEgoQX3JldHJ5X2F0X21pbGxpc0IOCgxfdGFyZ2V0X2hlYWQiOwoZQ29ycmVzcG9uZGVuY2VSZXRyeVJlYXNvbhIOCgZyZWFzb24YASABKAkSDgoGZGV0YWlsGAIgASgJIqwDChtSZW1vdGVHZW5lcmF0ZWRPZmZlclJlcXVlc3QSFgoOc291cmNlX3Nlc3Npb24YASABKAkSGAoQdGFyZ2V0X3dvcmtzcGFjZRgCIAEoCRINCgVhY3RvchgDIAEoCRIVCg1hdXRob3Jfc2VjcmV0GAQgASgMEhIKCmF1dGhfdG9rZW4YBSABKAwSLgoEY2FsbBgGIAEoCzIeLm5vbW9zLmtlcm5lbC52MS5EaXJlY3RpdmVDYWxsSAASQAoPbW9kZWxfbGlmZWN5Y2xlGAkgASgLMiUubm9tb3Mua2VybmVsLnYxLk1vZGVsTGlmZWN5Y2xlSW50ZW50SAASQQoRYmlydGhfY2VydGlmaWNhdGUYByABKAsyIS5ub21vcy5rZXJuZWwudjEuQmlydGhDZXJ0aWZpY2F0ZUgBiAEBEiEKFHJlcXVpcmVkX3RhcmdldF9oZWFkGAggASgJSAKIAQESEAoIbGF3X3VzZHoYCiABKAxCCAoGaW50ZW50QhQKEl9iaXJ0aF9jZXJ0aWZpY2F0ZUIXChVfcmVxdWlyZWRfdGFyZ2V0X2hlYWQiPwocUmVtb3RlR2VuZXJhdGVkT2ZmZXJBY2NlcHRlZBIRCgl3b3Jrc3BhY2UYASABKAkSDAoEaGVhZBgCIAEoCSLKAgoOUGVlckh0dHBFZmZlY3QSEQoJZWZmZWN0X2lkGAEgASgJEjAKBm1ldGhvZBgCIAEoDjIgLm5vbW9zLnJ1bnRpbWUudjIuUGVlckh0dHBNZXRob2QSCwoDdXJsGAMgASgJEhkKDGNvbnRlbnRfdHlwZRgEIAEoCUgAiAEBEgwKBGJvZHkYBSABKAwSGQoMYmVhcmVyX3Rva2VuGAYgASgMSAGIAQESEwoGYWNjZXB0GAcgASgJSAKIAQESGwoOdGltZW91dF9taWxsaXMYCCABKA1IA4gBARIcCg9pZGVtcG90ZW5jeV9rZXkYCSABKAlIBIgBAUIPCg1fY29udGVudF90eXBlQg8KDV9iZWFyZXJfdG9rZW5CCQoHX2FjY2VwdEIRCg9fdGltZW91dF9taWxsaXNCEgoQX2lkZW1wb3RlbmN5X2tleSJcChBQZWVySHR0cFJlc3BvbnNlEg4KBnN0YXR1cxgBIAEoDRIZCgxjb250ZW50X3R5cGUYAiABKAlIAIgBARIMCgRib2R5GAMgASgMQg8KDV9jb250ZW50X3R5cGUiXwoRUGVlckVmZmVjdEZhaWx1cmUSOQoGcmVhc29uGAEgASgOMikubm9tb3MucnVudGltZS52Mi5QZWVyRWZmZWN0RmFpbHVyZVJlYXNvbhIPCgdtZXNzYWdlGAIgASgJItAIChFQZWVyRWZmZWN0UmVjZWlwdBIRCgllZmZlY3RfaWQYASABKAkSNgoIcmVzcG9uc2UYCiABKAsyIi5ub21vcy5ydW50aW1lLnYyLlBlZXJIdHRwUmVzcG9uc2VIABI2CgdmYWlsdXJlGAsgASgLMiMubm9tb3MucnVudGltZS52Mi5QZWVyRWZmZWN0RmFpbHVyZUgAEjsKCWdpdF9mZXRjaBgMIAEoCzImLm5vbW9zLnJ1bnRpbWUudjIuUGVlckdpdEZldGNoUmVzcG9uc2VIABI5CghnaXRfcHVzaBgNIAEoCzIlLm5vbW9zLnJ1bnRpbWUudjIuUGVlckdpdFB1c2hSZXNwb25zZUgAEk0KFmJvcm5fY3VzdG9keV9wZXJzaXN0ZWQYDiABKAsyKy5ub21vcy5ydW50aW1lLnYyLlBlcnNpc3RCb3JuQ3VzdG9keVJlY2VpcHRIABJQChR3b3Jrc3BhY2VfZGlzY292ZXJlZBgPIAEoCzIwLm5vbW9zLmRpc2NvdmVyeS52MS5EaXNjb3ZlcmVkV29ya3NwYWNlUGxhY2VtZW50SAASQgoNbG9jYWxfY3VzdG9keRgQIAEoCzIpLm5vbW9zLnJ1bnRpbWUudjIuUGVlckxvY2FsQ3VzdG9keVJlY2VpcHRIABI/ChFmcm9udGllcl9yZXRhaW5lZBgRIAEoCzIiLm5vbW9zLnJ1bnRpbWUudjIuRnJvbnRpZXJSZXRhaW5lZEgAEiwKBXdva2VuGBIgASgLMhsubm9tb3MucnVudGltZS52Mi5QZWVyV29rZW5IABJJChRjcmVkZW50aWFsX3JlZnJlc2hlZBgTIAEoCzIpLm5vbW9zLnJ1bnRpbWUudjIuUGVlckNyZWRlbnRpYWxSZWZyZXNoZWRIABI/Cg9kZXZpY2VfaWRlbnRpdHkYFCABKAsyJC5ub21vcy5ydW50aW1lLnYyLlBlZXJEZXZpY2VJZGVudGl0eUgAEjcKC2xhd19wYWNrYWdlGBUgASgLMiAubm9tb3MucnVudGltZS52Mi5QZWVyTGF3UGFja2FnZUgAEk4KE2hpc3RvcnlfYWNxdWlzaXRpb24YFiABKAsyLy5ub21vcy5ydW50aW1lLnYyLlBlZXJIaXN0b3J5QWNxdWlzaXRpb25SZWNlaXB0SAASQQoQY29uc29sZV9lbnJvbGxlZBgXIAEoCzIlLm5vbW9zLnJ1bnRpbWUudjIuUGVlckNvbnNvbGVFbnJvbGxlZEgAElIKGWNvbnNvbGVfZW5yb2xtZW50X3JlZnVzZWQYGCABKAsyLS5ub21vcy5ydW50aW1lLnYyLlBlZXJDb25zb2xlRW5yb2xtZW50UmVmdXNlZEgAEjUKBnN0cmVhbRgZIAEoCzIjLm5vbW9zLnJ1bnRpbWUudjIuUGVlclN0cmVhbVJlY2VpcHRIAEIJCgdvdXRjb21lIqcCChJQZWVyR2l0RmV0Y2hFZmZlY3QSEQoJZWZmZWN0X2lkGAEgASgJEi0KBWxlYXNlGAIgASgLMh4ubm9tb3MucnVudGltZS52Mi5HaXRSZWFkTGVhc2USEQoEd2FudBgDIAEoCUgAiAEBEg0KBWhhdmVzGAQgAygJEhEKCXJlZmVyZW5jZRgFIAEoCRISCgVkZXB0aBgGIAEoDUgBiAEBEjMKCWFsb25nc2lkZRgHIAEoCzIgLm5vbW9zLnJ1bnRpbWUudjIuUGVlckh0dHBFZmZlY3QSPgoOYWxvbmdzaWRlX3JlZnMYCCABKAsyJi5ub21vcy5ydW50aW1lLnYyLlBlZXJHaXRSZWZzQWxvbmdzaWRlQgcKBV93YW50QggKBl9kZXB0aCLQAQoUUGVlckdpdEZldGNoUmVzcG9uc2USDAoEcGFjaxgBIAEoDBIMCgRoZWFkGAIgASgJEhYKDnJlY2VpdmVkX2J5dGVzGAMgASgEEg8KB3NoYWxsb3cYBCADKAkSNQoJYWxvbmdzaWRlGAUgASgLMiIubm9tb3MucnVudGltZS52Mi5QZWVySHR0cFJlc3BvbnNlEjwKDmFsb25nc2lkZV9yZWZzGAYgASgLMiQubm9tb3MucnVudGltZS52Mi5QZWVyR2l0UmVmc0ZldGNoZWQimAEKEVBlZXJHaXRQdXNoRWZmZWN0EhEKCWVmZmVjdF9pZBgBIAEoCRIOCgZyZW1vdGUYAiABKAkSGQoMYmVhcmVyX3Rva2VuGAMgASgMSACIAQESGAoQc2Vzc2lvbl9pZGVudGl0eRgEIAEoCRIMCgRoZWFkGAUgASgJEgwKBHBhY2sYBiABKAxCDwoNX2JlYXJlcl90b2tlbiJYChNQZWVyR2l0UHVzaFJlc3BvbnNlEhEKCXJlZmVyZW5jZRgBIAEoCRIMCgRoZWFkGAIgASgJEhIKCnNlbnRfYnl0ZXMYAyABKAQSDAoEbm9vcBgEIAEoCCItCgtSZXRhaW5lZFJlZhIRCglyZWZlcmVuY2UYASABKAkSCwoDb2lkGAIgASgJIocBChRSZXRhaW5Gcm9udGllckVmZmVjdBIRCgllZmZlY3RfaWQYASABKAkSEQoJd29ya3NwYWNlGAIgASgJEg4KBmJyYW5jaBgDIAEoCRIMCgRoZWFkGAQgASgJEisKBHJlZnMYBSADKAsyHS5ub21vcy5ydW50aW1lLnYyLlJldGFpbmVkUmVmIqIBChBGcm9udGllclJldGFpbmVkEhEKCXdvcmtzcGFjZRgBIAEoCRIOCgZicmFuY2gYAiABKAkSDAoEaGVhZBgDIAEoCRIQCghyZXRhaW5lZBgEIAEoCBITCgZkZXRhaWwYBSABKAlIAIgBARIrCgRyZWZzGAYgAygLMh0ubm9tb3MucnVudGltZS52Mi5SZXRhaW5lZFJlZkIJCgdfZGV0YWlsIl4KGFBlcnNpc3RCb3JuQ3VzdG9keUVmZmVjdBIRCgllZmZlY3RfaWQYASABKAkSLwoIY2hpbGRyZW4YAiADKAsyHS5ub21vcy5ydW50aW1lLnYyLkJvcm5DdXN0b2R5IpcBChRQZXJzaXN0ZWRCb3JuQ3VzdG9keRIRCgl3b3Jrc3BhY2UYASABKAkSDAoEaGVhZBgCIAEoCRIRCglwZXJzaXN0ZWQYAyABKAgSEwoGZGV0YWlsGAQgASgJSACIAQESKwoEcmVmcxgFIAMoCzIdLm5vbW9zLnJ1bnRpbWUudjIuUmV0YWluZWRSZWZCCQoHX2RldGFpbCJVChlQZXJzaXN0Qm9ybkN1c3RvZHlSZWNlaXB0EjgKCGNoaWxkcmVuGAEgAygLMiYubm9tb3MucnVudGltZS52Mi5QZXJzaXN0ZWRCb3JuQ3VzdG9keSLOBwoVQ29ycmVzcG9uZGVuY2VQZW5kaW5nEg8KB3dvcmtfaWQYASABKAkSMAoEaHR0cBgCIAEoCzIgLm5vbW9zLnJ1bnRpbWUudjIuUGVlckh0dHBFZmZlY3RIABI5CglnaXRfZmV0Y2gYAyABKAsyJC5ub21vcy5ydW50aW1lLnYyLlBlZXJHaXRGZXRjaEVmZmVjdEgAEjcKCGdpdF9wdXNoGAQgASgLMiMubm9tb3MucnVudGltZS52Mi5QZWVyR2l0UHVzaEVmZmVjdEgAEkoKFHBlcnNpc3RfYm9ybl9jdXN0b2R5GAUgASgLMioubm9tb3MucnVudGltZS52Mi5QZXJzaXN0Qm9ybkN1c3RvZHlFZmZlY3RIABJNChN3b3Jrc3BhY2VfZGlzY292ZXJ5GAYgASgLMi4ubm9tb3MucnVudGltZS52Mi5QZWVyV29ya3NwYWNlRGlzY292ZXJ5RWZmZWN0SAASQQoNbG9jYWxfY3VzdG9keRgHIAEoCzIoLm5vbW9zLnJ1bnRpbWUudjIuUGVlckxvY2FsQ3VzdG9keUVmZmVjdEgAEkEKD3JldGFpbl9mcm9udGllchgIIAEoCzImLm5vbW9zLnJ1bnRpbWUudjIuUmV0YWluRnJvbnRpZXJFZmZlY3RIABIwCgR3YWtlGAkgASgLMiAubm9tb3MucnVudGltZS52Mi5QZWVyV2FrZUVmZmVjdEgAEksKEnJlZnJlc2hfY3JlZGVudGlhbBgKIAEoCzItLm5vbW9zLnJ1bnRpbWUudjIuUGVlckNyZWRlbnRpYWxSZWZyZXNoRWZmZWN0SAASRQoPZGV2aWNlX2lkZW50aXR5GAsgASgLMioubm9tb3MucnVudGltZS52Mi5QZWVyRGV2aWNlSWRlbnRpdHlFZmZlY3RIABI9CgtsYXdfcGFja2FnZRgMIAEoCzImLm5vbW9zLnJ1bnRpbWUudjIuUGVlckxhd1BhY2thZ2VFZmZlY3RIABJNChNoaXN0b3J5X2FjcXVpc2l0aW9uGA0gASgLMi4ubm9tb3MucnVudGltZS52Mi5QZWVySGlzdG9yeUFjcXVpc2l0aW9uRWZmZWN0SAASSQoRY29uc29sZV9lbnJvbG1lbnQYDiABKAsyLC5ub21vcy5ydW50aW1lLnYyLlBlZXJDb25zb2xlRW5yb2xtZW50RWZmZWN0SAASNAoGc3RyZWFtGA8gASgLMiIubm9tb3MucnVudGltZS52Mi5QZWVyU3RyZWFtRWZmZWN0SABCCAoGZWZmZWN0IqABChpQZWVyQ29uc29sZUVucm9sbWVudEVmZmVjdBIRCgllZmZlY3RfaWQYASABKAkSFwoPZGV2aWNlX2lkZW50aXR5GAIgASgJEhIKCmNhcGFiaWxpdHkYAyABKAkSDwoHY29uc29sZRgEIAEoCRIOCgZ0ZW5hbnQYBSABKAkSDQoFc2NvcGUYBiABKAkSEgoKd29ya3NwYWNlcxgHIAMoCSKpAQoTUGVlckNvbnNvbGVFbnJvbGxlZBIRCglwcmluY2lwYWwYASABKAkSEAoIa2V5X2hhc2gYAiABKAkSPwoFaGVhZHMYAyADKAsyMC5ub21vcy5ydW50aW1lLnYyLlBlZXJDb25zb2xlRW5yb2xsZWQuSGVhZHNFbnRyeRosCgpIZWFkc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEicgobUGVlckNvbnNvbGVFbnJvbG1lbnRSZWZ1c2VkEg4KBnN0YXR1cxgBIAEoDRIPCgdtZXNzYWdlGAIgASgJEgwKBGNvZGUYAyABKAkSFgoJcmV0cnlhYmxlGAQgASgISACIAQFCDAoKX3JldHJ5YWJsZSJjChxQZWVySGlzdG9yeUFjcXVpc2l0aW9uRWZmZWN0EhEKCWVmZmVjdF9pZBgBIAEoCRIRCgl3b3Jrc3BhY2UYAiABKAkSHQoVY3JlZGVudGlhbF9jYXBhYmlsaXR5GAMgASgJIlUKHVBlZXJIaXN0b3J5QWNxdWlzaXRpb25SZWNlaXB0EhEKCXdvcmtzcGFjZRgBIAEoCRIPCgdjaGFuZ2VkGAIgASgIEhAKCGNvbXBsZXRlGAMgASgIIjkKDlBlZXJXYWtlRWZmZWN0EhEKCWVmZmVjdF9pZBgBIAEoCRIUCgxkZWxheV9taWxsaXMYAiABKA0iCwoJUGVlcldva2VuItYBChtQZWVyQ3JlZGVudGlhbFJlZnJlc2hFZmZlY3QSEQoJZWZmZWN0X2lkGAEgASgJEhIKCmNhcGFiaWxpdHkYAiABKAkSHQoQZGV2aWNlX2NoYWxsZW5nZRgDIAEoCUgAiAEBEhQKDGFsbG93X2NhY2hlZBgEIAEoCBInChpyZWplY3RlZF9hdXRoX3Rva2VuX3NoYTI1NhgFIAEoDEgBiAEBQhMKEV9kZXZpY2VfY2hhbGxlbmdlQh0KG19yZWplY3RlZF9hdXRoX3Rva2VuX3NoYTI1NiJvChdQZWVyQ3JlZGVudGlhbFJlZnJlc2hlZBIXCgphdXRoX3Rva2VuGAEgASgMSACIAQESGgoNYXV0aG9yX3NlY3JldBgCIAEoDEgBiAEBQg0KC19hdXRoX3Rva2VuQhAKDl9hdXRob3Jfc2VjcmV0IsYCChhQZWVyRGV2aWNlSWRlbnRpdHlFZmZlY3QSEQoJZWZmZWN0X2lkGAEgASgJEhAKCGlkZW50aXR5GAIgASgJEjgKBGxvYWQYAyABKAsyKC5ub21vcy5ydW50aW1lLnYyLlBlZXJEZXZpY2VJZGVudGl0eUxvYWRIABI4CgRzYXZlGAQgASgLMigubm9tb3MucnVudGltZS52Mi5QZWVyRGV2aWNlSWRlbnRpdHlTYXZlSAASQQoNbG9hZF9yZWNvdmVyeRgFIAEoCzIoLm5vbW9zLnJ1bnRpbWUudjIuUGVlckRldmljZVJlY292ZXJ5TG9hZEgAEkEKDXNhdmVfcmVjb3ZlcnkYBiABKAsyKC5ub21vcy5ydW50aW1lLnYyLlBlZXJEZXZpY2VSZWNvdmVyeVNhdmVIAEILCglvcGVyYXRpb24iGAoWUGVlckRldmljZUlkZW50aXR5TG9hZCIoChZQZWVyRGV2aWNlSWRlbnRpdHlTYXZlEg4KBnNlY3JldBgBIAEoDCIYChZQZWVyRGV2aWNlUmVjb3ZlcnlMb2FkIlAKFlBlZXJEZXZpY2VSZWNvdmVyeVNhdmUSNgoGcmVjb3JkGAEgASgLMiYubm9tb3MucnVudGltZS52Mi5EZXZpY2VSZWNvdmVyeVJlY29yZCKLAgoURGV2aWNlUmVjb3ZlcnlSZWNvcmQSDwoHdmVyc2lvbhgBIAEoDRITCgthcHBsaWNhdGlvbhgCIAEoCRIRCglwcmluY2lwYWwYAyABKAkSFwoPcHJldmlvdXNfc2VjcmV0GAQgASgMEhgKEGNhbmRpZGF0ZV9zZWNyZXQYBSABKAwSFwoPZW5yb2xsbWVudF9oZWFkGAYgASgJEhUKDXJlY292ZXJ5X2hlYWQYByABKAkSRAoRcGVuZGluZ19hZG1pc3Npb24YCCABKAsyKS5ub21vcy5ydW50aW1lLnYyLkRldmljZVJlY292ZXJ5QWRtaXNzaW9uEhEKCWNvbXBsZXRlZBgJIAEoCCKxAQoXRGV2aWNlUmVjb3ZlcnlBZG1pc3Npb24SPQoFc3RhZ2UYASABKA4yLi5ub21vcy5ydW50aW1lLnYyLkRldmljZVJlY292ZXJ5QWRtaXNzaW9uU3RhZ2USEgoKcmVxdWVzdF9pZBgCIAEoBBIRCgl3b3Jrc3BhY2UYAyABKAkSMAoGZWZmZWN0GAQgASgLMiAubm9tb3MucnVudGltZS52Mi5QZWVySHR0cEVmZmVjdCJuChJQZWVyRGV2aWNlSWRlbnRpdHkSEwoGc2VjcmV0GAEgASgMSACIAQESOAoIcmVjb3ZlcnkYAiABKAsyJi5ub21vcy5ydW50aW1lLnYyLkRldmljZVJlY292ZXJ5UmVjb3JkQgkKB19zZWNyZXQiPQoUUGVlckxhd1BhY2thZ2VFZmZlY3QSEQoJZWZmZWN0X2lkGAEgASgJEhIKCmxhd19zaGEyNTYYAiABKAkiIgoOUGVlckxhd1BhY2thZ2USEAoIbGF3X3VzZHoYASABKAwiRAocUGVlcldvcmtzcGFjZURpc2NvdmVyeUVmZmVjdBIRCgllZmZlY3RfaWQYASABKAkSEQoJd29ya3NwYWNlGAIgASgJIj4KFlBlZXJMb2NhbEN1c3RvZHlFZmZlY3QSEQoJZWZmZWN0X2lkGAEgASgJEhEKCXdvcmtzcGFjZRgCIAEoCSKDAQoXUGVlckxvY2FsQ3VzdG9keVJlY2VpcHQSEQoJd29ya3NwYWNlGAEgASgJEhEKCWF2YWlsYWJsZRgCIAEoCBI2CgdvcGVuaW5nGAMgASgLMiAubm9tb3MucnVudGltZS52Mi5DdXN0b2R5T3BlbmluZ0gAiAEBQgoKCF9vcGVuaW5nIi8KGkhpc3RvcnlBY3F1aXNpdGlvblJlY292ZXJ5EhEKCXdvcmtzcGFjZRgBIAEoCSLeAQodQ29udGludWVDb3JyZXNwb25kZW5jZVJlcXVlc3QSDwoHd29ya19pZBgBIAEoCRI0CgdyZWNlaXB0GAIgASgLMiMubm9tb3MucnVudGltZS52Mi5QZWVyRWZmZWN0UmVjZWlwdBJWChtyZWNvdmVyX2hpc3RvcnlfYWNxdWlzaXRpb24YAyABKAsyLC5ub21vcy5ydW50aW1lLnYyLkhpc3RvcnlBY3F1aXNpdGlvblJlY292ZXJ5SACIAQFCHgocX3JlY292ZXJfaGlzdG9yeV9hY3F1aXNpdGlvbiKGAgoUUmVtb3RlT2ZmZXJBZG1pc3Npb24SEQoJd29ya3NwYWNlGAEgASgJEgwKBG1haW4YAiABKAkSGAoLc2VhbGVkX21haW4YAyABKAlIAIgBARIvCgd2ZXJkaWN0GAQgASgLMh4ubm9tb3Mua2VybmVsLnYxLk9mZmVyUmVzcG9uc2USMwoMYm9ybl9jdXN0b2R5GAUgAygLMh0ubm9tb3MucnVudGltZS52Mi5Cb3JuQ3VzdG9keRITCgtyZXN1bHRfcGFjaxgGIAEoDBIYCgtyZXN1bHRfYmFzZRgHIAEoCUgBiAEBQg4KDF9zZWFsZWRfbWFpbkIOCgxfcmVzdWx0X2Jhc2UiSgoOQm9ybkN1c3RvZHlSZWYSKgoDcmVmGAEgASgLMh0ubm9tb3MucnVudGltZS52Mi5SZXRhaW5lZFJlZhIMCgRwYWNrGAIgASgMIoEBCgtCb3JuQ3VzdG9keRItCgVjaGlsZBgBIAEoCzIeLm5vbW9zLmtlcm5lbC52MS5Cb3JuV29ya3NwYWNlEgwKBHBhY2sYAiABKAwSNQoLcHVibGljYXRpb24YAyADKAsyIC5ub21vcy5ydW50aW1lLnYyLkJvcm5DdXN0b2R5UmVmIqoDChhDdXN0b2R5T2ZmZXJCYXRjaFJlcXVlc3QSGAoQcHJvdG9jb2xfdmVyc2lvbhgBIAEoDRISCgpyZXF1ZXN0X2lkGAIgASgJEjcKBmlubGluZRgDIAEoCzIlLm5vbW9zLnJ1bnRpbWUudjIuQ3VzdG9keUlubGluZU9mZmVyc0gAEkYKEXNlc3Npb25fY2FuZGlkYXRlGAQgASgLMikubm9tb3MucnVudGltZS52Mi5DdXN0b2R5U2Vzc2lvbkNhbmRpZGF0ZUgAEhYKCWJhc2VfaGVhZBgFIAEoCUgBiAEBEhUKDWV2aWRlbmNlX3BhY2sYBiABKAwSGgoNb2JzZXJ2ZWRfaGVhZBgHIAEoCUgCiAEBEhkKEWZhc3RfZm9yd2FyZF9vbmx5GAggASgIEhwKD2NvbnRpbnVlc19hZnRlchgJIAEoCUgDiAEBEh0KFWFja25vd2xlZGdlX2FkbWlzc2lvbhgKIAEoCEIICgZzb3VyY2VCDAoKX2Jhc2VfaGVhZEIQCg5fb2JzZXJ2ZWRfaGVhZEISChBfY29udGludWVzX2FmdGVyIu4ECg5MaXZlT2ZmZXJGcmFtZRIyCghmcm9udGllchgBIAEoCzIeLm5vbW9zLnJ1bnRpbWUudjIuTGl2ZUZyb250aWVySAASPAoGb2ZmZXJzGAIgASgLMioubm9tb3MucnVudGltZS52Mi5DdXN0b2R5T2ZmZXJCYXRjaFJlcXVlc3RIABI0CglhZG1pc3Npb24YAyABKAsyHy5ub21vcy5ydW50aW1lLnYyLkxpdmVBZG1pc3Npb25IABJFChJjaGVja3BvaW50X3JlcXVlc3QYBCABKAsyJy5ub21vcy5ydW50aW1lLnYyLkxpdmVDaGVja3BvaW50UmVxdWVzdEgAEkEKEGNoZWNrcG9pbnRfb2ZmZXIYBSABKAsyJS5ub21vcy5ydW50aW1lLnYyLkxpdmVDaGVja3BvaW50T2ZmZXJIABJBChBjaGVja3BvaW50X2NodW5rGAYgASgLMiUubm9tb3MucnVudGltZS52Mi5MaXZlQ2hlY2twb2ludENodW5rSAASPwoPaGlzdG9yeV9yZXF1ZXN0GAcgASgLMiQubm9tb3MucnVudGltZS52Mi5MaXZlSGlzdG9yeVJlcXVlc3RIABI3CgtyZWZfcmVxdWVzdBgIIAEoCzIgLm5vbW9zLnJ1bnRpbWUudjIuTGl2ZVJlZlJlcXVlc3RIABIqCgRwYWNrGAkgASgLMhoubm9tb3MucnVudGltZS52Mi5MaXZlUGFja0gAEjYKB3JlZnVzYWwYCiABKAsyIy5ub21vcy5ydW50aW1lLnYyLkxpdmVTdHJlYW1SZWZ1c2FsSABCCQoHbWVzc2FnZSJaCg1MaXZlQWRtaXNzaW9uEhIKCnJlcXVlc3RfaWQYASABKAkSNQoJYWRtaXNzaW9uGAIgASgLMiIubm9tb3MucnVudGltZS52Mi5DdXN0b2R5QWRtaXNzaW9uIt4BCgxMaXZlRnJvbnRpZXISDAoEaGVhZBgBIAEoCRIQCghyZXNwb25zZRgCIAEoCBISCgptYXhfb2ZmZXJzGAMgASgNEhwKFHJlbW91bnRfYWZ0ZXJfb2ZmZXJzGAQgASgNEhcKD291dGNvbWVzX2RpZ2VzdBgFIAEoCRIvCghvdXRjb21lcxgGIAMoCzIdLm5vbW9zLnJ1bnRpbWUudjIuUmV0YWluZWRSZWYSEwoGc2VhbGVkGAcgASgJSACIAQESEgoKaGVsZF90cmVlcxgIIAMoCUIJCgdfc2VhbGVkIpABChVMaXZlQ2hlY2twb2ludFJlcXVlc3QSEQoEaGVhZBgBIAEoCUgAiAEBEhQKB3BhY2tfaWQYAiABKAlIAYgBARIOCgZvZmZzZXQYAyABKAQSFQoNd2luZG93X2NodW5rcxgEIAEoDRISCgpoZWxkX3RyZWVzGAUgAygJQgcKBV9oZWFkQgoKCF9wYWNrX2lkIs4CChNMaXZlQ2hlY2twb2ludE9mZmVyEgwKBGhlYWQYASABKAkSDwoHcGFja19pZBgCIAEoCRINCgVieXRlcxgDIAEoBBITCgtjaHVua19ieXRlcxgEIAEoDRIPCgdzaGFsbG93GAYgAygJEi8KCG91dGNvbWVzGAcgAygLMh0ubm9tb3MucnVudGltZS52Mi5SZXRhaW5lZFJlZhIPCgdyZW1vdW50GAggASgIEhoKDW9mZmVyc19iZWhpbmQYCSABKARIAIgBARISCgpyZXF1ZXN0X2lkGAogASgJEhMKBnNlYWxlZBgLIAEoCUgBiAEBEgwKBG1haW4YDCABKAkSFQoNb21pdHRlZF90cmVlcxgNIAMoCRIUCgxzaGFyZWRfdHJlZXMYDiADKAlCEAoOX29mZmVyc19iZWhpbmRCCQoHX3NlYWxlZEoECAUQBiJZChNMaXZlQ2hlY2twb2ludENodW5rEg8KB3BhY2tfaWQYASABKAkSDgoGb2Zmc2V0GAIgASgEEg0KBWJ5dGVzGAMgASgMEhIKCnJlcXVlc3RfaWQYBCABKAkikgEKEkxpdmVIaXN0b3J5UmVxdWVzdBISCgpyZXF1ZXN0X2lkGAEgASgJEhAKCGJvdW5kYXJ5GAIgASgJEg0KBWRlcHRoGAMgASgNEhQKB3BhY2tfaWQYBCABKAlIAIgBARIOCgZvZmZzZXQYBSABKAQSFQoNd2luZG93X2NodW5rcxgGIAEoDUIKCghfcGFja19pZCJiCg5MaXZlUmVmUmVxdWVzdBISCgpyZXF1ZXN0X2lkGAEgASgJEhEKCXJlZmVyZW5jZRgCIAEoCRIRCgR3YW50GAMgASgJSACIAQESDQoFd2FudHMYBCADKAlCBwoFX3dhbnQinAEKCExpdmVQYWNrEhIKCnJlcXVlc3RfaWQYASABKAkSEQoJcmVmZXJlbmNlGAIgASgJEgwKBGhlYWQYAyABKAkSDAoEcGFjaxgEIAEoDBIPCgdzaGFsbG93GAUgAygJEgwKBGJhc2UYBiABKAkSDgoGb2ZmZXJzGAcgASgNEhMKBnNlYWxlZBgIIAEoCUgAiAEBQgkKB19zZWFsZWQifgoRTGl2ZVN0cmVhbVJlZnVzYWwSEgoKcmVxdWVzdF9pZBgBIAEoCRIMCgRjb2RlGAIgASgJEg8KB21lc3NhZ2UYAyABKAkSHwoScmV0cnlfYWZ0ZXJfbWlsbGlzGAQgASgNSACIAQFCFQoTX3JldHJ5X2FmdGVyX21pbGxpcyL7AQoRTGl2ZVN0cmVhbVJlcXVlc3QSMgoIZnJvbnRpZXIYASABKAsyHi5ub21vcy5ydW50aW1lLnYyLkxpdmVGcm9udGllckgAEj0KCmNoZWNrcG9pbnQYAiABKAsyJy5ub21vcy5ydW50aW1lLnYyLkxpdmVDaGVja3BvaW50UmVxdWVzdEgAEjcKB2hpc3RvcnkYAyABKAsyJC5ub21vcy5ydW50aW1lLnYyLkxpdmVIaXN0b3J5UmVxdWVzdEgAEi8KA3JlZhgEIAEoCzIgLm5vbW9zLnJ1bnRpbWUudjIuTGl2ZVJlZlJlcXVlc3RIAEIJCgdyZXF1ZXN0IkQKEExpdmVTdHJlYW1BbnN3ZXISMAoGZnJhbWVzGAEgAygLMiAubm9tb3MucnVudGltZS52Mi5MaXZlT2ZmZXJGcmFtZSLiAgoQUGVlclN0cmVhbUVmZmVjdBIRCgllZmZlY3RfaWQYASABKAkSEQoJd29ya3NwYWNlGAIgASgJEj0KCmNoZWNrcG9pbnQYAyABKAsyJy5ub21vcy5ydW50aW1lLnYyLkxpdmVDaGVja3BvaW50UmVxdWVzdEgAEjcKB2hpc3RvcnkYBCABKAsyJC5ub21vcy5ydW50aW1lLnYyLkxpdmVIaXN0b3J5UmVxdWVzdEgAEi8KA3JlZhgFIAEoCzIgLm5vbW9zLnJ1bnRpbWUudjIuTGl2ZVJlZlJlcXVlc3RIABIvCgVsZXZlbBgGIAEoCzIeLm5vbW9zLnJ1bnRpbWUudjIuTGl2ZUZyb250aWVySAASEgoKc3RhcnRfb25seRgHIAEoCBIQCgh1cHN0cmVhbRgIIAEoCRIdChVjcmVkZW50aWFsX2NhcGFiaWxpdHkYCSABKAlCCQoHcmVxdWVzdCLjAgoRUGVlclN0cmVhbVJlY2VpcHQSKgoEcGFjaxgBIAEoCzIaLm5vbW9zLnJ1bnRpbWUudjIuTGl2ZVBhY2tIABIPCgVsZXZlbBgCIAEoCUgAEjYKB3JlZnVzYWwYAyABKAsyIy5ub21vcy5ydW50aW1lLnYyLkxpdmVTdHJlYW1SZWZ1c2FsSAASLwoIb3V0Y29tZXMYBCADKAsyHS5ub21vcy5ydW50aW1lLnYyLlJldGFpbmVkUmVmEhYKDnJlY2VpdmVkX2J5dGVzGAUgASgEEhMKBnNlYWxlZBgGIAEoCUgBiAEBEh0KEHN0YWdlZF9wYWNrX2ZpbGUYByABKAlIAogBARIRCgRtYWluGAggASgJSAOIAQESFQoNb21pdHRlZF90cmVlcxgJIAMoCUIJCgdvdXRjb21lQgkKB19zZWFsZWRCEwoRX3N0YWdlZF9wYWNrX2ZpbGVCBwoFX21haW4iawoQUGVlclNvY2tldEVmZmVjdBIVCg1jb25uZWN0aW9uX2lkGAEgASgJEhIKCG9wZW5fdXJsGAIgASgJSAASDgoEc2VuZBgDIAEoDEgAEg8KBWNsb3NlGAQgASgISABCCwoJb3BlcmF0aW9uIqkBChFQZWVyU29ja2V0UmVjZWlwdBIVCg1jb25uZWN0aW9uX2lkGAEgASgJEhAKBm9wZW5lZBgCIAEoCEgAEhIKCHJlY2VpdmVkGAMgASgMSAASEAoGY2xvc2VkGAQgASgISAASNgoHY2xvc3VyZRgFIAEoCzIjLm5vbW9zLnJ1bnRpbWUudjIuUGVlclNvY2tldENsb3N1cmVIAEINCgtvYnNlcnZhdGlvbiKNAQoRUGVlclNvY2tldENsb3N1cmUSEQoEY29kZRgBIAEoDUgAiAEBEg4KBnJlYXNvbhgCIAEoCRINCgVjbGVhbhgDIAEoCBI9Cglpbml0aWF0b3IYBCABKA4yKi5ub21vcy5ydW50aW1lLnYyLlBlZXJTb2NrZXRDbG9zZUluaXRpYXRvckIHCgVfY29kZSLiAwoPTGl2ZUxpbmtDbG9zdXJlEhUKDWNvbm5lY3Rpb25faWQYASABKAkSEQoJd29ya3NwYWNlGAIgASgJEiwKBHJvbGUYAyABKA4yHi5ub21vcy5ydW50aW1lLnYyLkxpdmVMaW5rUm9sZRIzCgZzb2NrZXQYBCABKAsyIy5ub21vcy5ydW50aW1lLnYyLlBlZXJTb2NrZXRDbG9zdXJlEh0KFWNsb3NlZF9hdF91bml4X21pbGxpcxgFIAEoBBITCgtvcGVuX21pbGxpcxgGIAEoBBISCgphZG1pc3Npb25zGAcgASgNEiYKGWxhc3RfYWRtaXNzaW9uX3JlcXVlc3RfaWQYCCABKAlIAIgBARIfChJsYXN0X2FkbWl0dGVkX21haW4YCSABKAlIAYgBARIdChBsYXN0X3NlYWxlZF9tYWluGAogASgJSAKIAQESGgoNbGFzdF9mcm9udGllchgLIAEoCUgDiAEBEhoKEnVuYW5zd2VyZWRfYmF0Y2hlcxgMIAEoDUIcChpfbGFzdF9hZG1pc3Npb25fcmVxdWVzdF9pZEIVChNfbGFzdF9hZG1pdHRlZF9tYWluQhMKEV9sYXN0X3NlYWxlZF9tYWluQhAKDl9sYXN0X2Zyb250aWVyIi0KElBlZXJTb2NrZXRPYnNlcnZlZBIXCg9ydW5nX3dvcmtzcGFjZXMYASADKAkiPQoXRXhwb3J0TGl2ZU9mZmVyc1JlcXVlc3QSDwoHc2Vzc2lvbhgBIAEoCRIRCgliYXNlX2hlYWQYAiABKAkiTgoSQ3VzdG9keUludGVudE9mZmVyEg8KB3Nlc3Npb24YASABKAkSEgoKY29tbWl0X29pZBgCIAEoCRITCgtjaGFuZ2VfdXNkYRgDIAEoDCJLChNDdXN0b2R5SW5saW5lT2ZmZXJzEjQKBm9mZmVycxgBIAMoCzIkLm5vbW9zLnJ1bnRpbWUudjIuQ3VzdG9keUludGVudE9mZmVyIiwKF0N1c3RvZHlTZXNzaW9uQ2FuZGlkYXRlEhEKCXJlZmVyZW5jZRgBIAEoCSKCBAoQQ3VzdG9keUFkbWlzc2lvbhIMCgRtYWluGAEgASgJEhgKC3NlYWxlZF9tYWluGAIgASgJSACIAQESOwoIc2Vzc2lvbnMYAyADKAsyKS5ub21vcy5ydW50aW1lLnYyLkN1c3RvZHlTZXNzaW9uQWRtaXNzaW9uEjUKDmJpcnRoX291dGNvbWVzGAQgAygLMh0ubm9tb3Mua2VybmVsLnYxLkJpcnRoT3V0Y29tZRIzCgxib3JuX2N1c3RvZHkYBSADKAsyHS5ub21vcy5ydW50aW1lLnYyLkJvcm5DdXN0b2R5EhMKC3Jlc3VsdF9wYWNrGAYgASgMEhgKC3Jlc3VsdF9iYXNlGAcgASgJSAGIAQESOgoHdGltaW5ncxgIIAEoCzIpLm5vbW9zLnJ1bnRpbWUudjIuQ3VzdG9keUFkbWlzc2lvblRpbWluZ3MSHgoRcmVjb3ZlcnlfcmVxdWlyZWQYCSABKAhIAogBARJGChFsb2NhbF9tYWludGVuYW5jZRgKIAEoCzImLm5vbW9zLnJ1bnRpbWUudjIuTWFpbnRlbmFuY2VTY2hlZHVsZWRIA4gBAUIOCgxfc2VhbGVkX21haW5CDgoMX3Jlc3VsdF9iYXNlQhQKEl9yZWNvdmVyeV9yZXF1aXJlZEIUChJfbG9jYWxfbWFpbnRlbmFuY2UiZQoXQ3VzdG9keVNlc3Npb25BZG1pc3Npb24SDwoHc2Vzc2lvbhgBIAEoCRI5CgdpbnRlbnRzGAIgAygLMigubm9tb3MucnVudGltZS52Mi5DdXN0b2R5SW50ZW50QWRtaXNzaW9uItQDChZDdXN0b2R5SW50ZW50QWRtaXNzaW9uEhIKCmNvbW1pdF9vaWQYASABKAkSFgoJaW50ZW50X2lkGAIgASgJSAGIAQESOwoIYWRtaXR0ZWQYCiABKAsyJy5ub21vcy5ydW50aW1lLnYyLkN1c3RvZHlJbnRlbnRBZG1pdHRlZEgAEjkKB3NraXBwZWQYCyABKAsyJi5ub21vcy5ydW50aW1lLnYyLkN1c3RvZHlJbnRlbnRTa2lwcGVkSAASOQoHcmVmdXNlZBgMIAEoCzImLm5vbW9zLnJ1bnRpbWUudjIuQ3VzdG9keUludGVudFJlZnVzZWRIABJECg1kZWFkX2xldHRlcmVkGA0gASgLMisubm9tb3MucnVudGltZS52Mi5DdXN0b2R5SW50ZW50RGVhZExldHRlcmVkSAASOQoHYmxvY2tlZBgOIAEoCzImLm5vbW9zLnJ1bnRpbWUudjIuQ3VzdG9keUludGVudEJsb2NrZWRIABJBCgtxdWFyYW50aW5lZBgPIAEoCzIqLm5vbW9zLnJ1bnRpbWUudjIuQ3VzdG9keUludGVudFF1YXJhbnRpbmVkSABCCQoHb3V0Y29tZUIMCgpfaW50ZW50X2lkIpABChVDdXN0b2R5SW50ZW50QWRtaXR0ZWQSDAoEaGVhZBgBIAEoCRIzCgdjcmVhdGVkGAIgAygLMiIubm9tb3Mua2VybmVsLnYxLk9mZmVyQWdncmVnYXRlUmVmEjQKCGFmZmVjdGVkGAMgAygLMiIubm9tb3Mua2VybmVsLnYxLk9mZmVyQWdncmVnYXRlUmVmIi8KFEN1c3RvZHlJbnRlbnRTa2lwcGVkEhcKD2FscmVhZHlfb25fbWFpbhgBIAEoCCKaAQoUQ3VzdG9keUludGVudFJlZnVzZWQSDwoHbWVzc2FnZRgBIAEoCRIRCgRoaW50GAMgASgJSACIAQESNAoHcmVmdXNhbBgEIAEoCzIeLm5vbW9zLmtlcm5lbC52MS5LZXJuZWxSZWZ1c2FsSAGIAQFCBwoFX2hpbnRCCgoIX3JlZnVzYWxKBAgCEANSDWRlYWRfbGV0dGVyZWQifgoZQ3VzdG9keUludGVudERlYWRMZXR0ZXJlZBIPCgdtZXNzYWdlGAEgASgJEhEKBGhpbnQYAiABKAlIAIgBARIeChFjdXN0b2R5X3JlZmVyZW5jZRgDIAEoCUgBiAEBQgcKBV9oaW50QhQKEl9jdXN0b2R5X3JlZmVyZW5jZSImChRDdXN0b2R5SW50ZW50QmxvY2tlZBIOCgZkZXRhaWwYASABKAkilQEKGEN1c3RvZHlJbnRlbnRRdWFyYW50aW5lZBIOCgZyZWFzb24YASABKAkSGQoRYXV0aG9yZWRfbGF3X2hhc2gYAiABKAkSGAoQY3VycmVudF9sYXdfaGFzaBgDIAEoCRIeChFjdXN0b2R5X3JlZmVyZW5jZRgEIAEoCUgAiAEBQhQKEl9jdXN0b2R5X3JlZmVyZW5jZSLtAQoXQ3VzdG9keUFkbWlzc2lvblRpbWluZ3MSFAoMdG90YWxfbWlsbGlzGAEgASgBEhMKC3NjYW5fbWlsbGlzGAIgASgBEhQKDGZldGNoX21pbGxpcxgDIAEoARITCgtzZWFsX21pbGxpcxgEIAEoARIYChBnYXRlX2ZvbGRfbWlsbGlzGAUgASgBEhQKDGludGVudF9jb3VudBgGIAEoDRIVCg1zZXNzaW9uX2NvdW50GAcgASgNEjUKBXNwYW5zGAggAygLMiYubm9tb3MucnVudGltZS52Mi5DdXN0b2R5QWRtaXNzaW9uU3BhbiKXAQoUQ3VzdG9keUFkbWlzc2lvblNwYW4SCgoCaWQYASABKAkSDQoFdHJhY2sYAiABKAkSDAoEbmFtZRgDIAEoCRIMCgRraW5kGAQgASgJEg0KBWRlcHRoGAUgASgNEhsKE3N0YXJ0ZWRfdW5peF9taWxsaXMYBiABKAESHAoUZmluaXNoZWRfdW5peF9taWxsaXMYByABKAEiXQoXV29ya3NwYWNlRWZmZWN0RGVmZXJyZWQSGAoQdGFyZ2V0X3dvcmtzcGFjZRgBIAEoCRIaChJyZXRyeV9hZnRlcl9taWxsaXMYAiABKAQSDAoEaGVsZBgDIAEoBCL6AQoNT3V0Ym94U3VtbWFyeRIRCgl3b3Jrc3BhY2UYASABKAkSDwoHZW50cmllcxgCIAEoBBI0Cgd0YXJnZXRzGAMgAygLMiMubm9tb3MucnVudGltZS52Mi5PdXRib3hUYXJnZXRDb3VudBIfChJuZXh0X2R1ZV9hdF9taWxsaXMYBCABKARIAIgBARIUCgx3b3JrX3BlbmRpbmcYBSABKAgSEAoIcmVzaWRlbnQYBiABKAgSFQoNZW50cmllc190b3RhbBgHIAEoDRIYChBlbnRyaWVzX3ByZXBhcmVkGAggASgNQhUKE19uZXh0X2R1ZV9hdF9taWxsaXMiPgoRT3V0Ym94VGFyZ2V0Q291bnQSGAoQdGFyZ2V0X3dvcmtzcGFjZRgBIAEoCRIPCgdlbnRyaWVzGAIgASgEIkMKFFBlZXJHaXRSZWZzQWxvbmdzaWRlEg4KBnByZWZpeBgBIAEoCRIMCgRoZWxkGAIgAygJEg0KBWxpbWl0GAMgASgNImEKElBlZXJHaXRSZWZzRmV0Y2hlZBIrCgRyZWZzGAEgAygLMh0ubm9tb3MucnVudGltZS52Mi5SZXRhaW5lZFJlZhIMCgRwYWNrGAIgASgMEhAKCGRlZmVycmVkGAMgASgNKrwBChVTaGFyZVdvcmtzcGFjZU91dGNvbWUSJwojU0hBUkVfV09SS1NQQUNFX09VVENPTUVfVU5TUEVDSUZJRUQQABIlCiFTSEFSRV9XT1JLU1BBQ0VfT1VUQ09NRV9ERUxJVkVSRUQQARIuCipTSEFSRV9XT1JLU1BBQ0VfT1VUQ09NRV9BV0FJVElOR19SRUNJUElFTlQQAhIjCh9TSEFSRV9XT1JLU1BBQ0VfT1VUQ09NRV9SRUZVU0VEEAMqZwoOUGVlckh0dHBNZXRob2QSIAocUEVFUl9IVFRQX01FVEhPRF9VTlNQRUNJRklFRBAAEhgKFFBFRVJfSFRUUF9NRVRIT0RfR0VUEAESGQoVUEVFUl9IVFRQX01FVEhPRF9QT1NUEAIqvwEKF1BlZXJFZmZlY3RGYWlsdXJlUmVhc29uEioKJlBFRVJfRUZGRUNUX0ZBSUxVUkVfUkVBU09OX1VOU1BFQ0lGSUVEEAASJgoiUEVFUl9FRkZFQ1RfRkFJTFVSRV9SRUFTT05fT0ZGTElORRABEiYKIlBFRVJfRUZGRUNUX0ZBSUxVUkVfUkVBU09OX1RJTUVPVVQQAhIoCiRQRUVSX0VGRkVDVF9GQUlMVVJFX1JFQVNPTl9UUkFOU1BPUlQQAyqtAQocRGV2aWNlUmVjb3ZlcnlBZG1pc3Npb25TdGFnZRIvCitERVZJQ0VfUkVDT1ZFUllfQURNSVNTSU9OX1NUQUdFX1VOU1BFQ0lGSUVEEAASLgoqREVWSUNFX1JFQ09WRVJZX0FETUlTU0lPTl9TVEFHRV9FTlJPTExNRU5UEAESLAooREVWSUNFX1JFQ09WRVJZX0FETUlTU0lPTl9TVEFHRV9SRUNPVkVSWRACKr8BChhQZWVyU29ja2V0Q2xvc2VJbml0aWF0b3ISKwonUEVFUl9TT0NLRVRfQ0xPU0VfSU5JVElBVE9SX1VOU1BFQ0lGSUVEEAASJwojUEVFUl9TT0NLRVRfQ0xPU0VfSU5JVElBVE9SX1JVTlRJTUUQARIlCiFQRUVSX1NPQ0tFVF9DTE9TRV9JTklUSUFUT1JfU0hFTEwQAhImCiJQRUVSX1NPQ0tFVF9DTE9TRV9JTklUSUFUT1JfUkVNT1RFEAMqYQoMTGl2ZUxpbmtSb2xlEh4KGkxJVkVfTElOS19ST0xFX1VOU1BFQ0lGSUVEEAASFwoTTElWRV9MSU5LX1JPTEVfUEVFUhABEhgKFExJVkVfTElOS19ST0xFX1JFTEFZEAJiBnByb3RvMw", [file_nomos_kernel_v1_kernel, file_nomos_runtime_v2_placement_desk, file_nomos_discovery_v1_workspace_placement, file_nomos_runtime_v2_custody_desk, file_nomos_runtime_v2_maintenance_desk]);
7761
+ var file_nomos_runtime_v2_correspondence_desk = /* @__PURE__ */ fileDesc("Cipub21vcy9ydW50aW1lL3YyL2NvcnJlc3BvbmRlbmNlX2Rlc2sucHJvdG8SEG5vbW9zLnJ1bnRpbWUudjIi0AIKFVNoYXJlV29ya3NwYWNlUmVxdWVzdBIPCgdzdWJqZWN0GAEgASgJEhAKCHJlbGF0aW9uGAIgASgJEhoKEmFzc2VydGVyX3ByaW5jaXBhbBgDIAEoCRIOCgZvYmplY3QYBCABKAkSHAoPaG9tZV9sYXdfc2hhMjU2GAUgASgJSACIAQESGgoNYXV0aG9yX3NlY3JldBgGIAEoDEgBiAEBEh8KEmFzc2VydGVyX3dvcmtzcGFjZRgHIAEoCUgCiAEBEhgKC2F0dGVzdGVkX2F0GAggASgJSAOIAQESFwoKYXV0aF90b2tlbhgJIAEoDEgEiAEBQhIKEF9ob21lX2xhd19zaGEyNTZCEAoOX2F1dGhvcl9zZWNyZXRCFQoTX2Fzc2VydGVyX3dvcmtzcGFjZUIOCgxfYXR0ZXN0ZWRfYXRCDQoLX2F1dGhfdG9rZW4ikgEKFFNoYXJlV29ya3NwYWNlUmVzdWx0EjgKB291dGNvbWUYASABKA4yJy5ub21vcy5ydW50aW1lLnYyLlNoYXJlV29ya3NwYWNlT3V0Y29tZRITCgZzdGF0dXMYAiABKA1IAIgBARIUCgdtZXNzYWdlGAMgASgJSAGIAQFCCQoHX3N0YXR1c0IKCghfbWVzc2FnZSLKAQodUGFyZW50U2lnbmVyRW5yb2xsbWVudFJlcXVlc3QSDgoGcGFyZW50GAEgASgJEhEKCXByaW5jaXBhbBgCIAEoCRIXCgprZXlfc2hhMjU2GAMgASgJSACIAQESFwoKcHVibGljX2tleRgEIAEoDEgBiAEBEhcKCmF1dGhfdG9rZW4YBSABKAxIAogBARIOCgZyZW1vdGUYBiABKAhCDQoLX2tleV9zaGEyNTZCDQoLX3B1YmxpY19rZXlCDQoLX2F1dGhfdG9rZW4i1AEKFlBhcmVudFNpZ25lckVucm9sbG1lbnQSDgoGcGFyZW50GAEgASgJEhEKCXByaW5jaXBhbBgCIAEoCRISCgprZXlfc2hhMjU2GAMgASgJEg4KBm9iamVjdBgEIAEoCRIQCghyZWxhdGlvbhgFIAEoCRIQCghlbnJvbGxlZBgGIAEoCBIPCgdyZXZva2VkGAcgASgIEhkKDHZlcmlmaWVkX3ZpYRgIIAEoCUgAiAEBEhIKCmNoZWNrZWRfYXQYCSABKAlCDwoNX3ZlcmlmaWVkX3ZpYSLcAgojRW5zdXJlUGFyZW50U2lnbmVyRW5yb2xsbWVudFJlcXVlc3QSDgoGcGFyZW50GAEgASgJEhEKCXByaW5jaXBhbBgCIAEoCRIXCgpwdWJsaWNfa2V5GAMgASgMSACIAQESGgoNYXV0aG9yX3NlY3JldBgEIAEoDEgBiAEBEhMKBmRvbWFpbhgFIAEoCUgCiAEBEhYKCWRpcmVjdGl2ZRgGIAEoCUgDiAEBEhcKCmF1dGhfdG9rZW4YByABKAxIBIgBARIVCghpZF90b2tlbhgIIAEoDEgFiAEBEhkKDHZlcmlmaWVkX3ZpYRgJIAEoCUgGiAEBQg0KC19wdWJsaWNfa2V5QhAKDl9hdXRob3Jfc2VjcmV0QgkKB19kb21haW5CDAoKX2RpcmVjdGl2ZUINCgtfYXV0aF90b2tlbkILCglfaWRfdG9rZW5CDwoNX3ZlcmlmaWVkX3ZpYSLZAQoiRW5zdXJlUGFyZW50U2lnbmVyRW5yb2xsbWVudFJlc3VsdBIOCgZwYXJlbnQYASABKAkSEQoJcHJpbmNpcGFsGAIgASgJEhIKCmtleV9zaGEyNTYYAyABKAkSEAoIZW5yb2xsZWQYBCABKAgSEAoIcmVwYWlyZWQYBSABKAgSEwoGZG9tYWluGAYgASgJSACIAQESFgoJZGlyZWN0aXZlGAcgASgJSAGIAQESEgoKY2hlY2tlZF9hdBgIIAEoCUIJCgdfZG9tYWluQgwKCl9kaXJlY3RpdmUiHQobVmVyaWZ5V29ya3NwYWNlQ2hhaW5SZXF1ZXN0IrsBChpWZXJpZnlXb3Jrc3BhY2VDaGFpblJlc3VsdBINCgV2YWxpZBgBIAEoCBISCgVlcnJvchgCIAEoCUgAiAEBEhgKC3BsYW5zX3JlcnVuGAMgASgESAGIAQESOgoHaGlzdG9yeRgEIAEoCzIkLm5vbW9zLnJ1bnRpbWUudjIuVmVyaWZ5Q2hhaW5IaXN0b3J5SAKIAQFCCAoGX2Vycm9yQg4KDF9wbGFuc19yZXJ1bkIKCghfaGlzdG9yeSKHAQoSVmVyaWZ5Q2hhaW5IaXN0b3J5Eg0KBXN0YXRlGAEgASgJEg4KBmFuY2hvchgCIAEoCRIQCghib3VuZGFyeRgDIAMoCRIMCgR3YWxrGAQgASgJEh0KEHZlcmlmaWVkX2NvbW1pdHMYBSABKARIAIgBAUITChFfdmVyaWZpZWRfY29tbWl0cyJ/ChRTeW5jV29ya3NwYWNlUmVxdWVzdBINCgVhZG1pdBgCIAEoCBIRCgl3b3Jrc3BhY2UYAyABKAkSHwoScmVwbGFjZV9sb2NhbF9oZWFkGAQgASgJSACIAQFCFQoTX3JlcGxhY2VfbG9jYWxfaGVhZEoECAEQAlIHc2Vzc2lvbiKGCgoVU3luY1dvcmtzcGFjZVJlc3BvbnNlEhEKCXdvcmtzcGFjZRgBIAEoCRIaCg1wcmV2aW91c19oZWFkGAIgASgJSACIAQESGQoMY3VycmVudF9oZWFkGAMgASgJSAGIAQESEAoIYWRtaXR0ZWQYBCABKAQSDwoHcmVmdXNlZBgFIAEoBBIQCghkZWZlcnJlZBgGIAEoBBISCgpsb2NhbF9vbmx5GAcgASgIEg4KBnB1bGxlZBgIIAEoCBIQCghkaXZlcmdlZBgJIAEoCBIaChJyZWNvbm5lY3RfcmVxdWlyZWQYCiABKAgSEwoLc3RpbGxfYWhlYWQYCyABKAgSDwoHb2ZmbGluZRgMIAEoCBITCgtwdXNoX2ZhaWxlZBgNIAEoCBIdChVkaXJlY3Rfb2ZmZXJfZGVmZXJyZWQYDiABKAgSNQoOYmlydGhfb3V0Y29tZXMYDyADKAsyHS5ub21vcy5rZXJuZWwudjEuQmlydGhPdXRjb21lEhsKE2FkbWl0dGVkX2ludGVudF9pZHMYECADKAkSHAoUY29udmVyZ2VkX2ludGVudF9pZHMYESADKAkSQgoKcHVzaF9lcnJvchgSIAEoCzIpLm5vbW9zLnJ1bnRpbWUudjIuUnVudGltZVRyYW5zcG9ydEZhaWx1cmVIAogBARJHCg9kaXNjb3ZlcnlfZXJyb3IYEyABKAsyKS5ub21vcy5ydW50aW1lLnYyLlJ1bnRpbWVUcmFuc3BvcnRGYWlsdXJlSAOIAQESMwoHdGltaW5ncxgUIAEoCzIiLm5vbW9zLnJ1bnRpbWUudjIuU3luY1BoYXNlVGltaW5ncxJBCg1vZmZlcl9yZWNlaXB0GBUgASgLMiUubm9tb3MucnVudGltZS52Mi5DdXN0b2R5T2ZmZXJSZWNlaXB0SASIAQESOQoOcmVtb3RlX3JlZnVzYWwYFiABKAsyHC5ub21vcy5rZXJuZWwudjEuU3luY1JlZnVzYWxIBYgBARJHChRjdXN0b2R5X2Rpc2FncmVlbWVudBgXIAEoCzIkLm5vbW9zLmtlcm5lbC52MS5DdXN0b2R5RGlzYWdyZWVtZW50SAaIAQESGAoQY3VzdG9keV9yZXBsYWNlZBgYIAEoCBIVCg1tYWluX2FkdmFuY2VkGBkgASgIEkAKD3JlYm9ybl9yZW1vdGVseRgaIAEoCzIiLm5vbW9zLnJ1bnRpbWUudjIuV29ya3NwYWNlUmViaXJ0aEgHiAEBEkcKFHByZXNlcnZlZF9sb2NhbF9jb3B5GBsgASgLMiQubm9tb3MucnVudGltZS52Mi5QcmVzZXJ2ZWRMb2NhbENvcHlICIgBARIxCiRjdXN0b2RpYW5fd2FybWluZ19yZXRyeV9hZnRlcl9taWxsaXMYHCABKA1ICYgBAUIQCg5fcHJldmlvdXNfaGVhZEIPCg1fY3VycmVudF9oZWFkQg0KC19wdXNoX2Vycm9yQhIKEF9kaXNjb3ZlcnlfZXJyb3JCEAoOX29mZmVyX3JlY2VpcHRCEQoPX3JlbW90ZV9yZWZ1c2FsQhcKFV9jdXN0b2R5X2Rpc2FncmVlbWVudEISChBfcmVib3JuX3JlbW90ZWx5QhcKFV9wcmVzZXJ2ZWRfbG9jYWxfY29weUInCiVfY3VzdG9kaWFuX3dhcm1pbmdfcmV0cnlfYWZ0ZXJfbWlsbGlzIugBChNDdXN0b2R5T2ZmZXJSZWNlaXB0EhIKCnJlcXVlc3RfaWQYASABKAkSQwoJYWRtaXNzaW9uGAogASgLMi4ubm9tb3MucnVudGltZS52Mi5DdXN0b2R5T2ZmZXJBZG1pc3Npb25SZWNlaXB0SAASOAoHZmFpbHVyZRgLIAEoCzIlLm5vbW9zLnJ1bnRpbWUudjIuQ3VzdG9keU9mZmVyRmFpbHVyZUgAEjMKB2Jsb2NrZWQYDCABKAsyIC5ub21vcy5ydW50aW1lLnYyLlJ1bnRpbWVCbG9ja2VkSABCCQoHb3V0Y29tZSKGAgocQ3VzdG9keU9mZmVyQWRtaXNzaW9uUmVjZWlwdBIMCgRtYWluGAEgASgJEhgKC3NlYWxlZF9tYWluGAIgASgJSACIAQESOwoIc2Vzc2lvbnMYAyADKAsyKS5ub21vcy5ydW50aW1lLnYyLkN1c3RvZHlTZXNzaW9uQWRtaXNzaW9uEjUKDmJpcnRoX291dGNvbWVzGAQgAygLMh0ubm9tb3Mua2VybmVsLnYxLkJpcnRoT3V0Y29tZRI6Cgd0aW1pbmdzGAUgASgLMikubm9tb3MucnVudGltZS52Mi5DdXN0b2R5QWRtaXNzaW9uVGltaW5nc0IOCgxfc2VhbGVkX21haW4iswEKE0N1c3RvZHlPZmZlckZhaWx1cmUSDAoEY29kZRgBIAEoCRIPCgdtZXNzYWdlGAIgASgJEhEKCWNvbXBvbmVudBgDIAEoCRIWCgl3b3Jrc3BhY2UYBCABKAlIAIgBARITCgZkb21haW4YBSABKAlIAYgBARIWCglkaXJlY3RpdmUYBiABKAlIAogBAUIMCgpfd29ya3NwYWNlQgkKB19kb21haW5CDAoKX2RpcmVjdGl2ZSJdChdSdW50aW1lVHJhbnNwb3J0RmFpbHVyZRIQCghlbmRwb2ludBgBIAEoCRIOCgZzdGF0dXMYAiABKBESDwoHcmVmdXNlZBgDIAEoCBIPCgdtZXNzYWdlGAQgASgJIsUBChBTeW5jUGhhc2VUaW1pbmdzEhMKC3B1c2hfbWlsbGlzGAEgASgBEhQKDGFkbWl0X21pbGxpcxgCIAEoARIXCg9wcmVmZXRjaF9taWxsaXMYAyABKAESFwoPY29udmVyZ2VfbWlsbGlzGAQgASgBEhIKCnB1c2hfYnl0ZXMYBSABKAQSFQoNc2VydmVyX21pbGxpcxgGIAEoARIVCg1vZmZlcl9pbl9wdXNoGAcgASgIEhIKCnB1bGxfYnl0ZXMYCCABKAQiNAofUmVmcmVzaFJlcGxpY2FDcmVkZW50aWFsUmVxdWVzdBIRCgl3b3Jrc3BhY2UYASABKAkiiwEKDEdpdFJlYWRMZWFzZRIWCg5mb3JtYXRfdmVyc2lvbhgBIAEoDRIRCgl3b3Jrc3BhY2UYAiABKAkSDgoGcmVtb3RlGAMgASgJEg0KBXRva2VuGAQgASgJEhMKC3R0bF9zZWNvbmRzGAUgASgNEhwKFGV4cGlyZXNfdW5peF9zZWNvbmRzGAYgASgEIm4KD0dpdEZldGNoUmVxdWVzdBIPCgdzZXNzaW9uGAEgASgJEi0KBWxlYXNlGAIgASgLMh4ubm9tb3MucnVudGltZS52Mi5HaXRSZWFkTGVhc2USDAoEd2FudBgDIAEoCRINCgVoYXZlcxgEIAMoCSJqCg5HaXRGZXRjaFJlc3VsdBIdChBzdGFnZWRfcGFja19maWxlGAEgASgJSACIAQESDAoEaGVhZBgCIAEoCRIWCg5yZWNlaXZlZF9ieXRlcxgDIAEoBEITChFfc3RhZ2VkX3BhY2tfZmlsZSK2AQoeRGVsaXZlcldvcmtzcGFjZUVmZmVjdHNSZXF1ZXN0EhYKDnNvdXJjZV9zZXNzaW9uGAEgASgJEhgKEHRhcmdldF93b3Jrc3BhY2UYAiABKAkSGgoNc291cmNlX2NvbW1pdBgDIAEoCUgAiAEBEh4KEXNvdXJjZV9vZmZlcl9wYXRoGAQgASgJSAGIAQFCEAoOX3NvdXJjZV9jb21taXRCFAoSX3NvdXJjZV9vZmZlcl9wYXRoIlEKHERlbGl2ZXJIdHRwT2JsaWdhdGlvblJlcXVlc3QSFgoOc291cmNlX3Nlc3Npb24YASABKAkSGQoRc291cmNlX29mZmVyX3BhdGgYAiABKAkiuwEKF0h0dHBPYmxpZ2F0aW9uRGVsaXZlcmVkEhgKEHNvdXJjZV93b3Jrc3BhY2UYASABKAkSEQoJYXR0ZW1wdGVkGAIgASgIEhEKCWRlbGl2ZXJlZBgDIAEoCBIRCglyZXRyeWFibGUYBCABKAgSGwoTcHJlcGFyYXRpb25fcGVuZGluZxgFIAEoCBIcCg9yZXRyeV9hdF9taWxsaXMYBiABKARIAIgBAUISChBfcmV0cnlfYXRfbWlsbGlzIjYKHFJlY292ZXJDb3JyZXNwb25kZW5jZVJlcXVlc3QSFgoOc291cmNlX3Nlc3Npb24YASABKAkirAEKF0NvcnJlc3BvbmRlbmNlUmVjb3ZlcmVkEhgKEHNvdXJjZV93b3Jrc3BhY2UYASABKAkSDwoHcGVuZGluZxgCIAEoCBIgChNuZXh0X3dha2VfYXRfbWlsbGlzGAMgASgESACIAQESGgoNcmV0YWluZWRfaGVhZBgEIAEoCUgBiAEBQhYKFF9uZXh0X3dha2VfYXRfbWlsbGlzQhAKDl9yZXRhaW5lZF9oZWFkIvYCChlXb3Jrc3BhY2VFZmZlY3RzRGVsaXZlcmVkEhgKEHNvdXJjZV93b3Jrc3BhY2UYASABKAkSGAoQdGFyZ2V0X3dvcmtzcGFjZRgCIAEoCRIRCglhdHRlbXB0ZWQYAyABKAQSEQoJZGVsaXZlcmVkGAQgASgEEg8KB3JlZnVzZWQYBSABKAQSEQoJcmV0cnlhYmxlGAYgASgEEhwKD3JldHJ5X2F0X21pbGxpcxgHIAEoBEgAiAEBEhsKE3ByZXBhcmF0aW9uX3BlbmRpbmcYCCABKAgSGAoLdGFyZ2V0X2hlYWQYCSABKAlIAYgBARIfChdzb3VyY2Vfb3V0Y29tZV9yZWNvcmRlZBgKIAEoCBJBCgxyZXRyeV9yZWFzb24YCyABKAsyKy5ub21vcy5ydW50aW1lLnYyLkNvcnJlc3BvbmRlbmNlUmV0cnlSZWFzb25CEgoQX3JldHJ5X2F0X21pbGxpc0IOCgxfdGFyZ2V0X2hlYWQiOwoZQ29ycmVzcG9uZGVuY2VSZXRyeVJlYXNvbhIOCgZyZWFzb24YASABKAkSDgoGZGV0YWlsGAIgASgJIqwDChtSZW1vdGVHZW5lcmF0ZWRPZmZlclJlcXVlc3QSFgoOc291cmNlX3Nlc3Npb24YASABKAkSGAoQdGFyZ2V0X3dvcmtzcGFjZRgCIAEoCRINCgVhY3RvchgDIAEoCRIVCg1hdXRob3Jfc2VjcmV0GAQgASgMEhIKCmF1dGhfdG9rZW4YBSABKAwSLgoEY2FsbBgGIAEoCzIeLm5vbW9zLmtlcm5lbC52MS5EaXJlY3RpdmVDYWxsSAASQAoPbW9kZWxfbGlmZWN5Y2xlGAkgASgLMiUubm9tb3Mua2VybmVsLnYxLk1vZGVsTGlmZWN5Y2xlSW50ZW50SAASQQoRYmlydGhfY2VydGlmaWNhdGUYByABKAsyIS5ub21vcy5rZXJuZWwudjEuQmlydGhDZXJ0aWZpY2F0ZUgBiAEBEiEKFHJlcXVpcmVkX3RhcmdldF9oZWFkGAggASgJSAKIAQESEAoIbGF3X3VzZHoYCiABKAxCCAoGaW50ZW50QhQKEl9iaXJ0aF9jZXJ0aWZpY2F0ZUIXChVfcmVxdWlyZWRfdGFyZ2V0X2hlYWQiPwocUmVtb3RlR2VuZXJhdGVkT2ZmZXJBY2NlcHRlZBIRCgl3b3Jrc3BhY2UYASABKAkSDAoEaGVhZBgCIAEoCSLKAgoOUGVlckh0dHBFZmZlY3QSEQoJZWZmZWN0X2lkGAEgASgJEjAKBm1ldGhvZBgCIAEoDjIgLm5vbW9zLnJ1bnRpbWUudjIuUGVlckh0dHBNZXRob2QSCwoDdXJsGAMgASgJEhkKDGNvbnRlbnRfdHlwZRgEIAEoCUgAiAEBEgwKBGJvZHkYBSABKAwSGQoMYmVhcmVyX3Rva2VuGAYgASgMSAGIAQESEwoGYWNjZXB0GAcgASgJSAKIAQESGwoOdGltZW91dF9taWxsaXMYCCABKA1IA4gBARIcCg9pZGVtcG90ZW5jeV9rZXkYCSABKAlIBIgBAUIPCg1fY29udGVudF90eXBlQg8KDV9iZWFyZXJfdG9rZW5CCQoHX2FjY2VwdEIRCg9fdGltZW91dF9taWxsaXNCEgoQX2lkZW1wb3RlbmN5X2tleSJcChBQZWVySHR0cFJlc3BvbnNlEg4KBnN0YXR1cxgBIAEoDRIZCgxjb250ZW50X3R5cGUYAiABKAlIAIgBARIMCgRib2R5GAMgASgMQg8KDV9jb250ZW50X3R5cGUiXwoRUGVlckVmZmVjdEZhaWx1cmUSOQoGcmVhc29uGAEgASgOMikubm9tb3MucnVudGltZS52Mi5QZWVyRWZmZWN0RmFpbHVyZVJlYXNvbhIPCgdtZXNzYWdlGAIgASgJItAIChFQZWVyRWZmZWN0UmVjZWlwdBIRCgllZmZlY3RfaWQYASABKAkSNgoIcmVzcG9uc2UYCiABKAsyIi5ub21vcy5ydW50aW1lLnYyLlBlZXJIdHRwUmVzcG9uc2VIABI2CgdmYWlsdXJlGAsgASgLMiMubm9tb3MucnVudGltZS52Mi5QZWVyRWZmZWN0RmFpbHVyZUgAEjsKCWdpdF9mZXRjaBgMIAEoCzImLm5vbW9zLnJ1bnRpbWUudjIuUGVlckdpdEZldGNoUmVzcG9uc2VIABI5CghnaXRfcHVzaBgNIAEoCzIlLm5vbW9zLnJ1bnRpbWUudjIuUGVlckdpdFB1c2hSZXNwb25zZUgAEk0KFmJvcm5fY3VzdG9keV9wZXJzaXN0ZWQYDiABKAsyKy5ub21vcy5ydW50aW1lLnYyLlBlcnNpc3RCb3JuQ3VzdG9keVJlY2VpcHRIABJQChR3b3Jrc3BhY2VfZGlzY292ZXJlZBgPIAEoCzIwLm5vbW9zLmRpc2NvdmVyeS52MS5EaXNjb3ZlcmVkV29ya3NwYWNlUGxhY2VtZW50SAASQgoNbG9jYWxfY3VzdG9keRgQIAEoCzIpLm5vbW9zLnJ1bnRpbWUudjIuUGVlckxvY2FsQ3VzdG9keVJlY2VpcHRIABI/ChFmcm9udGllcl9yZXRhaW5lZBgRIAEoCzIiLm5vbW9zLnJ1bnRpbWUudjIuRnJvbnRpZXJSZXRhaW5lZEgAEiwKBXdva2VuGBIgASgLMhsubm9tb3MucnVudGltZS52Mi5QZWVyV29rZW5IABJJChRjcmVkZW50aWFsX3JlZnJlc2hlZBgTIAEoCzIpLm5vbW9zLnJ1bnRpbWUudjIuUGVlckNyZWRlbnRpYWxSZWZyZXNoZWRIABI/Cg9kZXZpY2VfaWRlbnRpdHkYFCABKAsyJC5ub21vcy5ydW50aW1lLnYyLlBlZXJEZXZpY2VJZGVudGl0eUgAEjcKC2xhd19wYWNrYWdlGBUgASgLMiAubm9tb3MucnVudGltZS52Mi5QZWVyTGF3UGFja2FnZUgAEk4KE2hpc3RvcnlfYWNxdWlzaXRpb24YFiABKAsyLy5ub21vcy5ydW50aW1lLnYyLlBlZXJIaXN0b3J5QWNxdWlzaXRpb25SZWNlaXB0SAASQQoQY29uc29sZV9lbnJvbGxlZBgXIAEoCzIlLm5vbW9zLnJ1bnRpbWUudjIuUGVlckNvbnNvbGVFbnJvbGxlZEgAElIKGWNvbnNvbGVfZW5yb2xtZW50X3JlZnVzZWQYGCABKAsyLS5ub21vcy5ydW50aW1lLnYyLlBlZXJDb25zb2xlRW5yb2xtZW50UmVmdXNlZEgAEjUKBnN0cmVhbRgZIAEoCzIjLm5vbW9zLnJ1bnRpbWUudjIuUGVlclN0cmVhbVJlY2VpcHRIAEIJCgdvdXRjb21lIqcCChJQZWVyR2l0RmV0Y2hFZmZlY3QSEQoJZWZmZWN0X2lkGAEgASgJEi0KBWxlYXNlGAIgASgLMh4ubm9tb3MucnVudGltZS52Mi5HaXRSZWFkTGVhc2USEQoEd2FudBgDIAEoCUgAiAEBEg0KBWhhdmVzGAQgAygJEhEKCXJlZmVyZW5jZRgFIAEoCRISCgVkZXB0aBgGIAEoDUgBiAEBEjMKCWFsb25nc2lkZRgHIAEoCzIgLm5vbW9zLnJ1bnRpbWUudjIuUGVlckh0dHBFZmZlY3QSPgoOYWxvbmdzaWRlX3JlZnMYCCABKAsyJi5ub21vcy5ydW50aW1lLnYyLlBlZXJHaXRSZWZzQWxvbmdzaWRlQgcKBV93YW50QggKBl9kZXB0aCLQAQoUUGVlckdpdEZldGNoUmVzcG9uc2USDAoEcGFjaxgBIAEoDBIMCgRoZWFkGAIgASgJEhYKDnJlY2VpdmVkX2J5dGVzGAMgASgEEg8KB3NoYWxsb3cYBCADKAkSNQoJYWxvbmdzaWRlGAUgASgLMiIubm9tb3MucnVudGltZS52Mi5QZWVySHR0cFJlc3BvbnNlEjwKDmFsb25nc2lkZV9yZWZzGAYgASgLMiQubm9tb3MucnVudGltZS52Mi5QZWVyR2l0UmVmc0ZldGNoZWQimAEKEVBlZXJHaXRQdXNoRWZmZWN0EhEKCWVmZmVjdF9pZBgBIAEoCRIOCgZyZW1vdGUYAiABKAkSGQoMYmVhcmVyX3Rva2VuGAMgASgMSACIAQESGAoQc2Vzc2lvbl9pZGVudGl0eRgEIAEoCRIMCgRoZWFkGAUgASgJEgwKBHBhY2sYBiABKAxCDwoNX2JlYXJlcl90b2tlbiJYChNQZWVyR2l0UHVzaFJlc3BvbnNlEhEKCXJlZmVyZW5jZRgBIAEoCRIMCgRoZWFkGAIgASgJEhIKCnNlbnRfYnl0ZXMYAyABKAQSDAoEbm9vcBgEIAEoCCItCgtSZXRhaW5lZFJlZhIRCglyZWZlcmVuY2UYASABKAkSCwoDb2lkGAIgASgJIocBChRSZXRhaW5Gcm9udGllckVmZmVjdBIRCgllZmZlY3RfaWQYASABKAkSEQoJd29ya3NwYWNlGAIgASgJEg4KBmJyYW5jaBgDIAEoCRIMCgRoZWFkGAQgASgJEisKBHJlZnMYBSADKAsyHS5ub21vcy5ydW50aW1lLnYyLlJldGFpbmVkUmVmIqIBChBGcm9udGllclJldGFpbmVkEhEKCXdvcmtzcGFjZRgBIAEoCRIOCgZicmFuY2gYAiABKAkSDAoEaGVhZBgDIAEoCRIQCghyZXRhaW5lZBgEIAEoCBITCgZkZXRhaWwYBSABKAlIAIgBARIrCgRyZWZzGAYgAygLMh0ubm9tb3MucnVudGltZS52Mi5SZXRhaW5lZFJlZkIJCgdfZGV0YWlsIl4KGFBlcnNpc3RCb3JuQ3VzdG9keUVmZmVjdBIRCgllZmZlY3RfaWQYASABKAkSLwoIY2hpbGRyZW4YAiADKAsyHS5ub21vcy5ydW50aW1lLnYyLkJvcm5DdXN0b2R5IpcBChRQZXJzaXN0ZWRCb3JuQ3VzdG9keRIRCgl3b3Jrc3BhY2UYASABKAkSDAoEaGVhZBgCIAEoCRIRCglwZXJzaXN0ZWQYAyABKAgSEwoGZGV0YWlsGAQgASgJSACIAQESKwoEcmVmcxgFIAMoCzIdLm5vbW9zLnJ1bnRpbWUudjIuUmV0YWluZWRSZWZCCQoHX2RldGFpbCJVChlQZXJzaXN0Qm9ybkN1c3RvZHlSZWNlaXB0EjgKCGNoaWxkcmVuGAEgAygLMiYubm9tb3MucnVudGltZS52Mi5QZXJzaXN0ZWRCb3JuQ3VzdG9keSLOBwoVQ29ycmVzcG9uZGVuY2VQZW5kaW5nEg8KB3dvcmtfaWQYASABKAkSMAoEaHR0cBgCIAEoCzIgLm5vbW9zLnJ1bnRpbWUudjIuUGVlckh0dHBFZmZlY3RIABI5CglnaXRfZmV0Y2gYAyABKAsyJC5ub21vcy5ydW50aW1lLnYyLlBlZXJHaXRGZXRjaEVmZmVjdEgAEjcKCGdpdF9wdXNoGAQgASgLMiMubm9tb3MucnVudGltZS52Mi5QZWVyR2l0UHVzaEVmZmVjdEgAEkoKFHBlcnNpc3RfYm9ybl9jdXN0b2R5GAUgASgLMioubm9tb3MucnVudGltZS52Mi5QZXJzaXN0Qm9ybkN1c3RvZHlFZmZlY3RIABJNChN3b3Jrc3BhY2VfZGlzY292ZXJ5GAYgASgLMi4ubm9tb3MucnVudGltZS52Mi5QZWVyV29ya3NwYWNlRGlzY292ZXJ5RWZmZWN0SAASQQoNbG9jYWxfY3VzdG9keRgHIAEoCzIoLm5vbW9zLnJ1bnRpbWUudjIuUGVlckxvY2FsQ3VzdG9keUVmZmVjdEgAEkEKD3JldGFpbl9mcm9udGllchgIIAEoCzImLm5vbW9zLnJ1bnRpbWUudjIuUmV0YWluRnJvbnRpZXJFZmZlY3RIABIwCgR3YWtlGAkgASgLMiAubm9tb3MucnVudGltZS52Mi5QZWVyV2FrZUVmZmVjdEgAEksKEnJlZnJlc2hfY3JlZGVudGlhbBgKIAEoCzItLm5vbW9zLnJ1bnRpbWUudjIuUGVlckNyZWRlbnRpYWxSZWZyZXNoRWZmZWN0SAASRQoPZGV2aWNlX2lkZW50aXR5GAsgASgLMioubm9tb3MucnVudGltZS52Mi5QZWVyRGV2aWNlSWRlbnRpdHlFZmZlY3RIABI9CgtsYXdfcGFja2FnZRgMIAEoCzImLm5vbW9zLnJ1bnRpbWUudjIuUGVlckxhd1BhY2thZ2VFZmZlY3RIABJNChNoaXN0b3J5X2FjcXVpc2l0aW9uGA0gASgLMi4ubm9tb3MucnVudGltZS52Mi5QZWVySGlzdG9yeUFjcXVpc2l0aW9uRWZmZWN0SAASSQoRY29uc29sZV9lbnJvbG1lbnQYDiABKAsyLC5ub21vcy5ydW50aW1lLnYyLlBlZXJDb25zb2xlRW5yb2xtZW50RWZmZWN0SAASNAoGc3RyZWFtGA8gASgLMiIubm9tb3MucnVudGltZS52Mi5QZWVyU3RyZWFtRWZmZWN0SABCCAoGZWZmZWN0IqABChpQZWVyQ29uc29sZUVucm9sbWVudEVmZmVjdBIRCgllZmZlY3RfaWQYASABKAkSFwoPZGV2aWNlX2lkZW50aXR5GAIgASgJEhIKCmNhcGFiaWxpdHkYAyABKAkSDwoHY29uc29sZRgEIAEoCRIOCgZ0ZW5hbnQYBSABKAkSDQoFc2NvcGUYBiABKAkSEgoKd29ya3NwYWNlcxgHIAMoCSKpAQoTUGVlckNvbnNvbGVFbnJvbGxlZBIRCglwcmluY2lwYWwYASABKAkSEAoIa2V5X2hhc2gYAiABKAkSPwoFaGVhZHMYAyADKAsyMC5ub21vcy5ydW50aW1lLnYyLlBlZXJDb25zb2xlRW5yb2xsZWQuSGVhZHNFbnRyeRosCgpIZWFkc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEicgobUGVlckNvbnNvbGVFbnJvbG1lbnRSZWZ1c2VkEg4KBnN0YXR1cxgBIAEoDRIPCgdtZXNzYWdlGAIgASgJEgwKBGNvZGUYAyABKAkSFgoJcmV0cnlhYmxlGAQgASgISACIAQFCDAoKX3JldHJ5YWJsZSJjChxQZWVySGlzdG9yeUFjcXVpc2l0aW9uRWZmZWN0EhEKCWVmZmVjdF9pZBgBIAEoCRIRCgl3b3Jrc3BhY2UYAiABKAkSHQoVY3JlZGVudGlhbF9jYXBhYmlsaXR5GAMgASgJIlUKHVBlZXJIaXN0b3J5QWNxdWlzaXRpb25SZWNlaXB0EhEKCXdvcmtzcGFjZRgBIAEoCRIPCgdjaGFuZ2VkGAIgASgIEhAKCGNvbXBsZXRlGAMgASgIIjkKDlBlZXJXYWtlRWZmZWN0EhEKCWVmZmVjdF9pZBgBIAEoCRIUCgxkZWxheV9taWxsaXMYAiABKA0iCwoJUGVlcldva2VuItYBChtQZWVyQ3JlZGVudGlhbFJlZnJlc2hFZmZlY3QSEQoJZWZmZWN0X2lkGAEgASgJEhIKCmNhcGFiaWxpdHkYAiABKAkSHQoQZGV2aWNlX2NoYWxsZW5nZRgDIAEoCUgAiAEBEhQKDGFsbG93X2NhY2hlZBgEIAEoCBInChpyZWplY3RlZF9hdXRoX3Rva2VuX3NoYTI1NhgFIAEoDEgBiAEBQhMKEV9kZXZpY2VfY2hhbGxlbmdlQh0KG19yZWplY3RlZF9hdXRoX3Rva2VuX3NoYTI1NiJvChdQZWVyQ3JlZGVudGlhbFJlZnJlc2hlZBIXCgphdXRoX3Rva2VuGAEgASgMSACIAQESGgoNYXV0aG9yX3NlY3JldBgCIAEoDEgBiAEBQg0KC19hdXRoX3Rva2VuQhAKDl9hdXRob3Jfc2VjcmV0IsYCChhQZWVyRGV2aWNlSWRlbnRpdHlFZmZlY3QSEQoJZWZmZWN0X2lkGAEgASgJEhAKCGlkZW50aXR5GAIgASgJEjgKBGxvYWQYAyABKAsyKC5ub21vcy5ydW50aW1lLnYyLlBlZXJEZXZpY2VJZGVudGl0eUxvYWRIABI4CgRzYXZlGAQgASgLMigubm9tb3MucnVudGltZS52Mi5QZWVyRGV2aWNlSWRlbnRpdHlTYXZlSAASQQoNbG9hZF9yZWNvdmVyeRgFIAEoCzIoLm5vbW9zLnJ1bnRpbWUudjIuUGVlckRldmljZVJlY292ZXJ5TG9hZEgAEkEKDXNhdmVfcmVjb3ZlcnkYBiABKAsyKC5ub21vcy5ydW50aW1lLnYyLlBlZXJEZXZpY2VSZWNvdmVyeVNhdmVIAEILCglvcGVyYXRpb24iGAoWUGVlckRldmljZUlkZW50aXR5TG9hZCIoChZQZWVyRGV2aWNlSWRlbnRpdHlTYXZlEg4KBnNlY3JldBgBIAEoDCIYChZQZWVyRGV2aWNlUmVjb3ZlcnlMb2FkIlAKFlBlZXJEZXZpY2VSZWNvdmVyeVNhdmUSNgoGcmVjb3JkGAEgASgLMiYubm9tb3MucnVudGltZS52Mi5EZXZpY2VSZWNvdmVyeVJlY29yZCKLAgoURGV2aWNlUmVjb3ZlcnlSZWNvcmQSDwoHdmVyc2lvbhgBIAEoDRITCgthcHBsaWNhdGlvbhgCIAEoCRIRCglwcmluY2lwYWwYAyABKAkSFwoPcHJldmlvdXNfc2VjcmV0GAQgASgMEhgKEGNhbmRpZGF0ZV9zZWNyZXQYBSABKAwSFwoPZW5yb2xsbWVudF9oZWFkGAYgASgJEhUKDXJlY292ZXJ5X2hlYWQYByABKAkSRAoRcGVuZGluZ19hZG1pc3Npb24YCCABKAsyKS5ub21vcy5ydW50aW1lLnYyLkRldmljZVJlY292ZXJ5QWRtaXNzaW9uEhEKCWNvbXBsZXRlZBgJIAEoCCKxAQoXRGV2aWNlUmVjb3ZlcnlBZG1pc3Npb24SPQoFc3RhZ2UYASABKA4yLi5ub21vcy5ydW50aW1lLnYyLkRldmljZVJlY292ZXJ5QWRtaXNzaW9uU3RhZ2USEgoKcmVxdWVzdF9pZBgCIAEoBBIRCgl3b3Jrc3BhY2UYAyABKAkSMAoGZWZmZWN0GAQgASgLMiAubm9tb3MucnVudGltZS52Mi5QZWVySHR0cEVmZmVjdCJuChJQZWVyRGV2aWNlSWRlbnRpdHkSEwoGc2VjcmV0GAEgASgMSACIAQESOAoIcmVjb3ZlcnkYAiABKAsyJi5ub21vcy5ydW50aW1lLnYyLkRldmljZVJlY292ZXJ5UmVjb3JkQgkKB19zZWNyZXQiPQoUUGVlckxhd1BhY2thZ2VFZmZlY3QSEQoJZWZmZWN0X2lkGAEgASgJEhIKCmxhd19zaGEyNTYYAiABKAkiIgoOUGVlckxhd1BhY2thZ2USEAoIbGF3X3VzZHoYASABKAwiRAocUGVlcldvcmtzcGFjZURpc2NvdmVyeUVmZmVjdBIRCgllZmZlY3RfaWQYASABKAkSEQoJd29ya3NwYWNlGAIgASgJIj4KFlBlZXJMb2NhbEN1c3RvZHlFZmZlY3QSEQoJZWZmZWN0X2lkGAEgASgJEhEKCXdvcmtzcGFjZRgCIAEoCSKDAQoXUGVlckxvY2FsQ3VzdG9keVJlY2VpcHQSEQoJd29ya3NwYWNlGAEgASgJEhEKCWF2YWlsYWJsZRgCIAEoCBI2CgdvcGVuaW5nGAMgASgLMiAubm9tb3MucnVudGltZS52Mi5DdXN0b2R5T3BlbmluZ0gAiAEBQgoKCF9vcGVuaW5nIi8KGkhpc3RvcnlBY3F1aXNpdGlvblJlY292ZXJ5EhEKCXdvcmtzcGFjZRgBIAEoCSLeAQodQ29udGludWVDb3JyZXNwb25kZW5jZVJlcXVlc3QSDwoHd29ya19pZBgBIAEoCRI0CgdyZWNlaXB0GAIgASgLMiMubm9tb3MucnVudGltZS52Mi5QZWVyRWZmZWN0UmVjZWlwdBJWChtyZWNvdmVyX2hpc3RvcnlfYWNxdWlzaXRpb24YAyABKAsyLC5ub21vcy5ydW50aW1lLnYyLkhpc3RvcnlBY3F1aXNpdGlvblJlY292ZXJ5SACIAQFCHgocX3JlY292ZXJfaGlzdG9yeV9hY3F1aXNpdGlvbiKGAgoUUmVtb3RlT2ZmZXJBZG1pc3Npb24SEQoJd29ya3NwYWNlGAEgASgJEgwKBG1haW4YAiABKAkSGAoLc2VhbGVkX21haW4YAyABKAlIAIgBARIvCgd2ZXJkaWN0GAQgASgLMh4ubm9tb3Mua2VybmVsLnYxLk9mZmVyUmVzcG9uc2USMwoMYm9ybl9jdXN0b2R5GAUgAygLMh0ubm9tb3MucnVudGltZS52Mi5Cb3JuQ3VzdG9keRITCgtyZXN1bHRfcGFjaxgGIAEoDBIYCgtyZXN1bHRfYmFzZRgHIAEoCUgBiAEBQg4KDF9zZWFsZWRfbWFpbkIOCgxfcmVzdWx0X2Jhc2UiSgoOQm9ybkN1c3RvZHlSZWYSKgoDcmVmGAEgASgLMh0ubm9tb3MucnVudGltZS52Mi5SZXRhaW5lZFJlZhIMCgRwYWNrGAIgASgMIoEBCgtCb3JuQ3VzdG9keRItCgVjaGlsZBgBIAEoCzIeLm5vbW9zLmtlcm5lbC52MS5Cb3JuV29ya3NwYWNlEgwKBHBhY2sYAiABKAwSNQoLcHVibGljYXRpb24YAyADKAsyIC5ub21vcy5ydW50aW1lLnYyLkJvcm5DdXN0b2R5UmVmIqoDChhDdXN0b2R5T2ZmZXJCYXRjaFJlcXVlc3QSGAoQcHJvdG9jb2xfdmVyc2lvbhgBIAEoDRISCgpyZXF1ZXN0X2lkGAIgASgJEjcKBmlubGluZRgDIAEoCzIlLm5vbW9zLnJ1bnRpbWUudjIuQ3VzdG9keUlubGluZU9mZmVyc0gAEkYKEXNlc3Npb25fY2FuZGlkYXRlGAQgASgLMikubm9tb3MucnVudGltZS52Mi5DdXN0b2R5U2Vzc2lvbkNhbmRpZGF0ZUgAEhYKCWJhc2VfaGVhZBgFIAEoCUgBiAEBEhUKDWV2aWRlbmNlX3BhY2sYBiABKAwSGgoNb2JzZXJ2ZWRfaGVhZBgHIAEoCUgCiAEBEhkKEWZhc3RfZm9yd2FyZF9vbmx5GAggASgIEhwKD2NvbnRpbnVlc19hZnRlchgJIAEoCUgDiAEBEh0KFWFja25vd2xlZGdlX2FkbWlzc2lvbhgKIAEoCEIICgZzb3VyY2VCDAoKX2Jhc2VfaGVhZEIQCg5fb2JzZXJ2ZWRfaGVhZEISChBfY29udGludWVzX2FmdGVyIu4ECg5MaXZlT2ZmZXJGcmFtZRIyCghmcm9udGllchgBIAEoCzIeLm5vbW9zLnJ1bnRpbWUudjIuTGl2ZUZyb250aWVySAASPAoGb2ZmZXJzGAIgASgLMioubm9tb3MucnVudGltZS52Mi5DdXN0b2R5T2ZmZXJCYXRjaFJlcXVlc3RIABI0CglhZG1pc3Npb24YAyABKAsyHy5ub21vcy5ydW50aW1lLnYyLkxpdmVBZG1pc3Npb25IABJFChJjaGVja3BvaW50X3JlcXVlc3QYBCABKAsyJy5ub21vcy5ydW50aW1lLnYyLkxpdmVDaGVja3BvaW50UmVxdWVzdEgAEkEKEGNoZWNrcG9pbnRfb2ZmZXIYBSABKAsyJS5ub21vcy5ydW50aW1lLnYyLkxpdmVDaGVja3BvaW50T2ZmZXJIABJBChBjaGVja3BvaW50X2NodW5rGAYgASgLMiUubm9tb3MucnVudGltZS52Mi5MaXZlQ2hlY2twb2ludENodW5rSAASPwoPaGlzdG9yeV9yZXF1ZXN0GAcgASgLMiQubm9tb3MucnVudGltZS52Mi5MaXZlSGlzdG9yeVJlcXVlc3RIABI3CgtyZWZfcmVxdWVzdBgIIAEoCzIgLm5vbW9zLnJ1bnRpbWUudjIuTGl2ZVJlZlJlcXVlc3RIABIqCgRwYWNrGAkgASgLMhoubm9tb3MucnVudGltZS52Mi5MaXZlUGFja0gAEjYKB3JlZnVzYWwYCiABKAsyIy5ub21vcy5ydW50aW1lLnYyLkxpdmVTdHJlYW1SZWZ1c2FsSABCCQoHbWVzc2FnZSJaCg1MaXZlQWRtaXNzaW9uEhIKCnJlcXVlc3RfaWQYASABKAkSNQoJYWRtaXNzaW9uGAIgASgLMiIubm9tb3MucnVudGltZS52Mi5DdXN0b2R5QWRtaXNzaW9uIt4BCgxMaXZlRnJvbnRpZXISDAoEaGVhZBgBIAEoCRIQCghyZXNwb25zZRgCIAEoCBISCgptYXhfb2ZmZXJzGAMgASgNEhwKFHJlbW91bnRfYWZ0ZXJfb2ZmZXJzGAQgASgNEhcKD291dGNvbWVzX2RpZ2VzdBgFIAEoCRIvCghvdXRjb21lcxgGIAMoCzIdLm5vbW9zLnJ1bnRpbWUudjIuUmV0YWluZWRSZWYSEwoGc2VhbGVkGAcgASgJSACIAQESEgoKaGVsZF90cmVlcxgIIAMoCUIJCgdfc2VhbGVkIpABChVMaXZlQ2hlY2twb2ludFJlcXVlc3QSEQoEaGVhZBgBIAEoCUgAiAEBEhQKB3BhY2tfaWQYAiABKAlIAYgBARIOCgZvZmZzZXQYAyABKAQSFQoNd2luZG93X2NodW5rcxgEIAEoDRISCgpoZWxkX3RyZWVzGAUgAygJQgcKBV9oZWFkQgoKCF9wYWNrX2lkIs4CChNMaXZlQ2hlY2twb2ludE9mZmVyEgwKBGhlYWQYASABKAkSDwoHcGFja19pZBgCIAEoCRINCgVieXRlcxgDIAEoBBITCgtjaHVua19ieXRlcxgEIAEoDRIPCgdzaGFsbG93GAYgAygJEi8KCG91dGNvbWVzGAcgAygLMh0ubm9tb3MucnVudGltZS52Mi5SZXRhaW5lZFJlZhIPCgdyZW1vdW50GAggASgIEhoKDW9mZmVyc19iZWhpbmQYCSABKARIAIgBARISCgpyZXF1ZXN0X2lkGAogASgJEhMKBnNlYWxlZBgLIAEoCUgBiAEBEgwKBG1haW4YDCABKAkSFQoNb21pdHRlZF90cmVlcxgNIAMoCRIUCgxzaGFyZWRfdHJlZXMYDiADKAlCEAoOX29mZmVyc19iZWhpbmRCCQoHX3NlYWxlZEoECAUQBiJZChNMaXZlQ2hlY2twb2ludENodW5rEg8KB3BhY2tfaWQYASABKAkSDgoGb2Zmc2V0GAIgASgEEg0KBWJ5dGVzGAMgASgMEhIKCnJlcXVlc3RfaWQYBCABKAkikgEKEkxpdmVIaXN0b3J5UmVxdWVzdBISCgpyZXF1ZXN0X2lkGAEgASgJEhAKCGJvdW5kYXJ5GAIgASgJEg0KBWRlcHRoGAMgASgNEhQKB3BhY2tfaWQYBCABKAlIAIgBARIOCgZvZmZzZXQYBSABKAQSFQoNd2luZG93X2NodW5rcxgGIAEoDUIKCghfcGFja19pZCJiCg5MaXZlUmVmUmVxdWVzdBISCgpyZXF1ZXN0X2lkGAEgASgJEhEKCXJlZmVyZW5jZRgCIAEoCRIRCgR3YW50GAMgASgJSACIAQESDQoFd2FudHMYBCADKAlCBwoFX3dhbnQinAEKCExpdmVQYWNrEhIKCnJlcXVlc3RfaWQYASABKAkSEQoJcmVmZXJlbmNlGAIgASgJEgwKBGhlYWQYAyABKAkSDAoEcGFjaxgEIAEoDBIPCgdzaGFsbG93GAUgAygJEgwKBGJhc2UYBiABKAkSDgoGb2ZmZXJzGAcgASgNEhMKBnNlYWxlZBgIIAEoCUgAiAEBQgkKB19zZWFsZWQifgoRTGl2ZVN0cmVhbVJlZnVzYWwSEgoKcmVxdWVzdF9pZBgBIAEoCRIMCgRjb2RlGAIgASgJEg8KB21lc3NhZ2UYAyABKAkSHwoScmV0cnlfYWZ0ZXJfbWlsbGlzGAQgASgNSACIAQFCFQoTX3JldHJ5X2FmdGVyX21pbGxpcyL7AQoRTGl2ZVN0cmVhbVJlcXVlc3QSMgoIZnJvbnRpZXIYASABKAsyHi5ub21vcy5ydW50aW1lLnYyLkxpdmVGcm9udGllckgAEj0KCmNoZWNrcG9pbnQYAiABKAsyJy5ub21vcy5ydW50aW1lLnYyLkxpdmVDaGVja3BvaW50UmVxdWVzdEgAEjcKB2hpc3RvcnkYAyABKAsyJC5ub21vcy5ydW50aW1lLnYyLkxpdmVIaXN0b3J5UmVxdWVzdEgAEi8KA3JlZhgEIAEoCzIgLm5vbW9zLnJ1bnRpbWUudjIuTGl2ZVJlZlJlcXVlc3RIAEIJCgdyZXF1ZXN0IkQKEExpdmVTdHJlYW1BbnN3ZXISMAoGZnJhbWVzGAEgAygLMiAubm9tb3MucnVudGltZS52Mi5MaXZlT2ZmZXJGcmFtZSLiAgoQUGVlclN0cmVhbUVmZmVjdBIRCgllZmZlY3RfaWQYASABKAkSEQoJd29ya3NwYWNlGAIgASgJEj0KCmNoZWNrcG9pbnQYAyABKAsyJy5ub21vcy5ydW50aW1lLnYyLkxpdmVDaGVja3BvaW50UmVxdWVzdEgAEjcKB2hpc3RvcnkYBCABKAsyJC5ub21vcy5ydW50aW1lLnYyLkxpdmVIaXN0b3J5UmVxdWVzdEgAEi8KA3JlZhgFIAEoCzIgLm5vbW9zLnJ1bnRpbWUudjIuTGl2ZVJlZlJlcXVlc3RIABIvCgVsZXZlbBgGIAEoCzIeLm5vbW9zLnJ1bnRpbWUudjIuTGl2ZUZyb250aWVySAASEgoKc3RhcnRfb25seRgHIAEoCBIQCgh1cHN0cmVhbRgIIAEoCRIdChVjcmVkZW50aWFsX2NhcGFiaWxpdHkYCSABKAlCCQoHcmVxdWVzdCLjAgoRUGVlclN0cmVhbVJlY2VpcHQSKgoEcGFjaxgBIAEoCzIaLm5vbW9zLnJ1bnRpbWUudjIuTGl2ZVBhY2tIABIPCgVsZXZlbBgCIAEoCUgAEjYKB3JlZnVzYWwYAyABKAsyIy5ub21vcy5ydW50aW1lLnYyLkxpdmVTdHJlYW1SZWZ1c2FsSAASLwoIb3V0Y29tZXMYBCADKAsyHS5ub21vcy5ydW50aW1lLnYyLlJldGFpbmVkUmVmEhYKDnJlY2VpdmVkX2J5dGVzGAUgASgEEhMKBnNlYWxlZBgGIAEoCUgBiAEBEh0KEHN0YWdlZF9wYWNrX2ZpbGUYByABKAlIAogBARIRCgRtYWluGAggASgJSAOIAQESFQoNb21pdHRlZF90cmVlcxgJIAMoCUIJCgdvdXRjb21lQgkKB19zZWFsZWRCEwoRX3N0YWdlZF9wYWNrX2ZpbGVCBwoFX21haW4iawoQUGVlclNvY2tldEVmZmVjdBIVCg1jb25uZWN0aW9uX2lkGAEgASgJEhIKCG9wZW5fdXJsGAIgASgJSAASDgoEc2VuZBgDIAEoDEgAEg8KBWNsb3NlGAQgASgISABCCwoJb3BlcmF0aW9uIqkBChFQZWVyU29ja2V0UmVjZWlwdBIVCg1jb25uZWN0aW9uX2lkGAEgASgJEhAKBm9wZW5lZBgCIAEoCEgAEhIKCHJlY2VpdmVkGAMgASgMSAASEAoGY2xvc2VkGAQgASgISAASNgoHY2xvc3VyZRgFIAEoCzIjLm5vbW9zLnJ1bnRpbWUudjIuUGVlclNvY2tldENsb3N1cmVIAEINCgtvYnNlcnZhdGlvbiKNAQoRUGVlclNvY2tldENsb3N1cmUSEQoEY29kZRgBIAEoDUgAiAEBEg4KBnJlYXNvbhgCIAEoCRINCgVjbGVhbhgDIAEoCBI9Cglpbml0aWF0b3IYBCABKA4yKi5ub21vcy5ydW50aW1lLnYyLlBlZXJTb2NrZXRDbG9zZUluaXRpYXRvckIHCgVfY29kZSLiAwoPTGl2ZUxpbmtDbG9zdXJlEhUKDWNvbm5lY3Rpb25faWQYASABKAkSEQoJd29ya3NwYWNlGAIgASgJEiwKBHJvbGUYAyABKA4yHi5ub21vcy5ydW50aW1lLnYyLkxpdmVMaW5rUm9sZRIzCgZzb2NrZXQYBCABKAsyIy5ub21vcy5ydW50aW1lLnYyLlBlZXJTb2NrZXRDbG9zdXJlEh0KFWNsb3NlZF9hdF91bml4X21pbGxpcxgFIAEoBBITCgtvcGVuX21pbGxpcxgGIAEoBBISCgphZG1pc3Npb25zGAcgASgNEiYKGWxhc3RfYWRtaXNzaW9uX3JlcXVlc3RfaWQYCCABKAlIAIgBARIfChJsYXN0X2FkbWl0dGVkX21haW4YCSABKAlIAYgBARIdChBsYXN0X3NlYWxlZF9tYWluGAogASgJSAKIAQESGgoNbGFzdF9mcm9udGllchgLIAEoCUgDiAEBEhoKEnVuYW5zd2VyZWRfYmF0Y2hlcxgMIAEoDUIcChpfbGFzdF9hZG1pc3Npb25fcmVxdWVzdF9pZEIVChNfbGFzdF9hZG1pdHRlZF9tYWluQhMKEV9sYXN0X3NlYWxlZF9tYWluQhAKDl9sYXN0X2Zyb250aWVyIi0KElBlZXJTb2NrZXRPYnNlcnZlZBIXCg9ydW5nX3dvcmtzcGFjZXMYASADKAkiPQoXRXhwb3J0TGl2ZU9mZmVyc1JlcXVlc3QSDwoHc2Vzc2lvbhgBIAEoCRIRCgliYXNlX2hlYWQYAiABKAkiTgoSQ3VzdG9keUludGVudE9mZmVyEg8KB3Nlc3Npb24YASABKAkSEgoKY29tbWl0X29pZBgCIAEoCRITCgtjaGFuZ2VfdXNkYRgDIAEoDCJLChNDdXN0b2R5SW5saW5lT2ZmZXJzEjQKBm9mZmVycxgBIAMoCzIkLm5vbW9zLnJ1bnRpbWUudjIuQ3VzdG9keUludGVudE9mZmVyIiwKF0N1c3RvZHlTZXNzaW9uQ2FuZGlkYXRlEhEKCXJlZmVyZW5jZRgBIAEoCSKCBAoQQ3VzdG9keUFkbWlzc2lvbhIMCgRtYWluGAEgASgJEhgKC3NlYWxlZF9tYWluGAIgASgJSACIAQESOwoIc2Vzc2lvbnMYAyADKAsyKS5ub21vcy5ydW50aW1lLnYyLkN1c3RvZHlTZXNzaW9uQWRtaXNzaW9uEjUKDmJpcnRoX291dGNvbWVzGAQgAygLMh0ubm9tb3Mua2VybmVsLnYxLkJpcnRoT3V0Y29tZRIzCgxib3JuX2N1c3RvZHkYBSADKAsyHS5ub21vcy5ydW50aW1lLnYyLkJvcm5DdXN0b2R5EhMKC3Jlc3VsdF9wYWNrGAYgASgMEhgKC3Jlc3VsdF9iYXNlGAcgASgJSAGIAQESOgoHdGltaW5ncxgIIAEoCzIpLm5vbW9zLnJ1bnRpbWUudjIuQ3VzdG9keUFkbWlzc2lvblRpbWluZ3MSHgoRcmVjb3ZlcnlfcmVxdWlyZWQYCSABKAhIAogBARJGChFsb2NhbF9tYWludGVuYW5jZRgKIAEoCzImLm5vbW9zLnJ1bnRpbWUudjIuTWFpbnRlbmFuY2VTY2hlZHVsZWRIA4gBAUIOCgxfc2VhbGVkX21haW5CDgoMX3Jlc3VsdF9iYXNlQhQKEl9yZWNvdmVyeV9yZXF1aXJlZEIUChJfbG9jYWxfbWFpbnRlbmFuY2UiZQoXQ3VzdG9keVNlc3Npb25BZG1pc3Npb24SDwoHc2Vzc2lvbhgBIAEoCRI5CgdpbnRlbnRzGAIgAygLMigubm9tb3MucnVudGltZS52Mi5DdXN0b2R5SW50ZW50QWRtaXNzaW9uItQDChZDdXN0b2R5SW50ZW50QWRtaXNzaW9uEhIKCmNvbW1pdF9vaWQYASABKAkSFgoJaW50ZW50X2lkGAIgASgJSAGIAQESOwoIYWRtaXR0ZWQYCiABKAsyJy5ub21vcy5ydW50aW1lLnYyLkN1c3RvZHlJbnRlbnRBZG1pdHRlZEgAEjkKB3NraXBwZWQYCyABKAsyJi5ub21vcy5ydW50aW1lLnYyLkN1c3RvZHlJbnRlbnRTa2lwcGVkSAASOQoHcmVmdXNlZBgMIAEoCzImLm5vbW9zLnJ1bnRpbWUudjIuQ3VzdG9keUludGVudFJlZnVzZWRIABJECg1kZWFkX2xldHRlcmVkGA0gASgLMisubm9tb3MucnVudGltZS52Mi5DdXN0b2R5SW50ZW50RGVhZExldHRlcmVkSAASOQoHYmxvY2tlZBgOIAEoCzImLm5vbW9zLnJ1bnRpbWUudjIuQ3VzdG9keUludGVudEJsb2NrZWRIABJBCgtxdWFyYW50aW5lZBgPIAEoCzIqLm5vbW9zLnJ1bnRpbWUudjIuQ3VzdG9keUludGVudFF1YXJhbnRpbmVkSABCCQoHb3V0Y29tZUIMCgpfaW50ZW50X2lkIpABChVDdXN0b2R5SW50ZW50QWRtaXR0ZWQSDAoEaGVhZBgBIAEoCRIzCgdjcmVhdGVkGAIgAygLMiIubm9tb3Mua2VybmVsLnYxLk9mZmVyQWdncmVnYXRlUmVmEjQKCGFmZmVjdGVkGAMgAygLMiIubm9tb3Mua2VybmVsLnYxLk9mZmVyQWdncmVnYXRlUmVmIi8KFEN1c3RvZHlJbnRlbnRTa2lwcGVkEhcKD2FscmVhZHlfb25fbWFpbhgBIAEoCCKaAQoUQ3VzdG9keUludGVudFJlZnVzZWQSDwoHbWVzc2FnZRgBIAEoCRIRCgRoaW50GAMgASgJSACIAQESNAoHcmVmdXNhbBgEIAEoCzIeLm5vbW9zLmtlcm5lbC52MS5LZXJuZWxSZWZ1c2FsSAGIAQFCBwoFX2hpbnRCCgoIX3JlZnVzYWxKBAgCEANSDWRlYWRfbGV0dGVyZWQifgoZQ3VzdG9keUludGVudERlYWRMZXR0ZXJlZBIPCgdtZXNzYWdlGAEgASgJEhEKBGhpbnQYAiABKAlIAIgBARIeChFjdXN0b2R5X3JlZmVyZW5jZRgDIAEoCUgBiAEBQgcKBV9oaW50QhQKEl9jdXN0b2R5X3JlZmVyZW5jZSImChRDdXN0b2R5SW50ZW50QmxvY2tlZBIOCgZkZXRhaWwYASABKAkilQEKGEN1c3RvZHlJbnRlbnRRdWFyYW50aW5lZBIOCgZyZWFzb24YASABKAkSGQoRYXV0aG9yZWRfbGF3X2hhc2gYAiABKAkSGAoQY3VycmVudF9sYXdfaGFzaBgDIAEoCRIeChFjdXN0b2R5X3JlZmVyZW5jZRgEIAEoCUgAiAEBQhQKEl9jdXN0b2R5X3JlZmVyZW5jZSLtAQoXQ3VzdG9keUFkbWlzc2lvblRpbWluZ3MSFAoMdG90YWxfbWlsbGlzGAEgASgBEhMKC3NjYW5fbWlsbGlzGAIgASgBEhQKDGZldGNoX21pbGxpcxgDIAEoARITCgtzZWFsX21pbGxpcxgEIAEoARIYChBnYXRlX2ZvbGRfbWlsbGlzGAUgASgBEhQKDGludGVudF9jb3VudBgGIAEoDRIVCg1zZXNzaW9uX2NvdW50GAcgASgNEjUKBXNwYW5zGAggAygLMiYubm9tb3MucnVudGltZS52Mi5DdXN0b2R5QWRtaXNzaW9uU3BhbiKXAQoUQ3VzdG9keUFkbWlzc2lvblNwYW4SCgoCaWQYASABKAkSDQoFdHJhY2sYAiABKAkSDAoEbmFtZRgDIAEoCRIMCgRraW5kGAQgASgJEg0KBWRlcHRoGAUgASgNEhsKE3N0YXJ0ZWRfdW5peF9taWxsaXMYBiABKAESHAoUZmluaXNoZWRfdW5peF9taWxsaXMYByABKAEiXQoXV29ya3NwYWNlRWZmZWN0RGVmZXJyZWQSGAoQdGFyZ2V0X3dvcmtzcGFjZRgBIAEoCRIaChJyZXRyeV9hZnRlcl9taWxsaXMYAiABKAQSDAoEaGVsZBgDIAEoBCL6AQoNT3V0Ym94U3VtbWFyeRIRCgl3b3Jrc3BhY2UYASABKAkSDwoHZW50cmllcxgCIAEoBBI0Cgd0YXJnZXRzGAMgAygLMiMubm9tb3MucnVudGltZS52Mi5PdXRib3hUYXJnZXRDb3VudBIfChJuZXh0X2R1ZV9hdF9taWxsaXMYBCABKARIAIgBARIUCgx3b3JrX3BlbmRpbmcYBSABKAgSEAoIcmVzaWRlbnQYBiABKAgSFQoNZW50cmllc190b3RhbBgHIAEoDRIYChBlbnRyaWVzX3ByZXBhcmVkGAggASgNQhUKE19uZXh0X2R1ZV9hdF9taWxsaXMiPgoRT3V0Ym94VGFyZ2V0Q291bnQSGAoQdGFyZ2V0X3dvcmtzcGFjZRgBIAEoCRIPCgdlbnRyaWVzGAIgASgEIkMKFFBlZXJHaXRSZWZzQWxvbmdzaWRlEg4KBnByZWZpeBgBIAEoCRIMCgRoZWxkGAIgAygJEg0KBWxpbWl0GAMgASgNImEKElBlZXJHaXRSZWZzRmV0Y2hlZBIrCgRyZWZzGAEgAygLMh0ubm9tb3MucnVudGltZS52Mi5SZXRhaW5lZFJlZhIMCgRwYWNrGAIgASgMEhAKCGRlZmVycmVkGAMgASgNIhgKFk5ldHdvcmtSZXN0b3JlZFJlcXVlc3QiKAoPTmV0d29ya1Jlc3RvcmVkEhUKDWxpbmtzX3JldHJpZWQYASABKA0qvAEKFVNoYXJlV29ya3NwYWNlT3V0Y29tZRInCiNTSEFSRV9XT1JLU1BBQ0VfT1VUQ09NRV9VTlNQRUNJRklFRBAAEiUKIVNIQVJFX1dPUktTUEFDRV9PVVRDT01FX0RFTElWRVJFRBABEi4KKlNIQVJFX1dPUktTUEFDRV9PVVRDT01FX0FXQUlUSU5HX1JFQ0lQSUVOVBACEiMKH1NIQVJFX1dPUktTUEFDRV9PVVRDT01FX1JFRlVTRUQQAypnCg5QZWVySHR0cE1ldGhvZBIgChxQRUVSX0hUVFBfTUVUSE9EX1VOU1BFQ0lGSUVEEAASGAoUUEVFUl9IVFRQX01FVEhPRF9HRVQQARIZChVQRUVSX0hUVFBfTUVUSE9EX1BPU1QQAiq/AQoXUGVlckVmZmVjdEZhaWx1cmVSZWFzb24SKgomUEVFUl9FRkZFQ1RfRkFJTFVSRV9SRUFTT05fVU5TUEVDSUZJRUQQABImCiJQRUVSX0VGRkVDVF9GQUlMVVJFX1JFQVNPTl9PRkZMSU5FEAESJgoiUEVFUl9FRkZFQ1RfRkFJTFVSRV9SRUFTT05fVElNRU9VVBACEigKJFBFRVJfRUZGRUNUX0ZBSUxVUkVfUkVBU09OX1RSQU5TUE9SVBADKq0BChxEZXZpY2VSZWNvdmVyeUFkbWlzc2lvblN0YWdlEi8KK0RFVklDRV9SRUNPVkVSWV9BRE1JU1NJT05fU1RBR0VfVU5TUEVDSUZJRUQQABIuCipERVZJQ0VfUkVDT1ZFUllfQURNSVNTSU9OX1NUQUdFX0VOUk9MTE1FTlQQARIsCihERVZJQ0VfUkVDT1ZFUllfQURNSVNTSU9OX1NUQUdFX1JFQ09WRVJZEAIqvwEKGFBlZXJTb2NrZXRDbG9zZUluaXRpYXRvchIrCidQRUVSX1NPQ0tFVF9DTE9TRV9JTklUSUFUT1JfVU5TUEVDSUZJRUQQABInCiNQRUVSX1NPQ0tFVF9DTE9TRV9JTklUSUFUT1JfUlVOVElNRRABEiUKIVBFRVJfU09DS0VUX0NMT1NFX0lOSVRJQVRPUl9TSEVMTBACEiYKIlBFRVJfU09DS0VUX0NMT1NFX0lOSVRJQVRPUl9SRU1PVEUQAyphCgxMaXZlTGlua1JvbGUSHgoaTElWRV9MSU5LX1JPTEVfVU5TUEVDSUZJRUQQABIXChNMSVZFX0xJTktfUk9MRV9QRUVSEAESGAoUTElWRV9MSU5LX1JPTEVfUkVMQVkQAmIGcHJvdG8z", [file_nomos_kernel_v1_kernel, file_nomos_runtime_v2_placement_desk, file_nomos_discovery_v1_workspace_placement, file_nomos_runtime_v2_custody_desk, file_nomos_runtime_v2_maintenance_desk]);
7762
7762
  var VerifyWorkspaceChainResultSchema = /* @__PURE__ */ messageDesc(file_nomos_runtime_v2_correspondence_desk, 7);
7763
7763
  var VerifyChainHistorySchema = /* @__PURE__ */ messageDesc(file_nomos_runtime_v2_correspondence_desk, 8);
7764
7764
  var SyncWorkspaceRequestSchema = /* @__PURE__ */ messageDesc(file_nomos_runtime_v2_correspondence_desk, 9);
@@ -7839,6 +7839,7 @@
7839
7839
  var WorkspaceEffectDeferredSchema = /* @__PURE__ */ messageDesc(file_nomos_runtime_v2_correspondence_desk, 106);
7840
7840
  var PeerGitRefsAlongsideSchema = /* @__PURE__ */ messageDesc(file_nomos_runtime_v2_correspondence_desk, 109);
7841
7841
  var PeerGitRefsFetchedSchema = /* @__PURE__ */ messageDesc(file_nomos_runtime_v2_correspondence_desk, 110);
7842
+ var NetworkRestoredSchema = /* @__PURE__ */ messageDesc(file_nomos_runtime_v2_correspondence_desk, 112);
7842
7843
  var PeerHttpMethodSchema = /* @__PURE__ */ enumDesc(file_nomos_runtime_v2_correspondence_desk, 1);
7843
7844
  var PeerHttpMethod = /* @__PURE__ */ tsEnum(PeerHttpMethodSchema);
7844
7845
  var PeerEffectFailureReasonSchema = /* @__PURE__ */ enumDesc(file_nomos_runtime_v2_correspondence_desk, 2);
@@ -8127,7 +8128,7 @@
8127
8128
  // ../../adapter/proto/nomos/runtime/v2/residency_desk_pb.js
8128
8129
  init_define_NOMOS_KERNEL_RELEASE();
8129
8130
  init_shims();
8130
- var file_nomos_runtime_v2_residency_desk = /* @__PURE__ */ fileDesc("CiVub21vcy9ydW50aW1lL3YyL3Jlc2lkZW5jeV9kZXNrLnByb3RvEhBub21vcy5ydW50aW1lLnYyIhoKGFJlc2lkZW5jeVByZXNzdXJlUmVxdWVzdCJIChVSZXRhaW5Gcm9udGllclJlcXVlc3QSEQoJd29ya3NwYWNlGAEgASgJEg4KBmJyYW5jaBgCIAEoCRIMCgRoZWFkGAMgASgJIm8KGVJlc2lkZW5jeVByZXNzdXJlUmVsaWV2ZWQSGgoSZXZpY3RlZF93b3Jrc3BhY2VzGAEgAygJEhcKD3dhcm1fd29ya3NwYWNlcxgCIAMoCRIdChV3YXJtX3Jlc2lkZW5jeV9taWxsaXMYAyABKAQi6gcKF1Jlc2lkZW50V29ya3NwYWNlRGV0YWlsEhEKCXdvcmtzcGFjZRgBIAEoCRITCgtpZGxlX21pbGxpcxgCIAEoBBIdChByZXBvc2l0b3J5X2J5dGVzGAMgASgESACIAQESKAobbWF0ZXJpYWxpemVkX2Zyb250aWVyX2J5dGVzGAQgASgESAGIAQESPwoJcmVhZGluZXNzGAUgASgOMiwubm9tb3MucnVudGltZS52Mi5SZXNpZGVudFdvcmtzcGFjZVJlYWRpbmVzcxIYCgtzcWxpdGVfaGVhZBgGIAEoCUgCiAEBEhUKCGdpdF9oZWFkGAcgASgJSAOIAQESPgoPaGlzdG9yeV9wb3N0dXJlGAggASgOMiUubm9tb3MucnVudGltZS52Mi5Mb2NhbEhpc3RvcnlQb3N0dXJlEhoKEnNoYWxsb3dfYm91bmRhcmllcxgJIAEoDRIvCiJyZXBvc2l0b3J5X21lYXN1cmVkX2F0X3VuaXhfbWlsbGlzGAogASgESASIAQESLQogZnJvbnRpZXJfbWVhc3VyZWRfYXRfdW5peF9taWxsaXMYCyABKARIBYgBARI7CglwbGFjZW1lbnQYDCABKAsyIy5ub21vcy5ydW50aW1lLnYyLlJlc2lkZW50UGxhY2VtZW50SAaIAQESNQoGb3V0Ym94GA0gASgLMiAubm9tb3MucnVudGltZS52Mi5SZXNpZGVudE91dGJveEgHiAEBEj4KBmNlbnN1cxgOIAEoCzIpLm5vbW9zLnJ1bnRpbWUudjIuUmVzaWRlbnRBZ2dyZWdhdGVDZW5zdXNICIgBARIdChBmdWxsX3JlcGxheV9oZWFkGA8gASgJSAmIAQESIgoVbG9jYWxfaGlzdG9yeV9jb21taXRzGBAgASgESAqIAQESKAobcGxhY2VtZW50X3Vub2JzZXJ2ZWRfcmVhc29uGBEgASgJSAuIAQFCEwoRX3JlcG9zaXRvcnlfYnl0ZXNCHgocX21hdGVyaWFsaXplZF9mcm9udGllcl9ieXRlc0IOCgxfc3FsaXRlX2hlYWRCCwoJX2dpdF9oZWFkQiUKI19yZXBvc2l0b3J5X21lYXN1cmVkX2F0X3VuaXhfbWlsbGlzQiMKIV9mcm9udGllcl9tZWFzdXJlZF9hdF91bml4X21pbGxpc0IMCgpfcGxhY2VtZW50QgkKB19vdXRib3hCCQoHX2NlbnN1c0ITChFfZnVsbF9yZXBsYXlfaGVhZEIYChZfbG9jYWxfaGlzdG9yeV9jb21taXRzQh4KHF9wbGFjZW1lbnRfdW5vYnNlcnZlZF9yZWFzb24iiwIKF1Jlc2lkZW50QWdncmVnYXRlQ2Vuc3VzEgwKBGhlYWQYASABKAkSHAoPYWdncmVnYXRlX2NvdW50GAIgASgESACIAQESFwoKc3RhdGVfcm9vdBgDIAEoCUgBiAEBEjYKCXRvcF90eXBlcxgEIAMoCzIjLm5vbW9zLmtlcm5lbC52MS5BZ2dyZWdhdGVUeXBlQ291bnQSHQoQdHlwZXNfc3RhdGVfcm9vdBgFIAEoCUgCiAEBEhwKFG9ic2VydmVkX3VuaXhfbWlsbGlzGAYgASgEQhIKEF9hZ2dyZWdhdGVfY291bnRCDQoLX3N0YXRlX3Jvb3RCEwoRX3R5cGVzX3N0YXRlX3Jvb3QisQEKFVJlc2lkZW50UGxhY2VtZW50UnVsZRISCgpwZWVyX2NsYXNzGAEgASgJEkAKEGtlcm5lbF9yZXNpZGVuY3kYAiABKA4yJi5ub21vcy5rZXJuZWwudjEuS2VybmVsUmVzaWRlbmN5SW50ZW50EkIKEWN1c3RvZHlfcmV0ZW50aW9uGAMgASgOMicubm9tb3Mua2VybmVsLnYxLkN1c3RvZHlSZXRlbnRpb25JbnRlbnQiqgMKEVJlc2lkZW50UGxhY2VtZW50EhUKCGZyb250aWVyGAEgASgJSACIAQESEwoLZGVjbGFyYXRpb24YAiABKAkSEgoKYWRvcHRlZF9ieRgDIAEoCRI2CgVydWxlcxgEIAMoCzInLm5vbW9zLnJ1bnRpbWUudjIuUmVzaWRlbnRQbGFjZW1lbnRSdWxlEhQKDHJlbW90ZV9uYW1lcxgFIAMoCRIiChpyZWNpcGllbnRfbWFpbGJveF9kZWNsYXJlZBgGIAEoCBJKChplZmZlY3RpdmVfa2VybmVsX3Jlc2lkZW5jeRgHIAEoDjImLm5vbW9zLmtlcm5lbC52MS5LZXJuZWxSZXNpZGVuY3lJbnRlbnQSTAobZWZmZWN0aXZlX2N1c3RvZHlfcmV0ZW50aW9uGAggASgOMicubm9tb3Mua2VybmVsLnYxLkN1c3RvZHlSZXRlbnRpb25JbnRlbnQSHgoWZWZmZWN0aXZlX3JlbW90ZV9uYW1lcxgJIAMoCRIcChRvYnNlcnZlZF91bml4X21pbGxpcxgKIAEoBEILCglfZnJvbnRpZXIikQEKDlJlc2lkZW50T3V0Ym94Eg8KB2VudHJpZXMYASABKA0SFAoMd29ya19wZW5kaW5nGAIgASgIEiEKFG5leHRfZHVlX3VuaXhfbWlsbGlzGAMgASgESACIAQESHAoUb2JzZXJ2ZWRfdW5peF9taWxsaXMYBCABKARCFwoVX25leHRfZHVlX3VuaXhfbWlsbGlzIuABChFLZXJuZWxXb3JrQ291bnRlchIOCgZmYW1pbHkYASABKAkSEQoJb3BlcmF0aW9uGAIgASgJEg0KBWNhbGxzGAMgASgEEhAKCGZhaWx1cmVzGAQgASgEEhIKCmNwdV9taWNyb3MYBSABKAQSEwoLd2FsbF9taWNyb3MYBiABKAQSOgoLY3B1X2J1Y2tldHMYByADKAsyJS5ub21vcy5ydW50aW1lLnYyLktlcm5lbFdvcmtDcHVCdWNrZXQSIgoabGFzdF9jb21wbGV0ZWRfdW5peF9taWxsaXMYCCABKAQiNwoTS2VybmVsV29ya0NwdUJ1Y2tldBIRCglsZV9taWNyb3MYASABKAQSDQoFY2FsbHMYAiABKAQiUgoQQWN0aXZlS2VybmVsV29yaxIOCgZmYW1pbHkYASABKAkSEQoJb3BlcmF0aW9uGAIgASgJEhsKE3N0YXJ0ZWRfdW5peF9taWxsaXMYAyABKAQiygEKEktlcm5lbFdvcmtTbmFwc2hvdBIbChNzdGFydGVkX3VuaXhfbWlsbGlzGAEgASgEEhwKFG9ic2VydmVkX3VuaXhfbWlsbGlzGAIgASgEEjUKCGNvdW50ZXJzGAMgAygLMiMubm9tb3MucnVudGltZS52Mi5LZXJuZWxXb3JrQ291bnRlchI3CgZhY3RpdmUYBCABKAsyIi5ub21vcy5ydW50aW1lLnYyLkFjdGl2ZUtlcm5lbFdvcmtIAIgBAUIJCgdfYWN0aXZlIrYECgpIb3N0SGVhbHRoEg8KB3JlcGxpY2EYASABKAQSFQoNa2VybmVsX3NoYTI1NhgCIAEoCRIbChNyZXNpZGVudF93b3Jrc3BhY2VzGAMgAygJEhoKEndhc21fbGluZWFyX21lbV9tYhgEIAEoARIWCg5wcm9jZXNzX3Jzc19tYhgFIAEoARIXCg9yc3NfY3JpdGljYWxfbWIYBiABKA0SPAoJcmVzaWRlbnRzGAcgAygLMikubm9tb3MucnVudGltZS52Mi5SZXNpZGVudFdvcmtzcGFjZURldGFpbBI+CgtrZXJuZWxfd29yaxgIIAEoCzIkLm5vbW9zLnJ1bnRpbWUudjIuS2VybmVsV29ya1NuYXBzaG90SACIAQESMgoIb3BlbmluZ3MYCSADKAsyIC5ub21vcy5ydW50aW1lLnYyLkN1c3RvZHlPcGVuaW5nEkQKCWFydGlmYWN0cxgKIAEoCzIsLm5vbW9zLnJ1bnRpbWUudjIuQXJ0aWZhY3RzVHJhbnNwb3J0U25hcHNob3RIAYgBARI8CglyZXRlbnRpb24YCyADKAsyKS5ub21vcy5ydW50aW1lLnYyLlJldGVudGlvbk91dGNvbWVDb3VudGVyEkIKFGNvcnJlc3BvbmRlbmNlX2hvbGRzGAwgAygLMiQubm9tb3MucnVudGltZS52Mi5Db3JyZXNwb25kZW5jZUhvbGRCDgoMX2tlcm5lbF93b3JrQgwKCl9hcnRpZmFjdHMivwEKF0FydGlmYWN0c1JlcXVlc3RDb3VudGVyEhEKCW9wZXJhdGlvbhgBIAEoCRIPCgdvdXRjb21lGAIgASgJEhAKCHJlcXVlc3RzGAMgASgEEhMKC3dhbGxfbWljcm9zGAQgASgEEhYKDnJlc3BvbnNlX2J5dGVzGAUgASgEEkEKD2xhdGVuY3lfYnVja2V0cxgGIAMoCzIoLm5vbW9zLnJ1bnRpbWUudjIuQXJ0aWZhY3RzTGF0ZW5jeUJ1Y2tldCI9ChZBcnRpZmFjdHNMYXRlbmN5QnVja2V0EhEKCWxlX21pY3JvcxgBIAEoBBIQCghyZXF1ZXN0cxgCIAEoBCK3AQoaQXJ0aWZhY3RzVHJhbnNwb3J0U25hcHNob3QSGwoTc3RhcnRlZF91bml4X21pbGxpcxgBIAEoBBI7Cghjb3VudGVycxgCIAMoCzIpLm5vbW9zLnJ1bnRpbWUudjIuQXJ0aWZhY3RzUmVxdWVzdENvdW50ZXISEQoJaW5fZmxpZ2h0GAMgASgNEiwKJG9sZGVzdF9pbl9mbGlnaHRfc3RhcnRlZF91bml4X21pbGxpcxgEIAEoBCJSChdSZXRlbnRpb25PdXRjb21lQ291bnRlchIPCgdvdXRjb21lGAEgASgJEhQKDHB1YmxpY2F0aW9ucxgCIAEoBBIQCghhdHRlbXB0cxgDIAEoBCJ8ChRLZXJuZWxSZWZyZXNoT3V0Y29tZRIqCgRob3N0GAEgASgLMhwubm9tb3MucnVudGltZS52Mi5Ib3N0SGVhbHRoEg8KB2NoYW5nZWQYAiABKAgSFwoPcHJldmlvdXNfc2hhMjU2GAMgASgJEg4KBnNoYTI1NhgEIAEoCSLJAQoSQ29ycmVzcG9uZGVuY2VIb2xkEhgKEHNvdXJjZV93b3Jrc3BhY2UYASABKAkSGAoQdGFyZ2V0X3dvcmtzcGFjZRgCIAEoCRIZChFzb3VyY2Vfb2ZmZXJfcGF0aBgDIAEoCRIOCgZyZWFzb24YBCABKAkSDgoGZGV0YWlsGAUgASgJEhAKCGZhaWx1cmVzGAYgASgNEhcKD3JldHJ5X2F0X21pbGxpcxgHIAEoBBIZChFoZWxkX3NpbmNlX21pbGxpcxgIIAEoBCL8AQoNUmVzaWRlbmN5SG9zdBIPCgdob3N0X2lkGAEgASgJEg4KBnN0YXR1cxgCIAEoCRIMCgRsaXZlGAMgASgIEhoKEmxhc3RfY2hhbmdlX21pbGxpcxgEIAEoBBIvCgRob3N0GAUgASgLMhwubm9tb3MucnVudGltZS52Mi5Ib3N0SGVhbHRoSACIAQESPAoHcmVmcmVzaBgGIAEoCzImLm5vbW9zLnJ1bnRpbWUudjIuS2VybmVsUmVmcmVzaE91dGNvbWVIAYgBARISCgVlcnJvchgHIAEoCUgCiAEBQgcKBV9ob3N0QgoKCF9yZWZyZXNoQggKBl9lcnJvciKpAQoPUmVzaWRlbmN5UmVwb3J0EgoKAm9rGAEgASgIEhIKCm5vd19taWxsaXMYAiABKAQSFQoNaG9zdF9jYXBhY2l0eRgDIAEoDRISCgpsaXZlX2hvc3RzGAQgASgNEhsKE3Jlc2lkZW50X3dvcmtzcGFjZXMYBSABKA0SLgoFaG9zdHMYBiADKAsyHy5ub21vcy5ydW50aW1lLnYyLlJlc2lkZW5jeUhvc3QimQEKEFBlZXJTdGF0dXNSZXBvcnQSCgoCb2sYASABKAgSEQoJd29ya3NwYWNlGAIgASgJEjYKC3BlZXJfb2ZmaWNlGAMgASgLMiEubm9tb3MucnVudGltZS52Mi5Xb3Jrc3BhY2VTdGF0dXMSLgoIcGh5c2ljYWwYBCABKAsyHC5ub21vcy5ydW50aW1lLnYyLkhvc3RIZWFsdGgiRQoNUmVzdGFydGVkSG9zdBIPCgdob3N0X2lkGAEgASgJEgwKBGxpdmUYAiABKAgSFQoNa2VybmVsX3NoYTI1NhgDIAEoCSIuCgxSZXN0YXJ0RXJyb3ISDwoHaG9zdF9pZBgBIAEoCRINCgVlcnJvchgCIAEoCSKRAQoNUmVzdGFydFJlcG9ydBIKCgJvaxgBIAEoCBIQCghob3N0X2lkcxgCIAMoCRIyCglyZXN0YXJ0ZWQYAyADKAsyHy5ub21vcy5ydW50aW1lLnYyLlJlc3RhcnRlZEhvc3QSLgoGZXJyb3JzGAQgAygLMh4ubm9tb3MucnVudGltZS52Mi5SZXN0YXJ0RXJyb3IqzwIKGlJlc2lkZW50V29ya3NwYWNlUmVhZGluZXNzEiwKKFJFU0lERU5UX1dPUktTUEFDRV9SRUFESU5FU1NfVU5TUEVDSUZJRUQQABIsCihSRVNJREVOVF9XT1JLU1BBQ0VfUkVBRElORVNTX1NRTElURV9PTkxZEAESMQotUkVTSURFTlRfV09SS1NQQUNFX1JFQURJTkVTU19HSVRfQ1VTVE9EWV9PTkxZEAISNwozUkVTSURFTlRfV09SS1NQQUNFX1JFQURJTkVTU19TUUxJVEVfQU5EX0dJVF9BTElHTkVEEAMSOAo0UkVTSURFTlRfV09SS1NQQUNFX1JFQURJTkVTU19TUUxJVEVfR0lUX0ZVTExfSElTVE9SWRAEEi8KK1JFU0lERU5UX1dPUktTUEFDRV9SRUFESU5FU1NfSEVBRFNfRElWRVJHRUQQBSqDAQoTTG9jYWxIaXN0b3J5UG9zdHVyZRIlCiFMT0NBTF9ISVNUT1JZX1BPU1RVUkVfVU5TUEVDSUZJRUQQABIhCh1MT0NBTF9ISVNUT1JZX1BPU1RVUkVfUEFSVElBTBABEiIKHkxPQ0FMX0hJU1RPUllfUE9TVFVSRV9DT01QTEVURRACYgZwcm90bzM", [file_nomos_runtime_v2_custody_desk, file_nomos_kernel_v1_kernel]);
8131
+ var file_nomos_runtime_v2_residency_desk = /* @__PURE__ */ fileDesc("CiVub21vcy9ydW50aW1lL3YyL3Jlc2lkZW5jeV9kZXNrLnByb3RvEhBub21vcy5ydW50aW1lLnYyIhoKGFJlc2lkZW5jeVByZXNzdXJlUmVxdWVzdCJIChVSZXRhaW5Gcm9udGllclJlcXVlc3QSEQoJd29ya3NwYWNlGAEgASgJEg4KBmJyYW5jaBgCIAEoCRIMCgRoZWFkGAMgASgJIm8KGVJlc2lkZW5jeVByZXNzdXJlUmVsaWV2ZWQSGgoSZXZpY3RlZF93b3Jrc3BhY2VzGAEgAygJEhcKD3dhcm1fd29ya3NwYWNlcxgCIAMoCRIdChV3YXJtX3Jlc2lkZW5jeV9taWxsaXMYAyABKAQi6gcKF1Jlc2lkZW50V29ya3NwYWNlRGV0YWlsEhEKCXdvcmtzcGFjZRgBIAEoCRITCgtpZGxlX21pbGxpcxgCIAEoBBIdChByZXBvc2l0b3J5X2J5dGVzGAMgASgESACIAQESKAobbWF0ZXJpYWxpemVkX2Zyb250aWVyX2J5dGVzGAQgASgESAGIAQESPwoJcmVhZGluZXNzGAUgASgOMiwubm9tb3MucnVudGltZS52Mi5SZXNpZGVudFdvcmtzcGFjZVJlYWRpbmVzcxIYCgtzcWxpdGVfaGVhZBgGIAEoCUgCiAEBEhUKCGdpdF9oZWFkGAcgASgJSAOIAQESPgoPaGlzdG9yeV9wb3N0dXJlGAggASgOMiUubm9tb3MucnVudGltZS52Mi5Mb2NhbEhpc3RvcnlQb3N0dXJlEhoKEnNoYWxsb3dfYm91bmRhcmllcxgJIAEoDRIvCiJyZXBvc2l0b3J5X21lYXN1cmVkX2F0X3VuaXhfbWlsbGlzGAogASgESASIAQESLQogZnJvbnRpZXJfbWVhc3VyZWRfYXRfdW5peF9taWxsaXMYCyABKARIBYgBARI7CglwbGFjZW1lbnQYDCABKAsyIy5ub21vcy5ydW50aW1lLnYyLlJlc2lkZW50UGxhY2VtZW50SAaIAQESNQoGb3V0Ym94GA0gASgLMiAubm9tb3MucnVudGltZS52Mi5SZXNpZGVudE91dGJveEgHiAEBEj4KBmNlbnN1cxgOIAEoCzIpLm5vbW9zLnJ1bnRpbWUudjIuUmVzaWRlbnRBZ2dyZWdhdGVDZW5zdXNICIgBARIdChBmdWxsX3JlcGxheV9oZWFkGA8gASgJSAmIAQESIgoVbG9jYWxfaGlzdG9yeV9jb21taXRzGBAgASgESAqIAQESKAobcGxhY2VtZW50X3Vub2JzZXJ2ZWRfcmVhc29uGBEgASgJSAuIAQFCEwoRX3JlcG9zaXRvcnlfYnl0ZXNCHgocX21hdGVyaWFsaXplZF9mcm9udGllcl9ieXRlc0IOCgxfc3FsaXRlX2hlYWRCCwoJX2dpdF9oZWFkQiUKI19yZXBvc2l0b3J5X21lYXN1cmVkX2F0X3VuaXhfbWlsbGlzQiMKIV9mcm9udGllcl9tZWFzdXJlZF9hdF91bml4X21pbGxpc0IMCgpfcGxhY2VtZW50QgkKB19vdXRib3hCCQoHX2NlbnN1c0ITChFfZnVsbF9yZXBsYXlfaGVhZEIYChZfbG9jYWxfaGlzdG9yeV9jb21taXRzQh4KHF9wbGFjZW1lbnRfdW5vYnNlcnZlZF9yZWFzb24iiwIKF1Jlc2lkZW50QWdncmVnYXRlQ2Vuc3VzEgwKBGhlYWQYASABKAkSHAoPYWdncmVnYXRlX2NvdW50GAIgASgESACIAQESFwoKc3RhdGVfcm9vdBgDIAEoCUgBiAEBEjYKCXRvcF90eXBlcxgEIAMoCzIjLm5vbW9zLmtlcm5lbC52MS5BZ2dyZWdhdGVUeXBlQ291bnQSHQoQdHlwZXNfc3RhdGVfcm9vdBgFIAEoCUgCiAEBEhwKFG9ic2VydmVkX3VuaXhfbWlsbGlzGAYgASgEQhIKEF9hZ2dyZWdhdGVfY291bnRCDQoLX3N0YXRlX3Jvb3RCEwoRX3R5cGVzX3N0YXRlX3Jvb3QisQEKFVJlc2lkZW50UGxhY2VtZW50UnVsZRISCgpwZWVyX2NsYXNzGAEgASgJEkAKEGtlcm5lbF9yZXNpZGVuY3kYAiABKA4yJi5ub21vcy5rZXJuZWwudjEuS2VybmVsUmVzaWRlbmN5SW50ZW50EkIKEWN1c3RvZHlfcmV0ZW50aW9uGAMgASgOMicubm9tb3Mua2VybmVsLnYxLkN1c3RvZHlSZXRlbnRpb25JbnRlbnQiqgMKEVJlc2lkZW50UGxhY2VtZW50EhUKCGZyb250aWVyGAEgASgJSACIAQESEwoLZGVjbGFyYXRpb24YAiABKAkSEgoKYWRvcHRlZF9ieRgDIAEoCRI2CgVydWxlcxgEIAMoCzInLm5vbW9zLnJ1bnRpbWUudjIuUmVzaWRlbnRQbGFjZW1lbnRSdWxlEhQKDHJlbW90ZV9uYW1lcxgFIAMoCRIiChpyZWNpcGllbnRfbWFpbGJveF9kZWNsYXJlZBgGIAEoCBJKChplZmZlY3RpdmVfa2VybmVsX3Jlc2lkZW5jeRgHIAEoDjImLm5vbW9zLmtlcm5lbC52MS5LZXJuZWxSZXNpZGVuY3lJbnRlbnQSTAobZWZmZWN0aXZlX2N1c3RvZHlfcmV0ZW50aW9uGAggASgOMicubm9tb3Mua2VybmVsLnYxLkN1c3RvZHlSZXRlbnRpb25JbnRlbnQSHgoWZWZmZWN0aXZlX3JlbW90ZV9uYW1lcxgJIAMoCRIcChRvYnNlcnZlZF91bml4X21pbGxpcxgKIAEoBEILCglfZnJvbnRpZXIikQEKDlJlc2lkZW50T3V0Ym94Eg8KB2VudHJpZXMYASABKA0SFAoMd29ya19wZW5kaW5nGAIgASgIEiEKFG5leHRfZHVlX3VuaXhfbWlsbGlzGAMgASgESACIAQESHAoUb2JzZXJ2ZWRfdW5peF9taWxsaXMYBCABKARCFwoVX25leHRfZHVlX3VuaXhfbWlsbGlzIuABChFLZXJuZWxXb3JrQ291bnRlchIOCgZmYW1pbHkYASABKAkSEQoJb3BlcmF0aW9uGAIgASgJEg0KBWNhbGxzGAMgASgEEhAKCGZhaWx1cmVzGAQgASgEEhIKCmNwdV9taWNyb3MYBSABKAQSEwoLd2FsbF9taWNyb3MYBiABKAQSOgoLY3B1X2J1Y2tldHMYByADKAsyJS5ub21vcy5ydW50aW1lLnYyLktlcm5lbFdvcmtDcHVCdWNrZXQSIgoabGFzdF9jb21wbGV0ZWRfdW5peF9taWxsaXMYCCABKAQiNwoTS2VybmVsV29ya0NwdUJ1Y2tldBIRCglsZV9taWNyb3MYASABKAQSDQoFY2FsbHMYAiABKAQiUgoQQWN0aXZlS2VybmVsV29yaxIOCgZmYW1pbHkYASABKAkSEQoJb3BlcmF0aW9uGAIgASgJEhsKE3N0YXJ0ZWRfdW5peF9taWxsaXMYAyABKAQiygEKEktlcm5lbFdvcmtTbmFwc2hvdBIbChNzdGFydGVkX3VuaXhfbWlsbGlzGAEgASgEEhwKFG9ic2VydmVkX3VuaXhfbWlsbGlzGAIgASgEEjUKCGNvdW50ZXJzGAMgAygLMiMubm9tb3MucnVudGltZS52Mi5LZXJuZWxXb3JrQ291bnRlchI3CgZhY3RpdmUYBCABKAsyIi5ub21vcy5ydW50aW1lLnYyLkFjdGl2ZUtlcm5lbFdvcmtIAIgBAUIJCgdfYWN0aXZlIoEFCgpIb3N0SGVhbHRoEg8KB3JlcGxpY2EYASABKAQSFQoNa2VybmVsX3NoYTI1NhgCIAEoCRIbChNyZXNpZGVudF93b3Jrc3BhY2VzGAMgAygJEhoKEndhc21fbGluZWFyX21lbV9tYhgEIAEoARIWCg5wcm9jZXNzX3Jzc19tYhgFIAEoARIXCg9yc3NfY3JpdGljYWxfbWIYBiABKA0SPAoJcmVzaWRlbnRzGAcgAygLMikubm9tb3MucnVudGltZS52Mi5SZXNpZGVudFdvcmtzcGFjZURldGFpbBI+CgtrZXJuZWxfd29yaxgIIAEoCzIkLm5vbW9zLnJ1bnRpbWUudjIuS2VybmVsV29ya1NuYXBzaG90SACIAQESMgoIb3BlbmluZ3MYCSADKAsyIC5ub21vcy5ydW50aW1lLnYyLkN1c3RvZHlPcGVuaW5nEkQKCWFydGlmYWN0cxgKIAEoCzIsLm5vbW9zLnJ1bnRpbWUudjIuQXJ0aWZhY3RzVHJhbnNwb3J0U25hcHNob3RIAYgBARI8CglyZXRlbnRpb24YCyADKAsyKS5ub21vcy5ydW50aW1lLnYyLlJldGVudGlvbk91dGNvbWVDb3VudGVyEkIKFGNvcnJlc3BvbmRlbmNlX2hvbGRzGAwgAygLMiQubm9tb3MucnVudGltZS52Mi5Db3JyZXNwb25kZW5jZUhvbGQSPQoHaW5ncmVzcxgNIAEoCzInLm5vbW9zLnJ1bnRpbWUudjIuS2VybmVsSW5ncmVzc1NuYXBzaG90SAKIAQFCDgoMX2tlcm5lbF93b3JrQgwKCl9hcnRpZmFjdHNCCgoIX2luZ3Jlc3MiuQIKFUtlcm5lbEluZ3Jlc3NTbmFwc2hvdBIPCgdwZW5kaW5nGAEgASgNEg0KBWJ5dGVzGAIgASgEEhMKC21heF9wZW5kaW5nGAMgASgNEhEKCW1heF9ieXRlcxgEIAEoBBIUCgxmaWxsX3BlcmNlbnQYBSABKAESGQoRcGVha19maWxsX3BlcmNlbnQYBiABKAESEAoIcmVmdXNhbHMYByABKAQSDgoGcG9zdGVkGAggASgNEhoKEndhaXRpbmdfZm9yZWdyb3VuZBgJIAEoDRIaChJ3YWl0aW5nX2JhY2tncm91bmQYCiABKA0SGAoQaW5fZmxpZ2h0X3dpbmRvdxgLIAEoDRIRCglhYmFuZG9uZWQYDCABKAQSIAoYbGF3X2ltcG9ydHNfZGVkdXBsaWNhdGVkGA0gASgEIr8BChdBcnRpZmFjdHNSZXF1ZXN0Q291bnRlchIRCglvcGVyYXRpb24YASABKAkSDwoHb3V0Y29tZRgCIAEoCRIQCghyZXF1ZXN0cxgDIAEoBBITCgt3YWxsX21pY3JvcxgEIAEoBBIWCg5yZXNwb25zZV9ieXRlcxgFIAEoBBJBCg9sYXRlbmN5X2J1Y2tldHMYBiADKAsyKC5ub21vcy5ydW50aW1lLnYyLkFydGlmYWN0c0xhdGVuY3lCdWNrZXQiPQoWQXJ0aWZhY3RzTGF0ZW5jeUJ1Y2tldBIRCglsZV9taWNyb3MYASABKAQSEAoIcmVxdWVzdHMYAiABKAQitwEKGkFydGlmYWN0c1RyYW5zcG9ydFNuYXBzaG90EhsKE3N0YXJ0ZWRfdW5peF9taWxsaXMYASABKAQSOwoIY291bnRlcnMYAiADKAsyKS5ub21vcy5ydW50aW1lLnYyLkFydGlmYWN0c1JlcXVlc3RDb3VudGVyEhEKCWluX2ZsaWdodBgDIAEoDRIsCiRvbGRlc3RfaW5fZmxpZ2h0X3N0YXJ0ZWRfdW5peF9taWxsaXMYBCABKAQiUgoXUmV0ZW50aW9uT3V0Y29tZUNvdW50ZXISDwoHb3V0Y29tZRgBIAEoCRIUCgxwdWJsaWNhdGlvbnMYAiABKAQSEAoIYXR0ZW1wdHMYAyABKAQifAoUS2VybmVsUmVmcmVzaE91dGNvbWUSKgoEaG9zdBgBIAEoCzIcLm5vbW9zLnJ1bnRpbWUudjIuSG9zdEhlYWx0aBIPCgdjaGFuZ2VkGAIgASgIEhcKD3ByZXZpb3VzX3NoYTI1NhgDIAEoCRIOCgZzaGEyNTYYBCABKAkiyQEKEkNvcnJlc3BvbmRlbmNlSG9sZBIYChBzb3VyY2Vfd29ya3NwYWNlGAEgASgJEhgKEHRhcmdldF93b3Jrc3BhY2UYAiABKAkSGQoRc291cmNlX29mZmVyX3BhdGgYAyABKAkSDgoGcmVhc29uGAQgASgJEg4KBmRldGFpbBgFIAEoCRIQCghmYWlsdXJlcxgGIAEoDRIXCg9yZXRyeV9hdF9taWxsaXMYByABKAQSGQoRaGVsZF9zaW5jZV9taWxsaXMYCCABKAQi/AEKDVJlc2lkZW5jeUhvc3QSDwoHaG9zdF9pZBgBIAEoCRIOCgZzdGF0dXMYAiABKAkSDAoEbGl2ZRgDIAEoCBIaChJsYXN0X2NoYW5nZV9taWxsaXMYBCABKAQSLwoEaG9zdBgFIAEoCzIcLm5vbW9zLnJ1bnRpbWUudjIuSG9zdEhlYWx0aEgAiAEBEjwKB3JlZnJlc2gYBiABKAsyJi5ub21vcy5ydW50aW1lLnYyLktlcm5lbFJlZnJlc2hPdXRjb21lSAGIAQESEgoFZXJyb3IYByABKAlIAogBAUIHCgVfaG9zdEIKCghfcmVmcmVzaEIICgZfZXJyb3IiqQEKD1Jlc2lkZW5jeVJlcG9ydBIKCgJvaxgBIAEoCBISCgpub3dfbWlsbGlzGAIgASgEEhUKDWhvc3RfY2FwYWNpdHkYAyABKA0SEgoKbGl2ZV9ob3N0cxgEIAEoDRIbChNyZXNpZGVudF93b3Jrc3BhY2VzGAUgASgNEi4KBWhvc3RzGAYgAygLMh8ubm9tb3MucnVudGltZS52Mi5SZXNpZGVuY3lIb3N0IpkBChBQZWVyU3RhdHVzUmVwb3J0EgoKAm9rGAEgASgIEhEKCXdvcmtzcGFjZRgCIAEoCRI2CgtwZWVyX29mZmljZRgDIAEoCzIhLm5vbW9zLnJ1bnRpbWUudjIuV29ya3NwYWNlU3RhdHVzEi4KCHBoeXNpY2FsGAQgASgLMhwubm9tb3MucnVudGltZS52Mi5Ib3N0SGVhbHRoIkUKDVJlc3RhcnRlZEhvc3QSDwoHaG9zdF9pZBgBIAEoCRIMCgRsaXZlGAIgASgIEhUKDWtlcm5lbF9zaGEyNTYYAyABKAkiLgoMUmVzdGFydEVycm9yEg8KB2hvc3RfaWQYASABKAkSDQoFZXJyb3IYAiABKAkikQEKDVJlc3RhcnRSZXBvcnQSCgoCb2sYASABKAgSEAoIaG9zdF9pZHMYAiADKAkSMgoJcmVzdGFydGVkGAMgAygLMh8ubm9tb3MucnVudGltZS52Mi5SZXN0YXJ0ZWRIb3N0Ei4KBmVycm9ycxgEIAMoCzIeLm5vbW9zLnJ1bnRpbWUudjIuUmVzdGFydEVycm9yKs8CChpSZXNpZGVudFdvcmtzcGFjZVJlYWRpbmVzcxIsCihSRVNJREVOVF9XT1JLU1BBQ0VfUkVBRElORVNTX1VOU1BFQ0lGSUVEEAASLAooUkVTSURFTlRfV09SS1NQQUNFX1JFQURJTkVTU19TUUxJVEVfT05MWRABEjEKLVJFU0lERU5UX1dPUktTUEFDRV9SRUFESU5FU1NfR0lUX0NVU1RPRFlfT05MWRACEjcKM1JFU0lERU5UX1dPUktTUEFDRV9SRUFESU5FU1NfU1FMSVRFX0FORF9HSVRfQUxJR05FRBADEjgKNFJFU0lERU5UX1dPUktTUEFDRV9SRUFESU5FU1NfU1FMSVRFX0dJVF9GVUxMX0hJU1RPUlkQBBIvCitSRVNJREVOVF9XT1JLU1BBQ0VfUkVBRElORVNTX0hFQURTX0RJVkVSR0VEEAUqgwEKE0xvY2FsSGlzdG9yeVBvc3R1cmUSJQohTE9DQUxfSElTVE9SWV9QT1NUVVJFX1VOU1BFQ0lGSUVEEAASIQodTE9DQUxfSElTVE9SWV9QT1NUVVJFX1BBUlRJQUwQARIiCh5MT0NBTF9ISVNUT1JZX1BPU1RVUkVfQ09NUExFVEUQAmIGcHJvdG8z", [file_nomos_runtime_v2_custody_desk, file_nomos_kernel_v1_kernel]);
8131
8132
  var RetainFrontierRequestSchema = /* @__PURE__ */ messageDesc(file_nomos_runtime_v2_residency_desk, 1);
8132
8133
  var ResidencyPressureRelievedSchema = /* @__PURE__ */ messageDesc(file_nomos_runtime_v2_residency_desk, 2);
8133
8134
  var ResidentPlacementSchema = /* @__PURE__ */ messageDesc(file_nomos_runtime_v2_residency_desk, 6);
@@ -8136,12 +8137,12 @@
8136
8137
  var KernelWorkCpuBucketSchema = /* @__PURE__ */ messageDesc(file_nomos_runtime_v2_residency_desk, 9);
8137
8138
  var ActiveKernelWorkSchema = /* @__PURE__ */ messageDesc(file_nomos_runtime_v2_residency_desk, 10);
8138
8139
  var KernelWorkSnapshotSchema = /* @__PURE__ */ messageDesc(file_nomos_runtime_v2_residency_desk, 11);
8139
- var CorrespondenceHoldSchema = /* @__PURE__ */ messageDesc(file_nomos_runtime_v2_residency_desk, 18);
8140
+ var CorrespondenceHoldSchema = /* @__PURE__ */ messageDesc(file_nomos_runtime_v2_residency_desk, 19);
8140
8141
  var LocalHistoryPostureSchema = /* @__PURE__ */ enumDesc(file_nomos_runtime_v2_residency_desk, 1);
8141
8142
  var LocalHistoryPosture = /* @__PURE__ */ tsEnum(LocalHistoryPostureSchema);
8142
8143
 
8143
8144
  // ../../adapter/proto/nomos/runtime/v2/runtime_pb.js
8144
- var file_nomos_runtime_v2_runtime = /* @__PURE__ */ fileDesc("Ch5ub21vcy9ydW50aW1lL3YyL3J1bnRpbWUucHJvdG8SEG5vbW9zLnJ1bnRpbWUudjIi7x4KDlJ1bnRpbWVSZXF1ZXN0EhgKEHByb3RvY29sX3ZlcnNpb24YASABKA0SEgoKcmVxdWVzdF9pZBgCIAEoBBIyCgV0cmFjZRgDIAEoCzIeLm5vbW9zLnJ1bnRpbWUudjIuVHJhY2VDb250ZXh0SAGIAQESNwoGdGFyZ2V0GAQgASgLMiIubm9tb3MucnVudGltZS52Mi5JbnZvY2F0aW9uVGFyZ2V0SAKIAQESOgoLa2VybmVsX2NhbGwYCiABKAsyIy5ub21vcy5ydW50aW1lLnYyLktlcm5lbENhbGxSZXF1ZXN0SAASQgoPbGlzdF93b3Jrc3BhY2VzGAwgASgLMicubm9tb3MucnVudGltZS52Mi5MaXN0V29ya3NwYWNlc1JlcXVlc3RIABJACg5zeW5jX3dvcmtzcGFjZRgOIAEoCzImLm5vbW9zLnJ1bnRpbWUudjIuU3luY1dvcmtzcGFjZVJlcXVlc3RIABIvCgV3YXRjaBgRIAEoCzIeLm5vbW9zLnJ1bnRpbWUudjIuV2F0Y2hSZXF1ZXN0SAASMwoHdW53YXRjaBgSIAEoCzIgLm5vbW9zLnJ1bnRpbWUudjIuVW53YXRjaFJlcXVlc3RIABJACg5wcmVwYXJlX2RvbWFpbhgTIAEoCzImLm5vbW9zLnJ1bnRpbWUudjIuUHJlcGFyZURvbWFpblJlcXVlc3RIABI6CgtjbG9zZV9yZWFsbRgVIAEoCzIjLm5vbW9zLnJ1bnRpbWUudjIuQ2xvc2VSZWFsbVJlcXVlc3RIABI6CgtkZWFkX2xldHRlchgWIAEoCzIjLm5vbW9zLnJ1bnRpbWUudjIuRGVhZExldHRlclJlcXVlc3RIABJACg5oaXN0b3JpY19xdWVyeRgXIAEoCzImLm5vbW9zLnJ1bnRpbWUudjIuSGlzdG9yaWNRdWVyeVJlcXVlc3RIABJEChB3b3Jrc3BhY2Vfc3RhdHVzGBogASgLMigubm9tb3MucnVudGltZS52Mi5Xb3Jrc3BhY2VTdGF0dXNSZXF1ZXN0SAASTwoWcmVtb3RlX2dlbmVyYXRlZF9vZmZlchgbIAEoCzItLm5vbW9zLnJ1bnRpbWUudjIuUmVtb3RlR2VuZXJhdGVkT2ZmZXJSZXF1ZXN0SAASSgoTd29ya3NwYWNlX3BsYWNlbWVudBgcIAEoCzIrLm5vbW9zLnJ1bnRpbWUudjIuV29ya3NwYWNlUGxhY2VtZW50UmVxdWVzdEgAEkoKE3JlZnJlc2hfY3JlZGVudGlhbHMYHSABKAsyKy5ub21vcy5ydW50aW1lLnYyLlJlZnJlc2hDcmVkZW50aWFsc1JlcXVlc3RIABJVChlkZWxpdmVyX3dvcmtzcGFjZV9lZmZlY3RzGB4gASgLMjAubm9tb3MucnVudGltZS52Mi5EZWxpdmVyV29ya3NwYWNlRWZmZWN0c1JlcXVlc3RIABJKChNhdXRob3JpbmdfcHJlZmxpZ2h0GCAgASgLMisubm9tb3MucnVudGltZS52Mi5BdXRob3JpbmdQcmVmbGlnaHRSZXF1ZXN0SAASTwoWbGlzdF93b3Jrc3BhY2VfbW9tZW50cxghIAEoCzItLm5vbW9zLnJ1bnRpbWUudjIuTGlzdFdvcmtzcGFjZU1vbWVudHNSZXF1ZXN0SAASWQobZXN0aW1hdGVfd29ya3NwYWNlX3RyYW5zZmVyGCIgASgLMjIubm9tb3MucnVudGltZS52Mi5Fc3RpbWF0ZVdvcmtzcGFjZVRyYW5zZmVyUmVxdWVzdEgAEk8KFnJlYWRfd29ya3NwYWNlX2dlbmVzaXMYIyABKAsyLS5ub21vcy5ydW50aW1lLnYyLlJlYWRXb3Jrc3BhY2VHZW5lc2lzUmVxdWVzdEgAEk0KFWxpc3RfY2hpbGRfd29ya3NwYWNlcxgkIAEoCzIsLm5vbW9zLnJ1bnRpbWUudjIuTGlzdENoaWxkV29ya3NwYWNlc1JlcXVlc3RIABI3CglmcmFtZXdvcmsYJSABKAsyIi5ub21vcy5ydW50aW1lLnYyLkZyYW1ld29ya1JlcXVlc3RIABJSChdjb250aW51ZV9jb3JyZXNwb25kZW5jZRgmIAEoCzIvLm5vbW9zLnJ1bnRpbWUudjIuQ29udGludWVDb3JyZXNwb25kZW5jZVJlcXVlc3RIABJVChlpZGVudGl0eV9wcm92aWRlcl93aXRuZXNzGCcgASgLMjAubm9tb3MucnVudGltZS52Mi5JZGVudGl0eVByb3ZpZGVyV2l0bmVzc1JlcXVlc3RIABJEChBtYWludGVuYW5jZV90aWNrGCggASgLMigubm9tb3MucnVudGltZS52Mi5NYWludGVuYW5jZVRpY2tSZXF1ZXN0SAASSAoScmVzaWRlbmN5X3ByZXNzdXJlGCkgASgLMioubm9tb3MucnVudGltZS52Mi5SZXNpZGVuY3lQcmVzc3VyZVJlcXVlc3RIABJEChBjdXN0b2R5X2FkdmFuY2VkGCogASgLMigubm9tb3MucnVudGltZS52Mi5DdXN0b2R5QWR2YW5jZWRSZXF1ZXN0SAASSgoUYWRtaXRfY3VzdG9keV9vZmZlcnMYKyABKAsyKi5ub21vcy5ydW50aW1lLnYyLkN1c3RvZHlPZmZlckJhdGNoUmVxdWVzdEgAEkkKE2luc3BlY3RfbGF3X3BhY2thZ2UYLCABKAsyKi5ub21vcy5ydW50aW1lLnYyLkluc3BlY3RMYXdQYWNrYWdlUmVxdWVzdEgAEkkKE2NvbnRpbnVlX2xvY2FsX3JlYWQYLSABKAsyKi5ub21vcy5ydW50aW1lLnYyLkNvbnRpbnVlTG9jYWxSZWFkUmVxdWVzdEgAEkIKD3JldGFpbl9mcm9udGllchguIAEoCzInLm5vbW9zLnJ1bnRpbWUudjIuUmV0YWluRnJvbnRpZXJSZXF1ZXN0SAASPQoOc29ja2V0X3JlY2VpcHQYLyABKAsyIy5ub21vcy5ydW50aW1lLnYyLlBlZXJTb2NrZXRSZWNlaXB0SAASRwoSZXhwb3J0X2xpdmVfb2ZmZXJzGDAgASgLMikubm9tb3MucnVudGltZS52Mi5FeHBvcnRMaXZlT2ZmZXJzUmVxdWVzdEgAEkoKE3ByZXBhcmVfYXBwbGljYXRpb24YMSABKAsyKy5ub21vcy5ydW50aW1lLnYyLlByZXBhcmVBcHBsaWNhdGlvblJlcXVlc3RIABJMChRhd2FpdF9hdXRoZW50aWNhdGlvbhgyIAEoCzIsLm5vbW9zLnJ1bnRpbWUudjIuQXdhaXRBdXRoZW50aWNhdGlvblJlcXVlc3RIABJQChZyZWNvdmVyX2NvcnJlc3BvbmRlbmNlGDMgASgLMi4ubm9tb3MucnVudGltZS52Mi5SZWNvdmVyQ29ycmVzcG9uZGVuY2VSZXF1ZXN0SAASSwoUb3Blbl9yZWNlaXZpbmdfZ3JvdXAYNCABKAsyKy5ub21vcy5ydW50aW1lLnYyLk9wZW5SZWNlaXZpbmdHcm91cFJlcXVlc3RIABJTChhjb252ZXJnZV9yZWNlaXZpbmdfZ3JvdXAYNSABKAsyLy5ub21vcy5ydW50aW1lLnYyLkNvbnZlcmdlUmVjZWl2aW5nR3JvdXBSZXF1ZXN0SAASUQoXYWRvcHRfYXBwbGljYXRpb25fbW9kZWwYNiABKAsyLi5ub21vcy5ydW50aW1lLnYyLkFkb3B0QXBwbGljYXRpb25Nb2RlbFJlcXVlc3RIABJPChZyZXNvbHZlX3dvcmtzcGFjZV9uYW1lGDcgASgLMi0ubm9tb3MucnVudGltZS52Mi5SZXNvbHZlV29ya3NwYWNlTmFtZVJlcXVlc3RIABJTChhjaGVja19yZWZlcmVuY2VfdmVyc2lvbnMYOCABKAsyLy5ub21vcy5ydW50aW1lLnYyLkNoZWNrUmVmZXJlbmNlVmVyc2lvbnNSZXF1ZXN0SAASUQoXZGVsaXZlcl9odHRwX29ibGlnYXRpb24YOSABKAsyLi5ub21vcy5ydW50aW1lLnYyLkRlbGl2ZXJIdHRwT2JsaWdhdGlvblJlcXVlc3RIABJXChpyZWZyZXNoX3JlcGxpY2FfY3JlZGVudGlhbBg6IAEoCzIxLm5vbW9zLnJ1bnRpbWUudjIuUmVmcmVzaFJlcGxpY2FDcmVkZW50aWFsUmVxdWVzdEgAEjwKDGJpbmRfc2Vzc2lvbhg7IAEoCzIkLm5vbW9zLnJ1bnRpbWUudjIuQmluZFNlc3Npb25SZXF1ZXN0SAASUAoXcHJldmlld19sb2NhbF9jb3B5X2Ryb3AYPCABKAsyLS5ub21vcy5ydW50aW1lLnYyLlByZXZpZXdMb2NhbENvcHlEcm9wUmVxdWVzdEgAEkEKD2Ryb3BfbG9jYWxfY29weRg9IAEoCzImLm5vbW9zLnJ1bnRpbWUudjIuRHJvcExvY2FsQ29weVJlcXVlc3RIABJXChpjb25maWd1cmVfcHJvdmlkZXJfb3JpZ2lucxg+IAEoCzIxLm5vbW9zLnJ1bnRpbWUudjIuQ29uZmlndXJlUHJvdmlkZXJPcmlnaW5zUmVxdWVzdEgAEkIKD2ZldGNoX3dvcmtzcGFjZRg/IAEoCzInLm5vbW9zLnJ1bnRpbWUudjIuRmV0Y2hXb3Jrc3BhY2VSZXF1ZXN0SAASSwoUcHJvdmlkZV9sYXdfcHJvZHVjdHMYQCABKAsyKy5ub21vcy5ydW50aW1lLnYyLlByb3ZpZGVMYXdQcm9kdWN0c1JlcXVlc3RIABJAChFzZXJ2ZV9saXZlX3N0cmVhbRhBIAEoCzIjLm5vbW9zLnJ1bnRpbWUudjIuTGl2ZVN0cmVhbVJlcXVlc3RIAEIJCgdjb21tYW5kQggKBl90cmFjZUIJCgdfdGFyZ2V0SgQICxAMSgQIDRAOSgQIDxAQSgQIEBARSgQIFBAVSgQIGBAZSgQIGRAaSgQIHxAgUgdjb25uZWN0Ug9zdGFydF9hdXRvX3N5bmNSDnN0b3BfYXV0b19zeW5jUhJzbmFwc2hvdF93b3Jrc3BhY2VSFXJlc29sdmVfY3VzdG9keV9icmVha1IPbW9kZWxfbGlmZWN5Y2xlUh1lc3RhYmxpc2hfYXBwbGljYXRpb25fY3VzdG9keVIRYWNxdWlyZV93b3Jrc3BhY2UiNgoQSW52b2NhdGlvblRhcmdldBIRCgl3b3Jrc3BhY2UYASABKAkSDwoHc2Vzc2lvbhgCIAEoCSLRHgoPUnVudGltZVJlc3BvbnNlEhgKEHByb3RvY29sX3ZlcnNpb24YASABKA0SEgoKcmVxdWVzdF9pZBgCIAEoBBIzCgdmYWlsdXJlGAogASgLMiAubm9tb3MucnVudGltZS52Mi5SdW50aW1lRmFpbHVyZUgAEjQKC2tlcm5lbF9jYWxsGAsgASgLMh0ubm9tb3Mua2VybmVsLnYxLkNhbGxSZXNwb25zZUgAEjkKDndvcmtzcGFjZV9saXN0GA0gASgLMh8ubm9tb3MucnVudGltZS52Mi5Xb3Jrc3BhY2VMaXN0SAASQQoOc3luY193b3Jrc3BhY2UYDyABKAsyJy5ub21vcy5ydW50aW1lLnYyLlN5bmNXb3Jrc3BhY2VSZXNwb25zZUgAEjcKDXdhdGNoX3N0YXJ0ZWQYEiABKAsyHi5ub21vcy5ydW50aW1lLnYyLldhdGNoU3RhcnRlZEgAEjcKDXdhdGNoX3N0b3BwZWQYEyABKAsyHi5ub21vcy5ydW50aW1lLnYyLldhdGNoU3RvcHBlZEgAEjsKD2RvbWFpbl9wcmVwYXJlZBgUIAEoCzIgLm5vbW9zLnJ1bnRpbWUudjIuRG9tYWluUHJlcGFyZWRIABI1CgxyZWFsbV9jbG9zZWQYFiABKAsyHS5ub21vcy5ydW50aW1lLnYyLlJlYWxtQ2xvc2VkSAASMwoHYmxvY2tlZBgXIAEoCzIgLm5vbW9zLnJ1bnRpbWUudjIuUnVudGltZUJsb2NrZWRIABJIChZyZW1vdGVfb2ZmZXJfYWRtaXNzaW9uGBggASgLMiYubm9tb3MucnVudGltZS52Mi5SZW1vdGVPZmZlckFkbWlzc2lvbkgAEjsKC2RlYWRfbGV0dGVyGBkgASgLMiQubm9tb3MucnVudGltZS52Mi5EZWFkTGV0dGVyUmVzcG9uc2VIABI9ChB3b3Jrc3BhY2Vfc3RhdHVzGBwgASgLMiEubm9tb3MucnVudGltZS52Mi5Xb3Jrc3BhY2VTdGF0dXNIABJQChZyZW1vdGVfZ2VuZXJhdGVkX29mZmVyGB0gASgLMi4ubm9tb3MucnVudGltZS52Mi5SZW1vdGVHZW5lcmF0ZWRPZmZlckFjY2VwdGVkSAASSAoTd29ya3NwYWNlX3BsYWNlbWVudBgeIAEoCzIpLm5vbW9zLnJ1bnRpbWUudjIuV29ya3NwYWNlUGxhY2VtZW50U3RhdGVIABJHChVjcmVkZW50aWFsc19yZWZyZXNoZWQYHyABKAsyJi5ub21vcy5ydW50aW1lLnYyLkNyZWRlbnRpYWxzUmVmcmVzaGVkSAASUgobd29ya3NwYWNlX2VmZmVjdHNfZGVsaXZlcmVkGCAgASgLMisubm9tb3MucnVudGltZS52Mi5Xb3Jrc3BhY2VFZmZlY3RzRGVsaXZlcmVkSAASSQoTYXV0aG9yaW5nX3ByZWZsaWdodBghIAEoCzIqLm5vbW9zLnJ1bnRpbWUudjIuQXV0aG9yaW5nUHJlZmxpZ2h0UmVzdWx0SAASQgoRd29ya3NwYWNlX21vbWVudHMYIiABKAsyJS5ub21vcy5ydW50aW1lLnYyLldvcmtzcGFjZU1vbWVudExpc3RIABJSCht3b3Jrc3BhY2VfdHJhbnNmZXJfZXN0aW1hdGUYIyABKAsyKy5ub21vcy5ydW50aW1lLnYyLldvcmtzcGFjZVRyYW5zZmVyRXN0aW1hdGVIABI/ChF3b3Jrc3BhY2VfZ2VuZXNpcxgkIAEoCzIiLm5vbW9zLnJ1bnRpbWUudjIuV29ya3NwYWNlR2VuZXNpc0gAEkAKEGNoaWxkX3dvcmtzcGFjZXMYJSABKAsyJC5ub21vcy5ydW50aW1lLnYyLkNoaWxkV29ya3NwYWNlTGlzdEgAEjgKCWZyYW1ld29yaxgmIAEoCzIjLm5vbW9zLnJ1bnRpbWUudjIuRnJhbWV3b3JrUmVzcG9uc2VIABJJChZjb3JyZXNwb25kZW5jZV9wZW5kaW5nGCcgASgLMicubm9tb3MucnVudGltZS52Mi5Db3JyZXNwb25kZW5jZVBlbmRpbmdIABJTChlpZGVudGl0eV9wcm92aWRlcl93aXRuZXNzGCggASgLMi4ubm9tb3MucnVudGltZS52Mi5JZGVudGl0eVByb3ZpZGVyV2l0bmVzc1JlYWR5SAASQQoSbWFpbnRlbmFuY2VfdGlja2VkGCkgASgLMiMubm9tb3MucnVudGltZS52Mi5NYWludGVuYW5jZVRpY2tlZEgAElIKG3Jlc2lkZW5jeV9wcmVzc3VyZV9yZWxpZXZlZBgqIAEoCzIrLm5vbW9zLnJ1bnRpbWUudjIuUmVzaWRlbmN5UHJlc3N1cmVSZWxpZXZlZEgAEkcKFW1haW50ZW5hbmNlX3NjaGVkdWxlZBgrIAEoCzImLm5vbW9zLnJ1bnRpbWUudjIuTWFpbnRlbmFuY2VTY2hlZHVsZWRIABJFChdjdXN0b2R5X29mZmVyc19hZG1pdHRlZBgsIAEoCzIiLm5vbW9zLnJ1bnRpbWUudjIuQ3VzdG9keUFkbWlzc2lvbkgAEkgKFmxhd19wYWNrYWdlX2luc3BlY3Rpb24YLSABKAsyJi5ub21vcy5ydW50aW1lLnYyLkxhd1BhY2thZ2VJbnNwZWN0aW9uSAASQAoSbG9jYWxfcmVhZF9wZW5kaW5nGC4gASgLMiIubm9tb3MucnVudGltZS52Mi5Mb2NhbFJlYWRQZW5kaW5nSAASPwoRZnJvbnRpZXJfcmV0YWluZWQYLyABKAsyIi5ub21vcy5ydW50aW1lLnYyLkZyb250aWVyUmV0YWluZWRIABJFChRhcHBsaWNhdGlvbl9wcmVwYXJlZBgzIAEoCzIlLm5vbW9zLnJ1bnRpbWUudjIuQXBwbGljYXRpb25QcmVwYXJlZEgAEk0KGGF1dGhlbnRpY2F0aW9uX3JlYWRpbmVzcxgyIAEoCzIpLm5vbW9zLnJ1bnRpbWUudjIuQXV0aGVudGljYXRpb25SZWFkaW5lc3NIABI/Cg9zb2NrZXRfb2JzZXJ2ZWQYMCABKAsyJC5ub21vcy5ydW50aW1lLnYyLlBlZXJTb2NrZXRPYnNlcnZlZEgAEkEKC2xpdmVfb2ZmZXJzGDEgASgLMioubm9tb3MucnVudGltZS52Mi5DdXN0b2R5T2ZmZXJCYXRjaFJlcXVlc3RIABJNChhjb3JyZXNwb25kZW5jZV9yZWNvdmVyZWQYNCABKAsyKS5ub21vcy5ydW50aW1lLnYyLkNvcnJlc3BvbmRlbmNlUmVjb3ZlcmVkSAASSAoWcmVjZWl2aW5nX2dyb3VwX29wZW5lZBg1IAEoCzImLm5vbW9zLnJ1bnRpbWUudjIuUmVjZWl2aW5nR3JvdXBPcGVuZWRIABJSChtyZWNlaXZpbmdfZ3JvdXBfY29udmVyZ2VuY2UYNiABKAsyKy5ub21vcy5ydW50aW1lLnYyLlJlY2VpdmluZ0dyb3VwQ29udmVyZ2VuY2VIABJOChlhcHBsaWNhdGlvbl9tb2RlbF9hZG9wdGVkGDcgASgLMikubm9tb3MucnVudGltZS52Mi5BcHBsaWNhdGlvbk1vZGVsQWRvcHRlZEgAEkoKF3Jlc29sdmVkX3dvcmtzcGFjZV9uYW1lGDggASgLMicubm9tb3MucnVudGltZS52Mi5SZXNvbHZlZFdvcmtzcGFjZU5hbWVIABJGChJyZWZlcmVuY2VfdmVyc2lvbnMYOSABKAsyKC5ub21vcy5ydW50aW1lLnYyLlJlZmVyZW5jZVZlcnNpb25SZXBvcnRIABI/ChF3b3Jrc3BhY2Vfb3BlbmluZxg6IAEoCzIiLm5vbW9zLnJ1bnRpbWUudjIuV29ya3NwYWNlT3BlbmluZ0gAEk4KGWh0dHBfb2JsaWdhdGlvbl9kZWxpdmVyZWQYOyABKAsyKS5ub21vcy5ydW50aW1lLnYyLkh0dHBPYmxpZ2F0aW9uRGVsaXZlcmVkSAASNwoNc2Vzc2lvbl9ib3VuZBg8IAEoCzIeLm5vbW9zLnJ1bnRpbWUudjIuU2Vzc2lvbkJvdW5kSAASOwoLdW5hdmFpbGFibGUYPSABKAsyJC5ub21vcy5ydW50aW1lLnYyLlJ1bnRpbWVVbmF2YWlsYWJsZUgAEjMKB3JlZnVzZWQYPiABKAsyIC5ub21vcy5ydW50aW1lLnYyLlJ1bnRpbWVSZWZ1c2FsSAASPQoQaGlzdG9yeV9hY3F1aXJlZBg/IAEoCzIhLm5vbW9zLnJ1bnRpbWUudjIuSGlzdG9yeUFjcXVpcmVkSAASSQoXbG9jYWxfY29weV9kcm9wX3ByZXZpZXcYQCABKAsyJi5ub21vcy5ydW50aW1lLnYyLkxvY2FsQ29weURyb3BQcmV2aWV3SAASTQoZbG9jYWxfY29weV9kcm9wX3NjaGVkdWxlZBhBIAEoCzIoLm5vbW9zLnJ1bnRpbWUudjIuTG9jYWxDb3B5RHJvcFNjaGVkdWxlZEgAElIKG3Byb3ZpZGVyX29yaWdpbnNfY29uZmlndXJlZBhCIAEoCzIrLm5vbW9zLnJ1bnRpbWUudjIuUHJvdmlkZXJPcmlnaW5zQ29uZmlndXJlZEgAEjsKD3dvcmtzcGFjZV9mZXRjaBhDIAEoCzIgLm5vbW9zLnJ1bnRpbWUudjIuV29ya3NwYWNlRmV0Y2hIABJCCgxsYXdfcHJvZHVjdHMYRCABKAsyKi5ub21vcy5rZXJuZWwudjEuRXhwb3J0TGF3UHJvZHVjdHNSZXNwb25zZUgAEkAKEmxpdmVfc3RyZWFtX3NlcnZlZBhFIAEoCzIiLm5vbW9zLnJ1bnRpbWUudjIuTGl2ZVN0cmVhbUFuc3dlckgAQgkKB291dGNvbWVKBAgMEA1KBAgOEA9KBAgQEBFKBAgREBJKBAgVEBZKBAgaEBtKBAgbEBxSCWNvbm5lY3RlZFIRYXV0b19zeW5jX3N0YXJ0ZWRSEWF1dG9fc3luY19zdG9wcGVkUhJ3b3Jrc3BhY2Vfc25hcHNob3RSFmN1c3RvZHlfYnJlYWtfcmVzb2x2ZWRSD21vZGVsX2xpZmVjeWNsZVIfYXBwbGljYXRpb25fY3VzdG9keV9lc3RhYmxpc2hlZCL3AQoZQ3VzdG9keU9mZmVyQmF0Y2hSZXNwb25zZRIYChBwcm90b2NvbF92ZXJzaW9uGAEgASgNEhIKCnJlcXVlc3RfaWQYAiABKAkSNwoJYWRtaXNzaW9uGAogASgLMiIubm9tb3MucnVudGltZS52Mi5DdXN0b2R5QWRtaXNzaW9uSAASMwoHZmFpbHVyZRgLIAEoCzIgLm5vbW9zLnJ1bnRpbWUudjIuUnVudGltZUZhaWx1cmVIABIzCgdibG9ja2VkGAwgASgLMiAubm9tb3MucnVudGltZS52Mi5SdW50aW1lQmxvY2tlZEgAQgkKB291dGNvbWUiEwoRQ2xvc2VSZWFsbVJlcXVlc3QiDQoLUmVhbG1DbG9zZWRiBnByb3RvMw", [file_nomos_kernel_v1_kernel, file_nomos_runtime_v2_application_desk, file_nomos_runtime_v2_application_readiness_desk, file_nomos_runtime_v2_authentication_desk, file_nomos_runtime_v2_correspondence_desk, file_nomos_runtime_v2_credentials_desk, file_nomos_runtime_v2_custody_desk, file_nomos_runtime_v2_framework, file_nomos_runtime_v2_identity_desk, file_nomos_runtime_v2_interaction_desk, file_nomos_runtime_v2_law_desk, file_nomos_runtime_v2_maintenance_desk, file_nomos_runtime_v2_model_adoption_desk, file_nomos_runtime_v2_observability_desk, file_nomos_runtime_v2_placement_desk, file_nomos_runtime_v2_receiving_group_desk, file_nomos_runtime_v2_recovery_desk, file_nomos_runtime_v2_records_desk, file_nomos_runtime_v2_residency_desk]);
8145
+ var file_nomos_runtime_v2_runtime = /* @__PURE__ */ fileDesc("Ch5ub21vcy9ydW50aW1lL3YyL3J1bnRpbWUucHJvdG8SEG5vbW9zLnJ1bnRpbWUudjIitR8KDlJ1bnRpbWVSZXF1ZXN0EhgKEHByb3RvY29sX3ZlcnNpb24YASABKA0SEgoKcmVxdWVzdF9pZBgCIAEoBBIyCgV0cmFjZRgDIAEoCzIeLm5vbW9zLnJ1bnRpbWUudjIuVHJhY2VDb250ZXh0SAGIAQESNwoGdGFyZ2V0GAQgASgLMiIubm9tb3MucnVudGltZS52Mi5JbnZvY2F0aW9uVGFyZ2V0SAKIAQESOgoLa2VybmVsX2NhbGwYCiABKAsyIy5ub21vcy5ydW50aW1lLnYyLktlcm5lbENhbGxSZXF1ZXN0SAASQgoPbGlzdF93b3Jrc3BhY2VzGAwgASgLMicubm9tb3MucnVudGltZS52Mi5MaXN0V29ya3NwYWNlc1JlcXVlc3RIABJACg5zeW5jX3dvcmtzcGFjZRgOIAEoCzImLm5vbW9zLnJ1bnRpbWUudjIuU3luY1dvcmtzcGFjZVJlcXVlc3RIABIvCgV3YXRjaBgRIAEoCzIeLm5vbW9zLnJ1bnRpbWUudjIuV2F0Y2hSZXF1ZXN0SAASMwoHdW53YXRjaBgSIAEoCzIgLm5vbW9zLnJ1bnRpbWUudjIuVW53YXRjaFJlcXVlc3RIABJACg5wcmVwYXJlX2RvbWFpbhgTIAEoCzImLm5vbW9zLnJ1bnRpbWUudjIuUHJlcGFyZURvbWFpblJlcXVlc3RIABI6CgtjbG9zZV9yZWFsbRgVIAEoCzIjLm5vbW9zLnJ1bnRpbWUudjIuQ2xvc2VSZWFsbVJlcXVlc3RIABI6CgtkZWFkX2xldHRlchgWIAEoCzIjLm5vbW9zLnJ1bnRpbWUudjIuRGVhZExldHRlclJlcXVlc3RIABJACg5oaXN0b3JpY19xdWVyeRgXIAEoCzImLm5vbW9zLnJ1bnRpbWUudjIuSGlzdG9yaWNRdWVyeVJlcXVlc3RIABJEChB3b3Jrc3BhY2Vfc3RhdHVzGBogASgLMigubm9tb3MucnVudGltZS52Mi5Xb3Jrc3BhY2VTdGF0dXNSZXF1ZXN0SAASTwoWcmVtb3RlX2dlbmVyYXRlZF9vZmZlchgbIAEoCzItLm5vbW9zLnJ1bnRpbWUudjIuUmVtb3RlR2VuZXJhdGVkT2ZmZXJSZXF1ZXN0SAASSgoTd29ya3NwYWNlX3BsYWNlbWVudBgcIAEoCzIrLm5vbW9zLnJ1bnRpbWUudjIuV29ya3NwYWNlUGxhY2VtZW50UmVxdWVzdEgAEkoKE3JlZnJlc2hfY3JlZGVudGlhbHMYHSABKAsyKy5ub21vcy5ydW50aW1lLnYyLlJlZnJlc2hDcmVkZW50aWFsc1JlcXVlc3RIABJVChlkZWxpdmVyX3dvcmtzcGFjZV9lZmZlY3RzGB4gASgLMjAubm9tb3MucnVudGltZS52Mi5EZWxpdmVyV29ya3NwYWNlRWZmZWN0c1JlcXVlc3RIABJKChNhdXRob3JpbmdfcHJlZmxpZ2h0GCAgASgLMisubm9tb3MucnVudGltZS52Mi5BdXRob3JpbmdQcmVmbGlnaHRSZXF1ZXN0SAASTwoWbGlzdF93b3Jrc3BhY2VfbW9tZW50cxghIAEoCzItLm5vbW9zLnJ1bnRpbWUudjIuTGlzdFdvcmtzcGFjZU1vbWVudHNSZXF1ZXN0SAASWQobZXN0aW1hdGVfd29ya3NwYWNlX3RyYW5zZmVyGCIgASgLMjIubm9tb3MucnVudGltZS52Mi5Fc3RpbWF0ZVdvcmtzcGFjZVRyYW5zZmVyUmVxdWVzdEgAEk8KFnJlYWRfd29ya3NwYWNlX2dlbmVzaXMYIyABKAsyLS5ub21vcy5ydW50aW1lLnYyLlJlYWRXb3Jrc3BhY2VHZW5lc2lzUmVxdWVzdEgAEk0KFWxpc3RfY2hpbGRfd29ya3NwYWNlcxgkIAEoCzIsLm5vbW9zLnJ1bnRpbWUudjIuTGlzdENoaWxkV29ya3NwYWNlc1JlcXVlc3RIABI3CglmcmFtZXdvcmsYJSABKAsyIi5ub21vcy5ydW50aW1lLnYyLkZyYW1ld29ya1JlcXVlc3RIABJSChdjb250aW51ZV9jb3JyZXNwb25kZW5jZRgmIAEoCzIvLm5vbW9zLnJ1bnRpbWUudjIuQ29udGludWVDb3JyZXNwb25kZW5jZVJlcXVlc3RIABJVChlpZGVudGl0eV9wcm92aWRlcl93aXRuZXNzGCcgASgLMjAubm9tb3MucnVudGltZS52Mi5JZGVudGl0eVByb3ZpZGVyV2l0bmVzc1JlcXVlc3RIABJEChBtYWludGVuYW5jZV90aWNrGCggASgLMigubm9tb3MucnVudGltZS52Mi5NYWludGVuYW5jZVRpY2tSZXF1ZXN0SAASSAoScmVzaWRlbmN5X3ByZXNzdXJlGCkgASgLMioubm9tb3MucnVudGltZS52Mi5SZXNpZGVuY3lQcmVzc3VyZVJlcXVlc3RIABJEChBjdXN0b2R5X2FkdmFuY2VkGCogASgLMigubm9tb3MucnVudGltZS52Mi5DdXN0b2R5QWR2YW5jZWRSZXF1ZXN0SAASSgoUYWRtaXRfY3VzdG9keV9vZmZlcnMYKyABKAsyKi5ub21vcy5ydW50aW1lLnYyLkN1c3RvZHlPZmZlckJhdGNoUmVxdWVzdEgAEkkKE2luc3BlY3RfbGF3X3BhY2thZ2UYLCABKAsyKi5ub21vcy5ydW50aW1lLnYyLkluc3BlY3RMYXdQYWNrYWdlUmVxdWVzdEgAEkkKE2NvbnRpbnVlX2xvY2FsX3JlYWQYLSABKAsyKi5ub21vcy5ydW50aW1lLnYyLkNvbnRpbnVlTG9jYWxSZWFkUmVxdWVzdEgAEkIKD3JldGFpbl9mcm9udGllchguIAEoCzInLm5vbW9zLnJ1bnRpbWUudjIuUmV0YWluRnJvbnRpZXJSZXF1ZXN0SAASPQoOc29ja2V0X3JlY2VpcHQYLyABKAsyIy5ub21vcy5ydW50aW1lLnYyLlBlZXJTb2NrZXRSZWNlaXB0SAASRwoSZXhwb3J0X2xpdmVfb2ZmZXJzGDAgASgLMikubm9tb3MucnVudGltZS52Mi5FeHBvcnRMaXZlT2ZmZXJzUmVxdWVzdEgAEkoKE3ByZXBhcmVfYXBwbGljYXRpb24YMSABKAsyKy5ub21vcy5ydW50aW1lLnYyLlByZXBhcmVBcHBsaWNhdGlvblJlcXVlc3RIABJMChRhd2FpdF9hdXRoZW50aWNhdGlvbhgyIAEoCzIsLm5vbW9zLnJ1bnRpbWUudjIuQXdhaXRBdXRoZW50aWNhdGlvblJlcXVlc3RIABJQChZyZWNvdmVyX2NvcnJlc3BvbmRlbmNlGDMgASgLMi4ubm9tb3MucnVudGltZS52Mi5SZWNvdmVyQ29ycmVzcG9uZGVuY2VSZXF1ZXN0SAASSwoUb3Blbl9yZWNlaXZpbmdfZ3JvdXAYNCABKAsyKy5ub21vcy5ydW50aW1lLnYyLk9wZW5SZWNlaXZpbmdHcm91cFJlcXVlc3RIABJTChhjb252ZXJnZV9yZWNlaXZpbmdfZ3JvdXAYNSABKAsyLy5ub21vcy5ydW50aW1lLnYyLkNvbnZlcmdlUmVjZWl2aW5nR3JvdXBSZXF1ZXN0SAASUQoXYWRvcHRfYXBwbGljYXRpb25fbW9kZWwYNiABKAsyLi5ub21vcy5ydW50aW1lLnYyLkFkb3B0QXBwbGljYXRpb25Nb2RlbFJlcXVlc3RIABJPChZyZXNvbHZlX3dvcmtzcGFjZV9uYW1lGDcgASgLMi0ubm9tb3MucnVudGltZS52Mi5SZXNvbHZlV29ya3NwYWNlTmFtZVJlcXVlc3RIABJTChhjaGVja19yZWZlcmVuY2VfdmVyc2lvbnMYOCABKAsyLy5ub21vcy5ydW50aW1lLnYyLkNoZWNrUmVmZXJlbmNlVmVyc2lvbnNSZXF1ZXN0SAASUQoXZGVsaXZlcl9odHRwX29ibGlnYXRpb24YOSABKAsyLi5ub21vcy5ydW50aW1lLnYyLkRlbGl2ZXJIdHRwT2JsaWdhdGlvblJlcXVlc3RIABJXChpyZWZyZXNoX3JlcGxpY2FfY3JlZGVudGlhbBg6IAEoCzIxLm5vbW9zLnJ1bnRpbWUudjIuUmVmcmVzaFJlcGxpY2FDcmVkZW50aWFsUmVxdWVzdEgAEjwKDGJpbmRfc2Vzc2lvbhg7IAEoCzIkLm5vbW9zLnJ1bnRpbWUudjIuQmluZFNlc3Npb25SZXF1ZXN0SAASUAoXcHJldmlld19sb2NhbF9jb3B5X2Ryb3AYPCABKAsyLS5ub21vcy5ydW50aW1lLnYyLlByZXZpZXdMb2NhbENvcHlEcm9wUmVxdWVzdEgAEkEKD2Ryb3BfbG9jYWxfY29weRg9IAEoCzImLm5vbW9zLnJ1bnRpbWUudjIuRHJvcExvY2FsQ29weVJlcXVlc3RIABJXChpjb25maWd1cmVfcHJvdmlkZXJfb3JpZ2lucxg+IAEoCzIxLm5vbW9zLnJ1bnRpbWUudjIuQ29uZmlndXJlUHJvdmlkZXJPcmlnaW5zUmVxdWVzdEgAEkIKD2ZldGNoX3dvcmtzcGFjZRg/IAEoCzInLm5vbW9zLnJ1bnRpbWUudjIuRmV0Y2hXb3Jrc3BhY2VSZXF1ZXN0SAASSwoUcHJvdmlkZV9sYXdfcHJvZHVjdHMYQCABKAsyKy5ub21vcy5ydW50aW1lLnYyLlByb3ZpZGVMYXdQcm9kdWN0c1JlcXVlc3RIABJAChFzZXJ2ZV9saXZlX3N0cmVhbRhBIAEoCzIjLm5vbW9zLnJ1bnRpbWUudjIuTGl2ZVN0cmVhbVJlcXVlc3RIABJEChBuZXR3b3JrX3Jlc3RvcmVkGEIgASgLMigubm9tb3MucnVudGltZS52Mi5OZXR3b3JrUmVzdG9yZWRSZXF1ZXN0SABCCQoHY29tbWFuZEIICgZfdHJhY2VCCQoHX3RhcmdldEoECAsQDEoECA0QDkoECA8QEEoECBAQEUoECBQQFUoECBgQGUoECBkQGkoECB8QIFIHY29ubmVjdFIPc3RhcnRfYXV0b19zeW5jUg5zdG9wX2F1dG9fc3luY1ISc25hcHNob3Rfd29ya3NwYWNlUhVyZXNvbHZlX2N1c3RvZHlfYnJlYWtSD21vZGVsX2xpZmVjeWNsZVIdZXN0YWJsaXNoX2FwcGxpY2F0aW9uX2N1c3RvZHlSEWFjcXVpcmVfd29ya3NwYWNlIjYKEEludm9jYXRpb25UYXJnZXQSEQoJd29ya3NwYWNlGAEgASgJEg8KB3Nlc3Npb24YAiABKAkikB8KD1J1bnRpbWVSZXNwb25zZRIYChBwcm90b2NvbF92ZXJzaW9uGAEgASgNEhIKCnJlcXVlc3RfaWQYAiABKAQSMwoHZmFpbHVyZRgKIAEoCzIgLm5vbW9zLnJ1bnRpbWUudjIuUnVudGltZUZhaWx1cmVIABI0CgtrZXJuZWxfY2FsbBgLIAEoCzIdLm5vbW9zLmtlcm5lbC52MS5DYWxsUmVzcG9uc2VIABI5Cg53b3Jrc3BhY2VfbGlzdBgNIAEoCzIfLm5vbW9zLnJ1bnRpbWUudjIuV29ya3NwYWNlTGlzdEgAEkEKDnN5bmNfd29ya3NwYWNlGA8gASgLMicubm9tb3MucnVudGltZS52Mi5TeW5jV29ya3NwYWNlUmVzcG9uc2VIABI3Cg13YXRjaF9zdGFydGVkGBIgASgLMh4ubm9tb3MucnVudGltZS52Mi5XYXRjaFN0YXJ0ZWRIABI3Cg13YXRjaF9zdG9wcGVkGBMgASgLMh4ubm9tb3MucnVudGltZS52Mi5XYXRjaFN0b3BwZWRIABI7Cg9kb21haW5fcHJlcGFyZWQYFCABKAsyIC5ub21vcy5ydW50aW1lLnYyLkRvbWFpblByZXBhcmVkSAASNQoMcmVhbG1fY2xvc2VkGBYgASgLMh0ubm9tb3MucnVudGltZS52Mi5SZWFsbUNsb3NlZEgAEjMKB2Jsb2NrZWQYFyABKAsyIC5ub21vcy5ydW50aW1lLnYyLlJ1bnRpbWVCbG9ja2VkSAASSAoWcmVtb3RlX29mZmVyX2FkbWlzc2lvbhgYIAEoCzImLm5vbW9zLnJ1bnRpbWUudjIuUmVtb3RlT2ZmZXJBZG1pc3Npb25IABI7CgtkZWFkX2xldHRlchgZIAEoCzIkLm5vbW9zLnJ1bnRpbWUudjIuRGVhZExldHRlclJlc3BvbnNlSAASPQoQd29ya3NwYWNlX3N0YXR1cxgcIAEoCzIhLm5vbW9zLnJ1bnRpbWUudjIuV29ya3NwYWNlU3RhdHVzSAASUAoWcmVtb3RlX2dlbmVyYXRlZF9vZmZlchgdIAEoCzIuLm5vbW9zLnJ1bnRpbWUudjIuUmVtb3RlR2VuZXJhdGVkT2ZmZXJBY2NlcHRlZEgAEkgKE3dvcmtzcGFjZV9wbGFjZW1lbnQYHiABKAsyKS5ub21vcy5ydW50aW1lLnYyLldvcmtzcGFjZVBsYWNlbWVudFN0YXRlSAASRwoVY3JlZGVudGlhbHNfcmVmcmVzaGVkGB8gASgLMiYubm9tb3MucnVudGltZS52Mi5DcmVkZW50aWFsc1JlZnJlc2hlZEgAElIKG3dvcmtzcGFjZV9lZmZlY3RzX2RlbGl2ZXJlZBggIAEoCzIrLm5vbW9zLnJ1bnRpbWUudjIuV29ya3NwYWNlRWZmZWN0c0RlbGl2ZXJlZEgAEkkKE2F1dGhvcmluZ19wcmVmbGlnaHQYISABKAsyKi5ub21vcy5ydW50aW1lLnYyLkF1dGhvcmluZ1ByZWZsaWdodFJlc3VsdEgAEkIKEXdvcmtzcGFjZV9tb21lbnRzGCIgASgLMiUubm9tb3MucnVudGltZS52Mi5Xb3Jrc3BhY2VNb21lbnRMaXN0SAASUgobd29ya3NwYWNlX3RyYW5zZmVyX2VzdGltYXRlGCMgASgLMisubm9tb3MucnVudGltZS52Mi5Xb3Jrc3BhY2VUcmFuc2ZlckVzdGltYXRlSAASPwoRd29ya3NwYWNlX2dlbmVzaXMYJCABKAsyIi5ub21vcy5ydW50aW1lLnYyLldvcmtzcGFjZUdlbmVzaXNIABJAChBjaGlsZF93b3Jrc3BhY2VzGCUgASgLMiQubm9tb3MucnVudGltZS52Mi5DaGlsZFdvcmtzcGFjZUxpc3RIABI4CglmcmFtZXdvcmsYJiABKAsyIy5ub21vcy5ydW50aW1lLnYyLkZyYW1ld29ya1Jlc3BvbnNlSAASSQoWY29ycmVzcG9uZGVuY2VfcGVuZGluZxgnIAEoCzInLm5vbW9zLnJ1bnRpbWUudjIuQ29ycmVzcG9uZGVuY2VQZW5kaW5nSAASUwoZaWRlbnRpdHlfcHJvdmlkZXJfd2l0bmVzcxgoIAEoCzIuLm5vbW9zLnJ1bnRpbWUudjIuSWRlbnRpdHlQcm92aWRlcldpdG5lc3NSZWFkeUgAEkEKEm1haW50ZW5hbmNlX3RpY2tlZBgpIAEoCzIjLm5vbW9zLnJ1bnRpbWUudjIuTWFpbnRlbmFuY2VUaWNrZWRIABJSChtyZXNpZGVuY3lfcHJlc3N1cmVfcmVsaWV2ZWQYKiABKAsyKy5ub21vcy5ydW50aW1lLnYyLlJlc2lkZW5jeVByZXNzdXJlUmVsaWV2ZWRIABJHChVtYWludGVuYW5jZV9zY2hlZHVsZWQYKyABKAsyJi5ub21vcy5ydW50aW1lLnYyLk1haW50ZW5hbmNlU2NoZWR1bGVkSAASRQoXY3VzdG9keV9vZmZlcnNfYWRtaXR0ZWQYLCABKAsyIi5ub21vcy5ydW50aW1lLnYyLkN1c3RvZHlBZG1pc3Npb25IABJIChZsYXdfcGFja2FnZV9pbnNwZWN0aW9uGC0gASgLMiYubm9tb3MucnVudGltZS52Mi5MYXdQYWNrYWdlSW5zcGVjdGlvbkgAEkAKEmxvY2FsX3JlYWRfcGVuZGluZxguIAEoCzIiLm5vbW9zLnJ1bnRpbWUudjIuTG9jYWxSZWFkUGVuZGluZ0gAEj8KEWZyb250aWVyX3JldGFpbmVkGC8gASgLMiIubm9tb3MucnVudGltZS52Mi5Gcm9udGllclJldGFpbmVkSAASRQoUYXBwbGljYXRpb25fcHJlcGFyZWQYMyABKAsyJS5ub21vcy5ydW50aW1lLnYyLkFwcGxpY2F0aW9uUHJlcGFyZWRIABJNChhhdXRoZW50aWNhdGlvbl9yZWFkaW5lc3MYMiABKAsyKS5ub21vcy5ydW50aW1lLnYyLkF1dGhlbnRpY2F0aW9uUmVhZGluZXNzSAASPwoPc29ja2V0X29ic2VydmVkGDAgASgLMiQubm9tb3MucnVudGltZS52Mi5QZWVyU29ja2V0T2JzZXJ2ZWRIABJBCgtsaXZlX29mZmVycxgxIAEoCzIqLm5vbW9zLnJ1bnRpbWUudjIuQ3VzdG9keU9mZmVyQmF0Y2hSZXF1ZXN0SAASTQoYY29ycmVzcG9uZGVuY2VfcmVjb3ZlcmVkGDQgASgLMikubm9tb3MucnVudGltZS52Mi5Db3JyZXNwb25kZW5jZVJlY292ZXJlZEgAEkgKFnJlY2VpdmluZ19ncm91cF9vcGVuZWQYNSABKAsyJi5ub21vcy5ydW50aW1lLnYyLlJlY2VpdmluZ0dyb3VwT3BlbmVkSAASUgobcmVjZWl2aW5nX2dyb3VwX2NvbnZlcmdlbmNlGDYgASgLMisubm9tb3MucnVudGltZS52Mi5SZWNlaXZpbmdHcm91cENvbnZlcmdlbmNlSAASTgoZYXBwbGljYXRpb25fbW9kZWxfYWRvcHRlZBg3IAEoCzIpLm5vbW9zLnJ1bnRpbWUudjIuQXBwbGljYXRpb25Nb2RlbEFkb3B0ZWRIABJKChdyZXNvbHZlZF93b3Jrc3BhY2VfbmFtZRg4IAEoCzInLm5vbW9zLnJ1bnRpbWUudjIuUmVzb2x2ZWRXb3Jrc3BhY2VOYW1lSAASRgoScmVmZXJlbmNlX3ZlcnNpb25zGDkgASgLMigubm9tb3MucnVudGltZS52Mi5SZWZlcmVuY2VWZXJzaW9uUmVwb3J0SAASPwoRd29ya3NwYWNlX29wZW5pbmcYOiABKAsyIi5ub21vcy5ydW50aW1lLnYyLldvcmtzcGFjZU9wZW5pbmdIABJOChlodHRwX29ibGlnYXRpb25fZGVsaXZlcmVkGDsgASgLMikubm9tb3MucnVudGltZS52Mi5IdHRwT2JsaWdhdGlvbkRlbGl2ZXJlZEgAEjcKDXNlc3Npb25fYm91bmQYPCABKAsyHi5ub21vcy5ydW50aW1lLnYyLlNlc3Npb25Cb3VuZEgAEjsKC3VuYXZhaWxhYmxlGD0gASgLMiQubm9tb3MucnVudGltZS52Mi5SdW50aW1lVW5hdmFpbGFibGVIABIzCgdyZWZ1c2VkGD4gASgLMiAubm9tb3MucnVudGltZS52Mi5SdW50aW1lUmVmdXNhbEgAEj0KEGhpc3RvcnlfYWNxdWlyZWQYPyABKAsyIS5ub21vcy5ydW50aW1lLnYyLkhpc3RvcnlBY3F1aXJlZEgAEkkKF2xvY2FsX2NvcHlfZHJvcF9wcmV2aWV3GEAgASgLMiYubm9tb3MucnVudGltZS52Mi5Mb2NhbENvcHlEcm9wUHJldmlld0gAEk0KGWxvY2FsX2NvcHlfZHJvcF9zY2hlZHVsZWQYQSABKAsyKC5ub21vcy5ydW50aW1lLnYyLkxvY2FsQ29weURyb3BTY2hlZHVsZWRIABJSChtwcm92aWRlcl9vcmlnaW5zX2NvbmZpZ3VyZWQYQiABKAsyKy5ub21vcy5ydW50aW1lLnYyLlByb3ZpZGVyT3JpZ2luc0NvbmZpZ3VyZWRIABI7Cg93b3Jrc3BhY2VfZmV0Y2gYQyABKAsyIC5ub21vcy5ydW50aW1lLnYyLldvcmtzcGFjZUZldGNoSAASQgoMbGF3X3Byb2R1Y3RzGEQgASgLMioubm9tb3Mua2VybmVsLnYxLkV4cG9ydExhd1Byb2R1Y3RzUmVzcG9uc2VIABJAChJsaXZlX3N0cmVhbV9zZXJ2ZWQYRSABKAsyIi5ub21vcy5ydW50aW1lLnYyLkxpdmVTdHJlYW1BbnN3ZXJIABI9ChBuZXR3b3JrX3Jlc3RvcmVkGEYgASgLMiEubm9tb3MucnVudGltZS52Mi5OZXR3b3JrUmVzdG9yZWRIAEIJCgdvdXRjb21lSgQIDBANSgQIDhAPSgQIEBARSgQIERASSgQIFRAWSgQIGhAbSgQIGxAcUgljb25uZWN0ZWRSEWF1dG9fc3luY19zdGFydGVkUhFhdXRvX3N5bmNfc3RvcHBlZFISd29ya3NwYWNlX3NuYXBzaG90UhZjdXN0b2R5X2JyZWFrX3Jlc29sdmVkUg9tb2RlbF9saWZlY3ljbGVSH2FwcGxpY2F0aW9uX2N1c3RvZHlfZXN0YWJsaXNoZWQi9wEKGUN1c3RvZHlPZmZlckJhdGNoUmVzcG9uc2USGAoQcHJvdG9jb2xfdmVyc2lvbhgBIAEoDRISCgpyZXF1ZXN0X2lkGAIgASgJEjcKCWFkbWlzc2lvbhgKIAEoCzIiLm5vbW9zLnJ1bnRpbWUudjIuQ3VzdG9keUFkbWlzc2lvbkgAEjMKB2ZhaWx1cmUYCyABKAsyIC5ub21vcy5ydW50aW1lLnYyLlJ1bnRpbWVGYWlsdXJlSAASMwoHYmxvY2tlZBgMIAEoCzIgLm5vbW9zLnJ1bnRpbWUudjIuUnVudGltZUJsb2NrZWRIAEIJCgdvdXRjb21lIhMKEUNsb3NlUmVhbG1SZXF1ZXN0Ig0KC1JlYWxtQ2xvc2VkYgZwcm90bzM", [file_nomos_kernel_v1_kernel, file_nomos_runtime_v2_application_desk, file_nomos_runtime_v2_application_readiness_desk, file_nomos_runtime_v2_authentication_desk, file_nomos_runtime_v2_correspondence_desk, file_nomos_runtime_v2_credentials_desk, file_nomos_runtime_v2_custody_desk, file_nomos_runtime_v2_framework, file_nomos_runtime_v2_identity_desk, file_nomos_runtime_v2_interaction_desk, file_nomos_runtime_v2_law_desk, file_nomos_runtime_v2_maintenance_desk, file_nomos_runtime_v2_model_adoption_desk, file_nomos_runtime_v2_observability_desk, file_nomos_runtime_v2_placement_desk, file_nomos_runtime_v2_receiving_group_desk, file_nomos_runtime_v2_recovery_desk, file_nomos_runtime_v2_records_desk, file_nomos_runtime_v2_residency_desk]);
8145
8146
  var RuntimeRequestSchema = /* @__PURE__ */ messageDesc(file_nomos_runtime_v2_runtime, 0);
8146
8147
  var InvocationTargetSchema = /* @__PURE__ */ messageDesc(file_nomos_runtime_v2_runtime, 1);
8147
8148
  var RuntimeResponseSchema = /* @__PURE__ */ messageDesc(file_nomos_runtime_v2_runtime, 2);
@@ -11585,6 +11586,37 @@
11585
11586
  return { ok: true };
11586
11587
  }
11587
11588
 
11589
+ // ../../adapter/custody_fetch_pool.ts
11590
+ init_define_NOMOS_KERNEL_RELEASE();
11591
+ init_shims();
11592
+ var CUSTODY_STAGED_BYTES_BUDGET = 256 * 1024 * 1024;
11593
+ function memoryStagedPack(fetched) {
11594
+ let bytes = fetched.pack;
11595
+ return {
11596
+ bytes: fetched.pack.byteLength,
11597
+ shallow: fetched.shallow,
11598
+ unshallow: fetched.unshallow,
11599
+ pack: () => {
11600
+ if (bytes === void 0) throw new Error("staged pack was discarded before it was applied");
11601
+ return bytes;
11602
+ },
11603
+ discard: () => {
11604
+ bytes = void 0;
11605
+ }
11606
+ };
11607
+ }
11608
+ async function fetchStagedInMemory(remote, headers, request, fetchImpl) {
11609
+ const fetched = await fetchPackWithBoundaries(remote, headers, {
11610
+ wants: request.wants,
11611
+ haves: request.haves,
11612
+ advertisement: request.advertisement,
11613
+ depth: request.depth,
11614
+ shallow: request.shallow ?? [],
11615
+ observe: request.observe
11616
+ }, fetchImpl);
11617
+ return fetched ? memoryStagedPack(fetched) : null;
11618
+ }
11619
+
11588
11620
  // ../../adapter/pack_import_steps.ts
11589
11621
  init_define_NOMOS_KERNEL_RELEASE();
11590
11622
  init_shims();
@@ -12062,17 +12094,27 @@
12062
12094
  throw error;
12063
12095
  }
12064
12096
  };
12065
- const acquireReference = async (workspace, ledger, remoteReference, localReference, have, acquisition) => {
12066
- const refs = acquisition?.advertisement.refs ?? await lsRefs(
12097
+ const applyTurn = (lanes) => lanes ? (work) => lanes.apply(work) : (work) => {
12098
+ try {
12099
+ return Promise.resolve(work());
12100
+ } catch (error) {
12101
+ return Promise.reject(error);
12102
+ }
12103
+ };
12104
+ const stagePack = (lanes, ledger, request) => lanes ? lanes.fetches.fetchPack(ledger.remote, ledger.headers ?? {}, request, fetchImpl) : fetchStagedInMemory(ledger.remote, ledger.headers ?? {}, request, fetchImpl);
12105
+ const listed = (lanes, work) => lanes ? lanes.fetches.run(work) : work();
12106
+ const acquireReference = async (workspace, ledger, remoteReference, localReference, have, acquisition, lanes) => {
12107
+ const refs = acquisition?.advertisement.refs ?? await listed(lanes, () => lsRefs(
12067
12108
  ledger.remote,
12068
12109
  ledger.headers ?? {},
12069
12110
  { service: "git-upload-pack", prefix: remoteReference },
12070
12111
  fetchImpl
12071
- );
12112
+ ));
12072
12113
  const head = refs[remoteReference];
12073
12114
  if (!head) return void 0;
12115
+ const turn = applyTurn(lanes);
12074
12116
  const isMain = localReference === branchRef("main");
12075
- const liveHave = () => isMain ? resolveRef(workspace, localReference) : have;
12117
+ const liveHave = () => isMain ? resolveRef(workspace, localReference) : have();
12076
12118
  const durableBaseOf = (live) => {
12077
12119
  const remoteTrackingReference = receiptRef(ledger);
12078
12120
  const trackedHead = resolveRef(workspace, remoteTrackingReference);
@@ -12083,42 +12125,43 @@
12083
12125
  }
12084
12126
  return true;
12085
12127
  };
12086
- let local = liveHave();
12087
- if (isMain && local !== void 0 && head !== local && durableBaseOf(local)) return head;
12088
- const haves = knownHeads(workspace);
12089
- if (head !== local && !haves.includes(head) && !acquisition?.imported.has(head)) {
12090
- const pack = await fetchPack(
12091
- ledger.remote,
12092
- ledger.headers ?? {},
12093
- { wants: [head], haves, advertisement: acquisition?.advertisement },
12094
- fetchImpl
12095
- );
12096
- if (pack) {
12097
- await importFetchedPack(
12098
- workspace,
12099
- pack,
12100
- ledger.operatorCustody === true ? void 0 : head
12101
- );
12102
- }
12103
- }
12104
- local = liveHave();
12105
- if (isMain && local === void 0) {
12106
- await measured(workspace, "restore", () => restoreMain(workspace, head, ledger.operatorCustody === true));
12107
- writeRef(workspace, receiptRef(ledger), head);
12108
- } else if (isMain && head === local) {
12109
- if (ledger.operatorCustody === true) {
12110
- await measured(workspace, "restore", () => restoreMain(workspace, head, true));
12111
- }
12112
- if (resolveRef(workspace, receiptRef(ledger)) !== head) {
12128
+ const settle = async () => {
12129
+ const local = liveHave();
12130
+ if (isMain && local === void 0) {
12131
+ await measured(workspace, "restore", () => restoreMain(workspace, head, ledger.operatorCustody === true));
12113
12132
  writeRef(workspace, receiptRef(ledger), head);
12133
+ } else if (isMain && head === local) {
12134
+ if (ledger.operatorCustody === true) {
12135
+ await measured(workspace, "restore", () => restoreMain(workspace, head, true));
12136
+ }
12137
+ if (resolveRef(workspace, receiptRef(ledger)) !== head) {
12138
+ writeRef(workspace, receiptRef(ledger), head);
12139
+ }
12140
+ } else if (isMain) {
12141
+ if (durableBaseOf(local)) return head;
12142
+ throw new Error(`custody remote advanced for '${workspace}': local ${local}, observed ${head}; peer convergence is required before changing main`);
12143
+ } else {
12144
+ writeRef(workspace, localReference, head);
12114
12145
  }
12115
- } else if (isMain) {
12116
- if (durableBaseOf(local)) return head;
12117
- throw new Error(`custody remote advanced for '${workspace}': local ${local}, observed ${head}; peer convergence is required before changing main`);
12118
- } else {
12119
- writeRef(workspace, localReference, head);
12146
+ return head;
12147
+ };
12148
+ const decided = await turn(async () => {
12149
+ const local = liveHave();
12150
+ if (isMain && local !== void 0 && head !== local && durableBaseOf(local)) return { head };
12151
+ const haves = knownHeads(workspace);
12152
+ if (head !== local && !haves.includes(head) && !acquisition?.imported.has(head)) return { haves };
12153
+ return { head: await settle() };
12154
+ });
12155
+ if ("head" in decided) return decided.head;
12156
+ const staged = await stagePack(lanes, ledger, { wants: [head], haves: decided.haves, advertisement: acquisition?.advertisement });
12157
+ try {
12158
+ return await turn(async () => {
12159
+ if (staged) await importFetchedPack(workspace, staged.pack(), ledger.operatorCustody === true ? void 0 : head);
12160
+ return settle();
12161
+ });
12162
+ } finally {
12163
+ staged?.discard();
12120
12164
  }
12121
- return head;
12122
12165
  };
12123
12166
  const packDeltaOrFull = (workspace, head, base) => {
12124
12167
  try {
@@ -12138,13 +12181,16 @@
12138
12181
  importPack: applyPack,
12139
12182
  pack: packDelta
12140
12183
  }, fetchImpl);
12141
- const acquireMain = (workspace, ledger) => acquiring(workspace, ledger, "main", () => measured(workspace, "acquire", async () => {
12184
+ const acquireMain = (workspace, ledger, lanes) => acquiring(workspace, ledger, "main", () => measured(workspace, "acquire", async () => {
12142
12185
  const reference = branchRef("main");
12143
- await kernel.writeSkeleton(workspace, "main");
12144
- const local = resolveRef(workspace, reference);
12145
- const advertisement = await measured(workspace, "advertise", () => discoverRefs(ledger.remote, ledger.headers ?? {}, {
12186
+ const turn = applyTurn(lanes);
12187
+ const local = await turn(async () => {
12188
+ await kernel.writeSkeleton(workspace, "main");
12189
+ return resolveRef(workspace, reference);
12190
+ });
12191
+ const advertisement = await listed(lanes, () => measured(workspace, "advertise", () => discoverRefs(ledger.remote, ledger.headers ?? {}, {
12146
12192
  signal: ledger.signal ?? AbortSignal.timeout(COLD_OPEN_LISTING_MILLIS)
12147
- }, fetchImpl));
12193
+ }, fetchImpl)));
12148
12194
  observedRemoteRefs.set(custodyKey(workspace, ledger), new Map(Object.entries(advertisement.refs)));
12149
12195
  const delivered = new Map(Object.entries(advertisement.refs).filter(([ref]) => isCorrespondenceRef(ref)));
12150
12196
  const imported = /* @__PURE__ */ new Set();
@@ -12160,62 +12206,74 @@
12160
12206
  const wants2 = [...new Set(references.map((ref) => advertisement.refs[ref]))].filter((oid) => !haves2.includes(oid));
12161
12207
  if (wants2.length) {
12162
12208
  const detail = { references, wants: wants2, haves: haves2 };
12163
- const fetched = await measured(workspace, "fetch", () => fetchPackWithBoundaries(ledger.remote, ledger.headers ?? {}, {
12209
+ const staged = await measured(workspace, "fetch", () => stagePack(lanes, ledger, {
12164
12210
  wants: wants2,
12165
12211
  haves: haves2,
12166
12212
  advertisement,
12167
12213
  ...ledger.operatorCustody && workspace !== ANCHOR_WORKSPACE ? { depth: 1 } : {},
12168
12214
  ...observe ? { observe: (timing) => Object.assign(detail, timing) } : {}
12169
- }, fetchImpl), detail);
12170
- if (fetched) {
12171
- await measured(
12172
- workspace,
12173
- "import",
12174
- () => importFetchedPack(workspace, fetched.pack, void 0, fetched),
12175
- { references, wants: wants2, haves: haves2, bytes: fetched.pack.byteLength }
12176
- );
12177
- for (const oid of wants2) imported.add(oid);
12215
+ }), detail);
12216
+ try {
12217
+ if (staged) {
12218
+ await turn(() => measured(
12219
+ workspace,
12220
+ "import",
12221
+ () => importFetchedPack(workspace, staged.pack(), void 0, staged),
12222
+ { references, wants: wants2, haves: haves2, bytes: staged.bytes }
12223
+ ));
12224
+ for (const oid of wants2) imported.add(oid);
12225
+ }
12226
+ } finally {
12227
+ staged?.discard();
12178
12228
  }
12179
12229
  }
12180
12230
  for (const oid of haves2) imported.add(oid);
12181
12231
  }
12182
- const head = await acquireReference(workspace, ledger, reference, reference, local, acquisition);
12232
+ const head = await acquireReference(workspace, ledger, reference, reference, () => local, acquisition, lanes);
12183
12233
  if (head) sealedMain.set(custodyKey(workspace, ledger), head);
12184
12234
  const haves = knownHeads(workspace);
12185
12235
  const wants = [...new Set([...delivered.values()].filter((oid) => !haves.includes(oid) && !imported.has(oid)))];
12186
12236
  if (wants.length > 0) {
12187
- const pack = await fetchPack(ledger.remote, ledger.headers ?? {}, { wants, haves, advertisement }, fetchImpl);
12188
- if (pack) await importFetchedPack(workspace, pack);
12189
- }
12190
- for (const [reference2, oid] of delivered) {
12191
- if (resolveRef(workspace, reference2) === void 0) writeRef(workspace, reference2, oid);
12237
+ const staged = await stagePack(lanes, ledger, { wants, haves, advertisement });
12238
+ try {
12239
+ if (staged) await turn(() => importFetchedPack(workspace, staged.pack()));
12240
+ } finally {
12241
+ staged?.discard();
12242
+ }
12192
12243
  }
12244
+ await turn(() => {
12245
+ for (const [reference2, oid] of delivered) {
12246
+ if (resolveRef(workspace, reference2) === void 0) writeRef(workspace, reference2, oid);
12247
+ }
12248
+ });
12193
12249
  if (ledger.localCustody) {
12194
12250
  await acquireReference(
12195
12251
  workspace,
12196
12252
  ledger,
12197
12253
  "refs/remotes/nomos/main",
12198
12254
  "refs/remotes/nomos/main",
12199
- resolveRef(workspace, "refs/remotes/nomos/main"),
12200
- acquisition
12255
+ () => resolveRef(workspace, "refs/remotes/nomos/main"),
12256
+ acquisition,
12257
+ lanes
12201
12258
  );
12202
12259
  }
12203
- await placement.acquire(workspace, ledger, acquisition);
12260
+ await turn(() => placement.acquire(workspace, ledger, acquisition));
12204
12261
  if (ledger.localCustody) {
12205
12262
  await acquireReference(
12206
12263
  workspace,
12207
12264
  ledger,
12208
12265
  "refs/remotes/nomos/placement",
12209
12266
  "refs/remotes/nomos/placement",
12210
- resolveRef(workspace, "refs/remotes/nomos/placement"),
12211
- acquisition
12267
+ () => resolveRef(workspace, "refs/remotes/nomos/placement"),
12268
+ acquisition,
12269
+ lanes
12212
12270
  );
12213
12271
  }
12214
12272
  return head ? { head } : {};
12215
12273
  }));
12216
12274
  const desk = {
12217
- async acquireMain(workspace, ledger) {
12218
- const acquired = await acquireMain(workspace, ledger);
12275
+ async acquireMain(workspace, ledger, lanes) {
12276
+ const acquired = await acquireMain(workspace, ledger, lanes);
12219
12277
  if (workspace === ANCHOR_WORKSPACE && ledger.operatorCustody === true) {
12220
12278
  for (let slice = 0; slice < ANCHOR_DEEPEN_SLICES; slice += 1) {
12221
12279
  if (!knownShallowBoundary(workspace)?.size) break;
@@ -12313,8 +12371,7 @@
12313
12371
  const fullReference = branchRef(reference);
12314
12372
  return acquiring(workspace, ledger, fullReference, async () => {
12315
12373
  await kernel.writeSkeleton(workspace, "main");
12316
- const local = resolveRef(workspace, fullReference);
12317
- await acquireReference(workspace, ledger, fullReference, fullReference, local);
12374
+ await acquireReference(workspace, ledger, fullReference, fullReference, () => resolveRef(workspace, fullReference));
12318
12375
  });
12319
12376
  },
12320
12377
  seal(workspace, ledger, retention) {
@@ -16362,10 +16419,11 @@
16362
16419
  // ../src/runtime/kernel_residency.ts
16363
16420
  init_define_NOMOS_KERNEL_RELEASE();
16364
16421
  init_shims();
16365
- var _open;
16422
+ var _open, _trap;
16366
16423
  var KernelResidency = class {
16367
16424
  constructor() {
16368
16425
  __privateAdd(this, _open, /* @__PURE__ */ new Set());
16426
+ __privateAdd(this, _trap);
16369
16427
  }
16370
16428
  workspaces() {
16371
16429
  return [...__privateGet(this, _open)];
@@ -16381,9 +16439,16 @@
16381
16439
  released(workspace) {
16382
16440
  __privateGet(this, _open).delete(workspace.trim());
16383
16441
  }
16384
- /** The machine trapped: it is discarded with every workspace it held. */
16385
- trapped() {
16442
+ /** The machine trapped: it is discarded with every workspace it held. `reason` is the bounded
16443
+ * trap text the host reports when it discards the machine; the first trap is the one kept. */
16444
+ trapped(reason) {
16386
16445
  __privateGet(this, _open).clear();
16446
+ __privateGet(this, _trap) ?? __privateSet(this, _trap, reason.slice(0, 2e3));
16447
+ }
16448
+ /** Why this machine trapped, once it has; undefined while it has not. Never cleared: nothing
16449
+ * revives a trapped machine, the host replaces it (and this record with it). */
16450
+ get trap() {
16451
+ return __privateGet(this, _trap);
16387
16452
  }
16388
16453
  /** Before the kernel sees a request: a release leaves first, so a failed release cannot keep it. */
16389
16454
  before(request) {
@@ -16394,7 +16459,7 @@
16394
16459
  }
16395
16460
  after(request, response) {
16396
16461
  if (response.outcome.case === "failure" && response.outcome.value.code === "NMS-KERNEL-TRAP") {
16397
- this.trapped();
16462
+ this.trapped(`${response.outcome.value.code}: ${response.outcome.value.message}`);
16398
16463
  return;
16399
16464
  }
16400
16465
  const operation = request.operation;
@@ -16413,6 +16478,7 @@
16413
16478
  }
16414
16479
  };
16415
16480
  _open = new WeakMap();
16481
+ _trap = new WeakMap();
16416
16482
 
16417
16483
  // ../src/runtime/main_moves.ts
16418
16484
  init_define_NOMOS_KERNEL_RELEASE();
@@ -17196,6 +17262,15 @@
17196
17262
  residentWorkspaces() {
17197
17263
  return __privateGet(this, _residency).workspaces();
17198
17264
  }
17265
+ /**
17266
+ * Why the kernel behind this port trapped, once it has (CAP-965); undefined while it has not.
17267
+ * Every kernel call passes [#call], which records a trap however it surfaced: thrown, answered
17268
+ * as an NMS-KERNEL-TRAP failure, or caught and answered as typed paper by a desk above. The host
17269
+ * reads this after every request and discards the machine; reading it never enters the kernel.
17270
+ */
17271
+ kernelTrap() {
17272
+ return __privateGet(this, _residency).trap;
17273
+ }
17199
17274
  /**
17200
17275
  * Answer only the peer-local inventory question.
17201
17276
  *
@@ -18294,14 +18369,13 @@
18294
18369
  response = __privateMethod(this, _KernelPort_instances, exclusive_fn).call(this, operation, () => timelineTraceEnabled() ? __privateMethod(this, _KernelPort_instances, timedCall_fn).call(this, operation, request) : fromBinary(CallResponseSchema, __privateGet(this, _kernel2).call(toBinary(CallRequestSchema, request))));
18295
18370
  } catch (error) {
18296
18371
  __privateGet(this, _attached)?.lost();
18297
- if (error instanceof Error && /NMS-KERNEL-TRAP|\btrap\b|unreachable|out of bounds/i.test(error.message)) {
18298
- __privateGet(this, _residency).trapped();
18299
- }
18372
+ const trapped = error instanceof Error && /NMS-KERNEL-TRAP|\btrap\b|unreachable|out of bounds/i.test(error.message);
18300
18373
  if (error instanceof Error && /\btrap\b|unreachable|out of bounds/i.test(error.message)) {
18301
18374
  const top = request.operation.case ?? "empty";
18302
18375
  const nested = request.operation.case === "custody" ? request.operation.value.operation.case ?? "empty" : request.operation.case === "query" ? request.operation.value.query.case === "named" ? `named:${request.operation.value.query.value.operation}` : request.operation.value.query.case ?? "empty" : "";
18303
18376
  error.message = `kernel-operation=${top}/${nested}: ${error.message}`;
18304
18377
  }
18378
+ if (trapped) __privateGet(this, _residency).trapped(error.message);
18305
18379
  const pending = readIndexPendingAnswer(request, error instanceof Error ? error.message : String(error));
18306
18380
  if (pending !== void 0) return pending;
18307
18381
  rethrowTypedKernelFailure(error);
@@ -26254,6 +26328,7 @@
26254
26328
  CredentialReplaced: "credential_replaced",
26255
26329
  Failed: "failed",
26256
26330
  Reconnected: "reconnected",
26331
+ NetworkRestored: "network_restored",
26257
26332
  DependencyAdvanced: "dependency_advanced",
26258
26333
  RebornRemotely: "reborn_remotely",
26259
26334
  LocalCopyDropAuthorized: "local_copy_drop_authorized",
@@ -26341,6 +26416,8 @@
26341
26416
  };
26342
26417
  }
26343
26418
  return due(event.nowUnixMillis);
26419
+ case ReplicaFollowEventKind.NetworkRestored:
26420
+ return state.case === ReplicaFollowPhase.Offline || state.case === ReplicaFollowPhase.Backoff && !state.refusal ? due(event.nowUnixMillis) : { state, effects: [] };
26344
26421
  case ReplicaFollowEventKind.Reconnected:
26345
26422
  if (state.case === ReplicaFollowPhase.Backoff && state.refusal?.blocked) {
26346
26423
  return refusedEvent(state, state.refusal, event.nowUnixMillis);
@@ -26799,6 +26876,20 @@
26799
26876
  reconnected(workspace, remoteAdvanced = false) {
26800
26877
  return __privateMethod(this, _ReplicaFollowController_instances, event_fn).call(this, workspace, ReplicaFollowEventKind.Reconnected, remoteAdvanced);
26801
26878
  }
26879
+ networkRestored() {
26880
+ if (!__privateGet(this, _recovered)) return [];
26881
+ const woken = [];
26882
+ for (const follow of __privateGet(this, _desk).all()) {
26883
+ __privateGet(this, _desk).transition(follow.spec.workspace, {
26884
+ case: ReplicaFollowEventKind.NetworkRestored,
26885
+ nowUnixMillis: __privateMethod(this, _ReplicaFollowController_instances, now_fn5).call(this)
26886
+ });
26887
+ if (__privateGet(this, _desk).get(follow.spec.workspace)?.state.case === ReplicaFollowPhase.Due) {
26888
+ woken.push(follow.spec.workspace);
26889
+ }
26890
+ }
26891
+ return woken;
26892
+ }
26802
26893
  /** Another workspace advanced or settled; every held dependency gets one retry. */
26803
26894
  dependencyAdvanced(except) {
26804
26895
  if (!__privateGet(this, _recovered)) return [];
@@ -27056,7 +27147,7 @@
27056
27147
  // ../src/runtime/runtime_identity.ts
27057
27148
  init_define_NOMOS_KERNEL_RELEASE();
27058
27149
  init_shims();
27059
- var PEER_RUNTIME_IDENTITY = "0.119.11" ? `@githolon/runtime@${"0.119.11"}` : "@githolon/runtime@unbundled";
27150
+ var PEER_RUNTIME_IDENTITY = "0.119.12" ? `@githolon/runtime@${"0.119.12"}` : "@githolon/runtime@unbundled";
27060
27151
 
27061
27152
  // ../src/runtime/replica_follow_desk.ts
27062
27153
  init_define_NOMOS_KERNEL_RELEASE();
@@ -28041,6 +28132,7 @@
28041
28132
  var MAX_CHECKPOINT_WINDOW_CHUNKS = 32;
28042
28133
  var CHECKPOINT_STALE_OFFERS = 64;
28043
28134
  var MAX_STREAM_BATCH_OFFERS = 256;
28135
+ var LEVEL_PACK_BYTES = 4 * 1024 * 1024 - 16 * 1024;
28044
28136
  var MAX_HISTORY_SLICE = 256;
28045
28137
  var MAX_HELD_SLICES = 4;
28046
28138
  var CHECKPOINT_CACHE_BYTES = 1024 * 1024 * 1024;
@@ -28064,7 +28156,7 @@
28064
28156
  }) });
28065
28157
  var OFF_MAIN_AFTER_MILLIS = 6e4;
28066
28158
  var MAX_UNFOUND_HEADS = 1024;
28067
- var _kernel12, _now, _historyWanted, _sealed, _codec, _checkpoints3, _slices, _cachedBytes, _unfound, _LiveStreamServer_instances, frontier_fn, shallow_fn, batch_fn, checkpoint_fn, current_fn, sealedOnMain_fn, outcomes_fn, build_fn, evict_fn, sharedTrees_fn, thin_fn, history_fn, buildSlice_fn, ref_fn;
28159
+ var _kernel12, _now, _historyWanted, _sealed, _codec, _checkpoints3, _slices, _cachedBytes, _unfound, _LiveStreamServer_instances, frontier_fn, shallow_fn, batch_fn, reaches_fn, checkpoint_fn, current_fn, sealedOnMain_fn, outcomes_fn, build_fn, evict_fn, sharedTrees_fn, thin_fn, history_fn, buildSlice_fn, ref_fn;
28068
28160
  var LiveStreamServer = class {
28069
28161
  constructor(kernel, now2 = Date.now, historyWanted = () => {
28070
28162
  }, sealed = () => void 0, codec) {
@@ -28185,7 +28277,7 @@
28185
28277
  )];
28186
28278
  }
28187
28279
  const maxOffers = Math.min(Math.max(1, frontier.maxOffers || MAX_STREAM_BATCH_OFFERS), MAX_STREAM_BATCH_OFFERS);
28188
- return [...answer, __privateMethod(this, _LiveStreamServer_instances, batch_fn).call(this, workspace, requestId, head, main, maxOffers)];
28280
+ return [...answer, ...__privateMethod(this, _LiveStreamServer_instances, batch_fn).call(this, workspace, requestId, head, main, maxOffers, remountAsk(), behind ?? 0n)];
28189
28281
  };
28190
28282
  /** Whether this peer's custody of the workspace is shallow. Unknown counts as shallow: it keeps the
28191
28283
  * existing wait for history rather than calling a head off main. */
@@ -28203,21 +28295,44 @@
28203
28295
  * bounded walk and one bounded pack (O(batch)). The copy's kernel adopts exactly these commits on
28204
28296
  * the same parent, judging each offer, so its next head is one this peer holds.
28205
28297
  */
28206
- batch_fn = function(workspace, requestId, base, main, maxOffers) {
28298
+ batch_fn = function(workspace, requestId, base, main, maxOffers, remountAsk, behind) {
28207
28299
  const mount = workspaceMount(workspace);
28208
- const intents = __privateGet(this, _kernel12).transportIntentsAbove(mount, requestId, BigInt(maxOffers), base, main, true).intents;
28209
- const batchHead = intents.at(-1)?.oid ?? main;
28210
- return frame({ case: "pack", value: create(LivePackSchema, {
28211
- requestId: `${LEVEL_BATCH2}${base}`,
28212
- reference: "refs/heads/main",
28213
- head: batchHead,
28214
- base,
28215
- pack: __privateGet(this, _kernel12).packDelta(mount, requestId, batchHead, base),
28216
- offers: intents.length,
28217
- ...__privateGet(this, _sealed).call(this, workspace) ? { sealed: __privateGet(this, _sealed).call(this, workspace) } : {}
28218
- }) });
28300
+ let limit = maxOffers;
28301
+ for (; ; ) {
28302
+ const intents = __privateGet(this, _kernel12).transportIntentsAbove(mount, requestId, BigInt(limit), base, main, true).intents;
28303
+ const batchHead = intents.at(-1)?.oid ?? main;
28304
+ const pack = __privateGet(this, _kernel12).packDelta(mount, requestId, batchHead, base);
28305
+ if (pack.byteLength <= LEVEL_PACK_BYTES) {
28306
+ return [frame({ case: "pack", value: create(LivePackSchema, {
28307
+ requestId: `${LEVEL_BATCH2}${base}`,
28308
+ reference: "refs/heads/main",
28309
+ head: batchHead,
28310
+ base,
28311
+ pack,
28312
+ offers: intents.length,
28313
+ ...__privateGet(this, _sealed).call(this, workspace) ? { sealed: __privateGet(this, _sealed).call(this, workspace) } : {}
28314
+ }) })];
28315
+ }
28316
+ if (intents.length > 1) {
28317
+ limit = Math.floor(intents.length / 2);
28318
+ continue;
28319
+ }
28320
+ const sealed = __privateMethod(this, _LiveStreamServer_instances, sealedOnMain_fn).call(this, workspace, requestId, main);
28321
+ const above = sealed !== void 0 && sealed !== batchHead && __privateMethod(this, _LiveStreamServer_instances, reaches_fn).call(this, mount, requestId, batchHead, sealed);
28322
+ return __privateMethod(this, _LiveStreamServer_instances, checkpoint_fn).call(this, workspace, requestId, remountAsk, behind, above ? sealed : main);
28323
+ }
28219
28324
  };
28220
- checkpoint_fn = function(workspace, requestId, request, remountBehind) {
28325
+ /** Whether `head` is on the walk from `above` down this peer's main, i.e. `above` is at or past it. */
28326
+ reaches_fn = function(mount, requestId, head, above) {
28327
+ try {
28328
+ return __privateGet(this, _kernel12).historySummary(mount, requestId, head, above).reachedBase;
28329
+ } catch {
28330
+ return false;
28331
+ }
28332
+ };
28333
+ /** `atHead`: the checkpoint is taken at exactly that head (a level batch's fallback, above an offer
28334
+ * no frame can carry), never the newest held one below it. */
28335
+ checkpoint_fn = function(workspace, requestId, request, remountBehind, atHead) {
28221
28336
  const mount = workspaceMount(workspace);
28222
28337
  const main = __privateGet(this, _kernel12).head(mount, requestId);
28223
28338
  if (!main) return [refusal("", "nomos.stream.opening", "the workspace has no main on this peer yet", 250)];
@@ -28232,7 +28347,11 @@
28232
28347
  }
28233
28348
  }
28234
28349
  const resumed = checkpoint !== void 0;
28235
- if (!checkpoint) checkpoint = __privateMethod(this, _LiveStreamServer_instances, thin_fn).call(this, __privateMethod(this, _LiveStreamServer_instances, current_fn).call(this, workspace, requestId, main), trees);
28350
+ if (!checkpoint) {
28351
+ const newest = __privateGet(this, _checkpoints3).get(workspace)?.at(-1);
28352
+ const whole = atHead === void 0 ? __privateMethod(this, _LiveStreamServer_instances, current_fn).call(this, workspace, requestId, main) : newest?.head === atHead ? newest : __privateMethod(this, _LiveStreamServer_instances, build_fn).call(this, workspace, requestId, atHead);
28353
+ checkpoint = __privateMethod(this, _LiveStreamServer_instances, thin_fn).call(this, whole, trees);
28354
+ }
28236
28355
  checkpoint.servedAt = __privateGet(this, _now).call(this);
28237
28356
  const sealed = __privateGet(this, _sealed).call(this, workspace);
28238
28357
  const offset = resumed ? Number(request.offset) : 0;
@@ -28790,15 +28909,15 @@
28790
28909
  if (this.writeBurst && !link.publisher) link.owedSince ?? (link.owedSince = this.clock.monotonicNanoseconds());
28791
28910
  }
28792
28911
  /** Local commits the custodian has not yet admitted: those not yet offered, and those offered
28793
- * whose admission has not come back. Undefined when the link carries no follower stream or
28794
- * local history cannot be counted from the custodian's base.
28912
+ * whose admission has not come back. Offline copies are counted from their durable tracked
28913
+ * base, including new offline edits. Undefined when custody/history cannot be counted.
28795
28914
  *
28796
28915
  * Counting asks the kernel to walk history twice. Every follow report asks, and a save reports
28797
28916
  * on its own turn, so during a local-write burst the last count is served instead and one fresh
28798
28917
  * report follows when the burst lets it (writes quiet, or the staleness cap). */
28799
28918
  progress(workspace) {
28800
28919
  const link = __privateGet(this, _links).get(workspace);
28801
- if (!link || link.publisher || link.state !== "open" || !link.stream && !link.dirty) {
28920
+ if (link?.publisher) {
28802
28921
  __privateGet(this, _progress).delete(workspace);
28803
28922
  return void 0;
28804
28923
  }
@@ -28818,6 +28937,18 @@
28818
28937
  return void 0;
28819
28938
  }
28820
28939
  }
28940
+ /** A physical offline-to-online edge invalidates transport retry deadlines,
28941
+ * not custody evidence. Open links and their unacknowledged work stay intact. */
28942
+ networkRestored() {
28943
+ let retried = 0;
28944
+ for (const link of __privateGet(this, _links).values()) {
28945
+ if (link.state === "open") continue;
28946
+ if (link.state === "opening") __privateMethod(this, _LiveCorrespondenceDesk_instances, closeByRuntime_fn).call(this, link, "network restored during open");
28947
+ __privateMethod(this, _LiveCorrespondenceDesk_instances, open_fn2).call(this, link);
28948
+ retried++;
28949
+ }
28950
+ return retried;
28951
+ }
28821
28952
  export(binding, base, requestId, options = {}) {
28822
28953
  if (this.kernel.isResident(binding.workspace) === false) {
28823
28954
  return create(CustodyOfferBatchRequestSchema, { protocolVersion: 2 });
@@ -29122,14 +29253,14 @@
29122
29253
  };
29123
29254
  count_fn = function(link, mount) {
29124
29255
  const head = this.kernel.head(mount, ++__privateWrapper(this, _requestId3)._);
29125
- const acknowledged = __privateMethod(this, _LiveCorrespondenceDesk_instances, currentCursor_fn).call(this, link, mount, head)?.local ?? __privateMethod(this, _LiveCorrespondenceDesk_instances, heldPeerMain_fn).call(this, link, mount, head) ?? this.kernel.resolveRef(mount, ++__privateWrapper(this, _requestId3)._, TRACKED_MAIN2);
29256
+ const acknowledged = (link ? __privateMethod(this, _LiveCorrespondenceDesk_instances, currentCursor_fn).call(this, link, mount, head)?.local ?? __privateMethod(this, _LiveCorrespondenceDesk_instances, heldPeerMain_fn).call(this, link, mount, head) : void 0) ?? this.kernel.resolveRef(mount, ++__privateWrapper(this, _requestId3)._, TRACKED_MAIN2);
29126
29257
  if (!head || !acknowledged) return void 0;
29127
29258
  const count = (base, tip) => {
29128
29259
  if (base === tip) return 0;
29129
29260
  const summary = __privateMethod(this, _LiveCorrespondenceDesk_instances, chain_fn).call(this, mount, base, tip);
29130
29261
  return summary?.reachedBase ? Number(summary.commitCount) : void 0;
29131
29262
  };
29132
- const sent = link.stream?.unanswered.length ? link.stream.sent : void 0;
29263
+ const sent = link?.state === "open" && link.stream?.unanswered.length ? link.stream.sent : void 0;
29133
29264
  const unacknowledged = sent ? count(acknowledged, sent) : 0;
29134
29265
  const unsent = count(sent ?? acknowledged, head);
29135
29266
  return unacknowledged === void 0 || unsent === void 0 ? void 0 : { unsent, unacknowledged };
@@ -33571,6 +33702,9 @@
33571
33702
  const delay = __privateGet(this, _controller).reconnected(workspace);
33572
33703
  if (delay !== void 0) __privateMethod(this, _ReplicaFollowLane_instances, scheduleAt_fn).call(this, workspace, __privateMethod(this, _ReplicaFollowLane_instances, now_fn8).call(this) + delay);
33573
33704
  }
33705
+ networkRestored() {
33706
+ for (const workspace of __privateGet(this, _controller).networkRestored()) this.schedule(workspace);
33707
+ }
33574
33708
  /** The upstream announced a new frontier: news even to a follow the kernel refused. */
33575
33709
  remoteAdvanced(workspace) {
33576
33710
  const delay = __privateGet(this, _controller).reconnected(workspace, true);
@@ -33878,7 +34012,7 @@
33878
34012
  var REFETCH_AWAITS_PROVIDER = "nomos.runtime.refetch_awaits_provider";
33879
34013
  var LOCAL_COPY_REFETCHING = "nomos.runtime.local_copy_refetching";
33880
34014
  var LIVE_ADMISSION_GRACE_MILLIS = 1e4;
33881
- var _kernel23, _retention3, _custodyStorage, _custody3, _sessions11, _credentials5, _placement3, _clock20, _outboxClock, _follows2, _followLane, _readability2, _origins3, _preserved, _dropReasons, _lawProductsImported2, _lawProductsInFlight2, _replacing, _providerServesSameCopy, _events4, _onSyncFrontier, _onSyncCompleted, _onPlacementFetched, _onShallowMount, _onOffered, _liveAdmitted2, _onOutboxHistoryRequired, _backgroundHistory, _receiveStep2, _lawTrees2, _remoteOffers, _recoveries, _deliveries, _httpDeliveries, _syncs, _syncWorkspaces, _retries, _remoteDeliveryKeys, _outboxDueAt, _settledFollowReported, _openLinks, _liveAdmissionDue, _linkReported, _lastClosure, _followsReported, _warming, _recoveredOutboxes, _outboxObservations, _outboxCursor, _httpDeliveryPaths, _executesCustodianObligations, _CorrespondenceDesk_instances, dropRoundsOf_fn, observeWarming_fn, eligibleOutboxEntry_fn, settleDelivery_fn, nowMillis_fn2, liveAdmissionOverdue_fn, warmingPosture_fn, activeSyncEffect_fn, dropReason_fn, roundInFlight_fn, observeSyncResult_fn, syncFailed_fn, scheduleFromResult_fn, syncCompleted_fn, recordPreserved_fn, scheduleOutbox_fn;
34015
+ var _kernel23, _retention3, _custodyStorage, _custody3, _sessions11, _credentials5, _placement3, _clock20, _outboxClock, _follows2, _followLane, _readability2, _origins3, _preserved, _dropReasons, _lawProductsImported2, _lawProductsInFlight2, _replacing, _providerServesSameCopy, _events4, _onSyncFrontier, _onSyncCompleted, _onPlacementFetched, _onShallowMount, _onOffered, _liveAdmitted2, _onOutboxHistoryRequired, _backgroundHistory, _receiveStep2, _lawTrees2, _remoteOffers, _recoveries, _deliveries, _httpDeliveries, _syncs, _syncWorkspaces, _retries, _remoteDeliveryKeys, _outboxDueAt, _settledFollowReported, _openLinks, _liveAdmissionDue, _linkReported, _lastClosure, _followsReported, _reportedStreamProgress, _warming, _recoveredOutboxes, _outboxObservations, _outboxCursor, _httpDeliveryPaths, _executesCustodianObligations, _CorrespondenceDesk_instances, dropRoundsOf_fn, observeWarming_fn, eligibleOutboxEntry_fn, settleDelivery_fn, nowMillis_fn2, liveAdmissionOverdue_fn, warmingPosture_fn, activeSyncEffect_fn, dropReason_fn, roundInFlight_fn, observeSyncResult_fn, syncFailed_fn, scheduleFromResult_fn, syncCompleted_fn, recordPreserved_fn, scheduleOutbox_fn;
33882
34016
  var CorrespondenceDesk = class {
33883
34017
  constructor(args) {
33884
34018
  __privateAdd(this, _CorrespondenceDesk_instances);
@@ -33938,6 +34072,9 @@
33938
34072
  __privateAdd(this, _lastClosure, /* @__PURE__ */ new Map());
33939
34073
  /** The last follow summary published, so an unchanged summary is not re-sent. */
33940
34074
  __privateAdd(this, _followsReported, "");
34075
+ // Scheduler probes may report phase/time changes, but are not new custody
34076
+ // evidence. Reuse counts from the last actual observation on those probes.
34077
+ __privateAdd(this, _reportedStreamProgress, /* @__PURE__ */ new Map());
33941
34078
  /** Workspaces whose custodian is opening them from verified custody, and since when (CAP-769). */
33942
34079
  __privateAdd(this, _warming, new CustodianWarmingLedger());
33943
34080
  /** One-use handoff from recovery to its scheduled selector, never a durable inventory cache. */
@@ -34223,6 +34360,10 @@
34223
34360
  (_a = __privateGet(this, _onSyncCompleted)) == null ? void 0 : _a.call(this, binding.session, event);
34224
34361
  }
34225
34362
  }
34363
+ networkRestored() {
34364
+ __privateGet(this, _followLane).networkRestored();
34365
+ this.reportFollows();
34366
+ }
34226
34367
  /** The live link to a followed workspace's upstream opened or reopened. */
34227
34368
  replicaLinkOpened(workspace) {
34228
34369
  __privateGet(this, _followLane).reconnected(workspace);
@@ -34254,13 +34395,17 @@
34254
34395
  this.reportFollows();
34255
34396
  }
34256
34397
  /** Publish, application-wide, how many follows this peer keeps up with and how many are in sync. */
34257
- reportFollows(force = false) {
34398
+ reportFollows(force = false, refreshStreamProgress = true) {
34258
34399
  let workspaces;
34259
34400
  try {
34260
34401
  workspaces = __privateGet(this, _follows2).knownWorkspaces();
34261
34402
  } catch {
34262
34403
  return;
34263
34404
  }
34405
+ const followed = new Set(workspaces);
34406
+ for (const workspace of __privateGet(this, _reportedStreamProgress).keys()) {
34407
+ if (!followed.has(workspace)) __privateGet(this, _reportedStreamProgress).delete(workspace);
34408
+ }
34264
34409
  let settled = 0;
34265
34410
  let live = 0;
34266
34411
  const now2 = __privateMethod(this, _CorrespondenceDesk_instances, nowMillis_fn2).call(this);
@@ -34290,7 +34435,10 @@
34290
34435
  const dueAt2 = state.case === ReplicaFollowPhase.Due || state.case === ReplicaFollowPhase.ReplacingLocal ? state.dueAtUnixMillis : void 0;
34291
34436
  const attempt = state.case === ReplicaFollowPhase.Running || state.case === ReplicaFollowPhase.Offline || state.case === ReplicaFollowPhase.InvalidCredential || state.case === ReplicaFollowPhase.Backoff || state.case === ReplicaFollowPhase.ReplacingLocal ? state.attempt : void 0;
34292
34437
  const activeEffect = state.case === ReplicaFollowPhase.Running ? __privateMethod(this, _CorrespondenceDesk_instances, activeSyncEffect_fn).call(this, workspace) : void 0;
34293
- const stream = this.streamProgress?.(workspace);
34438
+ if (refreshStreamProgress || force || !__privateGet(this, _reportedStreamProgress).has(workspace)) {
34439
+ __privateGet(this, _reportedStreamProgress).set(workspace, this.streamProgress?.(workspace));
34440
+ }
34441
+ const stream = __privateGet(this, _reportedStreamProgress).get(workspace);
34294
34442
  const custodianWarming = __privateMethod(this, _CorrespondenceDesk_instances, warmingPosture_fn).call(this, workspace, state, now2);
34295
34443
  return [create(FollowObservationSchema, {
34296
34444
  workspace,
@@ -34394,7 +34542,7 @@
34394
34542
  [...__privateGet(this, _syncWorkspaces).values()].flatMap((active) => [...active.workspaces])
34395
34543
  );
34396
34544
  const followCandidates = __privateGet(this, _followLane).candidates(activeSyncWorkspaces, excludedWorkspaces);
34397
- this.reportFollows();
34545
+ this.reportFollows(false, false);
34398
34546
  const due2 = [
34399
34547
  ...followCandidates,
34400
34548
  ...[...__privateGet(this, _outboxDueAt).entries()].map(([workspace2, at]) => ({
@@ -34978,6 +35126,7 @@
34978
35126
  _linkReported = new WeakMap();
34979
35127
  _lastClosure = new WeakMap();
34980
35128
  _followsReported = new WeakMap();
35129
+ _reportedStreamProgress = new WeakMap();
34981
35130
  _warming = new WeakMap();
34982
35131
  _recoveredOutboxes = new WeakMap();
34983
35132
  _outboxObservations = new WeakMap();
@@ -37690,6 +37839,11 @@
37690
37839
  residentWorkspaces() {
37691
37840
  return __privateGet(this, _residency5).residentWorkspaces();
37692
37841
  }
37842
+ /** Why this office's kernel trapped, once it has (CAP-965): the kernel port's record, which a desk
37843
+ * that answered the trap as typed paper cannot hide. The host discards the machine on it. */
37844
+ kernelTrap() {
37845
+ return __privateGet(this, _kernel28).kernelTrap();
37846
+ }
37693
37847
  retentionOutstandingDetails() {
37694
37848
  return __privateGet(this, _residency5).retentionOutstandingDetails();
37695
37849
  }
@@ -37968,7 +38122,7 @@
37968
38122
  const yieldedRequest = resumed ?? request;
37969
38123
  const continued = yieldedRequest.command.case === "continueCorrespondence" ? yieldedRequest.command.value.workId : void 0;
37970
38124
  const background = continued === void 0 ? __privateGet(this, _backgroundPapers).has(yieldedRequest.requestId) : __privateGet(this, _backgroundWork).has(continued);
37971
- const foreground = !background && (continued === void 0 ? yieldedRequest.command.case !== "socketReceipt" : __privateGet(this, _foregroundWork).delete(continued));
38125
+ const foreground = !background && (continued === void 0 ? !["socketReceipt", "networkRestored", "listWorkspaces"].includes(yieldedRequest.command.case ?? "") : __privateGet(this, _foregroundWork).delete(continued));
37972
38126
  if (background) {
37973
38127
  const held = __privateMethod(this, _PeerOffice_instances, yieldBackground_fn).call(this, yieldedRequest, continued);
37974
38128
  if (held) return { responseProtobuf: toBinary(RuntimeResponseSchema, held) };
@@ -38153,6 +38307,14 @@
38153
38307
  let pendingWorkId;
38154
38308
  let pendingEffectId;
38155
38309
  try {
38310
+ if (request.command.case === "networkRestored") {
38311
+ const linksRetried = __privateGet(this, _live3).networkRestored();
38312
+ __privateGet(this, _correspondence3).networkRestored();
38313
+ return __privateMethod(this, _PeerOffice_instances, response_fn).call(this, request, {
38314
+ case: "networkRestored",
38315
+ value: create(NetworkRestoredSchema, { linksRetried })
38316
+ });
38317
+ }
38156
38318
  if (request.command.case === "socketReceipt") {
38157
38319
  const rung = /* @__PURE__ */ new Set();
38158
38320
  __privateSet(this, _rungThisReceipt, rung);
@@ -38262,6 +38424,7 @@
38262
38424
  }
38263
38425
  }
38264
38426
  switch (request.command.case) {
38427
+ case "networkRestored":
38265
38428
  case "socketReceipt":
38266
38429
  throw new Error("socket receipts must enter through the peer lifecycle");
38267
38430
  case "bindSession": {
@@ -39289,6 +39452,7 @@
39289
39452
  correspondenceHolds: () => peer2.correspondenceHolds(),
39290
39453
  residentObservation: (workspace) => peer2.residentObservation(workspace),
39291
39454
  residentWorkspaces: () => peer2.residentWorkspaces(),
39455
+ kernelTrap: () => peer2.kernelTrap(),
39292
39456
  drainEvents,
39293
39457
  runBackground,
39294
39458
  close() {