@n1xyz/nord-ts 0.1.4 → 0.1.5

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.
@@ -15,7 +15,44 @@ import type { Message } from "@bufbuild/protobuf";
15
15
  * Describes the file nord.proto.
16
16
  */
17
17
  export const file_nord: GenFile = /*@__PURE__*/
18
- fileDesc("Cgpub3JkLnByb3RvEgRub3JkItABCgZNYXJrZXQSEQoJbWFya2V0X2lkGAEgASgNEhYKDnByaWNlX2RlY2ltYWxzGAIgASgNEhUKDXNpemVfZGVjaW1hbHMYAyABKA0SFQoNYmFzZV90b2tlbl9pZBgEIAEoDRIlCgttYXJrZXRfdHlwZRgFIAEoDjIQLm5vcmQuTWFya2V0VHlwZRIPCgdpbWZfYnBzGAYgASgNEg8KB2NtZl9icHMYByABKA0SDwoHbW1mX2JwcxgIIAEoDRITCgt2aWV3X3N5bWJvbBgKIAEoCSJaCgVUb2tlbhIQCgh0b2tlbl9pZBgBIAEoDRIWCg50b2tlbl9kZWNpbWFscxgCIAEoDRISCgp3ZWlnaHRfYnBzGAQgASgNEhMKC3ZpZXdfc3ltYm9sGAUgASgJIigKCVF1b3RlU2l6ZRIMCgRzaXplGAEgASgEEg0KBXByaWNlGAIgASgEIk4KCk9yZGVyTGltaXQSDQoFcHJpY2UYBiABKAQSDAoEc2l6ZRgHIAEoBBIjCgpxdW90ZV9zaXplGAggASgLMg8ubm9yZC5RdW90ZVNpemUiYAoJT3JkZXJUeXBlEhgKBHNpZGUYAyABKA4yCi5ub3JkLlNpZGUSIQoJZmlsbF9tb2RlGAQgASgOMg4ubm9yZC5GaWxsTW9kZRIWCg5pc19yZWR1Y2Vfb25seRgFIAEoCCKZAQoMVHJhZGVPclBsYWNlEhEKCW1hcmtldF9pZBgCIAEoDRIjCgpvcmRlcl90eXBlGAMgASgLMg8ubm9yZC5PcmRlclR5cGUSHwoFbGltaXQYBiABKAsyEC5ub3JkLk9yZGVyTGltaXQSHAoPY2xpZW50X29yZGVyX2lkGCEgASgESACIAQFCEgoQX2NsaWVudF9vcmRlcl9pZCIfCgtDYW5jZWxPcmRlchIQCghvcmRlcl9pZBgCIAEoBCJHCgpUcmlnZ2VyS2V5Eh8KBGtpbmQYAyABKA4yES5ub3JkLlRyaWdnZXJLaW5kEhgKBHNpZGUYBCABKA4yCi5ub3JkLlNpZGUizRsKBkFjdGlvbhIZChFjdXJyZW50X3RpbWVzdGFtcBgBIAEoAxINCgVub25jZRgCIAEoDRI0Cg5jcmVhdGVfc2Vzc2lvbhgEIAEoCzIaLm5vcmQuQWN0aW9uLkNyZWF0ZVNlc3Npb25IABIwCgxjcmVhdGVfdG9rZW4YBSABKAsyGC5ub3JkLkFjdGlvbi5DcmVhdGVUb2tlbkgAEjIKDWNyZWF0ZV9tYXJrZXQYBiABKAsyGS5ub3JkLkFjdGlvbi5DcmVhdGVNYXJrZXRIABIuCgtwbGFjZV9vcmRlchgHIAEoCzIXLm5vcmQuQWN0aW9uLlBsYWNlT3JkZXJIABI6ChJjYW5jZWxfb3JkZXJfYnlfaWQYCCABKAsyHC5ub3JkLkFjdGlvbi5DYW5jZWxPcmRlckJ5SWRIABInCgdkZXBvc2l0GAkgASgLMhQubm9yZC5BY3Rpb24uRGVwb3NpdEgAEikKCHdpdGhkcmF3GAogASgLMhUubm9yZC5BY3Rpb24uV2l0aGRyYXdIABJMChtweXRoX3NldF93b3JtaG9sZV9ndWFyZGlhbnMYCyABKAsyJS5ub3JkLkFjdGlvbi5QeXRoU2V0V29ybWhvbGVHdWFyZGlhbnNIABI+ChRweXRoX3NldF9zeW1ib2xfZmVlZBgMIAEoCzIeLm5vcmQuQWN0aW9uLlB5dGhTZXRTeW1ib2xGZWVkSAASQgoWcHl0aF9wcmljZV9mZWVkX3VwZGF0ZRgNIAEoCzIgLm5vcmQuQWN0aW9uLlB5dGhQcmljZUZlZWRVcGRhdGVIABIrCglsaXF1aWRhdGUYDiABKAsyFi5ub3JkLkFjdGlvbi5MaXF1aWRhdGVIABI0Cg5yZXZva2Vfc2Vzc2lvbhgPIAEoCzIaLm5vcmQuQWN0aW9uLlJldm9rZVNlc3Npb25IABIjCgVwYXVzZRgQIAEoCzISLm5vcmQuQWN0aW9uLlBhdXNlSAASJwoHdW5wYXVzZRgRIAEoCzIULm5vcmQuQWN0aW9uLlVucGF1c2VIABIpCgh0cmFuc2ZlchgSIAEoCzIVLm5vcmQuQWN0aW9uLlRyYW5zZmVySAASLgoLYWRkX3RyaWdnZXIYICABKAsyFy5ub3JkLkFjdGlvbi5BZGRUcmlnZ2VySAASNAoOcmVtb3ZlX3RyaWdnZXIYISABKAsyGi5ub3JkLkFjdGlvbi5SZW1vdmVUcmlnZ2VySAASMgoNdGFrZV9wb3NpdGlvbhgiIAEoCzIZLm5vcmQuQWN0aW9uLlRha2VQb3NpdGlvbkgAEh4KBmF0b21pYxgjIAEoCzIMLm5vcmQuQXRvbWljSAASMgoNZnJlZXplX21hcmtldBgkIAEoCzIZLm5vcmQuQWN0aW9uLkZyZWV6ZU1hcmtldEgAEjYKD3VuZnJlZXplX21hcmtldBglIAEoCzIbLm5vcmQuQWN0aW9uLlVuZnJlZXplTWFya2V0SAAaUwoNQ3JlYXRlU2Vzc2lvbhITCgt1c2VyX3B1YmtleRgBIAEoDBITCgtibHN0X3B1YmtleRgCIAEoDBIYChBleHBpcnlfdGltZXN0YW1wGAMgASgDGncKC0NyZWF0ZVRva2VuEhYKDnRva2VuX2RlY2ltYWxzGAEgASgNEhIKCndlaWdodF9icHMYAyABKA0SEwoLdmlld19zeW1ib2wYBCABKAkSFQoNb3JhY2xlX3N5bWJvbBgFIAEoCRIQCghzb2xfYWRkchgGIAEoDBraAQoMQ3JlYXRlTWFya2V0EhUKDXNpemVfZGVjaW1hbHMYASABKA0SFgoOcHJpY2VfZGVjaW1hbHMYAiABKA0SDwoHaW1mX2JwcxgDIAEoDRIPCgdjbWZfYnBzGAQgASgNEg8KB21tZl9icHMYBSABKA0SJQoLbWFya2V0X3R5cGUYBiABKA4yEC5ub3JkLk1hcmtldFR5cGUSEwoLdmlld19zeW1ib2wYByABKAkSFQoNb3JhY2xlX3N5bWJvbBgIIAEoCRIVCg1iYXNlX3Rva2VuX2lkGAkgASgNGqYDCgpQbGFjZU9yZGVyEhIKCnNlc3Npb25faWQYASABKAQSEQoJbWFya2V0X2lkGAIgASgNEhgKBHNpZGUYAyABKA4yCi5ub3JkLlNpZGUSIQoJZmlsbF9tb2RlGAQgASgOMg4ubm9yZC5GaWxsTW9kZRIWCg5pc19yZWR1Y2Vfb25seRgFIAEoCBINCgVwcmljZRgGIAEoBBIMCgRzaXplGAcgASgEEiMKCnF1b3RlX3NpemUYCCABKAsyDy5ub3JkLlF1b3RlU2l6ZRIhChRkZWxlZ2F0b3JfYWNjb3VudF9pZBggIAEoDUgAiAEBEhwKD2NsaWVudF9vcmRlcl9pZBghIAEoBEgBiAEBEh4KEXNlbmRlcl9hY2NvdW50X2lkGCIgASgNSAKIAQESHwoSc2VuZGVyX3RyYWNraW5nX2lkGCMgASgESAOIAQFCFwoVX2RlbGVnYXRvcl9hY2NvdW50X2lkQhIKEF9jbGllbnRfb3JkZXJfaWRCFAoSX3NlbmRlcl9hY2NvdW50X2lkQhUKE19zZW5kZXJfdHJhY2tpbmdfaWQaqQEKD0NhbmNlbE9yZGVyQnlJZBISCgpzZXNzaW9uX2lkGAEgASgEEhAKCG9yZGVyX2lkGAIgASgEEiEKFGRlbGVnYXRvcl9hY2NvdW50X2lkGCAgASgNSACIAQESHgoRc2VuZGVyX2FjY291bnRfaWQYISABKA1IAYgBAUIXChVfZGVsZWdhdG9yX2FjY291bnRfaWRCFAoSX3NlbmRlcl9hY2NvdW50X2lkGm8KB0RlcG9zaXQSFAoMYWN0aW9uX25vbmNlGAEgASgEEhIKCnRva2VuX2FkZHIYAiABKAwSDgoGYW1vdW50GAMgASgEEhMKC3VzZXJfcHVia2V5GAQgASgMEhUKDXNlbmRlcl9wdWJrZXkYBSABKAwaQAoIV2l0aGRyYXcSEAoIdG9rZW5faWQYASABKA0SEgoKc2Vzc2lvbl9pZBgCIAEoBBIOCgZhbW91bnQYAyABKAQaSQoYUHl0aFNldFdvcm1ob2xlR3VhcmRpYW5zEhoKEmd1YXJkaWFuX3NldF9pbmRleBgBIAEoDRIRCglhZGRyZXNzZXMYAiADKAwaQQoRUHl0aFNldFN5bWJvbEZlZWQSFQoNb3JhY2xlX3N5bWJvbBgBIAEoCRIVCg1wcmljZV9mZWVkX2lkGAIgASgMGi8KE1B5dGhQcmljZUZlZWRVcGRhdGUSGAoQcmF3X3B5dGhuZXRfZGF0YRgBIAEoDBqHAQoJTGlxdWlkYXRlEh0KFWxpcXVpZGF0b3Jfc2Vzc2lvbl9pZBgBIAEoBBIdChVsaXF1aWRhdGVlX2FjY291bnRfaWQYAiABKA0SIgoVbGlxdWlkYXRvcl9hY2NvdW50X2lkGAMgASgNSACIAQFCGAoWX2xpcXVpZGF0b3JfYWNjb3VudF9pZBojCg1SZXZva2VTZXNzaW9uEhIKCnNlc3Npb25faWQYASABKAQaBwoFUGF1c2UaCQoHVW5wYXVzZRrPAQoIVHJhbnNmZXISEgoKc2Vzc2lvbl9pZBgBIAEoBBIXCg9mcm9tX2FjY291bnRfaWQYAiABKA0SEAoIdG9rZW5faWQYAyABKA0SDgoGYW1vdW50GAQgASgEEhoKDXRvX2FjY291bnRfaWQYCCABKA1IAIgBARIyCg9zcGVjaWFsX2FjY291bnQYCSABKA4yFC5ub3JkLlNwZWNpYWxBY2NvdW50SAGIAQFCEAoOX3RvX2FjY291bnRfaWRCEgoQX3NwZWNpYWxfYWNjb3VudBpQCg1UcmlnZ2VyUHJpY2VzEhUKDXRyaWdnZXJfcHJpY2UYBSABKAQSGAoLbGltaXRfcHJpY2UYBiABKARIAIgBAUIOCgxfbGltaXRfcHJpY2UapgEKCkFkZFRyaWdnZXISEgoKc2Vzc2lvbl9pZBgBIAEoBBIRCgltYXJrZXRfaWQYAiABKA0SHQoDa2V5GAMgASgLMhAubm9yZC5UcmlnZ2VyS2V5EioKBnByaWNlcxgEIAEoCzIaLm5vcmQuQWN0aW9uLlRyaWdnZXJQcmljZXMSFwoKYWNjb3VudF9pZBgKIAEoDUgAiAEBQg0KC19hY2NvdW50X2lkGn0KDVJlbW92ZVRyaWdnZXISEgoKc2Vzc2lvbl9pZBgBIAEoBBIRCgltYXJrZXRfaWQYAiABKA0SHQoDa2V5GAMgASgLMhAubm9yZC5UcmlnZ2VyS2V5EhcKCmFjY291bnRfaWQYCiABKA1IAIgBAUINCgtfYWNjb3VudF9pZBohCgxGcmVlemVNYXJrZXQSEQoJbWFya2V0X2lkGAIgASgNGiMKDlVuZnJlZXplTWFya2V0EhEKCW1hcmtldF9pZBgCIAEoDRqXAQoMVGFrZVBvc2l0aW9uEhIKCnNlc3Npb25faWQYASABKAQSEQoJbWFya2V0X2lkGAIgASgNEgwKBHNpemUYAyABKAMSHgoRc2VuZGVyX2FjY291bnRfaWQYBCABKA1IAIgBARISCgVwcmljZRgFIAEoBEgBiAEBQhQKEl9zZW5kZXJfYWNjb3VudF9pZEIICgZfcHJpY2VCBgoEa2luZCJ3ChNBdG9taWNTdWJhY3Rpb25LaW5kEiwKDnRyYWRlX29yX3BsYWNlGAYgASgLMhIubm9yZC5UcmFkZU9yUGxhY2VIABIpCgxjYW5jZWxfb3JkZXIYByABKAsyES5ub3JkLkNhbmNlbE9yZGVySABCBwoFaW5uZXIicAoGQXRvbWljEhIKCnNlc3Npb25faWQYASABKAQSFwoKYWNjb3VudF9pZBgCIAEoDUgAiAEBEioKB2FjdGlvbnMYBiADKAsyGS5ub3JkLkF0b21pY1N1YmFjdGlvbktpbmRCDQoLX2FjY291bnRfaWQivxsKB1JlY2VpcHQSEQoJYWN0aW9uX2lkGAEgASgEEhoKA2VychggIAEoDjILLm5vcmQuRXJyb3JIABJCChVjcmVhdGVfc2Vzc2lvbl9yZXN1bHQYISABKAsyIS5ub3JkLlJlY2VpcHQuQ3JlYXRlU2Vzc2lvblJlc3VsdEgAEjwKEnBsYWNlX29yZGVyX3Jlc3VsdBgiIAEoCzIeLm5vcmQuUmVjZWlwdC5QbGFjZU9yZGVyUmVzdWx0SAASPgoTY2FuY2VsX29yZGVyX3Jlc3VsdBgjIAEoCzIfLm5vcmQuUmVjZWlwdC5DYW5jZWxPcmRlclJlc3VsdEgAEjUKDmRlcG9zaXRfcmVzdWx0GCQgASgLMhsubm9yZC5SZWNlaXB0LkRlcG9zaXRSZXN1bHRIABI+ChNpbnNlcnRfdG9rZW5fcmVzdWx0GCUgASgLMh8ubm9yZC5SZWNlaXB0Lkluc2VydFRva2VuUmVzdWx0SAASQAoUaW5zZXJ0X21hcmtldF9yZXN1bHQYJiABKAsyIC5ub3JkLlJlY2VpcHQuSW5zZXJ0TWFya2V0UmVzdWx0SAASNwoPd2l0aGRyYXdfcmVzdWx0GCcgASgLMhwubm9yZC5SZWNlaXB0LldpdGhkcmF3UmVzdWx0SAASSQoZb3JhY2xlX3N5bWJvbF9mZWVkX3Jlc3VsdBgoIAEoCzIkLm5vcmQuUmVjZWlwdC5PcmFjbGVTeW1ib2xGZWVkUmVzdWx0SAASQAoUb3JhY2xlX3VwZGF0ZV9yZXN1bHQYKSABKAsyIC5ub3JkLlJlY2VpcHQuT3JhY2xlVXBkYXRlUmVzdWx0SAASSwoadXBkYXRlX2d1YXJkaWFuX3NldF9yZXN1bHQYKiABKAsyJS5ub3JkLlJlY2VpcHQuVXBkYXRlR3VhcmRpYW5TZXRSZXN1bHRIABI1CgpsaXF1aWRhdGVkGCsgASgLMh8ubm9yZC5SZWNlaXB0LkFjY291bnRMaXF1aWRhdGVkSAASNwoPc2Vzc2lvbl9yZXZva2VkGCwgASgLMhwubm9yZC5SZWNlaXB0LlNlc3Npb25SZXZva2VkSAASJgoGcGF1c2VkGC0gASgLMhQubm9yZC5SZWNlaXB0LlBhdXNlZEgAEioKCHVucGF1c2VkGC4gASgLMhYubm9yZC5SZWNlaXB0LlVucGF1c2VkSAASMAoLdHJhbnNmZXJyZWQYLyABKAsyGS5ub3JkLlJlY2VpcHQuVHJhbnNmZXJyZWRIABIzCg10cmlnZ2VyX2FkZGVkGEAgASgLMhoubm9yZC5SZWNlaXB0LlRyaWdnZXJBZGRlZEgAEjcKD3RyaWdnZXJfcmVtb3ZlZBhBIAEoCzIcLm5vcmQuUmVjZWlwdC5UcmlnZ2VyUmVtb3ZlZEgAEk0KGHBvc2l0aW9uX3Rha2VuX29yX3RyYWRlZBhCIAEoCzIpLm5vcmQuUmVjZWlwdC5Qb3NpdGlvblRha2VuT3JUcmFkZWRSZXN1bHRIABIsCgZhdG9taWMYQyABKAsyGi5ub3JkLlJlY2VpcHQuQXRvbWljUmVzdWx0SAASQgoVbWFya2V0X2ZyZWV6ZV91cGRhdGVkGEQgASgLMiEubm9yZC5SZWNlaXB0Lk1hcmtldEZyZWV6ZVVwZGF0ZWRIABp4CgZQb3N0ZWQSGAoEc2lkZRgBIAEoDjIKLm5vcmQuU2lkZRIRCgltYXJrZXRfaWQYAiABKA0SDQoFcHJpY2UYAyABKAQSDAoEc2l6ZRgEIAEoBBIQCghvcmRlcl9pZBgFIAEoBBISCgphY2NvdW50X2lkGAYgASgNGkoKBVRyYWRlEhAKCG9yZGVyX2lkGAIgASgEEg0KBXByaWNlGAQgASgEEgwKBHNpemUYBSABKAQSEgoKYWNjb3VudF9pZBgGIAEoDRopChNDcmVhdGVTZXNzaW9uUmVzdWx0EhIKCnNlc3Npb25faWQYASABKAQaQwoJVHJpZ2dlcmVkEh8KBGtpbmQYAyABKA4yES5ub3JkLlRyaWdnZXJLaW5kEhUKDXRyaWdnZXJfcHJpY2UYBCABKAQalQIKEFBsYWNlT3JkZXJSZXN1bHQSKQoGcG9zdGVkGAEgASgLMhQubm9yZC5SZWNlaXB0LlBvc3RlZEgAiAEBEiIKBWZpbGxzGAIgAygLMhMubm9yZC5SZWNlaXB0LlRyYWRlEhwKD2NsaWVudF9vcmRlcl9pZBgDIAEoBEgBiAEBEh8KEnNlbmRlcl90cmFja2luZ19pZBgEIAEoBEgCiAEBEi8KCXRyaWdnZXJlZBgFIAEoCzIXLm5vcmQuUmVjZWlwdC5UcmlnZ2VyZWRIA4gBAUIJCgdfcG9zdGVkQhIKEF9jbGllbnRfb3JkZXJfaWRCFQoTX3NlbmRlcl90cmFja2luZ19pZEIMCgpfdHJpZ2dlcmVkGkIKC1Rha2VuUmVzdWx0EgsKA3BubBgBIAEoAxIMCgRzaXplGAIgASgDEhgKEHRha2VyX2FjY291bnRfaWQYAyABKA0aqwEKG1Bvc2l0aW9uVGFrZW5PclRyYWRlZFJlc3VsdBIRCgltYXJrZXRfaWQYASABKA0SKgoFdGFrZW4YAiABKAsyGS5ub3JkLlJlY2VpcHQuVGFrZW5SZXN1bHRIABIwCgZ0cmFkZWQYAyABKAsyHi5ub3JkLlJlY2VpcHQuUGxhY2VPcmRlclJlc3VsdEgAQhsKGVBvc2l0aW9uVGFrZW5PclRyYWRlZEtpbmQaOQoRQ2FuY2VsT3JkZXJSZXN1bHQSEAoIb3JkZXJfaWQYASABKAQSEgoKYWNjb3VudF9pZBgCIAEoDRpwCg1EZXBvc2l0UmVzdWx0EhAKCHRva2VuX2lkGAEgASgNEg4KBmFtb3VudBgCIAEoBBISCgphY2NvdW50X2lkGAMgASgNEhQKDHVzZXJfY3JlYXRlZBgEIAEoCBITCgt1c2VyX3B1YmtleRgFIAEoDBpDChFJbnNlcnRUb2tlblJlc3VsdBISCgpjaGFpbl9hZGRyGAEgASgMEhoKBXRva2VuGAIgASgLMgsubm9yZC5Ub2tlbhoyChJJbnNlcnRNYXJrZXRSZXN1bHQSHAoGbWFya2V0GAEgASgLMgwubm9yZC5NYXJrZXQaeQoOV2l0aGRyYXdSZXN1bHQSEAoIdG9rZW5faWQYASABKA0SDgoGYW1vdW50GAIgASgEEg8KB2JhbGFuY2UYAyABKAQSEgoKYWNjb3VudF9pZBgEIAEoDRILCgNmZWUYBSABKAQSEwoLdXNlcl9wdWJrZXkYBiABKAwaQAoWT3JhY2xlU3ltYm9sRmVlZFJlc3VsdBIVCg1vcmFjbGVfc3ltYm9sGAEgASgJEg8KB2ZlZWRfaWQYAiABKAwaJwoST3JhY2xlVXBkYXRlUmVzdWx0EhEKCXRpbWVzdGFtcBgBIAEoAxpIChdVcGRhdGVHdWFyZGlhblNldFJlc3VsdBIaChJndWFyZGlhbl9zZXRfaW5kZXgYASABKA0SEQoJYWRkcmVzc2VzGAIgAygMGkMKDFBlcnBQb3NpdGlvbhIRCgltYXJrZXRfaWQYASABKA0SEQoJYmFzZV9zaXplGAIgASgDEg0KBXByaWNlGAMgASgEGp4BChFBY2NvdW50TGlxdWlkYXRlZBIdChVsaXF1aWRhdG9yX2FjY291bnRfaWQYASABKA0SHQoVbGlxdWlkYXRlZV9hY2NvdW50X2lkGAIgASgNEhgKEGNhbmNlbGxlZF9vcmRlcnMYAyADKAQSMQoNcmVtb3ZlZF9wZXJwcxgEIAMoCzIaLm5vcmQuUmVjZWlwdC5QZXJwUG9zaXRpb24aEAoOU2Vzc2lvblJldm9rZWQaCAoGUGF1c2VkGgoKCFVucGF1c2VkGuEBCgtUcmFuc2ZlcnJlZBIXCg9mcm9tX2FjY291bnRfaWQYASABKA0SHAoPdG9fdXNlcl9hY2NvdW50GAIgASgNSACIAQESEAoIdG9rZW5faWQYAyABKA0SDgoGYW1vdW50GAQgASgEEhcKD2FjY291bnRfY3JlYXRlZBgFIAEoCBI1ChJ0b19zcGVjaWFsX2FjY291bnQYBiABKA4yFC5ub3JkLlNwZWNpYWxBY2NvdW50SAGIAQFCEgoQX3RvX3VzZXJfYWNjb3VudEIVChNfdG9fc3BlY2lhbF9hY2NvdW50Gg4KDFRyaWdnZXJBZGRlZBoQCg5UcmlnZ2VyUmVtb3ZlZBo4ChNNYXJrZXRGcmVlemVVcGRhdGVkEhEKCW1hcmtldF9pZBgBIAEoDRIOCgZmcm96ZW4YAiABKAgamwEKGUF0b21pY1N1YmFjdGlvblJlc3VsdEtpbmQSPAoScGxhY2Vfb3JkZXJfcmVzdWx0GAEgASgLMh4ubm9yZC5SZWNlaXB0LlBsYWNlT3JkZXJSZXN1bHRIABI3CgxjYW5jZWxfb3JkZXIYAiABKAsyHy5ub3JkLlJlY2VpcHQuQ2FuY2VsT3JkZXJSZXN1bHRIAEIHCgVpbm5lchpICgxBdG9taWNSZXN1bHQSOAoHcmVzdWx0cxgBIAMoCzInLm5vcmQuUmVjZWlwdC5BdG9taWNTdWJhY3Rpb25SZXN1bHRLaW5kQgYKBGtpbmQqGAoEU2lkZRIHCgNBU0sQABIHCgNCSUQQASotCgtUcmlnZ2VyS2luZBINCglTVE9QX0xPU1MQABIPCgtUQUtFX1BST0ZJVBABKk8KCEZpbGxNb2RlEgkKBUxJTUlUEAASDQoJUE9TVF9PTkxZEAESFwoTSU1NRURJQVRFX09SX0NBTkNFTBACEhAKDEZJTExfT1JfS0lMTBADKiYKCk1hcmtldFR5cGUSCAoEU1BPVBAAEg4KClBFUlBFVFVBTFMQASrdGQoFRXJyb3ISDQoJRFVQTElDQVRFEAASEgoOREVDT0RFX0ZBSUxVUkUQAhIVChFJTlZBTElEX1NJR05BVFVSRRADEhQKEE1BUktFVF9OT1RfRk9VTkQQBBITCg9UT0tFTl9OT1RfRk9VTkQQBRISCg5VU0VSX05PVF9GT1VORBAGEhUKEVNFU1NJT05fTk9UX0ZPVU5EEAcSEwoPT1JERVJfTk9UX0ZPVU5EEAgSEwoPT1JERVJfU0laRV9aRVJPEAkSDgoKQVJJVEhNRVRJQxALEhcKE0FSSVRITUVUSUNfT1ZFUkZMT1cQDBIYChRBUklUSE1FVElDX1VOREVSRkxPVxANEh8KG0FSSVRITUVUSUNfRElWSVNJT05fQllfWkVSTxAOEhoKFktFWV9BTFJFQURZX1JFR0lTVEVSRUQQDxIcChhFWFBJUllfVElNRVNUQU1QX0lOX1BBU1QQEBIcChhVUERBVEVfVElNRVNUQU1QX0lOX1BBU1QQERIYChRUT09fTUFOWV9PUEVOX09SREVSUxASEh0KGVdJVEhEUkFXX0FNT1VOVF9UT09fU01BTEwQFRIXChNJTlZBTElEX09SREVSX09XTkVSEBYSIAocREVDT0RFX0ZBSUxVUkVfTEVOR1RIX1BSRUZJWBAhEhYKEkRFQ09ERV9GQUlMVVJFX1JBVxAiEhkKFURFQ09ERV9GQUlMVVJFX0RPTUFJThAjEh8KG1VQREFURV9QVUJMSVNIX1RJTUVfSU5fUEFTVBAkEhcKE1BZVEhfRkVFRF9OT1RfQURERUQQXRIVChFQWVRIX0ZFRURfTUlTU0lORxBeEhsKF1BZVEhfRkVFRF9BTFJFQURZX0FEREVEEF8SIwofUFlUSF9HVUFSRElBTl9TRVRfVU5JTklUSUFMSVpFRBBgEh0KGVBZVEhfR1VBUkRJQU5fU0VUX0lOVkFMSUQQYRIjCh9QWVRIX0ZFRURfREVDSU1BTFNfT1VUX09GX1JBTkdFEGISIAocUFlUSF9GRUVEX1BSSUNFX09VVF9PRl9SQU5HRRBjEiMKH1BZVEhfRkVFRF9WQVJJQU5DRV9PVVRfT0ZfUkFOR0UQZBI1CjFQWVRIX0dVQVJESUFOX1NFVF9BTkRfUFlUSF9TSUdOQVRVUkVfRE9fTk9UX01BVENIEGUSHAoYSU5WQUxJRF9UT0tFTl9QQVJBTUVURVJTEGYSHAoYSU5ERVhfUFJJQ0VfT1VUX09GX1JBTkdFEGcSHwobSU5ERVhfREVDSU1BTFNfT1VUX09GX1JBTkdFEGgSGQoVSU5WQUxJRF9TVEFURV9WRVJTSU9OEGkSEwoPSU5WQUxJRF9NQVJHSU5TEGsSIQodTUFSS0VUX0RFQ0lNQUxTX0VYQ0VFRF9MSU1JVFMQbRITCg9UT09fTUFOWV9UT0tFTlMQbhIUChBGVU5ESU5HX09WRVJGTE9XEHsSNwozQ0FOX1JFRFVDRV9QT1NJVElPTl9PTkxZX0lGX0FMTF9PUkRFUlNfQVJFX0NBTkNFTEVEEHwSFwoTVU5FWFBFQ1RFRF9UT0tFTl9JRBB/EhQKD1RPS0VOX05PVF9SRUFEWRCCARIcChhUT0tFTl9BTFJFQURZX1JFR0lTVEVSRUQQcBIhChxJTU1FRElBVEVfT1JERVJfR09UX05PX0ZJTExTEIUBEhkKFEZBSUxFRF9UT19GSUxMX0xJTUlUEIYBEjAKK1BPU1RfT05MWV9NVVNUX05PVF9GSUxMX0FOWV9PUFBPU0lURV9PUkRFUlMQhwESDAoHSU5WQUxJRBCIARIQCgtNQUlOVEVOQU5DRRCJARIaChVNSU5JTVVNX1NJWkVfREVDSU1BTFMQigESMgotUEFSQU1FVEVSU19XSUxMX0NSRUFURV9OT05fT1BFUkFUSU9OQUxfTUFSS0VUEIsBEiIKHU9OTFlfSU1NRURJQVRFX09SREVSU19BTExPV0VEEIwBEhsKFlRPT19NQU5ZX1VTRVJfQUNDT1VOVFMQjQESFgoRQUNDT1VOVF9OT1RfRk9VTkQQjgESGgoVQUNDT1VOVF9JTlZBTElEX09XTkVSEI8BEhEKDERVU1RfQUNDT1VOVBCRARIMCgdCQUxBTkNFEKABEh0KGEJBTEFOQ0VfREVQT1NJVF9PVkVSRkxPVxChARIcChdCQUxBTkNFX0NIQU5HRV9PVkVSRkxPVxCiARIiCh1CQUxBTkNFX0NIQU5HRV9MSU1JVF9FWENFRURFRBCjARIZChRCQUxBTkNFX0lOU1VGRklDSUVOVBCkARIeChlVTkFVVEhFTlRJQ0FURURfTDFfQUNUSU9OEKUBEh0KGEVOQ09ERURfQUNUSU9OX1RPT19MQVJHRRCmARIMCgdUUklHR0VSEKgBEhoKFVRSSUdHRVJfSU5WQUxJRF9QUklDRRCpARIWChFUUklHR0VSX05PVF9GT1VORBCqARIOCglUSU1FU1RBTVAQsAESHwoaVElNRVNUQU1QX09VVF9PRl9USFJFU0hPTEQQsQESFAoPVElNRVNUQU1QX1NUQUxFELIBEiUKIEJBTktSVVBUQ1lfSU5TVUZGSUNJRU5UX0NPVkVSQUdFELkBEhkKFEJBTktSVVBUQ1lfTk9UX0ZPVU5EELoBEhsKFkJBTktSVVBUQ1lfTk9UX0FMTE9XRUQQuwESFQoQTUFSS0VUX05PVF9SRUFEWRDAARISCg1NQVJLRVRfRlJPWkVOEMEBEhEKDE1BUktFVF9FTVBUWRDCARINCghQT1NJVElPThDIARIXChJQT1NJVElPTl9OT1RfRk9VTkQQyQESGQoUUE9TSVRJT05fU1RBVEVfT1JERVIQygESHwoaUE9TSVRJT05fU1RBVEVfT1JERVJfUFJJQ0UQywESHgoZUE9TSVRJT05fU1RBVEVfT1JERVJfU0laRRDMARIeChlQT1NJVElPTl9TVEFURV9PUkRFUl9TSURFEM0BEhgKE1BPU0lUSU9OX1NJWkVfTElNSVQQzgESGAoTUE9TSVRJT05fU1RBVEVfUEVSUBDPARIkCh9QT1NJVElPTl9TVEFURV9PUkRFUl9ERUxFR0FUSU9OENABEgoKBVBSSUNFENEBEhsKFlNJR05BVFVSRV9WRVJJRklDQVRJT04Q2QESMAorU0lHTkFUVVJFX1ZFUklGSUNBVElPTl9NQUxGT1JNRURfUFVCTElDX0tFWRDaARIqCiVTSUdOQVRVUkVfVkVSSUZJQ0FUSU9OX0lOVkFMSURfTEVOR1RIENsBEgkKBFJJU0sQ4AESNAovUklTS19ERUxFR0FUSU9OX01GX1RPX0JFX0xFU1NfVEhBTl9PUl9FUVVBTF9NTUYQ4QESJAofUklTS19PTUZfTEVTU19USEFOX09SX0VRVUFMX0lNRhDiARIkCh9SSVNLX09NRl9MRVNTX1RIQU5fT1JfRVFVQUxfQ01GEOMBEioKJVJJU0tfVFJBREVfT01GX0xFU1NfVEhBTl9PUl9FUVVBTF9DTUYQ5QESNQowUklTS19VTkhFQUxUSFlfTUZfQU5EX1BPTl9BRlRFUl9CRVRURVJfT0ZfQkVGT1JFEOQBEhQKD09SREVSX0VYRUNVVElPThDwARIaChVPUkRFUl9FWEVDVVRJT05fRU1QVFkQ8QESIQocT1JERVJfRVhFQ1VUSU9OX0ZJTExfT1JfS0lMTBDyARIjCh5PUkRFUl9FWEVDVVRJT05fTUlTU0lOR19MSU1JVFMQ8wESIgodT1JERVJfRVhFQ1VUSU9OX01JU1NJTkdfUFJJQ0UQ9AESHwoaT1JERVJfRVhFQ1VUSU9OX1NJWkVfTElNSVQQ9QESIAobT1JERVJfRVhFQ1VUSU9OX0xJTUlUX1BSSUNFEPYBEh4KGU9SREVSX1JFRFVDRV9JU19QT1NUX09OTFkQ9wESHwoaT1JERVJfRVhFQ1VUSU9OX1NFTExfUFJJQ0UQ+AESJQogT1JERVJfU0laRV9FWENFRURTX1BPU0lUSU9OX1NJWkUQ+QESKAojQVRPTUlDU19UUkFERVNfQ0FOTk9UX0ZPTExPV19QTEFDRVMQgAISMAorQVRPTUlDU19DQU5DRUxTX0NBTk5PVF9GT0xMT1dfVFJBREVTX1BMQUNFUxCBAhImCiFBQ1RJT05fUE9TSVRJT05fU0hPVUxEX0JFX0NPVkVSRUQQkQISGQoUQUNUSU9OX0lOVkFMSURfTk9OQ0UQkgISKQokQUNUSU9OX1BST1BPU0VEX1BSSUNFX01VU1RfQkVfSElHSEVSEJMCEhQKD05PVF9JTVBMRU1FTlRFRBD0AxIMCgdEcm9wcGVkEOcHKh4KDlNwZWNpYWxBY2NvdW50EgwKCEZlZVZhdWx0EABiBnByb3RvMw");
18
+ fileDesc("Cgpub3JkLnByb3RvEgRub3JkIj0KDUZlZVRpZXJDb25maWcSFQoNbWFrZXJfZmVlX2JwcxgBIAEoDRIVCg10YWtlcl9mZWVfYnBzGAIgASgNItABCgZNYXJrZXQSEQoJbWFya2V0X2lkGAEgASgNEhYKDnByaWNlX2RlY2ltYWxzGAIgASgNEhUKDXNpemVfZGVjaW1hbHMYAyABKA0SFQoNYmFzZV90b2tlbl9pZBgEIAEoDRIlCgttYXJrZXRfdHlwZRgFIAEoDjIQLm5vcmQuTWFya2V0VHlwZRIPCgdpbWZfYnBzGAYgASgNEg8KB2NtZl9icHMYByABKA0SDwoHbW1mX2JwcxgIIAEoDRITCgt2aWV3X3N5bWJvbBgKIAEoCSJaCgVUb2tlbhIQCgh0b2tlbl9pZBgBIAEoDRIWCg50b2tlbl9kZWNpbWFscxgCIAEoDRISCgp3ZWlnaHRfYnBzGAQgASgNEhMKC3ZpZXdfc3ltYm9sGAUgASgJIigKCVF1b3RlU2l6ZRIMCgRzaXplGAEgASgEEg0KBXByaWNlGAIgASgEIk4KCk9yZGVyTGltaXQSDQoFcHJpY2UYBiABKAQSDAoEc2l6ZRgHIAEoBBIjCgpxdW90ZV9zaXplGAggASgLMg8ubm9yZC5RdW90ZVNpemUiYAoJT3JkZXJUeXBlEhgKBHNpZGUYAyABKA4yCi5ub3JkLlNpZGUSIQoJZmlsbF9tb2RlGAQgASgOMg4ubm9yZC5GaWxsTW9kZRIWCg5pc19yZWR1Y2Vfb25seRgFIAEoCCKZAQoMVHJhZGVPclBsYWNlEhEKCW1hcmtldF9pZBgCIAEoDRIjCgpvcmRlcl90eXBlGAMgASgLMg8ubm9yZC5PcmRlclR5cGUSHwoFbGltaXQYBiABKAsyEC5ub3JkLk9yZGVyTGltaXQSHAoPY2xpZW50X29yZGVyX2lkGCEgASgESACIAQFCEgoQX2NsaWVudF9vcmRlcl9pZCIfCgtDYW5jZWxPcmRlchIQCghvcmRlcl9pZBgCIAEoBCJHCgpUcmlnZ2VyS2V5Eh8KBGtpbmQYAyABKA4yES5ub3JkLlRyaWdnZXJLaW5kEhgKBHNpZGUYBCABKA4yCi5ub3JkLlNpZGUipB4KBkFjdGlvbhIZChFjdXJyZW50X3RpbWVzdGFtcBgBIAEoAxINCgVub25jZRgCIAEoDRI0Cg5jcmVhdGVfc2Vzc2lvbhgEIAEoCzIaLm5vcmQuQWN0aW9uLkNyZWF0ZVNlc3Npb25IABIwCgxjcmVhdGVfdG9rZW4YBSABKAsyGC5ub3JkLkFjdGlvbi5DcmVhdGVUb2tlbkgAEjIKDWNyZWF0ZV9tYXJrZXQYBiABKAsyGS5ub3JkLkFjdGlvbi5DcmVhdGVNYXJrZXRIABIuCgtwbGFjZV9vcmRlchgHIAEoCzIXLm5vcmQuQWN0aW9uLlBsYWNlT3JkZXJIABI6ChJjYW5jZWxfb3JkZXJfYnlfaWQYCCABKAsyHC5ub3JkLkFjdGlvbi5DYW5jZWxPcmRlckJ5SWRIABInCgdkZXBvc2l0GAkgASgLMhQubm9yZC5BY3Rpb24uRGVwb3NpdEgAEikKCHdpdGhkcmF3GAogASgLMhUubm9yZC5BY3Rpb24uV2l0aGRyYXdIABJMChtweXRoX3NldF93b3JtaG9sZV9ndWFyZGlhbnMYCyABKAsyJS5ub3JkLkFjdGlvbi5QeXRoU2V0V29ybWhvbGVHdWFyZGlhbnNIABI+ChRweXRoX3NldF9zeW1ib2xfZmVlZBgMIAEoCzIeLm5vcmQuQWN0aW9uLlB5dGhTZXRTeW1ib2xGZWVkSAASQgoWcHl0aF9wcmljZV9mZWVkX3VwZGF0ZRgNIAEoCzIgLm5vcmQuQWN0aW9uLlB5dGhQcmljZUZlZWRVcGRhdGVIABIrCglsaXF1aWRhdGUYDiABKAsyFi5ub3JkLkFjdGlvbi5MaXF1aWRhdGVIABI0Cg5yZXZva2Vfc2Vzc2lvbhgPIAEoCzIaLm5vcmQuQWN0aW9uLlJldm9rZVNlc3Npb25IABIjCgVwYXVzZRgQIAEoCzISLm5vcmQuQWN0aW9uLlBhdXNlSAASJwoHdW5wYXVzZRgRIAEoCzIULm5vcmQuQWN0aW9uLlVucGF1c2VIABIpCgh0cmFuc2ZlchgSIAEoCzIVLm5vcmQuQWN0aW9uLlRyYW5zZmVySAASLgoLYWRkX3RyaWdnZXIYICABKAsyFy5ub3JkLkFjdGlvbi5BZGRUcmlnZ2VySAASNAoOcmVtb3ZlX3RyaWdnZXIYISABKAsyGi5ub3JkLkFjdGlvbi5SZW1vdmVUcmlnZ2VySAASMgoNdGFrZV9wb3NpdGlvbhgiIAEoCzIZLm5vcmQuQWN0aW9uLlRha2VQb3NpdGlvbkgAEh4KBmF0b21pYxgjIAEoCzIMLm5vcmQuQXRvbWljSAASMgoNZnJlZXplX21hcmtldBgkIAEoCzIZLm5vcmQuQWN0aW9uLkZyZWV6ZU1hcmtldEgAEjYKD3VuZnJlZXplX21hcmtldBglIAEoCzIbLm5vcmQuQWN0aW9uLlVuZnJlZXplTWFya2V0SAASLwoMYWRkX2ZlZV90aWVyGCYgASgLMhcubm9yZC5BY3Rpb24uQWRkRmVlVGllckgAEjUKD3VwZGF0ZV9mZWVfdGllchgnIAEoCzIaLm5vcmQuQWN0aW9uLlVwZGF0ZUZlZVRpZXJIABI/ChR1cGRhdGVfYWNjb3VudHNfdGllchgoIAEoCzIfLm5vcmQuQWN0aW9uLlVwZGF0ZUFjY291bnRzVGllckgAGlMKDUNyZWF0ZVNlc3Npb24SEwoLdXNlcl9wdWJrZXkYASABKAwSEwoLYmxzdF9wdWJrZXkYAiABKAwSGAoQZXhwaXJ5X3RpbWVzdGFtcBgDIAEoAxp3CgtDcmVhdGVUb2tlbhIWCg50b2tlbl9kZWNpbWFscxgBIAEoDRISCgp3ZWlnaHRfYnBzGAMgASgNEhMKC3ZpZXdfc3ltYm9sGAQgASgJEhUKDW9yYWNsZV9zeW1ib2wYBSABKAkSEAoIc29sX2FkZHIYBiABKAwa2gEKDENyZWF0ZU1hcmtldBIVCg1zaXplX2RlY2ltYWxzGAEgASgNEhYKDnByaWNlX2RlY2ltYWxzGAIgASgNEg8KB2ltZl9icHMYAyABKA0SDwoHY21mX2JwcxgEIAEoDRIPCgdtbWZfYnBzGAUgASgNEiUKC21hcmtldF90eXBlGAYgASgOMhAubm9yZC5NYXJrZXRUeXBlEhMKC3ZpZXdfc3ltYm9sGAcgASgJEhUKDW9yYWNsZV9zeW1ib2wYCCABKAkSFQoNYmFzZV90b2tlbl9pZBgJIAEoDRqmAwoKUGxhY2VPcmRlchISCgpzZXNzaW9uX2lkGAEgASgEEhEKCW1hcmtldF9pZBgCIAEoDRIYCgRzaWRlGAMgASgOMgoubm9yZC5TaWRlEiEKCWZpbGxfbW9kZRgEIAEoDjIOLm5vcmQuRmlsbE1vZGUSFgoOaXNfcmVkdWNlX29ubHkYBSABKAgSDQoFcHJpY2UYBiABKAQSDAoEc2l6ZRgHIAEoBBIjCgpxdW90ZV9zaXplGAggASgLMg8ubm9yZC5RdW90ZVNpemUSIQoUZGVsZWdhdG9yX2FjY291bnRfaWQYICABKA1IAIgBARIcCg9jbGllbnRfb3JkZXJfaWQYISABKARIAYgBARIeChFzZW5kZXJfYWNjb3VudF9pZBgiIAEoDUgCiAEBEh8KEnNlbmRlcl90cmFja2luZ19pZBgjIAEoBEgDiAEBQhcKFV9kZWxlZ2F0b3JfYWNjb3VudF9pZEISChBfY2xpZW50X29yZGVyX2lkQhQKEl9zZW5kZXJfYWNjb3VudF9pZEIVChNfc2VuZGVyX3RyYWNraW5nX2lkGqkBCg9DYW5jZWxPcmRlckJ5SWQSEgoKc2Vzc2lvbl9pZBgBIAEoBBIQCghvcmRlcl9pZBgCIAEoBBIhChRkZWxlZ2F0b3JfYWNjb3VudF9pZBggIAEoDUgAiAEBEh4KEXNlbmRlcl9hY2NvdW50X2lkGCEgASgNSAGIAQFCFwoVX2RlbGVnYXRvcl9hY2NvdW50X2lkQhQKEl9zZW5kZXJfYWNjb3VudF9pZBpvCgdEZXBvc2l0EhQKDGFjdGlvbl9ub25jZRgBIAEoBBISCgp0b2tlbl9hZGRyGAIgASgMEg4KBmFtb3VudBgDIAEoBBITCgt1c2VyX3B1YmtleRgEIAEoDBIVCg1zZW5kZXJfcHVia2V5GAUgASgMGkAKCFdpdGhkcmF3EhAKCHRva2VuX2lkGAEgASgNEhIKCnNlc3Npb25faWQYAiABKAQSDgoGYW1vdW50GAMgASgEGkkKGFB5dGhTZXRXb3JtaG9sZUd1YXJkaWFucxIaChJndWFyZGlhbl9zZXRfaW5kZXgYASABKA0SEQoJYWRkcmVzc2VzGAIgAygMGkEKEVB5dGhTZXRTeW1ib2xGZWVkEhUKDW9yYWNsZV9zeW1ib2wYASABKAkSFQoNcHJpY2VfZmVlZF9pZBgCIAEoDBovChNQeXRoUHJpY2VGZWVkVXBkYXRlEhgKEHJhd19weXRobmV0X2RhdGEYASABKAwahwEKCUxpcXVpZGF0ZRIdChVsaXF1aWRhdG9yX3Nlc3Npb25faWQYASABKAQSHQoVbGlxdWlkYXRlZV9hY2NvdW50X2lkGAIgASgNEiIKFWxpcXVpZGF0b3JfYWNjb3VudF9pZBgDIAEoDUgAiAEBQhgKFl9saXF1aWRhdG9yX2FjY291bnRfaWQaIwoNUmV2b2tlU2Vzc2lvbhISCgpzZXNzaW9uX2lkGAEgASgEGgcKBVBhdXNlGgkKB1VucGF1c2UazwEKCFRyYW5zZmVyEhIKCnNlc3Npb25faWQYASABKAQSFwoPZnJvbV9hY2NvdW50X2lkGAIgASgNEhAKCHRva2VuX2lkGAMgASgNEg4KBmFtb3VudBgEIAEoBBIaCg10b19hY2NvdW50X2lkGAggASgNSACIAQESMgoPc3BlY2lhbF9hY2NvdW50GAkgASgOMhQubm9yZC5TcGVjaWFsQWNjb3VudEgBiAEBQhAKDl90b19hY2NvdW50X2lkQhIKEF9zcGVjaWFsX2FjY291bnQaUAoNVHJpZ2dlclByaWNlcxIVCg10cmlnZ2VyX3ByaWNlGAUgASgEEhgKC2xpbWl0X3ByaWNlGAYgASgESACIAQFCDgoMX2xpbWl0X3ByaWNlGqYBCgpBZGRUcmlnZ2VyEhIKCnNlc3Npb25faWQYASABKAQSEQoJbWFya2V0X2lkGAIgASgNEh0KA2tleRgDIAEoCzIQLm5vcmQuVHJpZ2dlcktleRIqCgZwcmljZXMYBCABKAsyGi5ub3JkLkFjdGlvbi5UcmlnZ2VyUHJpY2VzEhcKCmFjY291bnRfaWQYCiABKA1IAIgBAUINCgtfYWNjb3VudF9pZBp9Cg1SZW1vdmVUcmlnZ2VyEhIKCnNlc3Npb25faWQYASABKAQSEQoJbWFya2V0X2lkGAIgASgNEh0KA2tleRgDIAEoCzIQLm5vcmQuVHJpZ2dlcktleRIXCgphY2NvdW50X2lkGAogASgNSACIAQFCDQoLX2FjY291bnRfaWQaMQoKQWRkRmVlVGllchIjCgZjb25maWcYASABKAsyEy5ub3JkLkZlZVRpZXJDb25maWcaQAoNVXBkYXRlRmVlVGllchIKCgJpZBgBIAEoDRIjCgZjb25maWcYAiABKAsyEy5ub3JkLkZlZVRpZXJDb25maWcaNwoSVXBkYXRlQWNjb3VudHNUaWVyEg8KB3RpZXJfaWQYASABKA0SEAoIYWNjb3VudHMYAiADKA0aIQoMRnJlZXplTWFya2V0EhEKCW1hcmtldF9pZBgCIAEoDRojCg5VbmZyZWV6ZU1hcmtldBIRCgltYXJrZXRfaWQYAiABKA0alwEKDFRha2VQb3NpdGlvbhISCgpzZXNzaW9uX2lkGAEgASgEEhEKCW1hcmtldF9pZBgCIAEoDRIMCgRzaXplGAMgASgDEh4KEXNlbmRlcl9hY2NvdW50X2lkGAQgASgNSACIAQESEgoFcHJpY2UYBSABKARIAYgBAUIUChJfc2VuZGVyX2FjY291bnRfaWRCCAoGX3ByaWNlQgYKBGtpbmQidwoTQXRvbWljU3ViYWN0aW9uS2luZBIsCg50cmFkZV9vcl9wbGFjZRgGIAEoCzISLm5vcmQuVHJhZGVPclBsYWNlSAASKQoMY2FuY2VsX29yZGVyGAcgASgLMhEubm9yZC5DYW5jZWxPcmRlckgAQgcKBWlubmVyInAKBkF0b21pYxISCgpzZXNzaW9uX2lkGAEgASgEEhcKCmFjY291bnRfaWQYAiABKA1IAIgBARIqCgdhY3Rpb25zGAYgAygLMhkubm9yZC5BdG9taWNTdWJhY3Rpb25LaW5kQg0KC19hY2NvdW50X2lkIqUeCgdSZWNlaXB0EhEKCWFjdGlvbl9pZBgBIAEoBBIaCgNlcnIYICABKA4yCy5ub3JkLkVycm9ySAASQgoVY3JlYXRlX3Nlc3Npb25fcmVzdWx0GCEgASgLMiEubm9yZC5SZWNlaXB0LkNyZWF0ZVNlc3Npb25SZXN1bHRIABI8ChJwbGFjZV9vcmRlcl9yZXN1bHQYIiABKAsyHi5ub3JkLlJlY2VpcHQuUGxhY2VPcmRlclJlc3VsdEgAEj4KE2NhbmNlbF9vcmRlcl9yZXN1bHQYIyABKAsyHy5ub3JkLlJlY2VpcHQuQ2FuY2VsT3JkZXJSZXN1bHRIABI1Cg5kZXBvc2l0X3Jlc3VsdBgkIAEoCzIbLm5vcmQuUmVjZWlwdC5EZXBvc2l0UmVzdWx0SAASPgoTaW5zZXJ0X3Rva2VuX3Jlc3VsdBglIAEoCzIfLm5vcmQuUmVjZWlwdC5JbnNlcnRUb2tlblJlc3VsdEgAEkAKFGluc2VydF9tYXJrZXRfcmVzdWx0GCYgASgLMiAubm9yZC5SZWNlaXB0Lkluc2VydE1hcmtldFJlc3VsdEgAEjcKD3dpdGhkcmF3X3Jlc3VsdBgnIAEoCzIcLm5vcmQuUmVjZWlwdC5XaXRoZHJhd1Jlc3VsdEgAEkkKGW9yYWNsZV9zeW1ib2xfZmVlZF9yZXN1bHQYKCABKAsyJC5ub3JkLlJlY2VpcHQuT3JhY2xlU3ltYm9sRmVlZFJlc3VsdEgAEkAKFG9yYWNsZV91cGRhdGVfcmVzdWx0GCkgASgLMiAubm9yZC5SZWNlaXB0Lk9yYWNsZVVwZGF0ZVJlc3VsdEgAEksKGnVwZGF0ZV9ndWFyZGlhbl9zZXRfcmVzdWx0GCogASgLMiUubm9yZC5SZWNlaXB0LlVwZGF0ZUd1YXJkaWFuU2V0UmVzdWx0SAASNQoKbGlxdWlkYXRlZBgrIAEoCzIfLm5vcmQuUmVjZWlwdC5BY2NvdW50TGlxdWlkYXRlZEgAEjcKD3Nlc3Npb25fcmV2b2tlZBgsIAEoCzIcLm5vcmQuUmVjZWlwdC5TZXNzaW9uUmV2b2tlZEgAEiYKBnBhdXNlZBgtIAEoCzIULm5vcmQuUmVjZWlwdC5QYXVzZWRIABIqCgh1bnBhdXNlZBguIAEoCzIWLm5vcmQuUmVjZWlwdC5VbnBhdXNlZEgAEjAKC3RyYW5zZmVycmVkGC8gASgLMhkubm9yZC5SZWNlaXB0LlRyYW5zZmVycmVkSAASMwoNdHJpZ2dlcl9hZGRlZBhAIAEoCzIaLm5vcmQuUmVjZWlwdC5UcmlnZ2VyQWRkZWRIABI3Cg90cmlnZ2VyX3JlbW92ZWQYQSABKAsyHC5ub3JkLlJlY2VpcHQuVHJpZ2dlclJlbW92ZWRIABJNChhwb3NpdGlvbl90YWtlbl9vcl90cmFkZWQYQiABKAsyKS5ub3JkLlJlY2VpcHQuUG9zaXRpb25UYWtlbk9yVHJhZGVkUmVzdWx0SAASLAoGYXRvbWljGEMgASgLMhoubm9yZC5SZWNlaXB0LkF0b21pY1Jlc3VsdEgAEkIKFW1hcmtldF9mcmVlemVfdXBkYXRlZBhEIAEoCzIhLm5vcmQuUmVjZWlwdC5NYXJrZXRGcmVlemVVcGRhdGVkSAASNAoOZmVlX3RpZXJfYWRkZWQYRSABKAsyGi5ub3JkLlJlY2VpcHQuRmVlVGllckFkZGVkSAASOAoQZmVlX3RpZXJfdXBkYXRlZBhGIAEoCzIcLm5vcmQuUmVjZWlwdC5GZWVUaWVyVXBkYXRlZEgAEkIKFWFjY291bnRzX3RpZXJfdXBkYXRlZBhHIAEoCzIhLm5vcmQuUmVjZWlwdC5BY2NvdW50c1RpZXJVcGRhdGVkSAAaeAoGUG9zdGVkEhgKBHNpZGUYASABKA4yCi5ub3JkLlNpZGUSEQoJbWFya2V0X2lkGAIgASgNEg0KBXByaWNlGAMgASgEEgwKBHNpemUYBCABKAQSEAoIb3JkZXJfaWQYBSABKAQSEgoKYWNjb3VudF9pZBgGIAEoDRpKCgVUcmFkZRIQCghvcmRlcl9pZBgCIAEoBBINCgVwcmljZRgEIAEoBBIMCgRzaXplGAUgASgEEhIKCmFjY291bnRfaWQYBiABKA0aKQoTQ3JlYXRlU2Vzc2lvblJlc3VsdBISCgpzZXNzaW9uX2lkGAEgASgEGkMKCVRyaWdnZXJlZBIfCgRraW5kGAMgASgOMhEubm9yZC5UcmlnZ2VyS2luZBIVCg10cmlnZ2VyX3ByaWNlGAQgASgEGpUCChBQbGFjZU9yZGVyUmVzdWx0EikKBnBvc3RlZBgBIAEoCzIULm5vcmQuUmVjZWlwdC5Qb3N0ZWRIAIgBARIiCgVmaWxscxgCIAMoCzITLm5vcmQuUmVjZWlwdC5UcmFkZRIcCg9jbGllbnRfb3JkZXJfaWQYAyABKARIAYgBARIfChJzZW5kZXJfdHJhY2tpbmdfaWQYBCABKARIAogBARIvCgl0cmlnZ2VyZWQYBSABKAsyFy5ub3JkLlJlY2VpcHQuVHJpZ2dlcmVkSAOIAQFCCQoHX3Bvc3RlZEISChBfY2xpZW50X29yZGVyX2lkQhUKE19zZW5kZXJfdHJhY2tpbmdfaWRCDAoKX3RyaWdnZXJlZBpCCgtUYWtlblJlc3VsdBILCgNwbmwYASABKAMSDAoEc2l6ZRgCIAEoAxIYChB0YWtlcl9hY2NvdW50X2lkGAMgASgNGqsBChtQb3NpdGlvblRha2VuT3JUcmFkZWRSZXN1bHQSEQoJbWFya2V0X2lkGAEgASgNEioKBXRha2VuGAIgASgLMhkubm9yZC5SZWNlaXB0LlRha2VuUmVzdWx0SAASMAoGdHJhZGVkGAMgASgLMh4ubm9yZC5SZWNlaXB0LlBsYWNlT3JkZXJSZXN1bHRIAEIbChlQb3NpdGlvblRha2VuT3JUcmFkZWRLaW5kGjkKEUNhbmNlbE9yZGVyUmVzdWx0EhAKCG9yZGVyX2lkGAEgASgEEhIKCmFjY291bnRfaWQYAiABKA0acAoNRGVwb3NpdFJlc3VsdBIQCgh0b2tlbl9pZBgBIAEoDRIOCgZhbW91bnQYAiABKAQSEgoKYWNjb3VudF9pZBgDIAEoDRIUCgx1c2VyX2NyZWF0ZWQYBCABKAgSEwoLdXNlcl9wdWJrZXkYBSABKAwaQwoRSW5zZXJ0VG9rZW5SZXN1bHQSEgoKY2hhaW5fYWRkchgBIAEoDBIaCgV0b2tlbhgCIAEoCzILLm5vcmQuVG9rZW4aMgoSSW5zZXJ0TWFya2V0UmVzdWx0EhwKBm1hcmtldBgBIAEoCzIMLm5vcmQuTWFya2V0GnkKDldpdGhkcmF3UmVzdWx0EhAKCHRva2VuX2lkGAEgASgNEg4KBmFtb3VudBgCIAEoBBIPCgdiYWxhbmNlGAMgASgEEhIKCmFjY291bnRfaWQYBCABKA0SCwoDZmVlGAUgASgEEhMKC3VzZXJfcHVia2V5GAYgASgMGkAKFk9yYWNsZVN5bWJvbEZlZWRSZXN1bHQSFQoNb3JhY2xlX3N5bWJvbBgBIAEoCRIPCgdmZWVkX2lkGAIgASgMGicKEk9yYWNsZVVwZGF0ZVJlc3VsdBIRCgl0aW1lc3RhbXAYASABKAMaSAoXVXBkYXRlR3VhcmRpYW5TZXRSZXN1bHQSGgoSZ3VhcmRpYW5fc2V0X2luZGV4GAEgASgNEhEKCWFkZHJlc3NlcxgCIAMoDBpDCgxQZXJwUG9zaXRpb24SEQoJbWFya2V0X2lkGAEgASgNEhEKCWJhc2Vfc2l6ZRgCIAEoAxINCgVwcmljZRgDIAEoBBqeAQoRQWNjb3VudExpcXVpZGF0ZWQSHQoVbGlxdWlkYXRvcl9hY2NvdW50X2lkGAEgASgNEh0KFWxpcXVpZGF0ZWVfYWNjb3VudF9pZBgCIAEoDRIYChBjYW5jZWxsZWRfb3JkZXJzGAMgAygEEjEKDXJlbW92ZWRfcGVycHMYBCADKAsyGi5ub3JkLlJlY2VpcHQuUGVycFBvc2l0aW9uGhAKDlNlc3Npb25SZXZva2VkGggKBlBhdXNlZBoKCghVbnBhdXNlZBrhAQoLVHJhbnNmZXJyZWQSFwoPZnJvbV9hY2NvdW50X2lkGAEgASgNEhwKD3RvX3VzZXJfYWNjb3VudBgCIAEoDUgAiAEBEhAKCHRva2VuX2lkGAMgASgNEg4KBmFtb3VudBgEIAEoBBIXCg9hY2NvdW50X2NyZWF0ZWQYBSABKAgSNQoSdG9fc3BlY2lhbF9hY2NvdW50GAYgASgOMhQubm9yZC5TcGVjaWFsQWNjb3VudEgBiAEBQhIKEF90b191c2VyX2FjY291bnRCFQoTX3RvX3NwZWNpYWxfYWNjb3VudBoOCgxUcmlnZ2VyQWRkZWQaEAoOVHJpZ2dlclJlbW92ZWQaOAoTTWFya2V0RnJlZXplVXBkYXRlZBIRCgltYXJrZXRfaWQYASABKA0SDgoGZnJvemVuGAIgASgIGjMKDEZlZVRpZXJBZGRlZBIjCgZjb25maWcYASABKAsyEy5ub3JkLkZlZVRpZXJDb25maWcaQQoORmVlVGllclVwZGF0ZWQSCgoCaWQYASABKA0SIwoGY29uZmlnGAIgASgLMhMubm9yZC5GZWVUaWVyQ29uZmlnGjgKE0FjY291bnRzVGllclVwZGF0ZWQSDwoHdGllcl9pZBgBIAEoDRIQCghhY2NvdW50cxgCIAMoDRqbAQoZQXRvbWljU3ViYWN0aW9uUmVzdWx0S2luZBI8ChJwbGFjZV9vcmRlcl9yZXN1bHQYASABKAsyHi5ub3JkLlJlY2VpcHQuUGxhY2VPcmRlclJlc3VsdEgAEjcKDGNhbmNlbF9vcmRlchgCIAEoCzIfLm5vcmQuUmVjZWlwdC5DYW5jZWxPcmRlclJlc3VsdEgAQgcKBWlubmVyGkgKDEF0b21pY1Jlc3VsdBI4CgdyZXN1bHRzGAEgAygLMicubm9yZC5SZWNlaXB0LkF0b21pY1N1YmFjdGlvblJlc3VsdEtpbmRCBgoEa2luZCoYCgRTaWRlEgcKA0FTSxAAEgcKA0JJRBABKi0KC1RyaWdnZXJLaW5kEg0KCVNUT1BfTE9TUxAAEg8KC1RBS0VfUFJPRklUEAEqTwoIRmlsbE1vZGUSCQoFTElNSVQQABINCglQT1NUX09OTFkQARIXChNJTU1FRElBVEVfT1JfQ0FOQ0VMEAISEAoMRklMTF9PUl9LSUxMEAMqJgoKTWFya2V0VHlwZRIICgRTUE9UEAASDgoKUEVSUEVUVUFMUxABKpIaCgVFcnJvchINCglEVVBMSUNBVEUQABISCg5ERUNPREVfRkFJTFVSRRACEhUKEUlOVkFMSURfU0lHTkFUVVJFEAMSFAoQTUFSS0VUX05PVF9GT1VORBAEEhMKD1RPS0VOX05PVF9GT1VORBAFEhIKDlVTRVJfTk9UX0ZPVU5EEAYSFQoRU0VTU0lPTl9OT1RfRk9VTkQQBxITCg9PUkRFUl9OT1RfRk9VTkQQCBITCg9PUkRFUl9TSVpFX1pFUk8QCRIOCgpBUklUSE1FVElDEAsSFwoTQVJJVEhNRVRJQ19PVkVSRkxPVxAMEhgKFEFSSVRITUVUSUNfVU5ERVJGTE9XEA0SHwobQVJJVEhNRVRJQ19ESVZJU0lPTl9CWV9aRVJPEA4SGgoWS0VZX0FMUkVBRFlfUkVHSVNURVJFRBAPEhwKGEVYUElSWV9USU1FU1RBTVBfSU5fUEFTVBAQEhwKGFVQREFURV9USU1FU1RBTVBfSU5fUEFTVBAREhgKFFRPT19NQU5ZX09QRU5fT1JERVJTEBISHQoZV0lUSERSQVdfQU1PVU5UX1RPT19TTUFMTBAVEhcKE0lOVkFMSURfT1JERVJfT1dORVIQFhIgChxERUNPREVfRkFJTFVSRV9MRU5HVEhfUFJFRklYECESFgoSREVDT0RFX0ZBSUxVUkVfUkFXECISGQoVREVDT0RFX0ZBSUxVUkVfRE9NQUlOECMSHwobVVBEQVRFX1BVQkxJU0hfVElNRV9JTl9QQVNUECQSFwoTUFlUSF9GRUVEX05PVF9BRERFRBBdEhUKEVBZVEhfRkVFRF9NSVNTSU5HEF4SGwoXUFlUSF9GRUVEX0FMUkVBRFlfQURERUQQXxIjCh9QWVRIX0dVQVJESUFOX1NFVF9VTklOSVRJQUxJWkVEEGASHQoZUFlUSF9HVUFSRElBTl9TRVRfSU5WQUxJRBBhEiMKH1BZVEhfRkVFRF9ERUNJTUFMU19PVVRfT0ZfUkFOR0UQYhIgChxQWVRIX0ZFRURfUFJJQ0VfT1VUX09GX1JBTkdFEGMSIwofUFlUSF9GRUVEX1ZBUklBTkNFX09VVF9PRl9SQU5HRRBkEjUKMVBZVEhfR1VBUkRJQU5fU0VUX0FORF9QWVRIX1NJR05BVFVSRV9ET19OT1RfTUFUQ0gQZRIcChhJTlZBTElEX1RPS0VOX1BBUkFNRVRFUlMQZhIcChhJTkRFWF9QUklDRV9PVVRfT0ZfUkFOR0UQZxIfChtJTkRFWF9ERUNJTUFMU19PVVRfT0ZfUkFOR0UQaBIZChVJTlZBTElEX1NUQVRFX1ZFUlNJT04QaRIZChVUSUVSX0ZFRV9PVVRfT0ZfUkFOR0UQahIYChRUSUVSX0lEX09VVF9PRl9SQU5HRRBrEhMKD0lOVkFMSURfTUFSR0lOUxBsEiEKHU1BUktFVF9ERUNJTUFMU19FWENFRURfTElNSVRTEG0SEwoPVE9PX01BTllfVE9LRU5TEG4SFAoQRlVORElOR19PVkVSRkxPVxB7EjcKM0NBTl9SRURVQ0VfUE9TSVRJT05fT05MWV9JRl9BTExfT1JERVJTX0FSRV9DQU5DRUxFRBB8EhcKE1VORVhQRUNURURfVE9LRU5fSUQQfxIUCg9UT0tFTl9OT1RfUkVBRFkQggESHAoYVE9LRU5fQUxSRUFEWV9SRUdJU1RFUkVEEHASIQocSU1NRURJQVRFX09SREVSX0dPVF9OT19GSUxMUxCFARIZChRGQUlMRURfVE9fRklMTF9MSU1JVBCGARIwCitQT1NUX09OTFlfTVVTVF9OT1RfRklMTF9BTllfT1BQT1NJVEVfT1JERVJTEIcBEgwKB0lOVkFMSUQQiAESEAoLTUFJTlRFTkFOQ0UQiQESGgoVTUlOSU1VTV9TSVpFX0RFQ0lNQUxTEIoBEjIKLVBBUkFNRVRFUlNfV0lMTF9DUkVBVEVfTk9OX09QRVJBVElPTkFMX01BUktFVBCLARIiCh1PTkxZX0lNTUVESUFURV9PUkRFUlNfQUxMT1dFRBCMARIbChZUT09fTUFOWV9VU0VSX0FDQ09VTlRTEI0BEhYKEUFDQ09VTlRfTk9UX0ZPVU5EEI4BEhoKFUFDQ09VTlRfSU5WQUxJRF9PV05FUhCPARIRCgxEVVNUX0FDQ09VTlQQkQESDAoHQkFMQU5DRRCgARIdChhCQUxBTkNFX0RFUE9TSVRfT1ZFUkZMT1cQoQESHAoXQkFMQU5DRV9DSEFOR0VfT1ZFUkZMT1cQogESIgodQkFMQU5DRV9DSEFOR0VfTElNSVRfRVhDRUVERUQQowESGQoUQkFMQU5DRV9JTlNVRkZJQ0lFTlQQpAESHgoZVU5BVVRIRU5USUNBVEVEX0wxX0FDVElPThClARIdChhFTkNPREVEX0FDVElPTl9UT09fTEFSR0UQpgESDAoHVFJJR0dFUhCoARIaChVUUklHR0VSX0lOVkFMSURfUFJJQ0UQqQESFgoRVFJJR0dFUl9OT1RfRk9VTkQQqgESDgoJVElNRVNUQU1QELABEh8KGlRJTUVTVEFNUF9PVVRfT0ZfVEhSRVNIT0xEELEBEhQKD1RJTUVTVEFNUF9TVEFMRRCyARIlCiBCQU5LUlVQVENZX0lOU1VGRklDSUVOVF9DT1ZFUkFHRRC5ARIZChRCQU5LUlVQVENZX05PVF9GT1VORBC6ARIbChZCQU5LUlVQVENZX05PVF9BTExPV0VEELsBEhUKEE1BUktFVF9OT1RfUkVBRFkQwAESEgoNTUFSS0VUX0ZST1pFThDBARIRCgxNQVJLRVRfRU1QVFkQwgESDQoIUE9TSVRJT04QyAESFwoSUE9TSVRJT05fTk9UX0ZPVU5EEMkBEhkKFFBPU0lUSU9OX1NUQVRFX09SREVSEMoBEh8KGlBPU0lUSU9OX1NUQVRFX09SREVSX1BSSUNFEMsBEh4KGVBPU0lUSU9OX1NUQVRFX09SREVSX1NJWkUQzAESHgoZUE9TSVRJT05fU1RBVEVfT1JERVJfU0lERRDNARIYChNQT1NJVElPTl9TSVpFX0xJTUlUEM4BEhgKE1BPU0lUSU9OX1NUQVRFX1BFUlAQzwESJAofUE9TSVRJT05fU1RBVEVfT1JERVJfREVMRUdBVElPThDQARIKCgVQUklDRRDRARIbChZTSUdOQVRVUkVfVkVSSUZJQ0FUSU9OENkBEjAKK1NJR05BVFVSRV9WRVJJRklDQVRJT05fTUFMRk9STUVEX1BVQkxJQ19LRVkQ2gESKgolU0lHTkFUVVJFX1ZFUklGSUNBVElPTl9JTlZBTElEX0xFTkdUSBDbARIJCgRSSVNLEOABEjQKL1JJU0tfREVMRUdBVElPTl9NRl9UT19CRV9MRVNTX1RIQU5fT1JfRVFVQUxfTU1GEOEBEiQKH1JJU0tfT01GX0xFU1NfVEhBTl9PUl9FUVVBTF9JTUYQ4gESJAofUklTS19PTUZfTEVTU19USEFOX09SX0VRVUFMX0NNRhDjARIqCiVSSVNLX1RSQURFX09NRl9MRVNTX1RIQU5fT1JfRVFVQUxfQ01GEOUBEjUKMFJJU0tfVU5IRUFMVEhZX01GX0FORF9QT05fQUZURVJfQkVUVEVSX09GX0JFRk9SRRDkARIUCg9PUkRFUl9FWEVDVVRJT04Q8AESGgoVT1JERVJfRVhFQ1VUSU9OX0VNUFRZEPEBEiEKHE9SREVSX0VYRUNVVElPTl9GSUxMX09SX0tJTEwQ8gESIwoeT1JERVJfRVhFQ1VUSU9OX01JU1NJTkdfTElNSVRTEPMBEiIKHU9SREVSX0VYRUNVVElPTl9NSVNTSU5HX1BSSUNFEPQBEh8KGk9SREVSX0VYRUNVVElPTl9TSVpFX0xJTUlUEPUBEiAKG09SREVSX0VYRUNVVElPTl9MSU1JVF9QUklDRRD2ARIeChlPUkRFUl9SRURVQ0VfSVNfUE9TVF9PTkxZEPcBEh8KGk9SREVSX0VYRUNVVElPTl9TRUxMX1BSSUNFEPgBEiUKIE9SREVSX1NJWkVfRVhDRUVEU19QT1NJVElPTl9TSVpFEPkBEigKI0FUT01JQ1NfVFJBREVTX0NBTk5PVF9GT0xMT1dfUExBQ0VTEIACEjAKK0FUT01JQ1NfQ0FOQ0VMU19DQU5OT1RfRk9MTE9XX1RSQURFU19QTEFDRVMQgQISJgohQUNUSU9OX1BPU0lUSU9OX1NIT1VMRF9CRV9DT1ZFUkVEEJECEhkKFEFDVElPTl9JTlZBTElEX05PTkNFEJICEikKJEFDVElPTl9QUk9QT1NFRF9QUklDRV9NVVNUX0JFX0hJR0hFUhCTAhIUCg9OT1RfSU1QTEVNRU5URUQQ9AMSDAoHRHJvcHBlZBDnByoeCg5TcGVjaWFsQWNjb3VudBIMCghGZWVWYXVsdBAAYgZwcm90bzM");
19
+
20
+ /**
21
+ * @generated from message nord.FeeTierConfig
22
+ */
23
+ export type FeeTierConfig = Message<"nord.FeeTierConfig"> & {
24
+ /**
25
+ * @generated from field: uint32 maker_fee_bps = 1;
26
+ */
27
+ makerFeeBps: number;
28
+
29
+ /**
30
+ * @generated from field: uint32 taker_fee_bps = 2;
31
+ */
32
+ takerFeeBps: number;
33
+ };
34
+
35
+ /**
36
+ * @generated from message nord.FeeTierConfig
37
+ */
38
+ export type FeeTierConfigJson = {
39
+ /**
40
+ * @generated from field: uint32 maker_fee_bps = 1;
41
+ */
42
+ makerFeeBps?: number;
43
+
44
+ /**
45
+ * @generated from field: uint32 taker_fee_bps = 2;
46
+ */
47
+ takerFeeBps?: number;
48
+ };
49
+
50
+ /**
51
+ * Describes the message nord.FeeTierConfig.
52
+ * Use `create(FeeTierConfigSchema)` to create a new message.
53
+ */
54
+ export const FeeTierConfigSchema: GenMessage<FeeTierConfig, {jsonType: FeeTierConfigJson}> = /*@__PURE__*/
55
+ messageDesc(file_nord, 0);
19
56
 
