githolon 0.119.9 → 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.
- package/dist/compile_mountability_entry.js +330 -106
- package/dist/dev-server.mjs +307 -103
- package/dist/framework/bootstrap.law.usdz +0 -0
- package/dist/framework/nomos.law.usdz +0 -0
- package/dist/framework/nomos.reception.mjs +2 -2
- package/dist/full-cli.mjs +371 -123
- package/package.json +2 -2
package/dist/dev-server.mjs
CHANGED
|
@@ -437,7 +437,7 @@ var ReadMaintenanceCauseSchema = /* @__PURE__ */ enumDesc2(file_nomos_runtime_v2
|
|
|
437
437
|
var ReadMaintenanceCause = /* @__PURE__ */ tsEnum2(ReadMaintenanceCauseSchema);
|
|
438
438
|
|
|
439
439
|
// ../adapter/proto/nomos/runtime/v2/correspondence_desk_pb.js
|
|
440
|
-
var file_nomos_runtime_v2_correspondence_desk = /* @__PURE__ */ fileDesc6("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]);
|
|
440
|
+
var file_nomos_runtime_v2_correspondence_desk = /* @__PURE__ */ fileDesc6("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]);
|
|
441
441
|
var VerifyWorkspaceChainResultSchema = /* @__PURE__ */ messageDesc6(file_nomos_runtime_v2_correspondence_desk, 7);
|
|
442
442
|
var VerifyChainHistorySchema = /* @__PURE__ */ messageDesc6(file_nomos_runtime_v2_correspondence_desk, 8);
|
|
443
443
|
var SyncWorkspaceRequestSchema = /* @__PURE__ */ messageDesc6(file_nomos_runtime_v2_correspondence_desk, 9);
|
|
@@ -521,6 +521,7 @@ var CustodyIntentQuarantinedSchema = /* @__PURE__ */ messageDesc6(file_nomos_run
|
|
|
521
521
|
var WorkspaceEffectDeferredSchema = /* @__PURE__ */ messageDesc6(file_nomos_runtime_v2_correspondence_desk, 106);
|
|
522
522
|
var PeerGitRefsAlongsideSchema = /* @__PURE__ */ messageDesc6(file_nomos_runtime_v2_correspondence_desk, 109);
|
|
523
523
|
var PeerGitRefsFetchedSchema = /* @__PURE__ */ messageDesc6(file_nomos_runtime_v2_correspondence_desk, 110);
|
|
524
|
+
var NetworkRestoredSchema = /* @__PURE__ */ messageDesc6(file_nomos_runtime_v2_correspondence_desk, 112);
|
|
524
525
|
var PeerHttpMethodSchema = /* @__PURE__ */ enumDesc3(file_nomos_runtime_v2_correspondence_desk, 1);
|
|
525
526
|
var PeerHttpMethod = /* @__PURE__ */ tsEnum3(PeerHttpMethodSchema);
|
|
526
527
|
var PeerEffectFailureReasonSchema = /* @__PURE__ */ enumDesc3(file_nomos_runtime_v2_correspondence_desk, 2);
|
|
@@ -710,17 +711,17 @@ var ReferenceVersionStatus = /* @__PURE__ */ tsEnum15(ReferenceVersionStatusSche
|
|
|
710
711
|
|
|
711
712
|
// ../adapter/proto/nomos/runtime/v2/residency_desk_pb.js
|
|
712
713
|
import { enumDesc as enumDesc16, fileDesc as fileDesc23, messageDesc as messageDesc23, tsEnum as tsEnum16 } from "@bufbuild/protobuf/codegenv2";
|
|
713
|
-
var file_nomos_runtime_v2_residency_desk = /* @__PURE__ */ fileDesc23("
|
|
714
|
+
var file_nomos_runtime_v2_residency_desk = /* @__PURE__ */ fileDesc23("CiVub21vcy9ydW50aW1lL3YyL3Jlc2lkZW5jeV9kZXNrLnByb3RvEhBub21vcy5ydW50aW1lLnYyIhoKGFJlc2lkZW5jeVByZXNzdXJlUmVxdWVzdCJIChVSZXRhaW5Gcm9udGllclJlcXVlc3QSEQoJd29ya3NwYWNlGAEgASgJEg4KBmJyYW5jaBgCIAEoCRIMCgRoZWFkGAMgASgJIm8KGVJlc2lkZW5jeVByZXNzdXJlUmVsaWV2ZWQSGgoSZXZpY3RlZF93b3Jrc3BhY2VzGAEgAygJEhcKD3dhcm1fd29ya3NwYWNlcxgCIAMoCRIdChV3YXJtX3Jlc2lkZW5jeV9taWxsaXMYAyABKAQi6gcKF1Jlc2lkZW50V29ya3NwYWNlRGV0YWlsEhEKCXdvcmtzcGFjZRgBIAEoCRITCgtpZGxlX21pbGxpcxgCIAEoBBIdChByZXBvc2l0b3J5X2J5dGVzGAMgASgESACIAQESKAobbWF0ZXJpYWxpemVkX2Zyb250aWVyX2J5dGVzGAQgASgESAGIAQESPwoJcmVhZGluZXNzGAUgASgOMiwubm9tb3MucnVudGltZS52Mi5SZXNpZGVudFdvcmtzcGFjZVJlYWRpbmVzcxIYCgtzcWxpdGVfaGVhZBgGIAEoCUgCiAEBEhUKCGdpdF9oZWFkGAcgASgJSAOIAQESPgoPaGlzdG9yeV9wb3N0dXJlGAggASgOMiUubm9tb3MucnVudGltZS52Mi5Mb2NhbEhpc3RvcnlQb3N0dXJlEhoKEnNoYWxsb3dfYm91bmRhcmllcxgJIAEoDRIvCiJyZXBvc2l0b3J5X21lYXN1cmVkX2F0X3VuaXhfbWlsbGlzGAogASgESASIAQESLQogZnJvbnRpZXJfbWVhc3VyZWRfYXRfdW5peF9taWxsaXMYCyABKARIBYgBARI7CglwbGFjZW1lbnQYDCABKAsyIy5ub21vcy5ydW50aW1lLnYyLlJlc2lkZW50UGxhY2VtZW50SAaIAQESNQoGb3V0Ym94GA0gASgLMiAubm9tb3MucnVudGltZS52Mi5SZXNpZGVudE91dGJveEgHiAEBEj4KBmNlbnN1cxgOIAEoCzIpLm5vbW9zLnJ1bnRpbWUudjIuUmVzaWRlbnRBZ2dyZWdhdGVDZW5zdXNICIgBARIdChBmdWxsX3JlcGxheV9oZWFkGA8gASgJSAmIAQESIgoVbG9jYWxfaGlzdG9yeV9jb21taXRzGBAgASgESAqIAQESKAobcGxhY2VtZW50X3Vub2JzZXJ2ZWRfcmVhc29uGBEgASgJSAuIAQFCEwoRX3JlcG9zaXRvcnlfYnl0ZXNCHgocX21hdGVyaWFsaXplZF9mcm9udGllcl9ieXRlc0IOCgxfc3FsaXRlX2hlYWRCCwoJX2dpdF9oZWFkQiUKI19yZXBvc2l0b3J5X21lYXN1cmVkX2F0X3VuaXhfbWlsbGlzQiMKIV9mcm9udGllcl9tZWFzdXJlZF9hdF91bml4X21pbGxpc0IMCgpfcGxhY2VtZW50QgkKB19vdXRib3hCCQoHX2NlbnN1c0ITChFfZnVsbF9yZXBsYXlfaGVhZEIYChZfbG9jYWxfaGlzdG9yeV9jb21taXRzQh4KHF9wbGFjZW1lbnRfdW5vYnNlcnZlZF9yZWFzb24iiwIKF1Jlc2lkZW50QWdncmVnYXRlQ2Vuc3VzEgwKBGhlYWQYASABKAkSHAoPYWdncmVnYXRlX2NvdW50GAIgASgESACIAQESFwoKc3RhdGVfcm9vdBgDIAEoCUgBiAEBEjYKCXRvcF90eXBlcxgEIAMoCzIjLm5vbW9zLmtlcm5lbC52MS5BZ2dyZWdhdGVUeXBlQ291bnQSHQoQdHlwZXNfc3RhdGVfcm9vdBgFIAEoCUgCiAEBEhwKFG9ic2VydmVkX3VuaXhfbWlsbGlzGAYgASgEQhIKEF9hZ2dyZWdhdGVfY291bnRCDQoLX3N0YXRlX3Jvb3RCEwoRX3R5cGVzX3N0YXRlX3Jvb3QisQEKFVJlc2lkZW50UGxhY2VtZW50UnVsZRISCgpwZWVyX2NsYXNzGAEgASgJEkAKEGtlcm5lbF9yZXNpZGVuY3kYAiABKA4yJi5ub21vcy5rZXJuZWwudjEuS2VybmVsUmVzaWRlbmN5SW50ZW50EkIKEWN1c3RvZHlfcmV0ZW50aW9uGAMgASgOMicubm9tb3Mua2VybmVsLnYxLkN1c3RvZHlSZXRlbnRpb25JbnRlbnQiqgMKEVJlc2lkZW50UGxhY2VtZW50EhUKCGZyb250aWVyGAEgASgJSACIAQESEwoLZGVjbGFyYXRpb24YAiABKAkSEgoKYWRvcHRlZF9ieRgDIAEoCRI2CgVydWxlcxgEIAMoCzInLm5vbW9zLnJ1bnRpbWUudjIuUmVzaWRlbnRQbGFjZW1lbnRSdWxlEhQKDHJlbW90ZV9uYW1lcxgFIAMoCRIiChpyZWNpcGllbnRfbWFpbGJveF9kZWNsYXJlZBgGIAEoCBJKChplZmZlY3RpdmVfa2VybmVsX3Jlc2lkZW5jeRgHIAEoDjImLm5vbW9zLmtlcm5lbC52MS5LZXJuZWxSZXNpZGVuY3lJbnRlbnQSTAobZWZmZWN0aXZlX2N1c3RvZHlfcmV0ZW50aW9uGAggASgOMicubm9tb3Mua2VybmVsLnYxLkN1c3RvZHlSZXRlbnRpb25JbnRlbnQSHgoWZWZmZWN0aXZlX3JlbW90ZV9uYW1lcxgJIAMoCRIcChRvYnNlcnZlZF91bml4X21pbGxpcxgKIAEoBEILCglfZnJvbnRpZXIikQEKDlJlc2lkZW50T3V0Ym94Eg8KB2VudHJpZXMYASABKA0SFAoMd29ya19wZW5kaW5nGAIgASgIEiEKFG5leHRfZHVlX3VuaXhfbWlsbGlzGAMgASgESACIAQESHAoUb2JzZXJ2ZWRfdW5peF9taWxsaXMYBCABKARCFwoVX25leHRfZHVlX3VuaXhfbWlsbGlzIuABChFLZXJuZWxXb3JrQ291bnRlchIOCgZmYW1pbHkYASABKAkSEQoJb3BlcmF0aW9uGAIgASgJEg0KBWNhbGxzGAMgASgEEhAKCGZhaWx1cmVzGAQgASgEEhIKCmNwdV9taWNyb3MYBSABKAQSEwoLd2FsbF9taWNyb3MYBiABKAQSOgoLY3B1X2J1Y2tldHMYByADKAsyJS5ub21vcy5ydW50aW1lLnYyLktlcm5lbFdvcmtDcHVCdWNrZXQSIgoabGFzdF9jb21wbGV0ZWRfdW5peF9taWxsaXMYCCABKAQiNwoTS2VybmVsV29ya0NwdUJ1Y2tldBIRCglsZV9taWNyb3MYASABKAQSDQoFY2FsbHMYAiABKAQiUgoQQWN0aXZlS2VybmVsV29yaxIOCgZmYW1pbHkYASABKAkSEQoJb3BlcmF0aW9uGAIgASgJEhsKE3N0YXJ0ZWRfdW5peF9taWxsaXMYAyABKAQiygEKEktlcm5lbFdvcmtTbmFwc2hvdBIbChNzdGFydGVkX3VuaXhfbWlsbGlzGAEgASgEEhwKFG9ic2VydmVkX3VuaXhfbWlsbGlzGAIgASgEEjUKCGNvdW50ZXJzGAMgAygLMiMubm9tb3MucnVudGltZS52Mi5LZXJuZWxXb3JrQ291bnRlchI3CgZhY3RpdmUYBCABKAsyIi5ub21vcy5ydW50aW1lLnYyLkFjdGl2ZUtlcm5lbFdvcmtIAIgBAUIJCgdfYWN0aXZlIoEFCgpIb3N0SGVhbHRoEg8KB3JlcGxpY2EYASABKAQSFQoNa2VybmVsX3NoYTI1NhgCIAEoCRIbChNyZXNpZGVudF93b3Jrc3BhY2VzGAMgAygJEhoKEndhc21fbGluZWFyX21lbV9tYhgEIAEoARIWCg5wcm9jZXNzX3Jzc19tYhgFIAEoARIXCg9yc3NfY3JpdGljYWxfbWIYBiABKA0SPAoJcmVzaWRlbnRzGAcgAygLMikubm9tb3MucnVudGltZS52Mi5SZXNpZGVudFdvcmtzcGFjZURldGFpbBI+CgtrZXJuZWxfd29yaxgIIAEoCzIkLm5vbW9zLnJ1bnRpbWUudjIuS2VybmVsV29ya1NuYXBzaG90SACIAQESMgoIb3BlbmluZ3MYCSADKAsyIC5ub21vcy5ydW50aW1lLnYyLkN1c3RvZHlPcGVuaW5nEkQKCWFydGlmYWN0cxgKIAEoCzIsLm5vbW9zLnJ1bnRpbWUudjIuQXJ0aWZhY3RzVHJhbnNwb3J0U25hcHNob3RIAYgBARI8CglyZXRlbnRpb24YCyADKAsyKS5ub21vcy5ydW50aW1lLnYyLlJldGVudGlvbk91dGNvbWVDb3VudGVyEkIKFGNvcnJlc3BvbmRlbmNlX2hvbGRzGAwgAygLMiQubm9tb3MucnVudGltZS52Mi5Db3JyZXNwb25kZW5jZUhvbGQSPQoHaW5ncmVzcxgNIAEoCzInLm5vbW9zLnJ1bnRpbWUudjIuS2VybmVsSW5ncmVzc1NuYXBzaG90SAKIAQFCDgoMX2tlcm5lbF93b3JrQgwKCl9hcnRpZmFjdHNCCgoIX2luZ3Jlc3MiuQIKFUtlcm5lbEluZ3Jlc3NTbmFwc2hvdBIPCgdwZW5kaW5nGAEgASgNEg0KBWJ5dGVzGAIgASgEEhMKC21heF9wZW5kaW5nGAMgASgNEhEKCW1heF9ieXRlcxgEIAEoBBIUCgxmaWxsX3BlcmNlbnQYBSABKAESGQoRcGVha19maWxsX3BlcmNlbnQYBiABKAESEAoIcmVmdXNhbHMYByABKAQSDgoGcG9zdGVkGAggASgNEhoKEndhaXRpbmdfZm9yZWdyb3VuZBgJIAEoDRIaChJ3YWl0aW5nX2JhY2tncm91bmQYCiABKA0SGAoQaW5fZmxpZ2h0X3dpbmRvdxgLIAEoDRIRCglhYmFuZG9uZWQYDCABKAQSIAoYbGF3X2ltcG9ydHNfZGVkdXBsaWNhdGVkGA0gASgEIr8BChdBcnRpZmFjdHNSZXF1ZXN0Q291bnRlchIRCglvcGVyYXRpb24YASABKAkSDwoHb3V0Y29tZRgCIAEoCRIQCghyZXF1ZXN0cxgDIAEoBBITCgt3YWxsX21pY3JvcxgEIAEoBBIWCg5yZXNwb25zZV9ieXRlcxgFIAEoBBJBCg9sYXRlbmN5X2J1Y2tldHMYBiADKAsyKC5ub21vcy5ydW50aW1lLnYyLkFydGlmYWN0c0xhdGVuY3lCdWNrZXQiPQoWQXJ0aWZhY3RzTGF0ZW5jeUJ1Y2tldBIRCglsZV9taWNyb3MYASABKAQSEAoIcmVxdWVzdHMYAiABKAQitwEKGkFydGlmYWN0c1RyYW5zcG9ydFNuYXBzaG90EhsKE3N0YXJ0ZWRfdW5peF9taWxsaXMYASABKAQSOwoIY291bnRlcnMYAiADKAsyKS5ub21vcy5ydW50aW1lLnYyLkFydGlmYWN0c1JlcXVlc3RDb3VudGVyEhEKCWluX2ZsaWdodBgDIAEoDRIsCiRvbGRlc3RfaW5fZmxpZ2h0X3N0YXJ0ZWRfdW5peF9taWxsaXMYBCABKAQiUgoXUmV0ZW50aW9uT3V0Y29tZUNvdW50ZXISDwoHb3V0Y29tZRgBIAEoCRIUCgxwdWJsaWNhdGlvbnMYAiABKAQSEAoIYXR0ZW1wdHMYAyABKAQifAoUS2VybmVsUmVmcmVzaE91dGNvbWUSKgoEaG9zdBgBIAEoCzIcLm5vbW9zLnJ1bnRpbWUudjIuSG9zdEhlYWx0aBIPCgdjaGFuZ2VkGAIgASgIEhcKD3ByZXZpb3VzX3NoYTI1NhgDIAEoCRIOCgZzaGEyNTYYBCABKAkiyQEKEkNvcnJlc3BvbmRlbmNlSG9sZBIYChBzb3VyY2Vfd29ya3NwYWNlGAEgASgJEhgKEHRhcmdldF93b3Jrc3BhY2UYAiABKAkSGQoRc291cmNlX29mZmVyX3BhdGgYAyABKAkSDgoGcmVhc29uGAQgASgJEg4KBmRldGFpbBgFIAEoCRIQCghmYWlsdXJlcxgGIAEoDRIXCg9yZXRyeV9hdF9taWxsaXMYByABKAQSGQoRaGVsZF9zaW5jZV9taWxsaXMYCCABKAQi/AEKDVJlc2lkZW5jeUhvc3QSDwoHaG9zdF9pZBgBIAEoCRIOCgZzdGF0dXMYAiABKAkSDAoEbGl2ZRgDIAEoCBIaChJsYXN0X2NoYW5nZV9taWxsaXMYBCABKAQSLwoEaG9zdBgFIAEoCzIcLm5vbW9zLnJ1bnRpbWUudjIuSG9zdEhlYWx0aEgAiAEBEjwKB3JlZnJlc2gYBiABKAsyJi5ub21vcy5ydW50aW1lLnYyLktlcm5lbFJlZnJlc2hPdXRjb21lSAGIAQESEgoFZXJyb3IYByABKAlIAogBAUIHCgVfaG9zdEIKCghfcmVmcmVzaEIICgZfZXJyb3IiqQEKD1Jlc2lkZW5jeVJlcG9ydBIKCgJvaxgBIAEoCBISCgpub3dfbWlsbGlzGAIgASgEEhUKDWhvc3RfY2FwYWNpdHkYAyABKA0SEgoKbGl2ZV9ob3N0cxgEIAEoDRIbChNyZXNpZGVudF93b3Jrc3BhY2VzGAUgASgNEi4KBWhvc3RzGAYgAygLMh8ubm9tb3MucnVudGltZS52Mi5SZXNpZGVuY3lIb3N0IpkBChBQZWVyU3RhdHVzUmVwb3J0EgoKAm9rGAEgASgIEhEKCXdvcmtzcGFjZRgCIAEoCRI2CgtwZWVyX29mZmljZRgDIAEoCzIhLm5vbW9zLnJ1bnRpbWUudjIuV29ya3NwYWNlU3RhdHVzEi4KCHBoeXNpY2FsGAQgASgLMhwubm9tb3MucnVudGltZS52Mi5Ib3N0SGVhbHRoIkUKDVJlc3RhcnRlZEhvc3QSDwoHaG9zdF9pZBgBIAEoCRIMCgRsaXZlGAIgASgIEhUKDWtlcm5lbF9zaGEyNTYYAyABKAkiLgoMUmVzdGFydEVycm9yEg8KB2hvc3RfaWQYASABKAkSDQoFZXJyb3IYAiABKAkikQEKDVJlc3RhcnRSZXBvcnQSCgoCb2sYASABKAgSEAoIaG9zdF9pZHMYAiADKAkSMgoJcmVzdGFydGVkGAMgAygLMh8ubm9tb3MucnVudGltZS52Mi5SZXN0YXJ0ZWRIb3N0Ei4KBmVycm9ycxgEIAMoCzIeLm5vbW9zLnJ1bnRpbWUudjIuUmVzdGFydEVycm9yKs8CChpSZXNpZGVudFdvcmtzcGFjZVJlYWRpbmVzcxIsCihSRVNJREVOVF9XT1JLU1BBQ0VfUkVBRElORVNTX1VOU1BFQ0lGSUVEEAASLAooUkVTSURFTlRfV09SS1NQQUNFX1JFQURJTkVTU19TUUxJVEVfT05MWRABEjEKLVJFU0lERU5UX1dPUktTUEFDRV9SRUFESU5FU1NfR0lUX0NVU1RPRFlfT05MWRACEjcKM1JFU0lERU5UX1dPUktTUEFDRV9SRUFESU5FU1NfU1FMSVRFX0FORF9HSVRfQUxJR05FRBADEjgKNFJFU0lERU5UX1dPUktTUEFDRV9SRUFESU5FU1NfU1FMSVRFX0dJVF9GVUxMX0hJU1RPUlkQBBIvCitSRVNJREVOVF9XT1JLU1BBQ0VfUkVBRElORVNTX0hFQURTX0RJVkVSR0VEEAUqgwEKE0xvY2FsSGlzdG9yeVBvc3R1cmUSJQohTE9DQUxfSElTVE9SWV9QT1NUVVJFX1VOU1BFQ0lGSUVEEAASIQodTE9DQUxfSElTVE9SWV9QT1NUVVJFX1BBUlRJQUwQARIiCh5MT0NBTF9ISVNUT1JZX1BPU1RVUkVfQ09NUExFVEUQAmIGcHJvdG8z", [file_nomos_runtime_v2_custody_desk, file_nomos_kernel_v1_kernel]);
|
|
714
715
|
var RetainFrontierRequestSchema = /* @__PURE__ */ messageDesc23(file_nomos_runtime_v2_residency_desk, 1);
|
|
715
716
|
var ResidencyPressureRelievedSchema = /* @__PURE__ */ messageDesc23(file_nomos_runtime_v2_residency_desk, 2);
|
|
716
717
|
var ResidentPlacementSchema = /* @__PURE__ */ messageDesc23(file_nomos_runtime_v2_residency_desk, 6);
|
|
717
718
|
var ResidentOutboxSchema = /* @__PURE__ */ messageDesc23(file_nomos_runtime_v2_residency_desk, 7);
|
|
718
|
-
var CorrespondenceHoldSchema = /* @__PURE__ */ messageDesc23(file_nomos_runtime_v2_residency_desk,
|
|
719
|
+
var CorrespondenceHoldSchema = /* @__PURE__ */ messageDesc23(file_nomos_runtime_v2_residency_desk, 19);
|
|
719
720
|
var LocalHistoryPostureSchema = /* @__PURE__ */ enumDesc16(file_nomos_runtime_v2_residency_desk, 1);
|
|
720
721
|
var LocalHistoryPosture = /* @__PURE__ */ tsEnum16(LocalHistoryPostureSchema);
|
|
721
722
|
|
|
722
723
|
// ../adapter/proto/nomos/runtime/v2/runtime_pb.js
|
|
723
|
-
var file_nomos_runtime_v2_runtime = /* @__PURE__ */ fileDesc24("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]);
|
|
724
|
+
var file_nomos_runtime_v2_runtime = /* @__PURE__ */ fileDesc24("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]);
|
|
724
725
|
var RuntimeRequestSchema = /* @__PURE__ */ messageDesc24(file_nomos_runtime_v2_runtime, 0);
|
|
725
726
|
var InvocationTargetSchema = /* @__PURE__ */ messageDesc24(file_nomos_runtime_v2_runtime, 1);
|
|
726
727
|
var RuntimeResponseSchema = /* @__PURE__ */ messageDesc24(file_nomos_runtime_v2_runtime, 2);
|
|
@@ -2495,6 +2496,48 @@ var assertUsdz = (name, bytes) => {
|
|
|
2495
2496
|
if (bytes.byteLength < 4 || bytes[0] !== 80 || bytes[1] !== 75 || bytes[2] !== 3 || bytes[3] !== 4)
|
|
2496
2497
|
throw new Error(`${name} must be opaque USDZ bytes`);
|
|
2497
2498
|
};
|
|
2499
|
+
var unsignedWasiPointers = (imports) => {
|
|
2500
|
+
const pointerArguments = {
|
|
2501
|
+
args_sizes_get: [0, 1],
|
|
2502
|
+
args_get: [0, 1],
|
|
2503
|
+
environ_sizes_get: [0, 1],
|
|
2504
|
+
environ_get: [0, 1],
|
|
2505
|
+
clock_res_get: [1],
|
|
2506
|
+
clock_time_get: [2],
|
|
2507
|
+
fd_fdstat_get: [1],
|
|
2508
|
+
fd_filestat_get: [1],
|
|
2509
|
+
fd_pread: [1, 4],
|
|
2510
|
+
fd_prestat_get: [1],
|
|
2511
|
+
fd_prestat_dir_name: [1],
|
|
2512
|
+
fd_pwrite: [1, 4],
|
|
2513
|
+
fd_read: [1, 3],
|
|
2514
|
+
fd_readdir: [1, 4],
|
|
2515
|
+
fd_seek: [3],
|
|
2516
|
+
fd_tell: [1],
|
|
2517
|
+
fd_write: [1, 3],
|
|
2518
|
+
path_create_directory: [1],
|
|
2519
|
+
path_filestat_get: [2, 4],
|
|
2520
|
+
path_filestat_set_times: [2],
|
|
2521
|
+
path_link: [2, 5],
|
|
2522
|
+
path_open: [2, 8],
|
|
2523
|
+
path_readlink: [1, 3, 5],
|
|
2524
|
+
path_remove_directory: [1],
|
|
2525
|
+
path_rename: [1, 4],
|
|
2526
|
+
path_symlink: [0, 3],
|
|
2527
|
+
path_unlink_file: [1],
|
|
2528
|
+
poll_oneoff: [0, 1],
|
|
2529
|
+
random_get: [0]
|
|
2530
|
+
};
|
|
2531
|
+
for (const [name, indexes] of Object.entries(pointerArguments)) {
|
|
2532
|
+
const original = imports[name];
|
|
2533
|
+
if (original === void 0) continue;
|
|
2534
|
+
imports[name] = (...args) => {
|
|
2535
|
+
for (const index of indexes) args[index] = args[index] >>> 0;
|
|
2536
|
+
return original(...args);
|
|
2537
|
+
};
|
|
2538
|
+
}
|
|
2539
|
+
return imports;
|
|
2540
|
+
};
|
|
2498
2541
|
var verifyLawClosure = (machine, closureFile, capability) => {
|
|
2499
2542
|
const response = callKernelOperation(machine, {
|
|
2500
2543
|
case: "custody",
|
|
@@ -2968,7 +3011,9 @@ function nodeKernelWasiHost(directory3, stderr) {
|
|
|
2968
3011
|
returnOnExit: true
|
|
2969
3012
|
});
|
|
2970
3013
|
let memory;
|
|
2971
|
-
const imports =
|
|
3014
|
+
const imports = unsignedWasiPointers(
|
|
3015
|
+
{ ...wasi2.wasiImport }
|
|
3016
|
+
);
|
|
2972
3017
|
const openDescriptors = /* @__PURE__ */ new Set([3]);
|
|
2973
3018
|
const pathOpen = imports.path_open;
|
|
2974
3019
|
const fdClose = imports.fd_close;
|
|
@@ -3552,6 +3597,35 @@ var kernelExecutionDesk = (machine) => runtimeKernelPort(machine);
|
|
|
3552
3597
|
// ../adapter/git_custody_desk.ts
|
|
3553
3598
|
import { create as create9, fromBinary as fromBinary7, toBinary as toBinary8 } from "@bufbuild/protobuf";
|
|
3554
3599
|
|
|
3600
|
+
// ../adapter/custody_fetch_pool.ts
|
|
3601
|
+
var CUSTODY_STAGED_BYTES_BUDGET = 256 * 1024 * 1024;
|
|
3602
|
+
function memoryStagedPack(fetched) {
|
|
3603
|
+
let bytes = fetched.pack;
|
|
3604
|
+
return {
|
|
3605
|
+
bytes: fetched.pack.byteLength,
|
|
3606
|
+
shallow: fetched.shallow,
|
|
3607
|
+
unshallow: fetched.unshallow,
|
|
3608
|
+
pack: () => {
|
|
3609
|
+
if (bytes === void 0) throw new Error("staged pack was discarded before it was applied");
|
|
3610
|
+
return bytes;
|
|
3611
|
+
},
|
|
3612
|
+
discard: () => {
|
|
3613
|
+
bytes = void 0;
|
|
3614
|
+
}
|
|
3615
|
+
};
|
|
3616
|
+
}
|
|
3617
|
+
async function fetchStagedInMemory(remote, headers, request, fetchImpl) {
|
|
3618
|
+
const fetched = await fetchPackWithBoundaries(remote, headers, {
|
|
3619
|
+
wants: request.wants,
|
|
3620
|
+
haves: request.haves,
|
|
3621
|
+
advertisement: request.advertisement,
|
|
3622
|
+
depth: request.depth,
|
|
3623
|
+
shallow: request.shallow ?? [],
|
|
3624
|
+
observe: request.observe
|
|
3625
|
+
}, fetchImpl);
|
|
3626
|
+
return fetched ? memoryStagedPack(fetched) : null;
|
|
3627
|
+
}
|
|
3628
|
+
|
|
3555
3629
|
// ../adapter/pack_import_steps.ts
|
|
3556
3630
|
var IMPORT_STEP_TARGET_MILLIS = 50;
|
|
3557
3631
|
var IMPORT_STEP_FIRST_BYTES = 256 * 1024;
|
|
@@ -4015,17 +4089,27 @@ function gitCustodyDesk(kernel, fetchImpl = fetch, observe, phaseStarted, import
|
|
|
4015
4089
|
throw error;
|
|
4016
4090
|
}
|
|
4017
4091
|
};
|
|
4018
|
-
const
|
|
4019
|
-
|
|
4092
|
+
const applyTurn = (lanes) => lanes ? (work) => lanes.apply(work) : (work) => {
|
|
4093
|
+
try {
|
|
4094
|
+
return Promise.resolve(work());
|
|
4095
|
+
} catch (error) {
|
|
4096
|
+
return Promise.reject(error);
|
|
4097
|
+
}
|
|
4098
|
+
};
|
|
4099
|
+
const stagePack = (lanes, ledger, request) => lanes ? lanes.fetches.fetchPack(ledger.remote, ledger.headers ?? {}, request, fetchImpl) : fetchStagedInMemory(ledger.remote, ledger.headers ?? {}, request, fetchImpl);
|
|
4100
|
+
const listed = (lanes, work) => lanes ? lanes.fetches.run(work) : work();
|
|
4101
|
+
const acquireReference = async (workspace, ledger, remoteReference, localReference, have, acquisition, lanes) => {
|
|
4102
|
+
const refs = acquisition?.advertisement.refs ?? await listed(lanes, () => lsRefs(
|
|
4020
4103
|
ledger.remote,
|
|
4021
4104
|
ledger.headers ?? {},
|
|
4022
4105
|
{ service: "git-upload-pack", prefix: remoteReference },
|
|
4023
4106
|
fetchImpl
|
|
4024
|
-
);
|
|
4107
|
+
));
|
|
4025
4108
|
const head = refs[remoteReference];
|
|
4026
4109
|
if (!head) return void 0;
|
|
4110
|
+
const turn = applyTurn(lanes);
|
|
4027
4111
|
const isMain = localReference === branchRef("main");
|
|
4028
|
-
const liveHave = () => isMain ? resolveRef(workspace, localReference) : have;
|
|
4112
|
+
const liveHave = () => isMain ? resolveRef(workspace, localReference) : have();
|
|
4029
4113
|
const durableBaseOf = (live) => {
|
|
4030
4114
|
const remoteTrackingReference = receiptRef(ledger);
|
|
4031
4115
|
const trackedHead = resolveRef(workspace, remoteTrackingReference);
|
|
@@ -4036,42 +4120,43 @@ function gitCustodyDesk(kernel, fetchImpl = fetch, observe, phaseStarted, import
|
|
|
4036
4120
|
}
|
|
4037
4121
|
return true;
|
|
4038
4122
|
};
|
|
4039
|
-
|
|
4040
|
-
|
|
4041
|
-
|
|
4042
|
-
|
|
4043
|
-
const pack = await fetchPack(
|
|
4044
|
-
ledger.remote,
|
|
4045
|
-
ledger.headers ?? {},
|
|
4046
|
-
{ wants: [head], haves, advertisement: acquisition?.advertisement },
|
|
4047
|
-
fetchImpl
|
|
4048
|
-
);
|
|
4049
|
-
if (pack) {
|
|
4050
|
-
await importFetchedPack(
|
|
4051
|
-
workspace,
|
|
4052
|
-
pack,
|
|
4053
|
-
ledger.operatorCustody === true ? void 0 : head
|
|
4054
|
-
);
|
|
4055
|
-
}
|
|
4056
|
-
}
|
|
4057
|
-
local = liveHave();
|
|
4058
|
-
if (isMain && local === void 0) {
|
|
4059
|
-
await measured(workspace, "restore", () => restoreMain(workspace, head, ledger.operatorCustody === true));
|
|
4060
|
-
writeRef(workspace, receiptRef(ledger), head);
|
|
4061
|
-
} else if (isMain && head === local) {
|
|
4062
|
-
if (ledger.operatorCustody === true) {
|
|
4063
|
-
await measured(workspace, "restore", () => restoreMain(workspace, head, true));
|
|
4064
|
-
}
|
|
4065
|
-
if (resolveRef(workspace, receiptRef(ledger)) !== head) {
|
|
4123
|
+
const settle = async () => {
|
|
4124
|
+
const local = liveHave();
|
|
4125
|
+
if (isMain && local === void 0) {
|
|
4126
|
+
await measured(workspace, "restore", () => restoreMain(workspace, head, ledger.operatorCustody === true));
|
|
4066
4127
|
writeRef(workspace, receiptRef(ledger), head);
|
|
4128
|
+
} else if (isMain && head === local) {
|
|
4129
|
+
if (ledger.operatorCustody === true) {
|
|
4130
|
+
await measured(workspace, "restore", () => restoreMain(workspace, head, true));
|
|
4131
|
+
}
|
|
4132
|
+
if (resolveRef(workspace, receiptRef(ledger)) !== head) {
|
|
4133
|
+
writeRef(workspace, receiptRef(ledger), head);
|
|
4134
|
+
}
|
|
4135
|
+
} else if (isMain) {
|
|
4136
|
+
if (durableBaseOf(local)) return head;
|
|
4137
|
+
throw new Error(`custody remote advanced for '${workspace}': local ${local}, observed ${head}; peer convergence is required before changing main`);
|
|
4138
|
+
} else {
|
|
4139
|
+
writeRef(workspace, localReference, head);
|
|
4067
4140
|
}
|
|
4068
|
-
|
|
4069
|
-
|
|
4070
|
-
|
|
4071
|
-
|
|
4072
|
-
|
|
4141
|
+
return head;
|
|
4142
|
+
};
|
|
4143
|
+
const decided = await turn(async () => {
|
|
4144
|
+
const local = liveHave();
|
|
4145
|
+
if (isMain && local !== void 0 && head !== local && durableBaseOf(local)) return { head };
|
|
4146
|
+
const haves = knownHeads(workspace);
|
|
4147
|
+
if (head !== local && !haves.includes(head) && !acquisition?.imported.has(head)) return { haves };
|
|
4148
|
+
return { head: await settle() };
|
|
4149
|
+
});
|
|
4150
|
+
if ("head" in decided) return decided.head;
|
|
4151
|
+
const staged = await stagePack(lanes, ledger, { wants: [head], haves: decided.haves, advertisement: acquisition?.advertisement });
|
|
4152
|
+
try {
|
|
4153
|
+
return await turn(async () => {
|
|
4154
|
+
if (staged) await importFetchedPack(workspace, staged.pack(), ledger.operatorCustody === true ? void 0 : head);
|
|
4155
|
+
return settle();
|
|
4156
|
+
});
|
|
4157
|
+
} finally {
|
|
4158
|
+
staged?.discard();
|
|
4073
4159
|
}
|
|
4074
|
-
return head;
|
|
4075
4160
|
};
|
|
4076
4161
|
const packDeltaOrFull = (workspace, head, base) => {
|
|
4077
4162
|
try {
|
|
@@ -4091,13 +4176,16 @@ function gitCustodyDesk(kernel, fetchImpl = fetch, observe, phaseStarted, import
|
|
|
4091
4176
|
importPack: applyPack,
|
|
4092
4177
|
pack: packDelta
|
|
4093
4178
|
}, fetchImpl);
|
|
4094
|
-
const acquireMain = (workspace, ledger) => acquiring(workspace, ledger, "main", () => measured(workspace, "acquire", async () => {
|
|
4179
|
+
const acquireMain = (workspace, ledger, lanes) => acquiring(workspace, ledger, "main", () => measured(workspace, "acquire", async () => {
|
|
4095
4180
|
const reference = branchRef("main");
|
|
4096
|
-
|
|
4097
|
-
const local =
|
|
4098
|
-
|
|
4181
|
+
const turn = applyTurn(lanes);
|
|
4182
|
+
const local = await turn(async () => {
|
|
4183
|
+
await kernel.writeSkeleton(workspace, "main");
|
|
4184
|
+
return resolveRef(workspace, reference);
|
|
4185
|
+
});
|
|
4186
|
+
const advertisement = await listed(lanes, () => measured(workspace, "advertise", () => discoverRefs(ledger.remote, ledger.headers ?? {}, {
|
|
4099
4187
|
signal: ledger.signal ?? AbortSignal.timeout(COLD_OPEN_LISTING_MILLIS)
|
|
4100
|
-
}, fetchImpl));
|
|
4188
|
+
}, fetchImpl)));
|
|
4101
4189
|
observedRemoteRefs.set(custodyKey(workspace, ledger), new Map(Object.entries(advertisement.refs)));
|
|
4102
4190
|
const delivered = new Map(Object.entries(advertisement.refs).filter(([ref]) => isCorrespondenceRef(ref)));
|
|
4103
4191
|
const imported = /* @__PURE__ */ new Set();
|
|
@@ -4113,62 +4201,74 @@ function gitCustodyDesk(kernel, fetchImpl = fetch, observe, phaseStarted, import
|
|
|
4113
4201
|
const wants2 = [...new Set(references.map((ref) => advertisement.refs[ref]))].filter((oid) => !haves2.includes(oid));
|
|
4114
4202
|
if (wants2.length) {
|
|
4115
4203
|
const detail = { references, wants: wants2, haves: haves2 };
|
|
4116
|
-
const
|
|
4204
|
+
const staged = await measured(workspace, "fetch", () => stagePack(lanes, ledger, {
|
|
4117
4205
|
wants: wants2,
|
|
4118
4206
|
haves: haves2,
|
|
4119
4207
|
advertisement,
|
|
4120
4208
|
...ledger.operatorCustody && workspace !== ANCHOR_WORKSPACE ? { depth: 1 } : {},
|
|
4121
4209
|
...observe ? { observe: (timing) => Object.assign(detail, timing) } : {}
|
|
4122
|
-
}
|
|
4123
|
-
|
|
4124
|
-
|
|
4125
|
-
|
|
4126
|
-
|
|
4127
|
-
|
|
4128
|
-
|
|
4129
|
-
|
|
4130
|
-
|
|
4210
|
+
}), detail);
|
|
4211
|
+
try {
|
|
4212
|
+
if (staged) {
|
|
4213
|
+
await turn(() => measured(
|
|
4214
|
+
workspace,
|
|
4215
|
+
"import",
|
|
4216
|
+
() => importFetchedPack(workspace, staged.pack(), void 0, staged),
|
|
4217
|
+
{ references, wants: wants2, haves: haves2, bytes: staged.bytes }
|
|
4218
|
+
));
|
|
4219
|
+
for (const oid of wants2) imported.add(oid);
|
|
4220
|
+
}
|
|
4221
|
+
} finally {
|
|
4222
|
+
staged?.discard();
|
|
4131
4223
|
}
|
|
4132
4224
|
}
|
|
4133
4225
|
for (const oid of haves2) imported.add(oid);
|
|
4134
4226
|
}
|
|
4135
|
-
const head = await acquireReference(workspace, ledger, reference, reference, local, acquisition);
|
|
4227
|
+
const head = await acquireReference(workspace, ledger, reference, reference, () => local, acquisition, lanes);
|
|
4136
4228
|
if (head) sealedMain.set(custodyKey(workspace, ledger), head);
|
|
4137
4229
|
const haves = knownHeads(workspace);
|
|
4138
4230
|
const wants = [...new Set([...delivered.values()].filter((oid) => !haves.includes(oid) && !imported.has(oid)))];
|
|
4139
4231
|
if (wants.length > 0) {
|
|
4140
|
-
const
|
|
4141
|
-
|
|
4142
|
-
|
|
4143
|
-
|
|
4144
|
-
|
|
4232
|
+
const staged = await stagePack(lanes, ledger, { wants, haves, advertisement });
|
|
4233
|
+
try {
|
|
4234
|
+
if (staged) await turn(() => importFetchedPack(workspace, staged.pack()));
|
|
4235
|
+
} finally {
|
|
4236
|
+
staged?.discard();
|
|
4237
|
+
}
|
|
4145
4238
|
}
|
|
4239
|
+
await turn(() => {
|
|
4240
|
+
for (const [reference2, oid] of delivered) {
|
|
4241
|
+
if (resolveRef(workspace, reference2) === void 0) writeRef(workspace, reference2, oid);
|
|
4242
|
+
}
|
|
4243
|
+
});
|
|
4146
4244
|
if (ledger.localCustody) {
|
|
4147
4245
|
await acquireReference(
|
|
4148
4246
|
workspace,
|
|
4149
4247
|
ledger,
|
|
4150
4248
|
"refs/remotes/nomos/main",
|
|
4151
4249
|
"refs/remotes/nomos/main",
|
|
4152
|
-
resolveRef(workspace, "refs/remotes/nomos/main"),
|
|
4153
|
-
acquisition
|
|
4250
|
+
() => resolveRef(workspace, "refs/remotes/nomos/main"),
|
|
4251
|
+
acquisition,
|
|
4252
|
+
lanes
|
|
4154
4253
|
);
|
|
4155
4254
|
}
|
|
4156
|
-
await placement.acquire(workspace, ledger, acquisition);
|
|
4255
|
+
await turn(() => placement.acquire(workspace, ledger, acquisition));
|
|
4157
4256
|
if (ledger.localCustody) {
|
|
4158
4257
|
await acquireReference(
|
|
4159
4258
|
workspace,
|
|
4160
4259
|
ledger,
|
|
4161
4260
|
"refs/remotes/nomos/placement",
|
|
4162
4261
|
"refs/remotes/nomos/placement",
|
|
4163
|
-
resolveRef(workspace, "refs/remotes/nomos/placement"),
|
|
4164
|
-
acquisition
|
|
4262
|
+
() => resolveRef(workspace, "refs/remotes/nomos/placement"),
|
|
4263
|
+
acquisition,
|
|
4264
|
+
lanes
|
|
4165
4265
|
);
|
|
4166
4266
|
}
|
|
4167
4267
|
return head ? { head } : {};
|
|
4168
4268
|
}));
|
|
4169
4269
|
const desk = {
|
|
4170
|
-
async acquireMain(workspace, ledger) {
|
|
4171
|
-
const acquired = await acquireMain(workspace, ledger);
|
|
4270
|
+
async acquireMain(workspace, ledger, lanes) {
|
|
4271
|
+
const acquired = await acquireMain(workspace, ledger, lanes);
|
|
4172
4272
|
if (workspace === ANCHOR_WORKSPACE && ledger.operatorCustody === true) {
|
|
4173
4273
|
for (let slice = 0; slice < ANCHOR_DEEPEN_SLICES; slice += 1) {
|
|
4174
4274
|
if (!knownShallowBoundary(workspace)?.size) break;
|
|
@@ -4266,8 +4366,7 @@ function gitCustodyDesk(kernel, fetchImpl = fetch, observe, phaseStarted, import
|
|
|
4266
4366
|
const fullReference = branchRef(reference);
|
|
4267
4367
|
return acquiring(workspace, ledger, fullReference, async () => {
|
|
4268
4368
|
await kernel.writeSkeleton(workspace, "main");
|
|
4269
|
-
|
|
4270
|
-
await acquireReference(workspace, ledger, fullReference, fullReference, local);
|
|
4369
|
+
await acquireReference(workspace, ledger, fullReference, fullReference, () => resolveRef(workspace, fullReference));
|
|
4271
4370
|
});
|
|
4272
4371
|
},
|
|
4273
4372
|
seal(workspace, ledger, retention) {
|
|
@@ -5908,6 +6007,7 @@ var operationWorkspace = (value) => targetWorkspace(value) ?? repositoryWorkspac
|
|
|
5908
6007
|
// ../peer-office/src/runtime/kernel_residency.ts
|
|
5909
6008
|
var KernelResidency = class {
|
|
5910
6009
|
#open = /* @__PURE__ */ new Set();
|
|
6010
|
+
#trap;
|
|
5911
6011
|
workspaces() {
|
|
5912
6012
|
return [...this.#open];
|
|
5913
6013
|
}
|
|
@@ -5922,9 +6022,16 @@ var KernelResidency = class {
|
|
|
5922
6022
|
released(workspace) {
|
|
5923
6023
|
this.#open.delete(workspace.trim());
|
|
5924
6024
|
}
|
|
5925
|
-
/** The machine trapped: it is discarded with every workspace it held.
|
|
5926
|
-
|
|
6025
|
+
/** The machine trapped: it is discarded with every workspace it held. `reason` is the bounded
|
|
6026
|
+
* trap text the host reports when it discards the machine; the first trap is the one kept. */
|
|
6027
|
+
trapped(reason) {
|
|
5927
6028
|
this.#open.clear();
|
|
6029
|
+
this.#trap ??= reason.slice(0, 2e3);
|
|
6030
|
+
}
|
|
6031
|
+
/** Why this machine trapped, once it has; undefined while it has not. Never cleared: nothing
|
|
6032
|
+
* revives a trapped machine, the host replaces it (and this record with it). */
|
|
6033
|
+
get trap() {
|
|
6034
|
+
return this.#trap;
|
|
5928
6035
|
}
|
|
5929
6036
|
/** Before the kernel sees a request: a release leaves first, so a failed release cannot keep it. */
|
|
5930
6037
|
before(request) {
|
|
@@ -5935,7 +6042,7 @@ var KernelResidency = class {
|
|
|
5935
6042
|
}
|
|
5936
6043
|
after(request, response) {
|
|
5937
6044
|
if (response.outcome.case === "failure" && response.outcome.value.code === "NMS-KERNEL-TRAP") {
|
|
5938
|
-
this.trapped();
|
|
6045
|
+
this.trapped(`${response.outcome.value.code}: ${response.outcome.value.message}`);
|
|
5939
6046
|
return;
|
|
5940
6047
|
}
|
|
5941
6048
|
const operation = request.operation;
|
|
@@ -6691,6 +6798,15 @@ var KernelPort = class {
|
|
|
6691
6798
|
residentWorkspaces() {
|
|
6692
6799
|
return this.#residency.workspaces();
|
|
6693
6800
|
}
|
|
6801
|
+
/**
|
|
6802
|
+
* Why the kernel behind this port trapped, once it has (CAP-965); undefined while it has not.
|
|
6803
|
+
* Every kernel call passes [#call], which records a trap however it surfaced: thrown, answered
|
|
6804
|
+
* as an NMS-KERNEL-TRAP failure, or caught and answered as typed paper by a desk above. The host
|
|
6805
|
+
* reads this after every request and discards the machine; reading it never enters the kernel.
|
|
6806
|
+
*/
|
|
6807
|
+
kernelTrap() {
|
|
6808
|
+
return this.#residency.trap;
|
|
6809
|
+
}
|
|
6694
6810
|
/**
|
|
6695
6811
|
* Answer only the peer-local inventory question.
|
|
6696
6812
|
*
|
|
@@ -7796,14 +7912,13 @@ var KernelPort = class {
|
|
|
7796
7912
|
);
|
|
7797
7913
|
} catch (error) {
|
|
7798
7914
|
this.#attached?.lost();
|
|
7799
|
-
|
|
7800
|
-
this.#residency.trapped();
|
|
7801
|
-
}
|
|
7915
|
+
const trapped = error instanceof Error && /NMS-KERNEL-TRAP|\btrap\b|unreachable|out of bounds/i.test(error.message);
|
|
7802
7916
|
if (error instanceof Error && /\btrap\b|unreachable|out of bounds/i.test(error.message)) {
|
|
7803
7917
|
const top = request.operation.case ?? "empty";
|
|
7804
7918
|
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" : "";
|
|
7805
7919
|
error.message = `kernel-operation=${top}/${nested}: ${error.message}`;
|
|
7806
7920
|
}
|
|
7921
|
+
if (trapped) this.#residency.trapped(error.message);
|
|
7807
7922
|
const pending = readIndexPendingAnswer(request, error instanceof Error ? error.message : String(error));
|
|
7808
7923
|
if (pending !== void 0) return pending;
|
|
7809
7924
|
rethrowTypedKernelFailure(error);
|
|
@@ -14241,7 +14356,7 @@ var ReadMaintenanceDesk = class {
|
|
|
14241
14356
|
const failures = demand.failures + 1;
|
|
14242
14357
|
this.#pending.delete(workspace);
|
|
14243
14358
|
const retryMillis = Math.min(30 * 60 * 1e3, 1e3 * 2 ** Math.min(failures - 1, 10));
|
|
14244
|
-
slowQuantumObserver
|
|
14359
|
+
(slowQuantumObserver ?? ((line) => console.warn(line)))(`[nomos-kernel-perf] ${JSON.stringify({
|
|
14245
14360
|
op: "peer_maintenance_failure",
|
|
14246
14361
|
failed: true,
|
|
14247
14362
|
workspace,
|
|
@@ -15498,6 +15613,7 @@ var ReplicaFollowEventKind = Object.freeze({
|
|
|
15498
15613
|
CredentialReplaced: "credential_replaced",
|
|
15499
15614
|
Failed: "failed",
|
|
15500
15615
|
Reconnected: "reconnected",
|
|
15616
|
+
NetworkRestored: "network_restored",
|
|
15501
15617
|
DependencyAdvanced: "dependency_advanced",
|
|
15502
15618
|
RebornRemotely: "reborn_remotely",
|
|
15503
15619
|
LocalCopyDropAuthorized: "local_copy_drop_authorized",
|
|
@@ -15585,6 +15701,8 @@ function reduceReplicaFollow(state, event, policy) {
|
|
|
15585
15701
|
};
|
|
15586
15702
|
}
|
|
15587
15703
|
return due(event.nowUnixMillis);
|
|
15704
|
+
case ReplicaFollowEventKind.NetworkRestored:
|
|
15705
|
+
return state.case === ReplicaFollowPhase.Offline || state.case === ReplicaFollowPhase.Backoff && !state.refusal ? due(event.nowUnixMillis) : { state, effects: [] };
|
|
15588
15706
|
case ReplicaFollowEventKind.Reconnected:
|
|
15589
15707
|
if (state.case === ReplicaFollowPhase.Backoff && state.refusal?.blocked) {
|
|
15590
15708
|
return refusedEvent(state, state.refusal, event.nowUnixMillis);
|
|
@@ -16051,6 +16169,20 @@ var ReplicaFollowController = class {
|
|
|
16051
16169
|
reconnected(workspace, remoteAdvanced = false) {
|
|
16052
16170
|
return this.#event(workspace, ReplicaFollowEventKind.Reconnected, remoteAdvanced);
|
|
16053
16171
|
}
|
|
16172
|
+
networkRestored() {
|
|
16173
|
+
if (!this.#recovered) return [];
|
|
16174
|
+
const woken = [];
|
|
16175
|
+
for (const follow of this.#desk.all()) {
|
|
16176
|
+
this.#desk.transition(follow.spec.workspace, {
|
|
16177
|
+
case: ReplicaFollowEventKind.NetworkRestored,
|
|
16178
|
+
nowUnixMillis: this.#now()
|
|
16179
|
+
});
|
|
16180
|
+
if (this.#desk.get(follow.spec.workspace)?.state.case === ReplicaFollowPhase.Due) {
|
|
16181
|
+
woken.push(follow.spec.workspace);
|
|
16182
|
+
}
|
|
16183
|
+
}
|
|
16184
|
+
return woken;
|
|
16185
|
+
}
|
|
16054
16186
|
/** Another workspace advanced or settled; every held dependency gets one retry. */
|
|
16055
16187
|
dependencyAdvanced(except) {
|
|
16056
16188
|
if (!this.#recovered) return [];
|
|
@@ -17227,6 +17359,7 @@ var CHECKPOINT_WINDOW_CHUNKS = 8;
|
|
|
17227
17359
|
var MAX_CHECKPOINT_WINDOW_CHUNKS = 32;
|
|
17228
17360
|
var CHECKPOINT_STALE_OFFERS = 64;
|
|
17229
17361
|
var MAX_STREAM_BATCH_OFFERS = 256;
|
|
17362
|
+
var LEVEL_PACK_BYTES = 4 * 1024 * 1024 - 16 * 1024;
|
|
17230
17363
|
var MAX_HISTORY_SLICE = 256;
|
|
17231
17364
|
var MAX_HELD_SLICES = 4;
|
|
17232
17365
|
var CHECKPOINT_CACHE_BYTES = 1024 * 1024 * 1024;
|
|
@@ -17358,7 +17491,7 @@ var LiveStreamServer = class {
|
|
|
17358
17491
|
)];
|
|
17359
17492
|
}
|
|
17360
17493
|
const maxOffers = Math.min(Math.max(1, frontier.maxOffers || MAX_STREAM_BATCH_OFFERS), MAX_STREAM_BATCH_OFFERS);
|
|
17361
|
-
return [...answer, this.#batch(workspace, requestId, head, main, maxOffers)];
|
|
17494
|
+
return [...answer, ...this.#batch(workspace, requestId, head, main, maxOffers, remountAsk(), behind ?? 0n)];
|
|
17362
17495
|
}
|
|
17363
17496
|
/** Whether this peer's custody of the workspace is shallow. Unknown counts as shallow: it keeps the
|
|
17364
17497
|
* existing wait for history rather than calling a head off main. */
|
|
@@ -17376,21 +17509,44 @@ var LiveStreamServer = class {
|
|
|
17376
17509
|
* bounded walk and one bounded pack (O(batch)). The copy's kernel adopts exactly these commits on
|
|
17377
17510
|
* the same parent, judging each offer, so its next head is one this peer holds.
|
|
17378
17511
|
*/
|
|
17379
|
-
#batch(workspace, requestId, base, main, maxOffers) {
|
|
17512
|
+
#batch(workspace, requestId, base, main, maxOffers, remountAsk, behind) {
|
|
17380
17513
|
const mount = workspaceMount(workspace);
|
|
17381
|
-
|
|
17382
|
-
|
|
17383
|
-
|
|
17384
|
-
|
|
17385
|
-
|
|
17386
|
-
|
|
17387
|
-
|
|
17388
|
-
|
|
17389
|
-
|
|
17390
|
-
|
|
17391
|
-
|
|
17514
|
+
let limit = maxOffers;
|
|
17515
|
+
for (; ; ) {
|
|
17516
|
+
const intents = this.#kernel.transportIntentsAbove(mount, requestId, BigInt(limit), base, main, true).intents;
|
|
17517
|
+
const batchHead = intents.at(-1)?.oid ?? main;
|
|
17518
|
+
const pack = this.#kernel.packDelta(mount, requestId, batchHead, base);
|
|
17519
|
+
if (pack.byteLength <= LEVEL_PACK_BYTES) {
|
|
17520
|
+
return [frame({ case: "pack", value: create53(LivePackSchema, {
|
|
17521
|
+
requestId: `${LEVEL_BATCH2}${base}`,
|
|
17522
|
+
reference: "refs/heads/main",
|
|
17523
|
+
head: batchHead,
|
|
17524
|
+
base,
|
|
17525
|
+
pack,
|
|
17526
|
+
offers: intents.length,
|
|
17527
|
+
...this.#sealed(workspace) ? { sealed: this.#sealed(workspace) } : {}
|
|
17528
|
+
}) })];
|
|
17529
|
+
}
|
|
17530
|
+
if (intents.length > 1) {
|
|
17531
|
+
limit = Math.floor(intents.length / 2);
|
|
17532
|
+
continue;
|
|
17533
|
+
}
|
|
17534
|
+
const sealed = this.#sealedOnMain(workspace, requestId, main);
|
|
17535
|
+
const above = sealed !== void 0 && sealed !== batchHead && this.#reaches(mount, requestId, batchHead, sealed);
|
|
17536
|
+
return this.#checkpoint(workspace, requestId, remountAsk, behind, above ? sealed : main);
|
|
17537
|
+
}
|
|
17538
|
+
}
|
|
17539
|
+
/** Whether `head` is on the walk from `above` down this peer's main, i.e. `above` is at or past it. */
|
|
17540
|
+
#reaches(mount, requestId, head, above) {
|
|
17541
|
+
try {
|
|
17542
|
+
return this.#kernel.historySummary(mount, requestId, head, above).reachedBase;
|
|
17543
|
+
} catch {
|
|
17544
|
+
return false;
|
|
17545
|
+
}
|
|
17392
17546
|
}
|
|
17393
|
-
|
|
17547
|
+
/** `atHead`: the checkpoint is taken at exactly that head (a level batch's fallback, above an offer
|
|
17548
|
+
* no frame can carry), never the newest held one below it. */
|
|
17549
|
+
#checkpoint(workspace, requestId, request, remountBehind, atHead) {
|
|
17394
17550
|
const mount = workspaceMount(workspace);
|
|
17395
17551
|
const main = this.#kernel.head(mount, requestId);
|
|
17396
17552
|
if (!main) return [refusal("", "nomos.stream.opening", "the workspace has no main on this peer yet", 250)];
|
|
@@ -17405,7 +17561,11 @@ var LiveStreamServer = class {
|
|
|
17405
17561
|
}
|
|
17406
17562
|
}
|
|
17407
17563
|
const resumed = checkpoint !== void 0;
|
|
17408
|
-
if (!checkpoint)
|
|
17564
|
+
if (!checkpoint) {
|
|
17565
|
+
const newest = this.#checkpoints.get(workspace)?.at(-1);
|
|
17566
|
+
const whole = atHead === void 0 ? this.#current(workspace, requestId, main) : newest?.head === atHead ? newest : this.#build(workspace, requestId, atHead);
|
|
17567
|
+
checkpoint = this.#thin(whole, trees);
|
|
17568
|
+
}
|
|
17409
17569
|
checkpoint.servedAt = this.#now();
|
|
17410
17570
|
const sealed = this.#sealed(workspace);
|
|
17411
17571
|
const offset = resumed ? Number(request.offset) : 0;
|
|
@@ -17978,15 +18138,15 @@ var LiveCorrespondenceDesk = class {
|
|
|
17978
18138
|
if (this.writeBurst && !link.publisher) link.owedSince ??= this.clock.monotonicNanoseconds();
|
|
17979
18139
|
}
|
|
17980
18140
|
/** Local commits the custodian has not yet admitted: those not yet offered, and those offered
|
|
17981
|
-
* whose admission has not come back.
|
|
17982
|
-
*
|
|
18141
|
+
* whose admission has not come back. Offline copies are counted from their durable tracked
|
|
18142
|
+
* base, including new offline edits. Undefined when custody/history cannot be counted.
|
|
17983
18143
|
*
|
|
17984
18144
|
* Counting asks the kernel to walk history twice. Every follow report asks, and a save reports
|
|
17985
18145
|
* on its own turn, so during a local-write burst the last count is served instead and one fresh
|
|
17986
18146
|
* report follows when the burst lets it (writes quiet, or the staleness cap). */
|
|
17987
18147
|
progress(workspace) {
|
|
17988
18148
|
const link = this.#links.get(workspace);
|
|
17989
|
-
if (
|
|
18149
|
+
if (link?.publisher) {
|
|
17990
18150
|
this.#progress.delete(workspace);
|
|
17991
18151
|
return void 0;
|
|
17992
18152
|
}
|
|
@@ -18008,14 +18168,14 @@ var LiveCorrespondenceDesk = class {
|
|
|
18008
18168
|
}
|
|
18009
18169
|
#count(link, mount) {
|
|
18010
18170
|
const head = this.kernel.head(mount, ++this.#requestId);
|
|
18011
|
-
const acknowledged = this.#currentCursor(link, mount, head)?.local ?? this.#heldPeerMain(link, mount, head) ?? this.kernel.resolveRef(mount, ++this.#requestId, TRACKED_MAIN2);
|
|
18171
|
+
const acknowledged = (link ? this.#currentCursor(link, mount, head)?.local ?? this.#heldPeerMain(link, mount, head) : void 0) ?? this.kernel.resolveRef(mount, ++this.#requestId, TRACKED_MAIN2);
|
|
18012
18172
|
if (!head || !acknowledged) return void 0;
|
|
18013
18173
|
const count = (base, tip) => {
|
|
18014
18174
|
if (base === tip) return 0;
|
|
18015
18175
|
const summary = this.#chain(mount, base, tip);
|
|
18016
18176
|
return summary?.reachedBase ? Number(summary.commitCount) : void 0;
|
|
18017
18177
|
};
|
|
18018
|
-
const sent = link.stream?.unanswered.length ? link.stream.sent : void 0;
|
|
18178
|
+
const sent = link?.state === "open" && link.stream?.unanswered.length ? link.stream.sent : void 0;
|
|
18019
18179
|
const unacknowledged = sent ? count(acknowledged, sent) : 0;
|
|
18020
18180
|
const unsent = count(sent ?? acknowledged, head);
|
|
18021
18181
|
return unacknowledged === void 0 || unsent === void 0 ? void 0 : { unsent, unacknowledged };
|
|
@@ -18116,6 +18276,18 @@ var LiveCorrespondenceDesk = class {
|
|
|
18116
18276
|
operation
|
|
18117
18277
|
}) });
|
|
18118
18278
|
}
|
|
18279
|
+
/** A physical offline-to-online edge invalidates transport retry deadlines,
|
|
18280
|
+
* not custody evidence. Open links and their unacknowledged work stay intact. */
|
|
18281
|
+
networkRestored() {
|
|
18282
|
+
let retried = 0;
|
|
18283
|
+
for (const link of this.#links.values()) {
|
|
18284
|
+
if (link.state === "open") continue;
|
|
18285
|
+
if (link.state === "opening") this.#closeByRuntime(link, "network restored during open");
|
|
18286
|
+
this.#open(link);
|
|
18287
|
+
retried++;
|
|
18288
|
+
}
|
|
18289
|
+
return retried;
|
|
18290
|
+
}
|
|
18119
18291
|
#open(link) {
|
|
18120
18292
|
link.id = `live:${++this.#sequence}:${link.binding.workspace}`;
|
|
18121
18293
|
link.state = "opening";
|
|
@@ -22543,6 +22715,9 @@ var ReplicaFollowLane = class {
|
|
|
22543
22715
|
const delay = this.#controller.reconnected(workspace);
|
|
22544
22716
|
if (delay !== void 0) this.#scheduleAt(workspace, this.#now() + delay);
|
|
22545
22717
|
}
|
|
22718
|
+
networkRestored() {
|
|
22719
|
+
for (const workspace of this.#controller.networkRestored()) this.schedule(workspace);
|
|
22720
|
+
}
|
|
22546
22721
|
/** The upstream announced a new frontier: news even to a follow the kernel refused. */
|
|
22547
22722
|
remoteAdvanced(workspace) {
|
|
22548
22723
|
const delay = this.#controller.reconnected(workspace, true);
|
|
@@ -22888,6 +23063,9 @@ var CorrespondenceDesk = class {
|
|
|
22888
23063
|
#lastClosure = /* @__PURE__ */ new Map();
|
|
22889
23064
|
/** The last follow summary published, so an unchanged summary is not re-sent. */
|
|
22890
23065
|
#followsReported = "";
|
|
23066
|
+
// Scheduler probes may report phase/time changes, but are not new custody
|
|
23067
|
+
// evidence. Reuse counts from the last actual observation on those probes.
|
|
23068
|
+
#reportedStreamProgress = /* @__PURE__ */ new Map();
|
|
22891
23069
|
/** Workspaces whose custodian is opening them from verified custody, and since when (CAP-769). */
|
|
22892
23070
|
#warming = new CustodianWarmingLedger();
|
|
22893
23071
|
/** One-use handoff from recovery to its scheduled selector, never a durable inventory cache. */
|
|
@@ -23243,6 +23421,10 @@ var CorrespondenceDesk = class {
|
|
|
23243
23421
|
this.#onSyncCompleted?.(binding.session, event);
|
|
23244
23422
|
}
|
|
23245
23423
|
}
|
|
23424
|
+
networkRestored() {
|
|
23425
|
+
this.#followLane.networkRestored();
|
|
23426
|
+
this.reportFollows();
|
|
23427
|
+
}
|
|
23246
23428
|
/** The live link to a followed workspace's upstream opened or reopened. */
|
|
23247
23429
|
replicaLinkOpened(workspace) {
|
|
23248
23430
|
this.#followLane.reconnected(workspace);
|
|
@@ -23276,13 +23458,17 @@ var CorrespondenceDesk = class {
|
|
|
23276
23458
|
/** The live stream's count of local commits not yet offered and not yet admitted, per workspace. */
|
|
23277
23459
|
streamProgress;
|
|
23278
23460
|
/** Publish, application-wide, how many follows this peer keeps up with and how many are in sync. */
|
|
23279
|
-
reportFollows(force = false) {
|
|
23461
|
+
reportFollows(force = false, refreshStreamProgress = true) {
|
|
23280
23462
|
let workspaces;
|
|
23281
23463
|
try {
|
|
23282
23464
|
workspaces = this.#follows.knownWorkspaces();
|
|
23283
23465
|
} catch {
|
|
23284
23466
|
return;
|
|
23285
23467
|
}
|
|
23468
|
+
const followed = new Set(workspaces);
|
|
23469
|
+
for (const workspace of this.#reportedStreamProgress.keys()) {
|
|
23470
|
+
if (!followed.has(workspace)) this.#reportedStreamProgress.delete(workspace);
|
|
23471
|
+
}
|
|
23286
23472
|
let settled = 0;
|
|
23287
23473
|
let live = 0;
|
|
23288
23474
|
const now2 = this.#nowMillis();
|
|
@@ -23312,7 +23498,10 @@ var CorrespondenceDesk = class {
|
|
|
23312
23498
|
const dueAt2 = state.case === ReplicaFollowPhase.Due || state.case === ReplicaFollowPhase.ReplacingLocal ? state.dueAtUnixMillis : void 0;
|
|
23313
23499
|
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;
|
|
23314
23500
|
const activeEffect = state.case === ReplicaFollowPhase.Running ? this.#activeSyncEffect(workspace) : void 0;
|
|
23315
|
-
|
|
23501
|
+
if (refreshStreamProgress || force || !this.#reportedStreamProgress.has(workspace)) {
|
|
23502
|
+
this.#reportedStreamProgress.set(workspace, this.streamProgress?.(workspace));
|
|
23503
|
+
}
|
|
23504
|
+
const stream = this.#reportedStreamProgress.get(workspace);
|
|
23316
23505
|
const custodianWarming = this.#warmingPosture(workspace, state, now2);
|
|
23317
23506
|
return [create70(FollowObservationSchema, {
|
|
23318
23507
|
workspace,
|
|
@@ -23447,7 +23636,7 @@ var CorrespondenceDesk = class {
|
|
|
23447
23636
|
[...this.#syncWorkspaces.values()].flatMap((active) => [...active.workspaces])
|
|
23448
23637
|
);
|
|
23449
23638
|
const followCandidates = this.#followLane.candidates(activeSyncWorkspaces, excludedWorkspaces);
|
|
23450
|
-
this.reportFollows();
|
|
23639
|
+
this.reportFollows(false, false);
|
|
23451
23640
|
const due2 = [
|
|
23452
23641
|
...followCandidates,
|
|
23453
23642
|
...[...this.#outboxDueAt.entries()].map(([workspace2, at]) => ({
|
|
@@ -26539,7 +26728,7 @@ var PeerOffice = class {
|
|
|
26539
26728
|
const yieldedRequest = resumed ?? request;
|
|
26540
26729
|
const continued = yieldedRequest.command.case === "continueCorrespondence" ? yieldedRequest.command.value.workId : void 0;
|
|
26541
26730
|
const background = continued === void 0 ? this.#backgroundPapers.has(yieldedRequest.requestId) : this.#backgroundWork.has(continued);
|
|
26542
|
-
const foreground = !background && (continued === void 0 ? yieldedRequest.command.case
|
|
26731
|
+
const foreground = !background && (continued === void 0 ? !["socketReceipt", "networkRestored", "listWorkspaces"].includes(yieldedRequest.command.case ?? "") : this.#foregroundWork.delete(continued));
|
|
26543
26732
|
if (background) {
|
|
26544
26733
|
const held = this.#yieldBackground(yieldedRequest, continued);
|
|
26545
26734
|
if (held) return { responseProtobuf: toBinary32(RuntimeResponseSchema, held) };
|
|
@@ -26744,6 +26933,14 @@ var PeerOffice = class {
|
|
|
26744
26933
|
let pendingWorkId;
|
|
26745
26934
|
let pendingEffectId;
|
|
26746
26935
|
try {
|
|
26936
|
+
if (request.command.case === "networkRestored") {
|
|
26937
|
+
const linksRetried = this.#live.networkRestored();
|
|
26938
|
+
this.#correspondence.networkRestored();
|
|
26939
|
+
return this.#response(request, {
|
|
26940
|
+
case: "networkRestored",
|
|
26941
|
+
value: create81(NetworkRestoredSchema, { linksRetried })
|
|
26942
|
+
});
|
|
26943
|
+
}
|
|
26747
26944
|
if (request.command.case === "socketReceipt") {
|
|
26748
26945
|
const rung = /* @__PURE__ */ new Set();
|
|
26749
26946
|
this.#rungThisReceipt = rung;
|
|
@@ -26853,6 +27050,7 @@ var PeerOffice = class {
|
|
|
26853
27050
|
}
|
|
26854
27051
|
}
|
|
26855
27052
|
switch (request.command.case) {
|
|
27053
|
+
case "networkRestored":
|
|
26856
27054
|
case "socketReceipt":
|
|
26857
27055
|
throw new Error("socket receipts must enter through the peer lifecycle");
|
|
26858
27056
|
case "bindSession": {
|
|
@@ -27532,6 +27730,11 @@ var PeerOffice = class {
|
|
|
27532
27730
|
residentWorkspaces() {
|
|
27533
27731
|
return this.#residency.residentWorkspaces();
|
|
27534
27732
|
}
|
|
27733
|
+
/** Why this office's kernel trapped, once it has (CAP-965): the kernel port's record, which a desk
|
|
27734
|
+
* that answered the trap as typed paper cannot hide. The host discards the machine on it. */
|
|
27735
|
+
kernelTrap() {
|
|
27736
|
+
return this.#kernel.kernelTrap();
|
|
27737
|
+
}
|
|
27535
27738
|
retentionOutstandingDetails() {
|
|
27536
27739
|
return this.#residency.retentionOutstandingDetails();
|
|
27537
27740
|
}
|
|
@@ -28024,6 +28227,7 @@ function createPeerOfficeFrameRunner(kernel, credentials, profile, observations,
|
|
|
28024
28227
|
correspondenceHolds: () => peer.correspondenceHolds(),
|
|
28025
28228
|
residentObservation: (workspace) => peer.residentObservation(workspace),
|
|
28026
28229
|
residentWorkspaces: () => peer.residentWorkspaces(),
|
|
28230
|
+
kernelTrap: () => peer.kernelTrap(),
|
|
28027
28231
|
drainEvents,
|
|
28028
28232
|
runBackground,
|
|
28029
28233
|
close() {
|