@silvana-one/orderbook 1.1.26 → 1.1.28

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 (38) hide show
  1. package/dist/node/index.cjs +336 -257
  2. package/dist/node/orderbook.d.ts +9 -4
  3. package/dist/node/orderbook.js +54 -119
  4. package/dist/node/orderbook.js.map +1 -1
  5. package/dist/node/proto/silvana/news/v1/news_pb.js +1 -1
  6. package/dist/node/proto/silvana/orderbook/v1/orderbook_pb.d.ts +313 -487
  7. package/dist/node/proto/silvana/orderbook/v1/orderbook_pb.js +115 -138
  8. package/dist/node/proto/silvana/orderbook/v1/orderbook_pb.js.map +1 -1
  9. package/dist/node/proto/silvana/pricing/v1/pricing_pb.js +1 -1
  10. package/dist/node/proto/silvana/settlement/v1/settlement_pb.d.ts +939 -226
  11. package/dist/node/proto/silvana/settlement/v1/settlement_pb.js +452 -26
  12. package/dist/node/proto/silvana/settlement/v1/settlement_pb.js.map +1 -1
  13. package/dist/node/settlement.d.ts +41 -30
  14. package/dist/node/settlement.js +40 -7
  15. package/dist/node/settlement.js.map +1 -1
  16. package/dist/tsconfig.tsbuildinfo +1 -1
  17. package/dist/tsconfig.web.tsbuildinfo +1 -1
  18. package/dist/web/orderbook.d.ts +9 -4
  19. package/dist/web/orderbook.js +54 -119
  20. package/dist/web/orderbook.js.map +1 -1
  21. package/dist/web/proto/silvana/news/v1/news_pb.js +1 -1
  22. package/dist/web/proto/silvana/orderbook/v1/orderbook_pb.d.ts +313 -487
  23. package/dist/web/proto/silvana/orderbook/v1/orderbook_pb.js +115 -138
  24. package/dist/web/proto/silvana/orderbook/v1/orderbook_pb.js.map +1 -1
  25. package/dist/web/proto/silvana/pricing/v1/pricing_pb.js +1 -1
  26. package/dist/web/proto/silvana/settlement/v1/settlement_pb.d.ts +939 -226
  27. package/dist/web/proto/silvana/settlement/v1/settlement_pb.js +452 -26
  28. package/dist/web/proto/silvana/settlement/v1/settlement_pb.js.map +1 -1
  29. package/dist/web/settlement.d.ts +41 -30
  30. package/dist/web/settlement.js +40 -7
  31. package/dist/web/settlement.js.map +1 -1
  32. package/package.json +1 -1
  33. package/src/orderbook.ts +60 -121
  34. package/src/proto/silvana/news/v1/news_pb.ts +1 -1
  35. package/src/proto/silvana/orderbook/v1/orderbook_pb.ts +418 -649
  36. package/src/proto/silvana/pricing/v1/pricing_pb.ts +1 -1
  37. package/src/proto/silvana/settlement/v1/settlement_pb.ts +1161 -313
  38. package/src/settlement.ts +206 -31
@@ -1,4 +1,4 @@
1
- // @generated by protoc-gen-es v2.10.2 with parameter "target=ts,js_import_style=module"
1
+ // @generated by protoc-gen-es v2.11.0 with parameter "target=ts,js_import_style=module"
2
2
  // @generated from file proto/silvana/orderbook/v1/orderbook.proto (package silvana.orderbook.v1, syntax proto3)
3
3
  /* eslint-disable */
4
4
 
@@ -12,67 +12,7 @@ import type { JsonObject, Message } from "@bufbuild/protobuf";
12
12
  * Describes the file proto/silvana/orderbook/v1/orderbook.proto.
13
13
  */
14
14
  export const file_proto_silvana_orderbook_v1_orderbook: GenFile = /*@__PURE__*/