20
57
  /**
21
58
  * @generated from message nord.Market
@@ -122,7 +159,7 @@ export type MarketJson = {
122
159
  * Use `create(MarketSchema)` to create a new message.
123
160
  */
124
161
  export const MarketSchema: GenMessage<Market, {jsonType: MarketJson}> = /*@__PURE__*/
125
- messageDesc(file_nord, 0);
162
+ messageDesc(file_nord, 1);
126
163
 
127
164
  /**
128
165
  * @generated from message nord.Token
@@ -183,7 +220,7 @@ export type TokenJson = {
183
220
  * Use `create(TokenSchema)` to create a new message.
184
221
  */
185
222
  export const TokenSchema: GenMessage<Token, {jsonType: TokenJson}> = /*@__PURE__*/
186
- messageDesc(file_nord, 1);
223
+ messageDesc(file_nord, 2);
187
224
 
188
225
  /**
189
226
  * quote_size = size * price, in decimals for specific market
@@ -238,7 +275,7 @@ export type QuoteSizeJson = {
238
275
  * Use `create(QuoteSizeSchema)` to create a new message.
239
276
  */
240
277
  export const QuoteSizeSchema: GenMessage<QuoteSize, {jsonType: QuoteSizeJson}> = /*@__PURE__*/
241
- messageDesc(file_nord, 2);
278
+ messageDesc(file_nord, 3);
242
279
 
