@dxos/protocols 0.8.4-main.74a063c4e0 → 0.8.4-main.765dc60934

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 (332) hide show
  1. package/LICENSE +102 -5
  2. package/dist/src/FeedProtocol.d.ts +4 -4
  3. package/dist/src/FeedProtocol.d.ts.map +1 -1
  4. package/dist/src/FunctionProtocol.d.ts +7 -0
  5. package/dist/src/FunctionProtocol.d.ts.map +1 -1
  6. package/dist/src/TraceProtocol.d.ts +15 -0
  7. package/dist/src/TraceProtocol.d.ts.map +1 -0
  8. package/dist/src/TraceProtocol.js +4 -0
  9. package/dist/src/TraceProtocol.js.map +1 -0
  10. package/dist/src/buf/proto/gen/dxos/client/queue_pb.d.ts +11 -5
  11. package/dist/src/buf/proto/gen/dxos/client/queue_pb.d.ts.map +1 -1
  12. package/dist/src/buf/proto/gen/dxos/client/queue_pb.js +2 -2
  13. package/dist/src/buf/proto/gen/dxos/client/queue_pb.js.map +1 -1
  14. package/dist/src/buf/proto/gen/dxos/client/services_pb.d.ts +31 -0
  15. package/dist/src/buf/proto/gen/dxos/client/services_pb.d.ts.map +1 -1
  16. package/dist/src/buf/proto/gen/dxos/client/services_pb.js +23 -1
  17. package/dist/src/buf/proto/gen/dxos/client/services_pb.js.map +1 -1
  18. package/dist/src/buf/proto/gen/dxos/config_pb.d.ts +112 -0
  19. package/dist/src/buf/proto/gen/dxos/config_pb.d.ts.map +1 -1
  20. package/dist/src/buf/proto/gen/dxos/config_pb.js +72 -1
  21. package/dist/src/buf/proto/gen/dxos/config_pb.js.map +1 -1
  22. package/dist/src/buf/proto/gen/dxos/echo/service_pb.d.ts +17 -2
  23. package/dist/src/buf/proto/gen/dxos/echo/service_pb.d.ts.map +1 -1
  24. package/dist/src/buf/proto/gen/dxos/echo/service_pb.js +1 -1
  25. package/dist/src/buf/proto/gen/dxos/echo/service_pb.js.map +1 -1
  26. package/dist/src/buf/proto/gen/dxos/iframe_pb.d.ts +0 -10
  27. package/dist/src/buf/proto/gen/dxos/iframe_pb.d.ts.map +1 -1
  28. package/dist/src/buf/proto/gen/dxos/iframe_pb.js +1 -1
  29. package/dist/src/buf/proto/gen/dxos/iframe_pb.js.map +1 -1
  30. package/dist/src/buf/proto/gen/dxos/rpc_pb.d.ts +24 -0
  31. package/dist/src/buf/proto/gen/dxos/rpc_pb.d.ts.map +1 -1
  32. package/dist/src/buf/proto/gen/dxos/rpc_pb.js +12 -7
  33. package/dist/src/buf/proto/gen/dxos/rpc_pb.js.map +1 -1
  34. package/dist/src/buf/proto/gen/dxos/tracing_pb.d.ts +1 -139
  35. package/dist/src/buf/proto/gen/dxos/tracing_pb.d.ts.map +1 -1
  36. package/dist/src/buf/proto/gen/dxos/tracing_pb.js +10 -44
  37. package/dist/src/buf/proto/gen/dxos/tracing_pb.js.map +1 -1
  38. package/dist/src/codec.test.js +1 -1
  39. package/dist/src/edge/EdgeFunctionEnv.d.ts +22 -2
  40. package/dist/src/edge/EdgeFunctionEnv.d.ts.map +1 -1
  41. package/dist/src/edge/edge.d.ts +9 -2
  42. package/dist/src/edge/edge.d.ts.map +1 -1
  43. package/dist/src/edge/edge.js +8 -1
  44. package/dist/src/edge/edge.js.map +1 -1
  45. package/dist/src/edge/errors.d.ts.map +1 -1
  46. package/dist/src/edge/errors.js +1 -1
  47. package/dist/src/edge/errors.js.map +1 -1
  48. package/dist/src/edge/index.d.ts +1 -0
  49. package/dist/src/edge/index.d.ts.map +1 -1
  50. package/dist/src/edge/index.js +4 -3
  51. package/dist/src/edge/index.js.map +1 -1
  52. package/dist/src/edge/registry.d.ts +212 -0
  53. package/dist/src/edge/registry.d.ts.map +1 -0
  54. package/dist/src/edge/registry.js +139 -0
  55. package/dist/src/edge/registry.js.map +1 -0
  56. package/dist/src/errors/base-errors.d.ts +18 -18
  57. package/dist/src/errors/base-errors.d.ts.map +1 -1
  58. package/dist/src/errors/encoding.d.ts +1 -1
  59. package/dist/src/errors/encoding.d.ts.map +1 -1
  60. package/dist/src/errors/encoding.js +1 -1
  61. package/dist/src/errors/encoding.js.map +1 -1
  62. package/dist/src/errors/errors.d.ts +132 -132
  63. package/dist/src/errors/errors.d.ts.map +1 -1
  64. package/dist/src/errors/errors.js +1 -1
  65. package/dist/src/errors/errors.test.js +1 -1
  66. package/dist/src/errors/helpers.d.ts +2 -2
  67. package/dist/src/errors/helpers.d.ts.map +1 -1
  68. package/dist/src/errors/index.js +5 -5
  69. package/dist/src/errors/parameter.d.ts.map +1 -1
  70. package/dist/src/index.d.ts +1 -1
  71. package/dist/src/index.d.ts.map +1 -1
  72. package/dist/src/index.js +11 -11
  73. package/dist/src/index.js.map +1 -1
  74. package/dist/src/indexing.d.ts.map +1 -1
  75. package/dist/src/indexing.test.js +1 -1
  76. package/dist/src/proto/gen/dxos/agent/dashboard.d.ts +3 -6
  77. package/dist/src/proto/gen/dxos/agent/dashboard.d.ts.map +1 -1
  78. package/dist/src/proto/gen/dxos/agent/dashboard.js.map +1 -1
  79. package/dist/src/proto/gen/dxos/agent/echoproxy.d.ts +1 -2
  80. package/dist/src/proto/gen/dxos/agent/echoproxy.d.ts.map +1 -1
  81. package/dist/src/proto/gen/dxos/agent/epoch.d.ts +1 -2
  82. package/dist/src/proto/gen/dxos/agent/epoch.d.ts.map +1 -1
  83. package/dist/src/proto/gen/dxos/agent/functions.d.ts +6 -12
  84. package/dist/src/proto/gen/dxos/agent/functions.d.ts.map +1 -1
  85. package/dist/src/proto/gen/dxos/bot.d.ts +12 -24
  86. package/dist/src/proto/gen/dxos/bot.d.ts.map +1 -1
  87. package/dist/src/proto/gen/dxos/bot.js.map +1 -1
  88. package/dist/src/proto/gen/dxos/client/services.d.ts +435 -483
  89. package/dist/src/proto/gen/dxos/client/services.d.ts.map +1 -1
  90. package/dist/src/proto/gen/dxos/client/services.js +79 -67
  91. package/dist/src/proto/gen/dxos/client/services.js.map +1 -1
  92. package/dist/src/proto/gen/dxos/config.d.ts +115 -100
  93. package/dist/src/proto/gen/dxos/config.d.ts.map +1 -1
  94. package/dist/src/proto/gen/dxos/config.js +26 -0
  95. package/dist/src/proto/gen/dxos/config.js.map +1 -1
  96. package/dist/src/proto/gen/dxos/devtools/host.d.ts +48 -96
  97. package/dist/src/proto/gen/dxos/devtools/host.d.ts.map +1 -1
  98. package/dist/src/proto/gen/dxos/devtools/swarm.d.ts +4 -8
  99. package/dist/src/proto/gen/dxos/devtools/swarm.d.ts.map +1 -1
  100. package/dist/src/proto/gen/dxos/echo/blob.d.ts +1 -2
  101. package/dist/src/proto/gen/dxos/echo/blob.d.ts.map +1 -1
  102. package/dist/src/proto/gen/dxos/echo/blob.js.map +1 -1
  103. package/dist/src/proto/gen/dxos/echo/feed.d.ts +4 -8
  104. package/dist/src/proto/gen/dxos/echo/feed.d.ts.map +1 -1
  105. package/dist/src/proto/gen/dxos/echo/filter.d.ts +2 -4
  106. package/dist/src/proto/gen/dxos/echo/filter.d.ts.map +1 -1
  107. package/dist/src/proto/gen/dxos/echo/filter.js.map +1 -1
  108. package/dist/src/proto/gen/dxos/echo/indexing.d.ts +2 -4
  109. package/dist/src/proto/gen/dxos/echo/indexing.d.ts.map +1 -1
  110. package/dist/src/proto/gen/dxos/echo/indexing.js.map +1 -1
  111. package/dist/src/proto/gen/dxos/echo/metadata.d.ts +8 -16
  112. package/dist/src/proto/gen/dxos/echo/metadata.d.ts.map +1 -1
  113. package/dist/src/proto/gen/dxos/echo/metadata.js.map +1 -1
  114. package/dist/src/proto/gen/dxos/echo/model/document.d.ts +11 -22
  115. package/dist/src/proto/gen/dxos/echo/model/document.d.ts.map +1 -1
  116. package/dist/src/proto/gen/dxos/echo/model/document.js.map +1 -1
  117. package/dist/src/proto/gen/dxos/echo/model/messenger.d.ts +1 -2
  118. package/dist/src/proto/gen/dxos/echo/model/messenger.d.ts.map +1 -1
  119. package/dist/src/proto/gen/dxos/echo/model/text.d.ts +2 -4
  120. package/dist/src/proto/gen/dxos/echo/model/text.d.ts.map +1 -1
  121. package/dist/src/proto/gen/dxos/echo/object.d.ts +6 -12
  122. package/dist/src/proto/gen/dxos/echo/object.d.ts.map +1 -1
  123. package/dist/src/proto/gen/dxos/echo/object.js.map +1 -1
  124. package/dist/src/proto/gen/dxos/echo/query.d.ts +4 -8
  125. package/dist/src/proto/gen/dxos/echo/query.d.ts.map +1 -1
  126. package/dist/src/proto/gen/dxos/echo/query.js.map +1 -1
  127. package/dist/src/proto/gen/dxos/echo/service.d.ts +36 -35
  128. package/dist/src/proto/gen/dxos/echo/service.d.ts.map +1 -1
  129. package/dist/src/proto/gen/dxos/echo/snapshot.d.ts +2 -4
  130. package/dist/src/proto/gen/dxos/echo/snapshot.d.ts.map +1 -1
  131. package/dist/src/proto/gen/dxos/echo/timeframe.d.ts +2 -4
  132. package/dist/src/proto/gen/dxos/echo/timeframe.d.ts.map +1 -1
  133. package/dist/src/proto/gen/dxos/edge/calls.d.ts +5 -10
  134. package/dist/src/proto/gen/dxos/edge/calls.d.ts.map +1 -1
  135. package/dist/src/proto/gen/dxos/edge/messenger.d.ts +6 -12
  136. package/dist/src/proto/gen/dxos/edge/messenger.d.ts.map +1 -1
  137. package/dist/src/proto/gen/dxos/edge/messenger.js.map +1 -1
  138. package/dist/src/proto/gen/dxos/edge/signal.d.ts +7 -14
  139. package/dist/src/proto/gen/dxos/edge/signal.d.ts.map +1 -1
  140. package/dist/src/proto/gen/dxos/error.d.ts +1 -2
  141. package/dist/src/proto/gen/dxos/error.d.ts.map +1 -1
  142. package/dist/src/proto/gen/dxos/gravity.d.ts +10 -20
  143. package/dist/src/proto/gen/dxos/gravity.d.ts.map +1 -1
  144. package/dist/src/proto/gen/dxos/halo/credentials/auth.d.ts +1 -2
  145. package/dist/src/proto/gen/dxos/halo/credentials/auth.d.ts.map +1 -1
  146. package/dist/src/proto/gen/dxos/halo/credentials/greet.d.ts +6 -12
  147. package/dist/src/proto/gen/dxos/halo/credentials/greet.d.ts.map +1 -1
  148. package/dist/src/proto/gen/dxos/halo/credentials/greet.js.map +1 -1
  149. package/dist/src/proto/gen/dxos/halo/credentials/identity.d.ts +2 -4
  150. package/dist/src/proto/gen/dxos/halo/credentials/identity.d.ts.map +1 -1
  151. package/dist/src/proto/gen/dxos/halo/credentials.d.ts +22 -44
  152. package/dist/src/proto/gen/dxos/halo/credentials.d.ts.map +1 -1
  153. package/dist/src/proto/gen/dxos/halo/credentials.js.map +1 -1
  154. package/dist/src/proto/gen/dxos/halo/invitations.d.ts +13 -26
  155. package/dist/src/proto/gen/dxos/halo/invitations.d.ts.map +1 -1
  156. package/dist/src/proto/gen/dxos/halo/invitations.js.map +1 -1
  157. package/dist/src/proto/gen/dxos/halo/keyring.d.ts +1 -2
  158. package/dist/src/proto/gen/dxos/halo/keyring.d.ts.map +1 -1
  159. package/dist/src/proto/gen/dxos/halo/keys.d.ts +2 -4
  160. package/dist/src/proto/gen/dxos/halo/keys.d.ts.map +1 -1
  161. package/dist/src/proto/gen/dxos/halo/signed.d.ts +4 -8
  162. package/dist/src/proto/gen/dxos/halo/signed.d.ts.map +1 -1
  163. package/dist/src/proto/gen/dxos/iframe.d.ts +4 -18
  164. package/dist/src/proto/gen/dxos/iframe.d.ts.map +1 -1
  165. package/dist/src/proto/gen/dxos/iframe.js.map +1 -1
  166. package/dist/src/proto/gen/dxos/keys.d.ts +2 -4
  167. package/dist/src/proto/gen/dxos/keys.d.ts.map +1 -1
  168. package/dist/src/proto/gen/dxos/mesh/bridge.d.ts +12 -24
  169. package/dist/src/proto/gen/dxos/mesh/bridge.d.ts.map +1 -1
  170. package/dist/src/proto/gen/dxos/mesh/broadcast.d.ts +1 -2
  171. package/dist/src/proto/gen/dxos/mesh/broadcast.d.ts.map +1 -1
  172. package/dist/src/proto/gen/dxos/mesh/messaging.d.ts +2 -4
  173. package/dist/src/proto/gen/dxos/mesh/messaging.d.ts.map +1 -1
  174. package/dist/src/proto/gen/dxos/mesh/muxer.d.ts +5 -10
  175. package/dist/src/proto/gen/dxos/mesh/muxer.d.ts.map +1 -1
  176. package/dist/src/proto/gen/dxos/mesh/presence.d.ts +1 -2
  177. package/dist/src/proto/gen/dxos/mesh/presence.d.ts.map +1 -1
  178. package/dist/src/proto/gen/dxos/mesh/protocol.d.ts +3 -6
  179. package/dist/src/proto/gen/dxos/mesh/protocol.d.ts.map +1 -1
  180. package/dist/src/proto/gen/dxos/mesh/replicator.d.ts +2 -4
  181. package/dist/src/proto/gen/dxos/mesh/replicator.d.ts.map +1 -1
  182. package/dist/src/proto/gen/dxos/mesh/signal.d.ts +9 -18
  183. package/dist/src/proto/gen/dxos/mesh/signal.d.ts.map +1 -1
  184. package/dist/src/proto/gen/dxos/mesh/signal.js.map +1 -1
  185. package/dist/src/proto/gen/dxos/mesh/swarm.d.ts +6 -12
  186. package/dist/src/proto/gen/dxos/mesh/swarm.d.ts.map +1 -1
  187. package/dist/src/proto/gen/dxos/mesh/teleport/auth.d.ts +2 -4
  188. package/dist/src/proto/gen/dxos/mesh/teleport/auth.d.ts.map +1 -1
  189. package/dist/src/proto/gen/dxos/mesh/teleport/automerge.d.ts +2 -4
  190. package/dist/src/proto/gen/dxos/mesh/teleport/automerge.d.ts.map +1 -1
  191. package/dist/src/proto/gen/dxos/mesh/teleport/blobsync.d.ts +3 -6
  192. package/dist/src/proto/gen/dxos/mesh/teleport/blobsync.d.ts.map +1 -1
  193. package/dist/src/proto/gen/dxos/mesh/teleport/control.d.ts +3 -6
  194. package/dist/src/proto/gen/dxos/mesh/teleport/control.d.ts.map +1 -1
  195. package/dist/src/proto/gen/dxos/mesh/teleport/gossip.d.ts +1 -2
  196. package/dist/src/proto/gen/dxos/mesh/teleport/gossip.d.ts.map +1 -1
  197. package/dist/src/proto/gen/dxos/mesh/teleport/notarization.d.ts +1 -2
  198. package/dist/src/proto/gen/dxos/mesh/teleport/notarization.d.ts.map +1 -1
  199. package/dist/src/proto/gen/dxos/mesh/teleport/replicator.d.ts +5 -10
  200. package/dist/src/proto/gen/dxos/mesh/teleport/replicator.d.ts.map +1 -1
  201. package/dist/src/proto/gen/dxos/mesh/teleport.d.ts +2 -4
  202. package/dist/src/proto/gen/dxos/mesh/teleport.d.ts.map +1 -1
  203. package/dist/src/proto/gen/dxos/registry.d.ts +3 -6
  204. package/dist/src/proto/gen/dxos/registry.d.ts.map +1 -1
  205. package/dist/src/proto/gen/dxos/rpc.d.ts +24 -12
  206. package/dist/src/proto/gen/dxos/rpc.d.ts.map +1 -1
  207. package/dist/src/proto/gen/dxos/rpc.js.map +1 -1
  208. package/dist/src/proto/gen/dxos/service/agentmanager.d.ts +4 -8
  209. package/dist/src/proto/gen/dxos/service/agentmanager.d.ts.map +1 -1
  210. package/dist/src/proto/gen/dxos/service/agentmanager.js.map +1 -1
  211. package/dist/src/proto/gen/dxos/service/publisher.d.ts +5 -10
  212. package/dist/src/proto/gen/dxos/service/publisher.d.ts.map +1 -1
  213. package/dist/src/proto/gen/dxos/service/supervisor.d.ts +12 -24
  214. package/dist/src/proto/gen/dxos/service/supervisor.d.ts.map +1 -1
  215. package/dist/src/proto/gen/dxos/service/supervisor.js.map +1 -1
  216. package/dist/src/proto/gen/dxos/service/tunnel.d.ts +3 -6
  217. package/dist/src/proto/gen/dxos/service/tunnel.d.ts.map +1 -1
  218. package/dist/src/proto/gen/dxos/tracing.d.ts +10 -99
  219. package/dist/src/proto/gen/dxos/tracing.d.ts.map +1 -1
  220. package/dist/src/proto/gen/dxos/type.d.ts +12 -24
  221. package/dist/src/proto/gen/dxos/type.d.ts.map +1 -1
  222. package/dist/src/proto/gen/dxos/value.d.ts +2 -4
  223. package/dist/src/proto/gen/dxos/value.d.ts.map +1 -1
  224. package/dist/src/proto/gen/example/testing/data.d.ts +4 -8
  225. package/dist/src/proto/gen/example/testing/data.d.ts.map +1 -1
  226. package/dist/src/proto/gen/example/testing/rpc.d.ts +7 -14
  227. package/dist/src/proto/gen/example/testing/rpc.d.ts.map +1 -1
  228. package/dist/src/proto/gen/google/protobuf.d.ts.map +1 -1
  229. package/dist/src/proto/gen/google/protobuf.js.map +1 -1
  230. package/dist/src/proto/gen/index.d.ts +4 -7
  231. package/dist/src/proto/gen/index.d.ts.map +1 -1
  232. package/dist/src/proto/gen/index.js +1 -1
  233. package/dist/src/proto/gen/index.js.map +1 -1
  234. package/dist/src/proto/index.js +1 -1
  235. package/dist/src/proto/substitutions.d.ts +8 -8
  236. package/dist/src/proto/substitutions.d.ts.map +1 -1
  237. package/dist/src/space-archive.d.ts +5 -5
  238. package/dist/src/space-archive.d.ts.map +1 -1
  239. package/dist/tsconfig.tsbuildinfo +1 -1
  240. package/package.json +10 -29
  241. package/src/FunctionProtocol.ts +9 -0
  242. package/src/TraceProtocol.ts +21 -0
  243. package/src/buf/proto/gen/dxos/client/queue_pb.ts +14 -8
  244. package/src/buf/proto/gen/dxos/client/services_pb.ts +38 -1
  245. package/src/buf/proto/gen/dxos/config_pb.ts +131 -1
  246. package/src/buf/proto/gen/dxos/echo/service_pb.ts +19 -3
  247. package/src/buf/proto/gen/dxos/iframe_pb.ts +1 -13
  248. package/src/buf/proto/gen/dxos/rpc_pb.ts +36 -7
  249. package/src/buf/proto/gen/dxos/tracing_pb.ts +11 -178
  250. package/src/edge/EdgeFunctionEnv.ts +37 -2
  251. package/src/edge/edge.ts +9 -2
  252. package/src/edge/index.ts +1 -0
  253. package/src/edge/registry.ts +164 -0
  254. package/src/index.ts +1 -1
  255. package/src/proto/dxos/client/queue.proto +7 -4
  256. package/src/proto/dxos/client/services.proto +10 -0
  257. package/src/proto/dxos/config.proto +49 -0
  258. package/src/proto/dxos/echo/service.proto +14 -1
  259. package/src/proto/dxos/iframe.proto +0 -3
  260. package/src/proto/dxos/rpc.proto +7 -0
  261. package/src/proto/dxos/tracing.proto +0 -40
  262. package/src/proto/gen/dxos/agent/dashboard.ts +3 -6
  263. package/src/proto/gen/dxos/agent/echoproxy.ts +1 -2
  264. package/src/proto/gen/dxos/agent/epoch.ts +1 -2
  265. package/src/proto/gen/dxos/agent/functions.ts +6 -12
  266. package/src/proto/gen/dxos/bot.ts +12 -24
  267. package/src/proto/gen/dxos/client/services.ts +435 -483
  268. package/src/proto/gen/dxos/config.ts +115 -100
  269. package/src/proto/gen/dxos/devtools/host.ts +48 -96
  270. package/src/proto/gen/dxos/devtools/swarm.ts +4 -8
  271. package/src/proto/gen/dxos/echo/blob.ts +1 -2
  272. package/src/proto/gen/dxos/echo/feed.ts +4 -8
  273. package/src/proto/gen/dxos/echo/filter.ts +2 -4
  274. package/src/proto/gen/dxos/echo/indexing.ts +2 -4
  275. package/src/proto/gen/dxos/echo/metadata.ts +8 -16
  276. package/src/proto/gen/dxos/echo/model/document.ts +11 -22
  277. package/src/proto/gen/dxos/echo/model/messenger.ts +1 -2
  278. package/src/proto/gen/dxos/echo/model/text.ts +2 -4
  279. package/src/proto/gen/dxos/echo/object.ts +6 -12
  280. package/src/proto/gen/dxos/echo/query.ts +4 -8
  281. package/src/proto/gen/dxos/echo/service.ts +36 -35
  282. package/src/proto/gen/dxos/echo/snapshot.ts +2 -4
  283. package/src/proto/gen/dxos/echo/timeframe.ts +2 -4
  284. package/src/proto/gen/dxos/edge/calls.ts +5 -10
  285. package/src/proto/gen/dxos/edge/messenger.ts +6 -12
  286. package/src/proto/gen/dxos/edge/signal.ts +7 -14
  287. package/src/proto/gen/dxos/error.ts +1 -2
  288. package/src/proto/gen/dxos/gravity.ts +10 -20
  289. package/src/proto/gen/dxos/halo/credentials/auth.ts +1 -2
  290. package/src/proto/gen/dxos/halo/credentials/greet.ts +6 -12
  291. package/src/proto/gen/dxos/halo/credentials/identity.ts +2 -4
  292. package/src/proto/gen/dxos/halo/credentials.ts +22 -44
  293. package/src/proto/gen/dxos/halo/invitations.ts +13 -26
  294. package/src/proto/gen/dxos/halo/keyring.ts +1 -2
  295. package/src/proto/gen/dxos/halo/keys.ts +2 -4
  296. package/src/proto/gen/dxos/halo/signed.ts +4 -8
  297. package/src/proto/gen/dxos/iframe.ts +4 -18
  298. package/src/proto/gen/dxos/keys.ts +2 -4
  299. package/src/proto/gen/dxos/mesh/bridge.ts +12 -24
  300. package/src/proto/gen/dxos/mesh/broadcast.ts +1 -2
  301. package/src/proto/gen/dxos/mesh/messaging.ts +2 -4
  302. package/src/proto/gen/dxos/mesh/muxer.ts +5 -10
  303. package/src/proto/gen/dxos/mesh/presence.ts +1 -2
  304. package/src/proto/gen/dxos/mesh/protocol.ts +3 -6
  305. package/src/proto/gen/dxos/mesh/replicator.ts +2 -4
  306. package/src/proto/gen/dxos/mesh/signal.ts +9 -18
  307. package/src/proto/gen/dxos/mesh/swarm.ts +6 -12
  308. package/src/proto/gen/dxos/mesh/teleport/auth.ts +2 -4
  309. package/src/proto/gen/dxos/mesh/teleport/automerge.ts +2 -4
  310. package/src/proto/gen/dxos/mesh/teleport/blobsync.ts +3 -6
  311. package/src/proto/gen/dxos/mesh/teleport/control.ts +3 -6
  312. package/src/proto/gen/dxos/mesh/teleport/gossip.ts +1 -2
  313. package/src/proto/gen/dxos/mesh/teleport/notarization.ts +1 -2
  314. package/src/proto/gen/dxos/mesh/teleport/replicator.ts +5 -10
  315. package/src/proto/gen/dxos/mesh/teleport.ts +2 -4
  316. package/src/proto/gen/dxos/registry.ts +3 -6
  317. package/src/proto/gen/dxos/rpc.ts +24 -12
  318. package/src/proto/gen/dxos/service/agentmanager.ts +4 -8
  319. package/src/proto/gen/dxos/service/publisher.ts +5 -10
  320. package/src/proto/gen/dxos/service/supervisor.ts +12 -24
  321. package/src/proto/gen/dxos/service/tunnel.ts +3 -6
  322. package/src/proto/gen/dxos/tracing.ts +10 -96
  323. package/src/proto/gen/dxos/type.ts +12 -24
  324. package/src/proto/gen/dxos/value.ts +2 -4
  325. package/src/proto/gen/example/testing/data.ts +4 -8
  326. package/src/proto/gen/example/testing/rpc.ts +7 -14
  327. package/src/proto/gen/index.ts +5 -8
  328. package/dist/src/tracing.d.ts +0 -40
  329. package/dist/src/tracing.d.ts.map +0 -1
  330. package/dist/src/tracing.js +0 -50
  331. package/dist/src/tracing.js.map +0 -1
  332. package/src/tracing.ts +0 -86
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dxos/protocols",
3
- "version": "0.8.4-main.74a063c4e0",
3
+ "version": "0.8.4-main.765dc60934",
4
4
  "description": "Protobuf definitions for DXOS protocols.",