15
- fileDesc("Cipwcm90by9zaWx2YW5hL29yZGVyYm9vay92MS9vcmRlcmJvb2sucHJvdG8SFHNpbHZhbmEub3JkZXJib29rLnYxIhgKB0pXVEF1dGgSDQoFdG9rZW4YASABKAkiQQoMRXh0ZXJuYWxBdXRoEgsKA2p3dBgBIAEoCRIQCghwYXJ0eV9pZBgCIAEoCRISCgpwdWJsaWNfa2V5GAMgASgJIvoCCgpJbnN0cnVtZW50EhUKDWluc3RydW1lbnRfaWQYASABKAkSFwoPaW5zdHJ1bWVudF90eXBlGAIgASgJEgwKBG5hbWUYAyABKAkSDgoGc3ltYm9sGAQgASgJEhgKC2Rlc2NyaXB0aW9uGAUgASgJSACIAQESEwoGaXNzdWVyGAYgASgJSAGIAQESFQoIcmVnaXN0cnkYByABKAlIAogBARIuCghtZXRhZGF0YRgIIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIA4gBARIuCgpjcmVhdGVkX2F0GAkgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GAogASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBITCgtuZXdzX3N5bWJvbBgLIAEoCUIOCgxfZGVzY3JpcHRpb25CCQoHX2lzc3VlckILCglfcmVnaXN0cnlCCwoJX21ldGFkYXRhItwFCgZNYXJrZXQSEQoJbWFya2V0X2lkGAEgASgJEjUKC21hcmtldF90eXBlGAIgASgOMiAuc2lsdmFuYS5vcmRlcmJvb2sudjEuTWFya2V0VHlwZRIXCg9iYXNlX2luc3RydW1lbnQYAyABKAkSGAoQcXVvdGVfaW5zdHJ1bWVudBgEIAEoCRITCgtwYWlyX3N5bWJvbBgFIAEoCRIRCglpc19hY3RpdmUYBiABKAgSFgoObWluX29yZGVyX3NpemUYByABKAkSGwoObWF4X29yZGVyX3NpemUYCCABKAlIAIgBARIRCgl0aWNrX3NpemUYCSABKAkSEQoJbWFrZXJfZmVlGAogASgJEhEKCXRha2VyX2ZlZRgLIAEoCRIuCghtZXRhZGF0YRgMIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIAYgBARIuCgpjcmVhdGVkX2F0GA0gASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GA4gASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIxCgtwcmljZV9mZWVkcxgPIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIAogBARIaCg1jdXJyZW50X3ByaWNlGBAgASgBSAOIAQESFwoKY2hhbmdlXzI0aBgRIAEoAUgEiAEBEhcKCnZvbHVtZV8yNGgYEiABKAFIBYgBARI5ChBwcmljZV91cGRhdGVkX2F0GBMgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgGiAEBQhEKD19tYXhfb3JkZXJfc2l6ZUILCglfbWV0YWRhdGFCDgoMX3ByaWNlX2ZlZWRzQhAKDl9jdXJyZW50X3ByaWNlQg0KC19jaGFuZ2VfMjRoQg0KC192b2x1bWVfMjRoQhMKEV9wcmljZV91cGRhdGVkX2F0IvcGCgVPcmRlchIQCghvcmRlcl9pZBgBIAEoBBIRCgltYXJrZXRfaWQYAiABKAkSMwoKb3JkZXJfdHlwZRgDIAEoDjIfLnNpbHZhbmEub3JkZXJib29rLnYxLk9yZGVyVHlwZRIOCgZ0cmFkZXIYBCABKAkSHQoQdHJhZGVyX29yZGVyX3JlZhgFIAEoCUgAiAEBEhcKD2Jhc2VfaW5zdHJ1bWVudBgGIAEoCRIYChBxdW90ZV9pbnN0cnVtZW50GAcgASgJEg0KBXByaWNlGAggASgJEhAKCHF1YW50aXR5GAkgASgJEhcKD2ZpbGxlZF9xdWFudGl0eRgKIAEoCRIYChBwZW5kaW5nX3F1YW50aXR5GAsgASgJEhoKEnJlbWFpbmluZ19xdWFudGl0eRgMIAEoCRIxCgZzdGF0dXMYDSABKA4yIS5zaWx2YW5hLm9yZGVyYm9vay52MS5PcmRlclN0YXR1cxI4Cg10aW1lX2luX2ZvcmNlGA4gASgOMiEuc2lsdmFuYS5vcmRlcmJvb2sudjEuVGltZUluRm9yY2USMwoKZXhwaXJlc19hdBgPIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAYgBARIPCgd2ZXJzaW9uGBAgASgEEjEKC2NyZWRlbnRpYWxzGBEgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgCiAEBEjIKDHJlcXVpcmVtZW50cxgSIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIA4gBARIuCghtZXRhZGF0YRgTIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIBIgBARIuCgpjcmVhdGVkX2F0GBQgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GBUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBI1CgxjYW5jZWxsZWRfYXQYFiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAWIAQFCEwoRX3RyYWRlcl9vcmRlcl9yZWZCDQoLX2V4cGlyZXNfYXRCDgoMX2NyZWRlbnRpYWxzQg8KDV9yZXF1aXJlbWVudHNCCwoJX21ldGFkYXRhQg8KDV9jYW5jZWxsZWRfYXQiggEKDk9yZGVyYm9va0xldmVsEg0KBXByaWNlGAEgASgJEhYKDnRvdGFsX3F1YW50aXR5GAIgASgJEhMKC29yZGVyX2NvdW50GAMgASgNEjQKEGZpcnN0X29yZGVyX3RpbWUYBCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wItUBCg5PcmRlcmJvb2tEZXB0aBIRCgltYXJrZXRfaWQYASABKAkSEwoLcGFpcl9zeW1ib2wYAiABKAkSMgoEYmlkcxgDIAMoCzIkLnNpbHZhbmEub3JkZXJib29rLnYxLk9yZGVyYm9va0xldmVsEjQKBm9mZmVycxgEIAMoCzIkLnNpbHZhbmEub3JkZXJib29rLnYxLk9yZGVyYm9va0xldmVsEjEKDXNuYXBzaG90X3RpbWUYBSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wIuoSChJTZXR0bGVtZW50UHJvcG9zYWwSEwoLcHJvcG9zYWxfaWQYASABKAkSEQoJbWFya2V0X2lkGAIgASgJEg0KBWJ1eWVyGAMgASgJEg4KBnNlbGxlchgEIAEoCRIVCg1iYXNlX3F1YW50aXR5GAUgASgJEhYKDnF1b3RlX3F1YW50aXR5GAYgASgJEhgKEHNldHRsZW1lbnRfcHJpY2UYByABKAkSNgoGc3RhdHVzGAggASgOMiYuc2lsdmFuYS5vcmRlcmJvb2sudjEuU2V0dGxlbWVudFN0YXR1cxIPCgd2ZXJzaW9uGAkgASgEEj0KF3ByZWNvbmZpcm1hdGlvbl9yZXF1ZXN0GAogASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgAiAEBEkgKH3ByZWNvbmZpcm1hdGlvbl9yZXF1ZXN0X3NlbnRfYXQYCyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAGIAQESOwoVYnV5ZXJfcHJlY29uZmlybWF0aW9uGAwgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgCiAEBEkoKIWJ1eWVyX3ByZWNvbmZpcm1hdGlvbl9yZWNlaXZlZF9hdBgNIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIA4gBARI8ChZzZWxsZXJfcHJlY29uZmlybWF0aW9uGA4gASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgEiAEBEksKInNlbGxlcl9wcmVjb25maXJtYXRpb25fcmVjZWl2ZWRfYXQYDyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAWIAQESHQoQZHZwX3Byb3Bvc2FsX2NpZBgQIAEoCUgGiAEBEiMKFmR2cF9wcm9wb3NhbF91cGRhdGVfaWQYESABKAlIB4gBARIUCgdkdnBfY2lkGBIgASgJSAiIAQESGgoNZHZwX3VwZGF0ZV9pZBgTIAEoCUgJiAEBEiEKFGFsbG9jYXRpb25fYnV5ZXJfY2lkGBUgASgJSAqIAQESJwoaYWxsb2NhdGlvbl9idXllcl91cGRhdGVfaWQYFiABKAlIC4gBARIiChVhbGxvY2F0aW9uX3NlbGxlcl9jaWQYFyABKAlIDIgBARIoChthbGxvY2F0aW9uX3NlbGxlcl91cGRhdGVfaWQYGCABKAlIDYgBARIcCg9zZXR0bGVkX2R2cF9jaWQYGSABKAlIDogBARIhChRzZXR0bGVtZW50X3VwZGF0ZV9pZBgaIAEoCUgPiAEBEikKHHNldHRsZW1lbnRfY29tcGxldGlvbl9vZmZzZXQYGyABKAlIEIgBARIuCgpjcmVhdGVkX2F0GBwgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBI4Cg9wcmVjb25maXJtZWRfYXQYHSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSBGIAQESNwoOZHZwX2NyZWF0ZWRfYXQYHiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSBKIAQESOAoPZHZwX2FjY2VwdGVkX2F0GB8gASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgTiAEBEjUKDGFsbG9jYXRlZF9hdBggIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIFIgBARIzCgpzZXR0bGVkX2F0GCEgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgViAEBEjUKDGNhbmNlbGxlZF9hdBgiIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIFogBARIyCglmYWlsZWRfYXQYIyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSBeIAQESGgoNZXJyb3JfbWVzc2FnZRgkIAEoCUgYiAEBEi4KCG1ldGFkYXRhGCUgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgZiAEBEhEKCWJ1eWVyX2ZlZRgmIAEoCRISCgpzZWxsZXJfZmVlGCcgASgJEhsKDmJ1eWVyX2ZlZV9zZW50GCggASgISBqIAQESHAoPc2VsbGVyX2ZlZV9zZW50GCkgASgISBuIAQESHwoSYnV5ZXJfZmVlX3JlY2VpdmVkGCogASgISByIAQESIAoTc2VsbGVyX2ZlZV9yZWNlaXZlZBgrIAEoCEgdiAEBQhoKGF9wcmVjb25maXJtYXRpb25fcmVxdWVzdEIiCiBfcHJlY29uZmlybWF0aW9uX3JlcXVlc3Rfc2VudF9hdEIYChZfYnV5ZXJfcHJlY29uZmlybWF0aW9uQiQKIl9idXllcl9wcmVjb25maXJtYXRpb25fcmVjZWl2ZWRfYXRCGQoXX3NlbGxlcl9wcmVjb25maXJtYXRpb25CJQojX3NlbGxlcl9wcmVjb25maXJtYXRpb25fcmVjZWl2ZWRfYXRCEwoRX2R2cF9wcm9wb3NhbF9jaWRCGQoXX2R2cF9wcm9wb3NhbF91cGRhdGVfaWRCCgoIX2R2cF9jaWRCEAoOX2R2cF91cGRhdGVfaWRCFwoVX2FsbG9jYXRpb25fYnV5ZXJfY2lkQh0KG19hbGxvY2F0aW9uX2J1eWVyX3VwZGF0ZV9pZEIYChZfYWxsb2NhdGlvbl9zZWxsZXJfY2lkQh4KHF9hbGxvY2F0aW9uX3NlbGxlcl91cGRhdGVfaWRCEgoQX3NldHRsZWRfZHZwX2NpZEIXChVfc2V0dGxlbWVudF91cGRhdGVfaWRCHwodX3NldHRsZW1lbnRfY29tcGxldGlvbl9vZmZzZXRCEgoQX3ByZWNvbmZpcm1lZF9hdEIRCg9fZHZwX2NyZWF0ZWRfYXRCEgoQX2R2cF9hY2NlcHRlZF9hdEIPCg1fYWxsb2NhdGVkX2F0Qg0KC19zZXR0bGVkX2F0Qg8KDV9jYW5jZWxsZWRfYXRCDAoKX2ZhaWxlZF9hdEIQCg5fZXJyb3JfbWVzc2FnZUILCglfbWV0YWRhdGFCEQoPX2J1eWVyX2ZlZV9zZW50QhIKEF9zZWxsZXJfZmVlX3NlbnRCFQoTX2J1eWVyX2ZlZV9yZWNlaXZlZEIWChRfc2VsbGVyX2ZlZV9yZWNlaXZlZCK7AQoKT3JkZXJNYXRjaBIeChZzZXR0bGVtZW50X3Byb3Bvc2FsX2lkGAEgASgJEhQKDGJpZF9vcmRlcl9pZBgCIAEoBBIWCg5vZmZlcl9vcmRlcl9pZBgDIAEoBBIYChBtYXRjaGVkX3F1YW50aXR5GAQgASgJEhUKDW1hdGNoZWRfcHJpY2UYBSABKAkSLgoKY3JlYXRlZF9hdBgGIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAihwMKClNldHRsZW1lbnQSFQoNc2V0dGxlbWVudF9pZBgBIAEoBBITCgtwcm9wb3NhbF9pZBgCIAEoCRIRCgltYXJrZXRfaWQYAyABKAkSDQoFYnV5ZXIYBCABKAkSDgoGc2VsbGVyGAUgASgJEhUKDWJhc2VfcXVhbnRpdHkYBiABKAkSFgoOcXVvdGVfcXVhbnRpdHkYByABKAkSGAoQc2V0dGxlbWVudF9wcmljZRgIIAEoCRIXCg9zZXR0bGVkX2R2cF9jaWQYCSABKAkSHAoUc2V0dGxlbWVudF91cGRhdGVfaWQYCiABKAkSLgoKc2V0dGxlZF9hdBgLIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLgoKY3JlYXRlZF9hdBgMIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLgoIbWV0YWRhdGEYDSABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SACIAQFCCwoJX21ldGFkYXRhIpUCCgpNYXJrZXREYXRhEhEKCW1hcmtldF9pZBgBIAEoCRITCgtwYWlyX3N5bWJvbBgCIAEoCRIVCghiZXN0X2JpZBgDIAEoCUgAiAEBEhcKCmJlc3Rfb2ZmZXIYBCABKAlIAYgBARIXCgpsYXN0X3ByaWNlGAUgASgJSAKIAQESEgoKdm9sdW1lXzI0aBgGIAEoCRISCgp0cmFkZXNfMjRoGAcgASgNEhMKC29wZW5fb3JkZXJzGAggASgNEi4KCnVwZGF0ZWRfYXQYCSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQgsKCV9iZXN0X2JpZEINCgtfYmVzdF9vZmZlckINCgtfbGFzdF9wcmljZSL5AwoQR2V0T3JkZXJzUmVxdWVzdBIrCgRhdXRoGAEgASgLMh0uc2lsdmFuYS5vcmRlcmJvb2sudjEuSldUQXV0aBIWCgltYXJrZXRfaWQYAiABKAlIAIgBARI2CgZzdGF0dXMYAyABKA4yIS5zaWx2YW5hLm9yZGVyYm9vay52MS5PcmRlclN0YXR1c0gBiAEBEjgKCm9yZGVyX3R5cGUYBCABKA4yHy5zaWx2YW5hLm9yZGVyYm9vay52MS5PcmRlclR5cGVIAogBARISCgVsaW1pdBgFIAEoDUgDiAEBEhMKBm9mZnNldBgGIAEoDUgEiAEBEj4KDWV4dGVybmFsX2F1dGgYCiABKAsyIi5zaWx2YW5hLm9yZGVyYm9vay52MS5FeHRlcm5hbEF1dGhIBYgBARIuCiFsaXF1aWRpdHlfcHJvdmlkZXJfYWN0aXZlX3NlY29uZHMYCyABKA1IBogBARIgChhsaXF1aWRpdHlfcHJvdmlkZXJfbmFtZXMYDCADKAlCDAoKX21hcmtldF9pZEIJCgdfc3RhdHVzQg0KC19vcmRlcl90eXBlQggKBl9saW1pdEIJCgdfb2Zmc2V0QhAKDl9leHRlcm5hbF9hdXRoQiQKIl9saXF1aWRpdHlfcHJvdmlkZXJfYWN0aXZlX3NlY29uZHMicQoRR2V0T3JkZXJzUmVzcG9uc2USDwoHc3VjY2VzcxgBIAEoCBIPCgdtZXNzYWdlGAIgASgJEisKBm9yZGVycxgDIAMoCzIbLnNpbHZhbmEub3JkZXJib29rLnYxLk9yZGVyEg0KBXRvdGFsGAQgASgNIsoBChhHZXRPcmRlcmJvb2tEZXB0aFJlcXVlc3QSKwoEYXV0aBgBIAEoCzIdLnNpbHZhbmEub3JkZXJib29rLnYxLkpXVEF1dGgSEQoJbWFya2V0X2lkGAIgASgJEhIKBWRlcHRoGAMgASgNSACIAQESPgoNZXh0ZXJuYWxfYXV0aBgKIAEoCzIiLnNpbHZhbmEub3JkZXJib29rLnYxLkV4dGVybmFsQXV0aEgBiAEBQggKBl9kZXB0aEIQCg5fZXh0ZXJuYWxfYXV0aCJ2ChlHZXRPcmRlcmJvb2tEZXB0aFJlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgSDwoHbWVzc2FnZRgCIAEoCRI3CglvcmRlcmJvb2sYAyABKAsyJC5zaWx2YW5hLm9yZGVyYm9vay52MS5PcmRlcmJvb2tEZXB0aCLKAgodR2V0U2V0dGxlbWVudFByb3Bvc2Fsc1JlcXVlc3QSKwoEYXV0aBgBIAEoCzIdLnNpbHZhbmEub3JkZXJib29rLnYxLkpXVEF1dGgSFgoJbWFya2V0X2lkGAIgASgJSACIAQESOwoGc3RhdHVzGAMgASgOMiYuc2lsdmFuYS5vcmRlcmJvb2sudjEuU2V0dGxlbWVudFN0YXR1c0gBiAEBEhIKBWxpbWl0GAQgASgNSAKIAQESEwoGb2Zmc2V0GAUgASgNSAOIAQESPgoNZXh0ZXJuYWxfYXV0aBgKIAEoCzIiLnNpbHZhbmEub3JkZXJib29rLnYxLkV4dGVybmFsQXV0aEgEiAEBQgwKCl9tYXJrZXRfaWRCCQoHX3N0YXR1c0IICgZfbGltaXRCCQoHX29mZnNldEIQCg5fZXh0ZXJuYWxfYXV0aCKOAQoeR2V0U2V0dGxlbWVudFByb3Bvc2Fsc1Jlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgSDwoHbWVzc2FnZRgCIAEoCRI7Cglwcm9wb3NhbHMYAyADKAsyKC5zaWx2YW5hLm9yZGVyYm9vay52MS5TZXR0bGVtZW50UHJvcG9zYWwSDQoFdG90YWwYBCABKA0isgEKHEdldFNldHRsZW1lbnRQcm9wb3NhbFJlcXVlc3QSKwoEYXV0aBgBIAEoCzIdLnNpbHZhbmEub3JkZXJib29rLnYxLkpXVEF1dGgSEwoLcHJvcG9zYWxfaWQYAiABKAkSPgoNZXh0ZXJuYWxfYXV0aBgKIAEoCzIiLnNpbHZhbmEub3JkZXJib29rLnYxLkV4dGVybmFsQXV0aEgAiAEBQhAKDl9leHRlcm5hbF9hdXRoIo8BCh1HZXRTZXR0bGVtZW50UHJvcG9zYWxSZXNwb25zZRIPCgdzdWNjZXNzGAEgASgIEg8KB21lc3NhZ2UYAiABKAkSPwoIcHJvcG9zYWwYAyABKAsyKC5zaWx2YW5hLm9yZGVyYm9vay52MS5TZXR0bGVtZW50UHJvcG9zYWxIAIgBAUILCglfcHJvcG9zYWwihgIKFUdldEluc3RydW1lbnRzUmVxdWVzdBIrCgRhdXRoGAEgASgLMh0uc2lsdmFuYS5vcmRlcmJvb2sudjEuSldUQXV0aBIcCg9pbnN0cnVtZW50X3R5cGUYAiABKAlIAIgBARISCgVsaW1pdBgDIAEoDUgBiAEBEhMKBm9mZnNldBgEIAEoDUgCiAEBEj4KDWV4dGVybmFsX2F1dGgYCiABKAsyIi5zaWx2YW5hLm9yZGVyYm9vay52MS5FeHRlcm5hbEF1dGhIA4gBAUISChBfaW5zdHJ1bWVudF90eXBlQggKBl9saW1pdEIJCgdfb2Zmc2V0QhAKDl9leHRlcm5hbF9hdXRoIoABChZHZXRJbnN0cnVtZW50c1Jlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgSDwoHbWVzc2FnZRgCIAEoCRI1CgtpbnN0cnVtZW50cxgDIAMoCzIgLnNpbHZhbmEub3JkZXJib29rLnYxLkluc3RydW1lbnQSDQoFdG90YWwYBCABKA0irAMKEUdldE1hcmtldHNSZXF1ZXN0EisKBGF1dGgYASABKAsyHS5zaWx2YW5hLm9yZGVyYm9vay52MS5KV1RBdXRoEjoKC21hcmtldF90eXBlGAIgASgOMiAuc2lsdmFuYS5vcmRlcmJvb2sudjEuTWFya2V0VHlwZUgAiAEBEhwKD2Jhc2VfaW5zdHJ1bWVudBgDIAEoCUgBiAEBEh0KEHF1b3RlX2luc3RydW1lbnQYBCABKAlIAogBARIYCgthY3RpdmVfb25seRgFIAEoCEgDiAEBEhIKBWxpbWl0GAYgASgNSASIAQESEwoGb2Zmc2V0GAcgASgNSAWIAQESPgoNZXh0ZXJuYWxfYXV0aBgKIAEoCzIiLnNpbHZhbmEub3JkZXJib29rLnYxLkV4dGVybmFsQXV0aEgGiAEBQg4KDF9tYXJrZXRfdHlwZUISChBfYmFzZV9pbnN0cnVtZW50QhMKEV9xdW90ZV9pbnN0cnVtZW50Qg4KDF9hY3RpdmVfb25seUIICgZfbGltaXRCCQoHX29mZnNldEIQCg5fZXh0ZXJuYWxfYXV0aCJ0ChJHZXRNYXJrZXRzUmVzcG9uc2USDwoHc3VjY2VzcxgBIAEoCBIPCgdtZXNzYWdlGAIgASgJEi0KB21hcmtldHMYAyADKAsyHC5zaWx2YW5hLm9yZGVyYm9vay52MS5NYXJrZXQSDQoFdG90YWwYBCABKA0i+wIKFkdldE9yZGVySGlzdG9yeVJlcXVlc3QSKwoEYXV0aBgBIAEoCzIdLnNpbHZhbmEub3JkZXJib29rLnYxLkpXVEF1dGgSFgoJbWFya2V0X2lkGAIgASgJSACIAQESMgoJZnJvbV90aW1lGAMgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgBiAEBEjAKB3RvX3RpbWUYBCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAKIAQESEgoFbGltaXQYBSABKA1IA4gBARITCgZvZmZzZXQYBiABKA1IBIgBARI+Cg1leHRlcm5hbF9hdXRoGAogASgLMiIuc2lsdmFuYS5vcmRlcmJvb2sudjEuRXh0ZXJuYWxBdXRoSAWIAQFCDAoKX21hcmtldF9pZEIMCgpfZnJvbV90aW1lQgoKCF90b190aW1lQggKBl9saW1pdEIJCgdfb2Zmc2V0QhAKDl9leHRlcm5hbF9hdXRoIncKF0dldE9yZGVySGlzdG9yeVJlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgSDwoHbWVzc2FnZRgCIAEoCRIrCgZvcmRlcnMYAyADKAsyGy5zaWx2YW5hLm9yZGVyYm9vay52MS5PcmRlchINCgV0b3RhbBgEIAEoDSKpAQoUR2V0TWFya2V0RGF0YVJlcXVlc3QSKwoEYXV0aBgBIAEoCzIdLnNpbHZhbmEub3JkZXJib29rLnYxLkpXVEF1dGgSEgoKbWFya2V0X2lkcxgCIAMoCRI+Cg1leHRlcm5hbF9hdXRoGAogASgLMiIuc2lsdmFuYS5vcmRlcmJvb2sudjEuRXh0ZXJuYWxBdXRoSACIAQFCEAoOX2V4dGVybmFsX2F1dGgicAoVR2V0TWFya2V0RGF0YVJlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgSDwoHbWVzc2FnZRgCIAEoCRI1CgttYXJrZXRfZGF0YRgDIAMoCzIgLnNpbHZhbmEub3JkZXJib29rLnYxLk1hcmtldERhdGEi+gIKFUdldFNldHRsZW1lbnRzUmVxdWVzdBIrCgRhdXRoGAEgASgLMh0uc2lsdmFuYS5vcmRlcmJvb2sudjEuSldUQXV0aBIWCgltYXJrZXRfaWQYAiABKAlIAIgBARIyCglmcm9tX3RpbWUYAyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAGIAQESMAoHdG9fdGltZRgEIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAogBARISCgVsaW1pdBgFIAEoDUgDiAEBEhMKBm9mZnNldBgGIAEoDUgEiAEBEj4KDWV4dGVybmFsX2F1dGgYCiABKAsyIi5zaWx2YW5hLm9yZGVyYm9vay52MS5FeHRlcm5hbEF1dGhIBYgBAUIMCgpfbWFya2V0X2lkQgwKCl9mcm9tX3RpbWVCCgoIX3RvX3RpbWVCCAoGX2xpbWl0QgkKB19vZmZzZXRCEAoOX2V4dGVybmFsX2F1dGgigAEKFkdldFNldHRsZW1lbnRzUmVzcG9uc2USDwoHc3VjY2VzcxgBIAEoCBIPCgdtZXNzYWdlGAIgASgJEjUKC3NldHRsZW1lbnRzGAMgAygLMiAuc2lsdmFuYS5vcmRlcmJvb2sudjEuU2V0dGxlbWVudBINCgV0b3RhbBgEIAEoDSLLAQoZU3Vic2NyaWJlT3JkZXJib29rUmVxdWVzdBIrCgRhdXRoGAEgASgLMh0uc2lsdmFuYS5vcmRlcmJvb2sudjEuSldUQXV0aBIRCgltYXJrZXRfaWQYAiABKAkSEgoFZGVwdGgYAyABKA1IAIgBARI+Cg1leHRlcm5hbF9hdXRoGAogASgLMiIuc2lsdmFuYS5vcmRlcmJvb2sudjEuRXh0ZXJuYWxBdXRoSAGIAQFCCAoGX2RlcHRoQhAKDl9leHRlcm5hbF9hdXRoIocDCg9PcmRlcmJvb2tVcGRhdGUSEQoJbWFya2V0X2lkGAEgASgJEkUKC3VwZGF0ZV90eXBlGAIgASgOMjAuc2lsdmFuYS5vcmRlcmJvb2sudjEuT3JkZXJib29rVXBkYXRlLlVwZGF0ZVR5cGUSOQoLYmlkX3VwZGF0ZXMYAyADKAsyJC5zaWx2YW5hLm9yZGVyYm9vay52MS5PcmRlcmJvb2tMZXZlbBI7Cg1vZmZlcl91cGRhdGVzGAQgAygLMiQuc2lsdmFuYS5vcmRlcmJvb2sudjEuT3JkZXJib29rTGV2ZWwSLQoJdGltZXN0YW1wGAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIXCg9zZXF1ZW5jZV9udW1iZXIYBiABKAQiWgoKVXBkYXRlVHlwZRIbChdVUERBVEVfVFlQRV9VTlNQRUNJRklFRBAAEhgKFFVQREFURV9UWVBFX1NOQVBTSE9UEAESFQoRVVBEQVRFX1RZUEVfREVMVEEQAiK9AQoWU3Vic2NyaWJlT3JkZXJzUmVxdWVzdBIrCgRhdXRoGAEgASgLMh0uc2lsdmFuYS5vcmRlcmJvb2sudjEuSldUQXV0aBIWCgltYXJrZXRfaWQYAiABKAlIAIgBARI+Cg1leHRlcm5hbF9hdXRoGAogASgLMiIuc2lsdmFuYS5vcmRlcmJvb2sudjEuRXh0ZXJuYWxBdXRoSAGIAQFCDAoKX21hcmtldF9pZEIQCg5fZXh0ZXJuYWxfYXV0aCKtAwoLT3JkZXJVcGRhdGUSPwoKZXZlbnRfdHlwZRgBIAEoDjIrLnNpbHZhbmEub3JkZXJib29rLnYxLk9yZGVyVXBkYXRlLkV2ZW50VHlwZRIqCgVvcmRlchgCIAEoCzIbLnNpbHZhbmEub3JkZXJib29rLnYxLk9yZGVyEjQKBW1hdGNoGAMgASgLMiAuc2lsdmFuYS5vcmRlcmJvb2sudjEuT3JkZXJNYXRjaEgAiAEBEi0KCXRpbWVzdGFtcBgEIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAiwQEKCUV2ZW50VHlwZRIaChZFVkVOVF9UWVBFX1VOU1BFQ0lGSUVEEAASFgoSRVZFTlRfVFlQRV9DUkVBVEVEEAESFgoSRVZFTlRfVFlQRV9VUERBVEVEEAISFQoRRVZFTlRfVFlQRV9GSUxMRUQQAxIfChtFVkVOVF9UWVBFX1BBUlRJQUxMWV9GSUxMRUQQBBIYChRFVkVOVF9UWVBFX0NBTkNFTExFRBAFEhYKEkVWRU5UX1RZUEVfRVhQSVJFRBAGQggKBl9tYXRjaCLCAQobU3Vic2NyaWJlU2V0dGxlbWVudHNSZXF1ZXN0EisKBGF1dGgYASABKAsyHS5zaWx2YW5hLm9yZGVyYm9vay52MS5KV1RBdXRoEhYKCW1hcmtldF9pZBgCIAEoCUgAiAEBEj4KDWV4dGVybmFsX2F1dGgYCiABKAsyIi5zaWx2YW5hLm9yZGVyYm9vay52MS5FeHRlcm5hbEF1dGhIAYgBAUIMCgpfbWFya2V0X2lkQhAKDl9leHRlcm5hbF9hdXRoIokEChBTZXR0bGVtZW50VXBkYXRlEkQKCmV2ZW50X3R5cGUYASABKA4yMC5zaWx2YW5hLm9yZGVyYm9vay52MS5TZXR0bGVtZW50VXBkYXRlLkV2ZW50VHlwZRI6Cghwcm9wb3NhbBgCIAEoCzIoLnNpbHZhbmEub3JkZXJib29rLnYxLlNldHRsZW1lbnRQcm9wb3NhbBItCgl0aW1lc3RhbXAYAyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wIsMCCglFdmVudFR5cGUSGgoWRVZFTlRfVFlQRV9VTlNQRUNJRklFRBAAEh8KG0VWRU5UX1RZUEVfUFJPUE9TQUxfQ1JFQVRFRBABEigKJEVWRU5UX1RZUEVfUFJFQ09ORklSTUFUSU9OX1JFUVVFU1RFRBACEhsKF0VWRU5UX1RZUEVfUFJFQ09ORklSTUVEEAMSGgoWRVZFTlRfVFlQRV9EVlBfQ1JFQVRFRBAEEhsKF0VWRU5UX1RZUEVfRFZQX0FDQ0VQVEVEEAUSGAoURVZFTlRfVFlQRV9BTExPQ0FURUQQBhIWChJFVkVOVF9UWVBFX1NFVFRMRUQQBxIVChFFVkVOVF9UWVBFX0ZBSUxFRBAIEhgKFEVWRU5UX1RZUEVfQ0FOQ0VMTEVEEAkSFgoSRVZFTlRfVFlQRV9VUERBVEVEEAoi8wQKElN1Ym1pdE9yZGVyUmVxdWVzdBIrCgRhdXRoGAEgASgLMh0uc2lsdmFuYS5vcmRlcmJvb2sudjEuSldUQXV0aBIRCgltYXJrZXRfaWQYAiABKAkSMwoKb3JkZXJfdHlwZRgDIAEoDjIfLnNpbHZhbmEub3JkZXJib29rLnYxLk9yZGVyVHlwZRINCgVwcmljZRgEIAEoCRIQCghxdWFudGl0eRgFIAEoCRI4Cg10aW1lX2luX2ZvcmNlGAYgASgOMiEuc2lsdmFuYS5vcmRlcmJvb2sudjEuVGltZUluRm9yY2USMwoKZXhwaXJlc19hdBgHIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAIgBARIdChB0cmFkZXJfb3JkZXJfcmVmGAggASgJSAGIAQESMQoLY3JlZGVudGlhbHMYCSABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SAKIAQESMgoMcmVxdWlyZW1lbnRzGAogASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgDiAEBEi4KCG1ldGFkYXRhGAsgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgEiAEBEj4KDWV4dGVybmFsX2F1dGgYDyABKAsyIi5zaWx2YW5hLm9yZGVyYm9vay52MS5FeHRlcm5hbEF1dGhIBYgBAUINCgtfZXhwaXJlc19hdEITChFfdHJhZGVyX29yZGVyX3JlZkIOCgxfY3JlZGVudGlhbHNCDwoNX3JlcXVpcmVtZW50c0ILCglfbWV0YWRhdGFCEAoOX2V4dGVybmFsX2F1dGgicgoTU3VibWl0T3JkZXJSZXNwb25zZRIPCgdzdWNjZXNzGAEgASgIEg8KB21lc3NhZ2UYAiABKAkSLwoFb3JkZXIYAyABKAsyGy5zaWx2YW5hLm9yZGVyYm9vay52MS5PcmRlckgAiAEBQggKBl9vcmRlciKlAQoSQ2FuY2VsT3JkZXJSZXF1ZXN0EisKBGF1dGgYASABKAsyHS5zaWx2YW5hLm9yZGVyYm9vay52MS5KV1RBdXRoEhAKCG9yZGVyX2lkGAIgASgEEj4KDWV4dGVybmFsX2F1dGgYCiABKAsyIi5zaWx2YW5hLm9yZGVyYm9vay52MS5FeHRlcm5hbEF1dGhIAIgBAUIQCg5fZXh0ZXJuYWxfYXV0aCJyChNDYW5jZWxPcmRlclJlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgSDwoHbWVzc2FnZRgCIAEoCRIvCgVvcmRlchgDIAEoCzIbLnNpbHZhbmEub3JkZXJib29rLnYxLk9yZGVySACIAQFCCAoGX29yZGVyIooGChJDcmVhdGVQYXJ0eVJlcXVlc3QSKwoEYXV0aBgBIAEoCzIdLnNpbHZhbmEub3JkZXJib29rLnYxLkpXVEF1dGgSEAoIcGFydHlfaWQYAiABKAkSEgoKcGFydHlfbmFtZRgDIAEoCRISCgpwYXJ0eV90eXBlGAQgASgJEh0KEHVzZXJfc2VydmljZV9jaWQYBSABKAlIAIgBARIgChNvcGVyYXRvcl9jb25maWdfY2lkGAYgASgJSAGIAQESLgoIbWV0YWRhdGEYByABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SAKIAQESJQoYdXNlcl9zZXJ2aWNlX3JlcXVlc3RfY2lkGAggASgJSAOIAQESKgoJdXNlcl9kYXRhGAkgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBISCgVlbWFpbBgKIAEoCUgEiAEBEhcKCnB1YmxpY19rZXkYCyABKAlIBYgBARIYCgtpbnZpdGVfY29kZRgMIAEoCUgGiAEBEhMKBnNvdXJjZRgNIAEoCUgHiAEBEj4KDWV4dGVybmFsX2F1dGgYDyABKAsyIi5zaWx2YW5hLm9yZGVyYm9vay52MS5FeHRlcm5hbEF1dGhICIgBARIkChdsaXF1aWRpdHlfcHJvdmlkZXJfbmFtZRgQIAEoCUgJiAEBEisKHmxpcXVpZGl0eV9wcm92aWRlcl9kZXNjcmlwdGlvbhgRIAEoCUgKiAEBQhMKEV91c2VyX3NlcnZpY2VfY2lkQhYKFF9vcGVyYXRvcl9jb25maWdfY2lkQgsKCV9tZXRhZGF0YUIbChlfdXNlcl9zZXJ2aWNlX3JlcXVlc3RfY2lkQggKBl9lbWFpbEINCgtfcHVibGljX2tleUIOCgxfaW52aXRlX2NvZGVCCQoHX3NvdXJjZUIQCg5fZXh0ZXJuYWxfYXV0aEIaChhfbGlxdWlkaXR5X3Byb3ZpZGVyX25hbWVCIQofX2xpcXVpZGl0eV9wcm92aWRlcl9kZXNjcmlwdGlvbiJjChNDcmVhdGVQYXJ0eVJlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgSDwoHbWVzc2FnZRgCIAEoCRIqCgVwYXJ0eRgDIAEoCzIbLnNpbHZhbmEub3JkZXJib29rLnYxLlBhcnR5ItMFChJVcGRhdGVQYXJ0eVJlcXVlc3QSKwoEYXV0aBgBIAEoCzIdLnNpbHZhbmEub3JkZXJib29rLnYxLkpXVEF1dGgSEAoIcGFydHlfaWQYAiABKAkSGAoQZXhwZWN0ZWRfdmVyc2lvbhgDIAEoBBIXCgpwYXJ0eV9uYW1lGAQgASgJSACIAQESHQoQdXNlcl9zZXJ2aWNlX2NpZBgFIAEoCUgBiAEBEiAKE29wZXJhdG9yX2NvbmZpZ19jaWQYBiABKAlIAogBARIlChh1c2VyX3NlcnZpY2VfcmVxdWVzdF9jaWQYByABKAlIA4gBARIvCgl1c2VyX2RhdGEYCCABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SASIAQESLgoIbWV0YWRhdGEYCSABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SAWIAQESGgoNY2hhbmdlX3JlYXNvbhgKIAEoCUgGiAEBEhIKBWVtYWlsGAsgASgJSAeIAQESFwoKcHVibGljX2tleRgMIAEoCUgIiAEBEhgKC2ludml0ZV9jb2RlGA0gASgJSAmIAQESEwoGc291cmNlGA4gASgJSAqIAQESPgoNZXh0ZXJuYWxfYXV0aBgPIAEoCzIiLnNpbHZhbmEub3JkZXJib29rLnYxLkV4dGVybmFsQXV0aEgLiAEBQg0KC19wYXJ0eV9uYW1lQhMKEV91c2VyX3NlcnZpY2VfY2lkQhYKFF9vcGVyYXRvcl9jb25maWdfY2lkQhsKGV91c2VyX3NlcnZpY2VfcmVxdWVzdF9jaWRCDAoKX3VzZXJfZGF0YUILCglfbWV0YWRhdGFCEAoOX2NoYW5nZV9yZWFzb25CCAoGX2VtYWlsQg0KC19wdWJsaWNfa2V5Qg4KDF9pbnZpdGVfY29kZUIJCgdfc291cmNlQhAKDl9leHRlcm5hbF9hdXRoImMKE1VwZGF0ZVBhcnR5UmVzcG9uc2USDwoHc3VjY2VzcxgBIAEoCBIPCgdtZXNzYWdlGAIgASgJEioKBXBhcnR5GAMgASgLMhsuc2lsdmFuYS5vcmRlcmJvb2sudjEuUGFydHki2gEKFkRlYWN0aXZhdGVQYXJ0eVJlcXVlc3QSKwoEYXV0aBgBIAEoCzIdLnNpbHZhbmEub3JkZXJib29rLnYxLkpXVEF1dGgSEAoIcGFydHlfaWQYAiABKAkSGAoQZXhwZWN0ZWRfdmVyc2lvbhgDIAEoBBIVCg1jaGFuZ2VfcmVhc29uGAQgASgJEj4KDWV4dGVybmFsX2F1dGgYCiABKAsyIi5zaWx2YW5hLm9yZGVyYm9vay52MS5FeHRlcm5hbEF1dGhIAIgBAUIQCg5fZXh0ZXJuYWxfYXV0aCJnChdEZWFjdGl2YXRlUGFydHlSZXNwb25zZRIPCgdzdWNjZXNzGAEgASgIEg8KB21lc3NhZ2UYAiABKAkSKgoFcGFydHkYAyABKAsyGy5zaWx2YW5hLm9yZGVyYm9vay52MS5QYXJ0eSLnAQoWR2V0UGFydHlIaXN0b3J5UmVxdWVzdBIrCgRhdXRoGAEgASgLMh0uc2lsdmFuYS5vcmRlcmJvb2sudjEuSldUQXV0aBIQCghwYXJ0eV9pZBgCIAEoCRISCgVsaW1pdBgDIAEoDUgAiAEBEhMKBm9mZnNldBgEIAEoDUgBiAEBEj4KDWV4dGVybmFsX2F1dGgYCiABKAsyIi5zaWx2YW5hLm9yZGVyYm9vay52MS5FeHRlcm5hbEF1dGhIAogBAUIICgZfbGltaXRCCQoHX29mZnNldEIQCg5fZXh0ZXJuYWxfYXV0aCKBAgoRUGFydHlIaXN0b3J5RW50cnkSEgoKaGlzdG9yeV9pZBgBIAEoBBIQCghwYXJ0eV9pZBgCIAEoCRIOCgZhY3Rpb24YAyABKAkSEgoKY2hhbmdlZF9ieRgEIAEoCRIaCg1jaGFuZ2VfcmVhc29uGAUgASgJSACIAQESDwoHdmVyc2lvbhgGIAEoBBIzCg5wYXJ0eV9zbmFwc2hvdBgHIAEoCzIbLnNpbHZhbmEub3JkZXJib29rLnYxLlBhcnR5Ei4KCmNyZWF0ZWRfYXQYCCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQhAKDl9jaGFuZ2VfcmVhc29uIoQBChdHZXRQYXJ0eUhpc3RvcnlSZXNwb25zZRIPCgdzdWNjZXNzGAEgASgIEg8KB21lc3NhZ2UYAiABKAkSOAoHaGlzdG9yeRgDIAMoCzInLnNpbHZhbmEub3JkZXJib29rLnYxLlBhcnR5SGlzdG9yeUVudHJ5Eg0KBXRvdGFsGAQgASgNIqIBCg9HZXRQYXJ0eVJlcXVlc3QSKwoEYXV0aBgBIAEoCzIdLnNpbHZhbmEub3JkZXJib29rLnYxLkpXVEF1dGgSEAoIcGFydHlfaWQYAiABKAkSPgoNZXh0ZXJuYWxfYXV0aBgKIAEoCzIiLnNpbHZhbmEub3JkZXJib29rLnYxLkV4dGVybmFsQXV0aEgAiAEBQhAKDl9leHRlcm5hbF9hdXRoImAKEEdldFBhcnR5UmVzcG9uc2USDwoHc3VjY2VzcxgBIAEoCBIPCgdtZXNzYWdlGAIgASgJEioKBXBhcnR5GAMgASgLMhsuc2lsdmFuYS5vcmRlcmJvb2sudjEuUGFydHkiogIKEUdldFBhcnRpZXNSZXF1ZXN0EisKBGF1dGgYASABKAsyHS5zaWx2YW5hLm9yZGVyYm9vay52MS5KV1RBdXRoEhcKCnBhcnR5X3R5cGUYAiABKAlIAIgBARIYCgthY3RpdmVfb25seRgDIAEoCEgBiAEBEhIKBWxpbWl0GAQgASgNSAKIAQESEwoGb2Zmc2V0GAUgASgNSAOIAQESPgoNZXh0ZXJuYWxfYXV0aBgKIAEoCzIiLnNpbHZhbmEub3JkZXJib29rLnYxLkV4dGVybmFsQXV0aEgEiAEBQg0KC19wYXJ0eV90eXBlQg4KDF9hY3RpdmVfb25seUIICgZfbGltaXRCCQoHX29mZnNldEIQCg5fZXh0ZXJuYWxfYXV0aCJzChJHZXRQYXJ0aWVzUmVzcG9uc2USDwoHc3VjY2VzcxgBIAEoCBIPCgdtZXNzYWdlGAIgASgJEiwKB3BhcnRpZXMYAyADKAsyGy5zaWx2YW5hLm9yZGVyYm9vay52MS5QYXJ0eRINCgV0b3RhbBgEIAEoDSLgBAoFUGFydHkSEAoIcGFydHlfaWQYASABKAkSEgoKcGFydHlfbmFtZRgCIAEoCRISCgpwYXJ0eV90eXBlGAMgASgJEh0KEHVzZXJfc2VydmljZV9jaWQYBCABKAlIAIgBARIgChNvcGVyYXRvcl9jb25maWdfY2lkGAUgASgJSAGIAQESEQoJaXNfYWN0aXZlGAYgASgIEi4KCG1ldGFkYXRhGAcgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgCiAEBEi4KCmNyZWF0ZWRfYXQYCCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi4KCnVwZGF0ZWRfYXQYCSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEiUKGHVzZXJfc2VydmljZV9yZXF1ZXN0X2NpZBgKIAEoCUgDiAEBEioKCXVzZXJfZGF0YRgLIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSDwoHdmVyc2lvbhgMIAEoBBISCgVlbWFpbBgNIAEoCUgEiAEBEhcKCnB1YmxpY19rZXkYDiABKAlIBYgBARIYCgtpbnZpdGVfY29kZRgPIAEoCUgGiAEBEg4KBnNvdXJjZRgQIAEoCUITChFfdXNlcl9zZXJ2aWNlX2NpZEIWChRfb3BlcmF0b3JfY29uZmlnX2NpZEILCglfbWV0YWRhdGFCGwoZX3VzZXJfc2VydmljZV9yZXF1ZXN0X2NpZEIICgZfZW1haWxCDQoLX3B1YmxpY19rZXlCDgoMX2ludml0ZV9jb2RlIo0CChFMaXF1aWRpdHlQcm92aWRlchIMCgRuYW1lGAEgASgJEhAKCHBhcnR5X2lkGAIgASgJEhgKC2Rlc2NyaXB0aW9uGAMgASgJSACIAQESOQoQbGFzdF9hY3RpdmVfdGltZRgEIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAYgBARIuCgpjcmVhdGVkX2F0GAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GAYgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEIOCgxfZGVzY3JpcHRpb25CEwoRX2xhc3RfYWN0aXZlX3RpbWUiiwIKHEdldExpcXVpZGl0eVByb3ZpZGVyc1JlcXVlc3QSKwoEYXV0aBgBIAEoCzIdLnNpbHZhbmEub3JkZXJib29rLnYxLkpXVEF1dGgSGwoOYWN0aXZlX3NlY29uZHMYAiABKA1IAIgBARISCgVsaW1pdBgDIAEoDUgBiAEBEhMKBm9mZnNldBgEIAEoDUgCiAEBEj4KDWV4dGVybmFsX2F1dGgYCiABKAsyIi5zaWx2YW5hLm9yZGVyYm9vay52MS5FeHRlcm5hbEF1dGhIA4gBAUIRCg9fYWN0aXZlX3NlY29uZHNCCAoGX2xpbWl0QgkKB19vZmZzZXRCEAoOX2V4dGVybmFsX2F1dGgilgEKHUdldExpcXVpZGl0eVByb3ZpZGVyc1Jlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgSDwoHbWVzc2FnZRgCIAEoCRJEChNsaXF1aWRpdHlfcHJvdmlkZXJzGAMgAygLMicuc2lsdmFuYS5vcmRlcmJvb2sudjEuTGlxdWlkaXR5UHJvdmlkZXISDQoFdG90YWwYBCABKA0iiAMKEFdhaXRpbmdMaXN0RW50cnkSCgoCaWQYASABKAQSFQoIcGFydHlfaWQYAiABKAlIAIgBARIqCgl1c2VyX2RhdGEYAyABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Eg4KBnNvdXJjZRgEIAEoCRISCgVlbWFpbBgFIAEoCUgBiAEBEhcKCnB1YmxpY19rZXkYBiABKAlIAogBARIUCgxpc19vbmJvYXJkZWQYByABKAgSDwoHdmVyc2lvbhgIIAEoBBIuCghtZXRhZGF0YRgJIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIA4gBARIuCgpjcmVhdGVkX2F0GAogASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GAsgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEILCglfcGFydHlfaWRCCAoGX2VtYWlsQg0KC19wdWJsaWNfa2V5QgsKCV9tZXRhZGF0YSKIAgoaQWRkV2FpdGluZ0xpc3RFbnRyeVJlcXVlc3QSKwoEYXV0aBgBIAEoCzIdLnNpbHZhbmEub3JkZXJib29rLnYxLkpXVEF1dGgSKgoJdXNlcl9kYXRhGAIgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBIOCgZzb3VyY2UYAyABKAkSEgoFZW1haWwYBCABKAlIAIgBARIXCgpwdWJsaWNfa2V5GAUgASgJSAGIAQESLgoIbWV0YWRhdGEYBiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SAKIAQFCCAoGX2VtYWlsQg0KC19wdWJsaWNfa2V5QgsKCV9tZXRhZGF0YSJLChtBZGRXYWl0aW5nTGlzdEVudHJ5UmVzcG9uc2USDwoHc3VjY2VzcxgBIAEoCBIPCgdtZXNzYWdlGAIgASgJEgoKAmlkGAMgASgEIrEDCgVSb3VuZBIUCgxyb3VuZF9udW1iZXIYASABKAQSNAonaXNzdWFuY2VfcGVyX2ZlYXR1cmVkX2FwcF9yZXdhcmRfY291cG9uGAIgASgJSACIAQESNgopaXNzdWFuY2VfcGVyX3VuZmVhdHVyZWRfYXBwX3Jld2FyZF9jb3Vwb24YAyABKAlIAYgBARIYCgtjY191c2RfcmF0ZRgEIAEoCUgCiAEBEiQKF3RyYWZmaWNfY29zdF91c2RfcGVyX21iGAUgASgJSAOIAQESLgoKY3JlYXRlZF9hdBgGIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLgoKdXBkYXRlZF9hdBgHIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBCKgooX2lzc3VhbmNlX3Blcl9mZWF0dXJlZF9hcHBfcmV3YXJkX2NvdXBvbkIsCipfaXNzdWFuY2VfcGVyX3VuZmVhdHVyZWRfYXBwX3Jld2FyZF9jb3Vwb25CDgoMX2NjX3VzZF9yYXRlQhoKGF90cmFmZmljX2Nvc3RfdXNkX3Blcl9tYiLvAgoGSW52aXRlEhMKC2ludml0ZV9jb2RlGAEgASgJEg8KB2NoYW5uZWwYAiABKAkSFAoHcmV3YXJkcxgDIAEoCUgAiAEBEi4KCG1ldGFkYXRhGAQgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgBiAEBEjIKBnN0YXR1cxgFIAEoDjIiLnNpbHZhbmEub3JkZXJib29rLnYxLkludml0ZVN0YXR1cxISCgpjb3VudF91c2VkGAYgASgNEhYKCW1heF9jb3VudBgHIAEoDUgCiAEBEhIKCmNyZWF0ZWRfYnkYCCABKAkSLgoKY3JlYXRlZF9hdBgJIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLgoKdXBkYXRlZF9hdBgKIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBCCgoIX3Jld2FyZHNCCwoJX21ldGFkYXRhQgwKCl9tYXhfY291bnQiJwoQR2V0SW52aXRlUmVxdWVzdBITCgtpbnZpdGVfY29kZRgBIAEoCSJgChFHZXRJbnZpdGVSZXNwb25zZRINCgVmb3VuZBgBIAEoCBIxCgZpbnZpdGUYAiABKAsyHC5zaWx2YW5hLm9yZGVyYm9vay52MS5JbnZpdGVIAIgBAUIJCgdfaW52aXRlIksKEFVzZUludml0ZVJlcXVlc3QSEwoLaW52aXRlX2NvZGUYASABKAkSFQoIcGFydHlfaWQYAiABKAlIAIgBAUILCglfcGFydHlfaWQicwoRVXNlSW52aXRlUmVzcG9uc2USDwoHc3VjY2VzcxgBIAEoCBIPCgdtZXNzYWdlGAIgASgJEjEKBmludml0ZRgDIAEoCzIcLnNpbHZhbmEub3JkZXJib29rLnYxLkludml0ZUgAiAEBQgkKB19pbnZpdGUipgMKF0NyZWF0ZUluc3RydW1lbnRSZXF1ZXN0EisKBGF1dGgYASABKAsyHS5zaWx2YW5hLm9yZGVyYm9vay52MS5KV1RBdXRoEhUKDWluc3RydW1lbnRfaWQYAiABKAkSFwoPaW5zdHJ1bWVudF90eXBlGAMgASgJEgwKBG5hbWUYBCABKAkSDgoGc3ltYm9sGAUgASgJEhgKC2Rlc2NyaXB0aW9uGAYgASgJSACIAQESEwoGaXNzdWVyGAcgASgJSAGIAQESFQoIcmVnaXN0cnkYCCABKAlIAogBARIuCghtZXRhZGF0YRgJIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIA4gBARITCgtuZXdzX3N5bWJvbBgKIAEoCRI+Cg1leHRlcm5hbF9hdXRoGA8gASgLMiIuc2lsdmFuYS5vcmRlcmJvb2sudjEuRXh0ZXJuYWxBdXRoSASIAQFCDgoMX2Rlc2NyaXB0aW9uQgkKB19pc3N1ZXJCCwoJX3JlZ2lzdHJ5QgsKCV9tZXRhZGF0YUIQCg5fZXh0ZXJuYWxfYXV0aCJyChhDcmVhdGVJbnN0cnVtZW50UmVzcG9uc2USDwoHc3VjY2VzcxgBIAEoCBIPCgdtZXNzYWdlGAIgASgJEjQKCmluc3RydW1lbnQYAyABKAsyIC5zaWx2YW5hLm9yZGVyYm9vay52MS5JbnN0cnVtZW50IsUEChNDcmVhdGVNYXJrZXRSZXF1ZXN0EisKBGF1dGgYASABKAsyHS5zaWx2YW5hLm9yZGVyYm9vay52MS5KV1RBdXRoEhEKCW1hcmtldF9pZBgCIAEoCRI1CgttYXJrZXRfdHlwZRgDIAEoDjIgLnNpbHZhbmEub3JkZXJib29rLnYxLk1hcmtldFR5cGUSHAoPYmFzZV9pbnN0cnVtZW50GAQgASgJSACIAQESHQoQcXVvdGVfaW5zdHJ1bWVudBgFIAEoCUgBiAEBEhYKDm1pbl9vcmRlcl9zaXplGAYgASgJEhsKDm1heF9vcmRlcl9zaXplGAcgASgJSAKIAQESEQoJdGlja19zaXplGAggASgJEhEKCW1ha2VyX2ZlZRgJIAEoCRIRCgl0YWtlcl9mZWUYCiABKAkSLgoIbWV0YWRhdGEYCyABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SAOIAQESMQoLcHJpY2VfZmVlZHMYDCABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SASIAQESPgoNZXh0ZXJuYWxfYXV0aBgPIAEoCzIiLnNpbHZhbmEub3JkZXJib29rLnYxLkV4dGVybmFsQXV0aEgFiAEBQhIKEF9iYXNlX2luc3RydW1lbnRCEwoRX3F1b3RlX2luc3RydW1lbnRCEQoPX21heF9vcmRlcl9zaXplQgsKCV9tZXRhZGF0YUIOCgxfcHJpY2VfZmVlZHNCEAoOX2V4dGVybmFsX2F1dGgiZgoUQ3JlYXRlTWFya2V0UmVzcG9uc2USDwoHc3VjY2VzcxgBIAEoCBIPCgdtZXNzYWdlGAIgASgJEiwKBm1hcmtldBgDIAEoCzIcLnNpbHZhbmEub3JkZXJib29rLnYxLk1hcmtldCLfAQodVXBkYXRlTWFya2V0UHJpY2VGZWVkc1JlcXVlc3QSKwoEYXV0aBgBIAEoCzIdLnNpbHZhbmEub3JkZXJib29rLnYxLkpXVEF1dGgSEQoJbWFya2V0X2lkGAIgASgJEiwKC3ByaWNlX2ZlZWRzGAMgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdBI+Cg1leHRlcm5hbF9hdXRoGAogASgLMiIuc2lsdmFuYS5vcmRlcmJvb2sudjEuRXh0ZXJuYWxBdXRoSACIAQFCEAoOX2V4dGVybmFsX2F1dGgicAoeVXBkYXRlTWFya2V0UHJpY2VGZWVkc1Jlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgSDwoHbWVzc2FnZRgCIAEoCRIsCgZtYXJrZXQYAyABKAsyHC5zaWx2YW5hLm9yZGVyYm9vay52MS5NYXJrZXQqUQoJT3JkZXJUeXBlEhoKFk9SREVSX1RZUEVfVU5TUEVDSUZJRUQQABISCg5PUkRFUl9UWVBFX0JJRBABEhQKEE9SREVSX1RZUEVfT0ZGRVIQAiqtAQoLT3JkZXJTdGF0dXMSHAoYT1JERVJfU1RBVFVTX1VOU1BFQ0lGSUVEEAASFwoTT1JERVJfU1RBVFVTX0FDVElWRRABEhgKFE9SREVSX1NUQVRVU19QQVJUSUFMEAISFwoTT1JERVJfU1RBVFVTX0ZJTExFRBADEhoKFk9SREVSX1NUQVRVU19DQU5DRUxMRUQQBBIYChRPUkRFUl9TVEFUVVNfRVhQSVJFRBAFKogBCgtUaW1lSW5Gb3JjZRIdChlUSU1FX0lOX0ZPUkNFX1VOU1BFQ0lGSUVEEAASFQoRVElNRV9JTl9GT1JDRV9HVEMQARIVChFUSU1FX0lOX0ZPUkNFX0lPQxACEhUKEVRJTUVfSU5fRk9SQ0VfRk9LEAMSFQoRVElNRV9JTl9GT1JDRV9HVEQQBCraAgoQU2V0dGxlbWVudFN0YXR1cxIhCh1TRVRUTEVNRU5UX1NUQVRVU19VTlNQRUNJRklFRBAAEh0KGVNFVFRMRU1FTlRfU1RBVFVTX0NSRUFURUQQARIiCh5TRVRUTEVNRU5UX1NUQVRVU19QUkVDT05GSVJNRUQQAhIpCiVTRVRUTEVNRU5UX1NUQVRVU19EVlBfUkVRVUVTVF9DUkVBVEVEEAMSKgomU0VUVExFTUVOVF9TVEFUVVNfRFZQX1JFUVVFU1RfQUNDRVBURUQQBBIrCidTRVRUTEVNRU5UX1NUQVRVU19JTlNUUlVNRU5UU19BTExPQ0FURUQQBRIdChlTRVRUTEVNRU5UX1NUQVRVU19TRVRUTEVEEAYSHwobU0VUVExFTUVOVF9TVEFUVVNfQ0FOQ0VMTEVEEAcSHAoYU0VUVExFTUVOVF9TVEFUVVNfRkFJTEVEEAgqdgoKTWFya2V0VHlwZRIbChdNQVJLRVRfVFlQRV9VTlNQRUNJRklFRBAAEhcKE01BUktFVF9UWVBFX0dFTkVSQUwQARIdChlNQVJLRVRfVFlQRV9JTlNUSVRVVElPTkFMEAISEwoPTUFSS0VUX1RZUEVfT1RDEAMqlgEKDEludml0ZVN0YXR1cxIdChlJTlZJVEVfU1RBVFVTX1VOU1BFQ0lGSUVEEAASFwoTSU5WSVRFX1NUQVRVU19WQUxJRBABEhkKFUlOVklURV9TVEFUVVNfRVhQSVJFRBACEhYKEklOVklURV9TVEFUVVNfVVNFRBADEhsKF0lOVklURV9TVEFUVVNfQ0FOQ0VMTEVEEAQylhcKEE9yZGVyYm9va1NlcnZpY2USXAoJR2V0T3JkZXJzEiYuc2lsdmFuYS5vcmRlcmJvb2sudjEuR2V0T3JkZXJzUmVxdWVzdBonLnNpbHZhbmEub3JkZXJib29rLnYxLkdldE9yZGVyc1Jlc3BvbnNlEnQKEUdldE9yZGVyYm9va0RlcHRoEi4uc2lsdmFuYS5vcmRlcmJvb2sudjEuR2V0T3JkZXJib29rRGVwdGhSZXF1ZXN0Gi8uc2lsdmFuYS5vcmRlcmJvb2sudjEuR2V0T3JkZXJib29rRGVwdGhSZXNwb25zZRKDAQoWR2V0U2V0dGxlbWVudFByb3Bvc2FscxIzLnNpbHZhbmEub3JkZXJib29rLnYxLkdldFNldHRsZW1lbnRQcm9wb3NhbHNSZXF1ZXN0GjQuc2lsdmFuYS5vcmRlcmJvb2sudjEuR2V0U2V0dGxlbWVudFByb3Bvc2Fsc1Jlc3BvbnNlEoABChVHZXRTZXR0bGVtZW50UHJvcG9zYWwSMi5zaWx2YW5hLm9yZGVyYm9vay52MS5HZXRTZXR0bGVtZW50UHJvcG9zYWxSZXF1ZXN0GjMuc2lsdmFuYS5vcmRlcmJvb2sudjEuR2V0U2V0dGxlbWVudFByb3Bvc2FsUmVzcG9uc2USawoOR2V0SW5zdHJ1bWVudHMSKy5zaWx2YW5hLm9yZGVyYm9vay52MS5HZXRJbnN0cnVtZW50c1JlcXVlc3QaLC5zaWx2YW5hLm9yZGVyYm9vay52MS5HZXRJbnN0cnVtZW50c1Jlc3BvbnNlEl8KCkdldE1hcmtldHMSJy5zaWx2YW5hLm9yZGVyYm9vay52MS5HZXRNYXJrZXRzUmVxdWVzdBooLnNpbHZhbmEub3JkZXJib29rLnYxLkdldE1hcmtldHNSZXNwb25zZRJuCg9HZXRPcmRlckhpc3RvcnkSLC5zaWx2YW5hLm9yZGVyYm9vay52MS5HZXRPcmRlckhpc3RvcnlSZXF1ZXN0Gi0uc2lsdmFuYS5vcmRlcmJvb2sudjEuR2V0T3JkZXJIaXN0b3J5UmVzcG9uc2USaAoNR2V0TWFya2V0RGF0YRIqLnNpbHZhbmEub3JkZXJib29rLnYxLkdldE1hcmtldERhdGFSZXF1ZXN0Gisuc2lsdmFuYS5vcmRlcmJvb2sudjEuR2V0TWFya2V0RGF0YVJlc3BvbnNlEmsKDkdldFNldHRsZW1lbnRzEisuc2lsdmFuYS5vcmRlcmJvb2sudjEuR2V0U2V0dGxlbWVudHNSZXF1ZXN0Giwuc2lsdmFuYS5vcmRlcmJvb2sudjEuR2V0U2V0dGxlbWVudHNSZXNwb25zZRJiCgtTdWJtaXRPcmRlchIoLnNpbHZhbmEub3JkZXJib29rLnYxLlN1Ym1pdE9yZGVyUmVxdWVzdBopLnNpbHZhbmEub3JkZXJib29rLnYxLlN1Ym1pdE9yZGVyUmVzcG9uc2USYgoLQ2FuY2VsT3JkZXISKC5zaWx2YW5hLm9yZGVyYm9vay52MS5DYW5jZWxPcmRlclJlcXVlc3QaKS5zaWx2YW5hLm9yZGVyYm9vay52MS5DYW5jZWxPcmRlclJlc3BvbnNlElkKCEdldFBhcnR5EiUuc2lsdmFuYS5vcmRlcmJvb2sudjEuR2V0UGFydHlSZXF1ZXN0GiYuc2lsdmFuYS5vcmRlcmJvb2sudjEuR2V0UGFydHlSZXNwb25zZRJfCgpHZXRQYXJ0aWVzEicuc2lsdmFuYS5vcmRlcmJvb2sudjEuR2V0UGFydGllc1JlcXVlc3QaKC5zaWx2YW5hLm9yZGVyYm9vay52MS5HZXRQYXJ0aWVzUmVzcG9uc2USgAEKFUdldExpcXVpZGl0eVByb3ZpZGVycxIyLnNpbHZhbmEub3JkZXJib29rLnYxLkdldExpcXVpZGl0eVByb3ZpZGVyc1JlcXVlc3QaMy5zaWx2YW5hLm9yZGVyYm9vay52MS5HZXRMaXF1aWRpdHlQcm92aWRlcnNSZXNwb25zZRJ6ChNBZGRXYWl0aW5nTGlzdEVudHJ5EjAuc2lsdmFuYS5vcmRlcmJvb2sudjEuQWRkV2FpdGluZ0xpc3RFbnRyeVJlcXVlc3QaMS5zaWx2YW5hLm9yZGVyYm9vay52MS5BZGRXYWl0aW5nTGlzdEVudHJ5UmVzcG9uc2USXAoJR2V0SW52aXRlEiYuc2lsdmFuYS5vcmRlcmJvb2sudjEuR2V0SW52aXRlUmVxdWVzdBonLnNpbHZhbmEub3JkZXJib29rLnYxLkdldEludml0ZVJlc3BvbnNlElwKCVVzZUludml0ZRImLnNpbHZhbmEub3JkZXJib29rLnYxLlVzZUludml0ZVJlcXVlc3QaJy5zaWx2YW5hLm9yZGVyYm9vay52MS5Vc2VJbnZpdGVSZXNwb25zZRJiCgtDcmVhdGVQYXJ0eRIoLnNpbHZhbmEub3JkZXJib29rLnYxLkNyZWF0ZVBhcnR5UmVxdWVzdBopLnNpbHZhbmEub3JkZXJib29rLnYxLkNyZWF0ZVBhcnR5UmVzcG9uc2USYgoLVXBkYXRlUGFydHkSKC5zaWx2YW5hLm9yZGVyYm9vay52MS5VcGRhdGVQYXJ0eVJlcXVlc3QaKS5zaWx2YW5hLm9yZGVyYm9vay52MS5VcGRhdGVQYXJ0eVJlc3BvbnNlEm4KD0RlYWN0aXZhdGVQYXJ0eRIsLnNpbHZhbmEub3JkZXJib29rLnYxLkRlYWN0aXZhdGVQYXJ0eVJlcXVlc3QaLS5zaWx2YW5hLm9yZGVyYm9vay52MS5EZWFjdGl2YXRlUGFydHlSZXNwb25zZRJuCg9HZXRQYXJ0eUhpc3RvcnkSLC5zaWx2YW5hLm9yZGVyYm9vay52MS5HZXRQYXJ0eUhpc3RvcnlSZXF1ZXN0Gi0uc2lsdmFuYS5vcmRlcmJvb2sudjEuR2V0UGFydHlIaXN0b3J5UmVzcG9uc2UScQoQQ3JlYXRlSW5zdHJ1bWVudBItLnNpbHZhbmEub3JkZXJib29rLnYxLkNyZWF0ZUluc3RydW1lbnRSZXF1ZXN0Gi4uc2lsdmFuYS5vcmRlcmJvb2sudjEuQ3JlYXRlSW5zdHJ1bWVudFJlc3BvbnNlEmUKDENyZWF0ZU1hcmtldBIpLnNpbHZhbmEub3JkZXJib29rLnYxLkNyZWF0ZU1hcmtldFJlcXVlc3QaKi5zaWx2YW5hLm9yZGVyYm9vay52MS5DcmVhdGVNYXJrZXRSZXNwb25zZRKDAQoWVXBkYXRlTWFya2V0UHJpY2VGZWVkcxIzLnNpbHZhbmEub3JkZXJib29rLnYxLlVwZGF0ZU1hcmtldFByaWNlRmVlZHNSZXF1ZXN0GjQuc2lsdmFuYS5vcmRlcmJvb2sudjEuVXBkYXRlTWFya2V0UHJpY2VGZWVkc1Jlc3BvbnNlEm4KElN1YnNjcmliZU9yZGVyYm9vaxIvLnNpbHZhbmEub3JkZXJib29rLnYxLlN1YnNjcmliZU9yZGVyYm9va1JlcXVlc3QaJS5zaWx2YW5hLm9yZGVyYm9vay52MS5PcmRlcmJvb2tVcGRhdGUwARJkCg9TdWJzY3JpYmVPcmRlcnMSLC5zaWx2YW5hLm9yZGVyYm9vay52MS5TdWJzY3JpYmVPcmRlcnNSZXF1ZXN0GiEuc2lsdmFuYS5vcmRlcmJvb2sudjEuT3JkZXJVcGRhdGUwARJzChRTdWJzY3JpYmVTZXR0bGVtZW50cxIxLnNpbHZhbmEub3JkZXJib29rLnYxLlN1YnNjcmliZVNldHRsZW1lbnRzUmVxdWVzdBomLnNpbHZhbmEub3JkZXJib29rLnYxLlNldHRsZW1lbnRVcGRhdGUwAUI0WjJnaXRodWIuY29tL1NpbHZhbmFPbmUvY2FudG9uLWFnZW50L3Byb3RvO29yZGVyYm9va2IGcHJvdG8z", [file_google_protobuf_timestamp, file_google_protobuf_empty, file_google_protobuf_struct]);
16
-
17
- /**
18
- * JWT authentication token (for server-signed tokens using JWT_PRIVATE_KEY)
19
- *
20
- * @generated from message silvana.orderbook.v1.JWTAuth
21
- */
22
- export type JWTAuth = Message<"silvana.orderbook.v1.JWTAuth"> & {
23
- /**
24
- * JWT signed with server's Ed25519 private key (JWT_PRIVATE_KEY)
25
- *
26
- * @generated from field: string token = 1;
27
- */
28
- token: string;
29
- };
30
-
31
- /**
32
- * Describes the message silvana.orderbook.v1.JWTAuth.
33
- * Use `create(JWTAuthSchema)` to create a new message.
34
- */
35
- export const JWTAuthSchema: GenMessage<JWTAuth> = /*@__PURE__*/
36
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 0);
37
-
38
- /**
39
- * External account authentication
40
- * JWT is signed by the external account's Ed25519 private key
41
- * The public_key is verified against the party_id fingerprint:
42
- * fingerprint = SHA256(0x0000000C || public_key_bytes)
43
- * party_id format: "identifier::1220{fingerprint}"
44
- *
45
- * @generated from message silvana.orderbook.v1.ExternalAuth
46
- */
47
- export type ExternalAuth = Message<"silvana.orderbook.v1.ExternalAuth"> & {
48
- /**
49
- * JWT signed with external account's Ed25519 private key
50
- *
51
- * @generated from field: string jwt = 1;
52
- */
53
- jwt: string;
54
-
55
- /**
56
- * Canton party ID of the external account
57
- *
58
- * @generated from field: string party_id = 2;
59
- */
60
- partyId: string;
61
-
62
- /**
63
- * Ed25519 public key (hex) - verified against party_id fingerprint
64
- *
65
- * @generated from field: string public_key = 3;
66
- */
67
- publicKey: string;
68
- };
69
-
70
- /**
71
- * Describes the message silvana.orderbook.v1.ExternalAuth.
72
- * Use `create(ExternalAuthSchema)` to create a new message.
73
- */
74
- export const ExternalAuthSchema: GenMessage<ExternalAuth> = /*@__PURE__*/
75
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 1);
15
+ fileDesc("Cipwcm90by9zaWx2YW5hL29yZGVyYm9vay92MS9vcmRlcmJvb2sucHJvdG8SFHNpbHZhbmEub3JkZXJib29rLnYxIvoCCgpJbnN0cnVtZW50EhUKDWluc3RydW1lbnRfaWQYASABKAkSFwoPaW5zdHJ1bWVudF90eXBlGAIgASgJEgwKBG5hbWUYAyABKAkSDgoGc3ltYm9sGAQgASgJEhgKC2Rlc2NyaXB0aW9uGAUgASgJSACIAQESEwoGaXNzdWVyGAYgASgJSAGIAQESFQoIcmVnaXN0cnkYByABKAlIAogBARIuCghtZXRhZGF0YRgIIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIA4gBARIuCgpjcmVhdGVkX2F0GAkgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GAogASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBITCgtuZXdzX3N5bWJvbBgLIAEoCUIOCgxfZGVzY3JpcHRpb25CCQoHX2lzc3VlckILCglfcmVnaXN0cnlCCwoJX21ldGFkYXRhItwFCgZNYXJrZXQSEQoJbWFya2V0X2lkGAEgASgJEjUKC21hcmtldF90eXBlGAIgASgOMiAuc2lsdmFuYS5vcmRlcmJvb2sudjEuTWFya2V0VHlwZRIXCg9iYXNlX2luc3RydW1lbnQYAyABKAkSGAoQcXVvdGVfaW5zdHJ1bWVudBgEIAEoCRITCgtwYWlyX3N5bWJvbBgFIAEoCRIRCglpc19hY3RpdmUYBiABKAgSFgoObWluX29yZGVyX3NpemUYByABKAkSGwoObWF4X29yZGVyX3NpemUYCCABKAlIAIgBARIRCgl0aWNrX3NpemUYCSABKAkSEQoJbWFrZXJfZmVlGAogASgJEhEKCXRha2VyX2ZlZRgLIAEoCRIuCghtZXRhZGF0YRgMIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIAYgBARIuCgpjcmVhdGVkX2F0GA0gASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GA4gASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIxCgtwcmljZV9mZWVkcxgPIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIAogBARIaCg1jdXJyZW50X3ByaWNlGBAgASgBSAOIAQESFwoKY2hhbmdlXzI0aBgRIAEoAUgEiAEBEhcKCnZvbHVtZV8yNGgYEiABKAFIBYgBARI5ChBwcmljZV91cGRhdGVkX2F0GBMgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgGiAEBQhEKD19tYXhfb3JkZXJfc2l6ZUILCglfbWV0YWRhdGFCDgoMX3ByaWNlX2ZlZWRzQhAKDl9jdXJyZW50X3ByaWNlQg0KC19jaGFuZ2VfMjRoQg0KC192b2x1bWVfMjRoQhMKEV9wcmljZV91cGRhdGVkX2F0IsEHCgVPcmRlchIQCghvcmRlcl9pZBgBIAEoBBIRCgltYXJrZXRfaWQYAiABKAkSMwoKb3JkZXJfdHlwZRgDIAEoDjIfLnNpbHZhbmEub3JkZXJib29rLnYxLk9yZGVyVHlwZRIOCgZ0cmFkZXIYBCABKAkSHQoQdHJhZGVyX29yZGVyX3JlZhgFIAEoCUgAiAEBEhcKD2Jhc2VfaW5zdHJ1bWVudBgGIAEoCRIYChBxdW90ZV9pbnN0cnVtZW50GAcgASgJEg0KBXByaWNlGAggASgJEhAKCHF1YW50aXR5GAkgASgJEhcKD2ZpbGxlZF9xdWFudGl0eRgKIAEoCRIYChBwZW5kaW5nX3F1YW50aXR5GAsgASgJEhoKEnJlbWFpbmluZ19xdWFudGl0eRgMIAEoCRIxCgZzdGF0dXMYDSABKA4yIS5zaWx2YW5hLm9yZGVyYm9vay52MS5PcmRlclN0YXR1cxI4Cg10aW1lX2luX2ZvcmNlGA4gASgOMiEuc2lsdmFuYS5vcmRlcmJvb2sudjEuVGltZUluRm9yY2USMwoKZXhwaXJlc19hdBgPIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAYgBARIPCgd2ZXJzaW9uGBAgASgEEjEKC2NyZWRlbnRpYWxzGBEgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgCiAEBEjIKDHJlcXVpcmVtZW50cxgSIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIA4gBARIuCghtZXRhZGF0YRgTIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIBIgBARIuCgpjcmVhdGVkX2F0GBQgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GBUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBI1CgxjYW5jZWxsZWRfYXQYFiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAWIAQESFgoJc2lnbmF0dXJlGBcgASgJSAaIAQESEwoLc2lnbmVkX2RhdGEYGCABKAwSDQoFbm9uY2UYGSABKARCEwoRX3RyYWRlcl9vcmRlcl9yZWZCDQoLX2V4cGlyZXNfYXRCDgoMX2NyZWRlbnRpYWxzQg8KDV9yZXF1aXJlbWVudHNCCwoJX21ldGFkYXRhQg8KDV9jYW5jZWxsZWRfYXRCDAoKX3NpZ25hdHVyZSKCAQoOT3JkZXJib29rTGV2ZWwSDQoFcHJpY2UYASABKAkSFgoOdG90YWxfcXVhbnRpdHkYAiABKAkSEwoLb3JkZXJfY291bnQYAyABKA0SNAoQZmlyc3Rfb3JkZXJfdGltZRgEIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAi1QEKDk9yZGVyYm9va0RlcHRoEhEKCW1hcmtldF9pZBgBIAEoCRITCgtwYWlyX3N5bWJvbBgCIAEoCRIyCgRiaWRzGAMgAygLMiQuc2lsdmFuYS5vcmRlcmJvb2sudjEuT3JkZXJib29rTGV2ZWwSNAoGb2ZmZXJzGAQgAygLMiQuc2lsdmFuYS5vcmRlcmJvb2sudjEuT3JkZXJib29rTGV2ZWwSMQoNc25hcHNob3RfdGltZRgFIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAi0wUKElNldHRsZW1lbnRQcm9wb3NhbBITCgtwcm9wb3NhbF9pZBgBIAEoCRIRCgltYXJrZXRfaWQYAiABKAkSDQoFYnV5ZXIYAyABKAkSDgoGc2VsbGVyGAQgASgJEhcKD2Jhc2VfaW5zdHJ1bWVudBgFIAEoCRIYChBxdW90ZV9pbnN0cnVtZW50GAYgASgJEhUKDWJhc2VfcXVhbnRpdHkYByABKAkSFgoOcXVvdGVfcXVhbnRpdHkYCCABKAkSGAoQc2V0dGxlbWVudF9wcmljZRgJIAEoCRIgChhkdnBfcHJvY2Vzc2luZ19mZWVfYnV5ZXIYCiABKAkSIQoZZHZwX3Byb2Nlc3NpbmdfZmVlX3NlbGxlchgLIAEoCRInCh9hbGxvY2F0aW9uX3Byb2Nlc3NpbmdfZmVlX2J1eWVyGAwgASgJEigKIGFsbG9jYXRpb25fcHJvY2Vzc2luZ19mZWVfc2VsbGVyGA0gASgJEjYKBnN0YXR1cxgOIAEoDjImLnNpbHZhbmEub3JkZXJib29rLnYxLlNldHRsZW1lbnRTdGF0dXMSGgoNZXJyb3JfbWVzc2FnZRgPIAEoCUgAiAEBEi4KCmNyZWF0ZWRfYXQYECABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEjMKCnNldHRsZWRfYXQYESABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAGIAQESNQoMY2FuY2VsbGVkX2F0GBIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgCiAEBEjIKCWZhaWxlZF9hdBgTIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIA4gBAUIQCg5fZXJyb3JfbWVzc2FnZUINCgtfc2V0dGxlZF9hdEIPCg1fY2FuY2VsbGVkX2F0QgwKCl9mYWlsZWRfYXQiuwEKCk9yZGVyTWF0Y2gSHgoWc2V0dGxlbWVudF9wcm9wb3NhbF9pZBgBIAEoCRIUCgxiaWRfb3JkZXJfaWQYAiABKAQSFgoOb2ZmZXJfb3JkZXJfaWQYAyABKAQSGAoQbWF0Y2hlZF9xdWFudGl0eRgEIAEoCRIVCg1tYXRjaGVkX3ByaWNlGAUgASgJEi4KCmNyZWF0ZWRfYXQYBiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wIpwECgpTZXR0bGVtZW50EhUKDXNldHRsZW1lbnRfaWQYASABKAQSEwoLcHJvcG9zYWxfaWQYAiABKAkSEQoJbWFya2V0X2lkGAMgASgJEg0KBWJ1eWVyGAQgASgJEg4KBnNlbGxlchgFIAEoCRIXCg9iYXNlX2luc3RydW1lbnQYBiABKAkSGAoQcXVvdGVfaW5zdHJ1bWVudBgHIAEoCRIVCg1iYXNlX3F1YW50aXR5GAggASgJEhYKDnF1b3RlX3F1YW50aXR5GAkgASgJEhgKEHNldHRsZW1lbnRfcHJpY2UYCiABKAkSIAoYZHZwX3Byb2Nlc3NpbmdfZmVlX2J1eWVyGAsgASgJEiEKGWR2cF9wcm9jZXNzaW5nX2ZlZV9zZWxsZXIYDCABKAkSJwofYWxsb2NhdGlvbl9wcm9jZXNzaW5nX2ZlZV9idXllchgNIAEoCRIoCiBhbGxvY2F0aW9uX3Byb2Nlc3NpbmdfZmVlX3NlbGxlchgOIAEoCRIcCg9zZXR0bGVkX2R2cF9jaWQYDyABKAlIAIgBARIhChRzZXR0bGVtZW50X3VwZGF0ZV9pZBgQIAEoCUgBiAEBEi4KCnNldHRsZWRfYXQYESABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQhIKEF9zZXR0bGVkX2R2cF9jaWRCFwoVX3NldHRsZW1lbnRfdXBkYXRlX2lkIpUCCgpNYXJrZXREYXRhEhEKCW1hcmtldF9pZBgBIAEoCRITCgtwYWlyX3N5bWJvbBgCIAEoCRIVCghiZXN0X2JpZBgDIAEoCUgAiAEBEhcKCmJlc3Rfb2ZmZXIYBCABKAlIAYgBARIXCgpsYXN0X3ByaWNlGAUgASgJSAKIAQESEgoKdm9sdW1lXzI0aBgGIAEoCRISCgp0cmFkZXNfMjRoGAcgASgNEhMKC29wZW5fb3JkZXJzGAggASgNEi4KCnVwZGF0ZWRfYXQYCSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQgsKCV9iZXN0X2JpZEINCgtfYmVzdF9vZmZlckINCgtfbGFzdF9wcmljZSL6AgoQR2V0T3JkZXJzUmVxdWVzdBIWCgltYXJrZXRfaWQYAiABKAlIAIgBARI2CgZzdGF0dXMYAyABKA4yIS5zaWx2YW5hLm9yZGVyYm9vay52MS5PcmRlclN0YXR1c0gBiAEBEjgKCm9yZGVyX3R5cGUYBCABKA4yHy5zaWx2YW5hLm9yZGVyYm9vay52MS5PcmRlclR5cGVIAogBARISCgVsaW1pdBgFIAEoDUgDiAEBEhMKBm9mZnNldBgGIAEoDUgEiAEBEi4KIWxpcXVpZGl0eV9wcm92aWRlcl9hY3RpdmVfc2Vjb25kcxgLIAEoDUgFiAEBEiAKGGxpcXVpZGl0eV9wcm92aWRlcl9uYW1lcxgMIAMoCUIMCgpfbWFya2V0X2lkQgkKB19zdGF0dXNCDQoLX29yZGVyX3R5cGVCCAoGX2xpbWl0QgkKB19vZmZzZXRCJAoiX2xpcXVpZGl0eV9wcm92aWRlcl9hY3RpdmVfc2Vjb25kcyJxChFHZXRPcmRlcnNSZXNwb25zZRIPCgdzdWNjZXNzGAEgASgIEg8KB21lc3NhZ2UYAiABKAkSKwoGb3JkZXJzGAMgAygLMhsuc2lsdmFuYS5vcmRlcmJvb2sudjEuT3JkZXISDQoFdG90YWwYBCABKA0iSwoYR2V0T3JkZXJib29rRGVwdGhSZXF1ZXN0EhEKCW1hcmtldF9pZBgCIAEoCRISCgVkZXB0aBgDIAEoDUgAiAEBQggKBl9kZXB0aCJ2ChlHZXRPcmRlcmJvb2tEZXB0aFJlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgSDwoHbWVzc2FnZRgCIAEoCRI3CglvcmRlcmJvb2sYAyABKAsyJC5zaWx2YW5hLm9yZGVyYm9vay52MS5PcmRlcmJvb2tEZXB0aCLLAQodR2V0U2V0dGxlbWVudFByb3Bvc2Fsc1JlcXVlc3QSFgoJbWFya2V0X2lkGAIgASgJSACIAQESOwoGc3RhdHVzGAMgASgOMiYuc2lsdmFuYS5vcmRlcmJvb2sudjEuU2V0dGxlbWVudFN0YXR1c0gBiAEBEhIKBWxpbWl0GAQgASgNSAKIAQESEwoGb2Zmc2V0GAUgASgNSAOIAQFCDAoKX21hcmtldF9pZEIJCgdfc3RhdHVzQggKBl9saW1pdEIJCgdfb2Zmc2V0Io4BCh5HZXRTZXR0bGVtZW50UHJvcG9zYWxzUmVzcG9uc2USDwoHc3VjY2VzcxgBIAEoCBIPCgdtZXNzYWdlGAIgASgJEjsKCXByb3Bvc2FscxgDIAMoCzIoLnNpbHZhbmEub3JkZXJib29rLnYxLlNldHRsZW1lbnRQcm9wb3NhbBINCgV0b3RhbBgEIAEoDSIzChxHZXRTZXR0bGVtZW50UHJvcG9zYWxSZXF1ZXN0EhMKC3Byb3Bvc2FsX2lkGAIgASgJIo8BCh1HZXRTZXR0bGVtZW50UHJvcG9zYWxSZXNwb25zZRIPCgdzdWNjZXNzGAEgASgIEg8KB21lc3NhZ2UYAiABKAkSPwoIcHJvcG9zYWwYAyABKAsyKC5zaWx2YW5hLm9yZGVyYm9vay52MS5TZXR0bGVtZW50UHJvcG9zYWxIAIgBAUILCglfcHJvcG9zYWwihwEKFUdldEluc3RydW1lbnRzUmVxdWVzdBIcCg9pbnN0cnVtZW50X3R5cGUYAiABKAlIAIgBARISCgVsaW1pdBgDIAEoDUgBiAEBEhMKBm9mZnNldBgEIAEoDUgCiAEBQhIKEF9pbnN0cnVtZW50X3R5cGVCCAoGX2xpbWl0QgkKB19vZmZzZXQigAEKFkdldEluc3RydW1lbnRzUmVzcG9uc2USDwoHc3VjY2VzcxgBIAEoCBIPCgdtZXNzYWdlGAIgASgJEjUKC2luc3RydW1lbnRzGAMgAygLMiAuc2lsdmFuYS5vcmRlcmJvb2sudjEuSW5zdHJ1bWVudBINCgV0b3RhbBgEIAEoDSKtAgoRR2V0TWFya2V0c1JlcXVlc3QSOgoLbWFya2V0X3R5cGUYAiABKA4yIC5zaWx2YW5hLm9yZGVyYm9vay52MS5NYXJrZXRUeXBlSACIAQESHAoPYmFzZV9pbnN0cnVtZW50GAMgASgJSAGIAQESHQoQcXVvdGVfaW5zdHJ1bWVudBgEIAEoCUgCiAEBEhgKC2FjdGl2ZV9vbmx5GAUgASgISAOIAQESEgoFbGltaXQYBiABKA1IBIgBARITCgZvZmZzZXQYByABKA1IBYgBAUIOCgxfbWFya2V0X3R5cGVCEgoQX2Jhc2VfaW5zdHJ1bWVudEITChFfcXVvdGVfaW5zdHJ1bWVudEIOCgxfYWN0aXZlX29ubHlCCAoGX2xpbWl0QgkKB19vZmZzZXQidAoSR2V0TWFya2V0c1Jlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgSDwoHbWVzc2FnZRgCIAEoCRItCgdtYXJrZXRzGAMgAygLMhwuc2lsdmFuYS5vcmRlcmJvb2sudjEuTWFya2V0Eg0KBXRvdGFsGAQgASgNIvwBChZHZXRPcmRlckhpc3RvcnlSZXF1ZXN0EhYKCW1hcmtldF9pZBgCIAEoCUgAiAEBEjIKCWZyb21fdGltZRgDIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAYgBARIwCgd0b190aW1lGAQgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgCiAEBEhIKBWxpbWl0GAUgASgNSAOIAQESEwoGb2Zmc2V0GAYgASgNSASIAQFCDAoKX21hcmtldF9pZEIMCgpfZnJvbV90aW1lQgoKCF90b190aW1lQggKBl9saW1pdEIJCgdfb2Zmc2V0IncKF0dldE9yZGVySGlzdG9yeVJlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgSDwoHbWVzc2FnZRgCIAEoCRIrCgZvcmRlcnMYAyADKAsyGy5zaWx2YW5hLm9yZGVyYm9vay52MS5PcmRlchINCgV0b3RhbBgEIAEoDSIqChRHZXRNYXJrZXREYXRhUmVxdWVzdBISCgptYXJrZXRfaWRzGAIgAygJInAKFUdldE1hcmtldERhdGFSZXNwb25zZRIPCgdzdWNjZXNzGAEgASgIEg8KB21lc3NhZ2UYAiABKAkSNQoLbWFya2V0X2RhdGEYAyADKAsyIC5zaWx2YW5hLm9yZGVyYm9vay52MS5NYXJrZXREYXRhIvsBChVHZXRTZXR0bGVtZW50c1JlcXVlc3QSFgoJbWFya2V0X2lkGAIgASgJSACIAQESMgoJZnJvbV90aW1lGAMgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgBiAEBEjAKB3RvX3RpbWUYBCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAKIAQESEgoFbGltaXQYBSABKA1IA4gBARITCgZvZmZzZXQYBiABKA1IBIgBAUIMCgpfbWFya2V0X2lkQgwKCl9mcm9tX3RpbWVCCgoIX3RvX3RpbWVCCAoGX2xpbWl0QgkKB19vZmZzZXQigAEKFkdldFNldHRsZW1lbnRzUmVzcG9uc2USDwoHc3VjY2VzcxgBIAEoCBIPCgdtZXNzYWdlGAIgASgJEjUKC3NldHRsZW1lbnRzGAMgAygLMiAuc2lsdmFuYS5vcmRlcmJvb2sudjEuU2V0dGxlbWVudBINCgV0b3RhbBgEIAEoDSJMChlTdWJzY3JpYmVPcmRlcmJvb2tSZXF1ZXN0EhEKCW1hcmtldF9pZBgCIAEoCRISCgVkZXB0aBgDIAEoDUgAiAEBQggKBl9kZXB0aCKHAwoPT3JkZXJib29rVXBkYXRlEhEKCW1hcmtldF9pZBgBIAEoCRJFCgt1cGRhdGVfdHlwZRgCIAEoDjIwLnNpbHZhbmEub3JkZXJib29rLnYxLk9yZGVyYm9va1VwZGF0ZS5VcGRhdGVUeXBlEjkKC2JpZF91cGRhdGVzGAMgAygLMiQuc2lsdmFuYS5vcmRlcmJvb2sudjEuT3JkZXJib29rTGV2ZWwSOwoNb2ZmZXJfdXBkYXRlcxgEIAMoCzIkLnNpbHZhbmEub3JkZXJib29rLnYxLk9yZGVyYm9va0xldmVsEi0KCXRpbWVzdGFtcBgFIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASFwoPc2VxdWVuY2VfbnVtYmVyGAYgASgEIloKClVwZGF0ZVR5cGUSGwoXVVBEQVRFX1RZUEVfVU5TUEVDSUZJRUQQABIYChRVUERBVEVfVFlQRV9TTkFQU0hPVBABEhUKEVVQREFURV9UWVBFX0RFTFRBEAIiPgoWU3Vic2NyaWJlT3JkZXJzUmVxdWVzdBIWCgltYXJrZXRfaWQYAiABKAlIAIgBAUIMCgpfbWFya2V0X2lkIq0DCgtPcmRlclVwZGF0ZRI/CgpldmVudF90eXBlGAEgASgOMisuc2lsdmFuYS5vcmRlcmJvb2sudjEuT3JkZXJVcGRhdGUuRXZlbnRUeXBlEioKBW9yZGVyGAIgASgLMhsuc2lsdmFuYS5vcmRlcmJvb2sudjEuT3JkZXISNAoFbWF0Y2gYAyABKAsyIC5zaWx2YW5hLm9yZGVyYm9vay52MS5PcmRlck1hdGNoSACIAQESLQoJdGltZXN0YW1wGAQgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCLBAQoJRXZlbnRUeXBlEhoKFkVWRU5UX1RZUEVfVU5TUEVDSUZJRUQQABIWChJFVkVOVF9UWVBFX0NSRUFURUQQARIWChJFVkVOVF9UWVBFX1VQREFURUQQAhIVChFFVkVOVF9UWVBFX0ZJTExFRBADEh8KG0VWRU5UX1RZUEVfUEFSVElBTExZX0ZJTExFRBAEEhgKFEVWRU5UX1RZUEVfQ0FOQ0VMTEVEEAUSFgoSRVZFTlRfVFlQRV9FWFBJUkVEEAZCCAoGX21hdGNoIkMKG1N1YnNjcmliZVNldHRsZW1lbnRzUmVxdWVzdBIWCgltYXJrZXRfaWQYAiABKAlIAIgBAUIMCgpfbWFya2V0X2lkIvYCChBTZXR0bGVtZW50VXBkYXRlEkQKCmV2ZW50X3R5cGUYASABKA4yMC5zaWx2YW5hLm9yZGVyYm9vay52MS5TZXR0bGVtZW50VXBkYXRlLkV2ZW50VHlwZRI6Cghwcm9wb3NhbBgCIAEoCzIoLnNpbHZhbmEub3JkZXJib29rLnYxLlNldHRsZW1lbnRQcm9wb3NhbBItCgl0aW1lc3RhbXAYAyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wIrABCglFdmVudFR5cGUSGgoWRVZFTlRfVFlQRV9VTlNQRUNJRklFRBAAEh8KG0VWRU5UX1RZUEVfUFJPUE9TQUxfQ1JFQVRFRBABEh0KGUVWRU5UX1RZUEVfU1RBVFVTX0NIQU5HRUQQAhIWChJFVkVOVF9UWVBFX1NFVFRMRUQQAxIVChFFVkVOVF9UWVBFX0ZBSUxFRBAEEhgKFEVWRU5UX1RZUEVfQ0FOQ0VMTEVEEAUivgQKElN1Ym1pdE9yZGVyUmVxdWVzdBIRCgltYXJrZXRfaWQYAiABKAkSMwoKb3JkZXJfdHlwZRgDIAEoDjIfLnNpbHZhbmEub3JkZXJib29rLnYxLk9yZGVyVHlwZRINCgVwcmljZRgEIAEoCRIQCghxdWFudGl0eRgFIAEoCRI4Cg10aW1lX2luX2ZvcmNlGAYgASgOMiEuc2lsdmFuYS5vcmRlcmJvb2sudjEuVGltZUluRm9yY2USMwoKZXhwaXJlc19hdBgHIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAIgBARIdChB0cmFkZXJfb3JkZXJfcmVmGAggASgJSAGIAQESMQoLY3JlZGVudGlhbHMYCSABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SAKIAQESMgoMcmVxdWlyZW1lbnRzGAogASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgDiAEBEi4KCG1ldGFkYXRhGAsgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgEiAEBEhYKCXNpZ25hdHVyZRgMIAEoCUgFiAEBEhMKC3NpZ25lZF9kYXRhGA0gASgMEg0KBW5vbmNlGA4gASgEQg0KC19leHBpcmVzX2F0QhMKEV90cmFkZXJfb3JkZXJfcmVmQg4KDF9jcmVkZW50aWFsc0IPCg1fcmVxdWlyZW1lbnRzQgsKCV9tZXRhZGF0YUIMCgpfc2lnbmF0dXJlInIKE1N1Ym1pdE9yZGVyUmVzcG9uc2USDwoHc3VjY2VzcxgBIAEoCBIPCgdtZXNzYWdlGAIgASgJEi8KBW9yZGVyGAMgASgLMhsuc2lsdmFuYS5vcmRlcmJvb2sudjEuT3JkZXJIAIgBAUIICgZfb3JkZXIiJgoSQ2FuY2VsT3JkZXJSZXF1ZXN0EhAKCG9yZGVyX2lkGAIgASgEInIKE0NhbmNlbE9yZGVyUmVzcG9uc2USDwoHc3VjY2VzcxgBIAEoCBIPCgdtZXNzYWdlGAIgASgJEi8KBW9yZGVyGAMgASgLMhsuc2lsdmFuYS5vcmRlcmJvb2sudjEuT3JkZXJIAIgBAUIICgZfb3JkZXIiyQUKEkNyZWF0ZVBhcnR5UmVxdWVzdBIQCghwYXJ0eV9pZBgCIAEoCRISCgpwYXJ0eV9uYW1lGAMgASgJEhIKCnBhcnR5X3R5cGUYBCABKAkSHQoQdXNlcl9zZXJ2aWNlX2NpZBgFIAEoCUgAiAEBEiAKE29wZXJhdG9yX2NvbmZpZ19jaWQYBiABKAlIAYgBARIuCghtZXRhZGF0YRgHIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIAogBARIlChh1c2VyX3NlcnZpY2VfcmVxdWVzdF9jaWQYCCABKAlIA4gBARIqCgl1c2VyX2RhdGEYCSABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0EhIKBWVtYWlsGAogASgJSASIAQESFwoKcHVibGljX2tleRgLIAEoCUgFiAEBEhgKC2ludml0ZV9jb2RlGAwgASgJSAaIAQESEwoGc291cmNlGA0gASgJSAeIAQESIgoVZW5jcnlwdGVkX3ByaXZhdGVfa2V5GA4gASgJSAiIAQESJAoXbGlxdWlkaXR5X3Byb3ZpZGVyX25hbWUYECABKAlICYgBARIrCh5saXF1aWRpdHlfcHJvdmlkZXJfZGVzY3JpcHRpb24YESABKAlICogBAUITChFfdXNlcl9zZXJ2aWNlX2NpZEIWChRfb3BlcmF0b3JfY29uZmlnX2NpZEILCglfbWV0YWRhdGFCGwoZX3VzZXJfc2VydmljZV9yZXF1ZXN0X2NpZEIICgZfZW1haWxCDQoLX3B1YmxpY19rZXlCDgoMX2ludml0ZV9jb2RlQgkKB19zb3VyY2VCGAoWX2VuY3J5cHRlZF9wcml2YXRlX2tleUIaChhfbGlxdWlkaXR5X3Byb3ZpZGVyX25hbWVCIQofX2xpcXVpZGl0eV9wcm92aWRlcl9kZXNjcmlwdGlvbiJjChNDcmVhdGVQYXJ0eVJlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgSDwoHbWVzc2FnZRgCIAEoCRIqCgVwYXJ0eRgDIAEoCzIbLnNpbHZhbmEub3JkZXJib29rLnYxLlBhcnR5IpIFChJVcGRhdGVQYXJ0eVJlcXVlc3QSEAoIcGFydHlfaWQYAiABKAkSGAoQZXhwZWN0ZWRfdmVyc2lvbhgDIAEoBBIXCgpwYXJ0eV9uYW1lGAQgASgJSACIAQESHQoQdXNlcl9zZXJ2aWNlX2NpZBgFIAEoCUgBiAEBEiAKE29wZXJhdG9yX2NvbmZpZ19jaWQYBiABKAlIAogBARIlChh1c2VyX3NlcnZpY2VfcmVxdWVzdF9jaWQYByABKAlIA4gBARIvCgl1c2VyX2RhdGEYCCABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SASIAQESLgoIbWV0YWRhdGEYCSABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SAWIAQESGgoNY2hhbmdlX3JlYXNvbhgKIAEoCUgGiAEBEhIKBWVtYWlsGAsgASgJSAeIAQESFwoKcHVibGljX2tleRgMIAEoCUgIiAEBEhgKC2ludml0ZV9jb2RlGA0gASgJSAmIAQESEwoGc291cmNlGA4gASgJSAqIAQESIgoVZW5jcnlwdGVkX3ByaXZhdGVfa2V5GA8gASgJSAuIAQFCDQoLX3BhcnR5X25hbWVCEwoRX3VzZXJfc2VydmljZV9jaWRCFgoUX29wZXJhdG9yX2NvbmZpZ19jaWRCGwoZX3VzZXJfc2VydmljZV9yZXF1ZXN0X2NpZEIMCgpfdXNlcl9kYXRhQgsKCV9tZXRhZGF0YUIQCg5fY2hhbmdlX3JlYXNvbkIICgZfZW1haWxCDQoLX3B1YmxpY19rZXlCDgoMX2ludml0ZV9jb2RlQgkKB19zb3VyY2VCGAoWX2VuY3J5cHRlZF9wcml2YXRlX2tleSJjChNVcGRhdGVQYXJ0eVJlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgSDwoHbWVzc2FnZRgCIAEoCRIqCgVwYXJ0eRgDIAEoCzIbLnNpbHZhbmEub3JkZXJib29rLnYxLlBhcnR5IlsKFkRlYWN0aXZhdGVQYXJ0eVJlcXVlc3QSEAoIcGFydHlfaWQYAiABKAkSGAoQZXhwZWN0ZWRfdmVyc2lvbhgDIAEoBBIVCg1jaGFuZ2VfcmVhc29uGAQgASgJImcKF0RlYWN0aXZhdGVQYXJ0eVJlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgSDwoHbWVzc2FnZRgCIAEoCRIqCgVwYXJ0eRgDIAEoCzIbLnNpbHZhbmEub3JkZXJib29rLnYxLlBhcnR5ImgKFkdldFBhcnR5SGlzdG9yeVJlcXVlc3QSEAoIcGFydHlfaWQYAiABKAkSEgoFbGltaXQYAyABKA1IAIgBARITCgZvZmZzZXQYBCABKA1IAYgBAUIICgZfbGltaXRCCQoHX29mZnNldCKBAgoRUGFydHlIaXN0b3J5RW50cnkSEgoKaGlzdG9yeV9pZBgBIAEoBBIQCghwYXJ0eV9pZBgCIAEoCRIOCgZhY3Rpb24YAyABKAkSEgoKY2hhbmdlZF9ieRgEIAEoCRIaCg1jaGFuZ2VfcmVhc29uGAUgASgJSACIAQESDwoHdmVyc2lvbhgGIAEoBBIzCg5wYXJ0eV9zbmFwc2hvdBgHIAEoCzIbLnNpbHZhbmEub3JkZXJib29rLnYxLlBhcnR5Ei4KCmNyZWF0ZWRfYXQYCCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQhAKDl9jaGFuZ2VfcmVhc29uIoQBChdHZXRQYXJ0eUhpc3RvcnlSZXNwb25zZRIPCgdzdWNjZXNzGAEgASgIEg8KB21lc3NhZ2UYAiABKAkSOAoHaGlzdG9yeRgDIAMoCzInLnNpbHZhbmEub3JkZXJib29rLnYxLlBhcnR5SGlzdG9yeUVudHJ5Eg0KBXRvdGFsGAQgASgNIiMKD0dldFBhcnR5UmVxdWVzdBIQCghwYXJ0eV9pZBgCIAEoCSJgChBHZXRQYXJ0eVJlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgSDwoHbWVzc2FnZRgCIAEoCRIqCgVwYXJ0eRgDIAEoCzIbLnNpbHZhbmEub3JkZXJib29rLnYxLlBhcnR5IqMBChFHZXRQYXJ0aWVzUmVxdWVzdBIXCgpwYXJ0eV90eXBlGAIgASgJSACIAQESGAoLYWN0aXZlX29ubHkYAyABKAhIAYgBARISCgVsaW1pdBgEIAEoDUgCiAEBEhMKBm9mZnNldBgFIAEoDUgDiAEBQg0KC19wYXJ0eV90eXBlQg4KDF9hY3RpdmVfb25seUIICgZfbGltaXRCCQoHX29mZnNldCJzChJHZXRQYXJ0aWVzUmVzcG9uc2USDwoHc3VjY2VzcxgBIAEoCBIPCgdtZXNzYWdlGAIgASgJEiwKB3BhcnRpZXMYAyADKAsyGy5zaWx2YW5hLm9yZGVyYm9vay52MS5QYXJ0eRINCgV0b3RhbBgEIAEoDSLgBAoFUGFydHkSEAoIcGFydHlfaWQYASABKAkSEgoKcGFydHlfbmFtZRgCIAEoCRISCgpwYXJ0eV90eXBlGAMgASgJEh0KEHVzZXJfc2VydmljZV9jaWQYBCABKAlIAIgBARIgChNvcGVyYXRvcl9jb25maWdfY2lkGAUgASgJSAGIAQESEQoJaXNfYWN0aXZlGAYgASgIEi4KCG1ldGFkYXRhGAcgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgCiAEBEi4KCmNyZWF0ZWRfYXQYCCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi4KCnVwZGF0ZWRfYXQYCSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEiUKGHVzZXJfc2VydmljZV9yZXF1ZXN0X2NpZBgKIAEoCUgDiAEBEioKCXVzZXJfZGF0YRgLIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSDwoHdmVyc2lvbhgMIAEoBBISCgVlbWFpbBgNIAEoCUgEiAEBEhcKCnB1YmxpY19rZXkYDiABKAlIBYgBARIYCgtpbnZpdGVfY29kZRgPIAEoCUgGiAEBEg4KBnNvdXJjZRgQIAEoCUITChFfdXNlcl9zZXJ2aWNlX2NpZEIWChRfb3BlcmF0b3JfY29uZmlnX2NpZEILCglfbWV0YWRhdGFCGwoZX3VzZXJfc2VydmljZV9yZXF1ZXN0X2NpZEIICgZfZW1haWxCDQoLX3B1YmxpY19rZXlCDgoMX2ludml0ZV9jb2RlIo0CChFMaXF1aWRpdHlQcm92aWRlchIMCgRuYW1lGAEgASgJEhAKCHBhcnR5X2lkGAIgASgJEhgKC2Rlc2NyaXB0aW9uGAMgASgJSACIAQESOQoQbGFzdF9hY3RpdmVfdGltZRgEIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAYgBARIuCgpjcmVhdGVkX2F0GAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GAYgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEIOCgxfZGVzY3JpcHRpb25CEwoRX2xhc3RfYWN0aXZlX3RpbWUijAEKHEdldExpcXVpZGl0eVByb3ZpZGVyc1JlcXVlc3QSGwoOYWN0aXZlX3NlY29uZHMYAiABKA1IAIgBARISCgVsaW1pdBgDIAEoDUgBiAEBEhMKBm9mZnNldBgEIAEoDUgCiAEBQhEKD19hY3RpdmVfc2Vjb25kc0IICgZfbGltaXRCCQoHX29mZnNldCKWAQodR2V0TGlxdWlkaXR5UHJvdmlkZXJzUmVzcG9uc2USDwoHc3VjY2VzcxgBIAEoCBIPCgdtZXNzYWdlGAIgASgJEkQKE2xpcXVpZGl0eV9wcm92aWRlcnMYAyADKAsyJy5zaWx2YW5hLm9yZGVyYm9vay52MS5MaXF1aWRpdHlQcm92aWRlchINCgV0b3RhbBgEIAEoDSKIAwoQV2FpdGluZ0xpc3RFbnRyeRIKCgJpZBgBIAEoBBIVCghwYXJ0eV9pZBgCIAEoCUgAiAEBEioKCXVzZXJfZGF0YRgDIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QSDgoGc291cmNlGAQgASgJEhIKBWVtYWlsGAUgASgJSAGIAQESFwoKcHVibGljX2tleRgGIAEoCUgCiAEBEhQKDGlzX29uYm9hcmRlZBgHIAEoCBIPCgd2ZXJzaW9uGAggASgEEi4KCG1ldGFkYXRhGAkgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgDiAEBEi4KCmNyZWF0ZWRfYXQYCiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi4KCnVwZGF0ZWRfYXQYCyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQgsKCV9wYXJ0eV9pZEIICgZfZW1haWxCDQoLX3B1YmxpY19rZXlCCwoJX21ldGFkYXRhItsBChpBZGRXYWl0aW5nTGlzdEVudHJ5UmVxdWVzdBIqCgl1c2VyX2RhdGEYAiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0Eg4KBnNvdXJjZRgDIAEoCRISCgVlbWFpbBgEIAEoCUgAiAEBEhcKCnB1YmxpY19rZXkYBSABKAlIAYgBARIuCghtZXRhZGF0YRgGIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIAogBAUIICgZfZW1haWxCDQoLX3B1YmxpY19rZXlCCwoJX21ldGFkYXRhIksKG0FkZFdhaXRpbmdMaXN0RW50cnlSZXNwb25zZRIPCgdzdWNjZXNzGAEgASgIEg8KB21lc3NhZ2UYAiABKAkSCgoCaWQYAyABKAQisQMKBVJvdW5kEhQKDHJvdW5kX251bWJlchgBIAEoBBI0Cidpc3N1YW5jZV9wZXJfZmVhdHVyZWRfYXBwX3Jld2FyZF9jb3Vwb24YAiABKAlIAIgBARI2Cilpc3N1YW5jZV9wZXJfdW5mZWF0dXJlZF9hcHBfcmV3YXJkX2NvdXBvbhgDIAEoCUgBiAEBEhgKC2NjX3VzZF9yYXRlGAQgASgJSAKIAQESJAoXdHJhZmZpY19jb3N0X3VzZF9wZXJfbWIYBSABKAlIA4gBARIuCgpjcmVhdGVkX2F0GAYgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIuCgp1cGRhdGVkX2F0GAcgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEIqCihfaXNzdWFuY2VfcGVyX2ZlYXR1cmVkX2FwcF9yZXdhcmRfY291cG9uQiwKKl9pc3N1YW5jZV9wZXJfdW5mZWF0dXJlZF9hcHBfcmV3YXJkX2NvdXBvbkIOCgxfY2NfdXNkX3JhdGVCGgoYX3RyYWZmaWNfY29zdF91c2RfcGVyX21iIqwFChJMYXRlc3RDb2VmZmljaWVudHMSNAonaXNzdWFuY2VfcGVyX2ZlYXR1cmVkX2FwcF9yZXdhcmRfY291cG9uGAEgASgJSACIAQESOgotaXNzdWFuY2VfcGVyX2ZlYXR1cmVkX2FwcF9yZXdhcmRfY291cG9uX3JvdW5kGAIgASgESAGIAQESNgopaXNzdWFuY2VfcGVyX3VuZmVhdHVyZWRfYXBwX3Jld2FyZF9jb3Vwb24YAyABKAlIAogBARI8Ci9pc3N1YW5jZV9wZXJfdW5mZWF0dXJlZF9hcHBfcmV3YXJkX2NvdXBvbl9yb3VuZBgEIAEoBEgDiAEBEhgKC2NjX3VzZF9yYXRlGAUgASgJSASIAQESHgoRY2NfdXNkX3JhdGVfcm91bmQYBiABKARIBYgBARIkChd0cmFmZmljX2Nvc3RfdXNkX3Blcl9tYhgHIAEoCUgGiAEBEioKHXRyYWZmaWNfY29zdF91c2RfcGVyX21iX3JvdW5kGAggASgESAeIAQFCKgooX2lzc3VhbmNlX3Blcl9mZWF0dXJlZF9hcHBfcmV3YXJkX2NvdXBvbkIwCi5faXNzdWFuY2VfcGVyX2ZlYXR1cmVkX2FwcF9yZXdhcmRfY291cG9uX3JvdW5kQiwKKl9pc3N1YW5jZV9wZXJfdW5mZWF0dXJlZF9hcHBfcmV3YXJkX2NvdXBvbkIyCjBfaXNzdWFuY2VfcGVyX3VuZmVhdHVyZWRfYXBwX3Jld2FyZF9jb3Vwb25fcm91bmRCDgoMX2NjX3VzZF9yYXRlQhQKEl9jY191c2RfcmF0ZV9yb3VuZEIaChhfdHJhZmZpY19jb3N0X3VzZF9wZXJfbWJCIAoeX3RyYWZmaWNfY29zdF91c2RfcGVyX21iX3JvdW5kIjQKFEdldFJvdW5kc0RhdGFSZXF1ZXN0EhIKBWxpbWl0GAIgASgNSACIAQFCCAoGX2xpbWl0IrYBChVHZXRSb3VuZHNEYXRhUmVzcG9uc2USDwoHc3VjY2VzcxgBIAEoCBIPCgdtZXNzYWdlGAIgASgJEisKBnJvdW5kcxgDIAMoCzIbLnNpbHZhbmEub3JkZXJib29rLnYxLlJvdW5kEjgKBmxhdGVzdBgEIAEoCzIoLnNpbHZhbmEub3JkZXJib29rLnYxLkxhdGVzdENvZWZmaWNpZW50cxIUCgx0b3RhbF9yb3VuZHMYBSABKA0i7wIKBkludml0ZRITCgtpbnZpdGVfY29kZRgBIAEoCRIPCgdjaGFubmVsGAIgASgJEhQKB3Jld2FyZHMYAyABKAlIAIgBARIuCghtZXRhZGF0YRgEIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIAYgBARIyCgZzdGF0dXMYBSABKA4yIi5zaWx2YW5hLm9yZGVyYm9vay52MS5JbnZpdGVTdGF0dXMSEgoKY291bnRfdXNlZBgGIAEoDRIWCgltYXhfY291bnQYByABKA1IAogBARISCgpjcmVhdGVkX2J5GAggASgJEi4KCmNyZWF0ZWRfYXQYCSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi4KCnVwZGF0ZWRfYXQYCiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQgoKCF9yZXdhcmRzQgsKCV9tZXRhZGF0YUIMCgpfbWF4X2NvdW50IicKEEdldEludml0ZVJlcXVlc3QSEwoLaW52aXRlX2NvZGUYASABKAkiYAoRR2V0SW52aXRlUmVzcG9uc2USDQoFZm91bmQYASABKAgSMQoGaW52aXRlGAIgASgLMhwuc2lsdmFuYS5vcmRlcmJvb2sudjEuSW52aXRlSACIAQFCCQoHX2ludml0ZSJLChBVc2VJbnZpdGVSZXF1ZXN0EhMKC2ludml0ZV9jb2RlGAEgASgJEhUKCHBhcnR5X2lkGAIgASgJSACIAQFCCwoJX3BhcnR5X2lkInMKEVVzZUludml0ZVJlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgSDwoHbWVzc2FnZRgCIAEoCRIxCgZpbnZpdGUYAyABKAsyHC5zaWx2YW5hLm9yZGVyYm9vay52MS5JbnZpdGVIAIgBAUIJCgdfaW52aXRlIqcCChdDcmVhdGVJbnN0cnVtZW50UmVxdWVzdBIVCg1pbnN0cnVtZW50X2lkGAIgASgJEhcKD2luc3RydW1lbnRfdHlwZRgDIAEoCRIMCgRuYW1lGAQgASgJEg4KBnN5bWJvbBgFIAEoCRIYCgtkZXNjcmlwdGlvbhgGIAEoCUgAiAEBEhMKBmlzc3VlchgHIAEoCUgBiAEBEhUKCHJlZ2lzdHJ5GAggASgJSAKIAQESLgoIbWV0YWRhdGEYCSABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SAOIAQESEwoLbmV3c19zeW1ib2wYCiABKAlCDgoMX2Rlc2NyaXB0aW9uQgkKB19pc3N1ZXJCCwoJX3JlZ2lzdHJ5QgsKCV9tZXRhZGF0YSJyChhDcmVhdGVJbnN0cnVtZW50UmVzcG9uc2USDwoHc3VjY2VzcxgBIAEoCBIPCgdtZXNzYWdlGAIgASgJEjQKCmluc3RydW1lbnQYAyABKAsyIC5zaWx2YW5hLm9yZGVyYm9vay52MS5JbnN0cnVtZW50IsYDChNDcmVhdGVNYXJrZXRSZXF1ZXN0EhEKCW1hcmtldF9pZBgCIAEoCRI1CgttYXJrZXRfdHlwZRgDIAEoDjIgLnNpbHZhbmEub3JkZXJib29rLnYxLk1hcmtldFR5cGUSHAoPYmFzZV9pbnN0cnVtZW50GAQgASgJSACIAQESHQoQcXVvdGVfaW5zdHJ1bWVudBgFIAEoCUgBiAEBEhYKDm1pbl9vcmRlcl9zaXplGAYgASgJEhsKDm1heF9vcmRlcl9zaXplGAcgASgJSAKIAQESEQoJdGlja19zaXplGAggASgJEhEKCW1ha2VyX2ZlZRgJIAEoCRIRCgl0YWtlcl9mZWUYCiABKAkSLgoIbWV0YWRhdGEYCyABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SAOIAQESMQoLcHJpY2VfZmVlZHMYDCABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SASIAQFCEgoQX2Jhc2VfaW5zdHJ1bWVudEITChFfcXVvdGVfaW5zdHJ1bWVudEIRCg9fbWF4X29yZGVyX3NpemVCCwoJX21ldGFkYXRhQg4KDF9wcmljZV9mZWVkcyJmChRDcmVhdGVNYXJrZXRSZXNwb25zZRIPCgdzdWNjZXNzGAEgASgIEg8KB21lc3NhZ2UYAiABKAkSLAoGbWFya2V0GAMgASgLMhwuc2lsdmFuYS5vcmRlcmJvb2sudjEuTWFya2V0ImAKHVVwZGF0ZU1hcmtldFByaWNlRmVlZHNSZXF1ZXN0EhEKCW1hcmtldF9pZBgCIAEoCRIsCgtwcmljZV9mZWVkcxgDIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QicAoeVXBkYXRlTWFya2V0UHJpY2VGZWVkc1Jlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgSDwoHbWVzc2FnZRgCIAEoCRIsCgZtYXJrZXQYAyABKAsyHC5zaWx2YW5hLm9yZGVyYm9vay52MS5NYXJrZXQqUQoJT3JkZXJUeXBlEhoKFk9SREVSX1RZUEVfVU5TUEVDSUZJRUQQABISCg5PUkRFUl9UWVBFX0JJRBABEhQKEE9SREVSX1RZUEVfT0ZGRVIQAiqtAQoLT3JkZXJTdGF0dXMSHAoYT1JERVJfU1RBVFVTX1VOU1BFQ0lGSUVEEAASFwoTT1JERVJfU1RBVFVTX0FDVElWRRABEhgKFE9SREVSX1NUQVRVU19QQVJUSUFMEAISFwoTT1JERVJfU1RBVFVTX0ZJTExFRBADEhoKFk9SREVSX1NUQVRVU19DQU5DRUxMRUQQBBIYChRPUkRFUl9TVEFUVVNfRVhQSVJFRBAFKogBCgtUaW1lSW5Gb3JjZRIdChlUSU1FX0lOX0ZPUkNFX1VOU1BFQ0lGSUVEEAASFQoRVElNRV9JTl9GT1JDRV9HVEMQARIVChFUSU1FX0lOX0ZPUkNFX0lPQxACEhUKEVRJTUVfSU5fRk9SQ0VfRk9LEAMSFQoRVElNRV9JTl9GT1JDRV9HVEQQBCqyAQoQU2V0dGxlbWVudFN0YXR1cxIhCh1TRVRUTEVNRU5UX1NUQVRVU19VTlNQRUNJRklFRBAAEh0KGVNFVFRMRU1FTlRfU1RBVFVTX1BFTkRJTkcQARIdChlTRVRUTEVNRU5UX1NUQVRVU19TRVRUTEVEEAISHwobU0VUVExFTUVOVF9TVEFUVVNfQ0FOQ0VMTEVEEAMSHAoYU0VUVExFTUVOVF9TVEFUVVNfRkFJTEVEEAQqdgoKTWFya2V0VHlwZRIbChdNQVJLRVRfVFlQRV9VTlNQRUNJRklFRBAAEhcKE01BUktFVF9UWVBFX0dFTkVSQUwQARIdChlNQVJLRVRfVFlQRV9JTlNUSVRVVElPTkFMEAISEwoPTUFSS0VUX1RZUEVfT1RDEAMqlgEKDEludml0ZVN0YXR1cxIdChlJTlZJVEVfU1RBVFVTX1VOU1BFQ0lGSUVEEAASFwoTSU5WSVRFX1NUQVRVU19WQUxJRBABEhkKFUlOVklURV9TVEFUVVNfRVhQSVJFRBACEhYKEklOVklURV9TVEFUVVNfVVNFRBADEhsKF0lOVklURV9TVEFUVVNfQ0FOQ0VMTEVEEAQygBgKEE9yZGVyYm9va1NlcnZpY2USXAoJR2V0T3JkZXJzEiYuc2lsdmFuYS5vcmRlcmJvb2sudjEuR2V0T3JkZXJzUmVxdWVzdBonLnNpbHZhbmEub3JkZXJib29rLnYxLkdldE9yZGVyc1Jlc3BvbnNlEnQKEUdldE9yZGVyYm9va0RlcHRoEi4uc2lsdmFuYS5vcmRlcmJvb2sudjEuR2V0T3JkZXJib29rRGVwdGhSZXF1ZXN0Gi8uc2lsdmFuYS5vcmRlcmJvb2sudjEuR2V0T3JkZXJib29rRGVwdGhSZXNwb25zZRKDAQoWR2V0U2V0dGxlbWVudFByb3Bvc2FscxIzLnNpbHZhbmEub3JkZXJib29rLnYxLkdldFNldHRsZW1lbnRQcm9wb3NhbHNSZXF1ZXN0GjQuc2lsdmFuYS5vcmRlcmJvb2sudjEuR2V0U2V0dGxlbWVudFByb3Bvc2Fsc1Jlc3BvbnNlEoABChVHZXRTZXR0bGVtZW50UHJvcG9zYWwSMi5zaWx2YW5hLm9yZGVyYm9vay52MS5HZXRTZXR0bGVtZW50UHJvcG9zYWxSZXF1ZXN0GjMuc2lsdmFuYS5vcmRlcmJvb2sudjEuR2V0U2V0dGxlbWVudFByb3Bvc2FsUmVzcG9uc2USawoOR2V0SW5zdHJ1bWVudHMSKy5zaWx2YW5hLm9yZGVyYm9vay52MS5HZXRJbnN0cnVtZW50c1JlcXVlc3QaLC5zaWx2YW5hLm9yZGVyYm9vay52MS5HZXRJbnN0cnVtZW50c1Jlc3BvbnNlEl8KCkdldE1hcmtldHMSJy5zaWx2YW5hLm9yZGVyYm9vay52MS5HZXRNYXJrZXRzUmVxdWVzdBooLnNpbHZhbmEub3JkZXJib29rLnYxLkdldE1hcmtldHNSZXNwb25zZRJuCg9HZXRPcmRlckhpc3RvcnkSLC5zaWx2YW5hLm9yZGVyYm9vay52MS5HZXRPcmRlckhpc3RvcnlSZXF1ZXN0Gi0uc2lsdmFuYS5vcmRlcmJvb2sudjEuR2V0T3JkZXJIaXN0b3J5UmVzcG9uc2USaAoNR2V0TWFya2V0RGF0YRIqLnNpbHZhbmEub3JkZXJib29rLnYxLkdldE1hcmtldERhdGFSZXF1ZXN0Gisuc2lsdmFuYS5vcmRlcmJvb2sudjEuR2V0TWFya2V0RGF0YVJlc3BvbnNlEmsKDkdldFNldHRsZW1lbnRzEisuc2lsdmFuYS5vcmRlcmJvb2sudjEuR2V0U2V0dGxlbWVudHNSZXF1ZXN0Giwuc2lsdmFuYS5vcmRlcmJvb2sudjEuR2V0U2V0dGxlbWVudHNSZXNwb25zZRJiCgtTdWJtaXRPcmRlchIoLnNpbHZhbmEub3JkZXJib29rLnYxLlN1Ym1pdE9yZGVyUmVxdWVzdBopLnNpbHZhbmEub3JkZXJib29rLnYxLlN1Ym1pdE9yZGVyUmVzcG9uc2USYgoLQ2FuY2VsT3JkZXISKC5zaWx2YW5hLm9yZGVyYm9vay52MS5DYW5jZWxPcmRlclJlcXVlc3QaKS5zaWx2YW5hLm9yZGVyYm9vay52MS5DYW5jZWxPcmRlclJlc3BvbnNlElkKCEdldFBhcnR5EiUuc2lsdmFuYS5vcmRlcmJvb2sudjEuR2V0UGFydHlSZXF1ZXN0GiYuc2lsdmFuYS5vcmRlcmJvb2sudjEuR2V0UGFydHlSZXNwb25zZRJfCgpHZXRQYXJ0aWVzEicuc2lsdmFuYS5vcmRlcmJvb2sudjEuR2V0UGFydGllc1JlcXVlc3QaKC5zaWx2YW5hLm9yZGVyYm9vay52MS5HZXRQYXJ0aWVzUmVzcG9uc2USgAEKFUdldExpcXVpZGl0eVByb3ZpZGVycxIyLnNpbHZhbmEub3JkZXJib29rLnYxLkdldExpcXVpZGl0eVByb3ZpZGVyc1JlcXVlc3QaMy5zaWx2YW5hLm9yZGVyYm9vay52MS5HZXRMaXF1aWRpdHlQcm92aWRlcnNSZXNwb25zZRJ6ChNBZGRXYWl0aW5nTGlzdEVudHJ5EjAuc2lsdmFuYS5vcmRlcmJvb2sudjEuQWRkV2FpdGluZ0xpc3RFbnRyeVJlcXVlc3QaMS5zaWx2YW5hLm9yZGVyYm9vay52MS5BZGRXYWl0aW5nTGlzdEVudHJ5UmVzcG9uc2USXAoJR2V0SW52aXRlEiYuc2lsdmFuYS5vcmRlcmJvb2sudjEuR2V0SW52aXRlUmVxdWVzdBonLnNpbHZhbmEub3JkZXJib29rLnYxLkdldEludml0ZVJlc3BvbnNlElwKCVVzZUludml0ZRImLnNpbHZhbmEub3JkZXJib29rLnYxLlVzZUludml0ZVJlcXVlc3QaJy5zaWx2YW5hLm9yZGVyYm9vay52MS5Vc2VJbnZpdGVSZXNwb25zZRJoCg1HZXRSb3VuZHNEYXRhEiouc2lsdmFuYS5vcmRlcmJvb2sudjEuR2V0Um91bmRzRGF0YVJlcXVlc3QaKy5zaWx2YW5hLm9yZGVyYm9vay52MS5HZXRSb3VuZHNEYXRhUmVzcG9uc2USYgoLQ3JlYXRlUGFydHkSKC5zaWx2YW5hLm9yZGVyYm9vay52MS5DcmVhdGVQYXJ0eVJlcXVlc3QaKS5zaWx2YW5hLm9yZGVyYm9vay52MS5DcmVhdGVQYXJ0eVJlc3BvbnNlEmIKC1VwZGF0ZVBhcnR5Eiguc2lsdmFuYS5vcmRlcmJvb2sudjEuVXBkYXRlUGFydHlSZXF1ZXN0Gikuc2lsdmFuYS5vcmRlcmJvb2sudjEuVXBkYXRlUGFydHlSZXNwb25zZRJuCg9EZWFjdGl2YXRlUGFydHkSLC5zaWx2YW5hLm9yZGVyYm9vay52MS5EZWFjdGl2YXRlUGFydHlSZXF1ZXN0Gi0uc2lsdmFuYS5vcmRlcmJvb2sudjEuRGVhY3RpdmF0ZVBhcnR5UmVzcG9uc2USbgoPR2V0UGFydHlIaXN0b3J5Eiwuc2lsdmFuYS5vcmRlcmJvb2sudjEuR2V0UGFydHlIaXN0b3J5UmVxdWVzdBotLnNpbHZhbmEub3JkZXJib29rLnYxLkdldFBhcnR5SGlzdG9yeVJlc3BvbnNlEnEKEENyZWF0ZUluc3RydW1lbnQSLS5zaWx2YW5hLm9yZGVyYm9vay52MS5DcmVhdGVJbnN0cnVtZW50UmVxdWVzdBouLnNpbHZhbmEub3JkZXJib29rLnYxLkNyZWF0ZUluc3RydW1lbnRSZXNwb25zZRJlCgxDcmVhdGVNYXJrZXQSKS5zaWx2YW5hLm9yZGVyYm9vay52MS5DcmVhdGVNYXJrZXRSZXF1ZXN0Giouc2lsdmFuYS5vcmRlcmJvb2sudjEuQ3JlYXRlTWFya2V0UmVzcG9uc2USgwEKFlVwZGF0ZU1hcmtldFByaWNlRmVlZHMSMy5zaWx2YW5hLm9yZGVyYm9vay52MS5VcGRhdGVNYXJrZXRQcmljZUZlZWRzUmVxdWVzdBo0LnNpbHZhbmEub3JkZXJib29rLnYxLlVwZGF0ZU1hcmtldFByaWNlRmVlZHNSZXNwb25zZRJuChJTdWJzY3JpYmVPcmRlcmJvb2sSLy5zaWx2YW5hLm9yZGVyYm9vay52MS5TdWJzY3JpYmVPcmRlcmJvb2tSZXF1ZXN0GiUuc2lsdmFuYS5vcmRlcmJvb2sudjEuT3JkZXJib29rVXBkYXRlMAESZAoPU3Vic2NyaWJlT3JkZXJzEiwuc2lsdmFuYS5vcmRlcmJvb2sudjEuU3Vic2NyaWJlT3JkZXJzUmVxdWVzdBohLnNpbHZhbmEub3JkZXJib29rLnYxLk9yZGVyVXBkYXRlMAEScwoUU3Vic2NyaWJlU2V0dGxlbWVudHMSMS5zaWx2YW5hLm9yZGVyYm9vay52MS5TdWJzY3JpYmVTZXR0bGVtZW50c1JlcXVlc3QaJi5zaWx2YW5hLm9yZGVyYm9vay52MS5TZXR0bGVtZW50VXBkYXRlMAFCNFoyZ2l0aHViLmNvbS9TaWx2YW5hT25lL2NhbnRvbi1hZ2VudC9wcm90bztvcmRlcmJvb2tiBnByb3RvMw", [file_google_protobuf_timestamp, file_google_protobuf_empty, file_google_protobuf_struct]);
76
16
 