243
280
  /**
244
281
  * @generated from message nord.OrderLimit
@@ -289,7 +326,7 @@ export type OrderLimitJson = {
289
326
  * Use `create(OrderLimitSchema)` to create a new message.
290
327
  */
291
328
  export const OrderLimitSchema: GenMessage<OrderLimit, {jsonType: OrderLimitJson}> = /*@__PURE__*/
292
- messageDesc(file_nord, 3);
329
+ messageDesc(file_nord, 4);
293
330
 
294
331
  /**
295
332
  * @generated from message nord.OrderType
@@ -336,7 +373,7 @@ export type OrderTypeJson = {
336
373
  * Use `create(OrderTypeSchema)` to create a new message.
337
374
  */
338
375
  export const OrderTypeSchema: GenMessage<OrderType, {jsonType: OrderTypeJson}> = /*@__PURE__*/
339
- messageDesc(file_nord, 4);
376
+ messageDesc(file_nord, 5);
340
377
 
341
378
  /**
342
379
  * @generated from message nord.TradeOrPlace
@@ -393,7 +430,7 @@ export type TradeOrPlaceJson = {
393
430
  * Use `create(TradeOrPlaceSchema)` to create a new message.
394
431
  */
395
432
  export const TradeOrPlaceSchema: GenMessage<TradeOrPlace, {jsonType: TradeOrPlaceJson}> = /*@__PURE__*/
