githolon 0.119.11 → 0.119.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/compile_mountability_entry.js +329 -105
- package/dist/dev-server.mjs +306 -102
- 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 +370 -122
- package/package.json +2 -2
|
@@ -3239,7 +3239,7 @@ var init_maintenance_desk_pb = __esm({
|
|
|
3239
3239
|
|
|
3240
3240
|
// ../adapter/proto/nomos/runtime/v2/correspondence_desk_pb.js
|
|
3241
3241
|
import { enumDesc as enumDesc5, fileDesc as fileDesc9, messageDesc as messageDesc9, tsEnum as tsEnum5 } from "@bufbuild/protobuf/codegenv2";
|
|
3242
|
-
var file_nomos_runtime_v2_correspondence_desk, VerifyWorkspaceChainResultSchema, VerifyChainHistorySchema, SyncWorkspaceRequestSchema, SyncWorkspaceResponseSchema, CustodyOfferReceiptSchema, CustodyOfferAdmissionReceiptSchema, CustodyOfferFailureSchema, RuntimeTransportFailureSchema, SyncPhaseTimingsSchema, RefreshReplicaCredentialRequestSchema, DeliverWorkspaceEffectsRequestSchema, DeliverHttpObligationRequestSchema, HttpObligationDeliveredSchema, CorrespondenceRecoveredSchema, WorkspaceEffectsDeliveredSchema, CorrespondenceRetryReasonSchema, RemoteGeneratedOfferRequestSchema, RemoteGeneratedOfferAcceptedSchema, PeerHttpEffectSchema, PeerHttpResponseSchema, PeerEffectFailureSchema, PeerEffectReceiptSchema, RetainedRefSchema, RetainFrontierEffectSchema, FrontierRetainedSchema, PersistBornCustodyEffectSchema, PersistedBornCustodySchema, PersistBornCustodyReceiptSchema, CorrespondencePendingSchema, PeerConsoleEnrolmentEffectSchema, PeerHistoryAcquisitionEffectSchema, PeerHistoryAcquisitionReceiptSchema, PeerWakeEffectSchema, PeerWokenSchema, PeerCredentialRefreshEffectSchema, PeerCredentialRefreshedSchema, PeerDeviceIdentityEffectSchema, PeerDeviceIdentityLoadSchema, PeerDeviceIdentitySaveSchema, DeviceRecoveryRecordSchema, DeviceRecoveryAdmissionSchema, PeerDeviceIdentitySchema, PeerLawPackageEffectSchema, PeerLawPackageSchema, PeerWorkspaceDiscoveryEffectSchema, PeerLocalCustodyEffectSchema, PeerLocalCustodyReceiptSchema, ContinueCorrespondenceRequestSchema, BornCustodyRefSchema, BornCustodySchema, CustodyOfferBatchRequestSchema, LiveOfferFrameSchema, LiveFrontierSchema, LiveCheckpointRequestSchema, LiveCheckpointOfferSchema, LiveCheckpointChunkSchema, LiveHistoryRequestSchema, LiveRefRequestSchema, LivePackSchema, LiveStreamRefusalSchema, LiveStreamAnswerSchema, PeerStreamEffectSchema, PeerStreamReceiptSchema, PeerSocketEffectSchema, PeerSocketReceiptSchema, PeerSocketClosureSchema, LiveLinkClosureSchema, PeerSocketObservedSchema, CustodyIntentOfferSchema, CustodyInlineOffersSchema, CustodyAdmissionSchema, CustodySessionAdmissionSchema, CustodyIntentAdmissionSchema, CustodyIntentAdmittedSchema, CustodyIntentRefusedSchema, CustodyIntentDeadLetteredSchema, CustodyIntentBlockedSchema, CustodyIntentQuarantinedSchema, WorkspaceEffectDeferredSchema, PeerGitRefsAlongsideSchema, PeerGitRefsFetchedSchema, PeerHttpMethodSchema, PeerHttpMethod, PeerEffectFailureReasonSchema, PeerEffectFailureReason, DeviceRecoveryAdmissionStageSchema, DeviceRecoveryAdmissionStage, PeerSocketCloseInitiatorSchema, PeerSocketCloseInitiator, LiveLinkRoleSchema, LiveLinkRole;
|
|
3242
|
+
var file_nomos_runtime_v2_correspondence_desk, VerifyWorkspaceChainResultSchema, VerifyChainHistorySchema, SyncWorkspaceRequestSchema, SyncWorkspaceResponseSchema, CustodyOfferReceiptSchema, CustodyOfferAdmissionReceiptSchema, CustodyOfferFailureSchema, RuntimeTransportFailureSchema, SyncPhaseTimingsSchema, RefreshReplicaCredentialRequestSchema, DeliverWorkspaceEffectsRequestSchema, DeliverHttpObligationRequestSchema, HttpObligationDeliveredSchema, CorrespondenceRecoveredSchema, WorkspaceEffectsDeliveredSchema, CorrespondenceRetryReasonSchema, RemoteGeneratedOfferRequestSchema, RemoteGeneratedOfferAcceptedSchema, PeerHttpEffectSchema, PeerHttpResponseSchema, PeerEffectFailureSchema, PeerEffectReceiptSchema, RetainedRefSchema, RetainFrontierEffectSchema, FrontierRetainedSchema, PersistBornCustodyEffectSchema, PersistedBornCustodySchema, PersistBornCustodyReceiptSchema, CorrespondencePendingSchema, PeerConsoleEnrolmentEffectSchema, PeerHistoryAcquisitionEffectSchema, PeerHistoryAcquisitionReceiptSchema, PeerWakeEffectSchema, PeerWokenSchema, PeerCredentialRefreshEffectSchema, PeerCredentialRefreshedSchema, PeerDeviceIdentityEffectSchema, PeerDeviceIdentityLoadSchema, PeerDeviceIdentitySaveSchema, DeviceRecoveryRecordSchema, DeviceRecoveryAdmissionSchema, PeerDeviceIdentitySchema, PeerLawPackageEffectSchema, PeerLawPackageSchema, PeerWorkspaceDiscoveryEffectSchema, PeerLocalCustodyEffectSchema, PeerLocalCustodyReceiptSchema, ContinueCorrespondenceRequestSchema, BornCustodyRefSchema, BornCustodySchema, CustodyOfferBatchRequestSchema, LiveOfferFrameSchema, LiveFrontierSchema, LiveCheckpointRequestSchema, LiveCheckpointOfferSchema, LiveCheckpointChunkSchema, LiveHistoryRequestSchema, LiveRefRequestSchema, LivePackSchema, LiveStreamRefusalSchema, LiveStreamAnswerSchema, PeerStreamEffectSchema, PeerStreamReceiptSchema, PeerSocketEffectSchema, PeerSocketReceiptSchema, PeerSocketClosureSchema, LiveLinkClosureSchema, PeerSocketObservedSchema, CustodyIntentOfferSchema, CustodyInlineOffersSchema, CustodyAdmissionSchema, CustodySessionAdmissionSchema, CustodyIntentAdmissionSchema, CustodyIntentAdmittedSchema, CustodyIntentRefusedSchema, CustodyIntentDeadLetteredSchema, CustodyIntentBlockedSchema, CustodyIntentQuarantinedSchema, WorkspaceEffectDeferredSchema, PeerGitRefsAlongsideSchema, PeerGitRefsFetchedSchema, NetworkRestoredSchema, PeerHttpMethodSchema, PeerHttpMethod, PeerEffectFailureReasonSchema, PeerEffectFailureReason, DeviceRecoveryAdmissionStageSchema, DeviceRecoveryAdmissionStage, PeerSocketCloseInitiatorSchema, PeerSocketCloseInitiator, LiveLinkRoleSchema, LiveLinkRole;
|
|
3243
3243
|
var init_correspondence_desk_pb = __esm({
|
|
3244
3244
|
"../adapter/proto/nomos/runtime/v2/correspondence_desk_pb.js"() {
|
|
3245
3245
|
"use strict";
|
|
@@ -3248,7 +3248,7 @@ var init_correspondence_desk_pb = __esm({
|
|
|
3248
3248
|
init_workspace_placement_pb();
|
|
3249
3249
|
init_custody_desk_pb();
|
|
3250
3250
|
init_maintenance_desk_pb();
|
|
3251
|
-
file_nomos_runtime_v2_correspondence_desk = /* @__PURE__ */ fileDesc9("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]);
|
|
3251
|
+
file_nomos_runtime_v2_correspondence_desk = /* @__PURE__ */ fileDesc9("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]);
|
|
3252
3252
|
VerifyWorkspaceChainResultSchema = /* @__PURE__ */ messageDesc9(file_nomos_runtime_v2_correspondence_desk, 7);
|
|
3253
3253
|
VerifyChainHistorySchema = /* @__PURE__ */ messageDesc9(file_nomos_runtime_v2_correspondence_desk, 8);
|
|
3254
3254
|
SyncWorkspaceRequestSchema = /* @__PURE__ */ messageDesc9(file_nomos_runtime_v2_correspondence_desk, 9);
|
|
@@ -3330,6 +3330,7 @@ var init_correspondence_desk_pb = __esm({
|
|
|
3330
3330
|
WorkspaceEffectDeferredSchema = /* @__PURE__ */ messageDesc9(file_nomos_runtime_v2_correspondence_desk, 106);
|
|
3331
3331
|
PeerGitRefsAlongsideSchema = /* @__PURE__ */ messageDesc9(file_nomos_runtime_v2_correspondence_desk, 109);
|
|
3332
3332
|
PeerGitRefsFetchedSchema = /* @__PURE__ */ messageDesc9(file_nomos_runtime_v2_correspondence_desk, 110);
|
|
3333
|
+
NetworkRestoredSchema = /* @__PURE__ */ messageDesc9(file_nomos_runtime_v2_correspondence_desk, 112);
|
|
3333
3334
|
PeerHttpMethodSchema = /* @__PURE__ */ enumDesc5(file_nomos_runtime_v2_correspondence_desk, 1);
|
|
3334
3335
|
PeerHttpMethod = /* @__PURE__ */ tsEnum5(PeerHttpMethodSchema);
|
|
3335
3336
|
PeerEffectFailureReasonSchema = /* @__PURE__ */ enumDesc5(file_nomos_runtime_v2_correspondence_desk, 2);
|
|
@@ -3594,12 +3595,12 @@ var init_residency_desk_pb = __esm({
|
|
|
3594
3595
|
"use strict";
|
|
3595
3596
|
init_custody_desk_pb();
|
|
3596
3597
|
init_kernel_pb();
|
|
3597
|
-
file_nomos_runtime_v2_residency_desk = /* @__PURE__ */ fileDesc23("
|
|
3598
|
+
file_nomos_runtime_v2_residency_desk = /* @__PURE__ */ fileDesc23("CiVub21vcy9ydW50aW1lL3YyL3Jlc2lkZW5jeV9kZXNrLnByb3RvEhBub21vcy5ydW50aW1lLnYyIhoKGFJlc2lkZW5jeVByZXNzdXJlUmVxdWVzdCJIChVSZXRhaW5Gcm9udGllclJlcXVlc3QSEQoJd29ya3NwYWNlGAEgASgJEg4KBmJyYW5jaBgCIAEoCRIMCgRoZWFkGAMgASgJIm8KGVJlc2lkZW5jeVByZXNzdXJlUmVsaWV2ZWQSGgoSZXZpY3RlZF93b3Jrc3BhY2VzGAEgAygJEhcKD3dhcm1fd29ya3NwYWNlcxgCIAMoCRIdChV3YXJtX3Jlc2lkZW5jeV9taWxsaXMYAyABKAQi6gcKF1Jlc2lkZW50V29ya3NwYWNlRGV0YWlsEhEKCXdvcmtzcGFjZRgBIAEoCRITCgtpZGxlX21pbGxpcxgCIAEoBBIdChByZXBvc2l0b3J5X2J5dGVzGAMgASgESACIAQESKAobbWF0ZXJpYWxpemVkX2Zyb250aWVyX2J5dGVzGAQgASgESAGIAQESPwoJcmVhZGluZXNzGAUgASgOMiwubm9tb3MucnVudGltZS52Mi5SZXNpZGVudFdvcmtzcGFjZVJlYWRpbmVzcxIYCgtzcWxpdGVfaGVhZBgGIAEoCUgCiAEBEhUKCGdpdF9oZWFkGAcgASgJSAOIAQESPgoPaGlzdG9yeV9wb3N0dXJlGAggASgOMiUubm9tb3MucnVudGltZS52Mi5Mb2NhbEhpc3RvcnlQb3N0dXJlEhoKEnNoYWxsb3dfYm91bmRhcmllcxgJIAEoDRIvCiJyZXBvc2l0b3J5X21lYXN1cmVkX2F0X3VuaXhfbWlsbGlzGAogASgESASIAQESLQogZnJvbnRpZXJfbWVhc3VyZWRfYXRfdW5peF9taWxsaXMYCyABKARIBYgBARI7CglwbGFjZW1lbnQYDCABKAsyIy5ub21vcy5ydW50aW1lLnYyLlJlc2lkZW50UGxhY2VtZW50SAaIAQESNQoGb3V0Ym94GA0gASgLMiAubm9tb3MucnVudGltZS52Mi5SZXNpZGVudE91dGJveEgHiAEBEj4KBmNlbnN1cxgOIAEoCzIpLm5vbW9zLnJ1bnRpbWUudjIuUmVzaWRlbnRBZ2dyZWdhdGVDZW5zdXNICIgBARIdChBmdWxsX3JlcGxheV9oZWFkGA8gASgJSAmIAQESIgoVbG9jYWxfaGlzdG9yeV9jb21taXRzGBAgASgESAqIAQESKAobcGxhY2VtZW50X3Vub2JzZXJ2ZWRfcmVhc29uGBEgASgJSAuIAQFCEwoRX3JlcG9zaXRvcnlfYnl0ZXNCHgocX21hdGVyaWFsaXplZF9mcm9udGllcl9ieXRlc0IOCgxfc3FsaXRlX2hlYWRCCwoJX2dpdF9oZWFkQiUKI19yZXBvc2l0b3J5X21lYXN1cmVkX2F0X3VuaXhfbWlsbGlzQiMKIV9mcm9udGllcl9tZWFzdXJlZF9hdF91bml4X21pbGxpc0IMCgpfcGxhY2VtZW50QgkKB19vdXRib3hCCQoHX2NlbnN1c0ITChFfZnVsbF9yZXBsYXlfaGVhZEIYChZfbG9jYWxfaGlzdG9yeV9jb21taXRzQh4KHF9wbGFjZW1lbnRfdW5vYnNlcnZlZF9yZWFzb24iiwIKF1Jlc2lkZW50QWdncmVnYXRlQ2Vuc3VzEgwKBGhlYWQYASABKAkSHAoPYWdncmVnYXRlX2NvdW50GAIgASgESACIAQESFwoKc3RhdGVfcm9vdBgDIAEoCUgBiAEBEjYKCXRvcF90eXBlcxgEIAMoCzIjLm5vbW9zLmtlcm5lbC52MS5BZ2dyZWdhdGVUeXBlQ291bnQSHQoQdHlwZXNfc3RhdGVfcm9vdBgFIAEoCUgCiAEBEhwKFG9ic2VydmVkX3VuaXhfbWlsbGlzGAYgASgEQhIKEF9hZ2dyZWdhdGVfY291bnRCDQoLX3N0YXRlX3Jvb3RCEwoRX3R5cGVzX3N0YXRlX3Jvb3QisQEKFVJlc2lkZW50UGxhY2VtZW50UnVsZRISCgpwZWVyX2NsYXNzGAEgASgJEkAKEGtlcm5lbF9yZXNpZGVuY3kYAiABKA4yJi5ub21vcy5rZXJuZWwudjEuS2VybmVsUmVzaWRlbmN5SW50ZW50EkIKEWN1c3RvZHlfcmV0ZW50aW9uGAMgASgOMicubm9tb3Mua2VybmVsLnYxLkN1c3RvZHlSZXRlbnRpb25JbnRlbnQiqgMKEVJlc2lkZW50UGxhY2VtZW50EhUKCGZyb250aWVyGAEgASgJSACIAQESEwoLZGVjbGFyYXRpb24YAiABKAkSEgoKYWRvcHRlZF9ieRgDIAEoCRI2CgVydWxlcxgEIAMoCzInLm5vbW9zLnJ1bnRpbWUudjIuUmVzaWRlbnRQbGFjZW1lbnRSdWxlEhQKDHJlbW90ZV9uYW1lcxgFIAMoCRIiChpyZWNpcGllbnRfbWFpbGJveF9kZWNsYXJlZBgGIAEoCBJKChplZmZlY3RpdmVfa2VybmVsX3Jlc2lkZW5jeRgHIAEoDjImLm5vbW9zLmtlcm5lbC52MS5LZXJuZWxSZXNpZGVuY3lJbnRlbnQSTAobZWZmZWN0aXZlX2N1c3RvZHlfcmV0ZW50aW9uGAggASgOMicubm9tb3Mua2VybmVsLnYxLkN1c3RvZHlSZXRlbnRpb25JbnRlbnQSHgoWZWZmZWN0aXZlX3JlbW90ZV9uYW1lcxgJIAMoCRIcChRvYnNlcnZlZF91bml4X21pbGxpcxgKIAEoBEILCglfZnJvbnRpZXIikQEKDlJlc2lkZW50T3V0Ym94Eg8KB2VudHJpZXMYASABKA0SFAoMd29ya19wZW5kaW5nGAIgASgIEiEKFG5leHRfZHVlX3VuaXhfbWlsbGlzGAMgASgESACIAQESHAoUb2JzZXJ2ZWRfdW5peF9taWxsaXMYBCABKARCFwoVX25leHRfZHVlX3VuaXhfbWlsbGlzIuABChFLZXJuZWxXb3JrQ291bnRlchIOCgZmYW1pbHkYASABKAkSEQoJb3BlcmF0aW9uGAIgASgJEg0KBWNhbGxzGAMgASgEEhAKCGZhaWx1cmVzGAQgASgEEhIKCmNwdV9taWNyb3MYBSABKAQSEwoLd2FsbF9taWNyb3MYBiABKAQSOgoLY3B1X2J1Y2tldHMYByADKAsyJS5ub21vcy5ydW50aW1lLnYyLktlcm5lbFdvcmtDcHVCdWNrZXQSIgoabGFzdF9jb21wbGV0ZWRfdW5peF9taWxsaXMYCCABKAQiNwoTS2VybmVsV29ya0NwdUJ1Y2tldBIRCglsZV9taWNyb3MYASABKAQSDQoFY2FsbHMYAiABKAQiUgoQQWN0aXZlS2VybmVsV29yaxIOCgZmYW1pbHkYASABKAkSEQoJb3BlcmF0aW9uGAIgASgJEhsKE3N0YXJ0ZWRfdW5peF9taWxsaXMYAyABKAQiygEKEktlcm5lbFdvcmtTbmFwc2hvdBIbChNzdGFydGVkX3VuaXhfbWlsbGlzGAEgASgEEhwKFG9ic2VydmVkX3VuaXhfbWlsbGlzGAIgASgEEjUKCGNvdW50ZXJzGAMgAygLMiMubm9tb3MucnVudGltZS52Mi5LZXJuZWxXb3JrQ291bnRlchI3CgZhY3RpdmUYBCABKAsyIi5ub21vcy5ydW50aW1lLnYyLkFjdGl2ZUtlcm5lbFdvcmtIAIgBAUIJCgdfYWN0aXZlIoEFCgpIb3N0SGVhbHRoEg8KB3JlcGxpY2EYASABKAQSFQoNa2VybmVsX3NoYTI1NhgCIAEoCRIbChNyZXNpZGVudF93b3Jrc3BhY2VzGAMgAygJEhoKEndhc21fbGluZWFyX21lbV9tYhgEIAEoARIWCg5wcm9jZXNzX3Jzc19tYhgFIAEoARIXCg9yc3NfY3JpdGljYWxfbWIYBiABKA0SPAoJcmVzaWRlbnRzGAcgAygLMikubm9tb3MucnVudGltZS52Mi5SZXNpZGVudFdvcmtzcGFjZURldGFpbBI+CgtrZXJuZWxfd29yaxgIIAEoCzIkLm5vbW9zLnJ1bnRpbWUudjIuS2VybmVsV29ya1NuYXBzaG90SACIAQESMgoIb3BlbmluZ3MYCSADKAsyIC5ub21vcy5ydW50aW1lLnYyLkN1c3RvZHlPcGVuaW5nEkQKCWFydGlmYWN0cxgKIAEoCzIsLm5vbW9zLnJ1bnRpbWUudjIuQXJ0aWZhY3RzVHJhbnNwb3J0U25hcHNob3RIAYgBARI8CglyZXRlbnRpb24YCyADKAsyKS5ub21vcy5ydW50aW1lLnYyLlJldGVudGlvbk91dGNvbWVDb3VudGVyEkIKFGNvcnJlc3BvbmRlbmNlX2hvbGRzGAwgAygLMiQubm9tb3MucnVudGltZS52Mi5Db3JyZXNwb25kZW5jZUhvbGQSPQoHaW5ncmVzcxgNIAEoCzInLm5vbW9zLnJ1bnRpbWUudjIuS2VybmVsSW5ncmVzc1NuYXBzaG90SAKIAQFCDgoMX2tlcm5lbF93b3JrQgwKCl9hcnRpZmFjdHNCCgoIX2luZ3Jlc3MiuQIKFUtlcm5lbEluZ3Jlc3NTbmFwc2hvdBIPCgdwZW5kaW5nGAEgASgNEg0KBWJ5dGVzGAIgASgEEhMKC21heF9wZW5kaW5nGAMgASgNEhEKCW1heF9ieXRlcxgEIAEoBBIUCgxmaWxsX3BlcmNlbnQYBSABKAESGQoRcGVha19maWxsX3BlcmNlbnQYBiABKAESEAoIcmVmdXNhbHMYByABKAQSDgoGcG9zdGVkGAggASgNEhoKEndhaXRpbmdfZm9yZWdyb3VuZBgJIAEoDRIaChJ3YWl0aW5nX2JhY2tncm91bmQYCiABKA0SGAoQaW5fZmxpZ2h0X3dpbmRvdxgLIAEoDRIRCglhYmFuZG9uZWQYDCABKAQSIAoYbGF3X2ltcG9ydHNfZGVkdXBsaWNhdGVkGA0gASgEIr8BChdBcnRpZmFjdHNSZXF1ZXN0Q291bnRlchIRCglvcGVyYXRpb24YASABKAkSDwoHb3V0Y29tZRgCIAEoCRIQCghyZXF1ZXN0cxgDIAEoBBITCgt3YWxsX21pY3JvcxgEIAEoBBIWCg5yZXNwb25zZV9ieXRlcxgFIAEoBBJBCg9sYXRlbmN5X2J1Y2tldHMYBiADKAsyKC5ub21vcy5ydW50aW1lLnYyLkFydGlmYWN0c0xhdGVuY3lCdWNrZXQiPQoWQXJ0aWZhY3RzTGF0ZW5jeUJ1Y2tldBIRCglsZV9taWNyb3MYASABKAQSEAoIcmVxdWVzdHMYAiABKAQitwEKGkFydGlmYWN0c1RyYW5zcG9ydFNuYXBzaG90EhsKE3N0YXJ0ZWRfdW5peF9taWxsaXMYASABKAQSOwoIY291bnRlcnMYAiADKAsyKS5ub21vcy5ydW50aW1lLnYyLkFydGlmYWN0c1JlcXVlc3RDb3VudGVyEhEKCWluX2ZsaWdodBgDIAEoDRIsCiRvbGRlc3RfaW5fZmxpZ2h0X3N0YXJ0ZWRfdW5peF9taWxsaXMYBCABKAQiUgoXUmV0ZW50aW9uT3V0Y29tZUNvdW50ZXISDwoHb3V0Y29tZRgBIAEoCRIUCgxwdWJsaWNhdGlvbnMYAiABKAQSEAoIYXR0ZW1wdHMYAyABKAQifAoUS2VybmVsUmVmcmVzaE91dGNvbWUSKgoEaG9zdBgBIAEoCzIcLm5vbW9zLnJ1bnRpbWUudjIuSG9zdEhlYWx0aBIPCgdjaGFuZ2VkGAIgASgIEhcKD3ByZXZpb3VzX3NoYTI1NhgDIAEoCRIOCgZzaGEyNTYYBCABKAkiyQEKEkNvcnJlc3BvbmRlbmNlSG9sZBIYChBzb3VyY2Vfd29ya3NwYWNlGAEgASgJEhgKEHRhcmdldF93b3Jrc3BhY2UYAiABKAkSGQoRc291cmNlX29mZmVyX3BhdGgYAyABKAkSDgoGcmVhc29uGAQgASgJEg4KBmRldGFpbBgFIAEoCRIQCghmYWlsdXJlcxgGIAEoDRIXCg9yZXRyeV9hdF9taWxsaXMYByABKAQSGQoRaGVsZF9zaW5jZV9taWxsaXMYCCABKAQi/AEKDVJlc2lkZW5jeUhvc3QSDwoHaG9zdF9pZBgBIAEoCRIOCgZzdGF0dXMYAiABKAkSDAoEbGl2ZRgDIAEoCBIaChJsYXN0X2NoYW5nZV9taWxsaXMYBCABKAQSLwoEaG9zdBgFIAEoCzIcLm5vbW9zLnJ1bnRpbWUudjIuSG9zdEhlYWx0aEgAiAEBEjwKB3JlZnJlc2gYBiABKAsyJi5ub21vcy5ydW50aW1lLnYyLktlcm5lbFJlZnJlc2hPdXRjb21lSAGIAQESEgoFZXJyb3IYByABKAlIAogBAUIHCgVfaG9zdEIKCghfcmVmcmVzaEIICgZfZXJyb3IiqQEKD1Jlc2lkZW5jeVJlcG9ydBIKCgJvaxgBIAEoCBISCgpub3dfbWlsbGlzGAIgASgEEhUKDWhvc3RfY2FwYWNpdHkYAyABKA0SEgoKbGl2ZV9ob3N0cxgEIAEoDRIbChNyZXNpZGVudF93b3Jrc3BhY2VzGAUgASgNEi4KBWhvc3RzGAYgAygLMh8ubm9tb3MucnVudGltZS52Mi5SZXNpZGVuY3lIb3N0IpkBChBQZWVyU3RhdHVzUmVwb3J0EgoKAm9rGAEgASgIEhEKCXdvcmtzcGFjZRgCIAEoCRI2CgtwZWVyX29mZmljZRgDIAEoCzIhLm5vbW9zLnJ1bnRpbWUudjIuV29ya3NwYWNlU3RhdHVzEi4KCHBoeXNpY2FsGAQgASgLMhwubm9tb3MucnVudGltZS52Mi5Ib3N0SGVhbHRoIkUKDVJlc3RhcnRlZEhvc3QSDwoHaG9zdF9pZBgBIAEoCRIMCgRsaXZlGAIgASgIEhUKDWtlcm5lbF9zaGEyNTYYAyABKAkiLgoMUmVzdGFydEVycm9yEg8KB2hvc3RfaWQYASABKAkSDQoFZXJyb3IYAiABKAkikQEKDVJlc3RhcnRSZXBvcnQSCgoCb2sYASABKAgSEAoIaG9zdF9pZHMYAiADKAkSMgoJcmVzdGFydGVkGAMgAygLMh8ubm9tb3MucnVudGltZS52Mi5SZXN0YXJ0ZWRIb3N0Ei4KBmVycm9ycxgEIAMoCzIeLm5vbW9zLnJ1bnRpbWUudjIuUmVzdGFydEVycm9yKs8CChpSZXNpZGVudFdvcmtzcGFjZVJlYWRpbmVzcxIsCihSRVNJREVOVF9XT1JLU1BBQ0VfUkVBRElORVNTX1VOU1BFQ0lGSUVEEAASLAooUkVTSURFTlRfV09SS1NQQUNFX1JFQURJTkVTU19TUUxJVEVfT05MWRABEjEKLVJFU0lERU5UX1dPUktTUEFDRV9SRUFESU5FU1NfR0lUX0NVU1RPRFlfT05MWRACEjcKM1JFU0lERU5UX1dPUktTUEFDRV9SRUFESU5FU1NfU1FMSVRFX0FORF9HSVRfQUxJR05FRBADEjgKNFJFU0lERU5UX1dPUktTUEFDRV9SRUFESU5FU1NfU1FMSVRFX0dJVF9GVUxMX0hJU1RPUlkQBBIvCitSRVNJREVOVF9XT1JLU1BBQ0VfUkVBRElORVNTX0hFQURTX0RJVkVSR0VEEAUqgwEKE0xvY2FsSGlzdG9yeVBvc3R1cmUSJQohTE9DQUxfSElTVE9SWV9QT1NUVVJFX1VOU1BFQ0lGSUVEEAASIQodTE9DQUxfSElTVE9SWV9QT1NUVVJFX1BBUlRJQUwQARIiCh5MT0NBTF9ISVNUT1JZX1BPU1RVUkVfQ09NUExFVEUQAmIGcHJvdG8z", [file_nomos_runtime_v2_custody_desk, file_nomos_kernel_v1_kernel]);
|
|
3598
3599
|
RetainFrontierRequestSchema = /* @__PURE__ */ messageDesc23(file_nomos_runtime_v2_residency_desk, 1);
|
|
3599
3600
|
ResidencyPressureRelievedSchema = /* @__PURE__ */ messageDesc23(file_nomos_runtime_v2_residency_desk, 2);
|
|
3600
3601
|
ResidentPlacementSchema = /* @__PURE__ */ messageDesc23(file_nomos_runtime_v2_residency_desk, 6);
|
|
3601
3602
|
ResidentOutboxSchema = /* @__PURE__ */ messageDesc23(file_nomos_runtime_v2_residency_desk, 7);
|
|
3602
|
-
CorrespondenceHoldSchema = /* @__PURE__ */ messageDesc23(file_nomos_runtime_v2_residency_desk,
|
|
3603
|
+
CorrespondenceHoldSchema = /* @__PURE__ */ messageDesc23(file_nomos_runtime_v2_residency_desk, 19);
|
|
3603
3604
|
LocalHistoryPostureSchema = /* @__PURE__ */ enumDesc16(file_nomos_runtime_v2_residency_desk, 1);
|
|
3604
3605
|
LocalHistoryPosture = /* @__PURE__ */ tsEnum16(LocalHistoryPostureSchema);
|
|
3605
3606
|
}
|
|
@@ -3630,7 +3631,7 @@ var init_runtime_pb = __esm({
|
|
|
3630
3631
|
init_recovery_desk_pb();
|
|
3631
3632
|
init_records_desk_pb();
|
|
3632
3633
|
init_residency_desk_pb();
|
|
3633
|
-
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]);
|
|
3634
|
+
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]);
|
|
3634
3635
|
RuntimeRequestSchema = /* @__PURE__ */ messageDesc24(file_nomos_runtime_v2_runtime, 0);
|
|
3635
3636
|
InvocationTargetSchema = /* @__PURE__ */ messageDesc24(file_nomos_runtime_v2_runtime, 1);
|
|
3636
3637
|
RuntimeResponseSchema = /* @__PURE__ */ messageDesc24(file_nomos_runtime_v2_runtime, 2);
|
|
@@ -3957,7 +3958,7 @@ function bootKernelMachine(source, makeHost) {
|
|
|
3957
3958
|
};
|
|
3958
3959
|
return { imports, start, dispose };
|
|
3959
3960
|
}
|
|
3960
|
-
var writeBootLaw, assertUsdz, verifyLawClosure;
|
|
3961
|
+
var writeBootLaw, assertUsdz, unsignedWasiPointers, verifyLawClosure;
|
|
3961
3962
|
var init_kernel_machine_desk = __esm({
|
|
3962
3963
|
"../adapter/kernel_machine_desk.ts"() {
|
|
3963
3964
|
"use strict";
|
|
@@ -3976,6 +3977,48 @@ var init_kernel_machine_desk = __esm({
|
|
|
3976
3977
|
if (bytes.byteLength < 4 || bytes[0] !== 80 || bytes[1] !== 75 || bytes[2] !== 3 || bytes[3] !== 4)
|
|
3977
3978
|
throw new Error(`${name} must be opaque USDZ bytes`);
|
|
3978
3979
|
};
|
|
3980
|
+
unsignedWasiPointers = (imports) => {
|
|
3981
|
+
const pointerArguments = {
|
|
3982
|
+
args_sizes_get: [0, 1],
|
|
3983
|
+
args_get: [0, 1],
|
|
3984
|
+
environ_sizes_get: [0, 1],
|
|
3985
|
+
environ_get: [0, 1],
|
|
3986
|
+
clock_res_get: [1],
|
|
3987
|
+
clock_time_get: [2],
|
|
3988
|
+
fd_fdstat_get: [1],
|
|
3989
|
+
fd_filestat_get: [1],
|
|
3990
|
+
fd_pread: [1, 4],
|
|
3991
|
+
fd_prestat_get: [1],
|
|
3992
|
+
fd_prestat_dir_name: [1],
|
|
3993
|
+
fd_pwrite: [1, 4],
|
|
3994
|
+
fd_read: [1, 3],
|
|
3995
|
+
fd_readdir: [1, 4],
|
|
3996
|
+
fd_seek: [3],
|
|
3997
|
+
fd_tell: [1],
|
|
3998
|
+
fd_write: [1, 3],
|
|
3999
|
+
path_create_directory: [1],
|
|
4000
|
+
path_filestat_get: [2, 4],
|
|
4001
|
+
path_filestat_set_times: [2],
|
|
4002
|
+
path_link: [2, 5],
|
|
4003
|
+
path_open: [2, 8],
|
|
4004
|
+
path_readlink: [1, 3, 5],
|
|
4005
|
+
path_remove_directory: [1],
|
|
4006
|
+
path_rename: [1, 4],
|
|
4007
|
+
path_symlink: [0, 3],
|
|
4008
|
+
path_unlink_file: [1],
|
|
4009
|
+
poll_oneoff: [0, 1],
|
|
4010
|
+
random_get: [0]
|
|
4011
|
+
};
|
|
4012
|
+
for (const [name, indexes] of Object.entries(pointerArguments)) {
|
|
4013
|
+
const original = imports[name];
|
|
4014
|
+
if (original === void 0) continue;
|
|
4015
|
+
imports[name] = (...args) => {
|
|
4016
|
+
for (const index of indexes) args[index] = args[index] >>> 0;
|
|
4017
|
+
return original(...args);
|
|
4018
|
+
};
|
|
4019
|
+
}
|
|
4020
|
+
return imports;
|
|
4021
|
+
};
|
|
3979
4022
|
verifyLawClosure = (machine, closureFile, capability) => {
|
|
3980
4023
|
const response = callKernelOperation(machine, {
|
|
3981
4024
|
case: "custody",
|
|
@@ -4312,7 +4355,9 @@ function nodeKernelWasiHost(directory2, stderr) {
|
|
|
4312
4355
|
returnOnExit: true
|
|
4313
4356
|
});
|
|
4314
4357
|
let memory;
|
|
4315
|
-
const imports =
|
|
4358
|
+
const imports = unsignedWasiPointers(
|
|
4359
|
+
{ ...wasi2.wasiImport }
|
|
4360
|
+
);
|
|
4316
4361
|
const openDescriptors = /* @__PURE__ */ new Set([3]);
|
|
4317
4362
|
const pathOpen = imports.path_open;
|
|
4318
4363
|
const fdClose = imports.fd_close;
|
|
@@ -5211,6 +5256,42 @@ var init_custody_transport = __esm({
|
|
|
5211
5256
|
}
|
|
5212
5257
|
});
|
|
5213
5258
|
|
|
5259
|
+
// ../adapter/custody_fetch_pool.ts
|
|
5260
|
+
function memoryStagedPack(fetched) {
|
|
5261
|
+
let bytes = fetched.pack;
|
|
5262
|
+
return {
|
|
5263
|
+
bytes: fetched.pack.byteLength,
|
|
5264
|
+
shallow: fetched.shallow,
|
|
5265
|
+
unshallow: fetched.unshallow,
|
|
5266
|
+
pack: () => {
|
|
5267
|
+
if (bytes === void 0) throw new Error("staged pack was discarded before it was applied");
|
|
5268
|
+
return bytes;
|
|
5269
|
+
},
|
|
5270
|
+
discard: () => {
|
|
5271
|
+
bytes = void 0;
|
|
5272
|
+
}
|
|
5273
|
+
};
|
|
5274
|
+
}
|
|
5275
|
+
async function fetchStagedInMemory(remote, headers, request, fetchImpl) {
|
|
5276
|
+
const fetched = await fetchPackWithBoundaries(remote, headers, {
|
|
5277
|
+
wants: request.wants,
|
|
5278
|
+
haves: request.haves,
|
|
5279
|
+
advertisement: request.advertisement,
|
|
5280
|
+
depth: request.depth,
|
|
5281
|
+
shallow: request.shallow ?? [],
|
|
5282
|
+
observe: request.observe
|
|
5283
|
+
}, fetchImpl);
|
|
5284
|
+
return fetched ? memoryStagedPack(fetched) : null;
|
|
5285
|
+
}
|
|
5286
|
+
var CUSTODY_STAGED_BYTES_BUDGET;
|
|
5287
|
+
var init_custody_fetch_pool = __esm({
|
|
5288
|
+
"../adapter/custody_fetch_pool.ts"() {
|
|
5289
|
+
"use strict";
|
|
5290
|
+
init_custody_transport();
|
|
5291
|
+
CUSTODY_STAGED_BYTES_BUDGET = 256 * 1024 * 1024;
|
|
5292
|
+
}
|
|
5293
|
+
});
|
|
5294
|
+
|
|
5214
5295
|
// ../adapter/pack_import_steps.ts
|
|
5215
5296
|
var IMPORT_STEP_TARGET_MILLIS, IMPORT_STEP_FIRST_BYTES, IMPORT_STEP_MIN_BYTES, IMPORT_STEP_MAX_BYTES, ImportStepBudget, yieldToQueuedWork;
|
|
5216
5297
|
var init_pack_import_steps = __esm({
|
|
@@ -5690,17 +5771,27 @@ function gitCustodyDesk(kernel, fetchImpl = fetch, observe, phaseStarted, import
|
|
|
5690
5771
|
throw error;
|
|
5691
5772
|
}
|
|
5692
5773
|
};
|
|
5693
|
-
const
|
|
5694
|
-
|
|
5774
|
+
const applyTurn = (lanes) => lanes ? (work) => lanes.apply(work) : (work) => {
|
|
5775
|
+
try {
|
|
5776
|
+
return Promise.resolve(work());
|
|
5777
|
+
} catch (error) {
|
|
5778
|
+
return Promise.reject(error);
|
|
5779
|
+
}
|
|
5780
|
+
};
|
|
5781
|
+
const stagePack = (lanes, ledger, request) => lanes ? lanes.fetches.fetchPack(ledger.remote, ledger.headers ?? {}, request, fetchImpl) : fetchStagedInMemory(ledger.remote, ledger.headers ?? {}, request, fetchImpl);
|
|
5782
|
+
const listed = (lanes, work) => lanes ? lanes.fetches.run(work) : work();
|
|
5783
|
+
const acquireReference = async (workspace, ledger, remoteReference, localReference, have, acquisition, lanes) => {
|
|
5784
|
+
const refs = acquisition?.advertisement.refs ?? await listed(lanes, () => lsRefs(
|
|
5695
5785
|
ledger.remote,
|
|
5696
5786
|
ledger.headers ?? {},
|
|
5697
5787
|
{ service: "git-upload-pack", prefix: remoteReference },
|
|
5698
5788
|
fetchImpl
|
|
5699
|
-
);
|
|
5789
|
+
));
|
|
5700
5790
|
const head = refs[remoteReference];
|
|
5701
5791
|
if (!head) return void 0;
|
|
5792
|
+
const turn = applyTurn(lanes);
|
|
5702
5793
|
const isMain = localReference === branchRef("main");
|
|
5703
|
-
const liveHave = () => isMain ? resolveRef(workspace, localReference) : have;
|
|
5794
|
+
const liveHave = () => isMain ? resolveRef(workspace, localReference) : have();
|
|
5704
5795
|
const durableBaseOf = (live) => {
|
|
5705
5796
|
const remoteTrackingReference = receiptRef(ledger);
|
|
5706
5797
|
const trackedHead = resolveRef(workspace, remoteTrackingReference);
|
|
@@ -5711,42 +5802,43 @@ function gitCustodyDesk(kernel, fetchImpl = fetch, observe, phaseStarted, import
|
|
|
5711
5802
|
}
|
|
5712
5803
|
return true;
|
|
5713
5804
|
};
|
|
5714
|
-
|
|
5715
|
-
|
|
5716
|
-
|
|
5717
|
-
|
|
5718
|
-
const pack = await fetchPack(
|
|
5719
|
-
ledger.remote,
|
|
5720
|
-
ledger.headers ?? {},
|
|
5721
|
-
{ wants: [head], haves, advertisement: acquisition?.advertisement },
|
|
5722
|
-
fetchImpl
|
|
5723
|
-
);
|
|
5724
|
-
if (pack) {
|
|
5725
|
-
await importFetchedPack(
|
|
5726
|
-
workspace,
|
|
5727
|
-
pack,
|
|
5728
|
-
ledger.operatorCustody === true ? void 0 : head
|
|
5729
|
-
);
|
|
5730
|
-
}
|
|
5731
|
-
}
|
|
5732
|
-
local = liveHave();
|
|
5733
|
-
if (isMain && local === void 0) {
|
|
5734
|
-
await measured(workspace, "restore", () => restoreMain(workspace, head, ledger.operatorCustody === true));
|
|
5735
|
-
writeRef(workspace, receiptRef(ledger), head);
|
|
5736
|
-
} else if (isMain && head === local) {
|
|
5737
|
-
if (ledger.operatorCustody === true) {
|
|
5738
|
-
await measured(workspace, "restore", () => restoreMain(workspace, head, true));
|
|
5739
|
-
}
|
|
5740
|
-
if (resolveRef(workspace, receiptRef(ledger)) !== head) {
|
|
5805
|
+
const settle = async () => {
|
|
5806
|
+
const local = liveHave();
|
|
5807
|
+
if (isMain && local === void 0) {
|
|
5808
|
+
await measured(workspace, "restore", () => restoreMain(workspace, head, ledger.operatorCustody === true));
|
|
5741
5809
|
writeRef(workspace, receiptRef(ledger), head);
|
|
5810
|
+
} else if (isMain && head === local) {
|
|
5811
|
+
if (ledger.operatorCustody === true) {
|
|
5812
|
+
await measured(workspace, "restore", () => restoreMain(workspace, head, true));
|
|
5813
|
+
}
|
|
5814
|
+
if (resolveRef(workspace, receiptRef(ledger)) !== head) {
|
|
5815
|
+
writeRef(workspace, receiptRef(ledger), head);
|
|
5816
|
+
}
|
|
5817
|
+
} else if (isMain) {
|
|
5818
|
+
if (durableBaseOf(local)) return head;
|
|
5819
|
+
throw new Error(`custody remote advanced for '${workspace}': local ${local}, observed ${head}; peer convergence is required before changing main`);
|
|
5820
|
+
} else {
|
|
5821
|
+
writeRef(workspace, localReference, head);
|
|
5742
5822
|
}
|
|
5743
|
-
|
|
5744
|
-
|
|
5745
|
-
|
|
5746
|
-
|
|
5747
|
-
|
|
5823
|
+
return head;
|
|
5824
|
+
};
|
|
5825
|
+
const decided = await turn(async () => {
|
|
5826
|
+
const local = liveHave();
|
|
5827
|
+
if (isMain && local !== void 0 && head !== local && durableBaseOf(local)) return { head };
|
|
5828
|
+
const haves = knownHeads(workspace);
|
|
5829
|
+
if (head !== local && !haves.includes(head) && !acquisition?.imported.has(head)) return { haves };
|
|
5830
|
+
return { head: await settle() };
|
|
5831
|
+
});
|
|
5832
|
+
if ("head" in decided) return decided.head;
|
|
5833
|
+
const staged = await stagePack(lanes, ledger, { wants: [head], haves: decided.haves, advertisement: acquisition?.advertisement });
|
|
5834
|
+
try {
|
|
5835
|
+
return await turn(async () => {
|
|
5836
|
+
if (staged) await importFetchedPack(workspace, staged.pack(), ledger.operatorCustody === true ? void 0 : head);
|
|
5837
|
+
return settle();
|
|
5838
|
+
});
|
|
5839
|
+
} finally {
|
|
5840
|
+
staged?.discard();
|
|
5748
5841
|
}
|
|
5749
|
-
return head;
|
|
5750
5842
|
};
|
|
5751
5843
|
const packDeltaOrFull = (workspace, head, base) => {
|
|
5752
5844
|
try {
|
|
@@ -5766,13 +5858,16 @@ function gitCustodyDesk(kernel, fetchImpl = fetch, observe, phaseStarted, import
|
|
|
5766
5858
|
importPack: applyPack,
|
|
5767
5859
|
pack: packDelta
|
|
5768
5860
|
}, fetchImpl);
|
|
5769
|
-
const acquireMain = (workspace, ledger) => acquiring(workspace, ledger, "main", () => measured(workspace, "acquire", async () => {
|
|
5861
|
+
const acquireMain = (workspace, ledger, lanes) => acquiring(workspace, ledger, "main", () => measured(workspace, "acquire", async () => {
|
|
5770
5862
|
const reference = branchRef("main");
|
|
5771
|
-
|
|
5772
|
-
const local =
|
|
5773
|
-
|
|
5863
|
+
const turn = applyTurn(lanes);
|
|
5864
|
+
const local = await turn(async () => {
|
|
5865
|
+
await kernel.writeSkeleton(workspace, "main");
|
|
5866
|
+
return resolveRef(workspace, reference);
|
|
5867
|
+
});
|
|
5868
|
+
const advertisement = await listed(lanes, () => measured(workspace, "advertise", () => discoverRefs(ledger.remote, ledger.headers ?? {}, {
|
|
5774
5869
|
signal: ledger.signal ?? AbortSignal.timeout(COLD_OPEN_LISTING_MILLIS)
|
|
5775
|
-
}, fetchImpl));
|
|
5870
|
+
}, fetchImpl)));
|
|
5776
5871
|
observedRemoteRefs.set(custodyKey(workspace, ledger), new Map(Object.entries(advertisement.refs)));
|
|
5777
5872
|
const delivered = new Map(Object.entries(advertisement.refs).filter(([ref]) => isCorrespondenceRef(ref)));
|
|
5778
5873
|
const imported = /* @__PURE__ */ new Set();
|
|
@@ -5788,62 +5883,74 @@ function gitCustodyDesk(kernel, fetchImpl = fetch, observe, phaseStarted, import
|
|
|
5788
5883
|
const wants2 = [...new Set(references.map((ref) => advertisement.refs[ref]))].filter((oid) => !haves2.includes(oid));
|
|
5789
5884
|
if (wants2.length) {
|
|
5790
5885
|
const detail = { references, wants: wants2, haves: haves2 };
|
|
5791
|
-
const
|
|
5886
|
+
const staged = await measured(workspace, "fetch", () => stagePack(lanes, ledger, {
|
|
5792
5887
|
wants: wants2,
|
|
5793
5888
|
haves: haves2,
|
|
5794
5889
|
advertisement,
|
|
5795
5890
|
...ledger.operatorCustody && workspace !== ANCHOR_WORKSPACE ? { depth: 1 } : {},
|
|
5796
5891
|
...observe ? { observe: (timing) => Object.assign(detail, timing) } : {}
|
|
5797
|
-
}
|
|
5798
|
-
|
|
5799
|
-
|
|
5800
|
-
|
|
5801
|
-
|
|
5802
|
-
|
|
5803
|
-
|
|
5804
|
-
|
|
5805
|
-
|
|
5892
|
+
}), detail);
|
|
5893
|
+
try {
|
|
5894
|
+
if (staged) {
|
|
5895
|
+
await turn(() => measured(
|
|
5896
|
+
workspace,
|
|
5897
|
+
"import",
|
|
5898
|
+
() => importFetchedPack(workspace, staged.pack(), void 0, staged),
|
|
5899
|
+
{ references, wants: wants2, haves: haves2, bytes: staged.bytes }
|
|
5900
|
+
));
|
|
5901
|
+
for (const oid of wants2) imported.add(oid);
|
|
5902
|
+
}
|
|
5903
|
+
} finally {
|
|
5904
|
+
staged?.discard();
|
|
5806
5905
|
}
|
|
5807
5906
|
}
|
|
5808
5907
|
for (const oid of haves2) imported.add(oid);
|
|
5809
5908
|
}
|
|
5810
|
-
const head = await acquireReference(workspace, ledger, reference, reference, local, acquisition);
|
|
5909
|
+
const head = await acquireReference(workspace, ledger, reference, reference, () => local, acquisition, lanes);
|
|
5811
5910
|
if (head) sealedMain.set(custodyKey(workspace, ledger), head);
|
|
5812
5911
|
const haves = knownHeads(workspace);
|
|
5813
5912
|
const wants = [...new Set([...delivered.values()].filter((oid) => !haves.includes(oid) && !imported.has(oid)))];
|
|
5814
5913
|
if (wants.length > 0) {
|
|
5815
|
-
const
|
|
5816
|
-
|
|
5817
|
-
|
|
5818
|
-
|
|
5819
|
-
|
|
5914
|
+
const staged = await stagePack(lanes, ledger, { wants, haves, advertisement });
|
|
5915
|
+
try {
|
|
5916
|
+
if (staged) await turn(() => importFetchedPack(workspace, staged.pack()));
|
|
5917
|
+
} finally {
|
|
5918
|
+
staged?.discard();
|
|
5919
|
+
}
|
|
5820
5920
|
}
|
|
5921
|
+
await turn(() => {
|
|
5922
|
+
for (const [reference2, oid] of delivered) {
|
|
5923
|
+
if (resolveRef(workspace, reference2) === void 0) writeRef(workspace, reference2, oid);
|
|
5924
|
+
}
|
|
5925
|
+
});
|
|
5821
5926
|
if (ledger.localCustody) {
|
|
5822
5927
|
await acquireReference(
|
|
5823
5928
|
workspace,
|
|
5824
5929
|
ledger,
|
|
5825
5930
|
"refs/remotes/nomos/main",
|
|
5826
5931
|
"refs/remotes/nomos/main",
|
|
5827
|
-
resolveRef(workspace, "refs/remotes/nomos/main"),
|
|
5828
|
-
acquisition
|
|
5932
|
+
() => resolveRef(workspace, "refs/remotes/nomos/main"),
|
|
5933
|
+
acquisition,
|
|
5934
|
+
lanes
|
|
5829
5935
|
);
|
|
5830
5936
|
}
|
|
5831
|
-
await placement.acquire(workspace, ledger, acquisition);
|
|
5937
|
+
await turn(() => placement.acquire(workspace, ledger, acquisition));
|
|
5832
5938
|
if (ledger.localCustody) {
|
|
5833
5939
|
await acquireReference(
|
|
5834
5940
|
workspace,
|
|
5835
5941
|
ledger,
|
|
5836
5942
|
"refs/remotes/nomos/placement",
|
|
5837
5943
|
"refs/remotes/nomos/placement",
|
|
5838
|
-
resolveRef(workspace, "refs/remotes/nomos/placement"),
|
|
5839
|
-
acquisition
|
|
5944
|
+
() => resolveRef(workspace, "refs/remotes/nomos/placement"),
|
|
5945
|
+
acquisition,
|
|
5946
|
+
lanes
|
|
5840
5947
|
);
|
|
5841
5948
|
}
|
|
5842
5949
|
return head ? { head } : {};
|
|
5843
5950
|
}));
|
|
5844
5951
|
const desk = {
|
|
5845
|
-
async acquireMain(workspace, ledger) {
|
|
5846
|
-
const acquired = await acquireMain(workspace, ledger);
|
|
5952
|
+
async acquireMain(workspace, ledger, lanes) {
|
|
5953
|
+
const acquired = await acquireMain(workspace, ledger, lanes);
|
|
5847
5954
|
if (workspace === ANCHOR_WORKSPACE && ledger.operatorCustody === true) {
|
|
5848
5955
|
for (let slice = 0; slice < ANCHOR_DEEPEN_SLICES; slice += 1) {
|
|
5849
5956
|
if (!knownShallowBoundary(workspace)?.size) break;
|
|
@@ -5941,8 +6048,7 @@ function gitCustodyDesk(kernel, fetchImpl = fetch, observe, phaseStarted, import
|
|
|
5941
6048
|
const fullReference = branchRef(reference);
|
|
5942
6049
|
return acquiring(workspace, ledger, fullReference, async () => {
|
|
5943
6050
|
await kernel.writeSkeleton(workspace, "main");
|
|
5944
|
-
|
|
5945
|
-
await acquireReference(workspace, ledger, fullReference, fullReference, local);
|
|
6051
|
+
await acquireReference(workspace, ledger, fullReference, fullReference, () => resolveRef(workspace, fullReference));
|
|
5946
6052
|
});
|
|
5947
6053
|
},
|
|
5948
6054
|
seal(workspace, ledger, retention) {
|
|
@@ -6171,6 +6277,7 @@ var init_git_custody_desk = __esm({
|
|
|
6171
6277
|
"use strict";
|
|
6172
6278
|
init_kernel_pb();
|
|
6173
6279
|
init_custody_transport();
|
|
6280
|
+
init_custody_fetch_pool();
|
|
6174
6281
|
init_pack_import_steps();
|
|
6175
6282
|
init_residency_desk_pb();
|
|
6176
6283
|
init_kernel_failure();
|
|
@@ -8022,6 +8129,7 @@ var init_kernel_residency = __esm({
|
|
|
8022
8129
|
"use strict";
|
|
8023
8130
|
KernelResidency = class {
|
|
8024
8131
|
#open = /* @__PURE__ */ new Set();
|
|
8132
|
+
#trap;
|
|
8025
8133
|
workspaces() {
|
|
8026
8134
|
return [...this.#open];
|
|
8027
8135
|
}
|
|
@@ -8036,9 +8144,16 @@ var init_kernel_residency = __esm({
|
|
|
8036
8144
|
released(workspace) {
|
|
8037
8145
|
this.#open.delete(workspace.trim());
|
|
8038
8146
|
}
|
|
8039
|
-
/** The machine trapped: it is discarded with every workspace it held.
|
|
8040
|
-
|
|
8147
|
+
/** The machine trapped: it is discarded with every workspace it held. `reason` is the bounded
|
|
8148
|
+
* trap text the host reports when it discards the machine; the first trap is the one kept. */
|
|
8149
|
+
trapped(reason) {
|
|
8041
8150
|
this.#open.clear();
|
|
8151
|
+
this.#trap ??= reason.slice(0, 2e3);
|
|
8152
|
+
}
|
|
8153
|
+
/** Why this machine trapped, once it has; undefined while it has not. Never cleared: nothing
|
|
8154
|
+
* revives a trapped machine, the host replaces it (and this record with it). */
|
|
8155
|
+
get trap() {
|
|
8156
|
+
return this.#trap;
|
|
8042
8157
|
}
|
|
8043
8158
|
/** Before the kernel sees a request: a release leaves first, so a failed release cannot keep it. */
|
|
8044
8159
|
before(request) {
|
|
@@ -8049,7 +8164,7 @@ var init_kernel_residency = __esm({
|
|
|
8049
8164
|
}
|
|
8050
8165
|
after(request, response) {
|
|
8051
8166
|
if (response.outcome.case === "failure" && response.outcome.value.code === "NMS-KERNEL-TRAP") {
|
|
8052
|
-
this.trapped();
|
|
8167
|
+
this.trapped(`${response.outcome.value.code}: ${response.outcome.value.message}`);
|
|
8053
8168
|
return;
|
|
8054
8169
|
}
|
|
8055
8170
|
const operation = request.operation;
|
|
@@ -8853,6 +8968,15 @@ var init_kernel_port = __esm({
|
|
|
8853
8968
|
residentWorkspaces() {
|
|
8854
8969
|
return this.#residency.workspaces();
|
|
8855
8970
|
}
|
|
8971
|
+
/**
|
|
8972
|
+
* Why the kernel behind this port trapped, once it has (CAP-965); undefined while it has not.
|
|
8973
|
+
* Every kernel call passes [#call], which records a trap however it surfaced: thrown, answered
|
|
8974
|
+
* as an NMS-KERNEL-TRAP failure, or caught and answered as typed paper by a desk above. The host
|
|
8975
|
+
* reads this after every request and discards the machine; reading it never enters the kernel.
|
|
8976
|
+
*/
|
|
8977
|
+
kernelTrap() {
|
|
8978
|
+
return this.#residency.trap;
|
|
8979
|
+
}
|
|
8856
8980
|
/**
|
|
8857
8981
|
* Answer only the peer-local inventory question.
|
|
8858
8982
|
*
|
|
@@ -9958,14 +10082,13 @@ var init_kernel_port = __esm({
|
|
|
9958
10082
|
);
|
|
9959
10083
|
} catch (error) {
|
|
9960
10084
|
this.#attached?.lost();
|
|
9961
|
-
|
|
9962
|
-
this.#residency.trapped();
|
|
9963
|
-
}
|
|
10085
|
+
const trapped = error instanceof Error && /NMS-KERNEL-TRAP|\btrap\b|unreachable|out of bounds/i.test(error.message);
|
|
9964
10086
|
if (error instanceof Error && /\btrap\b|unreachable|out of bounds/i.test(error.message)) {
|
|
9965
10087
|
const top = request.operation.case ?? "empty";
|
|
9966
10088
|
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" : "";
|
|
9967
10089
|
error.message = `kernel-operation=${top}/${nested}: ${error.message}`;
|
|
9968
10090
|
}
|
|
10091
|
+
if (trapped) this.#residency.trapped(error.message);
|
|
9969
10092
|
const pending = readIndexPendingAnswer(request, error instanceof Error ? error.message : String(error));
|
|
9970
10093
|
if (pending !== void 0) return pending;
|
|
9971
10094
|
rethrowTypedKernelFailure(error);
|
|
@@ -18192,6 +18315,8 @@ function reduceReplicaFollow(state, event, policy) {
|
|
|
18192
18315
|
};
|
|
18193
18316
|
}
|
|
18194
18317
|
return due(event.nowUnixMillis);
|
|
18318
|
+
case ReplicaFollowEventKind.NetworkRestored:
|
|
18319
|
+
return state.case === ReplicaFollowPhase.Offline || state.case === ReplicaFollowPhase.Backoff && !state.refusal ? due(event.nowUnixMillis) : { state, effects: [] };
|
|
18195
18320
|
case ReplicaFollowEventKind.Reconnected:
|
|
18196
18321
|
if (state.case === ReplicaFollowPhase.Backoff && state.refusal?.blocked) {
|
|
18197
18322
|
return refusedEvent(state, state.refusal, event.nowUnixMillis);
|
|
@@ -18451,6 +18576,7 @@ var init_replica_follow_state = __esm({
|
|
|
18451
18576
|
CredentialReplaced: "credential_replaced",
|
|
18452
18577
|
Failed: "failed",
|
|
18453
18578
|
Reconnected: "reconnected",
|
|
18579
|
+
NetworkRestored: "network_restored",
|
|
18454
18580
|
DependencyAdvanced: "dependency_advanced",
|
|
18455
18581
|
RebornRemotely: "reborn_remotely",
|
|
18456
18582
|
LocalCopyDropAuthorized: "local_copy_drop_authorized",
|
|
@@ -18807,6 +18933,20 @@ var init_replica_follow_controller = __esm({
|
|
|
18807
18933
|
reconnected(workspace, remoteAdvanced = false) {
|
|
18808
18934
|
return this.#event(workspace, ReplicaFollowEventKind.Reconnected, remoteAdvanced);
|
|
18809
18935
|
}
|
|
18936
|
+
networkRestored() {
|
|
18937
|
+
if (!this.#recovered) return [];
|
|
18938
|
+
const woken = [];
|
|
18939
|
+
for (const follow of this.#desk.all()) {
|
|
18940
|
+
this.#desk.transition(follow.spec.workspace, {
|
|
18941
|
+
case: ReplicaFollowEventKind.NetworkRestored,
|
|
18942
|
+
nowUnixMillis: this.#now()
|
|
18943
|
+
});
|
|
18944
|
+
if (this.#desk.get(follow.spec.workspace)?.state.case === ReplicaFollowPhase.Due) {
|
|
18945
|
+
woken.push(follow.spec.workspace);
|
|
18946
|
+
}
|
|
18947
|
+
}
|
|
18948
|
+
return woken;
|
|
18949
|
+
}
|
|
18810
18950
|
/** Another workspace advanced or settled; every held dependency gets one retry. */
|
|
18811
18951
|
dependencyAdvanced(except) {
|
|
18812
18952
|
if (!this.#recovered) return [];
|
|
@@ -20009,7 +20149,7 @@ import { create as create48 } from "@bufbuild/protobuf";
|
|
|
20009
20149
|
function outcomesDigest(oids) {
|
|
20010
20150
|
return sha256Hex(new TextEncoder().encode([...new Set(oids)].sort().join("\n")));
|
|
20011
20151
|
}
|
|
20012
|
-
var CHECKPOINT_CHUNK_BYTES, CHECKPOINT_WINDOW_CHUNKS, MAX_CHECKPOINT_WINDOW_CHUNKS, CHECKPOINT_STALE_OFFERS, MAX_STREAM_BATCH_OFFERS, MAX_HISTORY_SLICE, MAX_HELD_SLICES, CHECKPOINT_CACHE_BYTES, MAX_CHECKPOINT_OUTCOMES, PLACEMENT_REF2, LEVEL_BATCH2, MAX_CHECKPOINT_VARIANTS, NO_TREES2, footprint, hex2, frame, refusal, OFF_MAIN_AFTER_MILLIS, MAX_UNFOUND_HEADS, LiveStreamServer;
|
|
20152
|
+
var CHECKPOINT_CHUNK_BYTES, CHECKPOINT_WINDOW_CHUNKS, MAX_CHECKPOINT_WINDOW_CHUNKS, CHECKPOINT_STALE_OFFERS, MAX_STREAM_BATCH_OFFERS, LEVEL_PACK_BYTES, MAX_HISTORY_SLICE, MAX_HELD_SLICES, CHECKPOINT_CACHE_BYTES, MAX_CHECKPOINT_OUTCOMES, PLACEMENT_REF2, LEVEL_BATCH2, MAX_CHECKPOINT_VARIANTS, NO_TREES2, footprint, hex2, frame, refusal, OFF_MAIN_AFTER_MILLIS, MAX_UNFOUND_HEADS, LiveStreamServer;
|
|
20013
20153
|
var init_live_stream_server = __esm({
|
|
20014
20154
|
"../peer-office/src/runtime/live_stream_server.ts"() {
|
|
20015
20155
|
"use strict";
|
|
@@ -20023,6 +20163,7 @@ var init_live_stream_server = __esm({
|
|
|
20023
20163
|
MAX_CHECKPOINT_WINDOW_CHUNKS = 32;
|
|
20024
20164
|
CHECKPOINT_STALE_OFFERS = 64;
|
|
20025
20165
|
MAX_STREAM_BATCH_OFFERS = 256;
|
|
20166
|
+
LEVEL_PACK_BYTES = 4 * 1024 * 1024 - 16 * 1024;
|
|
20026
20167
|
MAX_HISTORY_SLICE = 256;
|
|
20027
20168
|
MAX_HELD_SLICES = 4;
|
|
20028
20169
|
CHECKPOINT_CACHE_BYTES = 1024 * 1024 * 1024;
|
|
@@ -20154,7 +20295,7 @@ var init_live_stream_server = __esm({
|
|
|
20154
20295
|
)];
|
|
20155
20296
|
}
|
|
20156
20297
|
const maxOffers = Math.min(Math.max(1, frontier.maxOffers || MAX_STREAM_BATCH_OFFERS), MAX_STREAM_BATCH_OFFERS);
|
|
20157
|
-
return [...answer, this.#batch(workspace, requestId, head, main, maxOffers)];
|
|
20298
|
+
return [...answer, ...this.#batch(workspace, requestId, head, main, maxOffers, remountAsk(), behind ?? 0n)];
|
|
20158
20299
|
}
|
|
20159
20300
|
/** Whether this peer's custody of the workspace is shallow. Unknown counts as shallow: it keeps the
|
|
20160
20301
|
* existing wait for history rather than calling a head off main. */
|
|
@@ -20172,21 +20313,44 @@ var init_live_stream_server = __esm({
|
|
|
20172
20313
|
* bounded walk and one bounded pack (O(batch)). The copy's kernel adopts exactly these commits on
|
|
20173
20314
|
* the same parent, judging each offer, so its next head is one this peer holds.
|
|
20174
20315
|
*/
|
|
20175
|
-
#batch(workspace, requestId, base, main, maxOffers) {
|
|
20316
|
+
#batch(workspace, requestId, base, main, maxOffers, remountAsk, behind) {
|
|
20176
20317
|
const mount = workspaceMount(workspace);
|
|
20177
|
-
|
|
20178
|
-
|
|
20179
|
-
|
|
20180
|
-
|
|
20181
|
-
|
|
20182
|
-
|
|
20183
|
-
|
|
20184
|
-
|
|
20185
|
-
|
|
20186
|
-
|
|
20187
|
-
|
|
20318
|
+
let limit = maxOffers;
|
|
20319
|
+
for (; ; ) {
|
|
20320
|
+
const intents = this.#kernel.transportIntentsAbove(mount, requestId, BigInt(limit), base, main, true).intents;
|
|
20321
|
+
const batchHead = intents.at(-1)?.oid ?? main;
|
|
20322
|
+
const pack = this.#kernel.packDelta(mount, requestId, batchHead, base);
|
|
20323
|
+
if (pack.byteLength <= LEVEL_PACK_BYTES) {
|
|
20324
|
+
return [frame({ case: "pack", value: create48(LivePackSchema, {
|
|
20325
|
+
requestId: `${LEVEL_BATCH2}${base}`,
|
|
20326
|
+
reference: "refs/heads/main",
|
|
20327
|
+
head: batchHead,
|
|
20328
|
+
base,
|
|
20329
|
+
pack,
|
|
20330
|
+
offers: intents.length,
|
|
20331
|
+
...this.#sealed(workspace) ? { sealed: this.#sealed(workspace) } : {}
|
|
20332
|
+
}) })];
|
|
20333
|
+
}
|
|
20334
|
+
if (intents.length > 1) {
|
|
20335
|
+
limit = Math.floor(intents.length / 2);
|
|
20336
|
+
continue;
|
|
20337
|
+
}
|
|
20338
|
+
const sealed = this.#sealedOnMain(workspace, requestId, main);
|
|
20339
|
+
const above = sealed !== void 0 && sealed !== batchHead && this.#reaches(mount, requestId, batchHead, sealed);
|
|
20340
|
+
return this.#checkpoint(workspace, requestId, remountAsk, behind, above ? sealed : main);
|
|
20341
|
+
}
|
|
20188
20342
|
}
|
|
20189
|
-
|
|
20343
|
+
/** Whether `head` is on the walk from `above` down this peer's main, i.e. `above` is at or past it. */
|
|
20344
|
+
#reaches(mount, requestId, head, above) {
|
|
20345
|
+
try {
|
|
20346
|
+
return this.#kernel.historySummary(mount, requestId, head, above).reachedBase;
|
|
20347
|
+
} catch {
|
|
20348
|
+
return false;
|
|
20349
|
+
}
|
|
20350
|
+
}
|
|
20351
|
+
/** `atHead`: the checkpoint is taken at exactly that head (a level batch's fallback, above an offer
|
|
20352
|
+
* no frame can carry), never the newest held one below it. */
|
|
20353
|
+
#checkpoint(workspace, requestId, request, remountBehind, atHead) {
|
|
20190
20354
|
const mount = workspaceMount(workspace);
|
|
20191
20355
|
const main = this.#kernel.head(mount, requestId);
|
|
20192
20356
|
if (!main) return [refusal("", "nomos.stream.opening", "the workspace has no main on this peer yet", 250)];
|
|
@@ -20201,7 +20365,11 @@ var init_live_stream_server = __esm({
|
|
|
20201
20365
|
}
|
|
20202
20366
|
}
|
|
20203
20367
|
const resumed = checkpoint !== void 0;
|
|
20204
|
-
if (!checkpoint)
|
|
20368
|
+
if (!checkpoint) {
|
|
20369
|
+
const newest = this.#checkpoints.get(workspace)?.at(-1);
|
|
20370
|
+
const whole = atHead === void 0 ? this.#current(workspace, requestId, main) : newest?.head === atHead ? newest : this.#build(workspace, requestId, atHead);
|
|
20371
|
+
checkpoint = this.#thin(whole, trees);
|
|
20372
|
+
}
|
|
20205
20373
|
checkpoint.servedAt = this.#now();
|
|
20206
20374
|
const sealed = this.#sealed(workspace);
|
|
20207
20375
|
const offset = resumed ? Number(request.offset) : 0;
|
|
@@ -20797,15 +20965,15 @@ var init_live_correspondence_desk = __esm({
|
|
|
20797
20965
|
if (this.writeBurst && !link.publisher) link.owedSince ??= this.clock.monotonicNanoseconds();
|
|
20798
20966
|
}
|
|
20799
20967
|
/** Local commits the custodian has not yet admitted: those not yet offered, and those offered
|
|
20800
|
-
* whose admission has not come back.
|
|
20801
|
-
*
|
|
20968
|
+
* whose admission has not come back. Offline copies are counted from their durable tracked
|
|
20969
|
+
* base, including new offline edits. Undefined when custody/history cannot be counted.
|
|
20802
20970
|
*
|
|
20803
20971
|
* Counting asks the kernel to walk history twice. Every follow report asks, and a save reports
|
|
20804
20972
|
* on its own turn, so during a local-write burst the last count is served instead and one fresh
|
|
20805
20973
|
* report follows when the burst lets it (writes quiet, or the staleness cap). */
|
|
20806
20974
|
progress(workspace) {
|
|
20807
20975
|
const link = this.#links.get(workspace);
|
|
20808
|
-
if (
|
|
20976
|
+
if (link?.publisher) {
|
|
20809
20977
|
this.#progress.delete(workspace);
|
|
20810
20978
|
return void 0;
|
|
20811
20979
|
}
|
|
@@ -20827,14 +20995,14 @@ var init_live_correspondence_desk = __esm({
|
|
|
20827
20995
|
}
|
|
20828
20996
|
#count(link, mount) {
|
|
20829
20997
|
const head = this.kernel.head(mount, ++this.#requestId);
|
|
20830
|
-
const acknowledged = this.#currentCursor(link, mount, head)?.local ?? this.#heldPeerMain(link, mount, head) ?? this.kernel.resolveRef(mount, ++this.#requestId, TRACKED_MAIN2);
|
|
20998
|
+
const acknowledged = (link ? this.#currentCursor(link, mount, head)?.local ?? this.#heldPeerMain(link, mount, head) : void 0) ?? this.kernel.resolveRef(mount, ++this.#requestId, TRACKED_MAIN2);
|
|
20831
20999
|
if (!head || !acknowledged) return void 0;
|
|
20832
21000
|
const count = (base, tip) => {
|
|
20833
21001
|
if (base === tip) return 0;
|
|
20834
21002
|
const summary = this.#chain(mount, base, tip);
|
|
20835
21003
|
return summary?.reachedBase ? Number(summary.commitCount) : void 0;
|
|
20836
21004
|
};
|
|
20837
|
-
const sent = link.stream?.unanswered.length ? link.stream.sent : void 0;
|
|
21005
|
+
const sent = link?.state === "open" && link.stream?.unanswered.length ? link.stream.sent : void 0;
|
|
20838
21006
|
const unacknowledged = sent ? count(acknowledged, sent) : 0;
|
|
20839
21007
|
const unsent = count(sent ?? acknowledged, head);
|
|
20840
21008
|
return unacknowledged === void 0 || unsent === void 0 ? void 0 : { unsent, unacknowledged };
|
|
@@ -20935,6 +21103,18 @@ var init_live_correspondence_desk = __esm({
|
|
|
20935
21103
|
operation
|
|
20936
21104
|
}) });
|
|
20937
21105
|
}
|
|
21106
|
+
/** A physical offline-to-online edge invalidates transport retry deadlines,
|
|
21107
|
+
* not custody evidence. Open links and their unacknowledged work stay intact. */
|
|
21108
|
+
networkRestored() {
|
|
21109
|
+
let retried = 0;
|
|
21110
|
+
for (const link of this.#links.values()) {
|
|
21111
|
+
if (link.state === "open") continue;
|
|
21112
|
+
if (link.state === "opening") this.#closeByRuntime(link, "network restored during open");
|
|
21113
|
+
this.#open(link);
|
|
21114
|
+
retried++;
|
|
21115
|
+
}
|
|
21116
|
+
return retried;
|
|
21117
|
+
}
|
|
20938
21118
|
#open(link) {
|
|
20939
21119
|
link.id = `live:${++this.#sequence}:${link.binding.workspace}`;
|
|
20940
21120
|
link.state = "opening";
|
|
@@ -25543,6 +25723,9 @@ var init_replica_follow_lane = __esm({
|
|
|
25543
25723
|
const delay = this.#controller.reconnected(workspace);
|
|
25544
25724
|
if (delay !== void 0) this.#scheduleAt(workspace, this.#now() + delay);
|
|
25545
25725
|
}
|
|
25726
|
+
networkRestored() {
|
|
25727
|
+
for (const workspace of this.#controller.networkRestored()) this.schedule(workspace);
|
|
25728
|
+
}
|
|
25546
25729
|
/** The upstream announced a new frontier: news even to a follow the kernel refused. */
|
|
25547
25730
|
remoteAdvanced(workspace) {
|
|
25548
25731
|
const delay = this.#controller.reconnected(workspace, true);
|
|
@@ -25928,6 +26111,9 @@ var init_correspondence_desk = __esm({
|
|
|
25928
26111
|
#lastClosure = /* @__PURE__ */ new Map();
|
|
25929
26112
|
/** The last follow summary published, so an unchanged summary is not re-sent. */
|
|
25930
26113
|
#followsReported = "";
|
|
26114
|
+
// Scheduler probes may report phase/time changes, but are not new custody
|
|
26115
|
+
// evidence. Reuse counts from the last actual observation on those probes.
|
|
26116
|
+
#reportedStreamProgress = /* @__PURE__ */ new Map();
|
|
25931
26117
|
/** Workspaces whose custodian is opening them from verified custody, and since when (CAP-769). */
|
|
25932
26118
|
#warming = new CustodianWarmingLedger();
|
|
25933
26119
|
/** One-use handoff from recovery to its scheduled selector, never a durable inventory cache. */
|
|
@@ -26283,6 +26469,10 @@ var init_correspondence_desk = __esm({
|
|
|
26283
26469
|
this.#onSyncCompleted?.(binding.session, event);
|
|
26284
26470
|
}
|
|
26285
26471
|
}
|
|
26472
|
+
networkRestored() {
|
|
26473
|
+
this.#followLane.networkRestored();
|
|
26474
|
+
this.reportFollows();
|
|
26475
|
+
}
|
|
26286
26476
|
/** The live link to a followed workspace's upstream opened or reopened. */
|
|
26287
26477
|
replicaLinkOpened(workspace) {
|
|
26288
26478
|
this.#followLane.reconnected(workspace);
|
|
@@ -26316,13 +26506,17 @@ var init_correspondence_desk = __esm({
|
|
|
26316
26506
|
/** The live stream's count of local commits not yet offered and not yet admitted, per workspace. */
|
|
26317
26507
|
streamProgress;
|
|
26318
26508
|
/** Publish, application-wide, how many follows this peer keeps up with and how many are in sync. */
|
|
26319
|
-
reportFollows(force = false) {
|
|
26509
|
+
reportFollows(force = false, refreshStreamProgress = true) {
|
|
26320
26510
|
let workspaces;
|
|
26321
26511
|
try {
|
|
26322
26512
|
workspaces = this.#follows.knownWorkspaces();
|
|
26323
26513
|
} catch {
|
|
26324
26514
|
return;
|
|
26325
26515
|
}
|
|
26516
|
+
const followed = new Set(workspaces);
|
|
26517
|
+
for (const workspace of this.#reportedStreamProgress.keys()) {
|
|
26518
|
+
if (!followed.has(workspace)) this.#reportedStreamProgress.delete(workspace);
|
|
26519
|
+
}
|
|
26326
26520
|
let settled = 0;
|
|
26327
26521
|
let live = 0;
|
|
26328
26522
|
const now2 = this.#nowMillis();
|
|
@@ -26352,7 +26546,10 @@ var init_correspondence_desk = __esm({
|
|
|
26352
26546
|
const dueAt2 = state.case === ReplicaFollowPhase.Due || state.case === ReplicaFollowPhase.ReplacingLocal ? state.dueAtUnixMillis : void 0;
|
|
26353
26547
|
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;
|
|
26354
26548
|
const activeEffect = state.case === ReplicaFollowPhase.Running ? this.#activeSyncEffect(workspace) : void 0;
|
|
26355
|
-
|
|
26549
|
+
if (refreshStreamProgress || force || !this.#reportedStreamProgress.has(workspace)) {
|
|
26550
|
+
this.#reportedStreamProgress.set(workspace, this.streamProgress?.(workspace));
|
|
26551
|
+
}
|
|
26552
|
+
const stream = this.#reportedStreamProgress.get(workspace);
|
|
26356
26553
|
const custodianWarming = this.#warmingPosture(workspace, state, now2);
|
|
26357
26554
|
return [create65(FollowObservationSchema, {
|
|
26358
26555
|
workspace,
|
|
@@ -26487,7 +26684,7 @@ var init_correspondence_desk = __esm({
|
|
|
26487
26684
|
[...this.#syncWorkspaces.values()].flatMap((active) => [...active.workspaces])
|
|
26488
26685
|
);
|
|
26489
26686
|
const followCandidates = this.#followLane.candidates(activeSyncWorkspaces, excludedWorkspaces);
|
|
26490
|
-
this.reportFollows();
|
|
26687
|
+
this.reportFollows(false, false);
|
|
26491
26688
|
const due2 = [
|
|
26492
26689
|
...followCandidates,
|
|
26493
26690
|
...[...this.#outboxDueAt.entries()].map(([workspace2, at]) => ({
|
|
@@ -29801,7 +29998,7 @@ var init_peer_office = __esm({
|
|
|
29801
29998
|
const yieldedRequest = resumed ?? request;
|
|
29802
29999
|
const continued = yieldedRequest.command.case === "continueCorrespondence" ? yieldedRequest.command.value.workId : void 0;
|
|
29803
30000
|
const background = continued === void 0 ? this.#backgroundPapers.has(yieldedRequest.requestId) : this.#backgroundWork.has(continued);
|
|
29804
|
-
const foreground = !background && (continued === void 0 ? yieldedRequest.command.case
|
|
30001
|
+
const foreground = !background && (continued === void 0 ? !["socketReceipt", "networkRestored", "listWorkspaces"].includes(yieldedRequest.command.case ?? "") : this.#foregroundWork.delete(continued));
|
|
29805
30002
|
if (background) {
|
|
29806
30003
|
const held = this.#yieldBackground(yieldedRequest, continued);
|
|
29807
30004
|
if (held) return { responseProtobuf: toBinary27(RuntimeResponseSchema, held) };
|
|
@@ -30006,6 +30203,14 @@ var init_peer_office = __esm({
|
|
|
30006
30203
|
let pendingWorkId;
|
|
30007
30204
|
let pendingEffectId;
|
|
30008
30205
|
try {
|
|
30206
|
+
if (request.command.case === "networkRestored") {
|
|
30207
|
+
const linksRetried = this.#live.networkRestored();
|
|
30208
|
+
this.#correspondence.networkRestored();
|
|
30209
|
+
return this.#response(request, {
|
|
30210
|
+
case: "networkRestored",
|
|
30211
|
+
value: create76(NetworkRestoredSchema, { linksRetried })
|
|
30212
|
+
});
|
|
30213
|
+
}
|
|
30009
30214
|
if (request.command.case === "socketReceipt") {
|
|
30010
30215
|
const rung = /* @__PURE__ */ new Set();
|
|
30011
30216
|
this.#rungThisReceipt = rung;
|
|
@@ -30115,6 +30320,7 @@ var init_peer_office = __esm({
|
|
|
30115
30320
|
}
|
|
30116
30321
|
}
|
|
30117
30322
|
switch (request.command.case) {
|
|
30323
|
+
case "networkRestored":
|
|
30118
30324
|
case "socketReceipt":
|
|
30119
30325
|
throw new Error("socket receipts must enter through the peer lifecycle");
|
|
30120
30326
|
case "bindSession": {
|
|
@@ -30794,6 +31000,11 @@ var init_peer_office = __esm({
|
|
|
30794
31000
|
residentWorkspaces() {
|
|
30795
31001
|
return this.#residency.residentWorkspaces();
|
|
30796
31002
|
}
|
|
31003
|
+
/** Why this office's kernel trapped, once it has (CAP-965): the kernel port's record, which a desk
|
|
31004
|
+
* that answered the trap as typed paper cannot hide. The host discards the machine on it. */
|
|
31005
|
+
kernelTrap() {
|
|
31006
|
+
return this.#kernel.kernelTrap();
|
|
31007
|
+
}
|
|
30797
31008
|
retentionOutstandingDetails() {
|
|
30798
31009
|
return this.#residency.retentionOutstandingDetails();
|
|
30799
31010
|
}
|
|
@@ -31285,6 +31496,7 @@ function createPeerOfficeFrameRunner(kernel, credentials, profile, observations,
|
|
|
31285
31496
|
correspondenceHolds: () => peer2.correspondenceHolds(),
|
|
31286
31497
|
residentObservation: (workspace) => peer2.residentObservation(workspace),
|
|
31287
31498
|
residentWorkspaces: () => peer2.residentWorkspaces(),
|
|
31499
|
+
kernelTrap: () => peer2.kernelTrap(),
|
|
31288
31500
|
drainEvents,
|
|
31289
31501
|
runBackground,
|
|
31290
31502
|
close() {
|
|
@@ -32653,6 +32865,7 @@ var init_runtime_selection = __esm({
|
|
|
32653
32865
|
// src/peer_office.ts
|
|
32654
32866
|
var peer_office_exports = {};
|
|
32655
32867
|
__export(peer_office_exports, {
|
|
32868
|
+
catchUpLocalReplica: () => catchUpLocalReplica,
|
|
32656
32869
|
generateDeviceKey: () => generateDeviceKey,
|
|
32657
32870
|
inspectLawArchive: () => inspectLawArchive,
|
|
32658
32871
|
invokeLocalPeerOffice: () => invokeLocalPeerOffice,
|
|
@@ -33200,6 +33413,17 @@ async function verifyRemoteChain(cloud, workspace) {
|
|
|
33200
33413
|
}
|
|
33201
33414
|
return verdict;
|
|
33202
33415
|
}
|
|
33416
|
+
async function catchUpLocalReplica(cloud, workspace) {
|
|
33417
|
+
const response = await invokeLocalPeerOffice(cloud, {
|
|
33418
|
+
case: "syncWorkspace",
|
|
33419
|
+
value: create82(SyncWorkspaceRequestSchema, { workspace, admit: false })
|
|
33420
|
+
});
|
|
33421
|
+
if (response.outcome.case !== "syncWorkspace") {
|
|
33422
|
+
throw new Error(`Peer Office returned '${response.outcome.case || "empty"}' while catching ${workspace}'s replica up with its custodian${unavailableDetail(response)}`);
|
|
33423
|
+
}
|
|
33424
|
+
const head = response.outcome.value.currentHead;
|
|
33425
|
+
return head === void 0 ? {} : { head };
|
|
33426
|
+
}
|
|
33203
33427
|
async function readServedLaw(cloud, workspace) {
|
|
33204
33428
|
const session = `githolon-status-${workspace}`;
|
|
33205
33429
|
await bindLocalSession(cloud, { workspace, session });
|