77
17
  /**
78
18
  * Instrument message
@@ -143,7 +83,7 @@ export type Instrument = Message<"silvana.orderbook.v1.Instrument"> & {
143
83
  * Use `create(InstrumentSchema)` to create a new message.
144
84
  */
145
85
  export const InstrumentSchema: GenMessage<Instrument> = /*@__PURE__*/
146
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 2);
86
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 0);
147
87
 
148
88
  /**
149
89
  * Market message
@@ -268,7 +208,7 @@ export type Market = Message<"silvana.orderbook.v1.Market"> & {
268
208
  * Use `create(MarketSchema)` to create a new message.
269
209
  */
270
210
  export const MarketSchema: GenMessage<Market> = /*@__PURE__*/
271
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 3);
211
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 1);
272
212
 
273
213
  /**
274
214
  * Order message
@@ -401,6 +341,27 @@ export type Order = Message<"silvana.orderbook.v1.Order"> & {
401
341
  * @generated from field: optional google.protobuf.Timestamp cancelled_at = 22;
402
342
  */
403
343
  cancelledAt?: Timestamp;
344
+
345
+ /**
346
+ * Base64-encoded Ed25519 signature for order authentication
347
+ *
348
+ * @generated from field: optional string signature = 23;
349
+ */
350
+ signature?: string;
351
+
352
+ /**
353
+ * Original signed order data (binary)
354
+ *
355
+ * @generated from field: bytes signed_data = 24;
356
+ */
357
+ signedData: Uint8Array;
358
+
359
+ /**
360
+ * Unique nonce per trader for replay protection
361
+ *
362
+ * @generated from field: uint64 nonce = 25;
363
+ */
364
+ nonce: bigint;
404
365
  };