396
- messageDesc(file_nord, 5);
433
+ messageDesc(file_nord, 6);
397
434
 
398
435
  /**
399
436
  * @generated from message nord.CancelOrder
@@ -420,7 +457,7 @@ export type CancelOrderJson = {
420
457
  * Use `create(CancelOrderSchema)` to create a new message.
421
458
  */
422
459
  export const CancelOrderSchema: GenMessage<CancelOrder, {jsonType: CancelOrderJson}> = /*@__PURE__*/
423
- messageDesc(file_nord, 6);
460
+ messageDesc(file_nord, 7);
424
461
 
425
462
  /**
426
463
  * @generated from message nord.TriggerKey
@@ -457,7 +494,7 @@ export type TriggerKeyJson = {
457
494
  * Use `create(TriggerKeySchema)` to create a new message.
458
495
  */
459
496
  export const TriggerKeySchema: GenMessage<TriggerKey, {jsonType: TriggerKeyJson}> = /*@__PURE__*/
460
- messageDesc(file_nord, 7);
497
+ messageDesc(file_nord, 8);
461
498
 
462
499
  /**
463
500
  * @generated from message nord.Action
@@ -613,6 +650,24 @@ export type Action = Message<"nord.Action"> & {
613
650
  */
614
651
  value: Action_UnfreezeMarket;
