@mochabug/adapt-sdk 0.4.24 → 1.0.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (67) hide show
  1. package/dist/api/index.d.ts +14 -13
  2. package/dist/api/index.d.ts.map +1 -1
  3. package/dist/cjs/api.cjs +1 -1
  4. package/dist/cjs/api.cjs.map +4 -4
  5. package/dist/cjs/react.cjs +1 -1
  6. package/dist/cjs/react.cjs.map +3 -3
  7. package/dist/cjs/router.cjs +1 -1
  8. package/dist/cjs/router.cjs.map +4 -4
  9. package/dist/esm/api.mjs +1 -1
  10. package/dist/esm/api.mjs.map +4 -4
  11. package/dist/esm/react.mjs +1 -1
  12. package/dist/esm/react.mjs.map +4 -4
  13. package/dist/esm/router.mjs +1 -1
  14. package/dist/esm/router.mjs.map +4 -4
  15. package/dist/genproto/mochabugapis/adapt/automations/v1/automations_pb.d.ts +9 -9
  16. package/dist/genproto/mochabugapis/adapt/automations/v1/automations_pb.d.ts.map +1 -1
  17. package/dist/genproto/mochabugapis/adapt/graph/v1/exchange_pb.d.ts +96 -0
  18. package/dist/genproto/mochabugapis/adapt/graph/v1/exchange_pb.d.ts.map +1 -0
  19. package/dist/genproto/mochabugapis/adapt/graph/{jtd_schema_pb.d.ts → v1/jtd_schema_pb.d.ts} +18 -18
  20. package/dist/genproto/mochabugapis/adapt/graph/v1/jtd_schema_pb.d.ts.map +1 -0
  21. package/dist/genproto/mochabugapis/adapt/graph/{receiver_pb.d.ts → v1/receiver_pb.d.ts} +22 -10
  22. package/dist/genproto/mochabugapis/adapt/graph/v1/receiver_pb.d.ts.map +1 -0
  23. package/dist/genproto/mochabugapis/adapt/graph/{signal_binding_pb.d.ts → v1/signal_binding_pb.d.ts} +13 -13
  24. package/dist/genproto/mochabugapis/adapt/graph/v1/signal_binding_pb.d.ts.map +1 -0
  25. package/dist/genproto/mochabugapis/adapt/graph/{signal_data_pb.d.ts → v1/signal_data_pb.d.ts} +6 -6
  26. package/dist/genproto/mochabugapis/adapt/graph/v1/signal_data_pb.d.ts.map +1 -0
  27. package/dist/genproto/mochabugapis/adapt/graph/{signal_descriptor_pb.d.ts → v1/signal_descriptor_pb.d.ts} +8 -8
  28. package/dist/genproto/mochabugapis/adapt/graph/v1/signal_descriptor_pb.d.ts.map +1 -0
  29. package/dist/genproto/mochabugapis/adapt/graph/{signal_format_pb.d.ts → v1/signal_format_pb.d.ts} +9 -9
  30. package/dist/genproto/mochabugapis/adapt/graph/v1/signal_format_pb.d.ts.map +1 -0
  31. package/dist/genproto/mochabugapis/adapt/graph/v1/transceiver_pb.d.ts +81 -0
  32. package/dist/genproto/mochabugapis/adapt/graph/v1/transceiver_pb.d.ts.map +1 -0
  33. package/dist/genproto/mochabugapis/adapt/graph/{transmitter_pb.d.ts → v1/transmitter_pb.d.ts} +27 -15
  34. package/dist/genproto/mochabugapis/adapt/graph/v1/transmitter_pb.d.ts.map +1 -0
  35. package/dist/genproto/mochabugapis/adapt/graph/v1/user_defined_exchange_options_pb.d.ts +514 -0
  36. package/dist/genproto/mochabugapis/adapt/graph/v1/user_defined_exchange_options_pb.d.ts.map +1 -0
  37. package/dist/genproto/mochabugapis/adapt/graph/{vertex_metadata_pb.d.ts → v1/vertex_metadata_pb.d.ts} +16 -16
  38. package/dist/genproto/mochabugapis/adapt/graph/v1/vertex_metadata_pb.d.ts.map +1 -0
  39. package/dist/genproto/mochabugapis/adapt/plugins/v1/variable_service_pb.d.ts +3 -3
  40. package/dist/genproto/mochabugapis/adapt/plugins/v1/variable_service_pb.d.ts.map +1 -1
  41. package/dist/genproto/mochabugapis/adapt/runtime/v1/configurator_service_pb.d.ts +16 -16
  42. package/dist/genproto/mochabugapis/adapt/runtime/v1/configurator_service_pb.d.ts.map +1 -1
  43. package/dist/genproto/mochabugapis/adapt/runtime/v1/executor_service_pb.d.ts +12 -12
  44. package/dist/genproto/mochabugapis/adapt/runtime/v1/executor_service_pb.d.ts.map +1 -1
  45. package/dist/genproto/mochabugapis/adapt/runtime/v1/fileforge_service_pb.d.ts +29 -29
  46. package/dist/genproto/mochabugapis/adapt/runtime/v1/fileforge_service_pb.d.ts.map +1 -1
  47. package/dist/genproto/mochabugapis/adapt/runtime/v1/incoming_pb.d.ts +32 -5
  48. package/dist/genproto/mochabugapis/adapt/runtime/v1/incoming_pb.d.ts.map +1 -1
  49. package/dist/react/index.d.ts +2 -1
  50. package/dist/react/index.d.ts.map +1 -1
  51. package/dist/router/index.d.ts +1 -1
  52. package/dist/router/index.d.ts.map +1 -1
  53. package/package.json +3 -3
  54. package/dist/genproto/mochabugapis/adapt/graph/exchange_pb.d.ts +0 -77
  55. package/dist/genproto/mochabugapis/adapt/graph/exchange_pb.d.ts.map +0 -1
  56. package/dist/genproto/mochabugapis/adapt/graph/jtd_schema_pb.d.ts.map +0 -1
  57. package/dist/genproto/mochabugapis/adapt/graph/receiver_pb.d.ts.map +0 -1
  58. package/dist/genproto/mochabugapis/adapt/graph/signal_binding_pb.d.ts.map +0 -1
  59. package/dist/genproto/mochabugapis/adapt/graph/signal_data_pb.d.ts.map +0 -1
  60. package/dist/genproto/mochabugapis/adapt/graph/signal_descriptor_pb.d.ts.map +0 -1
  61. package/dist/genproto/mochabugapis/adapt/graph/signal_format_pb.d.ts.map +0 -1
  62. package/dist/genproto/mochabugapis/adapt/graph/transceiver_pb.d.ts +0 -77
  63. package/dist/genproto/mochabugapis/adapt/graph/transceiver_pb.d.ts.map +0 -1
  64. package/dist/genproto/mochabugapis/adapt/graph/transmitter_pb.d.ts.map +0 -1
  65. package/dist/genproto/mochabugapis/adapt/graph/user_defined_exchange_options_pb.d.ts +0 -353
  66. package/dist/genproto/mochabugapis/adapt/graph/user_defined_exchange_options_pb.d.ts.map +0 -1
  67. package/dist/genproto/mochabugapis/adapt/graph/vertex_metadata_pb.d.ts.map +0 -1
package/dist/esm/api.mjs CHANGED
@@ -1,2 +1,2 @@
1
- import{create as h,enumFromJson as Ft,fromJson as x,toJson as M}from"@bufbuild/protobuf";import{FieldMaskSchema as _,timestampDate as k,timestampFromDate as P,ValueSchema as oe}from"@bufbuild/protobuf/wkt";import{Code as r,ConnectError as A,createClient as q}from"@connectrpc/connect";import{fileDesc as In,messageDesc as yn}from"@bufbuild/protobuf/codegenv2";import{enumDesc as Mt,extDesc as Ht,fileDesc as un,messageDesc as vt}from"@bufbuild/protobuf/codegenv2";import{file_google_protobuf_descriptor as pn,file_google_protobuf_duration as bn,file_google_protobuf_field_mask as Gn,file_google_protobuf_timestamp as hn}from"@bufbuild/protobuf/wkt";var m=un("ChtidWYvdmFsaWRhdGUvdmFsaWRhdGUucHJvdG8SDGJ1Zi52YWxpZGF0ZSI3CgRSdWxlEgoKAmlkGAEgASgJEg8KB21lc3NhZ2UYAiABKAkSEgoKZXhwcmVzc2lvbhgDIAEoCSKGAQoMTWVzc2FnZVJ1bGVzEhYKDmNlbF9leHByZXNzaW9uGAUgAygJEh8KA2NlbBgDIAMoCzISLmJ1Zi52YWxpZGF0ZS5SdWxlEi0KBW9uZW9mGAQgAygLMh4uYnVmLnZhbGlkYXRlLk1lc3NhZ2VPbmVvZlJ1bGVKBAgBEAJSCGRpc2FibGVkIjQKEE1lc3NhZ2VPbmVvZlJ1bGUSDgoGZmllbGRzGAEgAygJEhAKCHJlcXVpcmVkGAIgASgIIh4KCk9uZW9mUnVsZXMSEAoIcmVxdWlyZWQYASABKAgiiwkKCkZpZWxkUnVsZXMSFgoOY2VsX2V4cHJlc3Npb24YHSADKAkSHwoDY2VsGBcgAygLMhIuYnVmLnZhbGlkYXRlLlJ1bGUSEAoIcmVxdWlyZWQYGSABKAgSJAoGaWdub3JlGBsgASgOMhQuYnVmLnZhbGlkYXRlLklnbm9yZRIpCgVmbG9hdBgBIAEoCzIYLmJ1Zi52YWxpZGF0ZS5GbG9hdFJ1bGVzSAASKwoGZG91YmxlGAIgASgLMhkuYnVmLnZhbGlkYXRlLkRvdWJsZVJ1bGVzSAASKQoFaW50MzIYAyABKAsyGC5idWYudmFsaWRhdGUuSW50MzJSdWxlc0gAEikKBWludDY0GAQgASgLMhguYnVmLnZhbGlkYXRlLkludDY0UnVsZXNIABIrCgZ1aW50MzIYBSABKAsyGS5idWYudmFsaWRhdGUuVUludDMyUnVsZXNIABIrCgZ1aW50NjQYBiABKAsyGS5idWYudmFsaWRhdGUuVUludDY0UnVsZXNIABIrCgZzaW50MzIYByABKAsyGS5idWYudmFsaWRhdGUuU0ludDMyUnVsZXNIABIrCgZzaW50NjQYCCABKAsyGS5idWYudmFsaWRhdGUuU0ludDY0UnVsZXNIABItCgdmaXhlZDMyGAkgASgLMhouYnVmLnZhbGlkYXRlLkZpeGVkMzJSdWxlc0gAEi0KB2ZpeGVkNjQYCiABKAsyGi5idWYudmFsaWRhdGUuRml4ZWQ2NFJ1bGVzSAASLwoIc2ZpeGVkMzIYCyABKAsyGy5idWYudmFsaWRhdGUuU0ZpeGVkMzJSdWxlc0gAEi8KCHNmaXhlZDY0GAwgASgLMhsuYnVmLnZhbGlkYXRlLlNGaXhlZDY0UnVsZXNIABInCgRib29sGA0gASgLMhcuYnVmLnZhbGlkYXRlLkJvb2xSdWxlc0gAEisKBnN0cmluZxgOIAEoCzIZLmJ1Zi52YWxpZGF0ZS5TdHJpbmdSdWxlc0gAEikKBWJ5dGVzGA8gASgLMhguYnVmLnZhbGlkYXRlLkJ5dGVzUnVsZXNIABInCgRlbnVtGBAgASgLMhcuYnVmLnZhbGlkYXRlLkVudW1SdWxlc0gAEi8KCHJlcGVhdGVkGBIgASgLMhsuYnVmLnZhbGlkYXRlLlJlcGVhdGVkUnVsZXNIABIlCgNtYXAYEyABKAsyFi5idWYudmFsaWRhdGUuTWFwUnVsZXNIABIlCgNhbnkYFCABKAsyFi5idWYudmFsaWRhdGUuQW55UnVsZXNIABIvCghkdXJhdGlvbhgVIAEoCzIbLmJ1Zi52YWxpZGF0ZS5EdXJhdGlvblJ1bGVzSAASMgoKZmllbGRfbWFzaxgcIAEoCzIcLmJ1Zi52YWxpZGF0ZS5GaWVsZE1hc2tSdWxlc0gAEjEKCXRpbWVzdGFtcBgWIAEoCzIcLmJ1Zi52YWxpZGF0ZS5UaW1lc3RhbXBSdWxlc0gAQgYKBHR5cGVKBAgYEBlKBAgaEBtSB3NraXBwZWRSDGlnbm9yZV9lbXB0eSJVCg9QcmVkZWZpbmVkUnVsZXMSHwoDY2VsGAEgAygLMhIuYnVmLnZhbGlkYXRlLlJ1bGVKBAgYEBlKBAgaEBtSB3NraXBwZWRSDGlnbm9yZV9lbXB0eSL4FgoKRmxvYXRSdWxlcxJ9CgVjb25zdBgBIAEoAkJuwkhrCmkKC2Zsb2F0LmNvbnN0Glp0aGlzICE9IGdldEZpZWxkKHJ1bGVzLCAnY29uc3QnKSA/ICdtdXN0IGVxdWFsICVzJy5mb3JtYXQoW2dldEZpZWxkKHJ1bGVzLCAnY29uc3QnKV0pIDogJycSmQEKAmx0GAIgASgCQooBwkiGAQqDAQoIZmxvYXQubHQadyFoYXMocnVsZXMuZ3RlKSAmJiAhaGFzKHJ1bGVzLmd0KSAmJiAodGhpcy5pc05hbigpIHx8IHRoaXMgPj0gcnVsZXMubHQpPyAnbXVzdCBiZSBsZXNzIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMubHRdKSA6ICcnSAASqQEKA2x0ZRgDIAEoAkKZAcJIlQEKkgEKCWZsb2F0Lmx0ZRqEASFoYXMocnVsZXMuZ3RlKSAmJiAhaGFzKHJ1bGVzLmd0KSAmJiAodGhpcy5pc05hbigpIHx8IHRoaXMgPiBydWxlcy5sdGUpPyAnbXVzdCBiZSBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJXMnLmZvcm1hdChbcnVsZXMubHRlXSkgOiAnJ0gAEtAHCgJndBgEIAEoAkLBB8JIvQcKhgEKCGZsb2F0Lmd0GnohaGFzKHJ1bGVzLmx0KSAmJiAhaGFzKHJ1bGVzLmx0ZSkgJiYgKHRoaXMuaXNOYW4oKSB8fCB0aGlzIDw9IHJ1bGVzLmd0KT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0XSkgOiAnJwq9AQoLZmxvYXQuZ3RfbHQarQFoYXMocnVsZXMubHQpICYmIHJ1bGVzLmx0ID49IHJ1bGVzLmd0ICYmICh0aGlzLmlzTmFuKCkgfHwgdGhpcyA+PSBydWxlcy5sdCB8fCB0aGlzIDw9IHJ1bGVzLmd0KT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuICVzIGFuZCBsZXNzIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMuZ3QsIHJ1bGVzLmx0XSkgOiAnJwrHAQoVZmxvYXQuZ3RfbHRfZXhjbHVzaXZlGq0BaGFzKHJ1bGVzLmx0KSAmJiBydWxlcy5sdCA8IHJ1bGVzLmd0ICYmICh0aGlzLmlzTmFuKCkgfHwgKHJ1bGVzLmx0IDw9IHRoaXMgJiYgdGhpcyA8PSBydWxlcy5ndCkpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMgb3IgbGVzcyB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0LCBydWxlcy5sdF0pIDogJycKzQEKDGZsb2F0Lmd0X2x0ZRq8AWhhcyhydWxlcy5sdGUpICYmIHJ1bGVzLmx0ZSA+PSBydWxlcy5ndCAmJiAodGhpcy5pc05hbigpIHx8IHRoaXMgPiBydWxlcy5sdGUgfHwgdGhpcyA8PSBydWxlcy5ndCk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiAlcyBhbmQgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICVzJy5mb3JtYXQoW3J1bGVzLmd0LCBydWxlcy5sdGVdKSA6ICcnCtcBChZmbG9hdC5ndF9sdGVfZXhjbHVzaXZlGrwBaGFzKHJ1bGVzLmx0ZSkgJiYgcnVsZXMubHRlIDwgcnVsZXMuZ3QgJiYgKHRoaXMuaXNOYW4oKSB8fCAocnVsZXMubHRlIDwgdGhpcyAmJiB0aGlzIDw9IHJ1bGVzLmd0KSk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiAlcyBvciBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJXMnLmZvcm1hdChbcnVsZXMuZ3QsIHJ1bGVzLmx0ZV0pIDogJydIARKcCAoDZ3RlGAUgASgCQowIwkiICAqVAQoJZmxvYXQuZ3RlGocBIWhhcyhydWxlcy5sdCkgJiYgIWhhcyhydWxlcy5sdGUpICYmICh0aGlzLmlzTmFuKCkgfHwgdGhpcyA8IHJ1bGVzLmd0ZSk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndGVdKSA6ICcnCswBCgxmbG9hdC5ndGVfbHQauwFoYXMocnVsZXMubHQpICYmIHJ1bGVzLmx0ID49IHJ1bGVzLmd0ZSAmJiAodGhpcy5pc05hbigpIHx8IHRoaXMgPj0gcnVsZXMubHQgfHwgdGhpcyA8IHJ1bGVzLmd0ZSk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAlcyBhbmQgbGVzcyB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0ZSwgcnVsZXMubHRdKSA6ICcnCtYBChZmbG9hdC5ndGVfbHRfZXhjbHVzaXZlGrsBaGFzKHJ1bGVzLmx0KSAmJiBydWxlcy5sdCA8IHJ1bGVzLmd0ZSAmJiAodGhpcy5pc05hbigpIHx8IChydWxlcy5sdCA8PSB0aGlzICYmIHRoaXMgPCBydWxlcy5ndGUpKT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzIG9yIGxlc3MgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5ndGUsIHJ1bGVzLmx0XSkgOiAnJwrcAQoNZmxvYXQuZ3RlX2x0ZRrKAWhhcyhydWxlcy5sdGUpICYmIHJ1bGVzLmx0ZSA+PSBydWxlcy5ndGUgJiYgKHRoaXMuaXNOYW4oKSB8fCB0aGlzID4gcnVsZXMubHRlIHx8IHRoaXMgPCBydWxlcy5ndGUpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gJXMgYW5kIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndGUsIHJ1bGVzLmx0ZV0pIDogJycK5gEKF2Zsb2F0Lmd0ZV9sdGVfZXhjbHVzaXZlGsoBaGFzKHJ1bGVzLmx0ZSkgJiYgcnVsZXMubHRlIDwgcnVsZXMuZ3RlICYmICh0aGlzLmlzTmFuKCkgfHwgKHJ1bGVzLmx0ZSA8IHRoaXMgJiYgdGhpcyA8IHJ1bGVzLmd0ZSkpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gJXMgb3IgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICVzJy5mb3JtYXQoW3J1bGVzLmd0ZSwgcnVsZXMubHRlXSkgOiAnJ0gBEnkKAmluGAYgAygCQm3CSGoKaAoIZmxvYXQuaW4aXCEodGhpcyBpbiBnZXRGaWVsZChydWxlcywgJ2luJykpID8gJ211c3QgYmUgaW4gbGlzdCAlcycuZm9ybWF0KFtnZXRGaWVsZChydWxlcywgJ2luJyldKSA6ICcnEnAKBm5vdF9pbhgHIAMoAkJgwkhdClsKDGZsb2F0Lm5vdF9pbhpLdGhpcyBpbiBydWxlcy5ub3RfaW4gPyAnbXVzdCBub3QgYmUgaW4gbGlzdCAlcycuZm9ybWF0KFtydWxlcy5ub3RfaW5dKSA6ICcnEm8KBmZpbml0ZRgIIAEoCEJfwkhcCloKDGZsb2F0LmZpbml0ZRpKcnVsZXMuZmluaXRlID8gKHRoaXMuaXNOYW4oKSB8fCB0aGlzLmlzSW5mKCkgPyAnbXVzdCBiZSBmaW5pdGUnIDogJycpIDogJycSKwoHZXhhbXBsZRgJIAMoAkIawkgXChUKDWZsb2F0LmV4YW1wbGUaBHRydWUqCQjoBxCAgICAAkILCglsZXNzX3RoYW5CDgoMZ3JlYXRlcl90aGFuIooXCgtEb3VibGVSdWxlcxJ+CgVjb25zdBgBIAEoAUJvwkhsCmoKDGRvdWJsZS5jb25zdBpadGhpcyAhPSBnZXRGaWVsZChydWxlcywgJ2NvbnN0JykgPyAnbXVzdCBlcXVhbCAlcycuZm9ybWF0KFtnZXRGaWVsZChydWxlcywgJ2NvbnN0JyldKSA6ICcnEpoBCgJsdBgCIAEoAUKLAcJIhwEKhAEKCWRvdWJsZS5sdBp3IWhhcyhydWxlcy5ndGUpICYmICFoYXMocnVsZXMuZ3QpICYmICh0aGlzLmlzTmFuKCkgfHwgdGhpcyA+PSBydWxlcy5sdCk/ICdtdXN0IGJlIGxlc3MgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5sdF0pIDogJydIABKqAQoDbHRlGAMgASgBQpoBwkiWAQqTAQoKZG91YmxlLmx0ZRqEASFoYXMocnVsZXMuZ3RlKSAmJiAhaGFzKHJ1bGVzLmd0KSAmJiAodGhpcy5pc05hbigpIHx8IHRoaXMgPiBydWxlcy5sdGUpPyAnbXVzdCBiZSBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJXMnLmZvcm1hdChbcnVsZXMubHRlXSkgOiAnJ0gAEtUHCgJndBgEIAEoAULGB8JIwgcKhwEKCWRvdWJsZS5ndBp6IWhhcyhydWxlcy5sdCkgJiYgIWhhcyhydWxlcy5sdGUpICYmICh0aGlzLmlzTmFuKCkgfHwgdGhpcyA8PSBydWxlcy5ndCk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5ndF0pIDogJycKvgEKDGRvdWJsZS5ndF9sdBqtAWhhcyhydWxlcy5sdCkgJiYgcnVsZXMubHQgPj0gcnVsZXMuZ3QgJiYgKHRoaXMuaXNOYW4oKSB8fCB0aGlzID49IHJ1bGVzLmx0IHx8IHRoaXMgPD0gcnVsZXMuZ3QpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMgYW5kIGxlc3MgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5ndCwgcnVsZXMubHRdKSA6ICcnCsgBChZkb3VibGUuZ3RfbHRfZXhjbHVzaXZlGq0BaGFzKHJ1bGVzLmx0KSAmJiBydWxlcy5sdCA8IHJ1bGVzLmd0ICYmICh0aGlzLmlzTmFuKCkgfHwgKHJ1bGVzLmx0IDw9IHRoaXMgJiYgdGhpcyA8PSBydWxlcy5ndCkpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMgb3IgbGVzcyB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0LCBydWxlcy5sdF0pIDogJycKzgEKDWRvdWJsZS5ndF9sdGUavAFoYXMocnVsZXMubHRlKSAmJiBydWxlcy5sdGUgPj0gcnVsZXMuZ3QgJiYgKHRoaXMuaXNOYW4oKSB8fCB0aGlzID4gcnVsZXMubHRlIHx8IHRoaXMgPD0gcnVsZXMuZ3QpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMgYW5kIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndCwgcnVsZXMubHRlXSkgOiAnJwrYAQoXZG91YmxlLmd0X2x0ZV9leGNsdXNpdmUavAFoYXMocnVsZXMubHRlKSAmJiBydWxlcy5sdGUgPCBydWxlcy5ndCAmJiAodGhpcy5pc05hbigpIHx8IChydWxlcy5sdGUgPCB0aGlzICYmIHRoaXMgPD0gcnVsZXMuZ3QpKT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuICVzIG9yIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndCwgcnVsZXMubHRlXSkgOiAnJ0gBEqEICgNndGUYBSABKAFCkQjCSI0ICpYBCgpkb3VibGUuZ3RlGocBIWhhcyhydWxlcy5sdCkgJiYgIWhhcyhydWxlcy5sdGUpICYmICh0aGlzLmlzTmFuKCkgfHwgdGhpcyA8IHJ1bGVzLmd0ZSk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndGVdKSA6ICcnCs0BCg1kb3VibGUuZ3RlX2x0GrsBaGFzKHJ1bGVzLmx0KSAmJiBydWxlcy5sdCA+PSBydWxlcy5ndGUgJiYgKHRoaXMuaXNOYW4oKSB8fCB0aGlzID49IHJ1bGVzLmx0IHx8IHRoaXMgPCBydWxlcy5ndGUpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gJXMgYW5kIGxlc3MgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5ndGUsIHJ1bGVzLmx0XSkgOiAnJwrXAQoXZG91YmxlLmd0ZV9sdF9leGNsdXNpdmUauwFoYXMocnVsZXMubHQpICYmIHJ1bGVzLmx0IDwgcnVsZXMuZ3RlICYmICh0aGlzLmlzTmFuKCkgfHwgKHJ1bGVzLmx0IDw9IHRoaXMgJiYgdGhpcyA8IHJ1bGVzLmd0ZSkpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gJXMgb3IgbGVzcyB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0ZSwgcnVsZXMubHRdKSA6ICcnCt0BCg5kb3VibGUuZ3RlX2x0ZRrKAWhhcyhydWxlcy5sdGUpICYmIHJ1bGVzLmx0ZSA+PSBydWxlcy5ndGUgJiYgKHRoaXMuaXNOYW4oKSB8fCB0aGlzID4gcnVsZXMubHRlIHx8IHRoaXMgPCBydWxlcy5ndGUpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gJXMgYW5kIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndGUsIHJ1bGVzLmx0ZV0pIDogJycK5wEKGGRvdWJsZS5ndGVfbHRlX2V4Y2x1c2l2ZRrKAWhhcyhydWxlcy5sdGUpICYmIHJ1bGVzLmx0ZSA8IHJ1bGVzLmd0ZSAmJiAodGhpcy5pc05hbigpIHx8IChydWxlcy5sdGUgPCB0aGlzICYmIHRoaXMgPCBydWxlcy5ndGUpKT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzIG9yIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndGUsIHJ1bGVzLmx0ZV0pIDogJydIARJ6CgJpbhgGIAMoAUJuwkhrCmkKCWRvdWJsZS5pbhpcISh0aGlzIGluIGdldEZpZWxkKHJ1bGVzLCAnaW4nKSkgPyAnbXVzdCBiZSBpbiBsaXN0ICVzJy5mb3JtYXQoW2dldEZpZWxkKHJ1bGVzLCAnaW4nKV0pIDogJycScQoGbm90X2luGAcgAygBQmHCSF4KXAoNZG91YmxlLm5vdF9pbhpLdGhpcyBpbiBydWxlcy5ub3RfaW4gPyAnbXVzdCBub3QgYmUgaW4gbGlzdCAlcycuZm9ybWF0KFtydWxlcy5ub3RfaW5dKSA6ICcnEnAKBmZpbml0ZRgIIAEoCEJgwkhdClsKDWRvdWJsZS5maW5pdGUaSnJ1bGVzLmZpbml0ZSA/ICh0aGlzLmlzTmFuKCkgfHwgdGhpcy5pc0luZigpID8gJ211c3QgYmUgZmluaXRlJyA6ICcnKSA6ICcnEiwKB2V4YW1wbGUYCSADKAFCG8JIGAoWCg5kb3VibGUuZXhhbXBsZRoEdHJ1ZSoJCOgHEICAgIACQgsKCWxlc3NfdGhhbkIOCgxncmVhdGVyX3RoYW4isBQKCkludDMyUnVsZXMSfQoFY29uc3QYASABKAVCbsJIawppCgtpbnQzMi5jb25zdBpadGhpcyAhPSBnZXRGaWVsZChydWxlcywgJ2NvbnN0JykgPyAnbXVzdCBlcXVhbCAlcycuZm9ybWF0KFtnZXRGaWVsZChydWxlcywgJ2NvbnN0JyldKSA6ICcnEoQBCgJsdBgCIAEoBUJ2wkhzCnEKCGludDMyLmx0GmUhaGFzKHJ1bGVzLmd0ZSkgJiYgIWhhcyhydWxlcy5ndCkgJiYgdGhpcyA+PSBydWxlcy5sdD8gJ211c3QgYmUgbGVzcyB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmx0XSkgOiAnJ0gAEpUBCgNsdGUYAyABKAVChQHCSIEBCn8KCWludDMyLmx0ZRpyIWhhcyhydWxlcy5ndGUpICYmICFoYXMocnVsZXMuZ3QpICYmIHRoaXMgPiBydWxlcy5sdGU/ICdtdXN0IGJlIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5sdGVdKSA6ICcnSAAS+QYKAmd0GAQgASgFQuoGwkjmBgp0CghpbnQzMi5ndBpoIWhhcyhydWxlcy5sdCkgJiYgIWhhcyhydWxlcy5sdGUpICYmIHRoaXMgPD0gcnVsZXMuZ3Q/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5ndF0pIDogJycKrQEKC2ludDMyLmd0X2x0Gp0BaGFzKHJ1bGVzLmx0KSAmJiBydWxlcy5sdCA+PSBydWxlcy5ndCAmJiAodGhpcyA+PSBydWxlcy5sdCB8fCB0aGlzIDw9IHJ1bGVzLmd0KT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuICVzIGFuZCBsZXNzIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMuZ3QsIHJ1bGVzLmx0XSkgOiAnJwq1AQoVaW50MzIuZ3RfbHRfZXhjbHVzaXZlGpsBaGFzKHJ1bGVzLmx0KSAmJiBydWxlcy5sdCA8IHJ1bGVzLmd0ICYmIChydWxlcy5sdCA8PSB0aGlzICYmIHRoaXMgPD0gcnVsZXMuZ3QpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMgb3IgbGVzcyB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0LCBydWxlcy5sdF0pIDogJycKvQEKDGludDMyLmd0X2x0ZRqsAWhhcyhydWxlcy5sdGUpICYmIHJ1bGVzLmx0ZSA+PSBydWxlcy5ndCAmJiAodGhpcyA+IHJ1bGVzLmx0ZSB8fCB0aGlzIDw9IHJ1bGVzLmd0KT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuICVzIGFuZCBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJXMnLmZvcm1hdChbcnVsZXMuZ3QsIHJ1bGVzLmx0ZV0pIDogJycKxQEKFmludDMyLmd0X2x0ZV9leGNsdXNpdmUaqgFoYXMocnVsZXMubHRlKSAmJiBydWxlcy5sdGUgPCBydWxlcy5ndCAmJiAocnVsZXMubHRlIDwgdGhpcyAmJiB0aGlzIDw9IHJ1bGVzLmd0KT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuICVzIG9yIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndCwgcnVsZXMubHRlXSkgOiAnJ0gBEsUHCgNndGUYBSABKAVCtQfCSLEHCoIBCglpbnQzMi5ndGUadSFoYXMocnVsZXMubHQpICYmICFoYXMocnVsZXMubHRlKSAmJiB0aGlzIDwgcnVsZXMuZ3RlPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gJXMnLmZvcm1hdChbcnVsZXMuZ3RlXSkgOiAnJwq8AQoMaW50MzIuZ3RlX2x0GqsBaGFzKHJ1bGVzLmx0KSAmJiBydWxlcy5sdCA+PSBydWxlcy5ndGUgJiYgKHRoaXMgPj0gcnVsZXMubHQgfHwgdGhpcyA8IHJ1bGVzLmd0ZSk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAlcyBhbmQgbGVzcyB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0ZSwgcnVsZXMubHRdKSA6ICcnCsQBChZpbnQzMi5ndGVfbHRfZXhjbHVzaXZlGqkBaGFzKHJ1bGVzLmx0KSAmJiBydWxlcy5sdCA8IHJ1bGVzLmd0ZSAmJiAocnVsZXMubHQgPD0gdGhpcyAmJiB0aGlzIDwgcnVsZXMuZ3RlKT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzIG9yIGxlc3MgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5ndGUsIHJ1bGVzLmx0XSkgOiAnJwrMAQoNaW50MzIuZ3RlX2x0ZRq6AWhhcyhydWxlcy5sdGUpICYmIHJ1bGVzLmx0ZSA+PSBydWxlcy5ndGUgJiYgKHRoaXMgPiBydWxlcy5sdGUgfHwgdGhpcyA8IHJ1bGVzLmd0ZSk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAlcyBhbmQgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICVzJy5mb3JtYXQoW3J1bGVzLmd0ZSwgcnVsZXMubHRlXSkgOiAnJwrUAQoXaW50MzIuZ3RlX2x0ZV9leGNsdXNpdmUauAFoYXMocnVsZXMubHRlKSAmJiBydWxlcy5sdGUgPCBydWxlcy5ndGUgJiYgKHJ1bGVzLmx0ZSA8IHRoaXMgJiYgdGhpcyA8IHJ1bGVzLmd0ZSk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAlcyBvciBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJXMnLmZvcm1hdChbcnVsZXMuZ3RlLCBydWxlcy5sdGVdKSA6ICcnSAESeQoCaW4YBiADKAVCbcJIagpoCghpbnQzMi5pbhpcISh0aGlzIGluIGdldEZpZWxkKHJ1bGVzLCAnaW4nKSkgPyAnbXVzdCBiZSBpbiBsaXN0ICVzJy5mb3JtYXQoW2dldEZpZWxkKHJ1bGVzLCAnaW4nKV0pIDogJycScAoGbm90X2luGAcgAygFQmDCSF0KWwoMaW50MzIubm90X2luGkt0aGlzIGluIHJ1bGVzLm5vdF9pbiA/ICdtdXN0IG5vdCBiZSBpbiBsaXN0ICVzJy5mb3JtYXQoW3J1bGVzLm5vdF9pbl0pIDogJycSKwoHZXhhbXBsZRgIIAMoBUIawkgXChUKDWludDMyLmV4YW1wbGUaBHRydWUqCQjoBxCAgICAAkILCglsZXNzX3RoYW5CDgoMZ3JlYXRlcl90aGFuIrAUCgpJbnQ2NFJ1bGVzEn0KBWNvbnN0GAEgASgDQm7CSGsKaQoLaW50NjQuY29uc3QaWnRoaXMgIT0gZ2V0RmllbGQocnVsZXMsICdjb25zdCcpID8gJ211c3QgZXF1YWwgJXMnLmZvcm1hdChbZ2V0RmllbGQocnVsZXMsICdjb25zdCcpXSkgOiAnJxKEAQoCbHQYAiABKANCdsJIcwpxCghpbnQ2NC5sdBplIWhhcyhydWxlcy5ndGUpICYmICFoYXMocnVsZXMuZ3QpICYmIHRoaXMgPj0gcnVsZXMubHQ/ICdtdXN0IGJlIGxlc3MgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5sdF0pIDogJydIABKVAQoDbHRlGAMgASgDQoUBwkiBAQp/CglpbnQ2NC5sdGUaciFoYXMocnVsZXMuZ3RlKSAmJiAhaGFzKHJ1bGVzLmd0KSAmJiB0aGlzID4gcnVsZXMubHRlPyAnbXVzdCBiZSBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJXMnLmZvcm1hdChbcnVsZXMubHRlXSkgOiAnJ0gAEvkGCgJndBgEIAEoA0LqBsJI5gYKdAoIaW50NjQuZ3QaaCFoYXMocnVsZXMubHQpICYmICFoYXMocnVsZXMubHRlKSAmJiB0aGlzIDw9IHJ1bGVzLmd0PyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMuZ3RdKSA6ICcnCq0BCgtpbnQ2NC5ndF9sdBqdAWhhcyhydWxlcy5sdCkgJiYgcnVsZXMubHQgPj0gcnVsZXMuZ3QgJiYgKHRoaXMgPj0gcnVsZXMubHQgfHwgdGhpcyA8PSBydWxlcy5ndCk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiAlcyBhbmQgbGVzcyB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0LCBydWxlcy5sdF0pIDogJycKtQEKFWludDY0Lmd0X2x0X2V4Y2x1c2l2ZRqbAWhhcyhydWxlcy5sdCkgJiYgcnVsZXMubHQgPCBydWxlcy5ndCAmJiAocnVsZXMubHQgPD0gdGhpcyAmJiB0aGlzIDw9IHJ1bGVzLmd0KT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuICVzIG9yIGxlc3MgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5ndCwgcnVsZXMubHRdKSA6ICcnCr0BCgxpbnQ2NC5ndF9sdGUarAFoYXMocnVsZXMubHRlKSAmJiBydWxlcy5sdGUgPj0gcnVsZXMuZ3QgJiYgKHRoaXMgPiBydWxlcy5sdGUgfHwgdGhpcyA8PSBydWxlcy5ndCk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiAlcyBhbmQgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICVzJy5mb3JtYXQoW3J1bGVzLmd0LCBydWxlcy5sdGVdKSA6ICcnCsUBChZpbnQ2NC5ndF9sdGVfZXhjbHVzaXZlGqoBaGFzKHJ1bGVzLmx0ZSkgJiYgcnVsZXMubHRlIDwgcnVsZXMuZ3QgJiYgKHJ1bGVzLmx0ZSA8IHRoaXMgJiYgdGhpcyA8PSBydWxlcy5ndCk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiAlcyBvciBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJXMnLmZvcm1hdChbcnVsZXMuZ3QsIHJ1bGVzLmx0ZV0pIDogJydIARLFBwoDZ3RlGAUgASgDQrUHwkixBwqCAQoJaW50NjQuZ3RlGnUhaGFzKHJ1bGVzLmx0KSAmJiAhaGFzKHJ1bGVzLmx0ZSkgJiYgdGhpcyA8IHJ1bGVzLmd0ZT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzJy5mb3JtYXQoW3J1bGVzLmd0ZV0pIDogJycKvAEKDGludDY0Lmd0ZV9sdBqrAWhhcyhydWxlcy5sdCkgJiYgcnVsZXMubHQgPj0gcnVsZXMuZ3RlICYmICh0aGlzID49IHJ1bGVzLmx0IHx8IHRoaXMgPCBydWxlcy5ndGUpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gJXMgYW5kIGxlc3MgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5ndGUsIHJ1bGVzLmx0XSkgOiAnJwrEAQoWaW50NjQuZ3RlX2x0X2V4Y2x1c2l2ZRqpAWhhcyhydWxlcy5sdCkgJiYgcnVsZXMubHQgPCBydWxlcy5ndGUgJiYgKHJ1bGVzLmx0IDw9IHRoaXMgJiYgdGhpcyA8IHJ1bGVzLmd0ZSk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAlcyBvciBsZXNzIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMuZ3RlLCBydWxlcy5sdF0pIDogJycKzAEKDWludDY0Lmd0ZV9sdGUaugFoYXMocnVsZXMubHRlKSAmJiBydWxlcy5sdGUgPj0gcnVsZXMuZ3RlICYmICh0aGlzID4gcnVsZXMubHRlIHx8IHRoaXMgPCBydWxlcy5ndGUpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gJXMgYW5kIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndGUsIHJ1bGVzLmx0ZV0pIDogJycK1AEKF2ludDY0Lmd0ZV9sdGVfZXhjbHVzaXZlGrgBaGFzKHJ1bGVzLmx0ZSkgJiYgcnVsZXMubHRlIDwgcnVsZXMuZ3RlICYmIChydWxlcy5sdGUgPCB0aGlzICYmIHRoaXMgPCBydWxlcy5ndGUpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gJXMgb3IgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICVzJy5mb3JtYXQoW3J1bGVzLmd0ZSwgcnVsZXMubHRlXSkgOiAnJ0gBEnkKAmluGAYgAygDQm3CSGoKaAoIaW50NjQuaW4aXCEodGhpcyBpbiBnZXRGaWVsZChydWxlcywgJ2luJykpID8gJ211c3QgYmUgaW4gbGlzdCAlcycuZm9ybWF0KFtnZXRGaWVsZChydWxlcywgJ2luJyldKSA6ICcnEnAKBm5vdF9pbhgHIAMoA0JgwkhdClsKDGludDY0Lm5vdF9pbhpLdGhpcyBpbiBydWxlcy5ub3RfaW4gPyAnbXVzdCBub3QgYmUgaW4gbGlzdCAlcycuZm9ybWF0KFtydWxlcy5ub3RfaW5dKSA6ICcnEisKB2V4YW1wbGUYCSADKANCGsJIFwoVCg1pbnQ2NC5leGFtcGxlGgR0cnVlKgkI6AcQgICAgAJCCwoJbGVzc190aGFuQg4KDGdyZWF0ZXJfdGhhbiLCFAoLVUludDMyUnVsZXMSfgoFY29uc3QYASABKA1Cb8JIbApqCgx1aW50MzIuY29uc3QaWnRoaXMgIT0gZ2V0RmllbGQocnVsZXMsICdjb25zdCcpID8gJ211c3QgZXF1YWwgJXMnLmZvcm1hdChbZ2V0RmllbGQocnVsZXMsICdjb25zdCcpXSkgOiAnJxKFAQoCbHQYAiABKA1Cd8JIdApyCgl1aW50MzIubHQaZSFoYXMocnVsZXMuZ3RlKSAmJiAhaGFzKHJ1bGVzLmd0KSAmJiB0aGlzID49IHJ1bGVzLmx0PyAnbXVzdCBiZSBsZXNzIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMubHRdKSA6ICcnSAASlwEKA2x0ZRgDIAEoDUKHAcJIgwEKgAEKCnVpbnQzMi5sdGUaciFoYXMocnVsZXMuZ3RlKSAmJiAhaGFzKHJ1bGVzLmd0KSAmJiB0aGlzID4gcnVsZXMubHRlPyAnbXVzdCBiZSBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJXMnLmZvcm1hdChbcnVsZXMubHRlXSkgOiAnJ0gAEv4GCgJndBgEIAEoDULvBsJI6wYKdQoJdWludDMyLmd0GmghaGFzKHJ1bGVzLmx0KSAmJiAhaGFzKHJ1bGVzLmx0ZSkgJiYgdGhpcyA8PSBydWxlcy5ndD8gJ211c3QgYmUgZ3JlYXRlciB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0XSkgOiAnJwquAQoMdWludDMyLmd0X2x0Gp0BaGFzKHJ1bGVzLmx0KSAmJiBydWxlcy5sdCA+PSBydWxlcy5ndCAmJiAodGhpcyA+PSBydWxlcy5sdCB8fCB0aGlzIDw9IHJ1bGVzLmd0KT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuICVzIGFuZCBsZXNzIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMuZ3QsIHJ1bGVzLmx0XSkgOiAnJwq2AQoWdWludDMyLmd0X2x0X2V4Y2x1c2l2ZRqbAWhhcyhydWxlcy5sdCkgJiYgcnVsZXMubHQgPCBydWxlcy5ndCAmJiAocnVsZXMubHQgPD0gdGhpcyAmJiB0aGlzIDw9IHJ1bGVzLmd0KT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuICVzIG9yIGxlc3MgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5ndCwgcnVsZXMubHRdKSA6ICcnCr4BCg11aW50MzIuZ3RfbHRlGqwBaGFzKHJ1bGVzLmx0ZSkgJiYgcnVsZXMubHRlID49IHJ1bGVzLmd0ICYmICh0aGlzID4gcnVsZXMubHRlIHx8IHRoaXMgPD0gcnVsZXMuZ3QpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMgYW5kIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndCwgcnVsZXMubHRlXSkgOiAnJwrGAQoXdWludDMyLmd0X2x0ZV9leGNsdXNpdmUaqgFoYXMocnVsZXMubHRlKSAmJiBydWxlcy5sdGUgPCBydWxlcy5ndCAmJiAocnVsZXMubHRlIDwgdGhpcyAmJiB0aGlzIDw9IHJ1bGVzLmd0KT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuICVzIG9yIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndCwgcnVsZXMubHRlXSkgOiAnJ0gBEsoHCgNndGUYBSABKA1CugfCSLYHCoMBCgp1aW50MzIuZ3RlGnUhaGFzKHJ1bGVzLmx0KSAmJiAhaGFzKHJ1bGVzLmx0ZSkgJiYgdGhpcyA8IHJ1bGVzLmd0ZT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzJy5mb3JtYXQoW3J1bGVzLmd0ZV0pIDogJycKvQEKDXVpbnQzMi5ndGVfbHQaqwFoYXMocnVsZXMubHQpICYmIHJ1bGVzLmx0ID49IHJ1bGVzLmd0ZSAmJiAodGhpcyA+PSBydWxlcy5sdCB8fCB0aGlzIDwgcnVsZXMuZ3RlKT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzIGFuZCBsZXNzIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMuZ3RlLCBydWxlcy5sdF0pIDogJycKxQEKF3VpbnQzMi5ndGVfbHRfZXhjbHVzaXZlGqkBaGFzKHJ1bGVzLmx0KSAmJiBydWxlcy5sdCA8IHJ1bGVzLmd0ZSAmJiAocnVsZXMubHQgPD0gdGhpcyAmJiB0aGlzIDwgcnVsZXMuZ3RlKT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzIG9yIGxlc3MgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5ndGUsIHJ1bGVzLmx0XSkgOiAnJwrNAQoOdWludDMyLmd0ZV9sdGUaugFoYXMocnVsZXMubHRlKSAmJiBydWxlcy5sdGUgPj0gcnVsZXMuZ3RlICYmICh0aGlzID4gcnVsZXMubHRlIHx8IHRoaXMgPCBydWxlcy5ndGUpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gJXMgYW5kIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndGUsIHJ1bGVzLmx0ZV0pIDogJycK1QEKGHVpbnQzMi5ndGVfbHRlX2V4Y2x1c2l2ZRq4AWhhcyhydWxlcy5sdGUpICYmIHJ1bGVzLmx0ZSA8IHJ1bGVzLmd0ZSAmJiAocnVsZXMubHRlIDwgdGhpcyAmJiB0aGlzIDwgcnVsZXMuZ3RlKT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzIG9yIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndGUsIHJ1bGVzLmx0ZV0pIDogJydIARJ6CgJpbhgGIAMoDUJuwkhrCmkKCXVpbnQzMi5pbhpcISh0aGlzIGluIGdldEZpZWxkKHJ1bGVzLCAnaW4nKSkgPyAnbXVzdCBiZSBpbiBsaXN0ICVzJy5mb3JtYXQoW2dldEZpZWxkKHJ1bGVzLCAnaW4nKV0pIDogJycScQoGbm90X2luGAcgAygNQmHCSF4KXAoNdWludDMyLm5vdF9pbhpLdGhpcyBpbiBydWxlcy5ub3RfaW4gPyAnbXVzdCBub3QgYmUgaW4gbGlzdCAlcycuZm9ybWF0KFtydWxlcy5ub3RfaW5dKSA6ICcnEiwKB2V4YW1wbGUYCCADKA1CG8JIGAoWCg51aW50MzIuZXhhbXBsZRoEdHJ1ZSoJCOgHEICAgIACQgsKCWxlc3NfdGhhbkIOCgxncmVhdGVyX3RoYW4iwhQKC1VJbnQ2NFJ1bGVzEn4KBWNvbnN0GAEgASgEQm/CSGwKagoMdWludDY0LmNvbnN0Glp0aGlzICE9IGdldEZpZWxkKHJ1bGVzLCAnY29uc3QnKSA/ICdtdXN0IGVxdWFsICVzJy5mb3JtYXQoW2dldEZpZWxkKHJ1bGVzLCAnY29uc3QnKV0pIDogJycShQEKAmx0GAIgASgEQnfCSHQKcgoJdWludDY0Lmx0GmUhaGFzKHJ1bGVzLmd0ZSkgJiYgIWhhcyhydWxlcy5ndCkgJiYgdGhpcyA+PSBydWxlcy5sdD8gJ211c3QgYmUgbGVzcyB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmx0XSkgOiAnJ0gAEpcBCgNsdGUYAyABKARChwHCSIMBCoABCgp1aW50NjQubHRlGnIhaGFzKHJ1bGVzLmd0ZSkgJiYgIWhhcyhydWxlcy5ndCkgJiYgdGhpcyA+IHJ1bGVzLmx0ZT8gJ211c3QgYmUgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICVzJy5mb3JtYXQoW3J1bGVzLmx0ZV0pIDogJydIABL+BgoCZ3QYBCABKARC7wbCSOsGCnUKCXVpbnQ2NC5ndBpoIWhhcyhydWxlcy5sdCkgJiYgIWhhcyhydWxlcy5sdGUpICYmIHRoaXMgPD0gcnVsZXMuZ3Q/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5ndF0pIDogJycKrgEKDHVpbnQ2NC5ndF9sdBqdAWhhcyhydWxlcy5sdCkgJiYgcnVsZXMubHQgPj0gcnVsZXMuZ3QgJiYgKHRoaXMgPj0gcnVsZXMubHQgfHwgdGhpcyA8PSBydWxlcy5ndCk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiAlcyBhbmQgbGVzcyB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0LCBydWxlcy5sdF0pIDogJycKtgEKFnVpbnQ2NC5ndF9sdF9leGNsdXNpdmUamwFoYXMocnVsZXMubHQpICYmIHJ1bGVzLmx0IDwgcnVsZXMuZ3QgJiYgKHJ1bGVzLmx0IDw9IHRoaXMgJiYgdGhpcyA8PSBydWxlcy5ndCk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiAlcyBvciBsZXNzIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMuZ3QsIHJ1bGVzLmx0XSkgOiAnJwq+AQoNdWludDY0Lmd0X2x0ZRqsAWhhcyhydWxlcy5sdGUpICYmIHJ1bGVzLmx0ZSA+PSBydWxlcy5ndCAmJiAodGhpcyA+IHJ1bGVzLmx0ZSB8fCB0aGlzIDw9IHJ1bGVzLmd0KT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuICVzIGFuZCBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJXMnLmZvcm1hdChbcnVsZXMuZ3QsIHJ1bGVzLmx0ZV0pIDogJycKxgEKF3VpbnQ2NC5ndF9sdGVfZXhjbHVzaXZlGqoBaGFzKHJ1bGVzLmx0ZSkgJiYgcnVsZXMubHRlIDwgcnVsZXMuZ3QgJiYgKHJ1bGVzLmx0ZSA8IHRoaXMgJiYgdGhpcyA8PSBydWxlcy5ndCk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiAlcyBvciBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJXMnLmZvcm1hdChbcnVsZXMuZ3QsIHJ1bGVzLmx0ZV0pIDogJydIARLKBwoDZ3RlGAUgASgEQroHwki2BwqDAQoKdWludDY0Lmd0ZRp1IWhhcyhydWxlcy5sdCkgJiYgIWhhcyhydWxlcy5sdGUpICYmIHRoaXMgPCBydWxlcy5ndGU/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndGVdKSA6ICcnCr0BCg11aW50NjQuZ3RlX2x0GqsBaGFzKHJ1bGVzLmx0KSAmJiBydWxlcy5sdCA+PSBydWxlcy5ndGUgJiYgKHRoaXMgPj0gcnVsZXMubHQgfHwgdGhpcyA8IHJ1bGVzLmd0ZSk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAlcyBhbmQgbGVzcyB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0ZSwgcnVsZXMubHRdKSA6ICcnCsUBChd1aW50NjQuZ3RlX2x0X2V4Y2x1c2l2ZRqpAWhhcyhydWxlcy5sdCkgJiYgcnVsZXMubHQgPCBydWxlcy5ndGUgJiYgKHJ1bGVzLmx0IDw9IHRoaXMgJiYgdGhpcyA8IHJ1bGVzLmd0ZSk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAlcyBvciBsZXNzIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMuZ3RlLCBydWxlcy5sdF0pIDogJycKzQEKDnVpbnQ2NC5ndGVfbHRlGroBaGFzKHJ1bGVzLmx0ZSkgJiYgcnVsZXMubHRlID49IHJ1bGVzLmd0ZSAmJiAodGhpcyA+IHJ1bGVzLmx0ZSB8fCB0aGlzIDwgcnVsZXMuZ3RlKT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzIGFuZCBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJXMnLmZvcm1hdChbcnVsZXMuZ3RlLCBydWxlcy5sdGVdKSA6ICcnCtUBChh1aW50NjQuZ3RlX2x0ZV9leGNsdXNpdmUauAFoYXMocnVsZXMubHRlKSAmJiBydWxlcy5sdGUgPCBydWxlcy5ndGUgJiYgKHJ1bGVzLmx0ZSA8IHRoaXMgJiYgdGhpcyA8IHJ1bGVzLmd0ZSk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAlcyBvciBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJXMnLmZvcm1hdChbcnVsZXMuZ3RlLCBydWxlcy5sdGVdKSA6ICcnSAESegoCaW4YBiADKARCbsJIawppCgl1aW50NjQuaW4aXCEodGhpcyBpbiBnZXRGaWVsZChydWxlcywgJ2luJykpID8gJ211c3QgYmUgaW4gbGlzdCAlcycuZm9ybWF0KFtnZXRGaWVsZChydWxlcywgJ2luJyldKSA6ICcnEnEKBm5vdF9pbhgHIAMoBEJhwkheClwKDXVpbnQ2NC5ub3RfaW4aS3RoaXMgaW4gcnVsZXMubm90X2luID8gJ211c3Qgbm90IGJlIGluIGxpc3QgJXMnLmZvcm1hdChbcnVsZXMubm90X2luXSkgOiAnJxIsCgdleGFtcGxlGAggAygEQhvCSBgKFgoOdWludDY0LmV4YW1wbGUaBHRydWUqCQjoBxCAgICAAkILCglsZXNzX3RoYW5CDgoMZ3JlYXRlcl90aGFuIsIUCgtTSW50MzJSdWxlcxJ+CgVjb25zdBgBIAEoEUJvwkhsCmoKDHNpbnQzMi5jb25zdBpadGhpcyAhPSBnZXRGaWVsZChydWxlcywgJ2NvbnN0JykgPyAnbXVzdCBlcXVhbCAlcycuZm9ybWF0KFtnZXRGaWVsZChydWxlcywgJ2NvbnN0JyldKSA6ICcnEoUBCgJsdBgCIAEoEUJ3wkh0CnIKCXNpbnQzMi5sdBplIWhhcyhydWxlcy5ndGUpICYmICFoYXMocnVsZXMuZ3QpICYmIHRoaXMgPj0gcnVsZXMubHQ/ICdtdXN0IGJlIGxlc3MgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5sdF0pIDogJydIABKXAQoDbHRlGAMgASgRQocBwkiDAQqAAQoKc2ludDMyLmx0ZRpyIWhhcyhydWxlcy5ndGUpICYmICFoYXMocnVsZXMuZ3QpICYmIHRoaXMgPiBydWxlcy5sdGU/ICdtdXN0IGJlIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5sdGVdKSA6ICcnSAAS/gYKAmd0GAQgASgRQu8GwkjrBgp1CglzaW50MzIuZ3QaaCFoYXMocnVsZXMubHQpICYmICFoYXMocnVsZXMubHRlKSAmJiB0aGlzIDw9IHJ1bGVzLmd0PyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMuZ3RdKSA6ICcnCq4BCgxzaW50MzIuZ3RfbHQanQFoYXMocnVsZXMubHQpICYmIHJ1bGVzLmx0ID49IHJ1bGVzLmd0ICYmICh0aGlzID49IHJ1bGVzLmx0IHx8IHRoaXMgPD0gcnVsZXMuZ3QpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMgYW5kIGxlc3MgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5ndCwgcnVsZXMubHRdKSA6ICcnCrYBChZzaW50MzIuZ3RfbHRfZXhjbHVzaXZlGpsBaGFzKHJ1bGVzLmx0KSAmJiBydWxlcy5sdCA8IHJ1bGVzLmd0ICYmIChydWxlcy5sdCA8PSB0aGlzICYmIHRoaXMgPD0gcnVsZXMuZ3QpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMgb3IgbGVzcyB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0LCBydWxlcy5sdF0pIDogJycKvgEKDXNpbnQzMi5ndF9sdGUarAFoYXMocnVsZXMubHRlKSAmJiBydWxlcy5sdGUgPj0gcnVsZXMuZ3QgJiYgKHRoaXMgPiBydWxlcy5sdGUgfHwgdGhpcyA8PSBydWxlcy5ndCk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiAlcyBhbmQgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICVzJy5mb3JtYXQoW3J1bGVzLmd0LCBydWxlcy5sdGVdKSA6ICcnCsYBChdzaW50MzIuZ3RfbHRlX2V4Y2x1c2l2ZRqqAWhhcyhydWxlcy5sdGUpICYmIHJ1bGVzLmx0ZSA8IHJ1bGVzLmd0ICYmIChydWxlcy5sdGUgPCB0aGlzICYmIHRoaXMgPD0gcnVsZXMuZ3QpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMgb3IgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICVzJy5mb3JtYXQoW3J1bGVzLmd0LCBydWxlcy5sdGVdKSA6ICcnSAESygcKA2d0ZRgFIAEoEUK6B8JItgcKgwEKCnNpbnQzMi5ndGUadSFoYXMocnVsZXMubHQpICYmICFoYXMocnVsZXMubHRlKSAmJiB0aGlzIDwgcnVsZXMuZ3RlPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gJXMnLmZvcm1hdChbcnVsZXMuZ3RlXSkgOiAnJwq9AQoNc2ludDMyLmd0ZV9sdBqrAWhhcyhydWxlcy5sdCkgJiYgcnVsZXMubHQgPj0gcnVsZXMuZ3RlICYmICh0aGlzID49IHJ1bGVzLmx0IHx8IHRoaXMgPCBydWxlcy5ndGUpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gJXMgYW5kIGxlc3MgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5ndGUsIHJ1bGVzLmx0XSkgOiAnJwrFAQoXc2ludDMyLmd0ZV9sdF9leGNsdXNpdmUaqQFoYXMocnVsZXMubHQpICYmIHJ1bGVzLmx0IDwgcnVsZXMuZ3RlICYmIChydWxlcy5sdCA8PSB0aGlzICYmIHRoaXMgPCBydWxlcy5ndGUpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gJXMgb3IgbGVzcyB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0ZSwgcnVsZXMubHRdKSA6ICcnCs0BCg5zaW50MzIuZ3RlX2x0ZRq6AWhhcyhydWxlcy5sdGUpICYmIHJ1bGVzLmx0ZSA+PSBydWxlcy5ndGUgJiYgKHRoaXMgPiBydWxlcy5sdGUgfHwgdGhpcyA8IHJ1bGVzLmd0ZSk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAlcyBhbmQgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICVzJy5mb3JtYXQoW3J1bGVzLmd0ZSwgcnVsZXMubHRlXSkgOiAnJwrVAQoYc2ludDMyLmd0ZV9sdGVfZXhjbHVzaXZlGrgBaGFzKHJ1bGVzLmx0ZSkgJiYgcnVsZXMubHRlIDwgcnVsZXMuZ3RlICYmIChydWxlcy5sdGUgPCB0aGlzICYmIHRoaXMgPCBydWxlcy5ndGUpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gJXMgb3IgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICVzJy5mb3JtYXQoW3J1bGVzLmd0ZSwgcnVsZXMubHRlXSkgOiAnJ0gBEnoKAmluGAYgAygRQm7CSGsKaQoJc2ludDMyLmluGlwhKHRoaXMgaW4gZ2V0RmllbGQocnVsZXMsICdpbicpKSA/ICdtdXN0IGJlIGluIGxpc3QgJXMnLmZvcm1hdChbZ2V0RmllbGQocnVsZXMsICdpbicpXSkgOiAnJxJxCgZub3RfaW4YByADKBFCYcJIXgpcCg1zaW50MzIubm90X2luGkt0aGlzIGluIHJ1bGVzLm5vdF9pbiA/ICdtdXN0IG5vdCBiZSBpbiBsaXN0ICVzJy5mb3JtYXQoW3J1bGVzLm5vdF9pbl0pIDogJycSLAoHZXhhbXBsZRgIIAMoEUIbwkgYChYKDnNpbnQzMi5leGFtcGxlGgR0cnVlKgkI6AcQgICAgAJCCwoJbGVzc190aGFuQg4KDGdyZWF0ZXJfdGhhbiLCFAoLU0ludDY0UnVsZXMSfgoFY29uc3QYASABKBJCb8JIbApqCgxzaW50NjQuY29uc3QaWnRoaXMgIT0gZ2V0RmllbGQocnVsZXMsICdjb25zdCcpID8gJ211c3QgZXF1YWwgJXMnLmZvcm1hdChbZ2V0RmllbGQocnVsZXMsICdjb25zdCcpXSkgOiAnJxKFAQoCbHQYAiABKBJCd8JIdApyCglzaW50NjQubHQaZSFoYXMocnVsZXMuZ3RlKSAmJiAhaGFzKHJ1bGVzLmd0KSAmJiB0aGlzID49IHJ1bGVzLmx0PyAnbXVzdCBiZSBsZXNzIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMubHRdKSA6ICcnSAASlwEKA2x0ZRgDIAEoEkKHAcJIgwEKgAEKCnNpbnQ2NC5sdGUaciFoYXMocnVsZXMuZ3RlKSAmJiAhaGFzKHJ1bGVzLmd0KSAmJiB0aGlzID4gcnVsZXMubHRlPyAnbXVzdCBiZSBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJXMnLmZvcm1hdChbcnVsZXMubHRlXSkgOiAnJ0gAEv4GCgJndBgEIAEoEkLvBsJI6wYKdQoJc2ludDY0Lmd0GmghaGFzKHJ1bGVzLmx0KSAmJiAhaGFzKHJ1bGVzLmx0ZSkgJiYgdGhpcyA8PSBydWxlcy5ndD8gJ211c3QgYmUgZ3JlYXRlciB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0XSkgOiAnJwquAQoMc2ludDY0Lmd0X2x0Gp0BaGFzKHJ1bGVzLmx0KSAmJiBydWxlcy5sdCA+PSBydWxlcy5ndCAmJiAodGhpcyA+PSBydWxlcy5sdCB8fCB0aGlzIDw9IHJ1bGVzLmd0KT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuICVzIGFuZCBsZXNzIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMuZ3QsIHJ1bGVzLmx0XSkgOiAnJwq2AQoWc2ludDY0Lmd0X2x0X2V4Y2x1c2l2ZRqbAWhhcyhydWxlcy5sdCkgJiYgcnVsZXMubHQgPCBydWxlcy5ndCAmJiAocnVsZXMubHQgPD0gdGhpcyAmJiB0aGlzIDw9IHJ1bGVzLmd0KT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuICVzIG9yIGxlc3MgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5ndCwgcnVsZXMubHRdKSA6ICcnCr4BCg1zaW50NjQuZ3RfbHRlGqwBaGFzKHJ1bGVzLmx0ZSkgJiYgcnVsZXMubHRlID49IHJ1bGVzLmd0ICYmICh0aGlzID4gcnVsZXMubHRlIHx8IHRoaXMgPD0gcnVsZXMuZ3QpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMgYW5kIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndCwgcnVsZXMubHRlXSkgOiAnJwrGAQoXc2ludDY0Lmd0X2x0ZV9leGNsdXNpdmUaqgFoYXMocnVsZXMubHRlKSAmJiBydWxlcy5sdGUgPCBydWxlcy5ndCAmJiAocnVsZXMubHRlIDwgdGhpcyAmJiB0aGlzIDw9IHJ1bGVzLmd0KT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuICVzIG9yIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndCwgcnVsZXMubHRlXSkgOiAnJ0gBEsoHCgNndGUYBSABKBJCugfCSLYHCoMBCgpzaW50NjQuZ3RlGnUhaGFzKHJ1bGVzLmx0KSAmJiAhaGFzKHJ1bGVzLmx0ZSkgJiYgdGhpcyA8IHJ1bGVzLmd0ZT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzJy5mb3JtYXQoW3J1bGVzLmd0ZV0pIDogJycKvQEKDXNpbnQ2NC5ndGVfbHQaqwFoYXMocnVsZXMubHQpICYmIHJ1bGVzLmx0ID49IHJ1bGVzLmd0ZSAmJiAodGhpcyA+PSBydWxlcy5sdCB8fCB0aGlzIDwgcnVsZXMuZ3RlKT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzIGFuZCBsZXNzIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMuZ3RlLCBydWxlcy5sdF0pIDogJycKxQEKF3NpbnQ2NC5ndGVfbHRfZXhjbHVzaXZlGqkBaGFzKHJ1bGVzLmx0KSAmJiBydWxlcy5sdCA8IHJ1bGVzLmd0ZSAmJiAocnVsZXMubHQgPD0gdGhpcyAmJiB0aGlzIDwgcnVsZXMuZ3RlKT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzIG9yIGxlc3MgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5ndGUsIHJ1bGVzLmx0XSkgOiAnJwrNAQoOc2ludDY0Lmd0ZV9sdGUaugFoYXMocnVsZXMubHRlKSAmJiBydWxlcy5sdGUgPj0gcnVsZXMuZ3RlICYmICh0aGlzID4gcnVsZXMubHRlIHx8IHRoaXMgPCBydWxlcy5ndGUpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gJXMgYW5kIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndGUsIHJ1bGVzLmx0ZV0pIDogJycK1QEKGHNpbnQ2NC5ndGVfbHRlX2V4Y2x1c2l2ZRq4AWhhcyhydWxlcy5sdGUpICYmIHJ1bGVzLmx0ZSA8IHJ1bGVzLmd0ZSAmJiAocnVsZXMubHRlIDwgdGhpcyAmJiB0aGlzIDwgcnVsZXMuZ3RlKT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzIG9yIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndGUsIHJ1bGVzLmx0ZV0pIDogJydIARJ6CgJpbhgGIAMoEkJuwkhrCmkKCXNpbnQ2NC5pbhpcISh0aGlzIGluIGdldEZpZWxkKHJ1bGVzLCAnaW4nKSkgPyAnbXVzdCBiZSBpbiBsaXN0ICVzJy5mb3JtYXQoW2dldEZpZWxkKHJ1bGVzLCAnaW4nKV0pIDogJycScQoGbm90X2luGAcgAygSQmHCSF4KXAoNc2ludDY0Lm5vdF9pbhpLdGhpcyBpbiBydWxlcy5ub3RfaW4gPyAnbXVzdCBub3QgYmUgaW4gbGlzdCAlcycuZm9ybWF0KFtydWxlcy5ub3RfaW5dKSA6ICcnEiwKB2V4YW1wbGUYCCADKBJCG8JIGAoWCg5zaW50NjQuZXhhbXBsZRoEdHJ1ZSoJCOgHEICAgIACQgsKCWxlc3NfdGhhbkIOCgxncmVhdGVyX3RoYW4i0xQKDEZpeGVkMzJSdWxlcxJ/CgVjb25zdBgBIAEoB0JwwkhtCmsKDWZpeGVkMzIuY29uc3QaWnRoaXMgIT0gZ2V0RmllbGQocnVsZXMsICdjb25zdCcpID8gJ211c3QgZXF1YWwgJXMnLmZvcm1hdChbZ2V0RmllbGQocnVsZXMsICdjb25zdCcpXSkgOiAnJxKGAQoCbHQYAiABKAdCeMJIdQpzCgpmaXhlZDMyLmx0GmUhaGFzKHJ1bGVzLmd0ZSkgJiYgIWhhcyhydWxlcy5ndCkgJiYgdGhpcyA+PSBydWxlcy5sdD8gJ211c3QgYmUgbGVzcyB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmx0XSkgOiAnJ0gAEpgBCgNsdGUYAyABKAdCiAHCSIQBCoEBCgtmaXhlZDMyLmx0ZRpyIWhhcyhydWxlcy5ndGUpICYmICFoYXMocnVsZXMuZ3QpICYmIHRoaXMgPiBydWxlcy5sdGU/ICdtdXN0IGJlIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5sdGVdKSA6ICcnSAASgwcKAmd0GAQgASgHQvQGwkjwBgp2CgpmaXhlZDMyLmd0GmghaGFzKHJ1bGVzLmx0KSAmJiAhaGFzKHJ1bGVzLmx0ZSkgJiYgdGhpcyA8PSBydWxlcy5ndD8gJ211c3QgYmUgZ3JlYXRlciB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0XSkgOiAnJwqvAQoNZml4ZWQzMi5ndF9sdBqdAWhhcyhydWxlcy5sdCkgJiYgcnVsZXMubHQgPj0gcnVsZXMuZ3QgJiYgKHRoaXMgPj0gcnVsZXMubHQgfHwgdGhpcyA8PSBydWxlcy5ndCk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiAlcyBhbmQgbGVzcyB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0LCBydWxlcy5sdF0pIDogJycKtwEKF2ZpeGVkMzIuZ3RfbHRfZXhjbHVzaXZlGpsBaGFzKHJ1bGVzLmx0KSAmJiBydWxlcy5sdCA8IHJ1bGVzLmd0ICYmIChydWxlcy5sdCA8PSB0aGlzICYmIHRoaXMgPD0gcnVsZXMuZ3QpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMgb3IgbGVzcyB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0LCBydWxlcy5sdF0pIDogJycKvwEKDmZpeGVkMzIuZ3RfbHRlGqwBaGFzKHJ1bGVzLmx0ZSkgJiYgcnVsZXMubHRlID49IHJ1bGVzLmd0ICYmICh0aGlzID4gcnVsZXMubHRlIHx8IHRoaXMgPD0gcnVsZXMuZ3QpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMgYW5kIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndCwgcnVsZXMubHRlXSkgOiAnJwrHAQoYZml4ZWQzMi5ndF9sdGVfZXhjbHVzaXZlGqoBaGFzKHJ1bGVzLmx0ZSkgJiYgcnVsZXMubHRlIDwgcnVsZXMuZ3QgJiYgKHJ1bGVzLmx0ZSA8IHRoaXMgJiYgdGhpcyA8PSBydWxlcy5ndCk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiAlcyBvciBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJXMnLmZvcm1hdChbcnVsZXMuZ3QsIHJ1bGVzLmx0ZV0pIDogJydIARLPBwoDZ3RlGAUgASgHQr8Hwki7BwqEAQoLZml4ZWQzMi5ndGUadSFoYXMocnVsZXMubHQpICYmICFoYXMocnVsZXMubHRlKSAmJiB0aGlzIDwgcnVsZXMuZ3RlPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gJXMnLmZvcm1hdChbcnVsZXMuZ3RlXSkgOiAnJwq+AQoOZml4ZWQzMi5ndGVfbHQaqwFoYXMocnVsZXMubHQpICYmIHJ1bGVzLmx0ID49IHJ1bGVzLmd0ZSAmJiAodGhpcyA+PSBydWxlcy5sdCB8fCB0aGlzIDwgcnVsZXMuZ3RlKT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzIGFuZCBsZXNzIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMuZ3RlLCBydWxlcy5sdF0pIDogJycKxgEKGGZpeGVkMzIuZ3RlX2x0X2V4Y2x1c2l2ZRqpAWhhcyhydWxlcy5sdCkgJiYgcnVsZXMubHQgPCBydWxlcy5ndGUgJiYgKHJ1bGVzLmx0IDw9IHRoaXMgJiYgdGhpcyA8IHJ1bGVzLmd0ZSk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAlcyBvciBsZXNzIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMuZ3RlLCBydWxlcy5sdF0pIDogJycKzgEKD2ZpeGVkMzIuZ3RlX2x0ZRq6AWhhcyhydWxlcy5sdGUpICYmIHJ1bGVzLmx0ZSA+PSBydWxlcy5ndGUgJiYgKHRoaXMgPiBydWxlcy5sdGUgfHwgdGhpcyA8IHJ1bGVzLmd0ZSk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAlcyBhbmQgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICVzJy5mb3JtYXQoW3J1bGVzLmd0ZSwgcnVsZXMubHRlXSkgOiAnJwrWAQoZZml4ZWQzMi5ndGVfbHRlX2V4Y2x1c2l2ZRq4AWhhcyhydWxlcy5sdGUpICYmIHJ1bGVzLmx0ZSA8IHJ1bGVzLmd0ZSAmJiAocnVsZXMubHRlIDwgdGhpcyAmJiB0aGlzIDwgcnVsZXMuZ3RlKT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzIG9yIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndGUsIHJ1bGVzLmx0ZV0pIDogJydIARJ7CgJpbhgGIAMoB0JvwkhsCmoKCmZpeGVkMzIuaW4aXCEodGhpcyBpbiBnZXRGaWVsZChydWxlcywgJ2luJykpID8gJ211c3QgYmUgaW4gbGlzdCAlcycuZm9ybWF0KFtnZXRGaWVsZChydWxlcywgJ2luJyldKSA6ICcnEnIKBm5vdF9pbhgHIAMoB0JiwkhfCl0KDmZpeGVkMzIubm90X2luGkt0aGlzIGluIHJ1bGVzLm5vdF9pbiA/ICdtdXN0IG5vdCBiZSBpbiBsaXN0ICVzJy5mb3JtYXQoW3J1bGVzLm5vdF9pbl0pIDogJycSLQoHZXhhbXBsZRgIIAMoB0IcwkgZChcKD2ZpeGVkMzIuZXhhbXBsZRoEdHJ1ZSoJCOgHEICAgIACQgsKCWxlc3NfdGhhbkIOCgxncmVhdGVyX3RoYW4i0xQKDEZpeGVkNjRSdWxlcxJ/CgVjb25zdBgBIAEoBkJwwkhtCmsKDWZpeGVkNjQuY29uc3QaWnRoaXMgIT0gZ2V0RmllbGQocnVsZXMsICdjb25zdCcpID8gJ211c3QgZXF1YWwgJXMnLmZvcm1hdChbZ2V0RmllbGQocnVsZXMsICdjb25zdCcpXSkgOiAnJxKGAQoCbHQYAiABKAZCeMJIdQpzCgpmaXhlZDY0Lmx0GmUhaGFzKHJ1bGVzLmd0ZSkgJiYgIWhhcyhydWxlcy5ndCkgJiYgdGhpcyA+PSBydWxlcy5sdD8gJ211c3QgYmUgbGVzcyB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmx0XSkgOiAnJ0gAEpgBCgNsdGUYAyABKAZCiAHCSIQBCoEBCgtmaXhlZDY0Lmx0ZRpyIWhhcyhydWxlcy5ndGUpICYmICFoYXMocnVsZXMuZ3QpICYmIHRoaXMgPiBydWxlcy5sdGU/ICdtdXN0IGJlIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5sdGVdKSA6ICcnSAASgwcKAmd0GAQgASgGQvQGwkjwBgp2CgpmaXhlZDY0Lmd0GmghaGFzKHJ1bGVzLmx0KSAmJiAhaGFzKHJ1bGVzLmx0ZSkgJiYgdGhpcyA8PSBydWxlcy5ndD8gJ211c3QgYmUgZ3JlYXRlciB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0XSkgOiAnJwqvAQoNZml4ZWQ2NC5ndF9sdBqdAWhhcyhydWxlcy5sdCkgJiYgcnVsZXMubHQgPj0gcnVsZXMuZ3QgJiYgKHRoaXMgPj0gcnVsZXMubHQgfHwgdGhpcyA8PSBydWxlcy5ndCk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiAlcyBhbmQgbGVzcyB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0LCBydWxlcy5sdF0pIDogJycKtwEKF2ZpeGVkNjQuZ3RfbHRfZXhjbHVzaXZlGpsBaGFzKHJ1bGVzLmx0KSAmJiBydWxlcy5sdCA8IHJ1bGVzLmd0ICYmIChydWxlcy5sdCA8PSB0aGlzICYmIHRoaXMgPD0gcnVsZXMuZ3QpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMgb3IgbGVzcyB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0LCBydWxlcy5sdF0pIDogJycKvwEKDmZpeGVkNjQuZ3RfbHRlGqwBaGFzKHJ1bGVzLmx0ZSkgJiYgcnVsZXMubHRlID49IHJ1bGVzLmd0ICYmICh0aGlzID4gcnVsZXMubHRlIHx8IHRoaXMgPD0gcnVsZXMuZ3QpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMgYW5kIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndCwgcnVsZXMubHRlXSkgOiAnJwrHAQoYZml4ZWQ2NC5ndF9sdGVfZXhjbHVzaXZlGqoBaGFzKHJ1bGVzLmx0ZSkgJiYgcnVsZXMubHRlIDwgcnVsZXMuZ3QgJiYgKHJ1bGVzLmx0ZSA8IHRoaXMgJiYgdGhpcyA8PSBydWxlcy5ndCk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiAlcyBvciBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJXMnLmZvcm1hdChbcnVsZXMuZ3QsIHJ1bGVzLmx0ZV0pIDogJydIARLPBwoDZ3RlGAUgASgGQr8Hwki7BwqEAQoLZml4ZWQ2NC5ndGUadSFoYXMocnVsZXMubHQpICYmICFoYXMocnVsZXMubHRlKSAmJiB0aGlzIDwgcnVsZXMuZ3RlPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gJXMnLmZvcm1hdChbcnVsZXMuZ3RlXSkgOiAnJwq+AQoOZml4ZWQ2NC5ndGVfbHQaqwFoYXMocnVsZXMubHQpICYmIHJ1bGVzLmx0ID49IHJ1bGVzLmd0ZSAmJiAodGhpcyA+PSBydWxlcy5sdCB8fCB0aGlzIDwgcnVsZXMuZ3RlKT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzIGFuZCBsZXNzIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMuZ3RlLCBydWxlcy5sdF0pIDogJycKxgEKGGZpeGVkNjQuZ3RlX2x0X2V4Y2x1c2l2ZRqpAWhhcyhydWxlcy5sdCkgJiYgcnVsZXMubHQgPCBydWxlcy5ndGUgJiYgKHJ1bGVzLmx0IDw9IHRoaXMgJiYgdGhpcyA8IHJ1bGVzLmd0ZSk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAlcyBvciBsZXNzIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMuZ3RlLCBydWxlcy5sdF0pIDogJycKzgEKD2ZpeGVkNjQuZ3RlX2x0ZRq6AWhhcyhydWxlcy5sdGUpICYmIHJ1bGVzLmx0ZSA+PSBydWxlcy5ndGUgJiYgKHRoaXMgPiBydWxlcy5sdGUgfHwgdGhpcyA8IHJ1bGVzLmd0ZSk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAlcyBhbmQgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICVzJy5mb3JtYXQoW3J1bGVzLmd0ZSwgcnVsZXMubHRlXSkgOiAnJwrWAQoZZml4ZWQ2NC5ndGVfbHRlX2V4Y2x1c2l2ZRq4AWhhcyhydWxlcy5sdGUpICYmIHJ1bGVzLmx0ZSA8IHJ1bGVzLmd0ZSAmJiAocnVsZXMubHRlIDwgdGhpcyAmJiB0aGlzIDwgcnVsZXMuZ3RlKT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzIG9yIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndGUsIHJ1bGVzLmx0ZV0pIDogJydIARJ7CgJpbhgGIAMoBkJvwkhsCmoKCmZpeGVkNjQuaW4aXCEodGhpcyBpbiBnZXRGaWVsZChydWxlcywgJ2luJykpID8gJ211c3QgYmUgaW4gbGlzdCAlcycuZm9ybWF0KFtnZXRGaWVsZChydWxlcywgJ2luJyldKSA6ICcnEnIKBm5vdF9pbhgHIAMoBkJiwkhfCl0KDmZpeGVkNjQubm90X2luGkt0aGlzIGluIHJ1bGVzLm5vdF9pbiA/ICdtdXN0IG5vdCBiZSBpbiBsaXN0ICVzJy5mb3JtYXQoW3J1bGVzLm5vdF9pbl0pIDogJycSLQoHZXhhbXBsZRgIIAMoBkIcwkgZChcKD2ZpeGVkNjQuZXhhbXBsZRoEdHJ1ZSoJCOgHEICAgIACQgsKCWxlc3NfdGhhbkIOCgxncmVhdGVyX3RoYW4i5RQKDVNGaXhlZDMyUnVsZXMSgAEKBWNvbnN0GAEgASgPQnHCSG4KbAoOc2ZpeGVkMzIuY29uc3QaWnRoaXMgIT0gZ2V0RmllbGQocnVsZXMsICdjb25zdCcpID8gJ211c3QgZXF1YWwgJXMnLmZvcm1hdChbZ2V0RmllbGQocnVsZXMsICdjb25zdCcpXSkgOiAnJxKHAQoCbHQYAiABKA9CecJIdgp0CgtzZml4ZWQzMi5sdBplIWhhcyhydWxlcy5ndGUpICYmICFoYXMocnVsZXMuZ3QpICYmIHRoaXMgPj0gcnVsZXMubHQ/ICdtdXN0IGJlIGxlc3MgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5sdF0pIDogJydIABKZAQoDbHRlGAMgASgPQokBwkiFAQqCAQoMc2ZpeGVkMzIubHRlGnIhaGFzKHJ1bGVzLmd0ZSkgJiYgIWhhcyhydWxlcy5ndCkgJiYgdGhpcyA+IHJ1bGVzLmx0ZT8gJ211c3QgYmUgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICVzJy5mb3JtYXQoW3J1bGVzLmx0ZV0pIDogJydIABKIBwoCZ3QYBCABKA9C+QbCSPUGCncKC3NmaXhlZDMyLmd0GmghaGFzKHJ1bGVzLmx0KSAmJiAhaGFzKHJ1bGVzLmx0ZSkgJiYgdGhpcyA8PSBydWxlcy5ndD8gJ211c3QgYmUgZ3JlYXRlciB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0XSkgOiAnJwqwAQoOc2ZpeGVkMzIuZ3RfbHQanQFoYXMocnVsZXMubHQpICYmIHJ1bGVzLmx0ID49IHJ1bGVzLmd0ICYmICh0aGlzID49IHJ1bGVzLmx0IHx8IHRoaXMgPD0gcnVsZXMuZ3QpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMgYW5kIGxlc3MgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5ndCwgcnVsZXMubHRdKSA6ICcnCrgBChhzZml4ZWQzMi5ndF9sdF9leGNsdXNpdmUamwFoYXMocnVsZXMubHQpICYmIHJ1bGVzLmx0IDwgcnVsZXMuZ3QgJiYgKHJ1bGVzLmx0IDw9IHRoaXMgJiYgdGhpcyA8PSBydWxlcy5ndCk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiAlcyBvciBsZXNzIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMuZ3QsIHJ1bGVzLmx0XSkgOiAnJwrAAQoPc2ZpeGVkMzIuZ3RfbHRlGqwBaGFzKHJ1bGVzLmx0ZSkgJiYgcnVsZXMubHRlID49IHJ1bGVzLmd0ICYmICh0aGlzID4gcnVsZXMubHRlIHx8IHRoaXMgPD0gcnVsZXMuZ3QpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMgYW5kIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndCwgcnVsZXMubHRlXSkgOiAnJwrIAQoZc2ZpeGVkMzIuZ3RfbHRlX2V4Y2x1c2l2ZRqqAWhhcyhydWxlcy5sdGUpICYmIHJ1bGVzLmx0ZSA8IHJ1bGVzLmd0ICYmIChydWxlcy5sdGUgPCB0aGlzICYmIHRoaXMgPD0gcnVsZXMuZ3QpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMgb3IgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICVzJy5mb3JtYXQoW3J1bGVzLmd0LCBydWxlcy5sdGVdKSA6ICcnSAES1AcKA2d0ZRgFIAEoD0LEB8JIwAcKhQEKDHNmaXhlZDMyLmd0ZRp1IWhhcyhydWxlcy5sdCkgJiYgIWhhcyhydWxlcy5sdGUpICYmIHRoaXMgPCBydWxlcy5ndGU/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndGVdKSA6ICcnCr8BCg9zZml4ZWQzMi5ndGVfbHQaqwFoYXMocnVsZXMubHQpICYmIHJ1bGVzLmx0ID49IHJ1bGVzLmd0ZSAmJiAodGhpcyA+PSBydWxlcy5sdCB8fCB0aGlzIDwgcnVsZXMuZ3RlKT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzIGFuZCBsZXNzIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMuZ3RlLCBydWxlcy5sdF0pIDogJycKxwEKGXNmaXhlZDMyLmd0ZV9sdF9leGNsdXNpdmUaqQFoYXMocnVsZXMubHQpICYmIHJ1bGVzLmx0IDwgcnVsZXMuZ3RlICYmIChydWxlcy5sdCA8PSB0aGlzICYmIHRoaXMgPCBydWxlcy5ndGUpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gJXMgb3IgbGVzcyB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0ZSwgcnVsZXMubHRdKSA6ICcnCs8BChBzZml4ZWQzMi5ndGVfbHRlGroBaGFzKHJ1bGVzLmx0ZSkgJiYgcnVsZXMubHRlID49IHJ1bGVzLmd0ZSAmJiAodGhpcyA+IHJ1bGVzLmx0ZSB8fCB0aGlzIDwgcnVsZXMuZ3RlKT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzIGFuZCBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJXMnLmZvcm1hdChbcnVsZXMuZ3RlLCBydWxlcy5sdGVdKSA6ICcnCtcBChpzZml4ZWQzMi5ndGVfbHRlX2V4Y2x1c2l2ZRq4AWhhcyhydWxlcy5sdGUpICYmIHJ1bGVzLmx0ZSA8IHJ1bGVzLmd0ZSAmJiAocnVsZXMubHRlIDwgdGhpcyAmJiB0aGlzIDwgcnVsZXMuZ3RlKT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzIG9yIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndGUsIHJ1bGVzLmx0ZV0pIDogJydIARJ8CgJpbhgGIAMoD0JwwkhtCmsKC3NmaXhlZDMyLmluGlwhKHRoaXMgaW4gZ2V0RmllbGQocnVsZXMsICdpbicpKSA/ICdtdXN0IGJlIGluIGxpc3QgJXMnLmZvcm1hdChbZ2V0RmllbGQocnVsZXMsICdpbicpXSkgOiAnJxJzCgZub3RfaW4YByADKA9CY8JIYApeCg9zZml4ZWQzMi5ub3RfaW4aS3RoaXMgaW4gcnVsZXMubm90X2luID8gJ211c3Qgbm90IGJlIGluIGxpc3QgJXMnLmZvcm1hdChbcnVsZXMubm90X2luXSkgOiAnJxIuCgdleGFtcGxlGAggAygPQh3CSBoKGAoQc2ZpeGVkMzIuZXhhbXBsZRoEdHJ1ZSoJCOgHEICAgIACQgsKCWxlc3NfdGhhbkIOCgxncmVhdGVyX3RoYW4i5RQKDVNGaXhlZDY0UnVsZXMSgAEKBWNvbnN0GAEgASgQQnHCSG4KbAoOc2ZpeGVkNjQuY29uc3QaWnRoaXMgIT0gZ2V0RmllbGQocnVsZXMsICdjb25zdCcpID8gJ211c3QgZXF1YWwgJXMnLmZvcm1hdChbZ2V0RmllbGQocnVsZXMsICdjb25zdCcpXSkgOiAnJxKHAQoCbHQYAiABKBBCecJIdgp0CgtzZml4ZWQ2NC5sdBplIWhhcyhydWxlcy5ndGUpICYmICFoYXMocnVsZXMuZ3QpICYmIHRoaXMgPj0gcnVsZXMubHQ/ICdtdXN0IGJlIGxlc3MgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5sdF0pIDogJydIABKZAQoDbHRlGAMgASgQQokBwkiFAQqCAQoMc2ZpeGVkNjQubHRlGnIhaGFzKHJ1bGVzLmd0ZSkgJiYgIWhhcyhydWxlcy5ndCkgJiYgdGhpcyA+IHJ1bGVzLmx0ZT8gJ211c3QgYmUgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICVzJy5mb3JtYXQoW3J1bGVzLmx0ZV0pIDogJydIABKIBwoCZ3QYBCABKBBC+QbCSPUGCncKC3NmaXhlZDY0Lmd0GmghaGFzKHJ1bGVzLmx0KSAmJiAhaGFzKHJ1bGVzLmx0ZSkgJiYgdGhpcyA8PSBydWxlcy5ndD8gJ211c3QgYmUgZ3JlYXRlciB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0XSkgOiAnJwqwAQoOc2ZpeGVkNjQuZ3RfbHQanQFoYXMocnVsZXMubHQpICYmIHJ1bGVzLmx0ID49IHJ1bGVzLmd0ICYmICh0aGlzID49IHJ1bGVzLmx0IHx8IHRoaXMgPD0gcnVsZXMuZ3QpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMgYW5kIGxlc3MgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5ndCwgcnVsZXMubHRdKSA6ICcnCrgBChhzZml4ZWQ2NC5ndF9sdF9leGNsdXNpdmUamwFoYXMocnVsZXMubHQpICYmIHJ1bGVzLmx0IDwgcnVsZXMuZ3QgJiYgKHJ1bGVzLmx0IDw9IHRoaXMgJiYgdGhpcyA8PSBydWxlcy5ndCk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiAlcyBvciBsZXNzIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMuZ3QsIHJ1bGVzLmx0XSkgOiAnJwrAAQoPc2ZpeGVkNjQuZ3RfbHRlGqwBaGFzKHJ1bGVzLmx0ZSkgJiYgcnVsZXMubHRlID49IHJ1bGVzLmd0ICYmICh0aGlzID4gcnVsZXMubHRlIHx8IHRoaXMgPD0gcnVsZXMuZ3QpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMgYW5kIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndCwgcnVsZXMubHRlXSkgOiAnJwrIAQoZc2ZpeGVkNjQuZ3RfbHRlX2V4Y2x1c2l2ZRqqAWhhcyhydWxlcy5sdGUpICYmIHJ1bGVzLmx0ZSA8IHJ1bGVzLmd0ICYmIChydWxlcy5sdGUgPCB0aGlzICYmIHRoaXMgPD0gcnVsZXMuZ3QpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMgb3IgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICVzJy5mb3JtYXQoW3J1bGVzLmd0LCBydWxlcy5sdGVdKSA6ICcnSAES1AcKA2d0ZRgFIAEoEELEB8JIwAcKhQEKDHNmaXhlZDY0Lmd0ZRp1IWhhcyhydWxlcy5sdCkgJiYgIWhhcyhydWxlcy5sdGUpICYmIHRoaXMgPCBydWxlcy5ndGU/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndGVdKSA6ICcnCr8BCg9zZml4ZWQ2NC5ndGVfbHQaqwFoYXMocnVsZXMubHQpICYmIHJ1bGVzLmx0ID49IHJ1bGVzLmd0ZSAmJiAodGhpcyA+PSBydWxlcy5sdCB8fCB0aGlzIDwgcnVsZXMuZ3RlKT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzIGFuZCBsZXNzIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMuZ3RlLCBydWxlcy5sdF0pIDogJycKxwEKGXNmaXhlZDY0Lmd0ZV9sdF9leGNsdXNpdmUaqQFoYXMocnVsZXMubHQpICYmIHJ1bGVzLmx0IDwgcnVsZXMuZ3RlICYmIChydWxlcy5sdCA8PSB0aGlzICYmIHRoaXMgPCBydWxlcy5ndGUpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gJXMgb3IgbGVzcyB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0ZSwgcnVsZXMubHRdKSA6ICcnCs8BChBzZml4ZWQ2NC5ndGVfbHRlGroBaGFzKHJ1bGVzLmx0ZSkgJiYgcnVsZXMubHRlID49IHJ1bGVzLmd0ZSAmJiAodGhpcyA+IHJ1bGVzLmx0ZSB8fCB0aGlzIDwgcnVsZXMuZ3RlKT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzIGFuZCBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJXMnLmZvcm1hdChbcnVsZXMuZ3RlLCBydWxlcy5sdGVdKSA6ICcnCtcBChpzZml4ZWQ2NC5ndGVfbHRlX2V4Y2x1c2l2ZRq4AWhhcyhydWxlcy5sdGUpICYmIHJ1bGVzLmx0ZSA8IHJ1bGVzLmd0ZSAmJiAocnVsZXMubHRlIDwgdGhpcyAmJiB0aGlzIDwgcnVsZXMuZ3RlKT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzIG9yIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndGUsIHJ1bGVzLmx0ZV0pIDogJydIARJ8CgJpbhgGIAMoEEJwwkhtCmsKC3NmaXhlZDY0LmluGlwhKHRoaXMgaW4gZ2V0RmllbGQocnVsZXMsICdpbicpKSA/ICdtdXN0IGJlIGluIGxpc3QgJXMnLmZvcm1hdChbZ2V0RmllbGQocnVsZXMsICdpbicpXSkgOiAnJxJzCgZub3RfaW4YByADKBBCY8JIYApeCg9zZml4ZWQ2NC5ub3RfaW4aS3RoaXMgaW4gcnVsZXMubm90X2luID8gJ211c3Qgbm90IGJlIGluIGxpc3QgJXMnLmZvcm1hdChbcnVsZXMubm90X2luXSkgOiAnJxIuCgdleGFtcGxlGAggAygQQh3CSBoKGAoQc2ZpeGVkNjQuZXhhbXBsZRoEdHJ1ZSoJCOgHEICAgIACQgsKCWxlc3NfdGhhbkIOCgxncmVhdGVyX3RoYW4iwAEKCUJvb2xSdWxlcxJ8CgVjb25zdBgBIAEoCEJtwkhqCmgKCmJvb2wuY29uc3QaWnRoaXMgIT0gZ2V0RmllbGQocnVsZXMsICdjb25zdCcpID8gJ211c3QgZXF1YWwgJXMnLmZvcm1hdChbZ2V0RmllbGQocnVsZXMsICdjb25zdCcpXSkgOiAnJxIqCgdleGFtcGxlGAIgAygIQhnCSBYKFAoMYm9vbC5leGFtcGxlGgR0cnVlKgkI6AcQgICAgAIi6jwKC1N0cmluZ1J1bGVzEoABCgVjb25zdBgBIAEoCUJxwkhuCmwKDHN0cmluZy5jb25zdBpcdGhpcyAhPSBnZXRGaWVsZChydWxlcywgJ2NvbnN0JykgPyAnbXVzdCBlcXVhbCBgJXNgJy5mb3JtYXQoW2dldEZpZWxkKHJ1bGVzLCAnY29uc3QnKV0pIDogJycScQoDbGVuGBMgASgEQmTCSGEKXwoKc3RyaW5nLmxlbhpRdWludCh0aGlzLnNpemUoKSkgIT0gcnVsZXMubGVuID8gJ211c3QgYmUgJXMgY2hhcmFjdGVycycuZm9ybWF0KFtydWxlcy5sZW5dKSA6ICcnEokBCgdtaW5fbGVuGAIgASgEQnjCSHUKcwoOc3RyaW5nLm1pbl9sZW4aYXVpbnQodGhpcy5zaXplKCkpIDwgcnVsZXMubWluX2xlbiA/ICdtdXN0IGJlIGF0IGxlYXN0ICVzIGNoYXJhY3RlcnMnLmZvcm1hdChbcnVsZXMubWluX2xlbl0pIDogJycSiAEKB21heF9sZW4YAyABKARCd8JIdApyCg5zdHJpbmcubWF4X2xlbhpgdWludCh0aGlzLnNpemUoKSkgPiBydWxlcy5tYXhfbGVuID8gJ211c3QgYmUgYXQgbW9zdCAlcyBjaGFyYWN0ZXJzJy5mb3JtYXQoW3J1bGVzLm1heF9sZW5dKSA6ICcnEosBCglsZW5fYnl0ZXMYFCABKARCeMJIdQpzChBzdHJpbmcubGVuX2J5dGVzGl91aW50KGJ5dGVzKHRoaXMpLnNpemUoKSkgIT0gcnVsZXMubGVuX2J5dGVzID8gJ211c3QgYmUgJXMgYnl0ZXMnLmZvcm1hdChbcnVsZXMubGVuX2J5dGVzXSkgOiAnJxKUAQoJbWluX2J5dGVzGAQgASgEQoABwkh9CnsKEHN0cmluZy5taW5fYnl0ZXMaZ3VpbnQoYnl0ZXModGhpcykuc2l6ZSgpKSA8IHJ1bGVzLm1pbl9ieXRlcyA/ICdtdXN0IGJlIGF0IGxlYXN0ICVzIGJ5dGVzJy5mb3JtYXQoW3J1bGVzLm1pbl9ieXRlc10pIDogJycSkgEKCW1heF9ieXRlcxgFIAEoBEJ/wkh8CnoKEHN0cmluZy5tYXhfYnl0ZXMaZnVpbnQoYnl0ZXModGhpcykuc2l6ZSgpKSA+IHJ1bGVzLm1heF9ieXRlcyA/ICdtdXN0IGJlIGF0IG1vc3QgJXMgYnl0ZXMnLmZvcm1hdChbcnVsZXMubWF4X2J5dGVzXSkgOiAnJxKHAQoHcGF0dGVybhgGIAEoCUJ2wkhzCnEKDnN0cmluZy5wYXR0ZXJuGl8hdGhpcy5tYXRjaGVzKHJ1bGVzLnBhdHRlcm4pID8gJ2RvZXMgbm90IG1hdGNoIHJlZ2V4IHBhdHRlcm4gYCVzYCcuZm9ybWF0KFtydWxlcy5wYXR0ZXJuXSkgOiAnJxJ+CgZwcmVmaXgYByABKAlCbsJIawppCg1zdHJpbmcucHJlZml4GlghdGhpcy5zdGFydHNXaXRoKHJ1bGVzLnByZWZpeCkgPyAnZG9lcyBub3QgaGF2ZSBwcmVmaXggYCVzYCcuZm9ybWF0KFtydWxlcy5wcmVmaXhdKSA6ICcnEnwKBnN1ZmZpeBgIIAEoCUJswkhpCmcKDXN0cmluZy5zdWZmaXgaViF0aGlzLmVuZHNXaXRoKHJ1bGVzLnN1ZmZpeCkgPyAnZG9lcyBub3QgaGF2ZSBzdWZmaXggYCVzYCcuZm9ybWF0KFtydWxlcy5zdWZmaXhdKSA6ICcnEooBCghjb250YWlucxgJIAEoCUJ4wkh1CnMKD3N0cmluZy5jb250YWlucxpgIXRoaXMuY29udGFpbnMocnVsZXMuY29udGFpbnMpID8gJ2RvZXMgbm90IGNvbnRhaW4gc3Vic3RyaW5nIGAlc2AnLmZvcm1hdChbcnVsZXMuY29udGFpbnNdKSA6ICcnEpEBCgxub3RfY29udGFpbnMYFyABKAlCe8JIeAp2ChNzdHJpbmcubm90X2NvbnRhaW5zGl90aGlzLmNvbnRhaW5zKHJ1bGVzLm5vdF9jb250YWlucykgPyAnY29udGFpbnMgc3Vic3RyaW5nIGAlc2AnLmZvcm1hdChbcnVsZXMubm90X2NvbnRhaW5zXSkgOiAnJxJ6CgJpbhgKIAMoCUJuwkhrCmkKCXN0cmluZy5pbhpcISh0aGlzIGluIGdldEZpZWxkKHJ1bGVzLCAnaW4nKSkgPyAnbXVzdCBiZSBpbiBsaXN0ICVzJy5mb3JtYXQoW2dldEZpZWxkKHJ1bGVzLCAnaW4nKV0pIDogJycScQoGbm90X2luGAsgAygJQmHCSF4KXAoNc3RyaW5nLm5vdF9pbhpLdGhpcyBpbiBydWxlcy5ub3RfaW4gPyAnbXVzdCBub3QgYmUgaW4gbGlzdCAlcycuZm9ybWF0KFtydWxlcy5ub3RfaW5dKSA6ICcnEtkBCgVlbWFpbBgMIAEoCELHAcJIwwEKWwoMc3RyaW5nLmVtYWlsEh1tdXN0IGJlIGEgdmFsaWQgZW1haWwgYWRkcmVzcxosIXJ1bGVzLmVtYWlsIHx8IHRoaXMgPT0gJycgfHwgdGhpcy5pc0VtYWlsKCkKZAoSc3RyaW5nLmVtYWlsX2VtcHR5EjJ2YWx1ZSBpcyBlbXB0eSwgd2hpY2ggaXMgbm90IGEgdmFsaWQgZW1haWwgYWRkcmVzcxoaIXJ1bGVzLmVtYWlsIHx8IHRoaXMgIT0gJydIABLhAQoIaG9zdG5hbWUYDSABKAhCzAHCSMgBCl8KD3N0cmluZy5ob3N0bmFtZRIYbXVzdCBiZSBhIHZhbGlkIGhvc3RuYW1lGjIhcnVsZXMuaG9zdG5hbWUgfHwgdGhpcyA9PSAnJyB8fCB0aGlzLmlzSG9zdG5hbWUoKQplChVzdHJpbmcuaG9zdG5hbWVfZW1wdHkSLXZhbHVlIGlzIGVtcHR5LCB3aGljaCBpcyBub3QgYSB2YWxpZCBob3N0bmFtZRodIXJ1bGVzLmhvc3RuYW1lIHx8IHRoaXMgIT0gJydIABLBAQoCaXAYDiABKAhCsgHCSK4BCk8KCXN0cmluZy5pcBIabXVzdCBiZSBhIHZhbGlkIElQIGFkZHJlc3MaJiFydWxlcy5pcCB8fCB0aGlzID09ICcnIHx8IHRoaXMuaXNJcCgpClsKD3N0cmluZy5pcF9lbXB0eRIvdmFsdWUgaXMgZW1wdHksIHdoaWNoIGlzIG5vdCBhIHZhbGlkIElQIGFkZHJlc3MaFyFydWxlcy5pcCB8fCB0aGlzICE9ICcnSAAS0AEKBGlwdjQYDyABKAhCvwHCSLsBClYKC3N0cmluZy5pcHY0EhxtdXN0IGJlIGEgdmFsaWQgSVB2NCBhZGRyZXNzGikhcnVsZXMuaXB2NCB8fCB0aGlzID09ICcnIHx8IHRoaXMuaXNJcCg0KQphChFzdHJpbmcuaXB2NF9lbXB0eRIxdmFsdWUgaXMgZW1wdHksIHdoaWNoIGlzIG5vdCBhIHZhbGlkIElQdjQgYWRkcmVzcxoZIXJ1bGVzLmlwdjQgfHwgdGhpcyAhPSAnJ0gAEtABCgRpcHY2GBAgASgIQr8Bwki7AQpWCgtzdHJpbmcuaXB2NhIcbXVzdCBiZSBhIHZhbGlkIElQdjYgYWRkcmVzcxopIXJ1bGVzLmlwdjYgfHwgdGhpcyA9PSAnJyB8fCB0aGlzLmlzSXAoNikKYQoRc3RyaW5nLmlwdjZfZW1wdHkSMXZhbHVlIGlzIGVtcHR5LCB3aGljaCBpcyBub3QgYSB2YWxpZCBJUHY2IGFkZHJlc3MaGSFydWxlcy5pcHY2IHx8IHRoaXMgIT0gJydIABK5AQoDdXJpGBEgASgIQqkBwkilAQpLCgpzdHJpbmcudXJpEhNtdXN0IGJlIGEgdmFsaWQgVVJJGighcnVsZXMudXJpIHx8IHRoaXMgPT0gJycgfHwgdGhpcy5pc1VyaSgpClYKEHN0cmluZy51cmlfZW1wdHkSKHZhbHVlIGlzIGVtcHR5LCB3aGljaCBpcyBub3QgYSB2YWxpZCBVUkkaGCFydWxlcy51cmkgfHwgdGhpcyAhPSAnJ0gAEmoKB3VyaV9yZWYYEiABKAhCV8JIVApSCg5zdHJpbmcudXJpX3JlZhIdbXVzdCBiZSBhIHZhbGlkIFVSSSBSZWZlcmVuY2UaISFydWxlcy51cmlfcmVmIHx8IHRoaXMuaXNVcmlSZWYoKUgAEokCCgdhZGRyZXNzGBUgASgIQvUBwkjxAQp7Cg5zdHJpbmcuYWRkcmVzcxInbXVzdCBiZSBhIHZhbGlkIGhvc3RuYW1lLCBvciBpcCBhZGRyZXNzGkAhcnVsZXMuYWRkcmVzcyB8fCB0aGlzID09ICcnIHx8IHRoaXMuaXNIb3N0bmFtZSgpIHx8IHRoaXMuaXNJcCgpCnIKFHN0cmluZy5hZGRyZXNzX2VtcHR5Ejx2YWx1ZSBpcyBlbXB0eSwgd2hpY2ggaXMgbm90IGEgdmFsaWQgaG9zdG5hbWUsIG9yIGlwIGFkZHJlc3MaHCFydWxlcy5hZGRyZXNzIHx8IHRoaXMgIT0gJydIABKSAgoEdXVpZBgWIAEoCEKBAsJI/QEKnwEKC3N0cmluZy51dWlkEhRtdXN0IGJlIGEgdmFsaWQgVVVJRBp6IXJ1bGVzLnV1aWQgfHwgdGhpcyA9PSAnJyB8fCB0aGlzLm1hdGNoZXMoJ15bMC05YS1mQS1GXXs4fS1bMC05YS1mQS1GXXs0fS1bMC05YS1mQS1GXXs0fS1bMC05YS1mQS1GXXs0fS1bMC05YS1mQS1GXXsxMn0kJykKWQoRc3RyaW5nLnV1aWRfZW1wdHkSKXZhbHVlIGlzIGVtcHR5LCB3aGljaCBpcyBub3QgYSB2YWxpZCBVVUlEGhkhcnVsZXMudXVpZCB8fCB0aGlzICE9ICcnSAAS6gEKBXR1dWlkGCEgASgIQtgBwkjUAQptCgxzdHJpbmcudHV1aWQSHG11c3QgYmUgYSB2YWxpZCB0cmltbWVkIFVVSUQaPyFydWxlcy50dXVpZCB8fCB0aGlzID09ICcnIHx8IHRoaXMubWF0Y2hlcygnXlswLTlhLWZBLUZdezMyfSQnKQpjChJzdHJpbmcudHV1aWRfZW1wdHkSMXZhbHVlIGlzIGVtcHR5LCB3aGljaCBpcyBub3QgYSB2YWxpZCB0cmltbWVkIFVVSUQaGiFydWxlcy50dXVpZCB8fCB0aGlzICE9ICcnSAASkAIKEWlwX3dpdGhfcHJlZml4bGVuGBogASgIQvIBwkjuAQpyChhzdHJpbmcuaXBfd2l0aF9wcmVmaXhsZW4SGW11c3QgYmUgYSB2YWxpZCBJUCBwcmVmaXgaOyFydWxlcy5pcF93aXRoX3ByZWZpeGxlbiB8fCB0aGlzID09ICcnIHx8IHRoaXMuaXNJcFByZWZpeCgpCngKHnN0cmluZy5pcF93aXRoX3ByZWZpeGxlbl9lbXB0eRIudmFsdWUgaXMgZW1wdHksIHdoaWNoIGlzIG5vdCBhIHZhbGlkIElQIHByZWZpeBomIXJ1bGVzLmlwX3dpdGhfcHJlZml4bGVuIHx8IHRoaXMgIT0gJydIABLJAgoTaXB2NF93aXRoX3ByZWZpeGxlbhgbIAEoCEKpAsJIpQIKjQEKGnN0cmluZy5pcHY0X3dpdGhfcHJlZml4bGVuEi9tdXN0IGJlIGEgdmFsaWQgSVB2NCBhZGRyZXNzIHdpdGggcHJlZml4IGxlbmd0aBo+IXJ1bGVzLmlwdjRfd2l0aF9wcmVmaXhsZW4gfHwgdGhpcyA9PSAnJyB8fCB0aGlzLmlzSXBQcmVmaXgoNCkKkgEKIHN0cmluZy5pcHY0X3dpdGhfcHJlZml4bGVuX2VtcHR5EkR2YWx1ZSBpcyBlbXB0eSwgd2hpY2ggaXMgbm90IGEgdmFsaWQgSVB2NCBhZGRyZXNzIHdpdGggcHJlZml4IGxlbmd0aBooIXJ1bGVzLmlwdjRfd2l0aF9wcmVmaXhsZW4gfHwgdGhpcyAhPSAnJ0gAEskCChNpcHY2X3dpdGhfcHJlZml4bGVuGBwgASgIQqkCwkilAgqNAQoac3RyaW5nLmlwdjZfd2l0aF9wcmVmaXhsZW4SL211c3QgYmUgYSB2YWxpZCBJUHY2IGFkZHJlc3Mgd2l0aCBwcmVmaXggbGVuZ3RoGj4hcnVsZXMuaXB2Nl93aXRoX3ByZWZpeGxlbiB8fCB0aGlzID09ICcnIHx8IHRoaXMuaXNJcFByZWZpeCg2KQqSAQogc3RyaW5nLmlwdjZfd2l0aF9wcmVmaXhsZW5fZW1wdHkSRHZhbHVlIGlzIGVtcHR5LCB3aGljaCBpcyBub3QgYSB2YWxpZCBJUHY2IGFkZHJlc3Mgd2l0aCBwcmVmaXggbGVuZ3RoGighcnVsZXMuaXB2Nl93aXRoX3ByZWZpeGxlbiB8fCB0aGlzICE9ICcnSAAS7AEKCWlwX3ByZWZpeBgdIAEoCELWAcJI0gEKZgoQc3RyaW5nLmlwX3ByZWZpeBIZbXVzdCBiZSBhIHZhbGlkIElQIHByZWZpeBo3IXJ1bGVzLmlwX3ByZWZpeCB8fCB0aGlzID09ICcnIHx8IHRoaXMuaXNJcFByZWZpeCh0cnVlKQpoChZzdHJpbmcuaXBfcHJlZml4X2VtcHR5Ei52YWx1ZSBpcyBlbXB0eSwgd2hpY2ggaXMgbm90IGEgdmFsaWQgSVAgcHJlZml4Gh4hcnVsZXMuaXBfcHJlZml4IHx8IHRoaXMgIT0gJydIABL9AQoLaXB2NF9wcmVmaXgYHiABKAhC5QHCSOEBCm8KEnN0cmluZy5pcHY0X3ByZWZpeBIbbXVzdCBiZSBhIHZhbGlkIElQdjQgcHJlZml4GjwhcnVsZXMuaXB2NF9wcmVmaXggfHwgdGhpcyA9PSAnJyB8fCB0aGlzLmlzSXBQcmVmaXgoNCwgdHJ1ZSkKbgoYc3RyaW5nLmlwdjRfcHJlZml4X2VtcHR5EjB2YWx1ZSBpcyBlbXB0eSwgd2hpY2ggaXMgbm90IGEgdmFsaWQgSVB2NCBwcmVmaXgaICFydWxlcy5pcHY0X3ByZWZpeCB8fCB0aGlzICE9ICcnSAAS/QEKC2lwdjZfcHJlZml4GB8gASgIQuUBwkjhAQpvChJzdHJpbmcuaXB2Nl9wcmVmaXgSG211c3QgYmUgYSB2YWxpZCBJUHY2IHByZWZpeBo8IXJ1bGVzLmlwdjZfcHJlZml4IHx8IHRoaXMgPT0gJycgfHwgdGhpcy5pc0lwUHJlZml4KDYsIHRydWUpCm4KGHN0cmluZy5pcHY2X3ByZWZpeF9lbXB0eRIwdmFsdWUgaXMgZW1wdHksIHdoaWNoIGlzIG5vdCBhIHZhbGlkIElQdjYgcHJlZml4GiAhcnVsZXMuaXB2Nl9wcmVmaXggfHwgdGhpcyAhPSAnJ0gAEq8CCg1ob3N0X2FuZF9wb3J0GCAgASgIQpUCwkiRAgqTAQoUc3RyaW5nLmhvc3RfYW5kX3BvcnQSO211c3QgYmUgYSB2YWxpZCBob3N0IChob3N0bmFtZSBvciBJUCBhZGRyZXNzKSBhbmQgcG9ydCBwYWlyGj4hcnVsZXMuaG9zdF9hbmRfcG9ydCB8fCB0aGlzID09ICcnIHx8IHRoaXMuaXNIb3N0QW5kUG9ydCh0cnVlKQp5ChpzdHJpbmcuaG9zdF9hbmRfcG9ydF9lbXB0eRI3dmFsdWUgaXMgZW1wdHksIHdoaWNoIGlzIG5vdCBhIHZhbGlkIGhvc3QgYW5kIHBvcnQgcGFpchoiIXJ1bGVzLmhvc3RfYW5kX3BvcnQgfHwgdGhpcyAhPSAnJ0gAEu4BCgR1bGlkGCMgASgIQt0BwkjZAQp8CgtzdHJpbmcudWxpZBIUbXVzdCBiZSBhIHZhbGlkIFVMSUQaVyFydWxlcy51bGlkIHx8IHRoaXMgPT0gJycgfHwgdGhpcy5tYXRjaGVzKCdeWzAtN11bMC05QS1ISktNTlAtVFYtWmEtaGprbW5wLXR2LXpdezI1fSQnKQpZChFzdHJpbmcudWxpZF9lbXB0eRIpdmFsdWUgaXMgZW1wdHksIHdoaWNoIGlzIG5vdCBhIHZhbGlkIFVMSUQaGSFydWxlcy51bGlkIHx8IHRoaXMgIT0gJydIABLUAgoMcHJvdG9idWZfZnFuGCUgASgIQrsCwki3AgqvAQoTc3RyaW5nLnByb3RvYnVmX2ZxbhItbXVzdCBiZSBhIHZhbGlkIGZ1bGx5LXF1YWxpZmllZCBQcm90b2J1ZiBuYW1lGmkhcnVsZXMucHJvdG9idWZfZnFuIHx8IHRoaXMgPT0gJycgfHwgdGhpcy5tYXRjaGVzKCdeW0EtWmEtel9dW0EtWmEtel8wLTldKihcXC5bQS1aYS16X11bQS1aYS16XzAtOV0qKSokJykKggEKGXN0cmluZy5wcm90b2J1Zl9mcW5fZW1wdHkSQnZhbHVlIGlzIGVtcHR5LCB3aGljaCBpcyBub3QgYSB2YWxpZCBmdWxseS1xdWFsaWZpZWQgUHJvdG9idWYgbmFtZRohIXJ1bGVzLnByb3RvYnVmX2ZxbiB8fCB0aGlzICE9ICcnSAASkQMKEHByb3RvYnVmX2RvdF9mcW4YJiABKAhC9ALCSPACCs0BChdzdHJpbmcucHJvdG9idWZfZG90X2ZxbhJAbXVzdCBiZSBhIHZhbGlkIGZ1bGx5LXF1YWxpZmllZCBQcm90b2J1ZiBuYW1lIHdpdGggYSBsZWFkaW5nIGRvdBpwIXJ1bGVzLnByb3RvYnVmX2RvdF9mcW4gfHwgdGhpcyA9PSAnJyB8fCB0aGlzLm1hdGNoZXMoJ15cXC5bQS1aYS16X11bQS1aYS16XzAtOV0qKFxcLltBLVphLXpfXVtBLVphLXpfMC05XSopKiQnKQqdAQodc3RyaW5nLnByb3RvYnVmX2RvdF9mcW5fZW1wdHkSVXZhbHVlIGlzIGVtcHR5LCB3aGljaCBpcyBub3QgYSB2YWxpZCBmdWxseS1xdWFsaWZpZWQgUHJvdG9idWYgbmFtZSB3aXRoIGEgbGVhZGluZyBkb3QaJSFydWxlcy5wcm90b2J1Zl9kb3RfZnFuIHx8IHRoaXMgIT0gJydIABKcBQoQd2VsbF9rbm93bl9yZWdleBgYIAEoDjIYLmJ1Zi52YWxpZGF0ZS5Lbm93blJlZ2V4QuUEwkjhBArqAQojc3RyaW5nLndlbGxfa25vd25fcmVnZXguaGVhZGVyX25hbWUSIG11c3QgYmUgYSB2YWxpZCBIVFRQIGhlYWRlciBuYW1lGqABcnVsZXMud2VsbF9rbm93bl9yZWdleCAhPSAxIHx8IHRoaXMgPT0gJycgfHwgdGhpcy5tYXRjaGVzKCFoYXMocnVsZXMuc3RyaWN0KSB8fCBydWxlcy5zdHJpY3QgPydeOj9bMC05YS16QS1aISMkJSZcJyorLS5eX3x+XHg2MF0rJCcgOideW15cdTAwMDBcdTAwMEFcdTAwMERdKyQnKQqNAQopc3RyaW5nLndlbGxfa25vd25fcmVnZXguaGVhZGVyX25hbWVfZW1wdHkSNXZhbHVlIGlzIGVtcHR5LCB3aGljaCBpcyBub3QgYSB2YWxpZCBIVFRQIGhlYWRlciBuYW1lGilydWxlcy53ZWxsX2tub3duX3JlZ2V4ICE9IDEgfHwgdGhpcyAhPSAnJwrhAQokc3RyaW5nLndlbGxfa25vd25fcmVnZXguaGVhZGVyX3ZhbHVlEiFtdXN0IGJlIGEgdmFsaWQgSFRUUCBoZWFkZXIgdmFsdWUalQFydWxlcy53ZWxsX2tub3duX3JlZ2V4ICE9IDIgfHwgdGhpcy5tYXRjaGVzKCFoYXMocnVsZXMuc3RyaWN0KSB8fCBydWxlcy5zdHJpY3QgPydeW15cdTAwMDAtXHUwMDA4XHUwMDBBLVx1MDAxRlx1MDA3Rl0qJCcgOideW15cdTAwMDBcdTAwMEFcdTAwMERdKiQnKUgAEg4KBnN0cmljdBgZIAEoCBIsCgdleGFtcGxlGCIgAygJQhvCSBgKFgoOc3RyaW5nLmV4YW1wbGUaBHRydWUqCQjoBxCAgICAAkIMCgp3ZWxsX2tub3duIt0RCgpCeXRlc1J1bGVzEnoKBWNvbnN0GAEgASgMQmvCSGgKZgoLYnl0ZXMuY29uc3QaV3RoaXMgIT0gZ2V0RmllbGQocnVsZXMsICdjb25zdCcpID8gJ211c3QgYmUgJXgnLmZvcm1hdChbZ2V0RmllbGQocnVsZXMsICdjb25zdCcpXSkgOiAnJxJrCgNsZW4YDSABKARCXsJIWwpZCglieXRlcy5sZW4aTHVpbnQodGhpcy5zaXplKCkpICE9IHJ1bGVzLmxlbiA/ICdtdXN0IGJlICVzIGJ5dGVzJy5mb3JtYXQoW3J1bGVzLmxlbl0pIDogJycSgwEKB21pbl9sZW4YAiABKARCcsJIbwptCg1ieXRlcy5taW5fbGVuGlx1aW50KHRoaXMuc2l6ZSgpKSA8IHJ1bGVzLm1pbl9sZW4gPyAnbXVzdCBiZSBhdCBsZWFzdCAlcyBieXRlcycuZm9ybWF0KFtydWxlcy5taW5fbGVuXSkgOiAnJxKCAQoHbWF4X2xlbhgDIAEoBEJxwkhuCmwKDWJ5dGVzLm1heF9sZW4aW3VpbnQodGhpcy5zaXplKCkpID4gcnVsZXMubWF4X2xlbiA/ICdtdXN0IGJlIGF0IG1vc3QgJXMgYnl0ZXMnLmZvcm1hdChbcnVsZXMubWF4X2xlbl0pIDogJycSigEKB3BhdHRlcm4YBCABKAlCecJIdgp0Cg1ieXRlcy5wYXR0ZXJuGmMhc3RyaW5nKHRoaXMpLm1hdGNoZXMocnVsZXMucGF0dGVybikgPyAnbXVzdCBtYXRjaCByZWdleCBwYXR0ZXJuIGAlc2AnLmZvcm1hdChbcnVsZXMucGF0dGVybl0pIDogJycSewoGcHJlZml4GAUgASgMQmvCSGgKZgoMYnl0ZXMucHJlZml4GlYhdGhpcy5zdGFydHNXaXRoKHJ1bGVzLnByZWZpeCkgPyAnZG9lcyBub3QgaGF2ZSBwcmVmaXggJXgnLmZvcm1hdChbcnVsZXMucHJlZml4XSkgOiAnJxJ5CgZzdWZmaXgYBiABKAxCacJIZgpkCgxieXRlcy5zdWZmaXgaVCF0aGlzLmVuZHNXaXRoKHJ1bGVzLnN1ZmZpeCkgPyAnZG9lcyBub3QgaGF2ZSBzdWZmaXggJXgnLmZvcm1hdChbcnVsZXMuc3VmZml4XSkgOiAnJxJ9Cghjb250YWlucxgHIAEoDEJrwkhoCmYKDmJ5dGVzLmNvbnRhaW5zGlQhdGhpcy5jb250YWlucyhydWxlcy5jb250YWlucykgPyAnZG9lcyBub3QgY29udGFpbiAleCcuZm9ybWF0KFtydWxlcy5jb250YWluc10pIDogJycSoQEKAmluGAggAygMQpQBwkiQAQqNAQoIYnl0ZXMuaW4agAFnZXRGaWVsZChydWxlcywgJ2luJykuc2l6ZSgpID4gMCAmJiAhKHRoaXMgaW4gZ2V0RmllbGQocnVsZXMsICdpbicpKSA/ICdtdXN0IGJlIGluIGxpc3QgJXMnLmZvcm1hdChbZ2V0RmllbGQocnVsZXMsICdpbicpXSkgOiAnJxJwCgZub3RfaW4YCSADKAxCYMJIXQpbCgxieXRlcy5ub3RfaW4aS3RoaXMgaW4gcnVsZXMubm90X2luID8gJ211c3Qgbm90IGJlIGluIGxpc3QgJXMnLmZvcm1hdChbcnVsZXMubm90X2luXSkgOiAnJxLlAQoCaXAYCiABKAhC1gHCSNIBCm4KCGJ5dGVzLmlwEhptdXN0IGJlIGEgdmFsaWQgSVAgYWRkcmVzcxpGIXJ1bGVzLmlwIHx8IHRoaXMuc2l6ZSgpID09IDAgfHwgdGhpcy5zaXplKCkgPT0gNCB8fCB0aGlzLnNpemUoKSA9PSAxNgpgCg5ieXRlcy5pcF9lbXB0eRIvdmFsdWUgaXMgZW1wdHksIHdoaWNoIGlzIG5vdCBhIHZhbGlkIElQIGFkZHJlc3MaHSFydWxlcy5pcCB8fCB0aGlzLnNpemUoKSAhPSAwSAAS3gEKBGlwdjQYCyABKAhCzQHCSMkBCl8KCmJ5dGVzLmlwdjQSHG11c3QgYmUgYSB2YWxpZCBJUHY0IGFkZHJlc3MaMyFydWxlcy5pcHY0IHx8IHRoaXMuc2l6ZSgpID09IDAgfHwgdGhpcy5zaXplKCkgPT0gNApmChBieXRlcy5pcHY0X2VtcHR5EjF2YWx1ZSBpcyBlbXB0eSwgd2hpY2ggaXMgbm90IGEgdmFsaWQgSVB2NCBhZGRyZXNzGh8hcnVsZXMuaXB2NCB8fCB0aGlzLnNpemUoKSAhPSAwSAAS3wEKBGlwdjYYDCABKAhCzgHCSMoBCmAKCmJ5dGVzLmlwdjYSHG11c3QgYmUgYSB2YWxpZCBJUHY2IGFkZHJlc3MaNCFydWxlcy5pcHY2IHx8IHRoaXMuc2l6ZSgpID09IDAgfHwgdGhpcy5zaXplKCkgPT0gMTYKZgoQYnl0ZXMuaXB2Nl9lbXB0eRIxdmFsdWUgaXMgZW1wdHksIHdoaWNoIGlzIG5vdCBhIHZhbGlkIElQdjYgYWRkcmVzcxofIXJ1bGVzLmlwdjYgfHwgdGhpcy5zaXplKCkgIT0gMEgAEs8BCgR1dWlkGA8gASgIQr4Bwki6AQpYCgpieXRlcy51dWlkEhRtdXN0IGJlIGEgdmFsaWQgVVVJRBo0IXJ1bGVzLnV1aWQgfHwgdGhpcy5zaXplKCkgPT0gMCB8fCB0aGlzLnNpemUoKSA9PSAxNgpeChBieXRlcy51dWlkX2VtcHR5Eil2YWx1ZSBpcyBlbXB0eSwgd2hpY2ggaXMgbm90IGEgdmFsaWQgVVVJRBofIXJ1bGVzLnV1aWQgfHwgdGhpcy5zaXplKCkgIT0gMEgAEisKB2V4YW1wbGUYDiADKAxCGsJIFwoVCg1ieXRlcy5leGFtcGxlGgR0cnVlKgkI6AcQgICAgAJCDAoKd2VsbF9rbm93biLBAwoJRW51bVJ1bGVzEnwKBWNvbnN0GAEgASgFQm3CSGoKaAoKZW51bS5jb25zdBpadGhpcyAhPSBnZXRGaWVsZChydWxlcywgJ2NvbnN0JykgPyAnbXVzdCBlcXVhbCAlcycuZm9ybWF0KFtnZXRGaWVsZChydWxlcywgJ2NvbnN0JyldKSA6ICcnEhQKDGRlZmluZWRfb25seRgCIAEoCBJ4CgJpbhgDIAMoBUJswkhpCmcKB2VudW0uaW4aXCEodGhpcyBpbiBnZXRGaWVsZChydWxlcywgJ2luJykpID8gJ211c3QgYmUgaW4gbGlzdCAlcycuZm9ybWF0KFtnZXRGaWVsZChydWxlcywgJ2luJyldKSA6ICcnEm8KBm5vdF9pbhgEIAMoBUJfwkhcCloKC2VudW0ubm90X2luGkt0aGlzIGluIHJ1bGVzLm5vdF9pbiA/ICdtdXN0IG5vdCBiZSBpbiBsaXN0ICVzJy5mb3JtYXQoW3J1bGVzLm5vdF9pbl0pIDogJycSKgoHZXhhbXBsZRgFIAMoBUIZwkgWChQKDGVudW0uZXhhbXBsZRoEdHJ1ZSoJCOgHEICAgIACIu0DCg1SZXBlYXRlZFJ1bGVzEpYBCgltaW5faXRlbXMYASABKARCggHCSH8KfQoScmVwZWF0ZWQubWluX2l0ZW1zGmd1aW50KHRoaXMuc2l6ZSgpKSA8IHJ1bGVzLm1pbl9pdGVtcyA/ICdtdXN0IGNvbnRhaW4gYXQgbGVhc3QgJWQgaXRlbShzKScuZm9ybWF0KFtydWxlcy5taW5faXRlbXNdKSA6ICcnEpwBCgltYXhfaXRlbXMYAiABKARCiAHCSIQBCoEBChJyZXBlYXRlZC5tYXhfaXRlbXMaa3VpbnQodGhpcy5zaXplKCkpID4gcnVsZXMubWF4X2l0ZW1zID8gJ211c3QgY29udGFpbiBubyBtb3JlIHRoYW4gJXMgaXRlbShzKScuZm9ybWF0KFtydWxlcy5tYXhfaXRlbXNdKSA6ICcnEnAKBnVuaXF1ZRgDIAEoCEJgwkhdClsKD3JlcGVhdGVkLnVuaXF1ZRIocmVwZWF0ZWQgdmFsdWUgbXVzdCBjb250YWluIHVuaXF1ZSBpdGVtcxoeIXJ1bGVzLnVuaXF1ZSB8fCB0aGlzLnVuaXF1ZSgpEicKBWl0ZW1zGAQgASgLMhguYnVmLnZhbGlkYXRlLkZpZWxkUnVsZXMqCQjoBxCAgICAAiKKAwoITWFwUnVsZXMSjwEKCW1pbl9wYWlycxgBIAEoBEJ8wkh5CncKDW1hcC5taW5fcGFpcnMaZnVpbnQodGhpcy5zaXplKCkpIDwgcnVsZXMubWluX3BhaXJzID8gJ21hcCBtdXN0IGJlIGF0IGxlYXN0ICVkIGVudHJpZXMnLmZvcm1hdChbcnVsZXMubWluX3BhaXJzXSkgOiAnJxKOAQoJbWF4X3BhaXJzGAIgASgEQnvCSHgKdgoNbWFwLm1heF9wYWlycxpldWludCh0aGlzLnNpemUoKSkgPiBydWxlcy5tYXhfcGFpcnMgPyAnbWFwIG11c3QgYmUgYXQgbW9zdCAlZCBlbnRyaWVzJy5mb3JtYXQoW3J1bGVzLm1heF9wYWlyc10pIDogJycSJgoEa2V5cxgEIAEoCzIYLmJ1Zi52YWxpZGF0ZS5GaWVsZFJ1bGVzEigKBnZhbHVlcxgFIAEoCzIYLmJ1Zi52YWxpZGF0ZS5GaWVsZFJ1bGVzKgkI6AcQgICAgAIiJgoIQW55UnVsZXMSCgoCaW4YAiADKAkSDgoGbm90X2luGAMgAygJIr8WCg1EdXJhdGlvblJ1bGVzEpsBCgVjb25zdBgCIAEoCzIZLmdvb2dsZS5wcm90b2J1Zi5EdXJhdGlvbkJxwkhuCmwKDmR1cmF0aW9uLmNvbnN0Glp0aGlzICE9IGdldEZpZWxkKHJ1bGVzLCAnY29uc3QnKSA/ICdtdXN0IGVxdWFsICVzJy5mb3JtYXQoW2dldEZpZWxkKHJ1bGVzLCAnY29uc3QnKV0pIDogJycSogEKAmx0GAMgASgLMhkuZ29vZ2xlLnByb3RvYnVmLkR1cmF0aW9uQnnCSHYKdAoLZHVyYXRpb24ubHQaZSFoYXMocnVsZXMuZ3RlKSAmJiAhaGFzKHJ1bGVzLmd0KSAmJiB0aGlzID49IHJ1bGVzLmx0PyAnbXVzdCBiZSBsZXNzIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMubHRdKSA6ICcnSAAStAEKA2x0ZRgEIAEoCzIZLmdvb2dsZS5wcm90b2J1Zi5EdXJhdGlvbkKJAcJIhQEKggEKDGR1cmF0aW9uLmx0ZRpyIWhhcyhydWxlcy5ndGUpICYmICFoYXMocnVsZXMuZ3QpICYmIHRoaXMgPiBydWxlcy5sdGU/ICdtdXN0IGJlIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5sdGVdKSA6ICcnSAASowcKAmd0GAUgASgLMhkuZ29vZ2xlLnByb3RvYnVmLkR1cmF0aW9uQvkGwkj1Bgp3CgtkdXJhdGlvbi5ndBpoIWhhcyhydWxlcy5sdCkgJiYgIWhhcyhydWxlcy5sdGUpICYmIHRoaXMgPD0gcnVsZXMuZ3Q/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5ndF0pIDogJycKsAEKDmR1cmF0aW9uLmd0X2x0Gp0BaGFzKHJ1bGVzLmx0KSAmJiBydWxlcy5sdCA+PSBydWxlcy5ndCAmJiAodGhpcyA+PSBydWxlcy5sdCB8fCB0aGlzIDw9IHJ1bGVzLmd0KT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuICVzIGFuZCBsZXNzIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMuZ3QsIHJ1bGVzLmx0XSkgOiAnJwq4AQoYZHVyYXRpb24uZ3RfbHRfZXhjbHVzaXZlGpsBaGFzKHJ1bGVzLmx0KSAmJiBydWxlcy5sdCA8IHJ1bGVzLmd0ICYmIChydWxlcy5sdCA8PSB0aGlzICYmIHRoaXMgPD0gcnVsZXMuZ3QpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMgb3IgbGVzcyB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0LCBydWxlcy5sdF0pIDogJycKwAEKD2R1cmF0aW9uLmd0X2x0ZRqsAWhhcyhydWxlcy5sdGUpICYmIHJ1bGVzLmx0ZSA+PSBydWxlcy5ndCAmJiAodGhpcyA+IHJ1bGVzLmx0ZSB8fCB0aGlzIDw9IHJ1bGVzLmd0KT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuICVzIGFuZCBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJXMnLmZvcm1hdChbcnVsZXMuZ3QsIHJ1bGVzLmx0ZV0pIDogJycKyAEKGWR1cmF0aW9uLmd0X2x0ZV9leGNsdXNpdmUaqgFoYXMocnVsZXMubHRlKSAmJiBydWxlcy5sdGUgPCBydWxlcy5ndCAmJiAocnVsZXMubHRlIDwgdGhpcyAmJiB0aGlzIDw9IHJ1bGVzLmd0KT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuICVzIG9yIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndCwgcnVsZXMubHRlXSkgOiAnJ0gBEu8HCgNndGUYBiABKAsyGS5nb29nbGUucHJvdG9idWYuRHVyYXRpb25CxAfCSMAHCoUBCgxkdXJhdGlvbi5ndGUadSFoYXMocnVsZXMubHQpICYmICFoYXMocnVsZXMubHRlKSAmJiB0aGlzIDwgcnVsZXMuZ3RlPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gJXMnLmZvcm1hdChbcnVsZXMuZ3RlXSkgOiAnJwq/AQoPZHVyYXRpb24uZ3RlX2x0GqsBaGFzKHJ1bGVzLmx0KSAmJiBydWxlcy5sdCA+PSBydWxlcy5ndGUgJiYgKHRoaXMgPj0gcnVsZXMubHQgfHwgdGhpcyA8IHJ1bGVzLmd0ZSk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAlcyBhbmQgbGVzcyB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0ZSwgcnVsZXMubHRdKSA6ICcnCscBChlkdXJhdGlvbi5ndGVfbHRfZXhjbHVzaXZlGqkBaGFzKHJ1bGVzLmx0KSAmJiBydWxlcy5sdCA8IHJ1bGVzLmd0ZSAmJiAocnVsZXMubHQgPD0gdGhpcyAmJiB0aGlzIDwgcnVsZXMuZ3RlKT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzIG9yIGxlc3MgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5ndGUsIHJ1bGVzLmx0XSkgOiAnJwrPAQoQZHVyYXRpb24uZ3RlX2x0ZRq6AWhhcyhydWxlcy5sdGUpICYmIHJ1bGVzLmx0ZSA+PSBydWxlcy5ndGUgJiYgKHRoaXMgPiBydWxlcy5sdGUgfHwgdGhpcyA8IHJ1bGVzLmd0ZSk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAlcyBhbmQgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICVzJy5mb3JtYXQoW3J1bGVzLmd0ZSwgcnVsZXMubHRlXSkgOiAnJwrXAQoaZHVyYXRpb24uZ3RlX2x0ZV9leGNsdXNpdmUauAFoYXMocnVsZXMubHRlKSAmJiBydWxlcy5sdGUgPCBydWxlcy5ndGUgJiYgKHJ1bGVzLmx0ZSA8IHRoaXMgJiYgdGhpcyA8IHJ1bGVzLmd0ZSk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAlcyBvciBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJXMnLmZvcm1hdChbcnVsZXMuZ3RlLCBydWxlcy5sdGVdKSA6ICcnSAESlwEKAmluGAcgAygLMhkuZ29vZ2xlLnByb3RvYnVmLkR1cmF0aW9uQnDCSG0KawoLZHVyYXRpb24uaW4aXCEodGhpcyBpbiBnZXRGaWVsZChydWxlcywgJ2luJykpID8gJ211c3QgYmUgaW4gbGlzdCAlcycuZm9ybWF0KFtnZXRGaWVsZChydWxlcywgJ2luJyldKSA6ICcnEo4BCgZub3RfaW4YCCADKAsyGS5nb29nbGUucHJvdG9idWYuRHVyYXRpb25CY8JIYApeCg9kdXJhdGlvbi5ub3RfaW4aS3RoaXMgaW4gcnVsZXMubm90X2luID8gJ211c3Qgbm90IGJlIGluIGxpc3QgJXMnLmZvcm1hdChbcnVsZXMubm90X2luXSkgOiAnJxJJCgdleGFtcGxlGAkgAygLMhkuZ29vZ2xlLnByb3RvYnVmLkR1cmF0aW9uQh3CSBoKGAoQZHVyYXRpb24uZXhhbXBsZRoEdHJ1ZSoJCOgHEICAgIACQgsKCWxlc3NfdGhhbkIOCgxncmVhdGVyX3RoYW4i6wUKDkZpZWxkTWFza1J1bGVzErkBCgVjb25zdBgBIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2tCjQHCSIkBCoYBChBmaWVsZF9tYXNrLmNvbnN0GnJ0aGlzLnBhdGhzICE9IGdldEZpZWxkKHJ1bGVzLCAnY29uc3QnKS5wYXRocyA/ICdtdXN0IGVxdWFsIHBhdGhzICVzJy5mb3JtYXQoW2dldEZpZWxkKHJ1bGVzLCAnY29uc3QnKS5wYXRoc10pIDogJycS0wEKAmluGAIgAygJQsYBwkjCAQq/AQoNZmllbGRfbWFzay5pbhqtASF0aGlzLnBhdGhzLmFsbChwLCBwIGluIGdldEZpZWxkKHJ1bGVzLCAnaW4nKSB8fCBnZXRGaWVsZChydWxlcywgJ2luJykuZXhpc3RzKGYsIHAuc3RhcnRzV2l0aChmKycuJykpKSA/ICdtdXN0IG9ubHkgY29udGFpbiBwYXRocyBpbiAlcycuZm9ybWF0KFtnZXRGaWVsZChydWxlcywgJ2luJyldKSA6ICcnEu0BCgZub3RfaW4YAyADKAlC3AHCSNgBCtUBChFmaWVsZF9tYXNrLm5vdF9pbhq/ASF0aGlzLnBhdGhzLmFsbChwLCAhKHAgaW4gZ2V0RmllbGQocnVsZXMsICdub3RfaW4nKSB8fCBnZXRGaWVsZChydWxlcywgJ25vdF9pbicpLmV4aXN0cyhmLCBwLnN0YXJ0c1dpdGgoZisnLicpKSkpID8gJ211c3Qgbm90IGNvbnRhaW4gYW55IHBhdGhzIGluICVzJy5mb3JtYXQoW2dldEZpZWxkKHJ1bGVzLCAnbm90X2luJyldKSA6ICcnEkwKB2V4YW1wbGUYBCADKAsyGi5nb29nbGUucHJvdG9idWYuRmllbGRNYXNrQh/CSBwKGgoSZmllbGRfbWFzay5leGFtcGxlGgR0cnVlKgkI6AcQgICAgAIisBcKDlRpbWVzdGFtcFJ1bGVzEp0BCgVjb25zdBgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBCcsJIbwptCg90aW1lc3RhbXAuY29uc3QaWnRoaXMgIT0gZ2V0RmllbGQocnVsZXMsICdjb25zdCcpID8gJ211c3QgZXF1YWwgJXMnLmZvcm1hdChbZ2V0RmllbGQocnVsZXMsICdjb25zdCcpXSkgOiAnJxKkAQoCbHQYAyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQnrCSHcKdQoMdGltZXN0YW1wLmx0GmUhaGFzKHJ1bGVzLmd0ZSkgJiYgIWhhcyhydWxlcy5ndCkgJiYgdGhpcyA+PSBydWxlcy5sdD8gJ211c3QgYmUgbGVzcyB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmx0XSkgOiAnJ0gAErYBCgNsdGUYBCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQooBwkiGAQqDAQoNdGltZXN0YW1wLmx0ZRpyIWhhcyhydWxlcy5ndGUpICYmICFoYXMocnVsZXMuZ3QpICYmIHRoaXMgPiBydWxlcy5sdGU/ICdtdXN0IGJlIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5sdGVdKSA6ICcnSAASZgoGbHRfbm93GAcgASgIQlTCSFEKTwoQdGltZXN0YW1wLmx0X25vdxo7KHJ1bGVzLmx0X25vdyAmJiB0aGlzID4gbm93KSA/ICdtdXN0IGJlIGxlc3MgdGhhbiBub3cnIDogJydIABKpBwoCZ3QYBSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQv4Gwkj6Bgp4Cgx0aW1lc3RhbXAuZ3QaaCFoYXMocnVsZXMubHQpICYmICFoYXMocnVsZXMubHRlKSAmJiB0aGlzIDw9IHJ1bGVzLmd0PyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMuZ3RdKSA6ICcnCrEBCg90aW1lc3RhbXAuZ3RfbHQanQFoYXMocnVsZXMubHQpICYmIHJ1bGVzLmx0ID49IHJ1bGVzLmd0ICYmICh0aGlzID49IHJ1bGVzLmx0IHx8IHRoaXMgPD0gcnVsZXMuZ3QpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMgYW5kIGxlc3MgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5ndCwgcnVsZXMubHRdKSA6ICcnCrkBChl0aW1lc3RhbXAuZ3RfbHRfZXhjbHVzaXZlGpsBaGFzKHJ1bGVzLmx0KSAmJiBydWxlcy5sdCA8IHJ1bGVzLmd0ICYmIChydWxlcy5sdCA8PSB0aGlzICYmIHRoaXMgPD0gcnVsZXMuZ3QpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMgb3IgbGVzcyB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0LCBydWxlcy5sdF0pIDogJycKwQEKEHRpbWVzdGFtcC5ndF9sdGUarAFoYXMocnVsZXMubHRlKSAmJiBydWxlcy5sdGUgPj0gcnVsZXMuZ3QgJiYgKHRoaXMgPiBydWxlcy5sdGUgfHwgdGhpcyA8PSBydWxlcy5ndCk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiAlcyBhbmQgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICVzJy5mb3JtYXQoW3J1bGVzLmd0LCBydWxlcy5sdGVdKSA6ICcnCskBChp0aW1lc3RhbXAuZ3RfbHRlX2V4Y2x1c2l2ZRqqAWhhcyhydWxlcy5sdGUpICYmIHJ1bGVzLmx0ZSA8IHJ1bGVzLmd0ICYmIChydWxlcy5sdGUgPCB0aGlzICYmIHRoaXMgPD0gcnVsZXMuZ3QpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMgb3IgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICVzJy5mb3JtYXQoW3J1bGVzLmd0LCBydWxlcy5sdGVdKSA6ICcnSAES9QcKA2d0ZRgGIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBCyQfCSMUHCoYBCg10aW1lc3RhbXAuZ3RlGnUhaGFzKHJ1bGVzLmx0KSAmJiAhaGFzKHJ1bGVzLmx0ZSkgJiYgdGhpcyA8IHJ1bGVzLmd0ZT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzJy5mb3JtYXQoW3J1bGVzLmd0ZV0pIDogJycKwAEKEHRpbWVzdGFtcC5ndGVfbHQaqwFoYXMocnVsZXMubHQpICYmIHJ1bGVzLmx0ID49IHJ1bGVzLmd0ZSAmJiAodGhpcyA+PSBydWxlcy5sdCB8fCB0aGlzIDwgcnVsZXMuZ3RlKT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzIGFuZCBsZXNzIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMuZ3RlLCBydWxlcy5sdF0pIDogJycKyAEKGnRpbWVzdGFtcC5ndGVfbHRfZXhjbHVzaXZlGqkBaGFzKHJ1bGVzLmx0KSAmJiBydWxlcy5sdCA8IHJ1bGVzLmd0ZSAmJiAocnVsZXMubHQgPD0gdGhpcyAmJiB0aGlzIDwgcnVsZXMuZ3RlKT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzIG9yIGxlc3MgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5ndGUsIHJ1bGVzLmx0XSkgOiAnJwrQAQoRdGltZXN0YW1wLmd0ZV9sdGUaugFoYXMocnVsZXMubHRlKSAmJiBydWxlcy5sdGUgPj0gcnVsZXMuZ3RlICYmICh0aGlzID4gcnVsZXMubHRlIHx8IHRoaXMgPCBydWxlcy5ndGUpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gJXMgYW5kIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndGUsIHJ1bGVzLmx0ZV0pIDogJycK2AEKG3RpbWVzdGFtcC5ndGVfbHRlX2V4Y2x1c2l2ZRq4AWhhcyhydWxlcy5sdGUpICYmIHJ1bGVzLmx0ZSA8IHJ1bGVzLmd0ZSAmJiAocnVsZXMubHRlIDwgdGhpcyAmJiB0aGlzIDwgcnVsZXMuZ3RlKT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzIG9yIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndGUsIHJ1bGVzLmx0ZV0pIDogJydIARJpCgZndF9ub3cYCCABKAhCV8JIVApSChB0aW1lc3RhbXAuZ3Rfbm93Gj4ocnVsZXMuZ3Rfbm93ICYmIHRoaXMgPCBub3cpID8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG5vdycgOiAnJ0gBErEBCgZ3aXRoaW4YCSABKAsyGS5nb29nbGUucHJvdG9idWYuRHVyYXRpb25ChQHCSIEBCn8KEHRpbWVzdGFtcC53aXRoaW4aa3RoaXMgPCBub3ctcnVsZXMud2l0aGluIHx8IHRoaXMgPiBub3crcnVsZXMud2l0aGluID8gJ211c3QgYmUgd2l0aGluICVzIG9mIG5vdycuZm9ybWF0KFtydWxlcy53aXRoaW5dKSA6ICcnEksKB2V4YW1wbGUYCiADKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQh7CSBsKGQoRdGltZXN0YW1wLmV4YW1wbGUaBHRydWUqCQjoBxCAgICAAkILCglsZXNzX3RoYW5CDgoMZ3JlYXRlcl90aGFuIjkKClZpb2xhdGlvbnMSKwoKdmlvbGF0aW9ucxgBIAMoCzIXLmJ1Zi52YWxpZGF0ZS5WaW9sYXRpb24inwEKCVZpb2xhdGlvbhImCgVmaWVsZBgFIAEoCzIXLmJ1Zi52YWxpZGF0ZS5GaWVsZFBhdGgSJQoEcnVsZRgGIAEoCzIXLmJ1Zi52YWxpZGF0ZS5GaWVsZFBhdGgSDwoHcnVsZV9pZBgCIAEoCRIPCgdtZXNzYWdlGAMgASgJEg8KB2Zvcl9rZXkYBCABKAhKBAgBEAJSCmZpZWxkX3BhdGgiPQoJRmllbGRQYXRoEjAKCGVsZW1lbnRzGAEgAygLMh4uYnVmLnZhbGlkYXRlLkZpZWxkUGF0aEVsZW1lbnQi6QIKEEZpZWxkUGF0aEVsZW1lbnQSFAoMZmllbGRfbnVtYmVyGAEgASgFEhIKCmZpZWxkX25hbWUYAiABKAkSPgoKZmllbGRfdHlwZRgDIAEoDjIqLmdvb2dsZS5wcm90b2J1Zi5GaWVsZERlc2NyaXB0b3JQcm90by5UeXBlEjwKCGtleV90eXBlGAQgASgOMiouZ29vZ2xlLnByb3RvYnVmLkZpZWxkRGVzY3JpcHRvclByb3RvLlR5cGUSPgoKdmFsdWVfdHlwZRgFIAEoDjIqLmdvb2dsZS5wcm90b2J1Zi5GaWVsZERlc2NyaXB0b3JQcm90by5UeXBlEg8KBWluZGV4GAYgASgESAASEgoIYm9vbF9rZXkYByABKAhIABIRCgdpbnRfa2V5GAggASgDSAASEgoIdWludF9rZXkYCSABKARIABIUCgpzdHJpbmdfa2V5GAogASgJSABCCwoJc3Vic2NyaXB0KqEBCgZJZ25vcmUSFgoSSUdOT1JFX1VOU1BFQ0lGSUVEEAASGAoUSUdOT1JFX0lGX1pFUk9fVkFMVUUQARIRCg1JR05PUkVfQUxXQVlTEAMiBAgCEAIqDElHTk9SRV9FTVBUWSoOSUdOT1JFX0RFRkFVTFQqF0lHTk9SRV9JRl9ERUZBVUxUX1ZBTFVFKhVJR05PUkVfSUZfVU5QT1BVTEFURUQqbgoKS25vd25SZWdleBIbChdLTk9XTl9SRUdFWF9VTlNQRUNJRklFRBAAEiAKHEtOT1dOX1JFR0VYX0hUVFBfSEVBREVSX05BTUUQARIhCh1LTk9XTl9SRUdFWF9IVFRQX0hFQURFUl9WQUxVRRACOlYKB21lc3NhZ2USHy5nb29nbGUucHJvdG9idWYuTWVzc2FnZU9wdGlvbnMYhwkgASgLMhouYnVmLnZhbGlkYXRlLk1lc3NhZ2VSdWxlc1IHbWVzc2FnZTpOCgVvbmVvZhIdLmdvb2dsZS5wcm90b2J1Zi5PbmVvZk9wdGlvbnMYhwkgASgLMhguYnVmLnZhbGlkYXRlLk9uZW9mUnVsZXNSBW9uZW9mOk4KBWZpZWxkEh0uZ29vZ2xlLnByb3RvYnVmLkZpZWxkT3B0aW9ucxiHCSABKAsyGC5idWYudmFsaWRhdGUuRmllbGRSdWxlc1IFZmllbGQ6XQoKcHJlZGVmaW5lZBIdLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE9wdGlvbnMYiAkgASgLMh0uYnVmLnZhbGlkYXRlLlByZWRlZmluZWRSdWxlc1IKcHJlZGVmaW5lZEJuChJidWlsZC5idWYudmFsaWRhdGVCDVZhbGlkYXRlUHJvdG9QAVpHYnVmLmJ1aWxkL2dlbi9nby9idWZidWlsZC9wcm90b3ZhbGlkYXRlL3Byb3RvY29sYnVmZmVycy9nby9idWYvdmFsaWRhdGU",[pn,bn,Gn,hn]);var H=In("Ciptb2NoYWJ1Z2FwaXMvYWRhcHQvZ3JhcGgvc2lnbmFsX2RhdGEucHJvdG8SGG1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaCKmCgoKU2lnbmFsRGF0YRL3BQoIZmlsZW5hbWUYASABKAlC3wW6SNsFugGvAQobZmlsZW5hbWUubm9fcGF0aF9zZXBhcmF0b3JzEmNGaWxlbmFtZSBjYW5ub3QgY29udGFpbiBwYXRoIHNlcGFyYXRvcnMgKCcvJyBvciAnXCcpLiBVc2Ugb25seSB0aGUgZmlsZW5hbWUgd2l0aG91dCBkaXJlY3RvcnkgcGF0aC4aKyF0aGlzLmNvbnRhaW5zKCcvJykgJiYgIXRoaXMuY29udGFpbnMoJ1xcJym6AbsBCh5maWxlbmFtZS5ub19jb250cm9sX2NoYXJhY3RlcnMSOUZpbGVuYW1lIGNhbm5vdCBjb250YWluIGNvbnRyb2wgY2hhcmFjdGVycyBvciBudWxsIGJ5dGVzLhpeIXRoaXMuY29udGFpbnMoJ1x4MDAnKSAmJiAhdGhpcy5jb250YWlucygnXG4nKSAmJiAhdGhpcy5jb250YWlucygnXHInKSAmJiAhdGhpcy5jb250YWlucygnXHQnKboBbQonZmlsZW5hbWUubm9fbGVhZGluZ190cmFpbGluZ193aGl0ZXNwYWNlEi1GaWxlbmFtZSBjYW5ub3Qgc3RhcnQgb3IgZW5kIHdpdGggd2hpdGVzcGFjZS4aE3RoaXMgPT0gdGhpcy50cmltKCm6AdMBChxmaWxlbmFtZS5ub193aW5kb3dzX3Jlc2VydmVkEmpGaWxlbmFtZSBjYW5ub3QgYmUgYSBXaW5kb3dzIHJlc2VydmVkIG5hbWUgKENPTiwgUFJOLCBBVVgsIE5VTCwgQ09NMS05LCBMUFQxLTkpIHdpdGggb3Igd2l0aG91dCBleHRlbnNpb24uGkchdGhpcy5tYXRjaGVzKCdeKD9pKShDT058UFJOfEFVWHxOVUx8Q09NWzEtOV18TFBUWzEtOV0pKD86XFwuW14uXSopPyQnKXIgEAEY/wEyGV5bXi88PjoifD8qXHgwMC1ceDFGXFxdKyRIAIgBARKCBAoJbWltZV90eXBlGAIgASgJQu4DukjqA7oByQEKFm1pbWVfdHlwZS5ub193aWxkY2FyZHMSmQFNSU1FIHR5cGUgd2lsZGNhcmRzIGFyZSBub3QgYWxsb3dlZCBpbiBTaWduYWxEYXRhLiBVc2UgYSBjb25jcmV0ZSBNSU1FIHR5cGUgbGlrZSAnaW1hZ2UvcG5nJyBvciAnYXBwbGljYXRpb24vcGRmJywgbm90IHdpbGRjYXJkcyBsaWtlICdpbWFnZS8qJyBvciAnKi8qJy4aEyF0aGlzLmNvbnRhaW5zKCcqJym6Ab8BChdtaW1lX3R5cGUubm9fcGFyYW1ldGVycxKOAU1JTUUgdHlwZSBwYXJhbWV0ZXJzIGFyZSBub3QgYWxsb3dlZC4gVXNlICd0ZXh0L3BsYWluJyBpbnN0ZWFkIG9mICd0ZXh0L3BsYWluOyBjaGFyc2V0PXV0Zi04Jy4gVVRGLTggZW5jb2RpbmcgaXMgYXNzdW1lZCBmb3IgYWxsIHRleHQgZm9ybWF0cy4aEyF0aGlzLmNvbnRhaW5zKCc7JylyWBADGP8BMlFeW2EtekEtWjAtOV1bYS16QS1aMC05ISMkJlwtXl8uK117MCwxMjZ9L1thLXpBLVowLTldW2EtekEtWjAtOSEjJCZcLV5fLitdezAsMTI2fSQSDAoEZGF0YRgDIAEoDEILCglfZmlsZW5hbWViBnByb3RvMw",[m]),D=yn(H,0);import{fileDesc as Xn,messageDesc as Vn}from"@bufbuild/protobuf/codegenv2";import{fileDesc as Zn,messageDesc as An}from"@bufbuild/protobuf/codegenv2";import{file_google_protobuf_struct as Rn}from"@bufbuild/protobuf/wkt";var de=Zn("Ciltb2NoYWJ1Z2FwaXMvYWRhcHQvZ3JhcGgvanRkX3NjaGVtYS5wcm90bxIYbW9jaGFidWdhcGlzLmFkYXB0LmdyYXBoIpMWCglKVERTY2hlbWESegoLZGVmaW5pdGlvbnMYASADKAsyNC5tb2NoYWJ1Z2FwaXMuYWRhcHQuZ3JhcGguSlREU2NoZW1hLkRlZmluaXRpb25zRW50cnlCL7pILJoBKQgAEOgHIiJyIBABGGQyGl5bXyRhLXpBLVpdW18kYS16QS1aMC05XSokEi4KCG1ldGFkYXRhGAIgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgAiAEBEhUKCG51bGxhYmxlGAMgASgISAGIAQESNwoDcmVmGAQgASgJQiW6SCJyIBABGGQyGl5bXyRhLXpBLVpdW18kYS16QS1aMC05XSokSAKIAQEScQoEdHlwZRgFIAEoCUJeukhbcllSB2Jvb2xlYW5SB2Zsb2F0MzJSB2Zsb2F0NjRSBGludDhSBXVpbnQ4UgVpbnQxNlIGdWludDE2UgVpbnQzMlIGdWludDMyUgZzdHJpbmdSCXRpbWVzdGFtcEgDiAEBEiQKBGVudW0YBiADKAlCFrpIE5IBEAgAEOgHGAEiB3IFEAEY6AcSOgoIZWxlbWVudHMYByABKAsyIy5tb2NoYWJ1Z2FwaXMuYWRhcHQuZ3JhcGguSlREU2NoZW1hSASIAQESXAoKcHJvcGVydGllcxgIIAMoCzIzLm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC5KVERTY2hlbWEuUHJvcGVydGllc0VudHJ5QhO6SBCaAQ0IABDoByIGcgQQARhkEm0KE29wdGlvbmFsX3Byb3BlcnRpZXMYCSADKAsyOy5tb2NoYWJ1Z2FwaXMuYWRhcHQuZ3JhcGguSlREU2NoZW1hLk9wdGlvbmFsUHJvcGVydGllc0VudHJ5QhO6SBCaAQ0IABDoByIGcgQQARhkEiIKFWFkZGl0aW9uYWxfcHJvcGVydGllcxgKIAEoCEgFiAEBEjgKBnZhbHVlcxgLIAEoCzIjLm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC5KVERTY2hlbWFIBogBARIlCg1kaXNjcmltaW5hdG9yGAwgASgJQgm6SAZyBBABGGRIB4gBARJWCgdtYXBwaW5nGA0gAygLMjAubW9jaGFidWdhcGlzLmFkYXB0LmdyYXBoLkpURFNjaGVtYS5NYXBwaW5nRW50cnlCE7pIEJoBDQgAEOgHIgZyBBABGGQaVwoQRGVmaW5pdGlvbnNFbnRyeRILCgNrZXkYASABKAkSMgoFdmFsdWUYAiABKAsyIy5tb2NoYWJ1Z2FwaXMuYWRhcHQuZ3JhcGguSlREU2NoZW1hOgI4ARpWCg9Qcm9wZXJ0aWVzRW50cnkSCwoDa2V5GAEgASgJEjIKBXZhbHVlGAIgASgLMiMubW9jaGFidWdhcGlzLmFkYXB0LmdyYXBoLkpURFNjaGVtYToCOAEaXgoXT3B0aW9uYWxQcm9wZXJ0aWVzRW50cnkSCwoDa2V5GAEgASgJEjIKBXZhbHVlGAIgASgLMiMubW9jaGFidWdhcGlzLmFkYXB0LmdyYXBoLkpURFNjaGVtYToCOAEaUwoMTWFwcGluZ0VudHJ5EgsKA2tleRgBIAEoCRIyCgV2YWx1ZRgCIAEoCzIjLm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC5KVERTY2hlbWE6AjgBOrULukixCxqTAwocanRkLm11dHVhbGx5X2V4Y2x1c2l2ZV9mb3JtcxKIAVNjaGVtYSBtdXN0IHVzZSBleGFjdGx5IG9uZSBmb3JtIChlbXB0eSwgcmVmLCB0eXBlLCBlbnVtLCBlbGVtZW50cywgcHJvcGVydGllcywgdmFsdWVzLCBvciBkaXNjcmltaW5hdG9yKS4gTXVsdGlwbGUgZm9ybSBrZXl3b3JkcyBmb3VuZC4a5wFbaGFzKHRoaXMucmVmKSwgaGFzKHRoaXMudHlwZSksIHNpemUodGhpcy5lbnVtKSA+IDAsIGhhcyh0aGlzLmVsZW1lbnRzKSwgc2l6ZSh0aGlzLnByb3BlcnRpZXMpID4gMCB8fCBzaXplKHRoaXMub3B0aW9uYWxfcHJvcGVydGllcykgPiAwLCBoYXModGhpcy52YWx1ZXMpLCBoYXModGhpcy5kaXNjcmltaW5hdG9yKSAmJiBzaXplKHRoaXMubWFwcGluZykgPiAwXS5maWx0ZXIoeCwgeCkuc2l6ZSgpIDw9IDEa+AEKGWp0ZC5wcm9wZXJ0aWVzX25vX292ZXJsYXASWFByb3BlcnRpZXMgYW5kIG9wdGlvbmFsX3Byb3BlcnRpZXMgY2Fubm90IGhhdmUgb3ZlcmxhcHBpbmcga2V5cyAoUkZDIDg5MjcgU2VjdGlvbiAyLjIuNikagAEhKHNpemUodGhpcy5wcm9wZXJ0aWVzKSA+IDAgJiYgc2l6ZSh0aGlzLm9wdGlvbmFsX3Byb3BlcnRpZXMpID4gMCkgfHwgdGhpcy5wcm9wZXJ0aWVzLmFsbChwaywgIShwayBpbiB0aGlzLm9wdGlvbmFsX3Byb3BlcnRpZXMpKRqQAgoxanRkLmFkZGl0aW9uYWxfcHJvcGVydGllc19vbmx5X29uX3Byb3BlcnRpZXNfZm9ybRJ2YWRkaXRpb25hbF9wcm9wZXJ0aWVzIGNhbiBvbmx5IGJlIHNldCB3aGVuIHVzaW5nIHRoZSBwcm9wZXJ0aWVzIGZvcm0gKGhhcyBub24tZW1wdHkgcHJvcGVydGllcyBvciBvcHRpb25hbF9wcm9wZXJ0aWVzKRpjIWhhcyh0aGlzLmFkZGl0aW9uYWxfcHJvcGVydGllcykgfHwgc2l6ZSh0aGlzLnByb3BlcnRpZXMpID4gMCB8fCBzaXplKHRoaXMub3B0aW9uYWxfcHJvcGVydGllcykgPiAwGsIBCiJqdGQuZGlzY3JpbWluYXRvcl9yZXF1aXJlc19tYXBwaW5nEmdkaXNjcmltaW5hdG9yIGFuZCBtYXBwaW5nIG11c3QgYXBwZWFyIHRvZ2V0aGVyIHdpdGggYXQgbGVhc3Qgb25lIG1hcHBpbmcgZW50cnkgKFJGQyA4OTI3IFNlY3Rpb24gMi4yLjgpGjNoYXModGhpcy5kaXNjcmltaW5hdG9yKSA9PSAoc2l6ZSh0aGlzLm1hcHBpbmcpID4gMCkaxQIKEmp0ZC5lbnVtX25vbl9lbXB0eRJKZW51bSBhcnJheSBtdXN0IGJlIG5vbi1lbXB0eSB3aGVuIHVzaW5nIGVudW0gZm9ybSAoUkZDIDg5MjcgU2VjdGlvbiAyLjIuNCka4gFzaXplKHRoaXMuZW51bSkgPiAwICYmICFoYXModGhpcy50eXBlKSAmJiAhaGFzKHRoaXMucmVmKSAmJiAhaGFzKHRoaXMuZWxlbWVudHMpICYmICFoYXModGhpcy52YWx1ZXMpICYmICFoYXModGhpcy5kaXNjcmltaW5hdG9yKSAmJiBzaXplKHRoaXMucHJvcGVydGllcykgPT0gMCAmJiBzaXplKHRoaXMub3B0aW9uYWxfcHJvcGVydGllcykgPT0gMCA/IHNpemUodGhpcy5lbnVtKSA+IDAgOiB0cnVlQgsKCV9tZXRhZGF0YUILCglfbnVsbGFibGVCBgoEX3JlZkIHCgVfdHlwZUILCglfZWxlbWVudHNCGAoWX2FkZGl0aW9uYWxfcHJvcGVydGllc0IJCgdfdmFsdWVzQhAKDl9kaXNjcmltaW5hdG9yYgZwcm90bzM",[m,Rn]),Dt=An(de,0);var v=Xn("Cixtb2NoYWJ1Z2FwaXMvYWRhcHQvZ3JhcGgvc2lnbmFsX2Zvcm1hdC5wcm90bxIYbW9jaGFidWdhcGlzLmFkYXB0LmdyYXBoIo8FCgxTaWduYWxGb3JtYXQSOQoKanRkX3NjaGVtYRgBIAEoCzIjLm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC5KVERTY2hlbWFIABKyBAoJbWltZV90eXBlGAIgASgJQpwEukiYBLoBmwIKMG1pbWVfdHlwZS5ub190eXBlX3dpbGRjYXJkX3dpdGhfY29uY3JldGVfc3VidHlwZRK7AVR5cGUgd2lsZGNhcmQgd2l0aCBjb25jcmV0ZSBzdWJ0eXBlIChlLmcuLCAnKi9wbmcnLCAnKi9qc29uJykgaXMgbm90IGFsbG93ZWQuIFVzZSBjb25jcmV0ZSB0eXBlIChlLmcuLCAnaW1hZ2UvcG5nJyksIHR5cGUtZmFtaWx5IHdpbGRjYXJkIChlLmcuLCAnaW1hZ2UvKicpLCBvciB1bml2ZXJzYWwgd2lsZGNhcmQgKCcqLyonKS4aKSEodGhpcy5zdGFydHNXaXRoKCcqLycpICYmIHRoaXMgIT0gJyovKicpugGRAQodbWltZV90eXBlLm5vX2FwcGxpY2F0aW9uX2pzb24SR2dlbmVyaWMganNvbiBpcyBqdGQtc2NoZW1hIHdpdGggZW1wdHkgc2NoZW1hLCB0aGlzIHdpbGwgYWNjZXB0IGFueSBKU09OGid0aGlzLmxvd2VyQXNjaWkoKSAhPSAnYXBwbGljYXRpb24vanNvbidyYhADGP8BMlteKFthLXpBLVowLTldW2EtekEtWjAtOSEjJCZcLV5fLitdezAsMTI2fXxcKikvKFthLXpBLVowLTldW2EtekEtWjAtOSEjJCZcLV5fLitdezAsMTI2fXxcKikkSABCDwoGZm9ybWF0EgW6SAIIAWIGcHJvdG8z",[m,de]),We=Vn(v,0);import{fileDesc as kn,messageDesc as Kn}from"@bufbuild/protobuf/codegenv2";import{fileDesc as Bn,messageDesc as Yn}from"@bufbuild/protobuf/codegenv2";import{fileDesc as Jn,messageDesc as Cn}from"@bufbuild/protobuf/codegenv2";import{fileDesc as Sn,messageDesc as Wn}from"@bufbuild/protobuf/codegenv2";var U=Sn("CjBtb2NoYWJ1Z2FwaXMvYWRhcHQvZ3JhcGgvc2lnbmFsX2Rlc2NyaXB0b3IucHJvdG8SGG1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaCKMAgoQU2lnbmFsRGVzY3JpcHRvchIzCgRuYW1lGAEgASgJQiW6SCJyIBABGDIyGl5bXyRhLXpBLVpdW18kYS16QS1aMC05XSokEhwKBWxhYmVsGAIgASgJQgi6SAVyAxj6AUgAiAEBEiIKC2Rlc2NyaXB0aW9uGAMgASgJQgi6SAVyAxjoB0gBiAEBEhUKCG9wdGlvbmFsGAQgASgISAKIAQESQwoHZm9ybWF0cxgFIAMoCzImLm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC5TaWduYWxGb3JtYXRCCrpIB5IBBAgBEDJCCAoGX2xhYmVsQg4KDF9kZXNjcmlwdGlvbkILCglfb3B0aW9uYWxiBnByb3RvMw",[m,v]),na=Wn(U,0);var le=Jn("Ciptb2NoYWJ1Z2FwaXMvYWRhcHQvZ3JhcGgvdHJhbnNjZWl2ZXIucHJvdG8SGG1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaCLMAgoLVHJhbnNjZWl2ZXISMwoEbmFtZRgBIAEoCUIlukgiciAQARgyMhpeW18kYS16QS1aXVtfJGEtekEtWjAtOV0qJBIiCgtkZXNjcmlwdGlvbhgCIAEoCUIIukgFcgMY+gFIAIgBARKtAQoHc2lnbmFscxgDIAMoCzIqLm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC5TaWduYWxEZXNjcmlwdG9yQnC6SG26AWQKFHNpZ25hbHNfdW5pcXVlX25hbWVzEiRFYWNoIHNpZ25hbCBtdXN0IGhhdmUgYSB1bmlxdWUgbmFtZS4aJnRoaXMubWFwKHNpZ25hbCwgc2lnbmFsLm5hbWUpLnVuaXF1ZSgpkgEDEIAEEhYKCXN0cmVhbWluZxgEIAEoCEgBiAEBQg4KDF9kZXNjcmlwdGlvbkIMCgpfc3RyZWFtaW5nYgZwcm90bzM",[m,U]),ca=Cn(le,0);var re=Bn("Cidtb2NoYWJ1Z2FwaXMvYWRhcHQvZ3JhcGgvZXhjaGFuZ2UucHJvdG8SGG1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaCLuAwoIRXhjaGFuZ2USMwoEbmFtZRgBIAEoCUIlukgiciAQARgyMhpeW18kYS16QS1aXVtfJGEtekEtWjAtOV0qJBIiCgtkZXNjcmlwdGlvbhgCIAEoCUIIukgFcgMY6AdIAIgBARLCAQoMdHJhbnNtaXR0ZXJzGAMgAygLMiUubW9jaGFidWdhcGlzLmFkYXB0LmdyYXBoLlRyYW5zY2VpdmVyQoQBukiAAboBeAoZdHJhbnNtaXR0ZXJzX3VuaXF1ZV9uYW1lcxIpRWFjaCB0cmFuc21pdHRlciBtdXN0IGhhdmUgYSB1bmlxdWUgbmFtZS4aMHRoaXMubWFwKHRyYW5zbWl0dGVyLCB0cmFuc21pdHRlci5uYW1lKS51bmlxdWUoKZIBAhAyErMBCglyZWNlaXZlcnMYBCADKAsyJS5tb2NoYWJ1Z2FwaXMuYWRhcHQuZ3JhcGguVHJhbnNjZWl2ZXJCebpIdroBbAoWcmVjZWl2ZXJzX3VuaXF1ZV9uYW1lcxImRWFjaCByZWNlaXZlciBtdXN0IGhhdmUgYSB1bmlxdWUgbmFtZS4aKnRoaXMubWFwKHJlY2VpdmVyLCByZWNlaXZlci5uYW1lKS51bmlxdWUoKZIBBAgBEDJCDgoMX2Rlc2NyaXB0aW9uYgZwcm90bzM",[m,le]),ra=Yn(re,0);import{fileDesc as Mn,messageDesc as Hn}from"@bufbuild/protobuf/codegenv2";import{enumDesc as Fn,fileDesc as xn,messageDesc as fn}from"@bufbuild/protobuf/codegenv2";var te=xn("Ci1tb2NoYWJ1Z2FwaXMvYWRhcHQvZ3JhcGgvc2lnbmFsX2JpbmRpbmcucHJvdG8SGG1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaCLUBAoNU2lnbmFsQmluZGluZxIzCgRuYW1lGAEgASgJQiW6SCJyIBABGDIyGl5bXyRhLXpBLVpdW18kYS16QS1aMC05XSokEhwKBWxhYmVsGAIgASgJQgi6SAVyAxj6AUgAiAEBEiIKC2Rlc2NyaXB0aW9uGAMgASgJQgi6SAVyAxjoB0gBiAEBEhUKCG9wdGlvbmFsGAQgASgISAKIAQESQwoHYWNjZXB0cxgFIAMoCzImLm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC5TaWduYWxGb3JtYXRCCrpIB5IBBAgBEDISgwEKCXJlZmVyZW5jZRgGIAEoCUJwukht2AEBcmgY+gEyY14oWzAtOWEtel17NH0vW18kYS16QS1aXVtfJGEtekEtWjAtOV0qL1tfJGEtekEtWl1bXyRhLXpBLVowLTldKnxjb25zdGFudC9bXyRhLXpBLVpdW18kYS16QS1aMC05XSopJBJLCgVlcnJvchgIIAEoDjItLm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC5TaWduYWxCaW5kaW5nLkVycm9yQgi6SAWCAQIgAEgDiAEBImYKBUVycm9yEhUKEUVSUk9SX1VOU1BFQ0lGSUVEEAASEQoNRVJST1JfVU5CT1VORBABEhgKFEVSUk9SX0lOVkFMSURfU09VUkNFEAISGQoVRVJST1JfU0NIRU1BX01JU01BVENIEANCCAoGX2xhYmVsQg4KDF9kZXNjcmlwdGlvbkILCglfb3B0aW9uYWxCCAoGX2Vycm9ySgQIBxAIYgZwcm90bzM",[m,v]),Ga=fn(te,0),En=(a=>(a[a.UNSPECIFIED=0]="UNSPECIFIED",a[a.UNBOUND=1]="UNBOUND",a[a.INVALID_SOURCE=2]="INVALID_SOURCE",a[a.SCHEMA_MISMATCH=3]="SCHEMA_MISMATCH",a))(En||{}),ha=Fn(te,0,0);var me=Mn("Cidtb2NoYWJ1Z2FwaXMvYWRhcHQvZ3JhcGgvcmVjZWl2ZXIucHJvdG8SGG1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaCKlAgoIUmVjZWl2ZXISMwoEbmFtZRgBIAEoCUIlukgiciAQARgyMhpeW18kYS16QS1aXVtfJGEtekEtWjAtOV0qJBIiCgtkZXNjcmlwdGlvbhgCIAEoCUIIukgFcgMY+gFIAIgBARKvAQoIYmluZGluZ3MYAyADKAsyJy5tb2NoYWJ1Z2FwaXMuYWRhcHQuZ3JhcGguU2lnbmFsQmluZGluZ0J0ukhxugFoChViaW5kaW5nc191bmlxdWVfbmFtZXMSJUVhY2ggYmluZGluZyBtdXN0IGhhdmUgYSB1bmlxdWUgbmFtZS4aKHRoaXMubWFwKGJpbmRpbmcsIGJpbmRpbmcubmFtZSkudW5pcXVlKCmSAQMQgARCDgoMX2Rlc2NyaXB0aW9uYgZwcm90bzM",[m,te]),Ra=Hn(me,0);import{enumDesc as vn,fileDesc as zn,messageDesc as Ln}from"@bufbuild/protobuf/codegenv2";var T=zn("Ciptb2NoYWJ1Z2FwaXMvYWRhcHQvZ3JhcGgvdHJhbnNtaXR0ZXIucHJvdG8SGG1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaCLCAwoLVHJhbnNtaXR0ZXISMwoEbmFtZRgBIAEoCUIlukgiciAQARgyMhpeW18kYS16QS1aXVtfJGEtekEtWjAtOV0qJBIiCgtkZXNjcmlwdGlvbhgCIAEoCUIIukgFcgMY+gFIAIgBARKtAQoHc2lnbmFscxgDIAMoCzIqLm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC5TaWduYWxEZXNjcmlwdG9yQnC6SG26AWQKFHNpZ25hbHNfdW5pcXVlX25hbWVzEiRFYWNoIHNpZ25hbCBtdXN0IGhhdmUgYSB1bmlxdWUgbmFtZS4aJnRoaXMubWFwKHNpZ25hbCwgc2lnbmFsLm5hbWUpLnVuaXF1ZSgpkgEDEIAEEj0KBG1vZGUYBCABKA4yKi5tb2NoYWJ1Z2FwaXMuYWRhcHQuZ3JhcGguVHJhbnNtaXR0ZXIuTW9kZUgBiAEBIlIKBE1vZGUSFAoQTU9ERV9VTlNQRUNJRklFRBAAEhEKDU1PREVfU1RBTkRBUkQQARIPCgtNT0RFX1NUUkVBTRACEhAKDE1PREVfRkFJTFVSRRADQg4KDF9kZXNjcmlwdGlvbkIHCgVfbW9kZWIGcHJvdG8z",[m,U]),Ja=Ln(T,0),Qn=(a=>(a[a.UNSPECIFIED=0]="UNSPECIFIED",a[a.STANDARD=1]="STANDARD",a[a.STREAM=2]="STREAM",a[a.FAILURE=3]="FAILURE",a))(Qn||{}),Ca=vn(T,0,0);import{fileDesc as Nn,messageDesc as Fa}from"@bufbuild/protobuf/codegenv2";var Je=Nn("Cjxtb2NoYWJ1Z2FwaXMvYWRhcHQvZ3JhcGgvdXNlcl9kZWZpbmVkX2V4Y2hhbmdlX29wdGlvbnMucHJvdG8SGG1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaCLHFQoaVXNlckRlZmluZWRFeGNoYW5nZU9wdGlvbnMSaQoTdHJhbnNtaXR0ZXJfb3B0aW9ucxgBIAEoCzJHLm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC5Vc2VyRGVmaW5lZEV4Y2hhbmdlT3B0aW9ucy5UcmFuc2NlaXZlck9wdGlvbnNIAIgBARJmChByZWNlaXZlcl9vcHRpb25zGAIgASgLMkcubW9jaGFidWdhcGlzLmFkYXB0LmdyYXBoLlVzZXJEZWZpbmVkRXhjaGFuZ2VPcHRpb25zLlRyYW5zY2VpdmVyT3B0aW9uc0gBiAEBEiMKDW1heF9leGNoYW5nZXMYAyABKAVCB7pIBBoCKABIAogBARIjCg1taW5fZXhjaGFuZ2VzGAQgASgFQge6SAQaAigASAOIAQES0QEKDmV4Y2hhbmdlX2xvY2tzGAUgAygLMkEubW9jaGFidWdhcGlzLmFkYXB0LmdyYXBoLlVzZXJEZWZpbmVkRXhjaGFuZ2VPcHRpb25zLkV4Y2hhbmdlTG9ja0J2ukhzugFwChtleGNoYW5nZV9sb2Nrc191bmlxdWVfbmFtZXMSMUVhY2ggZXhjaGFuZ2UgbG9jayBtdXN0IHRhcmdldCBhIHVuaXF1ZSBleGNoYW5nZS4aHnRoaXMubWFwKGVsLCBlbC5uYW1lKS51bmlxdWUoKRqVAQoKU2lnbmFsTG9jaxIzCgRuYW1lGAEgASgJQiW6SCJyIBABGDIyGl5bXyRhLXpBLVpdW18kYS16QS1aMC05XSokEkEKDG11c3Rfc3Vic3VtZRgCIAEoCzImLm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC5TaWduYWxGb3JtYXRIAIgBAUIPCg1fbXVzdF9zdWJzdW1lGsAFCg9UcmFuc2NlaXZlckxvY2sSMwoEbmFtZRgBIAEoCUIlukgiciAQARgyMhpeW18kYS16QS1aXVtfJGEtekEtWjAtOV0qJBLFAQoMc2lnbmFsX2xvY2tzGAIgAygLMj8ubW9jaGFidWdhcGlzLmFkYXB0LmdyYXBoLlVzZXJEZWZpbmVkRXhjaGFuZ2VPcHRpb25zLlNpZ25hbExvY2tCbrpIa7oBaAoZc2lnbmFsX2xvY2tzX3VuaXF1ZV9uYW1lcxItRWFjaCBzaWduYWwgbG9jayBtdXN0IHRhcmdldCBhIHVuaXF1ZSBzaWduYWwuGhx0aGlzLm1hcChzLCBzLm5hbWUpLnVuaXF1ZSgpEiEKC21pbl9zaWduYWxzGAMgASgFQge6SAQaAigASACIAQESIQoLbWF4X3NpZ25hbHMYBCABKAVCB7pIBBoCKABIAYgBATrJArpIxQIaowEKD21pbl9tYXhfc2lnbmFscxI2bWluX3NpZ25hbHMgbXVzdCBiZSBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gbWF4X3NpZ25hbHMuGlghaGFzKHRoaXMubWluX3NpZ25hbHMpIHx8ICFoYXModGhpcy5tYXhfc2lnbmFscykgfHwgdGhpcy5taW5fc2lnbmFscyA8PSB0aGlzLm1heF9zaWduYWxzGpwBChZtaW5fc2lnbmFsc19ndGVfbG9ja2VkEjptaW5fc2lnbmFscyBtdXN0IGJlIGF0IGxlYXN0IHRoZSBudW1iZXIgb2YgbG9ja2VkIHNpZ25hbHMuGkYhaGFzKHRoaXMubWluX3NpZ25hbHMpIHx8IHRoaXMubWluX3NpZ25hbHMgPj0gdGhpcy5zaWduYWxfbG9ja3Muc2l6ZSgpQg4KDF9taW5fc2lnbmFsc0IOCgxfbWF4X3NpZ25hbHMaigYKElRyYW5zY2VpdmVyT3B0aW9ucxIcCg9hbGxvd19zdHJlYW1pbmcYASABKAhIAIgBARLGAQoFbG9ja3MYAiADKAsyRC5tb2NoYWJ1Z2FwaXMuYWRhcHQuZ3JhcGguVXNlckRlZmluZWRFeGNoYW5nZU9wdGlvbnMuVHJhbnNjZWl2ZXJMb2NrQnG6SG66AWsKEmxvY2tzX3VuaXF1ZV9uYW1lcxI3RWFjaCB0cmFuc2NlaXZlciBsb2NrIG11c3QgdGFyZ2V0IGEgdW5pcXVlIHRyYW5zY2VpdmVyLhocdGhpcy5tYXAobCwgbC5uYW1lKS51bmlxdWUoKRImChBtaW5fdHJhbnNjZWl2ZXJzGAMgASgFQge6SAQaAigASAGIAQESJgoQbWF4X3RyYW5zY2VpdmVycxgEIAEoBUIHukgEGgIoAEgCiAEBOv4Cukj6AhrGAQoUbWluX21heF90cmFuc2NlaXZlcnMSQG1pbl90cmFuc2NlaXZlcnMgbXVzdCBiZSBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gbWF4X3RyYW5zY2VpdmVycy4abCFoYXModGhpcy5taW5fdHJhbnNjZWl2ZXJzKSB8fCAhaGFzKHRoaXMubWF4X3RyYW5zY2VpdmVycykgfHwgdGhpcy5taW5fdHJhbnNjZWl2ZXJzIDw9IHRoaXMubWF4X3RyYW5zY2VpdmVycxquAQobbWluX3RyYW5zY2VpdmVyc19ndGVfbG9ja2VkEkRtaW5fdHJhbnNjZWl2ZXJzIG11c3QgYmUgYXQgbGVhc3QgdGhlIG51bWJlciBvZiBsb2NrZWQgdHJhbnNjZWl2ZXJzLhpJIWhhcyh0aGlzLm1pbl90cmFuc2NlaXZlcnMpIHx8IHRoaXMubWluX3RyYW5zY2VpdmVycyA+PSB0aGlzLmxvY2tzLnNpemUoKUISChBfYWxsb3dfc3RyZWFtaW5nQhMKEV9taW5fdHJhbnNjZWl2ZXJzQhMKEV9tYXhfdHJhbnNjZWl2ZXJzGsMCCgxFeGNoYW5nZUxvY2sSMwoEbmFtZRgBIAEoCUIlukgiciAQARgyMhpeW18kYS16QS1aXVtfJGEtekEtWjAtOV0qJBJpChN0cmFuc21pdHRlcl9vcHRpb25zGAIgASgLMkcubW9jaGFidWdhcGlzLmFkYXB0LmdyYXBoLlVzZXJEZWZpbmVkRXhjaGFuZ2VPcHRpb25zLlRyYW5zY2VpdmVyT3B0aW9uc0gAiAEBEmYKEHJlY2VpdmVyX29wdGlvbnMYAyABKAsyRy5tb2NoYWJ1Z2FwaXMuYWRhcHQuZ3JhcGguVXNlckRlZmluZWRFeGNoYW5nZU9wdGlvbnMuVHJhbnNjZWl2ZXJPcHRpb25zSAGIAQFCFgoUX3RyYW5zbWl0dGVyX29wdGlvbnNCEwoRX3JlY2VpdmVyX29wdGlvbnM6uAG6SLQBGrEBChFtaW5fbWF4X2V4Y2hhbmdlcxI6bWluX2V4Y2hhbmdlcyBtdXN0IGJlIGxlc3MgdGhhbiBvciBlcXVhbCB0byBtYXhfZXhjaGFuZ2VzLhpgIWhhcyh0aGlzLm1pbl9leGNoYW5nZXMpIHx8ICFoYXModGhpcy5tYXhfZXhjaGFuZ2VzKSB8fCB0aGlzLm1pbl9leGNoYW5nZXMgPD0gdGhpcy5tYXhfZXhjaGFuZ2VzQhYKFF90cmFuc21pdHRlcl9vcHRpb25zQhMKEV9yZWNlaXZlcl9vcHRpb25zQhAKDl9tYXhfZXhjaGFuZ2VzQhAKDl9taW5fZXhjaGFuZ2VzYgZwcm90bzM",[m,v]);var O=kn("Ci5tb2NoYWJ1Z2FwaXMvYWRhcHQvZ3JhcGgvdmVydGV4X21ldGFkYXRhLnByb3RvEhhtb2NoYWJ1Z2FwaXMuYWRhcHQuZ3JhcGgi5RQKDlZlcnRleE1ldGFkYXRhEhAKCGNvbXBsZXRlGAEgASgIErABCglyZWNlaXZlcnMYAiADKAsyIi5tb2NoYWJ1Z2FwaXMuYWRhcHQuZ3JhcGguUmVjZWl2ZXJCebpIdroBbAoWcmVjZWl2ZXJzX3VuaXF1ZV9uYW1lcxImRWFjaCByZWNlaXZlciBtdXN0IGhhdmUgYSB1bmlxdWUgbmFtZS4aKnRoaXMubWFwKHJlY2VpdmVyLCByZWNlaXZlci5uYW1lKS51bmlxdWUoKZIBBAgBEDISwgEKDHRyYW5zbWl0dGVycxgDIAMoCzIlLm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC5UcmFuc21pdHRlckKEAbpIgAG6AXgKGXRyYW5zbWl0dGVyc191bmlxdWVfbmFtZXMSKUVhY2ggdHJhbnNtaXR0ZXIgbXVzdCBoYXZlIGEgdW5pcXVlIG5hbWUuGjB0aGlzLm1hcCh0cmFuc21pdHRlciwgdHJhbnNtaXR0ZXIubmFtZSkudW5pcXVlKCmSAQIQMhKuAQoJZXhjaGFuZ2VzGAQgAygLMiIubW9jaGFidWdhcGlzLmFkYXB0LmdyYXBoLkV4Y2hhbmdlQne6SHS6AWwKFmV4Y2hhbmdlc191bmlxdWVfbmFtZXMSJkVhY2ggZXhjaGFuZ2UgbXVzdCBoYXZlIGEgdW5pcXVlIG5hbWUuGip0aGlzLm1hcChleGNoYW5nZSwgZXhjaGFuZ2UubmFtZSkudW5pcXVlKCmSAQIQZBJOCgt1ZGVfb3B0aW9ucxgFIAEoCzI0Lm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC5Vc2VyRGVmaW5lZEV4Y2hhbmdlT3B0aW9uc0gAiAEBEiUKDWNyb25fc2NoZWR1bGUYBiABKAlCCbpIBnIEEAEYZEgBiAEBOv4Oukj6DhrvAQorZXhjaGFuZ2VfbG9ja3NfcmVmZXJlbmNlX2V4aXN0aW5nX2V4Y2hhbmdlcxJKRWFjaCBleGNoYW5nZSBsb2NrIG11c3QgcmVmZXJlbmNlIGFuIGV4Y2hhbmdlIHRoYXQgZXhpc3RzIGluIHRoZSBtZXRhZGF0YS4adCFoYXModGhpcy51ZGVfb3B0aW9ucykgfHwgdGhpcy51ZGVfb3B0aW9ucy5leGNoYW5nZV9sb2Nrcy5hbGwobG9jaywgdGhpcy5leGNoYW5nZXMuZXhpc3RzKGV4LCBleC5uYW1lID09IGxvY2submFtZSkpGocDCi1leGNoYW5nZV9sb2NrX3RyYW5zbWl0dGVyc19yZWZlcmVuY2VfZXhpc3RpbmcSZUVhY2ggbG9ja2VkIHRyYW5zbWl0dGVyIGluIGFuIGV4Y2hhbmdlIGxvY2sgbXVzdCByZWZlcmVuY2UgYSB0cmFuc21pdHRlciB0aGF0IGV4aXN0cyBpbiB0aGUgZXhjaGFuZ2UuGu4BIWhhcyh0aGlzLnVkZV9vcHRpb25zKSB8fCB0aGlzLnVkZV9vcHRpb25zLmV4Y2hhbmdlX2xvY2tzLmFsbChsb2NrLCAhaGFzKGxvY2sudHJhbnNtaXR0ZXJfb3B0aW9ucykgfHwgbG9jay50cmFuc21pdHRlcl9vcHRpb25zLmxvY2tzLmFsbCh0bCwgdGhpcy5leGNoYW5nZXMuZXhpc3RzKGV4LCBleC5uYW1lID09IGxvY2submFtZSAmJiBleC50cmFuc21pdHRlcnMuZXhpc3RzKHQsIHQubmFtZSA9PSB0bC5uYW1lKSkpKRr1AgoqZXhjaGFuZ2VfbG9ja19yZWNlaXZlcnNfcmVmZXJlbmNlX2V4aXN0aW5nEl9FYWNoIGxvY2tlZCByZWNlaXZlciBpbiBhbiBleGNoYW5nZSBsb2NrIG11c3QgcmVmZXJlbmNlIGEgcmVjZWl2ZXIgdGhhdCBleGlzdHMgaW4gdGhlIGV4Y2hhbmdlLhrlASFoYXModGhpcy51ZGVfb3B0aW9ucykgfHwgdGhpcy51ZGVfb3B0aW9ucy5leGNoYW5nZV9sb2Nrcy5hbGwobG9jaywgIWhhcyhsb2NrLnJlY2VpdmVyX29wdGlvbnMpIHx8IGxvY2sucmVjZWl2ZXJfb3B0aW9ucy5sb2Nrcy5hbGwodGwsIHRoaXMuZXhjaGFuZ2VzLmV4aXN0cyhleCwgZXgubmFtZSA9PSBsb2NrLm5hbWUgJiYgZXgucmVjZWl2ZXJzLmV4aXN0cyhyLCByLm5hbWUgPT0gdGwubmFtZSkpKSkayQMKNGV4Y2hhbmdlX2xvY2tfdHJhbnNtaXR0ZXJfc2lnbmFsc19yZWZlcmVuY2VfZXhpc3RpbmcSXUVhY2ggbG9ja2VkIHRyYW5zbWl0dGVyIHNpZ25hbCBtdXN0IHJlZmVyZW5jZSBhIHNpZ25hbCB0aGF0IGV4aXN0cyBpbiB0aGUgbG9ja2VkIHRyYW5zbWl0dGVyLhqxAiFoYXModGhpcy51ZGVfb3B0aW9ucykgfHwgdGhpcy51ZGVfb3B0aW9ucy5leGNoYW5nZV9sb2Nrcy5hbGwobG9jaywgIWhhcyhsb2NrLnRyYW5zbWl0dGVyX29wdGlvbnMpIHx8IGxvY2sudHJhbnNtaXR0ZXJfb3B0aW9ucy5sb2Nrcy5hbGwodGwsIHRsLnNpZ25hbF9sb2Nrcy5hbGwoc2wsIHRoaXMuZXhjaGFuZ2VzLmV4aXN0cyhleCwgZXgubmFtZSA9PSBsb2NrLm5hbWUgJiYgZXgudHJhbnNtaXR0ZXJzLmV4aXN0cyh0LCB0Lm5hbWUgPT0gdGwubmFtZSAmJiB0LnNpZ25hbHMuZXhpc3RzKHMsIHMubmFtZSA9PSBzbC5uYW1lKSkpKSkpGrcDCjFleGNoYW5nZV9sb2NrX3JlY2VpdmVyX3NpZ25hbHNfcmVmZXJlbmNlX2V4aXN0aW5nEldFYWNoIGxvY2tlZCByZWNlaXZlciBzaWduYWwgbXVzdCByZWZlcmVuY2UgYSBzaWduYWwgdGhhdCBleGlzdHMgaW4gdGhlIGxvY2tlZCByZWNlaXZlci4aqAIhaGFzKHRoaXMudWRlX29wdGlvbnMpIHx8IHRoaXMudWRlX29wdGlvbnMuZXhjaGFuZ2VfbG9ja3MuYWxsKGxvY2ssICFoYXMobG9jay5yZWNlaXZlcl9vcHRpb25zKSB8fCBsb2NrLnJlY2VpdmVyX29wdGlvbnMubG9ja3MuYWxsKHRsLCB0bC5zaWduYWxfbG9ja3MuYWxsKHNsLCB0aGlzLmV4Y2hhbmdlcy5leGlzdHMoZXgsIGV4Lm5hbWUgPT0gbG9jay5uYW1lICYmIGV4LnJlY2VpdmVycy5leGlzdHMociwgci5uYW1lID09IHRsLm5hbWUgJiYgci5zaWduYWxzLmV4aXN0cyhzLCBzLm5hbWUgPT0gc2wubmFtZSkpKSkpKUIOCgxfdWRlX29wdGlvbnNCEAoOX2Nyb25fc2NoZWR1bGViBnByb3RvMw",[m,re,me,T,Je]),w=Kn(O,0);import{enumDesc as jn,fileDesc as Pn,messageDesc as V,serviceDesc as On}from"@bufbuild/protobuf/codegenv2";import{file_google_protobuf_field_mask as _n}from"@bufbuild/protobuf/wkt";import{enumDesc as Un,fileDesc as wn,messageDesc as S}from"@bufbuild/protobuf/codegenv2";import{file_google_protobuf_timestamp as Dn}from"@bufbuild/protobuf/wkt";var Z=wn("Ciltb2NoYWJ1Z2FwaXMvYWRhcHQvcnVudGltZS92MS9zdG9yZS5wcm90bxIdbW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEiJgoIUHV0VmFsdWUSDQoFdmFsdWUYASABKAwSCwoDdHRsGAIgASgFIlkKCEdldFZhbHVlEg0KBXZhbHVlGAEgASgMEj4KCG1ldGFkYXRhGAIgASgLMiwubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuVmFsdWVNZXRhZGF0YSJnCg1WYWx1ZU1ldGFkYXRhEgsKA3R0bBgBIAEoBRIxCg1sYXN0X21vZGlmaWVkGAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIWCgRldGFnGAMgASgJQgi6SAVyA7ABASLsAQoOVGltZXN0YW1wUmFuZ2USMQoFc3RhcnQYASABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQga6SAPIAQESLwoDZW5kGAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEIGukgDyAEBEhcKD3N0YXJ0X2luY2x1c2l2ZRgDIAEoCBIVCg1lbmRfaW5jbHVzaXZlGAQgASgIOka6SEMaQQoLdmFsaWRfcmFuZ2USG3N0YXJ0IG11c3QgYmUgbGVzcyB0aGFuIGVuZBoVdGhpcy5zdGFydCA8IHRoaXMuZW5kIp8DCghTZWxlY3RPcBIcCgVzdGFydBgBIAEoCUIIukgFcgMYgCBIAIgBARIaCgNlbmQYAiABKAlCCLpIBXIDGIAgSAGIAQESHAoPc3RhcnRfaW5jbHVzaXZlGAMgASgISAKIAQESGgoNZW5kX2luY2x1c2l2ZRgEIAEoCEgDiAEBEh4KBWxpbWl0GAUgASgFQgq6SAcaBRjoBygASASIAQESFwoKcGFnZV90b2tlbhgGIAEoCUgFiAEBOpQBukiQARqNAQoLdmFsaWRfcmFuZ2USQXdoZW4gYm90aCBzdGFydCBhbmQgZW5kIGFyZSBwcm92aWRlZCwgc3RhcnQgbXVzdCBiZSBsZXNzIHRoYW4gZW5kGjshaGFzKHRoaXMuc3RhcnQpIHx8ICFoYXModGhpcy5lbmQpIHx8IHRoaXMuc3RhcnQgPCB0aGlzLmVuZEIICgZfc3RhcnRCBgoEX2VuZEISChBfc3RhcnRfaW5jbHVzaXZlQhAKDl9lbmRfaW5jbHVzaXZlQggKBl9saW1pdEINCgtfcGFnZV90b2tlbiLgAQoOV3JpdGVPcGVyYXRpb24SOQoGaW5zZXJ0GAEgASgLMicubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuSW5zZXJ0T3BIABI5CgZkZWxldGUYAiABKAsyJy5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5EZWxldGVPcEgAEkQKDHJhbmdlX2RlbGV0ZRgDIAEoCzIsLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLlJhbmdlRGVsZXRlT3BIAEISCglvcGVyYXRpb24SBbpIAggBIrsBChlDb25kaXRpb25hbFdyaXRlT3BlcmF0aW9uEkQKBmluc2VydBgBIAEoCzIyLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkNvbmRpdGlvbmFsSW5zZXJ0T3BIABJECgZkZWxldGUYAiABKAsyMi5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5Db25kaXRpb25hbERlbGV0ZU9wSABCEgoJb3BlcmF0aW9uEgW6SAIIASLSAgoNUmFuZ2VEZWxldGVPcBIcCgVzdGFydBgBIAEoCUIIukgFcgMYgCBIAIgBARIaCgNlbmQYAiABKAlCCLpIBXIDGIAgSAGIAQESHAoPc3RhcnRfaW5jbHVzaXZlGAMgASgISAKIAQESGgoNZW5kX2luY2x1c2l2ZRgEIAEoCEgDiAEBOpQBukiQARqNAQoLdmFsaWRfcmFuZ2USQXdoZW4gYm90aCBzdGFydCBhbmQgZW5kIGFyZSBwcm92aWRlZCwgc3RhcnQgbXVzdCBiZSBsZXNzIHRoYW4gZW5kGjshaGFzKHRoaXMuc3RhcnQpIHx8ICFoYXModGhpcy5lbmQpIHx8IHRoaXMuc3RhcnQgPCB0aGlzLmVuZEIICgZfc3RhcnRCBgoEX2VuZEISChBfc3RhcnRfaW5jbHVzaXZlQhAKDl9lbmRfaW5jbHVzaXZlImEKCEluc2VydE9wEhUKA2tleRgBIAEoCUIIukgFcgMYgCASPgoFdmFsdWUYAiABKAsyJy5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5QdXRWYWx1ZUIGukgDyAEBIiEKCERlbGV0ZU9wEhUKA2tleRgBIAEoCUIIukgFcgMYgCAiwAYKE0NvbmRpdGlvbmFsSW5zZXJ0T3ASFQoDa2V5GAEgASgJQgi6SAVyAxiAIBI+CgV2YWx1ZRgCIAEoCzInLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLlB1dFZhbHVlQga6SAPIAQESWgoMcHJlY29uZGl0aW9uGAMgASgLMj8ubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuQ29uZGl0aW9uYWxJbnNlcnRPcC5QcmVjb25kaXRpb25IAIgBARrkBAoMUHJlY29uZGl0aW9uEjoKFGxhc3RfbW9kaWZpZWRfZXF1YWxzGAEgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgAEkwKE2xhc3RfbW9kaWZpZWRfcmFuZ2UYAiABKAsyLS5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5UaW1lc3RhbXBSYW5nZUgAEhsKBGV0YWcYBCABKAlCCLpIBXIDsAEBSAGIAQESGwoOZmFpbF9pZl9leGlzdHMYBSABKAhIAogBATrcArpI2AIaxwEKIG5vX3RpbWVzdGFtcF93aXRoX2ZhaWxfaWZfZXhpc3RzEjtmYWlsX2lmX2V4aXN0cyBjYW5ub3QgYmUgY29tYmluZWQgd2l0aCB0aW1lc3RhbXAgY29uZGl0aW9ucxpmdGhpcy5mYWlsX2lmX2V4aXN0cyA9PSB0cnVlID8gIWhhcyh0aGlzLmxhc3RfbW9kaWZpZWRfZXF1YWxzKSAmJiAhaGFzKHRoaXMubGFzdF9tb2RpZmllZF9yYW5nZSkgOiB0cnVlGosBChtub19ldGFnX3dpdGhfZmFpbF9pZl9leGlzdHMSNmZhaWxfaWZfZXhpc3RzIGNhbm5vdCBiZSBjb21iaW5lZCB3aXRoIGV0YWcgY29uZGl0aW9ucxo0dGhpcy5mYWlsX2lmX2V4aXN0cyA9PSB0cnVlID8gIWhhcyh0aGlzLmV0YWcpIDogdHJ1ZUIVChN0aW1lc3RhbXBfY29uZGl0aW9uQgcKBV9ldGFnQhEKD19mYWlsX2lmX2V4aXN0c0IPCg1fcHJlY29uZGl0aW9uIugFChNDb25kaXRpb25hbERlbGV0ZU9wEhUKA2tleRgBIAEoCUIIukgFcgMYgCASWgoMcHJlY29uZGl0aW9uGAIgASgLMj8ubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuQ29uZGl0aW9uYWxEZWxldGVPcC5QcmVjb25kaXRpb25IAIgBARrMBAoMUHJlY29uZGl0aW9uEhgKC211c3RfZXhpc3RzGAEgASgISAGIAQESOgoUbGFzdF9tb2RpZmllZF9lcXVhbHMYAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAASTAoTbGFzdF9tb2RpZmllZF9yYW5nZRgDIAEoCzItLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLlRpbWVzdGFtcFJhbmdlSAASGwoEZXRhZxgEIAEoCUIIukgFcgOwAQFIAogBATrKArpIxgIavgEKHW5vX3RpbWVzdGFtcF93aXRoX211c3RfZXhpc3RzEjhtdXN0X2V4aXN0cyBjYW5ub3QgYmUgY29tYmluZWQgd2l0aCB0aW1lc3RhbXAgY29uZGl0aW9ucxpjdGhpcy5tdXN0X2V4aXN0cyA9PSB0cnVlID8gIWhhcyh0aGlzLmxhc3RfbW9kaWZpZWRfZXF1YWxzKSAmJiAhaGFzKHRoaXMubGFzdF9tb2RpZmllZF9yYW5nZSkgOiB0cnVlGoIBChhub19ldGFnX3dpdGhfbXVzdF9leGlzdHMSM211c3RfZXhpc3RzIGNhbm5vdCBiZSBjb21iaW5lZCB3aXRoIGV0YWcgY29uZGl0aW9ucxoxdGhpcy5tdXN0X2V4aXN0cyA9PSB0cnVlID8gIWhhcyh0aGlzLmV0YWcpIDogdHJ1ZUIVChN0aW1lc3RhbXBfY29uZGl0aW9uQg4KDF9tdXN0X2V4aXN0c0IHCgVfZXRhZ0IPCg1fcHJlY29uZGl0aW9uKpABCglOYW1lc3BhY2USGQoVTkFNRVNQQUNFX1VOU1BFQ0lGSUVEEAASHQoZTkFNRVNQQUNFX1ZFUlRFWF9JTlNUQU5DRRABEh0KGU5BTUVTUEFDRV9QTFVHSU5fSU5TVEFOQ0UQAhIUChBOQU1FU1BBQ0VfVkVSVEVYEAMSFAoQTkFNRVNQQUNFX1BMVUdJThAEYgZwcm90bzM",[m,Dn]),wa=S(Z,0),Da=S(Z,1),Ta=S(Z,2),ue=S(Z,3),ja=S(Z,4),ae=S(Z,5),Pa=S(Z,6),Oa=S(Z,7),_a=S(Z,8),qa=S(Z,9),$a=S(Z,10),pe=S(Z,10,0),es=S(Z,11),Ce=S(Z,11,0),Tn=(i=>(i[i.UNSPECIFIED=0]="UNSPECIFIED",i[i.VERTEX_INSTANCE=1]="VERTEX_INSTANCE",i[i.PLUGIN_INSTANCE=2]="PLUGIN_INSTANCE",i[i.VERTEX=3]="VERTEX",i[i.PLUGIN=4]="PLUGIN",i))(Tn||{}),Be=Un(Z,0);var X=Pn("Cjhtb2NoYWJ1Z2FwaXMvYWRhcHQvcnVudGltZS92MS9jb25maWd1cmF0b3Jfc2VydmljZS5wcm90bxIdbW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEi5AEKGkxpc3RJbmNvbWluZ1NpZ25hbHNSZXF1ZXN0EjwKCHJlY2VpdmVyGAEgASgJQiW6SCJyIBABGGQyGl5bXyRhLXpBLVpdW18kYS16QS1aMC05XSokSACIAQESNwoHZm9ybWF0cxgCIAMoCzImLm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC5TaWduYWxGb3JtYXQSMwoKZmllbGRfbWFzaxgDIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2tIAYgBAUILCglfcmVjZWl2ZXJCDQoLX2ZpZWxkX21hc2si9gEKEEluY29taW5nVmVydGljZXMSCgoCaWQYASABKAkSDQoFbGFiZWwYAiABKAkSGAoLZGVzY3JpcHRpb24YAyABKAlIAIgBARI7Cgx0cmFuc21pdHRlcnMYBCADKAsyJS5tb2NoYWJ1Z2FwaXMuYWRhcHQuZ3JhcGguVHJhbnNtaXR0ZXISPgoLdmVydGV4X3R5cGUYBSABKA4yKS5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5WZXJ0ZXhUeXBlEhQKB2xvZ29faWQYBiABKAlIAYgBAUIOCgxfZGVzY3JpcHRpb25CCgoIX2xvZ29faWQiyAIKG0xpc3RJbmNvbWluZ1NpZ25hbHNSZXNwb25zZRJBCgh2ZXJ0aWNlcxgBIAMoCzIvLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkluY29taW5nVmVydGljZXMSYQoMdmVydGV4X2xvZ29zGAIgAygLMksubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuTGlzdEluY29taW5nU2lnbmFsc1Jlc3BvbnNlLlZlcnRleExvZ29zRW50cnkSEAoIcmVjZWl2ZXIYAyABKAkSPQoJY29uc3RhbnRzGAQgAygLMioubW9jaGFidWdhcGlzLmFkYXB0LmdyYXBoLlNpZ25hbERlc2NyaXB0b3IaMgoQVmVydGV4TG9nb3NFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIsYBCilDb25maWd1cmF0b3JTZXJ2aWNlQmF0Y2hXcml0ZVN0b3JlUmVxdWVzdBJOCgpvcGVyYXRpb25zGAEgAygLMi0ubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuV3JpdGVPcGVyYXRpb25CC7pICJIBBQgBEOgHEkkKCW5hbWVzcGFjZRgCIAEoDjIoLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLk5hbWVzcGFjZUIMukgJggEGIAAgASACIvYBCipDb25maWd1cmF0b3JTZXJ2aWNlQmF0Y2hXcml0ZVN0b3JlUmVzcG9uc2USaQoIbWV0YWRhdGEYASADKAsyVy5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5Db25maWd1cmF0b3JTZXJ2aWNlQmF0Y2hXcml0ZVN0b3JlUmVzcG9uc2UuTWV0YWRhdGFFbnRyeRpdCg1NZXRhZGF0YUVudHJ5EgsKA2tleRgBIAEoCRI7CgV2YWx1ZRgCIAEoCzIsLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLlZhbHVlTWV0YWRhdGE6AjgBIr4BCiRDb25maWd1cmF0b3JTZXJ2aWNlV3JpdGVTdG9yZVJlcXVlc3QSSwoJb3BlcmF0aW9uGAEgASgLMjgubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuQ29uZGl0aW9uYWxXcml0ZU9wZXJhdGlvbhJJCgluYW1lc3BhY2UYAiABKA4yKC5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5OYW1lc3BhY2VCDLpICYIBBiAAIAEgAiJ5CiVDb25maWd1cmF0b3JTZXJ2aWNlV3JpdGVTdG9yZVJlc3BvbnNlEkMKCG1ldGFkYXRhGAEgASgLMiwubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuVmFsdWVNZXRhZGF0YUgAiAEBQgsKCV9tZXRhZGF0YSKXAQooQ29uZmlndXJhdG9yU2VydmljZUJhdGNoUmVhZFN0b3JlUmVxdWVzdBIgCgRrZXlzGAEgAygJQhK6SA+SAQwIARCQTiIFcgMYgCASSQoJbmFtZXNwYWNlGAIgASgOMigubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuTmFtZXNwYWNlQgy6SAmCAQYgACABIAIi5gEKKUNvbmZpZ3VyYXRvclNlcnZpY2VCYXRjaFJlYWRTdG9yZVJlc3BvbnNlEmIKBWl0ZW1zGAEgAygLMlMubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuQ29uZmlndXJhdG9yU2VydmljZUJhdGNoUmVhZFN0b3JlUmVzcG9uc2UuSXRlbXNFbnRyeRpVCgpJdGVtc0VudHJ5EgsKA2tleRgBIAEoCRI2CgV2YWx1ZRgCIAEoCzInLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkdldFZhbHVlOgI4ASK2AQolQ29uZmlndXJhdG9yU2VydmljZVNlbGVjdFN0b3JlUmVxdWVzdBJCCglvcGVyYXRpb24YASABKAsyJy5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5TZWxlY3RPcEIGukgDyAEBEkkKCW5hbWVzcGFjZRgCIAEoDjIoLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLk5hbWVzcGFjZUIMukgJggEGIAAgASACIogCCiZDb25maWd1cmF0b3JTZXJ2aWNlU2VsZWN0U3RvcmVSZXNwb25zZRJfCgVpdGVtcxgBIAMoCzJQLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkNvbmZpZ3VyYXRvclNlcnZpY2VTZWxlY3RTdG9yZVJlc3BvbnNlLkl0ZW1zRW50cnkSFwoKbmV4dF90b2tlbhgCIAEoCUgAiAEBGlUKCkl0ZW1zRW50cnkSCwoDa2V5GAEgASgJEjYKBXZhbHVlGAIgASgLMicubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuR2V0VmFsdWU6AjgBQg0KC19uZXh0X3Rva2VuIm8KKUNvbmZpZ3VyYXRvclNlcnZpY2VHZXRWZXJ0ZXhDb25maWdSZXF1ZXN0EjMKCmZpZWxkX21hc2sYASABKAsyGi5nb29nbGUucHJvdG9idWYuRmllbGRNYXNrSACIAQFCDQoLX2ZpZWxkX21hc2siswIKKkNvbmZpZ3VyYXRvclNlcnZpY2VHZXRWZXJ0ZXhDb25maWdSZXNwb25zZRIOCgZjb25maWcYASABKAwSOgoIbWV0YWRhdGEYAiABKAsyKC5tb2NoYWJ1Z2FwaXMuYWRhcHQuZ3JhcGguVmVydGV4TWV0YWRhdGESfgoTY29uZmlndXJlZF9zZXJ2aWNlcxgDIAMoCzJhLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkNvbmZpZ3VyYXRvclNlcnZpY2VHZXRWZXJ0ZXhDb25maWdSZXNwb25zZS5Db25maWd1cmVkU2VydmljZXNFbnRyeRo5ChdDb25maWd1cmVkU2VydmljZXNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAg6AjgBIrUCChdQb3N0VmVydGV4Q29uZmlnUmVxdWVzdBITCgZjb25maWcYASABKAxIAIgBARI/CghtZXRhZGF0YRgCIAEoCzIoLm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC5WZXJ0ZXhNZXRhZGF0YUgBiAEBEh4KEW92ZXJyaWRlX2JpbmRpbmdzGAMgASgISAKIAQE6drpIcxpxChtjb25maWdfb3JfbWV0YWRhdGFfcmVxdWlyZWQSKkVpdGhlciBjb25maWcgb3IgbWV0YWRhdGEgbXVzdCBiZSBwcm92aWRlZBomaGFzKHRoaXMuY29uZmlnKSB8fCBoYXModGhpcy5tZXRhZGF0YSlCCQoHX2NvbmZpZ0ILCglfbWV0YWRhdGFCFAoSX292ZXJyaWRlX2JpbmRpbmdzIlYKGFBvc3RWZXJ0ZXhDb25maWdSZXNwb25zZRI6CghtZXRhZGF0YRgBIAEoCzIoLm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC5WZXJ0ZXhNZXRhZGF0YSrBAQoKVmVydGV4VHlwZRIbChdWRVJURVhfVFlQRV9VTlNQRUNJRklFRBAAEhUKEVZFUlRFWF9UWVBFX1NUQVJUEAESFgoSVkVSVEVYX1RZUEVfUExVR0lOEAISFgoSVkVSVEVYX1RZUEVfT1VUUFVUEAMSGAoUVkVSVEVYX1RZUEVfREVMRUdBVEUQBBIXChNWRVJURVhfVFlQRV9CQVJSSUVSEAUSHAoYVkVSVEVYX1RZUEVfRVhDSEFOR0VfT1VUEAYy2QgKE0NvbmZpZ3VyYXRvclNlcnZpY2USpgEKD0dldFZlcnRleENvbmZpZxJILm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkNvbmZpZ3VyYXRvclNlcnZpY2VHZXRWZXJ0ZXhDb25maWdSZXF1ZXN0GkkubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuQ29uZmlndXJhdG9yU2VydmljZUdldFZlcnRleENvbmZpZ1Jlc3BvbnNlEoMBChBQb3N0VmVydGV4Q29uZmlnEjYubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuUG9zdFZlcnRleENvbmZpZ1JlcXVlc3QaNy5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5Qb3N0VmVydGV4Q29uZmlnUmVzcG9uc2USlwEKCldyaXRlU3RvcmUSQy5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5Db25maWd1cmF0b3JTZXJ2aWNlV3JpdGVTdG9yZVJlcXVlc3QaRC5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5Db25maWd1cmF0b3JTZXJ2aWNlV3JpdGVTdG9yZVJlc3BvbnNlEqYBCg9CYXRjaFdyaXRlU3RvcmUSSC5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5Db25maWd1cmF0b3JTZXJ2aWNlQmF0Y2hXcml0ZVN0b3JlUmVxdWVzdBpJLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkNvbmZpZ3VyYXRvclNlcnZpY2VCYXRjaFdyaXRlU3RvcmVSZXNwb25zZRKjAQoOQmF0Y2hSZWFkU3RvcmUSRy5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5Db25maWd1cmF0b3JTZXJ2aWNlQmF0Y2hSZWFkU3RvcmVSZXF1ZXN0GkgubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuQ29uZmlndXJhdG9yU2VydmljZUJhdGNoUmVhZFN0b3JlUmVzcG9uc2USmgEKC1NlbGVjdFN0b3JlEkQubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuQ29uZmlndXJhdG9yU2VydmljZVNlbGVjdFN0b3JlUmVxdWVzdBpFLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkNvbmZpZ3VyYXRvclNlcnZpY2VTZWxlY3RTdG9yZVJlc3BvbnNlEowBChNMaXN0SW5jb21pbmdTaWduYWxzEjkubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuTGlzdEluY29taW5nU2lnbmFsc1JlcXVlc3QaOi5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5MaXN0SW5jb21pbmdTaWduYWxzUmVzcG9uc2ViBnByb3RvMw",[m,_n,U,v,T,O,Z]),ls=V(X,0),rs=V(X,1),Ye=V(X,2),ms=V(X,3),us=V(X,4),ps=V(X,5),bs=V(X,6),Gs=V(X,7),hs=V(X,8),Is=V(X,9),ys=V(X,10),Zs=V(X,11),As=V(X,12),Rs=V(X,13),Xs=V(X,14),qn=(b=>(b[b.UNSPECIFIED=0]="UNSPECIFIED",b[b.START=1]="START",b[b.PLUGIN=2]="PLUGIN",b[b.OUTPUT=3]="OUTPUT",b[b.DELEGATE=4]="DELEGATE",b[b.BARRIER=5]="BARRIER",b[b.EXCHANGE_OUT=6]="EXCHANGE_OUT",b))(qn||{}),Vs=jn(X,0),Fe=On(X,0);import{fileDesc as rt,messageDesc as y,serviceDesc as mt}from"@bufbuild/protobuf/codegenv2";import{file_google_protobuf_field_mask as ut}from"@bufbuild/protobuf/wkt";import{enumDesc as ct,fileDesc as it,messageDesc as g,serviceDesc as gt}from"@bufbuild/protobuf/codegenv2";import{extDesc as Ys,fileDesc as et}from"@bufbuild/protobuf/codegenv2";import{fileDesc as $n,messageDesc as Js}from"@bufbuild/protobuf/codegenv2";var xe=$n("ChVnb29nbGUvYXBpL2h0dHAucHJvdG8SCmdvb2dsZS5hcGkiVAoESHR0cBIjCgVydWxlcxgBIAMoCzIULmdvb2dsZS5hcGkuSHR0cFJ1bGUSJwofZnVsbHlfZGVjb2RlX3Jlc2VydmVkX2V4cGFuc2lvbhgCIAEoCCKBAgoISHR0cFJ1bGUSEAoIc2VsZWN0b3IYASABKAkSDQoDZ2V0GAIgASgJSAASDQoDcHV0GAMgASgJSAASDgoEcG9zdBgEIAEoCUgAEhAKBmRlbGV0ZRgFIAEoCUgAEg8KBXBhdGNoGAYgASgJSAASLwoGY3VzdG9tGAggASgLMh0uZ29vZ2xlLmFwaS5DdXN0b21IdHRwUGF0dGVybkgAEgwKBGJvZHkYByABKAkSFQoNcmVzcG9uc2VfYm9keRgMIAEoCRIxChNhZGRpdGlvbmFsX2JpbmRpbmdzGAsgAygLMhQuZ29vZ2xlLmFwaS5IdHRwUnVsZUIJCgdwYXR0ZXJuIi8KEUN1c3RvbUh0dHBQYXR0ZXJuEgwKBGtpbmQYASABKAkSDAoEcGF0aBgCIAEoCUJnCg5jb20uZ29vZ2xlLmFwaUIJSHR0cFByb3RvUAFaQWdvb2dsZS5nb2xhbmcub3JnL2dlbnByb3RvL2dvb2dsZWFwaXMvYXBpL2Fubm90YXRpb25zO2Fubm90YXRpb25zogIER0FQSWIGcHJvdG8z");import{file_google_protobuf_descriptor as nt}from"@bufbuild/protobuf/wkt";var fe=et("Chxnb29nbGUvYXBpL2Fubm90YXRpb25zLnByb3RvEgpnb29nbGUuYXBpOksKBGh0dHASHi5nb29nbGUucHJvdG9idWYuTWV0aG9kT3B0aW9ucxiwyrwiIAEoCzIULmdvb2dsZS5hcGkuSHR0cFJ1bGVSBGh0dHBCbgoOY29tLmdvb2dsZS5hcGlCEEFubm90YXRpb25zUHJvdG9QAVpBZ29vZ2xlLmdvbGFuZy5vcmcvZ2VucHJvdG8vZ29vZ2xlYXBpcy9hcGkvYW5ub3RhdGlvbnM7YW5ub3RhdGlvbnOiAgRHQVBJYgZwcm90bzM",[xe,nt]);import{enumDesc as zs,extDesc as Ls,fileDesc as at,messageDesc as Qs}from"@bufbuild/protobuf/codegenv2";import{enumDesc as Ms,fileDesc as tt}from"@bufbuild/protobuf/codegenv2";var Ee=tt("Ch1nb29nbGUvYXBpL2xhdW5jaF9zdGFnZS5wcm90bxIKZ29vZ2xlLmFwaSqMAQoLTGF1bmNoU3RhZ2USHAoYTEFVTkNIX1NUQUdFX1VOU1BFQ0lGSUVEEAASEQoNVU5JTVBMRU1FTlRFRBAGEg0KCVBSRUxBVU5DSBAHEhAKDEVBUkxZX0FDQ0VTUxABEgkKBUFMUEhBEAISCAoEQkVUQRADEgYKAkdBEAQSDgoKREVQUkVDQVRFRBAFQloKDmNvbS5nb29nbGUuYXBpQhBMYXVuY2hTdGFnZVByb3RvUAFaLWdvb2dsZS5nb2xhbmcub3JnL2dlbnByb3RvL2dvb2dsZWFwaXMvYXBpO2FwaaICBEdBUEliBnByb3RvMw");import{file_google_protobuf_descriptor as st,file_google_protobuf_duration as ot}from"@bufbuild/protobuf/wkt";var Me=at("Chdnb29nbGUvYXBpL2NsaWVudC5wcm90bxIKZ29vZ2xlLmFwaSK+AQoWQ29tbW9uTGFuZ3VhZ2VTZXR0aW5ncxIeChJyZWZlcmVuY2VfZG9jc191cmkYASABKAlCAhgBEjoKDGRlc3RpbmF0aW9ucxgCIAMoDjIkLmdvb2dsZS5hcGkuQ2xpZW50TGlicmFyeURlc3RpbmF0aW9uEkgKGnNlbGVjdGl2ZV9nYXBpY19nZW5lcmF0aW9uGAMgASgLMiQuZ29vZ2xlLmFwaS5TZWxlY3RpdmVHYXBpY0dlbmVyYXRpb24i+wMKFUNsaWVudExpYnJhcnlTZXR0aW5ncxIPCgd2ZXJzaW9uGAEgASgJEi0KDGxhdW5jaF9zdGFnZRgCIAEoDjIXLmdvb2dsZS5hcGkuTGF1bmNoU3RhZ2USGgoScmVzdF9udW1lcmljX2VudW1zGAMgASgIEi8KDWphdmFfc2V0dGluZ3MYFSABKAsyGC5nb29nbGUuYXBpLkphdmFTZXR0aW5ncxItCgxjcHBfc2V0dGluZ3MYFiABKAsyFy5nb29nbGUuYXBpLkNwcFNldHRpbmdzEi0KDHBocF9zZXR0aW5ncxgXIAEoCzIXLmdvb2dsZS5hcGkuUGhwU2V0dGluZ3MSMwoPcHl0aG9uX3NldHRpbmdzGBggASgLMhouZ29vZ2xlLmFwaS5QeXRob25TZXR0aW5ncxIvCg1ub2RlX3NldHRpbmdzGBkgASgLMhguZ29vZ2xlLmFwaS5Ob2RlU2V0dGluZ3MSMwoPZG90bmV0X3NldHRpbmdzGBogASgLMhouZ29vZ2xlLmFwaS5Eb3RuZXRTZXR0aW5ncxIvCg1ydWJ5X3NldHRpbmdzGBsgASgLMhguZ29vZ2xlLmFwaS5SdWJ5U2V0dGluZ3MSKwoLZ29fc2V0dGluZ3MYHCABKAsyFi5nb29nbGUuYXBpLkdvU2V0dGluZ3MiqAMKClB1Ymxpc2hpbmcSMwoPbWV0aG9kX3NldHRpbmdzGAIgAygLMhouZ29vZ2xlLmFwaS5NZXRob2RTZXR0aW5ncxIVCg1uZXdfaXNzdWVfdXJpGGUgASgJEhkKEWRvY3VtZW50YXRpb25fdXJpGGYgASgJEhYKDmFwaV9zaG9ydF9uYW1lGGcgASgJEhQKDGdpdGh1Yl9sYWJlbBhoIAEoCRIeChZjb2Rlb3duZXJfZ2l0aHViX3RlYW1zGGkgAygJEhYKDmRvY190YWdfcHJlZml4GGogASgJEjsKDG9yZ2FuaXphdGlvbhhrIAEoDjIlLmdvb2dsZS5hcGkuQ2xpZW50TGlicmFyeU9yZ2FuaXphdGlvbhI7ChBsaWJyYXJ5X3NldHRpbmdzGG0gAygLMiEuZ29vZ2xlLmFwaS5DbGllbnRMaWJyYXJ5U2V0dGluZ3MSKQohcHJvdG9fcmVmZXJlbmNlX2RvY3VtZW50YXRpb25fdXJpGG4gASgJEigKIHJlc3RfcmVmZXJlbmNlX2RvY3VtZW50YXRpb25fdXJpGG8gASgJIuMBCgxKYXZhU2V0dGluZ3MSFwoPbGlicmFyeV9wYWNrYWdlGAEgASgJEkwKE3NlcnZpY2VfY2xhc3NfbmFtZXMYAiADKAsyLy5nb29nbGUuYXBpLkphdmFTZXR0aW5ncy5TZXJ2aWNlQ2xhc3NOYW1lc0VudHJ5EjIKBmNvbW1vbhgDIAEoCzIiLmdvb2dsZS5hcGkuQ29tbW9uTGFuZ3VhZ2VTZXR0aW5ncxo4ChZTZXJ2aWNlQ2xhc3NOYW1lc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEiQQoLQ3BwU2V0dGluZ3MSMgoGY29tbW9uGAEgASgLMiIuZ29vZ2xlLmFwaS5Db21tb25MYW5ndWFnZVNldHRpbmdzIloKC1BocFNldHRpbmdzEjIKBmNvbW1vbhgBIAEoCzIiLmdvb2dsZS5hcGkuQ29tbW9uTGFuZ3VhZ2VTZXR0aW5ncxIXCg9saWJyYXJ5X3BhY2thZ2UYAiABKAkimwIKDlB5dGhvblNldHRpbmdzEjIKBmNvbW1vbhgBIAEoCzIiLmdvb2dsZS5hcGkuQ29tbW9uTGFuZ3VhZ2VTZXR0aW5ncxJOChVleHBlcmltZW50YWxfZmVhdHVyZXMYAiABKAsyLy5nb29nbGUuYXBpLlB5dGhvblNldHRpbmdzLkV4cGVyaW1lbnRhbEZlYXR1cmVzGoQBChRFeHBlcmltZW50YWxGZWF0dXJlcxIdChVyZXN0X2FzeW5jX2lvX2VuYWJsZWQYASABKAgSJwofcHJvdG9idWZfcHl0aG9uaWNfdHlwZXNfZW5hYmxlZBgCIAEoCBIkChx1bnZlcnNpb25lZF9wYWNrYWdlX2Rpc2FibGVkGAMgASgIIkIKDE5vZGVTZXR0aW5ncxIyCgZjb21tb24YASABKAsyIi5nb29nbGUuYXBpLkNvbW1vbkxhbmd1YWdlU2V0dGluZ3MiqgMKDkRvdG5ldFNldHRpbmdzEjIKBmNvbW1vbhgBIAEoCzIiLmdvb2dsZS5hcGkuQ29tbW9uTGFuZ3VhZ2VTZXR0aW5ncxJJChByZW5hbWVkX3NlcnZpY2VzGAIgAygLMi8uZ29vZ2xlLmFwaS5Eb3RuZXRTZXR0aW5ncy5SZW5hbWVkU2VydmljZXNFbnRyeRJLChFyZW5hbWVkX3Jlc291cmNlcxgDIAMoCzIwLmdvb2dsZS5hcGkuRG90bmV0U2V0dGluZ3MuUmVuYW1lZFJlc291cmNlc0VudHJ5EhkKEWlnbm9yZWRfcmVzb3VyY2VzGAQgAygJEiAKGGZvcmNlZF9uYW1lc3BhY2VfYWxpYXNlcxgFIAMoCRIeChZoYW5kd3JpdHRlbl9zaWduYXR1cmVzGAYgAygJGjYKFFJlbmFtZWRTZXJ2aWNlc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEaNwoVUmVuYW1lZFJlc291cmNlc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEiQgoMUnVieVNldHRpbmdzEjIKBmNvbW1vbhgBIAEoCzIiLmdvb2dsZS5hcGkuQ29tbW9uTGFuZ3VhZ2VTZXR0aW5ncyK/AQoKR29TZXR0aW5ncxIyCgZjb21tb24YASABKAsyIi5nb29nbGUuYXBpLkNvbW1vbkxhbmd1YWdlU2V0dGluZ3MSRQoQcmVuYW1lZF9zZXJ2aWNlcxgCIAMoCzIrLmdvb2dsZS5hcGkuR29TZXR0aW5ncy5SZW5hbWVkU2VydmljZXNFbnRyeRo2ChRSZW5hbWVkU2VydmljZXNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIoIDCg5NZXRob2RTZXR0aW5ncxIQCghzZWxlY3RvchgBIAEoCRI8Cgxsb25nX3J1bm5pbmcYAiABKAsyJi5nb29nbGUuYXBpLk1ldGhvZFNldHRpbmdzLkxvbmdSdW5uaW5nEh0KFWF1dG9fcG9wdWxhdGVkX2ZpZWxkcxgDIAMoCRIxCghiYXRjaGluZxgEIAEoCzIfLmdvb2dsZS5hcGkuQmF0Y2hpbmdDb25maWdQcm90bxrNAQoLTG9uZ1J1bm5pbmcSNQoSaW5pdGlhbF9wb2xsX2RlbGF5GAEgASgLMhkuZ29vZ2xlLnByb3RvYnVmLkR1cmF0aW9uEh0KFXBvbGxfZGVsYXlfbXVsdGlwbGllchgCIAEoAhIxCg5tYXhfcG9sbF9kZWxheRgDIAEoCzIZLmdvb2dsZS5wcm90b2J1Zi5EdXJhdGlvbhI1ChJ0b3RhbF9wb2xsX3RpbWVvdXQYBCABKAsyGS5nb29nbGUucHJvdG9idWYuRHVyYXRpb24iUQoYU2VsZWN0aXZlR2FwaWNHZW5lcmF0aW9uEg8KB21ldGhvZHMYASADKAkSJAocZ2VuZXJhdGVfb21pdHRlZF9hc19pbnRlcm5hbBgCIAEoCCKLAQoTQmF0Y2hpbmdDb25maWdQcm90bxI1Cgp0aHJlc2hvbGRzGAEgASgLMiEuZ29vZ2xlLmFwaS5CYXRjaGluZ1NldHRpbmdzUHJvdG8SPQoQYmF0Y2hfZGVzY3JpcHRvchgCIAEoCzIjLmdvb2dsZS5hcGkuQmF0Y2hpbmdEZXNjcmlwdG9yUHJvdG8i6wIKFUJhdGNoaW5nU2V0dGluZ3NQcm90bxIfChdlbGVtZW50X2NvdW50X3RocmVzaG9sZBgBIAEoBRIeChZyZXF1ZXN0X2J5dGVfdGhyZXNob2xkGAIgASgDEjIKD2RlbGF5X3RocmVzaG9sZBgDIAEoCzIZLmdvb2dsZS5wcm90b2J1Zi5EdXJhdGlvbhIbChNlbGVtZW50X2NvdW50X2xpbWl0GAQgASgFEhoKEnJlcXVlc3RfYnl0ZV9saW1pdBgFIAEoBRIiChpmbG93X2NvbnRyb2xfZWxlbWVudF9saW1pdBgGIAEoBRIfChdmbG93X2NvbnRyb2xfYnl0ZV9saW1pdBgHIAEoBRJfCiRmbG93X2NvbnRyb2xfbGltaXRfZXhjZWVkZWRfYmVoYXZpb3IYCCABKA4yMS5nb29nbGUuYXBpLkZsb3dDb250cm9sTGltaXRFeGNlZWRlZEJlaGF2aW9yUHJvdG8iaQoXQmF0Y2hpbmdEZXNjcmlwdG9yUHJvdG8SFQoNYmF0Y2hlZF9maWVsZBgBIAEoCRIcChRkaXNjcmltaW5hdG9yX2ZpZWxkcxgCIAMoCRIZChFzdWJyZXNwb25zZV9maWVsZBgDIAEoCSqjAQoZQ2xpZW50TGlicmFyeU9yZ2FuaXphdGlvbhIrCidDTElFTlRfTElCUkFSWV9PUkdBTklaQVRJT05fVU5TUEVDSUZJRUQQABIJCgVDTE9VRBABEgcKA0FEUxACEgoKBlBIT1RPUxADEg8KC1NUUkVFVF9WSUVXEAQSDAoIU0hPUFBJTkcQBRIHCgNHRU8QBhIRCg1HRU5FUkFUSVZFX0FJEAcqZwoYQ2xpZW50TGlicmFyeURlc3RpbmF0aW9uEioKJkNMSUVOVF9MSUJSQVJZX0RFU1RJTkFUSU9OX1VOU1BFQ0lGSUVEEAASCgoGR0lUSFVCEAoSEwoPUEFDS0FHRV9NQU5BR0VSEBQqZwolRmxvd0NvbnRyb2xMaW1pdEV4Y2VlZGVkQmVoYXZpb3JQcm90bxISCg5VTlNFVF9CRUhBVklPUhAAEhMKD1RIUk9XX0VYQ0VQVElPThABEgkKBUJMT0NLEAISCgoGSUdOT1JFEAM6SgoQbWV0aG9kX3NpZ25hdHVyZRIeLmdvb2dsZS5wcm90b2J1Zi5NZXRob2RPcHRpb25zGJsIIAMoCVIPbWV0aG9kU2lnbmF0dXJlOkMKDGRlZmF1bHRfaG9zdBIfLmdvb2dsZS5wcm90b2J1Zi5TZXJ2aWNlT3B0aW9ucxiZCCABKAlSC2RlZmF1bHRIb3N0OkMKDG9hdXRoX3Njb3BlcxIfLmdvb2dsZS5wcm90b2J1Zi5TZXJ2aWNlT3B0aW9ucxiaCCABKAlSC29hdXRoU2NvcGVzOkQKC2FwaV92ZXJzaW9uEh8uZ29vZ2xlLnByb3RvYnVmLlNlcnZpY2VPcHRpb25zGMG6q/oBIAEoCVIKYXBpVmVyc2lvbkJpCg5jb20uZ29vZ2xlLmFwaUILQ2xpZW50UHJvdG9QAVpBZ29vZ2xlLmdvbGFuZy5vcmcvZ2VucHJvdG8vZ29vZ2xlYXBpcy9hcGkvYW5ub3RhdGlvbnM7YW5ub3RhdGlvbnOiAgRHQVBJYgZwcm90bzM",[Ee,st,ot]);import{file_google_protobuf_timestamp as dt}from"@bufbuild/protobuf/wkt";var c=it("CjNtb2NoYWJ1Z2FwaXMvYWRhcHQvYXV0b21hdGlvbnMvdjEvYXV0b21hdGlvbnMucHJvdG8SIW1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MSIwChZDcmVhdGVDaGFsbGVuZ2VSZXF1ZXN0EhYKAmlkGAEgASgJQgq6SAdyBRABGPQDIqIBChdDcmVhdGVDaGFsbGVuZ2VSZXNwb25zZRINCgVjb3VudBgBIAEoDRIMCgRzaXplGAIgASgNEhIKCmRpZmZpY3VsdHkYAyABKA0SKwoHZXhwaXJlcxgEIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASDQoFdG9rZW4YBSABKAkSGgoSdmVyaWZpY2F0aW9uX3Rva2VuGAYgASgJIngKFlJlZGVlbUNoYWxsZW5nZVJlcXVlc3QSFgoCaWQYASABKAlCCrpIB3IFEAEY9AMSJgoSdmVyaWZpY2F0aW9uX3Rva2VuGAIgASgJQgq6SAdyBRABGNAPEh4KCXNvbHV0aW9ucxgDIAMoA0ILukgIkgEFCAEQ6AciVQoXUmVkZWVtQ2hhbGxlbmdlUmVzcG9uc2USDQoFdG9rZW4YASABKAkSKwoHZXhwaXJlcxgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAiLwoVSW5oZXJpdFNlc3Npb25SZXF1ZXN0EhYKAmlkGAEgASgJQgq6SAdyBRABGPQDImUKFkluaGVyaXRTZXNzaW9uUmVzcG9uc2USDQoFdG9rZW4YASABKAkSMAoHZXhwaXJlcxgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAIgBAUIKCghfZXhwaXJlcyKvAQoRUmVhZE91dHB1dFJlcXVlc3QSFgoCaWQYASABKAlCCrpIB3IFEAEY9AMSGgoJcGFnZV9zaXplGAIgASgNQge6SAQqAhhkEikKBnZlcnRleBgDIAEoCUIUukgRcg8yDV5bMC05YS16XXs0fSRIAIgBARIhCgpuZXdlcl90aGFuGAQgASgJQgi6SAVyA7ABAUgBiAEBQgkKB192ZXJ0ZXhCDQoLX25ld2VyX3RoYW4iywEKElJlYWRPdXRwdXRSZXNwb25zZRI7CgdzZXNzaW9uGAEgASgLMioubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlNlc3Npb24SOgoHb3V0cHV0cxgCIAMoCzIpLm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5PdXRwdXQSJwoQbmV4dF9wYWdlX2N1cnNvchgDIAEoCUIIukgFcgOwAQFIAIgBAUITChFfbmV4dF9wYWdlX2N1cnNvciJ3Cg9SZWFkVXJsc1JlcXVlc3QSFgoCaWQYASABKAlCCrpIB3IFEAEY9AMSGgoJcGFnZV9zaXplGAIgASgNQge6SAQqAhhkEiEKCm5ld2VyX3RoYW4YAyABKAlCCLpIBXIDsAEBSACIAQFCDQoLX25ld2VyX3RoYW4iwwEKEFJlYWRVcmxzUmVzcG9uc2USOwoHc2Vzc2lvbhgBIAEoCzIqLm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5TZXNzaW9uEjQKBHVybHMYAiADKAsyJi5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuVXJsEicKEG5leHRfcGFnZV9jdXJzb3IYAyABKAlCCLpIBXIDsAEBSACIAQFCEwoRX25leHRfcGFnZV9jdXJzb3IikQMKE1N0YXJ0U2Vzc2lvblJlcXVlc3QSFgoCaWQYASABKAlCCrpIB3IFEAEY9AMSOwoLdHJhbnNtaXR0ZXIYAiABKAlCIbpIHnIcEAEYZDIWXlthLXpBLVowLTlfLV17MSwxMDB9JEgAiAEBEoABCgdzaWduYWxzGAMgAygLMkMubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlN0YXJ0U2Vzc2lvblJlcXVlc3QuU2lnbmFsc0VudHJ5Qiq6SCeaASQiInIgEAEYZDIaXltfJGEtekEtWl1bXyRhLXpBLVowLTldKiQSKAoPY2hhbGxlbmdlX3Rva2VuGAQgASgJQgq6SAdyBRABGPQDSAGIAQEaVAoMU2lnbmFsc0VudHJ5EgsKA2tleRgBIAEoCRIzCgV2YWx1ZRgCIAEoCzIkLm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC5TaWduYWxEYXRhOgI4AUIOCgxfdHJhbnNtaXR0ZXJCEgoQX2NoYWxsZW5nZV90b2tlbiJjChRTdGFydFNlc3Npb25SZXNwb25zZRINCgV0b2tlbhgBIAEoCRIwCgdleHBpcmVzGAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgAiAEBQgoKCF9leHBpcmVzIlIKElN0b3BTZXNzaW9uUmVxdWVzdBIWCgJpZBgBIAEoCUIKukgHcgUQARj0AxIbCgRmb3JrGAIgASgJQgi6SAVyAxjoB0gAiAEBQgcKBV9mb3JrIhUKE1N0b3BTZXNzaW9uUmVzcG9uc2UiKwoRR2V0U2Vzc2lvblJlcXVlc3QSFgoCaWQYASABKAlCCrpIB3IFEAEY9AMiWQoSR2V0U2Vzc2lvblJlc3BvbnNlEkMKB3Nlc3Npb24YASABKAsyKi5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuU2Vzc2lvbkIGukgDyAEBIukBCgZPdXRwdXQSDgoGdmVydGV4GAEgASgJEgwKBGZvcmsYAiABKAkSQQoEZGF0YRgDIAMoCzIzLm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5PdXRwdXQuRGF0YUVudHJ5EisKB2NyZWF0ZWQYBCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wGlEKCURhdGFFbnRyeRILCgNrZXkYASABKAkSMwoFdmFsdWUYAiABKAsyJC5tb2NoYWJ1Z2FwaXMuYWRhcHQuZ3JhcGguU2lnbmFsRGF0YToCOAEiCwoJVXJsUmV0YWluIjwKCFVybENsb3NlEhwKD3RpbWVvdXRfc2Vjb25kcxgBIAEoBUgAiAEBQhIKEF90aW1lb3V0X3NlY29uZHMiDAoKVXJsUmVjeWNsZSLvAgoDVXJsEgsKA3VybBgBIAEoCRIMCgRmb3JrGAIgASgJEg4KBnZlcnRleBgDIAEoCRIMCgRkb25lGAQgASgIEisKB2NyZWF0ZWQYBSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEg0KBXRva2VuGAYgASgJEg8KB3N0b3BwZWQYByABKAgSDgoGc291cmNlGAggASgJEj4KBnJldGFpbhgJIAEoCzIsLm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5VcmxSZXRhaW5IABI8CgVjbG9zZRgKIAEoCzIrLm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5VcmxDbG9zZUgAEkAKB3JlY3ljbGUYCyABKAsyLS5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuVXJsUmVjeWNsZUgAQhIKEHJldGVudGlvbl9wb2xpY3kiUgoHU2Vzc2lvbhIMCgRmb3JrGAEgASgJEjkKBnN0YXR1cxgCIAEoDjIpLm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5TdGF0dXMiLgoUU3RyZWFtU2Vzc2lvblJlcXVlc3QSFgoCaWQYASABKAlCCrpIB3IFEAEY9AMiSQoRQWNrTWVzc2FnZVJlcXVlc3QSFgoCaWQYASABKAlCCrpIB3IFEAEY9AMSHAoKbWVzc2FnZV9pZBgCIAEoCUIIukgFcgOwAQEiFAoSQWNrTWVzc2FnZVJlc3BvbnNlIhIKEFJlY29ubmVjdE1lc3NhZ2Ui6wEKFVN0cmVhbVNlc3Npb25SZXNwb25zZRIUCgJpZBgBIAEoCUIIukgFcgOwAQESOwoGb3V0cHV0GAIgASgLMikubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLk91dHB1dEgAEjUKA3VybBgDIAEoCzImLm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5VcmxIABI9CgdzZXNzaW9uGAQgASgLMioubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlNlc3Npb25IAEIJCgdtZXNzYWdlIowDChFSdW5TZXNzaW9uUmVxdWVzdBIWCgJpZBgBIAEoCUIKukgHcgUQARj0AxI7Cgt0cmFuc21pdHRlchgCIAEoCUIhukgechwQARhkMhZeW2EtekEtWjAtOV8tXXsxLDEwMH0kSACIAQESfgoHc2lnbmFscxgDIAMoCzJBLm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5SdW5TZXNzaW9uUmVxdWVzdC5TaWduYWxzRW50cnlCKrpIJ5oBJCIiciAQARhkMhpeW18kYS16QS1aXVtfJGEtekEtWjAtOV0qJBIoCg9jaGFsbGVuZ2VfdG9rZW4YBCABKAlCCrpIB3IFEAEY9ANIAYgBARpUCgxTaWduYWxzRW50cnkSCwoDa2V5GAEgASgJEjMKBXZhbHVlGAIgASgLMiQubW9jaGFidWdhcGlzLmFkYXB0LmdyYXBoLlNpZ25hbERhdGE6AjgBQg4KDF90cmFuc21pdHRlckISChBfY2hhbGxlbmdlX3Rva2VuIrECChJSdW5TZXNzaW9uUmVzcG9uc2USFAoCaWQYASABKAlCCLpIBXIDsAEBEkcKB3N0YXJ0ZWQYAiABKAsyNC5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuUnVuU2Vzc2lvblN0YXJ0ZWRIABI7CgZvdXRwdXQYAyABKAsyKS5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuT3V0cHV0SAASNQoDdXJsGAQgASgLMiYubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlVybEgAEj0KB3Nlc3Npb24YBSABKAsyKi5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuU2Vzc2lvbkgAQgkKB21lc3NhZ2UiYAoRUnVuU2Vzc2lvblN0YXJ0ZWQSDQoFdG9rZW4YASABKAkSMAoHZXhwaXJlcxgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAIgBAUIKCghfZXhwaXJlcyIrChFSdW5Jbmhlcml0UmVxdWVzdBIWCgJpZBgBIAEoCUIKukgHcgUQARj0AyKzAgoSUnVuSW5oZXJpdFJlc3BvbnNlEhQKAmlkGAEgASgJQgi6SAVyA7ABARJJCglpbmhlcml0ZWQYAiABKAsyNC5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuUnVuSW5oZXJpdFN0YXJ0ZWRIABI7CgZvdXRwdXQYAyABKAsyKS5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuT3V0cHV0SAASNQoDdXJsGAQgASgLMiYubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlVybEgAEj0KB3Nlc3Npb24YBSABKAsyKi5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuU2Vzc2lvbkgAQgkKB21lc3NhZ2UiYAoRUnVuSW5oZXJpdFN0YXJ0ZWQSDQoFdG9rZW4YASABKAkSMAoHZXhwaXJlcxgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAIgBAUIKCghfZXhwaXJlcyItChNXYXRjaFNlc3Npb25SZXF1ZXN0EhYKAmlkGAEgASgJQgq6SAdyBRABGPQDIrQCChRXYXRjaFNlc3Npb25SZXNwb25zZRIUCgJpZBgBIAEoCUIIukgFcgOwAQESOwoGb3V0cHV0GAIgASgLMikubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLk91dHB1dEgAEjUKA3VybBgDIAEoCzImLm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5VcmxIABI9CgdzZXNzaW9uGAQgASgLMioubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlNlc3Npb25IABJICglyZWNvbm5lY3QYBSABKAsyMy5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuUmVjb25uZWN0TWVzc2FnZUgAQgkKB21lc3NhZ2UiiAMKD1dhdGNoUnVuUmVxdWVzdBIWCgJpZBgBIAEoCUIKukgHcgUQARj0AxI7Cgt0cmFuc21pdHRlchgCIAEoCUIhukgechwQARhkMhZeW2EtekEtWjAtOV8tXXsxLDEwMH0kSACIAQESfAoHc2lnbmFscxgDIAMoCzI/Lm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5XYXRjaFJ1blJlcXVlc3QuU2lnbmFsc0VudHJ5Qiq6SCeaASQiInIgEAEYZDIaXltfJGEtekEtWl1bXyRhLXpBLVowLTldKiQSKAoPY2hhbGxlbmdlX3Rva2VuGAQgASgJQgq6SAdyBRABGPQDSAGIAQEaVAoMU2lnbmFsc0VudHJ5EgsKA2tleRgBIAEoCRIzCgV2YWx1ZRgCIAEoCzIkLm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC5TaWduYWxEYXRhOgI4AUIOCgxfdHJhbnNtaXR0ZXJCEgoQX2NoYWxsZW5nZV90b2tlbiL3AgoQV2F0Y2hSdW5SZXNwb25zZRIUCgJpZBgBIAEoCUIIukgFcgOwAQESRQoHc3RhcnRlZBgCIAEoCzIyLm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5XYXRjaFJ1blN0YXJ0ZWRIABI7CgZvdXRwdXQYAyABKAsyKS5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuT3V0cHV0SAASNQoDdXJsGAQgASgLMiYubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlVybEgAEj0KB3Nlc3Npb24YBSABKAsyKi5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuU2Vzc2lvbkgAEkgKCXJlY29ubmVjdBgGIAEoCzIzLm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5SZWNvbm5lY3RNZXNzYWdlSABCCQoHbWVzc2FnZSJeCg9XYXRjaFJ1blN0YXJ0ZWQSDQoFdG9rZW4YASABKAkSMAoHZXhwaXJlcxgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAIgBAUIKCghfZXhwaXJlcyItChNXYXRjaEluaGVyaXRSZXF1ZXN0EhYKAmlkGAEgASgJQgq6SAdyBRABGPQDIoEDChRXYXRjaEluaGVyaXRSZXNwb25zZRIUCgJpZBgBIAEoCUIIukgFcgOwAQESSwoJaW5oZXJpdGVkGAIgASgLMjYubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLldhdGNoSW5oZXJpdFN0YXJ0ZWRIABI7CgZvdXRwdXQYAyABKAsyKS5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuT3V0cHV0SAASNQoDdXJsGAQgASgLMiYubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlVybEgAEj0KB3Nlc3Npb24YBSABKAsyKi5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuU2Vzc2lvbkgAEkgKCXJlY29ubmVjdBgGIAEoCzIzLm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5SZWNvbm5lY3RNZXNzYWdlSABCCQoHbWVzc2FnZSJiChNXYXRjaEluaGVyaXRTdGFydGVkEg0KBXRva2VuGAEgASgJEjAKB2V4cGlyZXMYAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSACIAQFCCgoIX2V4cGlyZXMqyAEKBlN0YXR1cxIWChJTVEFUVVNfVU5TUEVDSUZJRUQQABISCg5TVEFUVVNfUlVOTklORxABEhIKDlNUQVRVU19TVE9QUEVEEAISEwoPU1RBVFVTX1NUT1BQSU5HEAMSFAoQU1RBVFVTX0NPTVBMRVRFRBAEEhIKDlNUQVRVU19FWFBJUkVEEAUSEgoOU1RBVFVTX0VSUk9SRUQQBhIVChFTVEFUVVNfREVMRUdBVElORxAHEhQKEFNUQVRVU19ERUxFR0FURUQQCDLJFQoRQXV0b21hdGlvblNlcnZpY2USswEKD0NyZWF0ZUNoYWxsZW5nZRI5Lm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5DcmVhdGVDaGFsbGVuZ2VSZXF1ZXN0GjoubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLkNyZWF0ZUNoYWxsZW5nZVJlc3BvbnNlIimC0+STAiM6ASoiHi92MS9hdXRvbWF0aW9ucy97aWR9L2NoYWxsZW5nZRK6AQoPUmVkZWVtQ2hhbGxlbmdlEjkubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlJlZGVlbUNoYWxsZW5nZVJlcXVlc3QaOi5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuUmVkZWVtQ2hhbGxlbmdlUmVzcG9uc2UiMILT5JMCKjoBKiIlL3YxL2F1dG9tYXRpb25zL3tpZH0vY2hhbGxlbmdlL3JlZGVlbRKuAQoMU3RhcnRTZXNzaW9uEjYubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlN0YXJ0U2Vzc2lvblJlcXVlc3QaNy5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuU3RhcnRTZXNzaW9uUmVzcG9uc2UiLYLT5JMCJzoBKiIiL3YxL2F1dG9tYXRpb25zL3tpZH0vc2Vzc2lvbi9zdGFydBKiAQoLU3RvcFNlc3Npb24SNS5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuU3RvcFNlc3Npb25SZXF1ZXN0GjYubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlN0b3BTZXNzaW9uUmVzcG9uc2UiJILT5JMCHiocL3YxL2F1dG9tYXRpb25zL3tpZH0vc2Vzc2lvbhK2AQoOSW5oZXJpdFNlc3Npb24SOC5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuSW5oZXJpdFNlc3Npb25SZXF1ZXN0GjkubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLkluaGVyaXRTZXNzaW9uUmVzcG9uc2UiL4LT5JMCKToBKiIkL3YxL2F1dG9tYXRpb25zL3tpZH0vc2Vzc2lvbi9pbmhlcml0Ep8BCgpHZXRTZXNzaW9uEjQubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLkdldFNlc3Npb25SZXF1ZXN0GjUubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLkdldFNlc3Npb25SZXNwb25zZSIkgtPkkwIeEhwvdjEvYXV0b21hdGlvbnMve2lkfS9zZXNzaW9uEqYBCgpSZWFkT3V0cHV0EjQubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlJlYWRPdXRwdXRSZXF1ZXN0GjUubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlJlYWRPdXRwdXRSZXNwb25zZSIrgtPkkwIlEiMvdjEvYXV0b21hdGlvbnMve2lkfS9zZXNzaW9uL291dHB1dBKeAQoIUmVhZFVybHMSMi5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuUmVhZFVybHNSZXF1ZXN0GjMubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlJlYWRVcmxzUmVzcG9uc2UiKYLT5JMCIxIhL3YxL2F1dG9tYXRpb25zL3tpZH0vc2Vzc2lvbi91cmxzErEBCg1TdHJlYW1TZXNzaW9uEjcubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlN0cmVhbVNlc3Npb25SZXF1ZXN0GjgubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlN0cmVhbVNlc3Npb25SZXNwb25zZSIrgtPkkwIlEiMvdjEvYXV0b21hdGlvbnMve2lkfS9zZXNzaW9uL3N0cmVhbTABEqYBCgpBY2tNZXNzYWdlEjQubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLkFja01lc3NhZ2VSZXF1ZXN0GjUubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLkFja01lc3NhZ2VSZXNwb25zZSIrgtPkkwIlOgEqIiAvdjEvYXV0b21hdGlvbnMve2lkfS9zZXNzaW9uL2FjaxKoAQoKUnVuU2Vzc2lvbhI0Lm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5SdW5TZXNzaW9uUmVxdWVzdBo1Lm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5SdW5TZXNzaW9uUmVzcG9uc2UiK4LT5JMCJToBKiIgL3YxL2F1dG9tYXRpb25zL3tpZH0vc2Vzc2lvbi9ydW4wARKwAQoKUnVuSW5oZXJpdBI0Lm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5SdW5Jbmhlcml0UmVxdWVzdBo1Lm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5SdW5Jbmhlcml0UmVzcG9uc2UiM4LT5JMCLToBKiIoL3YxL2F1dG9tYXRpb25zL3tpZH0vc2Vzc2lvbi9ydW4taW5oZXJpdDABEqgBCgxXYXRjaFNlc3Npb24SNi5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuV2F0Y2hTZXNzaW9uUmVxdWVzdBo3Lm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5XYXRjaFNlc3Npb25SZXNwb25zZSIlgtPkkwIfOgEqIhovdjEvYXV0b21hdGlvbnMve2lkfS93YXRjaDABEqABCghXYXRjaFJ1bhIyLm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5XYXRjaFJ1blJlcXVlc3QaMy5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuV2F0Y2hSdW5SZXNwb25zZSIpgtPkkwIjOgEqIh4vdjEvYXV0b21hdGlvbnMve2lkfS93YXRjaC1ydW4wARKwAQoMV2F0Y2hJbmhlcml0EjYubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLldhdGNoSW5oZXJpdFJlcXVlc3QaNy5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuV2F0Y2hJbmhlcml0UmVzcG9uc2UiLYLT5JMCJzoBKiIiL3YxL2F1dG9tYXRpb25zL3tpZH0vd2F0Y2gtaW5oZXJpdDABGokBykEWYWRhcHQubW9jaGFidWdhcGlzLmNvbdJBbWh0dHBzOi8vd3d3Lm1vY2hhYnVnYXBpcy5jb20vYXV0aC9hZGFwdC5hdXRvbWF0aW9ucyxodHRwczovL3d3dy5tb2NoYWJ1Z2FwaXMuY29tL2F1dGgvYWRhcHQuYXV0b21hdGlvbnMuc3RhcnRiBnByb3RvMw",[m,fe,Me,dt,H]),Os=g(c,0),_s=g(c,1),qs=g(c,2),$s=g(c,3),eo=g(c,4),no=g(c,5),to=g(c,6),ao=g(c,7),so=g(c,8),oo=g(c,9),co=g(c,10),io=g(c,11),go=g(c,12),lo=g(c,13),ro=g(c,14),mo=g(c,15),uo=g(c,16),po=g(c,17),bo=g(c,18),Go=g(c,19),ho=g(c,20),Io=g(c,21),yo=g(c,22),Zo=g(c,23),Ao=g(c,24),Ro=g(c,25),Xo=g(c,26),Vo=g(c,27),So=g(c,28),Wo=g(c,29),Jo=g(c,30),Co=g(c,31),Bo=g(c,32),Yo=g(c,33),Fo=g(c,34),xo=g(c,35),fo=g(c,36),Eo=g(c,37),Mo=g(c,38),Ho=g(c,39),vo=g(c,40),lt=(o=>(o[o.UNSPECIFIED=0]="UNSPECIFIED",o[o.RUNNING=1]="RUNNING",o[o.STOPPED=2]="STOPPED",o[o.STOPPING=3]="STOPPING",o[o.COMPLETED=4]="COMPLETED",o[o.EXPIRED=5]="EXPIRED",o[o.ERRORED=6]="ERRORED",o[o.DELEGATING=7]="DELEGATING",o[o.DELEGATED=8]="DELEGATED",o))(lt||{}),zo=ct(c,0),Lo=gt(c,0);var G=rt("CjRtb2NoYWJ1Z2FwaXMvYWRhcHQvcnVudGltZS92MS9leGVjdXRvcl9zZXJ2aWNlLnByb3RvEh1tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MSK+AQolRXhlY3V0b3JTZXJ2aWNlQmF0Y2hXcml0ZVN0b3JlUmVxdWVzdBJOCgpvcGVyYXRpb25zGAEgAygLMi0ubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuV3JpdGVPcGVyYXRpb25CC7pICJIBBQgBEOgHEkUKCW5hbWVzcGFjZRgCIAEoDjIoLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLk5hbWVzcGFjZUIIukgFggECIAAi7gEKJkV4ZWN1dG9yU2VydmljZUJhdGNoV3JpdGVTdG9yZVJlc3BvbnNlEmUKCG1ldGFkYXRhGAEgAygLMlMubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuRXhlY3V0b3JTZXJ2aWNlQmF0Y2hXcml0ZVN0b3JlUmVzcG9uc2UuTWV0YWRhdGFFbnRyeRpdCg1NZXRhZGF0YUVudHJ5EgsKA2tleRgBIAEoCRI7CgV2YWx1ZRgCIAEoCzIsLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLlZhbHVlTWV0YWRhdGE6AjgBIrYBCiBFeGVjdXRvclNlcnZpY2VXcml0ZVN0b3JlUmVxdWVzdBJLCglvcGVyYXRpb24YASABKAsyOC5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5Db25kaXRpb25hbFdyaXRlT3BlcmF0aW9uEkUKCW5hbWVzcGFjZRgCIAEoDjIoLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLk5hbWVzcGFjZUIIukgFggECIAAidQohRXhlY3V0b3JTZXJ2aWNlV3JpdGVTdG9yZVJlc3BvbnNlEkMKCG1ldGFkYXRhGAEgASgLMiwubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuVmFsdWVNZXRhZGF0YUgAiAEBQgsKCV9tZXRhZGF0YSKPAQokRXhlY3V0b3JTZXJ2aWNlQmF0Y2hSZWFkU3RvcmVSZXF1ZXN0EiAKBGtleXMYASADKAlCErpID5IBDAgBEJBOIgVyAxiAIBJFCgluYW1lc3BhY2UYAiABKA4yKC5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5OYW1lc3BhY2VCCLpIBYIBAiAAIt4BCiVFeGVjdXRvclNlcnZpY2VCYXRjaFJlYWRTdG9yZVJlc3BvbnNlEl4KBWl0ZW1zGAEgAygLMk8ubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuRXhlY3V0b3JTZXJ2aWNlQmF0Y2hSZWFkU3RvcmVSZXNwb25zZS5JdGVtc0VudHJ5GlUKCkl0ZW1zRW50cnkSCwoDa2V5GAEgASgJEjYKBXZhbHVlGAIgASgLMicubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuR2V0VmFsdWU6AjgBIq4BCiFFeGVjdXRvclNlcnZpY2VTZWxlY3RTdG9yZVJlcXVlc3QSQgoJb3BlcmF0aW9uGAEgASgLMicubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuU2VsZWN0T3BCBrpIA8gBARJFCgluYW1lc3BhY2UYAiABKA4yKC5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5OYW1lc3BhY2VCCLpIBYIBAiAAIoACCiJFeGVjdXRvclNlcnZpY2VTZWxlY3RTdG9yZVJlc3BvbnNlElsKBWl0ZW1zGAEgAygLMkwubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuRXhlY3V0b3JTZXJ2aWNlU2VsZWN0U3RvcmVSZXNwb25zZS5JdGVtc0VudHJ5EhcKCm5leHRfdG9rZW4YAiABKAlIAIgBARpVCgpJdGVtc0VudHJ5EgsKA2tleRgBIAEoCRI2CgV2YWx1ZRgCIAEoCzInLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkdldFZhbHVlOgI4AUINCgtfbmV4dF90b2tlbiI2Ch5DYW5jZWxFeGNoYW5nZU9wZXJhdGlvblJlcXVlc3QSFAoCaWQYASABKAlCCLpIBXIDGOgHIiEKH0NhbmNlbEV4Y2hhbmdlT3BlcmF0aW9uUmVzcG9uc2UiMwobR2V0RXhjaGFuZ2VPcGVyYXRpb25SZXF1ZXN0EhQKAmlkGAEgASgJQgi6SAVyAxjoByJeChxHZXRFeGNoYW5nZU9wZXJhdGlvblJlc3BvbnNlEj4KBGl0ZW0YASABKAsyMC5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5FeGNoYW5nZU9wZXJhdGlvbiL3AgoXRGlzcGF0Y2hFeGNoYW5nZVJlcXVlc3QSMwoEbmFtZRgBIAEoCUIlukgiciAQARhkMhpeW18kYS16QS1aXVtfJGEtekEtWjAtOV0qJBI8CghyZWNlaXZlchgCIAEoCUIlukgiciAQARhkMhpeW18kYS16QS1aXVtfJGEtekEtWjAtOV0qJEgAiAEBEoUBCgdzaWduYWxzGAMgAygLMkMubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuRGlzcGF0Y2hFeGNoYW5nZVJlcXVlc3QuU2lnbmFsc0VudHJ5Qi+6SCyaASkIABAyIiNyIRABGIAEMhpeW18kYS16QS1aXVtfJGEtekEtWjAtOV0qJBpUCgxTaWduYWxzRW50cnkSCwoDa2V5GAEgASgJEjMKBXZhbHVlGAIgASgLMiQubW9jaGFidWdhcGlzLmFkYXB0LmdyYXBoLlNpZ25hbERhdGE6AjgBQgsKCV9yZWNlaXZlciJfChhEaXNwYXRjaEV4Y2hhbmdlUmVzcG9uc2USQwoJb3BlcmF0aW9uGAEgASgLMjAubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuRXhjaGFuZ2VPcGVyYXRpb24irQIKC1NlbmRSZXF1ZXN0Ej0KC3RyYW5zbWl0dGVyGAEgASgJQiO6SCByHhhkMhpeW18kYS16QS1aXVtfJGEtekEtWjAtOV0qJEgAiAEBEnkKB3NpZ25hbHMYAiADKAsyNy5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5TZW5kUmVxdWVzdC5TaWduYWxzRW50cnlCL7pILJoBKQgAEDIiI3IhEAEYgAQyGl5bXyRhLXpBLVpdW18kYS16QS1aMC05XSokGlQKDFNpZ25hbHNFbnRyeRILCgNrZXkYASABKAkSMwoFdmFsdWUYAiABKAsyJC5tb2NoYWJ1Z2FwaXMuYWRhcHQuZ3JhcGguU2lnbmFsRGF0YToCOAFCDgoMX3RyYW5zbWl0dGVyIg4KDFNlbmRSZXNwb25zZSJhChxCYXRjaEdldEFjdGl2ZVNpZ25hbHNSZXF1ZXN0EkEKBW5hbWVzGAEgAygJQjK6SC+SASwIARD0AxgBIiNyIRABGIAEMhpeW18kYS16QS1aXVtfJGEtekEtWjAtOV0qJCLdAQodQmF0Y2hHZXRBY3RpdmVTaWduYWxzUmVzcG9uc2USVgoFaXRlbXMYASADKAsyRy5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5CYXRjaEdldEFjdGl2ZVNpZ25hbHNSZXNwb25zZS5JdGVtc0VudHJ5EhAKCHJlY2VpdmVyGAIgASgJGlIKCkl0ZW1zRW50cnkSCwoDa2V5GAEgASgJEjMKBXZhbHVlGAIgASgLMiQubW9jaGFidWdhcGlzLmFkYXB0LmdyYXBoLlNpZ25hbERhdGE6AjgBIqgBChhMaXN0QWN0aXZlU2lnbmFsc1JlcXVlc3QSIAoJcGFnZV9zaXplGAEgASgFQgi6SAUaAxj0A0gAiAEBEh0KBmN1cnNvchgCIAEoCUIIukgFcgMY9ANIAYgBARIdChBvcmRlcl9kZXNjZW5kaW5nGAMgASgISAKIAQFCDAoKX3BhZ2Vfc2l6ZUIJCgdfY3Vyc29yQhMKEV9vcmRlcl9kZXNjZW5kaW5nIoUCChlMaXN0QWN0aXZlU2lnbmFsc1Jlc3BvbnNlElYKB3NpZ25hbHMYASADKAsyRS5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5MaXN0QWN0aXZlU2lnbmFsc1Jlc3BvbnNlLlNpZ25hbHNFbnRyeRIQCghyZWNlaXZlchgCIAEoCRIYCgtuZXh0X2N1cnNvchgDIAEoCUgAiAEBGlQKDFNpZ25hbHNFbnRyeRILCgNrZXkYASABKAkSMwoFdmFsdWUYAiABKAsyJC5tb2NoYWJ1Z2FwaXMuYWRhcHQuZ3JhcGguU2lnbmFsRGF0YToCOAFCDgoMX25leHRfY3Vyc29yImsKJUV4ZWN1dG9yU2VydmljZUdldFZlcnRleENvbmZpZ1JlcXVlc3QSMwoKZmllbGRfbWFzaxgBIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2tIAIgBAUINCgtfZmllbGRfbWFzayKrAgomRXhlY3V0b3JTZXJ2aWNlR2V0VmVydGV4Q29uZmlnUmVzcG9uc2USDgoGY29uZmlnGAEgASgMEjoKCG1ldGFkYXRhGAIgASgLMigubW9jaGFidWdhcGlzLmFkYXB0LmdyYXBoLlZlcnRleE1ldGFkYXRhEnoKE2NvbmZpZ3VyZWRfc2VydmljZXMYAyADKAsyXS5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5FeGVjdXRvclNlcnZpY2VHZXRWZXJ0ZXhDb25maWdSZXNwb25zZS5Db25maWd1cmVkU2VydmljZXNFbnRyeRo5ChdDb25maWd1cmVkU2VydmljZXNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAg6AjgBImgKEUV4Y2hhbmdlT3BlcmF0aW9uEgwKBG5hbWUYASABKAkSCgoCaWQYAiABKAkSOQoGc3RhdHVzGAMgASgOMikubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlN0YXR1czLKDAoPRXhlY3V0b3JTZXJ2aWNlEp4BCg9HZXRWZXJ0ZXhDb25maWcSRC5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5FeGVjdXRvclNlcnZpY2VHZXRWZXJ0ZXhDb25maWdSZXF1ZXN0GkUubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuRXhlY3V0b3JTZXJ2aWNlR2V0VmVydGV4Q29uZmlnUmVzcG9uc2UShgEKEUxpc3RBY3RpdmVTaWduYWxzEjcubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuTGlzdEFjdGl2ZVNpZ25hbHNSZXF1ZXN0GjgubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuTGlzdEFjdGl2ZVNpZ25hbHNSZXNwb25zZRKSAQoVQmF0Y2hHZXRBY3RpdmVTaWduYWxzEjsubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuQmF0Y2hHZXRBY3RpdmVTaWduYWxzUmVxdWVzdBo8Lm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkJhdGNoR2V0QWN0aXZlU2lnbmFsc1Jlc3BvbnNlEl8KBFNlbmQSKi5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5TZW5kUmVxdWVzdBorLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLlNlbmRSZXNwb25zZRKDAQoQRGlzcGF0Y2hFeGNoYW5nZRI2Lm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkRpc3BhdGNoRXhjaGFuZ2VSZXF1ZXN0GjcubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuRGlzcGF0Y2hFeGNoYW5nZVJlc3BvbnNlEo8BChRHZXRFeGNoYW5nZU9wZXJhdGlvbhI6Lm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkdldEV4Y2hhbmdlT3BlcmF0aW9uUmVxdWVzdBo7Lm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkdldEV4Y2hhbmdlT3BlcmF0aW9uUmVzcG9uc2USmAEKF0NhbmNlbEV4Y2hhbmdlT3BlcmF0aW9uEj0ubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuQ2FuY2VsRXhjaGFuZ2VPcGVyYXRpb25SZXF1ZXN0Gj4ubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuQ2FuY2VsRXhjaGFuZ2VPcGVyYXRpb25SZXNwb25zZRKPAQoKV3JpdGVTdG9yZRI/Lm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkV4ZWN1dG9yU2VydmljZVdyaXRlU3RvcmVSZXF1ZXN0GkAubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuRXhlY3V0b3JTZXJ2aWNlV3JpdGVTdG9yZVJlc3BvbnNlEp4BCg9CYXRjaFdyaXRlU3RvcmUSRC5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5FeGVjdXRvclNlcnZpY2VCYXRjaFdyaXRlU3RvcmVSZXF1ZXN0GkUubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuRXhlY3V0b3JTZXJ2aWNlQmF0Y2hXcml0ZVN0b3JlUmVzcG9uc2USmwEKDkJhdGNoUmVhZFN0b3JlEkMubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuRXhlY3V0b3JTZXJ2aWNlQmF0Y2hSZWFkU3RvcmVSZXF1ZXN0GkQubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuRXhlY3V0b3JTZXJ2aWNlQmF0Y2hSZWFkU3RvcmVSZXNwb25zZRKSAQoLU2VsZWN0U3RvcmUSQC5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5FeGVjdXRvclNlcnZpY2VTZWxlY3RTdG9yZVJlcXVlc3QaQS5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5FeGVjdXRvclNlcnZpY2VTZWxlY3RTdG9yZVJlc3BvbnNlYgZwcm90bzM",[m,ut,c,H,O,Z]),jo=y(G,0),Po=y(G,1),Oo=y(G,2),_o=y(G,3),qo=y(G,4),$o=y(G,5),ec=y(G,6),nc=y(G,7),tc=y(G,8),ac=y(G,9),sc=y(G,10),oc=y(G,11),cc=y(G,12),ic=y(G,13),gc=y(G,14),dc=y(G,15),lc=y(G,16),rc=y(G,17),mc=y(G,18),uc=y(G,19),pc=y(G,20),bc=y(G,21),Gc=y(G,22),be=mt(G,0);import{enumDesc as z,fileDesc as pt,messageDesc as l,serviceDesc as bt}from"@bufbuild/protobuf/codegenv2";var s=pt("CjVtb2NoYWJ1Z2FwaXMvYWRhcHQvcnVudGltZS92MS9maWxlZm9yZ2Vfc2VydmljZS5wcm90bxIdbW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEi+wEKFVJlbmRlckRvY3VtZW50UmVxdWVzdBI/CgtodG1sX3RvX3BkZhgBIAEoCzIoLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkh0bWxUb1BkZkgAEkcKD21hcmtkb3duX3RvX3BkZhgCIAEoCzIsLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLk1hcmtkb3duVG9QZGZIABJDCg1vZmZpY2VfdG9fcGRmGAMgASgLMioubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuT2ZmaWNlVG9QZGZIAEITCgpjb252ZXJzaW9uEgW6SAIIASJOChZSZW5kZXJEb2N1bWVudFJlc3BvbnNlEjQKBm91dHB1dBgBIAEoCzIkLm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC5TaWduYWxEYXRhIvoCCglIdG1sVG9QZGYSIAoKaW5kZXhfaHRtbBgBIAEoCUIMukgJcgcQARiAgIAFEiMKC2hlYWRlcl9odG1sGAIgASgJQgm6SAZyBBiAgEBIAIgBARIjCgtmb290ZXJfaHRtbBgDIAEoCUIJukgGcgQYgIBASAGIAQESPgoGYXNzZXRzGAQgAygLMiQubW9jaGFidWdhcGlzLmFkYXB0LmdyYXBoLlNpZ25hbERhdGFCCLpIBZIBAhBkEkUKBnJlbmRlchgKIAEoCzIwLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkh0bWxSZW5kZXJPcHRpb25zSAKIAQESRAoGb3V0cHV0GAsgASgLMi8ubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuUGRmT3V0cHV0T3B0aW9uc0gDiAEBQg4KDF9oZWFkZXJfaHRtbEIOCgxfZm9vdGVyX2h0bWxCCQoHX3JlbmRlckIJCgdfb3V0cHV0IskDCg1NYXJrZG93blRvUGRmEiEKDHdyYXBwZXJfaHRtbBgBIAEoCUILukgIcgYQARiAgEASSAoObWFya2Rvd25fZmlsZXMYAiADKAsyJC5tb2NoYWJ1Z2FwaXMuYWRhcHQuZ3JhcGguU2lnbmFsRGF0YUIKukgHkgEECAEQMhIjCgtoZWFkZXJfaHRtbBgDIAEoCUIJukgGcgQYgIBASACIAQESIwoLZm9vdGVyX2h0bWwYBCABKAlCCbpIBnIEGICAQEgBiAEBEj4KBmFzc2V0cxgFIAMoCzIkLm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC5TaWduYWxEYXRhQgi6SAWSAQIQZBJFCgZyZW5kZXIYCiABKAsyMC5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5IdG1sUmVuZGVyT3B0aW9uc0gCiAEBEkQKBm91dHB1dBgLIAEoCzIvLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLlBkZk91dHB1dE9wdGlvbnNIA4gBAUIOCgxfaGVhZGVyX2h0bWxCDgoMX2Zvb3Rlcl9odG1sQgkKB19yZW5kZXJCCQoHX291dHB1dCKPBwoLT2ZmaWNlVG9QZGYS2gUKCGRvY3VtZW50GAEgASgLMiQubW9jaGFidWdhcGlzLmFkYXB0LmdyYXBoLlNpZ25hbERhdGFCoQW6SJ0FugGWBQoYdmFsaWRfZG9jdW1lbnRfZXh0ZW5zaW9uEi1kb2N1bWVudCBtdXN0IGhhdmUgYSBzdXBwb3J0ZWQgZmlsZSBleHRlbnNpb24aygR0aGlzLmZpbGVuYW1lLm1hdGNoZXMoJyg/aSlcXC4oMTIzfDYwMnxhYnd8YmlifGJtcHxjZHJ8Y2dtfGNteHxjc3Z8Y3drfGRiZnxkaWZ8ZG9jfGRvY218ZG9jeHxkb3R8ZG90bXxkb3R4fGR4ZnxlbWZ8ZXBzfGVwdWJ8Zm9kZ3xmb2RwfGZvZHN8Zm9kdHxmb3BkfGdpZnxodG18aHRtbHxod3B8anBlZ3xqcGd8a2V5fGx0eHxsd3B8bWN3fG1ldHxtbWx8bXd8bnVtYmVyc3xvZGR8b2RnfG9kbXxvZHB8b2RzfG9kdHxvdGd8b3RofG90cHxvdHN8b3R0fHBhZ2VzfHBibXxwY2R8cGN0fHBjeHxwZGJ8cGRmfHBnbXxwbmd8cG90fHBvdG18cG90eHxwcG18cHBzfHBwdHxwcHRtfHBwdHh8cHNkfHBzd3xwdWJ8cHdwfHB4bHxyYXN8cnRmfHNkYXxzZGN8c2RkfHNkcHxzZHd8c2dsfHNsa3xzbWZ8c3RjfHN0ZHxzdGl8c3R3fHN2Z3xzdm18c3dmfHN4Y3xzeGR8c3hnfHN4aXxzeG18c3h3fHRnYXx0aWZ8dGlmZnx0eHR8dW9mfHVvcHx1b3N8dW90fHZkeHx2b3J8dnNkfHZzZG18dnNkeHx3YjJ8d2sxfHdrc3x3bWZ8d3BkfHdwZ3x3cHN8eGJtfHhodG1sfHhsc3x4bHNifHhsc218eGxzeHx4bHR8eGx0bXx4bHR4fHhsd3x4bWx8eHBtfHphYncpJCcpyAEBEkcKBnJlbmRlchgKIAEoCzIyLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLk9mZmljZVJlbmRlck9wdGlvbnNIAIgBARJECgZvdXRwdXQYCyABKAsyLy5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5QZGZPdXRwdXRPcHRpb25zSAGIAQFCCQoHX3JlbmRlckIJCgdfb3V0cHV0IqQMChFIdG1sUmVuZGVyT3B0aW9ucxIdChBwcmludF9iYWNrZ3JvdW5kGAEgASgISACIAQESHAoPb21pdF9iYWNrZ3JvdW5kGAIgASgISAGIAQESIQoUcHJlZmVyX2Nzc19wYWdlX3NpemUYAyABKAhIAogBARJSChNlbXVsYXRlZF9tZWRpYV90eXBlGAQgASgOMjAubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuRW11bGF0ZWRNZWRpYVR5cGVIA4gBARIkCgtwYXBlcl93aWR0aBgFIAEoAkIKukgHCgUlAAAAAEgEiAEBEiUKDHBhcGVyX2hlaWdodBgGIAEoAkIKukgHCgUlAAAAAEgFiAEBEiMKCm1hcmdpbl90b3AYByABKAJCCrpIBwoFLQAAAABIBogBARIlCgxtYXJnaW5fcmlnaHQYCCABKAJCCrpIBwoFLQAAAABIB4gBARImCg1tYXJnaW5fYm90dG9tGAkgASgCQgq6SAcKBS0AAAAASAiIAQESJAoLbWFyZ2luX2xlZnQYCiABKAJCCrpIBwoFLQAAAABICYgBARIWCglsYW5kc2NhcGUYCyABKAhICogBARIjCgVzY2FsZRgMIAEoAkIPukgMCgodAAAAQC3NzMw9SAuIAQESRwoLcGFnZV9yYW5nZXMYDSABKAlCLbpIKnIoMiZeWzAtOV0rKC1bMC05XSspPygsWzAtOV0rKC1bMC05XSspPykqJEgMiAEBEhgKC3NpbmdsZV9wYWdlGA4gASgISA2IAQESIAoTZ2VuZXJhdGVfdGFnZ2VkX3BkZhgPIAEoCEgOiAEBOqQFukigBRraAQoXbWFyZ2luc19maXRfcGFwZXJfd2lkdGgSMmxlZnQgKyByaWdodCBtYXJnaW5zIG11c3QgYmUgbGVzcyB0aGFuIHBhcGVyIHdpZHRoGooBKCFoYXModGhpcy5wYXBlcl93aWR0aCkgfHwgIWhhcyh0aGlzLm1hcmdpbl9sZWZ0KSB8fCAhaGFzKHRoaXMubWFyZ2luX3JpZ2h0KSkgfHwgKHRoaXMubWFyZ2luX2xlZnQgKyB0aGlzLm1hcmdpbl9yaWdodCA8IHRoaXMucGFwZXJfd2lkdGgpGt4BChhtYXJnaW5zX2ZpdF9wYXBlcl9oZWlnaHQSM3RvcCArIGJvdHRvbSBtYXJnaW5zIG11c3QgYmUgbGVzcyB0aGFuIHBhcGVyIGhlaWdodBqMASghaGFzKHRoaXMucGFwZXJfaGVpZ2h0KSB8fCAhaGFzKHRoaXMubWFyZ2luX3RvcCkgfHwgIWhhcyh0aGlzLm1hcmdpbl9ib3R0b20pKSB8fCAodGhpcy5tYXJnaW5fdG9wICsgdGhpcy5tYXJnaW5fYm90dG9tIDwgdGhpcy5wYXBlcl9oZWlnaHQpGt8BCilvbWl0X2JhY2tncm91bmRfcmVxdWlyZXNfcHJpbnRfYmFja2dyb3VuZBI0b21pdF9iYWNrZ3JvdW5kIHJlcXVpcmVzIHByaW50X2JhY2tncm91bmQgdG8gYmUgdHJ1ZRp8IWhhcyh0aGlzLm9taXRfYmFja2dyb3VuZCkgfHwgdGhpcy5vbWl0X2JhY2tncm91bmQgPT0gZmFsc2UgfHwgKGhhcyh0aGlzLnByaW50X2JhY2tncm91bmQpICYmIHRoaXMucHJpbnRfYmFja2dyb3VuZCA9PSB0cnVlKUITChFfcHJpbnRfYmFja2dyb3VuZEISChBfb21pdF9iYWNrZ3JvdW5kQhcKFV9wcmVmZXJfY3NzX3BhZ2Vfc2l6ZUIWChRfZW11bGF0ZWRfbWVkaWFfdHlwZUIOCgxfcGFwZXJfd2lkdGhCDwoNX3BhcGVyX2hlaWdodEINCgtfbWFyZ2luX3RvcEIPCg1fbWFyZ2luX3JpZ2h0QhAKDl9tYXJnaW5fYm90dG9tQg4KDF9tYXJnaW5fbGVmdEIMCgpfbGFuZHNjYXBlQggKBl9zY2FsZUIOCgxfcGFnZV9yYW5nZXNCDgoMX3NpbmdsZV9wYWdlQhYKFF9nZW5lcmF0ZV90YWdnZWRfcGRmItINChNPZmZpY2VSZW5kZXJPcHRpb25zEh8KCHBhc3N3b3JkGAEgASgJQgi6SAVyAxiAAkgAiAEBEhYKCWxhbmRzY2FwZRgCIAEoCEgBiAEBEkcKC3BhZ2VfcmFuZ2VzGAMgASgJQi26SCpyKDImXlswLTldKygtWzAtOV0rKT8oLFswLTldKygtWzAtOV0rKT8pKiRIAogBARIbCg51cGRhdGVfaW5kZXhlcxgEIAEoCEgDiAEBEh8KEmV4cG9ydF9mb3JtX2ZpZWxkcxgFIAEoCEgEiAEBEigKG2FsbG93X2R1cGxpY2F0ZV9maWVsZF9uYW1lcxgGIAEoCEgFiAEBEh0KEGV4cG9ydF9ib29rbWFya3MYByABKAhIBogBARIwCiNleHBvcnRfYm9va21hcmtzX3RvX3BkZl9kZXN0aW5hdGlvbhgIIAEoCEgHiAEBEiAKE2V4cG9ydF9wbGFjZWhvbGRlcnMYCSABKAhICIgBARIZCgxleHBvcnRfbm90ZXMYCiABKAhICYgBARIfChJleHBvcnRfbm90ZXNfcGFnZXMYCyABKAhICogBARIkChdleHBvcnRfb25seV9ub3Rlc19wYWdlcxgMIAEoCEgLiAEBEiMKFmV4cG9ydF9ub3Rlc19pbl9tYXJnaW4YDSABKAhIDIgBARItCiBjb252ZXJ0X29vb190YXJnZXRfdG9fcGRmX3RhcmdldBgOIAEoCEgNiAEBEicKGmV4cG9ydF9saW5rc19yZWxhdGl2ZV9mc3lzGA8gASgISA6IAQESIQoUZXhwb3J0X2hpZGRlbl9zbGlkZXMYECABKAhID4gBARIdChBza2lwX2VtcHR5X3BhZ2VzGBEgASgISBCIAQESHwoSc2luZ2xlX3BhZ2Vfc2hlZXRzGBIgASgISBGIAQESLAofYWRkX29yaWdpbmFsX2RvY3VtZW50X2FzX3N0cmVhbRgTIAEoCEgSiAEBEicKGmxvc3NsZXNzX2ltYWdlX2NvbXByZXNzaW9uGBQgASgISBOIAQESHwoHcXVhbGl0eRgVIAEoBUIJukgGGgQYZCgBSBSIAQESJAoXcmVkdWNlX2ltYWdlX3Jlc29sdXRpb24YFiABKAhIFYgBARI2ChRtYXhfaW1hZ2VfcmVzb2x1dGlvbhgXIAEoBUITukgQGg4wSzCWATCsAjDYBDCwCUgWiAEBOo8CukiLAhqIAgozZXhwb3J0X29ubHlfbm90ZXNfcGFnZXNfcmVxdWlyZXNfZXhwb3J0X25vdGVzX3BhZ2VzEj5leHBvcnRfb25seV9ub3Rlc19wYWdlcyByZXF1aXJlcyBleHBvcnRfbm90ZXNfcGFnZXMgdG8gYmUgdHJ1ZRqQASFoYXModGhpcy5leHBvcnRfb25seV9ub3Rlc19wYWdlcykgfHwgdGhpcy5leHBvcnRfb25seV9ub3Rlc19wYWdlcyA9PSBmYWxzZSB8fCAoaGFzKHRoaXMuZXhwb3J0X25vdGVzX3BhZ2VzKSAmJiB0aGlzLmV4cG9ydF9ub3Rlc19wYWdlcyA9PSB0cnVlKUILCglfcGFzc3dvcmRCDAoKX2xhbmRzY2FwZUIOCgxfcGFnZV9yYW5nZXNCEQoPX3VwZGF0ZV9pbmRleGVzQhUKE19leHBvcnRfZm9ybV9maWVsZHNCHgocX2FsbG93X2R1cGxpY2F0ZV9maWVsZF9uYW1lc0ITChFfZXhwb3J0X2Jvb2ttYXJrc0ImCiRfZXhwb3J0X2Jvb2ttYXJrc190b19wZGZfZGVzdGluYXRpb25CFgoUX2V4cG9ydF9wbGFjZWhvbGRlcnNCDwoNX2V4cG9ydF9ub3Rlc0IVChNfZXhwb3J0X25vdGVzX3BhZ2VzQhoKGF9leHBvcnRfb25seV9ub3Rlc19wYWdlc0IZChdfZXhwb3J0X25vdGVzX2luX21hcmdpbkIjCiFfY29udmVydF9vb29fdGFyZ2V0X3RvX3BkZl90YXJnZXRCHQobX2V4cG9ydF9saW5rc19yZWxhdGl2ZV9mc3lzQhcKFV9leHBvcnRfaGlkZGVuX3NsaWRlc0ITChFfc2tpcF9lbXB0eV9wYWdlc0IVChNfc2luZ2xlX3BhZ2Vfc2hlZXRzQiIKIF9hZGRfb3JpZ2luYWxfZG9jdW1lbnRfYXNfc3RyZWFtQh0KG19sb3NzbGVzc19pbWFnZV9jb21wcmVzc2lvbkIKCghfcXVhbGl0eUIaChhfcmVkdWNlX2ltYWdlX3Jlc29sdXRpb25CFwoVX21heF9pbWFnZV9yZXNvbHV0aW9uIuUDChBQZGZPdXRwdXRPcHRpb25zEjwKBHBkZmEYASABKA4yKS5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5QZGZBRm9ybWF0SACIAQESEgoFcGRmdWEYAiABKAhIAYgBARIUCgdmbGF0dGVuGAMgASgISAKIAQESJAoNdXNlcl9wYXNzd29yZBgEIAEoCUIIukgFcgMYgAFIA4gBARIlCg5vd25lcl9wYXNzd29yZBgFIAEoCUIIukgFcgMYgAFIBIgBATrXAbpI0wEa0AEKIXBkZmFfaW5jb21wYXRpYmxlX3dpdGhfZW5jcnlwdGlvbhJLUERGL0EgZm9ybWF0IGlzIGluY29tcGF0aWJsZSB3aXRoIGVuY3J5cHRpb24gKHVzZXJfcGFzc3dvcmQvb3duZXJfcGFzc3dvcmQpGl4oIWhhcyh0aGlzLnBkZmEpIHx8IHRoaXMucGRmYSA9PSAwKSB8fCAoIWhhcyh0aGlzLnVzZXJfcGFzc3dvcmQpICYmICFoYXModGhpcy5vd25lcl9wYXNzd29yZCkpQgcKBV9wZGZhQggKBl9wZGZ1YUIKCghfZmxhdHRlbkIQCg5fdXNlcl9wYXNzd29yZEIRCg9fb3duZXJfcGFzc3dvcmQirgkKDkltYWdlT3BlcmF0aW9uEjwKBnJlc2l6ZRgBIAEoCzIqLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkltYWdlUmVzaXplSAASOAoEY3JvcBgCIAEoCzIoLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkltYWdlQ3JvcEgAEjwKBnJvdGF0ZRgDIAEoCzIqLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkltYWdlUm90YXRlSAASOAoEZmxpcBgEIAEoCzIoLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkltYWdlRmxpcEgAEjYKA3BhZBgFIAEoCzInLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkltYWdlUGFkSAASOAoEdHJpbRgGIAEoCzIoLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkltYWdlVHJpbUgAEkQKCnByb3BvcnRpb24YByABKAsyLi5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5JbWFnZVByb3BvcnRpb25IABI6CgVmb2NhbBgIIAEoCzIpLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkltYWdlRm9jYWxIABI8CgZhZGp1c3QYCSABKAsyKi5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5JbWFnZUFkanVzdEgAEjYKA2h1ZRgKIAEoCzInLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkltYWdlSHVlSAASNgoDcmdiGAsgASgLMicubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuSW1hZ2VSZ2JIABI4CgRibHVyGAwgASgLMigubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuSW1hZ2VCbHVySAASPgoHc2hhcnBlbhgNIAEoCzIrLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkltYWdlU2hhcnBlbkgAEkcKDHJvdW5kX2Nvcm5lchgOIAEoCzIvLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkltYWdlUm91bmRDb3JuZXJIABJCCgl3YXRlcm1hcmsYDyABKAsyLS5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5JbWFnZVdhdGVybWFya0gAEjgKBHRleHQYECABKAsyKC5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5JbWFnZVRleHRIABJDCgptYXhfZnJhbWVzGBEgASgLMi0ubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuSW1hZ2VNYXhGcmFtZXNIABI4CgRwYWdlGBIgASgLMigubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuSW1hZ2VQYWdlSAASNgoDZHBpGBMgASgLMicubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuSW1hZ2VEcGlIAEISCglvcGVyYXRpb24SBbpIAggBIu0BChVUcmFuc2Zvcm1JbWFnZVJlcXVlc3QSOwoFaW5wdXQYASABKAsyJC5tb2NoYWJ1Z2FwaXMuYWRhcHQuZ3JhcGguU2lnbmFsRGF0YUIGukgDyAEBEksKCm9wZXJhdGlvbnMYAiADKAsyLS5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5JbWFnZU9wZXJhdGlvbkIIukgFkgECEDISPwoGb3V0cHV0GB4gASgLMioubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuSW1hZ2VPdXRwdXRIAIgBAUIJCgdfb3V0cHV0Ik4KFlRyYW5zZm9ybUltYWdlUmVzcG9uc2USNAoGb3V0cHV0GAEgASgLMiQubW9jaGFidWdhcGlzLmFkYXB0LmdyYXBoLlNpZ25hbERhdGEinQMKC0ltYWdlUmVzaXplEh4KBXdpZHRoGAEgASgFQgq6SAcaBRiIJygASACIAQESHwoGaGVpZ2h0GAIgASgFQgq6SAcaBRiIJygASAGIAQESPAoEdHlwZRgDIAEoDjIpLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLlJlc2l6ZVR5cGVIAogBARIUCgdlbmxhcmdlGAQgASgISAOIAQESEwoGZXh0ZW5kGAUgASgISASIAQE6rgG6SKoBGqcBChFyZXF1aXJlX2RpbWVuc2lvbhJEYXQgbGVhc3Qgb25lIG9mIHdpZHRoIG9yIGhlaWdodCBtdXN0IGJlIHNwZWNpZmllZCBhbmQgZ3JlYXRlciB0aGFuIDAaTChoYXModGhpcy53aWR0aCkgJiYgdGhpcy53aWR0aCA+IDApIHx8IChoYXModGhpcy5oZWlnaHQpICYmIHRoaXMuaGVpZ2h0ID4gMClCCAoGX3dpZHRoQgkKB19oZWlnaHRCBwoFX3R5cGVCCgoIX2VubGFyZ2VCCQoHX2V4dGVuZCKdAgoJSW1hZ2VDcm9wEh4KBXdpZHRoGAEgASgFQgq6SAcaBRiIJygASACIAQESHwoGaGVpZ2h0GAIgASgFQgq6SAcaBRiIJygASAGIAQESPAoHZ3Jhdml0eRgDIAEoDjImLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkdyYXZpdHlIAogBARIqCghvZmZzZXRfeBgEIAEoBUITukgQGg4YkE4o8LH/////////AUgDiAEBEioKCG9mZnNldF95GAUgASgFQhO6SBAaDhiQTijwsf////////8BSASIAQFCCAoGX3dpZHRoQgkKB19oZWlnaHRCCgoIX2dyYXZpdHlCCwoJX29mZnNldF94QgsKCV9vZmZzZXRfeSJmCgtJbWFnZVJvdGF0ZRIjCgVhbmdsZRgBIAEoBUIPukgMGgowADBaMLQBMI4CSACIAQESGAoLYXV0b19yb3RhdGUYAiABKAhIAYgBAUIICgZfYW5nbGVCDgoMX2F1dG9fcm90YXRlIpICCglJbWFnZUZsaXASFwoKaG9yaXpvbnRhbBgBIAEoCEgAiAEBEhUKCHZlcnRpY2FsGAIgASgISAGIAQE6uAG6SLQBGrEBChZyZXF1aXJlX2ZsaXBfZGlyZWN0aW9uEjNhdCBsZWFzdCBvbmUgb2YgaG9yaXpvbnRhbCBvciB2ZXJ0aWNhbCBtdXN0IGJlIHRydWUaYihoYXModGhpcy5ob3Jpem9udGFsKSAmJiB0aGlzLmhvcml6b250YWwgPT0gdHJ1ZSkgfHwgKGhhcyh0aGlzLnZlcnRpY2FsKSAmJiB0aGlzLnZlcnRpY2FsID09IHRydWUpQg0KC19ob3Jpem9udGFsQgsKCV92ZXJ0aWNhbCKVAwoISW1hZ2VQYWQSGQoDdG9wGAEgASgFQge6SAQaAigASACIAQESGwoFcmlnaHQYAiABKAVCB7pIBBoCKABIAYgBARIcCgZib3R0b20YAyABKAVCB7pIBBoCKABIAogBARIaCgRsZWZ0GAQgASgFQge6SAQaAigASAOIAQE68AG6SOwBGukBCg9yZXF1aXJlX3BhZGRpbmcSP2F0IGxlYXN0IG9uZSBwYWRkaW5nIHZhbHVlIG11c3QgYmUgc3BlY2lmaWVkIGFuZCBncmVhdGVyIHRoYW4gMBqUAShoYXModGhpcy50b3ApICYmIHRoaXMudG9wID4gMCkgfHwgKGhhcyh0aGlzLnJpZ2h0KSAmJiB0aGlzLnJpZ2h0ID4gMCkgfHwgKGhhcyh0aGlzLmJvdHRvbSkgJiYgdGhpcy5ib3R0b20gPiAwKSB8fCAoaGFzKHRoaXMubGVmdCkgJiYgdGhpcy5sZWZ0ID4gMClCBgoEX3RvcEIICgZfcmlnaHRCCQoHX2JvdHRvbUIHCgVfbGVmdCLFAQoJSW1hZ2VUcmltEicKCXRocmVzaG9sZBgBIAEoAkIPukgMCgodAACAPy0AAAAASACIAQESKwoFY29sb3IYAiABKAlCF7pIFHISMhBeWzAtOWEtZkEtRl17Nn0kSAGIAQESFgoJZXF1YWxfaG9yGAMgASgISAKIAQESFgoJZXF1YWxfdmVyGAQgASgISAOIAQFCDAoKX3RocmVzaG9sZEIICgZfY29sb3JCDAoKX2VxdWFsX2hvckIMCgpfZXF1YWxfdmVyIs8DCgtJbWFnZUFkanVzdBIsCgpicmlnaHRuZXNzGAEgASgFQhO6SBAaDhj/ASiB/v////////8BSACIAQESJgoIY29udHJhc3QYAiABKAJCD7pIDAoKHQAAIEEtAAAAAEgBiAEBEigKCnNhdHVyYXRpb24YAyABKAJCD7pIDAoKHQAAIEEtAAAAAEgCiAEBEhYKCWdyYXlzY2FsZRgEIAEoCEgDiAEBOu4BukjqARrnAQoScmVxdWlyZV9hZGp1c3RtZW50ElphdCBsZWFzdCBvbmUgYWRqdXN0bWVudCAoYnJpZ2h0bmVzcywgY29udHJhc3QsIHNhdHVyYXRpb24sIG9yIGdyYXlzY2FsZSkgbXVzdCBiZSBzcGVjaWZpZWQadWhhcyh0aGlzLmJyaWdodG5lc3MpIHx8IGhhcyh0aGlzLmNvbnRyYXN0KSB8fCBoYXModGhpcy5zYXR1cmF0aW9uKSB8fCAoaGFzKHRoaXMuZ3JheXNjYWxlKSAmJiB0aGlzLmdyYXlzY2FsZSA9PSB0cnVlKUINCgtfYnJpZ2h0bmVzc0ILCglfY29udHJhc3RCDQoLX3NhdHVyYXRpb25CDAoKX2dyYXlzY2FsZSIrCglJbWFnZUJsdXISHgoFc2lnbWEYASABKAJCD7pIDAoKHQAAyEIlAAAAACIuCgxJbWFnZVNoYXJwZW4SHgoFc2lnbWEYASABKAJCD7pIDAoKHQAAyEIlAAAAACIuCghJbWFnZUh1ZRIiCgVhbmdsZRgBIAEoBUITukgQGg4YtAEozP7/////////ASJnCghJbWFnZVJnYhIdCgFyGAEgASgFQhK6SA8aDRhkKJz//////////wESHQoBZxgCIAEoBUISukgPGg0YZCic//////////8BEh0KAWIYAyABKAVCErpIDxoNGGQonP//////////ASKbAQoKSW1hZ2VGb2NhbBI8CgZyZWdpb24YASABKAsyKi5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5Gb2NhbFJlZ2lvbkgAEjoKBXBvaW50GAIgASgLMikubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuRm9jYWxQb2ludEgAQhMKCmZvY2FsX3R5cGUSBbpIAggBIkcKC0ZvY2FsUmVnaW9uEgwKBGxlZnQYASABKAUSCwoDdG9wGAIgASgFEg0KBXJpZ2h0GAMgASgFEg4KBmJvdHRvbRgEIAEoBSIiCgpGb2NhbFBvaW50EgkKAXgYASABKAUSCQoBeRgCIAEoBSJ/ChBJbWFnZVJvdW5kQ29ybmVyEhMKAnJ4GAEgASgFQge6SAQaAiAAEhgKAnJ5GAIgASgFQge6SAQaAiAASACIAQESKwoFY29sb3IYAyABKAlCF7pIFHISMhBeWzAtOWEtZkEtRl17Nn0kSAGIAQFCBQoDX3J5QggKBl9jb2xvciIxCg9JbWFnZVByb3BvcnRpb24SHgoKcGVyY2VudGFnZRgBIAEoBUIKukgHGgUY9AMoASK0BAoJSW1hZ2VUZXh0EhgKBHRleHQYASABKAlCCrpIB3IFEAEY6AcSEgoBeBgCIAEoCUIHukgEcgIQARISCgF5GAMgASgJQge6SARyAhABEhEKBGZvbnQYBCABKAlIAIgBARIrCgVjb2xvchgFIAEoCUIXukgUchIyEF5bMC05YS1mQS1GXXs2fSRIAYgBARIdCgVhbHBoYRgGIAEoBUIJukgGGgQYZCgASAKIAQESRQoKYmxlbmRfbW9kZRgHIAEoDjIsLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLlRleHRCbGVuZE1vZGVIA4gBARISCgV3aWR0aBgIIAEoCUgEiAEBEjwKBWFsaWduGAkgASgOMigubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuVGV4dEFsaWduSAWIAQESFAoHanVzdGlmeRgKIAEoCEgGiAEBEjoKBHdyYXAYCyABKA4yJy5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5UZXh0V3JhcEgHiAEBEhQKB3NwYWNpbmcYDCABKAVICIgBARIcCgNkcGkYDSABKAVCCrpIBxoFGOASKAFICYgBAUIHCgVfZm9udEIICgZfY29sb3JCCAoGX2FscGhhQg0KC19ibGVuZF9tb2RlQggKBl93aWR0aEIICgZfYWxpZ25CCgoIX2p1c3RpZnlCBwoFX3dyYXBCCgoIX3NwYWNpbmdCBgoEX2RwaSInCg5JbWFnZU1heEZyYW1lcxIVCgFuGAEgASgFQgq6SAcaBRjoBygBIiEKCUltYWdlUGFnZRIUCgNudW0YASABKAVCB7pIBBoCKAEiIwoISW1hZ2VEcGkSFwoDbnVtGAEgASgFQgq6SAcaBRjgEigBIugCCg5JbWFnZVdhdGVybWFyaxI7CgVpbWFnZRgBIAEoCzIkLm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC5TaWduYWxEYXRhQga6SAPIAQESPQoIcG9zaXRpb24YAiABKA4yJi5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5HcmF2aXR5SACIAQESKgoIb2Zmc2V0X3gYAyABKAVCE7pIEBoOGJBOKPCx/////////wFIAYgBARIqCghvZmZzZXRfeRgEIAEoBUITukgQGg4YkE4o8LH/////////AUgCiAEBEiUKB29wYWNpdHkYBSABKAJCD7pIDAoKHQAAgD8tAAAAAEgDiAEBEh4KBXNjYWxlGAYgASgCQgq6SAcKBSUAAAAASASIAQFCCwoJX3Bvc2l0aW9uQgsKCV9vZmZzZXRfeEILCglfb2Zmc2V0X3lCCgoIX29wYWNpdHlCCAoGX3NjYWxlIroECgtJbWFnZU91dHB1dBI/CgZmb3JtYXQYASABKA4yKi5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5JbWFnZUZvcm1hdEgAiAEBEh8KB3F1YWxpdHkYAiABKAVCCbpIBhoEGGQoAUgBiAEBEhsKDnN0cmlwX21ldGFkYXRhGAMgASgISAKIAQESMAoKYmFja2dyb3VuZBgEIAEoCUIXukgUchIyEF5bMC05YS1mQS1GXXs2fSRIA4gBARIuChBiYWNrZ3JvdW5kX2FscGhhGAUgASgCQg+6SAwKCh0AAIA/LQAAAABIBIgBARInCg9wbmdfY29tcHJlc3Npb24YBiABKAVCCbpIBhoEGAkoAEgFiAEBEhsKDnBuZ19pbnRlcmxhY2VkGAcgASgISAaIAQESHQoQanBlZ19wcm9ncmVzc2l2ZRgIIAEoCEgHiAEBEhoKDXdlYnBfbG9zc2xlc3MYCSABKAhICIgBARIfCgltYXhfYnl0ZXMYCiABKAVCB7pIBBoCIABICYgBAUIJCgdfZm9ybWF0QgoKCF9xdWFsaXR5QhEKD19zdHJpcF9tZXRhZGF0YUINCgtfYmFja2dyb3VuZEITChFfYmFja2dyb3VuZF9hbHBoYUISChBfcG5nX2NvbXByZXNzaW9uQhEKD19wbmdfaW50ZXJsYWNlZEITChFfanBlZ19wcm9ncmVzc2l2ZUIQCg5fd2VicF9sb3NzbGVzc0IMCgpfbWF4X2J5dGVzItgCChRNYW5pcHVsYXRlUGRmUmVxdWVzdBI4CgVtZXJnZRgBIAEoCzInLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLlBkZk1lcmdlSAASOAoFc3BsaXQYAiABKAsyJy5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5QZGZTcGxpdEgAEjwKB2VuY3J5cHQYAyABKAsyKS5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5QZGZFbmNyeXB0SAASPAoHY29udmVydBgEIAEoCzIpLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLlBkZkNvbnZlcnRIABI8CgdmbGF0dGVuGAUgASgLMikubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuUGRmRmxhdHRlbkgAQhIKCW9wZXJhdGlvbhIFukgCCAEiTgoVTWFuaXB1bGF0ZVBkZlJlc3BvbnNlEjUKB291dHB1dHMYASADKAsyJC5tb2NoYWJ1Z2FwaXMuYWRhcHQuZ3JhcGguU2lnbmFsRGF0YSKeBAoIUGRmTWVyZ2USPwoFZmlsZXMYASADKAsyJC5tb2NoYWJ1Z2FwaXMuYWRhcHQuZ3JhcGguU2lnbmFsRGF0YUIKukgHkgEECAIQZBI8CgRwZGZhGAIgASgOMikubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuUGRmQUZvcm1hdEgAiAEBEhIKBXBkZnVhGAMgASgISAGIAQESFAoHZmxhdHRlbhgEIAEoCEgCiAEBEiQKDXVzZXJfcGFzc3dvcmQYBSABKAlCCLpIBXIDGIABSAOIAQESJQoOb3duZXJfcGFzc3dvcmQYBiABKAlCCLpIBXIDGIABSASIAQE61wG6SNMBGtABCiFwZGZhX2luY29tcGF0aWJsZV93aXRoX2VuY3J5cHRpb24SS1BERi9BIGZvcm1hdCBpcyBpbmNvbXBhdGlibGUgd2l0aCBlbmNyeXB0aW9uICh1c2VyX3Bhc3N3b3JkL293bmVyX3Bhc3N3b3JkKRpeKCFoYXModGhpcy5wZGZhKSB8fCB0aGlzLnBkZmEgPT0gMCkgfHwgKCFoYXModGhpcy51c2VyX3Bhc3N3b3JkKSAmJiAhaGFzKHRoaXMub3duZXJfcGFzc3dvcmQpKUIHCgVfcGRmYUIICgZfcGRmdWFCCgoIX2ZsYXR0ZW5CEAoOX3VzZXJfcGFzc3dvcmRCEQoPX293bmVyX3Bhc3N3b3JkIpMFCghQZGZTcGxpdBI6CgRmaWxlGAEgASgLMiQubW9jaGFidWdhcGlzLmFkYXB0LmdyYXBoLlNpZ25hbERhdGFCBrpIA8gBARJACgRtb2RlGAIgASgOMigubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuU3BsaXRNb2RlQgi6SAWCAQIgABIYCgRzcGFuGAMgASgJQgq6SAdyBRABGOgHEhIKBXVuaWZ5GAQgASgISACIAQESPAoEcGRmYRgFIAEoDjIpLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLlBkZkFGb3JtYXRIAYgBARISCgVwZGZ1YRgGIAEoCEgCiAEBEhQKB2ZsYXR0ZW4YByABKAhIA4gBARIkCg11c2VyX3Bhc3N3b3JkGAggASgJQgi6SAVyAxiAAUgEiAEBEiUKDm93bmVyX3Bhc3N3b3JkGAkgASgJQgi6SAVyAxiAAUgFiAEBOtcBukjTARrQAQohcGRmYV9pbmNvbXBhdGlibGVfd2l0aF9lbmNyeXB0aW9uEktQREYvQSBmb3JtYXQgaXMgaW5jb21wYXRpYmxlIHdpdGggZW5jcnlwdGlvbiAodXNlcl9wYXNzd29yZC9vd25lcl9wYXNzd29yZCkaXighaGFzKHRoaXMucGRmYSkgfHwgdGhpcy5wZGZhID09IDApIHx8ICghaGFzKHRoaXMudXNlcl9wYXNzd29yZCkgJiYgIWhhcyh0aGlzLm93bmVyX3Bhc3N3b3JkKSlCCAoGX3VuaWZ5QgcKBV9wZGZhQggKBl9wZGZ1YUIKCghfZmxhdHRlbkIQCg5fdXNlcl9wYXNzd29yZEIRCg9fb3duZXJfcGFzc3dvcmQipQEKClBkZkVuY3J5cHQSOgoEZmlsZRgBIAEoCzIkLm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC5TaWduYWxEYXRhQga6SAPIAQESIQoNdXNlcl9wYXNzd29yZBgCIAEoCUIKukgHcgUQARiAARIlCg5vd25lcl9wYXNzd29yZBgDIAEoCUIIukgFcgMYgAFIAIgBAUIRCg9fb3duZXJfcGFzc3dvcmQizgIKClBkZkNvbnZlcnQSOgoEZmlsZRgBIAEoCzIkLm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC5TaWduYWxEYXRhQga6SAPIAQESPAoEcGRmYRgCIAEoDjIpLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLlBkZkFGb3JtYXRIAIgBARISCgVwZGZ1YRgDIAEoCEgBiAEBOp4BukiaARqXAQoZcmVxdWlyZV9jb252ZXJzaW9uX29wdGlvbhIvYXQgbGVhc3Qgb25lIG9mIHBkZmEgb3IgcGRmdWEgbXVzdCBiZSBzcGVjaWZpZWQaSWhhcyh0aGlzLnBkZmEpICYmIHRoaXMucGRmYSAhPSAwIHx8IGhhcyh0aGlzLnBkZnVhKSAmJiB0aGlzLnBkZnVhID09IHRydWVCBwoFX3BkZmFCCAoGX3BkZnVhIkgKClBkZkZsYXR0ZW4SOgoEZmlsZRgBIAEoCzIkLm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC5TaWduYWxEYXRhQga6SAPIAQEqdwoRRW11bGF0ZWRNZWRpYVR5cGUSIwofRU1VTEFURURfTUVESUFfVFlQRV9VTlNQRUNJRklFRBAAEh4KGkVNVUxBVEVEX01FRElBX1RZUEVfU0NSRUVOEAESHQoZRU1VTEFURURfTUVESUFfVFlQRV9QUklOVBACKmkKClBkZkFGb3JtYXQSHAoYUERGX0FfRk9STUFUX1VOU1BFQ0lGSUVEEAASEwoPUERGX0FfRk9STUFUXzFCEAESEwoPUERGX0FfRk9STUFUXzJCEAISEwoPUERGX0FfRk9STUFUXzNCEAMqnAEKClJlc2l6ZVR5cGUSGwoXUkVTSVpFX1RZUEVfVU5TUEVDSUZJRUQQABITCg9SRVNJWkVfVFlQRV9GSVQQARIUChBSRVNJWkVfVFlQRV9GSUxMEAISGQoVUkVTSVpFX1RZUEVfRklMTF9ET1dOEAMSFQoRUkVTSVpFX1RZUEVfRk9SQ0UQBBIUChBSRVNJWkVfVFlQRV9BVVRPEAUq8wEKB0dyYXZpdHkSFwoTR1JBVklUWV9VTlNQRUNJRklFRBAAEhIKDkdSQVZJVFlfQ0VOVEVSEAESEQoNR1JBVklUWV9OT1JUSBACEhEKDUdSQVZJVFlfU09VVEgQAxIQCgxHUkFWSVRZX0VBU1QQBBIQCgxHUkFWSVRZX1dFU1QQBRIWChJHUkFWSVRZX05PUlRIX0VBU1QQBhIWChJHUkFWSVRZX05PUlRIX1dFU1QQBxIWChJHUkFWSVRZX1NPVVRIX0VBU1QQCBIWChJHUkFWSVRZX1NPVVRIX1dFU1QQCRIRCg1HUkFWSVRZX1NNQVJUEAoqgAMKDVRleHRCbGVuZE1vZGUSHwobVEVYVF9CTEVORF9NT0RFX1VOU1BFQ0lGSUVEEAASHAoYVEVYVF9CTEVORF9NT0RFX01VTFRJUExZEAESGgoWVEVYVF9CTEVORF9NT0RFX1NDUkVFThACEhsKF1RFWFRfQkxFTkRfTU9ERV9PVkVSTEFZEAMSGgoWVEVYVF9CTEVORF9NT0RFX0RBUktFThAEEhsKF1RFWFRfQkxFTkRfTU9ERV9MSUdIVEVOEAUSHwobVEVYVF9CTEVORF9NT0RFX0NPTE9SX0RPREdFEAYSHgoaVEVYVF9CTEVORF9NT0RFX0NPTE9SX0JVUk4QBxIeChpURVhUX0JMRU5EX01PREVfSEFSRF9MSUdIVBAIEh4KGlRFWFRfQkxFTkRfTU9ERV9TT0ZUX0xJR0hUEAkSHgoaVEVYVF9CTEVORF9NT0RFX0RJRkZFUkVOQ0UQChIdChlURVhUX0JMRU5EX01PREVfRVhDTFVTSU9OEAsqVAoJVGV4dEFsaWduEhoKFlRFWFRfQUxJR05fVU5TUEVDSUZJRUQQABIVChFURVhUX0FMSUdOX0NFTlRFUhABEhQKEFRFWFRfQUxJR05fUklHSFQQAipmCghUZXh0V3JhcBIZChVURVhUX1dSQVBfVU5TUEVDSUZJRUQQABISCg5URVhUX1dSQVBfQ0hBUhABEhcKE1RFWFRfV1JBUF9XT1JEX0NIQVIQAhISCg5URVhUX1dSQVBfTk9ORRADKt8BCgtJbWFnZUZvcm1hdBIcChhJTUFHRV9GT1JNQVRfVU5TUEVDSUZJRUQQABIVChFJTUFHRV9GT1JNQVRfSlBFRxABEhQKEElNQUdFX0ZPUk1BVF9QTkcQAhIVChFJTUFHRV9GT1JNQVRfV0VCUBADEhUKEUlNQUdFX0ZPUk1BVF9BVklGEAQSFAoQSU1BR0VfRk9STUFUX0dJRhAFEhUKEUlNQUdFX0ZPUk1BVF9USUZGEAYSFAoQSU1BR0VfRk9STUFUX0JNUBAHEhQKEElNQUdFX0ZPUk1BVF9JQ08QCCpXCglTcGxpdE1vZGUSGgoWU1BMSVRfTU9ERV9VTlNQRUNJRklFRBAAEhgKFFNQTElUX01PREVfSU5URVJWQUxTEAESFAoQU1BMSVRfTU9ERV9QQUdFUxACMowDChBGaWxlRm9yZ2VTZXJ2aWNlEn0KDlJlbmRlckRvY3VtZW50EjQubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuUmVuZGVyRG9jdW1lbnRSZXF1ZXN0GjUubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuUmVuZGVyRG9jdW1lbnRSZXNwb25zZRJ9Cg5UcmFuc2Zvcm1JbWFnZRI0Lm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLlRyYW5zZm9ybUltYWdlUmVxdWVzdBo1Lm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLlRyYW5zZm9ybUltYWdlUmVzcG9uc2USegoNTWFuaXB1bGF0ZVBkZhIzLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLk1hbmlwdWxhdGVQZGZSZXF1ZXN0GjQubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuTWFuaXB1bGF0ZVBkZlJlc3BvbnNlYgZwcm90bzM",[m,H]),Ac=l(s,0),Rc=l(s,1),He=l(s,2),ve=l(s,3),ze=l(s,4),Ge=l(s,5),Le=l(s,6),se=l(s,7),Qe=l(s,8),Ne=l(s,9),Xc=l(s,10),Vc=l(s,11),Sc=l(s,12),Wc=l(s,13),Jc=l(s,14),Cc=l(s,15),Bc=l(s,16),Yc=l(s,17),Fc=l(s,18),xc=l(s,19),fc=l(s,20),Ec=l(s,21),Mc=l(s,22),Hc=l(s,23),vc=l(s,24),zc=l(s,25),Lc=l(s,26),Qc=l(s,27),Nc=l(s,28),kc=l(s,29),Kc=l(s,30),Uc=l(s,31),ke=l(s,32),wc=l(s,33),Dc=l(s,34),Ke=l(s,35),Ue=l(s,36),we=l(s,37),De=l(s,38),Te=l(s,39),Gt=(n=>(n[n.UNSPECIFIED=0]="UNSPECIFIED",n[n.SCREEN=1]="SCREEN",n[n.PRINT=2]="PRINT",n))(Gt||{}),Tc=z(s,0),ht=(a=>(a[a.PDF_A_FORMAT_UNSPECIFIED=0]="PDF_A_FORMAT_UNSPECIFIED",a[a.PDF_A_FORMAT_1B=1]="PDF_A_FORMAT_1B",a[a.PDF_A_FORMAT_2B=2]="PDF_A_FORMAT_2B",a[a.PDF_A_FORMAT_3B=3]="PDF_A_FORMAT_3B",a))(ht||{}),jc=z(s,1),It=(I=>(I[I.UNSPECIFIED=0]="UNSPECIFIED",I[I.FIT=1]="FIT",I[I.FILL=2]="FILL",I[I.FILL_DOWN=3]="FILL_DOWN",I[I.FORCE=4]="FORCE",I[I.AUTO=5]="AUTO",I))(It||{}),Pc=z(s,2),yt=(d=>(d[d.UNSPECIFIED=0]="UNSPECIFIED",d[d.CENTER=1]="CENTER",d[d.NORTH=2]="NORTH",d[d.SOUTH=3]="SOUTH",d[d.EAST=4]="EAST",d[d.WEST=5]="WEST",d[d.NORTH_EAST=6]="NORTH_EAST",d[d.NORTH_WEST=7]="NORTH_WEST",d[d.SOUTH_EAST=8]="SOUTH_EAST",d[d.SOUTH_WEST=9]="SOUTH_WEST",d[d.SMART=10]="SMART",d))(yt||{}),Oc=z(s,3),Zt=(u=>(u[u.UNSPECIFIED=0]="UNSPECIFIED",u[u.MULTIPLY=1]="MULTIPLY",u[u.SCREEN=2]="SCREEN",u[u.OVERLAY=3]="OVERLAY",u[u.DARKEN=4]="DARKEN",u[u.LIGHTEN=5]="LIGHTEN",u[u.COLOR_DODGE=6]="COLOR_DODGE",u[u.COLOR_BURN=7]="COLOR_BURN",u[u.HARD_LIGHT=8]="HARD_LIGHT",u[u.SOFT_LIGHT=9]="SOFT_LIGHT",u[u.DIFFERENCE=10]="DIFFERENCE",u[u.EXCLUSION=11]="EXCLUSION",u))(Zt||{}),_c=z(s,4),At=(n=>(n[n.UNSPECIFIED=0]="UNSPECIFIED",n[n.CENTER=1]="CENTER",n[n.RIGHT=2]="RIGHT",n))(At||{}),qc=z(s,5),Rt=(a=>(a[a.UNSPECIFIED=0]="UNSPECIFIED",a[a.CHAR=1]="CHAR",a[a.WORD_CHAR=2]="WORD_CHAR",a[a.NONE=3]="NONE",a))(Rt||{}),$c=z(s,6),Xt=(o=>(o[o.UNSPECIFIED=0]="UNSPECIFIED",o[o.JPEG=1]="JPEG",o[o.PNG=2]="PNG",o[o.WEBP=3]="WEBP",o[o.AVIF=4]="AVIF",o[o.GIF=5]="GIF",o[o.TIFF=6]="TIFF",o[o.BMP=7]="BMP",o[o.ICO=8]="ICO",o))(Xt||{}),ei=z(s,7),je=(n=>(n[n.UNSPECIFIED=0]="UNSPECIFIED",n[n.INTERVALS=1]="INTERVALS",n[n.PAGES=2]="PAGES",n))(je||{}),ni=z(s,8),Pe=bt(s,0);import{fileDesc as Vt,messageDesc as C,serviceDesc as St}from"@bufbuild/protobuf/codegenv2";import{file_google_protobuf_struct as Wt,file_google_protobuf_timestamp as Jt}from"@bufbuild/protobuf/wkt";var W=Vt("CjJtb2NoYWJ1Z2FwaXMvYWRhcHQvcnVudGltZS92MS9wbHVnaW5fc2VydmljZS5wcm90bxIdbW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEiGgoYR2V0U3lzdGVtU2VydmljZXNSZXF1ZXN0IsUBChlHZXRTeXN0ZW1TZXJ2aWNlc1Jlc3BvbnNlEm0KE2NvbmZpZ3VyZWRfc2VydmljZXMYASADKAsyUC5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5HZXRTeXN0ZW1TZXJ2aWNlc1Jlc3BvbnNlLkNvbmZpZ3VyZWRTZXJ2aWNlc0VudHJ5GjkKF0NvbmZpZ3VyZWRTZXJ2aWNlc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCDoCOAEiMgoQQXV0aG9yaXplUmVxdWVzdBIeCgxhY2Nlc3NfdG9rZW4YASABKAlCCLpIBXIDGJBOIhMKEUF1dGhvcml6ZVJlc3BvbnNlIoABCh5CYXRjaEdldFN5c3RlbVZhcmlhYmxlc1JlcXVlc3QSXgoFbmFtZXMYASADKAlCT7pITJIBSQgBEGQYASJBcj8QARhkMjleW18kYS16QS1aXVtfJGEtekEtWjAtOV0qKD86XC5bXyRhLXpBLVpdW18kYS16QS1aMC05XSopKiQiwQEKH0JhdGNoR2V0U3lzdGVtVmFyaWFibGVzUmVzcG9uc2USWAoFaXRlbXMYASADKAsySS5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5CYXRjaEdldFN5c3RlbVZhcmlhYmxlc1Jlc3BvbnNlLkl0ZW1zRW50cnkaRAoKSXRlbXNFbnRyeRILCgNrZXkYASABKAkSJQoFdmFsdWUYAiABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWU6AjgBIn4KHEJhdGNoR2V0VXNlclZhcmlhYmxlc1JlcXVlc3QSXgoFbmFtZXMYASADKAlCT7pITJIBSQgBEGQYASJBcj8QARhkMjleW18kYS16QS1aXVtfJGEtekEtWjAtOV0qKD86XC5bXyRhLXpBLVpdW18kYS16QS1aMC05XSopKiQivQEKHUJhdGNoR2V0VXNlclZhcmlhYmxlc1Jlc3BvbnNlElYKBWl0ZW1zGAEgAygLMkcubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuQmF0Y2hHZXRVc2VyVmFyaWFibGVzUmVzcG9uc2UuSXRlbXNFbnRyeRpECgpJdGVtc0VudHJ5EgsKA2tleRgBIAEoCRIlCgV2YWx1ZRgCIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5WYWx1ZToCOAEiewoZQmF0Y2hHZXRVc2VyVG9rZW5zUmVxdWVzdBJeCgVuYW1lcxgBIAMoCUJPukhMkgFJCAEQZBgBIkFyPxABGGQyOV5bXyRhLXpBLVpdW18kYS16QS1aMC05XSooPzpcLltfJGEtekEtWl1bXyRhLXpBLVowLTldKikqJCLFAQoaQmF0Y2hHZXRVc2VyVG9rZW5zUmVzcG9uc2USUwoFaXRlbXMYASADKAsyRC5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5CYXRjaEdldFVzZXJUb2tlbnNSZXNwb25zZS5JdGVtc0VudHJ5GlIKCkl0ZW1zRW50cnkSCwoDa2V5GAEgASgJEjMKBXZhbHVlGAIgASgLMiQubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuVG9rZW46AjgBIn0KG0JhdGNoR2V0U3lzdGVtVG9rZW5zUmVxdWVzdBJeCgVuYW1lcxgBIAMoCUJPukhMkgFJCAEQZBgBIkFyPxABGGQyOV5bXyRhLXpBLVpdW18kYS16QS1aMC05XSooPzpcLltfJGEtekEtWl1bXyRhLXpBLVowLTldKikqJCLJAQocQmF0Y2hHZXRTeXN0ZW1Ub2tlbnNSZXNwb25zZRJVCgVpdGVtcxgBIAMoCzJGLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkJhdGNoR2V0U3lzdGVtVG9rZW5zUmVzcG9uc2UuSXRlbXNFbnRyeRpSCgpJdGVtc0VudHJ5EgsKA2tleRgBIAEoCRIzCgV2YWx1ZRgCIAEoCzIkLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLlRva2VuOgI4ASJfCgVUb2tlbhIMCgRuYW1lGAEgASgJEg0KBXRva2VuGAIgASgJEgwKBHR5cGUYAyABKAkSKwoHZXhwaXJlcxgEIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAy1gYKDVBsdWdpblNlcnZpY2USbgoJQXV0aG9yaXplEi8ubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuQXV0aG9yaXplUmVxdWVzdBowLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkF1dGhvcml6ZVJlc3BvbnNlEoYBChFHZXRTeXN0ZW1TZXJ2aWNlcxI3Lm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkdldFN5c3RlbVNlcnZpY2VzUmVxdWVzdBo4Lm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkdldFN5c3RlbVNlcnZpY2VzUmVzcG9uc2USmAEKF0JhdGNoR2V0U3lzdGVtVmFyaWFibGVzEj0ubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuQmF0Y2hHZXRTeXN0ZW1WYXJpYWJsZXNSZXF1ZXN0Gj4ubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuQmF0Y2hHZXRTeXN0ZW1WYXJpYWJsZXNSZXNwb25zZRKSAQoVQmF0Y2hHZXRVc2VyVmFyaWFibGVzEjsubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuQmF0Y2hHZXRVc2VyVmFyaWFibGVzUmVxdWVzdBo8Lm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkJhdGNoR2V0VXNlclZhcmlhYmxlc1Jlc3BvbnNlEokBChJCYXRjaEdldFVzZXJUb2tlbnMSOC5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5CYXRjaEdldFVzZXJUb2tlbnNSZXF1ZXN0GjkubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuQmF0Y2hHZXRVc2VyVG9rZW5zUmVzcG9uc2USjwEKFEJhdGNoR2V0U3lzdGVtVG9rZW5zEjoubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuQmF0Y2hHZXRTeXN0ZW1Ub2tlbnNSZXF1ZXN0GjsubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuQmF0Y2hHZXRTeXN0ZW1Ub2tlbnNSZXNwb25zZWIGcHJvdG8z",[m,Wt,Jt]),ci=C(W,0),ii=C(W,1),gi=C(W,2),di=C(W,3),li=C(W,4),ri=C(W,5),mi=C(W,6),ui=C(W,7),pi=C(W,8),bi=C(W,9),Gi=C(W,10),hi=C(W,11),Ii=C(W,12),Oe=St(W,0);import{Code as J,ConnectError as Y,createContextValues as _e}from"@connectrpc/connect";import{compressedFlag as qe,createClientMethodSerializers as $e,createEnvelopeReadableStream as he,createMethodUrl as en,encodeEnvelope as nn,runStreamingCall as Ct,runUnaryCall as Bt}from"@connectrpc/connect/protocol";import{headerGrpcStatus as tn,requestHeader as an,trailerFlag as Ie,trailerParse as sn,validateResponse as on,validateTrailer as cn}from"@connectrpc/connect/protocol-grpc-web";function j(p){return{async unary(e,t,n,a,i,I){let{serialize:b,parse:ne}=$e(e,!0);return Bt({interceptors:p.interceptors,signal:t,timeoutMs:n,req:{stream:!1,service:e.parent,method:e,requestMethod:"POST",url:en("https://runtimeapi/",e),header:an(!0,n,a,!1),contextValues:I??_e(),message:i},next:async o=>{let F=await p.fetcher.fetch(o.url,{method:o.requestMethod,headers:o.header,signal:o.signal,body:nn(0,b(o.message))}),{headerError:d}=on(F.status,F.headers);if(!F.body)throw d!==void 0?d:new Y("missing response body",J.Internal);let u=he(F.body).getReader(),R,L;for(;;){let Q=await u.read();if(Q.done)break;let{flags:K,data:N}=Q.value;if((K&qe)===qe)throw new Y("received compressed data, which is unsupported",J.Internal);if(K===Ie){if(R!==void 0)throw new Y("extra trailer",J.Internal);R=sn(N);continue}if(L!==void 0)throw new Y("extra message",J.Unimplemented);L=ne(N)}if(R===void 0)throw d!==void 0?d:new Y("missing trailer",F.headers.has(tn)?J.Unimplemented:J.Unknown);if(cn(R,F.headers),L===void 0)throw new Y("missing message",R.has(tn)?J.Unimplemented:J.Unknown);return{stream:!1,service:e.parent,method:e,header:F.headers,message:L,trailer:R}}})},async stream(e,t,n,a,i,I){let{serialize:b,parse:ne}=$e(e,!0);async function o(d){let{value:u,done:R}=await d[Symbol.asyncIterator]().next();if(R)throw new Y("missing request message",J.InvalidArgument);return nn(0,b(u))}async function*F(d,u,R,L,Q){if(u){if(!(await he(d).getReader().read()).done)throw new Y("extra data for trailers-only",J.Internal);return}let K=he(d).getReader(),N=!1;for(;;){let ge=await K.read();if(ge.done)break;let{flags:ln,data:Ve}=ge.value;if((ln&Ie)===Ie){if(N)throw new Y("extra trailer",J.Internal);N=!0;let Se=sn(Ve);cn(Se,L),Se.forEach((rn,mn)=>R.set(mn,rn));continue}if(N)throw new Y("extra message after trailer",J.Internal);yield ne(Ve)}if("throwIfAborted"in Q&&Q.throwIfAborted?.(),!N)throw new Y("missing trailer",J.Internal)}return Ct({interceptors:p.interceptors,signal:t,timeoutMs:n,req:{stream:!0,service:e.parent,method:e,requestMethod:"POST",url:en("https://runtimeapi/",e),header:an(!0,n,a,!1),contextValues:I??_e(),message:i},next:async d=>{let u=await o(d.message),R=await p.fetcher.fetch(d.url,{method:d.requestMethod,headers:d.header,signal:d.signal,body:u}),{foundStatus:L,headerError:Q}=on(R.status,R.headers);if(Q)throw Q;if(!R.body)throw new Y("missing response body",J.Internal);let K=new Headers;return{...d,header:R.headers,trailer:K,message:F(R.body,L,K,R.headers,d.signal)}}})}}}import{fileDesc as Yt,messageDesc as f}from"@bufbuild/protobuf/codegenv2";var E=Yt("Cixtb2NoYWJ1Z2FwaXMvYWRhcHQvcnVudGltZS92MS9pbmNvbWluZy5wcm90bxIdbW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEiOgoOSG9zdGluZ0RldGFpbHMSGAoLcHVibGljX2hvc3QYASABKAlIAIgBAUIOCgxfcHVibGljX2hvc3QiZgoVU3RhcnRFeGVjdXRpb25SZXF1ZXN0EhAKCHJlY2VpdmVyGAEgASgJEjsKBGhvc3QYAiABKAsyLS5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5Ib3N0aW5nRGV0YWlscyIYChZTdGFydEV4ZWN1dGlvblJlc3BvbnNlIlMKFFN0b3BFeGVjdXRpb25SZXF1ZXN0EjsKBGhvc3QYASABKAsyLS5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5Ib3N0aW5nRGV0YWlscyIXChVTdG9wRXhlY3V0aW9uUmVzcG9uc2UiUQoSQ3JvblRyaWdnZXJSZXF1ZXN0EjsKBGhvc3QYASABKAsyLS5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5Ib3N0aW5nRGV0YWlscyIVChNDcm9uVHJpZ2dlclJlc3BvbnNlIsgBCg5FeGNoYW5nZVJlc3VsdBITCgt0cmFuc21pdHRlchgBIAEoCRJLCgdzaWduYWxzGAIgAygLMjoubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuRXhjaGFuZ2VSZXN1bHQuU2lnbmFsc0VudHJ5GlQKDFNpZ25hbHNFbnRyeRILCgNrZXkYASABKAkSMwoFdmFsdWUYAiABKAsyJC5tb2NoYWJ1Z2FwaXMuYWRhcHQuZ3JhcGguU2lnbmFsRGF0YToCOAEi2AEKFUV4Y2hhbmdlUmVzdWx0UmVxdWVzdBJDCglvcGVyYXRpb24YASABKAsyMC5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5FeGNoYW5nZU9wZXJhdGlvbhI9CgZyZXN1bHQYAiABKAsyLS5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5FeGNoYW5nZVJlc3VsdBI7CgRob3N0GAMgASgLMi0ubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuSG9zdGluZ0RldGFpbHMiGAoWRXhjaGFuZ2VSZXN1bHRSZXNwb25zZWIGcHJvdG8z",[H,G]),Ji=f(E,0),Ci=f(E,1),Bi=f(E,2),Yi=f(E,3),Fi=f(E,4),xi=f(E,5),fi=f(E,6),Ei=f(E,7),Mi=f(E,8),Hi=f(E,9);var xt={config:"config",metadata:"metadata",configuredServices:"configured_services"};function ce(p){return xt[p]??p}function B(p){if(p==null)return p;if(Array.isArray(p))return p.map(B);if(typeof p!="object")return p;let e={};for(let[t,n]of Object.entries(p))n!==void 0&&(e[t]=B(n));return e}var ft=[r.Unavailable,r.Internal,r.Aborted,r.ResourceExhausted],$=p=>async e=>{for(let t=0;;t++)try{return await p(e)}catch(n){if(t>=3||n instanceof A&&!ft.includes(n.code))throw n;let a=Math.min(500*(1<<t),5e3);await new Promise(i=>setTimeout(i,Math.random()*a))}},ie=class{env;pluginService;pluginToken;fileforge;constructor(e,t){this.env=e,this.pluginToken=t,this.pluginService=q(Oe,j({fetcher:this.env.plugin,interceptors:[$,n=>async a=>(a.header.set("Authorization",`Bearer ${this.pluginToken}`),await n(a))]})),this.fileforge=q(Pe,j({fetcher:this.env.fileforge,interceptors:[$,n=>async a=>(a.header.set("Authorization",`Bearer ${this.pluginToken}`),await n(a))]}))}async getSystemVariable(e){let n=(await this.pluginService.batchGetSystemVariables({names:[e]})).items[e];return n?M(oe,n):void 0}async getSystemVariables(...e){let t=await this.pluginService.batchGetSystemVariables({names:e}),n={};for(let[a,i]of Object.entries(t.items))n[a]=M(oe,i);return n}async getUserVariable(e){let n=(await this.pluginService.batchGetUserVariables({names:[e]})).items[e];return n?M(oe,n):void 0}async getUserVariables(...e){let t=await this.pluginService.batchGetUserVariables({names:e}),n={};for(let[a,i]of Object.entries(t.items))n[a]=M(oe,i);return n}async getUserToken(e){return(await this.pluginService.batchGetUserTokens({names:[e]})).items[e]}async getUserTokens(...e){return(await this.pluginService.batchGetUserTokens({names:e})).items}async getSystemToken(e){return(await this.pluginService.batchGetSystemTokens({names:[e]})).items[e]}async getSystemTokens(...e){return(await this.pluginService.batchGetSystemTokens({names:e})).items}userHttpProxy(e){return(t,n)=>{let a=new Request(t,n);return a.headers.set("X-Mochabug-Adapt-Plugin-HttpProxy-Token",`Bearer ${this.pluginToken}`),a.headers.set("X-Mochabug-Adapt-Plugin-HttpProxy-Path",`user:${e}`),a.headers.set("Host",new URL(a.url).host),this.env.httpproxy.fetch(a)}}systemHttpProxy(e){return(t,n)=>{let a=new Request(t,n);return a.headers.set("X-Mochabug-Adapt-Plugin-HttpProxy-Token",`Bearer ${this.pluginToken}`),a.headers.set("X-Mochabug-Adapt-Plugin-HttpProxy-Path",`system:${e}`),a.headers.set("Host",new URL(a.url).host),this.env.httpproxy.fetch(a)}}async authorize(e){await this.pluginService.authorize({accessToken:e})}async getSystemServices(){return(await this.pluginService.getSystemServices({})).configuredServices}async readFile(e){let t=new URL("https://runtimeapi");t.pathname=e;let n=await this.env.assets.fetch(t,{method:"GET"});if(!n.ok)throw dn(n.status);let a=n.headers.get("content-type");if(!a||!a.toLowerCase().includes("application/octet-stream"))throw new A("Invalid file. Are you reading a directory?",r.InvalidArgument);return{content:n.body,mime:a}}async readDirectory(e){let t=new URL("https://runtimeapi");t.pathname=e;let n=await this.env.assets.fetch(t,{method:"GET"});if(!n.ok)throw dn(n.status);let a=n.headers.get("content-type");if(!a||!a.toLowerCase().includes("application/json"))throw new A("Invalid directory. Are you reading a file?",r.InvalidArgument);return await n.json()}createSignalData(e){return h(D,{filename:e.filename,mimeType:"application/octet-stream",data:e.data})}extractBinaryFile(e){return{filename:e.filename??"output",data:e.data}}async htmlToPdf(e){let t=await this.fileforge.renderDocument({conversion:{case:"htmlToPdf",value:h(He,{indexHtml:e.indexHtml,headerHtml:e.headerHtml,footerHtml:e.footerHtml,assets:e.assets?.map(n=>this.createSignalData(n))??[],render:e.render?x(Ge,B(e.render)):void 0,output:e.output?x(se,B(e.output)):void 0})}});return this.extractBinaryFile(t.output)}async markdownToPdf(e){let t=await this.fileforge.renderDocument({conversion:{case:"markdownToPdf",value:h(ve,{wrapperHtml:e.wrapperHtml,markdownFiles:e.markdownFiles.map(n=>this.createSignalData(n)),headerHtml:e.headerHtml,footerHtml:e.footerHtml,assets:e.assets?.map(n=>this.createSignalData(n))??[],render:e.render?x(Ge,B(e.render)):void 0,output:e.output?x(se,B(e.output)):void 0})}});return this.extractBinaryFile(t.output)}async officeToPdf(e){let t=await this.fileforge.renderDocument({conversion:{case:"officeToPdf",value:h(ze,{document:this.createSignalData(e.document),render:e.render?x(Le,B(e.render)):void 0,output:e.output?x(se,B(e.output)):void 0})}});return this.extractBinaryFile(t.output)}async transformImage(e){let t=await this.fileforge.transformImage(h(Ne,{input:this.createSignalData(e.input),operations:e.operations?.map(n=>x(Qe,B(n)))??[],output:e.output?x(ke,B(e.output)):void 0}));return this.extractBinaryFile(t.output)}async mergePdfs(e){let t=await this.fileforge.manipulatePdf({operation:{case:"merge",value:h(Ke,{files:e.files.map(n=>this.createSignalData(n)),pdfa:e.pdfa,pdfua:e.pdfua,flatten:e.flatten,userPassword:e.userPassword,ownerPassword:e.ownerPassword})}});return this.extractBinaryFile(t.outputs[0])}async splitPdf(e){return(await this.fileforge.manipulatePdf({operation:{case:"split",value:h(Ue,{file:this.createSignalData(e.file),mode:e.mode==="intervals"?1:2,span:e.span,unify:e.unify,pdfa:e.pdfa,pdfua:e.pdfua,flatten:e.flatten,userPassword:e.userPassword,ownerPassword:e.ownerPassword})}})).outputs.map(n=>this.extractBinaryFile(n))}async encryptPdf(e){let t=await this.fileforge.manipulatePdf({operation:{case:"encrypt",value:h(we,{file:this.createSignalData(e.file),userPassword:e.userPassword,ownerPassword:e.ownerPassword})}});return this.extractBinaryFile(t.outputs[0])}async convertPdf(e){let t=await this.fileforge.manipulatePdf({operation:{case:"convert",value:h(De,{file:this.createSignalData(e.file),pdfa:e.pdfa,pdfua:e.pdfua})}});return this.extractBinaryFile(t.outputs[0])}async flattenPdf(e){let t=await this.fileforge.manipulatePdf({operation:{case:"flatten",value:h(Te,{file:this.createSignalData(e.file)})}});return this.extractBinaryFile(t.outputs[0])}},ye=class{result;constructor(e){this.result=e}get(e){let t=this.result[e];if(t)return{value:JSON.parse(new TextDecoder().decode(t.value)),ttl:t.metadata.ttl,lastModified:k(t.metadata.lastModified),etag:t.metadata.etag}}getBinary(e){let t=this.result[e];if(t)return{ttl:t.metadata.ttl,value:t.value,lastModified:k(t.metadata.lastModified),etag:t.metadata.etag}}},Ze=class{ops=[];insert(e,t,n){return this.ops.push(h(ae,{operation:{case:"insert",value:{key:e,value:{value:t instanceof Uint8Array?t:new TextEncoder().encode(JSON.stringify(t)),ttl:n}}}})),this}delete(e){return this.ops.push(h(ae,{operation:{case:"delete",value:{key:e}}})),this}rangeDelete(e,t,n,a){return this.ops.push(h(ae,{operation:{case:"rangeDelete",value:{start:e,end:t,startInclusive:n,endInclusive:a}}})),this}build(){return this.ops}},ee=class{service;namespace;constructor(e,t){this.service=e,this.namespace=Ft(Be,t)}async insert(e,t,n,a){let i;a&&(i=h(pe,{}),a.failIfExists?i.failIfExists=!0:(a.etagEquals&&(i.etag=a.etagEquals),a.timestampEquals?i.timestampCondition={case:"lastModifiedEquals",value:P(a.timestampEquals)}:a.timestampRange&&(i.timestampCondition={case:"lastModifiedRange",value:h(ue,{start:a.timestampRange.start?P(a.timestampRange.start):void 0,end:a.timestampRange.end?P(a.timestampRange.end):void 0,startInclusive:a.timestampRange.startInclusive,endInclusive:a.timestampRange.endInclusive})})));let I=await this.service.writeStore({operation:{operation:{case:"insert",value:{key:e,value:{value:t instanceof Uint8Array?t:new TextEncoder().encode(JSON.stringify(t)),ttl:n},precondition:i}}},namespace:this.namespace});return{ttl:I.metadata.ttl,lastModified:k(I.metadata.lastModified),etag:I.metadata.etag}}async delete(e,t){let n;t&&(n=h(Ce,{}),t.mustExists?n.mustExists=!0:(t.etagEquals&&(n.etag=t.etagEquals),t.timestampEquals?n.timestampCondition={case:"lastModifiedEquals",value:P(t.timestampEquals)}:t.timestampRange&&(n.timestampCondition={case:"lastModifiedRange",value:h(ue,{start:t.timestampRange.start?P(t.timestampRange.start):void 0,end:t.timestampRange.end?P(t.timestampRange.end):void 0,startInclusive:t.timestampRange.startInclusive,endInclusive:t.timestampRange.endInclusive})}))),await this.service.writeStore({operation:{operation:{case:"delete",value:{key:e,precondition:n}}},namespace:this.namespace})}async rangeDelete(e,t,n,a){await this.service.batchWriteStore({namespace:this.namespace,operations:[{operation:{case:"rangeDelete",value:{start:e,end:t,startInclusive:n,endInclusive:a}}}]})}async get(e){let n=(await this.service.batchReadStore({keys:[e],namespace:this.namespace})).items[e];if(n)return{data:JSON.parse(new TextDecoder().decode(n.value)),ttl:n.metadata.ttl,etag:n.metadata.etag,lastModified:k(n.metadata.lastModified)}}async getBinary(e){let n=(await this.service.batchReadStore({keys:[e],namespace:this.namespace})).items[e];if(n)return{data:n.value,ttl:n.metadata.ttl,etag:n.metadata.etag,lastModified:k(n.metadata.lastModified)}}async selectRange(e){let t=await this.service.selectStore({namespace:this.namespace,operation:e});return{nextToken:t.nextToken,items:Object.entries(t.items).sort(([n],[a])=>n.localeCompare(a)).map(([n,a])=>({key:n,value:JSON.parse(new TextDecoder().decode(a.value)),ttl:a.metadata.ttl,etag:a.metadata.etag,lastModified:k(a.metadata.lastModified)}))}}async selectRangeBinary(e){let t=await this.service.selectStore({namespace:this.namespace,operation:e});return{nextToken:t.nextToken,items:Object.values(t.items).map(n=>({value:n.value,ttl:n.metadata.ttl,etag:n.metadata.etag,lastModified:k(n.metadata.lastModified)}))}}async writeBatch(e){let t=await this.service.batchWriteStore({namespace:this.namespace,operations:e}),n={};for(let[a,i]of Object.entries(t.metadata))n[a]={ttl:i.ttl,lastModified:k(i.lastModified),etag:i.etag};return n}async readBatch(e){let t=await this.service.batchReadStore({namespace:this.namespace,keys:e});return new ye(t.items)}async acquire(e,t){try{await this.service.writeStore({namespace:this.namespace,operation:{operation:{case:"insert",value:{key:e,value:{value:new Uint8Array([1]),ttl:t??5},precondition:h(pe,{failIfExists:!0})}}}})}catch(n){if(n instanceof A&&n.code===r.FailedPrecondition)return!1;throw n}return!0}async release(e){await this.writeBatch(new Ze().delete(e).build())}async lock(e,t,n){let a=n?.maxRetries??5,i=n?.initialDelay??50,I=n?.maxDelay??2e3;for(let b=0;b<a;b++)if(await this.acquire(e))try{return await t()}finally{await this.release(e)}else if(b<a-1){let o=Math.min(i*2**b,I);console.log(`Acquisition failed for key: ${e}. Delaying for ${o}ms`),await new Promise(F=>setTimeout(F,o))}throw new Error("Failed to acquire lock after maximum retries")}},Ae=class extends ie{executor;constructor(e,t){super(e,t),this.executor=q(be,j({fetcher:e.executor,interceptors:[$,n=>async a=>(a.header.set("Authorization",`Bearer ${t}`),await n(a))]}))}async getConfig(...e){let t=await this.executor.getVertexConfig({fieldMask:e.length>0?h(_,{paths:e.map(ce)}):void 0}),n={},a=e.length>0?e:["config","metadata","configuredServices"];if(a.includes("metadata")&&(n.metadata=t.metadata?M(w,t.metadata):void 0),a.includes("configuredServices")&&(n.configuredServices=t.configuredServices||{}),a.includes("config"))if(t.config&&t.config.length>0)try{n.config=JSON.parse(new TextDecoder().decode(t.config))}catch{n.config=void 0}else n.config=void 0;return n}async getConfigBinary(...e){let t=await this.executor.getVertexConfig({fieldMask:e.length>0?h(_,{paths:e.map(ce)}):void 0}),n={},a=e.length>0?e:["config","metadata","configuredServices"];return a.includes("metadata")&&(n.metadata=t.metadata?M(w,t.metadata):void 0),a.includes("configuredServices")&&(n.configuredServices=t.configuredServices||{}),a.includes("config")&&(n.config=t.config),n}getLocalStore(e){return new ee(this.executor,e==="vertex"?"NAMESPACE_VERTEX":"NAMESPACE_PLUGIN")}getSessionApi(e){return new Xe(this.env,this.pluginToken,e)}},Re=class extends Ae{sessionAuthHeader;constructor(e,t,n){super(e,t),this.sessionAuthHeader=n,this.executor=q(be,j({fetcher:e.executor,interceptors:[$,a=>async i=>(i.header.set("Authorization",n),await a(i))]}))}getAuthHeader(){return this.sessionAuthHeader}getSessionStore(e){return new ee(this.executor,e==="vertex"?"NAMESPACE_VERTEX_INSTANCE":"NAMESPACE_PLUGIN_INSTANCE")}},Xe=class extends Re{constructor(e,t,n){super(e,t,n)}async listSignals(e){let t=await this.executor.listActiveSignals({pageSize:e?.pageSize,orderDescending:e?.orderDescending});return{signals:Object.fromEntries(Object.entries(t.signals).map(([n,a])=>[n,JSON.parse(new TextDecoder().decode(a.data))])),receiver:t.receiver,cursor:t.nextCursor}}async listSignalsBinary(e){let t=await this.executor.listActiveSignals({pageSize:e?.pageSize,orderDescending:e?.orderDescending});return{signals:t.signals,receiver:t.receiver,cursor:t.nextCursor}}async continueListSignals(e){let t=await this.executor.listActiveSignals({cursor:e});return{signals:Object.fromEntries(Object.entries(t.signals).map(([n,a])=>[n,JSON.parse(new TextDecoder().decode(a.data))])),receiver:t.receiver,cursor:t.nextCursor}}async continueListSignalsBinary(e){let t=await this.executor.listActiveSignals({cursor:e});return{signals:t.signals,receiver:t.receiver,cursor:t.nextCursor}}async getSignal(e){let n=(await this.executor.batchGetActiveSignals({names:[e]})).items[e];return n?JSON.parse(new TextDecoder().decode(n.data)):void 0}async getSignalBinary(e){return(await this.executor.batchGetActiveSignals({names:[e]})).items[e]}async getSignals(...e){if(e.length===0)return{};let t=await this.executor.batchGetActiveSignals({names:e});if(Object.keys(t.items).length===0)return{};let n={};for(let[a,i]of Object.entries(t.items))n[a]=JSON.parse(new TextDecoder().decode(i.data));return n}async getSignalsBinary(...e){return e.length===0?{}:(await this.executor.batchGetActiveSignals({names:e})).items}async send(e,t){await this.executor.send({transmitter:e,signals:t?Object.fromEntries(Object.entries(t).map(([n,a])=>a?.data instanceof Uint8Array&&typeof a?.mimeType=="string"&&a.mimeType?[n,h(D,{data:a.data,mimeType:a.mimeType,filename:a.filename})]:[n,h(D,{data:new TextEncoder().encode(JSON.stringify(a)),mimeType:"application/json"})])):{}})}async dispatchExchange(e,t,n){let a={name:e,receiver:t,signals:n?Object.fromEntries(Object.entries(n).map(([I,b])=>b?.data instanceof Uint8Array&&typeof b?.mimeType=="string"&&b.mimeType?[I,h(D,{data:b.data,mimeType:b.mimeType,filename:b.filename})]:[I,h(D,{data:new TextEncoder().encode(JSON.stringify(b)),mimeType:"application/json"})])):{}};return(await this.executor.dispatchExchange(a,{headers:{"x-idempotency-key":crypto.randomUUID()}})).operation}async getExchange(e){let t=await this.executor.getExchangeOperation({id:e});if(!t.item)throw new A("Exchange operation not found",r.NotFound);return t.item}async cancelExchange(e){await this.executor.cancelExchangeOperation({id:e})}},gn=class extends ie{configurator;constructor(e,t){super(e,t),this.configurator=q(Fe,j({fetcher:e.configurator,interceptors:[$,n=>async a=>(a.header.set("Authorization",`Bearer ${t}`),await n(a))]}))}async getConfig(...e){let t=await this.configurator.getVertexConfig({fieldMask:e.length>0?h(_,{paths:e.map(ce)}):void 0}),n={},a=e.length>0?e:["config","metadata","configuredServices"];if(a.includes("metadata")&&(n.metadata=t.metadata?M(w,t.metadata):void 0),a.includes("configuredServices")&&(n.configuredServices=t.configuredServices||{}),a.includes("config"))if(t.config&&t.config.length>0)try{n.config=JSON.parse(new TextDecoder().decode(t.config))}catch{n.config=void 0}else n.config=void 0;return n}async getConfigBinary(...e){let t=await this.configurator.getVertexConfig({fieldMask:e.length>0?h(_,{paths:e.map(ce)}):void 0}),n={},a=e.length>0?e:["config","metadata","configuredServices"];return a.includes("metadata")&&(n.metadata=t.metadata?M(w,t.metadata):void 0),a.includes("configuredServices")&&(n.configuredServices=t.configuredServices||{}),a.includes("config")&&(n.config=t.config),n}async postConfig(e){if(!e.config&&!e.metadata)throw new A("Either config or metadata must be provided",r.InvalidArgument);let t;e.config!==void 0&&(t=e.config instanceof Uint8Array?e.config:new TextEncoder().encode(JSON.stringify(e.config)));let n=await this.configurator.postVertexConfig({config:t,metadata:e.metadata?x(w,B(e.metadata)):void 0,overrideBindings:e?.overrideBindings});return M(w,n.metadata)}async listIncomingSignals(e,t,n){let a=await this.configurator.listIncomingSignals({receiver:e,formats:t?.map(i=>x(We,B(i)))??[],fieldMask:n?x(_,B(n)):void 0});return M(Ye,a)}getLocalStore(e){return new ee(this.configurator,e==="vertex"?"NAMESPACE_VERTEX":"NAMESPACE_PLUGIN")}};function dn(p){switch(p){case 400:return new A("Bad Request",r.InvalidArgument);case 401:return new A("Unauthorized",r.Unauthenticated);case 403:return new A("Forbidden",r.PermissionDenied);case 404:return new A("Not Found",r.NotFound);case 409:return new A("Conflict",r.AlreadyExists);case 429:return new A("Too Many Requests",r.ResourceExhausted);case 499:return new A("Client Closed Request",r.Canceled);case 500:return new A("Internal Server Error",r.Internal);case 501:return new A("Not Implemented",r.Unimplemented);case 503:return new A("Service Unavailable",r.Unavailable);case 504:return new A("Gateway Timeout",r.DeadlineExceeded);default:return new A(`Unknown HTTP error: ${p}`,r.Unknown)}}function Hg(p){switch(p.code){case r.Canceled:return 499;case r.Unknown:return 500;case r.InvalidArgument:return 400;case r.DeadlineExceeded:return 504;case r.NotFound:return 404;case r.AlreadyExists:return 409;case r.PermissionDenied:return 403;case r.ResourceExhausted:return 429;case r.FailedPrecondition:return 400;case r.Aborted:return 409;case r.OutOfRange:return 400;case r.Unimplemented:return 501;case r.Internal:return 500;case r.Unavailable:return 503;case r.DataLoss:return 500;case r.Unauthenticated:return 401;default:return 500}}export{Zo as AckMessageRequestSchema,Ao as AckMessageResponseSchema,ie as ApiBase,gi as AuthorizeRequestSchema,di as AuthorizeResponseSchema,Lo as AutomationService,lc as BatchGetActiveSignalsRequestSchema,rc as BatchGetActiveSignalsResponseSchema,Gi as BatchGetSystemTokensRequestSchema,hi as BatchGetSystemTokensResponseSchema,li as BatchGetSystemVariablesRequestSchema,ri as BatchGetSystemVariablesResponseSchema,pi as BatchGetUserTokensRequestSchema,bi as BatchGetUserTokensResponseSchema,mi as BatchGetUserVariablesRequestSchema,ui as BatchGetUserVariablesResponseSchema,ye as BatchReadResult,tc as CancelExchangeOperationRequestSchema,ac as CancelExchangeOperationResponseSchema,r as Code,es as ConditionalDeleteOpSchema,Ce as ConditionalDeleteOp_PreconditionSchema,$a as ConditionalInsertOpSchema,pe as ConditionalInsertOp_PreconditionSchema,Pa as ConditionalWriteOperationSchema,gn as ConfiguratorApi,Fe as ConfiguratorService,Gs as ConfiguratorServiceBatchReadStoreRequestSchema,hs as ConfiguratorServiceBatchReadStoreResponseSchema,ms as ConfiguratorServiceBatchWriteStoreRequestSchema,us as ConfiguratorServiceBatchWriteStoreResponseSchema,Zs as ConfiguratorServiceGetVertexConfigRequestSchema,As as ConfiguratorServiceGetVertexConfigResponseSchema,Is as ConfiguratorServiceSelectStoreRequestSchema,ys as ConfiguratorServiceSelectStoreResponseSchema,ps as ConfiguratorServiceWriteStoreRequestSchema,bs as ConfiguratorServiceWriteStoreResponseSchema,A as ConnectError,Os as CreateChallengeRequestSchema,_s as CreateChallengeResponseSchema,xi as CronTriggerRequestSchema,fi as CronTriggerResponseSchema,qa as DeleteOpSchema,cc as DispatchExchangeRequestSchema,ic as DispatchExchangeResponseSchema,Gt as EmulatedMediaType,Tc as EmulatedMediaTypeSchema,Gc as ExchangeOperationSchema,Mi as ExchangeResultRequestSchema,Hi as ExchangeResultResponseSchema,Ei as ExchangeResultSchema,ra as ExchangeSchema,Ae as ExecutorApi,be as ExecutorService,qo as ExecutorServiceBatchReadStoreRequestSchema,$o as ExecutorServiceBatchReadStoreResponseSchema,jo as ExecutorServiceBatchWriteStoreRequestSchema,Po as ExecutorServiceBatchWriteStoreResponseSchema,pc as ExecutorServiceGetVertexConfigRequestSchema,bc as ExecutorServiceGetVertexConfigResponseSchema,ec as ExecutorServiceSelectStoreRequestSchema,nc as ExecutorServiceSelectStoreResponseSchema,Oo as ExecutorServiceWriteStoreRequestSchema,_o as ExecutorServiceWriteStoreResponseSchema,Pe as FileForgeService,vc as FocalPointSchema,Hc as FocalRegionSchema,sc as GetExchangeOperationRequestSchema,oc as GetExchangeOperationResponseSchema,ro as GetSessionRequestSchema,mo as GetSessionResponseSchema,ci as GetSystemServicesRequestSchema,ii as GetSystemServicesResponseSchema,Da as GetValueSchema,yt as Gravity,Oc as GravitySchema,Ji as HostingDetailsSchema,Ge as HtmlRenderOptionsSchema,He as HtmlToPdfSchema,Yc as ImageAdjustSchema,Fc as ImageBlurSchema,Sc as ImageCropSchema,Kc as ImageDpiSchema,Jc as ImageFlipSchema,Mc as ImageFocalSchema,Xt as ImageFormat,ei as ImageFormatSchema,fc as ImageHueSchema,Nc as ImageMaxFramesSchema,Qe as ImageOperationSchema,ke as ImageOutputSchema,Cc as ImagePadSchema,kc as ImagePageSchema,Lc as ImageProportionSchema,Vc as ImageResizeSchema,Ec as ImageRgbSchema,Wc as ImageRotateSchema,zc as ImageRoundCornerSchema,xc as ImageSharpenSchema,Qc as ImageTextSchema,Bc as ImageTrimSchema,Uc as ImageWatermarkSchema,rs as IncomingVerticesSchema,eo as InheritSessionRequestSchema,no as InheritSessionResponseSchema,_a as InsertOpSchema,Dt as JTDSchemaSchema,mc as ListActiveSignalsRequestSchema,uc as ListActiveSignalsResponseSchema,ls as ListIncomingSignalsRequestSchema,Ye as ListIncomingSignalsResponseSchema,wc as ManipulatePdfRequestSchema,Dc as ManipulatePdfResponseSchema,ve as MarkdownToPdfSchema,Tn as Namespace,Be as NamespaceSchema,Le as OfficeRenderOptionsSchema,ze as OfficeToPdfSchema,uo as OutputSchema,ht as PdfAFormat,jc as PdfAFormatSchema,De as PdfConvertSchema,we as PdfEncryptSchema,Te as PdfFlattenSchema,Ke as PdfMergeSchema,se as PdfOutputOptionsSchema,Ue as PdfSplitSchema,Oe as PluginService,Rs as PostVertexConfigRequestSchema,Xs as PostVertexConfigResponseSchema,wa as PutValueSchema,Oa as RangeDeleteOpSchema,to as ReadOutputRequestSchema,ao as ReadOutputResponseSchema,so as ReadUrlsRequestSchema,oo as ReadUrlsResponseSchema,Ra as ReceiverSchema,Ro as ReconnectMessageSchema,qs as RedeemChallengeRequestSchema,$s as RedeemChallengeResponseSchema,Ac as RenderDocumentRequestSchema,Rc as RenderDocumentResponseSchema,It as ResizeType,Pc as ResizeTypeSchema,Jo as RunInheritRequestSchema,Co as RunInheritResponseSchema,Bo as RunInheritStartedSchema,Vo as RunSessionRequestSchema,So as RunSessionResponseSchema,Wo as RunSessionStartedSchema,ja as SelectOpSchema,gc as SendRequestSchema,dc as SendResponseSchema,Xe as SessionExecutorApi,Io as SessionSchema,Ga as SignalBindingSchema,En as SignalBinding_Error,ha as SignalBinding_ErrorSchema,D as SignalDataSchema,na as SignalDescriptorSchema,We as SignalFormatSchema,je as SplitMode,ni as SplitModeSchema,Ci as StartExecutionRequestSchema,Bi as StartExecutionResponseSchema,co as StartSessionRequestSchema,io as StartSessionResponseSchema,lt as Status,zo as StatusSchema,Yi as StopExecutionRequestSchema,Fi as StopExecutionResponseSchema,Re as StopExecutorApi,go as StopSessionRequestSchema,lo as StopSessionResponseSchema,ee as Store,yo as StreamSessionRequestSchema,Xo as StreamSessionResponseSchema,At as TextAlign,qc as TextAlignSchema,Zt as TextBlendMode,_c as TextBlendModeSchema,Rt as TextWrap,$c as TextWrapSchema,ue as TimestampRangeSchema,Ii as TokenSchema,ca as TransceiverSchema,Ne as TransformImageRequestSchema,Xc as TransformImageResponseSchema,Ja as TransmitterSchema,Qn as Transmitter_Mode,Ca as Transmitter_ModeSchema,bo as UrlCloseSchema,Go as UrlRecycleSchema,po as UrlRetainSchema,ho as UrlSchema,Ta as ValueMetadataSchema,w as VertexMetadataSchema,qn as VertexType,Vs as VertexTypeSchema,Mo as WatchInheritRequestSchema,Ho as WatchInheritResponseSchema,vo as WatchInheritStartedSchema,xo as WatchRunRequestSchema,fo as WatchRunResponseSchema,Eo as WatchRunStartedSchema,Yo as WatchSessionRequestSchema,Fo as WatchSessionResponseSchema,Ze as WriteBatchBuilder,ae as WriteOperationSchema,c as file_mochabugapis_adapt_automations_v1_automations,re as file_mochabugapis_adapt_graph_exchange,de as file_mochabugapis_adapt_graph_jtd_schema,me as file_mochabugapis_adapt_graph_receiver,te as file_mochabugapis_adapt_graph_signal_binding,H as file_mochabugapis_adapt_graph_signal_data,U as file_mochabugapis_adapt_graph_signal_descriptor,v as file_mochabugapis_adapt_graph_signal_format,le as file_mochabugapis_adapt_graph_transceiver,T as file_mochabugapis_adapt_graph_transmitter,O as file_mochabugapis_adapt_graph_vertex_metadata,X as file_mochabugapis_adapt_runtime_v1_configurator_service,G as file_mochabugapis_adapt_runtime_v1_executor_service,s as file_mochabugapis_adapt_runtime_v1_fileforge_service,E as file_mochabugapis_adapt_runtime_v1_incoming,W as file_mochabugapis_adapt_runtime_v1_plugin_service,Z as file_mochabugapis_adapt_runtime_v1_store,Hg as mapConnectErrorToHttpStatus,dn as mapHttpError};
1
+ import{create as h,enumFromJson as xt,fromJson as f,toJson as v}from"@bufbuild/protobuf";import{FieldMaskSchema as $,timestampDate as U,timestampFromDate as _,ValueSchema as ie}from"@bufbuild/protobuf/wkt";import{Code as r,ConnectError as A,createClient as ee}from"@connectrpc/connect";import{fileDesc as yn,messageDesc as Zn}from"@bufbuild/protobuf/codegenv2";import{enumDesc as vt,extDesc as Ht,fileDesc as un,messageDesc as zt}from"@bufbuild/protobuf/codegenv2";import{file_google_protobuf_descriptor as bn,file_google_protobuf_duration as Gn,file_google_protobuf_field_mask as hn,file_google_protobuf_timestamp as In}from"@bufbuild/protobuf/wkt";var m=un("ChtidWYvdmFsaWRhdGUvdmFsaWRhdGUucHJvdG8SDGJ1Zi52YWxpZGF0ZSI3CgRSdWxlEgoKAmlkGAEgASgJEg8KB21lc3NhZ2UYAiABKAkSEgoKZXhwcmVzc2lvbhgDIAEoCSKGAQoMTWVzc2FnZVJ1bGVzEhYKDmNlbF9leHByZXNzaW9uGAUgAygJEh8KA2NlbBgDIAMoCzISLmJ1Zi52YWxpZGF0ZS5SdWxlEi0KBW9uZW9mGAQgAygLMh4uYnVmLnZhbGlkYXRlLk1lc3NhZ2VPbmVvZlJ1bGVKBAgBEAJSCGRpc2FibGVkIjQKEE1lc3NhZ2VPbmVvZlJ1bGUSDgoGZmllbGRzGAEgAygJEhAKCHJlcXVpcmVkGAIgASgIIh4KCk9uZW9mUnVsZXMSEAoIcmVxdWlyZWQYASABKAgiiwkKCkZpZWxkUnVsZXMSFgoOY2VsX2V4cHJlc3Npb24YHSADKAkSHwoDY2VsGBcgAygLMhIuYnVmLnZhbGlkYXRlLlJ1bGUSEAoIcmVxdWlyZWQYGSABKAgSJAoGaWdub3JlGBsgASgOMhQuYnVmLnZhbGlkYXRlLklnbm9yZRIpCgVmbG9hdBgBIAEoCzIYLmJ1Zi52YWxpZGF0ZS5GbG9hdFJ1bGVzSAASKwoGZG91YmxlGAIgASgLMhkuYnVmLnZhbGlkYXRlLkRvdWJsZVJ1bGVzSAASKQoFaW50MzIYAyABKAsyGC5idWYudmFsaWRhdGUuSW50MzJSdWxlc0gAEikKBWludDY0GAQgASgLMhguYnVmLnZhbGlkYXRlLkludDY0UnVsZXNIABIrCgZ1aW50MzIYBSABKAsyGS5idWYudmFsaWRhdGUuVUludDMyUnVsZXNIABIrCgZ1aW50NjQYBiABKAsyGS5idWYudmFsaWRhdGUuVUludDY0UnVsZXNIABIrCgZzaW50MzIYByABKAsyGS5idWYudmFsaWRhdGUuU0ludDMyUnVsZXNIABIrCgZzaW50NjQYCCABKAsyGS5idWYudmFsaWRhdGUuU0ludDY0UnVsZXNIABItCgdmaXhlZDMyGAkgASgLMhouYnVmLnZhbGlkYXRlLkZpeGVkMzJSdWxlc0gAEi0KB2ZpeGVkNjQYCiABKAsyGi5idWYudmFsaWRhdGUuRml4ZWQ2NFJ1bGVzSAASLwoIc2ZpeGVkMzIYCyABKAsyGy5idWYudmFsaWRhdGUuU0ZpeGVkMzJSdWxlc0gAEi8KCHNmaXhlZDY0GAwgASgLMhsuYnVmLnZhbGlkYXRlLlNGaXhlZDY0UnVsZXNIABInCgRib29sGA0gASgLMhcuYnVmLnZhbGlkYXRlLkJvb2xSdWxlc0gAEisKBnN0cmluZxgOIAEoCzIZLmJ1Zi52YWxpZGF0ZS5TdHJpbmdSdWxlc0gAEikKBWJ5dGVzGA8gASgLMhguYnVmLnZhbGlkYXRlLkJ5dGVzUnVsZXNIABInCgRlbnVtGBAgASgLMhcuYnVmLnZhbGlkYXRlLkVudW1SdWxlc0gAEi8KCHJlcGVhdGVkGBIgASgLMhsuYnVmLnZhbGlkYXRlLlJlcGVhdGVkUnVsZXNIABIlCgNtYXAYEyABKAsyFi5idWYudmFsaWRhdGUuTWFwUnVsZXNIABIlCgNhbnkYFCABKAsyFi5idWYudmFsaWRhdGUuQW55UnVsZXNIABIvCghkdXJhdGlvbhgVIAEoCzIbLmJ1Zi52YWxpZGF0ZS5EdXJhdGlvblJ1bGVzSAASMgoKZmllbGRfbWFzaxgcIAEoCzIcLmJ1Zi52YWxpZGF0ZS5GaWVsZE1hc2tSdWxlc0gAEjEKCXRpbWVzdGFtcBgWIAEoCzIcLmJ1Zi52YWxpZGF0ZS5UaW1lc3RhbXBSdWxlc0gAQgYKBHR5cGVKBAgYEBlKBAgaEBtSB3NraXBwZWRSDGlnbm9yZV9lbXB0eSJVCg9QcmVkZWZpbmVkUnVsZXMSHwoDY2VsGAEgAygLMhIuYnVmLnZhbGlkYXRlLlJ1bGVKBAgYEBlKBAgaEBtSB3NraXBwZWRSDGlnbm9yZV9lbXB0eSL4FgoKRmxvYXRSdWxlcxJ9CgVjb25zdBgBIAEoAkJuwkhrCmkKC2Zsb2F0LmNvbnN0Glp0aGlzICE9IGdldEZpZWxkKHJ1bGVzLCAnY29uc3QnKSA/ICdtdXN0IGVxdWFsICVzJy5mb3JtYXQoW2dldEZpZWxkKHJ1bGVzLCAnY29uc3QnKV0pIDogJycSmQEKAmx0GAIgASgCQooBwkiGAQqDAQoIZmxvYXQubHQadyFoYXMocnVsZXMuZ3RlKSAmJiAhaGFzKHJ1bGVzLmd0KSAmJiAodGhpcy5pc05hbigpIHx8IHRoaXMgPj0gcnVsZXMubHQpPyAnbXVzdCBiZSBsZXNzIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMubHRdKSA6ICcnSAASqQEKA2x0ZRgDIAEoAkKZAcJIlQEKkgEKCWZsb2F0Lmx0ZRqEASFoYXMocnVsZXMuZ3RlKSAmJiAhaGFzKHJ1bGVzLmd0KSAmJiAodGhpcy5pc05hbigpIHx8IHRoaXMgPiBydWxlcy5sdGUpPyAnbXVzdCBiZSBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJXMnLmZvcm1hdChbcnVsZXMubHRlXSkgOiAnJ0gAEtAHCgJndBgEIAEoAkLBB8JIvQcKhgEKCGZsb2F0Lmd0GnohaGFzKHJ1bGVzLmx0KSAmJiAhaGFzKHJ1bGVzLmx0ZSkgJiYgKHRoaXMuaXNOYW4oKSB8fCB0aGlzIDw9IHJ1bGVzLmd0KT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0XSkgOiAnJwq9AQoLZmxvYXQuZ3RfbHQarQFoYXMocnVsZXMubHQpICYmIHJ1bGVzLmx0ID49IHJ1bGVzLmd0ICYmICh0aGlzLmlzTmFuKCkgfHwgdGhpcyA+PSBydWxlcy5sdCB8fCB0aGlzIDw9IHJ1bGVzLmd0KT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuICVzIGFuZCBsZXNzIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMuZ3QsIHJ1bGVzLmx0XSkgOiAnJwrHAQoVZmxvYXQuZ3RfbHRfZXhjbHVzaXZlGq0BaGFzKHJ1bGVzLmx0KSAmJiBydWxlcy5sdCA8IHJ1bGVzLmd0ICYmICh0aGlzLmlzTmFuKCkgfHwgKHJ1bGVzLmx0IDw9IHRoaXMgJiYgdGhpcyA8PSBydWxlcy5ndCkpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMgb3IgbGVzcyB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0LCBydWxlcy5sdF0pIDogJycKzQEKDGZsb2F0Lmd0X2x0ZRq8AWhhcyhydWxlcy5sdGUpICYmIHJ1bGVzLmx0ZSA+PSBydWxlcy5ndCAmJiAodGhpcy5pc05hbigpIHx8IHRoaXMgPiBydWxlcy5sdGUgfHwgdGhpcyA8PSBydWxlcy5ndCk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiAlcyBhbmQgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICVzJy5mb3JtYXQoW3J1bGVzLmd0LCBydWxlcy5sdGVdKSA6ICcnCtcBChZmbG9hdC5ndF9sdGVfZXhjbHVzaXZlGrwBaGFzKHJ1bGVzLmx0ZSkgJiYgcnVsZXMubHRlIDwgcnVsZXMuZ3QgJiYgKHRoaXMuaXNOYW4oKSB8fCAocnVsZXMubHRlIDwgdGhpcyAmJiB0aGlzIDw9IHJ1bGVzLmd0KSk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiAlcyBvciBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJXMnLmZvcm1hdChbcnVsZXMuZ3QsIHJ1bGVzLmx0ZV0pIDogJydIARKcCAoDZ3RlGAUgASgCQowIwkiICAqVAQoJZmxvYXQuZ3RlGocBIWhhcyhydWxlcy5sdCkgJiYgIWhhcyhydWxlcy5sdGUpICYmICh0aGlzLmlzTmFuKCkgfHwgdGhpcyA8IHJ1bGVzLmd0ZSk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndGVdKSA6ICcnCswBCgxmbG9hdC5ndGVfbHQauwFoYXMocnVsZXMubHQpICYmIHJ1bGVzLmx0ID49IHJ1bGVzLmd0ZSAmJiAodGhpcy5pc05hbigpIHx8IHRoaXMgPj0gcnVsZXMubHQgfHwgdGhpcyA8IHJ1bGVzLmd0ZSk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAlcyBhbmQgbGVzcyB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0ZSwgcnVsZXMubHRdKSA6ICcnCtYBChZmbG9hdC5ndGVfbHRfZXhjbHVzaXZlGrsBaGFzKHJ1bGVzLmx0KSAmJiBydWxlcy5sdCA8IHJ1bGVzLmd0ZSAmJiAodGhpcy5pc05hbigpIHx8IChydWxlcy5sdCA8PSB0aGlzICYmIHRoaXMgPCBydWxlcy5ndGUpKT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzIG9yIGxlc3MgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5ndGUsIHJ1bGVzLmx0XSkgOiAnJwrcAQoNZmxvYXQuZ3RlX2x0ZRrKAWhhcyhydWxlcy5sdGUpICYmIHJ1bGVzLmx0ZSA+PSBydWxlcy5ndGUgJiYgKHRoaXMuaXNOYW4oKSB8fCB0aGlzID4gcnVsZXMubHRlIHx8IHRoaXMgPCBydWxlcy5ndGUpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gJXMgYW5kIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndGUsIHJ1bGVzLmx0ZV0pIDogJycK5gEKF2Zsb2F0Lmd0ZV9sdGVfZXhjbHVzaXZlGsoBaGFzKHJ1bGVzLmx0ZSkgJiYgcnVsZXMubHRlIDwgcnVsZXMuZ3RlICYmICh0aGlzLmlzTmFuKCkgfHwgKHJ1bGVzLmx0ZSA8IHRoaXMgJiYgdGhpcyA8IHJ1bGVzLmd0ZSkpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gJXMgb3IgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICVzJy5mb3JtYXQoW3J1bGVzLmd0ZSwgcnVsZXMubHRlXSkgOiAnJ0gBEnkKAmluGAYgAygCQm3CSGoKaAoIZmxvYXQuaW4aXCEodGhpcyBpbiBnZXRGaWVsZChydWxlcywgJ2luJykpID8gJ211c3QgYmUgaW4gbGlzdCAlcycuZm9ybWF0KFtnZXRGaWVsZChydWxlcywgJ2luJyldKSA6ICcnEnAKBm5vdF9pbhgHIAMoAkJgwkhdClsKDGZsb2F0Lm5vdF9pbhpLdGhpcyBpbiBydWxlcy5ub3RfaW4gPyAnbXVzdCBub3QgYmUgaW4gbGlzdCAlcycuZm9ybWF0KFtydWxlcy5ub3RfaW5dKSA6ICcnEm8KBmZpbml0ZRgIIAEoCEJfwkhcCloKDGZsb2F0LmZpbml0ZRpKcnVsZXMuZmluaXRlID8gKHRoaXMuaXNOYW4oKSB8fCB0aGlzLmlzSW5mKCkgPyAnbXVzdCBiZSBmaW5pdGUnIDogJycpIDogJycSKwoHZXhhbXBsZRgJIAMoAkIawkgXChUKDWZsb2F0LmV4YW1wbGUaBHRydWUqCQjoBxCAgICAAkILCglsZXNzX3RoYW5CDgoMZ3JlYXRlcl90aGFuIooXCgtEb3VibGVSdWxlcxJ+CgVjb25zdBgBIAEoAUJvwkhsCmoKDGRvdWJsZS5jb25zdBpadGhpcyAhPSBnZXRGaWVsZChydWxlcywgJ2NvbnN0JykgPyAnbXVzdCBlcXVhbCAlcycuZm9ybWF0KFtnZXRGaWVsZChydWxlcywgJ2NvbnN0JyldKSA6ICcnEpoBCgJsdBgCIAEoAUKLAcJIhwEKhAEKCWRvdWJsZS5sdBp3IWhhcyhydWxlcy5ndGUpICYmICFoYXMocnVsZXMuZ3QpICYmICh0aGlzLmlzTmFuKCkgfHwgdGhpcyA+PSBydWxlcy5sdCk/ICdtdXN0IGJlIGxlc3MgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5sdF0pIDogJydIABKqAQoDbHRlGAMgASgBQpoBwkiWAQqTAQoKZG91YmxlLmx0ZRqEASFoYXMocnVsZXMuZ3RlKSAmJiAhaGFzKHJ1bGVzLmd0KSAmJiAodGhpcy5pc05hbigpIHx8IHRoaXMgPiBydWxlcy5sdGUpPyAnbXVzdCBiZSBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJXMnLmZvcm1hdChbcnVsZXMubHRlXSkgOiAnJ0gAEtUHCgJndBgEIAEoAULGB8JIwgcKhwEKCWRvdWJsZS5ndBp6IWhhcyhydWxlcy5sdCkgJiYgIWhhcyhydWxlcy5sdGUpICYmICh0aGlzLmlzTmFuKCkgfHwgdGhpcyA8PSBydWxlcy5ndCk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5ndF0pIDogJycKvgEKDGRvdWJsZS5ndF9sdBqtAWhhcyhydWxlcy5sdCkgJiYgcnVsZXMubHQgPj0gcnVsZXMuZ3QgJiYgKHRoaXMuaXNOYW4oKSB8fCB0aGlzID49IHJ1bGVzLmx0IHx8IHRoaXMgPD0gcnVsZXMuZ3QpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMgYW5kIGxlc3MgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5ndCwgcnVsZXMubHRdKSA6ICcnCsgBChZkb3VibGUuZ3RfbHRfZXhjbHVzaXZlGq0BaGFzKHJ1bGVzLmx0KSAmJiBydWxlcy5sdCA8IHJ1bGVzLmd0ICYmICh0aGlzLmlzTmFuKCkgfHwgKHJ1bGVzLmx0IDw9IHRoaXMgJiYgdGhpcyA8PSBydWxlcy5ndCkpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMgb3IgbGVzcyB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0LCBydWxlcy5sdF0pIDogJycKzgEKDWRvdWJsZS5ndF9sdGUavAFoYXMocnVsZXMubHRlKSAmJiBydWxlcy5sdGUgPj0gcnVsZXMuZ3QgJiYgKHRoaXMuaXNOYW4oKSB8fCB0aGlzID4gcnVsZXMubHRlIHx8IHRoaXMgPD0gcnVsZXMuZ3QpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMgYW5kIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndCwgcnVsZXMubHRlXSkgOiAnJwrYAQoXZG91YmxlLmd0X2x0ZV9leGNsdXNpdmUavAFoYXMocnVsZXMubHRlKSAmJiBydWxlcy5sdGUgPCBydWxlcy5ndCAmJiAodGhpcy5pc05hbigpIHx8IChydWxlcy5sdGUgPCB0aGlzICYmIHRoaXMgPD0gcnVsZXMuZ3QpKT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuICVzIG9yIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndCwgcnVsZXMubHRlXSkgOiAnJ0gBEqEICgNndGUYBSABKAFCkQjCSI0ICpYBCgpkb3VibGUuZ3RlGocBIWhhcyhydWxlcy5sdCkgJiYgIWhhcyhydWxlcy5sdGUpICYmICh0aGlzLmlzTmFuKCkgfHwgdGhpcyA8IHJ1bGVzLmd0ZSk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndGVdKSA6ICcnCs0BCg1kb3VibGUuZ3RlX2x0GrsBaGFzKHJ1bGVzLmx0KSAmJiBydWxlcy5sdCA+PSBydWxlcy5ndGUgJiYgKHRoaXMuaXNOYW4oKSB8fCB0aGlzID49IHJ1bGVzLmx0IHx8IHRoaXMgPCBydWxlcy5ndGUpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gJXMgYW5kIGxlc3MgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5ndGUsIHJ1bGVzLmx0XSkgOiAnJwrXAQoXZG91YmxlLmd0ZV9sdF9leGNsdXNpdmUauwFoYXMocnVsZXMubHQpICYmIHJ1bGVzLmx0IDwgcnVsZXMuZ3RlICYmICh0aGlzLmlzTmFuKCkgfHwgKHJ1bGVzLmx0IDw9IHRoaXMgJiYgdGhpcyA8IHJ1bGVzLmd0ZSkpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gJXMgb3IgbGVzcyB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0ZSwgcnVsZXMubHRdKSA6ICcnCt0BCg5kb3VibGUuZ3RlX2x0ZRrKAWhhcyhydWxlcy5sdGUpICYmIHJ1bGVzLmx0ZSA+PSBydWxlcy5ndGUgJiYgKHRoaXMuaXNOYW4oKSB8fCB0aGlzID4gcnVsZXMubHRlIHx8IHRoaXMgPCBydWxlcy5ndGUpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gJXMgYW5kIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndGUsIHJ1bGVzLmx0ZV0pIDogJycK5wEKGGRvdWJsZS5ndGVfbHRlX2V4Y2x1c2l2ZRrKAWhhcyhydWxlcy5sdGUpICYmIHJ1bGVzLmx0ZSA8IHJ1bGVzLmd0ZSAmJiAodGhpcy5pc05hbigpIHx8IChydWxlcy5sdGUgPCB0aGlzICYmIHRoaXMgPCBydWxlcy5ndGUpKT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzIG9yIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndGUsIHJ1bGVzLmx0ZV0pIDogJydIARJ6CgJpbhgGIAMoAUJuwkhrCmkKCWRvdWJsZS5pbhpcISh0aGlzIGluIGdldEZpZWxkKHJ1bGVzLCAnaW4nKSkgPyAnbXVzdCBiZSBpbiBsaXN0ICVzJy5mb3JtYXQoW2dldEZpZWxkKHJ1bGVzLCAnaW4nKV0pIDogJycScQoGbm90X2luGAcgAygBQmHCSF4KXAoNZG91YmxlLm5vdF9pbhpLdGhpcyBpbiBydWxlcy5ub3RfaW4gPyAnbXVzdCBub3QgYmUgaW4gbGlzdCAlcycuZm9ybWF0KFtydWxlcy5ub3RfaW5dKSA6ICcnEnAKBmZpbml0ZRgIIAEoCEJgwkhdClsKDWRvdWJsZS5maW5pdGUaSnJ1bGVzLmZpbml0ZSA/ICh0aGlzLmlzTmFuKCkgfHwgdGhpcy5pc0luZigpID8gJ211c3QgYmUgZmluaXRlJyA6ICcnKSA6ICcnEiwKB2V4YW1wbGUYCSADKAFCG8JIGAoWCg5kb3VibGUuZXhhbXBsZRoEdHJ1ZSoJCOgHEICAgIACQgsKCWxlc3NfdGhhbkIOCgxncmVhdGVyX3RoYW4isBQKCkludDMyUnVsZXMSfQoFY29uc3QYASABKAVCbsJIawppCgtpbnQzMi5jb25zdBpadGhpcyAhPSBnZXRGaWVsZChydWxlcywgJ2NvbnN0JykgPyAnbXVzdCBlcXVhbCAlcycuZm9ybWF0KFtnZXRGaWVsZChydWxlcywgJ2NvbnN0JyldKSA6ICcnEoQBCgJsdBgCIAEoBUJ2wkhzCnEKCGludDMyLmx0GmUhaGFzKHJ1bGVzLmd0ZSkgJiYgIWhhcyhydWxlcy5ndCkgJiYgdGhpcyA+PSBydWxlcy5sdD8gJ211c3QgYmUgbGVzcyB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmx0XSkgOiAnJ0gAEpUBCgNsdGUYAyABKAVChQHCSIEBCn8KCWludDMyLmx0ZRpyIWhhcyhydWxlcy5ndGUpICYmICFoYXMocnVsZXMuZ3QpICYmIHRoaXMgPiBydWxlcy5sdGU/ICdtdXN0IGJlIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5sdGVdKSA6ICcnSAAS+QYKAmd0GAQgASgFQuoGwkjmBgp0CghpbnQzMi5ndBpoIWhhcyhydWxlcy5sdCkgJiYgIWhhcyhydWxlcy5sdGUpICYmIHRoaXMgPD0gcnVsZXMuZ3Q/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5ndF0pIDogJycKrQEKC2ludDMyLmd0X2x0Gp0BaGFzKHJ1bGVzLmx0KSAmJiBydWxlcy5sdCA+PSBydWxlcy5ndCAmJiAodGhpcyA+PSBydWxlcy5sdCB8fCB0aGlzIDw9IHJ1bGVzLmd0KT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuICVzIGFuZCBsZXNzIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMuZ3QsIHJ1bGVzLmx0XSkgOiAnJwq1AQoVaW50MzIuZ3RfbHRfZXhjbHVzaXZlGpsBaGFzKHJ1bGVzLmx0KSAmJiBydWxlcy5sdCA8IHJ1bGVzLmd0ICYmIChydWxlcy5sdCA8PSB0aGlzICYmIHRoaXMgPD0gcnVsZXMuZ3QpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMgb3IgbGVzcyB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0LCBydWxlcy5sdF0pIDogJycKvQEKDGludDMyLmd0X2x0ZRqsAWhhcyhydWxlcy5sdGUpICYmIHJ1bGVzLmx0ZSA+PSBydWxlcy5ndCAmJiAodGhpcyA+IHJ1bGVzLmx0ZSB8fCB0aGlzIDw9IHJ1bGVzLmd0KT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuICVzIGFuZCBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJXMnLmZvcm1hdChbcnVsZXMuZ3QsIHJ1bGVzLmx0ZV0pIDogJycKxQEKFmludDMyLmd0X2x0ZV9leGNsdXNpdmUaqgFoYXMocnVsZXMubHRlKSAmJiBydWxlcy5sdGUgPCBydWxlcy5ndCAmJiAocnVsZXMubHRlIDwgdGhpcyAmJiB0aGlzIDw9IHJ1bGVzLmd0KT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuICVzIG9yIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndCwgcnVsZXMubHRlXSkgOiAnJ0gBEsUHCgNndGUYBSABKAVCtQfCSLEHCoIBCglpbnQzMi5ndGUadSFoYXMocnVsZXMubHQpICYmICFoYXMocnVsZXMubHRlKSAmJiB0aGlzIDwgcnVsZXMuZ3RlPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gJXMnLmZvcm1hdChbcnVsZXMuZ3RlXSkgOiAnJwq8AQoMaW50MzIuZ3RlX2x0GqsBaGFzKHJ1bGVzLmx0KSAmJiBydWxlcy5sdCA+PSBydWxlcy5ndGUgJiYgKHRoaXMgPj0gcnVsZXMubHQgfHwgdGhpcyA8IHJ1bGVzLmd0ZSk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAlcyBhbmQgbGVzcyB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0ZSwgcnVsZXMubHRdKSA6ICcnCsQBChZpbnQzMi5ndGVfbHRfZXhjbHVzaXZlGqkBaGFzKHJ1bGVzLmx0KSAmJiBydWxlcy5sdCA8IHJ1bGVzLmd0ZSAmJiAocnVsZXMubHQgPD0gdGhpcyAmJiB0aGlzIDwgcnVsZXMuZ3RlKT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzIG9yIGxlc3MgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5ndGUsIHJ1bGVzLmx0XSkgOiAnJwrMAQoNaW50MzIuZ3RlX2x0ZRq6AWhhcyhydWxlcy5sdGUpICYmIHJ1bGVzLmx0ZSA+PSBydWxlcy5ndGUgJiYgKHRoaXMgPiBydWxlcy5sdGUgfHwgdGhpcyA8IHJ1bGVzLmd0ZSk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAlcyBhbmQgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICVzJy5mb3JtYXQoW3J1bGVzLmd0ZSwgcnVsZXMubHRlXSkgOiAnJwrUAQoXaW50MzIuZ3RlX2x0ZV9leGNsdXNpdmUauAFoYXMocnVsZXMubHRlKSAmJiBydWxlcy5sdGUgPCBydWxlcy5ndGUgJiYgKHJ1bGVzLmx0ZSA8IHRoaXMgJiYgdGhpcyA8IHJ1bGVzLmd0ZSk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAlcyBvciBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJXMnLmZvcm1hdChbcnVsZXMuZ3RlLCBydWxlcy5sdGVdKSA6ICcnSAESeQoCaW4YBiADKAVCbcJIagpoCghpbnQzMi5pbhpcISh0aGlzIGluIGdldEZpZWxkKHJ1bGVzLCAnaW4nKSkgPyAnbXVzdCBiZSBpbiBsaXN0ICVzJy5mb3JtYXQoW2dldEZpZWxkKHJ1bGVzLCAnaW4nKV0pIDogJycScAoGbm90X2luGAcgAygFQmDCSF0KWwoMaW50MzIubm90X2luGkt0aGlzIGluIHJ1bGVzLm5vdF9pbiA/ICdtdXN0IG5vdCBiZSBpbiBsaXN0ICVzJy5mb3JtYXQoW3J1bGVzLm5vdF9pbl0pIDogJycSKwoHZXhhbXBsZRgIIAMoBUIawkgXChUKDWludDMyLmV4YW1wbGUaBHRydWUqCQjoBxCAgICAAkILCglsZXNzX3RoYW5CDgoMZ3JlYXRlcl90aGFuIrAUCgpJbnQ2NFJ1bGVzEn0KBWNvbnN0GAEgASgDQm7CSGsKaQoLaW50NjQuY29uc3QaWnRoaXMgIT0gZ2V0RmllbGQocnVsZXMsICdjb25zdCcpID8gJ211c3QgZXF1YWwgJXMnLmZvcm1hdChbZ2V0RmllbGQocnVsZXMsICdjb25zdCcpXSkgOiAnJxKEAQoCbHQYAiABKANCdsJIcwpxCghpbnQ2NC5sdBplIWhhcyhydWxlcy5ndGUpICYmICFoYXMocnVsZXMuZ3QpICYmIHRoaXMgPj0gcnVsZXMubHQ/ICdtdXN0IGJlIGxlc3MgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5sdF0pIDogJydIABKVAQoDbHRlGAMgASgDQoUBwkiBAQp/CglpbnQ2NC5sdGUaciFoYXMocnVsZXMuZ3RlKSAmJiAhaGFzKHJ1bGVzLmd0KSAmJiB0aGlzID4gcnVsZXMubHRlPyAnbXVzdCBiZSBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJXMnLmZvcm1hdChbcnVsZXMubHRlXSkgOiAnJ0gAEvkGCgJndBgEIAEoA0LqBsJI5gYKdAoIaW50NjQuZ3QaaCFoYXMocnVsZXMubHQpICYmICFoYXMocnVsZXMubHRlKSAmJiB0aGlzIDw9IHJ1bGVzLmd0PyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMuZ3RdKSA6ICcnCq0BCgtpbnQ2NC5ndF9sdBqdAWhhcyhydWxlcy5sdCkgJiYgcnVsZXMubHQgPj0gcnVsZXMuZ3QgJiYgKHRoaXMgPj0gcnVsZXMubHQgfHwgdGhpcyA8PSBydWxlcy5ndCk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiAlcyBhbmQgbGVzcyB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0LCBydWxlcy5sdF0pIDogJycKtQEKFWludDY0Lmd0X2x0X2V4Y2x1c2l2ZRqbAWhhcyhydWxlcy5sdCkgJiYgcnVsZXMubHQgPCBydWxlcy5ndCAmJiAocnVsZXMubHQgPD0gdGhpcyAmJiB0aGlzIDw9IHJ1bGVzLmd0KT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuICVzIG9yIGxlc3MgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5ndCwgcnVsZXMubHRdKSA6ICcnCr0BCgxpbnQ2NC5ndF9sdGUarAFoYXMocnVsZXMubHRlKSAmJiBydWxlcy5sdGUgPj0gcnVsZXMuZ3QgJiYgKHRoaXMgPiBydWxlcy5sdGUgfHwgdGhpcyA8PSBydWxlcy5ndCk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiAlcyBhbmQgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICVzJy5mb3JtYXQoW3J1bGVzLmd0LCBydWxlcy5sdGVdKSA6ICcnCsUBChZpbnQ2NC5ndF9sdGVfZXhjbHVzaXZlGqoBaGFzKHJ1bGVzLmx0ZSkgJiYgcnVsZXMubHRlIDwgcnVsZXMuZ3QgJiYgKHJ1bGVzLmx0ZSA8IHRoaXMgJiYgdGhpcyA8PSBydWxlcy5ndCk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiAlcyBvciBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJXMnLmZvcm1hdChbcnVsZXMuZ3QsIHJ1bGVzLmx0ZV0pIDogJydIARLFBwoDZ3RlGAUgASgDQrUHwkixBwqCAQoJaW50NjQuZ3RlGnUhaGFzKHJ1bGVzLmx0KSAmJiAhaGFzKHJ1bGVzLmx0ZSkgJiYgdGhpcyA8IHJ1bGVzLmd0ZT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzJy5mb3JtYXQoW3J1bGVzLmd0ZV0pIDogJycKvAEKDGludDY0Lmd0ZV9sdBqrAWhhcyhydWxlcy5sdCkgJiYgcnVsZXMubHQgPj0gcnVsZXMuZ3RlICYmICh0aGlzID49IHJ1bGVzLmx0IHx8IHRoaXMgPCBydWxlcy5ndGUpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gJXMgYW5kIGxlc3MgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5ndGUsIHJ1bGVzLmx0XSkgOiAnJwrEAQoWaW50NjQuZ3RlX2x0X2V4Y2x1c2l2ZRqpAWhhcyhydWxlcy5sdCkgJiYgcnVsZXMubHQgPCBydWxlcy5ndGUgJiYgKHJ1bGVzLmx0IDw9IHRoaXMgJiYgdGhpcyA8IHJ1bGVzLmd0ZSk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAlcyBvciBsZXNzIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMuZ3RlLCBydWxlcy5sdF0pIDogJycKzAEKDWludDY0Lmd0ZV9sdGUaugFoYXMocnVsZXMubHRlKSAmJiBydWxlcy5sdGUgPj0gcnVsZXMuZ3RlICYmICh0aGlzID4gcnVsZXMubHRlIHx8IHRoaXMgPCBydWxlcy5ndGUpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gJXMgYW5kIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndGUsIHJ1bGVzLmx0ZV0pIDogJycK1AEKF2ludDY0Lmd0ZV9sdGVfZXhjbHVzaXZlGrgBaGFzKHJ1bGVzLmx0ZSkgJiYgcnVsZXMubHRlIDwgcnVsZXMuZ3RlICYmIChydWxlcy5sdGUgPCB0aGlzICYmIHRoaXMgPCBydWxlcy5ndGUpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gJXMgb3IgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICVzJy5mb3JtYXQoW3J1bGVzLmd0ZSwgcnVsZXMubHRlXSkgOiAnJ0gBEnkKAmluGAYgAygDQm3CSGoKaAoIaW50NjQuaW4aXCEodGhpcyBpbiBnZXRGaWVsZChydWxlcywgJ2luJykpID8gJ211c3QgYmUgaW4gbGlzdCAlcycuZm9ybWF0KFtnZXRGaWVsZChydWxlcywgJ2luJyldKSA6ICcnEnAKBm5vdF9pbhgHIAMoA0JgwkhdClsKDGludDY0Lm5vdF9pbhpLdGhpcyBpbiBydWxlcy5ub3RfaW4gPyAnbXVzdCBub3QgYmUgaW4gbGlzdCAlcycuZm9ybWF0KFtydWxlcy5ub3RfaW5dKSA6ICcnEisKB2V4YW1wbGUYCSADKANCGsJIFwoVCg1pbnQ2NC5leGFtcGxlGgR0cnVlKgkI6AcQgICAgAJCCwoJbGVzc190aGFuQg4KDGdyZWF0ZXJfdGhhbiLCFAoLVUludDMyUnVsZXMSfgoFY29uc3QYASABKA1Cb8JIbApqCgx1aW50MzIuY29uc3QaWnRoaXMgIT0gZ2V0RmllbGQocnVsZXMsICdjb25zdCcpID8gJ211c3QgZXF1YWwgJXMnLmZvcm1hdChbZ2V0RmllbGQocnVsZXMsICdjb25zdCcpXSkgOiAnJxKFAQoCbHQYAiABKA1Cd8JIdApyCgl1aW50MzIubHQaZSFoYXMocnVsZXMuZ3RlKSAmJiAhaGFzKHJ1bGVzLmd0KSAmJiB0aGlzID49IHJ1bGVzLmx0PyAnbXVzdCBiZSBsZXNzIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMubHRdKSA6ICcnSAASlwEKA2x0ZRgDIAEoDUKHAcJIgwEKgAEKCnVpbnQzMi5sdGUaciFoYXMocnVsZXMuZ3RlKSAmJiAhaGFzKHJ1bGVzLmd0KSAmJiB0aGlzID4gcnVsZXMubHRlPyAnbXVzdCBiZSBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJXMnLmZvcm1hdChbcnVsZXMubHRlXSkgOiAnJ0gAEv4GCgJndBgEIAEoDULvBsJI6wYKdQoJdWludDMyLmd0GmghaGFzKHJ1bGVzLmx0KSAmJiAhaGFzKHJ1bGVzLmx0ZSkgJiYgdGhpcyA8PSBydWxlcy5ndD8gJ211c3QgYmUgZ3JlYXRlciB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0XSkgOiAnJwquAQoMdWludDMyLmd0X2x0Gp0BaGFzKHJ1bGVzLmx0KSAmJiBydWxlcy5sdCA+PSBydWxlcy5ndCAmJiAodGhpcyA+PSBydWxlcy5sdCB8fCB0aGlzIDw9IHJ1bGVzLmd0KT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuICVzIGFuZCBsZXNzIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMuZ3QsIHJ1bGVzLmx0XSkgOiAnJwq2AQoWdWludDMyLmd0X2x0X2V4Y2x1c2l2ZRqbAWhhcyhydWxlcy5sdCkgJiYgcnVsZXMubHQgPCBydWxlcy5ndCAmJiAocnVsZXMubHQgPD0gdGhpcyAmJiB0aGlzIDw9IHJ1bGVzLmd0KT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuICVzIG9yIGxlc3MgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5ndCwgcnVsZXMubHRdKSA6ICcnCr4BCg11aW50MzIuZ3RfbHRlGqwBaGFzKHJ1bGVzLmx0ZSkgJiYgcnVsZXMubHRlID49IHJ1bGVzLmd0ICYmICh0aGlzID4gcnVsZXMubHRlIHx8IHRoaXMgPD0gcnVsZXMuZ3QpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMgYW5kIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndCwgcnVsZXMubHRlXSkgOiAnJwrGAQoXdWludDMyLmd0X2x0ZV9leGNsdXNpdmUaqgFoYXMocnVsZXMubHRlKSAmJiBydWxlcy5sdGUgPCBydWxlcy5ndCAmJiAocnVsZXMubHRlIDwgdGhpcyAmJiB0aGlzIDw9IHJ1bGVzLmd0KT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuICVzIG9yIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndCwgcnVsZXMubHRlXSkgOiAnJ0gBEsoHCgNndGUYBSABKA1CugfCSLYHCoMBCgp1aW50MzIuZ3RlGnUhaGFzKHJ1bGVzLmx0KSAmJiAhaGFzKHJ1bGVzLmx0ZSkgJiYgdGhpcyA8IHJ1bGVzLmd0ZT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzJy5mb3JtYXQoW3J1bGVzLmd0ZV0pIDogJycKvQEKDXVpbnQzMi5ndGVfbHQaqwFoYXMocnVsZXMubHQpICYmIHJ1bGVzLmx0ID49IHJ1bGVzLmd0ZSAmJiAodGhpcyA+PSBydWxlcy5sdCB8fCB0aGlzIDwgcnVsZXMuZ3RlKT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzIGFuZCBsZXNzIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMuZ3RlLCBydWxlcy5sdF0pIDogJycKxQEKF3VpbnQzMi5ndGVfbHRfZXhjbHVzaXZlGqkBaGFzKHJ1bGVzLmx0KSAmJiBydWxlcy5sdCA8IHJ1bGVzLmd0ZSAmJiAocnVsZXMubHQgPD0gdGhpcyAmJiB0aGlzIDwgcnVsZXMuZ3RlKT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzIG9yIGxlc3MgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5ndGUsIHJ1bGVzLmx0XSkgOiAnJwrNAQoOdWludDMyLmd0ZV9sdGUaugFoYXMocnVsZXMubHRlKSAmJiBydWxlcy5sdGUgPj0gcnVsZXMuZ3RlICYmICh0aGlzID4gcnVsZXMubHRlIHx8IHRoaXMgPCBydWxlcy5ndGUpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gJXMgYW5kIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndGUsIHJ1bGVzLmx0ZV0pIDogJycK1QEKGHVpbnQzMi5ndGVfbHRlX2V4Y2x1c2l2ZRq4AWhhcyhydWxlcy5sdGUpICYmIHJ1bGVzLmx0ZSA8IHJ1bGVzLmd0ZSAmJiAocnVsZXMubHRlIDwgdGhpcyAmJiB0aGlzIDwgcnVsZXMuZ3RlKT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzIG9yIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndGUsIHJ1bGVzLmx0ZV0pIDogJydIARJ6CgJpbhgGIAMoDUJuwkhrCmkKCXVpbnQzMi5pbhpcISh0aGlzIGluIGdldEZpZWxkKHJ1bGVzLCAnaW4nKSkgPyAnbXVzdCBiZSBpbiBsaXN0ICVzJy5mb3JtYXQoW2dldEZpZWxkKHJ1bGVzLCAnaW4nKV0pIDogJycScQoGbm90X2luGAcgAygNQmHCSF4KXAoNdWludDMyLm5vdF9pbhpLdGhpcyBpbiBydWxlcy5ub3RfaW4gPyAnbXVzdCBub3QgYmUgaW4gbGlzdCAlcycuZm9ybWF0KFtydWxlcy5ub3RfaW5dKSA6ICcnEiwKB2V4YW1wbGUYCCADKA1CG8JIGAoWCg51aW50MzIuZXhhbXBsZRoEdHJ1ZSoJCOgHEICAgIACQgsKCWxlc3NfdGhhbkIOCgxncmVhdGVyX3RoYW4iwhQKC1VJbnQ2NFJ1bGVzEn4KBWNvbnN0GAEgASgEQm/CSGwKagoMdWludDY0LmNvbnN0Glp0aGlzICE9IGdldEZpZWxkKHJ1bGVzLCAnY29uc3QnKSA/ICdtdXN0IGVxdWFsICVzJy5mb3JtYXQoW2dldEZpZWxkKHJ1bGVzLCAnY29uc3QnKV0pIDogJycShQEKAmx0GAIgASgEQnfCSHQKcgoJdWludDY0Lmx0GmUhaGFzKHJ1bGVzLmd0ZSkgJiYgIWhhcyhydWxlcy5ndCkgJiYgdGhpcyA+PSBydWxlcy5sdD8gJ211c3QgYmUgbGVzcyB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmx0XSkgOiAnJ0gAEpcBCgNsdGUYAyABKARChwHCSIMBCoABCgp1aW50NjQubHRlGnIhaGFzKHJ1bGVzLmd0ZSkgJiYgIWhhcyhydWxlcy5ndCkgJiYgdGhpcyA+IHJ1bGVzLmx0ZT8gJ211c3QgYmUgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICVzJy5mb3JtYXQoW3J1bGVzLmx0ZV0pIDogJydIABL+BgoCZ3QYBCABKARC7wbCSOsGCnUKCXVpbnQ2NC5ndBpoIWhhcyhydWxlcy5sdCkgJiYgIWhhcyhydWxlcy5sdGUpICYmIHRoaXMgPD0gcnVsZXMuZ3Q/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5ndF0pIDogJycKrgEKDHVpbnQ2NC5ndF9sdBqdAWhhcyhydWxlcy5sdCkgJiYgcnVsZXMubHQgPj0gcnVsZXMuZ3QgJiYgKHRoaXMgPj0gcnVsZXMubHQgfHwgdGhpcyA8PSBydWxlcy5ndCk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiAlcyBhbmQgbGVzcyB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0LCBydWxlcy5sdF0pIDogJycKtgEKFnVpbnQ2NC5ndF9sdF9leGNsdXNpdmUamwFoYXMocnVsZXMubHQpICYmIHJ1bGVzLmx0IDwgcnVsZXMuZ3QgJiYgKHJ1bGVzLmx0IDw9IHRoaXMgJiYgdGhpcyA8PSBydWxlcy5ndCk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiAlcyBvciBsZXNzIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMuZ3QsIHJ1bGVzLmx0XSkgOiAnJwq+AQoNdWludDY0Lmd0X2x0ZRqsAWhhcyhydWxlcy5sdGUpICYmIHJ1bGVzLmx0ZSA+PSBydWxlcy5ndCAmJiAodGhpcyA+IHJ1bGVzLmx0ZSB8fCB0aGlzIDw9IHJ1bGVzLmd0KT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuICVzIGFuZCBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJXMnLmZvcm1hdChbcnVsZXMuZ3QsIHJ1bGVzLmx0ZV0pIDogJycKxgEKF3VpbnQ2NC5ndF9sdGVfZXhjbHVzaXZlGqoBaGFzKHJ1bGVzLmx0ZSkgJiYgcnVsZXMubHRlIDwgcnVsZXMuZ3QgJiYgKHJ1bGVzLmx0ZSA8IHRoaXMgJiYgdGhpcyA8PSBydWxlcy5ndCk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiAlcyBvciBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJXMnLmZvcm1hdChbcnVsZXMuZ3QsIHJ1bGVzLmx0ZV0pIDogJydIARLKBwoDZ3RlGAUgASgEQroHwki2BwqDAQoKdWludDY0Lmd0ZRp1IWhhcyhydWxlcy5sdCkgJiYgIWhhcyhydWxlcy5sdGUpICYmIHRoaXMgPCBydWxlcy5ndGU/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndGVdKSA6ICcnCr0BCg11aW50NjQuZ3RlX2x0GqsBaGFzKHJ1bGVzLmx0KSAmJiBydWxlcy5sdCA+PSBydWxlcy5ndGUgJiYgKHRoaXMgPj0gcnVsZXMubHQgfHwgdGhpcyA8IHJ1bGVzLmd0ZSk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAlcyBhbmQgbGVzcyB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0ZSwgcnVsZXMubHRdKSA6ICcnCsUBChd1aW50NjQuZ3RlX2x0X2V4Y2x1c2l2ZRqpAWhhcyhydWxlcy5sdCkgJiYgcnVsZXMubHQgPCBydWxlcy5ndGUgJiYgKHJ1bGVzLmx0IDw9IHRoaXMgJiYgdGhpcyA8IHJ1bGVzLmd0ZSk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAlcyBvciBsZXNzIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMuZ3RlLCBydWxlcy5sdF0pIDogJycKzQEKDnVpbnQ2NC5ndGVfbHRlGroBaGFzKHJ1bGVzLmx0ZSkgJiYgcnVsZXMubHRlID49IHJ1bGVzLmd0ZSAmJiAodGhpcyA+IHJ1bGVzLmx0ZSB8fCB0aGlzIDwgcnVsZXMuZ3RlKT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzIGFuZCBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJXMnLmZvcm1hdChbcnVsZXMuZ3RlLCBydWxlcy5sdGVdKSA6ICcnCtUBChh1aW50NjQuZ3RlX2x0ZV9leGNsdXNpdmUauAFoYXMocnVsZXMubHRlKSAmJiBydWxlcy5sdGUgPCBydWxlcy5ndGUgJiYgKHJ1bGVzLmx0ZSA8IHRoaXMgJiYgdGhpcyA8IHJ1bGVzLmd0ZSk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAlcyBvciBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJXMnLmZvcm1hdChbcnVsZXMuZ3RlLCBydWxlcy5sdGVdKSA6ICcnSAESegoCaW4YBiADKARCbsJIawppCgl1aW50NjQuaW4aXCEodGhpcyBpbiBnZXRGaWVsZChydWxlcywgJ2luJykpID8gJ211c3QgYmUgaW4gbGlzdCAlcycuZm9ybWF0KFtnZXRGaWVsZChydWxlcywgJ2luJyldKSA6ICcnEnEKBm5vdF9pbhgHIAMoBEJhwkheClwKDXVpbnQ2NC5ub3RfaW4aS3RoaXMgaW4gcnVsZXMubm90X2luID8gJ211c3Qgbm90IGJlIGluIGxpc3QgJXMnLmZvcm1hdChbcnVsZXMubm90X2luXSkgOiAnJxIsCgdleGFtcGxlGAggAygEQhvCSBgKFgoOdWludDY0LmV4YW1wbGUaBHRydWUqCQjoBxCAgICAAkILCglsZXNzX3RoYW5CDgoMZ3JlYXRlcl90aGFuIsIUCgtTSW50MzJSdWxlcxJ+CgVjb25zdBgBIAEoEUJvwkhsCmoKDHNpbnQzMi5jb25zdBpadGhpcyAhPSBnZXRGaWVsZChydWxlcywgJ2NvbnN0JykgPyAnbXVzdCBlcXVhbCAlcycuZm9ybWF0KFtnZXRGaWVsZChydWxlcywgJ2NvbnN0JyldKSA6ICcnEoUBCgJsdBgCIAEoEUJ3wkh0CnIKCXNpbnQzMi5sdBplIWhhcyhydWxlcy5ndGUpICYmICFoYXMocnVsZXMuZ3QpICYmIHRoaXMgPj0gcnVsZXMubHQ/ICdtdXN0IGJlIGxlc3MgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5sdF0pIDogJydIABKXAQoDbHRlGAMgASgRQocBwkiDAQqAAQoKc2ludDMyLmx0ZRpyIWhhcyhydWxlcy5ndGUpICYmICFoYXMocnVsZXMuZ3QpICYmIHRoaXMgPiBydWxlcy5sdGU/ICdtdXN0IGJlIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5sdGVdKSA6ICcnSAAS/gYKAmd0GAQgASgRQu8GwkjrBgp1CglzaW50MzIuZ3QaaCFoYXMocnVsZXMubHQpICYmICFoYXMocnVsZXMubHRlKSAmJiB0aGlzIDw9IHJ1bGVzLmd0PyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMuZ3RdKSA6ICcnCq4BCgxzaW50MzIuZ3RfbHQanQFoYXMocnVsZXMubHQpICYmIHJ1bGVzLmx0ID49IHJ1bGVzLmd0ICYmICh0aGlzID49IHJ1bGVzLmx0IHx8IHRoaXMgPD0gcnVsZXMuZ3QpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMgYW5kIGxlc3MgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5ndCwgcnVsZXMubHRdKSA6ICcnCrYBChZzaW50MzIuZ3RfbHRfZXhjbHVzaXZlGpsBaGFzKHJ1bGVzLmx0KSAmJiBydWxlcy5sdCA8IHJ1bGVzLmd0ICYmIChydWxlcy5sdCA8PSB0aGlzICYmIHRoaXMgPD0gcnVsZXMuZ3QpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMgb3IgbGVzcyB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0LCBydWxlcy5sdF0pIDogJycKvgEKDXNpbnQzMi5ndF9sdGUarAFoYXMocnVsZXMubHRlKSAmJiBydWxlcy5sdGUgPj0gcnVsZXMuZ3QgJiYgKHRoaXMgPiBydWxlcy5sdGUgfHwgdGhpcyA8PSBydWxlcy5ndCk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiAlcyBhbmQgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICVzJy5mb3JtYXQoW3J1bGVzLmd0LCBydWxlcy5sdGVdKSA6ICcnCsYBChdzaW50MzIuZ3RfbHRlX2V4Y2x1c2l2ZRqqAWhhcyhydWxlcy5sdGUpICYmIHJ1bGVzLmx0ZSA8IHJ1bGVzLmd0ICYmIChydWxlcy5sdGUgPCB0aGlzICYmIHRoaXMgPD0gcnVsZXMuZ3QpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMgb3IgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICVzJy5mb3JtYXQoW3J1bGVzLmd0LCBydWxlcy5sdGVdKSA6ICcnSAESygcKA2d0ZRgFIAEoEUK6B8JItgcKgwEKCnNpbnQzMi5ndGUadSFoYXMocnVsZXMubHQpICYmICFoYXMocnVsZXMubHRlKSAmJiB0aGlzIDwgcnVsZXMuZ3RlPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gJXMnLmZvcm1hdChbcnVsZXMuZ3RlXSkgOiAnJwq9AQoNc2ludDMyLmd0ZV9sdBqrAWhhcyhydWxlcy5sdCkgJiYgcnVsZXMubHQgPj0gcnVsZXMuZ3RlICYmICh0aGlzID49IHJ1bGVzLmx0IHx8IHRoaXMgPCBydWxlcy5ndGUpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gJXMgYW5kIGxlc3MgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5ndGUsIHJ1bGVzLmx0XSkgOiAnJwrFAQoXc2ludDMyLmd0ZV9sdF9leGNsdXNpdmUaqQFoYXMocnVsZXMubHQpICYmIHJ1bGVzLmx0IDwgcnVsZXMuZ3RlICYmIChydWxlcy5sdCA8PSB0aGlzICYmIHRoaXMgPCBydWxlcy5ndGUpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gJXMgb3IgbGVzcyB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0ZSwgcnVsZXMubHRdKSA6ICcnCs0BCg5zaW50MzIuZ3RlX2x0ZRq6AWhhcyhydWxlcy5sdGUpICYmIHJ1bGVzLmx0ZSA+PSBydWxlcy5ndGUgJiYgKHRoaXMgPiBydWxlcy5sdGUgfHwgdGhpcyA8IHJ1bGVzLmd0ZSk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAlcyBhbmQgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICVzJy5mb3JtYXQoW3J1bGVzLmd0ZSwgcnVsZXMubHRlXSkgOiAnJwrVAQoYc2ludDMyLmd0ZV9sdGVfZXhjbHVzaXZlGrgBaGFzKHJ1bGVzLmx0ZSkgJiYgcnVsZXMubHRlIDwgcnVsZXMuZ3RlICYmIChydWxlcy5sdGUgPCB0aGlzICYmIHRoaXMgPCBydWxlcy5ndGUpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gJXMgb3IgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICVzJy5mb3JtYXQoW3J1bGVzLmd0ZSwgcnVsZXMubHRlXSkgOiAnJ0gBEnoKAmluGAYgAygRQm7CSGsKaQoJc2ludDMyLmluGlwhKHRoaXMgaW4gZ2V0RmllbGQocnVsZXMsICdpbicpKSA/ICdtdXN0IGJlIGluIGxpc3QgJXMnLmZvcm1hdChbZ2V0RmllbGQocnVsZXMsICdpbicpXSkgOiAnJxJxCgZub3RfaW4YByADKBFCYcJIXgpcCg1zaW50MzIubm90X2luGkt0aGlzIGluIHJ1bGVzLm5vdF9pbiA/ICdtdXN0IG5vdCBiZSBpbiBsaXN0ICVzJy5mb3JtYXQoW3J1bGVzLm5vdF9pbl0pIDogJycSLAoHZXhhbXBsZRgIIAMoEUIbwkgYChYKDnNpbnQzMi5leGFtcGxlGgR0cnVlKgkI6AcQgICAgAJCCwoJbGVzc190aGFuQg4KDGdyZWF0ZXJfdGhhbiLCFAoLU0ludDY0UnVsZXMSfgoFY29uc3QYASABKBJCb8JIbApqCgxzaW50NjQuY29uc3QaWnRoaXMgIT0gZ2V0RmllbGQocnVsZXMsICdjb25zdCcpID8gJ211c3QgZXF1YWwgJXMnLmZvcm1hdChbZ2V0RmllbGQocnVsZXMsICdjb25zdCcpXSkgOiAnJxKFAQoCbHQYAiABKBJCd8JIdApyCglzaW50NjQubHQaZSFoYXMocnVsZXMuZ3RlKSAmJiAhaGFzKHJ1bGVzLmd0KSAmJiB0aGlzID49IHJ1bGVzLmx0PyAnbXVzdCBiZSBsZXNzIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMubHRdKSA6ICcnSAASlwEKA2x0ZRgDIAEoEkKHAcJIgwEKgAEKCnNpbnQ2NC5sdGUaciFoYXMocnVsZXMuZ3RlKSAmJiAhaGFzKHJ1bGVzLmd0KSAmJiB0aGlzID4gcnVsZXMubHRlPyAnbXVzdCBiZSBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJXMnLmZvcm1hdChbcnVsZXMubHRlXSkgOiAnJ0gAEv4GCgJndBgEIAEoEkLvBsJI6wYKdQoJc2ludDY0Lmd0GmghaGFzKHJ1bGVzLmx0KSAmJiAhaGFzKHJ1bGVzLmx0ZSkgJiYgdGhpcyA8PSBydWxlcy5ndD8gJ211c3QgYmUgZ3JlYXRlciB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0XSkgOiAnJwquAQoMc2ludDY0Lmd0X2x0Gp0BaGFzKHJ1bGVzLmx0KSAmJiBydWxlcy5sdCA+PSBydWxlcy5ndCAmJiAodGhpcyA+PSBydWxlcy5sdCB8fCB0aGlzIDw9IHJ1bGVzLmd0KT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuICVzIGFuZCBsZXNzIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMuZ3QsIHJ1bGVzLmx0XSkgOiAnJwq2AQoWc2ludDY0Lmd0X2x0X2V4Y2x1c2l2ZRqbAWhhcyhydWxlcy5sdCkgJiYgcnVsZXMubHQgPCBydWxlcy5ndCAmJiAocnVsZXMubHQgPD0gdGhpcyAmJiB0aGlzIDw9IHJ1bGVzLmd0KT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuICVzIG9yIGxlc3MgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5ndCwgcnVsZXMubHRdKSA6ICcnCr4BCg1zaW50NjQuZ3RfbHRlGqwBaGFzKHJ1bGVzLmx0ZSkgJiYgcnVsZXMubHRlID49IHJ1bGVzLmd0ICYmICh0aGlzID4gcnVsZXMubHRlIHx8IHRoaXMgPD0gcnVsZXMuZ3QpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMgYW5kIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndCwgcnVsZXMubHRlXSkgOiAnJwrGAQoXc2ludDY0Lmd0X2x0ZV9leGNsdXNpdmUaqgFoYXMocnVsZXMubHRlKSAmJiBydWxlcy5sdGUgPCBydWxlcy5ndCAmJiAocnVsZXMubHRlIDwgdGhpcyAmJiB0aGlzIDw9IHJ1bGVzLmd0KT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuICVzIG9yIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndCwgcnVsZXMubHRlXSkgOiAnJ0gBEsoHCgNndGUYBSABKBJCugfCSLYHCoMBCgpzaW50NjQuZ3RlGnUhaGFzKHJ1bGVzLmx0KSAmJiAhaGFzKHJ1bGVzLmx0ZSkgJiYgdGhpcyA8IHJ1bGVzLmd0ZT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzJy5mb3JtYXQoW3J1bGVzLmd0ZV0pIDogJycKvQEKDXNpbnQ2NC5ndGVfbHQaqwFoYXMocnVsZXMubHQpICYmIHJ1bGVzLmx0ID49IHJ1bGVzLmd0ZSAmJiAodGhpcyA+PSBydWxlcy5sdCB8fCB0aGlzIDwgcnVsZXMuZ3RlKT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzIGFuZCBsZXNzIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMuZ3RlLCBydWxlcy5sdF0pIDogJycKxQEKF3NpbnQ2NC5ndGVfbHRfZXhjbHVzaXZlGqkBaGFzKHJ1bGVzLmx0KSAmJiBydWxlcy5sdCA8IHJ1bGVzLmd0ZSAmJiAocnVsZXMubHQgPD0gdGhpcyAmJiB0aGlzIDwgcnVsZXMuZ3RlKT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzIG9yIGxlc3MgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5ndGUsIHJ1bGVzLmx0XSkgOiAnJwrNAQoOc2ludDY0Lmd0ZV9sdGUaugFoYXMocnVsZXMubHRlKSAmJiBydWxlcy5sdGUgPj0gcnVsZXMuZ3RlICYmICh0aGlzID4gcnVsZXMubHRlIHx8IHRoaXMgPCBydWxlcy5ndGUpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gJXMgYW5kIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndGUsIHJ1bGVzLmx0ZV0pIDogJycK1QEKGHNpbnQ2NC5ndGVfbHRlX2V4Y2x1c2l2ZRq4AWhhcyhydWxlcy5sdGUpICYmIHJ1bGVzLmx0ZSA8IHJ1bGVzLmd0ZSAmJiAocnVsZXMubHRlIDwgdGhpcyAmJiB0aGlzIDwgcnVsZXMuZ3RlKT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzIG9yIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndGUsIHJ1bGVzLmx0ZV0pIDogJydIARJ6CgJpbhgGIAMoEkJuwkhrCmkKCXNpbnQ2NC5pbhpcISh0aGlzIGluIGdldEZpZWxkKHJ1bGVzLCAnaW4nKSkgPyAnbXVzdCBiZSBpbiBsaXN0ICVzJy5mb3JtYXQoW2dldEZpZWxkKHJ1bGVzLCAnaW4nKV0pIDogJycScQoGbm90X2luGAcgAygSQmHCSF4KXAoNc2ludDY0Lm5vdF9pbhpLdGhpcyBpbiBydWxlcy5ub3RfaW4gPyAnbXVzdCBub3QgYmUgaW4gbGlzdCAlcycuZm9ybWF0KFtydWxlcy5ub3RfaW5dKSA6ICcnEiwKB2V4YW1wbGUYCCADKBJCG8JIGAoWCg5zaW50NjQuZXhhbXBsZRoEdHJ1ZSoJCOgHEICAgIACQgsKCWxlc3NfdGhhbkIOCgxncmVhdGVyX3RoYW4i0xQKDEZpeGVkMzJSdWxlcxJ/CgVjb25zdBgBIAEoB0JwwkhtCmsKDWZpeGVkMzIuY29uc3QaWnRoaXMgIT0gZ2V0RmllbGQocnVsZXMsICdjb25zdCcpID8gJ211c3QgZXF1YWwgJXMnLmZvcm1hdChbZ2V0RmllbGQocnVsZXMsICdjb25zdCcpXSkgOiAnJxKGAQoCbHQYAiABKAdCeMJIdQpzCgpmaXhlZDMyLmx0GmUhaGFzKHJ1bGVzLmd0ZSkgJiYgIWhhcyhydWxlcy5ndCkgJiYgdGhpcyA+PSBydWxlcy5sdD8gJ211c3QgYmUgbGVzcyB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmx0XSkgOiAnJ0gAEpgBCgNsdGUYAyABKAdCiAHCSIQBCoEBCgtmaXhlZDMyLmx0ZRpyIWhhcyhydWxlcy5ndGUpICYmICFoYXMocnVsZXMuZ3QpICYmIHRoaXMgPiBydWxlcy5sdGU/ICdtdXN0IGJlIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5sdGVdKSA6ICcnSAASgwcKAmd0GAQgASgHQvQGwkjwBgp2CgpmaXhlZDMyLmd0GmghaGFzKHJ1bGVzLmx0KSAmJiAhaGFzKHJ1bGVzLmx0ZSkgJiYgdGhpcyA8PSBydWxlcy5ndD8gJ211c3QgYmUgZ3JlYXRlciB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0XSkgOiAnJwqvAQoNZml4ZWQzMi5ndF9sdBqdAWhhcyhydWxlcy5sdCkgJiYgcnVsZXMubHQgPj0gcnVsZXMuZ3QgJiYgKHRoaXMgPj0gcnVsZXMubHQgfHwgdGhpcyA8PSBydWxlcy5ndCk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiAlcyBhbmQgbGVzcyB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0LCBydWxlcy5sdF0pIDogJycKtwEKF2ZpeGVkMzIuZ3RfbHRfZXhjbHVzaXZlGpsBaGFzKHJ1bGVzLmx0KSAmJiBydWxlcy5sdCA8IHJ1bGVzLmd0ICYmIChydWxlcy5sdCA8PSB0aGlzICYmIHRoaXMgPD0gcnVsZXMuZ3QpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMgb3IgbGVzcyB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0LCBydWxlcy5sdF0pIDogJycKvwEKDmZpeGVkMzIuZ3RfbHRlGqwBaGFzKHJ1bGVzLmx0ZSkgJiYgcnVsZXMubHRlID49IHJ1bGVzLmd0ICYmICh0aGlzID4gcnVsZXMubHRlIHx8IHRoaXMgPD0gcnVsZXMuZ3QpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMgYW5kIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndCwgcnVsZXMubHRlXSkgOiAnJwrHAQoYZml4ZWQzMi5ndF9sdGVfZXhjbHVzaXZlGqoBaGFzKHJ1bGVzLmx0ZSkgJiYgcnVsZXMubHRlIDwgcnVsZXMuZ3QgJiYgKHJ1bGVzLmx0ZSA8IHRoaXMgJiYgdGhpcyA8PSBydWxlcy5ndCk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiAlcyBvciBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJXMnLmZvcm1hdChbcnVsZXMuZ3QsIHJ1bGVzLmx0ZV0pIDogJydIARLPBwoDZ3RlGAUgASgHQr8Hwki7BwqEAQoLZml4ZWQzMi5ndGUadSFoYXMocnVsZXMubHQpICYmICFoYXMocnVsZXMubHRlKSAmJiB0aGlzIDwgcnVsZXMuZ3RlPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gJXMnLmZvcm1hdChbcnVsZXMuZ3RlXSkgOiAnJwq+AQoOZml4ZWQzMi5ndGVfbHQaqwFoYXMocnVsZXMubHQpICYmIHJ1bGVzLmx0ID49IHJ1bGVzLmd0ZSAmJiAodGhpcyA+PSBydWxlcy5sdCB8fCB0aGlzIDwgcnVsZXMuZ3RlKT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzIGFuZCBsZXNzIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMuZ3RlLCBydWxlcy5sdF0pIDogJycKxgEKGGZpeGVkMzIuZ3RlX2x0X2V4Y2x1c2l2ZRqpAWhhcyhydWxlcy5sdCkgJiYgcnVsZXMubHQgPCBydWxlcy5ndGUgJiYgKHJ1bGVzLmx0IDw9IHRoaXMgJiYgdGhpcyA8IHJ1bGVzLmd0ZSk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAlcyBvciBsZXNzIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMuZ3RlLCBydWxlcy5sdF0pIDogJycKzgEKD2ZpeGVkMzIuZ3RlX2x0ZRq6AWhhcyhydWxlcy5sdGUpICYmIHJ1bGVzLmx0ZSA+PSBydWxlcy5ndGUgJiYgKHRoaXMgPiBydWxlcy5sdGUgfHwgdGhpcyA8IHJ1bGVzLmd0ZSk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAlcyBhbmQgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICVzJy5mb3JtYXQoW3J1bGVzLmd0ZSwgcnVsZXMubHRlXSkgOiAnJwrWAQoZZml4ZWQzMi5ndGVfbHRlX2V4Y2x1c2l2ZRq4AWhhcyhydWxlcy5sdGUpICYmIHJ1bGVzLmx0ZSA8IHJ1bGVzLmd0ZSAmJiAocnVsZXMubHRlIDwgdGhpcyAmJiB0aGlzIDwgcnVsZXMuZ3RlKT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzIG9yIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndGUsIHJ1bGVzLmx0ZV0pIDogJydIARJ7CgJpbhgGIAMoB0JvwkhsCmoKCmZpeGVkMzIuaW4aXCEodGhpcyBpbiBnZXRGaWVsZChydWxlcywgJ2luJykpID8gJ211c3QgYmUgaW4gbGlzdCAlcycuZm9ybWF0KFtnZXRGaWVsZChydWxlcywgJ2luJyldKSA6ICcnEnIKBm5vdF9pbhgHIAMoB0JiwkhfCl0KDmZpeGVkMzIubm90X2luGkt0aGlzIGluIHJ1bGVzLm5vdF9pbiA/ICdtdXN0IG5vdCBiZSBpbiBsaXN0ICVzJy5mb3JtYXQoW3J1bGVzLm5vdF9pbl0pIDogJycSLQoHZXhhbXBsZRgIIAMoB0IcwkgZChcKD2ZpeGVkMzIuZXhhbXBsZRoEdHJ1ZSoJCOgHEICAgIACQgsKCWxlc3NfdGhhbkIOCgxncmVhdGVyX3RoYW4i0xQKDEZpeGVkNjRSdWxlcxJ/CgVjb25zdBgBIAEoBkJwwkhtCmsKDWZpeGVkNjQuY29uc3QaWnRoaXMgIT0gZ2V0RmllbGQocnVsZXMsICdjb25zdCcpID8gJ211c3QgZXF1YWwgJXMnLmZvcm1hdChbZ2V0RmllbGQocnVsZXMsICdjb25zdCcpXSkgOiAnJxKGAQoCbHQYAiABKAZCeMJIdQpzCgpmaXhlZDY0Lmx0GmUhaGFzKHJ1bGVzLmd0ZSkgJiYgIWhhcyhydWxlcy5ndCkgJiYgdGhpcyA+PSBydWxlcy5sdD8gJ211c3QgYmUgbGVzcyB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmx0XSkgOiAnJ0gAEpgBCgNsdGUYAyABKAZCiAHCSIQBCoEBCgtmaXhlZDY0Lmx0ZRpyIWhhcyhydWxlcy5ndGUpICYmICFoYXMocnVsZXMuZ3QpICYmIHRoaXMgPiBydWxlcy5sdGU/ICdtdXN0IGJlIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5sdGVdKSA6ICcnSAASgwcKAmd0GAQgASgGQvQGwkjwBgp2CgpmaXhlZDY0Lmd0GmghaGFzKHJ1bGVzLmx0KSAmJiAhaGFzKHJ1bGVzLmx0ZSkgJiYgdGhpcyA8PSBydWxlcy5ndD8gJ211c3QgYmUgZ3JlYXRlciB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0XSkgOiAnJwqvAQoNZml4ZWQ2NC5ndF9sdBqdAWhhcyhydWxlcy5sdCkgJiYgcnVsZXMubHQgPj0gcnVsZXMuZ3QgJiYgKHRoaXMgPj0gcnVsZXMubHQgfHwgdGhpcyA8PSBydWxlcy5ndCk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiAlcyBhbmQgbGVzcyB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0LCBydWxlcy5sdF0pIDogJycKtwEKF2ZpeGVkNjQuZ3RfbHRfZXhjbHVzaXZlGpsBaGFzKHJ1bGVzLmx0KSAmJiBydWxlcy5sdCA8IHJ1bGVzLmd0ICYmIChydWxlcy5sdCA8PSB0aGlzICYmIHRoaXMgPD0gcnVsZXMuZ3QpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMgb3IgbGVzcyB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0LCBydWxlcy5sdF0pIDogJycKvwEKDmZpeGVkNjQuZ3RfbHRlGqwBaGFzKHJ1bGVzLmx0ZSkgJiYgcnVsZXMubHRlID49IHJ1bGVzLmd0ICYmICh0aGlzID4gcnVsZXMubHRlIHx8IHRoaXMgPD0gcnVsZXMuZ3QpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMgYW5kIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndCwgcnVsZXMubHRlXSkgOiAnJwrHAQoYZml4ZWQ2NC5ndF9sdGVfZXhjbHVzaXZlGqoBaGFzKHJ1bGVzLmx0ZSkgJiYgcnVsZXMubHRlIDwgcnVsZXMuZ3QgJiYgKHJ1bGVzLmx0ZSA8IHRoaXMgJiYgdGhpcyA8PSBydWxlcy5ndCk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiAlcyBvciBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJXMnLmZvcm1hdChbcnVsZXMuZ3QsIHJ1bGVzLmx0ZV0pIDogJydIARLPBwoDZ3RlGAUgASgGQr8Hwki7BwqEAQoLZml4ZWQ2NC5ndGUadSFoYXMocnVsZXMubHQpICYmICFoYXMocnVsZXMubHRlKSAmJiB0aGlzIDwgcnVsZXMuZ3RlPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gJXMnLmZvcm1hdChbcnVsZXMuZ3RlXSkgOiAnJwq+AQoOZml4ZWQ2NC5ndGVfbHQaqwFoYXMocnVsZXMubHQpICYmIHJ1bGVzLmx0ID49IHJ1bGVzLmd0ZSAmJiAodGhpcyA+PSBydWxlcy5sdCB8fCB0aGlzIDwgcnVsZXMuZ3RlKT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzIGFuZCBsZXNzIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMuZ3RlLCBydWxlcy5sdF0pIDogJycKxgEKGGZpeGVkNjQuZ3RlX2x0X2V4Y2x1c2l2ZRqpAWhhcyhydWxlcy5sdCkgJiYgcnVsZXMubHQgPCBydWxlcy5ndGUgJiYgKHJ1bGVzLmx0IDw9IHRoaXMgJiYgdGhpcyA8IHJ1bGVzLmd0ZSk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAlcyBvciBsZXNzIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMuZ3RlLCBydWxlcy5sdF0pIDogJycKzgEKD2ZpeGVkNjQuZ3RlX2x0ZRq6AWhhcyhydWxlcy5sdGUpICYmIHJ1bGVzLmx0ZSA+PSBydWxlcy5ndGUgJiYgKHRoaXMgPiBydWxlcy5sdGUgfHwgdGhpcyA8IHJ1bGVzLmd0ZSk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAlcyBhbmQgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICVzJy5mb3JtYXQoW3J1bGVzLmd0ZSwgcnVsZXMubHRlXSkgOiAnJwrWAQoZZml4ZWQ2NC5ndGVfbHRlX2V4Y2x1c2l2ZRq4AWhhcyhydWxlcy5sdGUpICYmIHJ1bGVzLmx0ZSA8IHJ1bGVzLmd0ZSAmJiAocnVsZXMubHRlIDwgdGhpcyAmJiB0aGlzIDwgcnVsZXMuZ3RlKT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzIG9yIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndGUsIHJ1bGVzLmx0ZV0pIDogJydIARJ7CgJpbhgGIAMoBkJvwkhsCmoKCmZpeGVkNjQuaW4aXCEodGhpcyBpbiBnZXRGaWVsZChydWxlcywgJ2luJykpID8gJ211c3QgYmUgaW4gbGlzdCAlcycuZm9ybWF0KFtnZXRGaWVsZChydWxlcywgJ2luJyldKSA6ICcnEnIKBm5vdF9pbhgHIAMoBkJiwkhfCl0KDmZpeGVkNjQubm90X2luGkt0aGlzIGluIHJ1bGVzLm5vdF9pbiA/ICdtdXN0IG5vdCBiZSBpbiBsaXN0ICVzJy5mb3JtYXQoW3J1bGVzLm5vdF9pbl0pIDogJycSLQoHZXhhbXBsZRgIIAMoBkIcwkgZChcKD2ZpeGVkNjQuZXhhbXBsZRoEdHJ1ZSoJCOgHEICAgIACQgsKCWxlc3NfdGhhbkIOCgxncmVhdGVyX3RoYW4i5RQKDVNGaXhlZDMyUnVsZXMSgAEKBWNvbnN0GAEgASgPQnHCSG4KbAoOc2ZpeGVkMzIuY29uc3QaWnRoaXMgIT0gZ2V0RmllbGQocnVsZXMsICdjb25zdCcpID8gJ211c3QgZXF1YWwgJXMnLmZvcm1hdChbZ2V0RmllbGQocnVsZXMsICdjb25zdCcpXSkgOiAnJxKHAQoCbHQYAiABKA9CecJIdgp0CgtzZml4ZWQzMi5sdBplIWhhcyhydWxlcy5ndGUpICYmICFoYXMocnVsZXMuZ3QpICYmIHRoaXMgPj0gcnVsZXMubHQ/ICdtdXN0IGJlIGxlc3MgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5sdF0pIDogJydIABKZAQoDbHRlGAMgASgPQokBwkiFAQqCAQoMc2ZpeGVkMzIubHRlGnIhaGFzKHJ1bGVzLmd0ZSkgJiYgIWhhcyhydWxlcy5ndCkgJiYgdGhpcyA+IHJ1bGVzLmx0ZT8gJ211c3QgYmUgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICVzJy5mb3JtYXQoW3J1bGVzLmx0ZV0pIDogJydIABKIBwoCZ3QYBCABKA9C+QbCSPUGCncKC3NmaXhlZDMyLmd0GmghaGFzKHJ1bGVzLmx0KSAmJiAhaGFzKHJ1bGVzLmx0ZSkgJiYgdGhpcyA8PSBydWxlcy5ndD8gJ211c3QgYmUgZ3JlYXRlciB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0XSkgOiAnJwqwAQoOc2ZpeGVkMzIuZ3RfbHQanQFoYXMocnVsZXMubHQpICYmIHJ1bGVzLmx0ID49IHJ1bGVzLmd0ICYmICh0aGlzID49IHJ1bGVzLmx0IHx8IHRoaXMgPD0gcnVsZXMuZ3QpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMgYW5kIGxlc3MgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5ndCwgcnVsZXMubHRdKSA6ICcnCrgBChhzZml4ZWQzMi5ndF9sdF9leGNsdXNpdmUamwFoYXMocnVsZXMubHQpICYmIHJ1bGVzLmx0IDwgcnVsZXMuZ3QgJiYgKHJ1bGVzLmx0IDw9IHRoaXMgJiYgdGhpcyA8PSBydWxlcy5ndCk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiAlcyBvciBsZXNzIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMuZ3QsIHJ1bGVzLmx0XSkgOiAnJwrAAQoPc2ZpeGVkMzIuZ3RfbHRlGqwBaGFzKHJ1bGVzLmx0ZSkgJiYgcnVsZXMubHRlID49IHJ1bGVzLmd0ICYmICh0aGlzID4gcnVsZXMubHRlIHx8IHRoaXMgPD0gcnVsZXMuZ3QpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMgYW5kIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndCwgcnVsZXMubHRlXSkgOiAnJwrIAQoZc2ZpeGVkMzIuZ3RfbHRlX2V4Y2x1c2l2ZRqqAWhhcyhydWxlcy5sdGUpICYmIHJ1bGVzLmx0ZSA8IHJ1bGVzLmd0ICYmIChydWxlcy5sdGUgPCB0aGlzICYmIHRoaXMgPD0gcnVsZXMuZ3QpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMgb3IgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICVzJy5mb3JtYXQoW3J1bGVzLmd0LCBydWxlcy5sdGVdKSA6ICcnSAES1AcKA2d0ZRgFIAEoD0LEB8JIwAcKhQEKDHNmaXhlZDMyLmd0ZRp1IWhhcyhydWxlcy5sdCkgJiYgIWhhcyhydWxlcy5sdGUpICYmIHRoaXMgPCBydWxlcy5ndGU/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndGVdKSA6ICcnCr8BCg9zZml4ZWQzMi5ndGVfbHQaqwFoYXMocnVsZXMubHQpICYmIHJ1bGVzLmx0ID49IHJ1bGVzLmd0ZSAmJiAodGhpcyA+PSBydWxlcy5sdCB8fCB0aGlzIDwgcnVsZXMuZ3RlKT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzIGFuZCBsZXNzIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMuZ3RlLCBydWxlcy5sdF0pIDogJycKxwEKGXNmaXhlZDMyLmd0ZV9sdF9leGNsdXNpdmUaqQFoYXMocnVsZXMubHQpICYmIHJ1bGVzLmx0IDwgcnVsZXMuZ3RlICYmIChydWxlcy5sdCA8PSB0aGlzICYmIHRoaXMgPCBydWxlcy5ndGUpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gJXMgb3IgbGVzcyB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0ZSwgcnVsZXMubHRdKSA6ICcnCs8BChBzZml4ZWQzMi5ndGVfbHRlGroBaGFzKHJ1bGVzLmx0ZSkgJiYgcnVsZXMubHRlID49IHJ1bGVzLmd0ZSAmJiAodGhpcyA+IHJ1bGVzLmx0ZSB8fCB0aGlzIDwgcnVsZXMuZ3RlKT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzIGFuZCBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJXMnLmZvcm1hdChbcnVsZXMuZ3RlLCBydWxlcy5sdGVdKSA6ICcnCtcBChpzZml4ZWQzMi5ndGVfbHRlX2V4Y2x1c2l2ZRq4AWhhcyhydWxlcy5sdGUpICYmIHJ1bGVzLmx0ZSA8IHJ1bGVzLmd0ZSAmJiAocnVsZXMubHRlIDwgdGhpcyAmJiB0aGlzIDwgcnVsZXMuZ3RlKT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzIG9yIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndGUsIHJ1bGVzLmx0ZV0pIDogJydIARJ8CgJpbhgGIAMoD0JwwkhtCmsKC3NmaXhlZDMyLmluGlwhKHRoaXMgaW4gZ2V0RmllbGQocnVsZXMsICdpbicpKSA/ICdtdXN0IGJlIGluIGxpc3QgJXMnLmZvcm1hdChbZ2V0RmllbGQocnVsZXMsICdpbicpXSkgOiAnJxJzCgZub3RfaW4YByADKA9CY8JIYApeCg9zZml4ZWQzMi5ub3RfaW4aS3RoaXMgaW4gcnVsZXMubm90X2luID8gJ211c3Qgbm90IGJlIGluIGxpc3QgJXMnLmZvcm1hdChbcnVsZXMubm90X2luXSkgOiAnJxIuCgdleGFtcGxlGAggAygPQh3CSBoKGAoQc2ZpeGVkMzIuZXhhbXBsZRoEdHJ1ZSoJCOgHEICAgIACQgsKCWxlc3NfdGhhbkIOCgxncmVhdGVyX3RoYW4i5RQKDVNGaXhlZDY0UnVsZXMSgAEKBWNvbnN0GAEgASgQQnHCSG4KbAoOc2ZpeGVkNjQuY29uc3QaWnRoaXMgIT0gZ2V0RmllbGQocnVsZXMsICdjb25zdCcpID8gJ211c3QgZXF1YWwgJXMnLmZvcm1hdChbZ2V0RmllbGQocnVsZXMsICdjb25zdCcpXSkgOiAnJxKHAQoCbHQYAiABKBBCecJIdgp0CgtzZml4ZWQ2NC5sdBplIWhhcyhydWxlcy5ndGUpICYmICFoYXMocnVsZXMuZ3QpICYmIHRoaXMgPj0gcnVsZXMubHQ/ICdtdXN0IGJlIGxlc3MgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5sdF0pIDogJydIABKZAQoDbHRlGAMgASgQQokBwkiFAQqCAQoMc2ZpeGVkNjQubHRlGnIhaGFzKHJ1bGVzLmd0ZSkgJiYgIWhhcyhydWxlcy5ndCkgJiYgdGhpcyA+IHJ1bGVzLmx0ZT8gJ211c3QgYmUgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICVzJy5mb3JtYXQoW3J1bGVzLmx0ZV0pIDogJydIABKIBwoCZ3QYBCABKBBC+QbCSPUGCncKC3NmaXhlZDY0Lmd0GmghaGFzKHJ1bGVzLmx0KSAmJiAhaGFzKHJ1bGVzLmx0ZSkgJiYgdGhpcyA8PSBydWxlcy5ndD8gJ211c3QgYmUgZ3JlYXRlciB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0XSkgOiAnJwqwAQoOc2ZpeGVkNjQuZ3RfbHQanQFoYXMocnVsZXMubHQpICYmIHJ1bGVzLmx0ID49IHJ1bGVzLmd0ICYmICh0aGlzID49IHJ1bGVzLmx0IHx8IHRoaXMgPD0gcnVsZXMuZ3QpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMgYW5kIGxlc3MgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5ndCwgcnVsZXMubHRdKSA6ICcnCrgBChhzZml4ZWQ2NC5ndF9sdF9leGNsdXNpdmUamwFoYXMocnVsZXMubHQpICYmIHJ1bGVzLmx0IDwgcnVsZXMuZ3QgJiYgKHJ1bGVzLmx0IDw9IHRoaXMgJiYgdGhpcyA8PSBydWxlcy5ndCk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiAlcyBvciBsZXNzIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMuZ3QsIHJ1bGVzLmx0XSkgOiAnJwrAAQoPc2ZpeGVkNjQuZ3RfbHRlGqwBaGFzKHJ1bGVzLmx0ZSkgJiYgcnVsZXMubHRlID49IHJ1bGVzLmd0ICYmICh0aGlzID4gcnVsZXMubHRlIHx8IHRoaXMgPD0gcnVsZXMuZ3QpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMgYW5kIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndCwgcnVsZXMubHRlXSkgOiAnJwrIAQoZc2ZpeGVkNjQuZ3RfbHRlX2V4Y2x1c2l2ZRqqAWhhcyhydWxlcy5sdGUpICYmIHJ1bGVzLmx0ZSA8IHJ1bGVzLmd0ICYmIChydWxlcy5sdGUgPCB0aGlzICYmIHRoaXMgPD0gcnVsZXMuZ3QpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMgb3IgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICVzJy5mb3JtYXQoW3J1bGVzLmd0LCBydWxlcy5sdGVdKSA6ICcnSAES1AcKA2d0ZRgFIAEoEELEB8JIwAcKhQEKDHNmaXhlZDY0Lmd0ZRp1IWhhcyhydWxlcy5sdCkgJiYgIWhhcyhydWxlcy5sdGUpICYmIHRoaXMgPCBydWxlcy5ndGU/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndGVdKSA6ICcnCr8BCg9zZml4ZWQ2NC5ndGVfbHQaqwFoYXMocnVsZXMubHQpICYmIHJ1bGVzLmx0ID49IHJ1bGVzLmd0ZSAmJiAodGhpcyA+PSBydWxlcy5sdCB8fCB0aGlzIDwgcnVsZXMuZ3RlKT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzIGFuZCBsZXNzIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMuZ3RlLCBydWxlcy5sdF0pIDogJycKxwEKGXNmaXhlZDY0Lmd0ZV9sdF9leGNsdXNpdmUaqQFoYXMocnVsZXMubHQpICYmIHJ1bGVzLmx0IDwgcnVsZXMuZ3RlICYmIChydWxlcy5sdCA8PSB0aGlzICYmIHRoaXMgPCBydWxlcy5ndGUpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gJXMgb3IgbGVzcyB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0ZSwgcnVsZXMubHRdKSA6ICcnCs8BChBzZml4ZWQ2NC5ndGVfbHRlGroBaGFzKHJ1bGVzLmx0ZSkgJiYgcnVsZXMubHRlID49IHJ1bGVzLmd0ZSAmJiAodGhpcyA+IHJ1bGVzLmx0ZSB8fCB0aGlzIDwgcnVsZXMuZ3RlKT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzIGFuZCBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJXMnLmZvcm1hdChbcnVsZXMuZ3RlLCBydWxlcy5sdGVdKSA6ICcnCtcBChpzZml4ZWQ2NC5ndGVfbHRlX2V4Y2x1c2l2ZRq4AWhhcyhydWxlcy5sdGUpICYmIHJ1bGVzLmx0ZSA8IHJ1bGVzLmd0ZSAmJiAocnVsZXMubHRlIDwgdGhpcyAmJiB0aGlzIDwgcnVsZXMuZ3RlKT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzIG9yIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndGUsIHJ1bGVzLmx0ZV0pIDogJydIARJ8CgJpbhgGIAMoEEJwwkhtCmsKC3NmaXhlZDY0LmluGlwhKHRoaXMgaW4gZ2V0RmllbGQocnVsZXMsICdpbicpKSA/ICdtdXN0IGJlIGluIGxpc3QgJXMnLmZvcm1hdChbZ2V0RmllbGQocnVsZXMsICdpbicpXSkgOiAnJxJzCgZub3RfaW4YByADKBBCY8JIYApeCg9zZml4ZWQ2NC5ub3RfaW4aS3RoaXMgaW4gcnVsZXMubm90X2luID8gJ211c3Qgbm90IGJlIGluIGxpc3QgJXMnLmZvcm1hdChbcnVsZXMubm90X2luXSkgOiAnJxIuCgdleGFtcGxlGAggAygQQh3CSBoKGAoQc2ZpeGVkNjQuZXhhbXBsZRoEdHJ1ZSoJCOgHEICAgIACQgsKCWxlc3NfdGhhbkIOCgxncmVhdGVyX3RoYW4iwAEKCUJvb2xSdWxlcxJ8CgVjb25zdBgBIAEoCEJtwkhqCmgKCmJvb2wuY29uc3QaWnRoaXMgIT0gZ2V0RmllbGQocnVsZXMsICdjb25zdCcpID8gJ211c3QgZXF1YWwgJXMnLmZvcm1hdChbZ2V0RmllbGQocnVsZXMsICdjb25zdCcpXSkgOiAnJxIqCgdleGFtcGxlGAIgAygIQhnCSBYKFAoMYm9vbC5leGFtcGxlGgR0cnVlKgkI6AcQgICAgAIi6jwKC1N0cmluZ1J1bGVzEoABCgVjb25zdBgBIAEoCUJxwkhuCmwKDHN0cmluZy5jb25zdBpcdGhpcyAhPSBnZXRGaWVsZChydWxlcywgJ2NvbnN0JykgPyAnbXVzdCBlcXVhbCBgJXNgJy5mb3JtYXQoW2dldEZpZWxkKHJ1bGVzLCAnY29uc3QnKV0pIDogJycScQoDbGVuGBMgASgEQmTCSGEKXwoKc3RyaW5nLmxlbhpRdWludCh0aGlzLnNpemUoKSkgIT0gcnVsZXMubGVuID8gJ211c3QgYmUgJXMgY2hhcmFjdGVycycuZm9ybWF0KFtydWxlcy5sZW5dKSA6ICcnEokBCgdtaW5fbGVuGAIgASgEQnjCSHUKcwoOc3RyaW5nLm1pbl9sZW4aYXVpbnQodGhpcy5zaXplKCkpIDwgcnVsZXMubWluX2xlbiA/ICdtdXN0IGJlIGF0IGxlYXN0ICVzIGNoYXJhY3RlcnMnLmZvcm1hdChbcnVsZXMubWluX2xlbl0pIDogJycSiAEKB21heF9sZW4YAyABKARCd8JIdApyCg5zdHJpbmcubWF4X2xlbhpgdWludCh0aGlzLnNpemUoKSkgPiBydWxlcy5tYXhfbGVuID8gJ211c3QgYmUgYXQgbW9zdCAlcyBjaGFyYWN0ZXJzJy5mb3JtYXQoW3J1bGVzLm1heF9sZW5dKSA6ICcnEosBCglsZW5fYnl0ZXMYFCABKARCeMJIdQpzChBzdHJpbmcubGVuX2J5dGVzGl91aW50KGJ5dGVzKHRoaXMpLnNpemUoKSkgIT0gcnVsZXMubGVuX2J5dGVzID8gJ211c3QgYmUgJXMgYnl0ZXMnLmZvcm1hdChbcnVsZXMubGVuX2J5dGVzXSkgOiAnJxKUAQoJbWluX2J5dGVzGAQgASgEQoABwkh9CnsKEHN0cmluZy5taW5fYnl0ZXMaZ3VpbnQoYnl0ZXModGhpcykuc2l6ZSgpKSA8IHJ1bGVzLm1pbl9ieXRlcyA/ICdtdXN0IGJlIGF0IGxlYXN0ICVzIGJ5dGVzJy5mb3JtYXQoW3J1bGVzLm1pbl9ieXRlc10pIDogJycSkgEKCW1heF9ieXRlcxgFIAEoBEJ/wkh8CnoKEHN0cmluZy5tYXhfYnl0ZXMaZnVpbnQoYnl0ZXModGhpcykuc2l6ZSgpKSA+IHJ1bGVzLm1heF9ieXRlcyA/ICdtdXN0IGJlIGF0IG1vc3QgJXMgYnl0ZXMnLmZvcm1hdChbcnVsZXMubWF4X2J5dGVzXSkgOiAnJxKHAQoHcGF0dGVybhgGIAEoCUJ2wkhzCnEKDnN0cmluZy5wYXR0ZXJuGl8hdGhpcy5tYXRjaGVzKHJ1bGVzLnBhdHRlcm4pID8gJ2RvZXMgbm90IG1hdGNoIHJlZ2V4IHBhdHRlcm4gYCVzYCcuZm9ybWF0KFtydWxlcy5wYXR0ZXJuXSkgOiAnJxJ+CgZwcmVmaXgYByABKAlCbsJIawppCg1zdHJpbmcucHJlZml4GlghdGhpcy5zdGFydHNXaXRoKHJ1bGVzLnByZWZpeCkgPyAnZG9lcyBub3QgaGF2ZSBwcmVmaXggYCVzYCcuZm9ybWF0KFtydWxlcy5wcmVmaXhdKSA6ICcnEnwKBnN1ZmZpeBgIIAEoCUJswkhpCmcKDXN0cmluZy5zdWZmaXgaViF0aGlzLmVuZHNXaXRoKHJ1bGVzLnN1ZmZpeCkgPyAnZG9lcyBub3QgaGF2ZSBzdWZmaXggYCVzYCcuZm9ybWF0KFtydWxlcy5zdWZmaXhdKSA6ICcnEooBCghjb250YWlucxgJIAEoCUJ4wkh1CnMKD3N0cmluZy5jb250YWlucxpgIXRoaXMuY29udGFpbnMocnVsZXMuY29udGFpbnMpID8gJ2RvZXMgbm90IGNvbnRhaW4gc3Vic3RyaW5nIGAlc2AnLmZvcm1hdChbcnVsZXMuY29udGFpbnNdKSA6ICcnEpEBCgxub3RfY29udGFpbnMYFyABKAlCe8JIeAp2ChNzdHJpbmcubm90X2NvbnRhaW5zGl90aGlzLmNvbnRhaW5zKHJ1bGVzLm5vdF9jb250YWlucykgPyAnY29udGFpbnMgc3Vic3RyaW5nIGAlc2AnLmZvcm1hdChbcnVsZXMubm90X2NvbnRhaW5zXSkgOiAnJxJ6CgJpbhgKIAMoCUJuwkhrCmkKCXN0cmluZy5pbhpcISh0aGlzIGluIGdldEZpZWxkKHJ1bGVzLCAnaW4nKSkgPyAnbXVzdCBiZSBpbiBsaXN0ICVzJy5mb3JtYXQoW2dldEZpZWxkKHJ1bGVzLCAnaW4nKV0pIDogJycScQoGbm90X2luGAsgAygJQmHCSF4KXAoNc3RyaW5nLm5vdF9pbhpLdGhpcyBpbiBydWxlcy5ub3RfaW4gPyAnbXVzdCBub3QgYmUgaW4gbGlzdCAlcycuZm9ybWF0KFtydWxlcy5ub3RfaW5dKSA6ICcnEtkBCgVlbWFpbBgMIAEoCELHAcJIwwEKWwoMc3RyaW5nLmVtYWlsEh1tdXN0IGJlIGEgdmFsaWQgZW1haWwgYWRkcmVzcxosIXJ1bGVzLmVtYWlsIHx8IHRoaXMgPT0gJycgfHwgdGhpcy5pc0VtYWlsKCkKZAoSc3RyaW5nLmVtYWlsX2VtcHR5EjJ2YWx1ZSBpcyBlbXB0eSwgd2hpY2ggaXMgbm90IGEgdmFsaWQgZW1haWwgYWRkcmVzcxoaIXJ1bGVzLmVtYWlsIHx8IHRoaXMgIT0gJydIABLhAQoIaG9zdG5hbWUYDSABKAhCzAHCSMgBCl8KD3N0cmluZy5ob3N0bmFtZRIYbXVzdCBiZSBhIHZhbGlkIGhvc3RuYW1lGjIhcnVsZXMuaG9zdG5hbWUgfHwgdGhpcyA9PSAnJyB8fCB0aGlzLmlzSG9zdG5hbWUoKQplChVzdHJpbmcuaG9zdG5hbWVfZW1wdHkSLXZhbHVlIGlzIGVtcHR5LCB3aGljaCBpcyBub3QgYSB2YWxpZCBob3N0bmFtZRodIXJ1bGVzLmhvc3RuYW1lIHx8IHRoaXMgIT0gJydIABLBAQoCaXAYDiABKAhCsgHCSK4BCk8KCXN0cmluZy5pcBIabXVzdCBiZSBhIHZhbGlkIElQIGFkZHJlc3MaJiFydWxlcy5pcCB8fCB0aGlzID09ICcnIHx8IHRoaXMuaXNJcCgpClsKD3N0cmluZy5pcF9lbXB0eRIvdmFsdWUgaXMgZW1wdHksIHdoaWNoIGlzIG5vdCBhIHZhbGlkIElQIGFkZHJlc3MaFyFydWxlcy5pcCB8fCB0aGlzICE9ICcnSAAS0AEKBGlwdjQYDyABKAhCvwHCSLsBClYKC3N0cmluZy5pcHY0EhxtdXN0IGJlIGEgdmFsaWQgSVB2NCBhZGRyZXNzGikhcnVsZXMuaXB2NCB8fCB0aGlzID09ICcnIHx8IHRoaXMuaXNJcCg0KQphChFzdHJpbmcuaXB2NF9lbXB0eRIxdmFsdWUgaXMgZW1wdHksIHdoaWNoIGlzIG5vdCBhIHZhbGlkIElQdjQgYWRkcmVzcxoZIXJ1bGVzLmlwdjQgfHwgdGhpcyAhPSAnJ0gAEtABCgRpcHY2GBAgASgIQr8Bwki7AQpWCgtzdHJpbmcuaXB2NhIcbXVzdCBiZSBhIHZhbGlkIElQdjYgYWRkcmVzcxopIXJ1bGVzLmlwdjYgfHwgdGhpcyA9PSAnJyB8fCB0aGlzLmlzSXAoNikKYQoRc3RyaW5nLmlwdjZfZW1wdHkSMXZhbHVlIGlzIGVtcHR5LCB3aGljaCBpcyBub3QgYSB2YWxpZCBJUHY2IGFkZHJlc3MaGSFydWxlcy5pcHY2IHx8IHRoaXMgIT0gJydIABK5AQoDdXJpGBEgASgIQqkBwkilAQpLCgpzdHJpbmcudXJpEhNtdXN0IGJlIGEgdmFsaWQgVVJJGighcnVsZXMudXJpIHx8IHRoaXMgPT0gJycgfHwgdGhpcy5pc1VyaSgpClYKEHN0cmluZy51cmlfZW1wdHkSKHZhbHVlIGlzIGVtcHR5LCB3aGljaCBpcyBub3QgYSB2YWxpZCBVUkkaGCFydWxlcy51cmkgfHwgdGhpcyAhPSAnJ0gAEmoKB3VyaV9yZWYYEiABKAhCV8JIVApSCg5zdHJpbmcudXJpX3JlZhIdbXVzdCBiZSBhIHZhbGlkIFVSSSBSZWZlcmVuY2UaISFydWxlcy51cmlfcmVmIHx8IHRoaXMuaXNVcmlSZWYoKUgAEokCCgdhZGRyZXNzGBUgASgIQvUBwkjxAQp7Cg5zdHJpbmcuYWRkcmVzcxInbXVzdCBiZSBhIHZhbGlkIGhvc3RuYW1lLCBvciBpcCBhZGRyZXNzGkAhcnVsZXMuYWRkcmVzcyB8fCB0aGlzID09ICcnIHx8IHRoaXMuaXNIb3N0bmFtZSgpIHx8IHRoaXMuaXNJcCgpCnIKFHN0cmluZy5hZGRyZXNzX2VtcHR5Ejx2YWx1ZSBpcyBlbXB0eSwgd2hpY2ggaXMgbm90IGEgdmFsaWQgaG9zdG5hbWUsIG9yIGlwIGFkZHJlc3MaHCFydWxlcy5hZGRyZXNzIHx8IHRoaXMgIT0gJydIABKSAgoEdXVpZBgWIAEoCEKBAsJI/QEKnwEKC3N0cmluZy51dWlkEhRtdXN0IGJlIGEgdmFsaWQgVVVJRBp6IXJ1bGVzLnV1aWQgfHwgdGhpcyA9PSAnJyB8fCB0aGlzLm1hdGNoZXMoJ15bMC05YS1mQS1GXXs4fS1bMC05YS1mQS1GXXs0fS1bMC05YS1mQS1GXXs0fS1bMC05YS1mQS1GXXs0fS1bMC05YS1mQS1GXXsxMn0kJykKWQoRc3RyaW5nLnV1aWRfZW1wdHkSKXZhbHVlIGlzIGVtcHR5LCB3aGljaCBpcyBub3QgYSB2YWxpZCBVVUlEGhkhcnVsZXMudXVpZCB8fCB0aGlzICE9ICcnSAAS6gEKBXR1dWlkGCEgASgIQtgBwkjUAQptCgxzdHJpbmcudHV1aWQSHG11c3QgYmUgYSB2YWxpZCB0cmltbWVkIFVVSUQaPyFydWxlcy50dXVpZCB8fCB0aGlzID09ICcnIHx8IHRoaXMubWF0Y2hlcygnXlswLTlhLWZBLUZdezMyfSQnKQpjChJzdHJpbmcudHV1aWRfZW1wdHkSMXZhbHVlIGlzIGVtcHR5LCB3aGljaCBpcyBub3QgYSB2YWxpZCB0cmltbWVkIFVVSUQaGiFydWxlcy50dXVpZCB8fCB0aGlzICE9ICcnSAASkAIKEWlwX3dpdGhfcHJlZml4bGVuGBogASgIQvIBwkjuAQpyChhzdHJpbmcuaXBfd2l0aF9wcmVmaXhsZW4SGW11c3QgYmUgYSB2YWxpZCBJUCBwcmVmaXgaOyFydWxlcy5pcF93aXRoX3ByZWZpeGxlbiB8fCB0aGlzID09ICcnIHx8IHRoaXMuaXNJcFByZWZpeCgpCngKHnN0cmluZy5pcF93aXRoX3ByZWZpeGxlbl9lbXB0eRIudmFsdWUgaXMgZW1wdHksIHdoaWNoIGlzIG5vdCBhIHZhbGlkIElQIHByZWZpeBomIXJ1bGVzLmlwX3dpdGhfcHJlZml4bGVuIHx8IHRoaXMgIT0gJydIABLJAgoTaXB2NF93aXRoX3ByZWZpeGxlbhgbIAEoCEKpAsJIpQIKjQEKGnN0cmluZy5pcHY0X3dpdGhfcHJlZml4bGVuEi9tdXN0IGJlIGEgdmFsaWQgSVB2NCBhZGRyZXNzIHdpdGggcHJlZml4IGxlbmd0aBo+IXJ1bGVzLmlwdjRfd2l0aF9wcmVmaXhsZW4gfHwgdGhpcyA9PSAnJyB8fCB0aGlzLmlzSXBQcmVmaXgoNCkKkgEKIHN0cmluZy5pcHY0X3dpdGhfcHJlZml4bGVuX2VtcHR5EkR2YWx1ZSBpcyBlbXB0eSwgd2hpY2ggaXMgbm90IGEgdmFsaWQgSVB2NCBhZGRyZXNzIHdpdGggcHJlZml4IGxlbmd0aBooIXJ1bGVzLmlwdjRfd2l0aF9wcmVmaXhsZW4gfHwgdGhpcyAhPSAnJ0gAEskCChNpcHY2X3dpdGhfcHJlZml4bGVuGBwgASgIQqkCwkilAgqNAQoac3RyaW5nLmlwdjZfd2l0aF9wcmVmaXhsZW4SL211c3QgYmUgYSB2YWxpZCBJUHY2IGFkZHJlc3Mgd2l0aCBwcmVmaXggbGVuZ3RoGj4hcnVsZXMuaXB2Nl93aXRoX3ByZWZpeGxlbiB8fCB0aGlzID09ICcnIHx8IHRoaXMuaXNJcFByZWZpeCg2KQqSAQogc3RyaW5nLmlwdjZfd2l0aF9wcmVmaXhsZW5fZW1wdHkSRHZhbHVlIGlzIGVtcHR5LCB3aGljaCBpcyBub3QgYSB2YWxpZCBJUHY2IGFkZHJlc3Mgd2l0aCBwcmVmaXggbGVuZ3RoGighcnVsZXMuaXB2Nl93aXRoX3ByZWZpeGxlbiB8fCB0aGlzICE9ICcnSAAS7AEKCWlwX3ByZWZpeBgdIAEoCELWAcJI0gEKZgoQc3RyaW5nLmlwX3ByZWZpeBIZbXVzdCBiZSBhIHZhbGlkIElQIHByZWZpeBo3IXJ1bGVzLmlwX3ByZWZpeCB8fCB0aGlzID09ICcnIHx8IHRoaXMuaXNJcFByZWZpeCh0cnVlKQpoChZzdHJpbmcuaXBfcHJlZml4X2VtcHR5Ei52YWx1ZSBpcyBlbXB0eSwgd2hpY2ggaXMgbm90IGEgdmFsaWQgSVAgcHJlZml4Gh4hcnVsZXMuaXBfcHJlZml4IHx8IHRoaXMgIT0gJydIABL9AQoLaXB2NF9wcmVmaXgYHiABKAhC5QHCSOEBCm8KEnN0cmluZy5pcHY0X3ByZWZpeBIbbXVzdCBiZSBhIHZhbGlkIElQdjQgcHJlZml4GjwhcnVsZXMuaXB2NF9wcmVmaXggfHwgdGhpcyA9PSAnJyB8fCB0aGlzLmlzSXBQcmVmaXgoNCwgdHJ1ZSkKbgoYc3RyaW5nLmlwdjRfcHJlZml4X2VtcHR5EjB2YWx1ZSBpcyBlbXB0eSwgd2hpY2ggaXMgbm90IGEgdmFsaWQgSVB2NCBwcmVmaXgaICFydWxlcy5pcHY0X3ByZWZpeCB8fCB0aGlzICE9ICcnSAAS/QEKC2lwdjZfcHJlZml4GB8gASgIQuUBwkjhAQpvChJzdHJpbmcuaXB2Nl9wcmVmaXgSG211c3QgYmUgYSB2YWxpZCBJUHY2IHByZWZpeBo8IXJ1bGVzLmlwdjZfcHJlZml4IHx8IHRoaXMgPT0gJycgfHwgdGhpcy5pc0lwUHJlZml4KDYsIHRydWUpCm4KGHN0cmluZy5pcHY2X3ByZWZpeF9lbXB0eRIwdmFsdWUgaXMgZW1wdHksIHdoaWNoIGlzIG5vdCBhIHZhbGlkIElQdjYgcHJlZml4GiAhcnVsZXMuaXB2Nl9wcmVmaXggfHwgdGhpcyAhPSAnJ0gAEq8CCg1ob3N0X2FuZF9wb3J0GCAgASgIQpUCwkiRAgqTAQoUc3RyaW5nLmhvc3RfYW5kX3BvcnQSO211c3QgYmUgYSB2YWxpZCBob3N0IChob3N0bmFtZSBvciBJUCBhZGRyZXNzKSBhbmQgcG9ydCBwYWlyGj4hcnVsZXMuaG9zdF9hbmRfcG9ydCB8fCB0aGlzID09ICcnIHx8IHRoaXMuaXNIb3N0QW5kUG9ydCh0cnVlKQp5ChpzdHJpbmcuaG9zdF9hbmRfcG9ydF9lbXB0eRI3dmFsdWUgaXMgZW1wdHksIHdoaWNoIGlzIG5vdCBhIHZhbGlkIGhvc3QgYW5kIHBvcnQgcGFpchoiIXJ1bGVzLmhvc3RfYW5kX3BvcnQgfHwgdGhpcyAhPSAnJ0gAEu4BCgR1bGlkGCMgASgIQt0BwkjZAQp8CgtzdHJpbmcudWxpZBIUbXVzdCBiZSBhIHZhbGlkIFVMSUQaVyFydWxlcy51bGlkIHx8IHRoaXMgPT0gJycgfHwgdGhpcy5tYXRjaGVzKCdeWzAtN11bMC05QS1ISktNTlAtVFYtWmEtaGprbW5wLXR2LXpdezI1fSQnKQpZChFzdHJpbmcudWxpZF9lbXB0eRIpdmFsdWUgaXMgZW1wdHksIHdoaWNoIGlzIG5vdCBhIHZhbGlkIFVMSUQaGSFydWxlcy51bGlkIHx8IHRoaXMgIT0gJydIABLUAgoMcHJvdG9idWZfZnFuGCUgASgIQrsCwki3AgqvAQoTc3RyaW5nLnByb3RvYnVmX2ZxbhItbXVzdCBiZSBhIHZhbGlkIGZ1bGx5LXF1YWxpZmllZCBQcm90b2J1ZiBuYW1lGmkhcnVsZXMucHJvdG9idWZfZnFuIHx8IHRoaXMgPT0gJycgfHwgdGhpcy5tYXRjaGVzKCdeW0EtWmEtel9dW0EtWmEtel8wLTldKihcXC5bQS1aYS16X11bQS1aYS16XzAtOV0qKSokJykKggEKGXN0cmluZy5wcm90b2J1Zl9mcW5fZW1wdHkSQnZhbHVlIGlzIGVtcHR5LCB3aGljaCBpcyBub3QgYSB2YWxpZCBmdWxseS1xdWFsaWZpZWQgUHJvdG9idWYgbmFtZRohIXJ1bGVzLnByb3RvYnVmX2ZxbiB8fCB0aGlzICE9ICcnSAASkQMKEHByb3RvYnVmX2RvdF9mcW4YJiABKAhC9ALCSPACCs0BChdzdHJpbmcucHJvdG9idWZfZG90X2ZxbhJAbXVzdCBiZSBhIHZhbGlkIGZ1bGx5LXF1YWxpZmllZCBQcm90b2J1ZiBuYW1lIHdpdGggYSBsZWFkaW5nIGRvdBpwIXJ1bGVzLnByb3RvYnVmX2RvdF9mcW4gfHwgdGhpcyA9PSAnJyB8fCB0aGlzLm1hdGNoZXMoJ15cXC5bQS1aYS16X11bQS1aYS16XzAtOV0qKFxcLltBLVphLXpfXVtBLVphLXpfMC05XSopKiQnKQqdAQodc3RyaW5nLnByb3RvYnVmX2RvdF9mcW5fZW1wdHkSVXZhbHVlIGlzIGVtcHR5LCB3aGljaCBpcyBub3QgYSB2YWxpZCBmdWxseS1xdWFsaWZpZWQgUHJvdG9idWYgbmFtZSB3aXRoIGEgbGVhZGluZyBkb3QaJSFydWxlcy5wcm90b2J1Zl9kb3RfZnFuIHx8IHRoaXMgIT0gJydIABKcBQoQd2VsbF9rbm93bl9yZWdleBgYIAEoDjIYLmJ1Zi52YWxpZGF0ZS5Lbm93blJlZ2V4QuUEwkjhBArqAQojc3RyaW5nLndlbGxfa25vd25fcmVnZXguaGVhZGVyX25hbWUSIG11c3QgYmUgYSB2YWxpZCBIVFRQIGhlYWRlciBuYW1lGqABcnVsZXMud2VsbF9rbm93bl9yZWdleCAhPSAxIHx8IHRoaXMgPT0gJycgfHwgdGhpcy5tYXRjaGVzKCFoYXMocnVsZXMuc3RyaWN0KSB8fCBydWxlcy5zdHJpY3QgPydeOj9bMC05YS16QS1aISMkJSZcJyorLS5eX3x+XHg2MF0rJCcgOideW15cdTAwMDBcdTAwMEFcdTAwMERdKyQnKQqNAQopc3RyaW5nLndlbGxfa25vd25fcmVnZXguaGVhZGVyX25hbWVfZW1wdHkSNXZhbHVlIGlzIGVtcHR5LCB3aGljaCBpcyBub3QgYSB2YWxpZCBIVFRQIGhlYWRlciBuYW1lGilydWxlcy53ZWxsX2tub3duX3JlZ2V4ICE9IDEgfHwgdGhpcyAhPSAnJwrhAQokc3RyaW5nLndlbGxfa25vd25fcmVnZXguaGVhZGVyX3ZhbHVlEiFtdXN0IGJlIGEgdmFsaWQgSFRUUCBoZWFkZXIgdmFsdWUalQFydWxlcy53ZWxsX2tub3duX3JlZ2V4ICE9IDIgfHwgdGhpcy5tYXRjaGVzKCFoYXMocnVsZXMuc3RyaWN0KSB8fCBydWxlcy5zdHJpY3QgPydeW15cdTAwMDAtXHUwMDA4XHUwMDBBLVx1MDAxRlx1MDA3Rl0qJCcgOideW15cdTAwMDBcdTAwMEFcdTAwMERdKiQnKUgAEg4KBnN0cmljdBgZIAEoCBIsCgdleGFtcGxlGCIgAygJQhvCSBgKFgoOc3RyaW5nLmV4YW1wbGUaBHRydWUqCQjoBxCAgICAAkIMCgp3ZWxsX2tub3duIt0RCgpCeXRlc1J1bGVzEnoKBWNvbnN0GAEgASgMQmvCSGgKZgoLYnl0ZXMuY29uc3QaV3RoaXMgIT0gZ2V0RmllbGQocnVsZXMsICdjb25zdCcpID8gJ211c3QgYmUgJXgnLmZvcm1hdChbZ2V0RmllbGQocnVsZXMsICdjb25zdCcpXSkgOiAnJxJrCgNsZW4YDSABKARCXsJIWwpZCglieXRlcy5sZW4aTHVpbnQodGhpcy5zaXplKCkpICE9IHJ1bGVzLmxlbiA/ICdtdXN0IGJlICVzIGJ5dGVzJy5mb3JtYXQoW3J1bGVzLmxlbl0pIDogJycSgwEKB21pbl9sZW4YAiABKARCcsJIbwptCg1ieXRlcy5taW5fbGVuGlx1aW50KHRoaXMuc2l6ZSgpKSA8IHJ1bGVzLm1pbl9sZW4gPyAnbXVzdCBiZSBhdCBsZWFzdCAlcyBieXRlcycuZm9ybWF0KFtydWxlcy5taW5fbGVuXSkgOiAnJxKCAQoHbWF4X2xlbhgDIAEoBEJxwkhuCmwKDWJ5dGVzLm1heF9sZW4aW3VpbnQodGhpcy5zaXplKCkpID4gcnVsZXMubWF4X2xlbiA/ICdtdXN0IGJlIGF0IG1vc3QgJXMgYnl0ZXMnLmZvcm1hdChbcnVsZXMubWF4X2xlbl0pIDogJycSigEKB3BhdHRlcm4YBCABKAlCecJIdgp0Cg1ieXRlcy5wYXR0ZXJuGmMhc3RyaW5nKHRoaXMpLm1hdGNoZXMocnVsZXMucGF0dGVybikgPyAnbXVzdCBtYXRjaCByZWdleCBwYXR0ZXJuIGAlc2AnLmZvcm1hdChbcnVsZXMucGF0dGVybl0pIDogJycSewoGcHJlZml4GAUgASgMQmvCSGgKZgoMYnl0ZXMucHJlZml4GlYhdGhpcy5zdGFydHNXaXRoKHJ1bGVzLnByZWZpeCkgPyAnZG9lcyBub3QgaGF2ZSBwcmVmaXggJXgnLmZvcm1hdChbcnVsZXMucHJlZml4XSkgOiAnJxJ5CgZzdWZmaXgYBiABKAxCacJIZgpkCgxieXRlcy5zdWZmaXgaVCF0aGlzLmVuZHNXaXRoKHJ1bGVzLnN1ZmZpeCkgPyAnZG9lcyBub3QgaGF2ZSBzdWZmaXggJXgnLmZvcm1hdChbcnVsZXMuc3VmZml4XSkgOiAnJxJ9Cghjb250YWlucxgHIAEoDEJrwkhoCmYKDmJ5dGVzLmNvbnRhaW5zGlQhdGhpcy5jb250YWlucyhydWxlcy5jb250YWlucykgPyAnZG9lcyBub3QgY29udGFpbiAleCcuZm9ybWF0KFtydWxlcy5jb250YWluc10pIDogJycSoQEKAmluGAggAygMQpQBwkiQAQqNAQoIYnl0ZXMuaW4agAFnZXRGaWVsZChydWxlcywgJ2luJykuc2l6ZSgpID4gMCAmJiAhKHRoaXMgaW4gZ2V0RmllbGQocnVsZXMsICdpbicpKSA/ICdtdXN0IGJlIGluIGxpc3QgJXMnLmZvcm1hdChbZ2V0RmllbGQocnVsZXMsICdpbicpXSkgOiAnJxJwCgZub3RfaW4YCSADKAxCYMJIXQpbCgxieXRlcy5ub3RfaW4aS3RoaXMgaW4gcnVsZXMubm90X2luID8gJ211c3Qgbm90IGJlIGluIGxpc3QgJXMnLmZvcm1hdChbcnVsZXMubm90X2luXSkgOiAnJxLlAQoCaXAYCiABKAhC1gHCSNIBCm4KCGJ5dGVzLmlwEhptdXN0IGJlIGEgdmFsaWQgSVAgYWRkcmVzcxpGIXJ1bGVzLmlwIHx8IHRoaXMuc2l6ZSgpID09IDAgfHwgdGhpcy5zaXplKCkgPT0gNCB8fCB0aGlzLnNpemUoKSA9PSAxNgpgCg5ieXRlcy5pcF9lbXB0eRIvdmFsdWUgaXMgZW1wdHksIHdoaWNoIGlzIG5vdCBhIHZhbGlkIElQIGFkZHJlc3MaHSFydWxlcy5pcCB8fCB0aGlzLnNpemUoKSAhPSAwSAAS3gEKBGlwdjQYCyABKAhCzQHCSMkBCl8KCmJ5dGVzLmlwdjQSHG11c3QgYmUgYSB2YWxpZCBJUHY0IGFkZHJlc3MaMyFydWxlcy5pcHY0IHx8IHRoaXMuc2l6ZSgpID09IDAgfHwgdGhpcy5zaXplKCkgPT0gNApmChBieXRlcy5pcHY0X2VtcHR5EjF2YWx1ZSBpcyBlbXB0eSwgd2hpY2ggaXMgbm90IGEgdmFsaWQgSVB2NCBhZGRyZXNzGh8hcnVsZXMuaXB2NCB8fCB0aGlzLnNpemUoKSAhPSAwSAAS3wEKBGlwdjYYDCABKAhCzgHCSMoBCmAKCmJ5dGVzLmlwdjYSHG11c3QgYmUgYSB2YWxpZCBJUHY2IGFkZHJlc3MaNCFydWxlcy5pcHY2IHx8IHRoaXMuc2l6ZSgpID09IDAgfHwgdGhpcy5zaXplKCkgPT0gMTYKZgoQYnl0ZXMuaXB2Nl9lbXB0eRIxdmFsdWUgaXMgZW1wdHksIHdoaWNoIGlzIG5vdCBhIHZhbGlkIElQdjYgYWRkcmVzcxofIXJ1bGVzLmlwdjYgfHwgdGhpcy5zaXplKCkgIT0gMEgAEs8BCgR1dWlkGA8gASgIQr4Bwki6AQpYCgpieXRlcy51dWlkEhRtdXN0IGJlIGEgdmFsaWQgVVVJRBo0IXJ1bGVzLnV1aWQgfHwgdGhpcy5zaXplKCkgPT0gMCB8fCB0aGlzLnNpemUoKSA9PSAxNgpeChBieXRlcy51dWlkX2VtcHR5Eil2YWx1ZSBpcyBlbXB0eSwgd2hpY2ggaXMgbm90IGEgdmFsaWQgVVVJRBofIXJ1bGVzLnV1aWQgfHwgdGhpcy5zaXplKCkgIT0gMEgAEisKB2V4YW1wbGUYDiADKAxCGsJIFwoVCg1ieXRlcy5leGFtcGxlGgR0cnVlKgkI6AcQgICAgAJCDAoKd2VsbF9rbm93biLBAwoJRW51bVJ1bGVzEnwKBWNvbnN0GAEgASgFQm3CSGoKaAoKZW51bS5jb25zdBpadGhpcyAhPSBnZXRGaWVsZChydWxlcywgJ2NvbnN0JykgPyAnbXVzdCBlcXVhbCAlcycuZm9ybWF0KFtnZXRGaWVsZChydWxlcywgJ2NvbnN0JyldKSA6ICcnEhQKDGRlZmluZWRfb25seRgCIAEoCBJ4CgJpbhgDIAMoBUJswkhpCmcKB2VudW0uaW4aXCEodGhpcyBpbiBnZXRGaWVsZChydWxlcywgJ2luJykpID8gJ211c3QgYmUgaW4gbGlzdCAlcycuZm9ybWF0KFtnZXRGaWVsZChydWxlcywgJ2luJyldKSA6ICcnEm8KBm5vdF9pbhgEIAMoBUJfwkhcCloKC2VudW0ubm90X2luGkt0aGlzIGluIHJ1bGVzLm5vdF9pbiA/ICdtdXN0IG5vdCBiZSBpbiBsaXN0ICVzJy5mb3JtYXQoW3J1bGVzLm5vdF9pbl0pIDogJycSKgoHZXhhbXBsZRgFIAMoBUIZwkgWChQKDGVudW0uZXhhbXBsZRoEdHJ1ZSoJCOgHEICAgIACIu0DCg1SZXBlYXRlZFJ1bGVzEpYBCgltaW5faXRlbXMYASABKARCggHCSH8KfQoScmVwZWF0ZWQubWluX2l0ZW1zGmd1aW50KHRoaXMuc2l6ZSgpKSA8IHJ1bGVzLm1pbl9pdGVtcyA/ICdtdXN0IGNvbnRhaW4gYXQgbGVhc3QgJWQgaXRlbShzKScuZm9ybWF0KFtydWxlcy5taW5faXRlbXNdKSA6ICcnEpwBCgltYXhfaXRlbXMYAiABKARCiAHCSIQBCoEBChJyZXBlYXRlZC5tYXhfaXRlbXMaa3VpbnQodGhpcy5zaXplKCkpID4gcnVsZXMubWF4X2l0ZW1zID8gJ211c3QgY29udGFpbiBubyBtb3JlIHRoYW4gJXMgaXRlbShzKScuZm9ybWF0KFtydWxlcy5tYXhfaXRlbXNdKSA6ICcnEnAKBnVuaXF1ZRgDIAEoCEJgwkhdClsKD3JlcGVhdGVkLnVuaXF1ZRIocmVwZWF0ZWQgdmFsdWUgbXVzdCBjb250YWluIHVuaXF1ZSBpdGVtcxoeIXJ1bGVzLnVuaXF1ZSB8fCB0aGlzLnVuaXF1ZSgpEicKBWl0ZW1zGAQgASgLMhguYnVmLnZhbGlkYXRlLkZpZWxkUnVsZXMqCQjoBxCAgICAAiKKAwoITWFwUnVsZXMSjwEKCW1pbl9wYWlycxgBIAEoBEJ8wkh5CncKDW1hcC5taW5fcGFpcnMaZnVpbnQodGhpcy5zaXplKCkpIDwgcnVsZXMubWluX3BhaXJzID8gJ21hcCBtdXN0IGJlIGF0IGxlYXN0ICVkIGVudHJpZXMnLmZvcm1hdChbcnVsZXMubWluX3BhaXJzXSkgOiAnJxKOAQoJbWF4X3BhaXJzGAIgASgEQnvCSHgKdgoNbWFwLm1heF9wYWlycxpldWludCh0aGlzLnNpemUoKSkgPiBydWxlcy5tYXhfcGFpcnMgPyAnbWFwIG11c3QgYmUgYXQgbW9zdCAlZCBlbnRyaWVzJy5mb3JtYXQoW3J1bGVzLm1heF9wYWlyc10pIDogJycSJgoEa2V5cxgEIAEoCzIYLmJ1Zi52YWxpZGF0ZS5GaWVsZFJ1bGVzEigKBnZhbHVlcxgFIAEoCzIYLmJ1Zi52YWxpZGF0ZS5GaWVsZFJ1bGVzKgkI6AcQgICAgAIiJgoIQW55UnVsZXMSCgoCaW4YAiADKAkSDgoGbm90X2luGAMgAygJIr8WCg1EdXJhdGlvblJ1bGVzEpsBCgVjb25zdBgCIAEoCzIZLmdvb2dsZS5wcm90b2J1Zi5EdXJhdGlvbkJxwkhuCmwKDmR1cmF0aW9uLmNvbnN0Glp0aGlzICE9IGdldEZpZWxkKHJ1bGVzLCAnY29uc3QnKSA/ICdtdXN0IGVxdWFsICVzJy5mb3JtYXQoW2dldEZpZWxkKHJ1bGVzLCAnY29uc3QnKV0pIDogJycSogEKAmx0GAMgASgLMhkuZ29vZ2xlLnByb3RvYnVmLkR1cmF0aW9uQnnCSHYKdAoLZHVyYXRpb24ubHQaZSFoYXMocnVsZXMuZ3RlKSAmJiAhaGFzKHJ1bGVzLmd0KSAmJiB0aGlzID49IHJ1bGVzLmx0PyAnbXVzdCBiZSBsZXNzIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMubHRdKSA6ICcnSAAStAEKA2x0ZRgEIAEoCzIZLmdvb2dsZS5wcm90b2J1Zi5EdXJhdGlvbkKJAcJIhQEKggEKDGR1cmF0aW9uLmx0ZRpyIWhhcyhydWxlcy5ndGUpICYmICFoYXMocnVsZXMuZ3QpICYmIHRoaXMgPiBydWxlcy5sdGU/ICdtdXN0IGJlIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5sdGVdKSA6ICcnSAASowcKAmd0GAUgASgLMhkuZ29vZ2xlLnByb3RvYnVmLkR1cmF0aW9uQvkGwkj1Bgp3CgtkdXJhdGlvbi5ndBpoIWhhcyhydWxlcy5sdCkgJiYgIWhhcyhydWxlcy5sdGUpICYmIHRoaXMgPD0gcnVsZXMuZ3Q/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5ndF0pIDogJycKsAEKDmR1cmF0aW9uLmd0X2x0Gp0BaGFzKHJ1bGVzLmx0KSAmJiBydWxlcy5sdCA+PSBydWxlcy5ndCAmJiAodGhpcyA+PSBydWxlcy5sdCB8fCB0aGlzIDw9IHJ1bGVzLmd0KT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuICVzIGFuZCBsZXNzIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMuZ3QsIHJ1bGVzLmx0XSkgOiAnJwq4AQoYZHVyYXRpb24uZ3RfbHRfZXhjbHVzaXZlGpsBaGFzKHJ1bGVzLmx0KSAmJiBydWxlcy5sdCA8IHJ1bGVzLmd0ICYmIChydWxlcy5sdCA8PSB0aGlzICYmIHRoaXMgPD0gcnVsZXMuZ3QpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMgb3IgbGVzcyB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0LCBydWxlcy5sdF0pIDogJycKwAEKD2R1cmF0aW9uLmd0X2x0ZRqsAWhhcyhydWxlcy5sdGUpICYmIHJ1bGVzLmx0ZSA+PSBydWxlcy5ndCAmJiAodGhpcyA+IHJ1bGVzLmx0ZSB8fCB0aGlzIDw9IHJ1bGVzLmd0KT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuICVzIGFuZCBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJXMnLmZvcm1hdChbcnVsZXMuZ3QsIHJ1bGVzLmx0ZV0pIDogJycKyAEKGWR1cmF0aW9uLmd0X2x0ZV9leGNsdXNpdmUaqgFoYXMocnVsZXMubHRlKSAmJiBydWxlcy5sdGUgPCBydWxlcy5ndCAmJiAocnVsZXMubHRlIDwgdGhpcyAmJiB0aGlzIDw9IHJ1bGVzLmd0KT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuICVzIG9yIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndCwgcnVsZXMubHRlXSkgOiAnJ0gBEu8HCgNndGUYBiABKAsyGS5nb29nbGUucHJvdG9idWYuRHVyYXRpb25CxAfCSMAHCoUBCgxkdXJhdGlvbi5ndGUadSFoYXMocnVsZXMubHQpICYmICFoYXMocnVsZXMubHRlKSAmJiB0aGlzIDwgcnVsZXMuZ3RlPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gJXMnLmZvcm1hdChbcnVsZXMuZ3RlXSkgOiAnJwq/AQoPZHVyYXRpb24uZ3RlX2x0GqsBaGFzKHJ1bGVzLmx0KSAmJiBydWxlcy5sdCA+PSBydWxlcy5ndGUgJiYgKHRoaXMgPj0gcnVsZXMubHQgfHwgdGhpcyA8IHJ1bGVzLmd0ZSk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAlcyBhbmQgbGVzcyB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0ZSwgcnVsZXMubHRdKSA6ICcnCscBChlkdXJhdGlvbi5ndGVfbHRfZXhjbHVzaXZlGqkBaGFzKHJ1bGVzLmx0KSAmJiBydWxlcy5sdCA8IHJ1bGVzLmd0ZSAmJiAocnVsZXMubHQgPD0gdGhpcyAmJiB0aGlzIDwgcnVsZXMuZ3RlKT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzIG9yIGxlc3MgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5ndGUsIHJ1bGVzLmx0XSkgOiAnJwrPAQoQZHVyYXRpb24uZ3RlX2x0ZRq6AWhhcyhydWxlcy5sdGUpICYmIHJ1bGVzLmx0ZSA+PSBydWxlcy5ndGUgJiYgKHRoaXMgPiBydWxlcy5sdGUgfHwgdGhpcyA8IHJ1bGVzLmd0ZSk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAlcyBhbmQgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICVzJy5mb3JtYXQoW3J1bGVzLmd0ZSwgcnVsZXMubHRlXSkgOiAnJwrXAQoaZHVyYXRpb24uZ3RlX2x0ZV9leGNsdXNpdmUauAFoYXMocnVsZXMubHRlKSAmJiBydWxlcy5sdGUgPCBydWxlcy5ndGUgJiYgKHJ1bGVzLmx0ZSA8IHRoaXMgJiYgdGhpcyA8IHJ1bGVzLmd0ZSk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCB0byAlcyBvciBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJXMnLmZvcm1hdChbcnVsZXMuZ3RlLCBydWxlcy5sdGVdKSA6ICcnSAESlwEKAmluGAcgAygLMhkuZ29vZ2xlLnByb3RvYnVmLkR1cmF0aW9uQnDCSG0KawoLZHVyYXRpb24uaW4aXCEodGhpcyBpbiBnZXRGaWVsZChydWxlcywgJ2luJykpID8gJ211c3QgYmUgaW4gbGlzdCAlcycuZm9ybWF0KFtnZXRGaWVsZChydWxlcywgJ2luJyldKSA6ICcnEo4BCgZub3RfaW4YCCADKAsyGS5nb29nbGUucHJvdG9idWYuRHVyYXRpb25CY8JIYApeCg9kdXJhdGlvbi5ub3RfaW4aS3RoaXMgaW4gcnVsZXMubm90X2luID8gJ211c3Qgbm90IGJlIGluIGxpc3QgJXMnLmZvcm1hdChbcnVsZXMubm90X2luXSkgOiAnJxJJCgdleGFtcGxlGAkgAygLMhkuZ29vZ2xlLnByb3RvYnVmLkR1cmF0aW9uQh3CSBoKGAoQZHVyYXRpb24uZXhhbXBsZRoEdHJ1ZSoJCOgHEICAgIACQgsKCWxlc3NfdGhhbkIOCgxncmVhdGVyX3RoYW4i6wUKDkZpZWxkTWFza1J1bGVzErkBCgVjb25zdBgBIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2tCjQHCSIkBCoYBChBmaWVsZF9tYXNrLmNvbnN0GnJ0aGlzLnBhdGhzICE9IGdldEZpZWxkKHJ1bGVzLCAnY29uc3QnKS5wYXRocyA/ICdtdXN0IGVxdWFsIHBhdGhzICVzJy5mb3JtYXQoW2dldEZpZWxkKHJ1bGVzLCAnY29uc3QnKS5wYXRoc10pIDogJycS0wEKAmluGAIgAygJQsYBwkjCAQq/AQoNZmllbGRfbWFzay5pbhqtASF0aGlzLnBhdGhzLmFsbChwLCBwIGluIGdldEZpZWxkKHJ1bGVzLCAnaW4nKSB8fCBnZXRGaWVsZChydWxlcywgJ2luJykuZXhpc3RzKGYsIHAuc3RhcnRzV2l0aChmKycuJykpKSA/ICdtdXN0IG9ubHkgY29udGFpbiBwYXRocyBpbiAlcycuZm9ybWF0KFtnZXRGaWVsZChydWxlcywgJ2luJyldKSA6ICcnEu0BCgZub3RfaW4YAyADKAlC3AHCSNgBCtUBChFmaWVsZF9tYXNrLm5vdF9pbhq/ASF0aGlzLnBhdGhzLmFsbChwLCAhKHAgaW4gZ2V0RmllbGQocnVsZXMsICdub3RfaW4nKSB8fCBnZXRGaWVsZChydWxlcywgJ25vdF9pbicpLmV4aXN0cyhmLCBwLnN0YXJ0c1dpdGgoZisnLicpKSkpID8gJ211c3Qgbm90IGNvbnRhaW4gYW55IHBhdGhzIGluICVzJy5mb3JtYXQoW2dldEZpZWxkKHJ1bGVzLCAnbm90X2luJyldKSA6ICcnEkwKB2V4YW1wbGUYBCADKAsyGi5nb29nbGUucHJvdG9idWYuRmllbGRNYXNrQh/CSBwKGgoSZmllbGRfbWFzay5leGFtcGxlGgR0cnVlKgkI6AcQgICAgAIisBcKDlRpbWVzdGFtcFJ1bGVzEp0BCgVjb25zdBgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBCcsJIbwptCg90aW1lc3RhbXAuY29uc3QaWnRoaXMgIT0gZ2V0RmllbGQocnVsZXMsICdjb25zdCcpID8gJ211c3QgZXF1YWwgJXMnLmZvcm1hdChbZ2V0RmllbGQocnVsZXMsICdjb25zdCcpXSkgOiAnJxKkAQoCbHQYAyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQnrCSHcKdQoMdGltZXN0YW1wLmx0GmUhaGFzKHJ1bGVzLmd0ZSkgJiYgIWhhcyhydWxlcy5ndCkgJiYgdGhpcyA+PSBydWxlcy5sdD8gJ211c3QgYmUgbGVzcyB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmx0XSkgOiAnJ0gAErYBCgNsdGUYBCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQooBwkiGAQqDAQoNdGltZXN0YW1wLmx0ZRpyIWhhcyhydWxlcy5ndGUpICYmICFoYXMocnVsZXMuZ3QpICYmIHRoaXMgPiBydWxlcy5sdGU/ICdtdXN0IGJlIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5sdGVdKSA6ICcnSAASZgoGbHRfbm93GAcgASgIQlTCSFEKTwoQdGltZXN0YW1wLmx0X25vdxo7KHJ1bGVzLmx0X25vdyAmJiB0aGlzID4gbm93KSA/ICdtdXN0IGJlIGxlc3MgdGhhbiBub3cnIDogJydIABKpBwoCZ3QYBSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQv4Gwkj6Bgp4Cgx0aW1lc3RhbXAuZ3QaaCFoYXMocnVsZXMubHQpICYmICFoYXMocnVsZXMubHRlKSAmJiB0aGlzIDw9IHJ1bGVzLmd0PyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMuZ3RdKSA6ICcnCrEBCg90aW1lc3RhbXAuZ3RfbHQanQFoYXMocnVsZXMubHQpICYmIHJ1bGVzLmx0ID49IHJ1bGVzLmd0ICYmICh0aGlzID49IHJ1bGVzLmx0IHx8IHRoaXMgPD0gcnVsZXMuZ3QpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMgYW5kIGxlc3MgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5ndCwgcnVsZXMubHRdKSA6ICcnCrkBChl0aW1lc3RhbXAuZ3RfbHRfZXhjbHVzaXZlGpsBaGFzKHJ1bGVzLmx0KSAmJiBydWxlcy5sdCA8IHJ1bGVzLmd0ICYmIChydWxlcy5sdCA8PSB0aGlzICYmIHRoaXMgPD0gcnVsZXMuZ3QpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMgb3IgbGVzcyB0aGFuICVzJy5mb3JtYXQoW3J1bGVzLmd0LCBydWxlcy5sdF0pIDogJycKwQEKEHRpbWVzdGFtcC5ndF9sdGUarAFoYXMocnVsZXMubHRlKSAmJiBydWxlcy5sdGUgPj0gcnVsZXMuZ3QgJiYgKHRoaXMgPiBydWxlcy5sdGUgfHwgdGhpcyA8PSBydWxlcy5ndCk/ICdtdXN0IGJlIGdyZWF0ZXIgdGhhbiAlcyBhbmQgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICVzJy5mb3JtYXQoW3J1bGVzLmd0LCBydWxlcy5sdGVdKSA6ICcnCskBChp0aW1lc3RhbXAuZ3RfbHRlX2V4Y2x1c2l2ZRqqAWhhcyhydWxlcy5sdGUpICYmIHJ1bGVzLmx0ZSA8IHJ1bGVzLmd0ICYmIChydWxlcy5sdGUgPCB0aGlzICYmIHRoaXMgPD0gcnVsZXMuZ3QpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gJXMgb3IgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICVzJy5mb3JtYXQoW3J1bGVzLmd0LCBydWxlcy5sdGVdKSA6ICcnSAES9QcKA2d0ZRgGIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBCyQfCSMUHCoYBCg10aW1lc3RhbXAuZ3RlGnUhaGFzKHJ1bGVzLmx0KSAmJiAhaGFzKHJ1bGVzLmx0ZSkgJiYgdGhpcyA8IHJ1bGVzLmd0ZT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzJy5mb3JtYXQoW3J1bGVzLmd0ZV0pIDogJycKwAEKEHRpbWVzdGFtcC5ndGVfbHQaqwFoYXMocnVsZXMubHQpICYmIHJ1bGVzLmx0ID49IHJ1bGVzLmd0ZSAmJiAodGhpcyA+PSBydWxlcy5sdCB8fCB0aGlzIDwgcnVsZXMuZ3RlKT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzIGFuZCBsZXNzIHRoYW4gJXMnLmZvcm1hdChbcnVsZXMuZ3RlLCBydWxlcy5sdF0pIDogJycKyAEKGnRpbWVzdGFtcC5ndGVfbHRfZXhjbHVzaXZlGqkBaGFzKHJ1bGVzLmx0KSAmJiBydWxlcy5sdCA8IHJ1bGVzLmd0ZSAmJiAocnVsZXMubHQgPD0gdGhpcyAmJiB0aGlzIDwgcnVsZXMuZ3RlKT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzIG9yIGxlc3MgdGhhbiAlcycuZm9ybWF0KFtydWxlcy5ndGUsIHJ1bGVzLmx0XSkgOiAnJwrQAQoRdGltZXN0YW1wLmd0ZV9sdGUaugFoYXMocnVsZXMubHRlKSAmJiBydWxlcy5sdGUgPj0gcnVsZXMuZ3RlICYmICh0aGlzID4gcnVsZXMubHRlIHx8IHRoaXMgPCBydWxlcy5ndGUpPyAnbXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gJXMgYW5kIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndGUsIHJ1bGVzLmx0ZV0pIDogJycK2AEKG3RpbWVzdGFtcC5ndGVfbHRlX2V4Y2x1c2l2ZRq4AWhhcyhydWxlcy5sdGUpICYmIHJ1bGVzLmx0ZSA8IHJ1bGVzLmd0ZSAmJiAocnVsZXMubHRlIDwgdGhpcyAmJiB0aGlzIDwgcnVsZXMuZ3RlKT8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvICVzIG9yIGxlc3MgdGhhbiBvciBlcXVhbCB0byAlcycuZm9ybWF0KFtydWxlcy5ndGUsIHJ1bGVzLmx0ZV0pIDogJydIARJpCgZndF9ub3cYCCABKAhCV8JIVApSChB0aW1lc3RhbXAuZ3Rfbm93Gj4ocnVsZXMuZ3Rfbm93ICYmIHRoaXMgPCBub3cpID8gJ211c3QgYmUgZ3JlYXRlciB0aGFuIG5vdycgOiAnJ0gBErEBCgZ3aXRoaW4YCSABKAsyGS5nb29nbGUucHJvdG9idWYuRHVyYXRpb25ChQHCSIEBCn8KEHRpbWVzdGFtcC53aXRoaW4aa3RoaXMgPCBub3ctcnVsZXMud2l0aGluIHx8IHRoaXMgPiBub3crcnVsZXMud2l0aGluID8gJ211c3QgYmUgd2l0aGluICVzIG9mIG5vdycuZm9ybWF0KFtydWxlcy53aXRoaW5dKSA6ICcnEksKB2V4YW1wbGUYCiADKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQh7CSBsKGQoRdGltZXN0YW1wLmV4YW1wbGUaBHRydWUqCQjoBxCAgICAAkILCglsZXNzX3RoYW5CDgoMZ3JlYXRlcl90aGFuIjkKClZpb2xhdGlvbnMSKwoKdmlvbGF0aW9ucxgBIAMoCzIXLmJ1Zi52YWxpZGF0ZS5WaW9sYXRpb24inwEKCVZpb2xhdGlvbhImCgVmaWVsZBgFIAEoCzIXLmJ1Zi52YWxpZGF0ZS5GaWVsZFBhdGgSJQoEcnVsZRgGIAEoCzIXLmJ1Zi52YWxpZGF0ZS5GaWVsZFBhdGgSDwoHcnVsZV9pZBgCIAEoCRIPCgdtZXNzYWdlGAMgASgJEg8KB2Zvcl9rZXkYBCABKAhKBAgBEAJSCmZpZWxkX3BhdGgiPQoJRmllbGRQYXRoEjAKCGVsZW1lbnRzGAEgAygLMh4uYnVmLnZhbGlkYXRlLkZpZWxkUGF0aEVsZW1lbnQi6QIKEEZpZWxkUGF0aEVsZW1lbnQSFAoMZmllbGRfbnVtYmVyGAEgASgFEhIKCmZpZWxkX25hbWUYAiABKAkSPgoKZmllbGRfdHlwZRgDIAEoDjIqLmdvb2dsZS5wcm90b2J1Zi5GaWVsZERlc2NyaXB0b3JQcm90by5UeXBlEjwKCGtleV90eXBlGAQgASgOMiouZ29vZ2xlLnByb3RvYnVmLkZpZWxkRGVzY3JpcHRvclByb3RvLlR5cGUSPgoKdmFsdWVfdHlwZRgFIAEoDjIqLmdvb2dsZS5wcm90b2J1Zi5GaWVsZERlc2NyaXB0b3JQcm90by5UeXBlEg8KBWluZGV4GAYgASgESAASEgoIYm9vbF9rZXkYByABKAhIABIRCgdpbnRfa2V5GAggASgDSAASEgoIdWludF9rZXkYCSABKARIABIUCgpzdHJpbmdfa2V5GAogASgJSABCCwoJc3Vic2NyaXB0KqEBCgZJZ25vcmUSFgoSSUdOT1JFX1VOU1BFQ0lGSUVEEAASGAoUSUdOT1JFX0lGX1pFUk9fVkFMVUUQARIRCg1JR05PUkVfQUxXQVlTEAMiBAgCEAIqDElHTk9SRV9FTVBUWSoOSUdOT1JFX0RFRkFVTFQqF0lHTk9SRV9JRl9ERUZBVUxUX1ZBTFVFKhVJR05PUkVfSUZfVU5QT1BVTEFURUQqbgoKS25vd25SZWdleBIbChdLTk9XTl9SRUdFWF9VTlNQRUNJRklFRBAAEiAKHEtOT1dOX1JFR0VYX0hUVFBfSEVBREVSX05BTUUQARIhCh1LTk9XTl9SRUdFWF9IVFRQX0hFQURFUl9WQUxVRRACOlYKB21lc3NhZ2USHy5nb29nbGUucHJvdG9idWYuTWVzc2FnZU9wdGlvbnMYhwkgASgLMhouYnVmLnZhbGlkYXRlLk1lc3NhZ2VSdWxlc1IHbWVzc2FnZTpOCgVvbmVvZhIdLmdvb2dsZS5wcm90b2J1Zi5PbmVvZk9wdGlvbnMYhwkgASgLMhguYnVmLnZhbGlkYXRlLk9uZW9mUnVsZXNSBW9uZW9mOk4KBWZpZWxkEh0uZ29vZ2xlLnByb3RvYnVmLkZpZWxkT3B0aW9ucxiHCSABKAsyGC5idWYudmFsaWRhdGUuRmllbGRSdWxlc1IFZmllbGQ6XQoKcHJlZGVmaW5lZBIdLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE9wdGlvbnMYiAkgASgLMh0uYnVmLnZhbGlkYXRlLlByZWRlZmluZWRSdWxlc1IKcHJlZGVmaW5lZEJuChJidWlsZC5idWYudmFsaWRhdGVCDVZhbGlkYXRlUHJvdG9QAVpHYnVmLmJ1aWxkL2dlbi9nby9idWZidWlsZC9wcm90b3ZhbGlkYXRlL3Byb3RvY29sYnVmZmVycy9nby9idWYvdmFsaWRhdGU",[bn,Gn,hn,In]);var H=yn("Ci1tb2NoYWJ1Z2FwaXMvYWRhcHQvZ3JhcGgvdjEvc2lnbmFsX2RhdGEucHJvdG8SG21vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC52MSKmCgoKU2lnbmFsRGF0YRL3BQoIZmlsZW5hbWUYASABKAlC3wW6SNsFugGvAQobZmlsZW5hbWUubm9fcGF0aF9zZXBhcmF0b3JzEmNGaWxlbmFtZSBjYW5ub3QgY29udGFpbiBwYXRoIHNlcGFyYXRvcnMgKCcvJyBvciAnXCcpLiBVc2Ugb25seSB0aGUgZmlsZW5hbWUgd2l0aG91dCBkaXJlY3RvcnkgcGF0aC4aKyF0aGlzLmNvbnRhaW5zKCcvJykgJiYgIXRoaXMuY29udGFpbnMoJ1xcJym6AbsBCh5maWxlbmFtZS5ub19jb250cm9sX2NoYXJhY3RlcnMSOUZpbGVuYW1lIGNhbm5vdCBjb250YWluIGNvbnRyb2wgY2hhcmFjdGVycyBvciBudWxsIGJ5dGVzLhpeIXRoaXMuY29udGFpbnMoJ1x4MDAnKSAmJiAhdGhpcy5jb250YWlucygnXG4nKSAmJiAhdGhpcy5jb250YWlucygnXHInKSAmJiAhdGhpcy5jb250YWlucygnXHQnKboBbQonZmlsZW5hbWUubm9fbGVhZGluZ190cmFpbGluZ193aGl0ZXNwYWNlEi1GaWxlbmFtZSBjYW5ub3Qgc3RhcnQgb3IgZW5kIHdpdGggd2hpdGVzcGFjZS4aE3RoaXMgPT0gdGhpcy50cmltKCm6AdMBChxmaWxlbmFtZS5ub193aW5kb3dzX3Jlc2VydmVkEmpGaWxlbmFtZSBjYW5ub3QgYmUgYSBXaW5kb3dzIHJlc2VydmVkIG5hbWUgKENPTiwgUFJOLCBBVVgsIE5VTCwgQ09NMS05LCBMUFQxLTkpIHdpdGggb3Igd2l0aG91dCBleHRlbnNpb24uGkchdGhpcy5tYXRjaGVzKCdeKD9pKShDT058UFJOfEFVWHxOVUx8Q09NWzEtOV18TFBUWzEtOV0pKD86XFwuW14uXSopPyQnKXIgEAEY/wEyGV5bXi88PjoifD8qXHgwMC1ceDFGXFxdKyRIAIgBARKCBAoJbWltZV90eXBlGAIgASgJQu4DukjqA7oByQEKFm1pbWVfdHlwZS5ub193aWxkY2FyZHMSmQFNSU1FIHR5cGUgd2lsZGNhcmRzIGFyZSBub3QgYWxsb3dlZCBpbiBTaWduYWxEYXRhLiBVc2UgYSBjb25jcmV0ZSBNSU1FIHR5cGUgbGlrZSAnaW1hZ2UvcG5nJyBvciAnYXBwbGljYXRpb24vcGRmJywgbm90IHdpbGRjYXJkcyBsaWtlICdpbWFnZS8qJyBvciAnKi8qJy4aEyF0aGlzLmNvbnRhaW5zKCcqJym6Ab8BChdtaW1lX3R5cGUubm9fcGFyYW1ldGVycxKOAU1JTUUgdHlwZSBwYXJhbWV0ZXJzIGFyZSBub3QgYWxsb3dlZC4gVXNlICd0ZXh0L3BsYWluJyBpbnN0ZWFkIG9mICd0ZXh0L3BsYWluOyBjaGFyc2V0PXV0Zi04Jy4gVVRGLTggZW5jb2RpbmcgaXMgYXNzdW1lZCBmb3IgYWxsIHRleHQgZm9ybWF0cy4aEyF0aGlzLmNvbnRhaW5zKCc7JylyWBADGP8BMlFeW2EtekEtWjAtOV1bYS16QS1aMC05ISMkJlwtXl8uK117MCwxMjZ9L1thLXpBLVowLTldW2EtekEtWjAtOSEjJCZcLV5fLitdezAsMTI2fSQSDAoEZGF0YRgDIAEoDEILCglfZmlsZW5hbWViBnByb3RvMw",[m]),P=Zn(H,0);import{fileDesc as Sn,messageDesc as Vn}from"@bufbuild/protobuf/codegenv2";import{fileDesc as An,messageDesc as Rn}from"@bufbuild/protobuf/codegenv2";import{file_google_protobuf_struct as Xn}from"@bufbuild/protobuf/wkt";var re=An("Cixtb2NoYWJ1Z2FwaXMvYWRhcHQvZ3JhcGgvdjEvanRkX3NjaGVtYS5wcm90bxIbbW9jaGFidWdhcGlzLmFkYXB0LmdyYXBoLnYxIrEWCglKVERTY2hlbWESfQoLZGVmaW5pdGlvbnMYASADKAsyNy5tb2NoYWJ1Z2FwaXMuYWRhcHQuZ3JhcGgudjEuSlREU2NoZW1hLkRlZmluaXRpb25zRW50cnlCL7pILJoBKQgAEOgHIiJyIBABGGQyGl5bXyRhLXpBLVpdW18kYS16QS1aMC05XSokEi4KCG1ldGFkYXRhGAIgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgAiAEBEhUKCG51bGxhYmxlGAMgASgISAGIAQESNwoDcmVmGAQgASgJQiW6SCJyIBABGGQyGl5bXyRhLXpBLVpdW18kYS16QS1aMC05XSokSAKIAQEScQoEdHlwZRgFIAEoCUJeukhbcllSB2Jvb2xlYW5SB2Zsb2F0MzJSB2Zsb2F0NjRSBGludDhSBXVpbnQ4UgVpbnQxNlIGdWludDE2UgVpbnQzMlIGdWludDMyUgZzdHJpbmdSCXRpbWVzdGFtcEgDiAEBEiQKBGVudW0YBiADKAlCFrpIE5IBEAgAEOgHGAEiB3IFEAEY6AcSPQoIZWxlbWVudHMYByABKAsyJi5tb2NoYWJ1Z2FwaXMuYWRhcHQuZ3JhcGgudjEuSlREU2NoZW1hSASIAQESXwoKcHJvcGVydGllcxgIIAMoCzI2Lm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC52MS5KVERTY2hlbWEuUHJvcGVydGllc0VudHJ5QhO6SBCaAQ0IABDoByIGcgQQARhkEnAKE29wdGlvbmFsX3Byb3BlcnRpZXMYCSADKAsyPi5tb2NoYWJ1Z2FwaXMuYWRhcHQuZ3JhcGgudjEuSlREU2NoZW1hLk9wdGlvbmFsUHJvcGVydGllc0VudHJ5QhO6SBCaAQ0IABDoByIGcgQQARhkEiIKFWFkZGl0aW9uYWxfcHJvcGVydGllcxgKIAEoCEgFiAEBEjsKBnZhbHVlcxgLIAEoCzImLm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC52MS5KVERTY2hlbWFIBogBARIlCg1kaXNjcmltaW5hdG9yGAwgASgJQgm6SAZyBBABGGRIB4gBARJZCgdtYXBwaW5nGA0gAygLMjMubW9jaGFidWdhcGlzLmFkYXB0LmdyYXBoLnYxLkpURFNjaGVtYS5NYXBwaW5nRW50cnlCE7pIEJoBDQgAEOgHIgZyBBABGGQaWgoQRGVmaW5pdGlvbnNFbnRyeRILCgNrZXkYASABKAkSNQoFdmFsdWUYAiABKAsyJi5tb2NoYWJ1Z2FwaXMuYWRhcHQuZ3JhcGgudjEuSlREU2NoZW1hOgI4ARpZCg9Qcm9wZXJ0aWVzRW50cnkSCwoDa2V5GAEgASgJEjUKBXZhbHVlGAIgASgLMiYubW9jaGFidWdhcGlzLmFkYXB0LmdyYXBoLnYxLkpURFNjaGVtYToCOAEaYQoXT3B0aW9uYWxQcm9wZXJ0aWVzRW50cnkSCwoDa2V5GAEgASgJEjUKBXZhbHVlGAIgASgLMiYubW9jaGFidWdhcGlzLmFkYXB0LmdyYXBoLnYxLkpURFNjaGVtYToCOAEaVgoMTWFwcGluZ0VudHJ5EgsKA2tleRgBIAEoCRI1CgV2YWx1ZRgCIAEoCzImLm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC52MS5KVERTY2hlbWE6AjgBOrULukixCxqTAwocanRkLm11dHVhbGx5X2V4Y2x1c2l2ZV9mb3JtcxKIAVNjaGVtYSBtdXN0IHVzZSBleGFjdGx5IG9uZSBmb3JtIChlbXB0eSwgcmVmLCB0eXBlLCBlbnVtLCBlbGVtZW50cywgcHJvcGVydGllcywgdmFsdWVzLCBvciBkaXNjcmltaW5hdG9yKS4gTXVsdGlwbGUgZm9ybSBrZXl3b3JkcyBmb3VuZC4a5wFbaGFzKHRoaXMucmVmKSwgaGFzKHRoaXMudHlwZSksIHNpemUodGhpcy5lbnVtKSA+IDAsIGhhcyh0aGlzLmVsZW1lbnRzKSwgc2l6ZSh0aGlzLnByb3BlcnRpZXMpID4gMCB8fCBzaXplKHRoaXMub3B0aW9uYWxfcHJvcGVydGllcykgPiAwLCBoYXModGhpcy52YWx1ZXMpLCBoYXModGhpcy5kaXNjcmltaW5hdG9yKSAmJiBzaXplKHRoaXMubWFwcGluZykgPiAwXS5maWx0ZXIoeCwgeCkuc2l6ZSgpIDw9IDEa+AEKGWp0ZC5wcm9wZXJ0aWVzX25vX292ZXJsYXASWFByb3BlcnRpZXMgYW5kIG9wdGlvbmFsX3Byb3BlcnRpZXMgY2Fubm90IGhhdmUgb3ZlcmxhcHBpbmcga2V5cyAoUkZDIDg5MjcgU2VjdGlvbiAyLjIuNikagAEhKHNpemUodGhpcy5wcm9wZXJ0aWVzKSA+IDAgJiYgc2l6ZSh0aGlzLm9wdGlvbmFsX3Byb3BlcnRpZXMpID4gMCkgfHwgdGhpcy5wcm9wZXJ0aWVzLmFsbChwaywgIShwayBpbiB0aGlzLm9wdGlvbmFsX3Byb3BlcnRpZXMpKRqQAgoxanRkLmFkZGl0aW9uYWxfcHJvcGVydGllc19vbmx5X29uX3Byb3BlcnRpZXNfZm9ybRJ2YWRkaXRpb25hbF9wcm9wZXJ0aWVzIGNhbiBvbmx5IGJlIHNldCB3aGVuIHVzaW5nIHRoZSBwcm9wZXJ0aWVzIGZvcm0gKGhhcyBub24tZW1wdHkgcHJvcGVydGllcyBvciBvcHRpb25hbF9wcm9wZXJ0aWVzKRpjIWhhcyh0aGlzLmFkZGl0aW9uYWxfcHJvcGVydGllcykgfHwgc2l6ZSh0aGlzLnByb3BlcnRpZXMpID4gMCB8fCBzaXplKHRoaXMub3B0aW9uYWxfcHJvcGVydGllcykgPiAwGsIBCiJqdGQuZGlzY3JpbWluYXRvcl9yZXF1aXJlc19tYXBwaW5nEmdkaXNjcmltaW5hdG9yIGFuZCBtYXBwaW5nIG11c3QgYXBwZWFyIHRvZ2V0aGVyIHdpdGggYXQgbGVhc3Qgb25lIG1hcHBpbmcgZW50cnkgKFJGQyA4OTI3IFNlY3Rpb24gMi4yLjgpGjNoYXModGhpcy5kaXNjcmltaW5hdG9yKSA9PSAoc2l6ZSh0aGlzLm1hcHBpbmcpID4gMCkaxQIKEmp0ZC5lbnVtX25vbl9lbXB0eRJKZW51bSBhcnJheSBtdXN0IGJlIG5vbi1lbXB0eSB3aGVuIHVzaW5nIGVudW0gZm9ybSAoUkZDIDg5MjcgU2VjdGlvbiAyLjIuNCka4gFzaXplKHRoaXMuZW51bSkgPiAwICYmICFoYXModGhpcy50eXBlKSAmJiAhaGFzKHRoaXMucmVmKSAmJiAhaGFzKHRoaXMuZWxlbWVudHMpICYmICFoYXModGhpcy52YWx1ZXMpICYmICFoYXModGhpcy5kaXNjcmltaW5hdG9yKSAmJiBzaXplKHRoaXMucHJvcGVydGllcykgPT0gMCAmJiBzaXplKHRoaXMub3B0aW9uYWxfcHJvcGVydGllcykgPT0gMCA/IHNpemUodGhpcy5lbnVtKSA+IDAgOiB0cnVlQgsKCV9tZXRhZGF0YUILCglfbnVsbGFibGVCBgoEX3JlZkIHCgVfdHlwZUILCglfZWxlbWVudHNCGAoWX2FkZGl0aW9uYWxfcHJvcGVydGllc0IJCgdfdmFsdWVzQhAKDl9kaXNjcmltaW5hdG9yYgZwcm90bzM",[m,Xn]),Tt=Rn(re,0);var z=Sn("Ci9tb2NoYWJ1Z2FwaXMvYWRhcHQvZ3JhcGgvdjEvc2lnbmFsX2Zvcm1hdC5wcm90bxIbbW9jaGFidWdhcGlzLmFkYXB0LmdyYXBoLnYxIpIFCgxTaWduYWxGb3JtYXQSPAoKanRkX3NjaGVtYRgBIAEoCzImLm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC52MS5KVERTY2hlbWFIABKyBAoJbWltZV90eXBlGAIgASgJQpwEukiYBLoBmwIKMG1pbWVfdHlwZS5ub190eXBlX3dpbGRjYXJkX3dpdGhfY29uY3JldGVfc3VidHlwZRK7AVR5cGUgd2lsZGNhcmQgd2l0aCBjb25jcmV0ZSBzdWJ0eXBlIChlLmcuLCAnKi9wbmcnLCAnKi9qc29uJykgaXMgbm90IGFsbG93ZWQuIFVzZSBjb25jcmV0ZSB0eXBlIChlLmcuLCAnaW1hZ2UvcG5nJyksIHR5cGUtZmFtaWx5IHdpbGRjYXJkIChlLmcuLCAnaW1hZ2UvKicpLCBvciB1bml2ZXJzYWwgd2lsZGNhcmQgKCcqLyonKS4aKSEodGhpcy5zdGFydHNXaXRoKCcqLycpICYmIHRoaXMgIT0gJyovKicpugGRAQodbWltZV90eXBlLm5vX2FwcGxpY2F0aW9uX2pzb24SR2dlbmVyaWMganNvbiBpcyBqdGQtc2NoZW1hIHdpdGggZW1wdHkgc2NoZW1hLCB0aGlzIHdpbGwgYWNjZXB0IGFueSBKU09OGid0aGlzLmxvd2VyQXNjaWkoKSAhPSAnYXBwbGljYXRpb24vanNvbidyYhADGP8BMlteKFthLXpBLVowLTldW2EtekEtWjAtOSEjJCZcLV5fLitdezAsMTI2fXxcKikvKFthLXpBLVowLTldW2EtekEtWjAtOSEjJCZcLV5fLitdezAsMTI2fXxcKikkSABCDwoGZm9ybWF0EgW6SAIIAWIGcHJvdG8z",[m,re]),Je=Vn(z,0);import{fileDesc as Kn,messageDesc as Un}from"@bufbuild/protobuf/codegenv2";import{fileDesc as En,messageDesc as Mn}from"@bufbuild/protobuf/codegenv2";import{fileDesc as Jn,messageDesc as Bn}from"@bufbuild/protobuf/codegenv2";import{fileDesc as Wn,messageDesc as Cn}from"@bufbuild/protobuf/codegenv2";var D=Wn("CjNtb2NoYWJ1Z2FwaXMvYWRhcHQvZ3JhcGgvdjEvc2lnbmFsX2Rlc2NyaXB0b3IucHJvdG8SG21vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC52MSKPAgoQU2lnbmFsRGVzY3JpcHRvchIzCgRuYW1lGAEgASgJQiW6SCJyIBABGDIyGl5bXyRhLXpBLVpdW18kYS16QS1aMC05XSokEhwKBWxhYmVsGAIgASgJQgi6SAVyAxj6AUgAiAEBEiIKC2Rlc2NyaXB0aW9uGAMgASgJQgi6SAVyAxjoB0gBiAEBEhUKCG9wdGlvbmFsGAQgASgISAKIAQESRgoHZm9ybWF0cxgFIAMoCzIpLm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC52MS5TaWduYWxGb3JtYXRCCrpIB5IBBAgBEDJCCAoGX2xhYmVsQg4KDF9kZXNjcmlwdGlvbkILCglfb3B0aW9uYWxiBnByb3RvMw",[m,z]),ta=Cn(D,0);var me=Jn("Ci1tb2NoYWJ1Z2FwaXMvYWRhcHQvZ3JhcGgvdjEvdHJhbnNjZWl2ZXIucHJvdG8SG21vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC52MSLRAgoLVHJhbnNjZWl2ZXISMwoEbmFtZRgBIAEoCUIlukgiciAQARgyMhpeW18kYS16QS1aXVtfJGEtekEtWjAtOV0qJBIcCgVsYWJlbBgCIAEoCUIIukgFcgMY+gFIAIgBARIiCgtkZXNjcmlwdGlvbhgDIAEoCUIIukgFcgMY6AdIAYgBARKwAQoHc2lnbmFscxgEIAMoCzItLm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC52MS5TaWduYWxEZXNjcmlwdG9yQnC6SG26AWQKFHNpZ25hbHNfdW5pcXVlX25hbWVzEiRFYWNoIHNpZ25hbCBtdXN0IGhhdmUgYSB1bmlxdWUgbmFtZS4aJnRoaXMubWFwKHNpZ25hbCwgc2lnbmFsLm5hbWUpLnVuaXF1ZSgpkgEDEIAEQggKBl9sYWJlbEIOCgxfZGVzY3JpcHRpb25iBnByb3RvMw",[m,D]),ia=Bn(me,0);import{enumDesc as Yn,fileDesc as Fn,messageDesc as xn}from"@bufbuild/protobuf/codegenv2";var Y=Fn("Ci1tb2NoYWJ1Z2FwaXMvYWRhcHQvZ3JhcGgvdjEvdHJhbnNtaXR0ZXIucHJvdG8SG21vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC52MSLwAwoLVHJhbnNtaXR0ZXISMwoEbmFtZRgBIAEoCUIlukgiciAQARgyMhpeW18kYS16QS1aXVtfJGEtekEtWjAtOV0qJBIcCgVsYWJlbBgCIAEoCUIIukgFcgMY+gFIAIgBARIiCgtkZXNjcmlwdGlvbhgDIAEoCUIIukgFcgMY+gFIAYgBARKwAQoHc2lnbmFscxgEIAMoCzItLm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC52MS5TaWduYWxEZXNjcmlwdG9yQnC6SG26AWQKFHNpZ25hbHNfdW5pcXVlX25hbWVzEiRFYWNoIHNpZ25hbCBtdXN0IGhhdmUgYSB1bmlxdWUgbmFtZS4aJnRoaXMubWFwKHNpZ25hbCwgc2lnbmFsLm5hbWUpLnVuaXF1ZSgpkgEDEIAEEkAKBG1vZGUYBSABKA4yLS5tb2NoYWJ1Z2FwaXMuYWRhcHQuZ3JhcGgudjEuVHJhbnNtaXR0ZXIuTW9kZUgCiAEBIlIKBE1vZGUSFAoQTU9ERV9VTlNQRUNJRklFRBAAEhEKDU1PREVfU1RBTkRBUkQQARIPCgtNT0RFX1NUUkVBTRACEhAKDE1PREVfRkFJTFVSRRADQggKBl9sYWJlbEIOCgxfZGVzY3JpcHRpb25CBwoFX21vZGViBnByb3RvMw",[m,D]),ma=xn(Y,0),fn=(a=>(a[a.UNSPECIFIED=0]="UNSPECIFIED",a[a.STANDARD=1]="STANDARD",a[a.STREAM=2]="STREAM",a[a.FAILURE=3]="FAILURE",a))(fn||{}),pa=Yn(Y,0,0);var pe=En("Ciptb2NoYWJ1Z2FwaXMvYWRhcHQvZ3JhcGgvdjEvZXhjaGFuZ2UucHJvdG8SG21vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC52MSKcBAoIRXhjaGFuZ2USMwoEbmFtZRgBIAEoCUIlukgiciAQARgyMhpeW18kYS16QS1aXVtfJGEtekEtWjAtOV0qJBIcCgVsYWJlbBgCIAEoCUIIukgFcgMY+gFIAIgBARIiCgtkZXNjcmlwdGlvbhgDIAEoCUIIukgFcgMY6AdIAYgBARLFAQoMdHJhbnNtaXR0ZXJzGAQgAygLMigubW9jaGFidWdhcGlzLmFkYXB0LmdyYXBoLnYxLlRyYW5zbWl0dGVyQoQBukiAAboBeAoZdHJhbnNtaXR0ZXJzX3VuaXF1ZV9uYW1lcxIpRWFjaCB0cmFuc21pdHRlciBtdXN0IGhhdmUgYSB1bmlxdWUgbmFtZS4aMHRoaXMubWFwKHRyYW5zbWl0dGVyLCB0cmFuc21pdHRlci5uYW1lKS51bmlxdWUoKZIBAhAyErYBCglyZWNlaXZlcnMYBSADKAsyKC5tb2NoYWJ1Z2FwaXMuYWRhcHQuZ3JhcGgudjEuVHJhbnNjZWl2ZXJCebpIdroBbAoWcmVjZWl2ZXJzX3VuaXF1ZV9uYW1lcxImRWFjaCByZWNlaXZlciBtdXN0IGhhdmUgYSB1bmlxdWUgbmFtZS4aKnRoaXMubWFwKHJlY2VpdmVyLCByZWNlaXZlci5uYW1lKS51bmlxdWUoKZIBBAgBEDJCCAoGX2xhYmVsQg4KDF9kZXNjcmlwdGlvbmIGcHJvdG8z",[m,me,Y]),ya=Mn(pe,0);import{fileDesc as Qn,messageDesc as kn}from"@bufbuild/protobuf/codegenv2";import{enumDesc as vn,fileDesc as Hn,messageDesc as zn}from"@bufbuild/protobuf/codegenv2";var se=Hn("CjBtb2NoYWJ1Z2FwaXMvYWRhcHQvZ3JhcGgvdjEvc2lnbmFsX2JpbmRpbmcucHJvdG8SG21vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC52MSLaBAoNU2lnbmFsQmluZGluZxIzCgRuYW1lGAEgASgJQiW6SCJyIBABGDIyGl5bXyRhLXpBLVpdW18kYS16QS1aMC05XSokEhwKBWxhYmVsGAIgASgJQgi6SAVyAxj6AUgAiAEBEiIKC2Rlc2NyaXB0aW9uGAMgASgJQgi6SAVyAxjoB0gBiAEBEhUKCG9wdGlvbmFsGAQgASgISAKIAQESRgoHYWNjZXB0cxgFIAMoCzIpLm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC52MS5TaWduYWxGb3JtYXRCCrpIB5IBBAgBEDISgwEKCXJlZmVyZW5jZRgGIAEoCUJwukht2AEBcmgY+gEyY14oWzAtOWEtel17NH0vW18kYS16QS1aXVtfJGEtekEtWjAtOV0qL1tfJGEtekEtWl1bXyRhLXpBLVowLTldKnxjb25zdGFudC9bXyRhLXpBLVpdW18kYS16QS1aMC05XSopJBJOCgVlcnJvchgIIAEoDjIwLm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC52MS5TaWduYWxCaW5kaW5nLkVycm9yQgi6SAWCAQIgAEgDiAEBImYKBUVycm9yEhUKEUVSUk9SX1VOU1BFQ0lGSUVEEAASEQoNRVJST1JfVU5CT1VORBABEhgKFEVSUk9SX0lOVkFMSURfU09VUkNFEAISGQoVRVJST1JfU0NIRU1BX01JU01BVENIEANCCAoGX2xhYmVsQg4KDF9kZXNjcmlwdGlvbkILCglfb3B0aW9uYWxCCAoGX2Vycm9ySgQIBxAIYgZwcm90bzM",[m,z]),Sa=zn(se,0),Ln=(a=>(a[a.UNSPECIFIED=0]="UNSPECIFIED",a[a.UNBOUND=1]="UNBOUND",a[a.INVALID_SOURCE=2]="INVALID_SOURCE",a[a.SCHEMA_MISMATCH=3]="SCHEMA_MISMATCH",a))(Ln||{}),Va=vn(se,0,0);var ue=Qn("Ciptb2NoYWJ1Z2FwaXMvYWRhcHQvZ3JhcGgvdjEvcmVjZWl2ZXIucHJvdG8SG21vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC52MSLQAgoIUmVjZWl2ZXISMwoEbmFtZRgBIAEoCUIlukgiciAQARgyMhpeW18kYS16QS1aXVtfJGEtekEtWjAtOV0qJBIcCgVsYWJlbBgCIAEoCUIIukgFcgMY+gFIAIgBARIiCgtkZXNjcmlwdGlvbhgDIAEoCUIIukgFcgMY+gFIAYgBARKyAQoIYmluZGluZ3MYBCADKAsyKi5tb2NoYWJ1Z2FwaXMuYWRhcHQuZ3JhcGgudjEuU2lnbmFsQmluZGluZ0J0ukhxugFoChViaW5kaW5nc191bmlxdWVfbmFtZXMSJUVhY2ggYmluZGluZyBtdXN0IGhhdmUgYSB1bmlxdWUgbmFtZS4aKHRoaXMubWFwKGJpbmRpbmcsIGJpbmRpbmcubmFtZSkudW5pcXVlKCmSAQMQgARCCAoGX2xhYmVsQg4KDF9kZXNjcmlwdGlvbmIGcHJvdG8z",[m,se]),Ya=kn(ue,0);import{fileDesc as Nn,messageDesc as T}from"@bufbuild/protobuf/codegenv2";var L=Nn("Cj9tb2NoYWJ1Z2FwaXMvYWRhcHQvZ3JhcGgvdjEvdXNlcl9kZWZpbmVkX2V4Y2hhbmdlX29wdGlvbnMucHJvdG8SG21vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC52MSKXIQoaVXNlckRlZmluZWRFeGNoYW5nZU9wdGlvbnMSbAoTdHJhbnNtaXR0ZXJfb3B0aW9ucxgBIAEoCzJKLm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC52MS5Vc2VyRGVmaW5lZEV4Y2hhbmdlT3B0aW9ucy5UcmFuc21pdHRlck9wdGlvbnNIAIgBARJmChByZWNlaXZlcl9vcHRpb25zGAIgASgLMkcubW9jaGFidWdhcGlzLmFkYXB0LmdyYXBoLnYxLlVzZXJEZWZpbmVkRXhjaGFuZ2VPcHRpb25zLlJlY2VpdmVyT3B0aW9uc0gBiAEBEiMKDW1heF9leGNoYW5nZXMYAyABKAVCB7pIBBoCKABIAogBARIjCg1taW5fZXhjaGFuZ2VzGAQgASgFQge6SAQaAigASAOIAQES1AEKDmV4Y2hhbmdlX2xvY2tzGAUgAygLMkQubW9jaGFidWdhcGlzLmFkYXB0LmdyYXBoLnYxLlVzZXJEZWZpbmVkRXhjaGFuZ2VPcHRpb25zLkV4Y2hhbmdlTG9ja0J2ukhzugFwChtleGNoYW5nZV9sb2Nrc191bmlxdWVfbmFtZXMSMUVhY2ggZXhjaGFuZ2UgbG9jayBtdXN0IHRhcmdldCBhIHVuaXF1ZSBleGNoYW5nZS4aHnRoaXMubWFwKGVsLCBlbC5uYW1lKS51bmlxdWUoKRqYAQoKU2lnbmFsTG9jaxIzCgRuYW1lGAEgASgJQiW6SCJyIBABGDIyGl5bXyRhLXpBLVpdW18kYS16QS1aMC05XSokEkQKDG11c3Rfc3Vic3VtZRgCIAEoCzIpLm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC52MS5TaWduYWxGb3JtYXRIAIgBAUIPCg1fbXVzdF9zdWJzdW1lGpwGCg9UcmFuc21pdHRlckxvY2sSMwoEbmFtZRgBIAEoCUIlukgiciAQARgyMhpeW18kYS16QS1aXVtfJGEtekEtWjAtOV0qJBLIAQoMc2lnbmFsX2xvY2tzGAIgAygLMkIubW9jaGFidWdhcGlzLmFkYXB0LmdyYXBoLnYxLlVzZXJEZWZpbmVkRXhjaGFuZ2VPcHRpb25zLlNpZ25hbExvY2tCbrpIa7oBaAoZc2lnbmFsX2xvY2tzX3VuaXF1ZV9uYW1lcxItRWFjaCBzaWduYWwgbG9jayBtdXN0IHRhcmdldCBhIHVuaXF1ZSBzaWduYWwuGhx0aGlzLm1hcChzLCBzLm5hbWUpLnVuaXF1ZSgpEiEKC21pbl9zaWduYWxzGAMgASgFQge6SAQaAigASACIAQESIQoLbWF4X3NpZ25hbHMYBCABKAVCB7pIBBoCKABIAYgBARJHCgtsb2NrZWRfbW9kZRgFIAEoDjItLm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC52MS5UcmFuc21pdHRlci5Nb2RlSAKIAQE6yQK6SMUCGqMBCg9taW5fbWF4X3NpZ25hbHMSNm1pbl9zaWduYWxzIG11c3QgYmUgbGVzcyB0aGFuIG9yIGVxdWFsIHRvIG1heF9zaWduYWxzLhpYIWhhcyh0aGlzLm1pbl9zaWduYWxzKSB8fCAhaGFzKHRoaXMubWF4X3NpZ25hbHMpIHx8IHRoaXMubWluX3NpZ25hbHMgPD0gdGhpcy5tYXhfc2lnbmFscxqcAQoWbWluX3NpZ25hbHNfZ3RlX2xvY2tlZBI6bWluX3NpZ25hbHMgbXVzdCBiZSBhdCBsZWFzdCB0aGUgbnVtYmVyIG9mIGxvY2tlZCBzaWduYWxzLhpGIWhhcyh0aGlzLm1pbl9zaWduYWxzKSB8fCB0aGlzLm1pbl9zaWduYWxzID49IHRoaXMuc2lnbmFsX2xvY2tzLnNpemUoKUIOCgxfbWluX3NpZ25hbHNCDgoMX21heF9zaWduYWxzQg4KDF9sb2NrZWRfbW9kZRrABQoMUmVjZWl2ZXJMb2NrEjMKBG5hbWUYASABKAlCJbpIInIgEAEYMjIaXltfJGEtekEtWl1bXyRhLXpBLVowLTldKiQSyAEKDHNpZ25hbF9sb2NrcxgCIAMoCzJCLm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC52MS5Vc2VyRGVmaW5lZEV4Y2hhbmdlT3B0aW9ucy5TaWduYWxMb2NrQm66SGu6AWgKGXNpZ25hbF9sb2Nrc191bmlxdWVfbmFtZXMSLUVhY2ggc2lnbmFsIGxvY2sgbXVzdCB0YXJnZXQgYSB1bmlxdWUgc2lnbmFsLhocdGhpcy5tYXAocywgcy5uYW1lKS51bmlxdWUoKRIhCgttaW5fc2lnbmFscxgDIAEoBUIHukgEGgIoAEgAiAEBEiEKC21heF9zaWduYWxzGAQgASgFQge6SAQaAigASAGIAQE6yQK6SMUCGqMBCg9taW5fbWF4X3NpZ25hbHMSNm1pbl9zaWduYWxzIG11c3QgYmUgbGVzcyB0aGFuIG9yIGVxdWFsIHRvIG1heF9zaWduYWxzLhpYIWhhcyh0aGlzLm1pbl9zaWduYWxzKSB8fCAhaGFzKHRoaXMubWF4X3NpZ25hbHMpIHx8IHRoaXMubWluX3NpZ25hbHMgPD0gdGhpcy5tYXhfc2lnbmFscxqcAQoWbWluX3NpZ25hbHNfZ3RlX2xvY2tlZBI6bWluX3NpZ25hbHMgbXVzdCBiZSBhdCBsZWFzdCB0aGUgbnVtYmVyIG9mIGxvY2tlZCBzaWduYWxzLhpGIWhhcyh0aGlzLm1pbl9zaWduYWxzKSB8fCB0aGlzLm1pbl9zaWduYWxzID49IHRoaXMuc2lnbmFsX2xvY2tzLnNpemUoKUIOCgxfbWluX3NpZ25hbHNCDgoMX21heF9zaWduYWxzGo0GChJUcmFuc21pdHRlck9wdGlvbnMSHAoPYWxsb3dfc3RyZWFtaW5nGAEgASgISACIAQESyQEKBWxvY2tzGAIgAygLMkcubW9jaGFidWdhcGlzLmFkYXB0LmdyYXBoLnYxLlVzZXJEZWZpbmVkRXhjaGFuZ2VPcHRpb25zLlRyYW5zbWl0dGVyTG9ja0JxukhuugFrChJsb2Nrc191bmlxdWVfbmFtZXMSN0VhY2ggdHJhbnNtaXR0ZXIgbG9jayBtdXN0IHRhcmdldCBhIHVuaXF1ZSB0cmFuc21pdHRlci4aHHRoaXMubWFwKGwsIGwubmFtZSkudW5pcXVlKCkSJgoQbWluX3RyYW5zbWl0dGVycxgDIAEoBUIHukgEGgIoAEgBiAEBEiYKEG1heF90cmFuc21pdHRlcnMYBCABKAVCB7pIBBoCKABIAogBATr+ArpI+gIaxgEKFG1pbl9tYXhfdHJhbnNtaXR0ZXJzEkBtaW5fdHJhbnNtaXR0ZXJzIG11c3QgYmUgbGVzcyB0aGFuIG9yIGVxdWFsIHRvIG1heF90cmFuc21pdHRlcnMuGmwhaGFzKHRoaXMubWluX3RyYW5zbWl0dGVycykgfHwgIWhhcyh0aGlzLm1heF90cmFuc21pdHRlcnMpIHx8IHRoaXMubWluX3RyYW5zbWl0dGVycyA8PSB0aGlzLm1heF90cmFuc21pdHRlcnMargEKG21pbl90cmFuc21pdHRlcnNfZ3RlX2xvY2tlZBJEbWluX3RyYW5zbWl0dGVycyBtdXN0IGJlIGF0IGxlYXN0IHRoZSBudW1iZXIgb2YgbG9ja2VkIHRyYW5zbWl0dGVycy4aSSFoYXModGhpcy5taW5fdHJhbnNtaXR0ZXJzKSB8fCB0aGlzLm1pbl90cmFuc21pdHRlcnMgPj0gdGhpcy5sb2Nrcy5zaXplKClCEgoQX2FsbG93X3N0cmVhbWluZ0ITChFfbWluX3RyYW5zbWl0dGVyc0ITChFfbWF4X3RyYW5zbWl0dGVycxqfBQoPUmVjZWl2ZXJPcHRpb25zEsABCgVsb2NrcxgBIAMoCzJELm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC52MS5Vc2VyRGVmaW5lZEV4Y2hhbmdlT3B0aW9ucy5SZWNlaXZlckxvY2tCa7pIaLoBZQoSbG9ja3NfdW5pcXVlX25hbWVzEjFFYWNoIHJlY2VpdmVyIGxvY2sgbXVzdCB0YXJnZXQgYSB1bmlxdWUgcmVjZWl2ZXIuGhx0aGlzLm1hcChsLCBsLm5hbWUpLnVuaXF1ZSgpEiMKDW1pbl9yZWNlaXZlcnMYAiABKAVCB7pIBBoCKABIAIgBARIjCg1tYXhfcmVjZWl2ZXJzGAMgASgFQge6SAQaAigASAGIAQE62gK6SNYCGrEBChFtaW5fbWF4X3JlY2VpdmVycxI6bWluX3JlY2VpdmVycyBtdXN0IGJlIGxlc3MgdGhhbiBvciBlcXVhbCB0byBtYXhfcmVjZWl2ZXJzLhpgIWhhcyh0aGlzLm1pbl9yZWNlaXZlcnMpIHx8ICFoYXModGhpcy5tYXhfcmVjZWl2ZXJzKSB8fCB0aGlzLm1pbl9yZWNlaXZlcnMgPD0gdGhpcy5tYXhfcmVjZWl2ZXJzGp8BChhtaW5fcmVjZWl2ZXJzX2d0ZV9sb2NrZWQSPm1pbl9yZWNlaXZlcnMgbXVzdCBiZSBhdCBsZWFzdCB0aGUgbnVtYmVyIG9mIGxvY2tlZCByZWNlaXZlcnMuGkMhaGFzKHRoaXMubWluX3JlY2VpdmVycykgfHwgdGhpcy5taW5fcmVjZWl2ZXJzID49IHRoaXMubG9ja3Muc2l6ZSgpQhAKDl9taW5fcmVjZWl2ZXJzQhAKDl9tYXhfcmVjZWl2ZXJzGsYCCgxFeGNoYW5nZUxvY2sSMwoEbmFtZRgBIAEoCUIlukgiciAQARgyMhpeW18kYS16QS1aXVtfJGEtekEtWjAtOV0qJBJsChN0cmFuc21pdHRlcl9vcHRpb25zGAIgASgLMkoubW9jaGFidWdhcGlzLmFkYXB0LmdyYXBoLnYxLlVzZXJEZWZpbmVkRXhjaGFuZ2VPcHRpb25zLlRyYW5zbWl0dGVyT3B0aW9uc0gAiAEBEmYKEHJlY2VpdmVyX29wdGlvbnMYAyABKAsyRy5tb2NoYWJ1Z2FwaXMuYWRhcHQuZ3JhcGgudjEuVXNlckRlZmluZWRFeGNoYW5nZU9wdGlvbnMuUmVjZWl2ZXJPcHRpb25zSAGIAQFCFgoUX3RyYW5zbWl0dGVyX29wdGlvbnNCEwoRX3JlY2VpdmVyX29wdGlvbnM6uAG6SLQBGrEBChFtaW5fbWF4X2V4Y2hhbmdlcxI6bWluX2V4Y2hhbmdlcyBtdXN0IGJlIGxlc3MgdGhhbiBvciBlcXVhbCB0byBtYXhfZXhjaGFuZ2VzLhpgIWhhcyh0aGlzLm1pbl9leGNoYW5nZXMpIHx8ICFoYXModGhpcy5tYXhfZXhjaGFuZ2VzKSB8fCB0aGlzLm1pbl9leGNoYW5nZXMgPD0gdGhpcy5tYXhfZXhjaGFuZ2VzQhYKFF90cmFuc21pdHRlcl9vcHRpb25zQhMKEV9yZWNlaXZlcl9vcHRpb25zQhAKDl9tYXhfZXhjaGFuZ2VzQhAKDl9taW5fZXhjaGFuZ2VzYgZwcm90bzM",[m,z,Y]),va=T(L,0),Ha=T(L,0,0),za=T(L,0,1),La=T(L,0,2),Qa=T(L,0,3),ka=T(L,0,4),Na=T(L,0,5);var q=Kn("CjFtb2NoYWJ1Z2FwaXMvYWRhcHQvZ3JhcGgvdjEvdmVydGV4X21ldGFkYXRhLnByb3RvEhttb2NoYWJ1Z2FwaXMuYWRhcHQuZ3JhcGgudjEi8RQKDlZlcnRleE1ldGFkYXRhEhAKCGNvbXBsZXRlGAEgASgIErMBCglyZWNlaXZlcnMYAiADKAsyJS5tb2NoYWJ1Z2FwaXMuYWRhcHQuZ3JhcGgudjEuUmVjZWl2ZXJCebpIdroBbAoWcmVjZWl2ZXJzX3VuaXF1ZV9uYW1lcxImRWFjaCByZWNlaXZlciBtdXN0IGhhdmUgYSB1bmlxdWUgbmFtZS4aKnRoaXMubWFwKHJlY2VpdmVyLCByZWNlaXZlci5uYW1lKS51bmlxdWUoKZIBBAgBEDISxQEKDHRyYW5zbWl0dGVycxgDIAMoCzIoLm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC52MS5UcmFuc21pdHRlckKEAbpIgAG6AXgKGXRyYW5zbWl0dGVyc191bmlxdWVfbmFtZXMSKUVhY2ggdHJhbnNtaXR0ZXIgbXVzdCBoYXZlIGEgdW5pcXVlIG5hbWUuGjB0aGlzLm1hcCh0cmFuc21pdHRlciwgdHJhbnNtaXR0ZXIubmFtZSkudW5pcXVlKCmSAQIQMhKxAQoJZXhjaGFuZ2VzGAQgAygLMiUubW9jaGFidWdhcGlzLmFkYXB0LmdyYXBoLnYxLkV4Y2hhbmdlQne6SHS6AWwKFmV4Y2hhbmdlc191bmlxdWVfbmFtZXMSJkVhY2ggZXhjaGFuZ2UgbXVzdCBoYXZlIGEgdW5pcXVlIG5hbWUuGip0aGlzLm1hcChleGNoYW5nZSwgZXhjaGFuZ2UubmFtZSkudW5pcXVlKCmSAQIQZBJRCgt1ZGVfb3B0aW9ucxgFIAEoCzI3Lm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC52MS5Vc2VyRGVmaW5lZEV4Y2hhbmdlT3B0aW9uc0gAiAEBEiUKDWNyb25fc2NoZWR1bGUYBiABKAlCCbpIBnIEEAEYZEgBiAEBOv4Oukj6DhrvAQorZXhjaGFuZ2VfbG9ja3NfcmVmZXJlbmNlX2V4aXN0aW5nX2V4Y2hhbmdlcxJKRWFjaCBleGNoYW5nZSBsb2NrIG11c3QgcmVmZXJlbmNlIGFuIGV4Y2hhbmdlIHRoYXQgZXhpc3RzIGluIHRoZSBtZXRhZGF0YS4adCFoYXModGhpcy51ZGVfb3B0aW9ucykgfHwgdGhpcy51ZGVfb3B0aW9ucy5leGNoYW5nZV9sb2Nrcy5hbGwobG9jaywgdGhpcy5leGNoYW5nZXMuZXhpc3RzKGV4LCBleC5uYW1lID09IGxvY2submFtZSkpGocDCi1leGNoYW5nZV9sb2NrX3RyYW5zbWl0dGVyc19yZWZlcmVuY2VfZXhpc3RpbmcSZUVhY2ggbG9ja2VkIHRyYW5zbWl0dGVyIGluIGFuIGV4Y2hhbmdlIGxvY2sgbXVzdCByZWZlcmVuY2UgYSB0cmFuc21pdHRlciB0aGF0IGV4aXN0cyBpbiB0aGUgZXhjaGFuZ2UuGu4BIWhhcyh0aGlzLnVkZV9vcHRpb25zKSB8fCB0aGlzLnVkZV9vcHRpb25zLmV4Y2hhbmdlX2xvY2tzLmFsbChsb2NrLCAhaGFzKGxvY2sudHJhbnNtaXR0ZXJfb3B0aW9ucykgfHwgbG9jay50cmFuc21pdHRlcl9vcHRpb25zLmxvY2tzLmFsbCh0bCwgdGhpcy5leGNoYW5nZXMuZXhpc3RzKGV4LCBleC5uYW1lID09IGxvY2submFtZSAmJiBleC50cmFuc21pdHRlcnMuZXhpc3RzKHQsIHQubmFtZSA9PSB0bC5uYW1lKSkpKRr1AgoqZXhjaGFuZ2VfbG9ja19yZWNlaXZlcnNfcmVmZXJlbmNlX2V4aXN0aW5nEl9FYWNoIGxvY2tlZCByZWNlaXZlciBpbiBhbiBleGNoYW5nZSBsb2NrIG11c3QgcmVmZXJlbmNlIGEgcmVjZWl2ZXIgdGhhdCBleGlzdHMgaW4gdGhlIGV4Y2hhbmdlLhrlASFoYXModGhpcy51ZGVfb3B0aW9ucykgfHwgdGhpcy51ZGVfb3B0aW9ucy5leGNoYW5nZV9sb2Nrcy5hbGwobG9jaywgIWhhcyhsb2NrLnJlY2VpdmVyX29wdGlvbnMpIHx8IGxvY2sucmVjZWl2ZXJfb3B0aW9ucy5sb2Nrcy5hbGwocmwsIHRoaXMuZXhjaGFuZ2VzLmV4aXN0cyhleCwgZXgubmFtZSA9PSBsb2NrLm5hbWUgJiYgZXgucmVjZWl2ZXJzLmV4aXN0cyhyLCByLm5hbWUgPT0gcmwubmFtZSkpKSkayQMKNGV4Y2hhbmdlX2xvY2tfdHJhbnNtaXR0ZXJfc2lnbmFsc19yZWZlcmVuY2VfZXhpc3RpbmcSXUVhY2ggbG9ja2VkIHRyYW5zbWl0dGVyIHNpZ25hbCBtdXN0IHJlZmVyZW5jZSBhIHNpZ25hbCB0aGF0IGV4aXN0cyBpbiB0aGUgbG9ja2VkIHRyYW5zbWl0dGVyLhqxAiFoYXModGhpcy51ZGVfb3B0aW9ucykgfHwgdGhpcy51ZGVfb3B0aW9ucy5leGNoYW5nZV9sb2Nrcy5hbGwobG9jaywgIWhhcyhsb2NrLnRyYW5zbWl0dGVyX29wdGlvbnMpIHx8IGxvY2sudHJhbnNtaXR0ZXJfb3B0aW9ucy5sb2Nrcy5hbGwodGwsIHRsLnNpZ25hbF9sb2Nrcy5hbGwoc2wsIHRoaXMuZXhjaGFuZ2VzLmV4aXN0cyhleCwgZXgubmFtZSA9PSBsb2NrLm5hbWUgJiYgZXgudHJhbnNtaXR0ZXJzLmV4aXN0cyh0LCB0Lm5hbWUgPT0gdGwubmFtZSAmJiB0LnNpZ25hbHMuZXhpc3RzKHMsIHMubmFtZSA9PSBzbC5uYW1lKSkpKSkpGrcDCjFleGNoYW5nZV9sb2NrX3JlY2VpdmVyX3NpZ25hbHNfcmVmZXJlbmNlX2V4aXN0aW5nEldFYWNoIGxvY2tlZCByZWNlaXZlciBzaWduYWwgbXVzdCByZWZlcmVuY2UgYSBzaWduYWwgdGhhdCBleGlzdHMgaW4gdGhlIGxvY2tlZCByZWNlaXZlci4aqAIhaGFzKHRoaXMudWRlX29wdGlvbnMpIHx8IHRoaXMudWRlX29wdGlvbnMuZXhjaGFuZ2VfbG9ja3MuYWxsKGxvY2ssICFoYXMobG9jay5yZWNlaXZlcl9vcHRpb25zKSB8fCBsb2NrLnJlY2VpdmVyX29wdGlvbnMubG9ja3MuYWxsKHJsLCBybC5zaWduYWxfbG9ja3MuYWxsKHNsLCB0aGlzLmV4Y2hhbmdlcy5leGlzdHMoZXgsIGV4Lm5hbWUgPT0gbG9jay5uYW1lICYmIGV4LnJlY2VpdmVycy5leGlzdHMociwgci5uYW1lID09IHJsLm5hbWUgJiYgci5zaWduYWxzLmV4aXN0cyhzLCBzLm5hbWUgPT0gc2wubmFtZSkpKSkpKUIOCgxfdWRlX29wdGlvbnNCEAoOX2Nyb25fc2NoZWR1bGViBnByb3RvMw",[m,pe,ue,Y,L]),j=Un(q,0);import{enumDesc as Pn,fileDesc as On,messageDesc as S,serviceDesc as _n}from"@bufbuild/protobuf/codegenv2";import{file_google_protobuf_field_mask as qn}from"@bufbuild/protobuf/wkt";import{enumDesc as wn,fileDesc as Dn,messageDesc as V}from"@bufbuild/protobuf/codegenv2";import{file_google_protobuf_timestamp as Tn}from"@bufbuild/protobuf/wkt";var Z=Dn("Ciltb2NoYWJ1Z2FwaXMvYWRhcHQvcnVudGltZS92MS9zdG9yZS5wcm90bxIdbW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEiJgoIUHV0VmFsdWUSDQoFdmFsdWUYASABKAwSCwoDdHRsGAIgASgFIlkKCEdldFZhbHVlEg0KBXZhbHVlGAEgASgMEj4KCG1ldGFkYXRhGAIgASgLMiwubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuVmFsdWVNZXRhZGF0YSJnCg1WYWx1ZU1ldGFkYXRhEgsKA3R0bBgBIAEoBRIxCg1sYXN0X21vZGlmaWVkGAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBIWCgRldGFnGAMgASgJQgi6SAVyA7ABASLsAQoOVGltZXN0YW1wUmFuZ2USMQoFc3RhcnQYASABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQga6SAPIAQESLwoDZW5kGAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEIGukgDyAEBEhcKD3N0YXJ0X2luY2x1c2l2ZRgDIAEoCBIVCg1lbmRfaW5jbHVzaXZlGAQgASgIOka6SEMaQQoLdmFsaWRfcmFuZ2USG3N0YXJ0IG11c3QgYmUgbGVzcyB0aGFuIGVuZBoVdGhpcy5zdGFydCA8IHRoaXMuZW5kIp8DCghTZWxlY3RPcBIcCgVzdGFydBgBIAEoCUIIukgFcgMYgCBIAIgBARIaCgNlbmQYAiABKAlCCLpIBXIDGIAgSAGIAQESHAoPc3RhcnRfaW5jbHVzaXZlGAMgASgISAKIAQESGgoNZW5kX2luY2x1c2l2ZRgEIAEoCEgDiAEBEh4KBWxpbWl0GAUgASgFQgq6SAcaBRjoBygASASIAQESFwoKcGFnZV90b2tlbhgGIAEoCUgFiAEBOpQBukiQARqNAQoLdmFsaWRfcmFuZ2USQXdoZW4gYm90aCBzdGFydCBhbmQgZW5kIGFyZSBwcm92aWRlZCwgc3RhcnQgbXVzdCBiZSBsZXNzIHRoYW4gZW5kGjshaGFzKHRoaXMuc3RhcnQpIHx8ICFoYXModGhpcy5lbmQpIHx8IHRoaXMuc3RhcnQgPCB0aGlzLmVuZEIICgZfc3RhcnRCBgoEX2VuZEISChBfc3RhcnRfaW5jbHVzaXZlQhAKDl9lbmRfaW5jbHVzaXZlQggKBl9saW1pdEINCgtfcGFnZV90b2tlbiLgAQoOV3JpdGVPcGVyYXRpb24SOQoGaW5zZXJ0GAEgASgLMicubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuSW5zZXJ0T3BIABI5CgZkZWxldGUYAiABKAsyJy5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5EZWxldGVPcEgAEkQKDHJhbmdlX2RlbGV0ZRgDIAEoCzIsLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLlJhbmdlRGVsZXRlT3BIAEISCglvcGVyYXRpb24SBbpIAggBIrsBChlDb25kaXRpb25hbFdyaXRlT3BlcmF0aW9uEkQKBmluc2VydBgBIAEoCzIyLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkNvbmRpdGlvbmFsSW5zZXJ0T3BIABJECgZkZWxldGUYAiABKAsyMi5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5Db25kaXRpb25hbERlbGV0ZU9wSABCEgoJb3BlcmF0aW9uEgW6SAIIASLSAgoNUmFuZ2VEZWxldGVPcBIcCgVzdGFydBgBIAEoCUIIukgFcgMYgCBIAIgBARIaCgNlbmQYAiABKAlCCLpIBXIDGIAgSAGIAQESHAoPc3RhcnRfaW5jbHVzaXZlGAMgASgISAKIAQESGgoNZW5kX2luY2x1c2l2ZRgEIAEoCEgDiAEBOpQBukiQARqNAQoLdmFsaWRfcmFuZ2USQXdoZW4gYm90aCBzdGFydCBhbmQgZW5kIGFyZSBwcm92aWRlZCwgc3RhcnQgbXVzdCBiZSBsZXNzIHRoYW4gZW5kGjshaGFzKHRoaXMuc3RhcnQpIHx8ICFoYXModGhpcy5lbmQpIHx8IHRoaXMuc3RhcnQgPCB0aGlzLmVuZEIICgZfc3RhcnRCBgoEX2VuZEISChBfc3RhcnRfaW5jbHVzaXZlQhAKDl9lbmRfaW5jbHVzaXZlImEKCEluc2VydE9wEhUKA2tleRgBIAEoCUIIukgFcgMYgCASPgoFdmFsdWUYAiABKAsyJy5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5QdXRWYWx1ZUIGukgDyAEBIiEKCERlbGV0ZU9wEhUKA2tleRgBIAEoCUIIukgFcgMYgCAiwAYKE0NvbmRpdGlvbmFsSW5zZXJ0T3ASFQoDa2V5GAEgASgJQgi6SAVyAxiAIBI+CgV2YWx1ZRgCIAEoCzInLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLlB1dFZhbHVlQga6SAPIAQESWgoMcHJlY29uZGl0aW9uGAMgASgLMj8ubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuQ29uZGl0aW9uYWxJbnNlcnRPcC5QcmVjb25kaXRpb25IAIgBARrkBAoMUHJlY29uZGl0aW9uEjoKFGxhc3RfbW9kaWZpZWRfZXF1YWxzGAEgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgAEkwKE2xhc3RfbW9kaWZpZWRfcmFuZ2UYAiABKAsyLS5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5UaW1lc3RhbXBSYW5nZUgAEhsKBGV0YWcYBCABKAlCCLpIBXIDsAEBSAGIAQESGwoOZmFpbF9pZl9leGlzdHMYBSABKAhIAogBATrcArpI2AIaxwEKIG5vX3RpbWVzdGFtcF93aXRoX2ZhaWxfaWZfZXhpc3RzEjtmYWlsX2lmX2V4aXN0cyBjYW5ub3QgYmUgY29tYmluZWQgd2l0aCB0aW1lc3RhbXAgY29uZGl0aW9ucxpmdGhpcy5mYWlsX2lmX2V4aXN0cyA9PSB0cnVlID8gIWhhcyh0aGlzLmxhc3RfbW9kaWZpZWRfZXF1YWxzKSAmJiAhaGFzKHRoaXMubGFzdF9tb2RpZmllZF9yYW5nZSkgOiB0cnVlGosBChtub19ldGFnX3dpdGhfZmFpbF9pZl9leGlzdHMSNmZhaWxfaWZfZXhpc3RzIGNhbm5vdCBiZSBjb21iaW5lZCB3aXRoIGV0YWcgY29uZGl0aW9ucxo0dGhpcy5mYWlsX2lmX2V4aXN0cyA9PSB0cnVlID8gIWhhcyh0aGlzLmV0YWcpIDogdHJ1ZUIVChN0aW1lc3RhbXBfY29uZGl0aW9uQgcKBV9ldGFnQhEKD19mYWlsX2lmX2V4aXN0c0IPCg1fcHJlY29uZGl0aW9uIugFChNDb25kaXRpb25hbERlbGV0ZU9wEhUKA2tleRgBIAEoCUIIukgFcgMYgCASWgoMcHJlY29uZGl0aW9uGAIgASgLMj8ubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuQ29uZGl0aW9uYWxEZWxldGVPcC5QcmVjb25kaXRpb25IAIgBARrMBAoMUHJlY29uZGl0aW9uEhgKC211c3RfZXhpc3RzGAEgASgISAGIAQESOgoUbGFzdF9tb2RpZmllZF9lcXVhbHMYAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAASTAoTbGFzdF9tb2RpZmllZF9yYW5nZRgDIAEoCzItLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLlRpbWVzdGFtcFJhbmdlSAASGwoEZXRhZxgEIAEoCUIIukgFcgOwAQFIAogBATrKArpIxgIavgEKHW5vX3RpbWVzdGFtcF93aXRoX211c3RfZXhpc3RzEjhtdXN0X2V4aXN0cyBjYW5ub3QgYmUgY29tYmluZWQgd2l0aCB0aW1lc3RhbXAgY29uZGl0aW9ucxpjdGhpcy5tdXN0X2V4aXN0cyA9PSB0cnVlID8gIWhhcyh0aGlzLmxhc3RfbW9kaWZpZWRfZXF1YWxzKSAmJiAhaGFzKHRoaXMubGFzdF9tb2RpZmllZF9yYW5nZSkgOiB0cnVlGoIBChhub19ldGFnX3dpdGhfbXVzdF9leGlzdHMSM211c3RfZXhpc3RzIGNhbm5vdCBiZSBjb21iaW5lZCB3aXRoIGV0YWcgY29uZGl0aW9ucxoxdGhpcy5tdXN0X2V4aXN0cyA9PSB0cnVlID8gIWhhcyh0aGlzLmV0YWcpIDogdHJ1ZUIVChN0aW1lc3RhbXBfY29uZGl0aW9uQg4KDF9tdXN0X2V4aXN0c0IHCgVfZXRhZ0IPCg1fcHJlY29uZGl0aW9uKpABCglOYW1lc3BhY2USGQoVTkFNRVNQQUNFX1VOU1BFQ0lGSUVEEAASHQoZTkFNRVNQQUNFX1ZFUlRFWF9JTlNUQU5DRRABEh0KGU5BTUVTUEFDRV9QTFVHSU5fSU5TVEFOQ0UQAhIUChBOQU1FU1BBQ0VfVkVSVEVYEAMSFAoQTkFNRVNQQUNFX1BMVUdJThAEYgZwcm90bzM",[m,Tn]),es=V(Z,0),ns=V(Z,1),ts=V(Z,2),be=V(Z,3),as=V(Z,4),oe=V(Z,5),ss=V(Z,6),os=V(Z,7),cs=V(Z,8),is=V(Z,9),gs=V(Z,10),Ge=V(Z,10,0),ds=V(Z,11),Be=V(Z,11,0),jn=(i=>(i[i.UNSPECIFIED=0]="UNSPECIFIED",i[i.VERTEX_INSTANCE=1]="VERTEX_INSTANCE",i[i.PLUGIN_INSTANCE=2]="PLUGIN_INSTANCE",i[i.VERTEX=3]="VERTEX",i[i.PLUGIN=4]="PLUGIN",i))(jn||{}),Ye=wn(Z,0);var X=On("Cjhtb2NoYWJ1Z2FwaXMvYWRhcHQvcnVudGltZS92MS9jb25maWd1cmF0b3Jfc2VydmljZS5wcm90bxIdbW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEi5wEKGkxpc3RJbmNvbWluZ1NpZ25hbHNSZXF1ZXN0EjwKCHJlY2VpdmVyGAEgASgJQiW6SCJyIBABGGQyGl5bXyRhLXpBLVpdW18kYS16QS1aMC05XSokSACIAQESOgoHZm9ybWF0cxgCIAMoCzIpLm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC52MS5TaWduYWxGb3JtYXQSMwoKZmllbGRfbWFzaxgDIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2tIAYgBAUILCglfcmVjZWl2ZXJCDQoLX2ZpZWxkX21hc2si+QEKEEluY29taW5nVmVydGljZXMSCgoCaWQYASABKAkSDQoFbGFiZWwYAiABKAkSGAoLZGVzY3JpcHRpb24YAyABKAlIAIgBARI+Cgx0cmFuc21pdHRlcnMYBCADKAsyKC5tb2NoYWJ1Z2FwaXMuYWRhcHQuZ3JhcGgudjEuVHJhbnNtaXR0ZXISPgoLdmVydGV4X3R5cGUYBSABKA4yKS5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5WZXJ0ZXhUeXBlEhQKB2xvZ29faWQYBiABKAlIAYgBAUIOCgxfZGVzY3JpcHRpb25CCgoIX2xvZ29faWQiywIKG0xpc3RJbmNvbWluZ1NpZ25hbHNSZXNwb25zZRJBCgh2ZXJ0aWNlcxgBIAMoCzIvLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkluY29taW5nVmVydGljZXMSYQoMdmVydGV4X2xvZ29zGAIgAygLMksubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuTGlzdEluY29taW5nU2lnbmFsc1Jlc3BvbnNlLlZlcnRleExvZ29zRW50cnkSEAoIcmVjZWl2ZXIYAyABKAkSQAoJY29uc3RhbnRzGAQgAygLMi0ubW9jaGFidWdhcGlzLmFkYXB0LmdyYXBoLnYxLlNpZ25hbERlc2NyaXB0b3IaMgoQVmVydGV4TG9nb3NFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIsYBCilDb25maWd1cmF0b3JTZXJ2aWNlQmF0Y2hXcml0ZVN0b3JlUmVxdWVzdBJOCgpvcGVyYXRpb25zGAEgAygLMi0ubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuV3JpdGVPcGVyYXRpb25CC7pICJIBBQgBEOgHEkkKCW5hbWVzcGFjZRgCIAEoDjIoLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLk5hbWVzcGFjZUIMukgJggEGIAAgASACIvYBCipDb25maWd1cmF0b3JTZXJ2aWNlQmF0Y2hXcml0ZVN0b3JlUmVzcG9uc2USaQoIbWV0YWRhdGEYASADKAsyVy5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5Db25maWd1cmF0b3JTZXJ2aWNlQmF0Y2hXcml0ZVN0b3JlUmVzcG9uc2UuTWV0YWRhdGFFbnRyeRpdCg1NZXRhZGF0YUVudHJ5EgsKA2tleRgBIAEoCRI7CgV2YWx1ZRgCIAEoCzIsLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLlZhbHVlTWV0YWRhdGE6AjgBIr4BCiRDb25maWd1cmF0b3JTZXJ2aWNlV3JpdGVTdG9yZVJlcXVlc3QSSwoJb3BlcmF0aW9uGAEgASgLMjgubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuQ29uZGl0aW9uYWxXcml0ZU9wZXJhdGlvbhJJCgluYW1lc3BhY2UYAiABKA4yKC5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5OYW1lc3BhY2VCDLpICYIBBiAAIAEgAiJ5CiVDb25maWd1cmF0b3JTZXJ2aWNlV3JpdGVTdG9yZVJlc3BvbnNlEkMKCG1ldGFkYXRhGAEgASgLMiwubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuVmFsdWVNZXRhZGF0YUgAiAEBQgsKCV9tZXRhZGF0YSKXAQooQ29uZmlndXJhdG9yU2VydmljZUJhdGNoUmVhZFN0b3JlUmVxdWVzdBIgCgRrZXlzGAEgAygJQhK6SA+SAQwIARCQTiIFcgMYgCASSQoJbmFtZXNwYWNlGAIgASgOMigubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuTmFtZXNwYWNlQgy6SAmCAQYgACABIAIi5gEKKUNvbmZpZ3VyYXRvclNlcnZpY2VCYXRjaFJlYWRTdG9yZVJlc3BvbnNlEmIKBWl0ZW1zGAEgAygLMlMubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuQ29uZmlndXJhdG9yU2VydmljZUJhdGNoUmVhZFN0b3JlUmVzcG9uc2UuSXRlbXNFbnRyeRpVCgpJdGVtc0VudHJ5EgsKA2tleRgBIAEoCRI2CgV2YWx1ZRgCIAEoCzInLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkdldFZhbHVlOgI4ASK2AQolQ29uZmlndXJhdG9yU2VydmljZVNlbGVjdFN0b3JlUmVxdWVzdBJCCglvcGVyYXRpb24YASABKAsyJy5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5TZWxlY3RPcEIGukgDyAEBEkkKCW5hbWVzcGFjZRgCIAEoDjIoLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLk5hbWVzcGFjZUIMukgJggEGIAAgASACIogCCiZDb25maWd1cmF0b3JTZXJ2aWNlU2VsZWN0U3RvcmVSZXNwb25zZRJfCgVpdGVtcxgBIAMoCzJQLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkNvbmZpZ3VyYXRvclNlcnZpY2VTZWxlY3RTdG9yZVJlc3BvbnNlLkl0ZW1zRW50cnkSFwoKbmV4dF90b2tlbhgCIAEoCUgAiAEBGlUKCkl0ZW1zRW50cnkSCwoDa2V5GAEgASgJEjYKBXZhbHVlGAIgASgLMicubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuR2V0VmFsdWU6AjgBQg0KC19uZXh0X3Rva2VuIm8KKUNvbmZpZ3VyYXRvclNlcnZpY2VHZXRWZXJ0ZXhDb25maWdSZXF1ZXN0EjMKCmZpZWxkX21hc2sYASABKAsyGi5nb29nbGUucHJvdG9idWYuRmllbGRNYXNrSACIAQFCDQoLX2ZpZWxkX21hc2sitgIKKkNvbmZpZ3VyYXRvclNlcnZpY2VHZXRWZXJ0ZXhDb25maWdSZXNwb25zZRIOCgZjb25maWcYASABKAwSPQoIbWV0YWRhdGEYAiABKAsyKy5tb2NoYWJ1Z2FwaXMuYWRhcHQuZ3JhcGgudjEuVmVydGV4TWV0YWRhdGESfgoTY29uZmlndXJlZF9zZXJ2aWNlcxgDIAMoCzJhLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkNvbmZpZ3VyYXRvclNlcnZpY2VHZXRWZXJ0ZXhDb25maWdSZXNwb25zZS5Db25maWd1cmVkU2VydmljZXNFbnRyeRo5ChdDb25maWd1cmVkU2VydmljZXNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAg6AjgBIrgCChdQb3N0VmVydGV4Q29uZmlnUmVxdWVzdBITCgZjb25maWcYASABKAxIAIgBARJCCghtZXRhZGF0YRgCIAEoCzIrLm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC52MS5WZXJ0ZXhNZXRhZGF0YUgBiAEBEh4KEW92ZXJyaWRlX2JpbmRpbmdzGAMgASgISAKIAQE6drpIcxpxChtjb25maWdfb3JfbWV0YWRhdGFfcmVxdWlyZWQSKkVpdGhlciBjb25maWcgb3IgbWV0YWRhdGEgbXVzdCBiZSBwcm92aWRlZBomaGFzKHRoaXMuY29uZmlnKSB8fCBoYXModGhpcy5tZXRhZGF0YSlCCQoHX2NvbmZpZ0ILCglfbWV0YWRhdGFCFAoSX292ZXJyaWRlX2JpbmRpbmdzIlkKGFBvc3RWZXJ0ZXhDb25maWdSZXNwb25zZRI9CghtZXRhZGF0YRgBIAEoCzIrLm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC52MS5WZXJ0ZXhNZXRhZGF0YSrBAQoKVmVydGV4VHlwZRIbChdWRVJURVhfVFlQRV9VTlNQRUNJRklFRBAAEhUKEVZFUlRFWF9UWVBFX1NUQVJUEAESFgoSVkVSVEVYX1RZUEVfUExVR0lOEAISFgoSVkVSVEVYX1RZUEVfT1VUUFVUEAMSGAoUVkVSVEVYX1RZUEVfREVMRUdBVEUQBBIXChNWRVJURVhfVFlQRV9CQVJSSUVSEAUSHAoYVkVSVEVYX1RZUEVfRVhDSEFOR0VfT1VUEAYy2QgKE0NvbmZpZ3VyYXRvclNlcnZpY2USpgEKD0dldFZlcnRleENvbmZpZxJILm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkNvbmZpZ3VyYXRvclNlcnZpY2VHZXRWZXJ0ZXhDb25maWdSZXF1ZXN0GkkubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuQ29uZmlndXJhdG9yU2VydmljZUdldFZlcnRleENvbmZpZ1Jlc3BvbnNlEoMBChBQb3N0VmVydGV4Q29uZmlnEjYubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuUG9zdFZlcnRleENvbmZpZ1JlcXVlc3QaNy5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5Qb3N0VmVydGV4Q29uZmlnUmVzcG9uc2USlwEKCldyaXRlU3RvcmUSQy5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5Db25maWd1cmF0b3JTZXJ2aWNlV3JpdGVTdG9yZVJlcXVlc3QaRC5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5Db25maWd1cmF0b3JTZXJ2aWNlV3JpdGVTdG9yZVJlc3BvbnNlEqYBCg9CYXRjaFdyaXRlU3RvcmUSSC5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5Db25maWd1cmF0b3JTZXJ2aWNlQmF0Y2hXcml0ZVN0b3JlUmVxdWVzdBpJLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkNvbmZpZ3VyYXRvclNlcnZpY2VCYXRjaFdyaXRlU3RvcmVSZXNwb25zZRKjAQoOQmF0Y2hSZWFkU3RvcmUSRy5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5Db25maWd1cmF0b3JTZXJ2aWNlQmF0Y2hSZWFkU3RvcmVSZXF1ZXN0GkgubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuQ29uZmlndXJhdG9yU2VydmljZUJhdGNoUmVhZFN0b3JlUmVzcG9uc2USmgEKC1NlbGVjdFN0b3JlEkQubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuQ29uZmlndXJhdG9yU2VydmljZVNlbGVjdFN0b3JlUmVxdWVzdBpFLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkNvbmZpZ3VyYXRvclNlcnZpY2VTZWxlY3RTdG9yZVJlc3BvbnNlEowBChNMaXN0SW5jb21pbmdTaWduYWxzEjkubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuTGlzdEluY29taW5nU2lnbmFsc1JlcXVlc3QaOi5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5MaXN0SW5jb21pbmdTaWduYWxzUmVzcG9uc2ViBnByb3RvMw",[m,qn,D,z,Y,q,Z]),ys=S(X,0),Zs=S(X,1),Fe=S(X,2),As=S(X,3),Rs=S(X,4),Xs=S(X,5),Ss=S(X,6),Vs=S(X,7),Ws=S(X,8),Cs=S(X,9),Js=S(X,10),Bs=S(X,11),Ys=S(X,12),Fs=S(X,13),xs=S(X,14),$n=(b=>(b[b.UNSPECIFIED=0]="UNSPECIFIED",b[b.START=1]="START",b[b.PLUGIN=2]="PLUGIN",b[b.OUTPUT=3]="OUTPUT",b[b.DELEGATE=4]="DELEGATE",b[b.BARRIER=5]="BARRIER",b[b.EXCHANGE_OUT=6]="EXCHANGE_OUT",b))($n||{}),fs=Pn(X,0),xe=_n(X,0);import{fileDesc as mt,messageDesc as y,serviceDesc as pt}from"@bufbuild/protobuf/codegenv2";import{file_google_protobuf_field_mask as ut}from"@bufbuild/protobuf/wkt";import{enumDesc as it,fileDesc as gt,messageDesc as g,serviceDesc as dt}from"@bufbuild/protobuf/codegenv2";import{extDesc as Ls,fileDesc as nt}from"@bufbuild/protobuf/codegenv2";import{fileDesc as et,messageDesc as vs}from"@bufbuild/protobuf/codegenv2";var fe=et("ChVnb29nbGUvYXBpL2h0dHAucHJvdG8SCmdvb2dsZS5hcGkiVAoESHR0cBIjCgVydWxlcxgBIAMoCzIULmdvb2dsZS5hcGkuSHR0cFJ1bGUSJwofZnVsbHlfZGVjb2RlX3Jlc2VydmVkX2V4cGFuc2lvbhgCIAEoCCKBAgoISHR0cFJ1bGUSEAoIc2VsZWN0b3IYASABKAkSDQoDZ2V0GAIgASgJSAASDQoDcHV0GAMgASgJSAASDgoEcG9zdBgEIAEoCUgAEhAKBmRlbGV0ZRgFIAEoCUgAEg8KBXBhdGNoGAYgASgJSAASLwoGY3VzdG9tGAggASgLMh0uZ29vZ2xlLmFwaS5DdXN0b21IdHRwUGF0dGVybkgAEgwKBGJvZHkYByABKAkSFQoNcmVzcG9uc2VfYm9keRgMIAEoCRIxChNhZGRpdGlvbmFsX2JpbmRpbmdzGAsgAygLMhQuZ29vZ2xlLmFwaS5IdHRwUnVsZUIJCgdwYXR0ZXJuIi8KEUN1c3RvbUh0dHBQYXR0ZXJuEgwKBGtpbmQYASABKAkSDAoEcGF0aBgCIAEoCUJnCg5jb20uZ29vZ2xlLmFwaUIJSHR0cFByb3RvUAFaQWdvb2dsZS5nb2xhbmcub3JnL2dlbnByb3RvL2dvb2dsZWFwaXMvYXBpL2Fubm90YXRpb25zO2Fubm90YXRpb25zogIER0FQSWIGcHJvdG8z");import{file_google_protobuf_descriptor as tt}from"@bufbuild/protobuf/wkt";var Ee=nt("Chxnb29nbGUvYXBpL2Fubm90YXRpb25zLnByb3RvEgpnb29nbGUuYXBpOksKBGh0dHASHi5nb29nbGUucHJvdG9idWYuTWV0aG9kT3B0aW9ucxiwyrwiIAEoCzIULmdvb2dsZS5hcGkuSHR0cFJ1bGVSBGh0dHBCbgoOY29tLmdvb2dsZS5hcGlCEEFubm90YXRpb25zUHJvdG9QAVpBZ29vZ2xlLmdvbGFuZy5vcmcvZ2VucHJvdG8vZ29vZ2xlYXBpcy9hcGkvYW5ub3RhdGlvbnM7YW5ub3RhdGlvbnOiAgRHQVBJYgZwcm90bzM",[fe,tt]);import{enumDesc as Ts,extDesc as js,fileDesc as st,messageDesc as Ps}from"@bufbuild/protobuf/codegenv2";import{enumDesc as Us,fileDesc as at}from"@bufbuild/protobuf/codegenv2";var Me=at("Ch1nb29nbGUvYXBpL2xhdW5jaF9zdGFnZS5wcm90bxIKZ29vZ2xlLmFwaSqMAQoLTGF1bmNoU3RhZ2USHAoYTEFVTkNIX1NUQUdFX1VOU1BFQ0lGSUVEEAASEQoNVU5JTVBMRU1FTlRFRBAGEg0KCVBSRUxBVU5DSBAHEhAKDEVBUkxZX0FDQ0VTUxABEgkKBUFMUEhBEAISCAoEQkVUQRADEgYKAkdBEAQSDgoKREVQUkVDQVRFRBAFQloKDmNvbS5nb29nbGUuYXBpQhBMYXVuY2hTdGFnZVByb3RvUAFaLWdvb2dsZS5nb2xhbmcub3JnL2dlbnByb3RvL2dvb2dsZWFwaXMvYXBpO2FwaaICBEdBUEliBnByb3RvMw");import{file_google_protobuf_descriptor as ot,file_google_protobuf_duration as ct}from"@bufbuild/protobuf/wkt";var ve=st("Chdnb29nbGUvYXBpL2NsaWVudC5wcm90bxIKZ29vZ2xlLmFwaSK+AQoWQ29tbW9uTGFuZ3VhZ2VTZXR0aW5ncxIeChJyZWZlcmVuY2VfZG9jc191cmkYASABKAlCAhgBEjoKDGRlc3RpbmF0aW9ucxgCIAMoDjIkLmdvb2dsZS5hcGkuQ2xpZW50TGlicmFyeURlc3RpbmF0aW9uEkgKGnNlbGVjdGl2ZV9nYXBpY19nZW5lcmF0aW9uGAMgASgLMiQuZ29vZ2xlLmFwaS5TZWxlY3RpdmVHYXBpY0dlbmVyYXRpb24i+wMKFUNsaWVudExpYnJhcnlTZXR0aW5ncxIPCgd2ZXJzaW9uGAEgASgJEi0KDGxhdW5jaF9zdGFnZRgCIAEoDjIXLmdvb2dsZS5hcGkuTGF1bmNoU3RhZ2USGgoScmVzdF9udW1lcmljX2VudW1zGAMgASgIEi8KDWphdmFfc2V0dGluZ3MYFSABKAsyGC5nb29nbGUuYXBpLkphdmFTZXR0aW5ncxItCgxjcHBfc2V0dGluZ3MYFiABKAsyFy5nb29nbGUuYXBpLkNwcFNldHRpbmdzEi0KDHBocF9zZXR0aW5ncxgXIAEoCzIXLmdvb2dsZS5hcGkuUGhwU2V0dGluZ3MSMwoPcHl0aG9uX3NldHRpbmdzGBggASgLMhouZ29vZ2xlLmFwaS5QeXRob25TZXR0aW5ncxIvCg1ub2RlX3NldHRpbmdzGBkgASgLMhguZ29vZ2xlLmFwaS5Ob2RlU2V0dGluZ3MSMwoPZG90bmV0X3NldHRpbmdzGBogASgLMhouZ29vZ2xlLmFwaS5Eb3RuZXRTZXR0aW5ncxIvCg1ydWJ5X3NldHRpbmdzGBsgASgLMhguZ29vZ2xlLmFwaS5SdWJ5U2V0dGluZ3MSKwoLZ29fc2V0dGluZ3MYHCABKAsyFi5nb29nbGUuYXBpLkdvU2V0dGluZ3MiqAMKClB1Ymxpc2hpbmcSMwoPbWV0aG9kX3NldHRpbmdzGAIgAygLMhouZ29vZ2xlLmFwaS5NZXRob2RTZXR0aW5ncxIVCg1uZXdfaXNzdWVfdXJpGGUgASgJEhkKEWRvY3VtZW50YXRpb25fdXJpGGYgASgJEhYKDmFwaV9zaG9ydF9uYW1lGGcgASgJEhQKDGdpdGh1Yl9sYWJlbBhoIAEoCRIeChZjb2Rlb3duZXJfZ2l0aHViX3RlYW1zGGkgAygJEhYKDmRvY190YWdfcHJlZml4GGogASgJEjsKDG9yZ2FuaXphdGlvbhhrIAEoDjIlLmdvb2dsZS5hcGkuQ2xpZW50TGlicmFyeU9yZ2FuaXphdGlvbhI7ChBsaWJyYXJ5X3NldHRpbmdzGG0gAygLMiEuZ29vZ2xlLmFwaS5DbGllbnRMaWJyYXJ5U2V0dGluZ3MSKQohcHJvdG9fcmVmZXJlbmNlX2RvY3VtZW50YXRpb25fdXJpGG4gASgJEigKIHJlc3RfcmVmZXJlbmNlX2RvY3VtZW50YXRpb25fdXJpGG8gASgJIuMBCgxKYXZhU2V0dGluZ3MSFwoPbGlicmFyeV9wYWNrYWdlGAEgASgJEkwKE3NlcnZpY2VfY2xhc3NfbmFtZXMYAiADKAsyLy5nb29nbGUuYXBpLkphdmFTZXR0aW5ncy5TZXJ2aWNlQ2xhc3NOYW1lc0VudHJ5EjIKBmNvbW1vbhgDIAEoCzIiLmdvb2dsZS5hcGkuQ29tbW9uTGFuZ3VhZ2VTZXR0aW5ncxo4ChZTZXJ2aWNlQ2xhc3NOYW1lc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEiQQoLQ3BwU2V0dGluZ3MSMgoGY29tbW9uGAEgASgLMiIuZ29vZ2xlLmFwaS5Db21tb25MYW5ndWFnZVNldHRpbmdzIloKC1BocFNldHRpbmdzEjIKBmNvbW1vbhgBIAEoCzIiLmdvb2dsZS5hcGkuQ29tbW9uTGFuZ3VhZ2VTZXR0aW5ncxIXCg9saWJyYXJ5X3BhY2thZ2UYAiABKAkimwIKDlB5dGhvblNldHRpbmdzEjIKBmNvbW1vbhgBIAEoCzIiLmdvb2dsZS5hcGkuQ29tbW9uTGFuZ3VhZ2VTZXR0aW5ncxJOChVleHBlcmltZW50YWxfZmVhdHVyZXMYAiABKAsyLy5nb29nbGUuYXBpLlB5dGhvblNldHRpbmdzLkV4cGVyaW1lbnRhbEZlYXR1cmVzGoQBChRFeHBlcmltZW50YWxGZWF0dXJlcxIdChVyZXN0X2FzeW5jX2lvX2VuYWJsZWQYASABKAgSJwofcHJvdG9idWZfcHl0aG9uaWNfdHlwZXNfZW5hYmxlZBgCIAEoCBIkChx1bnZlcnNpb25lZF9wYWNrYWdlX2Rpc2FibGVkGAMgASgIIkIKDE5vZGVTZXR0aW5ncxIyCgZjb21tb24YASABKAsyIi5nb29nbGUuYXBpLkNvbW1vbkxhbmd1YWdlU2V0dGluZ3MiqgMKDkRvdG5ldFNldHRpbmdzEjIKBmNvbW1vbhgBIAEoCzIiLmdvb2dsZS5hcGkuQ29tbW9uTGFuZ3VhZ2VTZXR0aW5ncxJJChByZW5hbWVkX3NlcnZpY2VzGAIgAygLMi8uZ29vZ2xlLmFwaS5Eb3RuZXRTZXR0aW5ncy5SZW5hbWVkU2VydmljZXNFbnRyeRJLChFyZW5hbWVkX3Jlc291cmNlcxgDIAMoCzIwLmdvb2dsZS5hcGkuRG90bmV0U2V0dGluZ3MuUmVuYW1lZFJlc291cmNlc0VudHJ5EhkKEWlnbm9yZWRfcmVzb3VyY2VzGAQgAygJEiAKGGZvcmNlZF9uYW1lc3BhY2VfYWxpYXNlcxgFIAMoCRIeChZoYW5kd3JpdHRlbl9zaWduYXR1cmVzGAYgAygJGjYKFFJlbmFtZWRTZXJ2aWNlc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEaNwoVUmVuYW1lZFJlc291cmNlc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCToCOAEiQgoMUnVieVNldHRpbmdzEjIKBmNvbW1vbhgBIAEoCzIiLmdvb2dsZS5hcGkuQ29tbW9uTGFuZ3VhZ2VTZXR0aW5ncyK/AQoKR29TZXR0aW5ncxIyCgZjb21tb24YASABKAsyIi5nb29nbGUuYXBpLkNvbW1vbkxhbmd1YWdlU2V0dGluZ3MSRQoQcmVuYW1lZF9zZXJ2aWNlcxgCIAMoCzIrLmdvb2dsZS5hcGkuR29TZXR0aW5ncy5SZW5hbWVkU2VydmljZXNFbnRyeRo2ChRSZW5hbWVkU2VydmljZXNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAk6AjgBIoIDCg5NZXRob2RTZXR0aW5ncxIQCghzZWxlY3RvchgBIAEoCRI8Cgxsb25nX3J1bm5pbmcYAiABKAsyJi5nb29nbGUuYXBpLk1ldGhvZFNldHRpbmdzLkxvbmdSdW5uaW5nEh0KFWF1dG9fcG9wdWxhdGVkX2ZpZWxkcxgDIAMoCRIxCghiYXRjaGluZxgEIAEoCzIfLmdvb2dsZS5hcGkuQmF0Y2hpbmdDb25maWdQcm90bxrNAQoLTG9uZ1J1bm5pbmcSNQoSaW5pdGlhbF9wb2xsX2RlbGF5GAEgASgLMhkuZ29vZ2xlLnByb3RvYnVmLkR1cmF0aW9uEh0KFXBvbGxfZGVsYXlfbXVsdGlwbGllchgCIAEoAhIxCg5tYXhfcG9sbF9kZWxheRgDIAEoCzIZLmdvb2dsZS5wcm90b2J1Zi5EdXJhdGlvbhI1ChJ0b3RhbF9wb2xsX3RpbWVvdXQYBCABKAsyGS5nb29nbGUucHJvdG9idWYuRHVyYXRpb24iUQoYU2VsZWN0aXZlR2FwaWNHZW5lcmF0aW9uEg8KB21ldGhvZHMYASADKAkSJAocZ2VuZXJhdGVfb21pdHRlZF9hc19pbnRlcm5hbBgCIAEoCCKLAQoTQmF0Y2hpbmdDb25maWdQcm90bxI1Cgp0aHJlc2hvbGRzGAEgASgLMiEuZ29vZ2xlLmFwaS5CYXRjaGluZ1NldHRpbmdzUHJvdG8SPQoQYmF0Y2hfZGVzY3JpcHRvchgCIAEoCzIjLmdvb2dsZS5hcGkuQmF0Y2hpbmdEZXNjcmlwdG9yUHJvdG8i6wIKFUJhdGNoaW5nU2V0dGluZ3NQcm90bxIfChdlbGVtZW50X2NvdW50X3RocmVzaG9sZBgBIAEoBRIeChZyZXF1ZXN0X2J5dGVfdGhyZXNob2xkGAIgASgDEjIKD2RlbGF5X3RocmVzaG9sZBgDIAEoCzIZLmdvb2dsZS5wcm90b2J1Zi5EdXJhdGlvbhIbChNlbGVtZW50X2NvdW50X2xpbWl0GAQgASgFEhoKEnJlcXVlc3RfYnl0ZV9saW1pdBgFIAEoBRIiChpmbG93X2NvbnRyb2xfZWxlbWVudF9saW1pdBgGIAEoBRIfChdmbG93X2NvbnRyb2xfYnl0ZV9saW1pdBgHIAEoBRJfCiRmbG93X2NvbnRyb2xfbGltaXRfZXhjZWVkZWRfYmVoYXZpb3IYCCABKA4yMS5nb29nbGUuYXBpLkZsb3dDb250cm9sTGltaXRFeGNlZWRlZEJlaGF2aW9yUHJvdG8iaQoXQmF0Y2hpbmdEZXNjcmlwdG9yUHJvdG8SFQoNYmF0Y2hlZF9maWVsZBgBIAEoCRIcChRkaXNjcmltaW5hdG9yX2ZpZWxkcxgCIAMoCRIZChFzdWJyZXNwb25zZV9maWVsZBgDIAEoCSqjAQoZQ2xpZW50TGlicmFyeU9yZ2FuaXphdGlvbhIrCidDTElFTlRfTElCUkFSWV9PUkdBTklaQVRJT05fVU5TUEVDSUZJRUQQABIJCgVDTE9VRBABEgcKA0FEUxACEgoKBlBIT1RPUxADEg8KC1NUUkVFVF9WSUVXEAQSDAoIU0hPUFBJTkcQBRIHCgNHRU8QBhIRCg1HRU5FUkFUSVZFX0FJEAcqZwoYQ2xpZW50TGlicmFyeURlc3RpbmF0aW9uEioKJkNMSUVOVF9MSUJSQVJZX0RFU1RJTkFUSU9OX1VOU1BFQ0lGSUVEEAASCgoGR0lUSFVCEAoSEwoPUEFDS0FHRV9NQU5BR0VSEBQqZwolRmxvd0NvbnRyb2xMaW1pdEV4Y2VlZGVkQmVoYXZpb3JQcm90bxISCg5VTlNFVF9CRUhBVklPUhAAEhMKD1RIUk9XX0VYQ0VQVElPThABEgkKBUJMT0NLEAISCgoGSUdOT1JFEAM6SgoQbWV0aG9kX3NpZ25hdHVyZRIeLmdvb2dsZS5wcm90b2J1Zi5NZXRob2RPcHRpb25zGJsIIAMoCVIPbWV0aG9kU2lnbmF0dXJlOkMKDGRlZmF1bHRfaG9zdBIfLmdvb2dsZS5wcm90b2J1Zi5TZXJ2aWNlT3B0aW9ucxiZCCABKAlSC2RlZmF1bHRIb3N0OkMKDG9hdXRoX3Njb3BlcxIfLmdvb2dsZS5wcm90b2J1Zi5TZXJ2aWNlT3B0aW9ucxiaCCABKAlSC29hdXRoU2NvcGVzOkQKC2FwaV92ZXJzaW9uEh8uZ29vZ2xlLnByb3RvYnVmLlNlcnZpY2VPcHRpb25zGMG6q/oBIAEoCVIKYXBpVmVyc2lvbkJpCg5jb20uZ29vZ2xlLmFwaUILQ2xpZW50UHJvdG9QAVpBZ29vZ2xlLmdvbGFuZy5vcmcvZ2VucHJvdG8vZ29vZ2xlYXBpcy9hcGkvYW5ub3RhdGlvbnM7YW5ub3RhdGlvbnOiAgRHQVBJYgZwcm90bzM",[Me,ot,ct]);import{file_google_protobuf_timestamp as lt}from"@bufbuild/protobuf/wkt";var c=gt("CjNtb2NoYWJ1Z2FwaXMvYWRhcHQvYXV0b21hdGlvbnMvdjEvYXV0b21hdGlvbnMucHJvdG8SIW1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MSIwChZDcmVhdGVDaGFsbGVuZ2VSZXF1ZXN0EhYKAmlkGAEgASgJQgq6SAdyBRABGPQDIqIBChdDcmVhdGVDaGFsbGVuZ2VSZXNwb25zZRINCgVjb3VudBgBIAEoDRIMCgRzaXplGAIgASgNEhIKCmRpZmZpY3VsdHkYAyABKA0SKwoHZXhwaXJlcxgEIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXASDQoFdG9rZW4YBSABKAkSGgoSdmVyaWZpY2F0aW9uX3Rva2VuGAYgASgJIngKFlJlZGVlbUNoYWxsZW5nZVJlcXVlc3QSFgoCaWQYASABKAlCCrpIB3IFEAEY9AMSJgoSdmVyaWZpY2F0aW9uX3Rva2VuGAIgASgJQgq6SAdyBRABGNAPEh4KCXNvbHV0aW9ucxgDIAMoA0ILukgIkgEFCAEQ6AciVQoXUmVkZWVtQ2hhbGxlbmdlUmVzcG9uc2USDQoFdG9rZW4YASABKAkSKwoHZXhwaXJlcxgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAiLwoVSW5oZXJpdFNlc3Npb25SZXF1ZXN0EhYKAmlkGAEgASgJQgq6SAdyBRABGPQDImUKFkluaGVyaXRTZXNzaW9uUmVzcG9uc2USDQoFdG9rZW4YASABKAkSMAoHZXhwaXJlcxgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAIgBAUIKCghfZXhwaXJlcyKvAQoRUmVhZE91dHB1dFJlcXVlc3QSFgoCaWQYASABKAlCCrpIB3IFEAEY9AMSGgoJcGFnZV9zaXplGAIgASgNQge6SAQqAhhkEikKBnZlcnRleBgDIAEoCUIUukgRcg8yDV5bMC05YS16XXs0fSRIAIgBARIhCgpuZXdlcl90aGFuGAQgASgJQgi6SAVyA7ABAUgBiAEBQgkKB192ZXJ0ZXhCDQoLX25ld2VyX3RoYW4iywEKElJlYWRPdXRwdXRSZXNwb25zZRI7CgdzZXNzaW9uGAEgASgLMioubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlNlc3Npb24SOgoHb3V0cHV0cxgCIAMoCzIpLm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5PdXRwdXQSJwoQbmV4dF9wYWdlX2N1cnNvchgDIAEoCUIIukgFcgOwAQFIAIgBAUITChFfbmV4dF9wYWdlX2N1cnNvciJ3Cg9SZWFkVXJsc1JlcXVlc3QSFgoCaWQYASABKAlCCrpIB3IFEAEY9AMSGgoJcGFnZV9zaXplGAIgASgNQge6SAQqAhhkEiEKCm5ld2VyX3RoYW4YAyABKAlCCLpIBXIDsAEBSACIAQFCDQoLX25ld2VyX3RoYW4iwwEKEFJlYWRVcmxzUmVzcG9uc2USOwoHc2Vzc2lvbhgBIAEoCzIqLm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5TZXNzaW9uEjQKBHVybHMYAiADKAsyJi5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuVXJsEicKEG5leHRfcGFnZV9jdXJzb3IYAyABKAlCCLpIBXIDsAEBSACIAQFCEwoRX25leHRfcGFnZV9jdXJzb3IilAMKE1N0YXJ0U2Vzc2lvblJlcXVlc3QSFgoCaWQYASABKAlCCrpIB3IFEAEY9AMSOwoLdHJhbnNtaXR0ZXIYAiABKAlCIbpIHnIcEAEYZDIWXlthLXpBLVowLTlfLV17MSwxMDB9JEgAiAEBEoABCgdzaWduYWxzGAMgAygLMkMubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlN0YXJ0U2Vzc2lvblJlcXVlc3QuU2lnbmFsc0VudHJ5Qiq6SCeaASQiInIgEAEYZDIaXltfJGEtekEtWl1bXyRhLXpBLVowLTldKiQSKAoPY2hhbGxlbmdlX3Rva2VuGAQgASgJQgq6SAdyBRABGPQDSAGIAQEaVwoMU2lnbmFsc0VudHJ5EgsKA2tleRgBIAEoCRI2CgV2YWx1ZRgCIAEoCzInLm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC52MS5TaWduYWxEYXRhOgI4AUIOCgxfdHJhbnNtaXR0ZXJCEgoQX2NoYWxsZW5nZV90b2tlbiJjChRTdGFydFNlc3Npb25SZXNwb25zZRINCgV0b2tlbhgBIAEoCRIwCgdleHBpcmVzGAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEgAiAEBQgoKCF9leHBpcmVzIlIKElN0b3BTZXNzaW9uUmVxdWVzdBIWCgJpZBgBIAEoCUIKukgHcgUQARj0AxIbCgRmb3JrGAIgASgJQgi6SAVyAxjoB0gAiAEBQgcKBV9mb3JrIhUKE1N0b3BTZXNzaW9uUmVzcG9uc2UiKwoRR2V0U2Vzc2lvblJlcXVlc3QSFgoCaWQYASABKAlCCrpIB3IFEAEY9AMiWQoSR2V0U2Vzc2lvblJlc3BvbnNlEkMKB3Nlc3Npb24YASABKAsyKi5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuU2Vzc2lvbkIGukgDyAEBIuwBCgZPdXRwdXQSDgoGdmVydGV4GAEgASgJEgwKBGZvcmsYAiABKAkSQQoEZGF0YRgDIAMoCzIzLm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5PdXRwdXQuRGF0YUVudHJ5EisKB2NyZWF0ZWQYBCABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wGlQKCURhdGFFbnRyeRILCgNrZXkYASABKAkSNgoFdmFsdWUYAiABKAsyJy5tb2NoYWJ1Z2FwaXMuYWRhcHQuZ3JhcGgudjEuU2lnbmFsRGF0YToCOAEiCwoJVXJsUmV0YWluIjwKCFVybENsb3NlEhwKD3RpbWVvdXRfc2Vjb25kcxgBIAEoBUgAiAEBQhIKEF90aW1lb3V0X3NlY29uZHMiDAoKVXJsUmVjeWNsZSLvAgoDVXJsEgsKA3VybBgBIAEoCRIMCgRmb3JrGAIgASgJEg4KBnZlcnRleBgDIAEoCRIMCgRkb25lGAQgASgIEisKB2NyZWF0ZWQYBSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEg0KBXRva2VuGAYgASgJEg8KB3N0b3BwZWQYByABKAgSDgoGc291cmNlGAggASgJEj4KBnJldGFpbhgJIAEoCzIsLm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5VcmxSZXRhaW5IABI8CgVjbG9zZRgKIAEoCzIrLm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5VcmxDbG9zZUgAEkAKB3JlY3ljbGUYCyABKAsyLS5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuVXJsUmVjeWNsZUgAQhIKEHJldGVudGlvbl9wb2xpY3kiUgoHU2Vzc2lvbhIMCgRmb3JrGAEgASgJEjkKBnN0YXR1cxgCIAEoDjIpLm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5TdGF0dXMiLgoUU3RyZWFtU2Vzc2lvblJlcXVlc3QSFgoCaWQYASABKAlCCrpIB3IFEAEY9AMiSQoRQWNrTWVzc2FnZVJlcXVlc3QSFgoCaWQYASABKAlCCrpIB3IFEAEY9AMSHAoKbWVzc2FnZV9pZBgCIAEoCUIIukgFcgOwAQEiFAoSQWNrTWVzc2FnZVJlc3BvbnNlIhIKEFJlY29ubmVjdE1lc3NhZ2Ui6wEKFVN0cmVhbVNlc3Npb25SZXNwb25zZRIUCgJpZBgBIAEoCUIIukgFcgOwAQESOwoGb3V0cHV0GAIgASgLMikubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLk91dHB1dEgAEjUKA3VybBgDIAEoCzImLm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5VcmxIABI9CgdzZXNzaW9uGAQgASgLMioubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlNlc3Npb25IAEIJCgdtZXNzYWdlIo8DChFSdW5TZXNzaW9uUmVxdWVzdBIWCgJpZBgBIAEoCUIKukgHcgUQARj0AxI7Cgt0cmFuc21pdHRlchgCIAEoCUIhukgechwQARhkMhZeW2EtekEtWjAtOV8tXXsxLDEwMH0kSACIAQESfgoHc2lnbmFscxgDIAMoCzJBLm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5SdW5TZXNzaW9uUmVxdWVzdC5TaWduYWxzRW50cnlCKrpIJ5oBJCIiciAQARhkMhpeW18kYS16QS1aXVtfJGEtekEtWjAtOV0qJBIoCg9jaGFsbGVuZ2VfdG9rZW4YBCABKAlCCrpIB3IFEAEY9ANIAYgBARpXCgxTaWduYWxzRW50cnkSCwoDa2V5GAEgASgJEjYKBXZhbHVlGAIgASgLMicubW9jaGFidWdhcGlzLmFkYXB0LmdyYXBoLnYxLlNpZ25hbERhdGE6AjgBQg4KDF90cmFuc21pdHRlckISChBfY2hhbGxlbmdlX3Rva2VuIrECChJSdW5TZXNzaW9uUmVzcG9uc2USFAoCaWQYASABKAlCCLpIBXIDsAEBEkcKB3N0YXJ0ZWQYAiABKAsyNC5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuUnVuU2Vzc2lvblN0YXJ0ZWRIABI7CgZvdXRwdXQYAyABKAsyKS5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuT3V0cHV0SAASNQoDdXJsGAQgASgLMiYubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlVybEgAEj0KB3Nlc3Npb24YBSABKAsyKi5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuU2Vzc2lvbkgAQgkKB21lc3NhZ2UiYAoRUnVuU2Vzc2lvblN0YXJ0ZWQSDQoFdG9rZW4YASABKAkSMAoHZXhwaXJlcxgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAIgBAUIKCghfZXhwaXJlcyIrChFSdW5Jbmhlcml0UmVxdWVzdBIWCgJpZBgBIAEoCUIKukgHcgUQARj0AyKzAgoSUnVuSW5oZXJpdFJlc3BvbnNlEhQKAmlkGAEgASgJQgi6SAVyA7ABARJJCglpbmhlcml0ZWQYAiABKAsyNC5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuUnVuSW5oZXJpdFN0YXJ0ZWRIABI7CgZvdXRwdXQYAyABKAsyKS5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuT3V0cHV0SAASNQoDdXJsGAQgASgLMiYubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlVybEgAEj0KB3Nlc3Npb24YBSABKAsyKi5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuU2Vzc2lvbkgAQgkKB21lc3NhZ2UiYAoRUnVuSW5oZXJpdFN0YXJ0ZWQSDQoFdG9rZW4YASABKAkSMAoHZXhwaXJlcxgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAIgBAUIKCghfZXhwaXJlcyItChNXYXRjaFNlc3Npb25SZXF1ZXN0EhYKAmlkGAEgASgJQgq6SAdyBRABGPQDIrQCChRXYXRjaFNlc3Npb25SZXNwb25zZRIUCgJpZBgBIAEoCUIIukgFcgOwAQESOwoGb3V0cHV0GAIgASgLMikubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLk91dHB1dEgAEjUKA3VybBgDIAEoCzImLm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5VcmxIABI9CgdzZXNzaW9uGAQgASgLMioubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlNlc3Npb25IABJICglyZWNvbm5lY3QYBSABKAsyMy5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuUmVjb25uZWN0TWVzc2FnZUgAQgkKB21lc3NhZ2UiiwMKD1dhdGNoUnVuUmVxdWVzdBIWCgJpZBgBIAEoCUIKukgHcgUQARj0AxI7Cgt0cmFuc21pdHRlchgCIAEoCUIhukgechwQARhkMhZeW2EtekEtWjAtOV8tXXsxLDEwMH0kSACIAQESfAoHc2lnbmFscxgDIAMoCzI/Lm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5XYXRjaFJ1blJlcXVlc3QuU2lnbmFsc0VudHJ5Qiq6SCeaASQiInIgEAEYZDIaXltfJGEtekEtWl1bXyRhLXpBLVowLTldKiQSKAoPY2hhbGxlbmdlX3Rva2VuGAQgASgJQgq6SAdyBRABGPQDSAGIAQEaVwoMU2lnbmFsc0VudHJ5EgsKA2tleRgBIAEoCRI2CgV2YWx1ZRgCIAEoCzInLm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC52MS5TaWduYWxEYXRhOgI4AUIOCgxfdHJhbnNtaXR0ZXJCEgoQX2NoYWxsZW5nZV90b2tlbiL3AgoQV2F0Y2hSdW5SZXNwb25zZRIUCgJpZBgBIAEoCUIIukgFcgOwAQESRQoHc3RhcnRlZBgCIAEoCzIyLm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5XYXRjaFJ1blN0YXJ0ZWRIABI7CgZvdXRwdXQYAyABKAsyKS5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuT3V0cHV0SAASNQoDdXJsGAQgASgLMiYubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlVybEgAEj0KB3Nlc3Npb24YBSABKAsyKi5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuU2Vzc2lvbkgAEkgKCXJlY29ubmVjdBgGIAEoCzIzLm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5SZWNvbm5lY3RNZXNzYWdlSABCCQoHbWVzc2FnZSJeCg9XYXRjaFJ1blN0YXJ0ZWQSDQoFdG9rZW4YASABKAkSMAoHZXhwaXJlcxgCIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXBIAIgBAUIKCghfZXhwaXJlcyItChNXYXRjaEluaGVyaXRSZXF1ZXN0EhYKAmlkGAEgASgJQgq6SAdyBRABGPQDIoEDChRXYXRjaEluaGVyaXRSZXNwb25zZRIUCgJpZBgBIAEoCUIIukgFcgOwAQESSwoJaW5oZXJpdGVkGAIgASgLMjYubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLldhdGNoSW5oZXJpdFN0YXJ0ZWRIABI7CgZvdXRwdXQYAyABKAsyKS5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuT3V0cHV0SAASNQoDdXJsGAQgASgLMiYubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlVybEgAEj0KB3Nlc3Npb24YBSABKAsyKi5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuU2Vzc2lvbkgAEkgKCXJlY29ubmVjdBgGIAEoCzIzLm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5SZWNvbm5lY3RNZXNzYWdlSABCCQoHbWVzc2FnZSJiChNXYXRjaEluaGVyaXRTdGFydGVkEg0KBXRva2VuGAEgASgJEjAKB2V4cGlyZXMYAiABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSACIAQFCCgoIX2V4cGlyZXMqyAEKBlN0YXR1cxIWChJTVEFUVVNfVU5TUEVDSUZJRUQQABISCg5TVEFUVVNfUlVOTklORxABEhIKDlNUQVRVU19TVE9QUEVEEAISEwoPU1RBVFVTX1NUT1BQSU5HEAMSFAoQU1RBVFVTX0NPTVBMRVRFRBAEEhIKDlNUQVRVU19FWFBJUkVEEAUSEgoOU1RBVFVTX0VSUk9SRUQQBhIVChFTVEFUVVNfREVMRUdBVElORxAHEhQKEFNUQVRVU19ERUxFR0FURUQQCDLJFQoRQXV0b21hdGlvblNlcnZpY2USswEKD0NyZWF0ZUNoYWxsZW5nZRI5Lm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5DcmVhdGVDaGFsbGVuZ2VSZXF1ZXN0GjoubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLkNyZWF0ZUNoYWxsZW5nZVJlc3BvbnNlIimC0+STAiM6ASoiHi92MS9hdXRvbWF0aW9ucy97aWR9L2NoYWxsZW5nZRK6AQoPUmVkZWVtQ2hhbGxlbmdlEjkubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlJlZGVlbUNoYWxsZW5nZVJlcXVlc3QaOi5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuUmVkZWVtQ2hhbGxlbmdlUmVzcG9uc2UiMILT5JMCKjoBKiIlL3YxL2F1dG9tYXRpb25zL3tpZH0vY2hhbGxlbmdlL3JlZGVlbRKuAQoMU3RhcnRTZXNzaW9uEjYubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlN0YXJ0U2Vzc2lvblJlcXVlc3QaNy5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuU3RhcnRTZXNzaW9uUmVzcG9uc2UiLYLT5JMCJzoBKiIiL3YxL2F1dG9tYXRpb25zL3tpZH0vc2Vzc2lvbi9zdGFydBKiAQoLU3RvcFNlc3Npb24SNS5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuU3RvcFNlc3Npb25SZXF1ZXN0GjYubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlN0b3BTZXNzaW9uUmVzcG9uc2UiJILT5JMCHiocL3YxL2F1dG9tYXRpb25zL3tpZH0vc2Vzc2lvbhK2AQoOSW5oZXJpdFNlc3Npb24SOC5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuSW5oZXJpdFNlc3Npb25SZXF1ZXN0GjkubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLkluaGVyaXRTZXNzaW9uUmVzcG9uc2UiL4LT5JMCKToBKiIkL3YxL2F1dG9tYXRpb25zL3tpZH0vc2Vzc2lvbi9pbmhlcml0Ep8BCgpHZXRTZXNzaW9uEjQubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLkdldFNlc3Npb25SZXF1ZXN0GjUubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLkdldFNlc3Npb25SZXNwb25zZSIkgtPkkwIeEhwvdjEvYXV0b21hdGlvbnMve2lkfS9zZXNzaW9uEqYBCgpSZWFkT3V0cHV0EjQubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlJlYWRPdXRwdXRSZXF1ZXN0GjUubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlJlYWRPdXRwdXRSZXNwb25zZSIrgtPkkwIlEiMvdjEvYXV0b21hdGlvbnMve2lkfS9zZXNzaW9uL291dHB1dBKeAQoIUmVhZFVybHMSMi5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuUmVhZFVybHNSZXF1ZXN0GjMubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlJlYWRVcmxzUmVzcG9uc2UiKYLT5JMCIxIhL3YxL2F1dG9tYXRpb25zL3tpZH0vc2Vzc2lvbi91cmxzErEBCg1TdHJlYW1TZXNzaW9uEjcubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlN0cmVhbVNlc3Npb25SZXF1ZXN0GjgubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlN0cmVhbVNlc3Npb25SZXNwb25zZSIrgtPkkwIlEiMvdjEvYXV0b21hdGlvbnMve2lkfS9zZXNzaW9uL3N0cmVhbTABEqYBCgpBY2tNZXNzYWdlEjQubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLkFja01lc3NhZ2VSZXF1ZXN0GjUubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLkFja01lc3NhZ2VSZXNwb25zZSIrgtPkkwIlOgEqIiAvdjEvYXV0b21hdGlvbnMve2lkfS9zZXNzaW9uL2FjaxKoAQoKUnVuU2Vzc2lvbhI0Lm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5SdW5TZXNzaW9uUmVxdWVzdBo1Lm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5SdW5TZXNzaW9uUmVzcG9uc2UiK4LT5JMCJToBKiIgL3YxL2F1dG9tYXRpb25zL3tpZH0vc2Vzc2lvbi9ydW4wARKwAQoKUnVuSW5oZXJpdBI0Lm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5SdW5Jbmhlcml0UmVxdWVzdBo1Lm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5SdW5Jbmhlcml0UmVzcG9uc2UiM4LT5JMCLToBKiIoL3YxL2F1dG9tYXRpb25zL3tpZH0vc2Vzc2lvbi9ydW4taW5oZXJpdDABEqgBCgxXYXRjaFNlc3Npb24SNi5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuV2F0Y2hTZXNzaW9uUmVxdWVzdBo3Lm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5XYXRjaFNlc3Npb25SZXNwb25zZSIlgtPkkwIfOgEqIhovdjEvYXV0b21hdGlvbnMve2lkfS93YXRjaDABEqABCghXYXRjaFJ1bhIyLm1vY2hhYnVnYXBpcy5hZGFwdC5hdXRvbWF0aW9ucy52MS5XYXRjaFJ1blJlcXVlc3QaMy5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuV2F0Y2hSdW5SZXNwb25zZSIpgtPkkwIjOgEqIh4vdjEvYXV0b21hdGlvbnMve2lkfS93YXRjaC1ydW4wARKwAQoMV2F0Y2hJbmhlcml0EjYubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLldhdGNoSW5oZXJpdFJlcXVlc3QaNy5tb2NoYWJ1Z2FwaXMuYWRhcHQuYXV0b21hdGlvbnMudjEuV2F0Y2hJbmhlcml0UmVzcG9uc2UiLYLT5JMCJzoBKiIiL3YxL2F1dG9tYXRpb25zL3tpZH0vd2F0Y2gtaW5oZXJpdDABGokBykEWYWRhcHQubW9jaGFidWdhcGlzLmNvbdJBbWh0dHBzOi8vd3d3Lm1vY2hhYnVnYXBpcy5jb20vYXV0aC9hZGFwdC5hdXRvbWF0aW9ucyxodHRwczovL3d3dy5tb2NoYWJ1Z2FwaXMuY29tL2F1dGgvYWRhcHQuYXV0b21hdGlvbnMuc3RhcnRiBnByb3RvMw",[m,Ee,ve,lt,H]),oo=g(c,0),co=g(c,1),io=g(c,2),go=g(c,3),lo=g(c,4),ro=g(c,5),mo=g(c,6),po=g(c,7),uo=g(c,8),bo=g(c,9),Go=g(c,10),ho=g(c,11),Io=g(c,12),yo=g(c,13),Zo=g(c,14),Ao=g(c,15),Ro=g(c,16),Xo=g(c,17),So=g(c,18),Vo=g(c,19),Wo=g(c,20),Co=g(c,21),Jo=g(c,22),Bo=g(c,23),Yo=g(c,24),Fo=g(c,25),xo=g(c,26),fo=g(c,27),Eo=g(c,28),Mo=g(c,29),vo=g(c,30),Ho=g(c,31),zo=g(c,32),Lo=g(c,33),Qo=g(c,34),ko=g(c,35),No=g(c,36),Ko=g(c,37),Uo=g(c,38),wo=g(c,39),Do=g(c,40),rt=(o=>(o[o.UNSPECIFIED=0]="UNSPECIFIED",o[o.RUNNING=1]="RUNNING",o[o.STOPPED=2]="STOPPED",o[o.STOPPING=3]="STOPPING",o[o.COMPLETED=4]="COMPLETED",o[o.EXPIRED=5]="EXPIRED",o[o.ERRORED=6]="ERRORED",o[o.DELEGATING=7]="DELEGATING",o[o.DELEGATED=8]="DELEGATED",o))(rt||{}),To=it(c,0),jo=dt(c,0);var G=mt("CjRtb2NoYWJ1Z2FwaXMvYWRhcHQvcnVudGltZS92MS9leGVjdXRvcl9zZXJ2aWNlLnByb3RvEh1tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MSK+AQolRXhlY3V0b3JTZXJ2aWNlQmF0Y2hXcml0ZVN0b3JlUmVxdWVzdBJOCgpvcGVyYXRpb25zGAEgAygLMi0ubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuV3JpdGVPcGVyYXRpb25CC7pICJIBBQgBEOgHEkUKCW5hbWVzcGFjZRgCIAEoDjIoLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLk5hbWVzcGFjZUIIukgFggECIAAi7gEKJkV4ZWN1dG9yU2VydmljZUJhdGNoV3JpdGVTdG9yZVJlc3BvbnNlEmUKCG1ldGFkYXRhGAEgAygLMlMubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuRXhlY3V0b3JTZXJ2aWNlQmF0Y2hXcml0ZVN0b3JlUmVzcG9uc2UuTWV0YWRhdGFFbnRyeRpdCg1NZXRhZGF0YUVudHJ5EgsKA2tleRgBIAEoCRI7CgV2YWx1ZRgCIAEoCzIsLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLlZhbHVlTWV0YWRhdGE6AjgBIrYBCiBFeGVjdXRvclNlcnZpY2VXcml0ZVN0b3JlUmVxdWVzdBJLCglvcGVyYXRpb24YASABKAsyOC5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5Db25kaXRpb25hbFdyaXRlT3BlcmF0aW9uEkUKCW5hbWVzcGFjZRgCIAEoDjIoLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLk5hbWVzcGFjZUIIukgFggECIAAidQohRXhlY3V0b3JTZXJ2aWNlV3JpdGVTdG9yZVJlc3BvbnNlEkMKCG1ldGFkYXRhGAEgASgLMiwubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuVmFsdWVNZXRhZGF0YUgAiAEBQgsKCV9tZXRhZGF0YSKPAQokRXhlY3V0b3JTZXJ2aWNlQmF0Y2hSZWFkU3RvcmVSZXF1ZXN0EiAKBGtleXMYASADKAlCErpID5IBDAgBEJBOIgVyAxiAIBJFCgluYW1lc3BhY2UYAiABKA4yKC5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5OYW1lc3BhY2VCCLpIBYIBAiAAIt4BCiVFeGVjdXRvclNlcnZpY2VCYXRjaFJlYWRTdG9yZVJlc3BvbnNlEl4KBWl0ZW1zGAEgAygLMk8ubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuRXhlY3V0b3JTZXJ2aWNlQmF0Y2hSZWFkU3RvcmVSZXNwb25zZS5JdGVtc0VudHJ5GlUKCkl0ZW1zRW50cnkSCwoDa2V5GAEgASgJEjYKBXZhbHVlGAIgASgLMicubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuR2V0VmFsdWU6AjgBIq4BCiFFeGVjdXRvclNlcnZpY2VTZWxlY3RTdG9yZVJlcXVlc3QSQgoJb3BlcmF0aW9uGAEgASgLMicubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuU2VsZWN0T3BCBrpIA8gBARJFCgluYW1lc3BhY2UYAiABKA4yKC5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5OYW1lc3BhY2VCCLpIBYIBAiAAIoACCiJFeGVjdXRvclNlcnZpY2VTZWxlY3RTdG9yZVJlc3BvbnNlElsKBWl0ZW1zGAEgAygLMkwubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuRXhlY3V0b3JTZXJ2aWNlU2VsZWN0U3RvcmVSZXNwb25zZS5JdGVtc0VudHJ5EhcKCm5leHRfdG9rZW4YAiABKAlIAIgBARpVCgpJdGVtc0VudHJ5EgsKA2tleRgBIAEoCRI2CgV2YWx1ZRgCIAEoCzInLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkdldFZhbHVlOgI4AUINCgtfbmV4dF90b2tlbiI2Ch5DYW5jZWxFeGNoYW5nZU9wZXJhdGlvblJlcXVlc3QSFAoCaWQYASABKAlCCLpIBXIDGOgHIiEKH0NhbmNlbEV4Y2hhbmdlT3BlcmF0aW9uUmVzcG9uc2UiMwobR2V0RXhjaGFuZ2VPcGVyYXRpb25SZXF1ZXN0EhQKAmlkGAEgASgJQgi6SAVyAxjoByJeChxHZXRFeGNoYW5nZU9wZXJhdGlvblJlc3BvbnNlEj4KBGl0ZW0YASABKAsyMC5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5FeGNoYW5nZU9wZXJhdGlvbiL6AgoXRGlzcGF0Y2hFeGNoYW5nZVJlcXVlc3QSMwoEbmFtZRgBIAEoCUIlukgiciAQARhkMhpeW18kYS16QS1aXVtfJGEtekEtWjAtOV0qJBI8CghyZWNlaXZlchgCIAEoCUIlukgiciAQARhkMhpeW18kYS16QS1aXVtfJGEtekEtWjAtOV0qJEgAiAEBEoUBCgdzaWduYWxzGAMgAygLMkMubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuRGlzcGF0Y2hFeGNoYW5nZVJlcXVlc3QuU2lnbmFsc0VudHJ5Qi+6SCyaASkIABAyIiNyIRABGIAEMhpeW18kYS16QS1aXVtfJGEtekEtWjAtOV0qJBpXCgxTaWduYWxzRW50cnkSCwoDa2V5GAEgASgJEjYKBXZhbHVlGAIgASgLMicubW9jaGFidWdhcGlzLmFkYXB0LmdyYXBoLnYxLlNpZ25hbERhdGE6AjgBQgsKCV9yZWNlaXZlciJfChhEaXNwYXRjaEV4Y2hhbmdlUmVzcG9uc2USQwoJb3BlcmF0aW9uGAEgASgLMjAubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuRXhjaGFuZ2VPcGVyYXRpb24isAIKC1NlbmRSZXF1ZXN0Ej0KC3RyYW5zbWl0dGVyGAEgASgJQiO6SCByHhhkMhpeW18kYS16QS1aXVtfJGEtekEtWjAtOV0qJEgAiAEBEnkKB3NpZ25hbHMYAiADKAsyNy5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5TZW5kUmVxdWVzdC5TaWduYWxzRW50cnlCL7pILJoBKQgAEDIiI3IhEAEYgAQyGl5bXyRhLXpBLVpdW18kYS16QS1aMC05XSokGlcKDFNpZ25hbHNFbnRyeRILCgNrZXkYASABKAkSNgoFdmFsdWUYAiABKAsyJy5tb2NoYWJ1Z2FwaXMuYWRhcHQuZ3JhcGgudjEuU2lnbmFsRGF0YToCOAFCDgoMX3RyYW5zbWl0dGVyIg4KDFNlbmRSZXNwb25zZSJhChxCYXRjaEdldEFjdGl2ZVNpZ25hbHNSZXF1ZXN0EkEKBW5hbWVzGAEgAygJQjK6SC+SASwIARD0AxgBIiNyIRABGIAEMhpeW18kYS16QS1aXVtfJGEtekEtWjAtOV0qJCLgAQodQmF0Y2hHZXRBY3RpdmVTaWduYWxzUmVzcG9uc2USVgoFaXRlbXMYASADKAsyRy5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5CYXRjaEdldEFjdGl2ZVNpZ25hbHNSZXNwb25zZS5JdGVtc0VudHJ5EhAKCHJlY2VpdmVyGAIgASgJGlUKCkl0ZW1zRW50cnkSCwoDa2V5GAEgASgJEjYKBXZhbHVlGAIgASgLMicubW9jaGFidWdhcGlzLmFkYXB0LmdyYXBoLnYxLlNpZ25hbERhdGE6AjgBIqgBChhMaXN0QWN0aXZlU2lnbmFsc1JlcXVlc3QSIAoJcGFnZV9zaXplGAEgASgFQgi6SAUaAxj0A0gAiAEBEh0KBmN1cnNvchgCIAEoCUIIukgFcgMY9ANIAYgBARIdChBvcmRlcl9kZXNjZW5kaW5nGAMgASgISAKIAQFCDAoKX3BhZ2Vfc2l6ZUIJCgdfY3Vyc29yQhMKEV9vcmRlcl9kZXNjZW5kaW5nIogCChlMaXN0QWN0aXZlU2lnbmFsc1Jlc3BvbnNlElYKB3NpZ25hbHMYASADKAsyRS5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5MaXN0QWN0aXZlU2lnbmFsc1Jlc3BvbnNlLlNpZ25hbHNFbnRyeRIQCghyZWNlaXZlchgCIAEoCRIYCgtuZXh0X2N1cnNvchgDIAEoCUgAiAEBGlcKDFNpZ25hbHNFbnRyeRILCgNrZXkYASABKAkSNgoFdmFsdWUYAiABKAsyJy5tb2NoYWJ1Z2FwaXMuYWRhcHQuZ3JhcGgudjEuU2lnbmFsRGF0YToCOAFCDgoMX25leHRfY3Vyc29yImsKJUV4ZWN1dG9yU2VydmljZUdldFZlcnRleENvbmZpZ1JlcXVlc3QSMwoKZmllbGRfbWFzaxgBIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE1hc2tIAIgBAUINCgtfZmllbGRfbWFzayKuAgomRXhlY3V0b3JTZXJ2aWNlR2V0VmVydGV4Q29uZmlnUmVzcG9uc2USDgoGY29uZmlnGAEgASgMEj0KCG1ldGFkYXRhGAIgASgLMisubW9jaGFidWdhcGlzLmFkYXB0LmdyYXBoLnYxLlZlcnRleE1ldGFkYXRhEnoKE2NvbmZpZ3VyZWRfc2VydmljZXMYAyADKAsyXS5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5FeGVjdXRvclNlcnZpY2VHZXRWZXJ0ZXhDb25maWdSZXNwb25zZS5Db25maWd1cmVkU2VydmljZXNFbnRyeRo5ChdDb25maWd1cmVkU2VydmljZXNFbnRyeRILCgNrZXkYASABKAkSDQoFdmFsdWUYAiABKAg6AjgBImgKEUV4Y2hhbmdlT3BlcmF0aW9uEgwKBG5hbWUYASABKAkSCgoCaWQYAiABKAkSOQoGc3RhdHVzGAMgASgOMikubW9jaGFidWdhcGlzLmFkYXB0LmF1dG9tYXRpb25zLnYxLlN0YXR1czLKDAoPRXhlY3V0b3JTZXJ2aWNlEp4BCg9HZXRWZXJ0ZXhDb25maWcSRC5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5FeGVjdXRvclNlcnZpY2VHZXRWZXJ0ZXhDb25maWdSZXF1ZXN0GkUubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuRXhlY3V0b3JTZXJ2aWNlR2V0VmVydGV4Q29uZmlnUmVzcG9uc2UShgEKEUxpc3RBY3RpdmVTaWduYWxzEjcubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuTGlzdEFjdGl2ZVNpZ25hbHNSZXF1ZXN0GjgubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuTGlzdEFjdGl2ZVNpZ25hbHNSZXNwb25zZRKSAQoVQmF0Y2hHZXRBY3RpdmVTaWduYWxzEjsubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuQmF0Y2hHZXRBY3RpdmVTaWduYWxzUmVxdWVzdBo8Lm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkJhdGNoR2V0QWN0aXZlU2lnbmFsc1Jlc3BvbnNlEl8KBFNlbmQSKi5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5TZW5kUmVxdWVzdBorLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLlNlbmRSZXNwb25zZRKDAQoQRGlzcGF0Y2hFeGNoYW5nZRI2Lm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkRpc3BhdGNoRXhjaGFuZ2VSZXF1ZXN0GjcubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuRGlzcGF0Y2hFeGNoYW5nZVJlc3BvbnNlEo8BChRHZXRFeGNoYW5nZU9wZXJhdGlvbhI6Lm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkdldEV4Y2hhbmdlT3BlcmF0aW9uUmVxdWVzdBo7Lm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkdldEV4Y2hhbmdlT3BlcmF0aW9uUmVzcG9uc2USmAEKF0NhbmNlbEV4Y2hhbmdlT3BlcmF0aW9uEj0ubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuQ2FuY2VsRXhjaGFuZ2VPcGVyYXRpb25SZXF1ZXN0Gj4ubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuQ2FuY2VsRXhjaGFuZ2VPcGVyYXRpb25SZXNwb25zZRKPAQoKV3JpdGVTdG9yZRI/Lm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkV4ZWN1dG9yU2VydmljZVdyaXRlU3RvcmVSZXF1ZXN0GkAubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuRXhlY3V0b3JTZXJ2aWNlV3JpdGVTdG9yZVJlc3BvbnNlEp4BCg9CYXRjaFdyaXRlU3RvcmUSRC5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5FeGVjdXRvclNlcnZpY2VCYXRjaFdyaXRlU3RvcmVSZXF1ZXN0GkUubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuRXhlY3V0b3JTZXJ2aWNlQmF0Y2hXcml0ZVN0b3JlUmVzcG9uc2USmwEKDkJhdGNoUmVhZFN0b3JlEkMubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuRXhlY3V0b3JTZXJ2aWNlQmF0Y2hSZWFkU3RvcmVSZXF1ZXN0GkQubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuRXhlY3V0b3JTZXJ2aWNlQmF0Y2hSZWFkU3RvcmVSZXNwb25zZRKSAQoLU2VsZWN0U3RvcmUSQC5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5FeGVjdXRvclNlcnZpY2VTZWxlY3RTdG9yZVJlcXVlc3QaQS5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5FeGVjdXRvclNlcnZpY2VTZWxlY3RTdG9yZVJlc3BvbnNlYgZwcm90bzM",[m,ut,c,H,q,Z]),ac=y(G,0),sc=y(G,1),oc=y(G,2),cc=y(G,3),ic=y(G,4),gc=y(G,5),dc=y(G,6),lc=y(G,7),rc=y(G,8),mc=y(G,9),pc=y(G,10),uc=y(G,11),bc=y(G,12),Gc=y(G,13),hc=y(G,14),Ic=y(G,15),yc=y(G,16),Zc=y(G,17),Ac=y(G,18),Rc=y(G,19),Xc=y(G,20),Sc=y(G,21),Vc=y(G,22),he=pt(G,0);import{enumDesc as Q,fileDesc as bt,messageDesc as l,serviceDesc as Gt}from"@bufbuild/protobuf/codegenv2";var s=bt("CjVtb2NoYWJ1Z2FwaXMvYWRhcHQvcnVudGltZS92MS9maWxlZm9yZ2Vfc2VydmljZS5wcm90bxIdbW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEi+wEKFVJlbmRlckRvY3VtZW50UmVxdWVzdBI/CgtodG1sX3RvX3BkZhgBIAEoCzIoLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkh0bWxUb1BkZkgAEkcKD21hcmtkb3duX3RvX3BkZhgCIAEoCzIsLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLk1hcmtkb3duVG9QZGZIABJDCg1vZmZpY2VfdG9fcGRmGAMgASgLMioubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuT2ZmaWNlVG9QZGZIAEITCgpjb252ZXJzaW9uEgW6SAIIASJRChZSZW5kZXJEb2N1bWVudFJlc3BvbnNlEjcKBm91dHB1dBgBIAEoCzInLm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC52MS5TaWduYWxEYXRhIv0CCglIdG1sVG9QZGYSIAoKaW5kZXhfaHRtbBgBIAEoCUIMukgJcgcQARiAgIAFEiMKC2hlYWRlcl9odG1sGAIgASgJQgm6SAZyBBiAgEBIAIgBARIjCgtmb290ZXJfaHRtbBgDIAEoCUIJukgGcgQYgIBASAGIAQESQQoGYXNzZXRzGAQgAygLMicubW9jaGFidWdhcGlzLmFkYXB0LmdyYXBoLnYxLlNpZ25hbERhdGFCCLpIBZIBAhBkEkUKBnJlbmRlchgKIAEoCzIwLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkh0bWxSZW5kZXJPcHRpb25zSAKIAQESRAoGb3V0cHV0GAsgASgLMi8ubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuUGRmT3V0cHV0T3B0aW9uc0gDiAEBQg4KDF9oZWFkZXJfaHRtbEIOCgxfZm9vdGVyX2h0bWxCCQoHX3JlbmRlckIJCgdfb3V0cHV0Is8DCg1NYXJrZG93blRvUGRmEiEKDHdyYXBwZXJfaHRtbBgBIAEoCUILukgIcgYQARiAgEASSwoObWFya2Rvd25fZmlsZXMYAiADKAsyJy5tb2NoYWJ1Z2FwaXMuYWRhcHQuZ3JhcGgudjEuU2lnbmFsRGF0YUIKukgHkgEECAEQMhIjCgtoZWFkZXJfaHRtbBgDIAEoCUIJukgGcgQYgIBASACIAQESIwoLZm9vdGVyX2h0bWwYBCABKAlCCbpIBnIEGICAQEgBiAEBEkEKBmFzc2V0cxgFIAMoCzInLm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC52MS5TaWduYWxEYXRhQgi6SAWSAQIQZBJFCgZyZW5kZXIYCiABKAsyMC5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5IdG1sUmVuZGVyT3B0aW9uc0gCiAEBEkQKBm91dHB1dBgLIAEoCzIvLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLlBkZk91dHB1dE9wdGlvbnNIA4gBAUIOCgxfaGVhZGVyX2h0bWxCDgoMX2Zvb3Rlcl9odG1sQgkKB19yZW5kZXJCCQoHX291dHB1dCKSBwoLT2ZmaWNlVG9QZGYS3QUKCGRvY3VtZW50GAEgASgLMicubW9jaGFidWdhcGlzLmFkYXB0LmdyYXBoLnYxLlNpZ25hbERhdGFCoQW6SJ0FugGWBQoYdmFsaWRfZG9jdW1lbnRfZXh0ZW5zaW9uEi1kb2N1bWVudCBtdXN0IGhhdmUgYSBzdXBwb3J0ZWQgZmlsZSBleHRlbnNpb24aygR0aGlzLmZpbGVuYW1lLm1hdGNoZXMoJyg/aSlcXC4oMTIzfDYwMnxhYnd8YmlifGJtcHxjZHJ8Y2dtfGNteHxjc3Z8Y3drfGRiZnxkaWZ8ZG9jfGRvY218ZG9jeHxkb3R8ZG90bXxkb3R4fGR4ZnxlbWZ8ZXBzfGVwdWJ8Zm9kZ3xmb2RwfGZvZHN8Zm9kdHxmb3BkfGdpZnxodG18aHRtbHxod3B8anBlZ3xqcGd8a2V5fGx0eHxsd3B8bWN3fG1ldHxtbWx8bXd8bnVtYmVyc3xvZGR8b2RnfG9kbXxvZHB8b2RzfG9kdHxvdGd8b3RofG90cHxvdHN8b3R0fHBhZ2VzfHBibXxwY2R8cGN0fHBjeHxwZGJ8cGRmfHBnbXxwbmd8cG90fHBvdG18cG90eHxwcG18cHBzfHBwdHxwcHRtfHBwdHh8cHNkfHBzd3xwdWJ8cHdwfHB4bHxyYXN8cnRmfHNkYXxzZGN8c2RkfHNkcHxzZHd8c2dsfHNsa3xzbWZ8c3RjfHN0ZHxzdGl8c3R3fHN2Z3xzdm18c3dmfHN4Y3xzeGR8c3hnfHN4aXxzeG18c3h3fHRnYXx0aWZ8dGlmZnx0eHR8dW9mfHVvcHx1b3N8dW90fHZkeHx2b3J8dnNkfHZzZG18dnNkeHx3YjJ8d2sxfHdrc3x3bWZ8d3BkfHdwZ3x3cHN8eGJtfHhodG1sfHhsc3x4bHNifHhsc218eGxzeHx4bHR8eGx0bXx4bHR4fHhsd3x4bWx8eHBtfHphYncpJCcpyAEBEkcKBnJlbmRlchgKIAEoCzIyLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLk9mZmljZVJlbmRlck9wdGlvbnNIAIgBARJECgZvdXRwdXQYCyABKAsyLy5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5QZGZPdXRwdXRPcHRpb25zSAGIAQFCCQoHX3JlbmRlckIJCgdfb3V0cHV0IqQMChFIdG1sUmVuZGVyT3B0aW9ucxIdChBwcmludF9iYWNrZ3JvdW5kGAEgASgISACIAQESHAoPb21pdF9iYWNrZ3JvdW5kGAIgASgISAGIAQESIQoUcHJlZmVyX2Nzc19wYWdlX3NpemUYAyABKAhIAogBARJSChNlbXVsYXRlZF9tZWRpYV90eXBlGAQgASgOMjAubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuRW11bGF0ZWRNZWRpYVR5cGVIA4gBARIkCgtwYXBlcl93aWR0aBgFIAEoAkIKukgHCgUlAAAAAEgEiAEBEiUKDHBhcGVyX2hlaWdodBgGIAEoAkIKukgHCgUlAAAAAEgFiAEBEiMKCm1hcmdpbl90b3AYByABKAJCCrpIBwoFLQAAAABIBogBARIlCgxtYXJnaW5fcmlnaHQYCCABKAJCCrpIBwoFLQAAAABIB4gBARImCg1tYXJnaW5fYm90dG9tGAkgASgCQgq6SAcKBS0AAAAASAiIAQESJAoLbWFyZ2luX2xlZnQYCiABKAJCCrpIBwoFLQAAAABICYgBARIWCglsYW5kc2NhcGUYCyABKAhICogBARIjCgVzY2FsZRgMIAEoAkIPukgMCgodAAAAQC3NzMw9SAuIAQESRwoLcGFnZV9yYW5nZXMYDSABKAlCLbpIKnIoMiZeWzAtOV0rKC1bMC05XSspPygsWzAtOV0rKC1bMC05XSspPykqJEgMiAEBEhgKC3NpbmdsZV9wYWdlGA4gASgISA2IAQESIAoTZ2VuZXJhdGVfdGFnZ2VkX3BkZhgPIAEoCEgOiAEBOqQFukigBRraAQoXbWFyZ2luc19maXRfcGFwZXJfd2lkdGgSMmxlZnQgKyByaWdodCBtYXJnaW5zIG11c3QgYmUgbGVzcyB0aGFuIHBhcGVyIHdpZHRoGooBKCFoYXModGhpcy5wYXBlcl93aWR0aCkgfHwgIWhhcyh0aGlzLm1hcmdpbl9sZWZ0KSB8fCAhaGFzKHRoaXMubWFyZ2luX3JpZ2h0KSkgfHwgKHRoaXMubWFyZ2luX2xlZnQgKyB0aGlzLm1hcmdpbl9yaWdodCA8IHRoaXMucGFwZXJfd2lkdGgpGt4BChhtYXJnaW5zX2ZpdF9wYXBlcl9oZWlnaHQSM3RvcCArIGJvdHRvbSBtYXJnaW5zIG11c3QgYmUgbGVzcyB0aGFuIHBhcGVyIGhlaWdodBqMASghaGFzKHRoaXMucGFwZXJfaGVpZ2h0KSB8fCAhaGFzKHRoaXMubWFyZ2luX3RvcCkgfHwgIWhhcyh0aGlzLm1hcmdpbl9ib3R0b20pKSB8fCAodGhpcy5tYXJnaW5fdG9wICsgdGhpcy5tYXJnaW5fYm90dG9tIDwgdGhpcy5wYXBlcl9oZWlnaHQpGt8BCilvbWl0X2JhY2tncm91bmRfcmVxdWlyZXNfcHJpbnRfYmFja2dyb3VuZBI0b21pdF9iYWNrZ3JvdW5kIHJlcXVpcmVzIHByaW50X2JhY2tncm91bmQgdG8gYmUgdHJ1ZRp8IWhhcyh0aGlzLm9taXRfYmFja2dyb3VuZCkgfHwgdGhpcy5vbWl0X2JhY2tncm91bmQgPT0gZmFsc2UgfHwgKGhhcyh0aGlzLnByaW50X2JhY2tncm91bmQpICYmIHRoaXMucHJpbnRfYmFja2dyb3VuZCA9PSB0cnVlKUITChFfcHJpbnRfYmFja2dyb3VuZEISChBfb21pdF9iYWNrZ3JvdW5kQhcKFV9wcmVmZXJfY3NzX3BhZ2Vfc2l6ZUIWChRfZW11bGF0ZWRfbWVkaWFfdHlwZUIOCgxfcGFwZXJfd2lkdGhCDwoNX3BhcGVyX2hlaWdodEINCgtfbWFyZ2luX3RvcEIPCg1fbWFyZ2luX3JpZ2h0QhAKDl9tYXJnaW5fYm90dG9tQg4KDF9tYXJnaW5fbGVmdEIMCgpfbGFuZHNjYXBlQggKBl9zY2FsZUIOCgxfcGFnZV9yYW5nZXNCDgoMX3NpbmdsZV9wYWdlQhYKFF9nZW5lcmF0ZV90YWdnZWRfcGRmItINChNPZmZpY2VSZW5kZXJPcHRpb25zEh8KCHBhc3N3b3JkGAEgASgJQgi6SAVyAxiAAkgAiAEBEhYKCWxhbmRzY2FwZRgCIAEoCEgBiAEBEkcKC3BhZ2VfcmFuZ2VzGAMgASgJQi26SCpyKDImXlswLTldKygtWzAtOV0rKT8oLFswLTldKygtWzAtOV0rKT8pKiRIAogBARIbCg51cGRhdGVfaW5kZXhlcxgEIAEoCEgDiAEBEh8KEmV4cG9ydF9mb3JtX2ZpZWxkcxgFIAEoCEgEiAEBEigKG2FsbG93X2R1cGxpY2F0ZV9maWVsZF9uYW1lcxgGIAEoCEgFiAEBEh0KEGV4cG9ydF9ib29rbWFya3MYByABKAhIBogBARIwCiNleHBvcnRfYm9va21hcmtzX3RvX3BkZl9kZXN0aW5hdGlvbhgIIAEoCEgHiAEBEiAKE2V4cG9ydF9wbGFjZWhvbGRlcnMYCSABKAhICIgBARIZCgxleHBvcnRfbm90ZXMYCiABKAhICYgBARIfChJleHBvcnRfbm90ZXNfcGFnZXMYCyABKAhICogBARIkChdleHBvcnRfb25seV9ub3Rlc19wYWdlcxgMIAEoCEgLiAEBEiMKFmV4cG9ydF9ub3Rlc19pbl9tYXJnaW4YDSABKAhIDIgBARItCiBjb252ZXJ0X29vb190YXJnZXRfdG9fcGRmX3RhcmdldBgOIAEoCEgNiAEBEicKGmV4cG9ydF9saW5rc19yZWxhdGl2ZV9mc3lzGA8gASgISA6IAQESIQoUZXhwb3J0X2hpZGRlbl9zbGlkZXMYECABKAhID4gBARIdChBza2lwX2VtcHR5X3BhZ2VzGBEgASgISBCIAQESHwoSc2luZ2xlX3BhZ2Vfc2hlZXRzGBIgASgISBGIAQESLAofYWRkX29yaWdpbmFsX2RvY3VtZW50X2FzX3N0cmVhbRgTIAEoCEgSiAEBEicKGmxvc3NsZXNzX2ltYWdlX2NvbXByZXNzaW9uGBQgASgISBOIAQESHwoHcXVhbGl0eRgVIAEoBUIJukgGGgQYZCgBSBSIAQESJAoXcmVkdWNlX2ltYWdlX3Jlc29sdXRpb24YFiABKAhIFYgBARI2ChRtYXhfaW1hZ2VfcmVzb2x1dGlvbhgXIAEoBUITukgQGg4wSzCWATCsAjDYBDCwCUgWiAEBOo8CukiLAhqIAgozZXhwb3J0X29ubHlfbm90ZXNfcGFnZXNfcmVxdWlyZXNfZXhwb3J0X25vdGVzX3BhZ2VzEj5leHBvcnRfb25seV9ub3Rlc19wYWdlcyByZXF1aXJlcyBleHBvcnRfbm90ZXNfcGFnZXMgdG8gYmUgdHJ1ZRqQASFoYXModGhpcy5leHBvcnRfb25seV9ub3Rlc19wYWdlcykgfHwgdGhpcy5leHBvcnRfb25seV9ub3Rlc19wYWdlcyA9PSBmYWxzZSB8fCAoaGFzKHRoaXMuZXhwb3J0X25vdGVzX3BhZ2VzKSAmJiB0aGlzLmV4cG9ydF9ub3Rlc19wYWdlcyA9PSB0cnVlKUILCglfcGFzc3dvcmRCDAoKX2xhbmRzY2FwZUIOCgxfcGFnZV9yYW5nZXNCEQoPX3VwZGF0ZV9pbmRleGVzQhUKE19leHBvcnRfZm9ybV9maWVsZHNCHgocX2FsbG93X2R1cGxpY2F0ZV9maWVsZF9uYW1lc0ITChFfZXhwb3J0X2Jvb2ttYXJrc0ImCiRfZXhwb3J0X2Jvb2ttYXJrc190b19wZGZfZGVzdGluYXRpb25CFgoUX2V4cG9ydF9wbGFjZWhvbGRlcnNCDwoNX2V4cG9ydF9ub3Rlc0IVChNfZXhwb3J0X25vdGVzX3BhZ2VzQhoKGF9leHBvcnRfb25seV9ub3Rlc19wYWdlc0IZChdfZXhwb3J0X25vdGVzX2luX21hcmdpbkIjCiFfY29udmVydF9vb29fdGFyZ2V0X3RvX3BkZl90YXJnZXRCHQobX2V4cG9ydF9saW5rc19yZWxhdGl2ZV9mc3lzQhcKFV9leHBvcnRfaGlkZGVuX3NsaWRlc0ITChFfc2tpcF9lbXB0eV9wYWdlc0IVChNfc2luZ2xlX3BhZ2Vfc2hlZXRzQiIKIF9hZGRfb3JpZ2luYWxfZG9jdW1lbnRfYXNfc3RyZWFtQh0KG19sb3NzbGVzc19pbWFnZV9jb21wcmVzc2lvbkIKCghfcXVhbGl0eUIaChhfcmVkdWNlX2ltYWdlX3Jlc29sdXRpb25CFwoVX21heF9pbWFnZV9yZXNvbHV0aW9uIuUDChBQZGZPdXRwdXRPcHRpb25zEjwKBHBkZmEYASABKA4yKS5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5QZGZBRm9ybWF0SACIAQESEgoFcGRmdWEYAiABKAhIAYgBARIUCgdmbGF0dGVuGAMgASgISAKIAQESJAoNdXNlcl9wYXNzd29yZBgEIAEoCUIIukgFcgMYgAFIA4gBARIlCg5vd25lcl9wYXNzd29yZBgFIAEoCUIIukgFcgMYgAFIBIgBATrXAbpI0wEa0AEKIXBkZmFfaW5jb21wYXRpYmxlX3dpdGhfZW5jcnlwdGlvbhJLUERGL0EgZm9ybWF0IGlzIGluY29tcGF0aWJsZSB3aXRoIGVuY3J5cHRpb24gKHVzZXJfcGFzc3dvcmQvb3duZXJfcGFzc3dvcmQpGl4oIWhhcyh0aGlzLnBkZmEpIHx8IHRoaXMucGRmYSA9PSAwKSB8fCAoIWhhcyh0aGlzLnVzZXJfcGFzc3dvcmQpICYmICFoYXModGhpcy5vd25lcl9wYXNzd29yZCkpQgcKBV9wZGZhQggKBl9wZGZ1YUIKCghfZmxhdHRlbkIQCg5fdXNlcl9wYXNzd29yZEIRCg9fb3duZXJfcGFzc3dvcmQirgkKDkltYWdlT3BlcmF0aW9uEjwKBnJlc2l6ZRgBIAEoCzIqLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkltYWdlUmVzaXplSAASOAoEY3JvcBgCIAEoCzIoLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkltYWdlQ3JvcEgAEjwKBnJvdGF0ZRgDIAEoCzIqLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkltYWdlUm90YXRlSAASOAoEZmxpcBgEIAEoCzIoLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkltYWdlRmxpcEgAEjYKA3BhZBgFIAEoCzInLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkltYWdlUGFkSAASOAoEdHJpbRgGIAEoCzIoLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkltYWdlVHJpbUgAEkQKCnByb3BvcnRpb24YByABKAsyLi5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5JbWFnZVByb3BvcnRpb25IABI6CgVmb2NhbBgIIAEoCzIpLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkltYWdlRm9jYWxIABI8CgZhZGp1c3QYCSABKAsyKi5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5JbWFnZUFkanVzdEgAEjYKA2h1ZRgKIAEoCzInLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkltYWdlSHVlSAASNgoDcmdiGAsgASgLMicubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuSW1hZ2VSZ2JIABI4CgRibHVyGAwgASgLMigubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuSW1hZ2VCbHVySAASPgoHc2hhcnBlbhgNIAEoCzIrLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkltYWdlU2hhcnBlbkgAEkcKDHJvdW5kX2Nvcm5lchgOIAEoCzIvLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkltYWdlUm91bmRDb3JuZXJIABJCCgl3YXRlcm1hcmsYDyABKAsyLS5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5JbWFnZVdhdGVybWFya0gAEjgKBHRleHQYECABKAsyKC5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5JbWFnZVRleHRIABJDCgptYXhfZnJhbWVzGBEgASgLMi0ubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuSW1hZ2VNYXhGcmFtZXNIABI4CgRwYWdlGBIgASgLMigubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuSW1hZ2VQYWdlSAASNgoDZHBpGBMgASgLMicubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuSW1hZ2VEcGlIAEISCglvcGVyYXRpb24SBbpIAggBIvABChVUcmFuc2Zvcm1JbWFnZVJlcXVlc3QSPgoFaW5wdXQYASABKAsyJy5tb2NoYWJ1Z2FwaXMuYWRhcHQuZ3JhcGgudjEuU2lnbmFsRGF0YUIGukgDyAEBEksKCm9wZXJhdGlvbnMYAiADKAsyLS5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5JbWFnZU9wZXJhdGlvbkIIukgFkgECEDISPwoGb3V0cHV0GB4gASgLMioubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuSW1hZ2VPdXRwdXRIAIgBAUIJCgdfb3V0cHV0IlEKFlRyYW5zZm9ybUltYWdlUmVzcG9uc2USNwoGb3V0cHV0GAEgASgLMicubW9jaGFidWdhcGlzLmFkYXB0LmdyYXBoLnYxLlNpZ25hbERhdGEinQMKC0ltYWdlUmVzaXplEh4KBXdpZHRoGAEgASgFQgq6SAcaBRiIJygASACIAQESHwoGaGVpZ2h0GAIgASgFQgq6SAcaBRiIJygASAGIAQESPAoEdHlwZRgDIAEoDjIpLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLlJlc2l6ZVR5cGVIAogBARIUCgdlbmxhcmdlGAQgASgISAOIAQESEwoGZXh0ZW5kGAUgASgISASIAQE6rgG6SKoBGqcBChFyZXF1aXJlX2RpbWVuc2lvbhJEYXQgbGVhc3Qgb25lIG9mIHdpZHRoIG9yIGhlaWdodCBtdXN0IGJlIHNwZWNpZmllZCBhbmQgZ3JlYXRlciB0aGFuIDAaTChoYXModGhpcy53aWR0aCkgJiYgdGhpcy53aWR0aCA+IDApIHx8IChoYXModGhpcy5oZWlnaHQpICYmIHRoaXMuaGVpZ2h0ID4gMClCCAoGX3dpZHRoQgkKB19oZWlnaHRCBwoFX3R5cGVCCgoIX2VubGFyZ2VCCQoHX2V4dGVuZCKdAgoJSW1hZ2VDcm9wEh4KBXdpZHRoGAEgASgFQgq6SAcaBRiIJygASACIAQESHwoGaGVpZ2h0GAIgASgFQgq6SAcaBRiIJygASAGIAQESPAoHZ3Jhdml0eRgDIAEoDjImLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkdyYXZpdHlIAogBARIqCghvZmZzZXRfeBgEIAEoBUITukgQGg4YkE4o8LH/////////AUgDiAEBEioKCG9mZnNldF95GAUgASgFQhO6SBAaDhiQTijwsf////////8BSASIAQFCCAoGX3dpZHRoQgkKB19oZWlnaHRCCgoIX2dyYXZpdHlCCwoJX29mZnNldF94QgsKCV9vZmZzZXRfeSJmCgtJbWFnZVJvdGF0ZRIjCgVhbmdsZRgBIAEoBUIPukgMGgowADBaMLQBMI4CSACIAQESGAoLYXV0b19yb3RhdGUYAiABKAhIAYgBAUIICgZfYW5nbGVCDgoMX2F1dG9fcm90YXRlIpICCglJbWFnZUZsaXASFwoKaG9yaXpvbnRhbBgBIAEoCEgAiAEBEhUKCHZlcnRpY2FsGAIgASgISAGIAQE6uAG6SLQBGrEBChZyZXF1aXJlX2ZsaXBfZGlyZWN0aW9uEjNhdCBsZWFzdCBvbmUgb2YgaG9yaXpvbnRhbCBvciB2ZXJ0aWNhbCBtdXN0IGJlIHRydWUaYihoYXModGhpcy5ob3Jpem9udGFsKSAmJiB0aGlzLmhvcml6b250YWwgPT0gdHJ1ZSkgfHwgKGhhcyh0aGlzLnZlcnRpY2FsKSAmJiB0aGlzLnZlcnRpY2FsID09IHRydWUpQg0KC19ob3Jpem9udGFsQgsKCV92ZXJ0aWNhbCKVAwoISW1hZ2VQYWQSGQoDdG9wGAEgASgFQge6SAQaAigASACIAQESGwoFcmlnaHQYAiABKAVCB7pIBBoCKABIAYgBARIcCgZib3R0b20YAyABKAVCB7pIBBoCKABIAogBARIaCgRsZWZ0GAQgASgFQge6SAQaAigASAOIAQE68AG6SOwBGukBCg9yZXF1aXJlX3BhZGRpbmcSP2F0IGxlYXN0IG9uZSBwYWRkaW5nIHZhbHVlIG11c3QgYmUgc3BlY2lmaWVkIGFuZCBncmVhdGVyIHRoYW4gMBqUAShoYXModGhpcy50b3ApICYmIHRoaXMudG9wID4gMCkgfHwgKGhhcyh0aGlzLnJpZ2h0KSAmJiB0aGlzLnJpZ2h0ID4gMCkgfHwgKGhhcyh0aGlzLmJvdHRvbSkgJiYgdGhpcy5ib3R0b20gPiAwKSB8fCAoaGFzKHRoaXMubGVmdCkgJiYgdGhpcy5sZWZ0ID4gMClCBgoEX3RvcEIICgZfcmlnaHRCCQoHX2JvdHRvbUIHCgVfbGVmdCLFAQoJSW1hZ2VUcmltEicKCXRocmVzaG9sZBgBIAEoAkIPukgMCgodAACAPy0AAAAASACIAQESKwoFY29sb3IYAiABKAlCF7pIFHISMhBeWzAtOWEtZkEtRl17Nn0kSAGIAQESFgoJZXF1YWxfaG9yGAMgASgISAKIAQESFgoJZXF1YWxfdmVyGAQgASgISAOIAQFCDAoKX3RocmVzaG9sZEIICgZfY29sb3JCDAoKX2VxdWFsX2hvckIMCgpfZXF1YWxfdmVyIs8DCgtJbWFnZUFkanVzdBIsCgpicmlnaHRuZXNzGAEgASgFQhO6SBAaDhj/ASiB/v////////8BSACIAQESJgoIY29udHJhc3QYAiABKAJCD7pIDAoKHQAAIEEtAAAAAEgBiAEBEigKCnNhdHVyYXRpb24YAyABKAJCD7pIDAoKHQAAIEEtAAAAAEgCiAEBEhYKCWdyYXlzY2FsZRgEIAEoCEgDiAEBOu4BukjqARrnAQoScmVxdWlyZV9hZGp1c3RtZW50ElphdCBsZWFzdCBvbmUgYWRqdXN0bWVudCAoYnJpZ2h0bmVzcywgY29udHJhc3QsIHNhdHVyYXRpb24sIG9yIGdyYXlzY2FsZSkgbXVzdCBiZSBzcGVjaWZpZWQadWhhcyh0aGlzLmJyaWdodG5lc3MpIHx8IGhhcyh0aGlzLmNvbnRyYXN0KSB8fCBoYXModGhpcy5zYXR1cmF0aW9uKSB8fCAoaGFzKHRoaXMuZ3JheXNjYWxlKSAmJiB0aGlzLmdyYXlzY2FsZSA9PSB0cnVlKUINCgtfYnJpZ2h0bmVzc0ILCglfY29udHJhc3RCDQoLX3NhdHVyYXRpb25CDAoKX2dyYXlzY2FsZSIrCglJbWFnZUJsdXISHgoFc2lnbWEYASABKAJCD7pIDAoKHQAAyEIlAAAAACIuCgxJbWFnZVNoYXJwZW4SHgoFc2lnbWEYASABKAJCD7pIDAoKHQAAyEIlAAAAACIuCghJbWFnZUh1ZRIiCgVhbmdsZRgBIAEoBUITukgQGg4YtAEozP7/////////ASJnCghJbWFnZVJnYhIdCgFyGAEgASgFQhK6SA8aDRhkKJz//////////wESHQoBZxgCIAEoBUISukgPGg0YZCic//////////8BEh0KAWIYAyABKAVCErpIDxoNGGQonP//////////ASKbAQoKSW1hZ2VGb2NhbBI8CgZyZWdpb24YASABKAsyKi5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5Gb2NhbFJlZ2lvbkgAEjoKBXBvaW50GAIgASgLMikubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuRm9jYWxQb2ludEgAQhMKCmZvY2FsX3R5cGUSBbpIAggBIkcKC0ZvY2FsUmVnaW9uEgwKBGxlZnQYASABKAUSCwoDdG9wGAIgASgFEg0KBXJpZ2h0GAMgASgFEg4KBmJvdHRvbRgEIAEoBSIiCgpGb2NhbFBvaW50EgkKAXgYASABKAUSCQoBeRgCIAEoBSJ/ChBJbWFnZVJvdW5kQ29ybmVyEhMKAnJ4GAEgASgFQge6SAQaAiAAEhgKAnJ5GAIgASgFQge6SAQaAiAASACIAQESKwoFY29sb3IYAyABKAlCF7pIFHISMhBeWzAtOWEtZkEtRl17Nn0kSAGIAQFCBQoDX3J5QggKBl9jb2xvciIxCg9JbWFnZVByb3BvcnRpb24SHgoKcGVyY2VudGFnZRgBIAEoBUIKukgHGgUY9AMoASK0BAoJSW1hZ2VUZXh0EhgKBHRleHQYASABKAlCCrpIB3IFEAEY6AcSEgoBeBgCIAEoCUIHukgEcgIQARISCgF5GAMgASgJQge6SARyAhABEhEKBGZvbnQYBCABKAlIAIgBARIrCgVjb2xvchgFIAEoCUIXukgUchIyEF5bMC05YS1mQS1GXXs2fSRIAYgBARIdCgVhbHBoYRgGIAEoBUIJukgGGgQYZCgASAKIAQESRQoKYmxlbmRfbW9kZRgHIAEoDjIsLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLlRleHRCbGVuZE1vZGVIA4gBARISCgV3aWR0aBgIIAEoCUgEiAEBEjwKBWFsaWduGAkgASgOMigubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuVGV4dEFsaWduSAWIAQESFAoHanVzdGlmeRgKIAEoCEgGiAEBEjoKBHdyYXAYCyABKA4yJy5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5UZXh0V3JhcEgHiAEBEhQKB3NwYWNpbmcYDCABKAVICIgBARIcCgNkcGkYDSABKAVCCrpIBxoFGOASKAFICYgBAUIHCgVfZm9udEIICgZfY29sb3JCCAoGX2FscGhhQg0KC19ibGVuZF9tb2RlQggKBl93aWR0aEIICgZfYWxpZ25CCgoIX2p1c3RpZnlCBwoFX3dyYXBCCgoIX3NwYWNpbmdCBgoEX2RwaSInCg5JbWFnZU1heEZyYW1lcxIVCgFuGAEgASgFQgq6SAcaBRjoBygBIiEKCUltYWdlUGFnZRIUCgNudW0YASABKAVCB7pIBBoCKAEiIwoISW1hZ2VEcGkSFwoDbnVtGAEgASgFQgq6SAcaBRjgEigBIusCCg5JbWFnZVdhdGVybWFyaxI+CgVpbWFnZRgBIAEoCzInLm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC52MS5TaWduYWxEYXRhQga6SAPIAQESPQoIcG9zaXRpb24YAiABKA4yJi5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5HcmF2aXR5SACIAQESKgoIb2Zmc2V0X3gYAyABKAVCE7pIEBoOGJBOKPCx/////////wFIAYgBARIqCghvZmZzZXRfeRgEIAEoBUITukgQGg4YkE4o8LH/////////AUgCiAEBEiUKB29wYWNpdHkYBSABKAJCD7pIDAoKHQAAgD8tAAAAAEgDiAEBEh4KBXNjYWxlGAYgASgCQgq6SAcKBSUAAAAASASIAQFCCwoJX3Bvc2l0aW9uQgsKCV9vZmZzZXRfeEILCglfb2Zmc2V0X3lCCgoIX29wYWNpdHlCCAoGX3NjYWxlIroECgtJbWFnZU91dHB1dBI/CgZmb3JtYXQYASABKA4yKi5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5JbWFnZUZvcm1hdEgAiAEBEh8KB3F1YWxpdHkYAiABKAVCCbpIBhoEGGQoAUgBiAEBEhsKDnN0cmlwX21ldGFkYXRhGAMgASgISAKIAQESMAoKYmFja2dyb3VuZBgEIAEoCUIXukgUchIyEF5bMC05YS1mQS1GXXs2fSRIA4gBARIuChBiYWNrZ3JvdW5kX2FscGhhGAUgASgCQg+6SAwKCh0AAIA/LQAAAABIBIgBARInCg9wbmdfY29tcHJlc3Npb24YBiABKAVCCbpIBhoEGAkoAEgFiAEBEhsKDnBuZ19pbnRlcmxhY2VkGAcgASgISAaIAQESHQoQanBlZ19wcm9ncmVzc2l2ZRgIIAEoCEgHiAEBEhoKDXdlYnBfbG9zc2xlc3MYCSABKAhICIgBARIfCgltYXhfYnl0ZXMYCiABKAVCB7pIBBoCIABICYgBAUIJCgdfZm9ybWF0QgoKCF9xdWFsaXR5QhEKD19zdHJpcF9tZXRhZGF0YUINCgtfYmFja2dyb3VuZEITChFfYmFja2dyb3VuZF9hbHBoYUISChBfcG5nX2NvbXByZXNzaW9uQhEKD19wbmdfaW50ZXJsYWNlZEITChFfanBlZ19wcm9ncmVzc2l2ZUIQCg5fd2VicF9sb3NzbGVzc0IMCgpfbWF4X2J5dGVzItgCChRNYW5pcHVsYXRlUGRmUmVxdWVzdBI4CgVtZXJnZRgBIAEoCzInLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLlBkZk1lcmdlSAASOAoFc3BsaXQYAiABKAsyJy5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5QZGZTcGxpdEgAEjwKB2VuY3J5cHQYAyABKAsyKS5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5QZGZFbmNyeXB0SAASPAoHY29udmVydBgEIAEoCzIpLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLlBkZkNvbnZlcnRIABI8CgdmbGF0dGVuGAUgASgLMikubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuUGRmRmxhdHRlbkgAQhIKCW9wZXJhdGlvbhIFukgCCAEiUQoVTWFuaXB1bGF0ZVBkZlJlc3BvbnNlEjgKB291dHB1dHMYASADKAsyJy5tb2NoYWJ1Z2FwaXMuYWRhcHQuZ3JhcGgudjEuU2lnbmFsRGF0YSKhBAoIUGRmTWVyZ2USQgoFZmlsZXMYASADKAsyJy5tb2NoYWJ1Z2FwaXMuYWRhcHQuZ3JhcGgudjEuU2lnbmFsRGF0YUIKukgHkgEECAIQZBI8CgRwZGZhGAIgASgOMikubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuUGRmQUZvcm1hdEgAiAEBEhIKBXBkZnVhGAMgASgISAGIAQESFAoHZmxhdHRlbhgEIAEoCEgCiAEBEiQKDXVzZXJfcGFzc3dvcmQYBSABKAlCCLpIBXIDGIABSAOIAQESJQoOb3duZXJfcGFzc3dvcmQYBiABKAlCCLpIBXIDGIABSASIAQE61wG6SNMBGtABCiFwZGZhX2luY29tcGF0aWJsZV93aXRoX2VuY3J5cHRpb24SS1BERi9BIGZvcm1hdCBpcyBpbmNvbXBhdGlibGUgd2l0aCBlbmNyeXB0aW9uICh1c2VyX3Bhc3N3b3JkL293bmVyX3Bhc3N3b3JkKRpeKCFoYXModGhpcy5wZGZhKSB8fCB0aGlzLnBkZmEgPT0gMCkgfHwgKCFoYXModGhpcy51c2VyX3Bhc3N3b3JkKSAmJiAhaGFzKHRoaXMub3duZXJfcGFzc3dvcmQpKUIHCgVfcGRmYUIICgZfcGRmdWFCCgoIX2ZsYXR0ZW5CEAoOX3VzZXJfcGFzc3dvcmRCEQoPX293bmVyX3Bhc3N3b3JkIpYFCghQZGZTcGxpdBI9CgRmaWxlGAEgASgLMicubW9jaGFidWdhcGlzLmFkYXB0LmdyYXBoLnYxLlNpZ25hbERhdGFCBrpIA8gBARJACgRtb2RlGAIgASgOMigubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuU3BsaXRNb2RlQgi6SAWCAQIgABIYCgRzcGFuGAMgASgJQgq6SAdyBRABGOgHEhIKBXVuaWZ5GAQgASgISACIAQESPAoEcGRmYRgFIAEoDjIpLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLlBkZkFGb3JtYXRIAYgBARISCgVwZGZ1YRgGIAEoCEgCiAEBEhQKB2ZsYXR0ZW4YByABKAhIA4gBARIkCg11c2VyX3Bhc3N3b3JkGAggASgJQgi6SAVyAxiAAUgEiAEBEiUKDm93bmVyX3Bhc3N3b3JkGAkgASgJQgi6SAVyAxiAAUgFiAEBOtcBukjTARrQAQohcGRmYV9pbmNvbXBhdGlibGVfd2l0aF9lbmNyeXB0aW9uEktQREYvQSBmb3JtYXQgaXMgaW5jb21wYXRpYmxlIHdpdGggZW5jcnlwdGlvbiAodXNlcl9wYXNzd29yZC9vd25lcl9wYXNzd29yZCkaXighaGFzKHRoaXMucGRmYSkgfHwgdGhpcy5wZGZhID09IDApIHx8ICghaGFzKHRoaXMudXNlcl9wYXNzd29yZCkgJiYgIWhhcyh0aGlzLm93bmVyX3Bhc3N3b3JkKSlCCAoGX3VuaWZ5QgcKBV9wZGZhQggKBl9wZGZ1YUIKCghfZmxhdHRlbkIQCg5fdXNlcl9wYXNzd29yZEIRCg9fb3duZXJfcGFzc3dvcmQiqAEKClBkZkVuY3J5cHQSPQoEZmlsZRgBIAEoCzInLm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC52MS5TaWduYWxEYXRhQga6SAPIAQESIQoNdXNlcl9wYXNzd29yZBgCIAEoCUIKukgHcgUQARiAARIlCg5vd25lcl9wYXNzd29yZBgDIAEoCUIIukgFcgMYgAFIAIgBAUIRCg9fb3duZXJfcGFzc3dvcmQi0QIKClBkZkNvbnZlcnQSPQoEZmlsZRgBIAEoCzInLm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC52MS5TaWduYWxEYXRhQga6SAPIAQESPAoEcGRmYRgCIAEoDjIpLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLlBkZkFGb3JtYXRIAIgBARISCgVwZGZ1YRgDIAEoCEgBiAEBOp4BukiaARqXAQoZcmVxdWlyZV9jb252ZXJzaW9uX29wdGlvbhIvYXQgbGVhc3Qgb25lIG9mIHBkZmEgb3IgcGRmdWEgbXVzdCBiZSBzcGVjaWZpZWQaSWhhcyh0aGlzLnBkZmEpICYmIHRoaXMucGRmYSAhPSAwIHx8IGhhcyh0aGlzLnBkZnVhKSAmJiB0aGlzLnBkZnVhID09IHRydWVCBwoFX3BkZmFCCAoGX3BkZnVhIksKClBkZkZsYXR0ZW4SPQoEZmlsZRgBIAEoCzInLm1vY2hhYnVnYXBpcy5hZGFwdC5ncmFwaC52MS5TaWduYWxEYXRhQga6SAPIAQEqdwoRRW11bGF0ZWRNZWRpYVR5cGUSIwofRU1VTEFURURfTUVESUFfVFlQRV9VTlNQRUNJRklFRBAAEh4KGkVNVUxBVEVEX01FRElBX1RZUEVfU0NSRUVOEAESHQoZRU1VTEFURURfTUVESUFfVFlQRV9QUklOVBACKmkKClBkZkFGb3JtYXQSHAoYUERGX0FfRk9STUFUX1VOU1BFQ0lGSUVEEAASEwoPUERGX0FfRk9STUFUXzFCEAESEwoPUERGX0FfRk9STUFUXzJCEAISEwoPUERGX0FfRk9STUFUXzNCEAMqnAEKClJlc2l6ZVR5cGUSGwoXUkVTSVpFX1RZUEVfVU5TUEVDSUZJRUQQABITCg9SRVNJWkVfVFlQRV9GSVQQARIUChBSRVNJWkVfVFlQRV9GSUxMEAISGQoVUkVTSVpFX1RZUEVfRklMTF9ET1dOEAMSFQoRUkVTSVpFX1RZUEVfRk9SQ0UQBBIUChBSRVNJWkVfVFlQRV9BVVRPEAUq8wEKB0dyYXZpdHkSFwoTR1JBVklUWV9VTlNQRUNJRklFRBAAEhIKDkdSQVZJVFlfQ0VOVEVSEAESEQoNR1JBVklUWV9OT1JUSBACEhEKDUdSQVZJVFlfU09VVEgQAxIQCgxHUkFWSVRZX0VBU1QQBBIQCgxHUkFWSVRZX1dFU1QQBRIWChJHUkFWSVRZX05PUlRIX0VBU1QQBhIWChJHUkFWSVRZX05PUlRIX1dFU1QQBxIWChJHUkFWSVRZX1NPVVRIX0VBU1QQCBIWChJHUkFWSVRZX1NPVVRIX1dFU1QQCRIRCg1HUkFWSVRZX1NNQVJUEAoqgAMKDVRleHRCbGVuZE1vZGUSHwobVEVYVF9CTEVORF9NT0RFX1VOU1BFQ0lGSUVEEAASHAoYVEVYVF9CTEVORF9NT0RFX01VTFRJUExZEAESGgoWVEVYVF9CTEVORF9NT0RFX1NDUkVFThACEhsKF1RFWFRfQkxFTkRfTU9ERV9PVkVSTEFZEAMSGgoWVEVYVF9CTEVORF9NT0RFX0RBUktFThAEEhsKF1RFWFRfQkxFTkRfTU9ERV9MSUdIVEVOEAUSHwobVEVYVF9CTEVORF9NT0RFX0NPTE9SX0RPREdFEAYSHgoaVEVYVF9CTEVORF9NT0RFX0NPTE9SX0JVUk4QBxIeChpURVhUX0JMRU5EX01PREVfSEFSRF9MSUdIVBAIEh4KGlRFWFRfQkxFTkRfTU9ERV9TT0ZUX0xJR0hUEAkSHgoaVEVYVF9CTEVORF9NT0RFX0RJRkZFUkVOQ0UQChIdChlURVhUX0JMRU5EX01PREVfRVhDTFVTSU9OEAsqVAoJVGV4dEFsaWduEhoKFlRFWFRfQUxJR05fVU5TUEVDSUZJRUQQABIVChFURVhUX0FMSUdOX0NFTlRFUhABEhQKEFRFWFRfQUxJR05fUklHSFQQAipmCghUZXh0V3JhcBIZChVURVhUX1dSQVBfVU5TUEVDSUZJRUQQABISCg5URVhUX1dSQVBfQ0hBUhABEhcKE1RFWFRfV1JBUF9XT1JEX0NIQVIQAhISCg5URVhUX1dSQVBfTk9ORRADKt8BCgtJbWFnZUZvcm1hdBIcChhJTUFHRV9GT1JNQVRfVU5TUEVDSUZJRUQQABIVChFJTUFHRV9GT1JNQVRfSlBFRxABEhQKEElNQUdFX0ZPUk1BVF9QTkcQAhIVChFJTUFHRV9GT1JNQVRfV0VCUBADEhUKEUlNQUdFX0ZPUk1BVF9BVklGEAQSFAoQSU1BR0VfRk9STUFUX0dJRhAFEhUKEUlNQUdFX0ZPUk1BVF9USUZGEAYSFAoQSU1BR0VfRk9STUFUX0JNUBAHEhQKEElNQUdFX0ZPUk1BVF9JQ08QCCpXCglTcGxpdE1vZGUSGgoWU1BMSVRfTU9ERV9VTlNQRUNJRklFRBAAEhgKFFNQTElUX01PREVfSU5URVJWQUxTEAESFAoQU1BMSVRfTU9ERV9QQUdFUxACMowDChBGaWxlRm9yZ2VTZXJ2aWNlEn0KDlJlbmRlckRvY3VtZW50EjQubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuUmVuZGVyRG9jdW1lbnRSZXF1ZXN0GjUubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuUmVuZGVyRG9jdW1lbnRSZXNwb25zZRJ9Cg5UcmFuc2Zvcm1JbWFnZRI0Lm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLlRyYW5zZm9ybUltYWdlUmVxdWVzdBo1Lm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLlRyYW5zZm9ybUltYWdlUmVzcG9uc2USegoNTWFuaXB1bGF0ZVBkZhIzLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLk1hbmlwdWxhdGVQZGZSZXF1ZXN0GjQubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuTWFuaXB1bGF0ZVBkZlJlc3BvbnNlYgZwcm90bzM",[m,H]),Yc=l(s,0),Fc=l(s,1),He=l(s,2),ze=l(s,3),Le=l(s,4),Ie=l(s,5),Qe=l(s,6),ce=l(s,7),ke=l(s,8),Ne=l(s,9),xc=l(s,10),fc=l(s,11),Ec=l(s,12),Mc=l(s,13),vc=l(s,14),Hc=l(s,15),zc=l(s,16),Lc=l(s,17),Qc=l(s,18),kc=l(s,19),Nc=l(s,20),Kc=l(s,21),Uc=l(s,22),wc=l(s,23),Dc=l(s,24),Tc=l(s,25),jc=l(s,26),Pc=l(s,27),Oc=l(s,28),_c=l(s,29),qc=l(s,30),$c=l(s,31),Ke=l(s,32),ei=l(s,33),ni=l(s,34),Ue=l(s,35),we=l(s,36),De=l(s,37),Te=l(s,38),je=l(s,39),ht=(n=>(n[n.UNSPECIFIED=0]="UNSPECIFIED",n[n.SCREEN=1]="SCREEN",n[n.PRINT=2]="PRINT",n))(ht||{}),ti=Q(s,0),It=(a=>(a[a.PDF_A_FORMAT_UNSPECIFIED=0]="PDF_A_FORMAT_UNSPECIFIED",a[a.PDF_A_FORMAT_1B=1]="PDF_A_FORMAT_1B",a[a.PDF_A_FORMAT_2B=2]="PDF_A_FORMAT_2B",a[a.PDF_A_FORMAT_3B=3]="PDF_A_FORMAT_3B",a))(It||{}),ai=Q(s,1),yt=(I=>(I[I.UNSPECIFIED=0]="UNSPECIFIED",I[I.FIT=1]="FIT",I[I.FILL=2]="FILL",I[I.FILL_DOWN=3]="FILL_DOWN",I[I.FORCE=4]="FORCE",I[I.AUTO=5]="AUTO",I))(yt||{}),si=Q(s,2),Zt=(d=>(d[d.UNSPECIFIED=0]="UNSPECIFIED",d[d.CENTER=1]="CENTER",d[d.NORTH=2]="NORTH",d[d.SOUTH=3]="SOUTH",d[d.EAST=4]="EAST",d[d.WEST=5]="WEST",d[d.NORTH_EAST=6]="NORTH_EAST",d[d.NORTH_WEST=7]="NORTH_WEST",d[d.SOUTH_EAST=8]="SOUTH_EAST",d[d.SOUTH_WEST=9]="SOUTH_WEST",d[d.SMART=10]="SMART",d))(Zt||{}),oi=Q(s,3),At=(p=>(p[p.UNSPECIFIED=0]="UNSPECIFIED",p[p.MULTIPLY=1]="MULTIPLY",p[p.SCREEN=2]="SCREEN",p[p.OVERLAY=3]="OVERLAY",p[p.DARKEN=4]="DARKEN",p[p.LIGHTEN=5]="LIGHTEN",p[p.COLOR_DODGE=6]="COLOR_DODGE",p[p.COLOR_BURN=7]="COLOR_BURN",p[p.HARD_LIGHT=8]="HARD_LIGHT",p[p.SOFT_LIGHT=9]="SOFT_LIGHT",p[p.DIFFERENCE=10]="DIFFERENCE",p[p.EXCLUSION=11]="EXCLUSION",p))(At||{}),ci=Q(s,4),Rt=(n=>(n[n.UNSPECIFIED=0]="UNSPECIFIED",n[n.CENTER=1]="CENTER",n[n.RIGHT=2]="RIGHT",n))(Rt||{}),ii=Q(s,5),Xt=(a=>(a[a.UNSPECIFIED=0]="UNSPECIFIED",a[a.CHAR=1]="CHAR",a[a.WORD_CHAR=2]="WORD_CHAR",a[a.NONE=3]="NONE",a))(Xt||{}),gi=Q(s,6),St=(o=>(o[o.UNSPECIFIED=0]="UNSPECIFIED",o[o.JPEG=1]="JPEG",o[o.PNG=2]="PNG",o[o.WEBP=3]="WEBP",o[o.AVIF=4]="AVIF",o[o.GIF=5]="GIF",o[o.TIFF=6]="TIFF",o[o.BMP=7]="BMP",o[o.ICO=8]="ICO",o))(St||{}),di=Q(s,7),Pe=(n=>(n[n.UNSPECIFIED=0]="UNSPECIFIED",n[n.INTERVALS=1]="INTERVALS",n[n.PAGES=2]="PAGES",n))(Pe||{}),li=Q(s,8),Oe=Gt(s,0);import{fileDesc as Vt,messageDesc as J,serviceDesc as Wt}from"@bufbuild/protobuf/codegenv2";import{file_google_protobuf_struct as Ct,file_google_protobuf_timestamp as Jt}from"@bufbuild/protobuf/wkt";var W=Vt("CjJtb2NoYWJ1Z2FwaXMvYWRhcHQvcnVudGltZS92MS9wbHVnaW5fc2VydmljZS5wcm90bxIdbW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEiGgoYR2V0U3lzdGVtU2VydmljZXNSZXF1ZXN0IsUBChlHZXRTeXN0ZW1TZXJ2aWNlc1Jlc3BvbnNlEm0KE2NvbmZpZ3VyZWRfc2VydmljZXMYASADKAsyUC5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5HZXRTeXN0ZW1TZXJ2aWNlc1Jlc3BvbnNlLkNvbmZpZ3VyZWRTZXJ2aWNlc0VudHJ5GjkKF0NvbmZpZ3VyZWRTZXJ2aWNlc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoCDoCOAEiMgoQQXV0aG9yaXplUmVxdWVzdBIeCgxhY2Nlc3NfdG9rZW4YASABKAlCCLpIBXIDGJBOIhMKEUF1dGhvcml6ZVJlc3BvbnNlIoABCh5CYXRjaEdldFN5c3RlbVZhcmlhYmxlc1JlcXVlc3QSXgoFbmFtZXMYASADKAlCT7pITJIBSQgBEGQYASJBcj8QARhkMjleW18kYS16QS1aXVtfJGEtekEtWjAtOV0qKD86XC5bXyRhLXpBLVpdW18kYS16QS1aMC05XSopKiQiwQEKH0JhdGNoR2V0U3lzdGVtVmFyaWFibGVzUmVzcG9uc2USWAoFaXRlbXMYASADKAsySS5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5CYXRjaEdldFN5c3RlbVZhcmlhYmxlc1Jlc3BvbnNlLkl0ZW1zRW50cnkaRAoKSXRlbXNFbnRyeRILCgNrZXkYASABKAkSJQoFdmFsdWUYAiABKAsyFi5nb29nbGUucHJvdG9idWYuVmFsdWU6AjgBIn4KHEJhdGNoR2V0VXNlclZhcmlhYmxlc1JlcXVlc3QSXgoFbmFtZXMYASADKAlCT7pITJIBSQgBEGQYASJBcj8QARhkMjleW18kYS16QS1aXVtfJGEtekEtWjAtOV0qKD86XC5bXyRhLXpBLVpdW18kYS16QS1aMC05XSopKiQivQEKHUJhdGNoR2V0VXNlclZhcmlhYmxlc1Jlc3BvbnNlElYKBWl0ZW1zGAEgAygLMkcubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuQmF0Y2hHZXRVc2VyVmFyaWFibGVzUmVzcG9uc2UuSXRlbXNFbnRyeRpECgpJdGVtc0VudHJ5EgsKA2tleRgBIAEoCRIlCgV2YWx1ZRgCIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5WYWx1ZToCOAEiewoZQmF0Y2hHZXRVc2VyVG9rZW5zUmVxdWVzdBJeCgVuYW1lcxgBIAMoCUJPukhMkgFJCAEQZBgBIkFyPxABGGQyOV5bXyRhLXpBLVpdW18kYS16QS1aMC05XSooPzpcLltfJGEtekEtWl1bXyRhLXpBLVowLTldKikqJCLFAQoaQmF0Y2hHZXRVc2VyVG9rZW5zUmVzcG9uc2USUwoFaXRlbXMYASADKAsyRC5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5CYXRjaEdldFVzZXJUb2tlbnNSZXNwb25zZS5JdGVtc0VudHJ5GlIKCkl0ZW1zRW50cnkSCwoDa2V5GAEgASgJEjMKBXZhbHVlGAIgASgLMiQubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuVG9rZW46AjgBIn0KG0JhdGNoR2V0U3lzdGVtVG9rZW5zUmVxdWVzdBJeCgVuYW1lcxgBIAMoCUJPukhMkgFJCAEQZBgBIkFyPxABGGQyOV5bXyRhLXpBLVpdW18kYS16QS1aMC05XSooPzpcLltfJGEtekEtWl1bXyRhLXpBLVowLTldKikqJCLJAQocQmF0Y2hHZXRTeXN0ZW1Ub2tlbnNSZXNwb25zZRJVCgVpdGVtcxgBIAMoCzJGLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkJhdGNoR2V0U3lzdGVtVG9rZW5zUmVzcG9uc2UuSXRlbXNFbnRyeRpSCgpJdGVtc0VudHJ5EgsKA2tleRgBIAEoCRIzCgV2YWx1ZRgCIAEoCzIkLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLlRva2VuOgI4ASJfCgVUb2tlbhIMCgRuYW1lGAEgASgJEg0KBXRva2VuGAIgASgJEgwKBHR5cGUYAyABKAkSKwoHZXhwaXJlcxgEIAEoCzIaLmdvb2dsZS5wcm90b2J1Zi5UaW1lc3RhbXAy1gYKDVBsdWdpblNlcnZpY2USbgoJQXV0aG9yaXplEi8ubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuQXV0aG9yaXplUmVxdWVzdBowLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkF1dGhvcml6ZVJlc3BvbnNlEoYBChFHZXRTeXN0ZW1TZXJ2aWNlcxI3Lm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkdldFN5c3RlbVNlcnZpY2VzUmVxdWVzdBo4Lm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkdldFN5c3RlbVNlcnZpY2VzUmVzcG9uc2USmAEKF0JhdGNoR2V0U3lzdGVtVmFyaWFibGVzEj0ubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuQmF0Y2hHZXRTeXN0ZW1WYXJpYWJsZXNSZXF1ZXN0Gj4ubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuQmF0Y2hHZXRTeXN0ZW1WYXJpYWJsZXNSZXNwb25zZRKSAQoVQmF0Y2hHZXRVc2VyVmFyaWFibGVzEjsubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuQmF0Y2hHZXRVc2VyVmFyaWFibGVzUmVxdWVzdBo8Lm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkJhdGNoR2V0VXNlclZhcmlhYmxlc1Jlc3BvbnNlEokBChJCYXRjaEdldFVzZXJUb2tlbnMSOC5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5CYXRjaEdldFVzZXJUb2tlbnNSZXF1ZXN0GjkubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuQmF0Y2hHZXRVc2VyVG9rZW5zUmVzcG9uc2USjwEKFEJhdGNoR2V0U3lzdGVtVG9rZW5zEjoubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuQmF0Y2hHZXRTeXN0ZW1Ub2tlbnNSZXF1ZXN0GjsubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuQmF0Y2hHZXRTeXN0ZW1Ub2tlbnNSZXNwb25zZWIGcHJvdG8z",[m,Ct,Jt]),bi=J(W,0),Gi=J(W,1),hi=J(W,2),Ii=J(W,3),yi=J(W,4),Zi=J(W,5),Ai=J(W,6),Ri=J(W,7),Xi=J(W,8),Si=J(W,9),Vi=J(W,10),Wi=J(W,11),Ci=J(W,12),_e=Wt(W,0);import{Code as C,ConnectError as F,createContextValues as qe}from"@connectrpc/connect";import{compressedFlag as $e,createClientMethodSerializers as en,createEnvelopeReadableStream as ye,createMethodUrl as nn,encodeEnvelope as tn,runStreamingCall as Bt,runUnaryCall as Yt}from"@connectrpc/connect/protocol";import{headerGrpcStatus as an,requestHeader as sn,trailerFlag as Ze,trailerParse as on,validateResponse as cn,validateTrailer as gn}from"@connectrpc/connect/protocol-grpc-web";function O(u){return{async unary(e,t,n,a,i,I){let{serialize:b,parse:ae}=en(e,!0);return Yt({interceptors:u.interceptors,signal:t,timeoutMs:n,req:{stream:!1,service:e.parent,method:e,requestMethod:"POST",url:nn("https://runtimeapi/",e),header:sn(!0,n,a,!1),contextValues:I??qe(),message:i},next:async o=>{let x=await u.fetcher.fetch(o.url,{method:o.requestMethod,headers:o.header,signal:o.signal,body:tn(0,b(o.message))}),{headerError:d}=cn(x.status,x.headers);if(!x.body)throw d!==void 0?d:new F("missing response body",C.Internal);let p=ye(x.body).getReader(),R,k;for(;;){let N=await p.read();if(N.done)break;let{flags:w,data:K}=N.value;if((w&$e)===$e)throw new F("received compressed data, which is unsupported",C.Internal);if(w===Ze){if(R!==void 0)throw new F("extra trailer",C.Internal);R=on(K);continue}if(k!==void 0)throw new F("extra message",C.Unimplemented);k=ae(K)}if(R===void 0)throw d!==void 0?d:new F("missing trailer",x.headers.has(an)?C.Unimplemented:C.Unknown);if(gn(R,x.headers),k===void 0)throw new F("missing message",R.has(an)?C.Unimplemented:C.Unknown);return{stream:!1,service:e.parent,method:e,header:x.headers,message:k,trailer:R}}})},async stream(e,t,n,a,i,I){let{serialize:b,parse:ae}=en(e,!0);async function o(d){let{value:p,done:R}=await d[Symbol.asyncIterator]().next();if(R)throw new F("missing request message",C.InvalidArgument);return tn(0,b(p))}async function*x(d,p,R,k,N){if(p){if(!(await ye(d).getReader().read()).done)throw new F("extra data for trailers-only",C.Internal);return}let w=ye(d).getReader(),K=!1;for(;;){let le=await w.read();if(le.done)break;let{flags:rn,data:We}=le.value;if((rn&Ze)===Ze){if(K)throw new F("extra trailer",C.Internal);K=!0;let Ce=on(We);gn(Ce,k),Ce.forEach((mn,pn)=>R.set(pn,mn));continue}if(K)throw new F("extra message after trailer",C.Internal);yield ae(We)}if("throwIfAborted"in N&&N.throwIfAborted?.(),!K)throw new F("missing trailer",C.Internal)}return Bt({interceptors:u.interceptors,signal:t,timeoutMs:n,req:{stream:!0,service:e.parent,method:e,requestMethod:"POST",url:nn("https://runtimeapi/",e),header:sn(!0,n,a,!1),contextValues:I??qe(),message:i},next:async d=>{let p=await o(d.message),R=await u.fetcher.fetch(d.url,{method:d.requestMethod,headers:d.header,signal:d.signal,body:p}),{foundStatus:k,headerError:N}=cn(R.status,R.headers);if(N)throw N;if(!R.body)throw new F("missing response body",C.Internal);let w=new Headers;return{...d,header:R.headers,trailer:w,message:x(R.body,k,w,R.headers,d.signal)}}})}}}import{fileDesc as Ft,messageDesc as E}from"@bufbuild/protobuf/codegenv2";var M=Ft("Cixtb2NoYWJ1Z2FwaXMvYWRhcHQvcnVudGltZS92MS9pbmNvbWluZy5wcm90bxIdbW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEiOgoOSG9zdGluZ0RldGFpbHMSGAoLcHVibGljX2hvc3QYASABKAlIAIgBAUIOCgxfcHVibGljX2hvc3QiZgoVU3RhcnRFeGVjdXRpb25SZXF1ZXN0EhAKCHJlY2VpdmVyGAEgASgJEjsKBGhvc3QYAiABKAsyLS5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5Ib3N0aW5nRGV0YWlscyIYChZTdGFydEV4ZWN1dGlvblJlc3BvbnNlIlMKFFN0b3BFeGVjdXRpb25SZXF1ZXN0EjsKBGhvc3QYASABKAsyLS5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5Ib3N0aW5nRGV0YWlscyIXChVTdG9wRXhlY3V0aW9uUmVzcG9uc2UiUQoSQ3JvblRyaWdnZXJSZXF1ZXN0EjsKBGhvc3QYASABKAsyLS5tb2NoYWJ1Z2FwaXMuYWRhcHQucnVudGltZS52MS5Ib3N0aW5nRGV0YWlscyIVChNDcm9uVHJpZ2dlclJlc3BvbnNlIpQCCg5FeGNoYW5nZVJlc3VsdBITCgt0cmFuc21pdHRlchgBIAEoCRJLCgdzaWduYWxzGAIgAygLMjoubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuRXhjaGFuZ2VSZXN1bHQuU2lnbmFsc0VudHJ5EkcKEHRyYW5zbWl0dGVyX21vZGUYAyABKA4yLS5tb2NoYWJ1Z2FwaXMuYWRhcHQuZ3JhcGgudjEuVHJhbnNtaXR0ZXIuTW9kZRpXCgxTaWduYWxzRW50cnkSCwoDa2V5GAEgASgJEjYKBXZhbHVlGAIgASgLMicubW9jaGFidWdhcGlzLmFkYXB0LmdyYXBoLnYxLlNpZ25hbERhdGE6AjgBItgBChVFeGNoYW5nZVJlc3VsdFJlcXVlc3QSQwoJb3BlcmF0aW9uGAEgASgLMjAubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuRXhjaGFuZ2VPcGVyYXRpb24SPQoGcmVzdWx0GAIgASgLMi0ubW9jaGFidWdhcGlzLmFkYXB0LnJ1bnRpbWUudjEuRXhjaGFuZ2VSZXN1bHQSOwoEaG9zdBgDIAEoCzItLm1vY2hhYnVnYXBpcy5hZGFwdC5ydW50aW1lLnYxLkhvc3RpbmdEZXRhaWxzIhgKFkV4Y2hhbmdlUmVzdWx0UmVzcG9uc2ViBnByb3RvMw",[H,Y,G]),Hi=E(M,0),zi=E(M,1),Li=E(M,2),Qi=E(M,3),ki=E(M,4),Ni=E(M,5),Ki=E(M,6),Ui=E(M,7),wi=E(M,8),Di=E(M,9);var ft={config:"config",metadata:"metadata",configuredServices:"configured_services"};function ge(u){return ft[u]??u}function B(u){if(u==null)return u;if(Array.isArray(u))return u.map(B);if(typeof u!="object")return u;let e={};for(let[t,n]of Object.entries(u))n!==void 0&&(e[t]=B(n));return e}var Et=[r.Unavailable,r.Internal,r.Aborted,r.ResourceExhausted],ne=u=>async e=>{for(let t=0;;t++)try{return await u(e)}catch(n){if(t>=3||n instanceof A&&!Et.includes(n.code))throw n;let a=Math.min(500*(1<<t),5e3);await new Promise(i=>setTimeout(i,Math.random()*a))}},de=class{env;pluginService;pluginToken;fileforge;constructor(e,t){this.env=e,this.pluginToken=t,this.pluginService=ee(_e,O({fetcher:this.env.plugin,interceptors:[ne,n=>async a=>(a.header.set("Authorization",`Bearer ${this.pluginToken}`),await n(a))]})),this.fileforge=ee(Oe,O({fetcher:this.env.fileforge,interceptors:[ne,n=>async a=>(a.header.set("Authorization",`Bearer ${this.pluginToken}`),await n(a))]}))}async getSystemVariable(e){let n=(await this.pluginService.batchGetSystemVariables({names:[e]})).items[e];return n?v(ie,n):void 0}async getSystemVariables(...e){let t=await this.pluginService.batchGetSystemVariables({names:e}),n={};for(let[a,i]of Object.entries(t.items))n[a]=v(ie,i);return n}async getUserVariable(e){let n=(await this.pluginService.batchGetUserVariables({names:[e]})).items[e];return n?v(ie,n):void 0}async getUserVariables(...e){let t=await this.pluginService.batchGetUserVariables({names:e}),n={};for(let[a,i]of Object.entries(t.items))n[a]=v(ie,i);return n}async getUserToken(e){return(await this.pluginService.batchGetUserTokens({names:[e]})).items[e]}async getUserTokens(...e){return(await this.pluginService.batchGetUserTokens({names:e})).items}async getSystemToken(e){return(await this.pluginService.batchGetSystemTokens({names:[e]})).items[e]}async getSystemTokens(...e){return(await this.pluginService.batchGetSystemTokens({names:e})).items}userHttpProxy(e){return(t,n)=>{let a=new Request(t,n);return a.headers.set("X-Mochabug-Adapt-Plugin-HttpProxy-Token",`Bearer ${this.pluginToken}`),a.headers.set("X-Mochabug-Adapt-Plugin-HttpProxy-Path",`user:${e}`),a.headers.set("Host",new URL(a.url).host),this.env.httpproxy.fetch(a)}}systemHttpProxy(e){return(t,n)=>{let a=new Request(t,n);return a.headers.set("X-Mochabug-Adapt-Plugin-HttpProxy-Token",`Bearer ${this.pluginToken}`),a.headers.set("X-Mochabug-Adapt-Plugin-HttpProxy-Path",`system:${e}`),a.headers.set("Host",new URL(a.url).host),this.env.httpproxy.fetch(a)}}async authorize(e){await this.pluginService.authorize({accessToken:e})}async getSystemServices(){return(await this.pluginService.getSystemServices({})).configuredServices}async readFile(e){let t=new URL("https://runtimeapi");t.pathname=e;let n=await this.env.assets.fetch(t,{method:"GET"});if(!n.ok)throw ln(n.status);let a=n.headers.get("content-type");if(!a||!a.toLowerCase().includes("application/octet-stream"))throw new A("Invalid file. Are you reading a directory?",r.InvalidArgument);return{content:n.body,mime:a}}async readDirectory(e){let t=new URL("https://runtimeapi");t.pathname=e;let n=await this.env.assets.fetch(t,{method:"GET"});if(!n.ok)throw ln(n.status);let a=n.headers.get("content-type");if(!a||!a.toLowerCase().includes("application/json"))throw new A("Invalid directory. Are you reading a file?",r.InvalidArgument);return await n.json()}createSignalData(e){return h(P,{filename:e.filename,mimeType:"application/octet-stream",data:e.data})}extractBinaryFile(e){return{filename:e.filename??"output",data:e.data}}async htmlToPdf(e){let t=await this.fileforge.renderDocument({conversion:{case:"htmlToPdf",value:h(He,{indexHtml:e.indexHtml,headerHtml:e.headerHtml,footerHtml:e.footerHtml,assets:e.assets?.map(n=>this.createSignalData(n))??[],render:e.render?f(Ie,B(e.render)):void 0,output:e.output?f(ce,B(e.output)):void 0})}});return this.extractBinaryFile(t.output)}async markdownToPdf(e){let t=await this.fileforge.renderDocument({conversion:{case:"markdownToPdf",value:h(ze,{wrapperHtml:e.wrapperHtml,markdownFiles:e.markdownFiles.map(n=>this.createSignalData(n)),headerHtml:e.headerHtml,footerHtml:e.footerHtml,assets:e.assets?.map(n=>this.createSignalData(n))??[],render:e.render?f(Ie,B(e.render)):void 0,output:e.output?f(ce,B(e.output)):void 0})}});return this.extractBinaryFile(t.output)}async officeToPdf(e){let t=await this.fileforge.renderDocument({conversion:{case:"officeToPdf",value:h(Le,{document:this.createSignalData(e.document),render:e.render?f(Qe,B(e.render)):void 0,output:e.output?f(ce,B(e.output)):void 0})}});return this.extractBinaryFile(t.output)}async transformImage(e){let t=await this.fileforge.transformImage(h(Ne,{input:this.createSignalData(e.input),operations:e.operations?.map(n=>f(ke,B(n)))??[],output:e.output?f(Ke,B(e.output)):void 0}));return this.extractBinaryFile(t.output)}async mergePdfs(e){let t=await this.fileforge.manipulatePdf({operation:{case:"merge",value:h(Ue,{files:e.files.map(n=>this.createSignalData(n)),pdfa:e.pdfa,pdfua:e.pdfua,flatten:e.flatten,userPassword:e.userPassword,ownerPassword:e.ownerPassword})}});return this.extractBinaryFile(t.outputs[0])}async splitPdf(e){return(await this.fileforge.manipulatePdf({operation:{case:"split",value:h(we,{file:this.createSignalData(e.file),mode:e.mode==="intervals"?1:2,span:e.span,unify:e.unify,pdfa:e.pdfa,pdfua:e.pdfua,flatten:e.flatten,userPassword:e.userPassword,ownerPassword:e.ownerPassword})}})).outputs.map(n=>this.extractBinaryFile(n))}async encryptPdf(e){let t=await this.fileforge.manipulatePdf({operation:{case:"encrypt",value:h(De,{file:this.createSignalData(e.file),userPassword:e.userPassword,ownerPassword:e.ownerPassword})}});return this.extractBinaryFile(t.outputs[0])}async convertPdf(e){let t=await this.fileforge.manipulatePdf({operation:{case:"convert",value:h(Te,{file:this.createSignalData(e.file),pdfa:e.pdfa,pdfua:e.pdfua})}});return this.extractBinaryFile(t.outputs[0])}async flattenPdf(e){let t=await this.fileforge.manipulatePdf({operation:{case:"flatten",value:h(je,{file:this.createSignalData(e.file)})}});return this.extractBinaryFile(t.outputs[0])}},Ae=class{result;constructor(e){this.result=e}get(e){let t=this.result[e];if(t)return{value:JSON.parse(new TextDecoder().decode(t.value)),ttl:t.metadata.ttl,lastModified:U(t.metadata.lastModified),etag:t.metadata.etag}}getBinary(e){let t=this.result[e];if(t)return{ttl:t.metadata.ttl,value:t.value,lastModified:U(t.metadata.lastModified),etag:t.metadata.etag}}},Re=class{ops=[];insert(e,t,n){return this.ops.push(h(oe,{operation:{case:"insert",value:{key:e,value:{value:t instanceof Uint8Array?t:new TextEncoder().encode(JSON.stringify(t)),ttl:n}}}})),this}delete(e){return this.ops.push(h(oe,{operation:{case:"delete",value:{key:e}}})),this}rangeDelete(e,t,n,a){return this.ops.push(h(oe,{operation:{case:"rangeDelete",value:{start:e,end:t,startInclusive:n,endInclusive:a}}})),this}build(){return this.ops}},te=class{service;namespace;constructor(e,t){this.service=e,this.namespace=xt(Ye,t)}async insert(e,t,n,a){let i;a&&(i=h(Ge,{}),a.failIfExists?i.failIfExists=!0:(a.etagEquals&&(i.etag=a.etagEquals),a.timestampEquals?i.timestampCondition={case:"lastModifiedEquals",value:_(a.timestampEquals)}:a.timestampRange&&(i.timestampCondition={case:"lastModifiedRange",value:h(be,{start:a.timestampRange.start?_(a.timestampRange.start):void 0,end:a.timestampRange.end?_(a.timestampRange.end):void 0,startInclusive:a.timestampRange.startInclusive,endInclusive:a.timestampRange.endInclusive})})));let I=await this.service.writeStore({operation:{operation:{case:"insert",value:{key:e,value:{value:t instanceof Uint8Array?t:new TextEncoder().encode(JSON.stringify(t)),ttl:n},precondition:i}}},namespace:this.namespace});return{ttl:I.metadata.ttl,lastModified:U(I.metadata.lastModified),etag:I.metadata.etag}}async delete(e,t){let n;t&&(n=h(Be,{}),t.mustExists?n.mustExists=!0:(t.etagEquals&&(n.etag=t.etagEquals),t.timestampEquals?n.timestampCondition={case:"lastModifiedEquals",value:_(t.timestampEquals)}:t.timestampRange&&(n.timestampCondition={case:"lastModifiedRange",value:h(be,{start:t.timestampRange.start?_(t.timestampRange.start):void 0,end:t.timestampRange.end?_(t.timestampRange.end):void 0,startInclusive:t.timestampRange.startInclusive,endInclusive:t.timestampRange.endInclusive})}))),await this.service.writeStore({operation:{operation:{case:"delete",value:{key:e,precondition:n}}},namespace:this.namespace})}async rangeDelete(e,t,n,a){await this.service.batchWriteStore({namespace:this.namespace,operations:[{operation:{case:"rangeDelete",value:{start:e,end:t,startInclusive:n,endInclusive:a}}}]})}async get(e){let n=(await this.service.batchReadStore({keys:[e],namespace:this.namespace})).items[e];if(n)return{data:JSON.parse(new TextDecoder().decode(n.value)),ttl:n.metadata.ttl,etag:n.metadata.etag,lastModified:U(n.metadata.lastModified)}}async getBinary(e){let n=(await this.service.batchReadStore({keys:[e],namespace:this.namespace})).items[e];if(n)return{data:n.value,ttl:n.metadata.ttl,etag:n.metadata.etag,lastModified:U(n.metadata.lastModified)}}async selectRange(e){let t=await this.service.selectStore({namespace:this.namespace,operation:e});return{nextToken:t.nextToken,items:Object.entries(t.items).sort(([n],[a])=>n.localeCompare(a)).map(([n,a])=>({key:n,value:JSON.parse(new TextDecoder().decode(a.value)),ttl:a.metadata.ttl,etag:a.metadata.etag,lastModified:U(a.metadata.lastModified)}))}}async selectRangeBinary(e){let t=await this.service.selectStore({namespace:this.namespace,operation:e});return{nextToken:t.nextToken,items:Object.values(t.items).map(n=>({value:n.value,ttl:n.metadata.ttl,etag:n.metadata.etag,lastModified:U(n.metadata.lastModified)}))}}async writeBatch(e){let t=await this.service.batchWriteStore({namespace:this.namespace,operations:e}),n={};for(let[a,i]of Object.entries(t.metadata))n[a]={ttl:i.ttl,lastModified:U(i.lastModified),etag:i.etag};return n}async readBatch(e){let t=await this.service.batchReadStore({namespace:this.namespace,keys:e});return new Ae(t.items)}async acquire(e,t){try{await this.service.writeStore({namespace:this.namespace,operation:{operation:{case:"insert",value:{key:e,value:{value:new Uint8Array([1]),ttl:t??5},precondition:h(Ge,{failIfExists:!0})}}}})}catch(n){if(n instanceof A&&n.code===r.FailedPrecondition)return!1;throw n}return!0}async release(e){await this.writeBatch(new Re().delete(e).build())}async lock(e,t,n){let a=n?.maxRetries??5,i=n?.initialDelay??50,I=n?.maxDelay??2e3;for(let b=0;b<a;b++)if(await this.acquire(e))try{return await t()}finally{await this.release(e)}else if(b<a-1){let o=Math.min(i*2**b,I);console.log(`Acquisition failed for key: ${e}. Delaying for ${o}ms`),await new Promise(x=>setTimeout(x,o))}throw new Error("Failed to acquire lock after maximum retries")}},Xe=class extends de{executor;constructor(e,t){super(e,t),this.executor=ee(he,O({fetcher:e.executor,interceptors:[ne,n=>async a=>(a.header.set("Authorization",`Bearer ${t}`),await n(a))]}))}async getConfig(...e){let t=await this.executor.getVertexConfig({fieldMask:e.length>0?h($,{paths:e.map(ge)}):void 0}),n={},a=e.length>0?e:["config","metadata","configuredServices"];if(a.includes("metadata")&&(n.metadata=t.metadata?v(j,t.metadata):void 0),a.includes("configuredServices")&&(n.configuredServices=t.configuredServices||{}),a.includes("config"))if(t.config&&t.config.length>0)try{n.config=JSON.parse(new TextDecoder().decode(t.config))}catch{n.config=void 0}else n.config=void 0;return n}async getConfigBinary(...e){let t=await this.executor.getVertexConfig({fieldMask:e.length>0?h($,{paths:e.map(ge)}):void 0}),n={},a=e.length>0?e:["config","metadata","configuredServices"];return a.includes("metadata")&&(n.metadata=t.metadata?v(j,t.metadata):void 0),a.includes("configuredServices")&&(n.configuredServices=t.configuredServices||{}),a.includes("config")&&(n.config=t.config),n}getLocalStore(e){return new te(this.executor,e==="vertex"?"NAMESPACE_VERTEX":"NAMESPACE_PLUGIN")}getSessionApi(e){return new Ve(this.env,this.pluginToken,e)}},Se=class extends Xe{sessionAuthHeader;constructor(e,t,n){super(e,t),this.sessionAuthHeader=n,this.executor=ee(he,O({fetcher:e.executor,interceptors:[ne,a=>async i=>(i.header.set("Authorization",n),await a(i))]}))}getAuthHeader(){return this.sessionAuthHeader}getSessionStore(e){return new te(this.executor,e==="vertex"?"NAMESPACE_VERTEX_INSTANCE":"NAMESPACE_PLUGIN_INSTANCE")}},Ve=class extends Se{constructor(e,t,n){super(e,t,n)}async listSignals(e){let t=await this.executor.listActiveSignals({pageSize:e?.pageSize,orderDescending:e?.orderDescending});return{signals:Object.fromEntries(Object.entries(t.signals).map(([n,a])=>[n,JSON.parse(new TextDecoder().decode(a.data))])),receiver:t.receiver,cursor:t.nextCursor}}async listSignalsBinary(e){let t=await this.executor.listActiveSignals({pageSize:e?.pageSize,orderDescending:e?.orderDescending});return{signals:t.signals,receiver:t.receiver,cursor:t.nextCursor}}async continueListSignals(e){let t=await this.executor.listActiveSignals({cursor:e});return{signals:Object.fromEntries(Object.entries(t.signals).map(([n,a])=>[n,JSON.parse(new TextDecoder().decode(a.data))])),receiver:t.receiver,cursor:t.nextCursor}}async continueListSignalsBinary(e){let t=await this.executor.listActiveSignals({cursor:e});return{signals:t.signals,receiver:t.receiver,cursor:t.nextCursor}}async getSignal(e){let n=(await this.executor.batchGetActiveSignals({names:[e]})).items[e];return n?JSON.parse(new TextDecoder().decode(n.data)):void 0}async getSignalBinary(e){return(await this.executor.batchGetActiveSignals({names:[e]})).items[e]}async getSignals(...e){if(e.length===0)return{};let t=await this.executor.batchGetActiveSignals({names:e});if(Object.keys(t.items).length===0)return{};let n={};for(let[a,i]of Object.entries(t.items))n[a]=JSON.parse(new TextDecoder().decode(i.data));return n}async getSignalsBinary(...e){return e.length===0?{}:(await this.executor.batchGetActiveSignals({names:e})).items}async send(e,t){await this.executor.send({transmitter:e,signals:t?Object.fromEntries(Object.entries(t).map(([n,a])=>a?.data instanceof Uint8Array&&typeof a?.mimeType=="string"&&a.mimeType?[n,h(P,{data:a.data,mimeType:a.mimeType,filename:a.filename})]:[n,h(P,{data:new TextEncoder().encode(JSON.stringify(a)),mimeType:"application/json"})])):{}})}async dispatchExchange(e,t,n){let a={name:e,receiver:t,signals:n?Object.fromEntries(Object.entries(n).map(([I,b])=>b?.data instanceof Uint8Array&&typeof b?.mimeType=="string"&&b.mimeType?[I,h(P,{data:b.data,mimeType:b.mimeType,filename:b.filename})]:[I,h(P,{data:new TextEncoder().encode(JSON.stringify(b)),mimeType:"application/json"})])):{}};return(await this.executor.dispatchExchange(a,{headers:{"x-idempotency-key":crypto.randomUUID()}})).operation}async getExchange(e){let t=await this.executor.getExchangeOperation({id:e});if(!t.item)throw new A("Exchange operation not found",r.NotFound);return t.item}async cancelExchange(e){await this.executor.cancelExchangeOperation({id:e})}},dn=class extends de{configurator;constructor(e,t){super(e,t),this.configurator=ee(xe,O({fetcher:e.configurator,interceptors:[ne,n=>async a=>(a.header.set("Authorization",`Bearer ${t}`),await n(a))]}))}async getConfig(...e){let t=await this.configurator.getVertexConfig({fieldMask:e.length>0?h($,{paths:e.map(ge)}):void 0}),n={},a=e.length>0?e:["config","metadata","configuredServices"];if(a.includes("metadata")&&(n.metadata=t.metadata?v(j,t.metadata):void 0),a.includes("configuredServices")&&(n.configuredServices=t.configuredServices||{}),a.includes("config"))if(t.config&&t.config.length>0)try{n.config=JSON.parse(new TextDecoder().decode(t.config))}catch{n.config=void 0}else n.config=void 0;return n}async getConfigBinary(...e){let t=await this.configurator.getVertexConfig({fieldMask:e.length>0?h($,{paths:e.map(ge)}):void 0}),n={},a=e.length>0?e:["config","metadata","configuredServices"];return a.includes("metadata")&&(n.metadata=t.metadata?v(j,t.metadata):void 0),a.includes("configuredServices")&&(n.configuredServices=t.configuredServices||{}),a.includes("config")&&(n.config=t.config),n}async postConfig(e){if(!e.config&&!e.metadata)throw new A("Either config or metadata must be provided",r.InvalidArgument);let t;e.config!==void 0&&(t=e.config instanceof Uint8Array?e.config:new TextEncoder().encode(JSON.stringify(e.config)));let n=await this.configurator.postVertexConfig({config:t,metadata:e.metadata?f(j,B(e.metadata)):void 0,overrideBindings:e?.overrideBindings});return v(j,n.metadata)}async listIncomingSignals(e,t,n){let a=await this.configurator.listIncomingSignals({receiver:e,formats:t?.map(i=>f(Je,B(i)))??[],fieldMask:n?f($,B(n)):void 0});return v(Fe,a)}getLocalStore(e){return new te(this.configurator,e==="vertex"?"NAMESPACE_VERTEX":"NAMESPACE_PLUGIN")}};function ln(u){switch(u){case 400:return new A("Bad Request",r.InvalidArgument);case 401:return new A("Unauthorized",r.Unauthenticated);case 403:return new A("Forbidden",r.PermissionDenied);case 404:return new A("Not Found",r.NotFound);case 409:return new A("Conflict",r.AlreadyExists);case 429:return new A("Too Many Requests",r.ResourceExhausted);case 499:return new A("Client Closed Request",r.Canceled);case 500:return new A("Internal Server Error",r.Internal);case 501:return new A("Not Implemented",r.Unimplemented);case 503:return new A("Service Unavailable",r.Unavailable);case 504:return new A("Gateway Timeout",r.DeadlineExceeded);default:return new A(`Unknown HTTP error: ${u}`,r.Unknown)}}function Dg(u){switch(u.code){case r.Canceled:return 499;case r.Unknown:return 500;case r.InvalidArgument:return 400;case r.DeadlineExceeded:return 504;case r.NotFound:return 404;case r.AlreadyExists:return 409;case r.PermissionDenied:return 403;case r.ResourceExhausted:return 429;case r.FailedPrecondition:return 400;case r.Aborted:return 409;case r.OutOfRange:return 400;case r.Unimplemented:return 501;case r.Internal:return 500;case r.Unavailable:return 503;case r.DataLoss:return 500;case r.Unauthenticated:return 401;default:return 500}}export{Bo as AckMessageRequestSchema,Yo as AckMessageResponseSchema,de as ApiBase,hi as AuthorizeRequestSchema,Ii as AuthorizeResponseSchema,jo as AutomationService,yc as BatchGetActiveSignalsRequestSchema,Zc as BatchGetActiveSignalsResponseSchema,Vi as BatchGetSystemTokensRequestSchema,Wi as BatchGetSystemTokensResponseSchema,yi as BatchGetSystemVariablesRequestSchema,Zi as BatchGetSystemVariablesResponseSchema,Xi as BatchGetUserTokensRequestSchema,Si as BatchGetUserTokensResponseSchema,Ai as BatchGetUserVariablesRequestSchema,Ri as BatchGetUserVariablesResponseSchema,Ae as BatchReadResult,rc as CancelExchangeOperationRequestSchema,mc as CancelExchangeOperationResponseSchema,r as Code,ds as ConditionalDeleteOpSchema,Be as ConditionalDeleteOp_PreconditionSchema,gs as ConditionalInsertOpSchema,Ge as ConditionalInsertOp_PreconditionSchema,ss as ConditionalWriteOperationSchema,dn as ConfiguratorApi,xe as ConfiguratorService,Vs as ConfiguratorServiceBatchReadStoreRequestSchema,Ws as ConfiguratorServiceBatchReadStoreResponseSchema,As as ConfiguratorServiceBatchWriteStoreRequestSchema,Rs as ConfiguratorServiceBatchWriteStoreResponseSchema,Bs as ConfiguratorServiceGetVertexConfigRequestSchema,Ys as ConfiguratorServiceGetVertexConfigResponseSchema,Cs as ConfiguratorServiceSelectStoreRequestSchema,Js as ConfiguratorServiceSelectStoreResponseSchema,Xs as ConfiguratorServiceWriteStoreRequestSchema,Ss as ConfiguratorServiceWriteStoreResponseSchema,A as ConnectError,oo as CreateChallengeRequestSchema,co as CreateChallengeResponseSchema,Ni as CronTriggerRequestSchema,Ki as CronTriggerResponseSchema,is as DeleteOpSchema,bc as DispatchExchangeRequestSchema,Gc as DispatchExchangeResponseSchema,ht as EmulatedMediaType,ti as EmulatedMediaTypeSchema,Vc as ExchangeOperationSchema,wi as ExchangeResultRequestSchema,Di as ExchangeResultResponseSchema,Ui as ExchangeResultSchema,ya as ExchangeSchema,Xe as ExecutorApi,he as ExecutorService,ic as ExecutorServiceBatchReadStoreRequestSchema,gc as ExecutorServiceBatchReadStoreResponseSchema,ac as ExecutorServiceBatchWriteStoreRequestSchema,sc as ExecutorServiceBatchWriteStoreResponseSchema,Xc as ExecutorServiceGetVertexConfigRequestSchema,Sc as ExecutorServiceGetVertexConfigResponseSchema,dc as ExecutorServiceSelectStoreRequestSchema,lc as ExecutorServiceSelectStoreResponseSchema,oc as ExecutorServiceWriteStoreRequestSchema,cc as ExecutorServiceWriteStoreResponseSchema,Oe as FileForgeService,Dc as FocalPointSchema,wc as FocalRegionSchema,pc as GetExchangeOperationRequestSchema,uc as GetExchangeOperationResponseSchema,Zo as GetSessionRequestSchema,Ao as GetSessionResponseSchema,bi as GetSystemServicesRequestSchema,Gi as GetSystemServicesResponseSchema,ns as GetValueSchema,Zt as Gravity,oi as GravitySchema,Hi as HostingDetailsSchema,Ie as HtmlRenderOptionsSchema,He as HtmlToPdfSchema,Lc as ImageAdjustSchema,Qc as ImageBlurSchema,Ec as ImageCropSchema,qc as ImageDpiSchema,vc as ImageFlipSchema,Uc as ImageFocalSchema,St as ImageFormat,di as ImageFormatSchema,Nc as ImageHueSchema,Oc as ImageMaxFramesSchema,ke as ImageOperationSchema,Ke as ImageOutputSchema,Hc as ImagePadSchema,_c as ImagePageSchema,jc as ImageProportionSchema,fc as ImageResizeSchema,Kc as ImageRgbSchema,Mc as ImageRotateSchema,Tc as ImageRoundCornerSchema,kc as ImageSharpenSchema,Pc as ImageTextSchema,zc as ImageTrimSchema,$c as ImageWatermarkSchema,Zs as IncomingVerticesSchema,lo as InheritSessionRequestSchema,ro as InheritSessionResponseSchema,cs as InsertOpSchema,Tt as JTDSchemaSchema,Ac as ListActiveSignalsRequestSchema,Rc as ListActiveSignalsResponseSchema,ys as ListIncomingSignalsRequestSchema,Fe as ListIncomingSignalsResponseSchema,ei as ManipulatePdfRequestSchema,ni as ManipulatePdfResponseSchema,ze as MarkdownToPdfSchema,jn as Namespace,Ye as NamespaceSchema,Qe as OfficeRenderOptionsSchema,Le as OfficeToPdfSchema,Ro as OutputSchema,It as PdfAFormat,ai as PdfAFormatSchema,Te as PdfConvertSchema,De as PdfEncryptSchema,je as PdfFlattenSchema,Ue as PdfMergeSchema,ce as PdfOutputOptionsSchema,we as PdfSplitSchema,_e as PluginService,Fs as PostVertexConfigRequestSchema,xs as PostVertexConfigResponseSchema,es as PutValueSchema,os as RangeDeleteOpSchema,mo as ReadOutputRequestSchema,po as ReadOutputResponseSchema,uo as ReadUrlsRequestSchema,bo as ReadUrlsResponseSchema,Ya as ReceiverSchema,Fo as ReconnectMessageSchema,io as RedeemChallengeRequestSchema,go as RedeemChallengeResponseSchema,Yc as RenderDocumentRequestSchema,Fc as RenderDocumentResponseSchema,yt as ResizeType,si as ResizeTypeSchema,vo as RunInheritRequestSchema,Ho as RunInheritResponseSchema,zo as RunInheritStartedSchema,fo as RunSessionRequestSchema,Eo as RunSessionResponseSchema,Mo as RunSessionStartedSchema,as as SelectOpSchema,hc as SendRequestSchema,Ic as SendResponseSchema,Ve as SessionExecutorApi,Co as SessionSchema,Sa as SignalBindingSchema,Ln as SignalBinding_Error,Va as SignalBinding_ErrorSchema,P as SignalDataSchema,ta as SignalDescriptorSchema,Je as SignalFormatSchema,Pe as SplitMode,li as SplitModeSchema,zi as StartExecutionRequestSchema,Li as StartExecutionResponseSchema,Go as StartSessionRequestSchema,ho as StartSessionResponseSchema,rt as Status,To as StatusSchema,Qi as StopExecutionRequestSchema,ki as StopExecutionResponseSchema,Se as StopExecutorApi,Io as StopSessionRequestSchema,yo as StopSessionResponseSchema,te as Store,Jo as StreamSessionRequestSchema,xo as StreamSessionResponseSchema,Rt as TextAlign,ii as TextAlignSchema,At as TextBlendMode,ci as TextBlendModeSchema,Xt as TextWrap,gi as TextWrapSchema,be as TimestampRangeSchema,Ci as TokenSchema,ia as TransceiverSchema,Ne as TransformImageRequestSchema,xc as TransformImageResponseSchema,ma as TransmitterSchema,fn as Transmitter_Mode,pa as Transmitter_ModeSchema,So as UrlCloseSchema,Vo as UrlRecycleSchema,Xo as UrlRetainSchema,Wo as UrlSchema,va as UserDefinedExchangeOptionsSchema,Na as UserDefinedExchangeOptions_ExchangeLockSchema,La as UserDefinedExchangeOptions_ReceiverLockSchema,ka as UserDefinedExchangeOptions_ReceiverOptionsSchema,Ha as UserDefinedExchangeOptions_SignalLockSchema,za as UserDefinedExchangeOptions_TransmitterLockSchema,Qa as UserDefinedExchangeOptions_TransmitterOptionsSchema,ts as ValueMetadataSchema,j as VertexMetadataSchema,$n as VertexType,fs as VertexTypeSchema,Uo as WatchInheritRequestSchema,wo as WatchInheritResponseSchema,Do as WatchInheritStartedSchema,ko as WatchRunRequestSchema,No as WatchRunResponseSchema,Ko as WatchRunStartedSchema,Lo as WatchSessionRequestSchema,Qo as WatchSessionResponseSchema,Re as WriteBatchBuilder,oe as WriteOperationSchema,c as file_mochabugapis_adapt_automations_v1_automations,pe as file_mochabugapis_adapt_graph_v1_exchange,re as file_mochabugapis_adapt_graph_v1_jtd_schema,ue as file_mochabugapis_adapt_graph_v1_receiver,se as file_mochabugapis_adapt_graph_v1_signal_binding,H as file_mochabugapis_adapt_graph_v1_signal_data,D as file_mochabugapis_adapt_graph_v1_signal_descriptor,z as file_mochabugapis_adapt_graph_v1_signal_format,me as file_mochabugapis_adapt_graph_v1_transceiver,Y as file_mochabugapis_adapt_graph_v1_transmitter,L as file_mochabugapis_adapt_graph_v1_user_defined_exchange_options,q as file_mochabugapis_adapt_graph_v1_vertex_metadata,X as file_mochabugapis_adapt_runtime_v1_configurator_service,G as file_mochabugapis_adapt_runtime_v1_executor_service,s as file_mochabugapis_adapt_runtime_v1_fileforge_service,M as file_mochabugapis_adapt_runtime_v1_incoming,W as file_mochabugapis_adapt_runtime_v1_plugin_service,Z as file_mochabugapis_adapt_runtime_v1_store,Dg as mapConnectErrorToHttpStatus,ln as mapHttpError};
2
2
  //# sourceMappingURL=api.mjs.map