405
366
 
406
367
  /**
@@ -408,7 +369,7 @@ export type Order = Message<"silvana.orderbook.v1.Order"> & {
408
369
  * Use `create(OrderSchema)` to create a new message.
409
370
  */
410
371
  export const OrderSchema: GenMessage<Order> = /*@__PURE__*/
411
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 4);
372
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 2);
412
373
 
413
374
  /**
414
375
  * Orderbook depth level (aggregated view without user details)
@@ -446,7 +407,7 @@ export type OrderbookLevel = Message<"silvana.orderbook.v1.OrderbookLevel"> & {
446
407
  * Use `create(OrderbookLevelSchema)` to create a new message.
447
408
  */
448
409
  export const OrderbookLevelSchema: GenMessage<OrderbookLevel> = /*@__PURE__*/
449
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 5);
410
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 3);
450
411
 
451
412
  /**
452
413
  * Orderbook depth for a market
@@ -489,10 +450,10 @@ export type OrderbookDepth = Message<"silvana.orderbook.v1.OrderbookDepth"> & {
489
450
  * Use `create(OrderbookDepthSchema)` to create a new message.
490
451
  */
491
452
  export const OrderbookDepthSchema: GenMessage<OrderbookDepth> = /*@__PURE__*/
492
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 6);
453
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 4);
493
454
 