615
652
  case: "unfreezeMarket";
653
+ } | {
654
+ /**
655
+ * @generated from field: nord.Action.AddFeeTier add_fee_tier = 38;
656
+ */
657
+ value: Action_AddFeeTier;
658
+ case: "addFeeTier";
659
+ } | {
660
+ /**
661
+ * @generated from field: nord.Action.UpdateFeeTier update_fee_tier = 39;
662
+ */
663
+ value: Action_UpdateFeeTier;
664
+ case: "updateFeeTier";
665
+ } | {
666
+ /**
667
+ * @generated from field: nord.Action.UpdateAccountsTier update_accounts_tier = 40;
668
+ */
669
+ value: Action_UpdateAccountsTier;
670
+ case: "updateAccountsTier";
616
671
  } | { case: undefined; value?: undefined };
617
672
  };
618
673
 
@@ -745,6 +800,21 @@ export type ActionJson = {
745
800
  * @generated from field: nord.Action.UnfreezeMarket unfreeze_market = 37;
746
801
  */
747
802
  unfreezeMarket?: Action_UnfreezeMarketJson;
803
+
804
+ /**
805
+ * @generated from field: nord.Action.AddFeeTier add_fee_tier = 38;
806
+ */
807
+ addFeeTier?: Action_AddFeeTierJson;
808
+
809
+ /**
810
+ * @generated from field: nord.Action.UpdateFeeTier update_fee_tier = 39;
811
+ */
812
+ updateFeeTier?: Action_UpdateFeeTierJson;
813
+
814
+ /**
815
+ * @generated from field: nord.Action.UpdateAccountsTier update_accounts_tier = 40;
816
+ */
817
+ updateAccountsTier?: Action_UpdateAccountsTierJson;
748
818
  };
749
819
 
750
820
  /**
@@ -752,7 +822,7 @@ export type ActionJson = {
752
822
  * Use `create(ActionSchema)` to create a new message.
753
823
  */
754
824
  export const ActionSchema: GenMessage<Action, {jsonType: ActionJson}> = /*@__PURE__*/
755
- messageDesc(file_nord, 8);
825
+ messageDesc(file_nord, 9);
756
826
 
757
827
  /**
758
828
  * @generated from message nord.Action.CreateSession
@@ -809,7 +879,7 @@ export type Action_CreateSessionJson = {
809
879
  * Use `create(Action_CreateSessionSchema)` to create a new message.
810
880
  */
811
881
  export const Action_CreateSessionSchema: GenMessage<Action_CreateSession, {jsonType: Action_CreateSessionJson}> = /*@__PURE__*/
812
- messageDesc(file_nord, 8, 0);
882
+ messageDesc(file_nord, 9, 0);
813
883
 
814
884
  /**
815
885
  * @generated from message nord.Action.CreateToken
@@ -910,7 +980,7 @@ export type Action_CreateTokenJson = {
910
980
  * Use `create(Action_CreateTokenSchema)` to create a new message.
911
981
  */
912
982
  export const Action_CreateTokenSchema: GenMessage<Action_CreateToken, {jsonType: Action_CreateTokenJson}> = /*@__PURE__*/
913
- messageDesc(file_nord, 8, 1);
983
+ messageDesc(file_nord, 9, 1);
914
984
 
915
985
  /**
916
986
  * @generated from message nord.Action.CreateMarket
@@ -1043,7 +1113,7 @@ export type Action_CreateMarketJson = {
1043
1113
  * Use `create(Action_CreateMarketSchema)` to create a new message.
1044
1114
  */
1045
1115
  export const Action_CreateMarketSchema: GenMessage<Action_CreateMarket, {jsonType: Action_CreateMarketJson}> = /*@__PURE__*/
1046
- messageDesc(file_nord, 8, 2);
1116
+ messageDesc(file_nord, 9, 2);
1047
1117
 
1048
1118
  /**
1049
1119
  * Note on order size.
@@ -1292,7 +1362,7 @@ export type Action_PlaceOrderJson = {
1292
1362
  * Use `create(Action_PlaceOrderSchema)` to create a new message.
1293
1363
  */
1294
1364
  export const Action_PlaceOrderSchema: GenMessage<Action_PlaceOrder, {jsonType: Action_PlaceOrderJson}> = /*@__PURE__*/
1295
- messageDesc(file_nord, 8, 3);
1365
+ messageDesc(file_nord, 9, 3);
1296
1366
 
1297
1367
  /**
1298
1368
  * @generated from message nord.Action.CancelOrderById
@@ -1349,7 +1419,7 @@ export type Action_CancelOrderByIdJson = {
1349
1419
  * Use `create(Action_CancelOrderByIdSchema)` to create a new message.
1350
1420
  */
1351
1421
  export const Action_CancelOrderByIdSchema: GenMessage<Action_CancelOrderById, {jsonType: Action_CancelOrderByIdJson}> = /*@__PURE__*/