5
5
  "homepage": "https://dxos.org",
6
6
  "bugs": "https://github.com/dxos/dxos/issues",
@@ -8,7 +8,7 @@
8
8
  "type": "git",
9
9
  "url": "https://github.com/dxos/dxos"
10
10
  },
11
- "license": "MIT",
11
+ "license": "FSL-1.1-Apache-2.0",
12
12
  "author": "info@dxos.org",
13
13
  "sideEffects": false,
14
14
  "type": "module",
@@ -39,44 +39,25 @@
39
39
  }
40
40
  },
41
41
  "types": "dist/src/index.d.ts",
42
- "typesVersions": {
43
- "*": {
44
- "proto/*": [
45
- "dist/src/proto/gen/*"
46
- ],
47
- "buf/*": [
48
- "dist/src/buf/proto/gen/*"
49
- ],
50
- "feed-replication": [
51
- "dist/src/feed-replication.d.ts"
52
- ],
53
- "buf": [
54
- "dist/src/buf/index.d.ts"
55
- ],
56
- "proto": [
57
- "dist/src/proto/index.d.ts"
58
- ]
59
- }
60
- },
61
42
  "files": [
62
43
  "dist",
63
44
  "src"
64
45
  ],
65
46
  "dependencies": {
66
47
  "@bufbuild/protobuf": "2.11.0",
67
- "@dxos/codec-protobuf": "0.8.4-main.74a063c4e0",
68
- "@dxos/effect": "0.8.4-main.74a063c4e0",
69
- "@dxos/errors": "0.8.4-main.74a063c4e0",
70
- "@dxos/keys": "0.8.4-main.74a063c4e0",
71
- "@dxos/invariant": "0.8.4-main.74a063c4e0",
72
- "@dxos/timeframe": "0.8.4-main.74a063c4e0",
73
- "@dxos/util": "0.8.4-main.74a063c4e0"
48
+ "@dxos/effect": "0.8.4-main.765dc60934",
49
+ "@dxos/codec-protobuf": "0.8.4-main.765dc60934",
50
+ "@dxos/errors": "0.8.4-main.765dc60934",
51
+ "@dxos/keys": "0.8.4-main.765dc60934",
52
+ "@dxos/timeframe": "0.8.4-main.765dc60934",
53
+ "@dxos/util": "0.8.4-main.765dc60934",
54
+ "@dxos/invariant": "0.8.4-main.765dc60934"
74
55
  },
75
56
  "devDependencies": {
76
57
  "@bufbuild/buf": "1.65.0",
77
58
  "@bufbuild/protoc-gen-es": "2.11.0",
78
59
  "effect": "3.20.0",
79
- "@dxos/protobuf-compiler": "0.8.4-main.74a063c4e0"
60
+ "@dxos/protobuf-compiler": "0.8.4-main.765dc60934"
80
61
  },