494
455
  /**
495
- * Settlement proposal message
456
+ * Settlement proposal message (simplified - immutable values + status only)
496
457
  *
497
458
  * @generated from message silvana.orderbook.v1.SettlementProposal
498
459
  */
@@ -519,217 +480,96 @@ export type SettlementProposal = Message<"silvana.orderbook.v1.SettlementProposa
519
480
  */
520
481
  seller: string;
521
482
 
483
+ /**
484
+ * @generated from field: string base_instrument = 5;
485
+ */
486
+ baseInstrument: string;
487
+
488
+ /**
489
+ * @generated from field: string quote_instrument = 6;
490
+ */
491
+ quoteInstrument: string;
492
+
522
493
  /**
523
494
  * DECIMAL(38,10) as string
524
495
  *
525
- * @generated from field: string base_quantity = 5;
496
+ * @generated from field: string base_quantity = 7;
526
497
  */
527
498
  baseQuantity: string;
528
499
 
529
500
  /**
530
501
  * DECIMAL(38,10) as string
531
502
  *
532
- * @generated from field: string quote_quantity = 6;
503
+ * @generated from field: string quote_quantity = 8;
533
504
  */
534
505
  quoteQuantity: string;
535
506
 
536
507
  /**
537
508
  * DECIMAL(38,10) as string
538
509
  *
539
- * @generated from field: string settlement_price = 7;
510
+ * @generated from field: string settlement_price = 9;
540
511
  */
541
512
  settlementPrice: string;
542
513
 
543
514
  /**
544
- * @generated from field: silvana.orderbook.v1.SettlementStatus status = 8;
545
- */
546
- status: SettlementStatus;
547
-
548
- /**
549
- * Optimistic locking
515
+ * Fee schedule (set by matching engine, to be paid by parties)
550
516
  *
551
- * @generated from field: uint64 version = 9;
552
- */
553
- version: bigint;
554
-
555
- /**
556
- * Preconfirmation tracking
517
+ * DECIMAL(38,10) as string
557
518
  *
558
- * @generated from field: optional google.protobuf.Struct preconfirmation_request = 10;
559
- */
560
- preconfirmationRequest?: JsonObject;
561
-
562
- /**
563
- * @generated from field: optional google.protobuf.Timestamp preconfirmation_request_sent_at = 11;
564
- */
565
- preconfirmationRequestSentAt?: Timestamp;
566
-
567
- /**
568
- * @generated from field: optional google.protobuf.Struct buyer_preconfirmation = 12;
569
- */
570
- buyerPreconfirmation?: JsonObject;
571
-
572
- /**
573
- * @generated from field: optional google.protobuf.Timestamp buyer_preconfirmation_received_at = 13;
574
- */
575
- buyerPreconfirmationReceivedAt?: Timestamp;
576
-
577
- /**
578
- * @generated from field: optional google.protobuf.Struct seller_preconfirmation = 14;
579
- */
580
- sellerPreconfirmation?: JsonObject;
581
-
582
- /**
583
- * @generated from field: optional google.protobuf.Timestamp seller_preconfirmation_received_at = 15;
519
+ * @generated from field: string dvp_processing_fee_buyer = 10;
584
520
  */
585
- sellerPreconfirmationReceivedAt?: Timestamp;
521
+ dvpProcessingFeeBuyer: string;
586
522
 
587
523
  /**
588
- * Canton DVP integration fields
524
+ * DECIMAL(38,10) as string
589
525
  *
590
- * @generated from field: optional string dvp_proposal_cid = 16;
591
- */
592
- dvpProposalCid?: string;
593
-
594
- /**
595
- * @generated from field: optional string dvp_proposal_update_id = 17;
596
- */
597
- dvpProposalUpdateId?: string;
598
-
599
- /**
600
- * @generated from field: optional string dvp_cid = 18;
526
+ * @generated from field: string dvp_processing_fee_seller = 11;
601
527
  */
602
- dvpCid?: string;
528
+ dvpProcessingFeeSeller: string;
603
529
 
604
530
  /**
605
- * @generated from field: optional string dvp_update_id = 19;
606
- */
607
- dvpUpdateId?: string;
608
-
609
- /**
610
- * Field 20 removed (was dvp_settlement_id - now using proposal_id as settlement ID)
531
+ * DECIMAL(38,10) as string
611
532
  *
612
- * @generated from field: optional string allocation_buyer_cid = 21;
613
- */
614
- allocationBuyerCid?: string;
615
-
616
- /**
617
- * @generated from field: optional string allocation_buyer_update_id = 22;
618
- */
619
- allocationBuyerUpdateId?: string;
620
-
621
- /**
622
- * @generated from field: optional string allocation_seller_cid = 23;
623
- */
624
- allocationSellerCid?: string;
625
-
626
- /**
627
- * @generated from field: optional string allocation_seller_update_id = 24;
628
- */
629
- allocationSellerUpdateId?: string;
630
-
631
- /**
632
- * @generated from field: optional string settled_dvp_cid = 25;
633
- */
634
- settledDvpCid?: string;
635
-
636
- /**
637
- * @generated from field: optional string settlement_update_id = 26;
638
- */
639
- settlementUpdateId?: string;
640
-
641
- /**
642
- * @generated from field: optional string settlement_completion_offset = 27;
533
+ * @generated from field: string allocation_processing_fee_buyer = 12;
643
534
  */