1352
- messageDesc(file_nord, 8, 4);
1422
+ messageDesc(file_nord, 9, 4);
1353
1423
 
1354
1424
  /**
1355
1425
  * @generated from message nord.Action.Deposit
@@ -1434,7 +1504,7 @@ export type Action_DepositJson = {
1434
1504
  * Use `create(Action_DepositSchema)` to create a new message.
1435
1505
  */
1436
1506
  export const Action_DepositSchema: GenMessage<Action_Deposit, {jsonType: Action_DepositJson}> = /*@__PURE__*/
1437
- messageDesc(file_nord, 8, 5);
1507
+ messageDesc(file_nord, 9, 5);
1438
1508
 
1439
1509
  /**
1440
1510
  * todo(n1): when gate will be here, remove or replace internals with message
@@ -1489,7 +1559,7 @@ export type Action_WithdrawJson = {
1489
1559
  * Use `create(Action_WithdrawSchema)` to create a new message.
1490
1560
  */
1491
1561
  export const Action_WithdrawSchema: GenMessage<Action_Withdraw, {jsonType: Action_WithdrawJson}> = /*@__PURE__*/
1492
- messageDesc(file_nord, 8, 6);
1562
+ messageDesc(file_nord, 9, 6);
1493
1563
 
1494
1564
  /**
1495
1565
  * @generated from message nord.Action.PythSetWormholeGuardians
@@ -1538,7 +1608,7 @@ export type Action_PythSetWormholeGuardiansJson = {
1538
1608
  * Use `create(Action_PythSetWormholeGuardiansSchema)` to create a new message.
1539
1609
  */
1540
1610
  export const Action_PythSetWormholeGuardiansSchema: GenMessage<Action_PythSetWormholeGuardians, {jsonType: Action_PythSetWormholeGuardiansJson}> = /*@__PURE__*/
1541
- messageDesc(file_nord, 8, 7);
1611
+ messageDesc(file_nord, 9, 7);
1542
1612
 
1543
1613
  /**
1544
1614
  * Associate a oracle symbol to a Pyth Feed ID.
@@ -1583,7 +1653,7 @@ export type Action_PythSetSymbolFeedJson = {
1583
1653
  * Use `create(Action_PythSetSymbolFeedSchema)` to create a new message.
1584
1654
  */
1585
1655
  export const Action_PythSetSymbolFeedSchema: GenMessage<Action_PythSetSymbolFeed, {jsonType: Action_PythSetSymbolFeedJson}> = /*@__PURE__*/
1586
- messageDesc(file_nord, 8, 8);
1656
+ messageDesc(file_nord, 9, 8);
1587
1657
 
1588
1658
  /**
1589
1659
  * @generated from message nord.Action.PythPriceFeedUpdate
@@ -1614,7 +1684,7 @@ export type Action_PythPriceFeedUpdateJson = {
1614
1684
  * Use `create(Action_PythPriceFeedUpdateSchema)` to create a new message.
1615
1685
  */
1616
1686
  export const Action_PythPriceFeedUpdateSchema: GenMessage<Action_PythPriceFeedUpdate, {jsonType: Action_PythPriceFeedUpdateJson}> = /*@__PURE__*/
1617
- messageDesc(file_nord, 8, 9);
1687
+ messageDesc(file_nord, 9, 9);
1618
1688
 
1619
1689
  /**
1620
1690
  * Perform final account liquidation procedure.
@@ -1671,7 +1741,7 @@ export type Action_LiquidateJson = {
1671
1741
  * Use `create(Action_LiquidateSchema)` to create a new message.
1672
1742
  */
1673
1743
  export const Action_LiquidateSchema: GenMessage<Action_Liquidate, {jsonType: Action_LiquidateJson}> = /*@__PURE__*/
1674
- messageDesc(file_nord, 8, 10);
1744
+ messageDesc(file_nord, 9, 10);
1675
1745
 
1676
1746
  /**
1677
1747
  * @generated from message nord.Action.RevokeSession
@@ -1698,7 +1768,7 @@ export type Action_RevokeSessionJson = {
1698
1768
  * Use `create(Action_RevokeSessionSchema)` to create a new message.
1699
1769
  */
1700
1770
  export const Action_RevokeSessionSchema: GenMessage<Action_RevokeSession, {jsonType: Action_RevokeSessionJson}> = /*@__PURE__*/
1701
- messageDesc(file_nord, 8, 11);
1771
+ messageDesc(file_nord, 9, 11);
1702
1772
 
1703
1773
  /**
1704
1774
  * The engine fails with a maintenance error while paused.
@@ -1721,7 +1791,7 @@ export type Action_PauseJson = {
1721
1791
  * Use `create(Action_PauseSchema)` to create a new message.
1722
1792
  */
1723
1793
  export const Action_PauseSchema: GenMessage<Action_Pause, {jsonType: Action_PauseJson}> = /*@__PURE__*/
1724
- messageDesc(file_nord, 8, 12);
1794
+ messageDesc(file_nord, 9, 12);
1725
1795
 
1726
1796
  /**
1727
1797
  * @generated from message nord.Action.Unpause
@@ -1740,7 +1810,7 @@ export type Action_UnpauseJson = {
1740
1810
  * Use `create(Action_UnpauseSchema)` to create a new message.
1741
1811
  */
1742
1812
  export const Action_UnpauseSchema: GenMessage<Action_Unpause, {jsonType: Action_UnpauseJson}> = /*@__PURE__*/
1743
- messageDesc(file_nord, 8, 13);
1813
+ messageDesc(file_nord, 9, 13);
1744
1814
 
1745
1815
  /**
1746
1816
  * Transfers tokens to specified account.
@@ -1831,7 +1901,7 @@ export type Action_TransferJson = {
1831
1901
  * Use `create(Action_TransferSchema)` to create a new message.
1832
1902
  */
1833
1903
  export const Action_TransferSchema: GenMessage<Action_Transfer, {jsonType: Action_TransferJson}> = /*@__PURE__*/
1834
- messageDesc(file_nord, 8, 14);
1904
+ messageDesc(file_nord, 9, 14);
1835
1905
 
1836
1906
  /**
1837
1907
  * @generated from message nord.Action.TriggerPrices
@@ -1868,7 +1938,7 @@ export type Action_TriggerPricesJson = {
1868
1938
  * Use `create(Action_TriggerPricesSchema)` to create a new message.
1869
1939
  */
1870
1940
  export const Action_TriggerPricesSchema: GenMessage<Action_TriggerPrices, {jsonType: Action_TriggerPricesJson}> = /*@__PURE__*/
1871
- messageDesc(file_nord, 8, 15);
1941
+ messageDesc(file_nord, 9, 15);
1872
1942
 
1873
1943
  /**
1874
1944
  * @generated from message nord.Action.AddTrigger
@@ -1935,7 +2005,7 @@ export type Action_AddTriggerJson = {
1935
2005
  * Use `create(Action_AddTriggerSchema)` to create a new message.
1936
2006
  */
1937
2007
  export const Action_AddTriggerSchema: GenMessage<Action_AddTrigger, {jsonType: Action_AddTriggerJson}> = /*@__PURE__*/
1938
- messageDesc(file_nord, 8, 16);
2008
+ messageDesc(file_nord, 9, 16);
1939
2009
 
1940
2010
  /**
1941
2011
  * @generated from message nord.Action.RemoveTrigger
@@ -1992,7 +2062,108 @@ export type Action_RemoveTriggerJson = {
1992
2062
  * Use `create(Action_RemoveTriggerSchema)` to create a new message.
1993
2063
  */
1994
2064
  export const Action_RemoveTriggerSchema: GenMessage<Action_RemoveTrigger, {jsonType: Action_RemoveTriggerJson}> = /*@__PURE__*/
1995
- messageDesc(file_nord, 8, 17);
2065
+ messageDesc(file_nord, 9, 17);
2066
+
2067
+ /**
2068
+ * @generated from message nord.Action.AddFeeTier
2069
+ */
2070
+ export type Action_AddFeeTier = Message<"nord.Action.AddFeeTier"> & {
2071
+ /**
2072
+ * @generated from field: nord.FeeTierConfig config = 1;
2073
+ */
2074
+ config?: FeeTierConfig;
2075
+ };
2076
+
2077
+ /**
2078
+ * @generated from message nord.Action.AddFeeTier
2079
+ */
2080
+ export type Action_AddFeeTierJson = {
2081
+ /**
2082
+ * @generated from field: nord.FeeTierConfig config = 1;
2083
+ */
2084
+ config?: FeeTierConfigJson;
2085
+ };
2086
+
2087
+ /**
2088
+ * Describes the message nord.Action.AddFeeTier.
2089
+ * Use `create(Action_AddFeeTierSchema)` to create a new message.
2090
+ */
2091
+ export const Action_AddFeeTierSchema: GenMessage<Action_AddFeeTier, {jsonType: Action_AddFeeTierJson}> = /*@__PURE__*/
2092
+ messageDesc(file_nord, 9, 18);
2093
+
2094
+ /**
2095
+ * @generated from message nord.Action.UpdateFeeTier
2096
+ */
2097
+ export type Action_UpdateFeeTier = Message<"nord.Action.UpdateFeeTier"> & {
2098
+ /**
2099
+ * @generated from field: uint32 id = 1;
2100
+ */
2101
+ id: number;
2102
+
2103
+ /**
2104
+ * @generated from field: nord.FeeTierConfig config = 2;
2105
+ */
2106
+ config?: FeeTierConfig;
2107
+ };
2108
+
2109
+ /**
2110
+ * @generated from message nord.Action.UpdateFeeTier
2111
+ */
2112
+ export type Action_UpdateFeeTierJson = {
2113
+ /**
2114
+ * @generated from field: uint32 id = 1;
2115
+ */
2116
+ id?: number;
2117
+
2118
+ /**
2119
+ * @generated from field: nord.FeeTierConfig config = 2;
2120
+ */
2121
+ config?: FeeTierConfigJson;
2122
+ };
2123
+
2124
+ /**
2125
+ * Describes the message nord.Action.UpdateFeeTier.
2126
+ * Use `create(Action_UpdateFeeTierSchema)` to create a new message.
2127
+ */
2128
+ export const Action_UpdateFeeTierSchema: GenMessage<Action_UpdateFeeTier, {jsonType: Action_UpdateFeeTierJson}> = /*@__PURE__*/
2129
+ messageDesc(file_nord, 9, 19);
2130
+
2131
+ /**
2132
+ * @generated from message nord.Action.UpdateAccountsTier
2133
+ */
2134
+ export type Action_UpdateAccountsTier = Message<"nord.Action.UpdateAccountsTier"> & {
2135
+ /**
2136
+ * @generated from field: uint32 tier_id = 1;
2137
+ */
2138
+ tierId: number;
2139
+
2140
+ /**
2141
+ * @generated from field: repeated uint32 accounts = 2;
2142
+ */
2143
+ accounts: number[];
2144
+ };
2145
+
2146
+ /**
2147
+ * @generated from message nord.Action.UpdateAccountsTier
2148
+ */
2149
+ export type Action_UpdateAccountsTierJson = {
2150
+ /**
2151
+ * @generated from field: uint32 tier_id = 1;
2152
+ */
2153
+ tierId?: number;
2154
+
2155
+ /**
2156
+ * @generated from field: repeated uint32 accounts = 2;
2157
+ */
2158
+ accounts?: number[];
2159
+ };
2160
+
2161
+ /**
2162
+ * Describes the message nord.Action.UpdateAccountsTier.
2163
+ * Use `create(Action_UpdateAccountsTierSchema)` to create a new message.
2164
+ */
2165
+ export const Action_UpdateAccountsTierSchema: GenMessage<Action_UpdateAccountsTier, {jsonType: Action_UpdateAccountsTierJson}> = /*@__PURE__*/
2166
+ messageDesc(file_nord, 9, 20);
1996
2167
 
1997
2168
  /**
1998
2169
  * @generated from message nord.Action.FreezeMarket
@@ -2019,7 +2190,7 @@ export type Action_FreezeMarketJson = {
2019
2190
  * Use `create(Action_FreezeMarketSchema)` to create a new message.
2020
2191
  */
2021
2192
  export const Action_FreezeMarketSchema: GenMessage<Action_FreezeMarket, {jsonType: Action_FreezeMarketJson}> = /*@__PURE__*/
2022
- messageDesc(file_nord, 8, 18);
2193
+ messageDesc(file_nord, 9, 21);
2023
2194
 
2024
2195
  /**
2025
2196
  * @generated from message nord.Action.UnfreezeMarket
@@ -2046,7 +2217,7 @@ export type Action_UnfreezeMarketJson = {
2046
2217
  * Use `create(Action_UnfreezeMarketSchema)` to create a new message.
2047
2218
  */
2048
2219
  export const Action_UnfreezeMarketSchema: GenMessage<Action_UnfreezeMarket, {jsonType: Action_UnfreezeMarketJson}> = /*@__PURE__*/
2049
- messageDesc(file_nord, 8, 19);
2220
+ messageDesc(file_nord, 9, 22);
2050
2221
 
2051
2222
  /**
2052
2223
  * @generated from message nord.Action.TakePosition
@@ -2137,7 +2308,7 @@ export type Action_TakePositionJson = {
2137
2308
  * Use `create(Action_TakePositionSchema)` to create a new message.
2138
2309
  */
2139
2310
  export const Action_TakePositionSchema: GenMessage<Action_TakePosition, {jsonType: Action_TakePositionJson}> = /*@__PURE__*/
2140
- messageDesc(file_nord, 8, 20);
2311
+ messageDesc(file_nord, 9, 23);
2141
2312
 
2142
2313
  /**
2143
2314
  * @generated from message nord.AtomicSubactionKind
@@ -2181,7 +2352,7 @@ export type AtomicSubactionKindJson = {
2181
2352
  * Use `create(AtomicSubactionKindSchema)` to create a new message.
2182
2353
  */
2183
2354
  export const AtomicSubactionKindSchema: GenMessage<AtomicSubactionKind, {jsonType: AtomicSubactionKindJson}> = /*@__PURE__*/
2184
- messageDesc(file_nord, 9);
2355
+ messageDesc(file_nord, 10);
2185
2356
 
2186
2357
  /**
2187
2358
  * @generated from message nord.Atomic
@@ -2228,7 +2399,7 @@ export type AtomicJson = {
2228
2399
  * Use `create(AtomicSchema)` to create a new message.
2229
2400
  */
2230
2401
  export const AtomicSchema: GenMessage<Atomic, {jsonType: AtomicJson}> = /*@__PURE__*/
2231
- messageDesc(file_nord, 10);
2402
+ messageDesc(file_nord, 11);
2232
2403
 
2233
2404
  /**
2234
2405
  * @generated from message nord.Receipt
@@ -2372,6 +2543,24 @@ export type Receipt = Message<"nord.Receipt"> & {
2372
2543
  */
2373
2544
  value: Receipt_MarketFreezeUpdated;
2374
2545
  case: "marketFreezeUpdated";
2546
+ } | {
2547
+ /**
2548
+ * @generated from field: nord.Receipt.FeeTierAdded fee_tier_added = 69;
2549
+ */
2550
+ value: Receipt_FeeTierAdded;
2551
+ case: "feeTierAdded";
2552
+ } | {
2553
+ /**
2554
+ * @generated from field: nord.Receipt.FeeTierUpdated fee_tier_updated = 70;
2555
+ */
2556
+ value: Receipt_FeeTierUpdated;
2557
+ case: "feeTierUpdated";
2558
+ } | {
2559
+ /**
2560
+ * @generated from field: nord.Receipt.AccountsTierUpdated accounts_tier_updated = 71;
2561
+ */
2562
+ value: Receipt_AccountsTierUpdated;
2563
+ case: "accountsTierUpdated";
2375
2564
  } | { case: undefined; value?: undefined };
2376
2565
  };
2377
2566
 
@@ -2492,6 +2681,21 @@ export type ReceiptJson = {
2492
2681
  * @generated from field: nord.Receipt.MarketFreezeUpdated market_freeze_updated = 68;
2493
2682
  */
2494
2683
  marketFreezeUpdated?: Receipt_MarketFreezeUpdatedJson;
2684
+
2685
+ /**
2686
+ * @generated from field: nord.Receipt.FeeTierAdded fee_tier_added = 69;
2687
+ */
2688
+ feeTierAdded?: Receipt_FeeTierAddedJson;
2689
+
2690
+ /**
2691
+ * @generated from field: nord.Receipt.FeeTierUpdated fee_tier_updated = 70;
2692
+ */
2693
+ feeTierUpdated?: Receipt_FeeTierUpdatedJson;
2694
+
2695
+ /**
2696
+ * @generated from field: nord.Receipt.AccountsTierUpdated accounts_tier_updated = 71;
2697
+ */
2698
+ accountsTierUpdated?: Receipt_AccountsTierUpdatedJson;
2495
2699
  };
2496
2700
 
