@dxos/protocols 0.7.5-feature-compute.4d9d99a → 0.7.5-labs.071a3e2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (68) hide show
  1. package/dist/cjs/src/buf/proto/gen/dxos/client/services_pb.d.ts +118 -13
  2. package/dist/cjs/src/buf/proto/gen/dxos/client/services_pb.d.ts.map +1 -1
  3. package/dist/cjs/src/buf/proto/gen/dxos/client/services_pb.js +65 -50
  4. package/dist/cjs/src/buf/proto/gen/dxos/client/services_pb.js.map +1 -1
  5. package/dist/cjs/src/buf/proto/gen/dxos/edge/calls_pb.d.ts +41 -0
  6. package/dist/cjs/src/buf/proto/gen/dxos/edge/calls_pb.d.ts.map +1 -1
  7. package/dist/cjs/src/buf/proto/gen/dxos/edge/calls_pb.js +9 -4
  8. package/dist/cjs/src/buf/proto/gen/dxos/edge/calls_pb.js.map +1 -1
  9. package/dist/cjs/src/buf/proto/gen/dxos/halo/credentials_pb.d.ts +6 -0
  10. package/dist/cjs/src/buf/proto/gen/dxos/halo/credentials_pb.d.ts.map +1 -1
  11. package/dist/cjs/src/buf/proto/gen/dxos/halo/credentials_pb.js +1 -1
  12. package/dist/cjs/src/buf/proto/gen/dxos/halo/credentials_pb.js.map +1 -1
  13. package/dist/cjs/src/edge.d.ts +13 -2
  14. package/dist/cjs/src/edge.d.ts.map +1 -1
  15. package/dist/cjs/src/edge.js.map +1 -1
  16. package/dist/cjs/src/proto/gen/dxos/client/services.d.ts +62 -4
  17. package/dist/cjs/src/proto/gen/dxos/client/services.d.ts.map +1 -1
  18. package/dist/cjs/src/proto/gen/dxos/client/services.js.map +1 -1
  19. package/dist/cjs/src/proto/gen/dxos/edge/calls.d.ts +29 -0
  20. package/dist/cjs/src/proto/gen/dxos/edge/calls.d.ts.map +1 -1
  21. package/dist/cjs/src/proto/gen/dxos/halo/credentials.d.ts +4 -0
  22. package/dist/cjs/src/proto/gen/dxos/halo/credentials.d.ts.map +1 -1
  23. package/dist/cjs/src/proto/gen/dxos/halo/credentials.js.map +1 -1
  24. package/dist/cjs/src/proto/gen/index.d.ts +5 -1
  25. package/dist/cjs/src/proto/gen/index.d.ts.map +1 -1
  26. package/dist/cjs/src/proto/gen/index.js +1 -1
  27. package/dist/cjs/src/proto/gen/index.js.map +1 -1
  28. package/dist/cjs/tsconfig.tsbuildinfo +1 -1
  29. package/dist/esm/src/buf/proto/gen/dxos/client/services_pb.d.ts +118 -13
  30. package/dist/esm/src/buf/proto/gen/dxos/client/services_pb.d.ts.map +1 -1
  31. package/dist/esm/src/buf/proto/gen/dxos/client/services_pb.js +63 -48
  32. package/dist/esm/src/buf/proto/gen/dxos/client/services_pb.js.map +1 -1
  33. package/dist/esm/src/buf/proto/gen/dxos/edge/calls_pb.d.ts +41 -0
  34. package/dist/esm/src/buf/proto/gen/dxos/edge/calls_pb.d.ts.map +1 -1
  35. package/dist/esm/src/buf/proto/gen/dxos/edge/calls_pb.js +8 -3
  36. package/dist/esm/src/buf/proto/gen/dxos/edge/calls_pb.js.map +1 -1
  37. package/dist/esm/src/buf/proto/gen/dxos/halo/credentials_pb.d.ts +6 -0
  38. package/dist/esm/src/buf/proto/gen/dxos/halo/credentials_pb.d.ts.map +1 -1
  39. package/dist/esm/src/buf/proto/gen/dxos/halo/credentials_pb.js +1 -1
  40. package/dist/esm/src/buf/proto/gen/dxos/halo/credentials_pb.js.map +1 -1
  41. package/dist/esm/src/edge.d.ts +13 -2
  42. package/dist/esm/src/edge.d.ts.map +1 -1
  43. package/dist/esm/src/edge.js.map +1 -1
  44. package/dist/esm/src/proto/gen/dxos/client/services.d.ts +62 -4
  45. package/dist/esm/src/proto/gen/dxos/client/services.d.ts.map +1 -1
  46. package/dist/esm/src/proto/gen/dxos/client/services.js.map +1 -1
  47. package/dist/esm/src/proto/gen/dxos/edge/calls.d.ts +29 -0
  48. package/dist/esm/src/proto/gen/dxos/edge/calls.d.ts.map +1 -1
  49. package/dist/esm/src/proto/gen/dxos/halo/credentials.d.ts +4 -0
  50. package/dist/esm/src/proto/gen/dxos/halo/credentials.d.ts.map +1 -1
  51. package/dist/esm/src/proto/gen/dxos/halo/credentials.js.map +1 -1
  52. package/dist/esm/src/proto/gen/index.d.ts +5 -1
  53. package/dist/esm/src/proto/gen/index.d.ts.map +1 -1
  54. package/dist/esm/src/proto/gen/index.js +1 -1
  55. package/dist/esm/src/proto/gen/index.js.map +1 -1
  56. package/dist/esm/tsconfig.tsbuildinfo +1 -1
  57. package/package.json +7 -7
  58. package/src/buf/proto/gen/dxos/client/services_pb.ts +179 -59
  59. package/src/buf/proto/gen/dxos/edge/calls_pb.ts +51 -3
  60. package/src/buf/proto/gen/dxos/halo/credentials_pb.ts +8 -1
  61. package/src/edge.ts +15 -2
  62. package/src/proto/dxos/client/services.proto +32 -4
  63. package/src/proto/dxos/edge/calls.proto +20 -0
  64. package/src/proto/dxos/halo/credentials.proto +2 -0
  65. package/src/proto/gen/dxos/client/services.ts +62 -4
  66. package/src/proto/gen/dxos/edge/calls.ts +29 -0
  67. package/src/proto/gen/dxos/halo/credentials.ts +4 -0
  68. package/src/proto/gen/index.ts +6 -2
@@ -45,7 +45,7 @@ import type { JsonObject, Message } from "@bufbuild/protobuf";
45
45
  * Describes the file dxos/client/services.proto.
46
46
  */
47
47
  export const file_dxos_client_services: GenFile = /*@__PURE__*/