81
62
  "peerDependencies": {
82
63
  "effect": "3.20.0"
@@ -8,6 +8,7 @@ import type * as DataProto from '@dxos/protocols/proto/dxos/echo/service';
8
8
 
9
9
  import { type EdgeFunctionEnv } from './edge';
10
10
  import type * as FeedProtocol from './FeedProtocol';
11
+ import type * as TraceProtocol from './TraceProtocol';
11
12
 
12
13
  //
13
14
  // Function protocol definition
@@ -82,6 +83,14 @@ export interface Context {
82
83
  * Available if the function is invoked in context of a space.
83
84
  */
84
85
  functionsAiService?: EdgeFunctionEnv.FunctionsAiService;
86
+
87
+ /**
88
+ * Functions service.
89
+ * Available if the function is invoked in context of a space.
90
+ */
91
+ functionsService?: EdgeFunctionEnv.FunctionsService;
92
+
93
+ traceService?: TraceProtocol.TraceService;
85
94
  };
86
95
 
87
96
  /**
@@ -0,0 +1,21 @@
1
+ //
2
+ // Copyright 2026 DXOS.org
3
+ //
4
+
5
+ // @import-as-namespace
6
+
7
+ /**
8
+ * Allows consumers to write trace events to the trace.
9
+ */
10
+ export interface TraceService {
11
+ write(events: Event[]): void;
12
+ }
13
+
14
+ /**
15
+ * Single typed trace event.
16
+ */
17
+ export interface Event {
18
+ key: string;
19
+ isEphemeral: boolean;
20
+ data: unknown;
21
+ }
@@ -5,14 +5,14 @@
5
5
  import type { GenFile, GenMessage, GenService } from "@bufbuild/protobuf/codegenv2";
6
6
  import { fileDesc, messageDesc, serviceDesc } from "@bufbuild/protobuf/codegenv2";
7
7
  import type { EmptySchema } from "@bufbuild/protobuf/wkt";
8
- import { file_google_protobuf_empty, file_google_protobuf_struct } from "@bufbuild/protobuf/wkt";
9
- import type { JsonObject, Message } from "@bufbuild/protobuf";
8
+ import { file_google_protobuf_empty } from "@bufbuild/protobuf/wkt";
9
+ import type { Message } from "@bufbuild/protobuf";
10
10
 
11
11
  /**
12
12
  * Describes the file dxos/client/queue.proto.
13
13
  */
14
14
  export const file_dxos_client_queue: GenFile = /*@__PURE__*/
15
- fileDesc("ChdkeG9zL2NsaWVudC9xdWV1ZS5wcm90bxIUZHhvcy5jbGllbnQuc2VydmljZXMi0wIKClF1ZXVlUXVlcnkSEAoIc3BhY2VfaWQYASABKAkSHQoQcXVldWVzX25hbWVzcGFjZRgCIAEoCUgAiAEBEhEKCXF1ZXVlX2lkcxgDIAMoCRISCgVhZnRlchgEIAEoCUgBiAEBEhMKBmJlZm9yZRgFIAEoCUgCiAEBEhsKDmJlZ2luX3Bvc2l0aW9uGAYgASgDSAOIAQESGQoMZW5kX3Bvc2l0aW9uGAcgASgDSASIAQESEgoFbGltaXQYCCABKAVIBYgBARIUCgdyZXZlcnNlGAkgASgISAaIAQESEgoKb2JqZWN0X2lkcxhkIAMoCUITChFfcXVldWVzX25hbWVzcGFjZUIICgZfYWZ0ZXJCCQoHX2JlZm9yZUIRCg9fYmVnaW5fcG9zaXRpb25CDwoNX2VuZF9wb3NpdGlvbkIICgZfbGltaXRCCgoIX3JldmVyc2UiZgoQUXVldWVRdWVyeVJlc3VsdBIoCgdvYmplY3RzGAEgAygLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBITCgtuZXh0X2N1cnNvchgCIAEoCRITCgtwcmV2X2N1cnNvchgDIAEoCSJEChFRdWVyeVF1ZXVlUmVxdWVzdBIvCgVxdWVyeRgBIAEoCzIgLmR4b3MuY2xpZW50LnNlcnZpY2VzLlF1ZXVlUXVlcnkifAoWSW5zZXJ0SW50b1F1ZXVlUmVxdWVzdBIUCgxzdWJzcGFjZV90YWcYASABKAkSEAoIc3BhY2VfaWQYAiABKAkSEAoIcXVldWVfaWQYAyABKAkSKAoHb2JqZWN0cxgEIAMoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QiZgoWRGVsZXRlRnJvbVF1ZXVlUmVxdWVzdBIUCgxzdWJzcGFjZV90YWcYASABKAkSEAoIc3BhY2VfaWQYAiABKAkSEAoIcXVldWVfaWQYAyABKAkSEgoKb2JqZWN0X2lkcxgEIAMoCSKgAQoQU3luY1F1ZXVlUmVxdWVzdBIUCgxzdWJzcGFjZV90YWcYASABKAkSEAoIc3BhY2VfaWQYAiABKAkSEAoIcXVldWVfaWQYAyABKAkSGAoLc2hvdWxkX3B1c2gYBCABKAhIAIgBARIYCgtzaG91bGRfcHVsbBgFIAEoCEgBiAEBQg4KDF9zaG91bGRfcHVzaEIOCgxfc2hvdWxkX3B1bGwy7AIKDFF1ZXVlU2VydmljZRJdCgpRdWVyeVF1ZXVlEicuZHhvcy5jbGllbnQuc2VydmljZXMuUXVlcnlRdWV1ZVJlcXVlc3QaJi5keG9zLmNsaWVudC5zZXJ2aWNlcy5RdWV1ZVF1ZXJ5UmVzdWx0ElcKD0luc2VydEludG9RdWV1ZRIsLmR4b3MuY2xpZW50LnNlcnZpY2VzLkluc2VydEludG9RdWV1ZVJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkSVwoPRGVsZXRlRnJvbVF1ZXVlEiwuZHhvcy5jbGllbnQuc2VydmljZXMuRGVsZXRlRnJvbVF1ZXVlUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRJLCglTeW5jUXVldWUSJi5keG9zLmNsaWVudC5zZXJ2aWNlcy5TeW5jUXVldWVSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5YgZwcm90bzM", [file_google_protobuf_struct, file_google_protobuf_empty]);
15
+ fileDesc("ChdkeG9zL2NsaWVudC9xdWV1ZS5wcm90bxIUZHhvcy5jbGllbnQuc2VydmljZXMi0wIKClF1ZXVlUXVlcnkSEAoIc3BhY2VfaWQYASABKAkSHQoQcXVldWVzX25hbWVzcGFjZRgCIAEoCUgAiAEBEhEKCXF1ZXVlX2lkcxgDIAMoCRISCgVhZnRlchgEIAEoCUgBiAEBEhMKBmJlZm9yZRgFIAEoCUgCiAEBEhsKDmJlZ2luX3Bvc2l0aW9uGAYgASgDSAOIAQESGQoMZW5kX3Bvc2l0aW9uGAcgASgDSASIAQESEgoFbGltaXQYCCABKAVIBYgBARIUCgdyZXZlcnNlGAkgASgISAaIAQESEgoKb2JqZWN0X2lkcxhkIAMoCUITChFfcXVldWVzX25hbWVzcGFjZUIICgZfYWZ0ZXJCCQoHX2JlZm9yZUIRCg9fYmVnaW5fcG9zaXRpb25CDwoNX2VuZF9wb3NpdGlvbkIICgZfbGltaXRCCgoIX3JldmVyc2UiTQoQUXVldWVRdWVyeVJlc3VsdBIPCgdvYmplY3RzGAEgAygJEhMKC25leHRfY3Vyc29yGAIgASgJEhMKC3ByZXZfY3Vyc29yGAMgASgJIkQKEVF1ZXJ5UXVldWVSZXF1ZXN0Ei8KBXF1ZXJ5GAEgASgLMiAuZHhvcy5jbGllbnQuc2VydmljZXMuUXVldWVRdWVyeSJjChZJbnNlcnRJbnRvUXVldWVSZXF1ZXN0EhQKDHN1YnNwYWNlX3RhZxgBIAEoCRIQCghzcGFjZV9pZBgCIAEoCRIQCghxdWV1ZV9pZBgDIAEoCRIPCgdvYmplY3RzGAQgAygJImYKFkRlbGV0ZUZyb21RdWV1ZVJlcXVlc3QSFAoMc3Vic3BhY2VfdGFnGAEgASgJEhAKCHNwYWNlX2lkGAIgASgJEhAKCHF1ZXVlX2lkGAMgASgJEhIKCm9iamVjdF9pZHMYBCADKAkioAEKEFN5bmNRdWV1ZVJlcXVlc3QSFAoMc3Vic3BhY2VfdGFnGAEgASgJEhAKCHNwYWNlX2lkGAIgASgJEhAKCHF1ZXVlX2lkGAMgASgJEhgKC3Nob3VsZF9wdXNoGAQgASgISACIAQESGAoLc2hvdWxkX3B1bGwYBSABKAhIAYgBAUIOCgxfc2hvdWxkX3B1c2hCDgoMX3Nob3VsZF9wdWxsMuwCCgxRdWV1ZVNlcnZpY2USXQoKUXVlcnlRdWV1ZRInLmR4b3MuY2xpZW50LnNlcnZpY2VzLlF1ZXJ5UXVldWVSZXF1ZXN0GiYuZHhvcy5jbGllbnQuc2VydmljZXMuUXVldWVRdWVyeVJlc3VsdBJXCg9JbnNlcnRJbnRvUXVldWUSLC5keG9zLmNsaWVudC5zZXJ2aWNlcy5JbnNlcnRJbnRvUXVldWVSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5ElcKD0RlbGV0ZUZyb21RdWV1ZRIsLmR4b3MuY2xpZW50LnNlcnZpY2VzLkRlbGV0ZUZyb21RdWV1ZVJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkSSwoJU3luY1F1ZXVlEiYuZHhvcy5jbGllbnQuc2VydmljZXMuU3luY1F1ZXVlUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eWIGcHJvdG8z", [file_google_protobuf_empty]);
16
16
 
17
17
  /**
18
18
  * @generated from message dxos.client.services.QueueQuery
@@ -93,12 +93,16 @@ export const QueueQuerySchema: GenMessage<QueueQuery> = /*@__PURE__*/
93
93
  */
94
94
  export type QueueQueryResult = Message<"dxos.client.services.QueueQueryResult"> & {
95
95
  /**
96
- * @generated from field: repeated google.protobuf.Struct objects = 1;
96
+ * / JSON-encoded object payloads. Each entry is a serialized ObjectJSON.
97
+ * / We use JSON strings instead of google.protobuf.Struct because Struct
98
+ * / coerces `undefined` to `null`, corrupting optional fields.
99
+ *
100
+ * @generated from field: repeated string objects = 1;
97
101
  */
98
- objects: JsonObject[];
102
+ objects: string[];
99
103
 
100
104
  /**
101
- * / Cursor to query the next items. Can be passed to `after` in query to keep querying.
105
+ * / Cursor to query the next items. Can be passed to `after` in query to keep querying.
102
106
  *
103
107
  * @generated from field: string next_cursor = 2;
104
108
  */
@@ -154,9 +158,11 @@ export type InsertIntoQueueRequest = Message<"dxos.client.services.InsertIntoQue
154
158
  queueId: string;
155
159
 
156
160
  /**
157
- * @generated from field: repeated google.protobuf.Struct objects = 4;
161
+ * / JSON-encoded object payloads. Each entry is a serialized ObjectJSON.
162
+ *
163
+ * @generated from field: repeated string objects = 4;
158
164
  */
159
- objects: JsonObject[];
165
+ objects: string[];
160
166
  };
161
167
 
162
168
  /**
@@ -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("ChpkeG9zL2NsaWVudC9zZXJ2aWNlcy5wcm90bxIUZHhvcy5jbGllbnQuc2VydmljZXMiSQoTVXBkYXRlU3RhdHVzUmVxdWVzdBIyCgZzdGF0dXMYASABKA4yIi5keG9zLmNsaWVudC5zZXJ2aWNlcy5TeXN0ZW1TdGF0dXMiOAoSUXVlcnlTdGF0dXNSZXF1ZXN0EhUKCGludGVydmFsGAEgASgFSACIAQFCCwoJX2ludGVydmFsIkkKE1F1ZXJ5U3RhdHVzUmVzcG9uc2USMgoGc3RhdHVzGAEgASgOMiIuZHhvcy5jbGllbnQuc2VydmljZXMuU3lzdGVtU3RhdHVzIp8BChVHZXREaWFnbm9zdGljc1JlcXVlc3QSSQoEa2V5cxgBIAEoDjI2LmR4b3MuY2xpZW50LnNlcnZpY2VzLkdldERpYWdub3N0aWNzUmVxdWVzdC5LRVlfT1BUSU9OSACIAQEiMgoKS0VZX09QVElPThIICgROT05FEAASDAoIVFJVTkNBVEUQARIMCghIVU1BTklaRRACQgcKBV9rZXlzInUKFkdldERpYWdub3N0aWNzUmVzcG9uc2USLQoJdGltZXN0YW1wGAEgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIsCgtkaWFnbm9zdGljcxgCIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3Qi+gIKCFBsYXRmb3JtEjoKBHR5cGUYASABKA4yLC5keG9zLmNsaWVudC5zZXJ2aWNlcy5QbGF0Zm9ybS5QTEFURk9STV9UWVBFEhcKCnVzZXJfYWdlbnQYAiABKAlIAIgBARIVCghwbGF0Zm9ybRgDIAEoCUgBiAEBEhEKBGFyY2gYBCABKAlIAogBARIUCgdydW50aW1lGAUgASgJSAOIAQESEwoGdXB0aW1lGAYgASgNSASIAQESLAoGbWVtb3J5GAcgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgFiAEBIk8KDVBMQVRGT1JNX1RZUEUSCwoHQlJPV1NFUhAAEhEKDVNIQVJFRF9XT1JLRVIQARIICgROT0RFEAISFAoQREVESUNBVEVEX1dPUktFUhADQg0KC191c2VyX2FnZW50QgsKCV9wbGF0Zm9ybUIHCgVfYXJjaEIKCghfcnVudGltZUIJCgdfdXB0aW1lQgkKB19tZW1vcnkiyQEKCElkZW50aXR5EgsKA2RpZBgEIAEoCRIqCgxpZGVudGl0eV9rZXkYASABKAsyFC5keG9zLmtleXMuUHVibGljS2V5EiwKCXNwYWNlX2tleRgCIAEoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXlIAIgBARI8Cgdwcm9maWxlGAMgASgLMiYuZHhvcy5oYWxvLmNyZWRlbnRpYWxzLlByb2ZpbGVEb2N1bWVudEgBiAEBQgwKCl9zcGFjZV9rZXlCCgoIX3Byb2ZpbGUijwEKIFJlcXVlc3RSZWNvdmVyeUNoYWxsZW5nZVJlc3BvbnNlEigKCmRldmljZV9rZXkYASABKAsyFC5keG9zLmtleXMuUHVibGljS2V5Ei4KEGNvbnRyb2xfZmVlZF9rZXkYAiABKAsyFC5keG9zLmtleXMuUHVibGljS2V5EhEKCWNoYWxsZW5nZRgDIAEoCSK6AwoWUmVjb3ZlcklkZW50aXR5UmVxdWVzdBIXCg1yZWNvdmVyeV9jb2RlGAEgASgJSAASUgoIZXh0ZXJuYWwYAiABKAsyPi5keG9zLmNsaWVudC5zZXJ2aWNlcy5SZWNvdmVySWRlbnRpdHlSZXF1ZXN0LkV4dGVybmFsU2lnbmF0dXJlSAASDwoFdG9rZW4YAyABKAlIABqWAgoRRXh0ZXJuYWxTaWduYXR1cmUSKAoKbG9va3VwX2tleRgBIAEoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXkSKAoKZGV2aWNlX2tleRgCIAEoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXkSLgoQY29udHJvbF9mZWVkX2tleRgDIAEoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXkSEQoJc2lnbmF0dXJlGAQgASgMEh0KEGNsaWVudF9kYXRhX2pzb24YBSABKAxIAIgBARIfChJhdXRoZW50aWNhdG9yX2RhdGEYBiABKAxIAYgBAUITChFfY2xpZW50X2RhdGFfanNvbkIVChNfYXV0aGVudGljYXRvcl9kYXRhQgkKB3JlcXVlc3QigQEKFlJlY292ZXJ5Q3JlZGVudGlhbERhdGESKgoMcmVjb3Zlcnlfa2V5GAEgASgLMhQuZHhvcy5rZXlzLlB1YmxpY0tleRIoCgpsb29rdXBfa2V5GAIgASgLMhQuZHhvcy5rZXlzLlB1YmxpY0tleRIRCglhbGdvcml0aG0YAyABKAkiawofQ3JlYXRlUmVjb3ZlcnlDcmVkZW50aWFsUmVxdWVzdBI/CgRkYXRhGAEgASgLMiwuZHhvcy5jbGllbnQuc2VydmljZXMuUmVjb3ZlcnlDcmVkZW50aWFsRGF0YUgAiAEBQgcKBV9kYXRhIlAKIENyZWF0ZVJlY292ZXJ5Q3JlZGVudGlhbFJlc3BvbnNlEhoKDXJlY292ZXJ5X2NvZGUYASABKAlIAIgBAUIQCg5fcmVjb3ZlcnlfY29kZSJbChVRdWVyeUlkZW50aXR5UmVzcG9uc2USNQoIaWRlbnRpdHkYASABKAsyHi5keG9zLmNsaWVudC5zZXJ2aWNlcy5JZGVudGl0eUgAiAEBQgsKCV9pZGVudGl0eSJyChdTaWduUHJlc2VudGF0aW9uUmVxdWVzdBI5CgxwcmVzZW50YXRpb24YASABKAsyIy5keG9zLmhhbG8uY3JlZGVudGlhbHMuUHJlc2VudGF0aW9uEhIKBW5vbmNlGAIgASgMSACIAQFCCAoGX25vbmNlIsUBChVDcmVhdGVJZGVudGl0eVJlcXVlc3QSPAoHcHJvZmlsZRgBIAEoCzImLmR4b3MuaGFsby5jcmVkZW50aWFscy5Qcm9maWxlRG9jdW1lbnRIAIgBARJJCg5kZXZpY2VfcHJvZmlsZRgDIAEoCzIsLmR4b3MuaGFsby5jcmVkZW50aWFscy5EZXZpY2VQcm9maWxlRG9jdW1lbnRIAYgBAUIKCghfcHJvZmlsZUIRCg9fZGV2aWNlX3Byb2ZpbGVKBAgCEAMipwIKBkRldmljZRIoCgpkZXZpY2Vfa2V5GAEgASgLMhQuZHhvcy5rZXlzLlB1YmxpY0tleRIuCgRraW5kGAIgASgOMiAuZHhvcy5jbGllbnQuc2VydmljZXMuRGV2aWNlS2luZBJCCgdwcm9maWxlGAMgASgLMiwuZHhvcy5oYWxvLmNyZWRlbnRpYWxzLkRldmljZVByb2ZpbGVEb2N1bWVudEgAiAEBEjwKCHByZXNlbmNlGAQgASgOMiouZHhvcy5jbGllbnQuc2VydmljZXMuRGV2aWNlLlByZXNlbmNlU3RhdGUiNQoNUHJlc2VuY2VTdGF0ZRILCgdPRkZMSU5FEAASCgoGT05MSU5FEAESCwoHUkVNT1ZFRBACQgoKCF9wcm9maWxlIkUKFFF1ZXJ5RGV2aWNlc1Jlc3BvbnNlEi0KB2RldmljZXMYASADKAsyHC5keG9zLmNsaWVudC5zZXJ2aWNlcy5EZXZpY2UiqgEKB0NvbnRhY3QSKQoLaWRlbnRpdHlLZXkYAiABKAsyFC5keG9zLmtleXMuUHVibGljS2V5EjwKB3Byb2ZpbGUYASABKAsyJi5keG9zLmhhbG8uY3JlZGVudGlhbHMuUHJvZmlsZURvY3VtZW50SACIAQESKgoMY29tbW9uU3BhY2VzGAMgAygLMhQuZHhvcy5rZXlzLlB1YmxpY0tleUIKCghfcHJvZmlsZSI+CgtDb250YWN0Qm9vaxIvCghjb250YWN0cxgBIAMoCzIdLmR4b3MuY2xpZW50LnNlcnZpY2VzLkNvbnRhY3QilgIKC1NwYWNlTWVtYmVyEjAKCGlkZW50aXR5GAEgASgLMh4uZHhvcy5jbGllbnQuc2VydmljZXMuSWRlbnRpdHkSQQoIcHJlc2VuY2UYAiABKA4yLy5keG9zLmNsaWVudC5zZXJ2aWNlcy5TcGFjZU1lbWJlci5QcmVzZW5jZVN0YXRlEjEKCnBlZXJTdGF0ZXMYAyADKAsyHS5keG9zLm1lc2gucHJlc2VuY2UuUGVlclN0YXRlEjUKBHJvbGUYBCABKA4yJy5keG9zLmhhbG8uY3JlZGVudGlhbHMuU3BhY2VNZW1iZXIuUm9sZSIoCg1QcmVzZW5jZVN0YXRlEgsKB09GRkxJTkUQABIKCgZPTkxJTkUQASK4EwoFU3BhY2USCgoCaWQYBSABKAkSJwoJc3BhY2Vfa2V5GAEgASgLMhQuZHhvcy5rZXlzLlB1YmxpY0tleRIvCgVzdGF0ZRgCIAEoDjIgLmR4b3MuY2xpZW50LnNlcnZpY2VzLlNwYWNlU3RhdGUSQAoIcGlwZWxpbmUYAyABKAsyKS5keG9zLmNsaWVudC5zZXJ2aWNlcy5TcGFjZS5QaXBlbGluZVN0YXRlSACIAQESJQoFZXJyb3IYBCABKAsyES5keG9zLmVycm9yLkVycm9ySAGIAQESSQoQZWRnZV9yZXBsaWNhdGlvbhgGIAEoDjIqLmR4b3MuZWNoby5tZXRhZGF0YS5FZGdlUmVwbGljYXRpb25TZXR0aW5nSAKIAQESDAoEdGFncxgHIAMoCRJCChFtZW1iZXJzaGlwX3BvbGljeRgIIAEoDjInLmR4b3MuaGFsby5jcmVkZW50aWFscy5NZW1iZXJzaGlwUG9saWN5EjIKB21lbWJlcnMYCiADKAsyIS5keG9zLmNsaWVudC5zZXJ2aWNlcy5TcGFjZU1lbWJlchIqCgdjcmVhdG9yGAsgASgLMhQuZHhvcy5rZXlzLlB1YmxpY0tleUgDiAEBEjIKBWNhY2hlGBQgASgLMh4uZHhvcy5lY2hvLm1ldGFkYXRhLlNwYWNlQ2FjaGVIBIgBARI0CgdtZXRyaWNzGBUgASgLMiMuZHhvcy5jbGllbnQuc2VydmljZXMuU3BhY2UuTWV0cmljcxrXAwoHTWV0cmljcxItCgRvcGVuGAEgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgAiAEBEjwKE3BpcGVsaW5lX2luaXRfYmVnaW4YAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAGIAQESPwoWY29udHJvbF9waXBlbGluZV9yZWFkeRgDIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAogBARI7ChJkYXRhX3BpcGVsaW5lX29wZW4YBCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAOIAQESPAoTZGF0YV9waXBlbGluZV9yZWFkeRgFIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIBIgBARIuCgVyZWFkeRgGIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIBYgBAUIHCgVfb3BlbkIWChRfcGlwZWxpbmVfaW5pdF9iZWdpbkIZChdfY29udHJvbF9waXBlbGluZV9yZWFkeUIVChNfZGF0YV9waXBlbGluZV9vcGVuQhYKFF9kYXRhX3BpcGVsaW5lX3JlYWR5QggKBl9yZWFkeRrcCgoNUGlwZWxpbmVTdGF0ZRIzChBjb250cm9sX2ZlZWRfa2V5GAEgASgLMhQuZHhvcy5rZXlzLlB1YmxpY0tleUgAiAEBEjAKDWRhdGFfZmVlZF9rZXkYAiABKAsyFC5keG9zLmtleXMuUHVibGljS2V5SAGIAQESKwoNY29udHJvbF9mZWVkcxgSIAMoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXkSKAoKZGF0YV9mZWVkcxgTIAMoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXkSPQoNY3VycmVudF9lcG9jaBgUIAEoCzIhLmR4b3MuaGFsby5jcmVkZW50aWFscy5DcmVkZW50aWFsSAKIAQESPQoNYXBwbGllZF9lcG9jaBgVIAEoCzIhLmR4b3MuaGFsby5jcmVkZW50aWFscy5DcmVkZW50aWFsSAOIAQESTAoZY3VycmVudF9jb250cm9sX3RpbWVmcmFtZRgKIAEoCzIkLmR4b3MuZWNoby50aW1lZnJhbWUuVGltZWZyYW1lVmVjdG9ySASIAQESSwoYdGFyZ2V0X2NvbnRyb2xfdGltZWZyYW1lGAsgASgLMiQuZHhvcy5lY2hvLnRpbWVmcmFtZS5UaW1lZnJhbWVWZWN0b3JIBYgBARJKChd0b3RhbF9jb250cm9sX3RpbWVmcmFtZRgOIAEoCzIkLmR4b3MuZWNoby50aW1lZnJhbWUuVGltZWZyYW1lVmVjdG9ySAaIAQESSgoXa25vd25fY29udHJvbF90aW1lZnJhbWUYDyABKAsyJC5keG9zLmVjaG8udGltZWZyYW1lLlRpbWVmcmFtZVZlY3RvckgHiAEBEkcKFHN0YXJ0X2RhdGFfdGltZWZyYW1lGGQgASgLMiQuZHhvcy5lY2hvLnRpbWVmcmFtZS5UaW1lZnJhbWVWZWN0b3JICIgBARJJChZjdXJyZW50X2RhdGFfdGltZWZyYW1lGAwgASgLMiQuZHhvcy5lY2hvLnRpbWVmcmFtZS5UaW1lZnJhbWVWZWN0b3JICYgBARJIChV0YXJnZXRfZGF0YV90aW1lZnJhbWUYDSABKAsyJC5keG9zLmVjaG8udGltZWZyYW1lLlRpbWVmcmFtZVZlY3RvckgKiAEBEkcKFHRvdGFsX2RhdGFfdGltZWZyYW1lGBAgASgLMiQuZHhvcy5lY2hvLnRpbWVmcmFtZS5UaW1lZnJhbWVWZWN0b3JIC4gBARJHChRrbm93bl9kYXRhX3RpbWVmcmFtZRgRIAEoCzIkLmR4b3MuZWNoby50aW1lZnJhbWUuVGltZWZyYW1lVmVjdG9ySAyIAQESGwoOc3BhY2Vfcm9vdF91cmwYFiABKAlIDYgBAUITChFfY29udHJvbF9mZWVkX2tleUIQCg5fZGF0YV9mZWVkX2tleUIQCg5fY3VycmVudF9lcG9jaEIQCg5fYXBwbGllZF9lcG9jaEIcChpfY3VycmVudF9jb250cm9sX3RpbWVmcmFtZUIbChlfdGFyZ2V0X2NvbnRyb2xfdGltZWZyYW1lQhoKGF90b3RhbF9jb250cm9sX3RpbWVmcmFtZUIaChhfa25vd25fY29udHJvbF90aW1lZnJhbWVCFwoVX3N0YXJ0X2RhdGFfdGltZWZyYW1lQhkKF19jdXJyZW50X2RhdGFfdGltZWZyYW1lQhgKFl90YXJnZXRfZGF0YV90aW1lZnJhbWVCFwoVX3RvdGFsX2RhdGFfdGltZWZyYW1lQhcKFV9rbm93bl9kYXRhX3RpbWVmcmFtZUIRCg9fc3BhY2Vfcm9vdF91cmxCCwoJX3BpcGVsaW5lQggKBl9lcnJvckITChFfZWRnZV9yZXBsaWNhdGlvbkIKCghfY3JlYXRvckIICgZfY2FjaGUiZgoSQ3JlYXRlU3BhY2VSZXF1ZXN0EgwKBHRhZ3MYASADKAkSQgoRbWVtYmVyc2hpcF9wb2xpY3kYAiABKA4yJy5keG9zLmhhbG8uY3JlZGVudGlhbHMuTWVtYmVyc2hpcFBvbGljeSLdAQoSVXBkYXRlU3BhY2VSZXF1ZXN0EicKCXNwYWNlX2tleRgBIAEoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXkSNAoFc3RhdGUYAiABKA4yIC5keG9zLmNsaWVudC5zZXJ2aWNlcy5TcGFjZVN0YXRlSACIAQESSQoQZWRnZV9yZXBsaWNhdGlvbhgDIAEoDjIqLmR4b3MuZWNoby5tZXRhZGF0YS5FZGdlUmVwbGljYXRpb25TZXR0aW5nSAGIAQFCCAoGX3N0YXRlQhMKEV9lZGdlX3JlcGxpY2F0aW9uIkIKE1F1ZXJ5U3BhY2VzUmVzcG9uc2USKwoGc3BhY2VzGAEgAygLMhsuZHhvcy5jbGllbnQuc2VydmljZXMuU3BhY2UidQoSUG9zdE1lc3NhZ2VSZXF1ZXN0EicKCXNwYWNlX2tleRgBIAEoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXkSDwoHY2hhbm5lbBgCIAEoCRIlCgdtZXNzYWdlGAMgASgLMhQuZ29vZ2xlLnByb3RvYnVmLkFueSJUChhTdWJzY3JpYmVNZXNzYWdlc1JlcXVlc3QSJwoJc3BhY2Vfa2V5GAEgASgLMhQuZHhvcy5rZXlzLlB1YmxpY0tleRIPCgdjaGFubmVsGAIgASgJInoKF1dyaXRlQ3JlZGVudGlhbHNSZXF1ZXN0EicKCXNwYWNlX2tleRgBIAEoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXkSNgoLY3JlZGVudGlhbHMYAiADKAsyIS5keG9zLmhhbG8uY3JlZGVudGlhbHMuQ3JlZGVudGlhbCJkChdRdWVyeUNyZWRlbnRpYWxzUmVxdWVzdBInCglzcGFjZV9rZXkYASABKAsyFC5keG9zLmtleXMuUHVibGljS2V5EhQKB25vX3RhaWwYAiABKAhIAIgBAUIKCghfbm9fdGFpbCL1AgoSQ3JlYXRlRXBvY2hSZXF1ZXN0EicKCXNwYWNlX2tleRgBIAEoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXkSSgoJbWlncmF0aW9uGAIgASgOMjIuZHhvcy5jbGllbnQuc2VydmljZXMuQ3JlYXRlRXBvY2hSZXF1ZXN0Lk1pZ3JhdGlvbkgAiAEBEh8KEmF1dG9tZXJnZV9yb290X3VybBgDIAEoCUgBiAEBIqMBCglNaWdyYXRpb24SCAoETk9ORRAAEhIKDklOSVRfQVVUT01FUkdFEAESIAocUFJVTkVfQVVUT01FUkdFX1JPT1RfSElTVE9SWRACEhsKF0ZSQUdNRU5UX0FVVE9NRVJHRV9ST09UEAMSGgoWUkVQTEFDRV9BVVRPTUVSR0VfUk9PVBAEEh0KGU1JR1JBVEVfUkVGRVJFTkNFU19UT19EWE4QBUIMCgpfbWlncmF0aW9uQhUKE19hdXRvbWVyZ2Vfcm9vdF91cmwiyAEKE0NyZWF0ZUVwb2NoUmVzcG9uc2USQAoQZXBvY2hfY3JlZGVudGlhbBgBIAEoCzIhLmR4b3MuaGFsby5jcmVkZW50aWFscy5DcmVkZW50aWFsSACIAQESRAoRY29udHJvbF90aW1lZnJhbWUYAiABKAsyJC5keG9zLmVjaG8udGltZWZyYW1lLlRpbWVmcmFtZVZlY3RvckgBiAEBQhMKEV9lcG9jaF9jcmVkZW50aWFsQhQKEl9jb250cm9sX3RpbWVmcmFtZSKnAQoXVXBkYXRlTWVtYmVyUm9sZVJlcXVlc3QSJwoJc3BhY2Vfa2V5GAEgASgLMhQuZHhvcy5rZXlzLlB1YmxpY0tleRIoCgptZW1iZXJfa2V5GAIgASgLMhQuZHhvcy5rZXlzLlB1YmxpY0tleRI5CghuZXdfcm9sZRgDIAEoDjInLmR4b3MuaGFsby5jcmVkZW50aWFscy5TcGFjZU1lbWJlci5Sb2xlIqUBChNBZG1pdENvbnRhY3RSZXF1ZXN0Ei4KB2NvbnRhY3QYASABKAsyHS5keG9zLmNsaWVudC5zZXJ2aWNlcy5Db250YWN0EjUKBHJvbGUYAiABKA4yJy5keG9zLmhhbG8uY3JlZGVudGlhbHMuU3BhY2VNZW1iZXIuUm9sZRInCglzcGFjZV9rZXkYAyABKAsyFC5keG9zLmtleXMuUHVibGljS2V5IkkKEENvbnRhY3RBZG1pc3Npb24SNQoKY3JlZGVudGlhbBgBIAEoCzIhLmR4b3MuaGFsby5jcmVkZW50aWFscy5DcmVkZW50aWFsIj8KEUpvaW5TcGFjZVJlc3BvbnNlEioKBXNwYWNlGAEgASgLMhsuZHhvcy5jbGllbnQuc2VydmljZXMuU3BhY2UiQAoVSm9pbkJ5U3BhY2VLZXlSZXF1ZXN0EicKCXNwYWNlX2tleRgBIAEoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXkiMgoMU3BhY2VBcmNoaXZlEhAKCGZpbGVuYW1lGAEgASgJEhAKCGNvbnRlbnRzGAIgASgMIiYKEkV4cG9ydFNwYWNlUmVxdWVzdBIQCghzcGFjZV9pZBgBIAEoCSJKChNFeHBvcnRTcGFjZVJlc3BvbnNlEjMKB2FyY2hpdmUYASABKAsyIi5keG9zLmNsaWVudC5zZXJ2aWNlcy5TcGFjZUFyY2hpdmUiSQoSSW1wb3J0U3BhY2VSZXF1ZXN0EjMKB2FyY2hpdmUYASABKAsyIi5keG9zLmNsaWVudC5zZXJ2aWNlcy5TcGFjZUFyY2hpdmUiKwoTSW1wb3J0U3BhY2VSZXNwb25zZRIUCgxuZXdfc3BhY2VfaWQYASABKAkirQEKF0FjY2VwdEludml0YXRpb25SZXF1ZXN0EjQKCmludml0YXRpb24YASABKAsyIC5keG9zLmNsaWVudC5zZXJ2aWNlcy5JbnZpdGF0aW9uEkkKDmRldmljZV9wcm9maWxlGAIgASgLMiwuZHhvcy5oYWxvLmNyZWRlbnRpYWxzLkRldmljZVByb2ZpbGVEb2N1bWVudEgAiAEBQhEKD19kZXZpY2VfcHJvZmlsZSJBChVBdXRoZW50aWNhdGlvblJlcXVlc3QSFQoNaW52aXRhdGlvbl9pZBgBIAEoCRIRCglhdXRoX2NvZGUYAiABKAkiMAoXQ2FuY2VsSW52aXRhdGlvblJlcXVlc3QSFQoNaW52aXRhdGlvbl9pZBgBIAEoCSKFAQoQSW52aXRhdGlvbk1ldGhvZBIzCgdjcmVhdGVkGAEgASgLMiAuZHhvcy5jbGllbnQuc2VydmljZXMuSW52aXRhdGlvbkgAEjQKCGFjY2VwdGVkGAIgASgLMiAuZHhvcy5jbGllbnQuc2VydmljZXMuSW52aXRhdGlvbkgAQgYKBGtpbmQi4gIKGFF1ZXJ5SW52aXRhdGlvbnNSZXNwb25zZRJFCgZhY3Rpb24YASABKA4yNS5keG9zLmNsaWVudC5zZXJ2aWNlcy5RdWVyeUludml0YXRpb25zUmVzcG9uc2UuQWN0aW9uEkEKBHR5cGUYAiABKA4yMy5keG9zLmNsaWVudC5zZXJ2aWNlcy5RdWVyeUludml0YXRpb25zUmVzcG9uc2UuVHlwZRI1CgtpbnZpdGF0aW9ucxgDIAMoCzIgLmR4b3MuY2xpZW50LnNlcnZpY2VzLkludml0YXRpb24SFQoIZXhpc3RpbmcYBCABKAhIAIgBASI+CgZBY3Rpb24SCQoFQURERUQQABILCgdSRU1PVkVEEAESCQoFU0FWRUQQAhIRCg1MT0FEX0NPTVBMRVRFEAMiIQoEVHlwZRILCgdDUkVBVEVEEAASDAoIQUNDRVBURUQQAUILCglfZXhpc3RpbmciWgohTG9hZFBlcnNpc3RlbnRJbnZpdGF0aW9uc1Jlc3BvbnNlEjUKC2ludml0YXRpb25zGAEgAygLMiAuZHhvcy5jbGllbnQuc2VydmljZXMuSW52aXRhdGlvbiKFAgoNTmV0d29ya1N0YXR1cxI0CgVzd2FybRgBIAEoDjIlLmR4b3MuY2xpZW50LnNlcnZpY2VzLkNvbm5lY3Rpb25TdGF0ZRI9CglzaWduYWxpbmcYAiADKAsyKi5keG9zLmNsaWVudC5zZXJ2aWNlcy5OZXR3b3JrU3RhdHVzLlNpZ25hbBI3Cg9jb25uZWN0aW9uX2luZm8YAyADKAsyHi5keG9zLmRldnRvb2xzLnN3YXJtLlN3YXJtSW5mbxpGCgZTaWduYWwSDgoGc2VydmVyGAEgASgJEiwKBXN0YXRlGAIgASgOMh0uZHhvcy5tZXNoLnNpZ25hbC5TaWduYWxTdGF0ZSJLChNVcGRhdGVDb25maWdSZXF1ZXN0EjQKBXN3YXJtGAEgASgOMiUuZHhvcy5jbGllbnQuc2VydmljZXMuQ29ubmVjdGlvblN0YXRlIkEKGlN1YnNjcmliZVN3YXJtU3RhdGVSZXF1ZXN0EiMKBXRvcGljGAEgASgLMhQuZHhvcy5rZXlzLlB1YmxpY0tleSKBAgoKRWRnZVN0YXR1cxI/CgVzdGF0ZRgBIAEoDjIwLmR4b3MuY2xpZW50LnNlcnZpY2VzLkVkZ2VTdGF0dXMuQ29ubmVjdGlvblN0YXRlEgsKA3J0dBgCIAEoBRIOCgZ1cHRpbWUYAyABKAUSFQoNcmF0ZV9ieXRlc191cBgEIAEoBRIXCg9yYXRlX2J5dGVzX2Rvd24YBSABKAUSFQoNbWVzc2FnZXNfc2VudBgGIAEoBRIZChFtZXNzYWdlc19yZWNlaXZlZBgHIAEoBSIzCg9Db25uZWN0aW9uU3RhdGUSEQoNTk9UX0NPTk5FQ1RFRBAAEg0KCUNPTk5FQ1RFRBABIksKF1F1ZXJ5RWRnZVN0YXR1c1Jlc3BvbnNlEjAKBnN0YXR1cxgBIAEoCzIgLmR4b3MuY2xpZW50LnNlcnZpY2VzLkVkZ2VTdGF0dXMiqwEKGFF1ZXJ5QWdlbnRTdGF0dXNSZXNwb25zZRJKCgZzdGF0dXMYASABKA4yOi5keG9zLmNsaWVudC5zZXJ2aWNlcy5RdWVyeUFnZW50U3RhdHVzUmVzcG9uc2UuQWdlbnRTdGF0dXMiQwoLQWdlbnRTdGF0dXMSCwoHVU5LTk9XThAAEgoKBkFDVElWRRABEgwKCElOQUNUSVZFEAISDQoJTk9UX0ZPVU5EEAMqKAoMU3lzdGVtU3RhdHVzEgwKCElOQUNUSVZFEAASCgoGQUNUSVZFEAEqJgoKRGV2aWNlS2luZBILCgdDVVJSRU5UEAASCwoHVFJVU1RFRBABKioKD0Nvbm5lY3Rpb25TdGF0ZRILCgdPRkZMSU5FEAASCgoGT05MSU5FEAEy7wMKDVN5c3RlbVNlcnZpY2USOAoJR2V0Q29uZmlnEhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5GhMuZHhvcy5jb25maWcuQ29uZmlnEmsKDkdldERpYWdub3N0aWNzEisuZHhvcy5jbGllbnQuc2VydmljZXMuR2V0RGlhZ25vc3RpY3NSZXF1ZXN0GiwuZHhvcy5jbGllbnQuc2VydmljZXMuR2V0RGlhZ25vc3RpY3NSZXNwb25zZRJRCgxVcGRhdGVTdGF0dXMSKS5keG9zLmNsaWVudC5zZXJ2aWNlcy5VcGRhdGVTdGF0dXNSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5EmQKC1F1ZXJ5U3RhdHVzEiguZHhvcy5jbGllbnQuc2VydmljZXMuUXVlcnlTdGF0dXNSZXF1ZXN0GikuZHhvcy5jbGllbnQuc2VydmljZXMuUXVlcnlTdGF0dXNSZXNwb25zZTABEjcKBVJlc2V0EhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5EkUKC0dldFBsYXRmb3JtEhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5Gh4uZHhvcy5jbGllbnQuc2VydmljZXMuUGxhdGZvcm0ytQYKD0lkZW50aXR5U2VydmljZRJdCg5DcmVhdGVJZGVudGl0eRIrLmR4b3MuY2xpZW50LnNlcnZpY2VzLkNyZWF0ZUlkZW50aXR5UmVxdWVzdBoeLmR4b3MuY2xpZW50LnNlcnZpY2VzLklkZW50aXR5EmoKGFJlcXVlc3RSZWNvdmVyeUNoYWxsZW5nZRIWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRo2LmR4b3MuY2xpZW50LnNlcnZpY2VzLlJlcXVlc3RSZWNvdmVyeUNoYWxsZW5nZVJlc3BvbnNlEl8KD1JlY292ZXJJZGVudGl0eRIsLmR4b3MuY2xpZW50LnNlcnZpY2VzLlJlY292ZXJJZGVudGl0eVJlcXVlc3QaHi5keG9zLmNsaWVudC5zZXJ2aWNlcy5JZGVudGl0eRKJAQoYQ3JlYXRlUmVjb3ZlcnlDcmVkZW50aWFsEjUuZHhvcy5jbGllbnQuc2VydmljZXMuQ3JlYXRlUmVjb3ZlcnlDcmVkZW50aWFsUmVxdWVzdBo2LmR4b3MuY2xpZW50LnNlcnZpY2VzLkNyZWF0ZVJlY292ZXJ5Q3JlZGVudGlhbFJlc3BvbnNlElYKDVF1ZXJ5SWRlbnRpdHkSFi5nb29nbGUucHJvdG9idWYuRW1wdHkaKy5keG9zLmNsaWVudC5zZXJ2aWNlcy5RdWVyeUlkZW50aXR5UmVzcG9uc2UwARJXCg1VcGRhdGVQcm9maWxlEiYuZHhvcy5oYWxvLmNyZWRlbnRpYWxzLlByb2ZpbGVEb2N1bWVudBoeLmR4b3MuY2xpZW50LnNlcnZpY2VzLklkZW50aXR5EmYKEFNpZ25QcmVzZW50YXRpb24SLS5keG9zLmNsaWVudC5zZXJ2aWNlcy5TaWduUHJlc2VudGF0aW9uUmVxdWVzdBojLmR4b3MuaGFsby5jcmVkZW50aWFscy5QcmVzZW50YXRpb24SUQoUQ3JlYXRlQXV0aENyZWRlbnRpYWwSFi5nb29nbGUucHJvdG9idWYuRW1wdHkaIS5keG9zLmhhbG8uY3JlZGVudGlhbHMuQ3JlZGVudGlhbDLCAQoORGV2aWNlc1NlcnZpY2USWgoMVXBkYXRlRGV2aWNlEiwuZHhvcy5oYWxvLmNyZWRlbnRpYWxzLkRldmljZVByb2ZpbGVEb2N1bWVudBocLmR4b3MuY2xpZW50LnNlcnZpY2VzLkRldmljZRJUCgxRdWVyeURldmljZXMSFi5nb29nbGUucHJvdG9idWYuRW1wdHkaKi5keG9zLmNsaWVudC5zZXJ2aWNlcy5RdWVyeURldmljZXNSZXNwb25zZTABMqkBCg9Db250YWN0c1NlcnZpY2USSAoLR2V0Q29udGFjdHMSFi5nb29nbGUucHJvdG9idWYuRW1wdHkaIS5keG9zLmNsaWVudC5zZXJ2aWNlcy5Db250YWN0Qm9vaxJMCg1RdWVyeUNvbnRhY3RzEhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5GiEuZHhvcy5jbGllbnQuc2VydmljZXMuQ29udGFjdEJvb2swATLRCQoNU3BhY2VzU2VydmljZRJUCgtDcmVhdGVTcGFjZRIoLmR4b3MuY2xpZW50LnNlcnZpY2VzLkNyZWF0ZVNwYWNlUmVxdWVzdBobLmR4b3MuY2xpZW50LnNlcnZpY2VzLlNwYWNlEk8KC1VwZGF0ZVNwYWNlEiguZHhvcy5jbGllbnQuc2VydmljZXMuVXBkYXRlU3BhY2VSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5ElIKC1F1ZXJ5U3BhY2VzEhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5GikuZHhvcy5jbGllbnQuc2VydmljZXMuUXVlcnlTcGFjZXNSZXNwb25zZTABElkKEFVwZGF0ZU1lbWJlclJvbGUSLS5keG9zLmNsaWVudC5zZXJ2aWNlcy5VcGRhdGVNZW1iZXJSb2xlUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRJRCgxBZG1pdENvbnRhY3QSKS5keG9zLmNsaWVudC5zZXJ2aWNlcy5BZG1pdENvbnRhY3RSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5EmYKDkpvaW5CeVNwYWNlS2V5EisuZHhvcy5jbGllbnQuc2VydmljZXMuSm9pbkJ5U3BhY2VLZXlSZXF1ZXN0GicuZHhvcy5jbGllbnQuc2VydmljZXMuSm9pblNwYWNlUmVzcG9uc2USTwoLUG9zdE1lc3NhZ2USKC5keG9zLmNsaWVudC5zZXJ2aWNlcy5Qb3N0TWVzc2FnZVJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkSbwoRU3Vic2NyaWJlTWVzc2FnZXMSLi5keG9zLmNsaWVudC5zZXJ2aWNlcy5TdWJzY3JpYmVNZXNzYWdlc1JlcXVlc3QaKC5keG9zLm1lc2gudGVsZXBvcnQuZ29zc2lwLkdvc3NpcE1lc3NhZ2UwARJZChBXcml0ZUNyZWRlbnRpYWxzEi0uZHhvcy5jbGllbnQuc2VydmljZXMuV3JpdGVDcmVkZW50aWFsc1JlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkSZgoQUXVlcnlDcmVkZW50aWFscxItLmR4b3MuY2xpZW50LnNlcnZpY2VzLlF1ZXJ5Q3JlZGVudGlhbHNSZXF1ZXN0GiEuZHhvcy5oYWxvLmNyZWRlbnRpYWxzLkNyZWRlbnRpYWwwARJiCgtDcmVhdGVFcG9jaBIoLmR4b3MuY2xpZW50LnNlcnZpY2VzLkNyZWF0ZUVwb2NoUmVxdWVzdBopLmR4b3MuY2xpZW50LnNlcnZpY2VzLkNyZWF0ZUVwb2NoUmVzcG9uc2USYgoLRXhwb3J0U3BhY2USKC5keG9zLmNsaWVudC5zZXJ2aWNlcy5FeHBvcnRTcGFjZVJlcXVlc3QaKS5keG9zLmNsaWVudC5zZXJ2aWNlcy5FeHBvcnRTcGFjZVJlc3BvbnNlEmIKC0ltcG9ydFNwYWNlEiguZHhvcy5jbGllbnQuc2VydmljZXMuSW1wb3J0U3BhY2VSZXF1ZXN0GikuZHhvcy5jbGllbnQuc2VydmljZXMuSW1wb3J0U3BhY2VSZXNwb25zZTLjAwoSSW52aXRhdGlvbnNTZXJ2aWNlElgKEENyZWF0ZUludml0YXRpb24SIC5keG9zLmNsaWVudC5zZXJ2aWNlcy5JbnZpdGF0aW9uGiAuZHhvcy5jbGllbnQuc2VydmljZXMuSW52aXRhdGlvbjABEmUKEEFjY2VwdEludml0YXRpb24SLS5keG9zLmNsaWVudC5zZXJ2aWNlcy5BY2NlcHRJbnZpdGF0aW9uUmVxdWVzdBogLmR4b3MuY2xpZW50LnNlcnZpY2VzLkludml0YXRpb24wARJTCgxBdXRoZW50aWNhdGUSKy5keG9zLmNsaWVudC5zZXJ2aWNlcy5BdXRoZW50aWNhdGlvblJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkSWQoQQ2FuY2VsSW52aXRhdGlvbhItLmR4b3MuY2xpZW50LnNlcnZpY2VzLkNhbmNlbEludml0YXRpb25SZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5ElwKEFF1ZXJ5SW52aXRhdGlvbnMSFi5nb29nbGUucHJvdG9idWYuRW1wdHkaLi5keG9zLmNsaWVudC5zZXJ2aWNlcy5RdWVyeUludml0YXRpb25zUmVzcG9uc2UwATKLBQoOTmV0d29ya1NlcnZpY2USUQoMVXBkYXRlQ29uZmlnEikuZHhvcy5jbGllbnQuc2VydmljZXMuVXBkYXRlQ29uZmlnUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRJMCgtRdWVyeVN0YXR1cxIWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRojLmR4b3MuY2xpZW50LnNlcnZpY2VzLk5ldHdvcmtTdGF0dXMwARJCCglKb2luU3dhcm0SHS5keG9zLmVkZ2Uuc2lnbmFsLkpvaW5SZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5EkQKCkxlYXZlU3dhcm0SHi5keG9zLmVkZ2Uuc2lnbmFsLkxlYXZlUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRJQCgpRdWVyeVN3YXJtEh4uZHhvcy5lZGdlLnNpZ25hbC5RdWVyeVJlcXVlc3QaIi5keG9zLmVkZ2UubWVzc2VuZ2VyLlN3YXJtUmVzcG9uc2USbQoTU3Vic2NyaWJlU3dhcm1TdGF0ZRIwLmR4b3MuY2xpZW50LnNlcnZpY2VzLlN1YnNjcmliZVN3YXJtU3RhdGVSZXF1ZXN0GiIuZHhvcy5lZGdlLm1lc3Nlbmdlci5Td2FybVJlc3BvbnNlMAESQAoLU2VuZE1lc3NhZ2USGS5keG9zLmVkZ2Uuc2lnbmFsLk1lc3NhZ2UaFi5nb29nbGUucHJvdG9idWYuRW1wdHkSSwoRU3Vic2NyaWJlTWVzc2FnZXMSGS5keG9zLmVkZ2UubWVzc2VuZ2VyLlBlZXIaGS5keG9zLmVkZ2Uuc2lnbmFsLk1lc3NhZ2UwATKLAgoQRWRnZUFnZW50U2VydmljZRJaCg9RdWVyeUVkZ2VTdGF0dXMSFi5nb29nbGUucHJvdG9idWYuRW1wdHkaLS5keG9zLmNsaWVudC5zZXJ2aWNlcy5RdWVyeUVkZ2VTdGF0dXNSZXNwb25zZTABEj0KC0NyZWF0ZUFnZW50EhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5ElwKEFF1ZXJ5QWdlbnRTdGF0dXMSFi5nb29nbGUucHJvdG9idWYuRW1wdHkaLi5keG9zLmNsaWVudC5zZXJ2aWNlcy5RdWVyeUFnZW50U3RhdHVzUmVzcG9uc2UwAWIGcHJvdG8z", [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("ChpkeG9zL2NsaWVudC9zZXJ2aWNlcy5wcm90bxIUZHhvcy5jbGllbnQuc2VydmljZXMiSQoTVXBkYXRlU3RhdHVzUmVxdWVzdBIyCgZzdGF0dXMYASABKA4yIi5keG9zLmNsaWVudC5zZXJ2aWNlcy5TeXN0ZW1TdGF0dXMiOAoSUXVlcnlTdGF0dXNSZXF1ZXN0EhUKCGludGVydmFsGAEgASgFSACIAQFCCwoJX2ludGVydmFsIkkKE1F1ZXJ5U3RhdHVzUmVzcG9uc2USMgoGc3RhdHVzGAEgASgOMiIuZHhvcy5jbGllbnQuc2VydmljZXMuU3lzdGVtU3RhdHVzIp8BChVHZXREaWFnbm9zdGljc1JlcXVlc3QSSQoEa2V5cxgBIAEoDjI2LmR4b3MuY2xpZW50LnNlcnZpY2VzLkdldERpYWdub3N0aWNzUmVxdWVzdC5LRVlfT1BUSU9OSACIAQEiMgoKS0VZX09QVElPThIICgROT05FEAASDAoIVFJVTkNBVEUQARIMCghIVU1BTklaRRACQgcKBV9rZXlzInUKFkdldERpYWdub3N0aWNzUmVzcG9uc2USLQoJdGltZXN0YW1wGAEgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIsCgtkaWFnbm9zdGljcxgCIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3Qi+gIKCFBsYXRmb3JtEjoKBHR5cGUYASABKA4yLC5keG9zLmNsaWVudC5zZXJ2aWNlcy5QbGF0Zm9ybS5QTEFURk9STV9UWVBFEhcKCnVzZXJfYWdlbnQYAiABKAlIAIgBARIVCghwbGF0Zm9ybRgDIAEoCUgBiAEBEhEKBGFyY2gYBCABKAlIAogBARIUCgdydW50aW1lGAUgASgJSAOIAQESEwoGdXB0aW1lGAYgASgNSASIAQESLAoGbWVtb3J5GAcgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgFiAEBIk8KDVBMQVRGT1JNX1RZUEUSCwoHQlJPV1NFUhAAEhEKDVNIQVJFRF9XT1JLRVIQARIICgROT0RFEAISFAoQREVESUNBVEVEX1dPUktFUhADQg0KC191c2VyX2FnZW50QgsKCV9wbGF0Zm9ybUIHCgVfYXJjaEIKCghfcnVudGltZUIJCgdfdXB0aW1lQgkKB19tZW1vcnkiyQEKCElkZW50aXR5EgsKA2RpZBgEIAEoCRIqCgxpZGVudGl0eV9rZXkYASABKAsyFC5keG9zLmtleXMuUHVibGljS2V5EiwKCXNwYWNlX2tleRgCIAEoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXlIAIgBARI8Cgdwcm9maWxlGAMgASgLMiYuZHhvcy5oYWxvLmNyZWRlbnRpYWxzLlByb2ZpbGVEb2N1bWVudEgBiAEBQgwKCl9zcGFjZV9rZXlCCgoIX3Byb2ZpbGUijwEKIFJlcXVlc3RSZWNvdmVyeUNoYWxsZW5nZVJlc3BvbnNlEigKCmRldmljZV9rZXkYASABKAsyFC5keG9zLmtleXMuUHVibGljS2V5Ei4KEGNvbnRyb2xfZmVlZF9rZXkYAiABKAsyFC5keG9zLmtleXMuUHVibGljS2V5EhEKCWNoYWxsZW5nZRgDIAEoCSK6AwoWUmVjb3ZlcklkZW50aXR5UmVxdWVzdBIXCg1yZWNvdmVyeV9jb2RlGAEgASgJSAASUgoIZXh0ZXJuYWwYAiABKAsyPi5keG9zLmNsaWVudC5zZXJ2aWNlcy5SZWNvdmVySWRlbnRpdHlSZXF1ZXN0LkV4dGVybmFsU2lnbmF0dXJlSAASDwoFdG9rZW4YAyABKAlIABqWAgoRRXh0ZXJuYWxTaWduYXR1cmUSKAoKbG9va3VwX2tleRgBIAEoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXkSKAoKZGV2aWNlX2tleRgCIAEoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXkSLgoQY29udHJvbF9mZWVkX2tleRgDIAEoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXkSEQoJc2lnbmF0dXJlGAQgASgMEh0KEGNsaWVudF9kYXRhX2pzb24YBSABKAxIAIgBARIfChJhdXRoZW50aWNhdG9yX2RhdGEYBiABKAxIAYgBAUITChFfY2xpZW50X2RhdGFfanNvbkIVChNfYXV0aGVudGljYXRvcl9kYXRhQgkKB3JlcXVlc3QigQEKFlJlY292ZXJ5Q3JlZGVudGlhbERhdGESKgoMcmVjb3Zlcnlfa2V5GAEgASgLMhQuZHhvcy5rZXlzLlB1YmxpY0tleRIoCgpsb29rdXBfa2V5GAIgASgLMhQuZHhvcy5rZXlzLlB1YmxpY0tleRIRCglhbGdvcml0aG0YAyABKAkiawofQ3JlYXRlUmVjb3ZlcnlDcmVkZW50aWFsUmVxdWVzdBI/CgRkYXRhGAEgASgLMiwuZHhvcy5jbGllbnQuc2VydmljZXMuUmVjb3ZlcnlDcmVkZW50aWFsRGF0YUgAiAEBQgcKBV9kYXRhIlAKIENyZWF0ZVJlY292ZXJ5Q3JlZGVudGlhbFJlc3BvbnNlEhoKDXJlY292ZXJ5X2NvZGUYASABKAlIAIgBAUIQCg5fcmVjb3ZlcnlfY29kZSJbChVRdWVyeUlkZW50aXR5UmVzcG9uc2USNQoIaWRlbnRpdHkYASABKAsyHi5keG9zLmNsaWVudC5zZXJ2aWNlcy5JZGVudGl0eUgAiAEBQgsKCV9pZGVudGl0eSJyChdTaWduUHJlc2VudGF0aW9uUmVxdWVzdBI5CgxwcmVzZW50YXRpb24YASABKAsyIy5keG9zLmhhbG8uY3JlZGVudGlhbHMuUHJlc2VudGF0aW9uEhIKBW5vbmNlGAIgASgMSACIAQFCCAoGX25vbmNlIsUBChVDcmVhdGVJZGVudGl0eVJlcXVlc3QSPAoHcHJvZmlsZRgBIAEoCzImLmR4b3MuaGFsby5jcmVkZW50aWFscy5Qcm9maWxlRG9jdW1lbnRIAIgBARJJCg5kZXZpY2VfcHJvZmlsZRgDIAEoCzIsLmR4b3MuaGFsby5jcmVkZW50aWFscy5EZXZpY2VQcm9maWxlRG9jdW1lbnRIAYgBAUIKCghfcHJvZmlsZUIRCg9fZGV2aWNlX3Byb2ZpbGVKBAgCEAMipwIKBkRldmljZRIoCgpkZXZpY2Vfa2V5GAEgASgLMhQuZHhvcy5rZXlzLlB1YmxpY0tleRIuCgRraW5kGAIgASgOMiAuZHhvcy5jbGllbnQuc2VydmljZXMuRGV2aWNlS2luZBJCCgdwcm9maWxlGAMgASgLMiwuZHhvcy5oYWxvLmNyZWRlbnRpYWxzLkRldmljZVByb2ZpbGVEb2N1bWVudEgAiAEBEjwKCHByZXNlbmNlGAQgASgOMiouZHhvcy5jbGllbnQuc2VydmljZXMuRGV2aWNlLlByZXNlbmNlU3RhdGUiNQoNUHJlc2VuY2VTdGF0ZRILCgdPRkZMSU5FEAASCgoGT05MSU5FEAESCwoHUkVNT1ZFRBACQgoKCF9wcm9maWxlIkUKFFF1ZXJ5RGV2aWNlc1Jlc3BvbnNlEi0KB2RldmljZXMYASADKAsyHC5keG9zLmNsaWVudC5zZXJ2aWNlcy5EZXZpY2UiqgEKB0NvbnRhY3QSKQoLaWRlbnRpdHlLZXkYAiABKAsyFC5keG9zLmtleXMuUHVibGljS2V5EjwKB3Byb2ZpbGUYASABKAsyJi5keG9zLmhhbG8uY3JlZGVudGlhbHMuUHJvZmlsZURvY3VtZW50SACIAQESKgoMY29tbW9uU3BhY2VzGAMgAygLMhQuZHhvcy5rZXlzLlB1YmxpY0tleUIKCghfcHJvZmlsZSI+CgtDb250YWN0Qm9vaxIvCghjb250YWN0cxgBIAMoCzIdLmR4b3MuY2xpZW50LnNlcnZpY2VzLkNvbnRhY3QilgIKC1NwYWNlTWVtYmVyEjAKCGlkZW50aXR5GAEgASgLMh4uZHhvcy5jbGllbnQuc2VydmljZXMuSWRlbnRpdHkSQQoIcHJlc2VuY2UYAiABKA4yLy5keG9zLmNsaWVudC5zZXJ2aWNlcy5TcGFjZU1lbWJlci5QcmVzZW5jZVN0YXRlEjEKCnBlZXJTdGF0ZXMYAyADKAsyHS5keG9zLm1lc2gucHJlc2VuY2UuUGVlclN0YXRlEjUKBHJvbGUYBCABKA4yJy5keG9zLmhhbG8uY3JlZGVudGlhbHMuU3BhY2VNZW1iZXIuUm9sZSIoCg1QcmVzZW5jZVN0YXRlEgsKB09GRkxJTkUQABIKCgZPTkxJTkUQASK4EwoFU3BhY2USCgoCaWQYBSABKAkSJwoJc3BhY2Vfa2V5GAEgASgLMhQuZHhvcy5rZXlzLlB1YmxpY0tleRIvCgVzdGF0ZRgCIAEoDjIgLmR4b3MuY2xpZW50LnNlcnZpY2VzLlNwYWNlU3RhdGUSQAoIcGlwZWxpbmUYAyABKAsyKS5keG9zLmNsaWVudC5zZXJ2aWNlcy5TcGFjZS5QaXBlbGluZVN0YXRlSACIAQESJQoFZXJyb3IYBCABKAsyES5keG9zLmVycm9yLkVycm9ySAGIAQESSQoQZWRnZV9yZXBsaWNhdGlvbhgGIAEoDjIqLmR4b3MuZWNoby5tZXRhZGF0YS5FZGdlUmVwbGljYXRpb25TZXR0aW5nSAKIAQESDAoEdGFncxgHIAMoCRJCChFtZW1iZXJzaGlwX3BvbGljeRgIIAEoDjInLmR4b3MuaGFsby5jcmVkZW50aWFscy5NZW1iZXJzaGlwUG9saWN5EjIKB21lbWJlcnMYCiADKAsyIS5keG9zLmNsaWVudC5zZXJ2aWNlcy5TcGFjZU1lbWJlchIqCgdjcmVhdG9yGAsgASgLMhQuZHhvcy5rZXlzLlB1YmxpY0tleUgDiAEBEjIKBWNhY2hlGBQgASgLMh4uZHhvcy5lY2hvLm1ldGFkYXRhLlNwYWNlQ2FjaGVIBIgBARI0CgdtZXRyaWNzGBUgASgLMiMuZHhvcy5jbGllbnQuc2VydmljZXMuU3BhY2UuTWV0cmljcxrXAwoHTWV0cmljcxItCgRvcGVuGAEgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgAiAEBEjwKE3BpcGVsaW5lX2luaXRfYmVnaW4YAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAGIAQESPwoWY29udHJvbF9waXBlbGluZV9yZWFkeRgDIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAogBARI7ChJkYXRhX3BpcGVsaW5lX29wZW4YBCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAOIAQESPAoTZGF0YV9waXBlbGluZV9yZWFkeRgFIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIBIgBARIuCgVyZWFkeRgGIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIBYgBAUIHCgVfb3BlbkIWChRfcGlwZWxpbmVfaW5pdF9iZWdpbkIZChdfY29udHJvbF9waXBlbGluZV9yZWFkeUIVChNfZGF0YV9waXBlbGluZV9vcGVuQhYKFF9kYXRhX3BpcGVsaW5lX3JlYWR5QggKBl9yZWFkeRrcCgoNUGlwZWxpbmVTdGF0ZRIzChBjb250cm9sX2ZlZWRfa2V5GAEgASgLMhQuZHhvcy5rZXlzLlB1YmxpY0tleUgAiAEBEjAKDWRhdGFfZmVlZF9rZXkYAiABKAsyFC5keG9zLmtleXMuUHVibGljS2V5SAGIAQESKwoNY29udHJvbF9mZWVkcxgSIAMoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXkSKAoKZGF0YV9mZWVkcxgTIAMoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXkSPQoNY3VycmVudF9lcG9jaBgUIAEoCzIhLmR4b3MuaGFsby5jcmVkZW50aWFscy5DcmVkZW50aWFsSAKIAQESPQoNYXBwbGllZF9lcG9jaBgVIAEoCzIhLmR4b3MuaGFsby5jcmVkZW50aWFscy5DcmVkZW50aWFsSAOIAQESTAoZY3VycmVudF9jb250cm9sX3RpbWVmcmFtZRgKIAEoCzIkLmR4b3MuZWNoby50aW1lZnJhbWUuVGltZWZyYW1lVmVjdG9ySASIAQESSwoYdGFyZ2V0X2NvbnRyb2xfdGltZWZyYW1lGAsgASgLMiQuZHhvcy5lY2hvLnRpbWVmcmFtZS5UaW1lZnJhbWVWZWN0b3JIBYgBARJKChd0b3RhbF9jb250cm9sX3RpbWVmcmFtZRgOIAEoCzIkLmR4b3MuZWNoby50aW1lZnJhbWUuVGltZWZyYW1lVmVjdG9ySAaIAQESSgoXa25vd25fY29udHJvbF90aW1lZnJhbWUYDyABKAsyJC5keG9zLmVjaG8udGltZWZyYW1lLlRpbWVmcmFtZVZlY3RvckgHiAEBEkcKFHN0YXJ0X2RhdGFfdGltZWZyYW1lGGQgASgLMiQuZHhvcy5lY2hvLnRpbWVmcmFtZS5UaW1lZnJhbWVWZWN0b3JICIgBARJJChZjdXJyZW50X2RhdGFfdGltZWZyYW1lGAwgASgLMiQuZHhvcy5lY2hvLnRpbWVmcmFtZS5UaW1lZnJhbWVWZWN0b3JICYgBARJIChV0YXJnZXRfZGF0YV90aW1lZnJhbWUYDSABKAsyJC5keG9zLmVjaG8udGltZWZyYW1lLlRpbWVmcmFtZVZlY3RvckgKiAEBEkcKFHRvdGFsX2RhdGFfdGltZWZyYW1lGBAgASgLMiQuZHhvcy5lY2hvLnRpbWVmcmFtZS5UaW1lZnJhbWVWZWN0b3JIC4gBARJHChRrbm93bl9kYXRhX3RpbWVmcmFtZRgRIAEoCzIkLmR4b3MuZWNoby50aW1lZnJhbWUuVGltZWZyYW1lVmVjdG9ySAyIAQESGwoOc3BhY2Vfcm9vdF91cmwYFiABKAlIDYgBAUITChFfY29udHJvbF9mZWVkX2tleUIQCg5fZGF0YV9mZWVkX2tleUIQCg5fY3VycmVudF9lcG9jaEIQCg5fYXBwbGllZF9lcG9jaEIcChpfY3VycmVudF9jb250cm9sX3RpbWVmcmFtZUIbChlfdGFyZ2V0X2NvbnRyb2xfdGltZWZyYW1lQhoKGF90b3RhbF9jb250cm9sX3RpbWVmcmFtZUIaChhfa25vd25fY29udHJvbF90aW1lZnJhbWVCFwoVX3N0YXJ0X2RhdGFfdGltZWZyYW1lQhkKF19jdXJyZW50X2RhdGFfdGltZWZyYW1lQhgKFl90YXJnZXRfZGF0YV90aW1lZnJhbWVCFwoVX3RvdGFsX2RhdGFfdGltZWZyYW1lQhcKFV9rbm93bl9kYXRhX3RpbWVmcmFtZUIRCg9fc3BhY2Vfcm9vdF91cmxCCwoJX3BpcGVsaW5lQggKBl9lcnJvckITChFfZWRnZV9yZXBsaWNhdGlvbkIKCghfY3JlYXRvckIICgZfY2FjaGUiZgoSQ3JlYXRlU3BhY2VSZXF1ZXN0EgwKBHRhZ3MYASADKAkSQgoRbWVtYmVyc2hpcF9wb2xpY3kYAiABKA4yJy5keG9zLmhhbG8uY3JlZGVudGlhbHMuTWVtYmVyc2hpcFBvbGljeSLdAQoSVXBkYXRlU3BhY2VSZXF1ZXN0EicKCXNwYWNlX2tleRgBIAEoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXkSNAoFc3RhdGUYAiABKA4yIC5keG9zLmNsaWVudC5zZXJ2aWNlcy5TcGFjZVN0YXRlSACIAQESSQoQZWRnZV9yZXBsaWNhdGlvbhgDIAEoDjIqLmR4b3MuZWNoby5tZXRhZGF0YS5FZGdlUmVwbGljYXRpb25TZXR0aW5nSAGIAQFCCAoGX3N0YXRlQhMKEV9lZGdlX3JlcGxpY2F0aW9uIkIKE1F1ZXJ5U3BhY2VzUmVzcG9uc2USKwoGc3BhY2VzGAEgAygLMhsuZHhvcy5jbGllbnQuc2VydmljZXMuU3BhY2UidQoSUG9zdE1lc3NhZ2VSZXF1ZXN0EicKCXNwYWNlX2tleRgBIAEoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXkSDwoHY2hhbm5lbBgCIAEoCRIlCgdtZXNzYWdlGAMgASgLMhQuZ29vZ2xlLnByb3RvYnVmLkFueSJUChhTdWJzY3JpYmVNZXNzYWdlc1JlcXVlc3QSJwoJc3BhY2Vfa2V5GAEgASgLMhQuZHhvcy5rZXlzLlB1YmxpY0tleRIPCgdjaGFubmVsGAIgASgJInoKF1dyaXRlQ3JlZGVudGlhbHNSZXF1ZXN0EicKCXNwYWNlX2tleRgBIAEoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXkSNgoLY3JlZGVudGlhbHMYAiADKAsyIS5keG9zLmhhbG8uY3JlZGVudGlhbHMuQ3JlZGVudGlhbCJkChdRdWVyeUNyZWRlbnRpYWxzUmVxdWVzdBInCglzcGFjZV9rZXkYASABKAsyFC5keG9zLmtleXMuUHVibGljS2V5EhQKB25vX3RhaWwYAiABKAhIAIgBAUIKCghfbm9fdGFpbCL1AgoSQ3JlYXRlRXBvY2hSZXF1ZXN0EicKCXNwYWNlX2tleRgBIAEoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXkSSgoJbWlncmF0aW9uGAIgASgOMjIuZHhvcy5jbGllbnQuc2VydmljZXMuQ3JlYXRlRXBvY2hSZXF1ZXN0Lk1pZ3JhdGlvbkgAiAEBEh8KEmF1dG9tZXJnZV9yb290X3VybBgDIAEoCUgBiAEBIqMBCglNaWdyYXRpb24SCAoETk9ORRAAEhIKDklOSVRfQVVUT01FUkdFEAESIAocUFJVTkVfQVVUT01FUkdFX1JPT1RfSElTVE9SWRACEhsKF0ZSQUdNRU5UX0FVVE9NRVJHRV9ST09UEAMSGgoWUkVQTEFDRV9BVVRPTUVSR0VfUk9PVBAEEh0KGU1JR1JBVEVfUkVGRVJFTkNFU19UT19EWE4QBUIMCgpfbWlncmF0aW9uQhUKE19hdXRvbWVyZ2Vfcm9vdF91cmwiyAEKE0NyZWF0ZUVwb2NoUmVzcG9uc2USQAoQZXBvY2hfY3JlZGVudGlhbBgBIAEoCzIhLmR4b3MuaGFsby5jcmVkZW50aWFscy5DcmVkZW50aWFsSACIAQESRAoRY29udHJvbF90aW1lZnJhbWUYAiABKAsyJC5keG9zLmVjaG8udGltZWZyYW1lLlRpbWVmcmFtZVZlY3RvckgBiAEBQhMKEV9lcG9jaF9jcmVkZW50aWFsQhQKEl9jb250cm9sX3RpbWVmcmFtZSKnAQoXVXBkYXRlTWVtYmVyUm9sZVJlcXVlc3QSJwoJc3BhY2Vfa2V5GAEgASgLMhQuZHhvcy5rZXlzLlB1YmxpY0tleRIoCgptZW1iZXJfa2V5GAIgASgLMhQuZHhvcy5rZXlzLlB1YmxpY0tleRI5CghuZXdfcm9sZRgDIAEoDjInLmR4b3MuaGFsby5jcmVkZW50aWFscy5TcGFjZU1lbWJlci5Sb2xlIqUBChNBZG1pdENvbnRhY3RSZXF1ZXN0Ei4KB2NvbnRhY3QYASABKAsyHS5keG9zLmNsaWVudC5zZXJ2aWNlcy5Db250YWN0EjUKBHJvbGUYAiABKA4yJy5keG9zLmhhbG8uY3JlZGVudGlhbHMuU3BhY2VNZW1iZXIuUm9sZRInCglzcGFjZV9rZXkYAyABKAsyFC5keG9zLmtleXMuUHVibGljS2V5IkkKEENvbnRhY3RBZG1pc3Npb24SNQoKY3JlZGVudGlhbBgBIAEoCzIhLmR4b3MuaGFsby5jcmVkZW50aWFscy5DcmVkZW50aWFsIj8KEUpvaW5TcGFjZVJlc3BvbnNlEioKBXNwYWNlGAEgASgLMhsuZHhvcy5jbGllbnQuc2VydmljZXMuU3BhY2UiQAoVSm9pbkJ5U3BhY2VLZXlSZXF1ZXN0EicKCXNwYWNlX2tleRgBIAEoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXkinQEKDFNwYWNlQXJjaGl2ZRIQCghmaWxlbmFtZRgBIAEoCRIQCghjb250ZW50cxgCIAEoDBI+CgZmb3JtYXQYAyABKA4yKS5keG9zLmNsaWVudC5zZXJ2aWNlcy5TcGFjZUFyY2hpdmUuRm9ybWF0SACIAQEiHgoGRm9ybWF0EgoKBkJJTkFSWRAAEggKBEpTT04QAUIJCgdfZm9ybWF0InEKEkV4cG9ydFNwYWNlUmVxdWVzdBIQCghzcGFjZV9pZBgBIAEoCRI+CgZmb3JtYXQYAiABKA4yKS5keG9zLmNsaWVudC5zZXJ2aWNlcy5TcGFjZUFyY2hpdmUuRm9ybWF0SACIAQFCCQoHX2Zvcm1hdCJKChNFeHBvcnRTcGFjZVJlc3BvbnNlEjMKB2FyY2hpdmUYASABKAsyIi5keG9zLmNsaWVudC5zZXJ2aWNlcy5TcGFjZUFyY2hpdmUiSQoSSW1wb3J0U3BhY2VSZXF1ZXN0EjMKB2FyY2hpdmUYASABKAsyIi5keG9zLmNsaWVudC5zZXJ2aWNlcy5TcGFjZUFyY2hpdmUiKwoTSW1wb3J0U3BhY2VSZXNwb25zZRIUCgxuZXdfc3BhY2VfaWQYASABKAkirQEKF0FjY2VwdEludml0YXRpb25SZXF1ZXN0EjQKCmludml0YXRpb24YASABKAsyIC5keG9zLmNsaWVudC5zZXJ2aWNlcy5JbnZpdGF0aW9uEkkKDmRldmljZV9wcm9maWxlGAIgASgLMiwuZHhvcy5oYWxvLmNyZWRlbnRpYWxzLkRldmljZVByb2ZpbGVEb2N1bWVudEgAiAEBQhEKD19kZXZpY2VfcHJvZmlsZSJBChVBdXRoZW50aWNhdGlvblJlcXVlc3QSFQoNaW52aXRhdGlvbl9pZBgBIAEoCRIRCglhdXRoX2NvZGUYAiABKAkiMAoXQ2FuY2VsSW52aXRhdGlvblJlcXVlc3QSFQoNaW52aXRhdGlvbl9pZBgBIAEoCSKFAQoQSW52aXRhdGlvbk1ldGhvZBIzCgdjcmVhdGVkGAEgASgLMiAuZHhvcy5jbGllbnQuc2VydmljZXMuSW52aXRhdGlvbkgAEjQKCGFjY2VwdGVkGAIgASgLMiAuZHhvcy5jbGllbnQuc2VydmljZXMuSW52aXRhdGlvbkgAQgYKBGtpbmQi4gIKGFF1ZXJ5SW52aXRhdGlvbnNSZXNwb25zZRJFCgZhY3Rpb24YASABKA4yNS5keG9zLmNsaWVudC5zZXJ2aWNlcy5RdWVyeUludml0YXRpb25zUmVzcG9uc2UuQWN0aW9uEkEKBHR5cGUYAiABKA4yMy5keG9zLmNsaWVudC5zZXJ2aWNlcy5RdWVyeUludml0YXRpb25zUmVzcG9uc2UuVHlwZRI1CgtpbnZpdGF0aW9ucxgDIAMoCzIgLmR4b3MuY2xpZW50LnNlcnZpY2VzLkludml0YXRpb24SFQoIZXhpc3RpbmcYBCABKAhIAIgBASI+CgZBY3Rpb24SCQoFQURERUQQABILCgdSRU1PVkVEEAESCQoFU0FWRUQQAhIRCg1MT0FEX0NPTVBMRVRFEAMiIQoEVHlwZRILCgdDUkVBVEVEEAASDAoIQUNDRVBURUQQAUILCglfZXhpc3RpbmciWgohTG9hZFBlcnNpc3RlbnRJbnZpdGF0aW9uc1Jlc3BvbnNlEjUKC2ludml0YXRpb25zGAEgAygLMiAuZHhvcy5jbGllbnQuc2VydmljZXMuSW52aXRhdGlvbiKFAgoNTmV0d29ya1N0YXR1cxI0CgVzd2FybRgBIAEoDjIlLmR4b3MuY2xpZW50LnNlcnZpY2VzLkNvbm5lY3Rpb25TdGF0ZRI9CglzaWduYWxpbmcYAiADKAsyKi5keG9zLmNsaWVudC5zZXJ2aWNlcy5OZXR3b3JrU3RhdHVzLlNpZ25hbBI3Cg9jb25uZWN0aW9uX2luZm8YAyADKAsyHi5keG9zLmRldnRvb2xzLnN3YXJtLlN3YXJtSW5mbxpGCgZTaWduYWwSDgoGc2VydmVyGAEgASgJEiwKBXN0YXRlGAIgASgOMh0uZHhvcy5tZXNoLnNpZ25hbC5TaWduYWxTdGF0ZSJLChNVcGRhdGVDb25maWdSZXF1ZXN0EjQKBXN3YXJtGAEgASgOMiUuZHhvcy5jbGllbnQuc2VydmljZXMuQ29ubmVjdGlvblN0YXRlIkEKGlN1YnNjcmliZVN3YXJtU3RhdGVSZXF1ZXN0EiMKBXRvcGljGAEgASgLMhQuZHhvcy5rZXlzLlB1YmxpY0tleSKBAgoKRWRnZVN0YXR1cxI/CgVzdGF0ZRgBIAEoDjIwLmR4b3MuY2xpZW50LnNlcnZpY2VzLkVkZ2VTdGF0dXMuQ29ubmVjdGlvblN0YXRlEgsKA3J0dBgCIAEoBRIOCgZ1cHRpbWUYAyABKAUSFQoNcmF0ZV9ieXRlc191cBgEIAEoBRIXCg9yYXRlX2J5dGVzX2Rvd24YBSABKAUSFQoNbWVzc2FnZXNfc2VudBgGIAEoBRIZChFtZXNzYWdlc19yZWNlaXZlZBgHIAEoBSIzCg9Db25uZWN0aW9uU3RhdGUSEQoNTk9UX0NPTk5FQ1RFRBAAEg0KCUNPTk5FQ1RFRBABIksKF1F1ZXJ5RWRnZVN0YXR1c1Jlc3BvbnNlEjAKBnN0YXR1cxgBIAEoCzIgLmR4b3MuY2xpZW50LnNlcnZpY2VzLkVkZ2VTdGF0dXMiqwEKGFF1ZXJ5QWdlbnRTdGF0dXNSZXNwb25zZRJKCgZzdGF0dXMYASABKA4yOi5keG9zLmNsaWVudC5zZXJ2aWNlcy5RdWVyeUFnZW50U3RhdHVzUmVzcG9uc2UuQWdlbnRTdGF0dXMiQwoLQWdlbnRTdGF0dXMSCwoHVU5LTk9XThAAEgoKBkFDVElWRRABEgwKCElOQUNUSVZFEAISDQoJTk9UX0ZPVU5EEAMqKAoMU3lzdGVtU3RhdHVzEgwKCElOQUNUSVZFEAASCgoGQUNUSVZFEAEqJgoKRGV2aWNlS2luZBILCgdDVVJSRU5UEAASCwoHVFJVU1RFRBABKioKD0Nvbm5lY3Rpb25TdGF0ZRILCgdPRkZMSU5FEAASCgoGT05MSU5FEAEy7wMKDVN5c3RlbVNlcnZpY2USOAoJR2V0Q29uZmlnEhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5GhMuZHhvcy5jb25maWcuQ29uZmlnEmsKDkdldERpYWdub3N0aWNzEisuZHhvcy5jbGllbnQuc2VydmljZXMuR2V0RGlhZ25vc3RpY3NSZXF1ZXN0GiwuZHhvcy5jbGllbnQuc2VydmljZXMuR2V0RGlhZ25vc3RpY3NSZXNwb25zZRJRCgxVcGRhdGVTdGF0dXMSKS5keG9zLmNsaWVudC5zZXJ2aWNlcy5VcGRhdGVTdGF0dXNSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5EmQKC1F1ZXJ5U3RhdHVzEiguZHhvcy5jbGllbnQuc2VydmljZXMuUXVlcnlTdGF0dXNSZXF1ZXN0GikuZHhvcy5jbGllbnQuc2VydmljZXMuUXVlcnlTdGF0dXNSZXNwb25zZTABEjcKBVJlc2V0EhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5EkUKC0dldFBsYXRmb3JtEhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5Gh4uZHhvcy5jbGllbnQuc2VydmljZXMuUGxhdGZvcm0ytQYKD0lkZW50aXR5U2VydmljZRJdCg5DcmVhdGVJZGVudGl0eRIrLmR4b3MuY2xpZW50LnNlcnZpY2VzLkNyZWF0ZUlkZW50aXR5UmVxdWVzdBoeLmR4b3MuY2xpZW50LnNlcnZpY2VzLklkZW50aXR5EmoKGFJlcXVlc3RSZWNvdmVyeUNoYWxsZW5nZRIWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRo2LmR4b3MuY2xpZW50LnNlcnZpY2VzLlJlcXVlc3RSZWNvdmVyeUNoYWxsZW5nZVJlc3BvbnNlEl8KD1JlY292ZXJJZGVudGl0eRIsLmR4b3MuY2xpZW50LnNlcnZpY2VzLlJlY292ZXJJZGVudGl0eVJlcXVlc3QaHi5keG9zLmNsaWVudC5zZXJ2aWNlcy5JZGVudGl0eRKJAQoYQ3JlYXRlUmVjb3ZlcnlDcmVkZW50aWFsEjUuZHhvcy5jbGllbnQuc2VydmljZXMuQ3JlYXRlUmVjb3ZlcnlDcmVkZW50aWFsUmVxdWVzdBo2LmR4b3MuY2xpZW50LnNlcnZpY2VzLkNyZWF0ZVJlY292ZXJ5Q3JlZGVudGlhbFJlc3BvbnNlElYKDVF1ZXJ5SWRlbnRpdHkSFi5nb29nbGUucHJvdG9idWYuRW1wdHkaKy5keG9zLmNsaWVudC5zZXJ2aWNlcy5RdWVyeUlkZW50aXR5UmVzcG9uc2UwARJXCg1VcGRhdGVQcm9maWxlEiYuZHhvcy5oYWxvLmNyZWRlbnRpYWxzLlByb2ZpbGVEb2N1bWVudBoeLmR4b3MuY2xpZW50LnNlcnZpY2VzLklkZW50aXR5EmYKEFNpZ25QcmVzZW50YXRpb24SLS5keG9zLmNsaWVudC5zZXJ2aWNlcy5TaWduUHJlc2VudGF0aW9uUmVxdWVzdBojLmR4b3MuaGFsby5jcmVkZW50aWFscy5QcmVzZW50YXRpb24SUQoUQ3JlYXRlQXV0aENyZWRlbnRpYWwSFi5nb29nbGUucHJvdG9idWYuRW1wdHkaIS5keG9zLmhhbG8uY3JlZGVudGlhbHMuQ3JlZGVudGlhbDLCAQoORGV2aWNlc1NlcnZpY2USWgoMVXBkYXRlRGV2aWNlEiwuZHhvcy5oYWxvLmNyZWRlbnRpYWxzLkRldmljZVByb2ZpbGVEb2N1bWVudBocLmR4b3MuY2xpZW50LnNlcnZpY2VzLkRldmljZRJUCgxRdWVyeURldmljZXMSFi5nb29nbGUucHJvdG9idWYuRW1wdHkaKi5keG9zLmNsaWVudC5zZXJ2aWNlcy5RdWVyeURldmljZXNSZXNwb25zZTABMqkBCg9Db250YWN0c1NlcnZpY2USSAoLR2V0Q29udGFjdHMSFi5nb29nbGUucHJvdG9idWYuRW1wdHkaIS5keG9zLmNsaWVudC5zZXJ2aWNlcy5Db250YWN0Qm9vaxJMCg1RdWVyeUNvbnRhY3RzEhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5GiEuZHhvcy5jbGllbnQuc2VydmljZXMuQ29udGFjdEJvb2swATLRCQoNU3BhY2VzU2VydmljZRJUCgtDcmVhdGVTcGFjZRIoLmR4b3MuY2xpZW50LnNlcnZpY2VzLkNyZWF0ZVNwYWNlUmVxdWVzdBobLmR4b3MuY2xpZW50LnNlcnZpY2VzLlNwYWNlEk8KC1VwZGF0ZVNwYWNlEiguZHhvcy5jbGllbnQuc2VydmljZXMuVXBkYXRlU3BhY2VSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5ElIKC1F1ZXJ5U3BhY2VzEhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5GikuZHhvcy5jbGllbnQuc2VydmljZXMuUXVlcnlTcGFjZXNSZXNwb25zZTABElkKEFVwZGF0ZU1lbWJlclJvbGUSLS5keG9zLmNsaWVudC5zZXJ2aWNlcy5VcGRhdGVNZW1iZXJSb2xlUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRJRCgxBZG1pdENvbnRhY3QSKS5keG9zLmNsaWVudC5zZXJ2aWNlcy5BZG1pdENvbnRhY3RSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5EmYKDkpvaW5CeVNwYWNlS2V5EisuZHhvcy5jbGllbnQuc2VydmljZXMuSm9pbkJ5U3BhY2VLZXlSZXF1ZXN0GicuZHhvcy5jbGllbnQuc2VydmljZXMuSm9pblNwYWNlUmVzcG9uc2USTwoLUG9zdE1lc3NhZ2USKC5keG9zLmNsaWVudC5zZXJ2aWNlcy5Qb3N0TWVzc2FnZVJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkSbwoRU3Vic2NyaWJlTWVzc2FnZXMSLi5keG9zLmNsaWVudC5zZXJ2aWNlcy5TdWJzY3JpYmVNZXNzYWdlc1JlcXVlc3QaKC5keG9zLm1lc2gudGVsZXBvcnQuZ29zc2lwLkdvc3NpcE1lc3NhZ2UwARJZChBXcml0ZUNyZWRlbnRpYWxzEi0uZHhvcy5jbGllbnQuc2VydmljZXMuV3JpdGVDcmVkZW50aWFsc1JlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkSZgoQUXVlcnlDcmVkZW50aWFscxItLmR4b3MuY2xpZW50LnNlcnZpY2VzLlF1ZXJ5Q3JlZGVudGlhbHNSZXF1ZXN0GiEuZHhvcy5oYWxvLmNyZWRlbnRpYWxzLkNyZWRlbnRpYWwwARJiCgtDcmVhdGVFcG9jaBIoLmR4b3MuY2xpZW50LnNlcnZpY2VzLkNyZWF0ZUVwb2NoUmVxdWVzdBopLmR4b3MuY2xpZW50LnNlcnZpY2VzLkNyZWF0ZUVwb2NoUmVzcG9uc2USYgoLRXhwb3J0U3BhY2USKC5keG9zLmNsaWVudC5zZXJ2aWNlcy5FeHBvcnRTcGFjZVJlcXVlc3QaKS5keG9zLmNsaWVudC5zZXJ2aWNlcy5FeHBvcnRTcGFjZVJlc3BvbnNlEmIKC0ltcG9ydFNwYWNlEiguZHhvcy5jbGllbnQuc2VydmljZXMuSW1wb3J0U3BhY2VSZXF1ZXN0GikuZHhvcy5jbGllbnQuc2VydmljZXMuSW1wb3J0U3BhY2VSZXNwb25zZTLjAwoSSW52aXRhdGlvbnNTZXJ2aWNlElgKEENyZWF0ZUludml0YXRpb24SIC5keG9zLmNsaWVudC5zZXJ2aWNlcy5JbnZpdGF0aW9uGiAuZHhvcy5jbGllbnQuc2VydmljZXMuSW52aXRhdGlvbjABEmUKEEFjY2VwdEludml0YXRpb24SLS5keG9zLmNsaWVudC5zZXJ2aWNlcy5BY2NlcHRJbnZpdGF0aW9uUmVxdWVzdBogLmR4b3MuY2xpZW50LnNlcnZpY2VzLkludml0YXRpb24wARJTCgxBdXRoZW50aWNhdGUSKy5keG9zLmNsaWVudC5zZXJ2aWNlcy5BdXRoZW50aWNhdGlvblJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkSWQoQQ2FuY2VsSW52aXRhdGlvbhItLmR4b3MuY2xpZW50LnNlcnZpY2VzLkNhbmNlbEludml0YXRpb25SZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5ElwKEFF1ZXJ5SW52aXRhdGlvbnMSFi5nb29nbGUucHJvdG9idWYuRW1wdHkaLi5keG9zLmNsaWVudC5zZXJ2aWNlcy5RdWVyeUludml0YXRpb25zUmVzcG9uc2UwATKLBQoOTmV0d29ya1NlcnZpY2USUQoMVXBkYXRlQ29uZmlnEikuZHhvcy5jbGllbnQuc2VydmljZXMuVXBkYXRlQ29uZmlnUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRJMCgtRdWVyeVN0YXR1cxIWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRojLmR4b3MuY2xpZW50LnNlcnZpY2VzLk5ldHdvcmtTdGF0dXMwARJCCglKb2luU3dhcm0SHS5keG9zLmVkZ2Uuc2lnbmFsLkpvaW5SZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5EkQKCkxlYXZlU3dhcm0SHi5keG9zLmVkZ2Uuc2lnbmFsLkxlYXZlUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRJQCgpRdWVyeVN3YXJtEh4uZHhvcy5lZGdlLnNpZ25hbC5RdWVyeVJlcXVlc3QaIi5keG9zLmVkZ2UubWVzc2VuZ2VyLlN3YXJtUmVzcG9uc2USbQoTU3Vic2NyaWJlU3dhcm1TdGF0ZRIwLmR4b3MuY2xpZW50LnNlcnZpY2VzLlN1YnNjcmliZVN3YXJtU3RhdGVSZXF1ZXN0GiIuZHhvcy5lZGdlLm1lc3Nlbmdlci5Td2FybVJlc3BvbnNlMAESQAoLU2VuZE1lc3NhZ2USGS5keG9zLmVkZ2Uuc2lnbmFsLk1lc3NhZ2UaFi5nb29nbGUucHJvdG9idWYuRW1wdHkSSwoRU3Vic2NyaWJlTWVzc2FnZXMSGS5keG9zLmVkZ2UubWVzc2VuZ2VyLlBlZXIaGS5keG9zLmVkZ2Uuc2lnbmFsLk1lc3NhZ2UwATKLAgoQRWRnZUFnZW50U2VydmljZRJaCg9RdWVyeUVkZ2VTdGF0dXMSFi5nb29nbGUucHJvdG9idWYuRW1wdHkaLS5keG9zLmNsaWVudC5zZXJ2aWNlcy5RdWVyeUVkZ2VTdGF0dXNSZXNwb25zZTABEj0KC0NyZWF0ZUFnZW50EhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5ElwKEFF1ZXJ5QWdlbnRTdGF0dXMSFi5nb29nbGUucHJvdG9idWYuRW1wdHkaLi5keG9zLmNsaWVudC5zZXJ2aWNlcy5RdWVyeUFnZW50U3RhdHVzUmVzcG9uc2UwAWIGcHJvdG8z", [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
@@ -1321,6 +1321,11 @@ export type SpaceArchive = Message<"dxos.client.services.SpaceArchive"> & {
1321
1321
  * @generated from field: bytes contents = 2;
1322
1322
  */
1323
1323
  contents: Uint8Array;
1324
+
1325
+ /**
1326
+ * @generated from field: optional dxos.client.services.SpaceArchive.Format format = 3;
1327
+ */
1328
+ format?: SpaceArchive_Format;
1324
1329
  };