2497
2701
  /**
@@ -2499,7 +2703,7 @@ export type ReceiptJson = {
2499
2703
  * Use `create(ReceiptSchema)` to create a new message.
2500
2704
  */
2501
2705
  export const ReceiptSchema: GenMessage<Receipt, {jsonType: ReceiptJson}> = /*@__PURE__*/
2502
- messageDesc(file_nord, 11);
2706
+ messageDesc(file_nord, 12);
2503
2707
 
2504
2708
  /**
2505
2709
  * @generated from message nord.Receipt.Posted
@@ -2576,7 +2780,7 @@ export type Receipt_PostedJson = {
2576
2780
  * Use `create(Receipt_PostedSchema)` to create a new message.
2577
2781
  */
2578
2782
  export const Receipt_PostedSchema: GenMessage<Receipt_Posted, {jsonType: Receipt_PostedJson}> = /*@__PURE__*/
2579
- messageDesc(file_nord, 11, 0);
2783
+ messageDesc(file_nord, 12, 0);
2580
2784
 
2581
2785
  /**
2582
2786
  * @generated from message nord.Receipt.Trade
@@ -2637,7 +2841,7 @@ export type Receipt_TradeJson = {
2637
2841
  * Use `create(Receipt_TradeSchema)` to create a new message.
2638
2842
  */
2639
2843
  export const Receipt_TradeSchema: GenMessage<Receipt_Trade, {jsonType: Receipt_TradeJson}> = /*@__PURE__*/
2640
- messageDesc(file_nord, 11, 1);
2844
+ messageDesc(file_nord, 12, 1);
2641
2845
 
2642
2846
  /**
2643
2847
  * @generated from message nord.Receipt.CreateSessionResult
@@ -2664,7 +2868,7 @@ export type Receipt_CreateSessionResultJson = {
2664
2868
  * Use `create(Receipt_CreateSessionResultSchema)` to create a new message.
2665
2869
  */
2666
2870
  export const Receipt_CreateSessionResultSchema: GenMessage<Receipt_CreateSessionResult, {jsonType: Receipt_CreateSessionResultJson}> = /*@__PURE__*/
2667
- messageDesc(file_nord, 11, 2);
2871
+ messageDesc(file_nord, 12, 2);
2668
2872
 
2669
2873
  /**
2670
2874
  * @generated from message nord.Receipt.Triggered
@@ -2701,7 +2905,7 @@ export type Receipt_TriggeredJson = {
2701
2905
  * Use `create(Receipt_TriggeredSchema)` to create a new message.
2702
2906
  */
2703
2907
  export const Receipt_TriggeredSchema: GenMessage<Receipt_Triggered, {jsonType: Receipt_TriggeredJson}> = /*@__PURE__*/
2704
- messageDesc(file_nord, 11, 3);
2908
+ messageDesc(file_nord, 12, 3);
2705
2909
 
2706
2910
  /**
2707
2911
  * @generated from message nord.Receipt.PlaceOrderResult
@@ -2768,7 +2972,7 @@ export type Receipt_PlaceOrderResultJson = {
2768
2972
  * Use `create(Receipt_PlaceOrderResultSchema)` to create a new message.
2769
2973
  */
2770
2974
  export const Receipt_PlaceOrderResultSchema: GenMessage<Receipt_PlaceOrderResult, {jsonType: Receipt_PlaceOrderResultJson}> = /*@__PURE__*/
2771
- messageDesc(file_nord, 11, 4);
2975
+ messageDesc(file_nord, 12, 4);
2772
2976
 
2773
2977
  /**
2774
2978
  * @generated from message nord.Receipt.TakenResult
@@ -2815,7 +3019,7 @@ export type Receipt_TakenResultJson = {
2815
3019
  * Use `create(Receipt_TakenResultSchema)` to create a new message.
2816
3020
  */
2817
3021
  export const Receipt_TakenResultSchema: GenMessage<Receipt_TakenResult, {jsonType: Receipt_TakenResultJson}> = /*@__PURE__*/
2818
- messageDesc(file_nord, 11, 5);
3022
+ messageDesc(file_nord, 12, 5);
2819
3023
 
2820
3024
  /**
2821
3025
  * @generated from message nord.Receipt.PositionTakenOrTradedResult
@@ -2873,7 +3077,7 @@ export type Receipt_PositionTakenOrTradedResultJson = {
2873
3077
  * Use `create(Receipt_PositionTakenOrTradedResultSchema)` to create a new message.
2874
3078
  */
2875
3079
  export const Receipt_PositionTakenOrTradedResultSchema: GenMessage<Receipt_PositionTakenOrTradedResult, {jsonType: Receipt_PositionTakenOrTradedResultJson}> = /*@__PURE__*/
2876
- messageDesc(file_nord, 11, 6);
3080
+ messageDesc(file_nord, 12, 6);
2877
3081
 
2878
3082
  /**
2879
3083
  * @generated from message nord.Receipt.CancelOrderResult
@@ -2914,7 +3118,7 @@ export type Receipt_CancelOrderResultJson = {
2914
3118
  * Use `create(Receipt_CancelOrderResultSchema)` to create a new message.
2915
3119
  */
2916
3120
  export const Receipt_CancelOrderResultSchema: GenMessage<Receipt_CancelOrderResult, {jsonType: Receipt_CancelOrderResultJson}> = /*@__PURE__*/
2917
- messageDesc(file_nord, 11, 7);
3121
+ messageDesc(file_nord, 12, 7);
2918
3122
 
2919
3123
  /**
2920
3124
  * @generated from message nord.Receipt.DepositResult
@@ -2985,7 +3189,7 @@ export type Receipt_DepositResultJson = {
2985
3189
  * Use `create(Receipt_DepositResultSchema)` to create a new message.
2986
3190
  */
2987
3191
  export const Receipt_DepositResultSchema: GenMessage<Receipt_DepositResult, {jsonType: Receipt_DepositResultJson}> = /*@__PURE__*/
2988
- messageDesc(file_nord, 11, 8);
3192
+ messageDesc(file_nord, 12, 8);
2989
3193
 
2990
3194
  /**
2991
3195
  * @generated from message nord.Receipt.InsertTokenResult
@@ -3022,7 +3226,7 @@ export type Receipt_InsertTokenResultJson = {
3022
3226
  * Use `create(Receipt_InsertTokenResultSchema)` to create a new message.
3023
3227
  */
3024
3228
  export const Receipt_InsertTokenResultSchema: GenMessage<Receipt_InsertTokenResult, {jsonType: Receipt_InsertTokenResultJson}> = /*@__PURE__*/
3025
- messageDesc(file_nord, 11, 9);
3229
+ messageDesc(file_nord, 12, 9);
3026
3230
 
3027
3231
  /**
3028
3232
  * @generated from message nord.Receipt.InsertMarketResult
@@ -3049,7 +3253,7 @@ export type Receipt_InsertMarketResultJson = {
3049
3253
  * Use `create(Receipt_InsertMarketResultSchema)` to create a new message.
3050
3254
  */
3051
3255
  export const Receipt_InsertMarketResultSchema: GenMessage<Receipt_InsertMarketResult, {jsonType: Receipt_InsertMarketResultJson}> = /*@__PURE__*/
3052
- messageDesc(file_nord, 11, 10);
3256
+ messageDesc(file_nord, 12, 10);
3053
3257
 
3054
3258
  /**
3055
3259
  * @generated from message nord.Receipt.WithdrawResult
@@ -3126,7 +3330,7 @@ export type Receipt_WithdrawResultJson = {
3126
3330
  * Use `create(Receipt_WithdrawResultSchema)` to create a new message.
3127
3331
  */
3128
3332
  export const Receipt_WithdrawResultSchema: GenMessage<Receipt_WithdrawResult, {jsonType: Receipt_WithdrawResultJson}> = /*@__PURE__*/
3129
- messageDesc(file_nord, 11, 11);
3333
+ messageDesc(file_nord, 12, 11);
3130
3334
 
3131
3335
  /**
3132
3336
  * pyth receipts are not user facing, so they can be terse and optional
@@ -3167,7 +3371,7 @@ export type Receipt_OracleSymbolFeedResultJson = {
3167
3371
  * Use `create(Receipt_OracleSymbolFeedResultSchema)` to create a new message.
3168
3372
  */
3169
3373
  export const Receipt_OracleSymbolFeedResultSchema: GenMessage<Receipt_OracleSymbolFeedResult, {jsonType: Receipt_OracleSymbolFeedResultJson}> = /*@__PURE__*/
3170
- messageDesc(file_nord, 11, 12);
3374
+ messageDesc(file_nord, 12, 12);
3171
3375
 
3172
3376
  /**
3173
3377
  * @generated from message nord.Receipt.OracleUpdateResult
@@ -3194,7 +3398,7 @@ export type Receipt_OracleUpdateResultJson = {
3194
3398
  * Use `create(Receipt_OracleUpdateResultSchema)` to create a new message.
3195
3399
  */
3196
3400
  export const Receipt_OracleUpdateResultSchema: GenMessage<Receipt_OracleUpdateResult, {jsonType: Receipt_OracleUpdateResultJson}> = /*@__PURE__*/
3197
- messageDesc(file_nord, 11, 13);
3401
+ messageDesc(file_nord, 12, 13);
3198
3402
 
3199
3403
  /**
3200
3404
  * @generated from message nord.Receipt.UpdateGuardianSetResult
@@ -3231,7 +3435,7 @@ export type Receipt_UpdateGuardianSetResultJson = {
3231
3435
  * Use `create(Receipt_UpdateGuardianSetResultSchema)` to create a new message.
3232
3436
  */
3233
3437
  export const Receipt_UpdateGuardianSetResultSchema: GenMessage<Receipt_UpdateGuardianSetResult, {jsonType: Receipt_UpdateGuardianSetResultJson}> = /*@__PURE__*/
3234
- messageDesc(file_nord, 11, 14);
3438
+ messageDesc(file_nord, 12, 14);
3235
3439
 
3236
3440
  /**
3237
3441
  * @generated from message nord.Receipt.PerpPosition
@@ -3278,7 +3482,7 @@ export type Receipt_PerpPositionJson = {
3278
3482
  * Use `create(Receipt_PerpPositionSchema)` to create a new message.
3279
3483
  */
3280
3484
  export const Receipt_PerpPositionSchema: GenMessage<Receipt_PerpPosition, {jsonType: Receipt_PerpPositionJson}> = /*@__PURE__*/
3281
- messageDesc(file_nord, 11, 15);
3485
+ messageDesc(file_nord, 12, 15);
3282
3486
 
3283
3487
  /**
3284
3488
  * / Result of bankruptcy liquidation.
@@ -3339,7 +3543,7 @@ export type Receipt_AccountLiquidatedJson = {
3339
3543
  * Use `create(Receipt_AccountLiquidatedSchema)` to create a new message.
3340
3544
  */
3341
3545
  export const Receipt_AccountLiquidatedSchema: GenMessage<Receipt_AccountLiquidated, {jsonType: Receipt_AccountLiquidatedJson}> = /*@__PURE__*/
3342
- messageDesc(file_nord, 11, 16);
3546
+ messageDesc(file_nord, 12, 16);
3343
3547
 
3344
3548
  /**
3345
3549
  * @generated from message nord.Receipt.SessionRevoked
@@ -3358,7 +3562,7 @@ export type Receipt_SessionRevokedJson = {
3358
3562
  * Use `create(Receipt_SessionRevokedSchema)` to create a new message.
3359
3563
  */
3360
3564
  export const Receipt_SessionRevokedSchema: GenMessage<Receipt_SessionRevoked, {jsonType: Receipt_SessionRevokedJson}> = /*@__PURE__*/
3361
- messageDesc(file_nord, 11, 17);
3565
+ messageDesc(file_nord, 12, 17);
3362
3566
 
3363
3567
  /**
3364
3568
  * @generated from message nord.Receipt.Paused
@@ -3377,7 +3581,7 @@ export type Receipt_PausedJson = {
3377
3581
  * Use `create(Receipt_PausedSchema)` to create a new message.
3378
3582
  */
3379
3583
  export const Receipt_PausedSchema: GenMessage<Receipt_Paused, {jsonType: Receipt_PausedJson}> = /*@__PURE__*/
3380
- messageDesc(file_nord, 11, 18);
3584
+ messageDesc(file_nord, 12, 18);
3381
3585
 
3382
3586
  /**
3383
3587
  * @generated from message nord.Receipt.Unpaused
@@ -3396,7 +3600,7 @@ export type Receipt_UnpausedJson = {
3396
3600
  * Use `create(Receipt_UnpausedSchema)` to create a new message.
3397
3601
  */
3398
3602
  export const Receipt_UnpausedSchema: GenMessage<Receipt_Unpaused, {jsonType: Receipt_UnpausedJson}> = /*@__PURE__*/
3399
- messageDesc(file_nord, 11, 19);
3603
+ messageDesc(file_nord, 12, 19);
3400
3604
 
3401
3605
  /**
3402
3606
  * @generated from message nord.Receipt.Transferred
@@ -3473,7 +3677,7 @@ export type Receipt_TransferredJson = {
3473
3677
  * Use `create(Receipt_TransferredSchema)` to create a new message.
3474
3678
  */
3475
3679
  export const Receipt_TransferredSchema: GenMessage<Receipt_Transferred, {jsonType: Receipt_TransferredJson}> = /*@__PURE__*/
3476
- messageDesc(file_nord, 11, 20);
3680
+ messageDesc(file_nord, 12, 20);
3477
3681
 
3478
3682
  /**
3479
3683
  * @generated from message nord.Receipt.TriggerAdded
@@ -3492,7 +3696,7 @@ export type Receipt_TriggerAddedJson = {
3492
3696
  * Use `create(Receipt_TriggerAddedSchema)` to create a new message.
3493
3697
  */
3494
3698
  export const Receipt_TriggerAddedSchema: GenMessage<Receipt_TriggerAdded, {jsonType: Receipt_TriggerAddedJson}> = /*@__PURE__*/
3495
- messageDesc(file_nord, 11, 21);
3699
+ messageDesc(file_nord, 12, 21);
3496
3700
 
3497
3701
  /**
3498
3702
  * @generated from message nord.Receipt.TriggerRemoved
@@ -3511,7 +3715,7 @@ export type Receipt_TriggerRemovedJson = {
3511
3715
  * Use `create(Receipt_TriggerRemovedSchema)` to create a new message.
3512
3716
  */
3513
3717
  export const Receipt_TriggerRemovedSchema: GenMessage<Receipt_TriggerRemoved, {jsonType: Receipt_TriggerRemovedJson}> = /*@__PURE__*/
3514
- messageDesc(file_nord, 11, 22);
3718
+ messageDesc(file_nord, 12, 22);
3515
3719
 
3516
3720
  /**
3517
3721
  * @generated from message nord.Receipt.MarketFreezeUpdated
@@ -3548,7 +3752,108 @@ export type Receipt_MarketFreezeUpdatedJson = {
3548
3752
  * Use `create(Receipt_MarketFreezeUpdatedSchema)` to create a new message.
3549
3753
  */
3550
3754
  export const Receipt_MarketFreezeUpdatedSchema: GenMessage<Receipt_MarketFreezeUpdated, {jsonType: Receipt_MarketFreezeUpdatedJson}> = /*@__PURE__*/