644
- settlementCompletionOffset?: string;
535
+ allocationProcessingFeeBuyer: string;
645
536
 
646
537
  /**
647
- * Timestamps
538
+ * DECIMAL(38,10) as string
648
539
  *
649
- * @generated from field: google.protobuf.Timestamp created_at = 28;
650
- */
651
- createdAt?: Timestamp;
652
-
653
- /**
654
- * @generated from field: optional google.protobuf.Timestamp preconfirmed_at = 29;
540
+ * @generated from field: string allocation_processing_fee_seller = 13;
655
541
  */
656
- preconfirmedAt?: Timestamp;
542
+ allocationProcessingFeeSeller: string;
657
543
 
658
544
  /**
659
- * @generated from field: optional google.protobuf.Timestamp dvp_created_at = 30;
545
+ * @generated from field: silvana.orderbook.v1.SettlementStatus status = 14;
660
546
  */
661
- dvpCreatedAt?: Timestamp;
547
+ status: SettlementStatus;
662
548
 
663
549
  /**
664
- * @generated from field: optional google.protobuf.Timestamp dvp_accepted_at = 31;
550
+ * @generated from field: optional string error_message = 15;
665
551
  */
666
- dvpAcceptedAt?: Timestamp;
552
+ errorMessage?: string;
667
553
 
668
554
  /**
669
- * @generated from field: optional google.protobuf.Timestamp allocated_at = 32;
555
+ * @generated from field: google.protobuf.Timestamp created_at = 16;
670
556
  */
671
- allocatedAt?: Timestamp;
557
+ createdAt?: Timestamp;
672
558
 
673
559
  /**
674
- * @generated from field: optional google.protobuf.Timestamp settled_at = 33;
560
+ * @generated from field: optional google.protobuf.Timestamp settled_at = 17;
675
561
  */
676
562
  settledAt?: Timestamp;
677
563
 
678
564
  /**
679
- * @generated from field: optional google.protobuf.Timestamp cancelled_at = 34;
565
+ * @generated from field: optional google.protobuf.Timestamp cancelled_at = 18;
680
566
  */
681
567
  cancelledAt?: Timestamp;
682
568
 
683
569
  /**
684
- * @generated from field: optional google.protobuf.Timestamp failed_at = 35;
570
+ * @generated from field: optional google.protobuf.Timestamp failed_at = 19;
685
571
  */
686
572
  failedAt?: Timestamp;
687
-
688
- /**
689
- * @generated from field: optional string error_message = 36;
690
- */
691
- errorMessage?: string;
692
-
693
- /**
694
- * @generated from field: optional google.protobuf.Struct metadata = 37;
695
- */
696
- metadata?: JsonObject;
697
-
698
- /**
699
- * Fee tracking
700
- *
701
- * DECIMAL(38,10) as string
702
- *
703
- * @generated from field: string buyer_fee = 38;
704
- */
705
- buyerFee: string;
706
-
707
- /**
708
- * DECIMAL(38,10) as string
709
- *
710
- * @generated from field: string seller_fee = 39;
711
- */
712
- sellerFee: string;
713
-
714
- /**
715
- * @generated from field: optional bool buyer_fee_sent = 40;
716
- */
717
- buyerFeeSent?: boolean;
718
-
719
- /**
720
- * @generated from field: optional bool seller_fee_sent = 41;
721
- */
722
- sellerFeeSent?: boolean;
723
-
724
- /**
725
- * @generated from field: optional bool buyer_fee_received = 42;
726
- */
727
- buyerFeeReceived?: boolean;
728
-
729
- /**
730
- * @generated from field: optional bool seller_fee_received = 43;
731
- */
732
- sellerFeeReceived?: boolean;
733
573
  };
734
574
 
735
575
  /**
@@ -737,7 +577,7 @@ export type SettlementProposal = Message<"silvana.orderbook.v1.SettlementProposa
737
577
  * Use `create(SettlementProposalSchema)` to create a new message.
738
578
  */
739
579
  export const SettlementProposalSchema: GenMessage<SettlementProposal> = /*@__PURE__*/
740
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 7);
580
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 5);
741
581
 
742
582
  /**
743
583
  * Order match message
@@ -787,10 +627,10 @@ export type OrderMatch = Message<"silvana.orderbook.v1.OrderMatch"> & {
787
627
  * Use `create(OrderMatchSchema)` to create a new message.
788
628
  */
789
629
  export const OrderMatchSchema: GenMessage<OrderMatch> = /*@__PURE__*/
790
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 8);
630
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 6);
791
631
 
792
632
  /**
793
- * Settlement (completed) message
633
+ * Settlement (completed) message - audit trail for completed settlements
794
634
  *
795
635
  * @generated from message silvana.orderbook.v1.Settlement
796
636
  */
@@ -824,51 +664,85 @@ export type Settlement = Message<"silvana.orderbook.v1.Settlement"> & {
824
664
  */
825
665
  seller: string;
826
666
 
667
+ /**
668
+ * @generated from field: string base_instrument = 6;
669
+ */
670
+ baseInstrument: string;
671
+
672
+ /**
673
+ * @generated from field: string quote_instrument = 7;
674
+ */
675
+ quoteInstrument: string;
676
+
827
677
  /**
828
678
  * DECIMAL(38,10) as string
829
679
  *
830
- * @generated from field: string base_quantity = 6;
680
+ * @generated from field: string base_quantity = 8;
831
681
  */
832
682
  baseQuantity: string;
833
683
 
834
684
  /**
835
685
  * DECIMAL(38,10) as string
836
686
  *
837
- * @generated from field: string quote_quantity = 7;
687
+ * @generated from field: string quote_quantity = 9;
838
688
  */
839
689
  quoteQuantity: string;
840
690
 
841
691
  /**
842
692
  * DECIMAL(38,10) as string
843
693
  *
844
- * @generated from field: string settlement_price = 8;
694
+ * @generated from field: string settlement_price = 10;
845
695
  */
846
696
  settlementPrice: string;
847
697
 
848
698
  /**
849
- * @generated from field: string settled_dvp_cid = 9;
699
+ * Fees paid (copied from proposal for audit trail)
700
+ *
701
+ * DECIMAL(38,10) as string
702
+ *
703
+ * @generated from field: string dvp_processing_fee_buyer = 11;
850
704
  */
851
- settledDvpCid: string;
705
+ dvpProcessingFeeBuyer: string;
852
706
 
853
707
  /**
854
- * @generated from field: string settlement_update_id = 10;
708
+ * DECIMAL(38,10) as string
709
+ *
710
+ * @generated from field: string dvp_processing_fee_seller = 12;
855
711
  */
856
- settlementUpdateId: string;
712
+ dvpProcessingFeeSeller: string;
857
713
 
858
714
  /**
859
- * @generated from field: google.protobuf.Timestamp settled_at = 11;
715
+ * DECIMAL(38,10) as string
716
+ *
717
+ * @generated from field: string allocation_processing_fee_buyer = 13;
860
718
  */
861
- settledAt?: Timestamp;
719
+ allocationProcessingFeeBuyer: string;
862
720
 
863
721
  /**
864
- * @generated from field: google.protobuf.Timestamp created_at = 12;
722
+ * DECIMAL(38,10) as string
723
+ *
724
+ * @generated from field: string allocation_processing_fee_seller = 14;
865
725
  */
866
- createdAt?: Timestamp;
726
+ allocationProcessingFeeSeller: string;
867
727
 
868
728
  /**
869
- * @generated from field: optional google.protobuf.Struct metadata = 13;
729
+ * Final SettledDvp contract ID
730
+ *
731
+ * @generated from field: optional string settled_dvp_cid = 15;
870
732
  */
871
- metadata?: JsonObject;
733
+ settledDvpCid?: string;
734
+
735
+ /**
736
+ * Canton update ID
737
+ *
738
+ * @generated from field: optional string settlement_update_id = 16;
739
+ */
740
+ settlementUpdateId?: string;
741
+
742
+ /**
743
+ * @generated from field: google.protobuf.Timestamp settled_at = 17;
744
+ */
745
+ settledAt?: Timestamp;
872
746
  };
873
747
 
874
748
  /**
@@ -876,7 +750,7 @@ export type Settlement = Message<"silvana.orderbook.v1.Settlement"> & {
876
750
  * Use `create(SettlementSchema)` to create a new message.
877
751
  */
878
752
  export const SettlementSchema: GenMessage<Settlement> = /*@__PURE__*/
879
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 9);
753
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 7);
880
754
 
881
755
  /**
882
756
  * Market data message
@@ -943,7 +817,7 @@ export type MarketData = Message<"silvana.orderbook.v1.MarketData"> & {
943
817
  * Use `create(MarketDataSchema)` to create a new message.
944
818
  */
945
819
  export const MarketDataSchema: GenMessage<MarketData> = /*@__PURE__*/
946
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 10);
820
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 8);
947
821
 
948
822
  /**
949
823
  * Get user's orders
@@ -952,11 +826,8 @@ export const MarketDataSchema: GenMessage<MarketData> = /*@__PURE__*/
952
826
  */
953
827
  export type GetOrdersRequest = Message<"silvana.orderbook.v1.GetOrdersRequest"> & {
954
828
  /**
955
- * @generated from field: silvana.orderbook.v1.JWTAuth auth = 1;
956
- */
957
- auth?: JWTAuth;
958
-
959
- /**
829
+ * Auth via gRPC metadata: authorization: Bearer <token>
830
+ *
960
831
  * @generated from field: optional string market_id = 2;
961
832
  */
962
833
  marketId?: string;
@@ -981,13 +852,6 @@ export type GetOrdersRequest = Message<"silvana.orderbook.v1.GetOrdersRequest">
981
852
  */
982
853
  offset?: number;
983
854
 
984
- /**
985
- * Alternative auth for external accounts
986
- *
987
- * @generated from field: optional silvana.orderbook.v1.ExternalAuth external_auth = 10;
988
- */
989
- externalAuth?: ExternalAuth;
990
-
991
855
  /**
992
856
  * Liquidity provider filtering (returns orders from LP parties)
993
857
  *
@@ -1010,7 +874,7 @@ export type GetOrdersRequest = Message<"silvana.orderbook.v1.GetOrdersRequest">
1010
874
  * Use `create(GetOrdersRequestSchema)` to create a new message.
1011
875
  */
1012
876
  export const GetOrdersRequestSchema: GenMessage<GetOrdersRequest> = /*@__PURE__*/
1013
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 11);
877
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 9);
1014
878
 
1015
879
  /**
1016
880
  * @generated from message silvana.orderbook.v1.GetOrdersResponse
@@ -1042,7 +906,7 @@ export type GetOrdersResponse = Message<"silvana.orderbook.v1.GetOrdersResponse"
1042
906
  * Use `create(GetOrdersResponseSchema)` to create a new message.
1043
907
  */
1044
908
  export const GetOrdersResponseSchema: GenMessage<GetOrdersResponse> = /*@__PURE__*/
1045
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 12);
909
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 10);
1046
910
 
1047
911
  /**
1048
912
  * Get orderbook depth (aggregated, no user details)
@@ -1051,11 +915,8 @@ export const GetOrdersResponseSchema: GenMessage<GetOrdersResponse> = /*@__PURE_
1051
915
  */
1052
916
  export type GetOrderbookDepthRequest = Message<"silvana.orderbook.v1.GetOrderbookDepthRequest"> & {
1053
917
  /**
1054
- * @generated from field: silvana.orderbook.v1.JWTAuth auth = 1;
1055
- */
1056
- auth?: JWTAuth;
1057
-
1058
- /**
918
+ * Auth via gRPC metadata: authorization: Bearer <token>
919
+ *
1059
920
  * @generated from field: string market_id = 2;
1060
921
  */
1061
922
  marketId: string;
@@ -1066,13 +927,6 @@ export type GetOrderbookDepthRequest = Message<"silvana.orderbook.v1.GetOrderboo
1066
927
  * @generated from field: optional uint32 depth = 3;
1067
928
  */
1068
929
  depth?: number;
1069
-
1070
- /**
1071
- * Alternative auth for external accounts
1072
- *
1073
- * @generated from field: optional silvana.orderbook.v1.ExternalAuth external_auth = 10;
1074
- */
1075
- externalAuth?: ExternalAuth;
1076
930
  };
1077
931
 
1078
932
  /**
@@ -1080,7 +934,7 @@ export type GetOrderbookDepthRequest = Message<"silvana.orderbook.v1.GetOrderboo
1080
934
  * Use `create(GetOrderbookDepthRequestSchema)` to create a new message.
1081
935
  */
1082
936
  export const GetOrderbookDepthRequestSchema: GenMessage<GetOrderbookDepthRequest> = /*@__PURE__*/
1083
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 13);
937
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 11);
1084
938
 
1085
939
  /**
1086
940
  * @generated from message silvana.orderbook.v1.GetOrderbookDepthResponse
@@ -1107,7 +961,7 @@ export type GetOrderbookDepthResponse = Message<"silvana.orderbook.v1.GetOrderbo
1107
961
  * Use `create(GetOrderbookDepthResponseSchema)` to create a new message.
1108
962
  */
1109
963
  export const GetOrderbookDepthResponseSchema: GenMessage<GetOrderbookDepthResponse> = /*@__PURE__*/
1110
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 14);
964
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 12);
1111
965
 
1112
966
  /**
1113
967
  * Get user's settlement proposals
@@ -1116,11 +970,8 @@ export const GetOrderbookDepthResponseSchema: GenMessage<GetOrderbookDepthRespon
1116
970
  */
1117
971
  export type GetSettlementProposalsRequest = Message<"silvana.orderbook.v1.GetSettlementProposalsRequest"> & {
1118
972
  /**
1119
- * @generated from field: silvana.orderbook.v1.JWTAuth auth = 1;
1120
- */
1121
- auth?: JWTAuth;
1122
-
1123
- /**
973
+ * Auth via gRPC metadata: authorization: Bearer <token>
974
+ *
1124
975
  * @generated from field: optional string market_id = 2;
1125
976
  */
1126
977
  marketId?: string;
@@ -1139,13 +990,6 @@ export type GetSettlementProposalsRequest = Message<"silvana.orderbook.v1.GetSet
1139
990
  * @generated from field: optional uint32 offset = 5;
1140
991
  */
1141
992
  offset?: number;
1142
-
1143
- /**
1144
- * Alternative auth for external accounts
1145
- *
1146
- * @generated from field: optional silvana.orderbook.v1.ExternalAuth external_auth = 10;
1147
- */
1148
- externalAuth?: ExternalAuth;
1149
993
  };
1150
994
 
1151
995
  /**
@@ -1153,7 +997,7 @@ export type GetSettlementProposalsRequest = Message<"silvana.orderbook.v1.GetSet
1153
997
  * Use `create(GetSettlementProposalsRequestSchema)` to create a new message.
1154
998
  */
1155
999
  export const GetSettlementProposalsRequestSchema: GenMessage<GetSettlementProposalsRequest> = /*@__PURE__*/
1156
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 15);
1000
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 13);
1157
1001
 
1158
1002
  /**
1159
1003
  * @generated from message silvana.orderbook.v1.GetSettlementProposalsResponse
@@ -1185,7 +1029,7 @@ export type GetSettlementProposalsResponse = Message<"silvana.orderbook.v1.GetSe
1185
1029
  * Use `create(GetSettlementProposalsResponseSchema)` to create a new message.
1186
1030
  */
1187
1031
  export const GetSettlementProposalsResponseSchema: GenMessage<GetSettlementProposalsResponse> = /*@__PURE__*/
1188
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 16);
1032
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 14);
1189
1033
 
1190
1034
  /**
1191
1035
  * Get a single settlement proposal by ID
@@ -1194,23 +1038,13 @@ export const GetSettlementProposalsResponseSchema: GenMessage<GetSettlementPropo
1194
1038
  */
1195
1039
  export type GetSettlementProposalRequest = Message<"silvana.orderbook.v1.GetSettlementProposalRequest"> & {
1196
1040
  /**
1197
- * @generated from field: silvana.orderbook.v1.JWTAuth auth = 1;
1198
- */
1199
- auth?: JWTAuth;
1200
-
1201
- /**
1041
+ * Auth via gRPC metadata: authorization: Bearer <token>
1042
+ *
1202
1043
  * UUID v7
1203
1044
  *
1204
1045
  * @generated from field: string proposal_id = 2;
1205
1046
  */
1206
1047
  proposalId: string;
1207
-
1208
- /**
1209
- * Alternative auth for external accounts
1210
- *
1211
- * @generated from field: optional silvana.orderbook.v1.ExternalAuth external_auth = 10;
1212
- */
1213
- externalAuth?: ExternalAuth;
1214
1048
  };
1215
1049
 
1216
1050
  /**
@@ -1218,7 +1052,7 @@ export type GetSettlementProposalRequest = Message<"silvana.orderbook.v1.GetSett
1218
1052
  * Use `create(GetSettlementProposalRequestSchema)` to create a new message.
1219
1053
  */
1220
1054
  export const GetSettlementProposalRequestSchema: GenMessage<GetSettlementProposalRequest> = /*@__PURE__*/
1221
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 17);
1055
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 15);
1222
1056
 
1223
1057
  /**
1224
1058
  * @generated from message silvana.orderbook.v1.GetSettlementProposalResponse
@@ -1245,7 +1079,7 @@ export type GetSettlementProposalResponse = Message<"silvana.orderbook.v1.GetSet
1245
1079
  * Use `create(GetSettlementProposalResponseSchema)` to create a new message.
1246
1080
  */
1247
1081
  export const GetSettlementProposalResponseSchema: GenMessage<GetSettlementProposalResponse> = /*@__PURE__*/
1248
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 18);
1082
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 16);
1249
1083
 
1250
1084
  /**
1251
1085
  * Get available instruments (filtered by JWT permissions)
@@ -1254,11 +1088,8 @@ export const GetSettlementProposalResponseSchema: GenMessage<GetSettlementPropos
1254
1088
  */
1255
1089
  export type GetInstrumentsRequest = Message<"silvana.orderbook.v1.GetInstrumentsRequest"> & {
1256
1090
  /**
1257
- * @generated from field: silvana.orderbook.v1.JWTAuth auth = 1;
1258
- */
1259
- auth?: JWTAuth;
1260
-
1261
- /**
1091
+ * Auth via gRPC metadata: authorization: Bearer <token>
1092
+ *
1262
1093
  * @generated from field: optional string instrument_type = 2;
1263
1094
  */
1264
1095
  instrumentType?: string;
@@ -1272,13 +1103,6 @@ export type GetInstrumentsRequest = Message<"silvana.orderbook.v1.GetInstruments
1272
1103
  * @generated from field: optional uint32 offset = 4;
1273
1104
  */
1274
1105
  offset?: number;
1275
-
1276
- /**
1277
- * Alternative auth for external accounts
1278
- *
1279
- * @generated from field: optional silvana.orderbook.v1.ExternalAuth external_auth = 10;
1280
- */
1281
- externalAuth?: ExternalAuth;
1282
1106
  };
1283
1107
 
1284
1108
  /**
@@ -1286,7 +1110,7 @@ export type GetInstrumentsRequest = Message<"silvana.orderbook.v1.GetInstruments
1286
1110
  * Use `create(GetInstrumentsRequestSchema)` to create a new message.
1287
1111
  */
1288
1112
  export const GetInstrumentsRequestSchema: GenMessage<GetInstrumentsRequest> = /*@__PURE__*/
1289
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 19);
1113
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 17);
1290
1114
 
1291
1115
  /**
1292
1116
  * @generated from message silvana.orderbook.v1.GetInstrumentsResponse
@@ -1318,7 +1142,7 @@ export type GetInstrumentsResponse = Message<"silvana.orderbook.v1.GetInstrument
1318
1142
  * Use `create(GetInstrumentsResponseSchema)` to create a new message.
1319
1143
  */
1320
1144
  export const GetInstrumentsResponseSchema: GenMessage<GetInstrumentsResponse> = /*@__PURE__*/
1321
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 20);
1145
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 18);
1322
1146
 
1323
1147
  /**
1324
1148
  * Get available markets (filtered by JWT permissions)
@@ -1327,11 +1151,8 @@ export const GetInstrumentsResponseSchema: GenMessage<GetInstrumentsResponse> =
1327
1151
  */
1328
1152
  export type GetMarketsRequest = Message<"silvana.orderbook.v1.GetMarketsRequest"> & {
1329
1153
  /**
1330
- * @generated from field: silvana.orderbook.v1.JWTAuth auth = 1;
1331
- */
1332
- auth?: JWTAuth;
1333
-
1334
- /**
1154
+ * Auth via gRPC metadata: authorization: Bearer <token>
1155
+ *
1335
1156
  * @generated from field: optional silvana.orderbook.v1.MarketType market_type = 2;
1336
1157
  */
1337
1158
  marketType?: MarketType;
@@ -1360,13 +1181,6 @@ export type GetMarketsRequest = Message<"silvana.orderbook.v1.GetMarketsRequest"
1360
1181
  * @generated from field: optional uint32 offset = 7;
1361
1182
  */
1362
1183
  offset?: number;
1363
-
1364
- /**
1365
- * Alternative auth for external accounts
1366
- *
1367
- * @generated from field: optional silvana.orderbook.v1.ExternalAuth external_auth = 10;
1368
- */
1369
- externalAuth?: ExternalAuth;
1370
1184
  };
1371
1185
 
1372
1186
  /**
@@ -1374,7 +1188,7 @@ export type GetMarketsRequest = Message<"silvana.orderbook.v1.GetMarketsRequest"
1374
1188
  * Use `create(GetMarketsRequestSchema)` to create a new message.
1375
1189
  */
1376
1190
  export const GetMarketsRequestSchema: GenMessage<GetMarketsRequest> = /*@__PURE__*/
1377
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 21);
1191
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 19);
1378
1192
 
1379
1193
  /**
1380
1194
  * @generated from message silvana.orderbook.v1.GetMarketsResponse
@@ -1406,7 +1220,7 @@ export type GetMarketsResponse = Message<"silvana.orderbook.v1.GetMarketsRespons
1406
1220
  * Use `create(GetMarketsResponseSchema)` to create a new message.
1407
1221
  */
1408
1222
  export const GetMarketsResponseSchema: GenMessage<GetMarketsResponse> = /*@__PURE__*/
1409
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 22);
1223
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 20);
1410
1224
 
1411
1225
  /**
1412
1226
  * Get user's order history
@@ -1415,11 +1229,8 @@ export const GetMarketsResponseSchema: GenMessage<GetMarketsResponse> = /*@__PUR
1415
1229
  */
1416
1230
  export type GetOrderHistoryRequest = Message<"silvana.orderbook.v1.GetOrderHistoryRequest"> & {
1417
1231
  /**
1418
- * @generated from field: silvana.orderbook.v1.JWTAuth auth = 1;
1419
- */
1420
- auth?: JWTAuth;
1421
-
1422
- /**
1232
+ * Auth via gRPC metadata: authorization: Bearer <token>
1233
+ *
1423
1234
  * @generated from field: optional string market_id = 2;
1424
1235
  */
1425
1236
  marketId?: string;
@@ -1443,13 +1254,6 @@ export type GetOrderHistoryRequest = Message<"silvana.orderbook.v1.GetOrderHisto
1443
1254
  * @generated from field: optional uint32 offset = 6;
1444
1255
  */
1445
1256
  offset?: number;
1446
-
1447
- /**
1448
- * Alternative auth for external accounts
1449
- *
1450
- * @generated from field: optional silvana.orderbook.v1.ExternalAuth external_auth = 10;
1451
- */
1452
- externalAuth?: ExternalAuth;
1453
1257
  };
1454
1258
 
1455
1259
  /**
@@ -1457,7 +1261,7 @@ export type GetOrderHistoryRequest = Message<"silvana.orderbook.v1.GetOrderHisto
1457
1261
  * Use `create(GetOrderHistoryRequestSchema)` to create a new message.
1458
1262
  */
1459
1263
  export const GetOrderHistoryRequestSchema: GenMessage<GetOrderHistoryRequest> = /*@__PURE__*/
1460
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 23);
1264
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 21);
1461
1265
 
1462
1266
  /**
1463
1267
  * @generated from message silvana.orderbook.v1.GetOrderHistoryResponse
@@ -1489,7 +1293,7 @@ export type GetOrderHistoryResponse = Message<"silvana.orderbook.v1.GetOrderHist
1489
1293
  * Use `create(GetOrderHistoryResponseSchema)` to create a new message.
1490
1294
  */
1491
1295
  export const GetOrderHistoryResponseSchema: GenMessage<GetOrderHistoryResponse> = /*@__PURE__*/
1492
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 24);
1296
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 22);
1493
1297
 
1494
1298
  /**
1495
1299
  * Get market data (filtered by JWT permissions)
@@ -1498,23 +1302,13 @@ export const GetOrderHistoryResponseSchema: GenMessage<GetOrderHistoryResponse>
1498
1302
  */
1499
1303
  export type GetMarketDataRequest = Message<"silvana.orderbook.v1.GetMarketDataRequest"> & {
1500
1304
  /**
1501
- * @generated from field: silvana.orderbook.v1.JWTAuth auth = 1;
1502
- */
1503
- auth?: JWTAuth;
1504
-
1505
- /**
1305
+ * Auth via gRPC metadata: authorization: Bearer <token>
1306
+ *
1506
1307
  * Empty = all accessible markets
1507
1308
  *
1508
1309
  * @generated from field: repeated string market_ids = 2;
1509
1310
  */
1510
1311
  marketIds: string[];
1511
-
1512
- /**
1513
- * Alternative auth for external accounts
1514
- *
1515
- * @generated from field: optional silvana.orderbook.v1.ExternalAuth external_auth = 10;
1516
- */
1517
- externalAuth?: ExternalAuth;
1518
1312
  };
1519
1313
 
1520
1314
  /**
@@ -1522,7 +1316,7 @@ export type GetMarketDataRequest = Message<"silvana.orderbook.v1.GetMarketDataRe
1522
1316
  * Use `create(GetMarketDataRequestSchema)` to create a new message.
1523
1317
  */
1524
1318
  export const GetMarketDataRequestSchema: GenMessage<GetMarketDataRequest> = /*@__PURE__*/
1525
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 25);
1319
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 23);
1526
1320
 
1527
1321
  /**
1528
1322
  * @generated from message silvana.orderbook.v1.GetMarketDataResponse
@@ -1549,7 +1343,7 @@ export type GetMarketDataResponse = Message<"silvana.orderbook.v1.GetMarketDataR
1549
1343
  * Use `create(GetMarketDataResponseSchema)` to create a new message.
1550
1344
  */
1551
1345
  export const GetMarketDataResponseSchema: GenMessage<GetMarketDataResponse> = /*@__PURE__*/
1552
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 26);
1346
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 24);
1553
1347
 
1554
1348
  /**
1555
1349
  * Get user's settlements (completed)
@@ -1558,11 +1352,8 @@ export const GetMarketDataResponseSchema: GenMessage<GetMarketDataResponse> = /*
1558
1352
  */
1559
1353
  export type GetSettlementsRequest = Message<"silvana.orderbook.v1.GetSettlementsRequest"> & {
1560
1354
  /**
1561
- * @generated from field: silvana.orderbook.v1.JWTAuth auth = 1;
1562
- */
1563
- auth?: JWTAuth;
1564
-
1565
- /**
1355
+ * Auth via gRPC metadata: authorization: Bearer <token>
1356
+ *
1566
1357
  * @generated from field: optional string market_id = 2;
1567
1358
  */
1568
1359
  marketId?: string;
@@ -1586,13 +1377,6 @@ export type GetSettlementsRequest = Message<"silvana.orderbook.v1.GetSettlements
1586
1377
  * @generated from field: optional uint32 offset = 6;
1587
1378
  */
1588
1379
  offset?: number;
1589
-
1590
- /**
1591
- * Alternative auth for external accounts
1592
- *
1593
- * @generated from field: optional silvana.orderbook.v1.ExternalAuth external_auth = 10;
1594
- */
1595
- externalAuth?: ExternalAuth;
1596
1380
  };