1325
1330
 
1326
1331
  /**
@@ -1330,6 +1335,31 @@ export type SpaceArchive = Message<"dxos.client.services.SpaceArchive"> & {
1330
1335
  export const SpaceArchiveSchema: GenMessage<SpaceArchive> = /*@__PURE__*/
1331
1336
  messageDesc(file_dxos_client_services, 35);
1332
1337
 
1338
+ /**
1339
+ * @generated from enum dxos.client.services.SpaceArchive.Format
1340
+ */
1341
+ export enum SpaceArchive_Format {
1342
+ /**
1343
+ * Tar-based binary archive (default).
1344
+ *
1345
+ * @generated from enum value: BINARY = 0;
1346
+ */
1347
+ BINARY = 0,
1348
+
1349
+ /**
1350
+ * JSON encoding of {@link dxos.echo.db.SerializedSpace}.
1351
+ *
1352
+ * @generated from enum value: JSON = 1;
1353
+ */
1354
+ JSON = 1,
1355
+ }
1356
+
1357
+ /**
1358
+ * Describes the enum dxos.client.services.SpaceArchive.Format.
1359
+ */
1360
+ export const SpaceArchive_FormatSchema: GenEnum<SpaceArchive_Format> = /*@__PURE__*/
1361
+ enumDesc(file_dxos_client_services, 35, 0);
1362
+
1333
1363
  /**
1334
1364
  * @generated from message dxos.client.services.ExportSpaceRequest
1335
1365
  */
