@silvana-one/orderbook 1.1.31 → 1.1.33
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +150 -54
- package/dist/node/index.cjs +646 -41
- package/dist/node/index.d.ts +1 -0
- package/dist/node/index.js +1 -0
- package/dist/node/index.js.map +1 -1
- package/dist/node/ledger.d.ts +95 -0
- package/dist/node/ledger.js +170 -0
- package/dist/node/ledger.js.map +1 -0
- package/dist/node/orderbook.d.ts +68 -2
- package/dist/node/orderbook.js +81 -2
- package/dist/node/orderbook.js.map +1 -1
- package/dist/node/proto/silvana/ledger/v1/ledger_pb.d.ts +2171 -0
- package/dist/node/proto/silvana/ledger/v1/ledger_pb.js +559 -0
- package/dist/node/proto/silvana/ledger/v1/ledger_pb.js.map +1 -0
- package/dist/node/proto/silvana/orderbook/v1/orderbook_pb.d.ts +602 -3
- package/dist/node/proto/silvana/orderbook/v1/orderbook_pb.js +110 -1
- package/dist/node/proto/silvana/orderbook/v1/orderbook_pb.js.map +1 -1
- package/dist/node/proto/silvana/settlement/v1/settlement_pb.d.ts +307 -3
- package/dist/node/proto/silvana/settlement/v1/settlement_pb.js +131 -44
- package/dist/node/proto/silvana/settlement/v1/settlement_pb.js.map +1 -1
- package/dist/node/settlement.d.ts +1 -1
- package/dist/node/settlement.js +1 -1
- package/dist/node/settlement.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/tsconfig.web.tsbuildinfo +1 -1
- package/dist/web/index.d.ts +1 -0
- package/dist/web/index.js +1 -0
- package/dist/web/index.js.map +1 -1
- package/dist/web/ledger.d.ts +95 -0
- package/dist/web/ledger.js +170 -0
- package/dist/web/ledger.js.map +1 -0
- package/dist/web/orderbook.d.ts +68 -2
- package/dist/web/orderbook.js +81 -2
- package/dist/web/orderbook.js.map +1 -1
- package/dist/web/proto/silvana/ledger/v1/ledger_pb.d.ts +2171 -0
- package/dist/web/proto/silvana/ledger/v1/ledger_pb.js +559 -0
- package/dist/web/proto/silvana/ledger/v1/ledger_pb.js.map +1 -0
- package/dist/web/proto/silvana/orderbook/v1/orderbook_pb.d.ts +602 -3
- package/dist/web/proto/silvana/orderbook/v1/orderbook_pb.js +110 -1
- package/dist/web/proto/silvana/orderbook/v1/orderbook_pb.js.map +1 -1
- package/dist/web/proto/silvana/settlement/v1/settlement_pb.d.ts +307 -3
- package/dist/web/proto/silvana/settlement/v1/settlement_pb.js +131 -44
- package/dist/web/proto/silvana/settlement/v1/settlement_pb.js.map +1 -1
- package/dist/web/settlement.d.ts +1 -1
- package/dist/web/settlement.js +1 -1
- package/dist/web/settlement.js.map +1 -1
- package/package.json +7 -6
- package/src/index.ts +1 -0
- package/src/ledger.ts +267 -0
- package/src/orderbook.ts +137 -1
- package/src/proto/silvana/ledger/v1/ledger_pb.ts +2531 -0
- package/src/proto/silvana/orderbook/v1/orderbook_pb.ts +708 -4
- package/src/proto/silvana/settlement/v1/settlement_pb.ts +402 -46
- package/src/settlement.ts +12 -0
|
@@ -12,7 +12,7 @@ import type { JsonObject, Message } from "@bufbuild/protobuf";
|
|
|
12
12
|
* Describes the file proto/silvana/settlement/v1/settlement.proto.
|
|
13
13
|
*/
|
|
14
14
|
export const file_proto_silvana_settlement_v1_settlement: GenFile = /*@__PURE__*/
|
|
15
|
-
fileDesc("Cixwcm90by9zaWx2YW5hL3NldHRsZW1lbnQvdjEvc2V0dGxlbWVudC5wcm90bxIVc2lsdmFuYS5zZXR0bGVtZW50LnYxIn4KDkNhbnRvbk5vZGVBdXRoEhAKCHBhcnR5X2lkGAEgASgJEhEKCWp3dF90b2tlbhgCIAEoCRIVCg1ub2RlX2luc3RhbmNlGAMgASgJEjAKDGNvbm5lY3RlZF9hdBgEIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAingEKFFNldHRsZW1lbnRJbnN0cnVtZW50EhUKDWluc3RydW1lbnRfaWQYASABKAkSDgoGc3ltYm9sGAIgASgJEhAKCHJlZ2lzdHJ5GAMgASgJEhAKCHF1YW50aXR5GAQgASgJEi4KCG1ldGFkYXRhGAUgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgAiAEBQgsKCV9tZXRhZGF0YSKZBQoZU2V0dGxlbWVudFByb3Bvc2FsTWVzc2FnZRITCgtwcm9wb3NhbF9pZBgBIAEoCRIVCg1zZXR0bGVtZW50X2lkGAIgASgJEhEKCW1hcmtldF9pZBgDIAEoCRITCgtidXllcl9wYXJ0eRgEIAEoCRIUCgxzZWxsZXJfcGFydHkYBSABKAkSRAoPYmFzZV9pbnN0cnVtZW50GAYgASgLMisuc2lsdmFuYS5zZXR0bGVtZW50LnYxLlNldHRsZW1lbnRJbnN0cnVtZW50EkUKEHF1b3RlX2luc3RydW1lbnQYByABKAsyKy5zaWx2YW5hLnNldHRsZW1lbnQudjEuU2V0dGxlbWVudEluc3RydW1lbnQSGAoQc2V0dGxlbWVudF9wcmljZRgIIAEoCRIzCg9hbGxvY2F0ZV9iZWZvcmUYCSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEjEKDXNldHRsZV9iZWZvcmUYCiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi4KCG1ldGFkYXRhGAsgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgAiAEBEi4KCmNyZWF0ZWRfYXQYDCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEiAKGGR2cF9wcm9jZXNzaW5nX2ZlZV9idXllchgNIAEoCRIhChlkdnBfcHJvY2Vzc2luZ19mZWVfc2VsbGVyGA4gASgJEicKH2FsbG9jYXRpb25fcHJvY2Vzc2luZ19mZWVfYnV5ZXIYDyABKAkSKAogYWxsb2NhdGlvbl9wcm9jZXNzaW5nX2ZlZV9zZWxsZXIYECABKAlCCwoJX21ldGFkYXRhIokCChZQcmVjb25maXJtYXRpb25SZXF1ZXN0EhMKC3Byb3Bvc2FsX2lkGAEgASgJEhUKDXNldHRsZW1lbnRfaWQYAiABKAkSQgoIcHJvcG9zYWwYAyABKAsyMC5zaWx2YW5hLnNldHRsZW1lbnQudjEuU2V0dGxlbWVudFByb3Bvc2FsTWVzc2FnZRIYChByZXF1ZXN0aW5nX3BhcnR5GAQgASgJEi4KCnJlc3BvbmRfYnkYBSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEisKBXRlcm1zGAYgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgAiAEBQggKBl90ZXJtcyK/AgoXUHJlY29uZmlybWF0aW9uRGVjaXNpb24SEwoLcHJvcG9zYWxfaWQYASABKAkSFQoNc2V0dGxlbWVudF9pZBgCIAEoCRJACghyZXNwb25zZRgDIAEoDjIuLnNpbHZhbmEuc2V0dGxlbWVudC52MS5QcmVjb25maXJtYXRpb25SZXNwb25zZRIdChByZWplY3Rpb25fcmVhc29uGAQgASgJSACIAQESMAoKY29uZGl0aW9ucxgFIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIAYgBARIRCglzaWduZWRfYnkYBiABKAkSLgoKZGVjaWRlZF9hdBgHIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBCEwoRX3JlamVjdGlvbl9yZWFzb25CDQoLX2NvbmRpdGlvbnMi2AEKEkR2cENvbnRyYWN0Q3JlYXRlZBITCgtwcm9wb3NhbF9pZBgBIAEoCRIVCg1zZXR0bGVtZW50X2lkGAIgASgJEhgKEGR2cF9wcm9wb3NhbF9jaWQYAyABKAkSHgoWZHZwX3Byb3Bvc2FsX3VwZGF0ZV9pZBgEIAEoCRIWCg5wcm9wb3Nlcl9wYXJ0eRgFIAEoCRIUCgxjb3VudGVycGFydHkYBiABKAkSLgoKY3JlYXRlZF9hdBgHIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAirwEKE0R2cENvbnRyYWN0QWNjZXB0ZWQSEwoLcHJvcG9zYWxfaWQYASABKAkSFQoNc2V0dGxlbWVudF9pZBgCIAEoCRIPCgdkdnBfY2lkGAMgASgJEhUKDWR2cF91cGRhdGVfaWQYBCABKAkSEwoLYWNjZXB0ZWRfYnkYBSABKAkSLwoLYWNjZXB0ZWRfYXQYBiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wItsCChBBbGxvY2F0aW9uU3RhdHVzEhMKC3Byb3Bvc2FsX2lkGAEgASgJEhUKDXNldHRsZW1lbnRfaWQYAiABKAkSNAoKcGFydHlfcm9sZRgDIAEoDjIgLnNpbHZhbmEuc2V0dGxlbWVudC52MS5QYXJ0eVJvbGUSEAoIcGFydHlfaWQYBCABKAkSFgoOYWxsb2NhdGlvbl9jaWQYBSABKAkSHAoUYWxsb2NhdGlvbl91cGRhdGVfaWQYBiABKAkSFQoNaW5zdHJ1bWVudF9pZBgHIAEoCRIQCghxdWFudGl0eRgIIAEoCRIUCgxpc19hbGxvY2F0ZWQYCSABKAgSGgoNZXJyb3JfbWVzc2FnZRgKIAEoCUgAiAEBEjAKDGFsbG9jYXRlZF9hdBgLIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBCEAoOX2Vycm9yX21lc3NhZ2UiqgIKGVNldHRsZW1lbnRFeGVjdXRpb25TdGF0dXMSEwoLcHJvcG9zYWxfaWQYASABKAkSFQoNc2V0dGxlbWVudF9pZBgCIAEoCRIPCgdkdnBfY2lkGAMgASgJEhcKD3NldHRsZWRfZHZwX2NpZBgEIAEoCRIcChRzZXR0bGVtZW50X3VwZGF0ZV9pZBgFIAEoCRIkChxzZXR0bGVtZW50X2NvbXBsZXRpb25fb2Zmc2V0GAYgASgJEhUKDWlzX3N1Y2Nlc3NmdWwYByABKAgSGgoNZXJyb3JfbWVzc2FnZRgIIAEoCUgAiAEBEi4KCnNldHRsZWRfYXQYCSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQhAKDl9lcnJvcl9tZXNzYWdlIooBCg9Vc2VyU2VydmljZUluZm8SEAoIcGFydHlfaWQYASABKAkSGAoQdXNlcl9zZXJ2aWNlX2NpZBgCIAEoCRIbChNvcGVyYXRvcl9jb25maWdfY2lkGAMgASgJEi4KCmNyZWF0ZWRfYXQYBCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wIvkBChNTZXR0bGVtZW50SGFuZHNoYWtlEjMKBGF1dGgYASABKAsyJS5zaWx2YW5hLnNldHRsZW1lbnQudjEuQ2FudG9uTm9kZUF1dGgSEQoJcGFydHlfaWRzGAIgAygJEj0KDXVzZXJfc2VydmljZXMYAyADKAsyJi5zaWx2YW5hLnNldHRsZW1lbnQudjEuVXNlclNlcnZpY2VJbmZvEhYKDm9wZXJhdG9yX3BhcnR5GAQgASgJEjIKDGNhcGFiaWxpdGllcxgFIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIAIgBAUIPCg1fY2FwYWJpbGl0aWVzIrgBCgxIYW5kc2hha2VBY2sSEAoIYWNjZXB0ZWQYASABKAgSHQoQcmVqZWN0aW9uX3JlYXNvbhgCIAEoCUgAiAEBEhIKCnNlc3Npb25faWQYAyABKAkSHQoVc3VwcG9ydGVkX2luc3RydW1lbnRzGAQgAygJEi8KC3NlcnZlcl90aW1lGAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEITChFfcmVqZWN0aW9uX3JlYXNvbiJnCglIZWFydGJlYXQSEgoKc2Vzc2lvbl9pZBgBIAEoCRItCgl0aW1lc3RhbXAYAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEhcKD3NlcXVlbmNlX251bWJlchgDIAEoBCJnChVMaXF1aWRpdHlQcm92aWRlclBpbmcSHwoXbGlxdWlkaXR5X3Byb3ZpZGVyX25hbWUYASABKAkSLQoJdGltZXN0YW1wGAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCKoAQoVTGlxdWlkaXR5UHJvdmlkZXJQb25nEh8KF2xpcXVpZGl0eV9wcm92aWRlcl9uYW1lGAEgASgJEg8KB3N1Y2Nlc3MYAiABKAgSGgoNZXJyb3JfbWVzc2FnZRgDIAEoCUgAiAEBEi8KC3NlcnZlcl90aW1lGAQgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEIQCg5fZXJyb3JfbWVzc2FnZSLbBgoVU2VydmVyVG9DYW50b25NZXNzYWdlEhIKCnNlc3Npb25faWQYASABKAkSFwoPc2VxdWVuY2VfbnVtYmVyGAIgASgEEjwKDWhhbmRzaGFrZV9hY2sYAyABKAsyIy5zaWx2YW5hLnNldHRsZW1lbnQudjEuSGFuZHNoYWtlQWNrSAASNQoJaGVhcnRiZWF0GAQgASgLMiAuc2lsdmFuYS5zZXR0bGVtZW50LnYxLkhlYXJ0YmVhdEgAEkQKCHByb3Bvc2FsGAUgASgLMjAuc2lsdmFuYS5zZXR0bGVtZW50LnYxLlNldHRsZW1lbnRQcm9wb3NhbE1lc3NhZ2VIABJQChdwcmVjb25maXJtYXRpb25fcmVxdWVzdBgGIAEoCzItLnNpbHZhbmEuc2V0dGxlbWVudC52MS5QcmVjb25maXJtYXRpb25SZXF1ZXN0SAASQAoLZHZwX2NyZWF0ZWQYByABKAsyKS5zaWx2YW5hLnNldHRsZW1lbnQudjEuRHZwQ29udHJhY3RDcmVhdGVkSAASQgoMZHZwX2FjY2VwdGVkGAggASgLMiouc2lsdmFuYS5zZXR0bGVtZW50LnYxLkR2cENvbnRyYWN0QWNjZXB0ZWRIABJEChFhbGxvY2F0aW9uX3N0YXR1cxgJIAEoCzInLnNpbHZhbmEuc2V0dGxlbWVudC52MS5BbGxvY2F0aW9uU3RhdHVzSAASTQoRc2V0dGxlbWVudF9zdGF0dXMYCiABKAsyMC5zaWx2YW5hLnNldHRsZW1lbnQudjEuU2V0dGxlbWVudEV4ZWN1dGlvblN0YXR1c0gAEjsKB2NvbW1hbmQYCyABKAsyKC5zaWx2YW5hLnNldHRsZW1lbnQudjEuU2V0dGxlbWVudENvbW1hbmRIABI3CgVxdWVyeRgMIAEoCzImLnNpbHZhbmEuc2V0dGxlbWVudC52MS5TZXR0bGVtZW50UXVlcnlIABI/CgdscF9wb25nGA4gASgLMiwuc2lsdmFuYS5zZXR0bGVtZW50LnYxLkxpcXVpZGl0eVByb3ZpZGVyUG9uZ0gAEisKB3NlbnRfYXQYDSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQgkKB21lc3NhZ2UisQYKFUNhbnRvblRvU2VydmVyTWVzc2FnZRISCgpzZXNzaW9uX2lkGAEgASgJEhcKD3NlcXVlbmNlX251bWJlchgCIAEoBBI/CgloYW5kc2hha2UYAyABKAsyKi5zaWx2YW5hLnNldHRsZW1lbnQudjEuU2V0dGxlbWVudEhhbmRzaGFrZUgAEjUKCWhlYXJ0YmVhdBgEIAEoCzIgLnNpbHZhbmEuc2V0dGxlbWVudC52MS5IZWFydGJlYXRIABJJCg9wcmVjb25maXJtYXRpb24YBSABKAsyLi5zaWx2YW5hLnNldHRsZW1lbnQudjEuUHJlY29uZmlybWF0aW9uRGVjaXNpb25IABJACgxkdnBfY3JlYXRpb24YBiABKAsyKC5zaWx2YW5hLnNldHRsZW1lbnQudjEuRHZwQ3JlYXRpb25SZXBvcnRIABJECg5kdnBfYWNjZXB0YW5jZRgHIAEoCzIqLnNpbHZhbmEuc2V0dGxlbWVudC52MS5EdnBBY2NlcHRhbmNlUmVwb3J0SAASPQoKYWxsb2NhdGlvbhgIIAEoCzInLnNpbHZhbmEuc2V0dGxlbWVudC52MS5BbGxvY2F0aW9uUmVwb3J0SAASPQoKc2V0dGxlbWVudBgJIAEoCzInLnNpbHZhbmEuc2V0dGxlbWVudC52MS5TZXR0bGVtZW50UmVwb3J0SAASPQoIcmVzcG9uc2UYCiABKAsyKS5zaWx2YW5hLnNldHRsZW1lbnQudjEuU2V0dGxlbWVudFJlc3BvbnNlSAASMwoFZXJyb3IYCyABKAsyIi5zaWx2YW5hLnNldHRsZW1lbnQudjEuRXJyb3JSZXBvcnRIABI1CgZzdGF0dXMYDCABKAsyIy5zaWx2YW5hLnNldHRsZW1lbnQudjEuU3RhdHVzVXBkYXRlSAASPwoHbHBfcGluZxgOIAEoCzIsLnNpbHZhbmEuc2V0dGxlbWVudC52MS5MaXF1aWRpdHlQcm92aWRlclBpbmdIABIrCgdzZW50X2F0GA0gASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEIJCgdtZXNzYWdlIqICChFEdnBDcmVhdGlvblJlcG9ydBITCgtwcm9wb3NhbF9pZBgBIAEoCRIVCg1zZXR0bGVtZW50X2lkGAIgASgJEg8KB3N1Y2Nlc3MYAyABKAgSHQoQZHZwX3Byb3Bvc2FsX2NpZBgEIAEoCUgAiAEBEiMKFmR2cF9wcm9wb3NhbF91cGRhdGVfaWQYBSABKAlIAYgBARIaCg1lcnJvcl9tZXNzYWdlGAYgASgJSAKIAQESLgoKY3JlYXRlZF9hdBgHIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBCEwoRX2R2cF9wcm9wb3NhbF9jaWRCGQoXX2R2cF9wcm9wb3NhbF91cGRhdGVfaWRCEAoOX2Vycm9yX21lc3NhZ2UigQIKE0R2cEFjY2VwdGFuY2VSZXBvcnQSEwoLcHJvcG9zYWxfaWQYASABKAkSFQoNc2V0dGxlbWVudF9pZBgCIAEoCRIPCgdzdWNjZXNzGAMgASgIEhQKB2R2cF9jaWQYBCABKAlIAIgBARIaCg1kdnBfdXBkYXRlX2lkGAUgASgJSAGIAQESGgoNZXJyb3JfbWVzc2FnZRgGIAEoCUgCiAEBEi8KC2FjY2VwdGVkX2F0GAcgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEIKCghfZHZwX2NpZEIQCg5fZHZwX3VwZGF0ZV9pZEIQCg5fZXJyb3JfbWVzc2FnZSLnAgoQQWxsb2NhdGlvblJlcG9ydBITCgtwcm9wb3NhbF9pZBgBIAEoCRIVCg1zZXR0bGVtZW50X2lkGAIgASgJEjQKCnBhcnR5X3JvbGUYAyABKA4yIC5zaWx2YW5hLnNldHRsZW1lbnQudjEuUGFydHlSb2xlEg8KB3N1Y2Nlc3MYBCABKAgSGwoOYWxsb2NhdGlvbl9jaWQYBSABKAlIAIgBARIhChRhbGxvY2F0aW9uX3VwZGF0ZV9pZBgGIAEoCUgBiAEBEhQKDGhvbGRpbmdfY2lkcxgHIAMoCRIaCg1lcnJvcl9tZXNzYWdlGAggASgJSAKIAQESMAoMYWxsb2NhdGVkX2F0GAkgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEIRCg9fYWxsb2NhdGlvbl9jaWRCFwoVX2FsbG9jYXRpb25fdXBkYXRlX2lkQhAKDl9lcnJvcl9tZXNzYWdlIv4CChBTZXR0bGVtZW50UmVwb3J0EhMKC3Byb3Bvc2FsX2lkGAEgASgJEhUKDXNldHRsZW1lbnRfaWQYAiABKAkSDwoHc3VjY2VzcxgDIAEoCBIcCg9zZXR0bGVkX2R2cF9jaWQYBCABKAlIAIgBARIhChRzZXR0bGVtZW50X3VwZGF0ZV9pZBgFIAEoCUgBiAEBEikKHHNldHRsZW1lbnRfY29tcGxldGlvbl9vZmZzZXQYBiABKAlIAogBARIVCg1hcmNoaXZlZF9jaWRzGAcgAygJEhoKDWVycm9yX21lc3NhZ2UYCCABKAlIA4gBARIuCgpzZXR0bGVkX2F0GAkgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEISChBfc2V0dGxlZF9kdnBfY2lkQhcKFV9zZXR0bGVtZW50X3VwZGF0ZV9pZEIfCh1fc2V0dGxlbWVudF9jb21wbGV0aW9uX29mZnNldEIQCg5fZXJyb3JfbWVzc2FnZSKHAgoLRXJyb3JSZXBvcnQSEwoLcHJvcG9zYWxfaWQYASABKAkSFQoNc2V0dGxlbWVudF9pZBgCIAEoCRI1CgVzdGFnZRgDIAEoDjImLnNpbHZhbmEuc2V0dGxlbWVudC52MS5TZXR0bGVtZW50U3RhZ2USEgoKZXJyb3JfY29kZRgEIAEoCRIVCg1lcnJvcl9tZXNzYWdlGAUgASgJEi0KB2RldGFpbHMYBiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SACIAQESLwoLb2NjdXJyZWRfYXQYByABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQgoKCF9kZXRhaWxzIoYCCgxTdGF0dXNVcGRhdGUSEwoLcHJvcG9zYWxfaWQYASABKAkSFQoNc2V0dGxlbWVudF9pZBgCIAEoCRI9Cg1jdXJyZW50X3N0YWdlGAMgASgOMiYuc2lsdmFuYS5zZXR0bGVtZW50LnYxLlNldHRsZW1lbnRTdGFnZRIUCgdtZXNzYWdlGAQgASgJSACIAQESLQoHbWV0cmljcxgFIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIAYgBARIuCgp1cGRhdGVkX2F0GAYgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEIKCghfbWVzc2FnZUIKCghfbWV0cmljcyLSAwoRU2V0dGxlbWVudENvbW1hbmQSSgoMY29tbWFuZF90eXBlGAEgASgOMjQuc2lsdmFuYS5zZXR0bGVtZW50LnYxLlNldHRsZW1lbnRDb21tYW5kLkNvbW1hbmRUeXBlEhMKC3Byb3Bvc2FsX2lkGAIgASgJEhUKDXNldHRsZW1lbnRfaWQYAyABKAkSMAoKcGFyYW1ldGVycxgEIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIAIgBARIuCgpleGVjdXRlX2J5GAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCLTAQoLQ29tbWFuZFR5cGUSHAoYQ09NTUFORF9UWVBFX1VOU1BFQ0lGSUVEEAASJAogQ09NTUFORF9UWVBFX0NSRUFURV9EVlBfUFJPUE9TQUwQARIbChdDT01NQU5EX1RZUEVfQUNDRVBUX0RWUBACEhkKFUNPTU1BTkRfVFlQRV9BTExPQ0FURRADEhcKE0NPTU1BTkRfVFlQRV9TRVRUTEUQBBIXChNDT01NQU5EX1RZUEVfQ0FOQ0VMEAUSFgoSQ09NTUFORF9UWVBFX1JFVFJZEAZCDQoLX3BhcmFtZXRlcnMi3wMKD1NldHRsZW1lbnRRdWVyeRJECgpxdWVyeV90eXBlGAEgASgOMjAuc2lsdmFuYS5zZXR0bGVtZW50LnYxLlNldHRsZW1lbnRRdWVyeS5RdWVyeVR5cGUSFQoIcGFydHlfaWQYAiABKAlIAIgBARIYCgtjb250cmFjdF9pZBgDIAEoCUgBiAEBEhoKDWluc3RydW1lbnRfaWQYBCABKAlIAogBARIwCgpwYXJhbWV0ZXJzGAUgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgDiAEBIsgBCglRdWVyeVR5cGUSGgoWUVVFUllfVFlQRV9VTlNQRUNJRklFRBAAEhsKF1FVRVJZX1RZUEVfR0VUX0hPTERJTkdTEAESHwobUVVFUllfVFlQRV9HRVRfVVNFUl9TRVJWSUNFEAISGwoXUVVFUllfVFlQRV9HRVRfQ09OVFJBQ1QQAxIkCiBRVUVSWV9UWVBFX0dFVF9BTExPQ0FUSU9OX1NUQVRVUxAEEh4KGlFVRVJZX1RZUEVfQ0hFQ0tfTElRVUlESVRZEAVCCwoJX3BhcnR5X2lkQg4KDF9jb250cmFjdF9pZEIQCg5faW5zdHJ1bWVudF9pZEINCgtfcGFyYW1ldGVycyKuAQoSU2V0dGxlbWVudFJlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgSFAoHbWVzc2FnZRgCIAEoCUgAiAEBEioKBGRhdGEYAyABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SAGIAQESMAoMcmVzcG9uZGVkX2F0GAQgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEIKCghfbWVzc2FnZUIHCgVfZGF0YSKBAQoaR2V0UGVuZGluZ1Byb3Bvc2Fsc1JlcXVlc3QSMwoEYXV0aBgBIAEoCzIlLnNpbHZhbmEuc2V0dGxlbWVudC52MS5DYW50b25Ob2RlQXV0aBIQCghwYXJ0eV9pZBgCIAEoCRISCgVsaW1pdBgDIAEoDUgAiAEBQggKBl9saW1pdCJxChtHZXRQZW5kaW5nUHJvcG9zYWxzUmVzcG9uc2USQwoJcHJvcG9zYWxzGAEgAygLMjAuc2lsdmFuYS5zZXR0bGVtZW50LnYxLlNldHRsZW1lbnRQcm9wb3NhbE1lc3NhZ2USDQoFdG90YWwYAiABKA0iaAoaR2V0U2V0dGxlbWVudFN0YXR1c1JlcXVlc3QSMwoEYXV0aBgBIAEoCzIlLnNpbHZhbmEuc2V0dGxlbWVudC52MS5DYW50b25Ob2RlQXV0aBIVCg1zZXR0bGVtZW50X2lkGAIgASgJIqcDCg1EdnBTdGVwU3RhdHVzEhEKCXN0ZXBfbmFtZRgBIAEoCRI4CgZzdGF0dXMYAiABKA4yKC5zaWx2YW5hLnNldHRsZW1lbnQudjEuRHZwU3RlcFN0YXR1c0VudW0SGAoLY29udHJhY3RfaWQYAyABKAlIAIgBARIWCgl1cGRhdGVfaWQYBCABKAlIAYgBARIzCgp1cGRhdGVkX2F0GAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgCiAEBEhoKDWVycm9yX21lc3NhZ2UYBiABKAlIA4gBARIZCgxjb25maXJtZWRfYnkYByABKAlIBIgBARJFChFjb25maXJtZWRfYnlfcm9sZRgIIAEoDjIlLnNpbHZhbmEuc2V0dGxlbWVudC52MS5SZWNvcmRlZEJ5Um9sZUgFiAEBQg4KDF9jb250cmFjdF9pZEIMCgpfdXBkYXRlX2lkQg0KC191cGRhdGVkX2F0QhAKDl9lcnJvcl9tZXNzYWdlQg8KDV9jb25maXJtZWRfYnlCFAoSX2NvbmZpcm1lZF9ieV9yb2xlIpoKChtHZXRTZXR0bGVtZW50U3RhdHVzUmVzcG9uc2USEwoLcHJvcG9zYWxfaWQYASABKAkSFQoNc2V0dGxlbWVudF9pZBgCIAEoCRI1CgVzdGFnZRgDIAEoDjImLnNpbHZhbmEuc2V0dGxlbWVudC52MS5TZXR0bGVtZW50U3RhZ2USGgoNZXJyb3JfbWVzc2FnZRgEIAEoCUgAiAEBEi4KCnVwZGF0ZWRfYXQYBSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEkYKGGR2cF9wcm9jZXNzaW5nX2ZlZV9idXllchgKIAEoCzIkLnNpbHZhbmEuc2V0dGxlbWVudC52MS5EdnBTdGVwU3RhdHVzEkcKGWR2cF9wcm9jZXNzaW5nX2ZlZV9zZWxsZXIYCyABKAsyJC5zaWx2YW5hLnNldHRsZW1lbnQudjEuRHZwU3RlcFN0YXR1cxJNCh9hbGxvY2F0aW9uX3Byb2Nlc3NpbmdfZmVlX2J1eWVyGAwgASgLMiQuc2lsdmFuYS5zZXR0bGVtZW50LnYxLkR2cFN0ZXBTdGF0dXMSTgogYWxsb2NhdGlvbl9wcm9jZXNzaW5nX2ZlZV9zZWxsZXIYDSABKAsyJC5zaWx2YW5hLnNldHRsZW1lbnQudjEuRHZwU3RlcFN0YXR1cxI5CgtkdnBfcmVxdWVzdBgOIAEoCzIkLnNpbHZhbmEuc2V0dGxlbWVudC52MS5EdnBTdGVwU3RhdHVzEjgKCmR2cF9hY2NlcHQYDyABKAsyJC5zaWx2YW5hLnNldHRsZW1lbnQudjEuRHZwU3RlcFN0YXR1cxI+ChBhbGxvY2F0aW9uX2J1eWVyGBAgASgLMiQuc2lsdmFuYS5zZXR0bGVtZW50LnYxLkR2cFN0ZXBTdGF0dXMSPwoRYWxsb2NhdGlvbl9zZWxsZXIYESABKAsyJC5zaWx2YW5hLnNldHRsZW1lbnQudjEuRHZwU3RlcFN0YXR1cxI4CgpzZXR0bGVtZW50GBIgASgLMiQuc2lsdmFuYS5zZXR0bGVtZW50LnYxLkR2cFN0ZXBTdGF0dXMSSAoadHJhZmZpY19jb21wZW5zYXRpb25fYnV5ZXIYEyABKAsyJC5zaWx2YW5hLnNldHRsZW1lbnQudjEuRHZwU3RlcFN0YXR1cxJJCht0cmFmZmljX2NvbXBlbnNhdGlvbl9zZWxsZXIYFCABKAsyJC5zaWx2YW5hLnNldHRsZW1lbnQudjEuRHZwU3RlcFN0YXR1cxI9Cg9wcmVjb25maXJtYXRpb24YFSABKAsyJC5zaWx2YW5hLnNldHRsZW1lbnQudjEuRHZwU3RlcFN0YXR1cxJDChVwcmVjb25maXJtYXRpb25fYnV5ZXIYFiABKAsyJC5zaWx2YW5hLnNldHRsZW1lbnQudjEuRHZwU3RlcFN0YXR1cxJEChZwcmVjb25maXJtYXRpb25fc2VsbGVyGBcgASgLMiQuc2lsdmFuYS5zZXR0bGVtZW50LnYxLkR2cFN0ZXBTdGF0dXMSPAoRYnV5ZXJfbmV4dF9hY3Rpb24YGCABKA4yIS5zaWx2YW5hLnNldHRsZW1lbnQudjEuTmV4dEFjdGlvbhI9ChJzZWxsZXJfbmV4dF9hY3Rpb24YGSABKA4yIS5zaWx2YW5hLnNldHRsZW1lbnQudjEuTmV4dEFjdGlvbkIQCg5fZXJyb3JfbWVzc2FnZSKVAQocU3VibWl0UHJlY29uZmlybWF0aW9uUmVxdWVzdBIzCgRhdXRoGAEgASgLMiUuc2lsdmFuYS5zZXR0bGVtZW50LnYxLkNhbnRvbk5vZGVBdXRoEkAKCGRlY2lzaW9uGAIgASgLMi4uc2lsdmFuYS5zZXR0bGVtZW50LnYxLlByZWNvbmZpcm1hdGlvbkRlY2lzaW9uInkKGERpc2Nsb3NlZENvbnRyYWN0TWVzc2FnZRITCgtjb250cmFjdF9pZBgBIAEoCRITCgt0ZW1wbGF0ZV9pZBgCIAEoCRIaChJjcmVhdGVkX2V2ZW50X2Jsb2IYAyABKAkSFwoPc3luY2hyb25pemVyX2lkGAQgASgJIqsBChxTYXZlRGlzY2xvc2VkQ29udHJhY3RSZXF1ZXN0EjMKBGF1dGgYASABKAsyJS5zaWx2YW5hLnNldHRsZW1lbnQudjEuQ2FudG9uTm9kZUF1dGgSEwoLcHJvcG9zYWxfaWQYAiABKAkSQQoIY29udHJhY3QYAyABKAsyLy5zaWx2YW5hLnNldHRsZW1lbnQudjEuRGlzY2xvc2VkQ29udHJhY3RNZXNzYWdlIkEKHVNhdmVEaXNjbG9zZWRDb250cmFjdFJlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgSDwoHbWVzc2FnZRgCIAEoCSKGAQocR2V0RGlzY2xvc2VkQ29udHJhY3RzUmVxdWVzdBIzCgRhdXRoGAEgASgLMiUuc2lsdmFuYS5zZXR0bGVtZW50LnYxLkNhbnRvbk5vZGVBdXRoEhMKC3Byb3Bvc2FsX2lkGAIgASgJEhIKBW93bmVyGAMgASgJSACIAQFCCAoGX293bmVyImMKHUdldERpc2Nsb3NlZENvbnRyYWN0c1Jlc3BvbnNlEkIKCWNvbnRyYWN0cxgBIAMoCzIvLnNpbHZhbmEuc2V0dGxlbWVudC52MS5EaXNjbG9zZWRDb250cmFjdE1lc3NhZ2Ui3AIKF1JlY29yZFNldHRsZW1lbnRSZXF1ZXN0EjMKBGF1dGgYASABKAsyJS5zaWx2YW5hLnNldHRsZW1lbnQudjEuQ2FudG9uTm9kZUF1dGgSEwoLcHJvcG9zYWxfaWQYAiABKAkSFwoPc2V0dGxlZF9kdnBfY2lkGAMgASgJEhwKFHNldHRsZW1lbnRfdXBkYXRlX2lkGAQgASgJEiQKHHNldHRsZW1lbnRfY29tcGxldGlvbl9vZmZzZXQYBSABKAkSFAoHZHZwX2NpZBgGIAEoCUgAiAEBEiEKFGFsbG9jYXRpb25fYnV5ZXJfY2lkGAcgASgJSAGIAQESIgoVYWxsb2NhdGlvbl9zZWxsZXJfY2lkGAggASgJSAKIAQFCCgoIX2R2cF9jaWRCFwoVX2FsbG9jYXRpb25fYnV5ZXJfY2lkQhgKFl9hbGxvY2F0aW9uX3NlbGxlcl9jaWQiUwoYUmVjb3JkU2V0dGxlbWVudFJlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgSDwoHbWVzc2FnZRgCIAEoCRIVCg1zZXR0bGVtZW50X2lkGAMgASgJIrYJChhSZWNvcmRUcmFuc2FjdGlvblJlcXVlc3QSMwoEYXV0aBgBIAEoCzIlLnNpbHZhbmEuc2V0dGxlbWVudC52MS5DYW50b25Ob2RlQXV0aBI3Cgd0eF90eXBlGAIgASgOMiYuc2lsdmFuYS5zZXR0bGVtZW50LnYxLlRyYW5zYWN0aW9uVHlwZRIUCgxzZW5kZXJfcGFydHkYAyABKAkSNgoLc2VuZGVyX3R5cGUYBCABKA4yIS5zaWx2YW5hLnNldHRsZW1lbnQudjEuU2VuZGVyVHlwZRIWCgl1cGRhdGVfaWQYBSABKAlIAIgBARIaCg1zdWJtaXNzaW9uX2lkGAYgASgJSAGIAQESIwoWc2V0dGxlbWVudF9wcm9wb3NhbF9pZBgHIAEoCUgCiAEBEhYKCW1hcmtldF9pZBgIIAEoCUgDiAEBEhkKDGNvdW50ZXJwYXJ0eRgJIAEoCUgEiAEBEhgKC2NvbnRyYWN0X2lkGAogASgJSAWIAQESGAoLY2hvaWNlX25hbWUYCyABKAlIBogBARITCgZhbW91bnQYDCABKAlIB4gBARIbCg5yZXdhcmRzX2Ftb3VudBgNIAEoCUgIiAEBEhoKDXJld2FyZHNfcm91bmQYDiABKARICYgBARIcCg90cmFmZmljX3JlcXVlc3QYDyABKARICogBARIdChB0cmFmZmljX3Jlc3BvbnNlGBAgASgESAuIAQESGgoNdHJhZmZpY190b3RhbBgRIAEoBEgMiAEBEiQKF2FjdGl2aXR5X21hcmtlcl9jcmVhdGVkGBIgASgESA2IAQESOAoGcmVzdWx0GBMgASgOMiguc2lsdmFuYS5zZXR0bGVtZW50LnYxLlRyYW5zYWN0aW9uUmVzdWx0EhoKDWVycm9yX21lc3NhZ2UYFCABKAlIDogBARIuCghtZXRhZGF0YRgVIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RID4gBARIsCgZ1cGRhdGUYFiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SBCIAQESGAoQZGFtbF90ZW1wbGF0ZV9pZBgXIAEoCRITCgtkYW1sX2Nob2ljZRgYIAEoCRIyCgxkYW1sX2Nob2ljZXMYGSABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SBGIAQFCDAoKX3VwZGF0ZV9pZEIQCg5fc3VibWlzc2lvbl9pZEIZChdfc2V0dGxlbWVudF9wcm9wb3NhbF9pZEIMCgpfbWFya2V0X2lkQg8KDV9jb3VudGVycGFydHlCDgoMX2NvbnRyYWN0X2lkQg4KDF9jaG9pY2VfbmFtZUIJCgdfYW1vdW50QhEKD19yZXdhcmRzX2Ftb3VudEIQCg5fcmV3YXJkc19yb3VuZEISChBfdHJhZmZpY19yZXF1ZXN0QhMKEV90cmFmZmljX3Jlc3BvbnNlQhAKDl90cmFmZmljX3RvdGFsQhoKGF9hY3Rpdml0eV9tYXJrZXJfY3JlYXRlZEIQCg5fZXJyb3JfbWVzc2FnZUILCglfbWV0YWRhdGFCCQoHX3VwZGF0ZUIPCg1fZGFtbF9jaG9pY2VzIlUKGVJlY29yZFRyYW5zYWN0aW9uUmVzcG9uc2USDwoHc3VjY2VzcxgBIAEoCBIPCgdtZXNzYWdlGAIgASgJEhYKDnRyYW5zYWN0aW9uX2lkGAMgASgEIpEDChxHZXRUcmFuc2FjdGlvbkhpc3RvcnlSZXF1ZXN0EjMKBGF1dGgYASABKAsyJS5zaWx2YW5hLnNldHRsZW1lbnQudjEuQ2FudG9uTm9kZUF1dGgSGQoMc2VuZGVyX3BhcnR5GAIgASgJSACIAQESPAoHdHhfdHlwZRgDIAEoDjImLnNpbHZhbmEuc2V0dGxlbWVudC52MS5UcmFuc2FjdGlvblR5cGVIAYgBARIjChZzZXR0bGVtZW50X3Byb3Bvc2FsX2lkGAQgASgJSAKIAQESPQoGcmVzdWx0GAUgASgOMiguc2lsdmFuYS5zZXR0bGVtZW50LnYxLlRyYW5zYWN0aW9uUmVzdWx0SAOIAQESEgoFbGltaXQYBiABKA1IBIgBARITCgZvZmZzZXQYByABKA1IBYgBAUIPCg1fc2VuZGVyX3BhcnR5QgoKCF90eF90eXBlQhkKF19zZXR0bGVtZW50X3Byb3Bvc2FsX2lkQgkKB19yZXN1bHRCCAoGX2xpbWl0QgkKB19vZmZzZXQidAodR2V0VHJhbnNhY3Rpb25IaXN0b3J5UmVzcG9uc2USRAoMdHJhbnNhY3Rpb25zGAEgAygLMi4uc2lsdmFuYS5zZXR0bGVtZW50LnYxLlRyYW5zYWN0aW9uSGlzdG9yeUVudHJ5Eg0KBXRvdGFsGAIgASgNIrwJChdUcmFuc2FjdGlvbkhpc3RvcnlFbnRyeRIKCgJpZBgBIAEoBBI3Cgd0eF90eXBlGAIgASgOMiYuc2lsdmFuYS5zZXR0bGVtZW50LnYxLlRyYW5zYWN0aW9uVHlwZRIUCgxzZW5kZXJfcGFydHkYAyABKAkSNgoLc2VuZGVyX3R5cGUYBCABKA4yIS5zaWx2YW5hLnNldHRsZW1lbnQudjEuU2VuZGVyVHlwZRIWCgl1cGRhdGVfaWQYBSABKAlIAIgBARIaCg1zdWJtaXNzaW9uX2lkGAYgASgJSAGIAQESIwoWc2V0dGxlbWVudF9wcm9wb3NhbF9pZBgHIAEoCUgCiAEBEhYKCW1hcmtldF9pZBgIIAEoCUgDiAEBEhkKDGNvdW50ZXJwYXJ0eRgJIAEoCUgEiAEBEhgKC2NvbnRyYWN0X2lkGAogASgJSAWIAQESGAoLY2hvaWNlX25hbWUYCyABKAlIBogBARITCgZhbW91bnQYDCABKAlIB4gBARIbCg5yZXdhcmRzX2Ftb3VudBgNIAEoCUgIiAEBEhoKDXJld2FyZHNfcm91bmQYDiABKARICYgBARIcCg90cmFmZmljX3JlcXVlc3QYDyABKARICogBARIdChB0cmFmZmljX3Jlc3BvbnNlGBAgASgESAuIAQESGgoNdHJhZmZpY190b3RhbBgRIAEoBEgMiAEBEiQKF2FjdGl2aXR5X21hcmtlcl9jcmVhdGVkGBIgASgESA2IAQESOAoGcmVzdWx0GBMgASgOMiguc2lsdmFuYS5zZXR0bGVtZW50LnYxLlRyYW5zYWN0aW9uUmVzdWx0EhoKDWVycm9yX21lc3NhZ2UYFCABKAlIDogBARIuCghtZXRhZGF0YRgVIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RID4gBARIuCgpjcmVhdGVkX2F0GBYgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIsCgZ1cGRhdGUYFyABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SBCIAQESGAoQZGFtbF90ZW1wbGF0ZV9pZBgYIAEoCRITCgtkYW1sX2Nob2ljZRgZIAEoCRIyCgxkYW1sX2Nob2ljZXMYGiABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SBGIAQFCDAoKX3VwZGF0ZV9pZEIQCg5fc3VibWlzc2lvbl9pZEIZChdfc2V0dGxlbWVudF9wcm9wb3NhbF9pZEIMCgpfbWFya2V0X2lkQg8KDV9jb3VudGVycGFydHlCDgoMX2NvbnRyYWN0X2lkQg4KDF9jaG9pY2VfbmFtZUIJCgdfYW1vdW50QhEKD19yZXdhcmRzX2Ftb3VudEIQCg5fcmV3YXJkc19yb3VuZEISChBfdHJhZmZpY19yZXF1ZXN0QhMKEV90cmFmZmljX3Jlc3BvbnNlQhAKDl90cmFmZmljX3RvdGFsQhoKGF9hY3Rpdml0eV9tYXJrZXJfY3JlYXRlZEIQCg5fZXJyb3JfbWVzc2FnZUILCglfbWV0YWRhdGFCCQoHX3VwZGF0ZUIPCg1fZGFtbF9jaG9pY2VzIs8EChxSZWNvcmRTZXR0bGVtZW50RXZlbnRSZXF1ZXN0EjMKBGF1dGgYASABKAsyJS5zaWx2YW5hLnNldHRsZW1lbnQudjEuQ2FudG9uTm9kZUF1dGgSEwoLcHJvcG9zYWxfaWQYAiABKAkSEwoLcmVjb3JkZWRfYnkYAyABKAkSPwoQcmVjb3JkZWRfYnlfcm9sZRgEIAEoDjIlLnNpbHZhbmEuc2V0dGxlbWVudC52MS5SZWNvcmRlZEJ5Um9sZRI+CgpldmVudF90eXBlGAUgASgOMiouc2lsdmFuYS5zZXR0bGVtZW50LnYxLlNldHRsZW1lbnRFdmVudFR5cGUSGgoNc3VibWlzc2lvbl9pZBgGIAEoCUgAiAEBEhYKCXVwZGF0ZV9pZBgHIAEoCUgBiAEBEhgKC2NvbnRyYWN0X2lkGAggASgJSAKIAQESGAoLdGVtcGxhdGVfaWQYCSABKAlIA4gBARI8CgZyZXN1bHQYCiABKA4yLC5zaWx2YW5hLnNldHRsZW1lbnQudjEuU2V0dGxlbWVudEV2ZW50UmVzdWx0EhoKDWVycm9yX21lc3NhZ2UYCyABKAlIBIgBARIuCghtZXRhZGF0YRgMIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIBYgBAUIQCg5fc3VibWlzc2lvbl9pZEIMCgpfdXBkYXRlX2lkQg4KDF9jb250cmFjdF9pZEIOCgxfdGVtcGxhdGVfaWRCEAoOX2Vycm9yX21lc3NhZ2VCCwoJX21ldGFkYXRhIlMKHVJlY29yZFNldHRsZW1lbnRFdmVudFJlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgSDwoHbWVzc2FnZRgCIAEoCRIQCghldmVudF9pZBgDIAEoBCLHAgobR2V0U2V0dGxlbWVudEhpc3RvcnlSZXF1ZXN0EjMKBGF1dGgYASABKAsyJS5zaWx2YW5hLnNldHRsZW1lbnQudjEuQ2FudG9uTm9kZUF1dGgSEwoLcHJvcG9zYWxfaWQYAiABKAkSQwoKZXZlbnRfdHlwZRgDIAEoDjIqLnNpbHZhbmEuc2V0dGxlbWVudC52MS5TZXR0bGVtZW50RXZlbnRUeXBlSACIAQESQQoGcmVzdWx0GAQgASgOMiwuc2lsdmFuYS5zZXR0bGVtZW50LnYxLlNldHRsZW1lbnRFdmVudFJlc3VsdEgBiAEBEhIKBWxpbWl0GAUgASgNSAKIAQESEwoGb2Zmc2V0GAYgASgNSAOIAQFCDQoLX2V2ZW50X3R5cGVCCQoHX3Jlc3VsdEIICgZfbGltaXRCCQoHX29mZnNldCJsChxHZXRTZXR0bGVtZW50SGlzdG9yeVJlc3BvbnNlEj0KBmV2ZW50cxgBIAMoCzItLnNpbHZhbmEuc2V0dGxlbWVudC52MS5TZXR0bGVtZW50SGlzdG9yeUVudHJ5Eg0KBXRvdGFsGAIgASgNItAEChZTZXR0bGVtZW50SGlzdG9yeUVudHJ5EgoKAmlkGAEgASgEEhMKC3Byb3Bvc2FsX2lkGAIgASgJEhMKC3JlY29yZGVkX2J5GAMgASgJEj8KEHJlY29yZGVkX2J5X3JvbGUYBCABKA4yJS5zaWx2YW5hLnNldHRsZW1lbnQudjEuUmVjb3JkZWRCeVJvbGUSPgoKZXZlbnRfdHlwZRgFIAEoDjIqLnNpbHZhbmEuc2V0dGxlbWVudC52MS5TZXR0bGVtZW50RXZlbnRUeXBlEhoKDXN1Ym1pc3Npb25faWQYBiABKAlIAIgBARIWCgl1cGRhdGVfaWQYByABKAlIAYgBARIYCgtjb250cmFjdF9pZBgIIAEoCUgCiAEBEhgKC3RlbXBsYXRlX2lkGAkgASgJSAOIAQESPAoGcmVzdWx0GAogASgOMiwuc2lsdmFuYS5zZXR0bGVtZW50LnYxLlNldHRsZW1lbnRFdmVudFJlc3VsdBIaCg1lcnJvcl9tZXNzYWdlGAsgASgJSASIAQESLgoIbWV0YWRhdGEYDCABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SAWIAQESLgoKY3JlYXRlZF9hdBgNIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBCEAoOX3N1Ym1pc3Npb25faWRCDAoKX3VwZGF0ZV9pZEIOCgxfY29udHJhY3RfaWRCDgoMX3RlbXBsYXRlX2lkQhAKDl9lcnJvcl9tZXNzYWdlQgsKCV9tZXRhZGF0YSLZAgobVXBkYXRlUHJvcG9zYWxTdGF0dXNSZXF1ZXN0EjMKBGF1dGgYASABKAsyJS5zaWx2YW5hLnNldHRsZW1lbnQudjEuQ2FudG9uTm9kZUF1dGgSEwoLcHJvcG9zYWxfaWQYAiABKAkSUAoKbmV3X3N0YXR1cxgDIAEoDjI8LnNpbHZhbmEuc2V0dGxlbWVudC52MS5VcGRhdGVQcm9wb3NhbFN0YXR1c1JlcXVlc3QuTmV3U3RhdHVzEhoKDWVycm9yX21lc3NhZ2UYBCABKAlIAIgBASJwCglOZXdTdGF0dXMSGgoWTkVXX1NUQVRVU19VTlNQRUNJRklFRBAAEhYKEk5FV19TVEFUVVNfU0VUVExFRBABEhgKFE5FV19TVEFUVVNfQ0FOQ0VMTEVEEAISFQoRTkVXX1NUQVRVU19GQUlMRUQQA0IQCg5fZXJyb3JfbWVzc2FnZSJAChxVcGRhdGVQcm9wb3NhbFN0YXR1c1Jlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgSDwoHbWVzc2FnZRgCIAEoCSKIAQogR2V0U2V0dGxlbWVudFByb3Bvc2FsQnlJZFJlcXVlc3QSPwoLY2FudG9uX2F1dGgYASABKAsyJS5zaWx2YW5hLnNldHRsZW1lbnQudjEuQ2FudG9uTm9kZUF1dGhIAIgBARITCgtwcm9wb3NhbF9pZBgDIAEoCUIOCgxfY2FudG9uX2F1dGgidgohR2V0U2V0dGxlbWVudFByb3Bvc2FsQnlJZFJlc3BvbnNlEg0KBWZvdW5kGAEgASgIEkIKCHByb3Bvc2FsGAIgASgLMjAuc2lsdmFuYS5zZXR0bGVtZW50LnYxLlNldHRsZW1lbnRQcm9wb3NhbE1lc3NhZ2UqhQQKD1NldHRsZW1lbnRTdGFnZRIgChxTRVRUTEVNRU5UX1NUQUdFX1VOU1BFQ0lGSUVEEAASJgoiU0VUVExFTUVOVF9TVEFHRV9QUk9QT1NBTF9SRUNFSVZFRBABEiwKKFNFVFRMRU1FTlRfU1RBR0VfUFJFQ09ORklSTUFUSU9OX1BFTkRJTkcQAhIhCh1TRVRUTEVNRU5UX1NUQUdFX1BSRUNPTkZJUk1FRBADEioKJlNFVFRMRU1FTlRfU1RBR0VfRFZQX1BST1BPU0FMX0NSRUFUSU5HEAQSKQolU0VUVExFTUVOVF9TVEFHRV9EVlBfUFJPUE9TQUxfQ1JFQVRFRBAFEiIKHlNFVFRMRU1FTlRfU1RBR0VfRFZQX0FDQ0VQVElORxAGEiEKHVNFVFRMRU1FTlRfU1RBR0VfRFZQX0FDQ0VQVEVEEAcSHwobU0VUVExFTUVOVF9TVEFHRV9BTExPQ0FUSU5HEAgSHgoaU0VUVExFTUVOVF9TVEFHRV9BTExPQ0FURUQQCRIdChlTRVRUTEVNRU5UX1NUQUdFX1NFVFRMSU5HEAoSHAoYU0VUVExFTUVOVF9TVEFHRV9TRVRUTEVEEAsSGwoXU0VUVExFTUVOVF9TVEFHRV9GQUlMRUQQDBIeChpTRVRUTEVNRU5UX1NUQUdFX0NBTkNFTExFRBANKo0BChdQcmVjb25maXJtYXRpb25SZXNwb25zZRIoCiRQUkVDT05GSVJNQVRJT05fUkVTUE9OU0VfVU5TUEVDSUZJRUQQABIjCh9QUkVDT05GSVJNQVRJT05fUkVTUE9OU0VfQUNDRVBUEAESIwofUFJFQ09ORklSTUFUSU9OX1JFU1BPTlNFX1JFSkVDVBACKm0KCVBhcnR5Um9sZRIaChZQQVJUWV9ST0xFX1VOU1BFQ0lGSUVEEAASFAoQUEFSVFlfUk9MRV9CVVlFUhABEhUKEVBBUlRZX1JPTEVfU0VMTEVSEAISFwoTUEFSVFlfUk9MRV9PUEVSQVRPUhADKvwDCg9UcmFuc2FjdGlvblR5cGUSIAocVFJBTlNBQ1RJT05fVFlQRV9VTlNQRUNJRklFRBAAEikKJVRSQU5TQUNUSU9OX1RZUEVfVVNFUl9TRVJWSUNFX1JFUVVFU1QQARIwCixUUkFOU0FDVElPTl9UWVBFX1VTRVJfU0VSVklDRV9SRVFVRVNUX0FDQ0VQVBACEigKJFRSQU5TQUNUSU9OX1RZUEVfVVNFUl9TRVJWSUNFX0NBTkNFTBADEiAKHFRSQU5TQUNUSU9OX1RZUEVfRFZQX1BST1BPU0UQBBIfChtUUkFOU0FDVElPTl9UWVBFX0RWUF9BQ0NFUFQQBRIfChtUUkFOU0FDVElPTl9UWVBFX0RWUF9DQU5DRUwQBhIfChtUUkFOU0FDVElPTl9UWVBFX0RWUF9TRVRUTEUQBxIdChlUUkFOU0FDVElPTl9UWVBFX0FMTE9DQVRFEAgSJAogVFJBTlNBQ1RJT05fVFlQRV9BTExPQ0FURV9DQU5DRUwQCRIhCh1UUkFOU0FDVElPTl9UWVBFX0ZFRV9UUkFOU0ZFUhAKEhoKFlRSQU5TQUNUSU9OX1RZUEVfTUVSR0UQCxIbChdUUkFOU0FDVElPTl9UWVBFX1VOTE9DSxAMEhoKFlRSQU5TQUNUSU9OX1RZUEVfT1RIRVIQDSqdAQoKU2VuZGVyVHlwZRIbChdTRU5ERVJfVFlQRV9VTlNQRUNJRklFRBAAEhgKFFNFTkRFUl9UWVBFX09QRVJBVE9SEAESFAoQU0VOREVSX1RZUEVfVVNFUhACEhUKEVNFTkRFUl9UWVBFX0JVWUVSEAMSFgoSU0VOREVSX1RZUEVfU0VMTEVSEAQSEwoPU0VOREVSX1RZUEVfQVBQEAUqlgEKEVRyYW5zYWN0aW9uUmVzdWx0EiIKHlRSQU5TQUNUSU9OX1JFU1VMVF9VTlNQRUNJRklFRBAAEh4KGlRSQU5TQUNUSU9OX1JFU1VMVF9QRU5ESU5HEAESHgoaVFJBTlNBQ1RJT05fUkVTVUxUX1NVQ0NFU1MQAhIdChlUUkFOU0FDVElPTl9SRVNVTFRfRkFJTEVEEAMq8xMKE1NldHRsZW1lbnRFdmVudFR5cGUSJQohU0VUVExFTUVOVF9FVkVOVF9UWVBFX1VOU1BFQ0lGSUVEEAASPAo4U0VUVExFTUVOVF9FVkVOVF9UWVBFX0RWUF9QUk9DRVNTSU5HX0ZFRV9CVVlFUl9TVUJNSVRURUQQARI8CjhTRVRUTEVNRU5UX0VWRU5UX1RZUEVfRFZQX1BST0NFU1NJTkdfRkVFX0JVWUVSX0NPTVBMRVRFRBACEjsKN1NFVFRMRU1FTlRfRVZFTlRfVFlQRV9EVlBfUFJPQ0VTU0lOR19GRUVfQlVZRVJfUkVDRUlWRUQQAxIvCitTRVRUTEVNRU5UX0VWRU5UX1RZUEVfRFZQX1JFUVVFU1RfU1VCTUlUVEVEEAQSLworU0VUVExFTUVOVF9FVkVOVF9UWVBFX0RWUF9SRVFVRVNUX0NPTVBMRVRFRBAFEi8KK1NFVFRMRU1FTlRfRVZFTlRfVFlQRV9EVlBfUkVRVUVTVF9XSVRORVNTRUQQBhIuCipTRVRUTEVNRU5UX0VWRU5UX1RZUEVfRFZQX1JFUVVFU1RfUkVKRUNURUQQBxIvCitTRVRUTEVNRU5UX0VWRU5UX1RZUEVfRFZQX1JFUVVFU1RfQ0FOQ0VMTEVEEAgSPQo5U0VUVExFTUVOVF9FVkVOVF9UWVBFX0RWUF9QUk9DRVNTSU5HX0ZFRV9TRUxMRVJfU1VCTUlUVEVEEAkSPQo5U0VUVExFTUVOVF9FVkVOVF9UWVBFX0RWUF9QUk9DRVNTSU5HX0ZFRV9TRUxMRVJfQ09NUExFVEVEEAoSPAo4U0VUVExFTUVOVF9FVkVOVF9UWVBFX0RWUF9QUk9DRVNTSU5HX0ZFRV9TRUxMRVJfUkVDRUlWRUQQCxIuCipTRVRUTEVNRU5UX0VWRU5UX1RZUEVfRFZQX0FDQ0VQVF9TVUJNSVRURUQQDBIuCipTRVRUTEVNRU5UX0VWRU5UX1RZUEVfRFZQX0FDQ0VQVF9DT01QTEVURUQQDRIwCixTRVRUTEVNRU5UX0VWRU5UX1RZUEVfRFZQX0FDQ0VQVEVEX1dJVE5FU1NFRBAOEiYKIlNFVFRMRU1FTlRfRVZFTlRfVFlQRV9EVlBfUkVKRUNURUQQDxInCiNTRVRUTEVNRU5UX0VWRU5UX1RZUEVfRFZQX1dJVEhEUkFXThAQEicKI1NFVFRMRU1FTlRfRVZFTlRfVFlQRV9EVlBfQ0FOQ0VMTEVEEBESQwo/U0VUVExFTUVOVF9FVkVOVF9UWVBFX0FMTE9DQVRJT05fUFJPQ0VTU0lOR19GRUVfQlVZRVJfU1VCTUlUVEVEEBISQwo/U0VUVExFTUVOVF9FVkVOVF9UWVBFX0FMTE9DQVRJT05fUFJPQ0VTU0lOR19GRUVfQlVZRVJfQ09NUExFVEVEEBMSQgo+U0VUVExFTUVOVF9FVkVOVF9UWVBFX0FMTE9DQVRJT05fUFJPQ0VTU0lOR19GRUVfQlVZRVJfUkVDRUlWRUQQFBI0CjBTRVRUTEVNRU5UX0VWRU5UX1RZUEVfQUxMT0NBVElPTl9CVVlFUl9TVUJNSVRURUQQFRI0CjBTRVRUTEVNRU5UX0VWRU5UX1RZUEVfQUxMT0NBVElPTl9CVVlFUl9DT01QTEVURUQQFhI0CjBTRVRUTEVNRU5UX0VWRU5UX1RZUEVfQUxMT0NBVElPTl9CVVlFUl9XSVRORVNTRUQQFxI0CjBTRVRUTEVNRU5UX0VWRU5UX1RZUEVfQUxMT0NBVElPTl9CVVlFUl9XSVRIRFJBV04QGBI0CjBTRVRUTEVNRU5UX0VWRU5UX1RZUEVfQUxMT0NBVElPTl9CVVlFUl9DQU5DRUxMRUQQGRJECkBTRVRUTEVNRU5UX0VWRU5UX1RZUEVfQUxMT0NBVElPTl9QUk9DRVNTSU5HX0ZFRV9TRUxMRVJfU1VCTUlUVEVEEBoSRApAU0VUVExFTUVOVF9FVkVOVF9UWVBFX0FMTE9DQVRJT05fUFJPQ0VTU0lOR19GRUVfU0VMTEVSX0NPTVBMRVRFRBAbEkMKP1NFVFRMRU1FTlRfRVZFTlRfVFlQRV9BTExPQ0FUSU9OX1BST0NFU1NJTkdfRkVFX1NFTExFUl9SRUNFSVZFRBAcEjUKMVNFVFRMRU1FTlRfRVZFTlRfVFlQRV9BTExPQ0FUSU9OX1NFTExFUl9TVUJNSVRURUQQHRI1CjFTRVRUTEVNRU5UX0VWRU5UX1RZUEVfQUxMT0NBVElPTl9TRUxMRVJfQ09NUExFVEVEEB4SNQoxU0VUVExFTUVOVF9FVkVOVF9UWVBFX0FMTE9DQVRJT05fU0VMTEVSX1dJVE5FU1NFRBAfEjUKMVNFVFRMRU1FTlRfRVZFTlRfVFlQRV9BTExPQ0FUSU9OX1NFTExFUl9XSVRIRFJBV04QIBI1CjFTRVRUTEVNRU5UX0VWRU5UX1RZUEVfQUxMT0NBVElPTl9TRUxMRVJfQ0FOQ0VMTEVEECESLgoqU0VUVExFTUVOVF9FVkVOVF9UWVBFX1NFVFRMRU1FTlRfU1VCTUlUVEVEECISLgoqU0VUVExFTUVOVF9FVkVOVF9UWVBFX1NFVFRMRU1FTlRfQ09NUExFVEVEECMSLgoqU0VUVExFTUVOVF9FVkVOVF9UWVBFX1NFVFRMRU1FTlRfV0lUTkVTU0VEECQSPgo6U0VUVExFTUVOVF9FVkVOVF9UWVBFX1RSQUZGSUNfQ09NUEVOU0FUSU9OX0JVWUVSX1NVQk1JVFRFRBAlEj4KOlNFVFRMRU1FTlRfRVZFTlRfVFlQRV9UUkFGRklDX0NPTVBFTlNBVElPTl9CVVlFUl9DT01QTEVURUQQJhI/CjtTRVRUTEVNRU5UX0VWRU5UX1RZUEVfVFJBRkZJQ19DT01QRU5TQVRJT05fU0VMTEVSX1NVQk1JVFRFRBAnEj8KO1NFVFRMRU1FTlRfRVZFTlRfVFlQRV9UUkFGRklDX0NPTVBFTlNBVElPTl9TRUxMRVJfQ09NUExFVEVEECgSMwovU0VUVExFTUVOVF9FVkVOVF9UWVBFX1BSRUNPTkZJUk1BVElPTl9SRVFVRVNURUQQKRIvCitTRVRUTEVNRU5UX0VWRU5UX1RZUEVfUFJFQ09ORklSTUFUSU9OX0JVWUVSECoSMAosU0VUVExFTUVOVF9FVkVOVF9UWVBFX1BSRUNPTkZJUk1BVElPTl9TRUxMRVIQKxIzCi9TRVRUTEVNRU5UX0VWRU5UX1RZUEVfUFJFQ09ORklSTUFUSU9OX0NBTkNFTExFRBAsEiEKHVNFVFRMRU1FTlRfRVZFTlRfVFlQRV9USU1FT1VUEC0qpwEKDlJlY29yZGVkQnlSb2xlEiAKHFJFQ09SREVEX0JZX1JPTEVfVU5TUEVDSUZJRUQQABIaChZSRUNPUkRFRF9CWV9ST0xFX0JVWUVSEAESGwoXUkVDT1JERURfQllfUk9MRV9TRUxMRVIQAhIdChlSRUNPUkRFRF9CWV9ST0xFX09QRVJBVE9SEAMSGwoXUkVDT1JERURfQllfUk9MRV9TWVNURU0QBCriAQoKTmV4dEFjdGlvbhIUChBORVhUX0FDVElPTl9OT05FEAASGgoWTkVYVF9BQ1RJT05fUFJFQ09ORklSTRABEhsKF05FWFRfQUNUSU9OX1BBWV9EVlBfRkVFEAISGgoWTkVYVF9BQ1RJT05fQ1JFQVRFX0RWUBADEhoKFk5FWFRfQUNUSU9OX0FDQ0VQVF9EVlAQBBIdChlORVhUX0FDVElPTl9QQVlfQUxMT0NfRkVFEAUSGAoUTkVYVF9BQ1RJT05fQUxMT0NBVEUQBhIUChBORVhUX0FDVElPTl9XQUlUEAcq0wEKFVNldHRsZW1lbnRFdmVudFJlc3VsdBInCiNTRVRUTEVNRU5UX0VWRU5UX1JFU1VMVF9VTlNQRUNJRklFRBAAEiMKH1NFVFRMRU1FTlRfRVZFTlRfUkVTVUxUX1BFTkRJTkcQARIjCh9TRVRUTEVNRU5UX0VWRU5UX1JFU1VMVF9TVUNDRVNTEAISIgoeU0VUVExFTUVOVF9FVkVOVF9SRVNVTFRfRkFJTEVEEAMSIwofU0VUVExFTUVOVF9FVkVOVF9SRVNVTFRfVElNRU9VVBAEKsMCChFEdnBTdGVwU3RhdHVzRW51bRIfChtEVlBfU1RFUF9TVEFUVVNfVU5TUEVDSUZJRUQQABIbChdEVlBfU1RFUF9TVEFUVVNfUEVORElORxABEh0KGURWUF9TVEVQX1NUQVRVU19TVUJNSVRURUQQAhIdChlEVlBfU1RFUF9TVEFUVVNfQ09NUExFVEVEEAMSHQoZRFZQX1NURVBfU1RBVFVTX0NPTkZJUk1FRBAEEhoKFkRWUF9TVEVQX1NUQVRVU19GQUlMRUQQBRIcChhEVlBfU1RFUF9TVEFUVVNfUkVKRUNURUQQBhIdChlEVlBfU1RFUF9TVEFUVVNfV0lUSERSQVdOEAcSHQoZRFZQX1NURVBfU1RBVFVTX0NBTkNFTExFRBAIEhsKF0RWUF9TVEVQX1NUQVRVU19USU1FT1VUEAky/QwKEVNldHRsZW1lbnRTZXJ2aWNlEnIKEFNldHRsZW1lbnRTdHJlYW0SLC5zaWx2YW5hLnNldHRsZW1lbnQudjEuQ2FudG9uVG9TZXJ2ZXJNZXNzYWdlGiwuc2lsdmFuYS5zZXR0bGVtZW50LnYxLlNlcnZlclRvQ2FudG9uTWVzc2FnZSgBMAESfAoTR2V0UGVuZGluZ1Byb3Bvc2FscxIxLnNpbHZhbmEuc2V0dGxlbWVudC52MS5HZXRQZW5kaW5nUHJvcG9zYWxzUmVxdWVzdBoyLnNpbHZhbmEuc2V0dGxlbWVudC52MS5HZXRQZW5kaW5nUHJvcG9zYWxzUmVzcG9uc2USfAoTR2V0U2V0dGxlbWVudFN0YXR1cxIxLnNpbHZhbmEuc2V0dGxlbWVudC52MS5HZXRTZXR0bGVtZW50U3RhdHVzUmVxdWVzdBoyLnNpbHZhbmEuc2V0dGxlbWVudC52MS5HZXRTZXR0bGVtZW50U3RhdHVzUmVzcG9uc2USZAoVU3VibWl0UHJlY29uZmlybWF0aW9uEjMuc2lsdmFuYS5zZXR0bGVtZW50LnYxLlN1Ym1pdFByZWNvbmZpcm1hdGlvblJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkSggEKFVNhdmVEaXNjbG9zZWRDb250cmFjdBIzLnNpbHZhbmEuc2V0dGxlbWVudC52MS5TYXZlRGlzY2xvc2VkQ29udHJhY3RSZXF1ZXN0GjQuc2lsdmFuYS5zZXR0bGVtZW50LnYxLlNhdmVEaXNjbG9zZWRDb250cmFjdFJlc3BvbnNlEoIBChVHZXREaXNjbG9zZWRDb250cmFjdHMSMy5zaWx2YW5hLnNldHRsZW1lbnQudjEuR2V0RGlzY2xvc2VkQ29udHJhY3RzUmVxdWVzdBo0LnNpbHZhbmEuc2V0dGxlbWVudC52MS5HZXREaXNjbG9zZWRDb250cmFjdHNSZXNwb25zZRJzChBSZWNvcmRTZXR0bGVtZW50Ei4uc2lsdmFuYS5zZXR0bGVtZW50LnYxLlJlY29yZFNldHRsZW1lbnRSZXF1ZXN0Gi8uc2lsdmFuYS5zZXR0bGVtZW50LnYxLlJlY29yZFNldHRsZW1lbnRSZXNwb25zZRJ2ChFSZWNvcmRUcmFuc2FjdGlvbhIvLnNpbHZhbmEuc2V0dGxlbWVudC52MS5SZWNvcmRUcmFuc2FjdGlvblJlcXVlc3QaMC5zaWx2YW5hLnNldHRsZW1lbnQudjEuUmVjb3JkVHJhbnNhY3Rpb25SZXNwb25zZRKCAQoVR2V0VHJhbnNhY3Rpb25IaXN0b3J5EjMuc2lsdmFuYS5zZXR0bGVtZW50LnYxLkdldFRyYW5zYWN0aW9uSGlzdG9yeVJlcXVlc3QaNC5zaWx2YW5hLnNldHRsZW1lbnQudjEuR2V0VHJhbnNhY3Rpb25IaXN0b3J5UmVzcG9uc2USggEKFVJlY29yZFNldHRsZW1lbnRFdmVudBIzLnNpbHZhbmEuc2V0dGxlbWVudC52MS5SZWNvcmRTZXR0bGVtZW50RXZlbnRSZXF1ZXN0GjQuc2lsdmFuYS5zZXR0bGVtZW50LnYxLlJlY29yZFNldHRsZW1lbnRFdmVudFJlc3BvbnNlEn8KFEdldFNldHRsZW1lbnRIaXN0b3J5EjIuc2lsdmFuYS5zZXR0bGVtZW50LnYxLkdldFNldHRsZW1lbnRIaXN0b3J5UmVxdWVzdBozLnNpbHZhbmEuc2V0dGxlbWVudC52MS5HZXRTZXR0bGVtZW50SGlzdG9yeVJlc3BvbnNlEn8KFFVwZGF0ZVByb3Bvc2FsU3RhdHVzEjIuc2lsdmFuYS5zZXR0bGVtZW50LnYxLlVwZGF0ZVByb3Bvc2FsU3RhdHVzUmVxdWVzdBozLnNpbHZhbmEuc2V0dGxlbWVudC52MS5VcGRhdGVQcm9wb3NhbFN0YXR1c1Jlc3BvbnNlEo4BChlHZXRTZXR0bGVtZW50UHJvcG9zYWxCeUlkEjcuc2lsdmFuYS5zZXR0bGVtZW50LnYxLkdldFNldHRsZW1lbnRQcm9wb3NhbEJ5SWRSZXF1ZXN0Gjguc2lsdmFuYS5zZXR0bGVtZW50LnYxLkdldFNldHRsZW1lbnRQcm9wb3NhbEJ5SWRSZXNwb25zZUI1WjNnaXRodWIuY29tL1NpbHZhbmFPbmUvY2FudG9uLWFnZW50L3Byb3RvO3NldHRsZW1lbnRiBnByb3RvMw", [file_google_protobuf_timestamp, file_google_protobuf_empty, file_google_protobuf_struct]);
|
|
15
|
+
fileDesc("Cixwcm90by9zaWx2YW5hL3NldHRsZW1lbnQvdjEvc2V0dGxlbWVudC5wcm90bxIVc2lsdmFuYS5zZXR0bGVtZW50LnYxIn4KDkNhbnRvbk5vZGVBdXRoEhAKCHBhcnR5X2lkGAEgASgJEhEKCWp3dF90b2tlbhgCIAEoCRIVCg1ub2RlX2luc3RhbmNlGAMgASgJEjAKDGNvbm5lY3RlZF9hdBgEIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAingEKFFNldHRsZW1lbnRJbnN0cnVtZW50EhUKDWluc3RydW1lbnRfaWQYASABKAkSDgoGc3ltYm9sGAIgASgJEhAKCHJlZ2lzdHJ5GAMgASgJEhAKCHF1YW50aXR5GAQgASgJEi4KCG1ldGFkYXRhGAUgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgAiAEBQgsKCV9tZXRhZGF0YSKZBQoZU2V0dGxlbWVudFByb3Bvc2FsTWVzc2FnZRITCgtwcm9wb3NhbF9pZBgBIAEoCRIVCg1zZXR0bGVtZW50X2lkGAIgASgJEhEKCW1hcmtldF9pZBgDIAEoCRITCgtidXllcl9wYXJ0eRgEIAEoCRIUCgxzZWxsZXJfcGFydHkYBSABKAkSRAoPYmFzZV9pbnN0cnVtZW50GAYgASgLMisuc2lsdmFuYS5zZXR0bGVtZW50LnYxLlNldHRsZW1lbnRJbnN0cnVtZW50EkUKEHF1b3RlX2luc3RydW1lbnQYByABKAsyKy5zaWx2YW5hLnNldHRsZW1lbnQudjEuU2V0dGxlbWVudEluc3RydW1lbnQSGAoQc2V0dGxlbWVudF9wcmljZRgIIAEoCRIzCg9hbGxvY2F0ZV9iZWZvcmUYCSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEjEKDXNldHRsZV9iZWZvcmUYCiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEi4KCG1ldGFkYXRhGAsgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgAiAEBEi4KCmNyZWF0ZWRfYXQYDCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEiAKGGR2cF9wcm9jZXNzaW5nX2ZlZV9idXllchgNIAEoCRIhChlkdnBfcHJvY2Vzc2luZ19mZWVfc2VsbGVyGA4gASgJEicKH2FsbG9jYXRpb25fcHJvY2Vzc2luZ19mZWVfYnV5ZXIYDyABKAkSKAogYWxsb2NhdGlvbl9wcm9jZXNzaW5nX2ZlZV9zZWxsZXIYECABKAlCCwoJX21ldGFkYXRhIokCChZQcmVjb25maXJtYXRpb25SZXF1ZXN0EhMKC3Byb3Bvc2FsX2lkGAEgASgJEhUKDXNldHRsZW1lbnRfaWQYAiABKAkSQgoIcHJvcG9zYWwYAyABKAsyMC5zaWx2YW5hLnNldHRsZW1lbnQudjEuU2V0dGxlbWVudFByb3Bvc2FsTWVzc2FnZRIYChByZXF1ZXN0aW5nX3BhcnR5GAQgASgJEi4KCnJlc3BvbmRfYnkYBSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEisKBXRlcm1zGAYgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgAiAEBQggKBl90ZXJtcyK/AgoXUHJlY29uZmlybWF0aW9uRGVjaXNpb24SEwoLcHJvcG9zYWxfaWQYASABKAkSFQoNc2V0dGxlbWVudF9pZBgCIAEoCRJACghyZXNwb25zZRgDIAEoDjIuLnNpbHZhbmEuc2V0dGxlbWVudC52MS5QcmVjb25maXJtYXRpb25SZXNwb25zZRIdChByZWplY3Rpb25fcmVhc29uGAQgASgJSACIAQESMAoKY29uZGl0aW9ucxgFIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIAYgBARIRCglzaWduZWRfYnkYBiABKAkSLgoKZGVjaWRlZF9hdBgHIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBCEwoRX3JlamVjdGlvbl9yZWFzb25CDQoLX2NvbmRpdGlvbnMi2AEKEkR2cENvbnRyYWN0Q3JlYXRlZBITCgtwcm9wb3NhbF9pZBgBIAEoCRIVCg1zZXR0bGVtZW50X2lkGAIgASgJEhgKEGR2cF9wcm9wb3NhbF9jaWQYAyABKAkSHgoWZHZwX3Byb3Bvc2FsX3VwZGF0ZV9pZBgEIAEoCRIWCg5wcm9wb3Nlcl9wYXJ0eRgFIAEoCRIUCgxjb3VudGVycGFydHkYBiABKAkSLgoKY3JlYXRlZF9hdBgHIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAirwEKE0R2cENvbnRyYWN0QWNjZXB0ZWQSEwoLcHJvcG9zYWxfaWQYASABKAkSFQoNc2V0dGxlbWVudF9pZBgCIAEoCRIPCgdkdnBfY2lkGAMgASgJEhUKDWR2cF91cGRhdGVfaWQYBCABKAkSEwoLYWNjZXB0ZWRfYnkYBSABKAkSLwoLYWNjZXB0ZWRfYXQYBiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wItsCChBBbGxvY2F0aW9uU3RhdHVzEhMKC3Byb3Bvc2FsX2lkGAEgASgJEhUKDXNldHRsZW1lbnRfaWQYAiABKAkSNAoKcGFydHlfcm9sZRgDIAEoDjIgLnNpbHZhbmEuc2V0dGxlbWVudC52MS5QYXJ0eVJvbGUSEAoIcGFydHlfaWQYBCABKAkSFgoOYWxsb2NhdGlvbl9jaWQYBSABKAkSHAoUYWxsb2NhdGlvbl91cGRhdGVfaWQYBiABKAkSFQoNaW5zdHJ1bWVudF9pZBgHIAEoCRIQCghxdWFudGl0eRgIIAEoCRIUCgxpc19hbGxvY2F0ZWQYCSABKAgSGgoNZXJyb3JfbWVzc2FnZRgKIAEoCUgAiAEBEjAKDGFsbG9jYXRlZF9hdBgLIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBCEAoOX2Vycm9yX21lc3NhZ2UiqgIKGVNldHRsZW1lbnRFeGVjdXRpb25TdGF0dXMSEwoLcHJvcG9zYWxfaWQYASABKAkSFQoNc2V0dGxlbWVudF9pZBgCIAEoCRIPCgdkdnBfY2lkGAMgASgJEhcKD3NldHRsZWRfZHZwX2NpZBgEIAEoCRIcChRzZXR0bGVtZW50X3VwZGF0ZV9pZBgFIAEoCRIkChxzZXR0bGVtZW50X2NvbXBsZXRpb25fb2Zmc2V0GAYgASgJEhUKDWlzX3N1Y2Nlc3NmdWwYByABKAgSGgoNZXJyb3JfbWVzc2FnZRgIIAEoCUgAiAEBEi4KCnNldHRsZWRfYXQYCSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQhAKDl9lcnJvcl9tZXNzYWdlIooBCg9Vc2VyU2VydmljZUluZm8SEAoIcGFydHlfaWQYASABKAkSGAoQdXNlcl9zZXJ2aWNlX2NpZBgCIAEoCRIbChNvcGVyYXRvcl9jb25maWdfY2lkGAMgASgJEi4KCmNyZWF0ZWRfYXQYBCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wIrsCChNTZXR0bGVtZW50SGFuZHNoYWtlEjMKBGF1dGgYASABKAsyJS5zaWx2YW5hLnNldHRsZW1lbnQudjEuQ2FudG9uTm9kZUF1dGgSEQoJcGFydHlfaWRzGAIgAygJEj0KDXVzZXJfc2VydmljZXMYAyADKAsyJi5zaWx2YW5hLnNldHRsZW1lbnQudjEuVXNlclNlcnZpY2VJbmZvEhYKDm9wZXJhdG9yX3BhcnR5GAQgASgJEjIKDGNhcGFiaWxpdGllcxgFIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIAIgBARIkChdsaXF1aWRpdHlfcHJvdmlkZXJfbmFtZRgGIAEoCUgBiAEBQg8KDV9jYXBhYmlsaXRpZXNCGgoYX2xpcXVpZGl0eV9wcm92aWRlcl9uYW1lIrgBCgxIYW5kc2hha2VBY2sSEAoIYWNjZXB0ZWQYASABKAgSHQoQcmVqZWN0aW9uX3JlYXNvbhgCIAEoCUgAiAEBEhIKCnNlc3Npb25faWQYAyABKAkSHQoVc3VwcG9ydGVkX2luc3RydW1lbnRzGAQgAygJEi8KC3NlcnZlcl90aW1lGAUgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEITChFfcmVqZWN0aW9uX3JlYXNvbiJnCglIZWFydGJlYXQSEgoKc2Vzc2lvbl9pZBgBIAEoCRItCgl0aW1lc3RhbXAYAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEhcKD3NlcXVlbmNlX251bWJlchgDIAEoBCJnChVMaXF1aWRpdHlQcm92aWRlclBpbmcSHwoXbGlxdWlkaXR5X3Byb3ZpZGVyX25hbWUYASABKAkSLQoJdGltZXN0YW1wGAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcCKoAQoVTGlxdWlkaXR5UHJvdmlkZXJQb25nEh8KF2xpcXVpZGl0eV9wcm92aWRlcl9uYW1lGAEgASgJEg8KB3N1Y2Nlc3MYAiABKAgSGgoNZXJyb3JfbWVzc2FnZRgDIAEoCUgAiAEBEi8KC3NlcnZlcl90aW1lGAQgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEIQCg5fZXJyb3JfbWVzc2FnZSLZAQoKUmZxUmVxdWVzdBIOCgZyZnFfaWQYASABKAkSEQoJbWFya2V0X2lkGAIgASgJEjYKCWRpcmVjdGlvbhgDIAEoDjIjLnNpbHZhbmEuc2V0dGxlbWVudC52MS5SZnFEaXJlY3Rpb24SEAoIcXVhbnRpdHkYBCABKAkSLgoKcmVzcG9uZF9ieRgFIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLgoKY3JlYXRlZF9hdBgGIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAiwgMKCFJmcVF1b3RlEg4KBnJmcV9pZBgBIAEoCRIQCghxdW90ZV9pZBgCIAEoCRIRCgltYXJrZXRfaWQYAyABKAkSNgoJZGlyZWN0aW9uGAQgASgOMiMuc2lsdmFuYS5zZXR0bGVtZW50LnYxLlJmcURpcmVjdGlvbhIQCghxdWFudGl0eRgFIAEoCRINCgVwcmljZRgGIAEoCRIWCg5xdW90ZV9xdWFudGl0eRgHIAEoCRIWCg52YWxpZF9mb3Jfc2VjcxgIIAEoDRIvCgt2YWxpZF91bnRpbBgJIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASEwoLbHBfcGFydHlfaWQYCiABKAkSDwoHbHBfbmFtZRgLIAEoCRItCglxdW90ZWRfYXQYDCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEiEKFGFsbG9jYXRlX2JlZm9yZV9zZWNzGA0gASgNSACIAQESHwoSc2V0dGxlX2JlZm9yZV9zZWNzGA4gASgNSAGIAQFCFwoVX2FsbG9jYXRlX2JlZm9yZV9zZWNzQhUKE19zZXR0bGVfYmVmb3JlX3NlY3MiswIKCVJmcVJlamVjdBIOCgZyZnFfaWQYASABKAkSEwoLbHBfcGFydHlfaWQYAiABKAkSDwoHbHBfbmFtZRgDIAEoCRI5CgZyZWFzb24YBCABKA4yKS5zaWx2YW5hLnNldHRsZW1lbnQudjEuUmZxUmVqZWN0aW9uUmVhc29uEhoKDXJlYXNvbl9kZXRhaWwYBSABKAlIAIgBARIvCgtyZWplY3RlZF9hdBgGIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASGQoMbWluX3F1YW50aXR5GAcgASgJSAGIAQESGQoMbWF4X3F1YW50aXR5GAggASgJSAKIAQFCEAoOX3JlYXNvbl9kZXRhaWxCDwoNX21pbl9xdWFudGl0eUIPCg1fbWF4X3F1YW50aXR5IpUHChVTZXJ2ZXJUb0NhbnRvbk1lc3NhZ2USEgoKc2Vzc2lvbl9pZBgBIAEoCRIXCg9zZXF1ZW5jZV9udW1iZXIYAiABKAQSPAoNaGFuZHNoYWtlX2FjaxgDIAEoCzIjLnNpbHZhbmEuc2V0dGxlbWVudC52MS5IYW5kc2hha2VBY2tIABI1CgloZWFydGJlYXQYBCABKAsyIC5zaWx2YW5hLnNldHRsZW1lbnQudjEuSGVhcnRiZWF0SAASRAoIcHJvcG9zYWwYBSABKAsyMC5zaWx2YW5hLnNldHRsZW1lbnQudjEuU2V0dGxlbWVudFByb3Bvc2FsTWVzc2FnZUgAElAKF3ByZWNvbmZpcm1hdGlvbl9yZXF1ZXN0GAYgASgLMi0uc2lsdmFuYS5zZXR0bGVtZW50LnYxLlByZWNvbmZpcm1hdGlvblJlcXVlc3RIABJACgtkdnBfY3JlYXRlZBgHIAEoCzIpLnNpbHZhbmEuc2V0dGxlbWVudC52MS5EdnBDb250cmFjdENyZWF0ZWRIABJCCgxkdnBfYWNjZXB0ZWQYCCABKAsyKi5zaWx2YW5hLnNldHRsZW1lbnQudjEuRHZwQ29udHJhY3RBY2NlcHRlZEgAEkQKEWFsbG9jYXRpb25fc3RhdHVzGAkgASgLMicuc2lsdmFuYS5zZXR0bGVtZW50LnYxLkFsbG9jYXRpb25TdGF0dXNIABJNChFzZXR0bGVtZW50X3N0YXR1cxgKIAEoCzIwLnNpbHZhbmEuc2V0dGxlbWVudC52MS5TZXR0bGVtZW50RXhlY3V0aW9uU3RhdHVzSAASOwoHY29tbWFuZBgLIAEoCzIoLnNpbHZhbmEuc2V0dGxlbWVudC52MS5TZXR0bGVtZW50Q29tbWFuZEgAEjcKBXF1ZXJ5GAwgASgLMiYuc2lsdmFuYS5zZXR0bGVtZW50LnYxLlNldHRsZW1lbnRRdWVyeUgAEj8KB2xwX3BvbmcYDiABKAsyLC5zaWx2YW5hLnNldHRsZW1lbnQudjEuTGlxdWlkaXR5UHJvdmlkZXJQb25nSAASOAoLcmZxX3JlcXVlc3QYDyABKAsyIS5zaWx2YW5hLnNldHRsZW1lbnQudjEuUmZxUmVxdWVzdEgAEisKB3NlbnRfYXQYDSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQgkKB21lc3NhZ2UinwcKFUNhbnRvblRvU2VydmVyTWVzc2FnZRISCgpzZXNzaW9uX2lkGAEgASgJEhcKD3NlcXVlbmNlX251bWJlchgCIAEoBBI/CgloYW5kc2hha2UYAyABKAsyKi5zaWx2YW5hLnNldHRsZW1lbnQudjEuU2V0dGxlbWVudEhhbmRzaGFrZUgAEjUKCWhlYXJ0YmVhdBgEIAEoCzIgLnNpbHZhbmEuc2V0dGxlbWVudC52MS5IZWFydGJlYXRIABJJCg9wcmVjb25maXJtYXRpb24YBSABKAsyLi5zaWx2YW5hLnNldHRsZW1lbnQudjEuUHJlY29uZmlybWF0aW9uRGVjaXNpb25IABJACgxkdnBfY3JlYXRpb24YBiABKAsyKC5zaWx2YW5hLnNldHRsZW1lbnQudjEuRHZwQ3JlYXRpb25SZXBvcnRIABJECg5kdnBfYWNjZXB0YW5jZRgHIAEoCzIqLnNpbHZhbmEuc2V0dGxlbWVudC52MS5EdnBBY2NlcHRhbmNlUmVwb3J0SAASPQoKYWxsb2NhdGlvbhgIIAEoCzInLnNpbHZhbmEuc2V0dGxlbWVudC52MS5BbGxvY2F0aW9uUmVwb3J0SAASPQoKc2V0dGxlbWVudBgJIAEoCzInLnNpbHZhbmEuc2V0dGxlbWVudC52MS5TZXR0bGVtZW50UmVwb3J0SAASPQoIcmVzcG9uc2UYCiABKAsyKS5zaWx2YW5hLnNldHRsZW1lbnQudjEuU2V0dGxlbWVudFJlc3BvbnNlSAASMwoFZXJyb3IYCyABKAsyIi5zaWx2YW5hLnNldHRsZW1lbnQudjEuRXJyb3JSZXBvcnRIABI1CgZzdGF0dXMYDCABKAsyIy5zaWx2YW5hLnNldHRsZW1lbnQudjEuU3RhdHVzVXBkYXRlSAASPwoHbHBfcGluZxgOIAEoCzIsLnNpbHZhbmEuc2V0dGxlbWVudC52MS5MaXF1aWRpdHlQcm92aWRlclBpbmdIABI0CglyZnFfcXVvdGUYDyABKAsyHy5zaWx2YW5hLnNldHRsZW1lbnQudjEuUmZxUXVvdGVIABI2CgpyZnFfcmVqZWN0GBAgASgLMiAuc2lsdmFuYS5zZXR0bGVtZW50LnYxLlJmcVJlamVjdEgAEisKB3NlbnRfYXQYDSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQgkKB21lc3NhZ2UiogIKEUR2cENyZWF0aW9uUmVwb3J0EhMKC3Byb3Bvc2FsX2lkGAEgASgJEhUKDXNldHRsZW1lbnRfaWQYAiABKAkSDwoHc3VjY2VzcxgDIAEoCBIdChBkdnBfcHJvcG9zYWxfY2lkGAQgASgJSACIAQESIwoWZHZwX3Byb3Bvc2FsX3VwZGF0ZV9pZBgFIAEoCUgBiAEBEhoKDWVycm9yX21lc3NhZ2UYBiABKAlIAogBARIuCgpjcmVhdGVkX2F0GAcgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEITChFfZHZwX3Byb3Bvc2FsX2NpZEIZChdfZHZwX3Byb3Bvc2FsX3VwZGF0ZV9pZEIQCg5fZXJyb3JfbWVzc2FnZSKBAgoTRHZwQWNjZXB0YW5jZVJlcG9ydBITCgtwcm9wb3NhbF9pZBgBIAEoCRIVCg1zZXR0bGVtZW50X2lkGAIgASgJEg8KB3N1Y2Nlc3MYAyABKAgSFAoHZHZwX2NpZBgEIAEoCUgAiAEBEhoKDWR2cF91cGRhdGVfaWQYBSABKAlIAYgBARIaCg1lcnJvcl9tZXNzYWdlGAYgASgJSAKIAQESLwoLYWNjZXB0ZWRfYXQYByABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQgoKCF9kdnBfY2lkQhAKDl9kdnBfdXBkYXRlX2lkQhAKDl9lcnJvcl9tZXNzYWdlIucCChBBbGxvY2F0aW9uUmVwb3J0EhMKC3Byb3Bvc2FsX2lkGAEgASgJEhUKDXNldHRsZW1lbnRfaWQYAiABKAkSNAoKcGFydHlfcm9sZRgDIAEoDjIgLnNpbHZhbmEuc2V0dGxlbWVudC52MS5QYXJ0eVJvbGUSDwoHc3VjY2VzcxgEIAEoCBIbCg5hbGxvY2F0aW9uX2NpZBgFIAEoCUgAiAEBEiEKFGFsbG9jYXRpb25fdXBkYXRlX2lkGAYgASgJSAGIAQESFAoMaG9sZGluZ19jaWRzGAcgAygJEhoKDWVycm9yX21lc3NhZ2UYCCABKAlIAogBARIwCgxhbGxvY2F0ZWRfYXQYCSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQhEKD19hbGxvY2F0aW9uX2NpZEIXChVfYWxsb2NhdGlvbl91cGRhdGVfaWRCEAoOX2Vycm9yX21lc3NhZ2Ui/gIKEFNldHRsZW1lbnRSZXBvcnQSEwoLcHJvcG9zYWxfaWQYASABKAkSFQoNc2V0dGxlbWVudF9pZBgCIAEoCRIPCgdzdWNjZXNzGAMgASgIEhwKD3NldHRsZWRfZHZwX2NpZBgEIAEoCUgAiAEBEiEKFHNldHRsZW1lbnRfdXBkYXRlX2lkGAUgASgJSAGIAQESKQocc2V0dGxlbWVudF9jb21wbGV0aW9uX29mZnNldBgGIAEoCUgCiAEBEhUKDWFyY2hpdmVkX2NpZHMYByADKAkSGgoNZXJyb3JfbWVzc2FnZRgIIAEoCUgDiAEBEi4KCnNldHRsZWRfYXQYCSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQhIKEF9zZXR0bGVkX2R2cF9jaWRCFwoVX3NldHRsZW1lbnRfdXBkYXRlX2lkQh8KHV9zZXR0bGVtZW50X2NvbXBsZXRpb25fb2Zmc2V0QhAKDl9lcnJvcl9tZXNzYWdlIocCCgtFcnJvclJlcG9ydBITCgtwcm9wb3NhbF9pZBgBIAEoCRIVCg1zZXR0bGVtZW50X2lkGAIgASgJEjUKBXN0YWdlGAMgASgOMiYuc2lsdmFuYS5zZXR0bGVtZW50LnYxLlNldHRsZW1lbnRTdGFnZRISCgplcnJvcl9jb2RlGAQgASgJEhUKDWVycm9yX21lc3NhZ2UYBSABKAkSLQoHZGV0YWlscxgGIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIAIgBARIvCgtvY2N1cnJlZF9hdBgHIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBCCgoIX2RldGFpbHMihgIKDFN0YXR1c1VwZGF0ZRITCgtwcm9wb3NhbF9pZBgBIAEoCRIVCg1zZXR0bGVtZW50X2lkGAIgASgJEj0KDWN1cnJlbnRfc3RhZ2UYAyABKA4yJi5zaWx2YW5hLnNldHRsZW1lbnQudjEuU2V0dGxlbWVudFN0YWdlEhQKB21lc3NhZ2UYBCABKAlIAIgBARItCgdtZXRyaWNzGAUgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgBiAEBEi4KCnVwZGF0ZWRfYXQYBiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQgoKCF9tZXNzYWdlQgoKCF9tZXRyaWNzItIDChFTZXR0bGVtZW50Q29tbWFuZBJKCgxjb21tYW5kX3R5cGUYASABKA4yNC5zaWx2YW5hLnNldHRsZW1lbnQudjEuU2V0dGxlbWVudENvbW1hbmQuQ29tbWFuZFR5cGUSEwoLcHJvcG9zYWxfaWQYAiABKAkSFQoNc2V0dGxlbWVudF9pZBgDIAEoCRIwCgpwYXJhbWV0ZXJzGAQgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgAiAEBEi4KCmV4ZWN1dGVfYnkYBSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wItMBCgtDb21tYW5kVHlwZRIcChhDT01NQU5EX1RZUEVfVU5TUEVDSUZJRUQQABIkCiBDT01NQU5EX1RZUEVfQ1JFQVRFX0RWUF9QUk9QT1NBTBABEhsKF0NPTU1BTkRfVFlQRV9BQ0NFUFRfRFZQEAISGQoVQ09NTUFORF9UWVBFX0FMTE9DQVRFEAMSFwoTQ09NTUFORF9UWVBFX1NFVFRMRRAEEhcKE0NPTU1BTkRfVFlQRV9DQU5DRUwQBRIWChJDT01NQU5EX1RZUEVfUkVUUlkQBkINCgtfcGFyYW1ldGVycyLfAwoPU2V0dGxlbWVudFF1ZXJ5EkQKCnF1ZXJ5X3R5cGUYASABKA4yMC5zaWx2YW5hLnNldHRsZW1lbnQudjEuU2V0dGxlbWVudFF1ZXJ5LlF1ZXJ5VHlwZRIVCghwYXJ0eV9pZBgCIAEoCUgAiAEBEhgKC2NvbnRyYWN0X2lkGAMgASgJSAGIAQESGgoNaW5zdHJ1bWVudF9pZBgEIAEoCUgCiAEBEjAKCnBhcmFtZXRlcnMYBSABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SAOIAQEiyAEKCVF1ZXJ5VHlwZRIaChZRVUVSWV9UWVBFX1VOU1BFQ0lGSUVEEAASGwoXUVVFUllfVFlQRV9HRVRfSE9MRElOR1MQARIfChtRVUVSWV9UWVBFX0dFVF9VU0VSX1NFUlZJQ0UQAhIbChdRVUVSWV9UWVBFX0dFVF9DT05UUkFDVBADEiQKIFFVRVJZX1RZUEVfR0VUX0FMTE9DQVRJT05fU1RBVFVTEAQSHgoaUVVFUllfVFlQRV9DSEVDS19MSVFVSURJVFkQBUILCglfcGFydHlfaWRCDgoMX2NvbnRyYWN0X2lkQhAKDl9pbnN0cnVtZW50X2lkQg0KC19wYXJhbWV0ZXJzIq4BChJTZXR0bGVtZW50UmVzcG9uc2USDwoHc3VjY2VzcxgBIAEoCBIUCgdtZXNzYWdlGAIgASgJSACIAQESKgoEZGF0YRgDIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIAYgBARIwCgxyZXNwb25kZWRfYXQYBCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQgoKCF9tZXNzYWdlQgcKBV9kYXRhIoEBChpHZXRQZW5kaW5nUHJvcG9zYWxzUmVxdWVzdBIzCgRhdXRoGAEgASgLMiUuc2lsdmFuYS5zZXR0bGVtZW50LnYxLkNhbnRvbk5vZGVBdXRoEhAKCHBhcnR5X2lkGAIgASgJEhIKBWxpbWl0GAMgASgNSACIAQFCCAoGX2xpbWl0InEKG0dldFBlbmRpbmdQcm9wb3NhbHNSZXNwb25zZRJDCglwcm9wb3NhbHMYASADKAsyMC5zaWx2YW5hLnNldHRsZW1lbnQudjEuU2V0dGxlbWVudFByb3Bvc2FsTWVzc2FnZRINCgV0b3RhbBgCIAEoDSJoChpHZXRTZXR0bGVtZW50U3RhdHVzUmVxdWVzdBIzCgRhdXRoGAEgASgLMiUuc2lsdmFuYS5zZXR0bGVtZW50LnYxLkNhbnRvbk5vZGVBdXRoEhUKDXNldHRsZW1lbnRfaWQYAiABKAkipwMKDUR2cFN0ZXBTdGF0dXMSEQoJc3RlcF9uYW1lGAEgASgJEjgKBnN0YXR1cxgCIAEoDjIoLnNpbHZhbmEuc2V0dGxlbWVudC52MS5EdnBTdGVwU3RhdHVzRW51bRIYCgtjb250cmFjdF9pZBgDIAEoCUgAiAEBEhYKCXVwZGF0ZV9pZBgEIAEoCUgBiAEBEjMKCnVwZGF0ZWRfYXQYBSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAKIAQESGgoNZXJyb3JfbWVzc2FnZRgGIAEoCUgDiAEBEhkKDGNvbmZpcm1lZF9ieRgHIAEoCUgEiAEBEkUKEWNvbmZpcm1lZF9ieV9yb2xlGAggASgOMiUuc2lsdmFuYS5zZXR0bGVtZW50LnYxLlJlY29yZGVkQnlSb2xlSAWIAQFCDgoMX2NvbnRyYWN0X2lkQgwKCl91cGRhdGVfaWRCDQoLX3VwZGF0ZWRfYXRCEAoOX2Vycm9yX21lc3NhZ2VCDwoNX2NvbmZpcm1lZF9ieUIUChJfY29uZmlybWVkX2J5X3JvbGUimgoKG0dldFNldHRsZW1lbnRTdGF0dXNSZXNwb25zZRITCgtwcm9wb3NhbF9pZBgBIAEoCRIVCg1zZXR0bGVtZW50X2lkGAIgASgJEjUKBXN0YWdlGAMgASgOMiYuc2lsdmFuYS5zZXR0bGVtZW50LnYxLlNldHRsZW1lbnRTdGFnZRIaCg1lcnJvcl9tZXNzYWdlGAQgASgJSACIAQESLgoKdXBkYXRlZF9hdBgFIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASRgoYZHZwX3Byb2Nlc3NpbmdfZmVlX2J1eWVyGAogASgLMiQuc2lsdmFuYS5zZXR0bGVtZW50LnYxLkR2cFN0ZXBTdGF0dXMSRwoZZHZwX3Byb2Nlc3NpbmdfZmVlX3NlbGxlchgLIAEoCzIkLnNpbHZhbmEuc2V0dGxlbWVudC52MS5EdnBTdGVwU3RhdHVzEk0KH2FsbG9jYXRpb25fcHJvY2Vzc2luZ19mZWVfYnV5ZXIYDCABKAsyJC5zaWx2YW5hLnNldHRsZW1lbnQudjEuRHZwU3RlcFN0YXR1cxJOCiBhbGxvY2F0aW9uX3Byb2Nlc3NpbmdfZmVlX3NlbGxlchgNIAEoCzIkLnNpbHZhbmEuc2V0dGxlbWVudC52MS5EdnBTdGVwU3RhdHVzEjkKC2R2cF9yZXF1ZXN0GA4gASgLMiQuc2lsdmFuYS5zZXR0bGVtZW50LnYxLkR2cFN0ZXBTdGF0dXMSOAoKZHZwX2FjY2VwdBgPIAEoCzIkLnNpbHZhbmEuc2V0dGxlbWVudC52MS5EdnBTdGVwU3RhdHVzEj4KEGFsbG9jYXRpb25fYnV5ZXIYECABKAsyJC5zaWx2YW5hLnNldHRsZW1lbnQudjEuRHZwU3RlcFN0YXR1cxI/ChFhbGxvY2F0aW9uX3NlbGxlchgRIAEoCzIkLnNpbHZhbmEuc2V0dGxlbWVudC52MS5EdnBTdGVwU3RhdHVzEjgKCnNldHRsZW1lbnQYEiABKAsyJC5zaWx2YW5hLnNldHRsZW1lbnQudjEuRHZwU3RlcFN0YXR1cxJIChp0cmFmZmljX2NvbXBlbnNhdGlvbl9idXllchgTIAEoCzIkLnNpbHZhbmEuc2V0dGxlbWVudC52MS5EdnBTdGVwU3RhdHVzEkkKG3RyYWZmaWNfY29tcGVuc2F0aW9uX3NlbGxlchgUIAEoCzIkLnNpbHZhbmEuc2V0dGxlbWVudC52MS5EdnBTdGVwU3RhdHVzEj0KD3ByZWNvbmZpcm1hdGlvbhgVIAEoCzIkLnNpbHZhbmEuc2V0dGxlbWVudC52MS5EdnBTdGVwU3RhdHVzEkMKFXByZWNvbmZpcm1hdGlvbl9idXllchgWIAEoCzIkLnNpbHZhbmEuc2V0dGxlbWVudC52MS5EdnBTdGVwU3RhdHVzEkQKFnByZWNvbmZpcm1hdGlvbl9zZWxsZXIYFyABKAsyJC5zaWx2YW5hLnNldHRsZW1lbnQudjEuRHZwU3RlcFN0YXR1cxI8ChFidXllcl9uZXh0X2FjdGlvbhgYIAEoDjIhLnNpbHZhbmEuc2V0dGxlbWVudC52MS5OZXh0QWN0aW9uEj0KEnNlbGxlcl9uZXh0X2FjdGlvbhgZIAEoDjIhLnNpbHZhbmEuc2V0dGxlbWVudC52MS5OZXh0QWN0aW9uQhAKDl9lcnJvcl9tZXNzYWdlIpUBChxTdWJtaXRQcmVjb25maXJtYXRpb25SZXF1ZXN0EjMKBGF1dGgYASABKAsyJS5zaWx2YW5hLnNldHRsZW1lbnQudjEuQ2FudG9uTm9kZUF1dGgSQAoIZGVjaXNpb24YAiABKAsyLi5zaWx2YW5hLnNldHRsZW1lbnQudjEuUHJlY29uZmlybWF0aW9uRGVjaXNpb24ieQoYRGlzY2xvc2VkQ29udHJhY3RNZXNzYWdlEhMKC2NvbnRyYWN0X2lkGAEgASgJEhMKC3RlbXBsYXRlX2lkGAIgASgJEhoKEmNyZWF0ZWRfZXZlbnRfYmxvYhgDIAEoCRIXCg9zeW5jaHJvbml6ZXJfaWQYBCABKAkiqwEKHFNhdmVEaXNjbG9zZWRDb250cmFjdFJlcXVlc3QSMwoEYXV0aBgBIAEoCzIlLnNpbHZhbmEuc2V0dGxlbWVudC52MS5DYW50b25Ob2RlQXV0aBITCgtwcm9wb3NhbF9pZBgCIAEoCRJBCghjb250cmFjdBgDIAEoCzIvLnNpbHZhbmEuc2V0dGxlbWVudC52MS5EaXNjbG9zZWRDb250cmFjdE1lc3NhZ2UiQQodU2F2ZURpc2Nsb3NlZENvbnRyYWN0UmVzcG9uc2USDwoHc3VjY2VzcxgBIAEoCBIPCgdtZXNzYWdlGAIgASgJIoYBChxHZXREaXNjbG9zZWRDb250cmFjdHNSZXF1ZXN0EjMKBGF1dGgYASABKAsyJS5zaWx2YW5hLnNldHRsZW1lbnQudjEuQ2FudG9uTm9kZUF1dGgSEwoLcHJvcG9zYWxfaWQYAiABKAkSEgoFb3duZXIYAyABKAlIAIgBAUIICgZfb3duZXIiYwodR2V0RGlzY2xvc2VkQ29udHJhY3RzUmVzcG9uc2USQgoJY29udHJhY3RzGAEgAygLMi8uc2lsdmFuYS5zZXR0bGVtZW50LnYxLkRpc2Nsb3NlZENvbnRyYWN0TWVzc2FnZSLcAgoXUmVjb3JkU2V0dGxlbWVudFJlcXVlc3QSMwoEYXV0aBgBIAEoCzIlLnNpbHZhbmEuc2V0dGxlbWVudC52MS5DYW50b25Ob2RlQXV0aBITCgtwcm9wb3NhbF9pZBgCIAEoCRIXCg9zZXR0bGVkX2R2cF9jaWQYAyABKAkSHAoUc2V0dGxlbWVudF91cGRhdGVfaWQYBCABKAkSJAocc2V0dGxlbWVudF9jb21wbGV0aW9uX29mZnNldBgFIAEoCRIUCgdkdnBfY2lkGAYgASgJSACIAQESIQoUYWxsb2NhdGlvbl9idXllcl9jaWQYByABKAlIAYgBARIiChVhbGxvY2F0aW9uX3NlbGxlcl9jaWQYCCABKAlIAogBAUIKCghfZHZwX2NpZEIXChVfYWxsb2NhdGlvbl9idXllcl9jaWRCGAoWX2FsbG9jYXRpb25fc2VsbGVyX2NpZCJTChhSZWNvcmRTZXR0bGVtZW50UmVzcG9uc2USDwoHc3VjY2VzcxgBIAEoCBIPCgdtZXNzYWdlGAIgASgJEhUKDXNldHRsZW1lbnRfaWQYAyABKAki1AkKGFJlY29yZFRyYW5zYWN0aW9uUmVxdWVzdBIzCgRhdXRoGAEgASgLMiUuc2lsdmFuYS5zZXR0bGVtZW50LnYxLkNhbnRvbk5vZGVBdXRoEjcKB3R4X3R5cGUYAiABKA4yJi5zaWx2YW5hLnNldHRsZW1lbnQudjEuVHJhbnNhY3Rpb25UeXBlEhQKDHNlbmRlcl9wYXJ0eRgDIAEoCRI2CgtzZW5kZXJfdHlwZRgEIAEoDjIhLnNpbHZhbmEuc2V0dGxlbWVudC52MS5TZW5kZXJUeXBlEhYKCXVwZGF0ZV9pZBgFIAEoCUgAiAEBEhoKDXN1Ym1pc3Npb25faWQYBiABKAlIAYgBARIjChZzZXR0bGVtZW50X3Byb3Bvc2FsX2lkGAcgASgJSAKIAQESFgoJbWFya2V0X2lkGAggASgJSAOIAQESGQoMY291bnRlcnBhcnR5GAkgASgJSASIAQESGAoLY29udHJhY3RfaWQYCiABKAlIBYgBARIYCgtjaG9pY2VfbmFtZRgLIAEoCUgGiAEBEhMKBmFtb3VudBgMIAEoCUgHiAEBEhIKBXRva2VuGBsgASgJSAiIAQESGwoOcmV3YXJkc19hbW91bnQYDSABKAlICYgBARIaCg1yZXdhcmRzX3JvdW5kGA4gASgESAqIAQESHAoPdHJhZmZpY19yZXF1ZXN0GA8gASgESAuIAQESHQoQdHJhZmZpY19yZXNwb25zZRgQIAEoBEgMiAEBEhoKDXRyYWZmaWNfdG90YWwYESABKARIDYgBARIkChdhY3Rpdml0eV9tYXJrZXJfY3JlYXRlZBgSIAEoBEgOiAEBEjgKBnJlc3VsdBgTIAEoDjIoLnNpbHZhbmEuc2V0dGxlbWVudC52MS5UcmFuc2FjdGlvblJlc3VsdBIaCg1lcnJvcl9tZXNzYWdlGBQgASgJSA+IAQESLgoIbWV0YWRhdGEYFSABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SBCIAQESLAoGdXBkYXRlGBYgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgRiAEBEhgKEGRhbWxfdGVtcGxhdGVfaWQYFyABKAkSEwoLZGFtbF9jaG9pY2UYGCABKAkSMgoMZGFtbF9jaG9pY2VzGBkgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgSiAEBQgwKCl91cGRhdGVfaWRCEAoOX3N1Ym1pc3Npb25faWRCGQoXX3NldHRsZW1lbnRfcHJvcG9zYWxfaWRCDAoKX21hcmtldF9pZEIPCg1fY291bnRlcnBhcnR5Qg4KDF9jb250cmFjdF9pZEIOCgxfY2hvaWNlX25hbWVCCQoHX2Ftb3VudEIICgZfdG9rZW5CEQoPX3Jld2FyZHNfYW1vdW50QhAKDl9yZXdhcmRzX3JvdW5kQhIKEF90cmFmZmljX3JlcXVlc3RCEwoRX3RyYWZmaWNfcmVzcG9uc2VCEAoOX3RyYWZmaWNfdG90YWxCGgoYX2FjdGl2aXR5X21hcmtlcl9jcmVhdGVkQhAKDl9lcnJvcl9tZXNzYWdlQgsKCV9tZXRhZGF0YUIJCgdfdXBkYXRlQg8KDV9kYW1sX2Nob2ljZXMiVQoZUmVjb3JkVHJhbnNhY3Rpb25SZXNwb25zZRIPCgdzdWNjZXNzGAEgASgIEg8KB21lc3NhZ2UYAiABKAkSFgoOdHJhbnNhY3Rpb25faWQYAyABKAQikQMKHEdldFRyYW5zYWN0aW9uSGlzdG9yeVJlcXVlc3QSMwoEYXV0aBgBIAEoCzIlLnNpbHZhbmEuc2V0dGxlbWVudC52MS5DYW50b25Ob2RlQXV0aBIZCgxzZW5kZXJfcGFydHkYAiABKAlIAIgBARI8Cgd0eF90eXBlGAMgASgOMiYuc2lsdmFuYS5zZXR0bGVtZW50LnYxLlRyYW5zYWN0aW9uVHlwZUgBiAEBEiMKFnNldHRsZW1lbnRfcHJvcG9zYWxfaWQYBCABKAlIAogBARI9CgZyZXN1bHQYBSABKA4yKC5zaWx2YW5hLnNldHRsZW1lbnQudjEuVHJhbnNhY3Rpb25SZXN1bHRIA4gBARISCgVsaW1pdBgGIAEoDUgEiAEBEhMKBm9mZnNldBgHIAEoDUgFiAEBQg8KDV9zZW5kZXJfcGFydHlCCgoIX3R4X3R5cGVCGQoXX3NldHRsZW1lbnRfcHJvcG9zYWxfaWRCCQoHX3Jlc3VsdEIICgZfbGltaXRCCQoHX29mZnNldCJ0Ch1HZXRUcmFuc2FjdGlvbkhpc3RvcnlSZXNwb25zZRJECgx0cmFuc2FjdGlvbnMYASADKAsyLi5zaWx2YW5hLnNldHRsZW1lbnQudjEuVHJhbnNhY3Rpb25IaXN0b3J5RW50cnkSDQoFdG90YWwYAiABKA0i2gkKF1RyYW5zYWN0aW9uSGlzdG9yeUVudHJ5EgoKAmlkGAEgASgEEjcKB3R4X3R5cGUYAiABKA4yJi5zaWx2YW5hLnNldHRsZW1lbnQudjEuVHJhbnNhY3Rpb25UeXBlEhQKDHNlbmRlcl9wYXJ0eRgDIAEoCRI2CgtzZW5kZXJfdHlwZRgEIAEoDjIhLnNpbHZhbmEuc2V0dGxlbWVudC52MS5TZW5kZXJUeXBlEhYKCXVwZGF0ZV9pZBgFIAEoCUgAiAEBEhoKDXN1Ym1pc3Npb25faWQYBiABKAlIAYgBARIjChZzZXR0bGVtZW50X3Byb3Bvc2FsX2lkGAcgASgJSAKIAQESFgoJbWFya2V0X2lkGAggASgJSAOIAQESGQoMY291bnRlcnBhcnR5GAkgASgJSASIAQESGAoLY29udHJhY3RfaWQYCiABKAlIBYgBARIYCgtjaG9pY2VfbmFtZRgLIAEoCUgGiAEBEhMKBmFtb3VudBgMIAEoCUgHiAEBEhIKBXRva2VuGBsgASgJSAiIAQESGwoOcmV3YXJkc19hbW91bnQYDSABKAlICYgBARIaCg1yZXdhcmRzX3JvdW5kGA4gASgESAqIAQESHAoPdHJhZmZpY19yZXF1ZXN0GA8gASgESAuIAQESHQoQdHJhZmZpY19yZXNwb25zZRgQIAEoBEgMiAEBEhoKDXRyYWZmaWNfdG90YWwYESABKARIDYgBARIkChdhY3Rpdml0eV9tYXJrZXJfY3JlYXRlZBgSIAEoBEgOiAEBEjgKBnJlc3VsdBgTIAEoDjIoLnNpbHZhbmEuc2V0dGxlbWVudC52MS5UcmFuc2FjdGlvblJlc3VsdBIaCg1lcnJvcl9tZXNzYWdlGBQgASgJSA+IAQESLgoIbWV0YWRhdGEYFSABKAsyFy5nb29nbGUucHJvdG9idWYuU3RydWN0SBCIAQESLgoKY3JlYXRlZF9hdBgWIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASLAoGdXBkYXRlGBcgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgRiAEBEhgKEGRhbWxfdGVtcGxhdGVfaWQYGCABKAkSEwoLZGFtbF9jaG9pY2UYGSABKAkSMgoMZGFtbF9jaG9pY2VzGBogASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgSiAEBQgwKCl91cGRhdGVfaWRCEAoOX3N1Ym1pc3Npb25faWRCGQoXX3NldHRsZW1lbnRfcHJvcG9zYWxfaWRCDAoKX21hcmtldF9pZEIPCg1fY291bnRlcnBhcnR5Qg4KDF9jb250cmFjdF9pZEIOCgxfY2hvaWNlX25hbWVCCQoHX2Ftb3VudEIICgZfdG9rZW5CEQoPX3Jld2FyZHNfYW1vdW50QhAKDl9yZXdhcmRzX3JvdW5kQhIKEF90cmFmZmljX3JlcXVlc3RCEwoRX3RyYWZmaWNfcmVzcG9uc2VCEAoOX3RyYWZmaWNfdG90YWxCGgoYX2FjdGl2aXR5X21hcmtlcl9jcmVhdGVkQhAKDl9lcnJvcl9tZXNzYWdlQgsKCV9tZXRhZGF0YUIJCgdfdXBkYXRlQg8KDV9kYW1sX2Nob2ljZXMizwQKHFJlY29yZFNldHRsZW1lbnRFdmVudFJlcXVlc3QSMwoEYXV0aBgBIAEoCzIlLnNpbHZhbmEuc2V0dGxlbWVudC52MS5DYW50b25Ob2RlQXV0aBITCgtwcm9wb3NhbF9pZBgCIAEoCRITCgtyZWNvcmRlZF9ieRgDIAEoCRI/ChByZWNvcmRlZF9ieV9yb2xlGAQgASgOMiUuc2lsdmFuYS5zZXR0bGVtZW50LnYxLlJlY29yZGVkQnlSb2xlEj4KCmV2ZW50X3R5cGUYBSABKA4yKi5zaWx2YW5hLnNldHRsZW1lbnQudjEuU2V0dGxlbWVudEV2ZW50VHlwZRIaCg1zdWJtaXNzaW9uX2lkGAYgASgJSACIAQESFgoJdXBkYXRlX2lkGAcgASgJSAGIAQESGAoLY29udHJhY3RfaWQYCCABKAlIAogBARIYCgt0ZW1wbGF0ZV9pZBgJIAEoCUgDiAEBEjwKBnJlc3VsdBgKIAEoDjIsLnNpbHZhbmEuc2V0dGxlbWVudC52MS5TZXR0bGVtZW50RXZlbnRSZXN1bHQSGgoNZXJyb3JfbWVzc2FnZRgLIAEoCUgEiAEBEi4KCG1ldGFkYXRhGAwgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgFiAEBQhAKDl9zdWJtaXNzaW9uX2lkQgwKCl91cGRhdGVfaWRCDgoMX2NvbnRyYWN0X2lkQg4KDF90ZW1wbGF0ZV9pZEIQCg5fZXJyb3JfbWVzc2FnZUILCglfbWV0YWRhdGEiUwodUmVjb3JkU2V0dGxlbWVudEV2ZW50UmVzcG9uc2USDwoHc3VjY2VzcxgBIAEoCBIPCgdtZXNzYWdlGAIgASgJEhAKCGV2ZW50X2lkGAMgASgEIscCChtHZXRTZXR0bGVtZW50SGlzdG9yeVJlcXVlc3QSMwoEYXV0aBgBIAEoCzIlLnNpbHZhbmEuc2V0dGxlbWVudC52MS5DYW50b25Ob2RlQXV0aBITCgtwcm9wb3NhbF9pZBgCIAEoCRJDCgpldmVudF90eXBlGAMgASgOMiouc2lsdmFuYS5zZXR0bGVtZW50LnYxLlNldHRsZW1lbnRFdmVudFR5cGVIAIgBARJBCgZyZXN1bHQYBCABKA4yLC5zaWx2YW5hLnNldHRsZW1lbnQudjEuU2V0dGxlbWVudEV2ZW50UmVzdWx0SAGIAQESEgoFbGltaXQYBSABKA1IAogBARITCgZvZmZzZXQYBiABKA1IA4gBAUINCgtfZXZlbnRfdHlwZUIJCgdfcmVzdWx0QggKBl9saW1pdEIJCgdfb2Zmc2V0ImwKHEdldFNldHRsZW1lbnRIaXN0b3J5UmVzcG9uc2USPQoGZXZlbnRzGAEgAygLMi0uc2lsdmFuYS5zZXR0bGVtZW50LnYxLlNldHRsZW1lbnRIaXN0b3J5RW50cnkSDQoFdG90YWwYAiABKA0i0AQKFlNldHRsZW1lbnRIaXN0b3J5RW50cnkSCgoCaWQYASABKAQSEwoLcHJvcG9zYWxfaWQYAiABKAkSEwoLcmVjb3JkZWRfYnkYAyABKAkSPwoQcmVjb3JkZWRfYnlfcm9sZRgEIAEoDjIlLnNpbHZhbmEuc2V0dGxlbWVudC52MS5SZWNvcmRlZEJ5Um9sZRI+CgpldmVudF90eXBlGAUgASgOMiouc2lsdmFuYS5zZXR0bGVtZW50LnYxLlNldHRsZW1lbnRFdmVudFR5cGUSGgoNc3VibWlzc2lvbl9pZBgGIAEoCUgAiAEBEhYKCXVwZGF0ZV9pZBgHIAEoCUgBiAEBEhgKC2NvbnRyYWN0X2lkGAggASgJSAKIAQESGAoLdGVtcGxhdGVfaWQYCSABKAlIA4gBARI8CgZyZXN1bHQYCiABKA4yLC5zaWx2YW5hLnNldHRsZW1lbnQudjEuU2V0dGxlbWVudEV2ZW50UmVzdWx0EhoKDWVycm9yX21lc3NhZ2UYCyABKAlIBIgBARIuCghtZXRhZGF0YRgMIAEoCzIXLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3RIBYgBARIuCgpjcmVhdGVkX2F0GA0gASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEIQCg5fc3VibWlzc2lvbl9pZEIMCgpfdXBkYXRlX2lkQg4KDF9jb250cmFjdF9pZEIOCgxfdGVtcGxhdGVfaWRCEAoOX2Vycm9yX21lc3NhZ2VCCwoJX21ldGFkYXRhItkCChtVcGRhdGVQcm9wb3NhbFN0YXR1c1JlcXVlc3QSMwoEYXV0aBgBIAEoCzIlLnNpbHZhbmEuc2V0dGxlbWVudC52MS5DYW50b25Ob2RlQXV0aBITCgtwcm9wb3NhbF9pZBgCIAEoCRJQCgpuZXdfc3RhdHVzGAMgASgOMjwuc2lsdmFuYS5zZXR0bGVtZW50LnYxLlVwZGF0ZVByb3Bvc2FsU3RhdHVzUmVxdWVzdC5OZXdTdGF0dXMSGgoNZXJyb3JfbWVzc2FnZRgEIAEoCUgAiAEBInAKCU5ld1N0YXR1cxIaChZORVdfU1RBVFVTX1VOU1BFQ0lGSUVEEAASFgoSTkVXX1NUQVRVU19TRVRUTEVEEAESGAoUTkVXX1NUQVRVU19DQU5DRUxMRUQQAhIVChFORVdfU1RBVFVTX0ZBSUxFRBADQhAKDl9lcnJvcl9tZXNzYWdlIkAKHFVwZGF0ZVByb3Bvc2FsU3RhdHVzUmVzcG9uc2USDwoHc3VjY2VzcxgBIAEoCBIPCgdtZXNzYWdlGAIgASgJIogBCiBHZXRTZXR0bGVtZW50UHJvcG9zYWxCeUlkUmVxdWVzdBI/CgtjYW50b25fYXV0aBgBIAEoCzIlLnNpbHZhbmEuc2V0dGxlbWVudC52MS5DYW50b25Ob2RlQXV0aEgAiAEBEhMKC3Byb3Bvc2FsX2lkGAMgASgJQg4KDF9jYW50b25fYXV0aCJ2CiFHZXRTZXR0bGVtZW50UHJvcG9zYWxCeUlkUmVzcG9uc2USDQoFZm91bmQYASABKAgSQgoIcHJvcG9zYWwYAiABKAsyMC5zaWx2YW5hLnNldHRsZW1lbnQudjEuU2V0dGxlbWVudFByb3Bvc2FsTWVzc2FnZSqFBAoPU2V0dGxlbWVudFN0YWdlEiAKHFNFVFRMRU1FTlRfU1RBR0VfVU5TUEVDSUZJRUQQABImCiJTRVRUTEVNRU5UX1NUQUdFX1BST1BPU0FMX1JFQ0VJVkVEEAESLAooU0VUVExFTUVOVF9TVEFHRV9QUkVDT05GSVJNQVRJT05fUEVORElORxACEiEKHVNFVFRMRU1FTlRfU1RBR0VfUFJFQ09ORklSTUVEEAMSKgomU0VUVExFTUVOVF9TVEFHRV9EVlBfUFJPUE9TQUxfQ1JFQVRJTkcQBBIpCiVTRVRUTEVNRU5UX1NUQUdFX0RWUF9QUk9QT1NBTF9DUkVBVEVEEAUSIgoeU0VUVExFTUVOVF9TVEFHRV9EVlBfQUNDRVBUSU5HEAYSIQodU0VUVExFTUVOVF9TVEFHRV9EVlBfQUNDRVBURUQQBxIfChtTRVRUTEVNRU5UX1NUQUdFX0FMTE9DQVRJTkcQCBIeChpTRVRUTEVNRU5UX1NUQUdFX0FMTE9DQVRFRBAJEh0KGVNFVFRMRU1FTlRfU1RBR0VfU0VUVExJTkcQChIcChhTRVRUTEVNRU5UX1NUQUdFX1NFVFRMRUQQCxIbChdTRVRUTEVNRU5UX1NUQUdFX0ZBSUxFRBAMEh4KGlNFVFRMRU1FTlRfU1RBR0VfQ0FOQ0VMTEVEEA0qjQEKF1ByZWNvbmZpcm1hdGlvblJlc3BvbnNlEigKJFBSRUNPTkZJUk1BVElPTl9SRVNQT05TRV9VTlNQRUNJRklFRBAAEiMKH1BSRUNPTkZJUk1BVElPTl9SRVNQT05TRV9BQ0NFUFQQARIjCh9QUkVDT05GSVJNQVRJT05fUkVTUE9OU0VfUkVKRUNUEAIqbQoJUGFydHlSb2xlEhoKFlBBUlRZX1JPTEVfVU5TUEVDSUZJRUQQABIUChBQQVJUWV9ST0xFX0JVWUVSEAESFQoRUEFSVFlfUk9MRV9TRUxMRVIQAhIXChNQQVJUWV9ST0xFX09QRVJBVE9SEAMqmwQKD1RyYW5zYWN0aW9uVHlwZRIgChxUUkFOU0FDVElPTl9UWVBFX1VOU1BFQ0lGSUVEEAASKQolVFJBTlNBQ1RJT05fVFlQRV9VU0VSX1NFUlZJQ0VfUkVRVUVTVBABEjAKLFRSQU5TQUNUSU9OX1RZUEVfVVNFUl9TRVJWSUNFX1JFUVVFU1RfQUNDRVBUEAISKAokVFJBTlNBQ1RJT05fVFlQRV9VU0VSX1NFUlZJQ0VfQ0FOQ0VMEAMSIAocVFJBTlNBQ1RJT05fVFlQRV9EVlBfUFJPUE9TRRAEEh8KG1RSQU5TQUNUSU9OX1RZUEVfRFZQX0FDQ0VQVBAFEh8KG1RSQU5TQUNUSU9OX1RZUEVfRFZQX0NBTkNFTBAGEh8KG1RSQU5TQUNUSU9OX1RZUEVfRFZQX1NFVFRMRRAHEh0KGVRSQU5TQUNUSU9OX1RZUEVfQUxMT0NBVEUQCBIkCiBUUkFOU0FDVElPTl9UWVBFX0FMTE9DQVRFX0NBTkNFTBAJEiEKHVRSQU5TQUNUSU9OX1RZUEVfRkVFX1RSQU5TRkVSEAoSGgoWVFJBTlNBQ1RJT05fVFlQRV9NRVJHRRALEhsKF1RSQU5TQUNUSU9OX1RZUEVfVU5MT0NLEAwSGgoWVFJBTlNBQ1RJT05fVFlQRV9PVEhFUhANEh0KGVRSQU5TQUNUSU9OX1RZUEVfVFJBTlNGRVIQDiqdAQoKU2VuZGVyVHlwZRIbChdTRU5ERVJfVFlQRV9VTlNQRUNJRklFRBAAEhgKFFNFTkRFUl9UWVBFX09QRVJBVE9SEAESFAoQU0VOREVSX1RZUEVfVVNFUhACEhUKEVNFTkRFUl9UWVBFX0JVWUVSEAMSFgoSU0VOREVSX1RZUEVfU0VMTEVSEAQSEwoPU0VOREVSX1RZUEVfQVBQEAUqlgEKEVRyYW5zYWN0aW9uUmVzdWx0EiIKHlRSQU5TQUNUSU9OX1JFU1VMVF9VTlNQRUNJRklFRBAAEh4KGlRSQU5TQUNUSU9OX1JFU1VMVF9QRU5ESU5HEAESHgoaVFJBTlNBQ1RJT05fUkVTVUxUX1NVQ0NFU1MQAhIdChlUUkFOU0FDVElPTl9SRVNVTFRfRkFJTEVEEAMq8xMKE1NldHRsZW1lbnRFdmVudFR5cGUSJQohU0VUVExFTUVOVF9FVkVOVF9UWVBFX1VOU1BFQ0lGSUVEEAASPAo4U0VUVExFTUVOVF9FVkVOVF9UWVBFX0RWUF9QUk9DRVNTSU5HX0ZFRV9CVVlFUl9TVUJNSVRURUQQARI8CjhTRVRUTEVNRU5UX0VWRU5UX1RZUEVfRFZQX1BST0NFU1NJTkdfRkVFX0JVWUVSX0NPTVBMRVRFRBACEjsKN1NFVFRMRU1FTlRfRVZFTlRfVFlQRV9EVlBfUFJPQ0VTU0lOR19GRUVfQlVZRVJfUkVDRUlWRUQQAxIvCitTRVRUTEVNRU5UX0VWRU5UX1RZUEVfRFZQX1JFUVVFU1RfU1VCTUlUVEVEEAQSLworU0VUVExFTUVOVF9FVkVOVF9UWVBFX0RWUF9SRVFVRVNUX0NPTVBMRVRFRBAFEi8KK1NFVFRMRU1FTlRfRVZFTlRfVFlQRV9EVlBfUkVRVUVTVF9XSVRORVNTRUQQBhIuCipTRVRUTEVNRU5UX0VWRU5UX1RZUEVfRFZQX1JFUVVFU1RfUkVKRUNURUQQBxIvCitTRVRUTEVNRU5UX0VWRU5UX1RZUEVfRFZQX1JFUVVFU1RfQ0FOQ0VMTEVEEAgSPQo5U0VUVExFTUVOVF9FVkVOVF9UWVBFX0RWUF9QUk9DRVNTSU5HX0ZFRV9TRUxMRVJfU1VCTUlUVEVEEAkSPQo5U0VUVExFTUVOVF9FVkVOVF9UWVBFX0RWUF9QUk9DRVNTSU5HX0ZFRV9TRUxMRVJfQ09NUExFVEVEEAoSPAo4U0VUVExFTUVOVF9FVkVOVF9UWVBFX0RWUF9QUk9DRVNTSU5HX0ZFRV9TRUxMRVJfUkVDRUlWRUQQCxIuCipTRVRUTEVNRU5UX0VWRU5UX1RZUEVfRFZQX0FDQ0VQVF9TVUJNSVRURUQQDBIuCipTRVRUTEVNRU5UX0VWRU5UX1RZUEVfRFZQX0FDQ0VQVF9DT01QTEVURUQQDRIwCixTRVRUTEVNRU5UX0VWRU5UX1RZUEVfRFZQX0FDQ0VQVEVEX1dJVE5FU1NFRBAOEiYKIlNFVFRMRU1FTlRfRVZFTlRfVFlQRV9EVlBfUkVKRUNURUQQDxInCiNTRVRUTEVNRU5UX0VWRU5UX1RZUEVfRFZQX1dJVEhEUkFXThAQEicKI1NFVFRMRU1FTlRfRVZFTlRfVFlQRV9EVlBfQ0FOQ0VMTEVEEBESQwo/U0VUVExFTUVOVF9FVkVOVF9UWVBFX0FMTE9DQVRJT05fUFJPQ0VTU0lOR19GRUVfQlVZRVJfU1VCTUlUVEVEEBISQwo/U0VUVExFTUVOVF9FVkVOVF9UWVBFX0FMTE9DQVRJT05fUFJPQ0VTU0lOR19GRUVfQlVZRVJfQ09NUExFVEVEEBMSQgo+U0VUVExFTUVOVF9FVkVOVF9UWVBFX0FMTE9DQVRJT05fUFJPQ0VTU0lOR19GRUVfQlVZRVJfUkVDRUlWRUQQFBI0CjBTRVRUTEVNRU5UX0VWRU5UX1RZUEVfQUxMT0NBVElPTl9CVVlFUl9TVUJNSVRURUQQFRI0CjBTRVRUTEVNRU5UX0VWRU5UX1RZUEVfQUxMT0NBVElPTl9CVVlFUl9DT01QTEVURUQQFhI0CjBTRVRUTEVNRU5UX0VWRU5UX1RZUEVfQUxMT0NBVElPTl9CVVlFUl9XSVRORVNTRUQQFxI0CjBTRVRUTEVNRU5UX0VWRU5UX1RZUEVfQUxMT0NBVElPTl9CVVlFUl9XSVRIRFJBV04QGBI0CjBTRVRUTEVNRU5UX0VWRU5UX1RZUEVfQUxMT0NBVElPTl9CVVlFUl9DQU5DRUxMRUQQGRJECkBTRVRUTEVNRU5UX0VWRU5UX1RZUEVfQUxMT0NBVElPTl9QUk9DRVNTSU5HX0ZFRV9TRUxMRVJfU1VCTUlUVEVEEBoSRApAU0VUVExFTUVOVF9FVkVOVF9UWVBFX0FMTE9DQVRJT05fUFJPQ0VTU0lOR19GRUVfU0VMTEVSX0NPTVBMRVRFRBAbEkMKP1NFVFRMRU1FTlRfRVZFTlRfVFlQRV9BTExPQ0FUSU9OX1BST0NFU1NJTkdfRkVFX1NFTExFUl9SRUNFSVZFRBAcEjUKMVNFVFRMRU1FTlRfRVZFTlRfVFlQRV9BTExPQ0FUSU9OX1NFTExFUl9TVUJNSVRURUQQHRI1CjFTRVRUTEVNRU5UX0VWRU5UX1RZUEVfQUxMT0NBVElPTl9TRUxMRVJfQ09NUExFVEVEEB4SNQoxU0VUVExFTUVOVF9FVkVOVF9UWVBFX0FMTE9DQVRJT05fU0VMTEVSX1dJVE5FU1NFRBAfEjUKMVNFVFRMRU1FTlRfRVZFTlRfVFlQRV9BTExPQ0FUSU9OX1NFTExFUl9XSVRIRFJBV04QIBI1CjFTRVRUTEVNRU5UX0VWRU5UX1RZUEVfQUxMT0NBVElPTl9TRUxMRVJfQ0FOQ0VMTEVEECESLgoqU0VUVExFTUVOVF9FVkVOVF9UWVBFX1NFVFRMRU1FTlRfU1VCTUlUVEVEECISLgoqU0VUVExFTUVOVF9FVkVOVF9UWVBFX1NFVFRMRU1FTlRfQ09NUExFVEVEECMSLgoqU0VUVExFTUVOVF9FVkVOVF9UWVBFX1NFVFRMRU1FTlRfV0lUTkVTU0VEECQSPgo6U0VUVExFTUVOVF9FVkVOVF9UWVBFX1RSQUZGSUNfQ09NUEVOU0FUSU9OX0JVWUVSX1NVQk1JVFRFRBAlEj4KOlNFVFRMRU1FTlRfRVZFTlRfVFlQRV9UUkFGRklDX0NPTVBFTlNBVElPTl9CVVlFUl9DT01QTEVURUQQJhI/CjtTRVRUTEVNRU5UX0VWRU5UX1RZUEVfVFJBRkZJQ19DT01QRU5TQVRJT05fU0VMTEVSX1NVQk1JVFRFRBAnEj8KO1NFVFRMRU1FTlRfRVZFTlRfVFlQRV9UUkFGRklDX0NPTVBFTlNBVElPTl9TRUxMRVJfQ09NUExFVEVEECgSMwovU0VUVExFTUVOVF9FVkVOVF9UWVBFX1BSRUNPTkZJUk1BVElPTl9SRVFVRVNURUQQKRIvCitTRVRUTEVNRU5UX0VWRU5UX1RZUEVfUFJFQ09ORklSTUFUSU9OX0JVWUVSECoSMAosU0VUVExFTUVOVF9FVkVOVF9UWVBFX1BSRUNPTkZJUk1BVElPTl9TRUxMRVIQKxIzCi9TRVRUTEVNRU5UX0VWRU5UX1RZUEVfUFJFQ09ORklSTUFUSU9OX0NBTkNFTExFRBAsEiEKHVNFVFRMRU1FTlRfRVZFTlRfVFlQRV9USU1FT1VUEC0qpwEKDlJlY29yZGVkQnlSb2xlEiAKHFJFQ09SREVEX0JZX1JPTEVfVU5TUEVDSUZJRUQQABIaChZSRUNPUkRFRF9CWV9ST0xFX0JVWUVSEAESGwoXUkVDT1JERURfQllfUk9MRV9TRUxMRVIQAhIdChlSRUNPUkRFRF9CWV9ST0xFX09QRVJBVE9SEAMSGwoXUkVDT1JERURfQllfUk9MRV9TWVNURU0QBCriAQoKTmV4dEFjdGlvbhIUChBORVhUX0FDVElPTl9OT05FEAASGgoWTkVYVF9BQ1RJT05fUFJFQ09ORklSTRABEhsKF05FWFRfQUNUSU9OX1BBWV9EVlBfRkVFEAISGgoWTkVYVF9BQ1RJT05fQ1JFQVRFX0RWUBADEhoKFk5FWFRfQUNUSU9OX0FDQ0VQVF9EVlAQBBIdChlORVhUX0FDVElPTl9QQVlfQUxMT0NfRkVFEAUSGAoUTkVYVF9BQ1RJT05fQUxMT0NBVEUQBhIUChBORVhUX0FDVElPTl9XQUlUEAcqXAoMUmZxRGlyZWN0aW9uEh0KGVJGUV9ESVJFQ1RJT05fVU5TUEVDSUZJRUQQABIVChFSRlFfRElSRUNUSU9OX0JVWRABEhYKElJGUV9ESVJFQ1RJT05fU0VMTBACKs4CChJSZnFSZWplY3Rpb25SZWFzb24SJAogUkZRX1JFSkVDVElPTl9SRUFTT05fVU5TUEVDSUZJRUQQABItCilSRlFfUkVKRUNUSU9OX1JFQVNPTl9NQVJLRVRfTk9UX1NVUFBPUlRFRBABEikKJVJGUV9SRUpFQ1RJT05fUkVBU09OX0FNT1VOVF9UT09fTEFSR0UQAhIpCiVSRlFfUkVKRUNUSU9OX1JFQVNPTl9BTU9VTlRfVE9PX1NNQUxMEAMSLworUkZRX1JFSkVDVElPTl9SRUFTT05fSU5TVUZGSUNJRU5UX0lOVkVOVE9SWRAEEioKJlJGUV9SRUpFQ1RJT05fUkVBU09OX01BUktFVF9DT05ESVRJT05TEAUSMAosUkZRX1JFSkVDVElPTl9SRUFTT05fVEVNUE9SQVJJTFlfVU5BVkFJTEFCTEUQBirTAQoVU2V0dGxlbWVudEV2ZW50UmVzdWx0EicKI1NFVFRMRU1FTlRfRVZFTlRfUkVTVUxUX1VOU1BFQ0lGSUVEEAASIwofU0VUVExFTUVOVF9FVkVOVF9SRVNVTFRfUEVORElORxABEiMKH1NFVFRMRU1FTlRfRVZFTlRfUkVTVUxUX1NVQ0NFU1MQAhIiCh5TRVRUTEVNRU5UX0VWRU5UX1JFU1VMVF9GQUlMRUQQAxIjCh9TRVRUTEVNRU5UX0VWRU5UX1JFU1VMVF9USU1FT1VUEAQqwwIKEUR2cFN0ZXBTdGF0dXNFbnVtEh8KG0RWUF9TVEVQX1NUQVRVU19VTlNQRUNJRklFRBAAEhsKF0RWUF9TVEVQX1NUQVRVU19QRU5ESU5HEAESHQoZRFZQX1NURVBfU1RBVFVTX1NVQk1JVFRFRBACEh0KGURWUF9TVEVQX1NUQVRVU19DT01QTEVURUQQAxIdChlEVlBfU1RFUF9TVEFUVVNfQ09ORklSTUVEEAQSGgoWRFZQX1NURVBfU1RBVFVTX0ZBSUxFRBAFEhwKGERWUF9TVEVQX1NUQVRVU19SRUpFQ1RFRBAGEh0KGURWUF9TVEVQX1NUQVRVU19XSVRIRFJBV04QBxIdChlEVlBfU1RFUF9TVEFUVVNfQ0FOQ0VMTEVEEAgSGwoXRFZQX1NURVBfU1RBVFVTX1RJTUVPVVQQCTL9DAoRU2V0dGxlbWVudFNlcnZpY2UScgoQU2V0dGxlbWVudFN0cmVhbRIsLnNpbHZhbmEuc2V0dGxlbWVudC52MS5DYW50b25Ub1NlcnZlck1lc3NhZ2UaLC5zaWx2YW5hLnNldHRsZW1lbnQudjEuU2VydmVyVG9DYW50b25NZXNzYWdlKAEwARJ8ChNHZXRQZW5kaW5nUHJvcG9zYWxzEjEuc2lsdmFuYS5zZXR0bGVtZW50LnYxLkdldFBlbmRpbmdQcm9wb3NhbHNSZXF1ZXN0GjIuc2lsdmFuYS5zZXR0bGVtZW50LnYxLkdldFBlbmRpbmdQcm9wb3NhbHNSZXNwb25zZRJ8ChNHZXRTZXR0bGVtZW50U3RhdHVzEjEuc2lsdmFuYS5zZXR0bGVtZW50LnYxLkdldFNldHRsZW1lbnRTdGF0dXNSZXF1ZXN0GjIuc2lsdmFuYS5zZXR0bGVtZW50LnYxLkdldFNldHRsZW1lbnRTdGF0dXNSZXNwb25zZRJkChVTdWJtaXRQcmVjb25maXJtYXRpb24SMy5zaWx2YW5hLnNldHRsZW1lbnQudjEuU3VibWl0UHJlY29uZmlybWF0aW9uUmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRKCAQoVU2F2ZURpc2Nsb3NlZENvbnRyYWN0EjMuc2lsdmFuYS5zZXR0bGVtZW50LnYxLlNhdmVEaXNjbG9zZWRDb250cmFjdFJlcXVlc3QaNC5zaWx2YW5hLnNldHRsZW1lbnQudjEuU2F2ZURpc2Nsb3NlZENvbnRyYWN0UmVzcG9uc2USggEKFUdldERpc2Nsb3NlZENvbnRyYWN0cxIzLnNpbHZhbmEuc2V0dGxlbWVudC52MS5HZXREaXNjbG9zZWRDb250cmFjdHNSZXF1ZXN0GjQuc2lsdmFuYS5zZXR0bGVtZW50LnYxLkdldERpc2Nsb3NlZENvbnRyYWN0c1Jlc3BvbnNlEnMKEFJlY29yZFNldHRsZW1lbnQSLi5zaWx2YW5hLnNldHRsZW1lbnQudjEuUmVjb3JkU2V0dGxlbWVudFJlcXVlc3QaLy5zaWx2YW5hLnNldHRsZW1lbnQudjEuUmVjb3JkU2V0dGxlbWVudFJlc3BvbnNlEnYKEVJlY29yZFRyYW5zYWN0aW9uEi8uc2lsdmFuYS5zZXR0bGVtZW50LnYxLlJlY29yZFRyYW5zYWN0aW9uUmVxdWVzdBowLnNpbHZhbmEuc2V0dGxlbWVudC52MS5SZWNvcmRUcmFuc2FjdGlvblJlc3BvbnNlEoIBChVHZXRUcmFuc2FjdGlvbkhpc3RvcnkSMy5zaWx2YW5hLnNldHRsZW1lbnQudjEuR2V0VHJhbnNhY3Rpb25IaXN0b3J5UmVxdWVzdBo0LnNpbHZhbmEuc2V0dGxlbWVudC52MS5HZXRUcmFuc2FjdGlvbkhpc3RvcnlSZXNwb25zZRKCAQoVUmVjb3JkU2V0dGxlbWVudEV2ZW50EjMuc2lsdmFuYS5zZXR0bGVtZW50LnYxLlJlY29yZFNldHRsZW1lbnRFdmVudFJlcXVlc3QaNC5zaWx2YW5hLnNldHRsZW1lbnQudjEuUmVjb3JkU2V0dGxlbWVudEV2ZW50UmVzcG9uc2USfwoUR2V0U2V0dGxlbWVudEhpc3RvcnkSMi5zaWx2YW5hLnNldHRsZW1lbnQudjEuR2V0U2V0dGxlbWVudEhpc3RvcnlSZXF1ZXN0GjMuc2lsdmFuYS5zZXR0bGVtZW50LnYxLkdldFNldHRsZW1lbnRIaXN0b3J5UmVzcG9uc2USfwoUVXBkYXRlUHJvcG9zYWxTdGF0dXMSMi5zaWx2YW5hLnNldHRsZW1lbnQudjEuVXBkYXRlUHJvcG9zYWxTdGF0dXNSZXF1ZXN0GjMuc2lsdmFuYS5zZXR0bGVtZW50LnYxLlVwZGF0ZVByb3Bvc2FsU3RhdHVzUmVzcG9uc2USjgEKGUdldFNldHRsZW1lbnRQcm9wb3NhbEJ5SWQSNy5zaWx2YW5hLnNldHRsZW1lbnQudjEuR2V0U2V0dGxlbWVudFByb3Bvc2FsQnlJZFJlcXVlc3QaOC5zaWx2YW5hLnNldHRsZW1lbnQudjEuR2V0U2V0dGxlbWVudFByb3Bvc2FsQnlJZFJlc3BvbnNlQjVaM2dpdGh1Yi5jb20vU2lsdmFuYU9uZS9jYW50b24tYWdlbnQvcHJvdG87c2V0dGxlbWVudGIGcHJvdG8z", [file_google_protobuf_timestamp, file_google_protobuf_empty, file_google_protobuf_struct]);
|
|
16
16
|
|
|
17
17
|
/**
|
|
18
18
|
* Canton node authentication (using Canton party JWT)
|
|
@@ -645,6 +645,13 @@ export type SettlementHandshake = Message<"silvana.settlement.v1.SettlementHands
|
|
|
645
645
|
* @generated from field: optional google.protobuf.Struct capabilities = 5;
|
|
646
646
|
*/
|
|
647
647
|
capabilities?: JsonObject;
|
|
648
|
+
|
|
649
|
+
/**
|
|
650
|
+
* If set, this agent is a liquidity provider
|
|
651
|
+
*
|
|
652
|
+
* @generated from field: optional string liquidity_provider_name = 6;
|
|
653
|
+
*/
|
|
654
|
+
liquidityProviderName?: string;
|
|
648
655
|
};
|
|
649
656
|
|
|
650
657
|
/**
|
|
@@ -792,6 +799,232 @@ export type LiquidityProviderPong = Message<"silvana.settlement.v1.LiquidityProv
|
|
|
792
799
|
export const LiquidityProviderPongSchema: GenMessage<LiquidityProviderPong> = /*@__PURE__*/
|
|
793
800
|
messageDesc(file_proto_silvana_settlement_v1_settlement, 14);
|
|
794
801
|
|
|
802
|
+
/**
|
|
803
|
+
* RFQ request from server to LP agent (via stream) — anonymous: no requesting party
|
|
804
|
+
*
|
|
805
|
+
* @generated from message silvana.settlement.v1.RfqRequest
|
|
806
|
+
*/
|
|
807
|
+
export type RfqRequest = Message<"silvana.settlement.v1.RfqRequest"> & {
|
|
808
|
+
/**
|
|
809
|
+
* UUIDv7 — unique per RFQ session
|
|
810
|
+
*
|
|
811
|
+
* @generated from field: string rfq_id = 1;
|
|
812
|
+
*/
|
|
813
|
+
rfqId: string;
|
|
814
|
+
|
|
815
|
+
/**
|
|
816
|
+
* @generated from field: string market_id = 2;
|
|
817
|
+
*/
|
|
818
|
+
marketId: string;
|
|
819
|
+
|
|
820
|
+
/**
|
|
821
|
+
* What the USER wants to do (buy/sell)
|
|
822
|
+
*
|
|
823
|
+
* @generated from field: silvana.settlement.v1.RfqDirection direction = 3;
|
|
824
|
+
*/
|
|
825
|
+
direction: RfqDirection;
|
|
826
|
+
|
|
827
|
+
/**
|
|
828
|
+
* DECIMAL(38,10) as string — base instrument quantity
|
|
829
|
+
*
|
|
830
|
+
* @generated from field: string quantity = 4;
|
|
831
|
+
*/
|
|
832
|
+
quantity: string;
|
|
833
|
+
|
|
834
|
+
/**
|
|
835
|
+
* Server-enforced deadline for LP response
|
|
836
|
+
*
|
|
837
|
+
* @generated from field: google.protobuf.Timestamp respond_by = 5;
|
|
838
|
+
*/
|
|
839
|
+
respondBy?: Timestamp;
|
|
840
|
+
|
|
841
|
+
/**
|
|
842
|
+
* @generated from field: google.protobuf.Timestamp created_at = 6;
|
|
843
|
+
*/
|
|
844
|
+
createdAt?: Timestamp;
|
|
845
|
+
};
|
|
846
|
+
|
|
847
|
+
/**
|
|
848
|
+
* Describes the message silvana.settlement.v1.RfqRequest.
|
|
849
|
+
* Use `create(RfqRequestSchema)` to create a new message.
|
|
850
|
+
*/
|
|
851
|
+
export const RfqRequestSchema: GenMessage<RfqRequest> = /*@__PURE__*/
|
|
852
|
+
messageDesc(file_proto_silvana_settlement_v1_settlement, 15);
|
|
853
|
+
|
|
854
|
+
/**
|
|
855
|
+
* RFQ quote response from LP agent to server (via stream)
|
|
856
|
+
*
|
|
857
|
+
* @generated from message silvana.settlement.v1.RfqQuote
|
|
858
|
+
*/
|
|
859
|
+
export type RfqQuote = Message<"silvana.settlement.v1.RfqQuote"> & {
|
|
860
|
+
/**
|
|
861
|
+
* Must match RfqRequest.rfq_id
|
|
862
|
+
*
|
|
863
|
+
* @generated from field: string rfq_id = 1;
|
|
864
|
+
*/
|
|
865
|
+
rfqId: string;
|
|
866
|
+
|
|
867
|
+
/**
|
|
868
|
+
* UUIDv7 — unique per quote
|
|
869
|
+
*
|
|
870
|
+
* @generated from field: string quote_id = 2;
|
|
871
|
+
*/
|
|
872
|
+
quoteId: string;
|
|
873
|
+
|
|
874
|
+
/**
|
|
875
|
+
* @generated from field: string market_id = 3;
|
|
876
|
+
*/
|
|
877
|
+
marketId: string;
|
|
878
|
+
|
|
879
|
+
/**
|
|
880
|
+
* Echoes the request direction
|
|
881
|
+
*
|
|
882
|
+
* @generated from field: silvana.settlement.v1.RfqDirection direction = 4;
|
|
883
|
+
*/
|
|
884
|
+
direction: RfqDirection;
|
|
885
|
+
|
|
886
|
+
/**
|
|
887
|
+
* DECIMAL(38,10) as string — base quantity being quoted
|
|
888
|
+
*
|
|
889
|
+
* @generated from field: string quantity = 5;
|
|
890
|
+
*/
|
|
891
|
+
quantity: string;
|
|
892
|
+
|
|
893
|
+
/**
|
|
894
|
+
* DECIMAL(38,10) as string — price per unit of base
|
|
895
|
+
*
|
|
896
|
+
* @generated from field: string price = 6;
|
|
897
|
+
*/
|
|
898
|
+
price: string;
|
|
899
|
+
|
|
900
|
+
/**
|
|
901
|
+
* DECIMAL(38,10) as string — total quote instrument amount (price × quantity)
|
|
902
|
+
*
|
|
903
|
+
* @generated from field: string quote_quantity = 7;
|
|
904
|
+
*/
|
|
905
|
+
quoteQuantity: string;
|
|
906
|
+
|
|
907
|
+
/**
|
|
908
|
+
* How many seconds this quote is valid
|
|
909
|
+
*
|
|
910
|
+
* @generated from field: uint32 valid_for_secs = 8;
|
|
911
|
+
*/
|
|
912
|
+
validForSecs: number;
|
|
913
|
+
|
|
914
|
+
/**
|
|
915
|
+
* Absolute expiry
|
|
916
|
+
*
|
|
917
|
+
* @generated from field: google.protobuf.Timestamp valid_until = 9;
|
|
918
|
+
*/
|
|
919
|
+
validUntil?: Timestamp;
|
|
920
|
+
|
|
921
|
+
/**
|
|
922
|
+
* LP's Canton party ID (the counterparty for DVP)
|
|
923
|
+
*
|
|
924
|
+
* @generated from field: string lp_party_id = 10;
|
|
925
|
+
*/
|
|
926
|
+
lpPartyId: string;
|
|
927
|
+
|
|
928
|
+
/**
|
|
929
|
+
* LP display name
|
|
930
|
+
*
|
|
931
|
+
* @generated from field: string lp_name = 11;
|
|
932
|
+
*/
|
|
933
|
+
lpName: string;
|
|
934
|
+
|
|
935
|
+
/**
|
|
936
|
+
* @generated from field: google.protobuf.Timestamp quoted_at = 12;
|
|
937
|
+
*/
|
|
938
|
+
quotedAt?: Timestamp;
|
|
939
|
+
|
|
940
|
+
/**
|
|
941
|
+
* Seconds from DVP creation for allocation deadline
|
|
942
|
+
*
|
|
943
|
+
* @generated from field: optional uint32 allocate_before_secs = 13;
|
|
944
|
+
*/
|
|
945
|
+
allocateBeforeSecs?: number;
|
|
946
|
+
|
|
947
|
+
/**
|
|
948
|
+
* Seconds from DVP creation for settlement deadline
|
|
949
|
+
*
|
|
950
|
+
* @generated from field: optional uint32 settle_before_secs = 14;
|
|
951
|
+
*/
|
|
952
|
+
settleBeforeSecs?: number;
|
|
953
|
+
};
|
|
954
|
+
|
|
955
|
+
/**
|
|
956
|
+
* Describes the message silvana.settlement.v1.RfqQuote.
|
|
957
|
+
* Use `create(RfqQuoteSchema)` to create a new message.
|
|
958
|
+
*/
|
|
959
|
+
export const RfqQuoteSchema: GenMessage<RfqQuote> = /*@__PURE__*/
|
|
960
|
+
messageDesc(file_proto_silvana_settlement_v1_settlement, 16);
|
|
961
|
+
|
|
962
|
+
/**
|
|
963
|
+
* RFQ rejection from LP agent to server (via stream)
|
|
964
|
+
*
|
|
965
|
+
* @generated from message silvana.settlement.v1.RfqReject
|
|
966
|
+
*/
|
|
967
|
+
export type RfqReject = Message<"silvana.settlement.v1.RfqReject"> & {
|
|
968
|
+
/**
|
|
969
|
+
* Must match RfqRequest.rfq_id
|
|
970
|
+
*
|
|
971
|
+
* @generated from field: string rfq_id = 1;
|
|
972
|
+
*/
|
|
973
|
+
rfqId: string;
|
|
974
|
+
|
|
975
|
+
/**
|
|
976
|
+
* LP's Canton party ID
|
|
977
|
+
*
|
|
978
|
+
* @generated from field: string lp_party_id = 2;
|
|
979
|
+
*/
|
|
980
|
+
lpPartyId: string;
|
|
981
|
+
|
|
982
|
+
/**
|
|
983
|
+
* LP display name
|
|
984
|
+
*
|
|
985
|
+
* @generated from field: string lp_name = 3;
|
|
986
|
+
*/
|
|
987
|
+
lpName: string;
|
|
988
|
+
|
|
989
|
+
/**
|
|
990
|
+
* @generated from field: silvana.settlement.v1.RfqRejectionReason reason = 4;
|
|
991
|
+
*/
|
|
992
|
+
reason: RfqRejectionReason;
|
|
993
|
+
|
|
994
|
+
/**
|
|
995
|
+
* Human-readable detail
|
|
996
|
+
*
|
|
997
|
+
* @generated from field: optional string reason_detail = 5;
|
|
998
|
+
*/
|
|
999
|
+
reasonDetail?: string;
|
|
1000
|
+
|
|
1001
|
+
/**
|
|
1002
|
+
* @generated from field: google.protobuf.Timestamp rejected_at = 6;
|
|
1003
|
+
*/
|
|
1004
|
+
rejectedAt?: Timestamp;
|
|
1005
|
+
|
|
1006
|
+
/**
|
|
1007
|
+
* LP's min acceptable quantity (set on AmountTooSmall/AmountTooLarge)
|
|
1008
|
+
*
|
|
1009
|
+
* @generated from field: optional string min_quantity = 7;
|
|
1010
|
+
*/
|
|
1011
|
+
minQuantity?: string;
|
|
1012
|
+
|
|
1013
|
+
/**
|
|
1014
|
+
* LP's max acceptable quantity (set on AmountTooSmall/AmountTooLarge)
|
|
1015
|
+
*
|
|
1016
|
+
* @generated from field: optional string max_quantity = 8;
|
|
1017
|
+
*/
|
|
1018
|
+
maxQuantity?: string;
|
|
1019
|
+
};
|
|
1020
|
+
|
|
1021
|
+
/**
|
|
1022
|
+
* Describes the message silvana.settlement.v1.RfqReject.
|
|
1023
|
+
* Use `create(RfqRejectSchema)` to create a new message.
|
|
1024
|
+
*/
|
|
1025
|
+
export const RfqRejectSchema: GenMessage<RfqReject> = /*@__PURE__*/
|
|
1026
|
+
messageDesc(file_proto_silvana_settlement_v1_settlement, 17);
|
|
1027
|
+
|
|
795
1028
|
/**
|
|
796
1029
|
* Stream message from server to Canton node
|
|
797
1030
|
*
|
|
@@ -873,12 +1106,20 @@ export type ServerToCantonMessage = Message<"silvana.settlement.v1.ServerToCanto
|
|
|
873
1106
|
case: "query";
|
|
874
1107
|
} | {
|
|
875
1108
|
/**
|
|
876
|
-
* Pong acknowledgment for LP activity ping
|
|
1109
|
+
* Pong acknowledgment for LP activity ping (deprecated)
|
|
877
1110
|
*
|
|
878
1111
|
* @generated from field: silvana.settlement.v1.LiquidityProviderPong lp_pong = 14;
|
|
879
1112
|
*/
|
|
880
1113
|
value: LiquidityProviderPong;
|
|
881
1114
|
case: "lpPong";
|
|
1115
|
+
} | {
|
|
1116
|
+
/**
|
|
1117
|
+
* RFQ request to LP agent
|
|
1118
|
+
*
|
|
1119
|
+
* @generated from field: silvana.settlement.v1.RfqRequest rfq_request = 15;
|
|
1120
|
+
*/
|
|
1121
|
+
value: RfqRequest;
|
|
1122
|
+
case: "rfqRequest";
|
|
882
1123
|
} | { case: undefined; value?: undefined };
|
|
883
1124
|
|
|
884
1125
|
/**
|
|
@@ -892,7 +1133,7 @@ export type ServerToCantonMessage = Message<"silvana.settlement.v1.ServerToCanto
|
|
|
892
1133
|
* Use `create(ServerToCantonMessageSchema)` to create a new message.
|
|
893
1134
|
*/
|
|
894
1135
|
export const ServerToCantonMessageSchema: GenMessage<ServerToCantonMessage> = /*@__PURE__*/
|
|
895
|
-
messageDesc(file_proto_silvana_settlement_v1_settlement,
|
|
1136
|
+
messageDesc(file_proto_silvana_settlement_v1_settlement, 18);
|
|
896
1137
|
|
|
897
1138
|
/**
|
|
898
1139
|
* Stream message from Canton node to server
|
|
@@ -975,12 +1216,28 @@ export type CantonToServerMessage = Message<"silvana.settlement.v1.CantonToServe
|
|
|
975
1216
|
case: "status";
|
|
976
1217
|
} | {
|
|
977
1218
|
/**
|
|
978
|
-
* Ping from settlement agent
|
|
1219
|
+
* Ping from settlement agent (deprecated)
|
|
979
1220
|
*
|
|
980
1221
|
* @generated from field: silvana.settlement.v1.LiquidityProviderPing lp_ping = 14;
|
|
981
1222
|
*/
|
|
982
1223
|
value: LiquidityProviderPing;
|
|
983
1224
|
case: "lpPing";
|
|
1225
|
+
} | {
|
|
1226
|
+
/**
|
|
1227
|
+
* LP quote response
|
|
1228
|
+
*
|
|
1229
|
+
* @generated from field: silvana.settlement.v1.RfqQuote rfq_quote = 15;
|
|
1230
|
+
*/
|
|
1231
|
+
value: RfqQuote;
|
|
1232
|
+
case: "rfqQuote";
|
|
1233
|
+
} | {
|
|
1234
|
+
/**
|
|
1235
|
+
* LP rejection response
|
|
1236
|
+
*
|
|
1237
|
+
* @generated from field: silvana.settlement.v1.RfqReject rfq_reject = 16;
|
|
1238
|
+
*/
|
|
1239
|
+
value: RfqReject;
|
|
1240
|
+
case: "rfqReject";
|
|
984
1241
|
} | { case: undefined; value?: undefined };
|
|
985
1242
|
|
|
986
1243
|
/**
|
|
@@ -994,7 +1251,7 @@ export type CantonToServerMessage = Message<"silvana.settlement.v1.CantonToServe
|
|
|
994
1251
|
* Use `create(CantonToServerMessageSchema)` to create a new message.
|
|
995
1252
|
*/
|
|
996
1253
|
export const CantonToServerMessageSchema: GenMessage<CantonToServerMessage> = /*@__PURE__*/
|
|
997
|
-
messageDesc(file_proto_silvana_settlement_v1_settlement,
|
|
1254
|
+
messageDesc(file_proto_silvana_settlement_v1_settlement, 19);
|
|
998
1255
|
|
|
999
1256
|
/**
|
|
1000
1257
|
* Report DVP proposal creation
|
|
@@ -1045,7 +1302,7 @@ export type DvpCreationReport = Message<"silvana.settlement.v1.DvpCreationReport
|
|
|
1045
1302
|
* Use `create(DvpCreationReportSchema)` to create a new message.
|
|
1046
1303
|
*/
|
|
1047
1304
|
export const DvpCreationReportSchema: GenMessage<DvpCreationReport> = /*@__PURE__*/
|
|
1048
|
-
messageDesc(file_proto_silvana_settlement_v1_settlement,
|
|
1305
|
+
messageDesc(file_proto_silvana_settlement_v1_settlement, 20);
|
|
1049
1306
|
|
|
1050
1307
|
/**
|
|
1051
1308
|
* Report DVP acceptance
|
|
@@ -1096,7 +1353,7 @@ export type DvpAcceptanceReport = Message<"silvana.settlement.v1.DvpAcceptanceRe
|
|
|
1096
1353
|
* Use `create(DvpAcceptanceReportSchema)` to create a new message.
|
|
1097
1354
|
*/
|
|
1098
1355
|
export const DvpAcceptanceReportSchema: GenMessage<DvpAcceptanceReport> = /*@__PURE__*/
|
|
1099
|
-
messageDesc(file_proto_silvana_settlement_v1_settlement,
|
|
1356
|
+
messageDesc(file_proto_silvana_settlement_v1_settlement, 21);
|
|
1100
1357
|
|
|
1101
1358
|
/**
|
|
1102
1359
|
* Report allocation completion
|
|
@@ -1159,7 +1416,7 @@ export type AllocationReport = Message<"silvana.settlement.v1.AllocationReport">
|
|
|
1159
1416
|
* Use `create(AllocationReportSchema)` to create a new message.
|
|
1160
1417
|
*/
|
|
1161
1418
|
export const AllocationReportSchema: GenMessage<AllocationReport> = /*@__PURE__*/
|
|
1162
|
-
messageDesc(file_proto_silvana_settlement_v1_settlement,
|
|
1419
|
+
messageDesc(file_proto_silvana_settlement_v1_settlement, 22);
|
|
1163
1420
|
|
|
1164
1421
|
/**
|
|
1165
1422
|
* Report settlement completion
|
|
@@ -1222,7 +1479,7 @@ export type SettlementReport = Message<"silvana.settlement.v1.SettlementReport">
|
|
|
1222
1479
|
* Use `create(SettlementReportSchema)` to create a new message.
|
|
1223
1480
|
*/
|
|
1224
1481
|
export const SettlementReportSchema: GenMessage<SettlementReport> = /*@__PURE__*/
|
|
1225
|
-
messageDesc(file_proto_silvana_settlement_v1_settlement,
|
|
1482
|
+
messageDesc(file_proto_silvana_settlement_v1_settlement, 23);
|
|
1226
1483
|
|
|
1227
1484
|
/**
|
|
1228
1485
|
* Error report
|
|
@@ -1273,7 +1530,7 @@ export type ErrorReport = Message<"silvana.settlement.v1.ErrorReport"> & {
|
|
|
1273
1530
|
* Use `create(ErrorReportSchema)` to create a new message.
|
|
1274
1531
|
*/
|
|
1275
1532
|
export const ErrorReportSchema: GenMessage<ErrorReport> = /*@__PURE__*/
|
|
1276
|
-
messageDesc(file_proto_silvana_settlement_v1_settlement,
|
|
1533
|
+
messageDesc(file_proto_silvana_settlement_v1_settlement, 24);
|
|
1277
1534
|
|
|
1278
1535
|
/**
|
|
1279
1536
|
* Status update
|
|
@@ -1321,7 +1578,7 @@ export type StatusUpdate = Message<"silvana.settlement.v1.StatusUpdate"> & {
|
|
|
1321
1578
|
* Use `create(StatusUpdateSchema)` to create a new message.
|
|
1322
1579
|
*/
|
|
1323
1580
|
export const StatusUpdateSchema: GenMessage<StatusUpdate> = /*@__PURE__*/
|
|
1324
|
-
messageDesc(file_proto_silvana_settlement_v1_settlement,
|
|
1581
|
+
messageDesc(file_proto_silvana_settlement_v1_settlement, 25);
|
|
1325
1582
|
|
|
1326
1583
|
/**
|
|
1327
1584
|
* Command to Canton node
|
|
@@ -1364,7 +1621,7 @@ export type SettlementCommand = Message<"silvana.settlement.v1.SettlementCommand
|
|
|
1364
1621
|
* Use `create(SettlementCommandSchema)` to create a new message.
|
|
1365
1622
|
*/
|
|
1366
1623
|
export const SettlementCommandSchema: GenMessage<SettlementCommand> = /*@__PURE__*/
|
|
1367
|
-
messageDesc(file_proto_silvana_settlement_v1_settlement,
|
|
1624
|
+
messageDesc(file_proto_silvana_settlement_v1_settlement, 26);
|
|
1368
1625
|
|
|
1369
1626
|
/**
|
|
1370
1627
|
* @generated from enum silvana.settlement.v1.SettlementCommand.CommandType
|
|
@@ -1410,7 +1667,7 @@ export enum SettlementCommand_CommandType {
|
|
|
1410
1667
|
* Describes the enum silvana.settlement.v1.SettlementCommand.CommandType.
|
|
1411
1668
|
*/
|
|
1412
1669
|
export const SettlementCommand_CommandTypeSchema: GenEnum<SettlementCommand_CommandType> = /*@__PURE__*/
|
|
1413
|
-
enumDesc(file_proto_silvana_settlement_v1_settlement,
|
|
1670
|
+
enumDesc(file_proto_silvana_settlement_v1_settlement, 26, 0);
|
|
1414
1671
|
|
|
1415
1672
|
/**
|
|
1416
1673
|
* Query to Canton node
|
|
@@ -1449,7 +1706,7 @@ export type SettlementQuery = Message<"silvana.settlement.v1.SettlementQuery"> &
|
|
|
1449
1706
|
* Use `create(SettlementQuerySchema)` to create a new message.
|
|
1450
1707
|
*/
|
|
1451
1708
|
export const SettlementQuerySchema: GenMessage<SettlementQuery> = /*@__PURE__*/
|
|
1452
|
-
messageDesc(file_proto_silvana_settlement_v1_settlement,
|
|
1709
|
+
messageDesc(file_proto_silvana_settlement_v1_settlement, 27);
|
|
1453
1710
|
|
|
1454
1711
|
/**
|
|
1455
1712
|
* @generated from enum silvana.settlement.v1.SettlementQuery.QueryType
|
|
@@ -1490,7 +1747,7 @@ export enum SettlementQuery_QueryType {
|
|
|
1490
1747
|
* Describes the enum silvana.settlement.v1.SettlementQuery.QueryType.
|
|
1491
1748
|
*/
|
|
1492
1749
|
export const SettlementQuery_QueryTypeSchema: GenEnum<SettlementQuery_QueryType> = /*@__PURE__*/
|
|
1493
|
-
enumDesc(file_proto_silvana_settlement_v1_settlement,
|
|
1750
|
+
enumDesc(file_proto_silvana_settlement_v1_settlement, 27, 0);
|
|
1494
1751
|
|
|
1495
1752
|
/**
|
|
1496
1753
|
* Response to command or query
|
|
@@ -1524,7 +1781,7 @@ export type SettlementResponse = Message<"silvana.settlement.v1.SettlementRespon
|
|
|
1524
1781
|
* Use `create(SettlementResponseSchema)` to create a new message.
|
|
1525
1782
|
*/
|
|
1526
1783
|
export const SettlementResponseSchema: GenMessage<SettlementResponse> = /*@__PURE__*/
|
|
1527
|
-
messageDesc(file_proto_silvana_settlement_v1_settlement,
|
|
1784
|
+
messageDesc(file_proto_silvana_settlement_v1_settlement, 28);
|
|
1528
1785
|
|
|
1529
1786
|
/**
|
|
1530
1787
|
* @generated from message silvana.settlement.v1.GetPendingProposalsRequest
|
|
@@ -1551,7 +1808,7 @@ export type GetPendingProposalsRequest = Message<"silvana.settlement.v1.GetPendi
|
|
|
1551
1808
|
* Use `create(GetPendingProposalsRequestSchema)` to create a new message.
|
|
1552
1809
|
*/
|
|
1553
1810
|
export const GetPendingProposalsRequestSchema: GenMessage<GetPendingProposalsRequest> = /*@__PURE__*/
|
|
1554
|
-
messageDesc(file_proto_silvana_settlement_v1_settlement,
|
|
1811
|
+
messageDesc(file_proto_silvana_settlement_v1_settlement, 29);
|
|
1555
1812
|
|
|
1556
1813
|
/**
|
|
1557
1814
|
* @generated from message silvana.settlement.v1.GetPendingProposalsResponse
|
|
@@ -1573,7 +1830,7 @@ export type GetPendingProposalsResponse = Message<"silvana.settlement.v1.GetPend
|
|
|
1573
1830
|
* Use `create(GetPendingProposalsResponseSchema)` to create a new message.
|
|
1574
1831
|
*/
|
|
1575
1832
|
export const GetPendingProposalsResponseSchema: GenMessage<GetPendingProposalsResponse> = /*@__PURE__*/
|
|
1576
|
-
messageDesc(file_proto_silvana_settlement_v1_settlement,
|
|
1833
|
+
messageDesc(file_proto_silvana_settlement_v1_settlement, 30);
|
|
1577
1834
|
|
|
1578
1835
|
/**
|
|
1579
1836
|
* @generated from message silvana.settlement.v1.GetSettlementStatusRequest
|
|
@@ -1595,7 +1852,7 @@ export type GetSettlementStatusRequest = Message<"silvana.settlement.v1.GetSettl
|
|
|
1595
1852
|
* Use `create(GetSettlementStatusRequestSchema)` to create a new message.
|
|
1596
1853
|
*/
|
|
1597
1854
|
export const GetSettlementStatusRequestSchema: GenMessage<GetSettlementStatusRequest> = /*@__PURE__*/
|
|
1598
|
-
messageDesc(file_proto_silvana_settlement_v1_settlement,
|
|
1855
|
+
messageDesc(file_proto_silvana_settlement_v1_settlement, 31);
|
|
1599
1856
|
|
|
1600
1857
|
/**
|
|
1601
1858
|
* Status of a single step in the DVP flow with details
|
|
@@ -1665,7 +1922,7 @@ export type DvpStepStatus = Message<"silvana.settlement.v1.DvpStepStatus"> & {
|
|
|
1665
1922
|
* Use `create(DvpStepStatusSchema)` to create a new message.
|
|
1666
1923
|
*/
|
|
1667
1924
|
export const DvpStepStatusSchema: GenMessage<DvpStepStatus> = /*@__PURE__*/
|
|
1668
|
-
messageDesc(file_proto_silvana_settlement_v1_settlement,
|
|
1925
|
+
messageDesc(file_proto_silvana_settlement_v1_settlement, 32);
|
|
1669
1926
|
|
|
1670
1927
|
/**
|
|
1671
1928
|
* Enhanced GetSettlementStatusResponse with detailed DVP flow progress
|
|
@@ -1808,7 +2065,7 @@ export type GetSettlementStatusResponse = Message<"silvana.settlement.v1.GetSett
|
|
|
1808
2065
|
* Use `create(GetSettlementStatusResponseSchema)` to create a new message.
|
|
1809
2066
|
*/
|
|
1810
2067
|
export const GetSettlementStatusResponseSchema: GenMessage<GetSettlementStatusResponse> = /*@__PURE__*/
|
|
1811
|
-
messageDesc(file_proto_silvana_settlement_v1_settlement,
|
|
2068
|
+
messageDesc(file_proto_silvana_settlement_v1_settlement, 33);
|
|
1812
2069
|
|
|
1813
2070
|
/**
|
|
1814
2071
|
* @generated from message silvana.settlement.v1.SubmitPreconfirmationRequest
|
|
@@ -1830,7 +2087,7 @@ export type SubmitPreconfirmationRequest = Message<"silvana.settlement.v1.Submit
|
|
|
1830
2087
|
* Use `create(SubmitPreconfirmationRequestSchema)` to create a new message.
|
|
1831
2088
|
*/
|
|
1832
2089
|
export const SubmitPreconfirmationRequestSchema: GenMessage<SubmitPreconfirmationRequest> = /*@__PURE__*/
|
|
1833
|
-
messageDesc(file_proto_silvana_settlement_v1_settlement,
|
|
2090
|
+
messageDesc(file_proto_silvana_settlement_v1_settlement, 34);
|
|
1834
2091
|
|
|
1835
2092
|
/**
|
|
1836
2093
|
* A disclosed contract for settlement
|
|
@@ -1873,7 +2130,7 @@ export type DisclosedContractMessage = Message<"silvana.settlement.v1.DisclosedC
|
|
|
1873
2130
|
* Use `create(DisclosedContractMessageSchema)` to create a new message.
|
|
1874
2131
|
*/
|
|
1875
2132
|
export const DisclosedContractMessageSchema: GenMessage<DisclosedContractMessage> = /*@__PURE__*/
|
|
1876
|
-
messageDesc(file_proto_silvana_settlement_v1_settlement,
|
|
2133
|
+
messageDesc(file_proto_silvana_settlement_v1_settlement, 35);
|
|
1877
2134
|
|
|
1878
2135
|
/**
|
|
1879
2136
|
* Save disclosed contract request (buyer/seller saves their contracts during allocation)
|
|
@@ -1906,7 +2163,7 @@ export type SaveDisclosedContractRequest = Message<"silvana.settlement.v1.SaveDi
|
|
|
1906
2163
|
* Use `create(SaveDisclosedContractRequestSchema)` to create a new message.
|
|
1907
2164
|
*/
|
|
1908
2165
|
export const SaveDisclosedContractRequestSchema: GenMessage<SaveDisclosedContractRequest> = /*@__PURE__*/
|
|
1909
|
-
messageDesc(file_proto_silvana_settlement_v1_settlement,
|
|
2166
|
+
messageDesc(file_proto_silvana_settlement_v1_settlement, 36);
|
|
1910
2167
|
|
|
1911
2168
|
/**
|
|
1912
2169
|
* Save disclosed contract response
|
|
@@ -1930,7 +2187,7 @@ export type SaveDisclosedContractResponse = Message<"silvana.settlement.v1.SaveD
|
|
|
1930
2187
|
* Use `create(SaveDisclosedContractResponseSchema)` to create a new message.
|
|
1931
2188
|
*/
|
|
1932
2189
|
export const SaveDisclosedContractResponseSchema: GenMessage<SaveDisclosedContractResponse> = /*@__PURE__*/
|
|
1933
|
-
messageDesc(file_proto_silvana_settlement_v1_settlement,
|
|
2190
|
+
messageDesc(file_proto_silvana_settlement_v1_settlement, 37);
|
|
1934
2191
|
|
|
1935
2192
|
/**
|
|
1936
2193
|
* Get disclosed contracts request
|
|
@@ -1963,7 +2220,7 @@ export type GetDisclosedContractsRequest = Message<"silvana.settlement.v1.GetDis
|
|
|
1963
2220
|
* Use `create(GetDisclosedContractsRequestSchema)` to create a new message.
|
|
1964
2221
|
*/
|
|
1965
2222
|
export const GetDisclosedContractsRequestSchema: GenMessage<GetDisclosedContractsRequest> = /*@__PURE__*/
|
|
1966
|
-
messageDesc(file_proto_silvana_settlement_v1_settlement,
|
|
2223
|
+
messageDesc(file_proto_silvana_settlement_v1_settlement, 38);
|
|
1967
2224
|
|
|
1968
2225
|
/**
|
|
1969
2226
|
* Get disclosed contracts response
|
|
@@ -1982,7 +2239,7 @@ export type GetDisclosedContractsResponse = Message<"silvana.settlement.v1.GetDi
|
|
|
1982
2239
|
* Use `create(GetDisclosedContractsResponseSchema)` to create a new message.
|
|
1983
2240
|
*/
|
|
1984
2241
|
export const GetDisclosedContractsResponseSchema: GenMessage<GetDisclosedContractsResponse> = /*@__PURE__*/
|
|
1985
|
-
messageDesc(file_proto_silvana_settlement_v1_settlement,
|
|
2242
|
+
messageDesc(file_proto_silvana_settlement_v1_settlement, 39);
|
|
1986
2243
|
|
|
1987
2244
|
/**
|
|
1988
2245
|
* Record a completed settlement request
|
|
@@ -2053,7 +2310,7 @@ export type RecordSettlementRequest = Message<"silvana.settlement.v1.RecordSettl
|
|
|
2053
2310
|
* Use `create(RecordSettlementRequestSchema)` to create a new message.
|
|
2054
2311
|
*/
|
|
2055
2312
|
export const RecordSettlementRequestSchema: GenMessage<RecordSettlementRequest> = /*@__PURE__*/
|
|
2056
|
-
messageDesc(file_proto_silvana_settlement_v1_settlement,
|
|
2313
|
+
messageDesc(file_proto_silvana_settlement_v1_settlement, 40);
|
|
2057
2314
|
|
|
2058
2315
|
/**
|
|
2059
2316
|
* Record settlement response
|
|
@@ -2084,7 +2341,7 @@ export type RecordSettlementResponse = Message<"silvana.settlement.v1.RecordSett
|
|
|
2084
2341
|
* Use `create(RecordSettlementResponseSchema)` to create a new message.
|
|
2085
2342
|
*/
|
|
2086
2343
|
export const RecordSettlementResponseSchema: GenMessage<RecordSettlementResponse> = /*@__PURE__*/
|
|
2087
|
-
messageDesc(file_proto_silvana_settlement_v1_settlement,
|
|
2344
|
+
messageDesc(file_proto_silvana_settlement_v1_settlement, 41);
|
|
2088
2345
|
|
|
2089
2346
|
/**
|
|
2090
2347
|
* Record a transaction in history
|
|
@@ -2162,6 +2419,13 @@ export type RecordTransactionRequest = Message<"silvana.settlement.v1.RecordTran
|
|
|
2162
2419
|
*/
|
|
2163
2420
|
amount?: string;
|
|
2164
2421
|
|
|
2422
|
+
/**
|
|
2423
|
+
* instrument_id from instruments table
|
|
2424
|
+
*
|
|
2425
|
+
* @generated from field: optional string token = 27;
|
|
2426
|
+
*/
|
|
2427
|
+
token?: string;
|
|
2428
|
+
|
|
2165
2429
|
/**
|
|
2166
2430
|
* @generated from field: optional string rewards_amount = 13;
|
|
2167
2431
|
*/
|
|
@@ -2245,7 +2509,7 @@ export type RecordTransactionRequest = Message<"silvana.settlement.v1.RecordTran
|
|
|
2245
2509
|
* Use `create(RecordTransactionRequestSchema)` to create a new message.
|
|
2246
2510
|
*/
|
|
2247
2511
|
export const RecordTransactionRequestSchema: GenMessage<RecordTransactionRequest> = /*@__PURE__*/
|
|
2248
|
-
messageDesc(file_proto_silvana_settlement_v1_settlement,
|
|
2512
|
+
messageDesc(file_proto_silvana_settlement_v1_settlement, 42);
|
|
2249
2513
|
|
|
2250
2514
|
/**
|
|
2251
2515
|
* @generated from message silvana.settlement.v1.RecordTransactionResponse
|
|
@@ -2274,7 +2538,7 @@ export type RecordTransactionResponse = Message<"silvana.settlement.v1.RecordTra
|
|
|
2274
2538
|
* Use `create(RecordTransactionResponseSchema)` to create a new message.
|
|
2275
2539
|
*/
|
|
2276
2540
|
export const RecordTransactionResponseSchema: GenMessage<RecordTransactionResponse> = /*@__PURE__*/
|
|
2277
|
-
messageDesc(file_proto_silvana_settlement_v1_settlement,
|
|
2541
|
+
messageDesc(file_proto_silvana_settlement_v1_settlement, 43);
|
|
2278
2542
|
|
|
2279
2543
|
/**
|
|
2280
2544
|
* Get transaction history
|
|
@@ -2323,7 +2587,7 @@ export type GetTransactionHistoryRequest = Message<"silvana.settlement.v1.GetTra
|
|
|
2323
2587
|
* Use `create(GetTransactionHistoryRequestSchema)` to create a new message.
|
|
2324
2588
|
*/
|
|
2325
2589
|
export const GetTransactionHistoryRequestSchema: GenMessage<GetTransactionHistoryRequest> = /*@__PURE__*/
|
|
2326
|
-
messageDesc(file_proto_silvana_settlement_v1_settlement,
|
|
2590
|
+
messageDesc(file_proto_silvana_settlement_v1_settlement, 44);
|
|
2327
2591
|
|
|
2328
2592
|
/**
|
|
2329
2593
|
* @generated from message silvana.settlement.v1.GetTransactionHistoryResponse
|
|
@@ -2345,7 +2609,7 @@ export type GetTransactionHistoryResponse = Message<"silvana.settlement.v1.GetTr
|
|
|
2345
2609
|
* Use `create(GetTransactionHistoryResponseSchema)` to create a new message.
|
|
2346
2610
|
*/
|
|
2347
2611
|
export const GetTransactionHistoryResponseSchema: GenMessage<GetTransactionHistoryResponse> = /*@__PURE__*/
|
|
2348
|
-
messageDesc(file_proto_silvana_settlement_v1_settlement,
|
|
2612
|
+
messageDesc(file_proto_silvana_settlement_v1_settlement, 45);
|
|
2349
2613
|
|
|
2350
2614
|
/**
|
|
2351
2615
|
* @generated from message silvana.settlement.v1.TransactionHistoryEntry
|
|
@@ -2411,6 +2675,13 @@ export type TransactionHistoryEntry = Message<"silvana.settlement.v1.Transaction
|
|
|
2411
2675
|
*/
|
|
2412
2676
|
amount?: string;
|
|
2413
2677
|
|
|
2678
|
+
/**
|
|
2679
|
+
* instrument_id from instruments table
|
|
2680
|
+
*
|
|
2681
|
+
* @generated from field: optional string token = 27;
|
|
2682
|
+
*/
|
|
2683
|
+
token?: string;
|
|
2684
|
+
|
|
2414
2685
|
/**
|
|
2415
2686
|
* @generated from field: optional string rewards_amount = 13;
|
|
2416
2687
|
*/
|
|
@@ -2497,7 +2768,7 @@ export type TransactionHistoryEntry = Message<"silvana.settlement.v1.Transaction
|
|
|
2497
2768
|
* Use `create(TransactionHistoryEntrySchema)` to create a new message.
|
|
2498
2769
|
*/
|
|
2499
2770
|
export const TransactionHistoryEntrySchema: GenMessage<TransactionHistoryEntry> = /*@__PURE__*/
|
|
2500
|
-
messageDesc(file_proto_silvana_settlement_v1_settlement,
|
|
2771
|
+
messageDesc(file_proto_silvana_settlement_v1_settlement, 46);
|
|
2501
2772
|
|
|
2502
2773
|
/**
|
|
2503
2774
|
* Record a settlement event (any party can record for their settlements)
|
|
@@ -2587,7 +2858,7 @@ export type RecordSettlementEventRequest = Message<"silvana.settlement.v1.Record
|
|
|
2587
2858
|
* Use `create(RecordSettlementEventRequestSchema)` to create a new message.
|
|
2588
2859
|
*/
|
|
2589
2860
|
export const RecordSettlementEventRequestSchema: GenMessage<RecordSettlementEventRequest> = /*@__PURE__*/
|
|
2590
|
-
messageDesc(file_proto_silvana_settlement_v1_settlement,
|
|
2861
|
+
messageDesc(file_proto_silvana_settlement_v1_settlement, 47);
|
|
2591
2862
|
|
|
2592
2863
|
/**
|
|
2593
2864
|
* @generated from message silvana.settlement.v1.RecordSettlementEventResponse
|
|
@@ -2616,7 +2887,7 @@ export type RecordSettlementEventResponse = Message<"silvana.settlement.v1.Recor
|
|
|
2616
2887
|
* Use `create(RecordSettlementEventResponseSchema)` to create a new message.
|
|
2617
2888
|
*/
|
|
2618
2889
|
export const RecordSettlementEventResponseSchema: GenMessage<RecordSettlementEventResponse> = /*@__PURE__*/
|
|
2619
|
-
messageDesc(file_proto_silvana_settlement_v1_settlement,
|
|
2890
|
+
messageDesc(file_proto_silvana_settlement_v1_settlement, 48);
|
|
2620
2891
|
|
|
2621
2892
|
/**
|
|
2622
2893
|
* Get settlement history (parties can only see their own settlements)
|
|
@@ -2666,7 +2937,7 @@ export type GetSettlementHistoryRequest = Message<"silvana.settlement.v1.GetSett
|
|
|
2666
2937
|
* Use `create(GetSettlementHistoryRequestSchema)` to create a new message.
|
|
2667
2938
|
*/
|
|
2668
2939
|
export const GetSettlementHistoryRequestSchema: GenMessage<GetSettlementHistoryRequest> = /*@__PURE__*/
|
|
2669
|
-
messageDesc(file_proto_silvana_settlement_v1_settlement,
|
|
2940
|
+
messageDesc(file_proto_silvana_settlement_v1_settlement, 49);
|
|
2670
2941
|
|
|
2671
2942
|
/**
|
|
2672
2943
|
* @generated from message silvana.settlement.v1.GetSettlementHistoryResponse
|
|
@@ -2688,7 +2959,7 @@ export type GetSettlementHistoryResponse = Message<"silvana.settlement.v1.GetSet
|
|
|
2688
2959
|
* Use `create(GetSettlementHistoryResponseSchema)` to create a new message.
|
|
2689
2960
|
*/
|
|
2690
2961
|
export const GetSettlementHistoryResponseSchema: GenMessage<GetSettlementHistoryResponse> = /*@__PURE__*/
|
|
2691
|
-
messageDesc(file_proto_silvana_settlement_v1_settlement,
|
|
2962
|
+
messageDesc(file_proto_silvana_settlement_v1_settlement, 50);
|
|
2692
2963
|
|
|
2693
2964
|
/**
|
|
2694
2965
|
* Settlement history entry (matches settlement_proposal_history table)
|
|
@@ -2771,7 +3042,7 @@ export type SettlementHistoryEntry = Message<"silvana.settlement.v1.SettlementHi
|
|
|
2771
3042
|
* Use `create(SettlementHistoryEntrySchema)` to create a new message.
|
|
2772
3043
|
*/
|
|
2773
3044
|
export const SettlementHistoryEntrySchema: GenMessage<SettlementHistoryEntry> = /*@__PURE__*/
|
|
2774
|
-
messageDesc(file_proto_silvana_settlement_v1_settlement,
|
|
3045
|
+
messageDesc(file_proto_silvana_settlement_v1_settlement, 51);
|
|
2775
3046
|
|
|
2776
3047
|
/**
|
|
2777
3048
|
* Update proposal status (operator only)
|
|
@@ -2811,7 +3082,7 @@ export type UpdateProposalStatusRequest = Message<"silvana.settlement.v1.UpdateP
|
|
|
2811
3082
|
* Use `create(UpdateProposalStatusRequestSchema)` to create a new message.
|
|
2812
3083
|
*/
|
|
2813
3084
|
export const UpdateProposalStatusRequestSchema: GenMessage<UpdateProposalStatusRequest> = /*@__PURE__*/
|
|
2814
|
-
messageDesc(file_proto_silvana_settlement_v1_settlement,
|
|
3085
|
+
messageDesc(file_proto_silvana_settlement_v1_settlement, 52);
|
|
2815
3086
|
|
|
2816
3087
|
/**
|
|
2817
3088
|
* @generated from enum silvana.settlement.v1.UpdateProposalStatusRequest.NewStatus
|
|
@@ -2842,7 +3113,7 @@ export enum UpdateProposalStatusRequest_NewStatus {
|
|
|
2842
3113
|
* Describes the enum silvana.settlement.v1.UpdateProposalStatusRequest.NewStatus.
|
|
2843
3114
|
*/
|
|
2844
3115
|
export const UpdateProposalStatusRequest_NewStatusSchema: GenEnum<UpdateProposalStatusRequest_NewStatus> = /*@__PURE__*/
|
|
2845
|
-
enumDesc(file_proto_silvana_settlement_v1_settlement,
|
|
3116
|
+
enumDesc(file_proto_silvana_settlement_v1_settlement, 52, 0);
|
|
2846
3117
|
|
|
2847
3118
|
/**
|
|
2848
3119
|
* @generated from message silvana.settlement.v1.UpdateProposalStatusResponse
|
|
@@ -2864,7 +3135,7 @@ export type UpdateProposalStatusResponse = Message<"silvana.settlement.v1.Update
|
|
|
2864
3135
|
* Use `create(UpdateProposalStatusResponseSchema)` to create a new message.
|
|
2865
3136
|
*/
|
|
2866
3137
|
export const UpdateProposalStatusResponseSchema: GenMessage<UpdateProposalStatusResponse> = /*@__PURE__*/
|
|
2867
|
-
messageDesc(file_proto_silvana_settlement_v1_settlement,
|
|
3138
|
+
messageDesc(file_proto_silvana_settlement_v1_settlement, 53);
|
|
2868
3139
|
|
|
2869
3140
|
/**
|
|
2870
3141
|
* Get settlement proposal by ID request
|
|
@@ -2893,7 +3164,7 @@ export type GetSettlementProposalByIdRequest = Message<"silvana.settlement.v1.Ge
|
|
|
2893
3164
|
* Use `create(GetSettlementProposalByIdRequestSchema)` to create a new message.
|
|
2894
3165
|
*/
|
|
2895
3166
|
export const GetSettlementProposalByIdRequestSchema: GenMessage<GetSettlementProposalByIdRequest> = /*@__PURE__*/
|
|
2896
|
-
messageDesc(file_proto_silvana_settlement_v1_settlement,
|
|
3167
|
+
messageDesc(file_proto_silvana_settlement_v1_settlement, 54);
|
|
2897
3168
|
|
|
2898
3169
|
/**
|
|
2899
3170
|
* Get settlement proposal by ID response
|
|
@@ -2917,7 +3188,7 @@ export type GetSettlementProposalByIdResponse = Message<"silvana.settlement.v1.G
|
|
|
2917
3188
|
* Use `create(GetSettlementProposalByIdResponseSchema)` to create a new message.
|
|
2918
3189
|
*/
|
|
2919
3190
|
export const GetSettlementProposalByIdResponseSchema: GenMessage<GetSettlementProposalByIdResponse> = /*@__PURE__*/
|
|
2920
|
-
messageDesc(file_proto_silvana_settlement_v1_settlement,
|
|
3191
|
+
messageDesc(file_proto_silvana_settlement_v1_settlement, 55);
|
|
2921
3192
|
|
|
2922
3193
|
/**
|
|
2923
3194
|
* DVP settlement stage enumeration
|
|
@@ -3138,6 +3409,11 @@ export enum TransactionType {
|
|
|
3138
3409
|
* @generated from enum value: TRANSACTION_TYPE_OTHER = 13;
|
|
3139
3410
|
*/
|
|
3140
3411
|
OTHER = 13,
|
|
3412
|
+
|
|
3413
|
+
/**
|
|
3414
|
+
* @generated from enum value: TRANSACTION_TYPE_TRANSFER = 14;
|
|
3415
|
+
*/
|
|
3416
|
+
TRANSFER = 14,
|
|
3141
3417
|
}
|
|
3142
3418
|
|
|
3143
3419
|
/**
|
|
@@ -3598,6 +3874,86 @@ export enum NextAction {
|
|
|
3598
3874
|
export const NextActionSchema: GenEnum<NextAction> = /*@__PURE__*/
|
|
3599
3875
|
enumDesc(file_proto_silvana_settlement_v1_settlement, 8);
|
|
3600
3876
|
|
|
3877
|
+
/**
|
|
3878
|
+
* Direction the user wants to trade
|
|
3879
|
+
*
|
|
3880
|
+
* @generated from enum silvana.settlement.v1.RfqDirection
|
|
3881
|
+
*/
|
|
3882
|
+
export enum RfqDirection {
|
|
3883
|
+
/**
|
|
3884
|
+
* @generated from enum value: RFQ_DIRECTION_UNSPECIFIED = 0;
|
|
3885
|
+
*/
|
|
3886
|
+
UNSPECIFIED = 0,
|
|
3887
|
+
|
|
3888
|
+
/**
|
|
3889
|
+
* User wants to buy base instrument
|
|
3890
|
+
*
|
|
3891
|
+
* @generated from enum value: RFQ_DIRECTION_BUY = 1;
|
|
3892
|
+
*/
|
|
3893
|
+
BUY = 1,
|
|
3894
|
+
|
|
3895
|
+
/**
|
|
3896
|
+
* User wants to sell base instrument
|
|
3897
|
+
*
|
|
3898
|
+
* @generated from enum value: RFQ_DIRECTION_SELL = 2;
|
|
3899
|
+
*/
|
|
3900
|
+
SELL = 2,
|
|
3901
|
+
}
|
|
3902
|
+
|
|
3903
|
+
/**
|
|
3904
|
+
* Describes the enum silvana.settlement.v1.RfqDirection.
|
|
3905
|
+
*/
|
|
3906
|
+
export const RfqDirectionSchema: GenEnum<RfqDirection> = /*@__PURE__*/
|
|
3907
|
+
enumDesc(file_proto_silvana_settlement_v1_settlement, 9);
|
|
3908
|
+
|
|
3909
|
+
/**
|
|
3910
|
+
* RFQ rejection reason
|
|
3911
|
+
*
|
|
3912
|
+
* @generated from enum silvana.settlement.v1.RfqRejectionReason
|
|
3913
|
+
*/
|
|
3914
|
+
export enum RfqRejectionReason {
|
|
3915
|
+
/**
|
|
3916
|
+
* @generated from enum value: RFQ_REJECTION_REASON_UNSPECIFIED = 0;
|
|
3917
|
+
*/
|
|
3918
|
+
UNSPECIFIED = 0,
|
|
3919
|
+
|
|
3920
|
+
/**
|
|
3921
|
+
* @generated from enum value: RFQ_REJECTION_REASON_MARKET_NOT_SUPPORTED = 1;
|
|
3922
|
+
*/
|
|
3923
|
+
MARKET_NOT_SUPPORTED = 1,
|
|
3924
|
+
|
|
3925
|
+
/**
|
|
3926
|
+
* @generated from enum value: RFQ_REJECTION_REASON_AMOUNT_TOO_LARGE = 2;
|
|
3927
|
+
*/
|
|
3928
|
+
AMOUNT_TOO_LARGE = 2,
|
|
3929
|
+
|
|
3930
|
+
/**
|
|
3931
|
+
* @generated from enum value: RFQ_REJECTION_REASON_AMOUNT_TOO_SMALL = 3;
|
|
3932
|
+
*/
|
|
3933
|
+
AMOUNT_TOO_SMALL = 3,
|
|
3934
|
+
|
|
3935
|
+
/**
|
|
3936
|
+
* @generated from enum value: RFQ_REJECTION_REASON_INSUFFICIENT_INVENTORY = 4;
|
|
3937
|
+
*/
|
|
3938
|
+
INSUFFICIENT_INVENTORY = 4,
|
|
3939
|
+
|
|
3940
|
+
/**
|
|
3941
|
+
* @generated from enum value: RFQ_REJECTION_REASON_MARKET_CONDITIONS = 5;
|
|
3942
|
+
*/
|
|
3943
|
+
MARKET_CONDITIONS = 5,
|
|
3944
|
+
|
|
3945
|
+
/**
|
|
3946
|
+
* @generated from enum value: RFQ_REJECTION_REASON_TEMPORARILY_UNAVAILABLE = 6;
|
|
3947
|
+
*/
|
|
3948
|
+
TEMPORARILY_UNAVAILABLE = 6,
|
|
3949
|
+
}
|
|
3950
|
+
|
|
3951
|
+
/**
|
|
3952
|
+
* Describes the enum silvana.settlement.v1.RfqRejectionReason.
|
|
3953
|
+
*/
|
|
3954
|
+
export const RfqRejectionReasonSchema: GenEnum<RfqRejectionReason> = /*@__PURE__*/
|
|
3955
|
+
enumDesc(file_proto_silvana_settlement_v1_settlement, 10);
|
|
3956
|
+
|
|
3601
3957
|
/**
|
|
3602
3958
|
* Result of a settlement event
|
|
3603
3959
|
*
|
|
@@ -3634,7 +3990,7 @@ export enum SettlementEventResult {
|
|
|
3634
3990
|
* Describes the enum silvana.settlement.v1.SettlementEventResult.
|
|
3635
3991
|
*/
|
|
3636
3992
|
export const SettlementEventResultSchema: GenEnum<SettlementEventResult> = /*@__PURE__*/
|
|
3637
|
-
enumDesc(file_proto_silvana_settlement_v1_settlement,
|
|
3993
|
+
enumDesc(file_proto_silvana_settlement_v1_settlement, 11);
|
|
3638
3994
|
|
|
3639
3995
|
/**
|
|
3640
3996
|
* Status of a single step in the DVP flow
|
|
@@ -3715,7 +4071,7 @@ export enum DvpStepStatusEnum {
|
|
|
3715
4071
|
* Describes the enum silvana.settlement.v1.DvpStepStatusEnum.
|
|
3716
4072
|
*/
|
|
3717
4073
|
export const DvpStepStatusEnumSchema: GenEnum<DvpStepStatusEnum> = /*@__PURE__*/
|
|
3718
|
-
enumDesc(file_proto_silvana_settlement_v1_settlement,
|
|
4074
|
+
enumDesc(file_proto_silvana_settlement_v1_settlement, 12);
|
|
3719
4075
|
|
|
3720
4076
|
/**
|
|
3721
4077
|
* @generated from service silvana.settlement.v1.SettlementService
|