1597
1381
 
1598
1382
  /**
@@ -1600,7 +1384,7 @@ export type GetSettlementsRequest = Message<"silvana.orderbook.v1.GetSettlements
1600
1384
  * Use `create(GetSettlementsRequestSchema)` to create a new message.
1601
1385
  */
1602
1386
  export const GetSettlementsRequestSchema: GenMessage<GetSettlementsRequest> = /*@__PURE__*/
1603
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 27);
1387
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 25);
1604
1388
 
1605
1389
  /**
1606
1390
  * @generated from message silvana.orderbook.v1.GetSettlementsResponse
@@ -1632,7 +1416,7 @@ export type GetSettlementsResponse = Message<"silvana.orderbook.v1.GetSettlement
1632
1416
  * Use `create(GetSettlementsResponseSchema)` to create a new message.
1633
1417
  */
1634
1418
  export const GetSettlementsResponseSchema: GenMessage<GetSettlementsResponse> = /*@__PURE__*/
1635
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 28);
1419
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 26);
1636
1420
 
1637
1421
  /**
1638
1422
  * Subscribe to orderbook updates (streaming)
@@ -1641,11 +1425,8 @@ export const GetSettlementsResponseSchema: GenMessage<GetSettlementsResponse> =
1641
1425
  */
1642
1426
  export type SubscribeOrderbookRequest = Message<"silvana.orderbook.v1.SubscribeOrderbookRequest"> & {
1643
1427
  /**
1644
- * @generated from field: silvana.orderbook.v1.JWTAuth auth = 1;
1645
- */
1646
- auth?: JWTAuth;
1647
-
1648
- /**
1428
+ * Auth via gRPC metadata: authorization: Bearer <token>
1429
+ *
1649
1430
  * @generated from field: string market_id = 2;
1650
1431
  */
1651
1432
  marketId: string;
@@ -1656,13 +1437,6 @@ export type SubscribeOrderbookRequest = Message<"silvana.orderbook.v1.SubscribeO
1656
1437
  * @generated from field: optional uint32 depth = 3;
1657
1438
  */
1658
1439
  depth?: number;
1659
-
1660
- /**
1661
- * Alternative auth for external accounts
1662
- *
1663
- * @generated from field: optional silvana.orderbook.v1.ExternalAuth external_auth = 10;
1664
- */
1665
- externalAuth?: ExternalAuth;
1666
1440
  };
1667
1441
 
1668
1442
  /**
@@ -1670,7 +1444,7 @@ export type SubscribeOrderbookRequest = Message<"silvana.orderbook.v1.SubscribeO
1670
1444
  * Use `create(SubscribeOrderbookRequestSchema)` to create a new message.
1671
1445
  */
1672
1446
  export const SubscribeOrderbookRequestSchema: GenMessage<SubscribeOrderbookRequest> = /*@__PURE__*/
1673
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 29);
1447
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 27);
1674
1448
 
1675
1449
  /**
1676
1450
  * Orderbook update event
@@ -1716,7 +1490,7 @@ export type OrderbookUpdate = Message<"silvana.orderbook.v1.OrderbookUpdate"> &
1716
1490
  * Use `create(OrderbookUpdateSchema)` to create a new message.
1717
1491
  */
1718
1492
  export const OrderbookUpdateSchema: GenMessage<OrderbookUpdate> = /*@__PURE__*/
1719
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 30);
1493
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 28);
1720
1494
 
1721
1495
  /**
1722
1496
  * @generated from enum silvana.orderbook.v1.OrderbookUpdate.UpdateType
@@ -1742,7 +1516,7 @@ export enum OrderbookUpdate_UpdateType {
1742
1516
  * Describes the enum silvana.orderbook.v1.OrderbookUpdate.UpdateType.
1743
1517
  */
1744
1518
  export const OrderbookUpdate_UpdateTypeSchema: GenEnum<OrderbookUpdate_UpdateType> = /*@__PURE__*/
1745
- enumDesc(file_proto_silvana_orderbook_v1_orderbook, 30, 0);
1519
+ enumDesc(file_proto_silvana_orderbook_v1_orderbook, 28, 0);
1746
1520
 
1747
1521
  /**
1748
1522
  * Subscribe to user's order updates (streaming)
@@ -1751,21 +1525,11 @@ export const OrderbookUpdate_UpdateTypeSchema: GenEnum<OrderbookUpdate_UpdateTyp
1751
1525
  */
1752
1526
  export type SubscribeOrdersRequest = Message<"silvana.orderbook.v1.SubscribeOrdersRequest"> & {
1753
1527
  /**
1754
- * @generated from field: silvana.orderbook.v1.JWTAuth auth = 1;
1755
- */
1756
- auth?: JWTAuth;
1757
-
1758
- /**
1528
+ * Auth via gRPC metadata: authorization: Bearer <token>
1529
+ *
1759
1530
  * @generated from field: optional string market_id = 2;
1760
1531
  */
1761
1532
  marketId?: string;
1762
-
1763
- /**
1764
- * Alternative auth for external accounts
1765
- *
1766
- * @generated from field: optional silvana.orderbook.v1.ExternalAuth external_auth = 10;
1767
- */
1768
- externalAuth?: ExternalAuth;
1769
1533
  };
1770
1534
 
1771
1535
  /**
@@ -1773,7 +1537,7 @@ export type SubscribeOrdersRequest = Message<"silvana.orderbook.v1.SubscribeOrde
1773
1537
  * Use `create(SubscribeOrdersRequestSchema)` to create a new message.
1774
1538
  */
1775
1539
  export const SubscribeOrdersRequestSchema: GenMessage<SubscribeOrdersRequest> = /*@__PURE__*/
1776
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 31);
1540
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 29);
1777
1541
 
1778
1542
  /**
1779
1543
  * Order update event
@@ -1809,7 +1573,7 @@ export type OrderUpdate = Message<"silvana.orderbook.v1.OrderUpdate"> & {
1809
1573
  * Use `create(OrderUpdateSchema)` to create a new message.
1810
1574
  */
1811
1575
  export const OrderUpdateSchema: GenMessage<OrderUpdate> = /*@__PURE__*/
1812
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 32);
1576
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 30);
1813
1577
 
1814
1578
  /**
1815
1579
  * @generated from enum silvana.orderbook.v1.OrderUpdate.EventType
@@ -1855,7 +1619,7 @@ export enum OrderUpdate_EventType {
1855
1619
  * Describes the enum silvana.orderbook.v1.OrderUpdate.EventType.
1856
1620
  */
1857
1621
  export const OrderUpdate_EventTypeSchema: GenEnum<OrderUpdate_EventType> = /*@__PURE__*/
1858
- enumDesc(file_proto_silvana_orderbook_v1_orderbook, 32, 0);
1622
+ enumDesc(file_proto_silvana_orderbook_v1_orderbook, 30, 0);
1859
1623
 
1860
1624
  /**
1861
1625
  * Subscribe to user's settlement updates (streaming)
@@ -1864,21 +1628,11 @@ export const OrderUpdate_EventTypeSchema: GenEnum<OrderUpdate_EventType> = /*@__
1864
1628
  */
1865
1629
  export type SubscribeSettlementsRequest = Message<"silvana.orderbook.v1.SubscribeSettlementsRequest"> & {
1866
1630
  /**
1867
- * @generated from field: silvana.orderbook.v1.JWTAuth auth = 1;
1868
- */
1869
- auth?: JWTAuth;
1870
-
1871
- /**
1631
+ * Auth via gRPC metadata: authorization: Bearer <token>
1632
+ *
1872
1633
  * @generated from field: optional string market_id = 2;
1873
1634
  */
1874
1635
  marketId?: string;
1875
-
1876
- /**
1877
- * Alternative auth for external accounts
1878
- *
1879
- * @generated from field: optional silvana.orderbook.v1.ExternalAuth external_auth = 10;
1880
- */
1881
- externalAuth?: ExternalAuth;
1882
1636
  };
1883
1637
 
1884
1638
  /**
@@ -1886,10 +1640,10 @@ export type SubscribeSettlementsRequest = Message<"silvana.orderbook.v1.Subscrib
1886
1640
  * Use `create(SubscribeSettlementsRequestSchema)` to create a new message.
1887
1641
  */
1888
1642
  export const SubscribeSettlementsRequestSchema: GenMessage<SubscribeSettlementsRequest> = /*@__PURE__*/
1889
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 33);
1643
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 31);
1890
1644
 
1891
1645
  /**
1892
- * Settlement update event
1646
+ * Settlement update event (for streaming - simplified to status changes)
1893
1647
  *
1894
1648
  * @generated from message silvana.orderbook.v1.SettlementUpdate
1895
1649
  */
@@ -1915,7 +1669,7 @@ export type SettlementUpdate = Message<"silvana.orderbook.v1.SettlementUpdate">
1915
1669
  * Use `create(SettlementUpdateSchema)` to create a new message.
1916
1670
  */
1917
1671
  export const SettlementUpdateSchema: GenMessage<SettlementUpdate> = /*@__PURE__*/
1918
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 34);
1672
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 32);
1919
1673
 
1920
1674
  /**
1921
1675
  * @generated from enum silvana.orderbook.v1.SettlementUpdate.EventType
@@ -1927,63 +1681,46 @@ export enum SettlementUpdate_EventType {
1927
1681
  UNSPECIFIED = 0,
1928
1682
 
1929
1683
  /**
1684
+ * New proposal created
1685
+ *
1930
1686
  * @generated from enum value: EVENT_TYPE_PROPOSAL_CREATED = 1;
1931
1687
  */
1932
1688
  PROPOSAL_CREATED = 1,
1933
1689
 
1934
1690
  /**
1935
- * @generated from enum value: EVENT_TYPE_PRECONFIRMATION_REQUESTED = 2;
1936
- */
1937
- PRECONFIRMATION_REQUESTED = 2,
1938
-
1939
- /**
1940
- * @generated from enum value: EVENT_TYPE_PRECONFIRMED = 3;
1941
- */
1942
- PRECONFIRMED = 3,
1943
-
1944
- /**
1945
- * @generated from enum value: EVENT_TYPE_DVP_CREATED = 4;
1946
- */
1947
- DVP_CREATED = 4,
1948
-
1949
- /**
1950
- * @generated from enum value: EVENT_TYPE_DVP_ACCEPTED = 5;
1951
- */
1952
- DVP_ACCEPTED = 5,
1953
-
1954
- /**
1955
- * @generated from enum value: EVENT_TYPE_ALLOCATED = 6;
1956
- */
1957
- ALLOCATED = 6,
1958
-
1959
- /**
1960
- * @generated from enum value: EVENT_TYPE_SETTLED = 7;
1691
+ * Status changed (pending settled/cancelled/failed)
1692
+ *
1693
+ * @generated from enum value: EVENT_TYPE_STATUS_CHANGED = 2;
1961
1694
  */
1962
- SETTLED = 7,
1695
+ STATUS_CHANGED = 2,
1963
1696
 
1964
1697
  /**
1965
- * @generated from enum value: EVENT_TYPE_FAILED = 8;
1698
+ * Settlement completed
1699
+ *
1700
+ * @generated from enum value: EVENT_TYPE_SETTLED = 3;
1966
1701
  */
1967
- FAILED = 8,
1702
+ SETTLED = 3,
1968
1703
 
1969
1704
  /**
1970
- * @generated from enum value: EVENT_TYPE_CANCELLED = 9;
1705
+ * Settlement failed
1706
+ *
1707
+ * @generated from enum value: EVENT_TYPE_FAILED = 4;
1971
1708
  */
1972
- CANCELLED = 9,
1709
+ FAILED = 4,
1973
1710
 
1974
1711
  /**
1975
- * Generic update (e.g., frontend-initiated changes)
1712
+ * Settlement cancelled
1976
1713
  *
1977
- * @generated from enum value: EVENT_TYPE_UPDATED = 10;
1714
+ * @generated from enum value: EVENT_TYPE_CANCELLED = 5;
1978
1715
  */
1979
- UPDATED = 10,
1716
+ CANCELLED = 5,
1980
1717
  }
1981
1718
 
1982
1719
  /**
1983
1720
  * Describes the enum silvana.orderbook.v1.SettlementUpdate.EventType.
1984
1721
  */
1985
1722
  export const SettlementUpdate_EventTypeSchema: GenEnum<SettlementUpdate_EventType> = /*@__PURE__*/
1986
- enumDesc(file_proto_silvana_orderbook_v1_orderbook, 34, 0);
1723
+ enumDesc(file_proto_silvana_orderbook_v1_orderbook, 32, 0);
1987
1724
 
1988
1725
  /**
1989
1726
  * Submit a new order
@@ -1992,11 +1729,8 @@ export const SettlementUpdate_EventTypeSchema: GenEnum<SettlementUpdate_EventTyp
1992
1729
  */
1993
1730
  export type SubmitOrderRequest = Message<"silvana.orderbook.v1.SubmitOrderRequest"> & {
1994
1731
  /**
1995
- * @generated from field: silvana.orderbook.v1.JWTAuth auth = 1;
1996
- */
1997
- auth?: JWTAuth;
1998
-
1999
- /**
1732
+ * Auth via gRPC metadata: authorization: Bearer <token>
1733
+ *
2000
1734
  * @generated from field: string market_id = 2;
2001
1735
  */
2002
1736
  marketId: string;
@@ -2048,14 +1782,28 @@ export type SubmitOrderRequest = Message<"silvana.orderbook.v1.SubmitOrderReques
2048
1782
  /**
2049
1783
  * @generated from field: optional google.protobuf.Struct metadata = 11;
2050
1784
  */
2051
- metadata?: JsonObject;
1785
+ metadata?: JsonObject;
1786
+
1787
+ /**
1788
+ * Base64-encoded Ed25519 signature for order authentication
1789
+ *
1790
+ * @generated from field: optional string signature = 12;
1791
+ */
1792
+ signature?: string;
1793
+
1794
+ /**
1795
+ * Original signed order data (binary)
1796
+ *
1797
+ * @generated from field: bytes signed_data = 13;
1798
+ */
1799
+ signedData: Uint8Array;
2052
1800
 
2053
1801
  /**
2054
- * Alternative auth for external accounts
1802
+ * Unique nonce per trader for replay protection
2055
1803
  *
2056
- * @generated from field: optional silvana.orderbook.v1.ExternalAuth external_auth = 15;
1804
+ * @generated from field: uint64 nonce = 14;
2057
1805
  */
2058
- externalAuth?: ExternalAuth;
1806
+ nonce: bigint;
2059
1807
  };
2060
1808
 
2061
1809
  /**
@@ -2063,7 +1811,7 @@ export type SubmitOrderRequest = Message<"silvana.orderbook.v1.SubmitOrderReques
2063
1811
  * Use `create(SubmitOrderRequestSchema)` to create a new message.
2064
1812
  */
2065
1813
  export const SubmitOrderRequestSchema: GenMessage<SubmitOrderRequest> = /*@__PURE__*/
2066
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 35);
1814
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 33);
2067
1815
 
2068
1816
  /**
2069
1817
  * @generated from message silvana.orderbook.v1.SubmitOrderResponse
@@ -2090,7 +1838,7 @@ export type SubmitOrderResponse = Message<"silvana.orderbook.v1.SubmitOrderRespo
2090
1838
  * Use `create(SubmitOrderResponseSchema)` to create a new message.
2091
1839
  */
2092
1840
  export const SubmitOrderResponseSchema: GenMessage<SubmitOrderResponse> = /*@__PURE__*/
2093
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 36);
1841
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 34);
2094
1842
 
2095
1843
  /**
2096
1844
  * Cancel an existing order
@@ -2099,21 +1847,11 @@ export const SubmitOrderResponseSchema: GenMessage<SubmitOrderResponse> = /*@__P
2099
1847
  */
2100
1848
  export type CancelOrderRequest = Message<"silvana.orderbook.v1.CancelOrderRequest"> & {
2101
1849
  /**
2102
- * @generated from field: silvana.orderbook.v1.JWTAuth auth = 1;
2103
- */
2104
- auth?: JWTAuth;
2105
-
2106
- /**
1850
+ * Auth via gRPC metadata: authorization: Bearer <token>
1851
+ *
2107
1852
  * @generated from field: uint64 order_id = 2;
2108
1853
  */
2109
1854
  orderId: bigint;
2110
-
2111
- /**
2112
- * Alternative auth for external accounts
2113
- *
2114
- * @generated from field: optional silvana.orderbook.v1.ExternalAuth external_auth = 10;
2115
- */
2116
- externalAuth?: ExternalAuth;
2117
1855
  };
2118
1856
 
2119
1857
  /**
@@ -2121,7 +1859,7 @@ export type CancelOrderRequest = Message<"silvana.orderbook.v1.CancelOrderReques
2121
1859
  * Use `create(CancelOrderRequestSchema)` to create a new message.
2122
1860
  */
2123
1861
  export const CancelOrderRequestSchema: GenMessage<CancelOrderRequest> = /*@__PURE__*/
2124
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 37);
1862
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 35);
2125
1863
 
2126
1864
  /**
2127
1865
  * @generated from message silvana.orderbook.v1.CancelOrderResponse
@@ -2148,7 +1886,7 @@ export type CancelOrderResponse = Message<"silvana.orderbook.v1.CancelOrderRespo
2148
1886
  * Use `create(CancelOrderResponseSchema)` to create a new message.
2149
1887
  */
2150
1888
  export const CancelOrderResponseSchema: GenMessage<CancelOrderResponse> = /*@__PURE__*/
2151
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 38);
1889
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 36);
2152
1890
 
2153
1891
  /**
2154
1892
  * Create a new party (operator, registry, or trader)
@@ -2157,11 +1895,8 @@ export const CancelOrderResponseSchema: GenMessage<CancelOrderResponse> = /*@__P
2157
1895
  */
2158
1896
  export type CreatePartyRequest = Message<"silvana.orderbook.v1.CreatePartyRequest"> & {
2159
1897
  /**
2160
- * @generated from field: silvana.orderbook.v1.JWTAuth auth = 1;
2161
- */
2162
- auth?: JWTAuth;
2163
-
2164
- /**
1898
+ * Auth via gRPC metadata: authorization: Bearer <token>
1899
+ *
2165
1900
  * @generated from field: string party_id = 2;
2166
1901
  */
2167
1902
  partyId: string;
@@ -2233,18 +1968,18 @@ export type CreatePartyRequest = Message<"silvana.orderbook.v1.CreatePartyReques
2233
1968
  inviteCode?: string;
2234
1969
 
2235
1970
  /**
2236
- * Source: loop_wallet, form, supa_wallet, admin
1971
+ * Source: loop_wallet, form, supa_wallet, admin, onboard, zoro_wallet
2237
1972
  *
2238
1973
  * @generated from field: optional string source = 13;
2239
1974
  */
2240
1975
  source?: string;
2241
1976
 
2242
1977
  /**
2243
- * Alternative auth for external accounts
1978
+ * AES-256-GCM encrypted private key
2244
1979
  *
2245
- * @generated from field: optional silvana.orderbook.v1.ExternalAuth external_auth = 15;
1980
+ * @generated from field: optional string encrypted_private_key = 14;
2246
1981
  */
2247
- externalAuth?: ExternalAuth;
1982
+ encryptedPrivateKey?: string;
2248
1983
 
2249
1984
  /**
2250
1985
  * Liquidity provider fields (creates/links LP entry when party is created)
@@ -2268,7 +2003,7 @@ export type CreatePartyRequest = Message<"silvana.orderbook.v1.CreatePartyReques
2268
2003
  * Use `create(CreatePartyRequestSchema)` to create a new message.
2269
2004
  */
2270
2005
  export const CreatePartyRequestSchema: GenMessage<CreatePartyRequest> = /*@__PURE__*/
2271
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 39);
2006
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 37);
2272
2007
 
2273
2008
  /**
2274
2009
  * @generated from message silvana.orderbook.v1.CreatePartyResponse
@@ -2295,7 +2030,7 @@ export type CreatePartyResponse = Message<"silvana.orderbook.v1.CreatePartyRespo
2295
2030
  * Use `create(CreatePartyResponseSchema)` to create a new message.
2296
2031
  */
2297
2032
  export const CreatePartyResponseSchema: GenMessage<CreatePartyResponse> = /*@__PURE__*/
2298
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 40);
2033
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 38);
2299
2034
 
2300
2035
  /**
2301
2036
  * Update an existing party (admin operation)
@@ -2304,11 +2039,8 @@ export const CreatePartyResponseSchema: GenMessage<CreatePartyResponse> = /*@__P
2304
2039
  */
2305
2040
  export type UpdatePartyRequest = Message<"silvana.orderbook.v1.UpdatePartyRequest"> & {
2306
2041
  /**
2307
- * @generated from field: silvana.orderbook.v1.JWTAuth auth = 1;
2308
- */
2309
- auth?: JWTAuth;
2310
-
2311
- /**
2042
+ * Auth via gRPC metadata: authorization: Bearer <token>
2043
+ *
2312
2044
  * Required - which party to update
2313
2045
  *
2314
2046
  * @generated from field: string party_id = 2;
@@ -2388,11 +2120,11 @@ export type UpdatePartyRequest = Message<"silvana.orderbook.v1.UpdatePartyReques
2388
2120
  source?: string;
2389
2121
 
2390
2122
  /**
2391
- * Alternative auth for external accounts
2123
+ * AES-256-GCM encrypted private key
2392
2124
  *
2393
- * @generated from field: optional silvana.orderbook.v1.ExternalAuth external_auth = 15;
2125
+ * @generated from field: optional string encrypted_private_key = 15;
2394
2126
  */
2395
- externalAuth?: ExternalAuth;
2127
+ encryptedPrivateKey?: string;
2396
2128
  };
2397
2129
 
2398
2130
  /**
@@ -2400,7 +2132,7 @@ export type UpdatePartyRequest = Message<"silvana.orderbook.v1.UpdatePartyReques
2400
2132
  * Use `create(UpdatePartyRequestSchema)` to create a new message.
2401
2133
  */
2402
2134
  export const UpdatePartyRequestSchema: GenMessage<UpdatePartyRequest> = /*@__PURE__*/
2403
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 41);
2135
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 39);
2404
2136
 
2405
2137
  /**
2406
2138
  * @generated from message silvana.orderbook.v1.UpdatePartyResponse
@@ -2427,7 +2159,7 @@ export type UpdatePartyResponse = Message<"silvana.orderbook.v1.UpdatePartyRespo
2427
2159
  * Use `create(UpdatePartyResponseSchema)` to create a new message.
2428
2160
  */
2429
2161
  export const UpdatePartyResponseSchema: GenMessage<UpdatePartyResponse> = /*@__PURE__*/
2430
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 42);
2162
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 40);
2431
2163
 
2432
2164
  /**
2433
2165
  * Deactivate a party (soft delete - admin operation)
@@ -2436,11 +2168,8 @@ export const UpdatePartyResponseSchema: GenMessage<UpdatePartyResponse> = /*@__P
2436
2168
  */
2437
2169
  export type DeactivatePartyRequest = Message<"silvana.orderbook.v1.DeactivatePartyRequest"> & {
2438
2170
  /**
2439
- * @generated from field: silvana.orderbook.v1.JWTAuth auth = 1;
2440
- */
2441
- auth?: JWTAuth;
2442
-
2443
- /**
2171
+ * Auth via gRPC metadata: authorization: Bearer <token>
2172
+ *
2444
2173
  * @generated from field: string party_id = 2;
2445
2174
  */
2446
2175
  partyId: string;
@@ -2456,13 +2185,6 @@ export type DeactivatePartyRequest = Message<"silvana.orderbook.v1.DeactivatePar
2456
2185
  * @generated from field: string change_reason = 4;
2457
2186
  */
2458
2187
  changeReason: string;
2459
-
2460
- /**
2461
- * Alternative auth for external accounts
2462
- *
2463
- * @generated from field: optional silvana.orderbook.v1.ExternalAuth external_auth = 10;
2464
- */
2465
- externalAuth?: ExternalAuth;
2466
2188
  };
2467
2189
 
2468
2190
  /**
@@ -2470,7 +2192,7 @@ export type DeactivatePartyRequest = Message<"silvana.orderbook.v1.DeactivatePar
2470
2192
  * Use `create(DeactivatePartyRequestSchema)` to create a new message.
2471
2193
  */
2472
2194
  export const DeactivatePartyRequestSchema: GenMessage<DeactivatePartyRequest> = /*@__PURE__*/
2473
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 43);
2195
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 41);
2474
2196
 
2475
2197
  /**
2476
2198
  * @generated from message silvana.orderbook.v1.DeactivatePartyResponse
@@ -2497,7 +2219,7 @@ export type DeactivatePartyResponse = Message<"silvana.orderbook.v1.DeactivatePa
2497
2219
  * Use `create(DeactivatePartyResponseSchema)` to create a new message.
2498
2220
  */
2499
2221
  export const DeactivatePartyResponseSchema: GenMessage<DeactivatePartyResponse> = /*@__PURE__*/
2500
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 44);
2222
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 42);
2501
2223
 
2502
2224
  /**
2503
2225
  * Get party change history (audit trail)
@@ -2506,11 +2228,8 @@ export const DeactivatePartyResponseSchema: GenMessage<DeactivatePartyResponse>
2506
2228
  */
2507
2229
  export type GetPartyHistoryRequest = Message<"silvana.orderbook.v1.GetPartyHistoryRequest"> & {
2508
2230
  /**
2509
- * @generated from field: silvana.orderbook.v1.JWTAuth auth = 1;
2510
- */
2511
- auth?: JWTAuth;
2512
-
2513
- /**
2231
+ * Auth via gRPC metadata: authorization: Bearer <token>
2232
+ *
2514
2233
  * @generated from field: string party_id = 2;
2515
2234
  */
2516
2235
  partyId: string;
@@ -2524,13 +2243,6 @@ export type GetPartyHistoryRequest = Message<"silvana.orderbook.v1.GetPartyHisto
2524
2243
  * @generated from field: optional uint32 offset = 4;
2525
2244
  */
2526
2245
  offset?: number;
2527
-
2528
- /**
2529
- * Alternative auth for external accounts
2530
- *
2531
- * @generated from field: optional silvana.orderbook.v1.ExternalAuth external_auth = 10;
2532
- */
2533
- externalAuth?: ExternalAuth;
2534
2246
  };
2535
2247
 
2536
2248
  /**
@@ -2538,7 +2250,7 @@ export type GetPartyHistoryRequest = Message<"silvana.orderbook.v1.GetPartyHisto
2538
2250
  * Use `create(GetPartyHistoryRequestSchema)` to create a new message.
2539
2251
  */
2540
2252
  export const GetPartyHistoryRequestSchema: GenMessage<GetPartyHistoryRequest> = /*@__PURE__*/
2541
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 45);
2253
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 43);
2542
2254
 
2543
2255
  /**
2544
2256
  * Single entry in party history
@@ -2596,7 +2308,7 @@ export type PartyHistoryEntry = Message<"silvana.orderbook.v1.PartyHistoryEntry"
2596
2308
  * Use `create(PartyHistoryEntrySchema)` to create a new message.
2597
2309
  */
2598
2310
  export const PartyHistoryEntrySchema: GenMessage<PartyHistoryEntry> = /*@__PURE__*/
2599
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 46);
2311
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 44);
2600
2312
 
2601
2313
  /**
2602
2314
  * @generated from message silvana.orderbook.v1.GetPartyHistoryResponse
@@ -2628,7 +2340,7 @@ export type GetPartyHistoryResponse = Message<"silvana.orderbook.v1.GetPartyHist
2628
2340
  * Use `create(GetPartyHistoryResponseSchema)` to create a new message.
2629
2341
  */
2630
2342
  export const GetPartyHistoryResponseSchema: GenMessage<GetPartyHistoryResponse> = /*@__PURE__*/
2631
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 47);
2343
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 45);
2632
2344
 
2633
2345
  /**
2634
2346
  * Get a single party by ID
@@ -2637,21 +2349,11 @@ export const GetPartyHistoryResponseSchema: GenMessage<GetPartyHistoryResponse>
2637
2349
  */