@@ -1338,6 +1368,13 @@ export type ExportSpaceRequest = Message<"dxos.client.services.ExportSpaceReques
1338
1368
  * @generated from field: string space_id = 1;
1339
1369
  */
1340
1370
  spaceId: string;
1371
+
1372
+ /**
1373
+ * Archive format to produce. Defaults to BINARY.
1374
+ *
1375
+ * @generated from field: optional dxos.client.services.SpaceArchive.Format format = 2;
1376
+ */
1377
+ format?: SpaceArchive_Format;
1341
1378
  };
1342
1379
 
1343
1380
  /**
@@ -16,7 +16,7 @@ import type { JsonObject, Message } from "@bufbuild/protobuf";
16
16
  * Describes the file dxos/config.proto.
17
17
  */
18
18
  export const file_dxos_config: GenFile = /*@__PURE__*/
19
- fileDesc("ChFkeG9zL2NvbmZpZy5wcm90bxILZHhvcy5jb25maWcimgEKBkNvbmZpZxIUCgd2ZXJzaW9uGAEgASgFSACIAQESKgoHcGFja2FnZRgCIAEoCzIULmR4b3MuY29uZmlnLlBhY2thZ2VIAYgBARIqCgdydW50aW1lGAMgASgLMhQuZHhvcy5jb25maWcuUnVudGltZUgCiAEBQgoKCF92ZXJzaW9uQgoKCF9wYWNrYWdlQgoKCF9ydW50aW1lInMKB1BhY2thZ2USFAoHbGljZW5zZRgBIAEoCUgAiAEBEiAKBXJlcG9zGAIgAygLMhEuZHhvcy5jb25maWcuUmVwbxIkCgdtb2R1bGVzGAMgAygLMhMuZHhvcy5jb25maWcuTW9kdWxlQgoKCF9saWNlbnNlIl4KBFJlcG8SEQoEbmFtZRgBIAEoCUgAiAEBEhAKA3VybBgCIAEoCUgBiAEBEhQKB3ZlcnNpb24YAyABKAlIAogBAUIHCgVfbmFtZUIGCgRfdXJsQgoKCF92ZXJzaW9uIuwECgZNb2R1bGUSDwoCaWQYCCABKAlIAIgBARIRCgRuYW1lGAEgASgJSAGIAQESEQoEdHlwZRgCIAEoCUgCiAEBEhkKDGRpc3BsYXlfbmFtZRgDIAEoCUgDiAEBEhgKC2Rlc2NyaXB0aW9uGAQgASgJSASIAQESDAoEdGFncxgFIAMoCRITCgZidW5kbGUYBiABKAxIBYgBARITCgZ0dW5uZWwYByABKAhIBogBARIhCgRkZXBzGAogAygLMhMuZHhvcy5jb25maWcuTW9kdWxlEi0KBWJ1aWxkGGQgASgLMhkuZHhvcy5jb25maWcuTW9kdWxlLkJ1aWxkSAeIAQESIAoFcmVwb3MYZSADKAsyES5keG9zLmNvbmZpZy5SZXBvEioKBnJlY29yZBjIASABKAsyFC5nb29nbGUucHJvdG9idWYuQW55SAiIAQEauAEKBUJ1aWxkEhQKB2NvbW1hbmQYASABKAlIAIgBARITCgZvdXRkaXIYAiABKAlIAYgBARIUCgd2ZXJzaW9uGAMgASgJSAKIAQESEAoDdGFnGAQgASgJSAOIAQESKQoDZW52GAogASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgEiAEBQgoKCF9jb21tYW5kQgkKB19vdXRkaXJCCgoIX3ZlcnNpb25CBgoEX3RhZ0IGCgRfZW52QgUKA19pZEIHCgVfbmFtZUIHCgVfdHlwZUIPCg1fZGlzcGxheV9uYW1lQg4KDF9kZXNjcmlwdGlvbkIJCgdfYnVuZGxlQgkKB190dW5uZWxCCAoGX2J1aWxkQgkKB19yZWNvcmQi3DoKB1J1bnRpbWUSMAoGY2xpZW50GAEgASgLMhsuZHhvcy5jb25maWcuUnVudGltZS5DbGllbnRIAIgBARIqCgNhcHAYAiABKAsyGC5keG9zLmNvbmZpZy5SdW50aW1lLkFwcEgBiAEBEioKA2NsaRgDIAEoCzIYLmR4b3MuY29uZmlnLlJ1bnRpbWUuQ0xJSAKIAQESLgoFcHJvcHMYBCABKAsyGi5keG9zLmNvbmZpZy5SdW50aW1lLlByb3BzSAOIAQESNAoIc2VydmljZXMYBSABKAsyHS5keG9zLmNvbmZpZy5SdW50aW1lLlNlcnZpY2VzSASIAQESMAoGc3lzdGVtGAYgASgLMhsuZHhvcy5jb25maWcuUnVudGltZS5TeXN0ZW1IBYgBARIsCgRrdWJlGAcgASgLMhkuZHhvcy5jb25maWcuUnVudGltZS5LdWJlSAaIAQESJwoEa2V5cxgIIAMoCzIZLmR4b3MuY29uZmlnLlJ1bnRpbWUuS2V5cxIuCgVhZ2VudBgJIAEoCzIaLmR4b3MuY29uZmlnLlJ1bnRpbWUuQWdlbnRIB4gBARrICwoGQ2xpZW50EjEKA2xvZxgBIAEoCzIfLmR4b3MuY29uZmlnLlJ1bnRpbWUuQ2xpZW50LkxvZ0gAiAEBEjkKB3N0b3JhZ2UYAiABKAsyIy5keG9zLmNvbmZpZy5SdW50aW1lLkNsaWVudC5TdG9yYWdlSAGIAQESHQoQZW5hYmxlX3NuYXBzaG90cxgDIAEoCEgCiAEBEh4KEXNuYXBzaG90X2ludGVydmFsGAQgASgFSAOIAQESIgoVaW52aXRhdGlvbl9leHBpcmF0aW9uGAUgASgFSASIAQESGgoNcmVtb3RlX3NvdXJjZRgGIAEoCUgFiAEBEi8KInJlbW90ZV9zb3VyY2VfYXV0aGVudGljYXRpb25fdG9rZW4YCCABKAlIBogBARIbCg5kZXZ0b29sc19wcm94eRgHIAEoCUgHiAEBEhwKD2xhenlfc3BhY2Vfb3BlbhgJIAEoCEgIiAEBEiQKF2Rpc2FibGVfcDJwX3JlcGxpY2F0aW9uGAogASgISAmIAQESIwoWZW5hYmxlX3ZlY3Rvcl9pbmRleGluZxgMIAEoCEgKiAEBEkQKDWVkZ2VfZmVhdHVyZXMYCyABKAsyKC5keG9zLmNvbmZpZy5SdW50aW1lLkNsaWVudC5FZGdlRmVhdHVyZXNIC4gBARqxAwoHU3RvcmFnZRIXCgpwZXJzaXN0ZW50GAEgASgISACIAQESSQoJa2V5X3N0b3JlGAIgASgOMjEuZHhvcy5jb25maWcuUnVudGltZS5DbGllbnQuU3RvcmFnZS5TdG9yYWdlRHJpdmVySAGIAQESSgoKZGF0YV9zdG9yZRgDIAEoDjIxLmR4b3MuY29uZmlnLlJ1bnRpbWUuQ2xpZW50LlN0b3JhZ2UuU3RvcmFnZURyaXZlckgCiAEBEhYKCWRhdGFfcm9vdBgEIAEoCUgDiAEBEiAKE3NwYWNlX2ZyYWdtZW50YXRpb24YBSABKAhIBIgBASJqCg1TdG9yYWdlRHJpdmVyEgcKA1JBTRAAEgcKA0lEQhABEgoKBkNIUk9NRRACEgsKB0ZJUkVGT1gQAxIICgROT0RFEAQSCQoFV0VCRlMQBRILCgdMRVZFTEpTEAsSDAoISlNPTkRPV04QDEINCgtfcGVyc2lzdGVudEIMCgpfa2V5X3N0b3JlQg0KC19kYXRhX3N0b3JlQgwKCl9kYXRhX3Jvb3RCFgoUX3NwYWNlX2ZyYWdtZW50YXRpb24aYwoDTG9nEiIKBmZpbHRlchgBIAEoCUINwj4KTE9HX0ZJTFRFUkgAiAEBEiIKBnByZWZpeBgCIAEoCUINwj4KTE9HX1BSRUZJWEgBiAEBQgkKB19maWx0ZXJCCQoHX3ByZWZpeBq4AQoMRWRnZUZlYXR1cmVzEhwKD2ZlZWRfcmVwbGljYXRvchgBIAEoCEgAiAEBEhwKD2VjaG9fcmVwbGljYXRvchgCIAEoCEgBiAEBEhYKCXNpZ25hbGluZxgDIAEoCEgCiAEBEhMKBmFnZW50cxgEIAEoCEgDiAEBQhIKEF9mZWVkX3JlcGxpY2F0b3JCEgoQX2VjaG9fcmVwbGljYXRvckIMCgpfc2lnbmFsaW5nQgkKB19hZ2VudHNCBgoEX2xvZ0IKCghfc3RvcmFnZUITChFfZW5hYmxlX3NuYXBzaG90c0IUChJfc25hcHNob3RfaW50ZXJ2YWxCGAoWX2ludml0YXRpb25fZXhwaXJhdGlvbkIQCg5fcmVtb3RlX3NvdXJjZUIlCiNfcmVtb3RlX3NvdXJjZV9hdXRoZW50aWNhdGlvbl90b2tlbkIRCg9fZGV2dG9vbHNfcHJveHlCEgoQX2xhenlfc3BhY2Vfb3BlbkIaChhfZGlzYWJsZV9wMnBfcmVwbGljYXRpb25CGQoXX2VuYWJsZV92ZWN0b3JfaW5kZXhpbmdCEAoOX2VkZ2VfZmVhdHVyZXMaqwMKA0FwcBIQCgNvcmcYASABKAlIAIgBARISCgV0aGVtZRgCIAEoCUgBiAEBEhQKB3dlYnNpdGUYAyABKAlIAogBARImCgpwdWJsaWNfdXJsGAQgASgJQg3CPgpQVUJMSUNfVVJMSAOIAQESNgoFYnVpbGQYZCABKAsyIi5keG9zLmNvbmZpZy5SdW50aW1lLkFwcC5CdWlsZEluZm9IBIgBARIpCgNlbnYYZSABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SAWIAQEanQEKCUJ1aWxkSW5mbxIWCgl0aW1lc3RhbXAYASABKAlIAIgBARIYCgtjb21taXRfaGFzaBgCIAEoCUgBiAEBEhQKB3ZlcnNpb24YAyABKAlIAogBARITCgZicmFuY2gYBCABKAlIA4gBAUIMCgpfdGltZXN0YW1wQg4KDF9jb21taXRfaGFzaEIKCghfdmVyc2lvbkIJCgdfYnJhbmNoQgYKBF9vcmdCCAoGX3RoZW1lQgoKCF93ZWJzaXRlQg0KC19wdWJsaWNfdXJsQggKBl9idWlsZEIGCgRfZW52GsYBCgVBZ2VudBIyCgdwbHVnaW5zGAEgAygLMiEuZHhvcy5jb25maWcuUnVudGltZS5BZ2VudC5QbHVnaW4aiAEKBlBsdWdpbhIKCgJpZBgBIAEoCRIRCgRuYW1lGAIgASgJSACIAQESFAoHZW5hYmxlZBgDIAEoCEgBiAEBEikKBmNvbmZpZxgKIAEoCzIULmdvb2dsZS5wcm90b2J1Zi5BbnlIAogBAUIHCgVfbmFtZUIKCghfZW5hYmxlZEIJCgdfY29uZmlnGssFCgNDTEkSFgoJbm9kZV9wYXRoGAEgASgJSACIAQESMwoDYXBwGAIgASgLMiEuZHhvcy5jb25maWcuUnVudGltZS5DTEkuQXBwU2VydmVIAYgBARI2Cgdjb25zb2xlGAMgASgLMiAuZHhvcy5jb25maWcuUnVudGltZS5DTEkuUGFja2FnZUgCiAEBEjMKBG1kbnMYBCABKAsyIC5keG9zLmNvbmZpZy5SdW50aW1lLkNMSS5QYWNrYWdlSAOIAQESNQoGc2lnbmFsGAUgASgLMiAuZHhvcy5jb25maWcuUnVudGltZS5DTEkuUGFja2FnZUgEiAEBEhcKCm5wbV9jbGllbnQYBiABKAlIBYgBARIUCgdjaGFubmVsGAcgASgJSAaIAQEayAEKCEFwcFNlcnZlEjsKBXNlcnZlGAEgASgLMicuZHhvcy5jb25maWcuUnVudGltZS5DTEkuQXBwU2VydmUuU2VydmVIAIgBARp1CgVTZXJ2ZRITCgZjb25maWcYASABKAlIAIgBARIWCglsb2dpbl9hcHAYAiABKAlIAYgBARIXCgprZXlfcGhyYXNlGAMgASgJSAKIAQFCCQoHX2NvbmZpZ0IMCgpfbG9naW5fYXBwQg0KC19rZXlfcGhyYXNlQggKBl9zZXJ2ZRqHAQoHUGFja2FnZRIUCgdwYWNrYWdlGAEgASgJSACIAQESFAoHY2hhbm5lbBgCIAEoCUgBiAEBEhAKA2JpbhgDIAEoCUgCiAEBEhMKBmNvbmZpZxgEIAEoCUgDiAEBQgoKCF9wYWNrYWdlQgoKCF9jaGFubmVsQgYKBF9iaW5CCQoHX2NvbmZpZ0IMCgpfbm9kZV9wYXRoQgYKBF9hcHBCCgoIX2NvbnNvbGVCBwoFX21kbnNCCQoHX3NpZ25hbEINCgtfbnBtX2NsaWVudEIKCghfY2hhbm5lbBolCgVQcm9wcxISCgV0aXRsZRgBIAEoCUgAiAEBQggKBl90aXRsZRomCgZTeXN0ZW0SEgoFZGVidWcYASABKAlIAIgBAUIICgZfZGVidWcahwoKBEt1YmUSDAoEaG9zdBgBIAEoCRIMCgRwb3J0GAIgASgJEjgKCmF1dG91cGRhdGUYAyABKAsyJC5keG9zLmNvbmZpZy5SdW50aW1lLkt1YmUuQXV0b3VwZGF0ZRIuCgVodHRwcxgEIAEoCzIfLmR4b3MuY29uZmlnLlJ1bnRpbWUuS3ViZS5IdHRwcxIqCgNwMnAYBSABKAsyHS5keG9zLmNvbmZpZy5SdW50aW1lLkt1YmUuUDJQEhAKCGNvbmZob3N0GAYgASgJEgsKA2VudhgHIAMoCRINCgVhbGlhcxgIIAMoCRI4Cgptb25pdG9yaW5nGAkgASgLMiQuZHhvcy5jb25maWcuUnVudGltZS5LdWJlLk1vbml0b3JpbmcSLgoFdHJhY2UYCiABKAsyHy5keG9zLmNvbmZpZy5SdW50aW1lLkt1YmUuVHJhY2USNgoJdGVsZW1ldHJ5GAsgASgLMiMuZHhvcy5jb25maWcuUnVudGltZS5LdWJlLlRlbGVtZXRyeRIyCgdncmF2aXR5GAwgASgLMiEuZHhvcy5jb25maWcuUnVudGltZS5LdWJlLkdyYXZpdHkSPQoNYXBwX3R1bm5lbGluZxgNIAEoCzImLmR4b3MuY29uZmlnLlJ1bnRpbWUuS3ViZS5BcHBUdW5uZWxpbmcSLAoEYm90cxgOIAEoCzIeLmR4b3MuY29uZmlnLlJ1bnRpbWUuS3ViZS5Cb3RzEk8KF2lwZnNfYXBpX2F1dGhvcml6YXRpb25zGA8gAygLMi4uZHhvcy5jb25maWcuUnVudGltZS5LdWJlLkt1Ym9BcGlBdXRob3JpemF0aW9uGi8KCkF1dG91cGRhdGUSDwoHZW5hYmxlZBgBIAEoCBIQCghpbnRlcnZhbBgCIAEoBRptCgVIdHRwcxIPCgdlbmFibGVkGAEgASgIEgwKBHBvcnQYAiABKAkSDQoFZW1haWwYAyABKAkSEAoIY2VydGZpbGUYBCABKAkSDwoHa2V5ZmlsZRgFIAEoCRITCgtkbnNwcm92aWRlchgGIAEoCRo6CgNQMlASEgoKcHJpdmF0ZWtleRgBIAEoCRIMCgRwb3J0GAIgASgJEhEKCWJvb3RzdHJhcBgDIAMoCRpBCgpNb25pdG9yaW5nEg8KB2VuYWJsZWQYASABKAgSEAoIZW5kcG9pbnQYAiABKAkSEAoIaW50ZXJ2YWwYAyABKAUaGQoFVHJhY2USEAoIZGlzYWJsZWQYASABKAgaKwoJVGVsZW1ldHJ5EhAKCGRpc2FibGVkGAEgASgIEgwKBHRhZ3MYAiADKAkaSwoHR3Jhdml0eRIQCghkaXNhYmxlZBgBIAEoCBIMCgRuYW1lGAIgASgJEhQKB2xvZ19kaXIYAyABKAlIAIgBAUIKCghfbG9nX2RpchpaCgxBcHBUdW5uZWxpbmcSDwoHZW5hYmxlZBgBIAEoCBIYChBjb21tYW5kX3RlbXBsYXRlGAIgASgJEhEKCW91dHB1dF9yZRgDIAEoCRIMCgRwb3J0GAQgASgJGikKBEJvdHMSDwoHZW5hYmxlZBgBIAEoCBIQCghpbnRlcnZhbBgCIAEoBRpQChRLdWJvQXBpQXV0aG9yaXphdGlvbhIMCgRuYW1lGAEgASgJEhMKC2F1dGhfc2VjcmV0GAIgASgJEhUKDWFsbG93ZWRfcGF0aHMYAyADKAkarBUKCFNlcnZpY2VzEjUKBGt1YmUYASABKAsyIi5keG9zLmNvbmZpZy5SdW50aW1lLlNlcnZpY2VzLkt1YmVIAIgBARI5CgNhcHAYAiABKAsyJy5keG9zLmNvbmZpZy5SdW50aW1lLlNlcnZpY2VzLkFwcFNlcnZlckgBiAEBEjUKBGR4bnMYAyABKAsyIi5keG9zLmNvbmZpZy5SdW50aW1lLlNlcnZpY2VzLkR4bnNIAogBARI1CgRpcGZzGAQgASgLMiIuZHhvcy5jb25maWcuUnVudGltZS5TZXJ2aWNlcy5JcGZzSAOIAQESNwoJc2lnbmFsaW5nGAUgAygLMiQuZHhvcy5jb25maWcuUnVudGltZS5TZXJ2aWNlcy5TaWduYWwSLgoDaWNlGAYgAygLMiEuZHhvcy5jb25maWcuUnVudGltZS5TZXJ2aWNlcy5JY2USQAoNaWNlX3Byb3ZpZGVycxgOIAMoCzIpLmR4b3MuY29uZmlnLlJ1bnRpbWUuU2VydmljZXMuSWNlUHJvdmlkZXISOwoHbWFjaGluZRgHIAEoCzIlLmR4b3MuY29uZmlnLlJ1bnRpbWUuU2VydmljZXMuTWFjaGluZUgEiAEBEjcKA2JvdBgIIAEoCzIlLmR4b3MuY29uZmlnLlJ1bnRpbWUuU2VydmljZXMuQm90SG9zdEgFiAEBEj8KCXB1Ymxpc2hlchgJIAEoCzInLmR4b3MuY29uZmlnLlJ1bnRpbWUuU2VydmljZXMuUHVibGlzaGVySAaIAQESQQoKc3VwZXJ2aXNvchgKIAEoCzIoLmR4b3MuY29uZmlnLlJ1bnRpbWUuU2VydmljZXMuU3VwZXJ2aXNvckgHiAEBEj8KCXR1bm5lbGluZxgLIAEoCzInLmR4b3MuY29uZmlnLlJ1bnRpbWUuU2VydmljZXMuVHVubmVsaW5nSAiIAQESNwoFZmFhc2QYDCABKAsyIy5keG9zLmNvbmZpZy5SdW50aW1lLlNlcnZpY2VzLkZhYXNkSAmIAQESRgoNYWdlbnRfaG9zdGluZxgNIAEoCzIqLmR4b3MuY29uZmlnLlJ1bnRpbWUuU2VydmljZXMuQWdlbnRIb3N0aW5nSAqIAQESNQoEZWRnZRgPIAEoCzIiLmR4b3MuY29uZmlnLlJ1bnRpbWUuU2VydmljZXMuRWRnZUgLiAEBEjEKAmFpGBAgASgLMiAuZHhvcy5jb25maWcuUnVudGltZS5TZXJ2aWNlcy5BaUgMiAEBEjMKA2h1YhgRIAEoCzIhLmR4b3MuY29uZmlnLlJ1bnRpbWUuU2VydmljZXMuSHViSA2IAQEa6wEKBEt1YmUSRAoJZW5kcG9pbnRzGAEgASgLMiwuZHhvcy5jb25maWcuUnVudGltZS5TZXJ2aWNlcy5LdWJlLkVuZHBvaW50c0gAiAEBEhcKCnB1YmxpY191cmwYAiABKAlIAYgBARpnCglFbmRwb2ludHMSEQoEbG9ncxgBIAEoCUgAiAEBEhUKCHNlcnZpY2VzGAIgASgJSAGIAQESEQoEY2VydBgDIAEoCUgCiAEBQgcKBV9sb2dzQgsKCV9zZXJ2aWNlc0IHCgVfY2VydEIMCgpfZW5kcG9pbnRzQg0KC19wdWJsaWNfdXJsGksKCUFwcFNlcnZlchITCgZwcmVmaXgYASABKAlIAIgBARITCgZzZXJ2ZXIYAiABKAlIAYgBAUIJCgdfcHJlZml4QgkKB19zZXJ2ZXIatAEKBER4bnMSEwoGc2VydmVyGAEgASgJSACIAQESGAoLYWNjb3VudF91cmkYAiABKAlIAYgBARIUCgdhZGRyZXNzGAMgASgJSAKIAQESFAoHYWNjb3VudBgEIAEoCUgDiAEBEhMKBmZhdWNldBgFIAEoCUgEiAEBQgkKB19zZXJ2ZXJCDgoMX2FjY291bnRfdXJpQgoKCF9hZGRyZXNzQgoKCF9hY2NvdW50QgkKB19mYXVjZXQagAEKBElwZnMSEwoGc2VydmVyGAEgASgJSACIAQESFAoHZ2F0ZXdheRgCIAEoCUgBiAEBEh8KEnNlcnZlcl9hdXRoX3NlY3JldBgDIAEoCUgCiAEBQgkKB19zZXJ2ZXJCCgoIX2dhdGV3YXlCFQoTX3NlcnZlcl9hdXRoX3NlY3JldBpSCgZTaWduYWwSDgoGc2VydmVyGAEgASgJEhAKA2FwaRgCIAEoCUgAiAEBEhMKBnN0YXR1cxgDIAEoCUgBiAEBQgYKBF9hcGlCCQoHX3N0YXR1cxpfCgNJY2USDAoEdXJscxgBIAEoCRIVCgh1c2VybmFtZRgCIAEoCUgAiAEBEhcKCmNyZWRlbnRpYWwYAyABKAlIAYgBAUILCglfdXNlcm5hbWVCDQoLX2NyZWRlbnRpYWwaGwoLSWNlUHJvdmlkZXISDAoEdXJscxgBIAEoCRqDAgoHTWFjaGluZRIcCg9kb19hY2Nlc3NfdG9rZW4YASABKAlIAIgBARIgChNnaXRodWJfYWNjZXNzX3Rva2VuGAIgASgJSAGIAQESHAoPZ2l0aHViX3VzZXJuYW1lGAMgASgJSAKIAQESFwoKZG5zX2RvbWFpbhgEIAEoCUgDiAEBEh0KEG5wbV9hY2Nlc3NfdG9rZW4YBSABKAlIBIgBAUISChBfZG9fYWNjZXNzX3Rva2VuQhYKFF9naXRodWJfYWNjZXNzX3Rva2VuQhIKEF9naXRodWJfdXNlcm5hbWVCDQoLX2Ruc19kb21haW5CEwoRX25wbV9hY2Nlc3NfdG9rZW4aJwoHQm90SG9zdBISCgVwcm94eRgBIAEoCUgAiAEBQggKBl9wcm94eRorCglQdWJsaXNoZXISEwoGc2VydmVyGAEgASgJSACIAQFCCQoHX3NlcnZlchorCglUdW5uZWxpbmcSEwoGc2VydmVyGAEgASgJSACIAQFCCQoHX3NlcnZlchosCgpTdXBlcnZpc29yEhMKBnNlcnZlchgBIAEoCUgAiAEBQgkKB19zZXJ2ZXIacQoFRmFhc2QSFAoHZ2F0ZXdheRgBIAEoCUgAiAEBEhUKCHVzZXJuYW1lGAIgASgJSAGIAQESFQoIcGFzc3dvcmQYAyABKAlIAogBAUIKCghfZ2F0ZXdheUILCglfdXNlcm5hbWVCCwoJX3Bhc3N3b3JkGkoKDEFnZW50SG9zdGluZxITCgZzZXJ2ZXIYASABKAlIAIgBARIRCgR0eXBlGAIgASgJSAGIAQFCCQoHX3NlcnZlckIHCgVfdHlwZRogCgRFZGdlEhAKA3VybBgBIAEoCUgAiAEBQgYKBF91cmwaJAoCQWkSEwoGc2VydmVyGAEgASgJSACIAQFCCQoHX3NlcnZlchofCgNIdWISEAoDdXJsGAEgASgJSACIAQFCBgoEX3VybEIHCgVfa3ViZUIGCgRfYXBwQgcKBV9keG5zQgcKBV9pcGZzQgoKCF9tYWNoaW5lQgYKBF9ib3RCDAoKX3B1Ymxpc2hlckINCgtfc3VwZXJ2aXNvckIMCgpfdHVubmVsaW5nQggKBl9mYWFzZEIQCg5fYWdlbnRfaG9zdGluZ0IHCgVfZWRnZUIFCgNfYWlCBgoEX2h1YhpACgRLZXlzEhEKBG5hbWUYASABKAlIAIgBARISCgV2YWx1ZRgCIAEoCUgBiAEBQgcKBV9uYW1lQggKBl92YWx1ZUIJCgdfY2xpZW50QgYKBF9hcHBCBgoEX2NsaUIICgZfcHJvcHNCCwoJX3NlcnZpY2VzQgkKB19zeXN0ZW1CBwoFX2t1YmVCCAoGX2FnZW50OjoKB2Vudl92YXISHS5nb29nbGUucHJvdG9idWYuRmllbGRPcHRpb25zGOgHIAEoCVIGZW52VmFyiAEBQixaKmdpdGh1Yi5jb20vZHhvcy9keG9zL3Byb3RvL2RlZi9keG9zL2NvbmZpZ2IGcHJvdG8z", [file_google_protobuf_any, file_google_protobuf_struct, file_google_protobuf_descriptor]);
19
+ fileDesc("ChFkeG9zL2NvbmZpZy5wcm90bxILZHhvcy5jb25maWcimgEKBkNvbmZpZxIUCgd2ZXJzaW9uGAEgASgFSACIAQESKgoHcGFja2FnZRgCIAEoCzIULmR4b3MuY29uZmlnLlBhY2thZ2VIAYgBARIqCgdydW50aW1lGAMgASgLMhQuZHhvcy5jb25maWcuUnVudGltZUgCiAEBQgoKCF92ZXJzaW9uQgoKCF9wYWNrYWdlQgoKCF9ydW50aW1lInMKB1BhY2thZ2USFAoHbGljZW5zZRgBIAEoCUgAiAEBEiAKBXJlcG9zGAIgAygLMhEuZHhvcy5jb25maWcuUmVwbxIkCgdtb2R1bGVzGAMgAygLMhMuZHhvcy5jb25maWcuTW9kdWxlQgoKCF9saWNlbnNlIl4KBFJlcG8SEQoEbmFtZRgBIAEoCUgAiAEBEhAKA3VybBgCIAEoCUgBiAEBEhQKB3ZlcnNpb24YAyABKAlIAogBAUIHCgVfbmFtZUIGCgRfdXJsQgoKCF92ZXJzaW9uIuwECgZNb2R1bGUSDwoCaWQYCCABKAlIAIgBARIRCgRuYW1lGAEgASgJSAGIAQESEQoEdHlwZRgCIAEoCUgCiAEBEhkKDGRpc3BsYXlfbmFtZRgDIAEoCUgDiAEBEhgKC2Rlc2NyaXB0aW9uGAQgASgJSASIAQESDAoEdGFncxgFIAMoCRITCgZidW5kbGUYBiABKAxIBYgBARITCgZ0dW5uZWwYByABKAhIBogBARIhCgRkZXBzGAogAygLMhMuZHhvcy5jb25maWcuTW9kdWxlEi0KBWJ1aWxkGGQgASgLMhkuZHhvcy5jb25maWcuTW9kdWxlLkJ1aWxkSAeIAQESIAoFcmVwb3MYZSADKAsyES5keG9zLmNvbmZpZy5SZXBvEioKBnJlY29yZBjIASABKAsyFC5nb29nbGUucHJvdG9idWYuQW55SAiIAQEauAEKBUJ1aWxkEhQKB2NvbW1hbmQYASABKAlIAIgBARITCgZvdXRkaXIYAiABKAlIAYgBARIUCgd2ZXJzaW9uGAMgASgJSAKIAQESEAoDdGFnGAQgASgJSAOIAQESKQoDZW52GAogASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgEiAEBQgoKCF9jb21tYW5kQgkKB19vdXRkaXJCCgoIX3ZlcnNpb25CBgoEX3RhZ0IGCgRfZW52QgUKA19pZEIHCgVfbmFtZUIHCgVfdHlwZUIPCg1fZGlzcGxheV9uYW1lQg4KDF9kZXNjcmlwdGlvbkIJCgdfYnVuZGxlQgkKB190dW5uZWxCCAoGX2J1aWxkQgkKB19yZWNvcmQirz8KB1J1bnRpbWUSMAoGY2xpZW50GAEgASgLMhsuZHhvcy5jb25maWcuUnVudGltZS5DbGllbnRIAIgBARIqCgNhcHAYAiABKAsyGC5keG9zLmNvbmZpZy5SdW50aW1lLkFwcEgBiAEBEioKA2NsaRgDIAEoCzIYLmR4b3MuY29uZmlnLlJ1bnRpbWUuQ0xJSAKIAQESLgoFcHJvcHMYBCABKAsyGi5keG9zLmNvbmZpZy5SdW50aW1lLlByb3BzSAOIAQESNAoIc2VydmljZXMYBSABKAsyHS5keG9zLmNvbmZpZy5SdW50aW1lLlNlcnZpY2VzSASIAQESMAoGc3lzdGVtGAYgASgLMhsuZHhvcy5jb25maWcuUnVudGltZS5TeXN0ZW1IBYgBARIsCgRrdWJlGAcgASgLMhkuZHhvcy5jb25maWcuUnVudGltZS5LdWJlSAaIAQESJwoEa2V5cxgIIAMoCzIZLmR4b3MuY29uZmlnLlJ1bnRpbWUuS2V5cxIuCgVhZ2VudBgJIAEoCzIaLmR4b3MuY29uZmlnLlJ1bnRpbWUuQWdlbnRIB4gBARqbEAoGQ2xpZW50EjEKA2xvZxgBIAEoCzIfLmR4b3MuY29uZmlnLlJ1bnRpbWUuQ2xpZW50LkxvZ0gAiAEBEjkKB3N0b3JhZ2UYAiABKAsyIy5keG9zLmNvbmZpZy5SdW50aW1lLkNsaWVudC5TdG9yYWdlSAGIAQESHQoQZW5hYmxlX3NuYXBzaG90cxgDIAEoCEgCiAEBEh4KEXNuYXBzaG90X2ludGVydmFsGAQgASgFSAOIAQESIgoVaW52aXRhdGlvbl9leHBpcmF0aW9uGAUgASgFSASIAQESGgoNcmVtb3RlX3NvdXJjZRgGIAEoCUgFiAEBEi8KInJlbW90ZV9zb3VyY2VfYXV0aGVudGljYXRpb25fdG9rZW4YCCABKAlIBogBARIbCg5kZXZ0b29sc19wcm94eRgHIAEoCUgHiAEBEhwKD2xhenlfc3BhY2Vfb3BlbhgJIAEoCEgIiAEBEiQKF2Rpc2FibGVfcDJwX3JlcGxpY2F0aW9uGAogASgISAmIAQESIwoWZW5hYmxlX3ZlY3Rvcl9pbmRleGluZxgMIAEoCEgKiAEBEkQKDWVkZ2VfZmVhdHVyZXMYCyABKAsyKC5keG9zLmNvbmZpZy5SdW50aW1lLkNsaWVudC5FZGdlRmVhdHVyZXNIC4gBARIgChNvYnNlcnZhYmlsaXR5X2dyb3VwGA0gASgJSAyIAQESJQoYc2lnbmFsX3RlbGVtZXRyeV9lbmFibGVkGA4gASgISA2IAQESHwoSc2luZ2xlX2NsaWVudF9tb2RlGA8gASgISA6IAQESRAoNc2VydmljZXNfbW9kZRgQIAEoDjIoLmR4b3MuY29uZmlnLlJ1bnRpbWUuQ2xpZW50LlNlcnZpY2VzTW9kZUgPiAEBGtYECgdTdG9yYWdlEhcKCnBlcnNpc3RlbnQYASABKAhIAIgBARJJCglrZXlfc3RvcmUYAiABKA4yMS5keG9zLmNvbmZpZy5SdW50aW1lLkNsaWVudC5TdG9yYWdlLlN0b3JhZ2VEcml2ZXJIAYgBARJKCgpkYXRhX3N0b3JlGAMgASgOMjEuZHhvcy5jb25maWcuUnVudGltZS5DbGllbnQuU3RvcmFnZS5TdG9yYWdlRHJpdmVySAKIAQESFgoJZGF0YV9yb290GAQgASgJSAOIAQESIAoTc3BhY2VfZnJhZ21lbnRhdGlvbhgFIAEoCEgEiAEBEkgKC3NxbGl0ZV9tb2RlGAYgASgOMi4uZHhvcy5jb25maWcuUnVudGltZS5DbGllbnQuU3RvcmFnZS5TcWxpdGVNb2RlSAWIAQEiagoNU3RvcmFnZURyaXZlchIHCgNSQU0QABIHCgNJREIQARIKCgZDSFJPTUUQAhILCgdGSVJFRk9YEAMSCAoETk9ERRAEEgkKBVdFQkZTEAUSCwoHTEVWRUxKUxALEgwKCEpTT05ET1dOEAwiSQoKU3FsaXRlTW9kZRIbChdVTlNQRUNJRklFRF9TUUxJVEVfTU9ERRAAEgoKBk1FTU9SWRABEggKBE9QRlMQAhIICgRGSUxFEANCDQoLX3BlcnNpc3RlbnRCDAoKX2tleV9zdG9yZUINCgtfZGF0YV9zdG9yZUIMCgpfZGF0YV9yb290QhYKFF9zcGFjZV9mcmFnbWVudGF0aW9uQg4KDF9zcWxpdGVfbW9kZRpjCgNMb2cSIgoGZmlsdGVyGAEgASgJQg3CPgpMT0dfRklMVEVSSACIAQESIgoGcHJlZml4GAIgASgJQg3CPgpMT0dfUFJFRklYSAGIAQFCCQoHX2ZpbHRlckIJCgdfcHJlZml4GvYBCgxFZGdlRmVhdHVyZXMSHAoPZmVlZF9yZXBsaWNhdG9yGAEgASgISACIAQESHAoPZWNob19yZXBsaWNhdG9yGAIgASgISAGIAQESIgoVc3ViZHVjdGlvbl9yZXBsaWNhdG9yGAUgASgISAKIAQESFgoJc2lnbmFsaW5nGAMgASgISAOIAQESEwoGYWdlbnRzGAQgASgISASIAQFCEgoQX2ZlZWRfcmVwbGljYXRvckISChBfZWNob19yZXBsaWNhdG9yQhgKFl9zdWJkdWN0aW9uX3JlcGxpY2F0b3JCDAoKX3NpZ25hbGluZ0IJCgdfYWdlbnRzImAKDFNlcnZpY2VzTW9kZRIdChlVTlNQRUNJRklFRF9TRVJWSUNFU19NT0RFEAASCAoESE9TVBABEhEKDVNIQVJFRF9XT1JLRVIQAhIUChBERURJQ0FURURfV09SS0VSEANCBgoEX2xvZ0IKCghfc3RvcmFnZUITChFfZW5hYmxlX3NuYXBzaG90c0IUChJfc25hcHNob3RfaW50ZXJ2YWxCGAoWX2ludml0YXRpb25fZXhwaXJhdGlvbkIQCg5fcmVtb3RlX3NvdXJjZUIlCiNfcmVtb3RlX3NvdXJjZV9hdXRoZW50aWNhdGlvbl90b2tlbkIRCg9fZGV2dG9vbHNfcHJveHlCEgoQX2xhenlfc3BhY2Vfb3BlbkIaChhfZGlzYWJsZV9wMnBfcmVwbGljYXRpb25CGQoXX2VuYWJsZV92ZWN0b3JfaW5kZXhpbmdCEAoOX2VkZ2VfZmVhdHVyZXNCFgoUX29ic2VydmFiaWxpdHlfZ3JvdXBCGwoZX3NpZ25hbF90ZWxlbWV0cnlfZW5hYmxlZEIVChNfc2luZ2xlX2NsaWVudF9tb2RlQhAKDl9zZXJ2aWNlc19tb2RlGqsDCgNBcHASEAoDb3JnGAEgASgJSACIAQESEgoFdGhlbWUYAiABKAlIAYgBARIUCgd3ZWJzaXRlGAMgASgJSAKIAQESJgoKcHVibGljX3VybBgEIAEoCUINwj4KUFVCTElDX1VSTEgDiAEBEjYKBWJ1aWxkGGQgASgLMiIuZHhvcy5jb25maWcuUnVudGltZS5BcHAuQnVpbGRJbmZvSASIAQESKQoDZW52GGUgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgFiAEBGp0BCglCdWlsZEluZm8SFgoJdGltZXN0YW1wGAEgASgJSACIAQESGAoLY29tbWl0X2hhc2gYAiABKAlIAYgBARIUCgd2ZXJzaW9uGAMgASgJSAKIAQESEwoGYnJhbmNoGAQgASgJSAOIAQFCDAoKX3RpbWVzdGFtcEIOCgxfY29tbWl0X2hhc2hCCgoIX3ZlcnNpb25CCQoHX2JyYW5jaEIGCgRfb3JnQggKBl90aGVtZUIKCghfd2Vic2l0ZUINCgtfcHVibGljX3VybEIICgZfYnVpbGRCBgoEX2VudhrGAQoFQWdlbnQSMgoHcGx1Z2lucxgBIAMoCzIhLmR4b3MuY29uZmlnLlJ1bnRpbWUuQWdlbnQuUGx1Z2luGogBCgZQbHVnaW4SCgoCaWQYASABKAkSEQoEbmFtZRgCIAEoCUgAiAEBEhQKB2VuYWJsZWQYAyABKAhIAYgBARIpCgZjb25maWcYCiABKAsyFC5nb29nbGUucHJvdG9idWYuQW55SAKIAQFCBwoFX25hbWVCCgoIX2VuYWJsZWRCCQoHX2NvbmZpZxrLBQoDQ0xJEhYKCW5vZGVfcGF0aBgBIAEoCUgAiAEBEjMKA2FwcBgCIAEoCzIhLmR4b3MuY29uZmlnLlJ1bnRpbWUuQ0xJLkFwcFNlcnZlSAGIAQESNgoHY29uc29sZRgDIAEoCzIgLmR4b3MuY29uZmlnLlJ1bnRpbWUuQ0xJLlBhY2thZ2VIAogBARIzCgRtZG5zGAQgASgLMiAuZHhvcy5jb25maWcuUnVudGltZS5DTEkuUGFja2FnZUgDiAEBEjUKBnNpZ25hbBgFIAEoCzIgLmR4b3MuY29uZmlnLlJ1bnRpbWUuQ0xJLlBhY2thZ2VIBIgBARIXCgpucG1fY2xpZW50GAYgASgJSAWIAQESFAoHY2hhbm5lbBgHIAEoCUgGiAEBGsgBCghBcHBTZXJ2ZRI7CgVzZXJ2ZRgBIAEoCzInLmR4b3MuY29uZmlnLlJ1bnRpbWUuQ0xJLkFwcFNlcnZlLlNlcnZlSACIAQEadQoFU2VydmUSEwoGY29uZmlnGAEgASgJSACIAQESFgoJbG9naW5fYXBwGAIgASgJSAGIAQESFwoKa2V5X3BocmFzZRgDIAEoCUgCiAEBQgkKB19jb25maWdCDAoKX2xvZ2luX2FwcEINCgtfa2V5X3BocmFzZUIICgZfc2VydmUahwEKB1BhY2thZ2USFAoHcGFja2FnZRgBIAEoCUgAiAEBEhQKB2NoYW5uZWwYAiABKAlIAYgBARIQCgNiaW4YAyABKAlIAogBARITCgZjb25maWcYBCABKAlIA4gBAUIKCghfcGFja2FnZUIKCghfY2hhbm5lbEIGCgRfYmluQgkKB19jb25maWdCDAoKX25vZGVfcGF0aEIGCgRfYXBwQgoKCF9jb25zb2xlQgcKBV9tZG5zQgkKB19zaWduYWxCDQoLX25wbV9jbGllbnRCCgoIX2NoYW5uZWwaJQoFUHJvcHMSEgoFdGl0bGUYASABKAlIAIgBAUIICgZfdGl0bGUaJgoGU3lzdGVtEhIKBWRlYnVnGAEgASgJSACIAQFCCAoGX2RlYnVnGocKCgRLdWJlEgwKBGhvc3QYASABKAkSDAoEcG9ydBgCIAEoCRI4CgphdXRvdXBkYXRlGAMgASgLMiQuZHhvcy5jb25maWcuUnVudGltZS5LdWJlLkF1dG91cGRhdGUSLgoFaHR0cHMYBCABKAsyHy5keG9zLmNvbmZpZy5SdW50aW1lLkt1YmUuSHR0cHMSKgoDcDJwGAUgASgLMh0uZHhvcy5jb25maWcuUnVudGltZS5LdWJlLlAyUBIQCghjb25maG9zdBgGIAEoCRILCgNlbnYYByADKAkSDQoFYWxpYXMYCCADKAkSOAoKbW9uaXRvcmluZxgJIAEoCzIkLmR4b3MuY29uZmlnLlJ1bnRpbWUuS3ViZS5Nb25pdG9yaW5nEi4KBXRyYWNlGAogASgLMh8uZHhvcy5jb25maWcuUnVudGltZS5LdWJlLlRyYWNlEjYKCXRlbGVtZXRyeRgLIAEoCzIjLmR4b3MuY29uZmlnLlJ1bnRpbWUuS3ViZS5UZWxlbWV0cnkSMgoHZ3Jhdml0eRgMIAEoCzIhLmR4b3MuY29uZmlnLlJ1bnRpbWUuS3ViZS5HcmF2aXR5Ej0KDWFwcF90dW5uZWxpbmcYDSABKAsyJi5keG9zLmNvbmZpZy5SdW50aW1lLkt1YmUuQXBwVHVubmVsaW5nEiwKBGJvdHMYDiABKAsyHi5keG9zLmNvbmZpZy5SdW50aW1lLkt1YmUuQm90cxJPChdpcGZzX2FwaV9hdXRob3JpemF0aW9ucxgPIAMoCzIuLmR4b3MuY29uZmlnLlJ1bnRpbWUuS3ViZS5LdWJvQXBpQXV0aG9yaXphdGlvbhovCgpBdXRvdXBkYXRlEg8KB2VuYWJsZWQYASABKAgSEAoIaW50ZXJ2YWwYAiABKAUabQoFSHR0cHMSDwoHZW5hYmxlZBgBIAEoCBIMCgRwb3J0GAIgASgJEg0KBWVtYWlsGAMgASgJEhAKCGNlcnRmaWxlGAQgASgJEg8KB2tleWZpbGUYBSABKAkSEwoLZG5zcHJvdmlkZXIYBiABKAkaOgoDUDJQEhIKCnByaXZhdGVrZXkYASABKAkSDAoEcG9ydBgCIAEoCRIRCglib290c3RyYXAYAyADKAkaQQoKTW9uaXRvcmluZxIPCgdlbmFibGVkGAEgASgIEhAKCGVuZHBvaW50GAIgASgJEhAKCGludGVydmFsGAMgASgFGhkKBVRyYWNlEhAKCGRpc2FibGVkGAEgASgIGisKCVRlbGVtZXRyeRIQCghkaXNhYmxlZBgBIAEoCBIMCgR0YWdzGAIgAygJGksKB0dyYXZpdHkSEAoIZGlzYWJsZWQYASABKAgSDAoEbmFtZRgCIAEoCRIUCgdsb2dfZGlyGAMgASgJSACIAQFCCgoIX2xvZ19kaXIaWgoMQXBwVHVubmVsaW5nEg8KB2VuYWJsZWQYASABKAgSGAoQY29tbWFuZF90ZW1wbGF0ZRgCIAEoCRIRCglvdXRwdXRfcmUYAyABKAkSDAoEcG9ydBgEIAEoCRopCgRCb3RzEg8KB2VuYWJsZWQYASABKAgSEAoIaW50ZXJ2YWwYAiABKAUaUAoUS3Vib0FwaUF1dGhvcml6YXRpb24SDAoEbmFtZRgBIAEoCRITCgthdXRoX3NlY3JldBgCIAEoCRIVCg1hbGxvd2VkX3BhdGhzGAMgAygJGqwVCghTZXJ2aWNlcxI1CgRrdWJlGAEgASgLMiIuZHhvcy5jb25maWcuUnVudGltZS5TZXJ2aWNlcy5LdWJlSACIAQESOQoDYXBwGAIgASgLMicuZHhvcy5jb25maWcuUnVudGltZS5TZXJ2aWNlcy5BcHBTZXJ2ZXJIAYgBARI1CgRkeG5zGAMgASgLMiIuZHhvcy5jb25maWcuUnVudGltZS5TZXJ2aWNlcy5EeG5zSAKIAQESNQoEaXBmcxgEIAEoCzIiLmR4b3MuY29uZmlnLlJ1bnRpbWUuU2VydmljZXMuSXBmc0gDiAEBEjcKCXNpZ25hbGluZxgFIAMoCzIkLmR4b3MuY29uZmlnLlJ1bnRpbWUuU2VydmljZXMuU2lnbmFsEi4KA2ljZRgGIAMoCzIhLmR4b3MuY29uZmlnLlJ1bnRpbWUuU2VydmljZXMuSWNlEkAKDWljZV9wcm92aWRlcnMYDiADKAsyKS5keG9zLmNvbmZpZy5SdW50aW1lLlNlcnZpY2VzLkljZVByb3ZpZGVyEjsKB21hY2hpbmUYByABKAsyJS5keG9zLmNvbmZpZy5SdW50aW1lLlNlcnZpY2VzLk1hY2hpbmVIBIgBARI3CgNib3QYCCABKAsyJS5keG9zLmNvbmZpZy5SdW50aW1lLlNlcnZpY2VzLkJvdEhvc3RIBYgBARI/CglwdWJsaXNoZXIYCSABKAsyJy5keG9zLmNvbmZpZy5SdW50aW1lLlNlcnZpY2VzLlB1Ymxpc2hlckgGiAEBEkEKCnN1cGVydmlzb3IYCiABKAsyKC5keG9zLmNvbmZpZy5SdW50aW1lLlNlcnZpY2VzLlN1cGVydmlzb3JIB4gBARI/Cgl0dW5uZWxpbmcYCyABKAsyJy5keG9zLmNvbmZpZy5SdW50aW1lLlNlcnZpY2VzLlR1bm5lbGluZ0gIiAEBEjcKBWZhYXNkGAwgASgLMiMuZHhvcy5jb25maWcuUnVudGltZS5TZXJ2aWNlcy5GYWFzZEgJiAEBEkYKDWFnZW50X2hvc3RpbmcYDSABKAsyKi5keG9zLmNvbmZpZy5SdW50aW1lLlNlcnZpY2VzLkFnZW50SG9zdGluZ0gKiAEBEjUKBGVkZ2UYDyABKAsyIi5keG9zLmNvbmZpZy5SdW50aW1lLlNlcnZpY2VzLkVkZ2VIC4gBARIxCgJhaRgQIAEoCzIgLmR4b3MuY29uZmlnLlJ1bnRpbWUuU2VydmljZXMuQWlIDIgBARIzCgNodWIYESABKAsyIS5keG9zLmNvbmZpZy5SdW50aW1lLlNlcnZpY2VzLkh1YkgNiAEBGusBCgRLdWJlEkQKCWVuZHBvaW50cxgBIAEoCzIsLmR4b3MuY29uZmlnLlJ1bnRpbWUuU2VydmljZXMuS3ViZS5FbmRwb2ludHNIAIgBARIXCgpwdWJsaWNfdXJsGAIgASgJSAGIAQEaZwoJRW5kcG9pbnRzEhEKBGxvZ3MYASABKAlIAIgBARIVCghzZXJ2aWNlcxgCIAEoCUgBiAEBEhEKBGNlcnQYAyABKAlIAogBAUIHCgVfbG9nc0ILCglfc2VydmljZXNCBwoFX2NlcnRCDAoKX2VuZHBvaW50c0INCgtfcHVibGljX3VybBpLCglBcHBTZXJ2ZXISEwoGcHJlZml4GAEgASgJSACIAQESEwoGc2VydmVyGAIgASgJSAGIAQFCCQoHX3ByZWZpeEIJCgdfc2VydmVyGrQBCgREeG5zEhMKBnNlcnZlchgBIAEoCUgAiAEBEhgKC2FjY291bnRfdXJpGAIgASgJSAGIAQESFAoHYWRkcmVzcxgDIAEoCUgCiAEBEhQKB2FjY291bnQYBCABKAlIA4gBARITCgZmYXVjZXQYBSABKAlIBIgBAUIJCgdfc2VydmVyQg4KDF9hY2NvdW50X3VyaUIKCghfYWRkcmVzc0IKCghfYWNjb3VudEIJCgdfZmF1Y2V0GoABCgRJcGZzEhMKBnNlcnZlchgBIAEoCUgAiAEBEhQKB2dhdGV3YXkYAiABKAlIAYgBARIfChJzZXJ2ZXJfYXV0aF9zZWNyZXQYAyABKAlIAogBAUIJCgdfc2VydmVyQgoKCF9nYXRld2F5QhUKE19zZXJ2ZXJfYXV0aF9zZWNyZXQaUgoGU2lnbmFsEg4KBnNlcnZlchgBIAEoCRIQCgNhcGkYAiABKAlIAIgBARITCgZzdGF0dXMYAyABKAlIAYgBAUIGCgRfYXBpQgkKB19zdGF0dXMaXwoDSWNlEgwKBHVybHMYASABKAkSFQoIdXNlcm5hbWUYAiABKAlIAIgBARIXCgpjcmVkZW50aWFsGAMgASgJSAGIAQFCCwoJX3VzZXJuYW1lQg0KC19jcmVkZW50aWFsGhsKC0ljZVByb3ZpZGVyEgwKBHVybHMYASABKAkagwIKB01hY2hpbmUSHAoPZG9fYWNjZXNzX3Rva2VuGAEgASgJSACIAQESIAoTZ2l0aHViX2FjY2Vzc190b2tlbhgCIAEoCUgBiAEBEhwKD2dpdGh1Yl91c2VybmFtZRgDIAEoCUgCiAEBEhcKCmRuc19kb21haW4YBCABKAlIA4gBARIdChBucG1fYWNjZXNzX3Rva2VuGAUgASgJSASIAQFCEgoQX2RvX2FjY2Vzc190b2tlbkIWChRfZ2l0aHViX2FjY2Vzc190b2tlbkISChBfZ2l0aHViX3VzZXJuYW1lQg0KC19kbnNfZG9tYWluQhMKEV9ucG1fYWNjZXNzX3Rva2VuGicKB0JvdEhvc3QSEgoFcHJveHkYASABKAlIAIgBAUIICgZfcHJveHkaKwoJUHVibGlzaGVyEhMKBnNlcnZlchgBIAEoCUgAiAEBQgkKB19zZXJ2ZXIaKwoJVHVubmVsaW5nEhMKBnNlcnZlchgBIAEoCUgAiAEBQgkKB19zZXJ2ZXIaLAoKU3VwZXJ2aXNvchITCgZzZXJ2ZXIYASABKAlIAIgBAUIJCgdfc2VydmVyGnEKBUZhYXNkEhQKB2dhdGV3YXkYASABKAlIAIgBARIVCgh1c2VybmFtZRgCIAEoCUgBiAEBEhUKCHBhc3N3b3JkGAMgASgJSAKIAQFCCgoIX2dhdGV3YXlCCwoJX3VzZXJuYW1lQgsKCV9wYXNzd29yZBpKCgxBZ2VudEhvc3RpbmcSEwoGc2VydmVyGAEgASgJSACIAQESEQoEdHlwZRgCIAEoCUgBiAEBQgkKB19zZXJ2ZXJCBwoFX3R5cGUaIAoERWRnZRIQCgN1cmwYASABKAlIAIgBAUIGCgRfdXJsGiQKAkFpEhMKBnNlcnZlchgBIAEoCUgAiAEBQgkKB19zZXJ2ZXIaHwoDSHViEhAKA3VybBgBIAEoCUgAiAEBQgYKBF91cmxCBwoFX2t1YmVCBgoEX2FwcEIHCgVfZHhuc0IHCgVfaXBmc0IKCghfbWFjaGluZUIGCgRfYm90QgwKCl9wdWJsaXNoZXJCDQoLX3N1cGVydmlzb3JCDAoKX3R1bm5lbGluZ0IICgZfZmFhc2RCEAoOX2FnZW50X2hvc3RpbmdCBwoFX2VkZ2VCBQoDX2FpQgYKBF9odWIaQAoES2V5cxIRCgRuYW1lGAEgASgJSACIAQESEgoFdmFsdWUYAiABKAlIAYgBAUIHCgVfbmFtZUIICgZfdmFsdWVCCQoHX2NsaWVudEIGCgRfYXBwQgYKBF9jbGlCCAoGX3Byb3BzQgsKCV9zZXJ2aWNlc0IJCgdfc3lzdGVtQgcKBV9rdWJlQggKBl9hZ2VudDo6CgdlbnZfdmFyEh0uZ29vZ2xlLnByb3RvYnVmLkZpZWxkT3B0aW9ucxjoByABKAlSBmVudlZhcogBAUIsWipnaXRodWIuY29tL2R4b3MvZHhvcy9wcm90by9kZWYvZHhvcy9jb25maWdiBnByb3RvMw", [file_google_protobuf_any, file_google_protobuf_struct, file_google_protobuf_descriptor]);
20
20
 