3551
- messageDesc(file_nord, 11, 23);
3755
+ messageDesc(file_nord, 12, 23);
3756
+
3757
+ /**
3758
+ * @generated from message nord.Receipt.FeeTierAdded
3759
+ */
3760
+ export type Receipt_FeeTierAdded = Message<"nord.Receipt.FeeTierAdded"> & {
3761
+ /**
3762
+ * @generated from field: nord.FeeTierConfig config = 1;
3763
+ */
3764
+ config?: FeeTierConfig;
3765
+ };
3766
+
3767
+ /**
3768
+ * @generated from message nord.Receipt.FeeTierAdded
3769
+ */
3770
+ export type Receipt_FeeTierAddedJson = {
3771
+ /**
3772
+ * @generated from field: nord.FeeTierConfig config = 1;
3773
+ */
3774
+ config?: FeeTierConfigJson;
3775
+ };
3776
+
3777
+ /**
3778
+ * Describes the message nord.Receipt.FeeTierAdded.
3779
+ * Use `create(Receipt_FeeTierAddedSchema)` to create a new message.
3780
+ */
3781
+ export const Receipt_FeeTierAddedSchema: GenMessage<Receipt_FeeTierAdded, {jsonType: Receipt_FeeTierAddedJson}> = /*@__PURE__*/
3782
+ messageDesc(file_nord, 12, 24);
3783
+
3784
+ /**
3785
+ * @generated from message nord.Receipt.FeeTierUpdated
3786
+ */
3787
+ export type Receipt_FeeTierUpdated = Message<"nord.Receipt.FeeTierUpdated"> & {
3788
+ /**
3789
+ * @generated from field: uint32 id = 1;
3790
+ */
3791
+ id: number;
3792
+
3793
+ /**
3794
+ * @generated from field: nord.FeeTierConfig config = 2;
3795
+ */
3796
+ config?: FeeTierConfig;
3797
+ };
3798
+
3799
+ /**
3800
+ * @generated from message nord.Receipt.FeeTierUpdated
3801
+ */
3802
+ export type Receipt_FeeTierUpdatedJson = {
3803
+ /**
3804
+ * @generated from field: uint32 id = 1;
3805
+ */
3806
+ id?: number;
3807
+
3808
+ /**
3809
+ * @generated from field: nord.FeeTierConfig config = 2;
3810
+ */
3811
+ config?: FeeTierConfigJson;
3812
+ };
3813
+
3814
+ /**
3815
+ * Describes the message nord.Receipt.FeeTierUpdated.
3816
+ * Use `create(Receipt_FeeTierUpdatedSchema)` to create a new message.
3817
+ */
3818
+ export const Receipt_FeeTierUpdatedSchema: GenMessage<Receipt_FeeTierUpdated, {jsonType: Receipt_FeeTierUpdatedJson}> = /*@__PURE__*/
3819
+ messageDesc(file_nord, 12, 25);
3820
+
3821
+ /**
3822
+ * @generated from message nord.Receipt.AccountsTierUpdated
3823
+ */
3824
+ export type Receipt_AccountsTierUpdated = Message<"nord.Receipt.AccountsTierUpdated"> & {
3825
+ /**
3826
+ * @generated from field: uint32 tier_id = 1;
3827
+ */
3828
+ tierId: number;
3829
+
3830
+ /**
3831
+ * @generated from field: repeated uint32 accounts = 2;
3832
+ */
3833
+ accounts: number[];
3834
+ };
3835
+
3836
+ /**
3837
+ * @generated from message nord.Receipt.AccountsTierUpdated
3838
+ */
3839
+ export type Receipt_AccountsTierUpdatedJson = {
3840
+ /**
3841
+ * @generated from field: uint32 tier_id = 1;
3842
+ */
3843
+ tierId?: number;
3844
+
3845
+ /**
3846
+ * @generated from field: repeated uint32 accounts = 2;
3847
+ */
3848
+ accounts?: number[];
3849
+ };
3850
+
3851
+ /**
3852
+ * Describes the message nord.Receipt.AccountsTierUpdated.
3853
+ * Use `create(Receipt_AccountsTierUpdatedSchema)` to create a new message.
3854
+ */
3855
+ export const Receipt_AccountsTierUpdatedSchema: GenMessage<Receipt_AccountsTierUpdated, {jsonType: Receipt_AccountsTierUpdatedJson}> = /*@__PURE__*/
3856
+ messageDesc(file_nord, 12, 26);
3552
3857
 
3553
3858
  /**
3554
3859
  * @generated from message nord.Receipt.AtomicSubactionResultKind
@@ -3600,7 +3905,7 @@ export type Receipt_AtomicSubactionResultKindJson = {
3600
3905
  * Use `create(Receipt_AtomicSubactionResultKindSchema)` to create a new message.
3601
3906
  */
3602
3907
  export const Receipt_AtomicSubactionResultKindSchema: GenMessage<Receipt_AtomicSubactionResultKind, {jsonType: Receipt_AtomicSubactionResultKindJson}> = /*@__PURE__*/
3603
- messageDesc(file_nord, 11, 24);
3908
+ messageDesc(file_nord, 12, 27);
3604
3909
 
3605
3910
  /**
3606
3911
  * @generated from message nord.Receipt.AtomicResult
@@ -3627,7 +3932,7 @@ export type Receipt_AtomicResultJson = {
3627
3932
  * Use `create(Receipt_AtomicResultSchema)` to create a new message.
3628
3933
  */
3629
3934
  export const Receipt_AtomicResultSchema: GenMessage<Receipt_AtomicResult, {jsonType: Receipt_AtomicResultJson}> = /*@__PURE__*/
3630
- messageDesc(file_nord, 11, 25);
3935
+ messageDesc(file_nord, 12, 28);
3631
3936
 
3632
3937
  /**
3633
3938
  * @generated from enum nord.Side
@@ -3947,9 +4252,19 @@ export enum Error {
3947
4252
  INVALID_STATE_VERSION = 105,
3948
4253
 
3949
4254
  /**
3950
- * @generated from enum value: INVALID_MARGINS = 107;
4255
+ * @generated from enum value: TIER_FEE_OUT_OF_RANGE = 106;
4256
+ */
4257
+ TIER_FEE_OUT_OF_RANGE = 106,
4258
+
4259
+ /**
4260
+ * @generated from enum value: TIER_ID_OUT_OF_RANGE = 107;
4261
+ */
4262
+ TIER_ID_OUT_OF_RANGE = 107,
4263
+
4264
+ /**
4265
+ * @generated from enum value: INVALID_MARGINS = 108;
3951
4266
  */
3952
- INVALID_MARGINS = 107,
4267
+ INVALID_MARGINS = 108,
3953
4268
 
3954
4269
  /**
3955
4270
  * Market's decimal parameters exceed either "quote limit" or "base limit"
@@ -4445,7 +4760,7 @@ export enum Error {
4445
4760
  *
4446
4761
  * @generated from enum nord.Error
4447
4762
  */
4448
- export type ErrorJson = "DUPLICATE" | "DECODE_FAILURE" | "INVALID_SIGNATURE" | "MARKET_NOT_FOUND" | "TOKEN_NOT_FOUND" | "USER_NOT_FOUND" | "SESSION_NOT_FOUND" | "ORDER_NOT_FOUND" | "ORDER_SIZE_ZERO" | "ARITHMETIC" | "ARITHMETIC_OVERFLOW" | "ARITHMETIC_UNDERFLOW" | "ARITHMETIC_DIVISION_BY_ZERO" | "KEY_ALREADY_REGISTERED" | "EXPIRY_TIMESTAMP_IN_PAST" | "UPDATE_TIMESTAMP_IN_PAST" | "TOO_MANY_OPEN_ORDERS" | "WITHDRAW_AMOUNT_TOO_SMALL" | "INVALID_ORDER_OWNER" | "DECODE_FAILURE_LENGTH_PREFIX" | "DECODE_FAILURE_RAW" | "DECODE_FAILURE_DOMAIN" | "UPDATE_PUBLISH_TIME_IN_PAST" | "PYTH_FEED_NOT_ADDED" | "PYTH_FEED_MISSING" | "PYTH_FEED_ALREADY_ADDED" | "PYTH_GUARDIAN_SET_UNINITIALIZED" | "PYTH_GUARDIAN_SET_INVALID" | "PYTH_FEED_DECIMALS_OUT_OF_RANGE" | "PYTH_FEED_PRICE_OUT_OF_RANGE" | "PYTH_FEED_VARIANCE_OUT_OF_RANGE" | "PYTH_GUARDIAN_SET_AND_PYTH_SIGNATURE_DO_NOT_MATCH" | "INVALID_TOKEN_PARAMETERS" | "INDEX_PRICE_OUT_OF_RANGE" | "INDEX_DECIMALS_OUT_OF_RANGE" | "INVALID_STATE_VERSION" | "INVALID_MARGINS" | "MARKET_DECIMALS_EXCEED_LIMITS" | "TOO_MANY_TOKENS" | "FUNDING_OVERFLOW" | "CAN_REDUCE_POSITION_ONLY_IF_ALL_ORDERS_ARE_CANCELED" | "UNEXPECTED_TOKEN_ID" | "TOKEN_NOT_READY" | "TOKEN_ALREADY_REGISTERED" | "IMMEDIATE_ORDER_GOT_NO_FILLS" | "FAILED_TO_FILL_LIMIT" | "POST_ONLY_MUST_NOT_FILL_ANY_OPPOSITE_ORDERS" | "INVALID" | "MAINTENANCE" | "MINIMUM_SIZE_DECIMALS" | "PARAMETERS_WILL_CREATE_NON_OPERATIONAL_MARKET" | "ONLY_IMMEDIATE_ORDERS_ALLOWED" | "TOO_MANY_USER_ACCOUNTS" | "ACCOUNT_NOT_FOUND" | "ACCOUNT_INVALID_OWNER" | "DUST_ACCOUNT" | "BALANCE" | "BALANCE_DEPOSIT_OVERFLOW" | "BALANCE_CHANGE_OVERFLOW" | "BALANCE_CHANGE_LIMIT_EXCEEDED" | "BALANCE_INSUFFICIENT" | "UNAUTHENTICATED_L1_ACTION" | "ENCODED_ACTION_TOO_LARGE" | "TRIGGER" | "TRIGGER_INVALID_PRICE" | "TRIGGER_NOT_FOUND" | "TIMESTAMP" | "TIMESTAMP_OUT_OF_THRESHOLD" | "TIMESTAMP_STALE" | "BANKRUPTCY_INSUFFICIENT_COVERAGE" | "BANKRUPTCY_NOT_FOUND" | "BANKRUPTCY_NOT_ALLOWED" | "MARKET_NOT_READY" | "MARKET_FROZEN" | "MARKET_EMPTY" | "POSITION" | "POSITION_NOT_FOUND" | "POSITION_STATE_ORDER" | "POSITION_STATE_ORDER_PRICE" | "POSITION_STATE_ORDER_SIZE" | "POSITION_STATE_ORDER_SIDE" | "POSITION_SIZE_LIMIT" | "POSITION_STATE_PERP" | "POSITION_STATE_ORDER_DELEGATION" | "PRICE" | "SIGNATURE_VERIFICATION" | "SIGNATURE_VERIFICATION_MALFORMED_PUBLIC_KEY" | "SIGNATURE_VERIFICATION_INVALID_LENGTH" | "RISK" | "RISK_DELEGATION_MF_TO_BE_LESS_THAN_OR_EQUAL_MMF" | "RISK_OMF_LESS_THAN_OR_EQUAL_IMF" | "RISK_OMF_LESS_THAN_OR_EQUAL_CMF" | "RISK_TRADE_OMF_LESS_THAN_OR_EQUAL_CMF" | "RISK_UNHEALTHY_MF_AND_PON_AFTER_BETTER_OF_BEFORE" | "ORDER_EXECUTION" | "ORDER_EXECUTION_EMPTY" | "ORDER_EXECUTION_FILL_OR_KILL" | "ORDER_EXECUTION_MISSING_LIMITS" | "ORDER_EXECUTION_MISSING_PRICE" | "ORDER_EXECUTION_SIZE_LIMIT" | "ORDER_EXECUTION_LIMIT_PRICE" | "ORDER_REDUCE_IS_POST_ONLY" | "ORDER_EXECUTION_SELL_PRICE" | "ORDER_SIZE_EXCEEDS_POSITION_SIZE" | "ATOMICS_TRADES_CANNOT_FOLLOW_PLACES" | "ATOMICS_CANCELS_CANNOT_FOLLOW_TRADES_PLACES" | "ACTION_POSITION_SHOULD_BE_COVERED" | "ACTION_INVALID_NONCE" | "ACTION_PROPOSED_PRICE_MUST_BE_HIGHER" | "NOT_IMPLEMENTED" | "Dropped";
4763
+ export type ErrorJson = "DUPLICATE" | "DECODE_FAILURE" | "INVALID_SIGNATURE" | "MARKET_NOT_FOUND" | "TOKEN_NOT_FOUND" | "USER_NOT_FOUND" | "SESSION_NOT_FOUND" | "ORDER_NOT_FOUND" | "ORDER_SIZE_ZERO" | "ARITHMETIC" | "ARITHMETIC_OVERFLOW" | "ARITHMETIC_UNDERFLOW" | "ARITHMETIC_DIVISION_BY_ZERO" | "KEY_ALREADY_REGISTERED" | "EXPIRY_TIMESTAMP_IN_PAST" | "UPDATE_TIMESTAMP_IN_PAST" | "TOO_MANY_OPEN_ORDERS" | "WITHDRAW_AMOUNT_TOO_SMALL" | "INVALID_ORDER_OWNER" | "DECODE_FAILURE_LENGTH_PREFIX" | "DECODE_FAILURE_RAW" | "DECODE_FAILURE_DOMAIN" | "UPDATE_PUBLISH_TIME_IN_PAST" | "PYTH_FEED_NOT_ADDED" | "PYTH_FEED_MISSING" | "PYTH_FEED_ALREADY_ADDED" | "PYTH_GUARDIAN_SET_UNINITIALIZED" | "PYTH_GUARDIAN_SET_INVALID" | "PYTH_FEED_DECIMALS_OUT_OF_RANGE" | "PYTH_FEED_PRICE_OUT_OF_RANGE" | "PYTH_FEED_VARIANCE_OUT_OF_RANGE" | "PYTH_GUARDIAN_SET_AND_PYTH_SIGNATURE_DO_NOT_MATCH" | "INVALID_TOKEN_PARAMETERS" | "INDEX_PRICE_OUT_OF_RANGE" | "INDEX_DECIMALS_OUT_OF_RANGE" | "INVALID_STATE_VERSION" | "TIER_FEE_OUT_OF_RANGE" | "TIER_ID_OUT_OF_RANGE" | "INVALID_MARGINS" | "MARKET_DECIMALS_EXCEED_LIMITS" | "TOO_MANY_TOKENS" | "FUNDING_OVERFLOW" | "CAN_REDUCE_POSITION_ONLY_IF_ALL_ORDERS_ARE_CANCELED" | "UNEXPECTED_TOKEN_ID" | "TOKEN_NOT_READY" | "TOKEN_ALREADY_REGISTERED" | "IMMEDIATE_ORDER_GOT_NO_FILLS" | "FAILED_TO_FILL_LIMIT" | "POST_ONLY_MUST_NOT_FILL_ANY_OPPOSITE_ORDERS" | "INVALID" | "MAINTENANCE" | "MINIMUM_SIZE_DECIMALS" | "PARAMETERS_WILL_CREATE_NON_OPERATIONAL_MARKET" | "ONLY_IMMEDIATE_ORDERS_ALLOWED" | "TOO_MANY_USER_ACCOUNTS" | "ACCOUNT_NOT_FOUND" | "ACCOUNT_INVALID_OWNER" | "DUST_ACCOUNT" | "BALANCE" | "BALANCE_DEPOSIT_OVERFLOW" | "BALANCE_CHANGE_OVERFLOW" | "BALANCE_CHANGE_LIMIT_EXCEEDED" | "BALANCE_INSUFFICIENT" | "UNAUTHENTICATED_L1_ACTION" | "ENCODED_ACTION_TOO_LARGE" | "TRIGGER" | "TRIGGER_INVALID_PRICE" | "TRIGGER_NOT_FOUND" | "TIMESTAMP" | "TIMESTAMP_OUT_OF_THRESHOLD" | "TIMESTAMP_STALE" | "BANKRUPTCY_INSUFFICIENT_COVERAGE" | "BANKRUPTCY_NOT_FOUND" | "BANKRUPTCY_NOT_ALLOWED" | "MARKET_NOT_READY" | "MARKET_FROZEN" | "MARKET_EMPTY" | "POSITION" | "POSITION_NOT_FOUND" | "POSITION_STATE_ORDER" | "POSITION_STATE_ORDER_PRICE" | "POSITION_STATE_ORDER_SIZE" | "POSITION_STATE_ORDER_SIDE" | "POSITION_SIZE_LIMIT" | "POSITION_STATE_PERP" | "POSITION_STATE_ORDER_DELEGATION" | "PRICE" | "SIGNATURE_VERIFICATION" | "SIGNATURE_VERIFICATION_MALFORMED_PUBLIC_KEY" | "SIGNATURE_VERIFICATION_INVALID_LENGTH" | "RISK" | "RISK_DELEGATION_MF_TO_BE_LESS_THAN_OR_EQUAL_MMF" | "RISK_OMF_LESS_THAN_OR_EQUAL_IMF" | "RISK_OMF_LESS_THAN_OR_EQUAL_CMF" | "RISK_TRADE_OMF_LESS_THAN_OR_EQUAL_CMF" | "RISK_UNHEALTHY_MF_AND_PON_AFTER_BETTER_OF_BEFORE" | "ORDER_EXECUTION" | "ORDER_EXECUTION_EMPTY" | "ORDER_EXECUTION_FILL_OR_KILL" | "ORDER_EXECUTION_MISSING_LIMITS" | "ORDER_EXECUTION_MISSING_PRICE" | "ORDER_EXECUTION_SIZE_LIMIT" | "ORDER_EXECUTION_LIMIT_PRICE" | "ORDER_REDUCE_IS_POST_ONLY" | "ORDER_EXECUTION_SELL_PRICE" | "ORDER_SIZE_EXCEEDS_POSITION_SIZE" | "ATOMICS_TRADES_CANNOT_FOLLOW_PLACES" | "ATOMICS_CANCELS_CANNOT_FOLLOW_TRADES_PLACES" | "ACTION_POSITION_SHOULD_BE_COVERED" | "ACTION_INVALID_NONCE" | "ACTION_PROPOSED_PRICE_MUST_BE_HIGHER" | "NOT_IMPLEMENTED" | "Dropped";
4449
4764
 
4450
4765
  /**
4451
4766
  * Describes the enum nord.Error.