48
- fileDesc("ChpkeG9zL2NsaWVudC9zZXJ2aWNlcy5wcm90bxIUZHhvcy5jbGllbnQuc2VydmljZXMiSQoTVXBkYXRlU3RhdHVzUmVxdWVzdBIyCgZzdGF0dXMYASABKA4yIi5keG9zLmNsaWVudC5zZXJ2aWNlcy5TeXN0ZW1TdGF0dXMiOAoSUXVlcnlTdGF0dXNSZXF1ZXN0EhUKCGludGVydmFsGAEgASgFSACIAQFCCwoJX2ludGVydmFsIkkKE1F1ZXJ5U3RhdHVzUmVzcG9uc2USMgoGc3RhdHVzGAEgASgOMiIuZHhvcy5jbGllbnQuc2VydmljZXMuU3lzdGVtU3RhdHVzIp8BChVHZXREaWFnbm9zdGljc1JlcXVlc3QSSQoEa2V5cxgBIAEoDjI2LmR4b3MuY2xpZW50LnNlcnZpY2VzLkdldERpYWdub3N0aWNzUmVxdWVzdC5LRVlfT1BUSU9OSACIAQEiMgoKS0VZX09QVElPThIICgROT05FEAASDAoIVFJVTkNBVEUQARIMCghIVU1BTklaRRACQgcKBV9rZXlzInUKFkdldERpYWdub3N0aWNzUmVzcG9uc2USLQoJdGltZXN0YW1wGAEgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIsCgtkaWFnbm9zdGljcxgCIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3Qi5AIKCFBsYXRmb3JtEjoKBHR5cGUYASABKA4yLC5keG9zLmNsaWVudC5zZXJ2aWNlcy5QbGF0Zm9ybS5QTEFURk9STV9UWVBFEhcKCnVzZXJfYWdlbnQYAiABKAlIAIgBARIVCghwbGF0Zm9ybRgDIAEoCUgBiAEBEhEKBGFyY2gYBCABKAlIAogBARIUCgdydW50aW1lGAUgASgJSAOIAQESEwoGdXB0aW1lGAYgASgNSASIAQESLAoGbWVtb3J5GAcgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgFiAEBIjkKDVBMQVRGT1JNX1RZUEUSCwoHQlJPV1NFUhAAEhEKDVNIQVJFRF9XT1JLRVIQARIICgROT0RFEAJCDQoLX3VzZXJfYWdlbnRCCwoJX3BsYXRmb3JtQgcKBV9hcmNoQgoKCF9ydW50aW1lQgkKB191cHRpbWVCCQoHX21lbW9yeSK8AQoISWRlbnRpdHkSKgoMaWRlbnRpdHlfa2V5GAEgASgLMhQuZHhvcy5rZXlzLlB1YmxpY0tleRIsCglzcGFjZV9rZXkYAiABKAsyFC5keG9zLmtleXMuUHVibGljS2V5SACIAQESPAoHcHJvZmlsZRgDIAEoCzImLmR4b3MuaGFsby5jcmVkZW50aWFscy5Qcm9maWxlRG9jdW1lbnRIAYgBAUIMCgpfc3BhY2Vfa2V5QgoKCF9wcm9maWxlIiwKFlJlY292ZXJJZGVudGl0eVJlcXVlc3QSEgoKc2VlZHBocmFzZRgBIAEoCSIyChxDcmVhdGVSZWNvdmVyeVBocmFzZVJlc3BvbnNlEhIKCnNlZWRwaHJhc2UYASABKAkiWwoVUXVlcnlJZGVudGl0eVJlc3BvbnNlEjUKCGlkZW50aXR5GAEgASgLMh4uZHhvcy5jbGllbnQuc2VydmljZXMuSWRlbnRpdHlIAIgBAUILCglfaWRlbnRpdHkicgoXU2lnblByZXNlbnRhdGlvblJlcXVlc3QSOQoMcHJlc2VudGF0aW9uGAEgASgLMiMuZHhvcy5oYWxvLmNyZWRlbnRpYWxzLlByZXNlbnRhdGlvbhISCgVub25jZRgCIAEoDEgAiAEBQggKBl9ub25jZSLFAQoVQ3JlYXRlSWRlbnRpdHlSZXF1ZXN0EjwKB3Byb2ZpbGUYASABKAsyJi5keG9zLmhhbG8uY3JlZGVudGlhbHMuUHJvZmlsZURvY3VtZW50SACIAQESSQoOZGV2aWNlX3Byb2ZpbGUYAyABKAsyLC5keG9zLmhhbG8uY3JlZGVudGlhbHMuRGV2aWNlUHJvZmlsZURvY3VtZW50SAGIAQFCCgoIX3Byb2ZpbGVCEQoPX2RldmljZV9wcm9maWxlSgQIAhADIqcCCgZEZXZpY2USKAoKZGV2aWNlX2tleRgBIAEoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXkSLgoEa2luZBgCIAEoDjIgLmR4b3MuY2xpZW50LnNlcnZpY2VzLkRldmljZUtpbmQSQgoHcHJvZmlsZRgDIAEoCzIsLmR4b3MuaGFsby5jcmVkZW50aWFscy5EZXZpY2VQcm9maWxlRG9jdW1lbnRIAIgBARI8CghwcmVzZW5jZRgEIAEoDjIqLmR4b3MuY2xpZW50LnNlcnZpY2VzLkRldmljZS5QcmVzZW5jZVN0YXRlIjUKDVByZXNlbmNlU3RhdGUSCwoHT0ZGTElORRAAEgoKBk9OTElORRABEgsKB1JFTU9WRUQQAkIKCghfcHJvZmlsZSJFChRRdWVyeURldmljZXNSZXNwb25zZRItCgdkZXZpY2VzGAEgAygLMhwuZHhvcy5jbGllbnQuc2VydmljZXMuRGV2aWNlIqoBCgdDb250YWN0EikKC2lkZW50aXR5S2V5GAIgASgLMhQuZHhvcy5rZXlzLlB1YmxpY0tleRI8Cgdwcm9maWxlGAEgASgLMiYuZHhvcy5oYWxvLmNyZWRlbnRpYWxzLlByb2ZpbGVEb2N1bWVudEgAiAEBEioKDGNvbW1vblNwYWNlcxgDIAMoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXlCCgoIX3Byb2ZpbGUiPgoLQ29udGFjdEJvb2sSLwoIY29udGFjdHMYASADKAsyHS5keG9zLmNsaWVudC5zZXJ2aWNlcy5Db250YWN0IpYCCgtTcGFjZU1lbWJlchIwCghpZGVudGl0eRgBIAEoCzIeLmR4b3MuY2xpZW50LnNlcnZpY2VzLklkZW50aXR5EkEKCHByZXNlbmNlGAIgASgOMi8uZHhvcy5jbGllbnQuc2VydmljZXMuU3BhY2VNZW1iZXIuUHJlc2VuY2VTdGF0ZRIxCgpwZWVyU3RhdGVzGAMgAygLMh0uZHhvcy5tZXNoLnByZXNlbmNlLlBlZXJTdGF0ZRI1CgRyb2xlGAQgASgOMicuZHhvcy5oYWxvLmNyZWRlbnRpYWxzLlNwYWNlTWVtYmVyLlJvbGUiKAoNUHJlc2VuY2VTdGF0ZRILCgdPRkZMSU5FEAASCgoGT05MSU5FEAEi5hIKBVNwYWNlEgoKAmlkGAUgASgJEicKCXNwYWNlX2tleRgBIAEoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXkSLwoFc3RhdGUYAiABKA4yIC5keG9zLmNsaWVudC5zZXJ2aWNlcy5TcGFjZVN0YXRlEkAKCHBpcGVsaW5lGAMgASgLMikuZHhvcy5jbGllbnQuc2VydmljZXMuU3BhY2UuUGlwZWxpbmVTdGF0ZUgAiAEBEiUKBWVycm9yGAQgASgLMhEuZHhvcy5lcnJvci5FcnJvckgBiAEBEkkKEGVkZ2VfcmVwbGljYXRpb24YBiABKA4yKi5keG9zLmVjaG8ubWV0YWRhdGEuRWRnZVJlcGxpY2F0aW9uU2V0dGluZ0gCiAEBEjIKB21lbWJlcnMYCiADKAsyIS5keG9zLmNsaWVudC5zZXJ2aWNlcy5TcGFjZU1lbWJlchIqCgdjcmVhdG9yGAsgASgLMhQuZHhvcy5rZXlzLlB1YmxpY0tleUgDiAEBEjIKBWNhY2hlGBQgASgLMh4uZHhvcy5lY2hvLm1ldGFkYXRhLlNwYWNlQ2FjaGVIBIgBARI0CgdtZXRyaWNzGBUgASgLMiMuZHhvcy5jbGllbnQuc2VydmljZXMuU3BhY2UuTWV0cmljcxrXAwoHTWV0cmljcxItCgRvcGVuGAEgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgAiAEBEjwKE3BpcGVsaW5lX2luaXRfYmVnaW4YAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAGIAQESPwoWY29udHJvbF9waXBlbGluZV9yZWFkeRgDIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAogBARI7ChJkYXRhX3BpcGVsaW5lX29wZW4YBCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAOIAQESPAoTZGF0YV9waXBlbGluZV9yZWFkeRgFIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIBIgBARIuCgVyZWFkeRgGIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIBYgBAUIHCgVfb3BlbkIWChRfcGlwZWxpbmVfaW5pdF9iZWdpbkIZChdfY29udHJvbF9waXBlbGluZV9yZWFkeUIVChNfZGF0YV9waXBlbGluZV9vcGVuQhYKFF9kYXRhX3BpcGVsaW5lX3JlYWR5QggKBl9yZWFkeRrcCgoNUGlwZWxpbmVTdGF0ZRIzChBjb250cm9sX2ZlZWRfa2V5GAEgASgLMhQuZHhvcy5rZXlzLlB1YmxpY0tleUgAiAEBEjAKDWRhdGFfZmVlZF9rZXkYAiABKAsyFC5keG9zLmtleXMuUHVibGljS2V5SAGIAQESKwoNY29udHJvbF9mZWVkcxgSIAMoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXkSKAoKZGF0YV9mZWVkcxgTIAMoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXkSPQoNY3VycmVudF9lcG9jaBgUIAEoCzIhLmR4b3MuaGFsby5jcmVkZW50aWFscy5DcmVkZW50aWFsSAKIAQESPQoNYXBwbGllZF9lcG9jaBgVIAEoCzIhLmR4b3MuaGFsby5jcmVkZW50aWFscy5DcmVkZW50aWFsSAOIAQESTAoZY3VycmVudF9jb250cm9sX3RpbWVmcmFtZRgKIAEoCzIkLmR4b3MuZWNoby50aW1lZnJhbWUuVGltZWZyYW1lVmVjdG9ySASIAQESSwoYdGFyZ2V0X2NvbnRyb2xfdGltZWZyYW1lGAsgASgLMiQuZHhvcy5lY2hvLnRpbWVmcmFtZS5UaW1lZnJhbWVWZWN0b3JIBYgBARJKChd0b3RhbF9jb250cm9sX3RpbWVmcmFtZRgOIAEoCzIkLmR4b3MuZWNoby50aW1lZnJhbWUuVGltZWZyYW1lVmVjdG9ySAaIAQESSgoXa25vd25fY29udHJvbF90aW1lZnJhbWUYDyABKAsyJC5keG9zLmVjaG8udGltZWZyYW1lLlRpbWVmcmFtZVZlY3RvckgHiAEBEkcKFHN0YXJ0X2RhdGFfdGltZWZyYW1lGGQgASgLMiQuZHhvcy5lY2hvLnRpbWVmcmFtZS5UaW1lZnJhbWVWZWN0b3JICIgBARJJChZjdXJyZW50X2RhdGFfdGltZWZyYW1lGAwgASgLMiQuZHhvcy5lY2hvLnRpbWVmcmFtZS5UaW1lZnJhbWVWZWN0b3JICYgBARJIChV0YXJnZXRfZGF0YV90aW1lZnJhbWUYDSABKAsyJC5keG9zLmVjaG8udGltZWZyYW1lLlRpbWVmcmFtZVZlY3RvckgKiAEBEkcKFHRvdGFsX2RhdGFfdGltZWZyYW1lGBAgASgLMiQuZHhvcy5lY2hvLnRpbWVmcmFtZS5UaW1lZnJhbWVWZWN0b3JIC4gBARJHChRrbm93bl9kYXRhX3RpbWVmcmFtZRgRIAEoCzIkLmR4b3MuZWNoby50aW1lZnJhbWUuVGltZWZyYW1lVmVjdG9ySAyIAQESGwoOc3BhY2Vfcm9vdF91cmwYFiABKAlIDYgBAUITChFfY29udHJvbF9mZWVkX2tleUIQCg5fZGF0YV9mZWVkX2tleUIQCg5fY3VycmVudF9lcG9jaEIQCg5fYXBwbGllZF9lcG9jaEIcChpfY3VycmVudF9jb250cm9sX3RpbWVmcmFtZUIbChlfdGFyZ2V0X2NvbnRyb2xfdGltZWZyYW1lQhoKGF90b3RhbF9jb250cm9sX3RpbWVmcmFtZUIaChhfa25vd25fY29udHJvbF90aW1lZnJhbWVCFwoVX3N0YXJ0X2RhdGFfdGltZWZyYW1lQhkKF19jdXJyZW50X2RhdGFfdGltZWZyYW1lQhgKFl90YXJnZXRfZGF0YV90aW1lZnJhbWVCFwoVX3RvdGFsX2RhdGFfdGltZWZyYW1lQhcKFV9rbm93bl9kYXRhX3RpbWVmcmFtZUIRCg9fc3BhY2Vfcm9vdF91cmxCCwoJX3BpcGVsaW5lQggKBl9lcnJvckITChFfZWRnZV9yZXBsaWNhdGlvbkIKCghfY3JlYXRvckIICgZfY2FjaGUi3QEKElVwZGF0ZVNwYWNlUmVxdWVzdBInCglzcGFjZV9rZXkYASABKAsyFC5keG9zLmtleXMuUHVibGljS2V5EjQKBXN0YXRlGAIgASgOMiAuZHhvcy5jbGllbnQuc2VydmljZXMuU3BhY2VTdGF0ZUgAiAEBEkkKEGVkZ2VfcmVwbGljYXRpb24YAyABKA4yKi5keG9zLmVjaG8ubWV0YWRhdGEuRWRnZVJlcGxpY2F0aW9uU2V0dGluZ0gBiAEBQggKBl9zdGF0ZUITChFfZWRnZV9yZXBsaWNhdGlvbiJCChNRdWVyeVNwYWNlc1Jlc3BvbnNlEisKBnNwYWNlcxgBIAMoCzIbLmR4b3MuY2xpZW50LnNlcnZpY2VzLlNwYWNlInUKElBvc3RNZXNzYWdlUmVxdWVzdBInCglzcGFjZV9rZXkYASABKAsyFC5keG9zLmtleXMuUHVibGljS2V5Eg8KB2NoYW5uZWwYAiABKAkSJQoHbWVzc2FnZRgDIAEoCzIULmdvb2dsZS5wcm90b2J1Zi5BbnkiVAoYU3Vic2NyaWJlTWVzc2FnZXNSZXF1ZXN0EicKCXNwYWNlX2tleRgBIAEoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXkSDwoHY2hhbm5lbBgCIAEoCSJ6ChdXcml0ZUNyZWRlbnRpYWxzUmVxdWVzdBInCglzcGFjZV9rZXkYASABKAsyFC5keG9zLmtleXMuUHVibGljS2V5EjYKC2NyZWRlbnRpYWxzGAIgAygLMiEuZHhvcy5oYWxvLmNyZWRlbnRpYWxzLkNyZWRlbnRpYWwiZAoXUXVlcnlDcmVkZW50aWFsc1JlcXVlc3QSJwoJc3BhY2Vfa2V5GAEgASgLMhQuZHhvcy5rZXlzLlB1YmxpY0tleRIUCgdub190YWlsGAIgASgISACIAQFCCgoIX25vX3RhaWwi9QIKEkNyZWF0ZUVwb2NoUmVxdWVzdBInCglzcGFjZV9rZXkYASABKAsyFC5keG9zLmtleXMuUHVibGljS2V5EkoKCW1pZ3JhdGlvbhgCIAEoDjIyLmR4b3MuY2xpZW50LnNlcnZpY2VzLkNyZWF0ZUVwb2NoUmVxdWVzdC5NaWdyYXRpb25IAIgBARIfChJhdXRvbWVyZ2Vfcm9vdF91cmwYAyABKAlIAYgBASKjAQoJTWlncmF0aW9uEggKBE5PTkUQABISCg5JTklUX0FVVE9NRVJHRRABEiAKHFBSVU5FX0FVVE9NRVJHRV9ST09UX0hJU1RPUlkQAhIbChdGUkFHTUVOVF9BVVRPTUVSR0VfUk9PVBADEhoKFlJFUExBQ0VfQVVUT01FUkdFX1JPT1QQBBIdChlNSUdSQVRFX1JFRkVSRU5DRVNfVE9fRFhOEAVCDAoKX21pZ3JhdGlvbkIVChNfYXV0b21lcmdlX3Jvb3RfdXJsIsgBChNDcmVhdGVFcG9jaFJlc3BvbnNlEkAKEGVwb2NoX2NyZWRlbnRpYWwYASABKAsyIS5keG9zLmhhbG8uY3JlZGVudGlhbHMuQ3JlZGVudGlhbEgAiAEBEkQKEWNvbnRyb2xfdGltZWZyYW1lGAIgASgLMiQuZHhvcy5lY2hvLnRpbWVmcmFtZS5UaW1lZnJhbWVWZWN0b3JIAYgBAUITChFfZXBvY2hfY3JlZGVudGlhbEIUChJfY29udHJvbF90aW1lZnJhbWUipwEKF1VwZGF0ZU1lbWJlclJvbGVSZXF1ZXN0EicKCXNwYWNlX2tleRgBIAEoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXkSKAoKbWVtYmVyX2tleRgCIAEoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXkSOQoIbmV3X3JvbGUYAyABKA4yJy5keG9zLmhhbG8uY3JlZGVudGlhbHMuU3BhY2VNZW1iZXIuUm9sZSKlAQoTQWRtaXRDb250YWN0UmVxdWVzdBIuCgdjb250YWN0GAEgASgLMh0uZHhvcy5jbGllbnQuc2VydmljZXMuQ29udGFjdBI1CgRyb2xlGAIgASgOMicuZHhvcy5oYWxvLmNyZWRlbnRpYWxzLlNwYWNlTWVtYmVyLlJvbGUSJwoJc3BhY2Vfa2V5GAMgASgLMhQuZHhvcy5rZXlzLlB1YmxpY0tleSJJChBDb250YWN0QWRtaXNzaW9uEjUKCmNyZWRlbnRpYWwYASABKAsyIS5keG9zLmhhbG8uY3JlZGVudGlhbHMuQ3JlZGVudGlhbCI/ChFKb2luU3BhY2VSZXNwb25zZRIqCgVzcGFjZRgBIAEoCzIbLmR4b3MuY2xpZW50LnNlcnZpY2VzLlNwYWNlIkAKFUpvaW5CeVNwYWNlS2V5UmVxdWVzdBInCglzcGFjZV9rZXkYASABKAsyFC5keG9zLmtleXMuUHVibGljS2V5Iq0BChdBY2NlcHRJbnZpdGF0aW9uUmVxdWVzdBI0CgppbnZpdGF0aW9uGAEgASgLMiAuZHhvcy5jbGllbnQuc2VydmljZXMuSW52aXRhdGlvbhJJCg5kZXZpY2VfcHJvZmlsZRgCIAEoCzIsLmR4b3MuaGFsby5jcmVkZW50aWFscy5EZXZpY2VQcm9maWxlRG9jdW1lbnRIAIgBAUIRCg9fZGV2aWNlX3Byb2ZpbGUiQQoVQXV0aGVudGljYXRpb25SZXF1ZXN0EhUKDWludml0YXRpb25faWQYASABKAkSEQoJYXV0aF9jb2RlGAIgASgJIjAKF0NhbmNlbEludml0YXRpb25SZXF1ZXN0EhUKDWludml0YXRpb25faWQYASABKAkihQEKEEludml0YXRpb25NZXRob2QSMwoHY3JlYXRlZBgBIAEoCzIgLmR4b3MuY2xpZW50LnNlcnZpY2VzLkludml0YXRpb25IABI0CghhY2NlcHRlZBgCIAEoCzIgLmR4b3MuY2xpZW50LnNlcnZpY2VzLkludml0YXRpb25IAEIGCgRraW5kIuICChhRdWVyeUludml0YXRpb25zUmVzcG9uc2USRQoGYWN0aW9uGAEgASgOMjUuZHhvcy5jbGllbnQuc2VydmljZXMuUXVlcnlJbnZpdGF0aW9uc1Jlc3BvbnNlLkFjdGlvbhJBCgR0eXBlGAIgASgOMjMuZHhvcy5jbGllbnQuc2VydmljZXMuUXVlcnlJbnZpdGF0aW9uc1Jlc3BvbnNlLlR5cGUSNQoLaW52aXRhdGlvbnMYAyADKAsyIC5keG9zLmNsaWVudC5zZXJ2aWNlcy5JbnZpdGF0aW9uEhUKCGV4aXN0aW5nGAQgASgISACIAQEiPgoGQWN0aW9uEgkKBUFEREVEEAASCwoHUkVNT1ZFRBABEgkKBVNBVkVEEAISEQoNTE9BRF9DT01QTEVURRADIiEKBFR5cGUSCwoHQ1JFQVRFRBAAEgwKCEFDQ0VQVEVEEAFCCwoJX2V4aXN0aW5nIloKIUxvYWRQZXJzaXN0ZW50SW52aXRhdGlvbnNSZXNwb25zZRI1CgtpbnZpdGF0aW9ucxgBIAMoCzIgLmR4b3MuY2xpZW50LnNlcnZpY2VzLkludml0YXRpb24ihQIKDU5ldHdvcmtTdGF0dXMSNAoFc3dhcm0YASABKA4yJS5keG9zLmNsaWVudC5zZXJ2aWNlcy5Db25uZWN0aW9uU3RhdGUSPQoJc2lnbmFsaW5nGAIgAygLMiouZHhvcy5jbGllbnQuc2VydmljZXMuTmV0d29ya1N0YXR1cy5TaWduYWwSNwoPY29ubmVjdGlvbl9pbmZvGAMgAygLMh4uZHhvcy5kZXZ0b29scy5zd2FybS5Td2FybUluZm8aRgoGU2lnbmFsEg4KBnNlcnZlchgBIAEoCRIsCgVzdGF0ZRgCIAEoDjIdLmR4b3MubWVzaC5zaWduYWwuU2lnbmFsU3RhdGUiSwoTVXBkYXRlQ29uZmlnUmVxdWVzdBI0CgVzd2FybRgBIAEoDjIlLmR4b3MuY2xpZW50LnNlcnZpY2VzLkNvbm5lY3Rpb25TdGF0ZSJBChpTdWJzY3JpYmVTd2FybVN0YXRlUmVxdWVzdBIjCgV0b3BpYxgBIAEoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXkikwEKF1F1ZXJ5RWRnZVN0YXR1c1Jlc3BvbnNlEkgKBnN0YXR1cxgBIAEoDjI4LmR4b3MuY2xpZW50LnNlcnZpY2VzLlF1ZXJ5RWRnZVN0YXR1c1Jlc3BvbnNlLkVkZ2VTdGF0dXMiLgoKRWRnZVN0YXR1cxIRCg1OT1RfQ09OTkVDVEVEEAASDQoJQ09OTkVDVEVEEAEiqwEKGFF1ZXJ5QWdlbnRTdGF0dXNSZXNwb25zZRJKCgZzdGF0dXMYASABKA4yOi5keG9zLmNsaWVudC5zZXJ2aWNlcy5RdWVyeUFnZW50U3RhdHVzUmVzcG9uc2UuQWdlbnRTdGF0dXMiQwoLQWdlbnRTdGF0dXMSCwoHVU5LTk9XThAAEgoKBkFDVElWRRABEgwKCElOQUNUSVZFEAISDQoJTk9UX0ZPVU5EEAMqKAoMU3lzdGVtU3RhdHVzEgwKCElOQUNUSVZFEAASCgoGQUNUSVZFEAEqJgoKRGV2aWNlS2luZBILCgdDVVJSRU5UEAASCwoHVFJVU1RFRBABKioKD0Nvbm5lY3Rpb25TdGF0ZRILCgdPRkZMSU5FEAASCgoGT05MSU5FEAEy7wMKDVN5c3RlbVNlcnZpY2USOAoJR2V0Q29uZmlnEhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5GhMuZHhvcy5jb25maWcuQ29uZmlnEmsKDkdldERpYWdub3N0aWNzEisuZHhvcy5jbGllbnQuc2VydmljZXMuR2V0RGlhZ25vc3RpY3NSZXF1ZXN0GiwuZHhvcy5jbGllbnQuc2VydmljZXMuR2V0RGlhZ25vc3RpY3NSZXNwb25zZRJRCgxVcGRhdGVTdGF0dXMSKS5keG9zLmNsaWVudC5zZXJ2aWNlcy5VcGRhdGVTdGF0dXNSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5EmQKC1F1ZXJ5U3RhdHVzEiguZHhvcy5jbGllbnQuc2VydmljZXMuUXVlcnlTdGF0dXNSZXF1ZXN0GikuZHhvcy5jbGllbnQuc2VydmljZXMuUXVlcnlTdGF0dXNSZXNwb25zZTABEjcKBVJlc2V0EhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5EkUKC0dldFBsYXRmb3JtEhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5Gh4uZHhvcy5jbGllbnQuc2VydmljZXMuUGxhdGZvcm0yoQUKD0lkZW50aXR5U2VydmljZRJdCg5DcmVhdGVJZGVudGl0eRIrLmR4b3MuY2xpZW50LnNlcnZpY2VzLkNyZWF0ZUlkZW50aXR5UmVxdWVzdBoeLmR4b3MuY2xpZW50LnNlcnZpY2VzLklkZW50aXR5El8KD1JlY292ZXJJZGVudGl0eRIsLmR4b3MuY2xpZW50LnNlcnZpY2VzLlJlY292ZXJJZGVudGl0eVJlcXVlc3QaHi5keG9zLmNsaWVudC5zZXJ2aWNlcy5JZGVudGl0eRJiChRDcmVhdGVSZWNvdmVyeVBocmFzZRIWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRoyLmR4b3MuY2xpZW50LnNlcnZpY2VzLkNyZWF0ZVJlY292ZXJ5UGhyYXNlUmVzcG9uc2USVgoNUXVlcnlJZGVudGl0eRIWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRorLmR4b3MuY2xpZW50LnNlcnZpY2VzLlF1ZXJ5SWRlbnRpdHlSZXNwb25zZTABElcKDVVwZGF0ZVByb2ZpbGUSJi5keG9zLmhhbG8uY3JlZGVudGlhbHMuUHJvZmlsZURvY3VtZW50Gh4uZHhvcy5jbGllbnQuc2VydmljZXMuSWRlbnRpdHkSZgoQU2lnblByZXNlbnRhdGlvbhItLmR4b3MuY2xpZW50LnNlcnZpY2VzLlNpZ25QcmVzZW50YXRpb25SZXF1ZXN0GiMuZHhvcy5oYWxvLmNyZWRlbnRpYWxzLlByZXNlbnRhdGlvbhJRChRDcmVhdGVBdXRoQ3JlZGVudGlhbBIWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRohLmR4b3MuaGFsby5jcmVkZW50aWFscy5DcmVkZW50aWFsMsIBCg5EZXZpY2VzU2VydmljZRJaCgxVcGRhdGVEZXZpY2USLC5keG9zLmhhbG8uY3JlZGVudGlhbHMuRGV2aWNlUHJvZmlsZURvY3VtZW50GhwuZHhvcy5jbGllbnQuc2VydmljZXMuRGV2aWNlElQKDFF1ZXJ5RGV2aWNlcxIWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRoqLmR4b3MuY2xpZW50LnNlcnZpY2VzLlF1ZXJ5RGV2aWNlc1Jlc3BvbnNlMAEyqQEKD0NvbnRhY3RzU2VydmljZRJICgtHZXRDb250YWN0cxIWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRohLmR4b3MuY2xpZW50LnNlcnZpY2VzLkNvbnRhY3RCb29rEkwKDVF1ZXJ5Q29udGFjdHMSFi5nb29nbGUucHJvdG9idWYuRW1wdHkaIS5keG9zLmNsaWVudC5zZXJ2aWNlcy5Db250YWN0Qm9vazABMvcHCg1TcGFjZXNTZXJ2aWNlEkIKC0NyZWF0ZVNwYWNlEhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5GhsuZHhvcy5jbGllbnQuc2VydmljZXMuU3BhY2USTwoLVXBkYXRlU3BhY2USKC5keG9zLmNsaWVudC5zZXJ2aWNlcy5VcGRhdGVTcGFjZVJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkSUgoLUXVlcnlTcGFjZXMSFi5nb29nbGUucHJvdG9idWYuRW1wdHkaKS5keG9zLmNsaWVudC5zZXJ2aWNlcy5RdWVyeVNwYWNlc1Jlc3BvbnNlMAESWQoQVXBkYXRlTWVtYmVyUm9sZRItLmR4b3MuY2xpZW50LnNlcnZpY2VzLlVwZGF0ZU1lbWJlclJvbGVSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5ElEKDEFkbWl0Q29udGFjdBIpLmR4b3MuY2xpZW50LnNlcnZpY2VzLkFkbWl0Q29udGFjdFJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkSZgoOSm9pbkJ5U3BhY2VLZXkSKy5keG9zLmNsaWVudC5zZXJ2aWNlcy5Kb2luQnlTcGFjZUtleVJlcXVlc3QaJy5keG9zLmNsaWVudC5zZXJ2aWNlcy5Kb2luU3BhY2VSZXNwb25zZRJPCgtQb3N0TWVzc2FnZRIoLmR4b3MuY2xpZW50LnNlcnZpY2VzLlBvc3RNZXNzYWdlUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRJvChFTdWJzY3JpYmVNZXNzYWdlcxIuLmR4b3MuY2xpZW50LnNlcnZpY2VzLlN1YnNjcmliZU1lc3NhZ2VzUmVxdWVzdBooLmR4b3MubWVzaC50ZWxlcG9ydC5nb3NzaXAuR29zc2lwTWVzc2FnZTABElkKEFdyaXRlQ3JlZGVudGlhbHMSLS5keG9zLmNsaWVudC5zZXJ2aWNlcy5Xcml0ZUNyZWRlbnRpYWxzUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRJmChBRdWVyeUNyZWRlbnRpYWxzEi0uZHhvcy5jbGllbnQuc2VydmljZXMuUXVlcnlDcmVkZW50aWFsc1JlcXVlc3QaIS5keG9zLmhhbG8uY3JlZGVudGlhbHMuQ3JlZGVudGlhbDABEmIKC0NyZWF0ZUVwb2NoEiguZHhvcy5jbGllbnQuc2VydmljZXMuQ3JlYXRlRXBvY2hSZXF1ZXN0GikuZHhvcy5jbGllbnQuc2VydmljZXMuQ3JlYXRlRXBvY2hSZXNwb25zZTLjAwoSSW52aXRhdGlvbnNTZXJ2aWNlElgKEENyZWF0ZUludml0YXRpb24SIC5keG9zLmNsaWVudC5zZXJ2aWNlcy5JbnZpdGF0aW9uGiAuZHhvcy5jbGllbnQuc2VydmljZXMuSW52aXRhdGlvbjABEmUKEEFjY2VwdEludml0YXRpb24SLS5keG9zLmNsaWVudC5zZXJ2aWNlcy5BY2NlcHRJbnZpdGF0aW9uUmVxdWVzdBogLmR4b3MuY2xpZW50LnNlcnZpY2VzLkludml0YXRpb24wARJTCgxBdXRoZW50aWNhdGUSKy5keG9zLmNsaWVudC5zZXJ2aWNlcy5BdXRoZW50aWNhdGlvblJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkSWQoQQ2FuY2VsSW52aXRhdGlvbhItLmR4b3MuY2xpZW50LnNlcnZpY2VzLkNhbmNlbEludml0YXRpb25SZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5ElwKEFF1ZXJ5SW52aXRhdGlvbnMSFi5nb29nbGUucHJvdG9idWYuRW1wdHkaLi5keG9zLmNsaWVudC5zZXJ2aWNlcy5RdWVyeUludml0YXRpb25zUmVzcG9uc2UwATK5BAoOTmV0d29ya1NlcnZpY2USUQoMVXBkYXRlQ29uZmlnEikuZHhvcy5jbGllbnQuc2VydmljZXMuVXBkYXRlQ29uZmlnUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRJMCgtRdWVyeVN0YXR1cxIWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRojLmR4b3MuY2xpZW50LnNlcnZpY2VzLk5ldHdvcmtTdGF0dXMwARJCCglKb2luU3dhcm0SHS5keG9zLmVkZ2Uuc2lnbmFsLkpvaW5SZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5EkQKCkxlYXZlU3dhcm0SHi5keG9zLmVkZ2Uuc2lnbmFsLkxlYXZlUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRJtChNTdWJzY3JpYmVTd2FybVN0YXRlEjAuZHhvcy5jbGllbnQuc2VydmljZXMuU3Vic2NyaWJlU3dhcm1TdGF0ZVJlcXVlc3QaIi5keG9zLmVkZ2UubWVzc2VuZ2VyLlN3YXJtUmVzcG9uc2UwARJACgtTZW5kTWVzc2FnZRIZLmR4b3MuZWRnZS5zaWduYWwuTWVzc2FnZRoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRJLChFTdWJzY3JpYmVNZXNzYWdlcxIZLmR4b3MuZWRnZS5tZXNzZW5nZXIuUGVlchoZLmR4b3MuZWRnZS5zaWduYWwuTWVzc2FnZTABMosCChBFZGdlQWdlbnRTZXJ2aWNlEloKD1F1ZXJ5RWRnZVN0YXR1cxIWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRotLmR4b3MuY2xpZW50LnNlcnZpY2VzLlF1ZXJ5RWRnZVN0YXR1c1Jlc3BvbnNlMAESPQoLQ3JlYXRlQWdlbnQSFi5nb29nbGUucHJvdG9idWYuRW1wdHkaFi5nb29nbGUucHJvdG9idWYuRW1wdHkSXAoQUXVlcnlBZ2VudFN0YXR1cxIWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRouLmR4b3MuY2xpZW50LnNlcnZpY2VzLlF1ZXJ5QWdlbnRTdGF0dXNSZXNwb25zZTABYgZwcm90bzM", [file_google_protobuf_any, file_google_protobuf_empty, file_google_protobuf_struct, file_google_protobuf_timestamp, file_dxos_client_invitation, file_dxos_config, file_dxos_devtools_swarm, file_dxos_echo_metadata, file_dxos_echo_timeframe, file_dxos_edge_messenger, file_dxos_edge_signal, file_dxos_error, file_dxos_halo_credentials, file_dxos_keys, file_dxos_mesh_signal, file_dxos_mesh_presence, file_dxos_mesh_teleport_gossip, file_dxos_value]);
48
+ fileDesc("ChpkeG9zL2NsaWVudC9zZXJ2aWNlcy5wcm90bxIUZHhvcy5jbGllbnQuc2VydmljZXMiSQoTVXBkYXRlU3RhdHVzUmVxdWVzdBIyCgZzdGF0dXMYASABKA4yIi5keG9zLmNsaWVudC5zZXJ2aWNlcy5TeXN0ZW1TdGF0dXMiOAoSUXVlcnlTdGF0dXNSZXF1ZXN0EhUKCGludGVydmFsGAEgASgFSACIAQFCCwoJX2ludGVydmFsIkkKE1F1ZXJ5U3RhdHVzUmVzcG9uc2USMgoGc3RhdHVzGAEgASgOMiIuZHhvcy5jbGllbnQuc2VydmljZXMuU3lzdGVtU3RhdHVzIp8BChVHZXREaWFnbm9zdGljc1JlcXVlc3QSSQoEa2V5cxgBIAEoDjI2LmR4b3MuY2xpZW50LnNlcnZpY2VzLkdldERpYWdub3N0aWNzUmVxdWVzdC5LRVlfT1BUSU9OSACIAQEiMgoKS0VZX09QVElPThIICgROT05FEAASDAoIVFJVTkNBVEUQARIMCghIVU1BTklaRRACQgcKBV9rZXlzInUKFkdldERpYWdub3N0aWNzUmVzcG9uc2USLQoJdGltZXN0YW1wGAEgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIsCgtkaWFnbm9zdGljcxgCIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3Qi5AIKCFBsYXRmb3JtEjoKBHR5cGUYASABKA4yLC5keG9zLmNsaWVudC5zZXJ2aWNlcy5QbGF0Zm9ybS5QTEFURk9STV9UWVBFEhcKCnVzZXJfYWdlbnQYAiABKAlIAIgBARIVCghwbGF0Zm9ybRgDIAEoCUgBiAEBEhEKBGFyY2gYBCABKAlIAogBARIUCgdydW50aW1lGAUgASgJSAOIAQESEwoGdXB0aW1lGAYgASgNSASIAQESLAoGbWVtb3J5GAcgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgFiAEBIjkKDVBMQVRGT1JNX1RZUEUSCwoHQlJPV1NFUhAAEhEKDVNIQVJFRF9XT1JLRVIQARIICgROT0RFEAJCDQoLX3VzZXJfYWdlbnRCCwoJX3BsYXRmb3JtQgcKBV9hcmNoQgoKCF9ydW50aW1lQgkKB191cHRpbWVCCQoHX21lbW9yeSLJAQoISWRlbnRpdHkSCwoDZGlkGAQgASgJEioKDGlkZW50aXR5X2tleRgBIAEoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXkSLAoJc3BhY2Vfa2V5GAIgASgLMhQuZHhvcy5rZXlzLlB1YmxpY0tleUgAiAEBEjwKB3Byb2ZpbGUYAyABKAsyJi5keG9zLmhhbG8uY3JlZGVudGlhbHMuUHJvZmlsZURvY3VtZW50SAGIAQFCDAoKX3NwYWNlX2tleUIKCghfcHJvZmlsZSKPAQogUmVxdWVzdFJlY292ZXJ5Q2hhbGxlbmdlUmVzcG9uc2USKAoKZGV2aWNlX2tleRgBIAEoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXkSLgoQY29udHJvbF9mZWVkX2tleRgCIAEoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXkSEQoJY2hhbGxlbmdlGAMgASgJIpUDChZSZWNvdmVySWRlbnRpdHlSZXF1ZXN0EhcKDXJlY292ZXJ5X2NvZGUYASABKAlIABJSCghleHRlcm5hbBgCIAEoCzI+LmR4b3MuY2xpZW50LnNlcnZpY2VzLlJlY292ZXJJZGVudGl0eVJlcXVlc3QuRXh0ZXJuYWxTaWduYXR1cmVIABqCAgoRRXh0ZXJuYWxTaWduYXR1cmUSFAoMaWRlbnRpdHlfZGlkGAEgASgJEigKCmRldmljZV9rZXkYAiABKAsyFC5keG9zLmtleXMuUHVibGljS2V5Ei4KEGNvbnRyb2xfZmVlZF9rZXkYAyABKAsyFC5keG9zLmtleXMuUHVibGljS2V5EhEKCXNpZ25hdHVyZRgEIAEoDBIdChBjbGllbnRfZGF0YV9qc29uGAUgASgMSACIAQESHwoSYXV0aGVudGljYXRvcl9kYXRhGAYgASgMSAGIAQFCEwoRX2NsaWVudF9kYXRhX2pzb25CFQoTX2F1dGhlbnRpY2F0b3JfZGF0YUIJCgdyZXF1ZXN0IokBCh9DcmVhdGVSZWNvdmVyeUNyZWRlbnRpYWxSZXF1ZXN0Ei8KDHJlY292ZXJ5X2tleRgBIAEoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXlIAIgBARIWCglhbGdvcml0aG0YAiABKAVIAYgBAUIPCg1fcmVjb3Zlcnlfa2V5QgwKCl9hbGdvcml0aG0iUAogQ3JlYXRlUmVjb3ZlcnlDcmVkZW50aWFsUmVzcG9uc2USGgoNcmVjb3ZlcnlfY29kZRgBIAEoCUgAiAEBQhAKDl9yZWNvdmVyeV9jb2RlIlsKFVF1ZXJ5SWRlbnRpdHlSZXNwb25zZRI1CghpZGVudGl0eRgBIAEoCzIeLmR4b3MuY2xpZW50LnNlcnZpY2VzLklkZW50aXR5SACIAQFCCwoJX2lkZW50aXR5InIKF1NpZ25QcmVzZW50YXRpb25SZXF1ZXN0EjkKDHByZXNlbnRhdGlvbhgBIAEoCzIjLmR4b3MuaGFsby5jcmVkZW50aWFscy5QcmVzZW50YXRpb24SEgoFbm9uY2UYAiABKAxIAIgBAUIICgZfbm9uY2UixQEKFUNyZWF0ZUlkZW50aXR5UmVxdWVzdBI8Cgdwcm9maWxlGAEgASgLMiYuZHhvcy5oYWxvLmNyZWRlbnRpYWxzLlByb2ZpbGVEb2N1bWVudEgAiAEBEkkKDmRldmljZV9wcm9maWxlGAMgASgLMiwuZHhvcy5oYWxvLmNyZWRlbnRpYWxzLkRldmljZVByb2ZpbGVEb2N1bWVudEgBiAEBQgoKCF9wcm9maWxlQhEKD19kZXZpY2VfcHJvZmlsZUoECAIQAyKnAgoGRGV2aWNlEigKCmRldmljZV9rZXkYASABKAsyFC5keG9zLmtleXMuUHVibGljS2V5Ei4KBGtpbmQYAiABKA4yIC5keG9zLmNsaWVudC5zZXJ2aWNlcy5EZXZpY2VLaW5kEkIKB3Byb2ZpbGUYAyABKAsyLC5keG9zLmhhbG8uY3JlZGVudGlhbHMuRGV2aWNlUHJvZmlsZURvY3VtZW50SACIAQESPAoIcHJlc2VuY2UYBCABKA4yKi5keG9zLmNsaWVudC5zZXJ2aWNlcy5EZXZpY2UuUHJlc2VuY2VTdGF0ZSI1Cg1QcmVzZW5jZVN0YXRlEgsKB09GRkxJTkUQABIKCgZPTkxJTkUQARILCgdSRU1PVkVEEAJCCgoIX3Byb2ZpbGUiRQoUUXVlcnlEZXZpY2VzUmVzcG9uc2USLQoHZGV2aWNlcxgBIAMoCzIcLmR4b3MuY2xpZW50LnNlcnZpY2VzLkRldmljZSKqAQoHQ29udGFjdBIpCgtpZGVudGl0eUtleRgCIAEoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXkSPAoHcHJvZmlsZRgBIAEoCzImLmR4b3MuaGFsby5jcmVkZW50aWFscy5Qcm9maWxlRG9jdW1lbnRIAIgBARIqCgxjb21tb25TcGFjZXMYAyADKAsyFC5keG9zLmtleXMuUHVibGljS2V5QgoKCF9wcm9maWxlIj4KC0NvbnRhY3RCb29rEi8KCGNvbnRhY3RzGAEgAygLMh0uZHhvcy5jbGllbnQuc2VydmljZXMuQ29udGFjdCKWAgoLU3BhY2VNZW1iZXISMAoIaWRlbnRpdHkYASABKAsyHi5keG9zLmNsaWVudC5zZXJ2aWNlcy5JZGVudGl0eRJBCghwcmVzZW5jZRgCIAEoDjIvLmR4b3MuY2xpZW50LnNlcnZpY2VzLlNwYWNlTWVtYmVyLlByZXNlbmNlU3RhdGUSMQoKcGVlclN0YXRlcxgDIAMoCzIdLmR4b3MubWVzaC5wcmVzZW5jZS5QZWVyU3RhdGUSNQoEcm9sZRgEIAEoDjInLmR4b3MuaGFsby5jcmVkZW50aWFscy5TcGFjZU1lbWJlci5Sb2xlIigKDVByZXNlbmNlU3RhdGUSCwoHT0ZGTElORRAAEgoKBk9OTElORRABIuYSCgVTcGFjZRIKCgJpZBgFIAEoCRInCglzcGFjZV9rZXkYASABKAsyFC5keG9zLmtleXMuUHVibGljS2V5Ei8KBXN0YXRlGAIgASgOMiAuZHhvcy5jbGllbnQuc2VydmljZXMuU3BhY2VTdGF0ZRJACghwaXBlbGluZRgDIAEoCzIpLmR4b3MuY2xpZW50LnNlcnZpY2VzLlNwYWNlLlBpcGVsaW5lU3RhdGVIAIgBARIlCgVlcnJvchgEIAEoCzIRLmR4b3MuZXJyb3IuRXJyb3JIAYgBARJJChBlZGdlX3JlcGxpY2F0aW9uGAYgASgOMiouZHhvcy5lY2hvLm1ldGFkYXRhLkVkZ2VSZXBsaWNhdGlvblNldHRpbmdIAogBARIyCgdtZW1iZXJzGAogAygLMiEuZHhvcy5jbGllbnQuc2VydmljZXMuU3BhY2VNZW1iZXISKgoHY3JlYXRvchgLIAEoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXlIA4gBARIyCgVjYWNoZRgUIAEoCzIeLmR4b3MuZWNoby5tZXRhZGF0YS5TcGFjZUNhY2hlSASIAQESNAoHbWV0cmljcxgVIAEoCzIjLmR4b3MuY2xpZW50LnNlcnZpY2VzLlNwYWNlLk1ldHJpY3Ma1wMKB01ldHJpY3MSLQoEb3BlbhgBIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAIgBARI8ChNwaXBlbGluZV9pbml0X2JlZ2luGAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgBiAEBEj8KFmNvbnRyb2xfcGlwZWxpbmVfcmVhZHkYAyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAKIAQESOwoSZGF0YV9waXBlbGluZV9vcGVuGAQgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgDiAEBEjwKE2RhdGFfcGlwZWxpbmVfcmVhZHkYBSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSASIAQESLgoFcmVhZHkYBiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAWIAQFCBwoFX29wZW5CFgoUX3BpcGVsaW5lX2luaXRfYmVnaW5CGQoXX2NvbnRyb2xfcGlwZWxpbmVfcmVhZHlCFQoTX2RhdGFfcGlwZWxpbmVfb3BlbkIWChRfZGF0YV9waXBlbGluZV9yZWFkeUIICgZfcmVhZHka3AoKDVBpcGVsaW5lU3RhdGUSMwoQY29udHJvbF9mZWVkX2tleRgBIAEoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXlIAIgBARIwCg1kYXRhX2ZlZWRfa2V5GAIgASgLMhQuZHhvcy5rZXlzLlB1YmxpY0tleUgBiAEBEisKDWNvbnRyb2xfZmVlZHMYEiADKAsyFC5keG9zLmtleXMuUHVibGljS2V5EigKCmRhdGFfZmVlZHMYEyADKAsyFC5keG9zLmtleXMuUHVibGljS2V5Ej0KDWN1cnJlbnRfZXBvY2gYFCABKAsyIS5keG9zLmhhbG8uY3JlZGVudGlhbHMuQ3JlZGVudGlhbEgCiAEBEj0KDWFwcGxpZWRfZXBvY2gYFSABKAsyIS5keG9zLmhhbG8uY3JlZGVudGlhbHMuQ3JlZGVudGlhbEgDiAEBEkwKGWN1cnJlbnRfY29udHJvbF90aW1lZnJhbWUYCiABKAsyJC5keG9zLmVjaG8udGltZWZyYW1lLlRpbWVmcmFtZVZlY3RvckgEiAEBEksKGHRhcmdldF9jb250cm9sX3RpbWVmcmFtZRgLIAEoCzIkLmR4b3MuZWNoby50aW1lZnJhbWUuVGltZWZyYW1lVmVjdG9ySAWIAQESSgoXdG90YWxfY29udHJvbF90aW1lZnJhbWUYDiABKAsyJC5keG9zLmVjaG8udGltZWZyYW1lLlRpbWVmcmFtZVZlY3RvckgGiAEBEkoKF2tub3duX2NvbnRyb2xfdGltZWZyYW1lGA8gASgLMiQuZHhvcy5lY2hvLnRpbWVmcmFtZS5UaW1lZnJhbWVWZWN0b3JIB4gBARJHChRzdGFydF9kYXRhX3RpbWVmcmFtZRhkIAEoCzIkLmR4b3MuZWNoby50aW1lZnJhbWUuVGltZWZyYW1lVmVjdG9ySAiIAQESSQoWY3VycmVudF9kYXRhX3RpbWVmcmFtZRgMIAEoCzIkLmR4b3MuZWNoby50aW1lZnJhbWUuVGltZWZyYW1lVmVjdG9ySAmIAQESSAoVdGFyZ2V0X2RhdGFfdGltZWZyYW1lGA0gASgLMiQuZHhvcy5lY2hvLnRpbWVmcmFtZS5UaW1lZnJhbWVWZWN0b3JICogBARJHChR0b3RhbF9kYXRhX3RpbWVmcmFtZRgQIAEoCzIkLmR4b3MuZWNoby50aW1lZnJhbWUuVGltZWZyYW1lVmVjdG9ySAuIAQESRwoUa25vd25fZGF0YV90aW1lZnJhbWUYESABKAsyJC5keG9zLmVjaG8udGltZWZyYW1lLlRpbWVmcmFtZVZlY3RvckgMiAEBEhsKDnNwYWNlX3Jvb3RfdXJsGBYgASgJSA2IAQFCEwoRX2NvbnRyb2xfZmVlZF9rZXlCEAoOX2RhdGFfZmVlZF9rZXlCEAoOX2N1cnJlbnRfZXBvY2hCEAoOX2FwcGxpZWRfZXBvY2hCHAoaX2N1cnJlbnRfY29udHJvbF90aW1lZnJhbWVCGwoZX3RhcmdldF9jb250cm9sX3RpbWVmcmFtZUIaChhfdG90YWxfY29udHJvbF90aW1lZnJhbWVCGgoYX2tub3duX2NvbnRyb2xfdGltZWZyYW1lQhcKFV9zdGFydF9kYXRhX3RpbWVmcmFtZUIZChdfY3VycmVudF9kYXRhX3RpbWVmcmFtZUIYChZfdGFyZ2V0X2RhdGFfdGltZWZyYW1lQhcKFV90b3RhbF9kYXRhX3RpbWVmcmFtZUIXChVfa25vd25fZGF0YV90aW1lZnJhbWVCEQoPX3NwYWNlX3Jvb3RfdXJsQgsKCV9waXBlbGluZUIICgZfZXJyb3JCEwoRX2VkZ2VfcmVwbGljYXRpb25CCgoIX2NyZWF0b3JCCAoGX2NhY2hlIt0BChJVcGRhdGVTcGFjZVJlcXVlc3QSJwoJc3BhY2Vfa2V5GAEgASgLMhQuZHhvcy5rZXlzLlB1YmxpY0tleRI0CgVzdGF0ZRgCIAEoDjIgLmR4b3MuY2xpZW50LnNlcnZpY2VzLlNwYWNlU3RhdGVIAIgBARJJChBlZGdlX3JlcGxpY2F0aW9uGAMgASgOMiouZHhvcy5lY2hvLm1ldGFkYXRhLkVkZ2VSZXBsaWNhdGlvblNldHRpbmdIAYgBAUIICgZfc3RhdGVCEwoRX2VkZ2VfcmVwbGljYXRpb24iQgoTUXVlcnlTcGFjZXNSZXNwb25zZRIrCgZzcGFjZXMYASADKAsyGy5keG9zLmNsaWVudC5zZXJ2aWNlcy5TcGFjZSJ1ChJQb3N0TWVzc2FnZVJlcXVlc3QSJwoJc3BhY2Vfa2V5GAEgASgLMhQuZHhvcy5rZXlzLlB1YmxpY0tleRIPCgdjaGFubmVsGAIgASgJEiUKB21lc3NhZ2UYAyABKAsyFC5nb29nbGUucHJvdG9idWYuQW55IlQKGFN1YnNjcmliZU1lc3NhZ2VzUmVxdWVzdBInCglzcGFjZV9rZXkYASABKAsyFC5keG9zLmtleXMuUHVibGljS2V5Eg8KB2NoYW5uZWwYAiABKAkiegoXV3JpdGVDcmVkZW50aWFsc1JlcXVlc3QSJwoJc3BhY2Vfa2V5GAEgASgLMhQuZHhvcy5rZXlzLlB1YmxpY0tleRI2CgtjcmVkZW50aWFscxgCIAMoCzIhLmR4b3MuaGFsby5jcmVkZW50aWFscy5DcmVkZW50aWFsImQKF1F1ZXJ5Q3JlZGVudGlhbHNSZXF1ZXN0EicKCXNwYWNlX2tleRgBIAEoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXkSFAoHbm9fdGFpbBgCIAEoCEgAiAEBQgoKCF9ub190YWlsIvUCChJDcmVhdGVFcG9jaFJlcXVlc3QSJwoJc3BhY2Vfa2V5GAEgASgLMhQuZHhvcy5rZXlzLlB1YmxpY0tleRJKCgltaWdyYXRpb24YAiABKA4yMi5keG9zLmNsaWVudC5zZXJ2aWNlcy5DcmVhdGVFcG9jaFJlcXVlc3QuTWlncmF0aW9uSACIAQESHwoSYXV0b21lcmdlX3Jvb3RfdXJsGAMgASgJSAGIAQEiowEKCU1pZ3JhdGlvbhIICgROT05FEAASEgoOSU5JVF9BVVRPTUVSR0UQARIgChxQUlVORV9BVVRPTUVSR0VfUk9PVF9ISVNUT1JZEAISGwoXRlJBR01FTlRfQVVUT01FUkdFX1JPT1QQAxIaChZSRVBMQUNFX0FVVE9NRVJHRV9ST09UEAQSHQoZTUlHUkFURV9SRUZFUkVOQ0VTX1RPX0RYThAFQgwKCl9taWdyYXRpb25CFQoTX2F1dG9tZXJnZV9yb290X3VybCLIAQoTQ3JlYXRlRXBvY2hSZXNwb25zZRJAChBlcG9jaF9jcmVkZW50aWFsGAEgASgLMiEuZHhvcy5oYWxvLmNyZWRlbnRpYWxzLkNyZWRlbnRpYWxIAIgBARJEChFjb250cm9sX3RpbWVmcmFtZRgCIAEoCzIkLmR4b3MuZWNoby50aW1lZnJhbWUuVGltZWZyYW1lVmVjdG9ySAGIAQFCEwoRX2Vwb2NoX2NyZWRlbnRpYWxCFAoSX2NvbnRyb2xfdGltZWZyYW1lIqcBChdVcGRhdGVNZW1iZXJSb2xlUmVxdWVzdBInCglzcGFjZV9rZXkYASABKAsyFC5keG9zLmtleXMuUHVibGljS2V5EigKCm1lbWJlcl9rZXkYAiABKAsyFC5keG9zLmtleXMuUHVibGljS2V5EjkKCG5ld19yb2xlGAMgASgOMicuZHhvcy5oYWxvLmNyZWRlbnRpYWxzLlNwYWNlTWVtYmVyLlJvbGUipQEKE0FkbWl0Q29udGFjdFJlcXVlc3QSLgoHY29udGFjdBgBIAEoCzIdLmR4b3MuY2xpZW50LnNlcnZpY2VzLkNvbnRhY3QSNQoEcm9sZRgCIAEoDjInLmR4b3MuaGFsby5jcmVkZW50aWFscy5TcGFjZU1lbWJlci5Sb2xlEicKCXNwYWNlX2tleRgDIAEoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXkiSQoQQ29udGFjdEFkbWlzc2lvbhI1CgpjcmVkZW50aWFsGAEgASgLMiEuZHhvcy5oYWxvLmNyZWRlbnRpYWxzLkNyZWRlbnRpYWwiPwoRSm9pblNwYWNlUmVzcG9uc2USKgoFc3BhY2UYASABKAsyGy5keG9zLmNsaWVudC5zZXJ2aWNlcy5TcGFjZSJAChVKb2luQnlTcGFjZUtleVJlcXVlc3QSJwoJc3BhY2Vfa2V5GAEgASgLMhQuZHhvcy5rZXlzLlB1YmxpY0tleSKtAQoXQWNjZXB0SW52aXRhdGlvblJlcXVlc3QSNAoKaW52aXRhdGlvbhgBIAEoCzIgLmR4b3MuY2xpZW50LnNlcnZpY2VzLkludml0YXRpb24SSQoOZGV2aWNlX3Byb2ZpbGUYAiABKAsyLC5keG9zLmhhbG8uY3JlZGVudGlhbHMuRGV2aWNlUHJvZmlsZURvY3VtZW50SACIAQFCEQoPX2RldmljZV9wcm9maWxlIkEKFUF1dGhlbnRpY2F0aW9uUmVxdWVzdBIVCg1pbnZpdGF0aW9uX2lkGAEgASgJEhEKCWF1dGhfY29kZRgCIAEoCSIwChdDYW5jZWxJbnZpdGF0aW9uUmVxdWVzdBIVCg1pbnZpdGF0aW9uX2lkGAEgASgJIoUBChBJbnZpdGF0aW9uTWV0aG9kEjMKB2NyZWF0ZWQYASABKAsyIC5keG9zLmNsaWVudC5zZXJ2aWNlcy5JbnZpdGF0aW9uSAASNAoIYWNjZXB0ZWQYAiABKAsyIC5keG9zLmNsaWVudC5zZXJ2aWNlcy5JbnZpdGF0aW9uSABCBgoEa2luZCLiAgoYUXVlcnlJbnZpdGF0aW9uc1Jlc3BvbnNlEkUKBmFjdGlvbhgBIAEoDjI1LmR4b3MuY2xpZW50LnNlcnZpY2VzLlF1ZXJ5SW52aXRhdGlvbnNSZXNwb25zZS5BY3Rpb24SQQoEdHlwZRgCIAEoDjIzLmR4b3MuY2xpZW50LnNlcnZpY2VzLlF1ZXJ5SW52aXRhdGlvbnNSZXNwb25zZS5UeXBlEjUKC2ludml0YXRpb25zGAMgAygLMiAuZHhvcy5jbGllbnQuc2VydmljZXMuSW52aXRhdGlvbhIVCghleGlzdGluZxgEIAEoCEgAiAEBIj4KBkFjdGlvbhIJCgVBRERFRBAAEgsKB1JFTU9WRUQQARIJCgVTQVZFRBACEhEKDUxPQURfQ09NUExFVEUQAyIhCgRUeXBlEgsKB0NSRUFURUQQABIMCghBQ0NFUFRFRBABQgsKCV9leGlzdGluZyJaCiFMb2FkUGVyc2lzdGVudEludml0YXRpb25zUmVzcG9uc2USNQoLaW52aXRhdGlvbnMYASADKAsyIC5keG9zLmNsaWVudC5zZXJ2aWNlcy5JbnZpdGF0aW9uIoUCCg1OZXR3b3JrU3RhdHVzEjQKBXN3YXJtGAEgASgOMiUuZHhvcy5jbGllbnQuc2VydmljZXMuQ29ubmVjdGlvblN0YXRlEj0KCXNpZ25hbGluZxgCIAMoCzIqLmR4b3MuY2xpZW50LnNlcnZpY2VzLk5ldHdvcmtTdGF0dXMuU2lnbmFsEjcKD2Nvbm5lY3Rpb25faW5mbxgDIAMoCzIeLmR4b3MuZGV2dG9vbHMuc3dhcm0uU3dhcm1JbmZvGkYKBlNpZ25hbBIOCgZzZXJ2ZXIYASABKAkSLAoFc3RhdGUYAiABKA4yHS5keG9zLm1lc2guc2lnbmFsLlNpZ25hbFN0YXRlIksKE1VwZGF0ZUNvbmZpZ1JlcXVlc3QSNAoFc3dhcm0YASABKA4yJS5keG9zLmNsaWVudC5zZXJ2aWNlcy5Db25uZWN0aW9uU3RhdGUiQQoaU3Vic2NyaWJlU3dhcm1TdGF0ZVJlcXVlc3QSIwoFdG9waWMYASABKAsyFC5keG9zLmtleXMuUHVibGljS2V5IpMBChdRdWVyeUVkZ2VTdGF0dXNSZXNwb25zZRJICgZzdGF0dXMYASABKA4yOC5keG9zLmNsaWVudC5zZXJ2aWNlcy5RdWVyeUVkZ2VTdGF0dXNSZXNwb25zZS5FZGdlU3RhdHVzIi4KCkVkZ2VTdGF0dXMSEQoNTk9UX0NPTk5FQ1RFRBAAEg0KCUNPTk5FQ1RFRBABIqsBChhRdWVyeUFnZW50U3RhdHVzUmVzcG9uc2USSgoGc3RhdHVzGAEgASgOMjouZHhvcy5jbGllbnQuc2VydmljZXMuUXVlcnlBZ2VudFN0YXR1c1Jlc3BvbnNlLkFnZW50U3RhdHVzIkMKC0FnZW50U3RhdHVzEgsKB1VOS05PV04QABIKCgZBQ1RJVkUQARIMCghJTkFDVElWRRACEg0KCU5PVF9GT1VORBADKigKDFN5c3RlbVN0YXR1cxIMCghJTkFDVElWRRAAEgoKBkFDVElWRRABKiYKCkRldmljZUtpbmQSCwoHQ1VSUkVOVBAAEgsKB1RSVVNURUQQASoqCg9Db25uZWN0aW9uU3RhdGUSCwoHT0ZGTElORRAAEgoKBk9OTElORRABMu8DCg1TeXN0ZW1TZXJ2aWNlEjgKCUdldENvbmZpZxIWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRoTLmR4b3MuY29uZmlnLkNvbmZpZxJrCg5HZXREaWFnbm9zdGljcxIrLmR4b3MuY2xpZW50LnNlcnZpY2VzLkdldERpYWdub3N0aWNzUmVxdWVzdBosLmR4b3MuY2xpZW50LnNlcnZpY2VzLkdldERpYWdub3N0aWNzUmVzcG9uc2USUQoMVXBkYXRlU3RhdHVzEikuZHhvcy5jbGllbnQuc2VydmljZXMuVXBkYXRlU3RhdHVzUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRJkCgtRdWVyeVN0YXR1cxIoLmR4b3MuY2xpZW50LnNlcnZpY2VzLlF1ZXJ5U3RhdHVzUmVxdWVzdBopLmR4b3MuY2xpZW50LnNlcnZpY2VzLlF1ZXJ5U3RhdHVzUmVzcG9uc2UwARI3CgVSZXNldBIWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRJFCgtHZXRQbGF0Zm9ybRIWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRoeLmR4b3MuY2xpZW50LnNlcnZpY2VzLlBsYXRmb3JtMrUGCg9JZGVudGl0eVNlcnZpY2USXQoOQ3JlYXRlSWRlbnRpdHkSKy5keG9zLmNsaWVudC5zZXJ2aWNlcy5DcmVhdGVJZGVudGl0eVJlcXVlc3QaHi5keG9zLmNsaWVudC5zZXJ2aWNlcy5JZGVudGl0eRJqChhSZXF1ZXN0UmVjb3ZlcnlDaGFsbGVuZ2USFi5nb29nbGUucHJvdG9idWYuRW1wdHkaNi5keG9zLmNsaWVudC5zZXJ2aWNlcy5SZXF1ZXN0UmVjb3ZlcnlDaGFsbGVuZ2VSZXNwb25zZRJfCg9SZWNvdmVySWRlbnRpdHkSLC5keG9zLmNsaWVudC5zZXJ2aWNlcy5SZWNvdmVySWRlbnRpdHlSZXF1ZXN0Gh4uZHhvcy5jbGllbnQuc2VydmljZXMuSWRlbnRpdHkSiQEKGENyZWF0ZVJlY292ZXJ5Q3JlZGVudGlhbBI1LmR4b3MuY2xpZW50LnNlcnZpY2VzLkNyZWF0ZVJlY292ZXJ5Q3JlZGVudGlhbFJlcXVlc3QaNi5keG9zLmNsaWVudC5zZXJ2aWNlcy5DcmVhdGVSZWNvdmVyeUNyZWRlbnRpYWxSZXNwb25zZRJWCg1RdWVyeUlkZW50aXR5EhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5GisuZHhvcy5jbGllbnQuc2VydmljZXMuUXVlcnlJZGVudGl0eVJlc3BvbnNlMAESVwoNVXBkYXRlUHJvZmlsZRImLmR4b3MuaGFsby5jcmVkZW50aWFscy5Qcm9maWxlRG9jdW1lbnQaHi5keG9zLmNsaWVudC5zZXJ2aWNlcy5JZGVudGl0eRJmChBTaWduUHJlc2VudGF0aW9uEi0uZHhvcy5jbGllbnQuc2VydmljZXMuU2lnblByZXNlbnRhdGlvblJlcXVlc3QaIy5keG9zLmhhbG8uY3JlZGVudGlhbHMuUHJlc2VudGF0aW9uElEKFENyZWF0ZUF1dGhDcmVkZW50aWFsEhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5GiEuZHhvcy5oYWxvLmNyZWRlbnRpYWxzLkNyZWRlbnRpYWwywgEKDkRldmljZXNTZXJ2aWNlEloKDFVwZGF0ZURldmljZRIsLmR4b3MuaGFsby5jcmVkZW50aWFscy5EZXZpY2VQcm9maWxlRG9jdW1lbnQaHC5keG9zLmNsaWVudC5zZXJ2aWNlcy5EZXZpY2USVAoMUXVlcnlEZXZpY2VzEhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5GiouZHhvcy5jbGllbnQuc2VydmljZXMuUXVlcnlEZXZpY2VzUmVzcG9uc2UwATKpAQoPQ29udGFjdHNTZXJ2aWNlEkgKC0dldENvbnRhY3RzEhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5GiEuZHhvcy5jbGllbnQuc2VydmljZXMuQ29udGFjdEJvb2sSTAoNUXVlcnlDb250YWN0cxIWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRohLmR4b3MuY2xpZW50LnNlcnZpY2VzLkNvbnRhY3RCb29rMAEy9wcKDVNwYWNlc1NlcnZpY2USQgoLQ3JlYXRlU3BhY2USFi5nb29nbGUucHJvdG9idWYuRW1wdHkaGy5keG9zLmNsaWVudC5zZXJ2aWNlcy5TcGFjZRJPCgtVcGRhdGVTcGFjZRIoLmR4b3MuY2xpZW50LnNlcnZpY2VzLlVwZGF0ZVNwYWNlUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRJSCgtRdWVyeVNwYWNlcxIWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRopLmR4b3MuY2xpZW50LnNlcnZpY2VzLlF1ZXJ5U3BhY2VzUmVzcG9uc2UwARJZChBVcGRhdGVNZW1iZXJSb2xlEi0uZHhvcy5jbGllbnQuc2VydmljZXMuVXBkYXRlTWVtYmVyUm9sZVJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkSUQoMQWRtaXRDb250YWN0EikuZHhvcy5jbGllbnQuc2VydmljZXMuQWRtaXRDb250YWN0UmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRJmCg5Kb2luQnlTcGFjZUtleRIrLmR4b3MuY2xpZW50LnNlcnZpY2VzLkpvaW5CeVNwYWNlS2V5UmVxdWVzdBonLmR4b3MuY2xpZW50LnNlcnZpY2VzLkpvaW5TcGFjZVJlc3BvbnNlEk8KC1Bvc3RNZXNzYWdlEiguZHhvcy5jbGllbnQuc2VydmljZXMuUG9zdE1lc3NhZ2VSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5Em8KEVN1YnNjcmliZU1lc3NhZ2VzEi4uZHhvcy5jbGllbnQuc2VydmljZXMuU3Vic2NyaWJlTWVzc2FnZXNSZXF1ZXN0GiguZHhvcy5tZXNoLnRlbGVwb3J0Lmdvc3NpcC5Hb3NzaXBNZXNzYWdlMAESWQoQV3JpdGVDcmVkZW50aWFscxItLmR4b3MuY2xpZW50LnNlcnZpY2VzLldyaXRlQ3JlZGVudGlhbHNSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5EmYKEFF1ZXJ5Q3JlZGVudGlhbHMSLS5keG9zLmNsaWVudC5zZXJ2aWNlcy5RdWVyeUNyZWRlbnRpYWxzUmVxdWVzdBohLmR4b3MuaGFsby5jcmVkZW50aWFscy5DcmVkZW50aWFsMAESYgoLQ3JlYXRlRXBvY2gSKC5keG9zLmNsaWVudC5zZXJ2aWNlcy5DcmVhdGVFcG9jaFJlcXVlc3QaKS5keG9zLmNsaWVudC5zZXJ2aWNlcy5DcmVhdGVFcG9jaFJlc3BvbnNlMuMDChJJbnZpdGF0aW9uc1NlcnZpY2USWAoQQ3JlYXRlSW52aXRhdGlvbhIgLmR4b3MuY2xpZW50LnNlcnZpY2VzLkludml0YXRpb24aIC5keG9zLmNsaWVudC5zZXJ2aWNlcy5JbnZpdGF0aW9uMAESZQoQQWNjZXB0SW52aXRhdGlvbhItLmR4b3MuY2xpZW50LnNlcnZpY2VzLkFjY2VwdEludml0YXRpb25SZXF1ZXN0GiAuZHhvcy5jbGllbnQuc2VydmljZXMuSW52aXRhdGlvbjABElMKDEF1dGhlbnRpY2F0ZRIrLmR4b3MuY2xpZW50LnNlcnZpY2VzLkF1dGhlbnRpY2F0aW9uUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRJZChBDYW5jZWxJbnZpdGF0aW9uEi0uZHhvcy5jbGllbnQuc2VydmljZXMuQ2FuY2VsSW52aXRhdGlvblJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkSXAoQUXVlcnlJbnZpdGF0aW9ucxIWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRouLmR4b3MuY2xpZW50LnNlcnZpY2VzLlF1ZXJ5SW52aXRhdGlvbnNSZXNwb25zZTABMrkECg5OZXR3b3JrU2VydmljZRJRCgxVcGRhdGVDb25maWcSKS5keG9zLmNsaWVudC5zZXJ2aWNlcy5VcGRhdGVDb25maWdSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5EkwKC1F1ZXJ5U3RhdHVzEhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5GiMuZHhvcy5jbGllbnQuc2VydmljZXMuTmV0d29ya1N0YXR1czABEkIKCUpvaW5Td2FybRIdLmR4b3MuZWRnZS5zaWduYWwuSm9pblJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkSRAoKTGVhdmVTd2FybRIeLmR4b3MuZWRnZS5zaWduYWwuTGVhdmVSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5Em0KE1N1YnNjcmliZVN3YXJtU3RhdGUSMC5keG9zLmNsaWVudC5zZXJ2aWNlcy5TdWJzY3JpYmVTd2FybVN0YXRlUmVxdWVzdBoiLmR4b3MuZWRnZS5tZXNzZW5nZXIuU3dhcm1SZXNwb25zZTABEkAKC1NlbmRNZXNzYWdlEhkuZHhvcy5lZGdlLnNpZ25hbC5NZXNzYWdlGhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5EksKEVN1YnNjcmliZU1lc3NhZ2VzEhkuZHhvcy5lZGdlLm1lc3Nlbmdlci5QZWVyGhkuZHhvcy5lZGdlLnNpZ25hbC5NZXNzYWdlMAEyiwIKEEVkZ2VBZ2VudFNlcnZpY2USWgoPUXVlcnlFZGdlU3RhdHVzEhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5Gi0uZHhvcy5jbGllbnQuc2VydmljZXMuUXVlcnlFZGdlU3RhdHVzUmVzcG9uc2UwARI9CgtDcmVhdGVBZ2VudBIWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRJcChBRdWVyeUFnZW50U3RhdHVzEhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5Gi4uZHhvcy5jbGllbnQuc2VydmljZXMuUXVlcnlBZ2VudFN0YXR1c1Jlc3BvbnNlMAFiBnByb3RvMw", [file_google_protobuf_any, file_google_protobuf_empty, file_google_protobuf_struct, file_google_protobuf_timestamp, file_dxos_client_invitation, file_dxos_config, file_dxos_devtools_swarm, file_dxos_echo_metadata, file_dxos_echo_timeframe, file_dxos_edge_messenger, file_dxos_edge_signal, file_dxos_error, file_dxos_halo_credentials, file_dxos_keys, file_dxos_mesh_signal, file_dxos_mesh_presence, file_dxos_mesh_teleport_gossip, file_dxos_value]);
49
49
 