21
21
  /**
22
22
  * @generated from message dxos.config.Config
@@ -370,6 +370,41 @@ export type Runtime_Client = Message<"dxos.config.Runtime.Client"> & {
370
370
  * @generated from field: optional dxos.config.Runtime.Client.EdgeFeatures edge_features = 11;
371
371
  */
372
372
  edgeFeatures?: Runtime_Client_EdgeFeatures;
373
+
374
+ /**
375
+ * / Observability group attached as metadata to signaling requests.
376
+ * / NOTE: When running through a shared worker, subsequent client connections can refresh this
377
+ * / value (last-writer-wins); the first client still determines the worker's other config.
378
+ *
379
+ * @generated from field: optional string observability_group = 13;
380
+ */
381
+ observabilityGroup?: string;
382
+
383
+ /**
384
+ * / Enable telemetry metadata attached to signaling requests.
385
+ * / NOTE: When running through a shared worker, subsequent client connections can refresh this
386
+ * / value (last-writer-wins); the first client still determines the worker's other config.
387
+ *
388
+ * @generated from field: optional bool signal_telemetry_enabled = 14;
389
+ */
390
+ signalTelemetryEnabled?: boolean;
391
+
392
+ /**
393
+ * / Use in-process (single-client) coordinator for dedicated-worker mode.
394
+ * / Bypasses SharedWorker; used for WKWebView where the coordinator SharedWorker port is unreliable.
395
+ *
396
+ * @generated from field: optional bool single_client_mode = 15;
397
+ */
398
+ singleClientMode?: boolean;
399
+
400
+ /**
401
+ * / Deployment mode for client services. Read by `createClientServices` to select between
402
+ * / in-process (HOST), SharedWorker, and dedicated Worker runtimes. Required when no
403
+ * / `remote_source` is configured.
404
+ *
405
+ * @generated from field: optional dxos.config.Runtime.Client.ServicesMode services_mode = 16;
406
+ */
407
+ servicesMode?: Runtime_Client_ServicesMode;
373
408
  };