2638
2350
  export type GetPartyRequest = Message<"silvana.orderbook.v1.GetPartyRequest"> & {
2639
2351
  /**
2640
- * @generated from field: silvana.orderbook.v1.JWTAuth auth = 1;
2641
- */
2642
- auth?: JWTAuth;
2643
-
2644
- /**
2352
+ * Auth via gRPC metadata: authorization: Bearer <token>
2353
+ *
2645
2354
  * @generated from field: string party_id = 2;
2646
2355
  */
2647
2356
  partyId: string;
2648
-
2649
- /**
2650
- * Alternative auth for external accounts
2651
- *
2652
- * @generated from field: optional silvana.orderbook.v1.ExternalAuth external_auth = 10;
2653
- */
2654
- externalAuth?: ExternalAuth;
2655
2357
  };
2656
2358
 
2657
2359
  /**
@@ -2659,7 +2361,7 @@ export type GetPartyRequest = Message<"silvana.orderbook.v1.GetPartyRequest"> &
2659
2361
  * Use `create(GetPartyRequestSchema)` to create a new message.
2660
2362
  */
2661
2363
  export const GetPartyRequestSchema: GenMessage<GetPartyRequest> = /*@__PURE__*/
2662
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 48);
2364
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 46);
2663
2365
 
2664
2366
  /**
2665
2367
  * @generated from message silvana.orderbook.v1.GetPartyResponse
@@ -2686,7 +2388,7 @@ export type GetPartyResponse = Message<"silvana.orderbook.v1.GetPartyResponse">
2686
2388
  * Use `create(GetPartyResponseSchema)` to create a new message.
2687
2389
  */
2688
2390
  export const GetPartyResponseSchema: GenMessage<GetPartyResponse> = /*@__PURE__*/
2689
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 49);
2391
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 47);
2690
2392
 
2691
2393
  /**
2692
2394
  * List parties with filters and pagination
@@ -2695,11 +2397,8 @@ export const GetPartyResponseSchema: GenMessage<GetPartyResponse> = /*@__PURE__*
2695
2397
  */
2696
2398
  export type GetPartiesRequest = Message<"silvana.orderbook.v1.GetPartiesRequest"> & {
2697
2399
  /**
2698
- * @generated from field: silvana.orderbook.v1.JWTAuth auth = 1;
2699
- */
2700
- auth?: JWTAuth;
2701
-
2702
- /**
2400
+ * Auth via gRPC metadata: authorization: Bearer <token>
2401
+ *
2703
2402
  * Filter by type: trader, operator, registry, issuer
2704
2403
  *
2705
2404
  * @generated from field: optional string party_type = 2;
@@ -2726,13 +2425,6 @@ export type GetPartiesRequest = Message<"silvana.orderbook.v1.GetPartiesRequest"
2726
2425
  * @generated from field: optional uint32 offset = 5;
2727
2426
  */
2728
2427
  offset?: number;
2729
-
2730
- /**
2731
- * Alternative auth for external accounts
2732
- *
2733
- * @generated from field: optional silvana.orderbook.v1.ExternalAuth external_auth = 10;
2734
- */
2735
- externalAuth?: ExternalAuth;
2736
2428
  };
2737
2429
 
2738
2430
  /**
@@ -2740,7 +2432,7 @@ export type GetPartiesRequest = Message<"silvana.orderbook.v1.GetPartiesRequest"
2740
2432
  * Use `create(GetPartiesRequestSchema)` to create a new message.
2741
2433
  */
2742
2434
  export const GetPartiesRequestSchema: GenMessage<GetPartiesRequest> = /*@__PURE__*/
2743
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 50);
2435
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 48);
2744
2436
 
2745
2437
  /**
2746
2438
  * @generated from message silvana.orderbook.v1.GetPartiesResponse
@@ -2772,7 +2464,7 @@ export type GetPartiesResponse = Message<"silvana.orderbook.v1.GetPartiesRespons
2772
2464
  * Use `create(GetPartiesResponseSchema)` to create a new message.
2773
2465
  */
2774
2466
  export const GetPartiesResponseSchema: GenMessage<GetPartiesResponse> = /*@__PURE__*/
2775
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 51);
2467
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 49);
2776
2468
 
2777
2469
  /**
2778
2470
  * Party information
@@ -2880,7 +2572,7 @@ export type Party = Message<"silvana.orderbook.v1.Party"> & {
2880
2572
  * Use `create(PartySchema)` to create a new message.
2881
2573
  */
2882
2574
  export const PartySchema: GenMessage<Party> = /*@__PURE__*/
2883
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 52);
2575
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 50);
2884
2576
 
2885
2577
  /**
2886
2578
  * Liquidity provider information
@@ -2932,7 +2624,7 @@ export type LiquidityProvider = Message<"silvana.orderbook.v1.LiquidityProvider"
2932
2624
  * Use `create(LiquidityProviderSchema)` to create a new message.
2933
2625
  */
2934
2626
  export const LiquidityProviderSchema: GenMessage<LiquidityProvider> = /*@__PURE__*/
2935
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 53);
2627
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 51);
2936
2628
 
2937
2629
  /**
2938
2630
  * Get liquidity providers list
@@ -2941,11 +2633,8 @@ export const LiquidityProviderSchema: GenMessage<LiquidityProvider> = /*@__PURE_
2941
2633
  */
2942
2634
  export type GetLiquidityProvidersRequest = Message<"silvana.orderbook.v1.GetLiquidityProvidersRequest"> & {
2943
2635
  /**
2944
- * @generated from field: silvana.orderbook.v1.JWTAuth auth = 1;
2945
- */
2946
- auth?: JWTAuth;
2947
-
2948
- /**
2636
+ * Auth via gRPC metadata: authorization: Bearer <token>
2637
+ *
2949
2638
  * Only return LPs active within N seconds (default: all)
2950
2639
  *
2951
2640
  * @generated from field: optional uint32 active_seconds = 2;
@@ -2963,11 +2652,6 @@ export type GetLiquidityProvidersRequest = Message<"silvana.orderbook.v1.GetLiqu
2963
2652
  * @generated from field: optional uint32 offset = 4;
2964
2653
  */
2965
2654
  offset?: number;
2966
-
2967
- /**
2968
- * @generated from field: optional silvana.orderbook.v1.ExternalAuth external_auth = 10;
2969
- */
2970
- externalAuth?: ExternalAuth;
2971
2655
  };
2972
2656
 
2973
2657
  /**
@@ -2975,7 +2659,7 @@ export type GetLiquidityProvidersRequest = Message<"silvana.orderbook.v1.GetLiqu
2975
2659
  * Use `create(GetLiquidityProvidersRequestSchema)` to create a new message.
2976
2660
  */
2977
2661
  export const GetLiquidityProvidersRequestSchema: GenMessage<GetLiquidityProvidersRequest> = /*@__PURE__*/
2978
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 54);
2662
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 52);
2979
2663
 
2980
2664
  /**
2981
2665
  * @generated from message silvana.orderbook.v1.GetLiquidityProvidersResponse
@@ -3007,7 +2691,7 @@ export type GetLiquidityProvidersResponse = Message<"silvana.orderbook.v1.GetLiq
3007
2691
  * Use `create(GetLiquidityProvidersResponseSchema)` to create a new message.
3008
2692
  */
3009
2693
  export const GetLiquidityProvidersResponseSchema: GenMessage<GetLiquidityProvidersResponse> = /*@__PURE__*/
3010
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 55);
2694
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 53);
3011
2695
 
3012
2696
  /**
3013
2697
  * Waiting list entry for users pending onboarding
@@ -3078,7 +2762,7 @@ export type WaitingListEntry = Message<"silvana.orderbook.v1.WaitingListEntry">
3078
2762
  * Use `create(WaitingListEntrySchema)` to create a new message.
3079
2763
  */
3080
2764
  export const WaitingListEntrySchema: GenMessage<WaitingListEntry> = /*@__PURE__*/
3081
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 56);
2765
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 54);
3082
2766
 
3083
2767
  /**
3084
2768
  * Add entry to waiting list (JWT auth with user 'onboard')
@@ -3087,11 +2771,8 @@ export const WaitingListEntrySchema: GenMessage<WaitingListEntry> = /*@__PURE__*
3087
2771
  */
3088
2772
  export type AddWaitingListEntryRequest = Message<"silvana.orderbook.v1.AddWaitingListEntryRequest"> & {
3089
2773
  /**
3090
- * @generated from field: silvana.orderbook.v1.JWTAuth auth = 1;
3091
- */
3092
- auth?: JWTAuth;
3093
-
3094
- /**
2774
+ * Auth via gRPC metadata: authorization: Bearer <token>
2775
+ *
3095
2776
  * @generated from field: google.protobuf.Struct user_data = 2;
3096
2777
  */
3097
2778
  userData?: JsonObject;
@@ -3122,7 +2803,7 @@ export type AddWaitingListEntryRequest = Message<"silvana.orderbook.v1.AddWaitin
3122
2803
  * Use `create(AddWaitingListEntryRequestSchema)` to create a new message.
3123
2804
  */
3124
2805
  export const AddWaitingListEntryRequestSchema: GenMessage<AddWaitingListEntryRequest> = /*@__PURE__*/
3125
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 57);
2806
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 55);
3126
2807
 
3127
2808
  /**
3128
2809
  * @generated from message silvana.orderbook.v1.AddWaitingListEntryResponse
@@ -3149,7 +2830,7 @@ export type AddWaitingListEntryResponse = Message<"silvana.orderbook.v1.AddWaiti
3149
2830
  * Use `create(AddWaitingListEntryResponseSchema)` to create a new message.
3150
2831
  */
3151
2832
  export const AddWaitingListEntryResponseSchema: GenMessage<AddWaitingListEntryResponse> = /*@__PURE__*/
3152
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 58);
2833
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 56);
3153
2834
 
3154
2835
  /**
3155
2836
  * Canton round with conversion coefficients for reward calculations
@@ -3206,8 +2887,136 @@ export type Round = Message<"silvana.orderbook.v1.Round"> & {
3206
2887
  * Use `create(RoundSchema)` to create a new message.
3207
2888
  */
3208
2889
  export const RoundSchema: GenMessage<Round> = /*@__PURE__*/
2890
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 57);
2891
+
2892
+ /**
2893
+ * Latest coefficient values (may come from different rounds)
2894
+ *
2895
+ * @generated from message silvana.orderbook.v1.LatestCoefficients
2896
+ */
2897
+ export type LatestCoefficients = Message<"silvana.orderbook.v1.LatestCoefficients"> & {
2898
+ /**
2899
+ * Issuance coefficient for featured apps (from most recent round with value)
2900
+ *
2901
+ * @generated from field: optional string issuance_per_featured_app_reward_coupon = 1;
2902
+ */
2903
+ issuancePerFeaturedAppRewardCoupon?: string;
2904
+
2905
+ /**
2906
+ * @generated from field: optional uint64 issuance_per_featured_app_reward_coupon_round = 2;
2907
+ */
2908
+ issuancePerFeaturedAppRewardCouponRound?: bigint;
2909
+
2910
+ /**
2911
+ * Issuance coefficient for unfeatured apps (from most recent round with value)
2912
+ *
2913
+ * @generated from field: optional string issuance_per_unfeatured_app_reward_coupon = 3;
2914
+ */
2915
+ issuancePerUnfeaturedAppRewardCoupon?: string;
2916
+
2917
+ /**
2918
+ * @generated from field: optional uint64 issuance_per_unfeatured_app_reward_coupon_round = 4;
2919
+ */
2920
+ issuancePerUnfeaturedAppRewardCouponRound?: bigint;
2921
+
2922
+ /**
2923
+ * CC/USD exchange rate (from most recent round with value)
2924
+ *
2925
+ * @generated from field: optional string cc_usd_rate = 5;
2926
+ */
2927
+ ccUsdRate?: string;
2928
+
2929
+ /**
2930
+ * @generated from field: optional uint64 cc_usd_rate_round = 6;
2931
+ */
2932
+ ccUsdRateRound?: bigint;
2933
+
2934
+ /**
2935
+ * Traffic cost in USD per MB (from most recent round with value)
2936
+ *
2937
+ * @generated from field: optional string traffic_cost_usd_per_mb = 7;
2938
+ */
2939
+ trafficCostUsdPerMb?: string;
2940
+
2941
+ /**
2942
+ * @generated from field: optional uint64 traffic_cost_usd_per_mb_round = 8;
2943
+ */
2944
+ trafficCostUsdPerMbRound?: bigint;
2945
+ };
2946
+
2947
+ /**
2948
+ * Describes the message silvana.orderbook.v1.LatestCoefficients.
2949
+ * Use `create(LatestCoefficientsSchema)` to create a new message.
2950
+ */
2951
+ export const LatestCoefficientsSchema: GenMessage<LatestCoefficients> = /*@__PURE__*/
2952
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 58);
2953
+
2954
+ /**
2955
+ * Get rounds data with latest coefficients
2956
+ *
2957
+ * @generated from message silvana.orderbook.v1.GetRoundsDataRequest
2958
+ */
2959
+ export type GetRoundsDataRequest = Message<"silvana.orderbook.v1.GetRoundsDataRequest"> & {
2960
+ /**
2961
+ * Auth via gRPC metadata: authorization: Bearer <token>
2962
+ *
2963
+ * Default: 10, max: 100
2964
+ *
2965
+ * @generated from field: optional uint32 limit = 2;
2966
+ */
2967
+ limit?: number;
2968
+ };
2969
+
2970
+ /**
2971
+ * Describes the message silvana.orderbook.v1.GetRoundsDataRequest.
2972
+ * Use `create(GetRoundsDataRequestSchema)` to create a new message.
2973
+ */
2974
+ export const GetRoundsDataRequestSchema: GenMessage<GetRoundsDataRequest> = /*@__PURE__*/
3209
2975
  messageDesc(file_proto_silvana_orderbook_v1_orderbook, 59);
3210
2976
 
2977
+ /**
2978
+ * @generated from message silvana.orderbook.v1.GetRoundsDataResponse
2979
+ */
2980
+ export type GetRoundsDataResponse = Message<"silvana.orderbook.v1.GetRoundsDataResponse"> & {
2981
+ /**
2982
+ * @generated from field: bool success = 1;
2983
+ */
2984
+ success: boolean;
2985
+
2986
+ /**
2987
+ * @generated from field: string message = 2;
2988
+ */
2989
+ message: string;
2990
+
2991
+ /**
2992
+ * Last N rounds ordered by round_number DESC
2993
+ *
2994
+ * @generated from field: repeated silvana.orderbook.v1.Round rounds = 3;
2995
+ */
2996
+ rounds: Round[];
2997
+
2998
+ /**
2999
+ * Latest non-NULL values for each coefficient
3000
+ *
3001
+ * @generated from field: silvana.orderbook.v1.LatestCoefficients latest = 4;
3002
+ */
3003
+ latest?: LatestCoefficients;
3004
+
3005
+ /**
3006
+ * Total rounds in database
3007
+ *
3008
+ * @generated from field: uint32 total_rounds = 5;
3009
+ */
3010
+ totalRounds: number;
3011
+ };
3012
+
3013
+ /**
3014
+ * Describes the message silvana.orderbook.v1.GetRoundsDataResponse.
3015
+ * Use `create(GetRoundsDataResponseSchema)` to create a new message.
3016
+ */
3017
+ export const GetRoundsDataResponseSchema: GenMessage<GetRoundsDataResponse> = /*@__PURE__*/
3018
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 60);
3019
+
3211
3020
  /**
3212
3021
  * Invite code for user onboarding
3213
3022
  *
@@ -3272,7 +3081,7 @@ export type Invite = Message<"silvana.orderbook.v1.Invite"> & {
3272
3081
  * Use `create(InviteSchema)` to create a new message.
3273
3082
  */
3274
3083
  export const InviteSchema: GenMessage<Invite> = /*@__PURE__*/
3275
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 60);
3084
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 61);
3276
3085
 
3277
3086
  /**
3278
3087
  * Get invite by code
@@ -3291,7 +3100,7 @@ export type GetInviteRequest = Message<"silvana.orderbook.v1.GetInviteRequest">
3291
3100
  * Use `create(GetInviteRequestSchema)` to create a new message.
3292
3101
  */
3293
3102
  export const GetInviteRequestSchema: GenMessage<GetInviteRequest> = /*@__PURE__*/
3294
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 61);
3103
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 62);
3295
3104
 
3296
3105
  /**
3297
3106
  * @generated from message silvana.orderbook.v1.GetInviteResponse
@@ -3313,7 +3122,7 @@ export type GetInviteResponse = Message<"silvana.orderbook.v1.GetInviteResponse"
3313
3122
  * Use `create(GetInviteResponseSchema)` to create a new message.
3314
3123
  */
3315
3124
  export const GetInviteResponseSchema: GenMessage<GetInviteResponse> = /*@__PURE__*/
3316
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 62);
3125
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 63);
3317
3126
 
3318
3127
  /**
3319
3128
  * Use invite code (increments count, marks used if at max)
@@ -3339,7 +3148,7 @@ export type UseInviteRequest = Message<"silvana.orderbook.v1.UseInviteRequest">
3339
3148
  * Use `create(UseInviteRequestSchema)` to create a new message.
3340
3149
  */
3341
3150
  export const UseInviteRequestSchema: GenMessage<UseInviteRequest> = /*@__PURE__*/
3342
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 63);
3151
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 64);
3343
3152
 
3344
3153
  /**
3345
3154
  * @generated from message silvana.orderbook.v1.UseInviteResponse
@@ -3368,7 +3177,7 @@ export type UseInviteResponse = Message<"silvana.orderbook.v1.UseInviteResponse"
3368
3177
  * Use `create(UseInviteResponseSchema)` to create a new message.
3369
3178
  */
3370
3179
  export const UseInviteResponseSchema: GenMessage<UseInviteResponse> = /*@__PURE__*/
3371
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 64);
3180
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 65);
3372
3181
 
3373
3182
  /**
3374
3183
  * Create a new instrument
@@ -3377,11 +3186,8 @@ export const UseInviteResponseSchema: GenMessage<UseInviteResponse> = /*@__PURE_
3377
3186
  */
3378
3187
  export type CreateInstrumentRequest = Message<"silvana.orderbook.v1.CreateInstrumentRequest"> & {
3379
3188
  /**
3380
- * @generated from field: silvana.orderbook.v1.JWTAuth auth = 1;
3381
- */
3382
- auth?: JWTAuth;
3383
-
3384
- /**
3189
+ * Auth via gRPC metadata: authorization: Bearer <token>
3190
+ *
3385
3191
  * @generated from field: string instrument_id = 2;
3386
3192
  */
3387
3193
  instrumentId: string;
@@ -3433,13 +3239,6 @@ export type CreateInstrumentRequest = Message<"silvana.orderbook.v1.CreateInstru
3433
3239
  * @generated from field: string news_symbol = 10;
3434
3240
  */
3435
3241
  newsSymbol: string;
3436
-
3437
- /**
3438
- * Alternative auth for external accounts
3439
- *
3440
- * @generated from field: optional silvana.orderbook.v1.ExternalAuth external_auth = 15;
3441
- */
3442
- externalAuth?: ExternalAuth;
3443
3242
  };
3444
3243
 
3445
3244
  /**
@@ -3447,7 +3246,7 @@ export type CreateInstrumentRequest = Message<"silvana.orderbook.v1.CreateInstru
3447
3246
  * Use `create(CreateInstrumentRequestSchema)` to create a new message.
3448
3247
  */
3449
3248
  export const CreateInstrumentRequestSchema: GenMessage<CreateInstrumentRequest> = /*@__PURE__*/
3450
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 65);
3249
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 66);
3451
3250
 
3452
3251
  /**
3453
3252
  * @generated from message silvana.orderbook.v1.CreateInstrumentResponse
@@ -3474,7 +3273,7 @@ export type CreateInstrumentResponse = Message<"silvana.orderbook.v1.CreateInstr
3474
3273
  * Use `create(CreateInstrumentResponseSchema)` to create a new message.
3475
3274
  */
3476
3275
  export const CreateInstrumentResponseSchema: GenMessage<CreateInstrumentResponse> = /*@__PURE__*/
3477
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 66);
3276
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 67);
3478
3277
 
3479
3278
  /**
3480
3279
  * Create a new market
@@ -3483,11 +3282,8 @@ export const CreateInstrumentResponseSchema: GenMessage<CreateInstrumentResponse
3483
3282
  */
3484
3283
  export type CreateMarketRequest = Message<"silvana.orderbook.v1.CreateMarketRequest"> & {
3485
3284
  /**
3486
- * @generated from field: silvana.orderbook.v1.JWTAuth auth = 1;
3487
- */
3488
- auth?: JWTAuth;
3489
-
3490
- /**
3285
+ * Auth via gRPC metadata: authorization: Bearer <token>
3286
+ *
3491
3287
  * @generated from field: string market_id = 2;
3492
3288
  */
3493
3289
  marketId: string;
@@ -3557,13 +3353,6 @@ export type CreateMarketRequest = Message<"silvana.orderbook.v1.CreateMarketRequ
3557
3353
  * @generated from field: optional google.protobuf.Struct price_feeds = 12;
3558
3354
  */
3559
3355
  priceFeeds?: JsonObject;
3560
-
3561
- /**
3562
- * Alternative auth for external accounts
3563
- *
3564
- * @generated from field: optional silvana.orderbook.v1.ExternalAuth external_auth = 15;
3565
- */
3566
- externalAuth?: ExternalAuth;
3567
3356
  };
3568
3357
 
3569
3358
  /**
@@ -3571,7 +3360,7 @@ export type CreateMarketRequest = Message<"silvana.orderbook.v1.CreateMarketRequ
3571
3360
  * Use `create(CreateMarketRequestSchema)` to create a new message.
3572
3361
  */
3573
3362
  export const CreateMarketRequestSchema: GenMessage<CreateMarketRequest> = /*@__PURE__*/
3574
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 67);
3363
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 68);
3575
3364
 
3576
3365
  /**
3577
3366
  * @generated from message silvana.orderbook.v1.CreateMarketResponse
@@ -3598,7 +3387,7 @@ export type CreateMarketResponse = Message<"silvana.orderbook.v1.CreateMarketRes
3598
3387
  * Use `create(CreateMarketResponseSchema)` to create a new message.
3599
3388
  */
3600
3389
  export const CreateMarketResponseSchema: GenMessage<CreateMarketResponse> = /*@__PURE__*/
3601
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 68);
3390
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 69);
3602
3391
 
3603
3392
  /**
3604
3393
  * Update price feeds for an existing market
@@ -3607,11 +3396,8 @@ export const CreateMarketResponseSchema: GenMessage<CreateMarketResponse> = /*@_
3607
3396
  */
3608
3397
  export type UpdateMarketPriceFeedsRequest = Message<"silvana.orderbook.v1.UpdateMarketPriceFeedsRequest"> & {
3609
3398
  /**
3610
- * @generated from field: silvana.orderbook.v1.JWTAuth auth = 1;
3611
- */
3612
- auth?: JWTAuth;
3613
-
3614
- /**
3399
+ * Auth via gRPC metadata: authorization: Bearer <token>
3400
+ *
3615
3401
  * @generated from field: string market_id = 2;
3616
3402
  */
3617
3403
  marketId: string;
@@ -3622,13 +3408,6 @@ export type UpdateMarketPriceFeedsRequest = Message<"silvana.orderbook.v1.Update
3622
3408
  * @generated from field: google.protobuf.Struct price_feeds = 3;
3623
3409
  */
3624
3410
  priceFeeds?: JsonObject;
3625
-
3626
- /**
3627
- * Alternative auth for external accounts
3628
- *
3629
- * @generated from field: optional silvana.orderbook.v1.ExternalAuth external_auth = 10;
3630
- */
3631
- externalAuth?: ExternalAuth;
3632
3411
  };
3633
3412
 
3634
3413
  /**
@@ -3636,7 +3415,7 @@ export type UpdateMarketPriceFeedsRequest = Message<"silvana.orderbook.v1.Update
3636
3415
  * Use `create(UpdateMarketPriceFeedsRequestSchema)` to create a new message.
3637
3416
  */
3638
3417
  export const UpdateMarketPriceFeedsRequestSchema: GenMessage<UpdateMarketPriceFeedsRequest> = /*@__PURE__*/
3639
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 69);
3418
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 70);
3640
3419
 
3641
3420
  /**
3642
3421
  * @generated from message silvana.orderbook.v1.UpdateMarketPriceFeedsResponse
@@ -3665,7 +3444,7 @@ export type UpdateMarketPriceFeedsResponse = Message<"silvana.orderbook.v1.Updat
3665
3444
  * Use `create(UpdateMarketPriceFeedsResponseSchema)` to create a new message.
3666
3445
  */
3667
3446
  export const UpdateMarketPriceFeedsResponseSchema: GenMessage<UpdateMarketPriceFeedsResponse> = /*@__PURE__*/
3668
- messageDesc(file_proto_silvana_orderbook_v1_orderbook, 70);
3447
+ messageDesc(file_proto_silvana_orderbook_v1_orderbook, 71);
3669
3448
 
3670
3449
  /**
3671
3450
  * Order type enumeration
@@ -3789,7 +3568,7 @@ export const TimeInForceSchema: GenEnum<TimeInForce> = /*@__PURE__*/
3789
3568
  enumDesc(file_proto_silvana_orderbook_v1_orderbook, 2);
3790
3569
 
3791
3570
  /**
3792
- * Settlement status enumeration
3571
+ * Settlement status enumeration (simplified - 4 states only)
3793
3572
  *
3794
3573
  * @generated from enum silvana.orderbook.v1.SettlementStatus
3795
3574
  */
@@ -3800,44 +3579,24 @@ export enum SettlementStatus {
3800
3579
  UNSPECIFIED = 0,
3801
3580
 
3802
3581
  /**
3803
- * @generated from enum value: SETTLEMENT_STATUS_CREATED = 1;
3804
- */
3805
- CREATED = 1,
3806
-
3807
- /**
3808
- * @generated from enum value: SETTLEMENT_STATUS_PRECONFIRMED = 2;
3809
- */
3810
- PRECONFIRMED = 2,
3811
-
3812
- /**
3813
- * @generated from enum value: SETTLEMENT_STATUS_DVP_REQUEST_CREATED = 3;
3814
- */
3815
- DVP_REQUEST_CREATED = 3,
3816
-
3817
- /**
3818
- * @generated from enum value: SETTLEMENT_STATUS_DVP_REQUEST_ACCEPTED = 4;
3582
+ * @generated from enum value: SETTLEMENT_STATUS_PENDING = 1;
3819
3583
  */
3820
- DVP_REQUEST_ACCEPTED = 4,
3584
+ PENDING = 1,
3821
3585
 
3822
3586
  /**
3823
- * @generated from enum value: SETTLEMENT_STATUS_INSTRUMENTS_ALLOCATED = 5;
3587
+ * @generated from enum value: SETTLEMENT_STATUS_SETTLED = 2;
3824
3588
  */
3825
- INSTRUMENTS_ALLOCATED = 5,
3589
+ SETTLED = 2,
3826
3590
 
3827
3591
  /**
3828
- * @generated from enum value: SETTLEMENT_STATUS_SETTLED = 6;
3592
+ * @generated from enum value: SETTLEMENT_STATUS_CANCELLED = 3;
3829
3593
  */
3830
- SETTLED = 6,
3594
+ CANCELLED = 3,
3831
3595
 
3832
3596
  /**
3833
- * @generated from enum value: SETTLEMENT_STATUS_CANCELLED = 7;
3597
+ * @generated from enum value: SETTLEMENT_STATUS_FAILED = 4;
3834
3598
  */
3835
- CANCELLED = 7,
3836
-
3837
- /**
3838
- * @generated from enum value: SETTLEMENT_STATUS_FAILED = 8;
3839
- */
3840
- FAILED = 8,
3599
+ FAILED = 4,
3841
3600
  }
3842
3601
 
3843
3602
  /**
@@ -4069,6 +3828,16 @@ export const OrderbookService: GenService<{
4069
3828
  input: typeof UseInviteRequestSchema;
4070
3829
  output: typeof UseInviteResponseSchema;
4071
3830
  },
3831
+ /**
3832
+ * Rounds operations
3833
+ *
3834
+ * @generated from rpc silvana.orderbook.v1.OrderbookService.GetRoundsData
3835
+ */
3836
+ getRoundsData: {
3837
+ methodKind: "unary";
3838
+ input: typeof GetRoundsDataRequestSchema;
3839
+ output: typeof GetRoundsDataResponseSchema;
3840
+ },
4072
3841
  /**
4073
3842
  * Admin operations (require operator authentication)
4074
3843
  *