50
50
  /**
51
51
  * @generated from message dxos.client.services.UpdateStatusRequest
@@ -253,6 +253,11 @@ export const Platform_PLATFORM_TYPESchema: GenEnum<Platform_PLATFORM_TYPE> = /*@
253
253
  * @generated from message dxos.client.services.Identity
254
254
  */
255
255
  export type Identity = Message<"dxos.client.services.Identity"> & {
256
+ /**
257
+ * @generated from field: string did = 4;
258
+ */
259
+ did: string;
260
+
256
261
  /**
257
262
  * @generated from field: dxos.keys.PublicKey identity_key = 1;
258
263
  */
@@ -276,14 +281,53 @@ export type Identity = Message<"dxos.client.services.Identity"> & {
276
281
  export const IdentitySchema: GenMessage<Identity> = /*@__PURE__*/
277
282
  messageDesc(file_dxos_client_services, 6);
278
283
 
284
+ /**
285
+ * @generated from message dxos.client.services.RequestRecoveryChallengeResponse
286
+ */
287
+ export type RequestRecoveryChallengeResponse = Message<"dxos.client.services.RequestRecoveryChallengeResponse"> & {
288
+ /**
289
+ * @generated from field: dxos.keys.PublicKey device_key = 1;
290
+ */
291
+ deviceKey?: PublicKey;
292
+
293
+ /**
294
+ * @generated from field: dxos.keys.PublicKey control_feed_key = 2;
295
+ */
296
+ controlFeedKey?: PublicKey;
297
+
298
+ /**
299
+ * @generated from field: string challenge = 3;
300
+ */
301
+ challenge: string;
302
+ };
303
+
304
+ /**
305
+ * Describes the message dxos.client.services.RequestRecoveryChallengeResponse.
306
+ * Use `create(RequestRecoveryChallengeResponseSchema)` to create a new message.
307
+ */
308
+ export const RequestRecoveryChallengeResponseSchema: GenMessage<RequestRecoveryChallengeResponse> = /*@__PURE__*/
309
+ messageDesc(file_dxos_client_services, 7);
310
+
279
311
  /**
280
312
  * @generated from message dxos.client.services.RecoverIdentityRequest
281
313
  */
282
314
  export type RecoverIdentityRequest = Message<"dxos.client.services.RecoverIdentityRequest"> & {
283
315
  /**
284
- * @generated from field: string seedphrase = 1;
316
+ * @generated from oneof dxos.client.services.RecoverIdentityRequest.request
285
317
  */
286
- seedphrase: string;
318
+ request: {
319
+ /**
320
+ * @generated from field: string recovery_code = 1;
321
+ */
322
+ value: string;
323
+ case: "recoveryCode";
324
+ } | {
325
+ /**
326
+ * @generated from field: dxos.client.services.RecoverIdentityRequest.ExternalSignature external = 2;
327
+ */
328
+ value: RecoverIdentityRequest_ExternalSignature;
329
+ case: "external";
330
+ } | { case: undefined; value?: undefined };
287
331
  };
288
332
 
289
333
  /**
@@ -291,24 +335,92 @@ export type RecoverIdentityRequest = Message<"dxos.client.services.RecoverIdenti
291
335
  * Use `create(RecoverIdentityRequestSchema)` to create a new message.
292
336
  */
293
337
  export const RecoverIdentityRequestSchema: GenMessage<RecoverIdentityRequest> = /*@__PURE__*/
294
- messageDesc(file_dxos_client_services, 7);
338
+ messageDesc(file_dxos_client_services, 8);
339
+
340
+ /**
341
+ * @generated from message dxos.client.services.RecoverIdentityRequest.ExternalSignature
342
+ */
343
+ export type RecoverIdentityRequest_ExternalSignature = Message<"dxos.client.services.RecoverIdentityRequest.ExternalSignature"> & {
344
+ /**
345
+ * @generated from field: string identity_did = 1;
346
+ */
347
+ identityDid: string;
348
+
349
+ /**
350
+ * @generated from field: dxos.keys.PublicKey device_key = 2;
351
+ */
352
+ deviceKey?: PublicKey;
353
+
354
+ /**
355
+ * @generated from field: dxos.keys.PublicKey control_feed_key = 3;
356
+ */
357
+ controlFeedKey?: PublicKey;
358
+
359
+ /**
360
+ * @generated from field: bytes signature = 4;
361
+ */
362
+ signature: Uint8Array;
363
+
364
+ /**
365
+ * @generated from field: optional bytes client_data_json = 5;
366
+ */
367
+ clientDataJson?: Uint8Array;
368
+
369
+ /**
370
+ * @generated from field: optional bytes authenticator_data = 6;
371
+ */
372
+ authenticatorData?: Uint8Array;
373
+ };
374
+
375
+ /**
376
+ * Describes the message dxos.client.services.RecoverIdentityRequest.ExternalSignature.
377
+ * Use `create(RecoverIdentityRequest_ExternalSignatureSchema)` to create a new message.
378
+ */
379
+ export const RecoverIdentityRequest_ExternalSignatureSchema: GenMessage<RecoverIdentityRequest_ExternalSignature> = /*@__PURE__*/
380
+ messageDesc(file_dxos_client_services, 8, 0);
295
381
 
296
382
  /**
297
- * @generated from message dxos.client.services.CreateRecoveryPhraseResponse
383
+ * @generated from message dxos.client.services.CreateRecoveryCredentialRequest
298
384
  */
299
- export type CreateRecoveryPhraseResponse = Message<"dxos.client.services.CreateRecoveryPhraseResponse"> & {
385
+ export type CreateRecoveryCredentialRequest = Message<"dxos.client.services.CreateRecoveryCredentialRequest"> & {
300
386
  /**
301
- * @generated from field: string seedphrase = 1;
387
+ * / Optional recovery key. If not provided, a new key will be generated.
388
+ *
389
+ * @generated from field: optional dxos.keys.PublicKey recovery_key = 1;
302
390
  */
303
- seedphrase: string;
391
+ recoveryKey?: PublicKey;
392
+
393
+ /**
394
+ * / Algorithm used to generate the recovery key.
395
+ *
396
+ * @generated from field: optional int32 algorithm = 2;
397
+ */
398
+ algorithm?: number;
304
399
  };
305
400
 
306
401
  /**
307
- * Describes the message dxos.client.services.CreateRecoveryPhraseResponse.
308
- * Use `create(CreateRecoveryPhraseResponseSchema)` to create a new message.
402
+ * Describes the message dxos.client.services.CreateRecoveryCredentialRequest.
403
+ * Use `create(CreateRecoveryCredentialRequestSchema)` to create a new message.
309
404
  */
310
- export const CreateRecoveryPhraseResponseSchema: GenMessage<CreateRecoveryPhraseResponse> = /*@__PURE__*/
311
- messageDesc(file_dxos_client_services, 8);
405
+ export const CreateRecoveryCredentialRequestSchema: GenMessage<CreateRecoveryCredentialRequest> = /*@__PURE__*/
406
+ messageDesc(file_dxos_client_services, 9);
407
+
408
+ /**
409
+ * @generated from message dxos.client.services.CreateRecoveryCredentialResponse
410
+ */
411
+ export type CreateRecoveryCredentialResponse = Message<"dxos.client.services.CreateRecoveryCredentialResponse"> & {
412
+ /**
413
+ * @generated from field: optional string recovery_code = 1;
414
+ */
415
+ recoveryCode?: string;
416
+ };
417
+
418
+ /**
419
+ * Describes the message dxos.client.services.CreateRecoveryCredentialResponse.
420
+ * Use `create(CreateRecoveryCredentialResponseSchema)` to create a new message.
421
+ */
422
+ export const CreateRecoveryCredentialResponseSchema: GenMessage<CreateRecoveryCredentialResponse> = /*@__PURE__*/
423
+ messageDesc(file_dxos_client_services, 10);
312
424
 
313
425
  /**
314
426
  * @generated from message dxos.client.services.QueryIdentityResponse
@@ -325,7 +437,7 @@ export type QueryIdentityResponse = Message<"dxos.client.services.QueryIdentityR
325
437
  * Use `create(QueryIdentityResponseSchema)` to create a new message.
326
438
  */
327
439
  export const QueryIdentityResponseSchema: GenMessage<QueryIdentityResponse> = /*@__PURE__*/
328
- messageDesc(file_dxos_client_services, 9);
440
+ messageDesc(file_dxos_client_services, 11);
329
441
 
330
442
  /**
331
443
  * @generated from message dxos.client.services.SignPresentationRequest
@@ -347,7 +459,7 @@ export type SignPresentationRequest = Message<"dxos.client.services.SignPresenta
347
459
  * Use `create(SignPresentationRequestSchema)` to create a new message.
348
460
  */
349
461
  export const SignPresentationRequestSchema: GenMessage<SignPresentationRequest> = /*@__PURE__*/
350
- messageDesc(file_dxos_client_services, 10);
462
+ messageDesc(file_dxos_client_services, 12);
351
463
 
352
464
  /**
353
465
  * @generated from message dxos.client.services.CreateIdentityRequest
@@ -369,7 +481,7 @@ export type CreateIdentityRequest = Message<"dxos.client.services.CreateIdentity
369
481
  * Use `create(CreateIdentityRequestSchema)` to create a new message.
370
482
  */
371
483
  export const CreateIdentityRequestSchema: GenMessage<CreateIdentityRequest> = /*@__PURE__*/
372
- messageDesc(file_dxos_client_services, 11);
484
+ messageDesc(file_dxos_client_services, 13);
373
485
 
374
486
  /**
375
487
  * TODO(burdon): Preferences (in database).
@@ -403,7 +515,7 @@ export type Device = Message<"dxos.client.services.Device"> & {
403
515
  * Use `create(DeviceSchema)` to create a new message.
404
516
  */
405
517
  export const DeviceSchema: GenMessage<Device> = /*@__PURE__*/
406
- messageDesc(file_dxos_client_services, 12);
518
+ messageDesc(file_dxos_client_services, 14);
407
519
 
408
520
  /**
409
521
  * TODO(nf): dedupe?
@@ -431,7 +543,7 @@ export enum Device_PresenceState {
431
543
  * Describes the enum dxos.client.services.Device.PresenceState.
432
544
  */
433
545
  export const Device_PresenceStateSchema: GenEnum<Device_PresenceState> = /*@__PURE__*/
434
- enumDesc(file_dxos_client_services, 12, 0);
546
+ enumDesc(file_dxos_client_services, 14, 0);
435
547
 
436
548
  /**
437
549
  * @generated from message dxos.client.services.QueryDevicesResponse
@@ -448,7 +560,7 @@ export type QueryDevicesResponse = Message<"dxos.client.services.QueryDevicesRes
448
560
  * Use `create(QueryDevicesResponseSchema)` to create a new message.
449
561
  */
450
562
  export const QueryDevicesResponseSchema: GenMessage<QueryDevicesResponse> = /*@__PURE__*/
451
- messageDesc(file_dxos_client_services, 13);
563
+ messageDesc(file_dxos_client_services, 15);
452
564
 
453
565
  /**
454
566
  * @generated from message dxos.client.services.Contact
@@ -475,7 +587,7 @@ export type Contact = Message<"dxos.client.services.Contact"> & {
475
587
  * Use `create(ContactSchema)` to create a new message.
476
588
  */
477
589
  export const ContactSchema: GenMessage<Contact> = /*@__PURE__*/
478
- messageDesc(file_dxos_client_services, 14);
590
+ messageDesc(file_dxos_client_services, 16);
479
591
 
480
592
  /**
481
593
  * @generated from message dxos.client.services.ContactBook
@@ -492,7 +604,7 @@ export type ContactBook = Message<"dxos.client.services.ContactBook"> & {
492
604
  * Use `create(ContactBookSchema)` to create a new message.
493
605
  */
494
606
  export const ContactBookSchema: GenMessage<ContactBook> = /*@__PURE__*/
495
- messageDesc(file_dxos_client_services, 15);
607
+ messageDesc(file_dxos_client_services, 17);
496
608
 
497
609
  /**
498
610
  * @generated from message dxos.client.services.SpaceMember
@@ -524,7 +636,7 @@ export type SpaceMember = Message<"dxos.client.services.SpaceMember"> & {
524
636
  * Use `create(SpaceMemberSchema)` to create a new message.
525
637
  */
526
638
  export const SpaceMemberSchema: GenMessage<SpaceMember> = /*@__PURE__*/
527
- messageDesc(file_dxos_client_services, 16);
639
+ messageDesc(file_dxos_client_services, 18);
528
640
 
529
641
  /**
530
642
  * @generated from enum dxos.client.services.SpaceMember.PresenceState
@@ -545,7 +657,7 @@ export enum SpaceMember_PresenceState {
545
657
  * Describes the enum dxos.client.services.SpaceMember.PresenceState.
546
658
  */
547
659
  export const SpaceMember_PresenceStateSchema: GenEnum<SpaceMember_PresenceState> = /*@__PURE__*/
548
- enumDesc(file_dxos_client_services, 16, 0);
660
+ enumDesc(file_dxos_client_services, 18, 0);
549
661
 
550
662
  /**
551
663
  * TODO(burdon): Rename SpaceInfo?
@@ -609,7 +721,7 @@ export type Space = Message<"dxos.client.services.Space"> & {
609
721
  * Use `create(SpaceSchema)` to create a new message.
610
722
  */
611
723
  export const SpaceSchema: GenMessage<Space> = /*@__PURE__*/
612
- messageDesc(file_dxos_client_services, 17);
724
+ messageDesc(file_dxos_client_services, 19);
613
725
 
614
726
  /**
615
727
  * @generated from message dxos.client.services.Space.Metrics
@@ -651,7 +763,7 @@ export type Space_Metrics = Message<"dxos.client.services.Space.Metrics"> & {
651
763
  * Use `create(Space_MetricsSchema)` to create a new message.
652
764
  */
653
765
  export const Space_MetricsSchema: GenMessage<Space_Metrics> = /*@__PURE__*/
654
- messageDesc(file_dxos_client_services, 17, 0);
766
+ messageDesc(file_dxos_client_services, 19, 0);
655
767
 
656
768
  /**
657
769
  * TODO(dmaretskyi): Consider merging with space metadata records.
@@ -773,7 +885,7 @@ export type Space_PipelineState = Message<"dxos.client.services.Space.PipelineSt
773
885
  * Use `create(Space_PipelineStateSchema)` to create a new message.
774
886
  */
775
887
  export const Space_PipelineStateSchema: GenMessage<Space_PipelineState> = /*@__PURE__*/
776
- messageDesc(file_dxos_client_services, 17, 1);
888
+ messageDesc(file_dxos_client_services, 19, 1);
777
889
 
778
890
  /**
779
891
  * @generated from message dxos.client.services.UpdateSpaceRequest
@@ -802,7 +914,7 @@ export type UpdateSpaceRequest = Message<"dxos.client.services.UpdateSpaceReques
802
914
  * Use `create(UpdateSpaceRequestSchema)` to create a new message.
803
915
  */
804
916
  export const UpdateSpaceRequestSchema: GenMessage<UpdateSpaceRequest> = /*@__PURE__*/
805
- messageDesc(file_dxos_client_services, 18);
917
+ messageDesc(file_dxos_client_services, 20);
806
918
 
807
919
  /**
808
920
  * @generated from message dxos.client.services.QuerySpacesResponse
@@ -819,7 +931,7 @@ export type QuerySpacesResponse = Message<"dxos.client.services.QuerySpacesRespo
819
931
  * Use `create(QuerySpacesResponseSchema)` to create a new message.
820
932
  */
821
933
  export const QuerySpacesResponseSchema: GenMessage<QuerySpacesResponse> = /*@__PURE__*/
822
- messageDesc(file_dxos_client_services, 19);
934
+ messageDesc(file_dxos_client_services, 21);
823
935
 
824
936
  /**
825
937
  * @generated from message dxos.client.services.PostMessageRequest
@@ -846,7 +958,7 @@ export type PostMessageRequest = Message<"dxos.client.services.PostMessageReques
846
958
  * Use `create(PostMessageRequestSchema)` to create a new message.
847
959
  */
848
960
  export const PostMessageRequestSchema: GenMessage<PostMessageRequest> = /*@__PURE__*/
849
- messageDesc(file_dxos_client_services, 20);
961
+ messageDesc(file_dxos_client_services, 22);
850
962
 
851
963
  /**
852
964
  * @generated from message dxos.client.services.SubscribeMessagesRequest
@@ -868,7 +980,7 @@ export type SubscribeMessagesRequest = Message<"dxos.client.services.SubscribeMe
868
980
  * Use `create(SubscribeMessagesRequestSchema)` to create a new message.
869
981
  */
870
982
  export const SubscribeMessagesRequestSchema: GenMessage<SubscribeMessagesRequest> = /*@__PURE__*/
871
- messageDesc(file_dxos_client_services, 21);
983
+ messageDesc(file_dxos_client_services, 23);
872
984
 
873
985
  /**
874
986
  * @generated from message dxos.client.services.WriteCredentialsRequest
@@ -890,7 +1002,7 @@ export type WriteCredentialsRequest = Message<"dxos.client.services.WriteCredent
890
1002
  * Use `create(WriteCredentialsRequestSchema)` to create a new message.
891
1003
  */
892
1004
  export const WriteCredentialsRequestSchema: GenMessage<WriteCredentialsRequest> = /*@__PURE__*/
893
- messageDesc(file_dxos_client_services, 22);
1005
+ messageDesc(file_dxos_client_services, 24);
894
1006
 
895
1007
  /**
896
1008
  * @generated from message dxos.client.services.QueryCredentialsRequest
@@ -912,7 +1024,7 @@ export type QueryCredentialsRequest = Message<"dxos.client.services.QueryCredent
912
1024
  * Use `create(QueryCredentialsRequestSchema)` to create a new message.
913
1025
  */
914
1026
  export const QueryCredentialsRequestSchema: GenMessage<QueryCredentialsRequest> = /*@__PURE__*/
915
- messageDesc(file_dxos_client_services, 23);
1027
+ messageDesc(file_dxos_client_services, 25);
916
1028
 
917
1029
  /**
918
1030
  * @generated from message dxos.client.services.CreateEpochRequest
@@ -941,7 +1053,7 @@ export type CreateEpochRequest = Message<"dxos.client.services.CreateEpochReques
941
1053
  * Use `create(CreateEpochRequestSchema)` to create a new message.
942
1054
  */
943
1055
  export const CreateEpochRequestSchema: GenMessage<CreateEpochRequest> = /*@__PURE__*/
944
- messageDesc(file_dxos_client_services, 24);
1056
+ messageDesc(file_dxos_client_services, 26);
945
1057
 
946
1058
  /**
947
1059
  * @generated from enum dxos.client.services.CreateEpochRequest.Migration
@@ -992,7 +1104,7 @@ export enum CreateEpochRequest_Migration {
992
1104
  * Describes the enum dxos.client.services.CreateEpochRequest.Migration.
993
1105
  */
994
1106
  export const CreateEpochRequest_MigrationSchema: GenEnum<CreateEpochRequest_Migration> = /*@__PURE__*/
995
- enumDesc(file_dxos_client_services, 24, 0);
1107
+ enumDesc(file_dxos_client_services, 26, 0);
996
1108
 
997
1109
  /**
998
1110
  * @generated from message dxos.client.services.CreateEpochResponse
@@ -1018,7 +1130,7 @@ export type CreateEpochResponse = Message<"dxos.client.services.CreateEpochRespo
1018
1130
  * Use `create(CreateEpochResponseSchema)` to create a new message.
1019
1131
  */
1020
1132
  export const CreateEpochResponseSchema: GenMessage<CreateEpochResponse> = /*@__PURE__*/
1021
- messageDesc(file_dxos_client_services, 25);
1133
+ messageDesc(file_dxos_client_services, 27);
1022
1134
 
1023
1135
  /**
1024
1136
  * @generated from message dxos.client.services.UpdateMemberRoleRequest
@@ -1045,7 +1157,7 @@ export type UpdateMemberRoleRequest = Message<"dxos.client.services.UpdateMember
1045
1157
  * Use `create(UpdateMemberRoleRequestSchema)` to create a new message.
1046
1158
  */
1047
1159
  export const UpdateMemberRoleRequestSchema: GenMessage<UpdateMemberRoleRequest> = /*@__PURE__*/
1048
- messageDesc(file_dxos_client_services, 26);
1160
+ messageDesc(file_dxos_client_services, 28);
1049
1161
 
1050
1162
  /**
1051
1163
  * @generated from message dxos.client.services.AdmitContactRequest
@@ -1072,7 +1184,7 @@ export type AdmitContactRequest = Message<"dxos.client.services.AdmitContactRequ
1072
1184
  * Use `create(AdmitContactRequestSchema)` to create a new message.
1073
1185
  */
1074
1186
  export const AdmitContactRequestSchema: GenMessage<AdmitContactRequest> = /*@__PURE__*/
1075
- messageDesc(file_dxos_client_services, 27);
1187
+ messageDesc(file_dxos_client_services, 29);
1076
1188
 
1077
1189
  /**
1078
1190
  * @generated from message dxos.client.services.ContactAdmission
@@ -1089,7 +1201,7 @@ export type ContactAdmission = Message<"dxos.client.services.ContactAdmission">
1089
1201
  * Use `create(ContactAdmissionSchema)` to create a new message.
1090
1202
  */
1091
1203
  export const ContactAdmissionSchema: GenMessage<ContactAdmission> = /*@__PURE__*/
1092
- messageDesc(file_dxos_client_services, 28);
1204
+ messageDesc(file_dxos_client_services, 30);
1093
1205
 
1094
1206
  /**
1095
1207
  * @generated from message dxos.client.services.JoinSpaceResponse
@@ -1106,7 +1218,7 @@ export type JoinSpaceResponse = Message<"dxos.client.services.JoinSpaceResponse"
1106
1218
  * Use `create(JoinSpaceResponseSchema)` to create a new message.
1107
1219
  */
1108
1220
  export const JoinSpaceResponseSchema: GenMessage<JoinSpaceResponse> = /*@__PURE__*/
1109
- messageDesc(file_dxos_client_services, 29);
1221
+ messageDesc(file_dxos_client_services, 31);
1110
1222
 
1111
1223
  /**
1112
1224
  * @generated from message dxos.client.services.JoinBySpaceKeyRequest
@@ -1123,7 +1235,7 @@ export type JoinBySpaceKeyRequest = Message<"dxos.client.services.JoinBySpaceKey
1123
1235
  * Use `create(JoinBySpaceKeyRequestSchema)` to create a new message.
1124
1236
  */
1125
1237
  export const JoinBySpaceKeyRequestSchema: GenMessage<JoinBySpaceKeyRequest> = /*@__PURE__*/
1126
- messageDesc(file_dxos_client_services, 30);
1238
+ messageDesc(file_dxos_client_services, 32);
1127
1239
 
1128
1240
  /**
1129
1241
  * @generated from message dxos.client.services.AcceptInvitationRequest
@@ -1145,7 +1257,7 @@ export type AcceptInvitationRequest = Message<"dxos.client.services.AcceptInvita
1145
1257
  * Use `create(AcceptInvitationRequestSchema)` to create a new message.
1146
1258
  */
1147
1259
  export const AcceptInvitationRequestSchema: GenMessage<AcceptInvitationRequest> = /*@__PURE__*/
1148
- messageDesc(file_dxos_client_services, 31);
1260
+ messageDesc(file_dxos_client_services, 33);
1149
1261
 
1150
1262
  /**
1151
1263
  * @generated from message dxos.client.services.AuthenticationRequest
@@ -1167,7 +1279,7 @@ export type AuthenticationRequest = Message<"dxos.client.services.Authentication
1167
1279
  * Use `create(AuthenticationRequestSchema)` to create a new message.
1168
1280
  */
1169
1281
  export const AuthenticationRequestSchema: GenMessage<AuthenticationRequest> = /*@__PURE__*/
1170
- messageDesc(file_dxos_client_services, 32);
1282
+ messageDesc(file_dxos_client_services, 34);
1171
1283
 
1172
1284
  /**
1173
1285
  * @generated from message dxos.client.services.CancelInvitationRequest
@@ -1184,7 +1296,7 @@ export type CancelInvitationRequest = Message<"dxos.client.services.CancelInvita
1184
1296
  * Use `create(CancelInvitationRequestSchema)` to create a new message.
1185
1297
  */
1186
1298
  export const CancelInvitationRequestSchema: GenMessage<CancelInvitationRequest> = /*@__PURE__*/
1187
- messageDesc(file_dxos_client_services, 33);
1299
+ messageDesc(file_dxos_client_services, 35);
1188
1300
 
1189
1301
  /**
1190
1302
  * @generated from message dxos.client.services.InvitationMethod
@@ -1213,7 +1325,7 @@ export type InvitationMethod = Message<"dxos.client.services.InvitationMethod">
1213
1325
  * Use `create(InvitationMethodSchema)` to create a new message.
1214
1326
  */
1215
1327
  export const InvitationMethodSchema: GenMessage<InvitationMethod> = /*@__PURE__*/
1216
- messageDesc(file_dxos_client_services, 34);
1328
+ messageDesc(file_dxos_client_services, 36);
1217
1329
 
1218
1330
  /**
1219
1331
  * @generated from message dxos.client.services.QueryInvitationsResponse
@@ -1247,7 +1359,7 @@ export type QueryInvitationsResponse = Message<"dxos.client.services.QueryInvita
1247
1359
  * Use `create(QueryInvitationsResponseSchema)` to create a new message.
1248
1360
  */
1249
1361
  export const QueryInvitationsResponseSchema: GenMessage<QueryInvitationsResponse> = /*@__PURE__*/
1250
- messageDesc(file_dxos_client_services, 35);
1362
+ messageDesc(file_dxos_client_services, 37);
1251
1363
 
1252
1364
  /**
1253
1365
  * @generated from enum dxos.client.services.QueryInvitationsResponse.Action
@@ -1278,7 +1390,7 @@ export enum QueryInvitationsResponse_Action {
1278
1390
  * Describes the enum dxos.client.services.QueryInvitationsResponse.Action.
1279
1391
  */
1280
1392
  export const QueryInvitationsResponse_ActionSchema: GenEnum<QueryInvitationsResponse_Action> = /*@__PURE__*/
1281
- enumDesc(file_dxos_client_services, 35, 0);
1393
+ enumDesc(file_dxos_client_services, 37, 0);
1282
1394
 
1283
1395
  /**
1284
1396
  * @generated from enum dxos.client.services.QueryInvitationsResponse.Type
@@ -1299,7 +1411,7 @@ export enum QueryInvitationsResponse_Type {
1299
1411
  * Describes the enum dxos.client.services.QueryInvitationsResponse.Type.
1300
1412
  */
1301
1413
  export const QueryInvitationsResponse_TypeSchema: GenEnum<QueryInvitationsResponse_Type> = /*@__PURE__*/
1302
- enumDesc(file_dxos_client_services, 35, 1);
1414
+ enumDesc(file_dxos_client_services, 37, 1);
1303
1415
 
1304
1416
  /**
1305
1417
  * Informational, consumers must share invitations to receive CancellableInvitation
@@ -1318,7 +1430,7 @@ export type LoadPersistentInvitationsResponse = Message<"dxos.client.services.Lo
1318
1430
  * Use `create(LoadPersistentInvitationsResponseSchema)` to create a new message.
1319
1431
  */
1320
1432
  export const LoadPersistentInvitationsResponseSchema: GenMessage<LoadPersistentInvitationsResponse> = /*@__PURE__*/
1321
- messageDesc(file_dxos_client_services, 36);
1433
+ messageDesc(file_dxos_client_services, 38);
1322
1434
 
1323
1435
  /**
1324
1436
  * @generated from message dxos.client.services.NetworkStatus
@@ -1345,7 +1457,7 @@ export type NetworkStatus = Message<"dxos.client.services.NetworkStatus"> & {
1345
1457
  * Use `create(NetworkStatusSchema)` to create a new message.
1346
1458
  */
1347
1459
  export const NetworkStatusSchema: GenMessage<NetworkStatus> = /*@__PURE__*/
1348
- messageDesc(file_dxos_client_services, 37);
1460
+ messageDesc(file_dxos_client_services, 39);
1349
1461
 
1350
1462
  /**
1351
1463
  * @generated from message dxos.client.services.NetworkStatus.Signal
@@ -1369,7 +1481,7 @@ export type NetworkStatus_Signal = Message<"dxos.client.services.NetworkStatus.S
1369
1481
  * Use `create(NetworkStatus_SignalSchema)` to create a new message.
1370
1482
  */
1371
1483
  export const NetworkStatus_SignalSchema: GenMessage<NetworkStatus_Signal> = /*@__PURE__*/
1372
- messageDesc(file_dxos_client_services, 37, 0);
1484
+ messageDesc(file_dxos_client_services, 39, 0);
1373
1485
 
1374
1486
  /**
1375
1487
  * @generated from message dxos.client.services.UpdateConfigRequest
@@ -1386,7 +1498,7 @@ export type UpdateConfigRequest = Message<"dxos.client.services.UpdateConfigRequ
1386
1498
  * Use `create(UpdateConfigRequestSchema)` to create a new message.
1387
1499
  */
1388
1500
  export const UpdateConfigRequestSchema: GenMessage<UpdateConfigRequest> = /*@__PURE__*/
1389
- messageDesc(file_dxos_client_services, 38);
1501
+ messageDesc(file_dxos_client_services, 40);
1390
1502
 
1391
1503
  /**
1392
1504
  * @generated from message dxos.client.services.SubscribeSwarmStateRequest
@@ -1403,7 +1515,7 @@ export type SubscribeSwarmStateRequest = Message<"dxos.client.services.Subscribe
1403
1515
  * Use `create(SubscribeSwarmStateRequestSchema)` to create a new message.
1404
1516
  */
1405
1517
  export const SubscribeSwarmStateRequestSchema: GenMessage<SubscribeSwarmStateRequest> = /*@__PURE__*/
1406
- messageDesc(file_dxos_client_services, 39);
1518
+ messageDesc(file_dxos_client_services, 41);
1407
1519
 
1408
1520
  /**
1409
1521
  * @generated from message dxos.client.services.QueryEdgeStatusResponse
@@ -1420,7 +1532,7 @@ export type QueryEdgeStatusResponse = Message<"dxos.client.services.QueryEdgeSta
1420
1532
  * Use `create(QueryEdgeStatusResponseSchema)` to create a new message.
1421
1533
  */
1422
1534
  export const QueryEdgeStatusResponseSchema: GenMessage<QueryEdgeStatusResponse> = /*@__PURE__*/
1423
- messageDesc(file_dxos_client_services, 40);
1535
+ messageDesc(file_dxos_client_services, 42);
1424
1536
 
1425
1537
  /**
1426
1538
  * @generated from enum dxos.client.services.QueryEdgeStatusResponse.EdgeStatus
@@ -1441,7 +1553,7 @@ export enum QueryEdgeStatusResponse_EdgeStatus {
1441
1553
  * Describes the enum dxos.client.services.QueryEdgeStatusResponse.EdgeStatus.
1442
1554
  */
1443
1555
  export const QueryEdgeStatusResponse_EdgeStatusSchema: GenEnum<QueryEdgeStatusResponse_EdgeStatus> = /*@__PURE__*/
1444
- enumDesc(file_dxos_client_services, 40, 0);
1556
+ enumDesc(file_dxos_client_services, 42, 0);
1445
1557
 
1446
1558
  /**
1447
1559
  * @generated from message dxos.client.services.QueryAgentStatusResponse
@@ -1458,7 +1570,7 @@ export type QueryAgentStatusResponse = Message<"dxos.client.services.QueryAgentS
1458
1570
  * Use `create(QueryAgentStatusResponseSchema)` to create a new message.
1459
1571
  */
1460
1572
  export const QueryAgentStatusResponseSchema: GenMessage<QueryAgentStatusResponse> = /*@__PURE__*/
1461
- messageDesc(file_dxos_client_services, 41);
1573
+ messageDesc(file_dxos_client_services, 43);
1462
1574
 
1463
1575
  /**
1464
1576
  * @generated from enum dxos.client.services.QueryAgentStatusResponse.AgentStatus
@@ -1489,7 +1601,7 @@ export enum QueryAgentStatusResponse_AgentStatus {
1489
1601
  * Describes the enum dxos.client.services.QueryAgentStatusResponse.AgentStatus.
1490
1602
  */
1491
1603
  export const QueryAgentStatusResponse_AgentStatusSchema: GenEnum<QueryAgentStatusResponse_AgentStatus> = /*@__PURE__*/
1492
- enumDesc(file_dxos_client_services, 41, 0);
1604
+ enumDesc(file_dxos_client_services, 43, 0);
1493
1605
 
1494
1606
  /**
1495
1607
  * @generated from enum dxos.client.services.SystemStatus
@@ -1637,6 +1749,14 @@ export const IdentityService: GenService<{
1637
1749
  input: typeof CreateIdentityRequestSchema;
1638
1750
  output: typeof IdentitySchema;
1639
1751
  },
1752
+ /**
1753
+ * @generated from rpc dxos.client.services.IdentityService.RequestRecoveryChallenge
1754
+ */
1755
+ requestRecoveryChallenge: {
1756
+ methodKind: "unary";
1757
+ input: typeof EmptySchema;
1758
+ output: typeof RequestRecoveryChallengeResponseSchema;
1759
+ },
1640
1760
  /**
1641
1761
  * @generated from rpc dxos.client.services.IdentityService.RecoverIdentity
1642
1762
  */
@@ -1646,12 +1766,12 @@ export const IdentityService: GenService<{
1646
1766
  output: typeof IdentitySchema;
1647
1767
  },
1648
1768
  /**
1649
- * @generated from rpc dxos.client.services.IdentityService.CreateRecoveryPhrase
1769
+ * @generated from rpc dxos.client.services.IdentityService.CreateRecoveryCredential
1650
1770
  */
1651
- createRecoveryPhrase: {
1771
+ createRecoveryCredential: {
1652
1772
  methodKind: "unary";
1653
- input: typeof EmptySchema;
1654
- output: typeof CreateRecoveryPhraseResponseSchema;
1773
+ input: typeof CreateRecoveryCredentialRequestSchema;
1774
+ output: typeof CreateRecoveryCredentialResponseSchema;
1655
1775
  },
1656
1776
  /**
1657
1777
  * @generated from rpc dxos.client.services.IdentityService.QueryIdentity