374
409
 
375
410
  /**
@@ -410,6 +445,13 @@ export type Runtime_Client_Storage = Message<"dxos.config.Runtime.Client.Storage
410
445
  * @generated from field: optional bool space_fragmentation = 5;
411
446
  */
412
447
  spaceFragmentation?: boolean;
448
+
449
+ /**
450
+ * / Backing store for SQLite runtimes. Defaults to MEMORY when unset.
451
+ *
452
+ * @generated from field: optional dxos.config.Runtime.Client.Storage.SqliteMode sqlite_mode = 6;
453
+ */
454
+ sqliteMode?: Runtime_Client_Storage_SqliteMode;
413
455
  };
414
456
 
415
457
  /**
@@ -472,6 +514,48 @@ export enum Runtime_Client_Storage_StorageDriver {
472
514
  export const Runtime_Client_Storage_StorageDriverSchema: GenEnum<Runtime_Client_Storage_StorageDriver> = /*@__PURE__*/
473
515
  enumDesc(file_dxos_config, 4, 0, 0, 0);
474
516
 
517
+ /**
518
+ * / Storage backing for SQLite (indexes & persistent state). The caller must supply the
519
+ * / matching worker factory / path — `createClientServices` does not pick a mode from the
520
+ * / presence of options.
521
+ *
522
+ * @generated from enum dxos.config.Runtime.Client.Storage.SqliteMode
523
+ */
524
+ export enum Runtime_Client_Storage_SqliteMode {
525
+ /**
526
+ * @generated from enum value: UNSPECIFIED_SQLITE_MODE = 0;
527
+ */
528
+ UNSPECIFIED_SQLITE_MODE = 0,
529
+
530
+ /**
531
+ * / Ephemeral in-memory SQLite. Indexes are rebuilt on each start.
532
+ *
533
+ * @generated from enum value: MEMORY = 1;
534
+ */
535
+ MEMORY = 1,
536
+
537
+ /**
538
+ * / OPFS-backed SQLite running in a dedicated worker (browser).
539
+ * / Requires `createOpfsWorker` to be passed to `createClientServices`.
540
+ *
541
+ * @generated from enum value: OPFS = 2;
542
+ */
543
+ OPFS = 2,
544
+
545
+ /**
546
+ * / File-backed SQLite (Node/Bun). Uses `data_root` to locate the database file.
547
+ *
548
+ * @generated from enum value: FILE = 3;
549
+ */
550
+ FILE = 3,
551
+ }
552
+
553
+ /**
554
+ * Describes the enum dxos.config.Runtime.Client.Storage.SqliteMode.
555
+ */
556
+ export const Runtime_Client_Storage_SqliteModeSchema: GenEnum<Runtime_Client_Storage_SqliteMode> = /*@__PURE__*/
557
+ enumDesc(file_dxos_config, 4, 0, 0, 1);
558
+
475
559
  /**
476
560
  * @generated from message dxos.config.Runtime.Client.Log
477
561
  */
@@ -508,6 +592,13 @@ export type Runtime_Client_EdgeFeatures = Message<"dxos.config.Runtime.Client.Ed
508
592
  */
509
593
  echoReplicator?: boolean;
510
594
 
595
+ /**
596
+ * / Enables Subduction sedimentree transport for Automerge document replication.
597
+ *
598
+ * @generated from field: optional bool subduction_replicator = 5;
599
+ */
600
+ subductionReplicator?: boolean;
601
+
511
602
  /**
512
603
  * @generated from field: optional bool signaling = 3;
513
604
  */
@@ -526,6 +617,45 @@ export type Runtime_Client_EdgeFeatures = Message<"dxos.config.Runtime.Client.Ed
526
617
  export const Runtime_Client_EdgeFeaturesSchema: GenMessage<Runtime_Client_EdgeFeatures> = /*@__PURE__*/
527
618
  messageDesc(file_dxos_config, 4, 0, 2);
528
619
 
620
+ /**
621
+ * / Where client services run. Drives `createClientServices` routing.
622
+ *
623
+ * @generated from enum dxos.config.Runtime.Client.ServicesMode
624
+ */
625
+ export enum Runtime_Client_ServicesMode {
626
+ /**
627
+ * @generated from enum value: UNSPECIFIED_SERVICES_MODE = 0;
628
+ */
629
+ UNSPECIFIED_SERVICES_MODE = 0,
630
+
631
+ /**
632
+ * / Run services in the same thread as the client.
633
+ *
634
+ * @generated from enum value: HOST = 1;
635
+ */
636
+ HOST = 1,
637
+
638
+ /**
639
+ * / Run services in a SharedWorker (single instance shared across tabs).
640
+ *
641
+ * @generated from enum value: SHARED_WORKER = 2;
642
+ */
643
+ SHARED_WORKER = 2,
644
+
645
+ /**
646
+ * / Run services in a dedicated Worker elected via a lock (leader/follower).
647
+ *
648
+ * @generated from enum value: DEDICATED_WORKER = 3;
649
+ */
650
+ DEDICATED_WORKER = 3,
651
+ }
652
+
653
+ /**
654
+ * Describes the enum dxos.config.Runtime.Client.ServicesMode.
655
+ */
656
+ export const Runtime_Client_ServicesModeSchema: GenEnum<Runtime_Client_ServicesMode> = /*@__PURE__*/
657
+ enumDesc(file_dxos_config, 4, 0, 0);
658
+
529
659
  /**
530
660
  * @generated from message dxos.config.Runtime.App
531
661
  */
@@ -17,7 +17,7 @@ import type { JsonObject, Message } from "@bufbuild/protobuf";
17
17
  * Describes the file dxos/echo/service.proto.
18
18
  */
19
19
  export const file_dxos_echo_service: GenFile = /*@__PURE__*/
20
- fileDesc("ChdkeG9zL2VjaG8vc2VydmljZS5wcm90bxIRZHhvcy5lY2hvLnNlcnZpY2UiPQoQU3Vic2NyaWJlUmVxdWVzdBIXCg9zdWJzY3JpcHRpb25faWQYASABKAkSEAoIc3BhY2VfaWQYAiABKAkiTAoWQmF0Y2hlZERvY3VtZW50VXBkYXRlcxIyCgd1cGRhdGVzGAEgAygLMiEuZHhvcy5lY2hvLnNlcnZpY2UuRG9jdW1lbnRVcGRhdGUiXAoNVXBkYXRlUmVxdWVzdBIXCg9zdWJzY3JpcHRpb25faWQYASABKAkSMgoHdXBkYXRlcxgCIAMoCzIhLmR4b3MuZWNoby5zZXJ2aWNlLkRvY3VtZW50VXBkYXRlIlkKGVVwZGF0ZVN1YnNjcmlwdGlvblJlcXVlc3QSFwoPc3Vic2NyaXB0aW9uX2lkGAEgASgJEg8KB2FkZF9pZHMYAyADKAkSEgoKcmVtb3ZlX2lkcxgEIAMoCSIkCgxGbHVzaFJlcXVlc3QSFAoMZG9jdW1lbnRfaWRzGAEgAygJIjcKDkRvY3VtZW50VXBkYXRlEhMKC2RvY3VtZW50X2lkGAEgASgJEhAKCG11dGF0aW9uGAIgASgMInMKDERvY0hlYWRzTGlzdBI2CgdlbnRyaWVzGAEgAygLMiUuZHhvcy5lY2hvLnNlcnZpY2UuRG9jSGVhZHNMaXN0LkVudHJ5GisKBUVudHJ5EhMKC2RvY3VtZW50X2lkGAEgASgJEg0KBWhlYWRzGAIgAygJIi8KF0dldERvY3VtZW50SGVhZHNSZXF1ZXN0EhQKDGRvY3VtZW50X2lkcxgBIAMoCSJKChhHZXREb2N1bWVudEhlYWRzUmVzcG9uc2USLgoFaGVhZHMYASABKAsyHy5keG9zLmVjaG8uc2VydmljZS5Eb2NIZWFkc0xpc3QiUQofV2FpdFVudGlsSGVhZHNSZXBsaWNhdGVkUmVxdWVzdBIuCgVoZWFkcxgBIAEoCzIfLmR4b3MuZWNoby5zZXJ2aWNlLkRvY0hlYWRzTGlzdCIrChNSZUluZGV4SGVhZHNSZXF1ZXN0EhQKDGRvY3VtZW50X2lkcxgBIAMoCSJwChVDcmVhdGVEb2N1bWVudFJlcXVlc3QSEAoIc3BhY2VfaWQYASABKAkSMwoNaW5pdGlhbF92YWx1ZRgCIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIAIgBAUIQCg5faW5pdGlhbF92YWx1ZSItChZDcmVhdGVEb2N1bWVudFJlc3BvbnNlEhMKC2RvY3VtZW50X2lkGAEgASgJIiwKGEdldFNwYWNlU3luY1N0YXRlUmVxdWVzdBIQCghzcGFjZV9pZBgBIAEoCSK5AgoOU3BhY2VTeW5jU3RhdGUSOgoFcGVlcnMYASADKAsyKy5keG9zLmVjaG8uc2VydmljZS5TcGFjZVN5bmNTdGF0ZS5QZWVyU3RhdGUa6gEKCVBlZXJTdGF0ZRIPCgdwZWVyX2lkGAEgASgJEhkKEW1pc3Npbmdfb25fcmVtb3RlGAogASgFEhgKEG1pc3Npbmdfb25fbG9jYWwYCyABKAUSGwoTZGlmZmVyZW50X2RvY3VtZW50cxgMIAEoBRIcChRsb2NhbF9kb2N1bWVudF9jb3VudBgNIAEoBRIdChVyZW1vdGVfZG9jdW1lbnRfY291bnQYDiABKAUSHAoUdG90YWxfZG9jdW1lbnRfY291bnQYDyABKAUSHwoXdW5zeW5jZWRfZG9jdW1lbnRfY291bnQYECABKAUyiAcKC0RhdGFTZXJ2aWNlEl0KCVN1YnNjcmliZRIjLmR4b3MuZWNoby5zZXJ2aWNlLlN1YnNjcmliZVJlcXVlc3QaKS5keG9zLmVjaG8uc2VydmljZS5CYXRjaGVkRG9jdW1lbnRVcGRhdGVzMAESWgoSVXBkYXRlU3Vic2NyaXB0aW9uEiwuZHhvcy5lY2hvLnNlcnZpY2UuVXBkYXRlU3Vic2NyaXB0aW9uUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRJlCg5DcmVhdGVEb2N1bWVudBIoLmR4b3MuZWNoby5zZXJ2aWNlLkNyZWF0ZURvY3VtZW50UmVxdWVzdBopLmR4b3MuZWNoby5zZXJ2aWNlLkNyZWF0ZURvY3VtZW50UmVzcG9uc2USQgoGVXBkYXRlEiAuZHhvcy5lY2hvLnNlcnZpY2UuVXBkYXRlUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRJACgVGbHVzaBIfLmR4b3MuZWNoby5zZXJ2aWNlLkZsdXNoUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRJrChBHZXREb2N1bWVudEhlYWRzEiouZHhvcy5lY2hvLnNlcnZpY2UuR2V0RG9jdW1lbnRIZWFkc1JlcXVlc3QaKy5keG9zLmVjaG8uc2VydmljZS5HZXREb2N1bWVudEhlYWRzUmVzcG9uc2USZgoYV2FpdFVudGlsSGVhZHNSZXBsaWNhdGVkEjIuZHhvcy5lY2hvLnNlcnZpY2UuV2FpdFVudGlsSGVhZHNSZXBsaWNhdGVkUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRJOCgxSZUluZGV4SGVhZHMSJi5keG9zLmVjaG8uc2VydmljZS5SZUluZGV4SGVhZHNSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5Ej8KDVVwZGF0ZUluZGV4ZXMSFi5nb29nbGUucHJvdG9idWYuRW1wdHkaFi5nb29nbGUucHJvdG9idWYuRW1wdHkSawoXU3Vic2NyaWJlU3BhY2VTeW5jU3RhdGUSKy5keG9zLmVjaG8uc2VydmljZS5HZXRTcGFjZVN5bmNTdGF0ZVJlcXVlc3QaIS5keG9zLmVjaG8uc2VydmljZS5TcGFjZVN5bmNTdGF0ZTABYgZwcm90bzM", [file_dxos_keys, file_google_protobuf_empty, file_google_protobuf_struct]);
20
+ fileDesc("ChdkeG9zL2VjaG8vc2VydmljZS5wcm90bxIRZHhvcy5lY2hvLnNlcnZpY2UiPQoQU3Vic2NyaWJlUmVxdWVzdBIXCg9zdWJzY3JpcHRpb25faWQYASABKAkSEAoIc3BhY2VfaWQYAiABKAkiTAoWQmF0Y2hlZERvY3VtZW50VXBkYXRlcxIyCgd1cGRhdGVzGAEgAygLMiEuZHhvcy5lY2hvLnNlcnZpY2UuRG9jdW1lbnRVcGRhdGUiXAoNVXBkYXRlUmVxdWVzdBIXCg9zdWJzY3JpcHRpb25faWQYASABKAkSMgoHdXBkYXRlcxgCIAMoCzIhLmR4b3MuZWNoby5zZXJ2aWNlLkRvY3VtZW50VXBkYXRlIlkKGVVwZGF0ZVN1YnNjcmlwdGlvblJlcXVlc3QSFwoPc3Vic2NyaXB0aW9uX2lkGAEgASgJEg8KB2FkZF9pZHMYAyADKAkSEgoKcmVtb3ZlX2lkcxgEIAMoCSIkCgxGbHVzaFJlcXVlc3QSFAoMZG9jdW1lbnRfaWRzGAEgAygJInEKDkRvY3VtZW50VXBkYXRlEhMKC2RvY3VtZW50X2lkGAEgASgJEhUKCG11dGF0aW9uGAIgASgMSACIAQESFwoKcmVxdWVzdGluZxgDIAEoCEgBiAEBQgsKCV9tdXRhdGlvbkINCgtfcmVxdWVzdGluZyJzCgxEb2NIZWFkc0xpc3QSNgoHZW50cmllcxgBIAMoCzIlLmR4b3MuZWNoby5zZXJ2aWNlLkRvY0hlYWRzTGlzdC5FbnRyeRorCgVFbnRyeRITCgtkb2N1bWVudF9pZBgBIAEoCRINCgVoZWFkcxgCIAMoCSIvChdHZXREb2N1bWVudEhlYWRzUmVxdWVzdBIUCgxkb2N1bWVudF9pZHMYASADKAkiSgoYR2V0RG9jdW1lbnRIZWFkc1Jlc3BvbnNlEi4KBWhlYWRzGAEgASgLMh8uZHhvcy5lY2hvLnNlcnZpY2UuRG9jSGVhZHNMaXN0IlEKH1dhaXRVbnRpbEhlYWRzUmVwbGljYXRlZFJlcXVlc3QSLgoFaGVhZHMYASABKAsyHy5keG9zLmVjaG8uc2VydmljZS5Eb2NIZWFkc0xpc3QiKwoTUmVJbmRleEhlYWRzUmVxdWVzdBIUCgxkb2N1bWVudF9pZHMYASADKAkicAoVQ3JlYXRlRG9jdW1lbnRSZXF1ZXN0EhAKCHNwYWNlX2lkGAEgASgJEjMKDWluaXRpYWxfdmFsdWUYAiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SACIAQFCEAoOX2luaXRpYWxfdmFsdWUiLQoWQ3JlYXRlRG9jdW1lbnRSZXNwb25zZRITCgtkb2N1bWVudF9pZBgBIAEoCSIsChhHZXRTcGFjZVN5bmNTdGF0ZVJlcXVlc3QSEAoIc3BhY2VfaWQYASABKAkiuQIKDlNwYWNlU3luY1N0YXRlEjoKBXBlZXJzGAEgAygLMisuZHhvcy5lY2hvLnNlcnZpY2UuU3BhY2VTeW5jU3RhdGUuUGVlclN0YXRlGuoBCglQZWVyU3RhdGUSDwoHcGVlcl9pZBgBIAEoCRIZChFtaXNzaW5nX29uX3JlbW90ZRgKIAEoBRIYChBtaXNzaW5nX29uX2xvY2FsGAsgASgFEhsKE2RpZmZlcmVudF9kb2N1bWVudHMYDCABKAUSHAoUbG9jYWxfZG9jdW1lbnRfY291bnQYDSABKAUSHQoVcmVtb3RlX2RvY3VtZW50X2NvdW50GA4gASgFEhwKFHRvdGFsX2RvY3VtZW50X2NvdW50GA8gASgFEh8KF3Vuc3luY2VkX2RvY3VtZW50X2NvdW50GBAgASgFMogHCgtEYXRhU2VydmljZRJdCglTdWJzY3JpYmUSIy5keG9zLmVjaG8uc2VydmljZS5TdWJzY3JpYmVSZXF1ZXN0GikuZHhvcy5lY2hvLnNlcnZpY2UuQmF0Y2hlZERvY3VtZW50VXBkYXRlczABEloKElVwZGF0ZVN1YnNjcmlwdGlvbhIsLmR4b3MuZWNoby5zZXJ2aWNlLlVwZGF0ZVN1YnNjcmlwdGlvblJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkSZQoOQ3JlYXRlRG9jdW1lbnQSKC5keG9zLmVjaG8uc2VydmljZS5DcmVhdGVEb2N1bWVudFJlcXVlc3QaKS5keG9zLmVjaG8uc2VydmljZS5DcmVhdGVEb2N1bWVudFJlc3BvbnNlEkIKBlVwZGF0ZRIgLmR4b3MuZWNoby5zZXJ2aWNlLlVwZGF0ZVJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkSQAoFRmx1c2gSHy5keG9zLmVjaG8uc2VydmljZS5GbHVzaFJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkSawoQR2V0RG9jdW1lbnRIZWFkcxIqLmR4b3MuZWNoby5zZXJ2aWNlLkdldERvY3VtZW50SGVhZHNSZXF1ZXN0GisuZHhvcy5lY2hvLnNlcnZpY2UuR2V0RG9jdW1lbnRIZWFkc1Jlc3BvbnNlEmYKGFdhaXRVbnRpbEhlYWRzUmVwbGljYXRlZBIyLmR4b3MuZWNoby5zZXJ2aWNlLldhaXRVbnRpbEhlYWRzUmVwbGljYXRlZFJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkSTgoMUmVJbmRleEhlYWRzEiYuZHhvcy5lY2hvLnNlcnZpY2UuUmVJbmRleEhlYWRzUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRI/Cg1VcGRhdGVJbmRleGVzEhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5EmsKF1N1YnNjcmliZVNwYWNlU3luY1N0YXRlEisuZHhvcy5lY2hvLnNlcnZpY2UuR2V0U3BhY2VTeW5jU3RhdGVSZXF1ZXN0GiEuZHhvcy5lY2hvLnNlcnZpY2UuU3BhY2VTeW5jU3RhdGUwAWIGcHJvdG8z", [file_dxos_keys, file_google_protobuf_empty, file_google_protobuf_struct]);
21
21
 
22
22
  /**
23
23
  * @generated from message dxos.echo.service.SubscribeRequest
@@ -155,10 +155,26 @@ export type DocumentUpdate = Message<"dxos.echo.service.DocumentUpdate"> & {
155
155
  * *
156
156
  * Automerge document incremental update.
157
157
  * Value returned by `Automerge.saveSince()`.
158
+ * Optional: if absent, the update only carries a transition signal (e.g.
159
+ * `requesting`) and not new bytes.
158
160
  *
159
- * @generated from field: bytes mutation = 2;
161
+ * @generated from field: optional bytes mutation = 2;
160
162
  */
161
- mutation: Uint8Array;
163
+ mutation?: Uint8Array;
164
+
165
+ /**
166
+ * *
167
+ * Set by the worker when the disk probe for this document completes
168
+ * negative — i.e. the document is not on local storage, and the worker
169
+ * has started a network fetch. The client moves the corresponding
170
+ * `DocHandleProxy` from `'pending'` to `'requesting'`. Once the bytes
171
+ * eventually arrive, a normal `mutation` update follows and the handle
172
+ * transitions to `'ready'`. Used by query-driven (disk-only) callers to
173
+ * give up on a load without waiting on the network.
174
+ *
175
+ * @generated from field: optional bool requesting = 3;
176
+ */
177
+ requesting?: boolean;
162
178
  };
163
179
 
164
180
  /**
@@ -20,7 +20,7 @@ import type { Message } from "@bufbuild/protobuf";
20
20
  * Describes the file dxos/iframe.proto.
21
21
  */
22
22
  export const file_dxos_iframe: GenFile = /*@__PURE__*/
23
- fileDesc("ChFkeG9zL2lmcmFtZS5wcm90bxILZHhvcy5pZnJhbWUiugEKDFN0YXJ0UmVxdWVzdBIOCgZvcmlnaW4YASABKAkSFQoIbG9ja19rZXkYAiABKAlIAIgBARIfChJvYnNlcnZhYmlsaXR5R3JvdXAYAyABKAlIAYgBARIjChZzaWduYWxUZWxlbWV0cnlFbmFibGVkGAQgASgISAKIAQFCCwoJX2xvY2tfa2V5QhUKE19vYnNlcnZhYmlsaXR5R3JvdXBCGQoXX3NpZ25hbFRlbGVtZXRyeUVuYWJsZWQi7gEKEUFwcENvbnRleHRSZXF1ZXN0Ei8KB2Rpc3BsYXkYASABKA4yGS5keG9zLmlmcmFtZS5TaGVsbERpc3BsYXlIAIgBARIsCglzcGFjZV9rZXkYAiABKAsyFC5keG9zLmtleXMuUHVibGljS2V5SAGIAQESFQoIc3BhY2VfaWQYBSABKAlIAogBARITCgZ0YXJnZXQYAyABKAlIA4gBARISCgVyZXNldBgEIAEoCEgEiAEBQgoKCF9kaXNwbGF5QgwKCl9zcGFjZV9rZXlCCwoJX3NwYWNlX2lkQgkKB190YXJnZXRCCAoGX3Jlc2V0IusBCg1MYXlvdXRSZXF1ZXN0EigKBmxheW91dBgBIAEoDjIYLmR4b3MuaWZyYW1lLlNoZWxsTGF5b3V0EhwKD2ludml0YXRpb25fY29kZRgCIAEoCUgAiAEBEiwKCXNwYWNlX2tleRgDIAEoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXlIAYgBARIVCghzcGFjZV9pZBgFIAEoCUgCiAEBEhMKBnRhcmdldBgEIAEoCUgDiAEBQhIKEF9pbnZpdGF0aW9uX2NvZGVCDAoKX3NwYWNlX2tleUILCglfc3BhY2VfaWRCCQoHX3RhcmdldCJvChRJbnZpdGF0aW9uVXJsUmVxdWVzdBIWCg5pbnZpdGF0aW9uX3VybBgBIAEoCRIfChdkZXZpY2VfaW52aXRhdGlvbl9wYXJhbRgCIAEoCRIeChZzcGFjZV9pbnZpdGF0aW9uX3BhcmFtGAMgASgJKigKDFNoZWxsRGlzcGxheRIICgROT05FEAASDgoKRlVMTFNDUkVFThABKt4BCgtTaGVsbExheW91dBILCgdERUZBVUxUEAASFwoTSU5JVElBTElaRV9JREVOVElUWRABEicKI0lOSVRJQUxJWkVfSURFTlRJVFlfRlJPTV9JTlZJVEFUSU9OEAISJQohSU5JVElBTElaRV9JREVOVElUWV9GUk9NX1JFQ09WRVJZEAkSDAoISURFTlRJVFkQAxISCg5TSEFSRV9JREVOVElUWRAEEhAKDEVESVRfUFJPRklMRRAFEgkKBVNQQUNFEAYSDgoKSk9JTl9TUEFDRRAHEgoKBlNUQVRVUxAIMoMBCg1Xb3JrZXJTZXJ2aWNlEjoKBVN0YXJ0EhkuZHhvcy5pZnJhbWUuU3RhcnRSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5EjYKBFN0b3ASFi5nb29nbGUucHJvdG9idWYuRW1wdHkaFi5nb29nbGUucHJvdG9idWYuRW1wdHkyUgoKQXBwU2VydmljZRJECgpTZXRDb250ZXh0Eh4uZHhvcy5pZnJhbWUuQXBwQ29udGV4dFJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkyngEKDFNoZWxsU2VydmljZRI/CglTZXRMYXlvdXQSGi5keG9zLmlmcmFtZS5MYXlvdXRSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5Ek0KEFNldEludml0YXRpb25VcmwSIS5keG9zLmlmcmFtZS5JbnZpdGF0aW9uVXJsUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eWIGcHJvdG8z", [file_google_protobuf_empty, file_dxos_keys]);
23
+ fileDesc("ChFkeG9zL2lmcmFtZS5wcm90bxILZHhvcy5pZnJhbWUiQgoMU3RhcnRSZXF1ZXN0Eg4KBm9yaWdpbhgBIAEoCRIVCghsb2NrX2tleRgCIAEoCUgAiAEBQgsKCV9sb2NrX2tleSLuAQoRQXBwQ29udGV4dFJlcXVlc3QSLwoHZGlzcGxheRgBIAEoDjIZLmR4b3MuaWZyYW1lLlNoZWxsRGlzcGxheUgAiAEBEiwKCXNwYWNlX2tleRgCIAEoCzIULmR4b3Mua2V5cy5QdWJsaWNLZXlIAYgBARIVCghzcGFjZV9pZBgFIAEoCUgCiAEBEhMKBnRhcmdldBgDIAEoCUgDiAEBEhIKBXJlc2V0GAQgASgISASIAQFCCgoIX2Rpc3BsYXlCDAoKX3NwYWNlX2tleUILCglfc3BhY2VfaWRCCQoHX3RhcmdldEIICgZfcmVzZXQi6wEKDUxheW91dFJlcXVlc3QSKAoGbGF5b3V0GAEgASgOMhguZHhvcy5pZnJhbWUuU2hlbGxMYXlvdXQSHAoPaW52aXRhdGlvbl9jb2RlGAIgASgJSACIAQESLAoJc3BhY2Vfa2V5GAMgASgLMhQuZHhvcy5rZXlzLlB1YmxpY0tleUgBiAEBEhUKCHNwYWNlX2lkGAUgASgJSAKIAQESEwoGdGFyZ2V0GAQgASgJSAOIAQFCEgoQX2ludml0YXRpb25fY29kZUIMCgpfc3BhY2Vfa2V5QgsKCV9zcGFjZV9pZEIJCgdfdGFyZ2V0Im8KFEludml0YXRpb25VcmxSZXF1ZXN0EhYKDmludml0YXRpb25fdXJsGAEgASgJEh8KF2RldmljZV9pbnZpdGF0aW9uX3BhcmFtGAIgASgJEh4KFnNwYWNlX2ludml0YXRpb25fcGFyYW0YAyABKAkqKAoMU2hlbGxEaXNwbGF5EggKBE5PTkUQABIOCgpGVUxMU0NSRUVOEAEq3gEKC1NoZWxsTGF5b3V0EgsKB0RFRkFVTFQQABIXChNJTklUSUFMSVpFX0lERU5USVRZEAESJwojSU5JVElBTElaRV9JREVOVElUWV9GUk9NX0lOVklUQVRJT04QAhIlCiFJTklUSUFMSVpFX0lERU5USVRZX0ZST01fUkVDT1ZFUlkQCRIMCghJREVOVElUWRADEhIKDlNIQVJFX0lERU5USVRZEAQSEAoMRURJVF9QUk9GSUxFEAUSCQoFU1BBQ0UQBhIOCgpKT0lOX1NQQUNFEAcSCgoGU1RBVFVTEAgygwEKDVdvcmtlclNlcnZpY2USOgoFU3RhcnQSGS5keG9zLmlmcmFtZS5TdGFydFJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkSNgoEU3RvcBIWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eTJSCgpBcHBTZXJ2aWNlEkQKClNldENvbnRleHQSHi5keG9zLmlmcmFtZS5BcHBDb250ZXh0UmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eTKeAQoMU2hlbGxTZXJ2aWNlEj8KCVNldExheW91dBIaLmR4b3MuaWZyYW1lLkxheW91dFJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkSTQoQU2V0SW52aXRhdGlvblVybBIhLmR4b3MuaWZyYW1lLkludml0YXRpb25VcmxSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5YgZwcm90bzM", [file_google_protobuf_empty, file_dxos_keys]);
24
24
 
25
25
  /**
26
26
  * @generated from message dxos.iframe.StartRequest
@@ -37,18 +37,6 @@ export type StartRequest = Message<"dxos.iframe.StartRequest"> & {
37
37
  * @generated from field: optional string lock_key = 2;
38
38
  */
39
39
  lockKey?: string;
40
-
41
- /**
42
- * TODO(nf): extract or remove?
43
- *
44
- * @generated from field: optional string observabilityGroup = 3;
45
- */
46
- observabilityGroup?: string;
47
-
48
- /**
49
- * @generated from field: optional bool signalTelemetryEnabled = 4;
50
- */
51
- signalTelemetryEnabled?: boolean;
52
40
  };
53
41
 
54
42
  /**